diff --git a/.speakeasy/logs/changes/changes.html b/.speakeasy/logs/changes/changes.html index 16c0874ab..9cdc4aa93 100644 --- a/.speakeasy/logs/changes/changes.html +++ b/.speakeasy/logs/changes/changes.html @@ -98,100 +98,163 @@

Java SDK Changes:

-
  • gustoembedded.companyBenefits.getEmployeeBenefits(): response.[].deductionReducesTaxableIncome Changed
  • -
  • gustoembedded.companyBenefits.updateEmployeeBenefits(): +
  • gustoembedded.employees.get(): response.jobs[].location.warnings Added
  • +
  • gustoembedded.employees.update(): response.jobs[].location.warnings Added
  • +
  • gustoembedded.employees.list(): response.[].jobs[].location.warnings Added
  • +
  • gustoembedded.employees.create(): response.jobs[].location.warnings Added
  • +
  • gustoembedded.employees.getOnboardingStatus(): response.blockers Added
  • +
  • gustoembedded.employees.updateOnboardingStatus(): response.blockers Added
  • +
  • gustoembedded.employees.createHistorical(): response.jobs[].location.warnings Added
  • +
  • gustoembedded.reports.createCustom(): request.createReportBody Changed
  • -
  • gustoembedded.employeeBenefits.get(): response.[].deductionReducesTaxableIncome Changed
  • -
  • gustoembedded.employeeBenefits.create(): response.deductionReducesTaxableIncome Changed
  • -
  • gustoembedded.employeeBenefits.retrieve(): response.deductionReducesTaxableIncome Changed
  • -
  • gustoembedded.employeeBenefits.update(): +
  • gustoembedded.payrolls.getApprovedReversals(): request.xGustoApiVersion Changed
  • +
  • gustoembedded.contractorPayments.get(): Added
  • +
  • gustoembedded.payrolls.update():
  • -
  • gustoembedded.employeeBenefits.delete(): error Changed +
  • gustoembedded.contractorPayments.create(): Added
  • +
  • gustoembedded.payrolls.getReceipt(): request Changed
  • -
  • gustoembedded.informationRequests.getInformationRequests(): request.sortBy Added
  • -
  • gustoembedded.timeOffRequests.deleteV1TimeOffRequestsTimeOffRequestUuid(): error Changed +
  • gustoembedded.payrolls.prepare(): response.employeeCompensations[].customWithholdings Added
  • +
  • gustoembedded.payrolls.skip(): error.status[409] Added
  • +
  • gustoembedded.generatedDocuments.get(): request.xGustoApiVersion Changed
  • +
  • gustoembedded.historicalEmployees.update(): response.jobs[].location.warnings Added
  • +
  • gustoembedded.employeeAddresses.get(): response.[].warnings Added
  • +
  • gustoembedded.employeeAddresses.create(): response.warnings Added
  • +
  • gustoembedded.employeeAddresses.retrieveHomeAddress(): response.warnings Added
  • +
  • gustoembedded.employeeAddresses.update(): response.warnings Added
  • +
  • gustoembedded.locations.retrieve(): response.warnings Added
  • +
  • gustoembedded.locations.update(): response.warnings Added
  • +
  • gustoembedded.locations.get(): response.[].warnings Added
  • +
  • gustoembedded.locations.create(): response.warnings Added
  • +
  • gustoembedded.paySchedules.getPreview():
  • +
  • gustoembedded.contractorPayments.list(): Added
  • +
  • gustoembedded.contractorPayments.getV1ContractorPaymentsContractorPaymentIdPdf(): Added
  • +
  • gustoembedded.contractorPayments.getV1ContractorsContractorUuidPayments(): Added
  • +
  • gustoembedded.reports.getV1BulkReportsRequestUuid(): Added
  • +
  • gustoembedded.reports.postV1BulkReports(): Added
  • \ No newline at end of file diff --git a/.speakeasy/logs/changes/changes.md b/.speakeasy/logs/changes/changes.md index 0926e1032..cad32c2ff 100644 --- a/.speakeasy/logs/changes/changes.md +++ b/.speakeasy/logs/changes/changes.md @@ -1,50 +1,113 @@ ## Java SDK Changes: -* `gustoembedded.payrolls.get()`: - * `request.sortBy` **Changed** (Breaking ⚠️) -* `gustoembedded.companyForms.getAll()`: - * `request.sortBy` **Changed** (Breaking ⚠️) -* `gustoembedded.companies.get()`: `response.fundingType` **Changed** (Breaking ⚠️) - - `enum(brex)` **Removed** (Breaking ⚠️) - - `enum(lineOfCredit)` **Added** (Breaking ⚠️) - - `enum(partnerDisbursement)` **Added** (Breaking ⚠️) - - `enum(rtp)` **Added** (Breaking ⚠️) -* `gustoembedded.companies.update()`: `response.fundingType` **Changed** (Breaking ⚠️) - - `enum(brex)` **Removed** (Breaking ⚠️) - - `enum(lineOfCredit)` **Added** (Breaking ⚠️) - - `enum(partnerDisbursement)` **Added** (Breaking ⚠️) - - `enum(rtp)` **Added** (Breaking ⚠️) -* `gustoembedded.payrolls.prepare()`: - * `request.sortBy` **Changed** (Breaking ⚠️) -* `gustoembedded.contractorPayments.getV1ContractorPaymentsContractorPaymentIdPdf()`: `error.status[404]` **Added** -* `gustoembedded.reports.createCustom()`: - * `request.createReportBody.columns[]` **Changed** - - `enum(employeeUuid)` **Added** - - `enum(payrollUuid)` **Added** -* `gustoembedded.employeeTaxSetup.updateStateTaxes()`: `response.[].uuid` **Added** -* `gustoembedded.employeePaymentMethod.deleteBankAccount()`: `error` **Changed** - - `` **Added** -* `gustoembedded.earningTypes.delete()`: `error.status[404]` **Added** -* `gustoembedded.externalPayrolls.finalizeTaxLiabilities()`: `error` **Changed** - - `` **Added** -* `gustoembedded.externalPayrolls.delete()`: `error` **Changed** - - `` **Added** -* `gustoembedded.payrollDigests.postV1PayrollDigests()`: **Added** -* `gustoembedded.payrollDigests.getV1PayrollDigestsPayrollDigestUuid()`: **Added** -* `gustoembedded.employeeTaxSetup.getStateTaxes()`: `response.[].uuid` **Added** -* `gustoembedded.companyBenefits.delete()`: `error` **Changed** - - `` **Added** -* `gustoembedded.companyBenefits.getEmployeeBenefits()`: `response.[].deductionReducesTaxableIncome` **Changed** -* `gustoembedded.companyBenefits.updateEmployeeBenefits()`: - * `request.employeeBenefitBulkUpdateRequest.employeeBenefits[].deductionReducesTaxableIncome` **Changed** - * `response.[].deductionReducesTaxableIncome` **Changed** -* `gustoembedded.employeeBenefits.get()`: `response.[].deductionReducesTaxableIncome` **Changed** -* `gustoembedded.employeeBenefits.create()`: `response.deductionReducesTaxableIncome` **Changed** -* `gustoembedded.employeeBenefits.retrieve()`: `response.deductionReducesTaxableIncome` **Changed** -* `gustoembedded.employeeBenefits.update()`: - * `request.employeeBenefitUpdateRequest.deductionReducesTaxableIncome` **Changed** - * `response.deductionReducesTaxableIncome` **Changed** -* `gustoembedded.employeeBenefits.delete()`: `error` **Changed** - - `` **Added** -* `gustoembedded.informationRequests.getInformationRequests()`: `request.sortBy` **Added** -* `gustoembedded.timeOffRequests.deleteV1TimeOffRequestsTimeOffRequestUuid()`: `error` **Changed** - - `` **Added** +* `gustoembedded.payrolls.get()`: `response.employeeCompensations[]` **Changed** (Breaking ⚠️) + - `benefits[].companyContribution` **Changed** (Breaking ⚠️) + - `benefits[].employeeDeduction` **Changed** (Breaking ⚠️) + - `customWithholdings` **Added** + - `deductions[].amount` **Changed** (Breaking ⚠️) + - `taxes[].amount` **Changed** (Breaking ⚠️) +* `gustoembedded.webhooks.verify()`: `response.subscriptionTypes[].enum(timeOffRequest)` **Added** (Breaking ⚠️) +* `gustoembedded.webhooks.updateSubscription()`: + * `requestBody.subscriptionTypes[].enum(timeOffRequest)` **Added** + * `response.subscriptionTypes[].enum(timeOffRequest)` **Added** (Breaking ⚠️) +* `gustoembedded.webhooks.getSubscription()`: `response.subscriptionTypes[].enum(timeOffRequest)` **Added** (Breaking ⚠️) +* `gustoembedded.webhooks.createSubscription()`: + * `requestBody.subscriptionTypes[].enum(timeOffRequest)` **Added** + * `response.subscriptionTypes[].enum(timeOffRequest)` **Added** (Breaking ⚠️) +* `gustoembedded.webhooks.listSubscriptions()`: `response.[].subscriptionTypes[].enum(timeOffRequest)` **Added** (Breaking ⚠️) +* `gustoembedded.payrolls.createOffCycle()`: + * `requestBody.employeeUuids` **Changed** (Breaking ⚠️) + * `response.employeeCompensations[].customWithholdings` **Added** +* `gustoembedded.contractors.postV1ContractorsContractorUuidRehire()`: `error.status[422]` **Added** +* `gustoembedded.contractors.get()`: `response.workEmail` **Added** +* `gustoembedded.contractorPayments.preview()`: **Added** +* `gustoembedded.contractorPayments.getReceipt()`: **Added** +* `gustoembedded.contractorPayments.fund()`: **Added** +* `gustoembedded.memberPortalInvitations.postV1EmployeesEmployeeIdMemberPortalInvitations()`: **Added** +* `gustoembedded.memberPortalInvitations.getV1EmployeesEmployeeIdMemberPortalInvitations()`: **Added** +* `gustoembedded.memberPortalInvitations.deleteV1EmployeesEmployeeIdMemberPortalInvitations()`: **Added** +* `gustoembedded.memberPortalInvitations.postV1ContractorsContractorUuidMemberPortalInvitations()`: **Added** +* `gustoembedded.contractors.update()`: + * `request.contractorUpdateRequestBody.workEmail` **Added** + * `response.workEmail` **Added** +* `gustoembedded.memberPortalInvitations.deleteV1ContractorsContractorUuidMemberPortalInvitations()`: **Added** +* `gustoembedded.payrollCancellations.postV1PayrollBatches()`: **Added** +* `gustoembedded.payrollCancellations.getV1PayrollBatchesPayrollBatchUuid()`: **Added** +* `gustoembedded.reverseWireTransactions.getReverseWireTransactions()`: **Added** +* `gustoembedded.taxPayments.getTaxPayments()`: **Added** +* `gustoembedded.taxPayments.getTaxPayment()`: **Added** +* `gustoembedded.contractorPayments.list()`: **Removed** (Breaking ⚠️) +* `gustoembedded.contractorPayments.create()`: **Removed** (Breaking ⚠️) +* `gustoembedded.contractorPayments.get()`: **Removed** (Breaking ⚠️) +* `gustoembedded.contractorPayments.delete()`: **Removed** (Breaking ⚠️) +* `gustoembedded.contractorPayments.preview()`: **Removed** (Breaking ⚠️) +* `gustoembedded.contractorPayments.getReceipt()`: **Removed** (Breaking ⚠️) +* `gustoembedded.contractorPayments.fund()`: **Removed** (Breaking ⚠️) +* `gustoembedded.contractorPayments.getV1ContractorPaymentsContractorPaymentIdPdf()`: **Removed** (Breaking ⚠️) +* `gustoembedded.companies.suspensions.suspend()`: + * `requestBody.leavingFor` **Changed** + - `enum(otherPeo)` **Added** + - `enum(toast)` **Added** +* `gustoembedded.taxRequirements.get()`: `response.requirementSets[].requirements[]` **Changed** + - `defaultValueApplied` **Added** + - `payrollBlocking` **Added** +* `gustoembedded.federalTaxDetails.update()`: `error.status[403]` **Added** +* `gustoembedded.jobsAndCompensations.getJob()`: `response.location.warnings` **Added** +* `gustoembedded.jobsAndCompensations.update()`: `response.location.warnings` **Added** +* `gustoembedded.jobsAndCompensations.getJobs()`: `response.[].location.warnings` **Added** +* `gustoembedded.jobsAndCompensations.createJob()`: `response.location.warnings` **Added** +* `gustoembedded.contractors.getAddress()`: `response.warnings` **Added** +* `gustoembedded.contractors.updateAddress()`: `response.warnings` **Added** +* `gustoembedded.companies.putV1PartnerManagedCompaniesCompanyUuidDisassociate()`: **Added** +* `gustoembedded.contractors.deleteV1ContractorsContractorUuidRehire()`: `error.status[422]` **Added** +* `gustoembedded.contractors.postV1ContractorsContractorUuidTermination()`: `error.status[422]` **Added** +* `gustoembedded.contractorPayments.delete()`: **Added** +* `gustoembedded.contractors.deleteV1ContractorsContractorUuidTermination()`: `error.status[422]` **Added** +* `gustoembedded.memberPortalInvitations.getV1ContractorsContractorUuidMemberPortalInvitations()`: **Added** +* `gustoembedded.contractors.list()`: `response.[].workEmail` **Added** +* `gustoembedded.contractors.create()`: + * `request.contractorCreateRequestBody.workEmail` **Added** + * `response.workEmail` **Added** +* `gustoembedded.contractorPaymentGroups.patchV1ContractorPaymentGroupsIdPartnerDisbursements()`: + * `requestBody.disbursements[].paymentMethod` **Changed** + - `enum(correctionPayment)` **Added** + - `enum(historicalPayment)` **Added** +* `gustoembedded.employees.get()`: `response.jobs[].location.warnings` **Added** +* `gustoembedded.employees.update()`: `response.jobs[].location.warnings` **Added** +* `gustoembedded.employees.list()`: `response.[].jobs[].location.warnings` **Added** +* `gustoembedded.employees.create()`: `response.jobs[].location.warnings` **Added** +* `gustoembedded.employees.getOnboardingStatus()`: `response.blockers` **Added** +* `gustoembedded.employees.updateOnboardingStatus()`: `response.blockers` **Added** +* `gustoembedded.employees.createHistorical()`: `response.jobs[].location.warnings` **Added** +* `gustoembedded.reports.createCustom()`: `request.createReportBody` **Changed** + - `columns[].enum(additionalEarnings)` **Added** + - `columns[].enum(employeeStateIncomeTax)` **Added** + - `dateFilterType` **Added** + - `groupings` **Changed** +* `gustoembedded.payrolls.getApprovedReversals()`: `request.xGustoApiVersion` **Changed** +* `gustoembedded.contractorPayments.get()`: **Added** +* `gustoembedded.payrolls.update()`: + * `request.payrollUpdate.employeeCompensations[].customWithholdings` **Added** + * `response.employeeCompensations[].customWithholdings` **Added** +* `gustoembedded.contractorPayments.create()`: **Added** +* `gustoembedded.payrolls.getReceipt()`: `request` **Changed** + - `page` **Added** + - `per` **Added** +* `gustoembedded.payrolls.prepare()`: `response.employeeCompensations[].customWithholdings` **Added** +* `gustoembedded.payrolls.skip()`: `error.status[409]` **Added** +* `gustoembedded.generatedDocuments.get()`: `request.xGustoApiVersion` **Changed** +* `gustoembedded.historicalEmployees.update()`: `response.jobs[].location.warnings` **Added** +* `gustoembedded.employeeAddresses.get()`: `response.[].warnings` **Added** +* `gustoembedded.employeeAddresses.create()`: `response.warnings` **Added** +* `gustoembedded.employeeAddresses.retrieveHomeAddress()`: `response.warnings` **Added** +* `gustoembedded.employeeAddresses.update()`: `response.warnings` **Added** +* `gustoembedded.locations.retrieve()`: `response.warnings` **Added** +* `gustoembedded.locations.update()`: `response.warnings` **Added** +* `gustoembedded.locations.get()`: `response.[].warnings` **Added** +* `gustoembedded.locations.create()`: `response.warnings` **Added** +* `gustoembedded.paySchedules.getPreview()`: + * `request.payScheduleUuid` **Added** +* `gustoembedded.contractorPayments.list()`: **Added** +* `gustoembedded.contractorPayments.getV1ContractorPaymentsContractorPaymentIdPdf()`: **Added** +* `gustoembedded.contractorPayments.getV1ContractorsContractorUuidPayments()`: **Added** +* `gustoembedded.reports.getV1BulkReportsRequestUuid()`: **Added** +* `gustoembedded.reports.postV1BulkReports()`: **Added** diff --git a/.speakeasy/logs/changes/new.openapi.yaml b/.speakeasy/logs/changes/new.openapi.yaml index c881a25a1..aff095958 100644 --- a/.speakeasy/logs/changes/new.openapi.yaml +++ b/.speakeasy/logs/changes/new.openapi.yaml @@ -15,11 +15,15 @@ tags: - name: Jobs and Compensations - name: Earning Types - name: I-9 Verification + - name: Information Requests - name: Contractor Payment Groups - name: Contractor Payment Method - name: Contractor Payments - name: Contractors - name: Payrolls + - name: Payroll Digests + - name: Payroll Cancellations + - name: People Batches - name: Company Forms - name: Contractor Documents - name: Employee Forms @@ -31,8 +35,12 @@ tags: - name: Signatories - name: External Payrolls - name: Tax Requirements + - name: Tax Payments + - name: Tax Filings - name: Contractor Forms - name: Time Off Policies + - name: Time Off Requests + - name: Time Tracking - name: Holiday Pay Policies - name: Departments - name: Reports @@ -45,21 +53,19 @@ tags: - name: Company Attachment - name: Wire In Requests - name: ACH Transactions - - name: Information Requests - - name: Time Tracking - - name: Time Off Requests + - name: Reverse Wire Transactions - name: Salary Estimates - name: Reimbursements - - name: People Batches - - name: Payroll Digests + - name: Member Portal Invitations info: title: Gusto API - version: '2025-11-15' + version: '2026-06-15' termsOfService: https://gusto.com/about/terms/developer-terms-of-service description: Welcome to Gusto's Embedded Payroll API documentation! contact: name: Developer Relations email: developer@gusto.com + x-release-status: stable servers: - url: https://api.gusto-demo.com description: Demo @@ -67,24581 +73,352 @@ servers: - url: https://api.gusto.com description: Prod x-speakeasy-server-id: prod -paths: - "/v1/token_info": - get: - summary: Get info about the current access token - operationId: get-v1-token-info - security: - - CompanyAccessAuth: [] - description: |- - Returns scope and resource information associated with the current access token. Use this endpoint to verify the following for the current access token: - * Resource (company, employee, contractor, or application) and resource owner - * Access level - tags: - - Introspection - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Token-Info" - x-speakeasy-name-override: getInfo - "/oauth/token": - post: - summary: Create a System Access Token or Refresh an Access Token - operationId: oauth-access-token - security: [] - description: Creates a system access token or refreshes an oauth access token - tags: - - Introspection - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Authentication" - requestBody: - content: - application/json: - schema: - oneOf: - - type: object - title: Refresh Token Request - required: - - client_id - - client_secret - - grant_type - - refresh_token - properties: - client_id: - type: string - description: Your client ID - example: qr6L_9FRkbMVL_GdwvrMW6Ef8tcU6NUxjWpOfqXqOG8 - client_secret: - type: string - description: Your client secret - example: 3aQSHRB3596nZhm6NdNBELZ1u9xbZmvCrKpBhbZYq6w - grant_type: - type: string - enum: - - refresh_token - description: Set system_access to create a system access token, refresh_token to refresh an existing token - refresh_token: - type: string - descrition: The refresh token being exchanged for an access token code - example: iEjL96L9Pndwmi-xVX3Q-xbrvvhnjHYGX87sopgGJ8E - redirect_uri: - type: string - description: The redirect URI you set up via the Developer Portal - - type: object - title: System Access Token Request - required: - - client_id - - client_secret - - grant_type - properties: - client_id: - type: string - description: Your client ID - example: qr6L_9FRkbMVL_GdwvrMW6Ef8tcU6NUxjWpOfqXqOG8 - client_secret: - type: string - description: Your client secret - example: 3aQSHRB3596nZhm6NdNBELZ1u9xbZmvCrKpBhbZYq6w - grant_type: - type: string - description: Set system_access to create a system access token, refresh_token to refresh an existing token - enum: - - system_access - required: true - "/v1/partner_managed_companies": - post: - summary: Create a partner managed company - operationId: post-v1-partner-managed-companies - security: - - SystemAccessAuth: [] - description: "Create a partner managed company. When you successfully call the API, it does the following:\n* Creates a new company in Gusto\n* Creates a new user using the provided email if the user does not already exist.\n* Makes the user the primary payroll administrator of the new company.\n\nIn response, you will receive oauth access tokens for the created company.\n\nIMPORTANT: the returned access and refresh tokens are reserved for this company only. They cannot be used to access other companies AND previously granted tokens cannot be used to access this company.\n\n\U0001F4D8 System Access Authentication\n\nThis endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access)\n\nscope: `partner_managed_companies:manage`" - tags: - - Companies - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: OK - content: - application/json: - schema: - "$ref": "#/components/schemas/Partner-Managed-Company" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Partner-Managed-Company-Create-Request" - required: true - x-speakeasy-name-override: createPartnerManaged - "/v1/companies/{company_id}": - get: - summary: Get a company - operationId: get-v1-companies - security: - - CompanyAccessAuth: [] - description: |- - Get a company. - - The employees:read scope is required to return home_address and non-work locations. - The company_admin:read scope is required to return primary_payroll_admin. - The signatories:read scope is required to return primary_signatory. - - scope: `companies:read` - tags: - - Companies - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Company" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: get - put: - summary: Update a company - operationId: put-v1-companies - security: - - CompanyAccessAuth: [] - description: |- - Update a company. - - scope: `companies:write` - tags: - - Companies - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Company" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - required: - - contractor_only - properties: - contractor_only: - type: boolean - description: 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. - required: true - x-speakeasy-name-override: update - "/v1/partner_managed_companies/{company_uuid}/migrate": - put: - summary: Migrate company to embedded payroll - operationId: put-v1-partner-managed-companies-company-uuid-migrate - security: - - CompanyAccessAuth: [] - description: |- - Migrate an existing Gusto customer to your embedded payroll product. - - ### Prerequisites - Before calling this endpoint: - 1. The customer must connect their Gusto account to your application using [OAuth2](doc:oauth2) - 2. The customer must view and [accept the Embedded Payroll Terms of Service](ref:post-partner-managed-companies-company_uuid-accept_terms_of_service) - - ### Related guides - - [Migrate an existing company](doc:migrate-existing-company) - - scope: `partner_managed_companies:write` - tags: - - Companies - x-gusto-integration-type: - - embedded - parameters: - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Partner-Managed-Company-Migrate-Response" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Partner-Managed-Company-Migrate-Request" - required: true - x-speakeasy-name-override: migrate - "/v1/partner_managed_companies/{company_uuid}/migration_readiness": - get: - summary: Check company migration readiness - operationId: get-v1-partner-managed-companies-company-uuid-migration_readiness - security: - - CompanyAccessAuth: [] - description: |- - Check if an existing Gusto customer is ready to be migrated to embedded payroll. This endpoint returns blockers and warnings associated with migrating the company and is recommended to be called before attempting to migrate a company. - - scope: `partner_managed_companies:read` - tags: - - Companies - x-gusto-integration-type: - - embedded - parameters: - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Partner-Managed-Company-Migration-Readiness-Response" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - "/v1/partner_managed_companies/{company_uuid}/accept_terms_of_service": - post: - summary: Accept terms of service for a company user - operationId: post-partner-managed-companies-company_uuid-accept_terms_of_service - security: - - CompanyAccessAuth: [] - description: |- - Accept the Gusto Embedded Payroll's [Terms of Service](https://flows.gusto.com/terms). - The user must have a role in the company in order to accept the Terms of Service. - - scope: `terms_of_services:write` - tags: - - Companies - x-gusto-integration-type: - - embedded - parameters: - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Partner-Managed-Company-Terms-Of-Service-Response" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Partner-Managed-Company-Accept-Terms-Of-Service-Request" - required: true - x-speakeasy-name-override: acceptTermsOfService - "/v1/partner_managed_companies/{company_uuid}/retrieve_terms_of_service": - post: - summary: Retrieve terms of service status for a company user - operationId: post-partner-managed-companies-company_uuid-retrieve_terms_of_service - security: - - CompanyAccessAuth: [] - description: |- - Retrieve the user acceptance status of the Gusto Embedded Payroll's [Terms of Service](https://flows.gusto.com/terms). - - scope: `terms_of_services:read` - tags: - - Companies - x-gusto-integration-type: - - embedded - parameters: - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Partner-Managed-Company-Terms-Of-Service-Response" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Partner-Managed-Company-Retrieve-Terms-Of-Service-Request" - required: true - x-speakeasy-name-override: retrieveTermsOfService - "/v1/invoices/{invoice_period}": - get: - summary: Retrieve invoicing data for companies - operationId: get-invoices-invoice-period - security: - - SystemAccessAuth: [] - description: "Retrieve data for active companies used to calculate invoices for Gusto Embedded Payroll. A company is considered active for an invoice period if they are an active partner managed company, have run payroll or created contractor payments since becoming a partner managed company, and are not suspended at any point during the invoice period. This endpoint forces pagination, with 100 results returned at a time. You can learn more about our pagination here: [pagination guide](https://docs.gusto.com/embedded-payroll/docs/pagination)\n\n\U0001F4D8 System Access Authentication\n\nThis endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access)\n\nscope: `invoices:read`" - tags: - - Invoices - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: invoice_period - in: path - required: true - description: The month we are calculating the invoice for. Must be in YYYY-MM format - schema: - type: string - - name: page - in: query - required: false - description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - schema: - type: integer - - name: per - in: query - required: false - description: Number of objects per page. For majority of endpoints will default to 25 - schema: - type: integer - - name: company_uuids - in: query - required: false - description: Filter companies returned in the active_companies response, will return an error if company not active during provided invoice period. i.e. `?company_uuids=781922d8-e780-4b6b-bf74-ee303166d022,bbbca930-7322-491c-ba7f-98707a52a9c5` - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: OK - content: - application/json: - schema: - "$ref": "#/components/schemas/Invoice-Data" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - x-speakeasy-name-override: get - "/v1/companies/{company_id}/attachments/{company_attachment_uuid}": - get: - summary: Get Company Attachment Details - operationId: get-v1-companies-attachment - security: - - CompanyAccessAuth: [] - description: |- - Retrieve the detail of an attachment uploaded by the company. - - ### Related guides - - [Manage company attachments](doc:manage-company-attachments) - - scope: `company_attachments:read` - tags: - - Company Attachment - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: company_attachment_uuid - in: path - description: The UUID of the company attachment - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Company-Attachment" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: companyAttachments - x-speakeasy-name-override: getDetails - "/v1/companies/{company_id}/attachments/{company_attachment_uuid}/download_url": - get: - summary: Get a temporary url to download the Company Attachment file - operationId: get-v1-companies-attachment-url - security: - - CompanyAccessAuth: [] - description: |- - Retrieve a temporary url to download an attachment file uploaded by the company. - - ### Related guides - - [Manage company attachments](doc:manage-company-attachments) - - scope: `company_attachments:read` - tags: - - Company Attachment - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: company_attachment_uuid - in: path - description: The UUID of the company attachment - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Company-Attachment-Download-Url" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: companyAttachment - x-speakeasy-name-override: getDownloadUrl - "/v1/companies/{company_id}/attachments": - get: - summary: Get List of Company Attachments - operationId: get-v1-companies-attachments - security: - - CompanyAccessAuth: [] - description: |- - Retrieve a list of all the attachments uploaded by the company. - - ### Related guides - - [Manage company attachments](doc:manage-company-attachments) - - scope: `company_attachments:read` - tags: - - Company Attachment - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Company-Attachment" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: companyAttachments - x-speakeasy-name-override: getList - post: - summary: Create Company Attachment and Upload File - operationId: post-v1-companies-attachment - security: - - CompanyAccessAuth: [] - description: |- - Upload a file and create a company attachment. We recommend uploading PDF files for optimal compatibility. However, the following file types are allowed: .qbb, .qbm, .gif, .jpg, .png, .pdf, .xls, .xlsx, .doc and .docx. - - ### Related guides - - [Manage company attachments](doc:manage-company-attachments) - - scope: `company_attachments:write` - tags: - - Company Attachment - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '201': - description: Created - content: - application/json: - schema: - "$ref": "#/components/schemas/Company-Attachment" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - multipart/form-data: - schema: - "$ref": "#/components/schemas/Company-Attachment-Create-Request-Body" - required: true - x-speakeasy-group: companyAttachments - x-speakeasy-name-override: create - "/v1/companies/{company_id}/federal_tax_details": - get: - summary: Get a company's federal tax details - operationId: get-v1-companies-company_id-federal_tax_details - security: - - CompanyAccessAuth: [] - description: |- - Retrieves a company's federal tax details including EIN verification status, tax payer type, filing form, and other federal tax configuration. - - scope: `company_federal_taxes:read` - tags: - - Federal Tax Details - x-gusto-integration-type: - - embedded - parameters: - - name: company_id - in: path - description: The UUID of the company - example: 7b1d0df1-6403-4a06-8768-c1dd7d24d27a - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Federal-Tax-Details" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: federalTaxDetails - x-speakeasy-name-override: get - put: - summary: Update a company's federal tax details - operationId: put-v1-companies-company_id-federal_tax_details - security: - - CompanyAccessAuth: [] - description: |- - Updates a company's federal tax details including EIN, legal name, tax payer type, filing form, and S-Corp - taxation status. This information is required to onboard a company for use with Gusto Embedded Payroll. - - ### Prerequisites - Before calling this endpoint, retrieve the current federal tax details and `version` via [GET /v1/companies/{company_id}/federal_tax_details](ref:get-v1-companies-company_id-federal_tax_details) - - ### Webhooks - - `company.updated`: Fires when federal tax details for a company are successfully updated - - **Setup:** [POST /v1/webhook_subscriptions](ref:post-v1-webhook-subscription) with `subscription_types`: `["Company"]` - - scope: `company_federal_taxes:write` - tags: - - Federal Tax Details - x-gusto-integration-type: - - embedded - parameters: - - name: company_id - in: path - description: The UUID of the company - example: 7b1d0df1-6403-4a06-8768-c1dd7d24d27a - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Federal-Tax-Details" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - '409': - description: Conflict - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Federal-Tax-Details-Update" - required: true - x-speakeasy-group: federalTaxDetails - x-speakeasy-name-override: update - "/v1/companies/{company_id}/industry_selection": - get: - summary: Get a company industry selection - operationId: get-v1-company-industry - security: - - CompanyAccessAuth: [] - description: |- - Returns the industry classification for a company, including NAICS code, SIC codes, and industry title. - - scope: `companies:read` - tags: - - Industry Selection - x-gusto-integration-type: - - embedded - parameters: - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Industry" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: industrySelection - x-speakeasy-name-override: get - put: - summary: Update a company industry selection - operationId: put-v1-company-industry - security: - - CompanyAccessAuth: [] - description: |- - Update the industry classification for a company by passing in a [NAICS code](https://www.naics.com). - - Optionally provide an industry title and [SIC codes](https://siccode.com/). If you do not provide SIC codes, - we will use the NAICS code to perform an internal lookup. - - Our UI leverages [Middesk API](https://docs.middesk.com/reference/introduction) to determine industry - classification codes. - - scope: `companies:write` - tags: - - Industry Selection - x-gusto-integration-type: - - embedded - parameters: - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '201': - description: Created - content: - application/json: - schema: - "$ref": "#/components/schemas/Industry" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Company-Industry-Selection-Required-Body" - required: true - x-speakeasy-group: industrySelection - x-speakeasy-name-override: update - "/v1/companies/{company_id}/admins": - get: - summary: Get all the admins at a company - operationId: get-v1-companies-company_id-admins - security: - - CompanyAccessAuth: [] - description: |- - Returns a list of all the admins at a company - - scope: `company_admin:read` - tags: - - Companies - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: page - in: query - required: false - description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - schema: - type: integer - - name: per - in: query - required: false - description: Number of objects per page. For majority of endpoints will default to 25 - schema: - type: integer - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Admin" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: listAdmins - post: - summary: Create an admin for the company - operationId: post-v1-companies-company_id-admins - security: - - CompanyAccessAuth: [] - description: |- - Creates a new admin for a company. - If the email matches an existing user, this will create an admin account for the current user. Otherwise, this will create a new user. - - scope: `company_admin:write` - tags: - - Companies - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Admin" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Admin-Create-Request" - required: true - x-speakeasy-name-override: createAdmin - "/v1/companies/{company_uuid}/signatories": - get: - summary: Get the signatories for a company - operationId: get-v1-companies-company_uuid-signatories - security: - - CompanyAccessAuth: [] - description: |- - Returns the signatories for a company. A company has at most one signatory. - - ## Related guides - - [Signatory Events](doc:signatory-events) - - scope: `signatories:read` - tags: - - Signatories - x-gusto-integration-type: - - embedded - parameters: - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Signatory" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: list - post: - summary: Create a signatory - operationId: post-v1-company-signatories - security: - - CompanyAccessAuth: [] - description: |- - Creates a company signatory with complete information. The company must not already have a signatory. - - A signatory can legally sign forms once the identity verification process is successful. The signatory should be an officer, owner, general partner or LLC member manager, plan administrator, fiduciary, or an authorized representative who is designated to sign agreements on the company's behalf. An officer is the president, vice president, treasurer, chief accounting officer, etc. There can only be a single primary signatory in a company. - - ### Webhooks - - `signatory.created`: Fires when a signatory is successfully created. - - ### Related guides - - [Signatory Events](doc:signatory-events) - - scope: `signatories:manage` - tags: - - Signatories - x-gusto-integration-type: - - embedded - parameters: - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Signatory" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Signatory-Create-Request" - required: true - x-speakeasy-name-override: create - "/v1/companies/{company_uuid}/signatories/invite": - post: - summary: Invite a signatory - operationId: post-v1-companies-company_uuid-signatories-invite - security: - - CompanyAccessAuth: [] - description: |- - Creates a signatory with minimal information. This signatory can be invited to provide more information through the [Update a signatory](ref:put-v1-companies-company_uuid-signatories-signatory_uuid) endpoint. This will start the identity verification process and allow the signatory to be verified to sign documents. - - ## Related guides - - [Signatory Events](doc:signatory-events) - - scope: `signatories:manage` - tags: - - Signatories - x-gusto-integration-type: - - embedded - parameters: - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Signatory" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Signatory-Invite-Request" - required: true - x-speakeasy-name-override: invite - "/v1/companies/{company_uuid}/signatories/{signatory_uuid}": - put: - summary: Update a signatory - operationId: put-v1-companies-company_uuid-signatories-signatory_uuid - security: - - CompanyAccessAuth: [] - description: |- - Updates a signatory that has been either invited or created. If the signatory has been created with minimal information through the [Invite a signatory](ref:post-v1-companies-company_uuid-signatories-invite) endpoint, then the first update must contain all attributes specified in the request body in order to start the identity verification process. - - ## Related guides - - [Signatory Events](doc:signatory-events) - - scope: `signatories:write` - tags: - - Signatories - x-gusto-integration-type: - - embedded - parameters: - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: signatory_uuid - in: path - description: The UUID of the signatory - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Signatory" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '409': - description: Conflict - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Signatory-Update-Request" - required: true - x-speakeasy-name-override: update - delete: - summary: Delete a signatory - operationId: delete-v1-companies-company_uuid-signatories-signatory_uuid - security: - - CompanyAccessAuth: [] - description: |- - Deletes a company signatory. - - ## Related guides - - [Signatory Events](doc:signatory-events) - - scope: `signatories:manage` - tags: - - Signatories - x-gusto-integration-type: - - embedded - parameters: - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: signatory_uuid - in: path - description: The UUID of the signatory - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '204': - description: No Content - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: delete - "/v1/companies/{company_uuid}/onboarding_status": - get: - summary: Get company onboarding status - operationId: get-v1-company-onboarding-status - security: - - CompanyAccessAuth: [] - description: |- - Retrieves a company's onboarding status, including whether onboarding is complete and the list of - required onboarding steps with their respective completion state. - - scope: `company_onboarding_status:read` - tags: - - Companies - x-gusto-integration-type: - - embedded - parameters: - - name: company_uuid - in: path - description: The UUID of the company - example: 7b1d0df1-6403-4a06-8768-c1dd7d24d27a - required: true - schema: - type: string - - name: additional_steps - in: query - required: false - example: external_payroll - description: Comma-delimited string of additional onboarding steps to include. Currently only supports the value "external_payroll". - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Company-Onboarding-Status" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: getOnboardingStatus - "/v1/companies/{company_uuid}/finish_onboarding": - put: - summary: Finish company onboarding - operationId: get-v1-company-finish-onboarding - security: - - CompanyAccessAuth: [] - description: |- - Finalize a company's onboarding process. - - ### Approve a company in demo - - After a company is finished onboarding, Gusto requires an additional step to review and approve that company. - The company onboarding status is "onboarding_completed": false, until the API call is made to finish company - onboarding. In production environments, this step is required for risk-analysis purposes. - - We provide the endpoint `PUT '/v1/companies/{company_uuid}/approve'` to facilitate company approvals in the demo environment. - - ```shell - PUT '/v1/companies/89771af8-b964-472e-8064-554dfbcb56d9/approve' - - # Response: Company object, with company_status: 'Approved' - ``` - - scope: `companies:write` - tags: - - Companies - x-gusto-integration-type: - - embedded - parameters: - - name: company_uuid - in: path - description: The UUID of the company - example: 7b1d0df1-6403-4a06-8768-c1dd7d24d27a - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Company-Onboarding-Status" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - x-speakeasy-name-override: finishOnboarding - "/v1/companies/{company_id}/custom_fields": - get: - summary: Get the custom fields of a company - operationId: get-v1-companies-company_id-custom_fields - security: - - CompanyAccessAuth: [] - description: |- - Returns a list of the custom fields of the company. Useful when you need to know the schema of custom fields for an entire company. - - scope: `companies:read` - tags: - - Companies - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: page - in: query - required: false - description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - schema: - type: integer - - name: per - in: query - required: false - description: Number of objects per page. For majority of endpoints will default to 25 - schema: - type: integer - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Company-Custom-Field-List" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: getCustomFields - "/v1/companies/{company_uuid}/flows": - post: - summary: Create a flow - operationId: post-v1-company-flows - security: - - CompanyAccessAuth: [] - description: |- - Generate a link to access a pre-built workflow in Gusto white-label UI. For security, all generated flows will expire within 1 hour of inactivity or 24 hours from creation time, whichever comes first. - - You can see a list of all possible flow types in our [Flow Types](https://docs.gusto.com/embedded-payroll/docs/flow-types) guide. - - You can also mix and match flow_types in the same category to create custom flows suitable for your needs. - - For instance, to create a custom onboarding flow that only includes `add_addresses`, `add_employees`, and `sign_all_forms` steps, simply stitch those flow_types together into a comma delimited string: - - ```json - { - "flow_type": "add_addresses,add_employees,sign_all_forms" - } - ``` - - Please be mindful of data dependencies in each step to achieve the best user experience. - - For more information and in-depth guides review the [Getting Started](https://docs.gusto.com/embedded-payroll/docs/flows-getting-started) guide for flows. - - scope: `flows:write` - tags: - - Flows - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '201': - description: Created - content: - application/json: - schema: - "$ref": "#/components/schemas/Flow" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Create-Flow-Request" - required: true - x-speakeasy-name-override: create - "/v1/companies/{company_id}/locations": - get: - summary: Get all company locations - operationId: get-v1-companies-company_id-locations - security: - - CompanyAccessAuth: [] - description: |- - Retrieves all company locations (addresses) associated with a company: mailing addresses, filing - addresses, or work locations. A single address may serve multiple, or all, purposes. - - Since all company locations are subsets of locations, use the Locations endpoints to - [get](ref:get-v1-locations-location_id) or [update](ref:put-v1-locations-location_id) an individual record. - - scope: `companies:read` - tags: - - Locations - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - example: 7b1d0df1-6403-4a06-8768-c1dd7d24d27a - required: true - schema: - type: string - - name: page - in: query - required: false - description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - schema: - type: integer - - name: per - in: query - required: false - description: Number of objects per page. For majority of endpoints will default to 25 - schema: - type: integer - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Company-Locations-List" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: get - post: - summary: Create a company location - operationId: post-v1-companies-company_id-locations - security: - - CompanyAccessAuth: [] - description: |- - Create a company location, which represents any address associated with a company: mailing - addresses, filing addresses, or work locations. A single address may serve multiple, or all, purposes. - - Since all company locations are subsets of locations, use the Locations endpoints to - [get](ref:get-v1-locations-location_id) or [update](ref:put-v1-locations-location_id) an individual record. - - scope: `companies:write` - tags: - - Locations - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '201': - description: Created - content: - application/json: - schema: - "$ref": "#/components/schemas/Location" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Company-Location-Request" - required: true - x-speakeasy-name-override: create - "/v1/locations/{location_id}": - get: - summary: Get a location - operationId: get-v1-locations-location_id - security: - - CompanyAccessAuth: [] - description: |- - Get a location. - - scope: `companies:read` - tags: - - Locations - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: location_id - in: path - description: The UUID of the location - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Location" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: retrieve - put: - summary: Update a location - operationId: put-v1-locations-location_id - security: - - CompanyAccessAuth: [] - description: |- - Update a location. - - scope: `companies:write` - tags: - - Locations - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: location_id - in: path - description: The UUID of the location - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Location" - '422': - description: Invalid state - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '409': - description: Invalid version param - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - allOf: - - "$ref": "#/components/schemas/Versionable-Required" - - type: object - properties: - phone_number: - type: string - pattern: "[0-9]{10}" - example: '8009360383' - street_1: - type: string - example: 300 3rd Street - street_2: - type: - - string - - 'null' - example: Apartment 318 - city: - type: string - example: San Francisco - state: - type: string - zip: - type: string - example: '94107' - country: - type: string - mailing_address: - type: boolean - description: For a company location, specify if this location is the company's mailing address. A company has a single mailing address, so this designation will override any previous selection. - filing_address: - type: boolean - description: For a company location, specify if this location is the company's filing address. A company has a single filing address, so this designation will override any previous selection. - required: true - x-speakeasy-name-override: update - "/v1/locations/{location_uuid}/minimum_wages": - get: - summary: Get minimum wages for a location - operationId: get-v1-locations-location_uuid-minimum_wages - security: - - CompanyAccessAuth: [] - description: |- - Get minimum wages for a location - - scope: `companies:read` - tags: - - Locations - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: location_uuid - in: path - description: The UUID of the location - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: effective_date - in: query - required: false - example: '2020-01-31' - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Minimum-Wage-List" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: getMinimumWages - "/v1/companies/{company_id}/bank_accounts": - get: - summary: Get all company bank accounts - operationId: get-v1-companies-company_id-bank-accounts - security: - - CompanyAccessAuth: [] - description: |- - Returns company bank accounts. Currently, we only support a single default bank account per company. - - scope: `company_bank_accounts:read` - tags: - - Bank Accounts - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Company-Bank-Account" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: bankAccounts - x-speakeasy-name-override: get - post: - summary: Create a company bank account - operationId: post-v1-companies-company_id-bank-accounts - security: - - CompanyAccessAuth: [] - description: "This endpoint creates a new company bank account.\n\nUpon being created, two verification deposits are automatically sent to the bank account, and the bank account's verification_status is 'awaiting_deposits'.\n\nWhen the deposits are successfully transferred, the verification_status changes to 'ready_for_verification', at which point the verify endpoint can be used to verify the bank account.\nAfter successful verification, the bank account's verification_status is 'verified'.\n\n\n>\U0001F6A7 Warning\n>\n> If a default bank account exists, it will be disabled and the new bank account will replace it as the company's default funding method.\n\nscope: `company_bank_accounts:write`" - tags: - - Bank Accounts - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Bank account unchanged - content: - application/json: - schema: - "$ref": "#/components/schemas/Company-Bank-Account" - '201': - description: created - content: - application/json: - schema: - "$ref": "#/components/schemas/Company-Bank-Account" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: Invalid Attribute - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Company-Bank-Account-Request" - required: true - x-speakeasy-group: bankAccounts - x-speakeasy-name-override: create - "/v1/companies/{company_id}/bank_accounts/{bank_account_uuid}/verify": - put: - summary: Verify a company bank account - operationId: put-v1-companies-company_id-bank-accounts-verify - security: - - CompanyAccessAuth: [] - description: |- - Verify a company bank account by confirming the two micro-deposits sent to the bank account. - - Note that the order of the two deposits specified in request parameters does not matter. - There's a maximum of 5 verification attempts, after which we will automatically initiate a new set of micro-deposits and require the bank account to be verified with the new micro-deposits. - - ### Bank account verification in demo - In the demo environment, use the `POST /v1/companies/{company_id}/bank_accounts/{bank_account_uuid}/send_test_deposits` endpoint to simulate the micro-deposits transfer and return the two amounts in the response. You can call this endpoint as many times as you wish to retrieve the values of the two micro-deposits. - - ### Webhooks - - `company.bank_account.verified`: Fires when the company bank account is successfully verified. - - ### Related guides - - [Manage company bank accounts](doc:manage-company-bank-accounts) - - [Bank Account Events](doc:bank-account-events) - - scope: `company_bank_accounts:write` - tags: - - Bank Accounts - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: bank_account_uuid - in: path - description: The UUID of the company bank account - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Company-Bank-Account" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Company-Bank-Account-Verify-Request" - required: true - x-speakeasy-group: bankAccounts - x-speakeasy-name-override: verify - "/v1/companies/{company_uuid}/external_payrolls": - get: - summary: Get external payrolls for a company - operationId: get-v1-company-external-payrolls - security: - - CompanyAccessAuth: [] - tags: - - External Payrolls - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: page - in: query - required: false - description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - schema: - type: integer - - name: per - in: query - required: false - description: Number of objects per page. For majority of endpoints will default to 25 - schema: - type: integer - description: |- - Get external payrolls for a company. - - scope: `external_payrolls:read` - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/External-Payroll-Basic" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: externalPayrolls - x-speakeasy-name-override: get - post: - summary: Create an external payroll for a company - operationId: post-v1-external-payroll - security: - - CompanyAccessAuth: [] - tags: - - External Payrolls - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - description: |- - Creates a new external payroll for a company. - - scope: `external_payrolls:write` - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/External-Payroll" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/External-Payroll-Create-Request" - required: true - x-speakeasy-group: externalPayrolls - x-speakeasy-name-override: create - "/v1/companies/{company_uuid}/external_payrolls/{external_payroll_id}": - get: - summary: Get an external payroll - operationId: get-v1-external-payroll - security: - - CompanyAccessAuth: [] - tags: - - External Payrolls - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: external_payroll_id - in: path - description: The UUID of the external payroll - required: true - schema: - type: string - description: |- - Get an external payroll for a given company. - - scope: `external_payrolls:read` - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/External-Payroll" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: externalPayrolls - x-speakeasy-name-override: retrieve - put: - summary: Update an external payroll - operationId: put-v1-external-payroll - security: - - CompanyAccessAuth: [] - tags: - - External Payrolls - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: external_payroll_id - in: path - description: The UUID of the external payroll - required: true - schema: - type: string - description: |- - Update an external payroll with a list of external payroll items. - - scope: `external_payrolls:write` - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/External-Payroll" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/External-Payroll-Update-Request" - required: true - x-speakeasy-group: externalPayrolls - x-speakeasy-name-override: update - delete: - summary: Delete an external payroll - operationId: delete-v1-external-payroll - security: - - CompanyAccessAuth: [] - tags: - - External Payrolls - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: external_payroll_id - in: path - description: The UUID of the external payroll - required: true - schema: - type: string - description: |- - Delete an external payroll. - - scope: `external_payrolls:write` - x-gusto-rswag: true - responses: - '204': - description: No Content - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - x-speakeasy-group: externalPayrolls - x-speakeasy-name-override: delete - "/v1/companies/{company_uuid}/external_payrolls/{external_payroll_id}/calculate_taxes": - get: - summary: Get tax suggestions for an external payroll - operationId: get-v1-external-payroll-calculate-taxes - security: - - CompanyAccessAuth: [] - tags: - - External Payrolls - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: external_payroll_id - in: path - description: The UUID of the external payroll - required: true - schema: - type: string - description: |- - Get tax suggestions for an external payroll. Earnings and/or benefits data must be saved prior to the calculation in order to retrieve accurate tax calculation. - - scope: `external_payrolls:read` - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/External-Payroll-Tax-Suggestions" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - x-speakeasy-group: externalPayrolls - x-speakeasy-name-override: calculateTaxes - "/v1/companies/{company_uuid}/external_payrolls/tax_liabilities": - get: - summary: Get tax liabilities - operationId: get-v1-tax-liabilities - security: - - CompanyAccessAuth: [] - tags: - - External Payrolls - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - description: |- - Get tax liabilities from aggregate external payrolls for a company. - - scope: `external_payrolls:read` - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Tax-Liabilities-Selections" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: externalPayrolls - x-speakeasy-name-override: listTaxLiabilities - put: - summary: Update tax liabilities - operationId: put-v1-tax-liabilities - security: - - CompanyAccessAuth: [] - tags: - - External Payrolls - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - description: |- - Update tax liabilities for a company. - - scope: `external_payrolls:write` - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Tax-Liabilities-Selections" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Tax-Liability-Selections-Request" - required: true - x-speakeasy-group: externalPayrolls - x-speakeasy-name-override: updateTaxLiabilities - "/v1/companies/{company_uuid}/external_payrolls/tax_liabilities/finish": - put: - summary: Finalize tax liabilities options and convert into processed payrolls - operationId: put-v1-tax-liabilities-finish - security: - - CompanyAccessAuth: [] - tags: - - External Payrolls - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - description: |- - Finalizes tax liabilities for a company. All external payrolls edit action will be disabled. - - ### Asynchronous processing - This endpoint triggers an asynchronous operation. The external payrolls will be processed in the background after finalization. - - scope: `external_payrolls:write` - x-gusto-rswag: true - responses: - '202': - description: Accepted - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - x-speakeasy-group: externalPayrolls - x-speakeasy-name-override: finalizeTaxLiabilities - "/v1/companies/{company_uuid}/payment_configs": - get: - summary: Get a company's payment configs - operationId: get-v1-company-payment-configs - security: - - CompanyAccessAuth: [] - description: |- - Get payment speed configurations for the company: payment speed (1-day, 2-day, or 4-day ACH), fast payment limit, partner-owned disbursement setting, and earned fast ACH blockers when applicable. 1-day is only available to partners that opt in. - - ### Related guides - - [Payroll Processing Speeds](doc:2-day-vs-4-day) - - scope: `company_payment_configs:read` - tags: - - Payment Configs - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Payment-Configs" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: get - x-speakeasy-group: paymentConfigs - put: - summary: Update a company's payment configs - operationId: put-v1-company-payment-configs - security: - - CompanyAccessAuth: [] - description: |- - Update payment speed, fast payment limit, and/or partner-owned disbursement for a company. - - At least one of `payment_speed`, `fast_payment_limit`, or `partner_owned_disbursement` is required. - 1-day payment speed is only applicable to partners that opt in. 1-day is not allowed when AutoPilot is enabled. - - ### Related guides - - [Payroll Processing Speeds](doc:2-day-vs-4-day) - - scope: `company_payment_configs:write` - tags: - - Payment Configs - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Payment-Configs" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Payment-Configs-Update-Request" - required: true - x-speakeasy-group: paymentConfigs - x-speakeasy-name-override: update - "/v1/companies/{company_id}/pay_schedules": - get: - summary: Get the pay schedules for a company - operationId: get-v1-companies-company_id-pay_schedules - security: - - CompanyAccessAuth: [] - description: |- - Returns all pay schedules for a company. The pay schedule object captures the details of when employees work and when they should be paid. A company can have multiple pay schedules. - - scope: `pay_schedules:read` - tags: - - Pay Schedules - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: page - in: query - required: false - description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - schema: - type: integer - - name: per - in: query - required: false - description: Number of objects per page. For majority of endpoints will default to 25 - schema: - type: integer - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Pay-Schedule-Show-Response" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: paySchedules - x-speakeasy-name-override: getAll - post: - summary: Create a new pay schedule - operationId: post-v1-companies-company_id-pay_schedules - security: - - CompanyAccessAuth: [] - description: |- - 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](https://www.dol.gov/agencies/whd/state/payday)** to know what schedule is right for your customers. - - > If an onboarded company misses their first pay date, Gusto will automatically adjust the pay schedule to the next available pay date. - - ### Webhooks - - `pay_schedule.created`: Fires when a pay schedule is successfully created. - - ### Related guides - - [Create a pay schedule](doc:create-a-pay-schedule) - - [Pay Schedules](doc:pay-schedule-info) - - [Manage Pay Schedules via API](doc:manage-pay-schedules-api) - - scope: `pay_schedules:write` - tags: - - Pay Schedules - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '201': - description: Created - content: - application/json: - schema: - "$ref": "#/components/schemas/Pay-Schedule-Show" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Pay-Schedule-Create-Request" - required: true - x-speakeasy-group: paySchedules - x-speakeasy-name-override: create - "/v1/companies/{company_id}/pay_schedules/preview": - get: - summary: Preview pay schedule dates - operationId: get-v1-companies-company_id-pay_schedules-preview - security: - - CompanyAccessAuth: [] - description: |- - Provides a preview of a pay schedule with the specified parameters for the next 18 months. Use this before creating or updating a pay schedule to show expected check dates, pay period boundaries, and payroll deadlines. - - ### Related guides - - [Create a pay schedule](doc:create-a-pay-schedule) - - [Manage Pay Schedules via API](doc:manage-pay-schedules-api) - - scope: `pay_schedules:write` - tags: - - Pay Schedules - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: frequency - in: query - required: true - schema: - type: string - enum: - - Every week - - Every other week - - Twice per month - - Monthly - example: Twice per month - description: The frequency that employees on this pay schedule are paid with Gusto. - - name: anchor_pay_date - in: query - required: true - schema: - type: string - format: date - example: '2020-05-15' - description: The first date that employees on this pay schedule are paid with Gusto. - - name: anchor_end_of_pay_period - in: query - required: true - schema: - type: string - format: date - example: '2020-05-08' - description: The last date of the first pay period. This can be the same date as the anchor pay date. - - name: day_1 - in: query - required: false - schema: - type: integer - example: 15 - description: 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. - - name: day_2 - in: query - required: false - schema: - type: integer - example: 31 - description: 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 is set to the last day of the month. It will be null for pay schedules with other frequencies. - - name: end_date - in: query - required: false - schema: - type: string - format: date - description: End date for the preview range. If given, this date must be in the future. When unspecified, defaults to 18 months from today. - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Pay-Schedule-Preview" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - x-speakeasy-group: paySchedules - x-speakeasy-name-override: getPreview - "/v1/companies/{company_id}/pay_schedules/{pay_schedule_id}": - get: - summary: Get a pay schedule - operationId: get-v1-companies-company_id-pay_schedules-pay_schedule_id - security: - - CompanyAccessAuth: [] - description: |- - Returns a single pay schedule by UUID. The pay schedule object in Gusto captures the details of when employees work and when they should be paid. A company can have multiple pay schedules. - - scope: `pay_schedules:read` - tags: - - Pay Schedules - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: pay_schedule_id - in: path - description: The UUID of the pay schedule - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Pay-Schedule-Show" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: get - x-speakeasy-group: paySchedules - put: - summary: Update a pay schedule - operationId: put-v1-companies-company_id-pay_schedules-pay_schedule_id - security: - - CompanyAccessAuth: [] - description: |- - Updates a pay schedule. The `version` parameter from the GET response is required for [optimistic concurrency](doc:api-fundamentals); a mismatch returns 409 Conflict. - - ### Effect on payrolls - Updating a pay schedule will delete any unprocessed regular payrolls whose pay period end date is today or in the future. Already-processed payrolls are not affected. - - ### Pay schedules may be automatically adjusted - If an onboarded company misses their first pay date, Gusto will automatically adjust the pay schedule to the next available pay date. - - ### Webhooks - - `pay_schedule.updated`: Fires when a pay schedule is successfully updated. - - ### Related guides - - [Create a pay schedule](doc:create-a-pay-schedule) - - [Manage Pay Schedules via API](doc:manage-pay-schedules-api) - - scope: `pay_schedules:write` - tags: - - Pay Schedules - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: pay_schedule_id - in: path - description: The UUID of the pay schedule - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Pay-Schedule-Show" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '409': - description: Conflict - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Pay-Schedule-Update-Request" - required: true - x-speakeasy-group: paySchedules - x-speakeasy-name-override: update - "/v1/companies/{company_id}/pay_periods": - get: - summary: Get pay periods for a company - operationId: get-v1-companies-company_id-pay_periods - security: - - CompanyAccessAuth: [] - description: |- - Pay periods are the foundation of payroll. Compensation, time & attendance, taxes, and expense reports all rely on when they happened. - - To begin submitting information for a given payroll, we need to agree on the time period. - - By default, this endpoint returns pay periods starting from 6 months ago to the date today. Use the `start_date` and `end_date` parameters to change the scope of the response. End dates can be up to 3 months in the future and there is no limit on start dates. - - Starting in version 2023-04-01, the `eligible_employees` attribute was removed from the response. The eligible employees for a payroll are determined by the employee_compensations returned from the [PUT /v1/companies/{company_id}/payrolls/{payroll_id}/prepare](ref:put-v1-companies-company_id-payrolls-payroll_id-prepare) endpoint. - - scope: `payrolls:read` - tags: - - Payrolls - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: start_date - in: query - required: false - schema: - type: string - format: date - description: Start date (YYYY-MM-DD) for the pay periods range. Defaults to 6 months ago. - - name: end_date - in: query - required: false - schema: - type: string - format: date - description: End date (YYYY-MM-DD) for the pay periods range. Cannot be more than 3 months in the future. Defaults to today. - - name: payroll_types - in: query - required: false - schema: - type: string - enum: - - regular - - transition - - regular,transition - description: Comma-separated list of payroll types to include (regular, transition). Defaults to regular only. - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Pay-Period" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - x-speakeasy-group: paySchedules - x-speakeasy-name-override: getPayPeriods - "/v1/companies/{company_id}/pay_periods/unprocessed_termination_pay_periods": - get: - summary: Get termination pay periods for a company - operationId: get-v1-companies-company_id-unprocessed_termination_pay_periods - security: - - CompanyAccessAuth: [] - description: |- - 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. - - This endpoint returns the unprocessed pay periods for past and future terminated employees in a given company. - - scope: `payrolls:read` - tags: - - Pay Schedules - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Unprocessed-Termination-Pay-Period" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: paySchedules - x-speakeasy-name-override: getUnprocessedTerminationPeriods - "/v1/companies/{company_id}/pay_schedules/assignments": - get: - summary: Get pay schedule assignments for a company - operationId: get-v1-companies-company_id-pay_schedules-assignments - security: - - CompanyAccessAuth: [] - description: |- - This endpoint returns the current pay schedule assignment for a company, with pay schedule and employee/department mappings depending on the pay schedule type. - - scope: `pay_schedules:read` - tags: - - Pay Schedules - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Pay-Schedule-Assignment" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: paySchedules - x-speakeasy-name-override: getAssignments - "/v1/companies/{company_id}/pay_schedules/assignment_preview": - post: - summary: Preview pay schedule assignments for a company - operationId: post-v1-companies-company_id-pay_schedules-assignment_preview - security: - - CompanyAccessAuth: [] - description: |- - This endpoint returns the employee changes, including pay period and transition pay periods, for changing the pay schedule. - - scope: `pay_schedules:write` - tags: - - Pay Schedules - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Pay-Schedule-Assignment-Preview" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Pay-Schedule-Assignment-Body" - required: true - x-speakeasy-group: paySchedules - x-speakeasy-name-override: previewAssignment - "/v1/companies/{company_id}/pay_schedules/assign": - post: - summary: Assign pay schedules for a company - operationId: post-v1-companies-company_id-pay_schedules-assign - security: - - CompanyAccessAuth: [] - description: |- - This endpoint assigns employees to pay schedules based on the schedule type. - For `by_employee` and `by_department` schedules, use the `partial_assignment` parameter to control the assignment scope. Set it to `true` for partial assignments (only some employees or departments at a time) and `false` for full assignments (all employees or departments at once). - - scope: `pay_schedules:write` - tags: - - Pay Schedules - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: No Content - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Pay-Schedule-Assignment-Body" - required: true - x-speakeasy-group: paySchedules - x-speakeasy-name-override: assign - "/v1/companies/{company_id}/employees": - get: - summary: Get employees of a company - operationId: get-v1-companies-company_id-employees - security: - - CompanyAccessAuth: [] - description: |- - Get all of the employees, onboarding, active and terminated, for a given company. - - Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope is included. This allows you to access employee and job metadata without exposing pay rates. - - scope: `employees:read` - tags: - - Employees - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - required: true - description: The UUID of the company - schema: - type: string - - name: location_uuid - in: query - required: false - description: Filter employees by a specific primary work location - schema: - type: string - - name: payroll_uuid - in: query - required: false - description: Filter employees by a specific payroll - schema: - type: string - - name: search_term - in: query - required: false - description: A string to search for in the object's names - schema: - type: string - - name: sort_by - in: query - required: false - schema: - type: string - pattern: "^(created_at|name|onboarding_status)(:(asc|desc))?(,(created_at|name|onboarding_status)(:(asc|desc))?)*$" - example: created_at:asc - description: Sort employees by a given field. Cannot be used with search_term. Append `:asc` or `:desc` to specify direction (e.g., `name:desc`). Defaults to ascending. - - name: include - in: query - explode: false - required: false - schema: - type: array - items: - type: string - enum: - - all_compensations - - all_home_addresses - - company_name - - current_home_address - - custom_fields - - portal_invitations - x-enumDescriptions: - all_compensations: Include all effective dated compensations for each job instead of only the current compensation. Requires `compensations:read` scope. - all_home_addresses: Include all home addresses that have been associated to this employee - company_name: Include the name of the company that the employee is associated with - current_home_address: Include the employee's current home address - custom_fields: Include employees' custom fields - portal_invitations: Include portal invitation status information, including member portal invitation details and partner portal invitation status - description: Include the requested attribute(s) in each employee response. Multiple options are comma separated. - - name: onboarded - in: query - required: false - description: Filters employees by those who have completed onboarding - schema: - type: boolean - - name: onboarded_active - in: query - required: false - description: Filters employees who are ready to work (onboarded AND active today) - schema: - type: boolean - - name: terminated - in: query - required: false - description: Filters employees by those who have been or are scheduled to be terminated - schema: - type: boolean - - name: terminated_today - in: query - required: false - description: Filters employees by those who have been terminated and whose termination is in effect today (excludes active and scheduled to be terminated) - schema: - type: boolean - - name: uuids - in: query - explode: false - schema: - type: array - items: - type: string - required: false - description: Optional subset of employees to fetch. - - name: page - in: query - required: false - description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - schema: - type: integer - - name: per - in: query - required: false - description: Number of objects per page. For majority of endpoints will default to 25 - schema: - type: integer - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Show-Employees" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: list - post: - summary: Create an employee - operationId: post-v1-employees - security: - - CompanyAccessAuth: [] - description: |- - Create an employee. - - scope: `employees:manage` - tags: - - Employees - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - required: true - description: Company ID - schema: - type: string - x-gusto-rswag: true - responses: - '201': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: invalid attributes - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - required: - - first_name - - last_name - properties: - first_name: - type: string - middle_initial: - type: string - last_name: - type: string - email: - type: - - string - - 'null' - format: email - description: The employee's personal email address. Required if self_onboarding is true. - work_email: - type: string - format: email - description: The employee's work email address. - date_of_birth: - type: string - format: date - ssn: - type: string - pattern: "[0-9]{9}" - preferred_first_name: - type: string - self_onboarding: - type: boolean - description: If true, employee is expected to self-onboard. If false, payroll admin is expected to enter in the employee's onboarding information - x-speakeasy-name-override: create - "/v1/companies/{company_id}/employees/payment_details": - get: - summary: Get employee payment details for a company - operationId: get-v1-companies-company_id-employees-payment_details - security: - - CompanyAccessAuth: [] - description: |- - Fetches payment details for employees in a given company. Results are paginated. - - Use the `employee_uuid` query parameter to filter for a single employee. - Use the `payroll_uuid` query parameter to filter for employees on a specific payroll. - Providing both `employee_uuid` and `payroll_uuid` will result in a 422 error. - An empty array is returned if the company has no employees or if no employees match the filter criteria. - - The `encrypted_account_number` in the `splits` array is only visible if the `employee_payment_methods:read:account_number` scope is present. - - scope: `employee_payment_methods:read` - tags: - - Employees - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: employee_uuid - in: query - required: false - description: The UUID of a specific employee to fetch payment details for. - schema: - type: string - - name: payroll_uuid - in: query - required: false - description: The UUID of a specific payroll to fetch payment details for employees on that payroll. - schema: - type: string - - name: page - in: query - required: false - description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - schema: - type: integer - - name: per - in: query - required: false - description: Number of objects per page. For majority of endpoints will default to 25 - schema: - type: integer - x-gusto-rswag: true - responses: - '200': - description: A list of employee payment details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Payment-Details-List" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - "/v1/companies/{company_uuid}/historical_employees": - post: - summary: Create a historical employee - operationId: post-v1-historical_employees - security: - - CompanyAccessAuth: [] - description: |- - Create a historical employee, an employee that was previously dismissed from the company in the current year. - - scope: `employees:manage` - tags: - - Employees - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - required: true - description: The UUID of the company that will employ this historical record. - example: 7b1d0df1-6403-4a06-8768-c1dd7d24d27a - schema: - type: string - x-gusto-rswag: true - responses: - '201': - description: Created - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Historical-Employee-Body" - required: true - x-speakeasy-name-override: createHistorical - "/v1/companies/{company_uuid}/historical_employees/{historical_employee_uuid}": - put: - summary: Update a historical employee - operationId: put-v1-historical_employees - security: - - CompanyAccessAuth: [] - description: |- - Update a historical employee, an employee that was previously dismissed from the company in the current year. - - scope: `employees:manage employees:write` - tags: - - Employees - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - required: true - description: The UUID of the company that will employ this historical record. - example: 7b1d0df1-6403-4a06-8768-c1dd7d24d27a - schema: - type: string - - name: historical_employee_uuid - in: path - required: true - description: The UUID of the historical employee returned from create or list responses. - example: a2b3c4d-5e6f-7890-abcd-ef1234567890 - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - allOf: - - "$ref": "#/components/schemas/Versionable-Required" - - "$ref": "#/components/schemas/Historical-Employee-Body" - required: true - x-speakeasy-group: historicalEmployees - x-speakeasy-name-override: update - "/v1/companies/{company_uuid}/departments": - get: - summary: Get all departments of a company - operationId: get-companies-departments - security: - - CompanyAccessAuth: [] - description: |- - Get all of the departments for a given company with the employees and contractors assigned to that department. - - scope: `departments:read` - tags: - - Departments - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Department-List" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: getAll - post: - summary: Create a department - operationId: post-departments - security: - - CompanyAccessAuth: [] - description: |- - Create a department - - scope: `departments:write` - tags: - - Departments - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '201': - description: Created - content: - application/json: - schema: - "$ref": "#/components/schemas/Department" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Department-Create-Request-Body" - required: true - x-speakeasy-name-override: create - "/v1/departments/{department_uuid}": - get: - summary: Get a department - operationId: get-department - security: - - CompanyAccessAuth: [] - description: |- - Get a department given the UUID - - scope: `departments:read` - tags: - - Departments - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: department_uuid - in: path - description: The UUID of the department - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Department" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: get - put: - summary: Update a department - operationId: put-departments - security: - - CompanyAccessAuth: [] - description: |- - Update a department - - scope: `departments:write` - tags: - - Departments - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: department_uuid - in: path - description: The UUID of the department - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Department" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - '409': - description: Conflict - content: - application/json: - schema: - "$ref": "#/components/schemas/Conflict-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Department-Update-Request-Body" - required: true - x-speakeasy-name-override: update - delete: - summary: Delete a department - operationId: delete-department - security: - - CompanyAccessAuth: [] - description: |- - Delete a department. You cannot delete a department until all employees and contractors have been removed. - - scope: `departments:write` - tags: - - Departments - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: department_uuid - in: path - description: The UUID of the department - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '204': - description: No Content - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - x-speakeasy-name-override: delete - "/v1/departments/{department_uuid}/add": - put: - summary: Add people to a department - operationId: put-add-people-to-department - security: - - CompanyAccessAuth: [] - description: |- - Add employees and contractors to a department - - scope: `departments:write` - tags: - - Departments - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: department_uuid - in: path - description: The UUID of the department - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Department" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Department-People-Request-Body" - required: true - x-speakeasy-name-override: addPeople - "/v1/departments/{department_uuid}/remove": - put: - summary: Remove people from a department - operationId: put-remove-people-from-department - security: - - CompanyAccessAuth: [] - description: |- - Remove employees and contractors from a department - - scope: `departments:write` - tags: - - Departments - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: department_uuid - in: path - description: The UUID of the department - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Department" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Department-People-Request-Body" - required: true - x-speakeasy-name-override: removePeople - "/v1/employees/{employee_id}": - get: - summary: Get an employee - operationId: get-v1-employees - security: - - CompanyAccessAuth: [] - description: |- - Get an employee. - - Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope is included. This allows you to access employee and job metadata without exposing pay rates. - - scope: `employees:read` - tags: - - Employees - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - - name: include - in: query - explode: false - required: false - schema: - type: array - items: - type: string - enum: - - all_compensations - - all_home_addresses - - company_name - - current_home_address - - custom_fields - - portal_invitations - x-enumDescriptions: - all_compensations: Include all effective dated compensations for each job instead of only the current compensation. Requires `compensations:read` scope. - all_home_addresses: Include all home addresses that have been associated to this employee - company_name: Include the name of the company that the employee is associated with - current_home_address: Include the employee's current home address - custom_fields: Include employees' custom fields - portal_invitations: Include portal invitation status information, including member portal invitation details and partner portal invitation status - description: Include the requested attribute(s) in each employee response. Multiple options are comma separated. - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: get - put: - summary: Update an employee. - operationId: put-v1-employees - security: - - CompanyAccessAuth: [] - description: |- - Update an employee. - - scope: `employees:write` - tags: - - Employees - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee" - '409': - description: invalid version - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - '422': - description: invalid attributes - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - requestBody: - content: - application/json: - schema: - allOf: - - "$ref": "#/components/schemas/Versionable-Required" - - type: object - properties: - first_name: - type: string - example: Weezy - middle_initial: - type: - - string - - 'null' - example: F - last_name: - type: string - example: Baby - email: - type: string - example: tunechi@cashmoneyrecords.com - work_email: - type: string - example: new.partner.work@example.com - date_of_birth: - type: string - example: '1991-01-31' - ssn: - type: string - pattern: "[0-9]{9}" - example: '824920233' - preferred_first_name: - type: - - string - - 'null' - two_percent_shareholder: - type: boolean - description: Whether the employee is a two percent shareholder of the company. This field only applies to companies with an S-Corp entity type. - required: true - x-speakeasy-name-override: update - delete: - summary: Delete an onboarding employee - operationId: delete-v1-employee - security: - - CompanyAccessAuth: [] - description: |- - Use this endpoint to delete an employee who is in onboarding. Deleting - an onboarded employee is not allowed and will return a 422 response. Please check out the Terminations api - if you need to terminate an onboarded employee. - - scope: `employees:manage` - tags: - - Employees - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '204': - description: successful - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: cannot delete onboarded employee - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - x-speakeasy-name-override: delete - "/v1/employees/{employee_id}/terminations": - get: - summary: Get terminations for an employee - operationId: get-v1-employees-employee_id-terminations - security: - - CompanyAccessAuth: [] - description: |- - Terminations are created whenever an employee is scheduled to leave the company. The only things required are an effective date (their last day of work) and whether they should receive their wages in a one-off termination payroll or with the rest of the company. - - Note that some states require employees to receive their final wages within 24 hours (unless they consent otherwise,) in which case running a one-off payroll may be the only option. - - scope: `employments:read` - tags: - - Employee Employments - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Termination" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: employeeEmployments - x-speakeasy-name-override: getTerminations - post: - summary: Create an employee termination - operationId: post-v1-employees-employee_id-terminations - security: - - CompanyAccessAuth: [] - description: |- - Create a termination for an employee. The only things required are an effective date (their last day of work) and whether they should receive their wages in a one-off termination payroll or with the rest of the company. - - Note that some states require employees to receive their final wages within 24 hours (unless they consent otherwise,) in which case running a one-off payroll may be the only option. - - scope: `employments:write` - tags: - - Employee Employments - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '201': - description: Created - content: - application/json: - schema: - "$ref": "#/components/schemas/Termination" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - properties: - effective_date: - type: string - description: The employee's last day of work. - example: '2020-06-30' - run_termination_payroll: - type: boolean - description: 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. - default: false - example: true - required: - - effective_date - example: - effective_date: '2020-06-30' - run_termination_payroll: false - required: true - x-speakeasy-name-override: createTermination - x-speakeasy-group: employeeEmployments - delete: - summary: Delete an employee termination - operationId: delete-v1-employees-employee_id-terminations - security: - - CompanyAccessAuth: [] - description: |- - Delete an employee termination. - - scope: `employments:write` - tags: - - Employee Employments - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '204': - description: No Content - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - x-speakeasy-group: employeeEmployments - x-speakeasy-name-override: deleteTermination - "/v1/terminations/{employee_id}": - get: - summary: Get an employee termination - operationId: get-v1-terminations-employee_id - security: - - CompanyAccessAuth: [] - description: |- - Terminations are created whenever an employee is scheduled to leave the company. The only things required are an effective date (their last day of work) and whether they should receive their wages in a one-off termination payroll or with the rest of the company. - - Note that some states require employees to receive their final wages within 24 hours (unless they consent otherwise,) in which case running a one-off payroll may be the only option. - - scope: `employments:read` - tags: - - Employee Employments - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Termination" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - put: - summary: Update an employee termination - operationId: put-v1-terminations-employee_id - security: - - CompanyAccessAuth: [] - description: |- - Terminations are created whenever an employee is scheduled to leave the company. The only things required are an effective date (their last day of work) and whether they should receive their wages in a one-off termination payroll or with the rest of the company. - - Note that some states require employees to receive their final wages within 24 hours (unless they consent otherwise,) in which case running a one-off payroll may be the only option. - - scope: `employments:write` - tags: - - Employee Employments - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Termination" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - allOf: - - "$ref": "#/components/schemas/Versionable-Required" - - type: object - properties: - effective_date: - type: string - description: The employee's last day of work. - example: '2020-06-30' - run_termination_payroll: - type: boolean - description: 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. - default: false - example: true - required: - - effective_date - example: - version: d487dd0b55dfcacdd920ccbdaeafa351 - effective_date: '2020-06-30' - run_termination_payroll: false - required: true - x-speakeasy-group: employeeEmployments - x-speakeasy-name-override: updateTermination - "/v1/employees/{employee_id}/rehire": - get: - summary: Get an employee rehire - operationId: get-v1-employees-employee_id-rehire - security: - - CompanyAccessAuth: [] - description: |- - Retrieve an employee's rehire, which contains information on when the employee returns to work. - - scope: `employments:read` - tags: - - Employee Employments - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Rehire" - '204': - description: No Content - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: employeeEmployments - x-speakeasy-name-override: getRehire - post: - summary: Create an employee rehire - operationId: post-v1-employees-employee_id-rehire - security: - - CompanyAccessAuth: [] - description: |- - Rehire is created whenever an employee is scheduled to return to the company. - - scope: `employments:write` - tags: - - Employee Employments - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '201': - description: Created - content: - application/json: - schema: - "$ref": "#/components/schemas/Rehire" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Rehire-Body" - required: true - x-speakeasy-group: employeeEmployments - x-speakeasy-name-override: createRehire - put: - summary: Update an employee rehire - operationId: put-v1-employees-employee_id-rehire - security: - - CompanyAccessAuth: [] - description: |- - Update an employee's rehire. - - scope: `employments:write` - tags: - - Employee Employments - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Rehire" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Rehire-Update-Request-Body" - required: true - x-speakeasy-group: employeeEmployments - x-speakeasy-name-override: rehire - delete: - summary: Delete an employee rehire - operationId: delete-v1-employees-employee_id-rehire - security: - - CompanyAccessAuth: [] - description: |- - Delete an employee rehire. An employee rehire cannot be deleted if it's active (past effective date). - - scope: `employments:write` - tags: - - Employee Employments - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '204': - description: No Content - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - x-speakeasy-group: employeeEmployments - x-speakeasy-name-override: deleteRehire - "/v1/employees/{employee_id}/employment_history": - get: - summary: Get employment history for an employee - operationId: get-v1-employees-employee_id-employment_history - security: - - CompanyAccessAuth: [] - description: |- - Retrieve the employment history for a given employee, which includes termination and rehire. - - scope: `employments:read` - tags: - - Employee Employments - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Employment-History-List" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: employeeEmployments - x-speakeasy-name-override: getHistory - "/v1/employees/{employee_id}/home_addresses": - get: - summary: Get an employee's home addresses - operationId: get-v1-employees-employee_id-home_addresses - security: - - CompanyAccessAuth: [] - description: |- - The home address of an employee is used to determine certain tax information about them. Addresses are geocoded on create and update to ensure validity. - - Supports home address effective dating and courtesy withholding. - - scope: `employees:read` - tags: - - Employee Addresses - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Address-List" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: employeeAddresses - x-speakeasy-name-override: get - post: - summary: Create an employee's home address - operationId: post-v1-employees-employee_id-home_addresses - security: - - CompanyAccessAuth: [] - description: |- - The home address of an employee is used to determine certain tax information about them. Addresses are geocoded on create and update to ensure validity. - - Supports home address effective dating and courtesy withholding. - - scope: `employees:write` - tags: - - Employee Addresses - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '201': - description: created - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Address" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - properties: - street_1: - type: string - example: 300 3rd Street - street_2: - type: - - string - - 'null' - city: - type: string - example: San Francisco - state: - type: string - example: CA - zip: - type: string - example: '94107' - effective_date: - type: - - string - - 'null' - format: date - example: '2022-01-31' - courtesy_withholding: - type: boolean - required: true - x-speakeasy-group: employeeAddresses - x-speakeasy-name-override: create - "/v1/home_addresses/{home_address_uuid}": - get: - summary: Get an employee's home address - operationId: get-v1-home_addresses-home_address_uuid - security: - - CompanyAccessAuth: [] - description: |- - The home address of an employee is used to determine certain tax information about them. Addresses are geocoded on create and update to ensure validity. - - Supports home address effective dating and courtesy withholding. - - scope: `employees:read` - tags: - - Employee Addresses - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: home_address_uuid - in: path - description: The UUID of the home address - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Address" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: employeeAddresses - x-speakeasy-name-override: retrieveHomeAddress - put: - summary: Update an employee's home address - operationId: put-v1-home_addresses-home_address_uuid - security: - - CompanyAccessAuth: [] - description: |- - The home address of an employee is used to determine certain tax information about them. Addresses are geocoded on create and update to ensure validity. - - Supports home address effective dating and courtesy withholding. - - scope: `employees:write` - tags: - - Employee Addresses - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: home_address_uuid - in: path - description: The UUID of the home address - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Address" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - allOf: - - "$ref": "#/components/schemas/Versionable-Required" - - type: object - properties: - street_1: - type: string - street_2: - type: - - string - - 'null' - city: - type: string - state: - type: string - zip: - type: string - effective_date: - type: - - string - - 'null' - format: date - courtesy_withholding: - type: boolean - required: true - x-speakeasy-group: employeeAddresses - x-speakeasy-name-override: update - delete: - summary: Delete an employee's home address - operationId: delete-v1-home_addresses-home_address_uuid - security: - - CompanyAccessAuth: [] - description: |- - Used for deleting an employee's home address. Cannot delete the employee's active home address. - - scope: `employees:write` - tags: - - Employee Addresses - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: home_address_uuid - in: path - description: The UUID of the home address - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '204': - description: successful - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - x-speakeasy-group: employeeAddresses - x-speakeasy-name-override: delete - "/v1/employees/{employee_id}/work_addresses": - get: - summary: Get an employee's work addresses - operationId: get-v1-employees-employee_id-work_addresses - security: - - CompanyAccessAuth: [] - description: |- - Returns a list of an employee's work addresses. Each address includes its effective - date and a boolean signifying if it is the currently active work address. - - scope: `employees:read` - tags: - - Employee Addresses - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: List of employee work addresses - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Work-Addresses-List" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: employeeAddresses - x-speakeasy-name-override: getWorkAddresses - post: - summary: Create an employee work address - operationId: post-v1-employees-employee_id-work_addresses - security: - - CompanyAccessAuth: [] - description: |- - The work address of an employee describes when an employee began working at an associated company location. - - scope: `employees:manage` - tags: - - Employee Addresses - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '201': - description: created - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Work-Address" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: unprocessable entity - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - properties: - location_uuid: - type: string - description: Reference to a company location - example: 6a119be7-b4b0-4e27-aaa0-89d5f2524635 - effective_date: - type: string - format: date - description: Date the employee began working at the company location - example: '2023-05-15' - required: true - x-speakeasy-group: employeeAddresses - x-speakeasy-name-override: createWorkAddress - "/v1/work_addresses/{work_address_uuid}": - get: - summary: Get an employee work address - operationId: get-v1-work_addresses-work_address_uuid - security: - - CompanyAccessAuth: [] - description: |- - The work address of an employee is used for payroll tax purposes. - - scope: `employees:read` - tags: - - Employee Addresses - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: work_address_uuid - in: path - description: The UUID of the work address - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Work-Address" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: employeeAddresses - x-speakeasy-name-override: retrieveWorkAddress - put: - summary: Update an employee work address - operationId: put-v1-work_addresses-work_address_uuid - security: - - CompanyAccessAuth: [] - description: |- - The work address of an employee is used for payroll tax purposes. - - scope: `employees:manage` - tags: - - Employee Addresses - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: work_address_uuid - in: path - description: The UUID of the work address - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Work-Address" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: unprocessable entity - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - allOf: - - "$ref": "#/components/schemas/Versionable-Required" - - type: object - properties: - location_uuid: - type: string - description: Reference to a company location - example: 6a119be7-b4b0-4e27-aaa0-89d5f2524635 - effective_date: - type: string - format: date - example: '2023-05-15' - required: true - x-speakeasy-group: employeeAddresses - x-speakeasy-name-override: updateWorkAddress - delete: - summary: Delete an employee's work address - operationId: delete-v1-work_addresses-work_address_uuid - security: - - CompanyAccessAuth: [] - description: |- - Used for deleting an employee's work address. Cannot delete the employee's active work address. - - scope: `employees:manage` - tags: - - Employee Addresses - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: work_address_uuid - in: path - description: The UUID of the work address - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '204': - description: no content - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: unprocessable entity - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - x-speakeasy-group: employeeAddresses - x-speakeasy-name-override: deleteWorkAddress - "/v1/employees/{employee_id}/custom_fields": - get: - summary: Get an employee's custom fields - operationId: get-v1-employees-employee_id-custom_fields - security: - - CompanyAccessAuth: [] - description: |- - Returns a list of the employee's custom fields. - - scope: `employees:read` - tags: - - Employees - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - - name: page - in: query - required: false - description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - schema: - type: integer - - name: per - in: query - required: false - description: Number of objects per page. For majority of endpoints will default to 25 - schema: - type: integer - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Custom-Field-List" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: getCustomFields - "/v1/employees/{employee_id}/onboarding_documents_config": - put: - summary: Update employee onboarding documents config - operationId: put-v1-employees-employee_id-onboarding_documents_config - security: - - CompanyAccessAuth: [] - description: |- - Indicate whether to include the Form I-9 for an employee during the onboarding process. - If included, the employee will be prompted to complete Form I-9 as part of their onboarding. - - ## Related guides - - [Employee onboarding](doc:employee-onboarding) - - scope: `employees:manage` - tags: - - Employees - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - required: true - description: The UUID of the employee - example: 7b1d0df1-6403-4a06-8768-c1dd7d24d27a - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Onboarding-Document" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Onboarding-Documents-Config-Request" - x-speakeasy-name-override: updateOnboardingDocumentsConfig - "/v1/employees/{employee_id}/onboarding_status": - get: - summary: Get the employee's onboarding status - operationId: get-v1-employees-employee_id-onboarding_status - security: - - CompanyAccessAuth: [] - description: |- - # Description - Retrieves an employee's onboarding status. The data returned helps inform the required onboarding steps and respective completion status. - - - ## onboarding_status - - ### Admin-facilitated onboarding - | onboarding_status | Description | - |:------------------|------------:| - | `admin_onboarding_incomplete` | Admin needs to complete the full employee-onboarding. | - | `onboarding_completed` | Employee has been fully onboarded and verified. | - - ### Employee self-onboarding - | onboarding_status | Description | - |:------------------|------------:| - | `admin_onboarding_incomplete` | Admin needs to enter basic information about the employee. | - | `self_onboarding_pending_invite` | Admin has the intention to invite the employee to self-onboard (e.g., marking a checkbox), but the system has not yet sent the invitation. | - | `self_onboarding_invited` | Employee has been sent an invitation to self-onboard. | - | `self_onboarding_invited_started` | Employee has started the self-onboarding process. | - | `self_onboarding_invited_overdue` | Employee's start date has passed, and employee has still not completed self-onboarding. | - | `self_onboarding_completed_by_employee` | Employee has completed entering in their information. The status should be updated via API to "self_onboarding_awaiting_admin_review" from here, once the Admin has started reviewing. | - | `self_onboarding_awaiting_admin_review` | Admin has started to verify the employee's information. | - | `onboarding_completed` | Employee has been fully onboarded and verified. | - - ## onboarding_steps - - | onboarding_steps | Requirement(s) to be completed | - |:-----------------|-------------------------------:| - | `personal_details` | Add employee's first name, last name, email, date of birth, social security number | - | `compensation_details` | Associate employee to a job & compensation. | - | `add_work_address` | Add employee work address. | - | `add_home_address` | Add employee home address. | - | `federal_tax_setup` | Set up federal tax withholdings. | - | `state_tax_setup` | Set up state tax withholdings. | - | `direct_deposit_setup` | (optional) Set up employee's direct deposit. | - | `employee_form_signing` | Employee forms (e.g., W4, direct deposit authorization) are generated & signed. | - | `file_new_hire_report` | File a new hire report for this employee. | - | `admin_review` | Admin reviews & confirms employee details (only required for Employee self-onboarding) | - - scope: `employees:read` - tags: - - Employees - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Onboarding-Status" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: getOnboardingStatus - put: - summary: Update the employee's onboarding status - operationId: put-v1-employees-employee_id-onboarding_status - security: - - CompanyAccessAuth: [] - description: |- - Updates an employee's onboarding status. - Below is a list of valid onboarding status changes depending on the intended action to be performed on behalf of the employee. - - | Action | current onboarding_status | new onboarding_status | - |:------------------|:------------:|----------:| - | Mark an employee as self-onboarding | `admin_onboarding_incomplete` | `self_onboarding_pending_invite` | - | Invite an employee to self-onboard | `admin_onboarding_incomplete` or `self_onboarding_pending_invite` | `self_onboarding_invited` | - | Cancel an employee's self-onboarding | `self_onboarding_invited` or `self_onboarding_pending_invite` | `admin_onboarding_incomplete` | - | Review an employee's self-onboarded info | `self_onboarding_completed_by_employee` | `self_onboarding_awaiting_admin_review` | - | Finish an employee's onboarding | `admin_onboarding_incomplete` or `self_onboarding_awaiting_admin_review` | `onboarding_completed` | - - scope: `employees:manage` - tags: - - Employees - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Onboarding-Status" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: invalid status transition - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - required: - - onboarding_status - properties: - onboarding_status: - type: string - description: Onboarding status value - enum: - - 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 - required: true - x-speakeasy-name-override: updateOnboardingStatus - "/v1/employees/{employee_uuid}/federal_taxes": - get: - summary: Get federal taxes for an employee - operationId: get-v1-employees-employee_id-federal_taxes - security: - - CompanyAccessAuth: [] - description: |- - Returns federal tax information for an employee. The response structure varies based on the w4_data_type (pre_2020_w4 or rev_2020_w4). - - scope: `employee_federal_taxes:read` - tags: - - Employee Tax Setup - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_uuid - in: path - description: The UUID of the employee - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Federal-Tax" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: employeeTaxSetup - x-speakeasy-name-override: getFederalTaxes - put: - summary: Update federal taxes for an employee - operationId: put-v1-employees-employee_id-federal_taxes - security: - - CompanyAccessAuth: [] - description: |- - Updates federal tax (W4) information for an employee. Only rev_2020_w4 format is accepted for updates. - - scope: `employee_federal_taxes:write` - tags: - - Employee Tax Setup - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_uuid - in: path - description: The UUID of the employee - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Federal-Tax" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - '409': - description: Conflict - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - required: - - version - - w4_data_type - - filing_status - properties: - version: - type: string - description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/versioning#object-layer) for information on how to use this field. - example: 56a489ce86ed6c1b0f0cecc4050a0b01 - w4_data_type: - type: string - enum: - - rev_2020_w4 - description: The version of the W4 form. Only rev_2020_w4 is accepted for updates. - filing_status: - type: string - enum: - - Single - - Married - - Head of Household - - Exempt from withholding - description: 'Determines which tax return form an individual will use. One of: Single, Married, Head of Household, Exempt from withholding.' - example: Single - two_jobs: - type: boolean - description: If there are only two jobs (e.g., you and your spouse each have a job), set to true. - dependents_amount: - type: number - description: Amount for dependents; a dependent entitles the taxpayer to claim a dependency exemption. - other_income: - type: number - description: Other income amount. - deductions: - type: number - description: Deductions other than the standard deduction to reduce withholding. - extra_withholding: - type: number - description: Additional amount to be withheld from each paycheck. - federal_withholding_allowance: - type: integer - description: Only applicable when w4_data_type is 'pre_2020_w4' (pre-2020 W4 forms are deprecated for updates). - additional_withholding: - type: number - description: Only applicable when w4_data_type is 'pre_2020_w4' (pre-2020 W4 forms are deprecated for updates). - required: true - x-speakeasy-group: employeeTaxSetup - x-speakeasy-name-override: updateFederalTaxes - "/v1/employees/{employee_uuid}/state_taxes": - get: - summary: Get an employee's state taxes - operationId: get-v1-employees-employee_id-state_taxes - security: - - CompanyAccessAuth: [] - description: |- - Get attributes relevant for an employee's state taxes. - - The data required to correctly calculate an employee's state taxes varies by both home and work location. This API returns information about each question that must be answered grouped by state. Mostly commonly, an employee lives and works in the same state and will only have questions for a single state. The response contains metadata about each question, the type of answer expected, and the current answer stored in Gusto for that question. - - Answers are represented by an array. Today, this array can only be empty or contain exactly one element, but is designed to allow for forward compatibility with effective-dated fields. The `valid_from` and `valid_up_to` fields are optional and currently ignored. - - ## About filing new hire reports - Payroll Admins are responsible for filing a new hire report for each Employee. The `file_new_hire_report` question will only be listed if: - - the `employee.onboarding_status` is one of the following: - - `admin_onboarding_incomplete` - - `self_onboarding_awaiting_admin_review` - - that employee's work state requires filing a new hire report - - scope: `employee_state_taxes:read` - tags: - - Employee Tax Setup - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_uuid - in: path - description: The UUID of the employee - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-State-Taxes-List" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: employeeTaxSetup - x-speakeasy-name-override: getStateTaxes - put: - summary: Update an employee's state taxes - operationId: put-v1-employees-employee_id-state_taxes - security: - - CompanyAccessAuth: [] - description: |- - Update attributes relevant for an employee's state taxes. - - As described for the GET endpoint, the answers must be supplied in the effective-dated format, but currently only a single answer will be accepted. The `valid_from` and `valid_up_to` fields are optional and currently ignored. - - scope: `employee_state_taxes:write` - tags: - - Employee Tax Setup - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_uuid - in: path - description: The UUID of the employee - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-State-Taxes-List" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-State-Taxes-Request" - required: true - x-speakeasy-group: employeeTaxSetup - x-speakeasy-name-override: updateStateTaxes - "/v1/employees/{employee_id}/bank_accounts": - get: - summary: List employee bank accounts - operationId: get-v1-employees-employee_id-bank_accounts - security: - - CompanyAccessAuth: [] - description: |- - Returns all employee bank accounts. - - scope: `employee_payment_methods:read` - tags: - - Employee Payment Method - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - - name: page - in: query - required: false - description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - schema: - type: integer - - name: per - in: query - required: false - description: Number of objects per page. For majority of endpoints will default to 25 - schema: - type: integer - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Employee-Bank-Account" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: employeePaymentMethods - x-speakeasy-name-override: getBankAccounts - post: - summary: Create an employee bank account - operationId: post-v1-employees-employee_id-bank_accounts - security: - - CompanyAccessAuth: [] - description: |- - Creates an employee bank account. An employee can have multiple bank accounts. Note that creating an employee bank account will also update the employee's payment method. - - scope: `employee_payment_methods:write` - tags: - - Employee Payment Method - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '201': - description: Created - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Bank-Account" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Bank-Account-Request" - required: true - x-speakeasy-group: employeePaymentMethod - x-speakeasy-name-override: create - "/v1/employees/{employee_id}/bank_accounts/{bank_account_uuid}": - put: - summary: Update an employee bank account - operationId: put-v1-employees-employee_id-bank_accounts - security: - - CompanyAccessAuth: [] - description: |- - Updates an employee bank account. - - scope: `employee_payment_methods:write` - tags: - - Employee Payment Method - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - - name: bank_account_uuid - in: path - description: The UUID of the bank account - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Bank-Account" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Bank-Account-Request" - required: true - x-speakeasy-group: employeePaymentMethod - x-speakeasy-name-override: updateBankAccount - delete: - summary: Delete an employee bank account - operationId: delete-v1-employees-employee_id-bank_accounts-bank_account_id - security: - - CompanyAccessAuth: [] - description: |- - Deletes an employee bank account. To update an employee's bank account details, delete the bank account first and create a new one. - - scope: `employee_payment_methods:write` - tags: - - Employee Payment Method - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - - name: bank_account_uuid - in: path - description: The UUID of the bank account - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '204': - description: No Content - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - x-speakeasy-group: employeePaymentMethod - x-speakeasy-name-override: deleteBankAccount - "/v1/employees/{employee_id}/payment_method": - get: - summary: Get payment method for an employee - operationId: get-v1-employees-employee_id-payment_method - security: - - CompanyAccessAuth: [] - description: |- - Returns the payment method for an employee (e.g. Check or Direct Deposit with split configuration). - - scope: `employee_payment_methods:read` - tags: - - Employee Payment Method - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Payment-Method" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: employeePaymentMethod - x-speakeasy-name-override: get - put: - summary: Update payment method for an employee - operationId: put-v1-employees-employee_id-payment_method - security: - - CompanyAccessAuth: [] - description: |- - Updates the payment method for an employee. Can set to Check or Direct Deposit with split configuration. - - scope: `employee_payment_methods:write` - tags: - - Employee Payment Method - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Payment-Method" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '409': - description: Conflict - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - required: - - version - - type - properties: - version: - type: string - description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/versioning#object-layer) for information on how to use this field. - example: 63859768485e218ccf8a449bb60f14ed - type: - type: string - enum: - - Check - - Direct Deposit - description: The payment method type. If type is Check, split_by and splits do not need to be populated. If type is Direct Deposit, split_by and splits are required. - split_by: - anyOf: - - type: string - enum: - - Percentage - - Amount - - type: 'null' - description: How the payment will be split. If Percentage, split amounts must add up to exactly 100. If Amount, values are in cents and the last split amount must be null to capture the remainder. - splits: - type: - - array - - 'null' - description: Array of payment splits. Required when type is Direct Deposit. - items: - type: object - properties: - uuid: - type: string - description: The bank account UUID. - name: - type: string - description: The bank account name. - priority: - type: integer - description: Order of priority for each payment split; priority 1 is the first account paid. Must be unique and sequential. - split_amount: - type: - - number - - 'null' - description: If split_by is Amount, value is in cents (e.g., 500 for $5.00) and exactly one account must have null to capture the remainder. If split_by is Percentage, value is the percentage (e.g., 60 for 60%). - required: true - x-speakeasy-group: employeePaymentMethod - x-speakeasy-name-override: update - "/v1/employees/{employee_id}/jobs": - get: - summary: Get jobs for an employee - operationId: get-v1-employees-employee_id-jobs - security: - - CompanyAccessAuth: [] - description: |- - Get all of the jobs that an employee holds. - Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope is included. This allows you to access employee and job metadata without exposing pay rates. - - Compensation data in the response requires the `compensations:read` scope. - - scope: `jobs:read` - tags: - - Jobs and Compensations - x-gusto-integration-type: - - embedded - parameters: - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - - name: page - in: query - required: false - description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - schema: - type: integer - - name: per - in: query - required: false - description: Number of objects per page. For majority of endpoints will default to 25 - schema: - type: integer - - name: include - in: query - required: false - schema: - type: string - enum: - - all_compensations - description: | - Available options: - - all_compensations: Include all effective dated compensations for each job instead of only the current compensation - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Job" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: getJobs - x-speakeasy-group: jobsAndCompensations - post: - summary: Create a job - operationId: post-v1-employees-employee_id-jobs - security: - - CompanyAccessAuth: [] - description: |- - Create a job. - - scope: `jobs:write` - tags: - - Jobs and Compensations - x-gusto-integration-type: - - embedded - parameters: - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '201': - description: created - content: - application/json: - schema: - "$ref": "#/components/schemas/Job" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Jobs-Create-Request-Body" - required: true - x-speakeasy-group: jobsAndCompensations - x-speakeasy-name-override: createJob - "/v1/employees/{employee_uuid}/time_off_activities": - get: - summary: Get employee time off activities - operationId: get-version-employees-time_off_activities - security: - - CompanyAccessAuth: [] - description: |- - Get employee time off activities. - - scope: `employee_time_off_activities:read` - tags: - - Employees - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_uuid - in: path - description: The UUID of the employee - required: true - schema: - type: string - - name: time_off_type - in: query - required: true - description: 'The time off type name you want to query data for. ex: ''sick'' or ''vacation''' - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Time-Off-Activity-List" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - x-speakeasy-name-override: getTimeOffActivities - "/v1/jobs/{job_id}": - get: - summary: Get a job - operationId: get-v1-jobs-job_id - security: - - CompanyAccessAuth: [] - description: |- - Get a job. - - Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope is included. This allows you to access employee and job metadata without exposing pay rates. - - Compensation data in the response requires the `compensations:read` scope. - - scope: `jobs:read` - tags: - - Jobs and Compensations - x-gusto-integration-type: - - embedded - parameters: - - name: job_id - in: path - description: The UUID of the job - required: true - schema: - type: string - - name: include - in: query - required: false - schema: - type: string - enum: - - all_compensations - description: | - Available options: - - all_compensations: Include all effective dated compensations for each job instead of only the current compensation - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Job" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: jobsAndCompensations - x-speakeasy-name-override: getJob - put: - summary: Update a job - operationId: put-v1-jobs-job_id - security: - - CompanyAccessAuth: [] - description: |- - Update a job. - - scope: `jobs:write` - tags: - - Jobs and Compensations - x-gusto-integration-type: - - embedded - parameters: - - name: job_id - in: path - description: The UUID of the job - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Job" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Jobs-Update-Request-Body" - required: true - x-speakeasy-name-override: update - x-speakeasy-group: jobsAndCompensations - delete: - summary: Delete an individual job - operationId: delete-v1-jobs-job_id - security: - - CompanyAccessAuth: [] - description: |- - Deletes a specific job that an employee holds. - - scope: `jobs:write` - tags: - - Jobs and Compensations - x-gusto-integration-type: - - embedded - parameters: - - name: job_id - in: path - description: The UUID of the job - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '204': - description: successful - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - x-speakeasy-group: jobsAndCompensations - x-speakeasy-name-override: delete - "/v1/jobs/{job_id}/compensations": - get: - summary: Get compensations for a job - operationId: get-v1-jobs-job_id-compensations - security: - - CompanyAccessAuth: [] - description: |- - Compensations contain information on how much is paid out for a job. Jobs may have many compensations, but only one that is active. The current compensation is the one with the most recent `effective_date`. - - *Note: Currently the API does not support creating multiple compensations per job - creating a compensation with the same job_uuid as another will fail with a relevant error.* - - Use `flsa_status` to determine if an employee is eligible for overtime - By default the API returns only the current compensation - use the `include` parameter to return all compensations. - - scope: `compensations:read` - tags: - - Jobs and Compensations - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: job_id - in: path - description: The UUID of the job - required: true - schema: - type: string - - name: page - in: query - required: false - description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - schema: - type: integer - - name: per - in: query - required: false - description: Number of objects per page. For majority of endpoints will default to 25 - schema: - type: integer - - name: include - in: query - required: false - schema: - type: string - enum: - - all_compensations - description: | - Available options: - - all_compensations: Include all effective dated compensations for each job instead of only the current compensation - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Compensation" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: getCompensations - x-speakeasy-group: jobsAndCompensations - post: - summary: Create a compensation - operationId: post-v1-compensations-compensation_id - security: - - CompanyAccessAuth: [] - description: |- - Compensations contain information on how much is paid out for a job. Jobs may have many compensations, but only one that is active. The current compensation is the one with the most recent `effective_date`. - - ### Prerequisites - Before calling this endpoint: - 1. A [job](ref:post-v1-jobs-job_id) must exist for the employee - - ### Webhooks - - `employee_job_compensation.created`: Fires when a compensation is successfully created - - scope: `compensations:write` - tags: - - Jobs and Compensations - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: job_id - in: path - description: The UUID of the job - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '201': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Compensation" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Compensations-Request-Body" - required: true - x-speakeasy-group: jobsAndCompensations - x-speakeasy-name-override: createCompensation - "/v1/compensations/{compensation_id}": - get: - summary: Get a compensation - operationId: get-v1-compensations-compensation_id - security: - - CompanyAccessAuth: [] - description: |- - Compensations contain information on how much is paid out for a job. Jobs may have many compensations, but only one that is active. The current compensation is the one with the most recent `effective_date`. - - scope: `compensations:read` - tags: - - Jobs and Compensations - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: compensation_id - in: path - description: The UUID of the compensation - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Compensation" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: jobsAndCompensations - x-speakeasy-name-override: getCompensation - put: - summary: Update a compensation - operationId: put-v1-compensations-compensation_id - security: - - CompanyAccessAuth: [] - description: |- - Compensations contain information on how much is paid out for a job. Jobs may have many compensations, but only one that is active. The current compensation is the one with the most recent `effective_date`. - - ### Webhooks - - `employee_job_compensation.updated`: Fires when a compensation is successfully updated - - scope: `compensations:write` - tags: - - Jobs and Compensations - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: compensation_id - in: path - description: The UUID of the compensation - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Compensation" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Compensations-Update-Request-Body" - required: true - x-speakeasy-group: jobsAndCompensations - x-speakeasy-name-override: updateCompensation - delete: - summary: Delete a compensation - operationId: delete-v1-compensations-compensation_id - security: - - CompanyAccessAuth: [] - description: |- - Compensations contain information on how much is paid out for a job. Jobs may have many compensations, but only one that is active. The current compensation is the one with the most recent `effective_date`. This endpoint deletes a compensation for a job that hasn't been processed on payroll. - - ### Webhooks - - `employee_job_compensation.destroyed`: Fires when a compensation is successfully deleted - - scope: `compensations:write` - tags: - - Jobs and Compensations - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: compensation_id - in: path - description: The UUID of the compensation - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '204': - description: No Content - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - x-speakeasy-group: jobsAndCompensations - x-speakeasy-name-override: deleteCompensation - "/v1/companies/{company_id}/earning_types": - get: - summary: Get all earning types for a company - operationId: get-v1-companies-company_id-earning_types - security: - - CompanyAccessAuth: [] - description: |- - A payroll item in Gusto is associated to an earning type to name the type of earning described by the payroll item. - - #### Default Earning Type - Certain earning types are special because they have tax considerations. Those earning types are mostly the same for every company depending on its legal structure (LLC, Corporation, etc.) - - #### Custom Earning Type - Custom earning types are all the other earning types added specifically for a company. - - scope: `payrolls:read` - tags: - - Earning Types - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Earning-Type-List" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: earningTypes - x-speakeasy-name-override: list - post: - summary: Create a custom earning type - operationId: post-v1-companies-company_id-earning_types - security: - - CompanyAccessAuth: [] - description: |- - Create a custom earning type. - - If an inactive earning type exists with the same name, this will reactivate it instead of creating a new one. - - scope: `payrolls:write` - tags: - - Earning Types - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '201': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Earning-Type" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - required: - - name - properties: - name: - type: string - default: Gym Membership - description: The name of the custom earning type. - required: true - x-speakeasy-group: earningTypes - x-speakeasy-name-override: create - "/v1/companies/{company_id}/earning_types/{earning_type_uuid}": - put: - summary: Update an earning type - operationId: put-v1-companies-company_id-earning_types-earning_type_uuid - security: - - CompanyAccessAuth: [] - description: |- - Update an earning type. - - scope: `payrolls:write` - tags: - - Earning Types - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: earning_type_uuid - in: path - description: The UUID of the earning type - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Earning-Type" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - properties: - name: - type: string - description: The name of the custom earning type. - required: true - x-speakeasy-group: earningTypes - x-speakeasy-name-override: update - delete: - summary: Deactivate an earning type - operationId: delete-v1-companies-company_id-earning_types-earning_type_uuid - security: - - CompanyAccessAuth: [] - description: |- - Deactivate an earning type. - - scope: `payrolls:write` - tags: - - Earning Types - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: earning_type_uuid - in: path - description: The UUID of the earning type - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '204': - description: No Content - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: earningTypes - x-speakeasy-name-override: delete - "/v1/companies/{company_uuid}/contractors": - get: - summary: Get contractors of a company - operationId: get-v1-companies-company_uuid-contractors - security: - - CompanyAccessAuth: [] - description: |- - Get all contractors, active and inactive, individual and business, for a company. - - scope: `contractors:read` - tags: - - Contractors - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - required: true - description: The UUID of the company - schema: - type: string - - name: search_term - in: query - required: false - description: A string to search for in the object's names - schema: - type: string - - name: sort_by - in: query - required: false - schema: - type: string - pattern: "^(created_at|type|onboarding_status|name)(:(asc|desc))?(,(created_at|type|onboarding_status|name)(:(asc|desc))?)*$" - example: created_at:asc - description: 'Sort by one or more fields. Options: created_at, type, onboarding_status, name. Append `:asc` or `:desc` to specify direction (e.g., `created_at:asc`). Defaults to ascending.' - - name: onboarded - in: query - required: false - description: Filters contractors by those who have completed onboarding - schema: - type: boolean - - name: onboarded_active - in: query - required: false - description: Filters contractors who are ready to work (onboarded AND active today) - schema: - type: boolean - - name: terminated - in: query - required: false - description: Filters contractors by those who have been or are scheduled to be dismissed - schema: - type: boolean - - name: terminated_today - in: query - required: false - description: Filters contractors by those who have been dismissed and whose dismissal is in effect today (excludes active and scheduled to be dismissed) - schema: - type: boolean - - name: include - in: query - explode: false - required: false - schema: - type: array - items: - type: string - enum: - - company_name - - portal_invitations - x-enumDescriptions: - company_name: Include the name of the company that the contractor is associated with - portal_invitations: Include portal invitation status information, including member portal invitation details and partner portal invitation status - description: Include the requested attribute(s) in each contractor response. Multiple options are comma separated. - - name: page - in: query - required: false - description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - schema: - type: integer - - name: per - in: query - required: false - description: Number of objects per page. For majority of endpoints will default to 25 - schema: - type: integer - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Contractor" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: list - post: - summary: Create a contractor - operationId: post-v1-companies-company_uuid-contractors - security: - - CompanyAccessAuth: [] - description: |- - Create an individual or business contractor. - - scope: `contractors:manage` - tags: - - Contractors - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - required: true - description: The UUID of the company - schema: - type: string - x-gusto-rswag: true - responses: - '201': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor-Create-Request-Body" - required: true - x-speakeasy-name-override: create - "/v1/contractors/{contractor_uuid}": - get: - summary: Get a contractor - operationId: get-v1-contractors-contractor_uuid - security: - - CompanyAccessAuth: [] - description: |- - Get a contractor. - - scope: `contractors:read` - tags: - - Contractors - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: contractor_uuid - in: path - description: The UUID of the contractor - required: true - schema: - type: string - - name: include - in: query - explode: false - required: false - schema: - type: array - items: - type: string - enum: - - company_name - - portal_invitations - x-enumDescriptions: - company_name: Include the name of the company that the contractor is associated with - portal_invitations: Include portal invitation status information, including member portal invitation details and partner portal invitation status - description: Include the requested attribute(s) in each contractor response. Multiple options are comma separated. - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: get - put: - summary: Update a contractor - operationId: put-v1-contractors-contractor_uuid - security: - - CompanyAccessAuth: [] - description: "Update a contractor.\n\n> \U0001F6A7 Warning\n>\n> Watch out when changing a contractor's type (when the contractor is finished onboarding). Specifically, changing contractor type can be dangerous since Gusto won't recognize and file two separate 1099s if they simply change from business to individual\n\nscope: `contractors:write`" - tags: - - Contractors - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: contractor_uuid - in: path - description: The UUID of the contractor - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '409': - description: Conflict - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor-Update-Request-Body" - required: true - x-speakeasy-name-override: update - delete: - summary: Delete a contractor - operationId: delete-v1-contractors-contractor_uuid - security: - - CompanyAccessAuth: [] - description: |- - A contractor can only be deleted when there are no contractor payments. - - scope: `contractors:manage` - tags: - - Contractors - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: contractor_uuid - in: path - description: The UUID of the contractor - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '204': - description: No Content - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - x-speakeasy-name-override: delete - "/v1/contractors/{contractor_uuid}/bank_accounts": - get: - summary: Get all contractor bank accounts - operationId: get-v1-contractors-contractor_uuid-bank_accounts - security: - - CompanyAccessAuth: [] - description: |- - Returns all contractor bank accounts. - - scope: `contractor_payment_methods:read` - tags: - - Contractor Payment Method - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: contractor_uuid - in: path - description: The UUID of the contractor - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor-Bank-Account-List" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: getBankAccounts - x-speakeasy-group: contractorPaymentMethod - post: - summary: Create a contractor bank account - operationId: post-v1-contractors-contractor_uuid-bank_accounts - security: - - CompanyAccessAuth: [] - description: |- - Creates a contractor bank account. - - Note: We currently only support one bank account per contractor. Using this endpoint on a contractor who already has a bank account will just replace it. - - scope: `contractor_payment_methods:write` - tags: - - Contractor Payment Method - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: contractor_uuid - in: path - description: The UUID of the contractor - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '201': - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor-Bank-Account" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor-Bank-Account-Create-Request-Body" - required: true - x-speakeasy-group: contractorPaymentMethods - x-speakeasy-name-override: createBankAccount - "/v1/webhook_subscriptions": - get: - summary: List webhook subscriptions - operationId: get-v1-webhook-subscriptions - security: - - SystemAccessAuth: [] - description: "Returns all webhook subscriptions associated with the provided Partner API token.\n\n\U0001F4D8 System Access Authentication\n\nThis endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access)\n\nscope: `webhook_subscriptions:read`" - tags: - - Webhooks - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Webhook-Subscription" - x-speakeasy-name-override: listSubscriptions - post: - summary: Create a webhook subscription - operationId: post-v1-webhook-subscription - security: - - SystemAccessAuth: [] - description: "Create a webhook subscription to receive events of the specified subscription_types whenever there is a state change.\n\n\U0001F4D8 System Access Authentication\n\nThis endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access)\n\nscope: `webhook_subscriptions:write`" - tags: - - Webhooks - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '201': - description: created - content: - application/json: - schema: - "$ref": "#/components/schemas/Webhook-Subscription" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - required: - - url - - subscription_types - properties: - url: - type: string - description: The URL where webhook events will be POSTed. - subscription_types: - type: array - description: The types of events to subscribe to. - items: - type: string - enum: - - BankAccount - - Company - - CompanyBenefit - - Contractor - - ContractorPayment - - Employee - - EmployeeBenefit - - EmployeeJobCompensation - - ExternalPayroll - - Form - - Location - - Notification - - Payroll - - PayrollSync - - PaySchedule - - PeopleBatch - - Signatory - required: true - x-speakeasy-name-override: createSubscription - "/v1/webhook_subscriptions/{webhook_subscription_uuid}": - get: - summary: Get a webhook subscription - operationId: get-v1-webhook-subscription-uuid - security: - - SystemAccessAuth: [] - description: "Returns the Webhook Subscription associated with the provided UUID.\n\n\U0001F4D8 System Access Authentication\n\nThis endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access)\n\nscope: `webhook_subscriptions:read`" - tags: - - Webhooks - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: webhook_subscription_uuid - in: path - description: The webhook subscription UUID. - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Webhook-Subscription" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: getSubscription - put: - summary: Update a webhook subscription - operationId: put-v1-webhook-subscription-uuid - security: - - SystemAccessAuth: [] - description: "Updates the Webhook Subscription associated with the provided UUID.\n\n\U0001F4D8 System Access Authentication\n\nThis endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access)\n\nscope: `webhook_subscriptions:write`" - tags: - - Webhooks - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: webhook_subscription_uuid - in: path - description: The webhook subscription UUID. - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Webhook-Subscription" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - required: - - subscription_types - properties: - subscription_types: - type: array - description: The types of events to subscribe to. - items: - type: string - enum: - - BankAccount - - Company - - CompanyBenefit - - Contractor - - ContractorPayment - - Employee - - EmployeeBenefit - - EmployeeJobCompensation - - ExternalPayroll - - Form - - Location - - Notification - - Payroll - - PayrollSync - - PaySchedule - - PeopleBatch - - Signatory - required: true - x-speakeasy-name-override: updateSubscription - delete: - summary: Delete a webhook subscription - operationId: delete-v1-webhook-subscription-uuid - security: - - SystemAccessAuth: [] - description: "Deletes the Webhook Subscription associated with the provided UUID.\n\n\U0001F4D8 System Access Authentication\n\nThis endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access)\n\nscope: `webhook_subscriptions:write`" - tags: - - Webhooks - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: webhook_subscription_uuid - in: path - description: The webhook subscription UUID. - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '204': - description: No Content - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: deleteSubscription - "/v1/webhook_subscriptions/{webhook_subscription_uuid}/verify": - put: - summary: Verify a webhook subscription - operationId: put-v1-verify-webhook-subscription-uuid - security: - - SystemAccessAuth: [] - description: "When a webhook subscription is created, a `verification_token` is POSTed to the registered webhook subscription URL. This `verify` endpoint needs to be called with `verification_token` before webhook events can be sent to the registered webhook URL.\n\nUse the /v1/webhook_subscriptions/{webhook_subscription_uuid}/request_verification_token API to resend the `verification_token` to the Subscriber.\n\n\U0001F4D8 System Access Authentication\n\nThis endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access)\n\nscope: `webhook_subscriptions:write`" - tags: - - Webhooks - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: webhook_subscription_uuid - in: path - description: The webhook subscription UUID. - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Webhook-Subscription" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - required: - - verification_token - properties: - verification_token: - type: string - description: The verification token received at the webhook subscription URL. - required: true - x-speakeasy-name-override: verify - "/v1/webhook_subscriptions/{webhook_subscription_uuid}/request_verification_token": - get: - summary: Request a verification token for a webhook subscription - operationId: get-v1-webhook-subscription-verification-token-uuid - security: - - SystemAccessAuth: [] - description: "Request that the webhook subscription `verification_token` be POSTed to the Subscription URL.\n\n\U0001F4D8 System Access Authentication\n\nThis endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access)\n\nscope: `webhook_subscriptions:read`" - tags: - - Webhooks - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: webhook_subscription_uuid - in: path - description: The webhook subscription UUID. - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: No Content. The `verification_token` is POSTed to the Subscription URL. - content: - application/json: - schema: - "$ref": "#/components/schemas/Webhook-Verification-Token-Response" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: requestVerificationToken - "/v1/contractors/{contractor_uuid}/forms": - get: - summary: Get all contractor forms - operationId: get-v1-contractor-forms - security: - - CompanyAccessAuth: [] - description: |- - Get a list of all contractor's forms - - scope: `contractor_forms:read` - tags: - - Contractor Forms - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: contractor_uuid - in: path - description: The UUID of the contractor - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Example response - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Form_1099" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: contractorForms - x-speakeasy-name-override: list - "/v1/contractors/{contractor_uuid}/forms/{form_id}": - get: - summary: Get a contractor form - operationId: get-v1-contractor-form - security: - - CompanyAccessAuth: [] - description: |- - Get a contractor form - - scope: `contractor_forms:read` - tags: - - Contractor Forms - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: contractor_uuid - in: path - description: The UUID of the contractor - required: true - schema: - type: string - - name: form_id - in: path - description: The UUID of the form - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Form_1099" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: contractorForms - x-speakeasy-name-override: get - "/v1/contractors/{contractor_uuid}/forms/{form_id}/pdf": - get: - summary: Get the contractor form pdf - operationId: get-v1-contractor-form-pdf - security: - - CompanyAccessAuth: [] - description: |- - Get the link to the form PDF - - scope: `contractor_forms:read` - tags: - - Contractor Forms - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: contractor_uuid - in: path - description: The UUID of the contractor - required: true - schema: - type: string - - name: form_id - in: path - description: The UUID of the form - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Form-Pdf" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: contractorForms - x-speakeasy-name-override: getPdf - "/v1/contractors/{contractor_uuid}/documents": - get: - summary: Get all contractor documents - operationId: get-v1-contractor-documents - security: - - CompanyAccessAuth: [] - description: |- - Get a list of all contractor's documents - - scope: `contractor_documents:read` - tags: - - Contractor Documents - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: contractor_uuid - in: path - description: The UUID of the contractor - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Example response - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Document" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: contractorDocuments - x-speakeasy-name-override: getAll - "/v1/documents/{document_uuid}": - get: - summary: Get a contractor document - operationId: get-v1-contractor-document - security: - - CompanyAccessAuth: [] - description: |- - Get a contractor document. - - scope: `contractor_documents:read` - tags: - - Contractor Documents - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: document_uuid - in: path - description: The UUID of the document - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Document" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: get - x-speakeasy-group: contractorDocuments - "/v1/documents/{document_uuid}/pdf": - get: - summary: Get the contractor document pdf - operationId: get-v1-contractor-document-pdf - security: - - CompanyAccessAuth: [] - description: |- - Get the contractor document pdf. - - scope: `contractor_documents:read` - tags: - - Contractor Documents - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: document_uuid - in: path - description: The UUID of the document - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Document-Pdf" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: contractorDocuments - x-speakeasy-name-override: getPdf - "/v1/documents/{document_uuid}/sign": - put: - summary: Sign a contractor document - operationId: put-v1-contractor-document-sign - security: - - CompanyAccessAuth: [] - description: |- - Sign a contractor document. - - scope: `contractor_documents:write` - tags: - - Contractor Documents - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: document_uuid - in: path - description: The UUID of the document - required: true - schema: - type: string - - name: x-gusto-client-ip - in: header - required: false - description: Optional header to supply the IP address. This can be used to supply the IP address for signature endpoints instead of the signed_by_ip_address parameter. - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Document-Signed" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - properties: - fields: - type: array - description: List of fields and the values they will be set to. - items: - type: object - properties: - key: - type: string - description: Unique identifier of the field - value: - type: string - description: Value for the field - agree: - type: boolean - description: Whether you agree to sign electronically - signed_by_ip_address: - type: string - description: The IP address of the signatory who signed the form. You must provide the IP address with either this parameter OR you can leave out this parameter and set the IP address in the request header using the `x-gusto-client-ip` header instead. - required: - - fields - - agree - required: true - x-speakeasy-group: contractorDocuments - x-speakeasy-name-override: sign - "/v1/sandbox/generate_1099": - post: - summary: Generate a 1099 form [DEMO] - operationId: post-v1-sandbox-generate_1099 - security: - - CompanyAccessAuth: [] - description: "> \U0001F6A7 Demo action\n>\n> This action is only available in the Demo environment\n\nGenerates a 1099 document for testing purposes.\n\nscope: `contractors:write`" - tags: - - Contractor Forms - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '201': - description: Created - content: - application/json: - schema: - "$ref": "#/components/schemas/Form_1099" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - properties: - contractor_id: - type: string - description: The contractor UUID. - year: - type: integer - description: 'Must be equal to or more recent than 2015. If not specified, defaults to the previous year. - -' - required: - - contractor_id - required: true - x-speakeasy-group: contractorForms - x-speakeasy-name-override: generate1099 - "/v1/sandbox/generate_w2": - post: - summary: Generate a W2 form [DEMO] - operationId: post-v1-sandbox-generate_w2 - security: - - CompanyAccessAuth: [] - description: "> \U0001F6A7 Demo action\n>\n> This action is only available in the Demo environment\n\nGenerates a W2 document for testing purposes.\n\nscope: `employees:write`" - tags: - - Employee Forms - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '201': - description: Created - content: - application/json: - schema: - "$ref": "#/components/schemas/Form" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - properties: - employee_id: - type: string - description: The employee UUID. - year: - type: integer - description: 'Must be equal to or more recent than 2015. If not specified, defaults to the previous year. - -' - required: - - employee_id - required: true - x-speakeasy-group: employeeForms - x-speakeasy-name-override: generateW2 - "/v1/contractors/{contractor_uuid}/payment_method": - get: - summary: Get a contractor's payment method - operationId: get-v1-contractors-contractor_uuid-payment_method - security: - - CompanyAccessAuth: [] - description: |- - Fetches a contractor's payment method. A contractor payment method - describes how the payment should be split across the contractor's associated - bank accounts. - - scope: `contractor_payment_methods:read` - tags: - - Contractor Payment Method - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: contractor_uuid - in: path - description: The UUID of the contractor - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor-Payment-Method" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: contractorPaymentMethod - x-speakeasy-name-override: get - put: - summary: Update a contractor's payment method - operationId: put-v1-contractors-contractor_id-payment_method - security: - - CompanyAccessAuth: [] - description: |- - Updates a contractor's payment method. Note that creating a contractor - bank account will also update the contractor's payment method. - - scope: `contractor_payment_methods:write` - tags: - - Contractor Payment Method - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: contractor_uuid - in: path - description: The UUID of the contractor - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor-Payment-Method" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '409': - description: Conflict - content: - application/json: - schema: - "$ref": "#/components/schemas/Conflict-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - required: - - version - - type - properties: - version: - type: string - description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. - example: 63859768485e218ccf8a449bb60f14ed - type: - type: string - enum: - - Direct Deposit - - Check - description: The payment method type. If type is Direct Deposit, the contractor is required to have a bank account. See [Bank account endpoint](./post-v1-contractors-contractor_uuid-bank_accounts). - required: true - x-speakeasy-group: contractorPaymentMethod - x-speakeasy-name-override: update - "/v1/contractors/{contractor_uuid}/onboarding_status": - get: - summary: Get the contractor's onboarding status - operationId: get-v1-contractors-contractor_uuid-onboarding_status - security: - - CompanyAccessAuth: [] - description: |- - Retrieves a contractor's onboarding status. The data returned helps inform the required onboarding steps and respective completion status. - - ## onboarding_status - - ### Admin-facilitated onboarding - | onboarding_status | Description | - |:------------------|------------:| - | `admin_onboarding_incomplete` | Admin needs to enter basic information about the contractor. | - | `admin_onboarding_review` | All information has been completed and admin needs to confirm onboarding. | - | `onboarding_completed` | Contractor has been fully onboarded and verified. | - - ### Contractor self-onboarding - - | onboarding_status | Description | - | --- | ----------- | - | `admin_onboarding_incomplete` | Admin needs to enter basic information about the contractor. | - | `self_onboarding_not_invited` | Admin has the intention to invite the contractor to self-onboard (e.g., marking a checkbox), but the system has not yet sent the invitation. | - | `self_onboarding_invited` | Contractor has been sent an invitation to self-onboard. | - | `self_onboarding_started` | Contractor has started the self-onboarding process. | - | `self_onboarding_review` | Admin needs to review contractors's entered information and confirm onboarding. | - | `onboarding_completed` | Contractor has been fully onboarded and verified. | - - ## onboarding_steps - - | onboarding_steps | Requirement(s) to be completed | - |:-----------------|-------------------------------:| - | `basic_details` | Add individual contractor's first name, last name, social security number or Business name and EIN depending on the contractor type | - | `add_address` | Add contractor address. | - | `compensation_details` | Add contractor compensation. | - | `payment_details` | (optional) Set up contractor's direct deposit or set to check. | - | `sign_documents` | Contractor forms (e.g., W9) are generated & signed. | - | `file_new_hire_report` | Contractor new hire report is generated. | - - scope: `contractors:read` - tags: - - Contractors - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: contractor_uuid - in: path - description: The UUID of the contractor - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor-Onboarding-Status" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: getOnboardingStatus - put: - summary: Change the contractor's onboarding status - operationId: put-v1-contractors-contractor_uuid-onboarding_status - security: - - CompanyAccessAuth: [] - description: |- - Updates a contractor's onboarding status. - - Below is a list of valid onboarding status changes depending on the intended action to be performed on behalf of the contractor. - - | Action | current onboarding_status | new onboarding_status | - |:------------------|:------------:|----------:| - | Mark a contractor as self-onboarding | `admin_onboarding_incomplete` | `self_onboarding_not_invited` | - | Invite a contractor to self-onboard | `admin_onboarding_incomplete` or `self_onboarding_not_invited` | `self_onboarding_invited` | - | Cancel a contractor's self-onboarding | `self_onboarding_invited` or `self_onboarding_not_invited` | `admin_onboarding_incomplete` | - | Review a contractor's self-onboarded info | `self_onboarding_started` | `self_onboarding_review` | - | Finish a contractor's onboarding | `admin_onboarding_review` or `self_onboarding_review` | `onboarding_completed` | - - scope: `contractors:write` - tags: - - Contractors - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: contractor_uuid - in: path - description: The UUID of the contractor - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor-Onboarding-Status" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor-Onboarding-Status-Update-Request-Body" - required: true - x-speakeasy-name-override: updateOnboardingStatus - "/v1/contractors/{contractor_uuid}/address": - get: - summary: Get a contractor address - operationId: get-v1-contractors-contractor_uuid-address - security: - - CompanyAccessAuth: [] - tags: - - Contractors - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: contractor_uuid - in: path - description: The UUID of the contractor - required: true - schema: - type: string - description: |- - The address of a contractor is used to determine certain tax information about them. Addresses are geocoded on create and update to ensure validity. - - scope: `contractors:read` - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor-Address" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: getAddress - put: - summary: Create or update a contractor's address - operationId: put-v1-contractors-contractor_uuid-address - security: - - CompanyAccessAuth: [] - tags: - - Contractors - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: contractor_uuid - in: path - description: The UUID of the contractor - required: true - schema: - type: string - description: "The address of a contractor is used to determine certain tax information about them. Addresses are geocoded on create and update to ensure validity.\n\n> \U0001F6A7 Contractors can only have one address.\n>\n> When a contractor is created, an address is created for them by default. Updating the address will replace the existing address.\n\nscope: `contractors:write`" - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor-Address" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor-Address-Update-Body" - required: true - x-speakeasy-name-override: updateAddress - "/v1/companies/{company_id}/payrolls": - get: - summary: Get all payrolls for a company - operationId: get-v1-companies-company_id-payrolls - security: - - CompanyAccessAuth: [] - description: |- - Returns a list of payrolls for a company. You can change the payrolls returned by updating the processing_status, payroll_types, start_date, & end_date params. - - By default, will return processed, regular payrolls for the past 6 months. - - Notes: - * Dollar amounts are returned as string representations of numeric decimals, are represented to the cent. - * end_date can be at most 3 months in the future and start_date and end_date can't be more than 1 year apart. - * Results are paginated. Maximum page size is 100 payrolls per request; the default page size is 25. - - scope: `payrolls:read` - tags: - - Payrolls - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: processing_statuses - in: query - required: false - explode: false - description: Whether to include processed and/or unprocessed payrolls in the response, defaults to processed, for multiple attributes comma separate the values, i.e. `?processing_statuses=processed,unprocessed` - schema: - type: array - items: - type: string - enum: - - processed - - unprocessed - - name: payroll_types - in: query - required: false - explode: false - description: Whether to include regular and/or off_cycle payrolls in the response, defaults to regular, for multiple attributes comma separate the values, i.e. `?payroll_types=regular,off_cycle` - schema: - type: array - items: - type: string - enum: - - regular - - off_cycle - - external - - name: processed - in: query - required: false - description: Whether to return processed or unprocessed payrolls - schema: - type: boolean - - name: include_off_cycle - in: query - required: false - description: Whether to include off cycle payrolls in the response - schema: - type: boolean - - name: include - in: query - explode: false - required: false - schema: - type: array - items: - type: string - enum: - - taxes - - payroll_status_meta - - totals - - risk_blockers - - reversals - description: Include the requested attribute in the response, for multiple attributes comma separate the values, i.e. `?include=benefits,deductions,taxes` - - name: start_date - in: query - required: false - example: '2020-01-31' - description: Return payrolls whose pay period is after the start date - schema: - type: string - - name: end_date - in: query - required: false - example: '2020-01-31' - description: Return payrolls whose pay period is before the end date. If left empty, defaults to today's date. - schema: - type: string - - name: date_filter_by - in: query - required: false - description: Specifies which date field to use when filtering payrolls with start_date and end_date. This field applies only to regular processed payrolls and defaults to pay period if not provided. - schema: - type: string - enum: - - check_date - example: check_date - - name: page - in: query - required: false - description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - schema: - type: integer - - name: per - in: query - required: false - description: Number of objects per page. For majority of endpoints will default to 25 - schema: - type: integer - - name: sort_order - in: query - required: false - description: A string indicating whether to sort resulting events in ascending (asc) or descending (desc) chronological order. Events are sorted by their `timestamp`. Defaults to asc if left empty. - schema: - type: string - enum: - - asc - - desc - example: asc - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Payroll-List" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: list - post: - summary: Create an off-cycle payroll - operationId: post-v1-companies-company_id-payrolls - security: - - CompanyAccessAuth: [] - description: |- - Creates a new, unprocessed, off-cycle payroll. - - ## `off_cycle_reason` - By default: - - External benefits and deductions will be included when the `off_cycle_reason` is set to `Correction`. - - All benefits and deductions are blocked when the `off_cycle_reason` is set to `Bonus`. - - These elections can be overridden with the `skip_regular_deductions` boolean. - - scope: `payrolls:run` - tags: - - Payrolls - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Payroll-Unprocessed" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - required: - - off_cycle - - off_cycle_reason - - start_date - - end_date - properties: - off_cycle: - type: boolean - description: Whether it is an off cycle payroll. - off_cycle_reason: - type: string - enum: - - Bonus - - Correction - - Adhoc - - Dismissed employee - - Transition from old pay schedule - description: An off cycle payroll reason. Select one from the following list. - start_date: - type: string - format: date - description: Pay period start date. - end_date: - type: string - format: date - description: Pay period end date. - pay_schedule_uuid: - description: A pay schedule is required for transition from old pay schedule payroll to identify the matching transition pay period. - type: string - employee_uuids: - description: A list of employee uuids to include on the payroll. - type: - - array - - 'null' - items: - type: string - check_date: - type: string - format: date - description: Payment date. - withholding_pay_period: - description: The payment schedule tax rate the payroll is based on. - type: string - enum: - - Every week - - Every other week - - Twice per month - - Monthly - - Quarterly - - Semiannually - - Annually - skip_regular_deductions: - description: Block regular deductions and contributions for this payroll. - type: boolean - fixed_withholding_rate: - description: Enable taxes to be withheld at the IRS's required rate of 22% for federal income taxes. State income taxes will be taxed at the state's supplemental tax rate. Otherwise, we'll sum the entirety of the employee's wages and withhold taxes on the entire amount at the rate for regular wages. - type: boolean - is_check_only_payroll: - description: When true, all employees in the payroll will be paid by check and the check date can be set to today or any future business day (rather than requiring ACH lead time). Payment methods cannot be changed on check-only payrolls. - type: boolean - x-speakeasy-name-override: createOffCycle - "/v1/companies/{company_id}/payroll_reversals": - get: - summary: Get approved payroll reversals - operationId: get-v1-companies-company_id-payroll_reversals - security: - - CompanyAccessAuth: [] - description: |- - Returns all approved Payroll Reversals for a Company. - - scope: `payrolls:read` - tags: - - Payrolls - x-gusto-integration-type: - - embedded - parameters: - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: page - in: query - required: false - description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - schema: - type: integer - - name: per - in: query - required: false - description: Number of objects per page. For majority of endpoints will default to 25 - schema: - type: integer - - "$ref": "#/components/parameters/VersionHeader" - x-gusto-rswag: true - responses: - '200': - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Payroll-Reversal-List" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: getApprovedReversals - "/v1/companies/{company_id}/payrolls/{payroll_id}": - get: - summary: Get a single payroll - operationId: get-v1-companies-company_id-payrolls-payroll_id - security: - - CompanyAccessAuth: [] - description: |- - Returns a payroll. If payroll is calculated or processed, will return employee_compensations and totals. - - Results are paginated, with a maximum page size of 100 employee_compensations. - - Notes: - * Hour and dollar amounts are returned as string representations of numeric decimals. - * Hours are represented to the thousands place; dollar amounts are represented to the cent. - * Every eligible compensation is returned for each employee. If no data has yet be inserted for a given field, it defaults to "0.00" (for fixed amounts) or "0.000" (for hours ). - * When include parameter with benefits value is passed, employee_benefits:read scope is required to return benefits - * Benefits containing PHI are only visible with the `employee_benefits:read:phi` scope - - scope: `payrolls:read` - tags: - - Payrolls - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: payroll_id - in: path - description: The UUID of the payroll - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: include - in: query - explode: false - required: false - schema: - type: array - items: - type: string - enum: - - benefits - - deductions - - taxes - - payroll_status_meta - - totals - - risk_blockers - - reversals - - payroll_taxes - description: Include the requested attribute in the response, for multiple attributes comma separate the values, i.e. `?include=benefits,deductions,taxes` - - name: page - in: query - required: false - description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - schema: - type: integer - - name: per - in: query - required: false - description: Number of objects per page. For majority of endpoints will default to 25 - schema: - type: integer - - name: sort_by - in: query - required: false - schema: - type: string - pattern: "^(first_name|last_name)(:(asc|desc))?(,(first_name|last_name)(:(asc|desc))?)*$" - example: first_name:asc - description: 'Sort employee compensations by one or more fields. Options: first_name, last_name. Append `:asc` or `:desc` to specify direction (e.g., `last_name:asc` or `last_name:asc,first_name:asc`). Defaults to ascending.' - x-gusto-rswag: true - responses: - '200': - description: successful with wait_for_reverse_wire credit blocker - content: - application/json: - schema: - "$ref": "#/components/schemas/Payroll-Show" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: get - put: - summary: Update a payroll by ID - operationId: put-v1-companies-company_id-payrolls - security: - - CompanyAccessAuth: [] - description: |- - This endpoint allows you to update information for one or more employees for a specific **unprocessed** payroll. You can think of the **unprocessed** - payroll object as a template of fields that you can update. You cannot modify the structure of the payroll object through this endpoint, only values - of the fields included in the payroll. If you do not include specific employee compensations, fixed/hourly compensations, or deductions in your request body, they - will not be removed from the payroll. A maximum of 100 employee_compensations can be updated at a time. Only the employee compensation objects that were - inputted will be returned. - - scope: `payrolls:write` - tags: - - Payrolls - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: payroll_id - in: path - description: The UUID of the payroll - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Payroll-Prepared" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Payroll-Update" - required: true - x-speakeasy-name-override: update - delete: - summary: Delete a payroll - operationId: delete-v1-companies-company_id-payrolls - security: - - CompanyAccessAuth: [] - description: |- - This endpoint allows you to delete an **unprocessed** payroll. - - By default the payroll and associated data is deleted synchronously. To request an asynchronous delete, use the `async=true` query parameter. In both cases validation of ability to delete will be performed and an Unprocessable Entity error will be returned if the payroll is not able to be deleted. A successful synchronous delete will return `204/No Content`. When a payroll has been enqueued for asynchronous deletion, `202/Accepted` will be returned. - - scope: `payrolls:run` - tags: - - Payrolls - x-gusto-integration-type: - - embedded - parameters: - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: payroll_id - in: path - description: The UUID of the payroll - required: true - schema: - type: string - - name: async - in: query - description: When true, request an asynchronous delete of the payroll. - schema: - type: boolean - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '204': - description: no content - '202': - description: Accepted - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: delete - "/v1/companies/{company_id}/payrolls/{payroll_id}/prepare": - put: - summary: Prepare a payroll for update - operationId: put-v1-companies-company_id-payrolls-payroll_id-prepare - security: - - CompanyAccessAuth: [] - description: |- - Prepares an unprocessed payroll for update, including: adding or removing eligible employees from the payroll, - and updating `check_date`, `payroll_deadline`, and `payroll_status_meta` dates and times. - - Use this endpoint before calling [PUT /v1/companies/{company_id}/payrolls/{payroll_id}](ref:put-v1-companies-company_id-payrolls). - - ### Notes - - * Nullifies `calculated_at` and `totals` if the payroll was previously calculated - * Returns the `version` parameter required for [updating the payroll](ref:put-v1-companies-company_id-payrolls) - * `employees:read` scope is required to include employee compensations data in the response. - * Results are paginated, with a maximum page size of 100 employee compensations. - - scope: `payrolls:write employees:read` - tags: - - Payrolls - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: payroll_id - in: path - description: The UUID of the payroll - required: true - schema: - type: string - - name: page - in: query - required: false - description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - schema: - type: integer - - name: per - in: query - required: false - description: Number of objects per page. For majority of endpoints will default to 25 - schema: - type: integer - - name: sort_by - in: query - required: false - schema: - type: string - pattern: "^(first_name|last_name)(:(asc|desc))?(,(first_name|last_name)(:(asc|desc))?)*$" - example: first_name:asc - description: 'Sort employee compensations by one or more fields. Options: first_name, last_name. Append `:asc` or `:desc` to specify direction (e.g., `last_name:asc` or `last_name:asc,first_name:asc`). Defaults to ascending.' - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Payroll-Prepared" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - properties: - employee_uuids: - type: - - array - - 'null' - description: An array of employee UUIDs. If passed, only those employees payroll items will be prepared. - items: - type: string - x-speakeasy-name-override: prepare - "/v1/payrolls/{payroll_uuid}/receipt": - get: - summary: Get a single payroll receipt - operationId: get-v1-payment-receipts-payrolls-payroll_uuid - security: - - CompanyAccessAuth: [] - description: |- - Returns a payroll receipt. - - Notes: - * Hour and dollar amounts are returned as string representations of numeric decimals. - * Dollar amounts are represented to the cent. - * If no data has yet be inserted for a given field, it defaults to "0.00" (for fixed amounts). - - scope: `payrolls:read` - tags: - - Payrolls - x-gusto-integration-type: - - embedded - parameters: - - name: payroll_uuid - in: path - description: The UUID of the payroll - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Payroll-Receipt" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: getReceipt - "/v1/payrolls/{payroll_id}/employees/{employee_id}/calculate_accruing_time_off_hours": - post: - summary: Calculate accruing time off hours - operationId: post-v1-payrolls-payroll_id-calculate_accruing_time_off_hours - security: - - CompanyAccessAuth: [] - description: |- - 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. - - scope: `payrolls:read` - tags: - - Time Off Policies - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: payroll_id - in: path - description: The UUID of the payroll - required: true - schema: - type: string - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Payroll-Calculate-Accruing-Time-Off-Hours-Response" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Payroll-Calculate-Accruing-Time-Off-Hours-Request" - x-speakeasy-group: timeOffPolicies - x-speakeasy-name-override: calculateAccruingTimeOffHours - "/v1/companies/{company_uuid}/payrolls/blockers": - get: - summary: Get all payroll blockers for a company - operationId: get-v1-companies-payroll-blockers-company_uuid - security: - - CompanyAccessAuth: [] - description: |- - Returns a list of reasons that prevent the company from running payrolls. See the [Payroll Blockers guide](doc:payroll-blockers) for a complete list of reasons. The list is empty if there are no payroll blockers. - - scope: `payrolls:run` - tags: - - Payrolls - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Payroll-Blocker" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: getBlockers - "/v1/companies/{company_uuid}/payrolls/skip": - post: - summary: Skip a payroll - operationId: post-companies-payroll-skip-company_uuid - security: - - CompanyAccessAuth: [] - description: |- - Submits a $0 payroll for employees associated with the pay schedule to skip payroll. This submission is asynchronous and a successful request responds with a 202 HTTP status. Upon success, the payroll is transitioned to the `processed` state. - - If the company is blocked from running payroll due to issues like incomplete setup, missing information or other compliance issues, the response will be 422 Unprocessable Entity with a categorization of the blockers as described in the error responses. - - scope: `payrolls:run` - tags: - - Payrolls - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '202': - description: Accepted - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Payroll-Blockers-Error" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - properties: - payroll_type: - type: string - description: Payroll type - enum: - - Regular - - Hired employee - - Dismissed employee - - Transition from old pay schedule - start_date: - type: string - description: Pay period start date - end_date: - type: string - description: Pay period end date. If left empty, defaults to today's date. Required when skipping a termination payroll (`payroll_type` = `Dismissed employee`). - pay_schedule_uuid: - type: string - description: The UUID of the pay schedule. Required when skipping a termination payroll (`payroll_type` = `Dismissed employee`). - employee_uuids: - description: An array of employees. This field is only applicable to new hire payroll and termination payroll - type: - - array - - 'null' - items: - type: string - required: - - payroll_type - required: true - x-speakeasy-name-override: skip - "/v1/payrolls/{payroll_uuid}/gross_up": - post: - summary: Calculate gross up for a payroll - operationId: post-payrolls-gross-up-payroll_uuid - security: - - CompanyAccessAuth: [] - description: |- - Calculates gross up earnings for an employee's payroll, given net earnings. This endpoint is only applicable to off-cycle unprocessed payrolls. - - The gross up amount must then be mapped to the corresponding fixed compensation earning type to get the correct payroll amount. For example, for bonus off-cycles, the gross up amount should be set with the Bonus earning type in the payroll `fixed_compensations` field. - - scope: `payrolls:run` - tags: - - Payrolls - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: payroll_uuid - in: path - description: The UUID of the payroll - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Payroll-Gross-Up-Response" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Payroll-Gross-Up-Request" - required: true - x-speakeasy-name-override: calculateGrossUp - "/v1/contractor_payments/{contractor_payment_uuid}/receipt": - get: - summary: Get a single contractor payment receipt - operationId: get-v1-contractor_payments-contractor_payment_uuid-receipt - security: - - CompanyAccessAuth: [] - description: |- - Returns a contractor payment receipt. - - Notes: - * Receipts are only available for direct deposit payments and are only available once those payments have been funded. - * Payroll Receipt requests for payrolls which do not have receipts available (e.g. payment by check) will return a 404 status. - * Hour and dollar amounts are returned as string representations of numeric decimals. - * Dollar amounts are represented to the cent. - * If no data has yet be inserted for a given field, it defaults to “0.00” (for fixed amounts). - - scope: `payrolls:read` - tags: - - Contractor Payments - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: contractor_payment_uuid - in: path - required: true - description: The UUID of the contractor payment - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: OK - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor-Payment-Receipt" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: getReceipt - x-speakeasy-group: contractorPayments - "/v1/contractor_payments/{contractor_payment_uuid}/fund": - put: - summary: Fund a contractor payment [DEMO] - operationId: get-v1-contractor_payments-contractor_payment_uuid-fund - security: - - CompanyAccessAuth: [] - description: "> \U0001F6A7 Demo action\n>\n> This action is only available in the Demo environment\n\nSimulate funding a contractor payment. Funding only occurs automatically in the production environment when bank transactions are generated. Use this action in the demo environment to transition a contractor payment's `status` from `Unfunded` to `Funded`. A `Funded` status is required for generating a contractor payment receipt.\n\nscope: `payrolls:run`" - tags: - - Contractor Payments - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: contractor_payment_uuid - in: path - required: true - description: The UUID of the contractor payment - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: OK - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor-Payment" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - x-speakeasy-group: contractorPayments - x-speakeasy-name-override: fund - "/v1/companies/{company_id}/payrolls/{payroll_id}/calculate": - put: - summary: Calculate a payroll - operationId: put-v1-companies-company_id-payrolls-payroll_id-calculate - security: - - CompanyAccessAuth: [] - description: |- - Performs calculations for taxes, benefits, and deductions for an unprocessed payroll. The calculated payroll details provide a preview of the actual values that will be used when the payroll is run. - - This calculation is asynchronous and a successful request responds with a 202 HTTP status. To view the details of the calculated payroll, use the GET /v1/companies/{company_id}/payrolls/{payroll_id} endpoint with *include=taxes,benefits,deductions* params. - - If the company is blocked from running payroll due to issues like incomplete setup, missing information or other compliance issues, the response will be 422 Unprocessable Entity with a categorization of the blockers as described in the error responses. - - scope: `payrolls:run` - tags: - - Payrolls - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: payroll_id - in: path - description: The UUID of the payroll - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '202': - description: Accepted - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - x-speakeasy-name-override: calculate - "/v1/companies/{company_id}/payrolls/{payroll_id}/submit": - put: - summary: Submit payroll - operationId: put-v1-companies-company_id-payrolls-payroll_id-submit - security: - - CompanyAccessAuth: [] - description: |- - Submits an unprocessed payroll to be calculated and run. This submission is asynchronous and a successful request responds with a 202 HTTP status. Upon success, transitions the payroll to the `processed` state. - - You should poll to ensure that payroll is processed successfully, as async errors only occur after async processing is complete. - - If the company is blocked from running payroll due to issues like incomplete setup, missing information or other compliance issues, the response will be 422 Unprocessable Entity with a categorization of the blockers as described in the error responses. - - scope: `payrolls:run` - tags: - - Payrolls - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: payroll_id - in: path - description: The UUID of the payroll - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '202': - description: Accepted - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - properties: - submission_blockers: - type: array - description: An array of submission_blockers, each with a selected unblock option. - items: - "$ref": "#/components/schemas/Payroll-Submission-Blocker-Request-Type" - x-speakeasy-name-override: submit - "/v1/companies/{company_id}/payrolls/{payroll_id}/cancel": - put: - summary: Cancel a payroll - operationId: put-api-v1-companies-company_id-payrolls-payroll_id-cancel - security: - - CompanyAccessAuth: [] - description: |- - Transitions a `processed` payroll back to the `unprocessed` state. A payroll can be canceled if it meets both criteria: - - - `processed` is `true` - - Current time is earlier than 4pm PT on the `payroll_deadline` - - scope: `payrolls:run` - tags: - - Payrolls - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: payroll_id - in: path - description: The UUID of the payroll - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessed-Payroll" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - x-speakeasy-name-override: cancel - "/v1/companies/{company_id}/contractor_payments": - get: - summary: Get contractor payments for a company - operationId: get-v1-companies-company_id-contractor_payments - security: - - CompanyAccessAuth: [] - description: |- - Returns an object containing individual contractor payments, within a given time period, including totals. - - Results are returned in reverse chronological order (newest first). - - scope: `payrolls:read` - tags: - - Contractor Payments - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - required: true - description: The UUID of the company - schema: - type: string - - name: start_date - in: query - required: true - description: The time period for which to retrieve contractor payments - example: '2020-01-01' - schema: - type: string - - name: end_date - in: query - required: true - description: The time period for which to retrieve contractor payments. If left empty, defaults to today's date. - example: '2020-12-31' - schema: - type: string - - name: contractor_uuid - in: query - required: false - description: The UUID of the contractor. When specified, will load all payments for that contractor. - schema: - type: string - - name: group_by_date - in: query - required: false - description: Display contractor payments results group by check date if set to true. - schema: - type: boolean - - name: page - in: query - required: false - description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - schema: - type: integer - - name: per - in: query - required: false - description: Number of objects per page. For majority of endpoints will default to 25 - schema: - type: integer - x-gusto-rswag: true - responses: - '200': - description: A JSON object containing contractor payments information - content: - application/json: - schema: - anyOf: - - "$ref": "#/components/schemas/Contractor-Payment-Summary" - - "$ref": "#/components/schemas/Contractor-Payment-Summary-By-Dates" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided ID/UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: contractorPayments - x-speakeasy-name-override: list - post: - summary: Create a contractor payment - operationId: post-v1-companies-company_id-contractor_payments - security: - - CompanyAccessAuth: [] - description: |- - Pay a contractor. Information needed depends on the contractor's wage type (hourly vs fixed) - - scope: `payrolls:run` - tags: - - Contractor Payments - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - required: true - description: The UUID of the company - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor-Payment" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided ID/UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor-Payment-Body" - required: true - x-speakeasy-group: contractorPayments - x-speakeasy-name-override: create - "/v1/companies/{company_id}/contractor_payments/{contractor_payment_id}": - get: - summary: Get a single contractor payment - operationId: get-v1-companies-company_id-contractor_payment-contractor-payment - security: - - CompanyAccessAuth: [] - description: |- - Returns a single contractor payment. - - scope: `payrolls:read` - tags: - - Contractor Payments - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - required: true - description: The UUID of the company - schema: - type: string - - name: contractor_payment_id - in: path - required: true - description: The UUID of the contractor payment - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor-Payment" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided ID/UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: get - x-speakeasy-group: contractorPayments - delete: - summary: Cancel a contractor payment - operationId: delete-v1-companies-company_id-contractor_payment-contractor-payment - security: - - CompanyAccessAuth: [] - description: |- - Cancels and deletes a contractor payment. If the contractor payment has already started processing ("may_cancel": true), the payment cannot be cancelled. - - scope: `payrolls:run` - tags: - - Contractor Payments - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - required: true - description: The UUID of the company - schema: - type: string - - name: contractor_payment_id - in: path - required: true - description: The UUID of the contractor payment - schema: - type: string - x-gusto-rswag: true - responses: - '204': - description: No Content - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided ID/UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - x-speakeasy-group: contractorPayments - x-speakeasy-name-override: delete - "/v1/companies/{company_id}/contractor_payment_groups": - get: - summary: Get contractor payment groups for a company - operationId: get-v1-companies-company_id-contractor_payment_groups - security: - - CompanyAccessAuth: [] - description: |- - Returns a list of minimal contractor payment groups within a given time period, including totals but not associated contractor payments. - - scope: `payrolls:read` - tags: - - Contractor Payment Groups - x-gusto-integration-type: - - embedded - parameters: - - name: company_id - in: path - required: true - description: The UUID of the company - schema: - type: string - - name: start_date - in: query - required: false - description: The time period for which to retrieve contractor payment groups. Defaults to 6 months ago. - example: '2020-01-01' - schema: - type: string - - name: end_date - in: query - required: false - description: The time period for which to retrieve contractor payment groups. Defaults to today's date. - example: '2020-12-31' - schema: - type: string - - name: page - in: query - required: false - description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - schema: - type: integer - - name: per - in: query - required: false - description: Number of objects per page. For majority of endpoints will default to 25 - schema: - type: integer - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: List of Contractor Payment Groups - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Contractor-Payment-Group-With-Blockers" - '404': - description: | - Not Found - - The requested company does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: getList - x-speakeasy-group: contractorPaymentGroups - post: - summary: Create a contractor payment group - operationId: post-v1-companies-company_id-contractor_payment_groups - security: - - CompanyAccessAuth: [] - description: |- - Pay a group of contractors. Information needed depends on the contractor's wage type (hourly vs fixed) - - scope: `payrolls:run` - tags: - - Contractor Payment Groups - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - required: true - description: The UUID of the company - schema: - type: string - x-gusto-rswag: true - responses: - '201': - description: Full contractor payment group object - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor-Payment-Group" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - '404': - description: | - Not Found - - The requested company does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - required: - - check_date - - contractor_payments - - creation_token - properties: - check_date: - type: string - format: date - description: The payment check date - example: '2020-01-01' - creation_token: - type: string - description: A token used to make contractor payment group creation idempotent. The string must be unique for each group you intend to create. - example: 1d532d13-8f61-4a57-ad3c-b5fac1c6e05e - submission_blockers: - type: array - description: Optional array of submission blockers with selected unblock options. Returned from the preview endpoint and can be submitted with selected_option to resolve blockers. - items: - type: object - properties: - blocker_type: - type: string - description: The type of blocker that is blocking the payment submission - selected_option: - type: - - string - - 'null' - description: The unblock option selected to resolve the submission blocker - message: - type: string - description: Optional message related to the blocker - options: - type: array - description: Optional array of additional options for the blocker - items: - type: object - properties: - type: - type: string - description: The type of option - message: - type: string - description: Message for the option - contractor_payments: - type: array - items: - type: object - properties: - contractor_uuid: - type: string - description: The contractor receiving the payment - payment_method: - type: string - enum: - - Direct Deposit - - Check - - Historical Payment - default: Direct Deposit - wage: - type: string - format: float - description: If the contractor is on a fixed wage, this is the fixed wage payment for the contractor, regardless of hours worked - example: '5000.0' - hours: - type: string - format: float - example: '40.0' - description: If the contractor is on an hourly wage, this is the number of hours that the contractor worked for the payment - bonus: - type: string - format: float - example: '500.0' - description: If the contractor is on an hourly wage, this is the bonus the contractor earned - reimbursement: - type: string - format: float - example: '20.0' - description: Reimbursed wages for the contractor - required: true - x-speakeasy-group: contractorPaymentGroups - x-speakeasy-name-override: create - "/v1/companies/{company_id}/contractor_payment_groups/preview": - post: - summary: Preview a contractor payment group - operationId: post-v1-companies-company_id-contractor_payment_groups-preview - security: - - CompanyAccessAuth: [] - description: |- - Preview a group of contractor payments. Request will validate inputs and return preview of the contractor payment group including the expected `debit_date`. The `uuid` field will be null in the response. - - The returned `creation_token` is a required parameter in order to create the contractor payment group. - - scope: `payrolls:read` - tags: - - Contractor Payment Groups - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - required: true - description: The UUID of the company - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Full contractor payment group object with null uuid - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor-Payment-Group-Preview" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided ID/UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - required: - - contractor_payments - properties: - contractor_payments: - type: array - items: - type: object - properties: - contractor_uuid: - type: string - description: The contractor receiving the payment - payment_method: - type: string - enum: - - Direct Deposit - - Check - - Historical Payment - default: Direct Deposit - wage: - type: string - format: float - description: If the contractor is on a fixed wage, this is the fixed wage payment for the contractor, regardless of hours worked - example: '5000.0' - hours: - type: string - format: float - example: '40.0' - description: If the contractor is on an hourly wage, this is the number of hours that the contractor worked for the payment - bonus: - type: string - format: float - example: '500.0' - description: If the contractor is on an hourly wage, this is the bonus the contractor earned - reimbursement: - type: string - format: float - example: '20.0' - description: Reimbursed wages for the contractor - check_date: - type: string - format: date - description: Date when payments should be processed - required: true - x-speakeasy-group: contractorPaymentGroups - x-speakeasy-name-override: preview - "/v1/contractor_payment_groups/{contractor_payment_group_uuid}": - get: - summary: Get a contractor payment group - operationId: get-v1-contractor_payment_groups-contractor_payment_group_id - security: - - CompanyAccessAuth: [] - description: |- - Returns a contractor payment group with all associated contractor payments. - - scope: `payrolls:read` - tags: - - Contractor Payment Groups - x-gusto-integration-type: - - embedded - parameters: - - name: contractor_payment_group_uuid - in: path - required: true - description: The UUID of the contractor payment group - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Successful response - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor-Payment-Group" - '404': - description: | - Not Found - - The requested contractor payment group does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: contractorPaymentGroups - x-speakeasy-name-override: get - delete: - summary: Cancel a contractor payment group - operationId: delete-v1-contractor_payment_groups-contractor_payment_group_id - security: - - CompanyAccessAuth: [] - description: |- - Cancels a contractor payment group and all associated contractor payments. All contractor payments must be cancellable, unfunded. - - scope: `payrolls:run` - tags: - - Contractor Payment Groups - x-gusto-integration-type: - - embedded - parameters: - - name: contractor_payment_group_uuid - in: path - required: true - description: The UUID of the contractor payment group - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '204': - description: Successfully cancelled - '404': - description: | - Not Found - - The requested contractor payment group does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when trying to cancel a payment group that is not in a cancellable state, such as one that has already been funded or processed. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - x-speakeasy-name-override: delete - x-speakeasy-group: contractorPaymentGroups - "/v1/contractor_payment_groups/{contractor_payment_group_uuid}/fund": - put: - summary: Fund a contractor payment group [DEMO] - operationId: put-v1-contractor_payment_groups-contractor_payment_group_id-fund - security: - - CompanyAccessAuth: [] - description: "> \U0001F6A7 Demo action\n> This action is only available in the Demo environment\n\nSimulate funding a contractor payment group. Funding only occurs automatically in the production environment when bank transactions are generated. Use this action in the demo environment to transition a contractor payment group's `status` from `Unfunded` to `Funded`. A `Funded` status is required for generating a contractor payment receipt.\n\nscope: `payrolls:run`" - tags: - - Contractor Payment Groups - x-gusto-integration-type: - - embedded - parameters: - - name: contractor_payment_group_uuid - in: path - required: true - description: The UUID of the contractor payment group - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Full contractor payment group object - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor-Payment-Group" - '404': - description: | - Not Found - - The requested contractor payment group does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - x-speakeasy-name-override: fund - x-speakeasy-group: contractorPaymentGroups - "/v1/companies/{company_id}/forms": - get: - summary: Get all company forms - operationId: get-v1-company-forms - security: - - CompanyAccessAuth: [] - description: |- - Get a list of all company's forms - - ### Related guides - - [Company Forms](doc:company-form) - - scope: `company_forms:read` - tags: - - Company Forms - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: sort_by - in: query - required: false - schema: - type: string - pattern: "^(created_at|name|year|quarter|draft|document_content_type)(:(asc|desc))?(,(created_at|name|year|quarter|draft|document_content_type)(:(asc|desc))?)*$" - example: created_at:asc - description: 'Sort by one or more fields. Options: created_at, name, year, quarter, draft, document_content_type. Append `:asc` or `:desc` to specify direction (e.g., `created_at:asc`). Defaults to ascending.' - - name: page - in: query - required: false - description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - schema: - type: integer - - name: per - in: query - required: false - description: Number of objects per page. For majority of endpoints will default to 25 - schema: - type: integer - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Form" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: getAll - x-speakeasy-group: companyForms - "/v1/forms/{form_id}": - get: - summary: Get a company form - operationId: get-v1-company-form - security: - - CompanyAccessAuth: [] - description: |- - Get a company form - - scope: `company_forms:read` - tags: - - Company Forms - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: form_id - in: path - description: The UUID of the form - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Form" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: companyForms - x-speakeasy-name-override: get - "/v1/forms/{form_id}/pdf": - get: - summary: Get a company form pdf - operationId: get-v1-company-form-pdf - security: - - CompanyAccessAuth: [] - description: |- - Get the link to the form PDF - - scope: `company_forms:read` - tags: - - Company Forms - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: form_id - in: path - description: The UUID of the form - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Form-Pdf" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: getPdf - x-speakeasy-group: companyForms - "/v1/forms/{form_id}/sign": - put: - summary: Sign a company form - operationId: put-v1-company-form-sign - security: - - CompanyAccessAuth: [] - description: |- - Sign a company form. Company forms must be signed by the company signatory. - - scope: `company_forms:sign` - tags: - - Company Forms - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: form_id - in: path - description: The UUID of the form - required: true - schema: - type: string - - name: x-gusto-client-ip - in: header - required: false - description: Optional header to supply the IP address. This can be used to supply the IP address for signature endpoints instead of the signed_by_ip_address parameter. - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Form" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - properties: - signature_text: - type: string - description: The signature - agree: - type: boolean - description: Whether you agree to sign electronically - signed_by_ip_address: - type: string - description: The IP address of the signatory who signed the form. Both IPv4 AND IPv6 are supported. You must provide the IP address with either this parameter OR you can leave out this parameter and set the IP address in the request header using the `x-gusto-client-ip` header instead. - required: - - signature_text - - agree - required: true - x-speakeasy-group: companyForms - x-speakeasy-name-override: sign - "/v1/employees/{employee_id}/forms": - get: - summary: Get all employee forms - operationId: get-v1-employee-forms - security: - - CompanyAccessAuth: [] - description: |- - Get a list of all employee's forms - - scope: `employee_forms:read` - tags: - - Employee Forms - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Form" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: list - x-speakeasy-group: employeeForms - "/v1/employees/{employee_id}/forms/{form_id}": - get: - summary: Get an employee form - operationId: get-v1-employee-form - security: - - CompanyAccessAuth: [] - description: |- - Get an employee form - - scope: `employee_forms:read` - tags: - - Employee Forms - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - - name: form_id - in: path - description: The UUID of the form - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Form" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: employeeForms - x-speakeasy-name-override: get - "/v1/employees/{employee_id}/forms/{form_id}/pdf": - get: - summary: Get the employee form pdf - operationId: get-v1-employee-form-pdf - security: - - CompanyAccessAuth: [] - description: |- - Get the link to the employee form PDF - - scope: `employee_forms:read` - tags: - - Employee Forms - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - - name: form_id - in: path - description: The UUID of the form - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Form-Pdf" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: employeeForms - x-speakeasy-name-override: getPdf - "/v1/employees/{employee_id}/forms/{form_id}/sign": - put: - summary: Sign an employee form - operationId: put-v1-employee-form-sign - security: - - CompanyAccessAuth: [] - description: |- - Sign an employee form. - - The optional preparer attributes are only valid for I-9 form. When a preparer is used, the - first name, last name, street address, city, state, and zip for that preparer are all required. - - scope: `employee_forms:sign` - tags: - - Employee Forms - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - - name: form_id - in: path - description: The UUID of the form - required: true - schema: - type: string - - name: x-gusto-client-ip - in: header - required: false - description: Optional header to supply the IP address. This can be used to supply the IP address for signature endpoints instead of the signed_by_ip_address parameter. - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Form" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - properties: - signature_text: - type: string - description: The signature - agree: - type: boolean - description: Whether you agree to sign electronically - signed_by_ip_address: - type: string - description: The IP address of the signatory who signed the form. Both IPv4 AND IPv6 are supported. You must provide the IP address with either this parameter OR you can leave out this parameter and set the IP address in the request header using the `x-gusto-client-ip` header instead. - preparer: - type: boolean - description: Whether there is a preparer - preparer_first_name: - type: string - preparer_last_name: - type: string - preparer_street_1: - type: string - preparer_street_2: - type: string - preparer_city: - type: string - preparer_state: - type: string - preparer_zip: - type: string - preparer_agree: - type: string - description: Whether preparer agrees to sign electronically - preparer2: - type: boolean - description: Whether there is a 2nd preparer - preparer2_first_name: - type: string - preparer2_last_name: - type: string - preparer2_street_1: - type: string - preparer2_street_2: - type: string - preparer2_city: - type: string - preparer2_state: - type: string - preparer2_zip: - type: string - preparer2_agree: - type: string - description: Whether 2nd preparer agrees to sign electronically - preparer3: - type: boolean - description: Whether there is a 3rd preparer - preparer3_first_name: - type: string - preparer3_last_name: - type: string - preparer3_street_1: - type: string - preparer3_street_2: - type: string - preparer3_city: - type: string - preparer3_state: - type: string - preparer3_zip: - type: string - preparer3_agree: - type: string - description: Whether 3rd preparer agrees to sign electronically - preparer4: - type: boolean - description: Whether there is a 4th preparer - preparer4_first_name: - type: string - preparer4_last_name: - type: string - preparer4_street_1: - type: string - preparer4_street_2: - type: string - preparer4_city: - type: string - preparer4_state: - type: string - preparer4_zip: - type: string - preparer4_agree: - type: string - description: Whether 4th preparer agrees to sign electronically - required: - - signature_text - - agree - required: true - x-speakeasy-group: employeeForms - x-speakeasy-name-override: sign - "/v1/payrolls/{payroll_id}/employees/{employee_id}/pay_stub": - get: - summary: Get an employee pay stub (pdf) - operationId: get-v1-payrolls-payroll_uuid-employees-employee_uuid-pay_stub - security: - - CompanyAccessAuth: [] - description: |- - Get an employee's pay stub for the specified payroll. By default, an application/pdf response will be returned. No other content types are currently supported, but may be supported in the future. - - scope: `pay_stubs:read` - tags: - - Payrolls - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: payroll_id - in: path - description: The UUID of the payroll - required: true - schema: - type: string - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/pdf: - schema: - type: string - format: binary - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: getPayStub - "/v1/employees/{employee_id}/pay_stubs": - get: - summary: Get an employee's pay stubs - operationId: get-v1-employees-employee_uuid-pay_stubs - security: - - CompanyAccessAuth: [] - description: |- - Get an employee's pay stubs. - - Results are returned in reverse chronological order (newest first). - - scope: `pay_stubs:read` - x-gusto-integration-type: - - embedded - tags: - - Payrolls - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - - name: page - in: query - required: false - description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - schema: - type: integer - - name: per - in: query - required: false - description: Number of objects per page. For majority of endpoints will default to 25 - schema: - type: integer - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Pay-Stubs-List" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: getPayStubs - "/v1/generated_documents/{document_type}/{request_uuid}": - get: - summary: Get a generated document - operationId: get-v1-generated_documents-document_type-request_uuid - security: - - CompanyAccessAuth: [] - description: |- - Get a document given the request_uuid. The response will include the generation request's status and urls to the document. A list of urls is returned as certain document types require several urls. - - scope: `generated_documents:read` - tags: - - Generated Documents - x-gusto-integration-type: - - embedded - parameters: - - name: document_type - in: path - required: true - schema: - type: string - enum: - - printable_payroll_checks - description: The type of document being generated - - name: request_uuid - in: path - required: true - description: The UUID of the request to generate a document. Generate document endpoints return request_uuids to be used with the GET generated document endpoint. - schema: - type: string - - "$ref": "#/components/parameters/VersionHeader" - x-gusto-rswag: true - responses: - '200': - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Generated-Document" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: generatedDocuments - x-speakeasy-name-override: get - "/v1/payrolls/{payroll_uuid}/generated_documents/printable_payroll_checks": - post: - summary: Generate printable payroll checks (pdf) - operationId: post-v1-payrolls-payroll_uuid-generated_documents-printable_payroll_checks - security: - - CompanyAccessAuth: [] - description: |- - This endpoint initiates the generation of employee checks for the payroll specified by payroll_uuid. A generation status and corresponding request_uuid will be returned. Use the generated document GET endpoint with document_type: `printable_payroll_checks` and request_uuid to poll the check generation process and retrieve the generated check URL upon completion. - - scope: `generated_documents:write` - tags: - - Payrolls - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: payroll_uuid - in: path - required: true - description: The UUID of the payroll - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Payroll-Check" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Printable-Payroll-Checks-Body" - required: true - x-speakeasy-name-override: generatePrintableChecks - "/v1/companies/{company_uuid}/reports": - post: - summary: Create a custom report - operationId: post-companies-company_uuid-reports - security: - - CompanyAccessAuth: [] - description: |- - Create a custom report for a company. This endpoint initiates creating a custom report with custom columns, groupings, and filters. The `request_uuid` in the response can then be used to poll for the status and report URL upon completion using the [report GET endpoint](https://docs.gusto.com/embedded-payroll/reference/get-reports-request_uuid). This URL is valid for 10 minutes. - - scope: `company_reports:write` - tags: - - Reports - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - required: true - description: The UUID of the company - schema: - type: string - x-gusto-rswag: true - responses: - '201': - description: Created - content: - application/json: - schema: - "$ref": "#/components/schemas/Create-Report" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Create-Report-Body" - required: true - x-speakeasy-name-override: createCustom - "/v1/payrolls/{payroll_uuid}/reports/general_ledger": - post: - summary: Create a general ledger report - operationId: post-payrolls-payroll_uuid-reports-general_ledger - security: - - CompanyAccessAuth: [] - description: |- - Create a general ledger report for a payroll. The report can be aggregated by different dimensions such as job or department. - - Use the `request_uuid` in the response with the [report GET endpoint](../reference/get-reports-request_uuid) to poll for the status and report URL upon completion. The retrieved report will be generated in a JSON format. - - scope: `company_reports:write` - tags: - - Reports - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: payroll_uuid - in: path - required: true - description: The UUID of the payroll - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: OK - content: - application/json: - schema: - "$ref": "#/components/schemas/General-Ledger-Report" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/General-Ledger-Report-Body" - required: true - "/v1/reports/{request_uuid}": - get: - summary: Get a report - operationId: get-reports-request_uuid - security: - - CompanyAccessAuth: [] - description: |- - Get a company's report given the `request_uuid`. The response will include the report request's status and, if complete, the report URL. - - Reports containing PHI are inaccessible with `company_reports:read:tier_2_only` data scope - - scope: `company_reports:read` - tags: - - Reports - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: request_uuid - in: path - required: true - description: The UUID of the request to generate a document. Generate document endpoints return request_uuids to be used with the GET generated document endpoint. - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: OK - content: - application/json: - schema: - "$ref": "#/components/schemas/Report" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - "/v1/companies/{company_uuid}/report_templates/{report_type}": - get: - summary: Get a report template - operationId: get-companies-company_uuid-report-templates-report_type - security: - - CompanyAccessAuth: [] - description: |- - Get a company's report template. The only supported report type is `payroll_journal`. The resulting columns and groupings from this endpoint can be used as a guidance to create the report using the POST create report endpoint. - - scope: `company_reports:write` - tags: - - Reports - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - required: true - description: The UUID of the company - schema: - type: string - - name: report_type - in: path - required: true - description: The report type - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: OK - content: - application/json: - schema: - "$ref": "#/components/schemas/Report-Template" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - x-speakeasy-name-override: getTemplate - "/v1/companies/{company_id}/company_benefits": - get: - summary: Get benefits for a company - operationId: get-v1-companies-company_id-company_benefits - security: - - CompanyAccessAuth: [] - description: |- - Company benefits represent the benefits that a company is offering to employees. This ties together a particular supported benefit with the company-specific information for the offering of that benefit. - - Note that company benefits can be deactivated only when no employees are enrolled. - - Benefits containing PHI are only visible to applications with the `company_benefits:read:phi` scope. - - scope: `company_benefits:read` - tags: - - Company Benefits - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: active - in: query - required: false - description: Whether the benefit is currently active - schema: - type: boolean - - name: enrollment_count - in: query - required: false - description: Whether to return employee enrollment count - schema: - type: boolean - - name: benefit_type - in: query - required: false - description: Filter by benefit type. Comma-separated list of benefit type IDs, i.e. `?benefit_type=5,105` - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Example response - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Company-Benefit" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: companyBenefits - x-speakeasy-name-override: list - post: - summary: Create a company benefit - operationId: post-v1-companies-company_id-company_benefits - security: - - CompanyAccessAuth: [] - description: |- - Company benefits represent the benefits that a company is offering to employees. This ties together a particular supported benefit with the company-specific information for the offering of that benefit. - - Note that company benefits can be deactivated only when no employees are enrolled. - - When the application has the `company_benefits:write:benefit_type_limited` data scope, the application can only create company benefits for benefit types that are permitted for the application. - - scope: `company_benefits:write` - tags: - - Company Benefits - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '201': - description: Created - content: - application/json: - schema: - "$ref": "#/components/schemas/Company-Benefit" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Company-Benefit-Create-Request" - required: true - x-speakeasy-group: companyBenefits - x-speakeasy-name-override: create - "/v1/company_benefits/{company_benefit_id}": - get: - summary: Get a company benefit - operationId: get-v1-company_benefits-company_benefit_id - security: - - CompanyAccessAuth: [] - description: |- - Company benefits represent the benefits that a company is offering to employees. This ties together a particular supported benefit with the company-specific information for the offering of that benefit. - - Note that company benefits can be deactivated only when no employees are enrolled. - - When with_employee_benefits parameter with true value is passed, employee_benefits:read scope is required to return employee_benefits. - - scope: `company_benefits:read` - tags: - - Company Benefits - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_benefit_id - in: path - description: The UUID of the company benefit - required: true - schema: - type: string - - name: with_employee_benefits - in: query - required: false - description: Whether to return employee benefits associated with the benefit - schema: - type: boolean - - name: include - in: query - required: false - schema: - type: string - enum: - - all_benefits - description: |- - Available options: - - all_benefits: If with_employee_benefits=true, include all effective dated benefits for each employee instead of only the current benefits. - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Company-Benefit-With-Employee-Benefits" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: companyBenefits - x-speakeasy-name-override: get - put: - summary: Update a company benefit - operationId: put-v1-company_benefits-company_benefit_id - security: - - CompanyAccessAuth: [] - description: |- - Company benefits represent the benefits that a company is offering to employees. This ties together a particular supported benefit with the company-specific information for the offering of that benefit. - - Note that company benefits can be deactivated only when no employees are enrolled. - - When the application has the `company_benefits:write:benefit_type_limited` data scope, the application can only update company benefits for benefit types that are permitted for the application. - - scope: `company_benefits:write` - tags: - - Company Benefits - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_benefit_id - in: path - description: The UUID of the company benefit - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Company-Benefit" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Company-Benefit-Update-Request" - required: true - x-speakeasy-group: companyBenefits - x-speakeasy-name-override: update - delete: - summary: Delete a company benefit - operationId: delete-v1-company_benefits-company_benefit_id - security: - - CompanyAccessAuth: [] - description: |- - 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 company benefit - - The benefit is not managed by a Partner or by Gusto (type must be 'External') - - When the application has the `company_benefits:write:benefit_type_limited` data scope, the application can only delete company benefits for benefit types that are permitted for the application. - - scope: `company_benefits:write` - tags: - - Company Benefits - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_benefit_id - in: path - description: The UUID of the company benefit - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '204': - description: No Content - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - x-speakeasy-name-override: delete - x-speakeasy-group: companyBenefits - "/v1/benefits": - get: - summary: Get all supported benefits - operationId: get-v1-benefits - security: - - CompanyAccessAuth: [] - description: |- - Returns all benefits supported by Gusto. The benefit object in Gusto contains high level information about a particular benefit type and its tax considerations. When companies choose to offer a benefit, they are creating a Company Benefit object associated with a particular benefit. - - scope: `benefits:read` - tags: - - Company Benefits - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Supported-Benefit" - x-speakeasy-group: companyBenefits - x-speakeasy-name-override: getAll - "/v1/benefits/{benefit_id}": - get: - summary: Get a supported benefit - operationId: get-v1-benefits-benefit_id - security: - - CompanyAccessAuth: [] - description: |- - Returns a benefit supported by Gusto. The benefit object in Gusto contains high level information about a particular benefit type and its tax considerations. When companies choose to offer a benefit, they are creating a Company Benefit object associated with a particular benefit. - - scope: `benefits:read` - tags: - - Company Benefits - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: benefit_id - in: path - description: The benefit type in Gusto. - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Supported-Benefit" - x-speakeasy-group: companyBenefits - x-speakeasy-name-override: getSupported - "/v1/company_benefits/{company_benefit_id}/summary": - get: - summary: Get company benefit summary by company benefit id. - operationId: get-v1-benefits-company_benefit_id-summary - security: - - CompanyAccessAuth: [] - description: |- - Returns summary benefit data for the requested company benefit id. - - Benefits containing PHI are only visible to applications with the `company_benefits:read:phi` scope. - - scope: `company_benefits:read` - tags: - - Company Benefits - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_benefit_id - in: path - description: The UUID of the company benefit - required: true - schema: - type: string - - name: start_date - in: query - required: false - description: The start date for which to retrieve company benefit summary - example: '2022-01-01' - schema: - type: string - - name: end_date - in: query - required: false - description: The end date for which to retrieve company benefit summary. If left empty, defaults to today's date. - example: '2022-12-31' - schema: - type: string - - name: detailed - in: query - required: false - description: Display employee payroll item summary - schema: - type: boolean - x-gusto-rswag: true - responses: - '200': - description: Benefit summary response - content: - application/json: - schema: - "$ref": "#/components/schemas/Benefit-Summary" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: companyBenefits - x-speakeasy-name-override: getSummary - "/v1/company_benefits/{company_benefit_id}/employee_benefits": - get: - summary: Get all employee benefits for a company benefit - operationId: get-v1-company_benefits-company_benefit_id-employee_benefits - security: - - CompanyAccessAuth: [] - description: |- - Employee benefits represent an employee enrolled in a particular company benefit. It includes information specific to that employee's enrollment. - - Returns an array of all employee benefits enrolled for this company benefit. - - Benefits containing PHI are only visible to applications with the `employee_benefits:read:phi` scope. - - scope: `employee_benefits:read` - tags: - - Company Benefits - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_benefit_id - in: path - description: The UUID of the company benefit - required: true - schema: - type: string - - name: page - in: query - required: false - description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - schema: - type: integer - - name: per - in: query - required: false - description: Number of objects per page. For majority of endpoints will default to 25 - schema: - type: integer - - name: include - in: query - required: false - schema: - type: string - enum: - - all_benefits - description: |- - Available options: - - all_benefits: Include all effective dated benefits for each employee instead of only the current benefits. - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Employee-Benefit" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: getEmployeeBenefits - x-speakeasy-group: companyBenefits - put: - summary: Bulk update employee benefits for a company benefit - operationId: put-v1-company_benefits-company_benefit_id-employee_benefits - security: - - CompanyAccessAuth: [] - description: |- - Employee benefits represent an employee enrolled in a particular company benefit. It includes information specific to that employee's enrollment. - - Create or update(if the employee is already enrolled in the company benefit previously) an employee benefit for the company benefit. - - Benefits containing PHI are only visible to applications with the `employee_benefits:read:phi` scope. - - When the application has the `employee_benefits:write:benefit_type_limited` data scope, the application can only create or update employee benefits for benefit types that are permitted for the application. - - scope: `employee_benefits:write` - tags: - - Company Benefits - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_benefit_id - in: path - description: The UUID of the company benefit - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Employee-Benefit" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Benefit-Bulk-Update-Request" - required: true - x-speakeasy-group: companyBenefits - x-speakeasy-name-override: updateEmployeeBenefits - "/v1/company_benefits/{company_benefit_id}/contribution_exclusions": - get: - summary: Get contribution exclusions for a company benefit - operationId: get-v1-company_benefits-company_benefit_id-contribution_exclusions - security: - - CompanyAccessAuth: [] - description: |- - Returns all contributions for a given company benefit and whether they are excluded or not. - - Currently this endpoint only works for 401-k and Roth 401-k benefit types. - - scope: `company_benefits:read` - tags: - - Company Benefits - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_benefit_id - in: path - description: The UUID of the company benefit - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Contribution-Exclusion" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - put: - summary: Update contribution exclusions for a company benefit - operationId: put-v1-company_benefits-company_benefit_id-contribution_exclusions - security: - - CompanyAccessAuth: [] - description: |- - Updates contribution exclusions for a given company benefit. - - Currently this endpoint only works for 401-k and Roth 401-k benefit types. - - scope: `company_benefits:write` - tags: - - Company Benefits - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_benefit_id - in: path - description: The UUID of the company benefit - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Example response - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Contribution-Exclusion" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Contribution-Exclusion-Update-Request" - required: true - "/v1/benefits/{benefit_id}/requirements": - get: - summary: Get benefit fields requirements by benefit type - operationId: get-v1-benefits-benefits_id-requirements - security: - - CompanyAccessAuth: [] - description: |- - Returns the field requirements for a given benefit type. - - scope: `benefits:read` - tags: - - Company Benefits - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: benefit_id - in: path - description: The benefit type in Gusto. - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Benefit-Type-Requirements" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: companyBenefits - x-speakeasy-name-override: getRequirements - "/v1/employees/{employee_id}/employee_benefits": - get: - summary: Get all benefits for an employee - operationId: get-v1-employees-employee_id-employee_benefits - security: - - CompanyAccessAuth: [] - description: |- - Employee benefits represent an employee enrolled in a particular company benefit. It includes information specific to that employee’s enrollment. - - Returns an array of all employee benefits for this employee - - Benefits containing PHI are only visible to applications with the `employee_benefits:read:phi` scope. - - scope: `employee_benefits:read` - tags: - - Employee Benefits - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - - name: page - in: query - required: false - description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - schema: - type: integer - - name: per - in: query - required: false - description: Number of objects per page. For majority of endpoints will default to 25 - schema: - type: integer - - name: include - in: query - required: false - schema: - type: string - enum: - - all_benefits - description: |- - Available options: - - all_benefits: Include all effective dated benefits for each employee instead of only the current benefits. - x-gusto-rswag: true - responses: - '200': - description: Example response - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Employee-Benefit" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: employeeBenefits - x-speakeasy-name-override: get - post: - summary: Create an employee benefit - operationId: post-v1-employees-employee_id-employee_benefits - security: - - CompanyAccessAuth: [] - description: |- - Employee benefits represent an employee enrolled in a particular company benefit. It includes information specific to that employee's enrollment. - - When the application has the `employee_benefits:write:benefit_type_limited` data scope, the application can only create employee benefits for benefit types that are permitted for the application. - - scope: `employee_benefits:write` - tags: - - Employee Benefits - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '201': - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Benefit" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Benefit-Create-Request" - required: true - x-speakeasy-name-override: create - x-speakeasy-group: employeeBenefits - "/v1/employee_benefits/{employee_benefit_id}": - get: - summary: Get an employee benefit - operationId: get-v1-employee_benefits-employee_benefit_id - security: - - CompanyAccessAuth: [] - description: |- - Employee benefits represent an employee enrolled in a particular company benefit. It includes information specific to that employee’s enrollment. - - Benefits containing PHI are only visible to applications with the `employee_benefits:read:phi` scope. - - scope: `employee_benefits:read` - tags: - - Employee Benefits - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_benefit_id - in: path - description: The UUID of the employee benefit. - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Benefit" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: retrieve - x-speakeasy-group: employeeBenefits - put: - summary: Update an employee benefit - operationId: put-v1-employee_benefits-employee_benefit_id - security: - - CompanyAccessAuth: [] - description: |- - Employee benefits represent an employee enrolled in a particular company benefit. It includes information specific to that employee's enrollment. - - When the application has the `employee_benefits:write:benefit_type_limited` data scope, the application can only update employee benefits for benefit types that are permitted for the application. - - scope: `employee_benefits:write` - tags: - - Employee Benefits - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_benefit_id - in: path - description: The UUID of the employee benefit. - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Benefit" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Benefit-Update-Request" - required: true - x-speakeasy-group: employeeBenefits - x-speakeasy-name-override: update - delete: - summary: Delete an employee benefit - operationId: delete-v1-employee_benefits-employee_benefit_id - security: - - CompanyAccessAuth: [] - description: |- - Employee benefits represent an employee enrolled in a particular company benefit. It includes information specific to that employee's enrollment. - - When the application has the `employee_benefits:write:benefit_type_limited` data scope, the application can only delete employee benefits for benefit types that are permitted for the application. - - scope: `employee_benefits:write` - tags: - - Employee Benefits - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_benefit_id - in: path - description: The UUID of the employee benefit. - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '204': - description: No Content - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - x-speakeasy-group: employeeBenefits - x-speakeasy-name-override: delete - "/v1/employees/{employee_id}/ytd_benefit_amounts_from_different_company": - get: - summary: Get year-to-date benefit amounts from a different company - operationId: get-employee-ytd-benefit-amounts-from-different-company - security: - - CompanyAccessAuth: [] - description: |- - Retrieves year-to-date benefit amounts that were contributed at a different company for the specified 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. - - scope: `employee_benefits:read` - tags: - - Employee Benefits - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - required: true - description: The UUID of the employee - schema: - type: string - - name: tax_year - in: query - required: false - schema: - type: integer - minimum: 2000 - maximum: 2999 - example: 2024 - description: The tax year for which to retrieve YTD benefit amounts. Defaults to current year if not specified. - x-gusto-rswag: true - responses: - '200': - description: OK - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Ytd-Benefit-Amounts-From-Different-Company" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: employeeBenefits - x-speakeasy-name-override: getYtdBenefitAmountsFromDifferentCompany - post: - summary: Create year-to-date benefit amounts from a different company - operationId: post-employee-ytd-benefit-amounts-from-different-company - security: - - CompanyAccessAuth: [] - description: |- - 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 were employed at a different company. - - This endpoint only supports passing outside contributions for 401(k) benefits. - - scope: `employee_benefits:write` - tags: - - Employee Benefits - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - required: true - description: The UUID of the employee - schema: - type: string - x-gusto-rswag: true - responses: - '204': - description: No Content - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Ytd-Benefit-Amounts-From-Different-Company-Body" - required: true - x-speakeasy-group: employeeBenefits - x-speakeasy-name-override: createYtdBenefitAmountsFromDifferentCompany - "/v1/employees/{employee_id}/garnishments": - get: - summary: Get garnishments for an employee - operationId: get-v1-employees-employee_id-garnishments - security: - - CompanyAccessAuth: [] - description: |- - Garnishments, or employee deductions, are fixed amounts or percentages deducted from an employee’s pay. They can be deducted a specific number of times or on a recurring basis. Garnishments can also have maximum deductions on a yearly or per-pay-period bases. Common uses for garnishments are court-ordered payments for child support or back taxes. Some companies provide loans to their employees that are repaid via garnishments. - - scope: `garnishments:read` - tags: - - Garnishments - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - - name: page - in: query - required: false - description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - schema: - type: integer - - name: per - in: query - required: false - description: Number of objects per page. For majority of endpoints will default to 25 - schema: - type: integer - x-gusto-rswag: true - responses: - '200': - description: Example response - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Garnishment" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: list - post: - summary: Create a garnishment - operationId: post-v1-employees-employee_id-garnishments - security: - - CompanyAccessAuth: [] - description: |- - Garnishments, or employee deductions, are fixed amounts or percentages deducted from an employee’s pay. They can be deducted a specific number of times or on a recurring basis. Garnishments can also have maximum deductions on a yearly or per-pay-period bases. Common uses for garnishments are court-ordered payments for child support or back taxes. Some companies provide loans to their employees that are repaid via garnishments. - - scope: `garnishments:write` - tags: - - Garnishments - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '201': - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Garnishment" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Garnishment-Request" - required: true - x-speakeasy-name-override: create - "/v1/garnishments/{garnishment_id}": - get: - summary: Get a garnishment - operationId: get-v1-garnishments-garnishment_id - security: - - CompanyAccessAuth: [] - description: |- - Garnishments, or employee deductions, are fixed amounts or percentages deducted from an employee’s pay. They can be deducted a specific number of times or on a recurring basis. Garnishments can also have maximum deductions on a yearly or per-pay-period bases. Common uses for garnishments are court-ordered payments for child support or back taxes. Some companies provide loans to their employees that are repaid via garnishments. - - scope: `garnishments:read` - tags: - - Garnishments - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: garnishment_id - in: path - description: The UUID of the garnishment - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Garnishment" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: get - put: - summary: Update a garnishment - operationId: put-v1-garnishments-garnishment_id - security: - - CompanyAccessAuth: [] - description: |- - Garnishments, or employee deductions, are fixed amounts or percentages deducted from an employee’s pay. They can be deducted a specific number of times or on a recurring basis. Garnishments can also have maximum deductions on a yearly or per-pay-period bases. Common uses for garnishments are court-ordered payments for child support or back taxes. Some companies provide loans to their employees that are repaid via garnishments. - - scope: `garnishments:write` - tags: - - Garnishments - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: garnishment_id - in: path - description: The UUID of the garnishment - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Garnishment" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Update-Garnishment-Request" - required: true - x-speakeasy-name-override: update - "/v1/garnishments/child_support": - get: - summary: Get child support garnishment data - operationId: get-v1-garnishments-child_support - security: - - CompanyAccessAuth: [] - description: |- - Agency data and requirements to be used for creating child support garnishments - - scope: `garnishments:read` - tags: - - Garnishments - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Child-Support-Data" - x-speakeasy-name-override: getChildSupportData - "/v1/employees/{employee_id}/i9_authorization": - get: - summary: Get an employee's I-9 authorization - operationId: get-v1-employees-employee_id-i9_authorization - security: - - CompanyAccessAuth: [] - description: |- - An employee's I-9 authorization stores information about an employee's authorization status and I-9 signatures, information required to fill out the Form I-9 for employment eligibility verification. - - **NOTE:** The `form_uuid` in responses from this endpoint can be used to retrieve the PDF version of the I-9. See the "get employee form PDF" request for more details. - - ### Related guides - - [I-9 employment verification](doc:i-9-employment-verification) - - scope: `i9_authorizations:read` - tags: - - I-9 Verification - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/I9-Authorization" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: i9Verification - x-speakeasy-name-override: getAuthorization - put: - summary: Create or update an employee's I-9 authorization - operationId: put-v1-employees-employee_id-i9_authorization - security: - - CompanyAccessAuth: [] - description: |- - An employee's I-9 authorization stores information about an employee's authorization status, as well as signatures and other information required to complete the Form I-9 for employment eligibility verification. - - If the version is supplied and the employee I-9 authorization exists, this endpoint acts as an update. Otherwise, it will create an employee I-9 authorization. - - Validations on this endpoint are conditional: - * `document_type` may be required, depending on `authorization_status`. - * Valid formats for `document_number` vary, depending on `document_type`. - * `country` is only allowed with `document_type: 'foreign_passport'`. - * `expiration_date` is only allowed with `authorization_status: 'alien'`. - - > ℹ️ Unneeded information is automatically removed during updates. - > - > If an update causes some formerly-required fields to be unneeded, the now-unneeded data will be removed automatically. - > - > **Example:** Updating `authorization_status` from `alien` to `citizen` will cause any data in `document_type`, `document_number`, `country`, and `expiration_date` to be removed, since these fields are unused for `authorization_status:'citizen'`. - - Detailed instructions for completing Form I-9 can be found at https://www.uscis.gov/sites/default/files/document/forms/i-9instr.pdf - - ### Related guides - - [I-9 employment verification](doc:i-9-employment-verification) - - scope: `i9_authorizations:write` - tags: - - I-9 Verification - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/I9-Authorization" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/I9-Authorization-Request-Body" - required: true - x-speakeasy-name-override: update - x-speakeasy-group: i9Verification - "/v1/employees/{employee_id}/i9_authorization/document_options": - get: - summary: Get an employee's I-9 verification document options - operationId: get-v1-employees-employee_id-i9_authorization-document_options - security: - - CompanyAccessAuth: [] - description: |- - An employee's I-9 verification documents are the documents an employee has provided the employer to verify their identity and authorization to work in the United States. This endpoint returns the possible document options based on the employee's authorization status. These options can then be used to create the I-9 verification documents. - - ### Related guides - - [I-9 employment verification](doc:i-9-employment-verification) - - scope: `i9_authorizations:read` - tags: - - I-9 Verification - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/I9-Authorization-Document-Option" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: i9Verification - x-speakeasy-name-override: getDocumentOptions - "/v1/employees/{employee_id}/i9_authorization/documents": - get: - summary: Get an employee's I-9 verification documents - operationId: get-v1-employees-employee_id-i9_authorization-documents - security: - - CompanyAccessAuth: [] - description: |- - An employee's I-9 verification documents are the documents an employee has provided the employer to verify their identity and authorization to work in the United States. - - ### Related guides - - [I-9 employment verification](doc:i-9-employment-verification) - - scope: `i9_authorizations:read` - tags: - - I-9 Verification - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/I9-Authorization-Document" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: i9Verification - x-speakeasy-name-override: getDocuments - put: - summary: Create an employee's I-9 authorization verification documents - operationId: put-v1-employees-employee_id-i9_authorization-documents - security: - - CompanyAccessAuth: [] - description: "An employee's I-9 verification documents are the documents an employee has provided the employer to verify their identity and authorization to work in the United States.\n\nUse the [document options endpoint](ref:get-v1-employees-employee_id-i9_authorization-document_options) to get the possible document types and titles, which can vary depending on the employee's authorization status.\n\n> \U0001F6A7 Every request must contain the complete list of documents for the Employee.\n>\n> Every request to this endpoint removes any previous verification document records for the employee.\n\n### Related guides\n- [I-9 employment verification](doc:i-9-employment-verification)\n\nscope: `i9_authorizations:manage`" - tags: - - I-9 Verification - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '201': - description: Created - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/I9-Authorization-Document" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/I9-Authorization-Documents-Request-Body" - required: true - x-speakeasy-group: i9Verification - x-speakeasy-name-override: createDocuments - "/v1/employees/{employee_id}/i9_authorization/documents/{document_id}": - delete: - summary: Delete an employee's I-9 verification document - operationId: delete-v1-employees-employee_id-i9_authorization-documents-document_id - security: - - CompanyAccessAuth: [] - description: |- - An employee's I-9 verification documents are the documents an employee has provided the employer to verify their identity and authorization to work in the United States. This endpoint deletes a specific verification document. - - ### Related guides - - [I-9 employment verification](doc:i-9-employment-verification) - - scope: `i9_authorizations:manage` - tags: - - I-9 Verification - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - - name: document_id - in: path - description: The UUID of the document - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '204': - description: No Content - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - x-speakeasy-group: i9Verification - x-speakeasy-name-override: deleteDocument - "/v1/employees/{employee_id}/i9_authorization/employer_sign": - put: - summary: Employer sign an employee's Form I-9 - operationId: put-v1-employees-employee_id-i9_authorization-employer_sign - security: - - CompanyAccessAuth: [] - description: |- - Sign an employee's Form I-9 as an employer. Once the form is signed, the employee's I-9 authorization is considered complete and cannot be modified. - - ### Prerequisites - Before calling this endpoint: - 1. The employee must have a completed [I-9 authorization](ref:put-v1-employees-employee_id-i9_authorization) - 2. The employee must have signed the Form I-9 - 3. [I-9 verification documents](ref:put-v1-employees-employee_id-i9_authorization-documents) must be submitted - - ### Related guides - - [I-9 employment verification](doc:i-9-employment-verification) - - scope: `i9_authorizations:manage` - tags: - - I-9 Verification - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - - name: x-gusto-client-ip - in: header - required: false - schema: - type: string - description: Optional header to supply the IP address. This can be used to supply the IP address for signature endpoints instead of the signed_by_ip_address parameter. - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/I9-Authorization" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/I9-Authorization-Employer-Sign-Request-Body" - required: true - x-speakeasy-group: i9Verification - x-speakeasy-name-override: employerSign - "/v1/plaid/processor_token": - post: - summary: Create a bank account from a plaid processor token - operationId: post-v1-plaid-processor_token - security: - - CompanyAccessAuth: [] - description: "This endpoint creates a new **verified** bank account by using a plaid processor token to retrieve its information.\n\n> \U0001F4D8\n> To create a token please use the [plaid api](https://plaid.com/docs/api/processors/#processortokencreate) and select \"gusto\" as processor.\n\n> \U0001F6A7 Warning - Company Bank Accounts\n>\n> If a default company bank account exists, it will be disabled and the new bank account will replace it as the company's default funding method.\n\nscope: `plaid_processor:write`" - tags: - - Bank Accounts - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '201': - description: A JSON object containing bank information - content: - application/json: - schema: - "$ref": "#/components/schemas/Company-Bank-Account" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Plaid-Processor-Token-Request" - required: true - x-speakeasy-group: bankAccounts - x-speakeasy-name-override: createFromPlaidToken - "/v1/companies/{company_uuid}/tax_requirements/{state}": - get: - summary: Get tax requirements for a state - operationId: get-v1-companies-company_uuid-tax_requirements-state - security: - - CompanyAccessAuth: [] - description: |- - Retrieves the detailed tax requirements for a specific state. The response includes requirement sets grouped by - category (e.g., registrations, tax rates, deposit schedules), each containing individual requirements with their - current values, labels, and metadata describing the expected input format. - - Use this to build dynamic UIs for tax setup or to read the current tax configuration for a state. - - scope: `company_tax_requirements:read` - tags: - - Tax Requirements - x-gusto-integration-type: - - embedded - parameters: - - name: company_uuid - in: path - required: true - description: The UUID of the company - schema: - type: string - - name: state - in: path - required: true - description: The two-letter state abbreviation - example: CA - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: scheduling - in: query - required: false - description: When true, return "new" requirement sets with valid `effective_from` dates that are available to save new effective-dated values. - schema: - type: boolean - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Tax-Requirements-State" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: taxRequirements - x-speakeasy-name-override: get - put: - summary: Update tax requirements for a state - operationId: put-v1-companies-company_uuid-tax_requirements-state - security: - - CompanyAccessAuth: [] - description: |- - Updates the tax requirement answers for a specific state. Submit answers to the requirement questions returned - by [GET /v1/companies/{company_uuid}/tax_requirements/{state}](ref:get-v1-companies-company_uuid-tax_requirements-state). - - ### Prerequisites - - 1. Retrieve current requirements via [GET /v1/companies/{company_uuid}/tax_requirements/{state}](ref:get-v1-companies-company_uuid-tax_requirements-state) - 2. Ensure that each requirement set that you're updating includes the correct `key`, `state`, and `effective_from` values from the GET response - - scope: `company_tax_requirements:write` - tags: - - Tax Requirements - x-gusto-integration-type: - - embedded - parameters: - - name: company_uuid - in: path - required: true - description: The UUID of the company - schema: - type: string - - name: state - in: path - required: true - description: The two-letter state abbreviation - example: CA - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Success - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - properties: - requirement_sets: - "$ref": "#/components/schemas/Tax-Requirement-Set-Update" - required: true - x-speakeasy-group: taxRequirements - x-speakeasy-name-override: updateState - "/v1/companies/{company_uuid}/tax_requirements": - get: - summary: Get all tax requirements for a company - operationId: get-v1-companies-company_uuid-tax_requirements - security: - - CompanyAccessAuth: [] - description: |- - Retrieves all states for which a company has tax requirements, along with a boolean indicating whether tax setup - is complete for each state. Use this to determine which states still need tax setup during company onboarding. - - scope: `company_tax_requirements:read` - tags: - - Tax Requirements - x-gusto-integration-type: - - embedded - parameters: - - name: company_uuid - in: path - required: true - description: The UUID of the company - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Tax-Requirement-States-List" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: taxRequirements - x-speakeasy-name-override: getAll - "/v1/companies/{company_uuid}/contractor_payments/preview": - get: - summary: Preview contractor payment debit date - operationId: get-companies-company_uuid-contractor_payments-preview - security: - - CompanyAccessAuth: [] - description: |- - Returns a debit_date dependent on the ACH payment speed of the company. - - If the payment method is Check or Historical payment, the debit_date will be the same as the check_date. - - scope: `payrolls:read` - tags: - - Contractor Payments - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - required: true - description: The UUID of the company - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: OK - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor-Payments-Preview" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor-Payments-Preview-Body" - required: true - x-speakeasy-name-override: preview - x-speakeasy-group: contractorPayments - "/v1/time_off_policies/{time_off_policy_uuid}": - get: - summary: Get a time off policy - operationId: get-v1-time_off_policies-time_off_policy_uuid - security: - - CompanyAccessAuth: [] - description: |- - Get a time off policy - - scope: `time_off_policies:read` - tags: - - Time Off Policies - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: time_off_policy_uuid - in: path - description: The UUID of the time off policy - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Time-Off-Policy" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: timeOffPolicies - x-speakeasy-name-override: get - put: - summary: Update a time off policy - operationId: put-v1-time_off_policies-time_off_policy_uuid - security: - - CompanyAccessAuth: [] - description: |- - Update a time off policy - - scope: `time_off_policies:write` - tags: - - Time Off Policies - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: time_off_policy_uuid - in: path - description: The UUID of the time off policy - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Time-Off-Policy" - '422': - description: Unlimited Policy updated with accrual rate - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - requestBody: - content: - application/json: - schema: - allOf: - - "$ref": "#/components/schemas/Versionable-Required" - - "$ref": "#/components/schemas/Time-Off-Policy-Update-Request" - required: true - x-speakeasy-group: timeOffPolicies - x-speakeasy-name-override: update - "/v1/companies/{company_uuid}/time_off_policies": - get: - summary: Get all time off policies for a company - operationId: get-v1-companies-company_uuid-time_off_policies - security: - - CompanyAccessAuth: [] - description: |- - Get all time off policies for a company - - scope: `time_off_policies:read` - tags: - - Time Off Policies - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Time-Off-Policy" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: timeOffPolicies - x-speakeasy-name-override: getAll - post: - summary: Create a time off policy - operationId: post-v1-companies-company_uuid-time_off_policies - security: - - CompanyAccessAuth: [] - description: |- - Create a time off policy - - scope: `time_off_policies:write` - tags: - - Time Off Policies - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '201': - description: created - content: - application/json: - schema: - "$ref": "#/components/schemas/Time-Off-Policy" - '422': - description: Policy name required - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Time-Off-Policy-Request" - required: true - x-speakeasy-name-override: create - x-speakeasy-group: timeOffPolicies - "/v1/time_off_policies/{time_off_policy_uuid}/add_employees": - put: - summary: Add employees to a time off policy - operationId: put-v1-time_off_policies-time_off_policy_uuid-add_employees - security: - - CompanyAccessAuth: [] - description: |- - 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` - tags: - - Time Off Policies - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: time_off_policy_uuid - in: path - description: The UUID of the time off policy - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Time-Off-Policy" - '422': - description: Add employees with no employees - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - required: - - employees - properties: - employees: - type: array - items: - type: object - required: - - uuid - properties: - uuid: - type: string - description: The UUID of the employee - balance: - type: - - string - - 'null' - description: The starting balance for the employee - required: true - x-speakeasy-group: timeOffPolicies - x-speakeasy-name-override: addEmployees - "/v1/time_off_policies/{time_off_policy_uuid}/remove_employees": - put: - summary: Remove employees from a time off policy - operationId: put-v1-time_off_policies-time_off_policy_uuid-remove_employees - security: - - CompanyAccessAuth: [] - description: |- - Remove employees from a time off policy - - scope: `time_off_policies:write` - tags: - - Time Off Policies - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: time_off_policy_uuid - in: path - description: The UUID of the time off policy - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Time-Off-Policy" - '422': - description: Remove employees with no employees - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - required: - - employees - properties: - employees: - type: array - items: - type: object - required: - - uuid - properties: - uuid: - type: string - description: The UUID of the employee - required: true - x-speakeasy-group: timeOffPolicies - x-speakeasy-name-override: removeEmployees - "/v1/companies/{company_uuid}/suspensions": - get: - summary: Get suspensions for this company - operationId: get-companies-company_uuid-suspensions - security: - - CompanyAccessAuth: [] - description: "Get existing suspension records for this company. A company may have multiple suspension records if they have suspended their Gusto account more than once.\n\n>\U0001F4D8 To check if company is already suspended\n>\n> To determine if a company is _currently_ suspended, use the `is_suspended` and `company_status` fields in the [Get a company](https://docs.gusto.com/embedded-payroll/reference/get-v1-companies) endpoint.\n\nscope: `company_suspensions:read`" - tags: - - Companies - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - required: true - description: The UUID of the company - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful response - content: - application/json: - schema: - "$ref": "#/components/schemas/Company-Suspension-List" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: companies.suspensions - x-speakeasy-name-override: get - post: - summary: Suspend a company's account - operationId: post-companies-company_uuid-suspensions - security: - - CompanyAccessAuth: [] - description: |- - Use this endpoint to suspend a company. After suspension, company will no longer be able to run payroll but will retain access to their information, such as retrieving employee info or retrieving past payrolls. - - scope: `company_suspensions:write` - tags: - - Companies - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - required: true - description: The UUID of the company - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful response - content: - application/json: - schema: - "$ref": "#/components/schemas/Company-Suspension" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Company-Suspension-Creation-Errors" - requestBody: - content: - application/json: - schema: - type: object - required: - - file_quarterly_forms - - file_yearly_forms - - reconcile_tax_method - - reason - properties: - file_quarterly_forms: - type: boolean - description: Should Gusto file quarterly tax forms on behalf of the company? The correct answer can depend on why the company is suspending their account, and how taxes are being reconciled. - file_yearly_forms: - type: boolean - description: Should Gusto file yearly tax forms on behalf of the company? The correct answer can depend on why the company is suspending their account, and how taxes are being reconciled. - reconcile_tax_method: - type: string - enum: - - pay_taxes - - refund_taxes - description: How Gusto will handle taxes already collected. - comments: - type: string - description: User-supplied comments describing why they are suspending their account. Required if the user is leaving for another provider and selects "other" instead of a defined provider. - reason: - type: string - enum: - - switching_provider - - shutting_down - - acquired - - no_more_employees - - changing_ein_or_entity_type - description: "Explanation for why the company is suspending their account.\n\n> \U0001F6A7 FEIN or entity type changes require Customer Support\n> If a company is switching FEIN or changing their entity type, this change must be performed by Gusto Customer Support and cannot be performed via the API at this time.\n" - leaving_for: - type: string - enum: - - accountant - - adp - - adp_total_source - - bamboo_hr - - bank_or_financial_institution - - check - - deel - - gusto_com - - homebase - - insperity - - intuit_or_quickbooks - - justworks - - manual - - namely - - onpay - - other - - oyster - - patriot - - paychex - - paycom - - paylocity - - remote - - rippling - - square - - surepayroll - - trinet - - velocity_global - - zenefits - description: "The competitor the company is switching to. Required if `reason` is `'switching_provider'`.\n\n> \U0001F6A7 Switching to Gusto requires Customer Support\n> If `'gusto_com'` is selected, this change must be completed by Gusto Customer Support and cannot be performed via the API. This endpoint will return a 422 error in that case.\n" - required: true - x-speakeasy-group: companies.suspensions - x-speakeasy-name-override: suspend - "/v1/companies/{company_uuid}/holiday_pay_policy": - get: - summary: Get a company's holiday pay policy - operationId: get-v1-companies-company_uuid-holiday_pay_policy - security: - - CompanyAccessAuth: [] - description: |- - Get a company's holiday pay policy - - scope: `holiday_pay_policies:read` - tags: - - Holiday Pay Policies - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Holiday-Pay-Policy" - '204': - description: no policy exists - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: holidayPayPolicies - x-speakeasy-name-override: get - post: - summary: Create a holiday pay policy for a company - operationId: post-v1-companies-company_uuid-holiday_pay_policy - security: - - CompanyAccessAuth: [] - description: |- - Create a holiday pay policy for a company - - scope: `holiday_pay_policies:write` - tags: - - Holiday Pay Policies - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Holiday-Pay-Policy" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: company already has a policy - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Holiday-Pay-Policy-Request" - x-speakeasy-group: holidayPayPolicies - x-speakeasy-name-override: create - put: - summary: Update a company's holiday pay policy - operationId: put-v1-companies-company_uuid-holiday_pay_policy - security: - - CompanyAccessAuth: [] - description: |- - Update a company's holiday pay policy - - scope: `holiday_pay_policies:write` - tags: - - Holiday Pay Policies - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Holiday-Pay-Policy" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: no policy exists - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - allOf: - - "$ref": "#/components/schemas/Versionable-Required" - - "$ref": "#/components/schemas/Holiday-Pay-Policy-Request" - required: true - x-speakeasy-group: holidayPayPolicies - x-speakeasy-name-override: update - delete: - summary: Delete a company's holiday pay policy - operationId: delete-v1-companies-company_uuid-holiday_pay_policy - security: - - CompanyAccessAuth: [] - description: |- - Delete a company's holiday pay policy - - scope: `holiday_pay_policies:write` - tags: - - Holiday Pay Policies - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '204': - description: successful - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: no policy exists - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - x-speakeasy-group: holidayPayPolicies - x-speakeasy-name-override: delete - "/v1/companies/{company_uuid}/holiday_pay_policy/add": - put: - summary: Add employees to a company's holiday pay policy - operationId: put-v1-companies-company_uuid-holiday_pay_policy-add - security: - - CompanyAccessAuth: [] - description: |- - Add employees to a company's holiday pay policy - - scope: `holiday_pay_policies:write` - tags: - - Holiday Pay Policies - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Holiday-Pay-Policy" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: no policy exists - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - allOf: - - "$ref": "#/components/schemas/Versionable-Required" - - type: object - required: - - employees - properties: - employees: - type: array - description: An array of employee objects, each containing an employee_uuid. - items: - type: object - properties: - uuid: - type: string - required: true - x-speakeasy-group: holidayPayPolicies - x-speakeasy-name-override: addEmployees - "/v1/companies/{company_uuid}/holiday_pay_policy/remove": - put: - summary: Remove employees from a company's holiday pay policy - operationId: put-v1-companies-company_uuid-holiday_pay_policy-remove - security: - - CompanyAccessAuth: [] - description: |- - Remove employees from a company's holiday pay policy - - scope: `holiday_pay_policies:write` - tags: - - Holiday Pay Policies - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Holiday-Pay-Policy" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: no policy exists - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - allOf: - - "$ref": "#/components/schemas/Versionable-Required" - - type: object - required: - - employees - properties: - employees: - type: array - description: An array of employee objects, each containing an employee_uuid. - items: - type: object - properties: - uuid: - type: string - required: true - x-speakeasy-group: holidayPayPolicies - x-speakeasy-name-override: removeEmployees - "/v1/companies/{company_uuid}/paid_holidays": - get: - summary: Preview a company's paid holidays - operationId: get-companies-company_uuid-paid_holidays - security: - - CompanyAccessAuth: [] - description: |- - Preview a company's paid holidays - - If a year is passed, paid holidays for that year will be returned. Otherwise, paid holidays for the next three years will be returned. - - scope: `holiday_pay_policies:read` - tags: - - Holiday Pay Policies - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: year - in: query - required: false - description: If a year is passed, paid holidays for that year will be returned. Otherwise, paid holidays for the next three years will be returned. - schema: - type: string - example: '2023' - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Paid-Holiday" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: holidayPayPolicies - x-speakeasy-name-override: previewPaidHolidays - "/v1/time_off_policies/{time_off_policy_uuid}/balance": - put: - summary: Update employee time off balances - operationId: put-v1-time_off_policies-time_off_policy_uuid-balance - security: - - CompanyAccessAuth: [] - description: |- - Updates time off hours balances for employees for a time off policy. - - scope: `time_off_policies:write` - tags: - - Time Off Policies - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: time_off_policy_uuid - in: path - description: The UUID of the time off policy - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Time-Off-Policy" - '422': - description: Unlimited policy balance update - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - required: - - employees - properties: - employees: - type: array - items: - type: object - required: - - uuid - - balance - properties: - uuid: - type: string - description: The UUID of the employee - balance: - type: string - description: The new balance for the employee - required: true - x-speakeasy-group: timeOffPolicies - x-speakeasy-name-override: updateBalance - "/v1/time_off_policies/{time_off_policy_uuid}/deactivate": - put: - summary: Deactivate a time off policy - operationId: put-v1-time_off_policies-time_off_policy_uuid-deactivate - security: - - CompanyAccessAuth: [] - description: |- - Deactivate a time off policy - - scope: `time_off_policies:write` - tags: - - Time Off Policies - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: time_off_policy_uuid - in: path - description: The UUID of the time off policy - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Time-Off-Policy" - '422': - description: Policy has pending time off requests - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: timeOffPolicies - x-speakeasy-name-override: deactivate - "/v1/notifications/{notification_uuid}": - get: - summary: Get a notification's details - operationId: get-notifications-notification_uuid - security: - - CompanyAccessAuth: [] - description: |- - Upon receiving a notification webhook event, use this endpoint to fetch the notification's details. The notification details include basic suggested content that can help you build notifications in your platform. - - Note: partners are responsible for the delivery and any custom state management of notifications in their application. Refer to our [partner notification guide](https://docs.gusto.com/embedded-payroll/docs/partner-notifications) for more details. - - If the notification UUID is not found, the response will be 404 Not Found. If the notification's supporting data is no longer valid, the response will be 422 Unprocessable Entity. - - scope: `notifications:read` - tags: - - Notifications - x-gusto-integration-type: - - embedded - parameters: - - name: notification_uuid - in: path - description: The notification entity_uuid - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Notification" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - x-speakeasy-name-override: getDetails - "/v1/events": - get: - summary: Get all events - operationId: get-events - security: - - SystemAccessAuth: [] - description: "Fetch all events, going back up to 30 days, that your partner application has the required scopes for. Note that a partner does NOT have to have verified webhook subscriptions in order to utilize this endpoint.\n\n\U0001F4D8 System Access Authentication\n\nThis endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access)\n\nscope: `events:read`" - tags: - - Events - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: starting_after_uuid - in: query - required: false - description: A cursor for pagination. Returns all events occuring after the specified UUID (exclusive). Events are sorted according to the provided sort_order param. - schema: - type: string - - name: resource_uuid - in: query - required: false - description: The UUID of the company. If not specified, will return all events for all companies. - schema: - type: string - - name: limit - in: query - required: false - description: Limits the number of objects returned in a single response, between 1 and 100. The default is 25 - schema: - type: string - - name: event_type - in: query - required: false - description: A string containing the exact event name (e.g. `employee.created`), or use a wildcard match to filter for a group of events (e.g. `employee.*`, `*.created`, `notification.*.created` etc.) - schema: - type: string - - name: sort_order - in: query - required: false - schema: - type: string - enum: - - asc - - desc - description: A string indicating whether to sort resulting events in ascending (asc) or descending (desc) chronological order. Events are sorted by their `timestamp`. Defaults to asc if left empty. - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Event-List" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - x-speakeasy-name-override: get - "/v1/companies/{company_uuid}/information_requests": - get: - summary: Get all information requests for a company - operationId: get-information-requests - security: - - CompanyAccessAuth: [] - description: |- - Fetch all information requests for a company. - - scope: `information_requests:read` - tags: - - Information Requests - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: sort_by - in: query - required: false - schema: - type: string - pattern: "^(payroll_blocker|status|type)(:(asc|desc))?(,(payroll_blocker|status|type)(:(asc|desc))?)*$" - example: payroll_blocker:asc - description: 'Sort by one or more fields. Options: payroll_blocker, status, type. Append `:asc` or `:desc` to specify direction (e.g., `payroll_blocker:asc`). Defaults to ascending.' - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Information-Request" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - "/v1/companies/{company_uuid}/recovery_cases": - get: - summary: Get all recovery cases for a company - operationId: get-recovery-cases - security: - - CompanyAccessAuth: [] - description: |- - Fetch all recovery cases for a company. - - scope: `recovery_cases:read` - tags: - - Recovery Cases - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: page - in: query - required: false - description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - schema: - type: integer - - name: per - in: query - required: false - description: Number of objects per page. For majority of endpoints will default to 25 - schema: - type: integer - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Recovery-Case" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: recoveryCases - x-speakeasy-name-override: get - "/v1/recovery_cases/{recovery_case_uuid}/redebit": - put: - summary: Initiate a redebit for a recovery case - operationId: redebit-recovery-case - security: - - CompanyAccessAuth: [] - description: |- - After resolving the underlying bank error, initiate a redebit for an open recovery case. This submission is asynchronous and a successful request responds with a 202 HTTP status. - - It may take up to four business days for the ACH debit to process; in the meantime, the status of the recovery case will be in the `initiated_redebit` state. When funds are successfully redebited, the recovery case is transitioned to the `recovered` state. - - If the company has exceeded maximum redebit attempts, or if the recovery case is not in a redebitable state, the response will be 422 Unprocessable Entity. - - scope: `recovery_cases:write` - tags: - - Recovery Cases - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: recovery_case_uuid - in: path - required: true - description: The UUID of the recovery case - schema: - type: string - x-gusto-rswag: true - responses: - '202': - description: Accepted - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - x-speakeasy-group: recoveryCases - x-speakeasy-name-override: redebit - "/v1/companies/{company_uuid}/ach_transactions": - get: - summary: Get all ACH transactions for a company - operationId: get-ach-transactions - security: - - CompanyAccessAuth: [] - description: |- - Fetches all ACH transactions for a company. - - scope: `ach_transactions:read` - tags: - - ACH Transactions - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - required: true - description: The UUID of the company - schema: - type: string - - name: contractor_payment_uuid - in: query - required: false - description: The UUID of the contractor payment - schema: - type: string - - name: payroll_uuid - in: query - required: false - description: The UUID of the payroll - schema: - type: string - - name: transaction_type - in: query - required: false - description: Used to filter the ACH transactions to only include those with a specific transaction type, such as "Credit employee pay". - schema: - type: string - - name: payment_direction - in: query - required: false - description: Used to filter the ACH transactions to only include those with a specific payment direction, either "credit" or "debit". - schema: - type: string - - name: page - in: query - required: false - description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - schema: - type: integer - - name: per - in: query - required: false - description: Number of objects per page. For majority of endpoints will default to 25 - schema: - type: integer - x-gusto-rswag: true - responses: - '200': - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Ach-Transaction-List" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: achTransactions - x-speakeasy-name-override: getAll - "/v1/wire_in_requests/{wire_in_request_uuid}": - get: - summary: Get a single Wire In Request - operationId: get-wire_in_requests-wire_in_request_uuid - security: - - CompanyAccessAuth: [] - description: |- - Fetch a Wire In Request. - - scope: `payrolls:read` - tags: - - Wire In Requests - x-gusto-integration-type: - - embedded - parameters: - - name: wire_in_request_uuid - in: path - description: The UUID of the Wire In Request - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Wire-In-Request" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: wireInRequests - x-speakeasy-name-override: get - put: - summary: Submit a wire in request - operationId: put-wire_in_requests-wire_in_request_uuid - security: - - CompanyAccessAuth: [] - description: |- - Submit a wire in request for a payment - - scope: `payrolls:run` - tags: - - Wire In Requests - x-gusto-integration-type: - - embedded - parameters: - - name: wire_in_request_uuid - in: path - description: The UUID of the Wire In Request - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Wire-In-Request" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Wire-In-Request-Update-Request-Body" - required: true - x-speakeasy-group: wireInRequests - x-speakeasy-name-override: submit - "/v1/companies/{company_uuid}/wire_in_requests": - get: - summary: Get all Wire In Requests for a company - operationId: get-companies-company_uuid-wire_in_request_uuid - security: - - CompanyAccessAuth: [] - description: |- - Fetches all Wire In Requests for a company. - - scope: `payrolls:read` - tags: - - Wire In Requests - x-gusto-integration-type: - - embedded - parameters: - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: page - in: query - required: false - description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - schema: - type: integer - - name: per - in: query - required: false - description: Number of objects per page. For majority of endpoints will default to 25 - schema: - type: integer - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Wire-In-Request-List" - x-speakeasy-group: wireInRequests - x-speakeasy-name-override: list - "/v1/companies/{company_uuid}/notifications": - get: - summary: Get notifications for company - operationId: get-company-notifications - security: - - CompanyAccessAuth: [] - description: |- - Returns all notifications relevant for the given company. - - scope: `notifications:read` - tags: - - Notifications - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: company_uuid - in: path - description: The UUID of the company for which you would like to return notifications - required: true - schema: - type: string - - name: status - in: query - schema: - type: string - enum: - - open - - expired - - resolved - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: page - in: query - required: false - description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - schema: - type: integer - - name: per - in: query - required: false - description: Number of objects per page. For majority of endpoints will default to 25 - schema: - type: integer - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Notifications-List" - "/v1/companies/{company_id}/contractors/payment_details": - get: - summary: List contractor payment details - operationId: get-v1-companies-company_id-contractors-payment_details - security: - - CompanyAccessAuth: [] - description: |- - Get payment details for contractors in a company. This endpoint returns a list of all contractors - associated with the specified company, including their payment methods and bank account details - if they are paid via direct deposit. - - For contractors paid by direct deposit, the response includes their bank account information - with sensitive data masked for security. The payment details also include information about - how their payments are split if they have multiple bank accounts configured. - - For contractors paid by check, only the basic payment method information is returned. - - ### Response Details - - For direct deposit contractors: - - Bank account details (masked) - - Payment splits configuration - - Routing numbers - - Account types - - For check payments: - - Basic payment method designation - - ### Common Use Cases - - Fetching contractor payment information for payroll processing - - Verifying contractor payment methods - - Reviewing payment split configurations - - `encrypted_account_number` is available only with the additional scope `contractor_payment_methods:read:account_numbers`. - - scope: `contractor_payment_methods:read` - tags: - - Contractors - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: company_id - in: path - description: The UUID of the company. This identifies the company whose contractor payment details you want to retrieve. - required: true - schema: - type: string - - name: contractor_uuid - in: query - required: false - description: Optional filter to get payment details for a specific contractor. When provided, the response will only include payment details for this contractor. - schema: - type: string - - name: contractor_payment_group_uuid - in: query - required: false - description: 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. - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor-Payment-Details-List" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - "/v1/contractor_payment_groups/{id}/partner_disbursements": - get: - summary: Get partner disbursements for a contractor payment group - operationId: get-v1-contractor_payment_groups-id-partner_disbursements - security: - - CompanyAccessAuth: [] - description: |- - Get partner disbursements for a specific contractor payment group. - - scope: `partner_disbursements:read` - tags: - - Contractor Payment Groups - x-gusto-integration-type: - - embedded - parameters: - - name: id - in: path - required: true - description: The UUID of the contractor payment group - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor-Payment-Group-Partner-Disbursements" - '404': - description: | - Not Found - - The requested contractor payment group does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - patch: - summary: Update partner disbursements for a contractor payment group - operationId: patch-v1-contractor_payment_groups-id-partner_disbursements - security: - - CompanyAccessAuth: [] - description: |- - Update partner disbursements for a specific contractor payment group. - - scope: `partner_disbursements:write` - tags: - - Contractor Payment Groups - x-gusto-integration-type: - - embedded - parameters: - - name: id - in: path - required: true - description: The UUID of the contractor payment group - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor-Payment-Group-Partner-Disbursements" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - properties: - disbursements: - type: array - items: - type: object - properties: - contractor_payment_uuid: - type: string - description: UUID of the contractor payment - example: 9f8e7d6c-5b4a-3928-1c2d-3e4f5a6b7c8d - payment_method: - type: string - enum: - - Direct Deposit - - Check - description: Payment method for the contractor - payment_status: - type: string - enum: - - Pending - - Paid - - Not partner managed - - Converted to check - description: Status of the payment disbursement - required: - - contractor_payment_uuid - required: - - disbursements - "/v1/companies/{company_id}/payrolls/{id}/partner_disbursements": - get: - summary: Get partner disbursements for a payroll - operationId: get-v1-companies-company_id-payrolls-id-partner_disbursements - security: - - CompanyAccessAuth: [] - description: |- - Get partner disbursements for a specific payroll. - - scope: `partner_disbursements:read` - tags: - - Payrolls - x-gusto-integration-type: - - embedded - parameters: - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: id - in: path - description: The UUID of the payroll - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Payroll-Partner-Disbursements" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - patch: - summary: Update partner disbursements for a payroll - operationId: patch-v1-companies-company_id-payrolls-id-partner_disbursements - security: - - CompanyAccessAuth: [] - description: |- - Update partner disbursements for a specific payroll. - - scope: `partner_disbursements:write` - tags: - - Payrolls - x-gusto-integration-type: - - embedded - parameters: - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: id - in: path - description: The UUID of the payroll - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Payroll-Partner-Disbursements" - '422': - description: mixed single and multiple errors example - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - properties: - disbursements: - type: array - items: - type: object - properties: - employee_uuid: - type: string - description: UUID of the employee - example: 1a2b3c4d-5e6f-7890-abcd-ef1234567890 - payment_method: - type: string - enum: - - Direct Deposit - - Check - description: Payment method for the employee - payment_status: - type: string - enum: - - Pending - - Paid - - Not partner managed - - Converted to check - description: Status of the payment disbursement - required: - - employee_uuid - required: - - disbursements - "/v1/companies/{company_id}/bank_accounts/{bank_account_id}": - delete: - summary: Delete a company bank account - operationId: delete-v1-companies-company_id-bank-accounts-bank_account_id - security: - - CompanyAccessAuth: [] - description: |- - This endpoint disables a company bank account. - - A bank account cannot be disabled if it is used for any unprocessed payments. - - scope: `company_bank_accounts:write` - tags: - - Bank Accounts - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: bank_account_id - in: path - description: The UUID of the company bank account - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '204': - description: successful - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: Cannot delete bank account with unfunded payments - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - "/v1/webhooks/health_check": - get: - summary: Get the webhooks health status - operationId: get-v1-webhooks-health_check - security: - - SystemAccessAuth: [] - description: "Returns the health status (`healthy`, `unhealthy`, or `unknown`) of the webhooks system based on the last ten minutes of activity.\n\n\U0001F4D8 System Access Authentication\n\nThis endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access)\n\nscope: `webhook_subscriptions:read`" - tags: - - Webhooks - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Webhooks-Health-Check-Status" - "/v1/employees/{employee_id}/salary_estimates": - post: - summary: Create a salary estimate for an employee - operationId: post-v1-employees-employee_id-salary_estimates - security: - - CompanyAccessAuth: [] - description: |- - Create a salary estimate for an employee. This endpoint helps calculate a reasonable salary for S Corp owners based on their occupation, experience level, location, and business revenue. - - A salary estimate must include: - - Annual net revenue of the business - - ZIP code for location-based salary data - - One or more occupations with experience levels and time percentages (must sum to 100%) - - Only one in-progress salary estimate can exist per employee at a time. If an in-progress estimate already exists, you must either accept it or use the update endpoint. - - scope: `salary_estimates:write` - tags: - - Salary Estimates - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - required: true - description: The UUID of the employee - schema: - type: string - x-gusto-rswag: true - responses: - '201': - description: successfully created - content: - application/json: - schema: - "$ref": "#/components/schemas/Salary-Estimate" - '422': - description: unprocessable entity - invalid parameters - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - required: - - zip_code - - occupations - properties: - annual_net_revenue: - type: - - number - - 'null' - description: The annual net revenue of the business (must be greater than 0) - example: 500000 - zip_code: - type: string - description: The ZIP code for location-based salary calculations - pattern: "^\\d{5}$" - example: '94107' - occupations: - type: array - description: Array of occupations. Time percentages must sum to 100%. - minItems: 1 - items: - type: object - required: - - code - - experience_level - - time_percentage - properties: - code: - type: string - description: Bureau of Labor Statistics (BLS) occupation code - example: '151252' - experience_level: - type: string - description: Experience level for this occupation - enum: - - novice - - intermediate - - average - - skilled - - expert - example: skilled - time_percentage: - type: string - format: float - description: Percentage of time spent in this occupation (as decimal, e.g., 1.0 = 100%) - minimum: 0 - maximum: 1 - example: '1.0' - primary: - type: boolean - description: Whether this is the primary occupation - example: true - required: true - "/v1/salary_estimates/{uuid}": - get: - summary: Get a salary estimate - operationId: get-v1-salary_estimates-id - security: - - CompanyAccessAuth: [] - description: |- - Retrieve a salary estimate by its UUID. Returns the estimated salary calculation along with all occupation details, revenue, and location information. - - scope: `salary_estimates:read` - tags: - - Salary Estimates - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: uuid - in: path - required: true - description: The UUID of the salary estimate - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Salary-Estimate" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - put: - summary: Update a salary estimate - operationId: put-v1-salary_estimates-id - security: - - CompanyAccessAuth: [] - description: |- - Update an existing salary estimate. You can modify the annual net revenue, ZIP code, and occupations. - - The salary estimate must not be finalized (accepted). Once accepted, salary estimates become read-only for record-keeping purposes. - - scope: `salary_estimates:write` - tags: - - Salary Estimates - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: uuid - in: path - required: true - description: The UUID of the salary estimate - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Salary-Estimate" - '422': - description: unprocessable entity - already finalized - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - required: - - zip_code - - occupations - properties: - annual_net_revenue: - type: - - number - - 'null' - description: The annual net revenue of the business (must be greater than 0) - example: 600000 - zip_code: - type: string - description: The ZIP code for location-based salary calculations - pattern: "^\\d{5}$" - example: '94107' - occupations: - type: array - description: Array of occupations. Time percentages must sum to 100%. - minItems: 1 - items: - type: object - required: - - code - - experience_level - - time_percentage - properties: - code: - type: string - description: Bureau of Labor Statistics (BLS) occupation code - example: '151252' - experience_level: - type: string - description: Experience level for this occupation - enum: - - novice - - intermediate - - average - - skilled - - expert - example: expert - time_percentage: - type: string - format: float - description: Percentage of time spent in this occupation (as decimal, e.g., 0.5 = 50%) - minimum: 0 - maximum: 1 - example: '0.6' - primary: - type: boolean - description: Whether this is the primary occupation - example: true - required: true - "/v1/salary_estimates/{uuid}/accept": - post: - summary: Accept a salary estimate - operationId: post-v1-salary_estimates-uuid-accept - security: - - CompanyAccessAuth: [] - description: |- - Accept and finalize a salary estimate. This associates the estimate with an employee job and marks it as accepted. - - Once accepted, the salary estimate becomes read-only for record-keeping purposes. The accepted salary can then be used to set up compensation for the employee. - - scope: `salary_estimates:write` - tags: - - Salary Estimates - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: uuid - in: path - required: true - description: The UUID of the salary estimate - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Salary-Estimate" - '422': - description: unprocessable entity - invalid employee job - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - required: - - employee_job_uuid - properties: - employee_job_uuid: - type: string - description: The UUID of the employee job to associate with this salary estimate - example: 7f5d3d93-6d6f-48c0-9f4e-cd12c2d3e4b2 - required: true - "/v1/salary_estimates/occupations": - get: - summary: Search for BLS occupations - operationId: get-v1-salary_estimates-occupations - security: - - SystemAccessAuth: [] - description: "Search for Bureau of Labor Statistics (BLS) occupations by name or keyword. This endpoint helps users find the appropriate occupation codes to use when creating or updating salary estimates.\n\nReturns a list of matching occupations with their codes, titles, and descriptions.\n\n\U0001F4D8 System Access Authentication\n\nThis endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access)\n\nscope: `salary_estimates:read`" - tags: - - Salary Estimates - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: search - in: query - required: true - description: Search term for occupation (minimum 3 characters) - example: software - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/BLS-Occupation" - '422': - description: unprocessable entity - search term too short - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - "/v1/employees/{employee_id}/recurring_reimbursements": - get: - summary: Get recurring reimbursements for an employee - operationId: get-v1-employees-employee_id-recurring_reimbursements - security: - - CompanyAccessAuth: [] - description: |- - Get all active recurring reimbursements for an employee. - - scope: `reimbursements:read` - tags: - - Reimbursements - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - - name: page - in: query - required: false - description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - schema: - type: integer - - name: per - in: query - required: false - description: Number of objects per page. For majority of endpoints will default to 25 - schema: - type: integer - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Recurring-Reimbursement-List" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - post: - summary: Create a recurring reimbursement - operationId: post-v1-employees-employee_id-recurring_reimbursements - security: - - CompanyAccessAuth: [] - description: |- - Create a recurring reimbursement for an employee. - - scope: `reimbursements:write` - tags: - - Reimbursements - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '201': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Recurring-Reimbursement" - '422': - description: invalid attributes - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - required: - - description - - amount - properties: - description: - type: string - description: The description of the reimbursement - amount: - type: number - description: The dollar amount of the reimbursement - required: true - "/v1/recurring_reimbursements/{id}": - get: - summary: Get a recurring reimbursement - operationId: get-v1-recurring_reimbursements - security: - - CompanyAccessAuth: [] - description: |- - Get a specific recurring reimbursement. - - scope: `reimbursements:read` - tags: - - Reimbursements - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: id - in: path - description: The UUID of the reimbursement - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Recurring-Reimbursement" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - put: - summary: Update a recurring reimbursement - operationId: put-v1-recurring_reimbursements - security: - - CompanyAccessAuth: [] - description: |- - Update a recurring reimbursement. - - scope: `reimbursements:write` - tags: - - Reimbursements - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: id - in: path - description: The UUID of the reimbursement - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Recurring-Reimbursement" - '409': - description: invalid version - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: invalid attributes - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - requestBody: - content: - application/json: - schema: - allOf: - - "$ref": "#/components/schemas/Versionable-Required" - - type: object - properties: - description: - type: string - description: The description of the reimbursement - amount: - type: number - description: The dollar amount of the reimbursement - required: true - delete: - summary: Delete a recurring reimbursement - operationId: delete-v1-recurring_reimbursements - security: - - CompanyAccessAuth: [] - description: |- - Delete (soft delete) a recurring reimbursement for an employee. - - scope: `reimbursements:write` - tags: - - Reimbursements - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: id - in: path - description: The UUID of the reimbursement - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '204': - description: successful - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - "/v1/employees/{employee_uuid}/section603_high_earner_statuses": - get: - summary: Get all Section 603 high earner statuses for an employee - operationId: get-v1-employees-employee_uuid-section603_high_earner_statuses - security: - - CompanyAccessAuth: [] - description: |- - Get all Section 603 high earner statuses for an employee across all years. - - Section 603 of the SECURE 2.0 Act applies to employees aged 50 or older whose prior-year FICA wages exceed the IRS threshold. - These employees are classified as high earners, and their catch-up contributions to pre-tax retirement benefits must be designated as post-tax contributions. - - scope: `employee_benefits:read` - tags: - - Employee Benefits - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: employee_uuid - in: path - description: The UUID of the employee - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: successful - with records - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Section603-High-Earner-Status-List" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - post: - summary: Create a Section 603 high earner status - operationId: post-v1-employees-employee_uuid-section603_high_earner_statuses - security: - - CompanyAccessAuth: [] - description: |- - Create a Section 603 high earner status for an employee for a specific year. - - Section 603 of the SECURE 2.0 Act applies to employees aged 50 or older whose prior-year FICA wages exceed the IRS threshold. - These employees are classified as high earners, and their catch-up contributions to pre-tax retirement benefits must be designated as post-tax contributions. - - scope: `employee_benefits:write` - tags: - - Employee Benefits - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: employee_uuid - in: path - description: The UUID of the employee - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '201': - description: created - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Section603-High-Earner-Status" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '409': - description: conflict - record already exists - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - '422': - description: unprocessable entity - invalid is_high_earner - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Section603-High-Earner-Status-Create-Request" - required: true - "/v1/employees/{employee_uuid}/section603_high_earner_statuses/{effective_year}": - get: - summary: Get a Section 603 high earner status for a specific year - operationId: get-v1-employees-employee_uuid-section603_high_earner_statuses-effective_year - security: - - CompanyAccessAuth: [] - description: |- - Get a Section 603 high earner status for an employee for a specific year. - - Section 603 of the SECURE 2.0 Act applies to employees aged 50 or older whose prior-year FICA wages exceed the IRS threshold. - These employees are classified as high earners, and their catch-up contributions to pre-tax retirement benefits must be designated as post-tax contributions. - - scope: `employee_benefits:read` - tags: - - Employee Benefits - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: employee_uuid - in: path - description: The UUID of the employee - required: true - schema: - type: string - - name: effective_year - in: path - description: The effective year for the Section 603 status - required: true - schema: - type: integer - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Section603-High-Earner-Status" - '404': - description: Not Found - employee does not exist - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: unprocessable entity - invalid effective_year - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - patch: - summary: Update a Section 603 high earner status - operationId: patch-v1-employees-employee_uuid-section603_high_earner_statuses-effective_year - security: - - CompanyAccessAuth: [] - description: |- - Update a Section 603 high earner status for an employee for a specific year. - - Section 603 of the SECURE 2.0 Act applies to employees aged 50 or older whose prior-year FICA wages exceed the IRS threshold. - These employees are classified as high earners, and their catch-up contributions to pre-tax retirement benefits must be designated as post-tax contributions. - - scope: `employee_benefits:write` - tags: - - Employee Benefits - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: employee_uuid - in: path - description: The UUID of the employee - required: true - schema: - type: string - - name: effective_year - in: path - description: The effective year for the Section 603 status - required: true - schema: - type: integer - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Section603-High-Earner-Status" - '404': - description: Not Found - employee does not exist - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: unprocessable entity - invalid is_high_earner - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Section603-High-Earner-Status-Update-Request" - required: true - "/v1/companies/{company_id}/people_batches": - post: - summary: Create a people batch - operationId: post-v1-companies-company_id-people_batches - security: - - CompanyAccessAuth: [] - description: |- - Creates a batch for bulk employee creation. - - The batch is processed asynchronously. Use the returned batch UUID to poll for status and results. - - scope: `people_batches:write` - tags: - - People Batches - x-gusto-integration-type: - - embedded - parameters: - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '201': - description: created - content: - application/json: - schema: - "$ref": "#/components/schemas/People-Batch" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '409': - description: conflict - idempotency key already used - content: - application/json: - schema: - "$ref": "#/components/schemas/People-Batch-Conflict-Error" - '422': - description: unprocessable entity - validation errors - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - required: - - idempotency_key - - batch_action - - batch - properties: - idempotency_key: - type: string - format: uuid - description: A unique identifier to ensure idempotency of the batch request - example: 550e8400-e29b-41d4-a716-446655440000 - batch_action: - type: string - enum: - - create - description: The action to perform on the batch - example: create - batch: - type: array - description: Array of people to create - items: - type: object - required: - - entity_type - - person - properties: - entity_type: - type: string - enum: - - employee - description: The type of entity to create - example: employee - person: - type: object - required: - - external_id - - first_name - - last_name - properties: - external_id: - type: string - description: External identifier for the person - first_name: - type: string - description: Legal first name - last_name: - type: string - description: Legal last name - middle_initial: - type: - - string - - 'null' - maxLength: 1 - minLength: 1 - description: Middle initial - preferred_first_name: - type: - - string - - 'null' - description: Preferred first name - email: - type: - - string - - 'null' - format: email - description: Personal email address - work_email: - type: - - string - - 'null' - format: email - description: Work email address - ssn: - type: - - string - - 'null' - description: 'Social Security Number (format: xxx-xx-xxxx)' - date_of_birth: - type: - - string - - 'null' - format: date - description: Date of birth (YYYY-MM-DD) - self_onboarding: - type: - - boolean - - 'null' - description: Whether the employee will complete their own onboarding - home_address: - type: object - description: Home address for the employee - required: - - street_1 - - city - - state - - zip - properties: - street_1: - type: string - description: Street address line 1 - street_2: - type: string - description: Street address line 2 - city: - type: string - description: City - state: - type: string - description: State abbreviation - zip: - type: string - description: ZIP code - country: - type: string - description: Country (defaults to USA) - work_from_home: - type: boolean - description: If true, a company work address will be created based on this home address and the `work_address` property is not allowed. - work_address: - type: object - description: Specify the company work location for the employee - required: - - location_uuid - properties: - location_uuid: - type: string - format: uuid - description: UUID of an existing company work location - job: - type: object - description: Job details for the employee (required if compensation is provided) - required: - - title - - hire_date - properties: - title: - type: string - description: Job title - hire_date: - type: string - format: date - description: The date when the employee was hired or rehired for the job. - two_percent_shareholder: - type: boolean - description: Whether the employee owns at least 2% of the company. Can only be `true` for S-Corp companies. - state_wc_covered: - type: - - boolean - - 'null' - description: Whether this job is eligible for workers' compensation coverage in the state of Washington (WA). - state_wc_class_code: - type: - - string - - 'null' - description: The risk class code for workers' compensation in Washington state. Please visit [Washington state's Risk Class page](https://www.lni.wa.gov/insurance/rates-risk-classes/risk-classes-for-workers-compensation/risk-class-lookup#/) to learn more. - department: - type: object - description: Department details for the employee - required: - - department_uuid - properties: - department_uuid: - type: string - format: uuid - description: UUID of an existing company department - compensation: - type: object - description: Compensation details for the employee (requires job to be provided) - required: - - rate - - payment_unit - - flsa_status - properties: - rate: - type: string - description: The dollar amount paid per payment unit. - payment_unit: - type: string - enum: - - Hour - - Week - - Month - - Year - - Paycheck - description: The unit accompanying the compensation rate. If the employee is an owner, rate should be `Paycheck`. - flsa_status: - type: string - enum: - - Exempt - - Salaried Nonexempt - - Nonexempt - - Owner - - Commission Only Exempt - - Commission Only Nonexempt - description: 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. If selecting `Owner`, `payment_unit` must be `"Paycheck"`. - bank_accounts: - type: array - description: |- - Creates employee bank account(s) and payment method(s) for direct deposit. Payments can be split across accounts by Percentage or by Amount. If splitting payments by `Percentage`, all splits must have a `split_amount` and the percentages must add up to `100`. - If splitting payments by `Amount`, the priority is set based on the order of the bank accounts in the array and the last bank account is the remainder account (should have `split_amount` set to `null`). - items: - type: object - required: - - type - - account_type - - routing_number - - account_number - - split_by - properties: - name: - type: - - string - - 'null' - description: Account nickname - account_type: - type: string - enum: - - Checking - - Savings - description: Type of bank account - routing_number: - type: string - description: Bank routing number - account_number: - type: string - description: Bank account number - type: - type: string - enum: - - Direct Deposit - description: Payment type (must be Direct Deposit) - split_by: - type: string - enum: - - Amount - - Percentage - description: How to split deposits, must be the same for all bank accounts. If split_by is `Percentage`, then the split_amounts must add up to exactly 100. - split_amount: - type: - - string - - 'null' - description: Split amount in percentage or CENTS (`null` for remainder account) - required: true - "/v1/people_batches/{people_batch_uuid}": - get: - summary: Get a people batch - operationId: get-v1-people_batches-people_batch_uuid - security: - - CompanyAccessAuth: [] - description: |- - Returns the status and results of a people batch. - - Poll this endpoint to check the batch processing status and retrieve results. - - scope: `people_batches:read` - tags: - - People Batches - x-gusto-integration-type: - - embedded - parameters: - - name: people_batch_uuid - in: path - description: The UUID of the people batch - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/People-Batch-Results" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - "/v1/companies/{company_id}/reports/employees_annual_fica_wage": - post: - summary: Create an employees annual FICA wage report - operationId: post-v1-companies-company_id-reports-employees_annual_fica_wage - security: - - CompanyAccessAuth: [] - description: |- - Generates a report containing annual FICA (Federal Insurance Contributions Act) wage data for all employees in a company over a specified year range. - - This report provides detailed wage information subject to Social Security and Medicare taxes, useful for benefits integrations that need to verify employee earnings for compliance and benefit calculations. - - The report is generated asynchronously. After making this request, you will receive a `request_uuid` which can be used to poll the [Get a report](ref:get-v1-reports-request_uuid) endpoint to check the status and retrieve the report when complete. - - scope: `company_reports:write` - tags: - - Reports - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - required: true - description: The UUID of the company - schema: - type: string - x-gusto-rswag: true - responses: - '202': - description: accepted - content: - application/json: - schema: - "$ref": "#/components/schemas/Employees-Annual-Fica-Wage-Report-Acceptance" - '422': - description: unprocessable entity - start year before minimum - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - required: - - start_year - - end_year - properties: - start_year: - type: integer - description: The start year for the report (must be 2011 or later) - example: 2023 - end_year: - type: integer - description: The end year for the report (must be the current year or earlier, and must be >= start_year) - example: 2024 - required: true - "/v1/contractor_payments/{contractor_payment_id}/pdf": - get: - summary: Get a contractor payment PDF - operationId: get-v1-contractor_payments-contractor_payment_id-pdf - security: - - CompanyAccessAuth: [] - description: |- - Get a PDF document for a single contractor payment. - - scope: `payrolls:read` - tags: - - Contractor Payments - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: contractor_payment_id - in: path - required: true - description: The UUID of the contractor payment - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: A PDF document of the contractor payment - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided ID/UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - "/v1/contractors/{contractor_uuid}/rehire": - post: - summary: Schedule a contractor rehire - parameters: - - name: contractor_uuid - in: path - required: true - description: The UUID of the contractor - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - operationId: post-v1-contractors-contractor_uuid-rehire - security: - - CompanyAccessAuth: [] - description: |- - ## Purpose - Schedules a contractor rehire for a given date. Creates a new employment record for the contractor. - - ## Prerequisites - Before calling this endpoint: - 1. The contractor must be inactive (previously dismissed) - 2. The contractor must not already have an upcoming employment - - ## Related webhooks - - `contractor.reactivated`: Fires when the contractor becomes active again (on or after start_date) - - scope: `contractors:write` - tags: - - Contractors - x-gusto-integration-type: - - embedded - x-gusto-rswag: true - responses: - '204': - description: no content - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: {} - requestBody: - content: - application/json: - schema: - type: object - properties: - start_date: - type: string - format: date - description: The rehire date - example: '2025-07-01' - required: - - start_date - delete: - summary: Cancel a pending contractor rehire - parameters: - - name: contractor_uuid - in: path - required: true - description: The UUID of the contractor - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - operationId: delete-v1-contractors-contractor_uuid-rehire - security: - - CompanyAccessAuth: [] - description: |- - ## Purpose - Cancels a pending contractor rehire. For future-dated rehires, cancellation is available anytime before the date. - For past-dated rehires, cancellation is only available within the 2-day grace period. - - ## Prerequisites - Before calling this endpoint: - - The contractor must have a pending rehire (upcoming employment) - - ## Related webhooks - - `contractor.deactivated`: Fires when the contractor returns to inactive state after cancellation - - scope: `contractors:write` - tags: - - Contractors - x-gusto-integration-type: - - embedded - x-gusto-rswag: true - responses: - '204': - description: no content - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: {} - "/v1/contractors/{contractor_uuid}/termination": - post: - summary: Schedule a contractor termination - parameters: - - name: contractor_uuid - in: path - required: true - description: The UUID of the contractor - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - operationId: post-v1-contractors-contractor_uuid-termination - security: - - CompanyAccessAuth: [] - description: |- - ## Purpose - Schedules a contractor dismissal for a given date. Supports both immediate (past dates) and future-dated dismissals. - - ## Prerequisites - Before calling this endpoint: - 1. The contractor must be active (no existing pending dismissal) - 2. The contractor must have a current employment - - ## Related webhooks - - `contractor.deactivated`: Fires when the contractor becomes inactive (on or after end_date) - - scope: `contractors:write` - tags: - - Contractors - x-gusto-integration-type: - - embedded - x-gusto-rswag: true - responses: - '204': - description: no content - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: {} - requestBody: - content: - application/json: - schema: - type: object - properties: - end_date: - type: string - format: date - description: The date of dismissal - example: '2025-06-15' - required: - - end_date - delete: - summary: Cancel a pending contractor termination - parameters: - - name: contractor_uuid - in: path - required: true - description: The UUID of the contractor - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - operationId: delete-v1-contractors-contractor_uuid-termination - security: - - CompanyAccessAuth: [] - description: |- - ## Purpose - Cancels a pending contractor dismissal. For future-dated dismissals, cancellation is available anytime before the date. - For past-dated dismissals, cancellation is only available within the 2-day grace period. - - ## Prerequisites - Before calling this endpoint: - - The contractor must have a pending dismissal (scheduled or within the grace period) - - ## Related webhooks - - `contractor.reactivated`: Fires when the contractor becomes active again after cancellation - - scope: `contractors:write` - tags: - - Contractors - x-gusto-integration-type: - - embedded - x-gusto-rswag: true - responses: - '204': - description: no content - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: {} - "/v1/companies/{company_uuid}/time_off/admin_approved_requests": - post: - summary: Create an admin-approved time off request - operationId: post-v1-companies-company_uuid-time_off-admin_approved_requests - security: - - CompanyAccessAuth: [] - description: |- - Create a pre-approved time off request on behalf of an employee (admin or system initiated). - The request is always created with approved status. - - scope: `time_off_requests:manage` - tags: - - Time Off Requests - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '201': - description: created - content: - application/json: - schema: - "$ref": "#/components/schemas/Embedded-Time-Off-Request" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - properties: - employee_uuid: - type: string - description: The UUID of the employee - policy_uuid: - type: string - description: The UUID of the time off policy - employer_note: - type: string - description: A note from the employer about the request - approver_uuid: - type: string - description: The UUID of the approving admin. Defaults to the primary payroll admin. - start_date: - type: string - description: The start date of the time off request (YYYY-MM-DD) - end_date: - type: string - description: The end date of the time off request (YYYY-MM-DD) - days: - type: object - additionalProperties: - type: string - description: 'An object where keys are dates in YYYY-MM-DD format and values are hours as string decimals (e.g. {"2025-01-20": "8.000"})' - required: - - employee_uuid - - policy_uuid - - start_date - - end_date - - days - required: true - "/v1/companies/{company_uuid}/time_off/balances": - get: - summary: Get time off balances for a company - operationId: get-v1-companies-company_uuid-time_off-balances - security: - - CompanyAccessAuth: [] - description: |- - Get time off balances for all employees in a company - - scope: `time_off_requests:read` - tags: - - Time Off Requests - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: employee_uuids - in: query - required: false - description: Filter by employee UUIDs (comma-separated) - schema: - type: string - - name: policy_uuids - in: query - required: false - description: Filter by time off policy UUIDs (comma-separated) - schema: - type: string - - name: page - in: query - required: false - description: The page that is requested - schema: - type: integer - - name: per - in: query - required: false - description: Number of objects per page - schema: - type: integer - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Embedded-Time-Off-Balance" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - "/v1/companies/{company_uuid}/time_off/requests": - get: - summary: List time off requests for a company - operationId: get-v1-companies-company_uuid-time_off-requests - security: - - CompanyAccessAuth: [] - description: |- - Get all time off requests for a company. Supports filtering by status, employee, and date ranges. - - Possible statuses: - - `pending` — awaiting approval - - `approved` — approved by an admin but not yet processed in a payroll - - `declined` — declined by an admin - - `consumed` — processed in a completed payroll - - Allowed values for `status`: pending, approved, declined, consumed. - - scope: `time_off_requests:read` - tags: - - Time Off Requests - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: employee_uuids - in: query - required: false - description: Filter by employee UUIDs. Comma-separated for multiple values. - schema: - type: string - - name: status - in: query - required: false - description: Filter by request status. Comma-separated for multiple values (e.g. pending,approved,declined,consumed). - schema: - type: string - - name: start_date - in: query - required: false - description: Filter requests that overlap with this start date - schema: - type: string - - name: end_date - in: query - required: false - description: Filter requests that overlap with this end date - schema: - type: string - - name: sort_order - in: query - required: false - description: Sort order by start_date (asc or desc, defaults to desc) - schema: - type: string - - name: page - in: query - required: false - description: The page that is requested - schema: - type: integer - - name: per - in: query - required: false - description: Number of objects per page - schema: - type: integer - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Embedded-Time-Off-Request" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - post: - summary: Create a time off request - operationId: post-v1-companies-company_uuid-time_off-requests - security: - - CompanyAccessAuth: [] - description: |- - Create a time off request for an employee - - scope: `time_off_requests:write` - tags: - - Time Off Requests - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '201': - description: created - content: - application/json: - schema: - "$ref": "#/components/schemas/Embedded-Time-Off-Request" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - properties: - employee_uuid: - type: string - description: The UUID of the employee - policy_uuid: - type: string - description: The UUID of the time off policy - employee_note: - type: string - description: A note from the employee about the request - start_date: - type: string - description: The start date of the time off request (YYYY-MM-DD) - end_date: - type: string - description: The end date of the time off request (YYYY-MM-DD) - days: - type: object - additionalProperties: - type: string - description: 'An object where keys are dates in YYYY-MM-DD format and values are hours as string decimals (e.g. {"2025-01-20": "8.000"})' - required: - - employee_uuid - - policy_uuid - - start_date - - end_date - - days - required: true - "/v1/companies/{company_uuid}/time_off/requests/preview": - post: - summary: Preview a time off request - operationId: post-v1-companies-company_uuid-time_off-requests-preview - security: - - CompanyAccessAuth: [] - description: |- - Preview a time off request to see balance impact before creating - - scope: `time_off_requests:read` - tags: - - Time Off Requests - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Embedded-Time-Off-Request-Preview" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - properties: - request_uuid: - type: string - description: The UUID of an existing time off request to preview changes for - employee_uuid: - type: string - description: The UUID of the employee - policy_uuid: - type: string - description: The UUID of the time off policy - start_date: - type: string - description: The start date of the time off request (YYYY-MM-DD) - end_date: - type: string - description: The end date of the time off request (YYYY-MM-DD) - days: - type: object - additionalProperties: - type: string - description: 'An object where keys are dates in YYYY-MM-DD format and values are hours as string decimals (e.g. {"2025-01-20": "8.000"})' - required: - - employee_uuid - - policy_uuid - - start_date - - end_date - - days - required: true - "/v1/time_off/requests/{time_off_request_uuid}": - get: - summary: Get a time off request - operationId: get-v1-time_off-requests-time_off_request_uuid - security: - - CompanyAccessAuth: [] - description: |- - Get a single time off request by UUID - - scope: `time_off_requests:read` - tags: - - Time Off Requests - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: time_off_request_uuid - in: path - description: The UUID of the time off request - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Embedded-Time-Off-Request" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - delete: - summary: Delete a time off request - operationId: delete-v1-time_off-requests-time_off_request_uuid - security: - - CompanyAccessAuth: [] - description: |- - Delete a time off request - - scope: `time_off_requests:write` - tags: - - Time Off Requests - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: time_off_request_uuid - in: path - description: The UUID of the time off request - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '204': - description: no content - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - "/v1/time_off/requests/{time_off_request_uuid}/approve": - put: - summary: Approve a time off request - operationId: put-v1-time_off-requests-time_off_request_uuid-approve - security: - - CompanyAccessAuth: [] - description: |- - Approve a pending time off request. Optionally override the dates and hours. - - Only requests with a `pending` status can be approved. Attempting to approve a request that has already been `declined` or `consumed` will fail with a 422 error. - - scope: `time_off_requests:manage` - tags: - - Time Off Requests - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: time_off_request_uuid - in: path - description: The UUID of the time off request - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Embedded-Time-Off-Request" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - properties: - approver_uuid: - type: string - description: The UUID of the admin approving the request. Defaults to the company's primary payroll admin. - employer_note: - type: string - description: A note from the employer about the approval - days: - type: object - additionalProperties: - type: string - description: 'An object where keys are dates in YYYY-MM-DD format and values are hours as string decimals (e.g. {"2025-01-20": "8.000"}). Use this to override the requested hours.' - "/v1/time_off/requests/{time_off_request_uuid}/decline": - put: - summary: Decline a time off request - operationId: put-v1-time_off-requests-time_off_request_uuid-decline - security: - - CompanyAccessAuth: [] - description: |- - Decline a pending or approved time off request. Requires an employer_note. - - scope: `time_off_requests:manage` - tags: - - Time Off Requests - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: time_off_request_uuid - in: path - description: The UUID of the time off request - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Embedded-Time-Off-Request" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - properties: - employer_note: - type: string - description: Note explaining why the request was declined - approver_uuid: - type: string - description: The UUID of the admin declining the request. Defaults to the company's primary payroll admin. - required: - - employer_note - required: true - "/v1/payroll_digests": - post: - summary: Create a payroll digest batch - operationId: post-v1-payroll_digests - security: - - SystemAccessAuth: [] - description: "Triggers an asynchronous computation of payroll digest data (statuses, blockers, pay periods, totals) across up to 25 companies that the partner is mapped to.\n\nThe batch is processed asynchronously. Use the returned batch UUID to poll `GET /v1/payroll_digests/{payroll_digest_uuid}` for status and results.\n\nIdempotency is scoped per `(partner, idempotency_key)`. A duplicate POST with the same `idempotency_key` returns a 409 Conflict referencing the existing batch UUID — no duplicate computation occurs.\n\n\U0001F4D8 System Access Authentication\n\nThis endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access)\n\nscope: `payroll_digests:write`" - tags: - - Payroll Digests - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '201': - description: created - content: - application/json: - schema: - "$ref": "#/components/schemas/Payroll-Digest" - '409': - description: conflict - idempotency key already used by this partner - content: - application/json: - schema: - "$ref": "#/components/schemas/Payroll-Digest-Conflict-Error" - '422': - description: unprocessable entity - validation errors - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - required: - - idempotency_key - - batch_action - - batch - properties: - idempotency_key: - type: string - format: uuid - description: A partner-generated unique identifier to ensure idempotency of the batch request. Scoped per partner. - example: 80a74f8b-2c16-45e5-9038-aa108849c6e6 - batch_action: - type: string - enum: - - create - description: The action to perform on the batch. - example: create - batch: - type: array - description: Array of companies to fetch payroll digest data for. Maximum 25 companies per request. - minItems: 1 - maxItems: 25 - items: - type: object - required: - - entity_type - - uuid - properties: - entity_type: - type: string - enum: - - company - description: The type of entity to look up. - example: company - uuid: - type: string - format: uuid - description: The UUID of a company that the partner is mapped to. Companies that the partner is not authorized to access will appear in the response's `exclusions` array. - required: true - "/v1/payroll_digests/{payroll_digest_uuid}": - get: - summary: Get a payroll digest batch - operationId: get-v1-payroll_digests-payroll_digest_uuid - security: - - SystemAccessAuth: [] - description: "Returns the status and results of a payroll digest batch.\n\nPoll this endpoint until the batch `status` reaches a terminal value (`completed` or `failed`). Once terminal, the response includes the full `results` array (one entry per attempted company, each with its own per-company `status` — `success`, `partial_success`, or `failed`) and the `exclusions` array (one entry per company that could not be looked up or processed).\n\nNote that the top-level batch `status` (`pending` / `processing` / `completed` / `failed`) is distinct from the per-company `status` returned inside `results[]` and `exclusions[]`. A `completed` batch does not imply every company succeeded — inspect the arrays for per-company outcomes.\n\nResults are stored in Redis with a short TTL after completion. If the partner polls after results have expired, this endpoint returns 410 Gone — partners should re-submit a new batch to fetch fresh data.\n\n\U0001F4D8 System Access Authentication\n\nThis endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access)\n\nscope: `payroll_digests:read`" - tags: - - Payroll Digests - x-gusto-integration-type: - - embedded - parameters: - - name: payroll_digest_uuid - in: path - description: The UUID of the payroll digest batch returned by `POST /v1/payroll_digests`. - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Payroll-Digest-Results" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '410': - description: Gone - results have expired from Redis - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - "/v1/information_requests/{information_request_uuid}/submit": - put: - x-gusto-integration-type: - - embedded - summary: Submit information request responses - tags: - - Information Requests - operationId: submit-information-request - x-speakeasy-group: informationRequests - x-speakeasy-name-override: submit - description: |- - Submit responses to an information request. - Supports both text responses and file uploads (multipart/form-data). - Maximum file size: 120MB. - - scope: `information_requests:write` - parameters: - - "$ref": "#/components/parameters/information_request_uuid" - requestBody: - required: true - content: - application/json: - schema: - type: object - properties: - required_questions: - type: array - items: - type: object - required: - - question_uuid - - response_type - properties: - question_uuid: - type: string - format: uuid - description: UUID of the question being answered - response_type: - type: string - enum: - - text - - document - description: Type of response - matches the question's response_type from GET - text_response: - type: string - description: Text response (required when response_type is text) - file_response: - type: string - description: Data URL with base64-encoded file (e.g., "data:image/png;base64,..."). Required when response_type is document. - file_name: - type: string - description: Original filename with extension (e.g., "document.pdf"). Used for document uploads. - responses: - '200': - description: Information request successfully submitted - content: - application/json: - schema: - "$ref": "#/components/schemas/Information-Request" - '422': - description: Validation error - invalid responses or missing required answers - "$ref": "#/components/responses/Unprocessable-Entity-Error-Object" - '404': - "$ref": "#/components/responses/Not-Found-Error-Object" -components: - parameters: - search_term: - name: search_term - in: query - schema: - type: string - description: A string to search for in the object's names - pageParam: - schema: - type: integer - in: query - name: page - description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - perParam: - schema: - type: integer - in: query - name: per - description: Number of objects per page. For majority of endpoints will default to 25 - start_date: - in: query - name: start_date - schema: - type: string - example: '2020-01-01' - end_date: - in: query - name: end_date - description: If left empty, defaults to today's date. - schema: - type: string - example: '2020-01-31' - bank_account_uuid: - name: bank_account_uuid - in: path - required: true - schema: - type: string - description: The UUID of the bank account - benefit_id: - schema: - type: string - name: benefit_id - in: path - required: true - description: The benefit type in Gusto. - compensation_id: - schema: - type: string - name: compensation_id - in: path - required: true - description: The UUID of the compensation - company_attachment_uuid: - schema: - type: string - name: company_attachment_uuid - in: path - required: true - description: The UUID of the company attachment - company_benefit_id: - schema: - type: string - name: company_benefit_id - in: path - required: true - description: The UUID of the company benefit - company_forms_sort_by: - name: sort_by - in: query - required: false - description: 'Sort company forms. Options: name, year, quarter, draft, document_content_type, created_at (optionally with :asc or :desc suffix)' - schema: - type: string - pattern: "^(name|year|quarter|draft|document_content_type|created_at)(:(asc|desc))?$" - company_id: - name: company_id - in: path - required: true - schema: - type: string - description: The UUID of the company - company_uuid: - name: company_uuid - in: path - required: true - schema: - type: string - description: The UUID of the company - contractor_uuid: - name: contractor_uuid - in: path - required: true - schema: - type: string - description: The UUID of the contractor - contractor_payment_id: - name: contractor_payment_id - in: path - required: true - schema: - type: string - description: The UUID of the contractor payment - contractor_payment_uuid: - name: contractor_payment_uuid - in: path - required: true - schema: - type: string - description: The UUID of the contractor payment - contractor_payment_group_uuid: - name: contractor_payment_group_uuid - in: path - required: true - schema: - type: string - description: The UUID of the contractor payment group - contractors_sort_by: - name: sort_by - in: query - required: false - description: 'Sort contractors. Options: type, onboarding_status, name, created_at (optionally with :asc or :desc suffix)' - schema: - type: string - pattern: "^(type|onboarding_status|name|created_at)(:(asc|desc))?$" - department_uuid: - name: department_uuid - in: path - required: true - schema: - type: string - description: The UUID of the department - document_id: - name: document_id - in: path - required: true - schema: - type: string - description: The UUID of the document - earning_type_uuid: - schema: - type: string - name: earning_type_uuid - in: path - required: true - description: The UUID of the earning type - effective_date: - in: query - name: effective_date - required: false - schema: - type: string - example: '2020-01-31' - employee_benefit_id: - name: employee_benefit_id - in: path - required: true - schema: - type: string - description: The UUID of the employee benefit. - employee_id: - name: employee_id - in: path - required: true - schema: - type: string - description: The UUID of the employee - employee_uuid: - name: employee_uuid - in: path - required: true - schema: - type: string - description: The UUID of the employee - sort_order: - name: sort_order - in: query - required: false - schema: - type: string - example: asc - enum: - - asc - - desc - description: A string indicating whether to sort resulting events in ascending (asc) or descending (desc) chronological order. Events are sorted by their `timestamp`. Defaults to asc if left empty. - event_type: - name: event_type - in: query - required: false - schema: - type: string - description: A string containing the exact event name (e.g. `employee.created`), or use a wildcard match to filter for a group of events (e.g. `employee.*`, `*.created`, `notification.*.created` etc.) - external_payroll_id: - name: external_payroll_id - in: path - required: true - schema: - type: string - description: The UUID of the external payroll - form_id: - name: form_id - in: path - required: true - schema: - type: string - description: The UUID of the form - document_uuid: - name: document_uuid - in: path - required: true - schema: - type: string - description: The UUID of the document - garnishment_id: - name: garnishment_id - in: path - required: true - schema: - type: string - description: The UUID of the garnishment - historical_employee_uuid: - name: historical_employee_uuid - in: path - required: true - schema: - type: string - description: The UUID of the historical employee - home_address_uuid: - name: home_address_uuid - in: path - required: true - schema: - type: string - description: The UUID of the home address - work_address_uuid: - name: work_address_uuid - in: path - required: true - schema: - type: string - description: The UUID of the work address - job_id: - schema: - type: string - name: job_id - in: path - required: true - description: The UUID of the job - limit: - name: limit - in: query - required: false - schema: - type: string - description: Limits the number of objects returned in a single response, between 1 and 100. The default is 25 - location_id: - name: location_id - in: path - required: true - schema: - type: string - description: The UUID of the location - location_uuid: - name: location_uuid - in: path - required: true - schema: - type: string - description: The UUID of the location - payroll_id: - name: payroll_id - in: path - required: true - schema: - type: string - description: The UUID of the payroll - payroll_uuid: - name: payroll_uuid - in: path - required: true - schema: - type: string - description: The UUID of the payroll - pay_schedule_id: - name: pay_schedule_id - in: path - required: true - schema: - type: string - description: The UUID of the pay schedule - payroll_types: - name: payroll_types - in: query - required: false - schema: - type: string - description: regular and/or transition. Multiple options are comma separated. The default is regular pay periods if nothing is passed in. - payroll_prepare_sort_by: - name: sort_by - in: query - required: false - description: 'Sort employee compenstations by name. Options: first_name, last_name' - schema: - type: string - enum: - - first_name - - last_name - document_type: - name: document_type - in: path - required: true - schema: - type: string - enum: - - printable_payroll_checks - description: The type of document being generated - report_type: - schema: - type: string - name: report_type - in: path - required: true - description: The report type - report_uuid: - schema: - type: string - name: report_uuid - in: path - required: true - description: The UUID of the report request - request_uuid: - name: request_uuid - in: path - required: true - schema: - type: string - description: The UUID of the request to generate a document. Generate document endpoints return request_uuids to be used with the GET generated document endpoint. - signatory_uuid: - name: signatory_uuid - in: path - required: true - schema: - type: string - description: The UUID of the signatory - starting_after_uuid: - name: starting_after_uuid - in: query - required: false - schema: - type: string - description: A cursor for pagination. Returns all events occuring after the specified UUID (exclusive). Events are sorted according to the provided sort_order param. - resource_uuid: - name: resource_uuid - in: query - required: false - schema: - type: string - description: The UUID of the company. If not specified, will return all events for all companies. - time_off_type: - schema: - type: string - required: true - in: query - name: time_off_type - description: 'The time off type name you want to query data for. ex: ''sick'' or ''vacation''' - time_off_policy_uuid: - name: time_off_policy_uuid - in: path - required: true - schema: - type: string - description: The UUID of the company time off policy - webhook_subscription_uuid: - name: webhook_subscription_uuid - in: path - required: true - schema: - type: string - description: The webhook subscription UUID. - VersionHeader: - name: X-Gusto-API-Version - in: header - required: false - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - IpAddressHeader: - name: x-gusto-client-ip - in: header - required: false - description: Optional header to supply the IP address. This can be used to supply the IP address for signature endpoints instead of the signed_by_ip_address parameter. - schema: - type: string - notification_uuid: - name: notification_uuid - in: path - required: true - schema: - type: string - description: The notification entity_uuid - invoice_period: - name: invoice_period - in: path - required: true - schema: - type: string - example: 2020-01 - description: The month we are calculating the invoice for. Must be in YYYY-MM format - recovery_case_uuid: - name: recovery_case_uuid - in: path - required: true - schema: - type: string - description: The UUID of the recovery case - contractor_payment_uuid_query: - name: contractor_payment_uuid - in: query - required: false - schema: - type: string - description: The UUID of the contractor payment - payroll_uuid_query: - name: payroll_uuid - in: query - required: false - schema: - type: string - description: The UUID of the payroll - transaction_type: - name: transaction_type - in: query - required: false - schema: - type: string - description: Used to filter the ACH transactions to only include those with a specific transaction type, such as "Credit employee pay". - payment_direction: - name: payment_direction - in: query - required: false - schema: - type: string - description: Used to filter the ACH transactions to only include those with a specific payment direction, either "credit" or "debit". - wire_in_request_uuid: - name: wire_in_request_uuid - in: path - required: true - schema: - type: string - description: The UUID of the Wire In Request - time_sheet_uuid: - name: time_sheet_uuid - in: path - required: true - schema: - type: string - description: UUID of the time sheet - entity_uuids: - name: entity_uuids - required: false - in: query - schema: - type: array - items: - type: string - description: Entity UUIDs that reported time sheets - entity_type: - name: entity_type - required: false - in: query - schema: - type: string - enum: - - Employee - - Contractor - description: 'Type of entities to filter. One of: "Employee", "Contractor"' - status: - name: status - required: false - in: query - schema: - type: string - enum: - - approved - - pending - - rejected - description: 'Status of time sheets. One of: "approved", "pending", "rejected"' - time_sheet_before: - name: before - required: false - in: query - schema: - type: string - description: time sheets that were created before ISO 8601 timestamp. Filtering by "created_at" - time_sheet_after: - name: after - required: false - in: query - schema: - type: string - description: time sheets that were created before ISO 8601 timestamp. Filtering by "created_at" - time_sheet_sort_by: - name: sort_by - required: false - in: query - schema: - type: string - enum: - - created_at - - updated_at - - shift_started_at - - shift_ended_at - description: 'Field to sort by. One of: "created_at", "updated_at", "shift_started_at", "shift_ended_at"' - time_sheet_sort_order: - name: sort_order - required: false - in: query - schema: - type: string - enum: - - asc - - desc - description: 'Sorting order. One of: "asc", "desc"' - resource_version: - name: version - required: true - in: query - schema: - type: string - description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. - information_request_uuid: - name: information_request_uuid - in: path - required: true - schema: - type: string - description: The UUID of the information request - schemas: - Versionable-Required: - type: object - properties: - version: - type: string - example: 56d00c178bc7393b2a206ed6a86afcb4 - description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. - required: - - version - Versionable: - type: object - properties: - version: - type: string - description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. - Employee-Address: - type: object - x-examples: - success_status: - uuid: 700af712-62ba-4dff-824f-97a3c6fda416 - version: 6c3c23e4cc840bd3f1416f72b5380eff - employee_uuid: 78d20691-f1b4-4f74-bc4c-1d4db0099b00 - street_1: 3121 Milky Way - street_2: '' - city: San Francisco - state: CA - zip: '94107' - country: USA - active: true - effective_date: '1970-01-01' - courtesy_withholding: false - properties: - uuid: - type: string - description: The UUID of the employee address - employee_uuid: - type: string - description: The UUID of the employee - effective_date: - type: string - format: date - description: The date the employee started living at the address. - courtesy_withholding: - type: boolean - description: Determines if home taxes should be withheld and paid for employee. - street_1: - type: string - readOnly: false - street_2: - type: - - string - - 'null' - readOnly: false - city: - type: string - readOnly: false - state: - type: string - readOnly: false - zip: - type: string - readOnly: false - country: - type: string - readOnly: false - default: USA - active: - type: boolean - description: The status of the location. Inactive locations have been deleted, but may still have historical data associated with them. - readOnly: true - version: - type: string - description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. - required: - - uuid - - version - Employee-Work-Address: - type: object - x-examples: - success_status: - uuid: 64ee5fd7-3eb2-4083-883c-95e93e181cc8 - employee_uuid: d773461f-848a-40a1-8f09-b2ee4249d5c7 - location_uuid: 733ab2af-9510-408f-8d20-09196967174f - effective_date: '2020-01-31' - active: true - version: 3879823d440f3a3215d129ac73c58966 - street_1: 977 Marks Viaduct - street_2: Apt. 958 - city: Pink Hill - state: NC - zip: '28572' - country: USA - properties: - uuid: - type: string - readOnly: true - description: The unique identifier of this work address. - effective_date: - type: string - description: The date the employee began working at this location. - active: - type: boolean - readOnly: true - description: Signifies if this address is the active work address for the current date - location_uuid: - type: string - description: UUID reference to the company location for this work address. - employee_uuid: - type: string - description: UUID reference to the employee for this work address. - version: - type: string - description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. - street_1: - type: string - readOnly: true - street_2: - type: - - string - - 'null' - readOnly: true - city: - type: string - readOnly: true - state: - type: string - readOnly: true - zip: - type: string - readOnly: true - country: - type: string - readOnly: true - default: USA - required: - - uuid - - version - Contractor-Address: - type: object - x-examples: - example: - version: 23323096a8015e32d9795fadf1fd300d - contractor_uuid: 9779767c-6044-48e0-bf68-aeb370b9a2e7 - street_1: 999 Kiera Stravenue - street_2: Suite 391 - city: San Francisco - state: CA - zip: '94107' - country: USA - active: true - properties: - contractor_uuid: - type: string - description: The UUID of the contractor - street_1: - type: - - string - - 'null' - readOnly: false - street_2: - type: - - string - - 'null' - readOnly: false - city: - type: - - string - - 'null' - readOnly: false - state: - type: - - string - - 'null' - readOnly: false - zip: - type: - - string - - 'null' - readOnly: false - country: - type: - - string - - 'null' - readOnly: false - default: USA - active: - type: boolean - description: The status of the location. Inactive locations have been deleted, but may still have historical data associated with them. - readOnly: true - version: - type: string - description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. - Address: - type: object - allOf: - - "$ref": "#/components/schemas/Versionable" - - type: object - properties: - street_1: - type: - - string - - 'null' - readOnly: false - street_2: - type: - - string - - 'null' - readOnly: false - city: - type: - - string - - 'null' - readOnly: false - state: - type: - - string - - 'null' - readOnly: false - zip: - type: - - string - - 'null' - readOnly: false - country: - type: - - string - - 'null' - readOnly: false - default: USA - active: - type: boolean - description: The status of the location. Inactive locations have been deleted, but may still have historical data associated with them. - readOnly: true - example: - street_1: 412 Kiera Stravenue - street_2: Suite 391 - city: San Francisco - state: CA - zip: '94107' - country: USA - active: true - Employee-Home-Address: - type: object - properties: - street_1: - type: - - string - - 'null' - readOnly: false - street_2: - type: - - string - - 'null' - readOnly: false - city: - type: - - string - - 'null' - readOnly: false - state: - type: - - string - - 'null' - readOnly: false - zip: - type: - - string - - 'null' - readOnly: false - country: - type: - - string - - 'null' - readOnly: false - default: USA - active: - type: boolean - description: The status of the location. Inactive locations have been deleted, but may still have historical data associated with them. - readOnly: true - uuid: - type: string - description: Unique identifier for this address. - example: - street_1: 412 Kiera Stravenue - street_2: Suite 391 - city: San Francisco - state: CA - zip: '94107' - country: USA - active: true - uud: sample-uuid-123231 - Department: - type: object - allOf: - - "$ref": "#/components/schemas/Versionable" - - type: object - properties: - uuid: - type: string - description: The UUID of the department - company_uuid: - type: string - description: The UUID of the company - title: - type: string - description: Name of the department - employees: - type: array - description: Array of employees assigned to the department. - items: - properties: - uuid: - type: string - contractors: - type: array - description: Array of contractors assigned to the department. - items: - properties: - uuid: - type: string - x-examples: - example: - uuid: 56260b3d-c375-415c-b77a-75d99f717193 - company_uuid: 7087a288-8349-4632-b92e-bc94fb79f29e - title: Stage Hand - version: d90440dd464601d1c8f4e9e240dfb7a6 - employees: - - uuid: 41199375-a999-4414-9f40-d9bf596b134d - contractors: - - uuid: 3488549f-60e4-494f-a34a-9d8aad3aabf5 - example_created: - uuid: 56260b3d-c375-415c-b77a-75d99f717193 - company_uuid: 7087a288-8349-4632-b92e-bc94fb79f29e - title: Stage Hand - version: d90440dd464601d1c8f4e9e240dfb7a6 - employees: [] - contractors: [] - Employee: - title: Employee - type: object - description: The representation of an employee in Gusto. - x-examples: - success_status: - uuid: d7282d99-ab6b-42f5-ba45-f4a670e886a8 - first_name: Boaty - middle_initial: - last_name: Koss - email: keena.feest@kiehn.co.uk - company_uuid: e904cc79-818a-4da8-9d37-0be0a86fdda8 - manager_uuid: - version: a5cec1f1c0135feb3e76ca6ea3c46176 - current_employment_status: full_time - onboarding_status: onboarding_completed - preferred_first_name: - department_uuid: - employee_code: 46f036 - payment_method: Direct Deposit - department: - terminated: false - two_percent_shareholder: false - onboarded: true - historical: false - has_ssn: true - onboarding_documents_config: - uuid: - i9_document: false - jobs: - - uuid: bc875f9d-adc5-40f6-99db-ed8470bda25f - version: 863bcd01c51fcfa2468d604cffec7413 - employee_uuid: d7282d99-ab6b-42f5-ba45-f4a670e886a8 - current_compensation_uuid: 2ec164d0-808b-446c-8120-8cfb500945d0 - payment_unit: Year - primary: true - two_percent_shareholder: false - state_wc_covered: - state_wc_class_code: - title: '' - compensations: - - uuid: 2ec164d0-808b-446c-8120-8cfb500945d0 - employee_uuid: d7282d99-ab6b-42f5-ba45-f4a670e886a8 - version: db7bfb49a4f0893432cb562311bfcad9 - payment_unit: Year - flsa_status: Exempt - adjust_for_minimum_wage: false - minimum_wages: [] - job_uuid: bc875f9d-adc5-40f6-99db-ed8470bda25f - effective_date: '2025-06-09' - rate: '80000.00' - rate: '80000.00' - hire_date: '2024-06-09' - eligible_paid_time_off: [] - terminations: [] - garnishments: [] - date_of_birth: '2005-06-09' - ssn: '' - phone: - work_email: - member_portal_invitation_status: - status: sent - token_expired: false - welcome_email_sent_at: '2024-01-15T14:30:00Z' - last_password_resent_at: - partner_portal_invitation_sent: true - properties: - uuid: - type: string - description: The UUID of the employee in Gusto. - readOnly: true - first_name: - type: string - middle_initial: - type: - - string - - 'null' - last_name: - type: string - email: - type: - - string - - 'null' - description: The personal email address of the employee. This is provided to support syncing users between our system and yours. You may not use this email address for any other purpose (e.g. marketing). - company_uuid: - type: string - description: The UUID of the company the employee is employed by. - readOnly: true - manager_uuid: - type: - - string - - 'null' - description: The UUID of the employee's manager. - readOnly: true - version: - type: string - description: The current version of the employee. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. - readOnly: true - department: - type: - - string - - 'null' - description: The employee's department in the company. - readOnly: true - terminated: - type: boolean - description: Whether the employee is terminated. - readOnly: true - two_percent_shareholder: - type: - - boolean - - 'null' - description: Whether the employee is a two percent shareholder of the company. This field only applies to companies with an S-Corp entity type. - work_email: - type: - - string - - 'null' - description: The work email address of the employee. This is provided to support syncing users between our system and yours. You may not use this email address for any other purpose (e.g. marketing). - onboarded: - type: boolean - description: Whether the employee has completed onboarding. - readOnly: true - onboarding_status: - description: The current onboarding status of the employee - anyOf: - - type: string - enum: - - onboarding_completed - - 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 - - type: 'null' - readOnly: true - onboarding_documents_config: - type: object - description: Configuration for an employee onboarding documents during onboarding - properties: - uuid: - type: - - string - - 'null' - description: The UUID of the onboarding documents config - readOnly: true - i9_document: - type: boolean - description: Whether to include Form I-9 for an employee during onboarding - readOnly: true - jobs: - type: array - items: - "$ref": "#/components/schemas/Job" - eligible_paid_time_off: - type: array - items: - "$ref": "#/components/schemas/Paid-Time-Off" - terminations: - type: array - items: - "$ref": "#/components/schemas/Termination" - garnishments: - type: array - items: - "$ref": "#/components/schemas/Garnishment" - custom_fields: - type: array - description: Custom fields are only included for the employee if the include param has the custom_fields value set - items: - "$ref": "#/components/schemas/Employee-Custom-Field" - date_of_birth: - type: - - string - - 'null' - readOnly: true - has_ssn: - type: boolean - description: Indicates whether the employee has an SSN in Gusto. - ssn: - type: string - description: Deprecated. This field always returns an empty string. - phone: - type: - - string - - 'null' - preferred_first_name: - type: - - string - - 'null' - description: '' - payment_method: - type: string - description: The employee's payment method - enum: - - Direct Deposit - - Check - default: Check - nullable: false - current_employment_status: - anyOf: - - type: string - enum: - - full_time - - part_time_under_twenty_hours - - part_time_twenty_plus_hours - - variable - - seasonal - - type: 'null' - description: 'The current employment status of the employee. Full-time employees work 30+ hours per week. Part-time employees are split into two groups: those that work 20-29 hours a week, and those that work under 20 hours a week. Variable employees have hours that vary each week. Seasonal employees are hired for 6 months of the year or less.' - readOnly: true - historical: - type: boolean - nullable: false - employee_code: - type: string - description: The short format code of the employee - nullable: false - readOnly: true - department_uuid: - type: - - string - - 'null' - description: The UUID of the department the employee is under - title: - type: string - nullable: false - hired_at: - type: string - nullable: false - format: date - description: The date when the employee was hired to the company - hidden_ssn: - type: string - nullable: false - flsa_status: - "$ref": "#/components/schemas/Flsa-Status-Type" - applicable_tax_ids: - type: array - nullable: false - items: - type: number - member_portal_invitation_status: - type: - - object - - 'null' - description: Member portal invitation status information. Only included when the include param has the portal_invitations value set. - properties: - status: - type: string - description: The current status of the member portal invitation. - enum: - - pending - - sent - - verified - - complete - - cancelled - token_expired: - type: - - boolean - - 'null' - description: Whether the invitation token has expired. - welcome_email_sent_at: - type: - - string - - 'null' - format: date-time - description: The date and time when the welcome email was sent. - last_password_resent_at: - type: - - string - - 'null' - format: date-time - description: The date and time when the password reset was last resent. - partner_portal_invitation_sent: - type: - - boolean - - 'null' - description: Whether an external partner portal invitation webhook has been sent for this employee. Only included when the include param has the portal_invitations value set. - required: - - uuid - - first_name - - last_name - readOnly: true - Employee-Onboarding-Status: - description: The representation of an employee's onboarding status. - type: object - title: Employee-Onboarding-Status - x-examples: - success_status: - uuid: 8351cf2a-17cb-49e3-94a7-9986dcb11e84 - onboarding_status: onboarding_completed - onboarding_steps: - - title: Personal details - id: personal_details - required: true - completed: true - requirements: [] - - title: Enter compensation details - id: compensation_details - required: true - completed: true - requirements: [] - - title: Add work address - id: add_work_address - required: true - completed: true - requirements: [] - - title: Add home address - id: add_home_address - required: true - completed: true - requirements: [] - - title: Enter federal tax withholdings - id: federal_tax_setup - required: true - completed: true - requirements: [] - - title: Enter state tax information - id: state_tax_setup - required: true - completed: false - requirements: - - add_work_address - - add_home_address - - title: Direct deposit setup - id: direct_deposit_setup - required: false - completed: true - requirements: [] - - title: Employee form signing - id: employee_form_signing - required: true - completed: false - requirements: - - federal_tax_setup - - state_tax_setup - - title: File new hire report - id: file_new_hire_report - required: true - completed: false - requirements: - - add_work_address - properties: - uuid: - type: string - description: Unique identifier for this employee. - onboarding_status: - type: string - description: One of the "onboarding_status" enum values. - onboarding_steps: - type: array - description: List of steps required to onboard an employee. - items: - title: Onboarding step - type: object - properties: - title: - type: string - description: User-friendly description of the onboarding step. - id: - type: string - description: String identifier for the onboarding step. - required: - type: boolean - description: When true, this step is required. - completed: - type: boolean - description: When true, this step has been completed. - requirements: - type: array - description: A list of onboarding steps required to begin this step. - items: - type: string - required: - - uuid - Company-Address: - description: The representation of a company's address in Gusto. - type: object - properties: - street_1: - type: string - readOnly: false - street_2: - type: - - string - - 'null' - readOnly: false - city: - type: string - readOnly: false - state: - type: string - readOnly: false - zip: - type: string - readOnly: false - country: - type: string - readOnly: false - default: USA - inactive: - type: boolean - description: The status of the location. Inactive locations have been deleted, but may still have historical data associated with them. - readOnly: true - active: - type: boolean - description: The status of the location. Inactive locations have been deleted, but may still have historical data associated with them. - readOnly: true - Location: - description: The representation of an address in Gusto. - type: object - title: '' - x-examples: - success_status: - created_at: '2025-06-09T13:43:49.000-07:00' - updated_at: '2025-06-09T13:43:50.000-07:00' - company_uuid: 10593a6a-505b-4aa6-bf31-15dcdceedbe3 - version: e1bdd845a493c74908f8e15d6114169b - uuid: 6b1351a2-de35-4499-b948-43abab274634 - street_1: 300 3rd Street - street_2: Apartment 318 - city: San Francisco - state: CA - zip: '94107' - country: USA - active: true - phone_number: '8009360383' - filing_address: true - mailing_address: true - properties: - uuid: - type: string - description: The UUID of the location object. - readOnly: true - version: - type: string - description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. - company_uuid: - type: string - description: The UUID for the company to which the location belongs. Only included if the location belongs to a company. - readOnly: true - phone_number: - type: string - readOnly: false - description: The phone number for the location. Required for company locations. Optional for employee locations. - street_1: - type: string - readOnly: false - street_2: - type: - - string - - 'null' - readOnly: false - city: - type: string - readOnly: false - state: - type: string - readOnly: false - zip: - type: string - readOnly: false - country: - type: string - readOnly: false - default: USA - mailing_address: - type: boolean - description: Specifies if the location is the company's mailing address. Only included if the location belongs to a company. - filing_address: - description: Specifies if the location is the company's filing address. Only included if the location belongs to a company. - type: boolean - created_at: - type: string - description: Datetime for when location is created - updated_at: - type: string - description: Datetime for when location is updated - active: - type: boolean - description: The status of the location. Inactive locations have been deleted, but may still have historical data associated with them. - readOnly: true - inactive: - type: boolean - description: The status of the location. Inactive locations have been deleted, but may still have historical data associated with them. - readOnly: true - required: - - uuid - Paid-Time-Off: - type: object - description: The representation of paid time off in Gusto. - properties: - name: - description: The name of the paid time off type. - anyOf: - - type: string - enum: - - Vacation Hours - - Sick Hours - - Holiday Hours - - type: 'null' - readOnly: true - policy_name: - type: - - string - - 'null' - description: The name of the time off policy. - readOnly: true - policy_uuid: - type: - - string - - 'null' - description: The UUID of the time off policy. - readOnly: true - accrual_unit: - type: - - string - - 'null' - example: Hour - description: The unit the PTO type is accrued in. - readOnly: true - accrual_rate: - type: - - string - - 'null' - description: The number of accrual units accrued per accrual period. - readOnly: true - accrual_method: - type: - - string - - 'null' - example: unlimited - description: The accrual method of the time off policy - readOnly: true - accrual_period: - type: - - string - - 'null' - example: Year - description: The frequency at which the PTO type is accrued. - readOnly: true - accrual_balance: - type: - - string - - 'null' - description: The number of accrual units accrued. - readOnly: true - maximum_accrual_balance: - type: - - string - - 'null' - description: The maximum number of accrual units allowed. A null value signifies no maximum. - readOnly: true - paid_at_termination: - type: boolean - description: Whether the accrual balance is paid to the employee upon termination. - readOnly: true - Child-Support-Data: - description: Child Support agency data - type: object - properties: - agencies: - type: array - description: State child support agencies - items: - type: object - properties: - state: - type: string - description: Two letter state abbreviation - name: - type: string - description: Name of state child support agency - manual_payment_required: - type: boolean - description: 'Specifies if remitting payment to the agency is required outside of Gusto. If true, Gusto includes garnishment amounts for this agency in payroll calculation, but does not debit for or remit payment to the agency automatically. As of September 2024, only garnishments for South Carolina Integrated Child Support Services require manual payment. ' - fips_codes: - type: array - description: FIPS codes for state or county child support orders - items: - type: object - properties: - code: - type: string - description: FIPS code for state or county - county: - type: - - string - - 'null' - description: Name of county in the state for the corresponding FIPS code. When `null` the FIPS code applies state wide. - required_attributes: - type: array - description: Describes which child support case identifying attributes are required for this agency. While most agencies only require a single identifier, some (e.g. OH) require multiple identifiers. - items: - type: object - properties: - key: - type: string - description: A required attribute when creating a garnishment for this state agency. The current values are listed as an enum; though unlikely, values could be added if state agency requirements change in the future. - enum: - - case_number - - order_number - - remittance_number - label: - type: string - description: A human readable name of the attribute, e.g. CSE Case Number - x-examples: - Example: - agencies: - - state: AK - name: Alaska Child Support Services Division - manual_payment_required: false - fips_codes: - - county: - code: '0200000' - required_attributes: - - key: case_number - label: CSE Case Number - - state: OH - name: Ohio Office of Child Support Enforcement - manual_payment_required: false - fips_codes: - - county: - code: '39000' - required_attributes: - - key: case_number - label: CSE Case Number - - key: order_number - label: Order Identifier - Garnishment-Child-Support: - description: Additional child support order details - type: - - object - - 'null' - properties: - state: - type: string - readOnly: false - description: The two letter state abbreviation for the state issuing the child support order. Agency data is available in the `GET /v1/garnishments/child_support` API. - payment_period: - type: string - readOnly: false - enum: - - Every week - - Every other week - - Twice per month - - Monthly - description: How often the agency collects the withholding amount. e.g. $500 monthly -> `Monthly`. - fips_code: - type: string - description: The FIPS code associated with the state or county agency issuing the child support order. Agency data is available in the `GET /v1/garnishments/child_support` API. - nullable: false - readOnly: false - case_number: - type: - - string - - 'null' - readOnly: false - description: Child Support Enforcement Case Number associated with this child support obligation - required for most states. Agency specific requirements are available in the `GET /v1/garnishments/child_support` API. - order_number: - type: - - string - - 'null' - readOnly: false - description: Order Identifier or Order ID associated with this child support obligation - required for some states. Agency specific requirements are available in the `GET /v1/garnishments/child_support` API. - remittance_number: - type: - - string - - 'null' - readOnly: false - description: Child Support Enforcement Remittance ID associated with this child support obligation - required for some states. Agency specific requirements are available in the `GET /v1/garnishments/child_support` API. - Garnishment: - description: Garnishments, or employee deductions, are fixed amounts or percentages deducted from an employee’s pay. They can be deducted a specific number of times or on a recurring basis. Garnishments can also have maximum deductions on a yearly or per-pay-period bases. Common uses for garnishments are court-ordered payments for child support or back taxes. Some companies provide loans to their employees that are repaid via garnishments. - type: object - properties: - uuid: - type: string - description: The UUID of the garnishment in Gusto. - readOnly: true - version: - type: string - description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. - employee_uuid: - type: string - description: The UUID of the employee to which this garnishment belongs. - readOnly: true - active: - type: boolean - default: true - description: Whether or not this garnishment is currently active. - amount: - type: string - format: float - readOnly: false - description: The amount of the garnishment. Either a percentage or a fixed dollar amount. Represented as a float, e.g. "8.00". - description: - type: string - readOnly: false - description: The description of the garnishment. - court_ordered: - type: boolean - readOnly: false - description: Whether the garnishment is court ordered. - times: - type: - - integer - - 'null' - readOnly: false - default: - description: The number of times to apply the garnishment. Ignored if recurring is true. - recurring: - type: boolean - readOnly: false - default: false - description: Whether the garnishment should recur indefinitely. - annual_maximum: - format: float - readOnly: false - default: - description: The maximum deduction per annum. A null value indicates no maximum. Represented as a float, e.g. "200.00". - type: - - string - - 'null' - total_amount: - type: - - string - - 'null' - format: float - readOnly: false - default: - description: A maximum total deduction for the lifetime of this garnishment. A null value indicates no maximum. - pay_period_maximum: - type: - - string - - 'null' - format: float - default: - description: The maximum deduction per pay period. A null value indicates no maximum. Represented as a float, e.g. "16.00". - deduct_as_percentage: - type: boolean - readOnly: false - default: false - description: Whether the amount should be treated as a percentage to be deducted per pay period. - garnishment_type: - anyOf: - - type: string - enum: - - child_support - - federal_tax_lien - - state_tax_lien - - student_loan - - creditor_garnishment - - federal_loan - - other_garnishment - - type: 'null' - description: The specific type of garnishment for court ordered garnishments. - child_support: - "$ref": "#/components/schemas/Garnishment-Child-Support" - required: - - uuid - x-examples: - Example: - uuid: 4c7841a2-1363-497e-bc0f-664703c7484f - version: 52b7c567242cb7452e89ba2bc02cb476 - employee_uuid: a6b53294-f871-4db2-bbd4-8c3d1fe56440 - active: true - amount: '8.00' - description: Company loan to employee - court_ordered: false - times: 5 - recurring: false - annual_maximum: - total_amount: - pay_period_maximum: '100.00' - deduct_as_percentage: true - garnishment_type: - child_support: - Create-Example: - uuid: 4c7841a2-1363-497e-bc0f-664703c7484f - version: 52b7c567242cb7452e89ba2bc02cb476 - employee_uuid: a6b53294-f871-4db2-bbd4-8c3d1fe56440 - active: true - amount: '150.00' - description: Back taxes - court_ordered: true - times: - recurring: true - annual_maximum: - total_amount: - pay_period_maximum: - deduct_as_percentage: false - garnishment_type: - child_support: - Child-Support-Example: - uuid: 4c7841a2-1363-497e-bc0f-664703c7481a - version: 52b7c567242cb7452e89ba2bc02cb383 - employee_uuid: a6b53294-f871-4db2-bbd4-8c3d1fe56440 - active: true - amount: '40.00' - description: Child support - AZ28319 - court_ordered: true - times: - recurring: true - annual_maximum: - total_amount: - pay_period_maximum: '400.00' - deduct_as_percentage: true - garnishment_type: child_support - child_support: - state: AZ - payment_period: Monthly - case_number: AZ28319 - order_number: - remittance_number: - fips_code: '04000' - Garnishment-List: - - uuid: 4c7841a2-1363-497e-bc0f-664703c7484f - version: 52b7c567242cb7452e89ba2bc02cb476 - employee_uuid: a6b53294-f871-4db2-bbd4-8c3d1fe56440 - active: true - amount: '8.00' - description: Company loan to employee - court_ordered: false - times: 5 - recurring: false - annual_maximum: - total_amount: - pay_period_maximum: '100.00' - deduct_as_percentage: true - garnishment_type: - child_support: - - uuid: 4c7841a2-1363-497e-bc0f-664703c7481a - version: 52b7c567242cb7452e89ba2bc02cb383 - employee_uuid: a6b53294-f871-4db2-bbd4-8c3d1fe56440 - active: true - amount: '40.00' - description: Child support - AZ28319 - court_ordered: true - times: - recurring: true - annual_maximum: - total_amount: - pay_period_maximum: '400.00' - deduct_as_percentage: true - garnishment_type: child_support - child_support: - state: AZ - payment_period: Monthly - case_number: AZ28319 - order_number: - remittance_number: - fips_code: '04000' - Employee-Onboarding-Document: - type: object - description: Configuration for which onboarding documents (e.g. Form I-9) are required for an employee during onboarding. - properties: - uuid: - type: - - string - - 'null' - description: The UUID of the onboarding documents config record. Null when no config has been saved yet. - readOnly: true - i9_document: - type: boolean - description: | - 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. - readOnly: true - x-examples: - config_with_i9: - uuid: 7b1d0df1-6403-4a06-8768-c1dd7d24d27a - i9_document: true - config_without_i9: - uuid: 7b1d0df1-6403-4a06-8768-c1dd7d24d27a - i9_document: false - config_not_yet_saved: - uuid: - i9_document: false - I9-Authorization: - type: object - description: An employee's I-9 authorization - properties: - uuid: - type: string - description: The UUID of the I-9 authorization - readOnly: true - form_uuid: - type: - - string - - 'null' - description: The UUID of the Form associated with this I-9 authorization. Use this with "Employee Forms" API endpoints. - readOnly: true - version: - type: string - description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. - readOnly: true - authorization_status: - type: string - description: The employee's authorization status - enum: - - citizen - - noncitizen - - permanent_resident - - alien - document_type: - anyOf: - - type: string - enum: - - uscis_alien_registration_number - - form_i94 - - foreign_passport - - type: 'null' - description: The document's document type - has_document_number: - type: - - boolean - - 'null' - description: Whether or not a `document_number` exists for this document. - expiration_date: - type: - - string - - 'null' - description: The document's expiration date - country: - type: - - string - - 'null' - description: The document's country of issuance - employer_signed: - type: boolean - description: Whether the employer has signed the Form I-9 - readOnly: true - employee_signed: - type: boolean - description: Whether the employee has signed the Form I-9 - readOnly: true - additional_info: - type: - - string - - 'null' - description: Any additional notes - alt_procedure: - type: - - boolean - - 'null' - description: Whether an alternative procedure authorized by DHS to examine documents was used - required: - - uuid - - version - - authorization_status - - employer_signed - - employee_signed - x-tags: - - I-9 Verification - x-examples: - alien_with_foreign_passport: - uuid: 7f2337f9-9b78-44b9-aeed-be4777b833a8 - version: 6ae7ff720107b356bf13b1606f60b24f - form_uuid: c54046f7-1be4-4c54-8194-f4842c30c86d - authorization_status: alien - document_type: foreign_passport - has_document_number: true - expiration_date: '2028-01-01' - country: Canada - employer_signed: false - employee_signed: false - additional_info: - alt_procedure: - citizen_authorization: - uuid: a12bc345-6789-4def-abcd-ef0123456789 - version: 52b7c567242cb7393b2a206ed6a86afcb - form_uuid: - authorization_status: citizen - document_type: - has_document_number: false - expiration_date: - country: - employer_signed: false - employee_signed: false - additional_info: - alt_procedure: - employer_signed_authorization: - uuid: 7f2337f9-9b78-44b9-aeed-be4777b833a8 - version: 8bc7393b2a206ed6a86afcb4d00c1785 - form_uuid: c54046f7-1be4-4c54-8194-f4842c30c86d - authorization_status: citizen - document_type: - has_document_number: false - expiration_date: - country: - employer_signed: true - employee_signed: true - additional_info: Additional info - alt_procedure: false - I9-Authorization-Document: - type: object - description: An employee's I-9 verification document - properties: - uuid: - type: string - description: The UUID of the I-9 verification document - readOnly: true - document_type: - type: string - description: The document's document type - document_title: - type: string - description: The document's document title - expiration_date: - type: - - string - - 'null' - description: The document's expiration date - issuing_authority: - type: string - description: The document's issuing authority - required: - - uuid - - document_type - - document_title - - issuing_authority - x-tags: - - I-9 Verification - x-examples: - driver_license: - uuid: 7f2337f9-9b78-44b9-aeed-be4777b833a8 - document_type: driver_license - issuing_authority: USA - expiration_date: '2027-01-01' - document_title: Driver's license - ssn_card: - uuid: 9p2337f9-9b78-44b9-aeed-be4777b833a8 - document_type: ssn_card - issuing_authority: USA - document_title: Social Security card - I9-Authorization-Document-Option: - type: object - description: An employee's I-9 verification document option based on the authorization status - properties: - section: - type: string - description: The document option's section in the list of acceptable documents on the Form I-9 - readOnly: true - enum: - - A - - A1 - - A2 - - A3 - - B - - C - description: - type: string - description: The document option's description - readOnly: true - document_type: - type: string - description: The document option's document type - readOnly: true - document_title: - type: array - description: The document option's document titles - readOnly: true - items: - type: string - common_choice: - type: boolean - description: Whether the document is a common choice for I-9 verification - readOnly: true - required: - - section - - description - - document_type - - document_title - - common_choice - x-tags: - - I-9 Verification - x-examples: - example_a: - section: A - description: Foreign passport - document_type: foreign_passport_w_i94 - document_title: - - Foreign passport - common_choice: true - example_b: - section: B - description: Driver's license or state-issued ID card - document_type: driver_license - document_title: - - Driver's license - - State ID card - common_choice: true - example_c: - section: C - description: Social Security card - document_type: ssn_card - document_title: - - Social Security card - common_choice: true - Termination: - type: object - description: The representation of a termination in Gusto. - properties: - uuid: - type: string - description: The UUID of the termination object. - readOnly: true - version: - type: string - description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. - employee_uuid: - type: string - description: The UUID of the employee to which this termination is attached. - readOnly: true - active: - type: boolean - description: Whether the employee's termination has gone into effect. - readOnly: true - cancelable: - type: boolean - description: Whether the employee's termination is cancelable. Cancelable is true if `run_termination_payroll` is false and `effective_date` is in the future. - readOnly: true - effective_date: - type: string - readOnly: false - description: The employee's last day of work. - run_termination_payroll: - type: boolean - readOnly: false - description: 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. - required: - - uuid - x-examples: - terminated_employee: - uuid: da441196-43a9-4d23-ad5d-f37ce6bb99c0 - employee_uuid: da441196-43a9-4d23-ad5d-f37ce6bb99c0 - version: d487dd0b55dfcacdd920ccbdaeafa351 - active: true - cancelable: false - effective_date: '2024-01-15' - run_termination_payroll: false - cancelable_termination: - uuid: da441196-43a9-4d23-ad5d-f37ce6bb99c0 - employee_uuid: da441196-43a9-4d23-ad5d-f37ce6bb99c0 - version: d487dd0b55dfcacdd920ccbdaeafa351 - active: false - cancelable: true - effective_date: '2024-06-15' - run_termination_payroll: false - Rehire-Body: - type: object - properties: - effective_date: - type: string - description: The day when the employee returns to work. - example: '2023-06-30' - file_new_hire_report: - type: boolean - description: The boolean flag indicating whether Gusto will file a new hire report for the employee. - work_location_uuid: - type: string - description: The uuid of the employee's work location. - example: b6ae9d93-d4b8-4119-8c96-dba595dd8c30 - employment_status: - type: string - description: The employee's employment status. Supplying an invalid option will set the employment_status to *not_set*. - enum: - - part_time - - full_time - - part_time_eligible - - variable - - seasonal - - not_set - two_percent_shareholder: - type: boolean - description: Whether the employee is a two percent shareholder of the company. This field only applies to companies with an S-Corp entity type. - required: - - effective_date - - file_new_hire_report - - work_location_uuid - Fast-Payment-Limit-Param: - type: string - description: Fast payment limit. This limit is an aggregate of all fast payrolls amount. This limit is only relevant when payment speed is 1-day or 2-day. - Payment-Speed-Param: - type: string - description: Gusto Embedded supports three payment speeds (1-day, 2-day, and 4-day). For next-day payments, funds are deposited in your team's bank account by the end of the next business day. Most people will see the funds arrive the next afternoon, but payments may arrive as late as the end of the business day. - enum: - - 1-day - - 2-day - - 4-day - Fast-Payment-Limit-Required-Body: - type: object - properties: - fast_payment_limit: - "$ref": "#/components/schemas/Fast-Payment-Limit-Param" - payment_speed: - "$ref": "#/components/schemas/Payment-Speed-Param" - required: - - fast_payment_limit - Payment-Speed-Required-Body: - type: object - properties: - fast_payment_limit: - "$ref": "#/components/schemas/Fast-Payment-Limit-Param" - payment_speed: - "$ref": "#/components/schemas/Payment-Speed-Param" - required: - - payment_speed - Historical-Employee-Body: - type: object - description: | - Request body for creating or updating a **historical employee**—someone who already separated from the company and must appear on year-to-date or tax filings without receiving ongoing payroll. - - Send this object under the JSON root key `employee`. All dates are ISO 8601 (`YYYY-MM-DD`). Use a `work_address.location_uuid` returned from your company locations API for an active work site. - properties: - first_name: - type: string - description: Legal first name as it appears on government-issued identification. - example: Soren - middle_initial: - type: string - description: Single middle initial, if any. - example: A - last_name: - type: string - description: Legal last name as it appears on government-issued identification. - example: Kierkegaard - preferred_first_name: - type: string - description: Preferred given name for display; omit when the same as legal first name. - example: Angel - date_of_birth: - type: string - format: date - description: Date of birth (YYYY-MM-DD). - example: '1995-05-05' - ssn: - type: string - pattern: "[0-9]{9}" - description: 'Nine-digit U.S. Social Security number **without** dashes or spaces. Must pass Gusto/SSA validation in production; use a valid test SSN in sandbox environments. - -' - example: '123456294' - work_address: - type: object - description: Primary work location for this historical employment row. - required: - - location_uuid - properties: - location_uuid: - type: string - format: uuid - description: UUID of a company work location from the company locations response. - example: 1da85d35-1910-40a7-9c1f-8e2b3d4c5a6f - home_address: - type: object - description: Residential address on file for tax withholding and compliance mail. - properties: - street_1: - type: string - description: Street address line 1. - example: 55 Mission St - street_2: - type: - - string - - 'null' - description: Apartment, suite, unit, or building (optional). - example: Floor 3 - city: - type: string - description: City. - example: San Francisco - state: - type: string - description: Two-letter U.S. state or territory postal abbreviation. - example: CA - zip: - type: string - description: ZIP or ZIP+4. - example: '94105' - required: - - street_1 - - city - - state - - zip - termination: - type: object - description: End of the historical employment period. - required: - - effective_date - properties: - effective_date: - type: string - format: date - description: Last day of employment (termination date). This is recorded on the employment; use the calendar date the person stopped working for the company. - example: '2022-01-01' - email: - type: string - format: email - description: Optional. When provided, stored on the employee record for notifications and profile. - example: soren.kierkegaard@example.com - job: - type: object - description: Hire date for the historical job used to build employments and filings. - required: - - hire_date - properties: - hire_date: - type: string - format: date - description: First calendar day the employee was employed in this role at the company. - example: '2020-01-01' - employee_state_taxes: - type: object - description: Workers' compensation fields for Washington (WA) or Wyoming (WY) when the work address is in those states; omit when not applicable. - properties: - wc_covered: - type: boolean - description: Whether this job is eligible for workers' compensation coverage in the states of Washington (WA) or Wyoming (WY). - example: true - wc_class_code: - type: string - description: The risk class code for workers' compensation in Washington or Wyoming state. For Washington, visit [Washington state's Risk Class page](https://www.lni.wa.gov/insurance/rates-risk-classes/risk-classes-for-workers-compensation/risk-class-lookup#/) to learn more. For Wyoming you can search for the code online using [WY Workforce Services website](https://dws.wyo.gov/dws-division/workers-compensation/) or call the agency at (307) 235-3217. - example: '051000' - required: - - first_name - - last_name - - date_of_birth - - ssn - - work_address - - home_address - - job - - termination - x-examples: - typical_historical_employee: - first_name: Soren - middle_initial: A - last_name: Kierkegaard - preferred_first_name: Angel - date_of_birth: '1995-05-05' - ssn: '123456294' - email: soren.kierkegaard@example.com - work_address: - location_uuid: 1da85d35-1910-40a7-9c1f-8e2b3d4c5a6f - home_address: - street_1: 55 Mission St - street_2: Floor 3 - city: San Francisco - state: CA - zip: '94105' - job: - hire_date: '2020-01-01' - termination: - effective_date: '2022-01-01' - Pay-Schedule-Assignment-Body: - type: object - properties: - type: - anyOf: - - type: string - enum: - - single - - hourly_salaried - - by_employee - - by_department - - type: 'null' - description: The pay schedule assignment type. - hourly_pay_schedule_uuid: - type: string - description: Pay schedule for hourly employees. - salaried_pay_schedule_uuid: - type: string - description: Pay schedule for salaried employees. - default_pay_schedule_uuid: - type: string - description: Default pay schedule for employees. - partial_assignment: - type: boolean - description: 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. - employees: - type: array - description: List of employees and their pay schedules. - items: - type: object - properties: - employee_uuid: - type: string - description: Employee UUID - pay_schedule_uuid: - type: string - description: Pay schedule UUID - departments: - type: array - description: List of departments and their pay schedules. - items: - type: object - properties: - department_uuid: - type: string - description: Department UUID - pay_schedule_uuid: - type: string - description: Pay schedule UUID - required: - - type - Flsa-Status-Type: - type: string - enum: - - Exempt - - Salaried Nonexempt - - Nonexempt - - Owner - - Commission Only Exempt - - Commission Only Nonexempt - description: '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. ' - Compensation: - type: object - description: The representation of compensation in Gusto. - properties: - uuid: - type: string - description: The UUID of the compensation in Gusto. - readOnly: true - version: - type: string - description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. - job_uuid: - type: string - description: The UUID of the job to which the compensation belongs. - readOnly: true - employee_uuid: - type: string - description: The UUID of the employee to which the compensation belongs. - readOnly: true - rate: - type: string - readOnly: false - description: The dollar amount paid per payment unit. - payment_unit: - type: string - readOnly: false - description: The unit accompanying the compensation rate. If the employee is an owner, rate should be 'Paycheck'. - enum: - - Hour - - Week - - Month - - Year - - Paycheck - flsa_status: - "$ref": "#/components/schemas/Flsa-Status-Type" - title: - type: string - description: The job title for this compensation. - effective_date: - type: string - readOnly: false - description: The effective date for this compensation. For the first compensation, this defaults to the job's hire date. - adjust_for_minimum_wage: - type: boolean - description: Indicates if the compensation could be adjusted to minimum wage during payroll calculation. - readOnly: true - minimum_wages: - type: array - readOnly: false - description: The minimum wages associated with the compensation. - items: - type: object - properties: - uuid: - type: string - description: The UUID of the minimum wage. - wage: - type: string - description: The wage amount. - effective_date: - type: string - description: The effective date of the minimum wage. - required: - - uuid - x-examples: - success_status: - uuid: db4d41e5-813c-477e-bfae-38da2ae5e7a3 - version: 56d00c178bc7393b2a206ed6a86afcb4 - job_uuid: c1fdb417-c34a-43a7-92f3-5e6c20c1d7a4 - employee_uuid: a7e8f9bc-0d12-4e56-b789-012345678901 - rate: '70000.00' - payment_unit: Year - flsa_status: Exempt - effective_date: '2023-01-01' - adjust_for_minimum_wage: false - minimum_wages: [] - title: Software Engineer - hourly_compensation: - uuid: e5f6a7b8-c9d0-1234-e5f6-a7b8c9d01234 - version: 98b7a6c5d4e3f2a1b0c9d8e7f6a5b4c3 - job_uuid: d2e5f8a1-b4c7-4d90-a3e6-f9b2c5d8e1a4 - employee_uuid: b8f9a0bc-1e23-4f67-c890-123456789012 - rate: '25.00' - payment_unit: Hour - flsa_status: Nonexempt - effective_date: '2023-01-01' - adjust_for_minimum_wage: false - minimum_wages: [] - title: Associate - minimum_wage_adjusted: - uuid: a4d9ba9c-32cc-4cc1-a5bc-6ef4cd653e7a - version: cc59bd3879d655fb940a1f6b675f2ad9 - job_uuid: d8f8fbe7-496d-4b69-86f0-1e2d1b73a086 - rate: '5.00' - payment_unit: Hour - flsa_status: Nonexempt - effective_date: '2018-12-11' - adjust_for_minimum_wage: true - minimum_wages: - - uuid: edeea5af-ecd6-4b1c-b5de-5cff2d302738 - wage: '7.25' - effective_date: '2018-12-11' - Form-Document-Content-Type-Type: - type: - - string - - 'null' - description: The content type of the associated document. Most forms are PDFs with a content type of `application/pdf`. Some tax file packages will be zip files (containing PDFs) with a content type of `application/zip`. This attribute will be `null` when the document has not been prepared. - readOnly: true - Form: - title: Form - type: object - properties: - uuid: - type: string - description: The UUID of the form - readOnly: true - employee_uuid: - type: string - description: The UUID of the employee to which the form belongs, if applicable. - readOnly: true - name: - type: string - description: The type identifier of the form - readOnly: true - title: - type: string - description: The title of the form - readOnly: true - description: - type: string - description: The description of the form - readOnly: true - draft: - type: boolean - description: If the form is in a draft state. E.g. End of year tax forms may be provided in a draft state prior to being finalized. - readOnly: true - year: - type: - - integer - - 'null' - description: The year of this form. For some forms, e.g. tax forms, this is the year which the form represents. A W2 for January - December 2022 would be delivered in January 2023 and have a year value of 2022. This value is nullable and will not be present on all forms. - readOnly: true - quarter: - type: - - integer - - 'null' - description: The quarter of this form. For some forms, e.g. tax forms, this is the calendar quarter which this form represents. An Employer's Quarterly Federal Tax Return (Form 941) for April, May, June 2022 would have a quarter value of 2 (and a year value of 2022). This value is nullable and will not be present on all forms. - readOnly: true - requires_signing: - type: boolean - description: A boolean flag that indicates whether the form needs signing or not. Note that this value will change after the form is signed. - readOnly: true - document_content_type: - "$ref": "#/components/schemas/Form-Document-Content-Type-Type" - x-examples: - Example: - uuid: 48cdd5ec-a4dd-4840-a424-ad79f38d8408 - name: company_direct_deposit - title: Direct Deposit Authorization - description: We need you to sign paperwork to authorize us to debit and credit your bank account and file and pay your taxes. - draft: false - year: - quarter: - requires_signing: true - document_content_type: application/pdf - employee_form: - uuid: 48cdd5ec-a4dd-4840-a424-ad79f38d8408 - employee_uuid: c5fdae67-b148-4b52-8b33-1384024a1256 - name: w4_federal - title: 'Form W-4: 2024' - description: Form W-4 determines how much federal income tax your employer will withhold from your pay. - draft: false - year: 2024 - quarter: - requires_signing: true - document_content_type: application/pdf - quarterly_tax_form: - uuid: 7a2b9f3e-1c4d-4e5f-8a6b-2d3e4f5a6b7c - name: form_941 - title: 'Form 941: Q2 2024' - description: Employer's Quarterly Federal Tax Return for the second quarter of 2024. - draft: false - year: 2024 - quarter: 2 - requires_signing: false - document_content_type: application/pdf - sandbox_w2: - uuid: bf5b2496-26df-436e-b465-eae4ed5c8021 - employee_uuid: 19394e76-a866-4570-b237-9a26b0163907 - name: US_W-2 - title: 'Draft Form W-2: 2021' - description: Form W-2 records your annual wages and taxes. - draft: true - year: 2021 - quarter: - requires_signing: false - document_content_type: application/pdf - x-tags: - - Forms - required: - - uuid - Form_1099: - title: Form - type: object - properties: - uuid: - type: string - description: The UUID of the form - readOnly: true - name: - type: string - description: The type identifier of the form - readOnly: true - title: - type: string - description: The title of the form - readOnly: true - description: - type: string - description: The description of the form - readOnly: true - draft: - type: boolean - description: If the form is in a draft state. E.g. End of year tax forms may be provided in a draft state prior to being finalized. - readOnly: true - year: - type: - - integer - - 'null' - description: The year of this form. For some forms, e.g. tax forms, this is the year which the form represents. A 1099 for January - December 2022 would be delivered in January 2023 and have a year value of 2022. This value is nullable and will not be present on all forms. - readOnly: true - quarter: - type: - - integer - - 'null' - description: The quarter of this form. This value is currently always null since it is not present on any contractor forms. - readOnly: true - requires_signing: - type: boolean - description: A boolean flag that indicates whether the form needs signing or not. Note that this value will change after the form is signed. - readOnly: true - document_content_type: - "$ref": "#/components/schemas/Form-Document-Content-Type-Type" - contractor_uuid: - type: string - description: The contractor UUID - readOnly: true - x-examples: - Example: - uuid: 48cdd5ec-a4dd-4840-a424-ad79f38d8408 - name: US_1099 - title: 'Form 1099: 2020' - description: Form 1099 records your annual income as a contractor. - draft: false - requires_signing: false - year: 2020 - quarter: - document_content_type: application/pdf - contractor_uuid: 123dd616-6dbc-4724-938a-403f6217a933 - sandbox_1099: - uuid: 29afb141-2256-431d-90e0-1c7344222342 - contractor_uuid: b68484a9-4487-4ee5-bafc-4245133a426c - name: US_1099 - title: 'Form 1099: 2022' - description: Form 1099 records your annual income as a contractor. - draft: true - requires_signing: false - year: 2022 - quarter: - document_content_type: application/pdf - x-tags: - - Forms - required: - - uuid - Form-Pdf: - title: Form Pdf - type: object - properties: - uuid: - type: string - description: the UUID of the form - readOnly: true - document_url: - type: - - string - - 'null' - description: the URL of the form - document_content_type: - "$ref": "#/components/schemas/Form-Document-Content-Type-Type" - x-examples: - Example: - uuid: 48cdd5ec-a4dd-4840-a424-ad79f38d8408 - document_url: https://app.gusto-demo.com/assets/forms/7757842065202782/original/form.pdf?1633667020 - document_content_type: application/pdf - document_not_ready: - uuid: 48cdd5ec-a4dd-4840-a424-ad79f38d8408 - document_url: - document_content_type: - required: - - uuid - Document: - title: Document - type: object - properties: - uuid: - type: string - description: The UUID of the document - readOnly: true - title: - type: string - description: The title of the document - readOnly: true - name: - type: string - description: The type identifier of the document - readOnly: true - recipient_type: - type: string - description: The type of recipient associated with the document (will be `Contractor` for Contractor Documents) - enum: - - Company - - Employee - - Contractor - readOnly: true - recipient_uuid: - type: string - description: Unique identifier for the recipient associated with the document - readOnly: true - pages: - type: array - description: List of the document's pages and associated image URLs. This is only returned for documents with `required_signing` = `true`, and can be used for signing preparation. - items: - type: object - properties: - image_url: - type: string - description: Image URL for the page - page_number: - type: integer - description: Page number - readOnly: true - fields: - type: array - description: List of the document's fields and associated data. Values are set for auto-filled fields. This is only returned for documents with `required_signing` = `true`, and can be used for signing preparation. - items: - type: object - properties: - key: - type: - - string - - 'null' - description: Unique identifier of the field. May be null for custom fields that do not correspond to a known Gusto-managed key mapping. - value: - type: - - string - - 'null' - description: Auto-filled value of the field - x: - type: - - integer - - 'null' - description: X-coordinate location of the field on the page. May be null when the field has no positioning information. - "y": - type: - - integer - - 'null' - description: Y-coordinate location of the field on the page. May be null when the field has no positioning information. - width: - type: - - integer - - 'null' - description: Width of the field. May be null when the field has no positioning information. - height: - type: - - integer - - 'null' - description: Height of the field. May be null when the field has no positioning information. - page_number: - type: - - integer - - 'null' - description: Page number of the field. May be null when the field has no positioning information. - data_type: - type: string - description: The field's data type - required: - type: boolean - description: Whether the field is required - readOnly: true - signed_at: - type: - - string - - 'null' - description: When the document was signed (will be `null` if unsigned) - readOnly: true - description: - type: string - description: The description of the document - readOnly: true - requires_signing: - type: boolean - description: A boolean flag that indicates whether the document needs signing or not. Note that this value will change after the document is signed. - draft: - type: boolean - description: If the document is in a draft state - readOnly: true - year: - type: - - integer - - 'null' - description: The year of this document. This value is nullable and will not be present on all documents. - readOnly: true - quarter: - type: - - integer - - 'null' - description: The quarter of this document. This value is nullable and will not be present on all documents. - readOnly: true - x-examples: - Example: - uuid: e83b3c20-dc4f-4382-bee3-b478fc42c68b - title: Taxpayer Identification (Form W-9) - name: taxpayer_identification_form_w_9 - recipient_type: Contractor - recipient_uuid: f079c253-29e2-45e2-b384-2cc615c9c568 - pages: - - image_url: http://app.gusto-dev.com:3000/assets/document_templates/20/unmapped_template/images/0.jpg - page_number: 0 - - image_url: http://app.gusto-dev.com:3000/assets/document_templates/20/unmapped_template/images/1.jpg - page_number: 1 - fields: - - key: text1596141656513 - value: - x: 69 - "y": 94 - width: 261 - height: 13 - page_number: 0 - data_type: text - required: true - - key: optional_text1596141704672 - value: - x: 69 - "y": 118 - width: 262 - height: 13 - page_number: 0 - data_type: text - required: false - signed_at: - description: Form W-9, Request for Taxpayer Identification Number and Certification - requires_signing: true - draft: false - year: - quarter: - x-tags: - - Documents - Document-Signed: - title: Document Signed - type: object - properties: - uuid: - type: string - description: The UUID of the document - readOnly: true - title: - type: string - description: The title of the document - readOnly: true - name: - type: string - description: The type identifier of the document - readOnly: true - recipient_type: - type: string - description: The type of recipient associated with the document (will be `Contractor` for Contractor Documents) - enum: - - Company - - Employee - - Contractor - readOnly: true - recipient_uuid: - type: string - description: Unique identifier for the recipient associated with the document - readOnly: true - pages: - type: array - description: List of the document's pages and associated image URLs. - items: - type: object - properties: - image_url: - type: string - description: Image URL for the page - page_number: - type: integer - description: Page number - readOnly: true - fields: - type: array - description: List of the document's fields and associated data. Values reflect the data provided at signing. - items: - type: object - properties: - key: - type: - - string - - 'null' - description: Unique identifier of the field. May be null for custom fields that do not correspond to a known Gusto-managed key mapping. - value: - type: - - string - - 'null' - description: Value of the field - x: - type: - - integer - - 'null' - description: X-coordinate location of the field on the page. May be null when the field has no positioning information. - "y": - type: - - integer - - 'null' - description: Y-coordinate location of the field on the page. May be null when the field has no positioning information. - width: - type: - - integer - - 'null' - description: Width of the field. May be null when the field has no positioning information. - height: - type: - - integer - - 'null' - description: Height of the field. May be null when the field has no positioning information. - page_number: - type: - - integer - - 'null' - description: Page number of the field. May be null when the field has no positioning information. - data_type: - type: string - description: The field's data type - required: - type: boolean - description: Whether the field is required - readOnly: true - signed_at: - type: - - string - - 'null' - description: When the document was signed (will be `null` if unsigned) - readOnly: true - description: - type: string - description: The description of the document - readOnly: true - requires_signing: - type: boolean - description: A boolean flag that indicates whether the document needs signing or not. Note that this value will change after the document is signed. - draft: - type: boolean - description: If the document is in a draft state - readOnly: true - year: - type: - - integer - - 'null' - description: The year of this document. This value is nullable and will not be present on all documents. - readOnly: true - quarter: - type: - - integer - - 'null' - description: The quarter of this document. This value is nullable and will not be present on all documents. - readOnly: true - x-examples: - Example: - uuid: e83b3c20-dc4f-4382-bee3-b478fc42c68b - title: Taxpayer Identification (Form W-9) - name: taxpayer_identification_form_w_9 - recipient_type: Contractor - recipient_uuid: f079c253-29e2-45e2-b384-2cc615c9c568 - signed_at: '2024-09-03T16:39:22.000-07:00' - description: Form W-9, Request for Taxpayer Identification Number and Certification - requires_signing: false - draft: false - year: - quarter: - x-tags: - - Documents - Document-Pdf: - title: Document Pdf - type: object - properties: - uuid: - type: string - description: the UUID of the document - readOnly: true - document_url: - type: string - description: the URL of the document - x-examples: - Example: - uuid: e83b3c20-dc4f-4382-bee3-b478fc42c68b - document_url: https://app.gusto-demo.com/assets/personal_documents/23/original.pdf?1724367941 - x-tags: - - Documents - Industry: - title: Industry - type: object - properties: - company_uuid: - type: string - description: Company UUID - readOnly: true - title: - type: - - string - - 'null' - example: Computer Training - description: Industry title - readOnly: true - naics_code: - type: - - string - - 'null' - example: '611420' - description: North American Industry Classification System (NAICS) is used to classify businesses with a six digit number based on the primary type of work the business performs. - sic_codes: - type: array - description: A list of Standard Industrial Classification (SIC) codes, which are four digit numbers that categorize the industries that companies belong to based on their business activities. If sic_codes is not passed in, we will perform an internal lookup with `naics_code`. - items: - type: string - example: '8243' - x-examples: - Example: - company_uuid: 423dd616-6dbc-4724-938a-403f6217a933 - naics_code: '611420' - sic_codes: - - '8243' - title: Computer Training - success_status: - company_uuid: 423dd616-6dbc-4724-938a-403f6217a933 - naics_code: '231208' - sic_codes: - - '1500' - title: Construction - x-tags: - - Industry - Job: - title: Job - type: object - properties: - uuid: - type: string - description: The UUID of the job. - readOnly: true - version: - type: string - description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. - employee_uuid: - type: string - description: The UUID of the employee to which the job belongs. - readOnly: true - hire_date: - type: string - readOnly: false - description: The date when the employee was hired or rehired for the job. - title: - type: - - string - - 'null' - readOnly: false - default: - description: The title for the job. - primary: - type: boolean - description: Whether this is the employee's primary job. The value will be set to true unless an existing job exists for the employee. - readOnly: true - rate: - type: string - description: The employee's pay rate for this job (e.g., hourly wage or annual salary). This is sensitive compensation data and requires the `compensations:read` scope. - readOnly: true - payment_unit: - type: - - string - - 'null' - description: How the employee is paid for this job (e.g., Hour, Week, Month, Year, Paycheck). This is sensitive compensation data and requires the `compensations:read` scope. - readOnly: true - current_compensation_uuid: - type: string - description: The UUID of the current active compensation record for this job. Requires the `compensations:read` scope. - readOnly: true - two_percent_shareholder: - type: boolean - description: Whether the employee owns at least 2% of the company. - readOnly: false - state_wc_covered: - type: - - boolean - - 'null' - description: Whether this job is eligible for workers' compensation coverage in the state of Washington (WA). - readOnly: false - state_wc_class_code: - type: - - string - - 'null' - description: The risk class code for workers' compensation in Washington state. Please visit [Washington state's Risk Class page](https://www.lni.wa.gov/insurance/rates-risk-classes/risk-classes-for-workers-compensation/risk-class-lookup#/) to learn more. - readOnly: false - compensations: - type: array - description: The compensation history for this job, including pay rate, payment unit, FLSA status, and effective dates. This is sensitive pay information and requires the `compensations:read` scope. - items: - "$ref": "#/components/schemas/Compensation" - readOnly: true - location_uuid: - type: string - nullable: false - description: The uuid of the employee's work location. - location: - "$ref": "#/components/schemas/Location" - description: The representation of a job in Gusto. - required: - - uuid - x-examples: - example: - uuid: d6d1035e-8a21-4e1d-89d5-fa894f9aff97 - version: gr78930htutrz444kuytr3s5hgxykuveb523fwl8sir - employee_uuid: 948daac8-4355-4ece-9e2a-229898accb22 - hire_date: '2020-01-20' - title: Account Director - primary: true - rate: '78000.00' - payment_unit: Year - current_compensation_uuid: ea8b0b90-1112-4f9d-bb93-bf029bc8537a - two_percent_shareholder: false - state_wc_covered: - state_wc_class_code: - compensations: - - uuid: ea8b0b90-1112-4f9d-bb93-bf029bc8537a - version: 98jr3289h3298hr9329gf9egskt3tjaj - job_uuid: d6d1035e-8a21-4e1d-89d5-fa894f9aff97 - employee_uuid: 948daac8-4355-4ece-9e2a-229898accb22 - rate: '78000.00' - payment_unit: Year - flsa_status: Exempt - effective_date: '2020-01-20' - adjust_for_minimum_wage: false - minimum_wages: [] - secondary_job: - uuid: a1b2c3d4-5678-9012-abcd-ef1234567890 - version: hj29fh3298hf9832hf98h32f89h32f89h32f9832 - employee_uuid: 948daac8-4355-4ece-9e2a-229898accb22 - hire_date: '2020-01-20' - title: Senior Consultant - primary: false - rate: '25.00' - payment_unit: Hour - current_compensation_uuid: b2c3d4e5-6789-0123-bcde-f12345678901 - two_percent_shareholder: false - state_wc_covered: - state_wc_class_code: - compensations: - - uuid: b2c3d4e5-6789-0123-bcde-f12345678901 - version: 93jr2398h23r9832rg9832rg98ewrg98e - job_uuid: a1b2c3d4-5678-9012-abcd-ef1234567890 - employee_uuid: 948daac8-4355-4ece-9e2a-229898accb22 - rate: '25.00' - payment_unit: Hour - flsa_status: Nonexempt - effective_date: '2020-01-20' - adjust_for_minimum_wage: false - minimum_wages: [] - External-Payroll: - description: The representation of an external payroll. - type: object - x-tags: - - External Payrolls - title: '' - properties: - uuid: - type: string - description: The UUID of the external payroll. - readOnly: true - company_uuid: - type: string - description: The UUID of the company. - readOnly: true - check_date: - type: string - description: External payroll's check date. - readOnly: true - payment_period_start_date: - type: string - description: External payroll's pay period start date. - readOnly: true - payment_period_end_date: - type: string - description: External payroll's pay period end date. - readOnly: true - status: - type: string - enum: - - unprocessed - - processed - description: The status of the external payroll. The status will be `unprocessed` when the external payroll is created and transition to `processed` once tax liabilities are entered and finalized. Once in the `processed` status all actions that can edit an external payroll will be disabled. - readOnly: true - external_payroll_items: - type: array - description: External payroll items for employees - readOnly: true - items: - type: object - properties: - employee_uuid: - type: string - earnings: - type: array - items: - type: object - properties: - amount: - type: string - format: float - hours: - type: string - format: float - earning_type: - type: string - earning_id: - type: integer - benefits: - type: array - items: - type: object - properties: - benefit_id: - type: integer - company_contribution_amount: - type: string - format: float - employee_deduction_amount: - type: string - format: float - taxes: - type: array - items: - type: object - properties: - tax_id: - type: integer - amount: - type: string - format: float - applicable_earnings: - type: array - description: Applicable earnings based on company provisioning. - readOnly: true - items: - type: object - properties: - earning_type: - type: string - earning_id: - type: number - name: - type: string - input_type: - type: string - category: - type: string - applicable_benefits: - type: - - array - - 'null' - description: Applicable benefits based on company provisioning. - readOnly: true - items: - type: object - properties: - id: - type: integer - description: - type: string - active: - type: boolean - applicable_taxes: - type: array - description: Applicable taxes based on company provisioning. - readOnly: true - items: - type: object - properties: - id: - type: integer - name: - type: string - employer_tax: - type: boolean - description: Some taxes may have an amount withheld from the employee and an amount withheld from the employer, e.g. Social Security. A `true` value indicates this is the employer's amount. - resident_tax: - type: boolean - description: Some taxes may have different rates or reporting requirements depending on if the employee is a resident or non-resident of the tax jurisdiction. - metadata: - type: object - description: Stores metadata of the external payroll. - readOnly: true - properties: - deletable: - type: boolean - description: Determines if the external payroll can be deleted. - readOnly: true - x-examples: - Example: - uuid: c5fdae57-5483-4529-9aae-f0edceed92d4 - company_uuid: bcb305b0-2855-4025-8d22-e484a9e6b7c9 - check_date: '2022-06-03' - payment_period_start_date: '2022-05-15' - payment_period_end_date: '2022-05-30' - status: unprocessed - external_payroll_items: - - employee_uuid: 44f7cba9-7a3d-4f08-b7bd-6fcf5211f8ca - earnings: - - amount: '10000.0' - hours: '0.0' - earning_type: CompanyPayType - earning_id: 1 - - amount: '500.0' - hours: '0.0' - earning_type: CompanyEarningType - earning_id: 4 - benefits: - - benefit_id: 22 - company_contribution_amount: '100.0' - employee_deduction_amount: '50.0' - - benefit_id: 25 - company_contribution_amount: '0.0' - employee_deduction_amount: '300.0' - taxes: - - tax_id: 1 - amount: '400.0' - - tax_id: 2 - amount: '60.0' - applicable_earnings: - - earning_type: CompanyPayType - earning_id: 1 - name: Regular Wages - input_type: amount - category: default - - earning_type: CompanyEarningType - earning_id: 4 - name: Cash Tips - input_type: amount - category: default - applicable_benefits: - - id: 22 - description: Kaiser - active: true - - id: 25 - description: HSA - active: true - applicable_taxes: - - id: 1 - name: Federal Income Tax - employer_tax: false - resident_tax: false - - id: 2 - name: Social Security - employer_tax: false - resident_tax: false - metadata: - deletable: true - required: - - uuid - Webhook-Subscription: - description: The representation of webhook subscription. - type: object - x-tags: - - Webhooks - title: '' - properties: - uuid: - type: string - description: The UUID of the webhook subscription. - readOnly: true - url: - type: string - description: The webhook subscriber URL. Updates will be POSTed to this URL. - readOnly: true - status: - type: string - enum: - - pending - - verified - - removed - - unreachable - description: The status of the webhook subscription. - readOnly: true - subscription_types: - type: array - description: Receive updates for these types. - readOnly: false - items: - type: string - enum: - - BankAccount - - Company - - CompanyBenefit - - Contractor - - ContractorPayment - - Employee - - EmployeeBenefit - - EmployeeJobCompensation - - ExternalPayroll - - Form - - Location - - Notification - - Payroll - - PayrollSync - - PaySchedule - - Signatory - x-examples: - Example: - uuid: c5fdae57-5483-4529-9aae-f0edceed92d4 - url: https://partner-app.com/subscriber - status: verified - subscription_types: - - BankAccount - - Company - - CompanyBenefit - - Contractor - - ContractorPayment - - Employee - - EmployeeBenefit - - EmployeeJobCompensation - - ExternalPayroll - - Form - - Location - - Notification - - Payroll - - PayrollSync - - PaySchedule - - Signatory - Pending: - uuid: a1b2c3d4-5678-90ab-cdef-1234567890ab - url: https://partner-app.com/webhooks - status: pending - subscription_types: - - Company - - Employee - required: - - uuid - External-Payroll-Basic: - description: The representation of an external payroll with minimal information. - type: object - x-tags: - - External Payrolls - title: '' - properties: - uuid: - type: string - description: The UUID of the external payroll. - readOnly: true - company_uuid: - type: string - description: The UUID of the company. - readOnly: true - check_date: - type: string - description: External payroll's check date. - readOnly: true - payment_period_start_date: - type: string - description: External payroll's pay period start date. - readOnly: true - payment_period_end_date: - type: string - description: External payroll's pay period end date. - readOnly: true - status: - type: string - enum: - - unprocessed - - processed - description: The status of the external payroll. The status will be `unprocessed` when the external payroll is created and transition to `processed` once tax liabilities are entered and finalized. Once in the `processed` status all actions that can edit an external payroll will be disabled. - readOnly: true - x-examples: - Example: - uuid: c5fdae57-5483-4529-9aae-f0edceed92d4 - company_uuid: bcb305b0-2855-4025-8d22-e484a9e6b7c9 - check_date: '2022-06-03' - payment_period_start_date: '2022-05-15' - payment_period_end_date: '2022-05-30' - status: unprocessed - required: - - uuid - External-Payroll-Tax-Suggestions: - description: The representation of an external payroll with minimal information. - type: object - x-tags: - - External Payrolls - title: '' - properties: - employee_uuid: - type: string - description: The UUID of the employee. - readOnly: true - tax_suggestions: - type: array - description: Possible tax liabilities selections. - readOnly: true - items: - type: object - properties: - tax_id: - type: integer - description: The ID of the tax. - readOnly: true - amount: - type: string - description: Calculated tax amount. - readOnly: true - x-examples: - Example: - employee_uuid: d21848d5-446f-48a8-9430-30fbefeabda4 - tax_suggestions: - - tax_id: 1 - amount: '500.0' - - tax_id: 2 - amount: '100.0' - - tax_id: 4 - amount: '30.0' - Tax-Liabilities-Selections: - description: The representation of tax liabilities selections. - x-tags: - - External Payrolls - title: '' - type: object - properties: - tax_id: - type: integer - description: The ID of the tax. - readOnly: true - tax_name: - type: string - description: The name of the tax. - readOnly: true - description: - type: - - string - - 'null' - description: A description of the tax, providing additional detail about the tax type. - readOnly: true - last_unpaid_external_payroll_uuid: - type: - - string - - 'null' - description: The UUID of last unpaid external payroll. - readOnly: true - possible_liabilities: - type: array - description: Possible tax liabilities selections. - readOnly: true - items: - type: object - properties: - liability_amount: - type: string - description: Liability amount. - readOnly: true - payroll_check_date: - type: - - string - - 'null' - description: The external payroll check date. - readOnly: true - external_payroll_uuid: - type: - - string - - 'null' - description: The UUID of the external payroll. - readOnly: true - x-examples: - Example: - tax_id: 1 - tax_name: Federal Income Tax - description: Employee Federal Income Tax - last_unpaid_external_payroll_uuid: - possible_liabilities: - - liability_amount: '0.0' - payroll_check_date: - external_payroll_uuid: - - liability_amount: '3000.0' - payroll_check_date: '2022-06-01' - external_payroll_uuid: 1bf1efe1-72d4-4e6e-a181-611f3ea66435 - Admin: - title: Admin - type: object - description: The representation of an admin user in Gusto. - x-examples: - Example: - uuid: 987058cc-23ee-46e9-81ef-5cee086cceca - first_name: John - last_name: Smith - email: jsmith99@gmail.com - phone: '8009360383' - properties: - uuid: - type: string - description: The unique id of the admin. - email: - type: string - description: The email of the admin for Gusto's system. - first_name: - type: string - description: The first name of the admin. - last_name: - type: string - description: The last name of the admin. - phone: - type: - - string - - 'null' - description: The phone number of the admin. - x-tags: - - Admins - required: - - uuid - Company: - title: Company - type: object - description: The representation of a company in Gusto. - properties: - ein: - type: string - description: The Federal Employer Identification Number of the company. - readOnly: true - entity_type: - description: The tax payer type of the company. - anyOf: - - type: string - enum: - - C-Corporation - - S-Corporation - - Sole proprietor - - LLC - - LLP - - Limited partnership - - Co-ownership - - Association - - Trusteeship - - General partnership - - Joint venture - - Non-Profit - - type: 'null' - readOnly: true - contractor_only: - type: boolean - description: Whether the company only supports contractors. - tier: - type: - - string - - 'null' - description: The Gusto product tier of the company (not applicable to Embedded partner managed companies). - readOnly: true - enum: - - simple - - plus - - premium - - core - - complete - - concierge - - contractor_only - - basic - is_suspended: - type: boolean - description: Whether or not the company is suspended in Gusto. Suspended companies may not run payroll. - company_status: - type: string - description: The status of the company in Gusto. "Approved" companies are approved to run payroll from a risk and compliance perspective. However, an approved company may still need to resolve other [payroll blockers](https://docs.gusto.com/embedded-payroll/docs/payroll-blockers) to be able to run payroll. "Not Approved" companies may not yet run payroll with Gusto and may need to complete onboarding or contact support. "Suspended" companies may not run payroll with Gusto. In order to unsuspend their account, the company must contact support. - enum: - - Approved - - Not Approved - - Suspended - readOnly: true - uuid: - type: string - description: A unique identifier of the company in Gusto. - readOnly: true - name: - type: string - description: The name of the company. - readOnly: true - slug: - type: string - description: The slug of the name of the company. - readOnly: true - trade_name: - type: - - string - - 'null' - description: The trade name of the company. - readOnly: true - is_partner_managed: - type: boolean - description: Whether the company is fully managed by a partner via the API - readOnly: true - is_high_risk_business: - type: boolean - description: Whether or not Gusto has identified the company as representing a high fraud risk. - readOnly: true - is_marijuana_business: - type: boolean - description: Whether or not the company is a marijuana-related business. - readOnly: true - pay_schedule_type: - anyOf: - - type: string - enum: - - single - - hourly_salaried - - by_employee - - by_department - - type: 'null' - description: The pay schedule assignment type. - readOnly: true - join_date: - type: - - string - - 'null' - description: Company's first invoiceable event date - readOnly: true - funding_type: - description: Company's default funding type - anyOf: - - type: string - enum: - - ach - - reverse_wire - - wire_in - - partner_disbursement - - rtp - - line_of_credit - - type: 'null' - locations: - type: array - uniqueItems: false - description: The locations of the company. - items: - "$ref": "#/components/schemas/Company-Address" - readOnly: true - compensations: - type: object - description: The available company-wide compensation rates for the company. - properties: - hourly: - type: array - uniqueItems: true - description: The available hourly compensation rates for the company. - items: - type: object - properties: - uuid: - type: - - string - - 'null' - description: The UUID of the hourly compensation rate. - readOnly: true - name: - type: string - description: The name of the hourly compensation rate. - example: Overtime - readOnly: true - multiple: - type: number - description: The amount multiplied by the base rate of a job to calculate compensation. - example: 1.5 - readOnly: true - readOnly: true - readOnly: true - fixed: - type: array - uniqueItems: true - description: The available fixed compensation rates for the company. - items: - type: object - properties: - uuid: - type: - - string - - 'null' - description: The UUID of the fixed compensation. - readOnly: true - name: - type: string - description: The name of the fixed compensation. - example: Bonus - readOnly: true - readOnly: true - paid_time_off: - type: array - uniqueItems: true - description: The available types of paid time off for the company. - items: - type: object - properties: - uuid: - type: - - string - - 'null' - description: The UUID of the paid time off type. - readOnly: true - name: - type: string - example: Vacation Hours - description: The name of the paid time off type. - readOnly: true - readOnly: true - readOnly: true - readOnly: true - primary_signatory: - type: - - object - - 'null' - description: The primary signatory of the company. - properties: - uuid: - type: string - readOnly: true - description: The UUID of the company's primary signatory. - first_name: - type: string - readOnly: true - description: The company's primary signatory's first name. - middle_initial: - type: - - string - - 'null' - readOnly: true - description: The company's primary signatory's middle initial. - last_name: - type: string - readOnly: true - description: The company's primary signatory's last name. - phone: - type: string - readOnly: true - description: The company's primary signatory's phone number. - email: - type: string - readOnly: true - description: The company's primary signatory's email address. - home_address: - type: object - properties: - street_1: - type: string - readOnly: true - street_2: - type: - - string - - 'null' - readOnly: true - city: - type: string - readOnly: true - state: - type: string - readOnly: true - zip: - type: string - readOnly: true - country: - type: string - readOnly: true - readOnly: true - description: The company's primary signatory's home address. - readOnly: true - primary_payroll_admin: - type: object - description: The primary payroll admin of the company. - properties: - first_name: - type: string - readOnly: true - description: The company's primary payroll admin's first name. - last_name: - type: string - readOnly: true - description: The company's primary payroll admin's last name. - phone: - type: - - string - - 'null' - readOnly: true - description: The company's primary payroll admin's phone number. - email: - type: string - readOnly: true - description: The company's primary payroll admin's email address. - x-examples: - success_status: - uuid: c7a07c73-a703-4462-9343-1b181182b6e0 - name: Shoppe Studios LLC - trade_name: Record Shoppe - is_partner_managed: true - tier: complete - locations: - - street_1: 412 Kiera Stravenue - street_2: Suite 391 - city: San Francisco - state: CA - zip: '94107' - country: USA - active: true - - street_1: 644 Fay Vista - street_2: Suite 842 - city: Richmond - state: VA - zip: '23218' - country: USA - active: true - ein: 00-0000001 - entity_type: C-Corporation - pay_schedule_type: by_department - join_date: '2024-01-15' - funding_type: ach - slug: shoppe-studios-llc - is_suspended: false - company_status: Approved - is_high_risk_business: false - is_marijuana_business: false - contractor_only: false - compensations: - hourly: - - uuid: 7da6b57d-22f9-11f1-ad28-0242ac100003 - name: Overtime - multiple: 1.5 - - uuid: 7da6b5ec-22f9-11f1-ad28-0242ac100003 - name: Double overtime - multiple: 2 - - uuid: 7da6b22f-22f9-11f1-ad28-0242ac100003 - name: Regular - multiple: 1 - - uuid: 7da6b3ac-22f9-11f1-ad28-0242ac100003 - name: Outstanding vacation - multiple: 1 - - uuid: 7da6b532-22f9-11f1-ad28-0242ac100003 - name: Holiday - multiple: 1 - - uuid: 7da6b44e-22f9-11f1-ad28-0242ac100003 - name: Emergency sick - self care - multiple: 1 - - uuid: 7da6b49d-22f9-11f1-ad28-0242ac100003 - name: Emergency sick - caring for others - multiple: 1 - - uuid: 7da6b4e6-22f9-11f1-ad28-0242ac100003 - name: FMLA Public Health Emergency Leave - multiple: 1 - fixed: - - uuid: 7da68d82-22f9-11f1-ad28-0242ac100003 - name: Bonus - - uuid: 7da69024-22f9-11f1-ad28-0242ac100003 - name: Commission - - uuid: 7da69104-22f9-11f1-ad28-0242ac100003 - name: Paycheck Tips - - uuid: 7da6918f-22f9-11f1-ad28-0242ac100003 - name: Cash Tips - - uuid: 7da69216-22f9-11f1-ad28-0242ac100003 - name: Correction Payment - - uuid: 7da692a6-22f9-11f1-ad28-0242ac100003 - name: Severance - - uuid: 7da69356-22f9-11f1-ad28-0242ac100003 - name: Minimum Wage Adjustment - - uuid: - name: Reimbursement - paid_time_off: - - uuid: 7dcdcb77-22f9-11f1-ad28-0242ac100003 - name: Vacation Hours - - uuid: 7dcdcc8b-22f9-11f1-ad28-0242ac100003 - name: Sick Hours - - uuid: - name: Holiday Hours - primary_signatory: - uuid: 2d7cd96f-e2fb-4db7-8c04-99ef531b4527 - first_name: Alda - middle_initial: '' - last_name: Carter - phone: '4160000000' - email: louie.hessel7757869450111547@zemlak.biz - home_address: - street_1: 524 Roob Divide - street_2: Suite 565 - city: San Francisco - state: CA - zip: '94107' - country: USA - primary_payroll_admin: - first_name: Ian - last_name: Labadie - phone: 1-565-710-7559 - email: louie.hessel7757869450111547@zemlak.biz - x-tags: - - Companies - required: - - uuid - Company-Onboarding-Status: - description: The representation of a company's onboarding status - type: object - title: '' - x-examples: - Example: - uuid: c44d66dc-c41b-4a60-9e25-5e93ff8583f2 - onboarding_completed: false - onboarding_steps: - - title: Add Your Company's Addresses - id: add_addresses - required: true - completed: true - completed_at: '2025-02-18T10:00:00Z' - skippable: false - requirements: [] - - title: Enter Your Federal Tax Information - id: federal_tax_setup - required: true - completed: true - completed_at: '2025-02-18T10:00:00Z' - skippable: false - requirements: [] - - title: Select Industry - id: select_industry - required: true - completed: true - completed_at: '2025-02-18T10:00:00Z' - skippable: false - requirements: [] - - title: Add Your Bank Account - id: add_bank_info - required: true - completed: true - completed_at: '2025-02-18T10:00:00Z' - skippable: false - requirements: [] - - title: Add Your Employees - id: add_employees - required: true - completed: true - completed_at: '2025-02-18T10:00:00Z' - skippable: true - requirements: - - add_addresses - - title: Enter Your State Tax Information - id: state_setup - required: true - completed: false - completed_at: - skippable: false - requirements: - - add_addresses - - add_employees - - title: Select a Pay Schedule - id: payroll_schedule - required: true - completed: false - completed_at: - skippable: false - requirements: [] - - title: Sign Documents - id: sign_all_forms - required: true - completed: false - completed_at: - skippable: false - requirements: - - add_employees - - federal_tax_setup - - state_setup - - add_bank_info - - payroll_schedule - - title: Verify Your Bank Account - id: verify_bank_info - required: true - completed: false - completed_at: - skippable: false - requirements: - - add_bank_info - x-tags: - - Companies - properties: - uuid: - type: string - description: the UUID of the company - onboarding_completed: - type: boolean - description: a boolean flag for the company's onboarding status - onboarding_steps: - type: array - description: a list of company onboarding steps - items: - title: Onboarding step - type: object - properties: - title: - type: string - description: The display name of the onboarding step - id: - type: string - description: The string identifier for each onboarding step - enum: - - add_addresses - - federal_tax_setup - - select_industry - - add_bank_info - - add_employees - - state_setup - - payroll_schedule - - sign_all_forms - - verify_bank_info - - external_payroll - required: - type: boolean - description: The boolean flag indicating whether the step is required or optional - completed: - type: boolean - description: The boolean flag indicating whether the step is completed or not. - completed_at: - type: - - string - - 'null' - description: The ISO 8601 timestamp indicating when the onboarding step was completed. - skippable: - type: boolean - description: The boolean flag indicating whether the step can be skipped or not. - requirements: - type: array - description: A list of onboarding steps that are required to be completed in order to proceed with the current onboarding step. - items: - type: string - enum: - - add_addresses - - federal_tax_setup - - select_industry - - add_bank_info - - add_employees - - state_setup - - payroll_schedule - - sign_all_forms - - verify_bank_info - - external_payroll - required: - - uuid - Payment-Configs: - title: Payment-Configs - type: object - properties: - company_uuid: - type: string - description: Company uuid - readOnly: true - partner_uuid: - type: string - description: Partner uuid - readOnly: true - fast_payment_limit: - type: - - string - - 'null' - description: Payment limit for 1-day or 2-day payroll (string representation of decimal). - readOnly: true - payment_speed: - type: string - enum: - - 1-day - - 2-day - - 4-day - description: | - Payment speed. READ-ONLY. - - `1-day`: Next-day ACH (only for partners that opt in). - - `2-day`: Two-day ACH. - - `4-day`: Standard ACH. - readOnly: true - partner_owned_disbursement: - type: boolean - description: Whether the company is configured to use the partner-owned disbursement payment rail - readOnly: true - earned_fast_ach_blockers: - type: array - description: Blockers preventing the company from earning fast ACH payments - readOnly: true - items: - type: object - properties: - blocker_type: - type: string - description: The type of blocker - enum: - - minimum_days - - minimum_funded_payments - readOnly: true - threshold: - type: number - description: The threshold needed to unblock - readOnly: true - x-examples: - typical_payment_config: - company_uuid: 423dd616-6dbc-4724-938a-403f6217a933 - partner_uuid: 556f05d0-48e0-4c47-bce5-db9aea923043 - fast_payment_limit: '5000.0' - payment_speed: 2-day - partner_owned_disbursement: false - earned_fast_ach_blockers: [] - payment_config_with_blockers: - company_uuid: 423dd616-6dbc-4724-938a-403f6217a933 - partner_uuid: 556f05d0-48e0-4c47-bce5-db9aea923043 - fast_payment_limit: - payment_speed: 2-day - partner_owned_disbursement: false - earned_fast_ach_blockers: - - blocker_type: minimum_days - threshold: 15 - - blocker_type: minimum_funded_payments - threshold: 5 - x-tags: - - Payment Configs - Contractor-Body: - type: object - properties: - type: - type: string - description: The contractor type. - default: Individual - enum: - - Individual - - Business - wage_type: - type: string - description: 'The contractor’s wage type. - -' - enum: - - Fixed - - Hourly - start_date: - type: string - description: 'The day when the contractor will start working for the company. - -' - example: '2020-01-11' - hourly_rate: - type: string - description: The contractor’s hourly rate. This attribute is required if the wage_type is `Hourly`. - example: '40.0' - self_onboarding: - type: boolean - default: false - description: |- - Whether the contractor or the payroll admin will complete onboarding in Gusto. - Self-onboarding is recommended so that contractors receive Gusto accounts. - If self_onboarding is true, then email is required. - email: - type: string - description: The contractor’s email address. - first_name: - type: string - description: |- - The contractor’s first name. - This attribute is required for `Individual` contractors and will be ignored for `Business` contractors. - last_name: - type: string - description: |- - The contractor’s last name. - This attribute is required for `Individual` contractors and will be ignored for `Business` contractors. - middle_initial: - type: string - description: |- - The contractor’s middle initial. - This attribute is optional for `Individual` contractors and will be ignored for `Business` contractors. - file_new_hire_report: - type: boolean - default: false - description: |- - The boolean flag indicating whether Gusto will file a new hire report for the contractor. - This attribute is optional for `Individual` contractors and will be ignored for `Business` contractors. - work_state: - type: - - string - - 'null' - description: |- - 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. - This attribute is required for `Individual` contractors if `file_new_hire_report` is true and will be ignored for `Business` contractors. - ssn: - type: string - pattern: "[0-9]{9}" - description: |- - This attribute is optional for `Individual` contractors and will be ignored for `Business` contractors. - Social security number is needed to file the annual 1099 tax form. - business_name: - type: string - description: The name of the contractor business. This attribute is required for `Business` contractors and will be ignored for `Individual` contractors. - ein: - type: string - description: |- - The employer identification number of the contractor business. - This attribute is optional for `Business` contractors and will be ignored for `Individual` contractors. - is_active: - type: boolean - description: The status of the contractor. If the contractor's start date is in the future, updating this field to true means we are setting the start date to today. Attempting to deactivate a contractor while a dismissal is already scheduled, or reactivate while a rehire is already scheduled, will return a 422 error. Cancel the pending transition first using the appropriate cancel endpoint. - Contractor: - description: The representation of a contractor (individual or business) in Gusto. +security: + - CompanyAccessAuth: [] +components: + schemas: + Versionable-Required: type: object properties: - uuid: - type: string - description: The UUID of the contractor in Gusto. - readOnly: true - company_uuid: - type: string - description: The UUID of the company the contractor is employed by. - readOnly: true - wage_type: - type: string - enum: - - Fixed - - Hourly - description: The contractor's wage type, either "Fixed" or "Hourly". - is_active: - type: boolean - default: true - description: The status of the contractor with the company. - readOnly: true version: type: string + example: 56d00c178bc7393b2a206ed6a86afcb4 description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. - type: - type: string - enum: - - Individual - - Business - description: 'The contractor''s type, either "Individual" or "Business". ' - first_name: - type: - - string - - 'null' - description: The contractor’s first name. This attribute is required for “Individual” contractors and will be ignored for “Business” contractors. - last_name: - type: - - string - - 'null' - description: The contractor’s last name. This attribute is required for “Individual” contractors and will be ignored for “Business” contractors. - middle_initial: - type: - - string - - 'null' - description: The contractor’s middle initial. This attribute is optional for “Individual” contractors and will be ignored for “Business” contractors. - business_name: - type: - - string - - 'null' - description: The name of the contractor business. This attribute is required for “Business” contractors and will be ignored for “Individual” contractors. - ein: - type: - - string - - 'null' - description: The Federal Employer Identification Number of the contractor business. This attribute is optional for “Business” contractors and will be ignored for “Individual” contractors. - has_ein: - type: - - boolean - - 'null' - description: Whether company's Employer Identification Number (EIN) is present - email: - type: - - string - - 'null' - description: 'The contractor’s email address. This attribute is optional for “Individual” contractors and will be ignored for “Business” contractors. ' - start_date: - type: string - description: The contractor's start date. - readOnly: true - address: - type: - - object - - 'null' - description: The contractor’s home address. - properties: - street_1: - type: string - readOnly: true - street_2: - type: - - string - - 'null' - readOnly: true - city: - type: string - readOnly: true - state: - type: string - readOnly: true - zip: - type: string - readOnly: true - country: - type: string - readOnly: true - readOnly: true - hourly_rate: - type: string - example: '50.0' - description: The contractor’s hourly rate. This attribute is required if the wage_type is “Hourly”. - file_new_hire_report: - type: - - boolean - - 'null' - description: The boolean flag indicating whether Gusto will file a new hire report for the contractor - work_state: - type: - - string - - 'null' - description: |- - 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. - onboarded: - type: boolean - description: The updated onboarding status for the contractor - onboarding_status: - type: string - description: One of the "onboarding_status" enum values. - enum: - - admin_onboarding_incomplete - - admin_onboarding_review - - self_onboarding_not_invited - - self_onboarding_invited - - self_onboarding_started - - self_onboarding_review - - onboarding_completed - payment_method: - anyOf: - - type: string - enum: - - Direct Deposit - - Check - - type: 'null' - description: The contractor's payment method. - has_ssn: - type: boolean - description: Indicates whether the contractor has an SSN in Gusto. - department_uuid: - type: - - string - - 'null' - description: The UUID of the department the contractor is under - department: - type: - - string - - 'null' - description: The contractor's department in the company. - readOnly: true - department_title: - type: - - string - - 'null' - description: The title of the contractor's department. - readOnly: true - dismissal_date: - type: - - string - - 'null' - description: The contractor's dismissal date. - readOnly: true - upcoming_employment: - type: - - object - - 'null' - description: The contractor's upcoming employment details, if a rehire is scheduled. - readOnly: true - properties: - start_date: - type: string - description: The start date of the upcoming employment. - setup_status: - type: - - string - - 'null' - description: The setup status of the upcoming employment. - dismissal_cancellation_eligible: - type: boolean - description: Whether the contractor's pending dismissal can be cancelled. - readOnly: true - rehire_cancellation_eligible: - type: boolean - description: Whether the contractor's pending rehire can be cancelled. - readOnly: true - member_portal_invitation_status: - type: - - object - - 'null' - description: Member portal invitation status information. Only included when the include param has the portal_invitations value set. - properties: - status: - type: string - description: The current status of the member portal invitation. - enum: - - pending - - sent - - verified - - complete - - cancelled - token_expired: - type: - - boolean - - 'null' - description: Whether the invitation token has expired. - welcome_email_sent_at: - type: - - string - - 'null' - format: date-time - description: The date and time when the welcome email was sent. - last_password_resent_at: - type: - - string - - 'null' - format: date-time - description: The date and time when the password reset was last resent. - partner_portal_invitation_sent: - type: - - boolean - - 'null' - description: Whether an external partner portal invitation webhook has been sent for this contractor. Only included when the include param has the portal_invitations value set. - x-tags: - - Contractors required: - - uuid + - version + Minimum-Wage-List: + type: array x-examples: - Individual Contractor: - uuid: c9fc1ad3-c107-4e7b-aa21-2dd4b00a7a07 - company_uuid: b7457fec-3b76-43bb-9c6e-69cca4688942 - wage_type: Hourly - start_date: '2022-01-01' - is_active: true - version: 63859768485e218ccf8a449bb60f14ed - type: Individual - first_name: Kory - last_name: Gottlieb - middle_initial: P - business_name: - ein: - has_ein: false - has_ssn: true - department_uuid: 56260b3d-c375-415c-b77a-75d99f717193 - email: keira.west@mckenzie.org - file_new_hire_report: true - work_state: FL - onboarded: true - onboarding_status: onboarding_completed - address: - street_1: 621 Jast Row - street_2: Apt. 281 - city: Coral Springs - state: FL - zip: '33065' - country: USA - hourly_rate: '60.00' - payment_method: Direct Deposit - department: Engineering - department_title: Engineering - dismissal_date: - upcoming_employment: - dismissal_cancellation_eligible: false - rehire_cancellation_eligible: false - member_portal_invitation_status: - status: sent - token_expired: false - welcome_email_sent_at: '2024-01-15T14:30:00Z' - last_password_resent_at: - partner_portal_invitation_sent: true - Business Contractor: - uuid: c7c0659c-21a6-4b4e-b74c-9252576fc68c - company_uuid: 0ec4ae6e-e436-460d-b63c-94a14503d16f - wage_type: Fixed - start_date: '2022-01-01' - is_active: true - version: 8aab307f1e8ed788697f8986346af559 - type: Business - first_name: - last_name: - middle_initial: - business_name: Labadie-Stroman - ein: XX-XXX0001 - has_ein: true - has_ssn: false - email: jonatan@kerluke.info - file_new_hire_report: false - work_state: - onboarded: true - onboarding_status: onboarding_completed - address: - street_1: 1625 Bednar Center - street_2: Apt. 480 - city: Port Charlotte - state: FL - zip: '33954' - country: USA - hourly_rate: '0.00' - payment_method: Direct Deposit - department_uuid: - department: - department_title: - dismissal_date: - upcoming_employment: - dismissal_cancellation_eligible: false - rehire_cancellation_eligible: false - member_portal_invitation_status: - partner_portal_invitation_sent: false - Contractor-Onboarding-Status: - description: The representation of an contractor's onboarding status. + success_status: + - uuid: 1b71bb5b-4811-46e9-8a8a-cf5521cbeda6 + authority: City + wage: '15.0' + wage_type: Regular + effective_date: '2017-01-01' + notes: large companies + - uuid: 87434623-b57d-4630-8da5-9dde599c7840 + authority: City + wage: '10.5' + wage_type: Regular + effective_date: '2017-01-01' + notes: large companies + - uuid: fa055c11-bfe4-4ac3-84dd-8502cf046b20 + authority: State + wage: '10.5' + wage_type: Regular + effective_date: '2017-01-01' + notes: large companies + - uuid: cdd9dfc2-6465-4693-ae60-0eecff35038c + authority: Federal + wage: '10.5' + wage_type: Regular + effective_date: '2017-01-01' + notes: large companies + items: + "$ref": "#/components/schemas/Minimum-Wage" + Minimum-Wage: type: object - title: Contractor-Onboarding-Status - x-tags: - - Contractor - x-examples: - example: - uuid: bc57832c-d8bc-43a7-ae99-3a03380ff037 - onboarding_status: admin_onboarding_incomplete - onboarding_steps: - - title: Basic details - id: basic_details - required: true - completed: false - requirements: [] - - title: Enter compensation details - id: compensation_details - required: true - completed: false - requirements: [] - - title: Add an address - id: add_address - required: true - completed: false - requirements: [] - - title: Payment details - id: payment_details - required: true - completed: false - requirements: [] - - title: Sign and acknowledge documents - id: sign_documents - required: false - completed: false - requirements: - - basic_details - - add_address - - title: File new hire report - id: file_new_hire_report - required: false - completed: false - requirements: - - basic_details + description: Representation of a Minimum Wage properties: uuid: type: string - description: Unique identifier for this contractor. - onboarding_status: + description: unique identifier of a minimum wage + wage: type: string - description: One of the "onboarding_status" enum values. - enum: - - onboarding_completed - - admin_onboarding_review - - admin_onboarding_incomplete - - self_onboarding_not_invited - - self_onboarding_invited - - self_onboarding_started - - self_onboarding_review - onboarding_steps: - type: array - description: List of steps required to onboard a contractor. - items: - title: Onboarding step - type: object - properties: - title: - type: string - description: User-friendly description of the onboarding step. - id: - type: string - description: String identifier for the onboarding step. - required: - type: boolean - description: When true, this step is required. - completed: - type: boolean - description: When true, this step has been completed. - requirements: - type: array - description: A list of onboarding steps required to begin this step. - items: - type: string + format: float + description: The wage rate for a minimum wage record. Represented as a float, e.g. "15.0". + wage_type: + type: string + description: The type of wage the minimum wage applies to, e.g. "Regular", "Regular-Industry-Specific". + effective_date: + type: string + format: date + description: The date the minimum wage rule is effective on. + authority: + type: string + description: The governing authority that created the minimum wage, e.g. "City", "State", or "Federal". + notes: + type: string + description: Description of parties the minimum wage applies to. required: - uuid - Contractor-Payment: - description: The representation of a single contractor payment. + - wage + - wage_type + - effective_date + - authority + Location: + description: The representation of an address in Gusto. type: object + title: '' x-examples: success_status: - uuid: 04552eb9-7829-4b18-ae96-6983552948df - contractor_uuid: bc57832c-d8bc-43a7-ae99-3a03380ff037, - bonus: '20.0' - date: '2020-10-19' - hours: '40.0' - payment_method: Direct Deposit - reimbursement: '100.0' - hourly_rate: '18.0' - may_cancel: true - status: Funded - wage: '0.0' - wage_type: Hourly - wage_total: '740.00' - example: - uuid: 04552eb9-7829-4b18-ae96-6983552948df - contractor_uuid: bc57832c-d8bc-43a7-ae99-3a03380ff037 - bonus: '20.0' - date: '2020-10-19' - hours: '40.0' - payment_method: Direct Deposit - reimbursement: '100.0' - hourly_rate: '18.0' - may_cancel: false - status: Funded - wage: '0.0' - wage_type: Hourly - wage_total: '740.00' - title: Contractor Payment + created_at: '2025-06-09T13:43:49.000-07:00' + updated_at: '2025-06-09T13:43:50.000-07:00' + company_uuid: 10593a6a-505b-4aa6-bf31-15dcdceedbe3 + version: e1bdd845a493c74908f8e15d6114169b + uuid: 6b1351a2-de35-4499-b948-43abab274634 + street_1: 300 3rd Street + street_2: Apartment 318 + city: San Francisco + state: CA + zip: '94107' + country: USA + active: true + phone_number: '8009360383' + filing_address: true + mailing_address: true properties: uuid: type: string - description: The unique identifier of the contractor payment in Gusto. + description: The UUID of the location object. readOnly: true - contractor_uuid: + version: type: string - description: The UUID of the contractor. - readOnly: true - bonus: + description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. + company_uuid: type: string - format: float - description: The bonus amount in the payment. + description: The UUID for the company to which the location belongs. Only included if the location belongs to a company. readOnly: true - date: + phone_number: type: string - description: The payment date. - readOnly: true - hours: + readOnly: false + description: The phone number for the location. Required for company locations. Optional for employee locations. + street_1: type: string - format: float - description: The number of hours worked for the payment. - readOnly: true - payment_method: + readOnly: false + street_2: + type: + - string + - 'null' + readOnly: false + city: type: string - description: The payment method. - enum: - - Direct Deposit - - Check - - Historical Payment - - Correction Payment - readOnly: true - reimbursement: + readOnly: false + state: type: string - format: float - description: The reimbursement amount in the payment. - readOnly: true - status: + readOnly: false + zip: type: string - description: Contractor payment status - enum: - - Funded - - Unfunded - hourly_rate: + readOnly: false + country: type: string - format: float - description: The rate per hour worked for the payment. - readOnly: true - may_cancel: + readOnly: false + default: USA + mailing_address: type: boolean - description: Determine if the contractor payment can be cancelled. - readOnly: true - wage: + description: Specifies if the location is the company's mailing address. Only included if the location belongs to a company. + filing_address: + description: Specifies if the location is the company's filing address. Only included if the location belongs to a company. + type: boolean + created_at: type: string - format: float - description: The fixed wage of the payment, regardless of hours worked. - readOnly: true - wage_type: + description: Datetime for when location is created + updated_at: type: string - description: The wage type for the payment. - enum: - - Hourly - - Fixed + description: Datetime for when location is updated + active: + type: boolean + description: The status of the location. Inactive locations have been deleted, but may still have historical data associated with them. readOnly: true - wage_total: - type: string - format: float - description: "(hours * hourly_rate) + wage + bonus" + inactive: + type: boolean + description: The status of the location. Inactive locations have been deleted, but may still have historical data associated with them. readOnly: true - x-tags: - - Contractor Payments + warnings: + type: array + description: An array of warning objects that provide additional information about the address. Warnings do not prevent the address from being saved. + items: + "$ref": "#/components/schemas/Warning-Object" required: - uuid - Contractor-Payment-Group: - description: The full contractor payment group, including associated contractor payments. - type: object - allOf: - - "$ref": "#/components/schemas/Contractor-Payment-Group-Base" - - type: object - properties: - partner_owned_disbursement: - type: - - boolean - - 'null' - description: Whether the disbursement is partner owned. - readOnly: true - submission_blockers: - type: array - description: List of submission blockers for the contractor payment group. - readOnly: true - items: - "$ref": "#/components/schemas/Payroll-Submission-Blocker-Type" - credit_blockers: - type: array - description: List of credit blockers for the contractor payment group. - readOnly: true - items: - "$ref": "#/components/schemas/Payroll-Credit-Blocker-Type" - totals: - type: object - properties: - amount: - type: string - description: The total amount for the group of contractor payments. - readOnly: true - debit_amount: - type: string - description: The total debit amount for the group of contractor payments. Sum of wage & reimbursement amount. - readOnly: true - wage_amount: - type: string - description: The total wage amount for the group of contractor payments. - readOnly: true - reimbursement_amount: - type: string - description: The total reimbursement amount for the group of contractor payments. - readOnly: true - check_amount: - type: string - description: The total check amount for the group of contractor payments. - readOnly: true - readOnly: true - contractor_payments: - type: array - items: - "$ref": "#/components/schemas/Contractor-Payment-For-Group" - x-examples: - success: - uuid: f693e034-d833-46e3-88d4-2c820c383c57 - company_uuid: c54046f7-1be4-4c54-8194-f4842c30c86d - check_date: '2024-05-07' - debit_date: '2024-05-01' - status: Unfunded - creation_token: 45ef81bb-ae24-4ad1-b2c6-6e563a4c30ed - contractor_payments: - - uuid: 630dc982-f498-4ebc-a6dc-4d76711027ce - contractor_uuid: 2e6d0970-31bf-47ce-bdb4-713e4207ecf4 - bonus: '0.0' - hours: '40.0' - hourly_rate: '18.0' - may_cancel: false - payment_method: Direct Deposit - reimbursement: '75.0' - status: Unfunded - wage: '0.0' - wage_type: Hourly - wage_total: '720.0' - - uuid: 12f51eba-d653-4357-8c05-1f1f8d0fd5e3 - contractor_uuid: a975fda0-fcf5-469a-a5fd-06e43d1cd99d - bonus: '0.0' - hours: '0.0' - hourly_rate: '0.0' - may_cancel: false - payment_method: Check - reimbursement: '0.0' - status: Unfunded - wage: '1500.0' - wage_type: Fixed - wage_total: '1500.0' - totals: - amount: '2295.0' - debit_amount: '2295.0' - wage_amount: '2220.0' - reimbursement_amount: '75.0' - With submission blockers: - uuid: 5ec3b582-7d04-4397-be1e-f0e79d00e1b7 - company_uuid: 4a39b249-1e22-4fc9-a40f-cb07d2ab394e - check_date: '2025-08-21' - debit_date: '2025-08-19' - status: Unfunded - creation_token: 5ec3b582-7d04-4397-be1e-f0e79d00e1b7 - partner_owned_disbursement: false - submission_blockers: - - blocker_type: fast_ach_threshold_exceeded - blocker_name: Fast ACH Threshold Exceeded - selected_option: wire_in - status: resolved - unblock_options: - - unblock_type: wire_in - check_date: '2025-08-21' - metadata: - wire_in_deadline: '2025-08-21T18:00:00Z' - wire_in_amount: '760000.0' - - unblock_type: move_to_four_day - check_date: '2025-08-21' - metadata: - debit_date: '2025-08-15' - credit_blockers: - - blocker_type: waiting_for_wire_in - blocker_name: Waiting for Wire In - selected_option: submit_wire - status: unresolved - unblock_options: - - unblock_type: submit_wire - check_date: '2025-08-21' - metadata: - wire_in_deadline: '2025-08-21T18:00:00Z' - wire_in_amount: '760000.0' - wire_in_request_uuid: 7a31fef8-46c6-4114-9677-214b7a3cb532 - contractor_payments: - - uuid: ca8c7899-c2dc-40bb-8b7e-08c1309f5135 - contractor_uuid: b4c6cd3c-4b45-4738-ad40-3da45b29a765 - bonus: '0.0' - hours: '0.0' - hourly_rate: '0.0' - may_cancel: false - payment_method: Direct Deposit - reimbursement: '750000.0' - status: Unfunded - wage: '10000.0' - wage_type: Fixed - wage_total: '10000.0' - totals: - amount: '760000.00' - debit_amount: '760000.00' - wage_amount: '10000.00' - reimbursement_amount: '750000.00' - check_amount: '0.00' - x-tags: - - Contractor Payment Groups - Contractor-Payment-Group-Minimal: - description: The summary of a contractor payment group. - type: object - allOf: - - "$ref": "#/components/schemas/Contractor-Payment-Group-Base" - - type: object - properties: - totals: - type: object - properties: - amount: - type: string - description: The total amount for the group of contractor payments. - readOnly: true - debit_amount: - type: string - description: The total debit amount for the group of contractor payments. Sum of wage & reimbursement amount. - readOnly: true - wage_amount: - type: string - description: The total wage amount for the group of contractor payments. - readOnly: true - reimbursement_amount: - type: string - description: The total reimbursement amount for the group of contractor payments. - readOnly: true - readOnly: true - x-examples: - success: - - uuid: 7f2337f9-9b78-44b9-aeed-be4777b833a8 - company_uuid: c54046f7-1be4-4c54-8194-f4842c30c86d - check_date: '2024-03-15' - debit_date: '2024-03-11' - status: Funded - creation_token: a51a3500-3200-43af-a738-169d4b66a9db - totals: - debit_amount: '740.00' - wage_amount: '720.00' - reimbursement_amount: '20.00' - - uuid: 56260b3d-c375-415c-b77a-75d99f717193 - company_uuid: c54046f7-1be4-4c54-8194-f4842c30c86d - check_date: '2024-05-02' - debit_date: '2024-04-26' - status: Unfunded - creation_token: 45ef81bb-ae24-4ad1-b2c6-6e563a4c30ed - totals: - debit_amount: '2365.00' - wage_amount: '2270.00' - reimbursement_amount: '95.00' - x-tags: - - Contractor Payment Groups - Contractor-Payment-For-Group: - description: The representation of a single contractor payment. + Company-Location-Request: type: object + description: Request body for creating a company location (company address). properties: - uuid: - type: string - description: The unique identifier of the contractor payment in Gusto. - readOnly: true - contractor_uuid: - type: string - description: The UUID of the contractor. - readOnly: true - bonus: - type: string - description: The bonus amount in the payment. - readOnly: true - hours: - type: string - description: The number of hours worked for the payment. - readOnly: true - payment_method: - type: string - description: The payment method. - enum: - - Direct Deposit - - Check - - Historical Payment - - Correction Payment - readOnly: true - reimbursement: + street_1: type: string - description: The reimbursement amount in the payment. - readOnly: true - status: + description: Street address line 1. + example: 300 3rd Street + street_2: + type: + - string + - 'null' + description: Street address line 2. + example: Apartment 318 + city: type: string - description: The status of the contractor payment. Will transition to `Funded` during payments processing if the payment should be funded, i.e. has `Direct Deposit` for payment method. Contractors payments with `Check` payment method will remain `Unfunded`. - enum: - - Funded - - Unfunded - hourly_rate: + description: City. + example: San Francisco + state: type: string - description: The rate per hour worked for the payment. - readOnly: true - may_cancel: - type: boolean - description: Determine if the contractor payment can be cancelled. - readOnly: true - wage: + description: State code (e.g. CA). Must be a valid two-letter state code. + example: CA + zip: type: string - description: The fixed wage of the payment, regardless of hours worked. - readOnly: true - wage_type: + description: ZIP code. Must be a valid US zip (e.g. 12345 or 12345-6789). + example: '94107' + country: type: string - description: The wage type for the payment. - enum: - - Hourly - - Fixed - readOnly: true - wage_total: + description: Country code. Defaults to USA. + default: USA + example: USA + phone_number: type: string - description: "(hours * hourly_rate) + wage + bonus" - readOnly: true - x-tags: - - Contractor Payment Groups - Contractor-Payment-Summary: - description: The representation of the summary of contractor payments for a given company in a given time period. - type: object + description: Phone number. Must be 10 digits. + pattern: "[0-9]{10}" + example: '8009360383' + mailing_address: + type: boolean + description: Specify if this location is the company's mailing address. + filing_address: + type: boolean + description: Specify if this location is the company's filing address. + required: + - phone_number + - street_1 + - city + - state + - zip + x-examples: + typical_location: + street_1: 300 3rd Street + street_2: Apartment 318 + city: San Francisco + state: CA + zip: '94107' + country: USA + phone_number: '8009360383' + mailing_address: false + filing_address: false + Company-Locations-List: + type: array x-examples: success_status: - total: - reimbursements: '110.0' - wages: '1840.0' - contractor_payments: - - contractor_uuid: bc57832c-d8bc-43a7-ae99-3a03380ff037 - reimbursement_total: '110.0' - wage_total: '1840.0' - payments: - - uuid: 04552eb9-7829-4b18-ae96-6983552948df - contractor_uuid: bc57832c-d8bc-43a7-ae99-3a03380ff037 - bonus: '20.0' - date: '2020-10-19' - hours: '40.0' - payment_method: Direct Deposit - reimbursement: '100.0' - hourly_rate: '18.0' - may_cancel: true - wage: '0.0' - wage_type: Hourly - wage_total: '740.00' - - uuid: 25cfeb96-17fc-4fdf-8941-57f3fb9eea00 - contractor_uuid: bc57832c-d8bc-43a7-ae99-3a03380ff037 - bonus: '100.0' - date: '2020-10-19' - hours: '0.00' - payment_method: Direct Deposit - reimbursement: '10.0' - hourly_rate: '0.0' - may_cancel: true - wage: '1000.0' - wage_type: Fixed - wage_total: '1100.0' + - uuid: 04552eb9-7829-4b18-ae96-6983552948df + version: 7d9753112507b9dda4fb97910f39b06e + company_uuid: 6bf7807c-a5a0-4f4d-b2e7-3fbb4b2299fb + phone_number: '5825710808' + street_1: 412 Kiera Stravenue + street_2: Suite 391 + city: San Francisco + state: CA + zip: '94107' + country: USA + mailing_address: false + filing_address: false + created_at: '2023-09-12T16:42:25.000-07:00' + updated_at: '2023-09-12T16:42:25.000-07:00' + active: true + inactive: false + - uuid: fa94a2fd-11a8-4024-87ff-85c587d9d2b4 + version: 15e6b9680e00f3122729e64e3cef3224 + company_uuid: 6bf7807c-a5a0-4f4d-b2e7-3fbb4b2299fb + phone_number: '2866070827' + street_1: 644 Fay Vista + street_2: Suite 842 + city: Richmond + state: VA + zip: '23218' + country: USA, + mailing_address: true + filing_address: false + created_at: '2023-09-12T16:42:25.000-07:00' + updated_at: '2023-09-12T16:42:25.000-07:00' + active: true + inactive: false + items: + "$ref": "#/components/schemas/Location" + Not-Found-Error-Object: + description: "Not Found \n \nThe requested resource does not exist. Make sure the provided ID/UUID is valid." + type: object + required: + - errors properties: - total: - type: object - description: The wage and reimbursement totals for all contractor payments within a given time period. - properties: - reimbursements: - type: string - format: float - description: The total reimbursements for contractor payments within a given time period. - readOnly: true - wages: - type: string - format: float - description: The total wages for contractor payments within a given time period. - readOnly: true - readOnly: true - contractor_payments: + errors: type: array - uniqueItems: false - description: The individual contractor payments, within a given time period, grouped by contractor. items: type: object - description: '' + required: + - error_key + - category properties: - contractor_uuid: - type: number - description: The UUID of the contractor. - readOnly: true - reimbursement_total: + error_key: type: string - format: float - description: The total reimbursements for the contractor within a given time period. - readOnly: true - wage_total: + description: Specifies where the error occurs. Typically this key identifies the attribute/parameter related to the error. + category: type: string - format: float - description: The total wages for the contractor within a given time period. - readOnly: true - payments: - type: array - uniqueItems: false - description: The contractor's payments within a given time period. - items: - "$ref": "#/components/schemas/Contractor-Payment" - readOnly: true - readOnly: true - x-tags: - - Contractor Payments - Contractor-Payment-Summary-By-Dates: - description: The representation of the summary of contractor payments for a given company in a given time period. - type: object + description: Specifies the type of error. The category provides error groupings and can be used to build custom error handling in your integration. + message: + type: string + description: Provides details about the error - generally this message can be surfaced to an end user. x-examples: - success_status: - total: - reimbursements: '110.0' - wages: '1840.0' - contractor_payments: - - check_date: '2020-10-19' - reimbursement_total: '110.0' - wage_total: '1840.0' - payments: - - uuid: 04552eb9-7829-4b18-ae96-6983552948df - contractor_uuid: bc57832c-d8bc-43a7-ae99-3a03380ff037 - bonus: '20.0' - date: '2020-10-19' - hours: '40.0' - payment_method: Direct Deposit - reimbursement: '100.0' - hourly_rate: '18.0' - wage: '0.0' - wage_type: Hourly - wage_total: '740.00' - - uuid: 25cfeb96-17fc-4fdf-8941-57f3fb9eea00 - contractor_uuid: bc57832c-d8bc-43a7-ae99-3a03380ff037 - bonus: '100.0' - date: '2020-10-19' - hours: '0.00' - payment_method: Direct Deposit - reimbursement: '10.0' - hourly_rate: '0.0' - wage: '1000.0' - wage_type: Fixed - wage_total: '1100.0' + not_found: + errors: + - error_key: request + category: not_found + message: The requested resource was not found. + deprecated_accept_terms_of_service: + errors: + - error_key: request + category: deprecated_endpoint + message: The requested endpoint is no longer supported in the requested API version. Use POST /v1/partner_managed_companies/:company_uuid/terms_of_service instead + deprecated_retrieve_terms_of_service: + errors: + - error_key: request + category: deprecated_endpoint + message: The requested endpoint is no longer supported in the requested API version. Use PUT /v1/partner_managed_companies/:company_uuid/terms_of_service instead + Conflict-Error-Object: + description: "Conflict\n \nThis may happen when the resource version provided does not match the current version — retrieve the latest version and retry — or when the request conflicts with another in-progress operation on the same resource. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details." + type: object + required: + - errors properties: - total: - type: object - description: The wage and reimbursement totals for all contractor payments within a given time period. - properties: - reimbursements: - type: string - format: float - description: The total reimbursements for contractor payments within a given time period. - readOnly: true - wages: - type: string - format: float - description: The total wages for contractor payments within a given time period. - readOnly: true - readOnly: true - contractor_payments: + errors: type: array - uniqueItems: false - description: The individual contractor payments, within a given time period, grouped by check date. items: type: object - description: '' + required: + - error_key + - category properties: - contractor_uuid: - type: string - description: The UUID of the contractor. - readOnly: true - check_date: + error_key: type: string - description: The payment check date. - readOnly: true - reimbursement_total: + description: Specifies where the error occurs. Typically this key identifies the attribute/parameter related to the error. + category: type: string - format: float - description: The total reimbursements for the contractor within a given time period. - readOnly: true - wage_total: + description: Specifies the type of error. The category provides error groupings and can be used to build custom error handling in your integration. + message: type: string - format: float - description: The total wages for the contractor within a given time period. - readOnly: true - payments: - type: array - uniqueItems: false - description: The contractor's payments within a given time period. - items: - "$ref": "#/components/schemas/Contractor-Payment" - readOnly: true - readOnly: true - readOnly: true - x-tags: - - Contractor Payments - Contractor-Payment-Method: - title: Contractor-Payment-Method - type: object + description: Provides details about the error - generally this message can be surfaced to an end user. x-examples: - check_method: - version: 63859768485e218ccf8a449bb60f14ed - type: Check - split_by: - splits: - Example-1: - value: - version: 63859768485e218ccf8a449bb60f14ed - type: Direct Deposit - split_by: Percentage - splits: - - uuid: e88f9436-b74e-49a8-87e9-777b9bfe715e - name: BoA Checking Account - priority: 1 - split_amount: 100 - Example-2: - value: - version: 63859768485e218ccf8a449bb60f14ed - type: Check - description: '' - properties: - version: - type: string - description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. - type: - anyOf: - - type: string - enum: - - Direct Deposit - - Check - - type: 'null' - description: 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. - split_by: - anyOf: - - type: string - enum: - - Amount - - Percentage - - type: 'null' - description: Describes how the payment will be split. If `split_by` is Percentage, then the `split` amounts must add up to exactly 100. If `split_by` is Amount, then values are in cents and the last split amount must be `null` to capture the remainder. - splits: - type: - - array - - 'null' - items: - "$ref": "#/components/schemas/Payment-Method-Bank-Account" - x-tags: - - Contractor Payment Method - Payment-Method-Bank-Account: + invalid_version: + errors: + - error_key: base + category: invalid_resource_version + message: You are attempting to update a resource using an out-of-date version. + locked_payroll: + errors: + - error_key: base + category: invalid_operation + message: This payroll is currently being processed by another request. Please try again later. + Forbidden-Error-Object: + description: "Forbidden\n \nThe targeted company has been archived because its EIN was reassigned to a replacement company. Use the replacement company referenced in the error metadata." type: object - description: Representation of a bank account item - properties: - uuid: - type: string - description: The bank account ID - name: - type: string - description: The bank account name - hidden_account_number: - type: string - description: Masked bank account number - priority: - type: integer - description: The order of priority for each payment split, with priority 1 being the first bank account paid. Priority must be unique and sequential. - split_amount: - description: If `split_by` is 'Amount', this is in cents (e.g., 500 for $5.00) and exactly one account must have a `split_amount` of `null` to capture the remainder. If `split_by` is 'Percentage', this is the percentage value (e.g., 60 for 60%). - type: - - integer - - 'null' required: - - uuid + - errors + properties: + errors: + type: array + items: + "$ref": "#/components/schemas/Entity-Error-Object" + x-examples: + company_auto_archived: + errors: + - error_key: base + category: invalid_operation + message: This company was archived because its EIN was reassigned to a replacement company. Use the replacement company referenced in the error metadata to proceed. + metadata: + replacement_company_uuid: 2b9e7c14-6d3a-4f52-9e8b-1a7c4d05f6e0 Unprocessable-Entity-Error-Object: description: "Unprocessable Entity\n \nThis may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details.\n" type: object @@ -24653,6 +430,52 @@ components: items: "$ref": "#/components/schemas/Entity-Error-Object" x-examples: + tax_filing_invalid_status: + errors: + - error_key: status + category: invalid_attribute_value + message: 'Status must be one of: not_started, in_progress, blocked, accepted, not_required, failed' + tax_filing_invalid_sort_by: + errors: + - error_key: sort_by + category: invalid_attribute_value + message: Sort by must be one of period_start, period_end, due_date, filed_at, optionally suffixed with :asc or :desc + tax_filing_invalid_period_start: + errors: + - error_key: period_start + category: invalid_attribute_value + message: Period start must be a valid ISO 8601 date + tax_filing_invalid_jurisdiction: + errors: + - error_key: jurisdiction + category: invalid_attribute_value + message: 'Jurisdiction must be two-letter state codes or US (invalid: XX)' + tax_payment_invalid_sort_by: + errors: + - error_key: sort_by + category: invalid_parameter + message: 'Unknown sort_by: bogus:asc. Must be one of amount, due_date, payment_sent_on, period_end, period_start, optionally suffixed with :asc or :desc' + tax_payment_inverted_range: + errors: + - error_key: due_date_to + category: invalid_attribute_value + message: Due date to must be greater than or equal to due date from + partner_managed_company_disassociate_not_associated: + errors: + - error_key: base + category: invalid_operation + message: 'Could not disassociate from embedded payroll: company not associated with partner.' + bulk_report_invalid_report_type: + errors: + - error_key: batch + category: nested_errors + errors: + - idx: 0 + category: nested_errors + errors: + - error_key: report_type + category: invalid_attribute_value + message: 'Invalid report type: invalid_type' nested_disbursement_errors: errors: - error_key: disbursements @@ -24674,6 +497,16 @@ components: - error_key: payment_status category: invalid_attribute_value message: Payment status is not valid for payment method 'InvalidMethod'. + webhook_subscription_url_missing: + errors: + - error_key: url + category: invalid_attribute_value + message: URL can't be blank + webhook_subscription_invalid_entity_type: + errors: + - error_key: subscription_entities.entity_type + category: invalid_attribute_value + message: Entity type is not included in the list invalid_token: errors: - error_key: base @@ -24922,16 +755,13 @@ components: - error_key: reimbursements category: invalid_attribute_value message: Cannot update recurring reimbursements through payroll updates. Update the recurring reimbursement directly. - migrate_company_invalid_ip: - errors: - - error_key: ip_address - category: invalid_attribute_value - message: A valid user's IP Address is required in order to accept terms of service. - migrate_company_invalid_signatory: + migrate_company_terms_of_service: errors: - - error_key: email - category: invalid_attribute_value - message: A valid signatory email is required to perform this operation. + - error_key: base + category: migration_blocker + message: Terms of service must be accepted by a company payroll admin. + metadata: + key: terms_of_service migrate_company_already_migrated: errors: - error_key: base @@ -25026,27 +856,6 @@ components: - error_key: base category: invalid_operation message: There is an error in the request body. - nyc_withholding_allowance_required: - errors: - - error_key: states - category: nested_errors - errors: - - error_key: questions - category: nested_errors - metadata: - state: NY - errors: - - error_key: answers - category: nested_errors - metadata: - key: total_allowances_nyc - errors: - - error_key: value - category: invalid_attribute_value - message: NYC Withholding Allowance is required for employees who live in New York City - metadata: - valid_from: '2010-01-01' - valid_up_to: pay_schedule_missing_anchor_dates: errors: - error_key: anchor_pay_date @@ -25179,6 +988,11 @@ components: - error_key: base category: invalid_operation message: This type of payroll cannot be modified or processed. It is reserved for system processes. + employee_uuids_required: + errors: + - error_key: employee_uuids + category: invalid_attribute_value + message: At least one employee_uuid is required to create an off-cycle payroll. invalid_employee_uuids_format: errors: - error_key: employee_uuids @@ -25189,6 +1003,11 @@ components: - error_key: employee_uuids category: invalid_attribute_value message: Exceeded maximum of 100 for lookup. + maximum_off_roster_additions_surpassed: + errors: + - error_key: employee_uuids + category: invalid_attribute_value + message: Cannot add more than 25 new employees to the payroll per call. invalid_employee_uuid: errors: - error_key: employee_uuids @@ -25252,6 +1071,24 @@ components: - error_key: base category: invalid_resource_version message: You are attempting to update a resource using an out-of-date version. + payroll_update_stale_employee_compensation_version: + errors: + - error_key: base + category: invalid_resource_version + message: Supplied Version (stale-version) is invalid. + metadata: + entity_type: Employee + entity_uuid: a8e9d2c6-1f3b-4d5a-9c8e-7f0b2d4c6e8a + employee_create_self_onboarding_missing_email: + errors: + - error_key: email + category: invalid_attribute_value + message: Email is required to invite the employee to self-onboard + employee_benefit_simple_ira_elective_mismatch: + errors: + - error_key: elective + category: invalid_attribute_value + message: Elective must be true for matching Simple IRA benefits signatory_email_required: errors: - error_key: email @@ -25308,6 +1145,11 @@ components: - error_key: legal_name category: invalid_attribute_value message: Legal name cannot be updated after company has been onboarded. Please contact support to update the legal name. + ein_collision: + errors: + - error_key: ein + category: invalid_attribute_value + message: EIN is already in use company_location_validation: errors: - error_key: street_1 @@ -25335,6 +1177,11 @@ components: - error_key: request category: invalid_parameter message: The provided parameter is invalid or missing. + invalid_sort_by: + errors: + - error_key: sort_by + category: invalid_parameter + message: Invalid sort order or direction. flow_invalid_entity: errors: - error_key: entity_type @@ -25380,6 +1227,26 @@ components: - error_key: is_active category: invalid_attribute_value message: Cannot reactivate while a rehire is scheduled. Use the cancel rehire endpoint to remove the pending rehire first. + contractor_rehire_start_date_required: + errors: + - error_key: start_date + category: invalid_attribute_value + message: Start date is required + contractor_rehire_no_pending: + errors: + - error_key: base + category: invalid_operation + message: No pending rehire to cancel + contractor_termination_end_date_required: + errors: + - error_key: end_date + category: invalid_attribute_value + message: End date is required + contractor_termination_no_pending_dismissal: + errors: + - error_key: base + category: invalid_operation + message: No pending dismissal to cancel contractor_address_invalid_attribute: errors: - error_key: street_1 @@ -25708,9 +1575,9 @@ components: message: Coverage amount is only applicable for group term life employee benefit. employee_benefit_destroy_invalid: errors: - - error_key: base - category: invalid_attribute_value - message: An active employee benefit must have either a company contribution or an employee deduction + - error_key: benefit_type + category: invalid_parameter + message: This application is not permitted to modify benefits of type 100 (Other (taxable)). company_benefit_has_employees: errors: - error_key: base @@ -25888,153 +1755,8928 @@ components: - error_key: tax_id category: invalid_attribute_value message: Tax liability selections are not valid + member_portal_already_complete: + errors: + - error_key: base + category: invalid_operation + message: Member has already complete member portal registration. + member_portal_not_eligible: + errors: + - error_key: base + category: invalid_operation + message: This member is not eligible for a member portal invitation in their current onboarding status (admin_onboarding_incomplete). Invite the member to self-onboard before sending a member portal invitation. + member_portal_member_info_incomplete_missing_start_date: + errors: + - error_key: base + category: invalid_operation + message: This member has not completed onboarding. Cannot proceed without member's job start date. + member_portal_member_info_incomplete_missing_email: + errors: + - error_key: base + category: invalid_operation + message: This member has not completed onboarding. Cannot proceed without an email. + member_portal_already_cancelled: + errors: + - error_key: base + category: invalid_operation + message: This invitation has already been cancelled. + member_portal_not_cancellable: + errors: + - error_key: base + category: invalid_operation + message: This invitation is no longer cancellable. x-speakeasy-name-override: UnprocessableEntityError Entity-Error-Object: type: object - required: - - error_key - - category + required: + - error_key + - category + properties: + error_key: + type: string + description: Specifies where the error occurs. Typically this key identifies the attribute/parameter related to the error. + category: + type: string + description: Specifies the type of error. The category provides error groupings and can be used to build custom error handling in your integration. If category is `nested_errors`, the object will contain a nested `errors` property with entity errors. + message: + type: string + description: Provides details about the error - generally this message can be surfaced to an end user. + metadata: + type: object + description: Contains relevant data to identify the resource in question when applicable. For example, to identify an entity `entity_type` and `entity_uuid` will be provided. + oneOf: + - "$ref": "#/components/schemas/Metadata-With-Multiple-Entities" + - "$ref": "#/components/schemas/Metadata-With-One-Entity" + errors: + type: array + description: Will only exist if category is `nested_errors`. It is possible to have multiple levels of nested errors. + items: + "$ref": "#/components/schemas/Entity-Error-Object" + Warning-Object: + type: object + properties: + error_key: + type: string + description: Specifies where the warning occurs. Typically identifies the attribute or parameter related to the warning. + category: + type: string + description: Specifies the type of warning. Can be used to build custom warning handling. + message: + type: string + description: Provides details about the warning. The message can be surfaced directly to the end user. + Metadata-With-One-Entity: + type: object + description: single entity + additionalProperties: true + properties: + entity_type: + type: string + description: Name of the entity that the error corresponds to. + entity_uuid: + type: string + description: Unique identifier for the entity. + valid_from: + type: + - string + - 'null' + valid_up_to: + type: + - string + - 'null' + key: + type: + - string + - 'null' + state: + type: + - string + - 'null' + Metadata-With-Multiple-Entities: + type: object + description: multiple entities + required: + - entities + properties: + entities: + type: array + items: + "$ref": "#/components/schemas/Metadata-With-One-Entity" + Employee: + title: Employee + type: object + description: The representation of an employee in Gusto. + x-examples: + success_status: + uuid: d7282d99-ab6b-42f5-ba45-f4a670e886a8 + first_name: Boaty + middle_initial: + last_name: Koss + email: keena.feest@kiehn.co.uk + company_uuid: e904cc79-818a-4da8-9d37-0be0a86fdda8 + manager_uuid: + version: a5cec1f1c0135feb3e76ca6ea3c46176 + current_employment_status: full_time + onboarding_status: onboarding_completed + preferred_first_name: + department_uuid: + employee_code: 46f036 + payment_method: Direct Deposit + department: + terminated: false + two_percent_shareholder: false + onboarded: true + historical: false + has_ssn: true + onboarding_documents_config: + uuid: + i9_document: false + jobs: + - uuid: bc875f9d-adc5-40f6-99db-ed8470bda25f + version: 863bcd01c51fcfa2468d604cffec7413 + employee_uuid: d7282d99-ab6b-42f5-ba45-f4a670e886a8 + current_compensation_uuid: 2ec164d0-808b-446c-8120-8cfb500945d0 + payment_unit: Year + primary: true + two_percent_shareholder: false + state_wc_covered: + state_wc_class_code: + title: '' + compensations: + - uuid: 2ec164d0-808b-446c-8120-8cfb500945d0 + employee_uuid: d7282d99-ab6b-42f5-ba45-f4a670e886a8 + version: db7bfb49a4f0893432cb562311bfcad9 + payment_unit: Year + flsa_status: Exempt + adjust_for_minimum_wage: false + minimum_wages: [] + job_uuid: bc875f9d-adc5-40f6-99db-ed8470bda25f + effective_date: '2025-06-09' + rate: '80000.00' + rate: '80000.00' + hire_date: '2024-06-09' + eligible_paid_time_off: [] + terminations: [] + garnishments: [] + date_of_birth: '2005-06-09' + ssn: '' + phone: + work_email: + member_portal_invitation_status: + status: sent + token_expired: false + welcome_email_sent_at: '2024-01-15T14:30:00Z' + last_password_resent_at: + partner_portal_invitation_sent: true + properties: + uuid: + type: string + description: The UUID of the employee in Gusto. + readOnly: true + first_name: + type: string + middle_initial: + type: + - string + - 'null' + last_name: + type: string + email: + type: + - string + - 'null' + description: The personal email address of the employee. This is provided to support syncing users between our system and yours. You may not use this email address for any other purpose (e.g. marketing). + company_uuid: + type: string + description: The UUID of the company the employee is employed by. + readOnly: true + manager_uuid: + type: + - string + - 'null' + description: The UUID of the employee's manager. + readOnly: true + version: + type: string + description: The current version of the employee. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. + readOnly: true + department: + type: + - string + - 'null' + description: The employee's department in the company. + readOnly: true + terminated: + type: boolean + description: Whether the employee is terminated. + readOnly: true + two_percent_shareholder: + type: + - boolean + - 'null' + description: Whether the employee is a two percent shareholder of the company. This field only applies to companies with an S-Corp entity type. + work_email: + type: + - string + - 'null' + description: The work email address of the employee. This is provided to support syncing users between our system and yours. You may not use this email address for any other purpose (e.g. marketing). + onboarded: + type: boolean + description: Whether the employee has completed onboarding. + readOnly: true + onboarding_status: + description: The current onboarding status of the employee + anyOf: + - type: string + enum: + - onboarding_completed + - 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 + - type: 'null' + readOnly: true + onboarding_documents_config: + type: object + description: Configuration for an employee onboarding documents during onboarding + properties: + uuid: + type: + - string + - 'null' + description: The UUID of the onboarding documents config + readOnly: true + i9_document: + type: boolean + description: Whether to include Form I-9 for an employee during onboarding + readOnly: true + jobs: + type: array + items: + "$ref": "#/components/schemas/Job" + eligible_paid_time_off: + type: array + items: + "$ref": "#/components/schemas/Paid-Time-Off" + terminations: + type: array + items: + "$ref": "#/components/schemas/Termination" + garnishments: + type: array + items: + "$ref": "#/components/schemas/Garnishment" + custom_fields: + type: array + description: Custom fields are only included for the employee if the include param has the custom_fields value set + items: + "$ref": "#/components/schemas/Employee-Custom-Field" + date_of_birth: + type: + - string + - 'null' + readOnly: true + has_ssn: + type: boolean + description: Indicates whether the employee has an SSN in Gusto. + ssn: + type: string + description: Deprecated. This field always returns an empty string. + phone: + type: + - string + - 'null' + preferred_first_name: + type: + - string + - 'null' + description: '' + payment_method: + type: string + description: The employee's payment method + enum: + - Direct Deposit + - Check + default: Check + nullable: false + current_employment_status: + anyOf: + - type: string + enum: + - full_time + - part_time_under_twenty_hours + - part_time_twenty_plus_hours + - variable + - seasonal + - type: 'null' + description: 'The current employment status of the employee. Full-time employees work 30+ hours per week. Part-time employees are split into two groups: those that work 20-29 hours a week, and those that work under 20 hours a week. Variable employees have hours that vary each week. Seasonal employees are hired for 6 months of the year or less.' + readOnly: true + historical: + type: boolean + nullable: false + employee_code: + type: string + description: The short format code of the employee + nullable: false + readOnly: true + department_uuid: + type: + - string + - 'null' + description: The UUID of the department the employee is under + title: + type: string + nullable: false + hired_at: + type: string + nullable: false + format: date + description: The date when the employee was hired to the company + hidden_ssn: + type: string + nullable: false + flsa_status: + "$ref": "#/components/schemas/Flsa-Status-Type" + applicable_tax_ids: + type: array + nullable: false + items: + type: number + member_portal_invitation_status: + type: + - object + - 'null' + description: Member portal invitation status information. Only included when the include param has the portal_invitations value set. + properties: + status: + type: string + description: The current status of the member portal invitation. + enum: + - pending + - sent + - verified + - complete + - cancelled + token_expired: + type: + - boolean + - 'null' + description: Whether the invitation token has expired. + welcome_email_sent_at: + type: + - string + - 'null' + format: date-time + description: The date and time when the welcome email was sent. + last_password_resent_at: + type: + - string + - 'null' + format: date-time + description: The date and time when the password reset was last resent. + partner_portal_invitation_sent: + type: + - boolean + - 'null' + description: Whether an external partner portal invitation webhook has been sent for this employee. Only included when the include param has the portal_invitations value set. + required: + - uuid + - first_name + - last_name + readOnly: true + Job: + title: Job + type: object + properties: + uuid: + type: string + description: The UUID of the job. + readOnly: true + version: + type: string + description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. + employee_uuid: + type: string + description: The UUID of the employee to which the job belongs. + readOnly: true + hire_date: + type: string + readOnly: false + description: The date when the employee was hired or rehired for the job. + title: + type: + - string + - 'null' + readOnly: false + default: + description: The title for the job. + primary: + type: boolean + description: Whether this is the employee's primary job. The value will be set to true unless an existing job exists for the employee. + readOnly: true + rate: + type: string + description: The employee's pay rate for this job (e.g., hourly wage or annual salary). This is sensitive compensation data and requires the `compensations:read` scope. + readOnly: true + payment_unit: + type: + - string + - 'null' + description: How the employee is paid for this job (e.g., Hour, Week, Month, Year, Paycheck). This is sensitive compensation data and requires the `compensations:read` scope. + readOnly: true + current_compensation_uuid: + type: string + description: The UUID of the current active compensation record for this job. Requires the `compensations:read` scope. + readOnly: true + two_percent_shareholder: + type: boolean + description: Whether the employee owns at least 2% of the company. + readOnly: false + state_wc_covered: + type: + - boolean + - 'null' + description: Whether this job is eligible for workers' compensation coverage in the state of Washington (WA). + readOnly: false + state_wc_class_code: + type: + - string + - 'null' + description: The risk class code for workers' compensation in Washington state. Please visit [Washington state's Risk Class page](https://www.lni.wa.gov/insurance/rates-risk-classes/risk-classes-for-workers-compensation/risk-class-lookup#/) to learn more. + readOnly: false + compensations: + type: array + description: The compensation history for this job, including pay rate, payment unit, FLSA status, and effective dates. This is sensitive pay information and requires the `compensations:read` scope. + items: + "$ref": "#/components/schemas/Compensation" + readOnly: true + location_uuid: + type: string + nullable: false + description: The uuid of the employee's work location. + location: + "$ref": "#/components/schemas/Location" + description: The representation of a job in Gusto. + required: + - uuid + x-examples: + example: + uuid: d6d1035e-8a21-4e1d-89d5-fa894f9aff97 + version: gr78930htutrz444kuytr3s5hgxykuveb523fwl8sir + employee_uuid: 948daac8-4355-4ece-9e2a-229898accb22 + hire_date: '2020-01-20' + title: Account Director + primary: true + rate: '78000.00' + payment_unit: Year + current_compensation_uuid: ea8b0b90-1112-4f9d-bb93-bf029bc8537a + two_percent_shareholder: false + state_wc_covered: + state_wc_class_code: + compensations: + - uuid: ea8b0b90-1112-4f9d-bb93-bf029bc8537a + version: 98jr3289h3298hr9329gf9egskt3tjaj + job_uuid: d6d1035e-8a21-4e1d-89d5-fa894f9aff97 + employee_uuid: 948daac8-4355-4ece-9e2a-229898accb22 + rate: '78000.00' + payment_unit: Year + flsa_status: Exempt + effective_date: '2020-01-20' + adjust_for_minimum_wage: false + minimum_wages: [] + secondary_job: + uuid: a1b2c3d4-5678-9012-abcd-ef1234567890 + version: hj29fh3298hf9832hf98h32f89h32f89h32f9832 + employee_uuid: 948daac8-4355-4ece-9e2a-229898accb22 + hire_date: '2020-01-20' + title: Senior Consultant + primary: false + rate: '25.00' + payment_unit: Hour + current_compensation_uuid: b2c3d4e5-6789-0123-bcde-f12345678901 + two_percent_shareholder: false + state_wc_covered: + state_wc_class_code: + compensations: + - uuid: b2c3d4e5-6789-0123-bcde-f12345678901 + version: 93jr2398h23r9832rg9832rg98ewrg98e + job_uuid: a1b2c3d4-5678-9012-abcd-ef1234567890 + employee_uuid: 948daac8-4355-4ece-9e2a-229898accb22 + rate: '25.00' + payment_unit: Hour + flsa_status: Nonexempt + effective_date: '2020-01-20' + adjust_for_minimum_wage: false + minimum_wages: [] + Jobs-Body: + type: object + properties: + title: + type: + - string + - 'null' + description: The job title. + example: Regional Manager + hire_date: + type: string + description: The date when the employee was hired or rehired for the job. + example: '2020-12-21' + two_percent_shareholder: + type: boolean + description: Whether the employee owns at least 2% of the company. + state_wc_covered: + type: + - boolean + - 'null' + description: Whether this job is eligible for workers' compensation coverage in the state of Washington (WA). + state_wc_class_code: + type: + - string + - 'null' + description: The risk class code for workers' compensation in Washington state. Please visit [Washington state's Risk Class page](https://www.lni.wa.gov/insurance/rates-risk-classes/risk-classes-for-workers-compensation/risk-class-lookup#/) to learn more. + Jobs-Create-Request-Body: + description: Request body for creating a job. + type: object + required: + - title + - hire_date + allOf: + - "$ref": "#/components/schemas/Jobs-Body" + x-examples: + create_job: + title: Regional Manager + hire_date: '2020-12-21' + two_percent_shareholder: false + Jobs-Update-Request-Body: + description: Request body for updating a job. + type: object + allOf: + - "$ref": "#/components/schemas/Versionable-Required" + - "$ref": "#/components/schemas/Jobs-Body" + x-examples: + update_job: + version: gr78930htutrz444kuytr3s5hgxykuveb523fwl8sir + title: Regional Manager + hire_date: '2020-12-21' + Compensation: + type: object + description: The representation of compensation in Gusto. + properties: + uuid: + type: string + description: The UUID of the compensation in Gusto. + readOnly: true + version: + type: string + description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. + job_uuid: + type: string + description: The UUID of the job to which the compensation belongs. + readOnly: true + employee_uuid: + type: string + description: The UUID of the employee to which the compensation belongs. + readOnly: true + rate: + type: string + readOnly: false + description: The dollar amount paid per payment unit. + payment_unit: + type: string + readOnly: false + description: The unit accompanying the compensation rate. If the employee is an owner, rate should be 'Paycheck'. + enum: + - Hour + - Week + - Month + - Year + - Paycheck + flsa_status: + "$ref": "#/components/schemas/Flsa-Status-Type" + title: + type: string + description: The job title for this compensation. + effective_date: + type: string + readOnly: false + description: The effective date for this compensation. For the first compensation, this defaults to the job's hire date. + adjust_for_minimum_wage: + type: boolean + description: Indicates if the compensation could be adjusted to minimum wage during payroll calculation. + readOnly: true + minimum_wages: + type: array + readOnly: false + description: The minimum wages associated with the compensation. + items: + type: object + properties: + uuid: + type: string + description: The UUID of the minimum wage. + wage: + type: string + description: The wage amount. + effective_date: + type: string + description: The effective date of the minimum wage. + required: + - uuid + x-examples: + success_status: + uuid: db4d41e5-813c-477e-bfae-38da2ae5e7a3 + version: 56d00c178bc7393b2a206ed6a86afcb4 + job_uuid: c1fdb417-c34a-43a7-92f3-5e6c20c1d7a4 + employee_uuid: a7e8f9bc-0d12-4e56-b789-012345678901 + rate: '70000.00' + payment_unit: Year + flsa_status: Exempt + effective_date: '2023-01-01' + adjust_for_minimum_wage: false + minimum_wages: [] + title: Software Engineer + hourly_compensation: + uuid: e5f6a7b8-c9d0-1234-e5f6-a7b8c9d01234 + version: 98b7a6c5d4e3f2a1b0c9d8e7f6a5b4c3 + job_uuid: d2e5f8a1-b4c7-4d90-a3e6-f9b2c5d8e1a4 + employee_uuid: b8f9a0bc-1e23-4f67-c890-123456789012 + rate: '25.00' + payment_unit: Hour + flsa_status: Nonexempt + effective_date: '2023-01-01' + adjust_for_minimum_wage: false + minimum_wages: [] + title: Associate + minimum_wage_adjusted: + uuid: a4d9ba9c-32cc-4cc1-a5bc-6ef4cd653e7a + version: cc59bd3879d655fb940a1f6b675f2ad9 + job_uuid: d8f8fbe7-496d-4b69-86f0-1e2d1b73a086 + rate: '5.00' + payment_unit: Hour + flsa_status: Nonexempt + effective_date: '2018-12-11' + adjust_for_minimum_wage: true + minimum_wages: + - uuid: edeea5af-ecd6-4b1c-b5de-5cff2d302738 + wage: '7.25' + effective_date: '2018-12-11' + Compensations-Body: + type: object + properties: + rate: + type: string + description: The dollar amount paid per payment unit. + example: '70000.00' + payment_unit: + type: string + description: The unit accompanying the compensation rate. If the employee is an owner, rate should be 'Paycheck'. + enum: + - Hour + - Week + - Month + - Year + - Paycheck + example: Year + flsa_status: + "$ref": "#/components/schemas/Flsa-Status-Type" + effective_date: + type: string + description: The effective date for this compensation. + example: '2023-01-01' + title: + type: string + description: The job title for this compensation. + example: Software Engineer + adjust_for_minimum_wage: + type: boolean + description: Whether the compensation should be adjusted to minimum wage during payroll calculation. + minimum_wages: + type: array + items: + type: object + properties: + uuid: + type: string + description: The UUID of the minimum wage. + Compensations-Request-Body: + description: Request body for creating a compensation. + type: object + required: + - rate + - payment_unit + - flsa_status + allOf: + - "$ref": "#/components/schemas/Compensations-Body" + x-examples: + create_compensation: + rate: '70000.00' + payment_unit: Year + flsa_status: Exempt + effective_date: '2023-01-01' + title: Software Engineer + Compensations-Update-Request-Body: + description: Request body for updating a compensation. + type: object + allOf: + - "$ref": "#/components/schemas/Versionable-Required" + - "$ref": "#/components/schemas/Compensations-Body" + x-examples: + update_compensation: + version: b48c46abfed1487b873b442334b3c4ff + rate: '75000.00' + payment_unit: Year + flsa_status: Exempt + effective_date: '2023-01-01' + title: Senior Engineer + Paid-Time-Off: + type: object + description: The representation of paid time off in Gusto. + properties: + name: + description: The name of the paid time off type. + anyOf: + - type: string + enum: + - Vacation Hours + - Sick Hours + - Holiday Hours + - type: 'null' + readOnly: true + policy_name: + type: + - string + - 'null' + description: The name of the time off policy. + readOnly: true + policy_uuid: + type: + - string + - 'null' + description: The UUID of the time off policy. + readOnly: true + accrual_unit: + type: + - string + - 'null' + example: Hour + description: The unit the PTO type is accrued in. + readOnly: true + accrual_rate: + type: + - string + - 'null' + description: The number of accrual units accrued per accrual period. + readOnly: true + accrual_method: + type: + - string + - 'null' + example: unlimited + description: The accrual method of the time off policy + readOnly: true + accrual_period: + type: + - string + - 'null' + example: Year + description: The frequency at which the PTO type is accrued. + readOnly: true + accrual_balance: + type: + - string + - 'null' + description: The number of accrual units accrued. + readOnly: true + maximum_accrual_balance: + type: + - string + - 'null' + description: The maximum number of accrual units allowed. A null value signifies no maximum. + readOnly: true + paid_at_termination: + type: boolean + description: Whether the accrual balance is paid to the employee upon termination. + readOnly: true + Termination: + type: object + description: The representation of a termination in Gusto. + properties: + uuid: + type: string + description: The UUID of the termination object. + readOnly: true + version: + type: string + description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. + employee_uuid: + type: string + description: The UUID of the employee to which this termination is attached. + readOnly: true + active: + type: boolean + description: Whether the employee's termination has gone into effect. + readOnly: true + cancelable: + type: boolean + description: Whether the employee's termination is cancelable. Cancelable is true if `run_termination_payroll` is false and `effective_date` is in the future. + readOnly: true + effective_date: + type: string + readOnly: false + description: The employee's last day of work. + run_termination_payroll: + type: boolean + readOnly: false + description: 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. + required: + - uuid + x-examples: + terminated_employee: + uuid: da441196-43a9-4d23-ad5d-f37ce6bb99c0 + employee_uuid: da441196-43a9-4d23-ad5d-f37ce6bb99c0 + version: d487dd0b55dfcacdd920ccbdaeafa351 + active: true + cancelable: false + effective_date: '2024-01-15' + run_termination_payroll: false + cancelable_termination: + uuid: da441196-43a9-4d23-ad5d-f37ce6bb99c0 + employee_uuid: da441196-43a9-4d23-ad5d-f37ce6bb99c0 + version: d487dd0b55dfcacdd920ccbdaeafa351 + active: false + cancelable: true + effective_date: '2024-06-15' + run_termination_payroll: false + Garnishment: + description: Garnishments, or employee deductions, are fixed amounts or percentages deducted from an employee’s pay. They can be deducted a specific number of times or on a recurring basis. Garnishments can also have maximum deductions on a yearly or per-pay-period bases. Common uses for garnishments are court-ordered payments for child support or back taxes. Some companies provide loans to their employees that are repaid via garnishments. + type: object + properties: + uuid: + type: string + description: The UUID of the garnishment in Gusto. + readOnly: true + version: + type: string + description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. + employee_uuid: + type: string + description: The UUID of the employee to which this garnishment belongs. + readOnly: true + active: + type: boolean + default: true + description: Whether or not this garnishment is currently active. + amount: + type: string + format: float + readOnly: false + description: The amount of the garnishment. Either a percentage or a fixed dollar amount. Represented as a float, e.g. "8.00". + description: + type: string + readOnly: false + description: The description of the garnishment. + court_ordered: + type: boolean + readOnly: false + description: Whether the garnishment is court ordered. + times: + type: + - integer + - 'null' + readOnly: false + default: + description: The number of times to apply the garnishment. Ignored if recurring is true. + recurring: + type: boolean + readOnly: false + default: false + description: Whether the garnishment should recur indefinitely. + annual_maximum: + format: float + readOnly: false + default: + description: The maximum deduction per annum. A null value indicates no maximum. Represented as a float, e.g. "200.00". + type: + - string + - 'null' + total_amount: + type: + - string + - 'null' + format: float + readOnly: false + default: + description: A maximum total deduction for the lifetime of this garnishment. A null value indicates no maximum. + pay_period_maximum: + type: + - string + - 'null' + format: float + default: + description: The maximum deduction per pay period. A null value indicates no maximum. Represented as a float, e.g. "16.00". + deduct_as_percentage: + type: boolean + readOnly: false + default: false + description: Whether the amount should be treated as a percentage to be deducted per pay period. + garnishment_type: + anyOf: + - type: string + enum: + - child_support + - federal_tax_lien + - state_tax_lien + - student_loan + - creditor_garnishment + - federal_loan + - other_garnishment + - type: 'null' + description: The specific type of garnishment for court ordered garnishments. + child_support: + "$ref": "#/components/schemas/Garnishment-Child-Support" + required: + - uuid + x-examples: + Example: + uuid: 4c7841a2-1363-497e-bc0f-664703c7484f + version: 52b7c567242cb7452e89ba2bc02cb476 + employee_uuid: a6b53294-f871-4db2-bbd4-8c3d1fe56440 + active: true + amount: '8.00' + description: Company loan to employee + court_ordered: false + times: 5 + recurring: false + annual_maximum: + total_amount: + pay_period_maximum: '100.00' + deduct_as_percentage: true + garnishment_type: + child_support: + Create-Example: + uuid: 4c7841a2-1363-497e-bc0f-664703c7484f + version: 52b7c567242cb7452e89ba2bc02cb476 + employee_uuid: a6b53294-f871-4db2-bbd4-8c3d1fe56440 + active: true + amount: '150.00' + description: Back taxes + court_ordered: true + times: + recurring: true + annual_maximum: + total_amount: + pay_period_maximum: + deduct_as_percentage: false + garnishment_type: + child_support: + Child-Support-Example: + uuid: 4c7841a2-1363-497e-bc0f-664703c7481a + version: 52b7c567242cb7452e89ba2bc02cb383 + employee_uuid: a6b53294-f871-4db2-bbd4-8c3d1fe56440 + active: true + amount: '40.00' + description: Child support - AZ28319 + court_ordered: true + times: + recurring: true + annual_maximum: + total_amount: + pay_period_maximum: '400.00' + deduct_as_percentage: true + garnishment_type: child_support + child_support: + state: AZ + payment_period: Monthly + case_number: AZ28319 + order_number: + remittance_number: + fips_code: '04000' + Garnishment-List: + - uuid: 4c7841a2-1363-497e-bc0f-664703c7484f + version: 52b7c567242cb7452e89ba2bc02cb476 + employee_uuid: a6b53294-f871-4db2-bbd4-8c3d1fe56440 + active: true + amount: '8.00' + description: Company loan to employee + court_ordered: false + times: 5 + recurring: false + annual_maximum: + total_amount: + pay_period_maximum: '100.00' + deduct_as_percentage: true + garnishment_type: + child_support: + - uuid: 4c7841a2-1363-497e-bc0f-664703c7481a + version: 52b7c567242cb7452e89ba2bc02cb383 + employee_uuid: a6b53294-f871-4db2-bbd4-8c3d1fe56440 + active: true + amount: '40.00' + description: Child support - AZ28319 + court_ordered: true + times: + recurring: true + annual_maximum: + total_amount: + pay_period_maximum: '400.00' + deduct_as_percentage: true + garnishment_type: child_support + child_support: + state: AZ + payment_period: Monthly + case_number: AZ28319 + order_number: + remittance_number: + fips_code: '04000' + Garnishment-Request-Base: + type: object + description: Shared request body properties for creating or updating a garnishment. + properties: + active: + type: boolean + default: true + description: Whether or not this garnishment is currently active. + amount: + type: string + format: float + readOnly: false + description: The amount of the garnishment. Either a percentage or a fixed dollar amount. Represented as a float, e.g. "8.00". + description: + type: string + readOnly: false + description: The description of the garnishment. + court_ordered: + type: boolean + readOnly: false + description: Whether the garnishment is court ordered. + garnishment_type: + description: The specific type of garnishment for court ordered garnishments. + anyOf: + - type: string + enum: + - child_support + - federal_tax_lien + - state_tax_lien + - student_loan + - creditor_garnishment + - federal_loan + - other_garnishment + - type: 'null' + readOnly: false + times: + type: + - integer + - 'null' + readOnly: false + default: + description: The number of times to apply the garnishment. Ignored if recurring is true. + recurring: + type: boolean + readOnly: false + default: false + description: Whether the garnishment should recur indefinitely. + annual_maximum: + format: float + readOnly: false + default: + type: + - string + - 'null' + description: The maximum deduction per annum. A null value indicates no maximum. Represented as a float, e.g. "200.00". + pay_period_maximum: + type: + - string + - 'null' + format: float + default: + description: The maximum deduction per pay period. A null value indicates no maximum. Represented as a float, e.g. "16.00". + deduct_as_percentage: + type: boolean + readOnly: false + default: false + description: Whether the amount should be treated as a percentage to be deducted per pay period. + total_amount: + type: + - string + - 'null' + format: float + readOnly: false + description: A maximum total deduction for the lifetime of this garnishment. A null value indicates no maximum. + child_support: + "$ref": "#/components/schemas/Garnishment-Child-Support" + x-examples: + Example: + amount: '50.00' + annual_maximum: '2500.09' + recurring: true + Deactivate-Example: + active: false + Child-Support-Example: + amount: '40' + child_support: + case_number: ZZZ999 + Garnishment-Request: + description: Request body for creating a garnishment. + allOf: + - "$ref": "#/components/schemas/Garnishment-Request-Base" + - type: object + required: + - amount + - court_ordered + x-examples: + Example: + amount: '150.00' + description: Back taxes + court_ordered: true + recurring: true + deduct_as_percentage: false + Child-Support-Example: + court_ordered: true + garnishment_type: child_support + amount: '40' + recurring: true + deduct_as_percentage: true + pay_period_maximum: '500.00' + child_support: + state: FL + fips_code: '12011' + payment_period: Monthly + case_number: CS1234 + Update-Garnishment-Request: + description: Request body for updating a garnishment. + allOf: + - "$ref": "#/components/schemas/Garnishment-Request-Base" + - "$ref": "#/components/schemas/Versionable-Required" + Garnishment-Child-Support: + description: Additional child support order details + type: + - object + - 'null' + properties: + state: + type: string + readOnly: false + description: The two letter state abbreviation for the state issuing the child support order. Agency data is available in the `GET /v1/garnishments/child_support` API. + payment_period: + type: string + readOnly: false + enum: + - Every week + - Every other week + - Twice per month + - Monthly + description: How often the agency collects the withholding amount. e.g. $500 monthly -> `Monthly`. + fips_code: + type: string + description: The FIPS code associated with the state or county agency issuing the child support order. Agency data is available in the `GET /v1/garnishments/child_support` API. + nullable: false + readOnly: false + case_number: + type: + - string + - 'null' + readOnly: false + description: Child Support Enforcement Case Number associated with this child support obligation - required for most states. Agency specific requirements are available in the `GET /v1/garnishments/child_support` API. + order_number: + type: + - string + - 'null' + readOnly: false + description: Order Identifier or Order ID associated with this child support obligation - required for some states. Agency specific requirements are available in the `GET /v1/garnishments/child_support` API. + remittance_number: + type: + - string + - 'null' + readOnly: false + description: Child Support Enforcement Remittance ID associated with this child support obligation - required for some states. Agency specific requirements are available in the `GET /v1/garnishments/child_support` API. + Employee-Custom-Field: + type: object + description: A custom field of an employee + properties: + id: + type: string + company_custom_field_id: + type: string + description: This is the id of the response object from when you get the company custom fields + name: + type: string + type: + "$ref": "#/components/schemas/Custom-Field-Type" + description: + type: + - string + - 'null' + value: + type: string + selection_options: + type: + - array + - 'null' + description: An array of options for fields of type radio. Otherwise, null. + items: + type: string + required: + - id + - company_custom_field_id + - name + - type + - value + x-examples: + example_text_field: + id: ee515986-f3ca-49da-b576-2691b95262f9 + company_custom_field_id: ea7e5d57-6abb-47d7-b654-347c142886c0 + name: employee_level + description: Employee Level + type: text + value: '2' + selection_options: + example_radio_field: + id: 3796e08d-c2e3-434c-b4de-4ce1893e7b59 + company_custom_field_id: 024ec137-6c92-43a3-b061-14a9720531d6 + name: favorite fruit + description: Which is your favorite fruit? + type: radio + value: apple + selection_options: + - apple + - banana + - orange + Employee-Custom-Field-List: + type: object + description: A list of an employee's custom fields + properties: + custom_fields: + type: array + items: + "$ref": "#/components/schemas/Employee-Custom-Field" + x-examples: + example: + custom_fields: + - id: ee515986-f3ca-49da-b576-2691b95262f9 + company_custom_field_id: ea7e5d57-6abb-47d7-b654-347c142886c0 + name: employee_level + description: Employee Level + type: text + value: '2' + selection_options: + - id: 3796e08d-c2e3-434c-b4de-4ce1893e7b59 + company_custom_field_id: 024ec137-6c92-43a3-b061-14a9720531d6 + name: favorite fruit + description: Which is your favorite fruit? + type: radio + value: apple + selection_options: + - apple + - banana + - orange + Custom-Field-Type: + type: string + description: Input type for the custom field. + enum: + - text + - currency + - number + - date + - radio + Employment-History-List: + type: array + x-examples: + success_status: + - hire_date: '2015-06-09' + termination_date: '2025-05-09' + file_new_hire_report: false + two_percent_shareholder: false + employment_status: full_time + items: + description: The representation of an employee's individual employements. + type: object + properties: + hire_date: + type: string + description: The employee's start day of work for an employment. + termination_date: + type: + - string + - 'null' + description: The employee's last day of work for an employment. + file_new_hire_report: + type: boolean + description: The boolean flag indicating whether Gusto will file a new hire report for the employee. + two_percent_shareholder: + type: boolean + description: Whether the employee is a two percent shareholder of the company. This field only applies to companies with an S-Corp entity type. + employment_status: + type: string + description: The employee's employment status. Supplying an invalid option will set the employment_status to *not_set*. + enum: + - part_time + - full_time + - part_time_eligible + - variable + - seasonal - not_set + Employee-Onboarding-Status: + description: The representation of an employee's onboarding status. + type: object + title: Employee-Onboarding-Status + x-examples: + success_status: + uuid: 8351cf2a-17cb-49e3-94a7-9986dcb11e84 + onboarding_status: onboarding_completed + onboarding_steps: + - title: Personal details + id: personal_details + required: true + completed: true + requirements: [] + - title: Enter compensation details + id: compensation_details + required: true + completed: true + requirements: [] + - title: Add work address + id: add_work_address + required: true + completed: true + requirements: [] + - title: Add home address + id: add_home_address + required: true + completed: true + requirements: [] + - title: Enter federal tax withholdings + id: federal_tax_setup + required: true + completed: true + requirements: [] + - title: Enter state tax information + id: state_tax_setup + required: true + completed: false + requirements: + - add_work_address + - add_home_address + - title: Direct deposit setup + id: direct_deposit_setup + required: false + completed: true + requirements: [] + - title: Employee form signing + id: employee_form_signing + required: true + completed: false + requirements: + - federal_tax_setup + - state_tax_setup + - title: File new hire report + id: file_new_hire_report + required: true + completed: false + requirements: + - add_work_address + blockers: [] + properties: + uuid: + type: string + description: Unique identifier for this employee. + onboarding_status: + type: string + description: One of the "onboarding_status" enum values. + onboarding_steps: + type: array + description: List of steps required to onboard an employee. + items: + title: Onboarding step + type: object + properties: + title: + type: string + description: User-friendly description of the onboarding step. + id: + type: string + description: String identifier for the onboarding step. + required: + type: boolean + description: When true, this step is required. + completed: + type: boolean + description: When true, this step has been completed. + requirements: + type: array + description: A list of onboarding steps required to begin this step. + items: + type: string + blockers: + type: array + description: | + Validation issues that should be resolved before this employee's onboarding is complete. Each entry identifies an affected field, a category describing the type of problem, and a human-readable message. + + Supported categories: + + - `duplicate_value`: Another employee in the same company already has this value. To resolve, cancel this onboarding and initiate a rehire if it's a returning employee, or contact support to investigate the conflict. + + This list may grow over time as new validation rules are added. + items: + type: object + properties: + field: + type: string + enum: + - ssn + description: The employee field affected. + category: + type: string + enum: + - duplicate_value + description: Category of the blocker. See the array-level description for resolution guidance. + message: + type: string + description: Human-readable description of the blocker. + required: + - uuid + Flsa-Status-Type: + type: string + enum: + - Exempt + - Salaried Nonexempt + - Nonexempt + - Owner + - Commission Only Exempt + - Commission Only Nonexempt + description: '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. ' + Employee-Pay-Stubs-List: + type: array + x-examples: + success_status: + - uuid: d2cec746-caee-464a-bcaf-00d93f7049c9 + check_date: '2023-11-24' + gross_pay: '880.0' + net_pay: '541.02' + payroll_uuid: a039cafb-745e-4af4-bf1e-935a86fc18e0 + check_amount: '500.2' + payment_method: Direct Deposit + items: + description: The representation of an employee pay stub information. + type: object + properties: + uuid: + type: string + description: The UUID of the employee pay stub. + readOnly: true + check_date: + type: string + description: The check date of the pay stub. + readOnly: true + gross_pay: + type: string + description: The gross pay amount for the pay stub. + readOnly: true + net_pay: + type: string + description: The net pay amount for the pay stub. + readOnly: true + payroll_uuid: + type: string + description: A unique identifier of the payroll to which the pay stub belongs. + readOnly: true + check_amount: + type: string + description: The check amount for the pay stub. + readOnly: true + payment_method: + type: string + description: The payment method for the pay stub. + enum: + - Direct Deposit + - Check + readOnly: true + x-tags: + - Payrolls + required: + - uuid + Company-Address: + description: The representation of a company's address in Gusto. + type: object + properties: + street_1: + type: string + readOnly: false + street_2: + type: + - string + - 'null' + readOnly: false + city: + type: string + readOnly: false + state: + type: string + readOnly: false + zip: + type: string + readOnly: false + country: + type: string + readOnly: false + default: USA + inactive: + type: boolean + description: The status of the location. Inactive locations have been deleted, but may still have historical data associated with them. + readOnly: true + active: + type: boolean + description: The status of the location. Inactive locations have been deleted, but may still have historical data associated with them. + readOnly: true + Employee-Work-Addresses-List: + type: array + x-examples: + success_status: + - uuid: '080b6254-ce7c-411f-9f7d-5a3ce3c51154' + employee_uuid: 6747692e-d2c8-4472-9c5e-183c65404fbf + location_uuid: 9ccfade8-82ee-490c-8711-5c0787bccde8 + effective_date: '2021-01-01' + active: false + version: 3097e9d0efb09ba2e00a8988a93b3091 + street_1: 91678 Farrell Meadow + street_2: Apt. 835 + city: Phoenix + state: AZ + zip: '85016' + country: USA + - uuid: 35d62f15-75da-45aa-9c97-adc57342b925 + employee_uuid: 6747692e-d2c8-4472-9c5e-183c65404fbf + location_uuid: 10330fe8-36ef-4713-aa59-9f8a432abd13 + effective_date: '2022-01-01' + active: false + version: 5f48ce54afed81bb11dd89461bd0e214 + street_1: 800 Adolfo Gardens + street_2: Suite 419 + city: Bremen + state: AL + zip: '35033' + country: USA + - uuid: 3f3ceaba-6b57-4039-a31a-0004bef83c6f + employee_uuid: 6747692e-d2c8-4472-9c5e-183c65404fbf + location_uuid: 98383e91-c67d-4b69-a617-5a57f91da48c + effective_date: '2023-01-01' + active: true + version: a8a78c851337676137e22caf56ffe5b5 + street_1: 2216 Icie Villages + street_2: Apt. 798 + city: Big Delta + state: AK + zip: '99737' + country: USA + items: + "$ref": "#/components/schemas/Employee-Work-Address" + Employee-Work-Address: + type: object + x-examples: + success_status: + uuid: 64ee5fd7-3eb2-4083-883c-95e93e181cc8 + employee_uuid: d773461f-848a-40a1-8f09-b2ee4249d5c7 + location_uuid: 733ab2af-9510-408f-8d20-09196967174f + effective_date: '2020-01-31' + active: true + version: 3879823d440f3a3215d129ac73c58966 + street_1: 977 Marks Viaduct + street_2: Apt. 958 + city: Pink Hill + state: NC + zip: '28572' + country: USA + properties: + uuid: + type: string + readOnly: true + description: The unique identifier of this work address. + effective_date: + type: string + description: The date the employee began working at this location. + active: + type: boolean + readOnly: true + description: Signifies if this address is the active work address for the current date + location_uuid: + type: string + description: UUID reference to the company location for this work address. + employee_uuid: + type: string + description: UUID reference to the employee for this work address. + version: + type: string + description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. + street_1: + type: string + readOnly: true + street_2: + type: + - string + - 'null' + readOnly: true + city: + type: string + readOnly: true + state: + type: string + readOnly: true + zip: + type: string + readOnly: true + country: + type: string + readOnly: true + default: USA + required: + - uuid + - version + Employee-Address-List: + type: array + x-examples: + success_status: + - uuid: d6b7472f-bb55-41ca-a55c-9adbd3c64e09 + version: 7eee445be93fc50fd3cbb55b8d943fb3 + employee_uuid: d1a166b4-79b4-413f-b067-27534ec59ecd + street_1: 3121 Milky Way + street_2: '' + city: San Francisco + state: CA + zip: '94107' + country: USA + active: false + effective_date: '2024-06-09' + courtesy_withholding: false + - uuid: 1b59a593-d324-4d97-9296-99ecc95f81d1 + version: 5147ad755821c4ba3dbc3afa1055ff4d + employee_uuid: d1a166b4-79b4-413f-b067-27534ec59ecd + street_1: 3624 Victoria Ln + street_2: '' + city: Cincinnati + state: OH + zip: '45208' + country: USA + active: true + effective_date: '2025-05-26' + courtesy_withholding: false + - uuid: 69489b54-976d-4027-8b51-702e5c8c62d3 + version: f0765fa5a85f62723320763494a481a6 + employee_uuid: d1a166b4-79b4-413f-b067-27534ec59ecd + street_1: Main st. + street_2: '' + city: New York + state: NY + zip: '10011' + country: USA + active: false + effective_date: '2025-07-09' + courtesy_withholding: false + items: + "$ref": "#/components/schemas/Employee-Address" + Employee-Address: + type: object + x-examples: + success_status: + uuid: 700af712-62ba-4dff-824f-97a3c6fda416 + version: 6c3c23e4cc840bd3f1416f72b5380eff + employee_uuid: 78d20691-f1b4-4f74-bc4c-1d4db0099b00 + street_1: 3121 Milky Way + street_2: '' + city: San Francisco + state: CA + zip: '94107' + country: USA + active: true + effective_date: '1970-01-01' + courtesy_withholding: false + properties: + uuid: + type: string + description: The UUID of the employee address + employee_uuid: + type: string + description: The UUID of the employee + effective_date: + type: string + format: date + description: The date the employee started living at the address. + courtesy_withholding: + type: boolean + description: Determines if home taxes should be withheld and paid for employee. + street_1: + type: string + readOnly: false + street_2: + type: + - string + - 'null' + readOnly: false + city: + type: string + readOnly: false + state: + type: string + readOnly: false + zip: + type: string + readOnly: false + country: + type: string + readOnly: false + default: USA + active: + type: boolean + description: The status of the location. Inactive locations have been deleted, but may still have historical data associated with them. + readOnly: true + version: + type: string + description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. + warnings: + type: array + description: An array of warning objects that provide additional information about the address. Warnings do not prevent the address from being saved. + items: + "$ref": "#/components/schemas/Warning-Object" + required: + - uuid + - version + Employee-Section603-High-Earner-Status-List: + type: array + x-examples: + success_status: + - id: f47ac10b-58cc-4372-a567-0e02b2c3d479 + effective_year: 2026 + is_high_earner: false + - id: 550e8400-e29b-41d4-a716-446655440000 + effective_year: 2027 + is_high_earner: true + items: + "$ref": "#/components/schemas/Employee-Section603-High-Earner-Status" + Employee-Section603-High-Earner-Status: + type: object + description: The representation of an employee's Section 603 high earner status for a specific year. 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. + x-examples: + success_status: + id: f47ac10b-58cc-4372-a567-0e02b2c3d479 + effective_year: 2026 + is_high_earner: false + properties: + id: + type: string + description: The unique identifier of the Section 603 high earner status record + readOnly: true + effective_year: + type: integer + description: The year for which this high earner status applies + readOnly: true + is_high_earner: + type: + - boolean + - 'null' + description: Whether the employee is classified as a high earner for Section 603 purposes. Can be null if the status has not yet been determined. + readOnly: true + required: + - id + - effective_year + - is_high_earner + Employee-Section603-High-Earner-Status-Create-Request: + type: object + description: Request body for creating an employee's Section 603 high earner status + properties: + effective_year: + type: integer + description: The year for which this high earner status applies + example: 2026 + is_high_earner: + type: boolean + description: Whether the employee is classified as a high earner for Section 603 purposes + example: true + required: + - effective_year + - is_high_earner + Employee-Section603-High-Earner-Status-Update-Request: + type: object + description: Request body for updating an employee's Section 603 high earner status + properties: + is_high_earner: + type: boolean + description: Whether the employee is classified as a high earner for Section 603 purposes + example: true + required: + - is_high_earner + Employee-State-Taxes-List: + type: array + x-examples: + success_status: + - uuid: 287d2c61-1d18-4126-8a4a-9cb29bbb6dac + employee_uuid: c963cb99-fe1c-4aa8-9d48-1ad211ad396f + state: CA + file_new_hire_report: false + is_work_state: true + questions: + - is_question_for_admin_only: false + label: Filing Status + description: 'The Head of Household status applies to unmarried individuals who have a relative living with them in their home. If unsure, read the CA Filing Status explanation. + +' + key: filing_status + input_question_format: + type: Select + options: + - value: S + label: Single + - value: M + label: Married one income + - value: MD + label: Married dual income + - value: H + label: Head of Household + - value: E + label: Do Not Withhold + answers: + - value: M + valid_from: '2010-01-01' + valid_up_to: + - is_question_for_admin_only: false + label: Withholding Allowance + description: 'This value is needed to calculate the employee''s CA income tax withholding. If unsure, use the CA DE-4 form to calculate the value manually. + +' + key: withholding_allowance + input_question_format: + type: Number + answers: + - value: 1 + valid_from: '2010-01-01' + valid_up_to: + - is_question_for_admin_only: false + label: Additional Withholding + description: You can withhold an additional amount of California income taxes here. + key: additional_withholding + input_question_format: + type: Currency + answers: + - value: '0.0' + valid_from: '2010-01-01' + valid_up_to: + - is_question_for_admin_only: true + label: File a New Hire Report? + description: State law requires you to file a new hire report within 20 days of hiring or re-hiring an employee. + key: file_new_hire_report + input_question_format: + type: Select + options: + - value: true + label: Yes, file the state new hire report for me. + - value: false + label: No, I have already filed. + answers: + - value: false + valid_from: '2010-01-01' + valid_up_to: + items: + type: object + properties: + uuid: + type: string + description: The uuid of the employee state field. + employee_uuid: + type: string + description: The employee's uuid + state: + type: string + description: Two letter US state abbreviation + file_new_hire_report: + type: + - boolean + - 'null' + is_work_state: + type: boolean + questions: + type: array + items: + "$ref": "#/components/schemas/Employee-State-Tax-Question" + required: + - uuid + - employee_uuid + - state + - questions + Employee-State-Tax-Question: + type: object + properties: + label: + type: string + description: A short title for the question + description: + type: + - string + - 'null' + description: An explaination of the question - this may contain inline html formatted links. + key: + type: string + description: A unique identifier of the question (for the given state) - used for updating the answer. + is_question_for_admin_only: + type: boolean + input_question_format: + "$ref": "#/components/schemas/Employee-State-Tax-Input-Question-Format" + answers: + type: array + items: + "$ref": "#/components/schemas/Employee-State-Tax-Answer" + required: + - label + - description + - key + - input_question_format + - answers + - is_question_for_admin_only + Employee-State-Tax-Input-Question-Format: + type: object + properties: + type: + type: string + description: Describes the type of question - Text, Number, Select, Currency, Date + options: + type: array + uniqueItems: true + description: For "Select" type questions, the allowed values and display labels. + items: + type: object + properties: + value: + description: An allowed value to answer the question + oneOf: + - type: string + - type: boolean + - type: number + label: + type: string + description: A display label that corresponds to the answer value + required: + - label + required: + - type + Employee-State-Tax-Answer: + type: object + properties: + value: + oneOf: + - type: string + - type: number + - type: boolean + - type: 'null' + description: The answer to the corresponding question - this may be a string, number, boolean, or null. + valid_from: + type: string + description: The effective date of the answer - currently always “2010-01-01”. + valid_up_to: + type: + - string + - 'null' + description: The effective end date of the answer - currently always null. + Employee-State-Taxes-Request: + type: object + properties: + states: + type: array + uniqueItems: true + items: + type: object + properties: + state: + type: string + questions: + type: array + uniqueItems: true + items: + type: object + properties: + key: + type: string + answers: + type: array + uniqueItems: true + items: + type: object + properties: + value: + oneOf: + - type: string + - type: number + - type: boolean + - type: 'null' + valid_from: + type: string + valid_up_to: + type: + - string + - 'null' + required: + - value + - valid_from + required: + - key + required: + - state + required: + - states + Employee-Payment-Details-List: + type: array + description: A list of employee payment details. + x-examples: + success_status: + - employee_uuid: e2c4c0ce-2986-48b9-86cf-ec27f6ed9a36 + first_name: Soren + last_name: Kierkegaard + payment_method: Direct Deposit + split_by: Percentage + splits: + - bank_account_uuid: 1531e824-8d9e-4bd8-9f90-0d04608125d7 + name: Primary Checking + hidden_account_number: XXXX1207 + encrypted_account_number: mbNLVOm7psP16ocqXso5ZtzOXBrA-5Q-.zarrdLBmyYDDK4kCkF2reKtzx8udK8iDabtW + routing_number: '055003201' + account_type: Checking + priority: 1 + split_amount: 100 + - employee_uuid: 6b7e4b51-2e2d-4b54-9f37-7b9d0e9fa5d2 + first_name: Autumn + last_name: Connelly + payment_method: Check + split_by: + splits: + items: + type: object + properties: + employee_uuid: + type: string + description: The UUID of the employee. + readOnly: true + first_name: + type: string + description: The legal first name of the employee. + readOnly: true + last_name: + type: string + description: The last name of the employee. + readOnly: true + payment_method: + type: string + enum: + - Direct Deposit + - Check + description: The type of payment method. + readOnly: true + split_by: + anyOf: + - type: string + enum: + - Amount + - Percentage + - type: 'null' + description: How the payment is split. This field is applicable when `payment_method` is "Direct Deposit". If `split_by` is Percentage, then the split amounts must add up to exactly 100. If `split_by` is Amount, the last split amount must be `null` to capture the remainder. + readOnly: true + splits: + type: + - array + - 'null' + description: An array of payment splits. This field is applicable when `payment_method` is "Direct Deposit". + items: + type: object + properties: + bank_account_uuid: + type: string + description: The UUID of the bank account. + name: + type: string + description: The name of the bank account. + hidden_account_number: + type: string + description: An obfuscated version of the account number which can be used for display purposes. + encrypted_account_number: + type: + - string + - 'null' + description: Ciphertext containing the full bank account number, which must be decrypted using a key provided by Gusto. Only visible with the `employee_payment_methods:read:account_number` scope. + routing_number: + type: string + description: The routing number of the bank account. + account_type: + type: string + description: The bank account type (e.g., "Checking" or "Savings"). + priority: + type: integer + description: The order of priority for each payment split, with priority 1 being the first bank account paid. Priority must be unique and sequential. + split_amount: + type: + - number + - 'null' + description: If `split_by` is 'Amount', this is in cents (e.g., 500 for $5.00) and exactly one account must have a `split_amount` of `null` to capture the remainder. If `split_by` is 'Percentage', this is the percentage value (e.g., 60 for 60%). + readOnly: true + Contractor-Payment-Details-List: + type: array + x-examples: + success_status: + - contractor_uuid: e3d9487a-4ecb-49a3-b6ff-cf03ba7278b6 + first_name: Yael + last_name: Kuvalis + payment_method: Check + split_by: + splits: + - contractor_uuid: 577b6307-66e9-4926-a769-91f5c8b578aa + first_name: Autumn + last_name: Connelly + payment_method: Direct Deposit + split_by: Percentage + splits: + - bank_account_uuid: 0aca4500-8ba4-48fc-adce-677fe7926b7b + name: Cayman Island Checking + hidden_account_number: XXXX1545 + account_number: + encrypted_account_number: + routing_number: '055003201' + priority: 1 + split_amount: 100 + account_type: Checking + items: + type: object + properties: + contractor_uuid: + type: string + payment_method: + type: string + enum: + - Direct Deposit + - Check + first_name: + type: string + last_name: + type: string + split_by: + anyOf: + - type: string + enum: + - Amount + - Percentage + - type: 'null' + description: Describes how the payment will be split. If split_by is Percentage, then the split amounts must add up to exactly 100. If split_by is Amount, then the amount represents cents and the last split amount must be `null` to capture the remainder. + splits: + type: + - array + - 'null' + items: + type: object + properties: + bank_account_uuid: + type: string + name: + type: string + hidden_account_number: + type: string + description: An obfuscated version of the account number which can be used for display purposes. + encrypted_account_number: + type: + - string + - 'null' + description: Ciphertext containing the full bank account number, which must be decrypted using a key provided by Gusto. Only visible with the `contractor_payment_methods:read:account_number` scope. + routing_number: + type: string + priority: + type: integer + description: The order of priority for each payment split, with priority 1 being the first bank account paid. Priority must be unique and sequential. + split_amount: + type: + - number + - 'null' + description: If `split_by` is 'Amount', this is in cents (e.g., 500 for $5.00) and exactly one account must have a `split_amount` of `null` to capture the remainder. If `split_by` is 'Percentage', this is the percentage value (e.g., 60 for 60%). + account_type: + type: string + Notifications-List: + type: array + x-examples: + success_status: + - uuid: d053ee2a-a80f-4a61-8bf8-6122c1f954dd + company_uuid: 46c8329d-ebd1-49ba-878c-810b481a34c9 + category: company_setup.missing_mandatory_sick_time_policy + title: Set up a sick time off policy + message: At least one company work location requires businesses to provide a sick time off policy. + actionable: true + can_block_payroll: false + published_at: '2025-06-09T13:42:59.000-07:00' + due_at: + status: open + resources: [] + template_variables: {} + - uuid: 2edd148b-c4c3-4cda-b3e1-72b87399e6c8 + company_uuid: 46c8329d-ebd1-49ba-878c-810b481a34c9 + category: bank_error.compensation_credit_failure + title: Unable to deposit funds to Donn Cormier + message: We were unable to deposit a recent paycheck to Donn’s bank account, so these funds of $100.00 will be returned to Luettgen-Gusikowski’s bank account. Once the funds are received, the payment should be made directly to Donn. + actionable: true + can_block_payroll: false + published_at: '2025-06-09T13:43:00.000-07:00' + due_at: + status: open + resources: + - entity_type: Employee + entity_uuid: 66a27bb8-be5b-42e5-82b8-b2d0044a7f9e + template_variables: + beneficiary_name: Donn Cormier + amount: "$100.00" + company_name: Luettgen-Gusikowski + with_transactional_mailer_notification: + - uuid: d053ee2a-a80f-4a61-8bf8-6122c1f954dd + company_uuid: 46c8329d-ebd1-49ba-878c-810b481a34c9 + category: company_setup.missing_mandatory_sick_time_policy + title: Set up a sick time off policy + message: At least one company work location requires businesses to provide a sick time off policy. + actionable: true + can_block_payroll: false + published_at: '2025-06-09T13:42:59.000-07:00' + due_at: + status: open + resources: [] + template_variables: {} + - uuid: 3f16b3e4-3c0e-4f92-9c1d-9e9dc9d1f7a2 + company_uuid: 46c8329d-ebd1-49ba-878c-810b481a34c9 + category: notification.taxops.created + title: Confirm or amend the tax filing that was filed outside of payroll + message: We recently attempted to file Acme Consulting's Q2 2025 tax returns. However, California EDD rejected the filing because it has already been completed by someone else. Please confirm that the already-filed return matches the records on file. If the return is incorrect, you will need to amend it directly with the agency. We cannot amend returns we did not originally file. In the future, ensure this return is not filed outside of payroll. + actionable: true + can_block_payroll: false + published_at: '2025-06-09T13:44:00.000-07:00' + due_at: + status: open + resources: + - entity_type: Employee + entity_uuid: 66a27bb8-be5b-42e5-82b8-b2d0044a7f9e + template_variables: + company_name: Acme Consulting + quarter: Q2 2025 + agency_list: California EDD + items: + "$ref": "#/components/schemas/Notification" + Notification: + type: object + properties: + uuid: + type: string + description: Unique identifier of a notification. + company_uuid: + type: string + description: Unique identifier of the company to which the notification belongs. + title: + type: string + description: The title of the notification. This highlights the actionable component of the notification. + message: + type: string + description: The message of the notification. This provides additional context for the user and recommends a specific action to resolve the notification. + status: + type: string + description: Represents the notification's status as managed by our system. It is updated based on observable system events and internal business logic, and does not reflect resolution steps taken outside our system. This field is read-only and cannot be modified via the API. + enum: + - open + - resolved + - expired + category: + type: string + description: The notification's category. + actionable: + type: boolean + description: Indicates whether a notification requires action or not. If false, the notification provides critical information only. + can_block_payroll: + type: boolean + description: Indicates whether a notification may block ability to run payroll. If true, we suggest that these notifications are prioritized to your end users. + published_at: + type: string + description: Timestamp of when the notification was published. + due_at: + type: + - string + - 'null' + description: Timestamp of when the notification is due. If the notification has no due date, this field will be null. + template_variables: + type: object + description: An object containing template variables used to render the notification. The structure of this object depends on the notification category. Each category defines a fixed set of variable names (keys), which are always present. The values of these variables can vary depending on the specific notification instance. + additionalProperties: + type: string + resources: + type: array + description: An array of entities relevant to the notification + items: + type: object + properties: + entity_type: + type: string + description: The type of entity being described. + enum: + - BankAccount + - Contractor + - ContractorPayment + - Employee + - Payroll + - PaySchedule + - RecoveryCase + - Signatory + - Wire In Request + entity_uuid: + type: string + description: Unique identifier of the entity + reference_type: + type: string + description: Optional. The type of a resource that is related to the one described by entity_type and entity_uuid. For instance, if the entity_type is “BankAccount”, the reference_type could be the “Employee” or “Contractor” to whom the bank account belongs. + reference_uuid: + type: string + description: Optional. Unique identifier of the reference. + required: + - entity_type + - entity_uuid + required: + - uuid + - company_uuid + - title + - message + - category + - actionable + - status + - published_at + - due_at + - resources + - can_block_payroll + x-examples: + notification_show: + uuid: 7b1d0df1-6403-4a06-8768-c1dd7d24d27a + company_uuid: 88f7cca1-dcad-4d20-84db-7fb80303d69f + title: 'Action required: Additional information needed to process payroll' + message: If we do not receive this information as soon as possible, your payroll may not be processed on time. + status: open + category: information_request + actionable: true + can_block_payroll: true + published_at: '2022-01-01T00:00:00.000Z' + due_at: '2022-02-01T00:00:00.000Z' + template_variables: + blocked_task: Payroll + resources: + - entity_type: Employee + entity_uuid: 21b6f9ce-0ac4-4745-8d8a-127f8c0f00f2 + transactional_mailer_notification_show: + uuid: 3f16b3e4-3c0e-4f92-9c1d-9e9dc9d1f7a2 + company_uuid: 88f7cca1-dcad-4d20-84db-7fb80303d69f + title: Confirm or amend the tax filing that was filed outside of payroll + message: We recently attempted to file Acme Consulting's Q2 2025 tax returns. However, California EDD rejected the filing because it has already been completed by someone else. Please confirm that the already-filed return matches the records on file. If the return is incorrect, you will need to amend it directly with the agency. We cannot amend returns we did not originally file. In the future, ensure this return is not filed outside of payroll. + status: open + category: notification.taxops.created + actionable: true + can_block_payroll: false + published_at: '2025-06-09T13:44:00.000-07:00' + due_at: + template_variables: + company_name: Acme Consulting + quarter: Q2 2025 + agency_list: California EDD + resources: + - entity_type: Employee + entity_uuid: 21b6f9ce-0ac4-4745-8d8a-127f8c0f00f2 + Payroll-List: + description: A list of payrolls for a company. + type: array + x-examples: + success_status: + - uuid: 3601a7a2-0562-4e4c-9559-20886658daac + payroll_uuid: 3601a7a2-0562-4e4c-9559-20886658daac + company_uuid: b43e6012-bf6c-4752-b67b-5c8000595e0e + payroll_status_meta: + cancellable: false + expected_check_date: '2025-06-08' + initial_check_date: '2025-06-27' + expected_debit_time: '2025-06-12T23:00:00Z' + payroll_late: false + initial_debit_cutoff_time: '2025-06-12T23:00:00Z' + off_cycle: false + auto_payroll: false + processed: true + processed_date: '2025-06-11' + calculated_at: '2025-06-11T19:40:51Z' + pay_period: + start_date: '2025-05-20' + end_date: '2025-06-04' + pay_schedule_uuid: ded21d08-02d6-41cb-b211-8d8ca02f1c6a + check_date: '2025-06-08' + external: false + payroll_deadline: '2025-06-12T23:00:00Z' + company_taxes: [] + created_at: '2025-06-11T19:40:51Z' + partner_owned_disbursement: + items: + "$ref": "#/components/schemas/Payroll" + Payroll-Update: + type: object + properties: + employee_compensations: + type: array + items: + type: object + description: '' + properties: + employee_uuid: + type: string + description: The UUID of the employee. + version: + type: string + description: The current version of this employee compensation from the prepared payroll. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. + excluded: + type: boolean + description: This employee will be excluded from payroll calculation and will not be paid for the payroll. + payment_method: + type: string + description: The employee's compensation payment method. Invalid values will be ignored. + enum: + - Direct Deposit + - Check + memo: + type: string + description: Custom text that will be printed as a personal note to the employee on a paystub. + fixed_compensations: + type: array + items: + type: object + description: An array of fixed compensations for the employee. Fixed compensations include tips, bonuses, and one time reimbursements. + properties: + name: + type: string + description: The name of the compensation. This also serves as the unique, immutable identifier for this compensation. + amount: + type: string + description: The amount of the compensation for the pay period. + job_uuid: + type: string + description: The UUID of the job for the compensation. + hourly_compensations: + type: array + items: + type: object + description: An array of hourly compensations for the employee. Hourly compensations include regular, overtime, and double overtime hours. + properties: + name: + type: string + description: The name of the compensation. This also serves as the unique, immutable identifier for this compensation. + hours: + type: string + description: The number of hours to be compensated for this pay period. + job_uuid: + type: string + description: The UUIDs of the job for the compensation. + deductions: + type: array + items: + type: object + description: An array of deductions for the employee. + properties: + name: + type: string + description: The name of the deduction. + amount: + type: number + description: The amount of the deduction for the pay period. + amount_type: + type: string + description: The amount type of the deduction for the pay period. + enum: + - fixed + - percent + uuid: + type: string + description: The UUID of the deduction. This parameter is optional and can be provided in order to update an existing deduction. + custom_withholdings: + type: object + description: | + Optional per-payroll one-time custom withholdings for federal and/or state income tax. + When provided, the supplied override takes precedence over any persistent withholding schedule for this run. + This field is in limited release; if your application does not have access, requests including it are silently ignored. + properties: + federal: + type: object + description: Federal one-time custom withholding override. + properties: + override_type: + type: string + enum: + - one_time + description: Override mode. Only `one_time` is currently supported. + amount: + type: string + description: The amount to be withheld for this payroll. + amount_type: + type: string + enum: + - fixed + - percent + description: How to interpret the amount. + state: + type: array + description: State one-time custom withholding overrides, one entry per state field. + items: + type: object + properties: + employee_state_field_uuid: + type: string + description: The UUID of the EmployeeStateField this withholding applies to. + override_type: + type: string + enum: + - one_time + description: Override mode. Only `one_time` is currently supported. + amount: + type: string + description: The amount to be withheld for this payroll. + amount_type: + type: string + enum: + - fixed + - percent + description: How to interpret the amount. + paid_time_off: + type: array + description: An array of all paid time off the employee is eligible for this pay period. Each paid time off object can be the name or the specific policy_uuid. + items: + type: object + properties: + name: + type: string + description: The name of the PTO. This also serves as the unique, immutable identifier for the PTO. Must pass in name or policy_uuid but not both. + hours: + type: string + description: The hours of this PTO taken during the pay period. + policy_uuid: + type: string + description: The uuid of the PTO policy. Must pass in name or policy_uuid but not both. + final_payout_unused_hours_input: + type: + - string + - 'null' + description: The outstanding hours paid upon termination. This field is only applicable for termination payrolls. + reimbursements: + type: array + description: An array of reimbursements for the employee. + items: + type: object + properties: + amount: + type: string + description: The dollar amount of the reimbursement for the pay period. + description: + type: string + description: The description of the reimbursement. If not provided, the reimbursement will be unnamed. + uuid: + type: string + description: The UUID of an existing reimbursement. This parameter is optional and can be provided in order to update an existing reimbursement. + withholding_pay_period: + description: The payment schedule tax rate the payroll is based on. Only relevant for off-cycle payrolls. + type: string + enum: + - Every week + - Every other week + - Twice per month + - Monthly + - Quarterly + - Semiannually + - Annually + skip_regular_deductions: + description: Block regular deductions and contributions for this payroll. Only relevant for off-cycle payrolls. + type: boolean + fixed_withholding_rate: + description: Enable taxes to be withheld at the IRS's required rate of 22% for federal income taxes. State income taxes will be taxed at the state's supplemental tax rate. Otherwise, we'll sum the entirety of the employee's wages and withhold taxes on the entire amount at the rate for regular wages. Only relevant for off-cycle payrolls. + type: boolean + required: + - employee_compensations + Payroll-Gross-Up-Request: + type: object + description: Request body for calculating gross up amount + properties: + employee_uuid: + type: string + description: The UUID of the employee + net_pay: + type: string + format: float + description: Employee net earnings + required: + - employee_uuid + - net_pay + Payroll-Gross-Up-Response: + type: object + description: Response containing the calculated gross up amount + x-examples: + success_status: + gross_up: '1234.56' + properties: + gross_up: + type: string + format: float + description: Gross up earnings. + Payroll-Calculate-Accruing-Time-Off-Hours-Request: + type: object + description: Request body for calculating accruing time off hours + properties: + regular_hours_worked: + type: + - string + - 'null' + format: float + description: Regular hours worked in this pay period + overtime_hours_worked: + type: + - string + - 'null' + format: float + description: Overtime hours worked in this pay period + double_overtime_hours_worked: + type: + - string + - 'null' + format: float + description: Double overtime hours worked in this pay period + pto_hours_used: + type: + - string + - 'null' + format: float + description: Paid time off hours used in this pay period + sick_hours_used: + type: + - string + - 'null' + format: float + description: Sick hours used in this pay period + Payroll-Calculate-Accruing-Time-Off-Hours-Response: + type: object + description: Response containing the calculated accruing time off hours + x-examples: + success_status: + hours_earned: + - time_off_policy_uuid: 7c8d9e0f-1a2b-3c4d-5e6f-7a8b9c0d1e2f + hours: '3.0' + - time_off_policy_uuid: 1a2b3c4d-5e6f-7a8b-9c0d-1e2f3a4b5c6d + hours: '20.0' + properties: + hours_earned: + type: array + description: Accruing time off hours earned for each time off policy + items: + type: object + properties: + time_off_policy_uuid: + type: string + description: The UUID of the time off policy + hours: + type: string + format: float + description: Hours accrued during this pay period. + required: + - hours_earned + Payroll: + type: object + x-examples: + success_status: + uuid: b441a30b-2adb-489e-b7b7-9d094011a3f8 + employee_compensations: [] + submission_blockers: [] + credit_blockers: [] + payroll_uuid: b441a30b-2adb-489e-b7b7-9d094011a3f8 + company_uuid: 9aa93530-43d5-484e-b608-33214109420d + off_cycle: false + auto_payroll: false + processed: true + processed_date: '2025-06-16' + calculated_at: '2025-06-16T16:58:03Z' + pay_period: + start_date: '2025-05-25' + end_date: '2025-06-09' + pay_schedule_uuid: 40ff5990-0191-4796-9717-32f7dd3e94d5 + check_date: '2025-06-13' + external: false + payroll_deadline: '2025-06-17T23:00:00Z' + totals: + employee_bonuses: '0.00' + employee_commissions: '0.00' + employee_cash_tips: '0.00' + employee_paycheck_tips: '0.00' + additional_earnings: '0.00' + owners_draw: '0.00' + benefits: '0.00' + check_amount: '0.00' + child_support_debit: '0.00' + company_debit: '0.00' + deferred_payroll_taxes: '0.00' + employee_benefits_deductions: '0.00' + employee_taxes: '0.00' + employer_taxes: '0.00' + gross_pay: '0.00' + imputed_pay: '0.00' + net_pay: '0.00' + net_pay_debit: '0.00' + other_deductions: '0.00' + reimbursement_debit: '0.00' + reimbursements: '0.00' + tax_debit: '0.00' + payroll_status_meta: + cancellable: false + expected_check_date: '2025-06-13' + initial_check_date: '2025-06-13' + expected_debit_time: '2025-06-17T23:00:00Z' + payroll_late: false + initial_debit_cutoff_time: '2025-06-17T23:00:00Z' + processing_request: + status: submit_success + errors: [] + created_at: '2025-06-16T16:58:03Z' + partner_owned_disbursement: + properties: + payroll_deadline: + "$ref": "#/components/schemas/Payroll-Deadline-Type" + check_date: + "$ref": "#/components/schemas/Payroll-Check-Date-Type" + processed: + "$ref": "#/components/schemas/Payroll-Processed-Type" + processed_date: + "$ref": "#/components/schemas/Payroll-Processed-Date-Type" + calculated_at: + "$ref": "#/components/schemas/Payroll-Calculated-At-Type" + uuid: + "$ref": "#/components/schemas/Payroll-Payroll-Uuid-Type" + payroll_uuid: + "$ref": "#/components/schemas/Payroll-Payroll-Uuid-Type" + company_uuid: + "$ref": "#/components/schemas/Payroll-Company-Uuid-Type" + off_cycle: + "$ref": "#/components/schemas/Payroll-Off-Cycle-Type" + off_cycle_reason: + "$ref": "#/components/schemas/Off-Cycle-Reason-Type" + auto_payroll: + "$ref": "#/components/schemas/Auto-Pilot-Type" + external: + "$ref": "#/components/schemas/Payroll-External-Type" + final_termination_payroll: + "$ref": "#/components/schemas/Payroll-Final-Termination-Payroll-Type" + withholding_pay_period: + "$ref": "#/components/schemas/Payroll-Withholding-Pay-Period-Type" + skip_regular_deductions: + "$ref": "#/components/schemas/Payroll-Skip-Regular-Deductions-Type" + fixed_withholding_rate: + "$ref": "#/components/schemas/Payroll-Fixed-Withholding-Rate-Type" + pay_period: + "$ref": "#/components/schemas/Payroll-Pay-Period-Type" + payroll_status_meta: + "$ref": "#/components/schemas/Payroll-Payroll-Status-Meta-Type" + totals: + "$ref": "#/components/schemas/Payroll-Totals-Type" + company_taxes: + "$ref": "#/components/schemas/Payroll-Company-Taxes-Type" + payroll_taxes: + "$ref": "#/components/schemas/Payroll-Taxes-Type" + payment_speed_changed: + "$ref": "#/components/schemas/Payroll-Payment-Speed-Changed-Type" + created_at: + "$ref": "#/components/schemas/Created-At-Type" + submission_blockers: + "$ref": "#/components/schemas/Payroll-Submission-Blockers-Type" + credit_blockers: + "$ref": "#/components/schemas/Payroll-Credit-Blockers-Type" + processing_request: + "$ref": "#/components/schemas/Payroll-Processing-Request" + partner_owned_disbursement: + "$ref": "#/components/schemas/Payroll-Partner-Owned-Disbursement-Type" + Unprocessed-Payroll: + type: object + description: A payroll that has been transitioned back to unprocessed state after cancellation. + x-examples: + success_status: + uuid: b50e611d-8f3d-4f24-b001-46675f7b5777 + employee_compensations: [] + payroll_uuid: b50e611d-8f3d-4f24-b001-46675f7b5777 + company_uuid: 6bf7807c-a5a0-4f4d-b2e7-3fbb4b2299fb + off_cycle: false + auto_payroll: false + processed: false + processed_date: + calculated_at: + pay_period: + start_date: '2021-02-01' + end_date: '2021-02-15' + pay_schedule_uuid: 00ebc4a4-ec88-4435-8f45-c505bb63e501 + check_date: '2021-02-22' + external: false + payroll_deadline: '2021-02-18T22:00:00Z' + created_at: '2022-02-01T22:00:00Z' + partner_owned_disbursement: + properties: + payroll_deadline: + "$ref": "#/components/schemas/Payroll-Deadline-Type" + check_date: + "$ref": "#/components/schemas/Payroll-Check-Date-Type" + processed: + "$ref": "#/components/schemas/Payroll-Processed-Type" + processed_date: + "$ref": "#/components/schemas/Payroll-Processed-Date-Type" + calculated_at: + "$ref": "#/components/schemas/Payroll-Calculated-At-Type" + uuid: + "$ref": "#/components/schemas/Payroll-Payroll-Uuid-Type" + payroll_uuid: + "$ref": "#/components/schemas/Payroll-Payroll-Uuid-Type" + company_uuid: + "$ref": "#/components/schemas/Payroll-Company-Uuid-Type" + off_cycle: + "$ref": "#/components/schemas/Payroll-Off-Cycle-Type" + off_cycle_reason: + "$ref": "#/components/schemas/Off-Cycle-Reason-Type" + auto_payroll: + "$ref": "#/components/schemas/Auto-Pilot-Type" + external: + "$ref": "#/components/schemas/Payroll-External-Type" + pay_period: + "$ref": "#/components/schemas/Payroll-Pay-Period-Type" + created_at: + "$ref": "#/components/schemas/Created-At-Type" + partner_owned_disbursement: + "$ref": "#/components/schemas/Payroll-Partner-Owned-Disbursement-Type" + Payroll-Partner-Owned-Disbursement-Type: + type: + - boolean + - 'null' + description: Will money movement for the payroll be performed by the partner rather than by Gusto? + Payroll-Deadline-Type: + type: string + format: date-time + description: A timestamp that is the deadline for the payroll to be run in order for employees to be paid on time. If payroll has not been run by the deadline, a prepare request will update both the check date and deadline to reflect the soonest employees can be paid and the deadline by which the payroll must be run in order for said check date to be met. + readOnly: true + Payroll-Check-Date-Type: + type: string + description: The date on which employees will be paid for the payroll. + readOnly: true + Payroll-Processed-Type: + type: boolean + description: Whether or not the payroll has been successfully processed. Note that processed payrolls cannot be updated. Additionally, a payroll is not guaranteed to be processed just because the payroll deadline has passed. Late payrolls are not uncommon. Conversely, users may choose to run payroll before the payroll deadline. + readOnly: true + Payroll-Processed-Date-Type: + type: + - string + - 'null' + description: The date at which the payroll was processed. Null if the payroll isn't processed yet. + readOnly: true + Payroll-Calculated-At-Type: + type: + - string + - 'null' + format: date-time + description: A timestamp of the last valid payroll calculation. Null if there isn't a valid calculation. + readOnly: true + Payroll-Payroll-Uuid-Type: + type: string + description: The UUID of the payroll. + readOnly: true + Payroll-Company-Uuid-Type: + type: string + description: The UUID of the company for the payroll. + readOnly: true + Payroll-Off-Cycle-Type: + type: boolean + description: Indicates whether the payroll is an off-cycle payroll + readOnly: true + Off-Cycle-Reason-Type: + anyOf: + - type: string + enum: + - Adhoc + - Benefit reversal + - Bonus + - Correction + - Dismissed employee + - Hired employee + - Wage correction + - Tax reconciliation + - Reversal + - Disability insurance distribution + - Transition from old pay schedule + - type: 'null' + description: The off-cycle reason. Only included for off-cycle payrolls. + readOnly: true + Auto-Pilot-Type: + type: boolean + description: Indicates whether the payroll has automatic payroll enabled + readOnly: true + Payroll-External-Type: + type: boolean + description: Indicates whether the payroll is an external payroll + readOnly: true + Payroll-Final-Termination-Payroll-Type: + type: boolean + description: Indicates whether the payroll is the final payroll for a terminated employee. Only included for off-cycle payrolls. + readOnly: true + Payroll-Skip-Regular-Deductions-Type: + type: + - boolean + - 'null' + description: Block regular deductions and contributions for this payroll. Only included for off-cycle payrolls. + readOnly: true + Payroll-Withholding-Pay-Period-Type: + description: The payment schedule tax rate the payroll is based on. Only included for off-cycle payrolls. + readOnly: true + anyOf: + - type: string + enum: + - Every week + - Every other week + - Twice per month + - Monthly + - Quarterly + - Semiannually + - Annually + - type: 'null' + Payroll-Fixed-Withholding-Rate-Type: + type: + - boolean + - 'null' + description: Enable taxes to be withheld at the IRS's required rate of 22% for federal income taxes. State income taxes will be taxed at the state's supplemental tax rate. Otherwise, we'll sum the entirety of the employee's wages and withhold taxes on the entire amount at the rate for regular wages. Only included for off-cycle payrolls. + readOnly: true + Payroll-Pay-Period-Type: + type: object + readOnly: true + properties: + start_date: + type: string + description: The start date, inclusive, of the pay period. + readOnly: true + end_date: + type: string + description: The start date, inclusive, of the pay period. + readOnly: true + pay_schedule_uuid: + type: + - string + - 'null' + description: The UUID of the pay schedule for the payroll. + readOnly: true + Payroll-Payroll-Status-Meta-Type: + type: object + description: Information about the payroll's status and expected dates + properties: + cancellable: + type: boolean + description: true if the payroll may be cancelled. + readOnly: true + expected_check_date: + type: string + description: The date an employee will be paid if the payroll is submitted now. + readOnly: true + initial_check_date: + type: + - string + - 'null' + description: The normal check date for the associated pay period. Returns `null` for off-cycle payrolls (not meaningful for off-cycle). + readOnly: true + expected_debit_time: + type: string + description: The time the employer's account will be debited if the payroll is submitted now. + readOnly: true + payroll_late: + type: + - boolean + - 'null' + description: expected_check_date > initial_check_date. Returns `null` for off-cycle payrolls (not meaningful for off-cycle). + readOnly: true + initial_debit_cutoff_time: + type: string + description: Payroll must be submitted at or before this time to avoid late payroll. + readOnly: true + Payroll-Totals-Type: + type: object + description: The subtotals for the payroll. + properties: + company_debit: + type: string + description: The total company debit for the payroll. + readOnly: true + net_pay_debit: + type: string + minLength: 1 + description: The total company net pay for the payroll. + tax_debit: + type: string + description: The total tax debit for the payroll. + readOnly: true + reimbursement_debit: + type: string + description: The total reimbursement debit for the payroll. + readOnly: true + child_support_debit: + type: string + description: The total child support debit for the payroll. + readOnly: true + reimbursements: + type: string + description: The total reimbursements for the payroll. + readOnly: true + net_pay: + type: string + description: The net pay amount for the payroll. + readOnly: true + gross_pay: + type: string + description: The gross pay amount for the payroll. + readOnly: true + employee_bonuses: + type: string + description: The total employee bonuses amount for the payroll. + readOnly: true + employee_commissions: + type: string + description: The total employee commissions amount for the payroll. + readOnly: true + employee_cash_tips: + type: string + description: The total employee cash tips amount for the payroll. + readOnly: true + employee_paycheck_tips: + type: string + description: The total employee paycheck tips amount for the payroll. + readOnly: true + additional_earnings: + type: string + description: The total additional earnings amount for the payroll. + readOnly: true + owners_draw: + type: string + description: The total owner's draw for the payroll. + readOnly: true + check_amount: + type: string + description: The total check amount for the payroll. + readOnly: true + employer_taxes: + type: string + description: The total amount of employer paid taxes for the payroll. + readOnly: true + employee_taxes: + type: string + description: The total amount of employee paid taxes for the payroll. + readOnly: true + benefits: + type: string + description: The total amount of company contributed benefits for the payroll. + readOnly: true + employee_benefits_deductions: + type: string + description: The total amount of employee deducted benefits for the payroll. + readOnly: true + imputed_pay: + type: string + description: The total amount of imputed pay for the payroll. + readOnly: true + deferred_payroll_taxes: + type: string + description: The total amount of payroll taxes deferred for the payroll, such as allowed by the CARES act. + readOnly: true + other_deductions: + type: string + description: The total amount of deductions for the payroll. + readOnly: true + Payroll-Employee-Compensations-Included: + type: object + additionalProperties: true + properties: + taxes: + type: array + uniqueItems: false + description: An array of employer and employee taxes for the pay period. Only included for processed or calculated payrolls when `taxes` is present in the `include` parameter. + items: + type: object + properties: + name: + type: string + minLength: 1 + employer: + type: boolean + amount: + type: string + format: float + required: + - name + - employer + - amount + readOnly: true + readOnly: true + benefits: + type: array + uniqueItems: false + description: An array of employee benefits for the pay period. Benefits are only included for processed payroll when the include parameter is present. + items: + type: object + properties: + name: + type: string + readOnly: true + employee_deduction: + type: string + format: float + readOnly: true + company_contribution: + type: string + format: float + readOnly: true + imputed: + type: boolean + readOnly: true + readOnly: true + deductions: + type: array + uniqueItems: false + description: An array of employee deductions for the pay period. Only included when `deductions` is present in the `include` parameter. + items: + type: object + properties: + name: + type: string + description: The name of the deduction. + amount: + type: string + format: float + description: The amount of the deduction for the pay period. + amount_type: + type: string + description: The amount type of the deduction for the pay period. Only present for unprocessed payrolls. + enum: + - fixed + - percent + uuid: + type: string + description: The UUID of the deduction. Only present for unprocessed payrolls. + readOnly: true + updatable_via_payroll: + type: boolean + description: Whether the deduction can be updated via the payroll update endpoint. Only present for unprocessed payrolls. + readOnly: true + Payroll-Employee-Compensations-Base-Type: + type: object + properties: + employee_uuid: + type: string + description: The UUID of the employee. + readOnly: true + excluded: + type: boolean + description: This employee will be excluded (skipped) from payroll calculation and will not be paid for the payroll. Cancelling a payroll would reset all employees' excluded back to false. + readOnly: true + first_name: + type: + - string + - 'null' + description: The first name of the employee. Requires `employees:read` scope. + readOnly: true + preferred_first_name: + type: + - string + - 'null' + description: The preferred first name of the employee. Requires `employees:read` scope. + readOnly: true + last_name: + type: + - string + - 'null' + description: The last name of the employee. Requires `employees:read` scope. + readOnly: true + gross_pay: + type: + - string + - 'null' + description: The employee's gross pay (as a string-formatted decimal, e.g. "1234.56"), equal to regular wages + cash tips + payroll tips + any other additional earnings, excluding imputed income. This value is only available for processed payrolls. + readOnly: true + net_pay: + type: + - string + - 'null' + description: The employee's net pay (as a string-formatted decimal, e.g. "1234.56"), equal to gross_pay - employee taxes - employee deductions or garnishments - cash tips. This value is only available for processed payrolls. + readOnly: true + check_amount: + type: + - string + - 'null' + description: The employee's check amount (as a string-formatted decimal, e.g. "1234.56"), equal to net_pay + reimbursements. This value is only available for processed payrolls. + readOnly: true + payment_method: + description: The employee's compensation payment method. Is *only* `Historical` when retrieving external payrolls initially run outside of Gusto, then put into Gusto. + anyOf: + - type: string + enum: + - Direct Deposit + - Check + - Historical + - type: 'null' + memo: + type: + - string + - 'null' + description: Custom text that will be printed as a personal note to the employee on a paystub. + readOnly: true + fixed_compensations: + type: array + uniqueItems: false + description: An array of fixed compensations for the employee. Fixed compensations include tips and bonuses. On regular payrolls, reimbursements are sent via the dedicated `reimbursements` array instead. Off-cycle payrolls continue to include reimbursements in `fixed_compensations`. If this payroll has been processed, only fixed compensations with a value greater than 0.00 are returned. For an unprocessed payroll, all active fixed compensations are returned. + items: + type: object + properties: + name: + type: string + description: The name of the compensation. This also serves as the unique, immutable identifier for this compensation. + amount: + type: string + description: The amount of the compensation for the pay period. + job_uuid: + type: string + description: The UUID of the job for the compensation. + readOnly: true + hourly_compensations: + type: array + uniqueItems: false + description: An array of hourly compensations for the employee. Hourly compensations include regular, overtime, and double overtime hours. If this payroll has been processed, only hourly compensations with a value greater than 0.00 are returned. For an unprocessed payroll, all active hourly compensations are returned. + items: + type: object + properties: + name: + type: string + description: The name of the compensation. This also serves as the unique, immutable identifier for this compensation. + hours: + type: string + description: The number of hours to be compensated for this pay period. + amount: + type: string + description: The amount of the compensation. This field is only available after the payroll is calculated and cannot be used for updating hourly compensations. + job_uuid: + type: string + description: The UUID of the job for the compensation. + readOnly: true + compensation_multiplier: + type: number + description: The amount multiplied by the base rate to calculate total compensation per hour worked. + readOnly: true + flsa_status: + type: string + description: The FLSA Status of the employee's primary job compensation + readOnly: true + paid_time_off: + type: array + uniqueItems: false + description: An array of all paid time off the employee is eligible for this pay period. + items: + type: object + properties: + name: + type: string + description: The name of the PTO. This also serves as the unique, immutable identifier for the PTO. + hours: + type: string + description: The hours of this PTO taken during the pay period. + amount: + type: + - string + - 'null' + description: The dollar amount paid for this PTO entry during the pay period (as a string-formatted decimal, e.g. "1234.56"). Only available for processed payrolls. + readOnly: true + final_payout_unused_hours_input: + type: + - string + - 'null' + description: The outstanding hours paid upon termination. This field is only applicable for termination payrolls. + reimbursements: + type: array + uniqueItems: false + description: An array of reimbursements for the employee. + items: + type: object + properties: + amount: + type: string + description: The dollar amount of the reimbursement for the pay period. + description: + type: + - string + - 'null' + description: The description of the reimbursement. Null for unnamed reimbursements. + uuid: + type: + - string + - 'null' + description: The UUID of the reimbursement. Null for unnamed reimbursements. This field is only available for unprocessed payrolls. + readOnly: true + recurring: + type: boolean + description: Whether the reimbursement is recurring. This field is only available for unprocessed payrolls. + readOnly: true + required: + - amount + - description + custom_withholdings: + type: object + description: | + The one-time custom withholding overrides applied to this payroll for this employee. + `federal` is null when no federal one-time override is set; `state` is an empty + array when no state one-time overrides are set. + properties: + federal: + type: + - object + - 'null' + description: Federal one-time custom withholding override applied to this payroll. + properties: + override_type: + type: string + enum: + - one_time + description: Override mode. Only `one_time` is currently exposed. + amount: + type: string + description: The amount that was withheld for this payroll. + amount_type: + type: string + enum: + - fixed + - percent + description: How to interpret the amount. + state: + type: array + description: State one-time custom withholding overrides applied to this payroll, one entry per state field. + items: + type: object + properties: + employee_state_field_uuid: + type: string + description: The UUID of the EmployeeStateField this withholding applies to. + override_type: + type: string + enum: + - one_time + description: Override mode. Only `one_time` is currently exposed. + amount: + type: string + description: The amount that was withheld for this payroll. + amount_type: + type: string + enum: + - fixed + - percent + description: How to interpret the amount. + Payroll-Employee-Compensations-Type: + allOf: + - "$ref": "#/components/schemas/Payroll-Employee-Compensations-Base-Type" + - "$ref": "#/components/schemas/Versionable" + - type: object + properties: + version: + description: The current version of this employee compensation. This field is only available for prepared payrolls. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. + deductions: + type: array + uniqueItems: false + description: An array of deductions for the employee. This field is included by default for regular payrolls in version `v2025-06-15` and later. + items: + type: object + properties: + name: + type: string + description: The name of the deduction. + amount: + type: number + description: The amount of the deduction for the pay period. + amount_type: + type: string + description: The amount type of the deduction for the pay period. Only present for unprocessed payrolls. + enum: + - fixed + - percent + uuid: + type: string + description: The UUID of the deduction. Only present for unprocessed payrolls. + updatable_via_payroll: + type: boolean + description: Whether the deduction can be updated via the payroll update endpoint. Only present for unprocessed payrolls. + readOnly: true + Payroll-Unprocessed-Employee-Compensations-Type: + allOf: + - "$ref": "#/components/schemas/Payroll-Employee-Compensations-Base-Type" + - "$ref": "#/components/schemas/Versionable" + - type: object + properties: + version: + description: The current version of this employee compensation. This field is only available for prepared payrolls. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/api-fundamentals#optimistic-version-control) for information on how to use this field. + Payroll-Company-Taxes-Type: + type: array + uniqueItems: false + description: An array of taxes applicable to this payroll in addition to taxes included in `employee_compensations`. Only included for processed or calculated payrolls when `taxes` is present in the `include` parameter. + items: + type: object + properties: + name: + type: string + description: The tax name + employer: + type: boolean + description: Whether this tax is an employer or employee tax + amount: + type: string + description: The amount of this tax for the payroll + Payroll-Taxes-Type: + type: array + uniqueItems: false + description: An array of tax totals applicable to this payroll. Only included for processed or calculated payrolls when `payroll_taxes` is present in the `include` parameter. + items: + type: object + properties: + name: + type: string + description: The tax name + employer: + type: boolean + description: Whether this tax is an employer or employee tax + amount: + type: number + description: The total tax for the payroll + Payroll-Payment-Speed-Changed-Type: + type: object + description: Only applicable when a payroll is moved to four day processing instead of fast ach. + properties: + original_check_date: + type: string + description: Original check date when fast ach applies. + readOnly: true + current_check_date: + type: string + description: Current check date. + readOnly: true + original_debit_date: + type: string + description: Original debit date when fast ach applies. + readOnly: true + current_debit_date: + type: string + description: Current debit date. + readOnly: true + reason: + type: string + description: The reason why the payroll is moved to four day. + readOnly: true + Created-At-Type: + type: string + format: date-time + description: Datetime for when the resource was created. + readOnly: true + Payroll-Submission-Blocker-Type: + type: object + description: A blocker that prevents payment submission. + properties: + blocker_type: + type: string + description: The type of blocker that's blocking the payment submission. + readOnly: true + blocker_name: + type: string + description: The name of the submission blocker. + readOnly: true + unblock_options: + type: array + uniqueItems: true + items: + type: object + properties: + unblock_type: + type: string + description: The type of unblock option for the submission blocker. + readOnly: true + check_date: + type: string + description: The payment check date associated with the unblock option. + readOnly: true + metadata: + type: object + additionalProperties: true + description: Additional data associated with the unblock option. + readOnly: true + description: The available options to unblock a submission blocker. + readOnly: true + selected_option: + type: + - string + - 'null' + description: The unblock option that's been selected to resolve the submission blocker. + readOnly: false + status: + type: string + description: The status of the submission blocker. + enum: + - unresolved + - resolved + readOnly: true + Payroll-Submission-Blocker-Request-Type: + type: object + description: Request object for resolving a submission blocker. Each submission_blocker should include a selected unblock option. + required: + - blocker_type + - selected_option + properties: + blocker_type: + type: string + description: The type of submission_blocker that is blocking the payment. + selected_option: + type: string + description: The selected option to unblock the payment's submission_blocker. + Payroll-Submission-Blockers-Type: + type: array + description: Only included for processed or calculated payrolls + uniqueItems: true + items: + "$ref": "#/components/schemas/Payroll-Submission-Blocker-Type" + Payroll-Credit-Blocker-Unblock-Option-Submit-Wire: + type: object + description: Unblock option to resolve a credit blocker by submitting a wire transfer + required: + - unblock_type + - check_date + - metadata + properties: + unblock_type: + type: string + enum: + - submit_wire + description: The type of unblock option for the credit blocker + readOnly: true + check_date: + type: string + description: The payment check date associated with the unblock option + readOnly: true + metadata: + type: object + required: + - wire_in_amount + - wire_in_deadline + - wire_in_request_uuid + properties: + wire_in_amount: + type: string + description: The amount to be wired in (decimal string) + readOnly: true + wire_in_deadline: + type: string + format: date-time + description: Deadline for the wire transfer to be received + readOnly: true + wire_in_request_uuid: + type: string + description: UUID of the wire in request + readOnly: true + readOnly: true + Payroll-Credit-Blocker-Unblock-Option-Submit-Bank-Screenshot: + type: object + description: Unblock option to resolve a credit blocker by submitting a bank screenshot + required: + - unblock_type + - check_date + - metadata + properties: + unblock_type: + type: string + enum: + - submit_bank_screenshot + description: The type of unblock option for the credit blocker + readOnly: true + check_date: + type: string + description: The payment check date associated with the unblock option + readOnly: true + metadata: + type: object + required: + - information_request_uuid + properties: + information_request_uuid: + type: string + description: UUID of the information request + readOnly: true + bank_account_last_four_digits: + type: + - string + - 'null' + description: Last 4 digits of the bank account number for the bank screenshot RFI + readOnly: true + readOnly: true + Payroll-Credit-Blocker-Unblock-Option-Respond-To-High-Risk-Fraud-Rfi: + type: object + description: Unblock option to resolve a credit blocker by responding to high risk fraud RFI + required: + - unblock_type + - check_date + - metadata + properties: + unblock_type: + type: string + enum: + - respond_to_high_risk_fraud_rfi + description: The type of unblock option for the credit blocker + readOnly: true + check_date: + type: string + description: The payment check date associated with the unblock option + readOnly: true + metadata: + type: object + required: + - information_request_uuid + properties: + information_request_uuid: + type: string + description: UUID of the information request + readOnly: true + readOnly: true + Payroll-Credit-Blocker-Unblock-Option-Wait-For-Reverse-Wire: + type: object + description: Unblock option to resolve a credit blocker by waiting for reverse wire + required: + - unblock_type + - check_date + - metadata + properties: + unblock_type: + type: string + enum: + - wait_for_reverse_wire + description: The type of unblock option for the credit blocker + readOnly: true + check_date: + type: string + description: The payment check date associated with the unblock option + readOnly: true + metadata: + type: object + additionalProperties: false + readOnly: true + Payroll-Credit-Blocker-Type: + type: object + description: A blocker that prevents payment crediting. + properties: + blocker_type: + type: string + description: The type of blocker that's blocking the payment from being credited. + readOnly: true + blocker_name: + type: string + description: The name of the credit blocker. + readOnly: true + unblock_options: + type: array + uniqueItems: true + items: + oneOf: + - "$ref": "#/components/schemas/Payroll-Credit-Blocker-Unblock-Option-Submit-Wire" + - "$ref": "#/components/schemas/Payroll-Credit-Blocker-Unblock-Option-Submit-Bank-Screenshot" + - "$ref": "#/components/schemas/Payroll-Credit-Blocker-Unblock-Option-Respond-To-High-Risk-Fraud-Rfi" + - "$ref": "#/components/schemas/Payroll-Credit-Blocker-Unblock-Option-Wait-For-Reverse-Wire" + discriminator: + propertyName: unblock_type + mapping: + submit_wire: "#/components/schemas/Payroll-Credit-Blocker-Unblock-Option-Submit-Wire" + submit_bank_screenshot: "#/components/schemas/Payroll-Credit-Blocker-Unblock-Option-Submit-Bank-Screenshot" + respond_to_high_risk_fraud_rfi: "#/components/schemas/Payroll-Credit-Blocker-Unblock-Option-Respond-To-High-Risk-Fraud-Rfi" + wait_for_reverse_wire: "#/components/schemas/Payroll-Credit-Blocker-Unblock-Option-Wait-For-Reverse-Wire" + description: The available options to unblock a credit blocker. + readOnly: true + selected_option: + type: + - string + - 'null' + description: The unblock option that's been selected to resolve the credit blocker. + readOnly: false + status: + type: string + description: The status of the credit blocker + enum: + - unresolved + - pending_review + - resolved + - failed + Payroll-Credit-Blockers-Type: + type: array + description: Only included for processed payrolls + uniqueItems: true + items: + "$ref": "#/components/schemas/Payroll-Credit-Blocker-Type" + Payroll-Processing-Request: + type: + - object + - 'null' + properties: + status: + type: string + description: The status of the payroll processing request + readOnly: true + enum: + - calculating + - calculate_success + - submitting + - submit_success + - processing_failed + errors: + description: Errors that occurred during async payroll processing + readOnly: true + type: array + items: + "$ref": "#/components/schemas/Entity-Error-Object" + Payroll-Fixed-Compensation-Types-Type: + type: array + items: + type: object + readOnly: true + properties: + name: + description: The name of an available type of fixed compensation. + type: string + readOnly: true + Payroll-Show: + type: object + x-examples: + success_status: + uuid: b441a30b-2adb-489e-b7b7-9d094011a3f8 + employee_compensations: [] + submission_blockers: [] + credit_blockers: [] + payroll_uuid: b441a30b-2adb-489e-b7b7-9d094011a3f8 + company_uuid: 9aa93530-43d5-484e-b608-33214109420d + off_cycle: false + auto_payroll: false + processed: true + processed_date: '2025-06-16' + calculated_at: '2025-06-16T16:58:03Z' + pay_period: + start_date: '2025-05-25' + end_date: '2025-06-09' + pay_schedule_uuid: 40ff5990-0191-4796-9717-32f7dd3e94d5 + check_date: '2025-06-13' + external: false + payroll_deadline: '2025-06-17T23:00:00Z' + totals: + employee_bonuses: '0.00' + employee_commissions: '0.00' + employee_cash_tips: '0.00' + employee_paycheck_tips: '0.00' + additional_earnings: '0.00' + owners_draw: '0.00' + benefits: '0.00' + check_amount: '0.00' + child_support_debit: '0.00' + company_debit: '0.00' + deferred_payroll_taxes: '0.00' + employee_benefits_deductions: '0.00' + employee_taxes: '0.00' + employer_taxes: '0.00' + gross_pay: '0.00' + imputed_pay: '0.00' + net_pay: '0.00' + net_pay_debit: '0.00' + other_deductions: '0.00' + reimbursement_debit: '0.00' + reimbursements: '0.00' + tax_debit: '0.00' + processing_request: + status: submit_success + errors: [] + created_at: '2025-06-16T16:58:03Z' + partner_owned_disbursement: + with_submit_wire_credit_blocker: + uuid: b441a30b-2adb-489e-b7b7-9d094011a3f8 + employee_compensations: [] + submission_blockers: [] + credit_blockers: + - blocker_type: waiting_for_wire_in + blocker_name: Waiting for Wire In + unblock_options: + - unblock_type: submit_wire + check_date: '2025-06-13' + metadata: + wire_in_amount: '15000.00' + wire_in_deadline: '2025-06-12T18:00:00Z' + wire_in_request_uuid: c1234567-89ab-cdef-0123-456789abcdef + selected_option: + status: unresolved + payroll_uuid: b441a30b-2adb-489e-b7b7-9d094011a3f8 + company_uuid: 9aa93530-43d5-484e-b608-33214109420d + off_cycle: false + auto_payroll: false + processed: true + processed_date: '2025-06-16' + calculated_at: '2025-06-16T16:58:03Z' + pay_period: + start_date: '2025-05-25' + end_date: '2025-06-09' + pay_schedule_uuid: 40ff5990-0191-4796-9717-32f7dd3e94d5 + check_date: '2025-06-13' + external: false + payroll_deadline: '2025-06-17T23:00:00Z' + totals: + employee_bonuses: '0.00' + employee_commissions: '0.00' + employee_cash_tips: '0.00' + employee_paycheck_tips: '0.00' + additional_earnings: '0.00' + owners_draw: '0.00' + benefits: '0.00' + check_amount: '0.00' + child_support_debit: '0.00' + company_debit: '0.00' + deferred_payroll_taxes: '0.00' + employee_benefits_deductions: '0.00' + employee_taxes: '0.00' + employer_taxes: '0.00' + gross_pay: '0.00' + imputed_pay: '0.00' + net_pay: '0.00' + net_pay_debit: '0.00' + other_deductions: '0.00' + reimbursement_debit: '0.00' + reimbursements: '0.00' + tax_debit: '0.00' + processing_request: + status: submit_success + errors: [] + created_at: '2025-06-16T16:58:03Z' + partner_owned_disbursement: + with_submit_bank_screenshot_credit_blocker: + uuid: b441a30b-2adb-489e-b7b7-9d094011a3f8 + employee_compensations: [] + submission_blockers: [] + credit_blockers: + - blocker_type: waiting_for_bank_screenshot + blocker_name: Waiting for Bank Screenshot + unblock_options: + - unblock_type: submit_bank_screenshot + check_date: '2025-06-13' + metadata: + information_request_uuid: d2234567-89ab-cdef-0123-456789abcdef + selected_option: + status: unresolved + payroll_uuid: b441a30b-2adb-489e-b7b7-9d094011a3f8 + company_uuid: 9aa93530-43d5-484e-b608-33214109420d + off_cycle: false + auto_payroll: false + processed: true + processed_date: '2025-06-16' + calculated_at: '2025-06-16T16:58:03Z' + pay_period: + start_date: '2025-05-25' + end_date: '2025-06-09' + pay_schedule_uuid: 40ff5990-0191-4796-9717-32f7dd3e94d5 + check_date: '2025-06-13' + external: false + payroll_deadline: '2025-06-17T23:00:00Z' + totals: + employee_bonuses: '0.00' + employee_commissions: '0.00' + employee_cash_tips: '0.00' + employee_paycheck_tips: '0.00' + additional_earnings: '0.00' + owners_draw: '0.00' + benefits: '0.00' + check_amount: '0.00' + child_support_debit: '0.00' + company_debit: '0.00' + deferred_payroll_taxes: '0.00' + employee_benefits_deductions: '0.00' + employee_taxes: '0.00' + employer_taxes: '0.00' + gross_pay: '0.00' + imputed_pay: '0.00' + net_pay: '0.00' + net_pay_debit: '0.00' + other_deductions: '0.00' + reimbursement_debit: '0.00' + reimbursements: '0.00' + tax_debit: '0.00' + processing_request: + status: submit_success + errors: [] + created_at: '2025-06-16T16:58:03Z' + partner_owned_disbursement: + with_respond_to_high_risk_fraud_rfi_credit_blocker: + uuid: b441a30b-2adb-489e-b7b7-9d094011a3f8 + employee_compensations: [] + submission_blockers: [] + credit_blockers: + - blocker_type: waiting_for_high_risk_fraud_rfi + blocker_name: Waiting for High Risk Fraud RFI + unblock_options: + - unblock_type: respond_to_high_risk_fraud_rfi + check_date: '2025-06-13' + metadata: + information_request_uuid: e3234567-89ab-cdef-0123-456789abcdef + selected_option: + status: pending_review + payroll_uuid: b441a30b-2adb-489e-b7b7-9d094011a3f8 + company_uuid: 9aa93530-43d5-484e-b608-33214109420d + off_cycle: false + auto_payroll: false + processed: true + processed_date: '2025-06-16' + calculated_at: '2025-06-16T16:58:03Z' + pay_period: + start_date: '2025-05-25' + end_date: '2025-06-09' + pay_schedule_uuid: 40ff5990-0191-4796-9717-32f7dd3e94d5 + check_date: '2025-06-13' + external: false + payroll_deadline: '2025-06-17T23:00:00Z' + totals: + employee_bonuses: '0.00' + employee_commissions: '0.00' + employee_cash_tips: '0.00' + employee_paycheck_tips: '0.00' + additional_earnings: '0.00' + owners_draw: '0.00' + benefits: '0.00' + check_amount: '0.00' + child_support_debit: '0.00' + company_debit: '0.00' + deferred_payroll_taxes: '0.00' + employee_benefits_deductions: '0.00' + employee_taxes: '0.00' + employer_taxes: '0.00' + gross_pay: '0.00' + imputed_pay: '0.00' + net_pay: '0.00' + net_pay_debit: '0.00' + other_deductions: '0.00' + reimbursement_debit: '0.00' + reimbursements: '0.00' + tax_debit: '0.00' + processing_request: + status: submit_success + errors: [] + created_at: '2025-06-16T16:58:03Z' + partner_owned_disbursement: + with_wait_for_reverse_wire_credit_blocker: + uuid: b441a30b-2adb-489e-b7b7-9d094011a3f8 + employee_compensations: [] + submission_blockers: [] + credit_blockers: + - blocker_type: waiting_for_reverse_wire + blocker_name: Waiting for Reverse Wire + unblock_options: + - unblock_type: wait_for_reverse_wire + check_date: '2025-06-13' + metadata: {} + selected_option: + status: resolved + payroll_uuid: b441a30b-2adb-489e-b7b7-9d094011a3f8 + company_uuid: 9aa93530-43d5-484e-b608-33214109420d + off_cycle: false + auto_payroll: false + processed: true + processed_date: '2025-06-16' + calculated_at: '2025-06-16T16:58:03Z' + pay_period: + start_date: '2025-05-25' + end_date: '2025-06-09' + pay_schedule_uuid: 40ff5990-0191-4796-9717-32f7dd3e94d5 + check_date: '2025-06-13' + external: false + payroll_deadline: '2025-06-17T23:00:00Z' + totals: + employee_bonuses: '0.00' + employee_commissions: '0.00' + employee_cash_tips: '0.00' + employee_paycheck_tips: '0.00' + additional_earnings: '0.00' + owners_draw: '0.00' + benefits: '0.00' + check_amount: '0.00' + child_support_debit: '0.00' + company_debit: '0.00' + deferred_payroll_taxes: '0.00' + employee_benefits_deductions: '0.00' + employee_taxes: '0.00' + employer_taxes: '0.00' + gross_pay: '0.00' + imputed_pay: '0.00' + net_pay: '0.00' + net_pay_debit: '0.00' + other_deductions: '0.00' + reimbursement_debit: '0.00' + reimbursements: '0.00' + tax_debit: '0.00' + processing_request: + status: submit_success + errors: [] + created_at: '2025-06-16T16:58:03Z' + partner_owned_disbursement: + properties: + payroll_deadline: + "$ref": "#/components/schemas/Payroll-Deadline-Type" + check_date: + "$ref": "#/components/schemas/Payroll-Check-Date-Type" + processed: + "$ref": "#/components/schemas/Payroll-Processed-Type" + processed_date: + "$ref": "#/components/schemas/Payroll-Processed-Date-Type" + calculated_at: + "$ref": "#/components/schemas/Payroll-Calculated-At-Type" + uuid: + "$ref": "#/components/schemas/Payroll-Payroll-Uuid-Type" + payroll_uuid: + "$ref": "#/components/schemas/Payroll-Payroll-Uuid-Type" + company_uuid: + "$ref": "#/components/schemas/Payroll-Company-Uuid-Type" + off_cycle: + "$ref": "#/components/schemas/Payroll-Off-Cycle-Type" + off_cycle_reason: + "$ref": "#/components/schemas/Off-Cycle-Reason-Type" + auto_payroll: + "$ref": "#/components/schemas/Auto-Pilot-Type" + external: + "$ref": "#/components/schemas/Payroll-External-Type" + final_termination_payroll: + "$ref": "#/components/schemas/Payroll-Final-Termination-Payroll-Type" + withholding_pay_period: + "$ref": "#/components/schemas/Payroll-Withholding-Pay-Period-Type" + skip_regular_deductions: + "$ref": "#/components/schemas/Payroll-Skip-Regular-Deductions-Type" + fixed_withholding_rate: + "$ref": "#/components/schemas/Payroll-Fixed-Withholding-Rate-Type" + pay_period: + "$ref": "#/components/schemas/Payroll-Pay-Period-Type" + payroll_status_meta: + "$ref": "#/components/schemas/Payroll-Payroll-Status-Meta-Type" + totals: + "$ref": "#/components/schemas/Payroll-Totals-Type" + company_taxes: + "$ref": "#/components/schemas/Payroll-Company-Taxes-Type" + payroll_taxes: + "$ref": "#/components/schemas/Payroll-Taxes-Type" + payment_speed_changed: + "$ref": "#/components/schemas/Payroll-Payment-Speed-Changed-Type" + created_at: + "$ref": "#/components/schemas/Created-At-Type" + submission_blockers: + "$ref": "#/components/schemas/Payroll-Submission-Blockers-Type" + credit_blockers: + "$ref": "#/components/schemas/Payroll-Credit-Blockers-Type" + processing_request: + "$ref": "#/components/schemas/Payroll-Processing-Request" + partner_owned_disbursement: + "$ref": "#/components/schemas/Payroll-Partner-Owned-Disbursement-Type" + employee_compensations: + type: array + uniqueItems: false + items: + type: object + allOf: + - "$ref": "#/components/schemas/Payroll-Employee-Compensations-Type" + - "$ref": "#/components/schemas/Payroll-Employee-Compensations-Included" + Payroll-Unprocessed: + description: An unprocessed payroll with employee compensations. + x-examples: + success_status: + uuid: 4428f108-e46e-4ab6-ba20-03cea031cfc0 + employee_compensations: [] + payroll_uuid: 4428f108-e46e-4ab6-ba20-03cea031cfc0 + company_uuid: 42b5333b-ee39-493a-bf7e-f41f2bd67848 + payroll_status_meta: + cancellable: false + expected_check_date: '2025-06-17' + initial_check_date: '2025-06-17' + expected_debit_time: '2025-06-11T23:00:00Z' + payroll_late: false + initial_debit_cutoff_time: '2025-06-11T23:00:00Z' + off_cycle: true + auto_payroll: false + off_cycle_reason: Bonus + withholding_pay_period: Twice per month + skip_regular_deductions: true + fixed_withholding_rate: true + final_termination_payroll: false + processed: false + processed_date: + calculated_at: + pay_period: + start_date: '2025-06-10' + end_date: '2025-06-16' + pay_schedule_uuid: + check_date: '2025-06-17' + external: false + payroll_deadline: '2025-06-11T23:00:00Z' + fixed_compensation_types: + - name: Bonus + - name: Commission + - name: Paycheck Tips + - name: Cash Tips + - name: Correction Payment + - name: Reimbursement + created_at: '2025-06-11T19:40:52Z' + partner_owned_disbursement: + type: object + properties: + payroll_deadline: + "$ref": "#/components/schemas/Payroll-Deadline-Type" + check_date: + "$ref": "#/components/schemas/Payroll-Check-Date-Type" + processed: + "$ref": "#/components/schemas/Payroll-Processed-Type" + processed_date: + "$ref": "#/components/schemas/Payroll-Processed-Date-Type" + calculated_at: + "$ref": "#/components/schemas/Payroll-Calculated-At-Type" + uuid: + "$ref": "#/components/schemas/Payroll-Payroll-Uuid-Type" + payroll_uuid: + "$ref": "#/components/schemas/Payroll-Payroll-Uuid-Type" + company_uuid: + "$ref": "#/components/schemas/Payroll-Company-Uuid-Type" + off_cycle: + "$ref": "#/components/schemas/Payroll-Off-Cycle-Type" + off_cycle_reason: + "$ref": "#/components/schemas/Off-Cycle-Reason-Type" + auto_payroll: + "$ref": "#/components/schemas/Auto-Pilot-Type" + external: + "$ref": "#/components/schemas/Payroll-External-Type" + final_termination_payroll: + "$ref": "#/components/schemas/Payroll-Final-Termination-Payroll-Type" + withholding_pay_period: + "$ref": "#/components/schemas/Payroll-Withholding-Pay-Period-Type" + skip_regular_deductions: + "$ref": "#/components/schemas/Payroll-Skip-Regular-Deductions-Type" + fixed_withholding_rate: + "$ref": "#/components/schemas/Payroll-Fixed-Withholding-Rate-Type" + pay_period: + "$ref": "#/components/schemas/Payroll-Pay-Period-Type" + payroll_status_meta: + "$ref": "#/components/schemas/Payroll-Payroll-Status-Meta-Type" + employee_compensations: + type: array + uniqueItems: false + items: + "$ref": "#/components/schemas/Payroll-Unprocessed-Employee-Compensations-Type" + payment_speed_changed: + "$ref": "#/components/schemas/Payroll-Payment-Speed-Changed-Type" + created_at: + "$ref": "#/components/schemas/Created-At-Type" + fixed_compensation_types: + "$ref": "#/components/schemas/Payroll-Fixed-Compensation-Types-Type" + processing_request: + "$ref": "#/components/schemas/Payroll-Processing-Request" + partner_owned_disbursement: + "$ref": "#/components/schemas/Payroll-Partner-Owned-Disbursement-Type" + Payroll-Prepared: + description: The response from preparing a payroll for update. Contains refreshed employee compensations, updated payroll dates, and version information needed for subsequent payroll updates. + x-examples: + success_status: + uuid: 4428f108-e46e-4ab6-ba20-03cea031cfc0 + employee_compensations: [] + payroll_uuid: 4428f108-e46e-4ab6-ba20-03cea031cfc0 + company_uuid: 42b5333b-ee39-493a-bf7e-f41f2bd67848 + payroll_status_meta: + cancellable: false + expected_check_date: '2025-06-17' + initial_check_date: '2025-06-17' + expected_debit_time: '2025-06-11T23:00:00Z' + payroll_late: false + initial_debit_cutoff_time: '2025-06-11T23:00:00Z' + off_cycle: true + auto_payroll: false + off_cycle_reason: Bonus + withholding_pay_period: Twice per month + skip_regular_deductions: true + fixed_withholding_rate: true + final_termination_payroll: false + processed: false + processed_date: + calculated_at: + pay_period: + start_date: '2025-06-10' + end_date: '2025-06-16' + pay_schedule_uuid: + check_date: '2025-06-17' + external: false + payroll_deadline: '2025-06-11T23:00:00Z' + fixed_compensation_types: + - name: Bonus + - name: Commission + - name: Paycheck Tips + - name: Cash Tips + - name: Correction Payment + - name: Reimbursement + created_at: '2025-06-11T19:40:52Z' + partner_owned_disbursement: + type: object + properties: + payroll_deadline: + "$ref": "#/components/schemas/Payroll-Deadline-Type" + check_date: + "$ref": "#/components/schemas/Payroll-Check-Date-Type" + processed: + "$ref": "#/components/schemas/Payroll-Processed-Type" + processed_date: + "$ref": "#/components/schemas/Payroll-Processed-Date-Type" + calculated_at: + "$ref": "#/components/schemas/Payroll-Calculated-At-Type" + uuid: + "$ref": "#/components/schemas/Payroll-Payroll-Uuid-Type" + payroll_uuid: + "$ref": "#/components/schemas/Payroll-Payroll-Uuid-Type" + company_uuid: + "$ref": "#/components/schemas/Payroll-Company-Uuid-Type" + off_cycle: + "$ref": "#/components/schemas/Payroll-Off-Cycle-Type" + off_cycle_reason: + "$ref": "#/components/schemas/Off-Cycle-Reason-Type" + auto_payroll: + "$ref": "#/components/schemas/Auto-Pilot-Type" + external: + "$ref": "#/components/schemas/Payroll-External-Type" + final_termination_payroll: + "$ref": "#/components/schemas/Payroll-Final-Termination-Payroll-Type" + withholding_pay_period: + "$ref": "#/components/schemas/Payroll-Withholding-Pay-Period-Type" + skip_regular_deductions: + "$ref": "#/components/schemas/Payroll-Skip-Regular-Deductions-Type" + fixed_withholding_rate: + "$ref": "#/components/schemas/Payroll-Fixed-Withholding-Rate-Type" + pay_period: + "$ref": "#/components/schemas/Payroll-Pay-Period-Type" + payroll_status_meta: + "$ref": "#/components/schemas/Payroll-Payroll-Status-Meta-Type" + employee_compensations: + type: array + uniqueItems: false + items: + "$ref": "#/components/schemas/Payroll-Employee-Compensations-Type" + payment_speed_changed: + "$ref": "#/components/schemas/Payroll-Payment-Speed-Changed-Type" + created_at: + "$ref": "#/components/schemas/Created-At-Type" + fixed_compensation_types: + "$ref": "#/components/schemas/Payroll-Fixed-Compensation-Types-Type" + processing_request: + "$ref": "#/components/schemas/Payroll-Processing-Request" + partner_owned_disbursement: + "$ref": "#/components/schemas/Payroll-Partner-Owned-Disbursement-Type" + Payroll-Receipt: + type: object + x-examples: + success_status: + totals: + company_debit: '0.00' + net_pay_debit: '0.00' + child_support_debit: '0.00' + reimbursement_debit: '0.00' + tax_debit: '0.00' + taxes: [] + employee_compensations: [] + licensee: + name: Gusto, Zenpayroll Inc. + address: 525 20th St + city: San Francisco + state: CA + postal_code: '94107' + phone_number: '4157778888' + payroll_uuid: 9f624c0d-0d4f-499a-993a-846dfa47a48e + company_uuid: '0481a066-e26a-465b-a2c1-933bd5b03a69' + name_of_sender: Kiehn, Conroy and Prohaska + name_of_recipient: Payroll Recipients + recipient_notice: Payroll recipients include the employees listed below plus the tax agencies for the taxes listed below. + debit_date: '2025-06-12' + license: ZenPayroll, Inc., dba Gusto is a licensed money transmitter. For more about Gusto’s licenses and your state-specific rights to request information, submit complaints, dispute errors, or cancel transactions, visit our license page. + license_uri: https://gusto.com/about/licenses + right_to_refund: https://gusto.com/about/licenses + liability_of_licensee: https://gusto.com/about/licenses + properties: + payroll_uuid: + type: string + description: A unique identifier of the payroll receipt. + company_uuid: + type: string + description: A unique identifier of the company for the payroll. + name_of_sender: + type: string + description: The name of the company by whom the payroll was paid + name_of_recipient: + type: string + description: Always the fixed string "Payroll Recipients" + recipient_notice: + type: string + description: Always the fixed string "Payroll recipients include the employees listed below plus the tax agencies for the taxes listed below." + debit_date: + type: string + description: The debit or funding date for the payroll + license: + type: string + description: Always the fixed string "ZenPayroll, Inc., dba Gusto is a licensed money transmitter. For more about Gusto’s licenses and your state-specific rights to request information, submit complaints, dispute errors, or cancel transactions, visit our license page." + license_uri: + type: string + description: URL for the license information for the licensed payroll processor. Always the fixed string "https://gusto.com/about/licenses" + right_to_refund: + type: string + description: '' + liability_of_licensee: + type: string + description: '' + totals: + type: object + description: The subtotals for the payroll. + properties: + company_debit: + type: string + format: float + description: The total company debit for the payroll. + net_pay_debit: + type: string + format: float + description: The total company net pay for the payroll. + child_support_debit: + type: string + format: float + description: The total child support debit for the payroll. + reimbursement_debit: + type: string + format: float + description: The total reimbursements for the payroll. + tax_debit: + type: string + format: float + description: The total tax debit for the payroll. + taxes: + type: array + description: An array of totaled employer and employee taxes for the pay period. + items: + type: object + properties: + name: + type: string + description: The amount paid for this tax. + amount: + type: string + format: float + description: The total amount paid by both employer and employee for this tax. + employee_compensations: + type: array + description: An array of employee compensations and withholdings for this payroll + items: + type: object + properties: + employee_uuid: + type: string + description: The UUID of the employee. + employee_first_name: + type: string + description: The first name of the employee. + employee_last_name: + type: string + description: The last name of the employee. + payment_method: + type: string + description: The employee's compensation payment method. + enum: + - Direct Deposit + - Check + net_pay: + type: string + format: float + description: The employee's net pay. Net pay paid by check is available for reference but is not included in the `["totals"]["net_pay_debit"]` amount. + total_tax: + type: string + format: float + description: The total of employer and employee taxes for the pay period. + total_garnishments: + type: string + format: float + description: The total garnishments for the pay period. + child_support_garnishment: + type: string + format: float + description: The total child support garnishment for the pay period. + total_reimbursement: + type: string + format: float + description: The total reimbursement for the pay period. + licensee: + type: object + description: The licensed payroll processor + properties: + name: + type: string + description: Always the fixed string "Gusto, Zenpayroll Inc." + address: + type: string + description: Always the fixed string "525 20th St" + city: + type: string + description: Always the fixed string "San Francisco" + state: + type: string + description: Always the fixed string "CA" + postal_code: + type: string + description: Always the fixed string "94107" + phone_number: + type: string + description: Always the fixed string "4157778888" + Versionable: + type: object + properties: + version: + type: string + description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. + Contractor-Address: + type: object + x-examples: + example: + version: 23323096a8015e32d9795fadf1fd300d + contractor_uuid: 9779767c-6044-48e0-bf68-aeb370b9a2e7 + street_1: 999 Kiera Stravenue + street_2: Suite 391 + city: San Francisco + state: CA + zip: '94107' + country: USA + active: true + properties: + contractor_uuid: + type: string + description: The UUID of the contractor + street_1: + type: + - string + - 'null' + readOnly: false + street_2: + type: + - string + - 'null' + readOnly: false + city: + type: + - string + - 'null' + readOnly: false + state: + type: + - string + - 'null' + readOnly: false + zip: + type: + - string + - 'null' + readOnly: false + country: + type: + - string + - 'null' + readOnly: false + default: USA + active: + type: boolean + description: The status of the location. Inactive locations have been deleted, but may still have historical data associated with them. + readOnly: true + version: + type: string + description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. + warnings: + type: array + description: An array of warning objects that provide additional information about the address. Warnings do not prevent the address from being saved. + items: + "$ref": "#/components/schemas/Warning-Object" + Contractor-Address-Update-Body: + type: object + properties: + version: + type: string + example: 56d00c178bc7393b2a206ed6a86afcb4 + description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. + street_1: + type: string + street_2: + type: string + city: + type: string + state: + type: string + zip: + type: string + required: + - version + x-examples: + example: + version: fe75bd065ff48b91c35fe8ff842f986c + street_1: 300 3rd Street + street_2: + city: San Francisco + state: CA + zip: '94107' + Address: + type: object + allOf: + - "$ref": "#/components/schemas/Versionable" + - type: object + properties: + street_1: + type: + - string + - 'null' + readOnly: false + street_2: + type: + - string + - 'null' + readOnly: false + city: + type: + - string + - 'null' + readOnly: false + state: + type: + - string + - 'null' + readOnly: false + zip: + type: + - string + - 'null' + readOnly: false + country: + type: + - string + - 'null' + readOnly: false + default: USA + active: + type: boolean + description: The status of the location. Inactive locations have been deleted, but may still have historical data associated with them. + readOnly: true + example: + street_1: 412 Kiera Stravenue + street_2: Suite 391 + city: San Francisco + state: CA + zip: '94107' + country: USA + active: true + Department: + type: object + allOf: + - "$ref": "#/components/schemas/Versionable" + - type: object + properties: + uuid: + type: string + description: The UUID of the department + company_uuid: + type: string + description: The UUID of the company + title: + type: string + description: Name of the department + employees: + type: array + description: Array of employees assigned to the department. + items: + properties: + uuid: + type: string + contractors: + type: array + description: Array of contractors assigned to the department. + items: + properties: + uuid: + type: string + x-examples: + example: + uuid: 56260b3d-c375-415c-b77a-75d99f717193 + company_uuid: 7087a288-8349-4632-b92e-bc94fb79f29e + title: Stage Hand + version: d90440dd464601d1c8f4e9e240dfb7a6 + employees: + - uuid: 41199375-a999-4414-9f40-d9bf596b134d + contractors: + - uuid: 3488549f-60e4-494f-a34a-9d8aad3aabf5 + example_created: + uuid: 56260b3d-c375-415c-b77a-75d99f717193 + company_uuid: 7087a288-8349-4632-b92e-bc94fb79f29e + title: Stage Hand + version: d90440dd464601d1c8f4e9e240dfb7a6 + employees: [] + contractors: [] + Department-List: + type: array + items: + "$ref": "#/components/schemas/Department" + x-examples: + example: + - uuid: 56260b3d-c375-415c-b77a-75d99f717193 + company_uuid: 7087a288-8349-4632-b92e-bc94fb79f29e + title: Stage Hand + version: d90440dd464601d1c8f4e9e240dfb7a6 + employees: + - uuid: 41199375-a999-4414-9f40-d9bf596b134d + contractors: [] + - uuid: ec5c8a85-3233-4f39-a9f5-fb1ab7b5f5f3 + company_uuid: 7087a288-8349-4632-b92e-bc94fb79f29e + title: Actors + version: 34f39a30b45d077cb83aed2df4810d74 + employees: + - uuid: 7ee4aca1-814b-4034-b0f8-07f93cc679d1 + contractors: [] + - uuid: 1802465d-4f68-4865-920c-1307ab095f12 + company_uuid: 7087a288-8349-4632-b92e-bc94fb79f29e + title: Band + version: 1fe3076d35ef7c97d0ae68c5f4df0acd + employees: + - uuid: a73955be-c009-44dc-915e-6246e2bdedbb + contractors: + - uuid: 3488549f-60e4-494f-a34a-9d8aad3aabf5 + Department-Create-Request-Body: + type: object + properties: + title: + type: string + description: Name of the department + example: Stage Hand + required: + - title + Department-Update-Request-Body: + type: object + allOf: + - "$ref": "#/components/schemas/Versionable-Required" + - "$ref": "#/components/schemas/Department-Create-Request-Body" + Department-People-Request-Body: + type: object + allOf: + - "$ref": "#/components/schemas/Versionable-Required" + - type: object + properties: + employees: + type: array + description: Array of employees to add or remove from the department + items: + type: object + properties: + uuid: + type: string + contractors: + type: array + description: Array of contractors to add or remove from the department + items: + type: object + properties: + uuid: + type: string + Child-Support-Data: + description: Child Support agency data + type: object + properties: + agencies: + type: array + description: State child support agencies + items: + type: object + properties: + state: + type: string + description: Two letter state abbreviation + name: + type: string + description: Name of state child support agency + manual_payment_required: + type: boolean + description: 'Specifies if remitting payment to the agency is required outside of Gusto. If true, Gusto includes garnishment amounts for this agency in payroll calculation, but does not debit for or remit payment to the agency automatically. As of September 2024, only garnishments for South Carolina Integrated Child Support Services require manual payment. ' + fips_codes: + type: array + description: FIPS codes for state or county child support orders + items: + type: object + properties: + code: + type: string + description: FIPS code for state or county + county: + type: + - string + - 'null' + description: Name of county in the state for the corresponding FIPS code. When `null` the FIPS code applies state wide. + required_attributes: + type: array + description: Describes which child support case identifying attributes are required for this agency. While most agencies only require a single identifier, some (e.g. OH) require multiple identifiers. + items: + type: object + properties: + key: + type: string + description: A required attribute when creating a garnishment for this state agency. The current values are listed as an enum; though unlikely, values could be added if state agency requirements change in the future. + enum: + - case_number + - order_number + - remittance_number + label: + type: string + description: A human readable name of the attribute, e.g. CSE Case Number + x-examples: + Example: + agencies: + - state: AK + name: Alaska Child Support Services Division + manual_payment_required: false + fips_codes: + - county: + code: '0200000' + required_attributes: + - key: case_number + label: CSE Case Number + - state: OH + name: Ohio Office of Child Support Enforcement + manual_payment_required: false + fips_codes: + - county: + code: '39000' + required_attributes: + - key: case_number + label: CSE Case Number + - key: order_number + label: Order Identifier + Employee-Onboarding-Document: + type: object + description: Configuration for which onboarding documents (e.g. Form I-9) are required for an employee during onboarding. + properties: + uuid: + type: + - string + - 'null' + description: The UUID of the onboarding documents config record. Null when no config has been saved yet. + readOnly: true + i9_document: + type: boolean + description: | + 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. + readOnly: true + x-examples: + config_with_i9: + uuid: 7b1d0df1-6403-4a06-8768-c1dd7d24d27a + i9_document: true + config_without_i9: + uuid: 7b1d0df1-6403-4a06-8768-c1dd7d24d27a + i9_document: false + config_not_yet_saved: + uuid: + i9_document: false + Employee-Onboarding-Documents-Config-Request: + type: object + description: Request body for updating an employee's onboarding documents configuration. + properties: + i9_document: + type: boolean + default: false + description: | + 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. + x-examples: + enable_i9: + i9_document: true + disable_i9: + i9_document: false + I9-Authorization: + type: object + description: An employee's I-9 authorization + properties: + uuid: + type: string + description: The UUID of the I-9 authorization + readOnly: true + form_uuid: + type: + - string + - 'null' + description: The UUID of the Form associated with this I-9 authorization. Use this with "Employee Forms" API endpoints. + readOnly: true + version: + type: string + description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. + readOnly: true + authorization_status: + type: string + description: The employee's authorization status + enum: + - citizen + - noncitizen + - permanent_resident + - alien + document_type: + anyOf: + - type: string + enum: + - uscis_alien_registration_number + - form_i94 + - foreign_passport + - type: 'null' + description: The document's document type + has_document_number: + type: + - boolean + - 'null' + description: Whether or not a `document_number` exists for this document. + expiration_date: + type: + - string + - 'null' + description: The document's expiration date + country: + type: + - string + - 'null' + description: The document's country of issuance + employer_signed: + type: boolean + description: Whether the employer has signed the Form I-9 + readOnly: true + employee_signed: + type: boolean + description: Whether the employee has signed the Form I-9 + readOnly: true + additional_info: + type: + - string + - 'null' + description: Any additional notes + alt_procedure: + type: + - boolean + - 'null' + description: Whether an alternative procedure authorized by DHS to examine documents was used + required: + - uuid + - version + - authorization_status + - employer_signed + - employee_signed + x-tags: + - I-9 Verification + x-examples: + alien_with_foreign_passport: + uuid: 7f2337f9-9b78-44b9-aeed-be4777b833a8 + version: 6ae7ff720107b356bf13b1606f60b24f + form_uuid: c54046f7-1be4-4c54-8194-f4842c30c86d + authorization_status: alien + document_type: foreign_passport + has_document_number: true + expiration_date: '2028-01-01' + country: Canada + employer_signed: false + employee_signed: false + additional_info: + alt_procedure: + citizen_authorization: + uuid: a12bc345-6789-4def-abcd-ef0123456789 + version: 52b7c567242cb7393b2a206ed6a86afcb + form_uuid: + authorization_status: citizen + document_type: + has_document_number: false + expiration_date: + country: + employer_signed: false + employee_signed: false + additional_info: + alt_procedure: + employer_signed_authorization: + uuid: 7f2337f9-9b78-44b9-aeed-be4777b833a8 + version: 8bc7393b2a206ed6a86afcb4d00c1785 + form_uuid: c54046f7-1be4-4c54-8194-f4842c30c86d + authorization_status: citizen + document_type: + has_document_number: false + expiration_date: + country: + employer_signed: true + employee_signed: true + additional_info: Additional info + alt_procedure: false + I9-Authorization-Document: + type: object + description: An employee's I-9 verification document + properties: + uuid: + type: string + description: The UUID of the I-9 verification document + readOnly: true + document_type: + type: string + description: The document's document type + document_title: + type: string + description: The document's document title + expiration_date: + type: + - string + - 'null' + description: The document's expiration date + issuing_authority: + type: string + description: The document's issuing authority + required: + - uuid + - document_type + - document_title + - issuing_authority + x-tags: + - I-9 Verification + x-examples: + driver_license: + uuid: 7f2337f9-9b78-44b9-aeed-be4777b833a8 + document_type: driver_license + issuing_authority: USA + expiration_date: '2027-01-01' + document_title: Driver's license + ssn_card: + uuid: 9p2337f9-9b78-44b9-aeed-be4777b833a8 + document_type: ssn_card + issuing_authority: USA + document_title: Social Security card + I9-Authorization-Document-Option: + type: object + description: An employee's I-9 verification document option based on the authorization status + properties: + section: + type: string + description: The document option's section in the list of acceptable documents on the Form I-9 + readOnly: true + enum: + - A + - A1 + - A2 + - A3 + - B + - C + description: + type: string + description: The document option's description + readOnly: true + document_type: + type: string + description: The document option's document type + readOnly: true + document_title: + type: array + description: The document option's document titles + readOnly: true + items: + type: string + common_choice: + type: boolean + description: Whether the document is a common choice for I-9 verification + readOnly: true + required: + - section + - description + - document_type + - document_title + - common_choice + x-tags: + - I-9 Verification + x-examples: + example_a: + section: A + description: Foreign passport + document_type: foreign_passport_w_i94 + document_title: + - Foreign passport + common_choice: true + example_b: + section: B + description: Driver's license or state-issued ID card + document_type: driver_license + document_title: + - Driver's license + - State ID card + common_choice: true + example_c: + section: C + description: Social Security card + document_type: ssn_card + document_title: + - Social Security card + common_choice: true + I9-Authorization-Request-Body: + description: Request body for creating or updating an employee's I-9 authorization. + type: object + properties: + version: + type: string + description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. If supplied, this endpoint will update the existing I-9 authorization if it exists. + authorization_status: + type: string + description: | + The employee's authorization status. + - `citizen`: A citizen is someone who was born in the United States or is a naturalized citizen living in the United States. + - `noncitizen`: A noncitizen national is someone born in American Samoa, certain former citizens of the former Trust Territory of the Pacific Islands, and certain children of noncitizen nationals born abroad. + - `permanent_resident`: A lawful permanent resident is someone who is not a US citizen and who resides under legally recognized and lawfully recorded permanent residence as an immigrant. + - `alien`: Also referred to as a "noncitizen authorized to work". This includes anyone who is authorized to work in the United States but is not a US citizen, US national or lawful permanent resident. + enum: + - citizen + - noncitizen + - permanent_resident + - alien + document_type: + type: string + description: | + The type of document an employee holds, based on their authorization status. + - This is unused for authorization status `citizen` or `noncitizen`. + - If the authorization status is `permanent_resident`, this must be `uscis_alien_registration_number`. + - If the authorization status is `alien`, this is required and may be any of the valid values. + enum: + - uscis_alien_registration_number + - form_i94 + - foreign_passport + document_number: + type: string + description: | + The document number. Formatting depends on the employee's document type. + - For `document_type:'uscis_alien_registration_number'`, this must be a USCIS Number/A-Number, which is 7 to 9 digits. + - For `document_type:'form_i94'`, this must be a Form I-94 Admission Number, which is 11 digits. + - For `document_type:'foreign_passport'`, this must be the passport number. + + This is required when the document type is present. + country: + type: string + description: | + The document's country of issuance. + + This is required when the document type is `foreign_passport`. + expiration_date: + type: string + description: | + The document's expiration date. + + This may only be used when the authorization status is `alien`. + required: + - authorization_status + x-examples: + create_citizen: + authorization_status: citizen + update_alien_with_foreign_passport: + version: 52b7c567242cb7393b2a206ed6a86afcb + authorization_status: alien + document_type: foreign_passport + document_number: '01234567' + country: Canada + expiration_date: '2028-01-01' + I9-Authorization-Employer-Sign-Request-Body: + description: Request body for employer signing an employee's Form I-9. + type: object + properties: + signature_text: + type: string + description: The signature + signer_title: + type: string + description: The signer's job title + signed_by_ip_address: + type: string + description: The IP address of the signatory who signed the form. Both IPv4 AND IPv6 are supported. You must provide the IP address with either this parameter OR you can leave out this parameter and set the IP address in the request header using the `x-gusto-client-ip` header instead. + agree: + type: boolean + description: Whether you agree to sign electronically + additional_info: + type: string + description: Any additional notes + alt_procedure: + type: boolean + description: Whether an alternative procedure authorized by DHS to examine documents was used + required: + - signature_text + - signer_title + - agree + x-examples: + employer_sign: + signature_text: Jane Doe + signer_title: Admin + signed_by_ip_address: 192.168.0.1 + agree: true + I9-Authorization-Documents-Request-Body: + description: Request body for creating an employee's I-9 authorization verification documents. + type: object + properties: + documents: + type: array + description: An array of I-9 verification documents. Every request must contain the complete list of documents for the employee, as previous records are replaced. + items: + type: object + properties: + document_type: + type: string + description: The document type. Use the document options endpoint to get the possible values. + example: us_passport + document_title: + type: string + description: The document title associated with the document type + example: US Passport + document_number: + type: string + description: The document's document number + example: F12345678 + expiration_date: + type: string + description: The document's expiration date + example: '2026-01-01' + issuing_authority: + type: string + description: The document's issuing authority + example: USA + required: + - document_type + - document_title + - issuing_authority + required: + - documents + x-examples: + create_documents: + documents: + - document_type: us_passport + document_title: US passport + document_number: F12345678 + expiration_date: '2035-04-01' + issuing_authority: US Department of State + Rehire-Body: + type: object + properties: + effective_date: + type: string + description: The day when the employee returns to work. + example: '2023-06-30' + file_new_hire_report: + type: boolean + description: The boolean flag indicating whether Gusto will file a new hire report for the employee. + work_location_uuid: + type: string + description: The uuid of the employee's work location. + example: b6ae9d93-d4b8-4119-8c96-dba595dd8c30 + employment_status: + type: string + description: The employee's employment status. Supplying an invalid option will set the employment_status to *not_set*. + enum: + - part_time + - full_time + - part_time_eligible + - variable + - seasonal + - not_set + two_percent_shareholder: + type: boolean + description: Whether the employee is a two percent shareholder of the company. This field only applies to companies with an S-Corp entity type. + required: + - effective_date + - file_new_hire_report + - work_location_uuid + Fast-Payment-Limit-Param: + type: string + description: Fast payment limit. This limit is an aggregate of all fast payrolls amount. This limit is only relevant when payment speed is 1-day or 2-day. + Payment-Speed-Param: + type: string + description: Gusto Embedded supports three payment speeds (1-day, 2-day, and 4-day). For next-day payments, funds are deposited in your team's bank account by the end of the next business day. Most people will see the funds arrive the next afternoon, but payments may arrive as late as the end of the business day. + enum: + - 1-day + - 2-day + - 4-day + Fast-Payment-Limit-Required-Body: + type: object + properties: + fast_payment_limit: + "$ref": "#/components/schemas/Fast-Payment-Limit-Param" + payment_speed: + "$ref": "#/components/schemas/Payment-Speed-Param" + required: + - fast_payment_limit + Payment-Speed-Required-Body: + type: object + properties: + fast_payment_limit: + "$ref": "#/components/schemas/Fast-Payment-Limit-Param" + payment_speed: + "$ref": "#/components/schemas/Payment-Speed-Param" + required: + - payment_speed + Historical-Employee-Body: + type: object + description: | + Request body for creating or updating a **historical employee**—someone who already separated from the company and must appear on year-to-date or tax filings without receiving ongoing payroll. + + Send this object under the JSON root key `employee`. All dates are ISO 8601 (`YYYY-MM-DD`). Use a `work_address.location_uuid` returned from your company locations API for an active work site. + properties: + first_name: + type: string + description: Legal first name as it appears on government-issued identification. + example: Soren + middle_initial: + type: string + description: Single middle initial, if any. + example: A + last_name: + type: string + description: Legal last name as it appears on government-issued identification. + example: Kierkegaard + preferred_first_name: + type: string + description: Preferred given name for display; omit when the same as legal first name. + example: Angel + date_of_birth: + type: string + format: date + description: Date of birth (YYYY-MM-DD). + example: '1995-05-05' + ssn: + type: string + pattern: "[0-9]{9}" + description: 'Nine-digit U.S. Social Security number **without** dashes or spaces. Must pass Gusto/SSA validation in production; use a valid test SSN in sandbox environments. + +' + example: '123456294' + work_address: + type: object + description: Primary work location for this historical employment row. + required: + - location_uuid + properties: + location_uuid: + type: string + format: uuid + description: UUID of a company work location from the company locations response. + example: 1da85d35-1910-40a7-9c1f-8e2b3d4c5a6f + home_address: + type: object + description: Residential address on file for tax withholding and compliance mail. + properties: + street_1: + type: string + description: Street address line 1. + example: 55 Mission St + street_2: + type: + - string + - 'null' + description: Apartment, suite, unit, or building (optional). + example: Floor 3 + city: + type: string + description: City. + example: San Francisco + state: + type: string + description: Two-letter U.S. state or territory postal abbreviation. + example: CA + zip: + type: string + description: ZIP or ZIP+4. + example: '94105' + required: + - street_1 + - city + - state + - zip + termination: + type: object + description: End of the historical employment period. + required: + - effective_date + properties: + effective_date: + type: string + format: date + description: Last day of employment (termination date). This is recorded on the employment; use the calendar date the person stopped working for the company. + example: '2022-01-01' + email: + type: string + format: email + description: Optional. When provided, stored on the employee record for notifications and profile. + example: soren.kierkegaard@example.com + job: + type: object + description: Hire date for the historical job used to build employments and filings. + required: + - hire_date + properties: + hire_date: + type: string + format: date + description: First calendar day the employee was employed in this role at the company. + example: '2020-01-01' + employee_state_taxes: + type: object + description: Workers' compensation fields for Washington (WA) or Wyoming (WY) when the work address is in those states; omit when not applicable. + properties: + wc_covered: + type: boolean + description: Whether this job is eligible for workers' compensation coverage in the states of Washington (WA) or Wyoming (WY). + example: true + wc_class_code: + type: string + description: The risk class code for workers' compensation in Washington or Wyoming state. For Washington, visit [Washington state's Risk Class page](https://www.lni.wa.gov/insurance/rates-risk-classes/risk-classes-for-workers-compensation/risk-class-lookup#/) to learn more. For Wyoming you can search for the code online using [WY Workforce Services website](https://dws.wyo.gov/dws-division/workers-compensation/) or call the agency at (307) 235-3217. + example: '051000' + required: + - first_name + - last_name + - date_of_birth + - ssn + - work_address + - home_address + - job + - termination + x-examples: + typical_historical_employee: + first_name: Soren + middle_initial: A + last_name: Kierkegaard + preferred_first_name: Angel + date_of_birth: '1995-05-05' + ssn: '123456294' + email: soren.kierkegaard@example.com + work_address: + location_uuid: 1da85d35-1910-40a7-9c1f-8e2b3d4c5a6f + home_address: + street_1: 55 Mission St + street_2: Floor 3 + city: San Francisco + state: CA + zip: '94105' + job: + hire_date: '2020-01-01' + termination: + effective_date: '2022-01-01' + Pay-Schedule-Assignment-Body: + type: object + properties: + type: + anyOf: + - type: string + enum: + - single + - hourly_salaried + - by_employee + - by_department + - type: 'null' + description: The pay schedule assignment type. + hourly_pay_schedule_uuid: + type: string + description: Pay schedule for hourly employees. + salaried_pay_schedule_uuid: + type: string + description: Pay schedule for salaried employees. + default_pay_schedule_uuid: + type: string + description: Default pay schedule for employees. + partial_assignment: + type: boolean + description: 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. + employees: + type: array + description: List of employees and their pay schedules. + items: + type: object + properties: + employee_uuid: + type: string + description: Employee UUID + pay_schedule_uuid: + type: string + description: Pay schedule UUID + departments: + type: array + description: List of departments and their pay schedules. + items: + type: object + properties: + department_uuid: + type: string + description: Department UUID + pay_schedule_uuid: + type: string + description: Pay schedule UUID + required: + - type + Form-Document-Content-Type-Type: + type: + - string + - 'null' + description: The content type of the associated document. Most forms are PDFs with a content type of `application/pdf`. Some tax file packages will be zip files (containing PDFs) with a content type of `application/zip`. This attribute will be `null` when the document has not been prepared. + readOnly: true + Form: + title: Form + type: object + properties: + uuid: + type: string + description: The UUID of the form + readOnly: true + employee_uuid: + type: string + description: The UUID of the employee to which the form belongs, if applicable. + readOnly: true + name: + type: string + description: The type identifier of the form + readOnly: true + title: + type: string + description: The title of the form + readOnly: true + description: + type: string + description: The description of the form + readOnly: true + draft: + type: boolean + description: If the form is in a draft state. E.g. End of year tax forms may be provided in a draft state prior to being finalized. + readOnly: true + year: + type: + - integer + - 'null' + description: The year of this form. For some forms, e.g. tax forms, this is the year which the form represents. A W2 for January - December 2022 would be delivered in January 2023 and have a year value of 2022. This value is nullable and will not be present on all forms. + readOnly: true + quarter: + type: + - integer + - 'null' + description: The quarter of this form. For some forms, e.g. tax forms, this is the calendar quarter which this form represents. An Employer's Quarterly Federal Tax Return (Form 941) for April, May, June 2022 would have a quarter value of 2 (and a year value of 2022). This value is nullable and will not be present on all forms. + readOnly: true + requires_signing: + type: boolean + description: A boolean flag that indicates whether the form needs signing or not. Note that this value will change after the form is signed. + readOnly: true + document_content_type: + "$ref": "#/components/schemas/Form-Document-Content-Type-Type" + x-examples: + Example: + uuid: 48cdd5ec-a4dd-4840-a424-ad79f38d8408 + name: company_direct_deposit + title: Direct Deposit Authorization + description: We need you to sign paperwork to authorize us to debit and credit your bank account and file and pay your taxes. + draft: false + year: + quarter: + requires_signing: true + document_content_type: application/pdf + employee_form: + uuid: 48cdd5ec-a4dd-4840-a424-ad79f38d8408 + employee_uuid: c5fdae67-b148-4b52-8b33-1384024a1256 + name: w4_federal + title: 'Form W-4: 2024' + description: Form W-4 determines how much federal income tax your employer will withhold from your pay. + draft: false + year: 2024 + quarter: + requires_signing: true + document_content_type: application/pdf + quarterly_tax_form: + uuid: 7a2b9f3e-1c4d-4e5f-8a6b-2d3e4f5a6b7c + name: form_941 + title: 'Form 941: Q2 2024' + description: Employer's Quarterly Federal Tax Return for the second quarter of 2024. + draft: false + year: 2024 + quarter: 2 + requires_signing: false + document_content_type: application/pdf + sandbox_w2: + uuid: bf5b2496-26df-436e-b465-eae4ed5c8021 + employee_uuid: 19394e76-a866-4570-b237-9a26b0163907 + name: US_W-2 + title: 'Draft Form W-2: 2021' + description: Form W-2 records your annual wages and taxes. + draft: true + year: 2021 + quarter: + requires_signing: false + document_content_type: application/pdf + x-tags: + - Forms + required: + - uuid + Form_1099: + title: Form + type: object + properties: + uuid: + type: string + description: The UUID of the form + readOnly: true + name: + type: string + description: The type identifier of the form + readOnly: true + title: + type: string + description: The title of the form + readOnly: true + description: + type: string + description: The description of the form + readOnly: true + draft: + type: boolean + description: If the form is in a draft state. E.g. End of year tax forms may be provided in a draft state prior to being finalized. + readOnly: true + year: + type: + - integer + - 'null' + description: The year of this form. For some forms, e.g. tax forms, this is the year which the form represents. A 1099 for January - December 2022 would be delivered in January 2023 and have a year value of 2022. This value is nullable and will not be present on all forms. + readOnly: true + quarter: + type: + - integer + - 'null' + description: The quarter of this form. This value is currently always null since it is not present on any contractor forms. + readOnly: true + requires_signing: + type: boolean + description: A boolean flag that indicates whether the form needs signing or not. Note that this value will change after the form is signed. + readOnly: true + document_content_type: + "$ref": "#/components/schemas/Form-Document-Content-Type-Type" + contractor_uuid: + type: string + description: The contractor UUID + readOnly: true + x-examples: + Example: + uuid: 48cdd5ec-a4dd-4840-a424-ad79f38d8408 + name: US_1099 + title: 'Form 1099: 2020' + description: Form 1099 records your annual income as a contractor. + draft: false + requires_signing: false + year: 2020 + quarter: + document_content_type: application/pdf + contractor_uuid: 123dd616-6dbc-4724-938a-403f6217a933 + sandbox_1099: + uuid: 29afb141-2256-431d-90e0-1c7344222342 + contractor_uuid: b68484a9-4487-4ee5-bafc-4245133a426c + name: US_1099 + title: 'Form 1099: 2022' + description: Form 1099 records your annual income as a contractor. + draft: true + requires_signing: false + year: 2022 + quarter: + document_content_type: application/pdf + x-tags: + - Forms + required: + - uuid + Form-Pdf: + title: Form Pdf + type: object + properties: + uuid: + type: string + description: the UUID of the form + readOnly: true + document_url: + type: + - string + - 'null' + description: the URL of the form + document_content_type: + "$ref": "#/components/schemas/Form-Document-Content-Type-Type" + x-examples: + Example: + uuid: 48cdd5ec-a4dd-4840-a424-ad79f38d8408 + document_url: https://app.gusto-demo.com/assets/forms/7757842065202782/original/form.pdf?1633667020 + document_content_type: application/pdf + document_not_ready: + uuid: 48cdd5ec-a4dd-4840-a424-ad79f38d8408 + document_url: + document_content_type: + required: + - uuid + Document: + title: Document + type: object + properties: + uuid: + type: string + description: The UUID of the document + readOnly: true + title: + type: string + description: The title of the document + readOnly: true + name: + type: string + description: The type identifier of the document + readOnly: true + recipient_type: + type: string + description: The type of recipient associated with the document (will be `Contractor` for Contractor Documents) + enum: + - Company + - Employee + - Contractor + readOnly: true + recipient_uuid: + type: string + description: Unique identifier for the recipient associated with the document + readOnly: true + pages: + type: array + description: List of the document's pages and associated image URLs. This is only returned for documents with `required_signing` = `true`, and can be used for signing preparation. + items: + type: object + properties: + image_url: + type: string + description: Image URL for the page + page_number: + type: integer + description: Page number + readOnly: true + fields: + type: array + description: List of the document's fields and associated data. Values are set for auto-filled fields. This is only returned for documents with `required_signing` = `true`, and can be used for signing preparation. + items: + type: object + properties: + key: + type: + - string + - 'null' + description: Unique identifier of the field. May be null for custom fields that do not correspond to a known Gusto-managed key mapping. + value: + type: + - string + - 'null' + description: Auto-filled value of the field + x: + type: + - integer + - 'null' + description: X-coordinate location of the field on the page. May be null when the field has no positioning information. + "y": + type: + - integer + - 'null' + description: Y-coordinate location of the field on the page. May be null when the field has no positioning information. + width: + type: + - integer + - 'null' + description: Width of the field. May be null when the field has no positioning information. + height: + type: + - integer + - 'null' + description: Height of the field. May be null when the field has no positioning information. + page_number: + type: + - integer + - 'null' + description: Page number of the field. May be null when the field has no positioning information. + data_type: + type: string + description: The field's data type + required: + type: boolean + description: Whether the field is required + readOnly: true + signed_at: + type: + - string + - 'null' + description: When the document was signed (will be `null` if unsigned) + readOnly: true + description: + type: string + description: The description of the document + readOnly: true + requires_signing: + type: boolean + description: A boolean flag that indicates whether the document needs signing or not. Note that this value will change after the document is signed. + draft: + type: boolean + description: If the document is in a draft state + readOnly: true + year: + type: + - integer + - 'null' + description: The year of this document. This value is nullable and will not be present on all documents. + readOnly: true + quarter: + type: + - integer + - 'null' + description: The quarter of this document. This value is nullable and will not be present on all documents. + readOnly: true + x-examples: + Example: + uuid: e83b3c20-dc4f-4382-bee3-b478fc42c68b + title: Taxpayer Identification (Form W-9) + name: taxpayer_identification_form_w_9 + recipient_type: Contractor + recipient_uuid: f079c253-29e2-45e2-b384-2cc615c9c568 + pages: + - image_url: http://app.gusto-dev.com:3000/assets/document_templates/20/unmapped_template/images/0.jpg + page_number: 0 + - image_url: http://app.gusto-dev.com:3000/assets/document_templates/20/unmapped_template/images/1.jpg + page_number: 1 + fields: + - key: text1596141656513 + value: + x: 69 + "y": 94 + width: 261 + height: 13 + page_number: 0 + data_type: text + required: true + - key: optional_text1596141704672 + value: + x: 69 + "y": 118 + width: 262 + height: 13 + page_number: 0 + data_type: text + required: false + signed_at: + description: Form W-9, Request for Taxpayer Identification Number and Certification + requires_signing: true + draft: false + year: + quarter: + x-tags: + - Documents + Document-Signed: + title: Document Signed + type: object + properties: + uuid: + type: string + description: The UUID of the document + readOnly: true + title: + type: string + description: The title of the document + readOnly: true + name: + type: string + description: The type identifier of the document + readOnly: true + recipient_type: + type: string + description: The type of recipient associated with the document (will be `Contractor` for Contractor Documents) + enum: + - Company + - Employee + - Contractor + readOnly: true + recipient_uuid: + type: string + description: Unique identifier for the recipient associated with the document + readOnly: true + pages: + type: array + description: List of the document's pages and associated image URLs. + items: + type: object + properties: + image_url: + type: string + description: Image URL for the page + page_number: + type: integer + description: Page number + readOnly: true + fields: + type: array + description: List of the document's fields and associated data. Values reflect the data provided at signing. + items: + type: object + properties: + key: + type: + - string + - 'null' + description: Unique identifier of the field. May be null for custom fields that do not correspond to a known Gusto-managed key mapping. + value: + type: + - string + - 'null' + description: Value of the field + x: + type: + - integer + - 'null' + description: X-coordinate location of the field on the page. May be null when the field has no positioning information. + "y": + type: + - integer + - 'null' + description: Y-coordinate location of the field on the page. May be null when the field has no positioning information. + width: + type: + - integer + - 'null' + description: Width of the field. May be null when the field has no positioning information. + height: + type: + - integer + - 'null' + description: Height of the field. May be null when the field has no positioning information. + page_number: + type: + - integer + - 'null' + description: Page number of the field. May be null when the field has no positioning information. + data_type: + type: string + description: The field's data type + required: + type: boolean + description: Whether the field is required + readOnly: true + signed_at: + type: + - string + - 'null' + description: When the document was signed (will be `null` if unsigned) + readOnly: true + description: + type: string + description: The description of the document + readOnly: true + requires_signing: + type: boolean + description: A boolean flag that indicates whether the document needs signing or not. Note that this value will change after the document is signed. + draft: + type: boolean + description: If the document is in a draft state + readOnly: true + year: + type: + - integer + - 'null' + description: The year of this document. This value is nullable and will not be present on all documents. + readOnly: true + quarter: + type: + - integer + - 'null' + description: The quarter of this document. This value is nullable and will not be present on all documents. + readOnly: true + x-examples: + Example: + uuid: e83b3c20-dc4f-4382-bee3-b478fc42c68b + title: Taxpayer Identification (Form W-9) + name: taxpayer_identification_form_w_9 + recipient_type: Contractor + recipient_uuid: f079c253-29e2-45e2-b384-2cc615c9c568 + signed_at: '2024-09-03T16:39:22.000-07:00' + description: Form W-9, Request for Taxpayer Identification Number and Certification + requires_signing: false + draft: false + year: + quarter: + x-tags: + - Documents + Document-Pdf: + title: Document Pdf + type: object + properties: + uuid: + type: string + description: the UUID of the document + readOnly: true + document_url: + type: string + description: the URL of the document + x-examples: + Example: + uuid: e83b3c20-dc4f-4382-bee3-b478fc42c68b + document_url: https://app.gusto-demo.com/assets/personal_documents/23/original.pdf?1724367941 + x-tags: + - Documents + Company-Industry-Selection-Required-Body: + type: object + properties: + title: + type: + - string + - 'null' + example: Computer Training + description: Industry title + naics_code: + type: string + pattern: "^\\d{6}$" + example: '611420' + description: North American Industry Classification System (NAICS) is used to classify businesses with a six digit number based on the primary type of work the business performs. + sic_codes: + type: array + description: A list of Standard Industrial Classification (SIC) codes, which are four digit numbers that categorize the industries that companies belong to based on their business activities. If sic_codes is not passed in, we will perform an internal lookup with `naics_code`. + items: + type: string + pattern: "^\\d{4}$" + example: '8243' + required: + - naics_code + Industry: + title: Industry + type: object + properties: + company_uuid: + type: string + description: Company UUID + readOnly: true + title: + type: + - string + - 'null' + example: Computer Training + description: Industry title + readOnly: true + naics_code: + type: + - string + - 'null' + example: '611420' + description: North American Industry Classification System (NAICS) is used to classify businesses with a six digit number based on the primary type of work the business performs. + sic_codes: + type: array + description: A list of Standard Industrial Classification (SIC) codes, which are four digit numbers that categorize the industries that companies belong to based on their business activities. If sic_codes is not passed in, we will perform an internal lookup with `naics_code`. + items: + type: string + example: '8243' + x-examples: + Example: + company_uuid: 423dd616-6dbc-4724-938a-403f6217a933 + naics_code: '611420' + sic_codes: + - '8243' + title: Computer Training + success_status: + company_uuid: 423dd616-6dbc-4724-938a-403f6217a933 + naics_code: '231208' + sic_codes: + - '1500' + title: Construction + x-tags: + - Industry + External-Payroll: + description: The representation of an external payroll. + type: object + x-tags: + - External Payrolls + title: '' + properties: + uuid: + type: string + description: The UUID of the external payroll. + readOnly: true + company_uuid: + type: string + description: The UUID of the company. + readOnly: true + check_date: + type: string + description: External payroll's check date. + readOnly: true + payment_period_start_date: + type: string + description: External payroll's pay period start date. + readOnly: true + payment_period_end_date: + type: string + description: External payroll's pay period end date. + readOnly: true + status: + type: string + enum: + - unprocessed + - processed + description: The status of the external payroll. The status will be `unprocessed` when the external payroll is created and transition to `processed` once tax liabilities are entered and finalized. Once in the `processed` status all actions that can edit an external payroll will be disabled. + readOnly: true + external_payroll_items: + type: array + description: External payroll items for employees + readOnly: true + items: + type: object + properties: + employee_uuid: + type: string + earnings: + type: array + items: + type: object + properties: + amount: + type: string + format: float + hours: + type: string + format: float + earning_type: + type: string + earning_id: + type: integer + benefits: + type: array + items: + type: object + properties: + benefit_id: + type: integer + company_contribution_amount: + type: string + format: float + employee_deduction_amount: + type: string + format: float + taxes: + type: array + items: + type: object + properties: + tax_id: + type: integer + amount: + type: string + format: float + applicable_earnings: + type: array + description: Applicable earnings based on company provisioning. + readOnly: true + items: + type: object + properties: + earning_type: + type: string + earning_id: + type: number + name: + type: string + input_type: + type: string + category: + type: string + applicable_benefits: + type: + - array + - 'null' + description: Applicable benefits based on company provisioning. + readOnly: true + items: + type: object + properties: + id: + type: integer + description: + type: string + active: + type: boolean + applicable_taxes: + type: array + description: Applicable taxes based on company provisioning. + readOnly: true + items: + type: object + properties: + id: + type: integer + name: + type: string + employer_tax: + type: boolean + description: Some taxes may have an amount withheld from the employee and an amount withheld from the employer, e.g. Social Security. A `true` value indicates this is the employer's amount. + resident_tax: + type: boolean + description: Some taxes may have different rates or reporting requirements depending on if the employee is a resident or non-resident of the tax jurisdiction. + metadata: + type: object + description: Stores metadata of the external payroll. + readOnly: true + properties: + deletable: + type: boolean + description: Determines if the external payroll can be deleted. + readOnly: true + x-examples: + Example: + uuid: c5fdae57-5483-4529-9aae-f0edceed92d4 + company_uuid: bcb305b0-2855-4025-8d22-e484a9e6b7c9 + check_date: '2022-06-03' + payment_period_start_date: '2022-05-15' + payment_period_end_date: '2022-05-30' + status: unprocessed + external_payroll_items: + - employee_uuid: 44f7cba9-7a3d-4f08-b7bd-6fcf5211f8ca + earnings: + - amount: '10000.0' + hours: '0.0' + earning_type: CompanyPayType + earning_id: 1 + - amount: '500.0' + hours: '0.0' + earning_type: CompanyEarningType + earning_id: 4 + benefits: + - benefit_id: 22 + company_contribution_amount: '100.0' + employee_deduction_amount: '50.0' + - benefit_id: 25 + company_contribution_amount: '0.0' + employee_deduction_amount: '300.0' + taxes: + - tax_id: 1 + amount: '400.0' + - tax_id: 2 + amount: '60.0' + applicable_earnings: + - earning_type: CompanyPayType + earning_id: 1 + name: Regular Wages + input_type: amount + category: default + - earning_type: CompanyEarningType + earning_id: 4 + name: Cash Tips + input_type: amount + category: default + applicable_benefits: + - id: 22 + description: Kaiser + active: true + - id: 25 + description: HSA + active: true + applicable_taxes: + - id: 1 + name: Federal Income Tax + employer_tax: false + resident_tax: false + - id: 2 + name: Social Security + employer_tax: false + resident_tax: false + metadata: + deletable: true + required: + - uuid + Webhook-Subscription: + description: The representation of webhook subscription. + type: object + x-tags: + - Webhooks + title: '' + properties: + uuid: + type: string + description: The UUID of the webhook subscription. + readOnly: true + url: + type: string + description: The webhook subscriber URL. Updates will be POSTed to this URL. + readOnly: true + status: + type: string + enum: + - pending + - verified + - removed + - unreachable + description: The status of the webhook subscription. + readOnly: true + subscription_types: + type: array + description: Receive updates for these types. + readOnly: false + items: + type: string + enum: + - BankAccount + - Company + - CompanyBenefit + - Contractor + - ContractorPayment + - Employee + - EmployeeBenefit + - EmployeeJobCompensation + - ExternalPayroll + - Form + - Location + - Notification + - Payroll + - PayrollSync + - PaySchedule + - Signatory + - TimeOffRequest + x-examples: + Example: + uuid: c5fdae57-5483-4529-9aae-f0edceed92d4 + url: https://partner-app.com/subscriber + status: verified + subscription_types: + - BankAccount + - Company + - CompanyBenefit + - Contractor + - ContractorPayment + - Employee + - EmployeeBenefit + - EmployeeJobCompensation + - ExternalPayroll + - Form + - Location + - Notification + - Payroll + - PayrollSync + - PaySchedule + - Signatory + Pending: + uuid: a1b2c3d4-5678-90ab-cdef-1234567890ab + url: https://partner-app.com/webhooks + status: pending + subscription_types: + - Company + - Employee + required: + - uuid + Webhook-Verification-Token-Response: + description: The response from requesting a webhook subscription verification token. + type: object + x-tags: + - Webhooks + title: '' + properties: + message: + type: string + description: A message indicating the verification token has been sent. + x-examples: + Example: + message: Success! The subscriber will be notified with the verification token + External-Payroll-Basic: + description: The representation of an external payroll with minimal information. + type: object + x-tags: + - External Payrolls + title: '' + properties: + uuid: + type: string + description: The UUID of the external payroll. + readOnly: true + company_uuid: + type: string + description: The UUID of the company. + readOnly: true + check_date: + type: string + description: External payroll's check date. + readOnly: true + payment_period_start_date: + type: string + description: External payroll's pay period start date. + readOnly: true + payment_period_end_date: + type: string + description: External payroll's pay period end date. + readOnly: true + status: + type: string + enum: + - unprocessed + - processed + description: The status of the external payroll. The status will be `unprocessed` when the external payroll is created and transition to `processed` once tax liabilities are entered and finalized. Once in the `processed` status all actions that can edit an external payroll will be disabled. + readOnly: true + x-examples: + Example: + uuid: c5fdae57-5483-4529-9aae-f0edceed92d4 + company_uuid: bcb305b0-2855-4025-8d22-e484a9e6b7c9 + check_date: '2022-06-03' + payment_period_start_date: '2022-05-15' + payment_period_end_date: '2022-05-30' + status: unprocessed + required: + - uuid + External-Payroll-Tax-Suggestions: + description: The representation of an external payroll with minimal information. + type: object + x-tags: + - External Payrolls + title: '' + properties: + employee_uuid: + type: string + description: The UUID of the employee. + readOnly: true + tax_suggestions: + type: array + description: Possible tax liabilities selections. + readOnly: true + items: + type: object + properties: + tax_id: + type: integer + description: The ID of the tax. + readOnly: true + amount: + type: string + description: Calculated tax amount. + readOnly: true + x-examples: + Example: + employee_uuid: d21848d5-446f-48a8-9430-30fbefeabda4 + tax_suggestions: + - tax_id: 1 + amount: '500.0' + - tax_id: 2 + amount: '100.0' + - tax_id: 4 + amount: '30.0' + Tax-Liabilities-Selections: + description: The representation of tax liabilities selections. + x-tags: + - External Payrolls + title: '' + type: object + properties: + tax_id: + type: integer + description: The ID of the tax. + readOnly: true + tax_name: + type: string + description: The name of the tax. + readOnly: true + description: + type: + - string + - 'null' + description: A description of the tax, providing additional detail about the tax type. + readOnly: true + last_unpaid_external_payroll_uuid: + type: + - string + - 'null' + description: The UUID of last unpaid external payroll. + readOnly: true + possible_liabilities: + type: array + description: Possible tax liabilities selections. + readOnly: true + items: + type: object + properties: + liability_amount: + type: string + description: Liability amount. + readOnly: true + payroll_check_date: + type: + - string + - 'null' + description: The external payroll check date. + readOnly: true + external_payroll_uuid: + type: + - string + - 'null' + description: The UUID of the external payroll. + readOnly: true + x-examples: + Example: + tax_id: 1 + tax_name: Federal Income Tax + description: Employee Federal Income Tax + last_unpaid_external_payroll_uuid: + possible_liabilities: + - liability_amount: '0.0' + payroll_check_date: + external_payroll_uuid: + - liability_amount: '3000.0' + payroll_check_date: '2022-06-01' + external_payroll_uuid: 1bf1efe1-72d4-4e6e-a181-611f3ea66435 + External-Payroll-Create-Request: + type: object + description: The request body for creating an external payroll. + x-tags: + - External Payrolls + required: + - check_date + - payment_period_start_date + - payment_period_end_date + properties: + check_date: + type: string + format: date + description: The check date of the external payroll. + example: '2022-06-03' + payment_period_start_date: + type: string + format: date + description: The start date of the external payroll payment period. + example: '2022-05-15' + payment_period_end_date: + type: string + format: date + description: The end date of the external payroll payment period. + example: '2022-05-30' + External-Payroll-Update-Request: + type: object + description: The request body for updating an external payroll with employee payroll items. + x-tags: + - External Payrolls + required: + - external_payroll_items + properties: + replace_fields: + type: boolean + description: Patch update external payroll items when set to true, otherwise it will overwrite the previous changes. + external_payroll_items: + type: array + description: Payroll items for each employee in the external payroll. + items: + type: object + required: + - employee_uuid + properties: + employee_uuid: + type: string + format: uuid + description: The UUID of the employee. + example: 44f7cba9-7a3d-4f08-b7bd-6fcf5211f8ca + earnings: + type: array + description: Earnings for the employee. + items: + type: object + properties: + earning_type: + type: string + enum: + - CompanyPayType + - CompanyEarningType + description: The earning type class name. + example: CompanyPayType + earning_id: + type: integer + description: The ID of the earning type. + example: 1 + amount: + type: string + format: float + description: The earning amount in dollars. + example: '10000.00' + hours: + type: string + format: float + description: The number of hours worked. + example: '80.0' + benefits: + type: array + description: Benefits for the employee. + items: + type: object + properties: + benefit_id: + type: integer + description: The ID of the company benefit. + example: 22 + company_contribution_amount: + type: string + format: float + description: The company contribution amount in dollars. + example: '100.00' + employee_deduction_amount: + type: string + format: float + description: The employee deduction amount in dollars. + example: '50.00' + taxes: + type: array + description: Taxes for the employee. + items: + type: object + properties: + tax_id: + type: integer + description: The ID of the tax. + example: 1 + amount: + type: string + format: float + description: The tax amount in dollars. + example: '400.00' + Tax-Liability-Selections-Request: + type: object + description: The request body for updating tax liability selections. + x-tags: + - External Payrolls + required: + - liability_selections + properties: + liability_selections: + type: array + description: Tax liability selections to record for the company's external payrolls. + items: + type: object + required: + - tax_id + - last_unpaid_external_payroll_uuid + - unpaid_liability_amount + properties: + tax_id: + type: integer + description: The ID of the tax. + example: 1 + last_unpaid_external_payroll_uuid: + type: + - string + - 'null' + description: The UUID of the last external payroll with an unpaid liability for this tax. Set to `null` to indicate no liability. + example: 1bf1efe1-72d4-4e6e-a181-611f3ea66435 + unpaid_liability_amount: + type: string + format: float + description: The total cumulative unpaid liability amount for this tax across all external payrolls up to and including the one specified by `last_unpaid_external_payroll_uuid`. + example: '47.5' + Admin: + title: Admin + type: object + description: The representation of an admin user in Gusto. + x-examples: + Example: + uuid: 987058cc-23ee-46e9-81ef-5cee086cceca + first_name: John + last_name: Smith + email: jsmith99@gmail.com + phone: '8009360383' + properties: + uuid: + type: string + description: The unique id of the admin. + email: + type: string + description: The email of the admin for Gusto's system. + first_name: + type: string + description: The first name of the admin. + last_name: + type: string + description: The last name of the admin. + phone: + type: + - string + - 'null' + description: The phone number of the admin. + x-tags: + - Admins + required: + - uuid + Admin-Create-Request: + type: object + description: The request body for creating a company admin. + required: + - first_name + - last_name + - email + properties: + first_name: + type: string + description: The first name of the admin. + example: John + last_name: + type: string + description: The last name of the admin. + example: Smith + email: + type: string + description: The email of the admin for Gusto's system. If the email matches an existing user, this will create an admin account for them. + example: jsmith99@gmail.com + Company: + title: Company + type: object + description: The representation of a company in Gusto. + properties: + ein: + type: string + description: The Federal Employer Identification Number of the company. + readOnly: true + entity_type: + description: The tax payer type of the company. + anyOf: + - type: string + enum: + - C-Corporation + - S-Corporation + - Sole proprietor + - LLC + - LLP + - Limited partnership + - Co-ownership + - Association + - Trusteeship + - General partnership + - Joint venture + - Non-Profit + - type: 'null' + readOnly: true + contractor_only: + type: boolean + description: Whether the company only supports contractors. + tier: + type: + - string + - 'null' + description: The Gusto product tier of the company (not applicable to Embedded partner managed companies). + readOnly: true + enum: + - simple + - plus + - premium + - core + - complete + - concierge + - contractor_only + - basic + is_suspended: + type: boolean + description: Whether or not the company is suspended in Gusto. Suspended companies may not run payroll. + company_status: + type: string + description: The status of the company in Gusto. "Approved" companies are approved to run payroll from a risk and compliance perspective. However, an approved company may still need to resolve other [payroll blockers](https://docs.gusto.com/embedded-payroll/docs/payroll-blockers) to be able to run payroll. "Not Approved" companies may not yet run payroll with Gusto and may need to complete onboarding or contact support. "Suspended" companies may not run payroll with Gusto. In order to unsuspend their account, the company must contact support. + enum: + - Approved + - Not Approved + - Suspended + readOnly: true + uuid: + type: string + description: A unique identifier of the company in Gusto. + readOnly: true + name: + type: string + description: The name of the company. + readOnly: true + slug: + type: string + description: The slug of the name of the company. + readOnly: true + trade_name: + type: + - string + - 'null' + description: The trade name of the company. + readOnly: true + is_partner_managed: + type: boolean + description: Whether the company is fully managed by a partner via the API + readOnly: true + is_high_risk_business: + type: boolean + description: Whether or not Gusto has identified the company as representing a high fraud risk. + readOnly: true + is_marijuana_business: + type: boolean + description: Whether or not the company is a marijuana-related business. + readOnly: true + pay_schedule_type: + anyOf: + - type: string + enum: + - single + - hourly_salaried + - by_employee + - by_department + - type: 'null' + description: The pay schedule assignment type. + readOnly: true + join_date: + type: + - string + - 'null' + description: Company's first invoiceable event date + readOnly: true + funding_type: + description: Company's default funding type + anyOf: + - type: string + enum: + - ach + - reverse_wire + - wire_in + - partner_disbursement + - rtp + - line_of_credit + - type: 'null' + locations: + type: array + uniqueItems: false + description: The locations of the company. + items: + "$ref": "#/components/schemas/Company-Address" + readOnly: true + compensations: + type: object + description: The available company-wide compensation rates for the company. + properties: + hourly: + type: array + uniqueItems: true + description: The available hourly compensation rates for the company. + items: + type: object + properties: + uuid: + type: + - string + - 'null' + description: The UUID of the hourly compensation rate. + readOnly: true + name: + type: string + description: The name of the hourly compensation rate. + example: Overtime + readOnly: true + multiple: + type: number + description: The amount multiplied by the base rate of a job to calculate compensation. + example: 1.5 + readOnly: true + readOnly: true + readOnly: true + fixed: + type: array + uniqueItems: true + description: The available fixed compensation rates for the company. + items: + type: object + properties: + uuid: + type: + - string + - 'null' + description: The UUID of the fixed compensation. + readOnly: true + name: + type: string + description: The name of the fixed compensation. + example: Bonus + readOnly: true + readOnly: true + paid_time_off: + type: array + uniqueItems: true + description: The available types of paid time off for the company. + items: + type: object + properties: + uuid: + type: + - string + - 'null' + description: The UUID of the paid time off type. + readOnly: true + name: + type: string + example: Vacation Hours + description: The name of the paid time off type. + readOnly: true + readOnly: true + readOnly: true + readOnly: true + primary_signatory: + type: + - object + - 'null' + description: The primary signatory of the company. + properties: + uuid: + type: string + readOnly: true + description: The UUID of the company's primary signatory. + first_name: + type: string + readOnly: true + description: The company's primary signatory's first name. + middle_initial: + type: + - string + - 'null' + readOnly: true + description: The company's primary signatory's middle initial. + last_name: + type: string + readOnly: true + description: The company's primary signatory's last name. + phone: + type: string + readOnly: true + description: The company's primary signatory's phone number. + email: + type: string + readOnly: true + description: The company's primary signatory's email address. + home_address: + type: object + properties: + street_1: + type: string + readOnly: true + street_2: + type: + - string + - 'null' + readOnly: true + city: + type: string + readOnly: true + state: + type: string + readOnly: true + zip: + type: string + readOnly: true + country: + type: string + readOnly: true + readOnly: true + description: The company's primary signatory's home address. + readOnly: true + primary_payroll_admin: + type: object + description: The primary payroll admin of the company. + properties: + first_name: + type: string + readOnly: true + description: The company's primary payroll admin's first name. + last_name: + type: string + readOnly: true + description: The company's primary payroll admin's last name. + phone: + type: + - string + - 'null' + readOnly: true + description: The company's primary payroll admin's phone number. + email: + type: string + readOnly: true + description: The company's primary payroll admin's email address. + x-examples: + success_status: + uuid: c7a07c73-a703-4462-9343-1b181182b6e0 + name: Shoppe Studios LLC + trade_name: Record Shoppe + is_partner_managed: true + tier: complete + locations: + - street_1: 412 Kiera Stravenue + street_2: Suite 391 + city: San Francisco + state: CA + zip: '94107' + country: USA + active: true + - street_1: 644 Fay Vista + street_2: Suite 842 + city: Richmond + state: VA + zip: '23218' + country: USA + active: true + ein: 00-0000001 + entity_type: C-Corporation + pay_schedule_type: by_department + join_date: '2024-01-15' + funding_type: ach + slug: shoppe-studios-llc + is_suspended: false + company_status: Approved + is_high_risk_business: false + is_marijuana_business: false + contractor_only: false + compensations: + hourly: + - uuid: 7da6b57d-22f9-11f1-ad28-0242ac100003 + name: Overtime + multiple: 1.5 + - uuid: 7da6b5ec-22f9-11f1-ad28-0242ac100003 + name: Double overtime + multiple: 2 + - uuid: 7da6b22f-22f9-11f1-ad28-0242ac100003 + name: Regular + multiple: 1 + - uuid: 7da6b3ac-22f9-11f1-ad28-0242ac100003 + name: Outstanding vacation + multiple: 1 + - uuid: 7da6b532-22f9-11f1-ad28-0242ac100003 + name: Holiday + multiple: 1 + - uuid: 7da6b44e-22f9-11f1-ad28-0242ac100003 + name: Emergency sick - self care + multiple: 1 + - uuid: 7da6b49d-22f9-11f1-ad28-0242ac100003 + name: Emergency sick - caring for others + multiple: 1 + - uuid: 7da6b4e6-22f9-11f1-ad28-0242ac100003 + name: FMLA Public Health Emergency Leave + multiple: 1 + fixed: + - uuid: 7da68d82-22f9-11f1-ad28-0242ac100003 + name: Bonus + - uuid: 7da69024-22f9-11f1-ad28-0242ac100003 + name: Commission + - uuid: 7da69104-22f9-11f1-ad28-0242ac100003 + name: Paycheck Tips + - uuid: 7da6918f-22f9-11f1-ad28-0242ac100003 + name: Cash Tips + - uuid: 7da69216-22f9-11f1-ad28-0242ac100003 + name: Correction Payment + - uuid: 7da692a6-22f9-11f1-ad28-0242ac100003 + name: Severance + - uuid: 7da69356-22f9-11f1-ad28-0242ac100003 + name: Minimum Wage Adjustment + - uuid: + name: Reimbursement + paid_time_off: + - uuid: 7dcdcb77-22f9-11f1-ad28-0242ac100003 + name: Vacation Hours + - uuid: 7dcdcc8b-22f9-11f1-ad28-0242ac100003 + name: Sick Hours + - uuid: + name: Holiday Hours + primary_signatory: + uuid: 2d7cd96f-e2fb-4db7-8c04-99ef531b4527 + first_name: Alda + middle_initial: '' + last_name: Carter + phone: '4160000000' + email: louie.hessel7757869450111547@zemlak.biz + home_address: + street_1: 524 Roob Divide + street_2: Suite 565 + city: San Francisco + state: CA + zip: '94107' + country: USA + primary_payroll_admin: + first_name: Ian + last_name: Labadie + phone: 1-565-710-7559 + email: louie.hessel7757869450111547@zemlak.biz + x-tags: + - Companies + required: + - uuid + Company-Onboarding-Status: + description: The representation of a company's onboarding status + type: object + title: '' + x-examples: + Example: + uuid: c44d66dc-c41b-4a60-9e25-5e93ff8583f2 + onboarding_completed: false + onboarding_steps: + - title: Add Your Company's Addresses + id: add_addresses + required: true + completed: true + completed_at: '2025-02-18T10:00:00Z' + skippable: false + requirements: [] + - title: Enter Your Federal Tax Information + id: federal_tax_setup + required: true + completed: true + completed_at: '2025-02-18T10:00:00Z' + skippable: false + requirements: [] + - title: Select Industry + id: select_industry + required: true + completed: true + completed_at: '2025-02-18T10:00:00Z' + skippable: false + requirements: [] + - title: Add Your Bank Account + id: add_bank_info + required: true + completed: true + completed_at: '2025-02-18T10:00:00Z' + skippable: false + requirements: [] + - title: Add Your Employees + id: add_employees + required: true + completed: true + completed_at: '2025-02-18T10:00:00Z' + skippable: true + requirements: + - add_addresses + - title: Enter Your State Tax Information + id: state_setup + required: true + completed: false + completed_at: + skippable: false + requirements: + - add_addresses + - add_employees + - title: Select a Pay Schedule + id: payroll_schedule + required: true + completed: false + completed_at: + skippable: false + requirements: [] + - title: Sign Documents + id: sign_all_forms + required: true + completed: false + completed_at: + skippable: false + requirements: + - add_employees + - federal_tax_setup + - state_setup + - add_bank_info + - payroll_schedule + - title: Verify Your Bank Account + id: verify_bank_info + required: true + completed: false + completed_at: + skippable: false + requirements: + - add_bank_info + x-tags: + - Companies + properties: + uuid: + type: string + description: the UUID of the company + onboarding_completed: + type: boolean + description: a boolean flag for the company's onboarding status + onboarding_steps: + type: array + description: a list of company onboarding steps + items: + title: Onboarding step + type: object + properties: + title: + type: string + description: The display name of the onboarding step + id: + type: string + description: The string identifier for each onboarding step + enum: + - add_addresses + - federal_tax_setup + - select_industry + - add_bank_info + - add_employees + - state_setup + - payroll_schedule + - sign_all_forms + - verify_bank_info + - external_payroll + required: + type: boolean + description: The boolean flag indicating whether the step is required or optional + completed: + type: boolean + description: The boolean flag indicating whether the step is completed or not. + completed_at: + type: + - string + - 'null' + description: The ISO 8601 timestamp indicating when the onboarding step was completed. + skippable: + type: boolean + description: The boolean flag indicating whether the step can be skipped or not. + requirements: + type: array + description: A list of onboarding steps that are required to be completed in order to proceed with the current onboarding step. + items: + type: string + enum: + - add_addresses + - federal_tax_setup + - select_industry + - add_bank_info + - add_employees + - state_setup + - payroll_schedule + - sign_all_forms + - verify_bank_info + - external_payroll + required: + - uuid + Payment-Configs: + title: Payment-Configs + type: object + properties: + company_uuid: + type: string + description: Company uuid + readOnly: true + partner_uuid: + type: string + description: Partner uuid + readOnly: true + fast_payment_limit: + type: + - string + - 'null' + description: Payment limit for 1-day or 2-day payroll (string representation of decimal). + readOnly: true + payment_speed: + type: string + enum: + - 1-day + - 2-day + - 4-day + description: | + Payment speed. READ-ONLY. + - `1-day`: Next-day ACH (only for partners that opt in). + - `2-day`: Two-day ACH. + - `4-day`: Standard ACH. + readOnly: true + partner_owned_disbursement: + type: boolean + description: Whether the company is configured to use the partner-owned disbursement payment rail + readOnly: true + earned_fast_ach_blockers: + type: array + description: Blockers preventing the company from earning fast ACH payments + readOnly: true + items: + type: object + properties: + blocker_type: + type: string + description: The type of blocker + enum: + - minimum_days + - minimum_funded_payments + readOnly: true + threshold: + type: number + description: The threshold needed to unblock + readOnly: true + x-examples: + typical_payment_config: + company_uuid: 423dd616-6dbc-4724-938a-403f6217a933 + partner_uuid: 556f05d0-48e0-4c47-bce5-db9aea923043 + fast_payment_limit: '5000.0' + payment_speed: 2-day + partner_owned_disbursement: false + earned_fast_ach_blockers: [] + payment_config_with_blockers: + company_uuid: 423dd616-6dbc-4724-938a-403f6217a933 + partner_uuid: 556f05d0-48e0-4c47-bce5-db9aea923043 + fast_payment_limit: + payment_speed: 2-day + partner_owned_disbursement: false + earned_fast_ach_blockers: + - blocker_type: minimum_days + threshold: 15 + - blocker_type: minimum_funded_payments + threshold: 5 + x-tags: + - Payment Configs + Payment-Configs-Update-Request: + type: object + description: Request body for updating company payment configs. At least one of payment_speed, fast_payment_limit, or partner_owned_disbursement is required. + properties: + payment_configs: + type: object + properties: + payment_speed: + type: string + enum: + - 1-day + - 2-day + - 4-day + description: Desired payment speed. 1-day is only applicable to partners that opt in. + fast_payment_limit: + type: + - number + - 'null' + description: Payment limit for 1-day or 2-day payroll (in dollars). + partner_owned_disbursement: + type: boolean + description: Whether to use the partner-owned disbursement payment rail. + x-examples: + update_payment_speed_and_limit: + payment_configs: + payment_speed: 2-day + fast_payment_limit: 1000 + update_payment_speed_only: + payment_configs: + payment_speed: 4-day + Contractor-Body: + type: object + properties: + type: + type: string + description: The contractor type. + default: Individual + enum: + - Individual + - Business + wage_type: + type: string + description: 'The contractor’s wage type. + +' + enum: + - Fixed + - Hourly + start_date: + type: string + description: 'The day when the contractor will start working for the company. + +' + example: '2020-01-11' + hourly_rate: + type: string + description: The contractor’s hourly rate. This attribute is required if the wage_type is `Hourly`. + example: '40.0' + self_onboarding: + type: boolean + default: false + description: |- + Whether the contractor or the payroll admin will complete onboarding in Gusto. + Self-onboarding is recommended so that contractors receive Gusto accounts. + If self_onboarding is true, then email is required. + email: + type: string + description: The contractor’s email address. + work_email: + type: string + description: The work email address of the contractor. This is provided to support syncing users between our system and yours. You may not use this email address for any other purpose (e.g. marketing). + first_name: + type: string + description: |- + The contractor’s first name. + This attribute is required for `Individual` contractors and will be ignored for `Business` contractors. + last_name: + type: string + description: |- + The contractor’s last name. + This attribute is required for `Individual` contractors and will be ignored for `Business` contractors. + middle_initial: + type: string + description: |- + The contractor’s middle initial. + This attribute is optional for `Individual` contractors and will be ignored for `Business` contractors. + file_new_hire_report: + type: boolean + default: false + description: |- + The boolean flag indicating whether Gusto will file a new hire report for the contractor. + This attribute is optional for `Individual` contractors and will be ignored for `Business` contractors. + work_state: + type: + - string + - 'null' + description: |- + 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. + This attribute is required for `Individual` contractors if `file_new_hire_report` is true and will be ignored for `Business` contractors. + ssn: + type: string + pattern: "[0-9]{9}" + description: |- + This attribute is optional for `Individual` contractors and will be ignored for `Business` contractors. + Social security number is needed to file the annual 1099 tax form. + business_name: + type: string + description: The name of the contractor business. This attribute is required for `Business` contractors and will be ignored for `Individual` contractors. + ein: + type: string + description: |- + The employer identification number of the contractor business. + This attribute is optional for `Business` contractors and will be ignored for `Individual` contractors. + is_active: + type: boolean + description: The status of the contractor. If the contractor's start date is in the future, updating this field to true means we are setting the start date to today. Attempting to deactivate a contractor while a dismissal is already scheduled, or reactivate while a rehire is already scheduled, will return a 422 error. Cancel the pending transition first using the appropriate cancel endpoint. + Contractor-Update-Request-Body: + description: Request body for updating a contractor. + type: object + allOf: + - "$ref": "#/components/schemas/Versionable-Required" + - "$ref": "#/components/schemas/Contractor-Body" + x-examples: + update_individual_contractor: + version: b48c46abfed1487b873b442334b3c4ff + start_date: '2021-01-01' + first_name: Chanel + last_name: Boyle + middle_initial: X + wage_type: Hourly + hourly_rate: '20.00' + is_active: true + update_business_contractor: + version: b48c46abfed1487b873b442334b3c4ff + start_date: '2020-01-11' + business_name: Contracting Solutions + ein: '991113334' + wage_type: Fixed + is_active: false + Contractor-Create-Request-Body: + description: Request body for creating a contractor. + type: object + required: + - type + - wage_type + - start_date + allOf: + - "$ref": "#/components/schemas/Contractor-Body" + x-examples: + create_individual_contractor: + type: Individual + wage_type: Fixed + first_name: Johnson + last_name: Johnson + start_date: '2020-04-01' + self_onboarding: true + email: johnson@johnson.com + file_new_hire_report: true + work_state: CA + create_business_contractor: + type: Business + wage_type: Fixed + business_name: Johnson-Johnson Contractors + start_date: '2020-04-01' + Contractor-Onboarding-Status-Update-Request-Body: + description: Request body for updating a contractor's onboarding status. + type: object + required: + - onboarding_status + properties: + onboarding_status: + type: string + description: The updated onboarding status for the contractor. + enum: + - admin_onboarding_incomplete + - admin_onboarding_review + - self_onboarding_not_invited + - self_onboarding_invited + - self_onboarding_started + - self_onboarding_review + - onboarding_completed + x-examples: + update_onboarding_status: + onboarding_status: onboarding_completed + Contractor: + description: The representation of a contractor (individual or business) in Gusto. + type: object + properties: + uuid: + type: string + description: The UUID of the contractor in Gusto. + readOnly: true + company_uuid: + type: string + description: The UUID of the company the contractor is employed by. + readOnly: true + wage_type: + type: string + enum: + - Fixed + - Hourly + description: The contractor's wage type, either "Fixed" or "Hourly". + is_active: + type: boolean + default: true + description: The status of the contractor with the company. + readOnly: true + version: + type: string + description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. + type: + type: string + enum: + - Individual + - Business + description: 'The contractor''s type, either "Individual" or "Business". ' + first_name: + type: + - string + - 'null' + description: The contractor’s first name. This attribute is required for “Individual” contractors and will be ignored for “Business” contractors. + last_name: + type: + - string + - 'null' + description: The contractor’s last name. This attribute is required for “Individual” contractors and will be ignored for “Business” contractors. + middle_initial: + type: + - string + - 'null' + description: The contractor’s middle initial. This attribute is optional for “Individual” contractors and will be ignored for “Business” contractors. + business_name: + type: + - string + - 'null' + description: The name of the contractor business. This attribute is required for “Business” contractors and will be ignored for “Individual” contractors. + ein: + type: + - string + - 'null' + description: The Federal Employer Identification Number of the contractor business. This attribute is optional for “Business” contractors and will be ignored for “Individual” contractors. + has_ein: + type: + - boolean + - 'null' + description: Whether company's Employer Identification Number (EIN) is present + email: + type: + - string + - 'null' + description: 'The contractor’s email address. This attribute is optional for “Individual” contractors and will be ignored for “Business” contractors. ' + work_email: + type: + - string + - 'null' + description: The work email address of the contractor. This is provided to support syncing users between our system and yours. You may not use this email address for any other purpose (e.g. marketing). + start_date: + type: string + description: The contractor's start date. + readOnly: true + address: + type: + - object + - 'null' + description: The contractor’s home address. + properties: + street_1: + type: string + readOnly: true + street_2: + type: + - string + - 'null' + readOnly: true + city: + type: string + readOnly: true + state: + type: string + readOnly: true + zip: + type: string + readOnly: true + country: + type: string + readOnly: true + readOnly: true + hourly_rate: + type: string + example: '50.0' + description: The contractor’s hourly rate. This attribute is required if the wage_type is “Hourly”. + file_new_hire_report: + type: + - boolean + - 'null' + description: The boolean flag indicating whether Gusto will file a new hire report for the contractor + work_state: + type: + - string + - 'null' + description: |- + 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. + onboarded: + type: boolean + description: The updated onboarding status for the contractor + onboarding_status: + type: string + description: One of the "onboarding_status" enum values. + enum: + - admin_onboarding_incomplete + - admin_onboarding_review + - self_onboarding_not_invited + - self_onboarding_invited + - self_onboarding_started + - self_onboarding_review + - onboarding_completed + payment_method: + anyOf: + - type: string + enum: + - Direct Deposit + - Check + - type: 'null' + description: The contractor's payment method. + has_ssn: + type: boolean + description: Indicates whether the contractor has an SSN in Gusto. + department_uuid: + type: + - string + - 'null' + description: The UUID of the department the contractor is under + department: + type: + - string + - 'null' + description: The contractor's department in the company. + readOnly: true + department_title: + type: + - string + - 'null' + description: The title of the contractor's department. + readOnly: true + dismissal_date: + type: + - string + - 'null' + description: The contractor's dismissal date. + readOnly: true + upcoming_employment: + type: + - object + - 'null' + description: The contractor's upcoming employment details, if a rehire is scheduled. + readOnly: true + properties: + start_date: + type: string + description: The start date of the upcoming employment. + setup_status: + type: + - string + - 'null' + description: The setup status of the upcoming employment. + dismissal_cancellation_eligible: + type: boolean + description: Whether the contractor's pending dismissal can be cancelled. + readOnly: true + rehire_cancellation_eligible: + type: boolean + description: Whether the contractor's pending rehire can be cancelled. + readOnly: true + member_portal_invitation_status: + type: + - object + - 'null' + description: Member portal invitation status information. Only included when the include param has the portal_invitations value set. + properties: + status: + type: string + description: The current status of the member portal invitation. + enum: + - pending + - sent + - verified + - complete + - cancelled + token_expired: + type: + - boolean + - 'null' + description: Whether the invitation token has expired. + welcome_email_sent_at: + type: + - string + - 'null' + format: date-time + description: The date and time when the welcome email was sent. + last_password_resent_at: + type: + - string + - 'null' + format: date-time + description: The date and time when the password reset was last resent. + partner_portal_invitation_sent: + type: + - boolean + - 'null' + description: Whether an external partner portal invitation webhook has been sent for this contractor. Only included when the include param has the portal_invitations value set. + x-tags: + - Contractors + required: + - uuid + x-examples: + Individual Contractor: + uuid: c9fc1ad3-c107-4e7b-aa21-2dd4b00a7a07 + company_uuid: b7457fec-3b76-43bb-9c6e-69cca4688942 + wage_type: Hourly + start_date: '2022-01-01' + is_active: true + version: 63859768485e218ccf8a449bb60f14ed + type: Individual + first_name: Kory + last_name: Gottlieb + middle_initial: P + business_name: + ein: + has_ein: false + has_ssn: true + department_uuid: 56260b3d-c375-415c-b77a-75d99f717193 + email: keira.west@mckenzie.org + file_new_hire_report: true + work_state: FL + onboarded: true + onboarding_status: onboarding_completed + address: + street_1: 621 Jast Row + street_2: Apt. 281 + city: Coral Springs + state: FL + zip: '33065' + country: USA + hourly_rate: '60.00' + payment_method: Direct Deposit + department: Engineering + department_title: Engineering + dismissal_date: + upcoming_employment: + dismissal_cancellation_eligible: false + rehire_cancellation_eligible: false + member_portal_invitation_status: + status: sent + token_expired: false + welcome_email_sent_at: '2024-01-15T14:30:00Z' + last_password_resent_at: + partner_portal_invitation_sent: true + Business Contractor: + uuid: c7c0659c-21a6-4b4e-b74c-9252576fc68c + company_uuid: 0ec4ae6e-e436-460d-b63c-94a14503d16f + wage_type: Fixed + start_date: '2022-01-01' + is_active: true + version: 8aab307f1e8ed788697f8986346af559 + type: Business + first_name: + last_name: + middle_initial: + business_name: Labadie-Stroman + ein: XX-XXX0001 + has_ein: true + has_ssn: false + email: jonatan@kerluke.info + file_new_hire_report: false + work_state: + onboarded: true + onboarding_status: onboarding_completed + address: + street_1: 1625 Bednar Center + street_2: Apt. 480 + city: Port Charlotte + state: FL + zip: '33954' + country: USA + hourly_rate: '0.00' + payment_method: Direct Deposit + department_uuid: + department: + department_title: + dismissal_date: + upcoming_employment: + dismissal_cancellation_eligible: false + rehire_cancellation_eligible: false + member_portal_invitation_status: + partner_portal_invitation_sent: false + Contractor-Onboarding-Status: + description: The representation of an contractor's onboarding status. + type: object + title: Contractor-Onboarding-Status + x-tags: + - Contractor + x-examples: + example: + uuid: bc57832c-d8bc-43a7-ae99-3a03380ff037 + onboarding_status: admin_onboarding_incomplete + onboarding_steps: + - title: Basic details + id: basic_details + required: true + completed: false + requirements: [] + - title: Enter compensation details + id: compensation_details + required: true + completed: false + requirements: [] + - title: Add an address + id: add_address + required: true + completed: false + requirements: [] + - title: Payment details + id: payment_details + required: true + completed: false + requirements: [] + - title: Sign and acknowledge documents + id: sign_documents + required: false + completed: false + requirements: + - basic_details + - add_address + - title: File new hire report + id: file_new_hire_report + required: false + completed: false + requirements: + - basic_details + properties: + uuid: + type: string + description: Unique identifier for this contractor. + onboarding_status: + type: string + description: One of the "onboarding_status" enum values. + enum: + - onboarding_completed + - admin_onboarding_review + - admin_onboarding_incomplete + - self_onboarding_not_invited + - self_onboarding_invited + - self_onboarding_started + - self_onboarding_review + onboarding_steps: + type: array + description: List of steps required to onboard a contractor. + items: + title: Onboarding step + type: object + properties: + title: + type: string + description: User-friendly description of the onboarding step. + id: + type: string + description: String identifier for the onboarding step. + required: + type: boolean + description: When true, this step is required. + completed: + type: boolean + description: When true, this step has been completed. + requirements: + type: array + description: A list of onboarding steps required to begin this step. + items: + type: string + required: + - uuid + Contractor-Payment: + description: The representation of a single contractor payment. + type: object + x-examples: + success_status: + uuid: 04552eb9-7829-4b18-ae96-6983552948df + contractor_uuid: bc57832c-d8bc-43a7-ae99-3a03380ff037, + bonus: '20.0' + date: '2020-10-19' + hours: '40.0' + payment_method: Direct Deposit + reimbursement: '100.0' + hourly_rate: '18.0' + may_cancel: true + status: Funded + wage: '0.0' + wage_type: Hourly + wage_total: '740.00' + example: + uuid: 04552eb9-7829-4b18-ae96-6983552948df + contractor_uuid: bc57832c-d8bc-43a7-ae99-3a03380ff037 + bonus: '20.0' + date: '2020-10-19' + hours: '40.0' + payment_method: Direct Deposit + reimbursement: '100.0' + hourly_rate: '18.0' + may_cancel: false + status: Funded + wage: '0.0' + wage_type: Hourly + wage_total: '740.00' + title: Contractor Payment + properties: + uuid: + type: string + description: The unique identifier of the contractor payment in Gusto. + readOnly: true + contractor_uuid: + type: string + description: The UUID of the contractor. + readOnly: true + bonus: + type: string + format: float + description: The bonus amount in the payment. + readOnly: true + date: + type: string + description: The payment date. + readOnly: true + hours: + type: string + format: float + description: The number of hours worked for the payment. + readOnly: true + payment_method: + type: string + description: The payment method. + enum: + - Direct Deposit + - Check + - Historical Payment + - Correction Payment + readOnly: true + reimbursement: + type: string + format: float + description: The reimbursement amount in the payment. + readOnly: true + status: + type: string + description: Contractor payment status + enum: + - Funded + - Unfunded + hourly_rate: + type: string + format: float + description: The rate per hour worked for the payment. + readOnly: true + may_cancel: + type: boolean + description: Determine if the contractor payment can be cancelled. + readOnly: true + wage: + type: string + format: float + description: The fixed wage of the payment, regardless of hours worked. + readOnly: true + wage_type: + type: string + description: The wage type for the payment. + enum: + - Hourly + - Fixed + readOnly: true + wage_total: + type: string + format: float + description: "(hours * hourly_rate) + wage + bonus" + readOnly: true + invoice_number: + type: + - string + - 'null' + description: An optional invoice number associated with this contractor payment. This will be visible to the contractor on their paystub. Maximum 25 characters. + readOnly: true + memo: + type: + - string + - 'null' + description: An optional note or memo for this contractor payment. This will be visible to the contractor on their paystub. + readOnly: true + x-tags: + - Contractor Payments + required: + - uuid + Contractor-Payment-Listing: + description: The representation of a contractor payment as it appears in a contractor's payment history. + type: object + x-examples: + success_status: + uuid: 04552eb9-7829-4b18-ae96-6983552948df + check_date: '2020-06-15' + bonus: '20.0' + hours: '40.0' + hourly_rate: '18.0' + payment_method: Direct Deposit + reimbursement: '100.0' + status: Funded + wage: '0.0' + wage_type: Hourly + wage_total: '740.00' + title: Contractor Payment Listing + properties: + uuid: + type: string + description: The unique identifier of the contractor payment in Gusto. + readOnly: true + check_date: + type: string + format: date + description: The check date for the payment. + readOnly: true + bonus: + type: string + format: float + description: The bonus amount in the payment. + readOnly: true + hours: + type: string + format: float + description: The number of hours worked for the payment. + readOnly: true + hourly_rate: + type: string + format: float + description: The rate per hour worked for the payment. + readOnly: true + payment_method: + type: string + description: The payment method. + enum: + - Direct Deposit + - Check + - Historical Payment + - Correction Payment + readOnly: true + reimbursement: + type: string + format: float + description: The reimbursement amount in the payment. + readOnly: true + status: + type: string + description: Contractor payment status + enum: + - Funded + - Unfunded + wage: + type: string + format: float + description: The fixed wage of the payment, regardless of hours worked. + readOnly: true + wage_type: + type: string + description: The wage type for the payment. + enum: + - Hourly + - Fixed + readOnly: true + wage_total: + type: string + format: float + description: "(hours * hourly_rate) + wage + bonus" + readOnly: true + x-tags: + - Contractor Payments + required: + - uuid + Contractor-Payment-Body: + description: Request body for creating a contractor payment. + type: object + required: + - contractor_uuid + - date + properties: + contractor_uuid: + type: string + description: The contractor receiving the payment. + date: + type: string + format: date + description: Date of contractor payment. + example: '2020-01-01' + payment_method: + type: string + enum: + - Direct Deposit + - Check + - Historical Payment + default: Direct Deposit + wage: + type: string + format: float + description: If the contractor is on a fixed wage, this is the fixed wage payment for the contractor, regardless of hours worked. + example: '5000' + hours: + type: string + format: float + description: If the contractor is on an hourly wage, this is the number of hours that the contractor worked for the payment. + example: '40' + bonus: + type: string + format: float + description: If the contractor is on an hourly wage, this is the bonus the contractor earned. + example: '500' + reimbursement: + type: string + format: float + description: Reimbursed wages for the contractor. + example: '20' + invoice_number: + type: string + description: An optional invoice number to associate with this contractor payment. This will be visible to the contractor on their paystub. Maximum 25 characters. + maxLength: 25 + example: INV-001 + memo: + type: string + description: An optional note or memo for this contractor payment. This will be visible to the contractor on their paystub. + example: Payment for consulting services + x-tags: + - Contractor Payments + Contractor-Payments-Preview-Body: + description: Request body for previewing contractor payments. The expected debit date for the payments is calculated from the provided check date and the company's ACH speed. + type: object + required: + - contractor_payments + properties: + contractor_payments: + type: array + description: A list of contractor payments to preview. + items: + type: object + properties: + contractor_uuid: + type: string + description: The contractor receiving the payment. + date: + type: string + description: Date of the contractor payment (check date). + payment_method: + type: string + enum: + - Direct Deposit + - Check + - Historical Payment + description: The payment method. + wage: + type: integer + description: Fixed wage amount for the payment. + hours: + type: integer + description: Number of hours worked for the payment. + hourly_rate: + type: integer + description: Hourly rate for the payment. + bonus: + type: integer + description: Bonus amount for the payment. + reimbursement: + type: integer + description: Reimbursement amount for the payment. + x-examples: + Example: + contractor_payments: + - bonus: 0 + date: '2022-09-02' + contractor_uuid: 5376e95b-cca0-482b-bb81-aba5e360eb04 + hours: 0 + payment_method: Check + reimbursement: 0 + wage: 123 + hourly_rate: 0 + - bonus: 0 + date: '2022-09-02' + contractor_uuid: 0c984dce-de9a-47db-8bfb-5f0c823afe6f + hours: 0 + payment_method: Check + reimbursement: 0 + wage: 456 + hourly_rate: 0 + x-tags: + - Contractor Payments + Contractor-Payments-Preview: + type: object + description: The expected debit date computed for a set of previewed contractor payments. + properties: + expected_debit_date: + type: string + format: date + description: The calculated debit date. If the payment method is Direct Deposit, the debit date will account for the company's ACH speed. If the payment method is Check, the debit date will be the same as the check date. + x-examples: + example: + expected_debit_date: '2022-08-16' + x-tags: + - Contractor Payments + Contractor-Payment-Group: + description: The full contractor payment group, including associated contractor payments. + type: object + allOf: + - "$ref": "#/components/schemas/Contractor-Payment-Group-Base" + - type: object + properties: + partner_owned_disbursement: + type: + - boolean + - 'null' + description: Whether the disbursement is partner owned. + readOnly: true + submission_blockers: + type: array + description: List of submission blockers for the contractor payment group. + readOnly: true + items: + "$ref": "#/components/schemas/Payroll-Submission-Blocker-Type" + credit_blockers: + type: array + description: List of credit blockers for the contractor payment group. + readOnly: true + items: + "$ref": "#/components/schemas/Payroll-Credit-Blocker-Type" + totals: + type: object + properties: + amount: + type: string + description: The total amount for the group of contractor payments. + readOnly: true + debit_amount: + type: string + description: The total debit amount for the group of contractor payments. Sum of wage & reimbursement amount. + readOnly: true + wage_amount: + type: string + description: The total wage amount for the group of contractor payments. + readOnly: true + reimbursement_amount: + type: string + description: The total reimbursement amount for the group of contractor payments. + readOnly: true + check_amount: + type: string + description: The total check amount for the group of contractor payments. + readOnly: true + readOnly: true + contractor_payments: + type: array + items: + "$ref": "#/components/schemas/Contractor-Payment-For-Group" + x-examples: + success: + uuid: f693e034-d833-46e3-88d4-2c820c383c57 + company_uuid: c54046f7-1be4-4c54-8194-f4842c30c86d + check_date: '2024-05-07' + debit_date: '2024-05-01' + status: Unfunded + creation_token: 45ef81bb-ae24-4ad1-b2c6-6e563a4c30ed + contractor_payments: + - uuid: 630dc982-f498-4ebc-a6dc-4d76711027ce + contractor_uuid: 2e6d0970-31bf-47ce-bdb4-713e4207ecf4 + bonus: '0.0' + hours: '40.0' + hourly_rate: '18.0' + may_cancel: false + payment_method: Direct Deposit + reimbursement: '75.0' + status: Unfunded + wage: '0.0' + wage_type: Hourly + wage_total: '720.0' + - uuid: 12f51eba-d653-4357-8c05-1f1f8d0fd5e3 + contractor_uuid: a975fda0-fcf5-469a-a5fd-06e43d1cd99d + bonus: '0.0' + hours: '0.0' + hourly_rate: '0.0' + may_cancel: false + payment_method: Check + reimbursement: '0.0' + status: Unfunded + wage: '1500.0' + wage_type: Fixed + wage_total: '1500.0' + totals: + amount: '2295.0' + debit_amount: '2295.0' + wage_amount: '2220.0' + reimbursement_amount: '75.0' + With submission blockers: + uuid: 5ec3b582-7d04-4397-be1e-f0e79d00e1b7 + company_uuid: 4a39b249-1e22-4fc9-a40f-cb07d2ab394e + check_date: '2025-08-21' + debit_date: '2025-08-19' + status: Unfunded + creation_token: 5ec3b582-7d04-4397-be1e-f0e79d00e1b7 + partner_owned_disbursement: false + submission_blockers: + - blocker_type: fast_ach_threshold_exceeded + blocker_name: Fast ACH Threshold Exceeded + selected_option: wire_in + status: resolved + unblock_options: + - unblock_type: wire_in + check_date: '2025-08-21' + metadata: + wire_in_deadline: '2025-08-21T18:00:00Z' + wire_in_amount: '760000.0' + - unblock_type: move_to_four_day + check_date: '2025-08-21' + metadata: + debit_date: '2025-08-15' + credit_blockers: + - blocker_type: waiting_for_wire_in + blocker_name: Waiting for Wire In + selected_option: submit_wire + status: unresolved + unblock_options: + - unblock_type: submit_wire + check_date: '2025-08-21' + metadata: + wire_in_deadline: '2025-08-21T18:00:00Z' + wire_in_amount: '760000.0' + wire_in_request_uuid: 7a31fef8-46c6-4114-9677-214b7a3cb532 + contractor_payments: + - uuid: ca8c7899-c2dc-40bb-8b7e-08c1309f5135 + contractor_uuid: b4c6cd3c-4b45-4738-ad40-3da45b29a765 + bonus: '0.0' + hours: '0.0' + hourly_rate: '0.0' + may_cancel: false + payment_method: Direct Deposit + reimbursement: '750000.0' + status: Unfunded + wage: '10000.0' + wage_type: Fixed + wage_total: '10000.0' + totals: + amount: '760000.00' + debit_amount: '760000.00' + wage_amount: '10000.00' + reimbursement_amount: '750000.00' + check_amount: '0.00' + x-tags: + - Contractor Payment Groups + Contractor-Payment-Group-Base: + description: Base properties for contractor payment groups. + type: object + properties: + uuid: + type: string + description: The unique identifier of the contractor payment group. + readOnly: true + company_uuid: + type: string + description: The UUID of the company. + readOnly: true + check_date: + type: string + description: The check date of the contractor payment group. + readOnly: true + debit_date: + type: string + description: The debit date of the contractor payment group. + readOnly: true + status: + type: string + description: The status of the contractor payment group. Will be `Funded` if all payments that should be funded (i.e. have `Direct Deposit` for payment method) are funded. A group can have status `Funded` while having associated payments that have status `Unfunded`, i.e. payment with `Check` payment method. + enum: + - Unfunded + - Funded + readOnly: true + creation_token: + type: + - string + - 'null' + description: Token used to make contractor payment group creation idempotent. Will error if attempting to create a group with a duplicate token. + readOnly: true + Contractor-Payment-Group-With-Blockers: + description: Contractor payment group with submission and credit blockers, but without individual contractor payments. + type: object + allOf: + - "$ref": "#/components/schemas/Contractor-Payment-Group-Base" + - type: object + properties: + partner_owned_disbursement: + type: + - boolean + - 'null' + description: Whether the disbursement is partner owned. + readOnly: true + submission_blockers: + type: array + description: List of submission blockers for the contractor payment group. + readOnly: true + items: + "$ref": "#/components/schemas/Payroll-Submission-Blocker-Type" + credit_blockers: + type: array + description: List of credit blockers for the contractor payment group. + readOnly: true + items: + "$ref": "#/components/schemas/Payroll-Credit-Blocker-Type" + totals: + type: object + properties: + amount: + type: string + description: The total amount for the group of contractor payments. + readOnly: true + debit_amount: + type: string + description: The total debit amount for the group of contractor payments. Sum of wage & reimbursement amount. + readOnly: true + wage_amount: + type: string + description: The total wage amount for the group of contractor payments. + readOnly: true + reimbursement_amount: + type: string + description: The total reimbursement amount for the group of contractor payments. + readOnly: true + check_amount: + type: string + description: The total check amount for the group of contractor payments. + readOnly: true + readOnly: true + x-examples: + success: + uuid: 94d9698e-9c95-45d6-b66e-d208258666ab + company_uuid: 5f5aaa38-f517-4f56-85e4-afdb83321663 + check_date: '2025-09-22' + debit_date: '2025-09-18' + status: Unfunded + creation_token: 94d9698e-9c95-45d6-b66e-d208258666ab + partner_owned_disbursement: false + submission_blockers: + - blocker_type: fast_ach_threshold_exceeded + blocker_name: Fast ACH Threshold Exceeded + selected_option: wire_in + status: resolved + unblock_options: + - unblock_type: wire_in + check_date: '2025-09-22' + metadata: + wire_in_deadline: '2025-09-22T18:00:00Z' + wire_in_amount: '760000.0' + - unblock_type: move_to_four_day + check_date: '2025-09-22' + metadata: + debit_date: '2025-09-16' + credit_blockers: + - blocker_type: waiting_for_wire_in + blocker_name: Waiting for Wire In + selected_option: submit_wire + status: unresolved + unblock_options: + - unblock_type: submit_wire + check_date: '2025-09-22' + metadata: + wire_in_deadline: '2025-09-22T18:00:00Z' + wire_in_amount: '760000.0' + wire_in_request_uuid: 96ea4784-979a-45aa-9ccb-83be86b6dcea + totals: + amount: '760000.00' + debit_amount: '760000.00' + wage_amount: '10000.00' + reimbursement_amount: '750000.00' + check_amount: '0.00' + x-tags: + - Contractor Payment Groups + Contractor-Payment-Group-Minimal: + description: The summary of a contractor payment group. + type: object + allOf: + - "$ref": "#/components/schemas/Contractor-Payment-Group-Base" + - type: object + properties: + totals: + type: object + properties: + amount: + type: string + description: The total amount for the group of contractor payments. + readOnly: true + debit_amount: + type: string + description: The total debit amount for the group of contractor payments. Sum of wage & reimbursement amount. + readOnly: true + wage_amount: + type: string + description: The total wage amount for the group of contractor payments. + readOnly: true + reimbursement_amount: + type: string + description: The total reimbursement amount for the group of contractor payments. + readOnly: true + readOnly: true + x-examples: + success: + - uuid: 7f2337f9-9b78-44b9-aeed-be4777b833a8 + company_uuid: c54046f7-1be4-4c54-8194-f4842c30c86d + check_date: '2024-03-15' + debit_date: '2024-03-11' + status: Funded + creation_token: a51a3500-3200-43af-a738-169d4b66a9db + totals: + debit_amount: '740.00' + wage_amount: '720.00' + reimbursement_amount: '20.00' + - uuid: 56260b3d-c375-415c-b77a-75d99f717193 + company_uuid: c54046f7-1be4-4c54-8194-f4842c30c86d + check_date: '2024-05-02' + debit_date: '2024-04-26' + status: Unfunded + creation_token: 45ef81bb-ae24-4ad1-b2c6-6e563a4c30ed + totals: + debit_amount: '2365.00' + wage_amount: '2270.00' + reimbursement_amount: '95.00' + x-tags: + - Contractor Payment Groups + Contractor-Payment-For-Group: + description: The representation of a single contractor payment. + type: object properties: - error_key: + uuid: type: string - description: Specifies where the error occurs. Typically this key identifies the attribute/parameter related to the error. - category: + description: The unique identifier of the contractor payment in Gusto. + readOnly: true + contractor_uuid: type: string - description: Specifies the type of error. The category provides error groupings and can be used to build custom error handling in your integration. If category is `nested_errors`, the object will contain a nested `errors` property with entity errors. - message: + description: The UUID of the contractor. + readOnly: true + bonus: type: string - description: Provides details about the error - generally this message can be surfaced to an end user. - metadata: - type: object - description: Contains relevant data to identify the resource in question when applicable. For example, to identify an entity `entity_type` and `entity_uuid` will be provided. - oneOf: - - "$ref": "#/components/schemas/Metadata-With-Multiple-Entities" - - "$ref": "#/components/schemas/Metadata-With-One-Entity" - errors: - type: array - description: Will only exist if category is `nested_errors`. It is possible to have multiple levels of nested errors. - items: - "$ref": "#/components/schemas/Entity-Error-Object" - Metadata-With-One-Entity: - type: object - description: single entity - additionalProperties: true - properties: - entity_type: + description: The bonus amount in the payment. + readOnly: true + hours: type: string - description: Name of the entity that the error corresponds to. - entity_uuid: + description: The number of hours worked for the payment. + readOnly: true + payment_method: type: string - description: Unique identifier for the entity. - valid_from: + description: The payment method. + enum: + - Direct Deposit + - Check + - Historical Payment + - Correction Payment + readOnly: true + reimbursement: + type: string + description: The reimbursement amount in the payment. + readOnly: true + status: + type: string + description: The status of the contractor payment. Will transition to `Funded` during payments processing if the payment should be funded, i.e. has `Direct Deposit` for payment method. Contractors payments with `Check` payment method will remain `Unfunded`. + enum: + - Funded + - Unfunded + hourly_rate: + type: string + description: The rate per hour worked for the payment. + readOnly: true + may_cancel: + type: boolean + description: Determine if the contractor payment can be cancelled. + readOnly: true + wage: + type: string + description: The fixed wage of the payment, regardless of hours worked. + readOnly: true + wage_type: + type: string + description: The wage type for the payment. + enum: + - Hourly + - Fixed + readOnly: true + wage_total: + type: string + description: "(hours * hourly_rate) + wage + bonus" + readOnly: true + invoice_number: type: - string - 'null' - valid_up_to: + description: An optional invoice number associated with this contractor payment. This will be visible to the contractor on their paystub. Maximum 25 characters. + readOnly: true + memo: type: - string - 'null' - key: + description: An optional note or memo for this contractor payment. This will be visible to the contractor on their paystub. + readOnly: true + x-tags: + - Contractor Payment Groups + Contractor-Payment-For-Group-Preview: + description: Preview representation of a single contractor payment with nullable uuid. + type: object + properties: + uuid: type: - string - 'null' - state: + description: The unique identifier of the contractor payment in Gusto. + readOnly: true + contractor_uuid: + type: string + description: The UUID of the contractor. + readOnly: true + bonus: + type: string + description: The bonus amount in the payment. + readOnly: true + hours: + type: string + description: The number of hours worked for the payment. + readOnly: true + payment_method: + type: string + description: The payment method. + enum: + - Direct Deposit + - Check + - Historical Payment + - Correction Payment + readOnly: true + reimbursement: + type: string + description: The reimbursement amount in the payment. + readOnly: true + status: + type: string + description: The status of the contractor payment. Will transition to `Funded` during payments processing if the payment should be funded, i.e. has `Direct Deposit` for payment method. Contractors payments with `Check` payment method will remain `Unfunded`. + enum: + - Funded + - Unfunded + hourly_rate: + type: string + description: The rate per hour worked for the payment. + readOnly: true + may_cancel: + type: boolean + description: Determine if the contractor payment can be cancelled. + readOnly: true + wage: + type: string + description: The fixed wage of the payment, regardless of hours worked. + readOnly: true + wage_type: + type: string + description: The wage type for the payment. + enum: + - Hourly + - Fixed + readOnly: true + wage_total: + type: string + description: "(hours * hourly_rate) + wage + bonus" + readOnly: true + invoice_number: type: - string - 'null' - Metadata-With-Multiple-Entities: - type: object - description: multiple entities - required: - - entities - properties: - entities: - type: array - items: - "$ref": "#/components/schemas/Metadata-With-One-Entity" - Payroll-Blockers-Error: - description: |- - Payroll Blockers Error - - For detailed information, see the [Payroll Blockers guide](https://docs.gusto.com/embedded-payroll/docs/payroll-blockers) + description: An optional invoice number associated with this contractor payment. This will be visible to the contractor on their paystub. Maximum 25 characters. + readOnly: true + memo: + type: + - string + - 'null' + description: An optional note or memo for this contractor payment. This will be visible to the contractor on their paystub. + readOnly: true + x-tags: + - Contractor Payment Groups + Contractor-Payment-Summary: + description: The representation of the summary of contractor payments for a given company in a given time period. type: object x-examples: - needs_onboarding: - errors: - - error_key: base - category: payroll_blocker - message: Company must complete all onboarding requirements in order to run payroll. - metadata: - key: needs_onboarding + success_status: + total: + reimbursements: '110.0' + wages: '1840.0' + contractor_payments: + - contractor_uuid: bc57832c-d8bc-43a7-ae99-3a03380ff037 + reimbursement_total: '110.0' + wage_total: '1840.0' + payments: + - uuid: 04552eb9-7829-4b18-ae96-6983552948df + contractor_uuid: bc57832c-d8bc-43a7-ae99-3a03380ff037 + bonus: '20.0' + date: '2020-10-19' + hours: '40.0' + payment_method: Direct Deposit + reimbursement: '100.0' + hourly_rate: '18.0' + may_cancel: true + wage: '0.0' + wage_type: Hourly + wage_total: '740.00' + - uuid: 25cfeb96-17fc-4fdf-8941-57f3fb9eea00 + contractor_uuid: bc57832c-d8bc-43a7-ae99-3a03380ff037 + bonus: '100.0' + date: '2020-10-19' + hours: '0.00' + payment_method: Direct Deposit + reimbursement: '10.0' + hourly_rate: '0.0' + may_cancel: true + wage: '1000.0' + wage_type: Fixed + wage_total: '1100.0' properties: - errors: + total: + type: object + description: The wage and reimbursement totals for all contractor payments within a given time period. + properties: + reimbursements: + type: string + format: float + description: The total reimbursements for contractor payments within a given time period. + readOnly: true + wages: + type: string + format: float + description: The total wages for contractor payments within a given time period. + readOnly: true + readOnly: true + contractor_payments: type: array + uniqueItems: false + description: The individual contractor payments, within a given time period, grouped by contractor. items: type: object + description: '' properties: - error_key: - type: string - description: The string "base" - category: + contractor_uuid: + type: number + description: The UUID of the contractor. + readOnly: true + reimbursement_total: type: string - description: The string "payroll_blocker" - message: + format: float + description: The total reimbursements for the contractor within a given time period. + readOnly: true + wage_total: type: string - description: Human readable description of the payroll blocker - metadata: - type: object - properties: - key: - type: string - description: A categorization of the payroll blocker, e.g. "geocode_error" - Migration-Blocker: - description: Migration blocker that blocks company migration + format: float + description: The total wages for the contractor within a given time period. + readOnly: true + payments: + type: array + uniqueItems: false + description: The contractor's payments within a given time period. + items: + "$ref": "#/components/schemas/Contractor-Payment" + readOnly: true + readOnly: true + x-tags: + - Contractor Payments + Contractor-Payment-Summary-By-Dates: + description: The representation of the summary of contractor payments for a given company in a given time period. type: object + x-examples: + success_status: + total: + reimbursements: '110.0' + wages: '1840.0' + contractor_payments: + - check_date: '2020-10-19' + reimbursement_total: '110.0' + wage_total: '1840.0' + payments: + - uuid: 04552eb9-7829-4b18-ae96-6983552948df + contractor_uuid: bc57832c-d8bc-43a7-ae99-3a03380ff037 + bonus: '20.0' + date: '2020-10-19' + hours: '40.0' + payment_method: Direct Deposit + reimbursement: '100.0' + hourly_rate: '18.0' + wage: '0.0' + wage_type: Hourly + wage_total: '740.00' + - uuid: 25cfeb96-17fc-4fdf-8941-57f3fb9eea00 + contractor_uuid: bc57832c-d8bc-43a7-ae99-3a03380ff037 + bonus: '100.0' + date: '2020-10-19' + hours: '0.00' + payment_method: Direct Deposit + reimbursement: '10.0' + hourly_rate: '0.0' + wage: '1000.0' + wage_type: Fixed + wage_total: '1100.0' properties: - errors: + total: + type: object + description: The wage and reimbursement totals for all contractor payments within a given time period. + properties: + reimbursements: + type: string + format: float + description: The total reimbursements for contractor payments within a given time period. + readOnly: true + wages: + type: string + format: float + description: The total wages for contractor payments within a given time period. + readOnly: true + readOnly: true + contractor_payments: type: array + uniqueItems: false + description: The individual contractor payments, within a given time period, grouped by check date. items: type: object + description: '' properties: - error_key: + contractor_uuid: type: string - description: Error key - category: + description: The UUID of the contractor. + readOnly: true + check_date: type: string - description: Error category - message: + description: The payment check date. + readOnly: true + reimbursement_total: type: string - description: Blocker message - metadata: - type: object - properties: - key: - type: string - description: A categorization of the migration blocker, e.g. "migrated_company" - Migration-Warning: - description: Migration warning that does not block company migration + format: float + description: The total reimbursements for the contractor within a given time period. + readOnly: true + wage_total: + type: string + format: float + description: The total wages for the contractor within a given time period. + readOnly: true + payments: + type: array + uniqueItems: false + description: The contractor's payments within a given time period. + items: + "$ref": "#/components/schemas/Contractor-Payment" + readOnly: true + readOnly: true + readOnly: true + x-tags: + - Contractor Payments + Contractor-Payment-Method: + title: Contractor-Payment-Method + type: object + x-examples: + check_method: + version: 63859768485e218ccf8a449bb60f14ed + type: Check + split_by: + splits: + Example-1: + value: + version: 63859768485e218ccf8a449bb60f14ed + type: Direct Deposit + split_by: Percentage + splits: + - uuid: e88f9436-b74e-49a8-87e9-777b9bfe715e + name: BoA Checking Account + priority: 1 + split_amount: 100 + Example-2: + value: + version: 63859768485e218ccf8a449bb60f14ed + type: Check + description: '' + properties: + version: + type: string + description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. + type: + anyOf: + - type: string + enum: + - Direct Deposit + - Check + - type: 'null' + description: 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. + split_by: + anyOf: + - type: string + enum: + - Amount + - Percentage + - type: 'null' + description: Describes how the payment will be split. If `split_by` is Percentage, then the `split` amounts must add up to exactly 100. If `split_by` is Amount, then values are in cents and the last split amount must be `null` to capture the remainder. + splits: + type: + - array + - 'null' + items: + "$ref": "#/components/schemas/Payment-Method-Bank-Account" + x-tags: + - Contractor Payment Method + Payment-Method-Bank-Account: + type: object + description: Representation of a bank account item + properties: + uuid: + type: string + description: The bank account ID + name: + type: string + description: The bank account name + hidden_account_number: + type: string + description: Masked bank account number + priority: + type: integer + description: The order of priority for each payment split, with priority 1 being the first bank account paid. Priority must be unique and sequential. + split_amount: + description: If `split_by` is 'Amount', this is in cents (e.g., 500 for $5.00) and exactly one account must have a `split_amount` of `null` to capture the remainder. If `split_by` is 'Percentage', this is the percentage value (e.g., 60 for 60%). + type: + - integer + - 'null' + required: + - uuid + Payroll-Blockers-Error: + description: |- + Payroll Blockers Error + + For detailed information, see the [Payroll Blockers guide](https://docs.gusto.com/embedded-payroll/docs/payroll-blockers) type: object + x-examples: + needs_onboarding: + errors: + - error_key: base + category: payroll_blocker + message: Company must complete all onboarding requirements in order to run payroll. + metadata: + key: needs_onboarding properties: - warnings: + errors: type: array items: type: object properties: error_key: type: string - description: Error key + description: The string "base" category: type: string - description: Error category + description: The string "payroll_blocker" message: type: string - description: Warning message + description: Human readable description of the payroll blocker metadata: type: object properties: key: type: string - description: A categorization of the migration warning, e.g. "marijuana_related_business" + description: A categorization of the payroll blocker, e.g. "geocode_error" + Create-Token-Authentication: + description: '' + type: object + required: + - access_token + - token_type + - expires_in + - created_at + properties: + access_token: + type: string + description: A new access token that can be used for subsequent authenticated requests + token_type: + type: string + default: Bearer + description: The literal string 'Bearer' + expires_in: + type: number + default: 7200 + description: The TTL of this token. After this amount of time, you must hit the refresh token endpoint to continue making authenticated requests. + created_at: + type: number + description: Datetime for when the new access token is created. + refresh_token: + type: + - string + - 'null' + description: A token that must be passed to the refresh token endpoint to get a new authenticated token. Only present when refresh token is provided. + Refresh-Token-Authentication: + description: '' + type: object + allOf: + - "$ref": "#/components/schemas/Create-Token-Authentication" + - type: object + properties: + refresh_token: + type: string + description: A token that must be passed to the refresh token endpoint to get a new authenticated token. + scope: + type: string + description: All of the scopes for which the access token provides access. Authentication: description: '' type: object @@ -26055,6 +10697,74 @@ components: token_type: Bearer created_at: 1767644464 expires_in: 7200 + Token-Info: + type: object + properties: + scope: + type: string + description: 'Space-separated list of OAuth scopes granted to this access token. + +' + example: companies:read public + resource: + type: + - object + - 'null' + description: | + The resource associated with this access token. Null when + the token has no associated resource. + properties: + type: + type: string + description: 'The type of resource associated with the access token, e.g. `Company` for a company-level token or `Oauth::Application` for a system-level token. + +' + example: Company + uuid: + type: string + format: uuid + description: The UUID of the associated resource + example: 7b1d0df1-6403-4a06-8768-c1dd7d24d27a + resource_owner: + type: + - object + - 'null' + description: | + The resource owner (user) who authorized this access token. Null for + system-level tokens or when the owner cannot be determined. + properties: + type: + type: string + enum: + - CompanyAdmin + - Employee + - Contractor + description: | + The type of resource owner: + - `CompanyAdmin`: A company administrator + - `Employee`: An employee + - `Contractor`: A contractor + example: CompanyAdmin + uuid: + type: string + format: uuid + description: The UUID of the resource owner + example: 8fdc31f0-a8a7-4872-a9f1-dcb5e6f876e3 + x-examples: + company_admin_token: + scope: companies:read public + resource: + type: Company + uuid: 7b1d0df1-6403-4a06-8768-c1dd7d24d27a + resource_owner: + type: CompanyAdmin + uuid: 8fdc31f0-a8a7-4872-a9f1-dcb5e6f876e3 + system_token: + scope: partner_managed_companies:create public + resource: + type: Oauth::Application + uuid: 9c2a1b3d-4e5f-6789-abcd-ef0123456789 + resource_owner: Pay-Schedule: type: object title: Pay Schedule @@ -26118,26 +10828,6 @@ components: - Pay Schedules required: - uuid - Contractor-Onboarding-Status-Update-Request-Body: - description: Request body for updating a contractor's onboarding status. - type: object - required: - - onboarding_status - properties: - onboarding_status: - type: string - description: The updated onboarding status for the contractor. - enum: - - admin_onboarding_incomplete - - admin_onboarding_review - - self_onboarding_not_invited - - self_onboarding_invited - - self_onboarding_started - - self_onboarding_review - - onboarding_completed - x-examples: - update_onboarding_status: - onboarding_status: onboarding_completed Pay-Schedule-Show: type: object title: Pay Schedule @@ -26202,108 +10892,253 @@ components: auto_payroll: true active: true auto_payroll_enablement_blockers: - Auto-Payroll-Enablement-Blocker-Employees-Not-On-Direct-Deposit: + Pay-Schedule-Show-Response: + type: array + description: 'List of pay schedules for a company, as returned from [GET /v1/companies/{company_id}/pay_schedules](ref:get-v1-companies-company_id-pay_schedules). Each entry matches Pay-Schedule-Show (includes `version`). + +' + items: + "$ref": "#/components/schemas/Pay-Schedule-Show" + x-tags: + - Pay Schedules + x-examples: + success_status: + - uuid: f2a69c38-e2f9-4e31-b5c5-4754fc60a052 + version: 68934a3e9455fa72420237eb05902327 + frequency: Monthly + anchor_pay_date: '2022-12-11' + anchor_end_of_pay_period: '2022-11-13' + day_1: 11 + day_2: + name: + custom_name: every 11th of the month + auto_payroll: true + active: true + auto_payroll_enablement_blockers: + Pay-Schedule-Version: + type: string + description: The current version of the pay schedule. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/api-fundamentals#optimistic-version-control) for information on how to use this field for optimistic concurrency. + readOnly: true + Pay-Schedule-Auto-Payroll: + type: boolean + description: | + With automatic payroll enabled, payroll runs automatically one day before payroll deadlines. When false, payroll does not run automatically. + Returned for API version 2025-11-15 and later; for earlier versions the response uses auto_pilot instead. + readOnly: true + Pay-Schedule-Auto-Payroll-Enablement-Blockers: + type: + - array + - 'null' + description: List of blockers preventing automatic payroll from being enabled. If automatic payroll is already enabled, this field is null. + items: + "$ref": "#/components/schemas/Pay-Schedule-Auto-Payroll-Enablement-Blocker" + Pay-Schedule-Auto-Payroll-Enablement-Blocker: type: object - title: Employees Not On Direct Deposit Blocker - description: Blocker indicating employees are not enrolled in direct deposit - required: - - key - - metadata + description: A single blocker preventing Autopayroll enablement. properties: key: type: string - enum: - - employees_not_on_direct_deposit + description: 'The blocker type. Possible values: employees_not_on_direct_deposit, employees_not_salaried, missing_state_tax_requirements, missing_funding_method, one_day_ach_speed_not_supported, company_suspended, earned_fast_ach_not_met, hourly_employees_missing_default_hours.' metadata: type: object - properties: - employee_uuids: - type: array - description: UUIDs of employees who are not on direct deposit - items: - type: string - Auto-Payroll-Enablement-Blocker-Employees-Not-Salaried: + description: Blocker-specific metadata (e.g. employee_uuids, states). + Pay-Schedule-List: + type: array + description: List of pay schedules for a company. The pay schedule object in Gusto captures the details of when employees work and when they should be paid. A company can have multiple pay schedules. + items: + "$ref": "#/components/schemas/Pay-Schedule-Show" + x-examples: + success_status: + - uuid: f2a69c38-e2f9-4e31-b5c5-4754fc60a052 + version: 68934a3e9455fa72420237eb05902327 + frequency: Monthly + anchor_pay_date: '2022-12-11' + anchor_end_of_pay_period: '2022-11-13' + day_1: 11 + day_2: + name: + custom_name: every 11th of the month + auto_payroll: true + active: true + Pay-Schedule-Preview-Pay-Period: type: object - title: Employees Not Salaried Blocker - description: Blocker indicating employees are not salaried + description: A single pay period in a pay schedule preview, with check date, period boundaries, and payroll deadline. required: - - key - - metadata + - check_date + - start_date + - run_payroll_by + - end_date properties: - key: + check_date: type: string - enum: - - employees_not_salaried - metadata: - type: object - properties: - employee_uuids: - type: array - description: UUIDs of employees who are not salaried - items: - type: string - Auto-Payroll-Enablement-Blocker-Missing-State-Tax-Requirements: - type: object - title: Missing State Tax Requirements Blocker - description: Blocker indicating missing state tax requirements - required: - - key - - metadata - properties: - key: + format: date + description: The payment date, "Check date", for the pay period. + start_date: type: string - enum: - - missing_state_tax_requirements - metadata: - type: object - properties: - states: - type: array - description: State abbreviations for states with missing tax requirements - items: - type: string - Auto-Payroll-Enablement-Blocker-Missing-Funding-Method: - type: object - title: Missing Funding Method Blocker - description: Blocker indicating missing funding method - required: - - key - - metadata - properties: - key: + format: date + description: The first day of the pay period. + run_payroll_by: type: string - enum: - - missing_funding_method - metadata: - type: object - Auto-Payroll-Enablement-Blocker-One-Day-Ach-Speed-Not-Supported: + format: date + description: The deadline to run payroll for direct deposit on the check date. + end_date: + type: string + format: date + description: The last day of the pay period. + Pay-Schedule-Preview: type: object - title: One Day ACH Speed Not Supported Blocker - description: Blocker indicating one day ACH speed is not supported - required: - - key - - metadata + description: | + Preview of pay schedule dates for the next 18 months. Use this to show partners expected pay dates, pay period boundaries, and payroll deadlines before they create or change a pay schedule. See [Preview pay schedule dates](https://docs.gusto.com/embedded-payroll/reference/get-v1-companies-company_id-pay_schedules-preview) for usage. + + - **pay_periods**: One entry per pay period in the range; each includes check_date, start_date, end_date, and run_payroll_by. + - **holidays**: Observed bank holidays (ISO date strings) that may affect payroll timing. + x-examples: + success_status: + pay_periods: + - check_date: '2022-01-15' + start_date: '2022-01-01' + run_payroll_by: '2022-01-14' + end_date: '2022-01-15' + - check_date: '2022-01-31' + start_date: '2022-01-16' + run_payroll_by: '2022-01-30' + end_date: '2022-01-31' + holidays: + - '2022-01-01' + - '2022-01-17' properties: - key: - type: string - enum: - - one_day_ach_speed_not_supported - metadata: - type: object - Auto-Payroll-Enablement-Blocker-Company-Suspended: + pay_periods: + type: array + description: A list of pay periods for the previewed pay schedule (default range is 18 months from today, or up to end_date when provided). + items: + "$ref": "#/components/schemas/Pay-Schedule-Preview-Pay-Period" + holidays: + type: array + description: A list of dates for bank closures (ISO date strings); may affect payroll processing. + items: + type: string + format: date + Pay-Schedule-Date-Input: + type: string + format: date + description: ISO 8601 date (YYYY-MM-DD). Required for anchor and period dates in create, update, and preview requests. + Pay-Schedule-Create-Request: type: object - title: Company Suspended Blocker - description: Blocker indicating the company is suspended + description: | + Request body for creating a pay schedule. Required when a company has no pay schedules (onboarding) or when adding an additional schedule. Be sure to [check state laws](https://www.dol.gov/agencies/whd/state/payday) to know what schedule is right for your customers. + + - **anchor_pay_date**: The first date that employees on this pay schedule will be paid (first company payday). + - **anchor_end_of_pay_period**: The last date of the first pay period; can be the same as anchor_pay_date. + example: + frequency: Twice per month + anchor_pay_date: '2020-05-15' + anchor_end_of_pay_period: '2020-05-08' + day_1: 15 + day_2: 31 + custom_name: demo pay schedule + properties: + frequency: + allOf: + - "$ref": "#/components/schemas/Pay-Schedule-Frequency-Create-Update" + example: Twice per month + anchor_pay_date: + allOf: + - "$ref": "#/components/schemas/Pay-Schedule-Date-Input" + example: '2020-05-15' + anchor_end_of_pay_period: + allOf: + - "$ref": "#/components/schemas/Pay-Schedule-Date-Input" + example: '2020-05-08' + day_1: + type: + - integer + - 'null' + example: 15 + description: | + 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. + + On create: required for Twice per month and Monthly; omit or null for Every week and Every other week. + day_2: + type: + - integer + - 'null' + example: 31 + description: | + 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 is set to the last day of the month. It will be null for pay schedules with other frequencies. + + On create: only for Twice per month; omit or null for other frequencies. + custom_name: + type: + - string + - 'null' + example: demo pay schedule + description: | + A custom pay schedule name; defaults to the pay frequency description when null or omitted. + + When null or omitted, the system generates a description from the pay frequency and pay days (e.g. "every 1st and 15th of the month" for twice-monthly, "every 11th of the month" for monthly, "every Friday" for weekly). The response returns this generated value in `custom_name` when no custom name was set. When provided, the value you set is stored and returned. required: - - key - - metadata + - frequency + - anchor_pay_date + - anchor_end_of_pay_period + Pay-Schedule-Update-Request: + type: object + description: Request body for updating a pay schedule. Sent in the pay_schedule_update root key. Version is required for optimistic concurrency. Pay schedules may be automatically adjusted if an onboarded company misses their first pay date; see [Create a pay schedule](https://docs.gusto.com/embedded-payroll/docs/create-a-pay-schedule). + example: + version: 68934a3e9455fa72420237eb05902327 + auto_payroll: true + frequency: Twice per month + anchor_pay_date: '2021-10-15' + anchor_end_of_pay_period: '2021-10-15' + day_1: 15 + day_2: 31 + custom_name: demo pay schedule properties: - key: + version: type: string - enum: - - company_suspended - metadata: - type: object + example: 68934a3e9455fa72420237eb05902327 + description: Current version of the pay schedule from the GET response; required for optimistic concurrency. Mismatch returns 409 Conflict. + auto_payroll: + type: boolean + example: true + description: | + With automatic payroll enabled, payroll runs automatically one day before payroll deadlines. When false, payroll does not run automatically and must be run manually. + For API versions before 2025-11-15 the request field is auto_pilot. + frequency: + allOf: + - "$ref": "#/components/schemas/Pay-Schedule-Frequency-Create-Update" + example: Twice per month + anchor_pay_date: + allOf: + - "$ref": "#/components/schemas/Pay-Schedule-Date-Input" + example: '2020-05-15' + anchor_end_of_pay_period: + allOf: + - "$ref": "#/components/schemas/Pay-Schedule-Date-Input" + example: '2020-05-08' + day_1: + type: + - integer + - 'null' + example: 15 + description: '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: + type: + - integer + - 'null' + example: 31 + description: '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 is set to the last day of the month. It will be null for pay schedules with other frequencies. + +' + custom_name: + type: + - string + - 'null' + example: demo pay schedule + description: A custom pay schedule name; null clears any custom name so the default frequency description applies. + required: + - version Pay-Schedule-Create-Update: type: object title: Pay Schedule @@ -26426,16 +11261,6 @@ components: When the partner never set a custom name (or cleared it), this field contains the auto-generated description derived from frequency and pay days (e.g. "every 1st and 15th of the month", "every Friday"). When the partner set a custom name on create or update, this field contains that value. readOnly: true - Pay-Schedule-Version: - type: string - description: The current version of the pay schedule. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/api-fundamentals#optimistic-version-control) for information on how to use this field for optimistic concurrency. - readOnly: true - Pay-Schedule-Auto-Payroll: - type: boolean - description: | - With automatic payroll enabled, payroll runs automatically one day before payroll deadlines. When false, payroll does not run automatically. - Returned for API version 2025-11-15 and later; for earlier versions the response uses auto_pilot instead. - readOnly: true Pay-Schedule-Active: type: boolean description: Whether this pay schedule is associated with any employees. A pay schedule is inactive when it's unassigned. @@ -26471,6 +11296,33 @@ components: benefit_type: 5 ytd_employee_deduction_amount: '2132.00' ytd_company_contribution_amount: '3345.00' + Ytd-Benefit-Amounts-From-Different-Company-Body: + type: object + description: Year-to-date benefit amounts contributed at a different company for the specified employee. + properties: + benefit_type: + type: integer + description: The benefit type supported by Gusto. + tax_year: + type: number + minimum: 2000 + maximum: 2999 + description: The tax year for which this amount applies. + ytd_employee_deduction_amount: + type: string + default: '0.00' + description: The year-to-date employee deduction made outside the current company. + ytd_company_contribution_amount: + type: string + default: '0.00' + description: The year-to-date company contribution made outside the current company. + required: + - benefit_type + - tax_year + - ytd_employee_deduction_amount + - ytd_company_contribution_amount + x-tags: + - Employee Benefits Company-Attachment: description: The company attachment type: object @@ -26513,6 +11365,54 @@ components: upload_time: type: string description: The ISO 8601 timestamp of when an attachment was uploaded + Company-Attachment-List: + type: array + x-examples: + success_status: + - uuid: 5de11791-98fd-4587-9ed0-d5d804b8e647 + name: Company_Attachment_File1.pdf + category: gep_notice + upload_time: '2022-02-01T00:00:00.000Z' + - uuid: 987058cc-23ee-46e9-81ef-5cee086cceca + name: Company_Attachment_File2.pdf + category: compliance + upload_time: '2022-02-01T00:00:00.000Z' + items: + "$ref": "#/components/schemas/Company-Attachment" + Company-Attachment-Download-Url: + description: The temporary url to download a Company Attachment File + type: object + required: + - url + x-examples: + success_status: + url: https://s3.amazonaws.com/static.gusto.com/assets/uploaded_files/334721.pdf?parameter=daer8r3432423djklsdafaso + success_status_alternate: + url: https://s3.amazonaws.com/static.gusto.com/assets/uploaded_files/112233.pdf?parameter=abc123def456 + properties: + url: + type: string + description: A full URL to download a Company Attachment File + Company-Attachment-Create-Request-Body: + description: The binary payload of the file and the company attachment category. + type: object + required: + - document + - category + properties: + document: + type: string + format: binary + description: The binary payload of the file to be uploaded. Supported file types are .qbb, .qbm, .gif, .jpg, .png, .pdf, .xls, .xlsx, .doc and .docx. + category: + type: string + description: | + The category of a company attachment. + - `gep_notice`: A tax notice attachment + - `compliance`: A compliance attachment + enum: + - gep_notice + - compliance Company-Bank-Account: description: The company bank account type: object @@ -26612,6 +11512,92 @@ components: response. required: - uuid + Company-Bank-Account-Request: + type: object + properties: + routing_number: + type: string + description: The bank routing number + account_number: + type: string + description: The bank account number + account_type: + type: string + description: The bank account type + enum: + - Checking + - Savings + required: + - routing_number + - account_number + - account_type + Employee-Bank-Account-Request: + type: object + description: Request body for creating or updating an employee bank account. Send these fields as top-level JSON keys (the API wraps them server-side). + properties: + routing_number: + type: string + description: The bank routing number (nine digits). + example: '266905059' + account_number: + type: string + description: The bank account number. + example: '5809431207' + account_type: + type: string + description: The bank account type. + example: Checking + enum: + - Checking + - Savings + name: + type: string + description: A name for the bank account (e.g. "Primary Checking"). + example: BoA Checking Account + required: + - routing_number + - account_number + - account_type + - name + Company-Bank-Account-Verify-Request: + type: object + description: Request body for verifying a company bank account with the two micro-deposit amounts. + required: + - deposit_1 + - deposit_2 + properties: + deposit_1: + type: number + format: float + description: The first micro-deposit amount (order does not matter). + deposit_2: + type: number + format: float + description: The second micro-deposit amount (order does not matter). + Plaid-Processor-Token-Request: + type: object + description: Request body for creating a verified company bank account from a Plaid processor token. + required: + - owner_type + - owner_id + - processor_token + properties: + owner_type: + description: The owner type of the bank account + type: string + enum: + - Company + owner_id: + description: The owner UUID of the bank account + type: string + processor_token: + description: The Plaid processor token + type: string + x-examples: + example: + owner_type: Company + owner_id: ef279fbd-0fc6-4cf1-a977-6939d621c429 + processor_token: processor-sandbox-0asd1-a92nc Benefit-Type-Requirements: description: '' type: object @@ -27038,6 +12024,475 @@ components: retirement: false yearly_limit: false category: Health + Supported-Benefit-List: + type: array + items: + "$ref": "#/components/schemas/Supported-Benefit" + x-examples: + full_catalog: + - benefit_type: 1 + name: Medical Insurance + description: Health-related insurance under IRS section 125 includes medical, dental and vision insurance, and is the most common benefit provided by employers today. It allows paying for certain health benefits using pre-tax dollars. This lowers the employee taxable income and the overall tax payments for both the employee and the employer. + pretax: true + posttax: false + imputed: false + healthcare: true + retirement: false + yearly_limit: false + category: Health + - benefit_type: 2 + name: Dental Insurance + description: Health-related insurance under IRS section 125 includes medical, dental and vision insurance, and is the most common benefit provided by employers today. It allows paying for certain health benefits using pre-tax dollars. This lowers the employee taxable income and the overall tax payments for both the employee and the employer. + pretax: true + posttax: false + imputed: false + healthcare: true + retirement: false + yearly_limit: false + category: Health + - benefit_type: 3 + name: Vision Insurance + description: Health-related insurance under IRS section 125 includes medical, dental and vision insurance, and is the most common benefit provided by employers today. It allows paying for certain health benefits using pre-tax dollars. This lowers the employee taxable income and the overall tax payments for both the employee and the employer. + pretax: true + posttax: false + imputed: false + healthcare: true + retirement: false + yearly_limit: false + category: Health + - benefit_type: 6 + name: Health Savings Account + description: HSA allows employees to be reimbursed for qualified medical expenses. In most cases, deductions are pre-tax and lower the total amount of tax paid by employees and the employer. Employers may also make tax-free contributions to employee HSA. Remaining balances are carried over to the next year. + pretax: true + posttax: false + imputed: false + healthcare: false + retirement: false + yearly_limit: true + category: Health + - benefit_type: 7 + name: Health FSA + description: FSA allows employees to be reimbursed for qualified medical expenses. Contributions are pre-tax and lower the total amount of tax paid by employees and the employer.Employers may also make tax-free contributions to employee FSA. Remaining balances are not carried over to the next year. + pretax: true + posttax: false + imputed: false + healthcare: false + retirement: false + yearly_limit: true + category: Health + - benefit_type: 11 + name: Dependent Care FSA + description: Dependent Care FSA reimburses employees for expenses to care for dependents while the employee is at work (e.g. Daycares). Contributions are pre-tax and lower the total amount of tax paid by employees and the employer. Employers may also make tax-free contributions to employee FSA. Remaining balances are not carried over to the next year. + pretax: true + posttax: false + imputed: false + healthcare: false + retirement: false + yearly_limit: true + category: Health + - benefit_type: 8 + name: SIMPLE IRA + description: Simple IRA is a tax-deferred retirement savings plan for employees. It is often use by small businesses as an alternative to 401(k) due to its relatively low operating cost. Employers are required to contribute a specific percentage to an employee’s SIMPLE IRA. + pretax: true + posttax: false + imputed: false + healthcare: false + retirement: true + yearly_limit: true + category: Savings and Retirement + - benefit_type: 14 + name: SIMPLE IRA (Non-elective) + description: Simple IRA is a tax-deferred retirement savings plan for employees. It is often use by small businesses as an alternative to 401(k) due to its relatively low operating cost. Employers are required to contribute a specific percentage to an employee’s SIMPLE IRA. + pretax: true + posttax: false + imputed: false + healthcare: false + retirement: true + yearly_limit: true + category: Savings and Retirement + - benefit_type: 105 + name: Roth 401(k) + description: Roth 401(k) is an after-tax savings plan for employees. Contributions made by employees are taxable for federal and state withholding. Often, employers contribute additional pre-tax dollars to the employee’s Roth account to encourage saving for retirement. + pretax: false + posttax: true + imputed: false + healthcare: false + retirement: true + yearly_limit: true + category: Savings and Retirement + - benefit_type: 110 + name: Roth 403(b) + description: Roth 403(b) is an after-tax savings plan for certain clerics, employees of public schools, and employees of other types of tax-exempt organizations. Contributions made by employees are taxable for federal and state withholding. Often, employers contribute additional pre-tax dollars to the employee’s Roth account to encourage saving for retirement. + pretax: false + posttax: true + imputed: false + healthcare: false + retirement: true + yearly_limit: true + category: Savings and Retirement + - benefit_type: 5 + name: 401(k) + description: 401(k) is tax-deferred retirement savings plan for employees. It is the most common retirement plan benefit offered by employers in all sizes. Often, employers contribute to the employee savings plan additional pre-tax dollars as an encouragement for retirement saving. + pretax: true + posttax: false + imputed: false + healthcare: false + retirement: true + yearly_limit: true + category: Savings and Retirement + - benefit_type: 9 + name: 403(b) + description: 403(b) is tax-deferred retirement savings plan for certain clerics, employees of public schools, and employees of other types of tax-exempt organizations. Often, employers contribute to the employee savings plan additional pre-tax dollars as an encouragement for retirement saving. + pretax: true + posttax: false + imputed: false + healthcare: false + retirement: true + yearly_limit: true + category: Savings and Retirement + - benefit_type: 108 + name: SEP-IRA + description: A SEP-IRA is a pre-tax retirement savings plan where only the employer contributes. It is often used by small businesses as an alternative to 401(k) due to its relatively low operating cost. Employers are required to contribute the same percentage to all enrolled employees, with a maximum contribution of 25% of the employee’s compensation. + pretax: true + posttax: false + imputed: false + healthcare: false + retirement: true + yearly_limit: true + category: Savings and Retirement + - benefit_type: 109 + name: SARSEP + description: A SARSEP is a pre-tax retirement savings plan used by small businesses as an alternative to 401(k) due to its relatively low operating cost. While new SARSEP plans are not available, there are still some companies that are grandfathered into the plan. Employers are required to contribute the same percentage to all enrolled employees, with a maximum contribution of 25% of the employee’s compensation. + pretax: true + posttax: false + imputed: false + healthcare: false + retirement: true + yearly_limit: true + category: Savings and Retirement + - benefit_type: 107 + name: Group-Term Life Insurance + description: Group-Term Life Insurance is for coverage in excess of $50,000 per employee and is a taxable fringe benefit. Add this benefit only if you have employees with a coverage that is larger than $50,000. See IRS Publication 15-B to determine the dollar value of the excess coverage. Learn more about the taxability of this benefit on the IRS website + pretax: false + posttax: true + imputed: true + healthcare: false + retirement: false + yearly_limit: false + category: Health + - benefit_type: 10 + name: Commuter Benefits (pre-tax) + description: Tax-free commuter benefits allow employees to reduce their monthly commuting expenses for transit, carpooling, bicycling, and work-related parking costs. Please note that there is an annual maximum for this pre-tax benefit. The maximum dollar amount is found in IRS Publication 15-B + pretax: true + posttax: false + imputed: false + healthcare: false + retirement: false + yearly_limit: false + category: Transportation + - benefit_type: 106 + name: Personal Use of Company Car + description: Personal use of a company car is a non-cash, taxable fringe benefit. A portion of the car’s value is considered part of the employee’s total compensation for tax purposes, even though the employer owns or leases the car. + pretax: false + posttax: true + imputed: true + healthcare: false + retirement: false + yearly_limit: false + category: Transportation + - benefit_type: 111 + name: 529 College Savings + description: 529 College Savings is an after-tax savings plan for employees designed to encourage saving for future college costs. This benefit should be reported as a taxable benefit and will therefore be taxed. + pretax: false + posttax: true + imputed: true + healthcare: false + retirement: false + yearly_limit: false + category: Other + - benefit_type: 998 + name: Short Term Disability (post-tax) + description: Third Party Disability or Third Party Leave are policies offered by employers that pay an employee for a specific life event (maternity leave, injury). All payments made to employees come from a third-party, such as an insurer. For more information on the taxation of these plans, please refer to publication 15-A for more details. + pretax: false + posttax: true + imputed: false + healthcare: false + retirement: false + yearly_limit: false + category: Health + - benefit_type: 1000 + name: Short Term Disability (post-tax imputed) + description: Third Party Disability or Third Party Leave are policies offered by employers that pay an employee for a specific life event (maternity leave, injury). All payments made to employees come from a third-party, such as an insurer. For more information on the taxation of these plans, please refer to publication 15-A for more details. + pretax: false + posttax: true + imputed: false + healthcare: false + retirement: false + yearly_limit: false + category: Health + - benefit_type: 999 + name: Long Term Disability (post-tax) + description: Third Party Disability or Third Party Leave are policies offered by employers that pay an employee for a specific life event (maternity leave, injury). All payments made to employees come from a third-party, such as an insurer. For more information on the taxation of these plans, please refer to publication 15-A for more details. + pretax: false + posttax: true + imputed: false + healthcare: false + retirement: false + yearly_limit: false + category: Health + - benefit_type: 1001 + name: Long Term Disability (post-tax imputed) + description: Third Party Disability or Third Party Leave are policies offered by employers that pay an employee for a specific life event (maternity leave, injury). All payments made to employees come from a third-party, such as an insurer. For more information on the taxation of these plans, please refer to publication 15-A for more details. + pretax: false + posttax: true + imputed: false + healthcare: false + retirement: false + yearly_limit: false + category: Health + - benefit_type: 996 + name: Short Term Disability (pre-tax) + description: Third Party Disability or Third Party Leave are policies offered by employers that pay an employee for a specific life event (maternity leave, injury). All payments made to employees come from a third-party, such as an insurer. For more information on the taxation of these plans, please refer to publication 15-A for more details. + pretax: true + posttax: false + imputed: false + healthcare: false + retirement: false + yearly_limit: false + category: Health + - benefit_type: 997 + name: Long Term Disability (pre-tax) + description: Third Party Disability or Third Party Leave are policies offered by employers that pay an employee for a specific life event (maternity leave, injury). All payments made to employees come from a third-party, such as an insurer. For more information on the taxation of these plans, please refer to publication 15-A for more details. + pretax: true + posttax: false + imputed: false + healthcare: false + retirement: false + yearly_limit: false + category: Health + - benefit_type: 991 + name: Voluntary Short Term Disability (post-tax) + description: Third Party Disability or Third Party Leave are policies offered by employers that pay an employee for a specific life event (maternity leave, injury). All payments made to employees come from a third-party, such as an insurer. For more information on the taxation of these plans, please refer to publication 15-A for more details. + pretax: false + posttax: true + imputed: false + healthcare: false + retirement: false + yearly_limit: false + category: Health + - benefit_type: 992 + name: Voluntary Long Term Disability (post-tax) + description: Third Party Disability or Third Party Leave are policies offered by employers that pay an employee for a specific life event (maternity leave, injury). All payments made to employees come from a third-party, such as an insurer. For more information on the taxation of these plans, please refer to publication 15-A for more details. + pretax: false + posttax: true + imputed: false + healthcare: false + retirement: false + yearly_limit: false + category: Health + - benefit_type: 993 + name: Voluntary Life (post-tax) + description: Third Party Disability or Third Party Leave are policies offered by employers that pay an employee for a specific life event (maternity leave, injury). All payments made to employees come from a third-party, such as an insurer. For more information on the taxation of these plans, please refer to publication 15-A for more details. + pretax: false + posttax: true + imputed: false + healthcare: false + retirement: false + yearly_limit: false + category: Health + - benefit_type: 113 + name: Commuter Parking + description: Tax-free commuter benefits allow employees to reduce their monthly commuting expenses for transit, carpooling, bicycling, and work-related parking costs. Please note that there is an annual maximum for this pre-tax benefit. The maximum dollar amount is found in IRS Publication 15-B + pretax: true + posttax: false + imputed: false + healthcare: false + retirement: false + yearly_limit: false + category: Transportation + - benefit_type: 114 + name: Commuter Transit + description: Tax-free commuter benefits allow employees to reduce their monthly commuting expenses for transit, carpooling, bicycling, and work-related parking costs. Please note that there is an annual maximum for this pre-tax benefit. The maximum dollar amount is found in IRS Publication 15-B + pretax: true + posttax: false + imputed: false + healthcare: false + retirement: false + yearly_limit: false + category: Transportation + - benefit_type: 100 + name: Other (taxable) + description: Employer-sponsored benefits like this are called fringe benefits, and they don’t get special tax treatment—they’ll be reported as taxable wages on your employees’ paystubs. + pretax: false + posttax: true + imputed: true + healthcare: false + retirement: false + yearly_limit: false + category: Other + - benefit_type: 201 + name: Cell Phone (taxable) + description: Employer-sponsored benefits like this are called fringe benefits, and they don’t get special tax treatment—they’ll be reported as taxable wages on your employees’ paystubs. + pretax: false + posttax: true + imputed: true + healthcare: false + retirement: false + yearly_limit: false + category: Other + - benefit_type: 202 + name: Gym & Fitness (taxable) + description: Employer-sponsored benefits like this are called fringe benefits, and they don’t get special tax treatment—they’ll be reported as taxable wages on your employees’ paystubs. + pretax: false + posttax: true + imputed: true + healthcare: false + retirement: false + yearly_limit: false + category: Other + - benefit_type: 203 + name: Housing (taxable) + description: Employer-sponsored benefits like this are called fringe benefits, and they don’t get special tax treatment—they’ll be reported as taxable wages on your employees’ paystubs. + pretax: false + posttax: true + imputed: true + healthcare: false + retirement: false + yearly_limit: false + category: Other + - benefit_type: 204 + name: Wellness (taxable) + description: Employer-sponsored benefits like this are called fringe benefits, and they don’t get special tax treatment—they’ll be reported as taxable wages on your employees’ paystubs. + pretax: false + posttax: true + imputed: true + healthcare: false + retirement: false + yearly_limit: false + category: Other + Contribution-Exclusion: + description: The representation of a contribution exclusion for a company benefit. + type: object + properties: + contribution_uuid: + type: string + description: The UUID of the contribution type. + example: '082dfd3e-5b55-11f0-bb42-ab7136ba04e2' + contribution_type: + type: string + description: The name of the contribution type. + example: Bonus + excluded: + type: boolean + description: Whether this contribution type is excluded from the benefit. + required: + - contribution_uuid + - contribution_type + - excluded + x-tags: + - Company Benefits + x-examples: + exclusion_bonus: + contribution_uuid: b82e35c5-d7c6-4705-9e16-9f87499ade18 + contribution_type: Bonus + excluded: false + exclusion_cash_tips: + contribution_uuid: f5618c94-ed7d-4366-b2c4-ff05e430064f + contribution_type: Cash Tips + excluded: false + exclusion_commission: + contribution_uuid: 60191999-004a-49d9-b163-630574433653 + contribution_type: Commission + excluded: false + exclusion_regular: + contribution_uuid: 75a7a827-1f2d-4d6f-94f2-514c1fc32b13 + contribution_type: Regular + excluded: false + exclusion_imputed: + contribution_uuid: eead3c7c-7964-4e3c-b609-670456127b09 + contribution_type: Life insurance imputed benefit + excluded: true + Company-Benefit-Create-Request: + description: '' + type: object + properties: + benefit_type: + type: integer + description: The ID of the benefit to which the company benefit belongs. + active: + type: boolean + default: true + description: Whether this benefit is active for employee participation. + description: + type: string + description: 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". + responsible_for_employer_taxes: + type: boolean + description: Whether the employer is subject to pay employer taxes when an employee is on leave. Only applicable to third party sick pay benefits. + responsible_for_employee_w2: + type: boolean + description: Whether the employer is subject to file W-2 forms for an employee on leave. Only applicable to third party sick pay benefits. + catch_up_type: + description: The type of catch-up contribution for this benefit, as required by Section 603 of the SECURE 2.0 Act. Only applicable to pre-tax 401(k) and 403(b) benefits. + anyOf: + - type: string + enum: + - elective + - deemed + - type: 'null' + required: + - description + Company-Benefit-Update-Request: + description: '' + type: object + properties: + version: + type: string + description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/versioning#object-layer) for information on how to use this field. + active: + type: boolean + description: Whether this benefit is active for employee participation. Company benefits may only be deactivated if no employees are actively participating. + description: + type: string + description: 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". + responsible_for_employer_taxes: + type: boolean + description: 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). + responsible_for_employee_w2: + type: boolean + description: 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). + catch_up_type: + description: The type of catch-up contribution for this benefit, as required by Section 603 of the SECURE 2.0 Act. Only applicable to pre-tax 401(k) and 403(b) benefits. + anyOf: + - type: string + enum: + - elective + - deemed + - type: 'null' + required: + - version + Contribution-Exclusion-Update-Request: + description: '' + type: object + properties: + contribution_exclusions: + type: array + description: The list of contribution exclusions to update + items: + "$ref": "#/components/schemas/Contribution-Exclusion" + required: + - contribution_exclusions + Employee-Benefit-Bulk-Update-Request: + description: '' + type: object + properties: + employee_benefits: + type: array + description: The list of employee benefits to create or update + items: + "$ref": "#/components/schemas/Employee-Benefit-For-Company-Benefit" + required: + - employee_benefits Company-Benefit-With-Employee-Benefits: description: The representation of a company benefit. type: object @@ -27316,6 +12771,72 @@ components: - Earning Types required: - uuid + Earning-Type-List: + type: object + description: Lists of default and custom earning types for a company. + x-examples: + success: + default: + - name: Bonus + uuid: b82e35c5-d7c6-4705-9e16-9f87499ade18 + active: true + - name: Cash Tips + uuid: f5618c94-ed7d-4366-b2c4-ff05e430064f + active: true + - name: Commission + uuid: 60191999-004a-49d9-b163-630574433653 + active: true + - name: Correction Payment + uuid: 368226e0-8e8c-48f0-bc91-aee46caafbc9 + active: true + - name: Minimum Wage Adjustment + uuid: 88a2e519-9ff5-4c19-9071-6a709f3c2939 + active: true + - name: Paycheck Tips + uuid: a3eaf03d-e712-4144-8f9b-71a85528adcf + active: true + - name: Severance + uuid: a6a2eba7-6c7d-4ced-bbe8-43452fbc9f63 + active: true + custom: + - name: Gym Membership Stipend + uuid: 6b4a8efb-db90-4c13-a75f-aae11b3f4ff9 + active: true + defaults_only: + default: + - name: Bonus + uuid: b82e35c5-d7c6-4705-9e16-9f87499ade18 + active: true + - name: Cash Tips + uuid: f5618c94-ed7d-4366-b2c4-ff05e430064f + active: true + - name: Commission + uuid: 60191999-004a-49d9-b163-630574433653 + active: true + - name: Correction Payment + uuid: 368226e0-8e8c-48f0-bc91-aee46caafbc9 + active: true + - name: Minimum Wage Adjustment + uuid: 88a2e519-9ff5-4c19-9071-6a709f3c2939 + active: true + - name: Paycheck Tips + uuid: a3eaf03d-e712-4144-8f9b-71a85528adcf + active: true + - name: Severance + uuid: a6a2eba7-6c7d-4ced-bbe8-43452fbc9f63 + active: true + custom: [] + properties: + default: + type: array + description: The default earning types for the company. + items: + "$ref": "#/components/schemas/Earning-Type" + custom: + type: array + description: The custom earning types for the company. + items: + "$ref": "#/components/schemas/Earning-Type" Employee-Benefit-Base-Object: description: '' type: object @@ -27461,6 +12982,299 @@ components: - 'null' format: date description: The date the employee benefit will expire. A null value indicates the benefit will not expire. + Employee-Benefit-Create-Request: + description: '' + type: object + properties: + company_benefit_uuid: + type: string + description: The UUID of the company benefit. + active: + type: boolean + default: true + description: Whether the employee benefit is active. + employee_deduction: + type: string + default: '0.00' + description: The amount to be deducted, per pay period, from the employee's pay. + deduct_as_percentage: + type: boolean + default: false + description: Whether the employee deduction amount should be treated as a percentage to be deducted from each payroll. + employee_deduction_annual_maximum: + type: + - string + - 'null' + description: The maximum employee deduction amount per year. A null value signifies no limit. + contribution: + type: object + description: An object representing the company contribution type and value. + properties: + type: + type: string + enum: + - tiered + - percentage + - amount + description: |- + The company contribution scheme. + + `amount`: The company contributes a fixed amount per payroll. If elective is true, the contribution is matching, dollar-for-dollar. + + `percentage`: The company contributes a percentage of the payroll amount per payroll period. If elective is true, the contribution is matching, dollar-for-dollar. + + `tiered`: The size of the company contribution corresponds to the size of the employee deduction relative to a tiered matching scheme. + value: + description: |- + For the `amount` and `percentage` contribution types, the value of the corresponding amount or percentage. + + For the `tiered` contribution type, an array of tiers. + oneOf: + - type: string + description: For the `amount` and `percentage` contribution types, the value of the corresponding amount or percentage. + - type: array + description: For `tiered` contribution types, an array of tiers. + items: + type: object + description: A single tier of a tiered matching scheme. + properties: + rate: + type: string + description: The percentage of employee deduction within this tier the company contribution will match. + threshold: + type: string + description: |- + Specifies the upper limit (inclusive) percentage of the employee contribution that this tier applies to. + + Use threshold to define each tier's end point, with tiers applied cumulatively from 0% upwards. + + For example: + + If the first tier has a threshold of "3", and rate of "100", the company will match 100% of employee contributions from 0% up to and including 3% of payroll. + + If the next tier has a threshold of "5" and a rate of "50", the company will match 50% of contributions from above 3% up to and including 5% of payroll. + elective: + type: boolean + description: 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`. + default: false + company_contribution_annual_maximum: + type: + - string + - 'null' + description: The maximum company contribution amount per year. A null value signifies no limit. + limit_option: + description: |- + Some benefits require additional information to determine + their limit. + + `Family` or `Individual`: Applicable to HSA benefit. + + `Joint Filing or Single` or `Married and Filing Separately`: Applicable to Dependent Care FSA benefit. + anyOf: + - type: string + enum: + - Family + - Individual + - Joint Filing or Single + - Married and Filing Separately + - type: 'null' + catch_up: + type: boolean + default: false + description: Whether the employee should use a benefit's "catch up" rate. Only Roth 401k and 401k benefits use this value for employees over 50. + coverage_amount: + type: + - string + - 'null' + description: 'The amount that the employee is insured for. Note: company contribution cannot be present if coverage amount is set.' + coverage_salary_multiplier: + type: string + default: '0.00' + description: '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: + description: 'Whether the employee deduction reduces taxable income or not. Only valid for Group Term Life benefits. Note: when the value is not "unset", coverage amount and coverage salary multiplier are ignored.' + anyOf: + - type: string + enum: + - unset + - reduces_taxable_income + - does_not_reduce_taxable_income + - type: 'null' + company_contribution: + type: string + default: '0.00' + description: The amount to be paid, per pay period, by the company. + deprecated: true + contribute_as_percentage: + type: boolean + default: false + description: Whether the company contribution amount should be treated as a percentage to be deducted from each payroll. + deprecated: true + effective_date: + type: string + format: date + default: '1970-01-01' + description: The date the employee benefit will start. If not provided, the benefit will be effective from 1970-01-01 (unix epoch). + expiration_date: + type: + - string + - 'null' + format: date + default: + description: The date the employee benefit will expire. A null value indicates the benefit will not expire. + required: + - company_benefit_uuid + x-examples: + Example: + company_benefit_uuid: f68abb42-431e-4392-bc3f-2795627e00f3 + active: true + employee_deduction: '100.00' + contribution: + type: amount + value: '100.00' + Employee-Benefit-Update-Request: + description: '' + type: object + properties: + version: + type: string + description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/versioning#object-layer) for information on how to use this field. + active: + type: boolean + description: Whether the employee benefit is active. + employee_deduction: + type: string + default: '0.00' + description: The amount to be deducted, per pay period, from the employee's pay. + deduct_as_percentage: + type: boolean + description: Whether the employee deduction amount should be treated as a percentage to be deducted from each payroll. + employee_deduction_annual_maximum: + type: + - string + - 'null' + description: The maximum employee deduction amount per year. A null value signifies no limit. + effective_date: + type: string + format: date + description: The date the employee benefit will start. + expiration_date: + type: + - string + - 'null' + format: date + description: The date the employee benefit will expire. A null value indicates the benefit will not expire. + contribution: + type: object + description: An object representing the type and value of the company contribution. + properties: + type: + type: string + enum: + - amount + - percentage + - tiered + description: |- + The company contribution scheme. + + `amount`: The company contributes a fixed amount per payroll. If elective is true, the contribution is matching, dollar-for-dollar. + + `percentage`: The company contributes a percentage of the payroll amount per payroll period. If elective is true, the contribution is matching, dollar-for-dollar. + + `tiered`: The size of the company contribution corresponds to the size of the employee deduction relative to a tiered matching scheme. + value: + description: |- + For the `amount` and `percentage` contribution types, the value of the corresponding amount or percentage. + + For the `tiered` contribution type, an array of tiers. + oneOf: + - type: string + description: For the `amount` and `percentage` contribution types, the value of the corresponding amount or percentage. + - type: array + description: For `tiered` contribution types, an array of tiers. + items: + type: object + description: A single tier of a tiered matching scheme. + properties: + rate: + type: string + description: The percentage of employee deduction within this tier the company contribution will match. + threshold: + type: string + description: |- + Specifies the upper limit (inclusive) percentage of the employee contribution that this tier applies to. + + Use threshold to define each tier's end point, with tiers applied cumulatively from 0% upwards. + + For example: + + If the first tier has a threshold of "3", and rate of "100", the company will match 100% of employee contributions from 0% up to and including 3% of payroll. + + If the next tier has a threshold of "5" and a rate of "50", the company will match 50% of contributions from above 3% up to and including 5% of payroll. + elective: + type: boolean + description: 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`. + default: false + company_contribution_annual_maximum: + type: + - string + - 'null' + description: The maximum company contribution amount per year. A null value signifies no limit. + limit_option: + description: |- + Some benefits require additional information to determine + their limit. + + `Family` or `Individual`: Applicable to HSA benefit. + + `Joint Filing or Single` or `Married and Filing Separately`: Applicable to Dependent Care FSA benefit. + anyOf: + - type: string + enum: + - Family + - Individual + - Joint Filing or Single + - Married and Filing Separately + - type: 'null' + catch_up: + type: boolean + default: false + description: Whether the employee should use a benefit's "catch up" rate. Only Roth 401k and 401k benefits use this value for employees over 50. + coverage_amount: + type: + - string + - 'null' + description: 'The amount that the employee is insured for. Note: company contribution cannot be present if coverage amount is set.' + deduction_reduces_taxable_income: + description: 'Whether the employee deduction reduces taxable income or not. Only valid for Group Term Life benefits. Note: when the value is not "unset", coverage amount and coverage salary multiplier are ignored.' + anyOf: + - type: string + enum: + - unset + - reduces_taxable_income + - does_not_reduce_taxable_income + - type: 'null' + default: unset + coverage_salary_multiplier: + type: string + default: '0.00' + description: '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.' + company_contribution: + type: string + default: '0.00' + description: The amount to be paid, per pay period, by the company. + deprecated: true + contribute_as_percentage: + type: boolean + default: false + description: Whether the company contribution amount should be treated as a percentage to be deducted from each payroll. + deprecated: true + required: + - version + x-examples: + Example: + version: '09j3d29jqdpj92109j9j2d90dq' + employee_deduction: '250.00' Employee-Benefit: description: The representation of an employee benefit. type: object @@ -27563,708 +13377,896 @@ components: - create - update required: - - employee_uuid - Employee-Pay-Stub: - description: The representation of an employee pay stub information. - type: object - properties: - uuid: - type: string - description: The UUID of the employee pay stub. - readOnly: true - check_date: - type: string - description: The check date of the pay stub. - readOnly: true - gross_pay: - type: string - description: The gross pay amount for the pay stub. - readOnly: true - net_pay: - type: string - description: The net pay amount for the pay stub. - readOnly: true - payroll_uuid: - type: string - description: A unique identifier of the payroll to which the pay stub belongs. - readOnly: true - check_amount: - type: string - description: The check amount for the pay stub. - readOnly: true - x-tags: - - Payrolls - required: - - uuid - Pay-Period: - description: The representation of a pay period. - type: object - properties: - start_date: - type: string - description: The start date, inclusive, of the pay period. - readOnly: true - end_date: - type: string - minLength: 1 - description: The end date, inclusive, of the pay period. - pay_schedule_uuid: - type: string - description: A unique identifier of the pay schedule to which the pay period belongs. - readOnly: true - payroll: - type: object - description: Information about the payroll for the pay period. - properties: - payroll_uuid: - type: string - readOnly: true - description: The UUID of the payroll for this pay period. - check_date: - type: string - description: The date on which employees will be paid for the payroll if the payroll is submitted on time. - readOnly: true - processed: - type: boolean - readOnly: true - description: Whether or not the payroll has been successfully processed. Note that processed payrolls cannot be updated. Additionally, a payroll is not guaranteed to be processed just because the payroll deadline has passed. Late payrolls are not uncommon. Conversely, users may choose to run payroll before the payroll deadline. - payroll_deadline: - type: string - format: date-time - description: The date by which payroll should be run for employees to be paid on time. Payroll data, such as time and attendance data, should be submitted on or before this date. - readOnly: true - payroll_type: - type: string - description: Whether it is regular pay period or transition pay period. - enum: - - regular - - transition - readOnly: true - readOnly: true - x-examples: - typical_pay_period: - start_date: '2024-01-01' - end_date: '2024-01-15' - pay_schedule_uuid: 7b1d0df1-6403-4a06-8768-c1dd7d24d27a - payroll: - payroll_uuid: 8c2e1ef2-7514-5b17-9879-d2ee8e35e38b - check_date: '2024-01-19' - processed: false - payroll_deadline: '2024-01-17T18:00:00Z' - payroll_type: regular - x-tags: - - Payrolls - Contribution-Exclusion: - description: The representation of a contribution exclusion for a company benefit. - type: object - properties: - contribution_uuid: - type: string - description: The UUID of the contribution type. - example: '082dfd3e-5b55-11f0-bb42-ab7136ba04e2' - contribution_type: - type: string - description: The name of the contribution type. - example: Bonus - excluded: - type: boolean - description: Whether this contribution type is excluded from the benefit. - required: - - contribution_uuid - - contribution_type - - excluded - x-tags: - - Company Benefits - x-examples: - exclusion_bonus: - contribution_uuid: b82e35c5-d7c6-4705-9e16-9f87499ade18 - contribution_type: Bonus - excluded: false - exclusion_cash_tips: - contribution_uuid: f5618c94-ed7d-4366-b2c4-ff05e430064f - contribution_type: Cash Tips - excluded: false - exclusion_commission: - contribution_uuid: 60191999-004a-49d9-b163-630574433653 - contribution_type: Commission - excluded: false - exclusion_regular: - contribution_uuid: 75a7a827-1f2d-4d6f-94f2-514c1fc32b13 - contribution_type: Regular - excluded: false - exclusion_imputed: - contribution_uuid: eead3c7c-7964-4e3c-b609-670456127b09 - contribution_type: Life insurance imputed benefit - excluded: true - Created-At-Type: - type: string - format: date-time - description: Datetime for when the resource was created. - readOnly: true - Off-Cycle-Reason-Type: - anyOf: - - type: string - enum: - - Adhoc - - Benefit reversal - - Bonus - - Correction - - Dismissed employee - - Hired employee - - Wage correction - - Tax reconciliation - - Reversal - - Disability insurance distribution - - Transition from old pay schedule - - type: 'null' - description: The off-cycle reason. Only included for off-cycle payrolls. - readOnly: true - Auto-Pilot-Type: - type: boolean - description: Indicates whether the payroll is an auto pilot payroll - readOnly: true - Payroll-Employee-Compensations-Type: - allOf: - - "$ref": "#/components/schemas/Payroll-Employee-Compensations-Base-Type" - - "$ref": "#/components/schemas/Versionable" - - type: object - properties: - version: - description: The current version of this employee compensation. This field is only available for prepared payrolls. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. - deductions: - type: array - uniqueItems: false - description: An array of deductions for the employee. This field is included by default for regular payrolls in version `v2025-06-15` and later. - items: - type: object - properties: - name: - type: string - description: The name of the deduction. - amount: - type: number - description: The amount of the deduction for the pay period. - amount_type: - type: string - description: The amount type of the deduction for the pay period. Only present for unprocessed payrolls. - enum: - - fixed - - percent - uuid: - type: string - description: The UUID of the deduction. Only present for unprocessed payrolls. - updatable_via_payroll: - type: boolean - description: Whether the deduction can be updated via the payroll update endpoint. Only present for unprocessed payrolls. - readOnly: true - Payroll-Totals-Type: - type: object - description: The subtotals for the payroll. - properties: - company_debit: - type: string - description: The total company debit for the payroll. - readOnly: true - net_pay_debit: - type: string - minLength: 1 - description: The total company net pay for the payroll. - tax_debit: - type: string - description: The total tax debit for the payroll. - readOnly: true - reimbursement_debit: + - employee_uuid + Employee-Pay-Stub: + description: The representation of an employee pay stub information. + type: object + properties: + uuid: type: string - description: The total reimbursement debit for the payroll. + description: The UUID of the employee pay stub. readOnly: true - child_support_debit: + check_date: type: string - description: The total child support debit for the payroll. + description: The check date of the pay stub. readOnly: true - reimbursements: + gross_pay: type: string - description: The total reimbursements for the payroll. + description: The gross pay amount for the pay stub. readOnly: true net_pay: type: string - description: The net pay amount for the payroll. + description: The net pay amount for the pay stub. readOnly: true - gross_pay: + payroll_uuid: type: string - description: The gross pay amount for the payroll. + description: A unique identifier of the payroll to which the pay stub belongs. readOnly: true - employee_bonuses: + check_amount: type: string - description: The total employee bonuses amount for the payroll. + description: The check amount for the pay stub. readOnly: true - employee_commissions: + x-tags: + - Payrolls + required: + - uuid + Pay-Period: + description: The representation of a pay period. + type: object + properties: + start_date: type: string - description: The total employee commissions amount for the payroll. + description: The start date, inclusive, of the pay period. readOnly: true - employee_cash_tips: + end_date: type: string - description: The total employee cash tips amount for the payroll. - readOnly: true - employee_paycheck_tips: + minLength: 1 + description: The end date, inclusive, of the pay period. + pay_schedule_uuid: type: string - description: The total employee paycheck tips amount for the payroll. + description: A unique identifier of the pay schedule to which the pay period belongs. readOnly: true - additional_earnings: - type: string - description: The total additional earnings amount for the payroll. + payroll: + type: object + description: Information about the payroll for the pay period. + properties: + payroll_uuid: + type: string + readOnly: true + description: The UUID of the payroll for this pay period. + check_date: + type: string + description: The date on which employees will be paid for the payroll if the payroll is submitted on time. + readOnly: true + processed: + type: boolean + readOnly: true + description: Whether or not the payroll has been successfully processed. Note that processed payrolls cannot be updated. Additionally, a payroll is not guaranteed to be processed just because the payroll deadline has passed. Late payrolls are not uncommon. Conversely, users may choose to run payroll before the payroll deadline. + payroll_deadline: + type: string + format: date-time + description: The date by which payroll should be run for employees to be paid on time. Payroll data, such as time and attendance data, should be submitted on or before this date. + readOnly: true + payroll_type: + type: string + description: Whether it is regular pay period or transition pay period. + enum: + - regular + - transition + readOnly: true readOnly: true - owners_draw: + x-examples: + typical_pay_period: + start_date: '2024-01-01' + end_date: '2024-01-15' + pay_schedule_uuid: 7b1d0df1-6403-4a06-8768-c1dd7d24d27a + payroll: + payroll_uuid: 8c2e1ef2-7514-5b17-9879-d2ee8e35e38b + check_date: '2024-01-19' + processed: false + payroll_deadline: '2024-01-17T18:00:00Z' + payroll_type: regular + x-tags: + - Payrolls + People-Batch: + type: object + description: A batch for bulk people creation. + x-examples: + success_status: + uuid: 191e7162-3026-497e-aca2-f81b7e93204e + idempotency_key: 80a74f8b-2c16-45e5-9038-aa108849c6e6 + status: pending + batch_action: create + properties: + uuid: type: string - description: The total owner's draw for the payroll. + format: uuid + description: The unique identifier of the people batch. readOnly: true - check_amount: + idempotency_key: type: string - description: The total check amount for the payroll. - readOnly: true - employer_taxes: + format: uuid + description: The idempotency key provided when creating the batch. + status: type: string - description: The total amount of employer paid taxes for the payroll. - readOnly: true - employee_taxes: + enum: + - pending + - processing + - completed + - failed + - partial_success + description: The current status of the batch processing. + batch_action: type: string - description: The total amount of employee paid taxes for the payroll. - readOnly: true - benefits: + description: The action being performed on the batch. + required: + - uuid + - idempotency_key + - status + - batch_action + People-Batch-Results: + type: object + description: A people batch with processing results. + x-examples: + success_status: + uuid: f711ab7a-2d44-4556-b90c-9f883195f53a + idempotency_key: 95d84feb-3a17-4c0b-a00b-bf8d3dec3326 + status: pending + submitted_at: '2026-03-02T15:09:50-08:00' + completed_at: + submitted_items: + processed_items: 0 + excluded_items: 0 + results: [] + properties: + uuid: type: string - description: The total amount of company contributed benefits for the payroll. + format: uuid + description: The unique identifier of the people batch. readOnly: true - employee_benefits_deductions: + idempotency_key: type: string - description: The total amount of employee deducted benefits for the payroll. - readOnly: true - imputed_pay: + format: uuid + description: The idempotency key provided when creating the batch. + status: type: string - description: The total amount of imputed pay for the payroll. + enum: + - pending + - processing + - completed + - failed + - partial_success + description: The current status of the batch processing. + submitted_at: + type: string + format: date-time + description: The timestamp when the batch was submitted. + completed_at: + type: + - string + - 'null' + format: date-time + description: The timestamp when the batch processing completed. + submitted_items: + type: + - integer + - 'null' + description: The number of items submitted in the batch. + processed_items: + type: integer + description: The number of items successfully processed. + excluded_items: + type: integer + description: The number of items excluded from processing. + results: + type: array + description: The results for each batch item. + items: + type: object + properties: + external_id: + type: string + description: The external ID provided in the batch request. + role: + type: string + enum: + - employee + description: The type of person created. + status: + type: string + enum: + - success + - partial_success + - failed + description: The status of this batch item. + idx: + type: integer + description: The index of this item in the original batch request. + uuid: + type: string + format: uuid + description: The UUID of the created person. + employee_uuid: + type: string + format: uuid + description: The UUID of the created employee (if role is employee). + errors: + type: + - array + - 'null' + description: Errors encountered while processing this batch item. + items: + type: object + properties: + error_key: + type: string + description: The key identifying the error source. + category: + type: string + description: The error category. + message: + type: + - string + - 'null' + description: Human-readable error message. + errors: + type: + - array + - 'null' + description: Nested errors for sub-operations. + items: + type: object + exclusions: + type: + - array + - 'null' + description: Items excluded from processing due to validation errors. + items: + type: object + properties: + external_id: + type: string + description: The external ID of the excluded item(s). + category: + type: string + description: The exclusion category. + message: + type: string + description: Human-readable explanation for exclusion. + item_count: + type: integer + description: Number of items affected by this exclusion. + required: + - uuid + - idempotency_key + - status + People-Batch-Conflict-Error: + type: object + description: Error response when a people batch idempotency key conflict occurs. + x-examples: + conflict: + errors: + - error_key: idempotency_key + category: invalid_attribute_value + message: Idempotency token already used + metadata: + entity_uuid: 14c53a55-0a80-4d46-a866-f5f64bc06486 + entity_type: PeopleBatch + properties: + errors: + type: array + items: + type: object + properties: + error_key: + type: string + description: The key identifying the error source. + category: + type: string + description: The error category. + message: + type: string + description: Human-readable error message. + metadata: + type: object + properties: + entity_uuid: + type: string + format: uuid + description: The UUID of the existing entity. + entity_type: + type: string + description: The type of the existing entity. + Payroll-Batch: + type: object + description: A payroll cancellation batch request. + x-examples: + success_status: + uuid: a1b2c3d4-e5f6-7890-abcd-ef1234567890 + idempotency_key: 80a74f8b-2c16-45e5-9038-aa108849c6e6 + batch_action: cancel + status: pending + properties: + uuid: + type: string + format: uuid + description: The unique identifier of the payroll cancellation batch. readOnly: true - deferred_payroll_taxes: + idempotency_key: type: string - description: The total amount of payroll taxes deferred for the payroll, such as allowed by the CARES act. + format: uuid + description: The idempotency key provided when creating the batch. + batch_action: + type: string + enum: + - cancel + description: The action being performed on the batch. + status: + type: string + enum: + - pending + - processing + - completed + - failed + description: The lifecycle status of the batch request itself. Terminal values are `completed` (processing finished — inspect `results` and `exclusions` for per-payroll outcomes) and `failed` (the batch crashed at the system level; can be retried). This is distinct from the per-payroll `status` returned inside `results[]`. A `completed` batch does not imply every payroll was cancelled. + required: + - uuid + - idempotency_key + - batch_action + - status + Payroll-Batch-Results: + type: object + description: A payroll cancellation batch with per-payroll results. + x-examples: + success_status: + uuid: a1b2c3d4-e5f6-7890-abcd-ef1234567890 + idempotency_key: 80a74f8b-2c16-45e5-9038-aa108849c6e6 + status: completed + submitted_at: '2026-04-01T14:30:00Z' + completed_at: '2026-04-01T14:30:09Z' + submitted_items: 4 + processed_items: 2 + excluded_items: 2 + results: + - idx: 0 + uuid: 11111111-2222-3333-4444-555555555555 + status: success + - idx: 1 + uuid: 66666666-7777-8888-9999-000000000000 + status: failed + errors: + - error_key: base + category: not_cancellable + message: Payroll cannot be canceled + exclusions: + - idx: 2 + entity_type: payroll + uuid: 11111111-2222-3333-4444-555555555555 + company_uuid: cccccccc-1111-2222-3333-444444444444 + status: failed + category: duplicate_operation + message: Duplicate UUID. Only the first occurrence is processed. + - idx: 3 + entity_type: payroll + uuid: aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee + company_uuid: dddddddd-1111-2222-3333-444444444444 + status: failed + category: not_found + message: Payroll not found or not associated with this partner + properties: + uuid: + type: string + format: uuid + description: The unique identifier of the payroll cancellation batch. readOnly: true - other_deductions: + idempotency_key: type: string - description: The total amount of deductions for the payroll. - readOnly: true - Payroll-Company-Taxes-Type: - type: array - uniqueItems: false - description: An array of taxes applicable to this payroll in addition to taxes included in `employee_compensations`. Only included for processed or calculated payrolls when `taxes` is present in the `include` parameter. - items: - type: object - properties: - name: - type: string - description: The tax name - employer: - type: boolean - description: Whether this tax is an employer or employee tax - amount: - type: string - description: The amount of this tax for the payroll - Payroll-Payment-Speed-Changed-Type: + format: uuid + description: The idempotency key provided when creating the batch. + status: + type: string + enum: + - pending + - processing + - completed + - failed + description: The lifecycle status of the batch request itself. Terminal values are `completed` (processing finished — inspect `results` and `exclusions` for per-payroll outcomes) and `failed` (the batch crashed at the system level; can be retried). This is distinct from the per-payroll `status` returned inside `results[]`. A `completed` batch does not imply every payroll was cancelled. + submitted_at: + type: string + format: date-time + description: The timestamp when the batch was submitted. + completed_at: + type: + - string + - 'null' + format: date-time + description: The timestamp when the batch processing completed. + submitted_items: + type: + - integer + - 'null' + description: The number of payrolls submitted in the batch. + processed_items: + type: integer + description: The number of payrolls processed (cancelled or attempted). Only present once the batch reaches a terminal status. + excluded_items: + type: integer + description: The number of payrolls excluded from processing. Only present once the batch reaches a terminal status. + results: + type: array + description: Per-payroll cancellation results. Only present once the batch reaches a terminal status. One entry per authorized payroll. + items: + type: object + properties: + idx: + type: integer + description: The index of this payroll in the original POST batch array. + uuid: + type: string + format: uuid + description: The UUID of the payroll. + status: + type: string + enum: + - success + - failed + description: | + The outcome of cancelling this payroll. A cancel is atomic — there is no per-payroll `partial_success`. + - `success`: the payroll was cancelled, or required no action (already cancelled / never run) + - `failed`: the payroll could not be cancelled; see `errors` + errors: + type: array + description: Present only when `status` is `failed`. A cancel is a single atomic operation, so this is a flat array with exactly one error. + items: + type: object + properties: + error_key: + type: string + description: The key identifying the error source. + category: + type: string + enum: + - not_cancellable + - internal_error + description: | + Machine-readable reason the cancellation failed. + - `not_cancellable`: the payroll is past the point where it can be cancelled + - `internal_error`: an unexpected error occurred; the request can be retried + message: + type: string + description: Human-readable explanation of the failure. + exclusions: + type: array + description: Payrolls that could not be processed, determined at submission time. Only present once the batch reaches a terminal status. Every UUID submitted in the POST batch appears in exactly one of `results` or `exclusions`. + items: + type: object + properties: + idx: + type: integer + description: The index of this payroll in the original POST batch array. + entity_type: + type: string + enum: + - payroll + description: The type of entity this exclusion represents. + uuid: + type: string + format: uuid + description: The UUID of the excluded payroll. + company_uuid: + type: string + format: uuid + description: The UUID of the company asserted to own the payroll. + status: + type: string + enum: + - failed + description: Always `failed` for an excluded payroll. + category: + type: string + enum: + - not_found + - duplicate_operation + description: | + Machine-readable category for why the payroll was excluded. + - `not_found`: the payroll does not exist, or is not associated with a company the partner is mapped to + - `duplicate_operation`: the same payroll UUID appeared more than once in the request; only the first occurrence is processed + message: + type: string + description: Human-readable explanation for the exclusion. + required: + - uuid + - idempotency_key + - status + - submitted_at + Payroll-Batch-Conflict-Error: type: object - description: Only applicable when a payroll is moved to four day processing instead of fast ach. + description: Error response when a payroll cancellation idempotency key has already been used by the same partner. + x-examples: + conflict: + errors: + - error_key: idempotency_key + category: invalid_attribute_value + message: Idempotency key has already been used + metadata: + request_uuid: a1b2c3d4-e5f6-7890-abcd-ef1234567890 + properties: + errors: + type: array + items: + type: object + properties: + error_key: + type: string + description: The key identifying the error source. + category: + type: string + description: The error category. + message: + type: string + description: Human-readable error message. + metadata: + type: object + properties: + request_uuid: + type: string + format: uuid + description: The UUID of the existing payroll cancellation batch that already used this idempotency key. + Payroll-Digest: + type: object + description: A payroll digest batch request. + x-examples: + success_status: + uuid: a1b2c3d4-e5f6-7890-abcd-ef1234567890 + idempotency_key: 80a74f8b-2c16-45e5-9038-aa108849c6e6 + batch_action: create + status: pending properties: - original_check_date: - type: string - description: Original check date when fast ach applies. - readOnly: true - current_check_date: + uuid: type: string - description: Current check date. + format: uuid + description: The unique identifier of the payroll digest batch. readOnly: true - original_debit_date: + idempotency_key: type: string - description: Original debit date when fast ach applies. - readOnly: true - current_debit_date: + format: uuid + description: The idempotency key provided when creating the batch. + batch_action: type: string - description: Current debit date. - readOnly: true - reason: + enum: + - create + description: The action being performed on the batch. + status: type: string - description: The reason why the payroll is moved to four day. - readOnly: true - Payroll-Payroll-Status-Meta-Type: + enum: + - pending + - processing + - completed + - failed + description: The lifecycle status of the batch request itself. Terminal values are `completed` (processing finished — inspect `results` and `exclusions` for per-company outcomes) and `failed` (request failed; can be retried). This is distinct from the per-company `status` returned inside `results[]` and `exclusions[]`. + required: + - uuid + - idempotency_key + - batch_action + - status + Payroll-Digest-Results: type: object - description: Information about the payroll's status and expected dates + description: A payroll digest batch with processing results. + x-examples: + success_status: + uuid: a1b2c3d4-e5f6-7890-abcd-ef1234567890 + idempotency_key: 80a74f8b-2c16-45e5-9038-aa108849c6e6 + status: completed + submitted_at: '2026-04-01T14:30:00Z' + completed_at: '2026-04-01T14:30:12Z' + submitted_items: 4 + processed_items: 2 + excluded_items: 2 + results: + - idx: 0 + entity_type: company + uuid: c1111111-1111-1111-1111-111111111111 + name: Acme Corporation + status: success + blockers: + - type: missing_bank_account + description: Company bank account not set up + payrolls: + - payroll_uuid: + payroll_type: regular + display_title: Run biweekly payroll + auto_payroll: false + status: ready_to_start + pay_period: + start_date: '2026-03-16' + end_date: '2026-03-29' + check_date: '2026-04-03' + run_payroll_by: '2026-03-31' + pay_schedule: + uuid: aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee + frequency: Every other week + custom_name: Custom - every 1st and 15th + totals: + - payroll_uuid: 11111111-2222-3333-4444-555555555555 + payroll_type: regular + display_title: Run biweekly payroll + auto_payroll: true + status: submitted + pay_period: + start_date: '2026-03-02' + end_date: '2026-03-15' + check_date: '2026-03-20' + run_payroll_by: '2026-03-17' + pay_schedule: + uuid: aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee + frequency: Every other week + custom_name: Custom - every 1st and 15th + totals: + total_debit_amount: '15234.56' + net_pay: '11456.78' + total_employer_cost: '16890.12' + - idx: 3 + entity_type: company + uuid: c2222222-2222-2222-2222-222222222222 + name: Widget Inc + status: success + payrolls: [] + exclusions: + - idx: 1 + entity_type: company + uuid: c3333333-3333-3333-3333-333333333333 + status: failed + category: not_found + message: Company not found. + - idx: 2 + entity_type: company + uuid: c4444444-4444-4444-4444-444444444444 + status: failed + category: company_inactive + message: Company is inactive or not fully onboarded. properties: - cancellable: - type: boolean - description: true if the payroll may be cancelled. - readOnly: true - expected_check_date: - type: string - description: The date an employee will be paid if the payroll is submitted now. - readOnly: true - initial_check_date: - type: string - description: The normal check date for the associated pay period. - readOnly: true - expected_debit_time: + uuid: type: string - description: The time the employer's account will be debited if the payroll is submitted now. - readOnly: true - payroll_late: - type: boolean - description: expected_check_date > initial_check_date. + format: uuid + description: The unique identifier of the payroll digest batch. readOnly: true - initial_debit_cutoff_time: + idempotency_key: type: string - description: Payroll must be submitted at or before this time to avoid late payroll. - readOnly: true - Payroll-Pay-Period-Type: - type: object - readOnly: true - properties: - start_date: + format: uuid + description: The idempotency key provided when creating the batch. + status: type: string - description: The start date, inclusive, of the pay period. - readOnly: true - end_date: + enum: + - pending + - processing + - completed + - failed + description: The lifecycle status of the batch request itself. Terminal values are `completed` (processing finished — inspect `results` and `exclusions` for per-company outcomes) and `failed` (request failed; can be retried). This is distinct from the per-company `status` returned inside `results[]` and `exclusions[]`. + submitted_at: type: string - description: The start date, inclusive, of the pay period. - readOnly: true - pay_schedule_uuid: + format: date-time + description: The timestamp when the batch was submitted. + completed_at: type: - string - 'null' - description: The UUID of the pay schedule for the payroll. - readOnly: true - Payroll-Withholding-Pay-Period-Type: - description: The payment schedule tax rate the payroll is based on. Only included for off-cycle payrolls. - readOnly: true - anyOf: - - type: string - enum: - - Every week - - Every other week - - Twice per month - - Monthly - - Quarterly - - Semiannually - - Annually - - type: 'null' - Payroll-Deadline-Type: - type: string - format: date-time - description: A timestamp that is the deadline for the payroll to be run in order for employees to be paid on time. If payroll has not been run by the deadline, a prepare request will update both the check date and deadline to reflect the soonest employees can be paid and the deadline by which the payroll must be run in order for said check date to be met. - readOnly: true - Payroll-Check-Date-Type: - type: string - description: The date on which employees will be paid for the payroll. - readOnly: true - Payroll-Processed-Type: - type: boolean - description: Whether or not the payroll has been successfully processed. Note that processed payrolls cannot be updated. Additionally, a payroll is not guaranteed to be processed just because the payroll deadline has passed. Late payrolls are not uncommon. Conversely, users may choose to run payroll before the payroll deadline. - readOnly: true - Payroll-Processed-Date-Type: - type: - - string - - 'null' - description: The date at which the payroll was processed. Null if the payroll isn't processed yet. - readOnly: true - Payroll-Calculated-At-Type: - type: - - string - - 'null' - format: date-time - description: A timestamp of the last valid payroll calculation. Null if there isn't a valid calculation. - readOnly: true - Payroll-Payroll-Uuid-Type: - type: string - description: The UUID of the payroll. - readOnly: true - Payroll-Company-Uuid-Type: - type: string - description: The UUID of the company for the payroll. - readOnly: true - Payroll-Off-Cycle-Type: - type: boolean - description: Indicates whether the payroll is an off-cycle payroll - readOnly: true - Payroll-External-Type: - type: boolean - description: Indicates whether the payroll is an external payroll - readOnly: true - Payroll-Final-Termination-Payroll-Type: - type: boolean - description: Indicates whether the payroll is the final payroll for a terminated employee. Only included for off-cycle payrolls. - readOnly: true - Payroll-Skip-Regular-Deductions-Type: - type: - - boolean - - 'null' - description: Block regular deductions and contributions for this payroll. Only included for off-cycle payrolls. - readOnly: true - Payroll-Fixed-Withholding-Rate-Type: - type: - - boolean - - 'null' - description: Enable taxes to be withheld at the IRS's required rate of 22% for federal income taxes. State income taxes will be taxed at the state's supplemental tax rate. Otherwise, we'll sum the entirety of the employee's wages and withhold taxes on the entire amount at the rate for regular wages. Only included for off-cycle payrolls. - readOnly: true - Payroll-Fixed-Compensation-Types-Type: - type: array - items: - type: object - readOnly: true - properties: - name: - description: The name of an available type of fixed compensation. - type: string - readOnly: true - Payroll-Submission-Blockers-Type: - type: array - description: Only included for processed or calculated payrolls - uniqueItems: true - items: - "$ref": "#/components/schemas/Payroll-Submission-Blocker-Type" - Payroll-Credit-Blockers-Type: - type: array - description: Only included for processed payrolls - uniqueItems: true - items: - "$ref": "#/components/schemas/Payroll-Credit-Blocker-Type" - Reversal-Payroll-Uuids-Type: - type: array - description: Array of reversal payroll UUIDs, if applicable. - uniqueItems: true - items: - type: string - description: The UUID of the reversal payroll. - nullable: false - readOnly: true - Payroll-Processing-Request: - type: - - object - - 'null' - properties: - status: - type: string - description: The status of the payroll processing request - readOnly: true - enum: - - calculating - - calculate_success - - submitting - - submit_success - - processing_failed - errors: - description: Errors that occurred during async payroll processing - readOnly: true + format: date-time + description: The timestamp when the batch processing completed. + submitted_items: + type: + - integer + - 'null' + description: The number of companies submitted in the batch. + processed_items: + type: integer + description: The number of companies successfully processed. Only present once the batch reaches a terminal status. + excluded_items: + type: integer + description: The number of companies excluded from processing. Only present once the batch reaches a terminal status. + results: type: array + description: Per-company results. Only present once the batch reaches a terminal status. Includes successfully processed companies (with their `payrolls` array, which may be empty when the company has no payrolls in the date window). items: - "$ref": "#/components/schemas/Entity-Error-Object" - Payroll: - type: object - x-examples: - success_status: - uuid: b441a30b-2adb-489e-b7b7-9d094011a3f8 - employee_compensations: [] - submission_blockers: [] - credit_blockers: [] - payroll_uuid: b441a30b-2adb-489e-b7b7-9d094011a3f8 - company_uuid: 9aa93530-43d5-484e-b608-33214109420d - off_cycle: false - auto_payroll: false - processed: true - processed_date: '2025-06-16' - calculated_at: '2025-06-16T16:58:03Z' - pay_period: - start_date: '2025-05-25' - end_date: '2025-06-09' - pay_schedule_uuid: 40ff5990-0191-4796-9717-32f7dd3e94d5 - check_date: '2025-06-13' - external: false - payroll_deadline: '2025-06-17T23:00:00Z' - totals: - employee_bonuses: '0.00' - employee_commissions: '0.00' - employee_cash_tips: '0.00' - employee_paycheck_tips: '0.00' - additional_earnings: '0.00' - owners_draw: '0.00' - benefits: '0.00' - check_amount: '0.00' - child_support_debit: '0.00' - company_debit: '0.00' - deferred_payroll_taxes: '0.00' - employee_benefits_deductions: '0.00' - employee_taxes: '0.00' - employer_taxes: '0.00' - gross_pay: '0.00' - imputed_pay: '0.00' - net_pay: '0.00' - net_pay_debit: '0.00' - other_deductions: '0.00' - reimbursement_debit: '0.00' - reimbursements: '0.00' - tax_debit: '0.00' - payroll_status_meta: - cancellable: false - expected_check_date: '2025-06-13' - initial_check_date: '2025-06-13' - expected_debit_time: '2025-06-17T23:00:00Z' - payroll_late: false - initial_debit_cutoff_time: '2025-06-17T23:00:00Z' - processing_request: - status: submit_success - errors: [] - created_at: '2025-06-16T16:58:03Z' - partner_owned_disbursement: - properties: - payroll_deadline: - "$ref": "#/components/schemas/Payroll-Deadline-Type" - check_date: - "$ref": "#/components/schemas/Payroll-Check-Date-Type" - processed: - "$ref": "#/components/schemas/Payroll-Processed-Type" - processed_date: - "$ref": "#/components/schemas/Payroll-Processed-Date-Type" - calculated_at: - "$ref": "#/components/schemas/Payroll-Calculated-At-Type" - uuid: - "$ref": "#/components/schemas/Payroll-Payroll-Uuid-Type" - payroll_uuid: - "$ref": "#/components/schemas/Payroll-Payroll-Uuid-Type" - company_uuid: - "$ref": "#/components/schemas/Payroll-Company-Uuid-Type" - off_cycle: - "$ref": "#/components/schemas/Payroll-Off-Cycle-Type" - off_cycle_reason: - "$ref": "#/components/schemas/Off-Cycle-Reason-Type" - auto_payroll: - "$ref": "#/components/schemas/Auto-Pilot-Type" - external: - "$ref": "#/components/schemas/Payroll-External-Type" - final_termination_payroll: - "$ref": "#/components/schemas/Payroll-Final-Termination-Payroll-Type" - withholding_pay_period: - "$ref": "#/components/schemas/Payroll-Withholding-Pay-Period-Type" - skip_regular_deductions: - "$ref": "#/components/schemas/Payroll-Skip-Regular-Deductions-Type" - fixed_withholding_rate: - "$ref": "#/components/schemas/Payroll-Fixed-Withholding-Rate-Type" - pay_period: - "$ref": "#/components/schemas/Payroll-Pay-Period-Type" - payroll_status_meta: - "$ref": "#/components/schemas/Payroll-Payroll-Status-Meta-Type" - totals: - "$ref": "#/components/schemas/Payroll-Totals-Type" - company_taxes: - "$ref": "#/components/schemas/Payroll-Company-Taxes-Type" - payroll_taxes: - "$ref": "#/components/schemas/Payroll-Taxes-Type" - payment_speed_changed: - "$ref": "#/components/schemas/Payroll-Payment-Speed-Changed-Type" - created_at: - "$ref": "#/components/schemas/Created-At-Type" - submission_blockers: - "$ref": "#/components/schemas/Payroll-Submission-Blockers-Type" - credit_blockers: - "$ref": "#/components/schemas/Payroll-Credit-Blockers-Type" - processing_request: - "$ref": "#/components/schemas/Payroll-Processing-Request" - partner_owned_disbursement: - "$ref": "#/components/schemas/Payroll-Partner-Owned-Disbursement-Type" - Payroll-Prepared: - description: The response from preparing a payroll for update. Contains refreshed employee compensations, updated payroll dates, and version information needed for subsequent payroll updates. - x-examples: - success_status: - uuid: 4428f108-e46e-4ab6-ba20-03cea031cfc0 - employee_compensations: [] - payroll_uuid: 4428f108-e46e-4ab6-ba20-03cea031cfc0 - company_uuid: 42b5333b-ee39-493a-bf7e-f41f2bd67848 - payroll_status_meta: - cancellable: false - expected_check_date: '2025-06-17' - initial_check_date: '2025-06-17' - expected_debit_time: '2025-06-11T23:00:00Z' - payroll_late: false - initial_debit_cutoff_time: '2025-06-11T23:00:00Z' - off_cycle: true - auto_payroll: false - off_cycle_reason: Bonus - withholding_pay_period: Twice per month - skip_regular_deductions: true - fixed_withholding_rate: true - final_termination_payroll: false - processed: false - processed_date: - calculated_at: - pay_period: - start_date: '2025-06-10' - end_date: '2025-06-16' - pay_schedule_uuid: - check_date: '2025-06-17' - external: false - payroll_deadline: '2025-06-11T23:00:00Z' - fixed_compensation_types: - - name: Bonus - - name: Commission - - name: Paycheck Tips - - name: Cash Tips - - name: Correction Payment - - name: Reimbursement - created_at: '2025-06-11T19:40:52Z' - partner_owned_disbursement: + type: object + properties: + idx: + type: integer + description: The index of this company in the original POST batch array. + entity_type: + type: string + enum: + - company + description: The type of entity this result represents. + uuid: + type: string + format: uuid + description: The UUID of the company. + name: + type: string + description: The legal/display name of the company. + status: + type: string + enum: + - success + - partial_success + - failed + description: The status of this company's digest computation. + blockers: + type: array + description: Reasons the company cannot currently run payroll. Applies to every payroll in this company's `payrolls` array — blockers are evaluated at the company level, not per payroll. Empty when there are no blockers. + items: + type: object + properties: + type: + type: string + description: A machine-readable blocker key (e.g. `missing_bank_account`). + description: + type: string + description: Human-readable description of the blocker. + payrolls: + type: array + description: Payrolls for this company within the digest date window (7 days past, 30–60 days future). May be empty. + items: + type: object + properties: + payroll_uuid: + type: + - string + - 'null' + format: uuid + description: UUID of the payroll. `null` for upcoming pay periods that have not been started yet (the `payrolls` API has not yet created a payroll record). Once a payroll is created, subsequent digest requests will include the real `payroll_uuid`. + payroll_type: + type: string + description: The type of payroll (e.g. `regular`, `new_hire`, `termination`, `transition`, `bonus`, `correction`). + display_title: + type: string + description: Partner-facing display title for this payroll (e.g. "Run biweekly payroll"). + auto_payroll: + type: boolean + description: Whether the company has auto-payroll enabled for this pay schedule. + status: + type: string + description: The lifecycle status of the payroll (e.g. `ready_to_start`, `in_progress`, `submitted`, `completed`, `failed`). + pay_period: + type: object + properties: + start_date: + type: + - string + - 'null' + format: date + description: First day of the pay period. + end_date: + type: + - string + - 'null' + format: date + description: Last day of the pay period. + check_date: + type: + - string + - 'null' + format: date + description: The date employees get paid. + run_payroll_by: + type: + - string + - 'null' + format: date + description: The deadline to run payroll for this pay period. + pay_schedule: + type: + - object + - 'null' + properties: + uuid: + type: string + format: uuid + description: UUID of the pay schedule. + frequency: + type: string + description: Human-friendly pay frequency (e.g. "Every other week"). + custom_name: + type: + - string + - 'null' + description: Custom name for the pay schedule, when set. + totals: + type: + - object + - 'null' + description: Pay totals. `null` when the payroll has not been calculated, or when the calculation is stale (the partner edited hours/earnings after the last calculation). + properties: + total_debit_amount: + type: string + description: Total amount debited from the company bank account (string-formatted decimal). + net_pay: + type: string + description: Total net pay across all employees on this payroll (string-formatted decimal). + total_employer_cost: + type: string + description: Total employer cost including taxes and benefits (string-formatted decimal). + exclusions: + type: array + description: Companies that could not be processed. Only present once the batch reaches a terminal status. Every UUID submitted in the POST batch appears in exactly one of `results` or `exclusions`. + items: + type: object + properties: + idx: + type: integer + description: The index of this company in the original POST batch array. + entity_type: + type: string + enum: + - company + description: The type of entity this exclusion represents. + uuid: + type: string + format: uuid + description: The UUID of the excluded company. + status: + type: string + enum: + - failed + description: The status of this company's digest computation. + category: + type: string + enum: + - not_found + - company_inactive + - duplicate + - internal_error + description: Machine-readable category for why the company was excluded. + message: + type: string + description: Human-readable explanation for the exclusion. + required: + - uuid + - idempotency_key + - status + - submitted_at + Payroll-Digest-Conflict-Error: type: object + description: Error response when a payroll digest idempotency key has already been used by the same partner. + x-examples: + conflict: + errors: + - error_key: idempotency_key + category: invalid_attribute_value + message: Idempotency key has already been used + metadata: + request_uuid: a1b2c3d4-e5f6-7890-abcd-ef1234567890 properties: - payroll_deadline: - "$ref": "#/components/schemas/Payroll-Deadline-Type" - check_date: - "$ref": "#/components/schemas/Payroll-Check-Date-Type" - processed: - "$ref": "#/components/schemas/Payroll-Processed-Type" - processed_date: - "$ref": "#/components/schemas/Payroll-Processed-Date-Type" - calculated_at: - "$ref": "#/components/schemas/Payroll-Calculated-At-Type" - uuid: - "$ref": "#/components/schemas/Payroll-Payroll-Uuid-Type" - payroll_uuid: - "$ref": "#/components/schemas/Payroll-Payroll-Uuid-Type" - company_uuid: - "$ref": "#/components/schemas/Payroll-Company-Uuid-Type" - off_cycle: - "$ref": "#/components/schemas/Payroll-Off-Cycle-Type" - off_cycle_reason: - "$ref": "#/components/schemas/Off-Cycle-Reason-Type" - auto_payroll: - "$ref": "#/components/schemas/Auto-Pilot-Type" - external: - "$ref": "#/components/schemas/Payroll-External-Type" - final_termination_payroll: - "$ref": "#/components/schemas/Payroll-Final-Termination-Payroll-Type" - withholding_pay_period: - "$ref": "#/components/schemas/Payroll-Withholding-Pay-Period-Type" - skip_regular_deductions: - "$ref": "#/components/schemas/Payroll-Skip-Regular-Deductions-Type" - fixed_withholding_rate: - "$ref": "#/components/schemas/Payroll-Fixed-Withholding-Rate-Type" - pay_period: - "$ref": "#/components/schemas/Payroll-Pay-Period-Type" - payroll_status_meta: - "$ref": "#/components/schemas/Payroll-Payroll-Status-Meta-Type" - employee_compensations: + errors: type: array - uniqueItems: false items: - "$ref": "#/components/schemas/Payroll-Employee-Compensations-Type" - payment_speed_changed: - "$ref": "#/components/schemas/Payroll-Payment-Speed-Changed-Type" - created_at: - "$ref": "#/components/schemas/Created-At-Type" - fixed_compensation_types: - "$ref": "#/components/schemas/Payroll-Fixed-Compensation-Types-Type" - processing_request: - "$ref": "#/components/schemas/Payroll-Processing-Request" - partner_owned_disbursement: - "$ref": "#/components/schemas/Payroll-Partner-Owned-Disbursement-Type" + type: object + properties: + error_key: + type: string + description: The key identifying the error source. + category: + type: string + description: The error category. + message: + type: string + description: Human-readable error message. + metadata: + type: object + properties: + request_uuid: + type: string + format: uuid + description: The UUID of the existing payroll digest batch that already used this idempotency key. + Reversal-Payroll-Uuids-Type: + type: array + description: Array of reversal payroll UUIDs, if applicable. + uniqueItems: true + items: + type: string + description: The UUID of the reversal payroll. + nullable: false + readOnly: true Payroll-Minimal: description: '' type: object @@ -28368,6 +14370,23 @@ components: key: needs_approval message: Company needs to be approved to run payroll. empty_blockers_list: [] + Printable-Payroll-Checks-Body: + description: Request body for generating printable payroll checks. + type: object + required: + - printing_format + properties: + printing_format: + type: string + enum: + - top + - bottom + description: The type of check stock being printed. Check the "Types of check stock" section in this [link](https://support.gusto.com/article/999877761000000/Pay-your-team-by-check) for more info on check types + starting_check_number: + type: integer + description: The starting check number we will start generating checks from. Use to override the sequence that will be used to generate check numbers. + x-tags: + - Payrolls Payroll-Check: type: object properties: @@ -28512,166 +14531,257 @@ components: - employee company_uuid: p83d0ca8-7d41-42a9-834y-7d218ef6cb20 report_type: payroll_journal - Payroll-Receipt: + Create-Report-Body: + description: Request body for creating a custom report. type: object - x-examples: - success_status: - totals: - company_debit: '0.00' - net_pay_debit: '0.00' - child_support_debit: '0.00' - reimbursement_debit: '0.00' - tax_debit: '0.00' - taxes: [] - employee_compensations: [] - licensee: - name: Gusto, Zenpayroll Inc. - address: 525 20th St - city: San Francisco - state: CA - postal_code: '94107' - phone_number: '4157778888' - payroll_uuid: 9f624c0d-0d4f-499a-993a-846dfa47a48e - company_uuid: '0481a066-e26a-465b-a2c1-933bd5b03a69' - name_of_sender: Kiehn, Conroy and Prohaska - name_of_recipient: Payroll Recipients - recipient_notice: Payroll recipients include the employees listed below plus the tax agencies for the taxes listed below. - debit_date: '2025-06-12' - license: ZenPayroll, Inc., dba Gusto is a licensed money transmitter. For more about Gusto’s licenses and your state-specific rights to request information, submit complaints, dispute errors, or cancel transactions, visit our license page. - license_uri: https://gusto.com/about/licenses - right_to_refund: https://gusto.com/about/licenses - liability_of_licensee: https://gusto.com/about/licenses + required: + - columns + - file_type properties: - payroll_uuid: + columns: + type: array + description: Columns to include in the report + items: + type: string + enum: + - additional_earnings + - bank_account_account_number + - bank_account_routing_number + - bank_account_type + - bank_account + - bonus + - cash_tips + - check_amount + - check_date + - commission + - date_of_birth + - double_overtime_earnings + - double_overtime_hours + - double_overtime_rate + - employee_additional_taxes + - employee_benefit_contributions + - employee_compensation_time_period + - employee_compensation + - employee_deductions + - employee_department + - employee_email + - employee_donations + - employee_federal_income_tax + - employee_first_name + - employee_last_name + - employee_middle_initial + - employee_medicare_additional_tax + - employee_medicare_tax + - employee_phone_number + - employee_social_security_tax + - employee_state_income_tax + - employee_taxes + - employee_uuid + - employee_work_email + - employer_additional_taxes + - employer_benefit_contributions + - employer_cost + - employer_futa_tax + - employer_medicare_tax + - employer_social_security_tax + - employer_suta_tax + - employer_taxes + - employment_type + - employment + - end_date + - garnishments + - gross_earnings + - holiday_earnings + - holiday_hours + - home_address_city + - home_address_state + - home_address_street + - home_address_zip + - home_address + - job_title + - net_pay + - one_time_reimbursements + - overtime_earnings + - overtime_hours + - overtime_rate + - paid_time_off_earnings + - paid_time_off_hours + - paid_time_off_rate + - pay_period_end + - pay_period_start + - paycheck_tips + - payment_method + - payroll_type + - payroll_uuid + - preferred_first_name + - recurring_reimbursements + - regular_earnings + - regular_hours + - regular_rate + - reimbursements + - risk_class_code + - sick_rate + - sick_time_off_earnings + - sick_time_off_hours + - start_date + - total_employer_benefit_contributions + - total_time_off_earnings + - total_time_off_hours + - work_address_city + - work_address_street + - work_address_zip + groupings: + type: array + description: Optional. How to group the report. If omitted, sensible defaults are derived from the `columns` requested. + items: + type: string + enum: + - payroll + - employee + - work_address + - work_address_state + custom_name: type: string - description: A unique identifier of the payroll receipt. - company_uuid: + description: The title of the report + file_type: type: string - description: A unique identifier of the company for the payroll. - name_of_sender: + description: The type of file to generate + enum: + - csv + - json + - pdf + with_totals: + type: boolean + description: Whether to include subtotals and grand totals in the report + default: false + date_filter_type: type: string - description: The name of the company by whom the payroll was paid - name_of_recipient: + description: Which payroll date `start_date` and `end_date` filter against. + default: period_end_date + enum: + - period_end_date + - period_start_date + - check_date + start_date: type: string - description: Always the fixed string "Payroll Recipients" - recipient_notice: + format: date + description: Start date of data to filter by + example: '2024-01-01' + end_date: type: string - description: Always the fixed string "Payroll recipients include the employees listed below plus the tax agencies for the taxes listed below." - debit_date: + format: date + description: End date of data to filter by + example: '2024-04-01' + dismissed_start_date: type: string - description: The debit or funding date for the payroll - license: + format: date + description: Dismissed start date of employees to filter by + example: '2024-01-01' + dismissed_end_date: type: string - description: Always the fixed string "ZenPayroll, Inc., dba Gusto is a licensed money transmitter. For more about Gusto’s licenses and your state-specific rights to request information, submit complaints, dispute errors, or cancel transactions, visit our license page." - license_uri: + format: date + description: Dismissed end date of employees to filter by + example: '2024-04-01' + payment_method: type: string - description: URL for the license information for the licensed payroll processor. Always the fixed string "https://gusto.com/about/licenses" - right_to_refund: + description: Payment method to filter by + enum: + - check + - direct_deposit + employment_type: type: string - description: '' - liability_of_licensee: + description: Employee employment type to filter by + enum: + - exempt + - salaried_nonexempt + - nonexempt + - commission_only_exempt + - commission_only_nonexempt + employment_status: type: string - description: '' - totals: - type: object - description: The subtotals for the payroll. - properties: - company_debit: - type: string - format: float - description: The total company debit for the payroll. - net_pay_debit: - type: string - format: float - description: The total company net pay for the payroll. - child_support_debit: - type: string - format: float - description: The total child support debit for the payroll. - reimbursement_debit: - type: string - format: float - description: The total reimbursements for the payroll. - tax_debit: - type: string - format: float - description: The total tax debit for the payroll. - taxes: - type: array - description: An array of totaled employer and employee taxes for the pay period. - items: - type: object - properties: - name: - type: string - description: The amount paid for this tax. - amount: - type: string - format: float - description: The total amount paid by both employer and employee for this tax. - employee_compensations: - type: array - description: An array of employee compensations and withholdings for this payroll - items: - type: object - properties: - employee_uuid: - type: string - description: The UUID of the employee. - employee_first_name: - type: string - description: The first name of the employee. - employee_last_name: - type: string - description: The last name of the employee. - payment_method: - type: string - description: The employee's compensation payment method. - enum: - - Direct Deposit - - Check - net_pay: - type: string - format: float - description: The employee's net pay. Net pay paid by check is available for reference but is not included in the `["totals"]["net_pay_debit"]` amount. - total_tax: - type: string - format: float - description: The total of employer and employee taxes for the pay period. - total_garnishments: - type: string - format: float - description: The total garnishments for the pay period. - child_support_garnishment: - type: string - format: float - description: The total child support garnishment for the pay period. - total_reimbursement: - type: string - format: float - description: The total reimbursement for the pay period. - licensee: - type: object - description: The licensed payroll processor - properties: - name: - type: string - description: Always the fixed string "Gusto, Zenpayroll Inc." - address: - type: string - description: Always the fixed string "525 20th St" - city: - type: string - description: Always the fixed string "San Francisco" - state: - type: string - description: Always the fixed string "CA" - postal_code: - type: string - description: Always the fixed string "94107" - phone_number: - type: string - description: Always the fixed string "4157778888" + description: Employee employment status to filter by + enum: + - active_full_time + - active_part_time + - active_part_time_eligible + - active_variable + - active_seasonal + - active + - dismissed + employee_uuids: + type: + - array + - 'null' + description: Employees to filter by + items: + type: string + department_uuids: + type: array + description: Departments to filter by + items: + type: string + work_address_uuids: + type: array + description: Work addresses to filter by + items: + type: string + x-tags: + - Reports + General-Ledger-Report-Body: + description: Request body for generating a general ledger report. The report can be aggregated by different dimensions such as job or department. + type: object + required: + - aggregation + properties: + aggregation: + type: string + enum: + - default + - job + - department + - integration + description: The breakdown of the report. Use 'default' for no split. + integration_type: + description: The kind of integration set up for the company. Required when `aggregation` is 'integration'. Must be null if `aggregation` is not 'integration'. + anyOf: + - type: string + enum: + - xero + - qbo + - type: 'null' + x-tags: + - Reports + General-Ledger-Report: + type: object + description: A request for a general ledger report. The report is generated asynchronously and the URL is available via the report GET endpoint using the returned `request_uuid`. + properties: + payroll_uuid: + type: string + format: uuid + description: The UUID of the payroll record for which the report was generated. + aggregation: + type: string + enum: + - default + - job + - department + - integration + description: The breakdown level used for the report. + integration_type: + type: + - string + - 'null' + description: The `integration_type` used for the report when `aggregation` is 'integration' (e.g., `xero`, `qbo`). Otherwise, this will be null or an empty string. + request_uuid: + type: string + format: uuid + description: UUID to use for polling the report status. + x-examples: + example: + payroll_uuid: a83d0bd8-7d20-43b9-834c-6d514ef6cb20 + aggregation: integration + integration_type: xero + request_uuid: 550e8400-e29b-41d4-a716-446655440000 Payroll-Reversal: type: object properties: @@ -28710,6 +14820,19 @@ components: category: convert_check_ee_requested reversed_employee_uuids: - 5f036964-185e-4c85-bbf2-3873e1203b30 + Payroll-Reversal-List: + type: array + items: + "$ref": "#/components/schemas/Payroll-Reversal" + x-examples: + Example: + - reversed_payroll_uuid: '09505984-8d8c-41a3-adbe-5740322ae8e9' + reversal_payroll_uuid: '0424688e-0a2e-4cd0-ac86-42283e788fb3' + reason: Customer Request + approved_at: + category: convert_check_ee_requested + reversed_employee_uuids: + - 5f036964-185e-4c85-bbf2-3873e1203b30 Gross-Up-Pay: type: object properties: @@ -28849,67 +14972,6 @@ components: phone_number: type: string description: Always the fixed string "4157778888" - Custom-Field-Type: - type: string - description: Input type for the custom field. - enum: - - text - - currency - - number - - date - - radio - Employee-Custom-Field: - type: object - description: A custom field of an employee - properties: - id: - type: string - company_custom_field_id: - type: string - description: This is the id of the response object from when you get the company custom fields - name: - type: string - type: - "$ref": "#/components/schemas/Custom-Field-Type" - description: - type: - - string - - 'null' - value: - type: string - selection_options: - type: - - array - - 'null' - description: An array of options for fields of type radio. Otherwise, null. - items: - type: string - required: - - id - - company_custom_field_id - - name - - type - - value - x-examples: - example_text_field: - id: ee515986-f3ca-49da-b576-2691b95262f9 - company_custom_field_id: ea7e5d57-6abb-47d7-b654-347c142886c0 - name: employee_level - description: Employee Level - type: text - value: '2' - selection_options: - example_radio_field: - id: 3796e08d-c2e3-434c-b4de-4ce1893e7b59 - company_custom_field_id: 024ec137-6c92-43a3-b061-14a9720531d6 - name: favorite fruit - description: Which is your favorite fruit? - type: radio - value: apple - selection_options: - - apple - - banana - - orange Company-Custom-Field: type: object description: A custom field on a company @@ -28940,6 +15002,29 @@ components: - uuid - name - type + Company-Custom-Field-List: + type: object + x-examples: + success_status: + custom_fields: + - uuid: ea7e5d57-6abb-47d7-b654-347c142886c0 + name: employee_level + description: Employee Level + type: text + selection_options: + - uuid: 024ec137-6c92-43a3-b061-14a9720531d6 + name: favorite fruit + description: Which is your favorite fruit? + type: radio + selection_options: + - apple + - banana + - orange + properties: + custom_fields: + type: array + items: + "$ref": "#/components/schemas/Company-Custom-Field" Rehire: type: object properties: @@ -29004,6 +15089,156 @@ components: file_new_hire_report: true work_location_uuid: b6ae9d93-d4b8-4119-8c96-dba595dd8c30 two_percent_shareholder: false + Rehire-Update-Request-Body: + description: Request body for updating an employee rehire. + type: object + allOf: + - "$ref": "#/components/schemas/Versionable-Required" + - "$ref": "#/components/schemas/Rehire-Body" + x-examples: + update_rehire: + version: 1928d0c378e519e9c03fb959bc959a6b + effective_date: '2023-06-30' + work_location_uuid: b6ae9d93-d4b8-4119-8c96-dba595dd8c30 + file_new_hire_report: true + Salary-Estimate: + type: object + description: A salary estimate calculation for an S-Corp owner based on occupation, experience level, location, and business revenue. + properties: + uuid: + type: string + description: The UUID of the salary estimate. + readOnly: true + employee_uuid: + type: + - string + - 'null' + description: The UUID of the employee this salary estimate is for. + readOnly: true + employee_job_uuid: + type: + - string + - 'null' + description: The UUID of the employee job this salary estimate is associated with (once accepted). + readOnly: true + annual_net_revenue: + type: + - string + - 'null' + description: The annual net revenue of the business used for salary calculations. + zip_code: + type: + - string + - 'null' + description: The ZIP code used for location-based salary calculations. + pattern: "^\\d{5}$" + result: + type: + - integer + - 'null' + description: The calculated reasonable salary estimate in cents. Null if not yet calculated. + readOnly: true + accepted_at: + type: + - string + - 'null' + format: date-time + description: The timestamp when this salary estimate was accepted and finalized. + readOnly: true + created_at: + type: string + format: date-time + description: The timestamp when this salary estimate was created. + readOnly: true + updated_at: + type: string + format: date-time + description: The timestamp when this salary estimate was last updated. + readOnly: true + occupations: + type: array + description: Array of occupations with their experience levels and time allocations. + items: + type: object + properties: + code: + type: string + description: Bureau of Labor Statistics (BLS) occupation code. + name: + type: string + description: Occupation name. + description: + type: string + description: Occupation description. + experience_level: + type: string + description: Experience level for this occupation. + enum: + - novice + - intermediate + - average + - skilled + - expert + time_percentage: + type: string + description: Percentage of time spent in this occupation (as decimal string, 0-1). + primary: + type: boolean + description: Whether this is the primary occupation. + required: + - code + - experience_level + - time_percentage + required: + - uuid + - employee_uuid + - annual_net_revenue + - zip_code + - created_at + - updated_at + - occupations + x-examples: + success_status: + uuid: 7f5d3d93-6d6f-48c0-9f4e-cd12c2d3e4b2 + employee_uuid: 8c290660-b6c9-4ad7-9f6e-ea146aaf79e8 + employee_job_uuid: + annual_net_revenue: '500000' + zip_code: '94107' + result: 12000000 + accepted_at: + created_at: '2025-01-15T10:30:00.000-08:00' + updated_at: '2025-01-15T10:30:00.000-08:00' + occupations: + - code: 15-1252 + name: Software Developers, Systems Software + description: Research, design, develop, and test operating systems-level software. + experience_level: skilled + time_percentage: '1.0' + primary: true + BLS-Occupation: + type: object + description: A Bureau of Labor Statistics occupation code with its title and description, used for salary estimate calculations. + properties: + code: + type: string + description: Bureau of Labor Statistics (BLS) occupation code. + example: 15-1252 + title: + type: string + description: Occupation title. + example: Software Developers + description: + type: string + description: Occupation description. + example: Research, design, and develop computer and network software or specialized utility programs. + required: + - code + - title + x-examples: + success_status: + code: 15-1252 + title: Software Developers + description: Research, design, and develop computer and network software or specialized utility programs. Signatory: description: The representation of a company's signatory type: object @@ -29113,6 +15348,162 @@ components: state: CA zip: '94107' country: USA + Signatory-Invite-Request: + type: object + description: Request body for inviting a signatory. + properties: + first_name: + type: string + description: The signatory's first name. + middle_initial: + type: string + last_name: + type: string + description: The signatory's last name. + title: + type: string + description: The signatory's title (e.g. CEO, President). + phone: + type: string + description: The signatory's phone number. + birthday: + type: string + format: date + description: The signatory's date of birth. + email: + type: string + format: email + description: The signatory's email address. + ssn: + type: string + description: The signatory's SSN. Required for create with complete information; not used for invite. + home_address: + type: object + description: The signatory's home address. + properties: + street_1: + type: string + street_2: + type: string + city: + type: string + state: + type: string + zip: + type: string + country: + type: string + default: USA + required: + - first_name + - last_name + - email + x-tags: + - Signatories + Signatory-Create-Request: + type: object + description: Request body for creating a signatory with complete information. All listed required fields must be provided. + properties: + first_name: + type: string + description: The signatory's first name. + middle_initial: + type: string + last_name: + type: string + description: The signatory's last name. + title: + type: string + description: The signatory's title (e.g. CEO, President). + phone: + type: string + description: The signatory's phone number. + birthday: + type: string + format: date + description: The signatory's date of birth. + email: + type: string + format: email + description: The signatory's email address. + ssn: + type: string + description: The signatory's SSN. + home_address: + type: object + description: The signatory's home address. + properties: + street_1: + type: string + street_2: + type: string + city: + type: string + state: + type: string + zip: + type: string + country: + type: string + default: USA + required: + - street_1 + - city + - state + - zip + required: + - first_name + - last_name + - email + - title + - phone + - birthday + - ssn + - home_address + x-tags: + - Signatories + Signatory-Update-Request: + type: object + description: Request body for updating a signatory. Email cannot be updated. + properties: + version: + type: string + description: Current version of the signatory (required for optimistic concurrency). + first_name: + type: string + middle_initial: + type: string + last_name: + type: string + title: + type: string + phone: + type: string + birthday: + type: string + format: date + ssn: + type: string + description: The signatory's SSN. + home_address: + type: object + properties: + street_1: + type: string + street_2: + type: string + city: + type: string + state: + type: string + zip: + type: string + country: + type: string + required: + - version + x-tags: + - Signatories Flow: description: The representation of a flow in Gusto white-label UI. type: object @@ -29125,6 +15516,42 @@ components: properties: url: type: string + Create-Flow-Request: + description: Request body for creating a flow. + type: object + required: + - flow_type + properties: + flow_type: + type: string + description: 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"). + example: company_onboarding + entity_uuid: + type: string + description: UUID of the target entity applicable to the flow. This field is optional for company flows. + entity_type: + type: string + description: The type of target entity applicable to the flow. This field is optional for company flows. + enum: + - Company + - Employee + - Contractor + - Payroll + options: + type: object + description: Optional configuration object that varies based on the flow_type. This can contain arbitrary key-value pairs specific to the flow being generated. + additionalProperties: true + x-examples: + example: + flow_type: company_onboarding + with_entity: + flow_type: employee_form_signing + entity_uuid: 1b71bb5b-4811-46e9-8a8a-cf5521cbeda6 + entity_type: Employee + with_options: + flow_type: company_retirement_benefits + options: + provider: guideline Unprocessed-Termination-Pay-Period: description: The representation of an unprocessed termination pay period. type: object @@ -29379,6 +15806,121 @@ components: hours: type: string description: Hours accrued during this pay period. + Employee-Federal-Tax-Pre2020: + title: Employee-Federal-Tax-Pre2020 + type: object + description: Federal tax information for employees using the pre-2020 W4 form. + properties: + version: + type: string + description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. + employee_uuid: + type: string + description: The UUID of the employee. + employee_id: + type: integer + description: The internal ID of the employee. + company_id: + type: integer + description: The internal ID of the company. + w4_data_type: + type: string + description: The version of w4 form. + enum: + - pre_2020_w4 + filing_status: + type: + - string + - 'null' + description: |- + It determines which tax return form an individual will use and is an important factor in computing taxable income. One of: + - Single + - Married + - Head of Household + - Exempt from withholding + - Married, but withhold as Single + federal_withholding_allowance: + type: + - number + - 'null' + description: An exemption from paying a certain amount of income tax. May be null when filing_status is "Exempt from withholding". + additional_withholding: + type: string + description: An additional withholding dollar amount. + required: + - version + - w4_data_type + - additional_withholding + x-tags: + - Employee Tax Setup + Employee-Federal-Tax-Rev2020: + title: Employee-Federal-Tax-Rev2020 + type: object + description: Federal tax information for employees using the revised 2020 W4 form. + properties: + version: + type: string + description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. + employee_uuid: + type: string + description: The UUID of the employee. + employee_id: + type: integer + description: The internal ID of the employee. + company_id: + type: integer + description: The internal ID of the company. + w4_data_type: + type: string + description: The version of w4 form. + enum: + - rev_2020_w4 + filing_status: + type: + - string + - 'null' + description: |- + It determines which tax return form an individual will use and is an important factor in computing taxable income. One of: + - Single + - Married + - Head of Household + - Exempt from withholding + extra_withholding: + type: + - string + - 'null' + description: An employee can request an additional amount to be withheld from each paycheck. + two_jobs: + type: + - boolean + - 'null' + description: If there are only two jobs (i.e., you and your spouse each have a job, or you have two), you can set it to true. + dependents_amount: + type: + - string + - 'null' + description: A dependent is a person other than the taxpayer or spouse who entitles the taxpayer to claim a dependency exemption. + other_income: + type: + - string + - 'null' + description: Other income amount. + deductions: + type: + - string + - 'null' + description: Deductions other than the standard deduction to reduce withholding. + required: + - version + - w4_data_type + - filing_status + - extra_withholding + - two_jobs + - dependents_amount + - other_income + - deductions + x-tags: + - Employee Tax Setup Employee-Federal-Tax: title: Employee-Federal-Tax type: object @@ -29510,79 +16052,6 @@ components: - employee_uuid - state - questions - Employee-State-Tax-Question: - type: object - properties: - label: - type: string - description: A short title for the question - description: - type: - - string - - 'null' - description: An explaination of the question - this may contain inline html formatted links. - key: - type: string - description: A unique identifier of the question (for the given state) - used for updating the answer. - is_question_for_admin_only: - type: boolean - input_question_format: - "$ref": "#/components/schemas/Employee-State-Tax-Input-Question-Format" - answers: - type: array - items: - "$ref": "#/components/schemas/Employee-State-Tax-Answer" - required: - - label - - description - - key - - input_question_format - - answers - - is_question_for_admin_only - Employee-State-Tax-Answer: - type: object - properties: - value: - oneOf: - - type: string - - type: number - - type: boolean - - type: 'null' - description: The answer to the corresponding question - this may be a string, number, boolean, or null. - valid_from: - type: string - description: The effective date of the answer - currently always “2010-01-01”. - valid_up_to: - type: - - string - - 'null' - description: The effective end date of the answer - currently always null. - Employee-State-Tax-Input-Question-Format: - type: object - properties: - type: - type: string - description: Describes the type of question - Text, Number, Select, Currency, Date - options: - type: array - uniqueItems: true - description: For "Select" type questions, the allowed values and display labels. - items: - type: object - properties: - value: - description: An allowed value to answer the question - oneOf: - - type: string - - type: boolean - - type: number - label: - type: string - description: A display label that corresponds to the answer value - required: - - label - required: - - type Federal-Tax-Details: title: Federal-Tax-Details type: object @@ -29687,6 +16156,70 @@ components: deposit_schedule: Semiweekly x-tags: - Federal Tax Details + Federal-Tax-Details-Update: + title: Federal-Tax-Details-Update + type: object + required: + - version + properties: + version: + type: string + example: 6cb95e00540706ca48d4577b3c839fbe + description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. + legal_name: + type: string + example: Acme Corp. + description: The legal name of the company + ein: + type: string + example: '123456789' + description: The company's Employer Identification Number (EIN). Must be 9 digits. Dashes are optional (e.g., '12-3456789' or '123456789'). + tax_payer_type: + type: string + example: LLP + enum: + - C-Corporation + - S-Corporation + - Sole proprietor + - LLC + - LLP + - Limited partnership + - Co-ownership + - Association + - Trusteeship + - General partnership + - Joint venture + - Non-Profit + description: |- + What type of tax entity the company is. One of: + - C-Corporation + - S-Corporation + - Sole proprietor + - LLC + - LLP + - Limited partnership + - Co-ownership + - Association + - Trusteeship + - General partnership + - Joint venture + - Non-Profit + filing_form: + type: string + example: '944' + enum: + - '941' + - '944' + description: |- + The form used by the company for federal tax filing. One of: + - 941 (Quarterly federal tax return form) + - 944 (Annual federal tax return form) + taxable_as_scorp: + type: boolean + example: false + description: Whether the company is taxed as an S-Corporation + x-tags: + - Federal Tax Details Employee-Bank-Account: title: Employee-Bank-Account type: object @@ -29766,6 +16299,49 @@ components: - routing_number - hidden_account_number - account_type + Contractor-Bank-Account-List: + title: Contractor-Bank-Account-List + type: array + items: + "$ref": "#/components/schemas/Contractor-Bank-Account" + x-examples: + example: + - uuid: 1531e824-8d9e-4bd8-9f90-0d04608125d7 + contractor_uuid: 9fcf1b1d-8886-4691-9283-383d3bdd4fd9 + name: BoA Checking Account + routing_number: '266905059' + hidden_account_number: XXXX1207 + account_type: Checking + Contractor-Bank-Account-Create-Request-Body: + title: Contractor-Bank-Account-Create-Request-Body + type: object + required: + - name + - routing_number + - account_number + - account_type + properties: + name: + type: string + description: Name for the bank account + routing_number: + type: string + description: The bank account's routing number + account_number: + type: string + description: The bank account's account number + account_type: + type: string + enum: + - Checking + - Savings + description: Bank account type + x-examples: + example: + name: BoA Checking Account + routing_number: '266905059' + account_number: '5809431207' + account_type: Checking DetailedPaymentAccountSplit: title: DetailedPaymentAccountSplit type: object @@ -29986,6 +16562,17 @@ components: editable: type: boolean description: Whether the value of this requirement can be updated + payroll_blocking: + type: boolean + description: | + Whether this requirement, when blank, would block payroll processing for the company in this state. + Stable across changes to the field's value: a `payroll_blocking: true` field reports `true` whether + currently empty or populated. + default_value_applied: + type: boolean + description: 'Whether the current `value` is a default rather than an explicitly set one. + +' Tax-Requirement-Metadata: type: object x-examples: @@ -30192,6 +16779,8 @@ components: description: If you have run payroll in the past in GA, find your withholding number on notices received from the Georgia Department of Revenue, or call the agency at (877) 423-6711. If you don’t have a number yet, you should register the business online. The last two characters of your ID must be upper case letters. value: 1233214-AB editable: true + payroll_blocking: false + default_value_applied: false metadata: type: account_number mask: "#######-^^" @@ -30202,6 +16791,8 @@ components: description: If you have run payroll in the past in GA, find your DOL account number on notices received from the Georgia Department of Labor, or call the agency at (404) 232-3300. If you don’t have an account number yet, please follow the instructions here to register your business with the Georgia Dept. of Labor. value: 474747-88 editable: true + payroll_blocking: false + default_value_applied: false metadata: type: account_number mask: "######-##" @@ -30217,6 +16808,8 @@ components: description: Instead of paying state unemployment insurance (SUI) taxes quarterly, some businesses (like non-profits or government organizations) may be allowed to reimburse the state if one of their employees collects unemployment benefits. value: false editable: true + payroll_blocking: false + default_value_applied: false metadata: type: radio options: @@ -30234,6 +16827,8 @@ components: description: Haven't received your assigned rate yet? Find the new employer rate and enter it here. value: '0.05' editable: true + payroll_blocking: true + default_value_applied: false metadata: type: tax_rate validation: @@ -30251,6 +16846,8 @@ components: description: Georgia rejects payments made on the wrong schedule. GA employers receive their schedule on a registration verification letter after registering with the Georgia Dept. of Revenue. If you are unsure, call the agency at (877) 423-6711. If you did not register your business yet, please register the business with the Georgia Dept. of Revenue. value: Monthly editable: true + payroll_blocking: false + default_value_applied: false metadata: type: select options: @@ -30271,6 +16868,8 @@ components: description: Georgia rejects payments made on the wrong schedule. GA employers receive their schedule on a registration verification letter after registering with the Georgia Dept. of Revenue. If you are unsure, call the agency at (877) 423-6711. If you did not register your business yet, please register the business with the Georgia Dept. of Revenue. value: Monthly editable: true + payroll_blocking: false + default_value_applied: false metadata: type: select options: @@ -30295,6 +16894,8 @@ components: description: The deposit schedule assigned by the state agency. value: Monthly editable: true + payroll_blocking: false + default_value_applied: false metadata: type: select options: @@ -30319,6 +16920,8 @@ components: description: Instead of paying state unemployment insurance (SUI) taxes quarterly, some businesses may be allowed to reimburse the state if one of their employees collects unemployment benefits. value: false editable: true + payroll_blocking: false + default_value_applied: false metadata: type: radio options: @@ -30343,6 +16946,8 @@ components: description: Your state withholding account number. value: 1233214-AB editable: true + payroll_blocking: false + default_value_applied: false metadata: type: account_number mask: "#######-^^" @@ -30364,6 +16969,8 @@ components: description: The assigned SUI tax rate for this state. value: '0.05' editable: true + payroll_blocking: true + default_value_applied: false metadata: type: tax_rate validation: @@ -30380,6 +16987,74 @@ components: type: array items: "$ref": "#/components/schemas/Tax-Requirement-Set" + Tax-Requirement-States-List: + type: array + x-examples: + success_status: + - state: GA + setup_status: not_started + default_rates_applied: false + ready_to_run_payroll: false + - state: CA + setup_status: complete + default_rates_applied: false + ready_to_run_payroll: true + items: + type: object + properties: + state: + "$ref": "#/components/schemas/State" + setup_status: + type: string + enum: + - not_started + - in_progress + - complete + description: | + The current status of the state tax setup. + - `not_started`: No requirements have been filled + - `in_progress`: Some requirements have been filled, or default rates are applied + - `complete`: All requirements have been filled without default rates + default_rates_applied: + type: boolean + description: Whether the state is using system-assigned default SUI rates rather than employer-specific rates. + ready_to_run_payroll: + type: boolean + description: Whether the state tax setup is sufficiently complete for the company to run payroll. + Tax-Requirement-Set-Update: + type: array + description: Array of requirement sets to update. Each set corresponds to a category of requirements for the state. + items: + type: object + required: + - key + - state + properties: + key: + "$ref": "#/components/schemas/Tax-Requirement-Set-Key" + state: + "$ref": "#/components/schemas/State" + effective_from: + "$ref": "#/components/schemas/Tax-Requirement-Effective-From" + requirements: + type: array + items: + type: object + required: + - key + properties: + key: + "$ref": "#/components/schemas/Tax-Requirement-Key" + value: + "$ref": "#/components/schemas/Tax-Requirements-Value" + Tax-Requirements-Value: + description: The value or "answer" for a tax requirement. Type depends on the requirement metadata type (e.g. string for text/account_number, boolean for radio/checkbox, number for percent/currency/tax_rate). Null when the requirement has not been answered. + example: 1233214-AB + oneOf: + - type: boolean + - type: string + - type: number + - type: 'null' Tax-Requirement-Set-Key: title: Tax-Requirement-Set-Key type: string @@ -30565,6 +17240,88 @@ components: - accrual_method - is_active - employees + Time-Off-Policy-Request-Base: + type: object + description: Base Request Objectfor creating or updating a time off policy + properties: + name: + type: string + description: Name of the time off policy + example: Vacation Policy + policy_type: + type: string + description: Type of the time off policy. Currently only "vacation" and "sick" are supported + enum: + - vacation + - sick + accrual_method: + type: string + description: Accrual method of the time off policy + enum: + - unlimited + - per_pay_period + - per_calendar_year + - per_anniversary_year + - per_hour_worked + - per_hour_worked_no_overtime + - per_hour_paid + - per_hour_paid_no_overtime + accrual_rate: + type: + - string + - 'null' + description: The rate at which the time off hours will accrue for an employee on the policy. Represented as a float, e.g. "40.0". + accrual_rate_unit: + type: + - string + - 'null' + description: 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, e.g. "40.0". + paid_out_on_termination: + type: boolean + description: Boolean representing if an employee's accrued time off hours will be paid out on termination. If accrual_method is unlimited, then paid_out_on_termination must be `false`. + accrual_waiting_period_days: + type: + - integer + - 'null' + description: Number of days before an employee on the policy will begin accruing time off hours. If accrual_method is per_anniversary_year, per_calendar_year, or unlimited, then accrual_waiting_period_days should be 0. + carryover_limit_hours: + type: + - string + - 'null' + description: The max number of hours an employee can carryover from one year to the next. If accrual_method is unlimited, then carryover_limit_hours must be blank. + max_accrual_hours_per_year: + type: + - string + - 'null' + description: The max number of hours an employee can accrue in a year. If accrual_method is yearly (per_anniversary_year, per_calendar_year) or unlimited, then max_accrual_hours_per_year must be blank. + max_hours: + type: + - string + - 'null' + description: The max number of hours an employee can accrue. If accrual_method is unlimited, then max_hours must be blank. + policy_reset_date: + type: + - string + - 'null' + description: The date the policy resets. Format MM-DD + complete: + type: boolean + description: boolean representing if a policy has completed configuration + Time-Off-Policy-Request: + type: object + description: Request body for creating a time off policy + allOf: + - "$ref": "#/components/schemas/Time-Off-Policy-Request-Base" + - type: object + required: + - name + - policy_type + - accrual_method + Time-Off-Policy-Update-Request: + type: object + description: Request body for updating a time off policy + allOf: + - "$ref": "#/components/schemas/Time-Off-Policy-Request-Base" Time-Off-Activity: type: object x-examples: @@ -30620,6 +17377,29 @@ components: - 'null' format: float description: The amount the time off balance changed as a result of the activity + Time-Off-Activity-List: + type: array + description: A list of time off activities for an employee + items: + "$ref": "#/components/schemas/Time-Off-Activity" + x-examples: + example: + - policy_uuid: a7838f74-4c29-4b70-9bfb-02a4e3e60709 + time_off_type: vacation + policy_name: Paid Time Off + event_type: TimeOffEvent::AddToPolicy + event_description: 'Added to policy: Vacation Per Hour Worked' + effective_time: '2022-09-27T13:43:03.000-07:00' + balance: '0.0' + balance_change: '0.0' + - policy_uuid: a7838f74-4c29-4b70-9bfb-02a4e3e60709 + time_off_type: vacation + policy_name: Paid Time Off + event_type: TimeOffEvent::Accrual + event_description: Accrual + effective_time: '2022-09-27T14:43:03.000-07:00' + balance: '2.0' + balance_change: '2.0' Holiday-Pay-Policy: type: object x-examples: @@ -30797,145 +17577,98 @@ components: - company_uuid - federal_holidays - employees - Paid-Holidays: - type: array - description: Representation of a company's paid holidays as described by their holiday pay policy - items: - "$ref": "#/components/schemas/Paid-Holiday" - Minimum-Wage: + Holiday-Pay-Policy-Request: type: object - description: Representation of a Minimum Wage + description: Request body for creating or updating a holiday pay policy properties: - uuid: - type: string - description: unique identifier of a minimum wage - wage: - type: string - format: float - description: The wage rate for a minimum wage record. Represented as a float, e.g. "15.0". - wage_type: - type: string - description: The type of wage the minimum wage applies to, e.g. "Regular", "Regular-Industry-Specific". - effective_date: - type: string - format: date - description: The date the minimum wage rule is effective on. - authority: - type: string - description: The governing authority that created the minimum wage, e.g. "City", "State", or "Federal". - notes: - type: string - description: Description of parties the minimum wage applies to. - required: - - uuid - - wage - - wage_type - - effective_date - - authority - Notification: + federal_holidays: + type: object + description: An object containing federal holiday objects, each containing a boolean selected property. + properties: + new_years_day: + type: object + properties: + selected: + type: boolean + mlk_day: + type: object + properties: + selected: + type: boolean + presidents_day: + type: object + properties: + selected: + type: boolean + memorial_day: + type: object + properties: + selected: + type: boolean + juneteenth: + type: object + properties: + selected: + type: boolean + independence_day: + type: object + properties: + selected: + type: boolean + labor_day: + type: object + properties: + selected: + type: boolean + columbus_day: + type: object + properties: + selected: + type: boolean + veterans_day: + type: object + properties: + selected: + type: boolean + thanksgiving: + type: object + properties: + selected: + type: boolean + christmas_day: + type: object + properties: + selected: + type: boolean + Paid-Holiday: type: object + description: A paid holiday derived from the company's holiday pay policy + x-examples: + success_status: + holiday_name: New Year's Day + holiday_key: new_years_day + start_date: '2023-01-02' + end_date: '2023-01-02' properties: - uuid: - type: string - description: Unique identifier of a notification. - company_uuid: - type: string - description: Unique identifier of the company to which the notification belongs. - title: - type: string - description: The title of the notification. This highlights the actionable component of the notification. - message: - type: string - description: The message of the notification. This provides additional context for the user and recommends a specific action to resolve the notification. - status: - type: string - description: Represents the notification's status as managed by our system. It is updated based on observable system events and internal business logic, and does not reflect resolution steps taken outside our system. This field is read-only and cannot be modified via the API. - enum: - - open - - resolved - - expired - category: - type: string - description: The notification's category. - actionable: - type: boolean - description: Indicates whether a notification requires action or not. If false, the notification provides critical information only. - can_block_payroll: - type: boolean - description: Indicates whether a notification may block ability to run payroll. If true, we suggest that these notifications are prioritized to your end users. - published_at: - type: string - description: Timestamp of when the notification was published. - due_at: + holiday_key: type: - string - 'null' - description: Timestamp of when the notification is due. If the notification has no due date, this field will be null. - template_variables: - type: object - description: An object containing template variables used to render the notification. The structure of this object depends on the notification category. Each category defines a fixed set of variable names (keys), which are always present. The values of these variables can vary depending on the specific notification instance. - additionalProperties: - type: string - resources: - type: array - description: An array of entities relevant to the notification - items: - type: object - properties: - entity_type: - type: string - description: The type of entity being described. - enum: - - BankAccount - - Contractor - - ContractorPayment - - Employee - - Payroll - - PaySchedule - - RecoveryCase - - Signatory - - Wire In Request - entity_uuid: - type: string - description: Unique identifier of the entity - reference_type: - type: string - description: Optional. The type of a resource that is related to the one described by entity_type and entity_uuid. For instance, if the entity_type is “BankAccount”, the reference_type could be the “Employee” or “Contractor” to whom the bank account belongs. - reference_uuid: - type: string - description: Optional. Unique identifier of the reference. - required: - - entity_type - - entity_uuid - required: - - uuid - - company_uuid - - title - - message - - category - - actionable - - status - - published_at - - due_at - - resources - - can_block_payroll - x-examples: - notification_show: - uuid: 7b1d0df1-6403-4a06-8768-c1dd7d24d27a - company_uuid: 88f7cca1-dcad-4d20-84db-7fb80303d69f - title: 'Action required: Additional information needed to process payroll' - message: If we do not receive this information as soon as possible, your payroll may not be processed on time. - status: open - category: information_request - actionable: true - can_block_payroll: true - published_at: '2022-01-01T00:00:00.000Z' - due_at: '2022-02-01T00:00:00.000Z' - template_variables: - blocked_task: Payroll - resources: - - entity_type: Employee - entity_uuid: 21b6f9ce-0ac4-4745-8d8a-127f8c0f00f2 + description: The holiday's identifier (null for custom holidays) + holiday_name: + type: string + description: The holiday's official name + start_date: + type: string + description: The holiday's start date (YYYY-MM-DD) + end_date: + type: string + description: The holiday's end date (YYYY-MM-DD) + Paid-Holidays: + type: array + description: Representation of a company's paid holidays as described by their holiday pay policy + items: + "$ref": "#/components/schemas/Paid-Holiday" Event: type: object x-examples: @@ -30974,6 +17707,27 @@ components: description: Time at which this event was created. Measured in seconds since the Unix epoch. required: - uuid + Event-List: + type: array + description: A list of events + x-examples: + success_status: + - uuid: f7397a24-57ad-4fae-b011-d258e8232900 + event_type: employee.created + resource_type: Company + resource_uuid: 92a20431-9489-4bde-ad27-6feb20b969d5 + entity_type: Employee + entity_uuid: 92a20431-9489-4bde-ad27-6feb20b969d5 + timestamp: 1686784995 + - uuid: a1b2c3d4-e5f6-7890-abcd-ef1234567890 + event_type: company.provisioned + resource_type: Company + resource_uuid: 92a20431-9489-4bde-ad27-6feb20b969d5 + entity_type: Company + entity_uuid: 92a20431-9489-4bde-ad27-6feb20b969d5 + timestamp: 1686784994 + items: + "$ref": "#/components/schemas/Event" Invoice-Data: type: object x-examples: @@ -31082,6 +17836,69 @@ components: - question_uuid - question_text - response_type + Recurring-Reimbursement-List: + type: array + x-examples: + success_status: + - uuid: 04ca1051-dcec-4cb7-829c-dfbffdf4af23 + employee_uuid: 73c96cc6-f8c9-4513-b3f1-4301351178d6 + version: 3b8eda8460f7acabd86ceec924e0ae74 + description: Travel expenses + created_at: '2025-11-03T09:03:20.000-08:00' + updated_at: '2025-11-03T09:03:20.000-08:00' + amount: '100.00' + - uuid: e3fc7aae-5053-44bf-99e1-3636df0d1f5b + employee_uuid: 73c96cc6-f8c9-4513-b3f1-4301351178d6 + version: 30c1aeb356a70e0a71275414e5f29b7e + description: Meal allowance + created_at: '2025-11-03T09:03:20.000-08:00' + updated_at: '2025-11-03T09:03:20.000-08:00' + amount: '50.00' + items: + "$ref": "#/components/schemas/Recurring-Reimbursement" + Recurring-Reimbursement: + type: object + x-examples: + success_status: + uuid: b739f253-b028-443b-b6cf-97a555c3d493 + employee_uuid: 346e1409-1c97-4524-9ebb-0c0c169e35cb + version: cf9b64404e63d325c762aaad20ca7a39 + description: Office supplies + created_at: '2025-11-03T09:03:24.000-08:00' + updated_at: '2025-11-03T09:03:24.000-08:00' + amount: '75.50' + properties: + uuid: + type: string + description: The unique identifier of this recurring reimbursement. + readOnly: true + employee_uuid: + type: string + description: The UUID of the employee. + readOnly: true + description: + type: string + description: The description of the reimbursement. + amount: + type: string + description: The dollar amount of the reimbursement. + version: + type: string + description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. + created_at: + type: string + description: The timestamp when this reimbursement was created. + readOnly: true + updated_at: + type: string + description: The timestamp when this reimbursement was last updated. + readOnly: true + required: + - uuid + - employee_uuid + - description + - amount + - version Recovery-Case: type: object x-examples: @@ -31239,6 +18056,26 @@ components: description: The description of the ACH transaction. Can be used to identify the ACH transaction on the recipient's bank statement. required: - uuid + Ach-Transaction-List: + type: array + items: + "$ref": "#/components/schemas/Ach-Transaction" + x-examples: + example: + - uuid: 123e4567-e89b-12d3-a456-426655440000 + company_uuid: 456e7890-e12b-34c5-d678-901234567890 + payment_event_type: Payroll + payment_event_uuid: 789e0123-e45f-67ab-c890-123456789012 + recipient_type: Employee + recipient_uuid: 012e3456-f78d-90ab-12cd-345678901234 + error_code: + transaction_type: Credit employee pay + payment_status: submitted + payment_direction: credit + payment_event_check_date: '2023-10-02' + payment_date: '2023-10-17' + amount: '123.00' + description: PAY 380654 Wire-In-Request: type: object x-examples: @@ -31329,6 +18166,205 @@ components: wire_in_deadline: type: string description: Deadline to submit the wire in + Wire-In-Request-List: + type: array + items: + "$ref": "#/components/schemas/Wire-In-Request" + x-examples: + example: + - uuid: c5fdae57-5483-4529-9aae-f0edceed92d4 + status: awaiting_funds + origination_bank: JP Morgan Chase + origination_bank_address: 1 Chase Plaza, New York, NY 10081 + recipient_name: Gusto, Inc + recipient_address: 525 20th Street, San Francisco, CA 94107 + recipient_account_number: '21911761' + recipient_routing_number: '123454321' + additional_notes: + bank_name: + date_sent: + unique_tracking_code: 1trvxwxp57zf + payment_type: Payroll + payment_uuid: 5faae454-e629-490b-a72a-c022c2c9e6bc + amount_sent: + requested_amount: '1014500.00' + wire_in_deadline: '2024-06-21T18:00:00Z' + - uuid: a47fc11d-8d92-4b3e-9f2a-3a23b9d8e7d1 + status: awaiting_funds + origination_bank: JP Morgan Chase + origination_bank_address: 1 Chase Plaza, New York, NY 10081 + recipient_name: Gusto, Inc + recipient_address: 525 20th Street, San Francisco, CA 94107 + recipient_account_number: '21911761' + recipient_routing_number: '123454321' + additional_notes: + bank_name: + date_sent: + unique_tracking_code: 6kfhwxq2crsm + payment_type: ContractorPaymentGroup + payment_uuid: 8b6c3d70-9b8e-4d4d-b6a1-a1f3a6d9b2c4 + amount_sent: + requested_amount: '15000.00' + wire_in_deadline: '2024-06-21T18:00:00Z' + Wire-In-Request-Update-Request-Body: + type: object + properties: + date_sent: + type: string + description: The date the wire was sent + example: '2024-06-10' + bank_name: + type: string + description: Name of the bank sending the wire + example: Chase + amount_sent: + type: string + description: Amount of money sent + example: '314500.00' + additional_notes: + type: string + description: Additional notes + example: Wire for 2024-06-15 payroll. + required: + - date_sent + - bank_name + - amount_sent + Payroll-Sync: + type: object + description: Record representing the sync of time sheet data to payroll. + properties: + uuid: + type: string + format: uuid + description: Unique identifier of the payroll sync. + example: 123e4567-e89b-12d3-a456-426655440000 + company_uuid: + type: string + format: uuid + description: Unique identifier of the company to which the payroll sync belongs. + example: 123e4567-e89b-12d3-a456-426655440001 + status: + type: string + readOnly: true + enum: + - pending + - in_progress + - success + - failure + - partial_success + description: | + The current status of the payroll sync. READ-ONLY. + + ## State Transitions + ``` + pending ──────► in_progress ──────► success + ├─────► failure + └─────► partial_success + ``` + + ### Valid Transitions + - `pending` → `in_progress`: Automatic when processing begins + - `in_progress` → `success`: All time sheet data synced successfully + - `in_progress` → `failure`: Sync failed entirely + - `in_progress` → `partial_success`: Some members failed to sync + example: pending + kind: + type: string + enum: + - regular + description: | + The kind of payroll sync. + - `regular`: A regular payroll sync + example: regular + pay_schedule_uuid: + type: string + format: uuid + description: Unique identifier of the pay schedule associated with this sync. + example: 123e4567-e89b-12d3-a456-426655440002 + pay_period_start_date: + type: string + format: date + description: The start date of the pay period per ISO 8601 format. + example: '2025-01-01' + pay_period_end_date: + type: string + format: date + description: The end date of the pay period per ISO 8601 format. + example: '2025-01-15' + submitted_at: + type: string + format: date-time + description: Datetime for when the payroll sync was submitted. + example: '2025-01-16T12:00:00Z' + completed_at: + type: + - string + - 'null' + format: date-time + description: Datetime for when the payroll sync completed. Null if the sync is still in progress. + example: '2025-01-16T13:00:00Z' + errors: + type: array + description: Errors encountered during the sync, if any. Each error follows the standard entity error format. + items: + "$ref": "#/components/schemas/Entity-Error-Object" + warnings: + type: array + description: Warnings encountered during the sync, if any. + items: + type: string + x-examples: + pending_sync: + uuid: 123e4567-e89b-12d3-a456-426655440000 + company_uuid: 123e4567-e89b-12d3-a456-426655440001 + status: pending + kind: regular + pay_schedule_uuid: 123e4567-e89b-12d3-a456-426655440002 + pay_period_start_date: '2025-01-01' + pay_period_end_date: '2025-01-15' + submitted_at: '2025-01-16T12:00:00Z' + completed_at: + completed_sync: + uuid: 123e4567-e89b-12d3-a456-426655440000 + company_uuid: 123e4567-e89b-12d3-a456-426655440001 + status: success + kind: regular + pay_schedule_uuid: 123e4567-e89b-12d3-a456-426655440002 + pay_period_start_date: '2025-01-01' + pay_period_end_date: '2025-01-15' + submitted_at: '2025-01-16T12:00:00Z' + completed_at: '2025-01-16T13:00:00Z' + Payroll-Sync-Create-Request-Body: + type: object + required: + - kind + - pay_schedule_uuid + - pay_period_start_date + - pay_period_end_date + properties: + kind: + type: string + enum: + - regular + description: | + The kind of payroll sync. + - `regular`: A regular payroll sync + example: regular + pay_schedule_uuid: + type: string + format: uuid + description: Unique identifier of the pay schedule to sync time sheets for. + example: 123e4567-e89b-12d3-a456-426614174000 + pay_period_start_date: + type: string + format: date + description: The start date of the pay period per ISO 8601 format. + example: '2025-01-01' + pay_period_end_date: + type: string + format: date + description: The end date of the pay period per ISO 8601 format. + example: '2025-01-15' Time-Sheet: type: object x-examples: @@ -31432,15 +18468,169 @@ components: description: Unique identifier of the entry. hours_worked: type: string - format: float - description: Hours worked for this pay classification. Represented as a string, e.g. "1.500". - pay_classification: + format: float + description: Hours worked for this pay classification. Represented as a string, e.g. "1.500". + pay_classification: + type: string + description: Pay classification for the entry. + enum: + - Regular + - Overtime + - Double overtime + Time-Sheet-Create-Body: + type: object + description: Request body for creating a time sheet. + required: + - entity_uuid + - entity_type + - time_zone + - shift_started_at + properties: + entity_uuid: + type: string + description: Unique identifier of the entity associated with the time sheet. + entity_type: + type: string + description: Type of entity associated with the time sheet. + job_uuid: + type: string + description: Unique identifier of the job for which time is tracked. + time_zone: + type: string + description: Time zone of where the time is tracked. + shift_started_at: + type: string + format: date-time + description: ISO 8601 timestamp of when the shift was started. + shift_ended_at: + type: string + format: date-time + description: ISO 8601 timestamp of when the shift was ended. If the shift is still ongoing you can omit this field. + metadata: + type: object + additionalProperties: + type: string + maxLength: 500 + propertyNames: + type: string + maxLength: 40 + maxProperties: 50 + description: Metadata associated with the time sheet. Key-value pairs of arbitrary data. Both keys and values must be strings. + entries: + type: array + description: Entries associated with the time sheet. + items: + type: object + properties: + hours_worked: + type: number + format: float + maxDecimalPlaces: 3 + minimum: 0.001 + description: Hours worked for this pay classification. Should be passed as number with up to 3 decimal places. + pay_classification: + type: string + description: Pay classification for the entry. + enum: + - Regular + - Overtime + - Double overtime + x-examples: + Example: + entity_uuid: 123e4567-e89b-12d3-a456-426614174000 + entity_type: Employee + job_uuid: 123e4567-e89b-12d3-a456-426614174000 + time_zone: America/New_York + shift_started_at: '2024-06-10T09:00:00Z' + shift_ended_at: '2024-06-10T17:00:00Z' + metadata: + custom_field: custom value + entries: + - pay_classification: Regular + hours_worked: 1.5 + x-tags: + - Time Tracking + Time-Sheet-Update-Body: + type: object + description: Request body for updating a time sheet. + allOf: + - "$ref": "#/components/schemas/Versionable-Required" + - type: object + properties: + entity_uuid: + type: string + description: Unique identifier of the entity associated with the time sheet. + example: 123e4567-e89b-12d3-a456-426614174000 + entity_type: + type: string + description: Type of entity associated with the time sheet. + example: Employee + job_uuid: + type: string + description: Unique identifier of the job for which time was tracked. Currently is only supported for employees. + example: 123e4567-e89b-12d3-a456-426614174000 + time_zone: + type: string + description: Time zone of where the time was tracked. + example: America/New_York + shift_started_at: + type: string + format: date-time + description: The start time of the shift. Timestamp should be in ISO8601 + example: '2024-06-10T09:00:00Z' + shift_ended_at: + type: string + format: date-time + description: The end time of the shift. If the shift is still ongoing this will be null. + example: '2024-06-10T17:00:00Z' + metadata: + type: object + additionalProperties: + type: string + maxLength: 500 + propertyNames: type: string - description: Pay classification for the entry. - enum: - - Regular - - Overtime - - Double overtime + maxLength: 40 + maxProperties: 50 + description: Metadata associated with the time sheet. Key-value pairs of arbitrary data. Both keys and values must be strings. + entries: + type: array + description: Entries associated with the time sheet. + items: + type: object + properties: + uuid: + type: string + description: Unique identifier of the entry. + hours_worked: + type: number + format: float + maxDecimalPlaces: 3 + minimum: 0.001 + description: Hours worked for this pay classification. Should be passed as number with up to 3 decimal places. + pay_classification: + type: string + description: Pay classification for the entry. + enum: + - Regular + - Overtime + - Double overtime + x-examples: + Example: + version: 72deb67e16f7b92713c00d3582fa6c68 + entity_uuid: 123e4567-e89b-12d3-a456-426614174000 + entity_type: Employee + job_uuid: 123e4567-e89b-12d3-a456-426614174000 + time_zone: America/New_York + shift_started_at: '2024-06-10T09:00:00Z' + shift_ended_at: '2024-06-10T17:00:00Z' + metadata: + custom_field: custom value + entries: + - uuid: 123e4567-e89b-12d3-a456-426614174000 + hours_worked: 1.5 + x-tags: + - Time Tracking Company-Suspension: type: object description: Record representing the suspension of a company's Gusto account. @@ -31520,462 +18710,702 @@ components: description: type: string description: What kind of tax this is. - Minimum-Wage-List: + Company-Suspension-List: type: array + description: List of suspension records for a company. + items: + "$ref": "#/components/schemas/Company-Suspension" x-examples: success_status: - - uuid: 1b71bb5b-4811-46e9-8a8a-cf5521cbeda6 - authority: City - wage: '15.0' - wage_type: Regular - effective_date: '2017-01-01' - notes: large companies - - uuid: 87434623-b57d-4630-8da5-9dde599c7840 - authority: City - wage: '10.5' - wage_type: Regular - effective_date: '2017-01-01' - notes: large companies - - uuid: fa055c11-bfe4-4ac3-84dd-8502cf046b20 - authority: State - wage: '10.5' - wage_type: Regular - effective_date: '2017-01-01' - notes: large companies - - uuid: cdd9dfc2-6465-4693-ae60-0eecff35038c - authority: Federal - wage: '10.5' - wage_type: Regular - effective_date: '2017-01-01' - notes: large companies - items: - "$ref": "#/components/schemas/Minimum-Wage" - Employment-History-List: - type: array + - uuid: 3bd0fa7c-071e-4e85-a6bf-f73a69797694 + company_uuid: 3a0e3fb7-3d4b-4c7c-8ba0-9ce3c9f1f3be + effective_date: '2025-07-23' + reason: shutting_down + leaving_for: + reconcile_tax_method: refund_taxes + file_yearly_forms: false + file_quarterly_forms: false + comments: + tax_refunds: [] + - uuid: 2ad79a4e-2fbd-43ca-a77b-e9049e6cab15 + company_uuid: 3a0e3fb7-3d4b-4c7c-8ba0-9ce3c9f1f3be + effective_date: '2025-07-23' + reason: switching_provider + leaving_for: adp + reconcile_tax_method: refund_taxes + file_yearly_forms: false + file_quarterly_forms: false + comments: Company is transitioning to ADP for their payroll and HR needs + tax_refunds: [] + Company-Suspension-Creation-Errors: + type: object + allOf: + - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-examples: + missing_required_fields: + errors: + - error_key: reconcile_tax_method + category: invalid_attribute_value + message: Reconcile tax method is required + - error_key: reason + category: invalid_attribute_value + message: Reason is required + - error_key: file_yearly_forms + category: invalid_attribute_value + message: File yearly forms is required + gusto_com_requires_support: + errors: + - error_key: leaving_for + category: invalid_attribute_value + message: Switching to Gusto.com must be processed by our Customer Support team + leaving_for_required: + errors: + - error_key: leaving_for + category: invalid_attribute_value + message: Leaving for is required when switching providers + switching_provider_cannot_pay_taxes: + errors: + - error_key: reconcile_tax_method + category: invalid_attribute_value + message: Reconcile tax method must be refund_taxes when switching to a new payroll provider + pay_taxes_requires_quarterly_filing: + errors: + - error_key: file_quarterly_forms + category: invalid_attribute_value + message: File quarterly forms must be true when paying withheld taxes + Time-Off-Request: + type: object + description: The representation of a time off request. x-examples: success_status: - - hire_date: '2015-06-09' - termination_date: '2025-05-09' - file_new_hire_report: false - two_percent_shareholder: false - employment_status: full_time + uuid: 9145390f-0431-45ee-b8a0-6e7a8850d4cf + status: approved + employee_note: Vacation at Disney World! + employer_note: But Universal has Harry Potter World... + days: + '2019-06-01': '4.000' + '2019-06-02': '8.000' + '2019-06-03': '2.000' + request_type: vacation + policy_type: vacation + policy_uuid: ae382963-06b2-4b57-9780-8feda862bb70 + employee: + uuid: 05f8663b-5944-4cfb-910e-1ee0a6df7b42 + full_name: Jessica Gusto + approver: + uuid: 21d8dff4-ce09-4120-a274-3a5628bf6769 + full_name: Karen Gusto + initiator: + uuid: 05f8663b-5944-4cfb-910e-1ee0a6df7b42 + full_name: Jessica Gusto + properties: + uuid: + type: string + description: The UUID of the time off request. + readOnly: true + status: + type: string + description: The status of the time off request. + enum: + - pending + - approved + - declined + - consumed + readOnly: true + employee_note: + type: string + description: A note about the time off request, from the employee to the employer. + readOnly: true + employer_note: + type: string + description: A note about the time off request, from the employer to the employee. + readOnly: true + request_type: + type: string + description: The type of time off request. + deprecated: true + enum: + - vacation + - sick + readOnly: true + policy_type: + type: string + description: The type of the time off policy (e.g. vacation, sick). + readOnly: true + policy_uuid: + type: + - string + - 'null' + description: The UUID of the time off policy associated with this request. + readOnly: true + days: + description: An object that represents the days in the time off request. The keys of the object are the dates, formatted as a YYYY-MM-DD string. The values of the object are the number of hours requested off for each day, formatted as a string representation of a numeric decimal to the thousands place. + type: object + readOnly: true + employee: + type: object + description: '' + properties: + uuid: + type: string + description: The UUID of the employee the time off request is for. + readOnly: true + full_name: + type: string + description: The full name of the employee the time off request is for. + readOnly: true + readOnly: true + initiator: + type: + - object + - 'null' + description: '' + properties: + uuid: + type: string + description: The UUID of the employee who initiated the time off request. + readOnly: true + full_name: + type: string + description: The full name of the employee who initiated the time off request. + readOnly: true + readOnly: true + approver: + type: + - object + - 'null' + description: This value will be null if the request has not been approved. + properties: + uuid: + type: string + description: The UUID of the employee who approved the time off request. + readOnly: true + full_name: + type: string + description: The full name of the employee who approved the time off request. + readOnly: true + readOnly: true + Time-Off-Request-List: + type: array items: - description: The representation of an employee's individual employements. - type: object - properties: - hire_date: - type: string - description: The employee's start day of work for an employment. - termination_date: - type: - - string - - 'null' - description: The employee's last day of work for an employment. - file_new_hire_report: - type: boolean - description: The boolean flag indicating whether Gusto will file a new hire report for the employee. - two_percent_shareholder: - type: boolean - description: Whether the employee is a two percent shareholder of the company. This field only applies to companies with an S-Corp entity type. - employment_status: + "$ref": "#/components/schemas/Time-Off-Request" + x-examples: + success_status: + - uuid: 9145390f-0431-45ee-b8a0-6e7a8850d4cf + status: approved + employee_note: Vacation at Disney World! + employer_note: But Universal has Harry Potter World... + days: + '2019-06-01': '4.000' + '2019-06-02': '8.000' + '2019-06-03': '2.000' + request_type: vacation + policy_type: vacation + policy_uuid: ae382963-06b2-4b57-9780-8feda862bb70 + employee: + uuid: 05f8663b-5944-4cfb-910e-1ee0a6df7b42 + full_name: Jessica Gusto + approver: + uuid: 21d8dff4-ce09-4120-a274-3a5628bf6769 + full_name: Karen Gusto + initiator: + uuid: 05f8663b-5944-4cfb-910e-1ee0a6df7b42 + full_name: Jessica Gusto + - uuid: 944cbbf4-8b13-4c45-babd-11ff13e17581 + status: pending + employee_note: Coming down with the flu + employer_note: '' + days: + '2019-02-01': '8.000' + request_type: sick + policy_type: sick + policy_uuid: bf493c7e-1a2d-4e5f-8c9a-3d7b6e4f2a1c + employee: + uuid: c2236d10-959a-4bb9-a21d-e14c6df447b6 + full_name: James Gusto + approver: + initiator: + uuid: c2236d10-959a-4bb9-a21d-e14c6df447b6 + full_name: James Gusto + Embedded-Time-Off-Request: + type: object + description: The representation of a time off request. + required: + - uuid + - status + - employee_note + - employer_note + - policy_type + - policy_uuid + - days + - employee + - initiator + - approver + x-examples: + success_status: + uuid: ad158cfb-99e4-4741-9db3-0bd3a267f222 + status: pending + employee_note: Family vacation + employer_note: + days: + '2026-10-20': '8.000' + '2026-10-21': '8.000' + policy_type: vacation + policy_uuid: c2d9b1bd-3f36-4c2d-a727-b2af057d6a7f + employee: + uuid: 51924fa0-26c6-4d4c-8832-3ef0b422c67e + full_name: Alex Johnson + approver: + initiator: + uuid: 51924fa0-26c6-4d4c-8832-3ef0b422c67e + full_name: Alex Johnson + approved_status: + uuid: ad158cfb-99e4-4741-9db3-0bd3a267f222 + status: approved + employee_note: Family vacation + employer_note: + days: + '2026-10-20': '8.000' + '2026-10-21': '8.000' + policy_type: vacation + policy_uuid: c2d9b1bd-3f36-4c2d-a727-b2af057d6a7f + employee: + uuid: 51924fa0-26c6-4d4c-8832-3ef0b422c67e + full_name: Alex Johnson + approver: + uuid: 21d8dff4-ce09-4120-a274-3a5628bf6769 + full_name: Morgan Chen + initiator: + uuid: 51924fa0-26c6-4d4c-8832-3ef0b422c67e + full_name: Alex Johnson + declined_status: + uuid: ad158cfb-99e4-4741-9db3-0bd3a267f222 + status: declined + employee_note: Family vacation + employer_note: Not enough coverage + days: + '2026-10-20': '8.000' + '2026-10-21': '8.000' + policy_type: vacation + policy_uuid: c2d9b1bd-3f36-4c2d-a727-b2af057d6a7f + employee: + uuid: 51924fa0-26c6-4d4c-8832-3ef0b422c67e + full_name: Alex Johnson + approver: + initiator: + uuid: 51924fa0-26c6-4d4c-8832-3ef0b422c67e + full_name: Alex Johnson + properties: + uuid: + type: string + description: The UUID of the time off request. + example: ad158cfb-99e4-4741-9db3-0bd3a267f222 + readOnly: true + status: + type: string + description: The status of the time off request. + example: pending + enum: + - pending + - approved + - declined + - consumed + readOnly: true + employee_note: + type: + - string + - 'null' + description: A note about the time off request, from the employee to the employer. + example: Family vacation + readOnly: true + employer_note: + type: + - string + - 'null' + description: A note about the time off request, from the employer to the employee. + example: + readOnly: true + policy_type: + type: + - string + - 'null' + description: The type of the time off policy (e.g. vacation, sick). + example: vacation + readOnly: true + policy_uuid: + type: + - string + - 'null' + description: The UUID of the time off policy associated with this request. + example: c2d9b1bd-3f36-4c2d-a727-b2af057d6a7f + readOnly: true + days: + description: 'An object where keys are dates in YYYY-MM-DD format and values are hours as string decimals (e.g. {"2025-01-20": "8.000"}).' + type: object + additionalProperties: type: string - description: The employee's employment status. Supplying an invalid option will set the employment_status to *not_set*. - enum: - - part_time - - full_time - - part_time_eligible - - variable - - seasonal - not_set - Employee-Pay-Stubs-List: + example: + '2026-10-20': '8.000' + '2026-10-21': '8.000' + readOnly: true + employee: + type: object + description: '' + properties: + uuid: + type: string + description: The UUID of the employee the time off request is for. + example: 51924fa0-26c6-4d4c-8832-3ef0b422c67e + readOnly: true + full_name: + type: string + description: The full name of the employee the time off request is for. + example: Alex Johnson + readOnly: true + readOnly: true + initiator: + type: + - object + - 'null' + description: '' + properties: + uuid: + type: string + description: The UUID of the employee who initiated the time off request. + example: 51924fa0-26c6-4d4c-8832-3ef0b422c67e + readOnly: true + full_name: + type: string + description: The full name of the employee who initiated the time off request. + example: Alex Johnson + readOnly: true + readOnly: true + approver: + type: + - object + - 'null' + description: This value will be null if the request has not been approved. + properties: + uuid: + type: string + description: The UUID of the employee who approved the time off request. + example: 21d8dff4-ce09-4120-a274-3a5628bf6769 + readOnly: true + full_name: + type: string + description: The full name of the employee who approved the time off request. + example: Morgan Chen + readOnly: true + readOnly: true + Embedded-Time-Off-Request-List: type: array - x-examples: - success_status: - - uuid: d2cec746-caee-464a-bcaf-00d93f7049c9 - check_date: '2023-11-24' - gross_pay: '880.0' - net_pay: '541.02' - payroll_uuid: a039cafb-745e-4af4-bf1e-935a86fc18e0 - check_amount: '500.2' - payment_method: Direct Deposit items: - description: The representation of an employee pay stub information. - type: object - properties: - uuid: - type: string - description: The UUID of the employee pay stub. - readOnly: true - check_date: - type: string - description: The check date of the pay stub. - readOnly: true - gross_pay: - type: string - description: The gross pay amount for the pay stub. - readOnly: true - net_pay: - type: string - description: The net pay amount for the pay stub. - readOnly: true - payroll_uuid: - type: string - description: A unique identifier of the payroll to which the pay stub belongs. - readOnly: true - check_amount: - type: string - description: The check amount for the pay stub. - readOnly: true - payment_method: - type: string - description: The payment method for the pay stub. - enum: - - Direct Deposit - - Check - readOnly: true - x-tags: - - Payrolls - required: - - uuid - Employee-Work-Addresses-List: - type: array + "$ref": "#/components/schemas/Embedded-Time-Off-Request" x-examples: success_status: - - uuid: '080b6254-ce7c-411f-9f7d-5a3ce3c51154' - employee_uuid: 6747692e-d2c8-4472-9c5e-183c65404fbf - location_uuid: 9ccfade8-82ee-490c-8711-5c0787bccde8 - effective_date: '2021-01-01' - active: false - version: 3097e9d0efb09ba2e00a8988a93b3091 - street_1: 91678 Farrell Meadow - street_2: Apt. 835 - city: Phoenix - state: AZ - zip: '85016' - country: USA - - uuid: 35d62f15-75da-45aa-9c97-adc57342b925 - employee_uuid: 6747692e-d2c8-4472-9c5e-183c65404fbf - location_uuid: 10330fe8-36ef-4713-aa59-9f8a432abd13 - effective_date: '2022-01-01' - active: false - version: 5f48ce54afed81bb11dd89461bd0e214 - street_1: 800 Adolfo Gardens - street_2: Suite 419 - city: Bremen - state: AL - zip: '35033' - country: USA - - uuid: 3f3ceaba-6b57-4039-a31a-0004bef83c6f - employee_uuid: 6747692e-d2c8-4472-9c5e-183c65404fbf - location_uuid: 98383e91-c67d-4b69-a617-5a57f91da48c - effective_date: '2023-01-01' - active: true - version: a8a78c851337676137e22caf56ffe5b5 - street_1: 2216 Icie Villages - street_2: Apt. 798 - city: Big Delta - state: AK - zip: '99737' - country: USA - items: - "$ref": "#/components/schemas/Employee-Work-Address" - Employee-Address-List: - type: array + - uuid: ad158cfb-99e4-4741-9db3-0bd3a267f222 + status: pending + employee_note: Family vacation + employer_note: + days: + '2026-10-20': '8.000' + '2026-10-21': '8.000' + policy_type: vacation + policy_uuid: c2d9b1bd-3f36-4c2d-a727-b2af057d6a7f + employee: + uuid: 51924fa0-26c6-4d4c-8832-3ef0b422c67e + full_name: Alex Johnson + approver: + initiator: + uuid: 51924fa0-26c6-4d4c-8832-3ef0b422c67e + full_name: Alex Johnson + - uuid: 944cbbf4-8b13-4c45-babd-11ff13e17581 + status: approved + employee_note: Feeling under the weather + employer_note: Feel better soon! + days: + '2026-11-05': '8.000' + policy_type: sick + policy_uuid: bf493c7e-1a2d-4e5f-8c9a-3d7b6e4f2a1c + employee: + uuid: c2236d10-959a-4bb9-a21d-e14c6df447b6 + full_name: James Rivera + approver: + uuid: 21d8dff4-ce09-4120-a274-3a5628bf6769 + full_name: Morgan Chen + initiator: + uuid: c2236d10-959a-4bb9-a21d-e14c6df447b6 + full_name: James Rivera + Embedded-Time-Off-Request-Preview: + type: object + description: Preview of the balance impact for a time off request before it is created or updated. + required: + - balance_hours + - this_request_hours + - other_requested_hours + - remaining_balance_hours + - allow_negative_balance + - unlimited x-examples: success_status: - - uuid: d6b7472f-bb55-41ca-a55c-9adbd3c64e09 - version: 7eee445be93fc50fd3cbb55b8d943fb3 - employee_uuid: d1a166b4-79b4-413f-b067-27534ec59ecd - street_1: 3121 Milky Way - street_2: '' - city: San Francisco - state: CA - zip: '94107' - country: USA - active: false - effective_date: '2024-06-09' - courtesy_withholding: false - - uuid: 1b59a593-d324-4d97-9296-99ecc95f81d1 - version: 5147ad755821c4ba3dbc3afa1055ff4d - employee_uuid: d1a166b4-79b4-413f-b067-27534ec59ecd - street_1: 3624 Victoria Ln - street_2: '' - city: Cincinnati - state: OH - zip: '45208' - country: USA - active: true - effective_date: '2025-05-26' - courtesy_withholding: false - - uuid: 69489b54-976d-4027-8b51-702e5c8c62d3 - version: f0765fa5a85f62723320763494a481a6 - employee_uuid: d1a166b4-79b4-413f-b067-27534ec59ecd - street_1: Main st. - street_2: '' - city: New York - state: NY - zip: '10011' - country: USA - active: false - effective_date: '2025-07-09' - courtesy_withholding: false - items: - "$ref": "#/components/schemas/Employee-Address" - Employee-State-Taxes-List: - type: array + balance_hours: '64.0' + this_request_hours: '16.0' + other_requested_hours: '0.0' + remaining_balance_hours: '48.0' + allow_negative_balance: false + unlimited: false + properties: + balance_hours: + type: string + nullable: true + description: The employee's current available balance hours for this policy. Null for unlimited policies. + example: '64.0' + readOnly: true + this_request_hours: + type: string + description: The total hours for this time off request. + example: '16.0' + readOnly: true + other_requested_hours: + type: string + description: Hours from other pending or approved requests for this policy. + example: '0.0' + readOnly: true + remaining_balance_hours: + type: string + nullable: true + description: The projected balance after this request is applied. Null for unlimited policies. + example: '48.0' + readOnly: true + allow_negative_balance: + type: boolean + description: Whether the time off policy allows a negative balance. + example: false + readOnly: true + unlimited: + type: boolean + description: Whether the time off policy provides unlimited time off. + example: false + readOnly: true + Embedded-Time-Off-Balance: + type: object + description: Time off balance for an employee, grouped by policy. x-examples: success_status: - - uuid: 287d2c61-1d18-4126-8a4a-9cb29bbb6dac - employee_uuid: c963cb99-fe1c-4aa8-9d48-1ad211ad396f - state: CA - file_new_hire_report: false - is_work_state: true - questions: - - is_question_for_admin_only: false - label: Filing Status - description: 'The Head of Household status applies to unmarried individuals who have a relative living with them in their home. If unsure, read the CA Filing Status explanation. - -' - key: filing_status - input_question_format: - type: Select - options: - - value: S - label: Single - - value: M - label: Married one income - - value: MD - label: Married dual income - - value: H - label: Head of Household - - value: E - label: Do Not Withhold - answers: - - value: M - valid_from: '2010-01-01' - valid_up_to: - - is_question_for_admin_only: false - label: Withholding Allowance - description: 'This value is needed to calculate the employee''s CA income tax withholding. If unsure, use the CA DE-4 form to calculate the value manually. - -' - key: withholding_allowance - input_question_format: - type: Number - answers: - - value: 1 - valid_from: '2010-01-01' - valid_up_to: - - is_question_for_admin_only: false - label: Additional Withholding - description: You can withhold an additional amount of California income taxes here. - key: additional_withholding - input_question_format: - type: Currency - answers: - - value: '0.0' - valid_from: '2010-01-01' - valid_up_to: - - is_question_for_admin_only: true - label: File a New Hire Report? - description: State law requires you to file a new hire report within 20 days of hiring or re-hiring an employee. - key: file_new_hire_report - input_question_format: - type: Select - options: - - value: true - label: Yes, file the state new hire report for me. - - value: false - label: No, I have already filed. - answers: - - value: false - valid_from: '2010-01-01' - valid_up_to: - items: - type: object - properties: - uuid: - type: string - description: The uuid of the employee state field. - employee_uuid: - type: string - description: The employee's uuid - state: - type: string - description: Two letter US state abbreviation - file_new_hire_report: - type: - - boolean - - 'null' - is_work_state: - type: boolean - questions: - type: array - items: - "$ref": "#/components/schemas/Employee-State-Tax-Question" - required: - - uuid - - employee_uuid - - state - - questions - Employee-State-Taxes-Request: - type: object + employee_uuid: 51924fa0-26c6-4d4c-8832-3ef0b422c67e + balances: + - policy_uuid: c2d9b1bd-3f36-4c2d-a727-b2af057d6a7f + balance_hours: '32.0' + accrued_hours: '40.0' + used_hours: '8.0' + pending_hours: '0.0' properties: - states: + employee_uuid: + type: string + description: The UUID of the employee. + example: 51924fa0-26c6-4d4c-8832-3ef0b422c67e + readOnly: true + balances: type: array - uniqueItems: true + description: The employee's time off balances, one entry per policy. + readOnly: true items: type: object properties: - state: + policy_uuid: type: string - questions: - type: array - uniqueItems: true - items: - type: object - properties: - key: - type: string - answers: - type: array - uniqueItems: true - items: - type: object - properties: - value: - oneOf: - - type: string - - type: number - - type: boolean - - type: 'null' - valid_from: - type: string - valid_up_to: - type: - - string - - 'null' - required: - - value - - valid_from - required: - - key - required: - - state - required: - - states - Notifications-List: + description: The UUID of the time off policy. + example: c2d9b1bd-3f36-4c2d-a727-b2af057d6a7f + readOnly: true + balance_hours: + type: string + description: The employee's current available balance hours for this policy. + example: '32.0' + readOnly: true + accrued_hours: + type: string + description: The total hours accrued year-to-date for this policy. + example: '40.0' + readOnly: true + used_hours: + type: string + description: The total hours used year-to-date for this policy. + example: '8.0' + readOnly: true + pending_hours: + type: + - string + - 'null' + description: The total hours from pending time off requests for this policy. + example: '0.0' + readOnly: true + Embedded-Time-Off-Balance-List: type: array + items: + "$ref": "#/components/schemas/Embedded-Time-Off-Balance" x-examples: success_status: - - uuid: d053ee2a-a80f-4a61-8bf8-6122c1f954dd - company_uuid: 46c8329d-ebd1-49ba-878c-810b481a34c9 - category: company_setup.missing_mandatory_sick_time_policy - title: Set up a sick time off policy - message: At least one company work location requires businesses to provide a sick time off policy. - actionable: true - can_block_payroll: false - published_at: '2025-06-09T13:42:59.000-07:00' - due_at: - status: open - resources: [] - template_variables: {} - - uuid: 2edd148b-c4c3-4cda-b3e1-72b87399e6c8 - company_uuid: 46c8329d-ebd1-49ba-878c-810b481a34c9 - category: bank_error.compensation_credit_failure - title: Unable to deposit funds to Donn Cormier - message: We were unable to deposit a recent paycheck to Donn’s bank account, so these funds of $100.00 will be returned to Luettgen-Gusikowski’s bank account. Once the funds are received, the payment should be made directly to Donn. - actionable: true - can_block_payroll: false - published_at: '2025-06-09T13:43:00.000-07:00' - due_at: - status: open - resources: - - entity_type: Employee - entity_uuid: 66a27bb8-be5b-42e5-82b8-b2d0044a7f9e - template_variables: - beneficiary_name: Donn Cormier - amount: "$100.00" - company_name: Luettgen-Gusikowski - items: - "$ref": "#/components/schemas/Notification" - Contractor-Payment-Details-List: - type: array + - employee_uuid: 51924fa0-26c6-4d4c-8832-3ef0b422c67e + balances: + - policy_uuid: c2d9b1bd-3f36-4c2d-a727-b2af057d6a7f + balance_hours: '32.0' + accrued_hours: '40.0' + used_hours: '8.0' + pending_hours: '0.0' + Contractor-Payment-Group-Preview: + description: Preview of a contractor payment group + type: object + properties: + uuid: + type: + - string + - 'null' + description: The unique identifier of the contractor payment group. + readOnly: true + company_uuid: + type: string + description: The UUID of the company. + readOnly: true + check_date: + type: string + description: The check date of the contractor payment group. + readOnly: true + debit_date: + type: string + description: The debit date of the contractor payment group. + readOnly: true + status: + type: string + description: The status of the contractor payment group. Will be `Funded` if all payments that should be funded (i.e. have `Direct Deposit` for payment method) are funded. A group can have status `Funded` while having associated payments that have status `Unfunded`, i.e. payment with `Check` payment method. + enum: + - Unfunded + - Funded + readOnly: true + creation_token: + type: + - string + - 'null' + description: Token used to make contractor payment group creation idempotent. Will error if attempting to create a group with a duplicate token. + readOnly: true + partner_owned_disbursement: + type: + - boolean + - 'null' + description: Whether the disbursement is partner owned. + readOnly: true + submission_blockers: + type: array + description: List of submission blockers for the contractor payment group. + readOnly: true + items: + "$ref": "#/components/schemas/Payroll-Submission-Blocker-Type" + credit_blockers: + type: array + description: List of credit blockers for the contractor payment group. + readOnly: true + items: + "$ref": "#/components/schemas/Payroll-Credit-Blocker-Type" + totals: + type: object + properties: + amount: + type: string + description: The total amount for the group of contractor payments. + readOnly: true + debit_amount: + type: string + description: The total debit amount for the group of contractor payments. Sum of wage & reimbursement amount. + readOnly: true + wage_amount: + type: string + description: The total wage amount for the group of contractor payments. + readOnly: true + reimbursement_amount: + type: string + description: The total reimbursement amount for the group of contractor payments. + readOnly: true + check_amount: + type: string + description: The total check amount for the group of contractor payments. + readOnly: true + readOnly: true + contractor_payments: + type: array + items: + "$ref": "#/components/schemas/Contractor-Payment-For-Group-Preview" x-examples: - success_status: - - contractor_uuid: e3d9487a-4ecb-49a3-b6ff-cf03ba7278b6 - first_name: Yael - last_name: Kuvalis - payment_method: Check - split_by: - splits: - - contractor_uuid: 577b6307-66e9-4926-a769-91f5c8b578aa - first_name: Autumn - last_name: Connelly - payment_method: Direct Deposit - split_by: Percentage - splits: - - bank_account_uuid: 0aca4500-8ba4-48fc-adce-677fe7926b7b - name: Cayman Island Checking - hidden_account_number: XXXX1545 - account_number: - encrypted_account_number: - routing_number: '055003201' - priority: 1 - split_amount: 100 - account_type: Checking - items: - type: object - properties: - contractor_uuid: - type: string - payment_method: - type: string - enum: - - Direct Deposit - - Check - first_name: - type: string - last_name: - type: string - split_by: - anyOf: - - type: string - enum: - - Amount - - Percentage - - type: 'null' - description: Describes how the payment will be split. If split_by is Percentage, then the split amounts must add up to exactly 100. If split_by is Amount, then the amount represents cents and the last split amount must be `null` to capture the remainder. - splits: - type: - - array - - 'null' - items: - type: object - properties: - bank_account_uuid: - type: string - name: - type: string - hidden_account_number: - type: string - description: An obfuscated version of the account number which can be used for display purposes. - encrypted_account_number: - type: - - string - - 'null' - description: Ciphertext containing the full bank account number, which must be decrypted using a key provided by Gusto. Only visible with the `contractor_payment_methods:read:account_number` scope. - routing_number: - type: string - priority: - type: integer - description: The order of priority for each payment split, with priority 1 being the first bank account paid. Priority must be unique and sequential. - split_amount: - type: - - number - - 'null' - description: If `split_by` is 'Amount', this is in cents (e.g., 500 for $5.00) and exactly one account must have a `split_amount` of `null` to capture the remainder. If `split_by` is 'Percentage', this is the percentage value (e.g., 60 for 60%). - account_type: - type: string + success: + uuid: + company_uuid: 450ddadf-69da-4f37-92e5-8d78b94bffec + check_date: '2025-08-21' + debit_date: '2025-08-19' + status: Unfunded + creation_token: 025e79ac-824d-4d3e-b819-8f265c3edb72 + partner_owned_disbursement: + submission_blockers: [] + credit_blockers: [] + contractor_payments: + - uuid: + contractor_uuid: e894e72b-0aef-4856-9082-9c7826db998d + bonus: '0.0' + hours: '0.0' + hourly_rate: '0.0' + may_cancel: true + payment_method: Direct Deposit + reimbursement: '750.0' + status: Unfunded + wage: '10000.0' + wage_type: Fixed + wage_total: '10000.0' + totals: + amount: '10750.00' + debit_amount: '10750.00' + wage_amount: '10000.00' + reimbursement_amount: '750.00' + check_amount: '0.00' + With submission blockers: + uuid: + company_uuid: 450ddadf-69da-4f37-92e5-8d78b94bffec + check_date: '2025-08-21' + debit_date: '2025-08-19' + status: Unfunded + creation_token: 8f3ced95-ccba-4ace-ac5d-03c1080bb768 + partner_owned_disbursement: + submission_blockers: + - blocker_type: fast_ach_threshold_exceeded + blocker_name: Fast ACH Threshold Exceeded + selected_option: + status: unresolved + unblock_options: + - unblock_type: wire_in + check_date: '2025-08-21' + metadata: + wire_in_deadline: '2025-08-21T18:00:00Z' + wire_in_amount: '1000750.0' + - unblock_type: move_to_four_day + check_date: '2025-08-21' + metadata: + debit_date: '2025-08-15' + credit_blockers: [] + contractor_payments: + - uuid: + contractor_uuid: e894e72b-0aef-4856-9082-9c7826db998d + bonus: '0.0' + hours: '0.0' + hourly_rate: '0.0' + may_cancel: true + payment_method: Direct Deposit + reimbursement: '750.0' + status: Unfunded + wage: '1000000.0' + wage_type: Fixed + wage_total: '1000000.0' + totals: + amount: '1000750.00' + debit_amount: '1000750.00' + wage_amount: '1000000.00' + reimbursement_amount: '750.00' + check_amount: '0.00' Contractor-Payment-Group-Partner-Disbursements: type: object description: Partner disbursements for a contractor payment group @@ -32061,138 +19491,6 @@ components: - Paid - Not partner managed - Converted to check - Payroll-Update: - type: object - properties: - employee_compensations: - type: array - items: - type: object - description: '' - properties: - employee_uuid: - type: string - description: The UUID of the employee. - version: - type: string - description: The current version of this employee compensation from the prepared payroll. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. - excluded: - type: boolean - description: This employee will be excluded from payroll calculation and will not be paid for the payroll. - payment_method: - type: string - description: The employee's compensation payment method. Invalid values will be ignored. - enum: - - Direct Deposit - - Check - memo: - type: string - description: Custom text that will be printed as a personal note to the employee on a paystub. - fixed_compensations: - type: array - items: - type: object - description: An array of fixed compensations for the employee. Fixed compensations include tips, bonuses, and one time reimbursements. - properties: - name: - type: string - description: The name of the compensation. This also serves as the unique, immutable identifier for this compensation. - amount: - type: string - description: The amount of the compensation for the pay period. - job_uuid: - type: string - description: The UUID of the job for the compensation. - hourly_compensations: - type: array - items: - type: object - description: An array of hourly compensations for the employee. Hourly compensations include regular, overtime, and double overtime hours. - properties: - name: - type: string - description: The name of the compensation. This also serves as the unique, immutable identifier for this compensation. - hours: - type: string - description: The number of hours to be compensated for this pay period. - job_uuid: - type: string - description: The UUIDs of the job for the compensation. - deductions: - type: array - items: - type: object - description: An array of deductions for the employee. - properties: - name: - type: string - description: The name of the deduction. - amount: - type: number - description: The amount of the deduction for the pay period. - amount_type: - type: string - description: The amount type of the deduction for the pay period. - enum: - - fixed - - percent - uuid: - type: string - description: The UUID of the deduction. This parameter is optional and can be provided in order to update an existing deduction. - paid_time_off: - type: array - description: An array of all paid time off the employee is eligible for this pay period. Each paid time off object can be the name or the specific policy_uuid. - items: - type: object - properties: - name: - type: string - description: The name of the PTO. This also serves as the unique, immutable identifier for the PTO. Must pass in name or policy_uuid but not both. - hours: - type: string - description: The hours of this PTO taken during the pay period. - policy_uuid: - type: string - description: The uuid of the PTO policy. Must pass in name or policy_uuid but not both. - final_payout_unused_hours_input: - type: - - string - - 'null' - description: The outstanding hours paid upon termination. This field is only applicable for termination payrolls. - reimbursements: - type: array - description: An array of reimbursements for the employee. - items: - type: object - properties: - amount: - type: string - description: The dollar amount of the reimbursement for the pay period. - description: - type: string - description: The description of the reimbursement. If not provided, the reimbursement will be unnamed. - uuid: - type: string - description: The UUID of an existing reimbursement. This parameter is optional and can be provided in order to update an existing reimbursement. - withholding_pay_period: - description: The payment schedule tax rate the payroll is based on. Only relevant for off-cycle payrolls. - type: string - enum: - - Every week - - Every other week - - Twice per month - - Monthly - - Quarterly - - Semiannually - - Annually - skip_regular_deductions: - description: Block regular deductions and contributions for this payroll. Only relevant for off-cycle payrolls. - type: boolean - fixed_withholding_rate: - description: Enable taxes to be withheld at the IRS's required rate of 22% for federal income taxes. State income taxes will be taxed at the state's supplemental tax rate. Otherwise, we'll sum the entirety of the employee's wages and withhold taxes on the entire amount at the rate for regular wages. Only relevant for off-cycle payrolls. - type: boolean - required: - - employee_compensations Show-Employees: type: array items: @@ -32332,11537 +19630,21927 @@ components: welcome_email_sent_at: '2024-01-15T14:30:00Z' last_password_resent_at: partner_portal_invitation_sent: true - Payroll-Partner-Owned-Disbursement-Type: - type: - - boolean - - 'null' - description: Will money movement for the payroll be performed by the partner rather than by Gusto? - Payroll-Employee-Compensations-Included: + Employee-Home-Address: + type: object + properties: + street_1: + type: + - string + - 'null' + readOnly: false + street_2: + type: + - string + - 'null' + readOnly: false + city: + type: + - string + - 'null' + readOnly: false + state: + type: + - string + - 'null' + readOnly: false + zip: + type: + - string + - 'null' + readOnly: false + country: + type: + - string + - 'null' + readOnly: false + default: USA + active: + type: boolean + description: The status of the location. Inactive locations have been deleted, but may still have historical data associated with them. + readOnly: true + uuid: + type: string + description: Unique identifier for this address. + example: + street_1: 412 Kiera Stravenue + street_2: Suite 391 + city: San Francisco + state: CA + zip: '94107' + country: USA + active: true + uud: sample-uuid-123231 + Employee-Home-Address-History-Entry: + description: | + A single entry in an employee's home-address history. Returned in the + `all_home_addresses` array; includes the `effective_date` the address + became active in addition to the shared `Employee-Home-Address` fields. + allOf: + - "$ref": "#/components/schemas/Employee-Home-Address" + - type: object + properties: + effective_date: + type: string + format: date + description: The date the address became effective. + example: + street_1: 412 Kiera Stravenue + street_2: Suite 391 + city: San Francisco + state: CA + zip: '94107' + country: USA + active: true + uud: sample-uuid-123231 + effective_date: '2024-01-01' + Webhooks-Health-Check-Status: + description: The representation of a webhooks health check response + type: object + x-examples: + success_status: + status: healthy + last_checked_at: '2025-09-08T21:21:38.000Z' + properties: + status: + type: string + description: Latest health status of the webhooks system + readOnly: true + enum: + - healthy + - unhealthy + - unknown + last_checked_at: + type: string + format: date-time + readOnly: true + description: ISO8601 timestamp of the last successful health check with millisecond precision + Partner-Managed-Company-Migrate-Request: + type: object + description: 'Request body is optional in API version 2026-02-01 and later. The Terms of Service signer is resolved from the authenticated payroll-admin user; the previously required `email`, `ip_address`, and `external_user_id` parameters are no longer accepted. + +' + properties: {} + x-examples: + typical: {} + Partner-Managed-Company-Migrate-Response: + type: object + properties: + company_uuid: + type: string + description: The company UUID. + migration_status: + type: boolean + description: Returns `true` when the migration completed successfully, `false` otherwise. + errors: + type: array + description: Migration blockers preventing the migration. Empty array when `migration_status` is `true`. + items: + type: object + properties: + error_key: + type: string + category: + type: string + description: Returns `migration_blocker` for blockers. + enum: + - migration_blocker + message: + type: string + metadata: + type: object + properties: + key: + type: string + description: Issue key (e.g., `company_suspended`, `terms_of_service`, `gusto_managed_benefits`). + warnings: + type: array + description: Non-blocking issues surfaced during migration (e.g., suspended company, active integrations). May be present even when `migration_status` is `true`. + items: + type: object + properties: + error_key: + type: string + category: + type: string + description: Returns `migration_warning` for warnings. + enum: + - migration_warning + message: + type: string + metadata: + type: object + properties: + key: + type: string + x-examples: + Example: + company_uuid: 39abf9b9-650b-4e67-89a0-389dc6ee8a71 + migration_status: true + errors: [] + warnings: + - error_key: base + category: migration_warning + message: Company has active integrations. + metadata: + key: active_integrations + Partner-Managed-Company-Create-Request: + type: object + required: + - user + - company + properties: + user: + type: object + description: Information for the user who will be the primary payroll administrator for the new company. + required: + - first_name + - last_name + - email + properties: + first_name: + type: string + description: The first name of the user who will be the primary payroll admin. + last_name: + type: string + description: The last name of the user who will be the primary payroll admin. + email: + type: string + description: The email of the user who will be the primary payroll admin. + phone: + type: string + description: The phone number of the user who will be the primary payroll admin. + company: + type: object + required: + - name + properties: + name: + type: string + description: The legal name of the company. + trade_name: + type: string + description: The name of the company. + ein: + type: string + description: The employer identification number (EIN) of the company. + contractor_only: + type: boolean + description: Whether the company only supports contractors. Should be set to true if the company has no W-2 employees. If not passed, will default to false (i.e. the company will support both contractors and employees). + x-examples: + Example: + user: + first_name: Frank + last_name: Ocean + email: frank@example.com + phone: '2345558899' + company: + name: Frank's Ocean, LLC + trade_name: Frank's Ocean + ein: '123456789' + contractor_only: false + Partner-Managed-Company: + description: Object returned when creating a partner managed company + type: object + properties: + access_token: + type: string + description: Access token that can be used for OAuth access to the account. Access tokens expire 2 hours after they are issued. + readOnly: true + refresh_token: + type: string + description: Refresh token that can be exchanged for a new access token. + readOnly: true + company_uuid: + type: string + description: Gusto's UUID for the company + readOnly: true + expires_in: + type: integer + description: Time of access_token expiration in seconds + readOnly: true + x-examples: + Example: + access_token: de6780bc506a0446309bd9362820ba8aed28aa506c71eedbe1c5c4f9dd350e54 + refresh_token: 8257e65c97202ed1726cf9571600918f3bffb2544b26e00a61df9897668c33a1 + company_uuid: d525dd21-ba6e-482c-be15-c2c7237f1364 + expires_in: 7200 + Migration-Blocker: + description: Migration blocker that blocks company migration type: object - additionalProperties: true properties: - taxes: + errors: type: array - uniqueItems: false - description: An array of employer and employee taxes for the pay period. Only included for processed or calculated payrolls when `taxes` is present in the `include` parameter. items: type: object properties: - name: + error_key: type: string - minLength: 1 - employer: - type: boolean - amount: - type: number - minLength: 1 - required: - - name - - employer - - amount - readOnly: true - readOnly: true - benefits: - type: array - uniqueItems: false - description: An array of employee benefits for the pay period. Benefits are only included for processed payroll when the include parameter is present. - items: - type: object - properties: - name: + description: Error key + category: type: string - readOnly: true - employee_deduction: - type: number - readOnly: true - company_contribution: - type: number - readOnly: true - imputed: - type: boolean - readOnly: true - readOnly: true - deductions: + description: Error category + message: + type: string + description: Blocker message + metadata: + type: object + properties: + key: + type: string + description: A categorization of the migration blocker, e.g. "migrated_company" + Migration-Warning: + description: Migration warning that does not block company migration + type: object + properties: + warnings: type: array - uniqueItems: false - description: An array of employee deductions for the pay period. Only included when `deductions` is present in the `include` parameter. items: type: object properties: - name: + error_key: type: string - description: The name of the deduction. - amount: - type: number - description: The amount of the deduction for the pay period. - amount_type: + description: Error key + category: type: string - description: The amount type of the deduction for the pay period. Only present for unprocessed payrolls. - enum: - - fixed - - percent - uuid: + description: Error category + message: type: string - description: The UUID of the deduction. Only present for unprocessed payrolls. - readOnly: true - updatable_via_payroll: - type: boolean - description: Whether the deduction can be updated via the payroll update endpoint. Only present for unprocessed payrolls. - readOnly: true - Payroll-Show: + description: Warning message + metadata: + type: object + properties: + key: + type: string + description: A categorization of the migration warning, e.g. "marijuana_related_business" + Partner-Managed-Company-Migration-Readiness-Response: + description: '' + allOf: + - type: object + properties: + ready_to_migrate: + type: boolean + description: Indicates if the company is ready to be migrated. + company_uuid: + type: string + description: The company UUID + - "$ref": "#/components/schemas/Migration-Blocker" + - "$ref": "#/components/schemas/Migration-Warning" + x-examples: + Example: + ready_to_migrate: false + company_uuid: 39abf9b9-650b-4e67-89a0-389dc6ee8a71 + errors: + - error_key: base + category: invalid_operation + message: The operation is already performed for this company. + metadata: + key: migrated_company + warnings: [] + Partner-Managed-Company-Disassociate-Response: type: object + description: The company that was disassociated from the partner's embedded payroll product. + required: + - company_uuid + - company_name + properties: + company_uuid: + type: string + format: uuid + description: The UUID of the disassociated company. + company_name: + type: string + description: The name of the disassociated company. x-examples: - success_status: - uuid: b441a30b-2adb-489e-b7b7-9d094011a3f8 - employee_compensations: [] - submission_blockers: [] - credit_blockers: [] - payroll_uuid: b441a30b-2adb-489e-b7b7-9d094011a3f8 - company_uuid: 9aa93530-43d5-484e-b608-33214109420d - off_cycle: false - auto_payroll: false - processed: true - processed_date: '2025-06-16' - calculated_at: '2025-06-16T16:58:03Z' - pay_period: - start_date: '2025-05-25' - end_date: '2025-06-09' - pay_schedule_uuid: 40ff5990-0191-4796-9717-32f7dd3e94d5 - check_date: '2025-06-13' - external: false - payroll_deadline: '2025-06-17T23:00:00Z' - totals: - employee_bonuses: '0.00' - employee_commissions: '0.00' - employee_cash_tips: '0.00' - employee_paycheck_tips: '0.00' - additional_earnings: '0.00' - owners_draw: '0.00' - benefits: '0.00' - check_amount: '0.00' - child_support_debit: '0.00' - company_debit: '0.00' - deferred_payroll_taxes: '0.00' - employee_benefits_deductions: '0.00' - employee_taxes: '0.00' - employer_taxes: '0.00' - gross_pay: '0.00' - imputed_pay: '0.00' - net_pay: '0.00' - net_pay_debit: '0.00' - other_deductions: '0.00' - reimbursement_debit: '0.00' - reimbursements: '0.00' - tax_debit: '0.00' - processing_request: - status: submit_success - errors: [] - created_at: '2025-06-16T16:58:03Z' - partner_owned_disbursement: - with_submit_wire_credit_blocker: - uuid: b441a30b-2adb-489e-b7b7-9d094011a3f8 - employee_compensations: [] - submission_blockers: [] - credit_blockers: - - blocker_type: waiting_for_wire_in - blocker_name: Waiting for Wire In - unblock_options: - - unblock_type: submit_wire - check_date: '2025-06-13' - metadata: - wire_in_amount: '15000.00' - wire_in_deadline: '2025-06-12T18:00:00Z' - wire_in_request_uuid: c1234567-89ab-cdef-0123-456789abcdef - selected_option: - status: unresolved - payroll_uuid: b441a30b-2adb-489e-b7b7-9d094011a3f8 - company_uuid: 9aa93530-43d5-484e-b608-33214109420d - off_cycle: false - auto_payroll: false - processed: true - processed_date: '2025-06-16' - calculated_at: '2025-06-16T16:58:03Z' - pay_period: - start_date: '2025-05-25' - end_date: '2025-06-09' - pay_schedule_uuid: 40ff5990-0191-4796-9717-32f7dd3e94d5 - check_date: '2025-06-13' - external: false - payroll_deadline: '2025-06-17T23:00:00Z' - totals: - employee_bonuses: '0.00' - employee_commissions: '0.00' - employee_cash_tips: '0.00' - employee_paycheck_tips: '0.00' - additional_earnings: '0.00' - owners_draw: '0.00' - benefits: '0.00' - check_amount: '0.00' - child_support_debit: '0.00' - company_debit: '0.00' - deferred_payroll_taxes: '0.00' - employee_benefits_deductions: '0.00' - employee_taxes: '0.00' - employer_taxes: '0.00' - gross_pay: '0.00' - imputed_pay: '0.00' - net_pay: '0.00' - net_pay_debit: '0.00' - other_deductions: '0.00' - reimbursement_debit: '0.00' - reimbursements: '0.00' - tax_debit: '0.00' - processing_request: - status: submit_success - errors: [] - created_at: '2025-06-16T16:58:03Z' - partner_owned_disbursement: - with_submit_bank_screenshot_credit_blocker: - uuid: b441a30b-2adb-489e-b7b7-9d094011a3f8 - employee_compensations: [] - submission_blockers: [] - credit_blockers: - - blocker_type: waiting_for_bank_screenshot - blocker_name: Waiting for Bank Screenshot - unblock_options: - - unblock_type: submit_bank_screenshot - check_date: '2025-06-13' - metadata: - information_request_uuid: d2234567-89ab-cdef-0123-456789abcdef - selected_option: - status: unresolved - payroll_uuid: b441a30b-2adb-489e-b7b7-9d094011a3f8 - company_uuid: 9aa93530-43d5-484e-b608-33214109420d - off_cycle: false - auto_payroll: false - processed: true - processed_date: '2025-06-16' - calculated_at: '2025-06-16T16:58:03Z' - pay_period: - start_date: '2025-05-25' - end_date: '2025-06-09' - pay_schedule_uuid: 40ff5990-0191-4796-9717-32f7dd3e94d5 - check_date: '2025-06-13' - external: false - payroll_deadline: '2025-06-17T23:00:00Z' - totals: - employee_bonuses: '0.00' - employee_commissions: '0.00' - employee_cash_tips: '0.00' - employee_paycheck_tips: '0.00' - additional_earnings: '0.00' - owners_draw: '0.00' - benefits: '0.00' - check_amount: '0.00' - child_support_debit: '0.00' - company_debit: '0.00' - deferred_payroll_taxes: '0.00' - employee_benefits_deductions: '0.00' - employee_taxes: '0.00' - employer_taxes: '0.00' - gross_pay: '0.00' - imputed_pay: '0.00' - net_pay: '0.00' - net_pay_debit: '0.00' - other_deductions: '0.00' - reimbursement_debit: '0.00' - reimbursements: '0.00' - tax_debit: '0.00' - processing_request: - status: submit_success - errors: [] - created_at: '2025-06-16T16:58:03Z' - partner_owned_disbursement: - with_respond_to_high_risk_fraud_rfi_credit_blocker: - uuid: b441a30b-2adb-489e-b7b7-9d094011a3f8 - employee_compensations: [] - submission_blockers: [] - credit_blockers: - - blocker_type: waiting_for_high_risk_fraud_rfi - blocker_name: Waiting for High Risk Fraud RFI - unblock_options: - - unblock_type: respond_to_high_risk_fraud_rfi - check_date: '2025-06-13' - metadata: - information_request_uuid: e3234567-89ab-cdef-0123-456789abcdef - selected_option: - status: pending_review - payroll_uuid: b441a30b-2adb-489e-b7b7-9d094011a3f8 - company_uuid: 9aa93530-43d5-484e-b608-33214109420d - off_cycle: false - auto_payroll: false - processed: true - processed_date: '2025-06-16' - calculated_at: '2025-06-16T16:58:03Z' - pay_period: - start_date: '2025-05-25' - end_date: '2025-06-09' - pay_schedule_uuid: 40ff5990-0191-4796-9717-32f7dd3e94d5 - check_date: '2025-06-13' - external: false - payroll_deadline: '2025-06-17T23:00:00Z' - totals: - employee_bonuses: '0.00' - employee_commissions: '0.00' - employee_cash_tips: '0.00' - employee_paycheck_tips: '0.00' - additional_earnings: '0.00' - owners_draw: '0.00' - benefits: '0.00' - check_amount: '0.00' - child_support_debit: '0.00' - company_debit: '0.00' - deferred_payroll_taxes: '0.00' - employee_benefits_deductions: '0.00' - employee_taxes: '0.00' - employer_taxes: '0.00' - gross_pay: '0.00' - imputed_pay: '0.00' - net_pay: '0.00' - net_pay_debit: '0.00' - other_deductions: '0.00' - reimbursement_debit: '0.00' - reimbursements: '0.00' - tax_debit: '0.00' - processing_request: - status: submit_success - errors: [] - created_at: '2025-06-16T16:58:03Z' - partner_owned_disbursement: - with_wait_for_reverse_wire_credit_blocker: - uuid: b441a30b-2adb-489e-b7b7-9d094011a3f8 - employee_compensations: [] - submission_blockers: [] - credit_blockers: - - blocker_type: waiting_for_reverse_wire - blocker_name: Waiting for Reverse Wire - unblock_options: - - unblock_type: wait_for_reverse_wire - check_date: '2025-06-13' - metadata: - reverse_wire_detail_id: 12345 - bank_account_last_four_digits: '1234' - selected_option: - status: resolved - payroll_uuid: b441a30b-2adb-489e-b7b7-9d094011a3f8 - company_uuid: 9aa93530-43d5-484e-b608-33214109420d - off_cycle: false - auto_payroll: false - processed: true - processed_date: '2025-06-16' - calculated_at: '2025-06-16T16:58:03Z' - pay_period: - start_date: '2025-05-25' - end_date: '2025-06-09' - pay_schedule_uuid: 40ff5990-0191-4796-9717-32f7dd3e94d5 - check_date: '2025-06-13' - external: false - payroll_deadline: '2025-06-17T23:00:00Z' - totals: - employee_bonuses: '0.00' - employee_commissions: '0.00' - employee_cash_tips: '0.00' - employee_paycheck_tips: '0.00' - additional_earnings: '0.00' - owners_draw: '0.00' - benefits: '0.00' - check_amount: '0.00' - child_support_debit: '0.00' - company_debit: '0.00' - deferred_payroll_taxes: '0.00' - employee_benefits_deductions: '0.00' - employee_taxes: '0.00' - employer_taxes: '0.00' - gross_pay: '0.00' - imputed_pay: '0.00' - net_pay: '0.00' - net_pay_debit: '0.00' - other_deductions: '0.00' - reimbursement_debit: '0.00' - reimbursements: '0.00' - tax_debit: '0.00' - processing_request: - status: submit_success - errors: [] - created_at: '2025-06-16T16:58:03Z' - partner_owned_disbursement: + Example: + company_uuid: 39abf9b9-650b-4e67-89a0-389dc6ee8a71 + company_name: Acme LLC + Partner-Managed-Company-Accept-Terms-Of-Service-Request: + type: object + description: '' + required: + - email + - ip_address + - external_user_id + properties: + email: + type: string + description: The user's email address on Gusto. You can retrieve the user's email via company's `/admins`, `/employees`, `/signatories`, and `/contractors` endpoints. + ip_address: + type: string + description: The IP address of the user who viewed and accepted the Terms of Service. + external_user_id: + type: string + description: The user ID on your platform. + x-examples: + Example: + ip_address: 192.168.1.2 + external_user_id: '2005648946132' + email: jsmith99@gmail.com + Partner-Managed-Company-Retrieve-Terms-Of-Service-Request: + type: object + required: + - email + properties: + email: + type: string + description: The user's email address on Gusto. You can retrieve the user's email via company's `/admins`, `/employees`, `/signatories`, and `/contractors` endpoints. + x-examples: + Example: + email: jsmith99@gmail.com + Partner-Managed-Company-Terms-Of-Service-Response: + description: '' + type: object + properties: + latest_terms_accepted: + type: boolean + description: Whether the latest terms have been accepted by the user. + x-examples: + Example: + latest_terms_accepted: true + Provision-Create-Request-Body: + type: object + required: + - user + - company + properties: + user: + type: object + description: Information for the user who will be the primary payroll administrator for the new company. + required: + - first_name + - last_name + - email + properties: + first_name: + type: string + description: The first name of the user who will be the primary payroll admin. + last_name: + type: string + description: The last name of the user who will be the primary payroll admin. + email: + type: string + description: The email of the user who will be the primary payroll admin. + phone: + type: string + description: The phone number of the user who will be the primary payroll admin. + company: + type: object + required: + - name + properties: + name: + type: string + description: The legal name of the company. + trade_name: + type: string + description: The name of the company. + ein: + type: string + description: The employer identification number (EIN) of the company. + states: + type: array + description: 'The states in which the company operates. States should be included by their two letter code, i.e. NY for New York. ' + items: + type: string + number_employees: + type: number + description: The number of employees in the company. + addresses: + type: array + uniqueItems: false + description: The locations for the company. This includes mailing, work, and filing addresses. + items: + type: object + properties: + street_1: + type: string + street_2: + type: + - string + - 'null' + city: + type: string + zip: + type: string + state: + type: string + phone: + type: string + is_primary: + type: string + description: Whether or not this is a primary address for the company. If set to true, the address will be used as the mailing and filing address for the company and will be added as a work location. If set to false or not included, the address will only be added as a work location for the company. If multiple addresses are included, only one should be marked as primary. + x-examples: + Example: + user: + first_name: Frank + last_name: Ocean + email: frank@example.com + phone: '2345558899' + company: + name: Frank's Ocean, LLC + trade_name: Frank's Ocean + tier: complete + ein: '123456789' + states: + - CO + - CA + number_employees: 8 + addresses: + - street_1: 1201 16th Street Mall + street_2: Suite 350 + city: Denver + zip: '80202' + state: CO + phone: '2345678900' + is_primary: 'true' + - street_1: 525 20th Street + city: San Francisco + zip: '94107' + state: CA + phone: '2345678901' + Provision-Created: + type: object properties: - payroll_deadline: - "$ref": "#/components/schemas/Payroll-Deadline-Type" - check_date: - "$ref": "#/components/schemas/Payroll-Check-Date-Type" - processed: - "$ref": "#/components/schemas/Payroll-Processed-Type" - processed_date: - "$ref": "#/components/schemas/Payroll-Processed-Date-Type" - calculated_at: - "$ref": "#/components/schemas/Payroll-Calculated-At-Type" - uuid: - "$ref": "#/components/schemas/Payroll-Payroll-Uuid-Type" - payroll_uuid: - "$ref": "#/components/schemas/Payroll-Payroll-Uuid-Type" + account_claim_url: + type: string + description: A URL where the user should be redirected to complete their account setup inside of Gusto. + readOnly: true + x-examples: + Example: + account_claim_url: https://app.gusto.com/claim_account/3456789 + Employees-Annual-Fica-Wage-Report-Acceptance: + type: object + description: Acceptance acknowledgement for an asynchronous employees annual FICA wage report. Returned with HTTP 202; poll the report status endpoint using `request_uuid`. + required: + - request_uuid + - company_uuid + - start_year + - end_year + properties: + request_uuid: + type: string + format: uuid + description: The UUID of the report request. Use this to poll for report completion. company_uuid: - "$ref": "#/components/schemas/Payroll-Company-Uuid-Type" - off_cycle: - "$ref": "#/components/schemas/Payroll-Off-Cycle-Type" - off_cycle_reason: - "$ref": "#/components/schemas/Off-Cycle-Reason-Type" - auto_payroll: - "$ref": "#/components/schemas/Auto-Pilot-Type" - external: - "$ref": "#/components/schemas/Payroll-External-Type" - final_termination_payroll: - "$ref": "#/components/schemas/Payroll-Final-Termination-Payroll-Type" - withholding_pay_period: - "$ref": "#/components/schemas/Payroll-Withholding-Pay-Period-Type" - skip_regular_deductions: - "$ref": "#/components/schemas/Payroll-Skip-Regular-Deductions-Type" - fixed_withholding_rate: - "$ref": "#/components/schemas/Payroll-Fixed-Withholding-Rate-Type" - pay_period: - "$ref": "#/components/schemas/Payroll-Pay-Period-Type" - payroll_status_meta: - "$ref": "#/components/schemas/Payroll-Payroll-Status-Meta-Type" - totals: - "$ref": "#/components/schemas/Payroll-Totals-Type" - company_taxes: - "$ref": "#/components/schemas/Payroll-Company-Taxes-Type" - payroll_taxes: - "$ref": "#/components/schemas/Payroll-Taxes-Type" - payment_speed_changed: - "$ref": "#/components/schemas/Payroll-Payment-Speed-Changed-Type" - created_at: - "$ref": "#/components/schemas/Created-At-Type" - submission_blockers: - "$ref": "#/components/schemas/Payroll-Submission-Blockers-Type" - credit_blockers: - "$ref": "#/components/schemas/Payroll-Credit-Blockers-Type" - processing_request: - "$ref": "#/components/schemas/Payroll-Processing-Request" - partner_owned_disbursement: - "$ref": "#/components/schemas/Payroll-Partner-Owned-Disbursement-Type" - employee_compensations: + type: string + format: uuid + description: The UUID of the company. + start_year: + type: integer + description: The start year for the report. + end_year: + type: integer + description: The end year for the report. + x-examples: + accepted: + request_uuid: a1b2c3d4-e5f6-7890-abcd-ef1234567890 + company_uuid: 12345678-abcd-ef12-3456-7890abcdef12 + start_year: 2023 + end_year: 2024 + Bulk-Report-Body: + description: Each `batch` item is a `custom_report` or a `general_ledger` report. + type: object + required: + - batch + properties: + batch: type: array - uniqueItems: false + minItems: 1 + maxItems: 25 + description: One report per item. Up to 25 items per batch, across any combination of companies the partner is mapped to. items: - type: object - allOf: - - "$ref": "#/components/schemas/Payroll-Employee-Compensations-Type" - - "$ref": "#/components/schemas/Payroll-Employee-Compensations-Included" - Company-Bank-Account-Request: + "$ref": "#/components/schemas/Bulk-Report-Item" + example: + batch: + - company_uuid: 12345678-abcd-ef12-3456-7890abcdef12 + report_type: custom_report + columns: + - employee_first_name + groupings: + - employee + file_type: csv + custom_name: Q1 Payroll Export + with_totals: false + start_date: '2026-01-01' + end_date: '2026-03-31' + date_filter_type: check_date + payment_method: check + employment_type: exempt + employment_status: active_full_time + - company_uuid: 12345678-abcd-ef12-3456-7890abcdef12 + report_type: general_ledger + payroll_uuid: 7b1d0df1-6403-4a06-8768-c1dd7d24d27a + aggregation: default + x-tags: + - Reports + Bulk-Report-Item: + description: 'A single report inside a bulk batch. Required fields depend on `report_type`: `custom_report` requires `columns` and `file_type`; `general_ledger` requires `payroll_uuid` and `aggregation`.' + oneOf: + - "$ref": "#/components/schemas/Bulk-Report-Custom-Report-Item" + - "$ref": "#/components/schemas/Bulk-Report-General-Ledger-Item" + discriminator: + propertyName: report_type + mapping: + custom_report: "#/components/schemas/Bulk-Report-Custom-Report-Item" + general_ledger: "#/components/schemas/Bulk-Report-General-Ledger-Item" + x-tags: + - Reports + Bulk-Report-Custom-Report-Item: + description: A custom report entry in a bulk batch. type: object + required: + - company_uuid + - report_type + - columns + - file_type properties: - routing_number: + company_uuid: type: string - description: The bank routing number - account_number: + format: uuid + description: UUID of the company to generate the report for. The partner must be mapped to this company. + example: 12345678-abcd-ef12-3456-7890abcdef12 + report_type: type: string - description: The bank account number - account_type: + enum: + - custom_report + description: Identifies this batch item as a custom report. + example: custom_report + columns: + type: array + description: Columns to include in the report. + items: + type: string + enum: + - additional_earnings + - bank_account_account_number + - bank_account_routing_number + - bank_account_type + - bank_account + - bonus + - cash_tips + - check_amount + - check_date + - commission + - date_of_birth + - double_overtime_earnings + - double_overtime_hours + - double_overtime_rate + - employee_additional_taxes + - employee_benefit_contributions + - employee_compensation_time_period + - employee_compensation + - employee_deductions + - employee_department + - employee_email + - employee_donations + - employee_federal_income_tax + - employee_first_name + - employee_last_name + - employee_middle_initial + - employee_medicare_additional_tax + - employee_medicare_tax + - employee_phone_number + - employee_social_security_tax + - employee_state_income_tax + - employee_taxes + - employee_uuid + - employee_work_email + - employer_additional_taxes + - employer_benefit_contributions + - employer_cost + - employer_futa_tax + - employer_medicare_tax + - employer_social_security_tax + - employer_suta_tax + - employer_taxes + - employment_type + - employment + - end_date + - garnishments + - gross_earnings + - holiday_earnings + - holiday_hours + - home_address_city + - home_address_state + - home_address_street + - home_address_zip + - home_address + - job_title + - net_pay + - one_time_reimbursements + - overtime_earnings + - overtime_hours + - overtime_rate + - paid_time_off_earnings + - paid_time_off_hours + - paid_time_off_rate + - pay_period_end + - pay_period_start + - paycheck_tips + - payment_method + - payroll_type + - payroll_uuid + - preferred_first_name + - recurring_reimbursements + - regular_earnings + - regular_hours + - regular_rate + - reimbursements + - risk_class_code + - sick_rate + - sick_time_off_earnings + - sick_time_off_hours + - start_date + - total_employer_benefit_contributions + - total_time_off_earnings + - total_time_off_hours + - work_address_city + - work_address_street + - work_address_zip + groupings: + type: array + description: How to group the report. If omitted, defaults are derived from the requested `columns`. + items: + type: string + enum: + - payroll + - employee + - work_address + - work_address_state + file_type: type: string - description: The bank account type + description: The type of file to generate. enum: - - Checking - - Savings + - csv + - json + - pdf + custom_name: + type: string + description: Display name for the report. + with_totals: + type: boolean + description: Whether to include subtotals and grand totals. + default: false + date_filter_type: + type: string + description: Which payroll date `start_date` and `end_date` filter against. + default: period_end_date + enum: + - period_end_date + - period_start_date + - check_date + start_date: + type: string + format: date + description: Start date of data to filter by. + example: '2026-01-01' + end_date: + type: string + format: date + description: End date of data to filter by. + example: '2026-03-31' + payment_method: + type: string + description: Payment method to filter by. + enum: + - check + - direct_deposit + employment_type: + type: string + description: Employee employment type to filter by. + enum: + - exempt + - salaried_nonexempt + - nonexempt + - commission_only_exempt + - commission_only_nonexempt + employment_status: + type: string + description: Employee employment status to filter by. + enum: + - active_full_time + - active_part_time + - active_part_time_eligible + - active_variable + - active_seasonal + - active + - dismissed + employee_uuids: + type: + - array + - 'null' + description: Employees to filter by. + items: + type: string + department_uuids: + type: array + description: Departments to filter by. + items: + type: string + work_address_uuids: + type: array + description: Work addresses to filter by. + items: + type: string + x-tags: + - Reports + Bulk-Report-General-Ledger-Item: + description: A general ledger report entry in a bulk batch. + type: object required: - - routing_number - - account_number - - account_type - Company-Suspension-List: - type: array - description: List of suspension records for a company. - items: - "$ref": "#/components/schemas/Company-Suspension" - x-examples: - success_status: - - uuid: 3bd0fa7c-071e-4e85-a6bf-f73a69797694 - company_uuid: 3a0e3fb7-3d4b-4c7c-8ba0-9ce3c9f1f3be - effective_date: '2025-07-23' - reason: shutting_down - leaving_for: - reconcile_tax_method: refund_taxes - file_yearly_forms: false - file_quarterly_forms: false - comments: - tax_refunds: [] - - uuid: 2ad79a4e-2fbd-43ca-a77b-e9049e6cab15 - company_uuid: 3a0e3fb7-3d4b-4c7c-8ba0-9ce3c9f1f3be - effective_date: '2025-07-23' - reason: switching_provider - leaving_for: adp - reconcile_tax_method: refund_taxes - file_yearly_forms: false - file_quarterly_forms: false - comments: Company is transitioning to ADP for their payroll and HR needs - tax_refunds: [] - Company-Suspension-Creation-Errors: + - company_uuid + - report_type + - payroll_uuid + - aggregation + properties: + company_uuid: + type: string + format: uuid + description: UUID of the company to generate the report for. The partner must be mapped to this company. + example: 12345678-abcd-ef12-3456-7890abcdef12 + report_type: + type: string + enum: + - general_ledger + description: Identifies this batch item as a general ledger report. + example: general_ledger + payroll_uuid: + type: string + format: uuid + description: The UUID of the payroll to generate the general ledger for. + aggregation: + type: string + enum: + - default + - job + - department + - integration + description: The breakdown of the report. Use `default` for no split. + integration_type: + type: + - string + - 'null' + description: The kind of integration set up for the company. Required when `aggregation` is `integration`; must be null otherwise. + x-tags: + - Reports + Create-Bulk-Report: type: object - allOf: - - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + required: + - uuid + - status + properties: + uuid: + type: string + format: uuid + description: Unique identifier of the bulk report batch. + status: + type: string + enum: + - pending + - processing + - completed + - failed + description: | + The batch's processing state. + - `pending`: accepted, not yet started + - `processing`: reports are being generated + - `completed`: all reports finished + - `failed`: the batch failed before completing x-examples: - missing_required_fields: - errors: - - error_key: reconcile_tax_method - category: invalid_attribute_value - message: Reconcile tax method is required - - error_key: reason - category: invalid_attribute_value - message: Reason is required - - error_key: file_yearly_forms - category: invalid_attribute_value - message: File yearly forms is required - gusto_com_requires_support: - errors: - - error_key: leaving_for - category: invalid_attribute_value - message: Switching to Gusto.com must be processed by our Customer Support team - leaving_for_required: - errors: - - error_key: leaving_for - category: invalid_attribute_value - message: Leaving for is required when switching providers - switching_provider_cannot_pay_taxes: - errors: - - error_key: reconcile_tax_method - category: invalid_attribute_value - message: Reconcile tax method must be refund_taxes when switching to a new payroll provider - pay_taxes_requires_quarterly_filing: - errors: - - error_key: file_quarterly_forms - category: invalid_attribute_value - message: File quarterly forms must be true when paying withheld taxes - Time-Off-Request: + pending: + uuid: 4c3a536c-4c88-4fec-a4db-eb4112ab9c92 + status: pending + x-tags: + - Reports + Bulk-Report: type: object - description: The representation of a time off request. + required: + - uuid + - status + - submitted_at + - completed_at + - submitted_items + properties: + uuid: + type: string + format: uuid + description: Unique identifier of the bulk report batch. + status: + type: string + enum: + - pending + - processing + - success + - partial_success + - failed + description: Overall batch status. `pending`/`processing` while in progress; once finished, `success` (all reports succeeded), `partial_success` (some succeeded, some failed), or `failed` (none succeeded). + submitted_at: + type: string + format: date-time + description: When the batch was accepted. + completed_at: + type: + - string + - 'null' + format: date-time + description: When the batch reached a terminal state. Null while non-terminal. + submitted_items: + type: integer + description: How many reports the partner asked for in this batch. + partner_uuid: + type: string + format: uuid + description: UUID of the partner that owns this batch. Returned only once the batch has finished; omitted while in progress. + processed_items: + type: integer + description: How many reports succeeded. Returned only once the batch has finished; omitted while in progress. + report_url: + type: + - string + - 'null' + description: Signed S3 URL to a zip containing every successfully-generated report, valid for 10 minutes. Returned only once the batch has finished; omitted while in progress. + companies: + type: array + description: Per-company breakdown. Returned only once the batch has finished; omitted while in progress. + items: + "$ref": "#/components/schemas/Bulk-Report-Company" x-examples: - success_status: - uuid: 9145390f-0431-45ee-b8a0-6e7a8850d4cf - status: approved - employee_note: Vacation at Disney World! - employer_note: But Universal has Harry Potter World... - days: - '2019-06-01': '4.000' - '2019-06-02': '8.000' - '2019-06-03': '2.000' - request_type: vacation - policy_type: vacation - policy_uuid: ae382963-06b2-4b57-9780-8feda862bb70 - employee: - uuid: 05f8663b-5944-4cfb-910e-1ee0a6df7b42 - full_name: Jessica Gusto - approver: - uuid: 21d8dff4-ce09-4120-a274-3a5628bf6769 - full_name: Karen Gusto - initiator: - uuid: 05f8663b-5944-4cfb-910e-1ee0a6df7b42 - full_name: Jessica Gusto + pending: + uuid: 4c3a536c-4c88-4fec-a4db-eb4112ab9c92 + status: processing + submitted_at: '2026-06-10T10:24:54Z' + completed_at: + submitted_items: 2 + success: + uuid: 4c3a536c-4c88-4fec-a4db-eb4112ab9c92 + status: success + submitted_at: '2026-06-10T10:24:54Z' + completed_at: '2026-06-10T10:25:08Z' + submitted_items: 2 + partner_uuid: 0b9deb0b-5572-4b62-bce7-9b5624b6381d + processed_items: 2 + report_url: https://reports.gusto-api.com/bulk_reports/4c3a536c-4c88-4fec-a4db-eb4112ab9c92.zip + companies: + - company_uuid: 12345678-abcd-ef12-3456-7890abcdef12 + status: success + reports: + - report_type: custom_report + file_type: csv + status: success + error: + - report_type: general_ledger + file_type: json + status: success + error: + x-tags: + - Reports + Bulk-Report-Company: + description: Results for a single company in a bulk report batch. + type: object + required: + - company_uuid + - status + - reports + properties: + company_uuid: + type: string + format: uuid + description: UUID of the company. + status: + type: string + enum: + - pending + - success + - partial_success + - failed + description: | + This company's overall status across its `reports`: + - `success`: every report succeeded + - `partial_success`: some succeeded, some failed + - `failed`: every report failed + - `pending`: at least one report is still being generated + reports: + type: array + items: + "$ref": "#/components/schemas/Bulk-Report-Item-Result" + x-tags: + - Reports + Bulk-Report-Item-Result: + description: A single report's outcome. + type: object + required: + - report_type + - file_type + - status + - error properties: - uuid: + report_type: type: string - description: The UUID of the time off request. - readOnly: true + enum: + - custom_report + - general_ledger + description: Which report this entry refers to. + file_type: + type: string + description: The report's output file type. status: type: string - description: The status of the time off request. enum: - pending - - approved - - declined - - consumed - readOnly: true - employee_note: + - success + - failed + description: The terminal state for this individual report. + error: + type: + - string + - 'null' + description: A user-facing error message when status is `failed`. Null on success. + x-tags: + - Reports + Member-Portal-Invitation: + type: object + description: 'The status of a member portal invitation for an employee or contractor. Returned by `GET /v1/employees/{employee_id}/member_portal_invitations` and `GET /v1/contractors/{contractor_uuid}/member_portal_invitations`. + +' + required: + - status + - expired + properties: + status: type: string - description: A note about the time off request, from the employee to the employer. - readOnly: true - employer_note: + enum: + - pending + - sent + - verified + - complete + - cancelled + description: | + Current status of the member portal invitation. + - `pending`: The invitation record has been created but the invitation email has not yet been delivered. + - `sent`: The invitation email has been delivered to the member. + - `verified`: The member has been verified by the member portal partner. + - `complete`: The member has fully completed their member portal registration. + - `cancelled`: The invitation has been cancelled, either via `DELETE` on this endpoint or because it was superseded. + example: sent + expired: + type: boolean + description: 'Whether the invitation can no longer be acted on by the member. Returns `true` when the invitation token has expired or when the invitation has been `cancelled`. To reissue an expired invitation, call `POST` on this endpoint again — a new token will be generated and will override the prior one. + +' + example: false + x-examples: + sent_invitation: + status: sent + expired: false + complete_invitation: + status: complete + expired: false + cancelled_invitation: + status: cancelled + expired: true + Reverse-Wire-Transaction: + type: object + description: Representation of a reverse wire (drawdown) transaction. Reverse wires are debit transactions initiated by Gusto to pull funds from a partner's bank account to cover payroll or contractor payment obligations. + x-examples: + example: + company_uuid: a1b2c3d4-e5f6-7890-abcd-ef1234567890 + amount: '107250.85' + status: processed + payment_direction: debit + bank_name: Chase Payroll Incoming Wires + payment_event_type: Payroll + payment_event_uuid: f9e8d7c6-b5a4-3210-fedc-ba9876543210 + payment_event_check_date: '2024-01-15' + created_at: '2024-01-12' + properties: + company_uuid: type: string - description: A note about the time off request, from the employer to the employee. - readOnly: true - request_type: + description: Unique identifier of the company the reverse wire transaction belongs to + amount: type: string - description: The type of time off request. - deprecated: true + format: float + description: The amount of money moved by the reverse wire, as a decimal string. Always non-negative. + status: + type: string + description: | + Current status of the reverse wire transaction. + - `pending_processing`: The reverse wire has been initiated and is awaiting processing by the banking network. + - `processed`: The reverse wire was successfully settled and funds have been received. + - `rejected`: The reverse wire was rejected by the receiving bank (e.g. invalid account, insufficient funds). + - `failed`: The reverse wire failed during processing due to a system or network error. enum: - - vacation - - sick - readOnly: true - policy_type: + - pending_processing + - processed + - rejected + - failed + payment_direction: type: string - description: The type of the time off policy (e.g. vacation, sick). - readOnly: true - policy_uuid: + description: The direction of the payment. Reverse wires are always debits from the company's account. + enum: + - debit + bank_name: type: - string - 'null' - description: The UUID of the time off policy associated with this request. - readOnly: true - days: - description: An object that represents the days in the time off request. The keys of the object are the dates, formatted as a YYYY-MM-DD string. The values of the object are the number of hours requested off for each day, formatted as a string representation of a numeric decimal to the thousands place. - type: object - readOnly: true - employee: - type: object - description: '' - properties: - uuid: - type: string - description: The UUID of the employee the time off request is for. - readOnly: true - full_name: - type: string - description: The full name of the employee the time off request is for. - readOnly: true - readOnly: true - initiator: + description: Name of the receiving bank. Null when the bank is not known. + payment_event_type: + description: The type of payment event this reverse wire is associated with. Null when the wire is not linked to a payroll or contractor payment. + anyOf: + - type: string + enum: + - Payroll + - ContractorPayment + - type: 'null' + payment_event_uuid: type: - - object + - string - 'null' - description: '' - properties: - uuid: - type: string - description: The UUID of the employee who initiated the time off request. - readOnly: true - full_name: - type: string - description: The full name of the employee who initiated the time off request. - readOnly: true - readOnly: true - approver: + description: Unique identifier of the associated payroll or contractor payment. Null when the wire is not linked to a payment event. + payment_event_check_date: type: - - object + - string - 'null' - description: This value will be null if the request has not been approved. - properties: - uuid: - type: string - description: The UUID of the employee who approved the time off request. - readOnly: true - full_name: - type: string - description: The full name of the employee who approved the time off request. - readOnly: true - readOnly: true - Time-Off-Request-List: + description: The check date of the associated payment event. Null when the wire is not linked to a payment event. + created_at: + type: string + description: The date the reverse wire record was created. + required: + - company_uuid + - amount + - status + - payment_direction + - created_at + Reverse-Wire-Transaction-List: type: array items: - "$ref": "#/components/schemas/Time-Off-Request" + "$ref": "#/components/schemas/Reverse-Wire-Transaction" x-examples: - success_status: - - uuid: 9145390f-0431-45ee-b8a0-6e7a8850d4cf - status: approved - employee_note: Vacation at Disney World! - employer_note: But Universal has Harry Potter World... - days: - '2019-06-01': '4.000' - '2019-06-02': '8.000' - '2019-06-03': '2.000' - request_type: vacation - policy_type: vacation - policy_uuid: ae382963-06b2-4b57-9780-8feda862bb70 - employee: - uuid: 05f8663b-5944-4cfb-910e-1ee0a6df7b42 - full_name: Jessica Gusto - approver: - uuid: 21d8dff4-ce09-4120-a274-3a5628bf6769 - full_name: Karen Gusto - initiator: - uuid: 05f8663b-5944-4cfb-910e-1ee0a6df7b42 - full_name: Jessica Gusto - - uuid: 944cbbf4-8b13-4c45-babd-11ff13e17581 - status: pending - employee_note: Coming down with the flu - employer_note: '' - days: - '2019-02-01': '8.000' - request_type: sick - policy_type: sick - policy_uuid: bf493c7e-1a2d-4e5f-8c9a-3d7b6e4f2a1c - employee: - uuid: c2236d10-959a-4bb9-a21d-e14c6df447b6 - full_name: James Gusto - approver: - initiator: - uuid: c2236d10-959a-4bb9-a21d-e14c6df447b6 - full_name: James Gusto - Not-Found-Error-Object: - description: "Not Found \n \nThe requested resource does not exist. Make sure the provided ID/UUID is valid." + example: + - company_uuid: a1b2c3d4-e5f6-7890-abcd-ef1234567890 + amount: '107250.85' + status: processed + payment_direction: debit + bank_name: Chase Payroll Incoming Wires + payment_event_type: Payroll + payment_event_uuid: f9e8d7c6-b5a4-3210-fedc-ba9876543210 + payment_event_check_date: '2024-01-15' + created_at: '2024-01-12' + Tax-Filing: type: object - required: - - errors - properties: - errors: - type: array - items: - type: object - required: - - error_key - - category - properties: - error_key: - type: string - description: Specifies where the error occurs. Typically this key identifies the attribute/parameter related to the error. - category: - type: string - description: Specifies the type of error. The category provides error groupings and can be used to build custom error handling in your integration. - message: - type: string - description: Provides details about the error - generally this message can be surfaced to an end user. + description: Representation of a tax filing obligation x-examples: - not_found: - errors: - - error_key: request - category: not_found - message: The requested resource was not found. - Contractor-Payment-For-Group-Preview: - description: Preview representation of a single contractor payment with nullable uuid. - type: object + example: + uuid: 11111111-1111-1111-1111-111111111111 + company_uuid: f0e1d2c3-b4a5-6789-0fed-cba987654321 + form_title: Quarterly Contribution Return and Report of Wages + jurisdiction: CA + agency_name: California Employment Development Department (EDD) + period: Q1 2026 + period_start: '2026-01-01' + period_end: '2026-03-31' + due_date: '2026-04-30' + filed_at: + is_amendment: false + amends_filing_uuid: + status: failed + status_updated_at: '2026-04-20T14:12:33.000Z' + form_uuid: properties: uuid: + type: string + description: Unique identifier of the tax filing + company_uuid: + type: string + description: Unique identifier of the company to which the tax filing belongs + form_title: + type: string + description: The human-readable title of the tax form associated with this filing + jurisdiction: type: - string - 'null' - description: The unique identifier of the contractor payment in Gusto. - readOnly: true - contractor_uuid: + description: The tax jurisdiction this filing is for. A two-letter state code, or US for federal. + agency_name: + type: + - string + - 'null' + description: The name of the tax agency this filing is submitted to + period: + type: + - string + - 'null' + description: Humanized representation of the filing period (e.g. "Q1 2026", "2026", "December 2026") + period_start: + type: + - string + - 'null' + description: The start date of the period this filing covers + period_end: + type: + - string + - 'null' + description: The end date of the period this filing covers + due_date: + type: + - string + - 'null' + description: The date this filing is due + filed_at: + type: + - string + - 'null' + description: The timestamp this filing was filed, if it has been filed + is_amendment: + type: boolean + description: Whether this filing is an amendment to a previously filed filing + amends_filing_uuid: + type: + - string + - 'null' + description: The unique identifier of the filing this filing amends, if is_amendment is true + status: type: string - description: The UUID of the contractor. - readOnly: true - bonus: + description: The current status of the tax filing + enum: + - not_started + - in_progress + - blocked + - accepted + - not_required + - failed + status_updated_at: + type: + - string + - 'null' + description: The timestamp the status was last updated, if known + form_uuid: + type: + - string + - 'null' + description: Unique identifier of the rendered PDF form for this filing, if one has been generated. Fetch the PDF via GET /v1/forms/{form_uuid}/pdf + required: + - uuid + - company_uuid + - form_title + - is_amendment + - status + Tax-Filing-List: + type: array + items: + "$ref": "#/components/schemas/Tax-Filing" + x-examples: + example: + - uuid: 11111111-1111-1111-1111-111111111111 + company_uuid: f0e1d2c3-b4a5-6789-0fed-cba987654321 + form_title: Quarterly Contribution Return and Report of Wages + jurisdiction: CA + agency_name: California Employment Development Department (EDD) + period: Q1 2026 + period_start: '2026-01-01' + period_end: '2026-03-31' + due_date: '2026-04-30' + filed_at: + is_amendment: false + amends_filing_uuid: + status: failed + status_updated_at: '2026-04-20T14:12:33.000Z' + form_uuid: + - uuid: 33333333-3333-3333-3333-333333333333 + company_uuid: f0e1d2c3-b4a5-6789-0fed-cba987654321 + form_title: Employer's Quarterly Federal Tax Return + jurisdiction: US + agency_name: Internal Revenue Service + period: Q1 2026 + period_start: '2026-01-01' + period_end: '2026-03-31' + due_date: '2026-04-30' + filed_at: '2026-04-12T16:30:25.000Z' + is_amendment: false + amends_filing_uuid: + status: accepted + status_updated_at: '2026-04-12T16:30:25.000Z' + form_uuid: 22222222-2222-2222-2222-222222222222 + Tax-Payment: + type: object + description: Representation of a tax payment made by Gusto to a tax agency on behalf of a company + x-examples: + example: + uuid: 44444444-4444-4444-4444-444444444444 + company_uuid: f0e1d2c3-b4a5-6789-0fed-cba987654321 + agency_name: Internal Revenue Service + jurisdiction: US + period_start: '2026-01-01' + period_end: '2026-03-31' + due_date: '2026-04-30' + payment_sent_on: '2026-04-12' + amount: '1325.00' + amount_paid: '1325.00' + line_items: + - payroll_uuid: 55555555-5555-5555-5555-555555555555 + unique_tax_id: 00-000-0000-FIT-000 + amount: '1325.00' + properties: + uuid: type: string - description: The bonus amount in the payment. - readOnly: true - hours: + description: Unique identifier of the tax payment + company_uuid: type: string - description: The number of hours worked for the payment. - readOnly: true - payment_method: + description: Unique identifier of the company to which the tax payment belongs + agency_name: type: string - description: The payment method. - enum: - - Direct Deposit - - Check - - Historical Payment - - Correction Payment - readOnly: true - reimbursement: + description: The name of the tax agency this payment is submitted to + jurisdiction: type: string - description: The reimbursement amount in the payment. - readOnly: true - status: + description: The tax jurisdiction this payment is for. A two-letter state code, or US for federal. + period_start: type: string - description: The status of the contractor payment. Will transition to `Funded` during payments processing if the payment should be funded, i.e. has `Direct Deposit` for payment method. Contractors payments with `Check` payment method will remain `Unfunded`. - enum: - - Funded - - Unfunded - hourly_rate: + format: date + description: The start date of the period this payment covers + period_end: type: string - description: The rate per hour worked for the payment. - readOnly: true - may_cancel: - type: boolean - description: Determine if the contractor payment can be cancelled. - readOnly: true - wage: + format: date + description: The end date of the period this payment covers + due_date: type: string - description: The fixed wage of the payment, regardless of hours worked. - readOnly: true - wage_type: + format: date + description: The date this payment is due + payment_sent_on: + type: + - string + - 'null' + format: date + description: The date Gusto submitted this payment to the tax agency. It is null until submitted, and also if the payment is returned or cancelled after being sent. It is not guaranteed to stay set once populated. + amount: type: string - description: The wage type for the payment. - enum: - - Hourly - - Fixed - readOnly: true - wage_total: + format: float + description: Total amount owed for this tax payment. Can be negative for corrections, refunds, or credits. + amount_paid: type: string - description: "(hours * hourly_rate) + wage + bonus" - readOnly: true - x-tags: + format: float + description: Amount paid toward this tax payment so far, sourced from the payment's running balance. "0.00" until paid; equal to `amount` once fully paid. + line_items: + type: array + description: The payroll tax liabilities that make up this payment. Empty array when the payment has no associated payroll taxes. Only included in the response of GET /v1/companies/{company_uuid}/tax_payments/{uuid}. It is omitted from the list endpoint response. + items: + "$ref": "#/components/schemas/Tax-Payment-Line-Item" + required: + - uuid + - company_uuid + - agency_name + - jurisdiction + - period_start + - period_end + - due_date + - amount + - amount_paid + Tax-Payment-Line-Item: + type: object + description: A single payroll tax liability rolled up into a tax payment + properties: + payroll_uuid: + type: string + description: Unique identifier of the payroll this liability came from + unique_tax_id: + type: string + description: Unique identifier of the tax type this liability is for + amount: + type: string + format: float + description: The amount of this liability included in the tax payment + required: + - payroll_uuid + - unique_tax_id + - amount + Tax-Payment-List: + type: array + items: + "$ref": "#/components/schemas/Tax-Payment" + x-examples: + example: + - uuid: 44444444-4444-4444-4444-444444444444 + company_uuid: f0e1d2c3-b4a5-6789-0fed-cba987654321 + agency_name: Internal Revenue Service + jurisdiction: US + period_start: '2026-01-01' + period_end: '2026-03-31' + due_date: '2026-04-30' + payment_sent_on: '2026-04-12' + amount: '1325.00' + amount_paid: '1325.00' + - uuid: 66666666-6666-6666-6666-666666666666 + company_uuid: f0e1d2c3-b4a5-6789-0fed-cba987654321 + agency_name: Illinois Department of Revenue + jurisdiction: IL + period_start: '2026-01-01' + period_end: '2026-03-31' + due_date: '2026-04-30' + payment_sent_on: + amount: '200.00' + amount_paid: '0.00' + securitySchemes: + CompanyAccessAuth: + type: http + scheme: bearer + description: Company-level authentication + SystemAccessAuth: + type: http + scheme: bearer + description: System-level authentication +paths: + "/v1/companies/{company_uuid}/ach_transactions": + get: + summary: Get all ACH transactions for a company + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + required: true + description: The UUID of the company + schema: + type: string + - name: contractor_payment_uuid + in: query + required: false + description: The UUID of the contractor payment + schema: + type: string + - name: payroll_uuid + in: query + required: false + description: The UUID of the payroll + schema: + type: string + - name: transaction_type + in: query + required: false + description: Used to filter the ACH transactions to only include those with a specific transaction type, such as "Credit employee pay". + schema: + type: string + - name: payment_direction + in: query + required: false + description: Used to filter the ACH transactions to only include those with a specific payment direction, either "credit" or "debit". + schema: + type: string + - name: page + in: query + required: false + description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + schema: + type: integer + - name: per + in: query + required: false + description: Number of objects per page. For majority of endpoints will default to 25 + schema: + type: integer + x-gusto-rswag: true + operationId: get-ach-transactions + security: + - CompanyAccessAuth: [] + description: |- + Fetches all ACH transactions for a company. + + scope: `ach_transactions:read` + tags: + - ACH Transactions + x-gusto-integration-type: + - embedded + responses: + '200': + description: Example response + content: + application/json: + schema: + "$ref": "#/components/schemas/Ach-Transaction-List" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: achTransactions + x-speakeasy-name-override: getAll + "/v1/companies/{company_id}/admins": + get: + summary: Get all the admins at a company + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: page + in: query + required: false + description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + schema: + type: integer + - name: per + in: query + required: false + description: Number of objects per page. For majority of endpoints will default to 25 + schema: + type: integer + x-gusto-rswag: true + operationId: get-v1-companies-company_id-admins + security: + - CompanyAccessAuth: [] + description: |- + Returns a list of all the admins at a company + + scope: `company_admin:read` + tags: + - Companies + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: Success + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Admin" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: listAdmins + post: + summary: Create an admin for the company + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + operationId: post-v1-companies-company_id-admins + security: + - CompanyAccessAuth: [] + description: |- + Creates a new admin for a company. + If the email matches an existing user, this will create an admin account for the current user. Otherwise, this will create a new user. + + scope: `company_admin:write` + tags: + - Companies + x-gusto-integration-type: + - embedded + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Admin" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Admin-Create-Request" + required: true + x-speakeasy-name-override: createAdmin + "/v1/benefits": + get: + summary: Get all supported benefits + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + operationId: get-v1-benefits + security: + - CompanyAccessAuth: [] + description: |- + Returns all benefits supported by Gusto. The benefit object in Gusto contains high level information about a particular benefit type and its tax considerations. When companies choose to offer a benefit, they are creating a Company Benefit object associated with a particular benefit. + + scope: `benefits:read` + tags: + - Company Benefits + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Supported-Benefit-List" + x-speakeasy-group: companyBenefits + x-speakeasy-name-override: getAll + "/v1/benefits/{benefit_id}": + get: + summary: Get a supported benefit + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: benefit_id + in: path + description: The benefit type in Gusto. + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-benefits-benefit_id + security: + - CompanyAccessAuth: [] + description: |- + Returns a benefit supported by Gusto. The benefit object in Gusto contains high level information about a particular benefit type and its tax considerations. When companies choose to offer a benefit, they are creating a Company Benefit object associated with a particular benefit. + + scope: `benefits:read` + tags: + - Company Benefits + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Supported-Benefit" + x-speakeasy-group: companyBenefits + x-speakeasy-name-override: getSupported + "/v1/benefits/{benefit_id}/requirements": + get: + summary: Get benefit fields requirements by benefit type + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: benefit_id + in: path + description: The benefit type in Gusto. + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-benefits-benefits_id-requirements + security: + - CompanyAccessAuth: [] + description: |- + Returns the field requirements for a given benefit type. + + scope: `benefits:read` + tags: + - Company Benefits + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Benefit-Type-Requirements" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: companyBenefits + x-speakeasy-name-override: getRequirements + "/v1/bulk_reports": + post: + summary: Create a bulk report batch + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + operationId: post-v1-bulk_reports + security: + - SystemAccessAuth: [] + description: "Triggers asynchronous generation of up to 25 reports across companies the partner is mapped to. Each `batch` item is a `custom_report` (same parameters as [create a custom report](https://docs.gusto.com/embedded-payroll/reference/post-companies-company_uuid-reports)) or a `general_ledger` report (same parameters as [create a general ledger report](https://docs.gusto.com/embedded-payroll/reference/post-payrolls-payroll_uuid-reports-general_ledger)), keyed by `company_uuid` and `report_type`. Items are validated synchronously; if any is invalid, the entire batch is rejected.\n\nPoll the [bulk report GET endpoint](https://docs.gusto.com/embedded-payroll/reference/get-v1-bulk_reports-request_uuid) with the returned `uuid` for status and the report URL, which is valid for 10 minutes.\n\n\U0001F4D8 System Access Authentication\n\nThis endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access)\n\nscope: `company_reports:write`" + tags: + - Reports + x-gusto-integration-type: + - embedded + responses: + '201': + description: Created + content: + application/json: + schema: + "$ref": "#/components/schemas/Create-Bulk-Report" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Bulk-Report-Body" + required: true + "/v1/bulk_reports/{request_uuid}": + get: + summary: Get a bulk report batch + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: request_uuid + in: path + description: The UUID of the bulk report batch. + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-bulk_reports-request_uuid + security: + - SystemAccessAuth: [] + description: "Get a bulk report batch's status and results given the `request_uuid`. While in progress, only batch metadata is returned; once complete, it also includes a signed `report_url` (a zip of all generated reports, valid for 10 minutes) and a per-company breakdown.\n\nReports containing PHI are inaccessible with `company_reports:read:tier_2_only` data scope.\n\n\U0001F4D8 System Access Authentication\n\nThis endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access)\n\nscope: `company_reports:read`" + tags: + - Reports + x-gusto-integration-type: + - embedded + responses: + '200': + description: OK + content: + application/json: + schema: + "$ref": "#/components/schemas/Bulk-Report" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + "/v1/companies/{company_id}": + get: + summary: Get a company + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-companies + security: + - CompanyAccessAuth: [] + description: |- + Get a company. + + The employees:read scope is required to return home_address and non-work locations. + The company_admin:read scope is required to return primary_payroll_admin. + The signatories:read scope is required to return primary_signatory. + + scope: `companies:read` + tags: + - Companies + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Company" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: get + put: + summary: Update a company + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + operationId: put-v1-companies + security: + - CompanyAccessAuth: [] + description: |- + Update a company. + + scope: `companies:write` + tags: + - Companies + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Company" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + required: + - contractor_only + properties: + contractor_only: + type: boolean + description: 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. + required: true + x-speakeasy-name-override: update + "/v1/companies/{company_id}/attachments": + get: + summary: Get List of Company Attachments + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-companies-attachments + security: + - CompanyAccessAuth: [] + description: |- + Retrieve a list of all the attachments uploaded by the company. + + ### Related guides + - [Manage company attachments](doc:manage-company-attachments) + + scope: `company_attachments:read` + tags: + - Company Attachment + x-gusto-integration-type: + - embedded + responses: + '200': + description: Successful + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Company-Attachment" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: companyAttachments + x-speakeasy-name-override: getList + post: + summary: Create Company Attachment and Upload File + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + operationId: post-v1-companies-attachment + security: + - CompanyAccessAuth: [] + description: |- + Upload a file and create a company attachment. We recommend uploading PDF files for optimal compatibility. However, the following file types are allowed: .qbb, .qbm, .gif, .jpg, .png, .pdf, .xls, .xlsx, .doc and .docx. + + ### Related guides + - [Manage company attachments](doc:manage-company-attachments) + + scope: `company_attachments:write` + tags: + - Company Attachment + x-gusto-integration-type: + - embedded + responses: + '201': + description: Created + content: + application/json: + schema: + "$ref": "#/components/schemas/Company-Attachment" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + multipart/form-data: + schema: + "$ref": "#/components/schemas/Company-Attachment-Create-Request-Body" + required: true + x-speakeasy-group: companyAttachments + x-speakeasy-name-override: create + "/v1/companies/{company_id}/attachments/{company_attachment_uuid}": + get: + summary: Get Company Attachment Details + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: company_attachment_uuid + in: path + description: The UUID of the company attachment + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-companies-attachment + security: + - CompanyAccessAuth: [] + description: |- + Retrieve the detail of an attachment uploaded by the company. + + ### Related guides + - [Manage company attachments](doc:manage-company-attachments) + + scope: `company_attachments:read` + tags: + - Company Attachment + x-gusto-integration-type: + - embedded + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Company-Attachment" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: companyAttachments + x-speakeasy-name-override: getDetails + "/v1/companies/{company_id}/attachments/{company_attachment_uuid}/download_url": + get: + summary: Get a temporary url to download the Company Attachment file + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: company_attachment_uuid + in: path + description: The UUID of the company attachment + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-companies-attachment-url + security: + - CompanyAccessAuth: [] + description: |- + Retrieve a temporary url to download an attachment file uploaded by the company. + + ### Related guides + - [Manage company attachments](doc:manage-company-attachments) + + scope: `company_attachments:read` + tags: + - Company Attachment + x-gusto-integration-type: + - embedded + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Company-Attachment-Download-Url" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: companyAttachment + x-speakeasy-name-override: getDownloadUrl + "/v1/companies/{company_id}/bank_accounts": + get: + summary: Get all company bank accounts + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-companies-company_id-bank-accounts + security: + - CompanyAccessAuth: [] + description: |- + Returns company bank accounts. Currently, we only support a single default bank account per company. + + scope: `company_bank_accounts:read` + tags: + - Bank Accounts + x-gusto-integration-type: + - embedded + responses: + '200': + description: successful + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Company-Bank-Account" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: bankAccounts + x-speakeasy-name-override: get + post: + summary: Create a company bank account + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + operationId: post-v1-companies-company_id-bank-accounts + security: + - CompanyAccessAuth: [] + description: "This endpoint creates a new company bank account.\n\nUpon being created, two verification deposits are automatically sent to the bank account, and the bank account's verification_status is 'awaiting_deposits'.\n\nWhen the deposits are successfully transferred, the verification_status changes to 'ready_for_verification', at which point the verify endpoint can be used to verify the bank account.\nAfter successful verification, the bank account's verification_status is 'verified'.\n\n\n>\U0001F6A7 Warning\n>\n> If a default bank account exists, it will be disabled and the new bank account will replace it as the company's default funding method.\n\nscope: `company_bank_accounts:write`" + tags: + - Bank Accounts + x-gusto-integration-type: + - embedded + responses: + '200': + description: Bank account unchanged + content: + application/json: + schema: + "$ref": "#/components/schemas/Company-Bank-Account" + '201': + description: created + content: + application/json: + schema: + "$ref": "#/components/schemas/Company-Bank-Account" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: Invalid Attribute + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Company-Bank-Account-Request" + required: true + x-speakeasy-group: bankAccounts + x-speakeasy-name-override: create + "/v1/companies/{company_id}/bank_accounts/{bank_account_id}": + delete: + summary: Delete a company bank account + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: bank_account_id + in: path + description: The UUID of the company bank account + required: true + schema: + type: string + x-gusto-rswag: true + operationId: delete-v1-companies-company_id-bank-accounts-bank_account_id + security: + - CompanyAccessAuth: [] + description: |- + This endpoint disables a company bank account. + + A bank account cannot be disabled if it is used for any unprocessed payments. + + scope: `company_bank_accounts:write` + tags: + - Bank Accounts + x-gusto-integration-type: + - embedded + responses: + '204': + description: successful + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: Cannot delete bank account with unfunded payments + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + "/v1/companies/{company_id}/bank_accounts/{bank_account_uuid}/verify": + put: + summary: Verify a company bank account + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: bank_account_uuid + in: path + description: The UUID of the company bank account + required: true + schema: + type: string + x-gusto-rswag: true + operationId: put-v1-companies-company_id-bank-accounts-verify + security: + - CompanyAccessAuth: [] + description: |- + Verify a company bank account by confirming the two micro-deposits sent to the bank account. + + Note that the order of the two deposits specified in request parameters does not matter. + There's a maximum of 5 verification attempts, after which we will automatically initiate a new set of micro-deposits and require the bank account to be verified with the new micro-deposits. + + ### Bank account verification in demo + In the demo environment, use the `POST /v1/companies/{company_id}/bank_accounts/{bank_account_uuid}/send_test_deposits` endpoint to simulate the micro-deposits transfer and return the two amounts in the response. You can call this endpoint as many times as you wish to retrieve the values of the two micro-deposits. + + ### Webhooks + - `company.bank_account.verified`: Fires when the company bank account is successfully verified. + + ### Related guides + - [Manage company bank accounts](doc:manage-company-bank-accounts) + - [Bank Account Events](doc:bank-account-events) + + scope: `company_bank_accounts:write` + tags: + - Bank Accounts + x-gusto-integration-type: + - embedded + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Company-Bank-Account" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Company-Bank-Account-Verify-Request" + required: true + x-speakeasy-group: bankAccounts + x-speakeasy-name-override: verify + "/v1/companies/{company_id}/company_benefits": + get: + summary: Get benefits for a company + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: active + in: query + required: false + description: Whether the benefit is currently active + schema: + type: boolean + - name: enrollment_count + in: query + required: false + description: Whether to return employee enrollment count + schema: + type: boolean + - name: benefit_type + in: query + required: false + description: Filter by benefit type. Comma-separated list of benefit type IDs, i.e. `?benefit_type=5,105` + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-companies-company_id-company_benefits + security: + - CompanyAccessAuth: [] + description: |- + Company benefits represent the benefits that a company is offering to employees. This ties together a particular supported benefit with the company-specific information for the offering of that benefit. + + Note that company benefits can be deactivated only when no employees are enrolled. + + Benefits containing PHI are only visible to applications with the `company_benefits:read:phi` scope. + + scope: `company_benefits:read` + tags: + - Company Benefits + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: Example response + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Company-Benefit" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: companyBenefits + x-speakeasy-name-override: list + post: + summary: Create a company benefit + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + operationId: post-v1-companies-company_id-company_benefits + security: + - CompanyAccessAuth: [] + description: |- + Company benefits represent the benefits that a company is offering to employees. This ties together a particular supported benefit with the company-specific information for the offering of that benefit. + + Note that company benefits can be deactivated only when no employees are enrolled. + + When the application has the `company_benefits:write:benefit_type_limited` data scope, the application can only create company benefits for benefit types that are permitted for the application. + + scope: `company_benefits:write` + tags: + - Company Benefits + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '201': + description: Created + content: + application/json: + schema: + "$ref": "#/components/schemas/Company-Benefit" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Company-Benefit-Create-Request" + required: true + x-speakeasy-group: companyBenefits + x-speakeasy-name-override: create + "/v1/company_benefits/{company_benefit_id}": + get: + summary: Get a company benefit + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_benefit_id + in: path + description: The UUID of the company benefit + required: true + schema: + type: string + - name: with_employee_benefits + in: query + required: false + description: Whether to return employee benefits associated with the benefit + schema: + type: boolean + - name: include + in: query + required: false + schema: + type: string + enum: + - all_benefits + description: |- + Available options: + - all_benefits: If with_employee_benefits=true, include all effective dated benefits for each employee instead of only the current benefits. + x-gusto-rswag: true + operationId: get-v1-company_benefits-company_benefit_id + security: + - CompanyAccessAuth: [] + description: |- + Company benefits represent the benefits that a company is offering to employees. This ties together a particular supported benefit with the company-specific information for the offering of that benefit. + + Note that company benefits can be deactivated only when no employees are enrolled. + + When with_employee_benefits parameter with true value is passed, employee_benefits:read scope is required to return employee_benefits. + + scope: `company_benefits:read` + tags: + - Company Benefits + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Company-Benefit-With-Employee-Benefits" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: companyBenefits + x-speakeasy-name-override: get + put: + summary: Update a company benefit + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_benefit_id + in: path + description: The UUID of the company benefit + required: true + schema: + type: string + x-gusto-rswag: true + operationId: put-v1-company_benefits-company_benefit_id + security: + - CompanyAccessAuth: [] + description: |- + Company benefits represent the benefits that a company is offering to employees. This ties together a particular supported benefit with the company-specific information for the offering of that benefit. + + Note that company benefits can be deactivated only when no employees are enrolled. + + When the application has the `company_benefits:write:benefit_type_limited` data scope, the application can only update company benefits for benefit types that are permitted for the application. + + scope: `company_benefits:write` + tags: + - Company Benefits + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Company-Benefit" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Company-Benefit-Update-Request" + required: true + x-speakeasy-group: companyBenefits + x-speakeasy-name-override: update + delete: + summary: Delete a company benefit + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_benefit_id + in: path + description: The UUID of the company benefit + required: true + schema: + type: string + x-gusto-rswag: true + operationId: delete-v1-company_benefits-company_benefit_id + security: + - CompanyAccessAuth: [] + description: |- + 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 company benefit + - The benefit is not managed by a Partner or by Gusto (type must be 'External') + + When the application has the `company_benefits:write:benefit_type_limited` data scope, the application can only delete company benefits for benefit types that are permitted for the application. + + scope: `company_benefits:write` + tags: + - Company Benefits + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '204': + description: No Content + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-speakeasy-name-override: delete + x-speakeasy-group: companyBenefits + "/v1/company_benefits/{company_benefit_id}/contribution_exclusions": + get: + summary: Get contribution exclusions for a company benefit + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_benefit_id + in: path + description: The UUID of the company benefit + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-company_benefits-company_benefit_id-contribution_exclusions + security: + - CompanyAccessAuth: [] + description: |- + Returns all contributions for a given company benefit and whether they are excluded or not. + + Currently this endpoint only works for 401-k and Roth 401-k benefit types. + + scope: `company_benefits:read` + tags: + - Company Benefits + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: Success + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Contribution-Exclusion" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + put: + summary: Update contribution exclusions for a company benefit + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_benefit_id + in: path + description: The UUID of the company benefit + required: true + schema: + type: string + x-gusto-rswag: true + operationId: put-v1-company_benefits-company_benefit_id-contribution_exclusions + security: + - CompanyAccessAuth: [] + description: |- + Updates contribution exclusions for a given company benefit. + + Currently this endpoint only works for 401-k and Roth 401-k benefit types. + + scope: `company_benefits:write` + tags: + - Company Benefits + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: Example response + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Contribution-Exclusion" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Contribution-Exclusion-Update-Request" + required: true + "/v1/company_benefits/{company_benefit_id}/employee_benefits": + get: + summary: Get all employee benefits for a company benefit + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_benefit_id + in: path + description: The UUID of the company benefit + required: true + schema: + type: string + - name: page + in: query + required: false + description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + schema: + type: integer + - name: per + in: query + required: false + description: Number of objects per page. For majority of endpoints will default to 25 + schema: + type: integer + - name: include + in: query + required: false + schema: + type: string + enum: + - all_benefits + description: |- + Available options: + - all_benefits: Include all effective dated benefits for each employee instead of only the current benefits. + x-gusto-rswag: true + operationId: get-v1-company_benefits-company_benefit_id-employee_benefits + security: + - CompanyAccessAuth: [] + description: |- + Employee benefits represent an employee enrolled in a particular company benefit. It includes information specific to that employee's enrollment. + + Returns an array of all employee benefits enrolled for this company benefit. + + Benefits containing PHI are only visible to applications with the `employee_benefits:read:phi` scope. + + scope: `employee_benefits:read` + tags: + - Company Benefits + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: Success + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Employee-Benefit" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: getEmployeeBenefits + x-speakeasy-group: companyBenefits + put: + summary: Bulk update employee benefits for a company benefit + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_benefit_id + in: path + description: The UUID of the company benefit + required: true + schema: + type: string + x-gusto-rswag: true + operationId: put-v1-company_benefits-company_benefit_id-employee_benefits + security: + - CompanyAccessAuth: [] + description: |- + Employee benefits represent an employee enrolled in a particular company benefit. It includes information specific to that employee's enrollment. + + Create or update(if the employee is already enrolled in the company benefit previously) an employee benefit for the company benefit. + + Benefits containing PHI are only visible to applications with the `employee_benefits:read:phi` scope. + + When the application has the `employee_benefits:write:benefit_type_limited` data scope, the application can only create or update employee benefits for benefit types that are permitted for the application. + + scope: `employee_benefits:write` + tags: + - Company Benefits + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: Success + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Employee-Benefit" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Benefit-Bulk-Update-Request" + required: true + x-speakeasy-group: companyBenefits + x-speakeasy-name-override: updateEmployeeBenefits + "/v1/company_benefits/{company_benefit_id}/summary": + get: + summary: Get company benefit summary by company benefit id. + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_benefit_id + in: path + description: The UUID of the company benefit + required: true + schema: + type: string + - name: start_date + in: query + required: false + description: The start date for which to retrieve company benefit summary + example: '2022-01-01' + schema: + type: string + - name: end_date + in: query + required: false + description: The end date for which to retrieve company benefit summary. If left empty, defaults to today's date. + example: '2022-12-31' + schema: + type: string + - name: detailed + in: query + required: false + description: Display employee payroll item summary + schema: + type: boolean + x-gusto-rswag: true + operationId: get-v1-benefits-company_benefit_id-summary + security: + - CompanyAccessAuth: [] + description: |- + Returns summary benefit data for the requested company benefit id. + + Benefits containing PHI are only visible to applications with the `company_benefits:read:phi` scope. + + scope: `company_benefits:read` + tags: + - Company Benefits + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: Benefit summary response + content: + application/json: + schema: + "$ref": "#/components/schemas/Benefit-Summary" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: companyBenefits + x-speakeasy-name-override: getSummary + "/v1/companies/{company_id}/custom_fields": + get: + summary: Get the custom fields of a company + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: page + in: query + required: false + description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + schema: + type: integer + - name: per + in: query + required: false + description: Number of objects per page. For majority of endpoints will default to 25 + schema: + type: integer + x-gusto-rswag: true + operationId: get-v1-companies-company_id-custom_fields + security: + - CompanyAccessAuth: [] + description: |- + Returns a list of the custom fields of the company. Useful when you need to know the schema of custom fields for an entire company. + + scope: `companies:read` + tags: + - Companies + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Company-Custom-Field-List" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: getCustomFields + "/v1/companies/{company_id}/forms": + get: + summary: Get all company forms + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: sort_by + in: query + required: false + schema: + type: string + pattern: "^(created_at|name|year|quarter|draft|document_content_type)(:(asc|desc))?(,(created_at|name|year|quarter|draft|document_content_type)(:(asc|desc))?)*$" + example: created_at:asc + description: 'Sort by one or more fields. Options: created_at, name, year, quarter, draft, document_content_type. Append `:asc` or `:desc` to specify direction (e.g., `created_at:asc`). Defaults to ascending.' + - name: page + in: query + required: false + description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + schema: + type: integer + - name: per + in: query + required: false + description: Number of objects per page. For majority of endpoints will default to 25 + schema: + type: integer + x-gusto-rswag: true + operationId: get-v1-company-forms + security: + - CompanyAccessAuth: [] + description: |- + Get a list of all company's forms + + ### Related guides + - [Company Forms](doc:company-form) + + scope: `company_forms:read` + tags: + - Company Forms + x-gusto-integration-type: + - embedded + responses: + '200': + description: Success + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Form" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: getAll + x-speakeasy-group: companyForms + "/v1/forms/{form_id}": + get: + summary: Get a company form + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: form_id + in: path + description: The UUID of the form + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-company-form + security: + - CompanyAccessAuth: [] + description: |- + Get a company form + + scope: `company_forms:read` + tags: + - Company Forms + x-gusto-integration-type: + - embedded + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Form" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: companyForms + x-speakeasy-name-override: get + "/v1/forms/{form_id}/pdf": + get: + summary: Get a company form pdf + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: form_id + in: path + description: The UUID of the form + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-company-form-pdf + security: + - CompanyAccessAuth: [] + description: |- + Get the link to the form PDF + + scope: `company_forms:read` + tags: + - Company Forms + x-gusto-integration-type: + - embedded + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Form-Pdf" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: getPdf + x-speakeasy-group: companyForms + "/v1/forms/{form_id}/sign": + put: + summary: Sign a company form + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: form_id + in: path + description: The UUID of the form + required: true + schema: + type: string + - name: x-gusto-client-ip + in: header + required: false + description: Optional header to supply the IP address. This can be used to supply the IP address for signature endpoints instead of the signed_by_ip_address parameter. + schema: + type: string + x-gusto-rswag: true + operationId: put-v1-company-form-sign + security: + - CompanyAccessAuth: [] + description: |- + Sign a company form. Company forms must be signed by the company signatory. + + scope: `company_forms:sign` + tags: + - Company Forms + x-gusto-integration-type: + - embedded + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Form" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + properties: + signature_text: + type: string + description: The signature + agree: + type: boolean + description: Whether you agree to sign electronically + signed_by_ip_address: + type: string + description: The IP address of the signatory who signed the form. Both IPv4 AND IPv6 are supported. You must provide the IP address with either this parameter OR you can leave out this parameter and set the IP address in the request header using the `x-gusto-client-ip` header instead. + required: + - signature_text + - agree + required: true + x-speakeasy-group: companyForms + x-speakeasy-name-override: sign + "/v1/companies/{company_id}/industry_selection": + get: + summary: Get a company industry selection + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-company-industry + security: + - CompanyAccessAuth: [] + description: |- + Returns the industry classification for a company, including NAICS code, SIC codes, and industry title. + + scope: `companies:read` + tags: + - Industry Selection + x-gusto-integration-type: + - embedded + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Industry" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: industrySelection + x-speakeasy-name-override: get + put: + summary: Update a company industry selection + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + operationId: put-v1-company-industry + security: + - CompanyAccessAuth: [] + description: |- + Update the industry classification for a company by passing in a [NAICS code](https://www.naics.com). + + Optionally provide an industry title and [SIC codes](https://siccode.com/). If you do not provide SIC codes, + we will use the NAICS code to perform an internal lookup. + + Our UI leverages [Middesk API](https://docs.middesk.com/reference/introduction) to determine industry + classification codes. + + scope: `companies:write` + tags: + - Industry Selection + x-gusto-integration-type: + - embedded + responses: + '201': + description: Created + content: + application/json: + schema: + "$ref": "#/components/schemas/Industry" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Company-Industry-Selection-Required-Body" + required: true + x-speakeasy-group: industrySelection + x-speakeasy-name-override: update + "/v1/companies/{company_uuid}/notifications": + get: + summary: Get notifications for company + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company for which you would like to return notifications + required: true + schema: + type: string + - name: status + in: query + schema: + type: string + enum: + - open + - expired + - resolved + - name: page + in: query + required: false + description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + schema: + type: integer + - name: per + in: query + required: false + description: Number of objects per page. For majority of endpoints will default to 25 + schema: + type: integer + x-gusto-rswag: true + operationId: get-company-notifications + security: + - CompanyAccessAuth: [] + description: |- + Returns all notifications relevant for the given company. + + scope: `notifications:read` + tags: + - Notifications + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Notifications-List" + "/v1/companies/{company_uuid}/onboarding_status": + get: + summary: Get company onboarding status + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + example: 7b1d0df1-6403-4a06-8768-c1dd7d24d27a + required: true + schema: + type: string + - name: additional_steps + in: query + required: false + example: external_payroll + description: Comma-delimited string of additional onboarding steps to include. Currently only supports the value "external_payroll". + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-company-onboarding-status + security: + - CompanyAccessAuth: [] + description: |- + Retrieves a company's onboarding status, including whether onboarding is complete and the list of + required onboarding steps with their respective completion state. + + scope: `company_onboarding_status:read` + tags: + - Companies + x-gusto-integration-type: + - embedded + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Company-Onboarding-Status" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: getOnboardingStatus + "/v1/companies/{company_uuid}/finish_onboarding": + put: + summary: Finish company onboarding + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + example: 7b1d0df1-6403-4a06-8768-c1dd7d24d27a + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-company-finish-onboarding + security: + - CompanyAccessAuth: [] + description: |- + Finalize a company's onboarding process. + + ### Approve a company in demo + + After a company is finished onboarding, Gusto requires an additional step to review and approve that company. + The company onboarding status is "onboarding_completed": false, until the API call is made to finish company + onboarding. In production environments, this step is required for risk-analysis purposes. + + We provide the endpoint `PUT '/v1/companies/{company_uuid}/approve'` to facilitate company approvals in the demo environment. + + ```shell + PUT '/v1/companies/89771af8-b964-472e-8064-554dfbcb56d9/approve' + + # Response: Company object, with company_status: 'Approved' + ``` + + scope: `companies:write` + tags: + - Companies + x-gusto-integration-type: + - embedded + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Company-Onboarding-Status" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-speakeasy-name-override: finishOnboarding + "/v1/companies/{company_uuid}/payment_configs": + get: + summary: Get a company's payment configs + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-company-payment-configs + security: + - CompanyAccessAuth: [] + description: |- + Get payment speed configurations for the company: payment speed (1-day, 2-day, or 4-day ACH), fast payment limit, partner-owned disbursement setting, and earned fast ACH blockers when applicable. 1-day is only available to partners that opt in. + + ### Related guides + - [Payroll Processing Speeds](doc:2-day-vs-4-day) + + scope: `company_payment_configs:read` + tags: + - Payment Configs + x-gusto-integration-type: + - embedded + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Payment-Configs" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: get + x-speakeasy-group: paymentConfigs + put: + summary: Update a company's payment configs + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + operationId: put-v1-company-payment-configs + security: + - CompanyAccessAuth: [] + description: |- + Update payment speed, fast payment limit, and/or partner-owned disbursement for a company. + + At least one of `payment_speed`, `fast_payment_limit`, or `partner_owned_disbursement` is required. + 1-day payment speed is only applicable to partners that opt in. 1-day is not allowed when AutoPilot is enabled. + + ### Related guides + - [Payroll Processing Speeds](doc:2-day-vs-4-day) + + scope: `company_payment_configs:write` + tags: + - Payment Configs + x-gusto-integration-type: + - embedded + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Payment-Configs" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Payment-Configs-Update-Request" + required: true + x-speakeasy-group: paymentConfigs + x-speakeasy-name-override: update + "/v1/companies/{company_uuid}/suspensions": + get: + summary: Get suspensions for this company + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + required: true + description: The UUID of the company + schema: + type: string + x-gusto-rswag: true + operationId: get-companies-company_uuid-suspensions + security: + - CompanyAccessAuth: [] + description: "Get existing suspension records for this company. A company may have multiple suspension records if they have suspended their Gusto account more than once.\n\n>\U0001F4D8 To check if company is already suspended\n>\n> To determine if a company is _currently_ suspended, use the `is_suspended` and `company_status` fields in the [Get a company](https://docs.gusto.com/embedded-payroll/reference/get-v1-companies) endpoint.\n\nscope: `company_suspensions:read`" + tags: + - Companies + x-gusto-integration-type: + - embedded + responses: + '200': + description: Successful response + content: + application/json: + schema: + "$ref": "#/components/schemas/Company-Suspension-List" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: companies.suspensions + x-speakeasy-name-override: get + post: + summary: Suspend a company's account + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + required: true + description: The UUID of the company + schema: + type: string + x-gusto-rswag: true + operationId: post-companies-company_uuid-suspensions + security: + - CompanyAccessAuth: [] + description: |- + Use this endpoint to suspend a company. After suspension, company will no longer be able to run payroll but will retain access to their information, such as retrieving employee info or retrieving past payrolls. + + scope: `company_suspensions:write` + tags: + - Companies + x-gusto-integration-type: + - embedded + responses: + '200': + description: Successful response + content: + application/json: + schema: + "$ref": "#/components/schemas/Company-Suspension" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Company-Suspension-Creation-Errors" + requestBody: + content: + application/json: + schema: + type: object + required: + - file_quarterly_forms + - file_yearly_forms + - reconcile_tax_method + - reason + properties: + file_quarterly_forms: + type: boolean + description: Should Gusto file quarterly tax forms on behalf of the company? The correct answer can depend on why the company is suspending their account, and how taxes are being reconciled. + file_yearly_forms: + type: boolean + description: Should Gusto file yearly tax forms on behalf of the company? The correct answer can depend on why the company is suspending their account, and how taxes are being reconciled. + reconcile_tax_method: + type: string + enum: + - pay_taxes + - refund_taxes + description: How Gusto will handle taxes already collected. + comments: + type: string + description: User-supplied comments describing why they are suspending their account. Required if the user is leaving for another provider and selects "other" instead of a defined provider. + reason: + type: string + enum: + - switching_provider + - shutting_down + - acquired + - no_more_employees + - changing_ein_or_entity_type + description: "Explanation for why the company is suspending their account.\n\n> \U0001F6A7 FEIN or entity type changes require Customer Support\n> If a company is switching FEIN or changing their entity type, this change must be performed by Gusto Customer Support and cannot be performed via the API at this time.\n" + leaving_for: + type: string + enum: + - accountant + - adp + - adp_total_source + - bamboo_hr + - bank_or_financial_institution + - check + - deel + - gusto_com + - homebase + - insperity + - intuit_or_quickbooks + - justworks + - manual + - namely + - onpay + - other + - other_peo + - oyster + - patriot + - paychex + - paycom + - paylocity + - remote + - rippling + - square + - surepayroll + - toast + - trinet + - velocity_global + - zenefits + description: "The competitor the company is switching to. Required if `reason` is `'switching_provider'`.\n\n> \U0001F6A7 Switching to Gusto requires Customer Support\n> If `'gusto_com'` is selected, this change must be completed by Gusto Customer Support and cannot be performed via the API. This endpoint will return a 422 error in that case.\n" + required: true + x-speakeasy-group: companies.suspensions + x-speakeasy-name-override: suspend + "/v1/companies/{company_uuid}/tax_requirements": + get: + summary: Get all tax requirements for a company + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + required: true + description: The UUID of the company + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-companies-company_uuid-tax_requirements + security: + - CompanyAccessAuth: [] + description: |- + Retrieves all states for which a company has tax requirements, along with a boolean indicating whether tax setup + is complete for each state. Use this to determine which states still need tax setup during company onboarding. + + scope: `company_tax_requirements:read` + tags: + - Tax Requirements + x-gusto-integration-type: + - embedded + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Tax-Requirement-States-List" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: taxRequirements + x-speakeasy-name-override: getAll + "/v1/companies/{company_uuid}/tax_requirements/{state}": + get: + summary: Get tax requirements for a state + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + required: true + description: The UUID of the company + schema: + type: string + - name: state + in: path + required: true + description: The two-letter state abbreviation + example: CA + schema: + type: string + - name: scheduling + in: query + required: false + description: When true, return "new" requirement sets with valid `effective_from` dates that are available to save new effective-dated values. + schema: + type: boolean + x-gusto-rswag: true + operationId: get-v1-companies-company_uuid-tax_requirements-state + security: + - CompanyAccessAuth: [] + description: |- + Retrieves the detailed tax requirements for a specific state. The response includes requirement sets grouped by + category (e.g., registrations, tax rates, deposit schedules), each containing individual requirements with their + current values, labels, and metadata describing the expected input format. + + Use this to build dynamic UIs for tax setup or to read the current tax configuration for a state. + + scope: `company_tax_requirements:read` + tags: + - Tax Requirements + x-gusto-integration-type: + - embedded + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Tax-Requirements-State" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: taxRequirements + x-speakeasy-name-override: get + put: + summary: Update tax requirements for a state + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + required: true + description: The UUID of the company + schema: + type: string + - name: state + in: path + required: true + description: The two-letter state abbreviation + example: CA + schema: + type: string + x-gusto-rswag: true + operationId: put-v1-companies-company_uuid-tax_requirements-state + security: + - CompanyAccessAuth: [] + description: |- + Updates the tax requirement answers for a specific state. Submit answers to the requirement questions returned + by [GET /v1/companies/{company_uuid}/tax_requirements/{state}](ref:get-v1-companies-company_uuid-tax_requirements-state). + + ### Prerequisites + + 1. Retrieve current requirements via [GET /v1/companies/{company_uuid}/tax_requirements/{state}](ref:get-v1-companies-company_uuid-tax_requirements-state) + 2. Ensure that each requirement set that you're updating includes the correct `key`, `state`, and `effective_from` values from the GET response + + scope: `company_tax_requirements:write` + tags: + - Tax Requirements + x-gusto-integration-type: + - embedded + responses: + '200': + description: Success + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + properties: + requirement_sets: + "$ref": "#/components/schemas/Tax-Requirement-Set-Update" + required: true + x-speakeasy-group: taxRequirements + x-speakeasy-name-override: updateState + "/v1/companies/{company_id}/federal_tax_details": + get: + summary: Get a company's federal tax details + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + example: 7b1d0df1-6403-4a06-8768-c1dd7d24d27a + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-companies-company_id-federal_tax_details + security: + - CompanyAccessAuth: [] + description: |- + Retrieves a company's federal tax details including EIN verification status, tax payer type, filing form, and other federal tax configuration. + + scope: `company_federal_taxes:read` + tags: + - Federal Tax Details + x-gusto-integration-type: + - embedded + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Federal-Tax-Details" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: federalTaxDetails + x-speakeasy-name-override: get + put: + summary: Update a company's federal tax details + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + example: 7b1d0df1-6403-4a06-8768-c1dd7d24d27a + required: true + schema: + type: string + x-gusto-rswag: true + operationId: put-v1-companies-company_id-federal_tax_details + security: + - CompanyAccessAuth: [] + description: |- + Updates a company's federal tax details including EIN, legal name, tax payer type, filing form, and S-Corp + taxation status. This information is required to onboard a company for use with Gusto Embedded Payroll. + + ### Prerequisites + Before calling this endpoint, retrieve the current federal tax details and `version` via [GET /v1/companies/{company_id}/federal_tax_details](ref:get-v1-companies-company_id-federal_tax_details) + + ### Webhooks + - `company.updated`: Fires when federal tax details for a company are successfully updated + + **Setup:** [POST /v1/webhook_subscriptions](ref:post-v1-webhook-subscription) with `subscription_types`: `["Company"]` + + scope: `company_federal_taxes:write` + tags: + - Federal Tax Details + x-gusto-integration-type: + - embedded + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Federal-Tax-Details" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '403': + description: Forbidden + content: + application/json: + schema: + "$ref": "#/components/schemas/Forbidden-Error-Object" + '409': + description: Conflict + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Federal-Tax-Details-Update" + required: true + x-speakeasy-group: federalTaxDetails + x-speakeasy-name-override: update + "/v1/jobs/{job_id}/compensations": + get: + summary: Get compensations for a job + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: job_id + in: path + description: The UUID of the job + required: true + schema: + type: string + - name: page + in: query + required: false + description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + schema: + type: integer + - name: per + in: query + required: false + description: Number of objects per page. For majority of endpoints will default to 25 + schema: + type: integer + - name: include + in: query + required: false + schema: + type: string + enum: + - all_compensations + description: | + Available options: + - all_compensations: Include all effective dated compensations for each job instead of only the current compensation + x-gusto-rswag: true + operationId: get-v1-jobs-job_id-compensations + security: + - CompanyAccessAuth: [] + description: |- + Compensations contain information on how much is paid out for a job. Jobs may have many compensations, but only one that is active. The current compensation is the one with the most recent `effective_date`. + + *Note: Currently the API does not support creating multiple compensations per job - creating a compensation with the same job_uuid as another will fail with a relevant error.* + + Use `flsa_status` to determine if an employee is eligible for overtime + By default the API returns only the current compensation - use the `include` parameter to return all compensations. + + scope: `compensations:read` + tags: + - Jobs and Compensations + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: Successful + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Compensation" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: getCompensations + x-speakeasy-group: jobsAndCompensations + post: + summary: Create a compensation + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: job_id + in: path + description: The UUID of the job + required: true + schema: + type: string + x-gusto-rswag: true + operationId: post-v1-compensations-compensation_id + security: + - CompanyAccessAuth: [] + description: |- + Compensations contain information on how much is paid out for a job. Jobs may have many compensations, but only one that is active. The current compensation is the one with the most recent `effective_date`. + + ### Prerequisites + Before calling this endpoint: + 1. A [job](ref:post-v1-jobs-job_id) must exist for the employee + + ### Webhooks + - `employee_job_compensation.created`: Fires when a compensation is successfully created + + scope: `compensations:write` + tags: + - Jobs and Compensations + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '201': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Compensation" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Compensations-Request-Body" + required: true + x-speakeasy-group: jobsAndCompensations + x-speakeasy-name-override: createCompensation + "/v1/compensations/{compensation_id}": + get: + summary: Get a compensation + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: compensation_id + in: path + description: The UUID of the compensation + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-compensations-compensation_id + security: + - CompanyAccessAuth: [] + description: |- + Compensations contain information on how much is paid out for a job. Jobs may have many compensations, but only one that is active. The current compensation is the one with the most recent `effective_date`. + + scope: `compensations:read` + tags: + - Jobs and Compensations + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Compensation" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: jobsAndCompensations + x-speakeasy-name-override: getCompensation + put: + summary: Update a compensation + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: compensation_id + in: path + description: The UUID of the compensation + required: true + schema: + type: string + x-gusto-rswag: true + operationId: put-v1-compensations-compensation_id + security: + - CompanyAccessAuth: [] + description: |- + Compensations contain information on how much is paid out for a job. Jobs may have many compensations, but only one that is active. The current compensation is the one with the most recent `effective_date`. + + ### Webhooks + - `employee_job_compensation.updated`: Fires when a compensation is successfully updated + + scope: `compensations:write` + tags: + - Jobs and Compensations + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Compensation" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Compensations-Update-Request-Body" + required: true + x-speakeasy-group: jobsAndCompensations + x-speakeasy-name-override: updateCompensation + delete: + summary: Delete a compensation + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: compensation_id + in: path + description: The UUID of the compensation + required: true + schema: + type: string + x-gusto-rswag: true + operationId: delete-v1-compensations-compensation_id + security: + - CompanyAccessAuth: [] + description: |- + Compensations contain information on how much is paid out for a job. Jobs may have many compensations, but only one that is active. The current compensation is the one with the most recent `effective_date`. This endpoint deletes a compensation for a job that hasn't been processed on payroll. + + ### Webhooks + - `employee_job_compensation.destroyed`: Fires when a compensation is successfully deleted + + scope: `compensations:write` + tags: + - Jobs and Compensations + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '204': + description: No Content + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-speakeasy-group: jobsAndCompensations + x-speakeasy-name-override: deleteCompensation + "/v1/contractors/{contractor_uuid}/bank_accounts": + get: + summary: Get all contractor bank accounts + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: contractor_uuid + in: path + description: The UUID of the contractor + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-contractors-contractor_uuid-bank_accounts + security: + - CompanyAccessAuth: [] + description: |- + Returns all contractor bank accounts. + + scope: `contractor_payment_methods:read` + tags: + - Contractor Payment Method + x-gusto-integration-type: + - embedded + responses: + '200': + description: Example response + content: + application/json: + schema: + "$ref": "#/components/schemas/Contractor-Bank-Account-List" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: getBankAccounts + x-speakeasy-group: contractorPaymentMethod + post: + summary: Create a contractor bank account + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: contractor_uuid + in: path + description: The UUID of the contractor + required: true + schema: + type: string + x-gusto-rswag: true + operationId: post-v1-contractors-contractor_uuid-bank_accounts + security: + - CompanyAccessAuth: [] + description: |- + Creates a contractor bank account. + + Note: We currently only support one bank account per contractor. Using this endpoint on a contractor who already has a bank account will just replace it. + + scope: `contractor_payment_methods:write` + tags: + - Contractor Payment Method + x-gusto-integration-type: + - embedded + responses: + '201': + description: Example response + content: + application/json: + schema: + "$ref": "#/components/schemas/Contractor-Bank-Account" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Contractor-Bank-Account-Create-Request-Body" + required: true + x-speakeasy-group: contractorPaymentMethods + x-speakeasy-name-override: createBankAccount + "/v1/contractors/{contractor_uuid}/forms": + get: + summary: Get all contractor forms + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: contractor_uuid + in: path + description: The UUID of the contractor + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-contractor-forms + security: + - CompanyAccessAuth: [] + description: |- + Get a list of all contractor's forms + + scope: `contractor_forms:read` + tags: + - Contractor Forms + x-gusto-integration-type: + - embedded + responses: + '200': + description: Example response + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Form_1099" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: contractorForms + x-speakeasy-name-override: list + "/v1/contractors/{contractor_uuid}/forms/{form_id}": + get: + summary: Get a contractor form + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: contractor_uuid + in: path + description: The UUID of the contractor + required: true + schema: + type: string + - name: form_id + in: path + description: The UUID of the form + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-contractor-form + security: + - CompanyAccessAuth: [] + description: |- + Get a contractor form + + scope: `contractor_forms:read` + tags: + - Contractor Forms + x-gusto-integration-type: + - embedded + responses: + '200': + description: Example response + content: + application/json: + schema: + "$ref": "#/components/schemas/Form_1099" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: contractorForms + x-speakeasy-name-override: get + "/v1/contractors/{contractor_uuid}/forms/{form_id}/pdf": + get: + summary: Get the contractor form pdf + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: contractor_uuid + in: path + description: The UUID of the contractor + required: true + schema: + type: string + - name: form_id + in: path + description: The UUID of the form + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-contractor-form-pdf + security: + - CompanyAccessAuth: [] + description: |- + Get the link to the form PDF + + scope: `contractor_forms:read` + tags: + - Contractor Forms + x-gusto-integration-type: + - embedded + responses: + '200': + description: Example response + content: + application/json: + schema: + "$ref": "#/components/schemas/Form-Pdf" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: contractorForms + x-speakeasy-name-override: getPdf + "/v1/contractors/{contractor_uuid}/address": + get: + summary: Get a contractor address + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: contractor_uuid + in: path + description: The UUID of the contractor + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-contractors-contractor_uuid-address + security: + - CompanyAccessAuth: [] + tags: + - Contractors + x-gusto-integration-type: + - embedded + description: |- + The address of a contractor is used to determine certain tax information about them. Addresses are geocoded on create and update to ensure validity. + + scope: `contractors:read` + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Contractor-Address" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: getAddress + put: + summary: Create or update a contractor's address + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: contractor_uuid + in: path + description: The UUID of the contractor + required: true + schema: + type: string + x-gusto-rswag: true + operationId: put-v1-contractors-contractor_uuid-address + security: + - CompanyAccessAuth: [] + tags: + - Contractors + x-gusto-integration-type: + - embedded + description: "The address of a contractor is used to determine certain tax information about them. Addresses are geocoded on create and update to ensure validity.\n\n> \U0001F6A7 Contractors can only have one address.\n>\n> When a contractor is created, an address is created for them by default. Updating the address will replace the existing address.\n\nscope: `contractors:write`" + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Contractor-Address" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Contractor-Address-Update-Body" + required: true + x-speakeasy-name-override: updateAddress + "/v1/companies/{company_id}/contractors/payment_details": + get: + summary: List contractor payment details + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company. This identifies the company whose contractor payment details you want to retrieve. + required: true + schema: + type: string + - name: contractor_uuid + in: query + required: false + description: Optional filter to get payment details for a specific contractor. When provided, the response will only include payment details for this contractor. + schema: + type: string + - name: contractor_payment_group_uuid + in: query + required: false + description: 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. + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-companies-company_id-contractors-payment_details + security: + - CompanyAccessAuth: [] + description: |- + Get payment details for contractors in a company. This endpoint returns a list of all contractors + associated with the specified company, including their payment methods and bank account details + if they are paid via direct deposit. + + For contractors paid by direct deposit, the response includes their bank account information + with sensitive data masked for security. The payment details also include information about + how their payments are split if they have multiple bank accounts configured. + + For contractors paid by check, only the basic payment method information is returned. + + ### Response Details + - For direct deposit contractors: + - Bank account details (masked) + - Payment splits configuration + - Routing numbers + - Account types + - For check payments: + - Basic payment method designation + + ### Common Use Cases + - Fetching contractor payment information for payroll processing + - Verifying contractor payment methods + - Reviewing payment split configurations + + `encrypted_account_number` is available only with the additional scope `contractor_payment_methods:read:account_numbers`. + + scope: `contractor_payment_methods:read` + tags: + - Contractors + x-gusto-integration-type: + - embedded + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Contractor-Payment-Details-List" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + "/v1/companies/{company_id}/contractor_payment_groups/preview": + post: + summary: Preview a contractor payment group + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + required: true + description: The UUID of the company + schema: + type: string + x-gusto-rswag: true + operationId: post-v1-companies-company_id-contractor_payment_groups-preview + security: + - CompanyAccessAuth: [] + description: |- + Preview a group of contractor payments. Request will validate inputs and return preview of the contractor payment group including the expected `debit_date`. The `uuid` field will be null in the response. + + The returned `creation_token` is a required parameter in order to create the contractor payment group. + + scope: `payrolls:read` + tags: + - Contractor Payment Groups + x-gusto-integration-type: + - embedded + responses: + '200': + description: Full contractor payment group object with null uuid + content: + application/json: + schema: + "$ref": "#/components/schemas/Contractor-Payment-Group-Preview" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided ID/UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + required: + - contractor_payments + properties: + contractor_payments: + type: array + items: + type: object + properties: + contractor_uuid: + type: string + description: The contractor receiving the payment + payment_method: + type: string + enum: + - Direct Deposit + - Check + - Historical Payment + default: Direct Deposit + wage: + type: string + format: float + description: If the contractor is on a fixed wage, this is the fixed wage payment for the contractor, regardless of hours worked + example: '5000.0' + hours: + type: string + format: float + example: '40.0' + description: If the contractor is on an hourly wage, this is the number of hours that the contractor worked for the payment + bonus: + type: string + format: float + example: '500.0' + description: If the contractor is on an hourly wage, this is the bonus the contractor earned + reimbursement: + type: string + format: float + example: '20.0' + description: Reimbursed wages for the contractor + invoice_number: + type: string + maxLength: 25 + example: INV-001 + description: An optional invoice number to associate with this contractor payment. This will be visible to the contractor on their paystub. + memo: + type: string + example: Payment for consulting services + description: An optional note or memo for this contractor payment. This will be visible to the contractor on their paystub. + check_date: + type: string + format: date + description: Date when payments should be processed + required: true + x-speakeasy-group: contractorPaymentGroups + x-speakeasy-name-override: preview + "/v1/contractor_payment_groups/{contractor_payment_group_uuid}/fund": + put: + summary: Fund a contractor payment group [DEMO] + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: contractor_payment_group_uuid + in: path + required: true + description: The UUID of the contractor payment group + schema: + type: string + x-gusto-rswag: true + operationId: put-v1-contractor_payment_groups-contractor_payment_group_id-fund + security: + - CompanyAccessAuth: [] + description: "> \U0001F6A7 Demo action\n> This action is only available in the Demo environment\n\nSimulate funding a contractor payment group. Funding only occurs automatically in the production environment when bank transactions are generated. Use this action in the demo environment to transition a contractor payment group's `status` from `Unfunded` to `Funded`. A `Funded` status is required for generating a contractor payment receipt.\n\nscope: `payrolls:run`" + tags: + - Contractor Payment Groups + x-gusto-integration-type: + - embedded + responses: + '200': + description: Full contractor payment group object + content: + application/json: + schema: + "$ref": "#/components/schemas/Contractor-Payment-Group" + '404': + description: | + Not Found + + The requested contractor payment group does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-speakeasy-name-override: fund + x-speakeasy-group: contractorPaymentGroups + "/v1/companies/{company_id}/contractor_payment_groups": + get: + summary: Get contractor payment groups for a company + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + required: true + description: The UUID of the company + schema: + type: string + - name: start_date + in: query + required: false + description: The time period for which to retrieve contractor payment groups. Defaults to 6 months ago. + example: '2020-01-01' + schema: + type: string + - name: end_date + in: query + required: false + description: The time period for which to retrieve contractor payment groups. Defaults to today's date. + example: '2020-12-31' + schema: + type: string + - name: page + in: query + required: false + description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + schema: + type: integer + - name: per + in: query + required: false + description: Number of objects per page. For majority of endpoints will default to 25 + schema: + type: integer + x-gusto-rswag: true + operationId: get-v1-companies-company_id-contractor_payment_groups + security: + - CompanyAccessAuth: [] + description: |- + Returns a list of minimal contractor payment groups within a given time period, including totals but not associated contractor payments. + + scope: `payrolls:read` + tags: + - Contractor Payment Groups + x-gusto-integration-type: + - embedded + responses: + '200': + description: List of Contractor Payment Groups + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Contractor-Payment-Group-With-Blockers" + '404': + description: | + Not Found + + The requested company does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: getList + x-speakeasy-group: contractorPaymentGroups + post: + summary: Create a contractor payment group + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + required: true + description: The UUID of the company + schema: + type: string + x-gusto-rswag: true + operationId: post-v1-companies-company_id-contractor_payment_groups + security: + - CompanyAccessAuth: [] + description: |- + Pay a group of contractors. Information needed depends on the contractor's wage type (hourly vs fixed) + + scope: `payrolls:run` + tags: - Contractor Payment Groups - Contractor-Payment-Group-Preview: - description: Preview of a contractor payment group - type: object - properties: - uuid: - type: - - string - - 'null' - description: The unique identifier of the contractor payment group. - readOnly: true - company_uuid: - type: string - description: The UUID of the company. - readOnly: true - check_date: - type: string - description: The check date of the contractor payment group. - readOnly: true - debit_date: - type: string - description: The debit date of the contractor payment group. - readOnly: true - status: - type: string - description: The status of the contractor payment group. Will be `Funded` if all payments that should be funded (i.e. have `Direct Deposit` for payment method) are funded. A group can have status `Funded` while having associated payments that have status `Unfunded`, i.e. payment with `Check` payment method. - enum: - - Unfunded - - Funded - readOnly: true - creation_token: - type: - - string - - 'null' - description: Token used to make contractor payment group creation idempotent. Will error if attempting to create a group with a duplicate token. - readOnly: true - partner_owned_disbursement: - type: - - boolean - - 'null' - description: Whether the disbursement is partner owned. - readOnly: true - submission_blockers: - type: array - description: List of submission blockers for the contractor payment group. - readOnly: true - items: - "$ref": "#/components/schemas/Payroll-Submission-Blocker-Type" - credit_blockers: - type: array - description: List of credit blockers for the contractor payment group. - readOnly: true - items: - "$ref": "#/components/schemas/Payroll-Credit-Blocker-Type" - totals: - type: object - properties: - amount: - type: string - description: The total amount for the group of contractor payments. - readOnly: true - debit_amount: - type: string - description: The total debit amount for the group of contractor payments. Sum of wage & reimbursement amount. - readOnly: true - wage_amount: - type: string - description: The total wage amount for the group of contractor payments. - readOnly: true - reimbursement_amount: + x-gusto-integration-type: + - embedded + responses: + '201': + description: Full contractor payment group object + content: + application/json: + schema: + "$ref": "#/components/schemas/Contractor-Payment-Group" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '404': + description: | + Not Found + + The requested company does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + required: + - check_date + - contractor_payments + - creation_token + properties: + check_date: + type: string + format: date + description: The payment check date + example: '2020-01-01' + creation_token: + type: string + description: A token used to make contractor payment group creation idempotent. The string must be unique for each group you intend to create. + example: 1d532d13-8f61-4a57-ad3c-b5fac1c6e05e + submission_blockers: + type: array + description: Optional array of submission blockers with selected unblock options. Returned from the preview endpoint and can be submitted with selected_option to resolve blockers. + items: + type: object + properties: + blocker_type: + type: string + description: The type of blocker that is blocking the payment submission + selected_option: + type: + - string + - 'null' + description: The unblock option selected to resolve the submission blocker + message: + type: string + description: Optional message related to the blocker + options: + type: array + description: Optional array of additional options for the blocker + items: + type: object + properties: + type: + type: string + description: The type of option + message: + type: string + description: Message for the option + contractor_payments: + type: array + items: + type: object + properties: + contractor_uuid: + type: string + description: The contractor receiving the payment + payment_method: + type: string + enum: + - Direct Deposit + - Check + - Historical Payment + default: Direct Deposit + wage: + type: string + format: float + description: If the contractor is on a fixed wage, this is the fixed wage payment for the contractor, regardless of hours worked + example: '5000.0' + hours: + type: string + format: float + example: '40.0' + description: If the contractor is on an hourly wage, this is the number of hours that the contractor worked for the payment + bonus: + type: string + format: float + example: '500.0' + description: If the contractor is on an hourly wage, this is the bonus the contractor earned + reimbursement: + type: string + format: float + example: '20.0' + description: Reimbursed wages for the contractor + invoice_number: + type: string + maxLength: 25 + example: INV-001 + description: An optional invoice number to associate with this contractor payment. This will be visible to the contractor on their paystub. + memo: + type: string + example: Payment for consulting services + description: An optional note or memo for this contractor payment. This will be visible to the contractor on their paystub. + required: true + x-speakeasy-group: contractorPaymentGroups + x-speakeasy-name-override: create + "/v1/contractor_payment_groups/{contractor_payment_group_uuid}": + get: + summary: Get a contractor payment group + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: contractor_payment_group_uuid + in: path + required: true + description: The UUID of the contractor payment group + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-contractor_payment_groups-contractor_payment_group_id + security: + - CompanyAccessAuth: [] + description: |- + Returns a contractor payment group with all associated contractor payments. + + scope: `payrolls:read` + tags: + - Contractor Payment Groups + x-gusto-integration-type: + - embedded + responses: + '200': + description: Successful response + content: + application/json: + schema: + "$ref": "#/components/schemas/Contractor-Payment-Group" + '404': + description: | + Not Found + + The requested contractor payment group does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: contractorPaymentGroups + x-speakeasy-name-override: get + delete: + summary: Cancel a contractor payment group + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: contractor_payment_group_uuid + in: path + required: true + description: The UUID of the contractor payment group + schema: + type: string + x-gusto-rswag: true + operationId: delete-v1-contractor_payment_groups-contractor_payment_group_id + security: + - CompanyAccessAuth: [] + description: |- + Cancels a contractor payment group and all associated contractor payments. All contractor payments must be cancellable, unfunded. + + scope: `payrolls:run` + tags: + - Contractor Payment Groups + x-gusto-integration-type: + - embedded + responses: + '204': + description: Successfully cancelled + '404': + description: | + Not Found + + The requested contractor payment group does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when trying to cancel a payment group that is not in a cancellable state, such as one that has already been funded or processed. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-speakeasy-name-override: delete + x-speakeasy-group: contractorPaymentGroups + "/v1/contractor_payment_groups/{id}/partner_disbursements": + get: + summary: Get partner disbursements for a contractor payment group + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: id + in: path + required: true + description: The UUID of the contractor payment group + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-contractor_payment_groups-id-partner_disbursements + security: + - CompanyAccessAuth: [] + description: |- + Get partner disbursements for a specific contractor payment group. + + scope: `partner_disbursements:read` + tags: + - Contractor Payment Groups + x-gusto-integration-type: + - embedded + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Contractor-Payment-Group-Partner-Disbursements" + '404': + description: | + Not Found + + The requested contractor payment group does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + patch: + summary: Update partner disbursements for a contractor payment group + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: id + in: path + required: true + description: The UUID of the contractor payment group + schema: + type: string + x-gusto-rswag: true + operationId: patch-v1-contractor_payment_groups-id-partner_disbursements + security: + - CompanyAccessAuth: [] + description: |- + Update partner disbursements for a specific contractor payment group. + + scope: `partner_disbursements:write` + tags: + - Contractor Payment Groups + x-gusto-integration-type: + - embedded + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Contractor-Payment-Group-Partner-Disbursements" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + properties: + disbursements: + type: array + items: + type: object + properties: + contractor_payment_uuid: + type: string + description: UUID of the contractor payment + example: 9f8e7d6c-5b4a-3928-1c2d-3e4f5a6b7c8d + payment_method: + type: string + enum: + - Direct Deposit + - Check + - Historical Payment + - Correction Payment + description: Payment method for the contractor + payment_status: + type: string + enum: + - Pending + - Paid + - Not partner managed + - Converted to check + description: Status of the payment disbursement + required: + - contractor_payment_uuid + required: + - disbursements + "/v1/contractors/{contractor_uuid}/payment_method": + get: + summary: Get a contractor's payment method + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: contractor_uuid + in: path + description: The UUID of the contractor + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-contractors-contractor_uuid-payment_method + security: + - CompanyAccessAuth: [] + description: |- + Fetches a contractor's payment method. A contractor payment method + describes how the payment should be split across the contractor's associated + bank accounts. + + scope: `contractor_payment_methods:read` + tags: + - Contractor Payment Method + x-gusto-integration-type: + - embedded + responses: + '200': + description: Example response + content: + application/json: + schema: + "$ref": "#/components/schemas/Contractor-Payment-Method" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: contractorPaymentMethod + x-speakeasy-name-override: get + put: + summary: Update a contractor's payment method + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: contractor_uuid + in: path + description: The UUID of the contractor + required: true + schema: + type: string + x-gusto-rswag: true + operationId: put-v1-contractors-contractor_id-payment_method + security: + - CompanyAccessAuth: [] + description: |- + Updates a contractor's payment method. Note that creating a contractor + bank account will also update the contractor's payment method. + + scope: `contractor_payment_methods:write` + tags: + - Contractor Payment Method + x-gusto-integration-type: + - embedded + responses: + '200': + description: Example response + content: + application/json: + schema: + "$ref": "#/components/schemas/Contractor-Payment-Method" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '409': + description: Conflict + content: + application/json: + schema: + "$ref": "#/components/schemas/Conflict-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + required: + - version + - type + properties: + version: + type: string + description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. + example: 63859768485e218ccf8a449bb60f14ed + type: + type: string + enum: + - Direct Deposit + - Check + description: The payment method type. If type is Direct Deposit, the contractor is required to have a bank account. See [Bank account endpoint](./post-v1-contractors-contractor_uuid-bank_accounts). + required: true + x-speakeasy-group: contractorPaymentMethod + x-speakeasy-name-override: update + "/v1/contractors/{contractor_uuid}/payments": + get: + summary: Get contractor payments + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: contractor_uuid + in: path + required: true + description: The UUID of the contractor + schema: + type: string + - name: sort_by + in: query + required: false + description: 'Sort the results. Format: `field` or `field:direction` where `field` is `check_date` or `created_at` and `direction` is `asc` or `desc`.' + example: check_date:desc + schema: + type: string + - name: page + in: query + required: false + description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + schema: + type: integer + - name: per + in: query + required: false + description: Number of objects per page. For majority of endpoints will default to 25 + schema: + type: integer + x-gusto-rswag: true + operationId: get-v1-contractors-contractor_uuid-payments + security: + - CompanyAccessAuth: [] + description: |- + Returns a paginated list of payments for a single contractor. + + Results are sortable by `check_date` or `created_at`. Append `:asc` or `:desc` to control direction (e.g., `check_date:desc`). + + scope: `contractor_pay_stubs:read` + tags: + - Contractor Payments + x-gusto-integration-type: + - embedded + responses: + '200': + description: A JSON array of contractor payments + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Contractor-Payment-Listing" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + "/v1/companies/{company_id}/contractor_payments": + get: + summary: Get contractor payments for a company + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + required: true + description: The UUID of the company + schema: + type: string + - name: start_date + in: query + required: true + description: The time period for which to retrieve contractor payments + example: '2020-01-01' + schema: + type: string + - name: end_date + in: query + required: true + description: The time period for which to retrieve contractor payments. If left empty, defaults to today's date. + example: '2020-12-31' + schema: + type: string + - name: contractor_uuid + in: query + required: false + description: The UUID of the contractor. When specified, will load all payments for that contractor. + schema: + type: string + - name: group_by_date + in: query + required: false + description: Display contractor payments results group by check date if set to true. + schema: + type: boolean + - name: page + in: query + required: false + description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + schema: + type: integer + - name: per + in: query + required: false + description: Number of objects per page. For majority of endpoints will default to 25 + schema: + type: integer + x-gusto-rswag: true + operationId: get-v1-companies-company_id-contractor_payments + security: + - CompanyAccessAuth: [] + description: |- + Returns an object containing individual contractor payments, within a given time period, including totals. + + Results are returned in reverse chronological order (newest first). + + scope: `payrolls:read` + tags: + - Contractor Payments + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: A JSON object containing contractor payments information + content: + application/json: + schema: + anyOf: + - "$ref": "#/components/schemas/Contractor-Payment-Summary" + - "$ref": "#/components/schemas/Contractor-Payment-Summary-By-Dates" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided ID/UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: contractorPayments + x-speakeasy-name-override: list + post: + summary: Create a contractor payment + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + required: true + description: The UUID of the company + schema: + type: string + x-gusto-rswag: true + operationId: post-v1-companies-company_id-contractor_payments + security: + - CompanyAccessAuth: [] + description: |- + Pay a contractor. Information needed depends on the contractor's wage type (hourly vs fixed) + + scope: `payrolls:run` + tags: + - Contractor Payments + x-gusto-integration-type: + - embedded + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Contractor-Payment" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided ID/UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Contractor-Payment-Body" + required: true + x-speakeasy-group: contractorPayments + x-speakeasy-name-override: create + "/v1/companies/{company_id}/contractor_payments/{contractor_payment_id}": + get: + summary: Get a single contractor payment + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + required: true + description: The UUID of the company + schema: + type: string + - name: contractor_payment_id + in: path + required: true + description: The UUID of the contractor payment + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-companies-company_id-contractor_payment-contractor-payment + security: + - CompanyAccessAuth: [] + description: |- + Returns a single contractor payment. + + scope: `payrolls:read` + tags: + - Contractor Payments + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Contractor-Payment" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided ID/UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: get + x-speakeasy-group: contractorPayments + delete: + summary: Cancel a contractor payment + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + required: true + description: The UUID of the company + schema: + type: string + - name: contractor_payment_id + in: path + required: true + description: The UUID of the contractor payment + schema: + type: string + x-gusto-rswag: true + operationId: delete-v1-companies-company_id-contractor_payment-contractor-payment + security: + - CompanyAccessAuth: [] + description: |- + Cancels and deletes a contractor payment. If the contractor payment has already started processing ("may_cancel": true), the payment cannot be cancelled. + + scope: `payrolls:run` + tags: + - Contractor Payments + x-gusto-integration-type: + - embedded + responses: + '204': + description: No Content + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided ID/UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-speakeasy-group: contractorPayments + x-speakeasy-name-override: delete + "/v1/companies/{company_uuid}/contractor_payments/preview": + get: + summary: Preview contractor payment debit date + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + required: true + description: The UUID of the company + schema: + type: string + x-gusto-rswag: true + operationId: get-companies-company_uuid-contractor_payments-preview + security: + - CompanyAccessAuth: [] + description: |- + Returns a debit_date dependent on the ACH payment speed of the company. + + If the payment method is Check or Historical payment, the debit_date will be the same as the check_date. + + scope: `payrolls:read` + tags: + - Contractor Payments + x-gusto-integration-type: + - embedded + responses: + '200': + description: OK + content: + application/json: + schema: + "$ref": "#/components/schemas/Contractor-Payments-Preview" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Contractor-Payments-Preview-Body" + required: true + x-speakeasy-name-override: preview + x-speakeasy-group: contractorPayments + "/v1/contractor_payments/{contractor_payment_uuid}/receipt": + get: + summary: Get a single contractor payment receipt + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: contractor_payment_uuid + in: path + required: true + description: The UUID of the contractor payment + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-contractor_payments-contractor_payment_uuid-receipt + security: + - CompanyAccessAuth: [] + description: |- + Returns a contractor payment receipt. + + Notes: + * Receipts are only available for direct deposit payments and are only available once those payments have been funded. + * Payroll Receipt requests for payrolls which do not have receipts available (e.g. payment by check) will return a 404 status. + * Hour and dollar amounts are returned as string representations of numeric decimals. + * Dollar amounts are represented to the cent. + * If no data has yet be inserted for a given field, it defaults to “0.00” (for fixed amounts). + + scope: `payrolls:read` + tags: + - Contractor Payments + x-gusto-integration-type: + - embedded + responses: + '200': + description: OK + content: + application/json: + schema: + "$ref": "#/components/schemas/Contractor-Payment-Receipt" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: getReceipt + x-speakeasy-group: contractorPayments + "/v1/contractor_payments/{contractor_payment_uuid}/fund": + put: + summary: Fund a contractor payment [DEMO] + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: contractor_payment_uuid + in: path + required: true + description: The UUID of the contractor payment + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-contractor_payments-contractor_payment_uuid-fund + security: + - CompanyAccessAuth: [] + description: "> \U0001F6A7 Demo action\n>\n> This action is only available in the Demo environment\n\nSimulate funding a contractor payment. Funding only occurs automatically in the production environment when bank transactions are generated. Use this action in the demo environment to transition a contractor payment's `status` from `Unfunded` to `Funded`. A `Funded` status is required for generating a contractor payment receipt.\n\nscope: `payrolls:run`" + tags: + - Contractor Payments + x-gusto-integration-type: + - embedded + responses: + '200': + description: OK + content: + application/json: + schema: + "$ref": "#/components/schemas/Contractor-Payment" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-speakeasy-group: contractorPayments + x-speakeasy-name-override: fund + "/v1/contractor_payments/{contractor_payment_id}/pdf": + get: + summary: Get a contractor payment PDF + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: contractor_payment_id + in: path + required: true + description: The UUID of the contractor payment + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-contractor_payments-contractor_payment_id-pdf + security: + - CompanyAccessAuth: [] + description: |- + Get a PDF document for a single contractor payment. + + scope: `payrolls:read` + tags: + - Contractor Payments + x-gusto-integration-type: + - embedded + responses: + '200': + description: A PDF document of the contractor payment + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided ID/UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + "/v1/contractors/{contractor_uuid}/rehire": + post: + summary: Schedule a contractor rehire + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: contractor_uuid + in: path + required: true + description: The UUID of the contractor + schema: + type: string + x-gusto-rswag: true + operationId: post-v1-contractors-contractor_uuid-rehire + security: + - CompanyAccessAuth: [] + description: |- + ## Purpose + Schedules a contractor rehire for a given date. Creates a new employment record for the contractor. + + ## Prerequisites + Before calling this endpoint: + 1. The contractor must be inactive (previously dismissed) + 2. The contractor must not already have an upcoming employment + + ## Related webhooks + - `contractor.reactivated`: Fires when the contractor becomes active again (on or after start_date) + + scope: `contractors:write` + tags: + - Contractors + x-gusto-integration-type: + - embedded + responses: + '204': + description: no content + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + properties: + start_date: + type: string + format: date + description: The rehire date + example: '2025-07-01' + required: + - start_date + delete: + summary: Cancel a pending contractor rehire + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: contractor_uuid + in: path + required: true + description: The UUID of the contractor + schema: + type: string + x-gusto-rswag: true + operationId: delete-v1-contractors-contractor_uuid-rehire + security: + - CompanyAccessAuth: [] + description: |- + ## Purpose + Cancels a pending contractor rehire. For future-dated rehires, cancellation is available anytime before the date. + For past-dated rehires, cancellation is only available within the 2-day grace period. + + ## Prerequisites + Before calling this endpoint: + - The contractor must have a pending rehire (upcoming employment) + + ## Related webhooks + - `contractor.deactivated`: Fires when the contractor returns to inactive state after cancellation + + scope: `contractors:write` + tags: + - Contractors + x-gusto-integration-type: + - embedded + responses: + '204': + description: no content + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + "/v1/contractors/{contractor_uuid}/termination": + post: + summary: Schedule a contractor termination + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: contractor_uuid + in: path + required: true + description: The UUID of the contractor + schema: + type: string + x-gusto-rswag: true + operationId: post-v1-contractors-contractor_uuid-termination + security: + - CompanyAccessAuth: [] + description: |- + ## Purpose + Schedules a contractor dismissal for a given date. Supports both immediate (past dates) and future-dated dismissals. + + ## Prerequisites + Before calling this endpoint: + 1. The contractor must be active (no existing pending dismissal) + 2. The contractor must have a current employment + + ## Related webhooks + - `contractor.deactivated`: Fires when the contractor becomes inactive (on or after end_date) + + scope: `contractors:write` + tags: + - Contractors + x-gusto-integration-type: + - embedded + responses: + '204': + description: no content + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + properties: + end_date: + type: string + format: date + description: The date of dismissal + example: '2025-06-15' + required: + - end_date + delete: + summary: Cancel a pending contractor termination + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: contractor_uuid + in: path + required: true + description: The UUID of the contractor + schema: + type: string + x-gusto-rswag: true + operationId: delete-v1-contractors-contractor_uuid-termination + security: + - CompanyAccessAuth: [] + description: |- + ## Purpose + Cancels a pending contractor dismissal. For future-dated dismissals, cancellation is available anytime before the date. + For past-dated dismissals, cancellation is only available within the 2-day grace period. + + ## Prerequisites + Before calling this endpoint: + - The contractor must have a pending dismissal (scheduled or within the grace period) + + ## Related webhooks + - `contractor.reactivated`: Fires when the contractor becomes active again after cancellation + + scope: `contractors:write` + tags: + - Contractors + x-gusto-integration-type: + - embedded + responses: + '204': + description: no content + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + "/v1/contractors/{contractor_uuid}": + get: + summary: Get a contractor + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: contractor_uuid + in: path + description: The UUID of the contractor + required: true + schema: + type: string + - name: include + in: query + explode: false + required: false + schema: + type: array + items: type: string - description: The total reimbursement amount for the group of contractor payments. - readOnly: true - check_amount: + enum: + - company_name + - portal_invitations + x-enumDescriptions: + company_name: Include the name of the company that the contractor is associated with + portal_invitations: Include portal invitation status information, including member portal invitation details and partner portal invitation status + description: Include the requested attribute(s) in each contractor response. Multiple options are comma separated. + x-gusto-rswag: true + operationId: get-v1-contractors-contractor_uuid + security: + - CompanyAccessAuth: [] + description: |- + Get a contractor. + + scope: `contractors:read` + tags: + - Contractors + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Contractor" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: get + put: + summary: Update a contractor + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: contractor_uuid + in: path + description: The UUID of the contractor + required: true + schema: + type: string + x-gusto-rswag: true + operationId: put-v1-contractors-contractor_uuid + security: + - CompanyAccessAuth: [] + description: "Update a contractor.\n\n> \U0001F6A7 Warning\n>\n> Watch out when changing a contractor's type (when the contractor is finished onboarding). Specifically, changing contractor type can be dangerous since Gusto won't recognize and file two separate 1099s if they simply change from business to individual\n\nscope: `contractors:write`" + tags: + - Contractors + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Contractor" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '409': + description: Conflict + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Contractor-Update-Request-Body" + required: true + x-speakeasy-name-override: update + delete: + summary: Delete a contractor + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: contractor_uuid + in: path + description: The UUID of the contractor + required: true + schema: + type: string + x-gusto-rswag: true + operationId: delete-v1-contractors-contractor_uuid + security: + - CompanyAccessAuth: [] + description: |- + A contractor can only be deleted when there are no contractor payments. + + scope: `contractors:manage` + tags: + - Contractors + x-gusto-integration-type: + - embedded + responses: + '204': + description: No Content + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-speakeasy-name-override: delete + "/v1/companies/{company_uuid}/contractors": + get: + summary: Get contractors of a company + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + required: true + description: The UUID of the company + schema: + type: string + - name: search_term + in: query + required: false + description: A string to search for in the object's names + schema: + type: string + - name: sort_by + in: query + required: false + schema: + type: string + pattern: "^(created_at|type|onboarding_status|name)(:(asc|desc))?(,(created_at|type|onboarding_status|name)(:(asc|desc))?)*$" + example: created_at:asc + description: 'Sort by one or more fields. Options: created_at, type, onboarding_status, name. Append `:asc` or `:desc` to specify direction (e.g., `created_at:asc`). Defaults to ascending.' + - name: onboarded + in: query + required: false + description: Filters contractors by those who have completed onboarding + schema: + type: boolean + - name: onboarded_active + in: query + required: false + description: Filters contractors who are ready to work (onboarded AND active today) + schema: + type: boolean + - name: terminated + in: query + required: false + description: Filters contractors by those who have been or are scheduled to be dismissed + schema: + type: boolean + - name: terminated_today + in: query + required: false + description: Filters contractors by those who have been dismissed and whose dismissal is in effect today (excludes active and scheduled to be dismissed) + schema: + type: boolean + - name: include + in: query + explode: false + required: false + schema: + type: array + items: type: string - description: The total check amount for the group of contractor payments. - readOnly: true - readOnly: true - contractor_payments: - type: array - items: - "$ref": "#/components/schemas/Contractor-Payment-For-Group-Preview" - x-examples: - success: - uuid: - company_uuid: 450ddadf-69da-4f37-92e5-8d78b94bffec - check_date: '2025-08-21' - debit_date: '2025-08-19' - status: Unfunded - creation_token: 025e79ac-824d-4d3e-b819-8f265c3edb72 - partner_owned_disbursement: - submission_blockers: [] - credit_blockers: [] - contractor_payments: - - uuid: - contractor_uuid: e894e72b-0aef-4856-9082-9c7826db998d - bonus: '0.0' - hours: '0.0' - hourly_rate: '0.0' - may_cancel: true - payment_method: Direct Deposit - reimbursement: '750.0' - status: Unfunded - wage: '10000.0' - wage_type: Fixed - wage_total: '10000.0' - totals: - amount: '10750.00' - debit_amount: '10750.00' - wage_amount: '10000.00' - reimbursement_amount: '750.00' - check_amount: '0.00' - With submission blockers: - uuid: - company_uuid: 450ddadf-69da-4f37-92e5-8d78b94bffec - check_date: '2025-08-21' - debit_date: '2025-08-19' - status: Unfunded - creation_token: 8f3ced95-ccba-4ace-ac5d-03c1080bb768 - partner_owned_disbursement: - submission_blockers: - - blocker_type: fast_ach_threshold_exceeded - blocker_name: Fast ACH Threshold Exceeded - selected_option: - status: unresolved - unblock_options: - - unblock_type: wire_in - check_date: '2025-08-21' - metadata: - wire_in_deadline: '2025-08-21T18:00:00Z' - wire_in_amount: '1000750.0' - - unblock_type: move_to_four_day - check_date: '2025-08-21' - metadata: - debit_date: '2025-08-15' - credit_blockers: [] - contractor_payments: - - uuid: - contractor_uuid: e894e72b-0aef-4856-9082-9c7826db998d - bonus: '0.0' - hours: '0.0' - hourly_rate: '0.0' - may_cancel: true - payment_method: Direct Deposit - reimbursement: '750.0' - status: Unfunded - wage: '1000000.0' - wage_type: Fixed - wage_total: '1000000.0' - totals: - amount: '1000750.00' - debit_amount: '1000750.00' - wage_amount: '1000000.00' - reimbursement_amount: '750.00' - check_amount: '0.00' - Webhooks-Health-Check-Status: - description: The representation of a webhooks health check response - type: object - x-examples: - success_status: - status: healthy - last_checked_at: '2025-09-08T21:21:38.000Z' - properties: - status: - type: string - description: Latest health status of the webhooks system - readOnly: true - enum: - - healthy - - unhealthy - - unknown - last_checked_at: - type: string - format: date-time - readOnly: true - description: ISO8601 timestamp of the last successful health check with millisecond precision - Contractor-Payment-Group-Base: - description: Base properties for contractor payment groups. - type: object - properties: - uuid: - type: string - description: The unique identifier of the contractor payment group. - readOnly: true - company_uuid: - type: string - description: The UUID of the company. - readOnly: true - check_date: - type: string - description: The check date of the contractor payment group. - readOnly: true - debit_date: - type: string - description: The debit date of the contractor payment group. - readOnly: true - status: - type: string - description: The status of the contractor payment group. Will be `Funded` if all payments that should be funded (i.e. have `Direct Deposit` for payment method) are funded. A group can have status `Funded` while having associated payments that have status `Unfunded`, i.e. payment with `Check` payment method. - enum: - - Unfunded - - Funded - readOnly: true - creation_token: - type: - - string - - 'null' - description: Token used to make contractor payment group creation idempotent. Will error if attempting to create a group with a duplicate token. - readOnly: true - Contractor-Payment-Group-With-Blockers: - description: Contractor payment group with submission and credit blockers, but without individual contractor payments. - type: object - allOf: - - "$ref": "#/components/schemas/Contractor-Payment-Group-Base" - - type: object - properties: - partner_owned_disbursement: - type: - - boolean - - 'null' - description: Whether the disbursement is partner owned. - readOnly: true - submission_blockers: - type: array - description: List of submission blockers for the contractor payment group. - readOnly: true - items: - "$ref": "#/components/schemas/Payroll-Submission-Blocker-Type" - credit_blockers: - type: array - description: List of credit blockers for the contractor payment group. - readOnly: true - items: - "$ref": "#/components/schemas/Payroll-Credit-Blocker-Type" - totals: + enum: + - company_name + - portal_invitations + x-enumDescriptions: + company_name: Include the name of the company that the contractor is associated with + portal_invitations: Include portal invitation status information, including member portal invitation details and partner portal invitation status + description: Include the requested attribute(s) in each contractor response. Multiple options are comma separated. + - name: page + in: query + required: false + description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + schema: + type: integer + - name: per + in: query + required: false + description: Number of objects per page. For majority of endpoints will default to 25 + schema: + type: integer + x-gusto-rswag: true + operationId: get-v1-companies-company_uuid-contractors + security: + - CompanyAccessAuth: [] + description: |- + Get all contractors, active and inactive, individual and business, for a company. + + scope: `contractors:read` + tags: + - Contractors + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: Successful + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Contractor" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: list + post: + summary: Create a contractor + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + required: true + description: The UUID of the company + schema: + type: string + x-gusto-rswag: true + operationId: post-v1-companies-company_uuid-contractors + security: + - CompanyAccessAuth: [] + description: |- + Create an individual or business contractor. + + scope: `contractors:manage` + tags: + - Contractors + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '201': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Contractor" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Contractor-Create-Request-Body" + required: true + x-speakeasy-name-override: create + "/v1/contractors/{contractor_uuid}/onboarding_status": + get: + summary: Get the contractor's onboarding status + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: contractor_uuid + in: path + description: The UUID of the contractor + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-contractors-contractor_uuid-onboarding_status + security: + - CompanyAccessAuth: [] + description: |- + Retrieves a contractor's onboarding status. The data returned helps inform the required onboarding steps and respective completion status. + + ## onboarding_status + + ### Admin-facilitated onboarding + | onboarding_status | Description | + |:------------------|------------:| + | `admin_onboarding_incomplete` | Admin needs to enter basic information about the contractor. | + | `admin_onboarding_review` | All information has been completed and admin needs to confirm onboarding. | + | `onboarding_completed` | Contractor has been fully onboarded and verified. | + + ### Contractor self-onboarding + + | onboarding_status | Description | + | --- | ----------- | + | `admin_onboarding_incomplete` | Admin needs to enter basic information about the contractor. | + | `self_onboarding_not_invited` | Admin has the intention to invite the contractor to self-onboard (e.g., marking a checkbox), but the system has not yet sent the invitation. | + | `self_onboarding_invited` | Contractor has been sent an invitation to self-onboard. | + | `self_onboarding_started` | Contractor has started the self-onboarding process. | + | `self_onboarding_review` | Admin needs to review contractors's entered information and confirm onboarding. | + | `onboarding_completed` | Contractor has been fully onboarded and verified. | + + ## onboarding_steps + + | onboarding_steps | Requirement(s) to be completed | + |:-----------------|-------------------------------:| + | `basic_details` | Add individual contractor's first name, last name, social security number or Business name and EIN depending on the contractor type | + | `add_address` | Add contractor address. | + | `compensation_details` | Add contractor compensation. | + | `payment_details` | (optional) Set up contractor's direct deposit or set to check. | + | `sign_documents` | Contractor forms (e.g., W9) are generated & signed. | + | `file_new_hire_report` | Contractor new hire report is generated. | + + scope: `contractors:read` + tags: + - Contractors + x-gusto-integration-type: + - embedded + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Contractor-Onboarding-Status" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: getOnboardingStatus + put: + summary: Change the contractor's onboarding status + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: contractor_uuid + in: path + description: The UUID of the contractor + required: true + schema: + type: string + x-gusto-rswag: true + operationId: put-v1-contractors-contractor_uuid-onboarding_status + security: + - CompanyAccessAuth: [] + description: |- + Updates a contractor's onboarding status. + + Below is a list of valid onboarding status changes depending on the intended action to be performed on behalf of the contractor. + + | Action | current onboarding_status | new onboarding_status | + |:------------------|:------------:|----------:| + | Mark a contractor as self-onboarding | `admin_onboarding_incomplete` | `self_onboarding_not_invited` | + | Invite a contractor to self-onboard | `admin_onboarding_incomplete` or `self_onboarding_not_invited` | `self_onboarding_invited` | + | Cancel a contractor's self-onboarding | `self_onboarding_invited` or `self_onboarding_not_invited` | `admin_onboarding_incomplete` | + | Review a contractor's self-onboarded info | `self_onboarding_started` | `self_onboarding_review` | + | Finish a contractor's onboarding | `admin_onboarding_review` or `self_onboarding_review` | `onboarding_completed` | + + scope: `contractors:write` + tags: + - Contractors + x-gusto-integration-type: + - embedded + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Contractor-Onboarding-Status" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Contractor-Onboarding-Status-Update-Request-Body" + required: true + x-speakeasy-name-override: updateOnboardingStatus + "/v1/departments/{department_uuid}": + get: + summary: Get a department + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: department_uuid + in: path + description: The UUID of the department + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-department + security: + - CompanyAccessAuth: [] + description: |- + Get a department given the UUID + + scope: `departments:read` + tags: + - Departments + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Department" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: get + put: + summary: Update a department + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: department_uuid + in: path + description: The UUID of the department + required: true + schema: + type: string + x-gusto-rswag: true + operationId: put-departments + security: + - CompanyAccessAuth: [] + description: |- + Update a department + + scope: `departments:write` + tags: + - Departments + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Department" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '409': + description: Conflict + content: + application/json: + schema: + "$ref": "#/components/schemas/Conflict-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Department-Update-Request-Body" + required: true + x-speakeasy-name-override: update + delete: + summary: Delete a department + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: department_uuid + in: path + description: The UUID of the department + required: true + schema: + type: string + x-gusto-rswag: true + operationId: delete-department + security: + - CompanyAccessAuth: [] + description: |- + Delete a department. You cannot delete a department until all employees and contractors have been removed. + + scope: `departments:write` + tags: + - Departments + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '204': + description: No Content + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-speakeasy-name-override: delete + "/v1/departments/{department_uuid}/add": + put: + summary: Add people to a department + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: department_uuid + in: path + description: The UUID of the department + required: true + schema: + type: string + x-gusto-rswag: true + operationId: put-add-people-to-department + security: + - CompanyAccessAuth: [] + description: |- + Add employees and contractors to a department + + scope: `departments:write` + tags: + - Departments + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Department" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Department-People-Request-Body" + required: true + x-speakeasy-name-override: addPeople + "/v1/departments/{department_uuid}/remove": + put: + summary: Remove people from a department + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: department_uuid + in: path + description: The UUID of the department + required: true + schema: + type: string + x-gusto-rswag: true + operationId: put-remove-people-from-department + security: + - CompanyAccessAuth: [] + description: |- + Remove employees and contractors from a department + + scope: `departments:write` + tags: + - Departments + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Department" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Department-People-Request-Body" + required: true + x-speakeasy-name-override: removePeople + "/v1/companies/{company_uuid}/departments": + get: + summary: Get all departments of a company + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-companies-departments + security: + - CompanyAccessAuth: [] + description: |- + Get all of the departments for a given company with the employees and contractors assigned to that department. + + scope: `departments:read` + tags: + - Departments + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Department-List" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: getAll + post: + summary: Create a department + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + operationId: post-departments + security: + - CompanyAccessAuth: [] + description: |- + Create a department + + scope: `departments:write` + tags: + - Departments + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '201': + description: Created + content: + application/json: + schema: + "$ref": "#/components/schemas/Department" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Department-Create-Request-Body" + required: true + x-speakeasy-name-override: create + "/v1/contractors/{contractor_uuid}/documents": + get: + summary: Get all contractor documents + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: contractor_uuid + in: path + description: The UUID of the contractor + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-contractor-documents + security: + - CompanyAccessAuth: [] + description: |- + Get a list of all contractor's documents + + scope: `contractor_documents:read` + tags: + - Contractor Documents + x-gusto-integration-type: + - embedded + responses: + '200': + description: Example response + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Document" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: contractorDocuments + x-speakeasy-name-override: getAll + "/v1/documents/{document_uuid}": + get: + summary: Get a contractor document + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: document_uuid + in: path + description: The UUID of the document + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-contractor-document + security: + - CompanyAccessAuth: [] + description: |- + Get a contractor document. + + scope: `contractor_documents:read` + tags: + - Contractor Documents + x-gusto-integration-type: + - embedded + responses: + '200': + description: Example response + content: + application/json: + schema: + "$ref": "#/components/schemas/Document" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: get + x-speakeasy-group: contractorDocuments + "/v1/documents/{document_uuid}/pdf": + get: + summary: Get the contractor document pdf + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: document_uuid + in: path + description: The UUID of the document + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-contractor-document-pdf + security: + - CompanyAccessAuth: [] + description: |- + Get the contractor document pdf. + + scope: `contractor_documents:read` + tags: + - Contractor Documents + x-gusto-integration-type: + - embedded + responses: + '200': + description: Example response + content: + application/json: + schema: + "$ref": "#/components/schemas/Document-Pdf" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: contractorDocuments + x-speakeasy-name-override: getPdf + "/v1/documents/{document_uuid}/sign": + put: + summary: Sign a contractor document + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: document_uuid + in: path + description: The UUID of the document + required: true + schema: + type: string + - name: x-gusto-client-ip + in: header + required: false + description: Optional header to supply the IP address. This can be used to supply the IP address for signature endpoints instead of the signed_by_ip_address parameter. + schema: + type: string + x-gusto-rswag: true + operationId: put-v1-contractor-document-sign + security: + - CompanyAccessAuth: [] + description: |- + Sign a contractor document. + + scope: `contractor_documents:write` + tags: + - Contractor Documents + x-gusto-integration-type: + - embedded + responses: + '200': + description: Example response + content: + application/json: + schema: + "$ref": "#/components/schemas/Document-Signed" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + properties: + fields: + type: array + description: List of fields and the values they will be set to. + items: + type: object + properties: + key: + type: string + description: Unique identifier of the field + value: + type: string + description: Value for the field + agree: + type: boolean + description: Whether you agree to sign electronically + signed_by_ip_address: + type: string + description: The IP address of the signatory who signed the form. You must provide the IP address with either this parameter OR you can leave out this parameter and set the IP address in the request header using the `x-gusto-client-ip` header instead. + required: + - fields + - agree + required: true + x-speakeasy-group: contractorDocuments + x-speakeasy-name-override: sign + "/v1/companies/{company_id}/earning_types": + get: + summary: Get all earning types for a company + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-companies-company_id-earning_types + security: + - CompanyAccessAuth: [] + description: |- + A payroll item in Gusto is associated to an earning type to name the type of earning described by the payroll item. + + #### Default Earning Type + Certain earning types are special because they have tax considerations. Those earning types are mostly the same for every company depending on its legal structure (LLC, Corporation, etc.) + + #### Custom Earning Type + Custom earning types are all the other earning types added specifically for a company. + + scope: `payrolls:read` + tags: + - Earning Types + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Earning-Type-List" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: earningTypes + x-speakeasy-name-override: list + post: + summary: Create a custom earning type + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + operationId: post-v1-companies-company_id-earning_types + security: + - CompanyAccessAuth: [] + description: |- + Create a custom earning type. + + If an inactive earning type exists with the same name, this will reactivate it instead of creating a new one. + + scope: `payrolls:write` + tags: + - Earning Types + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '201': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Earning-Type" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + required: + - name + properties: + name: + type: string + default: Gym Membership + description: The name of the custom earning type. + required: true + x-speakeasy-group: earningTypes + x-speakeasy-name-override: create + "/v1/companies/{company_id}/earning_types/{earning_type_uuid}": + put: + summary: Update an earning type + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: earning_type_uuid + in: path + description: The UUID of the earning type + required: true + schema: + type: string + x-gusto-rswag: true + operationId: put-v1-companies-company_id-earning_types-earning_type_uuid + security: + - CompanyAccessAuth: [] + description: |- + Update an earning type. + + scope: `payrolls:write` + tags: + - Earning Types + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Earning-Type" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + properties: + name: + type: string + description: The name of the custom earning type. + required: true + x-speakeasy-group: earningTypes + x-speakeasy-name-override: update + delete: + summary: Deactivate an earning type + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: earning_type_uuid + in: path + description: The UUID of the earning type + required: true + schema: + type: string + x-gusto-rswag: true + operationId: delete-v1-companies-company_id-earning_types-earning_type_uuid + security: + - CompanyAccessAuth: [] + description: |- + Deactivate an earning type. + + scope: `payrolls:write` + tags: + - Earning Types + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '204': + description: No Content + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: earningTypes + x-speakeasy-name-override: delete + "/v1/employees/{employee_id}/bank_accounts": + get: + summary: List employee bank accounts + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + - name: page + in: query + required: false + description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + schema: + type: integer + - name: per + in: query + required: false + description: Number of objects per page. For majority of endpoints will default to 25 + schema: + type: integer + x-gusto-rswag: true + operationId: get-v1-employees-employee_id-bank_accounts + security: + - CompanyAccessAuth: [] + description: |- + Returns all employee bank accounts. + + scope: `employee_payment_methods:read` + tags: + - Employee Payment Method + x-gusto-integration-type: + - embedded + responses: + '200': + description: Success + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Employee-Bank-Account" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: employeePaymentMethods + x-speakeasy-name-override: getBankAccounts + post: + summary: Create an employee bank account + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + x-gusto-rswag: true + operationId: post-v1-employees-employee_id-bank_accounts + security: + - CompanyAccessAuth: [] + description: |- + Creates an employee bank account. An employee can have multiple bank accounts. Note that creating an employee bank account will also update the employee's payment method. + + scope: `employee_payment_methods:write` + tags: + - Employee Payment Method + x-gusto-integration-type: + - embedded + responses: + '201': + description: Created + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Bank-Account" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Bank-Account-Request" + required: true + x-speakeasy-group: employeePaymentMethod + x-speakeasy-name-override: create + "/v1/employees/{employee_id}/bank_accounts/{bank_account_uuid}": + put: + summary: Update an employee bank account + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + - name: bank_account_uuid + in: path + description: The UUID of the bank account + required: true + schema: + type: string + x-gusto-rswag: true + operationId: put-v1-employees-employee_id-bank_accounts + security: + - CompanyAccessAuth: [] + description: |- + Updates an employee bank account. + + scope: `employee_payment_methods:write` + tags: + - Employee Payment Method + x-gusto-integration-type: + - embedded + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Bank-Account" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Bank-Account-Request" + required: true + x-speakeasy-group: employeePaymentMethod + x-speakeasy-name-override: updateBankAccount + delete: + summary: Delete an employee bank account + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + - name: bank_account_uuid + in: path + description: The UUID of the bank account + required: true + schema: + type: string + x-gusto-rswag: true + operationId: delete-v1-employees-employee_id-bank_accounts-bank_account_id + security: + - CompanyAccessAuth: [] + description: |- + Deletes an employee bank account. To update an employee's bank account details, delete the bank account first and create a new one. + + scope: `employee_payment_methods:write` + tags: + - Employee Payment Method + x-gusto-integration-type: + - embedded + responses: + '204': + description: No Content + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-speakeasy-group: employeePaymentMethod + x-speakeasy-name-override: deleteBankAccount + "/v1/employees/{employee_id}/employee_benefits": + get: + summary: Get all benefits for an employee + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + - name: page + in: query + required: false + description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + schema: + type: integer + - name: per + in: query + required: false + description: Number of objects per page. For majority of endpoints will default to 25 + schema: + type: integer + - name: include + in: query + required: false + schema: + type: string + enum: + - all_benefits + description: |- + Available options: + - all_benefits: Include all effective dated benefits for each employee instead of only the current benefits. + x-gusto-rswag: true + operationId: get-v1-employees-employee_id-employee_benefits + security: + - CompanyAccessAuth: [] + description: |- + Employee benefits represent an employee enrolled in a particular company benefit. It includes information specific to that employee’s enrollment. + + Returns an array of all employee benefits for this employee + + Benefits containing PHI are only visible to applications with the `employee_benefits:read:phi` scope. + + scope: `employee_benefits:read` + tags: + - Employee Benefits + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: Example response + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Employee-Benefit" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: employeeBenefits + x-speakeasy-name-override: get + post: + summary: Create an employee benefit + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + x-gusto-rswag: true + operationId: post-v1-employees-employee_id-employee_benefits + security: + - CompanyAccessAuth: [] + description: |- + Employee benefits represent an employee enrolled in a particular company benefit. It includes information specific to that employee's enrollment. + + When the application has the `employee_benefits:write:benefit_type_limited` data scope, the application can only create employee benefits for benefit types that are permitted for the application. + + scope: `employee_benefits:write` + tags: + - Employee Benefits + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '201': + description: Example response + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Benefit" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Benefit-Create-Request" + required: true + x-speakeasy-name-override: create + x-speakeasy-group: employeeBenefits + "/v1/employee_benefits/{employee_benefit_id}": + get: + summary: Get an employee benefit + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_benefit_id + in: path + description: The UUID of the employee benefit. + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-employee_benefits-employee_benefit_id + security: + - CompanyAccessAuth: [] + description: |- + Employee benefits represent an employee enrolled in a particular company benefit. It includes information specific to that employee’s enrollment. + + Benefits containing PHI are only visible to applications with the `employee_benefits:read:phi` scope. + + scope: `employee_benefits:read` + tags: + - Employee Benefits + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: Example response + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Benefit" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: retrieve + x-speakeasy-group: employeeBenefits + put: + summary: Update an employee benefit + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_benefit_id + in: path + description: The UUID of the employee benefit. + required: true + schema: + type: string + x-gusto-rswag: true + operationId: put-v1-employee_benefits-employee_benefit_id + security: + - CompanyAccessAuth: [] + description: |- + Employee benefits represent an employee enrolled in a particular company benefit. It includes information specific to that employee's enrollment. + + When the application has the `employee_benefits:write:benefit_type_limited` data scope, the application can only update employee benefits for benefit types that are permitted for the application. + + scope: `employee_benefits:write` + tags: + - Employee Benefits + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: Example response + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Benefit" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Benefit-Update-Request" + required: true + x-speakeasy-group: employeeBenefits + x-speakeasy-name-override: update + delete: + summary: Delete an employee benefit + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_benefit_id + in: path + description: The UUID of the employee benefit. + required: true + schema: + type: string + x-gusto-rswag: true + operationId: delete-v1-employee_benefits-employee_benefit_id + security: + - CompanyAccessAuth: [] + description: |- + Employee benefits represent an employee enrolled in a particular company benefit. It includes information specific to that employee's enrollment. + + When the application has the `employee_benefits:write:benefit_type_limited` data scope, the application can only delete employee benefits for benefit types that are permitted for the application. + + scope: `employee_benefits:write` + tags: + - Employee Benefits + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '204': + description: No Content + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-speakeasy-group: employeeBenefits + x-speakeasy-name-override: delete + "/v1/employees/{employee_id}/custom_fields": + get: + summary: Get an employee's custom fields + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + - name: page + in: query + required: false + description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + schema: + type: integer + - name: per + in: query + required: false + description: Number of objects per page. For majority of endpoints will default to 25 + schema: + type: integer + x-gusto-rswag: true + operationId: get-v1-employees-employee_id-custom_fields + security: + - CompanyAccessAuth: [] + description: |- + Returns a list of the employee's custom fields. + + scope: `employees:read` + tags: + - Employees + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Custom-Field-List" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: getCustomFields + "/v1/employees/{employee_uuid}/federal_taxes": + get: + summary: Get federal taxes for an employee + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_uuid + in: path + description: The UUID of the employee + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-employees-employee_id-federal_taxes + security: + - CompanyAccessAuth: [] + description: |- + Returns federal tax information for an employee. The response structure varies based on the w4_data_type (pre_2020_w4 or rev_2020_w4). + + scope: `employee_federal_taxes:read` + tags: + - Employee Tax Setup + x-gusto-integration-type: + - embedded + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Federal-Tax" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: employeeTaxSetup + x-speakeasy-name-override: getFederalTaxes + put: + summary: Update federal taxes for an employee + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_uuid + in: path + description: The UUID of the employee + required: true + schema: + type: string + x-gusto-rswag: true + operationId: put-v1-employees-employee_id-federal_taxes + security: + - CompanyAccessAuth: [] + description: |- + Updates federal tax (W4) information for an employee. Only rev_2020_w4 format is accepted for updates. + + scope: `employee_federal_taxes:write` + tags: + - Employee Tax Setup + x-gusto-integration-type: + - embedded + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Federal-Tax" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '409': + description: Conflict + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + required: + - version + - w4_data_type + - filing_status + properties: + version: + type: string + description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/versioning#object-layer) for information on how to use this field. + example: 56a489ce86ed6c1b0f0cecc4050a0b01 + w4_data_type: + type: string + enum: + - rev_2020_w4 + description: The version of the W4 form. Only rev_2020_w4 is accepted for updates. + filing_status: + type: string + enum: + - Single + - Married + - Head of Household + - Exempt from withholding + description: 'Determines which tax return form an individual will use. One of: Single, Married, Head of Household, Exempt from withholding.' + example: Single + two_jobs: + type: boolean + description: If there are only two jobs (e.g., you and your spouse each have a job), set to true. + dependents_amount: + type: number + description: Amount for dependents; a dependent entitles the taxpayer to claim a dependency exemption. + other_income: + type: number + description: Other income amount. + deductions: + type: number + description: Deductions other than the standard deduction to reduce withholding. + extra_withholding: + type: number + description: Additional amount to be withheld from each paycheck. + federal_withholding_allowance: + type: integer + description: Only applicable when w4_data_type is 'pre_2020_w4' (pre-2020 W4 forms are deprecated for updates). + additional_withholding: + type: number + description: Only applicable when w4_data_type is 'pre_2020_w4' (pre-2020 W4 forms are deprecated for updates). + required: true + x-speakeasy-group: employeeTaxSetup + x-speakeasy-name-override: updateFederalTaxes + "/v1/employees/{employee_id}/forms": + get: + summary: Get all employee forms + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-employee-forms + security: + - CompanyAccessAuth: [] + description: |- + Get a list of all employee's forms + + scope: `employee_forms:read` + tags: + - Employee Forms + x-gusto-integration-type: + - embedded + responses: + '200': + description: Success + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Form" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: list + x-speakeasy-group: employeeForms + "/v1/employees/{employee_id}/forms/{form_id}": + get: + summary: Get an employee form + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + - name: form_id + in: path + description: The UUID of the form + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-employee-form + security: + - CompanyAccessAuth: [] + description: |- + Get an employee form + + scope: `employee_forms:read` + tags: + - Employee Forms + x-gusto-integration-type: + - embedded + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Form" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: employeeForms + x-speakeasy-name-override: get + "/v1/employees/{employee_id}/forms/{form_id}/pdf": + get: + summary: Get the employee form pdf + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + - name: form_id + in: path + description: The UUID of the form + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-employee-form-pdf + security: + - CompanyAccessAuth: [] + description: |- + Get the link to the employee form PDF + + scope: `employee_forms:read` + tags: + - Employee Forms + x-gusto-integration-type: + - embedded + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Form-Pdf" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: employeeForms + x-speakeasy-name-override: getPdf + "/v1/employees/{employee_id}/forms/{form_id}/sign": + put: + summary: Sign an employee form + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + - name: form_id + in: path + description: The UUID of the form + required: true + schema: + type: string + - name: x-gusto-client-ip + in: header + required: false + description: Optional header to supply the IP address. This can be used to supply the IP address for signature endpoints instead of the signed_by_ip_address parameter. + schema: + type: string + x-gusto-rswag: true + operationId: put-v1-employee-form-sign + security: + - CompanyAccessAuth: [] + description: |- + Sign an employee form. + + The optional preparer attributes are only valid for I-9 form. When a preparer is used, the + first name, last name, street address, city, state, and zip for that preparer are all required. + + scope: `employee_forms:sign` + tags: + - Employee Forms + x-gusto-integration-type: + - embedded + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Form" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + properties: + signature_text: + type: string + description: The signature + agree: + type: boolean + description: Whether you agree to sign electronically + signed_by_ip_address: + type: string + description: The IP address of the signatory who signed the form. Both IPv4 AND IPv6 are supported. You must provide the IP address with either this parameter OR you can leave out this parameter and set the IP address in the request header using the `x-gusto-client-ip` header instead. + preparer: + type: boolean + description: Whether there is a preparer + preparer_first_name: + type: string + preparer_last_name: + type: string + preparer_street_1: + type: string + preparer_street_2: + type: string + preparer_city: + type: string + preparer_state: + type: string + preparer_zip: + type: string + preparer_agree: + type: string + description: Whether preparer agrees to sign electronically + preparer2: + type: boolean + description: Whether there is a 2nd preparer + preparer2_first_name: + type: string + preparer2_last_name: + type: string + preparer2_street_1: + type: string + preparer2_street_2: + type: string + preparer2_city: + type: string + preparer2_state: + type: string + preparer2_zip: + type: string + preparer2_agree: + type: string + description: Whether 2nd preparer agrees to sign electronically + preparer3: + type: boolean + description: Whether there is a 3rd preparer + preparer3_first_name: + type: string + preparer3_last_name: + type: string + preparer3_street_1: + type: string + preparer3_street_2: + type: string + preparer3_city: + type: string + preparer3_state: + type: string + preparer3_zip: + type: string + preparer3_agree: + type: string + description: Whether 3rd preparer agrees to sign electronically + preparer4: + type: boolean + description: Whether there is a 4th preparer + preparer4_first_name: + type: string + preparer4_last_name: + type: string + preparer4_street_1: + type: string + preparer4_street_2: + type: string + preparer4_city: + type: string + preparer4_state: + type: string + preparer4_zip: + type: string + preparer4_agree: + type: string + description: Whether 4th preparer agrees to sign electronically + required: + - signature_text + - agree + required: true + x-speakeasy-group: employeeForms + x-speakeasy-name-override: sign + "/v1/companies/{company_id}/employees/payment_details": + get: + summary: Get employee payment details for a company + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: employee_uuid + in: query + required: false + description: The UUID of a specific employee to fetch payment details for. + schema: + type: string + - name: payroll_uuid + in: query + required: false + description: The UUID of a specific payroll to fetch payment details for employees on that payroll. + schema: + type: string + - name: page + in: query + required: false + description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + schema: + type: integer + - name: per + in: query + required: false + description: Number of objects per page. For majority of endpoints will default to 25 + schema: + type: integer + x-gusto-rswag: true + operationId: get-v1-companies-company_id-employees-payment_details + security: + - CompanyAccessAuth: [] + description: |- + Fetches payment details for employees in a given company. Results are paginated. + + Use the `employee_uuid` query parameter to filter for a single employee. + Use the `payroll_uuid` query parameter to filter for employees on a specific payroll. + Providing both `employee_uuid` and `payroll_uuid` will result in a 422 error. + An empty array is returned if the company has no employees or if no employees match the filter criteria. + + The `encrypted_account_number` in the `splits` array is only visible if the `employee_payment_methods:read:account_number` scope is present. + + scope: `employee_payment_methods:read` + tags: + - Employees + x-gusto-integration-type: + - embedded + responses: + '200': + description: A list of employee payment details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Payment-Details-List" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + "/v1/employees/{employee_id}/payment_method": + get: + summary: Get payment method for an employee + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-employees-employee_id-payment_method + security: + - CompanyAccessAuth: [] + description: |- + Returns the payment method for an employee (e.g. Check or Direct Deposit with split configuration). + + scope: `employee_payment_methods:read` + tags: + - Employee Payment Method + x-gusto-integration-type: + - embedded + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Payment-Method" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: employeePaymentMethod + x-speakeasy-name-override: get + put: + summary: Update payment method for an employee + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + x-gusto-rswag: true + operationId: put-v1-employees-employee_id-payment_method + security: + - CompanyAccessAuth: [] + description: |- + Updates the payment method for an employee. Can set to Check or Direct Deposit with split configuration. + + scope: `employee_payment_methods:write` + tags: + - Employee Payment Method + x-gusto-integration-type: + - embedded + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Payment-Method" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '409': + description: Conflict + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: type: object + required: + - version + - type properties: - amount: - type: string - description: The total amount for the group of contractor payments. - readOnly: true - debit_amount: - type: string - description: The total debit amount for the group of contractor payments. Sum of wage & reimbursement amount. - readOnly: true - wage_amount: - type: string - description: The total wage amount for the group of contractor payments. - readOnly: true - reimbursement_amount: + version: type: string - description: The total reimbursement amount for the group of contractor payments. - readOnly: true - check_amount: + description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/versioning#object-layer) for information on how to use this field. + example: 63859768485e218ccf8a449bb60f14ed + type: type: string - description: The total check amount for the group of contractor payments. - readOnly: true - readOnly: true - x-examples: - success: - uuid: 94d9698e-9c95-45d6-b66e-d208258666ab - company_uuid: 5f5aaa38-f517-4f56-85e4-afdb83321663 - check_date: '2025-09-22' - debit_date: '2025-09-18' - status: Unfunded - creation_token: 94d9698e-9c95-45d6-b66e-d208258666ab - partner_owned_disbursement: false - submission_blockers: - - blocker_type: fast_ach_threshold_exceeded - blocker_name: Fast ACH Threshold Exceeded - selected_option: wire_in - status: resolved - unblock_options: - - unblock_type: wire_in - check_date: '2025-09-22' - metadata: - wire_in_deadline: '2025-09-22T18:00:00Z' - wire_in_amount: '760000.0' - - unblock_type: move_to_four_day - check_date: '2025-09-22' - metadata: - debit_date: '2025-09-16' - credit_blockers: - - blocker_type: waiting_for_wire_in - blocker_name: Waiting for Wire In - selected_option: submit_wire - status: unresolved - unblock_options: - - unblock_type: submit_wire - check_date: '2025-09-22' - metadata: - wire_in_deadline: '2025-09-22T18:00:00Z' - wire_in_amount: '760000.0' - wire_in_request_uuid: 96ea4784-979a-45aa-9ccb-83be86b6dcea - totals: - amount: '760000.00' - debit_amount: '760000.00' - wage_amount: '10000.00' - reimbursement_amount: '750000.00' - check_amount: '0.00' - x-tags: - - Contractor Payment Groups - Payroll-List: - description: A list of payrolls for a company. - type: array - x-examples: - success_status: - - uuid: 3601a7a2-0562-4e4c-9559-20886658daac - payroll_uuid: 3601a7a2-0562-4e4c-9559-20886658daac - company_uuid: b43e6012-bf6c-4752-b67b-5c8000595e0e - payroll_status_meta: - cancellable: false - expected_check_date: '2025-06-08' - initial_check_date: '2025-06-27' - expected_debit_time: '2025-06-12T23:00:00Z' - payroll_late: false - initial_debit_cutoff_time: '2025-06-12T23:00:00Z' - off_cycle: false - auto_payroll: false - processed: true - processed_date: '2025-06-11' - calculated_at: '2025-06-11T19:40:51Z' - pay_period: - start_date: '2025-05-20' - end_date: '2025-06-04' - pay_schedule_uuid: ded21d08-02d6-41cb-b211-8d8ca02f1c6a - check_date: '2025-06-08' - external: false - payroll_deadline: '2025-06-12T23:00:00Z' - company_taxes: [] - created_at: '2025-06-11T19:40:51Z' - partner_owned_disbursement: - items: - "$ref": "#/components/schemas/Payroll" - Payroll-Taxes-Type: - type: array - uniqueItems: false - description: An array of tax totals applicable to this payroll. Only included for processed or calculated payrolls when `payroll_taxes` is present in the `include` parameter. - items: - type: object - properties: - name: + enum: + - Check + - Direct Deposit + description: The payment method type. If type is Check, split_by and splits do not need to be populated. If type is Direct Deposit, split_by and splits are required. + split_by: + anyOf: + - type: string + enum: + - Percentage + - Amount + - type: 'null' + description: How the payment will be split. If Percentage, split amounts must add up to exactly 100. If Amount, values are in cents and the last split amount must be null to capture the remainder. + splits: + type: + - array + - 'null' + description: Array of payment splits. Required when type is Direct Deposit. + items: + type: object + properties: + uuid: + type: string + description: The bank account UUID. + name: + type: string + description: The bank account name. + priority: + type: integer + description: Order of priority for each payment split; priority 1 is the first account paid. Must be unique and sequential. + split_amount: + type: + - number + - 'null' + description: If split_by is Amount, value is in cents (e.g., 500 for $5.00) and exactly one account must have null to capture the remainder. If split_by is Percentage, value is the percentage (e.g., 60 for 60%). + required: true + x-speakeasy-group: employeePaymentMethod + x-speakeasy-name-override: update + "/v1/employees/{employee_id}/rehire": + get: + summary: Get an employee rehire + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-employees-employee_id-rehire + security: + - CompanyAccessAuth: [] + description: |- + Retrieve an employee's rehire, which contains information on when the employee returns to work. + + scope: `employments:read` + tags: + - Employee Employments + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Rehire" + '204': + description: No Content + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: employeeEmployments + x-speakeasy-name-override: getRehire + post: + summary: Create an employee rehire + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + x-gusto-rswag: true + operationId: post-v1-employees-employee_id-rehire + security: + - CompanyAccessAuth: [] + description: |- + Rehire is created whenever an employee is scheduled to return to the company. + + scope: `employments:write` + tags: + - Employee Employments + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '201': + description: Created + content: + application/json: + schema: + "$ref": "#/components/schemas/Rehire" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Rehire-Body" + required: true + x-speakeasy-group: employeeEmployments + x-speakeasy-name-override: createRehire + put: + summary: Update an employee rehire + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + x-gusto-rswag: true + operationId: put-v1-employees-employee_id-rehire + security: + - CompanyAccessAuth: [] + description: |- + Update an employee's rehire. + + scope: `employments:write` + tags: + - Employee Employments + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Rehire" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Rehire-Update-Request-Body" + required: true + x-speakeasy-group: employeeEmployments + x-speakeasy-name-override: rehire + delete: + summary: Delete an employee rehire + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + x-gusto-rswag: true + operationId: delete-v1-employees-employee_id-rehire + security: + - CompanyAccessAuth: [] + description: |- + Delete an employee rehire. An employee rehire cannot be deleted if it's active (past effective date). + + scope: `employments:write` + tags: + - Employee Employments + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '204': + description: No Content + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-speakeasy-group: employeeEmployments + x-speakeasy-name-override: deleteRehire + "/v1/employees/{employee_uuid}/section603_high_earner_statuses": + get: + summary: Get all Section 603 high earner statuses for an employee + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_uuid + in: path + description: The UUID of the employee + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-employees-employee_uuid-section603_high_earner_statuses + security: + - CompanyAccessAuth: [] + description: |- + Get all Section 603 high earner statuses for an employee across all years. + + Section 603 of the SECURE 2.0 Act applies to employees aged 50 or older whose prior-year FICA wages exceed the IRS threshold. + These employees are classified as high earners, and their catch-up contributions to pre-tax retirement benefits must be designated as post-tax contributions. + + scope: `employee_benefits:read` + tags: + - Employee Benefits + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: successful - with records + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Section603-High-Earner-Status-List" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + post: + summary: Create a Section 603 high earner status + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_uuid + in: path + description: The UUID of the employee + required: true + schema: + type: string + x-gusto-rswag: true + operationId: post-v1-employees-employee_uuid-section603_high_earner_statuses + security: + - CompanyAccessAuth: [] + description: |- + Create a Section 603 high earner status for an employee for a specific year. + + Section 603 of the SECURE 2.0 Act applies to employees aged 50 or older whose prior-year FICA wages exceed the IRS threshold. + These employees are classified as high earners, and their catch-up contributions to pre-tax retirement benefits must be designated as post-tax contributions. + + scope: `employee_benefits:write` + tags: + - Employee Benefits + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '201': + description: created + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Section603-High-Earner-Status" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '409': + description: conflict - record already exists + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '422': + description: unprocessable entity - invalid is_high_earner + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Section603-High-Earner-Status-Create-Request" + required: true + "/v1/employees/{employee_uuid}/section603_high_earner_statuses/{effective_year}": + get: + summary: Get a Section 603 high earner status for a specific year + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_uuid + in: path + description: The UUID of the employee + required: true + schema: + type: string + - name: effective_year + in: path + description: The effective year for the Section 603 status + required: true + schema: + type: integer + x-gusto-rswag: true + operationId: get-v1-employees-employee_uuid-section603_high_earner_statuses-effective_year + security: + - CompanyAccessAuth: [] + description: |- + Get a Section 603 high earner status for an employee for a specific year. + + Section 603 of the SECURE 2.0 Act applies to employees aged 50 or older whose prior-year FICA wages exceed the IRS threshold. + These employees are classified as high earners, and their catch-up contributions to pre-tax retirement benefits must be designated as post-tax contributions. + + scope: `employee_benefits:read` + tags: + - Employee Benefits + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Section603-High-Earner-Status" + '404': + description: Not Found - employee does not exist + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: unprocessable entity - invalid effective_year + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + patch: + summary: Update a Section 603 high earner status + parameters: + - name: X-Gusto-API-Version + in: header + schema: type: string - description: The tax name - employer: - type: boolean - description: Whether this tax is an employer or employee tax - amount: - type: number - description: The total tax for the payroll - Salary-Estimate: - type: object - description: A salary estimate calculation for an S-Corp owner based on occupation, experience level, location, and business revenue. - properties: - uuid: - type: string - description: The UUID of the salary estimate. - readOnly: true - employee_uuid: - type: - - string - - 'null' - description: The UUID of the employee this salary estimate is for. - readOnly: true - employee_job_uuid: - type: - - string - - 'null' - description: The UUID of the employee job this salary estimate is associated with (once accepted). - readOnly: true - annual_net_revenue: - type: - - string - - 'null' - description: The annual net revenue of the business used for salary calculations. - zip_code: - type: - - string - - 'null' - description: The ZIP code used for location-based salary calculations. - pattern: "^\\d{5}$" - result: - type: - - integer - - 'null' - description: The calculated reasonable salary estimate in cents. Null if not yet calculated. - readOnly: true - accepted_at: - type: - - string - - 'null' - format: date-time - description: The timestamp when this salary estimate was accepted and finalized. - readOnly: true - created_at: - type: string - format: date-time - description: The timestamp when this salary estimate was created. - readOnly: true - updated_at: - type: string - format: date-time - description: The timestamp when this salary estimate was last updated. - readOnly: true - occupations: - type: array - description: Array of occupations with their experience levels and time allocations. - items: - type: object - properties: - code: - type: string - description: Bureau of Labor Statistics (BLS) occupation code. - name: - type: string - description: Occupation name. - description: - type: string - description: Occupation description. - experience_level: - type: string - description: Experience level for this occupation. - enum: - - novice - - intermediate - - average - - skilled - - expert - time_percentage: - type: string - description: Percentage of time spent in this occupation (as decimal string, 0-1). - primary: - type: boolean - description: Whether this is the primary occupation. - required: - - code - - experience_level - - time_percentage - required: - - uuid - - employee_uuid - - annual_net_revenue - - zip_code - - created_at - - updated_at - - occupations - x-examples: - success_status: - uuid: 7f5d3d93-6d6f-48c0-9f4e-cd12c2d3e4b2 - employee_uuid: 8c290660-b6c9-4ad7-9f6e-ea146aaf79e8 - employee_job_uuid: - annual_net_revenue: '500000' - zip_code: '94107' - result: 12000000 - accepted_at: - created_at: '2025-01-15T10:30:00.000-08:00' - updated_at: '2025-01-15T10:30:00.000-08:00' - occupations: - - code: 15-1252 - name: Software Developers, Systems Software - description: Research, design, develop, and test operating systems-level software. - experience_level: skilled - time_percentage: '1.0' - primary: true - BLS-Occupation: - type: object - description: A Bureau of Labor Statistics occupation code with its title and description, used for salary estimate calculations. - properties: - code: - type: string - description: Bureau of Labor Statistics (BLS) occupation code. - example: 15-1252 - title: - type: string - description: Occupation title. - example: Software Developers - description: - type: string - description: Occupation description. - example: Research, design, and develop computer and network software or specialized utility programs. - required: - - code - - title - x-examples: - success_status: - code: 15-1252 - title: Software Developers - description: Research, design, and develop computer and network software or specialized utility programs. - Payroll-Credit-Blocker-Unblock-Option-Submit-Wire: - type: object - description: Unblock option to resolve a credit blocker by submitting a wire transfer - required: - - unblock_type - - check_date - - metadata - properties: - unblock_type: - type: string - enum: - - submit_wire - description: The type of unblock option for the credit blocker - readOnly: true - check_date: - type: string - description: The payment check date associated with the unblock option - readOnly: true - metadata: - type: object - required: - - wire_in_amount - - wire_in_deadline - - wire_in_request_uuid - properties: - wire_in_amount: - type: string - description: The amount to be wired in (decimal string) - readOnly: true - wire_in_deadline: - type: string - format: date-time - description: Deadline for the wire transfer to be received - readOnly: true - wire_in_request_uuid: - type: string - description: UUID of the wire in request - readOnly: true - readOnly: true - Payroll-Credit-Blocker-Unblock-Option-Submit-Bank-Screenshot: - type: object - description: Unblock option to resolve a credit blocker by submitting a bank screenshot - required: - - unblock_type - - check_date - - metadata - properties: - unblock_type: - type: string - enum: - - submit_bank_screenshot - description: The type of unblock option for the credit blocker - readOnly: true - check_date: - type: string - description: The payment check date associated with the unblock option - readOnly: true - metadata: - type: object - required: - - information_request_uuid - properties: - information_request_uuid: - type: string - description: UUID of the information request - readOnly: true - bank_account_last_four_digits: - type: - - string - - 'null' - description: Last 4 digits of the bank account number for the bank screenshot RFI - readOnly: true - readOnly: true - Payroll-Credit-Blocker-Unblock-Option-Respond-To-High-Risk-Fraud-Rfi: - type: object - description: Unblock option to resolve a credit blocker by responding to high risk fraud RFI - required: - - unblock_type - - check_date - - metadata - properties: - unblock_type: - type: string - enum: - - respond_to_high_risk_fraud_rfi - description: The type of unblock option for the credit blocker - readOnly: true - check_date: - type: string - description: The payment check date associated with the unblock option - readOnly: true - metadata: - type: object - required: - - information_request_uuid - properties: - information_request_uuid: - type: string - description: UUID of the information request - readOnly: true - readOnly: true - Payroll-Credit-Blocker-Unblock-Option-Wait-For-Reverse-Wire: - type: object - description: Unblock option to resolve a credit blocker by waiting for reverse wire - required: - - unblock_type - - check_date - - metadata - properties: - unblock_type: - type: string - enum: - - wait_for_reverse_wire - description: The type of unblock option for the credit blocker - readOnly: true - check_date: - type: string - description: The payment check date associated with the unblock option - readOnly: true - metadata: - type: object - properties: - reverse_wire_detail_id: - type: - - integer - - 'null' - description: ID of the reverse wire detail - readOnly: true - bank_account_last_four_digits: - type: - - string - - 'null' - description: Last 4 digits of the bank account number for the reverse wire - readOnly: true - readOnly: true - Employee-Section603-High-Earner-Status-List: - type: array - x-examples: - success_status: - - id: f47ac10b-58cc-4372-a567-0e02b2c3d479 - effective_year: 2026 - is_high_earner: false - - id: 550e8400-e29b-41d4-a716-446655440000 - effective_year: 2027 - is_high_earner: true - items: - "$ref": "#/components/schemas/Employee-Section603-High-Earner-Status" - Employee-Section603-High-Earner-Status: - type: object - description: The representation of an employee's Section 603 high earner status for a specific year. 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. - x-examples: - success_status: - id: f47ac10b-58cc-4372-a567-0e02b2c3d479 - effective_year: 2026 - is_high_earner: false - properties: - id: - type: string - description: The unique identifier of the Section 603 high earner status record - readOnly: true - effective_year: - type: integer - description: The year for which this high earner status applies - readOnly: true - is_high_earner: - type: - - boolean - - 'null' - description: Whether the employee is classified as a high earner for Section 603 purposes. Can be null if the status has not yet been determined. - readOnly: true - required: - - id - - effective_year - - is_high_earner - Employee-Section603-High-Earner-Status-Create-Request: - type: object - description: Request body for creating an employee's Section 603 high earner status - properties: - effective_year: - type: integer - description: The year for which this high earner status applies - example: 2026 - is_high_earner: - type: boolean - description: Whether the employee is classified as a high earner for Section 603 purposes - example: true - required: - - effective_year - - is_high_earner - Employee-Section603-High-Earner-Status-Update-Request: - type: object - description: Request body for updating an employee's Section 603 high earner status - properties: - is_high_earner: - type: boolean - description: Whether the employee is classified as a high earner for Section 603 purposes - example: true - required: - - is_high_earner - Employee-Federal-Tax-Pre2020: - title: Employee-Federal-Tax-Pre2020 - type: object - description: Federal tax information for employees using the pre-2020 W4 form. - properties: - version: - type: string - description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. - employee_uuid: - type: string - description: The UUID of the employee. - employee_id: - type: integer - description: The internal ID of the employee. - company_id: - type: integer - description: The internal ID of the company. - w4_data_type: - type: string - description: The version of w4 form. - enum: - - pre_2020_w4 - filing_status: - type: - - string - - 'null' - description: |- - It determines which tax return form an individual will use and is an important factor in computing taxable income. One of: - - Single - - Married - - Head of Household - - Exempt from withholding - - Married, but withhold as Single - federal_withholding_allowance: - type: - - number - - 'null' - description: An exemption from paying a certain amount of income tax. May be null when filing_status is "Exempt from withholding". - additional_withholding: - type: string - description: An additional withholding dollar amount. - required: - - version - - w4_data_type - - additional_withholding - x-tags: + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_uuid + in: path + description: The UUID of the employee + required: true + schema: + type: string + - name: effective_year + in: path + description: The effective year for the Section 603 status + required: true + schema: + type: integer + x-gusto-rswag: true + operationId: patch-v1-employees-employee_uuid-section603_high_earner_statuses-effective_year + security: + - CompanyAccessAuth: [] + description: |- + Update a Section 603 high earner status for an employee for a specific year. + + Section 603 of the SECURE 2.0 Act applies to employees aged 50 or older whose prior-year FICA wages exceed the IRS threshold. + These employees are classified as high earners, and their catch-up contributions to pre-tax retirement benefits must be designated as post-tax contributions. + + scope: `employee_benefits:write` + tags: + - Employee Benefits + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Section603-High-Earner-Status" + '404': + description: Not Found - employee does not exist + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: unprocessable entity - invalid is_high_earner + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Section603-High-Earner-Status-Update-Request" + required: true + "/v1/employees/{employee_uuid}/state_taxes": + get: + summary: Get an employee's state taxes + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_uuid + in: path + description: The UUID of the employee + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-employees-employee_id-state_taxes + security: + - CompanyAccessAuth: [] + description: |- + Get attributes relevant for an employee's state taxes. + + The data required to correctly calculate an employee's state taxes varies by both home and work location. This API returns information about each question that must be answered grouped by state. Mostly commonly, an employee lives and works in the same state and will only have questions for a single state. The response contains metadata about each question, the type of answer expected, and the current answer stored in Gusto for that question. + + Answers are represented by an array. Today, this array can only be empty or contain exactly one element, but is designed to allow for forward compatibility with effective-dated fields. The `valid_from` and `valid_up_to` fields are optional and currently ignored. + + ## About filing new hire reports + Payroll Admins are responsible for filing a new hire report for each Employee. The `file_new_hire_report` question will only be listed if: + - the `employee.onboarding_status` is one of the following: + - `admin_onboarding_incomplete` + - `self_onboarding_awaiting_admin_review` + - that employee's work state requires filing a new hire report + + scope: `employee_state_taxes:read` + tags: - Employee Tax Setup - Employee-Federal-Tax-Rev2020: - title: Employee-Federal-Tax-Rev2020 - type: object - description: Federal tax information for employees using the revised 2020 W4 form. - properties: - version: - type: string - description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. - employee_uuid: - type: string - description: The UUID of the employee. - employee_id: - type: integer - description: The internal ID of the employee. - company_id: - type: integer - description: The internal ID of the company. - w4_data_type: - type: string - description: The version of w4 form. - enum: - - rev_2020_w4 - filing_status: - type: - - string - - 'null' - description: |- - It determines which tax return form an individual will use and is an important factor in computing taxable income. One of: - - Single - - Married - - Head of Household - - Exempt from withholding - extra_withholding: - type: - - string - - 'null' - description: An employee can request an additional amount to be withheld from each paycheck. - two_jobs: - type: - - boolean - - 'null' - description: If there are only two jobs (i.e., you and your spouse each have a job, or you have two), you can set it to true. - dependents_amount: - type: - - string - - 'null' - description: A dependent is a person other than the taxpayer or spouse who entitles the taxpayer to claim a dependency exemption. - other_income: - type: - - string - - 'null' - description: Other income amount. - deductions: - type: - - string - - 'null' - description: Deductions other than the standard deduction to reduce withholding. - required: - - version - - w4_data_type - - filing_status - - extra_withholding - - two_jobs - - dependents_amount - - other_income - - deductions - x-tags: + x-gusto-integration-type: + - embedded + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-State-Taxes-List" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: employeeTaxSetup + x-speakeasy-name-override: getStateTaxes + put: + summary: Update an employee's state taxes + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_uuid + in: path + description: The UUID of the employee + required: true + schema: + type: string + x-gusto-rswag: true + operationId: put-v1-employees-employee_id-state_taxes + security: + - CompanyAccessAuth: [] + description: |- + Update attributes relevant for an employee's state taxes. + + As described for the GET endpoint, the answers must be supplied in the effective-dated format, but currently only a single answer will be accepted. The `valid_from` and `valid_up_to` fields are optional and currently ignored. + + scope: `employee_state_taxes:write` + tags: - Employee Tax Setup - Time-Off-Policy-Request: - type: object - description: Request body for creating a time off policy - allOf: - - "$ref": "#/components/schemas/Time-Off-Policy-Request-Base" - - type: object - required: - - name - - policy_type - - accrual_method - Holiday-Pay-Policy-Request: - type: object - description: Request body for creating or updating a holiday pay policy - properties: - federal_holidays: - type: object - description: An object containing federal holiday objects, each containing a boolean selected property. - properties: - new_years_day: - type: object - properties: - selected: - type: boolean - mlk_day: - type: object - properties: - selected: - type: boolean - presidents_day: - type: object - properties: - selected: - type: boolean - memorial_day: - type: object - properties: - selected: - type: boolean - juneteenth: - type: object - properties: - selected: - type: boolean - independence_day: - type: object - properties: - selected: - type: boolean - labor_day: - type: object - properties: - selected: - type: boolean - columbus_day: - type: object - properties: - selected: - type: boolean - veterans_day: - type: object - properties: - selected: - type: boolean - thanksgiving: + x-gusto-integration-type: + - embedded + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-State-Taxes-List" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-State-Taxes-Request" + required: true + x-speakeasy-group: employeeTaxSetup + x-speakeasy-name-override: updateStateTaxes + "/v1/employees/{employee_uuid}/time_off_activities": + get: + summary: Get employee time off activities + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_uuid + in: path + description: The UUID of the employee + required: true + schema: + type: string + - name: time_off_type + in: query + required: true + description: 'The time off type name you want to query data for. ex: ''sick'' or ''vacation''' + schema: + type: string + x-gusto-rswag: true + operationId: get-version-employees-time_off_activities + security: + - CompanyAccessAuth: [] + description: |- + Get employee time off activities. + + scope: `employee_time_off_activities:read` + tags: + - Employees + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Time-Off-Activity-List" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-speakeasy-name-override: getTimeOffActivities + "/v1/companies/{company_id}/reports/employees_annual_fica_wage": + post: + summary: Create an employees annual FICA wage report + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + required: true + description: The UUID of the company + schema: + type: string + x-gusto-rswag: true + operationId: post-v1-companies-company_id-reports-employees_annual_fica_wage + security: + - CompanyAccessAuth: [] + description: |- + Generates a report containing annual FICA (Federal Insurance Contributions Act) wage data for all employees in a company over a specified year range. + + This report provides detailed wage information subject to Social Security and Medicare taxes, useful for benefits integrations that need to verify employee earnings for compliance and benefit calculations. + + The report is generated asynchronously. After making this request, you will receive a `request_uuid` which can be used to poll the [Get a report](ref:get-v1-reports-request_uuid) endpoint to check the status and retrieve the report when complete. + + scope: `company_reports:write` + tags: + - Reports + x-gusto-integration-type: + - embedded + responses: + '202': + description: accepted + content: + application/json: + schema: + "$ref": "#/components/schemas/Employees-Annual-Fica-Wage-Report-Acceptance" + '422': + description: unprocessable entity - start year before minimum + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + requestBody: + content: + application/json: + schema: type: object + required: + - start_year + - end_year properties: - selected: - type: boolean - christmas_day: + start_year: + type: integer + description: The start year for the report (must be 2011 or later) + example: 2023 + end_year: + type: integer + description: The end year for the report (must be the current year or earlier, and must be >= start_year) + example: 2024 + required: true + "/v1/employees/{employee_id}": + get: + summary: Get an employee + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + - name: include + in: query + explode: false + required: false + schema: + type: array + items: + type: string + enum: + - all_compensations + - all_home_addresses + - company_name + - current_home_address + - custom_fields + - portal_invitations + x-enumDescriptions: + all_compensations: Include all effective dated compensations for each job instead of only the current compensation. Requires `compensations:read` scope. + all_home_addresses: Include all home addresses that have been associated to this employee + company_name: Include the name of the company that the employee is associated with + current_home_address: Include the employee's current home address + custom_fields: Include employees' custom fields + portal_invitations: Include portal invitation status information, including member portal invitation details and partner portal invitation status + description: Include the requested attribute(s) in each employee response. Multiple options are comma separated. + x-gusto-rswag: true + operationId: get-v1-employees + security: + - CompanyAccessAuth: [] + description: |- + Get an employee. + + Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope is included. This allows you to access employee and job metadata without exposing pay rates. + + scope: `employees:read` + tags: + - Employees + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: get + put: + summary: Update an employee. + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + x-gusto-rswag: true + operationId: put-v1-employees + security: + - CompanyAccessAuth: [] + description: |- + Update an employee. + + scope: `employees:write` + tags: + - Employees + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee" + '409': + description: invalid version + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '422': + description: invalid attributes + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + requestBody: + content: + application/json: + schema: + allOf: + - "$ref": "#/components/schemas/Versionable-Required" + - type: object + properties: + first_name: + type: string + example: Weezy + middle_initial: + type: + - string + - 'null' + example: F + last_name: + type: string + example: Baby + email: + type: string + example: tunechi@cashmoneyrecords.com + work_email: + type: string + example: new.partner.work@example.com + date_of_birth: + type: string + example: '1991-01-31' + ssn: + type: string + pattern: "[0-9]{9}" + example: '824920233' + preferred_first_name: + type: + - string + - 'null' + two_percent_shareholder: + type: boolean + description: Whether the employee is a two percent shareholder of the company. This field only applies to companies with an S-Corp entity type. + required: true + x-speakeasy-name-override: update + delete: + summary: Delete an onboarding employee + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + x-gusto-rswag: true + operationId: delete-v1-employee + security: + - CompanyAccessAuth: [] + description: |- + Use this endpoint to delete an employee who is in onboarding. Deleting + an onboarded employee is not allowed and will return a 422 response. Please check out the Terminations api + if you need to terminate an onboarded employee. + + scope: `employees:manage` + tags: + - Employees + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '204': + description: successful + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: cannot delete onboarded employee + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-speakeasy-name-override: delete + "/v1/companies/{company_id}/employees": + get: + summary: Get employees of a company + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + required: true + description: The UUID of the company + schema: + type: string + - name: location_uuid + in: query + required: false + description: Filter employees by a specific primary work location + schema: + type: string + - name: payroll_uuid + in: query + required: false + description: Filter employees by a specific payroll + schema: + type: string + - name: search_term + in: query + required: false + description: A string to search for in the object's names + schema: + type: string + - name: sort_by + in: query + required: false + schema: + type: string + pattern: "^(created_at|name|onboarding_status)(:(asc|desc))?(,(created_at|name|onboarding_status)(:(asc|desc))?)*$" + example: created_at:asc + description: Sort employees by a given field. Cannot be used with search_term. Append `:asc` or `:desc` to specify direction (e.g., `name:desc`). Defaults to ascending. + - name: include + in: query + explode: false + required: false + schema: + type: array + items: + type: string + enum: + - all_compensations + - all_home_addresses + - company_name + - current_home_address + - custom_fields + - portal_invitations + x-enumDescriptions: + all_compensations: Include all effective dated compensations for each job instead of only the current compensation. Requires `compensations:read` scope. + all_home_addresses: Include all home addresses that have been associated to this employee + company_name: Include the name of the company that the employee is associated with + current_home_address: Include the employee's current home address + custom_fields: Include employees' custom fields + portal_invitations: Include portal invitation status information, including member portal invitation details and partner portal invitation status + description: Include the requested attribute(s) in each employee response. Multiple options are comma separated. + - name: onboarded + in: query + required: false + description: Filters employees by those who have completed onboarding + schema: + type: boolean + - name: onboarded_active + in: query + required: false + description: Filters employees who are ready to work (onboarded AND active today) + schema: + type: boolean + - name: terminated + in: query + required: false + description: Filters employees by those who have been or are scheduled to be terminated + schema: + type: boolean + - name: terminated_today + in: query + required: false + description: Filters employees by those who have been terminated and whose termination is in effect today (excludes active and scheduled to be terminated) + schema: + type: boolean + - name: uuids + in: query + explode: false + schema: + type: array + items: + type: string + required: false + description: Optional subset of employees to fetch. + - name: page + in: query + required: false + description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + schema: + type: integer + - name: per + in: query + required: false + description: Number of objects per page. For majority of endpoints will default to 25 + schema: + type: integer + x-gusto-rswag: true + operationId: get-v1-companies-company_id-employees + security: + - CompanyAccessAuth: [] + description: |- + Get all of the employees, onboarding, active and terminated, for a given company. + + Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope is included. This allows you to access employee and job metadata without exposing pay rates. + + scope: `employees:read` + tags: + - Employees + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Show-Employees" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: list + post: + summary: Create an employee + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + required: true + description: Company ID + schema: + type: string + x-gusto-rswag: true + operationId: post-v1-employees + security: + - CompanyAccessAuth: [] + description: |- + Create an employee. + + scope: `employees:manage` + tags: + - Employees + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '201': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: invalid attributes + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: type: object + required: + - first_name + - last_name properties: - selected: + first_name: + type: string + middle_initial: + type: string + last_name: + type: string + email: + type: + - string + - 'null' + format: email + description: The employee's personal email address. Required if self_onboarding is true. + work_email: + type: string + format: email + description: The employee's work email address. + date_of_birth: + type: string + format: date + ssn: + type: string + pattern: "[0-9]{9}" + preferred_first_name: + type: string + self_onboarding: type: boolean - Create-Token-Authentication: - description: '' - type: object - required: - - access_token - - token_type - - expires_in - - created_at - properties: - access_token: - type: string - description: A new access token that can be used for subsequent authenticated requests - token_type: - type: string - default: Bearer - description: The literal string 'Bearer' - expires_in: - type: number - default: 7200 - description: The TTL of this token. After this amount of time, you must hit the refresh token endpoint to continue making authenticated requests. - created_at: - type: number - description: Datetime for when the new access token is created. - refresh_token: - type: - - string - - 'null' - description: A token that must be passed to the refresh token endpoint to get a new authenticated token. Only present when refresh token is provided. - Refresh-Token-Authentication: - description: '' - type: object - allOf: - - "$ref": "#/components/schemas/Create-Token-Authentication" - - type: object - properties: - refresh_token: - type: string - description: A token that must be passed to the refresh token endpoint to get a new authenticated token. - scope: - type: string - description: All of the scopes for which the access token provides access. - Time-Off-Policy-Request-Base: - type: object - description: Base Request Objectfor creating or updating a time off policy - properties: - name: - type: string - description: Name of the time off policy - example: Vacation Policy - policy_type: - type: string - description: Type of the time off policy. Currently only "vacation" and "sick" are supported - enum: - - vacation - - sick - accrual_method: - type: string - description: Accrual method of the time off policy - enum: - - unlimited - - per_pay_period - - per_calendar_year - - per_anniversary_year - - per_hour_worked - - per_hour_worked_no_overtime - - per_hour_paid - - per_hour_paid_no_overtime - accrual_rate: - type: - - string - - 'null' - description: The rate at which the time off hours will accrue for an employee on the policy. Represented as a float, e.g. "40.0". - accrual_rate_unit: - type: - - string - - 'null' - description: 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, e.g. "40.0". - paid_out_on_termination: - type: boolean - description: Boolean representing if an employee's accrued time off hours will be paid out on termination. If accrual_method is unlimited, then paid_out_on_termination must be `false`. - accrual_waiting_period_days: - type: - - integer - - 'null' - description: Number of days before an employee on the policy will begin accruing time off hours. If accrual_method is per_anniversary_year, per_calendar_year, or unlimited, then accrual_waiting_period_days should be 0. - carryover_limit_hours: - type: - - string - - 'null' - description: The max number of hours an employee can carryover from one year to the next. If accrual_method is unlimited, then carryover_limit_hours must be blank. - max_accrual_hours_per_year: - type: - - string - - 'null' - description: The max number of hours an employee can accrue in a year. If accrual_method is yearly (per_anniversary_year, per_calendar_year) or unlimited, then max_accrual_hours_per_year must be blank. - max_hours: - type: - - string - - 'null' - description: The max number of hours an employee can accrue. If accrual_method is unlimited, then max_hours must be blank. - policy_reset_date: - type: - - string - - 'null' - description: The date the policy resets. Format MM-DD - complete: - type: boolean - description: boolean representing if a policy has completed configuration - Time-Off-Policy-Update-Request: - type: object - description: Request body for updating a time off policy - allOf: - - "$ref": "#/components/schemas/Time-Off-Policy-Request-Base" - Payroll-Submission-Blocker-Type: - type: object - description: A blocker that prevents payment submission. - properties: - blocker_type: - type: string - description: The type of blocker that's blocking the payment submission. - readOnly: true - blocker_name: - type: string - description: The name of the submission blocker. - readOnly: true - unblock_options: - type: array - uniqueItems: true - items: - type: object - properties: - unblock_type: - type: string - description: The type of unblock option for the submission blocker. - readOnly: true - check_date: - type: string - description: The payment check date associated with the unblock option. - readOnly: true - metadata: - type: object - additionalProperties: true - description: Additional data associated with the unblock option. - readOnly: true - description: The available options to unblock a submission blocker. - readOnly: true - selected_option: - type: - - string - - 'null' - description: The unblock option that's been selected to resolve the submission blocker. - readOnly: false - status: - type: string - description: The status of the submission blocker. - enum: - - unresolved - - resolved - readOnly: true - Payroll-Credit-Blocker-Type: - type: object - description: A blocker that prevents payment crediting. - properties: - blocker_type: - type: string - description: The type of blocker that's blocking the payment from being credited. - readOnly: true - blocker_name: - type: string - description: The name of the credit blocker. - readOnly: true - unblock_options: - type: array - uniqueItems: true - items: - oneOf: - - "$ref": "#/components/schemas/Payroll-Credit-Blocker-Unblock-Option-Submit-Wire" - - "$ref": "#/components/schemas/Payroll-Credit-Blocker-Unblock-Option-Submit-Bank-Screenshot" - - "$ref": "#/components/schemas/Payroll-Credit-Blocker-Unblock-Option-Respond-To-High-Risk-Fraud-Rfi" - - "$ref": "#/components/schemas/Payroll-Credit-Blocker-Unblock-Option-Wait-For-Reverse-Wire" - discriminator: - propertyName: unblock_type - mapping: - submit_wire: "#/components/schemas/Payroll-Credit-Blocker-Unblock-Option-Submit-Wire" - submit_bank_screenshot: "#/components/schemas/Payroll-Credit-Blocker-Unblock-Option-Submit-Bank-Screenshot" - respond_to_high_risk_fraud_rfi: "#/components/schemas/Payroll-Credit-Blocker-Unblock-Option-Respond-To-High-Risk-Fraud-Rfi" - wait_for_reverse_wire: "#/components/schemas/Payroll-Credit-Blocker-Unblock-Option-Wait-For-Reverse-Wire" - description: The available options to unblock a credit blocker. - readOnly: true - selected_option: - type: - - string - - 'null' - description: The unblock option that's been selected to resolve the credit blocker. - readOnly: false - status: - type: string - description: The status of the credit blocker - enum: - - unresolved - - pending_review - - resolved - - failed - Payroll-Gross-Up-Request: - type: object - description: Request body for calculating gross up amount - properties: - employee_uuid: - type: string + description: If true, employee is expected to self-onboard. If false, payroll admin is expected to enter in the employee's onboarding information + x-speakeasy-name-override: create + "/v1/employees/{employee_id}/onboarding_status": + get: + summary: Get the employee's onboarding status + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-employees-employee_id-onboarding_status + security: + - CompanyAccessAuth: [] + description: |- + # Description + Retrieves an employee's onboarding status. The data returned helps inform the required onboarding steps and respective completion status. + + + ## onboarding_status + + ### Admin-facilitated onboarding + | onboarding_status | Description | + |:------------------|------------:| + | `admin_onboarding_incomplete` | Admin needs to complete the full employee-onboarding. | + | `onboarding_completed` | Employee has been fully onboarded and verified. | + + ### Employee self-onboarding + | onboarding_status | Description | + |:------------------|------------:| + | `admin_onboarding_incomplete` | Admin needs to enter basic information about the employee. | + | `self_onboarding_pending_invite` | Admin has the intention to invite the employee to self-onboard (e.g., marking a checkbox), but the system has not yet sent the invitation. | + | `self_onboarding_invited` | Employee has been sent an invitation to self-onboard. | + | `self_onboarding_invited_started` | Employee has started the self-onboarding process. | + | `self_onboarding_invited_overdue` | Employee's start date has passed, and employee has still not completed self-onboarding. | + | `self_onboarding_completed_by_employee` | Employee has completed entering in their information. The status should be updated via API to "self_onboarding_awaiting_admin_review" from here, once the Admin has started reviewing. | + | `self_onboarding_awaiting_admin_review` | Admin has started to verify the employee's information. | + | `onboarding_completed` | Employee has been fully onboarded and verified. | + + ## onboarding_steps + + | onboarding_steps | Requirement(s) to be completed | + |:-----------------|-------------------------------:| + | `personal_details` | Add employee's first name, last name, email, date of birth, social security number | + | `compensation_details` | Associate employee to a job & compensation. | + | `add_work_address` | Add employee work address. | + | `add_home_address` | Add employee home address. | + | `federal_tax_setup` | Set up federal tax withholdings. | + | `state_tax_setup` | Set up state tax withholdings. | + | `direct_deposit_setup` | (optional) Set up employee's direct deposit. | + | `employee_form_signing` | Employee forms (e.g., W4, direct deposit authorization) are generated & signed. | + | `file_new_hire_report` | File a new hire report for this employee. | + | `admin_review` | Admin reviews & confirms employee details (only required for Employee self-onboarding) | + + scope: `employees:read` + tags: + - Employees + x-gusto-integration-type: + - embedded + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Onboarding-Status" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: getOnboardingStatus + put: + summary: Update the employee's onboarding status + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path description: The UUID of the employee - net_pay: - type: string - format: float - description: Employee net earnings - required: - - employee_uuid - - net_pay - Payroll-Gross-Up-Response: - type: object - description: Response containing the calculated gross up amount - x-examples: - success_status: - gross_up: '1234.56' - properties: - gross_up: - type: string - format: float - description: Gross up earnings. - Payroll-Calculate-Accruing-Time-Off-Hours-Request: - type: object - description: Request body for calculating accruing time off hours - properties: - regular_hours_worked: - type: - - string - - 'null' - format: float - description: Regular hours worked in this pay period - overtime_hours_worked: - type: - - string - - 'null' - format: float - description: Overtime hours worked in this pay period - double_overtime_hours_worked: - type: - - string - - 'null' - format: float - description: Double overtime hours worked in this pay period - pto_hours_used: - type: - - string - - 'null' - format: float - description: Paid time off hours used in this pay period - sick_hours_used: - type: - - string - - 'null' - format: float - description: Sick hours used in this pay period - Payroll-Calculate-Accruing-Time-Off-Hours-Response: - type: object - description: Response containing the calculated accruing time off hours - x-examples: - success_status: - hours_earned: - - time_off_policy_uuid: 7c8d9e0f-1a2b-3c4d-5e6f-7a8b9c0d1e2f - hours: '3.0' - - time_off_policy_uuid: 1a2b3c4d-5e6f-7a8b-9c0d-1e2f3a4b5c6d - hours: '20.0' - properties: - hours_earned: - type: array - description: Accruing time off hours earned for each time off policy - items: - type: object - properties: - time_off_policy_uuid: - type: string - description: The UUID of the time off policy - hours: - type: string - format: float - description: Hours accrued during this pay period. - required: - - hours_earned - Unprocessed-Payroll: - type: object - description: A payroll that has been transitioned back to unprocessed state after cancellation. - x-examples: - success_status: - uuid: b50e611d-8f3d-4f24-b001-46675f7b5777 - employee_compensations: [] - payroll_uuid: b50e611d-8f3d-4f24-b001-46675f7b5777 - company_uuid: 6bf7807c-a5a0-4f4d-b2e7-3fbb4b2299fb - off_cycle: false - auto_payroll: false - processed: false - processed_date: - calculated_at: - pay_period: - start_date: '2021-02-01' - end_date: '2021-02-15' - pay_schedule_uuid: 00ebc4a4-ec88-4435-8f45-c505bb63e501 - check_date: '2021-02-22' - external: false - payroll_deadline: '2021-02-18T22:00:00Z' - created_at: '2022-02-01T22:00:00Z' - partner_owned_disbursement: - properties: - payroll_deadline: - "$ref": "#/components/schemas/Payroll-Deadline-Type" - check_date: - "$ref": "#/components/schemas/Payroll-Check-Date-Type" - processed: - "$ref": "#/components/schemas/Payroll-Processed-Type" - processed_date: - "$ref": "#/components/schemas/Payroll-Processed-Date-Type" - calculated_at: - "$ref": "#/components/schemas/Payroll-Calculated-At-Type" - uuid: - "$ref": "#/components/schemas/Payroll-Payroll-Uuid-Type" - payroll_uuid: - "$ref": "#/components/schemas/Payroll-Payroll-Uuid-Type" - company_uuid: - "$ref": "#/components/schemas/Payroll-Company-Uuid-Type" - off_cycle: - "$ref": "#/components/schemas/Payroll-Off-Cycle-Type" - off_cycle_reason: - "$ref": "#/components/schemas/Off-Cycle-Reason-Type" - auto_payroll: - "$ref": "#/components/schemas/Auto-Pilot-Type" - external: - "$ref": "#/components/schemas/Payroll-External-Type" - pay_period: - "$ref": "#/components/schemas/Payroll-Pay-Period-Type" - created_at: - "$ref": "#/components/schemas/Created-At-Type" - partner_owned_disbursement: - "$ref": "#/components/schemas/Payroll-Partner-Owned-Disbursement-Type" - Contractor-Payment-Body: - description: Request body for creating a contractor payment. - type: object - required: - - contractor_uuid - - date - properties: - contractor_uuid: - type: string - description: The contractor receiving the payment. - date: - type: string - format: date - description: Date of contractor payment. - example: '2020-01-01' - payment_method: - type: string - enum: - - Direct Deposit - - Check - - Historical Payment - default: Direct Deposit - wage: - type: string - format: float - description: If the contractor is on a fixed wage, this is the fixed wage payment for the contractor, regardless of hours worked. - example: '5000' - hours: - type: string - format: float - description: If the contractor is on an hourly wage, this is the number of hours that the contractor worked for the payment. - example: '40' - bonus: - type: string - format: float - description: If the contractor is on an hourly wage, this is the bonus the contractor earned. - example: '500' - reimbursement: - type: string - format: float - description: Reimbursed wages for the contractor. - example: '20' - x-tags: - - Contractor Payments - Payroll-Submission-Blocker-Request-Type: - type: object - description: Request object for resolving a submission blocker. Each submission_blocker should include a selected unblock option. - required: - - blocker_type - - selected_option - properties: - blocker_type: - type: string - description: The type of submission_blocker that is blocking the payment. - selected_option: - type: string - description: The selected option to unblock the payment's submission_blocker. - Company-Industry-Selection-Required-Body: - type: object - properties: - title: - type: - - string - - 'null' - example: Computer Training - description: Industry title - naics_code: - type: string - pattern: "^\\d{6}$" - example: '611420' - description: North American Industry Classification System (NAICS) is used to classify businesses with a six digit number based on the primary type of work the business performs. - sic_codes: - type: array - description: A list of Standard Industrial Classification (SIC) codes, which are four digit numbers that categorize the industries that companies belong to based on their business activities. If sic_codes is not passed in, we will perform an internal lookup with `naics_code`. - items: + required: true + schema: + type: string + x-gusto-rswag: true + operationId: put-v1-employees-employee_id-onboarding_status + security: + - CompanyAccessAuth: [] + description: |- + Updates an employee's onboarding status. + Below is a list of valid onboarding status changes depending on the intended action to be performed on behalf of the employee. + + | Action | current onboarding_status | new onboarding_status | + |:------------------|:------------:|----------:| + | Mark an employee as self-onboarding | `admin_onboarding_incomplete` | `self_onboarding_pending_invite` | + | Invite an employee to self-onboard | `admin_onboarding_incomplete` or `self_onboarding_pending_invite` | `self_onboarding_invited` | + | Cancel an employee's self-onboarding | `self_onboarding_invited` or `self_onboarding_pending_invite` | `admin_onboarding_incomplete` | + | Review an employee's self-onboarded info | `self_onboarding_completed_by_employee` | `self_onboarding_awaiting_admin_review` | + | Finish an employee's onboarding | `admin_onboarding_incomplete` or `self_onboarding_awaiting_admin_review` | `onboarding_completed` | + + scope: `employees:manage` + tags: + - Employees + x-gusto-integration-type: + - embedded + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Onboarding-Status" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: invalid status transition + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + required: + - onboarding_status + properties: + onboarding_status: + type: string + description: Onboarding status value + enum: + - 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 + required: true + x-speakeasy-name-override: updateOnboardingStatus + "/v1/employees/{employee_id}/onboarding_documents_config": + put: + summary: Update employee onboarding documents config + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + required: true + description: The UUID of the employee + example: 7b1d0df1-6403-4a06-8768-c1dd7d24d27a + schema: + type: string + x-gusto-rswag: true + operationId: put-v1-employees-employee_id-onboarding_documents_config + security: + - CompanyAccessAuth: [] + description: |- + Indicate whether to include the Form I-9 for an employee during the onboarding process. + If included, the employee will be prompted to complete Form I-9 as part of their onboarding. + + ## Related guides + - [Employee onboarding](doc:employee-onboarding) + + scope: `employees:manage` + tags: + - Employees + x-gusto-integration-type: + - embedded + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Onboarding-Document" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Onboarding-Documents-Config-Request" + x-speakeasy-name-override: updateOnboardingDocumentsConfig + "/v1/employees/{employee_id}/employment_history": + get: + summary: Get employment history for an employee + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-employees-employee_id-employment_history + security: + - CompanyAccessAuth: [] + description: |- + Retrieve the employment history for a given employee, which includes termination and rehire. + + scope: `employments:read` + tags: + - Employee Employments + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Employment-History-List" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: employeeEmployments + x-speakeasy-name-override: getHistory + "/v1/events": + get: + summary: Get all events + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: starting_after_uuid + in: query + required: false + description: A cursor for pagination. Returns all events occuring after the specified UUID (exclusive). Events are sorted according to the provided sort_order param. + schema: + type: string + - name: resource_uuid + in: query + required: false + description: The UUID of the company. If not specified, will return all events for all companies. + schema: + type: string + - name: limit + in: query + required: false + description: Limits the number of objects returned in a single response, between 1 and 100. The default is 25 + schema: + type: string + - name: event_type + in: query + required: false + description: A string containing the exact event name (e.g. `employee.created`), or use a wildcard match to filter for a group of events (e.g. `employee.*`, `*.created`, `notification.*.created` etc.) + schema: + type: string + - name: sort_order + in: query + required: false + schema: + type: string + enum: + - asc + - desc + description: A string indicating whether to sort resulting events in ascending (asc) or descending (desc) chronological order. Events are sorted by their `timestamp`. Defaults to asc if left empty. + x-gusto-rswag: true + operationId: get-events + security: + - SystemAccessAuth: [] + description: "Fetch all events, going back up to 30 days, that your partner application has the required scopes for. Note that a partner does NOT have to have verified webhook subscriptions in order to utilize this endpoint.\n\n\U0001F4D8 System Access Authentication\n\nThis endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access)\n\nscope: `events:read`" + tags: + - Events + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Event-List" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-speakeasy-name-override: get + "/v1/companies/{company_uuid}/external_payrolls": + get: + summary: Get external payrolls for a company + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: page + in: query + required: false + description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + schema: + type: integer + - name: per + in: query + required: false + description: Number of objects per page. For majority of endpoints will default to 25 + schema: + type: integer + x-gusto-rswag: true + operationId: get-v1-company-external-payrolls + security: + - CompanyAccessAuth: [] + tags: + - External Payrolls + x-gusto-integration-type: + - embedded + description: |- + Get external payrolls for a company. + + scope: `external_payrolls:read` + responses: + '200': + description: Success + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/External-Payroll-Basic" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: externalPayrolls + x-speakeasy-name-override: get + post: + summary: Create an external payroll for a company + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + operationId: post-v1-external-payroll + security: + - CompanyAccessAuth: [] + tags: + - External Payrolls + x-gusto-integration-type: + - embedded + description: |- + Creates a new external payroll for a company. + + scope: `external_payrolls:write` + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/External-Payroll" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/External-Payroll-Create-Request" + required: true + x-speakeasy-group: externalPayrolls + x-speakeasy-name-override: create + "/v1/companies/{company_uuid}/external_payrolls/tax_liabilities": + get: + summary: Get tax liabilities + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-tax-liabilities + security: + - CompanyAccessAuth: [] + tags: + - External Payrolls + x-gusto-integration-type: + - embedded + description: |- + Get tax liabilities from aggregate external payrolls for a company. + + scope: `external_payrolls:read` + responses: + '200': + description: Success + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Tax-Liabilities-Selections" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: externalPayrolls + x-speakeasy-name-override: listTaxLiabilities + put: + summary: Update tax liabilities + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + operationId: put-v1-tax-liabilities + security: + - CompanyAccessAuth: [] + tags: + - External Payrolls + x-gusto-integration-type: + - embedded + description: |- + Update tax liabilities for a company. + + scope: `external_payrolls:write` + responses: + '200': + description: Success + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Tax-Liabilities-Selections" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Tax-Liability-Selections-Request" + required: true + x-speakeasy-group: externalPayrolls + x-speakeasy-name-override: updateTaxLiabilities + "/v1/companies/{company_uuid}/external_payrolls/tax_liabilities/finish": + put: + summary: Finalize tax liabilities options and convert into processed payrolls + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + operationId: put-v1-tax-liabilities-finish + security: + - CompanyAccessAuth: [] + tags: + - External Payrolls + x-gusto-integration-type: + - embedded + description: |- + Finalizes tax liabilities for a company. All external payrolls edit action will be disabled. + + ### Asynchronous processing + This endpoint triggers an asynchronous operation. The external payrolls will be processed in the background after finalization. + + scope: `external_payrolls:write` + responses: + '202': + description: Accepted + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-speakeasy-group: externalPayrolls + x-speakeasy-name-override: finalizeTaxLiabilities + "/v1/companies/{company_uuid}/external_payrolls/{external_payroll_id}": + get: + summary: Get an external payroll + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: external_payroll_id + in: path + description: The UUID of the external payroll + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-external-payroll + security: + - CompanyAccessAuth: [] + tags: + - External Payrolls + x-gusto-integration-type: + - embedded + description: |- + Get an external payroll for a given company. + + scope: `external_payrolls:read` + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/External-Payroll" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: externalPayrolls + x-speakeasy-name-override: retrieve + put: + summary: Update an external payroll + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: external_payroll_id + in: path + description: The UUID of the external payroll + required: true + schema: + type: string + x-gusto-rswag: true + operationId: put-v1-external-payroll + security: + - CompanyAccessAuth: [] + tags: + - External Payrolls + x-gusto-integration-type: + - embedded + description: |- + Update an external payroll with a list of external payroll items. + + scope: `external_payrolls:write` + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/External-Payroll" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/External-Payroll-Update-Request" + required: true + x-speakeasy-group: externalPayrolls + x-speakeasy-name-override: update + delete: + summary: Delete an external payroll + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: external_payroll_id + in: path + description: The UUID of the external payroll + required: true + schema: + type: string + x-gusto-rswag: true + operationId: delete-v1-external-payroll + security: + - CompanyAccessAuth: [] + tags: + - External Payrolls + x-gusto-integration-type: + - embedded + description: |- + Delete an external payroll. + + scope: `external_payrolls:write` + responses: + '204': + description: No Content + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-speakeasy-group: externalPayrolls + x-speakeasy-name-override: delete + "/v1/companies/{company_uuid}/external_payrolls/{external_payroll_id}/calculate_taxes": + get: + summary: Get tax suggestions for an external payroll + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: external_payroll_id + in: path + description: The UUID of the external payroll + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-external-payroll-calculate-taxes + security: + - CompanyAccessAuth: [] + tags: + - External Payrolls + x-gusto-integration-type: + - embedded + description: |- + Get tax suggestions for an external payroll. Earnings and/or benefits data must be saved prior to the calculation in order to retrieve accurate tax calculation. + + scope: `external_payrolls:read` + responses: + '200': + description: Success + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/External-Payroll-Tax-Suggestions" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-speakeasy-group: externalPayrolls + x-speakeasy-name-override: calculateTaxes + "/v1/companies/{company_uuid}/flows": + post: + summary: Create a flow + parameters: + - name: X-Gusto-API-Version + in: header + schema: type: string - pattern: "^\\d{4}$" - example: '8243' - required: - - naics_code - Create-Flow-Request: - description: Request body for creating a flow. - type: object - required: - - flow_type - properties: - flow_type: - type: string - description: 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"). - example: company_onboarding - entity_uuid: - type: string - description: UUID of the target entity applicable to the flow. This field is optional for company flows. - entity_type: - type: string - description: The type of target entity applicable to the flow. This field is optional for company flows. - enum: - - Company - - Employee - - Contractor - - Payroll - options: - type: object - description: Optional configuration object that varies based on the flow_type. This can contain arbitrary key-value pairs specific to the flow being generated. - additionalProperties: true - x-examples: - example: - flow_type: company_onboarding - with_entity: - flow_type: employee_form_signing - entity_uuid: 1b71bb5b-4811-46e9-8a8a-cf5521cbeda6 - entity_type: Employee - with_options: - flow_type: company_retirement_benefits - options: - provider: guideline - Event-List: - type: array - description: A list of events - x-examples: - success_status: - - uuid: f7397a24-57ad-4fae-b011-d258e8232900 - event_type: employee.created - resource_type: Company - resource_uuid: 92a20431-9489-4bde-ad27-6feb20b969d5 - entity_type: Employee - entity_uuid: 92a20431-9489-4bde-ad27-6feb20b969d5 - timestamp: 1686784995 - - uuid: a1b2c3d4-e5f6-7890-abcd-ef1234567890 - event_type: company.provisioned - resource_type: Company - resource_uuid: 92a20431-9489-4bde-ad27-6feb20b969d5 - entity_type: Company - entity_uuid: 92a20431-9489-4bde-ad27-6feb20b969d5 - timestamp: 1686784994 - items: - "$ref": "#/components/schemas/Event" - Company-Location-Request: - type: object - description: Request body for creating a company location (company address). - properties: - street_1: - type: string - description: Street address line 1. - example: 300 3rd Street - street_2: - type: - - string - - 'null' - description: Street address line 2. - example: Apartment 318 - city: - type: string - description: City. - example: San Francisco - state: - type: string - description: State code (e.g. CA). Must be a valid two-letter state code. - example: CA - zip: - type: string - description: ZIP code. Must be a valid US zip (e.g. 12345 or 12345-6789). - example: '94107' - country: - type: string - description: Country code. Defaults to USA. - default: USA - example: USA - phone_number: - type: string - description: Phone number. Must be 10 digits. - pattern: "[0-9]{10}" - example: '8009360383' - mailing_address: - type: boolean - description: Specify if this location is the company's mailing address. - filing_address: - type: boolean - description: Specify if this location is the company's filing address. - required: - - phone_number - - street_1 - - city - - state - - zip - x-examples: - typical_location: - street_1: 300 3rd Street - street_2: Apartment 318 - city: San Francisco - state: CA - zip: '94107' - country: USA - phone_number: '8009360383' - mailing_address: false - filing_address: false - Company-Locations-List: - type: array - x-examples: - success_status: - - uuid: 04552eb9-7829-4b18-ae96-6983552948df - version: 7d9753112507b9dda4fb97910f39b06e - company_uuid: 6bf7807c-a5a0-4f4d-b2e7-3fbb4b2299fb - phone_number: '5825710808' - street_1: 412 Kiera Stravenue - street_2: Suite 391 - city: San Francisco - state: CA - zip: '94107' - country: USA - mailing_address: false - filing_address: false - created_at: '2023-09-12T16:42:25.000-07:00' - updated_at: '2023-09-12T16:42:25.000-07:00' - active: true - inactive: false - - uuid: fa94a2fd-11a8-4024-87ff-85c587d9d2b4 - version: 15e6b9680e00f3122729e64e3cef3224 - company_uuid: 6bf7807c-a5a0-4f4d-b2e7-3fbb4b2299fb - phone_number: '2866070827' - street_1: 644 Fay Vista - street_2: Suite 842 - city: Richmond - state: VA - zip: '23218' - country: USA - mailing_address: true - filing_address: false - created_at: '2023-09-12T16:42:25.000-07:00' - updated_at: '2023-09-12T16:42:25.000-07:00' - active: true - inactive: false - items: - "$ref": "#/components/schemas/Location" - Employee-Onboarding-Documents-Config-Request: - type: object - description: Request body for updating an employee's onboarding documents configuration. - properties: - i9_document: - type: boolean - default: false + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + operationId: post-v1-company-flows + security: + - CompanyAccessAuth: [] + description: |- + Generate a link to access a pre-built workflow in Gusto white-label UI. For security, all generated flows will expire within 1 hour of inactivity or 24 hours from creation time, whichever comes first. + + You can see a list of all possible flow types in our [Flow Types](https://docs.gusto.com/embedded-payroll/docs/flow-types) guide. + + You can also mix and match flow_types in the same category to create custom flows suitable for your needs. + + For instance, to create a custom onboarding flow that only includes `add_addresses`, `add_employees`, and `sign_all_forms` steps, simply stitch those flow_types together into a comma delimited string: + + ```json + { + "flow_type": "add_addresses,add_employees,sign_all_forms" + } + ``` + + Please be mindful of data dependencies in each step to achieve the best user experience. + + For more information and in-depth guides review the [Getting Started](https://docs.gusto.com/embedded-payroll/docs/flows-getting-started) guide for flows. + + scope: `flows:write` + tags: + - Flows + x-gusto-integration-type: + - embedded + responses: + '201': + description: Created + content: + application/json: + schema: + "$ref": "#/components/schemas/Flow" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Create-Flow-Request" + required: true + x-speakeasy-name-override: create + "/v1/employees/{employee_id}/garnishments": + get: + summary: Get garnishments for an employee + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + - name: page + in: query + required: false + description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + schema: + type: integer + - name: per + in: query + required: false + description: Number of objects per page. For majority of endpoints will default to 25 + schema: + type: integer + x-gusto-rswag: true + operationId: get-v1-employees-employee_id-garnishments + security: + - CompanyAccessAuth: [] + description: |- + Garnishments, or employee deductions, are fixed amounts or percentages deducted from an employee’s pay. They can be deducted a specific number of times or on a recurring basis. Garnishments can also have maximum deductions on a yearly or per-pay-period bases. Common uses for garnishments are court-ordered payments for child support or back taxes. Some companies provide loans to their employees that are repaid via garnishments. + + scope: `garnishments:read` + tags: + - Garnishments + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: Example response + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Garnishment" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: list + post: + summary: Create a garnishment + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + x-gusto-rswag: true + operationId: post-v1-employees-employee_id-garnishments + security: + - CompanyAccessAuth: [] + description: |- + Garnishments, or employee deductions, are fixed amounts or percentages deducted from an employee’s pay. They can be deducted a specific number of times or on a recurring basis. Garnishments can also have maximum deductions on a yearly or per-pay-period bases. Common uses for garnishments are court-ordered payments for child support or back taxes. Some companies provide loans to their employees that are repaid via garnishments. + + scope: `garnishments:write` + tags: + - Garnishments + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '201': + description: Example response + content: + application/json: + schema: + "$ref": "#/components/schemas/Garnishment" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Garnishment-Request" + required: true + x-speakeasy-name-override: create + "/v1/garnishments/child_support": + get: + summary: Get child support garnishment data + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + operationId: get-v1-garnishments-child_support + security: + - CompanyAccessAuth: [] + description: |- + Agency data and requirements to be used for creating child support garnishments + + scope: `garnishments:read` + tags: + - Garnishments + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: Example response + content: + application/json: + schema: + "$ref": "#/components/schemas/Child-Support-Data" + x-speakeasy-name-override: getChildSupportData + "/v1/garnishments/{garnishment_id}": + get: + summary: Get a garnishment + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: garnishment_id + in: path + description: The UUID of the garnishment + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-garnishments-garnishment_id + security: + - CompanyAccessAuth: [] + description: |- + Garnishments, or employee deductions, are fixed amounts or percentages deducted from an employee’s pay. They can be deducted a specific number of times or on a recurring basis. Garnishments can also have maximum deductions on a yearly or per-pay-period bases. Common uses for garnishments are court-ordered payments for child support or back taxes. Some companies provide loans to their employees that are repaid via garnishments. + + scope: `garnishments:read` + tags: + - Garnishments + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: Example response + content: + application/json: + schema: + "$ref": "#/components/schemas/Garnishment" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: get + put: + summary: Update a garnishment + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: garnishment_id + in: path + description: The UUID of the garnishment + required: true + schema: + type: string + x-gusto-rswag: true + operationId: put-v1-garnishments-garnishment_id + security: + - CompanyAccessAuth: [] + description: |- + Garnishments, or employee deductions, are fixed amounts or percentages deducted from an employee’s pay. They can be deducted a specific number of times or on a recurring basis. Garnishments can also have maximum deductions on a yearly or per-pay-period bases. Common uses for garnishments are court-ordered payments for child support or back taxes. Some companies provide loans to their employees that are repaid via garnishments. + + scope: `garnishments:write` + tags: + - Garnishments + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: Example response + content: + application/json: + schema: + "$ref": "#/components/schemas/Garnishment" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Update-Garnishment-Request" + required: true + x-speakeasy-name-override: update + "/v1/payrolls/{payroll_uuid}/generated_documents/printable_payroll_checks": + post: + summary: Generate printable payroll checks (pdf) + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: payroll_uuid + in: path + required: true + description: The UUID of the payroll + schema: + type: string + x-gusto-rswag: true + operationId: post-v1-payrolls-payroll_uuid-generated_documents-printable_payroll_checks + security: + - CompanyAccessAuth: [] + description: |- + This endpoint initiates the generation of employee checks for the payroll specified by payroll_uuid. A generation status and corresponding request_uuid will be returned. Use the generated document GET endpoint with document_type: `printable_payroll_checks` and request_uuid to poll the check generation process and retrieve the generated check URL upon completion. + + scope: `generated_documents:write` + tags: + - Payrolls + x-gusto-integration-type: + - embedded + responses: + '200': + description: Example response + content: + application/json: + schema: + "$ref": "#/components/schemas/Payroll-Check" + '404': description: | - 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. - x-examples: - enable_i9: - i9_document: true - disable_i9: - i9_document: false - Contractor-Update-Request-Body: - description: Request body for updating a contractor. - type: object - allOf: - - "$ref": "#/components/schemas/Versionable-Required" - - "$ref": "#/components/schemas/Contractor-Body" - x-examples: - update_individual_contractor: - version: b48c46abfed1487b873b442334b3c4ff - start_date: '2021-01-01' - first_name: Chanel - last_name: Boyle - middle_initial: X - wage_type: Hourly - hourly_rate: '20.00' - is_active: true - update_business_contractor: - version: b48c46abfed1487b873b442334b3c4ff - start_date: '2020-01-11' - business_name: Contracting Solutions - ein: '991113334' - wage_type: Fixed - is_active: false - Contractor-Create-Request-Body: - description: Request body for creating a contractor. - type: object - required: - - type - - wage_type - - start_date - allOf: - - "$ref": "#/components/schemas/Contractor-Body" - x-examples: - create_individual_contractor: - type: Individual - wage_type: Fixed - first_name: Johnson - last_name: Johnson - start_date: '2020-04-01' - self_onboarding: true - email: johnson@johnson.com - file_new_hire_report: true - work_state: CA - create_business_contractor: - type: Business - wage_type: Fixed - business_name: Johnson-Johnson Contractors - start_date: '2020-04-01' - Compensations-Body: - type: object - properties: - rate: - type: string - description: The dollar amount paid per payment unit. - example: '70000.00' - payment_unit: - type: string - description: The unit accompanying the compensation rate. If the employee is an owner, rate should be 'Paycheck'. - enum: - - Hour - - Week - - Month - - Year - - Paycheck - example: Year - flsa_status: - "$ref": "#/components/schemas/Flsa-Status-Type" - effective_date: - type: string - description: The effective date for this compensation. - example: '2023-01-01' - title: - type: string - description: The job title for this compensation. - example: Software Engineer - adjust_for_minimum_wage: - type: boolean - description: Whether the compensation should be adjusted to minimum wage during payroll calculation. - minimum_wages: - type: array - items: - type: object - properties: - uuid: - type: string - description: The UUID of the minimum wage. - Compensations-Request-Body: - description: Request body for creating a compensation. - type: object - required: - - rate - - payment_unit - - flsa_status - allOf: - - "$ref": "#/components/schemas/Compensations-Body" - x-examples: - create_compensation: - rate: '70000.00' - payment_unit: Year - flsa_status: Exempt - effective_date: '2023-01-01' - title: Software Engineer - Compensations-Update-Request-Body: - description: Request body for updating a compensation. - type: object - allOf: - - "$ref": "#/components/schemas/Versionable-Required" - - "$ref": "#/components/schemas/Compensations-Body" - x-examples: - update_compensation: - version: b48c46abfed1487b873b442334b3c4ff - rate: '75000.00' - payment_unit: Year - flsa_status: Exempt - effective_date: '2023-01-01' - title: Senior Engineer - Payroll-Employee-Compensations-Base-Type: - type: object - properties: - employee_uuid: - type: string - description: The UUID of the employee. - readOnly: true - excluded: - type: boolean - description: This employee will be excluded (skipped) from payroll calculation and will not be paid for the payroll. Cancelling a payroll would reset all employees' excluded back to false. - readOnly: true - first_name: - type: - - string - - 'null' - description: The first name of the employee. Requires `employees:read` scope. - readOnly: true - preferred_first_name: - type: - - string - - 'null' - description: The preferred first name of the employee. Requires `employees:read` scope. - readOnly: true - last_name: - type: - - string - - 'null' - description: The last name of the employee. Requires `employees:read` scope. - readOnly: true - gross_pay: - type: - - number - - 'null' - description: The employee's gross pay, equal to regular wages + cash tips + payroll tips + any other additional earnings, excluding imputed income. This value is only available for processed payrolls. - readOnly: true - net_pay: - type: - - number - - 'null' - description: The employee's net pay, equal to gross_pay - employee taxes - employee deductions or garnishments - cash tips. This value is only available for processed payrolls. - readOnly: true - check_amount: - type: - - number - - 'null' - description: The employee's check amount, equal to net_pay + reimbursements. This value is only available for processed payrolls. - readOnly: true - payment_method: - description: The employee's compensation payment method. Is *only* `Historical` when retrieving external payrolls initially run outside of Gusto, then put into Gusto. - anyOf: - - type: string - enum: - - Direct Deposit - - Check - - Historical - - type: 'null' - memo: - type: - - string - - 'null' - description: Custom text that will be printed as a personal note to the employee on a paystub. - readOnly: true - fixed_compensations: - type: array - uniqueItems: false - description: An array of fixed compensations for the employee. Fixed compensations include tips, bonuses, and one time reimbursements. If this payroll has been processed, only fixed compensations with a value greater than 0.00 are returned. For an unprocessed payroll, all active fixed compensations are returned. - items: - type: object - properties: - name: - type: string - description: The name of the compensation. This also serves as the unique, immutable identifier for this compensation. - amount: - type: string - description: The amount of the compensation for the pay period. - job_uuid: - type: string - description: The UUID of the job for the compensation. - readOnly: true - hourly_compensations: - type: array - uniqueItems: false - description: An array of hourly compensations for the employee. Hourly compensations include regular, overtime, and double overtime hours. If this payroll has been processed, only hourly compensations with a value greater than 0.00 are returned. For an unprocessed payroll, all active hourly compensations are returned. - items: - type: object - properties: - name: - type: string - description: The name of the compensation. This also serves as the unique, immutable identifier for this compensation. - hours: - type: string - description: The number of hours to be compensated for this pay period. - amount: - type: string - description: The amount of the compensation. This field is only available after the payroll is calculated and cannot be used for updating hourly compensations. - job_uuid: - type: string - description: The UUID of the job for the compensation. - readOnly: true - compensation_multiplier: - type: number - description: The amount multiplied by the base rate to calculate total compensation per hour worked. - readOnly: true - flsa_status: - type: string - description: The FLSA Status of the employee's primary job compensation - readOnly: true - paid_time_off: - type: array - uniqueItems: false - description: An array of all paid time off the employee is eligible for this pay period. - items: - type: object - properties: - name: - type: string - description: The name of the PTO. This also serves as the unique, immutable identifier for the PTO. - hours: - type: string - description: The hours of this PTO taken during the pay period. - final_payout_unused_hours_input: - type: - - string - - 'null' - description: The outstanding hours paid upon termination. This field is only applicable for termination payrolls. - reimbursements: - type: array - uniqueItems: false - description: An array of reimbursements for the employee. - items: - type: object - properties: - amount: - type: string - description: The dollar amount of the reimbursement for the pay period. - description: - type: - - string - - 'null' - description: The description of the reimbursement. Null for unnamed reimbursements. - uuid: - type: - - string - - 'null' - description: The UUID of the reimbursement. Null for unnamed reimbursements. This field is only available for unprocessed payrolls. - readOnly: true - recurring: - type: boolean - description: Whether the reimbursement is recurring. This field is only available for unprocessed payrolls. - readOnly: true - required: - - amount - - description - Payroll-Unprocessed-Employee-Compensations-Type: - allOf: - - "$ref": "#/components/schemas/Payroll-Employee-Compensations-Base-Type" - - "$ref": "#/components/schemas/Versionable" - - type: object - properties: - version: - description: The current version of this employee compensation. This field is only available for prepared payrolls. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/api-fundamentals#optimistic-version-control) for information on how to use this field. - Payroll-Unprocessed: - description: An unprocessed payroll with employee compensations. - x-examples: - success_status: - uuid: 4428f108-e46e-4ab6-ba20-03cea031cfc0 - employee_compensations: [] - payroll_uuid: 4428f108-e46e-4ab6-ba20-03cea031cfc0 - company_uuid: 42b5333b-ee39-493a-bf7e-f41f2bd67848 - payroll_status_meta: - cancellable: false - expected_check_date: '2025-06-17' - initial_check_date: '2025-06-17' - expected_debit_time: '2025-06-11T23:00:00Z' - payroll_late: false - initial_debit_cutoff_time: '2025-06-11T23:00:00Z' - off_cycle: true - auto_payroll: false - off_cycle_reason: Bonus - withholding_pay_period: Twice per month - skip_regular_deductions: true - fixed_withholding_rate: true - final_termination_payroll: false - processed: false - processed_date: - calculated_at: - pay_period: - start_date: '2025-06-10' - end_date: '2025-06-16' - pay_schedule_uuid: - check_date: '2025-06-17' - external: false - payroll_deadline: '2025-06-11T23:00:00Z' - fixed_compensation_types: - - name: Bonus - - name: Commission - - name: Paycheck Tips - - name: Cash Tips - - name: Correction Payment - - name: Reimbursement - created_at: '2025-06-11T19:40:52Z' - partner_owned_disbursement: - type: object - properties: - payroll_deadline: - "$ref": "#/components/schemas/Payroll-Deadline-Type" - check_date: - "$ref": "#/components/schemas/Payroll-Check-Date-Type" - processed: - "$ref": "#/components/schemas/Payroll-Processed-Type" - processed_date: - "$ref": "#/components/schemas/Payroll-Processed-Date-Type" - calculated_at: - "$ref": "#/components/schemas/Payroll-Calculated-At-Type" - uuid: - "$ref": "#/components/schemas/Payroll-Payroll-Uuid-Type" - payroll_uuid: - "$ref": "#/components/schemas/Payroll-Payroll-Uuid-Type" - company_uuid: - "$ref": "#/components/schemas/Payroll-Company-Uuid-Type" - off_cycle: - "$ref": "#/components/schemas/Payroll-Off-Cycle-Type" - off_cycle_reason: - "$ref": "#/components/schemas/Off-Cycle-Reason-Type" - auto_payroll: - "$ref": "#/components/schemas/Auto-Pilot-Type" - external: - "$ref": "#/components/schemas/Payroll-External-Type" - final_termination_payroll: - "$ref": "#/components/schemas/Payroll-Final-Termination-Payroll-Type" - withholding_pay_period: - "$ref": "#/components/schemas/Payroll-Withholding-Pay-Period-Type" - skip_regular_deductions: - "$ref": "#/components/schemas/Payroll-Skip-Regular-Deductions-Type" - fixed_withholding_rate: - "$ref": "#/components/schemas/Payroll-Fixed-Withholding-Rate-Type" - pay_period: - "$ref": "#/components/schemas/Payroll-Pay-Period-Type" - payroll_status_meta: - "$ref": "#/components/schemas/Payroll-Payroll-Status-Meta-Type" - employee_compensations: - type: array - uniqueItems: false - items: - "$ref": "#/components/schemas/Payroll-Unprocessed-Employee-Compensations-Type" - payment_speed_changed: - "$ref": "#/components/schemas/Payroll-Payment-Speed-Changed-Type" - created_at: - "$ref": "#/components/schemas/Created-At-Type" - fixed_compensation_types: - "$ref": "#/components/schemas/Payroll-Fixed-Compensation-Types-Type" - processing_request: - "$ref": "#/components/schemas/Payroll-Processing-Request" - partner_owned_disbursement: - "$ref": "#/components/schemas/Payroll-Partner-Owned-Disbursement-Type" - Token-Info: - type: object - properties: - scope: - type: string - description: 'Space-separated list of OAuth scopes granted to this access token. + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Printable-Payroll-Checks-Body" + required: true + x-speakeasy-name-override: generatePrintableChecks + "/v1/generated_documents/{document_type}/{request_uuid}": + get: + summary: Get a generated document + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: document_type + in: path + required: true + schema: + type: string + enum: + - printable_payroll_checks + description: The type of document being generated + - name: request_uuid + in: path + required: true + description: The UUID of the request to generate a document. Generate document endpoints return request_uuids to be used with the GET generated document endpoint. + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-generated_documents-document_type-request_uuid + security: + - CompanyAccessAuth: [] + description: |- + Get a document given the request_uuid. The response will include the generation request's status and urls to the document. A list of urls is returned as certain document types require several urls. + + scope: `generated_documents:read` + tags: + - Generated Documents + x-gusto-integration-type: + - embedded + responses: + '200': + description: Example response + content: + application/json: + schema: + "$ref": "#/components/schemas/Generated-Document" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: generatedDocuments + x-speakeasy-name-override: get + "/v1/companies/{company_uuid}/historical_employees": + post: + summary: Create a historical employee + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + required: true + description: The UUID of the company that will employ this historical record. + example: 7b1d0df1-6403-4a06-8768-c1dd7d24d27a + schema: + type: string + x-gusto-rswag: true + operationId: post-v1-historical_employees + security: + - CompanyAccessAuth: [] + description: |- + Create a historical employee, an employee that was previously dismissed from the company in the current year. + + scope: `employees:manage` + tags: + - Employees + x-gusto-integration-type: + - embedded + responses: + '201': + description: Created + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Historical-Employee-Body" + required: true + x-speakeasy-name-override: createHistorical + "/v1/companies/{company_uuid}/historical_employees/{historical_employee_uuid}": + put: + summary: Update a historical employee + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + required: true + description: The UUID of the company that will employ this historical record. + example: 7b1d0df1-6403-4a06-8768-c1dd7d24d27a + schema: + type: string + - name: historical_employee_uuid + in: path + required: true + description: The UUID of the historical employee returned from create or list responses. + example: a2b3c4d-5e6f-7890-abcd-ef1234567890 + schema: + type: string + x-gusto-rswag: true + operationId: put-v1-historical_employees + security: + - CompanyAccessAuth: [] + description: |- + Update a historical employee, an employee that was previously dismissed from the company in the current year. + + scope: `employees:manage employees:write` + tags: + - Employees + x-gusto-integration-type: + - embedded + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + allOf: + - "$ref": "#/components/schemas/Versionable-Required" + - "$ref": "#/components/schemas/Historical-Employee-Body" + required: true + x-speakeasy-group: historicalEmployees + x-speakeasy-name-override: update + "/v1/companies/{company_uuid}/holiday_pay_policy": + get: + summary: Get a company's holiday pay policy + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-companies-company_uuid-holiday_pay_policy + security: + - CompanyAccessAuth: [] + description: |- + Get a company's holiday pay policy + + scope: `holiday_pay_policies:read` + tags: + - Holiday Pay Policies + x-gusto-integration-type: + - embedded + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Holiday-Pay-Policy" + '204': + description: no policy exists + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: holidayPayPolicies + x-speakeasy-name-override: get + post: + summary: Create a holiday pay policy for a company + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + operationId: post-v1-companies-company_uuid-holiday_pay_policy + security: + - CompanyAccessAuth: [] + description: |- + Create a holiday pay policy for a company + + scope: `holiday_pay_policies:write` + tags: + - Holiday Pay Policies + x-gusto-integration-type: + - embedded + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Holiday-Pay-Policy" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: company already has a policy + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Holiday-Pay-Policy-Request" + x-speakeasy-group: holidayPayPolicies + x-speakeasy-name-override: create + put: + summary: Update a company's holiday pay policy + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + operationId: put-v1-companies-company_uuid-holiday_pay_policy + security: + - CompanyAccessAuth: [] + description: |- + Update a company's holiday pay policy + + scope: `holiday_pay_policies:write` + tags: + - Holiday Pay Policies + x-gusto-integration-type: + - embedded + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Holiday-Pay-Policy" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: no policy exists + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + allOf: + - "$ref": "#/components/schemas/Versionable-Required" + - "$ref": "#/components/schemas/Holiday-Pay-Policy-Request" + required: true + x-speakeasy-group: holidayPayPolicies + x-speakeasy-name-override: update + delete: + summary: Delete a company's holiday pay policy + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + operationId: delete-v1-companies-company_uuid-holiday_pay_policy + security: + - CompanyAccessAuth: [] + description: |- + Delete a company's holiday pay policy + + scope: `holiday_pay_policies:write` + tags: + - Holiday Pay Policies + x-gusto-integration-type: + - embedded + responses: + '204': + description: successful + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: no policy exists + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-speakeasy-group: holidayPayPolicies + x-speakeasy-name-override: delete + "/v1/companies/{company_uuid}/holiday_pay_policy/add": + put: + summary: Add employees to a company's holiday pay policy + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + operationId: put-v1-companies-company_uuid-holiday_pay_policy-add + security: + - CompanyAccessAuth: [] + description: |- + Add employees to a company's holiday pay policy + + scope: `holiday_pay_policies:write` + tags: + - Holiday Pay Policies + x-gusto-integration-type: + - embedded + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Holiday-Pay-Policy" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: no policy exists + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + allOf: + - "$ref": "#/components/schemas/Versionable-Required" + - type: object + required: + - employees + properties: + employees: + type: array + description: An array of employee objects, each containing an employee_uuid. + items: + type: object + properties: + uuid: + type: string + required: true + x-speakeasy-group: holidayPayPolicies + x-speakeasy-name-override: addEmployees + "/v1/companies/{company_uuid}/holiday_pay_policy/remove": + put: + summary: Remove employees from a company's holiday pay policy + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + operationId: put-v1-companies-company_uuid-holiday_pay_policy-remove + security: + - CompanyAccessAuth: [] + description: |- + Remove employees from a company's holiday pay policy + + scope: `holiday_pay_policies:write` + tags: + - Holiday Pay Policies + x-gusto-integration-type: + - embedded + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Holiday-Pay-Policy" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: no policy exists + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + allOf: + - "$ref": "#/components/schemas/Versionable-Required" + - type: object + required: + - employees + properties: + employees: + type: array + description: An array of employee objects, each containing an employee_uuid. + items: + type: object + properties: + uuid: + type: string + required: true + x-speakeasy-group: holidayPayPolicies + x-speakeasy-name-override: removeEmployees + "/v1/employees/{employee_id}/home_addresses": + get: + summary: Get an employee's home addresses + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-employees-employee_id-home_addresses + security: + - CompanyAccessAuth: [] + description: |- + The home address of an employee is used to determine certain tax information about them. Addresses are geocoded on create and update to ensure validity. + + Supports home address effective dating and courtesy withholding. + + scope: `employees:read` + tags: + - Employee Addresses + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Address-List" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: employeeAddresses + x-speakeasy-name-override: get + post: + summary: Create an employee's home address + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + x-gusto-rswag: true + operationId: post-v1-employees-employee_id-home_addresses + security: + - CompanyAccessAuth: [] + description: |- + The home address of an employee is used to determine certain tax information about them. Addresses are geocoded on create and update to ensure validity. + + Supports home address effective dating and courtesy withholding. + + scope: `employees:write` + tags: + - Employee Addresses + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '201': + description: created + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Address" + '422': + description: | + Unprocessable Entity -' - example: companies:read public - resource: - type: - - object - - 'null' + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + properties: + street_1: + type: string + example: 300 3rd Street + street_2: + type: + - string + - 'null' + city: + type: string + example: San Francisco + state: + type: string + example: CA + zip: + type: string + example: '94107' + effective_date: + type: + - string + - 'null' + format: date + example: '2022-01-31' + courtesy_withholding: + type: boolean + required: true + x-speakeasy-group: employeeAddresses + x-speakeasy-name-override: create + "/v1/home_addresses/{home_address_uuid}": + get: + summary: Get an employee's home address + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: home_address_uuid + in: path + description: The UUID of the home address + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-home_addresses-home_address_uuid + security: + - CompanyAccessAuth: [] + description: |- + The home address of an employee is used to determine certain tax information about them. Addresses are geocoded on create and update to ensure validity. + + Supports home address effective dating and courtesy withholding. + + scope: `employees:read` + tags: + - Employee Addresses + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Address" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: employeeAddresses + x-speakeasy-name-override: retrieveHomeAddress + put: + summary: Update an employee's home address + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: home_address_uuid + in: path + description: The UUID of the home address + required: true + schema: + type: string + x-gusto-rswag: true + operationId: put-v1-home_addresses-home_address_uuid + security: + - CompanyAccessAuth: [] + description: |- + The home address of an employee is used to determine certain tax information about them. Addresses are geocoded on create and update to ensure validity. + + Supports home address effective dating and courtesy withholding. + + scope: `employees:write` + tags: + - Employee Addresses + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Address" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': description: | - The resource associated with this access token. Null when - the token has no associated resource. - properties: - type: - type: string - description: 'The type of resource associated with the access token, e.g. `Company` for a company-level token or `Oauth::Application` for a system-level token. + Unprocessable Entity -' - example: Company - uuid: - type: string - format: uuid - description: The UUID of the associated resource - example: 7b1d0df1-6403-4a06-8768-c1dd7d24d27a - resource_owner: - type: - - object - - 'null' + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + allOf: + - "$ref": "#/components/schemas/Versionable-Required" + - type: object + properties: + street_1: + type: string + street_2: + type: + - string + - 'null' + city: + type: string + state: + type: string + zip: + type: string + effective_date: + type: + - string + - 'null' + format: date + courtesy_withholding: + type: boolean + required: true + x-speakeasy-group: employeeAddresses + x-speakeasy-name-override: update + delete: + summary: Delete an employee's home address + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: home_address_uuid + in: path + description: The UUID of the home address + required: true + schema: + type: string + x-gusto-rswag: true + operationId: delete-v1-home_addresses-home_address_uuid + security: + - CompanyAccessAuth: [] + description: |- + Used for deleting an employee's home address. Cannot delete the employee's active home address. + + scope: `employees:write` + tags: + - Employee Addresses + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '204': + description: successful + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': description: | - The resource owner (user) who authorized this access token. Null for - system-level tokens or when the owner cannot be determined. - properties: - type: - type: string - enum: - - CompanyAdmin - - Employee - - Contractor - description: | - The type of resource owner: - - `CompanyAdmin`: A company administrator - - `Employee`: An employee - - `Contractor`: A contractor - example: CompanyAdmin - uuid: - type: string - format: uuid - description: The UUID of the resource owner - example: 8fdc31f0-a8a7-4872-a9f1-dcb5e6f876e3 - x-examples: - company_admin_token: - scope: companies:read public - resource: - type: Company - uuid: 7b1d0df1-6403-4a06-8768-c1dd7d24d27a - resource_owner: - type: CompanyAdmin - uuid: 8fdc31f0-a8a7-4872-a9f1-dcb5e6f876e3 - system_token: - scope: partner_managed_companies:create public - resource: - type: Oauth::Application - uuid: 9c2a1b3d-4e5f-6789-abcd-ef0123456789 - resource_owner: - People-Batch: - type: object - description: A batch for bulk people creation. - x-examples: - success_status: - uuid: 191e7162-3026-497e-aca2-f81b7e93204e - idempotency_key: 80a74f8b-2c16-45e5-9038-aa108849c6e6 - status: pending - batch_action: create - properties: - uuid: - type: string - format: uuid - description: The unique identifier of the people batch. - readOnly: true - idempotency_key: - type: string - format: uuid - description: The idempotency key provided when creating the batch. - status: - type: string - enum: - - pending - - processing - - completed - - failed - - partial_success - description: The current status of the batch processing. - batch_action: - type: string - description: The action being performed on the batch. - required: - - uuid - - idempotency_key - - status - - batch_action - People-Batch-Results: - type: object - description: A people batch with processing results. - x-examples: - success_status: - uuid: f711ab7a-2d44-4556-b90c-9f883195f53a - idempotency_key: 95d84feb-3a17-4c0b-a00b-bf8d3dec3326 - status: pending - submitted_at: '2026-03-02T15:09:50-08:00' - completed_at: - submitted_items: - processed_items: 0 - excluded_items: 0 - results: [] - properties: - uuid: - type: string - format: uuid - description: The unique identifier of the people batch. - readOnly: true - idempotency_key: - type: string - format: uuid - description: The idempotency key provided when creating the batch. - status: - type: string - enum: - - pending - - processing - - completed - - failed - - partial_success - description: The current status of the batch processing. - submitted_at: - type: string - format: date-time - description: The timestamp when the batch was submitted. - completed_at: - type: - - string - - 'null' - format: date-time - description: The timestamp when the batch processing completed. - submitted_items: - type: - - integer - - 'null' - description: The number of items submitted in the batch. - processed_items: - type: integer - description: The number of items successfully processed. - excluded_items: - type: integer - description: The number of items excluded from processing. - results: - type: array - description: The results for each batch item. - items: - type: object - properties: - external_id: - type: string - description: The external ID provided in the batch request. - role: - type: string - enum: - - employee - description: The type of person created. - status: - type: string - enum: - - success - - partial_success - - failed - description: The status of this batch item. - idx: - type: integer - description: The index of this item in the original batch request. - uuid: - type: string - format: uuid - description: The UUID of the created person. - employee_uuid: - type: string - format: uuid - description: The UUID of the created employee (if role is employee). - errors: - type: - - array - - 'null' - description: Errors encountered while processing this batch item. + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-speakeasy-group: employeeAddresses + x-speakeasy-name-override: delete + "/v1/employees/{employee_id}/i9_authorization": + get: + summary: Get an employee's I-9 authorization + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-employees-employee_id-i9_authorization + security: + - CompanyAccessAuth: [] + description: |- + An employee's I-9 authorization stores information about an employee's authorization status and I-9 signatures, information required to fill out the Form I-9 for employment eligibility verification. + + **NOTE:** The `form_uuid` in responses from this endpoint can be used to retrieve the PDF version of the I-9. See the "get employee form PDF" request for more details. + + ### Related guides + - [I-9 employment verification](doc:i-9-employment-verification) + + scope: `i9_authorizations:read` + tags: + - I-9 Verification + x-gusto-integration-type: + - embedded + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/I9-Authorization" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: i9Verification + x-speakeasy-name-override: getAuthorization + put: + summary: Create or update an employee's I-9 authorization + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + x-gusto-rswag: true + operationId: put-v1-employees-employee_id-i9_authorization + security: + - CompanyAccessAuth: [] + description: |- + An employee's I-9 authorization stores information about an employee's authorization status, as well as signatures and other information required to complete the Form I-9 for employment eligibility verification. + + If the version is supplied and the employee I-9 authorization exists, this endpoint acts as an update. Otherwise, it will create an employee I-9 authorization. + + Validations on this endpoint are conditional: + * `document_type` may be required, depending on `authorization_status`. + * Valid formats for `document_number` vary, depending on `document_type`. + * `country` is only allowed with `document_type: 'foreign_passport'`. + * `expiration_date` is only allowed with `authorization_status: 'alien'`. + + > ℹ️ Unneeded information is automatically removed during updates. + > + > If an update causes some formerly-required fields to be unneeded, the now-unneeded data will be removed automatically. + > + > **Example:** Updating `authorization_status` from `alien` to `citizen` will cause any data in `document_type`, `document_number`, `country`, and `expiration_date` to be removed, since these fields are unused for `authorization_status:'citizen'`. + + Detailed instructions for completing Form I-9 can be found at https://www.uscis.gov/sites/default/files/document/forms/i-9instr.pdf + + ### Related guides + - [I-9 employment verification](doc:i-9-employment-verification) + + scope: `i9_authorizations:write` + tags: + - I-9 Verification + x-gusto-integration-type: + - embedded + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/I9-Authorization" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/I9-Authorization-Request-Body" + required: true + x-speakeasy-name-override: update + x-speakeasy-group: i9Verification + "/v1/employees/{employee_id}/i9_authorization/document_options": + get: + summary: Get an employee's I-9 verification document options + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-employees-employee_id-i9_authorization-document_options + security: + - CompanyAccessAuth: [] + description: |- + An employee's I-9 verification documents are the documents an employee has provided the employer to verify their identity and authorization to work in the United States. This endpoint returns the possible document options based on the employee's authorization status. These options can then be used to create the I-9 verification documents. + + ### Related guides + - [I-9 employment verification](doc:i-9-employment-verification) + + scope: `i9_authorizations:read` + tags: + - I-9 Verification + x-gusto-integration-type: + - embedded + responses: + '200': + description: Success + content: + application/json: + schema: + type: array items: - type: object - properties: - error_key: - type: string - description: The key identifying the error source. - category: - type: string - description: The error category. - message: - type: - - string - - 'null' - description: Human-readable error message. - errors: - type: - - array - - 'null' - description: Nested errors for sub-operations. - items: - type: object - exclusions: - type: - - array - - 'null' - description: Items excluded from processing due to validation errors. - items: - type: object - properties: - external_id: - type: string - description: The external ID of the excluded item(s). - category: - type: string - description: The exclusion category. - message: - type: string - description: Human-readable explanation for exclusion. - item_count: - type: integer - description: Number of items affected by this exclusion. - required: - - uuid - - idempotency_key - - status - People-Batch-Conflict-Error: - type: object - description: Error response when a people batch idempotency key conflict occurs. - x-examples: - conflict: - errors: - - error_key: idempotency_key - category: invalid_attribute_value - message: Idempotency token already used - metadata: - entity_uuid: 14c53a55-0a80-4d46-a866-f5f64bc06486 - entity_type: PeopleBatch - properties: - errors: - type: array - items: - type: object - properties: - error_key: - type: string - description: The key identifying the error source. - category: - type: string - description: The error category. - message: - type: string - description: Human-readable error message. - metadata: - type: object - properties: - entity_uuid: - type: string - format: uuid - description: The UUID of the existing entity. - entity_type: - type: string - description: The type of the existing entity. - Recurring-Reimbursement-List: - type: array - x-examples: - success_status: - - uuid: 04ca1051-dcec-4cb7-829c-dfbffdf4af23 - employee_uuid: 73c96cc6-f8c9-4513-b3f1-4301351178d6 - version: 3b8eda8460f7acabd86ceec924e0ae74 - description: Travel expenses - created_at: '2025-11-03T09:03:20.000-08:00' - updated_at: '2025-11-03T09:03:20.000-08:00' - amount: '100.00' - - uuid: e3fc7aae-5053-44bf-99e1-3636df0d1f5b - employee_uuid: 73c96cc6-f8c9-4513-b3f1-4301351178d6 - version: 30c1aeb356a70e0a71275414e5f29b7e - description: Meal allowance - created_at: '2025-11-03T09:03:20.000-08:00' - updated_at: '2025-11-03T09:03:20.000-08:00' - amount: '50.00' - items: - "$ref": "#/components/schemas/Recurring-Reimbursement" - Recurring-Reimbursement: - type: object - x-examples: - success_status: - uuid: b739f253-b028-443b-b6cf-97a555c3d493 - employee_uuid: 346e1409-1c97-4524-9ebb-0c0c169e35cb - version: cf9b64404e63d325c762aaad20ca7a39 - description: Office supplies - created_at: '2025-11-03T09:03:24.000-08:00' - updated_at: '2025-11-03T09:03:24.000-08:00' - amount: '75.50' - properties: - uuid: - type: string - description: The unique identifier of this recurring reimbursement. - readOnly: true - employee_uuid: - type: string - description: The UUID of the employee. - readOnly: true - description: - type: string - description: The description of the reimbursement. - amount: - type: string - description: The dollar amount of the reimbursement. - version: - type: string - description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. - created_at: - type: string - description: The timestamp when this reimbursement was created. - readOnly: true - updated_at: - type: string - description: The timestamp when this reimbursement was last updated. - readOnly: true - required: - - uuid - - employee_uuid - - description - - amount - - version - Signatory-Invite-Request: - type: object - description: Request body for inviting a signatory. - properties: - first_name: - type: string - description: The signatory's first name. - middle_initial: - type: string - last_name: - type: string - description: The signatory's last name. - title: - type: string - description: The signatory's title (e.g. CEO, President). - phone: - type: string - description: The signatory's phone number. - birthday: - type: string - format: date - description: The signatory's date of birth. - email: - type: string - format: email - description: The signatory's email address. - ssn: - type: string - description: The signatory's SSN. Required for create with complete information; not used for invite. - home_address: - type: object - description: The signatory's home address. - properties: - street_1: - type: string - street_2: - type: string - city: - type: string - state: - type: string - zip: - type: string - country: - type: string - default: USA - required: - - first_name - - last_name - - email - x-tags: - - Signatories - Signatory-Create-Request: - type: object - description: Request body for creating a signatory with complete information. All listed required fields must be provided. - properties: - first_name: - type: string - description: The signatory's first name. - middle_initial: - type: string - last_name: - type: string - description: The signatory's last name. - title: - type: string - description: The signatory's title (e.g. CEO, President). - phone: - type: string - description: The signatory's phone number. - birthday: - type: string - format: date - description: The signatory's date of birth. - email: - type: string - format: email - description: The signatory's email address. - ssn: - type: string - description: The signatory's SSN. - home_address: - type: object - description: The signatory's home address. - properties: - street_1: - type: string - street_2: - type: string - city: - type: string - state: - type: string - zip: - type: string - country: - type: string - default: USA - required: - - street_1 - - city - - state - - zip - required: - - first_name - - last_name - - email - - title - - phone - - birthday - - ssn - - home_address - x-tags: - - Signatories - Signatory-Update-Request: - type: object - description: Request body for updating a signatory. Email cannot be updated. - properties: - version: - type: string - description: Current version of the signatory (required for optimistic concurrency). - first_name: - type: string - middle_initial: - type: string - last_name: - type: string - title: - type: string - phone: - type: string - birthday: - type: string - format: date - ssn: - type: string - description: The signatory's SSN. - home_address: - type: object - properties: - street_1: - type: string - street_2: - type: string - city: - type: string - state: - type: string - zip: - type: string - country: - type: string - required: - - version - x-tags: - - Signatories - Payment-Configs-Update-Request: - type: object - description: Request body for updating company payment configs. At least one of payment_speed, fast_payment_limit, or partner_owned_disbursement is required. - properties: - payment_configs: - type: object - properties: - payment_speed: - type: string - enum: - - 1-day - - 2-day - - 4-day - description: Desired payment speed. 1-day is only applicable to partners that opt in. - fast_payment_limit: - type: - - number - - 'null' - description: Payment limit for 1-day or 2-day payroll (in dollars). - partner_owned_disbursement: - type: boolean - description: Whether to use the partner-owned disbursement payment rail. - x-examples: - update_payment_speed_and_limit: - payment_configs: - payment_speed: 2-day - fast_payment_limit: 1000 - update_payment_speed_only: - payment_configs: - payment_speed: 4-day - Company-Bank-Account-Verify-Request: - type: object - description: Request body for verifying a company bank account with the two micro-deposit amounts. - required: - - deposit_1 - - deposit_2 - properties: - deposit_1: - type: number - format: float - description: The first micro-deposit amount (order does not matter). - deposit_2: - type: number - format: float - description: The second micro-deposit amount (order does not matter). - I9-Authorization-Request-Body: - description: Request body for creating or updating an employee's I-9 authorization. - type: object - properties: - version: - type: string - description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. If supplied, this endpoint will update the existing I-9 authorization if it exists. - authorization_status: - type: string + "$ref": "#/components/schemas/I9-Authorization-Document-Option" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: i9Verification + x-speakeasy-name-override: getDocumentOptions + "/v1/employees/{employee_id}/i9_authorization/documents": + get: + summary: Get an employee's I-9 verification documents + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-employees-employee_id-i9_authorization-documents + security: + - CompanyAccessAuth: [] + description: |- + An employee's I-9 verification documents are the documents an employee has provided the employer to verify their identity and authorization to work in the United States. + + ### Related guides + - [I-9 employment verification](doc:i-9-employment-verification) + + scope: `i9_authorizations:read` + tags: + - I-9 Verification + x-gusto-integration-type: + - embedded + responses: + '200': + description: Success + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/I9-Authorization-Document" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: i9Verification + x-speakeasy-name-override: getDocuments + put: + summary: Create an employee's I-9 authorization verification documents + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + x-gusto-rswag: true + operationId: put-v1-employees-employee_id-i9_authorization-documents + security: + - CompanyAccessAuth: [] + description: "An employee's I-9 verification documents are the documents an employee has provided the employer to verify their identity and authorization to work in the United States.\n\nUse the [document options endpoint](ref:get-v1-employees-employee_id-i9_authorization-document_options) to get the possible document types and titles, which can vary depending on the employee's authorization status.\n\n> \U0001F6A7 Every request must contain the complete list of documents for the Employee.\n>\n> Every request to this endpoint removes any previous verification document records for the employee.\n\n### Related guides\n- [I-9 employment verification](doc:i-9-employment-verification)\n\nscope: `i9_authorizations:manage`" + tags: + - I-9 Verification + x-gusto-integration-type: + - embedded + responses: + '201': + description: Created + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/I9-Authorization-Document" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/I9-Authorization-Documents-Request-Body" + required: true + x-speakeasy-group: i9Verification + x-speakeasy-name-override: createDocuments + "/v1/employees/{employee_id}/i9_authorization/documents/{document_id}": + delete: + summary: Delete an employee's I-9 verification document + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + - name: document_id + in: path + description: The UUID of the document + required: true + schema: + type: string + x-gusto-rswag: true + operationId: delete-v1-employees-employee_id-i9_authorization-documents-document_id + security: + - CompanyAccessAuth: [] + description: |- + An employee's I-9 verification documents are the documents an employee has provided the employer to verify their identity and authorization to work in the United States. This endpoint deletes a specific verification document. + + ### Related guides + - [I-9 employment verification](doc:i-9-employment-verification) + + scope: `i9_authorizations:manage` + tags: + - I-9 Verification + x-gusto-integration-type: + - embedded + responses: + '204': + description: No Content + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-speakeasy-group: i9Verification + x-speakeasy-name-override: deleteDocument + "/v1/employees/{employee_id}/i9_authorization/employer_sign": + put: + summary: Employer sign an employee's Form I-9 + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + - name: x-gusto-client-ip + in: header + required: false + schema: + type: string + description: Optional header to supply the IP address. This can be used to supply the IP address for signature endpoints instead of the signed_by_ip_address parameter. + x-gusto-rswag: true + operationId: put-v1-employees-employee_id-i9_authorization-employer_sign + security: + - CompanyAccessAuth: [] + description: |- + Sign an employee's Form I-9 as an employer. Once the form is signed, the employee's I-9 authorization is considered complete and cannot be modified. + + ### Prerequisites + Before calling this endpoint: + 1. The employee must have a completed [I-9 authorization](ref:put-v1-employees-employee_id-i9_authorization) + 2. The employee must have signed the Form I-9 + 3. [I-9 verification documents](ref:put-v1-employees-employee_id-i9_authorization-documents) must be submitted + + ### Related guides + - [I-9 employment verification](doc:i-9-employment-verification) + + scope: `i9_authorizations:manage` + tags: + - I-9 Verification + x-gusto-integration-type: + - embedded + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/I9-Authorization" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/I9-Authorization-Employer-Sign-Request-Body" + required: true + x-speakeasy-group: i9Verification + x-speakeasy-name-override: employerSign + "/v1/companies/{company_uuid}/information_requests": + get: + summary: Get all information requests for a company + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: sort_by + in: query + required: false + schema: + type: string + pattern: "^(payroll_blocker|status|type)(:(asc|desc))?(,(payroll_blocker|status|type)(:(asc|desc))?)*$" + example: payroll_blocker:asc + description: 'Sort by one or more fields. Options: payroll_blocker, status, type. Append `:asc` or `:desc` to specify direction (e.g., `payroll_blocker:asc`). Defaults to ascending.' + x-gusto-rswag: true + operationId: get-information-requests + security: + - CompanyAccessAuth: [] + description: |- + Fetch all information requests for a company. + + scope: `information_requests:read` + tags: + - Information Requests + x-gusto-integration-type: + - embedded + responses: + '200': + description: Successful + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Information-Request" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + "/v1/invoices/{invoice_period}": + get: + summary: Retrieve invoicing data for companies + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: invoice_period + in: path + required: true + description: The month we are calculating the invoice for. Must be in YYYY-MM format + schema: + type: string + - name: page + in: query + required: false + description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + schema: + type: integer + - name: per + in: query + required: false + description: Number of objects per page. For majority of endpoints will default to 25 + schema: + type: integer + - name: company_uuids + in: query + required: false + description: Filter companies returned in the active_companies response, will return an error if company not active during provided invoice period. i.e. `?company_uuids=781922d8-e780-4b6b-bf74-ee303166d022,bbbca930-7322-491c-ba7f-98707a52a9c5` + schema: + type: string + x-gusto-rswag: true + operationId: get-invoices-invoice-period + security: + - SystemAccessAuth: [] + description: "Retrieve data for active companies used to calculate invoices for Gusto Embedded Payroll. A company is considered active for an invoice period if they are an active partner managed company, have run payroll or created contractor payments since becoming a partner managed company, and are not suspended at any point during the invoice period. This endpoint forces pagination, with 100 results returned at a time. You can learn more about our pagination here: [pagination guide](https://docs.gusto.com/embedded-payroll/docs/pagination)\n\n\U0001F4D8 System Access Authentication\n\nThis endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access)\n\nscope: `invoices:read`" + tags: + - Invoices + x-gusto-integration-type: + - embedded + responses: + '200': + description: OK + content: + application/json: + schema: + "$ref": "#/components/schemas/Invoice-Data" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-speakeasy-name-override: get + "/v1/jobs/{job_id}": + get: + summary: Get a job + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: job_id + in: path + description: The UUID of the job + required: true + schema: + type: string + - name: include + in: query + required: false + schema: + type: string + enum: + - all_compensations + description: | + Available options: + - all_compensations: Include all effective dated compensations for each job instead of only the current compensation + x-gusto-rswag: true + operationId: get-v1-jobs-job_id + security: + - CompanyAccessAuth: [] + description: |- + Get a job. + + Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope is included. This allows you to access employee and job metadata without exposing pay rates. + + Compensation data in the response requires the `compensations:read` scope. + + scope: `jobs:read` + tags: + - Jobs and Compensations + x-gusto-integration-type: + - embedded + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Job" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: jobsAndCompensations + x-speakeasy-name-override: getJob + put: + summary: Update a job + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: job_id + in: path + description: The UUID of the job + required: true + schema: + type: string + x-gusto-rswag: true + operationId: put-v1-jobs-job_id + security: + - CompanyAccessAuth: [] + description: |- + Update a job. + + scope: `jobs:write` + tags: + - Jobs and Compensations + x-gusto-integration-type: + - embedded + responses: + '200': + description: successful blank title on a non-primary active job + content: + application/json: + schema: + "$ref": "#/components/schemas/Job" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Jobs-Update-Request-Body" + required: true + x-speakeasy-name-override: update + x-speakeasy-group: jobsAndCompensations + delete: + summary: Delete an individual job + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: job_id + in: path + description: The UUID of the job + required: true + schema: + type: string + x-gusto-rswag: true + operationId: delete-v1-jobs-job_id + security: + - CompanyAccessAuth: [] + description: |- + Deletes a specific job that an employee holds. + + scope: `jobs:write` + tags: + - Jobs and Compensations + x-gusto-integration-type: + - embedded + responses: + '204': + description: successful + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-speakeasy-group: jobsAndCompensations + x-speakeasy-name-override: delete + "/v1/employees/{employee_id}/jobs": + get: + summary: Get jobs for an employee + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + - name: page + in: query + required: false + description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + schema: + type: integer + - name: per + in: query + required: false + description: Number of objects per page. For majority of endpoints will default to 25 + schema: + type: integer + - name: include + in: query + required: false + schema: + type: string + enum: + - all_compensations + description: | + Available options: + - all_compensations: Include all effective dated compensations for each job instead of only the current compensation + x-gusto-rswag: true + operationId: get-v1-employees-employee_id-jobs + security: + - CompanyAccessAuth: [] + description: |- + Get all of the jobs that an employee holds. + Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope is included. This allows you to access employee and job metadata without exposing pay rates. + + Compensation data in the response requires the `compensations:read` scope. + + scope: `jobs:read` + tags: + - Jobs and Compensations + x-gusto-integration-type: + - embedded + responses: + '200': + description: Successful + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Job" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: getJobs + x-speakeasy-group: jobsAndCompensations + post: + summary: Create a job + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + x-gusto-rswag: true + operationId: post-v1-employees-employee_id-jobs + security: + - CompanyAccessAuth: [] + description: |- + Create a job. + + scope: `jobs:write` + tags: + - Jobs and Compensations + x-gusto-integration-type: + - embedded + responses: + '201': + description: created a primary job with a null title + content: + application/json: + schema: + "$ref": "#/components/schemas/Job" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Jobs-Create-Request-Body" + required: true + x-speakeasy-group: jobsAndCompensations + x-speakeasy-name-override: createJob + "/v1/locations/{location_uuid}/minimum_wages": + get: + summary: Get minimum wages for a location + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: location_uuid + in: path + description: The UUID of the location + required: true + schema: + type: string + - name: effective_date + in: query + required: false + example: '2020-01-31' + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-locations-location_uuid-minimum_wages + security: + - CompanyAccessAuth: [] + description: |- + Get minimum wages for a location + + scope: `companies:read` + tags: + - Locations + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Minimum-Wage-List" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: getMinimumWages + "/v1/locations/{location_id}": + get: + summary: Get a location + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: location_id + in: path + description: The UUID of the location + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-locations-location_id + security: + - CompanyAccessAuth: [] + description: |- + Get a location. + + scope: `companies:read` + tags: + - Locations + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Location" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: retrieve + put: + summary: Update a location + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: location_id + in: path + description: The UUID of the location + required: true + schema: + type: string + x-gusto-rswag: true + operationId: put-v1-locations-location_id + security: + - CompanyAccessAuth: [] + description: |- + Update a location. + + scope: `companies:write` + tags: + - Locations + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Location" + '422': + description: Invalid state + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '409': + description: Invalid version param + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + allOf: + - "$ref": "#/components/schemas/Versionable-Required" + - type: object + properties: + phone_number: + type: string + pattern: "[0-9]{10}" + example: '8009360383' + street_1: + type: string + example: 300 3rd Street + street_2: + type: + - string + - 'null' + example: Apartment 318 + city: + type: string + example: San Francisco + state: + type: string + zip: + type: string + example: '94107' + country: + type: string + mailing_address: + type: boolean + description: For a company location, specify if this location is the company's mailing address. A company has a single mailing address, so this designation will override any previous selection. + filing_address: + type: boolean + description: For a company location, specify if this location is the company's filing address. A company has a single filing address, so this designation will override any previous selection. + required: true + x-speakeasy-name-override: update + "/v1/companies/{company_id}/locations": + get: + summary: Get all company locations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + example: 7b1d0df1-6403-4a06-8768-c1dd7d24d27a + required: true + schema: + type: string + - name: page + in: query + required: false + description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + schema: + type: integer + - name: per + in: query + required: false + description: Number of objects per page. For majority of endpoints will default to 25 + schema: + type: integer + x-gusto-rswag: true + operationId: get-v1-companies-company_id-locations + security: + - CompanyAccessAuth: [] + description: |- + Retrieves all company locations (addresses) associated with a company: mailing addresses, filing + addresses, or work locations. A single address may serve multiple, or all, purposes. + + Since all company locations are subsets of locations, use the Locations endpoints to + [get](ref:get-v1-locations-location_id) or [update](ref:put-v1-locations-location_id) an individual record. + + scope: `companies:read` + tags: + - Locations + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Company-Locations-List" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: get + post: + summary: Create a company location + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + operationId: post-v1-companies-company_id-locations + security: + - CompanyAccessAuth: [] + description: |- + Create a company location, which represents any address associated with a company: mailing + addresses, filing addresses, or work locations. A single address may serve multiple, or all, purposes. + + Since all company locations are subsets of locations, use the Locations endpoints to + [get](ref:get-v1-locations-location_id) or [update](ref:put-v1-locations-location_id) an individual record. + + scope: `companies:write` + tags: + - Locations + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '201': + description: Created + content: + application/json: + schema: + "$ref": "#/components/schemas/Location" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Company-Location-Request" + required: true + x-speakeasy-name-override: create + "/v1/employees/{employee_id}/member_portal_invitations": + post: + summary: Create an employee member portal invitation + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + x-gusto-rswag: true + operationId: post-v1-employees-employee_id-member_portal_invitations + security: + - CompanyAccessAuth: [] + description: |- + Generates a member portal invitation for the specified employee. If the employee already has an invitation and its token has expired, calling this endpoint regenerates the invitation and overrides the prior token. + + scope: `member_portal_invitation:write` + tags: + - Member Portal Invitations + x-gusto-integration-type: + - embedded + responses: + '201': + description: Created + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + get: + summary: Get an employee member portal invitation + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-employees-employee_id-member_portal_invitations + security: + - CompanyAccessAuth: [] + description: |- + Returns the current status of an employee's member portal invitation (`pending`, `sent`, `verified`, `complete`, or `cancelled`) along with an `expired` flag indicating whether the invitation can still be acted on by the employee. + + scope: `member_portal_invitation:read` + tags: + - Member Portal Invitations + x-gusto-integration-type: + - embedded + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Member-Portal-Invitation" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + delete: + summary: Cancel an employee member portal invitation + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + x-gusto-rswag: true + operationId: delete-v1-employees-employee_id-member_portal_invitations + security: + - CompanyAccessAuth: [] + description: |- + Cancels the member portal invitation for the specified employee. + + Note: this endpoint does not cancel the employee's self-onboarding flow. If you want the company admin to take full control of onboarding the employee, cancel the self-onboarding request instead. + + scope: `member_portal_invitation:write` + tags: + - Member Portal Invitations + x-gusto-integration-type: + - embedded + responses: + '204': + description: No Content + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + "/v1/contractors/{contractor_uuid}/member_portal_invitations": + post: + summary: Create a contractor member portal invitation + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: contractor_uuid + in: path + description: The UUID of the contractor + required: true + schema: + type: string + x-gusto-rswag: true + operationId: post-v1-contractors-contractor_uuid-member_portal_invitations + security: + - CompanyAccessAuth: [] + description: |- + Generates a member portal invitation for the specified contractor. If the contractor already has an invitation and its token has expired, calling this endpoint regenerates the invitation and overrides the prior token. + + scope: `member_portal_invitation:write` + tags: + - Member Portal Invitations + x-gusto-integration-type: + - embedded + responses: + '201': + description: Created + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + get: + summary: Get a contractor member portal invitation + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: contractor_uuid + in: path + description: The UUID of the contractor + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-contractors-contractor_uuid-member_portal_invitations + security: + - CompanyAccessAuth: [] + description: |- + Returns the current status of a contractor's member portal invitation (`pending`, `sent`, `verified`, `complete`, or `cancelled`) along with an `expired` flag indicating whether the invitation can still be acted on by the contractor. + + scope: `member_portal_invitation:read` + tags: + - Member Portal Invitations + x-gusto-integration-type: + - embedded + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Member-Portal-Invitation" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + delete: + summary: Cancel a contractor member portal invitation + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: contractor_uuid + in: path + description: The UUID of the contractor + required: true + schema: + type: string + x-gusto-rswag: true + operationId: delete-v1-contractors-contractor_uuid-member_portal_invitations + security: + - CompanyAccessAuth: [] + description: |- + Cancels the member portal invitation for the specified contractor. + + Note: this endpoint does not cancel the contractor's self-onboarding flow. If you want the company admin to take full control of onboarding the contractor, cancel the self-onboarding request instead. + + scope: `member_portal_invitation:write` + tags: + - Member Portal Invitations + x-gusto-integration-type: + - embedded + responses: + '204': + description: No Content + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + "/v1/notifications/{notification_uuid}": + get: + summary: Get a notification's details + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: notification_uuid + in: path + description: The notification entity_uuid + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-notifications-notification_uuid + security: + - CompanyAccessAuth: [] + description: |- + Upon receiving a notification webhook event, use this endpoint to fetch the notification's details. The notification details include basic suggested content that can help you build notifications in your platform. + + Note: partners are responsible for the delivery and any custom state management of notifications in their application. Refer to our [partner notification guide](https://docs.gusto.com/embedded-payroll/docs/partner-notifications) for more details. + + If the notification UUID is not found, the response will be 404 Not Found. If the notification's supporting data is no longer valid, the response will be 422 Unprocessable Entity. + + scope: `notifications:read` + tags: + - Notifications + x-gusto-integration-type: + - embedded + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Notification" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-speakeasy-name-override: getDetails + "/v1/companies/{company_uuid}/paid_holidays": + get: + summary: Preview a company's paid holidays + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: year + in: query + required: false + description: If a year is passed, paid holidays for that year will be returned. Otherwise, paid holidays for the next three years will be returned. + schema: + type: string + example: '2023' + x-gusto-rswag: true + operationId: get-companies-company_uuid-paid_holidays + security: + - CompanyAccessAuth: [] + description: |- + Preview a company's paid holidays + + If a year is passed, paid holidays for that year will be returned. Otherwise, paid holidays for the next three years will be returned. + + scope: `holiday_pay_policies:read` + tags: + - Holiday Pay Policies + x-gusto-integration-type: + - embedded + responses: + '200': + description: successful + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Paid-Holiday" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: holidayPayPolicies + x-speakeasy-name-override: previewPaidHolidays + "/v1/partner_managed_companies/{company_uuid}/disassociate": + put: + summary: Disassociate a partner managed company + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + operationId: put-v1-partner-managed-companies-company-uuid-disassociate + security: + - SystemAccessAuth: [] + description: "Disassociate a company from your embedded payroll product, reversing an earlier association or migration. You can only disassociate a company that is currently associated with your application.\n\n\U0001F4D8 System Access Authentication\n\nThis endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access)\n\nscope: `partner_managed_companies:disassociate`" + tags: + - Companies + x-gusto-integration-type: + - embedded + responses: + '200': + description: OK + content: + application/json: + schema: + "$ref": "#/components/schemas/Partner-Managed-Company-Disassociate-Response" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + "/v1/partner_managed_companies/{company_uuid}/migrate": + put: + summary: Migrate company to embedded payroll + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + operationId: put-v1-partner-managed-companies-company-uuid-migrate + security: + - CompanyAccessAuth: [] + description: |- + Migrate an existing Gusto customer to your embedded payroll product. + + ### Prerequisites + Before calling this endpoint: + 1. The customer must connect their Gusto account to your application using [OAuth2](doc:oauth2) + 2. The customer must view and [accept the Embedded Payroll Terms of Service](ref:post-partner-managed-companies-company_uuid-accept_terms_of_service) + + ### Related guides + - [Migrate an existing company](doc:migrate-existing-company) + + scope: `partner_managed_companies:write` + tags: + - Companies + x-gusto-integration-type: + - embedded + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Partner-Managed-Company-Migrate-Response" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Partner-Managed-Company-Migrate-Request" + required: true + x-speakeasy-name-override: migrate + "/v1/partner_managed_companies": + post: + summary: Create a partner managed company + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + operationId: post-v1-partner-managed-companies + security: + - SystemAccessAuth: [] + description: "Create a partner managed company. When you successfully call the API, it does the following:\n* Creates a new company in Gusto\n* Creates a new user using the provided email if the user does not already exist.\n* Makes the user the primary payroll administrator of the new company.\n\nIn response, you will receive oauth access tokens for the created company.\n\nIMPORTANT: the returned access and refresh tokens are reserved for this company only. They cannot be used to access other companies AND previously granted tokens cannot be used to access this company.\n\n\U0001F4D8 System Access Authentication\n\nThis endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access)\n\nscope: `partner_managed_companies:manage`" + tags: + - Companies + x-gusto-integration-type: + - embedded + responses: + '200': + description: OK + content: + application/json: + schema: + "$ref": "#/components/schemas/Partner-Managed-Company" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Partner-Managed-Company-Create-Request" + required: true + x-speakeasy-name-override: createPartnerManaged + "/v1/partner_managed_companies/{company_uuid}/migration_readiness": + get: + summary: Check company migration readiness + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-partner-managed-companies-company-uuid-migration_readiness + security: + - CompanyAccessAuth: [] + description: |- + Check if an existing Gusto customer is ready to be migrated to embedded payroll. This endpoint returns blockers and warnings associated with migrating the company and is recommended to be called before attempting to migrate a company. + + scope: `partner_managed_companies:read` + tags: + - Companies + x-gusto-integration-type: + - embedded + responses: + '200': + description: Example response + content: + application/json: + schema: + "$ref": "#/components/schemas/Partner-Managed-Company-Migration-Readiness-Response" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + "/v1/partner_managed_companies/{company_uuid}/accept_terms_of_service": + post: + summary: Accept terms of service for an admin + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + operationId: post-partner-managed-companies-company_uuid-accept_terms_of_service + security: + - CompanyAccessAuth: [] + deprecated: true + description: |- + > Deprecated: use [POST /v1/partner_managed_companies/{company_uuid}/terms_of_service](https://docs.gusto.com/embedded-payroll/reference/post-v1-partner-managed-companies-company-uuid-terms_of_service). + + Accept the Gusto Embedded Payroll's [Terms of Service](https://flows.gusto.com/terms). + The user must be a company admin in order to accept the Terms of Service. + + scope: `terms_of_services:write` + tags: + - Companies + x-gusto-integration-type: + - embedded + responses: + '404': + description: Deprecated endpoint + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Partner-Managed-Company-Accept-Terms-Of-Service-Request" + required: true + x-speakeasy-name-override: acceptTermsOfService + "/v1/partner_managed_companies/{company_uuid}/retrieve_terms_of_service": + post: + summary: Retrieve terms of service status for an admin + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + operationId: post-partner-managed-companies-company_uuid-retrieve_terms_of_service + security: + - CompanyAccessAuth: [] + deprecated: true + description: |- + > Deprecated: use [PUT /v1/partner_managed_companies/{company_uuid}/terms_of_service](https://docs.gusto.com/embedded-payroll/reference/put-v1-partner-managed-companies-company-uuid-terms_of_service) for user-level status, or [GET /v1/partner_managed_companies/{company_uuid}/terms_of_service](https://docs.gusto.com/embedded-payroll/reference/get-v1-partner-managed-companies-company-uuid-terms_of_service) for company-level status. + + Retrieve the user acceptance status of the Gusto Embedded Payroll's [Terms of Service](https://flows.gusto.com/terms). + + scope: `terms_of_services:read` + tags: + - Companies + x-gusto-integration-type: + - embedded + responses: + '404': + description: Deprecated endpoint + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Partner-Managed-Company-Retrieve-Terms-Of-Service-Request" + required: true + x-speakeasy-name-override: retrieveTermsOfService + "/v1/partner_managed_companies/{company_uuid}/terms_of_service": + get: + summary: Get the terms of service status for a company + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-partner-managed-companies-company-uuid-terms_of_service + security: + - CompanyAccessAuth: [] + description: |- + Check if any company payroll admin has accepted the Gusto Embedded Payroll's [Terms of Service](https://flows.gusto.com/terms). + + This is useful for partners with multiple payroll admins who need to check TOS status at the company level rather than for a specific user. + + scope: `terms_of_services:read` + tags: + - Companies + x-gusto-integration-type: + - embedded + responses: + '200': + description: Example response + content: + application/json: + schema: + "$ref": "#/components/schemas/Partner-Managed-Company-Terms-Of-Service-Response" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + put: + summary: Check terms of service status for a specific user + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + operationId: put-v1-partner-managed-companies-company-uuid-terms_of_service + security: + - CompanyAccessAuth: [] + description: |- + Check user-specific Terms of Service acceptance for the Gusto Embedded Payroll [Terms of Service](https://flows.gusto.com/terms). + + The user must have a role on the company. Returns whether the specific user has accepted the latest TOS version. + + Uses PUT (rather than GET) to hide the email address from URL logs. + + scope: `terms_of_services:read` + tags: + - Companies + x-gusto-integration-type: + - embedded + responses: + '200': + description: Example response + content: + application/json: + schema: + "$ref": "#/components/schemas/Partner-Managed-Company-Terms-Of-Service-Response" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Partner-Managed-Company-Retrieve-Terms-Of-Service-Request" + required: true + post: + summary: Accept terms of service for a specific user + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + operationId: post-v1-partner-managed-companies-company-uuid-terms_of_service + security: + - CompanyAccessAuth: [] + description: |- + Accept the Gusto Embedded Payroll's [Terms of Service](https://flows.gusto.com/terms) on behalf of a specific user. The user must have a role on the company. + + scope: `terms_of_services:write` + tags: + - Companies + x-gusto-integration-type: + - embedded + responses: + '200': + description: Example response + content: + application/json: + schema: + "$ref": "#/components/schemas/Partner-Managed-Company-Terms-Of-Service-Response" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Partner-Managed-Company-Accept-Terms-Of-Service-Request" + required: true + "/v1/companies/{company_id}/pay_periods": + get: + summary: Get pay periods for a company + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: start_date + in: query + required: false + schema: + type: string + format: date + description: Start date (YYYY-MM-DD) for the pay periods range. Defaults to 6 months ago. + - name: end_date + in: query + required: false + schema: + type: string + format: date + description: End date (YYYY-MM-DD) for the pay periods range. Cannot be more than 3 months in the future. Defaults to today. + - name: payroll_types + in: query + required: false + schema: + type: string + enum: + - regular + - transition + - regular,transition + description: Comma-separated list of payroll types to include (regular, transition). Defaults to regular only. + x-gusto-rswag: true + operationId: get-v1-companies-company_id-pay_periods + security: + - CompanyAccessAuth: [] + description: |- + Pay periods are the foundation of payroll. Compensation, time & attendance, taxes, and expense reports all rely on when they happened. + + To begin submitting information for a given payroll, we need to agree on the time period. + + By default, this endpoint returns pay periods starting from 6 months ago to the date today. Use the `start_date` and `end_date` parameters to change the scope of the response. End dates can be up to 3 months in the future and there is no limit on start dates. + + Starting in version 2023-04-01, the `eligible_employees` attribute was removed from the response. The eligible employees for a payroll are determined by the employee_compensations returned from the [PUT /v1/companies/{company_id}/payrolls/{payroll_id}/prepare](ref:put-v1-companies-company_id-payrolls-payroll_id-prepare) endpoint. + + scope: `payrolls:read` + tags: + - Payrolls + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: Successful + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Pay-Period" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-speakeasy-group: paySchedules + x-speakeasy-name-override: getPayPeriods + "/v1/companies/{company_id}/pay_periods/unprocessed_termination_pay_periods": + get: + summary: Get termination pay periods for a company + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-companies-company_id-unprocessed_termination_pay_periods + security: + - CompanyAccessAuth: [] + description: |- + 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. + + This endpoint returns the unprocessed pay periods for past and future terminated employees in a given company. + + scope: `payrolls:read` + tags: + - Pay Schedules + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: Successful + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Unprocessed-Termination-Pay-Period" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: paySchedules + x-speakeasy-name-override: getUnprocessedTerminationPeriods + "/v1/companies/{company_id}/pay_schedules": + get: + summary: Get the pay schedules for a company + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: page + in: query + required: false + description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + schema: + type: integer + - name: per + in: query + required: false + description: Number of objects per page. For majority of endpoints will default to 25 + schema: + type: integer + x-gusto-rswag: true + operationId: get-v1-companies-company_id-pay_schedules + security: + - CompanyAccessAuth: [] + description: |- + Returns all pay schedules for a company. The pay schedule object captures the details of when employees work and when they should be paid. A company can have multiple pay schedules. + + scope: `pay_schedules:read` + tags: + - Pay Schedules + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Pay-Schedule-Show-Response" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: paySchedules + x-speakeasy-name-override: getAll + post: + summary: Create a new pay schedule + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + operationId: post-v1-companies-company_id-pay_schedules + security: + - CompanyAccessAuth: [] + description: |- + 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](https://www.dol.gov/agencies/whd/state/payday)** to know what schedule is right for your customers. + + > If an onboarded company misses their first pay date, Gusto will automatically adjust the pay schedule to the next available pay date. + + ### Webhooks + - `pay_schedule.created`: Fires when a pay schedule is successfully created. + + ### Related guides + - [Create a pay schedule](doc:create-a-pay-schedule) + - [Pay Schedules](doc:pay-schedule-info) + - [Manage Pay Schedules via API](doc:manage-pay-schedules-api) + + scope: `pay_schedules:write` + tags: + - Pay Schedules + x-gusto-integration-type: + - embedded + responses: + '201': + description: Created + content: + application/json: + schema: + "$ref": "#/components/schemas/Pay-Schedule-Show" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Pay-Schedule-Create-Request" + required: true + x-speakeasy-group: paySchedules + x-speakeasy-name-override: create + "/v1/companies/{company_id}/pay_schedules/preview": + get: + summary: Preview pay schedule dates + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: frequency + in: query + required: true + schema: + type: string + enum: + - Every week + - Every other week + - Twice per month + - Monthly + example: Twice per month + description: The frequency that employees on this pay schedule are paid with Gusto. + - name: anchor_pay_date + in: query + required: true + schema: + type: string + format: date + example: '2020-05-15' + description: The first date that employees on this pay schedule are paid with Gusto. + - name: anchor_end_of_pay_period + in: query + required: true + schema: + type: string + format: date + example: '2020-05-08' + description: The last date of the first pay period. This can be the same date as the anchor pay date. + - name: day_1 + in: query + required: false + schema: + type: integer + example: 15 + description: 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. + - name: day_2 + in: query + required: false + schema: + type: integer + example: 31 + description: 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 is set to the last day of the month. It will be null for pay schedules with other frequencies. + - name: end_date + in: query + required: false + schema: + type: string + format: date + description: End date for the preview range. If given, this date must be in the future. When unspecified, defaults to 18 months from today. + - name: pay_schedule_uuid + in: query + required: false + schema: + type: string + format: uuid + description: Optional UUID of an existing pay schedule. When supplied, the preview is seeded from the persisted schedule — including internal flags (such as arrears handling) that affect period boundaries but are not exposed as request parameters. Any other query parameters override individual attributes on top of the loaded schedule. + x-gusto-rswag: true + operationId: get-v1-companies-company_id-pay_schedules-preview + security: + - CompanyAccessAuth: [] + description: |- + Provides a preview of a pay schedule with the specified parameters for the next 18 months. Use this before creating or updating a pay schedule to show expected check dates, pay period boundaries, and payroll deadlines. + + ### Related guides + - [Create a pay schedule](doc:create-a-pay-schedule) + - [Manage Pay Schedules via API](doc:manage-pay-schedules-api) + + scope: `pay_schedules:write` + tags: + - Pay Schedules + x-gusto-integration-type: + - embedded + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Pay-Schedule-Preview" + '404': description: | - The employee's authorization status. - - `citizen`: A citizen is someone who was born in the United States or is a naturalized citizen living in the United States. - - `noncitizen`: A noncitizen national is someone born in American Samoa, certain former citizens of the former Trust Territory of the Pacific Islands, and certain children of noncitizen nationals born abroad. - - `permanent_resident`: A lawful permanent resident is someone who is not a US citizen and who resides under legally recognized and lawfully recorded permanent residence as an immigrant. - - `alien`: Also referred to as a "noncitizen authorized to work". This includes anyone who is authorized to work in the United States but is not a US citizen, US national or lawful permanent resident. - enum: - - citizen - - noncitizen - - permanent_resident - - alien - document_type: - type: string + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': description: | - The type of document an employee holds, based on their authorization status. - - This is unused for authorization status `citizen` or `noncitizen`. - - If the authorization status is `permanent_resident`, this must be `uscis_alien_registration_number`. - - If the authorization status is `alien`, this is required and may be any of the valid values. - enum: - - uscis_alien_registration_number - - form_i94 - - foreign_passport - document_number: - type: string + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-speakeasy-group: paySchedules + x-speakeasy-name-override: getPreview + "/v1/companies/{company_id}/pay_schedules/{pay_schedule_id}": + get: + summary: Get a pay schedule + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: pay_schedule_id + in: path + description: The UUID of the pay schedule + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-companies-company_id-pay_schedules-pay_schedule_id + security: + - CompanyAccessAuth: [] + description: |- + Returns a single pay schedule by UUID. The pay schedule object in Gusto captures the details of when employees work and when they should be paid. A company can have multiple pay schedules. + + scope: `pay_schedules:read` + tags: + - Pay Schedules + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Pay-Schedule-Show" + '404': description: | - The document number. Formatting depends on the employee's document type. - - For `document_type:'uscis_alien_registration_number'`, this must be a USCIS Number/A-Number, which is 7 to 9 digits. - - For `document_type:'form_i94'`, this must be a Form I-94 Admission Number, which is 11 digits. - - For `document_type:'foreign_passport'`, this must be the passport number. + Not Found - This is required when the document type is present. - country: - type: string + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: get + x-speakeasy-group: paySchedules + put: + summary: Update a pay schedule + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: pay_schedule_id + in: path + description: The UUID of the pay schedule + required: true + schema: + type: string + x-gusto-rswag: true + operationId: put-v1-companies-company_id-pay_schedules-pay_schedule_id + security: + - CompanyAccessAuth: [] + description: |- + Updates a pay schedule. The `version` parameter from the GET response is required for [optimistic concurrency](doc:api-fundamentals); a mismatch returns 409 Conflict. + + ### Effect on payrolls + Updating a pay schedule will delete any unprocessed regular payrolls whose pay period end date is today or in the future. Already-processed payrolls are not affected. + + ### Pay schedules may be automatically adjusted + If an onboarded company misses their first pay date, Gusto will automatically adjust the pay schedule to the next available pay date. + + ### Webhooks + - `pay_schedule.updated`: Fires when a pay schedule is successfully updated. + + ### Related guides + - [Create a pay schedule](doc:create-a-pay-schedule) + - [Manage Pay Schedules via API](doc:manage-pay-schedules-api) + + scope: `pay_schedules:write` + tags: + - Pay Schedules + x-gusto-integration-type: + - embedded + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Pay-Schedule-Show" + '404': description: | - The document's country of issuance. + Not Found - This is required when the document type is `foreign_passport`. - expiration_date: - type: string + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '409': + description: Conflict + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '422': description: | - The document's expiration date. + Unprocessable Entity - This may only be used when the authorization status is `alien`. - required: - - authorization_status - x-examples: - create_citizen: - authorization_status: citizen - update_alien_with_foreign_passport: - version: 52b7c567242cb7393b2a206ed6a86afcb - authorization_status: alien - document_type: foreign_passport - document_number: '01234567' - country: Canada - expiration_date: '2028-01-01' - I9-Authorization-Employer-Sign-Request-Body: - description: Request body for employer signing an employee's Form I-9. - type: object - properties: - signature_text: - type: string - description: The signature - signer_title: - type: string - description: The signer's job title - signed_by_ip_address: - type: string - description: The IP address of the signatory who signed the form. Both IPv4 AND IPv6 are supported. You must provide the IP address with either this parameter OR you can leave out this parameter and set the IP address in the request header using the `x-gusto-client-ip` header instead. - agree: - type: boolean - description: Whether you agree to sign electronically - additional_info: - type: string - description: Any additional notes - alt_procedure: - type: boolean - description: Whether an alternative procedure authorized by DHS to examine documents was used - required: - - signature_text - - signer_title - - agree - x-examples: - employer_sign: - signature_text: Jane Doe - signer_title: Admin - signed_by_ip_address: 192.168.0.1 - agree: true - I9-Authorization-Documents-Request-Body: - description: Request body for creating an employee's I-9 authorization verification documents. - type: object - properties: - documents: - type: array - description: An array of I-9 verification documents. Every request must contain the complete list of documents for the employee, as previous records are replaced. - items: - type: object - properties: - document_type: - type: string - description: The document type. Use the document options endpoint to get the possible values. - example: us_passport - document_title: - type: string - description: The document title associated with the document type - example: US Passport - document_number: - type: string - description: The document's document number - example: F12345678 - expiration_date: - type: string - description: The document's expiration date - example: '2026-01-01' - issuing_authority: - type: string - description: The document's issuing authority - example: USA - required: - - document_type - - document_title - - issuing_authority - required: - - documents - x-examples: - create_documents: - documents: - - document_type: us_passport - document_title: US passport - document_number: F12345678 - expiration_date: '2035-04-01' - issuing_authority: US Department of State - Pay-Schedule-Auto-Payroll-Enablement-Blockers: - type: - - array - - 'null' - description: List of blockers preventing automatic payroll from being enabled. If automatic payroll is already enabled, this field is null. - items: - "$ref": "#/components/schemas/Pay-Schedule-Auto-Payroll-Enablement-Blocker" - Pay-Schedule-Auto-Payroll-Enablement-Blocker: - type: object - description: A single blocker preventing Autopayroll enablement. - properties: - key: - type: string - description: The blocker type (e.g. employees_not_on_direct_deposit, employees_not_salaried, missing_funding_method, missing_state_tax_requirements, one_day_ach_speed_not_supported, company_suspended, earned_fast_ach_not_met). - metadata: - type: object - description: Blocker-specific metadata (e.g. employee_uuids, states). - Pay-Schedule-List: - type: array - description: List of pay schedules for a company. The pay schedule object in Gusto captures the details of when employees work and when they should be paid. A company can have multiple pay schedules. - items: - "$ref": "#/components/schemas/Pay-Schedule-Show" - x-examples: - success_status: - - uuid: f2a69c38-e2f9-4e31-b5c5-4754fc60a052 - version: 68934a3e9455fa72420237eb05902327 - frequency: Monthly - anchor_pay_date: '2022-12-11' - anchor_end_of_pay_period: '2022-11-13' - day_1: 11 - day_2: - name: - custom_name: every 11th of the month - auto_payroll: true - active: true - Pay-Schedule-Preview-Pay-Period: - type: object - description: A single pay period in a pay schedule preview, with check date, period boundaries, and payroll deadline. - required: - - check_date - - start_date - - run_payroll_by - - end_date - properties: - check_date: - type: string - format: date - description: The payment date, "Check date", for the pay period. - start_date: - type: string - format: date - description: The first day of the pay period. - run_payroll_by: - type: string - format: date - description: The deadline to run payroll for direct deposit on the check date. - end_date: - type: string - format: date - description: The last day of the pay period. - Pay-Schedule-Preview: - type: object - description: | - Preview of pay schedule dates for the next 18 months. Use this to show partners expected pay dates, pay period boundaries, and payroll deadlines before they create or change a pay schedule. See [Preview pay schedule dates](https://docs.gusto.com/embedded-payroll/reference/get-v1-companies-company_id-pay_schedules-preview) for usage. + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Pay-Schedule-Update-Request" + required: true + x-speakeasy-group: paySchedules + x-speakeasy-name-override: update + "/v1/companies/{company_id}/pay_schedules/assignment_preview": + post: + summary: Preview pay schedule assignments for a company + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + operationId: post-v1-companies-company_id-pay_schedules-assignment_preview + security: + - CompanyAccessAuth: [] + description: |- + This endpoint returns the employee changes, including pay period and transition pay periods, for changing the pay schedule. + + scope: `pay_schedules:write` + tags: + - Pay Schedules + x-gusto-integration-type: + - embedded + responses: + '200': + description: Example response + content: + application/json: + schema: + "$ref": "#/components/schemas/Pay-Schedule-Assignment-Preview" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Pay-Schedule-Assignment-Body" + required: true + x-speakeasy-group: paySchedules + x-speakeasy-name-override: previewAssignment + "/v1/companies/{company_id}/pay_schedules/assign": + post: + summary: Assign pay schedules for a company + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + operationId: post-v1-companies-company_id-pay_schedules-assign + security: + - CompanyAccessAuth: [] + description: |- + This endpoint assigns employees to pay schedules based on the schedule type. + For `by_employee` and `by_department` schedules, use the `partial_assignment` parameter to control the assignment scope. Set it to `true` for partial assignments (only some employees or departments at a time) and `false` for full assignments (all employees or departments at once). + + scope: `pay_schedules:write` + tags: + - Pay Schedules + x-gusto-integration-type: + - embedded + responses: + '200': + description: No Content + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Pay-Schedule-Assignment-Body" + required: true + x-speakeasy-group: paySchedules + x-speakeasy-name-override: assign + "/v1/companies/{company_id}/pay_schedules/assignments": + get: + summary: Get pay schedule assignments for a company + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-companies-company_id-pay_schedules-assignments + security: + - CompanyAccessAuth: [] + description: |- + This endpoint returns the current pay schedule assignment for a company, with pay schedule and employee/department mappings depending on the pay schedule type. + + scope: `pay_schedules:read` + tags: + - Pay Schedules + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: Example response + content: + application/json: + schema: + "$ref": "#/components/schemas/Pay-Schedule-Assignment" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: paySchedules + x-speakeasy-name-override: getAssignments + "/v1/employees/{employee_id}/pay_stubs": + get: + summary: Get an employee's pay stubs + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + - name: page + in: query + required: false + description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + schema: + type: integer + - name: per + in: query + required: false + description: Number of objects per page. For majority of endpoints will default to 25 + schema: + type: integer + x-gusto-rswag: true + operationId: get-v1-employees-employee_uuid-pay_stubs + security: + - CompanyAccessAuth: [] + description: |- + Get an employee's pay stubs. - - **pay_periods**: One entry per pay period in the range; each includes check_date, start_date, end_date, and run_payroll_by. - - **holidays**: Observed bank holidays (ISO date strings) that may affect payroll timing. - x-examples: - success_status: - pay_periods: - - check_date: '2022-01-15' - start_date: '2022-01-01' - run_payroll_by: '2022-01-14' - end_date: '2022-01-15' - - check_date: '2022-01-31' - start_date: '2022-01-16' - run_payroll_by: '2022-01-30' - end_date: '2022-01-31' - holidays: - - '2022-01-01' - - '2022-01-17' - properties: - pay_periods: - type: array - description: A list of pay periods for the previewed pay schedule (default range is 18 months from today, or up to end_date when provided). - items: - "$ref": "#/components/schemas/Pay-Schedule-Preview-Pay-Period" - holidays: - type: array - description: A list of dates for bank closures (ISO date strings); may affect payroll processing. - items: + Results are returned in reverse chronological order (newest first). + + scope: `pay_stubs:read` + x-gusto-integration-type: + - embedded + tags: + - Payrolls + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Pay-Stubs-List" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: getPayStubs + "/v1/payrolls/{payroll_id}/employees/{employee_id}/pay_stub": + get: + summary: Get an employee pay stub (pdf) + parameters: + - name: X-Gusto-API-Version + in: header + schema: type: string - format: date - Pay-Schedule-Date-Input: - type: string - format: date - description: ISO 8601 date (YYYY-MM-DD). Required for anchor and period dates in create, update, and preview requests. - Pay-Schedule-Create-Request: - type: object - description: | - Request body for creating a pay schedule. Required when a company has no pay schedules (onboarding) or when adding an additional schedule. Be sure to [check state laws](https://www.dol.gov/agencies/whd/state/payday) to know what schedule is right for your customers. + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: payroll_id + in: path + description: The UUID of the payroll + required: true + schema: + type: string + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-payrolls-payroll_uuid-employees-employee_uuid-pay_stub + security: + - CompanyAccessAuth: [] + description: |- + Get an employee's pay stub for the specified payroll. By default, an application/pdf response will be returned. No other content types are currently supported, but may be supported in the future. - - **anchor_pay_date**: The first date that employees on this pay schedule will be paid (first company payday). - - **anchor_end_of_pay_period**: The last date of the first pay period; can be the same as anchor_pay_date. - example: - frequency: Twice per month - anchor_pay_date: '2020-05-15' - anchor_end_of_pay_period: '2020-05-08' - day_1: 15 - day_2: 31 - custom_name: demo pay schedule - properties: - frequency: - allOf: - - "$ref": "#/components/schemas/Pay-Schedule-Frequency-Create-Update" - example: Twice per month - anchor_pay_date: - allOf: - - "$ref": "#/components/schemas/Pay-Schedule-Date-Input" - example: '2020-05-15' - anchor_end_of_pay_period: - allOf: - - "$ref": "#/components/schemas/Pay-Schedule-Date-Input" - example: '2020-05-08' - day_1: - type: - - integer - - 'null' - example: 15 - description: | - 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. + scope: `pay_stubs:read` + tags: + - Payrolls + x-gusto-integration-type: + - embedded + responses: + '200': + description: successful + content: + application/pdf: + schema: + type: string + format: binary + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: getPayStub + "/v1/companies/{company_id}/payrolls/{id}/partner_disbursements": + get: + summary: Get partner disbursements for a payroll + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: id + in: path + description: The UUID of the payroll + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-companies-company_id-payrolls-id-partner_disbursements + security: + - CompanyAccessAuth: [] + description: |- + Get partner disbursements for a specific payroll. - On create: required for Twice per month and Monthly; omit or null for Every week and Every other week. - day_2: - type: - - integer - - 'null' - example: 31 - description: | - 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 is set to the last day of the month. It will be null for pay schedules with other frequencies. + scope: `partner_disbursements:read` + tags: + - Payrolls + x-gusto-integration-type: + - embedded + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Payroll-Partner-Disbursements" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + patch: + summary: Update partner disbursements for a payroll + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: id + in: path + description: The UUID of the payroll + required: true + schema: + type: string + x-gusto-rswag: true + operationId: patch-v1-companies-company_id-payrolls-id-partner_disbursements + security: + - CompanyAccessAuth: [] + description: |- + Update partner disbursements for a specific payroll. - On create: only for Twice per month; omit or null for other frequencies. - custom_name: - type: - - string - - 'null' - example: demo pay schedule - description: | - A custom pay schedule name; defaults to the pay frequency description when null or omitted. + scope: `partner_disbursements:write` + tags: + - Payrolls + x-gusto-integration-type: + - embedded + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Payroll-Partner-Disbursements" + '422': + description: mixed single and multiple errors example + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + properties: + disbursements: + type: array + items: + type: object + properties: + employee_uuid: + type: string + description: UUID of the employee + example: 1a2b3c4d-5e6f-7890-abcd-ef1234567890 + payment_method: + type: string + enum: + - Direct Deposit + - Check + description: Payment method for the employee + payment_status: + type: string + enum: + - Pending + - Paid + - Not partner managed + - Converted to check + description: Status of the payment disbursement + required: + - employee_uuid + required: + - disbursements + "/v1/payroll_batches": + post: + summary: Create a payroll cancellation batch + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + operationId: post-v1-payroll_batches + security: + - SystemAccessAuth: [] + description: "Cancels up to 100 payrolls across one or more companies the partner is mapped to, asynchronously.\n\nThe batch is processed asynchronously. Use the returned batch UUID to poll `GET /v1/payroll_batches/{payroll_batch_uuid}` for status and per-payroll results.\n\nEach item carries the payroll `uuid` and the `company_uuid` that owns it. A payroll whose company is not mapped to the partner — or that doesn't exist — is recorded as a `not_found` exclusion rather than a hard error, so every requested UUID lands in either `results` or `exclusions`.\n\nIdempotency is scoped per `(partner, idempotency_key)`. A duplicate POST with the same `idempotency_key` returns a 409 Conflict referencing the existing batch UUID — no duplicate processing occurs.\n\n\U0001F4D8 System Access Authentication\n\nThis endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access)\n\nscope: `payroll_batches:write`" + tags: + - Payroll Cancellations + x-gusto-integration-type: + - embedded + responses: + '201': + description: created + content: + application/json: + schema: + "$ref": "#/components/schemas/Payroll-Batch" + '409': + description: conflict - idempotency key already used by this partner + content: + application/json: + schema: + "$ref": "#/components/schemas/Payroll-Batch-Conflict-Error" + '422': + description: unprocessable entity - validation errors + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + required: + - idempotency_key + - batch_action + - batch + properties: + idempotency_key: + type: string + format: uuid + description: A partner-generated unique identifier to ensure idempotency of the batch request. Scoped per partner. + example: 80a74f8b-2c16-45e5-9038-aa108849c6e6 + batch_action: + type: string + enum: + - cancel + description: The action to perform on the batch. Only `cancel` is supported. + example: cancel + batch: + type: array + description: Array of payrolls to cancel. Maximum 100 payrolls per request. + minItems: 1 + maxItems: 100 + items: + type: object + required: + - entity_type + - uuid + - company_uuid + properties: + entity_type: + type: string + enum: + - payroll + description: The type of entity to act on. + example: payroll + uuid: + type: string + format: uuid + description: The UUID of the payroll to cancel. Payrolls the partner is not authorized to access, or that do not exist, appear in the response's `exclusions` array. + company_uuid: + type: string + format: uuid + description: The UUID of the company that owns the payroll. The partner must be mapped to this company. + required: true + "/v1/payroll_batches/{payroll_batch_uuid}": + get: + summary: Get a payroll cancellation batch + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: payroll_batch_uuid + in: path + description: The UUID of the payroll cancellation batch returned by `POST /v1/payroll_batches`. + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-payroll_batches-payroll_batch_uuid + security: + - SystemAccessAuth: [] + description: "Returns the status and per-payroll results of a payroll cancellation batch.\n\nPoll this endpoint until the batch `status` reaches a terminal value (`completed` or `failed`). Once terminal, the response includes the `results` array (one entry per authorized payroll, each with its own per-payroll `status` — `success` or `failed`) and the `exclusions` array (one entry per payroll that could not be processed). A cancel is atomic, so a per-payroll result is only ever `success` or `failed` — never `partial_success`.\n\nNote that the top-level batch `status` (`pending` / `processing` / `completed` / `failed`) is the request lifecycle, distinct from the per-payroll `status` inside `results[]`. A `completed` batch does not imply every payroll was cancelled — inspect the array for per-payroll outcomes.\n\nResults are stored in Redis with a limited TTL after completion. If the partner polls after results have expired, this endpoint returns 410 Gone — partners should re-submit a new batch.\n\n\U0001F4D8 System Access Authentication\n\nThis endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access)\n\nscope: `payroll_batches:read`" + tags: + - Payroll Cancellations + x-gusto-integration-type: + - embedded + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Payroll-Batch-Results" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '410': + description: Gone - results have expired from Redis + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + "/v1/payroll_digests": + post: + summary: Create a payroll digest batch + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + operationId: post-v1-payroll_digests + security: + - SystemAccessAuth: [] + description: "Triggers an asynchronous computation of payroll digest data (statuses, blockers, pay periods, totals) across up to 25 companies that the partner is mapped to.\n\nThe batch is processed asynchronously. Use the returned batch UUID to poll `GET /v1/payroll_digests/{payroll_digest_uuid}` for status and results.\n\nIdempotency is scoped per `(partner, idempotency_key)`. A duplicate POST with the same `idempotency_key` returns a 409 Conflict referencing the existing batch UUID — no duplicate computation occurs.\n\n\U0001F4D8 System Access Authentication\n\nThis endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access)\n\nscope: `payroll_digests:write`" + tags: + - Payroll Digests + x-gusto-integration-type: + - embedded + responses: + '201': + description: created + content: + application/json: + schema: + "$ref": "#/components/schemas/Payroll-Digest" + '409': + description: conflict - idempotency key already used by this partner + content: + application/json: + schema: + "$ref": "#/components/schemas/Payroll-Digest-Conflict-Error" + '422': + description: unprocessable entity - validation errors + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + required: + - idempotency_key + - batch_action + - batch + properties: + idempotency_key: + type: string + format: uuid + description: A partner-generated unique identifier to ensure idempotency of the batch request. Scoped per partner. + example: 80a74f8b-2c16-45e5-9038-aa108849c6e6 + batch_action: + type: string + enum: + - create + description: The action to perform on the batch. + example: create + batch: + type: array + description: Array of companies to fetch payroll digest data for. Maximum 25 companies per request. + minItems: 1 + maxItems: 25 + items: + type: object + required: + - entity_type + - uuid + properties: + entity_type: + type: string + enum: + - company + description: The type of entity to look up. + example: company + uuid: + type: string + format: uuid + description: The UUID of a company that the partner is mapped to. Companies that the partner is not authorized to access will appear in the response's `exclusions` array. + required: true + "/v1/payroll_digests/{payroll_digest_uuid}": + get: + summary: Get a payroll digest batch + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: payroll_digest_uuid + in: path + description: The UUID of the payroll digest batch returned by `POST /v1/payroll_digests`. + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-payroll_digests-payroll_digest_uuid + security: + - SystemAccessAuth: [] + description: "Returns the status and results of a payroll digest batch.\n\nPoll this endpoint until the batch `status` reaches a terminal value (`completed` or `failed`). Once terminal, the response includes the full `results` array (one entry per attempted company, each with its own per-company `status` — `success`, `partial_success`, or `failed`) and the `exclusions` array (one entry per company that could not be looked up or processed).\n\nNote that the top-level batch `status` (`pending` / `processing` / `completed` / `failed`) is distinct from the per-company `status` returned inside `results[]` and `exclusions[]`. A `completed` batch does not imply every company succeeded — inspect the arrays for per-company outcomes.\n\nResults are stored in Redis with a short TTL after completion. If the partner polls after results have expired, this endpoint returns 410 Gone — partners should re-submit a new batch to fetch fresh data.\n\n\U0001F4D8 System Access Authentication\n\nThis endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access)\n\nscope: `payroll_digests:read`" + tags: + - Payroll Digests + x-gusto-integration-type: + - embedded + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Payroll-Digest-Results" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '410': + description: Gone - results have expired from Redis + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + "/v1/companies/{company_id}/payroll_reversals": + get: + summary: Get approved payroll reversals + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: page + in: query + required: false + description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + schema: + type: integer + - name: per + in: query + required: false + description: Number of objects per page. For majority of endpoints will default to 25 + schema: + type: integer + x-gusto-rswag: true + operationId: get-v1-companies-company_id-payroll_reversals + security: + - CompanyAccessAuth: [] + description: |- + Returns all approved Payroll Reversals for a Company. - When null or omitted, the system generates a description from the pay frequency and pay days (e.g. "every 1st and 15th of the month" for twice-monthly, "every 11th of the month" for monthly, "every Friday" for weekly). The response returns this generated value in `custom_name` when no custom name was set. When provided, the value you set is stored and returned. - required: - - frequency - - anchor_pay_date - - anchor_end_of_pay_period - Pay-Schedule-Update-Request: - type: object - description: Request body for updating a pay schedule. Sent in the pay_schedule_update root key. Version is required for optimistic concurrency. Pay schedules may be automatically adjusted if an onboarded company misses their first pay date; see [Create a pay schedule](https://docs.gusto.com/embedded-payroll/docs/create-a-pay-schedule). - example: - version: 68934a3e9455fa72420237eb05902327 - auto_payroll: true - frequency: Twice per month - anchor_pay_date: '2021-10-15' - anchor_end_of_pay_period: '2021-10-15' - day_1: 15 - day_2: 31 - custom_name: demo pay schedule - properties: - version: - type: string - example: 68934a3e9455fa72420237eb05902327 - description: Current version of the pay schedule from the GET response; required for optimistic concurrency. Mismatch returns 409 Conflict. - auto_payroll: - type: boolean - example: true + scope: `payrolls:read` + tags: + - Payrolls + x-gusto-integration-type: + - embedded + responses: + '200': + description: Example response + content: + application/json: + schema: + "$ref": "#/components/schemas/Payroll-Reversal-List" + '404': description: | - With automatic payroll enabled, payroll runs automatically one day before payroll deadlines. When false, payroll does not run automatically and must be run manually. - For API versions before 2025-11-15 the request field is auto_pilot. - frequency: - allOf: - - "$ref": "#/components/schemas/Pay-Schedule-Frequency-Create-Update" - example: Twice per month - anchor_pay_date: - allOf: - - "$ref": "#/components/schemas/Pay-Schedule-Date-Input" - example: '2020-05-15' - anchor_end_of_pay_period: - allOf: - - "$ref": "#/components/schemas/Pay-Schedule-Date-Input" - example: '2020-05-08' - day_1: - type: - - integer - - 'null' - example: 15 - description: '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. + Not Found -' - day_2: - type: - - integer - - 'null' - example: 31 - description: '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 is set to the last day of the month. It will be null for pay schedules with other frequencies. + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: getApprovedReversals + "/v1/companies/{company_id}/payrolls/{payroll_id}": + get: + summary: Get a single payroll + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: payroll_id + in: path + description: The UUID of the payroll + required: true + schema: + type: string + - name: include + in: query + explode: false + required: false + schema: + type: array + items: + type: string + enum: + - benefits + - deductions + - taxes + - payroll_status_meta + - totals + - risk_blockers + - reversals + - payroll_taxes + description: Include the requested attribute in the response, for multiple attributes comma separate the values, i.e. `?include=benefits,deductions,taxes` + - name: page + in: query + required: false + description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + schema: + type: integer + - name: per + in: query + required: false + description: Number of objects per page. For majority of endpoints will default to 25 + schema: + type: integer + - name: sort_by + in: query + required: false + schema: + type: string + pattern: "^(first_name|last_name)(:(asc|desc))?(,(first_name|last_name)(:(asc|desc))?)*$" + example: first_name:asc + description: 'Sort employee compensations by one or more fields. Options: first_name, last_name. Append `:asc` or `:desc` to specify direction (e.g., `last_name:asc` or `last_name:asc,first_name:asc`). Defaults to ascending.' + x-gusto-rswag: true + operationId: get-v1-companies-company_id-payrolls-payroll_id + security: + - CompanyAccessAuth: [] + description: |- + Returns a payroll. If payroll is calculated or processed, will return employee_compensations and totals. -' - custom_name: - type: - - string - - 'null' - example: demo pay schedule - description: A custom pay schedule name; null clears any custom name so the default frequency description applies. - required: - - version - Payroll-Sync: - type: object - description: Record representing the sync of time sheet data to payroll. - properties: - uuid: - type: string - format: uuid - description: Unique identifier of the payroll sync. - example: 123e4567-e89b-12d3-a456-426655440000 - company_uuid: - type: string - format: uuid - description: Unique identifier of the company to which the payroll sync belongs. - example: 123e4567-e89b-12d3-a456-426655440001 - status: - type: string - readOnly: true - enum: - - pending - - in_progress - - success - - failure - - partial_success - description: | - The current status of the payroll sync. READ-ONLY. + Results are paginated, with a maximum page size of 100 employee_compensations. - ## State Transitions - ``` - pending ──────► in_progress ──────► success - ├─────► failure - └─────► partial_success - ``` + Notes: + * Hour and dollar amounts are returned as string representations of numeric decimals. + * Hours are represented to the thousands place; dollar amounts are represented to the cent. + * Every eligible compensation is returned for each employee. If no data has yet be inserted for a given field, it defaults to "0.00" (for fixed amounts) or "0.000" (for hours ). + * When include parameter with benefits value is passed, employee_benefits:read scope is required to return benefits + * Benefits containing PHI are only visible with the `employee_benefits:read:phi` scope - ### Valid Transitions - - `pending` → `in_progress`: Automatic when processing begins - - `in_progress` → `success`: All time sheet data synced successfully - - `in_progress` → `failure`: Sync failed entirely - - `in_progress` → `partial_success`: Some members failed to sync - example: pending - kind: - type: string - enum: - - regular - description: | - The kind of payroll sync. - - `regular`: A regular payroll sync - example: regular - pay_schedule_uuid: - type: string - format: uuid - description: Unique identifier of the pay schedule associated with this sync. - example: 123e4567-e89b-12d3-a456-426655440002 - pay_period_start_date: - type: string - format: date - description: The start date of the pay period per ISO 8601 format. - example: '2025-01-01' - pay_period_end_date: - type: string - format: date - description: The end date of the pay period per ISO 8601 format. - example: '2025-01-15' - submitted_at: - type: string - format: date-time - description: Datetime for when the payroll sync was submitted. - example: '2025-01-16T12:00:00Z' - completed_at: - type: - - string - - 'null' - format: date-time - description: Datetime for when the payroll sync completed. Null if the sync is still in progress. - example: '2025-01-16T13:00:00Z' - errors: - type: array - description: Errors encountered during the sync, if any. Each error follows the standard entity error format. - items: - "$ref": "#/components/schemas/Entity-Error-Object" - warnings: - type: array - description: Warnings encountered during the sync, if any. - items: + scope: `payrolls:read` + tags: + - Payrolls + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: successful with wait_for_reverse_wire credit blocker + content: + application/json: + schema: + "$ref": "#/components/schemas/Payroll-Show" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: get + put: + summary: Update a payroll by ID + parameters: + - name: X-Gusto-API-Version + in: header + schema: type: string - x-examples: - pending_sync: - uuid: 123e4567-e89b-12d3-a456-426655440000 - company_uuid: 123e4567-e89b-12d3-a456-426655440001 - status: pending - kind: regular - pay_schedule_uuid: 123e4567-e89b-12d3-a456-426655440002 - pay_period_start_date: '2025-01-01' - pay_period_end_date: '2025-01-15' - submitted_at: '2025-01-16T12:00:00Z' - completed_at: - completed_sync: - uuid: 123e4567-e89b-12d3-a456-426655440000 - company_uuid: 123e4567-e89b-12d3-a456-426655440001 - status: success - kind: regular - pay_schedule_uuid: 123e4567-e89b-12d3-a456-426655440002 - pay_period_start_date: '2025-01-01' - pay_period_end_date: '2025-01-15' - submitted_at: '2025-01-16T12:00:00Z' - completed_at: '2025-01-16T13:00:00Z' - Payroll-Sync-Create-Request-Body: - type: object - required: - - kind - - pay_schedule_uuid - - pay_period_start_date - - pay_period_end_date - properties: - kind: - type: string - enum: - - regular - description: | - The kind of payroll sync. - - `regular`: A regular payroll sync - example: regular - pay_schedule_uuid: - type: string - format: uuid - description: Unique identifier of the pay schedule to sync time sheets for. - example: 123e4567-e89b-12d3-a456-426614174000 - pay_period_start_date: - type: string - format: date - description: The start date of the pay period per ISO 8601 format. - example: '2025-01-01' - pay_period_end_date: - type: string - format: date - description: The end date of the pay period per ISO 8601 format. - example: '2025-01-15' - Jobs-Body: - type: object - properties: - title: - type: - - string - - 'null' - description: The job title. - example: Regional Manager - hire_date: - type: string - description: The date when the employee was hired or rehired for the job. - example: '2020-12-21' - two_percent_shareholder: - type: boolean - description: Whether the employee owns at least 2% of the company. - state_wc_covered: - type: - - boolean - - 'null' - description: Whether this job is eligible for workers' compensation coverage in the state of Washington (WA). - state_wc_class_code: - type: - - string - - 'null' - description: The risk class code for workers' compensation in Washington state. Please visit [Washington state's Risk Class page](https://www.lni.wa.gov/insurance/rates-risk-classes/risk-classes-for-workers-compensation/risk-class-lookup#/) to learn more. - Jobs-Create-Request-Body: - description: Request body for creating a job. - type: object - required: - - title - - hire_date - allOf: - - "$ref": "#/components/schemas/Jobs-Body" - x-examples: - create_job: - title: Regional Manager - hire_date: '2020-12-21' - two_percent_shareholder: false - Jobs-Update-Request-Body: - description: Request body for updating a job. - type: object - allOf: - - "$ref": "#/components/schemas/Versionable-Required" - - "$ref": "#/components/schemas/Jobs-Body" - x-examples: - update_job: - version: gr78930htutrz444kuytr3s5hgxykuveb523fwl8sir - title: Regional Manager - hire_date: '2020-12-21' - Federal-Tax-Details-Update: - title: Federal-Tax-Details-Update - type: object - required: - - version - properties: - version: - type: string - example: 6cb95e00540706ca48d4577b3c839fbe - description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. - legal_name: - type: string - example: Acme Corp. - description: The legal name of the company - ein: - type: string - example: '123456789' - description: The company's Employer Identification Number (EIN). Must be 9 digits. Dashes are optional (e.g., '12-3456789' or '123456789'). - tax_payer_type: - type: string - example: LLP - enum: - - C-Corporation - - S-Corporation - - Sole proprietor - - LLC - - LLP - - Limited partnership - - Co-ownership - - Association - - Trusteeship - - General partnership - - Joint venture - - Non-Profit - description: |- - What type of tax entity the company is. One of: - - C-Corporation - - S-Corporation - - Sole proprietor - - LLC - - LLP - - Limited partnership - - Co-ownership - - Association - - Trusteeship - - General partnership - - Joint venture - - Non-Profit - filing_form: - type: string - example: '944' - enum: - - '941' - - '944' - description: |- - The form used by the company for federal tax filing. One of: - - 941 (Quarterly federal tax return form) - - 944 (Annual federal tax return form) - taxable_as_scorp: - type: boolean - example: false - description: Whether the company is taxed as an S-Corporation - x-tags: - - Federal Tax Details - Tax-Requirement-States-List: - type: array - x-examples: - success_status: - - state: GA - setup_complete: false - setup_status: not_started - default_rates_applied: false - ready_to_run_payroll: false - - state: CA - setup_complete: true - setup_status: complete - default_rates_applied: false - ready_to_run_payroll: true - items: - type: object - properties: - state: - "$ref": "#/components/schemas/State" - setup_complete: - type: boolean - description: Whether all requirements for the state have been satisfied such that the company can complete onboarding. A company must be `setup_complete` in all relevant states to complete the `state_setup` company onboarding step. - setup_status: + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: payroll_id + in: path + description: The UUID of the payroll + required: true + schema: + type: string + x-gusto-rswag: true + operationId: put-v1-companies-company_id-payrolls + security: + - CompanyAccessAuth: [] + description: |- + This endpoint allows you to update information for one or more employees for a specific **unprocessed** payroll. You can think of the **unprocessed** + payroll object as a template of fields that you can update. You cannot modify the structure of the payroll object through this endpoint, only values + of the fields included in the payroll. If you do not include specific employee compensations, fixed/hourly compensations, or deductions in your request body, they + will not be removed from the payroll. A maximum of 100 employee_compensations can be updated at a time. Only the employee compensation objects that were + inputted will be returned. + + scope: `payrolls:write` + tags: + - Payrolls + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Payroll-Prepared" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '409': + description: Conflict + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Payroll-Update" + required: true + x-speakeasy-name-override: update + delete: + summary: Delete a payroll + parameters: + - name: X-Gusto-API-Version + in: header + schema: type: string enum: - - not_started - - in_progress - - complete - description: | - The current status of the state tax setup. - - `not_started`: No requirements have been filled - - `in_progress`: Some requirements have been filled, or default rates are applied - - `complete`: All requirements have been filled without default rates - default_rates_applied: - type: boolean - description: Whether the state is using system-assigned default SUI rates rather than employer-specific rates. - ready_to_run_payroll: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: payroll_id + in: path + description: The UUID of the payroll + required: true + schema: + type: string + - name: async + in: query + description: When true, request an asynchronous delete of the payroll. + schema: type: boolean - description: Whether the state tax setup is sufficiently complete for the company to run payroll. This will be `true` when `setup_complete` is `true`. - Tax-Requirement-Set-Update: - type: array - description: Array of requirement sets to update. Each set corresponds to a category of requirements for the state. - items: - type: object - required: - - key - - state - properties: - key: - "$ref": "#/components/schemas/Tax-Requirement-Set-Key" - state: - "$ref": "#/components/schemas/State" - effective_from: - "$ref": "#/components/schemas/Tax-Requirement-Effective-From" - requirements: - type: array - items: - type: object - required: - - key - properties: - key: - "$ref": "#/components/schemas/Tax-Requirement-Key" - value: - "$ref": "#/components/schemas/Tax-Requirements-Value" - Tax-Requirements-Value: - description: The value or "answer" for a tax requirement. Type depends on the requirement metadata type (e.g. string for text/account_number, boolean for radio/checkbox, number for percent/currency/tax_rate). Null when the requirement has not been answered. - example: 1233214-AB - oneOf: - - type: boolean - - type: string - - type: number - - type: 'null' - Admin-Create-Request: - type: object - description: The request body for creating a company admin. - required: - - first_name - - last_name - - email - properties: - first_name: - type: string - description: The first name of the admin. - example: John - last_name: - type: string - description: The last name of the admin. - example: Smith - email: - type: string - description: The email of the admin for Gusto's system. If the email matches an existing user, this will create an admin account for them. - example: jsmith99@gmail.com - Company-Attachment-List: - type: array - x-examples: - success_status: - - uuid: 5de11791-98fd-4587-9ed0-d5d804b8e647 - name: Company_Attachment_File1.pdf - category: gep_notice - upload_time: '2022-02-01T00:00:00.000Z' - - uuid: 987058cc-23ee-46e9-81ef-5cee086cceca - name: Company_Attachment_File2.pdf - category: compliance - upload_time: '2022-02-01T00:00:00.000Z' - items: - "$ref": "#/components/schemas/Company-Attachment" - Company-Attachment-Download-Url: - description: The temporary url to download a Company Attachment File - type: object - required: - - url - x-examples: - success_status: - url: https://s3.amazonaws.com/static.gusto.com/assets/uploaded_files/334721.pdf?parameter=daer8r3432423djklsdafaso - success_status_alternate: - url: https://s3.amazonaws.com/static.gusto.com/assets/uploaded_files/112233.pdf?parameter=abc123def456 - properties: - url: - type: string - description: A full URL to download a Company Attachment File - Company-Attachment-Create-Request-Body: - description: The binary payload of the file and the company attachment category. - type: object - required: - - document - - category - properties: - document: - type: string - format: binary - description: The binary payload of the file to be uploaded. Supported file types are .qbb, .qbm, .gif, .jpg, .png, .pdf, .xls, .xlsx, .doc and .docx. - category: - type: string - description: | - The category of a company attachment. - - `gep_notice`: A tax notice attachment - - `compliance`: A compliance attachment - enum: - - gep_notice - - compliance - Rehire-Update-Request-Body: - description: Request body for updating an employee rehire. - type: object - allOf: - - "$ref": "#/components/schemas/Versionable-Required" - - "$ref": "#/components/schemas/Rehire-Body" - x-examples: - update_rehire: - version: 1928d0c378e519e9c03fb959bc959a6b - effective_date: '2023-06-30' - work_location_uuid: b6ae9d93-d4b8-4119-8c96-dba595dd8c30 - file_new_hire_report: true - Company-Benefit-Create-Request: - description: '' - type: object - properties: - benefit_type: - type: integer - description: The ID of the benefit to which the company benefit belongs. - active: - type: boolean - default: true - description: Whether this benefit is active for employee participation. - description: - type: string - description: 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". - responsible_for_employer_taxes: - type: boolean - description: Whether the employer is subject to pay employer taxes when an employee is on leave. Only applicable to third party sick pay benefits. - responsible_for_employee_w2: - type: boolean - description: Whether the employer is subject to file W-2 forms for an employee on leave. Only applicable to third party sick pay benefits. - catch_up_type: - description: The type of catch-up contribution for this benefit, as required by Section 603 of the SECURE 2.0 Act. Only applicable to pre-tax 401(k) and 403(b) benefits. - anyOf: - - type: string - enum: - - elective - - deemed - - type: 'null' - required: - - description - Company-Benefit-Update-Request: - description: '' - type: object - properties: - version: - type: string - description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/versioning#object-layer) for information on how to use this field. - active: - type: boolean - description: Whether this benefit is active for employee participation. Company benefits may only be deactivated if no employees are actively participating. - description: - type: string - description: 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". - responsible_for_employer_taxes: - type: boolean - description: 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). - responsible_for_employee_w2: - type: boolean - description: 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). - catch_up_type: - description: The type of catch-up contribution for this benefit, as required by Section 603 of the SECURE 2.0 Act. Only applicable to pre-tax 401(k) and 403(b) benefits. - anyOf: - - type: string - enum: - - elective - - deemed - - type: 'null' - required: - - version - Contribution-Exclusion-Update-Request: - description: '' - type: object - properties: - contribution_exclusions: - type: array - description: The list of contribution exclusions to update - items: - "$ref": "#/components/schemas/Contribution-Exclusion" - required: - - contribution_exclusions - Employee-Benefit-Bulk-Update-Request: - description: '' - type: object - properties: - employee_benefits: - type: array - description: The list of employee benefits to create or update - items: - "$ref": "#/components/schemas/Employee-Benefit-For-Company-Benefit" - required: - - employee_benefits - Earning-Type-List: - type: object - description: Lists of default and custom earning types for a company. - x-examples: - success: - default: - - name: Bonus - uuid: b82e35c5-d7c6-4705-9e16-9f87499ade18 - active: true - - name: Cash Tips - uuid: f5618c94-ed7d-4366-b2c4-ff05e430064f - active: true - - name: Commission - uuid: 60191999-004a-49d9-b163-630574433653 - active: true - - name: Correction Payment - uuid: 368226e0-8e8c-48f0-bc91-aee46caafbc9 - active: true - - name: Minimum Wage Adjustment - uuid: 88a2e519-9ff5-4c19-9071-6a709f3c2939 - active: true - - name: Paycheck Tips - uuid: a3eaf03d-e712-4144-8f9b-71a85528adcf - active: true - - name: Severance - uuid: a6a2eba7-6c7d-4ced-bbe8-43452fbc9f63 - active: true - custom: - - name: Gym Membership Stipend - uuid: 6b4a8efb-db90-4c13-a75f-aae11b3f4ff9 - active: true - defaults_only: - default: - - name: Bonus - uuid: b82e35c5-d7c6-4705-9e16-9f87499ade18 - active: true - - name: Cash Tips - uuid: f5618c94-ed7d-4366-b2c4-ff05e430064f - active: true - - name: Commission - uuid: 60191999-004a-49d9-b163-630574433653 - active: true - - name: Correction Payment - uuid: 368226e0-8e8c-48f0-bc91-aee46caafbc9 - active: true - - name: Minimum Wage Adjustment - uuid: 88a2e519-9ff5-4c19-9071-6a709f3c2939 - active: true - - name: Paycheck Tips - uuid: a3eaf03d-e712-4144-8f9b-71a85528adcf - active: true - - name: Severance - uuid: a6a2eba7-6c7d-4ced-bbe8-43452fbc9f63 - active: true - custom: [] - properties: - default: - type: array - description: The default earning types for the company. - items: - "$ref": "#/components/schemas/Earning-Type" - custom: - type: array - description: The custom earning types for the company. - items: - "$ref": "#/components/schemas/Earning-Type" - Embedded-Time-Off-Request: - type: object - description: The representation of a time off request. - required: - - uuid - - status - - employee_note - - employer_note - - policy_type - - policy_uuid - - days - - employee - - initiator - - approver - x-examples: - success_status: - uuid: ad158cfb-99e4-4741-9db3-0bd3a267f222 - status: pending - employee_note: Family vacation - employer_note: - days: - '2026-10-20': '8.000' - '2026-10-21': '8.000' - policy_type: vacation - policy_uuid: c2d9b1bd-3f36-4c2d-a727-b2af057d6a7f - employee: - uuid: 51924fa0-26c6-4d4c-8832-3ef0b422c67e - full_name: Alex Johnson - approver: - initiator: - uuid: 51924fa0-26c6-4d4c-8832-3ef0b422c67e - full_name: Alex Johnson - approved_status: - uuid: ad158cfb-99e4-4741-9db3-0bd3a267f222 - status: approved - employee_note: Family vacation - employer_note: - days: - '2026-10-20': '8.000' - '2026-10-21': '8.000' - policy_type: vacation - policy_uuid: c2d9b1bd-3f36-4c2d-a727-b2af057d6a7f - employee: - uuid: 51924fa0-26c6-4d4c-8832-3ef0b422c67e - full_name: Alex Johnson - approver: - uuid: 21d8dff4-ce09-4120-a274-3a5628bf6769 - full_name: Morgan Chen - initiator: - uuid: 51924fa0-26c6-4d4c-8832-3ef0b422c67e - full_name: Alex Johnson - declined_status: - uuid: ad158cfb-99e4-4741-9db3-0bd3a267f222 - status: declined - employee_note: Family vacation - employer_note: Not enough coverage - days: - '2026-10-20': '8.000' - '2026-10-21': '8.000' - policy_type: vacation - policy_uuid: c2d9b1bd-3f36-4c2d-a727-b2af057d6a7f - employee: - uuid: 51924fa0-26c6-4d4c-8832-3ef0b422c67e - full_name: Alex Johnson - approver: - initiator: - uuid: 51924fa0-26c6-4d4c-8832-3ef0b422c67e - full_name: Alex Johnson - properties: - uuid: - type: string - description: The UUID of the time off request. - example: ad158cfb-99e4-4741-9db3-0bd3a267f222 - readOnly: true - status: - type: string - description: The status of the time off request. - example: pending - enum: - - pending - - approved - - declined - - consumed - readOnly: true - employee_note: - type: - - string - - 'null' - description: A note about the time off request, from the employee to the employer. - example: Family vacation - readOnly: true - employer_note: - type: - - string - - 'null' - description: A note about the time off request, from the employer to the employee. - example: - readOnly: true - policy_type: - type: - - string - - 'null' - description: The type of the time off policy (e.g. vacation, sick). - example: vacation - readOnly: true - policy_uuid: - type: - - string - - 'null' - description: The UUID of the time off policy associated with this request. - example: c2d9b1bd-3f36-4c2d-a727-b2af057d6a7f - readOnly: true - days: - description: 'An object where keys are dates in YYYY-MM-DD format and values are hours as string decimals (e.g. {"2025-01-20": "8.000"}).' - type: object - additionalProperties: + x-gusto-rswag: true + operationId: delete-v1-companies-company_id-payrolls + security: + - CompanyAccessAuth: [] + description: |- + This endpoint allows you to delete an **unprocessed** payroll. + + By default the payroll and associated data is deleted synchronously. To request an asynchronous delete, use the `async=true` query parameter. In both cases validation of ability to delete will be performed and an Unprocessable Entity error will be returned if the payroll is not able to be deleted. A successful synchronous delete will return `204/No Content`. When a payroll has been enqueued for asynchronous deletion, `202/Accepted` will be returned. + + scope: `payrolls:run` + tags: + - Payrolls + x-gusto-integration-type: + - embedded + responses: + '204': + description: no content + '202': + description: Accepted + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: delete + "/v1/companies/{company_id}/payrolls": + get: + summary: Get all payrolls for a company + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: type: string - example: - '2026-10-20': '8.000' - '2026-10-21': '8.000' - readOnly: true - employee: - type: object - description: '' - properties: - uuid: - type: string - description: The UUID of the employee the time off request is for. - example: 51924fa0-26c6-4d4c-8832-3ef0b422c67e - readOnly: true - full_name: - type: string - description: The full name of the employee the time off request is for. - example: Alex Johnson - readOnly: true - readOnly: true - initiator: - type: - - object - - 'null' - description: '' - properties: - uuid: - type: string - description: The UUID of the employee who initiated the time off request. - example: 51924fa0-26c6-4d4c-8832-3ef0b422c67e - readOnly: true - full_name: + - name: processing_statuses + in: query + required: false + explode: false + description: Whether to include processed and/or unprocessed payrolls in the response, defaults to processed, for multiple attributes comma separate the values, i.e. `?processing_statuses=processed,unprocessed` + schema: + type: array + items: type: string - description: The full name of the employee who initiated the time off request. - example: Alex Johnson - readOnly: true - readOnly: true - approver: - type: - - object - - 'null' - description: This value will be null if the request has not been approved. - properties: - uuid: + enum: + - processed + - unprocessed + - name: payroll_types + in: query + required: false + explode: false + description: Whether to include regular and/or off_cycle payrolls in the response, defaults to regular, for multiple attributes comma separate the values, i.e. `?payroll_types=regular,off_cycle` + schema: + type: array + items: type: string - description: The UUID of the employee who approved the time off request. - example: 21d8dff4-ce09-4120-a274-3a5628bf6769 - readOnly: true - full_name: + enum: + - regular + - off_cycle + - external + - name: processed + in: query + required: false + description: Whether to return processed or unprocessed payrolls + schema: + type: boolean + - name: include_off_cycle + in: query + required: false + description: Whether to include off cycle payrolls in the response + schema: + type: boolean + - name: include + in: query + explode: false + required: false + schema: + type: array + items: type: string - description: The full name of the employee who approved the time off request. - example: Morgan Chen - readOnly: true - readOnly: true - Embedded-Time-Off-Request-List: - type: array - items: - "$ref": "#/components/schemas/Embedded-Time-Off-Request" - x-examples: - success_status: - - uuid: ad158cfb-99e4-4741-9db3-0bd3a267f222 - status: pending - employee_note: Family vacation - employer_note: - days: - '2026-10-20': '8.000' - '2026-10-21': '8.000' - policy_type: vacation - policy_uuid: c2d9b1bd-3f36-4c2d-a727-b2af057d6a7f - employee: - uuid: 51924fa0-26c6-4d4c-8832-3ef0b422c67e - full_name: Alex Johnson - approver: - initiator: - uuid: 51924fa0-26c6-4d4c-8832-3ef0b422c67e - full_name: Alex Johnson - - uuid: 944cbbf4-8b13-4c45-babd-11ff13e17581 - status: approved - employee_note: Feeling under the weather - employer_note: Feel better soon! - days: - '2026-11-05': '8.000' - policy_type: sick - policy_uuid: bf493c7e-1a2d-4e5f-8c9a-3d7b6e4f2a1c - employee: - uuid: c2236d10-959a-4bb9-a21d-e14c6df447b6 - full_name: James Rivera - approver: - uuid: 21d8dff4-ce09-4120-a274-3a5628bf6769 - full_name: Morgan Chen - initiator: - uuid: c2236d10-959a-4bb9-a21d-e14c6df447b6 - full_name: James Rivera - Embedded-Time-Off-Request-Preview: - type: object - description: Preview of the balance impact for a time off request before it is created or updated. - required: - - balance_hours - - this_request_hours - - other_requested_hours - - remaining_balance_hours - - allow_negative_balance - - unlimited - x-examples: - success_status: - balance_hours: '64.0' - this_request_hours: '16.0' - other_requested_hours: '0.0' - remaining_balance_hours: '48.0' - allow_negative_balance: false - unlimited: false - properties: - balance_hours: - type: string - nullable: true - description: The employee's current available balance hours for this policy. Null for unlimited policies. - example: '64.0' - readOnly: true - this_request_hours: - type: string - description: The total hours for this time off request. - example: '16.0' - readOnly: true - other_requested_hours: - type: string - description: Hours from other pending or approved requests for this policy. - example: '0.0' - readOnly: true - remaining_balance_hours: - type: string - nullable: true - description: The projected balance after this request is applied. Null for unlimited policies. - example: '48.0' - readOnly: true - allow_negative_balance: - type: boolean - description: Whether the time off policy allows a negative balance. - example: false - readOnly: true - unlimited: - type: boolean - description: Whether the time off policy provides unlimited time off. - example: false - readOnly: true - Embedded-Time-Off-Balance: - type: object - description: Time off balance for an employee, grouped by policy. - x-examples: - success_status: - employee_uuid: 51924fa0-26c6-4d4c-8832-3ef0b422c67e - balances: - - policy_uuid: c2d9b1bd-3f36-4c2d-a727-b2af057d6a7f - balance_hours: '32.0' - accrued_hours: '40.0' - used_hours: '8.0' - pending_hours: '0.0' - properties: - employee_uuid: - type: string - description: The UUID of the employee. - example: 51924fa0-26c6-4d4c-8832-3ef0b422c67e - readOnly: true - balances: - type: array - description: The employee's time off balances, one entry per policy. - readOnly: true - items: - type: object - properties: - policy_uuid: - type: string - description: The UUID of the time off policy. - example: c2d9b1bd-3f36-4c2d-a727-b2af057d6a7f - readOnly: true - balance_hours: - type: string - description: The employee's current available balance hours for this policy. - example: '32.0' - readOnly: true - accrued_hours: - type: string - description: The total hours accrued year-to-date for this policy. - example: '40.0' - readOnly: true - used_hours: - type: string - description: The total hours used year-to-date for this policy. - example: '8.0' - readOnly: true - pending_hours: - type: - - string - - 'null' - description: The total hours from pending time off requests for this policy. - example: '0.0' - readOnly: true - Embedded-Time-Off-Balance-List: - type: array - items: - "$ref": "#/components/schemas/Embedded-Time-Off-Balance" - x-examples: - success_status: - - employee_uuid: 51924fa0-26c6-4d4c-8832-3ef0b422c67e - balances: - - policy_uuid: c2d9b1bd-3f36-4c2d-a727-b2af057d6a7f - balance_hours: '32.0' - accrued_hours: '40.0' - used_hours: '8.0' - pending_hours: '0.0' - Conflict-Error-Object: - description: "Conflict\n \nThis error occurs when the resource version provided does not match the current version. Retrieve the latest version and retry." - type: object - required: - - errors - properties: - errors: - type: array - items: - type: object - required: - - error_key - - category - properties: - error_key: - type: string - description: Specifies where the error occurs. Typically this key identifies the attribute/parameter related to the error. - category: - type: string - description: Specifies the type of error. The category provides error groupings and can be used to build custom error handling in your integration. - message: - type: string - description: Provides details about the error - generally this message can be surfaced to an end user. - x-examples: - invalid_version: - errors: - - error_key: base - category: invalid_resource_version - message: You are attempting to update a resource using an out-of-date version. - Employee-Custom-Field-List: - type: object - description: A list of an employee's custom fields - properties: - custom_fields: - type: array - items: - "$ref": "#/components/schemas/Employee-Custom-Field" - x-examples: - example: - custom_fields: - - id: ee515986-f3ca-49da-b576-2691b95262f9 - company_custom_field_id: ea7e5d57-6abb-47d7-b654-347c142886c0 - name: employee_level - description: Employee Level - type: text - value: '2' - selection_options: - - id: 3796e08d-c2e3-434c-b4de-4ce1893e7b59 - company_custom_field_id: 024ec137-6c92-43a3-b061-14a9720531d6 - name: favorite fruit - description: Which is your favorite fruit? - type: radio - value: apple - selection_options: - - apple - - banana - - orange - Department-List: - type: array - items: - "$ref": "#/components/schemas/Department" - x-examples: - example: - - uuid: 56260b3d-c375-415c-b77a-75d99f717193 - company_uuid: 7087a288-8349-4632-b92e-bc94fb79f29e - title: Stage Hand - version: d90440dd464601d1c8f4e9e240dfb7a6 - employees: - - uuid: 41199375-a999-4414-9f40-d9bf596b134d - contractors: [] - - uuid: ec5c8a85-3233-4f39-a9f5-fb1ab7b5f5f3 - company_uuid: 7087a288-8349-4632-b92e-bc94fb79f29e - title: Actors - version: 34f39a30b45d077cb83aed2df4810d74 - employees: - - uuid: 7ee4aca1-814b-4034-b0f8-07f93cc679d1 - contractors: [] - - uuid: 1802465d-4f68-4865-920c-1307ab095f12 - company_uuid: 7087a288-8349-4632-b92e-bc94fb79f29e - title: Band - version: 1fe3076d35ef7c97d0ae68c5f4df0acd - employees: - - uuid: a73955be-c009-44dc-915e-6246e2bdedbb - contractors: - - uuid: 3488549f-60e4-494f-a34a-9d8aad3aabf5 - Department-Create-Request-Body: - type: object - properties: - title: - type: string - description: Name of the department - example: Stage Hand - required: - - title - Department-Update-Request-Body: - type: object - allOf: - - "$ref": "#/components/schemas/Versionable-Required" - - "$ref": "#/components/schemas/Department-Create-Request-Body" - Department-People-Request-Body: - type: object - allOf: - - "$ref": "#/components/schemas/Versionable-Required" - - type: object - properties: - employees: - type: array - description: Array of employees to add or remove from the department - items: - type: object - properties: - uuid: + enum: + - taxes + - payroll_status_meta + - totals + - risk_blockers + - reversals + description: Include the requested attribute in the response, for multiple attributes comma separate the values, i.e. `?include=benefits,deductions,taxes` + - name: start_date + in: query + required: false + example: '2020-01-31' + description: Return payrolls whose pay period is after the start date + schema: + type: string + - name: end_date + in: query + required: false + example: '2020-01-31' + description: Return payrolls whose pay period is before the end date. If left empty, defaults to today's date. + schema: + type: string + - name: date_filter_by + in: query + required: false + description: Specifies which date field to use when filtering payrolls with start_date and end_date. This field applies only to regular processed payrolls and defaults to pay period if not provided. + schema: + type: string + enum: + - check_date + example: check_date + - name: page + in: query + required: false + description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + schema: + type: integer + - name: per + in: query + required: false + description: Number of objects per page. For majority of endpoints will default to 25 + schema: + type: integer + - name: sort_order + in: query + required: false + description: A string indicating whether to sort resulting events in ascending (asc) or descending (desc) chronological order. Events are sorted by their `timestamp`. Defaults to asc if left empty. + schema: + type: string + enum: + - asc + - desc + example: asc + x-gusto-rswag: true + operationId: get-v1-companies-company_id-payrolls + security: + - CompanyAccessAuth: [] + description: |- + Returns a list of payrolls for a company. You can change the payrolls returned by updating the processing_status, payroll_types, start_date, & end_date params. + + By default, will return processed, regular payrolls for the past 6 months. + + Notes: + * Dollar amounts are returned as string representations of numeric decimals, are represented to the cent. + * end_date can be at most 3 months in the future and start_date and end_date can't be more than 1 year apart. + * Results are paginated. Maximum page size is 100 payrolls per request; the default page size is 25. + + scope: `payrolls:read` + tags: + - Payrolls + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Payroll-List" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: list + post: + summary: Create an off-cycle payroll + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + operationId: post-v1-companies-company_id-payrolls + security: + - CompanyAccessAuth: [] + description: |- + Creates a new, unprocessed, off-cycle payroll. + + ## `off_cycle_reason` + By default: + - External benefits and deductions will be included when the `off_cycle_reason` is set to `Correction`. + - All benefits and deductions are blocked when the `off_cycle_reason` is set to `Bonus`. + + These elections can be overridden with the `skip_regular_deductions` boolean. + + scope: `payrolls:run` + tags: + - Payrolls + x-gusto-integration-type: + - embedded + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Payroll-Unprocessed" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + required: + - off_cycle + - off_cycle_reason + - start_date + - end_date + properties: + off_cycle: + type: boolean + description: Whether it is an off cycle payroll. + off_cycle_reason: + type: string + enum: + - Bonus + - Correction + - Adhoc + - Dismissed employee + - Transition from old pay schedule + description: An off cycle payroll reason. Select one from the following list. + start_date: + type: string + format: date + description: Pay period start date. + end_date: + type: string + format: date + description: Pay period end date. + pay_schedule_uuid: + description: A pay schedule is required for transition from old pay schedule payroll to identify the matching transition pay period. + type: string + employee_uuids: + description: A list of employee UUIDs to include on the payroll. At least one UUID is required for non-termination off-cycle payrolls. + type: array + minItems: 1 + items: type: string - contractors: - type: array - description: Array of contractors to add or remove from the department - items: - type: object - properties: - uuid: + check_date: + type: string + format: date + description: Payment date. + withholding_pay_period: + description: The payment schedule tax rate the payroll is based on. + type: string + enum: + - Every week + - Every other week + - Twice per month + - Monthly + - Quarterly + - Semiannually + - Annually + skip_regular_deductions: + description: Block regular deductions and contributions for this payroll. + type: boolean + fixed_withholding_rate: + description: Enable taxes to be withheld at the IRS's required rate of 22% for federal income taxes. State income taxes will be taxed at the state's supplemental tax rate. Otherwise, we'll sum the entirety of the employee's wages and withhold taxes on the entire amount at the rate for regular wages. + type: boolean + is_check_only_payroll: + description: When true, all employees in the payroll will be paid by check and the check date can be set to today or any future business day (rather than requiring ACH lead time). Payment methods cannot be changed on check-only payrolls. + type: boolean + x-speakeasy-name-override: createOffCycle + "/v1/payrolls/{payroll_uuid}/receipt": + get: + summary: Get a single payroll receipt + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: payroll_uuid + in: path + description: The UUID of the payroll + required: true + schema: + type: string + - name: page + in: query + required: false + description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + schema: + type: integer + - name: per + in: query + required: false + description: Number of objects per page. For majority of endpoints will default to 25 + schema: + type: integer + x-gusto-rswag: true + operationId: get-v1-payment-receipts-payrolls-payroll_uuid + security: + - CompanyAccessAuth: [] + description: |- + Returns a payroll receipt. + + Notes: + * Hour and dollar amounts are returned as string representations of numeric decimals. + * Dollar amounts are represented to the cent. + * If no data has yet be inserted for a given field, it defaults to "0.00" (for fixed amounts). + * Employee compensations are always paginated. Maximum page size is 100 employee compensations per request. + * Responses include the `X-Page`, `X-Total-Count`, `X-Total-Pages`, and `X-Per-Page` pagination headers. + + scope: `payrolls:read` + tags: + - Payrolls + x-gusto-integration-type: + - embedded + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Payroll-Receipt" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: getReceipt + "/v1/companies/{company_id}/payrolls/{payroll_id}/cancel": + put: + summary: Cancel a payroll + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: payroll_id + in: path + description: The UUID of the payroll + required: true + schema: + type: string + x-gusto-rswag: true + operationId: put-api-v1-companies-company_id-payrolls-payroll_id-cancel + security: + - CompanyAccessAuth: [] + description: |- + Transitions a `processed` payroll back to the `unprocessed` state. A payroll can be canceled if it meets both criteria: + + - `processed` is `true` + - Current time is earlier than 4pm PT on the `payroll_deadline` + + scope: `payrolls:run` + tags: + - Payrolls + x-gusto-integration-type: + - embedded + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessed-Payroll" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-speakeasy-name-override: cancel + "/v1/companies/{company_id}/payrolls/{payroll_id}/prepare": + put: + summary: Prepare a payroll for update + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: payroll_id + in: path + description: The UUID of the payroll + required: true + schema: + type: string + - name: page + in: query + required: false + description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + schema: + type: integer + - name: per + in: query + required: false + description: Number of objects per page. For majority of endpoints will default to 25 + schema: + type: integer + - name: sort_by + in: query + required: false + schema: + type: string + pattern: "^(first_name|last_name)(:(asc|desc))?(,(first_name|last_name)(:(asc|desc))?)*$" + example: first_name:asc + description: 'Sort employee compensations by one or more fields. Options: first_name, last_name. Append `:asc` or `:desc` to specify direction (e.g., `last_name:asc` or `last_name:asc,first_name:asc`). Defaults to ascending.' + x-gusto-rswag: true + operationId: put-v1-companies-company_id-payrolls-payroll_id-prepare + security: + - CompanyAccessAuth: [] + description: |- + 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_date`, `payroll_deadline`, and `payroll_status_meta` dates and times. + + Use this endpoint before calling [PUT /v1/companies/{company_id}/payrolls/{payroll_id}](ref:put-v1-companies-company_id-payrolls). + + ### Notes + + * Nullifies `calculated_at` and `totals` if the payroll was previously calculated + * Returns the `version` parameter required for [updating the payroll](ref:put-v1-companies-company_id-payrolls) + * `employees:read` scope is required to include employee compensations data in the response. + * Results are paginated, with a maximum page size of 100 employee compensations. + + scope: `payrolls:write employees:read` + tags: + - Payrolls + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Payroll-Prepared" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + properties: + employee_uuids: + type: + - array + - 'null' + description: |- + The employees to prepare, identified by UUID. If omitted, every employee currently on the payroll is prepared. + + **Off-cycle payrolls that support multiple employees (`Bonus`, `Correction`, `Adhoc`):** passing `employee_uuids` also adds eligible employees who aren't yet on the payroll - a listed employee not on the payroll is added, while one already on it is simply prepared. A request may include up to 100 UUIDs, of which at most 25 may be employees not already on the payroll; an ineligible or unknown UUID, or more than 25 new employees, is rejected with a 422. + + **All other payrolls:** `employee_uuids` selects which of the payroll's existing employees to prepare; a UUID for an employee not on the payroll is rejected with a 422. + items: type: string - Company-Custom-Field-List: - type: object - x-examples: - success_status: - custom_fields: - - uuid: ea7e5d57-6abb-47d7-b654-347c142886c0 - name: employee_level - description: Employee Level - type: text - selection_options: - - uuid: 024ec137-6c92-43a3-b061-14a9720531d6 - name: favorite fruit - description: Which is your favorite fruit? - type: radio - selection_options: - - apple - - banana - - orange - properties: - custom_fields: - type: array - items: - "$ref": "#/components/schemas/Company-Custom-Field" - Garnishment-Request-Base: - type: object - description: Shared request body properties for creating or updating a garnishment. - properties: - active: - type: boolean - default: true - description: Whether or not this garnishment is currently active. - amount: - type: string - format: float - readOnly: false - description: The amount of the garnishment. Either a percentage or a fixed dollar amount. Represented as a float, e.g. "8.00". - description: - type: string - readOnly: false - description: The description of the garnishment. - court_ordered: - type: boolean - readOnly: false - description: Whether the garnishment is court ordered. - garnishment_type: - description: The specific type of garnishment for court ordered garnishments. - anyOf: - - type: string - enum: - - child_support - - federal_tax_lien - - state_tax_lien - - student_loan - - creditor_garnishment - - federal_loan - - other_garnishment - - type: 'null' - readOnly: false - times: - type: - - integer - - 'null' - readOnly: false - default: - description: The number of times to apply the garnishment. Ignored if recurring is true. - recurring: - type: boolean - readOnly: false - default: false - description: Whether the garnishment should recur indefinitely. - annual_maximum: - format: float - readOnly: false - default: - type: - - string - - 'null' - description: The maximum deduction per annum. A null value indicates no maximum. Represented as a float, e.g. "200.00". - pay_period_maximum: - type: - - string - - 'null' - format: float - default: - description: The maximum deduction per pay period. A null value indicates no maximum. Represented as a float, e.g. "16.00". - deduct_as_percentage: - type: boolean - readOnly: false - default: false - description: Whether the amount should be treated as a percentage to be deducted per pay period. - total_amount: - type: - - string - - 'null' - format: float - readOnly: false - description: A maximum total deduction for the lifetime of this garnishment. A null value indicates no maximum. - child_support: - "$ref": "#/components/schemas/Garnishment-Child-Support" - x-examples: - Example: - amount: '50.00' - annual_maximum: '2500.09' - recurring: true - Deactivate-Example: - active: false - Child-Support-Example: - amount: '40' - child_support: - case_number: ZZZ999 - Garnishment-Request: - description: Request body for creating a garnishment. - allOf: - - "$ref": "#/components/schemas/Garnishment-Request-Base" - - type: object - required: - - amount - - court_ordered - x-examples: - Example: - amount: '150.00' - description: Back taxes - court_ordered: true - recurring: true - deduct_as_percentage: false - Child-Support-Example: - court_ordered: true - garnishment_type: child_support - amount: '40' - recurring: true - deduct_as_percentage: true - pay_period_maximum: '500.00' - child_support: - state: FL - fips_code: '12011' - payment_period: Monthly - case_number: CS1234 - Update-Garnishment-Request: - description: Request body for updating a garnishment. - allOf: - - "$ref": "#/components/schemas/Garnishment-Request-Base" - - "$ref": "#/components/schemas/Versionable-Required" - Contractor-Address-Update-Body: - type: object - properties: - version: - type: string - example: 56d00c178bc7393b2a206ed6a86afcb4 - description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. - street_1: - type: string - street_2: - type: string - city: - type: string - state: - type: string - zip: - type: string - required: - - version - x-examples: - example: - version: fe75bd065ff48b91c35fe8ff842f986c - street_1: 300 3rd Street - street_2: - city: San Francisco - state: CA - zip: '94107' - Pay-Schedule-Show-Response: - type: array - description: 'List of pay schedules for a company, as returned from [GET /v1/companies/{company_id}/pay_schedules](ref:get-v1-companies-company_id-pay_schedules). Each entry matches Pay-Schedule-Show (includes `version`). + x-speakeasy-name-override: prepare + "/v1/companies/{company_id}/payrolls/{payroll_id}/calculate": + put: + summary: Calculate a payroll + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: payroll_id + in: path + description: The UUID of the payroll + required: true + schema: + type: string + x-gusto-rswag: true + operationId: put-v1-companies-company_id-payrolls-payroll_id-calculate + security: + - CompanyAccessAuth: [] + description: |- + Performs calculations for taxes, benefits, and deductions for an unprocessed payroll. The calculated payroll details provide a preview of the actual values that will be used when the payroll is run. + + This calculation is asynchronous and a successful request responds with a 202 HTTP status. To view the details of the calculated payroll, use the GET /v1/companies/{company_id}/payrolls/{payroll_id} endpoint with *include=taxes,benefits,deductions* params. + + If the company is blocked from running payroll due to issues like incomplete setup, missing information or other compliance issues, the response will be 422 Unprocessable Entity with a categorization of the blockers as described in the error responses. + + scope: `payrolls:run` + tags: + - Payrolls + x-gusto-integration-type: + - embedded + responses: + '202': + description: Accepted + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-speakeasy-name-override: calculate + "/v1/companies/{company_uuid}/payrolls/blockers": + get: + summary: Get all payroll blockers for a company + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-companies-payroll-blockers-company_uuid + security: + - CompanyAccessAuth: [] + description: |- + Returns a list of reasons that prevent the company from running payrolls. See the [Payroll Blockers guide](doc:payroll-blockers) for a complete list of reasons. The list is empty if there are no payroll blockers. + + scope: `payrolls:run` + tags: + - Payrolls + x-gusto-integration-type: + - embedded + responses: + '200': + description: Successful + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Payroll-Blocker" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: getBlockers + "/v1/companies/{company_uuid}/payrolls/skip": + post: + summary: Skip a payroll + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + operationId: post-companies-payroll-skip-company_uuid + security: + - CompanyAccessAuth: [] + description: |- + Submits a $0 payroll for employees associated with the pay schedule to skip payroll. This submission is asynchronous and a successful request responds with a 202 HTTP status. Upon success, the payroll is transitioned to the `processed` state. + + If the company is blocked from running payroll due to issues like incomplete setup, missing information or other compliance issues, the response will be 422 Unprocessable Entity with a categorization of the blockers as described in the error responses. + + scope: `payrolls:run` + tags: + - Payrolls + x-gusto-integration-type: + - embedded + responses: + '202': + description: Accepted + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Payroll-Blockers-Error" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '409': + description: Conflict + content: + application/json: + schema: + "$ref": "#/components/schemas/Conflict-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + properties: + payroll_type: + type: string + description: Payroll type + enum: + - Regular + - Hired employee + - Dismissed employee + - Transition from old pay schedule + start_date: + type: string + description: Pay period start date + end_date: + type: string + description: Pay period end date. If left empty, defaults to today's date. Required when skipping a termination payroll (`payroll_type` = `Dismissed employee`). + pay_schedule_uuid: + type: string + description: The UUID of the pay schedule. Required when skipping a termination payroll (`payroll_type` = `Dismissed employee`). + employee_uuids: + description: An array of employees. This field is only applicable to new hire payroll and termination payroll + type: + - array + - 'null' + items: + type: string + required: + - payroll_type + required: true + x-speakeasy-name-override: skip + "/v1/companies/{company_id}/payrolls/{payroll_id}/submit": + put: + summary: Submit payroll + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: payroll_id + in: path + description: The UUID of the payroll + required: true + schema: + type: string + x-gusto-rswag: true + operationId: put-v1-companies-company_id-payrolls-payroll_id-submit + security: + - CompanyAccessAuth: [] + description: |- + Submits an unprocessed payroll to be calculated and run. This submission is asynchronous and a successful request responds with a 202 HTTP status. Upon success, transitions the payroll to the `processed` state. + + You should poll to ensure that payroll is processed successfully, as async errors only occur after async processing is complete. + + If the company is blocked from running payroll due to issues like incomplete setup, missing information or other compliance issues, the response will be 422 Unprocessable Entity with a categorization of the blockers as described in the error responses. + + scope: `payrolls:run` + tags: + - Payrolls + x-gusto-integration-type: + - embedded + responses: + '202': + description: Accepted + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + properties: + submission_blockers: + type: array + description: An array of submission_blockers, each with a selected unblock option. + items: + "$ref": "#/components/schemas/Payroll-Submission-Blocker-Request-Type" + x-speakeasy-name-override: submit + "/v1/payrolls/{payroll_uuid}/gross_up": + post: + summary: Calculate gross up for a payroll + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: payroll_uuid + in: path + description: The UUID of the payroll + required: true + schema: + type: string + x-gusto-rswag: true + operationId: post-payrolls-gross-up-payroll_uuid + security: + - CompanyAccessAuth: [] + description: |- + Calculates gross up earnings for an employee's payroll, given net earnings. This endpoint is only applicable to off-cycle unprocessed payrolls. + + The gross up amount must then be mapped to the corresponding fixed compensation earning type to get the correct payroll amount. For example, for bonus off-cycles, the gross up amount should be set with the Bonus earning type in the payroll `fixed_compensations` field. + + scope: `payrolls:run` + tags: + - Payrolls + x-gusto-integration-type: + - embedded + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Payroll-Gross-Up-Response" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Payroll-Gross-Up-Request" + required: true + x-speakeasy-name-override: calculateGrossUp + "/v1/payrolls/{payroll_id}/employees/{employee_id}/calculate_accruing_time_off_hours": + post: + summary: Calculate accruing time off hours + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: payroll_id + in: path + description: The UUID of the payroll + required: true + schema: + type: string + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + x-gusto-rswag: true + operationId: post-v1-payrolls-payroll_id-calculate_accruing_time_off_hours + security: + - CompanyAccessAuth: [] + description: |- + 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. + + scope: `payrolls:read` + tags: + - Time Off Policies + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Payroll-Calculate-Accruing-Time-Off-Hours-Response" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Payroll-Calculate-Accruing-Time-Off-Hours-Request" + x-speakeasy-group: timeOffPolicies + x-speakeasy-name-override: calculateAccruingTimeOffHours + "/v1/companies/{company_id}/people_batches": + post: + summary: Create a people batch + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + operationId: post-v1-companies-company_id-people_batches + security: + - CompanyAccessAuth: [] + description: |- + Creates a batch for bulk employee creation. + + The batch is processed asynchronously. Use the returned batch UUID to poll for status and results. + + scope: `people_batches:write` + tags: + - People Batches + x-gusto-integration-type: + - embedded + responses: + '201': + description: created + content: + application/json: + schema: + "$ref": "#/components/schemas/People-Batch" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '409': + description: conflict - idempotency key already used + content: + application/json: + schema: + "$ref": "#/components/schemas/People-Batch-Conflict-Error" + '422': + description: unprocessable entity - validation errors + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + required: + - idempotency_key + - batch_action + - batch + properties: + idempotency_key: + type: string + format: uuid + description: A unique identifier to ensure idempotency of the batch request + example: 550e8400-e29b-41d4-a716-446655440000 + batch_action: + type: string + enum: + - create + description: The action to perform on the batch + example: create + batch: + type: array + description: Array of people to create + items: + type: object + required: + - entity_type + - person + properties: + entity_type: + type: string + enum: + - employee + description: The type of entity to create + example: employee + person: + type: object + required: + - external_id + - first_name + - last_name + properties: + external_id: + type: string + description: External identifier for the person + first_name: + type: string + description: Legal first name + last_name: + type: string + description: Legal last name + middle_initial: + type: + - string + - 'null' + maxLength: 1 + minLength: 1 + description: Middle initial + preferred_first_name: + type: + - string + - 'null' + description: Preferred first name + email: + type: + - string + - 'null' + format: email + description: Personal email address + work_email: + type: + - string + - 'null' + format: email + description: Work email address + ssn: + type: + - string + - 'null' + description: 'Social Security Number (format: xxx-xx-xxxx)' + date_of_birth: + type: + - string + - 'null' + format: date + description: Date of birth (YYYY-MM-DD) + self_onboarding: + type: + - boolean + - 'null' + description: Whether the employee will complete their own onboarding + home_address: + type: object + description: Home address for the employee + required: + - street_1 + - city + - state + - zip + properties: + street_1: + type: string + description: Street address line 1 + street_2: + type: string + description: Street address line 2 + city: + type: string + description: City + state: + type: string + description: State abbreviation + zip: + type: string + description: ZIP code + country: + type: string + description: Country (defaults to USA) + work_from_home: + type: boolean + description: If true, a company work address will be created based on this home address and the `work_address` property is not allowed. + work_address: + type: object + description: Specify the company work location for the employee + required: + - location_uuid + properties: + location_uuid: + type: string + format: uuid + description: UUID of an existing company work location + job: + type: object + description: Job details for the employee (required if compensation is provided) + required: + - title + - hire_date + properties: + title: + type: string + description: Job title + hire_date: + type: string + format: date + description: The date when the employee was hired or rehired for the job. + two_percent_shareholder: + type: boolean + description: Whether the employee owns at least 2% of the company. Can only be `true` for S-Corp companies. + state_wc_covered: + type: + - boolean + - 'null' + description: Whether this job is eligible for workers' compensation coverage in the state of Washington (WA). + state_wc_class_code: + type: + - string + - 'null' + description: The risk class code for workers' compensation in Washington state. Please visit [Washington state's Risk Class page](https://www.lni.wa.gov/insurance/rates-risk-classes/risk-classes-for-workers-compensation/risk-class-lookup#/) to learn more. + department: + type: object + description: Department details for the employee + required: + - department_uuid + properties: + department_uuid: + type: string + format: uuid + description: UUID of an existing company department + compensation: + type: object + description: Compensation details for the employee (requires job to be provided) + required: + - rate + - payment_unit + - flsa_status + properties: + rate: + type: string + description: The dollar amount paid per payment unit. + payment_unit: + type: string + enum: + - Hour + - Week + - Month + - Year + - Paycheck + description: The unit accompanying the compensation rate. If the employee is an owner, rate should be `Paycheck`. + flsa_status: + type: string + enum: + - Exempt + - Salaried Nonexempt + - Nonexempt + - Owner + - Commission Only Exempt + - Commission Only Nonexempt + description: 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. If selecting `Owner`, `payment_unit` must be `"Paycheck"`. + bank_accounts: + type: array + description: |- + Creates employee bank account(s) and payment method(s) for direct deposit. Payments can be split across accounts by Percentage or by Amount. If splitting payments by `Percentage`, all splits must have a `split_amount` and the percentages must add up to `100`. + If splitting payments by `Amount`, the priority is set based on the order of the bank accounts in the array and the last bank account is the remainder account (should have `split_amount` set to `null`). + items: + type: object + required: + - type + - account_type + - routing_number + - account_number + - split_by + properties: + name: + type: + - string + - 'null' + description: Account nickname + account_type: + type: string + enum: + - Checking + - Savings + description: Type of bank account + routing_number: + type: string + description: Bank routing number + account_number: + type: string + description: Bank account number + type: + type: string + enum: + - Direct Deposit + description: Payment type (must be Direct Deposit) + split_by: + type: string + enum: + - Amount + - Percentage + description: How to split deposits, must be the same for all bank accounts. If split_by is `Percentage`, then the split_amounts must add up to exactly 100. + split_amount: + type: + - string + - 'null' + description: Split amount in percentage or CENTS (`null` for remainder account) + required: true + "/v1/people_batches/{people_batch_uuid}": + get: + summary: Get a people batch + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: people_batch_uuid + in: path + description: The UUID of the people batch + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-people_batches-people_batch_uuid + security: + - CompanyAccessAuth: [] + description: |- + Returns the status and results of a people batch. -' - items: - "$ref": "#/components/schemas/Pay-Schedule-Show" - x-tags: - - Pay Schedules - x-examples: - success_status: - - uuid: f2a69c38-e2f9-4e31-b5c5-4754fc60a052 - version: 68934a3e9455fa72420237eb05902327 - frequency: Monthly - anchor_pay_date: '2022-12-11' - anchor_end_of_pay_period: '2022-11-13' - day_1: 11 - day_2: - name: - custom_name: every 11th of the month - auto_payroll: true - active: true - auto_payroll_enablement_blockers: - Contractor-Bank-Account-List: - title: Contractor-Bank-Account-List - type: array - items: - "$ref": "#/components/schemas/Contractor-Bank-Account" - x-examples: - example: - - uuid: 1531e824-8d9e-4bd8-9f90-0d04608125d7 - contractor_uuid: 9fcf1b1d-8886-4691-9283-383d3bdd4fd9 - name: BoA Checking Account - routing_number: '266905059' - hidden_account_number: XXXX1207 - account_type: Checking - Contractor-Bank-Account-Create-Request-Body: - title: Contractor-Bank-Account-Create-Request-Body - type: object - required: - - name - - routing_number - - account_number - - account_type - properties: - name: - type: string - description: Name for the bank account - routing_number: - type: string - description: The bank account's routing number - account_number: - type: string - description: The bank account's account number - account_type: - type: string - enum: - - Checking - - Savings - description: Bank account type - x-examples: - example: - name: BoA Checking Account - routing_number: '266905059' - account_number: '5809431207' - account_type: Checking - Partner-Managed-Company-Migrate-Request: - type: object - required: - - email - properties: - email: - type: string - description: Email of the company signatory who is authorized to accept our [Terms of Service](https://flows.gusto.com/terms) and migration decision. You can retrieve the signatory email from the `GET /v/1/companies/{company_id}/signatories` endpoint. - ip_address: - type: string - description: The IP address of the signatory who viewed and accepted the Terms of Service. - external_user_id: - type: string - description: The signatory's user ID on your platform. - x-examples: - typical: - email: payroll.admin@example.com - ip_address: 203.0.113.42 - external_user_id: 9f8e7d6c-5b4a-3210-fedc-ba9876543210 - Partner-Managed-Company-Migrate-Response: - type: object - properties: - company_uuid: - type: string - description: The company UUID - migration_status: - type: string - description: The migration status. Always returns `success` for a successful migration. - enum: - - success - x-examples: - Example: - company_uuid: 39abf9b9-650b-4e67-89a0-389dc6ee8a71 - migration_status: success - Webhook-Verification-Token-Response: - description: The response from requesting a webhook subscription verification token. - type: object - x-tags: - - Webhooks - title: '' - properties: - message: - type: string - description: A message indicating the verification token has been sent. - x-examples: - Example: - message: Success! The subscriber will be notified with the verification token - Employee-Benefit-Create-Request: - description: '' - type: object - properties: - company_benefit_uuid: - type: string - description: The UUID of the company benefit. - active: - type: boolean - default: true - description: Whether the employee benefit is active. - employee_deduction: - type: string - default: '0.00' - description: The amount to be deducted, per pay period, from the employee's pay. - deduct_as_percentage: - type: boolean - default: false - description: Whether the employee deduction amount should be treated as a percentage to be deducted from each payroll. - employee_deduction_annual_maximum: - type: - - string - - 'null' - description: The maximum employee deduction amount per year. A null value signifies no limit. - contribution: - type: object - description: An object representing the company contribution type and value. - properties: - type: - type: string - enum: - - tiered - - percentage + Poll this endpoint to check the batch processing status and retrieve results. + + scope: `people_batches:read` + tags: + - People Batches + x-gusto-integration-type: + - embedded + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/People-Batch-Results" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + "/v1/plaid/processor_token": + post: + summary: Create a bank account from a plaid processor token + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + operationId: post-v1-plaid-processor_token + security: + - CompanyAccessAuth: [] + description: "This endpoint creates a new **verified** bank account by using a plaid processor token to retrieve its information.\n\n> \U0001F4D8\n> To create a token please use the [plaid api](https://plaid.com/docs/api/processors/#processortokencreate) and select \"gusto\" as processor.\n\n> \U0001F6A7 Warning - Company Bank Accounts\n>\n> If a default company bank account exists, it will be disabled and the new bank account will replace it as the company's default funding method.\n\nscope: `plaid_processor:write`" + tags: + - Bank Accounts + x-gusto-integration-type: + - embedded + responses: + '201': + description: A JSON object containing bank information + content: + application/json: + schema: + "$ref": "#/components/schemas/Company-Bank-Account" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Plaid-Processor-Token-Request" + required: true + x-speakeasy-group: bankAccounts + x-speakeasy-name-override: createFromPlaidToken + "/v1/companies/{company_uuid}/recovery_cases": + get: + summary: Get all recovery cases for a company + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: page + in: query + required: false + description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + schema: + type: integer + - name: per + in: query + required: false + description: Number of objects per page. For majority of endpoints will default to 25 + schema: + type: integer + x-gusto-rswag: true + operationId: get-recovery-cases + security: + - CompanyAccessAuth: [] + description: |- + Fetch all recovery cases for a company. + + scope: `recovery_cases:read` + tags: + - Recovery Cases + x-gusto-integration-type: + - embedded + responses: + '200': + description: Successful + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Recovery-Case" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: recoveryCases + x-speakeasy-name-override: get + "/v1/recovery_cases/{recovery_case_uuid}/redebit": + put: + summary: Initiate a redebit for a recovery case + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: recovery_case_uuid + in: path + required: true + description: The UUID of the recovery case + schema: + type: string + x-gusto-rswag: true + operationId: redebit-recovery-case + security: + - CompanyAccessAuth: [] + description: |- + After resolving the underlying bank error, initiate a redebit for an open recovery case. This submission is asynchronous and a successful request responds with a 202 HTTP status. + + It may take up to four business days for the ACH debit to process; in the meantime, the status of the recovery case will be in the `initiated_redebit` state. When funds are successfully redebited, the recovery case is transitioned to the `recovered` state. + + If the company has exceeded maximum redebit attempts, or if the recovery case is not in a redebitable state, the response will be 422 Unprocessable Entity. + + scope: `recovery_cases:write` + tags: + - Recovery Cases + x-gusto-integration-type: + - embedded + responses: + '202': + description: Accepted + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-speakeasy-group: recoveryCases + x-speakeasy-name-override: redebit + "/v1/employees/{employee_id}/recurring_reimbursements": + get: + summary: Get recurring reimbursements for an employee + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + - name: page + in: query + required: false + description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + schema: + type: integer + - name: per + in: query + required: false + description: Number of objects per page. For majority of endpoints will default to 25 + schema: + type: integer + x-gusto-rswag: true + operationId: get-v1-employees-employee_id-recurring_reimbursements + security: + - CompanyAccessAuth: [] + description: |- + Get all active recurring reimbursements for an employee. + + scope: `reimbursements:read` + tags: + - Reimbursements + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Recurring-Reimbursement-List" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + post: + summary: Create a recurring reimbursement + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + x-gusto-rswag: true + operationId: post-v1-employees-employee_id-recurring_reimbursements + security: + - CompanyAccessAuth: [] + description: |- + Create a recurring reimbursement for an employee. + + scope: `reimbursements:write` + tags: + - Reimbursements + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '201': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Recurring-Reimbursement" + '422': + description: invalid attributes + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + required: + - description - amount - description: |- - The company contribution scheme. + properties: + description: + type: string + description: The description of the reimbursement + amount: + type: number + description: The dollar amount of the reimbursement + required: true + "/v1/recurring_reimbursements/{id}": + get: + summary: Get a recurring reimbursement + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: id + in: path + description: The UUID of the reimbursement + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-recurring_reimbursements + security: + - CompanyAccessAuth: [] + description: |- + Get a specific recurring reimbursement. - `amount`: The company contributes a fixed amount per payroll. If elective is true, the contribution is matching, dollar-for-dollar. + scope: `reimbursements:read` + tags: + - Reimbursements + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Recurring-Reimbursement" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + put: + summary: Update a recurring reimbursement + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: id + in: path + description: The UUID of the reimbursement + required: true + schema: + type: string + x-gusto-rswag: true + operationId: put-v1-recurring_reimbursements + security: + - CompanyAccessAuth: [] + description: |- + Update a recurring reimbursement. - `percentage`: The company contributes a percentage of the payroll amount per payroll period. If elective is true, the contribution is matching, dollar-for-dollar. + scope: `reimbursements:write` + tags: + - Reimbursements + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Recurring-Reimbursement" + '409': + description: invalid version + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: invalid attributes + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + requestBody: + content: + application/json: + schema: + allOf: + - "$ref": "#/components/schemas/Versionable-Required" + - type: object + properties: + description: + type: string + description: The description of the reimbursement + amount: + type: number + description: The dollar amount of the reimbursement + required: true + delete: + summary: Delete a recurring reimbursement + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: id + in: path + description: The UUID of the reimbursement + required: true + schema: + type: string + x-gusto-rswag: true + operationId: delete-v1-recurring_reimbursements + security: + - CompanyAccessAuth: [] + description: |- + Delete (soft delete) a recurring reimbursement for an employee. - `tiered`: The size of the company contribution corresponds to the size of the employee deduction relative to a tiered matching scheme. - value: - description: |- - For the `amount` and `percentage` contribution types, the value of the corresponding amount or percentage. + scope: `reimbursements:write` + tags: + - Reimbursements + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '204': + description: successful + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + "/v1/companies/{company_uuid}/reports": + post: + summary: Create a custom report + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + required: true + description: The UUID of the company + schema: + type: string + x-gusto-rswag: true + operationId: post-companies-company_uuid-reports + security: + - CompanyAccessAuth: [] + description: |- + Create a custom report for a company. This endpoint initiates creating a custom report with custom columns, groupings, and filters. The `request_uuid` in the response can then be used to poll for the status and report URL upon completion using the [report GET endpoint](https://docs.gusto.com/embedded-payroll/reference/get-reports-request_uuid). This URL is valid for 10 minutes. - For the `tiered` contribution type, an array of tiers. - oneOf: - - type: string - description: For the `amount` and `percentage` contribution types, the value of the corresponding amount or percentage. - - type: array - description: For `tiered` contribution types, an array of tiers. - items: - type: object - description: A single tier of a tiered matching scheme. - properties: - rate: - type: string - description: The percentage of employee deduction within this tier the company contribution will match. - threshold: - type: string - description: |- - Specifies the upper limit (inclusive) percentage of the employee contribution that this tier applies to. + scope: `company_reports:write` + tags: + - Reports + x-gusto-integration-type: + - embedded + responses: + '201': + description: Created + content: + application/json: + schema: + "$ref": "#/components/schemas/Create-Report" + '404': + description: | + Not Found - Use threshold to define each tier's end point, with tiers applied cumulatively from 0% upwards. + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity - For example: + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Create-Report-Body" + required: true + x-speakeasy-name-override: createCustom + "/v1/payrolls/{payroll_uuid}/reports/general_ledger": + post: + summary: Create a general ledger report + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: payroll_uuid + in: path + required: true + description: The UUID of the payroll + schema: + type: string + x-gusto-rswag: true + operationId: post-payrolls-payroll_uuid-reports-general_ledger + security: + - CompanyAccessAuth: [] + description: |- + Create a general ledger report for a payroll. The report can be aggregated by different dimensions such as job or department. - If the first tier has a threshold of "3", and rate of "100", the company will match 100% of employee contributions from 0% up to and including 3% of payroll. + Use the `request_uuid` in the response with the [report GET endpoint](../reference/get-reports-request_uuid) to poll for the status and report URL upon completion. The retrieved report will be generated in a JSON format. - If the next tier has a threshold of "5" and a rate of "50", the company will match 50% of contributions from above 3% up to and including 5% of payroll. - elective: - type: boolean - description: 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`. - default: false - company_contribution_annual_maximum: - type: - - string - - 'null' - description: The maximum company contribution amount per year. A null value signifies no limit. - limit_option: - description: |- - Some benefits require additional information to determine - their limit. + scope: `company_reports:write` + tags: + - Reports + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: OK + content: + application/json: + schema: + "$ref": "#/components/schemas/General-Ledger-Report" + '404': + description: | + Not Found - `Family` or `Individual`: Applicable to HSA benefit. + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/General-Ledger-Report-Body" + required: true + "/v1/reports/{request_uuid}": + get: + summary: Get a report + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: request_uuid + in: path + required: true + description: The UUID of the request to generate a document. Generate document endpoints return request_uuids to be used with the GET generated document endpoint. + schema: + type: string + x-gusto-rswag: true + operationId: get-reports-request_uuid + security: + - CompanyAccessAuth: [] + description: |- + Get a company's report given the `request_uuid`. The response will include the report request's status and, if complete, the report URL. + + Reports containing PHI are inaccessible with `company_reports:read:tier_2_only` data scope + + scope: `company_reports:read` + tags: + - Reports + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: OK + content: + application/json: + schema: + "$ref": "#/components/schemas/Report" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + "/v1/companies/{company_uuid}/report_templates/{report_type}": + get: + summary: Get a report template + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + required: true + description: The UUID of the company + schema: + type: string + - name: report_type + in: path + required: true + description: The report type + schema: + type: string + x-gusto-rswag: true + operationId: get-companies-company_uuid-report-templates-report_type + security: + - CompanyAccessAuth: [] + description: |- + Get a company's report template. The only supported report type is `payroll_journal`. The resulting columns and groupings from this endpoint can be used as a guidance to create the report using the POST create report endpoint. + + scope: `company_reports:write` + tags: + - Reports + x-gusto-integration-type: + - embedded + responses: + '200': + description: OK + content: + application/json: + schema: + "$ref": "#/components/schemas/Report-Template" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-speakeasy-name-override: getTemplate + "/v1/companies/{company_uuid}/reverse_wire_transactions": + get: + summary: Get all reverse wire transactions for a company + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + required: true + description: The UUID of the company + schema: + type: string + - name: payroll_uuid + in: query + required: false + description: Filter results to reverse wires associated with a specific payroll + schema: + type: string + - name: page + in: query + required: false + description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + schema: + type: integer + - name: per + in: query + required: false + description: Number of objects per page. For majority of endpoints will default to 25 + schema: + type: integer + x-gusto-rswag: true + operationId: get-reverse-wire-transactions + security: + - CompanyAccessAuth: [] + description: |- + Returns a paginated list of reverse wire (drawdown) transactions for a company. Reverse wires are debit transactions initiated by Gusto to pull funds from a partner's bank account to cover payroll or contractor payment obligations. Pagination is returned via the `x-page`, `x-per-page`, `x-total-count`, and `x-total-pages` response headers. - `Joint Filing or Single` or `Married and Filing Separately`: Applicable to Dependent Care FSA benefit. - anyOf: - - type: string - enum: - - Family - - Individual - - Joint Filing or Single - - Married and Filing Separately - - type: 'null' - catch_up: - type: boolean - default: false - description: Whether the employee should use a benefit's "catch up" rate. Only Roth 401k and 401k benefits use this value for employees over 50. - coverage_amount: - type: - - string - - 'null' - description: 'The amount that the employee is insured for. Note: company contribution cannot be present if coverage amount is set.' - coverage_salary_multiplier: - type: string - default: '0.00' - description: '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: - description: 'Whether the employee deduction reduces taxable income or not. Only valid for Group Term Life benefits. Note: when the value is not "unset", coverage amount and coverage salary multiplier are ignored.' - anyOf: - - type: string - enum: - - unset - - reduces_taxable_income - - does_not_reduce_taxable_income - - type: 'null' - company_contribution: - type: string - default: '0.00' - description: The amount to be paid, per pay period, by the company. - deprecated: true - contribute_as_percentage: - type: boolean - default: false - description: Whether the company contribution amount should be treated as a percentage to be deducted from each payroll. - deprecated: true - effective_date: - type: string - format: date - default: '1970-01-01' - description: The date the employee benefit will start. If not provided, the benefit will be effective from 1970-01-01 (unix epoch). - expiration_date: - type: - - string - - 'null' - format: date - default: - description: The date the employee benefit will expire. A null value indicates the benefit will not expire. - required: - - company_benefit_uuid - x-examples: - Example: - company_benefit_uuid: f68abb42-431e-4392-bc3f-2795627e00f3 - active: true - employee_deduction: '100.00' - contribution: - type: amount - value: '100.00' - Employee-Benefit-Update-Request: - description: '' - type: object - properties: - version: - type: string - description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/versioning#object-layer) for information on how to use this field. - active: - type: boolean - description: Whether the employee benefit is active. - employee_deduction: - type: string - default: '0.00' - description: The amount to be deducted, per pay period, from the employee's pay. - deduct_as_percentage: - type: boolean - description: Whether the employee deduction amount should be treated as a percentage to be deducted from each payroll. - employee_deduction_annual_maximum: - type: - - string - - 'null' - description: The maximum employee deduction amount per year. A null value signifies no limit. - effective_date: - type: string - format: date - description: The date the employee benefit will start. - expiration_date: - type: - - string - - 'null' - format: date - description: The date the employee benefit will expire. A null value indicates the benefit will not expire. - contribution: - type: object - description: An object representing the type and value of the company contribution. - properties: - type: - type: string - enum: - - amount - - percentage - - tiered - description: |- - The company contribution scheme. + scope: `reverse_wire_transactions:read` + tags: + - Reverse Wire Transactions + x-gusto-integration-type: + - embedded + responses: + '200': + description: Example response + content: + application/json: + schema: + "$ref": "#/components/schemas/Reverse-Wire-Transaction-List" + '404': + description: | + Not Found - `amount`: The company contributes a fixed amount per payroll. If elective is true, the contribution is matching, dollar-for-dollar. + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + "/v1/employees/{employee_id}/salary_estimates": + post: + summary: Create a salary estimate for an employee + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + required: true + description: The UUID of the employee + schema: + type: string + x-gusto-rswag: true + operationId: post-v1-employees-employee_id-salary_estimates + security: + - CompanyAccessAuth: [] + description: |- + Create a salary estimate for an employee. This endpoint helps calculate a reasonable salary for S Corp owners based on their occupation, experience level, location, and business revenue. - `percentage`: The company contributes a percentage of the payroll amount per payroll period. If elective is true, the contribution is matching, dollar-for-dollar. + A salary estimate must include: + - Annual net revenue of the business + - ZIP code for location-based salary data + - One or more occupations with experience levels and time percentages (must sum to 100%) - `tiered`: The size of the company contribution corresponds to the size of the employee deduction relative to a tiered matching scheme. - value: - description: |- - For the `amount` and `percentage` contribution types, the value of the corresponding amount or percentage. + Only one in-progress salary estimate can exist per employee at a time. If an in-progress estimate already exists, you must either accept it or use the update endpoint. - For the `tiered` contribution type, an array of tiers. - oneOf: - - type: string - description: For the `amount` and `percentage` contribution types, the value of the corresponding amount or percentage. - - type: array - description: For `tiered` contribution types, an array of tiers. + scope: `salary_estimates:write` + tags: + - Salary Estimates + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '201': + description: successfully created + content: + application/json: + schema: + "$ref": "#/components/schemas/Salary-Estimate" + '422': + description: unprocessable entity - invalid parameters + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + required: + - zip_code + - occupations + properties: + annual_net_revenue: + type: + - number + - 'null' + description: The annual net revenue of the business (must be greater than 0) + example: 500000 + zip_code: + type: string + description: The ZIP code for location-based salary calculations + pattern: "^\\d{5}$" + example: '94107' + occupations: + type: array + description: Array of occupations. Time percentages must sum to 100%. + minItems: 1 items: type: object - description: A single tier of a tiered matching scheme. + required: + - code + - experience_level + - time_percentage properties: - rate: + code: type: string - description: The percentage of employee deduction within this tier the company contribution will match. - threshold: + description: Bureau of Labor Statistics (BLS) occupation code + example: '151252' + experience_level: type: string - description: |- - Specifies the upper limit (inclusive) percentage of the employee contribution that this tier applies to. - - Use threshold to define each tier's end point, with tiers applied cumulatively from 0% upwards. - - For example: - - If the first tier has a threshold of "3", and rate of "100", the company will match 100% of employee contributions from 0% up to and including 3% of payroll. - - If the next tier has a threshold of "5" and a rate of "50", the company will match 50% of contributions from above 3% up to and including 5% of payroll. - elective: - type: boolean - description: 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`. - default: false - company_contribution_annual_maximum: - type: - - string - - 'null' - description: The maximum company contribution amount per year. A null value signifies no limit. - limit_option: - description: |- - Some benefits require additional information to determine - their limit. - - `Family` or `Individual`: Applicable to HSA benefit. - - `Joint Filing or Single` or `Married and Filing Separately`: Applicable to Dependent Care FSA benefit. - anyOf: - - type: string - enum: - - Family - - Individual - - Joint Filing or Single - - Married and Filing Separately - - type: 'null' - catch_up: - type: boolean - default: false - description: Whether the employee should use a benefit's "catch up" rate. Only Roth 401k and 401k benefits use this value for employees over 50. - coverage_amount: - type: - - string - - 'null' - description: 'The amount that the employee is insured for. Note: company contribution cannot be present if coverage amount is set.' - deduction_reduces_taxable_income: - description: 'Whether the employee deduction reduces taxable income or not. Only valid for Group Term Life benefits. Note: when the value is not "unset", coverage amount and coverage salary multiplier are ignored.' - anyOf: - - type: string - enum: - - unset - - reduces_taxable_income - - does_not_reduce_taxable_income - - type: 'null' - default: unset - coverage_salary_multiplier: - type: string - default: '0.00' - description: '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.' - company_contribution: - type: string - default: '0.00' - description: The amount to be paid, per pay period, by the company. - deprecated: true - contribute_as_percentage: - type: boolean - default: false - description: Whether the company contribution amount should be treated as a percentage to be deducted from each payroll. - deprecated: true - required: - - version - x-examples: - Example: - version: '09j3d29jqdpj92109j9j2d90dq' - employee_deduction: '250.00' - Paid-Holiday: - type: object - description: A paid holiday derived from the company's holiday pay policy - x-examples: - success_status: - holiday_name: New Year's Day - holiday_key: new_years_day - start_date: '2023-01-02' - end_date: '2023-01-02' - properties: - holiday_key: - type: - - string - - 'null' - description: The holiday's identifier (null for custom holidays) - holiday_name: - type: string - description: The holiday's official name - start_date: - type: string - description: The holiday's start date (YYYY-MM-DD) - end_date: - type: string - description: The holiday's end date (YYYY-MM-DD) - Ach-Transaction-List: - type: array - items: - "$ref": "#/components/schemas/Ach-Transaction" - x-examples: - example: - - uuid: 123e4567-e89b-12d3-a456-426655440000 - company_uuid: 456e7890-e12b-34c5-d678-901234567890 - payment_event_type: Payroll - payment_event_uuid: 789e0123-e45f-67ab-c890-123456789012 - recipient_type: Employee - recipient_uuid: 012e3456-f78d-90ab-12cd-345678901234 - error_code: - transaction_type: Credit employee pay - payment_status: submitted - payment_direction: credit - payment_event_check_date: '2023-10-02' - payment_date: '2023-10-17' - amount: '123.00' - description: PAY 380654 - Wire-In-Request-List: - type: array - items: - "$ref": "#/components/schemas/Wire-In-Request" - x-examples: - example: - - uuid: c5fdae57-5483-4529-9aae-f0edceed92d4 - status: awaiting_funds - origination_bank: JP Morgan Chase - origination_bank_address: 1 Chase Plaza, New York, NY 10081 - recipient_name: Gusto, Inc - recipient_address: 525 20th Street, San Francisco, CA 94107 - recipient_account_number: '21911761' - recipient_routing_number: '123454321' - additional_notes: - bank_name: - date_sent: - unique_tracking_code: 1trvxwxp57zf - payment_type: Payroll - payment_uuid: 5faae454-e629-490b-a72a-c022c2c9e6bc - amount_sent: - requested_amount: '1014500.00' - wire_in_deadline: '2024-06-21T18:00:00Z' - - uuid: a47fc11d-8d92-4b3e-9f2a-3a23b9d8e7d1 - status: awaiting_funds - origination_bank: JP Morgan Chase - origination_bank_address: 1 Chase Plaza, New York, NY 10081 - recipient_name: Gusto, Inc - recipient_address: 525 20th Street, San Francisco, CA 94107 - recipient_account_number: '21911761' - recipient_routing_number: '123454321' - additional_notes: - bank_name: - date_sent: - unique_tracking_code: 6kfhwxq2crsm - payment_type: ContractorPaymentGroup - payment_uuid: 8b6c3d70-9b8e-4d4d-b6a1-a1f3a6d9b2c4 - amount_sent: - requested_amount: '15000.00' - wire_in_deadline: '2024-06-21T18:00:00Z' - Wire-In-Request-Update-Request-Body: - type: object - properties: - date_sent: - type: string - description: The date the wire was sent - example: '2024-06-10' - bank_name: - type: string - description: Name of the bank sending the wire - example: Chase - amount_sent: - type: string - description: Amount of money sent - example: '314500.00' - additional_notes: - type: string - description: Additional notes - example: Wire for 2024-06-15 payroll. - required: - - date_sent - - bank_name - - amount_sent - Employee-Payment-Details-List: - type: array - description: A list of employee payment details. - x-examples: - success_status: - - employee_uuid: e2c4c0ce-2986-48b9-86cf-ec27f6ed9a36 - first_name: Soren - last_name: Kierkegaard - payment_method: Direct Deposit - split_by: Percentage - splits: - - bank_account_uuid: 1531e824-8d9e-4bd8-9f90-0d04608125d7 - name: Primary Checking - hidden_account_number: XXXX1207 - encrypted_account_number: mbNLVOm7psP16ocqXso5ZtzOXBrA-5Q-.zarrdLBmyYDDK4kCkF2reKtzx8udK8iDabtW - routing_number: '055003201' - account_type: Checking - priority: 1 - split_amount: 100 - - employee_uuid: 6b7e4b51-2e2d-4b54-9f37-7b9d0e9fa5d2 - first_name: Autumn - last_name: Connelly - payment_method: Check - split_by: - splits: - items: - type: object - properties: - employee_uuid: - type: string - description: The UUID of the employee. - readOnly: true - first_name: + description: Experience level for this occupation + enum: + - novice + - intermediate + - average + - skilled + - expert + example: skilled + time_percentage: + type: string + format: float + description: Percentage of time spent in this occupation (as decimal, e.g., 1.0 = 100%) + minimum: 0 + maximum: 1 + example: '1.0' + primary: + type: boolean + description: Whether this is the primary occupation + example: true + required: true + "/v1/salary_estimates/{uuid}": + get: + summary: Get a salary estimate + parameters: + - name: X-Gusto-API-Version + in: header + schema: type: string - description: The legal first name of the employee. - readOnly: true - last_name: + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: uuid + in: path + required: true + description: The UUID of the salary estimate + schema: type: string - description: The last name of the employee. - readOnly: true - payment_method: + x-gusto-rswag: true + operationId: get-v1-salary_estimates-id + security: + - CompanyAccessAuth: [] + description: |- + Retrieve a salary estimate by its UUID. Returns the estimated salary calculation along with all occupation details, revenue, and location information. + + scope: `salary_estimates:read` + tags: + - Salary Estimates + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Salary-Estimate" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + put: + summary: Update a salary estimate + parameters: + - name: X-Gusto-API-Version + in: header + schema: type: string enum: - - Direct Deposit - - Check - description: The type of payment method. - readOnly: true - split_by: - anyOf: - - type: string - enum: - - Amount - - Percentage - - type: 'null' - description: How the payment is split. This field is applicable when `payment_method` is "Direct Deposit". If `split_by` is Percentage, then the split amounts must add up to exactly 100. If `split_by` is Amount, the last split amount must be `null` to capture the remainder. - readOnly: true - splits: - type: - - array - - 'null' - description: An array of payment splits. This field is applicable when `payment_method` is "Direct Deposit". - items: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: uuid + in: path + required: true + description: The UUID of the salary estimate + schema: + type: string + x-gusto-rswag: true + operationId: put-v1-salary_estimates-id + security: + - CompanyAccessAuth: [] + description: |- + Update an existing salary estimate. You can modify the annual net revenue, ZIP code, and occupations. + + The salary estimate must not be finalized (accepted). Once accepted, salary estimates become read-only for record-keeping purposes. + + scope: `salary_estimates:write` + tags: + - Salary Estimates + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Salary-Estimate" + '422': + description: unprocessable entity - already finalized + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + requestBody: + content: + application/json: + schema: type: object + required: + - zip_code + - occupations properties: - bank_account_uuid: - type: string - description: The UUID of the bank account. - name: - type: string - description: The name of the bank account. - hidden_account_number: - type: string - description: An obfuscated version of the account number which can be used for display purposes. - encrypted_account_number: - type: - - string - - 'null' - description: Ciphertext containing the full bank account number, which must be decrypted using a key provided by Gusto. Only visible with the `employee_payment_methods:read:account_number` scope. - routing_number: - type: string - description: The routing number of the bank account. - account_type: - type: string - description: The bank account type (e.g., "Checking" or "Savings"). - priority: - type: integer - description: The order of priority for each payment split, with priority 1 being the first bank account paid. Priority must be unique and sequential. - split_amount: + annual_net_revenue: type: - number - 'null' - description: If `split_by` is 'Amount', this is in cents (e.g., 500 for $5.00) and exactly one account must have a `split_amount` of `null` to capture the remainder. If `split_by` is 'Percentage', this is the percentage value (e.g., 60 for 60%). - readOnly: true - Plaid-Processor-Token-Request: - type: object - description: Request body for creating a verified company bank account from a Plaid processor token. - required: - - owner_type - - owner_id - - processor_token - properties: - owner_type: - description: The owner type of the bank account - type: string - enum: - - Company - owner_id: - description: The owner UUID of the bank account - type: string - processor_token: - description: The Plaid processor token - type: string - x-examples: - example: - owner_type: Company - owner_id: ef279fbd-0fc6-4cf1-a977-6939d621c429 - processor_token: processor-sandbox-0asd1-a92nc - Payroll-Reversal-List: - type: array - items: - "$ref": "#/components/schemas/Payroll-Reversal" - x-examples: - Example: - - reversed_payroll_uuid: '09505984-8d8c-41a3-adbe-5740322ae8e9' - reversal_payroll_uuid: '0424688e-0a2e-4cd0-ac86-42283e788fb3' - reason: Customer Request - approved_at: - category: convert_check_ee_requested - reversed_employee_uuids: - - 5f036964-185e-4c85-bbf2-3873e1203b30 - Time-Off-Activity-List: - type: array - description: A list of time off activities for an employee - items: - "$ref": "#/components/schemas/Time-Off-Activity" - x-examples: - example: - - policy_uuid: a7838f74-4c29-4b70-9bfb-02a4e3e60709 - time_off_type: vacation - policy_name: Paid Time Off - event_type: TimeOffEvent::AddToPolicy - event_description: 'Added to policy: Vacation Per Hour Worked' - effective_time: '2022-09-27T13:43:03.000-07:00' - balance: '0.0' - balance_change: '0.0' - - policy_uuid: a7838f74-4c29-4b70-9bfb-02a4e3e60709 - time_off_type: vacation - policy_name: Paid Time Off - event_type: TimeOffEvent::Accrual - event_description: Accrual - effective_time: '2022-09-27T14:43:03.000-07:00' - balance: '2.0' - balance_change: '2.0' - External-Payroll-Create-Request: - type: object - description: The request body for creating an external payroll. - x-tags: - - External Payrolls - required: - - check_date - - payment_period_start_date - - payment_period_end_date - properties: - check_date: - type: string - format: date - description: The check date of the external payroll. - example: '2022-06-03' - payment_period_start_date: - type: string - format: date - description: The start date of the external payroll payment period. - example: '2022-05-15' - payment_period_end_date: - type: string - format: date - description: The end date of the external payroll payment period. - example: '2022-05-30' - External-Payroll-Update-Request: - type: object - description: The request body for updating an external payroll with employee payroll items. - x-tags: - - External Payrolls - required: - - external_payroll_items - properties: - replace_fields: - type: boolean - description: Patch update external payroll items when set to true, otherwise it will overwrite the previous changes. - external_payroll_items: - type: array - description: Payroll items for each employee in the external payroll. - items: - type: object - required: - - employee_uuid - properties: - employee_uuid: - type: string - format: uuid - description: The UUID of the employee. - example: 44f7cba9-7a3d-4f08-b7bd-6fcf5211f8ca - earnings: - type: array - description: Earnings for the employee. - items: - type: object - properties: - earning_type: - type: string - enum: - - CompanyPayType - - CompanyEarningType - description: The earning type class name. - example: CompanyPayType - earning_id: - type: integer - description: The ID of the earning type. - example: 1 - amount: - type: string - format: float - description: The earning amount in dollars. - example: '10000.00' - hours: - type: string - format: float - description: The number of hours worked. - example: '80.0' - benefits: - type: array - description: Benefits for the employee. - items: - type: object - properties: - benefit_id: - type: integer - description: The ID of the company benefit. - example: 22 - company_contribution_amount: - type: string - format: float - description: The company contribution amount in dollars. - example: '100.00' - employee_deduction_amount: - type: string - format: float - description: The employee deduction amount in dollars. - example: '50.00' - taxes: - type: array - description: Taxes for the employee. - items: - type: object - properties: - tax_id: - type: integer - description: The ID of the tax. - example: 1 - amount: - type: string - format: float - description: The tax amount in dollars. - example: '400.00' - Tax-Liability-Selections-Request: - type: object - description: The request body for updating tax liability selections. - x-tags: - - External Payrolls - required: - - liability_selections - properties: - liability_selections: - type: array - description: Tax liability selections to record for the company's external payrolls. - items: - type: object - required: - - tax_id - - last_unpaid_external_payroll_uuid - - unpaid_liability_amount - properties: - tax_id: - type: integer - description: The ID of the tax. - example: 1 - last_unpaid_external_payroll_uuid: - type: - - string - - 'null' - description: The UUID of the last external payroll with an unpaid liability for this tax. Set to `null` to indicate no liability. - example: 1bf1efe1-72d4-4e6e-a181-611f3ea66435 - unpaid_liability_amount: - type: string - format: float - description: The total cumulative unpaid liability amount for this tax across all external payrolls up to and including the one specified by `last_unpaid_external_payroll_uuid`. - example: '47.5' - Contractor-Payments-Preview-Body: - description: Request body for previewing contractor payments. The expected debit date for the payments is calculated from the provided check date and the company's ACH speed. - type: object - required: - - contractor_payments - properties: - contractor_payments: - type: array - description: A list of contractor payments to preview. - items: - type: object - properties: - contractor_uuid: - type: string - description: The contractor receiving the payment. - date: - type: string - description: Date of the contractor payment (check date). - payment_method: - type: string - enum: - - Direct Deposit - - Check - - Historical Payment - description: The payment method. - wage: - type: integer - description: Fixed wage amount for the payment. - hours: - type: integer - description: Number of hours worked for the payment. - hourly_rate: - type: integer - description: Hourly rate for the payment. - bonus: - type: integer - description: Bonus amount for the payment. - reimbursement: - type: integer - description: Reimbursement amount for the payment. - x-examples: - Example: - contractor_payments: - - bonus: 0 - date: '2022-09-02' - contractor_uuid: 5376e95b-cca0-482b-bb81-aba5e360eb04 - hours: 0 - payment_method: Check - reimbursement: 0 - wage: 123 - hourly_rate: 0 - - bonus: 0 - date: '2022-09-02' - contractor_uuid: 0c984dce-de9a-47db-8bfb-5f0c823afe6f - hours: 0 - payment_method: Check - reimbursement: 0 - wage: 456 - hourly_rate: 0 - x-tags: - - Contractor Payments - Contractor-Payments-Preview: - type: object - description: The expected debit date computed for a set of previewed contractor payments. - properties: - expected_debit_date: - type: string - format: date - description: The calculated debit date. If the payment method is Direct Deposit, the debit date will account for the company's ACH speed. If the payment method is Check, the debit date will be the same as the check date. - x-examples: - example: - expected_debit_date: '2022-08-16' - x-tags: - - Contractor Payments - Ytd-Benefit-Amounts-From-Different-Company-Body: - type: object - description: Year-to-date benefit amounts contributed at a different company for the specified employee. - properties: - benefit_type: - type: integer - description: The benefit type supported by Gusto. - tax_year: - type: number - minimum: 2000 - maximum: 2999 - description: The tax year for which this amount applies. - ytd_employee_deduction_amount: - type: string - default: '0.00' - description: The year-to-date employee deduction made outside the current company. - ytd_company_contribution_amount: - type: string - default: '0.00' - description: The year-to-date company contribution made outside the current company. - required: - - benefit_type - - tax_year - - ytd_employee_deduction_amount - - ytd_company_contribution_amount - x-tags: - - Employee Benefits - Employee-Bank-Account-Request: - type: object - description: Request body for creating or updating an employee bank account. Send these fields as top-level JSON keys (the API wraps them server-side). - properties: - routing_number: - type: string - description: The bank routing number (nine digits). - example: '266905059' - account_number: - type: string - description: The bank account number. - example: '5809431207' - account_type: - type: string - description: The bank account type. - example: Checking - enum: - - Checking - - Savings - name: - type: string - description: A name for the bank account (e.g. "Primary Checking"). - example: BoA Checking Account - required: - - routing_number - - account_number - - account_type - - name - Printable-Payroll-Checks-Body: - description: Request body for generating printable payroll checks. - type: object - required: - - printing_format - properties: - printing_format: - type: string - enum: - - top - - bottom - description: The type of check stock being printed. Check the "Types of check stock" section in this [link](https://support.gusto.com/article/999877761000000/Pay-your-team-by-check) for more info on check types - starting_check_number: - type: integer - description: The starting check number we will start generating checks from. Use to override the sequence that will be used to generate check numbers. - x-tags: - - Payrolls - Create-Report-Body: - description: Request body for creating a custom report. - type: object - required: - - columns - - groupings - - file_type - properties: - columns: - type: array - description: Columns to include in the report - items: + description: The annual net revenue of the business (must be greater than 0) + example: 600000 + zip_code: + type: string + description: The ZIP code for location-based salary calculations + pattern: "^\\d{5}$" + example: '94107' + occupations: + type: array + description: Array of occupations. Time percentages must sum to 100%. + minItems: 1 + items: + type: object + required: + - code + - experience_level + - time_percentage + properties: + code: + type: string + description: Bureau of Labor Statistics (BLS) occupation code + example: '151252' + experience_level: + type: string + description: Experience level for this occupation + enum: + - novice + - intermediate + - average + - skilled + - expert + example: expert + time_percentage: + type: string + format: float + description: Percentage of time spent in this occupation (as decimal, e.g., 0.5 = 50%) + minimum: 0 + maximum: 1 + example: '0.6' + primary: + type: boolean + description: Whether this is the primary occupation + example: true + required: true + "/v1/salary_estimates/{uuid}/accept": + post: + summary: Accept a salary estimate + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: uuid + in: path + required: true + description: The UUID of the salary estimate + schema: + type: string + x-gusto-rswag: true + operationId: post-v1-salary_estimates-uuid-accept + security: + - CompanyAccessAuth: [] + description: |- + Accept and finalize a salary estimate. This associates the estimate with an employee job and marks it as accepted. + + Once accepted, the salary estimate becomes read-only for record-keeping purposes. The accepted salary can then be used to set up compensation for the employee. + + scope: `salary_estimates:write` + tags: + - Salary Estimates + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Salary-Estimate" + '422': + description: unprocessable entity - invalid employee job + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + required: + - employee_job_uuid + properties: + employee_job_uuid: + type: string + description: The UUID of the employee job to associate with this salary estimate + example: 7f5d3d93-6d6f-48c0-9f4e-cd12c2d3e4b2 + required: true + "/v1/salary_estimates/occupations": + get: + summary: Search for BLS occupations + parameters: + - name: X-Gusto-API-Version + in: header + schema: type: string enum: - - bank_account_account_number - - bank_account_routing_number - - bank_account_type - - bank_account - - bonus - - cash_tips - - check_amount - - check_date - - commission - - date_of_birth - - double_overtime_earnings - - double_overtime_hours - - double_overtime_rate - - employee_additional_taxes - - employee_benefit_contributions - - employee_compensation_time_period - - employee_compensation - - employee_deductions - - employee_department - - employee_email - - employee_donations - - employee_federal_income_tax - - employee_first_name - - employee_last_name - - employee_middle_initial - - employee_medicare_additional_tax - - employee_medicare_tax - - employee_phone_number - - employee_social_security_tax - - employee_taxes - - employee_uuid - - employee_work_email - - employer_additional_taxes - - employer_benefit_contributions - - employer_cost - - employer_futa_tax - - employer_medicare_tax - - employer_social_security_tax - - employer_suta_tax - - employer_taxes - - employment_type - - employment - - end_date - - garnishments - - gross_earnings - - holiday_earnings - - holiday_hours - - home_address_city - - home_address_state - - home_address_street - - home_address_zip - - home_address - - job_title - - net_pay - - one_time_reimbursements - - overtime_earnings - - overtime_hours - - overtime_rate - - paid_time_off_earnings - - paid_time_off_hours - - paid_time_off_rate - - pay_period_end - - pay_period_start - - paycheck_tips - - payment_method - - payroll_type - - payroll_uuid - - preferred_first_name - - recurring_reimbursements - - regular_earnings - - regular_hours - - regular_rate - - reimbursements - - risk_class_code - - sick_rate - - sick_time_off_earnings - - sick_time_off_hours - - start_date - - total_employer_benefit_contributions - - total_time_off_earnings - - total_time_off_hours - - work_address_city - - work_address_street - - work_address_zip - groupings: - type: array - description: How to group the report - items: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: search + in: query + required: true + description: Search term for occupation (minimum 3 characters) + example: software + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-salary_estimates-occupations + security: + - SystemAccessAuth: [] + description: "Search for Bureau of Labor Statistics (BLS) occupations by name or keyword. This endpoint helps users find the appropriate occupation codes to use when creating or updating salary estimates.\n\nReturns a list of matching occupations with their codes, titles, and descriptions.\n\n\U0001F4D8 System Access Authentication\n\nThis endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access)\n\nscope: `salary_estimates:read`" + tags: + - Salary Estimates + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: successful + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/BLS-Occupation" + '422': + description: unprocessable entity - search term too short + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + "/v1/sandbox/generate_w2": + post: + summary: Generate a W2 form [DEMO] + parameters: + - name: X-Gusto-API-Version + in: header + schema: type: string enum: - - payroll - - employee - - work_address - - work_address_state - custom_name: - type: string - description: The title of the report - file_type: - type: string - description: The type of file to generate - enum: - - csv - - json - - pdf - with_totals: - type: boolean - description: Whether to include subtotals and grand totals in the report - default: false - start_date: - type: string - format: date - description: Start date of data to filter by - example: '2024-01-01' - end_date: - type: string - format: date - description: End date of data to filter by - example: '2024-04-01' - dismissed_start_date: - type: string - format: date - description: Dismissed start date of employees to filter by - example: '2024-01-01' - dismissed_end_date: - type: string - format: date - description: Dismissed end date of employees to filter by - example: '2024-04-01' - payment_method: - type: string - description: Payment method to filter by - enum: - - check - - direct_deposit - employment_type: - type: string - description: Employee employment type to filter by - enum: - - exempt - - salaried_nonexempt - - nonexempt - - commission_only_exempt - - commission_only_nonexempt - employment_status: - type: string - description: Employee employment status to filter by - enum: - - active_full_time - - active_part_time - - active_part_time_eligible - - active_variable - - active_seasonal - - active - - dismissed - employee_uuids: - type: - - array - - 'null' - description: Employees to filter by - items: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + operationId: post-v1-sandbox-generate_w2 + security: + - CompanyAccessAuth: [] + description: "> \U0001F6A7 Demo action\n>\n> This action is only available in the Demo environment\n\nGenerates a W2 document for testing purposes.\n\nscope: `employees:write`" + tags: + - Employee Forms + x-gusto-integration-type: + - embedded + responses: + '201': + description: Created + content: + application/json: + schema: + "$ref": "#/components/schemas/Form" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + properties: + employee_id: + type: string + description: The employee UUID. + year: + type: integer + description: 'Must be equal to or more recent than 2015. If not specified, defaults to the previous year. + +' + required: + - employee_id + required: true + x-speakeasy-group: employeeForms + x-speakeasy-name-override: generateW2 + "/v1/sandbox/generate_1099": + post: + summary: Generate a 1099 form [DEMO] + parameters: + - name: X-Gusto-API-Version + in: header + schema: type: string - department_uuids: - type: array - description: Departments to filter by - items: + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + operationId: post-v1-sandbox-generate_1099 + security: + - CompanyAccessAuth: [] + description: "> \U0001F6A7 Demo action\n>\n> This action is only available in the Demo environment\n\nGenerates a 1099 document for testing purposes.\n\nscope: `contractors:write`" + tags: + - Contractor Forms + x-gusto-integration-type: + - embedded + responses: + '201': + description: Created + content: + application/json: + schema: + "$ref": "#/components/schemas/Form_1099" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + properties: + contractor_id: + type: string + description: The contractor UUID. + year: + type: integer + description: 'Must be equal to or more recent than 2015. If not specified, defaults to the previous year. + +' + required: + - contractor_id + required: true + x-speakeasy-group: contractorForms + x-speakeasy-name-override: generate1099 + "/v1/companies/{company_uuid}/signatories": + get: + summary: Get the signatories for a company + parameters: + - name: X-Gusto-API-Version + in: header + schema: type: string - work_address_uuids: - type: array - description: Work addresses to filter by - items: + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-companies-company_uuid-signatories + security: + - CompanyAccessAuth: [] + description: |- + Returns the signatories for a company. A company has at most one signatory. + + ## Related guides + - [Signatory Events](doc:signatory-events) + + scope: `signatories:read` + tags: + - Signatories + x-gusto-integration-type: + - embedded + responses: + '200': + description: Successful + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Signatory" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: list + post: + summary: Create a signatory + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + operationId: post-v1-company-signatories + security: + - CompanyAccessAuth: [] + description: |- + Creates a company signatory with complete information. The company must not already have a signatory. + + A signatory can legally sign forms once the identity verification process is successful. The signatory should be an officer, owner, general partner or LLC member manager, plan administrator, fiduciary, or an authorized representative who is designated to sign agreements on the company's behalf. An officer is the president, vice president, treasurer, chief accounting officer, etc. There can only be a single primary signatory in a company. + + ### Webhooks + - `signatory.created`: Fires when a signatory is successfully created. + + ### Related guides + - [Signatory Events](doc:signatory-events) + + scope: `signatories:manage` + tags: + - Signatories + x-gusto-integration-type: + - embedded + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Signatory" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Signatory-Create-Request" + required: true + x-speakeasy-name-override: create + "/v1/companies/{company_uuid}/signatories/invite": + post: + summary: Invite a signatory + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: type: string - x-tags: - - Reports - General-Ledger-Report-Body: - description: Request body for generating a general ledger report. The report can be aggregated by different dimensions such as job or department. - type: object - required: - - aggregation - properties: - aggregation: - type: string - enum: - - default - - job - - department - - integration - description: The breakdown of the report. Use 'default' for no split. - integration_type: - description: The kind of integration set up for the company. Required when `aggregation` is 'integration'. Must be null if `aggregation` is not 'integration'. - anyOf: - - type: string - enum: - - xero - - qbo - - type: 'null' - x-tags: - - Reports - General-Ledger-Report: - type: object - description: A request for a general ledger report. The report is generated asynchronously and the URL is available via the report GET endpoint using the returned `request_uuid`. - properties: - payroll_uuid: - type: string - format: uuid - description: The UUID of the payroll record for which the report was generated. - aggregation: - type: string - enum: - - default - - job - - department - - integration - description: The breakdown level used for the report. - integration_type: - type: - - string - - 'null' - description: The `integration_type` used for the report when `aggregation` is 'integration' (e.g., `xero`, `qbo`). Otherwise, this will be null or an empty string. - request_uuid: - type: string - format: uuid - description: UUID to use for polling the report status. - x-examples: - example: - payroll_uuid: a83d0bd8-7d20-43b9-834c-6d514ef6cb20 - aggregation: integration - integration_type: xero - request_uuid: 550e8400-e29b-41d4-a716-446655440000 - Time-Sheet-Create-Body: - type: object - description: Request body for creating a time sheet. - required: - - entity_uuid - - entity_type - - time_zone - - shift_started_at - properties: - entity_uuid: - type: string - description: Unique identifier of the entity associated with the time sheet. - entity_type: - type: string - description: Type of entity associated with the time sheet. - job_uuid: - type: string - description: Unique identifier of the job for which time is tracked. - time_zone: - type: string - description: Time zone of where the time is tracked. - shift_started_at: - type: string - format: date-time - description: ISO 8601 timestamp of when the shift was started. - shift_ended_at: - type: string - format: date-time - description: ISO 8601 timestamp of when the shift was ended. If the shift is still ongoing you can omit this field. - metadata: - type: object - additionalProperties: + x-gusto-rswag: true + operationId: post-v1-companies-company_uuid-signatories-invite + security: + - CompanyAccessAuth: [] + description: |- + Creates a signatory with minimal information. This signatory can be invited to provide more information through the [Update a signatory](ref:put-v1-companies-company_uuid-signatories-signatory_uuid) endpoint. This will start the identity verification process and allow the signatory to be verified to sign documents. + + ## Related guides + - [Signatory Events](doc:signatory-events) + + scope: `signatories:manage` + tags: + - Signatories + x-gusto-integration-type: + - embedded + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Signatory" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Signatory-Invite-Request" + required: true + x-speakeasy-name-override: invite + "/v1/companies/{company_uuid}/signatories/{signatory_uuid}": + put: + summary: Update a signatory + parameters: + - name: X-Gusto-API-Version + in: header + schema: type: string - maxLength: 500 - propertyNames: + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: type: string - maxLength: 40 - maxProperties: 50 - description: Metadata associated with the time sheet. Key-value pairs of arbitrary data. Both keys and values must be strings. - entries: - type: array - description: Entries associated with the time sheet. - items: - type: object - properties: - hours_worked: - type: number - format: float - maxDecimalPlaces: 3 - minimum: 0.001 - description: Hours worked for this pay classification. Should be passed as number with up to 3 decimal places. - pay_classification: - type: string - description: Pay classification for the entry. - enum: - - Regular - - Overtime - - Double overtime - x-examples: - Example: - entity_uuid: 123e4567-e89b-12d3-a456-426614174000 - entity_type: Employee - job_uuid: 123e4567-e89b-12d3-a456-426614174000 - time_zone: America/New_York - shift_started_at: '2024-06-10T09:00:00Z' - shift_ended_at: '2024-06-10T17:00:00Z' - metadata: - custom_field: custom value - entries: - - pay_classification: Regular - hours_worked: 1.5 - x-tags: - - Time Tracking - Time-Sheet-Update-Body: - type: object - description: Request body for updating a time sheet. - allOf: - - "$ref": "#/components/schemas/Versionable-Required" - - type: object - properties: - entity_uuid: - type: string - description: Unique identifier of the entity associated with the time sheet. - example: 123e4567-e89b-12d3-a456-426614174000 - entity_type: - type: string - description: Type of entity associated with the time sheet. - example: Employee - job_uuid: - type: string - description: Unique identifier of the job for which time was tracked. Currently is only supported for employees. - example: 123e4567-e89b-12d3-a456-426614174000 - time_zone: - type: string - description: Time zone of where the time was tracked. - example: America/New_York - shift_started_at: - type: string - format: date-time - description: The start time of the shift. Timestamp should be in ISO8601 - example: '2024-06-10T09:00:00Z' - shift_ended_at: - type: string - format: date-time - description: The end time of the shift. If the shift is still ongoing this will be null. - example: '2024-06-10T17:00:00Z' - metadata: - type: object - additionalProperties: - type: string - maxLength: 500 - propertyNames: - type: string - maxLength: 40 - maxProperties: 50 - description: Metadata associated with the time sheet. Key-value pairs of arbitrary data. Both keys and values must be strings. - entries: - type: array - description: Entries associated with the time sheet. - items: - type: object - properties: - uuid: - type: string - description: Unique identifier of the entry. - hours_worked: - type: number - format: float - maxDecimalPlaces: 3 - minimum: 0.001 - description: Hours worked for this pay classification. Should be passed as number with up to 3 decimal places. - pay_classification: - type: string - description: Pay classification for the entry. - enum: - - Regular - - Overtime - - Double overtime - x-examples: - Example: - version: 72deb67e16f7b92713c00d3582fa6c68 - entity_uuid: 123e4567-e89b-12d3-a456-426614174000 - entity_type: Employee - job_uuid: 123e4567-e89b-12d3-a456-426614174000 - time_zone: America/New_York - shift_started_at: '2024-06-10T09:00:00Z' - shift_ended_at: '2024-06-10T17:00:00Z' - metadata: - custom_field: custom value - entries: - - uuid: 123e4567-e89b-12d3-a456-426614174000 - hours_worked: 1.5 - x-tags: - - Time Tracking - Partner-Managed-Company-Create-Request: - type: object - required: - - user - - company - properties: - user: - type: object - description: Information for the user who will be the primary payroll administrator for the new company. - required: - - first_name - - last_name - - email - properties: - first_name: - type: string - description: The first name of the user who will be the primary payroll admin. - last_name: - type: string - description: The last name of the user who will be the primary payroll admin. - email: - type: string - description: The email of the user who will be the primary payroll admin. - phone: - type: string - description: The phone number of the user who will be the primary payroll admin. - company: - type: object - required: - - name - properties: - name: - type: string - description: The legal name of the company. - trade_name: - type: string - description: The name of the company. - ein: - type: string - description: The employer identification number (EIN) of the company. - contractor_only: - type: boolean - description: Whether the company only supports contractors. Should be set to true if the company has no W-2 employees. If not passed, will default to false (i.e. the company will support both contractors and employees). - x-examples: - Example: - user: - first_name: Frank - last_name: Ocean - email: frank@example.com - phone: '2345558899' - company: - name: Frank's Ocean, LLC - trade_name: Frank's Ocean - ein: '123456789' - contractor_only: false - Partner-Managed-Company: - description: Object returned when creating a partner managed company - type: object - properties: - access_token: - type: string - description: Access token that can be used for OAuth access to the account. Access tokens expire 2 hours after they are issued. - readOnly: true - refresh_token: - type: string - description: Refresh token that can be exchanged for a new access token. - readOnly: true - company_uuid: - type: string - description: Gusto's UUID for the company - readOnly: true - expires_in: - type: integer - description: Time of access_token expiration in seconds - readOnly: true - x-examples: - Example: - access_token: de6780bc506a0446309bd9362820ba8aed28aa506c71eedbe1c5c4f9dd350e54 - refresh_token: 8257e65c97202ed1726cf9571600918f3bffb2544b26e00a61df9897668c33a1 - company_uuid: d525dd21-ba6e-482c-be15-c2c7237f1364 - expires_in: 7200 - Partner-Managed-Company-Migration-Readiness-Response: - description: '' - allOf: - - type: object - properties: - ready_to_migrate: - type: boolean - description: Indicates if the company is ready to be migrated. - company_uuid: - type: string - description: The company UUID - - "$ref": "#/components/schemas/Migration-Blocker" - - "$ref": "#/components/schemas/Migration-Warning" - x-examples: - Example: - ready_to_migrate: false - company_uuid: 39abf9b9-650b-4e67-89a0-389dc6ee8a71 - errors: - - error_key: base - category: invalid_operation - message: The operation is already performed for this company. - metadata: - key: migrated_company - warnings: [] - Partner-Managed-Company-Accept-Terms-Of-Service-Request: - type: object - description: '' - required: - - email - - ip_address - - external_user_id - properties: - email: - type: string - description: The user's email address on Gusto. You can retrieve the user's email via company's `/admins`, `/employees`, `/signatories`, and `/contractors` endpoints. - ip_address: - type: string - description: The IP address of the user who viewed and accepted the Terms of Service. - external_user_id: - type: string - description: The user ID on your platform. - x-examples: - Example: - ip_address: 192.168.1.2 - external_user_id: '2005648946132' - email: jsmith99@gmail.com - Partner-Managed-Company-Retrieve-Terms-Of-Service-Request: - type: object - required: - - email - properties: - email: - type: string - description: The user's email address on Gusto. You can retrieve the user's email via company's `/admins`, `/employees`, `/signatories`, and `/contractors` endpoints. - x-examples: - Example: - email: jsmith99@gmail.com - Partner-Managed-Company-Terms-Of-Service-Response: - description: '' - type: object - properties: - latest_terms_accepted: - type: boolean - description: Whether the latest terms have been accepted by the user. - x-examples: - Example: - latest_terms_accepted: true - Provision-Create-Request-Body: - type: object - required: - - user - - company - properties: - user: - type: object - description: Information for the user who will be the primary payroll administrator for the new company. - required: - - first_name - - last_name - - email - properties: - first_name: - type: string - description: The first name of the user who will be the primary payroll admin. - last_name: - type: string - description: The last name of the user who will be the primary payroll admin. - email: - type: string - description: The email of the user who will be the primary payroll admin. - phone: - type: string - description: The phone number of the user who will be the primary payroll admin. - company: - type: object - required: - - name - properties: - name: - type: string - description: The legal name of the company. - trade_name: - type: string - description: The name of the company. - ein: + - name: signatory_uuid + in: path + description: The UUID of the signatory + required: true + schema: + type: string + x-gusto-rswag: true + operationId: put-v1-companies-company_uuid-signatories-signatory_uuid + security: + - CompanyAccessAuth: [] + description: |- + Updates a signatory that has been either invited or created. If the signatory has been created with minimal information through the [Invite a signatory](ref:post-v1-companies-company_uuid-signatories-invite) endpoint, then the first update must contain all attributes specified in the request body in order to start the identity verification process. + + ## Related guides + - [Signatory Events](doc:signatory-events) + + scope: `signatories:write` + tags: + - Signatories + x-gusto-integration-type: + - embedded + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Signatory" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '409': + description: Conflict + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Signatory-Update-Request" + required: true + x-speakeasy-name-override: update + delete: + summary: Delete a signatory + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: signatory_uuid + in: path + description: The UUID of the signatory + required: true + schema: + type: string + x-gusto-rswag: true + operationId: delete-v1-companies-company_uuid-signatories-signatory_uuid + security: + - CompanyAccessAuth: [] + description: |- + Deletes a company signatory. + + ## Related guides + - [Signatory Events](doc:signatory-events) + + scope: `signatories:manage` + tags: + - Signatories + x-gusto-integration-type: + - embedded + responses: + '204': + description: No Content + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: delete + "/v1/companies/{company_uuid}/tax_payments": + get: + summary: Get all tax payments for a company + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + required: true + description: The UUID of the company + schema: + type: string + - name: jurisdiction + in: query + required: false + explode: false + schema: + type: array + items: type: string - description: The employer identification number (EIN) of the company. - states: - type: array - description: 'The states in which the company operates. States should be included by their two letter code, i.e. NY for New York. ' - items: - type: string - number_employees: - type: number - description: The number of employees in the company. - addresses: - type: array - uniqueItems: false - description: The locations for the company. This includes mailing, work, and filing addresses. - items: - type: object - properties: - street_1: - type: string - street_2: - type: - - string - - 'null' - city: - type: string - zip: - type: string - state: - type: string - phone: - type: string - is_primary: - type: string - description: Whether or not this is a primary address for the company. If set to true, the address will be used as the mailing and filing address for the company and will be added as a work location. If set to false or not included, the address will only be added as a work location for the company. If multiple addresses are included, only one should be marked as primary. - x-examples: - Example: - user: - first_name: Frank - last_name: Ocean - email: frank@example.com - phone: '2345558899' - company: - name: Frank's Ocean, LLC - trade_name: Frank's Ocean - tier: complete - ein: '123456789' - states: - - CO - - CA - number_employees: 8 - addresses: - - street_1: 1201 16th Street Mall - street_2: Suite 350 - city: Denver - zip: '80202' - state: CO - phone: '2345678900' - is_primary: 'true' - - street_1: 525 20th Street - city: San Francisco - zip: '94107' - state: CA - phone: '2345678901' - Provision-Created: - type: object - properties: - account_claim_url: - type: string - description: A URL where the user should be redirected to complete their account setup inside of Gusto. - readOnly: true - x-examples: - Example: - account_claim_url: https://app.gusto.com/claim_account/3456789 - Employee-Home-Address-History-Entry: - description: | - A single entry in an employee's home-address history. Returned in the - `all_home_addresses` array; includes the `effective_date` the address - became active in addition to the shared `Employee-Home-Address` fields. - allOf: - - "$ref": "#/components/schemas/Employee-Home-Address" - - type: object - properties: - effective_date: + description: Filter by tax jurisdiction. Accepts one or more two-letter state codes, or `US` for federal, as a comma-separated list (e.g. `IL,CA`). Codes are case-insensitive. + - name: payroll_uuids + in: query + required: false + explode: false + schema: + type: array + items: type: string - format: date - description: The date the address became effective. - example: - street_1: 412 Kiera Stravenue - street_2: Suite 391 - city: San Francisco - state: CA - zip: '94107' - country: USA - active: true - uud: sample-uuid-123231 - effective_date: '2024-01-01' - Payroll-Digest: - type: object - description: A payroll digest batch request. - x-examples: - success_status: - uuid: a1b2c3d4-e5f6-7890-abcd-ef1234567890 - idempotency_key: 80a74f8b-2c16-45e5-9038-aa108849c6e6 - batch_action: create - status: pending - properties: - uuid: - type: string - format: uuid - description: The unique identifier of the payroll digest batch. - readOnly: true - idempotency_key: - type: string - format: uuid - description: The idempotency key provided when creating the batch. - batch_action: - type: string - enum: - - create - description: The action being performed on the batch. - status: - type: string - enum: - - pending - - processing - - completed - - failed - description: The lifecycle status of the batch request itself. Terminal values are `completed` (processing finished — inspect `results` and `exclusions` for per-company outcomes) and `failed` (request failed; can be retried). This is distinct from the per-company `status` returned inside `results[]` and `exclusions[]`. - required: - - uuid - - idempotency_key - - batch_action - - status - Payroll-Digest-Results: - type: object - description: A payroll digest batch with processing results. - x-examples: - success_status: - uuid: a1b2c3d4-e5f6-7890-abcd-ef1234567890 - idempotency_key: 80a74f8b-2c16-45e5-9038-aa108849c6e6 - status: completed - submitted_at: '2026-04-01T14:30:00Z' - completed_at: '2026-04-01T14:30:12Z' - submitted_items: 4 - processed_items: 2 - excluded_items: 2 - results: - - idx: 0 - entity_type: company - uuid: c1111111-1111-1111-1111-111111111111 - name: Acme Corporation - status: success - blockers: - - type: missing_bank_account - description: Company bank account not set up - payrolls: - - payroll_uuid: - payroll_type: regular - display_title: Run biweekly payroll - auto_payroll: false - status: ready_to_start - pay_period: - start_date: '2026-03-16' - end_date: '2026-03-29' - check_date: '2026-04-03' - run_payroll_by: '2026-03-31' - pay_schedule: - uuid: aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee - frequency: Every other week - custom_name: Custom - every 1st and 15th - totals: - - payroll_uuid: 11111111-2222-3333-4444-555555555555 - payroll_type: regular - display_title: Run biweekly payroll - auto_payroll: true - status: submitted - pay_period: - start_date: '2026-03-02' - end_date: '2026-03-15' - check_date: '2026-03-20' - run_payroll_by: '2026-03-17' - pay_schedule: - uuid: aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee - frequency: Every other week - custom_name: Custom - every 1st and 15th - totals: - total_debit_amount: '15234.56' - net_pay: '11456.78' - total_employer_cost: '16890.12' - - idx: 3 - entity_type: company - uuid: c2222222-2222-2222-2222-222222222222 - name: Widget Inc - status: success - payrolls: [] - exclusions: - - idx: 1 - entity_type: company - uuid: c3333333-3333-3333-3333-333333333333 - status: failed - category: not_found - message: Company not found. - - idx: 2 - entity_type: company - uuid: c4444444-4444-4444-4444-444444444444 - status: failed - category: company_inactive - message: Company is inactive or not fully onboarded. - properties: - uuid: - type: string - format: uuid - description: The unique identifier of the payroll digest batch. - readOnly: true - idempotency_key: - type: string - format: uuid - description: The idempotency key provided when creating the batch. - status: - type: string - enum: - - pending - - processing - - completed - - failed - description: The lifecycle status of the batch request itself. Terminal values are `completed` (processing finished — inspect `results` and `exclusions` for per-company outcomes) and `failed` (request failed; can be retried). This is distinct from the per-company `status` returned inside `results[]` and `exclusions[]`. - submitted_at: - type: string - format: date-time - description: The timestamp when the batch was submitted. - completed_at: - type: - - string - - 'null' - format: date-time - description: The timestamp when the batch processing completed. - submitted_items: - type: - - integer - - 'null' - description: The number of companies submitted in the batch. - processed_items: - type: integer - description: The number of companies successfully processed. Only present once the batch reaches a terminal status. - excluded_items: - type: integer - description: The number of companies excluded from processing. Only present once the batch reaches a terminal status. - results: - type: array - description: Per-company results. Only present once the batch reaches a terminal status. Includes successfully processed companies (with their `payrolls` array, which may be empty when the company has no payrolls in the date window). - items: - type: object - properties: - idx: - type: integer - description: The index of this company in the original POST batch array. - entity_type: - type: string - enum: - - company - description: The type of entity this result represents. - uuid: - type: string - format: uuid - description: The UUID of the company. - name: - type: string - description: The legal/display name of the company. - status: - type: string - enum: - - success - - partial_success - - failed - description: The status of this company's digest computation. - blockers: + description: Filter to tax payments associated with one or more payrolls, given as a comma-separated list of payroll UUIDs. + - name: due_date_from + in: query + required: false + schema: + type: string + format: date + description: Lower-bound (inclusive) date filter on due_date. + - name: due_date_to + in: query + required: false + schema: + type: string + format: date + description: Upper-bound (inclusive) date filter on due_date. + - name: payment_sent_on_from + in: query + required: false + schema: + type: string + format: date + description: Lower-bound (inclusive) date filter on payment_sent_on. + - name: payment_sent_on_to + in: query + required: false + schema: + type: string + format: date + description: Upper-bound (inclusive) date filter on payment_sent_on. + - name: period_start_from + in: query + required: false + schema: + type: string + format: date + description: Lower-bound (inclusive) date filter on period_start. + - name: period_start_to + in: query + required: false + schema: + type: string + format: date + description: Upper-bound (inclusive) date filter on period_start. + - name: period_end_from + in: query + required: false + schema: + type: string + format: date + description: Lower-bound (inclusive) date filter on period_end. + - name: period_end_to + in: query + required: false + schema: + type: string + format: date + description: Upper-bound (inclusive) date filter on period_end. + - name: amount_min + in: query + required: false + schema: + type: number + format: float + description: Lower-bound (inclusive) filter on amount. + - name: amount_max + in: query + required: false + schema: + type: number + format: float + description: Upper-bound (inclusive) filter on amount. + - name: sort_by + in: query + required: false + schema: + type: string + pattern: "^(amount|due_date|payment_sent_on|period_end|period_start)(:(asc|desc))?(,(amount|due_date|payment_sent_on|period_end|period_start)(:(asc|desc))?)*$" + example: amount:asc + description: 'Sort by one or more fields. Options: amount, due_date, payment_sent_on, period_end, period_start. Append `:asc` or `:desc` to specify direction (e.g., `amount:asc`). Defaults to ascending.' + - name: page + in: query + required: false + description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + schema: + type: integer + - name: per + in: query + required: false + description: Number of objects per page. For majority of endpoints will default to 25 + schema: + type: integer + x-gusto-rswag: true + operationId: get-tax-payments + security: + - CompanyAccessAuth: [] + description: |- + Fetches all tax payments Gusto has made (or scheduled) to tax agencies on behalf of a company. + + scope: `tax_payments:read` + tags: + - Tax Payments + x-gusto-integration-type: + - embedded + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Tax-Payment-List" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + "/v1/companies/{company_uuid}/tax_payments/{uuid}": + get: + summary: Get a tax payment for a company + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + required: true + description: The UUID of the company + schema: + type: string + - name: uuid + in: path + required: true + description: The UUID of the tax payment + schema: + type: string + x-gusto-rswag: true + operationId: get-tax-payment + security: + - CompanyAccessAuth: [] + description: |- + Fetches a single tax payment by UUID, including the payroll tax liabilities that make up the payment. + + scope: `tax_payments:read` + tags: + - Tax Payments + x-gusto-integration-type: + - embedded + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Tax-Payment" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + "/v1/employees/{employee_id}/terminations": + get: + summary: Get terminations for an employee + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-employees-employee_id-terminations + security: + - CompanyAccessAuth: [] + description: |- + Terminations are created whenever an employee is scheduled to leave the company. The only things required are an effective date (their last day of work) and whether they should receive their wages in a one-off termination payroll or with the rest of the company. + + Note that some states require employees to receive their final wages within 24 hours (unless they consent otherwise,) in which case running a one-off payroll may be the only option. + + scope: `employments:read` + tags: + - Employee Employments + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: Successful + content: + application/json: + schema: type: array - description: Reasons the company cannot currently run payroll. Applies to every payroll in this company's `payrolls` array — blockers are evaluated at the company level, not per payroll. Empty when there are no blockers. items: - type: object + "$ref": "#/components/schemas/Termination" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: employeeEmployments + x-speakeasy-name-override: getTerminations + post: + summary: Create an employee termination + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + x-gusto-rswag: true + operationId: post-v1-employees-employee_id-terminations + security: + - CompanyAccessAuth: [] + description: |- + Create a termination for an employee. The only things required are an effective date (their last day of work) and whether they should receive their wages in a one-off termination payroll or with the rest of the company. + + Note that some states require employees to receive their final wages within 24 hours (unless they consent otherwise,) in which case running a one-off payroll may be the only option. + + scope: `employments:write` + tags: + - Employee Employments + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '201': + description: Created + content: + application/json: + schema: + "$ref": "#/components/schemas/Termination" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + properties: + effective_date: + type: string + description: The employee's last day of work. + example: '2020-06-30' + run_termination_payroll: + type: boolean + description: 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. + default: false + example: true + required: + - effective_date + example: + effective_date: '2020-06-30' + run_termination_payroll: false + required: true + x-speakeasy-name-override: createTermination + x-speakeasy-group: employeeEmployments + delete: + summary: Delete an employee termination + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + x-gusto-rswag: true + operationId: delete-v1-employees-employee_id-terminations + security: + - CompanyAccessAuth: [] + description: |- + Delete an employee termination. + + scope: `employments:write` + tags: + - Employee Employments + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '204': + description: No Content + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-speakeasy-group: employeeEmployments + x-speakeasy-name-override: deleteTermination + "/v1/terminations/{employee_id}": + get: + summary: Get an employee termination + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + x-gusto-rswag: true + operationId: get-v1-terminations-employee_id + security: + - CompanyAccessAuth: [] + description: |- + Terminations are created whenever an employee is scheduled to leave the company. The only things required are an effective date (their last day of work) and whether they should receive their wages in a one-off termination payroll or with the rest of the company. + + Note that some states require employees to receive their final wages within 24 hours (unless they consent otherwise,) in which case running a one-off payroll may be the only option. + + scope: `employments:read` + tags: + - Employee Employments + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Termination" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + put: + summary: Update an employee termination + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + x-gusto-rswag: true + operationId: put-v1-terminations-employee_id + security: + - CompanyAccessAuth: [] + description: |- + Terminations are created whenever an employee is scheduled to leave the company. The only things required are an effective date (their last day of work) and whether they should receive their wages in a one-off termination payroll or with the rest of the company. + + Note that some states require employees to receive their final wages within 24 hours (unless they consent otherwise,) in which case running a one-off payroll may be the only option. + + scope: `employments:write` + tags: + - Employee Employments + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Termination" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + allOf: + - "$ref": "#/components/schemas/Versionable-Required" + - type: object properties: - type: - type: string - description: A machine-readable blocker key (e.g. `missing_bank_account`). - description: + effective_date: type: string - description: Human-readable description of the blocker. - payrolls: + description: The employee's last day of work. + example: '2020-06-30' + run_termination_payroll: + type: boolean + description: 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. + default: false + example: true + required: + - effective_date + example: + version: d487dd0b55dfcacdd920ccbdaeafa351 + effective_date: '2020-06-30' + run_termination_payroll: false + required: true + x-speakeasy-group: employeeEmployments + x-speakeasy-name-override: updateTermination + "/v1/companies/{company_uuid}/time_off/admin_approved_requests": + post: + summary: Create an admin-approved time off request + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + operationId: post-v1-companies-company_uuid-time_off-admin_approved_requests + security: + - CompanyAccessAuth: [] + description: |- + Create a pre-approved time off request on behalf of an employee (admin or system initiated). + The request is always created with approved status. + + scope: `time_off_requests:manage` + tags: + - Time Off Requests + x-gusto-integration-type: + - embedded + responses: + '201': + description: created + content: + application/json: + schema: + "$ref": "#/components/schemas/Embedded-Time-Off-Request" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + properties: + employee_uuid: + type: string + description: The UUID of the employee + policy_uuid: + type: string + description: The UUID of the time off policy + employer_note: + type: string + description: A note from the employer about the request + approver_uuid: + type: string + description: The UUID of the approving admin. Defaults to the primary payroll admin. + start_date: + type: string + description: The start date of the time off request (YYYY-MM-DD) + end_date: + type: string + description: The end date of the time off request (YYYY-MM-DD) + days: + type: object + additionalProperties: + type: string + description: 'An object where keys are dates in YYYY-MM-DD format and values are hours as string decimals (e.g. {"2025-01-20": "8.000"})' + required: + - employee_uuid + - policy_uuid + - start_date + - end_date + - days + required: true + "/v1/companies/{company_uuid}/time_off/balances": + get: + summary: Get time off balances for a company + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: employee_uuids + in: query + required: false + description: Filter by employee UUIDs (comma-separated) + schema: + type: string + - name: policy_uuids + in: query + required: false + description: Filter by time off policy UUIDs (comma-separated) + schema: + type: string + - name: page + in: query + required: false + description: The page that is requested + schema: + type: integer + - name: per + in: query + required: false + description: Number of objects per page + schema: + type: integer + x-gusto-rswag: true + operationId: get-v1-companies-company_uuid-time_off-balances + security: + - CompanyAccessAuth: [] + description: |- + Get time off balances for all employees in a company + + scope: `time_off_requests:read` + tags: + - Time Off Requests + x-gusto-integration-type: + - embedded + responses: + '200': + description: successful + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Embedded-Time-Off-Balance" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + "/v1/companies/{company_uuid}/time_off/requests": + get: + summary: List time off requests for a company + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: employee_uuids + in: query + required: false + description: Filter by employee UUIDs. Comma-separated for multiple values. + schema: + type: string + - name: status + in: query + required: false + description: Filter by request status. Comma-separated for multiple values (e.g. pending,approved,declined,consumed). + schema: + type: string + - name: start_date + in: query + required: false + description: Filter requests that overlap with this start date + schema: + type: string + - name: end_date + in: query + required: false + description: Filter requests that overlap with this end date + schema: + type: string + - name: sort_order + in: query + required: false + description: Sort order by start_date (asc or desc, defaults to desc) + schema: + type: string + - name: page + in: query + required: false + description: The page that is requested + schema: + type: integer + - name: per + in: query + required: false + description: Number of objects per page + schema: + type: integer + x-gusto-rswag: true + operationId: get-v1-companies-company_uuid-time_off-requests + security: + - CompanyAccessAuth: [] + description: |- + Get all time off requests for a company. Supports filtering by status, employee, and date ranges. + + Possible statuses: + - `pending` — awaiting approval + - `approved` — approved by an admin but not yet processed in a payroll + - `declined` — declined by an admin + - `consumed` — processed in a completed payroll + + Allowed values for `status`: pending, approved, declined, consumed. + + scope: `time_off_requests:read` + tags: + - Time Off Requests + x-gusto-integration-type: + - embedded + responses: + '200': + description: successful + content: + application/json: + schema: type: array - description: Payrolls for this company within the digest date window (7 days past, 30–60 days future). May be empty. items: - type: object - properties: - payroll_uuid: - type: - - string - - 'null' - format: uuid - description: UUID of the payroll. `null` for upcoming pay periods that have not been started yet (the `payrolls` API has not yet created a payroll record). Once a payroll is created, subsequent digest requests will include the real `payroll_uuid`. - payroll_type: - type: string - description: The type of payroll (e.g. `regular`, `new_hire`, `termination`, `transition`, `bonus`, `correction`). - display_title: - type: string - description: Partner-facing display title for this payroll (e.g. "Run biweekly payroll"). - auto_payroll: - type: boolean - description: Whether the company has auto-payroll enabled for this pay schedule. - status: - type: string - description: The lifecycle status of the payroll (e.g. `ready_to_start`, `in_progress`, `submitted`, `completed`, `failed`). - pay_period: - type: object - properties: - start_date: - type: - - string - - 'null' - format: date - description: First day of the pay period. - end_date: - type: - - string - - 'null' - format: date - description: Last day of the pay period. - check_date: - type: - - string - - 'null' - format: date - description: The date employees get paid. - run_payroll_by: - type: - - string - - 'null' - format: date - description: The deadline to run payroll for this pay period. - pay_schedule: - type: - - object - - 'null' - properties: - uuid: - type: string - format: uuid - description: UUID of the pay schedule. - frequency: - type: string - description: Human-friendly pay frequency (e.g. "Every other week"). - custom_name: - type: - - string - - 'null' - description: Custom name for the pay schedule, when set. - totals: - type: - - object - - 'null' - description: Pay totals. `null` when the payroll has not been calculated, or when the calculation is stale (the partner edited hours/earnings after the last calculation). - properties: - total_debit_amount: - type: string - description: Total amount debited from the company bank account (string-formatted decimal). - net_pay: - type: string - description: Total net pay across all employees on this payroll (string-formatted decimal). - total_employer_cost: - type: string - description: Total employer cost including taxes and benefits (string-formatted decimal). - exclusions: - type: array - description: Companies that could not be processed. Only present once the batch reaches a terminal status. Every UUID submitted in the POST batch appears in exactly one of `results` or `exclusions`. - items: - type: object - properties: - idx: - type: integer - description: The index of this company in the original POST batch array. - entity_type: - type: string - enum: - - company - description: The type of entity this exclusion represents. - uuid: - type: string - format: uuid - description: The UUID of the excluded company. - status: - type: string - enum: - - failed - description: The status of this company's digest computation. - category: - type: string - enum: - - not_found - - company_inactive - - duplicate - - internal_error - description: Machine-readable category for why the company was excluded. - message: - type: string - description: Human-readable explanation for the exclusion. - required: - - uuid - - idempotency_key - - status - - submitted_at - Payroll-Digest-Conflict-Error: - type: object - description: Error response when a payroll digest idempotency key has already been used by the same partner. - x-examples: - conflict: - errors: - - error_key: idempotency_key - category: invalid_attribute_value - message: Idempotency key has already been used - metadata: - request_uuid: a1b2c3d4-e5f6-7890-abcd-ef1234567890 - properties: - errors: - type: array - items: - type: object - properties: - error_key: - type: string - description: The key identifying the error source. - category: - type: string - description: The error category. - message: - type: string - description: Human-readable error message. - metadata: - type: object - properties: - request_uuid: - type: string - format: uuid - description: The UUID of the existing payroll digest batch that already used this idempotency key. - Employees-Annual-Fica-Wage-Report-Acceptance: - type: object - description: Acceptance acknowledgement for an asynchronous employees annual FICA wage report. Returned with HTTP 202; poll the report status endpoint using `request_uuid`. - required: - - request_uuid - - company_uuid - - start_year - - end_year - properties: - request_uuid: - type: string - format: uuid - description: The UUID of the report request. Use this to poll for report completion. - company_uuid: - type: string - format: uuid - description: The UUID of the company. - start_year: - type: integer - description: The start year for the report. - end_year: - type: integer - description: The end year for the report. - x-examples: - accepted: - request_uuid: a1b2c3d4-e5f6-7890-abcd-ef1234567890 - company_uuid: 12345678-abcd-ef12-3456-7890abcdef12 - start_year: 2023 - end_year: 2024 - securitySchemes: - CompanyAccessAuth: - type: http - scheme: bearer - description: Company-level authentication - SystemAccessAuth: - type: http - scheme: bearer - description: System-level authentication - responses: - Unprocessable-Entity-Error-Object: - description: "Unprocessable Entity \n \nThis may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details.\n" - content: - application/json: + "$ref": "#/components/schemas/Embedded-Time-Off-Request" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + post: + summary: Create a time off request + parameters: + - name: X-Gusto-API-Version + in: header schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - examples: - Basic: - value: - errors: - - error_key: base - category: payroll_blocker - message: Company must complete all onboarding requirements in order to run payroll. - metadata: - key: needs_onboarding - Resource: - value: - errors: - - error_key: first_name - category: invalid_attribute_value - message: First name is required - - error_key: date_of_birth - category: invalid_attribute_value - message: Date of birth is not a valid date - Nested: - value: - errors: - - error_key: contractor_payments - category: nested_errors - metadata: - contractor_uuid: 72ae4617-daa9-4ed7-85e0-18ed5d0ee835 - errors: - - error_key: hours - category: invalid_attribute_value - message: Ella Fitzgerald is paid fixed wage and hours cannot be set on a contractor payment - - error_key: contractor_payments - category: nested_errors - metadata: - contractor_uuid: 2d7bf62c-babf-4a12-8292-340e2d9cab28 - errors: - - error_key: wage - category: invalid_attribute_value - message: Isaiah Berlin is paid hourly and wage cannot be set on a contractor payment - Not-Found-Error-Object: - description: "Not Found \n \nThe requested resource does not exist. Make sure the provided UUID is valid.\n" - Employment-Not-Found-Error-Object: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + operationId: post-v1-companies-company_uuid-time_off-requests + security: + - CompanyAccessAuth: [] description: |- - Not Found + Create a time off request for an employee - * The requested resource does not exist. Make sure the provided UUID is valid. - * The employee's employment is not in the right state. - content: - application/json: + scope: `time_off_requests:write` + tags: + - Time Off Requests + x-gusto-integration-type: + - embedded + responses: + '201': + description: created + content: + application/json: + schema: + "$ref": "#/components/schemas/Embedded-Time-Off-Request" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + properties: + employee_uuid: + type: string + description: The UUID of the employee + policy_uuid: + type: string + description: The UUID of the time off policy + employee_note: + type: string + description: A note from the employee about the request + start_date: + type: string + description: The start date of the time off request (YYYY-MM-DD) + end_date: + type: string + description: The end date of the time off request (YYYY-MM-DD) + days: + type: object + additionalProperties: + type: string + description: 'An object where keys are dates in YYYY-MM-DD format and values are hours as string decimals (e.g. {"2025-01-20": "8.000"})' + required: + - employee_uuid + - policy_uuid + - start_date + - end_date + - days + required: true + "/v1/companies/{company_uuid}/time_off/requests/preview": + post: + summary: Preview a time off request + parameters: + - name: X-Gusto-API-Version + in: header schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - examples: - Example: - value: - errors: - - error_key: employment - category: incorrect_state - message: The employee's employment is not in the right state. - Authentication-Object: - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Authentication" - examples: - Example: - value: - access_token: 737HdeXfIqgx-NfaUFRuhV7JDe6ns6ptanJSMuQzjlc - token_type: bearer - expires_in: 7200 - refresh_token: iEjL96L9Pndwmi-xVX3Q-xbrvvhnjHYGX87sopgGJ8E - scope: ach_transactions:read benefits:read companies:read - created_at: 1732033824 - Holiday-Pay-Policy-Object: - description: Holiday Pay Policy Object Example - content: - application/json: - schema: - "$ref": "#/components/schemas/Holiday-Pay-Policy" - examples: - Example: - value: - version: 1b37938b017c7fd7116bada007072290 - company_uuid: b7845189-f12b-4378-918a-d2b9de3dc4ea - federal_holidays: - new_years_day: - selected: false - name: New Year's Day - date: January 1 - mlk_day: - selected: true - name: Martin Luther King, Jr. Day - date: Third Monday in January - presidents_day: - selected: false - name: Presidents' Day - date: Third Monday in February - memorial_day: - selected: true - name: Memorial Day - date: Last Monday in May - juneteenth: - selected: false - name: Juneteenth - date: June 19 - independence_day: - selected: true - name: Independence Day - date: July 4 - labor_day: - selected: false - name: Labor Day - date: First Monday in September - columbus_day: - selected: false - name: Columbus Day (Indigenous Peoples' Day) - date: Second Monday in October - veterans_day: - selected: true - name: Veterans Day - date: November 11 - thanksgiving: - selected: true - name: Thanksgiving - date: Fourth Thursday in November - christmas_day: - selected: true - name: Christmas Day - date: December 25 - employees: - uuid: 1ca3cd25-3eda-48c6-ac88-f0e7fb91a15a - Paid-Holidays-Object: - description: Paid Holidays Object Example - content: - application/json: - schema: - "$ref": "#/components/schemas/Paid-Holidays" - examples: - Example: - value: - - holiday_key: veterans_day - holiday_name: Veterans Day - start_date: '2023-11-11' - end_date: '2023-11-11' - Department-Object: - description: Department Object Example - content: - application/json: - schema: - "$ref": "#/components/schemas/Department" - examples: - Example: - value: - uuid: 56260b3d-c375-415c-b77a-75d99f717193 - company_uuid: 7087a288-8349-4632-b92e-bc94fb79f29e - title: Stage Hand - version: d90440dd464601d1c8f4e9e240dfb7a6 - employees: - - uuid: 41199375-a999-4414-9f40-d9bf596b134d - contractors: - - uuid: 3488549f-60e4-494f-a34a-9d8aad3aabf5 - Ytd-Benefit-Amounts-From-Different-Company-List: - description: List of Ytd Benefit Amounts From Different Company List - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true schema: - type: array - items: - "$ref": "#/components/schemas/Ytd-Benefit-Amounts-From-Different-Company" - examples: - Example: - value: - - uuid: c5fdae57-5483-4529-9aae-f0edceed92d3 - benefit_type: 1 - ytd_employee_deduction_amount: '5000.00' - ytd_company_contribution_amount: '2500.00' - - uuid: 1bfdb946-b2be-4909-ac46-9e7f73872d0a - benefit_type: 5 - ytd_employee_deduction_amount: '2132.00' - ytd_company_contribution_amount: '3345.00' - Department-List: - description: List of departments - content: - application/json: + type: string + x-gusto-rswag: true + operationId: post-v1-companies-company_uuid-time_off-requests-preview + security: + - CompanyAccessAuth: [] + description: |- + Preview a time off request to see balance impact before creating + + scope: `time_off_requests:read` + tags: + - Time Off Requests + x-gusto-integration-type: + - embedded + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Embedded-Time-Off-Request-Preview" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + properties: + request_uuid: + type: string + description: The UUID of an existing time off request to preview changes for + employee_uuid: + type: string + description: The UUID of the employee + policy_uuid: + type: string + description: The UUID of the time off policy + start_date: + type: string + description: The start date of the time off request (YYYY-MM-DD) + end_date: + type: string + description: The end date of the time off request (YYYY-MM-DD) + days: + type: object + additionalProperties: + type: string + description: 'An object where keys are dates in YYYY-MM-DD format and values are hours as string decimals (e.g. {"2025-01-20": "8.000"})' + required: + - employee_uuid + - policy_uuid + - start_date + - end_date + - days + required: true + "/v1/time_off/requests/{time_off_request_uuid}": + get: + summary: Get a time off request + parameters: + - name: X-Gusto-API-Version + in: header schema: - type: array - items: - "$ref": "#/components/schemas/Department" - examples: - Example: - value: - - uuid: 56260b3d-c375-415c-b77a-75d99f717193 - company_uuid: 7087a288-8349-4632-b92e-bc94fb79f29e - title: Stage Hand - version: d90440dd464601d1c8f4e9e240dfb7a6 - employees: - - uuid: 41199375-a999-4414-9f40-d9bf596b134d - contractors: [] - - uuid: ec5c8a85-3233-4f39-a9f5-fb1ab7b5f5f3 - company_uuid: 7087a288-8349-4632-b92e-bc94fb79f29e - title: Actors - version: 34f39a30b45d077cb83aed2df4810d74 - employees: - - uuid: 7ee4aca1-814b-4034-b0f8-07f93cc679d1 - contractors: [] - - uuid: 1802465d-4f68-4865-920c-1307ab095f12 - company_uuid: 7087a288-8349-4632-b92e-bc94fb79f29e - title: Band - version: 1fe3076d35ef7c97d0ae68c5f4df0acd - employees: - - uuid: a73955be-c009-44dc-915e-6246e2bdedbb - contractors: - - uuid: 3488549f-60e4-494f-a34a-9d8aad3aabf5 - Employee-Object: - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee" - examples: - Create-Employee-Example: - value: - uuid: 4b3f930f-82cd-48a8-b797-798686e12e5e - first_name: Isom - middle_initial: - last_name: Jaskolski - email: dane7757869450111550@botsford.net - company_uuid: a007e1ab-3595-43c2-ab4b-af7a5af2e365 - manager_uuid: 5e53e257-c8d6-45aa-aa8a-ec99283a3acd - employee_code: fesa3w - version: 1c7ba9d62c8bafbfff998ffccad5d296 - department: Stage Hand - department_uuid: 56260b3d-c375-415c-b77a-75d99f717193 - terminated: false - two_percent_shareholder: false - onboarded: true - onboarding_status: onboarding_completed - onboarding_documents_config: - uuid: - i9_document: false - jobs: - - uuid: 428a653a-0745-4db4-9c80-558288d416fa - version: 6c0ed1521e8b86eb36bd4455a63a2dac - employee_uuid: f0689739-1985-49f3-b9ba-84562e71e85f - current_compensation_uuid: c9fd719b-8b07-48f3-8a4c-f447d2c59669 - payment_unit: Year - primary: true - title: Client Support Director - compensations: - - uuid: 145660ed-6fcc-4211-8915-18e2786290a2 - version: 2cd4b18662395eb53bcf80d5b5447f36 - payment_unit: Year - flsa_status: Exempt - job_uuid: 857feae3-414e-445d-b28b-2eb3ef50155e - effective_date: '2021-01-20' - rate: '70000.00' - adjust_for_minimum_wage: false - minimum_wages: [] - rate: '70000.00' - hire_date: '2020-01-20' - eligible_paid_time_off: - - name: Sick Hours - policy_name: Sick Policy - policy_uuid: 9940d205-9904-4e55-9fec-652628e84af7 - accrual_unit: Hour - accrual_rate: '208.0' - accrual_method: per_hour_worked - accrual_period: Year - accrual_balance: '31.8' - maximum_accrual_balance: '240.0' - paid_at_termination: false - - name: Vacation Hours - policy_name: Vacation Policy - policy_uuid: ab59de61-239f-4805-933b-0e3360ed291c - accrual_unit: Hour - accrual_rate: '208.0' - accrual_period: Year - accrual_balance: '77.8' - maximum_accrual_balance: '240.0' - paid_at_termination: true - terminations: [] - custom_fields: - - id: ee515986-f3ca-49da-b576-2691b95262f9 - company_custom_field_id: ea7e5d57-6abb-47d7-b654-347c142886c0 - name: employee_level - description: Employee Level - type: text - value: '2' - selection_options: - - id: 3796e08d-c2e3-434c-b4de-4ce1893e7b59 - company_custom_field_id: 299650e4-e970-4acf-9bf0-6f05585d20ba - name: t-shirt size - description: What is your t-shirt size? - type: text - value: md - selection_options: - - id: 3796e08d-c2e3-434c-b4de-4ce1893e7b59 - company_custom_field_id: 024ec137-6c92-43a3-b061-14a9720531d6 - name: favorite fruit - description: Which is your favorite fruit? - type: radio - value: apple - selection_options: - - apple - - banana - - orange - garnishments: [] - date_of_birth: '1986-06-25' - has_ssn: false - ssn: '' - phone: '1234567890' - preferred_first_name: Angel - work_email: angel.jaskolski@example.com - Create Historical Employee Example: - value: - uuid: ad85459f-8bf5-4a8f-9079-3b3fa790799e - first_name: Karl - middle_initial: - last_name: Jaskolski - email: - company_uuid: 3c69d228-a250-49b4-9946-24e4e4294da4 - manager_uuid: - employee_code: rke7p1 - version: dedac972dd28945fcd6cd941723cc71a - department: - department_uuid: - terminated: false - two_percent_shareholder: false - onboarded: true - historical: true - onboarding_status: onboarding_completed - onboarding_documents_config: - uuid: - i9_document: false - jobs: - - uuid: f0be5480-7a15-4583-b0d0-789c02a1afe4 - version: 1c0722f3e090713b6a0db7c39904693e - employee_uuid: ad85459f-8bf5-4a8f-9079-3b3fa790799e - current_compensation_uuid: 1a1faa42-274b-4440-b200-a5d81df14af2 - payment_unit: Year - primary: true - title: Client Support Director - compensations: - - uuid: 145660ed-6fcc-4211-8915-18e2786290a2 - version: 2cd4b18662395eb53bcf80d5b5447f36 - payment_unit: Year - flsa_status: Exempt - job_uuid: 857feae3-414e-445d-b28b-2eb3ef50155e - effective_date: '2023-11-01' - rate: '70000.00' - adjust_for_minimum_wage: false - minimum_wages: [] - rate: '70000.00' - hire_date: '2023-11-01' - eligible_paid_time_off: [] - terminations: - - uuid: ad85459f-8bf5-4a8f-9079-3b3fa790799e - employee_uuid: ad85459f-8bf5-4a8f-9079-3b3fa790799e - active: false - effective_date: '2023-12-31' - run_termination_payroll: false - cancelable: true - version: e6c865df784842196d411c1466b01686 - garnishments: [] - date_of_birth: '1986-06-25' - has_ssn: false - ssn: '' - phone: - preferred_first_name: - work_email: - Historical-Employee-Object: - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee" - examples: - Create Historical Employee Example: - value: - uuid: ad85459f-8bf5-4a8f-9079-3b3fa790799e - first_name: Karl - middle_initial: - last_name: Jaskolski - email: - company_uuid: 3c69d228-a250-49b4-9946-24e4e4294da4 - manager_uuid: - employee_code: eh3st1 - version: dedac972dd28945fcd6cd941723cc71a - department: - department_uuid: - terminated: true - two_percent_shareholder: false - onboarded: true - historical: true - onboarding_status: onboarding_completed - onboarding_documents_config: - uuid: - i9_document: false - jobs: - - uuid: f0be5480-7a15-4583-b0d0-789c02a1afe4 - version: 1c0722f3e090713b6a0db7c39904693e - employee_uuid: ad85459f-8bf5-4a8f-9079-3b3fa790799e - current_compensation_uuid: 1a1faa42-274b-4440-b200-a5d81df14af2 - payment_unit: Year - primary: true - title: Client Support Director - compensations: - - uuid: 145660ed-6fcc-4211-8915-18e2786290a2 - version: 2cd4b18662395eb53bcf80d5b5447f36 - payment_unit: Year - flsa_status: Exempt - job_uuid: 857feae3-414e-445d-b28b-2eb3ef50155e - effective_date: '2023-11-01' - rate: '70000.00' - adjust_for_minimum_wage: false - minimum_wages: [] - rate: '70000.00' - hire_date: '2023-11-01' - eligible_paid_time_off: [] - terminations: - - uuid: ad85459f-8bf5-4a8f-9079-3b3fa790799e - employee_uuid: ad85459f-8bf5-4a8f-9079-3b3fa790799e - active: false - effective_date: '2023-12-31' - run_termination_payroll: false - cancelable: true - version: e6c865df784842196d411c1466b01686 - garnishments: [] - date_of_birth: '1986-06-25' - has_ssn: false - ssn: '' - phone: - preferred_first_name: - work_email: - Employee-List: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: time_off_request_uuid + in: path + description: The UUID of the time off request + required: true schema: - type: array - items: - "$ref": "#/components/schemas/Employee" - examples: - Example: - value: - - uuid: 9779767c-6044-48e0-bf68-aeb370b9a2e7 - first_name: Nicole - middle_initial: M - last_name: Boehm - email: kory7757869450111548@barton-hermiston.io - company_uuid: c44d66dc-c41b-4a60-9e25-5e93ff8583f2 - manager_uuid: 5e53e257-c8d6-45aa-aa8a-ec99283a3acd - version: 414dedaca594b77135e0b8d2f398516d - department: Stage Hand - department_uuid: 1802465d-4f68-4865-920c-1307ab095f12 - terminated: false - two_percent_shareholder: false - onboarded: true - onboarding_status: onboarding_completed - onboarding_documents_config: - uuid: 9d5e3ce5-ea8f-4885-90e5-7ebbed03f7c5 - i9_document: true - jobs: - - uuid: 5d5e3ce5-ea8f-4885-90e5-7ebaed03f7c5 - version: 91179081a7309c9fbd31bb3cf7b9893e - employee_uuid: a987bce1-6d06-43f8-9978-9db886f479fb - current_compensation_uuid: 798a962f-0fcf-491e-9b71-cfa6a1db114f - payment_unit: Hour - primary: true - title: Client Support Manager - compensations: - - uuid: 94f17a77-cfe5-436a-af94-422bbf8248ff - version: 233f0096a8015e62d9795fadf1fd300d - payment_unit: Hour - flsa_status: Nonexempt - job_uuid: 64711ac0-83ff-4aaf-bec1-db72f5a44e56 - effective_date: '2021-01-20' - rate: '22.00' - adjust_for_minimum_wage: false - minimum_wages: [] - rate: '22.00' - hire_date: '2020-01-20' - eligible_paid_time_off: - - name: Sick Hours - policy_name: Sick Policy - policy_uuid: 9940d205-9904-4e55-9fec-652628e84af7 - accrual_unit: Hour - accrual_rate: '208.0' - accrual_method: per_hour_worked - accrual_period: Year - accrual_balance: '71.0' - maximum_accrual_balance: '240.0' - paid_at_termination: false - - name: Vacation Hours - policy_name: Vacation Policy - policy_uuid: 8b312f0e-30e7-4810-9c06-1177a6484f2d - accrual_unit: Hour - accrual_rate: '208.0' - accrual_period: Year - accrual_balance: '34.0' - maximum_accrual_balance: '240.0' - paid_at_termination: true - terminations: [] - garnishments: [] - date_of_birth: '1996-05-08' - has_ssn: true - ssn: '' - phone: '1234567890' - preferred_first_name: Vanessa - work_email: vanessa.boehm@example.com - - uuid: d7cb289a-af62-4120-9cd5-acda324b5c04 - first_name: Maci - middle_initial: M - last_name: Cassin - email: claud_reinger7757869450111549@gutkowski.net - company_uuid: 4522d043-5731-406d-a129-de1808042a32 - manager_uuid: 5e53e257-c8d6-45aa-aa8a-ec99283a3acd - version: e867459e1360fa71e78b88142923d341 - department: Band - department_uuid: 1802465d-4f68-4865-920c-1307ab095f12 - terminated: false - two_percent_shareholder: false - onboarded: true - onboarding_status: onboarding_completed - onboarding_documents_config: - uuid: 1d5e3ce5-ea8f-4885-90e5-7ebbed03f7c5 - i9_document: true - jobs: - - uuid: 62a00cf7-342b-465e-a151-ecd295152be0 - version: d0e719137f89ca3dd334dd4cc248ffbb - employee_uuid: 5e53e257-c8d6-45aa-aa8a-ec99283a3acd - current_compensation_uuid: 93e5da92-173b-4faa-a0bd-d1a8dee68be0 - payment_unit: Year - primary: true - title: Account Director - compensations: - - uuid: 1bad5177-c4ed-432e-ab43-66055d40c3a5 - version: 994b75511d1debac5d7e2ddeae13679f - payment_unit: Year - flsa_status: Exempt - job_uuid: 1214875b-f43d-4267-bf2f-a6d2c298ff3d - effective_date: '2021-01-20' - rate: '78000.00' - adjust_for_minimum_wage: false - minimum_wages: [] - rate: '78000.00' - hire_date: '2020-01-20' - eligible_paid_time_off: - - name: Sick Hours - policy_name: Sick Policy - policy_uuid: 8b312f0e-30e7-4810-9c06-1177a6484f2d - accrual_unit: Hour - accrual_rate: '208.0' - accrual_method: per_hour_worked - accrual_period: Year - accrual_balance: '74.0' - maximum_accrual_balance: '240.0' - paid_at_termination: false - - name: Vacation Hours - policy_name: Vacation Policy - policy_uuid: 0d4c755e-50ac-4c54-b46e-81bdfa03da5b - accrual_unit: Hour - accrual_rate: '208.0' - accrual_period: Year - accrual_balance: '16.0' - maximum_accrual_balance: '240.0' - paid_at_termination: true - terminations: [] - garnishments: [] - custom_fields: - - id: ee515986-f3ca-49da-b576-2691b95262f9 - company_custom_field_id: ea7e5d57-6abb-47d7-b654-347c142886c0 - name: employee_level - description: Employee Level - type: text - value: '2' - selection_options: - - id: 3796e08d-c2e3-434c-b4de-4ce1893e7b59 - company_custom_field_id: 299650e4-e970-4acf-9bf0-6f05585d20ba - name: t-shirt size - description: What is your t-shirt size? - type: text - value: md - selection_options: - - id: 3796e08d-c2e3-434c-b4de-4ce1893e7b59 - company_custom_field_id: 024ec137-6c92-43a3-b061-14a9720531d6 - name: favorite fruit - description: Which is your favorite fruit? - type: radio - value: apple - selection_options: - - apple - - banana - - orange - date_of_birth: '1995-09-21' - has_ssn: true - ssn: '' - phone: '1234567890' - preferred_first_name: Denis - work_email: denis.cassin@example.com - Employee-Address-Object: - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Address" - examples: - Example: - value: - uuid: 56260b3d-c375-415c-b77a-75d99f717193 - employee_id: 12345 - street_1: 644 Fay Vista - street_2: Suite 842 - city: Richmond - state: VA - zip: '23218' - country: USA - active: false - effective_date: '2021-01-01' - courtesy_withholding: true - Employee-Address-List: - description: List of employee addresses - content: - application/json: + type: string + x-gusto-rswag: true + operationId: get-v1-time_off-requests-time_off_request_uuid + security: + - CompanyAccessAuth: [] + description: |- + Get a single time off request by UUID + + scope: `time_off_requests:read` + tags: + - Time Off Requests + x-gusto-integration-type: + - embedded + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Embedded-Time-Off-Request" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + delete: + summary: Delete a time off request + parameters: + - name: X-Gusto-API-Version + in: header schema: - type: array - items: - "$ref": "#/components/schemas/Employee-Address" - examples: - Example: - value: - - uuid: 56260b3d-c375-415c-b77a-75d99f717193 - employee_uuid: 7087a288-8349-4632-b92e-bc94fb79f29e - street_1: 644 Fay Vista - street_2: Suite 842 - city: Richmond - state: VA - zip: '23218' - country: USA - active: false - effective_date: '2021-01-01' - courtesy_withholding: true - - uuid: d9f74049-8769-4fba-8e0f-eceef2da4e6b - employee_uuid: 7087a288-8349-4632-b92e-bc94fb79f29e - street_1: 100 5th Ave - street_2: Suite 555 - city: New York - state: NY - zip: '10001' - country: USA - active: true - effective_date: '2022-03-03' - courtesy_withholding: true - Employee-Work-Address-List: - description: List of employee work addresses - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: time_off_request_uuid + in: path + description: The UUID of the time off request + required: true schema: - type: array - items: - "$ref": "#/components/schemas/Employee-Work-Address" - examples: - Example: - value: - - uuid: fc5b87dc-8d88-400d-b2da-c3587a7e5b15 - employee_uuid: 7597f3e3-31d4-4953-83a5-f95be78d2fe2 - location_uuid: d9456c94-f561-40d2-afec-919da5f59196 - effective_date: '2022-01-01' - active: false - version: 139f9769a2e543e6a1259173e1ee3b8d - street_1: 800 Adolfo Gardens - street_2: Suite 419 - city: Bremen - state: AL - zip: '35033' - country: USA - - uuid: be1c2e24-af86-4c36-b34e-3a55dbcdbdab - employee_uuid: 7597f3e3-31d4-4953-83a5-f95be78d2fe2 - location_uuid: 6a119be7-b4b0-4e27-aaa0-89d5f2524635 - effective_date: '2023-01-01' - active: true - version: bbe8d4c741339c6b9e0e2e1c1b120816 - street_1: 2216 Icie Villages - street_2: Apt. 798 - city: Big Delta - state: AK - zip: '99737' - country: USA - Company-Onboarding-Status-Object: - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Company-Onboarding-Status" - examples: - Example: - value: - uuid: c44d66dc-c41b-4a60-9e25-5e93ff8583f2 - onboarding_completed: false - onboarding_steps: - - title: Add Your Company's Addresses - id: add_addresses - required: true - completed: true - completed_at: '2025-02-18T10:00:00Z' - skippable: false - requirements: [] - - title: Enter Your Federal Tax Information - id: federal_tax_setup - required: true - completed: true - completed_at: '2025-02-18T10:00:00Z' - skippable: false - requirements: [] - - title: Select Industry - id: select_industry - required: true - completed: true - completed_at: '2025-02-18T10:00:00Z' - skippable: false - requirements: [] - - title: Add Your Bank Account - id: add_bank_info - required: true - completed: true - completed_at: '2025-02-18T10:00:00Z' - skippable: false - requirements: [] - - title: Add Your Employees - id: add_employees - required: true - completed: true - completed_at: '2025-02-18T10:00:00Z' - skippable: true - requirements: - - add_addresses - - title: Enter Your State Tax Information - id: state_setup - required: true - completed: false - completed_at: - skippable: false - requirements: - - add_addresses - - add_employees - - title: Select a Pay Schedule - id: payroll_schedule - required: true - completed: false - completed_at: - skippable: false - requirements: [] - - title: Sign Documents - id: sign_all_forms - required: true - completed: false - completed_at: - skippable: false - requirements: - - add_employees - - federal_tax_setup - - state_setup - - add_bank_info - - payroll_schedule - - title: Verify Your Bank Account - id: verify_bank_info - required: true - completed: false - completed_at: - skippable: false - requirements: - - add_bank_info - Company-Onboarding-Status-Finish-Onboarding-Object: - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Company-Onboarding-Status" - examples: - Example: - value: - uuid: c44d66dc-c41b-4a60-9e25-5e93ff8583f2 - onboarding_completed: true - onboarding_steps: - - title: Add Your Company's Addresses - id: add_addresses - required: true - completed: true - skippable: false - requirements: [] - - title: Enter Your Federal Tax Information - id: federal_tax_setup - required: true - completed: true - skippable: false - requirements: [] - - title: Select Industry - id: select_industry - required: true - completed: true - skippable: false - requirements: [] - - title: Add Your Bank Account - id: add_bank_info - required: true - completed: true - skippable: false - requirements: [] - - title: Add Your Employees - id: add_employees - required: true - completed: true - skippable: true - requirements: - - add_addresses - - title: Enter Your State Tax Information - id: state_setup - required: true - completed: true - skippable: false - requirements: - - add_addresses - - add_employees - - title: Select a Pay Schedule - id: payroll_schedule - required: true - completed: true - skippable: false - requirements: [] - - title: Sign Documents - id: sign_all_forms - required: true - completed: true - skippable: false - requirements: - - add_employees - - federal_tax_setup - - state_setup - - add_bank_info - - payroll_schedule - - title: Verify Your Bank Account - id: verify_bank_info - required: true - completed: true - skippable: false - requirements: - - add_bank_info - Webhook-Subscription-Object: - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Webhook-Subscription" - examples: - Example: - value: - uuid: c5fdae57-5483-4529-9aae-f0edceed92d4 - url: https://the-partner-app.com/subscriber - status: verified - subscription_types: - - BankAccount - - Company - - CompanyBenefit - - Contractor - - ContractorPayment - - Employee - - EmployeeBenefit - - EmployeeJobCompensation - - ExternalPayroll - - Form - - Location - - Notification - - Payroll - - PayrollSync - - PaySchedule - - Signatory - Webhook-Subscriptions-List: - description: Example response - content: - application/json: + type: string + x-gusto-rswag: true + operationId: delete-v1-time_off-requests-time_off_request_uuid + security: + - CompanyAccessAuth: [] + description: |- + Delete a time off request + + scope: `time_off_requests:write` + tags: + - Time Off Requests + x-gusto-integration-type: + - embedded + responses: + '204': + description: no content + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + "/v1/time_off/requests/{time_off_request_uuid}/approve": + put: + summary: Approve a time off request + parameters: + - name: X-Gusto-API-Version + in: header schema: - type: array - items: - "$ref": "#/components/schemas/Webhook-Subscription" - examples: - Example: - value: - - uuid: dcceb38a-46be-4110-9d1d-1b3384c3b906 - url: https://6116-2603-6000-8900-3d42-58e7-f1e3-b394-1f21.ngrok.io/subscriber - status: pending - subscription_types: - - BankAccount - - Company - - CompanyBenefit - - Contractor - - ContractorPayment - - Employee - - EmployeeBenefit - - EmployeeJobCompensation - - ExternalPayroll - - Form - - Location - - Notification - - Payroll - - PayrollSync - - PaySchedule - - Signatory - Company-Object: - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Company" - examples: - Example: - value: - ein: 00-0000001 - entity_type: C-Corporation - tier: core - contractor_only: false - is_suspended: false - company_status: Approved - uuid: c7a07c73-a703-4462-9343-1b181182b6e0 - name: Shoppe Studios LLC - trade_name: Record Shoppe - slug: record-shoppe - is_partner_managed: false - pay_schedule_type: by_department - join_date: '2023-03-01' - funding_type: ach - locations: - - street_1: 412 Kiera Stravenue - street_2: Suite 391 - city: San Francisco - state: CA - zip: '94107' - country: USA - active: true - - street_1: 644 Fay Vista - street_2: Suite 842 - city: Richmond - state: VA - zip: '23218' - country: USA - active: true - compensations: - hourly: - - name: Overtime - multiple: 1.5 - - name: Double overtime - multiple: 2 - - name: Regular - multiple: 1 - - name: Outstanding vacation - multiple: 1 - - name: Holiday - multiple: 1 - - name: Emergency sick - self care - multiple: 1 - - name: Emergency sick - caring for others - multiple: 1 - - name: FMLA Public Health Emergency Leave - multiple: 1 - - name: Regular Hours - multiple: 1 - fixed: - - name: Bonus - - name: Commission - - name: Paycheck Tips - - name: Cash Tips - - name: Correction Payment - - name: Severance - - name: Minimum Wage Adjustment - paid_time_off: - - name: Vacation Hours - - name: Sick Hours - - name: Holiday Hours - primary_signatory: - uuid: 8a2ed9c2-9d1e-443a-8e56-a490d8bf73bb - first_name: Alda - middle_initial: '' - last_name: Carter - phone: 1-565-710-7558 - email: louie.hessel7757869450111547@zemlak.biz - home_address: - street_1: 524 Roob Divide - street_2: Suite 565 - city: San Francisco - state: CA - zip: '94107' - country: USA - primary_payroll_admin: - first_name: Ian - last_name: Labadie - phone: 1-565-710-7559 - email: louie.hessel7757869450111547@zemlak.biz - Signatory-Object: - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Signatory" - examples: - Example: - value: - uuid: f8c653dc-0094-41fb-8670-45d6399afade - first_name: Bob - last_name: Johnson - title: Owner - phone: '4239879876' - birthday: '2002-10-31' - email: olin.okuneva@denesik.us - is_admin: false - has_ssn: true - version: 49ea586f528411f5cfadfd54452b2423 - home_address: - street_1: 524 Roob Divide - street_2: Suite 565 - city: San Francisco - state: CA - zip: '94107' - country: USA - identity_verification_status: Skipped - Contractor-Address-Object: - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor-Address" - examples: - Example: - value: - version: 23323096a8015e32d9795fadf1fd300d - contractor_uuid: 9779767c-6044-48e0-bf68-aeb370b9a2e7 - street_1: 999 Kiera Stravenue - street_2: Suite 391 - city: San Francisco - state: CA - zip: 94107 - country: USA - active: true - Employment-History-List: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: time_off_request_uuid + in: path + description: The UUID of the time off request + required: true schema: - type: array - items: + type: string + x-gusto-rswag: true + operationId: put-v1-time_off-requests-time_off_request_uuid-approve + security: + - CompanyAccessAuth: [] + description: |- + Approve a pending time off request. Optionally override the dates and hours. + + Only requests with a `pending` status can be approved. Attempting to approve a request that has already been `declined` or `consumed` will fail with a 422 error. + + scope: `time_off_requests:manage` + tags: + - Time Off Requests + x-gusto-integration-type: + - embedded + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Embedded-Time-Off-Request" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: type: object properties: - hire_date: + approver_uuid: type: string - description: The employee's start day of work for an employment. - termination_date: + description: The UUID of the admin approving the request. Defaults to the company's primary payroll admin. + employer_note: type: string - description: The employee's last day of work for an employment. - file_new_hire_report: - type: boolean - description: The boolean flag indicating whether Gusto will file a new hire report for the employee. - two_percent_shareholder: - type: boolean - description: Whether the employee is a two percent shareholder of the company. This field only applies to companies with an S-Corp entity type. - employment_status: + description: A note from the employer about the approval + days: + type: object + additionalProperties: + type: string + description: 'An object where keys are dates in YYYY-MM-DD format and values are hours as string decimals (e.g. {"2025-01-20": "8.000"}). Use this to override the requested hours.' + "/v1/time_off/requests/{time_off_request_uuid}/decline": + put: + summary: Decline a time off request + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: time_off_request_uuid + in: path + description: The UUID of the time off request + required: true + schema: + type: string + x-gusto-rswag: true + operationId: put-v1-time_off-requests-time_off_request_uuid-decline + security: + - CompanyAccessAuth: [] + description: |- + Decline a pending or approved time off request. Requires an employer_note. + + scope: `time_off_requests:manage` + tags: + - Time Off Requests + x-gusto-integration-type: + - embedded + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Embedded-Time-Off-Request" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + properties: + employer_note: type: string - description: The employee's employment status. Supplying an invalid option will set the employment_status to *not_set*. - enum: - - part_time - - full_time - - part_time_eligible - - variable - - seasonal - - not_set - x-examples: - example-1: - hire_date: '2023-01-30' - termination_date: '2023-03-30' - file_new_hire_report: false - two_percent_shareholder: false - employment_status: seasonal - examples: - Example: - value: - - hire_date: '2023-05-30' - termination_date: - file_new_hire_report: true - two_percent_shareholder: false - employment_status: seasonal - - hire_date: '2021-02-02' - termination_date: '2023-03-01' - file_new_hire_report: false - two_percent_shareholder: false - employment_status: full_time - Rehire-Object: - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Rehire" - examples: - Example: - value: - version: 2e930d43acbdb241f8f14a2d531fa417 - employee_uuid: da441196-43a9-4d23-ad5d-f37ce6bb99c0 - active: false - effective_date: '2024-01-01' - file_new_hire_report: false - work_location_uuid: d2c80d44-857b-4d4d-bce4-23ae52cc863b, - two_percent_shareholder: false - employment_status: full_time - Unprocessed-Termination-Pay-Period-List: - description: Example response - content: - application/json: + description: Note explaining why the request was declined + approver_uuid: + type: string + description: The UUID of the admin declining the request. Defaults to the company's primary payroll admin. + required: + - employer_note + required: true + "/v1/companies/{company_uuid}/time_off_policies": + get: + summary: Get all time off policies for a company + parameters: + - name: X-Gusto-API-Version + in: header schema: - type: array - items: - "$ref": "#/components/schemas/Unprocessed-Termination-Pay-Period" - examples: - Example: - value: - - start_date: '2023-01-11' - end_date: '2023-01-24' - check_date: '2023-01-28' - debit_date: '2023-01-26' - employee_name: Mary Warner - employee_uuid: '094f6ded-a790-4651-87e6-4a7f15dec7c6' - pay_schedule_uuid: 00ebc4a4-ec88-4435-8f45-c505bb63e501 - - start_date: '2023-01-25' - end_date: '2023-02-07' - check_date: '2023-02-10' - debit_date: '2023-02-08' - employee_name: Mary Warner - employee_uuid: '094f6ded-a790-4651-87e6-4a7f15dec7c6' - pay_schedule_uuid: 00ebc4a4-ec88-4435-8f45-c505bb63e501 - Accruing-Time-Off-Hour-Object: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true schema: - type: object - required: - - hours_earned - properties: - hours_earned: + type: string + x-gusto-rswag: true + operationId: get-v1-companies-company_uuid-time_off_policies + security: + - CompanyAccessAuth: [] + description: |- + Get all time off policies for a company + + scope: `time_off_policies:read` + tags: + - Time Off Policies + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: successful + content: + application/json: + schema: type: array items: - "$ref": "#/components/schemas/Accruing-Time-Off-Hour" - examples: - Example: - value: - - time_off_policy_uuid: c3a15554-f124-415d-b2c4-90b430fd8eb1 - hours: '3.2' - - time_off_policy_uuid: 386fc48d-52d2-4009-87b3-368f74f6b3df - hours: '6.0' - Pay-Schedule-Assignment-Object: - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Pay-Schedule-Assignment" - examples: - Example: - value: - type: by_employee - employees: - employee_uuid: f0238368-f2cf-43e2-9a07-b0265f2cec69 - pay_schedule_uuid: c277ac52-9871-4a96-a1e6-0c449684602a - Pay-Schedule-Assignment-Preview-Object: - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Pay-Schedule-Assignment-Preview" - examples: - Example: - value: - type: hourly_salaried - employee_changes: - employee_uuid: 43b39ada-dc49-4879-9594-fe95f67ae434 - first_name: Penny - last_name: Parker - pay_frequency: Twice per month — Salaried pay schedule - first_pay_period: - pay_schedule_uuid: 3f029a58-155d-4c30-8361-cc266b2c1f11 - start_date: '2023-07-01' - end_date: '2023-08-01' - check_date: '2023-08-02' - transition_pay_period: - start_date: '2023-06-20' - end_date: '2023-06-30' - Benefit-Summary-Object: - description: Benefit summary response - content: - application/json: - schema: - "$ref": "#/components/schemas/Benefit-Summary" - examples: - Example: - value: - start_date: '2022-01-01' - end_date: '2022-12-31' - description: Simple IRA - company_benefit_deduction: '60.0' - company_benefit_contribution: '30.0' - employees: - - uuid: 54b7114f-f5e2-4f4b-911b-5cd5ad9032b0 - company_benefit_deduction: '60.0' - company_benefit_contribution: '30.0' - benefit_deduction: '660.0' - benefit_contribution: '330.0' - gross_pay: '18000.0' - imputed_pay: '350.0' - payroll_benefits: - - payroll_uuid: 8cc3471b-9da5-47df-88ea-f238c7cb968b - payroll_type: Regular - check_date: '2022-03-01' - gross_pay: '3000.0' - imputed_pay: '70.0' - company_benefit_deduction: '10.0' - company_benefit_contribution: '5.0' - pay_period: - start_date: '2022-02-01' - end_date: '2022-02-28' - - payroll_uuid: d9d92786-722b-4bf7-bb32-79140418d349 - payroll_type: Bonus - check_date: '2022-12-31' - gross_pay: '3000.0' - imputed_pay: '70.0' - company_benefit_deduction: '20.0' - company_benefit_contribution: '10.0' - pay_period: - start_date: nil - end_date: nil - Company-Benefit-With-Employee-Benefits-Object: - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Company-Benefit-With-Employee-Benefits" - examples: - Example: - value: - uuid: d2cec746-caee-464a-bcaf-00d93f7049c9 - version: 98jr3289h3298hr9329gf9egskt3kagri32qqgiqe3872 - active: true - description: Kaiser Permanente - source: external - partner_name: XYZ Corp - deletable: true - supports_percentage_amounts: true - responsible_for_employer_taxes: false - responsible_for_employee_w2: false - catch_up_type: elective - employee_benefits: - - employee_uuid: ae44a0b2-3c89-41e1-91c8-5f8224a779ca - company_benefit_uuid: d2cec746-caee-464a-bcaf-00d93f7049c9 - active: true - deduct_as_percentage: false - employee_deduction: 3.0 - company_contribution: 0.0 - uuid: 9988f241-9aee-4383-bfca-eac79cf58135 - contribution: - type: amount - value: 0.0 - Employee-Pay-Stubs-List: - description: Example response - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Employee-Pay-Stub" - examples: - Example: - value: - - uuid: d2cec746-caee-464a-bcaf-00d93f7049c9 - check_date: '2023-11-24' - gross_pay: 880.0 - net_pay: 541.02 - payroll_uuid: a039cafb-745e-4af4-bf1e-935a86fc18e0 - check_amount: 500.2 - description: OK - Company-Attachment-Object: - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Company-Attachment" - examples: - Example: - value: - uuid: 1263eae5-4411-48d9-bd6d-18ed93082e65 - name: Company_Attachment_File.pdf - category: gep_notice - upload_time: '2022-02-01T00:00:00.000Z' - Company-Attachment-List: - description: Example response - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Company-Attachment" - examples: - Example: - value: - - uuid: 5de11791-98fd-4587-9ed0-d5d804b8e647 - name: Company_Attachment_File1.pdf - category: gep_notice - upload_time: '2022-02-01T00:00:00.000Z' - - uuid: 987058cc-23ee-46e9-81ef-5cee086cceca - name: Company_Attachment_File2.pdf - category: gep_notice - upload_time: '2022-02-01T00:00:00.000Z' - Signatory-List: - description: Example response - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Signatory" - examples: - Example: - value: - - uuid: f8c653dc-0094-41fb-8670-45d6399afade - first_name: Bob - last_name: Johnson - title: Owner - phone: '4239879876' - birthday: '2002-10-31' - email: olin.okuneva@denesik.us - is_admin: false - has_ssn: true - version: 49ea586f528411f5cfadfd54452b2423 - home_address: - street_1: 524 Roob Divide - street_2: Suite 565 - city: San Francisco - state: CA - zip: '94107' - country: USA - identity_verification_status: Skipped - External-Payroll-Object: - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/External-Payroll" - examples: - Example: - value: - uuid: c5fdae57-5483-4529-9aae-f0edceed92d4 - company_uuid: bcb305b0-2855-4025-8d22-e484a9e6b7c9 - check_date: '2022-06-03' - payment_period_start_date: '2022-05-15' - payment_period_end_date: '2022-05-30' - status: unprocessed - external_payroll_items: - - employee_uuid: 44f7cba9-7a3d-4f08-b7bd-6fcf5211f8ca - earnings: - - amount: '10000.0' - hours: '0.0' - earning_type: CompanyPayType - earning_id: 1 - - amount: '500.0' - hours: '0.0' - earning_type: CompanyEarningType - earning_id: 4 - benefits: - - benefit_id: 22 - company_contribution_amount: '100.0' - employee_deduction_amount: '50.0' - - benefit_id: 25 - company_contribution_amount: '0.0' - employee_deduction_amount: '300.0' - taxes: - - tax_id: 1 - amount: '400.0' - - tax_id: 2 - amount: '60.0' - applicable_earnings: - - earning_type: CompanyPayType - earning_id: 1 - name: Regular Wages - input_type: amount - category: default - - earning_type: CompanyEarningType - earning_id: 4 - name: Cash Tips - input_type: amount - category: default - applicable_benefits: - - id: 22 - description: Kaiser - active: true - - id: 25 - description: HSA - active: true - applicable_taxes: - - id: 1 - name: Federal Income Tax - employer_tax: false - resident_tax: false - - id: 2 - name: Social Security - employer_tax: false - resident_tax: false - metadata: - deletable: true - External-Payroll-List: - description: Example response - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/External-Payroll-Basic" - examples: - Example: - value: - - uuid: c5fdae57-5483-4529-9aae-f0edceed92d4 - company_uuid: bcb305b0-2855-4025-8d22-e484a9e6b7c9 - check_date: '2022-06-03' - payment_period_start_date: '2022-05-15' - payment_period_end_date: '2022-05-30' - status: unprocessed - External-Payroll-Tax-Suggestions-List: - description: Example response - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/External-Payroll-Tax-Suggestions" - examples: - Example: - value: - - employee_uuid: d21848d5-446f-48a8-9430-30fbefeabda4 - tax_suggestions: - - tax_id: 1 - amount: '500.0' - - tax_id: 2 - amount: '100.0' - - tax_id: 4 - amount: '30.0' - Tax-Liabilities-List: - description: Example response - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Tax-Liabilities-Selections" - examples: - Example: - value: - - tax_id: 1 - tax_name: Federal Income Tax - last_unpaid_external_payroll_uuid: - possible_liabilities: - - liability_amount: '0.0' - payroll_check_date: - external_payroll_uuid: - - liability_amount: '3000.0' - payroll_check_date: '2022-06-01' - external_payroll_uuid: 1bf1efe1-72d4-4e6e-a181-611f3ea66435 - - tax_id: 2 - tax_name: Social Security - last_unpaid_external_payroll_uuid: - possible_liabilities: - - liability_amount: '0.0' - payroll_check_date: - external_payroll_uuid: - - liability_amount: '50.0' - payroll_check_date: '2022-06-01' - external_payroll_uuid: 1bf1efe1-72d4-4e6e-a181-611f3ea66435 - Flow-Object: - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Flow" - examples: - Example: - value: - url: https://flows.gusto-demo.com/flows/lO2BHHAMCScPVV9G5WEURW0Im_nP9mGYloQgjUWbenQ - Form-Object: - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Form" - examples: - Example: - value: - uuid: 48cdd5ec-a4dd-4840-a424-ad79f38d8408 - name: company_direct_deposit - title: Direct Deposit Authorization - description: We need you to sign paperwork to authorize us to debit and credit your bank account and file and pay your taxes. - draft: false - quarter: - year: - document_content_type: application/pdf - requires_signing: true - Form-Object-Pdf: - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Form-Pdf" - examples: - Example: - value: - uuid: 48cdd5ec-a4dd-4840-a424-ad79f38d8408 - document_url: https://app.gusto-demo.com/assets/forms/7757842065202782/original/company_direct_deposit20211007-48226-gsqo8k.pdf?1633667020 - document_content_type: application/pdf - Form-List: - description: Example response - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Form" - examples: - Example: - value: - - uuid: 48cdd5ec-a4dd-4840-a424-ad79f38d8408 - name: company_direct_deposit - title: Direct Deposit Authorization - description: We need you to sign paperwork to authorize us to debit and credit your bank account and file and pay your taxes. - draft: false - quarter: - year: - document_content_type: application/pdf - requires_signing: true - Industry-Object: - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Industry" - examples: - Example: - value: - company_uuid: 423dd616-6dbc-4724-938a-403f6217a933 - naics_code: '611420' - sic_codes: - - '8243' - title: Computer Training - Job-Object: - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Job" - examples: - Example: - value: - uuid: d6d1035e-8a21-4e1d-89d5-fa894f9aff97 - version: d0e719137f89ca3dd334dd4cc248ffbb - employee_uuid: 948daac8-4355-4ece-9e2a-229898accb22 - current_compensation_uuid: ea8b0b90-1112-4f9d-bb93-bf029bc8537a - payment_unit: Year - primary: true - title: Account Director - state_wc_covered: null, - state_wc_class_code: null, - compensations: - - uuid: ea8b0b90-1112-4f9d-bb93-bf029bc8537a - version: 994b75511d1debac5d7e2ddeae13679f - payment_unit: Year - flsa_status: Exempt - job_uuid: d6d1035e-8a21-4e1d-89d5-fa894f9aff97 - effective_date: '2021-01-20' - rate: '78000.00' - adjust_for_minimum_wage: false - minimum_wages: [] - rate: '78000.00' - hire_date: '2020-01-20' - Job-List: - description: Example response - content: - application/json: + "$ref": "#/components/schemas/Time-Off-Policy" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: timeOffPolicies + x-speakeasy-name-override: getAll + post: + summary: Create a time off policy + parameters: + - name: X-Gusto-API-Version + in: header schema: - type: array - items: - "$ref": "#/components/schemas/Job" - examples: - Example: - value: - - uuid: d6d1035e-8a21-4e1d-89d5-fa894f9aff97 - version: 6c0ed1521e8b86eb36bd4455a63a2dac - employee_uuid: 948daac8-4355-4ece-9e2a-229898accb22 - current_compensation_uuid: ea8b0b90-1112-4f9d-bb93-bf029bc8537a - payment_unit: Year - primary: true - title: Client Support Director - state_wc_covered: null, - state_wc_class_code: null, - compensations: - - uuid: ea8b0b90-1112-4f9d-bb93-bf029bc8537a - version: 2cd4b18662395eb53bcf80d5b5447f36 - payment_unit: Year - flsa_status: Exempt - job_uuid: d6d1035e-8a21-4e1d-89d5-fa894f9aff97 - effective_date: '2021-01-20' - rate: '70000.00' - adjust_for_minimum_wage: false - minimum_wages: [] - rate: '70000.00' - hire_date: '2020-01-20' - Employee-Federal-Tax-Object: - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Federal-Tax" - examples: - Example: - value: - version: 56a489ce86ed6c1b0f0cecc4050a0b01 - filing_status: Single - extra_withholding: '0.0' - two_jobs: true - dependents_amount: '0.0' - other_income: '0.0' - deductions: '0.0' - employee_id: 29 - w4_data_type: rev_2020_w4 - Location-Object: - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Location" - examples: - Example: - value: - company_uuid: 6bf7807c-a5a0-4f4d-b2e7-3fbb4b2299fb - version: 7d9753112507b9dda4fb97910f39b06e - phone_number: '5825710808' - uuid: 04552eb9-7829-4b18-ae96-6983552948df - street_1: 412 Kiera Stravenue - street_2: Suite 391 - city: San Francisco - state: CA - zip: '94107' - country: USA - active: true - filing_address: false - mailing_address: false - created_at: '2023-09-12T16:42:25.000-07:00' - updated_at: '2023-09-12T16:42:25.000-07:00' - Location-List: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true schema: - type: array - items: - "$ref": "#/components/schemas/Location" - examples: - Example: - value: - - company_uuid: 6bf7807c-a5a0-4f4d-b2e7-3fbb4b2299fb - version: 7d9753112507b9dda4fb97910f39b06e - phone_number: '5825710808' - uuid: 04552eb9-7829-4b18-ae96-6983552948df - street_1: 412 Kiera Stravenue - street_2: Suite 391 - city: San Francisco - state: CA - zip: '94107' - country: USA - active: true - filing_address: false - mailing_address: false - created_at: '2023-09-12T16:42:25.000-07:00' - updated_at: '2023-09-12T16:42:25.000-07:00' - - company_uuid: 6bf7807c-a5a0-4f4d-b2e7-3fbb4b2299fb - version: 15e6b9680e00f3122729e64e3cef3224 - phone_number: '2866070827' - uuid: fa94a2fd-11a8-4024-87ff-85c587d9d2b4 - street_1: 644 Fay Vista - street_2: Suite 842 - city: Richmond - state: VA - zip: '23218' - country: USA - active: true - filing_address: false - mailing_address: false - created_at: '2023-09-12T16:42:25.000-07:00' - updated_at: '2023-09-12T16:42:25.000-07:00' - Contractor-List: - description: Example response - content: - application/json: + type: string + x-gusto-rswag: true + operationId: post-v1-companies-company_uuid-time_off_policies + security: + - CompanyAccessAuth: [] + description: |- + Create a time off policy + + scope: `time_off_policies:write` + tags: + - Time Off Policies + x-gusto-integration-type: + - embedded + responses: + '201': + description: created + content: + application/json: + schema: + "$ref": "#/components/schemas/Time-Off-Policy" + '422': + description: Policy name required + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Time-Off-Policy-Request" + required: true + x-speakeasy-name-override: create + x-speakeasy-group: timeOffPolicies + "/v1/time_off_policies/{time_off_policy_uuid}": + get: + summary: Get a time off policy + parameters: + - name: X-Gusto-API-Version + in: header schema: - type: array - items: - "$ref": "#/components/schemas/Contractor" - examples: - Example: - value: - - uuid: c9fc1ad3-c107-4e7b-aa21-2dd4b00a7a07 - company_uuid: b7457fec-3b76-43bb-9c6e-69cca4688942 - wage_type: Fixed - is_active: false - version: 63859768485e218ccf8a449bb60f14ed - type: Individual - first_name: Kory - last_name: Gottlieb - middle_initial: P - business_name: - ein: - has_ein: false - has_ssn: true - department: Backup Dancer - department_uuid: 1802465d-4f68-4865-920c-1307ab095f12 - email: keira.west@mckenzie.org - start_date: '2022-01-01' - file_new_hire_report: false - work_state: - onboarded: true - onboarding_status: onboarding_completed - address: - street_1: 621 Jast Row - street_2: Apt. 281 - city: Coral Springs - state: FL - zip: '33065' - country: USA - hourly_rate: '0.00' - - uuid: 183a86f4-a803-4b38-9357-cd9b78e2560c - company_uuid: afdd5d98-581b-4fc0-b988-706b7d23b2a5 - wage_type: Fixed - is_active: true - version: 8aab307f1e8ed788697f8986346af559 - type: Business - first_name: - last_name: - middle_initial: - business_name: Labadie-Stroman - ein: XX-XXX0001 - has_ein: true - has_ssn: false - email: jonatan@kerluke.info - start_date: '2022-01-01' - onboarded: true - onboarding_status: onboarding_completed - address: - street_1: 1625 Bednar Center - street_2: Apt. 480 - city: Port Charlotte - state: FL - zip: '33954' - country: USA - hourly_rate: '0.00' - file_new_hire_report: false - work_state: - - uuid: ea1c2d65-b622-4899-bcb7-5cd0fe0232aa - id: 7757515807623484 - company_uuid: 281c763d-a2ba-4f51-b9e8-b1ed61576d62 - company_id: 7757616923763477 - wage_type: Fixed - is_active: true - version: b48c46abfed1487b873b442334b3c4ff - type: Individual - first_name: Chanel - last_name: Boyle - middle_initial: X - business_name: - ein: - has_ein: false - has_ssn: true - email: loyal@hettinger.biz - file_new_hire_report: true - work_state: TX - onboarded: true - onboarding_status: onboarding_completed - address: - street_1: 35913 Darrick Run - street_2: Apt. 913 - city: Cypress - state: TX - zip: '77433' - country: USA - hourly_rate: '0.00' - Created-Contractor-Object: - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor" - examples: - Individual Contractor: - value: - uuid: c9fc1ad3-c107-4e7b-aa21-2dd4b00a7a07 - company_uuid: b7457fec-3b76-43bb-9c6e-69cca4688942 - wage_type: Hourly - start_date: '2022-01-01' - is_active: false - version: 63859768485e218ccf8a449bb60f14ed - type: Individual - first_name: Kory - last_name: Gottlieb - middle_initial: P - business_name: - ein: - has_ein: false - has_ssn: true - department_uuid: - email: keira.west@mckenzie.org - file_new_hire_report: true - work_state: FL - onboarded: true - onboarding_status: onboarding_completed - address: - hourly_rate: '60.00' - payment_method: - Business Contractor: - value: - uuid: c7c0659c-21a6-4b4e-b74c-9252576fc68c - company_uuid: 0ec4ae6e-e436-460d-b63c-94a14503d16f - wage_type: Fixed - start_date: '2022-01-01' - is_active: true - version: 8aab307f1e8ed788697f8986346af559 - type: Business - first_name: - last_name: - middle_initial: - business_name: Labadie-Stroman - ein: XX-XXX0001 - has_ein: true - has_ssn: false - email: jonatan@kerluke.info - file_new_hire_report: false - work_state: - onboarded: false - onboarding_status: admin_onboarding_incomplete - address: - hourly_rate: '0.00' - payment_method: - Contractor-Object: - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor" - examples: - Individual Contractor: - value: - uuid: c9fc1ad3-c107-4e7b-aa21-2dd4b00a7a07 - company_uuid: b7457fec-3b76-43bb-9c6e-69cca4688942 - wage_type: Hourly - start_date: '2022-01-01' - is_active: false - version: 63859768485e218ccf8a449bb60f14ed - type: Individual - first_name: Kory - last_name: Gottlieb - middle_initial: P - business_name: - ein: - has_ein: false - has_ssn: true - department_uuid: 56260b3d-c375-415c-b77a-75d99f717193 - email: keira.west@mckenzie.org - file_new_hire_report: true - work_state: FL - onboarded: true - onboarding_status: onboarding_completed - address: - street_1: 621 Jast Row - street_2: Apt. 281 - city: Coral Springs - state: FL - zip: '33065' - country: USA - hourly_rate: '60.00' - payment_method: Direct Deposit - Business Contractor: - value: - uuid: c7c0659c-21a6-4b4e-b74c-9252576fc68c - company_uuid: 0ec4ae6e-e436-460d-b63c-94a14503d16f - wage_type: Fixed - start_date: '2022-01-01' - is_active: true - version: 8aab307f1e8ed788697f8986346af559 - type: Business - first_name: - last_name: - middle_initial: - business_name: Labadie-Stroman - ein: XX-XXX0001 - has_ein: true - has_ssn: false - email: jonatan@kerluke.info - file_new_hire_report: false - work_state: - onboarded: false - onboarding_status: admin_onboarding_incomplete - address: - hourly_rate: '0.00' - payment_method: Direct Deposit - Contractor-Onboarding-Status-Object: - description: Example response. - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor-Onboarding-Status" - examples: - Example: - value: - uuid: bc57832c-d8bc-43a7-ae99-3a03380ff037 - onboarding_status: admin_onboarding_incomplete - onboarding_steps: - - title: Basic details - id: basic_details - required: true - completed: false - requirements: [] - - title: Enter compensation details - id: compensation_details - required: true - completed: false - requirements: [] - - title: Add an address - id: add_address - required: true - completed: false - requirements: [] - - title: Payment details - id: payment_details - required: true - completed: false - requirements: [] - - title: Sign and acknowledge documents - id: sign_documents - required: false - completed: false - requirements: - - basic_details, - - add_address - - title: File new hire report - id: file_new_hire_report - required: false - completed: false - requirements: - - basic_details - Contractor-Payment-Object: - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor-Payment" - examples: - Example: - value: - uuid: 04552eb9-7829-4b18-ae96-6983552948df - contractor_uuid: bc57832c-d8bc-43a7-ae99-3a03380ff037 - bonus: '20.0' - date: '2020-10-19' - hours: '40.0' - payment_method: Direct Deposit - reimbursement: '100.0' - status: Unfunded - hourly_rate: '18.0' - may_cancel: true - wage: '0.0' - wage_type: Hourly - wage_total: '740.00' - Contractor-Payment-Group-List: - description: List of Contractor Payment Groups - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: time_off_policy_uuid + in: path + description: The UUID of the time off policy + required: true schema: - type: array - items: - "$ref": "#/components/schemas/Contractor-Payment-Group-Minimal" - examples: - Example: - value: - - uuid: 7f2337f9-9b78-44b9-aeed-be4777b833a8 - company_uuid: c54046f7-1be4-4c54-8194-f4842c30c86d - check_date: '2024-03-15' - debit_date: '2024-03-11' - status: Funded - creation_token: a51a3500-3200-43af-a738-169d4b66a9db - totals: - debit_amount: '740.00' - wage_amount: '720.00' - reimbursement_amount: '20.00' - - uuid: 56260b3d-c375-415c-b77a-75d99f717193 - company_uuid: c54046f7-1be4-4c54-8194-f4842c30c86d - check_date: '2024-05-02' - debit_date: '2024-04-26' - status: Unfunded - creation_token: 45ef81bb-ae24-4ad1-b2c6-6e563a4c30ed - totals: - debit_amount: '2365.00' - wage_amount: '2270.00' - reimbursement_amount: '95.00' - Contractor-Payment-Group-Object: - description: Full contractor payment group object - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor-Payment-Group" - examples: - Example: - value: - uuid: f693e034-d833-46e3-88d4-2c820c383c57 - company_uuid: c54046f7-1be4-4c54-8194-f4842c30c86d - check_date: '2024-05-07' - debit_date: '2024-05-01' - status: Unfunded - creation_token: 45ef81bb-ae24-4ad1-b2c6-6e563a4c30ed - contractor_payments: - - uuid: 630dc982-f498-4ebc-a6dc-4d76711027ce - contractor_uuid: 2e6d0970-31bf-47ce-bdb4-713e4207ecf4 - bonus: '0.0' - hours: '40.0' - hourly_rate: '18.0' - may_cancel: false - payment_method: Direct Deposit - reimbursement: '75.0' - status: Unfunded - wage: '0.0' - wage_type: Hourly - wage_total: '720.0' - - uuid: 12f51eba-d653-4357-8c05-1f1f8d0fd5e3 - contractor_uuid: a975fda0-fcf5-469a-a5fd-06e43d1cd99d - bonus: '0.0' - hours: '0.0' - hourly_rate: '0.0' - may_cancel: false - payment_method: Check - reimbursement: '0.0' - status: Unfunded - wage: '1500.0' - wage_type: Fixed - wage_total: '1500.0' - totals: - amount: '2295.0' - debit_amount: '2295.0' - wage_amount: '2220.0' - reimbursement_amount: '75.0' - Contractor-Payment-Group-Null-Uuid-Object: - description: Full contractor payment group object with null uuid - content: - application/json: + type: string + x-gusto-rswag: true + operationId: get-v1-time_off_policies-time_off_policy_uuid + security: + - CompanyAccessAuth: [] + description: |- + Get a time off policy + + scope: `time_off_policies:read` + tags: + - Time Off Policies + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Time-Off-Policy" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: timeOffPolicies + x-speakeasy-name-override: get + put: + summary: Update a time off policy + parameters: + - name: X-Gusto-API-Version + in: header schema: - allOf: - - "$ref": "#/components/schemas/Contractor-Payment-Group" - - type: object - properties: - uuid: - type: - - string - - 'null' - examples: - Example: - value: - uuid: - company_uuid: c54046f7-1be4-4c54-8194-f4842c30c86d - check_date: '2024-05-07' - debit_date: '2024-05-01' - status: Unfunded - creation_token: nil - contractor_payments: - - uuid: nil - contractor_uuid: 2e6d0970-31bf-47ce-bdb4-713e4207ecf4 - bonus: '0.0' - hours: '40.0' - hourly_rate: '18.0' - may_cancel: false - payment_method: Direct Deposit - reimbursement: '75.0' - status: Unfunded - wage: '0.0' - wage_type: Hourly - wage_total: '720.0' - - uuid: nil - contractor_uuid: a975fda0-fcf5-469a-a5fd-06e43d1cd99d - bonus: '0.0' - hours: '0.0' - hourly_rate: '0.0' - may_cancel: false - payment_method: Check - reimbursement: '0.0' - status: Unfunded - wage: '1500.0' - wage_type: Fixed - wage_total: '1500.0' - totals: - amount: '2295.0' - debit_amount: '2295.0' - wage_amount: '2220.0' - reimbursement_amount: '75.0' - Contractor-Payment-Method-Object: - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor-Payment-Method" - examples: - Example: - value: - version: 63859768485e218ccf8a449bb60f14ed - type: Direct Deposit - split_by: Percentage - splits: - - uuid: e88f9436-b74e-49a8-87e9-777b9bfe715e - name: BoA Checking Account - hidden_account_number: XXXX0992 - priority: 1 - split_amount: 100 - Compensation-Object: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: time_off_policy_uuid + in: path + description: The UUID of the time off policy + required: true schema: - "$ref": "#/components/schemas/Compensation" - examples: - Exempt: - value: - uuid: db57832c-d8bc-43a7-ae99-0a04480ff037 - version: 98jr3289h3298hr9329gf9egskt3kagri32qqgiqe3872 - job_uuid: d8f8fbe7-496d-4b69-86f0-1e2d1b73a086 - rate: '60000.00' - payment_unit: Year - flsa_status: Exempt - effective_date: '2020-12-11' - adjust_for_minimum_wage: false - minimum_wages: [] - Minimum Wage Adjusted: - value: - uuid: a4d9ba9c-32cc-4cc1-a5bc-6ef4cd653e7a - version: cc59bd3879d655fb940a1f6b675f2ad9 - job_uuid: d8f8fbe7-496d-4b69-86f0-1e2d1b73a086 - rate: '5.00' - payment_unit: Hour - flsa_status: Nonexempt - effective_date: '2018-12-11' - adjust_for_minimum_wage: true - minimum_wages: - - uuid: edeea5af-ecd6-4b1c-b5de-5cff2d302738 - wage: '7.25' - effective_date: '2018-12-11' - Compensation-List: - description: Example response - content: - application/json: + type: string + x-gusto-rswag: true + operationId: put-v1-time_off_policies-time_off_policy_uuid + security: + - CompanyAccessAuth: [] + description: |- + Update a time off policy + + scope: `time_off_policies:write` + tags: + - Time Off Policies + x-gusto-integration-type: + - embedded + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Time-Off-Policy" + '422': + description: Unlimited Policy updated with accrual rate + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + requestBody: + content: + application/json: + schema: + allOf: + - "$ref": "#/components/schemas/Versionable-Required" + - "$ref": "#/components/schemas/Time-Off-Policy-Update-Request" + required: true + x-speakeasy-group: timeOffPolicies + x-speakeasy-name-override: update + "/v1/time_off_policies/{time_off_policy_uuid}/deactivate": + put: + summary: Deactivate a time off policy + parameters: + - name: X-Gusto-API-Version + in: header schema: - type: array - items: - "$ref": "#/components/schemas/Compensation" - examples: - Example: - value: - - uuid: db57832c-d8bc-43a7-ae99-0a04480ff037 - version: 98jr3289h3298hr9329gf9egskt3kagri32qqgiqe3872 - job_uuid: d8f8fbe7-496d-4b69-86f0-1e2d1b73a086 - rate: '70.00' - payment_unit: Hour - flsa_status: Nonexempt - effective_date: '2020-12-11' - adjust_for_minimum_wage: false - minimum_wages: [] - - id: 1363316536327003 - job_id: 1123581321345589 - uuid: a4d9ba9c-32cc-4cc1-a5bc-6ef4cd653e7a - version: cc59bd3879d655fb940a1f6b675f2ad9 - job_uuid: d8f8fbe7-496d-4b69-86f0-1e2d1b73a086 - payment_unit: Hour - flsa_status: Nonexempt - effective_date: '2018-12-11' - rate: '5.00' - adjust_for_minimum_wage: true - minimum_wages: - - uuid: edeea5af-ecd6-4b1c-b5de-5cff2d302738 - wage: '7.25' - effective_date: '2018-12-11' - Garnishment-Object: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: time_off_policy_uuid + in: path + description: The UUID of the time off policy + required: true schema: - "$ref": "#/components/schemas/Garnishment" - examples: - Example: - value: - uuid: 4c7841a2-1363-497e-bc0f-664703c7484f - version: 52b7c567242cb7452e89ba2bc02cb476 - employee_uuid: a6b53294-f871-4db2-bbd4-8c3d1fe56440 - active: true - amount: '8.00' - description: Company loan to employee - court_ordered: false - times: 5 - recurring: false - annual_maximum: - total_amount: - pay_period_maximum: '100.00' - deduct_as_percentage: true - garnishment_type: - child_support: - Child-Support-Example: - value: - uuid: 4c7841a2-1363-497e-bc0f-664703c7481a - version: 52b7c567242cb7452e89ba2bc02cb383 - employee_uuid: a6b53294-f871-4db2-bbd4-8c3d1fe56440 - active: true - amount: '40.00' - description: Child support - AZ28319 - court_ordered: true - times: - recurring: true - annual_maximum: - total_amount: - pay_period_maximum: '400.00' - deduct_as_percentage: true - garnishment_type: child_support - child_support: - state: AZ - payment_period: Monthly - case_number: AZ28319 - order_number: - remittance_number: - fips_code: '04000' - Garnishment-List: - description: Example response - content: - application/json: + type: string + x-gusto-rswag: true + operationId: put-v1-time_off_policies-time_off_policy_uuid-deactivate + security: + - CompanyAccessAuth: [] + description: |- + Deactivate a time off policy + + scope: `time_off_policies:write` + tags: + - Time Off Policies + x-gusto-integration-type: + - embedded + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Time-Off-Policy" + '422': + description: Policy has pending time off requests + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: timeOffPolicies + x-speakeasy-name-override: deactivate + "/v1/time_off_policies/{time_off_policy_uuid}/add_employees": + put: + summary: Add employees to a time off policy + parameters: + - name: X-Gusto-API-Version + in: header schema: - type: array - items: - "$ref": "#/components/schemas/Garnishment" - examples: - Example: - value: - - uuid: 4c7841a2-1363-497e-bc0f-664703c7484f - version: 52b7c567242cb7452e89ba2bc02cb476 - employee_uuid: a6b53294-f871-4db2-bbd4-8c3d1fe56440 - active: true - amount: '8.00' - description: Company loan to employee - court_ordered: false - times: 5 - recurring: false - annual_maximum: - total_amount: - pay_period_maximum: '100.00' - deduct_as_percentage: true - garnishment_type: - child_support: - - uuid: 4c7841a2-1363-497e-bc0f-664703c7481a - version: 52b7c567242cb7452e89ba2bc02cb383 - employee_uuid: a6b53294-f871-4db2-bbd4-8c3d1fe56440 - active: true - amount: '40.00' - description: Child support - AZ28319 - court_ordered: true - times: - recurring: true - annual_maximum: - total_amount: - pay_period_maximum: '400.00' - deduct_as_percentage: true - garnishment_type: child_support - child_support: - state: AZ - payment_period: Monthly - case_number: AZ28319 - order_number: - remittance_number: - fips_code: '04000' - Child-Support-Data-Object: - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Child-Support-Data" - examples: - Example: - value: - agencies: - - state: AK - name: Alaska Child Support Services Division - manual_payment_required: false - fips_codes: - - county: - code: '0200000' - required_attributes: - - key: case_number - label: CSE Case Number - - state: OH - name: Ohio Office of Child Support Enforcement - manual_payment_required: false - fips_codes: - - county: - code: '39000' - required_attributes: - - key: case_number - label: CSE Case Number - - key: order_number - label: Order Identifier - Employee-Onboarding-Documents-Object: - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Onboarding-Document" - examples: - Example: - value: - i9_document: true - I9-Authorization-Object: - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/I9-Authorization" - examples: - Example: - value: - - version: 6ae7ff720107b356bf13b1606f60b24f - uuid: 7f2337f9-9b78-44b9-aeed-be4777b833a8 - form_uuid: c54046f7-1be4-4c54-8194-f4842c30c86d - authorization_status: alien - document_type: foreign_passport - has_document_number: true - expiration_date: '2027-01-01' - country: Panama - employer_signed: false - employee_signed: false - additional_info: Notes - alt_procedure: false - I9-Authorization-Documents-Object: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: time_off_policy_uuid + in: path + description: The UUID of the time off policy + required: true schema: - type: array - items: - "$ref": "#/components/schemas/I9-Authorization-Document" - examples: - Example: - value: - - uuid: 7f2337f9-9b78-44b9-aeed-be4777b833a8 - document_type: driver_license - issuing_authority: USA - expiration_date: '2027-01-01' - document_title: Driver's license - - uuid: 9p2337f9-9b78-44b9-aeed-be4777b833a8 - document_type: ssn_card - issuing_authority: USA - document_title: Social Security card - I9-Authorization-Document-Options-Object: - description: Example response - content: - application/json: + type: string + x-gusto-rswag: true + operationId: put-v1-time_off_policies-time_off_policy_uuid-add_employees + security: + - CompanyAccessAuth: [] + description: |- + 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` + tags: + - Time Off Policies + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Time-Off-Policy" + '422': + description: Add employees with no employees + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + required: + - employees + properties: + employees: + type: array + items: + type: object + required: + - uuid + properties: + uuid: + type: string + description: The UUID of the employee + balance: + type: + - string + - 'null' + description: The starting balance for the employee + required: true + x-speakeasy-group: timeOffPolicies + x-speakeasy-name-override: addEmployees + "/v1/time_off_policies/{time_off_policy_uuid}/remove_employees": + put: + summary: Remove employees from a time off policy + parameters: + - name: X-Gusto-API-Version + in: header schema: - type: array - items: - "$ref": "#/components/schemas/I9-Authorization-Document-Option" - examples: - Example: - value: - - section: A - description: Foreign passport - document_type: foreign_passport_w_i94 - document_title: - - Foreign passport - common_choice: true - - section: B - description: Driver’s license or state-issued ID card - document_type: driver_license - document_title: - - Driver's license - - State ID card - common_choice: true - - section: C - description: Social Security card - document_type: ssn_card - document_title: - - Social Security card - common_choice: true - Termination-Object: - description: Example Response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: time_off_policy_uuid + in: path + description: The UUID of the time off policy + required: true schema: - "$ref": "#/components/schemas/Termination" - examples: - Example: - value: - uuid: da441196-43a9-4d23-ad5d-f37ce6bb99c0 - employee_uuid: da441196-43a9-4d23-ad5d-f37ce6bb99c0 - version: d487dd0b55dfcacdd920ccbdaeafa351 - active: true - cancelable: true - effective_date: '2020-03-10' - run_termination_payroll: false - Termination-List: - description: Example response - content: - application/json: + type: string + x-gusto-rswag: true + operationId: put-v1-time_off_policies-time_off_policy_uuid-remove_employees + security: + - CompanyAccessAuth: [] + description: |- + Remove employees from a time off policy + + scope: `time_off_policies:write` + tags: + - Time Off Policies + x-gusto-integration-type: + - embedded + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Time-Off-Policy" + '422': + description: Remove employees with no employees + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + required: + - employees + properties: + employees: + type: array + items: + type: object + required: + - uuid + properties: + uuid: + type: string + description: The UUID of the employee + required: true + x-speakeasy-group: timeOffPolicies + x-speakeasy-name-override: removeEmployees + "/v1/time_off_policies/{time_off_policy_uuid}/balance": + put: + summary: Update employee time off balances + parameters: + - name: X-Gusto-API-Version + in: header schema: - type: array - items: - "$ref": "#/components/schemas/Termination" - examples: - Example: - value: - - uuid: da441196-43a9-4d23-ad5d-f37ce6bb99c0 - employee_uuid: da441196-43a9-4d23-ad5d-f37ce6bb99c0 - version: d487dd0b55dfcacdd920ccbdaeafa351 - active: true - cancelable: true - effective_date: '2020-03-10' - run_termination_payroll: false - Pay-Period-List: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: time_off_policy_uuid + in: path + description: The UUID of the time off policy + required: true schema: - type: array - items: - "$ref": "#/components/schemas/Pay-Period" - examples: - Example: - value: - - start_date: '2020-01-11' - end_date: '2020-01-24' - pay_schedule_uuid: 00ebc4a4-ec88-4435-8f45-c505bb63e501 - payroll: - payroll_uuid: bfd8aad4-9c3f-4ca3-b072-a1b2b3ea689f - check_date: '2020-01-30' - processed: true - payroll_deadline: '2020-01-28' - payroll_type: regular - - start_date: '2020-12-12' - end_date: '2020-12-25' - pay_schedule_uuid: cb53db72-612f-4eb1-9b85-389e79cfa510 - payroll: - payroll_uuid: 7ed29b45-4bb1-4d38-bd94-4d607d49fd21 - check_date: '2020-12-30' - processed: true - payroll_deadline: '2020-12-28' - payroll_type: regular - Pay-Schedule-Object: - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Pay-Schedule-Show" - examples: - Example: - value: - uuid: f2a69c38-e2f9-4e31-b5c5-4754fc60a052 - version: 68934a3e9455fa72420237eb05902327 - frequency: Twice per month - anchor_pay_date: '2020-05-15' - anchor_end_of_pay_period: '2020-05-08' - day_1: 15 - day_2: 31 - name: Engineering - custom_name: A new monthly pay schedule - auto_payroll: false - active: true - Pay-Schedule-Show-Response: - description: Example response - content: - application/json: + type: string + x-gusto-rswag: true + operationId: put-v1-time_off_policies-time_off_policy_uuid-balance + security: + - CompanyAccessAuth: [] + description: |- + Updates time off hours balances for employees for a time off policy. + + scope: `time_off_policies:write` + tags: + - Time Off Policies + x-gusto-integration-type: + - embedded + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Time-Off-Policy" + '422': + description: Unlimited policy balance update + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + required: + - employees + properties: + employees: + type: array + items: + type: object + required: + - uuid + - balance + properties: + uuid: + type: string + description: The UUID of the employee + balance: + type: string + description: The new balance for the employee + required: true + x-speakeasy-group: timeOffPolicies + x-speakeasy-name-override: updateBalance + "/oauth/token": + post: + summary: Create a System Access Token or Refresh an Access Token + parameters: + - name: X-Gusto-API-Version + in: header schema: - allOf: - - "$ref": "#/components/schemas/Pay-Schedule-Show" - - "$ref": "#/components/schemas/Versionable-Required" - examples: - Example: - value: - uuid: f2a69c38-e2f9-4e31-b5c5-4754fc60a052 - version: 68934a3e9455fa72420237eb05902327 - frequency: Twice per month - anchor_pay_date: '2020-05-15' - anchor_end_of_pay_period: '2020-05-08' - day_1: 15 - day_2: 31 - name: Engineering - custom_name: A new monthly pay schedule - auto_payroll: false - active: true - auto_payroll_enablement_blockers: - - key: missing_state_tax_requirements - metadata: - - states: - - CO - - CA - - NY - Pay-Schedule-Create-Update-Object: - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Pay-Schedule-Create-Update" - examples: - Example: - value: - uuid: f2a69c38-e2f9-4e31-b5c5-4754fc60a052 - frequency: Twice per month - anchor_pay_date: '2020-05-15' - anchor_end_of_pay_period: '2020-05-08' - day_1: 15 - day_2: 31 - name: Engineering - custom_name: A new monthly pay schedule - auto_payroll: false - active: true - Pay-Schedule-List: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + operationId: oauth-access-token + security: [] + description: Creates a system access token or refreshes an oauth access token + tags: + - Introspection + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Authentication" + requestBody: + content: + application/json: + schema: + oneOf: + - type: object + title: Refresh Token Request + required: + - client_id + - client_secret + - grant_type + - refresh_token + properties: + client_id: + type: string + description: Your client ID + example: qr6L_9FRkbMVL_GdwvrMW6Ef8tcU6NUxjWpOfqXqOG8 + client_secret: + type: string + description: Your client secret + example: 3aQSHRB3596nZhm6NdNBELZ1u9xbZmvCrKpBhbZYq6w + grant_type: + type: string + enum: + - refresh_token + description: Set system_access to create a system access token, refresh_token to refresh an existing token + refresh_token: + type: string + descrition: The refresh token being exchanged for an access token code + example: iEjL96L9Pndwmi-xVX3Q-xbrvvhnjHYGX87sopgGJ8E + redirect_uri: + type: string + description: The redirect URI you set up via the Developer Portal + - type: object + title: System Access Token Request + required: + - client_id + - client_secret + - grant_type + properties: + client_id: + type: string + description: Your client ID + example: qr6L_9FRkbMVL_GdwvrMW6Ef8tcU6NUxjWpOfqXqOG8 + client_secret: + type: string + description: Your client secret + example: 3aQSHRB3596nZhm6NdNBELZ1u9xbZmvCrKpBhbZYq6w + grant_type: + type: string + description: Set system_access to create a system access token, refresh_token to refresh an existing token + enum: + - system_access + required: true + "/v1/token_info": + get: + summary: Get info about the current access token + parameters: + - name: X-Gusto-API-Version + in: header schema: - "$ref": "#/components/schemas/Pay-Schedule-Show-Response" - examples: - Example: - value: - - uuid: 2097fe08-407a-46d7-b35c-a32402a2355e - version: 68934a3e9455fa72420237eb05902327 - frequency: Twice per month - anchor_pay_date: '2020-05-15' - anchor_end_of_pay_period: '2020-05-08' - day_1: 15 - day_2: 31 - name: Engineering - custom_name: Engineering department pay schedule - auto_payroll: false - active: true - - uuid: 8fc9f556-74fa-4271-97f6-4bfbfc5a5352 - version: 68934a3e9455fa72420237eb05902320 - frequency: Monthly - anchor_pay_date: '2020-05-31' - day_1: 31 - day_2: - name: Sales - custom_name: Sales department monthly schedule - auto_payroll: false - active: false - - uuid: 0e07d35a-af11-4123-bfcb-4dd5f2f12ee1 - version: 68934a3e9455fa72420237eb05902323 - frequency: Monthly - anchor_pay_date: '2020-05-31' - day_1: 31 - day_2: - name: Staff - custom_name: Staff department pay schedule - auto_payroll: true - active: false - Benefit-Type-Requirements-Object: - description: Benefit type requirements response - content: - application/json: - schema: - "$ref": "#/components/schemas/Benefit-Type-Requirements" - examples: - Example: - value: - employee_deduction: - required: true - editable: true - default_value: - choices: - contribution: - required: true - editable: true - default_value: - type: percentage - value: 2 - choices: - - percentage - deduct_as_percentage: - required: true - editable: true - default_value: - choices: - catch_up: - required: true - editable: true - default_value: - choices: - limit_option: - required: false - editable: false - default_value: - choices: - company_contribution_annual_maximum: - required: false - editable: false - default_value: - choices: - coverage_salary_multiplier: - required: false - editable: false - default_value: - choices: - coverage_amount: - required: false - editable: false - default_value: - choices: - Supported-Benefit-Object: - description: Supported benefit response - content: - application/json: - schema: - "$ref": "#/components/schemas/Supported-Benefit" - examples: - Example: - value: - benefit_type: 1 - name: Medical Insurance - description: Deductions and contributions for Medical Insurance - pretax: true - posttax: false - imputed: false - healthcare: true - retirement: false - yearly_limit: false - Supported-Benefit-List: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + operationId: get-v1-token-info + security: + - CompanyAccessAuth: [] + description: |- + Returns scope and resource information associated with the current access token. Use this endpoint to verify the following for the current access token: + * Resource (company, employee, contractor, or application) and resource owner + * Access level + tags: + - Introspection + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Token-Info" + x-speakeasy-name-override: getInfo + "/v1/webhook_subscriptions": + get: + summary: List webhook subscriptions + parameters: + - name: X-Gusto-API-Version + in: header schema: - type: array - items: - "$ref": "#/components/schemas/Supported-Benefit" - examples: - Supported Benefits: - value: - - benefit_type: 1 - name: Medical Insurance - description: Deductions and contributions for Medical Insurance - pretax: true - posttax: false - imputed: false - healthcare: true - retirement: false - yearly_limit: false - category: Health - - benefit_type: 2 - name: Dental Insurance - description: Deductions and contributions for Dental Insurance - pretax: true - posttax: false - imputed: false - healthcare: true - retirement: false - yearly_limit: false - category: Health - - benefit_type: 3 - name: Vision Insurance - description: Deductions and contributions for Vision Insurance - pretax: true - posttax: false - imputed: false - healthcare: true - retirement: false - yearly_limit: false - category: Health - - benefit_type: 6 - name: Health Savings Account - description: Health Savings Accounts (HSA) allow employees to be reimbursed for qualified medical expenses. Contributions are pre-tax and lower the total amount of tax paid by employees and the employer. Employers may also make tax-free contributions to employees' HSA. Remaining balances are carried over in next year. - pretax: true - posttax: false - imputed: false - healthcare: false - retirement: false - yearly_limit: true - category: Health - - benefit_type: 7 - name: Health FSA - description: Flexible Spending Accounts (FSA) allow employees to be reimbursed for qualified medical expenses. Contributions are pre-tax and lower the total amount of tax paid by employees and the employer. Employers may also make tax-free contributions to employees' FSA. Remaining balances are not carried over in next year. - pretax: true - posttax: false - imputed: false - healthcare: false - retirement: false - yearly_limit: true - category: Health - - benefit_type: 11 - name: Dependent Care FSA - description: Dependent Care FSA reimburses employees for expenses to care for dependents while the employee is at work (e.g. Daycares). Contributions are pre-tax and lower the total amount of tax paid by employees and the employer. Employers may also make tax-free contributions to employee FSA. Remaining balances are not carried over to the next year. Single parents or Married couples filing a joint return can elect up to $5000 per year. Married couples filing separate returns are limited to $2500 elections each. - pretax: true - posttax: false - imputed: false - healthcare: false - retirement: false - yearly_limit: true - category: Health - - benefit_type: 8 - name: SIMPLE IRA - description: The SIMPLE IRA is a tax-deferred retirement savings plan for employees. It is often used by small businesses as an alternative to 401(k) due to its relatively low operating cost. Employers are required to contribute a specific percentage to an employee's SIMPLE IRA. - pretax: true - posttax: false - imputed: false - healthcare: false - retirement: true - yearly_limit: true - category: Savings and Retirement - - benefit_type: 105 - name: Roth 401(k) - description: Roth 401(k) is an after-tax savings plan for employees. The standard maximum is $18,000, or $24,000 for employees over 50 years old. - pretax: false - posttax: true - imputed: false - healthcare: false - retirement: true - yearly_limit: true - category: Savings and Retirement - - benefit_type: 110 - name: Roth 403(b) - description: Roth 403(b) is an after-tax savings plan for certain clerics, employees of public schools, and employees of other types of tax-exempt organizations. Contributions made by employees are taxable for federal and state withholding. Often, employers contribute additional pre-tax dollars to the employee’s Roth account to encourage saving for retirement. - pretax: false - posttax: true - imputed: false - healthcare: false - retirement: true - yearly_limit: true - category: Savings and Retirement - - benefit_type: 5 - name: 401(k) - description: 401(k) is tax-deferred retirement savings plan for employees. The standard maximum is $18,000, or $24,000 for employees over 50 years old. - pretax: true - posttax: false - imputed: false - healthcare: false - retirement: true - yearly_limit: true - category: Savings and Retirement - - benefit_type: 9 - name: 403(b) - description: 403(b) is tax-deferred retirement savings plan for certain clerics, employees of public schools, and employees of other types of tax-exempt organizations. - pretax: true - posttax: false - imputed: false - healthcare: false - retirement: true - yearly_limit: true - category: Savings and Retirement - - benefit_type: 108 - name: SEP-IRA - description: A SEP-IRA is a pre-tax retirement savings plan where only the employer contributes. It is often used by small businesses as an alternative to 401(k) due to its relatively low operating cost. Employers are required to contribute the same percentage to all enrolled employees, with a maximum contribution of 25% of the employee’s compensation. - pretax: true - posttax: false - imputed: false - healthcare: false - retirement: true - yearly_limit: true - category: Savings and Retirement - - benefit_type: 109 - name: SARSEP - description: A SARSEP is a pre-tax retirement savings plan used by small businesses as an alternative to 401(k) due to its relatively low operating cost. While new SARSEP plans are not available, there are still some companies that are grandfathered into the plan. Employers are required to contribute the same percentage to all enrolled employees, with a maximum contribution of 25% of the employee’s compensation. - pretax: true - posttax: false - imputed: false - healthcare: false - retirement: true - yearly_limit: true - category: Savings and Retirement - - benefit_type: 107 - name: Group-Term Life Insurance - description: Group-Term Life Insurance for coverage in excess of $50,000 per employee is a taxable fringe benefit. See IRS Publication 15-B to determine the dollar value of the excess coverage. - pretax: false - posttax: true - imputed: true - healthcare: false - retirement: false - yearly_limit: false - category: Health - - benefit_type: 10 - name: Commuter Benefits (pre-tax) - description: Tax-free commuter benefits for transit, vanpooling, bicycling, and work-related parking costs. The annual maximum contribution for this pre-tax benefit is in the IRS publication 15-B. - pretax: true - posttax: false - imputed: false - healthcare: false - retirement: false - yearly_limit: false - category: Transportation - - benefit_type: 106 - name: Personal Use of Company Car - description: When an employee uses a company-owned car for personal matters, it is considered taxable benefit provided in-kind. - pretax: false - posttax: true - imputed: true - healthcare: false - retirement: false - yearly_limit: false - category: Transportation - - benefit_type: 111 - name: 529 College Savings - description: 529 College Savings is an after-tax savings plan for employees designed to encourage saving for future college costs. This benefit should be reported as a taxable benefit and will therefore be taxed. - pretax: false - posttax: true - imputed: true - healthcare: false - retirement: false - yearly_limit: false - category: Other - - benefit_type: 112 - name: Student Loan Repayment - description: Student Loan Repayment is an after-tax savings plan for employees to pay towards their outstanding student loans. An employee can choose to set aside after-tax dollars towards this benefit. These benefits should be reported as a taxable benefit and will therefore be taxed. - pretax: false - posttax: true - imputed: true - healthcare: false - retirement: false - yearly_limit: false - category: Other - - benefit_type: 998 - name: Short Term Disability (post-tax) - description: Third Party Disability or Third Party Leave are policies offered by employers that pay an employee for a specific life event (maternity leave, injury). All payments made to employees come from a third-party, such as an insurer. For more information on the taxation of these plans, please refer to publication 15-A for more details. - pretax: false - posttax: true - imputed: false - healthcare: false - retirement: false - yearly_limit: false - category: Health - - benefit_type: 999 - name: Long Term Disability (post-tax) - description: Third Party Disability or Third Party Leave are policies offered by employers that pay an employee for a specific life event (maternity leave, injury). All payments made to employees come from a third-party, such as an insurer. For more information on the taxation of these plans, please refer to publication 15-A for more details. - pretax: false - posttax: true - imputed: false - healthcare: false - retirement: false - yearly_limit: false - category: Health - - benefit_type: 996 - name: Short Term Disability (pre-tax) - description: Third Party Disability or Third Party Leave are policies offered by employers that pay an employee for a specific life event (maternity leave, injury). All payments made to employees come from a third-party, such as an insurer. For more information on the taxation of these plans, please refer to publication 15-A for more details. - pretax: true - posttax: false - imputed: false - healthcare: false - retirement: false - yearly_limit: false - category: Health - - benefit_type: 997 - name: Long Term Disability (pre-tax) - description: Third Party Disability or Third Party Leave are policies offered by employers that pay an employee for a specific life event (maternity leave, injury). All payments made to employees come from a third-party, such as an insurer. For more information on the taxation of these plans, please refer to publication 15-A for more details. - pretax: true - posttax: false - imputed: false - healthcare: false - retirement: false - yearly_limit: false - category: Health - - benefit_type: 991 - name: Voluntary Short Term Disability (post-tax) - description: Third Party Disability or Third Party Leave are policies offered by employers that pay an employee for a specific life event (maternity leave, injury). All payments made to employees come from a third-party, such as an insurer. For more information on the taxation of these plans, please refer to publication 15-A for more details. - pretax: false - posttax: true - imputed: false - healthcare: false - retirement: false - yearly_limit: false - category: Health - - benefit_type: 992 - name: Voluntary Long Term Disability (post-tax) - description: Third Party Disability or Third Party Leave are policies offered by employers that pay an employee for a specific life event (maternity leave, injury). All payments made to employees come from a third-party, such as an insurer. For more information on the taxation of these plans, please refer to publication 15-A for more details. - pretax: false - posttax: true - imputed: false - healthcare: false - retirement: false - yearly_limit: false - category: Health - - benefit_type: 993 - name: Voluntary Life (post-tax) - description: Third Party Disability or Third Party Leave are policies offered by employers that pay an employee for a specific life event (maternity leave, injury). All payments made to employees come from a third-party, such as an insurer. For more information on the taxation of these plans, please refer to publication 15-A for more details. - pretax: false - posttax: true - imputed: false - healthcare: false - retirement: false - yearly_limit: false - category: Health - - benefit_type: 113 - name: Commuter Parking - description: Tax-free commuter benefits allow employees to reduce their monthly commuting expenses for transit, carpooling, bicycling, and work-related parking costs. Please note that there is an annual maximum for this pre-tax benefit. The maximum dollar amount is found in IRS Publication 15-B. - pretax: true - posttax: false - imputed: false - healthcare: false - retirement: false - yearly_limit: false - category: Transportation - - benefit_type: 114 - name: Commuter Transit - description: Tax-free commuter benefits allow employees to reduce their monthly commuting expenses for transit, carpooling, bicycling, and work-related parking costs. Please note that there is an annual maximum for this pre-tax benefit. The maximum dollar amount is found in IRS Publication 15-B. - pretax: true - posttax: false - imputed: false - healthcare: false - retirement: false - yearly_limit: false - category: Transportation - - benefit_type: 100 - name: Other (taxable) - description: Other taxable benefit - pretax: false - posttax: true - imputed: true - healthcare: false - retirement: false - yearly_limit: false - category: Other - - benefit_type: 201 - name: Cell Phone (taxable) - description: Employer-sponsored benefits like this are called fringe benefits, and they don’t get special tax treatment—they’ll be reported as taxable wages on your employees’ paystubs. - pretax: false - posttax: true - imputed: true - healthcare: false - retirement: false - yearly_limit: false - category: Transportation - - benefit_type: 202 - name: Gym & Fitness (taxable) - description: Employer-sponsored benefits like this are called fringe benefits, and they don’t get special tax treatment—they’ll be reported as taxable wages on your employees’ paystubs. - pretax: false - posttax: true - imputed: true - healthcare: false - retirement: false - yearly_limit: false - category: Transportation - - benefit_type: 203 - name: Housing (taxable) - description: Employer-sponsored benefits like this are called fringe benefits, and they don’t get special tax treatment—they’ll be reported as taxable wages on your employees’ paystubs. - pretax: false - posttax: true - imputed: true - healthcare: false - retirement: false - yearly_limit: false - category: Transportation - - benefit_type: 204 - name: Wellness (taxable) - description: Employer-sponsored benefits like this are called fringe benefits, and they don’t get special tax treatment—they’ll be reported as taxable wages on your employees’ paystubs. - pretax: false - posttax: true - imputed: true - healthcare: false - retirement: false - yearly_limit: false - category: Transportation - Admin-Object: - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Admin" - examples: - Example: - value: - first_name: John - last_name: Smith - email: jsmith99@gmail.com - uuid: 5de11791-98fd-4587-9ed0-d5d804b8e647 - Admin-List: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + operationId: get-v1-webhook-subscriptions + security: + - SystemAccessAuth: [] + description: "Returns all webhook subscriptions associated with the provided Partner API token.\n\n\U0001F4D8 System Access Authentication\n\nThis endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access)\n\nscope: `webhook_subscriptions:read`" + tags: + - Webhooks + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: successful + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Webhook-Subscription" + x-speakeasy-name-override: listSubscriptions + post: + summary: Create a webhook subscription + parameters: + - name: X-Gusto-API-Version + in: header schema: - type: array - items: - "$ref": "#/components/schemas/Admin" - examples: - Example: - value: - - first_name: Katherine - last_name: Johnson - email: Katherine@acmecorp.com - uuid: 987058cc-23ee-46e9-81ef-5cee086cceca - - first_name: Anita - last_name: Borg - email: Anita@acmecorp.com - uuid: 5de11791-98fd-4587-9ed0-d5d804b8e647 - Company-Benefit-Object: - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Company-Benefit" - examples: - Example: - value: - uuid: d2cec746-caee-464a-bcaf-00d93f7049c9 - version: 98jr3289h3298hr9329gf9egskt3kagri32qqgiqe3872 - company_uuid: 881ce3f2-e3e1-49c9-8ad4-0bcf515f5618 - benefit_type: 1 - active: true - description: Kaiser Permanente - source: external - partner_name: XYZ Corp - deletable: true - supports_percentage_amounts: true - responsible_for_employer_taxes: false - responsible_for_employee_w2: false - catch_up_type: elective - Company-Benefit-List: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + operationId: post-v1-webhook-subscription + security: + - SystemAccessAuth: [] + description: "Create a webhook subscription to receive events of the specified subscription_types whenever there is a state change.\n\n\U0001F4D8 System Access Authentication\n\nThis endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access)\n\nscope: `webhook_subscriptions:write`" + tags: + - Webhooks + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '201': + description: created + content: + application/json: + schema: + "$ref": "#/components/schemas/Webhook-Subscription" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + required: + - url + - subscription_types + properties: + url: + type: string + description: The URL where webhook events will be POSTed. + subscription_types: + type: array + description: The types of events to subscribe to. + items: + type: string + enum: + - BankAccount + - Company + - CompanyBenefit + - Contractor + - ContractorPayment + - Employee + - EmployeeBenefit + - EmployeeJobCompensation + - ExternalPayroll + - Form + - Location + - Notification + - Payroll + - PayrollSync + - PaySchedule + - PeopleBatch + - Signatory + - TimeOffRequest + required: true + x-speakeasy-name-override: createSubscription + "/v1/webhook_subscriptions/{webhook_subscription_uuid}": + get: + summary: Get a webhook subscription + parameters: + - name: X-Gusto-API-Version + in: header schema: - type: array - items: - "$ref": "#/components/schemas/Company-Benefit" - examples: - Example: - value: - - uuid: d2cec746-caee-464a-bcaf-00d93f7049c9 - version: 98jr3289h3298hr9329gf9egskt3kagri32qqgiqe3872 - company_uuid: 528cc543-8a41-497e-b479-23a4c5ec77ac - benefit_type: 1 - active: true - description: Kaiser Permanente - source: external - partner_name: XYZ Corp - deletable: true - supports_percentage_amounts: true - responsible_for_employer_taxes: false - responsible_for_employee_w2: false - catch_up_type: elective - description: OK - Company-Custom-Field-List: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: webhook_subscription_uuid + in: path + description: The webhook subscription UUID. + required: true schema: - type: object - properties: - custom_fields: - type: array - items: - "$ref": "#/components/schemas/Company-Custom-Field" - examples: - Example: - value: - custom_fields: - - uuid: ea7e5d57-6abb-47d7-b654-347c142886c0 - name: employee_level - description: Employee Level - type: text - selection_options: - - uuid: 299650e4-e970-4acf-9bf0-6f05585d20ba - name: t-shirt size - description: What is your t-shirt size? - type: text - selection_options: - - uuid: 024ec137-6c92-43a3-b061-14a9720531d6 - name: favorite fruit - description: Which is your favorite fruit? - type: radio - selection_options: - - apple - - banana - - orange - Earning-Type-List: - description: Example response - content: - application/json: + type: string + x-gusto-rswag: true + operationId: get-v1-webhook-subscription-uuid + security: + - SystemAccessAuth: [] + description: "Returns the Webhook Subscription associated with the provided UUID.\n\n\U0001F4D8 System Access Authentication\n\nThis endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access)\n\nscope: `webhook_subscriptions:read`" + tags: + - Webhooks + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Webhook-Subscription" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: getSubscription + put: + summary: Update a webhook subscription + parameters: + - name: X-Gusto-API-Version + in: header schema: - type: object - properties: - default: - type: array - description: The default earning types for the company. - items: - "$ref": "#/components/schemas/Earning-Type" - custom: - type: array - description: The custom earning types for the company. - items: - "$ref": "#/components/schemas/Earning-Type" - examples: - Example: - value: - default: - - name: Bonus - uuid: b82e35c5-d7c6-4705-9e16-9f87499ade18 - active: true - - name: Cash Tips - uuid: f5618c94-ed7d-4366-b2c4-ff05e430064f - active: true - - name: Commission - uuid: 60191999-004a-49d9-b163-630574433653 - active: true - - name: Correction Payment - uuid: 368226e0-8e8c-48f0-bc91-aee46caafbc9 - active: true - - name: Minimum Wage Adjustment - uuid: 88a2e519-9ff5-4c19-9071-6a709f3c2939 - active: true - - name: Paycheck Tips - uuid: a3eaf03d-e712-4144-8f9b-71a85528adcf - active: true - - name: Severance - uuid: a6a2eba7-6c7d-4ced-bbe8-43452fbc9f63 - active: true - custom: - - name: Gym Membership Stipend - uuid: 6b4a8efb-db90-4c13-a75f-aae11b3f4ff9 - active: true - Earning-Type-Object: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: webhook_subscription_uuid + in: path + description: The webhook subscription UUID. + required: true schema: - "$ref": "#/components/schemas/Earning-Type" - examples: - Example: - value: - name: Gym Membership Stipend - uuid: f4dc8972-8830-4c07-b623-349a04b040d7 - active: true - Employee-Benefit-Object: - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Benefit" - examples: - Example: - value: - 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: - deduct_as_percentage: false - catch_up: false - coverage_amount: - deduction_reduces_taxable_income: - coverage_salary_multiplier: '0.00' - contribution: - type: amount - value: '100.00' - Tiered example: - value: - version: string - 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: '0.00' - deduct_as_percentage: false - employee_deduction_annual_maximum: string - contribution: - type: tiered - value: - tiers: - - rate: '5.0' - threshold: '2.0' - threshold_delta: '2.0' - - rate: '3.0' - threshold: '5.0' - threshold_delta: '3.0' - elective: false - company_contribution_annual_maximum: string - limit_option: string - catch_up: false - coverage_amount: string - deduction_reduces_taxable_income: unset - coverage_salary_multiplier: '0.00' - Employee-Benefit-List: - description: Example response - content: - application/json: + type: string + x-gusto-rswag: true + operationId: put-v1-webhook-subscription-uuid + security: + - SystemAccessAuth: [] + description: "Updates the Webhook Subscription associated with the provided UUID.\n\n\U0001F4D8 System Access Authentication\n\nThis endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access)\n\nscope: `webhook_subscriptions:write`" + tags: + - Webhooks + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Webhook-Subscription" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + required: + - subscription_types + properties: + subscription_types: + type: array + description: The types of events to subscribe to. + items: + type: string + enum: + - BankAccount + - Company + - CompanyBenefit + - Contractor + - ContractorPayment + - Employee + - EmployeeBenefit + - EmployeeJobCompensation + - ExternalPayroll + - Form + - Location + - Notification + - Payroll + - PayrollSync + - PaySchedule + - PeopleBatch + - Signatory + - TimeOffRequest + required: true + x-speakeasy-name-override: updateSubscription + delete: + summary: Delete a webhook subscription + parameters: + - name: X-Gusto-API-Version + in: header schema: - type: array - items: - "$ref": "#/components/schemas/Employee-Benefit" - examples: - Example: - value: - - 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: - deduct_as_percentage: false - contribute_as_percentage: false - catch_up: false - coverage_amount: - deduction_reduces_taxable_income: - coverage_salary_multiplier: '0.00' - Contribution-Exclusion-List: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: webhook_subscription_uuid + in: path + description: The webhook subscription UUID. + required: true schema: - type: array - items: - "$ref": "#/components/schemas/Contribution-Exclusion" - examples: - Example: - value: - - contribution_uuid: b82e35c5-d7c6-4705-9e16-9f87499ade18 - contribution_type: Bonus - excluded: false - - contribution_uuid: f5618c94-ed7d-4366-b2c4-ff05e430064f - contribution_type: Cash Tips - excluded: false - - contribution_uuid: 60191999-004a-49d9-b163-630574433653 - contribution_type: Commission - excluded: false - - contribution_uuid: 75a7a827-1f2d-4d6f-94f2-514c1fc32b13 - contribution_type: Regular - excluded: false - - contribution_uuid: eead3c7c-7964-4e3c-b609-670456127b09 - contribution_type: Life insurance imputed benefit - excluded: true - Payroll-Update-Object: - description: A prepared payroll - content: - application/json: - schema: - "$ref": "#/components/schemas/Payroll-Prepared" - examples: - Example: - value: - payroll_deadline: '2022-02-18T22:00:00Z' - check_date: '2021-02-22' - off_cycle: false - off_cycle_reason: - external: false - auto_payroll: false - processed: false - processed_date: - calculated_at: - uuid: b50e611d-8f3d-4f24-b001-46675f7b5777 - payroll_uuid: b50e611d-8f3d-4f24-b001-46675f7b5777 - company_uuid: 6bf7807c-a5a0-4f4d-b2e7-3fbb4b2299fb - created_at: '2022-02-01T22:00:00Z' - pay_period: - start_date: '2021-02-01' - end_date: '2021-02-15' - pay_schedule_uuid: 00ebc4a4-ec88-4435-8f45-c505bb63e501 - payroll_status_meta: - cancellable: false - expected_check_date: '2022-02-22' - initial_check_date: '2022-02-22' - expected_debit_time: '2022-02-18T22:00:00Z' - payroll_late: false - initial_debit_cutoff_time: '2022-02-18T22:00:00Z' - processing_request: - employee_compensations: - - employee_uuid: 187412e1-3dbe-491a-bb2f-2f40323a7067 - version: 4ba36d23a78c7393b4900ef38019d8ff - first_name: Patricia - preferred_first_name: Patricia - last_name: Hamil - excluded: false - payment_method: Direct Deposit - fixed_compensations: - - name: Bonus - amount: '100.00' - job_uuid: 94e0d15e-9ed2-4077-98f6-64554f242ba5 - hourly_compensations: - - name: Regular Hours - hours: '40.000' - job_uuid: bd378298-3e0c-4145-904a-baadf8a91fa3 - compensation_multiplier: 1 - flsa_status: Nonexempt - - name: Overtime - hours: '15.000' - job_uuid: 9d3760f0-d1f9-4700-8817-0fe2dce5cf23 - compensation_multiplier: 1.5 - flsa_status: Nonexempt - - name: Double overtime - hours: '0.000' - job_uuid: b5eef9a9-4a87-4649-a80d-14878c05f44e - compensation_multiplier: 2 - flsa_status: Nonexempt - - name: Regular Hours - hours: '40.000' - job_uuid: 332bd171-9efc-432b-abbb-a75c9dba706a - compensation_multiplier: 1 - flsa_status: Nonexempt - - name: Overtime - hours: '5.000' - job_uuid: ca9b3dc1-57ac-4736-901a-9b1c9634b9d5 - compensation_multiplier: 1.5 - flsa_status: Nonexempt - - name: Double overtime - hours: '0.000' - job_uuid: 1bad01e2-140c-49ed-9542-2388ce4a19b3 - compensation_multiplier: 2 - flsa_status: Nonexempt - paid_time_off: - - name: Vacation Hours - hours: '20.000' - - name: Sick Hours - hours: '0.000' - - name: Holiday Hours - hours: '0.000' - - employee_uuid: 187412e1-3dbe-491a-bb2f-2f40323a7012 - version: ff083257a5583291fb86656ad0df1b42 - first_name: Soren - preferred_first_name: Soren - last_name: Keck - excluded: false - payment_method: Direct Deposit - fixed_compensations: - - name: Bonus - amount: '100.00' - job_uuid: 94e0d15e-9ed2-4077-98f6-64554f242b34 - hourly_compensations: - - name: Regular Hours - hours: '40.000' - job_uuid: bd378298-3e0c-4145-904a-baadf8a91fa3 - compensation_multiplier: 1 - flsa_status: Commission Only Exempt - paid_time_off: - - name: Vacation Hours - hours: '20.000' - - name: Sick Hours - hours: '0.000' - - name: Holiday Hours - hours: '0.000' - - employee_uuid: 187412e1-3dbe-491a-bb2f-2f40323a7781 - version: 259816479e3729bf855318af9b9adddf - first_name: Patty - preferred_first_name: Patty - last_name: Tam - excluded: false - payment_method: Direct Deposit - fixed_compensations: - - name: Bonus - amount: '100.00' - job_uuid: 94e0d15e-9ed2-4077-98f6-64554f242bab - hourly_compensations: - - name: Regular Hours - hours: '40.000' - job_uuid: bd378298-3e0c-4145-904a-baadf8a91fa3 - compensation_multiplier: 1 - flsa_status: Exempt - paid_time_off: - - name: Vacation Hours - hours: '20.000' - - name: Sick Hours - hours: '0.000' - - name: Holiday Hours - hours: '0.000' - fixed_compensation_types: - - name: Bonus - - name: Commission - - name: Paycheck Tips - - name: Cash Tips - - name: Correction Payment - - name: Anniversary Bonus - - name: Internet Stipend - Off-Cycle-Payroll-Object: - description: An off-cycle payroll - content: - application/json: - schema: - "$ref": "#/components/schemas/Payroll-Prepared" - examples: - Example: - value: - version: 19289df18e6e20f797de4a585ea5a91535c7ddf7 - payroll_deadline: '2022-02-18T22:00:00Z' - check_date: '2021-02-22' - off_cycle: true - off_cycle_reason: Bonus - external: false - auto_payroll: false - processed: false - processed_date: - calculated_at: - uuid: b50e611d-8f3d-4f24-b001-46675f7b5777 - payroll_uuid: b50e611d-8f3d-4f24-b001-46675f7b5777 - company_uuid: 6bf7807c-a5a0-4f4d-b2e7-3fbb4b2299fb - created_at: '2022-02-01T22:00:00Z' - withholding_pay_period: Every other week - skip_regular_deductions: true - fixed_withholding_rate: true - final_termination_payroll: false - pay_period: - start_date: '2021-02-01' - end_date: '2021-02-15' - pay_schedule_uuid: 00ebc4a4-ec88-4435-8f45-c505bb63e501 - payroll_status_meta: - cancellable: false - expected_check_date: '2022-02-22' - initial_check_date: '2022-02-22' - expected_debit_time: '2022-02-18T22:00:00Z' - payroll_late: false - initial_debit_cutoff_time: '2022-02-18T22:00:00Z' - processing_request: - employee_compensations: - - employee_uuid: 187412e1-3dbe-491a-bb2f-2f40323a7067 - first_name: John - preferred_first_name: John - last_name: Doe - excluded: false - payment_method: Direct Deposit - fixed_compensations: [] - memo: - hourly_compensations: - - name: Regular Hours - hours: '0.000' - job_uuid: bd378298-3e0c-4145-904a-baadf8a91fa3 - compensation_multiplier: 1 - flsa_status: Nonexempt - - name: Overtime - hours: '0.000' - job_uuid: 9d3760f0-d1f9-4700-8817-0fe2dce5cf23 - compensation_multiplier: 1.5 - flsa_status: Nonexempt - - name: Double overtime - hours: '0.000' - job_uuid: b5eef9a9-4a87-4649-a80d-14878c05f44e - compensation_multiplier: 2 - flsa_status: Nonexempt - - name: Regular Hours - hours: '0.000' - job_uuid: 332bd171-9efc-432b-abbb-a75c9dba706a - compensation_multiplier: 1 - flsa_status: Nonexempt - - name: Overtime - hours: '0.000' - job_uuid: ca9b3dc1-57ac-4736-901a-9b1c9634b9d5 - compensation_multiplier: 1.5 - flsa_status: Nonexempt - - name: Double overtime - hours: '0.000' - job_uuid: 1bad01e2-140c-49ed-9542-2388ce4a19b3 - compensation_multiplier: 2 - flsa_status: Nonexempt - paid_time_off: [] - Payroll-Show-Object: - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Payroll" - examples: - Unprocessed: - value: - payroll_deadline: '2021-02-18T22:00:00Z' - check_date: '2021-02-22' - off_cycle: false - external: false - auto_payroll: false - processed: false - processed_date: - calculated_at: - uuid: b50e611d-8f3d-4f24-b001-46675f7b5777 - payroll_uuid: b50e611d-8f3d-4f24-b001-46675f7b5777 - company_uuid: 6bf7807c-a5a0-4f4d-b2e7-3fbb4b2299fb - created_at: '2022-02-01T22:00:00Z' - pay_period: - start_date: '2021-02-01' - end_date: '2021-02-15' - pay_schedule_uuid: 00ebc4a4-ec88-4435-8f45-c505bb63e501 - payroll_status_meta: - cancellable: false - expected_check_date: '2021-02-22' - initial_check_date: '2021-02-22' - expected_debit_time: '2021-02-18T22:00:00Z' - payroll_late: false - initial_debit_cutoff_time: '2021-02-18T22:00:00Z' - submission_blockers: - - blocker_type: fast_ach_threshold_exceeded - blocker_name: Fast ACH Threshold Exceeded - unblock_options: - - unblock_type: wire_in - check_date: '2024-06-10' - metadata: - wire_in_deadline: '2024-06-19T18:00:00Z' - wire_in_amount: 400000.0 - - unblock_type: move_to_four_day - check_date: '2024-06-12' - metadata: {} - selected_option: - status: unresolved - processing_request: - Processed: - value: - payroll_deadline: '2021-02-18T22:00:00Z' - check_date: '2021-02-22' - off_cycle: false - external: false - auto_payroll: true - processed: true - processed_date: '2021-02-18' - calculated_at: '2021-02-18T12:00:00Z' - payroll_uuid: b50e611d-8f3d-4f24-b001-46675f7b5777 - company_uuid: 6bf7807c-a5a0-4f4d-b2e7-3fbb4b2299fb - created_at: '2022-02-01T22:00:00Z' - pay_period: - start_date: '2021-02-01' - end_date: '2021-02-15' - pay_schedule_uuid: 00ebc4a4-ec88-4435-8f45-c505bb63e501 - totals: - company_debit: '121747.71' - net_pay_debit: '79283.80' - tax_debit: '42463.91' - reimbursement_debit: '0.00' - child_support_debit: '0.00' - reimbursements: '0.00' - net_pay: '81752.94' - gross_pay: '130635.89' - employee_bonuses: '0.00' - employee_commissions: '18536.37' - employee_cash_tips: '0.00' - employee_paycheck_tips: '0.00' - additional_earnings: '0.00' - owners_draw: '0.00' - check_amount: '2469.14' - employer_taxes: '6917.19' - employee_taxes: '35546.72' - benefits: '0.00' - employee_benefits_deductions: '13336.23' - imputed_pay: '0.00' - deferred_payroll_taxes: '0.00' - other_deductions: '240.00' - company_taxes: - - name: MO Compensation Deduction - amount: "-0.92" - employer: true - - name: NY MCTMT - amount: '5.00' - employer: true - payroll_taxes: - - name: Federal Income Tax - employer: false - amount: 3546.72 - - name: Social Security - employer: true - amount: 786.0 - - name: Social Security - employer: false - amount: 786.0 - - name: CA State Income Tax - employer: false - amount: 132.51 - payroll_status_meta: - cancellable: false - expected_check_date: '2021-02-22' - initial_check_date: '2021-02-22' - expected_debit_time: '2021-02-18T22:00:00Z' - payroll_late: false - initial_debit_cutoff_time: '2021-02-18T22:00:00Z' - employee_compensations: - - employee_uuid: 187412e1-3dbe-491a-bb2f-2f40323a7067 - excluded: false - gross_pay: '2791.25' - net_pay: '1953.31' - check_amount: '1953.31' - payment_method: Direct Deposit - fixed_compensations: - - name: Bonus - amount: '100.00' - job_uuid: 94e0d15e-9ed2-4077-98f6-64554f242ba5 - hourly_compensations: - - name: Regular Hours - hours: '40.000' - job_uuid: bd378298-3e0c-4145-904a-baadf8a91fa3 - compensation_multiplier: 1 - flsa_status: Nonexempt - - name: Overtime - hours: '15.000' - job_uuid: 9d3760f0-d1f9-4700-8817-0fe2dce5cf23 - compensation_multiplier: 1.5 - flsa_status: Nonexempt - - name: Double overtime - hours: '0.000' - job_uuid: b5eef9a9-4a87-4649-a80d-14878c05f44e - compensation_multiplier: 2 - flsa_status: Nonexempt - - name: Regular Hours - hours: '40.000' - job_uuid: 332bd171-9efc-432b-abbb-a75c9dba706a - compensation_multiplier: 1 - flsa_status: Nonexempt - - name: Overtime - hours: '5.000' - job_uuid: ca9b3dc1-57ac-4736-901a-9b1c9634b9d5 - compensation_multiplier: 1.5 - flsa_status: Nonexempt - - name: Double overtime - hours: '0.000' - job_uuid: 1bad01e2-140c-49ed-9542-2388ce4a19b3 - compensation_multiplier: 2 - flsa_status: Nonexempt - paid_time_off: - - name: Vacation Hours - hours: '20.000' - - name: Sick Hours - hours: '0.000' - - name: Holiday Hours - hours: '0.000' - benefits: - - name: Group Term Life - employee_deduction: '100.00' - company_contribution: '50.00' - imputed: true - - name: 401K - employee_deduction: '100.00' - company_contribution: '50.00' - imputed: false - deductions: - - name: Child Support - amount: '80.00' - taxes: - - name: Federal Income Tax - employer: false - amount: '646.69' - - name: Social Security - employer: true - amount: '191.25' - - employee_uuid: 187412e1-3dbe-491a-bb2f-2f40323a7012 - excluded: false - gross_pay: '2791.25' - net_pay: '1953.31' - check_amount: '1953.31' - payment_method: Direct Deposit - fixed_compensations: - - name: Bonus - amount: '100.00' - job_uuid: 94e0d15e-9ed2-4077-98f6-64554f242b34 - hourly_compensations: - - name: Regular Hours - hours: '40.000' - job_uuid: bd378298-3e0c-4145-904a-baadf8a91fa3 - compensation_multiplier: 1 - flsa_status: Commission Only Exempt - paid_time_off: - - name: Vacation Hours - hours: '20.000' - - name: Sick Hours - hours: '0.000' - - name: Holiday Hours - hours: '0.000' - benefits: - - name: Group Term Life - employee_deduction: '100.00' - company_contribution: '50.00' - imputed: true - - name: 401K - employee_deduction: '100.00' - company_contribution: '50.00' - imputed: false - deductions: - - name: Child Support - amount: '80.00' - taxes: - - name: Federal Income Tax - employer: false - amount: '646.69' - - name: Social Security - employer: true - amount: '191.25' - - employee_uuid: 187412e1-3dbe-491a-bb2f-2f40323a7781 - excluded: false - gross_pay: '2791.25' - net_pay: '1953.31' - check_amount: '1953.31' - payment_method: Direct Deposit - fixed_compensations: - - name: Bonus - amount: '100.00' - job_uuid: 94e0d15e-9ed2-4077-98f6-64554f242bab - hourly_compensations: - - name: Regular Hours - hours: '40.000' - job_uuid: bd378298-3e0c-4145-904a-baadf8a91fa3 - compensation_multiplier: 1 - flsa_status: Exempt - paid_time_off: - - name: Vacation Hours - hours: '20.000' - - name: Sick Hours - hours: '0.000' - - name: Holiday Hours - hours: '0.000' - benefits: - - name: Group Term Life - employee_deduction: '100.00' - company_contribution: '50.00' - imputed: true - - name: 401K - employee_deduction: '100.00' - company_contribution: '50.00' - imputed: false - deductions: - - name: Child Support - amount: '80.00' - taxes: - - name: Federal Income Tax - employer: false - amount: 646.69 - - name: Social Security - employer: true - amount: 191.25 - credit_blockers: - - blocker_type: waiting_for_wire_in - blocker_name: Waiting for Wire In - unblock_options: - - unblock_type: submit_wire - check_date: '2024-06-10' - metadata: - wire_in_deadline: '2024-06-19T18:00:00Z' - wire_in_amount: 400000.0 - wire_in_request_uuid: 187412e1-3dbe-491a-bb2f-2f40323a421a - selected_option: submit_wire - status: unresolved - processing_request: - status: submit_success - errors: [] - Payroll-List: - description: Example response - content: - application/json: + type: string + x-gusto-rswag: true + operationId: delete-v1-webhook-subscription-uuid + security: + - SystemAccessAuth: [] + description: "Deletes the Webhook Subscription associated with the provided UUID.\n\n\U0001F4D8 System Access Authentication\n\nThis endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access)\n\nscope: `webhook_subscriptions:write`" + tags: + - Webhooks + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '204': + description: No Content + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: deleteSubscription + "/v1/webhook_subscriptions/{webhook_subscription_uuid}/request_verification_token": + get: + summary: Request a verification token for a webhook subscription + parameters: + - name: X-Gusto-API-Version + in: header schema: - type: array - items: - "$ref": "#/components/schemas/Payroll-Minimal" - examples: - Example: - value: - - payroll_deadline: '2021-02-18T22:00:00Z' - check_date: '2021-02-22' - off_cycle: false - external: false - processed: true - processed_date: '2021-02-18' - calculated_at: '2021-02-18T12:00:00Z' - uuid: b50e611d-8f3d-4f24-b001-46675f7b5777 - payroll_uuid: b50e611d-8f3d-4f24-b001-46675f7b5777 - company_uuid: 6bf7807c-a5a0-4f4d-b2e7-3fbb4b2299fb - created_at: '2021-02-01T22:00:00Z' - reversal_payroll_uuids: [] - pay_period: - start_date: '2021-02-01' - end_date: '2021-02-15' - pay_schedule_uuid: 00ebc4a4-ec88-4435-8f45-c505bb63e501 - totals: - company_debit: '121747.71' - net_pay_debit: '79283.80' - tax_debit: '42463.91' - reimbursement_debit: '0.00' - child_support_debit: '0.00' - reimbursements: '0.00' - net_pay: '81752.94' - gross_pay: '130635.89' - employee_bonuses: '0.00' - employee_commissions: '18536.37' - employee_cash_tips: '0.00' - employee_paycheck_tips: '0.00' - additional_earnings: '0.00' - owners_draw: '0.00' - check_amount: '2469.14' - employer_taxes: '6917.19' - employee_taxes: '35546.72' - benefits: '0.00' - employee_benefits_deductions: '13336.23' - imputed_pay: '0.00' - deferred_payroll_taxes: '0.00' - other_deductions: '240.00' - - payroll_deadline: '2021-02-28' - check_date: '2021-03-01' - off_cycle: false - external: false - processed: false - processed_date: nil - calculated_at: nil - payroll_uuid: b50e611d-8f3d-4f24-b001-46675f7b5777 - company_uuid: 6bf7807c-a5a0-4f4d-b2e7-3fbb4b2299fb - created_at: '2022-02-01T22:00:00Z' - pay_period: - start_date: '2021-02-16' - end_date: '2021-03-01' - pay_schedule_uuid: 00ebc4a4-ec88-4435-8f45-c505bb63e501 - Payment-Configs-Object: - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Payment-Configs" - examples: - Example: - value: - company_uuid: 423dd616-6dbc-4724-938a-403f6217a933 - partner_uuid: 556f05d0-48e0-4c47-bce5-db9aea923043 - fast_payment_limit: '5000' - payment_speed: 2-day - earned_fast_ach_blockers: - - blocker_type: minimum_days - threshold: 15 - - blocker_type: minimum_funded_payments - threshold: 1 - Company-Bank-Account-Object: - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Company-Bank-Account" - examples: - Example: - value: - uuid: 1263eae5-4411-48d9-bd6d-18ed93082e65 - company_uuid: e2c4c0ce-2986-48b9-86cf-ec27f6ed9a36 - account_type: Checking - routing_number: '851070439' - hidden_account_number: XXXX4087 - verification_status: verified - verification_type: bank_deposits - name: Employer Funding Account - Company-Bank-Account-List: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: webhook_subscription_uuid + in: path + description: The webhook subscription UUID. + required: true schema: - type: array - items: - "$ref": "#/components/schemas/Company-Bank-Account" - examples: - Example: - value: - - uuid: 1263eae5-4411-48d9-bd6d-18ed93082e65 - company_uuid: e2c4c0ce-2986-48b9-86cf-ec27f6ed9a36 - account_type: Checking - routing_number: '851070439' - hidden_account_number: XXXX4087 - verification_status: verified - verification_type: bank_deposits - name: Employer Funding Account - Employee-Bank-Account-Object: - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Bank-Account" - examples: - Example: - value: - uuid: 1531e824-8d9e-4bd8-9f90-0d04608125d7 - employee_uuid: 9fcf1b1d-8886-4691-9283-383d3bdd4fd9 - name: BoA Checking Account - routing_number: '266905059' - hidden_account_number: XXXX1207 - account_type: Checking - Employee-Bank-Account-List: - description: Example response - content: - application/json: + type: string + x-gusto-rswag: true + operationId: get-v1-webhook-subscription-verification-token-uuid + security: + - SystemAccessAuth: [] + description: "Request that the webhook subscription `verification_token` be POSTed to the Subscription URL.\n\n\U0001F4D8 System Access Authentication\n\nThis endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access)\n\nscope: `webhook_subscriptions:read`" + tags: + - Webhooks + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: No Content. The `verification_token` is POSTed to the Subscription URL. + content: + application/json: + schema: + "$ref": "#/components/schemas/Webhook-Verification-Token-Response" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: requestVerificationToken + "/v1/webhook_subscriptions/{webhook_subscription_uuid}/verify": + put: + summary: Verify a webhook subscription + parameters: + - name: X-Gusto-API-Version + in: header schema: - type: array - items: - "$ref": "#/components/schemas/Employee-Bank-Account" - examples: - Example: - value: - - uuid: 1531e824-8d9e-4bd8-9f90-0d04608125d7 - employee_uuid: 9fcf1b1d-8886-4691-9283-383d3bdd4fd9 - name: BoA Checking Account - routing_number: '266905059' - hidden_account_number: XXXX1207 - account_type: Checking - Employee-Payment-Method-Object: - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Payment-Method" - examples: - Example: - value: - version: 63859768485e218ccf8a449bb60f14ed - type: Direct Deposit - split_by: Amount - splits: - - uuid: e88f9436-b74e-49a8-87e9-777b9bfe715e - name: BoA Checking Account - priority: 1 - split_amount: 500 - - uuid: 0d2b7f73-05d6-4184-911d-269edeecc30a - name: Chase Checking Account - priority: 2 - split_amount: 1000 - - uuid: 1531e824-8d9e-4bd8-9f90-0d04608125d7 - name: US Bank Checking Account - priority: 3 - split_amount: - Federal-Tax-Details-Object: - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Federal-Tax-Details" - examples: - Example: - value: - version: 5521489cc7c93732300805dcf87a5fd3 - tax_payer_type: S-Corporation - taxable_as_scorp: true - filing_form: '941' - has_ein: true - ein_verified: true - ein_verification: - status: verified - legal_name: Company Name LLC - effective_date: '2024-01-01' - deposit_schedule: Semiweekly - Employee-State-Taxes-List: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: webhook_subscription_uuid + in: path + description: The webhook subscription UUID. + required: true schema: - type: array - items: - "$ref": "#/components/schemas/Employee-State-Tax" - examples: - Employee-State-Taxes-List-Example: - value: - employee_uuid: 92fa4d30-e284-43d0-a26e-605619c04beb - file_new_hire_report: false - is_work_state: true - state: CA - questions: - - label: Filing Status - description: 'The Head of Household status applies to unmarried individuals who have a relative living with them in their home. If unsure, read the CA Filing Status explanation. + type: string + x-gusto-rswag: true + operationId: put-v1-verify-webhook-subscription-uuid + security: + - SystemAccessAuth: [] + description: "When a webhook subscription is created, a `verification_token` is POSTed to the registered webhook subscription URL. This `verify` endpoint needs to be called with `verification_token` before webhook events can be sent to the registered webhook URL.\n\nUse the /v1/webhook_subscriptions/{webhook_subscription_uuid}/request_verification_token API to resend the `verification_token` to the Subscriber.\n\n\U0001F4D8 System Access Authentication\n\nThis endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access)\n\nscope: `webhook_subscriptions:write`" + tags: + - Webhooks + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Webhook-Subscription" + '404': + description: | + Not Found -' - key: filing_status - input_question_format: - type: Select - options: - - value: S - label: Single - - value: M - label: Married one income - - value: MD - label: Married dual income - - value: H - label: Head of household - - value: E - label: Do Not Withhold - answers: - - value: S - valid_from: '2010-01-01' - valid_up_to: - - label: Withholding Allowance - description: 'This value is needed to calculate the employee''s CA income tax withholding. If unsure, use the CA DE-4 form to calculate the value manually. + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity -' - key: withholding_allowance - input_question_format: - type: Number - answers: - - value: 1 - valid_from: '2010-01-01' - valid_up_to: - - label: Additional Withholding - description: You can withhold an additional amount of California income taxes here. - key: additional_withholding - input_question_format: - type: Currency - answers: - - value: '0.0' - valid_from: '2010-01-01' - valid_up_to: - - label: File a New Hire Report? - description: State law requires you to file a new hire report within 20 days of hiring or re-hiring an employee. - key: file_new_hire_report - input_question_format: - type: Select - answers: - - value: true - valid_from: '2010-01-01' - valid_up_to: - Employee-Onboarding-Status-Object: - description: Example response. - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Onboarding-Status" - examples: - Example: - value: - uuid: c44d66dc-c41b-4a60-9e25-5e93ff8583f2 - onboarding_status: admin_onboarding_incomplete - onboarding_steps: - - title: Personal details - id: personal_details - required: true - completed: false - requirements: [] - - title: Enter compensation details - id: compensation_details - required: true - completed: false - requirements: [] - - title: Add work address - id: add_work_address - required: true - completed: false - requirements: [] - - title: Add home address - id: add_home_address - required: true - completed: false - requirements: [] - - title: Enter federal tax withholdings - id: federal_tax_setup - required: true - completed: false - requirements: [] - - title: Enter state tax information - id: state_tax_setup - required: true - completed: false - requirements: - - add_work_address - - add_home_address - - title: Direct deposit setup - id: direct_deposit_setup - required: false - completed: false - requirements: [] - - title: Employee form signing - id: employee_form_signing - required: true - completed: false - requirements: - - federal_tax_setup - - state_tax_setup - Payroll-Blocker-List: - description: Example response - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Payroll-Blocker" - examples: - Payroll Blockers: - value: - - key: eftps_in_error - message: We could not make payments to the Electronic Federal Tax Payment System. - - key: geocode_error - message: Company or employee address could not be verified. Please ensure all addresses are valid. - - key: geocode_needed - message: Company or employee address verification is missing. Please ensure all addresses are entered correctly. - - key: pay_schedule_setup_not_complete - message: Some employees don’t have a pay schedule set up yet. Please complete this step to run payroll. - - key: invalid_signatory - message: A signatory who is authorized to sign documents on behalf of your company is required. Please ensure their identity verification is successful. - - key: suspended - message: Company is suspended and cannot run payroll. - - key: soft_suspended - message: Company is placed in a 'soft' suspension state and requires missing/incorrect information to be corrected. - - key: pending_payroll_review - message: Payroll is blocked. We are reviewing payroll information in your account. Please contact support if you believe this is an error. - - key: pending_recovery_case - message: Payroll is blocked due to an open recovery case. Please contact support if you believe this is an error. - - key: pending_information_request - message: Payroll is blocked due to an open information request. Please contact support if you believe this is an error. - - key: needs_approval - message: Company needs to be approved to run payroll. - - key: missing_addresses - message: Company must add addresses in order to run payroll. - - key: missing_federal_tax_setup - message: Company must complete federal tax setup in order to run payroll. - - key: missing_industry_selection - message: Company must complete industry selection in order to run payroll. - - key: missing_bank_info - message: Company must have a bank account in order to run payroll. - - key: missing_employee_setup - message: Company must add employees in order to run payroll. - - key: missing_state_tax_setup - message: Company must complete state tax setup in order to run payroll. - - key: missing_pay_schedule - message: Company must have a pay schedule in order to run payroll. - - key: missing_forms - message: Company forms must be signed in order to run payroll. - - key: missing_bank_verification - message: Company bank account must be verified in order to run payroll. - - key: missing_signatory - message: Company must have a verified signatory in order to run payroll. - Generated-Document: - description: Example response - content: - application/json: + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + required: + - verification_token + properties: + verification_token: + type: string + description: The verification token received at the webhook subscription URL. + required: true + x-speakeasy-name-override: verify + "/v1/webhooks/health_check": + get: + summary: Get the webhooks health status + parameters: + - name: X-Gusto-API-Version + in: header schema: - "$ref": "#/components/schemas/Generated-Document" - examples: - Example: - value: - document_urls: - - https://document.url.com - request_uuid: p83d0ca8-7d41-42a9-834y-7d218ef6cb20 - status: succeeded - General-Ledger-Report: - description: Successful response for general ledger report generation - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + operationId: get-v1-webhooks-health_check + security: + - SystemAccessAuth: [] + description: "Returns the health status (`healthy`, `unhealthy`, or `unknown`) of the webhooks system based on the last ten minutes of activity.\n\n\U0001F4D8 System Access Authentication\n\nThis endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access)\n\nscope: `webhook_subscriptions:read`" + tags: + - Webhooks + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Webhooks-Health-Check-Status" + "/v1/wire_in_requests/{wire_in_request_uuid}": + get: + summary: Get a single Wire In Request + parameters: + - name: X-Gusto-API-Version + in: header schema: - type: object - properties: - payroll_uuid: - type: string - format: uuid - description: The UUID of the payroll record for which the report was generated - aggregation: - type: string - enum: - - default - - job - - department - - integration - description: The breakdown level used for the report - integration_type: - type: - - string - - 'null' - enum: - - xero - - qbo - description: The `integration_type` used for the report, if `aggregation` was 'integration.' Otherwise, this will be null. - request_uuid: - type: string - format: uuid - description: UUID to use for polling the report status - examples: - Example: - value: - payroll_uuid: a83d0bd8-7d20-43b9-834c-6d514ef6cb20 - aggregation: integration - integration_type: xero - request_uuid: p83d0ca8-7d41-42a9-834y-7d218ef6cb20 - Report: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: wire_in_request_uuid + in: path + description: The UUID of the Wire In Request + required: true schema: - "$ref": "#/components/schemas/Report" - examples: - Example: - value: - report_urls: - - https://report.url.com - request_uuid: p83d0ca8-7d41-42a9-834y-7d218ef6cb20 - status: succeeded - Create-Report: - description: Example response - content: - application/json: + type: string + x-gusto-rswag: true + operationId: get-wire_in_requests-wire_in_request_uuid + security: + - CompanyAccessAuth: [] + description: |- + Fetch a Wire In Request. + + scope: `payrolls:read` + tags: + - Wire In Requests + x-gusto-integration-type: + - embedded + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Wire-In-Request" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: wireInRequests + x-speakeasy-name-override: get + put: + summary: Submit a wire in request + parameters: + - name: X-Gusto-API-Version + in: header schema: - "$ref": "#/components/schemas/Create-Report" - examples: - Example: - value: - file_type: csv - request_uuid: p83d0ca8-7d41-42a9-834y-7d218ef6cb20 - company_uuid: z83d0ca8-7d41-42a9-834y-7d218ef6cb20 - custom_name: CustomReport - Report-Template: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: wire_in_request_uuid + in: path + description: The UUID of the Wire In Request + required: true schema: - "$ref": "#/components/schemas/Report-Template" - examples: - Example: - value: - columns: - - regular_rate - - regular_hours - - regular_earnings - groupings: - - payroll - - employee - company_uuid: p83d0ca8-7d41-42a9-834y-7d218ef6cb20 - report_type: payroll_journal - Notification: - description: Example response - content: - application/json: + type: string + x-gusto-rswag: true + operationId: put-wire_in_requests-wire_in_request_uuid + security: + - CompanyAccessAuth: [] + description: |- + Submit a wire in request for a payment + + scope: `payrolls:run` + tags: + - Wire In Requests + x-gusto-integration-type: + - embedded + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Wire-In-Request" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Wire-In-Request-Update-Request-Body" + required: true + x-speakeasy-group: wireInRequests + x-speakeasy-name-override: submit + "/v1/companies/{company_uuid}/wire_in_requests": + get: + summary: Get all Wire In Requests for a company + parameters: + - name: X-Gusto-API-Version + in: header schema: - "$ref": "#/components/schemas/Notification" - examples: - Example: - value: - uuid: 7b1d0df1-6403-4a06-8768-c1dd7d24d27a - company_uuid: 88f7cca1-dcad-4d20-84db-7fb80303d69f - title: 'Action required: Additional information needed to process payroll' - message: If we do not receive this information as soon as possible, your payroll may not be processed on time. - status: open - category: information_request - actionable: true - can_block_payroll: true - published_at: '2022-01-01T00:00:00.000Z' - due_at: '2022-02-01T00:00:00.000Z' - template_variables: - blocked_task: Payroll - resources: - - entity_type: Employee - entity_uuid: 21b6f9ce-0ac4-4745-8d8a-127f8c0f00f2 - Event-List: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true schema: - type: array - items: - "$ref": "#/components/schemas/Event" - examples: - Example: - value: - - uuid: f7397a24-57ad-4fae-b011-d258e8232900 - event_type: employee.bank_account.created - resource_type: Company - resource_uuid: 92a20431-9489-4bde-ad27-6feb20b969d5 - entity_type: BankAccount - entity_uuid: 92a20431-9489-4bde-ad27-6feb20b969d5 - timestamp: 1686784995 - Payroll-Check: - description: Example response - content: - application/json: + type: string + - name: page + in: query + required: false + description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. schema: - "$ref": "#/components/schemas/Payroll-Check" - examples: - Example: - value: - payroll_uuid: a83d0bd8-7d20-43b9-834c-6d514ef6cb20 - printing_format: top - starting_check_number: 10 - request_uuid: p83d0ca8-7d41-42a9-834y-7d218ef6cb20 - status: pending - employee_check_number_mapping: - - employee_uuid: 9fcf1b1d-8886-4691-9283-383d3bdd4fd9 - check_number: 10 - Payroll-Receipt: - description: Example response - content: - application/json: + type: integer + - name: per + in: query + required: false + description: Number of objects per page. For majority of endpoints will default to 25 schema: - "$ref": "#/components/schemas/Payroll-Receipt" - examples: - Example: - value: - totals: - company_debit: '1080.47' - net_pay_debit: '748.34' - child_support_debit: '100.0' - reimbursement_debit: '50.0' - tax_debit: '182.13' - taxes: - - name: Federal Income Tax - amount: '30.36' - - name: Social Security - amount: '104.54' - - name: Medicare - amount: '24.46' - - name: Additional Medicare - amount: '0.0' - - name: TX SUTA - amount: '22.77' - - name: FUTA - amount: '0.0' - employee_compensations: - - employee_uuid: f83d0bd8-7e20-43b9-834c-6d514ef6cb47 - employee_first_name: Patricia - employee_last_name: Hamill - payment_method: Direct Deposit - net_pay: '748.34' - total_tax: '182.13' - total_garnishments: '0.0' - child_support_garnishment: '100.0' - total_reimbursement: '50.0' - licensee: - name: Gusto, Zenpayroll Inc. - address: 525 20th St - city: San Francisco - state: CA - postal_code: '94107' - phone_number: '4157778888' - payroll_uuid: afccb970-357e-4013-81f5-85dafc74f9b6 - company_uuid: c827aa0d-3928-4d5a-ab1f-400641a7d2b8 - name_of_sender: Torp and Sons and Sons - name_of_recipient: Payroll Recipients - recipient_notice: Payroll recipients include the employees listed below plus the tax agencies for the taxes listed below. - debit_date: '2022-06-02' - license: ZenPayroll, Inc., dba Gusto is a licensed money transmitter. For more about Gusto’s licenses and your state-specific rights to request information, submit complaints, dispute errors, or cancel transactions, visit our license page. - license_uri: https://gusto.com/about/licenses - right_to_refund: https://gusto.com/about/licenses - liability_of_licensee: https://gusto.com/about/licenses - Payroll-Reversal-List: - description: Example response - content: - application/json: + type: integer + x-gusto-rswag: true + operationId: get-companies-company_uuid-wire_in_request_uuid + security: + - CompanyAccessAuth: [] + description: |- + Fetches all Wire In Requests for a company. + + scope: `payrolls:read` + tags: + - Wire In Requests + x-gusto-integration-type: + - embedded + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Wire-In-Request-List" + x-speakeasy-group: wireInRequests + x-speakeasy-name-override: list + "/v1/employees/{employee_id}/work_addresses": + get: + summary: Get an employee's work addresses + parameters: + - name: X-Gusto-API-Version + in: header schema: - "$ref": "#/components/schemas/Payroll-Reversal" - examples: - Example: - value: - reversed_payroll_uuid: '09505984-8d8c-41a3-adbe-5740322ae8e9' - reversal_payroll_uuid: '0424688e-0a2e-4cd0-ac86-42283e788fb3' - reason: Customer Request - approved_at: - category: convert_check_ee_requested - reversed_employee_uuids: - - 5f036964-185e-4c85-bbf2-3873e1203b30 - Gross-Up-Pay: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true schema: - "$ref": "#/components/schemas/Gross-Up-Pay" - examples: - Example: - value: - net_pay: '1183.25' - Contractor-Payment-Receipt: - description: Example response - content: - application/json: + type: string + x-gusto-rswag: true + operationId: get-v1-employees-employee_id-work_addresses + security: + - CompanyAccessAuth: [] + description: |- + Returns a list of an employee's work addresses. Each address includes its effective + date and a boolean signifying if it is the currently active work address. + + scope: `employees:read` + tags: + - Employee Addresses + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: List of employee work addresses + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Work-Addresses-List" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: employeeAddresses + x-speakeasy-name-override: getWorkAddresses + post: + summary: Create an employee work address + parameters: + - name: X-Gusto-API-Version + in: header schema: - "$ref": "#/components/schemas/Contractor-Payment-Receipt" - examples: - Example: - value: - contractor_payment_uuid: afccb970-357e-4013-81f5-85dafc74f9b6 - name_of_recipient: Patricia Hamill - totals: - company_debit: '748.34' - contractor_payments: - - contractor_uuid: f83d0bd8-7e20-43b9-834c-6d514ef6cb47 - contractor_first_name: Patricia - contractor_last_name: Hamill - contractor_business_name: '' - contractor_type: Individual - payment_method: Direct Deposit - wage: '448.34' - bonus: '248.00' - reimbursement: '100.00' - licensee: - name: Gusto, Zenpayroll Inc. - address: 525 20th St - city: San Francisco - state: CA - postal_code: '94107' - phone_number: '4157778888' - company_uuid: c827aa0d-3928-4d5a-ab1f-400641a7d2b8 - name_of_sender: Torp and Sons and Sons - debit_date: '2022-06-02' - license: Your payroll provider partners with Gusto Inc. for payments processing. Gusto Inc. is a licensed money transmitter. Learn more on our license page. - license_uri: https://gusto.com/about/licenses - right_to_refund: https://gusto.com/about/licenses - liability_of_licensee: https://gusto.com/about/licenses - Contractor-Bank-Account-Object: - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor-Bank-Account" - examples: - Example: - value: - uuid: 1531e824-8d9e-4bd8-9f90-0d04608125d7 - contractor_uuid: 9fcf1b1d-8886-4691-9283-383d3bdd4fd9 - name: BoA Checking Account - routing_number: '266905059' - hidden_account_number: XXXX1207 - account_type: Checking - Contractor-Bank-Account-List: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true schema: - type: array - items: - "$ref": "#/components/schemas/Contractor-Bank-Account" - examples: - Example: - value: - - uuid: 1531e824-8d9e-4bd8-9f90-0d04608125d7 - contractor_uuid: 9fcf1b1d-8886-4691-9283-383d3bdd4fd9 - name: BoA Checking Account - routing_number: '266905059' - hidden_account_number: XXXX1207 - account_type: Checking - Time-Off-Policy-Object: - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Time-Off-Policy" - examples: - Unlimited Policy: - value: - uuid: 3f746cd0-dd08-408f-b712-8180c7c621e9 - company_uuid: de83cff2-8e7a-448e-a28c-14258a9971c3 - name: Test Vacation Unlimited Policy - policy_type: vacation - accrual_method: unlimited - accrual_rate: - accrual_rate_unit: - paid_out_on_termination: false - accrual_waiting_period_days: - carryover_limit_hours: - max_accrual_hours_per_year: - max_hours: - version: f5556bce3d75ec2b62bd11990aa7993a - is_active: true - complete: true - employees: - - uuid: 05ed3150-591e-4f8b-bfd5-55d478edd2d8 - - uuid: 3633ce57-abb7-422f-8c5a-455566618e6a - - uuid: 9b37429c-e540-40fb-86b3-738ca9af65c7 - Fixed Policy: - value: - uuid: 2439c13f-f6d7-4a93-af8c-175fd4cc7ce8 - company_uuid: f5f7b10d-2ddb-42f6-a955-d55320ce5316 - name: Test Vacation Fixed Policy - policy_type: vacation - accrual_method: per_anniversary_year - accrual_rate: '120.0' - accrual_rate_unit: - paid_out_on_termination: true - accrual_waiting_period_days: 0 - carryover_limit_hours: '240.0' - max_accrual_hours_per_year: '120.0' - max_hours: '300.0' - version: f5556bce3d75ec2b62bd11990aa7993a - is_active: true - complete: true - employees: - - uuid: de7a5fb3-2e0f-460a-abbf-467fe310bf5c - balance: '80.0' - - uuid: 92af03c7-a833-43ae-bae8-f67007a59b37 - balance: '60.0' - Hourly Policy: - value: - uuid: bd5f354f-12e0-4a5e-ad1f-953bb2685ad4 - company_uuid: 6767445f-5075-4ea4-a7f5-d5b5b93d4d60 - name: Test Vacation Hourly Policy - policy_type: vacation - accrual_method: per_hour_paid - accrual_rate: '4.0' - accrual_rate_unit: '80.0' - paid_out_on_termination: true - accrual_waiting_period_days: 30 - carryover_limit_hours: '200.0' - max_accrual_hours_per_year: '120.0' - max_hours: '240.0' - version: f5556bce3d75ec2b62bd11990aa7993a - is_active: true - complete: true - employees: - - uuid: 1ea2764d-0f1a-4f09-b1d9-3006aecf63c4 - balance: '56.0' - - uuid: a0db19a2-7c8f-42b4-9d4c-2e6246c3d6e8 - balance: '84.0' - Time-Off-Policy-List: - description: Example response - content: - application/json: + type: string + x-gusto-rswag: true + operationId: post-v1-employees-employee_id-work_addresses + security: + - CompanyAccessAuth: [] + description: |- + The work address of an employee describes when an employee began working at an associated company location. + + scope: `employees:manage` + tags: + - Employee Addresses + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '201': + description: created + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Work-Address" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: unprocessable entity + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + properties: + location_uuid: + type: string + description: Reference to a company location + example: 6a119be7-b4b0-4e27-aaa0-89d5f2524635 + effective_date: + type: string + format: date + description: Date the employee began working at the company location + example: '2023-05-15' + required: true + x-speakeasy-group: employeeAddresses + x-speakeasy-name-override: createWorkAddress + "/v1/work_addresses/{work_address_uuid}": + get: + summary: Get an employee work address + parameters: + - name: X-Gusto-API-Version + in: header schema: - type: array - items: - "$ref": "#/components/schemas/Time-Off-Policy" - examples: - example: - value: - - uuid: 3f746cd0-dd08-408f-b712-8180c7c621e9 - company_uuid: de83cff2-8e7a-448e-a28c-14258a9971c3 - name: Test Vacation Unlimited Policy - policy_type: vacation - accrual_method: unlimited - accrual_rate: - accrual_rate_unit: - paid_out_on_termination: false - accrual_waiting_period_days: - carryover_limit_hours: - max_accrual_hours_per_year: - max_hours: - version: f5556bce3d75ec2b62bd11990aa7993a - is_active: true - complete: true - employees: - - uuid: 05ed3150-591e-4f8b-bfd5-55d478edd2d8 - - uuid: 3633ce57-abb7-422f-8c5a-455566618e6a - - uuid: 9b37429c-e540-40fb-86b3-738ca9af65c7 - - uuid: 2439c13f-f6d7-4a93-af8c-175fd4cc7ce8 - company_uuid: f5f7b10d-2ddb-42f6-a955-d55320ce5316 - name: Test Vacation Fixed Policy - policy_type: vacation - accrual_method: per_anniversary_year - accrual_rate: '120.0' - accrual_rate_unit: - paid_out_on_termination: true - accrual_waiting_period_days: 0 - carryover_limit_hours: '240.0' - max_accrual_hours_per_year: '120.0' - max_hours: '300.0' - version: f5556bce3d75ec2b62bd11990aa7993a - is_active: true - complete: true - employees: - - uuid: de7a5fb3-2e0f-460a-abbf-467fe310bf5c - balance: '80.0' - - uuid: 92af03c7-a833-43ae-bae8-f67007a59b37 - balance: '60.0' - - uuid: bd5f354f-12e0-4a5e-ad1f-953bb2685ad4 - company_uuid: 6767445f-5075-4ea4-a7f5-d5b5b93d4d60 - name: Test Vacation Hourly Policy - policy_type: vacation - accrual_method: per_hour_paid - accrual_rate: '4.0' - accrual_rate_unit: '80.0' - paid_out_on_termination: true - accrual_waiting_period_days: 30 - carryover_limit_hours: '200.0' - max_accrual_hours_per_year: '120.0' - max_hours: '240.0' - version: f5556bce3d75ec2b62bd11990aa7993a - is_active: true - complete: true - employees: - - uuid: 1ea2764d-0f1a-4f09-b1d9-3006aecf63c4 - balance: '56.0' - - uuid: a0db19a2-7c8f-42b4-9d4c-2e6246c3d6e8 - balance: '84.0' - Time-Off-Activity-Object: - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Time-Off-Activity" - examples: - example: - value: - - policy_uuid: a7838f74-4c29-4b70-9bfb-02a4e3e60709 - time_off_type: vacation - policy_name: Paid Time Off - event_type: TimeOffEvent::AddToPolicy - event_description: 'Added to policy: Vacation Per Hour Worked' - effective_time: '2022-09-27T13:43:03.000-07:00' - balance: '0.0' - balance_change: '0.0' - - policy_uuid: a7838f74-4c29-4b70-9bfb-02a4e3e60709 - time_off_type: vacation - policy_name: Paid Time Off - event_type: TimeOffEvent::Accrual - event_description: Accrual - effective_time: '2022-09-27T14:43:03.000-07:00' - balance: '2.0' - balance_change: '2.0' - Invoice-Data-Object: - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Invoice-Data" - examples: - example: - value: - active_companies: - - company_uuid: 05ed3150-591e-4f8b-bfd5-55d478edd2d8 - active_employees: 5 - active_contractors: 3 - initial_invoice_period: 2022-01 - - company_uuid: 9b37429c-e540-40fb-86b3-738ca9af65c7 - active_employees: 0 - active_contractors: 1 - initial_invoice_period: 2023-05 - Minimum-Wage-List: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: work_address_uuid + in: path + description: The UUID of the work address + required: true schema: - type: array - items: - "$ref": "#/components/schemas/Minimum-Wage" - examples: - Example: - value: - - uuid: 70c523ff-c71e-4474-9c83-a4ea51bd54a8 - authority: State - wage: '13.0' - wage_type: Regular - effective_date: '2022-01-01' - notes: Employers with 6 or more employees - Information-Request-List: - description: Example response - content: - application/json: + type: string + x-gusto-rswag: true + operationId: get-v1-work_addresses-work_address_uuid + security: + - CompanyAccessAuth: [] + description: |- + The work address of an employee is used for payroll tax purposes. + + scope: `employees:read` + tags: + - Employee Addresses + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Work-Address" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: employeeAddresses + x-speakeasy-name-override: retrieveWorkAddress + put: + summary: Update an employee work address + parameters: + - name: X-Gusto-API-Version + in: header schema: - type: array - items: - "$ref": "#/components/schemas/Information-Request" - examples: - Example: - value: - - uuid: e83d273e-4ae9-4b61-9c71-4030c2f73093 - company_uuid: c5e3e3e9-732f-4762-849e-20b5cec9036f - type: company_onboarding - status: pending_response - blocking_payroll: true - required_questions: - - question_uuid: a1b2c3d4-e5f6-7890-abcd-ef1234567890 - question_text: How much wood can a wood chuck chuck? - response_type: text - - question_uuid: b2c3d4e5-f6a7-8901-bcde-f12345678901 - question_text: Please upload supporting documentation - response_type: document - Recovery-Case-List: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: work_address_uuid + in: path + description: The UUID of the work address + required: true schema: - type: array - items: - "$ref": "#/components/schemas/Recovery-Case" - examples: - Example: - value: - - uuid: e83d273e-4ae9-4b61-9c71-4030c2f73093 - company_uuid: c5e3e3e9-732f-4762-849e-20b5cec9036f - status: open - latest_error_code: R01 - original_debit_date: '2023-10-11' - check_date: '2023-10-13' - payroll_uuid: 210f2034-fb4a-4059-b109-6c3b5efe499d - contractor_payment_uuids: - amount_outstanding: '10499.43' - event_total_amount: '5912.07' - Ach-Transaction-List: - description: Example response - content: - application/json: + type: string + x-gusto-rswag: true + operationId: put-v1-work_addresses-work_address_uuid + security: + - CompanyAccessAuth: [] + description: |- + The work address of an employee is used for payroll tax purposes. + + scope: `employees:manage` + tags: + - Employee Addresses + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Work-Address" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: unprocessable entity + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + allOf: + - "$ref": "#/components/schemas/Versionable-Required" + - type: object + properties: + location_uuid: + type: string + description: Reference to a company location + example: 6a119be7-b4b0-4e27-aaa0-89d5f2524635 + effective_date: + type: string + format: date + example: '2023-05-15' + required: true + x-speakeasy-group: employeeAddresses + x-speakeasy-name-override: updateWorkAddress + delete: + summary: Delete an employee's work address + parameters: + - name: X-Gusto-API-Version + in: header schema: - type: array - items: - "$ref": "#/components/schemas/Ach-Transaction" - examples: - Example: - value: - - uuid: 123e4567-e89b-12d3-a456-426655440000 - company_uuid: 456e7890-e12b-34c5-d678-901234567890 - payment_event_type: Payroll - payment_event_uuid: 789e0123-e45f-67ab-c890-123456789012 - recipient_type: Employee - recipient_uuid: 012e3456-f78d-90ab-12cd-345678901234 - error_code: - transaction_type: Credit employee pay - payment_status: submitted - payment_direction: credit - payment_event_check_date: '2023-10-02' - payment_date: '2023-10-17' - amount: '123.00' - description: PAY 380654 - Wire-In-Request-Object: - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Wire-In-Request" - examples: - example: - value: - uuid: c5fdae57-5483-4529-9aae-f0edceed92d4 - status: awaiting_funds - origination_bank: JP Morgan Chase - origination_bank_address: 1 Chase Plaza, New York, NY 10081 - recipient_name: Gusto, Inc - recipient_address: 525 20th Street, San Francisco, CA 94107 - recipient_account_number: 21911761 - recipient_routing_number: 123454321 - additional_notes: Additional Notes - bank_name: JP Morgan Chase - date_sent: '2024-06-10' - unique_tracking_code: 1trvxwxp57zf - payment_type: Payroll - payment_uuid: 5faae454-e629-490b-a72a-c022c2c9e6bc - amount_sent: '1014500.00' - requested_amount: '1014500.00' - wire_in_deadline: '2024-06-21T18:00:00Z' - Wire-In-Request-List: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: work_address_uuid + in: path + description: The UUID of the work address + required: true schema: - type: array - items: - "$ref": "#/components/schemas/Wire-In-Request" - examples: - Example: - value: - - uuid: c5fdae57-5483-4529-9aae-f0edceed92d4 - status: awaiting_funds - origination_bank: JP Morgan Chase - origination_bank_address: 1 Chase Plaza, New York, NY 10081 - recipient_name: Gusto, Inc - recipient_address: 525 20th Street, San Francisco, CA 94107 - recipient_account_number: 21911761 - recipient_routing_number: 5773243 - additional_notes: Additional Notes - bank_name: Chase - date_sent: '2024-06-10' - unique_tracking_code: 1trvxwxp57zf - payment_type: Payroll, - payment_uuid: 5faae454-e629-490b-a72a-c022c2c9e6bc - amount_sent: '1054693.52' - requested_amount: '1054693.52' - wire_in_deadline: '2024-06-21T18:00:00Z' - Time-Sheet-Object: - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Time-Sheet" - examples: - example: - value: - uuid: 123e4567-e89b-12d3-a456-426655440000 - company_uuid: 123e4567-e89b-12d3-a456-426655440000 - status: approved - time_zone: America/Los_Angeles - entity_type: Employee - version: 72deb67e16f7b92713c00d3582fa6c68 - job_uuid: 123e4567-e89b-12d3-a456-426655440000 - entity_uuid: 123e4567-e89b-12d3-a456-426655440000 - shift_started_at: '2025-03-04T13:07:10Z' - shift_ended_at: '2025-03-04T16:07:10Z' - created_at: '2025-04-29T16:08:53Z' - updated_at: '2025-04-29T16:08:53Z' - metadata: {} - entries: - - uuid: 123e4567-e89b-12d3-a456-426655440000 - hours_worked: '1.000' - pay_classification: Regular - - uuid: 123e4567-e89b-12d3-a456-426655440000 - hours_worked: '1.000' - pay_classification: Overtime - - uuid: 123e4567-e89b-12d3-a456-426655440000 - hours_worked: '1.000' - pay_classification: Double overtime - Time-Sheet-List: - description: Example response - content: - application/json: + type: string + x-gusto-rswag: true + operationId: delete-v1-work_addresses-work_address_uuid + security: + - CompanyAccessAuth: [] + description: |- + Used for deleting an employee's work address. Cannot delete the employee's active work address. + + scope: `employees:manage` + tags: + - Employee Addresses + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '204': + description: no content + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: unprocessable entity + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-speakeasy-group: employeeAddresses + x-speakeasy-name-override: deleteWorkAddress + "/v1/employees/{employee_id}/ytd_benefit_amounts_from_different_company": + get: + summary: Get year-to-date benefit amounts from a different company + parameters: + - name: X-Gusto-API-Version + in: header schema: - type: array - items: - "$ref": "#/components/schemas/Time-Sheet" - examples: - Example: - value: - - uuid: 123e4567-e89b-12d3-a456-426655440000 - company_uuid: 123e4567-e89b-12d3-a456-426655440000 - status: approved - time_zone: America/Los_Angeles - entity_type: Employee - version: 72deb67e16f7b92713c00d3582fa6c68 - job_uuid: 123e4567-e89b-12d3-a456-426655440000 - entity_uuid: 123e4567-e89b-12d3-a456-426655440000 - shift_started_at: '2025-03-04T13:07:10Z' - shift_ended_at: '2025-03-04T16:07:10Z' - created_at: '2025-04-29T16:08:53Z' - updated_at: '2025-04-29T16:08:53Z' - metadata: {} - entries: - - uuid: 123e4567-e89b-12d3-a456-426655440000 - hours_worked: '1.000' - pay_classification: Regular - - uuid: 123e4567-e89b-12d3-a456-426655440000 - hours_worked: '1.000' - pay_classification: Overtime - - uuid: 123e4567-e89b-12d3-a456-426655440000 - hours_worked: '1.000' - pay_classification: Double overtime - Company-Suspension: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + required: true + description: The UUID of the employee schema: - "$ref": "#/components/schemas/Company-Suspension" - Company-Suspension-List: - description: Example response - content: - application/json: + type: string + - name: tax_year + in: query + required: false schema: - type: array - items: - "$ref": "#/components/schemas/Company-Suspension" - Time-Off-Request-Object: - description: Example response - content: - application/json: + type: integer + minimum: 2000 + maximum: 2999 + example: 2024 + description: The tax year for which to retrieve YTD benefit amounts. Defaults to current year if not specified. + x-gusto-rswag: true + operationId: get-employee-ytd-benefit-amounts-from-different-company + security: + - CompanyAccessAuth: [] + description: |- + Retrieves year-to-date benefit amounts that were contributed at a different company for the specified 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. + + scope: `employee_benefits:read` + tags: + - Employee Benefits + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '200': + description: OK + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Ytd-Benefit-Amounts-From-Different-Company" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: employeeBenefits + x-speakeasy-name-override: getYtdBenefitAmountsFromDifferentCompany + post: + summary: Create year-to-date benefit amounts from a different company + parameters: + - name: X-Gusto-API-Version + in: header schema: - "$ref": "#/components/schemas/Time-Off-Request" - Time-Off-Request-List: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + required: true + description: The UUID of the employee schema: - type: array - items: - "$ref": "#/components/schemas/Time-Off-Request" - requestBodies: - post-employee-ytd-benefit-amounts-from-different-company: - required: true - content: - application/json: + type: string + x-gusto-rswag: true + operationId: post-employee-ytd-benefit-amounts-from-different-company + security: + - CompanyAccessAuth: [] + description: |- + 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 were employed at a different company. + + This endpoint only supports passing outside contributions for 401(k) benefits. + + scope: `employee_benefits:write` + tags: + - Employee Benefits + x-gusto-integration-type: + - embedded + - app-integrations + responses: + '204': + description: No Content + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Ytd-Benefit-Amounts-From-Different-Company-Body" + required: true + x-speakeasy-group: employeeBenefits + x-speakeasy-name-override: createYtdBenefitAmountsFromDifferentCompany + "/v1/information_requests/{information_request_uuid}/submit": + put: + x-gusto-integration-type: + - embedded + summary: Submit information request responses + tags: + - Information Requests + operationId: submit-information-request + x-speakeasy-group: informationRequests + x-speakeasy-name-override: submit + description: |- + Submit responses to an information request. + Supports both text responses and file uploads (multipart/form-data). + Maximum file size: 120MB. + + scope: `information_requests:write` + parameters: + - name: information_request_uuid + in: path + required: true schema: - type: object - properties: - benefit_type: - type: integer - description: The benefit type supported by Gusto. - tax_year: - type: number - minimum: 2000 - maximum: 2999 - description: The tax year for which this amount applies. - ytd_employee_deduction_amount: - type: string - default: '0.00' - description: The year-to-date employee deduction made outside the current company. - ytd_company_contribution_amount: - type: string - default: '0.00' - description: The year-to-date company contribution made outside the current company. - required: - - benefit_id - - tax_year - - ytd_employee_deduction_amount - - ytd_company_contribution_amount -security: - - CompanyAccessAuth: [] + type: string + description: The UUID of the information request + requestBody: + required: true + content: + application/json: + schema: + type: object + properties: + required_questions: + type: array + items: + type: object + required: + - question_uuid + - response_type + properties: + question_uuid: + type: string + format: uuid + description: UUID of the question being answered + response_type: + type: string + enum: + - text + - document + description: Type of response - matches the question's response_type from GET + text_response: + type: string + description: Text response (required when response_type is text) + file_response: + type: string + description: Data URL with base64-encoded file (e.g., "data:image/png;base64,..."). Required when response_type is document. + file_name: + type: string + description: Original filename with extension (e.g., "document.pdf"). Used for document uploads. + responses: + '200': + description: Information request successfully submitted + content: + application/json: + schema: + "$ref": "#/components/schemas/Information-Request" + '422': + description: Validation error - invalid responses or missing required answers + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + examples: + Basic: + value: + errors: + - error_key: base + category: payroll_blocker + message: Company must complete all onboarding requirements in order to run payroll. + metadata: + key: needs_onboarding + Resource: + value: + errors: + - error_key: first_name + category: invalid_attribute_value + message: First name is required + - error_key: date_of_birth + category: invalid_attribute_value + message: Date of birth is not a valid date + Nested: + value: + errors: + - error_key: contractor_payments + category: nested_errors + metadata: + contractor_uuid: 72ae4617-daa9-4ed7-85e0-18ed5d0ee835 + errors: + - error_key: hours + category: invalid_attribute_value + message: Ella Fitzgerald is paid fixed wage and hours cannot be set on a contractor payment + - error_key: contractor_payments + category: nested_errors + metadata: + contractor_uuid: 2d7bf62c-babf-4a12-8292-340e2d9cab28 + errors: + - error_key: wage + category: invalid_attribute_value + message: Isaiah Berlin is paid hourly and wage cannot be set on a contractor payment + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. diff --git a/.speakeasy/logs/changes/old.openapi.yaml b/.speakeasy/logs/changes/old.openapi.yaml index 4ee35db3e..7ade28f12 100644 --- a/.speakeasy/logs/changes/old.openapi.yaml +++ b/.speakeasy/logs/changes/old.openapi.yaml @@ -15,11 +15,13 @@ tags: - name: Jobs and Compensations - name: Earning Types - name: I-9 Verification + - name: Information Requests - name: Contractor Payment Groups - name: Contractor Payment Method - name: Contractor Payments - name: Contractors - name: Payrolls + - name: People Batches - name: Company Forms - name: Contractor Documents - name: Employee Forms @@ -33,6 +35,8 @@ tags: - name: Tax Requirements - name: Contractor Forms - name: Time Off Policies + - name: Time Off Requests + - name: Time Tracking - name: Holiday Pay Policies - name: Departments - name: Reports @@ -45,15 +49,12 @@ tags: - name: Company Attachment - name: Wire In Requests - name: ACH Transactions - - name: Information Requests - - name: Time Tracking - - name: Time Off Requests - name: Salary Estimates - name: Reimbursements - - name: People Batches + - name: Payroll Digests info: title: Gusto API - version: '2025-11-15' + version: '2026-06-15' termsOfService: https://gusto.com/about/terms/developer-terms-of-service description: Welcome to Gusto's Embedded Payroll API documentation! contact: @@ -66,24440 +67,322 @@ servers: - url: https://api.gusto.com description: Prod x-speakeasy-server-id: prod -paths: - "/v1/token_info": - get: - summary: Get info about the current access token - operationId: get-v1-token-info - security: - - CompanyAccessAuth: [] - description: |- - Returns scope and resource information associated with the current access token. Use this endpoint to verify the following for the current access token: - * Resource (company, employee, contractor, or application) and resource owner - * Access level - tags: - - Introspection - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Token-Info" - x-speakeasy-name-override: getInfo - "/oauth/token": - post: - summary: Create a System Access Token or Refresh an Access Token - operationId: oauth-access-token - security: [] - description: Creates a system access token or refreshes an oauth access token - tags: - - Introspection - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Authentication" - requestBody: - content: - application/json: - schema: - oneOf: - - type: object - title: Refresh Token Request - required: - - client_id - - client_secret - - grant_type - - refresh_token - properties: - client_id: - type: string - description: Your client ID - example: qr6L_9FRkbMVL_GdwvrMW6Ef8tcU6NUxjWpOfqXqOG8 - client_secret: - type: string - description: Your client secret - example: 3aQSHRB3596nZhm6NdNBELZ1u9xbZmvCrKpBhbZYq6w - grant_type: - type: string - enum: - - refresh_token - description: Set system_access to create a system access token, refresh_token to refresh an existing token - refresh_token: - type: string - descrition: The refresh token being exchanged for an access token code - example: iEjL96L9Pndwmi-xVX3Q-xbrvvhnjHYGX87sopgGJ8E - redirect_uri: - type: string - description: The redirect URI you set up via the Developer Portal - - type: object - title: System Access Token Request - required: - - client_id - - client_secret - - grant_type - properties: - client_id: - type: string - description: Your client ID - example: qr6L_9FRkbMVL_GdwvrMW6Ef8tcU6NUxjWpOfqXqOG8 - client_secret: - type: string - description: Your client secret - example: 3aQSHRB3596nZhm6NdNBELZ1u9xbZmvCrKpBhbZYq6w - grant_type: - type: string - description: Set system_access to create a system access token, refresh_token to refresh an existing token - enum: - - system_access - required: true - "/v1/partner_managed_companies": - post: - summary: Create a partner managed company - operationId: post-v1-partner-managed-companies - security: - - SystemAccessAuth: [] - description: "Create a partner managed company. When you successfully call the API, it does the following:\n* Creates a new company in Gusto\n* Creates a new user using the provided email if the user does not already exist.\n* Makes the user the primary payroll administrator of the new company.\n\nIn response, you will receive oauth access tokens for the created company.\n\nIMPORTANT: the returned access and refresh tokens are reserved for this company only. They cannot be used to access other companies AND previously granted tokens cannot be used to access this company.\n\n\U0001F4D8 System Access Authentication\n\nThis endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access)\n\nscope: `partner_managed_companies:manage`" - tags: - - Companies - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: OK - content: - application/json: - schema: - "$ref": "#/components/schemas/Partner-Managed-Company" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Partner-Managed-Company-Create-Request" - required: true - x-speakeasy-name-override: createPartnerManaged - "/v1/companies/{company_id}": - get: - summary: Get a company - operationId: get-v1-companies - security: - - CompanyAccessAuth: [] - description: |- - Get a company. - - The employees:read scope is required to return home_address and non-work locations. - The company_admin:read scope is required to return primary_payroll_admin. - The signatories:read scope is required to return primary_signatory. - - scope: `companies:read` - tags: - - Companies - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Company" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: get - put: - summary: Update a company - operationId: put-v1-companies - security: - - CompanyAccessAuth: [] - description: |- - Update a company. - - scope: `companies:write` - tags: - - Companies - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Company" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - required: - - contractor_only - properties: - contractor_only: - type: boolean - description: 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. - required: true - x-speakeasy-name-override: update - "/v1/partner_managed_companies/{company_uuid}/migrate": - put: - summary: Migrate company to embedded payroll - operationId: put-v1-partner-managed-companies-company-uuid-migrate - security: - - CompanyAccessAuth: [] - description: |- - Migrate an existing Gusto customer to your embedded payroll product. - - ### Prerequisites - Before calling this endpoint: - 1. The customer must connect their Gusto account to your application using [OAuth2](doc:oauth2) - 2. The customer must view and [accept the Embedded Payroll Terms of Service](ref:post-partner-managed-companies-company_uuid-accept_terms_of_service) - - ### Related guides - - [Migrate an existing company](doc:migrate-existing-company) - - scope: `partner_managed_companies:write` - tags: - - Companies - x-gusto-integration-type: - - embedded - parameters: - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Partner-Managed-Company-Migrate-Response" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Partner-Managed-Company-Migrate-Request" - required: true - x-speakeasy-name-override: migrate - "/v1/partner_managed_companies/{company_uuid}/migration_readiness": - get: - summary: Check company migration readiness - operationId: get-v1-partner-managed-companies-company-uuid-migration_readiness - security: - - CompanyAccessAuth: [] - description: |- - Check if an existing Gusto customer is ready to be migrated to embedded payroll. This endpoint returns blockers and warnings associated with migrating the company and is recommended to be called before attempting to migrate a company. - - scope: `partner_managed_companies:read` - tags: - - Companies - x-gusto-integration-type: - - embedded - parameters: - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Partner-Managed-Company-Migration-Readiness-Response" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - "/v1/partner_managed_companies/{company_uuid}/accept_terms_of_service": - post: - summary: Accept terms of service for a company user - operationId: post-partner-managed-companies-company_uuid-accept_terms_of_service - security: - - CompanyAccessAuth: [] - description: |- - Accept the Gusto Embedded Payroll's [Terms of Service](https://flows.gusto.com/terms). - The user must have a role in the company in order to accept the Terms of Service. - - scope: `terms_of_services:write` - tags: - - Companies - x-gusto-integration-type: - - embedded - parameters: - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Partner-Managed-Company-Terms-Of-Service-Response" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Partner-Managed-Company-Accept-Terms-Of-Service-Request" - required: true - x-speakeasy-name-override: acceptTermsOfService - "/v1/partner_managed_companies/{company_uuid}/retrieve_terms_of_service": - post: - summary: Retrieve terms of service status for a company user - operationId: post-partner-managed-companies-company_uuid-retrieve_terms_of_service - security: - - CompanyAccessAuth: [] - description: |- - Retrieve the user acceptance status of the Gusto Embedded Payroll's [Terms of Service](https://flows.gusto.com/terms). - - scope: `terms_of_services:read` - tags: - - Companies - x-gusto-integration-type: - - embedded - parameters: - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Partner-Managed-Company-Terms-Of-Service-Response" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Partner-Managed-Company-Retrieve-Terms-Of-Service-Request" - required: true - x-speakeasy-name-override: retrieveTermsOfService - "/v1/invoices/{invoice_period}": - get: - summary: Retrieve invoicing data for companies - operationId: get-invoices-invoice-period - security: - - SystemAccessAuth: [] - description: "Retrieve data for active companies used to calculate invoices for Gusto Embedded Payroll. A company is considered active for an invoice period if they are an active partner managed company, have run payroll or created contractor payments since becoming a partner managed company, and are not suspended at any point during the invoice period. This endpoint forces pagination, with 100 results returned at a time. You can learn more about our pagination here: [pagination guide](https://docs.gusto.com/embedded-payroll/docs/pagination)\n\n\U0001F4D8 System Access Authentication\n\nThis endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access)\n\nscope: `invoices:read`" - tags: - - Invoices - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: invoice_period - in: path - required: true - description: The month we are calculating the invoice for. Must be in YYYY-MM format - schema: - type: string - - name: page - in: query - required: false - description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - schema: - type: integer - - name: per - in: query - required: false - description: Number of objects per page. For majority of endpoints will default to 25 - schema: - type: integer - - name: company_uuids - in: query - required: false - description: Filter companies returned in the active_companies response, will return an error if company not active during provided invoice period. i.e. `?company_uuids=781922d8-e780-4b6b-bf74-ee303166d022,bbbca930-7322-491c-ba7f-98707a52a9c5` - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: OK - content: - application/json: - schema: - "$ref": "#/components/schemas/Invoice-Data" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - x-speakeasy-name-override: get - "/v1/companies/{company_id}/attachments/{company_attachment_uuid}": - get: - summary: Get Company Attachment Details - operationId: get-v1-companies-attachment - security: - - CompanyAccessAuth: [] - description: |- - Retrieve the detail of an attachment uploaded by the company. - - ### Related guides - - [Manage company attachments](doc:manage-company-attachments) - - scope: `company_attachments:read` - tags: - - Company Attachment - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: company_attachment_uuid - in: path - description: The UUID of the company attachment - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Company-Attachment" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: companyAttachments - x-speakeasy-name-override: getDetails - "/v1/companies/{company_id}/attachments/{company_attachment_uuid}/download_url": - get: - summary: Get a temporary url to download the Company Attachment file - operationId: get-v1-companies-attachment-url - security: - - CompanyAccessAuth: [] - description: |- - Retrieve a temporary url to download an attachment file uploaded by the company. - - ### Related guides - - [Manage company attachments](doc:manage-company-attachments) - - scope: `company_attachments:read` - tags: - - Company Attachment - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: company_attachment_uuid - in: path - description: The UUID of the company attachment - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Company-Attachment-Download-Url" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: companyAttachment - x-speakeasy-name-override: getDownloadUrl - "/v1/companies/{company_id}/attachments": - get: - summary: Get List of Company Attachments - operationId: get-v1-companies-attachments - security: - - CompanyAccessAuth: [] - description: |- - Retrieve a list of all the attachments uploaded by the company. - - ### Related guides - - [Manage company attachments](doc:manage-company-attachments) - - scope: `company_attachments:read` - tags: - - Company Attachment - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Company-Attachment" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: companyAttachments - x-speakeasy-name-override: getList - post: - summary: Create Company Attachment and Upload File - operationId: post-v1-companies-attachment - security: - - CompanyAccessAuth: [] - description: |- - Upload a file and create a company attachment. We recommend uploading PDF files for optimal compatibility. However, the following file types are allowed: .qbb, .qbm, .gif, .jpg, .png, .pdf, .xls, .xlsx, .doc and .docx. - - ### Related guides - - [Manage company attachments](doc:manage-company-attachments) - - scope: `company_attachments:write` - tags: - - Company Attachment - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '201': - description: Created - content: - application/json: - schema: - "$ref": "#/components/schemas/Company-Attachment" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - multipart/form-data: - schema: - "$ref": "#/components/schemas/Company-Attachment-Create-Request-Body" - required: true - x-speakeasy-group: companyAttachments - x-speakeasy-name-override: create - "/v1/companies/{company_id}/federal_tax_details": - get: - summary: Get a company's federal tax details - operationId: get-v1-companies-company_id-federal_tax_details - security: - - CompanyAccessAuth: [] - description: |- - Retrieves a company's federal tax details including EIN verification status, tax payer type, filing form, and other federal tax configuration. - - scope: `company_federal_taxes:read` - tags: - - Federal Tax Details - x-gusto-integration-type: - - embedded - parameters: - - name: company_id - in: path - description: The UUID of the company - example: 7b1d0df1-6403-4a06-8768-c1dd7d24d27a - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Federal-Tax-Details" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: federalTaxDetails - x-speakeasy-name-override: get - put: - summary: Update a company's federal tax details - operationId: put-v1-companies-company_id-federal_tax_details - security: - - CompanyAccessAuth: [] - description: |- - Updates a company's federal tax details including EIN, legal name, tax payer type, filing form, and S-Corp - taxation status. This information is required to onboard a company for use with Gusto Embedded Payroll. - - ### Prerequisites - Before calling this endpoint, retrieve the current federal tax details and `version` via [GET /v1/companies/{company_id}/federal_tax_details](ref:get-v1-companies-company_id-federal_tax_details) - - ### Webhooks - - `company.updated`: Fires when federal tax details for a company are successfully updated - - **Setup:** [POST /v1/webhook_subscriptions](ref:post-v1-webhook-subscription) with `subscription_types`: `["Company"]` - - scope: `company_federal_taxes:write` - tags: - - Federal Tax Details - x-gusto-integration-type: - - embedded - parameters: - - name: company_id - in: path - description: The UUID of the company - example: 7b1d0df1-6403-4a06-8768-c1dd7d24d27a - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Federal-Tax-Details" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - '409': - description: Conflict - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Federal-Tax-Details-Update" - required: true - x-speakeasy-group: federalTaxDetails - x-speakeasy-name-override: update - "/v1/companies/{company_id}/industry_selection": - get: - summary: Get a company industry selection - operationId: get-v1-company-industry - security: - - CompanyAccessAuth: [] - description: |- - Returns the industry classification for a company, including NAICS code, SIC codes, and industry title. - - scope: `companies:read` - tags: - - Industry Selection - x-gusto-integration-type: - - embedded - parameters: - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Industry" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: industrySelection - x-speakeasy-name-override: get - put: - summary: Update a company industry selection - operationId: put-v1-company-industry - security: - - CompanyAccessAuth: [] - description: |- - Update the industry classification for a company by passing in a [NAICS code](https://www.naics.com). - - Optionally provide an industry title and [SIC codes](https://siccode.com/). If you do not provide SIC codes, - we will use the NAICS code to perform an internal lookup. - - Our UI leverages [Middesk API](https://docs.middesk.com/reference/introduction) to determine industry - classification codes. - - scope: `companies:write` - tags: - - Industry Selection - x-gusto-integration-type: - - embedded - parameters: - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '201': - description: Created - content: - application/json: - schema: - "$ref": "#/components/schemas/Industry" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Company-Industry-Selection-Required-Body" - required: true - x-speakeasy-group: industrySelection - x-speakeasy-name-override: update - "/v1/companies/{company_id}/admins": - get: - summary: Get all the admins at a company - operationId: get-v1-companies-company_id-admins - security: - - CompanyAccessAuth: [] - description: |- - Returns a list of all the admins at a company - - scope: `company_admin:read` - tags: - - Companies - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: page - in: query - required: false - description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - schema: - type: integer - - name: per - in: query - required: false - description: Number of objects per page. For majority of endpoints will default to 25 - schema: - type: integer - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Admin" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: listAdmins - post: - summary: Create an admin for the company - operationId: post-v1-companies-company_id-admins - security: - - CompanyAccessAuth: [] - description: |- - Creates a new admin for a company. - If the email matches an existing user, this will create an admin account for the current user. Otherwise, this will create a new user. - - scope: `company_admin:write` - tags: - - Companies - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Admin" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Admin-Create-Request" - required: true - x-speakeasy-name-override: createAdmin - "/v1/companies/{company_uuid}/signatories": - get: - summary: Get the signatories for a company - operationId: get-v1-companies-company_uuid-signatories - security: - - CompanyAccessAuth: [] - description: |- - Returns the signatories for a company. A company has at most one signatory. - - ## Related guides - - [Signatory Events](doc:signatory-events) - - scope: `signatories:read` - tags: - - Signatories - x-gusto-integration-type: - - embedded - parameters: - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Signatory" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: list - post: - summary: Create a signatory - operationId: post-v1-company-signatories - security: - - CompanyAccessAuth: [] - description: |- - Creates a company signatory with complete information. The company must not already have a signatory. - - A signatory can legally sign forms once the identity verification process is successful. The signatory should be an officer, owner, general partner or LLC member manager, plan administrator, fiduciary, or an authorized representative who is designated to sign agreements on the company's behalf. An officer is the president, vice president, treasurer, chief accounting officer, etc. There can only be a single primary signatory in a company. - - ### Webhooks - - `signatory.created`: Fires when a signatory is successfully created. - - ### Related guides - - [Signatory Events](doc:signatory-events) - - scope: `signatories:manage` - tags: - - Signatories - x-gusto-integration-type: - - embedded - parameters: - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Signatory" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Signatory-Create-Request" - required: true - x-speakeasy-name-override: create - "/v1/companies/{company_uuid}/signatories/invite": - post: - summary: Invite a signatory - operationId: post-v1-companies-company_uuid-signatories-invite - security: - - CompanyAccessAuth: [] - description: |- - Creates a signatory with minimal information. This signatory can be invited to provide more information through the [Update a signatory](ref:put-v1-companies-company_uuid-signatories-signatory_uuid) endpoint. This will start the identity verification process and allow the signatory to be verified to sign documents. - - ## Related guides - - [Signatory Events](doc:signatory-events) - - scope: `signatories:manage` - tags: - - Signatories - x-gusto-integration-type: - - embedded - parameters: - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Signatory" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Signatory-Invite-Request" - required: true - x-speakeasy-name-override: invite - "/v1/companies/{company_uuid}/signatories/{signatory_uuid}": - put: - summary: Update a signatory - operationId: put-v1-companies-company_uuid-signatories-signatory_uuid - security: - - CompanyAccessAuth: [] - description: |- - Updates a signatory that has been either invited or created. If the signatory has been created with minimal information through the [Invite a signatory](ref:post-v1-companies-company_uuid-signatories-invite) endpoint, then the first update must contain all attributes specified in the request body in order to start the identity verification process. - - ## Related guides - - [Signatory Events](doc:signatory-events) - - scope: `signatories:write` - tags: - - Signatories - x-gusto-integration-type: - - embedded - parameters: - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: signatory_uuid - in: path - description: The UUID of the signatory - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Signatory" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '409': - description: Conflict - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Signatory-Update-Request" - required: true - x-speakeasy-name-override: update - delete: - summary: Delete a signatory - operationId: delete-v1-companies-company_uuid-signatories-signatory_uuid - security: - - CompanyAccessAuth: [] - description: |- - Deletes a company signatory. - - ## Related guides - - [Signatory Events](doc:signatory-events) - - scope: `signatories:manage` - tags: - - Signatories - x-gusto-integration-type: - - embedded - parameters: - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: signatory_uuid - in: path - description: The UUID of the signatory - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '204': - description: No Content - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: delete - "/v1/companies/{company_uuid}/onboarding_status": - get: - summary: Get company onboarding status - operationId: get-v1-company-onboarding-status - security: - - CompanyAccessAuth: [] - description: |- - Retrieves a company's onboarding status, including whether onboarding is complete and the list of - required onboarding steps with their respective completion state. - - scope: `company_onboarding_status:read` - tags: - - Companies - x-gusto-integration-type: - - embedded - parameters: - - name: company_uuid - in: path - description: The UUID of the company - example: 7b1d0df1-6403-4a06-8768-c1dd7d24d27a - required: true - schema: - type: string - - name: additional_steps - in: query - required: false - example: external_payroll - description: Comma-delimited string of additional onboarding steps to include. Currently only supports the value "external_payroll". - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Company-Onboarding-Status" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: getOnboardingStatus - "/v1/companies/{company_uuid}/finish_onboarding": - put: - summary: Finish company onboarding - operationId: get-v1-company-finish-onboarding - security: - - CompanyAccessAuth: [] - description: |- - Finalize a company's onboarding process. - - ### Approve a company in demo - - After a company is finished onboarding, Gusto requires an additional step to review and approve that company. - The company onboarding status is "onboarding_completed": false, until the API call is made to finish company - onboarding. In production environments, this step is required for risk-analysis purposes. - - We provide the endpoint `PUT '/v1/companies/{company_uuid}/approve'` to facilitate company approvals in the demo environment. - - ```shell - PUT '/v1/companies/89771af8-b964-472e-8064-554dfbcb56d9/approve' - - # Response: Company object, with company_status: 'Approved' - ``` - - scope: `companies:write` - tags: - - Companies - x-gusto-integration-type: - - embedded - parameters: - - name: company_uuid - in: path - description: The UUID of the company - example: 7b1d0df1-6403-4a06-8768-c1dd7d24d27a - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Company-Onboarding-Status" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - x-speakeasy-name-override: finishOnboarding - "/v1/companies/{company_id}/custom_fields": - get: - summary: Get the custom fields of a company - operationId: get-v1-companies-company_id-custom_fields - security: - - CompanyAccessAuth: [] - description: |- - Returns a list of the custom fields of the company. Useful when you need to know the schema of custom fields for an entire company. - - scope: `companies:read` - tags: - - Companies - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: page - in: query - required: false - description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - schema: - type: integer - - name: per - in: query - required: false - description: Number of objects per page. For majority of endpoints will default to 25 - schema: - type: integer - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Company-Custom-Field-List" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: getCustomFields - "/v1/companies/{company_uuid}/flows": - post: - summary: Create a flow - operationId: post-v1-company-flows - security: - - CompanyAccessAuth: [] - description: |- - Generate a link to access a pre-built workflow in Gusto white-label UI. For security, all generated flows will expire within 1 hour of inactivity or 24 hours from creation time, whichever comes first. - - You can see a list of all possible flow types in our [Flow Types](https://docs.gusto.com/embedded-payroll/docs/flow-types) guide. - - You can also mix and match flow_types in the same category to create custom flows suitable for your needs. - - For instance, to create a custom onboarding flow that only includes `add_addresses`, `add_employees`, and `sign_all_forms` steps, simply stitch those flow_types together into a comma delimited string: - - ```json - { - "flow_type": "add_addresses,add_employees,sign_all_forms" - } - ``` - - Please be mindful of data dependencies in each step to achieve the best user experience. - - For more information and in-depth guides review the [Getting Started](https://docs.gusto.com/embedded-payroll/docs/flows-getting-started) guide for flows. - - scope: `flows:write` - tags: - - Flows - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '201': - description: Created - content: - application/json: - schema: - "$ref": "#/components/schemas/Flow" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Create-Flow-Request" - required: true - x-speakeasy-name-override: create - "/v1/companies/{company_id}/locations": - get: - summary: Get all company locations - operationId: get-v1-companies-company_id-locations - security: - - CompanyAccessAuth: [] - description: |- - Retrieves all company locations (addresses) associated with a company: mailing addresses, filing - addresses, or work locations. A single address may serve multiple, or all, purposes. - - Since all company locations are subsets of locations, use the Locations endpoints to - [get](ref:get-v1-locations-location_id) or [update](ref:put-v1-locations-location_id) an individual record. - - scope: `companies:read` - tags: - - Locations - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - example: 7b1d0df1-6403-4a06-8768-c1dd7d24d27a - required: true - schema: - type: string - - name: page - in: query - required: false - description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - schema: - type: integer - - name: per - in: query - required: false - description: Number of objects per page. For majority of endpoints will default to 25 - schema: - type: integer - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Company-Locations-List" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: get - post: - summary: Create a company location - operationId: post-v1-companies-company_id-locations - security: - - CompanyAccessAuth: [] - description: |- - Create a company location, which represents any address associated with a company: mailing - addresses, filing addresses, or work locations. A single address may serve multiple, or all, purposes. - - Since all company locations are subsets of locations, use the Locations endpoints to - [get](ref:get-v1-locations-location_id) or [update](ref:put-v1-locations-location_id) an individual record. - - scope: `companies:write` - tags: - - Locations - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '201': - description: Created - content: - application/json: - schema: - "$ref": "#/components/schemas/Location" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Company-Location-Request" - required: true - x-speakeasy-name-override: create - "/v1/locations/{location_id}": - get: - summary: Get a location - operationId: get-v1-locations-location_id - security: - - CompanyAccessAuth: [] - description: |- - Get a location. - - scope: `companies:read` - tags: - - Locations - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: location_id - in: path - description: The UUID of the location - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Location" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: retrieve - put: - summary: Update a location - operationId: put-v1-locations-location_id - security: - - CompanyAccessAuth: [] - description: |- - Update a location. - - scope: `companies:write` - tags: - - Locations - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: location_id - in: path - description: The UUID of the location - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Location" - '422': - description: Invalid state - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '409': - description: Invalid version param - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - allOf: - - "$ref": "#/components/schemas/Versionable-Required" - - type: object - properties: - phone_number: - type: string - pattern: "[0-9]{10}" - example: '8009360383' - street_1: - type: string - example: 300 3rd Street - street_2: - type: - - string - - 'null' - example: Apartment 318 - city: - type: string - example: San Francisco - state: - type: string - zip: - type: string - example: '94107' - country: - type: string - mailing_address: - type: boolean - description: For a company location, specify if this location is the company's mailing address. A company has a single mailing address, so this designation will override any previous selection. - filing_address: - type: boolean - description: For a company location, specify if this location is the company's filing address. A company has a single filing address, so this designation will override any previous selection. - required: true - x-speakeasy-name-override: update - "/v1/locations/{location_uuid}/minimum_wages": - get: - summary: Get minimum wages for a location - operationId: get-v1-locations-location_uuid-minimum_wages - security: - - CompanyAccessAuth: [] - description: |- - Get minimum wages for a location - - scope: `companies:read` - tags: - - Locations - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: location_uuid - in: path - description: The UUID of the location - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: effective_date - in: query - required: false - example: '2020-01-31' - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Minimum-Wage-List" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: getMinimumWages - "/v1/companies/{company_id}/bank_accounts": - get: - summary: Get all company bank accounts - operationId: get-v1-companies-company_id-bank-accounts - security: - - CompanyAccessAuth: [] - description: |- - Returns company bank accounts. Currently, we only support a single default bank account per company. - - scope: `company_bank_accounts:read` - tags: - - Bank Accounts - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Company-Bank-Account" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: bankAccounts - x-speakeasy-name-override: get - post: - summary: Create a company bank account - operationId: post-v1-companies-company_id-bank-accounts - security: - - CompanyAccessAuth: [] - description: "This endpoint creates a new company bank account.\n\nUpon being created, two verification deposits are automatically sent to the bank account, and the bank account's verification_status is 'awaiting_deposits'.\n\nWhen the deposits are successfully transferred, the verification_status changes to 'ready_for_verification', at which point the verify endpoint can be used to verify the bank account.\nAfter successful verification, the bank account's verification_status is 'verified'.\n\n\n>\U0001F6A7 Warning\n>\n> If a default bank account exists, it will be disabled and the new bank account will replace it as the company's default funding method.\n\nscope: `company_bank_accounts:write`" - tags: - - Bank Accounts - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Bank account unchanged - content: - application/json: - schema: - "$ref": "#/components/schemas/Company-Bank-Account" - '201': - description: created - content: - application/json: - schema: - "$ref": "#/components/schemas/Company-Bank-Account" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: Invalid Attribute - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Company-Bank-Account-Request" - required: true - x-speakeasy-group: bankAccounts - x-speakeasy-name-override: create - "/v1/companies/{company_id}/bank_accounts/{bank_account_uuid}/verify": - put: - summary: Verify a company bank account - operationId: put-v1-companies-company_id-bank-accounts-verify - security: - - CompanyAccessAuth: [] - description: |- - Verify a company bank account by confirming the two micro-deposits sent to the bank account. - - Note that the order of the two deposits specified in request parameters does not matter. - There's a maximum of 5 verification attempts, after which we will automatically initiate a new set of micro-deposits and require the bank account to be verified with the new micro-deposits. - - ### Bank account verification in demo - In the demo environment, use the `POST /v1/companies/{company_id}/bank_accounts/{bank_account_uuid}/send_test_deposits` endpoint to simulate the micro-deposits transfer and return the two amounts in the response. You can call this endpoint as many times as you wish to retrieve the values of the two micro-deposits. - - ### Webhooks - - `company.bank_account.verified`: Fires when the company bank account is successfully verified. - - ### Related guides - - [Manage company bank accounts](doc:manage-company-bank-accounts) - - [Bank Account Events](doc:bank-account-events) - - scope: `company_bank_accounts:write` - tags: - - Bank Accounts - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: bank_account_uuid - in: path - description: The UUID of the company bank account - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Company-Bank-Account" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Company-Bank-Account-Verify-Request" - required: true - x-speakeasy-group: bankAccounts - x-speakeasy-name-override: verify - "/v1/companies/{company_uuid}/external_payrolls": - get: - summary: Get external payrolls for a company - operationId: get-v1-company-external-payrolls - security: - - CompanyAccessAuth: [] - tags: - - External Payrolls - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: page - in: query - required: false - description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - schema: - type: integer - - name: per - in: query - required: false - description: Number of objects per page. For majority of endpoints will default to 25 - schema: - type: integer - description: |- - Get external payrolls for a company. - - scope: `external_payrolls:read` - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/External-Payroll-Basic" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: externalPayrolls - x-speakeasy-name-override: get - post: - summary: Create an external payroll for a company - operationId: post-v1-external-payroll - security: - - CompanyAccessAuth: [] - tags: - - External Payrolls - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - description: |- - Creates a new external payroll for a company. - - scope: `external_payrolls:write` - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/External-Payroll" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/External-Payroll-Create-Request" - required: true - x-speakeasy-group: externalPayrolls - x-speakeasy-name-override: create - "/v1/companies/{company_uuid}/external_payrolls/{external_payroll_id}": - get: - summary: Get an external payroll - operationId: get-v1-external-payroll - security: - - CompanyAccessAuth: [] - tags: - - External Payrolls - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: external_payroll_id - in: path - description: The UUID of the external payroll - required: true - schema: - type: string - description: |- - Get an external payroll for a given company. - - scope: `external_payrolls:read` - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/External-Payroll" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: externalPayrolls - x-speakeasy-name-override: retrieve - put: - summary: Update an external payroll - operationId: put-v1-external-payroll - security: - - CompanyAccessAuth: [] - tags: - - External Payrolls - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: external_payroll_id - in: path - description: The UUID of the external payroll - required: true - schema: - type: string - description: |- - Update an external payroll with a list of external payroll items. - - scope: `external_payrolls:write` - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/External-Payroll" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/External-Payroll-Update-Request" - required: true - x-speakeasy-group: externalPayrolls - x-speakeasy-name-override: update - delete: - summary: Delete an external payroll - operationId: delete-v1-external-payroll - security: - - CompanyAccessAuth: [] - tags: - - External Payrolls - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: external_payroll_id - in: path - description: The UUID of the external payroll - required: true - schema: - type: string - description: |- - Delete an external payroll. - - scope: `external_payrolls:write` - x-gusto-rswag: true - responses: - '204': - description: No Content - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: {} - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: {} - x-speakeasy-group: externalPayrolls - x-speakeasy-name-override: delete - "/v1/companies/{company_uuid}/external_payrolls/{external_payroll_id}/calculate_taxes": - get: - summary: Get tax suggestions for an external payroll - operationId: get-v1-external-payroll-calculate-taxes - security: - - CompanyAccessAuth: [] - tags: - - External Payrolls - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: external_payroll_id - in: path - description: The UUID of the external payroll - required: true - schema: - type: string - description: |- - Get tax suggestions for an external payroll. Earnings and/or benefits data must be saved prior to the calculation in order to retrieve accurate tax calculation. - - scope: `external_payrolls:read` - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/External-Payroll-Tax-Suggestions" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - x-speakeasy-group: externalPayrolls - x-speakeasy-name-override: calculateTaxes - "/v1/companies/{company_uuid}/external_payrolls/tax_liabilities": - get: - summary: Get tax liabilities - operationId: get-v1-tax-liabilities - security: - - CompanyAccessAuth: [] - tags: - - External Payrolls - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - description: |- - Get tax liabilities from aggregate external payrolls for a company. - - scope: `external_payrolls:read` - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Tax-Liabilities-Selections" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: externalPayrolls - x-speakeasy-name-override: listTaxLiabilities - put: - summary: Update tax liabilities - operationId: put-v1-tax-liabilities - security: - - CompanyAccessAuth: [] - tags: - - External Payrolls - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - description: |- - Update tax liabilities for a company. - - scope: `external_payrolls:write` - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Tax-Liabilities-Selections" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Tax-Liability-Selections-Request" - required: true - x-speakeasy-group: externalPayrolls - x-speakeasy-name-override: updateTaxLiabilities - "/v1/companies/{company_uuid}/external_payrolls/tax_liabilities/finish": - put: - summary: Finalize tax liabilities options and convert into processed payrolls - operationId: put-v1-tax-liabilities-finish - security: - - CompanyAccessAuth: [] - tags: - - External Payrolls - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - description: |- - Finalizes tax liabilities for a company. All external payrolls edit action will be disabled. - - ### Asynchronous processing - This endpoint triggers an asynchronous operation. The external payrolls will be processed in the background after finalization. - - scope: `external_payrolls:write` - x-gusto-rswag: true - responses: - '202': - description: Accepted - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: {} - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: {} - x-speakeasy-group: externalPayrolls - x-speakeasy-name-override: finalizeTaxLiabilities - "/v1/companies/{company_uuid}/payment_configs": - get: - summary: Get a company's payment configs - operationId: get-v1-company-payment-configs - security: - - CompanyAccessAuth: [] - description: |- - Get payment speed configurations for the company: payment speed (1-day, 2-day, or 4-day ACH), fast payment limit, partner-owned disbursement setting, and earned fast ACH blockers when applicable. 1-day is only available to partners that opt in. - - ### Related guides - - [Payroll Processing Speeds](doc:2-day-vs-4-day) - - scope: `company_payment_configs:read` - tags: - - Payment Configs - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Payment-Configs" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: get - x-speakeasy-group: paymentConfigs - put: - summary: Update a company's payment configs - operationId: put-v1-company-payment-configs - security: - - CompanyAccessAuth: [] - description: |- - Update payment speed, fast payment limit, and/or partner-owned disbursement for a company. - - At least one of `payment_speed`, `fast_payment_limit`, or `partner_owned_disbursement` is required. - 1-day payment speed is only applicable to partners that opt in. 1-day is not allowed when AutoPilot is enabled. - - ### Related guides - - [Payroll Processing Speeds](doc:2-day-vs-4-day) - - scope: `company_payment_configs:write` - tags: - - Payment Configs - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Payment-Configs" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Payment-Configs-Update-Request" - required: true - x-speakeasy-group: paymentConfigs - x-speakeasy-name-override: update - "/v1/companies/{company_id}/pay_schedules": - get: - summary: Get the pay schedules for a company - operationId: get-v1-companies-company_id-pay_schedules - security: - - CompanyAccessAuth: [] - description: |- - Returns all pay schedules for a company. The pay schedule object captures the details of when employees work and when they should be paid. A company can have multiple pay schedules. - - scope: `pay_schedules:read` - tags: - - Pay Schedules - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: page - in: query - required: false - description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - schema: - type: integer - - name: per - in: query - required: false - description: Number of objects per page. For majority of endpoints will default to 25 - schema: - type: integer - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Pay-Schedule-Show-Response" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: paySchedules - x-speakeasy-name-override: getAll - post: - summary: Create a new pay schedule - operationId: post-v1-companies-company_id-pay_schedules - security: - - CompanyAccessAuth: [] - description: |- - 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](https://www.dol.gov/agencies/whd/state/payday)** to know what schedule is right for your customers. - - > If an onboarded company misses their first pay date, Gusto will automatically adjust the pay schedule to the next available pay date. - - ### Webhooks - - `pay_schedule.created`: Fires when a pay schedule is successfully created. - - ### Related guides - - [Create a pay schedule](doc:create-a-pay-schedule) - - [Pay Schedules](doc:pay-schedule-info) - - [Manage Pay Schedules via API](doc:manage-pay-schedules-api) - - scope: `pay_schedules:write` - tags: - - Pay Schedules - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '201': - description: Created - content: - application/json: - schema: - "$ref": "#/components/schemas/Pay-Schedule-Show" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Pay-Schedule-Create-Request" - required: true - x-speakeasy-group: paySchedules - x-speakeasy-name-override: create - "/v1/companies/{company_id}/pay_schedules/preview": - get: - summary: Preview pay schedule dates - operationId: get-v1-companies-company_id-pay_schedules-preview - security: - - CompanyAccessAuth: [] - description: |- - Provides a preview of a pay schedule with the specified parameters for the next 18 months. Use this before creating or updating a pay schedule to show expected check dates, pay period boundaries, and payroll deadlines. - - ### Related guides - - [Create a pay schedule](doc:create-a-pay-schedule) - - [Manage Pay Schedules via API](doc:manage-pay-schedules-api) - - scope: `pay_schedules:write` - tags: - - Pay Schedules - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: frequency - in: query - required: true - schema: - type: string - enum: - - Every week - - Every other week - - Twice per month - - Monthly - example: Twice per month - description: The frequency that employees on this pay schedule are paid with Gusto. - - name: anchor_pay_date - in: query - required: true - schema: - type: string - format: date - example: '2020-05-15' - description: The first date that employees on this pay schedule are paid with Gusto. - - name: anchor_end_of_pay_period - in: query - required: true - schema: - type: string - format: date - example: '2020-05-08' - description: The last date of the first pay period. This can be the same date as the anchor pay date. - - name: day_1 - in: query - required: false - schema: - type: integer - example: 15 - description: 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. - - name: day_2 - in: query - required: false - schema: - type: integer - example: 31 - description: 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 is set to the last day of the month. It will be null for pay schedules with other frequencies. - - name: end_date - in: query - required: false - schema: - type: string - format: date - description: End date for the preview range. If given, this date must be in the future. When unspecified, defaults to 18 months from today. - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Pay-Schedule-Preview" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - x-speakeasy-group: paySchedules - x-speakeasy-name-override: getPreview - "/v1/companies/{company_id}/pay_schedules/{pay_schedule_id}": - get: - summary: Get a pay schedule - operationId: get-v1-companies-company_id-pay_schedules-pay_schedule_id - security: - - CompanyAccessAuth: [] - description: |- - Returns a single pay schedule by UUID. The pay schedule object in Gusto captures the details of when employees work and when they should be paid. A company can have multiple pay schedules. - - scope: `pay_schedules:read` - tags: - - Pay Schedules - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: pay_schedule_id - in: path - description: The UUID of the pay schedule - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Pay-Schedule-Show" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: get - x-speakeasy-group: paySchedules - put: - summary: Update a pay schedule - operationId: put-v1-companies-company_id-pay_schedules-pay_schedule_id - security: - - CompanyAccessAuth: [] - description: |- - Updates a pay schedule. The `version` parameter from the GET response is required for [optimistic concurrency](doc:api-fundamentals); a mismatch returns 409 Conflict. - - ### Effect on payrolls - Updating a pay schedule will delete any unprocessed regular payrolls whose pay period end date is today or in the future. Already-processed payrolls are not affected. - - ### Pay schedules may be automatically adjusted - If an onboarded company misses their first pay date, Gusto will automatically adjust the pay schedule to the next available pay date. - - ### Webhooks - - `pay_schedule.updated`: Fires when a pay schedule is successfully updated. - - ### Related guides - - [Create a pay schedule](doc:create-a-pay-schedule) - - [Manage Pay Schedules via API](doc:manage-pay-schedules-api) - - scope: `pay_schedules:write` - tags: - - Pay Schedules - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: pay_schedule_id - in: path - description: The UUID of the pay schedule - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Pay-Schedule-Show" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '409': - description: Conflict - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Pay-Schedule-Update-Request" - required: true - x-speakeasy-group: paySchedules - x-speakeasy-name-override: update - "/v1/companies/{company_id}/pay_periods": - get: - summary: Get pay periods for a company - operationId: get-v1-companies-company_id-pay_periods - security: - - CompanyAccessAuth: [] - description: |- - Pay periods are the foundation of payroll. Compensation, time & attendance, taxes, and expense reports all rely on when they happened. - - To begin submitting information for a given payroll, we need to agree on the time period. - - By default, this endpoint returns pay periods starting from 6 months ago to the date today. Use the `start_date` and `end_date` parameters to change the scope of the response. End dates can be up to 3 months in the future and there is no limit on start dates. - - Starting in version 2023-04-01, the `eligible_employees` attribute was removed from the response. The eligible employees for a payroll are determined by the employee_compensations returned from the [PUT /v1/companies/{company_id}/payrolls/{payroll_id}/prepare](ref:put-v1-companies-company_id-payrolls-payroll_id-prepare) endpoint. - - scope: `payrolls:read` - tags: - - Payrolls - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: start_date - in: query - required: false - schema: - type: string - format: date - description: Start date (YYYY-MM-DD) for the pay periods range. Defaults to 6 months ago. - - name: end_date - in: query - required: false - schema: - type: string - format: date - description: End date (YYYY-MM-DD) for the pay periods range. Cannot be more than 3 months in the future. Defaults to today. - - name: payroll_types - in: query - required: false - schema: - type: string - enum: - - regular - - transition - - regular,transition - description: Comma-separated list of payroll types to include (regular, transition). Defaults to regular only. - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Pay-Period" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - x-speakeasy-group: paySchedules - x-speakeasy-name-override: getPayPeriods - "/v1/companies/{company_id}/pay_periods/unprocessed_termination_pay_periods": - get: - summary: Get termination pay periods for a company - operationId: get-v1-companies-company_id-unprocessed_termination_pay_periods - security: - - CompanyAccessAuth: [] - description: |- - 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. - - This endpoint returns the unprocessed pay periods for past and future terminated employees in a given company. - - scope: `payrolls:read` - tags: - - Pay Schedules - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Unprocessed-Termination-Pay-Period" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: paySchedules - x-speakeasy-name-override: getUnprocessedTerminationPeriods - "/v1/companies/{company_id}/pay_schedules/assignments": - get: - summary: Get pay schedule assignments for a company - operationId: get-v1-companies-company_id-pay_schedules-assignments - security: - - CompanyAccessAuth: [] - description: |- - This endpoint returns the current pay schedule assignment for a company, with pay schedule and employee/department mappings depending on the pay schedule type. - - scope: `pay_schedules:read` - tags: - - Pay Schedules - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Pay-Schedule-Assignment" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: paySchedules - x-speakeasy-name-override: getAssignments - "/v1/companies/{company_id}/pay_schedules/assignment_preview": - post: - summary: Preview pay schedule assignments for a company - operationId: post-v1-companies-company_id-pay_schedules-assignment_preview - security: - - CompanyAccessAuth: [] - description: |- - This endpoint returns the employee changes, including pay period and transition pay periods, for changing the pay schedule. - - scope: `pay_schedules:write` - tags: - - Pay Schedules - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Pay-Schedule-Assignment-Preview" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Pay-Schedule-Assignment-Body" - required: true - x-speakeasy-group: paySchedules - x-speakeasy-name-override: previewAssignment - "/v1/companies/{company_id}/pay_schedules/assign": - post: - summary: Assign pay schedules for a company - operationId: post-v1-companies-company_id-pay_schedules-assign - security: - - CompanyAccessAuth: [] - description: |- - This endpoint assigns employees to pay schedules based on the schedule type. - For `by_employee` and `by_department` schedules, use the `partial_assignment` parameter to control the assignment scope. Set it to `true` for partial assignments (only some employees or departments at a time) and `false` for full assignments (all employees or departments at once). - - scope: `pay_schedules:write` - tags: - - Pay Schedules - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: No Content - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Pay-Schedule-Assignment-Body" - required: true - x-speakeasy-group: paySchedules - x-speakeasy-name-override: assign - "/v1/companies/{company_id}/employees": - get: - summary: Get employees of a company - operationId: get-v1-companies-company_id-employees - security: - - CompanyAccessAuth: [] - description: |- - Get all of the employees, onboarding, active and terminated, for a given company. - - Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope is included. This allows you to access employee and job metadata without exposing pay rates. - - scope: `employees:read` - tags: - - Employees - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - required: true - description: The UUID of the company - schema: - type: string - - name: location_uuid - in: query - required: false - description: Filter employees by a specific primary work location - schema: - type: string - - name: payroll_uuid - in: query - required: false - description: Filter employees by a specific payroll - schema: - type: string - - name: search_term - in: query - required: false - description: A string to search for in the object's names - schema: - type: string - - name: sort_by - in: query - required: false - schema: - type: string - pattern: "^(created_at|name|onboarding_status)(:(asc|desc))?(,(created_at|name|onboarding_status)(:(asc|desc))?)*$" - example: name:desc - description: Sort employees by a given field. Cannot be used with search_term. Append `:asc` or `:desc` to specify direction (e.g., `name:desc`). Defaults to ascending. - - name: include - in: query - explode: false - required: false - schema: - type: array - items: - type: string - enum: - - all_compensations - - all_home_addresses - - company_name - - current_home_address - - custom_fields - - portal_invitations - x-enumDescriptions: - all_compensations: Include all effective dated compensations for each job instead of only the current compensation. Requires `compensations:read` scope. - all_home_addresses: Include all home addresses that have been associated to this employee - company_name: Include the name of the company that the employee is associated with - current_home_address: Include the employee's current home address - custom_fields: Include employees' custom fields - portal_invitations: Include portal invitation status information, including member portal invitation details and partner portal invitation status - description: Include the requested attribute(s) in each employee response. Multiple options are comma separated. - - name: onboarded - in: query - required: false - description: Filters employees by those who have completed onboarding - schema: - type: boolean - - name: onboarded_active - in: query - required: false - description: Filters employees who are ready to work (onboarded AND active today) - schema: - type: boolean - - name: terminated - in: query - required: false - description: Filters employees by those who have been or are scheduled to be terminated - schema: - type: boolean - - name: terminated_today - in: query - required: false - description: Filters employees by those who have been terminated and whose termination is in effect today (excludes active and scheduled to be terminated) - schema: - type: boolean - - name: uuids - in: query - explode: false - schema: - type: array - items: - type: string - required: false - description: Optional subset of employees to fetch. - - name: page - in: query - required: false - description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - schema: - type: integer - - name: per - in: query - required: false - description: Number of objects per page. For majority of endpoints will default to 25 - schema: - type: integer - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Show-Employees" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: list - post: - summary: Create an employee - operationId: post-v1-employees - security: - - CompanyAccessAuth: [] - description: |- - Create an employee. - - scope: `employees:manage` - tags: - - Employees - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - required: true - description: Company ID - schema: - type: string - x-gusto-rswag: true - responses: - '201': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: invalid attributes - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - required: - - first_name - - last_name - properties: - first_name: - type: string - middle_initial: - type: string - last_name: - type: string - email: - type: - - string - - 'null' - format: email - description: The employee's personal email address. Required if self_onboarding is true. - work_email: - type: string - format: email - description: The employee's work email address. - date_of_birth: - type: string - format: date - ssn: - type: string - pattern: "[0-9]{9}" - preferred_first_name: - type: string - self_onboarding: - type: boolean - description: If true, employee is expected to self-onboard. If false, payroll admin is expected to enter in the employee's onboarding information - x-speakeasy-name-override: create - "/v1/companies/{company_id}/employees/payment_details": - get: - summary: Get employee payment details for a company - operationId: get-v1-companies-company_id-employees-payment_details - security: - - CompanyAccessAuth: [] - description: |- - Fetches payment details for employees in a given company. Results are paginated. - - Use the `employee_uuid` query parameter to filter for a single employee. - Use the `payroll_uuid` query parameter to filter for employees on a specific payroll. - Providing both `employee_uuid` and `payroll_uuid` will result in a 422 error. - An empty array is returned if the company has no employees or if no employees match the filter criteria. - - The `encrypted_account_number` in the `splits` array is only visible if the `employee_payment_methods:read:account_number` scope is present. - - scope: `employee_payment_methods:read` - tags: - - Employees - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: employee_uuid - in: query - required: false - description: The UUID of a specific employee to fetch payment details for. - schema: - type: string - - name: payroll_uuid - in: query - required: false - description: The UUID of a specific payroll to fetch payment details for employees on that payroll. - schema: - type: string - - name: page - in: query - required: false - description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - schema: - type: integer - - name: per - in: query - required: false - description: Number of objects per page. For majority of endpoints will default to 25 - schema: - type: integer - x-gusto-rswag: true - responses: - '200': - description: A list of employee payment details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Payment-Details-List" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - "/v1/companies/{company_uuid}/historical_employees": - post: - summary: Create a historical employee - operationId: post-v1-historical_employees - security: - - CompanyAccessAuth: [] - description: |- - Create a historical employee, an employee that was previously dismissed from the company in the current year. - - scope: `employees:manage` - tags: - - Employees - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - required: true - description: The UUID of the company that will employ this historical record. - example: 7b1d0df1-6403-4a06-8768-c1dd7d24d27a - schema: - type: string - x-gusto-rswag: true - responses: - '201': - description: Created - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Historical-Employee-Body" - required: true - x-speakeasy-name-override: createHistorical - "/v1/companies/{company_uuid}/historical_employees/{historical_employee_uuid}": - put: - summary: Update a historical employee - operationId: put-v1-historical_employees - security: - - CompanyAccessAuth: [] - description: |- - Update a historical employee, an employee that was previously dismissed from the company in the current year. - - scope: `employees:manage employees:write` - tags: - - Employees - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - required: true - description: The UUID of the company that will employ this historical record. - example: 7b1d0df1-6403-4a06-8768-c1dd7d24d27a - schema: - type: string - - name: historical_employee_uuid - in: path - required: true - description: The UUID of the historical employee returned from create or list responses. - example: a2b3c4d-5e6f-7890-abcd-ef1234567890 - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - allOf: - - "$ref": "#/components/schemas/Versionable-Required" - - "$ref": "#/components/schemas/Historical-Employee-Body" - required: true - x-speakeasy-group: historicalEmployees - x-speakeasy-name-override: update - "/v1/companies/{company_uuid}/departments": - get: - summary: Get all departments of a company - operationId: get-companies-departments - security: - - CompanyAccessAuth: [] - description: |- - Get all of the departments for a given company with the employees and contractors assigned to that department. - - scope: `departments:read` - tags: - - Departments - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Department-List" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: getAll - post: - summary: Create a department - operationId: post-departments - security: - - CompanyAccessAuth: [] - description: |- - Create a department - - scope: `departments:write` - tags: - - Departments - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '201': - description: Created - content: - application/json: - schema: - "$ref": "#/components/schemas/Department" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Department-Create-Request-Body" - required: true - x-speakeasy-name-override: create - "/v1/departments/{department_uuid}": - get: - summary: Get a department - operationId: get-department - security: - - CompanyAccessAuth: [] - description: |- - Get a department given the UUID - - scope: `departments:read` - tags: - - Departments - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: department_uuid - in: path - description: The UUID of the department - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Department" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: get - put: - summary: Update a department - operationId: put-departments - security: - - CompanyAccessAuth: [] - description: |- - Update a department - - scope: `departments:write` - tags: - - Departments - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: department_uuid - in: path - description: The UUID of the department - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Department" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - '409': - description: Conflict - content: - application/json: - schema: - "$ref": "#/components/schemas/Conflict-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Department-Update-Request-Body" - required: true - x-speakeasy-name-override: update - delete: - summary: Delete a department - operationId: delete-department - security: - - CompanyAccessAuth: [] - description: |- - Delete a department. You cannot delete a department until all employees and contractors have been removed. - - scope: `departments:write` - tags: - - Departments - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: department_uuid - in: path - description: The UUID of the department - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '204': - description: No Content - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - x-speakeasy-name-override: delete - "/v1/departments/{department_uuid}/add": - put: - summary: Add people to a department - operationId: put-add-people-to-department - security: - - CompanyAccessAuth: [] - description: |- - Add employees and contractors to a department - - scope: `departments:write` - tags: - - Departments - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: department_uuid - in: path - description: The UUID of the department - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Department" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Department-People-Request-Body" - required: true - x-speakeasy-name-override: addPeople - "/v1/departments/{department_uuid}/remove": - put: - summary: Remove people from a department - operationId: put-remove-people-from-department - security: - - CompanyAccessAuth: [] - description: |- - Remove employees and contractors from a department - - scope: `departments:write` - tags: - - Departments - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: department_uuid - in: path - description: The UUID of the department - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Department" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Department-People-Request-Body" - required: true - x-speakeasy-name-override: removePeople - "/v1/employees/{employee_id}": - get: - summary: Get an employee - operationId: get-v1-employees - security: - - CompanyAccessAuth: [] - description: |- - Get an employee. - - Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope is included. This allows you to access employee and job metadata without exposing pay rates. - - scope: `employees:read` - tags: - - Employees - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - - name: include - in: query - explode: false - required: false - schema: - type: array - items: - type: string - enum: - - all_compensations - - all_home_addresses - - company_name - - current_home_address - - custom_fields - - portal_invitations - x-enumDescriptions: - all_compensations: Include all effective dated compensations for each job instead of only the current compensation. Requires `compensations:read` scope. - all_home_addresses: Include all home addresses that have been associated to this employee - company_name: Include the name of the company that the employee is associated with - current_home_address: Include the employee's current home address - custom_fields: Include employees' custom fields - portal_invitations: Include portal invitation status information, including member portal invitation details and partner portal invitation status - description: Include the requested attribute(s) in each employee response. Multiple options are comma separated. - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: get - put: - summary: Update an employee. - operationId: put-v1-employees - security: - - CompanyAccessAuth: [] - description: |- - Update an employee. - - scope: `employees:write` - tags: - - Employees - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee" - '409': - description: invalid version - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - '422': - description: invalid attributes - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - requestBody: - content: - application/json: - schema: - allOf: - - "$ref": "#/components/schemas/Versionable-Required" - - type: object - properties: - first_name: - type: string - example: Weezy - middle_initial: - type: - - string - - 'null' - example: F - last_name: - type: string - example: Baby - email: - type: string - example: tunechi@cashmoneyrecords.com - work_email: - type: string - example: new.partner.work@example.com - date_of_birth: - type: string - example: '1991-01-31' - ssn: - type: string - pattern: "[0-9]{9}" - example: '824920233' - preferred_first_name: - type: - - string - - 'null' - two_percent_shareholder: - type: boolean - description: Whether the employee is a two percent shareholder of the company. This field only applies to companies with an S-Corp entity type. - required: true - x-speakeasy-name-override: update - delete: - summary: Delete an onboarding employee - operationId: delete-v1-employee - security: - - CompanyAccessAuth: [] - description: |- - Use this endpoint to delete an employee who is in onboarding. Deleting - an onboarded employee is not allowed and will return a 422 response. Please check out the Terminations api - if you need to terminate an onboarded employee. - - scope: `employees:manage` - tags: - - Employees - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '204': - description: successful - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: cannot delete onboarded employee - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - x-speakeasy-name-override: delete - "/v1/employees/{employee_id}/terminations": - get: - summary: Get terminations for an employee - operationId: get-v1-employees-employee_id-terminations - security: - - CompanyAccessAuth: [] - description: |- - Terminations are created whenever an employee is scheduled to leave the company. The only things required are an effective date (their last day of work) and whether they should receive their wages in a one-off termination payroll or with the rest of the company. - - Note that some states require employees to receive their final wages within 24 hours (unless they consent otherwise,) in which case running a one-off payroll may be the only option. - - scope: `employments:read` - tags: - - Employee Employments - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Termination" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: employeeEmployments - x-speakeasy-name-override: getTerminations - post: - summary: Create an employee termination - operationId: post-v1-employees-employee_id-terminations - security: - - CompanyAccessAuth: [] - description: |- - Create a termination for an employee. The only things required are an effective date (their last day of work) and whether they should receive their wages in a one-off termination payroll or with the rest of the company. - - Note that some states require employees to receive their final wages within 24 hours (unless they consent otherwise,) in which case running a one-off payroll may be the only option. - - scope: `employments:write` - tags: - - Employee Employments - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '201': - description: Created - content: - application/json: - schema: - "$ref": "#/components/schemas/Termination" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - properties: - effective_date: - type: string - description: The employee's last day of work. - example: '2020-06-30' - run_termination_payroll: - type: boolean - description: 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. - default: false - example: true - required: - - effective_date - example: - effective_date: '2020-06-30' - run_termination_payroll: false - required: true - x-speakeasy-name-override: createTermination - x-speakeasy-group: employeeEmployments - delete: - summary: Delete an employee termination - operationId: delete-v1-employees-employee_id-terminations - security: - - CompanyAccessAuth: [] - description: |- - Delete an employee termination. - - scope: `employments:write` - tags: - - Employee Employments - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '204': - description: No Content - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - x-speakeasy-group: employeeEmployments - x-speakeasy-name-override: deleteTermination - "/v1/terminations/{employee_id}": - get: - summary: Get an employee termination - operationId: get-v1-terminations-employee_id - security: - - CompanyAccessAuth: [] - description: |- - Terminations are created whenever an employee is scheduled to leave the company. The only things required are an effective date (their last day of work) and whether they should receive their wages in a one-off termination payroll or with the rest of the company. - - Note that some states require employees to receive their final wages within 24 hours (unless they consent otherwise,) in which case running a one-off payroll may be the only option. - - scope: `employments:read` - tags: - - Employee Employments - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Termination" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - put: - summary: Update an employee termination - operationId: put-v1-terminations-employee_id - security: - - CompanyAccessAuth: [] - description: |- - Terminations are created whenever an employee is scheduled to leave the company. The only things required are an effective date (their last day of work) and whether they should receive their wages in a one-off termination payroll or with the rest of the company. - - Note that some states require employees to receive their final wages within 24 hours (unless they consent otherwise,) in which case running a one-off payroll may be the only option. - - scope: `employments:write` - tags: - - Employee Employments - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Termination" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - allOf: - - "$ref": "#/components/schemas/Versionable-Required" - - type: object - properties: - effective_date: - type: string - description: The employee's last day of work. - example: '2020-06-30' - run_termination_payroll: - type: boolean - description: 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. - default: false - example: true - required: - - effective_date - example: - version: d487dd0b55dfcacdd920ccbdaeafa351 - effective_date: '2020-06-30' - run_termination_payroll: false - required: true - x-speakeasy-group: employeeEmployments - x-speakeasy-name-override: updateTermination - "/v1/employees/{employee_id}/rehire": - get: - summary: Get an employee rehire - operationId: get-v1-employees-employee_id-rehire - security: - - CompanyAccessAuth: [] - description: |- - Retrieve an employee's rehire, which contains information on when the employee returns to work. - - scope: `employments:read` - tags: - - Employee Employments - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Rehire" - '204': - description: No Content - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: employeeEmployments - x-speakeasy-name-override: getRehire - post: - summary: Create an employee rehire - operationId: post-v1-employees-employee_id-rehire - security: - - CompanyAccessAuth: [] - description: |- - Rehire is created whenever an employee is scheduled to return to the company. - - scope: `employments:write` - tags: - - Employee Employments - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '201': - description: Created - content: - application/json: - schema: - "$ref": "#/components/schemas/Rehire" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Rehire-Body" - required: true - x-speakeasy-group: employeeEmployments - x-speakeasy-name-override: createRehire - put: - summary: Update an employee rehire - operationId: put-v1-employees-employee_id-rehire - security: - - CompanyAccessAuth: [] - description: |- - Update an employee's rehire. - - scope: `employments:write` - tags: - - Employee Employments - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Rehire" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Rehire-Update-Request-Body" - required: true - x-speakeasy-group: employeeEmployments - x-speakeasy-name-override: rehire - delete: - summary: Delete an employee rehire - operationId: delete-v1-employees-employee_id-rehire - security: - - CompanyAccessAuth: [] - description: |- - Delete an employee rehire. An employee rehire cannot be deleted if it's active (past effective date). - - scope: `employments:write` - tags: - - Employee Employments - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '204': - description: No Content - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - x-speakeasy-group: employeeEmployments - x-speakeasy-name-override: deleteRehire - "/v1/employees/{employee_id}/employment_history": - get: - summary: Get employment history for an employee - operationId: get-v1-employees-employee_id-employment_history - security: - - CompanyAccessAuth: [] - description: |- - Retrieve the employment history for a given employee, which includes termination and rehire. - - scope: `employments:read` - tags: - - Employee Employments - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Employment-History-List" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: employeeEmployments - x-speakeasy-name-override: getHistory - "/v1/employees/{employee_id}/home_addresses": - get: - summary: Get an employee's home addresses - operationId: get-v1-employees-employee_id-home_addresses - security: - - CompanyAccessAuth: [] - description: |- - The home address of an employee is used to determine certain tax information about them. Addresses are geocoded on create and update to ensure validity. - - Supports home address effective dating and courtesy withholding. - - scope: `employees:read` - tags: - - Employee Addresses - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Address-List" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: employeeAddresses - x-speakeasy-name-override: get - post: - summary: Create an employee's home address - operationId: post-v1-employees-employee_id-home_addresses - security: - - CompanyAccessAuth: [] - description: |- - The home address of an employee is used to determine certain tax information about them. Addresses are geocoded on create and update to ensure validity. - - Supports home address effective dating and courtesy withholding. - - scope: `employees:write` - tags: - - Employee Addresses - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '201': - description: created - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Address" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - properties: - street_1: - type: string - example: 300 3rd Street - street_2: - type: - - string - - 'null' - city: - type: string - example: San Francisco - state: - type: string - example: CA - zip: - type: string - example: '94107' - effective_date: - type: - - string - - 'null' - format: date - example: '2022-01-31' - courtesy_withholding: - type: boolean - required: true - x-speakeasy-group: employeeAddresses - x-speakeasy-name-override: create - "/v1/home_addresses/{home_address_uuid}": - get: - summary: Get an employee's home address - operationId: get-v1-home_addresses-home_address_uuid - security: - - CompanyAccessAuth: [] - description: |- - The home address of an employee is used to determine certain tax information about them. Addresses are geocoded on create and update to ensure validity. - - Supports home address effective dating and courtesy withholding. - - scope: `employees:read` - tags: - - Employee Addresses - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: home_address_uuid - in: path - description: The UUID of the home address - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Address" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: employeeAddresses - x-speakeasy-name-override: retrieveHomeAddress - put: - summary: Update an employee's home address - operationId: put-v1-home_addresses-home_address_uuid - security: - - CompanyAccessAuth: [] - description: |- - The home address of an employee is used to determine certain tax information about them. Addresses are geocoded on create and update to ensure validity. - - Supports home address effective dating and courtesy withholding. - - scope: `employees:write` - tags: - - Employee Addresses - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: home_address_uuid - in: path - description: The UUID of the home address - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Address" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - allOf: - - "$ref": "#/components/schemas/Versionable-Required" - - type: object - properties: - street_1: - type: string - street_2: - type: - - string - - 'null' - city: - type: string - state: - type: string - zip: - type: string - effective_date: - type: - - string - - 'null' - format: date - courtesy_withholding: - type: boolean - required: true - x-speakeasy-group: employeeAddresses - x-speakeasy-name-override: update - delete: - summary: Delete an employee's home address - operationId: delete-v1-home_addresses-home_address_uuid - security: - - CompanyAccessAuth: [] - description: |- - Used for deleting an employee's home address. Cannot delete the employee's active home address. - - scope: `employees:write` - tags: - - Employee Addresses - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: home_address_uuid - in: path - description: The UUID of the home address - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '204': - description: successful - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - x-speakeasy-group: employeeAddresses - x-speakeasy-name-override: delete - "/v1/employees/{employee_id}/work_addresses": - get: - summary: Get an employee's work addresses - operationId: get-v1-employees-employee_id-work_addresses - security: - - CompanyAccessAuth: [] - description: |- - Returns a list of an employee's work addresses. Each address includes its effective - date and a boolean signifying if it is the currently active work address. - - scope: `employees:read` - tags: - - Employee Addresses - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: List of employee work addresses - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Work-Addresses-List" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: employeeAddresses - x-speakeasy-name-override: getWorkAddresses - post: - summary: Create an employee work address - operationId: post-v1-employees-employee_id-work_addresses - security: - - CompanyAccessAuth: [] - description: |- - The work address of an employee describes when an employee began working at an associated company location. - - scope: `employees:manage` - tags: - - Employee Addresses - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '201': - description: created - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Work-Address" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: unprocessable entity - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - properties: - location_uuid: - type: string - description: Reference to a company location - example: 6a119be7-b4b0-4e27-aaa0-89d5f2524635 - effective_date: - type: string - format: date - description: Date the employee began working at the company location - example: '2023-05-15' - required: true - x-speakeasy-group: employeeAddresses - x-speakeasy-name-override: createWorkAddress - "/v1/work_addresses/{work_address_uuid}": - get: - summary: Get an employee work address - operationId: get-v1-work_addresses-work_address_uuid - security: - - CompanyAccessAuth: [] - description: |- - The work address of an employee is used for payroll tax purposes. - - scope: `employees:read` - tags: - - Employee Addresses - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: work_address_uuid - in: path - description: The UUID of the work address - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Work-Address" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: employeeAddresses - x-speakeasy-name-override: retrieveWorkAddress - put: - summary: Update an employee work address - operationId: put-v1-work_addresses-work_address_uuid - security: - - CompanyAccessAuth: [] - description: |- - The work address of an employee is used for payroll tax purposes. - - scope: `employees:manage` - tags: - - Employee Addresses - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: work_address_uuid - in: path - description: The UUID of the work address - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Work-Address" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: unprocessable entity - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - allOf: - - "$ref": "#/components/schemas/Versionable-Required" - - type: object - properties: - location_uuid: - type: string - description: Reference to a company location - example: 6a119be7-b4b0-4e27-aaa0-89d5f2524635 - effective_date: - type: string - format: date - example: '2023-05-15' - required: true - x-speakeasy-group: employeeAddresses - x-speakeasy-name-override: updateWorkAddress - delete: - summary: Delete an employee's work address - operationId: delete-v1-work_addresses-work_address_uuid - security: - - CompanyAccessAuth: [] - description: |- - Used for deleting an employee's work address. Cannot delete the employee's active work address. - - scope: `employees:manage` - tags: - - Employee Addresses - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: work_address_uuid - in: path - description: The UUID of the work address - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '204': - description: no content - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: unprocessable entity - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - x-speakeasy-group: employeeAddresses - x-speakeasy-name-override: deleteWorkAddress - "/v1/employees/{employee_id}/custom_fields": - get: - summary: Get an employee's custom fields - operationId: get-v1-employees-employee_id-custom_fields - security: - - CompanyAccessAuth: [] - description: |- - Returns a list of the employee's custom fields. - - scope: `employees:read` - tags: - - Employees - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - - name: page - in: query - required: false - description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - schema: - type: integer - - name: per - in: query - required: false - description: Number of objects per page. For majority of endpoints will default to 25 - schema: - type: integer - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Custom-Field-List" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: getCustomFields - "/v1/employees/{employee_id}/onboarding_documents_config": - put: - summary: Update employee onboarding documents config - operationId: put-v1-employees-employee_id-onboarding_documents_config - security: - - CompanyAccessAuth: [] - description: |- - Indicate whether to include the Form I-9 for an employee during the onboarding process. - If included, the employee will be prompted to complete Form I-9 as part of their onboarding. - - ## Related guides - - [Employee onboarding](doc:employee-onboarding) - - scope: `employees:manage` - tags: - - Employees - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - required: true - description: The UUID of the employee - example: 7b1d0df1-6403-4a06-8768-c1dd7d24d27a - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Onboarding-Document" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Onboarding-Documents-Config-Request" - x-speakeasy-name-override: updateOnboardingDocumentsConfig - "/v1/employees/{employee_id}/onboarding_status": - get: - summary: Get the employee's onboarding status - operationId: get-v1-employees-employee_id-onboarding_status - security: - - CompanyAccessAuth: [] - description: |- - # Description - Retrieves an employee's onboarding status. The data returned helps inform the required onboarding steps and respective completion status. - - - ## onboarding_status - - ### Admin-facilitated onboarding - | onboarding_status | Description | - |:------------------|------------:| - | `admin_onboarding_incomplete` | Admin needs to complete the full employee-onboarding. | - | `onboarding_completed` | Employee has been fully onboarded and verified. | - - ### Employee self-onboarding - | onboarding_status | Description | - |:------------------|------------:| - | `admin_onboarding_incomplete` | Admin needs to enter basic information about the employee. | - | `self_onboarding_pending_invite` | Admin has the intention to invite the employee to self-onboard (e.g., marking a checkbox), but the system has not yet sent the invitation. | - | `self_onboarding_invited` | Employee has been sent an invitation to self-onboard. | - | `self_onboarding_invited_started` | Employee has started the self-onboarding process. | - | `self_onboarding_invited_overdue` | Employee's start date has passed, and employee has still not completed self-onboarding. | - | `self_onboarding_completed_by_employee` | Employee has completed entering in their information. The status should be updated via API to "self_onboarding_awaiting_admin_review" from here, once the Admin has started reviewing. | - | `self_onboarding_awaiting_admin_review` | Admin has started to verify the employee's information. | - | `onboarding_completed` | Employee has been fully onboarded and verified. | - - ## onboarding_steps - - | onboarding_steps | Requirement(s) to be completed | - |:-----------------|-------------------------------:| - | `personal_details` | Add employee's first name, last name, email, date of birth, social security number | - | `compensation_details` | Associate employee to a job & compensation. | - | `add_work_address` | Add employee work address. | - | `add_home_address` | Add employee home address. | - | `federal_tax_setup` | Set up federal tax withholdings. | - | `state_tax_setup` | Set up state tax withholdings. | - | `direct_deposit_setup` | (optional) Set up employee's direct deposit. | - | `employee_form_signing` | Employee forms (e.g., W4, direct deposit authorization) are generated & signed. | - | `file_new_hire_report` | File a new hire report for this employee. | - | `admin_review` | Admin reviews & confirms employee details (only required for Employee self-onboarding) | - - scope: `employees:read` - tags: - - Employees - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Onboarding-Status" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: getOnboardingStatus - put: - summary: Update the employee's onboarding status - operationId: put-v1-employees-employee_id-onboarding_status - security: - - CompanyAccessAuth: [] - description: |- - Updates an employee's onboarding status. - Below is a list of valid onboarding status changes depending on the intended action to be performed on behalf of the employee. - - | Action | current onboarding_status | new onboarding_status | - |:------------------|:------------:|----------:| - | Mark an employee as self-onboarding | `admin_onboarding_incomplete` | `self_onboarding_pending_invite` | - | Invite an employee to self-onboard | `admin_onboarding_incomplete` or `self_onboarding_pending_invite` | `self_onboarding_invited` | - | Cancel an employee's self-onboarding | `self_onboarding_invited` or `self_onboarding_pending_invite` | `admin_onboarding_incomplete` | - | Review an employee's self-onboarded info | `self_onboarding_completed_by_employee` | `self_onboarding_awaiting_admin_review` | - | Finish an employee's onboarding | `admin_onboarding_incomplete` or `self_onboarding_awaiting_admin_review` | `onboarding_completed` | - - scope: `employees:manage` - tags: - - Employees - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Onboarding-Status" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: invalid status transition - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - required: - - onboarding_status - properties: - onboarding_status: - type: string - description: Onboarding status value - enum: - - 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 - required: true - x-speakeasy-name-override: updateOnboardingStatus - "/v1/employees/{employee_uuid}/federal_taxes": - get: - summary: Get federal taxes for an employee - operationId: get-v1-employees-employee_id-federal_taxes - security: - - CompanyAccessAuth: [] - description: |- - Returns federal tax information for an employee. The response structure varies based on the w4_data_type (pre_2020_w4 or rev_2020_w4). - - scope: `employee_federal_taxes:read` - tags: - - Employee Tax Setup - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_uuid - in: path - description: The UUID of the employee - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Federal-Tax" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: employeeTaxSetup - x-speakeasy-name-override: getFederalTaxes - put: - summary: Update federal taxes for an employee - operationId: put-v1-employees-employee_id-federal_taxes - security: - - CompanyAccessAuth: [] - description: |- - Updates federal tax (W4) information for an employee. Only rev_2020_w4 format is accepted for updates. - - scope: `employee_federal_taxes:write` - tags: - - Employee Tax Setup - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_uuid - in: path - description: The UUID of the employee - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Federal-Tax" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - '409': - description: Conflict - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - required: - - version - - w4_data_type - - filing_status - properties: - version: - type: string - description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/versioning#object-layer) for information on how to use this field. - example: 56a489ce86ed6c1b0f0cecc4050a0b01 - w4_data_type: - type: string - enum: - - rev_2020_w4 - description: The version of the W4 form. Only rev_2020_w4 is accepted for updates. - filing_status: - type: string - enum: - - Single - - Married - - Head of Household - - Exempt from withholding - description: 'Determines which tax return form an individual will use. One of: Single, Married, Head of Household, Exempt from withholding.' - example: Single - two_jobs: - type: boolean - description: If there are only two jobs (e.g., you and your spouse each have a job), set to true. - dependents_amount: - type: number - description: Amount for dependents; a dependent entitles the taxpayer to claim a dependency exemption. - other_income: - type: number - description: Other income amount. - deductions: - type: number - description: Deductions other than the standard deduction to reduce withholding. - extra_withholding: - type: number - description: Additional amount to be withheld from each paycheck. - federal_withholding_allowance: - type: integer - description: Only applicable when w4_data_type is 'pre_2020_w4' (pre-2020 W4 forms are deprecated for updates). - additional_withholding: - type: number - description: Only applicable when w4_data_type is 'pre_2020_w4' (pre-2020 W4 forms are deprecated for updates). - required: true - x-speakeasy-group: employeeTaxSetup - x-speakeasy-name-override: updateFederalTaxes - "/v1/employees/{employee_uuid}/state_taxes": - get: - summary: Get an employee's state taxes - operationId: get-v1-employees-employee_id-state_taxes - security: - - CompanyAccessAuth: [] - description: |- - Get attributes relevant for an employee's state taxes. - - The data required to correctly calculate an employee's state taxes varies by both home and work location. This API returns information about each question that must be answered grouped by state. Mostly commonly, an employee lives and works in the same state and will only have questions for a single state. The response contains metadata about each question, the type of answer expected, and the current answer stored in Gusto for that question. - - Answers are represented by an array. Today, this array can only be empty or contain exactly one element, but is designed to allow for forward compatibility with effective-dated fields. The `valid_from` and `valid_up_to` fields are optional and currently ignored. - - ## About filing new hire reports - Payroll Admins are responsible for filing a new hire report for each Employee. The `file_new_hire_report` question will only be listed if: - - the `employee.onboarding_status` is one of the following: - - `admin_onboarding_incomplete` - - `self_onboarding_awaiting_admin_review` - - that employee's work state requires filing a new hire report - - scope: `employee_state_taxes:read` - tags: - - Employee Tax Setup - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_uuid - in: path - description: The UUID of the employee - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-State-Taxes-List" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: employeeTaxSetup - x-speakeasy-name-override: getStateTaxes - put: - summary: Update an employee's state taxes - operationId: put-v1-employees-employee_id-state_taxes - security: - - CompanyAccessAuth: [] - description: |- - Update attributes relevant for an employee's state taxes. - - As described for the GET endpoint, the answers must be supplied in the effective-dated format, but currently only a single answer will be accepted. The `valid_from` and `valid_up_to` fields are optional and currently ignored. - - scope: `employee_state_taxes:write` - tags: - - Employee Tax Setup - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_uuid - in: path - description: The UUID of the employee - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-State-Taxes-List" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-State-Taxes-Request" - required: true - x-speakeasy-group: employeeTaxSetup - x-speakeasy-name-override: updateStateTaxes - "/v1/employees/{employee_id}/bank_accounts": - get: - summary: List employee bank accounts - operationId: get-v1-employees-employee_id-bank_accounts - security: - - CompanyAccessAuth: [] - description: |- - Returns all employee bank accounts. - - scope: `employee_payment_methods:read` - tags: - - Employee Payment Method - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - - name: page - in: query - required: false - description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - schema: - type: integer - - name: per - in: query - required: false - description: Number of objects per page. For majority of endpoints will default to 25 - schema: - type: integer - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Employee-Bank-Account" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: employeePaymentMethods - x-speakeasy-name-override: getBankAccounts - post: - summary: Create an employee bank account - operationId: post-v1-employees-employee_id-bank_accounts - security: - - CompanyAccessAuth: [] - description: |- - Creates an employee bank account. An employee can have multiple bank accounts. Note that creating an employee bank account will also update the employee's payment method. - - scope: `employee_payment_methods:write` - tags: - - Employee Payment Method - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '201': - description: Created - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Bank-Account" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Bank-Account-Request" - required: true - x-speakeasy-group: employeePaymentMethod - x-speakeasy-name-override: create - "/v1/employees/{employee_id}/bank_accounts/{bank_account_uuid}": - put: - summary: Update an employee bank account - operationId: put-v1-employees-employee_id-bank_accounts - security: - - CompanyAccessAuth: [] - description: |- - Updates an employee bank account. - - scope: `employee_payment_methods:write` - tags: - - Employee Payment Method - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - - name: bank_account_uuid - in: path - description: The UUID of the bank account - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Bank-Account" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Bank-Account-Request" - required: true - x-speakeasy-group: employeePaymentMethod - x-speakeasy-name-override: updateBankAccount - delete: - summary: Delete an employee bank account - operationId: delete-v1-employees-employee_id-bank_accounts-bank_account_id - security: - - CompanyAccessAuth: [] - description: |- - Deletes an employee bank account. To update an employee's bank account details, delete the bank account first and create a new one. - - scope: `employee_payment_methods:write` - tags: - - Employee Payment Method - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - - name: bank_account_uuid - in: path - description: The UUID of the bank account - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '204': - description: No Content - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: {} - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: {} - x-speakeasy-group: employeePaymentMethod - x-speakeasy-name-override: deleteBankAccount - "/v1/employees/{employee_id}/payment_method": - get: - summary: Get payment method for an employee - operationId: get-v1-employees-employee_id-payment_method - security: - - CompanyAccessAuth: [] - description: |- - Returns the payment method for an employee (e.g. Check or Direct Deposit with split configuration). - - scope: `employee_payment_methods:read` - tags: - - Employee Payment Method - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Payment-Method" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: employeePaymentMethod - x-speakeasy-name-override: get - put: - summary: Update payment method for an employee - operationId: put-v1-employees-employee_id-payment_method - security: - - CompanyAccessAuth: [] - description: |- - Updates the payment method for an employee. Can set to Check or Direct Deposit with split configuration. - - scope: `employee_payment_methods:write` - tags: - - Employee Payment Method - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Payment-Method" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '409': - description: Conflict - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - required: - - version - - type - properties: - version: - type: string - description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/versioning#object-layer) for information on how to use this field. - example: 63859768485e218ccf8a449bb60f14ed - type: - type: string - enum: - - Check - - Direct Deposit - description: The payment method type. If type is Check, split_by and splits do not need to be populated. If type is Direct Deposit, split_by and splits are required. - split_by: - type: - - string - - 'null' - enum: - - Percentage - - Amount - - - description: How the payment will be split. If Percentage, split amounts must add up to exactly 100. If Amount, values are in cents and the last split amount must be null to capture the remainder. - splits: - type: - - array - - 'null' - description: Array of payment splits. Required when type is Direct Deposit. - items: - type: object - properties: - uuid: - type: string - description: The bank account UUID. - name: - type: string - description: The bank account name. - priority: - type: integer - description: Order of priority for each payment split; priority 1 is the first account paid. Must be unique and sequential. - split_amount: - type: - - number - - 'null' - description: If split_by is Amount, value is in cents (e.g., 500 for $5.00) and exactly one account must have null to capture the remainder. If split_by is Percentage, value is the percentage (e.g., 60 for 60%). - required: true - x-speakeasy-group: employeePaymentMethod - x-speakeasy-name-override: update - "/v1/employees/{employee_id}/jobs": - get: - summary: Get jobs for an employee - operationId: get-v1-employees-employee_id-jobs - security: - - CompanyAccessAuth: [] - description: |- - Get all of the jobs that an employee holds. - Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope is included. This allows you to access employee and job metadata without exposing pay rates. - - Compensation data in the response requires the `compensations:read` scope. - - scope: `jobs:read` - tags: - - Jobs and Compensations - x-gusto-integration-type: - - embedded - parameters: - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - - name: page - in: query - required: false - description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - schema: - type: integer - - name: per - in: query - required: false - description: Number of objects per page. For majority of endpoints will default to 25 - schema: - type: integer - - name: include - in: query - required: false - schema: - type: string - enum: - - all_compensations - description: | - Available options: - - all_compensations: Include all effective dated compensations for each job instead of only the current compensation - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Job" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: getJobs - x-speakeasy-group: jobsAndCompensations - post: - summary: Create a job - operationId: post-v1-employees-employee_id-jobs - security: - - CompanyAccessAuth: [] - description: |- - Create a job. - - scope: `jobs:write` - tags: - - Jobs and Compensations - x-gusto-integration-type: - - embedded - parameters: - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '201': - description: created - content: - application/json: - schema: - "$ref": "#/components/schemas/Job" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Jobs-Create-Request-Body" - required: true - x-speakeasy-group: jobsAndCompensations - x-speakeasy-name-override: createJob - "/v1/employees/{employee_uuid}/time_off_activities": - get: - summary: Get employee time off activities - operationId: get-version-employees-time_off_activities - security: - - CompanyAccessAuth: [] - description: |- - Get employee time off activities. - - scope: `employee_time_off_activities:read` - tags: - - Employees - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_uuid - in: path - description: The UUID of the employee - required: true - schema: - type: string - - name: time_off_type - in: query - required: true - description: 'The time off type name you want to query data for. ex: ''sick'' or ''vacation''' - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Time-Off-Activity-List" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - x-speakeasy-name-override: getTimeOffActivities - "/v1/jobs/{job_id}": - get: - summary: Get a job - operationId: get-v1-jobs-job_id - security: - - CompanyAccessAuth: [] - description: |- - Get a job. - - Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope is included. This allows you to access employee and job metadata without exposing pay rates. - - Compensation data in the response requires the `compensations:read` scope. - - scope: `jobs:read` - tags: - - Jobs and Compensations - x-gusto-integration-type: - - embedded - parameters: - - name: job_id - in: path - description: The UUID of the job - required: true - schema: - type: string - - name: include - in: query - required: false - schema: - type: string - enum: - - all_compensations - description: | - Available options: - - all_compensations: Include all effective dated compensations for each job instead of only the current compensation - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Job" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: jobsAndCompensations - x-speakeasy-name-override: getJob - put: - summary: Update a job - operationId: put-v1-jobs-job_id - security: - - CompanyAccessAuth: [] - description: |- - Update a job. - - scope: `jobs:write` - tags: - - Jobs and Compensations - x-gusto-integration-type: - - embedded - parameters: - - name: job_id - in: path - description: The UUID of the job - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Job" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Jobs-Update-Request-Body" - required: true - x-speakeasy-name-override: update - x-speakeasy-group: jobsAndCompensations - delete: - summary: Delete an individual job - operationId: delete-v1-jobs-job_id - security: - - CompanyAccessAuth: [] - description: |- - Deletes a specific job that an employee holds. - - scope: `jobs:write` - tags: - - Jobs and Compensations - x-gusto-integration-type: - - embedded - parameters: - - name: job_id - in: path - description: The UUID of the job - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '204': - description: successful - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - x-speakeasy-group: jobsAndCompensations - x-speakeasy-name-override: delete - "/v1/jobs/{job_id}/compensations": - get: - summary: Get compensations for a job - operationId: get-v1-jobs-job_id-compensations - security: - - CompanyAccessAuth: [] - description: |- - Compensations contain information on how much is paid out for a job. Jobs may have many compensations, but only one that is active. The current compensation is the one with the most recent `effective_date`. - - *Note: Currently the API does not support creating multiple compensations per job - creating a compensation with the same job_uuid as another will fail with a relevant error.* - - Use `flsa_status` to determine if an employee is eligible for overtime - By default the API returns only the current compensation - use the `include` parameter to return all compensations. - - scope: `compensations:read` - tags: - - Jobs and Compensations - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: job_id - in: path - description: The UUID of the job - required: true - schema: - type: string - - name: page - in: query - required: false - description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - schema: - type: integer - - name: per - in: query - required: false - description: Number of objects per page. For majority of endpoints will default to 25 - schema: - type: integer - - name: include - in: query - required: false - schema: - type: string - enum: - - all_compensations - description: | - Available options: - - all_compensations: Include all effective dated compensations for each job instead of only the current compensation - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Compensation" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: getCompensations - x-speakeasy-group: jobsAndCompensations - post: - summary: Create a compensation - operationId: post-v1-compensations-compensation_id - security: - - CompanyAccessAuth: [] - description: |- - Compensations contain information on how much is paid out for a job. Jobs may have many compensations, but only one that is active. The current compensation is the one with the most recent `effective_date`. - - ### Prerequisites - Before calling this endpoint: - 1. A [job](ref:post-v1-jobs-job_id) must exist for the employee - - ### Webhooks - - `employee_job_compensation.created`: Fires when a compensation is successfully created - - scope: `compensations:write` - tags: - - Jobs and Compensations - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: job_id - in: path - description: The UUID of the job - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '201': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Compensation" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Compensations-Request-Body" - required: true - x-speakeasy-group: jobsAndCompensations - x-speakeasy-name-override: createCompensation - "/v1/compensations/{compensation_id}": - get: - summary: Get a compensation - operationId: get-v1-compensations-compensation_id - security: - - CompanyAccessAuth: [] - description: |- - Compensations contain information on how much is paid out for a job. Jobs may have many compensations, but only one that is active. The current compensation is the one with the most recent `effective_date`. - - scope: `compensations:read` - tags: - - Jobs and Compensations - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: compensation_id - in: path - description: The UUID of the compensation - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Compensation" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: jobsAndCompensations - x-speakeasy-name-override: getCompensation - put: - summary: Update a compensation - operationId: put-v1-compensations-compensation_id - security: - - CompanyAccessAuth: [] - description: |- - Compensations contain information on how much is paid out for a job. Jobs may have many compensations, but only one that is active. The current compensation is the one with the most recent `effective_date`. - - ### Webhooks - - `employee_job_compensation.updated`: Fires when a compensation is successfully updated - - scope: `compensations:write` - tags: - - Jobs and Compensations - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: compensation_id - in: path - description: The UUID of the compensation - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Compensation" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Compensations-Update-Request-Body" - required: true - x-speakeasy-group: jobsAndCompensations - x-speakeasy-name-override: updateCompensation - delete: - summary: Delete a compensation - operationId: delete-v1-compensations-compensation_id - security: - - CompanyAccessAuth: [] - description: |- - Compensations contain information on how much is paid out for a job. Jobs may have many compensations, but only one that is active. The current compensation is the one with the most recent `effective_date`. This endpoint deletes a compensation for a job that hasn't been processed on payroll. - - ### Webhooks - - `employee_job_compensation.destroyed`: Fires when a compensation is successfully deleted - - scope: `compensations:write` - tags: - - Jobs and Compensations - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: compensation_id - in: path - description: The UUID of the compensation - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '204': - description: No Content - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - x-speakeasy-group: jobsAndCompensations - x-speakeasy-name-override: deleteCompensation - "/v1/companies/{company_id}/earning_types": - get: - summary: Get all earning types for a company - operationId: get-v1-companies-company_id-earning_types - security: - - CompanyAccessAuth: [] - description: |- - A payroll item in Gusto is associated to an earning type to name the type of earning described by the payroll item. - - #### Default Earning Type - Certain earning types are special because they have tax considerations. Those earning types are mostly the same for every company depending on its legal structure (LLC, Corporation, etc.) - - #### Custom Earning Type - Custom earning types are all the other earning types added specifically for a company. - - scope: `payrolls:read` - tags: - - Earning Types - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Earning-Type-List" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: earningTypes - x-speakeasy-name-override: list - post: - summary: Create a custom earning type - operationId: post-v1-companies-company_id-earning_types - security: - - CompanyAccessAuth: [] - description: |- - Create a custom earning type. - - If an inactive earning type exists with the same name, this will reactivate it instead of creating a new one. - - scope: `payrolls:write` - tags: - - Earning Types - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '201': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Earning-Type" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - required: - - name - properties: - name: - type: string - default: Gym Membership - description: The name of the custom earning type. - required: true - x-speakeasy-group: earningTypes - x-speakeasy-name-override: create - "/v1/companies/{company_id}/earning_types/{earning_type_uuid}": - put: - summary: Update an earning type - operationId: put-v1-companies-company_id-earning_types-earning_type_uuid - security: - - CompanyAccessAuth: [] - description: |- - Update an earning type. - - scope: `payrolls:write` - tags: - - Earning Types - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: earning_type_uuid - in: path - description: The UUID of the earning type - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Earning-Type" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - properties: - name: - type: string - description: The name of the custom earning type. - required: true - x-speakeasy-group: earningTypes - x-speakeasy-name-override: update - delete: - summary: Deactivate an earning type - operationId: delete-v1-companies-company_id-earning_types-earning_type_uuid - security: - - CompanyAccessAuth: [] - description: |- - Deactivate an earning type. - - scope: `payrolls:write` - tags: - - Earning Types - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: earning_type_uuid - in: path - description: The UUID of the earning type - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '204': - description: No Content - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: {} - x-speakeasy-group: earningTypes - x-speakeasy-name-override: delete - "/v1/companies/{company_uuid}/contractors": - get: - summary: Get contractors of a company - operationId: get-v1-companies-company_uuid-contractors - security: - - CompanyAccessAuth: [] - description: |- - Get all contractors, active and inactive, individual and business, for a company. - - scope: `contractors:read` - tags: - - Contractors - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - required: true - description: The UUID of the company - schema: - type: string - - name: search_term - in: query - required: false - description: A string to search for in the object's names - schema: - type: string - - name: sort_by - in: query - required: false - schema: - type: string - pattern: "^(type|onboarding_status|name|created_at)(:(asc|desc))?$" - description: 'Sort contractors. Options: type, onboarding_status, name, created_at' - - name: onboarded - in: query - required: false - description: Filters contractors by those who have completed onboarding - schema: - type: boolean - - name: onboarded_active - in: query - required: false - description: Filters contractors who are ready to work (onboarded AND active today) - schema: - type: boolean - - name: terminated - in: query - required: false - description: Filters contractors by those who have been or are scheduled to be dismissed - schema: - type: boolean - - name: terminated_today - in: query - required: false - description: Filters contractors by those who have been dismissed and whose dismissal is in effect today (excludes active and scheduled to be dismissed) - schema: - type: boolean - - name: include - in: query - explode: false - required: false - schema: - type: array - items: - type: string - enum: - - company_name - - portal_invitations - x-enumDescriptions: - company_name: Include the name of the company that the contractor is associated with - portal_invitations: Include portal invitation status information, including member portal invitation details and partner portal invitation status - description: Include the requested attribute(s) in each contractor response. Multiple options are comma separated. - - name: page - in: query - required: false - description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - schema: - type: integer - - name: per - in: query - required: false - description: Number of objects per page. For majority of endpoints will default to 25 - schema: - type: integer - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Contractor" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: list - post: - summary: Create a contractor - operationId: post-v1-companies-company_uuid-contractors - security: - - CompanyAccessAuth: [] - description: |- - Create an individual or business contractor. - - scope: `contractors:manage` - tags: - - Contractors - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - required: true - description: The UUID of the company - schema: - type: string - x-gusto-rswag: true - responses: - '201': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor-Create-Request-Body" - required: true - x-speakeasy-name-override: create - "/v1/contractors/{contractor_uuid}": - get: - summary: Get a contractor - operationId: get-v1-contractors-contractor_uuid - security: - - CompanyAccessAuth: [] - description: |- - Get a contractor. - - scope: `contractors:read` - tags: - - Contractors - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: contractor_uuid - in: path - description: The UUID of the contractor - required: true - schema: - type: string - - name: include - in: query - explode: false - required: false - schema: - type: array - items: - type: string - enum: - - company_name - - portal_invitations - x-enumDescriptions: - company_name: Include the name of the company that the contractor is associated with - portal_invitations: Include portal invitation status information, including member portal invitation details and partner portal invitation status - description: Include the requested attribute(s) in each contractor response. Multiple options are comma separated. - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: get - put: - summary: Update a contractor - operationId: put-v1-contractors-contractor_uuid - security: - - CompanyAccessAuth: [] - description: "Update a contractor.\n\n> \U0001F6A7 Warning\n>\n> Watch out when changing a contractor's type (when the contractor is finished onboarding). Specifically, changing contractor type can be dangerous since Gusto won't recognize and file two separate 1099s if they simply change from business to individual\n\nscope: `contractors:write`" - tags: - - Contractors - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: contractor_uuid - in: path - description: The UUID of the contractor - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '409': - description: Conflict - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor-Update-Request-Body" - required: true - x-speakeasy-name-override: update - delete: - summary: Delete a contractor - operationId: delete-v1-contractors-contractor_uuid - security: - - CompanyAccessAuth: [] - description: |- - A contractor can only be deleted when there are no contractor payments. - - scope: `contractors:manage` - tags: - - Contractors - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: contractor_uuid - in: path - description: The UUID of the contractor - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '204': - description: No Content - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - x-speakeasy-name-override: delete - "/v1/contractors/{contractor_uuid}/bank_accounts": - get: - summary: Get all contractor bank accounts - operationId: get-v1-contractors-contractor_uuid-bank_accounts - security: - - CompanyAccessAuth: [] - description: |- - Returns all contractor bank accounts. - - scope: `contractor_payment_methods:read` - tags: - - Contractor Payment Method - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: contractor_uuid - in: path - description: The UUID of the contractor - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor-Bank-Account-List" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: getBankAccounts - x-speakeasy-group: contractorPaymentMethod - post: - summary: Create a contractor bank account - operationId: post-v1-contractors-contractor_uuid-bank_accounts - security: - - CompanyAccessAuth: [] - description: |- - Creates a contractor bank account. - - Note: We currently only support one bank account per contractor. Using this endpoint on a contractor who already has a bank account will just replace it. - - scope: `contractor_payment_methods:write` - tags: - - Contractor Payment Method - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: contractor_uuid - in: path - description: The UUID of the contractor - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '201': - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor-Bank-Account" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor-Bank-Account-Create-Request-Body" - required: true - x-speakeasy-group: contractorPaymentMethods - x-speakeasy-name-override: createBankAccount - "/v1/webhook_subscriptions": - get: - summary: List webhook subscriptions - operationId: get-v1-webhook-subscriptions - security: - - SystemAccessAuth: [] - description: "Returns all webhook subscriptions associated with the provided Partner API token.\n\n\U0001F4D8 System Access Authentication\n\nThis endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access)\n\nscope: `webhook_subscriptions:read`" - tags: - - Webhooks - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Webhook-Subscription" - x-speakeasy-name-override: listSubscriptions - post: - summary: Create a webhook subscription - operationId: post-v1-webhook-subscription - security: - - SystemAccessAuth: [] - description: "Create a webhook subscription to receive events of the specified subscription_types whenever there is a state change.\n\n\U0001F4D8 System Access Authentication\n\nThis endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access)\n\nscope: `webhook_subscriptions:write`" - tags: - - Webhooks - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '201': - description: created - content: - application/json: - schema: - "$ref": "#/components/schemas/Webhook-Subscription" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - required: - - url - - subscription_types - properties: - url: - type: string - description: The URL where webhook events will be POSTed. - subscription_types: - type: array - description: The types of events to subscribe to. - items: - type: string - enum: - - BankAccount - - Company - - CompanyBenefit - - Contractor - - ContractorPayment - - Employee - - EmployeeBenefit - - EmployeeJobCompensation - - ExternalPayroll - - Form - - Location - - Notification - - Payroll - - PayrollSync - - PaySchedule - - PeopleBatch - - Signatory - required: true - x-speakeasy-name-override: createSubscription - "/v1/webhook_subscriptions/{webhook_subscription_uuid}": - get: - summary: Get a webhook subscription - operationId: get-v1-webhook-subscription-uuid - security: - - SystemAccessAuth: [] - description: "Returns the Webhook Subscription associated with the provided UUID.\n\n\U0001F4D8 System Access Authentication\n\nThis endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access)\n\nscope: `webhook_subscriptions:read`" - tags: - - Webhooks - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: webhook_subscription_uuid - in: path - description: The webhook subscription UUID. - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Webhook-Subscription" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: getSubscription - put: - summary: Update a webhook subscription - operationId: put-v1-webhook-subscription-uuid - security: - - SystemAccessAuth: [] - description: "Updates the Webhook Subscription associated with the provided UUID.\n\n\U0001F4D8 System Access Authentication\n\nThis endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access)\n\nscope: `webhook_subscriptions:write`" - tags: - - Webhooks - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: webhook_subscription_uuid - in: path - description: The webhook subscription UUID. - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Webhook-Subscription" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - required: - - subscription_types - properties: - subscription_types: - type: array - description: The types of events to subscribe to. - items: - type: string - enum: - - BankAccount - - Company - - CompanyBenefit - - Contractor - - ContractorPayment - - Employee - - EmployeeBenefit - - EmployeeJobCompensation - - ExternalPayroll - - Form - - Location - - Notification - - Payroll - - PayrollSync - - PaySchedule - - PeopleBatch - - Signatory - required: true - x-speakeasy-name-override: updateSubscription - delete: - summary: Delete a webhook subscription - operationId: delete-v1-webhook-subscription-uuid - security: - - SystemAccessAuth: [] - description: "Deletes the Webhook Subscription associated with the provided UUID.\n\n\U0001F4D8 System Access Authentication\n\nThis endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access)\n\nscope: `webhook_subscriptions:write`" - tags: - - Webhooks - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: webhook_subscription_uuid - in: path - description: The webhook subscription UUID. - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '204': - description: No Content - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: deleteSubscription - "/v1/webhook_subscriptions/{webhook_subscription_uuid}/verify": - put: - summary: Verify a webhook subscription - operationId: put-v1-verify-webhook-subscription-uuid - security: - - SystemAccessAuth: [] - description: "When a webhook subscription is created, a `verification_token` is POSTed to the registered webhook subscription URL. This `verify` endpoint needs to be called with `verification_token` before webhook events can be sent to the registered webhook URL.\n\nUse the /v1/webhook_subscriptions/{webhook_subscription_uuid}/request_verification_token API to resend the `verification_token` to the Subscriber.\n\n\U0001F4D8 System Access Authentication\n\nThis endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access)\n\nscope: `webhook_subscriptions:write`" - tags: - - Webhooks - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: webhook_subscription_uuid - in: path - description: The webhook subscription UUID. - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Webhook-Subscription" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - required: - - verification_token - properties: - verification_token: - type: string - description: The verification token received at the webhook subscription URL. - required: true - x-speakeasy-name-override: verify - "/v1/webhook_subscriptions/{webhook_subscription_uuid}/request_verification_token": - get: - summary: Request a verification token for a webhook subscription - operationId: get-v1-webhook-subscription-verification-token-uuid - security: - - SystemAccessAuth: [] - description: "Request that the webhook subscription `verification_token` be POSTed to the Subscription URL.\n\n\U0001F4D8 System Access Authentication\n\nThis endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access)\n\nscope: `webhook_subscriptions:read`" - tags: - - Webhooks - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: webhook_subscription_uuid - in: path - description: The webhook subscription UUID. - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: No Content. The `verification_token` is POSTed to the Subscription URL. - content: - application/json: - schema: - "$ref": "#/components/schemas/Webhook-Verification-Token-Response" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: requestVerificationToken - "/v1/contractors/{contractor_uuid}/forms": - get: - summary: Get all contractor forms - operationId: get-v1-contractor-forms - security: - - CompanyAccessAuth: [] - description: |- - Get a list of all contractor's forms - - scope: `contractor_forms:read` - tags: - - Contractor Forms - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: contractor_uuid - in: path - description: The UUID of the contractor - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Example response - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Form_1099" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: contractorForms - x-speakeasy-name-override: list - "/v1/contractors/{contractor_uuid}/forms/{form_id}": - get: - summary: Get a contractor form - operationId: get-v1-contractor-form - security: - - CompanyAccessAuth: [] - description: |- - Get a contractor form - - scope: `contractor_forms:read` - tags: - - Contractor Forms - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: contractor_uuid - in: path - description: The UUID of the contractor - required: true - schema: - type: string - - name: form_id - in: path - description: The UUID of the form - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Form_1099" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: contractorForms - x-speakeasy-name-override: get - "/v1/contractors/{contractor_uuid}/forms/{form_id}/pdf": - get: - summary: Get the contractor form pdf - operationId: get-v1-contractor-form-pdf - security: - - CompanyAccessAuth: [] - description: |- - Get the link to the form PDF - - scope: `contractor_forms:read` - tags: - - Contractor Forms - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: contractor_uuid - in: path - description: The UUID of the contractor - required: true - schema: - type: string - - name: form_id - in: path - description: The UUID of the form - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Form-Pdf" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: contractorForms - x-speakeasy-name-override: getPdf - "/v1/contractors/{contractor_uuid}/documents": - get: - summary: Get all contractor documents - operationId: get-v1-contractor-documents - security: - - CompanyAccessAuth: [] - description: |- - Get a list of all contractor's documents - - scope: `contractor_documents:read` - tags: - - Contractor Documents - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: contractor_uuid - in: path - description: The UUID of the contractor - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Example response - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Document" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: contractorDocuments - x-speakeasy-name-override: getAll - "/v1/documents/{document_uuid}": - get: - summary: Get a contractor document - operationId: get-v1-contractor-document - security: - - CompanyAccessAuth: [] - description: |- - Get a contractor document. - - scope: `contractor_documents:read` - tags: - - Contractor Documents - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: document_uuid - in: path - description: The UUID of the document - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Document" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: get - x-speakeasy-group: contractorDocuments - "/v1/documents/{document_uuid}/pdf": - get: - summary: Get the contractor document pdf - operationId: get-v1-contractor-document-pdf - security: - - CompanyAccessAuth: [] - description: |- - Get the contractor document pdf. - - scope: `contractor_documents:read` - tags: - - Contractor Documents - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: document_uuid - in: path - description: The UUID of the document - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Document-Pdf" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: contractorDocuments - x-speakeasy-name-override: getPdf - "/v1/documents/{document_uuid}/sign": - put: - summary: Sign a contractor document - operationId: put-v1-contractor-document-sign - security: - - CompanyAccessAuth: [] - description: |- - Sign a contractor document. - - scope: `contractor_documents:write` - tags: - - Contractor Documents - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: document_uuid - in: path - description: The UUID of the document - required: true - schema: - type: string - - name: x-gusto-client-ip - in: header - required: false - description: Optional header to supply the IP address. This can be used to supply the IP address for signature endpoints instead of the signed_by_ip_address parameter. - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Document-Signed" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - properties: - fields: - type: array - description: List of fields and the values they will be set to. - items: - type: object - properties: - key: - type: string - description: Unique identifier of the field - value: - type: string - description: Value for the field - agree: - type: boolean - description: Whether you agree to sign electronically - signed_by_ip_address: - type: string - description: The IP address of the signatory who signed the form. You must provide the IP address with either this parameter OR you can leave out this parameter and set the IP address in the request header using the `x-gusto-client-ip` header instead. - required: - - fields - - agree - required: true - x-speakeasy-group: contractorDocuments - x-speakeasy-name-override: sign - "/v1/sandbox/generate_1099": - post: - summary: Generate a 1099 form [DEMO] - operationId: post-v1-sandbox-generate_1099 - security: - - CompanyAccessAuth: [] - description: "> \U0001F6A7 Demo action\n>\n> This action is only available in the Demo environment\n\nGenerates a 1099 document for testing purposes.\n\nscope: `contractors:write`" - tags: - - Contractor Forms - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '201': - description: Created - content: - application/json: - schema: - "$ref": "#/components/schemas/Form_1099" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - properties: - contractor_id: - type: string - description: The contractor UUID. - year: - type: integer - description: 'Must be equal to or more recent than 2015. If not specified, defaults to the previous year. - -' - required: - - contractor_id - required: true - x-speakeasy-group: contractorForms - x-speakeasy-name-override: generate1099 - "/v1/sandbox/generate_w2": - post: - summary: Generate a W2 form [DEMO] - operationId: post-v1-sandbox-generate_w2 - security: - - CompanyAccessAuth: [] - description: "> \U0001F6A7 Demo action\n>\n> This action is only available in the Demo environment\n\nGenerates a W2 document for testing purposes.\n\nscope: `employees:write`" - tags: - - Employee Forms - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '201': - description: Created - content: - application/json: - schema: - "$ref": "#/components/schemas/Form" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - properties: - employee_id: - type: string - description: The employee UUID. - year: - type: integer - description: 'Must be equal to or more recent than 2015. If not specified, defaults to the previous year. - -' - required: - - employee_id - required: true - x-speakeasy-group: employeeForms - x-speakeasy-name-override: generateW2 - "/v1/contractors/{contractor_uuid}/payment_method": - get: - summary: Get a contractor's payment method - operationId: get-v1-contractors-contractor_uuid-payment_method - security: - - CompanyAccessAuth: [] - description: |- - Fetches a contractor's payment method. A contractor payment method - describes how the payment should be split across the contractor's associated - bank accounts. - - scope: `contractor_payment_methods:read` - tags: - - Contractor Payment Method - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: contractor_uuid - in: path - description: The UUID of the contractor - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor-Payment-Method" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: contractorPaymentMethod - x-speakeasy-name-override: get - put: - summary: Update a contractor's payment method - operationId: put-v1-contractors-contractor_id-payment_method - security: - - CompanyAccessAuth: [] - description: |- - Updates a contractor's payment method. Note that creating a contractor - bank account will also update the contractor's payment method. - - scope: `contractor_payment_methods:write` - tags: - - Contractor Payment Method - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: contractor_uuid - in: path - description: The UUID of the contractor - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor-Payment-Method" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '409': - description: Conflict - content: - application/json: - schema: - "$ref": "#/components/schemas/Conflict-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - required: - - version - - type - properties: - version: - type: string - description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. - example: 63859768485e218ccf8a449bb60f14ed - type: - type: string - enum: - - Direct Deposit - - Check - description: The payment method type. If type is Direct Deposit, the contractor is required to have a bank account. See [Bank account endpoint](./post-v1-contractors-contractor_uuid-bank_accounts). - required: true - x-speakeasy-group: contractorPaymentMethod - x-speakeasy-name-override: update - "/v1/contractors/{contractor_uuid}/onboarding_status": - get: - summary: Get the contractor's onboarding status - operationId: get-v1-contractors-contractor_uuid-onboarding_status - security: - - CompanyAccessAuth: [] - description: |- - Retrieves a contractor's onboarding status. The data returned helps inform the required onboarding steps and respective completion status. - - ## onboarding_status - - ### Admin-facilitated onboarding - | onboarding_status | Description | - |:------------------|------------:| - | `admin_onboarding_incomplete` | Admin needs to enter basic information about the contractor. | - | `admin_onboarding_review` | All information has been completed and admin needs to confirm onboarding. | - | `onboarding_completed` | Contractor has been fully onboarded and verified. | - - ### Contractor self-onboarding - - | onboarding_status | Description | - | --- | ----------- | - | `admin_onboarding_incomplete` | Admin needs to enter basic information about the contractor. | - | `self_onboarding_not_invited` | Admin has the intention to invite the contractor to self-onboard (e.g., marking a checkbox), but the system has not yet sent the invitation. | - | `self_onboarding_invited` | Contractor has been sent an invitation to self-onboard. | - | `self_onboarding_started` | Contractor has started the self-onboarding process. | - | `self_onboarding_review` | Admin needs to review contractors's entered information and confirm onboarding. | - | `onboarding_completed` | Contractor has been fully onboarded and verified. | - - ## onboarding_steps - - | onboarding_steps | Requirement(s) to be completed | - |:-----------------|-------------------------------:| - | `basic_details` | Add individual contractor's first name, last name, social security number or Business name and EIN depending on the contractor type | - | `add_address` | Add contractor address. | - | `compensation_details` | Add contractor compensation. | - | `payment_details` | (optional) Set up contractor's direct deposit or set to check. | - | `sign_documents` | Contractor forms (e.g., W9) are generated & signed. | - | `file_new_hire_report` | Contractor new hire report is generated. | - - scope: `contractors:read` - tags: - - Contractors - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: contractor_uuid - in: path - description: The UUID of the contractor - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor-Onboarding-Status" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: getOnboardingStatus - put: - summary: Change the contractor's onboarding status - operationId: put-v1-contractors-contractor_uuid-onboarding_status - security: - - CompanyAccessAuth: [] - description: |- - Updates a contractor's onboarding status. - - Below is a list of valid onboarding status changes depending on the intended action to be performed on behalf of the contractor. - - | Action | current onboarding_status | new onboarding_status | - |:------------------|:------------:|----------:| - | Mark a contractor as self-onboarding | `admin_onboarding_incomplete` | `self_onboarding_not_invited` | - | Invite a contractor to self-onboard | `admin_onboarding_incomplete` or `self_onboarding_not_invited` | `self_onboarding_invited` | - | Cancel a contractor's self-onboarding | `self_onboarding_invited` or `self_onboarding_not_invited` | `admin_onboarding_incomplete` | - | Review a contractor's self-onboarded info | `self_onboarding_started` | `self_onboarding_review` | - | Finish a contractor's onboarding | `admin_onboarding_review` or `self_onboarding_review` | `onboarding_completed` | - - scope: `contractors:write` - tags: - - Contractors - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: contractor_uuid - in: path - description: The UUID of the contractor - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor-Onboarding-Status" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor-Onboarding-Status-Update-Request-Body" - required: true - x-speakeasy-name-override: updateOnboardingStatus - "/v1/contractors/{contractor_uuid}/address": - get: - summary: Get a contractor address - operationId: get-v1-contractors-contractor_uuid-address - security: - - CompanyAccessAuth: [] - tags: - - Contractors - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: contractor_uuid - in: path - description: The UUID of the contractor - required: true - schema: - type: string - description: |- - The address of a contractor is used to determine certain tax information about them. Addresses are geocoded on create and update to ensure validity. - - scope: `contractors:read` - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor-Address" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: getAddress - put: - summary: Create or update a contractor's address - operationId: put-v1-contractors-contractor_uuid-address - security: - - CompanyAccessAuth: [] - tags: - - Contractors - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: contractor_uuid - in: path - description: The UUID of the contractor - required: true - schema: - type: string - description: "The address of a contractor is used to determine certain tax information about them. Addresses are geocoded on create and update to ensure validity.\n\n> \U0001F6A7 Contractors can only have one address.\n>\n> When a contractor is created, an address is created for them by default. Updating the address will replace the existing address.\n\nscope: `contractors:write`" - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor-Address" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor-Address-Update-Body" - required: true - x-speakeasy-name-override: updateAddress - "/v1/companies/{company_id}/payrolls": - get: - summary: Get all payrolls for a company - operationId: get-v1-companies-company_id-payrolls - security: - - CompanyAccessAuth: [] - description: |- - Returns a list of payrolls for a company. You can change the payrolls returned by updating the processing_status, payroll_types, start_date, & end_date params. - - By default, will return processed, regular payrolls for the past 6 months. - - Notes: - * Dollar amounts are returned as string representations of numeric decimals, are represented to the cent. - * end_date can be at most 3 months in the future and start_date and end_date can't be more than 1 year apart. - * Results are paginated. Maximum page size is 100 payrolls per request; the default page size is 25. - - scope: `payrolls:read` - tags: - - Payrolls - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: processing_statuses - in: query - required: false - explode: false - description: Whether to include processed and/or unprocessed payrolls in the response, defaults to processed, for multiple attributes comma separate the values, i.e. `?processing_statuses=processed,unprocessed` - schema: - type: array - items: - type: string - enum: - - processed - - unprocessed - - name: payroll_types - in: query - required: false - explode: false - description: Whether to include regular and/or off_cycle payrolls in the response, defaults to regular, for multiple attributes comma separate the values, i.e. `?payroll_types=regular,off_cycle` - schema: - type: array - items: - type: string - enum: - - regular - - off_cycle - - external - - name: processed - in: query - required: false - description: Whether to return processed or unprocessed payrolls - schema: - type: boolean - - name: include_off_cycle - in: query - required: false - description: Whether to include off cycle payrolls in the response - schema: - type: boolean - - name: include - in: query - explode: false - required: false - schema: - type: array - items: - type: string - enum: - - taxes - - payroll_status_meta - - totals - - risk_blockers - - reversals - description: Include the requested attribute in the response, for multiple attributes comma separate the values, i.e. `?include=benefits,deductions,taxes` - - name: start_date - in: query - required: false - example: '2020-01-31' - description: Return payrolls whose pay period is after the start date - schema: - type: string - - name: end_date - in: query - required: false - example: '2020-01-31' - description: Return payrolls whose pay period is before the end date. If left empty, defaults to today's date. - schema: - type: string - - name: date_filter_by - in: query - required: false - description: Specifies which date field to use when filtering payrolls with start_date and end_date. This field applies only to regular processed payrolls and defaults to pay period if not provided. - schema: - type: string - enum: - - check_date - example: check_date - - name: page - in: query - required: false - description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - schema: - type: integer - - name: per - in: query - required: false - description: Number of objects per page. For majority of endpoints will default to 25 - schema: - type: integer - - name: sort_order - in: query - required: false - description: A string indicating whether to sort resulting events in ascending (asc) or descending (desc) chronological order. Events are sorted by their `timestamp`. Defaults to asc if left empty. - schema: - type: string - enum: - - asc - - desc - example: asc - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Payroll-List" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: list - post: - summary: Create an off-cycle payroll - operationId: post-v1-companies-company_id-payrolls - security: - - CompanyAccessAuth: [] - description: |- - Creates a new, unprocessed, off-cycle payroll. - - ## `off_cycle_reason` - By default: - - External benefits and deductions will be included when the `off_cycle_reason` is set to `Correction`. - - All benefits and deductions are blocked when the `off_cycle_reason` is set to `Bonus`. - - These elections can be overridden with the `skip_regular_deductions` boolean. - - scope: `payrolls:run` - tags: - - Payrolls - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Payroll-Unprocessed" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - required: - - off_cycle - - off_cycle_reason - - start_date - - end_date - properties: - off_cycle: - type: boolean - description: Whether it is an off cycle payroll. - off_cycle_reason: - type: string - enum: - - Bonus - - Correction - - Adhoc - - Dismissed employee - - Transition from old pay schedule - description: An off cycle payroll reason. Select one from the following list. - start_date: - type: string - format: date - description: Pay period start date. - end_date: - type: string - format: date - description: Pay period end date. - pay_schedule_uuid: - description: A pay schedule is required for transition from old pay schedule payroll to identify the matching transition pay period. - type: string - employee_uuids: - description: A list of employee uuids to include on the payroll. - type: - - array - - 'null' - items: - type: string - check_date: - type: string - format: date - description: Payment date. - withholding_pay_period: - description: The payment schedule tax rate the payroll is based on. - type: string - enum: - - Every week - - Every other week - - Twice per month - - Monthly - - Quarterly - - Semiannually - - Annually - skip_regular_deductions: - description: Block regular deductions and contributions for this payroll. - type: boolean - fixed_withholding_rate: - description: Enable taxes to be withheld at the IRS's required rate of 22% for federal income taxes. State income taxes will be taxed at the state's supplemental tax rate. Otherwise, we'll sum the entirety of the employee's wages and withhold taxes on the entire amount at the rate for regular wages. - type: boolean - is_check_only_payroll: - description: When true, all employees in the payroll will be paid by check and the check date can be set to today or any future business day (rather than requiring ACH lead time). Payment methods cannot be changed on check-only payrolls. - type: boolean - x-speakeasy-name-override: createOffCycle - "/v1/companies/{company_id}/payroll_reversals": - get: - summary: Get approved payroll reversals - operationId: get-v1-companies-company_id-payroll_reversals - security: - - CompanyAccessAuth: [] - description: |- - Returns all approved Payroll Reversals for a Company. - - scope: `payrolls:read` - tags: - - Payrolls - x-gusto-integration-type: - - embedded - parameters: - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: page - in: query - required: false - description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - schema: - type: integer - - name: per - in: query - required: false - description: Number of objects per page. For majority of endpoints will default to 25 - schema: - type: integer - - "$ref": "#/components/parameters/VersionHeader" - x-gusto-rswag: true - responses: - '200': - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Payroll-Reversal-List" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: getApprovedReversals - "/v1/companies/{company_id}/payrolls/{payroll_id}": - get: - summary: Get a single payroll - operationId: get-v1-companies-company_id-payrolls-payroll_id - security: - - CompanyAccessAuth: [] - description: |- - Returns a payroll. If payroll is calculated or processed, will return employee_compensations and totals. - - Results are paginated, with a maximum page size of 100 employee_compensations. - - Notes: - * Hour and dollar amounts are returned as string representations of numeric decimals. - * Hours are represented to the thousands place; dollar amounts are represented to the cent. - * Every eligible compensation is returned for each employee. If no data has yet be inserted for a given field, it defaults to "0.00" (for fixed amounts) or "0.000" (for hours ). - * When include parameter with benefits value is passed, employee_benefits:read scope is required to return benefits - * Benefits containing PHI are only visible with the `employee_benefits:read:phi` scope - - scope: `payrolls:read` - tags: - - Payrolls - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: payroll_id - in: path - description: The UUID of the payroll - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: include - in: query - explode: false - required: false - schema: - type: array - items: - type: string - enum: - - benefits - - deductions - - taxes - - payroll_status_meta - - totals - - risk_blockers - - reversals - - payroll_taxes - description: Include the requested attribute in the response, for multiple attributes comma separate the values, i.e. `?include=benefits,deductions,taxes` - - name: page - in: query - required: false - description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - schema: - type: integer - - name: per - in: query - required: false - description: Number of objects per page. For majority of endpoints will default to 25 - schema: - type: integer - - name: sort_by - in: query - required: false - schema: - type: string - enum: - - first_name - - last_name - description: Field to sort employee compensations by - x-gusto-rswag: true - responses: - '200': - description: successful with wait_for_reverse_wire credit blocker - content: - application/json: - schema: - "$ref": "#/components/schemas/Payroll-Show" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: get - put: - summary: Update a payroll by ID - operationId: put-v1-companies-company_id-payrolls - security: - - CompanyAccessAuth: [] - description: |- - This endpoint allows you to update information for one or more employees for a specific **unprocessed** payroll. You can think of the **unprocessed** - payroll object as a template of fields that you can update. You cannot modify the structure of the payroll object through this endpoint, only values - of the fields included in the payroll. If you do not include specific employee compensations, fixed/hourly compensations, or deductions in your request body, they - will not be removed from the payroll. A maximum of 100 employee_compensations can be updated at a time. Only the employee compensation objects that were - inputted will be returned. - - scope: `payrolls:write` - tags: - - Payrolls - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: payroll_id - in: path - description: The UUID of the payroll - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Payroll-Prepared" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Payroll-Update" - required: true - x-speakeasy-name-override: update - delete: - summary: Delete a payroll - operationId: delete-v1-companies-company_id-payrolls - security: - - CompanyAccessAuth: [] - description: |- - This endpoint allows you to delete an **unprocessed** payroll. - - By default the payroll and associated data is deleted synchronously. To request an asynchronous delete, use the `async=true` query parameter. In both cases validation of ability to delete will be performed and an Unprocessable Entity error will be returned if the payroll is not able to be deleted. A successful synchronous delete will return `204/No Content`. When a payroll has been enqueued for asynchronous deletion, `202/Accepted` will be returned. - - scope: `payrolls:run` - tags: - - Payrolls - x-gusto-integration-type: - - embedded - parameters: - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: payroll_id - in: path - description: The UUID of the payroll - required: true - schema: - type: string - - name: async - in: query - description: When true, request an asynchronous delete of the payroll. - schema: - type: boolean - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '204': - description: no content - '202': - description: Accepted - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: delete - "/v1/companies/{company_id}/payrolls/{payroll_id}/prepare": - put: - summary: Prepare a payroll for update - operationId: put-v1-companies-company_id-payrolls-payroll_id-prepare - security: - - CompanyAccessAuth: [] - description: |- - Prepares an unprocessed payroll for update, including: adding or removing eligible employees from the payroll, - and updating `check_date`, `payroll_deadline`, and `payroll_status_meta` dates and times. - - Use this endpoint before calling [PUT /v1/companies/{company_id}/payrolls/{payroll_id}](ref:put-v1-companies-company_id-payrolls). - - ### Notes - - * Nullifies `calculated_at` and `totals` if the payroll was previously calculated - * Returns the `version` parameter required for [updating the payroll](ref:put-v1-companies-company_id-payrolls) - * `employees:read` scope is required to include employee compensations data in the response. - * Results are paginated, with a maximum page size of 100 employee compensations. - - scope: `payrolls:write employees:read` - tags: - - Payrolls - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: payroll_id - in: path - description: The UUID of the payroll - required: true - schema: - type: string - - name: page - in: query - required: false - description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - schema: - type: integer - - name: per - in: query - required: false - description: Number of objects per page. For majority of endpoints will default to 25 - schema: - type: integer - - name: sort_by - in: query - required: false - schema: - type: string - enum: - - first_name - - last_name - description: Sort employee compensations by name - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Payroll-Prepared" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - properties: - employee_uuids: - type: - - array - - 'null' - description: An array of employee UUIDs. If passed, only those employees payroll items will be prepared. - items: - type: string - x-speakeasy-name-override: prepare - "/v1/payrolls/{payroll_uuid}/receipt": - get: - summary: Get a single payroll receipt - operationId: get-v1-payment-receipts-payrolls-payroll_uuid - security: - - CompanyAccessAuth: [] - description: |- - Returns a payroll receipt. - - Notes: - * Hour and dollar amounts are returned as string representations of numeric decimals. - * Dollar amounts are represented to the cent. - * If no data has yet be inserted for a given field, it defaults to "0.00" (for fixed amounts). - - scope: `payrolls:read` - tags: - - Payrolls - x-gusto-integration-type: - - embedded - parameters: - - name: payroll_uuid - in: path - description: The UUID of the payroll - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Payroll-Receipt" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: getReceipt - "/v1/payrolls/{payroll_id}/employees/{employee_id}/calculate_accruing_time_off_hours": - post: - summary: Calculate accruing time off hours - operationId: post-v1-payrolls-payroll_id-calculate_accruing_time_off_hours - security: - - CompanyAccessAuth: [] - description: |- - 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. - - scope: `payrolls:read` - tags: - - Time Off Policies - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: payroll_id - in: path - description: The UUID of the payroll - required: true - schema: - type: string - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Payroll-Calculate-Accruing-Time-Off-Hours-Response" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Payroll-Calculate-Accruing-Time-Off-Hours-Request" - x-speakeasy-group: timeOffPolicies - x-speakeasy-name-override: calculateAccruingTimeOffHours - "/v1/companies/{company_uuid}/payrolls/blockers": - get: - summary: Get all payroll blockers for a company - operationId: get-v1-companies-payroll-blockers-company_uuid - security: - - CompanyAccessAuth: [] - description: |- - Returns a list of reasons that prevent the company from running payrolls. See the [Payroll Blockers guide](doc:payroll-blockers) for a complete list of reasons. The list is empty if there are no payroll blockers. - - scope: `payrolls:run` - tags: - - Payrolls - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Payroll-Blocker" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: getBlockers - "/v1/companies/{company_uuid}/payrolls/skip": - post: - summary: Skip a payroll - operationId: post-companies-payroll-skip-company_uuid - security: - - CompanyAccessAuth: [] - description: |- - Submits a $0 payroll for employees associated with the pay schedule to skip payroll. This submission is asynchronous and a successful request responds with a 202 HTTP status. Upon success, the payroll is transitioned to the `processed` state. - - If the company is blocked from running payroll due to issues like incomplete setup, missing information or other compliance issues, the response will be 422 Unprocessable Entity with a categorization of the blockers as described in the error responses. - - scope: `payrolls:run` - tags: - - Payrolls - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '202': - description: Accepted - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Payroll-Blockers-Error" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - properties: - payroll_type: - type: string - description: Payroll type - enum: - - Regular - - Hired employee - - Dismissed employee - - Transition from old pay schedule - start_date: - type: string - description: Pay period start date - end_date: - type: string - description: Pay period end date. If left empty, defaults to today's date. Required when skipping a termination payroll (`payroll_type` = `Dismissed employee`). - pay_schedule_uuid: - type: string - description: The UUID of the pay schedule. Required when skipping a termination payroll (`payroll_type` = `Dismissed employee`). - employee_uuids: - description: An array of employees. This field is only applicable to new hire payroll and termination payroll - type: - - array - - 'null' - items: - type: string - required: - - payroll_type - required: true - x-speakeasy-name-override: skip - "/v1/payrolls/{payroll_uuid}/gross_up": - post: - summary: Calculate gross up for a payroll - operationId: post-payrolls-gross-up-payroll_uuid - security: - - CompanyAccessAuth: [] - description: |- - Calculates gross up earnings for an employee's payroll, given net earnings. This endpoint is only applicable to off-cycle unprocessed payrolls. - - The gross up amount must then be mapped to the corresponding fixed compensation earning type to get the correct payroll amount. For example, for bonus off-cycles, the gross up amount should be set with the Bonus earning type in the payroll `fixed_compensations` field. - - scope: `payrolls:run` - tags: - - Payrolls - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: payroll_uuid - in: path - description: The UUID of the payroll - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Payroll-Gross-Up-Response" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Payroll-Gross-Up-Request" - required: true - x-speakeasy-name-override: calculateGrossUp - "/v1/contractor_payments/{contractor_payment_uuid}/receipt": - get: - summary: Get a single contractor payment receipt - operationId: get-v1-contractor_payments-contractor_payment_uuid-receipt - security: - - CompanyAccessAuth: [] - description: |- - Returns a contractor payment receipt. - - Notes: - * Receipts are only available for direct deposit payments and are only available once those payments have been funded. - * Payroll Receipt requests for payrolls which do not have receipts available (e.g. payment by check) will return a 404 status. - * Hour and dollar amounts are returned as string representations of numeric decimals. - * Dollar amounts are represented to the cent. - * If no data has yet be inserted for a given field, it defaults to “0.00” (for fixed amounts). - - scope: `payrolls:read` - tags: - - Contractor Payments - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: contractor_payment_uuid - in: path - required: true - description: The UUID of the contractor payment - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: OK - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor-Payment-Receipt" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: getReceipt - x-speakeasy-group: contractorPayments - "/v1/contractor_payments/{contractor_payment_uuid}/fund": - put: - summary: Fund a contractor payment [DEMO] - operationId: get-v1-contractor_payments-contractor_payment_uuid-fund - security: - - CompanyAccessAuth: [] - description: "> \U0001F6A7 Demo action\n>\n> This action is only available in the Demo environment\n\nSimulate funding a contractor payment. Funding only occurs automatically in the production environment when bank transactions are generated. Use this action in the demo environment to transition a contractor payment's `status` from `Unfunded` to `Funded`. A `Funded` status is required for generating a contractor payment receipt.\n\nscope: `payrolls:run`" - tags: - - Contractor Payments - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: contractor_payment_uuid - in: path - required: true - description: The UUID of the contractor payment - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: OK - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor-Payment" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - x-speakeasy-group: contractorPayments - x-speakeasy-name-override: fund - "/v1/companies/{company_id}/payrolls/{payroll_id}/calculate": - put: - summary: Calculate a payroll - operationId: put-v1-companies-company_id-payrolls-payroll_id-calculate - security: - - CompanyAccessAuth: [] - description: |- - Performs calculations for taxes, benefits, and deductions for an unprocessed payroll. The calculated payroll details provide a preview of the actual values that will be used when the payroll is run. - - This calculation is asynchronous and a successful request responds with a 202 HTTP status. To view the details of the calculated payroll, use the GET /v1/companies/{company_id}/payrolls/{payroll_id} endpoint with *include=taxes,benefits,deductions* params. - - If the company is blocked from running payroll due to issues like incomplete setup, missing information or other compliance issues, the response will be 422 Unprocessable Entity with a categorization of the blockers as described in the error responses. - - scope: `payrolls:run` - tags: - - Payrolls - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: payroll_id - in: path - description: The UUID of the payroll - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '202': - description: Accepted - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - x-speakeasy-name-override: calculate - "/v1/companies/{company_id}/payrolls/{payroll_id}/submit": - put: - summary: Submit payroll - operationId: put-v1-companies-company_id-payrolls-payroll_id-submit - security: - - CompanyAccessAuth: [] - description: |- - Submits an unprocessed payroll to be calculated and run. This submission is asynchronous and a successful request responds with a 202 HTTP status. Upon success, transitions the payroll to the `processed` state. - - You should poll to ensure that payroll is processed successfully, as async errors only occur after async processing is complete. - - If the company is blocked from running payroll due to issues like incomplete setup, missing information or other compliance issues, the response will be 422 Unprocessable Entity with a categorization of the blockers as described in the error responses. - - scope: `payrolls:run` - tags: - - Payrolls - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: payroll_id - in: path - description: The UUID of the payroll - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '202': - description: Accepted - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - properties: - submission_blockers: - type: array - description: An array of submission_blockers, each with a selected unblock option. - items: - "$ref": "#/components/schemas/Payroll-Submission-Blocker-Request-Type" - x-speakeasy-name-override: submit - "/v1/companies/{company_id}/payrolls/{payroll_id}/cancel": - put: - summary: Cancel a payroll - operationId: put-api-v1-companies-company_id-payrolls-payroll_id-cancel - security: - - CompanyAccessAuth: [] - description: |- - Transitions a `processed` payroll back to the `unprocessed` state. A payroll can be canceled if it meets both criteria: - - - `processed` is `true` - - Current time is earlier than 4pm PT on the `payroll_deadline` - - scope: `payrolls:run` - tags: - - Payrolls - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: payroll_id - in: path - description: The UUID of the payroll - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessed-Payroll" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - x-speakeasy-name-override: cancel - "/v1/companies/{company_id}/contractor_payments": - get: - summary: Get contractor payments for a company - operationId: get-v1-companies-company_id-contractor_payments - security: - - CompanyAccessAuth: [] - description: |- - Returns an object containing individual contractor payments, within a given time period, including totals. - - Results are returned in reverse chronological order (newest first). - - scope: `payrolls:read` - tags: - - Contractor Payments - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - required: true - description: The UUID of the company - schema: - type: string - - name: start_date - in: query - required: true - description: The time period for which to retrieve contractor payments - example: '2020-01-01' - schema: - type: string - - name: end_date - in: query - required: true - description: The time period for which to retrieve contractor payments. If left empty, defaults to today's date. - example: '2020-12-31' - schema: - type: string - - name: contractor_uuid - in: query - required: false - description: The UUID of the contractor. When specified, will load all payments for that contractor. - schema: - type: string - - name: group_by_date - in: query - required: false - description: Display contractor payments results group by check date if set to true. - schema: - type: boolean - - name: page - in: query - required: false - description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - schema: - type: integer - - name: per - in: query - required: false - description: Number of objects per page. For majority of endpoints will default to 25 - schema: - type: integer - x-gusto-rswag: true - responses: - '200': - description: A JSON object containing contractor payments information - content: - application/json: - schema: - anyOf: - - "$ref": "#/components/schemas/Contractor-Payment-Summary" - - "$ref": "#/components/schemas/Contractor-Payment-Summary-By-Dates" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided ID/UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: contractorPayments - x-speakeasy-name-override: list - post: - summary: Create a contractor payment - operationId: post-v1-companies-company_id-contractor_payments - security: - - CompanyAccessAuth: [] - description: |- - Pay a contractor. Information needed depends on the contractor's wage type (hourly vs fixed) - - scope: `payrolls:run` - tags: - - Contractor Payments - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - required: true - description: The UUID of the company - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor-Payment" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided ID/UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor-Payment-Body" - required: true - x-speakeasy-group: contractorPayments - x-speakeasy-name-override: create - "/v1/companies/{company_id}/contractor_payments/{contractor_payment_id}": - get: - summary: Get a single contractor payment - operationId: get-v1-companies-company_id-contractor_payment-contractor-payment - security: - - CompanyAccessAuth: [] - description: |- - Returns a single contractor payment. - - scope: `payrolls:read` - tags: - - Contractor Payments - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - required: true - description: The UUID of the company - schema: - type: string - - name: contractor_payment_id - in: path - required: true - description: The UUID of the contractor payment - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor-Payment" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided ID/UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: get - x-speakeasy-group: contractorPayments - delete: - summary: Cancel a contractor payment - operationId: delete-v1-companies-company_id-contractor_payment-contractor-payment - security: - - CompanyAccessAuth: [] - description: |- - Cancels and deletes a contractor payment. If the contractor payment has already started processing ("may_cancel": true), the payment cannot be cancelled. - - scope: `payrolls:run` - tags: - - Contractor Payments - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - required: true - description: The UUID of the company - schema: - type: string - - name: contractor_payment_id - in: path - required: true - description: The UUID of the contractor payment - schema: - type: string - x-gusto-rswag: true - responses: - '204': - description: No Content - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided ID/UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - x-speakeasy-group: contractorPayments - x-speakeasy-name-override: delete - "/v1/companies/{company_id}/contractor_payment_groups": - get: - summary: Get contractor payment groups for a company - operationId: get-v1-companies-company_id-contractor_payment_groups - security: - - CompanyAccessAuth: [] - description: |- - Returns a list of minimal contractor payment groups within a given time period, including totals but not associated contractor payments. - - scope: `payrolls:read` - tags: - - Contractor Payment Groups - x-gusto-integration-type: - - embedded - parameters: - - name: company_id - in: path - required: true - description: The UUID of the company - schema: - type: string - - name: start_date - in: query - required: false - description: The time period for which to retrieve contractor payment groups. Defaults to 6 months ago. - example: '2020-01-01' - schema: - type: string - - name: end_date - in: query - required: false - description: The time period for which to retrieve contractor payment groups. Defaults to today's date. - example: '2020-12-31' - schema: - type: string - - name: page - in: query - required: false - description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - schema: - type: integer - - name: per - in: query - required: false - description: Number of objects per page. For majority of endpoints will default to 25 - schema: - type: integer - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: List of Contractor Payment Groups - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Contractor-Payment-Group-With-Blockers" - '404': - description: | - Not Found - - The requested company does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: getList - x-speakeasy-group: contractorPaymentGroups - post: - summary: Create a contractor payment group - operationId: post-v1-companies-company_id-contractor_payment_groups - security: - - CompanyAccessAuth: [] - description: |- - Pay a group of contractors. Information needed depends on the contractor's wage type (hourly vs fixed) - - scope: `payrolls:run` - tags: - - Contractor Payment Groups - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - required: true - description: The UUID of the company - schema: - type: string - x-gusto-rswag: true - responses: - '201': - description: Full contractor payment group object - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor-Payment-Group" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - '404': - description: | - Not Found - - The requested company does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - required: - - check_date - - contractor_payments - - creation_token - properties: - check_date: - type: string - format: date - description: The payment check date - example: '2020-01-01' - creation_token: - type: string - description: A token used to make contractor payment group creation idempotent. The string must be unique for each group you intend to create. - example: 1d532d13-8f61-4a57-ad3c-b5fac1c6e05e - submission_blockers: - type: array - description: Optional array of submission blockers with selected unblock options. Returned from the preview endpoint and can be submitted with selected_option to resolve blockers. - items: - type: object - properties: - blocker_type: - type: string - description: The type of blocker that is blocking the payment submission - selected_option: - type: - - string - - 'null' - description: The unblock option selected to resolve the submission blocker - message: - type: string - description: Optional message related to the blocker - options: - type: array - description: Optional array of additional options for the blocker - items: - type: object - properties: - type: - type: string - description: The type of option - message: - type: string - description: Message for the option - contractor_payments: - type: array - items: - type: object - properties: - contractor_uuid: - type: string - description: The contractor receiving the payment - payment_method: - type: string - enum: - - Direct Deposit - - Check - - Historical Payment - default: Direct Deposit - wage: - type: string - format: float - description: If the contractor is on a fixed wage, this is the fixed wage payment for the contractor, regardless of hours worked - example: '5000.0' - hours: - type: string - format: float - example: '40.0' - description: If the contractor is on an hourly wage, this is the number of hours that the contractor worked for the payment - bonus: - type: string - format: float - example: '500.0' - description: If the contractor is on an hourly wage, this is the bonus the contractor earned - reimbursement: - type: string - format: float - example: '20.0' - description: Reimbursed wages for the contractor - required: true - x-speakeasy-group: contractorPaymentGroups - x-speakeasy-name-override: create - "/v1/companies/{company_id}/contractor_payment_groups/preview": - post: - summary: Preview a contractor payment group - operationId: post-v1-companies-company_id-contractor_payment_groups-preview - security: - - CompanyAccessAuth: [] - description: |- - Preview a group of contractor payments. Request will validate inputs and return preview of the contractor payment group including the expected `debit_date`. The `uuid` field will be null in the response. - - The returned `creation_token` is a required parameter in order to create the contractor payment group. - - scope: `payrolls:read` - tags: - - Contractor Payment Groups - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - required: true - description: The UUID of the company - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Full contractor payment group object with null uuid - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor-Payment-Group-Preview" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided ID/UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - required: - - contractor_payments - properties: - contractor_payments: - type: array - items: - type: object - properties: - contractor_uuid: - type: string - description: The contractor receiving the payment - payment_method: - type: string - enum: - - Direct Deposit - - Check - - Historical Payment - default: Direct Deposit - wage: - type: string - format: float - description: If the contractor is on a fixed wage, this is the fixed wage payment for the contractor, regardless of hours worked - example: '5000.0' - hours: - type: string - format: float - example: '40.0' - description: If the contractor is on an hourly wage, this is the number of hours that the contractor worked for the payment - bonus: - type: string - format: float - example: '500.0' - description: If the contractor is on an hourly wage, this is the bonus the contractor earned - reimbursement: - type: string - format: float - example: '20.0' - description: Reimbursed wages for the contractor - check_date: - type: string - format: date - description: Date when payments should be processed - required: true - x-speakeasy-group: contractorPaymentGroups - x-speakeasy-name-override: preview - "/v1/contractor_payment_groups/{contractor_payment_group_uuid}": - get: - summary: Get a contractor payment group - operationId: get-v1-contractor_payment_groups-contractor_payment_group_id - security: - - CompanyAccessAuth: [] - description: |- - Returns a contractor payment group with all associated contractor payments. - - scope: `payrolls:read` - tags: - - Contractor Payment Groups - x-gusto-integration-type: - - embedded - parameters: - - name: contractor_payment_group_uuid - in: path - required: true - description: The UUID of the contractor payment group - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Successful response - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor-Payment-Group" - '404': - description: | - Not Found - - The requested contractor payment group does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: contractorPaymentGroups - x-speakeasy-name-override: get - delete: - summary: Cancel a contractor payment group - operationId: delete-v1-contractor_payment_groups-contractor_payment_group_id - security: - - CompanyAccessAuth: [] - description: |- - Cancels a contractor payment group and all associated contractor payments. All contractor payments must be cancellable, unfunded. - - scope: `payrolls:run` - tags: - - Contractor Payment Groups - x-gusto-integration-type: - - embedded - parameters: - - name: contractor_payment_group_uuid - in: path - required: true - description: The UUID of the contractor payment group - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '204': - description: Successfully cancelled - '404': - description: | - Not Found - - The requested contractor payment group does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when trying to cancel a payment group that is not in a cancellable state, such as one that has already been funded or processed. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - x-speakeasy-name-override: delete - x-speakeasy-group: contractorPaymentGroups - "/v1/contractor_payment_groups/{contractor_payment_group_uuid}/fund": - put: - summary: Fund a contractor payment group [DEMO] - operationId: put-v1-contractor_payment_groups-contractor_payment_group_id-fund - security: - - CompanyAccessAuth: [] - description: "> \U0001F6A7 Demo action\n> This action is only available in the Demo environment\n\nSimulate funding a contractor payment group. Funding only occurs automatically in the production environment when bank transactions are generated. Use this action in the demo environment to transition a contractor payment group's `status` from `Unfunded` to `Funded`. A `Funded` status is required for generating a contractor payment receipt.\n\nscope: `payrolls:run`" - tags: - - Contractor Payment Groups - x-gusto-integration-type: - - embedded - parameters: - - name: contractor_payment_group_uuid - in: path - required: true - description: The UUID of the contractor payment group - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Full contractor payment group object - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor-Payment-Group" - '404': - description: | - Not Found - - The requested contractor payment group does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - x-speakeasy-name-override: fund - x-speakeasy-group: contractorPaymentGroups - "/v1/companies/{company_id}/forms": - get: - summary: Get all company forms - operationId: get-v1-company-forms - security: - - CompanyAccessAuth: [] - description: |- - Get a list of all company's forms - - ### Related guides - - [Company Forms](doc:company-form) - - scope: `company_forms:read` - tags: - - Company Forms - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: sort_by - in: query - required: false - description: Sort company forms by a given field. Append `:asc` or `:desc` to specify direction (e.g., `name:asc`). Defaults to ascending. - schema: - type: string - enum: - - name - - year - - quarter - - draft - - document_content_type - - created_at - - name: page - in: query - required: false - description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - schema: - type: integer - - name: per - in: query - required: false - description: Number of objects per page. For majority of endpoints will default to 25 - schema: - type: integer - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Form" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: getAll - x-speakeasy-group: companyForms - "/v1/forms/{form_id}": - get: - summary: Get a company form - operationId: get-v1-company-form - security: - - CompanyAccessAuth: [] - description: |- - Get a company form - - scope: `company_forms:read` - tags: - - Company Forms - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: form_id - in: path - description: The UUID of the form - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Form" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: companyForms - x-speakeasy-name-override: get - "/v1/forms/{form_id}/pdf": - get: - summary: Get a company form pdf - operationId: get-v1-company-form-pdf - security: - - CompanyAccessAuth: [] - description: |- - Get the link to the form PDF - - scope: `company_forms:read` - tags: - - Company Forms - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: form_id - in: path - description: The UUID of the form - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Form-Pdf" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: getPdf - x-speakeasy-group: companyForms - "/v1/forms/{form_id}/sign": - put: - summary: Sign a company form - operationId: put-v1-company-form-sign - security: - - CompanyAccessAuth: [] - description: |- - Sign a company form. Company forms must be signed by the company signatory. - - scope: `company_forms:sign` - tags: - - Company Forms - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: form_id - in: path - description: The UUID of the form - required: true - schema: - type: string - - name: x-gusto-client-ip - in: header - required: false - description: Optional header to supply the IP address. This can be used to supply the IP address for signature endpoints instead of the signed_by_ip_address parameter. - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Form" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - properties: - signature_text: - type: string - description: The signature - agree: - type: boolean - description: Whether you agree to sign electronically - signed_by_ip_address: - type: string - description: The IP address of the signatory who signed the form. Both IPv4 AND IPv6 are supported. You must provide the IP address with either this parameter OR you can leave out this parameter and set the IP address in the request header using the `x-gusto-client-ip` header instead. - required: - - signature_text - - agree - required: true - x-speakeasy-group: companyForms - x-speakeasy-name-override: sign - "/v1/employees/{employee_id}/forms": - get: - summary: Get all employee forms - operationId: get-v1-employee-forms - security: - - CompanyAccessAuth: [] - description: |- - Get a list of all employee's forms - - scope: `employee_forms:read` - tags: - - Employee Forms - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Form" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: list - x-speakeasy-group: employeeForms - "/v1/employees/{employee_id}/forms/{form_id}": - get: - summary: Get an employee form - operationId: get-v1-employee-form - security: - - CompanyAccessAuth: [] - description: |- - Get an employee form - - scope: `employee_forms:read` - tags: - - Employee Forms - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - - name: form_id - in: path - description: The UUID of the form - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Form" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: employeeForms - x-speakeasy-name-override: get - "/v1/employees/{employee_id}/forms/{form_id}/pdf": - get: - summary: Get the employee form pdf - operationId: get-v1-employee-form-pdf - security: - - CompanyAccessAuth: [] - description: |- - Get the link to the employee form PDF - - scope: `employee_forms:read` - tags: - - Employee Forms - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - - name: form_id - in: path - description: The UUID of the form - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Form-Pdf" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: employeeForms - x-speakeasy-name-override: getPdf - "/v1/employees/{employee_id}/forms/{form_id}/sign": - put: - summary: Sign an employee form - operationId: put-v1-employee-form-sign - security: - - CompanyAccessAuth: [] - description: |- - Sign an employee form. - - The optional preparer attributes are only valid for I-9 form. When a preparer is used, the - first name, last name, street address, city, state, and zip for that preparer are all required. - - scope: `employee_forms:sign` - tags: - - Employee Forms - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - - name: form_id - in: path - description: The UUID of the form - required: true - schema: - type: string - - name: x-gusto-client-ip - in: header - required: false - description: Optional header to supply the IP address. This can be used to supply the IP address for signature endpoints instead of the signed_by_ip_address parameter. - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Form" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - properties: - signature_text: - type: string - description: The signature - agree: - type: boolean - description: Whether you agree to sign electronically - signed_by_ip_address: - type: string - description: The IP address of the signatory who signed the form. Both IPv4 AND IPv6 are supported. You must provide the IP address with either this parameter OR you can leave out this parameter and set the IP address in the request header using the `x-gusto-client-ip` header instead. - preparer: - type: boolean - description: Whether there is a preparer - preparer_first_name: - type: string - preparer_last_name: - type: string - preparer_street_1: - type: string - preparer_street_2: - type: string - preparer_city: - type: string - preparer_state: - type: string - preparer_zip: - type: string - preparer_agree: - type: string - description: Whether preparer agrees to sign electronically - preparer2: - type: boolean - description: Whether there is a 2nd preparer - preparer2_first_name: - type: string - preparer2_last_name: - type: string - preparer2_street_1: - type: string - preparer2_street_2: - type: string - preparer2_city: - type: string - preparer2_state: - type: string - preparer2_zip: - type: string - preparer2_agree: - type: string - description: Whether 2nd preparer agrees to sign electronically - preparer3: - type: boolean - description: Whether there is a 3rd preparer - preparer3_first_name: - type: string - preparer3_last_name: - type: string - preparer3_street_1: - type: string - preparer3_street_2: - type: string - preparer3_city: - type: string - preparer3_state: - type: string - preparer3_zip: - type: string - preparer3_agree: - type: string - description: Whether 3rd preparer agrees to sign electronically - preparer4: - type: boolean - description: Whether there is a 4th preparer - preparer4_first_name: - type: string - preparer4_last_name: - type: string - preparer4_street_1: - type: string - preparer4_street_2: - type: string - preparer4_city: - type: string - preparer4_state: - type: string - preparer4_zip: - type: string - preparer4_agree: - type: string - description: Whether 4th preparer agrees to sign electronically - required: - - signature_text - - agree - required: true - x-speakeasy-group: employeeForms - x-speakeasy-name-override: sign - "/v1/payrolls/{payroll_id}/employees/{employee_id}/pay_stub": - get: - summary: Get an employee pay stub (pdf) - operationId: get-v1-payrolls-payroll_uuid-employees-employee_uuid-pay_stub - security: - - CompanyAccessAuth: [] - description: |- - Get an employee's pay stub for the specified payroll. By default, an application/pdf response will be returned. No other content types are currently supported, but may be supported in the future. - - scope: `pay_stubs:read` - tags: - - Payrolls - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: payroll_id - in: path - description: The UUID of the payroll - required: true - schema: - type: string - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/pdf: - schema: - type: string - format: binary - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: getPayStub - "/v1/employees/{employee_id}/pay_stubs": - get: - summary: Get an employee's pay stubs - operationId: get-v1-employees-employee_uuid-pay_stubs - security: - - CompanyAccessAuth: [] - description: |- - Get an employee's pay stubs. - - Results are returned in reverse chronological order (newest first). - - scope: `pay_stubs:read` - x-gusto-integration-type: - - embedded - tags: - - Payrolls - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - - name: page - in: query - required: false - description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - schema: - type: integer - - name: per - in: query - required: false - description: Number of objects per page. For majority of endpoints will default to 25 - schema: - type: integer - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Pay-Stubs-List" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: getPayStubs - "/v1/generated_documents/{document_type}/{request_uuid}": - get: - summary: Get a generated document - operationId: get-v1-generated_documents-document_type-request_uuid - security: - - CompanyAccessAuth: [] - description: |- - Get a document given the request_uuid. The response will include the generation request's status and urls to the document. A list of urls is returned as certain document types require several urls. - - scope: `generated_documents:read` - tags: - - Generated Documents - x-gusto-integration-type: - - embedded - parameters: - - name: document_type - in: path - required: true - schema: - type: string - enum: - - printable_payroll_checks - description: The type of document being generated - - name: request_uuid - in: path - required: true - description: The UUID of the request to generate a document. Generate document endpoints return request_uuids to be used with the GET generated document endpoint. - schema: - type: string - - "$ref": "#/components/parameters/VersionHeader" - x-gusto-rswag: true - responses: - '200': - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Generated-Document" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: generatedDocuments - x-speakeasy-name-override: get - "/v1/payrolls/{payroll_uuid}/generated_documents/printable_payroll_checks": - post: - summary: Generate printable payroll checks (pdf) - operationId: post-v1-payrolls-payroll_uuid-generated_documents-printable_payroll_checks - security: - - CompanyAccessAuth: [] - description: |- - This endpoint initiates the generation of employee checks for the payroll specified by payroll_uuid. A generation status and corresponding request_uuid will be returned. Use the generated document GET endpoint with document_type: `printable_payroll_checks` and request_uuid to poll the check generation process and retrieve the generated check URL upon completion. - - scope: `generated_documents:write` - tags: - - Payrolls - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: payroll_uuid - in: path - required: true - description: The UUID of the payroll - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Payroll-Check" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Printable-Payroll-Checks-Body" - required: true - x-speakeasy-name-override: generatePrintableChecks - "/v1/companies/{company_uuid}/reports": - post: - summary: Create a custom report - operationId: post-companies-company_uuid-reports - security: - - CompanyAccessAuth: [] - description: |- - Create a custom report for a company. This endpoint initiates creating a custom report with custom columns, groupings, and filters. The `request_uuid` in the response can then be used to poll for the status and report URL upon completion using the [report GET endpoint](https://docs.gusto.com/embedded-payroll/reference/get-reports-request_uuid). This URL is valid for 10 minutes. - - scope: `company_reports:write` - tags: - - Reports - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - required: true - description: The UUID of the company - schema: - type: string - x-gusto-rswag: true - responses: - '201': - description: Created - content: - application/json: - schema: - "$ref": "#/components/schemas/Create-Report" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Create-Report-Body" - required: true - x-speakeasy-name-override: createCustom - "/v1/payrolls/{payroll_uuid}/reports/general_ledger": - post: - summary: Create a general ledger report - operationId: post-payrolls-payroll_uuid-reports-general_ledger - security: - - CompanyAccessAuth: [] - description: |- - Create a general ledger report for a payroll. The report can be aggregated by different dimensions such as job or department. - - Use the `request_uuid` in the response with the [report GET endpoint](../reference/get-reports-request_uuid) to poll for the status and report URL upon completion. The retrieved report will be generated in a JSON format. - - scope: `company_reports:write` - tags: - - Reports - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: payroll_uuid - in: path - required: true - description: The UUID of the payroll - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: OK - content: - application/json: - schema: - "$ref": "#/components/schemas/General-Ledger-Report" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/General-Ledger-Report-Body" - required: true - "/v1/reports/{request_uuid}": - get: - summary: Get a report - operationId: get-reports-request_uuid - security: - - CompanyAccessAuth: [] - description: |- - Get a company's report given the `request_uuid`. The response will include the report request's status and, if complete, the report URL. - - Reports containing PHI are inaccessible with `company_reports:read:tier_2_only` data scope - - scope: `company_reports:read` - tags: - - Reports - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: request_uuid - in: path - required: true - description: The UUID of the request to generate a document. Generate document endpoints return request_uuids to be used with the GET generated document endpoint. - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: OK - content: - application/json: - schema: - "$ref": "#/components/schemas/Report" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - "/v1/companies/{company_uuid}/report_templates/{report_type}": - get: - summary: Get a report template - operationId: get-companies-company_uuid-report-templates-report_type - security: - - CompanyAccessAuth: [] - description: |- - Get a company's report template. The only supported report type is `payroll_journal`. The resulting columns and groupings from this endpoint can be used as a guidance to create the report using the POST create report endpoint. - - scope: `company_reports:write` - tags: - - Reports - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - required: true - description: The UUID of the company - schema: - type: string - - name: report_type - in: path - required: true - description: The report type - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: OK - content: - application/json: - schema: - "$ref": "#/components/schemas/Report-Template" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - x-speakeasy-name-override: getTemplate - "/v1/companies/{company_id}/company_benefits": - get: - summary: Get benefits for a company - operationId: get-v1-companies-company_id-company_benefits - security: - - CompanyAccessAuth: [] - description: |- - Company benefits represent the benefits that a company is offering to employees. This ties together a particular supported benefit with the company-specific information for the offering of that benefit. - - Note that company benefits can be deactivated only when no employees are enrolled. - - Benefits containing PHI are only visible to applications with the `company_benefits:read:phi` scope. - - scope: `company_benefits:read` - tags: - - Company Benefits - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: active - in: query - required: false - description: Whether the benefit is currently active - schema: - type: boolean - - name: enrollment_count - in: query - required: false - description: Whether to return employee enrollment count - schema: - type: boolean - - name: benefit_type - in: query - required: false - description: Filter by benefit type. Comma-separated list of benefit type IDs, i.e. `?benefit_type=5,105` - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Example response - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Company-Benefit" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: companyBenefits - x-speakeasy-name-override: list - post: - summary: Create a company benefit - operationId: post-v1-companies-company_id-company_benefits - security: - - CompanyAccessAuth: [] - description: |- - Company benefits represent the benefits that a company is offering to employees. This ties together a particular supported benefit with the company-specific information for the offering of that benefit. - - Note that company benefits can be deactivated only when no employees are enrolled. - - When the application has the `company_benefits:write:benefit_type_limited` data scope, the application can only create company benefits for benefit types that are permitted for the application. - - scope: `company_benefits:write` - tags: - - Company Benefits - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '201': - description: Created - content: - application/json: - schema: - "$ref": "#/components/schemas/Company-Benefit" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Company-Benefit-Create-Request" - required: true - x-speakeasy-group: companyBenefits - x-speakeasy-name-override: create - "/v1/company_benefits/{company_benefit_id}": - get: - summary: Get a company benefit - operationId: get-v1-company_benefits-company_benefit_id - security: - - CompanyAccessAuth: [] - description: |- - Company benefits represent the benefits that a company is offering to employees. This ties together a particular supported benefit with the company-specific information for the offering of that benefit. - - Note that company benefits can be deactivated only when no employees are enrolled. - - When with_employee_benefits parameter with true value is passed, employee_benefits:read scope is required to return employee_benefits. - - scope: `company_benefits:read` - tags: - - Company Benefits - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_benefit_id - in: path - description: The UUID of the company benefit - required: true - schema: - type: string - - name: with_employee_benefits - in: query - required: false - description: Whether to return employee benefits associated with the benefit - schema: - type: boolean - - name: include - in: query - required: false - schema: - type: string - enum: - - all_benefits - description: |- - Available options: - - all_benefits: If with_employee_benefits=true, include all effective dated benefits for each employee instead of only the current benefits. - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Company-Benefit-With-Employee-Benefits" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: companyBenefits - x-speakeasy-name-override: get - put: - summary: Update a company benefit - operationId: put-v1-company_benefits-company_benefit_id - security: - - CompanyAccessAuth: [] - description: |- - Company benefits represent the benefits that a company is offering to employees. This ties together a particular supported benefit with the company-specific information for the offering of that benefit. - - Note that company benefits can be deactivated only when no employees are enrolled. - - When the application has the `company_benefits:write:benefit_type_limited` data scope, the application can only update company benefits for benefit types that are permitted for the application. - - scope: `company_benefits:write` - tags: - - Company Benefits - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_benefit_id - in: path - description: The UUID of the company benefit - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Company-Benefit" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Company-Benefit-Update-Request" - required: true - x-speakeasy-group: companyBenefits - x-speakeasy-name-override: update - delete: - summary: Delete a company benefit - operationId: delete-v1-company_benefits-company_benefit_id - security: - - CompanyAccessAuth: [] - description: |- - 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 company benefit - - The benefit is not managed by a Partner or by Gusto (type must be 'External') - - When the application has the `company_benefits:write:benefit_type_limited` data scope, the application can only delete company benefits for benefit types that are permitted for the application. - - scope: `company_benefits:write` - tags: - - Company Benefits - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_benefit_id - in: path - description: The UUID of the company benefit - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '204': - description: No Content - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: {} - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: {} - x-speakeasy-name-override: delete - x-speakeasy-group: companyBenefits - "/v1/benefits": - get: - summary: Get all supported benefits - operationId: get-v1-benefits - security: - - CompanyAccessAuth: [] - description: |- - Returns all benefits supported by Gusto. The benefit object in Gusto contains high level information about a particular benefit type and its tax considerations. When companies choose to offer a benefit, they are creating a Company Benefit object associated with a particular benefit. - - scope: `benefits:read` - tags: - - Company Benefits - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Supported-Benefit" - x-speakeasy-group: companyBenefits - x-speakeasy-name-override: getAll - "/v1/benefits/{benefit_id}": - get: - summary: Get a supported benefit - operationId: get-v1-benefits-benefit_id - security: - - CompanyAccessAuth: [] - description: |- - Returns a benefit supported by Gusto. The benefit object in Gusto contains high level information about a particular benefit type and its tax considerations. When companies choose to offer a benefit, they are creating a Company Benefit object associated with a particular benefit. - - scope: `benefits:read` - tags: - - Company Benefits - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: benefit_id - in: path - description: The benefit type in Gusto. - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Supported-Benefit" - x-speakeasy-group: companyBenefits - x-speakeasy-name-override: getSupported - "/v1/company_benefits/{company_benefit_id}/summary": - get: - summary: Get company benefit summary by company benefit id. - operationId: get-v1-benefits-company_benefit_id-summary - security: - - CompanyAccessAuth: [] - description: |- - Returns summary benefit data for the requested company benefit id. - - Benefits containing PHI are only visible to applications with the `company_benefits:read:phi` scope. - - scope: `company_benefits:read` - tags: - - Company Benefits - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_benefit_id - in: path - description: The UUID of the company benefit - required: true - schema: - type: string - - name: start_date - in: query - required: false - description: The start date for which to retrieve company benefit summary - example: '2022-01-01' - schema: - type: string - - name: end_date - in: query - required: false - description: The end date for which to retrieve company benefit summary. If left empty, defaults to today's date. - example: '2022-12-31' - schema: - type: string - - name: detailed - in: query - required: false - description: Display employee payroll item summary - schema: - type: boolean - x-gusto-rswag: true - responses: - '200': - description: Benefit summary response - content: - application/json: - schema: - "$ref": "#/components/schemas/Benefit-Summary" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: companyBenefits - x-speakeasy-name-override: getSummary - "/v1/company_benefits/{company_benefit_id}/employee_benefits": - get: - summary: Get all employee benefits for a company benefit - operationId: get-v1-company_benefits-company_benefit_id-employee_benefits - security: - - CompanyAccessAuth: [] - description: |- - Employee benefits represent an employee enrolled in a particular company benefit. It includes information specific to that employee's enrollment. - - Returns an array of all employee benefits enrolled for this company benefit. - - Benefits containing PHI are only visible to applications with the `employee_benefits:read:phi` scope. - - scope: `employee_benefits:read` - tags: - - Company Benefits - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_benefit_id - in: path - description: The UUID of the company benefit - required: true - schema: - type: string - - name: page - in: query - required: false - description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - schema: - type: integer - - name: per - in: query - required: false - description: Number of objects per page. For majority of endpoints will default to 25 - schema: - type: integer - - name: include - in: query - required: false - schema: - type: string - enum: - - all_benefits - description: |- - Available options: - - all_benefits: Include all effective dated benefits for each employee instead of only the current benefits. - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Employee-Benefit" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: getEmployeeBenefits - x-speakeasy-group: companyBenefits - put: - summary: Bulk update employee benefits for a company benefit - operationId: put-v1-company_benefits-company_benefit_id-employee_benefits - security: - - CompanyAccessAuth: [] - description: |- - Employee benefits represent an employee enrolled in a particular company benefit. It includes information specific to that employee's enrollment. - - Create or update(if the employee is already enrolled in the company benefit previously) an employee benefit for the company benefit. - - Benefits containing PHI are only visible to applications with the `employee_benefits:read:phi` scope. - - When the application has the `employee_benefits:write:benefit_type_limited` data scope, the application can only create or update employee benefits for benefit types that are permitted for the application. - - scope: `employee_benefits:write` - tags: - - Company Benefits - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_benefit_id - in: path - description: The UUID of the company benefit - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Employee-Benefit" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Benefit-Bulk-Update-Request" - required: true - x-speakeasy-group: companyBenefits - x-speakeasy-name-override: updateEmployeeBenefits - "/v1/company_benefits/{company_benefit_id}/contribution_exclusions": - get: - summary: Get contribution exclusions for a company benefit - operationId: get-v1-company_benefits-company_benefit_id-contribution_exclusions - security: - - CompanyAccessAuth: [] - description: |- - Returns all contributions for a given company benefit and whether they are excluded or not. - - Currently this endpoint only works for 401-k and Roth 401-k benefit types. - - scope: `company_benefits:read` - tags: - - Company Benefits - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_benefit_id - in: path - description: The UUID of the company benefit - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Contribution-Exclusion" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - put: - summary: Update contribution exclusions for a company benefit - operationId: put-v1-company_benefits-company_benefit_id-contribution_exclusions - security: - - CompanyAccessAuth: [] - description: |- - Updates contribution exclusions for a given company benefit. - - Currently this endpoint only works for 401-k and Roth 401-k benefit types. - - scope: `company_benefits:write` - tags: - - Company Benefits - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_benefit_id - in: path - description: The UUID of the company benefit - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Example response - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Contribution-Exclusion" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Contribution-Exclusion-Update-Request" - required: true - "/v1/benefits/{benefit_id}/requirements": - get: - summary: Get benefit fields requirements by benefit type - operationId: get-v1-benefits-benefits_id-requirements - security: - - CompanyAccessAuth: [] - description: |- - Returns the field requirements for a given benefit type. - - scope: `benefits:read` - tags: - - Company Benefits - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: benefit_id - in: path - description: The benefit type in Gusto. - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Benefit-Type-Requirements" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: companyBenefits - x-speakeasy-name-override: getRequirements - "/v1/employees/{employee_id}/employee_benefits": - get: - summary: Get all benefits for an employee - operationId: get-v1-employees-employee_id-employee_benefits - security: - - CompanyAccessAuth: [] - description: |- - Employee benefits represent an employee enrolled in a particular company benefit. It includes information specific to that employee’s enrollment. - - Returns an array of all employee benefits for this employee - - Benefits containing PHI are only visible to applications with the `employee_benefits:read:phi` scope. - - scope: `employee_benefits:read` - tags: - - Employee Benefits - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - - name: page - in: query - required: false - description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - schema: - type: integer - - name: per - in: query - required: false - description: Number of objects per page. For majority of endpoints will default to 25 - schema: - type: integer - - name: include - in: query - required: false - schema: - type: string - enum: - - all_benefits - description: |- - Available options: - - all_benefits: Include all effective dated benefits for each employee instead of only the current benefits. - x-gusto-rswag: true - responses: - '200': - description: Example response - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Employee-Benefit" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: employeeBenefits - x-speakeasy-name-override: get - post: - summary: Create an employee benefit - operationId: post-v1-employees-employee_id-employee_benefits - security: - - CompanyAccessAuth: [] - description: |- - Employee benefits represent an employee enrolled in a particular company benefit. It includes information specific to that employee's enrollment. - - When the application has the `employee_benefits:write:benefit_type_limited` data scope, the application can only create employee benefits for benefit types that are permitted for the application. - - scope: `employee_benefits:write` - tags: - - Employee Benefits - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '201': - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Benefit" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Benefit-Create-Request" - required: true - x-speakeasy-name-override: create - x-speakeasy-group: employeeBenefits - "/v1/employee_benefits/{employee_benefit_id}": - get: - summary: Get an employee benefit - operationId: get-v1-employee_benefits-employee_benefit_id - security: - - CompanyAccessAuth: [] - description: |- - Employee benefits represent an employee enrolled in a particular company benefit. It includes information specific to that employee’s enrollment. - - Benefits containing PHI are only visible to applications with the `employee_benefits:read:phi` scope. - - scope: `employee_benefits:read` - tags: - - Employee Benefits - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_benefit_id - in: path - description: The UUID of the employee benefit. - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Benefit" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: retrieve - x-speakeasy-group: employeeBenefits - put: - summary: Update an employee benefit - operationId: put-v1-employee_benefits-employee_benefit_id - security: - - CompanyAccessAuth: [] - description: |- - Employee benefits represent an employee enrolled in a particular company benefit. It includes information specific to that employee's enrollment. - - When the application has the `employee_benefits:write:benefit_type_limited` data scope, the application can only update employee benefits for benefit types that are permitted for the application. - - scope: `employee_benefits:write` - tags: - - Employee Benefits - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_benefit_id - in: path - description: The UUID of the employee benefit. - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Benefit" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Benefit-Update-Request" - required: true - x-speakeasy-group: employeeBenefits - x-speakeasy-name-override: update - delete: - summary: Delete an employee benefit - operationId: delete-v1-employee_benefits-employee_benefit_id - security: - - CompanyAccessAuth: [] - description: |- - Employee benefits represent an employee enrolled in a particular company benefit. It includes information specific to that employee's enrollment. - - When the application has the `employee_benefits:write:benefit_type_limited` data scope, the application can only delete employee benefits for benefit types that are permitted for the application. - - scope: `employee_benefits:write` - tags: - - Employee Benefits - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_benefit_id - in: path - description: The UUID of the employee benefit. - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '204': - description: No Content - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: {} - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: {} - x-speakeasy-group: employeeBenefits - x-speakeasy-name-override: delete - "/v1/employees/{employee_id}/ytd_benefit_amounts_from_different_company": - get: - summary: Get year-to-date benefit amounts from a different company - operationId: get-employee-ytd-benefit-amounts-from-different-company - security: - - CompanyAccessAuth: [] - description: |- - Retrieves year-to-date benefit amounts that were contributed at a different company for the specified 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. - - scope: `employee_benefits:read` - tags: - - Employee Benefits - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - required: true - description: The UUID of the employee - schema: - type: string - - name: tax_year - in: query - required: false - schema: - type: integer - minimum: 2000 - maximum: 2999 - example: 2024 - description: The tax year for which to retrieve YTD benefit amounts. Defaults to current year if not specified. - x-gusto-rswag: true - responses: - '200': - description: OK - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Ytd-Benefit-Amounts-From-Different-Company" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: employeeBenefits - x-speakeasy-name-override: getYtdBenefitAmountsFromDifferentCompany - post: - summary: Create year-to-date benefit amounts from a different company - operationId: post-employee-ytd-benefit-amounts-from-different-company - security: - - CompanyAccessAuth: [] - description: |- - 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 were employed at a different company. - - This endpoint only supports passing outside contributions for 401(k) benefits. - - scope: `employee_benefits:write` - tags: - - Employee Benefits - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - required: true - description: The UUID of the employee - schema: - type: string - x-gusto-rswag: true - responses: - '204': - description: No Content - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Ytd-Benefit-Amounts-From-Different-Company-Body" - required: true - x-speakeasy-group: employeeBenefits - x-speakeasy-name-override: createYtdBenefitAmountsFromDifferentCompany - "/v1/employees/{employee_id}/garnishments": - get: - summary: Get garnishments for an employee - operationId: get-v1-employees-employee_id-garnishments - security: - - CompanyAccessAuth: [] - description: |- - Garnishments, or employee deductions, are fixed amounts or percentages deducted from an employee’s pay. They can be deducted a specific number of times or on a recurring basis. Garnishments can also have maximum deductions on a yearly or per-pay-period bases. Common uses for garnishments are court-ordered payments for child support or back taxes. Some companies provide loans to their employees that are repaid via garnishments. - - scope: `garnishments:read` - tags: - - Garnishments - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - - name: page - in: query - required: false - description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - schema: - type: integer - - name: per - in: query - required: false - description: Number of objects per page. For majority of endpoints will default to 25 - schema: - type: integer - x-gusto-rswag: true - responses: - '200': - description: Example response - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Garnishment" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: list - post: - summary: Create a garnishment - operationId: post-v1-employees-employee_id-garnishments - security: - - CompanyAccessAuth: [] - description: |- - Garnishments, or employee deductions, are fixed amounts or percentages deducted from an employee’s pay. They can be deducted a specific number of times or on a recurring basis. Garnishments can also have maximum deductions on a yearly or per-pay-period bases. Common uses for garnishments are court-ordered payments for child support or back taxes. Some companies provide loans to their employees that are repaid via garnishments. - - scope: `garnishments:write` - tags: - - Garnishments - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '201': - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Garnishment" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Garnishment-Request" - required: true - x-speakeasy-name-override: create - "/v1/garnishments/{garnishment_id}": - get: - summary: Get a garnishment - operationId: get-v1-garnishments-garnishment_id - security: - - CompanyAccessAuth: [] - description: |- - Garnishments, or employee deductions, are fixed amounts or percentages deducted from an employee’s pay. They can be deducted a specific number of times or on a recurring basis. Garnishments can also have maximum deductions on a yearly or per-pay-period bases. Common uses for garnishments are court-ordered payments for child support or back taxes. Some companies provide loans to their employees that are repaid via garnishments. - - scope: `garnishments:read` - tags: - - Garnishments - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: garnishment_id - in: path - description: The UUID of the garnishment - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Garnishment" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-name-override: get - put: - summary: Update a garnishment - operationId: put-v1-garnishments-garnishment_id - security: - - CompanyAccessAuth: [] - description: |- - Garnishments, or employee deductions, are fixed amounts or percentages deducted from an employee’s pay. They can be deducted a specific number of times or on a recurring basis. Garnishments can also have maximum deductions on a yearly or per-pay-period bases. Common uses for garnishments are court-ordered payments for child support or back taxes. Some companies provide loans to their employees that are repaid via garnishments. - - scope: `garnishments:write` - tags: - - Garnishments - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: garnishment_id - in: path - description: The UUID of the garnishment - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Garnishment" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Update-Garnishment-Request" - required: true - x-speakeasy-name-override: update - "/v1/garnishments/child_support": - get: - summary: Get child support garnishment data - operationId: get-v1-garnishments-child_support - security: - - CompanyAccessAuth: [] - description: |- - Agency data and requirements to be used for creating child support garnishments - - scope: `garnishments:read` - tags: - - Garnishments - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Child-Support-Data" - x-speakeasy-name-override: getChildSupportData - "/v1/employees/{employee_id}/i9_authorization": - get: - summary: Get an employee's I-9 authorization - operationId: get-v1-employees-employee_id-i9_authorization - security: - - CompanyAccessAuth: [] - description: |- - An employee's I-9 authorization stores information about an employee's authorization status and I-9 signatures, information required to fill out the Form I-9 for employment eligibility verification. - - **NOTE:** The `form_uuid` in responses from this endpoint can be used to retrieve the PDF version of the I-9. See the "get employee form PDF" request for more details. - - ### Related guides - - [I-9 employment verification](doc:i-9-employment-verification) - - scope: `i9_authorizations:read` - tags: - - I-9 Verification - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/I9-Authorization" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: i9Verification - x-speakeasy-name-override: getAuthorization - put: - summary: Create or update an employee's I-9 authorization - operationId: put-v1-employees-employee_id-i9_authorization - security: - - CompanyAccessAuth: [] - description: |- - An employee's I-9 authorization stores information about an employee's authorization status, as well as signatures and other information required to complete the Form I-9 for employment eligibility verification. - - If the version is supplied and the employee I-9 authorization exists, this endpoint acts as an update. Otherwise, it will create an employee I-9 authorization. - - Validations on this endpoint are conditional: - * `document_type` may be required, depending on `authorization_status`. - * Valid formats for `document_number` vary, depending on `document_type`. - * `country` is only allowed with `document_type: 'foreign_passport'`. - * `expiration_date` is only allowed with `authorization_status: 'alien'`. - - > ℹ️ Unneeded information is automatically removed during updates. - > - > If an update causes some formerly-required fields to be unneeded, the now-unneeded data will be removed automatically. - > - > **Example:** Updating `authorization_status` from `alien` to `citizen` will cause any data in `document_type`, `document_number`, `country`, and `expiration_date` to be removed, since these fields are unused for `authorization_status:'citizen'`. - - Detailed instructions for completing Form I-9 can be found at https://www.uscis.gov/sites/default/files/document/forms/i-9instr.pdf - - ### Related guides - - [I-9 employment verification](doc:i-9-employment-verification) - - scope: `i9_authorizations:write` - tags: - - I-9 Verification - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/I9-Authorization" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/I9-Authorization-Request-Body" - required: true - x-speakeasy-name-override: update - x-speakeasy-group: i9Verification - "/v1/employees/{employee_id}/i9_authorization/document_options": - get: - summary: Get an employee's I-9 verification document options - operationId: get-v1-employees-employee_id-i9_authorization-document_options - security: - - CompanyAccessAuth: [] - description: |- - An employee's I-9 verification documents are the documents an employee has provided the employer to verify their identity and authorization to work in the United States. This endpoint returns the possible document options based on the employee's authorization status. These options can then be used to create the I-9 verification documents. - - ### Related guides - - [I-9 employment verification](doc:i-9-employment-verification) - - scope: `i9_authorizations:read` - tags: - - I-9 Verification - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/I9-Authorization-Document-Option" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: i9Verification - x-speakeasy-name-override: getDocumentOptions - "/v1/employees/{employee_id}/i9_authorization/documents": - get: - summary: Get an employee's I-9 verification documents - operationId: get-v1-employees-employee_id-i9_authorization-documents - security: - - CompanyAccessAuth: [] - description: |- - An employee's I-9 verification documents are the documents an employee has provided the employer to verify their identity and authorization to work in the United States. - - ### Related guides - - [I-9 employment verification](doc:i-9-employment-verification) - - scope: `i9_authorizations:read` - tags: - - I-9 Verification - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/I9-Authorization-Document" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: i9Verification - x-speakeasy-name-override: getDocuments - put: - summary: Create an employee's I-9 authorization verification documents - operationId: put-v1-employees-employee_id-i9_authorization-documents - security: - - CompanyAccessAuth: [] - description: "An employee's I-9 verification documents are the documents an employee has provided the employer to verify their identity and authorization to work in the United States.\n\nUse the [document options endpoint](ref:get-v1-employees-employee_id-i9_authorization-document_options) to get the possible document types and titles, which can vary depending on the employee's authorization status.\n\n> \U0001F6A7 Every request must contain the complete list of documents for the Employee.\n>\n> Every request to this endpoint removes any previous verification document records for the employee.\n\n### Related guides\n- [I-9 employment verification](doc:i-9-employment-verification)\n\nscope: `i9_authorizations:manage`" - tags: - - I-9 Verification - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '201': - description: Created - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/I9-Authorization-Document" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/I9-Authorization-Documents-Request-Body" - required: true - x-speakeasy-group: i9Verification - x-speakeasy-name-override: createDocuments - "/v1/employees/{employee_id}/i9_authorization/documents/{document_id}": - delete: - summary: Delete an employee's I-9 verification document - operationId: delete-v1-employees-employee_id-i9_authorization-documents-document_id - security: - - CompanyAccessAuth: [] - description: |- - An employee's I-9 verification documents are the documents an employee has provided the employer to verify their identity and authorization to work in the United States. This endpoint deletes a specific verification document. - - ### Related guides - - [I-9 employment verification](doc:i-9-employment-verification) - - scope: `i9_authorizations:manage` - tags: - - I-9 Verification - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - - name: document_id - in: path - description: The UUID of the document - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '204': - description: No Content - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - x-speakeasy-group: i9Verification - x-speakeasy-name-override: deleteDocument - "/v1/employees/{employee_id}/i9_authorization/employer_sign": - put: - summary: Employer sign an employee's Form I-9 - operationId: put-v1-employees-employee_id-i9_authorization-employer_sign - security: - - CompanyAccessAuth: [] - description: |- - Sign an employee's Form I-9 as an employer. Once the form is signed, the employee's I-9 authorization is considered complete and cannot be modified. - - ### Prerequisites - Before calling this endpoint: - 1. The employee must have a completed [I-9 authorization](ref:put-v1-employees-employee_id-i9_authorization) - 2. The employee must have signed the Form I-9 - 3. [I-9 verification documents](ref:put-v1-employees-employee_id-i9_authorization-documents) must be submitted - - ### Related guides - - [I-9 employment verification](doc:i-9-employment-verification) - - scope: `i9_authorizations:manage` - tags: - - I-9 Verification - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - - name: x-gusto-client-ip - in: header - required: false - schema: - type: string - description: Optional header to supply the IP address. This can be used to supply the IP address for signature endpoints instead of the signed_by_ip_address parameter. - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/I9-Authorization" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/I9-Authorization-Employer-Sign-Request-Body" - required: true - x-speakeasy-group: i9Verification - x-speakeasy-name-override: employerSign - "/v1/plaid/processor_token": - post: - summary: Create a bank account from a plaid processor token - operationId: post-v1-plaid-processor_token - security: - - CompanyAccessAuth: [] - description: "This endpoint creates a new **verified** bank account by using a plaid processor token to retrieve its information.\n\n> \U0001F4D8\n> To create a token please use the [plaid api](https://plaid.com/docs/api/processors/#processortokencreate) and select \"gusto\" as processor.\n\n> \U0001F6A7 Warning - Company Bank Accounts\n>\n> If a default company bank account exists, it will be disabled and the new bank account will replace it as the company's default funding method.\n\nscope: `plaid_processor:write`" - tags: - - Bank Accounts - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '201': - description: A JSON object containing bank information - content: - application/json: - schema: - "$ref": "#/components/schemas/Company-Bank-Account" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Plaid-Processor-Token-Request" - required: true - x-speakeasy-group: bankAccounts - x-speakeasy-name-override: createFromPlaidToken - "/v1/companies/{company_uuid}/tax_requirements/{state}": - get: - summary: Get tax requirements for a state - operationId: get-v1-companies-company_uuid-tax_requirements-state - security: - - CompanyAccessAuth: [] - description: |- - Retrieves the detailed tax requirements for a specific state. The response includes requirement sets grouped by - category (e.g., registrations, tax rates, deposit schedules), each containing individual requirements with their - current values, labels, and metadata describing the expected input format. - - Use this to build dynamic UIs for tax setup or to read the current tax configuration for a state. - - scope: `company_tax_requirements:read` - tags: - - Tax Requirements - x-gusto-integration-type: - - embedded - parameters: - - name: company_uuid - in: path - required: true - description: The UUID of the company - schema: - type: string - - name: state - in: path - required: true - description: The two-letter state abbreviation - example: CA - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: scheduling - in: query - required: false - description: When true, return "new" requirement sets with valid `effective_from` dates that are available to save new effective-dated values. - schema: - type: boolean - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Tax-Requirements-State" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: taxRequirements - x-speakeasy-name-override: get - put: - summary: Update tax requirements for a state - operationId: put-v1-companies-company_uuid-tax_requirements-state - security: - - CompanyAccessAuth: [] - description: |- - Updates the tax requirement answers for a specific state. Submit answers to the requirement questions returned - by [GET /v1/companies/{company_uuid}/tax_requirements/{state}](ref:get-v1-companies-company_uuid-tax_requirements-state). - - ### Prerequisites - - 1. Retrieve current requirements via [GET /v1/companies/{company_uuid}/tax_requirements/{state}](ref:get-v1-companies-company_uuid-tax_requirements-state) - 2. Ensure that each requirement set that you're updating includes the correct `key`, `state`, and `effective_from` values from the GET response - - scope: `company_tax_requirements:write` - tags: - - Tax Requirements - x-gusto-integration-type: - - embedded - parameters: - - name: company_uuid - in: path - required: true - description: The UUID of the company - schema: - type: string - - name: state - in: path - required: true - description: The two-letter state abbreviation - example: CA - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Success - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - properties: - requirement_sets: - "$ref": "#/components/schemas/Tax-Requirement-Set-Update" - required: true - x-speakeasy-group: taxRequirements - x-speakeasy-name-override: updateState - "/v1/companies/{company_uuid}/tax_requirements": - get: - summary: Get all tax requirements for a company - operationId: get-v1-companies-company_uuid-tax_requirements - security: - - CompanyAccessAuth: [] - description: |- - Retrieves all states for which a company has tax requirements, along with a boolean indicating whether tax setup - is complete for each state. Use this to determine which states still need tax setup during company onboarding. - - scope: `company_tax_requirements:read` - tags: - - Tax Requirements - x-gusto-integration-type: - - embedded - parameters: - - name: company_uuid - in: path - required: true - description: The UUID of the company - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Tax-Requirement-States-List" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: taxRequirements - x-speakeasy-name-override: getAll - "/v1/companies/{company_uuid}/contractor_payments/preview": - get: - summary: Preview contractor payment debit date - operationId: get-companies-company_uuid-contractor_payments-preview - security: - - CompanyAccessAuth: [] - description: |- - Returns a debit_date dependent on the ACH payment speed of the company. - - If the payment method is Check or Historical payment, the debit_date will be the same as the check_date. - - scope: `payrolls:read` - tags: - - Contractor Payments - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - required: true - description: The UUID of the company - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: OK - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor-Payments-Preview" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor-Payments-Preview-Body" - required: true - x-speakeasy-name-override: preview - x-speakeasy-group: contractorPayments - "/v1/time_off_policies/{time_off_policy_uuid}": - get: - summary: Get a time off policy - operationId: get-v1-time_off_policies-time_off_policy_uuid - security: - - CompanyAccessAuth: [] - description: |- - Get a time off policy - - scope: `time_off_policies:read` - tags: - - Time Off Policies - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: time_off_policy_uuid - in: path - description: The UUID of the time off policy - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Time-Off-Policy" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: timeOffPolicies - x-speakeasy-name-override: get - put: - summary: Update a time off policy - operationId: put-v1-time_off_policies-time_off_policy_uuid - security: - - CompanyAccessAuth: [] - description: |- - Update a time off policy - - scope: `time_off_policies:write` - tags: - - Time Off Policies - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: time_off_policy_uuid - in: path - description: The UUID of the time off policy - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Time-Off-Policy" - '422': - description: Unlimited Policy updated with accrual rate - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - requestBody: - content: - application/json: - schema: - allOf: - - "$ref": "#/components/schemas/Versionable-Required" - - "$ref": "#/components/schemas/Time-Off-Policy-Update-Request" - required: true - x-speakeasy-group: timeOffPolicies - x-speakeasy-name-override: update - "/v1/companies/{company_uuid}/time_off_policies": - get: - summary: Get all time off policies for a company - operationId: get-v1-companies-company_uuid-time_off_policies - security: - - CompanyAccessAuth: [] - description: |- - Get all time off policies for a company - - scope: `time_off_policies:read` - tags: - - Time Off Policies - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Time-Off-Policy" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: timeOffPolicies - x-speakeasy-name-override: getAll - post: - summary: Create a time off policy - operationId: post-v1-companies-company_uuid-time_off_policies - security: - - CompanyAccessAuth: [] - description: |- - Create a time off policy - - scope: `time_off_policies:write` - tags: - - Time Off Policies - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '201': - description: created - content: - application/json: - schema: - "$ref": "#/components/schemas/Time-Off-Policy" - '422': - description: Policy name required - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Time-Off-Policy-Request" - required: true - x-speakeasy-name-override: create - x-speakeasy-group: timeOffPolicies - "/v1/time_off_policies/{time_off_policy_uuid}/add_employees": - put: - summary: Add employees to a time off policy - operationId: put-v1-time_off_policies-time_off_policy_uuid-add_employees - security: - - CompanyAccessAuth: [] - description: |- - 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` - tags: - - Time Off Policies - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: time_off_policy_uuid - in: path - description: The UUID of the time off policy - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Time-Off-Policy" - '422': - description: Add employees with no employees - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - required: - - employees - properties: - employees: - type: array - items: - type: object - required: - - uuid - properties: - uuid: - type: string - description: The UUID of the employee - balance: - type: - - string - - 'null' - description: The starting balance for the employee - required: true - x-speakeasy-group: timeOffPolicies - x-speakeasy-name-override: addEmployees - "/v1/time_off_policies/{time_off_policy_uuid}/remove_employees": - put: - summary: Remove employees from a time off policy - operationId: put-v1-time_off_policies-time_off_policy_uuid-remove_employees - security: - - CompanyAccessAuth: [] - description: |- - Remove employees from a time off policy - - scope: `time_off_policies:write` - tags: - - Time Off Policies - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: time_off_policy_uuid - in: path - description: The UUID of the time off policy - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Time-Off-Policy" - '422': - description: Remove employees with no employees - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - required: - - employees - properties: - employees: - type: array - items: - type: object - required: - - uuid - properties: - uuid: - type: string - description: The UUID of the employee - required: true - x-speakeasy-group: timeOffPolicies - x-speakeasy-name-override: removeEmployees - "/v1/companies/{company_uuid}/suspensions": - get: - summary: Get suspensions for this company - operationId: get-companies-company_uuid-suspensions - security: - - CompanyAccessAuth: [] - description: "Get existing suspension records for this company. A company may have multiple suspension records if they have suspended their Gusto account more than once.\n\n>\U0001F4D8 To check if company is already suspended\n>\n> To determine if a company is _currently_ suspended, use the `is_suspended` and `company_status` fields in the [Get a company](https://docs.gusto.com/embedded-payroll/reference/get-v1-companies) endpoint.\n\nscope: `company_suspensions:read`" - tags: - - Companies - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - required: true - description: The UUID of the company - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful response - content: - application/json: - schema: - "$ref": "#/components/schemas/Company-Suspension-List" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: companies.suspensions - x-speakeasy-name-override: get - post: - summary: Suspend a company's account - operationId: post-companies-company_uuid-suspensions - security: - - CompanyAccessAuth: [] - description: |- - Use this endpoint to suspend a company. After suspension, company will no longer be able to run payroll but will retain access to their information, such as retrieving employee info or retrieving past payrolls. - - scope: `company_suspensions:write` - tags: - - Companies - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - required: true - description: The UUID of the company - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful response - content: - application/json: - schema: - "$ref": "#/components/schemas/Company-Suspension" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Company-Suspension-Creation-Errors" - requestBody: - content: - application/json: - schema: - type: object - required: - - file_quarterly_forms - - file_yearly_forms - - reconcile_tax_method - - reason - properties: - file_quarterly_forms: - type: boolean - description: Should Gusto file quarterly tax forms on behalf of the company? The correct answer can depend on why the company is suspending their account, and how taxes are being reconciled. - file_yearly_forms: - type: boolean - description: Should Gusto file yearly tax forms on behalf of the company? The correct answer can depend on why the company is suspending their account, and how taxes are being reconciled. - reconcile_tax_method: - type: string - enum: - - pay_taxes - - refund_taxes - description: How Gusto will handle taxes already collected. - comments: - type: string - description: User-supplied comments describing why they are suspending their account. Required if the user is leaving for another provider and selects "other" instead of a defined provider. - reason: - type: string - enum: - - switching_provider - - shutting_down - - acquired - - no_more_employees - - changing_ein_or_entity_type - description: "Explanation for why the company is suspending their account.\n\n> \U0001F6A7 FEIN or entity type changes require Customer Support\n> If a company is switching FEIN or changing their entity type, this change must be performed by Gusto Customer Support and cannot be performed via the API at this time.\n" - leaving_for: - type: string - enum: - - accountant - - adp - - adp_total_source - - bamboo_hr - - bank_or_financial_institution - - check - - deel - - gusto_com - - homebase - - insperity - - intuit_or_quickbooks - - justworks - - manual - - namely - - onpay - - other - - oyster - - patriot - - paychex - - paycom - - paylocity - - remote - - rippling - - square - - surepayroll - - trinet - - velocity_global - - zenefits - description: "The competitor the company is switching to. Required if `reason` is `'switching_provider'`.\n\n> \U0001F6A7 Switching to Gusto requires Customer Support\n> If `'gusto_com'` is selected, this change must be completed by Gusto Customer Support and cannot be performed via the API. This endpoint will return a 422 error in that case.\n" - required: true - x-speakeasy-group: companies.suspensions - x-speakeasy-name-override: suspend - "/v1/companies/{company_uuid}/holiday_pay_policy": - get: - summary: Get a company's holiday pay policy - operationId: get-v1-companies-company_uuid-holiday_pay_policy - security: - - CompanyAccessAuth: [] - description: |- - Get a company's holiday pay policy - - scope: `holiday_pay_policies:read` - tags: - - Holiday Pay Policies - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Holiday-Pay-Policy" - '204': - description: no policy exists - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: holidayPayPolicies - x-speakeasy-name-override: get - post: - summary: Create a holiday pay policy for a company - operationId: post-v1-companies-company_uuid-holiday_pay_policy - security: - - CompanyAccessAuth: [] - description: |- - Create a holiday pay policy for a company - - scope: `holiday_pay_policies:write` - tags: - - Holiday Pay Policies - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Holiday-Pay-Policy" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: company already has a policy - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Holiday-Pay-Policy-Request" - x-speakeasy-group: holidayPayPolicies - x-speakeasy-name-override: create - put: - summary: Update a company's holiday pay policy - operationId: put-v1-companies-company_uuid-holiday_pay_policy - security: - - CompanyAccessAuth: [] - description: |- - Update a company's holiday pay policy - - scope: `holiday_pay_policies:write` - tags: - - Holiday Pay Policies - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Holiday-Pay-Policy" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: no policy exists - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - allOf: - - "$ref": "#/components/schemas/Versionable-Required" - - "$ref": "#/components/schemas/Holiday-Pay-Policy-Request" - required: true - x-speakeasy-group: holidayPayPolicies - x-speakeasy-name-override: update - delete: - summary: Delete a company's holiday pay policy - operationId: delete-v1-companies-company_uuid-holiday_pay_policy - security: - - CompanyAccessAuth: [] - description: |- - Delete a company's holiday pay policy - - scope: `holiday_pay_policies:write` - tags: - - Holiday Pay Policies - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '204': - description: successful - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: no policy exists - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - x-speakeasy-group: holidayPayPolicies - x-speakeasy-name-override: delete - "/v1/companies/{company_uuid}/holiday_pay_policy/add": - put: - summary: Add employees to a company's holiday pay policy - operationId: put-v1-companies-company_uuid-holiday_pay_policy-add - security: - - CompanyAccessAuth: [] - description: |- - Add employees to a company's holiday pay policy - - scope: `holiday_pay_policies:write` - tags: - - Holiday Pay Policies - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Holiday-Pay-Policy" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: no policy exists - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - allOf: - - "$ref": "#/components/schemas/Versionable-Required" - - type: object - required: - - employees - properties: - employees: - type: array - description: An array of employee objects, each containing an employee_uuid. - items: - type: object - properties: - uuid: - type: string - required: true - x-speakeasy-group: holidayPayPolicies - x-speakeasy-name-override: addEmployees - "/v1/companies/{company_uuid}/holiday_pay_policy/remove": - put: - summary: Remove employees from a company's holiday pay policy - operationId: put-v1-companies-company_uuid-holiday_pay_policy-remove - security: - - CompanyAccessAuth: [] - description: |- - Remove employees from a company's holiday pay policy - - scope: `holiday_pay_policies:write` - tags: - - Holiday Pay Policies - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Holiday-Pay-Policy" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: no policy exists - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - allOf: - - "$ref": "#/components/schemas/Versionable-Required" - - type: object - required: - - employees - properties: - employees: - type: array - description: An array of employee objects, each containing an employee_uuid. - items: - type: object - properties: - uuid: - type: string - required: true - x-speakeasy-group: holidayPayPolicies - x-speakeasy-name-override: removeEmployees - "/v1/companies/{company_uuid}/paid_holidays": - get: - summary: Preview a company's paid holidays - operationId: get-companies-company_uuid-paid_holidays - security: - - CompanyAccessAuth: [] - description: |- - Preview a company's paid holidays - - If a year is passed, paid holidays for that year will be returned. Otherwise, paid holidays for the next three years will be returned. - - scope: `holiday_pay_policies:read` - tags: - - Holiday Pay Policies - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: year - in: query - required: false - description: If a year is passed, paid holidays for that year will be returned. Otherwise, paid holidays for the next three years will be returned. - schema: - type: string - example: '2023' - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Paid-Holiday" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: holidayPayPolicies - x-speakeasy-name-override: previewPaidHolidays - "/v1/time_off_policies/{time_off_policy_uuid}/balance": - put: - summary: Update employee time off balances - operationId: put-v1-time_off_policies-time_off_policy_uuid-balance - security: - - CompanyAccessAuth: [] - description: |- - Updates time off hours balances for employees for a time off policy. - - scope: `time_off_policies:write` - tags: - - Time Off Policies - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: time_off_policy_uuid - in: path - description: The UUID of the time off policy - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Time-Off-Policy" - '422': - description: Unlimited policy balance update - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - required: - - employees - properties: - employees: - type: array - items: - type: object - required: - - uuid - - balance - properties: - uuid: - type: string - description: The UUID of the employee - balance: - type: string - description: The new balance for the employee - required: true - x-speakeasy-group: timeOffPolicies - x-speakeasy-name-override: updateBalance - "/v1/time_off_policies/{time_off_policy_uuid}/deactivate": - put: - summary: Deactivate a time off policy - operationId: put-v1-time_off_policies-time_off_policy_uuid-deactivate - security: - - CompanyAccessAuth: [] - description: |- - Deactivate a time off policy - - scope: `time_off_policies:write` - tags: - - Time Off Policies - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: time_off_policy_uuid - in: path - description: The UUID of the time off policy - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Time-Off-Policy" - '422': - description: Policy has pending time off requests - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: timeOffPolicies - x-speakeasy-name-override: deactivate - "/v1/notifications/{notification_uuid}": - get: - summary: Get a notification's details - operationId: get-notifications-notification_uuid - security: - - CompanyAccessAuth: [] - description: |- - Upon receiving a notification webhook event, use this endpoint to fetch the notification's details. The notification details include basic suggested content that can help you build notifications in your platform. - - Note: partners are responsible for the delivery and any custom state management of notifications in their application. Refer to our [partner notification guide](https://docs.gusto.com/embedded-payroll/docs/partner-notifications) for more details. - - If the notification UUID is not found, the response will be 404 Not Found. If the notification's supporting data is no longer valid, the response will be 422 Unprocessable Entity. - - scope: `notifications:read` - tags: - - Notifications - x-gusto-integration-type: - - embedded - parameters: - - name: notification_uuid - in: path - description: The notification entity_uuid - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Notification" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - x-speakeasy-name-override: getDetails - "/v1/events": - get: - summary: Get all events - operationId: get-events - security: - - SystemAccessAuth: [] - description: "Fetch all events, going back up to 30 days, that your partner application has the required scopes for. Note that a partner does NOT have to have verified webhook subscriptions in order to utilize this endpoint.\n\n\U0001F4D8 System Access Authentication\n\nThis endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access)\n\nscope: `events:read`" - tags: - - Events - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: starting_after_uuid - in: query - required: false - description: A cursor for pagination. Returns all events occuring after the specified UUID (exclusive). Events are sorted according to the provided sort_order param. - schema: - type: string - - name: resource_uuid - in: query - required: false - description: The UUID of the company. If not specified, will return all events for all companies. - schema: - type: string - - name: limit - in: query - required: false - description: Limits the number of objects returned in a single response, between 1 and 100. The default is 25 - schema: - type: string - - name: event_type - in: query - required: false - description: A string containing the exact event name (e.g. `employee.created`), or use a wildcard match to filter for a group of events (e.g. `employee.*`, `*.created`, `notification.*.created` etc.) - schema: - type: string - - name: sort_order - in: query - required: false - schema: - type: string - enum: - - asc - - desc - description: A string indicating whether to sort resulting events in ascending (asc) or descending (desc) chronological order. Events are sorted by their `timestamp`. Defaults to asc if left empty. - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Event-List" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - x-speakeasy-name-override: get - "/v1/companies/{company_uuid}/information_requests": - get: - summary: Get all information requests for a company - operationId: get-information-requests - security: - - CompanyAccessAuth: [] - description: |- - Fetch all information requests for a company. - - scope: `information_requests:read` - tags: - - Information Requests - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Information-Request" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - "/v1/companies/{company_uuid}/recovery_cases": - get: - summary: Get all recovery cases for a company - operationId: get-recovery-cases - security: - - CompanyAccessAuth: [] - description: |- - Fetch all recovery cases for a company. - - scope: `recovery_cases:read` - tags: - - Recovery Cases - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: page - in: query - required: false - description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - schema: - type: integer - - name: per - in: query - required: false - description: Number of objects per page. For majority of endpoints will default to 25 - schema: - type: integer - x-gusto-rswag: true - responses: - '200': - description: Successful - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Recovery-Case" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: recoveryCases - x-speakeasy-name-override: get - "/v1/recovery_cases/{recovery_case_uuid}/redebit": - put: - summary: Initiate a redebit for a recovery case - operationId: redebit-recovery-case - security: - - CompanyAccessAuth: [] - description: |- - After resolving the underlying bank error, initiate a redebit for an open recovery case. This submission is asynchronous and a successful request responds with a 202 HTTP status. - - It may take up to four business days for the ACH debit to process; in the meantime, the status of the recovery case will be in the `initiated_redebit` state. When funds are successfully redebited, the recovery case is transitioned to the `recovered` state. - - If the company has exceeded maximum redebit attempts, or if the recovery case is not in a redebitable state, the response will be 422 Unprocessable Entity. - - scope: `recovery_cases:write` - tags: - - Recovery Cases - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: recovery_case_uuid - in: path - required: true - description: The UUID of the recovery case - schema: - type: string - x-gusto-rswag: true - responses: - '202': - description: Accepted - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - x-speakeasy-group: recoveryCases - x-speakeasy-name-override: redebit - "/v1/companies/{company_uuid}/ach_transactions": - get: - summary: Get all ACH transactions for a company - operationId: get-ach-transactions - security: - - CompanyAccessAuth: [] - description: |- - Fetches all ACH transactions for a company. - - scope: `ach_transactions:read` - tags: - - ACH Transactions - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - required: true - description: The UUID of the company - schema: - type: string - - name: contractor_payment_uuid - in: query - required: false - description: The UUID of the contractor payment - schema: - type: string - - name: payroll_uuid - in: query - required: false - description: The UUID of the payroll - schema: - type: string - - name: transaction_type - in: query - required: false - description: Used to filter the ACH transactions to only include those with a specific transaction type, such as "Credit employee pay". - schema: - type: string - - name: payment_direction - in: query - required: false - description: Used to filter the ACH transactions to only include those with a specific payment direction, either "credit" or "debit". - schema: - type: string - - name: page - in: query - required: false - description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - schema: - type: integer - - name: per - in: query - required: false - description: Number of objects per page. For majority of endpoints will default to 25 - schema: - type: integer - x-gusto-rswag: true - responses: - '200': - description: Example response - content: - application/json: - schema: - "$ref": "#/components/schemas/Ach-Transaction-List" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: achTransactions - x-speakeasy-name-override: getAll - "/v1/wire_in_requests/{wire_in_request_uuid}": - get: - summary: Get a single Wire In Request - operationId: get-wire_in_requests-wire_in_request_uuid - security: - - CompanyAccessAuth: [] - description: |- - Fetch a Wire In Request. - - scope: `payrolls:read` - tags: - - Wire In Requests - x-gusto-integration-type: - - embedded - parameters: - - name: wire_in_request_uuid - in: path - description: The UUID of the Wire In Request - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Wire-In-Request" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - x-speakeasy-group: wireInRequests - x-speakeasy-name-override: get - put: - summary: Submit a wire in request - operationId: put-wire_in_requests-wire_in_request_uuid - security: - - CompanyAccessAuth: [] - description: |- - Submit a wire in request for a payment - - scope: `payrolls:run` - tags: - - Wire In Requests - x-gusto-integration-type: - - embedded - parameters: - - name: wire_in_request_uuid - in: path - description: The UUID of the Wire In Request - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Wire-In-Request" - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Wire-In-Request-Update-Request-Body" - required: true - x-speakeasy-group: wireInRequests - x-speakeasy-name-override: submit - "/v1/companies/{company_uuid}/wire_in_requests": - get: - summary: Get all Wire In Requests for a company - operationId: get-companies-company_uuid-wire_in_request_uuid - security: - - CompanyAccessAuth: [] - description: |- - Fetches all Wire In Requests for a company. - - scope: `payrolls:read` - tags: - - Wire In Requests - x-gusto-integration-type: - - embedded - parameters: - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: page - in: query - required: false - description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - schema: - type: integer - - name: per - in: query - required: false - description: Number of objects per page. For majority of endpoints will default to 25 - schema: - type: integer - x-gusto-rswag: true - responses: - '200': - description: Success - content: - application/json: - schema: - "$ref": "#/components/schemas/Wire-In-Request-List" - x-speakeasy-group: wireInRequests - x-speakeasy-name-override: list - "/v1/companies/{company_uuid}/notifications": - get: - summary: Get notifications for company - operationId: get-company-notifications - security: - - CompanyAccessAuth: [] - description: |- - Returns all notifications relevant for the given company. - - scope: `notifications:read` - tags: - - Notifications - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: company_uuid - in: path - description: The UUID of the company for which you would like to return notifications - required: true - schema: - type: string - - name: status - in: query - schema: - type: string - enum: - - open - - expired - - resolved - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: page - in: query - required: false - description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - schema: - type: integer - - name: per - in: query - required: false - description: Number of objects per page. For majority of endpoints will default to 25 - schema: - type: integer - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Notifications-List" - "/v1/companies/{company_id}/contractors/payment_details": - get: - summary: List contractor payment details - operationId: get-v1-companies-company_id-contractors-payment_details - security: - - CompanyAccessAuth: [] - description: |- - Get payment details for contractors in a company. This endpoint returns a list of all contractors - associated with the specified company, including their payment methods and bank account details - if they are paid via direct deposit. - - For contractors paid by direct deposit, the response includes their bank account information - with sensitive data masked for security. The payment details also include information about - how their payments are split if they have multiple bank accounts configured. - - For contractors paid by check, only the basic payment method information is returned. - - ### Response Details - - For direct deposit contractors: - - Bank account details (masked) - - Payment splits configuration - - Routing numbers - - Account types - - For check payments: - - Basic payment method designation - - ### Common Use Cases - - Fetching contractor payment information for payroll processing - - Verifying contractor payment methods - - Reviewing payment split configurations - - `encrypted_account_number` is available only with the additional scope `contractor_payment_methods:read:account_numbers`. - - scope: `contractor_payment_methods:read` - tags: - - Contractors - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: company_id - in: path - description: The UUID of the company. This identifies the company whose contractor payment details you want to retrieve. - required: true - schema: - type: string - - name: contractor_uuid - in: query - required: false - description: Optional filter to get payment details for a specific contractor. When provided, the response will only include payment details for this contractor. - schema: - type: string - - name: contractor_payment_group_uuid - in: query - required: false - description: 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. - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor-Payment-Details-List" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - "/v1/contractor_payment_groups/{id}/partner_disbursements": - get: - summary: Get partner disbursements for a contractor payment group - operationId: get-v1-contractor_payment_groups-id-partner_disbursements - security: - - CompanyAccessAuth: [] - description: |- - Get partner disbursements for a specific contractor payment group. - - scope: `partner_disbursements:read` - tags: - - Contractor Payment Groups - x-gusto-integration-type: - - embedded - parameters: - - name: id - in: path - required: true - description: The UUID of the contractor payment group - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor-Payment-Group-Partner-Disbursements" - '404': - description: | - Not Found - - The requested contractor payment group does not exist. Make sure the provided UUID is valid. - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - patch: - summary: Update partner disbursements for a contractor payment group - operationId: patch-v1-contractor_payment_groups-id-partner_disbursements - security: - - CompanyAccessAuth: [] - description: |- - Update partner disbursements for a specific contractor payment group. - - scope: `partner_disbursements:write` - tags: - - Contractor Payment Groups - x-gusto-integration-type: - - embedded - parameters: - - name: id - in: path - required: true - description: The UUID of the contractor payment group - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Contractor-Payment-Group-Partner-Disbursements" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - properties: - disbursements: - type: array - items: - type: object - properties: - contractor_payment_uuid: - type: string - description: UUID of the contractor payment - example: 9f8e7d6c-5b4a-3928-1c2d-3e4f5a6b7c8d - payment_method: - type: string - enum: - - Direct Deposit - - Check - description: Payment method for the contractor - payment_status: - type: string - enum: - - Pending - - Paid - - Not partner managed - - Converted to check - description: Status of the payment disbursement - required: - - contractor_payment_uuid - required: - - disbursements - "/v1/companies/{company_id}/payrolls/{id}/partner_disbursements": - get: - summary: Get partner disbursements for a payroll - operationId: get-v1-companies-company_id-payrolls-id-partner_disbursements - security: - - CompanyAccessAuth: [] - description: |- - Get partner disbursements for a specific payroll. - - scope: `partner_disbursements:read` - tags: - - Payrolls - x-gusto-integration-type: - - embedded - parameters: - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: id - in: path - description: The UUID of the payroll - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Payroll-Partner-Disbursements" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - patch: - summary: Update partner disbursements for a payroll - operationId: patch-v1-companies-company_id-payrolls-id-partner_disbursements - security: - - CompanyAccessAuth: [] - description: |- - Update partner disbursements for a specific payroll. - - scope: `partner_disbursements:write` - tags: - - Payrolls - x-gusto-integration-type: - - embedded - parameters: - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: id - in: path - description: The UUID of the payroll - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Payroll-Partner-Disbursements" - '422': - description: mixed single and multiple errors example - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - properties: - disbursements: - type: array - items: - type: object - properties: - employee_uuid: - type: string - description: UUID of the employee - example: 1a2b3c4d-5e6f-7890-abcd-ef1234567890 - payment_method: - type: string - enum: - - Direct Deposit - - Check - description: Payment method for the employee - payment_status: - type: string - enum: - - Pending - - Paid - - Not partner managed - - Converted to check - description: Status of the payment disbursement - required: - - employee_uuid - required: - - disbursements - "/v1/companies/{company_id}/bank_accounts/{bank_account_id}": - delete: - summary: Delete a company bank account - operationId: delete-v1-companies-company_id-bank-accounts-bank_account_id - security: - - CompanyAccessAuth: [] - description: |- - This endpoint disables a company bank account. - - A bank account cannot be disabled if it is used for any unprocessed payments. - - scope: `company_bank_accounts:write` - tags: - - Bank Accounts - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: bank_account_id - in: path - description: The UUID of the company bank account - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '204': - description: successful - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: Cannot delete bank account with unfunded payments - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - "/v1/webhooks/health_check": - get: - summary: Get the webhooks health status - operationId: get-v1-webhooks-health_check - security: - - SystemAccessAuth: [] - description: "Returns the health status (`healthy`, `unhealthy`, or `unknown`) of the webhooks system based on the last ten minutes of activity.\n\n\U0001F4D8 System Access Authentication\n\nThis endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access)\n\nscope: `webhook_subscriptions:read`" - tags: - - Webhooks - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Webhooks-Health-Check-Status" - "/v1/employees/{employee_id}/salary_estimates": - post: - summary: Create a salary estimate for an employee - operationId: post-v1-employees-employee_id-salary_estimates - security: - - CompanyAccessAuth: [] - description: |- - Create a salary estimate for an employee. This endpoint helps calculate a reasonable salary for S Corp owners based on their occupation, experience level, location, and business revenue. - - A salary estimate must include: - - Annual net revenue of the business - - ZIP code for location-based salary data - - One or more occupations with experience levels and time percentages (must sum to 100%) - - Only one in-progress salary estimate can exist per employee at a time. If an in-progress estimate already exists, you must either accept it or use the update endpoint. - - scope: `salary_estimates:write` - tags: - - Salary Estimates - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - required: true - description: The UUID of the employee - schema: - type: string - x-gusto-rswag: true - responses: - '201': - description: successfully created - content: - application/json: - schema: - "$ref": "#/components/schemas/Salary-Estimate" - '422': - description: unprocessable entity - invalid parameters - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - required: - - zip_code - - occupations - properties: - annual_net_revenue: - type: - - number - - 'null' - description: The annual net revenue of the business (must be greater than 0) - example: 500000 - zip_code: - type: string - description: The ZIP code for location-based salary calculations - pattern: "^\\d{5}$" - example: '94107' - occupations: - type: array - description: Array of occupations. Time percentages must sum to 100%. - minItems: 1 - items: - type: object - required: - - code - - experience_level - - time_percentage - properties: - code: - type: string - description: Bureau of Labor Statistics (BLS) occupation code - example: '151252' - experience_level: - type: string - description: Experience level for this occupation - enum: - - novice - - intermediate - - average - - skilled - - expert - example: skilled - time_percentage: - type: string - format: float - description: Percentage of time spent in this occupation (as decimal, e.g., 1.0 = 100%) - minimum: 0 - maximum: 1 - example: 1.0 - primary: - type: boolean - description: Whether this is the primary occupation - example: true - required: true - "/v1/salary_estimates/{uuid}": - get: - summary: Get a salary estimate - operationId: get-v1-salary_estimates-id - security: - - CompanyAccessAuth: [] - description: |- - Retrieve a salary estimate by its UUID. Returns the estimated salary calculation along with all occupation details, revenue, and location information. - - scope: `salary_estimates:read` - tags: - - Salary Estimates - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: uuid - in: path - required: true - description: The UUID of the salary estimate - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Salary-Estimate" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - put: - summary: Update a salary estimate - operationId: put-v1-salary_estimates-id - security: - - CompanyAccessAuth: [] - description: |- - Update an existing salary estimate. You can modify the annual net revenue, ZIP code, and occupations. - - The salary estimate must not be finalized (accepted). Once accepted, salary estimates become read-only for record-keeping purposes. - - scope: `salary_estimates:write` - tags: - - Salary Estimates - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: uuid - in: path - required: true - description: The UUID of the salary estimate - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Salary-Estimate" - '422': - description: unprocessable entity - already finalized - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - required: - - zip_code - - occupations - properties: - annual_net_revenue: - type: - - number - - 'null' - description: The annual net revenue of the business (must be greater than 0) - example: 600000 - zip_code: - type: string - description: The ZIP code for location-based salary calculations - pattern: "^\\d{5}$" - example: '94107' - occupations: - type: array - description: Array of occupations. Time percentages must sum to 100%. - minItems: 1 - items: - type: object - required: - - code - - experience_level - - time_percentage - properties: - code: - type: string - description: Bureau of Labor Statistics (BLS) occupation code - example: '151252' - experience_level: - type: string - description: Experience level for this occupation - enum: - - novice - - intermediate - - average - - skilled - - expert - example: expert - time_percentage: - type: string - format: float - description: Percentage of time spent in this occupation (as decimal, e.g., 0.5 = 50%) - minimum: 0 - maximum: 1 - example: 0.6 - primary: - type: boolean - description: Whether this is the primary occupation - example: true - required: true - "/v1/salary_estimates/{uuid}/accept": - post: - summary: Accept a salary estimate - operationId: post-v1-salary_estimates-uuid-accept - security: - - CompanyAccessAuth: [] - description: |- - Accept and finalize a salary estimate. This associates the estimate with an employee job and marks it as accepted. - - Once accepted, the salary estimate becomes read-only for record-keeping purposes. The accepted salary can then be used to set up compensation for the employee. - - scope: `salary_estimates:write` - tags: - - Salary Estimates - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: uuid - in: path - required: true - description: The UUID of the salary estimate - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Salary-Estimate" - '422': - description: unprocessable entity - invalid employee job - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - required: - - employee_job_uuid - properties: - employee_job_uuid: - type: string - description: The UUID of the employee job to associate with this salary estimate - example: 7f5d3d93-6d6f-48c0-9f4e-cd12c2d3e4b2 - required: true - "/v1/salary_estimates/occupations": - get: - summary: Search for BLS occupations - operationId: get-v1-salary_estimates-occupations - security: - - SystemAccessAuth: [] - description: "Search for Bureau of Labor Statistics (BLS) occupations by name or keyword. This endpoint helps users find the appropriate occupation codes to use when creating or updating salary estimates.\n\nReturns a list of matching occupations with their codes, titles, and descriptions.\n\n\U0001F4D8 System Access Authentication\n\nThis endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access)\n\nscope: `salary_estimates:read`" - tags: - - Salary Estimates - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: search - in: query - required: true - description: Search term for occupation (minimum 3 characters) - example: software - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/BLS-Occupation" - '422': - description: unprocessable entity - search term too short - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - "/v1/employees/{employee_id}/recurring_reimbursements": - get: - summary: Get recurring reimbursements for an employee - operationId: get-v1-employees-employee_id-recurring_reimbursements - security: - - CompanyAccessAuth: [] - description: |- - Get all active recurring reimbursements for an employee. - - scope: `reimbursements:read` - tags: - - Reimbursements - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - - name: page - in: query - required: false - description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - schema: - type: integer - - name: per - in: query - required: false - description: Number of objects per page. For majority of endpoints will default to 25 - schema: - type: integer - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Recurring-Reimbursement-List" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - post: - summary: Create a recurring reimbursement - operationId: post-v1-employees-employee_id-recurring_reimbursements - security: - - CompanyAccessAuth: [] - description: |- - Create a recurring reimbursement for an employee. - - scope: `reimbursements:write` - tags: - - Reimbursements - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: employee_id - in: path - description: The UUID of the employee - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '201': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Recurring-Reimbursement" - '422': - description: invalid attributes - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - required: - - description - - amount - properties: - description: - type: string - description: The description of the reimbursement - amount: - type: number - description: The dollar amount of the reimbursement - required: true - "/v1/recurring_reimbursements/{id}": - get: - summary: Get a recurring reimbursement - operationId: get-v1-recurring_reimbursements - security: - - CompanyAccessAuth: [] - description: |- - Get a specific recurring reimbursement. - - scope: `reimbursements:read` - tags: - - Reimbursements - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: id - in: path - description: The UUID of the reimbursement - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Recurring-Reimbursement" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - put: - summary: Update a recurring reimbursement - operationId: put-v1-recurring_reimbursements - security: - - CompanyAccessAuth: [] - description: |- - Update a recurring reimbursement. - - scope: `reimbursements:write` - tags: - - Reimbursements - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: id - in: path - description: The UUID of the reimbursement - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Recurring-Reimbursement" - '409': - description: invalid version - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: invalid attributes - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - requestBody: - content: - application/json: - schema: - allOf: - - "$ref": "#/components/schemas/Versionable-Required" - - type: object - properties: - description: - type: string - description: The description of the reimbursement - amount: - type: number - description: The dollar amount of the reimbursement - required: true - delete: - summary: Delete a recurring reimbursement - operationId: delete-v1-recurring_reimbursements - security: - - CompanyAccessAuth: [] - description: |- - Delete (soft delete) a recurring reimbursement for an employee. - - scope: `reimbursements:write` - tags: - - Reimbursements - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: id - in: path - description: The UUID of the reimbursement - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '204': - description: successful - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - "/v1/employees/{employee_uuid}/section603_high_earner_statuses": - get: - summary: Get all Section 603 high earner statuses for an employee - operationId: get-v1-employees-employee_uuid-section603_high_earner_statuses - security: - - CompanyAccessAuth: [] - description: |- - Get all Section 603 high earner statuses for an employee across all years. - - Section 603 of the SECURE 2.0 Act applies to employees aged 50 or older whose prior-year FICA wages exceed the IRS threshold. - These employees are classified as high earners, and their catch-up contributions to pre-tax retirement benefits must be designated as post-tax contributions. - - scope: `employee_benefits:read` - tags: - - Employee Benefits - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: employee_uuid - in: path - description: The UUID of the employee - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: successful - with records - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Section603-High-Earner-Status-List" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - post: - summary: Create a Section 603 high earner status - operationId: post-v1-employees-employee_uuid-section603_high_earner_statuses - security: - - CompanyAccessAuth: [] - description: |- - Create a Section 603 high earner status for an employee for a specific year. - - Section 603 of the SECURE 2.0 Act applies to employees aged 50 or older whose prior-year FICA wages exceed the IRS threshold. - These employees are classified as high earners, and their catch-up contributions to pre-tax retirement benefits must be designated as post-tax contributions. - - scope: `employee_benefits:write` - tags: - - Employee Benefits - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: employee_uuid - in: path - description: The UUID of the employee - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '201': - description: created - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Section603-High-Earner-Status" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '409': - description: conflict - record already exists - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - '422': - description: unprocessable entity - invalid is_high_earner - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Section603-High-Earner-Status-Create-Request" - required: true - "/v1/employees/{employee_uuid}/section603_high_earner_statuses/{effective_year}": - get: - summary: Get a Section 603 high earner status for a specific year - operationId: get-v1-employees-employee_uuid-section603_high_earner_statuses-effective_year - security: - - CompanyAccessAuth: [] - description: |- - Get a Section 603 high earner status for an employee for a specific year. - - Section 603 of the SECURE 2.0 Act applies to employees aged 50 or older whose prior-year FICA wages exceed the IRS threshold. - These employees are classified as high earners, and their catch-up contributions to pre-tax retirement benefits must be designated as post-tax contributions. - - scope: `employee_benefits:read` - tags: - - Employee Benefits - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: employee_uuid - in: path - description: The UUID of the employee - required: true - schema: - type: string - - name: effective_year - in: path - description: The effective year for the Section 603 status - required: true - schema: - type: integer - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Section603-High-Earner-Status" - '404': - description: Not Found - employee does not exist - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: unprocessable entity - invalid effective_year - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - patch: - summary: Update a Section 603 high earner status - operationId: patch-v1-employees-employee_uuid-section603_high_earner_statuses-effective_year - security: - - CompanyAccessAuth: [] - description: |- - Update a Section 603 high earner status for an employee for a specific year. - - Section 603 of the SECURE 2.0 Act applies to employees aged 50 or older whose prior-year FICA wages exceed the IRS threshold. - These employees are classified as high earners, and their catch-up contributions to pre-tax retirement benefits must be designated as post-tax contributions. - - scope: `employee_benefits:write` - tags: - - Employee Benefits - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: employee_uuid - in: path - description: The UUID of the employee - required: true - schema: - type: string - - name: effective_year - in: path - description: The effective year for the Section 603 status - required: true - schema: - type: integer - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Section603-High-Earner-Status" - '404': - description: Not Found - employee does not exist - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: unprocessable entity - invalid is_high_earner - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - "$ref": "#/components/schemas/Employee-Section603-High-Earner-Status-Update-Request" - required: true - "/v1/companies/{company_id}/people_batches": - post: - summary: Create a people batch - operationId: post-v1-companies-company_id-people_batches - security: - - CompanyAccessAuth: [] - description: |- - Creates a batch for bulk employee creation. - - The batch is processed asynchronously. Use the returned batch UUID to poll for status and results. - - scope: `people_batches:write` - tags: - - People Batches - x-gusto-integration-type: - - embedded - parameters: - - name: company_id - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '201': - description: created - content: - application/json: - schema: - "$ref": "#/components/schemas/People-Batch" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '409': - description: conflict - idempotency key already used - content: - application/json: - schema: - "$ref": "#/components/schemas/People-Batch-Conflict-Error" - '422': - description: unprocessable entity - validation errors - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - required: - - idempotency_key - - batch_action - - batch - properties: - idempotency_key: - type: string - format: uuid - description: A unique identifier to ensure idempotency of the batch request - example: 550e8400-e29b-41d4-a716-446655440000 - batch_action: - type: string - enum: - - create - description: The action to perform on the batch - example: create - batch: - type: array - description: Array of people to create - items: - type: object - required: - - entity_type - - person - properties: - entity_type: - type: string - enum: - - employee - description: The type of entity to create - example: employee - person: - type: object - required: - - external_id - - first_name - - last_name - properties: - external_id: - type: string - description: External identifier for the person - first_name: - type: string - description: Legal first name - last_name: - type: string - description: Legal last name - middle_initial: - type: - - string - - 'null' - maxLength: 1 - minLength: 1 - description: Middle initial - preferred_first_name: - type: - - string - - 'null' - description: Preferred first name - email: - type: - - string - - 'null' - format: email - description: Personal email address - work_email: - type: - - string - - 'null' - format: email - description: Work email address - ssn: - type: - - string - - 'null' - description: 'Social Security Number (format: xxx-xx-xxxx)' - date_of_birth: - type: - - string - - 'null' - format: date - description: Date of birth (YYYY-MM-DD) - self_onboarding: - type: - - boolean - - 'null' - description: Whether the employee will complete their own onboarding - home_address: - type: object - description: Home address for the employee - required: - - street_1 - - city - - state - - zip - properties: - street_1: - type: string - description: Street address line 1 - street_2: - type: string - description: Street address line 2 - city: - type: string - description: City - state: - type: string - description: State abbreviation - zip: - type: string - description: ZIP code - country: - type: string - description: Country (defaults to USA) - work_from_home: - type: boolean - description: If true, a company work address will be created based on this home address and the `work_address` property is not allowed. - work_address: - type: object - description: Specify the company work location for the employee - required: - - location_uuid - properties: - location_uuid: - type: string - format: uuid - description: UUID of an existing company work location - job: - type: object - description: Job details for the employee (required if compensation is provided) - required: - - title - - hire_date - properties: - title: - type: string - description: Job title - hire_date: - type: string - format: date - description: The date when the employee was hired or rehired for the job. - two_percent_shareholder: - type: boolean - description: Whether the employee owns at least 2% of the company. Can only be `true` for S-Corp companies. - state_wc_covered: - type: - - boolean - - 'null' - description: Whether this job is eligible for workers' compensation coverage in the state of Washington (WA). - state_wc_class_code: - type: - - string - - 'null' - description: The risk class code for workers' compensation in Washington state. Please visit [Washington state's Risk Class page](https://www.lni.wa.gov/insurance/rates-risk-classes/risk-classes-for-workers-compensation/risk-class-lookup#/) to learn more. - department: - type: object - description: Department details for the employee - required: - - department_uuid - properties: - department_uuid: - type: string - format: uuid - description: UUID of an existing company department - compensation: - type: object - description: Compensation details for the employee (requires job to be provided) - required: - - rate - - payment_unit - - flsa_status - properties: - rate: - type: string - description: The dollar amount paid per payment unit. - payment_unit: - type: string - enum: - - Hour - - Week - - Month - - Year - - Paycheck - description: The unit accompanying the compensation rate. If the employee is an owner, rate should be `Paycheck`. - flsa_status: - type: string - enum: - - Exempt - - Salaried Nonexempt - - Nonexempt - - Owner - - Commission Only Exempt - - Commission Only Nonexempt - description: 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. If selecting `Owner`, `payment_unit` must be `"Paycheck"`. - bank_accounts: - type: array - description: |- - Creates employee bank account(s) and payment method(s) for direct deposit. Payments can be split across accounts by Percentage or by Amount. If splitting payments by `Percentage`, all splits must have a `split_amount` and the percentages must add up to `100`. - If splitting payments by `Amount`, the priority is set based on the order of the bank accounts in the array and the last bank account is the remainder account (should have `split_amount` set to `null`). - items: - type: object - required: - - type - - account_type - - routing_number - - account_number - - split_by - properties: - name: - type: - - string - - 'null' - description: Account nickname - account_type: - type: string - enum: - - Checking - - Savings - description: Type of bank account - routing_number: - type: string - description: Bank routing number - account_number: - type: string - description: Bank account number - type: - type: string - enum: - - Direct Deposit - description: Payment type (must be Direct Deposit) - split_by: - type: string - enum: - - Amount - - Percentage - description: How to split deposits, must be the same for all bank accounts. If split_by is `Percentage`, then the split_amounts must add up to exactly 100. - split_amount: - type: - - string - - 'null' - description: Split amount in percentage or CENTS (`null` for remainder account) - required: true - "/v1/people_batches/{people_batch_uuid}": - get: - summary: Get a people batch - operationId: get-v1-people_batches-people_batch_uuid - security: - - CompanyAccessAuth: [] - description: |- - Returns the status and results of a people batch. - - Poll this endpoint to check the batch processing status and retrieve results. - - scope: `people_batches:read` - tags: - - People Batches - x-gusto-integration-type: - - embedded - parameters: - - name: people_batch_uuid - in: path - description: The UUID of the people batch - required: true - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/People-Batch-Results" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - "/v1/companies/{company_id}/reports/employees_annual_fica_wage": - post: - summary: Create an employees annual FICA wage report - operationId: post-v1-companies-company_id-reports-employees_annual_fica_wage - security: - - CompanyAccessAuth: [] - description: |- - Generates a report containing annual FICA (Federal Insurance Contributions Act) wage data for all employees in a company over a specified year range. - - This report provides detailed wage information subject to Social Security and Medicare taxes, useful for benefits integrations that need to verify employee earnings for compliance and benefit calculations. - - The report is generated asynchronously. After making this request, you will receive a `request_uuid` which can be used to poll the [Get a report](ref:get-v1-reports-request_uuid) endpoint to check the status and retrieve the report when complete. - - scope: `company_reports:write` - tags: - - Reports - x-gusto-integration-type: - - embedded - - app-integrations - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_id - in: path - required: true - description: The UUID of the company - schema: - type: string - x-gusto-rswag: true - responses: - '202': - description: accepted - content: - application/json: - schema: - type: object - required: - - request_uuid - - company_uuid - - start_year - - end_year - properties: - request_uuid: - type: string - format: uuid - description: The UUID of the report request. Use this to poll for report completion. - company_uuid: - type: string - format: uuid - description: The UUID of the company - start_year: - type: integer - description: The start year for the report - end_year: - type: integer - description: The end year for the report - example: - request_uuid: a1b2c3d4-e5f6-7890-abcd-ef1234567890 - company_uuid: 12345678-abcd-ef12-3456-7890abcdef12 - start_year: 2023 - end_year: 2024 - '422': - description: unprocessable entity - start year before minimum - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - required: - - start_year - - end_year - properties: - start_year: - type: integer - description: The start year for the report (must be 2011 or later) - example: 2023 - end_year: - type: integer - description: The end year for the report (must be the current year or earlier, and must be >= start_year) - example: 2024 - required: true - "/v1/contractor_payments/{contractor_payment_id}/pdf": - get: - summary: Get a contractor payment PDF - operationId: get-v1-contractor_payments-contractor_payment_id-pdf - security: - - CompanyAccessAuth: [] - description: |- - Get a PDF document for a single contractor payment. - - scope: `payrolls:read` - tags: - - Contractor Payments - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: contractor_payment_id - in: path - required: true - description: The UUID of the contractor payment - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: A PDF document of the contractor payment - '404': - description: | - Not Found - - The requested resource does not exist. Make sure the provided ID/UUID is valid. - content: - application/json: {} - application/pdf: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - "/v1/contractors/{contractor_uuid}/rehire": - post: - summary: Schedule a contractor rehire - parameters: - - name: contractor_uuid - in: path - required: true - description: The UUID of the contractor - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - operationId: post-v1-contractors-contractor_uuid-rehire - security: - - CompanyAccessAuth: [] - description: |- - ## Purpose - Schedules a contractor rehire for a given date. Creates a new employment record for the contractor. - - ## Prerequisites - Before calling this endpoint: - 1. The contractor must be inactive (previously dismissed) - 2. The contractor must not already have an upcoming employment - - ## Related webhooks - - `contractor.reactivated`: Fires when the contractor becomes active again (on or after start_date) - - scope: `contractors:write` - tags: - - Contractors - x-gusto-integration-type: - - embedded - x-gusto-rswag: true - responses: - '204': - description: no content - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: {} - requestBody: - content: - application/json: - schema: - type: object - properties: - start_date: - type: string - format: date - description: The rehire date - example: '2025-07-01' - required: - - start_date - delete: - summary: Cancel a pending contractor rehire - parameters: - - name: contractor_uuid - in: path - required: true - description: The UUID of the contractor - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - operationId: delete-v1-contractors-contractor_uuid-rehire - security: - - CompanyAccessAuth: [] - description: |- - ## Purpose - Cancels a pending contractor rehire. For future-dated rehires, cancellation is available anytime before the date. - For past-dated rehires, cancellation is only available within the 2-day grace period. - - ## Prerequisites - Before calling this endpoint: - - The contractor must have a pending rehire (upcoming employment) - - ## Related webhooks - - `contractor.deactivated`: Fires when the contractor returns to inactive state after cancellation - - scope: `contractors:write` - tags: - - Contractors - x-gusto-integration-type: - - embedded - x-gusto-rswag: true - responses: - '204': - description: no content - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: {} - "/v1/contractors/{contractor_uuid}/termination": - post: - summary: Schedule a contractor termination - parameters: - - name: contractor_uuid - in: path - required: true - description: The UUID of the contractor - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - operationId: post-v1-contractors-contractor_uuid-termination - security: - - CompanyAccessAuth: [] - description: |- - ## Purpose - Schedules a contractor dismissal for a given date. Supports both immediate (past dates) and future-dated dismissals. - - ## Prerequisites - Before calling this endpoint: - 1. The contractor must be active (no existing pending dismissal) - 2. The contractor must have a current employment - - ## Related webhooks - - `contractor.deactivated`: Fires when the contractor becomes inactive (on or after end_date) - - scope: `contractors:write` - tags: - - Contractors - x-gusto-integration-type: - - embedded - x-gusto-rswag: true - responses: - '204': - description: no content - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: {} - requestBody: - content: - application/json: - schema: - type: object - properties: - end_date: - type: string - format: date - description: The date of dismissal - example: '2025-06-15' - required: - - end_date - delete: - summary: Cancel a pending contractor termination - parameters: - - name: contractor_uuid - in: path - required: true - description: The UUID of the contractor - schema: - type: string - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - operationId: delete-v1-contractors-contractor_uuid-termination - security: - - CompanyAccessAuth: [] - description: |- - ## Purpose - Cancels a pending contractor dismissal. For future-dated dismissals, cancellation is available anytime before the date. - For past-dated dismissals, cancellation is only available within the 2-day grace period. - - ## Prerequisites - Before calling this endpoint: - - The contractor must have a pending dismissal (scheduled or within the grace period) - - ## Related webhooks - - `contractor.reactivated`: Fires when the contractor becomes active again after cancellation - - scope: `contractors:write` - tags: - - Contractors - x-gusto-integration-type: - - embedded - x-gusto-rswag: true - responses: - '204': - description: no content - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: {} - "/v1/companies/{company_uuid}/time_off/admin_approved_requests": - post: - summary: Create an admin-approved time off request - operationId: post-v1-companies-company_uuid-time_off-admin_approved_requests - security: - - CompanyAccessAuth: [] - description: |- - Create a pre-approved time off request on behalf of an employee (admin or system initiated). - The request is always created with approved status. - - scope: `time_off_requests:manage` - tags: - - Time Off Requests - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '201': - description: created - content: - application/json: - schema: - "$ref": "#/components/schemas/Embedded-Time-Off-Request" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - properties: - employee_uuid: - type: string - description: The UUID of the employee - policy_uuid: - type: string - description: The UUID of the time off policy - employer_note: - type: string - description: A note from the employer about the request - approver_uuid: - type: string - description: The UUID of the approving admin. Defaults to the primary payroll admin. - start_date: - type: string - description: The start date of the time off request (YYYY-MM-DD) - end_date: - type: string - description: The end date of the time off request (YYYY-MM-DD) - days: - type: object - additionalProperties: - type: string - description: 'An object where keys are dates in YYYY-MM-DD format and values are hours as string decimals (e.g. {"2025-01-20": "8.000"})' - required: - - employee_uuid - - policy_uuid - - start_date - - end_date - - days - required: true - "/v1/companies/{company_uuid}/time_off/balances": - get: - summary: Get time off balances for a company - operationId: get-v1-companies-company_uuid-time_off-balances - security: - - CompanyAccessAuth: [] - description: |- - Get time off balances for all employees in a company - - scope: `time_off_requests:read` - tags: - - Time Off Requests - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: employee_uuids - in: query - required: false - description: Filter by employee UUIDs (comma-separated) - schema: - type: string - - name: policy_uuids - in: query - required: false - description: Filter by time off policy UUIDs (comma-separated) - schema: - type: string - - name: page - in: query - required: false - description: The page that is requested - schema: - type: integer - - name: per - in: query - required: false - description: Number of objects per page - schema: - type: integer - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Embedded-Time-Off-Balance" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - "/v1/companies/{company_uuid}/time_off/requests": - get: - summary: List time off requests for a company - operationId: get-v1-companies-company_uuid-time_off-requests - security: - - CompanyAccessAuth: [] - description: |- - Get all time off requests for a company. Supports filtering by status, employee, and date ranges. - - Possible statuses: - - `pending` — awaiting approval - - `approved` — approved by an admin but not yet processed in a payroll - - `declined` — declined by an admin - - `consumed` — processed in a completed payroll - - Allowed values for `status`: pending, approved, declined, consumed. - - scope: `time_off_requests:read` - tags: - - Time Off Requests - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - - name: employee_uuids - in: query - required: false - description: Filter by employee UUIDs. Comma-separated for multiple values. - schema: - type: string - - name: status - in: query - required: false - description: Filter by request status. Comma-separated for multiple values (e.g. pending,approved,declined,consumed). - schema: - type: string - - name: start_date - in: query - required: false - description: Filter requests that overlap with this start date - schema: - type: string - - name: end_date - in: query - required: false - description: Filter requests that overlap with this end date - schema: - type: string - - name: sort_order - in: query - required: false - description: Sort order by start_date (asc or desc, defaults to desc) - schema: - type: string - - name: page - in: query - required: false - description: The page that is requested - schema: - type: integer - - name: per - in: query - required: false - description: Number of objects per page - schema: - type: integer - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - type: array - items: - "$ref": "#/components/schemas/Embedded-Time-Off-Request" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - post: - summary: Create a time off request - operationId: post-v1-companies-company_uuid-time_off-requests - security: - - CompanyAccessAuth: [] - description: |- - Create a time off request for an employee - - scope: `time_off_requests:write` - tags: - - Time Off Requests - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '201': - description: created - content: - application/json: - schema: - "$ref": "#/components/schemas/Embedded-Time-Off-Request" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - properties: - employee_uuid: - type: string - description: The UUID of the employee - policy_uuid: - type: string - description: The UUID of the time off policy - employee_note: - type: string - description: A note from the employee about the request - start_date: - type: string - description: The start date of the time off request (YYYY-MM-DD) - end_date: - type: string - description: The end date of the time off request (YYYY-MM-DD) - days: - type: object - additionalProperties: - type: string - description: 'An object where keys are dates in YYYY-MM-DD format and values are hours as string decimals (e.g. {"2025-01-20": "8.000"})' - required: - - employee_uuid - - policy_uuid - - start_date - - end_date - - days - required: true - "/v1/companies/{company_uuid}/time_off/requests/preview": - post: - summary: Preview a time off request - operationId: post-v1-companies-company_uuid-time_off-requests-preview - security: - - CompanyAccessAuth: [] - description: |- - Preview a time off request to see balance impact before creating - - scope: `time_off_requests:read` - tags: - - Time Off Requests - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: company_uuid - in: path - description: The UUID of the company - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Embedded-Time-Off-Request-Preview" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - properties: - request_uuid: - type: string - description: The UUID of an existing time off request to preview changes for - employee_uuid: - type: string - description: The UUID of the employee - policy_uuid: - type: string - description: The UUID of the time off policy - start_date: - type: string - description: The start date of the time off request (YYYY-MM-DD) - end_date: - type: string - description: The end date of the time off request (YYYY-MM-DD) - days: - type: object - additionalProperties: - type: string - description: 'An object where keys are dates in YYYY-MM-DD format and values are hours as string decimals (e.g. {"2025-01-20": "8.000"})' - required: - - employee_uuid - - policy_uuid - - start_date - - end_date - - days - required: true - "/v1/time_off/requests/{time_off_request_uuid}": - get: - summary: Get a time off request - operationId: get-v1-time_off-requests-time_off_request_uuid - security: - - CompanyAccessAuth: [] - description: |- - Get a single time off request by UUID - - scope: `time_off_requests:read` - tags: - - Time Off Requests - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: time_off_request_uuid - in: path - description: The UUID of the time off request - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Embedded-Time-Off-Request" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - delete: - summary: Delete a time off request - operationId: delete-v1-time_off-requests-time_off_request_uuid - security: - - CompanyAccessAuth: [] - description: |- - Delete a time off request - - scope: `time_off_requests:write` - tags: - - Time Off Requests - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: time_off_request_uuid - in: path - description: The UUID of the time off request - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '204': - description: no content - '404': - description: Not Found - content: - application/json: {} - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: {} - "/v1/time_off/requests/{time_off_request_uuid}/approve": - put: - summary: Approve a time off request - operationId: put-v1-time_off-requests-time_off_request_uuid-approve - security: - - CompanyAccessAuth: [] - description: |- - Approve a pending time off request. Optionally override the dates and hours. - - Only requests with a `pending` status can be approved. Attempting to approve a request that has already been `declined` or `consumed` will fail with a 422 error. - - scope: `time_off_requests:manage` - tags: - - Time Off Requests - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: time_off_request_uuid - in: path - description: The UUID of the time off request - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Embedded-Time-Off-Request" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - properties: - approver_uuid: - type: string - description: The UUID of the admin approving the request. Defaults to the company's primary payroll admin. - employer_note: - type: string - description: A note from the employer about the approval - days: - type: object - additionalProperties: - type: string - description: 'An object where keys are dates in YYYY-MM-DD format and values are hours as string decimals (e.g. {"2025-01-20": "8.000"}). Use this to override the requested hours.' - "/v1/time_off/requests/{time_off_request_uuid}/decline": - put: - summary: Decline a time off request - operationId: put-v1-time_off-requests-time_off_request_uuid-decline - security: - - CompanyAccessAuth: [] - description: |- - Decline a pending or approved time off request. Requires an employer_note. - - scope: `time_off_requests:manage` - tags: - - Time Off Requests - x-gusto-integration-type: - - embedded - parameters: - - name: X-Gusto-API-Version - in: header - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - - name: time_off_request_uuid - in: path - description: The UUID of the time off request - required: true - schema: - type: string - x-gusto-rswag: true - responses: - '200': - description: successful - content: - application/json: - schema: - "$ref": "#/components/schemas/Embedded-Time-Off-Request" - '404': - description: Not Found - content: - application/json: - schema: - "$ref": "#/components/schemas/Not-Found-Error-Object" - '422': - description: | - Unprocessable Entity - - This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. - content: - application/json: - schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - requestBody: - content: - application/json: - schema: - type: object - properties: - employer_note: - type: string - description: Note explaining why the request was declined - approver_uuid: - type: string - description: The UUID of the admin declining the request. Defaults to the company's primary payroll admin. - required: - - employer_note - required: true - "/v1/information_requests/{information_request_uuid}/submit": - put: - x-gusto-integration-type: - - embedded - summary: Submit information request responses - tags: - - Information Requests - operationId: submit-information-request - x-speakeasy-group: informationRequests - x-speakeasy-name-override: submit - description: |- - Submit responses to an information request. - Supports both text responses and file uploads (multipart/form-data). - Maximum file size: 120MB. - - scope: `information_requests:write` - parameters: - - "$ref": "#/components/parameters/information_request_uuid" - requestBody: - required: true - content: - application/json: - schema: - type: object - properties: - required_questions: - type: array - items: - type: object - required: - - question_uuid - - response_type - properties: - question_uuid: - type: string - format: uuid - description: UUID of the question being answered - response_type: - type: string - enum: - - text - - document - description: Type of response - matches the question's response_type from GET - text_response: - type: string - description: Text response (required when response_type is text) - file_response: - type: string - description: Data URL with base64-encoded file (e.g., "data:image/png;base64,..."). Required when response_type is document. - file_name: - type: string - description: Original filename with extension (e.g., "document.pdf"). Used for document uploads. - responses: - '200': - description: Information request successfully submitted - content: - application/json: - schema: - "$ref": "#/components/schemas/Information-Request" - '422': - description: Validation error - invalid responses or missing required answers - "$ref": "#/components/responses/Unprocessable-Entity-Error-Object" - '404': - "$ref": "#/components/responses/Not-Found-Error-Object" -components: - parameters: - search_term: - name: search_term - in: query - schema: - type: string - description: A string to search for in the object's names - pageParam: - schema: - type: integer - in: query - name: page - description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - perParam: - schema: - type: integer - in: query - name: per - description: Number of objects per page. For majority of endpoints will default to 25 - start_date: - in: query - name: start_date - schema: - type: string - example: '2020-01-01' - end_date: - in: query - name: end_date - description: If left empty, defaults to today's date. - schema: - type: string - example: '2020-01-31' - bank_account_uuid: - name: bank_account_uuid - in: path - required: true - schema: - type: string - description: The UUID of the bank account - benefit_id: - schema: - type: string - name: benefit_id - in: path - required: true - description: The benefit type in Gusto. - compensation_id: - schema: - type: string - name: compensation_id - in: path - required: true - description: The UUID of the compensation - company_attachment_uuid: - schema: - type: string - name: company_attachment_uuid - in: path - required: true - description: The UUID of the company attachment - company_benefit_id: - schema: - type: string - name: company_benefit_id - in: path - required: true - description: The UUID of the company benefit - company_forms_sort_by: - name: sort_by - in: query - required: false - description: 'Sort company forms. Options: name, year, quarter, draft, document_content_type, created_at (optionally with :asc or :desc suffix)' - schema: - type: string - pattern: "^(name|year|quarter|draft|document_content_type|created_at)(:(asc|desc))?$" - company_id: - name: company_id - in: path - required: true - schema: - type: string - description: The UUID of the company - company_uuid: - name: company_uuid - in: path - required: true - schema: - type: string - description: The UUID of the company - contractor_uuid: - name: contractor_uuid - in: path - required: true - schema: - type: string - description: The UUID of the contractor - contractor_payment_id: - name: contractor_payment_id - in: path - required: true - schema: - type: string - description: The UUID of the contractor payment - contractor_payment_uuid: - name: contractor_payment_uuid - in: path - required: true - schema: - type: string - description: The UUID of the contractor payment - contractor_payment_group_uuid: - name: contractor_payment_group_uuid - in: path - required: true - schema: - type: string - description: The UUID of the contractor payment group - contractors_sort_by: - name: sort_by - in: query - required: false - description: 'Sort contractors. Options: type, onboarding_status, name, created_at (optionally with :asc or :desc suffix)' - schema: - type: string - pattern: "^(type|onboarding_status|name|created_at)(:(asc|desc))?$" - department_uuid: - name: department_uuid - in: path - required: true - schema: - type: string - description: The UUID of the department - document_id: - name: document_id - in: path - required: true - schema: - type: string - description: The UUID of the document - earning_type_uuid: - schema: - type: string - name: earning_type_uuid - in: path - required: true - description: The UUID of the earning type - effective_date: - in: query - name: effective_date - required: false - schema: - type: string - example: '2020-01-31' - employee_benefit_id: - name: employee_benefit_id - in: path - required: true - schema: - type: string - description: The UUID of the employee benefit. - employee_id: - name: employee_id - in: path - required: true - schema: - type: string - description: The UUID of the employee - employee_uuid: - name: employee_uuid - in: path - required: true - schema: - type: string - description: The UUID of the employee - sort_order: - name: sort_order - in: query - required: false - schema: - type: string - example: asc - enum: - - asc - - desc - description: A string indicating whether to sort resulting events in ascending (asc) or descending (desc) chronological order. Events are sorted by their `timestamp`. Defaults to asc if left empty. - event_type: - name: event_type - in: query - required: false - schema: - type: string - description: A string containing the exact event name (e.g. `employee.created`), or use a wildcard match to filter for a group of events (e.g. `employee.*`, `*.created`, `notification.*.created` etc.) - external_payroll_id: - name: external_payroll_id - in: path - required: true - schema: - type: string - description: The UUID of the external payroll - form_id: - name: form_id - in: path - required: true - schema: - type: string - description: The UUID of the form - document_uuid: - name: document_uuid - in: path - required: true - schema: - type: string - description: The UUID of the document - garnishment_id: - name: garnishment_id - in: path - required: true - schema: - type: string - description: The UUID of the garnishment - historical_employee_uuid: - name: historical_employee_uuid - in: path - required: true - schema: - type: string - description: The UUID of the historical employee - home_address_uuid: - name: home_address_uuid - in: path - required: true - schema: - type: string - description: The UUID of the home address - work_address_uuid: - name: work_address_uuid - in: path - required: true - schema: - type: string - description: The UUID of the work address - job_id: - schema: - type: string - name: job_id - in: path - required: true - description: The UUID of the job - limit: - name: limit - in: query - required: false - schema: - type: string - description: Limits the number of objects returned in a single response, between 1 and 100. The default is 25 - location_id: - name: location_id - in: path - required: true - schema: - type: string - description: The UUID of the location - location_uuid: - name: location_uuid - in: path - required: true - schema: - type: string - description: The UUID of the location - payroll_id: - name: payroll_id - in: path - required: true - schema: - type: string - description: The UUID of the payroll - payroll_uuid: - name: payroll_uuid - in: path - required: true - schema: - type: string - description: The UUID of the payroll - pay_schedule_id: - name: pay_schedule_id - in: path - required: true - schema: - type: string - description: The UUID of the pay schedule - payroll_types: - name: payroll_types - in: query - required: false - schema: - type: string - description: regular and/or transition. Multiple options are comma separated. The default is regular pay periods if nothing is passed in. - payroll_prepare_sort_by: - name: sort_by - in: query - required: false - description: 'Sort employee compenstations by name. Options: first_name, last_name' - schema: - type: string - enum: - - first_name - - last_name - document_type: - name: document_type - in: path - required: true - schema: - type: string - enum: - - printable_payroll_checks - description: The type of document being generated - report_type: - schema: - type: string - name: report_type - in: path - required: true - description: The report type - report_uuid: - schema: - type: string - name: report_uuid - in: path - required: true - description: The UUID of the report request - request_uuid: - name: request_uuid - in: path - required: true - schema: - type: string - description: The UUID of the request to generate a document. Generate document endpoints return request_uuids to be used with the GET generated document endpoint. - signatory_uuid: - name: signatory_uuid - in: path - required: true - schema: - type: string - description: The UUID of the signatory - starting_after_uuid: - name: starting_after_uuid - in: query - required: false - schema: - type: string - description: A cursor for pagination. Returns all events occuring after the specified UUID (exclusive). Events are sorted according to the provided sort_order param. - resource_uuid: - name: resource_uuid - in: query - required: false - schema: - type: string - description: The UUID of the company. If not specified, will return all events for all companies. - time_off_type: - schema: - type: string - required: true - in: query - name: time_off_type - description: 'The time off type name you want to query data for. ex: ''sick'' or ''vacation''' - time_off_policy_uuid: - name: time_off_policy_uuid - in: path - required: true - schema: - type: string - description: The UUID of the company time off policy - webhook_subscription_uuid: - name: webhook_subscription_uuid - in: path - required: true - schema: - type: string - description: The webhook subscription UUID. - VersionHeader: - name: X-Gusto-API-Version - in: header - required: false - description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - schema: - type: string - enum: - - '2025-11-15' - default: '2025-11-15' - IpAddressHeader: - name: x-gusto-client-ip - in: header - required: false - description: Optional header to supply the IP address. This can be used to supply the IP address for signature endpoints instead of the signed_by_ip_address parameter. - schema: - type: string - notification_uuid: - name: notification_uuid - in: path - required: true - schema: - type: string - description: The notification entity_uuid - invoice_period: - name: invoice_period - in: path - required: true - schema: - type: string - example: 2020-01 - description: The month we are calculating the invoice for. Must be in YYYY-MM format - recovery_case_uuid: - name: recovery_case_uuid - in: path - required: true - schema: - type: string - description: The UUID of the recovery case - contractor_payment_uuid_query: - name: contractor_payment_uuid - in: query - required: false - schema: - type: string - description: The UUID of the contractor payment - payroll_uuid_query: - name: payroll_uuid - in: query - required: false - schema: - type: string - description: The UUID of the payroll - transaction_type: - name: transaction_type - in: query - required: false - schema: - type: string - description: Used to filter the ACH transactions to only include those with a specific transaction type, such as "Credit employee pay". - payment_direction: - name: payment_direction - in: query - required: false - schema: - type: string - description: Used to filter the ACH transactions to only include those with a specific payment direction, either "credit" or "debit". - wire_in_request_uuid: - name: wire_in_request_uuid - in: path - required: true - schema: - type: string - description: The UUID of the Wire In Request - time_sheet_uuid: - name: time_sheet_uuid - in: path - required: true - schema: - type: string - description: UUID of the time sheet - entity_uuids: - name: entity_uuids - required: false - in: query - schema: - type: array - items: - type: string - description: Entity UUIDs that reported time sheets - entity_type: - name: entity_type - required: false - in: query - schema: - type: string - enum: - - Employee - - Contractor - description: 'Type of entities to filter. One of: "Employee", "Contractor"' - status: - name: status - required: false - in: query - schema: - type: string - enum: - - approved - - pending - - rejected - description: 'Status of time sheets. One of: "approved", "pending", "rejected"' - time_sheet_before: - name: before - required: false - in: query - schema: - type: string - description: time sheets that were created before ISO 8601 timestamp. Filtering by "created_at" - time_sheet_after: - name: after - required: false - in: query - schema: - type: string - description: time sheets that were created before ISO 8601 timestamp. Filtering by "created_at" - time_sheet_sort_by: - name: sort_by - required: false - in: query - schema: - type: string - enum: - - created_at - - updated_at - - shift_started_at - - shift_ended_at - description: 'Field to sort by. One of: "created_at", "updated_at", "shift_started_at", "shift_ended_at"' - time_sheet_sort_order: - name: sort_order - required: false - in: query - schema: - type: string - enum: - - asc - - desc - description: 'Sorting order. One of: "asc", "desc"' - resource_version: - name: version - required: true - in: query - schema: - type: string - description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. - information_request_uuid: - name: information_request_uuid - in: path - required: true - schema: - type: string - description: The UUID of the information request - schemas: - Versionable-Required: - type: object - properties: - version: - type: string - example: 56d00c178bc7393b2a206ed6a86afcb4 - description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. - required: - - version - Versionable: - type: object - properties: - version: - type: string - description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. - Employee-Address: - type: object - x-examples: - success_status: - uuid: 700af712-62ba-4dff-824f-97a3c6fda416 - version: 6c3c23e4cc840bd3f1416f72b5380eff - employee_uuid: 78d20691-f1b4-4f74-bc4c-1d4db0099b00 - street_1: 3121 Milky Way - street_2: '' - city: San Francisco - state: CA - zip: '94107' - country: USA - active: true - effective_date: '1970-01-01' - courtesy_withholding: false - properties: - uuid: - type: string - description: The UUID of the employee address - employee_uuid: - type: string - description: The UUID of the employee - effective_date: - type: string - format: date - description: The date the employee started living at the address. - courtesy_withholding: - type: boolean - description: Determines if home taxes should be withheld and paid for employee. - street_1: - type: string - readOnly: false - street_2: - type: - - string - - 'null' - readOnly: false - city: - type: string - readOnly: false - state: - type: string - readOnly: false - zip: - type: string - readOnly: false - country: - type: string - readOnly: false - default: USA - active: - type: boolean - description: The status of the location. Inactive locations have been deleted, but may still have historical data associated with them. - readOnly: true - version: - type: string - description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. - required: - - uuid - - version - Employee-Work-Address: - type: object - x-examples: - success_status: - uuid: 64ee5fd7-3eb2-4083-883c-95e93e181cc8 - employee_uuid: d773461f-848a-40a1-8f09-b2ee4249d5c7 - location_uuid: 733ab2af-9510-408f-8d20-09196967174f - effective_date: '2020-01-31' - active: true - version: 3879823d440f3a3215d129ac73c58966 - street_1: 977 Marks Viaduct - street_2: Apt. 958 - city: Pink Hill - state: NC - zip: '28572' - country: USA - properties: - uuid: - type: string - readOnly: true - description: The unique identifier of this work address. - effective_date: - type: string - description: The date the employee began working at this location. - active: - type: boolean - readOnly: true - description: Signifies if this address is the active work address for the current date - location_uuid: - type: string - description: UUID reference to the company location for this work address. - employee_uuid: - type: string - description: UUID reference to the employee for this work address. - version: - type: string - description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. - street_1: - type: string - readOnly: true - street_2: - type: - - string - - 'null' - readOnly: true - city: - type: string - readOnly: true - state: - type: string - readOnly: true - zip: - type: string - readOnly: true - country: - type: string - readOnly: true - default: USA - required: - - uuid - - version - Contractor-Address: - type: object - x-examples: - example: - version: 23323096a8015e32d9795fadf1fd300d - contractor_uuid: 9779767c-6044-48e0-bf68-aeb370b9a2e7 - street_1: 999 Kiera Stravenue - street_2: Suite 391 - city: San Francisco - state: CA - zip: '94107' - country: USA - active: true - properties: - contractor_uuid: - type: string - description: The UUID of the contractor - street_1: - type: - - string - - 'null' - readOnly: false - street_2: - type: - - string - - 'null' - readOnly: false - city: - type: - - string - - 'null' - readOnly: false - state: - type: - - string - - 'null' - readOnly: false - zip: - type: - - string - - 'null' - readOnly: false - country: - type: - - string - - 'null' - readOnly: false - default: USA - active: - type: boolean - description: The status of the location. Inactive locations have been deleted, but may still have historical data associated with them. - readOnly: true - version: - type: string - description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. - Address: - type: object - allOf: - - "$ref": "#/components/schemas/Versionable" - - type: object - properties: - street_1: - type: - - string - - 'null' - readOnly: false - street_2: - type: - - string - - 'null' - readOnly: false - city: - type: - - string - - 'null' - readOnly: false - state: - type: - - string - - 'null' - readOnly: false - zip: - type: - - string - - 'null' - readOnly: false - country: - type: - - string - - 'null' - readOnly: false - default: USA - active: - type: boolean - description: The status of the location. Inactive locations have been deleted, but may still have historical data associated with them. - readOnly: true - example: - street_1: 412 Kiera Stravenue - street_2: Suite 391 - city: San Francisco - state: CA - zip: '94107' - country: USA - active: true - Employee-Home-Address: - type: object - properties: - street_1: - type: - - string - - 'null' - readOnly: false - street_2: - type: - - string - - 'null' - readOnly: false - city: - type: - - string - - 'null' - readOnly: false - state: - type: - - string - - 'null' - readOnly: false - zip: - type: - - string - - 'null' - readOnly: false - country: - type: - - string - - 'null' - readOnly: false - default: USA - active: - type: boolean - description: The status of the location. Inactive locations have been deleted, but may still have historical data associated with them. - readOnly: true - uuid: - type: string - description: Unique identifier for this address. - example: - street_1: 412 Kiera Stravenue - street_2: Suite 391 - city: San Francisco - state: CA - zip: '94107' - country: USA - active: true - uud: sample-uuid-123231 - Department: - type: object - allOf: - - "$ref": "#/components/schemas/Versionable" - - type: object - properties: - uuid: - type: string - description: The UUID of the department - company_uuid: - type: string - description: The UUID of the company - title: - type: string - description: Name of the department - employees: - type: array - description: Array of employees assigned to the department. - items: - properties: - uuid: - type: string - contractors: - type: array - description: Array of contractors assigned to the department. - items: - properties: - uuid: - type: string - x-examples: - example: - uuid: 56260b3d-c375-415c-b77a-75d99f717193 - company_uuid: 7087a288-8349-4632-b92e-bc94fb79f29e - title: Stage Hand - version: d90440dd464601d1c8f4e9e240dfb7a6 - employees: - - uuid: 41199375-a999-4414-9f40-d9bf596b134d - contractors: - - uuid: 3488549f-60e4-494f-a34a-9d8aad3aabf5 - example_created: - uuid: 56260b3d-c375-415c-b77a-75d99f717193 - company_uuid: 7087a288-8349-4632-b92e-bc94fb79f29e - title: Stage Hand - version: d90440dd464601d1c8f4e9e240dfb7a6 - employees: [] - contractors: [] - Employee: - title: Employee - type: object - description: The representation of an employee in Gusto. - x-examples: - success_status: - uuid: d7282d99-ab6b-42f5-ba45-f4a670e886a8 - first_name: Boaty - middle_initial: - last_name: Koss - email: keena.feest@kiehn.co.uk - company_uuid: e904cc79-818a-4da8-9d37-0be0a86fdda8 - manager_uuid: - version: a5cec1f1c0135feb3e76ca6ea3c46176 - current_employment_status: full_time - onboarding_status: onboarding_completed - preferred_first_name: - department_uuid: - employee_code: 46f036 - payment_method: Direct Deposit - department: - terminated: false - two_percent_shareholder: false - onboarded: true - historical: false - has_ssn: true - onboarding_documents_config: - uuid: - i9_document: false - jobs: - - uuid: bc875f9d-adc5-40f6-99db-ed8470bda25f - version: 863bcd01c51fcfa2468d604cffec7413 - employee_uuid: d7282d99-ab6b-42f5-ba45-f4a670e886a8 - current_compensation_uuid: 2ec164d0-808b-446c-8120-8cfb500945d0 - payment_unit: Year - primary: true - two_percent_shareholder: false - state_wc_covered: - state_wc_class_code: - title: '' - compensations: - - uuid: 2ec164d0-808b-446c-8120-8cfb500945d0 - employee_uuid: d7282d99-ab6b-42f5-ba45-f4a670e886a8 - version: db7bfb49a4f0893432cb562311bfcad9 - payment_unit: Year - flsa_status: Exempt - adjust_for_minimum_wage: false - minimum_wages: [] - job_uuid: bc875f9d-adc5-40f6-99db-ed8470bda25f - effective_date: '2025-06-09' - rate: '80000.00' - rate: '80000.00' - hire_date: '2024-06-09' - eligible_paid_time_off: [] - terminations: [] - garnishments: [] - date_of_birth: '2005-06-09' - ssn: '' - phone: - work_email: - member_portal_invitation_status: - status: sent - token_expired: false - welcome_email_sent_at: '2024-01-15T14:30:00Z' - last_password_resent_at: - partner_portal_invitation_sent: true - properties: - uuid: - type: string - description: The UUID of the employee in Gusto. - readOnly: true - first_name: - type: string - middle_initial: - type: - - string - - 'null' - last_name: - type: string - email: - type: - - string - - 'null' - description: The personal email address of the employee. This is provided to support syncing users between our system and yours. You may not use this email address for any other purpose (e.g. marketing). - company_uuid: - type: string - description: The UUID of the company the employee is employed by. - readOnly: true - manager_uuid: - type: - - string - - 'null' - description: The UUID of the employee's manager. - readOnly: true - version: - type: string - description: The current version of the employee. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. - readOnly: true - department: - type: - - string - - 'null' - description: The employee's department in the company. - readOnly: true - terminated: - type: boolean - description: Whether the employee is terminated. - readOnly: true - two_percent_shareholder: - type: - - boolean - - 'null' - description: Whether the employee is a two percent shareholder of the company. This field only applies to companies with an S-Corp entity type. - work_email: - type: - - string - - 'null' - description: The work email address of the employee. This is provided to support syncing users between our system and yours. You may not use this email address for any other purpose (e.g. marketing). - onboarded: - type: boolean - description: Whether the employee has completed onboarding. - readOnly: true - onboarding_status: - description: The current onboarding status of the employee - anyOf: - - type: string - enum: - - onboarding_completed - - 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 - - type: 'null' - readOnly: true - onboarding_documents_config: - type: object - description: Configuration for an employee onboarding documents during onboarding - properties: - uuid: - type: - - string - - 'null' - description: The UUID of the onboarding documents config - readOnly: true - i9_document: - type: boolean - description: Whether to include Form I-9 for an employee during onboarding - readOnly: true - jobs: - type: array - items: - "$ref": "#/components/schemas/Job" - eligible_paid_time_off: - type: array - items: - "$ref": "#/components/schemas/Paid-Time-Off" - terminations: - type: array - items: - "$ref": "#/components/schemas/Termination" - garnishments: - type: array - items: - "$ref": "#/components/schemas/Garnishment" - custom_fields: - type: array - description: Custom fields are only included for the employee if the include param has the custom_fields value set - items: - "$ref": "#/components/schemas/Employee-Custom-Field" - date_of_birth: - type: - - string - - 'null' - readOnly: true - has_ssn: - type: boolean - description: Indicates whether the employee has an SSN in Gusto. - ssn: - type: string - description: Deprecated. This field always returns an empty string. - phone: - type: - - string - - 'null' - preferred_first_name: - type: - - string - - 'null' - description: '' - payment_method: - type: string - description: The employee's payment method - enum: - - Direct Deposit - - Check - default: Check - nullable: false - current_employment_status: - anyOf: - - type: string - enum: - - full_time - - part_time_under_twenty_hours - - part_time_twenty_plus_hours - - variable - - seasonal - - type: 'null' - description: 'The current employment status of the employee. Full-time employees work 30+ hours per week. Part-time employees are split into two groups: those that work 20-29 hours a week, and those that work under 20 hours a week. Variable employees have hours that vary each week. Seasonal employees are hired for 6 months of the year or less.' - readOnly: true - historical: - type: boolean - nullable: false - employee_code: - type: string - description: The short format code of the employee - nullable: false - readOnly: true - department_uuid: - type: - - string - - 'null' - description: The UUID of the department the employee is under - title: - type: string - nullable: false - hired_at: - type: string - nullable: false - format: date - description: The date when the employee was hired to the company - hidden_ssn: - type: string - nullable: false - flsa_status: - "$ref": "#/components/schemas/Flsa-Status-Type" - applicable_tax_ids: - type: array - nullable: false - items: - type: number - member_portal_invitation_status: - type: - - object - - 'null' - description: Member portal invitation status information. Only included when the include param has the portal_invitations value set. - properties: - status: - type: string - description: The current status of the member portal invitation. - enum: - - pending - - sent - - verified - - complete - - cancelled - token_expired: - type: - - boolean - - 'null' - description: Whether the invitation token has expired. - welcome_email_sent_at: - type: - - string - - 'null' - format: date-time - description: The date and time when the welcome email was sent. - last_password_resent_at: - type: - - string - - 'null' - format: date-time - description: The date and time when the password reset was last resent. - partner_portal_invitation_sent: - type: - - boolean - - 'null' - description: Whether an external partner portal invitation webhook has been sent for this employee. Only included when the include param has the portal_invitations value set. - required: - - uuid - - first_name - - last_name - readOnly: true - Employee-Onboarding-Status: - description: The representation of an employee's onboarding status. - type: object - title: Employee-Onboarding-Status - x-examples: - success_status: - uuid: 8351cf2a-17cb-49e3-94a7-9986dcb11e84 - onboarding_status: onboarding_completed - onboarding_steps: - - title: Personal details - id: personal_details - required: true - completed: true - requirements: [] - - title: Enter compensation details - id: compensation_details - required: true - completed: true - requirements: [] - - title: Add work address - id: add_work_address - required: true - completed: true - requirements: [] - - title: Add home address - id: add_home_address - required: true - completed: true - requirements: [] - - title: Enter federal tax withholdings - id: federal_tax_setup - required: true - completed: true - requirements: [] - - title: Enter state tax information - id: state_tax_setup - required: true - completed: false - requirements: - - add_work_address - - add_home_address - - title: Direct deposit setup - id: direct_deposit_setup - required: false - completed: true - requirements: [] - - title: Employee form signing - id: employee_form_signing - required: true - completed: false - requirements: - - federal_tax_setup - - state_tax_setup - - title: File new hire report - id: file_new_hire_report - required: true - completed: false - requirements: - - add_work_address - properties: - uuid: - type: string - description: Unique identifier for this employee. - onboarding_status: - type: string - description: One of the "onboarding_status" enum values. - onboarding_steps: - type: array - description: List of steps required to onboard an employee. - items: - title: Onboarding step - type: object - properties: - title: - type: string - description: User-friendly description of the onboarding step. - id: - type: string - description: String identifier for the onboarding step. - required: - type: boolean - description: When true, this step is required. - completed: - type: boolean - description: When true, this step has been completed. - requirements: - type: array - description: A list of onboarding steps required to begin this step. - items: - type: string - required: - - uuid - Company-Address: - description: The representation of a company's address in Gusto. - type: object - properties: - street_1: - type: string - readOnly: false - street_2: - type: - - string - - 'null' - readOnly: false - city: - type: string - readOnly: false - state: - type: string - readOnly: false - zip: - type: string - readOnly: false - country: - type: string - readOnly: false - default: USA - inactive: - type: boolean - description: The status of the location. Inactive locations have been deleted, but may still have historical data associated with them. - readOnly: true - active: - type: boolean - description: The status of the location. Inactive locations have been deleted, but may still have historical data associated with them. - readOnly: true - Location: - description: The representation of an address in Gusto. - type: object - title: '' - x-examples: - success_status: - created_at: '2025-06-09T13:43:49.000-07:00' - updated_at: '2025-06-09T13:43:50.000-07:00' - company_uuid: 10593a6a-505b-4aa6-bf31-15dcdceedbe3 - version: e1bdd845a493c74908f8e15d6114169b - uuid: 6b1351a2-de35-4499-b948-43abab274634 - street_1: 300 3rd Street - street_2: Apartment 318 - city: San Francisco - state: CA - zip: '94107' - country: USA - active: true - phone_number: '8009360383' - filing_address: true - mailing_address: true - properties: - uuid: - type: string - description: The UUID of the location object. - readOnly: true - version: - type: string - description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. - company_uuid: - type: string - description: The UUID for the company to which the location belongs. Only included if the location belongs to a company. - readOnly: true - phone_number: - type: string - readOnly: false - description: The phone number for the location. Required for company locations. Optional for employee locations. - street_1: - type: string - readOnly: false - street_2: - type: - - string - - 'null' - readOnly: false - city: - type: string - readOnly: false - state: - type: string - readOnly: false - zip: - type: string - readOnly: false - country: - type: string - readOnly: false - default: USA - mailing_address: - type: boolean - description: Specifies if the location is the company's mailing address. Only included if the location belongs to a company. - filing_address: - description: Specifies if the location is the company's filing address. Only included if the location belongs to a company. - type: boolean - created_at: - type: string - description: Datetime for when location is created - updated_at: - type: string - description: Datetime for when location is updated - active: - type: boolean - description: The status of the location. Inactive locations have been deleted, but may still have historical data associated with them. - readOnly: true - inactive: - type: boolean - description: The status of the location. Inactive locations have been deleted, but may still have historical data associated with them. - readOnly: true - required: - - uuid - Paid-Time-Off: - type: object - description: The representation of paid time off in Gusto. - properties: - name: - type: - - string - - 'null' - description: The name of the paid time off type. - enum: - - Vacation Hours - - Sick Hours - - Holiday Hours - readOnly: true - policy_name: - type: - - string - - 'null' - description: The name of the time off policy. - readOnly: true - policy_uuid: - type: - - string - - 'null' - description: The UUID of the time off policy. - readOnly: true - accrual_unit: - type: - - string - - 'null' - example: Hour - description: The unit the PTO type is accrued in. - readOnly: true - accrual_rate: - type: - - string - - 'null' - description: The number of accrual units accrued per accrual period. - readOnly: true - accrual_method: - type: - - string - - 'null' - example: unlimited - description: The accrual method of the time off policy - readOnly: true - accrual_period: - type: - - string - - 'null' - example: Year - description: The frequency at which the PTO type is accrued. - readOnly: true - accrual_balance: - type: - - string - - 'null' - description: The number of accrual units accrued. - readOnly: true - maximum_accrual_balance: - type: - - string - - 'null' - description: The maximum number of accrual units allowed. A null value signifies no maximum. - readOnly: true - paid_at_termination: - type: boolean - description: Whether the accrual balance is paid to the employee upon termination. - readOnly: true - Child-Support-Data: - description: Child Support agency data - type: object - properties: - agencies: - type: array - description: State child support agencies - items: - type: object - properties: - state: - type: string - description: Two letter state abbreviation - name: - type: string - description: Name of state child support agency - manual_payment_required: - type: boolean - description: 'Specifies if remitting payment to the agency is required outside of Gusto. If true, Gusto includes garnishment amounts for this agency in payroll calculation, but does not debit for or remit payment to the agency automatically. As of September 2024, only garnishments for South Carolina Integrated Child Support Services require manual payment. ' - fips_codes: - type: array - description: FIPS codes for state or county child support orders - items: - type: object - properties: - code: - type: string - description: FIPS code for state or county - county: - type: - - string - - 'null' - description: Name of county in the state for the corresponding FIPS code. When `null` the FIPS code applies state wide. - required_attributes: - type: array - description: Describes which child support case identifying attributes are required for this agency. While most agencies only require a single identifier, some (e.g. OH) require multiple identifiers. - items: - type: object - properties: - key: - type: string - description: A required attribute when creating a garnishment for this state agency. The current values are listed as an enum; though unlikely, values could be added if state agency requirements change in the future. - enum: - - case_number - - order_number - - remittance_number - label: - type: string - description: A human readable name of the attribute, e.g. CSE Case Number - x-examples: - Example: - agencies: - - state: AK - name: Alaska Child Support Services Division - manual_payment_required: false - fips_codes: - - county: - code: '0200000' - required_attributes: - - key: case_number - label: CSE Case Number - - state: OH - name: Ohio Office of Child Support Enforcement - manual_payment_required: false - fips_codes: - - county: - code: '39000' - required_attributes: - - key: case_number - label: CSE Case Number - - key: order_number - label: Order Identifier - Garnishment-Child-Support: - description: Additional child support order details - type: - - object - - 'null' - properties: - state: - type: string - readOnly: false - description: The two letter state abbreviation for the state issuing the child support order. Agency data is available in the `GET /v1/garnishments/child_support` API. - payment_period: - type: string - readOnly: false - enum: - - Every week - - Every other week - - Twice per month - - Monthly - description: How often the agency collects the withholding amount. e.g. $500 monthly -> `Monthly`. - fips_code: - type: string - description: The FIPS code associated with the state or county agency issuing the child support order. Agency data is available in the `GET /v1/garnishments/child_support` API. - nullable: false - readOnly: false - case_number: - type: - - string - - 'null' - readOnly: false - description: Child Support Enforcement Case Number associated with this child support obligation - required for most states. Agency specific requirements are available in the `GET /v1/garnishments/child_support` API. - order_number: - type: - - string - - 'null' - readOnly: false - description: Order Identifier or Order ID associated with this child support obligation - required for some states. Agency specific requirements are available in the `GET /v1/garnishments/child_support` API. - remittance_number: - type: - - string - - 'null' - readOnly: false - description: Child Support Enforcement Remittance ID associated with this child support obligation - required for some states. Agency specific requirements are available in the `GET /v1/garnishments/child_support` API. - Garnishment: - description: Garnishments, or employee deductions, are fixed amounts or percentages deducted from an employee’s pay. They can be deducted a specific number of times or on a recurring basis. Garnishments can also have maximum deductions on a yearly or per-pay-period bases. Common uses for garnishments are court-ordered payments for child support or back taxes. Some companies provide loans to their employees that are repaid via garnishments. - type: object - properties: - uuid: - type: string - description: The UUID of the garnishment in Gusto. - readOnly: true - version: - type: string - description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. - employee_uuid: - type: string - description: The UUID of the employee to which this garnishment belongs. - readOnly: true - active: - type: boolean - default: true - description: Whether or not this garnishment is currently active. - amount: - type: string - format: float - readOnly: false - description: The amount of the garnishment. Either a percentage or a fixed dollar amount. Represented as a float, e.g. "8.00". - description: - type: string - readOnly: false - description: The description of the garnishment. - court_ordered: - type: boolean - readOnly: false - description: Whether the garnishment is court ordered. - times: - type: - - integer - - 'null' - readOnly: false - default: - description: The number of times to apply the garnishment. Ignored if recurring is true. - recurring: - type: boolean - readOnly: false - default: false - description: Whether the garnishment should recur indefinitely. - annual_maximum: - format: float - readOnly: false - default: - description: The maximum deduction per annum. A null value indicates no maximum. Represented as a float, e.g. "200.00". - type: - - string - - 'null' - total_amount: - type: - - string - - 'null' - format: float - readOnly: false - default: - description: A maximum total deduction for the lifetime of this garnishment. A null value indicates no maximum. - pay_period_maximum: - type: - - string - - 'null' - format: float - default: - description: The maximum deduction per pay period. A null value indicates no maximum. Represented as a float, e.g. "16.00". - deduct_as_percentage: - type: boolean - readOnly: false - default: false - description: Whether the amount should be treated as a percentage to be deducted per pay period. - garnishment_type: - anyOf: - - type: string - enum: - - child_support - - federal_tax_lien - - state_tax_lien - - student_loan - - creditor_garnishment - - federal_loan - - other_garnishment - - type: 'null' - description: The specific type of garnishment for court ordered garnishments. - child_support: - "$ref": "#/components/schemas/Garnishment-Child-Support" - required: - - uuid - x-examples: - Example: - uuid: 4c7841a2-1363-497e-bc0f-664703c7484f - version: 52b7c567242cb7452e89ba2bc02cb476 - employee_uuid: a6b53294-f871-4db2-bbd4-8c3d1fe56440 - active: true - amount: '8.00' - description: Company loan to employee - court_ordered: false - times: 5 - recurring: false - annual_maximum: - total_amount: - pay_period_maximum: '100.00' - deduct_as_percentage: true - garnishment_type: - child_support: - Create-Example: - uuid: 4c7841a2-1363-497e-bc0f-664703c7484f - version: 52b7c567242cb7452e89ba2bc02cb476 - employee_uuid: a6b53294-f871-4db2-bbd4-8c3d1fe56440 - active: true - amount: '150.00' - description: Back taxes - court_ordered: true - times: - recurring: true - annual_maximum: - total_amount: - pay_period_maximum: - deduct_as_percentage: false - garnishment_type: - child_support: - Child-Support-Example: - uuid: 4c7841a2-1363-497e-bc0f-664703c7481a - version: 52b7c567242cb7452e89ba2bc02cb383 - employee_uuid: a6b53294-f871-4db2-bbd4-8c3d1fe56440 - active: true - amount: '40.00' - description: Child support - AZ28319 - court_ordered: true - times: - recurring: true - annual_maximum: - total_amount: - pay_period_maximum: '400.00' - deduct_as_percentage: true - garnishment_type: child_support - child_support: - state: AZ - payment_period: Monthly - case_number: AZ28319 - order_number: - remittance_number: - fips_code: '04000' - Garnishment-List: - - uuid: 4c7841a2-1363-497e-bc0f-664703c7484f - version: 52b7c567242cb7452e89ba2bc02cb476 - employee_uuid: a6b53294-f871-4db2-bbd4-8c3d1fe56440 - active: true - amount: '8.00' - description: Company loan to employee - court_ordered: false - times: 5 - recurring: false - annual_maximum: - total_amount: - pay_period_maximum: '100.00' - deduct_as_percentage: true - garnishment_type: - child_support: - - uuid: 4c7841a2-1363-497e-bc0f-664703c7481a - version: 52b7c567242cb7452e89ba2bc02cb383 - employee_uuid: a6b53294-f871-4db2-bbd4-8c3d1fe56440 - active: true - amount: '40.00' - description: Child support - AZ28319 - court_ordered: true - times: - recurring: true - annual_maximum: - total_amount: - pay_period_maximum: '400.00' - deduct_as_percentage: true - garnishment_type: child_support - child_support: - state: AZ - payment_period: Monthly - case_number: AZ28319 - order_number: - remittance_number: - fips_code: '04000' - Employee-Onboarding-Document: - type: object - description: Configuration for which onboarding documents (e.g. Form I-9) are required for an employee during onboarding. - properties: - uuid: - type: - - string - - 'null' - description: The UUID of the onboarding documents config record. Null when no config has been saved yet. - readOnly: true - i9_document: - type: boolean - description: | - 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. - readOnly: true - x-examples: - config_with_i9: - uuid: 7b1d0df1-6403-4a06-8768-c1dd7d24d27a - i9_document: true - config_without_i9: - uuid: 7b1d0df1-6403-4a06-8768-c1dd7d24d27a - i9_document: false - config_not_yet_saved: - uuid: - i9_document: false - I9-Authorization: - type: object - description: An employee's I-9 authorization - properties: - uuid: - type: string - description: The UUID of the I-9 authorization - readOnly: true - form_uuid: - type: - - string - - 'null' - description: The UUID of the Form associated with this I-9 authorization. Use this with "Employee Forms" API endpoints. - readOnly: true - version: - type: string - description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. - readOnly: true - authorization_status: - type: string - description: The employee's authorization status - enum: - - citizen - - noncitizen - - permanent_resident - - alien - document_type: - anyOf: - - type: string - enum: - - uscis_alien_registration_number - - form_i94 - - foreign_passport - - type: 'null' - description: The document's document type - has_document_number: - type: - - boolean - - 'null' - description: Whether or not a `document_number` exists for this document. - expiration_date: - type: - - string - - 'null' - description: The document's expiration date - country: - type: - - string - - 'null' - description: The document's country of issuance - employer_signed: - type: boolean - description: Whether the employer has signed the Form I-9 - readOnly: true - employee_signed: - type: boolean - description: Whether the employee has signed the Form I-9 - readOnly: true - additional_info: - type: - - string - - 'null' - description: Any additional notes - alt_procedure: - type: - - boolean - - 'null' - description: Whether an alternative procedure authorized by DHS to examine documents was used - required: - - uuid - - version - - authorization_status - - employer_signed - - employee_signed - x-tags: - - I-9 Verification - x-examples: - alien_with_foreign_passport: - uuid: 7f2337f9-9b78-44b9-aeed-be4777b833a8 - version: 6ae7ff720107b356bf13b1606f60b24f - form_uuid: c54046f7-1be4-4c54-8194-f4842c30c86d - authorization_status: alien - document_type: foreign_passport - has_document_number: true - expiration_date: '2028-01-01' - country: Canada - employer_signed: false - employee_signed: false - additional_info: - alt_procedure: - citizen_authorization: - uuid: a12bc345-6789-4def-abcd-ef0123456789 - version: 52b7c567242cb7393b2a206ed6a86afcb - form_uuid: - authorization_status: citizen - document_type: - has_document_number: false - expiration_date: - country: - employer_signed: false - employee_signed: false - additional_info: - alt_procedure: - employer_signed_authorization: - uuid: 7f2337f9-9b78-44b9-aeed-be4777b833a8 - version: 8bc7393b2a206ed6a86afcb4d00c1785 - form_uuid: c54046f7-1be4-4c54-8194-f4842c30c86d - authorization_status: citizen - document_type: - has_document_number: false - expiration_date: - country: - employer_signed: true - employee_signed: true - additional_info: Additional info - alt_procedure: false - I9-Authorization-Document: - type: object - description: An employee's I-9 verification document - properties: - uuid: - type: string - description: The UUID of the I-9 verification document - readOnly: true - document_type: - type: string - description: The document's document type - document_title: - type: string - description: The document's document title - expiration_date: - type: - - string - - 'null' - description: The document's expiration date - issuing_authority: - type: string - description: The document's issuing authority - required: - - uuid - - document_type - - document_title - - issuing_authority - x-tags: - - I-9 Verification - x-examples: - driver_license: - uuid: 7f2337f9-9b78-44b9-aeed-be4777b833a8 - document_type: driver_license - issuing_authority: USA - expiration_date: '2027-01-01' - document_title: Driver's license - ssn_card: - uuid: 9p2337f9-9b78-44b9-aeed-be4777b833a8 - document_type: ssn_card - issuing_authority: USA - document_title: Social Security card - I9-Authorization-Document-Option: - type: object - description: An employee's I-9 verification document option based on the authorization status - properties: - section: - type: string - description: The document option's section in the list of acceptable documents on the Form I-9 - readOnly: true - enum: - - A - - A1 - - A2 - - A3 - - B - - C - description: - type: string - description: The document option's description - readOnly: true - document_type: - type: string - description: The document option's document type - readOnly: true - document_title: - type: array - description: The document option's document titles - readOnly: true - items: - type: string - common_choice: - type: boolean - description: Whether the document is a common choice for I-9 verification - readOnly: true - required: - - section - - description - - document_type - - document_title - - common_choice - x-tags: - - I-9 Verification - x-examples: - example_a: - section: A - description: Foreign passport - document_type: foreign_passport_w_i94 - document_title: - - Foreign passport - common_choice: true - example_b: - section: B - description: Driver's license or state-issued ID card - document_type: driver_license - document_title: - - Driver's license - - State ID card - common_choice: true - example_c: - section: C - description: Social Security card - document_type: ssn_card - document_title: - - Social Security card - common_choice: true - Termination: - type: object - description: The representation of a termination in Gusto. - properties: - uuid: - type: string - description: The UUID of the termination object. - readOnly: true - version: - type: string - description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. - employee_uuid: - type: string - description: The UUID of the employee to which this termination is attached. - readOnly: true - active: - type: boolean - description: Whether the employee's termination has gone into effect. - readOnly: true - cancelable: - type: boolean - description: Whether the employee's termination is cancelable. Cancelable is true if `run_termination_payroll` is false and `effective_date` is in the future. - readOnly: true - effective_date: - type: string - readOnly: false - description: The employee's last day of work. - run_termination_payroll: - type: boolean - readOnly: false - description: 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. - required: - - uuid - x-examples: - terminated_employee: - uuid: da441196-43a9-4d23-ad5d-f37ce6bb99c0 - employee_uuid: da441196-43a9-4d23-ad5d-f37ce6bb99c0 - version: d487dd0b55dfcacdd920ccbdaeafa351 - active: true - cancelable: false - effective_date: '2024-01-15' - run_termination_payroll: false - cancelable_termination: - uuid: da441196-43a9-4d23-ad5d-f37ce6bb99c0 - employee_uuid: da441196-43a9-4d23-ad5d-f37ce6bb99c0 - version: d487dd0b55dfcacdd920ccbdaeafa351 - active: false - cancelable: true - effective_date: '2024-06-15' - run_termination_payroll: false - Rehire-Body: - type: object - properties: - effective_date: - type: string - description: The day when the employee returns to work. - example: '2023-06-30' - file_new_hire_report: - type: boolean - description: The boolean flag indicating whether Gusto will file a new hire report for the employee. - work_location_uuid: - type: string - description: The uuid of the employee's work location. - example: b6ae9d93-d4b8-4119-8c96-dba595dd8c30 - employment_status: - type: string - description: The employee's employment status. Supplying an invalid option will set the employment_status to *not_set*. - enum: - - part_time - - full_time - - part_time_eligible - - variable - - seasonal - - not_set - two_percent_shareholder: - type: boolean - description: Whether the employee is a two percent shareholder of the company. This field only applies to companies with an S-Corp entity type. - required: - - effective_date - - file_new_hire_report - - work_location_uuid - Fast-Payment-Limit-Param: - type: string - description: Fast payment limit. This limit is an aggregate of all fast payrolls amount. This limit is only relevant when payment speed is 1-day or 2-day. - Payment-Speed-Param: - type: string - description: Gusto Embedded supports three payment speeds (1-day, 2-day, and 4-day). For next-day payments, funds are deposited in your team's bank account by the end of the next business day. Most people will see the funds arrive the next afternoon, but payments may arrive as late as the end of the business day. - enum: - - 1-day - - 2-day - - 4-day - Fast-Payment-Limit-Required-Body: - type: object - properties: - fast_payment_limit: - "$ref": "#/components/schemas/Fast-Payment-Limit-Param" - payment_speed: - "$ref": "#/components/schemas/Payment-Speed-Param" - required: - - fast_payment_limit - Payment-Speed-Required-Body: - type: object - properties: - fast_payment_limit: - "$ref": "#/components/schemas/Fast-Payment-Limit-Param" - payment_speed: - "$ref": "#/components/schemas/Payment-Speed-Param" - required: - - payment_speed - Historical-Employee-Body: - type: object - description: | - Request body for creating or updating a **historical employee**—someone who already separated from the company and must appear on year-to-date or tax filings without receiving ongoing payroll. - - Send this object under the JSON root key `employee`. All dates are ISO 8601 (`YYYY-MM-DD`). Use a `work_address.location_uuid` returned from your company locations API for an active work site. - properties: - first_name: - type: string - description: Legal first name as it appears on government-issued identification. - example: Soren - middle_initial: - type: string - description: Single middle initial, if any. - example: A - last_name: - type: string - description: Legal last name as it appears on government-issued identification. - example: Kierkegaard - preferred_first_name: - type: string - description: Preferred given name for display; omit when the same as legal first name. - example: Angel - date_of_birth: - type: string - format: date - description: Date of birth (YYYY-MM-DD). - example: '1995-05-05' - ssn: - type: string - pattern: "[0-9]{9}" - description: 'Nine-digit U.S. Social Security number **without** dashes or spaces. Must pass Gusto/SSA validation in production; use a valid test SSN in sandbox environments. - -' - example: '123456294' - work_address: - type: object - description: Primary work location for this historical employment row. - required: - - location_uuid - properties: - location_uuid: - type: string - format: uuid - description: UUID of a company work location from the company locations response. - example: 1da85d35-1910-40a7-9c1f-8e2b3d4c5a6f - home_address: - type: object - description: Residential address on file for tax withholding and compliance mail. - properties: - street_1: - type: string - description: Street address line 1. - example: 55 Mission St - street_2: - type: - - string - - 'null' - description: Apartment, suite, unit, or building (optional). - example: Floor 3 - city: - type: string - description: City. - example: San Francisco - state: - type: string - description: Two-letter U.S. state or territory postal abbreviation. - example: CA - zip: - type: string - description: ZIP or ZIP+4. - example: '94105' - required: - - street_1 - - city - - state - - zip - termination: - type: object - description: End of the historical employment period. - required: - - effective_date - properties: - effective_date: - type: string - format: date - description: Last day of employment (termination date). This is recorded on the employment; use the calendar date the person stopped working for the company. - example: '2022-01-01' - email: - type: string - format: email - description: Optional. When provided, stored on the employee record for notifications and profile. - example: soren.kierkegaard@example.com - job: - type: object - description: Hire date for the historical job used to build employments and filings. - required: - - hire_date - properties: - hire_date: - type: string - format: date - description: First calendar day the employee was employed in this role at the company. - example: '2020-01-01' - employee_state_taxes: - type: object - description: Workers' compensation fields for Washington (WA) or Wyoming (WY) when the work address is in those states; omit when not applicable. - properties: - wc_covered: - type: boolean - description: Whether this job is eligible for workers' compensation coverage in the states of Washington (WA) or Wyoming (WY). - example: true - wc_class_code: - type: string - description: The risk class code for workers' compensation in Washington or Wyoming state. For Washington, visit [Washington state's Risk Class page](https://www.lni.wa.gov/insurance/rates-risk-classes/risk-classes-for-workers-compensation/risk-class-lookup#/) to learn more. For Wyoming you can search for the code online using [WY Workforce Services website](https://dws.wyo.gov/dws-division/workers-compensation/) or call the agency at (307) 235-3217. - example: '051000' - required: - - first_name - - last_name - - date_of_birth - - ssn - - work_address - - home_address - - job - - termination - x-examples: - typical_historical_employee: - first_name: Soren - middle_initial: A - last_name: Kierkegaard - preferred_first_name: Angel - date_of_birth: '1995-05-05' - ssn: '123456294' - email: soren.kierkegaard@example.com - work_address: - location_uuid: 1da85d35-1910-40a7-9c1f-8e2b3d4c5a6f - home_address: - street_1: 55 Mission St - street_2: Floor 3 - city: San Francisco - state: CA - zip: '94105' - job: - hire_date: '2020-01-01' - termination: - effective_date: '2022-01-01' - Pay-Schedule-Assignment-Body: - type: object - properties: - type: - anyOf: - - type: string - enum: - - single - - hourly_salaried - - by_employee - - by_department - - type: 'null' - description: The pay schedule assignment type. - hourly_pay_schedule_uuid: - type: string - description: Pay schedule for hourly employees. - salaried_pay_schedule_uuid: - type: string - description: Pay schedule for salaried employees. - default_pay_schedule_uuid: - type: string - description: Default pay schedule for employees. - partial_assignment: - type: boolean - description: 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. - employees: - type: array - description: List of employees and their pay schedules. - items: - type: object - properties: - employee_uuid: - type: string - description: Employee UUID - pay_schedule_uuid: - type: string - description: Pay schedule UUID - departments: - type: array - description: List of departments and their pay schedules. - items: - type: object - properties: - department_uuid: - type: string - description: Department UUID - pay_schedule_uuid: - type: string - description: Pay schedule UUID - required: - - type - Flsa-Status-Type: - type: string - enum: - - Exempt - - Salaried Nonexempt - - Nonexempt - - Owner - - Commission Only Exempt - - Commission Only Nonexempt - description: '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. ' - Compensation: - type: object - description: The representation of compensation in Gusto. - properties: - uuid: - type: string - description: The UUID of the compensation in Gusto. - readOnly: true - version: - type: string - description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. - job_uuid: - type: string - description: The UUID of the job to which the compensation belongs. - readOnly: true - employee_uuid: - type: string - description: The UUID of the employee to which the compensation belongs. - readOnly: true - rate: - type: string - readOnly: false - description: The dollar amount paid per payment unit. - payment_unit: - type: string - readOnly: false - description: The unit accompanying the compensation rate. If the employee is an owner, rate should be 'Paycheck'. - enum: - - Hour - - Week - - Month - - Year - - Paycheck - flsa_status: - "$ref": "#/components/schemas/Flsa-Status-Type" - title: - type: string - description: The job title for this compensation. - effective_date: - type: string - readOnly: false - description: The effective date for this compensation. For the first compensation, this defaults to the job's hire date. - adjust_for_minimum_wage: - type: boolean - description: Indicates if the compensation could be adjusted to minimum wage during payroll calculation. - readOnly: true - minimum_wages: - type: array - readOnly: false - description: The minimum wages associated with the compensation. - items: - type: object - properties: - uuid: - type: string - description: The UUID of the minimum wage. - wage: - type: string - description: The wage amount. - effective_date: - type: string - description: The effective date of the minimum wage. - required: - - uuid - x-examples: - success_status: - uuid: db4d41e5-813c-477e-bfae-38da2ae5e7a3 - version: 56d00c178bc7393b2a206ed6a86afcb4 - job_uuid: c1fdb417-c34a-43a7-92f3-5e6c20c1d7a4 - employee_uuid: a7e8f9bc-0d12-4e56-b789-012345678901 - rate: '70000.00' - payment_unit: Year - flsa_status: Exempt - effective_date: '2023-01-01' - adjust_for_minimum_wage: false - minimum_wages: [] - title: Software Engineer - hourly_compensation: - uuid: e5f6a7b8-c9d0-1234-e5f6-a7b8c9d01234 - version: 98b7a6c5d4e3f2a1b0c9d8e7f6a5b4c3 - job_uuid: d2e5f8a1-b4c7-4d90-a3e6-f9b2c5d8e1a4 - employee_uuid: b8f9a0bc-1e23-4f67-c890-123456789012 - rate: '25.00' - payment_unit: Hour - flsa_status: Nonexempt - effective_date: '2023-01-01' - adjust_for_minimum_wage: false - minimum_wages: [] - title: Associate - minimum_wage_adjusted: - uuid: a4d9ba9c-32cc-4cc1-a5bc-6ef4cd653e7a - version: cc59bd3879d655fb940a1f6b675f2ad9 - job_uuid: d8f8fbe7-496d-4b69-86f0-1e2d1b73a086 - rate: '5.00' - payment_unit: Hour - flsa_status: Nonexempt - effective_date: '2018-12-11' - adjust_for_minimum_wage: true - minimum_wages: - - uuid: edeea5af-ecd6-4b1c-b5de-5cff2d302738 - wage: '7.25' - effective_date: '2018-12-11' - Form-Document-Content-Type-Type: - type: - - string - - 'null' - description: The content type of the associated document. Most forms are PDFs with a content type of `application/pdf`. Some tax file packages will be zip files (containing PDFs) with a content type of `application/zip`. This attribute will be `null` when the document has not been prepared. - readOnly: true - Form: - title: Form - type: object - properties: - uuid: - type: string - description: The UUID of the form - readOnly: true - employee_uuid: - type: string - description: The UUID of the employee to which the form belongs, if applicable. - readOnly: true - name: - type: string - description: The type identifier of the form - readOnly: true - title: - type: string - description: The title of the form - readOnly: true - description: - type: string - description: The description of the form - readOnly: true - draft: - type: boolean - description: If the form is in a draft state. E.g. End of year tax forms may be provided in a draft state prior to being finalized. - readOnly: true - year: - type: - - integer - - 'null' - description: The year of this form. For some forms, e.g. tax forms, this is the year which the form represents. A W2 for January - December 2022 would be delivered in January 2023 and have a year value of 2022. This value is nullable and will not be present on all forms. - readOnly: true - quarter: - type: - - integer - - 'null' - description: The quarter of this form. For some forms, e.g. tax forms, this is the calendar quarter which this form represents. An Employer's Quarterly Federal Tax Return (Form 941) for April, May, June 2022 would have a quarter value of 2 (and a year value of 2022). This value is nullable and will not be present on all forms. - readOnly: true - requires_signing: - type: boolean - description: A boolean flag that indicates whether the form needs signing or not. Note that this value will change after the form is signed. - readOnly: true - document_content_type: - "$ref": "#/components/schemas/Form-Document-Content-Type-Type" - x-examples: - Example: - uuid: 48cdd5ec-a4dd-4840-a424-ad79f38d8408 - name: company_direct_deposit - title: Direct Deposit Authorization - description: We need you to sign paperwork to authorize us to debit and credit your bank account and file and pay your taxes. - draft: false - year: - quarter: - requires_signing: true - document_content_type: application/pdf - employee_form: - uuid: 48cdd5ec-a4dd-4840-a424-ad79f38d8408 - employee_uuid: c5fdae67-b148-4b52-8b33-1384024a1256 - name: w4_federal - title: 'Form W-4: 2024' - description: Form W-4 determines how much federal income tax your employer will withhold from your pay. - draft: false - year: 2024 - quarter: - requires_signing: true - document_content_type: application/pdf - quarterly_tax_form: - uuid: 7a2b9f3e-1c4d-4e5f-8a6b-2d3e4f5a6b7c - name: form_941 - title: 'Form 941: Q2 2024' - description: Employer's Quarterly Federal Tax Return for the second quarter of 2024. - draft: false - year: 2024 - quarter: 2 - requires_signing: false - document_content_type: application/pdf - sandbox_w2: - uuid: bf5b2496-26df-436e-b465-eae4ed5c8021 - employee_uuid: 19394e76-a866-4570-b237-9a26b0163907 - name: US_W-2 - title: 'Draft Form W-2: 2021' - description: Form W-2 records your annual wages and taxes. - draft: true - year: 2021 - quarter: - requires_signing: false - document_content_type: application/pdf - x-tags: - - Forms - required: - - uuid - Form_1099: - title: Form - type: object - properties: - uuid: - type: string - description: The UUID of the form - readOnly: true - name: - type: string - description: The type identifier of the form - readOnly: true - title: - type: string - description: The title of the form - readOnly: true - description: - type: string - description: The description of the form - readOnly: true - draft: - type: boolean - description: If the form is in a draft state. E.g. End of year tax forms may be provided in a draft state prior to being finalized. - readOnly: true - year: - type: - - integer - - 'null' - description: The year of this form. For some forms, e.g. tax forms, this is the year which the form represents. A 1099 for January - December 2022 would be delivered in January 2023 and have a year value of 2022. This value is nullable and will not be present on all forms. - readOnly: true - quarter: - type: - - integer - - 'null' - description: The quarter of this form. This value is currently always null since it is not present on any contractor forms. - readOnly: true - requires_signing: - type: boolean - description: A boolean flag that indicates whether the form needs signing or not. Note that this value will change after the form is signed. - readOnly: true - document_content_type: - "$ref": "#/components/schemas/Form-Document-Content-Type-Type" - contractor_uuid: - type: string - description: The contractor UUID - readOnly: true - x-examples: - Example: - uuid: 48cdd5ec-a4dd-4840-a424-ad79f38d8408 - name: US_1099 - title: 'Form 1099: 2020' - description: Form 1099 records your annual income as a contractor. - draft: false - requires_signing: false - year: 2020 - quarter: - document_content_type: application/pdf - contractor_uuid: 123dd616-6dbc-4724-938a-403f6217a933 - sandbox_1099: - uuid: 29afb141-2256-431d-90e0-1c7344222342 - contractor_uuid: b68484a9-4487-4ee5-bafc-4245133a426c - name: US_1099 - title: 'Form 1099: 2022' - description: Form 1099 records your annual income as a contractor. - draft: true - requires_signing: false - year: 2022 - quarter: - document_content_type: application/pdf - x-tags: - - Forms - required: - - uuid - Form-Pdf: - title: Form Pdf - type: object - properties: - uuid: - type: string - description: the UUID of the form - readOnly: true - document_url: - type: - - string - - 'null' - description: the URL of the form - document_content_type: - "$ref": "#/components/schemas/Form-Document-Content-Type-Type" - x-examples: - Example: - uuid: 48cdd5ec-a4dd-4840-a424-ad79f38d8408 - document_url: https://app.gusto-demo.com/assets/forms/7757842065202782/original/form.pdf?1633667020 - document_content_type: application/pdf - document_not_ready: - uuid: 48cdd5ec-a4dd-4840-a424-ad79f38d8408 - document_url: - document_content_type: - required: - - uuid - Document: - title: Document - type: object - properties: - uuid: - type: string - description: The UUID of the document - readOnly: true - title: - type: string - description: The title of the document - readOnly: true - name: - type: string - description: The type identifier of the document - readOnly: true - recipient_type: - type: string - description: The type of recipient associated with the document (will be `Contractor` for Contractor Documents) - enum: - - Company - - Employee - - Contractor - readOnly: true - recipient_uuid: - type: string - description: Unique identifier for the recipient associated with the document - readOnly: true - pages: - type: array - description: List of the document's pages and associated image URLs. This is only returned for documents with `required_signing` = `true`, and can be used for signing preparation. - items: - type: object - properties: - image_url: - type: string - description: Image URL for the page - page_number: - type: integer - description: Page number - readOnly: true - fields: - type: array - description: List of the document's fields and associated data. Values are set for auto-filled fields. This is only returned for documents with `required_signing` = `true`, and can be used for signing preparation. - items: - type: object - properties: - key: - type: - - string - - 'null' - description: Unique identifier of the field. May be null for custom fields that do not correspond to a known Gusto-managed key mapping. - value: - type: - - string - - 'null' - description: Auto-filled value of the field - x: - type: - - integer - - 'null' - description: X-coordinate location of the field on the page. May be null when the field has no positioning information. - "y": - type: - - integer - - 'null' - description: Y-coordinate location of the field on the page. May be null when the field has no positioning information. - width: - type: - - integer - - 'null' - description: Width of the field. May be null when the field has no positioning information. - height: - type: - - integer - - 'null' - description: Height of the field. May be null when the field has no positioning information. - page_number: - type: - - integer - - 'null' - description: Page number of the field. May be null when the field has no positioning information. - data_type: - type: string - description: The field's data type - required: - type: boolean - description: Whether the field is required - readOnly: true - signed_at: - type: - - string - - 'null' - description: When the document was signed (will be `null` if unsigned) - readOnly: true - description: - type: string - description: The description of the document - readOnly: true - requires_signing: - type: boolean - description: A boolean flag that indicates whether the document needs signing or not. Note that this value will change after the document is signed. - draft: - type: boolean - description: If the document is in a draft state - readOnly: true - year: - type: - - integer - - 'null' - description: The year of this document. This value is nullable and will not be present on all documents. - readOnly: true - quarter: - type: - - integer - - 'null' - description: The quarter of this document. This value is nullable and will not be present on all documents. - readOnly: true - x-examples: - Example: - uuid: e83b3c20-dc4f-4382-bee3-b478fc42c68b - title: Taxpayer Identification (Form W-9) - name: taxpayer_identification_form_w_9 - recipient_type: Contractor - recipient_uuid: f079c253-29e2-45e2-b384-2cc615c9c568 - pages: - - image_url: http://app.gusto-dev.com:3000/assets/document_templates/20/unmapped_template/images/0.jpg - page_number: 0 - - image_url: http://app.gusto-dev.com:3000/assets/document_templates/20/unmapped_template/images/1.jpg - page_number: 1 - fields: - - key: text1596141656513 - value: - x: 69 - "y": 94 - width: 261 - height: 13 - page_number: 0 - data_type: text - required: true - - key: optional_text1596141704672 - value: - x: 69 - "y": 118 - width: 262 - height: 13 - page_number: 0 - data_type: text - required: false - signed_at: - description: Form W-9, Request for Taxpayer Identification Number and Certification - requires_signing: true - draft: false - year: - quarter: - x-tags: - - Documents - Document-Signed: - title: Document Signed - type: object - properties: - uuid: - type: string - description: The UUID of the document - readOnly: true - title: - type: string - description: The title of the document - readOnly: true - name: - type: string - description: The type identifier of the document - readOnly: true - recipient_type: - type: string - description: The type of recipient associated with the document (will be `Contractor` for Contractor Documents) - enum: - - Company - - Employee - - Contractor - readOnly: true - recipient_uuid: - type: string - description: Unique identifier for the recipient associated with the document - readOnly: true - pages: - type: array - description: List of the document's pages and associated image URLs. - items: - type: object - properties: - image_url: - type: string - description: Image URL for the page - page_number: - type: integer - description: Page number - readOnly: true - fields: - type: array - description: List of the document's fields and associated data. Values reflect the data provided at signing. - items: - type: object - properties: - key: - type: - - string - - 'null' - description: Unique identifier of the field. May be null for custom fields that do not correspond to a known Gusto-managed key mapping. - value: - type: - - string - - 'null' - description: Value of the field - x: - type: - - integer - - 'null' - description: X-coordinate location of the field on the page. May be null when the field has no positioning information. - "y": - type: - - integer - - 'null' - description: Y-coordinate location of the field on the page. May be null when the field has no positioning information. - width: - type: - - integer - - 'null' - description: Width of the field. May be null when the field has no positioning information. - height: - type: - - integer - - 'null' - description: Height of the field. May be null when the field has no positioning information. - page_number: - type: - - integer - - 'null' - description: Page number of the field. May be null when the field has no positioning information. - data_type: - type: string - description: The field's data type - required: - type: boolean - description: Whether the field is required - readOnly: true - signed_at: - type: - - string - - 'null' - description: When the document was signed (will be `null` if unsigned) - readOnly: true - description: - type: string - description: The description of the document - readOnly: true - requires_signing: - type: boolean - description: A boolean flag that indicates whether the document needs signing or not. Note that this value will change after the document is signed. - draft: - type: boolean - description: If the document is in a draft state - readOnly: true - year: - type: - - integer - - 'null' - description: The year of this document. This value is nullable and will not be present on all documents. - readOnly: true - quarter: - type: - - integer - - 'null' - description: The quarter of this document. This value is nullable and will not be present on all documents. - readOnly: true - x-examples: - Example: - uuid: e83b3c20-dc4f-4382-bee3-b478fc42c68b - title: Taxpayer Identification (Form W-9) - name: taxpayer_identification_form_w_9 - recipient_type: Contractor - recipient_uuid: f079c253-29e2-45e2-b384-2cc615c9c568 - signed_at: '2024-09-03T16:39:22.000-07:00' - description: Form W-9, Request for Taxpayer Identification Number and Certification - requires_signing: false - draft: false - year: - quarter: - x-tags: - - Documents - Document-Pdf: - title: Document Pdf - type: object - properties: - uuid: - type: string - description: the UUID of the document - readOnly: true - document_url: - type: string - description: the URL of the document - x-examples: - Example: - uuid: e83b3c20-dc4f-4382-bee3-b478fc42c68b - document_url: https://app.gusto-demo.com/assets/personal_documents/23/original.pdf?1724367941 - x-tags: - - Documents - Industry: - title: Industry - type: object - properties: - company_uuid: - type: string - description: Company UUID - readOnly: true - title: - type: - - string - - 'null' - example: Computer Training - description: Industry title - readOnly: true - naics_code: - type: - - string - - 'null' - example: 611420 - description: North American Industry Classification System (NAICS) is used to classify businesses with a six digit number based on the primary type of work the business performs. - sic_codes: - type: array - description: A list of Standard Industrial Classification (SIC) codes, which are four digit numbers that categorize the industries that companies belong to based on their business activities. If sic_codes is not passed in, we will perform an internal lookup with `naics_code`. - items: - type: string - example: 8243 - x-examples: - Example: - company_uuid: 423dd616-6dbc-4724-938a-403f6217a933 - naics_code: '611420' - sic_codes: - - '8243' - title: Computer Training - success_status: - company_uuid: 423dd616-6dbc-4724-938a-403f6217a933 - naics_code: '231208' - sic_codes: - - '1500' - title: Construction - x-tags: - - Industry - Job: - title: Job - type: object - properties: - uuid: - type: string - description: The UUID of the job. - readOnly: true - version: - type: string - description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. - employee_uuid: - type: string - description: The UUID of the employee to which the job belongs. - readOnly: true - hire_date: - type: string - readOnly: false - description: The date when the employee was hired or rehired for the job. - title: - type: - - string - - 'null' - readOnly: false - default: - description: The title for the job. - primary: - type: boolean - description: Whether this is the employee's primary job. The value will be set to true unless an existing job exists for the employee. - readOnly: true - rate: - type: string - description: The employee's pay rate for this job (e.g., hourly wage or annual salary). This is sensitive compensation data and requires the `compensations:read` scope. - readOnly: true - payment_unit: - type: - - string - - 'null' - description: How the employee is paid for this job (e.g., Hour, Week, Month, Year, Paycheck). This is sensitive compensation data and requires the `compensations:read` scope. - readOnly: true - current_compensation_uuid: - type: string - description: The UUID of the current active compensation record for this job. Requires the `compensations:read` scope. - readOnly: true - two_percent_shareholder: - type: boolean - description: Whether the employee owns at least 2% of the company. - readOnly: false - state_wc_covered: - type: - - boolean - - 'null' - description: Whether this job is eligible for workers' compensation coverage in the state of Washington (WA). - readOnly: false - state_wc_class_code: - type: - - string - - 'null' - description: The risk class code for workers' compensation in Washington state. Please visit [Washington state's Risk Class page](https://www.lni.wa.gov/insurance/rates-risk-classes/risk-classes-for-workers-compensation/risk-class-lookup#/) to learn more. - readOnly: false - compensations: - type: array - description: The compensation history for this job, including pay rate, payment unit, FLSA status, and effective dates. This is sensitive pay information and requires the `compensations:read` scope. - items: - "$ref": "#/components/schemas/Compensation" - readOnly: true - location_uuid: - type: string - nullable: false - description: The uuid of the employee's work location. - location: - "$ref": "#/components/schemas/Location" - description: The representation of a job in Gusto. - required: - - uuid - x-examples: - example: - uuid: d6d1035e-8a21-4e1d-89d5-fa894f9aff97 - version: gr78930htutrz444kuytr3s5hgxykuveb523fwl8sir - employee_uuid: 948daac8-4355-4ece-9e2a-229898accb22 - hire_date: '2020-01-20' - title: Account Director - primary: true - rate: '78000.00' - payment_unit: Year - current_compensation_uuid: ea8b0b90-1112-4f9d-bb93-bf029bc8537a - two_percent_shareholder: false - state_wc_covered: - state_wc_class_code: - compensations: - - uuid: ea8b0b90-1112-4f9d-bb93-bf029bc8537a - version: 98jr3289h3298hr9329gf9egskt3tjaj - job_uuid: d6d1035e-8a21-4e1d-89d5-fa894f9aff97 - employee_uuid: 948daac8-4355-4ece-9e2a-229898accb22 - rate: '78000.00' - payment_unit: Year - flsa_status: Exempt - effective_date: '2020-01-20' - adjust_for_minimum_wage: false - minimum_wages: [] - secondary_job: - uuid: a1b2c3d4-5678-9012-abcd-ef1234567890 - version: hj29fh3298hf9832hf98h32f89h32f89h32f9832 - employee_uuid: 948daac8-4355-4ece-9e2a-229898accb22 - hire_date: '2020-01-20' - title: Senior Consultant - primary: false - rate: '25.00' - payment_unit: Hour - current_compensation_uuid: b2c3d4e5-6789-0123-bcde-f12345678901 - two_percent_shareholder: false - state_wc_covered: - state_wc_class_code: - compensations: - - uuid: b2c3d4e5-6789-0123-bcde-f12345678901 - version: 93jr2398h23r9832rg9832rg98ewrg98e - job_uuid: a1b2c3d4-5678-9012-abcd-ef1234567890 - employee_uuid: 948daac8-4355-4ece-9e2a-229898accb22 - rate: '25.00' - payment_unit: Hour - flsa_status: Nonexempt - effective_date: '2020-01-20' - adjust_for_minimum_wage: false - minimum_wages: [] - External-Payroll: - description: The representation of an external payroll. - type: object - x-tags: - - External Payrolls - title: '' - properties: - uuid: - type: string - description: The UUID of the external payroll. - readOnly: true - company_uuid: - type: string - description: The UUID of the company. - readOnly: true - check_date: - type: string - description: External payroll's check date. - readOnly: true - payment_period_start_date: - type: string - description: External payroll's pay period start date. - readOnly: true - payment_period_end_date: - type: string - description: External payroll's pay period end date. - readOnly: true - status: - type: string - enum: - - unprocessed - - processed - description: The status of the external payroll. The status will be `unprocessed` when the external payroll is created and transition to `processed` once tax liabilities are entered and finalized. Once in the `processed` status all actions that can edit an external payroll will be disabled. - readOnly: true - external_payroll_items: - type: array - description: External payroll items for employees - readOnly: true - items: - type: object - properties: - employee_uuid: - type: string - earnings: - type: array - items: - type: object - properties: - amount: - type: string - format: float - hours: - type: string - format: float - earning_type: - type: string - earning_id: - type: integer - benefits: - type: array - items: - type: object - properties: - benefit_id: - type: integer - company_contribution_amount: - type: string - format: float - employee_deduction_amount: - type: string - format: float - taxes: - type: array - items: - type: object - properties: - tax_id: - type: integer - amount: - type: string - format: float - applicable_earnings: - type: array - description: Applicable earnings based on company provisioning. - readOnly: true - items: - type: object - properties: - earning_type: - type: string - earning_id: - type: number - name: - type: string - input_type: - type: string - category: - type: string - applicable_benefits: - type: - - array - - 'null' - description: Applicable benefits based on company provisioning. - readOnly: true - items: - type: object - properties: - id: - type: integer - description: - type: string - active: - type: boolean - applicable_taxes: - type: array - description: Applicable taxes based on company provisioning. - readOnly: true - items: - type: object - properties: - id: - type: integer - name: - type: string - employer_tax: - type: boolean - description: Some taxes may have an amount withheld from the employee and an amount withheld from the employer, e.g. Social Security. A `true` value indicates this is the employer's amount. - resident_tax: - type: boolean - description: Some taxes may have different rates or reporting requirements depending on if the employee is a resident or non-resident of the tax jurisdiction. - metadata: - type: object - description: Stores metadata of the external payroll. - readOnly: true - properties: - deletable: - type: boolean - description: Determines if the external payroll can be deleted. - readOnly: true - x-examples: - Example: - uuid: c5fdae57-5483-4529-9aae-f0edceed92d4 - company_uuid: bcb305b0-2855-4025-8d22-e484a9e6b7c9 - check_date: '2022-06-03' - payment_period_start_date: '2022-05-15' - payment_period_end_date: '2022-05-30' - status: unprocessed - external_payroll_items: - - employee_uuid: 44f7cba9-7a3d-4f08-b7bd-6fcf5211f8ca - earnings: - - amount: 10000.0 - hours: 0.0 - earning_type: CompanyPayType - earning_id: 1 - - amount: 500.0 - hours: 0.0 - earning_type: CompanyEarningType - earning_id: 4 - benefits: - - benefit_id: 22 - company_contribution_amount: 100.0 - employee_deduction_amount: 50.0 - - benefit_id: 25 - company_contribution_amount: 0.0 - employee_deduction_amount: 300.0 - taxes: - - tax_id: 1 - amount: 400.0 - - tax_id: 2 - amount: 60.0 - applicable_earnings: - - earning_type: CompanyPayType - earning_id: 1 - name: Regular Wages - input_type: amount - category: default - - earning_type: CompanyEarningType - earning_id: 4 - name: Cash Tips - input_type: amount - category: default - applicable_benefits: - - id: 22 - description: Kaiser - active: true - - id: 25 - description: HSA - active: true - applicable_taxes: - - id: 1 - name: Federal Income Tax - employer_tax: false - resident_tax: false - - id: 2 - name: Social Security - employer_tax: false - resident_tax: false - metadata: - deletable: true - required: - - uuid - Webhook-Subscription: - description: The representation of webhook subscription. - type: object - x-tags: - - Webhooks - title: '' - properties: - uuid: - type: string - description: The UUID of the webhook subscription. - readOnly: true - url: - type: string - description: The webhook subscriber URL. Updates will be POSTed to this URL. - readOnly: true - status: - type: string - enum: - - pending - - verified - - removed - - unreachable - description: The status of the webhook subscription. - readOnly: true - subscription_types: - type: array - description: Receive updates for these types. - readOnly: false - items: - type: string - enum: - - BankAccount - - Company - - CompanyBenefit - - Contractor - - ContractorPayment - - Employee - - EmployeeBenefit - - EmployeeJobCompensation - - ExternalPayroll - - Form - - Location - - Notification - - Payroll - - PayrollSync - - PaySchedule - - Signatory - x-examples: - Example: - uuid: c5fdae57-5483-4529-9aae-f0edceed92d4 - url: https://partner-app.com/subscriber - status: verified - subscription_types: - - BankAccount - - Company - - CompanyBenefit - - Contractor - - ContractorPayment - - Employee - - EmployeeBenefit - - EmployeeJobCompensation - - ExternalPayroll - - Form - - Location - - Notification - - Payroll - - PayrollSync - - PaySchedule - - Signatory - Pending: - uuid: a1b2c3d4-5678-90ab-cdef-1234567890ab - url: https://partner-app.com/webhooks - status: pending - subscription_types: - - Company - - Employee - required: - - uuid - External-Payroll-Basic: - description: The representation of an external payroll with minimal information. - type: object - x-tags: - - External Payrolls - title: '' - properties: - uuid: - type: string - description: The UUID of the external payroll. - readOnly: true - company_uuid: - type: string - description: The UUID of the company. - readOnly: true - check_date: - type: string - description: External payroll's check date. - readOnly: true - payment_period_start_date: - type: string - description: External payroll's pay period start date. - readOnly: true - payment_period_end_date: - type: string - description: External payroll's pay period end date. - readOnly: true - status: - type: string - enum: - - unprocessed - - processed - description: The status of the external payroll. The status will be `unprocessed` when the external payroll is created and transition to `processed` once tax liabilities are entered and finalized. Once in the `processed` status all actions that can edit an external payroll will be disabled. - readOnly: true - x-examples: - Example: - uuid: c5fdae57-5483-4529-9aae-f0edceed92d4 - company_uuid: bcb305b0-2855-4025-8d22-e484a9e6b7c9 - check_date: '2022-06-03' - payment_period_start_date: '2022-05-15' - payment_period_end_date: '2022-05-30' - status: unprocessed - required: - - uuid - External-Payroll-Tax-Suggestions: - description: The representation of an external payroll with minimal information. - type: object - x-tags: - - External Payrolls - title: '' - properties: - employee_uuid: - type: string - description: The UUID of the employee. - readOnly: true - tax_suggestions: - type: array - description: Possible tax liabilities selections. - readOnly: true - items: - type: object - properties: - tax_id: - type: integer - description: The ID of the tax. - readOnly: true - amount: - type: string - description: Calculated tax amount. - readOnly: true - x-examples: - Example: - employee_uuid: d21848d5-446f-48a8-9430-30fbefeabda4 - tax_suggestions: - - tax_id: 1 - amount: '500.0' - - tax_id: 2 - amount: '100.0' - - tax_id: 4 - amount: '30.0' - Tax-Liabilities-Selections: - description: The representation of tax liabilities selections. - x-tags: - - External Payrolls - title: '' - type: object - properties: - tax_id: - type: integer - description: The ID of the tax. - readOnly: true - tax_name: - type: string - description: The name of the tax. - readOnly: true - description: - type: - - string - - 'null' - description: A description of the tax, providing additional detail about the tax type. - readOnly: true - last_unpaid_external_payroll_uuid: - type: - - string - - 'null' - description: The UUID of last unpaid external payroll. - readOnly: true - possible_liabilities: - type: array - description: Possible tax liabilities selections. - readOnly: true - items: - type: object - properties: - liability_amount: - type: string - description: Liability amount. - readOnly: true - payroll_check_date: - type: - - string - - 'null' - description: The external payroll check date. - readOnly: true - external_payroll_uuid: - type: - - string - - 'null' - description: The UUID of the external payroll. - readOnly: true - x-examples: - Example: - tax_id: 1 - tax_name: Federal Income Tax - description: Employee Federal Income Tax - last_unpaid_external_payroll_uuid: - possible_liabilities: - - liability_amount: '0.0' - payroll_check_date: - external_payroll_uuid: - - liability_amount: '3000.0' - payroll_check_date: '2022-06-01' - external_payroll_uuid: 1bf1efe1-72d4-4e6e-a181-611f3ea66435 - Admin: - title: Admin - type: object - description: The representation of an admin user in Gusto. - x-examples: - Example: - uuid: 987058cc-23ee-46e9-81ef-5cee086cceca - first_name: John - last_name: Smith - email: jsmith99@gmail.com - phone: '8009360383' - properties: - uuid: - type: string - description: The unique id of the admin. - email: - type: string - description: The email of the admin for Gusto's system. - first_name: - type: string - description: The first name of the admin. - last_name: - type: string - description: The last name of the admin. - phone: - type: - - string - - 'null' - description: The phone number of the admin. - x-tags: - - Admins - required: - - uuid - Company: - title: Company - type: object - description: The representation of a company in Gusto. - properties: - ein: - type: string - description: The Federal Employer Identification Number of the company. - readOnly: true - entity_type: - type: - - string - - 'null' - description: The tax payer type of the company. - enum: - - C-Corporation - - S-Corporation - - Sole proprietor - - LLC - - LLP - - Limited partnership - - Co-ownership - - Association - - Trusteeship - - General partnership - - Joint venture - - Non-Profit - readOnly: true - contractor_only: - type: boolean - description: Whether the company only supports contractors. - tier: - type: - - string - - 'null' - description: The Gusto product tier of the company (not applicable to Embedded partner managed companies). - readOnly: true - enum: - - simple - - plus - - premium - - core - - complete - - concierge - - contractor_only - - basic - is_suspended: - type: boolean - description: Whether or not the company is suspended in Gusto. Suspended companies may not run payroll. - company_status: - type: string - description: The status of the company in Gusto. "Approved" companies are approved to run payroll from a risk and compliance perspective. However, an approved company may still need to resolve other [payroll blockers](https://docs.gusto.com/embedded-payroll/docs/payroll-blockers) to be able to run payroll. "Not Approved" companies may not yet run payroll with Gusto and may need to complete onboarding or contact support. "Suspended" companies may not run payroll with Gusto. In order to unsuspend their account, the company must contact support. - enum: - - Approved - - Not Approved - - Suspended - readOnly: true - uuid: - type: string - description: A unique identifier of the company in Gusto. - readOnly: true - name: - type: string - description: The name of the company. - readOnly: true - slug: - type: string - description: The slug of the name of the company. - readOnly: true - trade_name: - type: - - string - - 'null' - description: The trade name of the company. - readOnly: true - is_partner_managed: - type: boolean - description: Whether the company is fully managed by a partner via the API - readOnly: true - is_high_risk_business: - type: boolean - description: Whether or not Gusto has identified the company as representing a high fraud risk. - readOnly: true - is_marijuana_business: - type: boolean - description: Whether or not the company is a marijuana-related business. - readOnly: true - pay_schedule_type: - anyOf: - - type: string - enum: - - single - - hourly_salaried - - by_employee - - by_department - - type: 'null' - description: The pay schedule assignment type. - readOnly: true - join_date: - type: - - string - - 'null' - description: Company's first invoiceable event date - readOnly: true - funding_type: - type: - - string - - 'null' - description: Company's default funding type - enum: - - ach - - reverse_wire - - wire_in - - brex - locations: - type: array - uniqueItems: false - description: The locations of the company. - items: - "$ref": "#/components/schemas/Company-Address" - readOnly: true - compensations: - type: object - description: The available company-wide compensation rates for the company. - properties: - hourly: - type: array - uniqueItems: true - description: The available hourly compensation rates for the company. - items: - type: object - properties: - uuid: - type: - - string - - 'null' - description: The UUID of the hourly compensation rate. - readOnly: true - name: - type: string - description: The name of the hourly compensation rate. - example: Overtime - readOnly: true - multiple: - type: number - description: The amount multiplied by the base rate of a job to calculate compensation. - example: 1.5 - readOnly: true - readOnly: true - readOnly: true - fixed: - type: array - uniqueItems: true - description: The available fixed compensation rates for the company. - items: - type: object - properties: - uuid: - type: - - string - - 'null' - description: The UUID of the fixed compensation. - readOnly: true - name: - type: string - description: The name of the fixed compensation. - example: Bonus - readOnly: true - readOnly: true - paid_time_off: - type: array - uniqueItems: true - description: The available types of paid time off for the company. - items: - type: object - properties: - uuid: - type: - - string - - 'null' - description: The UUID of the paid time off type. - readOnly: true - name: - type: string - example: Vacation Hours - description: The name of the paid time off type. - readOnly: true - readOnly: true - readOnly: true - readOnly: true - primary_signatory: - type: - - object - - 'null' - description: The primary signatory of the company. - properties: - uuid: - type: string - readOnly: true - description: The UUID of the company's primary signatory. - first_name: - type: string - readOnly: true - description: The company's primary signatory's first name. - middle_initial: - type: - - string - - 'null' - readOnly: true - description: The company's primary signatory's middle initial. - last_name: - type: string - readOnly: true - description: The company's primary signatory's last name. - phone: - type: string - readOnly: true - description: The company's primary signatory's phone number. - email: - type: string - readOnly: true - description: The company's primary signatory's email address. - home_address: - type: object - properties: - street_1: - type: string - readOnly: true - street_2: - type: - - string - - 'null' - readOnly: true - city: - type: string - readOnly: true - state: - type: string - readOnly: true - zip: - type: string - readOnly: true - country: - type: string - readOnly: true - readOnly: true - description: The company's primary signatory's home address. - readOnly: true - primary_payroll_admin: - type: object - description: The primary payroll admin of the company. - properties: - first_name: - type: string - readOnly: true - description: The company's primary payroll admin's first name. - last_name: - type: string - readOnly: true - description: The company's primary payroll admin's last name. - phone: - type: - - string - - 'null' - readOnly: true - description: The company's primary payroll admin's phone number. - email: - type: string - readOnly: true - description: The company's primary payroll admin's email address. - x-examples: - success_status: - uuid: c7a07c73-a703-4462-9343-1b181182b6e0 - name: Shoppe Studios LLC - trade_name: Record Shoppe - is_partner_managed: true - tier: complete - locations: - - street_1: 412 Kiera Stravenue - street_2: Suite 391 - city: San Francisco - state: CA - zip: '94107' - country: USA - active: true - - street_1: 644 Fay Vista - street_2: Suite 842 - city: Richmond - state: VA - zip: '23218' - country: USA - active: true - ein: 00-0000001 - entity_type: C-Corporation - pay_schedule_type: by_department - join_date: '2024-01-15' - funding_type: ach - slug: shoppe-studios-llc - is_suspended: false - company_status: Approved - is_high_risk_business: false - is_marijuana_business: false - contractor_only: false - compensations: - hourly: - - uuid: 7da6b57d-22f9-11f1-ad28-0242ac100003 - name: Overtime - multiple: 1.5 - - uuid: 7da6b5ec-22f9-11f1-ad28-0242ac100003 - name: Double overtime - multiple: 2 - - uuid: 7da6b22f-22f9-11f1-ad28-0242ac100003 - name: Regular - multiple: 1 - - uuid: 7da6b3ac-22f9-11f1-ad28-0242ac100003 - name: Outstanding vacation - multiple: 1 - - uuid: 7da6b532-22f9-11f1-ad28-0242ac100003 - name: Holiday - multiple: 1 - - uuid: 7da6b44e-22f9-11f1-ad28-0242ac100003 - name: Emergency sick - self care - multiple: 1 - - uuid: 7da6b49d-22f9-11f1-ad28-0242ac100003 - name: Emergency sick - caring for others - multiple: 1 - - uuid: 7da6b4e6-22f9-11f1-ad28-0242ac100003 - name: FMLA Public Health Emergency Leave - multiple: 1 - fixed: - - uuid: 7da68d82-22f9-11f1-ad28-0242ac100003 - name: Bonus - - uuid: 7da69024-22f9-11f1-ad28-0242ac100003 - name: Commission - - uuid: 7da69104-22f9-11f1-ad28-0242ac100003 - name: Paycheck Tips - - uuid: 7da6918f-22f9-11f1-ad28-0242ac100003 - name: Cash Tips - - uuid: 7da69216-22f9-11f1-ad28-0242ac100003 - name: Correction Payment - - uuid: 7da692a6-22f9-11f1-ad28-0242ac100003 - name: Severance - - uuid: 7da69356-22f9-11f1-ad28-0242ac100003 - name: Minimum Wage Adjustment - - uuid: - name: Reimbursement - paid_time_off: - - uuid: 7dcdcb77-22f9-11f1-ad28-0242ac100003 - name: Vacation Hours - - uuid: 7dcdcc8b-22f9-11f1-ad28-0242ac100003 - name: Sick Hours - - uuid: - name: Holiday Hours - primary_signatory: - uuid: 2d7cd96f-e2fb-4db7-8c04-99ef531b4527 - first_name: Alda - middle_initial: '' - last_name: Carter - phone: '4160000000' - email: louie.hessel7757869450111547@zemlak.biz - home_address: - street_1: 524 Roob Divide - street_2: Suite 565 - city: San Francisco - state: CA - zip: '94107' - country: USA - primary_payroll_admin: - first_name: Ian - last_name: Labadie - phone: 1-565-710-7559 - email: louie.hessel7757869450111547@zemlak.biz - x-tags: - - Companies - required: - - uuid - Company-Onboarding-Status: - description: The representation of a company's onboarding status - type: object - title: '' - x-examples: - Example: - uuid: c44d66dc-c41b-4a60-9e25-5e93ff8583f2 - onboarding_completed: false - onboarding_steps: - - title: Add Your Company's Addresses - id: add_addresses - required: true - completed: true - completed_at: '2025-02-18T10:00:00Z' - skippable: false - requirements: [] - - title: Enter Your Federal Tax Information - id: federal_tax_setup - required: true - completed: true - completed_at: '2025-02-18T10:00:00Z' - skippable: false - requirements: [] - - title: Select Industry - id: select_industry - required: true - completed: true - completed_at: '2025-02-18T10:00:00Z' - skippable: false - requirements: [] - - title: Add Your Bank Account - id: add_bank_info - required: true - completed: true - completed_at: '2025-02-18T10:00:00Z' - skippable: false - requirements: [] - - title: Add Your Employees - id: add_employees - required: true - completed: true - completed_at: '2025-02-18T10:00:00Z' - skippable: true - requirements: - - add_addresses - - title: Enter Your State Tax Information - id: state_setup - required: true - completed: false - completed_at: - skippable: false - requirements: - - add_addresses - - add_employees - - title: Select a Pay Schedule - id: payroll_schedule - required: true - completed: false - completed_at: - skippable: false - requirements: [] - - title: Sign Documents - id: sign_all_forms - required: true - completed: false - completed_at: - skippable: false - requirements: - - add_employees - - federal_tax_setup - - state_setup - - add_bank_info - - payroll_schedule - - title: Verify Your Bank Account - id: verify_bank_info - required: true - completed: false - completed_at: - skippable: false - requirements: - - add_bank_info - x-tags: - - Companies - properties: - uuid: - type: string - description: the UUID of the company - onboarding_completed: - type: boolean - description: a boolean flag for the company's onboarding status - onboarding_steps: - type: array - description: a list of company onboarding steps - items: - title: Onboarding step - type: object - properties: - title: - type: string - description: The display name of the onboarding step - id: - type: string - description: The string identifier for each onboarding step - enum: - - add_addresses - - federal_tax_setup - - select_industry - - add_bank_info - - add_employees - - state_setup - - payroll_schedule - - sign_all_forms - - verify_bank_info - - external_payroll - required: - type: boolean - description: The boolean flag indicating whether the step is required or optional - completed: - type: boolean - description: The boolean flag indicating whether the step is completed or not. - completed_at: - type: - - string - - 'null' - description: The ISO 8601 timestamp indicating when the onboarding step was completed. - skippable: - type: boolean - description: The boolean flag indicating whether the step can be skipped or not. - requirements: - type: array - description: A list of onboarding steps that are required to be completed in order to proceed with the current onboarding step. - items: - type: string - enum: - - add_addresses - - federal_tax_setup - - select_industry - - add_bank_info - - add_employees - - state_setup - - payroll_schedule - - sign_all_forms - - verify_bank_info - - external_payroll - required: - - uuid - Payment-Configs: - title: Payment-Configs - type: object - properties: - company_uuid: - type: string - description: Company uuid - readOnly: true - partner_uuid: - type: string - description: Partner uuid - readOnly: true - fast_payment_limit: - type: - - string - - 'null' - description: Payment limit for 1-day or 2-day payroll (string representation of decimal). - readOnly: true - payment_speed: - type: string - enum: - - 1-day - - 2-day - - 4-day - description: | - Payment speed. READ-ONLY. - - `1-day`: Next-day ACH (only for partners that opt in). - - `2-day`: Two-day ACH. - - `4-day`: Standard ACH. - readOnly: true - partner_owned_disbursement: - type: boolean - description: Whether the company is configured to use the partner-owned disbursement payment rail - readOnly: true - earned_fast_ach_blockers: - type: array - description: Blockers preventing the company from earning fast ACH payments - readOnly: true - items: - type: object - properties: - blocker_type: - type: string - description: The type of blocker - enum: - - minimum_days - - minimum_funded_payments - readOnly: true - threshold: - type: number - description: The threshold needed to unblock - readOnly: true - x-examples: - typical_payment_config: - company_uuid: 423dd616-6dbc-4724-938a-403f6217a933 - partner_uuid: 556f05d0-48e0-4c47-bce5-db9aea923043 - fast_payment_limit: '5000.0' - payment_speed: 2-day - partner_owned_disbursement: false - earned_fast_ach_blockers: [] - payment_config_with_blockers: - company_uuid: 423dd616-6dbc-4724-938a-403f6217a933 - partner_uuid: 556f05d0-48e0-4c47-bce5-db9aea923043 - fast_payment_limit: - payment_speed: 2-day - partner_owned_disbursement: false - earned_fast_ach_blockers: - - blocker_type: minimum_days - threshold: 15 - - blocker_type: minimum_funded_payments - threshold: 5 - x-tags: - - Payment Configs - Contractor-Body: - type: object - properties: - type: - type: string - description: The contractor type. - default: Individual - enum: - - Individual - - Business - wage_type: - type: string - description: 'The contractor’s wage type. - -' - enum: - - Fixed - - Hourly - start_date: - type: string - description: 'The day when the contractor will start working for the company. - -' - example: '2020-01-11' - hourly_rate: - type: string - description: The contractor’s hourly rate. This attribute is required if the wage_type is `Hourly`. - example: '40.0' - self_onboarding: - type: boolean - default: false - description: |- - Whether the contractor or the payroll admin will complete onboarding in Gusto. - Self-onboarding is recommended so that contractors receive Gusto accounts. - If self_onboarding is true, then email is required. - email: - type: string - description: The contractor’s email address. - first_name: - type: string - description: |- - The contractor’s first name. - This attribute is required for `Individual` contractors and will be ignored for `Business` contractors. - last_name: - type: string - description: |- - The contractor’s last name. - This attribute is required for `Individual` contractors and will be ignored for `Business` contractors. - middle_initial: - type: string - description: |- - The contractor’s middle initial. - This attribute is optional for `Individual` contractors and will be ignored for `Business` contractors. - file_new_hire_report: - type: boolean - default: false - description: |- - The boolean flag indicating whether Gusto will file a new hire report for the contractor. - This attribute is optional for `Individual` contractors and will be ignored for `Business` contractors. - work_state: - type: - - string - - 'null' - description: |- - 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. - This attribute is required for `Individual` contractors if `file_new_hire_report` is true and will be ignored for `Business` contractors. - ssn: - type: string - pattern: "[0-9]{9}" - description: |- - This attribute is optional for `Individual` contractors and will be ignored for `Business` contractors. - Social security number is needed to file the annual 1099 tax form. - business_name: - type: string - description: The name of the contractor business. This attribute is required for `Business` contractors and will be ignored for `Individual` contractors. - ein: - type: string - description: |- - The employer identification number of the contractor business. - This attribute is optional for `Business` contractors and will be ignored for `Individual` contractors. - is_active: - type: boolean - description: The status of the contractor. If the contractor's start date is in the future, updating this field to true means we are setting the start date to today. Attempting to deactivate a contractor while a dismissal is already scheduled, or reactivate while a rehire is already scheduled, will return a 422 error. Cancel the pending transition first using the appropriate cancel endpoint. - Contractor: - description: The representation of a contractor (individual or business) in Gusto. - type: object - properties: - uuid: - type: string - description: The UUID of the contractor in Gusto. - readOnly: true - company_uuid: - type: string - description: The UUID of the company the contractor is employed by. - readOnly: true - wage_type: - type: string - enum: - - Fixed - - Hourly - description: The contractor's wage type, either "Fixed" or "Hourly". - is_active: - type: boolean - default: true - description: The status of the contractor with the company. - readOnly: true - version: - type: string - description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. - type: - type: string - enum: - - Individual - - Business - description: 'The contractor''s type, either "Individual" or "Business". ' - first_name: - type: - - string - - 'null' - description: The contractor’s first name. This attribute is required for “Individual” contractors and will be ignored for “Business” contractors. - last_name: - type: - - string - - 'null' - description: The contractor’s last name. This attribute is required for “Individual” contractors and will be ignored for “Business” contractors. - middle_initial: - type: - - string - - 'null' - description: The contractor’s middle initial. This attribute is optional for “Individual” contractors and will be ignored for “Business” contractors. - business_name: - type: - - string - - 'null' - description: The name of the contractor business. This attribute is required for “Business” contractors and will be ignored for “Individual” contractors. - ein: - type: - - string - - 'null' - description: The Federal Employer Identification Number of the contractor business. This attribute is optional for “Business” contractors and will be ignored for “Individual” contractors. - has_ein: - type: - - boolean - - 'null' - description: Whether company's Employer Identification Number (EIN) is present - email: - type: - - string - - 'null' - description: 'The contractor’s email address. This attribute is optional for “Individual” contractors and will be ignored for “Business” contractors. ' - start_date: - type: string - description: The contractor's start date. - readOnly: true - address: - type: - - object - - 'null' - description: The contractor’s home address. - properties: - street_1: - type: string - readOnly: true - street_2: - type: - - string - - 'null' - readOnly: true - city: - type: string - readOnly: true - state: - type: string - readOnly: true - zip: - type: string - readOnly: true - country: - type: string - readOnly: true - readOnly: true - hourly_rate: - type: string - example: '50.0' - description: The contractor’s hourly rate. This attribute is required if the wage_type is “Hourly”. - file_new_hire_report: - type: - - boolean - - 'null' - description: The boolean flag indicating whether Gusto will file a new hire report for the contractor - work_state: - type: - - string - - 'null' - description: |- - 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. - onboarded: - type: boolean - description: The updated onboarding status for the contractor - onboarding_status: - type: string - description: One of the "onboarding_status" enum values. - enum: - - admin_onboarding_incomplete - - admin_onboarding_review - - self_onboarding_not_invited - - self_onboarding_invited - - self_onboarding_started - - self_onboarding_review - - onboarding_completed - payment_method: - anyOf: - - type: string - enum: - - Direct Deposit - - Check - - type: 'null' - description: The contractor's payment method. - has_ssn: - type: boolean - description: Indicates whether the contractor has an SSN in Gusto. - department_uuid: - type: - - string - - 'null' - description: The UUID of the department the contractor is under - department: - type: - - string - - 'null' - description: The contractor's department in the company. - readOnly: true - department_title: - type: - - string - - 'null' - description: The title of the contractor's department. - readOnly: true - dismissal_date: - type: - - string - - 'null' - description: The contractor's dismissal date. - readOnly: true - upcoming_employment: - type: - - object - - 'null' - description: The contractor's upcoming employment details, if a rehire is scheduled. - readOnly: true - properties: - start_date: - type: string - description: The start date of the upcoming employment. - setup_status: - type: - - string - - 'null' - description: The setup status of the upcoming employment. - dismissal_cancellation_eligible: - type: boolean - description: Whether the contractor's pending dismissal can be cancelled. - readOnly: true - rehire_cancellation_eligible: - type: boolean - description: Whether the contractor's pending rehire can be cancelled. - readOnly: true - member_portal_invitation_status: - type: - - object - - 'null' - description: Member portal invitation status information. Only included when the include param has the portal_invitations value set. - properties: - status: - type: string - description: The current status of the member portal invitation. - enum: - - pending - - sent - - verified - - complete - - cancelled - token_expired: - type: - - boolean - - 'null' - description: Whether the invitation token has expired. - welcome_email_sent_at: - type: - - string - - 'null' - format: date-time - description: The date and time when the welcome email was sent. - last_password_resent_at: - type: - - string - - 'null' - format: date-time - description: The date and time when the password reset was last resent. - partner_portal_invitation_sent: - type: - - boolean - - 'null' - description: Whether an external partner portal invitation webhook has been sent for this contractor. Only included when the include param has the portal_invitations value set. - x-tags: - - Contractors - required: - - uuid - x-examples: - Individual Contractor: - uuid: c9fc1ad3-c107-4e7b-aa21-2dd4b00a7a07 - company_uuid: b7457fec-3b76-43bb-9c6e-69cca4688942 - wage_type: Hourly - start_date: '2022-01-01' - is_active: true - version: 63859768485e218ccf8a449bb60f14ed - type: Individual - first_name: Kory - last_name: Gottlieb - middle_initial: P - business_name: - ein: - has_ein: false - has_ssn: true - department_uuid: 56260b3d-c375-415c-b77a-75d99f717193 - email: keira.west@mckenzie.org - file_new_hire_report: true - work_state: FL - onboarded: true - onboarding_status: onboarding_completed - address: - street_1: 621 Jast Row - street_2: Apt. 281 - city: Coral Springs - state: FL - zip: '33065' - country: USA - hourly_rate: '60.00' - payment_method: Direct Deposit - department: Engineering - department_title: Engineering - dismissal_date: - upcoming_employment: - dismissal_cancellation_eligible: false - rehire_cancellation_eligible: false - member_portal_invitation_status: - status: sent - token_expired: false - welcome_email_sent_at: '2024-01-15T14:30:00Z' - last_password_resent_at: - partner_portal_invitation_sent: true - Business Contractor: - uuid: c7c0659c-21a6-4b4e-b74c-9252576fc68c - company_uuid: 0ec4ae6e-e436-460d-b63c-94a14503d16f - wage_type: Fixed - start_date: '2022-01-01' - is_active: true - version: 8aab307f1e8ed788697f8986346af559 - type: Business - first_name: - last_name: - middle_initial: - business_name: Labadie-Stroman - ein: XX-XXX0001 - has_ein: true - has_ssn: false - email: jonatan@kerluke.info - file_new_hire_report: false - work_state: - onboarded: true - onboarding_status: onboarding_completed - address: - street_1: 1625 Bednar Center - street_2: Apt. 480 - city: Port Charlotte - state: FL - zip: '33954' - country: USA - hourly_rate: '0.00' - payment_method: Direct Deposit - department_uuid: - department: - department_title: - dismissal_date: - upcoming_employment: - dismissal_cancellation_eligible: false - rehire_cancellation_eligible: false - member_portal_invitation_status: - partner_portal_invitation_sent: false - Contractor-Onboarding-Status: - description: The representation of an contractor's onboarding status. +components: + schemas: + Versionable-Required: type: object - title: Contractor-Onboarding-Status - x-tags: - - Contractor - x-examples: - example: - uuid: bc57832c-d8bc-43a7-ae99-3a03380ff037 - onboarding_status: admin_onboarding_incomplete - onboarding_steps: - - title: Basic details - id: basic_details - required: true - completed: false - requirements: [] - - title: Enter compensation details - id: compensation_details - required: true - completed: false - requirements: [] - - title: Add an address - id: add_address - required: true - completed: false - requirements: [] - - title: Payment details - id: payment_details - required: true - completed: false - requirements: [] - - title: Sign and acknowledge documents - id: sign_documents - required: false - completed: false - requirements: - - basic_details - - add_address - - title: File new hire report - id: file_new_hire_report - required: false - completed: false - requirements: - - basic_details properties: - uuid: - type: string - description: Unique identifier for this contractor. - onboarding_status: + version: type: string - description: One of the "onboarding_status" enum values. - enum: - - onboarding_completed - - admin_onboarding_review - - admin_onboarding_incomplete - - self_onboarding_not_invited - - self_onboarding_invited - - self_onboarding_started - - self_onboarding_review - onboarding_steps: - type: array - description: List of steps required to onboard a contractor. - items: - title: Onboarding step - type: object - properties: - title: - type: string - description: User-friendly description of the onboarding step. - id: - type: string - description: String identifier for the onboarding step. - required: - type: boolean - description: When true, this step is required. - completed: - type: boolean - description: When true, this step has been completed. - requirements: - type: array - description: A list of onboarding steps required to begin this step. - items: - type: string + example: 56d00c178bc7393b2a206ed6a86afcb4 + description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. required: - - uuid - Contractor-Payment: - description: The representation of a single contractor payment. - type: object + - version + Minimum-Wage-List: + type: array x-examples: success_status: - uuid: 04552eb9-7829-4b18-ae96-6983552948df - contractor_uuid: bc57832c-d8bc-43a7-ae99-3a03380ff037, - bonus: '20.0' - date: '2020-10-19' - hours: '40.0' - payment_method: Direct Deposit - reimbursement: '100.0' - hourly_rate: '18.0' - may_cancel: true - status: Funded - wage: '0.0' - wage_type: Hourly - wage_total: '740.00' - example: - uuid: 04552eb9-7829-4b18-ae96-6983552948df - contractor_uuid: bc57832c-d8bc-43a7-ae99-3a03380ff037 - bonus: '20.0' - date: '2020-10-19' - hours: '40.0' - payment_method: Direct Deposit - reimbursement: '100.0' - hourly_rate: '18.0' - may_cancel: false - status: Funded - wage: '0.0' - wage_type: Hourly - wage_total: '740.00' - title: Contractor Payment - properties: - uuid: - type: string - description: The unique identifier of the contractor payment in Gusto. - readOnly: true - contractor_uuid: - type: string - description: The UUID of the contractor. - readOnly: true - bonus: - type: string - format: float - description: The bonus amount in the payment. - readOnly: true - date: - type: string - description: The payment date. - readOnly: true - hours: - type: string - format: float - description: The number of hours worked for the payment. - readOnly: true - payment_method: - type: string - description: The payment method. - enum: - - Direct Deposit - - Check - - Historical Payment - - Correction Payment - readOnly: true - reimbursement: - type: string - format: float - description: The reimbursement amount in the payment. - readOnly: true - status: - type: string - description: Contractor payment status - enum: - - Funded - - Unfunded - hourly_rate: - type: string - format: float - description: The rate per hour worked for the payment. - readOnly: true - may_cancel: - type: boolean - description: Determine if the contractor payment can be cancelled. - readOnly: true - wage: - type: string - format: float - description: The fixed wage of the payment, regardless of hours worked. - readOnly: true - wage_type: - type: string - description: The wage type for the payment. - enum: - - Hourly - - Fixed - readOnly: true - wage_total: - type: string - format: float - description: "(hours * hourly_rate) + wage + bonus" - readOnly: true - x-tags: - - Contractor Payments - required: - - uuid - Contractor-Payment-Group: - description: The full contractor payment group, including associated contractor payments. - type: object - allOf: - - "$ref": "#/components/schemas/Contractor-Payment-Group-Base" - - type: object - properties: - partner_owned_disbursement: - type: - - boolean - - 'null' - description: Whether the disbursement is partner owned. - readOnly: true - submission_blockers: - type: array - description: List of submission blockers for the contractor payment group. - readOnly: true - items: - "$ref": "#/components/schemas/Payroll-Submission-Blocker-Type" - credit_blockers: - type: array - description: List of credit blockers for the contractor payment group. - readOnly: true - items: - "$ref": "#/components/schemas/Payroll-Credit-Blocker-Type" - totals: - type: object - properties: - amount: - type: string - description: The total amount for the group of contractor payments. - readOnly: true - debit_amount: - type: string - description: The total debit amount for the group of contractor payments. Sum of wage & reimbursement amount. - readOnly: true - wage_amount: - type: string - description: The total wage amount for the group of contractor payments. - readOnly: true - reimbursement_amount: - type: string - description: The total reimbursement amount for the group of contractor payments. - readOnly: true - check_amount: - type: string - description: The total check amount for the group of contractor payments. - readOnly: true - readOnly: true - contractor_payments: - type: array - items: - "$ref": "#/components/schemas/Contractor-Payment-For-Group" - x-examples: - success: - uuid: f693e034-d833-46e3-88d4-2c820c383c57 - company_uuid: c54046f7-1be4-4c54-8194-f4842c30c86d - check_date: '2024-05-07' - debit_date: '2024-05-01' - status: Unfunded - creation_token: 45ef81bb-ae24-4ad1-b2c6-6e563a4c30ed - contractor_payments: - - uuid: 630dc982-f498-4ebc-a6dc-4d76711027ce - contractor_uuid: 2e6d0970-31bf-47ce-bdb4-713e4207ecf4 - bonus: '0.0' - hours: '40.0' - hourly_rate: '18.0' - may_cancel: false - payment_method: Direct Deposit - reimbursement: '75.0' - status: Unfunded - wage: '0.0' - wage_type: Hourly - wage_total: '720.0' - - uuid: 12f51eba-d653-4357-8c05-1f1f8d0fd5e3 - contractor_uuid: a975fda0-fcf5-469a-a5fd-06e43d1cd99d - bonus: '0.0' - hours: '0.0' - hourly_rate: '0.0' - may_cancel: false - payment_method: Check - reimbursement: '0.0' - status: Unfunded - wage: '1500.0' - wage_type: Fixed - wage_total: '1500.0' - totals: - amount: '2295.0' - debit_amount: '2295.0' - wage_amount: '2220.0' - reimbursement_amount: '75.0' - With submission blockers: - uuid: 5ec3b582-7d04-4397-be1e-f0e79d00e1b7 - company_uuid: 4a39b249-1e22-4fc9-a40f-cb07d2ab394e - check_date: '2025-08-21' - debit_date: '2025-08-19' - status: Unfunded - creation_token: 5ec3b582-7d04-4397-be1e-f0e79d00e1b7 - partner_owned_disbursement: false - submission_blockers: - - blocker_type: fast_ach_threshold_exceeded - blocker_name: Fast ACH Threshold Exceeded - selected_option: wire_in - status: resolved - unblock_options: - - unblock_type: wire_in - check_date: '2025-08-21' - metadata: - wire_in_deadline: '2025-08-21T18:00:00Z' - wire_in_amount: '760000.0' - - unblock_type: move_to_four_day - check_date: '2025-08-21' - metadata: - debit_date: '2025-08-15' - credit_blockers: - - blocker_type: waiting_for_wire_in - blocker_name: Waiting for Wire In - selected_option: submit_wire - status: unresolved - unblock_options: - - unblock_type: submit_wire - check_date: '2025-08-21' - metadata: - wire_in_deadline: '2025-08-21T18:00:00Z' - wire_in_amount: '760000.0' - wire_in_request_uuid: 7a31fef8-46c6-4114-9677-214b7a3cb532 - contractor_payments: - - uuid: ca8c7899-c2dc-40bb-8b7e-08c1309f5135 - contractor_uuid: b4c6cd3c-4b45-4738-ad40-3da45b29a765 - bonus: '0.0' - hours: '0.0' - hourly_rate: '0.0' - may_cancel: false - payment_method: Direct Deposit - reimbursement: '750000.0' - status: Unfunded - wage: '10000.0' - wage_type: Fixed - wage_total: '10000.0' - totals: - amount: '760000.00' - debit_amount: '760000.00' - wage_amount: '10000.00' - reimbursement_amount: '750000.00' - check_amount: '0.00' - x-tags: - - Contractor Payment Groups - Contractor-Payment-Group-Minimal: - description: The summary of a contractor payment group. - type: object - allOf: - - "$ref": "#/components/schemas/Contractor-Payment-Group-Base" - - type: object - properties: - totals: - type: object - properties: - amount: - type: string - description: The total amount for the group of contractor payments. - readOnly: true - debit_amount: - type: string - description: The total debit amount for the group of contractor payments. Sum of wage & reimbursement amount. - readOnly: true - wage_amount: - type: string - description: The total wage amount for the group of contractor payments. - readOnly: true - reimbursement_amount: - type: string - description: The total reimbursement amount for the group of contractor payments. - readOnly: true - readOnly: true - x-examples: - success: - - uuid: 7f2337f9-9b78-44b9-aeed-be4777b833a8 - company_uuid: c54046f7-1be4-4c54-8194-f4842c30c86d - check_date: '2024-03-15' - debit_date: '2024-03-11' - status: Funded - creation_token: a51a3500-3200-43af-a738-169d4b66a9db - totals: - debit_amount: '740.00' - wage_amount: '720.00' - reimbursement_amount: '20.00' - - uuid: 56260b3d-c375-415c-b77a-75d99f717193 - company_uuid: c54046f7-1be4-4c54-8194-f4842c30c86d - check_date: '2024-05-02' - debit_date: '2024-04-26' - status: Unfunded - creation_token: 45ef81bb-ae24-4ad1-b2c6-6e563a4c30ed - totals: - debit_amount: '2365.00' - wage_amount: '2270.00' - reimbursement_amount: '95.00' - x-tags: - - Contractor Payment Groups - Contractor-Payment-For-Group: - description: The representation of a single contractor payment. + - uuid: 1b71bb5b-4811-46e9-8a8a-cf5521cbeda6 + authority: City + wage: '15.0' + wage_type: Regular + effective_date: '2017-01-01' + notes: large companies + - uuid: 87434623-b57d-4630-8da5-9dde599c7840 + authority: City + wage: '10.5' + wage_type: Regular + effective_date: '2017-01-01' + notes: large companies + - uuid: fa055c11-bfe4-4ac3-84dd-8502cf046b20 + authority: State + wage: '10.5' + wage_type: Regular + effective_date: '2017-01-01' + notes: large companies + - uuid: cdd9dfc2-6465-4693-ae60-0eecff35038c + authority: Federal + wage: '10.5' + wage_type: Regular + effective_date: '2017-01-01' + notes: large companies + items: + "$ref": "#/components/schemas/Minimum-Wage" + Minimum-Wage: type: object + description: Representation of a Minimum Wage properties: uuid: type: string - description: The unique identifier of the contractor payment in Gusto. - readOnly: true - contractor_uuid: + description: unique identifier of a minimum wage + wage: type: string - description: The UUID of the contractor. - readOnly: true - bonus: + format: float + description: The wage rate for a minimum wage record. Represented as a float, e.g. "15.0". + wage_type: type: string - description: The bonus amount in the payment. - readOnly: true - hours: + description: The type of wage the minimum wage applies to, e.g. "Regular", "Regular-Industry-Specific". + effective_date: type: string - description: The number of hours worked for the payment. - readOnly: true - payment_method: + format: date + description: The date the minimum wage rule is effective on. + authority: type: string - description: The payment method. - enum: - - Direct Deposit - - Check - - Historical Payment - - Correction Payment - readOnly: true - reimbursement: + description: The governing authority that created the minimum wage, e.g. "City", "State", or "Federal". + notes: type: string - description: The reimbursement amount in the payment. + description: Description of parties the minimum wage applies to. + required: + - uuid + - wage + - wage_type + - effective_date + - authority + Location: + description: The representation of an address in Gusto. + type: object + title: '' + x-examples: + success_status: + created_at: '2025-06-09T13:43:49.000-07:00' + updated_at: '2025-06-09T13:43:50.000-07:00' + company_uuid: 10593a6a-505b-4aa6-bf31-15dcdceedbe3 + version: e1bdd845a493c74908f8e15d6114169b + uuid: 6b1351a2-de35-4499-b948-43abab274634 + street_1: 300 3rd Street + street_2: Apartment 318 + city: San Francisco + state: CA + zip: '94107' + country: USA + active: true + phone_number: '8009360383' + filing_address: true + mailing_address: true + properties: + uuid: + type: string + description: The UUID of the location object. readOnly: true - status: + version: type: string - description: The status of the contractor payment. Will transition to `Funded` during payments processing if the payment should be funded, i.e. has `Direct Deposit` for payment method. Contractors payments with `Check` payment method will remain `Unfunded`. - enum: - - Funded - - Unfunded - hourly_rate: + description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. + company_uuid: type: string - description: The rate per hour worked for the payment. + description: The UUID for the company to which the location belongs. Only included if the location belongs to a company. readOnly: true - may_cancel: + phone_number: + type: string + readOnly: false + description: The phone number for the location. Required for company locations. Optional for employee locations. + street_1: + type: string + readOnly: false + street_2: + type: + - string + - 'null' + readOnly: false + city: + type: string + readOnly: false + state: + type: string + readOnly: false + zip: + type: string + readOnly: false + country: + type: string + readOnly: false + default: USA + mailing_address: type: boolean - description: Determine if the contractor payment can be cancelled. - readOnly: true - wage: + description: Specifies if the location is the company's mailing address. Only included if the location belongs to a company. + filing_address: + description: Specifies if the location is the company's filing address. Only included if the location belongs to a company. + type: boolean + created_at: type: string - description: The fixed wage of the payment, regardless of hours worked. - readOnly: true - wage_type: + description: Datetime for when location is created + updated_at: type: string - description: The wage type for the payment. - enum: - - Hourly - - Fixed + description: Datetime for when location is updated + active: + type: boolean + description: The status of the location. Inactive locations have been deleted, but may still have historical data associated with them. readOnly: true - wage_total: - type: string - description: "(hours * hourly_rate) + wage + bonus" + inactive: + type: boolean + description: The status of the location. Inactive locations have been deleted, but may still have historical data associated with them. readOnly: true - x-tags: - - Contractor Payment Groups - Contractor-Payment-Summary: - description: The representation of the summary of contractor payments for a given company in a given time period. + required: + - uuid + Company-Location-Request: type: object + description: Request body for creating a company location (company address). + properties: + street_1: + type: string + description: Street address line 1. + example: 300 3rd Street + street_2: + type: + - string + - 'null' + description: Street address line 2. + example: Apartment 318 + city: + type: string + description: City. + example: San Francisco + state: + type: string + description: State code (e.g. CA). Must be a valid two-letter state code. + example: CA + zip: + type: string + description: ZIP code. Must be a valid US zip (e.g. 12345 or 12345-6789). + example: '94107' + country: + type: string + description: Country code. Defaults to USA. + default: USA + example: USA + phone_number: + type: string + description: Phone number. Must be 10 digits. + pattern: "[0-9]{10}" + example: '8009360383' + mailing_address: + type: boolean + description: Specify if this location is the company's mailing address. + filing_address: + type: boolean + description: Specify if this location is the company's filing address. + required: + - phone_number + - street_1 + - city + - state + - zip + x-examples: + typical_location: + street_1: 300 3rd Street + street_2: Apartment 318 + city: San Francisco + state: CA + zip: '94107' + country: USA + phone_number: '8009360383' + mailing_address: false + filing_address: false + Company-Locations-List: + type: array x-examples: success_status: - total: - reimbursements: '110.0' - wages: '1840.0' - contractor_payments: - - contractor_uuid: bc57832c-d8bc-43a7-ae99-3a03380ff037 - reimbursement_total: '110.0' - wage_total: '1840.0' - payments: - - uuid: 04552eb9-7829-4b18-ae96-6983552948df - contractor_uuid: bc57832c-d8bc-43a7-ae99-3a03380ff037 - bonus: '20.0' - date: '2020-10-19' - hours: '40.0' - payment_method: Direct Deposit - reimbursement: '100.0' - hourly_rate: '18.0' - may_cancel: true - wage: '0.0' - wage_type: Hourly - wage_total: '740.00' - - uuid: 25cfeb96-17fc-4fdf-8941-57f3fb9eea00 - contractor_uuid: bc57832c-d8bc-43a7-ae99-3a03380ff037 - bonus: '100.0' - date: '2020-10-19' - hours: '0.00' - payment_method: Direct Deposit - reimbursement: '10.0' - hourly_rate: '0.0' - may_cancel: true - wage: '1000.0' - wage_type: Fixed - wage_total: '1100.0' + - uuid: 04552eb9-7829-4b18-ae96-6983552948df + version: 7d9753112507b9dda4fb97910f39b06e + company_uuid: 6bf7807c-a5a0-4f4d-b2e7-3fbb4b2299fb + phone_number: '5825710808' + street_1: 412 Kiera Stravenue + street_2: Suite 391 + city: San Francisco + state: CA + zip: '94107' + country: USA + mailing_address: false + filing_address: false + created_at: '2023-09-12T16:42:25.000-07:00' + updated_at: '2023-09-12T16:42:25.000-07:00' + active: true + inactive: false + - uuid: fa94a2fd-11a8-4024-87ff-85c587d9d2b4 + version: 15e6b9680e00f3122729e64e3cef3224 + company_uuid: 6bf7807c-a5a0-4f4d-b2e7-3fbb4b2299fb + phone_number: '2866070827' + street_1: 644 Fay Vista + street_2: Suite 842 + city: Richmond + state: VA + zip: '23218' + country: USA, + mailing_address: true + filing_address: false + created_at: '2023-09-12T16:42:25.000-07:00' + updated_at: '2023-09-12T16:42:25.000-07:00' + active: true + inactive: false + items: + "$ref": "#/components/schemas/Location" + Not-Found-Error-Object: + description: "Not Found \n \nThe requested resource does not exist. Make sure the provided ID/UUID is valid." + type: object + required: + - errors properties: - total: - type: object - description: The wage and reimbursement totals for all contractor payments within a given time period. - properties: - reimbursements: - type: string - format: float - description: The total reimbursements for contractor payments within a given time period. - readOnly: true - wages: - type: string - format: float - description: The total wages for contractor payments within a given time period. - readOnly: true - readOnly: true - contractor_payments: + errors: type: array - uniqueItems: false - description: The individual contractor payments, within a given time period, grouped by contractor. items: type: object - description: '' + required: + - error_key + - category properties: - contractor_uuid: - type: number - description: The UUID of the contractor. - readOnly: true - reimbursement_total: + error_key: type: string - format: float - description: The total reimbursements for the contractor within a given time period. - readOnly: true - wage_total: + description: Specifies where the error occurs. Typically this key identifies the attribute/parameter related to the error. + category: type: string - format: float - description: The total wages for the contractor within a given time period. - readOnly: true - payments: - type: array - uniqueItems: false - description: The contractor's payments within a given time period. - items: - "$ref": "#/components/schemas/Contractor-Payment" - readOnly: true - readOnly: true - x-tags: - - Contractor Payments - Contractor-Payment-Summary-By-Dates: - description: The representation of the summary of contractor payments for a given company in a given time period. - type: object + description: Specifies the type of error. The category provides error groupings and can be used to build custom error handling in your integration. + message: + type: string + description: Provides details about the error - generally this message can be surfaced to an end user. x-examples: - success_status: - total: - reimbursements: '110.0' - wages: '1840.0' - contractor_payments: - - check_date: '2020-10-19' - reimbursement_total: '110.0' - wage_total: '1840.0' - payments: - - uuid: 04552eb9-7829-4b18-ae96-6983552948df - contractor_uuid: bc57832c-d8bc-43a7-ae99-3a03380ff037 - bonus: '20.0' - date: '2020-10-19' - hours: '40.0' - payment_method: Direct Deposit - reimbursement: '100.0' - hourly_rate: '18.0' - wage: '0.0' - wage_type: Hourly - wage_total: '740.00' - - uuid: 25cfeb96-17fc-4fdf-8941-57f3fb9eea00 - contractor_uuid: bc57832c-d8bc-43a7-ae99-3a03380ff037 - bonus: '100.0' - date: '2020-10-19' - hours: '0.00' - payment_method: Direct Deposit - reimbursement: '10.0' - hourly_rate: '0.0' - wage: '1000.0' - wage_type: Fixed - wage_total: '1100.0' + not_found: + errors: + - error_key: request + category: not_found + message: The requested resource was not found. + deprecated_accept_terms_of_service: + errors: + - error_key: request + category: deprecated_endpoint + message: The requested endpoint is no longer supported in the requested API version. Use POST /v1/partner_managed_companies/:company_uuid/terms_of_service instead + deprecated_retrieve_terms_of_service: + errors: + - error_key: request + category: deprecated_endpoint + message: The requested endpoint is no longer supported in the requested API version. Use PUT /v1/partner_managed_companies/:company_uuid/terms_of_service instead + Conflict-Error-Object: + description: "Conflict\n \nThis error occurs when the resource version provided does not match the current version. Retrieve the latest version and retry." + type: object + required: + - errors properties: - total: - type: object - description: The wage and reimbursement totals for all contractor payments within a given time period. - properties: - reimbursements: - type: string - format: float - description: The total reimbursements for contractor payments within a given time period. - readOnly: true - wages: - type: string - format: float - description: The total wages for contractor payments within a given time period. - readOnly: true - readOnly: true - contractor_payments: + errors: type: array - uniqueItems: false - description: The individual contractor payments, within a given time period, grouped by check date. items: type: object - description: '' + required: + - error_key + - category properties: - contractor_uuid: - type: string - description: The UUID of the contractor. - readOnly: true - check_date: + error_key: type: string - description: The payment check date. - readOnly: true - reimbursement_total: + description: Specifies where the error occurs. Typically this key identifies the attribute/parameter related to the error. + category: type: string - format: float - description: The total reimbursements for the contractor within a given time period. - readOnly: true - wage_total: + description: Specifies the type of error. The category provides error groupings and can be used to build custom error handling in your integration. + message: type: string - format: float - description: The total wages for the contractor within a given time period. - readOnly: true - payments: - type: array - uniqueItems: false - description: The contractor's payments within a given time period. - items: - "$ref": "#/components/schemas/Contractor-Payment" - readOnly: true - readOnly: true - readOnly: true - x-tags: - - Contractor Payments - Contractor-Payment-Method: - title: Contractor-Payment-Method - type: object + description: Provides details about the error - generally this message can be surfaced to an end user. x-examples: - Example-1: - value: - version: 63859768485e218ccf8a449bb60f14ed - type: Direct Deposit - split_by: Percentage - splits: - - uuid: e88f9436-b74e-49a8-87e9-777b9bfe715e - name: BoA Checking Account - priority: 1 - split_amount: 100 - Example-2: - value: - version: 63859768485e218ccf8a449bb60f14ed - type: Check - description: '' - properties: - version: - type: string - description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. - type: - anyOf: - - type: string - enum: - - Direct Deposit - - Check - - type: 'null' - description: 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. - split_by: - anyOf: - - type: string - enum: - - Amount - - Percentage - - type: 'null' - description: Describes how the payment will be split. If `split_by` is Percentage, then the `split` amounts must add up to exactly 100. If `split_by` is Amount, then values are in cents and the last split amount must be `null` to capture the remainder. - splits: - type: - - array - - 'null' - items: - "$ref": "#/components/schemas/Payment-Method-Bank-Account" - x-tags: - - Contractor Payment Method - Payment-Method-Bank-Account: - type: object - description: Representation of a bank account item - properties: - uuid: - type: string - description: The bank account ID - name: - type: string - description: The bank account name - hidden_account_number: - type: string - description: Masked bank account number - priority: - type: integer - description: The order of priority for each payment split, with priority 1 being the first bank account paid. Priority must be unique and sequential. - split_amount: - description: If `split_by` is 'Amount', this is in cents (e.g., 500 for $5.00) and exactly one account must have a `split_amount` of `null` to capture the remainder. If `split_by` is 'Percentage', this is the percentage value (e.g., 60 for 60%). - type: - - integer - - 'null' - required: - - uuid + invalid_version: + errors: + - error_key: base + category: invalid_resource_version + message: You are attempting to update a resource using an out-of-date version. Unprocessable-Entity-Error-Object: description: "Unprocessable Entity\n \nThis may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details.\n" type: object @@ -24511,6 +394,27 @@ components: items: "$ref": "#/components/schemas/Entity-Error-Object" x-examples: + nested_disbursement_errors: + errors: + - error_key: disbursements + category: nested_errors + metadata: + employee_uuid: invalid-uuid-1 + errors: + - error_key: employee_uuid + category: not_found + message: Disbursement not found. + - error_key: disbursements + category: nested_errors + metadata: + employee_uuid: a1b2c3d4-e5f6-7890-abcd-ef1234567890 + errors: + - error_key: payment_method + category: invalid_attribute_value + message: 'Payment method must be one of: Direct Deposit, Check.' + - error_key: payment_status + category: invalid_attribute_value + message: Payment status is not valid for payment method 'InvalidMethod'. invalid_token: errors: - error_key: base @@ -24747,21 +651,25 @@ components: errors: - error_key: employee_compensations category: nested_errors - message: errors: - error_key: payment_method category: invalid_attribute_value message: Payment method cannot be changed for check-only payrolls. All employees must be paid by check. - migrate_company_invalid_ip: + payroll_update_recurring_reimbursement_error: errors: - - error_key: ip_address - category: invalid_attribute_value - message: A valid user's IP Address is required in order to accept terms of service. - migrate_company_invalid_signatory: + - error_key: employee_compensations + category: nested_errors + errors: + - error_key: reimbursements + category: invalid_attribute_value + message: Cannot update recurring reimbursements through payroll updates. Update the recurring reimbursement directly. + migrate_company_terms_of_service: errors: - - error_key: email - category: invalid_attribute_value - message: A valid signatory email is required to perform this operation. + - error_key: base + category: migration_blocker + message: Terms of service must be accepted by a company payroll admin. + metadata: + key: terms_of_service migrate_company_already_migrated: errors: - error_key: base @@ -24856,27 +764,6 @@ components: - error_key: base category: invalid_operation message: There is an error in the request body. - nyc_withholding_allowance_required: - errors: - - error_key: states - category: nested_errors - errors: - - error_key: questions - category: nested_errors - metadata: - state: NY - errors: - - error_key: answers - category: nested_errors - metadata: - key: total_allowances_nyc - errors: - - error_key: value - category: invalid_attribute_value - message: NYC Withholding Allowance is required for employees who live in New York City - metadata: - valid_from: '2010-01-01' - valid_up_to: pay_schedule_missing_anchor_dates: errors: - error_key: anchor_pay_date @@ -24912,7 +799,6 @@ components: errors: - error_key: requirement_sets category: nested_errors - message: metadata: key: misc effective_from: @@ -24920,7 +806,6 @@ components: errors: - error_key: requirements category: nested_errors - message: metadata: key: 1-2-3-4 errors: @@ -24931,7 +816,6 @@ components: errors: - error_key: requirement_sets category: nested_errors - message: metadata: key: misc effective_from: @@ -24939,7 +823,6 @@ components: errors: - error_key: requirements category: nested_errors - message: metadata: key: 71653ec0-00b5-4c66-a58b-22ecf21704c5 errors: @@ -24950,7 +833,6 @@ components: errors: - error_key: requirement_sets category: nested_errors - message: metadata: key: taxrates effective_from: '2026-01-01' @@ -24958,7 +840,6 @@ components: errors: - error_key: requirements category: nested_errors - message: metadata: key: e0ac2284-8d30-4100-ae23-f85f9574868b errors: @@ -25031,9 +912,8 @@ components: category: invalid_attribute_value message: Invalid Employee UUID(s). metadata: - entities: - - entity_type: Employee - entity_uuid: invalid-uuid-123 + entity_type: Employee + entity_uuid: invalid-uuid-123 payroll_blocker_missing_bank_info: errors: - error_key: base @@ -25089,6 +969,24 @@ components: - error_key: base category: invalid_resource_version message: You are attempting to update a resource using an out-of-date version. + payroll_update_stale_employee_compensation_version: + errors: + - error_key: base + category: invalid_resource_version + message: Supplied Version (stale-version) is invalid. + metadata: + entity_type: Employee + entity_uuid: a8e9d2c6-1f3b-4d5a-9c8e-7f0b2d4c6e8a + employee_create_self_onboarding_missing_email: + errors: + - error_key: email + category: invalid_attribute_value + message: Email is required to invite the employee to self-onboard + employee_benefit_simple_ira_elective_mismatch: + errors: + - error_key: elective + category: invalid_attribute_value + message: Elective must be true for matching Simple IRA benefits signatory_email_required: errors: - error_key: email @@ -25460,418 +1358,8873 @@ components: - error_key: documents category: nested_errors metadata: - document_type: invalid_type - errors: - - error_key: document_type - category: invalid_attribute_value - message: Document type's value is not included in the list - - error_key: document_title - category: invalid_attribute_value - message: Document title's value is not included in the list - i9_documents_not_array: - errors: - - error_key: base - category: invalid_operation - message: Parameter `documents` must be an array - company_benefit_missing_benefit_type: - errors: - - error_key: base - category: missing_parameter - message: benefit_type is required. - company_benefit_invalid_benefit_type: - errors: - - error_key: benefit_type - category: invalid_attribute_value - message: Benefit type does not correspond with a supported benefit - company_benefit_missing_description: - errors: - - error_key: description - category: invalid_attribute_value - message: Description is required - company_benefit_cannot_disable: - errors: - - error_key: base - category: invalid_operation - message: Company benefit cannot be disabled while employees are still enrolled - company_benefit_cannot_change_type: - errors: - - error_key: benefit_type - category: invalid_attribute_value - message: The associated benefit cannot be changed - company_benefit_invalid_contribution_exclusions: - errors: - - error_key: contribution_exclusions - category: invalid_attribute_value - message: Expected contribution_exclusions array of hashes. - employee_benefits_invalid_parameter: - errors: - - error_key: employee_benefits - category: invalid_parameter - message: Missing or invalid parameter 'employee_benefits'. - time_off_activity_invalid_type: - errors: - - error_key: base - category: invalid_parameter - message: 'Expected one of: vacation, sick' - employee_benefit_negative_company_contribution: - errors: - - error_key: company_contribution - category: invalid_attribute_value - message: Company contribution must be greater than or equal to 0 - employee_benefit_active_requires_contribution_or_deduction: - errors: - - error_key: base - category: invalid_operation - message: An active employee benefit must have either a company contribution or an employee deduction - employee_benefit_invalid_effective_date: - errors: - - error_key: effective_date - category: invalid_attribute_value - message: Effective date is not a valid date - employee_benefit_duplicate_type: - errors: - - error_key: base - category: invalid_operation - message: Employee cannot have more than one 401(k) - employee_benefit_invalid_limit_option: - errors: - - error_key: limit_option - category: invalid_attribute_value - message: Limit option must be one of "Family", "Individual" - employee_benefit_coverage_amount_only_for_gtl: - errors: - - error_key: coverage_amount - category: invalid_attribute_value - message: Coverage amount is only applicable for group term life employee benefit. - employee_benefit_destroy_invalid: - errors: - - error_key: base - category: invalid_attribute_value - message: An active employee benefit must have either a company contribution or an employee deduction - company_benefit_has_employees: - errors: - - error_key: base - category: invalid_operation - message: There are employees associated with this benefit, please remove these employees before deleting the benefit. - company_benefit_partnered: - errors: - - error_key: base - category: invalid_operation - message: This benefit is managed by the partner and cannot be deleted. - rehire_delete_already_effective: - errors: - - error_key: base - category: invalid_operation - message: Unable to delete the rehire that is already effective, please terminate the employee instead. - rehire_not_terminated: - errors: - - error_key: effective_date - category: invalid_attribute_value - message: Cannot rehire if employee has not been terminated - rehire_missing_required_fields: - errors: - - error_key: effective_date - category: invalid_attribute_value - message: Effective date is required - - error_key: work_location_uuid - category: invalid_attribute_value - message: Work location not found - - error_key: file_new_hire_report - category: invalid_attribute_value - message: File new hire report is required - rehire_invalid_work_location: - errors: - - error_key: work_location_uuid - category: invalid_attribute_value - message: Work location not found - rehire_no_future_employment: - errors: - - error_key: base - category: invalid_operation - message: The employee does not have any future employment, please rehire the employee first. - earning_type_missing_name: - errors: - - error_key: name - category: invalid_attribute_value - message: Name is required - earning_type_duplicate_name: - errors: - - error_key: name - category: invalid_attribute_value - message: There is already an earning called Bonus - department_duplicate_title: - errors: - - error_key: title - category: invalid_attribute_value - message: Department name has already been taken. - department_has_active_members: - errors: - - error_key: base - category: invalid_operation - message: You cannot delete a department that has active team members. Please remove them first. - department_invalid_employees: - errors: - - error_key: employees - category: invalid_attribute_value - message: Employees must be valid - - error_key: contractors - category: invalid_attribute_value - message: Contractors must be valid - form_already_signed: - errors: - - error_key: base - category: invalid_operation - message: This form has already been signed - form_no_signature_required: - errors: - - error_key: base - category: invalid_operation - message: This form does not require a signature - form_invalid_ip_address: - errors: - - error_key: signed_by_ip_address - category: invalid_attribute_value - message: Signed by ip address is invalid - form_preparer_not_supported: - errors: - - error_key: base - category: invalid_operation - message: This form does not allow preparer information - invoice_period_invalid_format: - errors: - - error_key: base - category: invalid_parameter - message: Invalid invoice_period param format, should be 'YYYY-MM' - invoice_period_future: - errors: - - error_key: base - category: invalid_parameter - message: Invalid invoice_period param, cannot be a future invoice period - invoice_company_uuids_max_exceeded: - errors: - - error_key: base - category: invalid_parameter - message: Invalid company_uuids passed, max of 50 - wire_in_request_invalid_date_sent: - errors: - - error_key: date_sent - category: invalid_attribute_value - message: Date sent must be a valid date - wire_in_request_missing_bank_name: - errors: - - error_key: bank_name - category: invalid_attribute_value - message: Bank name must be present - wire_in_request_invalid_amount_sent: - errors: - - error_key: amount_sent - category: invalid_attribute_value - message: Amount sent must be a number - wire_in_request_additional_notes_too_long: - errors: - - error_key: additional_notes - category: invalid_attribute_value - message: Additional notes must be less than 255 characters - wire_in_request_not_awaiting_funds: - errors: - - error_key: base - category: invalid_operation - message: Wire in request status must be awaiting funds - external_payroll_missing_check_date: - errors: - - error_key: check_date - category: invalid_attribute_value - message: Check date is required - external_payroll_missing_payment_period_dates: - errors: - - error_key: payment_period_start_date - category: invalid_attribute_value - message: Payment period start date is required - - error_key: payment_period_end_date - category: invalid_attribute_value - message: Payment period end date is required - external_payroll_net_pay_less_than_zero: - errors: - - error_key: base - category: invalid_attribute_value - message: Net pay less than zero for one or more external payroll items - external_payroll_invalid_payroll_item: - errors: - - error_key: base - category: invalid_operation - message: Invalid payload or parameters - external_payrolls_locked: - errors: - - error_key: base - category: invalid_operation - message: External Payrolls have already been finalized or a payroll has already been processed. - employee_bank_account_destroy_invalid: - errors: - - error_key: base - category: invalid_attribute_value - message: Cannot delete this bank account. - external_payroll_invalid_liability_selection: - errors: - - error_key: tax_id - category: invalid_attribute_value - message: Tax is required - invalid_tax_liability_selection: - errors: - - error_key: tax_id - category: invalid_attribute_value - message: Tax is required - external_payroll_invalid_tax_liability_selections: - errors: - - error_key: tax_id - category: invalid_attribute_value - message: Tax liability selections are not valid - x-speakeasy-name-override: UnprocessableEntityError - Entity-Error-Object: + document_type: invalid_type + errors: + - error_key: document_type + category: invalid_attribute_value + message: Document type's value is not included in the list + - error_key: document_title + category: invalid_attribute_value + message: Document title's value is not included in the list + i9_documents_not_array: + errors: + - error_key: base + category: invalid_operation + message: Parameter `documents` must be an array + company_benefit_missing_benefit_type: + errors: + - error_key: base + category: missing_parameter + message: benefit_type is required. + company_benefit_invalid_benefit_type: + errors: + - error_key: benefit_type + category: invalid_attribute_value + message: Benefit type does not correspond with a supported benefit + company_benefit_missing_description: + errors: + - error_key: description + category: invalid_attribute_value + message: Description is required + company_benefit_cannot_disable: + errors: + - error_key: base + category: invalid_operation + message: Company benefit cannot be disabled while employees are still enrolled + company_benefit_cannot_change_type: + errors: + - error_key: benefit_type + category: invalid_attribute_value + message: The associated benefit cannot be changed + company_benefit_invalid_contribution_exclusions: + errors: + - error_key: contribution_exclusions + category: invalid_attribute_value + message: Expected contribution_exclusions array of hashes. + employee_benefits_invalid_parameter: + errors: + - error_key: employee_benefits + category: invalid_parameter + message: Missing or invalid parameter 'employee_benefits'. + time_off_activity_invalid_type: + errors: + - error_key: base + category: invalid_parameter + message: 'Expected one of: vacation, sick' + employee_benefit_negative_company_contribution: + errors: + - error_key: company_contribution + category: invalid_attribute_value + message: Company contribution must be greater than or equal to 0 + employee_benefit_active_requires_contribution_or_deduction: + errors: + - error_key: base + category: invalid_operation + message: An active employee benefit must have either a company contribution or an employee deduction + employee_benefit_invalid_effective_date: + errors: + - error_key: effective_date + category: invalid_attribute_value + message: Effective date is not a valid date + employee_benefit_duplicate_type: + errors: + - error_key: base + category: invalid_operation + message: Employee cannot have more than one 401(k) + employee_benefit_invalid_limit_option: + errors: + - error_key: limit_option + category: invalid_attribute_value + message: Limit option must be one of "Family", "Individual" + employee_benefit_coverage_amount_only_for_gtl: + errors: + - error_key: coverage_amount + category: invalid_attribute_value + message: Coverage amount is only applicable for group term life employee benefit. + employee_benefit_destroy_invalid: + errors: + - error_key: base + category: invalid_attribute_value + message: An active employee benefit must have either a company contribution or an employee deduction + company_benefit_has_employees: + errors: + - error_key: base + category: invalid_operation + message: There are employees associated with this benefit, please remove these employees before deleting the benefit. + company_benefit_partnered: + errors: + - error_key: base + category: invalid_operation + message: This benefit is managed by the partner and cannot be deleted. + rehire_delete_already_effective: + errors: + - error_key: base + category: invalid_operation + message: Unable to delete the rehire that is already effective, please terminate the employee instead. + rehire_not_terminated: + errors: + - error_key: effective_date + category: invalid_attribute_value + message: Cannot rehire if employee has not been terminated + rehire_missing_required_fields: + errors: + - error_key: effective_date + category: invalid_attribute_value + message: Effective date is required + - error_key: work_location_uuid + category: invalid_attribute_value + message: Work location not found + - error_key: file_new_hire_report + category: invalid_attribute_value + message: File new hire report is required + rehire_invalid_work_location: + errors: + - error_key: work_location_uuid + category: invalid_attribute_value + message: Work location not found + rehire_no_future_employment: + errors: + - error_key: base + category: invalid_operation + message: The employee does not have any future employment, please rehire the employee first. + earning_type_missing_name: + errors: + - error_key: name + category: invalid_attribute_value + message: Name is required + earning_type_duplicate_name: + errors: + - error_key: name + category: invalid_attribute_value + message: There is already an earning called Bonus + department_duplicate_title: + errors: + - error_key: title + category: invalid_attribute_value + message: Department name has already been taken. + department_has_active_members: + errors: + - error_key: base + category: invalid_operation + message: You cannot delete a department that has active team members. Please remove them first. + department_invalid_employees: + errors: + - error_key: employees + category: invalid_attribute_value + message: Employees must be valid + - error_key: contractors + category: invalid_attribute_value + message: Contractors must be valid + form_already_signed: + errors: + - error_key: base + category: invalid_operation + message: This form has already been signed + form_no_signature_required: + errors: + - error_key: base + category: invalid_operation + message: This form does not require a signature + form_invalid_ip_address: + errors: + - error_key: signed_by_ip_address + category: invalid_attribute_value + message: Signed by ip address is invalid + form_preparer_not_supported: + errors: + - error_key: base + category: invalid_operation + message: This form does not allow preparer information + invoice_period_invalid_format: + errors: + - error_key: base + category: invalid_parameter + message: Invalid invoice_period param format, should be 'YYYY-MM' + invoice_period_future: + errors: + - error_key: base + category: invalid_parameter + message: Invalid invoice_period param, cannot be a future invoice period + invoice_company_uuids_max_exceeded: + errors: + - error_key: base + category: invalid_parameter + message: Invalid company_uuids passed, max of 50 + wire_in_request_invalid_date_sent: + errors: + - error_key: date_sent + category: invalid_attribute_value + message: Date sent must be a valid date + wire_in_request_missing_bank_name: + errors: + - error_key: bank_name + category: invalid_attribute_value + message: Bank name must be present + wire_in_request_invalid_amount_sent: + errors: + - error_key: amount_sent + category: invalid_attribute_value + message: Amount sent must be a number + wire_in_request_additional_notes_too_long: + errors: + - error_key: additional_notes + category: invalid_attribute_value + message: Additional notes must be less than 255 characters + wire_in_request_not_awaiting_funds: + errors: + - error_key: base + category: invalid_operation + message: Wire in request status must be awaiting funds + external_payroll_missing_check_date: + errors: + - error_key: check_date + category: invalid_attribute_value + message: Check date is required + external_payroll_missing_payment_period_dates: + errors: + - error_key: payment_period_start_date + category: invalid_attribute_value + message: Payment period start date is required + - error_key: payment_period_end_date + category: invalid_attribute_value + message: Payment period end date is required + external_payroll_net_pay_less_than_zero: + errors: + - error_key: base + category: invalid_attribute_value + message: Net pay less than zero for one or more external payroll items + external_payroll_invalid_payroll_item: + errors: + - error_key: base + category: invalid_operation + message: Invalid payload or parameters + external_payrolls_locked: + errors: + - error_key: base + category: invalid_operation + message: External Payrolls have already been finalized or a payroll has already been processed. + employee_bank_account_destroy_invalid: + errors: + - error_key: base + category: invalid_attribute_value + message: Cannot delete this bank account. + external_payroll_invalid_liability_selection: + errors: + - error_key: tax_id + category: invalid_attribute_value + message: Tax is required + invalid_tax_liability_selection: + errors: + - error_key: tax_id + category: invalid_attribute_value + message: Tax is required + external_payroll_invalid_tax_liability_selections: + errors: + - error_key: tax_id + category: invalid_attribute_value + message: Tax liability selections are not valid + x-speakeasy-name-override: UnprocessableEntityError + Entity-Error-Object: + type: object + required: + - error_key + - category + properties: + error_key: + type: string + description: Specifies where the error occurs. Typically this key identifies the attribute/parameter related to the error. + category: + type: string + description: Specifies the type of error. The category provides error groupings and can be used to build custom error handling in your integration. If category is `nested_errors`, the object will contain a nested `errors` property with entity errors. + message: + type: string + description: Provides details about the error - generally this message can be surfaced to an end user. + metadata: + type: object + description: Contains relevant data to identify the resource in question when applicable. For example, to identify an entity `entity_type` and `entity_uuid` will be provided. + oneOf: + - "$ref": "#/components/schemas/Metadata-With-Multiple-Entities" + - "$ref": "#/components/schemas/Metadata-With-One-Entity" + errors: + type: array + description: Will only exist if category is `nested_errors`. It is possible to have multiple levels of nested errors. + items: + "$ref": "#/components/schemas/Entity-Error-Object" + Metadata-With-One-Entity: + type: object + description: single entity + additionalProperties: true + properties: + entity_type: + type: string + description: Name of the entity that the error corresponds to. + entity_uuid: + type: string + description: Unique identifier for the entity. + valid_from: + type: + - string + - 'null' + valid_up_to: + type: + - string + - 'null' + key: + type: + - string + - 'null' + state: + type: + - string + - 'null' + Metadata-With-Multiple-Entities: + type: object + description: multiple entities + required: + - entities + properties: + entities: + type: array + items: + "$ref": "#/components/schemas/Metadata-With-One-Entity" + Employee: + title: Employee + type: object + description: The representation of an employee in Gusto. + x-examples: + success_status: + uuid: d7282d99-ab6b-42f5-ba45-f4a670e886a8 + first_name: Boaty + middle_initial: + last_name: Koss + email: keena.feest@kiehn.co.uk + company_uuid: e904cc79-818a-4da8-9d37-0be0a86fdda8 + manager_uuid: + version: a5cec1f1c0135feb3e76ca6ea3c46176 + current_employment_status: full_time + onboarding_status: onboarding_completed + preferred_first_name: + department_uuid: + employee_code: 46f036 + payment_method: Direct Deposit + department: + terminated: false + two_percent_shareholder: false + onboarded: true + historical: false + has_ssn: true + onboarding_documents_config: + uuid: + i9_document: false + jobs: + - uuid: bc875f9d-adc5-40f6-99db-ed8470bda25f + version: 863bcd01c51fcfa2468d604cffec7413 + employee_uuid: d7282d99-ab6b-42f5-ba45-f4a670e886a8 + current_compensation_uuid: 2ec164d0-808b-446c-8120-8cfb500945d0 + payment_unit: Year + primary: true + two_percent_shareholder: false + state_wc_covered: + state_wc_class_code: + title: '' + compensations: + - uuid: 2ec164d0-808b-446c-8120-8cfb500945d0 + employee_uuid: d7282d99-ab6b-42f5-ba45-f4a670e886a8 + version: db7bfb49a4f0893432cb562311bfcad9 + payment_unit: Year + flsa_status: Exempt + adjust_for_minimum_wage: false + minimum_wages: [] + job_uuid: bc875f9d-adc5-40f6-99db-ed8470bda25f + effective_date: '2025-06-09' + rate: '80000.00' + rate: '80000.00' + hire_date: '2024-06-09' + eligible_paid_time_off: [] + terminations: [] + garnishments: [] + date_of_birth: '2005-06-09' + ssn: '' + phone: + work_email: + member_portal_invitation_status: + status: sent + token_expired: false + welcome_email_sent_at: '2024-01-15T14:30:00Z' + last_password_resent_at: + partner_portal_invitation_sent: true + properties: + uuid: + type: string + description: The UUID of the employee in Gusto. + readOnly: true + first_name: + type: string + middle_initial: + type: + - string + - 'null' + last_name: + type: string + email: + type: + - string + - 'null' + description: The personal email address of the employee. This is provided to support syncing users between our system and yours. You may not use this email address for any other purpose (e.g. marketing). + company_uuid: + type: string + description: The UUID of the company the employee is employed by. + readOnly: true + manager_uuid: + type: + - string + - 'null' + description: The UUID of the employee's manager. + readOnly: true + version: + type: string + description: The current version of the employee. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. + readOnly: true + department: + type: + - string + - 'null' + description: The employee's department in the company. + readOnly: true + terminated: + type: boolean + description: Whether the employee is terminated. + readOnly: true + two_percent_shareholder: + type: + - boolean + - 'null' + description: Whether the employee is a two percent shareholder of the company. This field only applies to companies with an S-Corp entity type. + work_email: + type: + - string + - 'null' + description: The work email address of the employee. This is provided to support syncing users between our system and yours. You may not use this email address for any other purpose (e.g. marketing). + onboarded: + type: boolean + description: Whether the employee has completed onboarding. + readOnly: true + onboarding_status: + description: The current onboarding status of the employee + anyOf: + - type: string + enum: + - onboarding_completed + - 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 + - type: 'null' + readOnly: true + onboarding_documents_config: + type: object + description: Configuration for an employee onboarding documents during onboarding + properties: + uuid: + type: + - string + - 'null' + description: The UUID of the onboarding documents config + readOnly: true + i9_document: + type: boolean + description: Whether to include Form I-9 for an employee during onboarding + readOnly: true + jobs: + type: array + items: + "$ref": "#/components/schemas/Job" + eligible_paid_time_off: + type: array + items: + "$ref": "#/components/schemas/Paid-Time-Off" + terminations: + type: array + items: + "$ref": "#/components/schemas/Termination" + garnishments: + type: array + items: + "$ref": "#/components/schemas/Garnishment" + custom_fields: + type: array + description: Custom fields are only included for the employee if the include param has the custom_fields value set + items: + "$ref": "#/components/schemas/Employee-Custom-Field" + date_of_birth: + type: + - string + - 'null' + readOnly: true + has_ssn: + type: boolean + description: Indicates whether the employee has an SSN in Gusto. + ssn: + type: string + description: Deprecated. This field always returns an empty string. + phone: + type: + - string + - 'null' + preferred_first_name: + type: + - string + - 'null' + description: '' + payment_method: + type: string + description: The employee's payment method + enum: + - Direct Deposit + - Check + default: Check + nullable: false + current_employment_status: + anyOf: + - type: string + enum: + - full_time + - part_time_under_twenty_hours + - part_time_twenty_plus_hours + - variable + - seasonal + - type: 'null' + description: 'The current employment status of the employee. Full-time employees work 30+ hours per week. Part-time employees are split into two groups: those that work 20-29 hours a week, and those that work under 20 hours a week. Variable employees have hours that vary each week. Seasonal employees are hired for 6 months of the year or less.' + readOnly: true + historical: + type: boolean + nullable: false + employee_code: + type: string + description: The short format code of the employee + nullable: false + readOnly: true + department_uuid: + type: + - string + - 'null' + description: The UUID of the department the employee is under + title: + type: string + nullable: false + hired_at: + type: string + nullable: false + format: date + description: The date when the employee was hired to the company + hidden_ssn: + type: string + nullable: false + flsa_status: + "$ref": "#/components/schemas/Flsa-Status-Type" + applicable_tax_ids: + type: array + nullable: false + items: + type: number + member_portal_invitation_status: + type: + - object + - 'null' + description: Member portal invitation status information. Only included when the include param has the portal_invitations value set. + properties: + status: + type: string + description: The current status of the member portal invitation. + enum: + - pending + - sent + - verified + - complete + - cancelled + token_expired: + type: + - boolean + - 'null' + description: Whether the invitation token has expired. + welcome_email_sent_at: + type: + - string + - 'null' + format: date-time + description: The date and time when the welcome email was sent. + last_password_resent_at: + type: + - string + - 'null' + format: date-time + description: The date and time when the password reset was last resent. + partner_portal_invitation_sent: + type: + - boolean + - 'null' + description: Whether an external partner portal invitation webhook has been sent for this employee. Only included when the include param has the portal_invitations value set. + required: + - uuid + - first_name + - last_name + readOnly: true + Job: + title: Job + type: object + properties: + uuid: + type: string + description: The UUID of the job. + readOnly: true + version: + type: string + description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. + employee_uuid: + type: string + description: The UUID of the employee to which the job belongs. + readOnly: true + hire_date: + type: string + readOnly: false + description: The date when the employee was hired or rehired for the job. + title: + type: + - string + - 'null' + readOnly: false + default: + description: The title for the job. + primary: + type: boolean + description: Whether this is the employee's primary job. The value will be set to true unless an existing job exists for the employee. + readOnly: true + rate: + type: string + description: The employee's pay rate for this job (e.g., hourly wage or annual salary). This is sensitive compensation data and requires the `compensations:read` scope. + readOnly: true + payment_unit: + type: + - string + - 'null' + description: How the employee is paid for this job (e.g., Hour, Week, Month, Year, Paycheck). This is sensitive compensation data and requires the `compensations:read` scope. + readOnly: true + current_compensation_uuid: + type: string + description: The UUID of the current active compensation record for this job. Requires the `compensations:read` scope. + readOnly: true + two_percent_shareholder: + type: boolean + description: Whether the employee owns at least 2% of the company. + readOnly: false + state_wc_covered: + type: + - boolean + - 'null' + description: Whether this job is eligible for workers' compensation coverage in the state of Washington (WA). + readOnly: false + state_wc_class_code: + type: + - string + - 'null' + description: The risk class code for workers' compensation in Washington state. Please visit [Washington state's Risk Class page](https://www.lni.wa.gov/insurance/rates-risk-classes/risk-classes-for-workers-compensation/risk-class-lookup#/) to learn more. + readOnly: false + compensations: + type: array + description: The compensation history for this job, including pay rate, payment unit, FLSA status, and effective dates. This is sensitive pay information and requires the `compensations:read` scope. + items: + "$ref": "#/components/schemas/Compensation" + readOnly: true + location_uuid: + type: string + nullable: false + description: The uuid of the employee's work location. + location: + "$ref": "#/components/schemas/Location" + description: The representation of a job in Gusto. + required: + - uuid + x-examples: + example: + uuid: d6d1035e-8a21-4e1d-89d5-fa894f9aff97 + version: gr78930htutrz444kuytr3s5hgxykuveb523fwl8sir + employee_uuid: 948daac8-4355-4ece-9e2a-229898accb22 + hire_date: '2020-01-20' + title: Account Director + primary: true + rate: '78000.00' + payment_unit: Year + current_compensation_uuid: ea8b0b90-1112-4f9d-bb93-bf029bc8537a + two_percent_shareholder: false + state_wc_covered: + state_wc_class_code: + compensations: + - uuid: ea8b0b90-1112-4f9d-bb93-bf029bc8537a + version: 98jr3289h3298hr9329gf9egskt3tjaj + job_uuid: d6d1035e-8a21-4e1d-89d5-fa894f9aff97 + employee_uuid: 948daac8-4355-4ece-9e2a-229898accb22 + rate: '78000.00' + payment_unit: Year + flsa_status: Exempt + effective_date: '2020-01-20' + adjust_for_minimum_wage: false + minimum_wages: [] + secondary_job: + uuid: a1b2c3d4-5678-9012-abcd-ef1234567890 + version: hj29fh3298hf9832hf98h32f89h32f89h32f9832 + employee_uuid: 948daac8-4355-4ece-9e2a-229898accb22 + hire_date: '2020-01-20' + title: Senior Consultant + primary: false + rate: '25.00' + payment_unit: Hour + current_compensation_uuid: b2c3d4e5-6789-0123-bcde-f12345678901 + two_percent_shareholder: false + state_wc_covered: + state_wc_class_code: + compensations: + - uuid: b2c3d4e5-6789-0123-bcde-f12345678901 + version: 93jr2398h23r9832rg9832rg98ewrg98e + job_uuid: a1b2c3d4-5678-9012-abcd-ef1234567890 + employee_uuid: 948daac8-4355-4ece-9e2a-229898accb22 + rate: '25.00' + payment_unit: Hour + flsa_status: Nonexempt + effective_date: '2020-01-20' + adjust_for_minimum_wage: false + minimum_wages: [] + Jobs-Body: + type: object + properties: + title: + type: + - string + - 'null' + description: The job title. + example: Regional Manager + hire_date: + type: string + description: The date when the employee was hired or rehired for the job. + example: '2020-12-21' + two_percent_shareholder: + type: boolean + description: Whether the employee owns at least 2% of the company. + state_wc_covered: + type: + - boolean + - 'null' + description: Whether this job is eligible for workers' compensation coverage in the state of Washington (WA). + state_wc_class_code: + type: + - string + - 'null' + description: The risk class code for workers' compensation in Washington state. Please visit [Washington state's Risk Class page](https://www.lni.wa.gov/insurance/rates-risk-classes/risk-classes-for-workers-compensation/risk-class-lookup#/) to learn more. + Jobs-Create-Request-Body: + description: Request body for creating a job. + type: object + required: + - title + - hire_date + allOf: + - "$ref": "#/components/schemas/Jobs-Body" + x-examples: + create_job: + title: Regional Manager + hire_date: '2020-12-21' + two_percent_shareholder: false + Jobs-Update-Request-Body: + description: Request body for updating a job. + type: object + allOf: + - "$ref": "#/components/schemas/Versionable-Required" + - "$ref": "#/components/schemas/Jobs-Body" + x-examples: + update_job: + version: gr78930htutrz444kuytr3s5hgxykuveb523fwl8sir + title: Regional Manager + hire_date: '2020-12-21' + Compensation: + type: object + description: The representation of compensation in Gusto. + properties: + uuid: + type: string + description: The UUID of the compensation in Gusto. + readOnly: true + version: + type: string + description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. + job_uuid: + type: string + description: The UUID of the job to which the compensation belongs. + readOnly: true + employee_uuid: + type: string + description: The UUID of the employee to which the compensation belongs. + readOnly: true + rate: + type: string + readOnly: false + description: The dollar amount paid per payment unit. + payment_unit: + type: string + readOnly: false + description: The unit accompanying the compensation rate. If the employee is an owner, rate should be 'Paycheck'. + enum: + - Hour + - Week + - Month + - Year + - Paycheck + flsa_status: + "$ref": "#/components/schemas/Flsa-Status-Type" + title: + type: string + description: The job title for this compensation. + effective_date: + type: string + readOnly: false + description: The effective date for this compensation. For the first compensation, this defaults to the job's hire date. + adjust_for_minimum_wage: + type: boolean + description: Indicates if the compensation could be adjusted to minimum wage during payroll calculation. + readOnly: true + minimum_wages: + type: array + readOnly: false + description: The minimum wages associated with the compensation. + items: + type: object + properties: + uuid: + type: string + description: The UUID of the minimum wage. + wage: + type: string + description: The wage amount. + effective_date: + type: string + description: The effective date of the minimum wage. + required: + - uuid + x-examples: + success_status: + uuid: db4d41e5-813c-477e-bfae-38da2ae5e7a3 + version: 56d00c178bc7393b2a206ed6a86afcb4 + job_uuid: c1fdb417-c34a-43a7-92f3-5e6c20c1d7a4 + employee_uuid: a7e8f9bc-0d12-4e56-b789-012345678901 + rate: '70000.00' + payment_unit: Year + flsa_status: Exempt + effective_date: '2023-01-01' + adjust_for_minimum_wage: false + minimum_wages: [] + title: Software Engineer + hourly_compensation: + uuid: e5f6a7b8-c9d0-1234-e5f6-a7b8c9d01234 + version: 98b7a6c5d4e3f2a1b0c9d8e7f6a5b4c3 + job_uuid: d2e5f8a1-b4c7-4d90-a3e6-f9b2c5d8e1a4 + employee_uuid: b8f9a0bc-1e23-4f67-c890-123456789012 + rate: '25.00' + payment_unit: Hour + flsa_status: Nonexempt + effective_date: '2023-01-01' + adjust_for_minimum_wage: false + minimum_wages: [] + title: Associate + minimum_wage_adjusted: + uuid: a4d9ba9c-32cc-4cc1-a5bc-6ef4cd653e7a + version: cc59bd3879d655fb940a1f6b675f2ad9 + job_uuid: d8f8fbe7-496d-4b69-86f0-1e2d1b73a086 + rate: '5.00' + payment_unit: Hour + flsa_status: Nonexempt + effective_date: '2018-12-11' + adjust_for_minimum_wage: true + minimum_wages: + - uuid: edeea5af-ecd6-4b1c-b5de-5cff2d302738 + wage: '7.25' + effective_date: '2018-12-11' + Compensations-Body: + type: object + properties: + rate: + type: string + description: The dollar amount paid per payment unit. + example: '70000.00' + payment_unit: + type: string + description: The unit accompanying the compensation rate. If the employee is an owner, rate should be 'Paycheck'. + enum: + - Hour + - Week + - Month + - Year + - Paycheck + example: Year + flsa_status: + "$ref": "#/components/schemas/Flsa-Status-Type" + effective_date: + type: string + description: The effective date for this compensation. + example: '2023-01-01' + title: + type: string + description: The job title for this compensation. + example: Software Engineer + adjust_for_minimum_wage: + type: boolean + description: Whether the compensation should be adjusted to minimum wage during payroll calculation. + minimum_wages: + type: array + items: + type: object + properties: + uuid: + type: string + description: The UUID of the minimum wage. + Compensations-Request-Body: + description: Request body for creating a compensation. + type: object + required: + - rate + - payment_unit + - flsa_status + allOf: + - "$ref": "#/components/schemas/Compensations-Body" + x-examples: + create_compensation: + rate: '70000.00' + payment_unit: Year + flsa_status: Exempt + effective_date: '2023-01-01' + title: Software Engineer + Compensations-Update-Request-Body: + description: Request body for updating a compensation. + type: object + allOf: + - "$ref": "#/components/schemas/Versionable-Required" + - "$ref": "#/components/schemas/Compensations-Body" + x-examples: + update_compensation: + version: b48c46abfed1487b873b442334b3c4ff + rate: '75000.00' + payment_unit: Year + flsa_status: Exempt + effective_date: '2023-01-01' + title: Senior Engineer + Paid-Time-Off: + type: object + description: The representation of paid time off in Gusto. + properties: + name: + description: The name of the paid time off type. + anyOf: + - type: string + enum: + - Vacation Hours + - Sick Hours + - Holiday Hours + - type: 'null' + readOnly: true + policy_name: + type: + - string + - 'null' + description: The name of the time off policy. + readOnly: true + policy_uuid: + type: + - string + - 'null' + description: The UUID of the time off policy. + readOnly: true + accrual_unit: + type: + - string + - 'null' + example: Hour + description: The unit the PTO type is accrued in. + readOnly: true + accrual_rate: + type: + - string + - 'null' + description: The number of accrual units accrued per accrual period. + readOnly: true + accrual_method: + type: + - string + - 'null' + example: unlimited + description: The accrual method of the time off policy + readOnly: true + accrual_period: + type: + - string + - 'null' + example: Year + description: The frequency at which the PTO type is accrued. + readOnly: true + accrual_balance: + type: + - string + - 'null' + description: The number of accrual units accrued. + readOnly: true + maximum_accrual_balance: + type: + - string + - 'null' + description: The maximum number of accrual units allowed. A null value signifies no maximum. + readOnly: true + paid_at_termination: + type: boolean + description: Whether the accrual balance is paid to the employee upon termination. + readOnly: true + Termination: + type: object + description: The representation of a termination in Gusto. + properties: + uuid: + type: string + description: The UUID of the termination object. + readOnly: true + version: + type: string + description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. + employee_uuid: + type: string + description: The UUID of the employee to which this termination is attached. + readOnly: true + active: + type: boolean + description: Whether the employee's termination has gone into effect. + readOnly: true + cancelable: + type: boolean + description: Whether the employee's termination is cancelable. Cancelable is true if `run_termination_payroll` is false and `effective_date` is in the future. + readOnly: true + effective_date: + type: string + readOnly: false + description: The employee's last day of work. + run_termination_payroll: + type: boolean + readOnly: false + description: 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. + required: + - uuid + x-examples: + terminated_employee: + uuid: da441196-43a9-4d23-ad5d-f37ce6bb99c0 + employee_uuid: da441196-43a9-4d23-ad5d-f37ce6bb99c0 + version: d487dd0b55dfcacdd920ccbdaeafa351 + active: true + cancelable: false + effective_date: '2024-01-15' + run_termination_payroll: false + cancelable_termination: + uuid: da441196-43a9-4d23-ad5d-f37ce6bb99c0 + employee_uuid: da441196-43a9-4d23-ad5d-f37ce6bb99c0 + version: d487dd0b55dfcacdd920ccbdaeafa351 + active: false + cancelable: true + effective_date: '2024-06-15' + run_termination_payroll: false + Garnishment: + description: Garnishments, or employee deductions, are fixed amounts or percentages deducted from an employee’s pay. They can be deducted a specific number of times or on a recurring basis. Garnishments can also have maximum deductions on a yearly or per-pay-period bases. Common uses for garnishments are court-ordered payments for child support or back taxes. Some companies provide loans to their employees that are repaid via garnishments. + type: object + properties: + uuid: + type: string + description: The UUID of the garnishment in Gusto. + readOnly: true + version: + type: string + description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. + employee_uuid: + type: string + description: The UUID of the employee to which this garnishment belongs. + readOnly: true + active: + type: boolean + default: true + description: Whether or not this garnishment is currently active. + amount: + type: string + format: float + readOnly: false + description: The amount of the garnishment. Either a percentage or a fixed dollar amount. Represented as a float, e.g. "8.00". + description: + type: string + readOnly: false + description: The description of the garnishment. + court_ordered: + type: boolean + readOnly: false + description: Whether the garnishment is court ordered. + times: + type: + - integer + - 'null' + readOnly: false + default: + description: The number of times to apply the garnishment. Ignored if recurring is true. + recurring: + type: boolean + readOnly: false + default: false + description: Whether the garnishment should recur indefinitely. + annual_maximum: + format: float + readOnly: false + default: + description: The maximum deduction per annum. A null value indicates no maximum. Represented as a float, e.g. "200.00". + type: + - string + - 'null' + total_amount: + type: + - string + - 'null' + format: float + readOnly: false + default: + description: A maximum total deduction for the lifetime of this garnishment. A null value indicates no maximum. + pay_period_maximum: + type: + - string + - 'null' + format: float + default: + description: The maximum deduction per pay period. A null value indicates no maximum. Represented as a float, e.g. "16.00". + deduct_as_percentage: + type: boolean + readOnly: false + default: false + description: Whether the amount should be treated as a percentage to be deducted per pay period. + garnishment_type: + anyOf: + - type: string + enum: + - child_support + - federal_tax_lien + - state_tax_lien + - student_loan + - creditor_garnishment + - federal_loan + - other_garnishment + - type: 'null' + description: The specific type of garnishment for court ordered garnishments. + child_support: + "$ref": "#/components/schemas/Garnishment-Child-Support" + required: + - uuid + x-examples: + Example: + uuid: 4c7841a2-1363-497e-bc0f-664703c7484f + version: 52b7c567242cb7452e89ba2bc02cb476 + employee_uuid: a6b53294-f871-4db2-bbd4-8c3d1fe56440 + active: true + amount: '8.00' + description: Company loan to employee + court_ordered: false + times: 5 + recurring: false + annual_maximum: + total_amount: + pay_period_maximum: '100.00' + deduct_as_percentage: true + garnishment_type: + child_support: + Create-Example: + uuid: 4c7841a2-1363-497e-bc0f-664703c7484f + version: 52b7c567242cb7452e89ba2bc02cb476 + employee_uuid: a6b53294-f871-4db2-bbd4-8c3d1fe56440 + active: true + amount: '150.00' + description: Back taxes + court_ordered: true + times: + recurring: true + annual_maximum: + total_amount: + pay_period_maximum: + deduct_as_percentage: false + garnishment_type: + child_support: + Child-Support-Example: + uuid: 4c7841a2-1363-497e-bc0f-664703c7481a + version: 52b7c567242cb7452e89ba2bc02cb383 + employee_uuid: a6b53294-f871-4db2-bbd4-8c3d1fe56440 + active: true + amount: '40.00' + description: Child support - AZ28319 + court_ordered: true + times: + recurring: true + annual_maximum: + total_amount: + pay_period_maximum: '400.00' + deduct_as_percentage: true + garnishment_type: child_support + child_support: + state: AZ + payment_period: Monthly + case_number: AZ28319 + order_number: + remittance_number: + fips_code: '04000' + Garnishment-List: + - uuid: 4c7841a2-1363-497e-bc0f-664703c7484f + version: 52b7c567242cb7452e89ba2bc02cb476 + employee_uuid: a6b53294-f871-4db2-bbd4-8c3d1fe56440 + active: true + amount: '8.00' + description: Company loan to employee + court_ordered: false + times: 5 + recurring: false + annual_maximum: + total_amount: + pay_period_maximum: '100.00' + deduct_as_percentage: true + garnishment_type: + child_support: + - uuid: 4c7841a2-1363-497e-bc0f-664703c7481a + version: 52b7c567242cb7452e89ba2bc02cb383 + employee_uuid: a6b53294-f871-4db2-bbd4-8c3d1fe56440 + active: true + amount: '40.00' + description: Child support - AZ28319 + court_ordered: true + times: + recurring: true + annual_maximum: + total_amount: + pay_period_maximum: '400.00' + deduct_as_percentage: true + garnishment_type: child_support + child_support: + state: AZ + payment_period: Monthly + case_number: AZ28319 + order_number: + remittance_number: + fips_code: '04000' + Garnishment-Request-Base: + type: object + description: Shared request body properties for creating or updating a garnishment. + properties: + active: + type: boolean + default: true + description: Whether or not this garnishment is currently active. + amount: + type: string + format: float + readOnly: false + description: The amount of the garnishment. Either a percentage or a fixed dollar amount. Represented as a float, e.g. "8.00". + description: + type: string + readOnly: false + description: The description of the garnishment. + court_ordered: + type: boolean + readOnly: false + description: Whether the garnishment is court ordered. + garnishment_type: + description: The specific type of garnishment for court ordered garnishments. + anyOf: + - type: string + enum: + - child_support + - federal_tax_lien + - state_tax_lien + - student_loan + - creditor_garnishment + - federal_loan + - other_garnishment + - type: 'null' + readOnly: false + times: + type: + - integer + - 'null' + readOnly: false + default: + description: The number of times to apply the garnishment. Ignored if recurring is true. + recurring: + type: boolean + readOnly: false + default: false + description: Whether the garnishment should recur indefinitely. + annual_maximum: + format: float + readOnly: false + default: + type: + - string + - 'null' + description: The maximum deduction per annum. A null value indicates no maximum. Represented as a float, e.g. "200.00". + pay_period_maximum: + type: + - string + - 'null' + format: float + default: + description: The maximum deduction per pay period. A null value indicates no maximum. Represented as a float, e.g. "16.00". + deduct_as_percentage: + type: boolean + readOnly: false + default: false + description: Whether the amount should be treated as a percentage to be deducted per pay period. + total_amount: + type: + - string + - 'null' + format: float + readOnly: false + description: A maximum total deduction for the lifetime of this garnishment. A null value indicates no maximum. + child_support: + "$ref": "#/components/schemas/Garnishment-Child-Support" + x-examples: + Example: + amount: '50.00' + annual_maximum: '2500.09' + recurring: true + Deactivate-Example: + active: false + Child-Support-Example: + amount: '40' + child_support: + case_number: ZZZ999 + Garnishment-Request: + description: Request body for creating a garnishment. + allOf: + - "$ref": "#/components/schemas/Garnishment-Request-Base" + - type: object + required: + - amount + - court_ordered + x-examples: + Example: + amount: '150.00' + description: Back taxes + court_ordered: true + recurring: true + deduct_as_percentage: false + Child-Support-Example: + court_ordered: true + garnishment_type: child_support + amount: '40' + recurring: true + deduct_as_percentage: true + pay_period_maximum: '500.00' + child_support: + state: FL + fips_code: '12011' + payment_period: Monthly + case_number: CS1234 + Update-Garnishment-Request: + description: Request body for updating a garnishment. + allOf: + - "$ref": "#/components/schemas/Garnishment-Request-Base" + - "$ref": "#/components/schemas/Versionable-Required" + Garnishment-Child-Support: + description: Additional child support order details + type: + - object + - 'null' + properties: + state: + type: string + readOnly: false + description: The two letter state abbreviation for the state issuing the child support order. Agency data is available in the `GET /v1/garnishments/child_support` API. + payment_period: + type: string + readOnly: false + enum: + - Every week + - Every other week + - Twice per month + - Monthly + description: How often the agency collects the withholding amount. e.g. $500 monthly -> `Monthly`. + fips_code: + type: string + description: The FIPS code associated with the state or county agency issuing the child support order. Agency data is available in the `GET /v1/garnishments/child_support` API. + nullable: false + readOnly: false + case_number: + type: + - string + - 'null' + readOnly: false + description: Child Support Enforcement Case Number associated with this child support obligation - required for most states. Agency specific requirements are available in the `GET /v1/garnishments/child_support` API. + order_number: + type: + - string + - 'null' + readOnly: false + description: Order Identifier or Order ID associated with this child support obligation - required for some states. Agency specific requirements are available in the `GET /v1/garnishments/child_support` API. + remittance_number: + type: + - string + - 'null' + readOnly: false + description: Child Support Enforcement Remittance ID associated with this child support obligation - required for some states. Agency specific requirements are available in the `GET /v1/garnishments/child_support` API. + Employee-Custom-Field: + type: object + description: A custom field of an employee + properties: + id: + type: string + company_custom_field_id: + type: string + description: This is the id of the response object from when you get the company custom fields + name: + type: string + type: + "$ref": "#/components/schemas/Custom-Field-Type" + description: + type: + - string + - 'null' + value: + type: string + selection_options: + type: + - array + - 'null' + description: An array of options for fields of type radio. Otherwise, null. + items: + type: string + required: + - id + - company_custom_field_id + - name + - type + - value + x-examples: + example_text_field: + id: ee515986-f3ca-49da-b576-2691b95262f9 + company_custom_field_id: ea7e5d57-6abb-47d7-b654-347c142886c0 + name: employee_level + description: Employee Level + type: text + value: '2' + selection_options: + example_radio_field: + id: 3796e08d-c2e3-434c-b4de-4ce1893e7b59 + company_custom_field_id: 024ec137-6c92-43a3-b061-14a9720531d6 + name: favorite fruit + description: Which is your favorite fruit? + type: radio + value: apple + selection_options: + - apple + - banana + - orange + Employee-Custom-Field-List: + type: object + description: A list of an employee's custom fields + properties: + custom_fields: + type: array + items: + "$ref": "#/components/schemas/Employee-Custom-Field" + x-examples: + example: + custom_fields: + - id: ee515986-f3ca-49da-b576-2691b95262f9 + company_custom_field_id: ea7e5d57-6abb-47d7-b654-347c142886c0 + name: employee_level + description: Employee Level + type: text + value: '2' + selection_options: + - id: 3796e08d-c2e3-434c-b4de-4ce1893e7b59 + company_custom_field_id: 024ec137-6c92-43a3-b061-14a9720531d6 + name: favorite fruit + description: Which is your favorite fruit? + type: radio + value: apple + selection_options: + - apple + - banana + - orange + Custom-Field-Type: + type: string + description: Input type for the custom field. + enum: + - text + - currency + - number + - date + - radio + Employment-History-List: + type: array + x-examples: + success_status: + - hire_date: '2015-06-09' + termination_date: '2025-05-09' + file_new_hire_report: false + two_percent_shareholder: false + employment_status: full_time + items: + description: The representation of an employee's individual employements. + type: object + properties: + hire_date: + type: string + description: The employee's start day of work for an employment. + termination_date: + type: + - string + - 'null' + description: The employee's last day of work for an employment. + file_new_hire_report: + type: boolean + description: The boolean flag indicating whether Gusto will file a new hire report for the employee. + two_percent_shareholder: + type: boolean + description: Whether the employee is a two percent shareholder of the company. This field only applies to companies with an S-Corp entity type. + employment_status: + type: string + description: The employee's employment status. Supplying an invalid option will set the employment_status to *not_set*. + enum: + - part_time + - full_time + - part_time_eligible + - variable + - seasonal - not_set + Employee-Onboarding-Status: + description: The representation of an employee's onboarding status. + type: object + title: Employee-Onboarding-Status + x-examples: + success_status: + uuid: 8351cf2a-17cb-49e3-94a7-9986dcb11e84 + onboarding_status: onboarding_completed + onboarding_steps: + - title: Personal details + id: personal_details + required: true + completed: true + requirements: [] + - title: Enter compensation details + id: compensation_details + required: true + completed: true + requirements: [] + - title: Add work address + id: add_work_address + required: true + completed: true + requirements: [] + - title: Add home address + id: add_home_address + required: true + completed: true + requirements: [] + - title: Enter federal tax withholdings + id: federal_tax_setup + required: true + completed: true + requirements: [] + - title: Enter state tax information + id: state_tax_setup + required: true + completed: false + requirements: + - add_work_address + - add_home_address + - title: Direct deposit setup + id: direct_deposit_setup + required: false + completed: true + requirements: [] + - title: Employee form signing + id: employee_form_signing + required: true + completed: false + requirements: + - federal_tax_setup + - state_tax_setup + - title: File new hire report + id: file_new_hire_report + required: true + completed: false + requirements: + - add_work_address + properties: + uuid: + type: string + description: Unique identifier for this employee. + onboarding_status: + type: string + description: One of the "onboarding_status" enum values. + onboarding_steps: + type: array + description: List of steps required to onboard an employee. + items: + title: Onboarding step + type: object + properties: + title: + type: string + description: User-friendly description of the onboarding step. + id: + type: string + description: String identifier for the onboarding step. + required: + type: boolean + description: When true, this step is required. + completed: + type: boolean + description: When true, this step has been completed. + requirements: + type: array + description: A list of onboarding steps required to begin this step. + items: + type: string + required: + - uuid + Flsa-Status-Type: + type: string + enum: + - Exempt + - Salaried Nonexempt + - Nonexempt + - Owner + - Commission Only Exempt + - Commission Only Nonexempt + description: '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. ' + Employee-Pay-Stubs-List: + type: array + x-examples: + success_status: + - uuid: d2cec746-caee-464a-bcaf-00d93f7049c9 + check_date: '2023-11-24' + gross_pay: '880.0' + net_pay: '541.02' + payroll_uuid: a039cafb-745e-4af4-bf1e-935a86fc18e0 + check_amount: '500.2' + payment_method: Direct Deposit + items: + description: The representation of an employee pay stub information. + type: object + properties: + uuid: + type: string + description: The UUID of the employee pay stub. + readOnly: true + check_date: + type: string + description: The check date of the pay stub. + readOnly: true + gross_pay: + type: string + description: The gross pay amount for the pay stub. + readOnly: true + net_pay: + type: string + description: The net pay amount for the pay stub. + readOnly: true + payroll_uuid: + type: string + description: A unique identifier of the payroll to which the pay stub belongs. + readOnly: true + check_amount: + type: string + description: The check amount for the pay stub. + readOnly: true + payment_method: + type: string + description: The payment method for the pay stub. + enum: + - Direct Deposit + - Check + readOnly: true + x-tags: + - Payrolls + required: + - uuid + Company-Address: + description: The representation of a company's address in Gusto. + type: object + properties: + street_1: + type: string + readOnly: false + street_2: + type: + - string + - 'null' + readOnly: false + city: + type: string + readOnly: false + state: + type: string + readOnly: false + zip: + type: string + readOnly: false + country: + type: string + readOnly: false + default: USA + inactive: + type: boolean + description: The status of the location. Inactive locations have been deleted, but may still have historical data associated with them. + readOnly: true + active: + type: boolean + description: The status of the location. Inactive locations have been deleted, but may still have historical data associated with them. + readOnly: true + Employee-Work-Addresses-List: + type: array + x-examples: + success_status: + - uuid: '080b6254-ce7c-411f-9f7d-5a3ce3c51154' + employee_uuid: 6747692e-d2c8-4472-9c5e-183c65404fbf + location_uuid: 9ccfade8-82ee-490c-8711-5c0787bccde8 + effective_date: '2021-01-01' + active: false + version: 3097e9d0efb09ba2e00a8988a93b3091 + street_1: 91678 Farrell Meadow + street_2: Apt. 835 + city: Phoenix + state: AZ + zip: '85016' + country: USA + - uuid: 35d62f15-75da-45aa-9c97-adc57342b925 + employee_uuid: 6747692e-d2c8-4472-9c5e-183c65404fbf + location_uuid: 10330fe8-36ef-4713-aa59-9f8a432abd13 + effective_date: '2022-01-01' + active: false + version: 5f48ce54afed81bb11dd89461bd0e214 + street_1: 800 Adolfo Gardens + street_2: Suite 419 + city: Bremen + state: AL + zip: '35033' + country: USA + - uuid: 3f3ceaba-6b57-4039-a31a-0004bef83c6f + employee_uuid: 6747692e-d2c8-4472-9c5e-183c65404fbf + location_uuid: 98383e91-c67d-4b69-a617-5a57f91da48c + effective_date: '2023-01-01' + active: true + version: a8a78c851337676137e22caf56ffe5b5 + street_1: 2216 Icie Villages + street_2: Apt. 798 + city: Big Delta + state: AK + zip: '99737' + country: USA + items: + "$ref": "#/components/schemas/Employee-Work-Address" + Employee-Work-Address: + type: object + x-examples: + success_status: + uuid: 64ee5fd7-3eb2-4083-883c-95e93e181cc8 + employee_uuid: d773461f-848a-40a1-8f09-b2ee4249d5c7 + location_uuid: 733ab2af-9510-408f-8d20-09196967174f + effective_date: '2020-01-31' + active: true + version: 3879823d440f3a3215d129ac73c58966 + street_1: 977 Marks Viaduct + street_2: Apt. 958 + city: Pink Hill + state: NC + zip: '28572' + country: USA + properties: + uuid: + type: string + readOnly: true + description: The unique identifier of this work address. + effective_date: + type: string + description: The date the employee began working at this location. + active: + type: boolean + readOnly: true + description: Signifies if this address is the active work address for the current date + location_uuid: + type: string + description: UUID reference to the company location for this work address. + employee_uuid: + type: string + description: UUID reference to the employee for this work address. + version: + type: string + description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. + street_1: + type: string + readOnly: true + street_2: + type: + - string + - 'null' + readOnly: true + city: + type: string + readOnly: true + state: + type: string + readOnly: true + zip: + type: string + readOnly: true + country: + type: string + readOnly: true + default: USA + required: + - uuid + - version + Employee-Address-List: + type: array + x-examples: + success_status: + - uuid: d6b7472f-bb55-41ca-a55c-9adbd3c64e09 + version: 7eee445be93fc50fd3cbb55b8d943fb3 + employee_uuid: d1a166b4-79b4-413f-b067-27534ec59ecd + street_1: 3121 Milky Way + street_2: '' + city: San Francisco + state: CA + zip: '94107' + country: USA + active: false + effective_date: '2024-06-09' + courtesy_withholding: false + - uuid: 1b59a593-d324-4d97-9296-99ecc95f81d1 + version: 5147ad755821c4ba3dbc3afa1055ff4d + employee_uuid: d1a166b4-79b4-413f-b067-27534ec59ecd + street_1: 3624 Victoria Ln + street_2: '' + city: Cincinnati + state: OH + zip: '45208' + country: USA + active: true + effective_date: '2025-05-26' + courtesy_withholding: false + - uuid: 69489b54-976d-4027-8b51-702e5c8c62d3 + version: f0765fa5a85f62723320763494a481a6 + employee_uuid: d1a166b4-79b4-413f-b067-27534ec59ecd + street_1: Main st. + street_2: '' + city: New York + state: NY + zip: '10011' + country: USA + active: false + effective_date: '2025-07-09' + courtesy_withholding: false + items: + "$ref": "#/components/schemas/Employee-Address" + Employee-Address: + type: object + x-examples: + success_status: + uuid: 700af712-62ba-4dff-824f-97a3c6fda416 + version: 6c3c23e4cc840bd3f1416f72b5380eff + employee_uuid: 78d20691-f1b4-4f74-bc4c-1d4db0099b00 + street_1: 3121 Milky Way + street_2: '' + city: San Francisco + state: CA + zip: '94107' + country: USA + active: true + effective_date: '1970-01-01' + courtesy_withholding: false + properties: + uuid: + type: string + description: The UUID of the employee address + employee_uuid: + type: string + description: The UUID of the employee + effective_date: + type: string + format: date + description: The date the employee started living at the address. + courtesy_withholding: + type: boolean + description: Determines if home taxes should be withheld and paid for employee. + street_1: + type: string + readOnly: false + street_2: + type: + - string + - 'null' + readOnly: false + city: + type: string + readOnly: false + state: + type: string + readOnly: false + zip: + type: string + readOnly: false + country: + type: string + readOnly: false + default: USA + active: + type: boolean + description: The status of the location. Inactive locations have been deleted, but may still have historical data associated with them. + readOnly: true + version: + type: string + description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. + required: + - uuid + - version + Employee-Section603-High-Earner-Status-List: + type: array + x-examples: + success_status: + - id: f47ac10b-58cc-4372-a567-0e02b2c3d479 + effective_year: 2026 + is_high_earner: false + - id: 550e8400-e29b-41d4-a716-446655440000 + effective_year: 2027 + is_high_earner: true + items: + "$ref": "#/components/schemas/Employee-Section603-High-Earner-Status" + Employee-Section603-High-Earner-Status: + type: object + description: The representation of an employee's Section 603 high earner status for a specific year. 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. + x-examples: + success_status: + id: f47ac10b-58cc-4372-a567-0e02b2c3d479 + effective_year: 2026 + is_high_earner: false + properties: + id: + type: string + description: The unique identifier of the Section 603 high earner status record + readOnly: true + effective_year: + type: integer + description: The year for which this high earner status applies + readOnly: true + is_high_earner: + type: + - boolean + - 'null' + description: Whether the employee is classified as a high earner for Section 603 purposes. Can be null if the status has not yet been determined. + readOnly: true + required: + - id + - effective_year + - is_high_earner + Employee-Section603-High-Earner-Status-Create-Request: + type: object + description: Request body for creating an employee's Section 603 high earner status + properties: + effective_year: + type: integer + description: The year for which this high earner status applies + example: 2026 + is_high_earner: + type: boolean + description: Whether the employee is classified as a high earner for Section 603 purposes + example: true + required: + - effective_year + - is_high_earner + Employee-Section603-High-Earner-Status-Update-Request: + type: object + description: Request body for updating an employee's Section 603 high earner status + properties: + is_high_earner: + type: boolean + description: Whether the employee is classified as a high earner for Section 603 purposes + example: true + required: + - is_high_earner + Employee-State-Taxes-List: + type: array + x-examples: + success_status: + - uuid: 287d2c61-1d18-4126-8a4a-9cb29bbb6dac + employee_uuid: c963cb99-fe1c-4aa8-9d48-1ad211ad396f + state: CA + file_new_hire_report: false + is_work_state: true + questions: + - is_question_for_admin_only: false + label: Filing Status + description: 'The Head of Household status applies to unmarried individuals who have a relative living with them in their home. If unsure, read the CA Filing Status explanation. + +' + key: filing_status + input_question_format: + type: Select + options: + - value: S + label: Single + - value: M + label: Married one income + - value: MD + label: Married dual income + - value: H + label: Head of Household + - value: E + label: Do Not Withhold + answers: + - value: M + valid_from: '2010-01-01' + valid_up_to: + - is_question_for_admin_only: false + label: Withholding Allowance + description: 'This value is needed to calculate the employee''s CA income tax withholding. If unsure, use the CA DE-4 form to calculate the value manually. + +' + key: withholding_allowance + input_question_format: + type: Number + answers: + - value: 1 + valid_from: '2010-01-01' + valid_up_to: + - is_question_for_admin_only: false + label: Additional Withholding + description: You can withhold an additional amount of California income taxes here. + key: additional_withholding + input_question_format: + type: Currency + answers: + - value: '0.0' + valid_from: '2010-01-01' + valid_up_to: + - is_question_for_admin_only: true + label: File a New Hire Report? + description: State law requires you to file a new hire report within 20 days of hiring or re-hiring an employee. + key: file_new_hire_report + input_question_format: + type: Select + options: + - value: true + label: Yes, file the state new hire report for me. + - value: false + label: No, I have already filed. + answers: + - value: false + valid_from: '2010-01-01' + valid_up_to: + items: + type: object + properties: + uuid: + type: string + description: The uuid of the employee state field. + employee_uuid: + type: string + description: The employee's uuid + state: + type: string + description: Two letter US state abbreviation + file_new_hire_report: + type: + - boolean + - 'null' + is_work_state: + type: boolean + questions: + type: array + items: + "$ref": "#/components/schemas/Employee-State-Tax-Question" + required: + - uuid + - employee_uuid + - state + - questions + Employee-State-Tax-Question: + type: object + properties: + label: + type: string + description: A short title for the question + description: + type: + - string + - 'null' + description: An explaination of the question - this may contain inline html formatted links. + key: + type: string + description: A unique identifier of the question (for the given state) - used for updating the answer. + is_question_for_admin_only: + type: boolean + input_question_format: + "$ref": "#/components/schemas/Employee-State-Tax-Input-Question-Format" + answers: + type: array + items: + "$ref": "#/components/schemas/Employee-State-Tax-Answer" + required: + - label + - description + - key + - input_question_format + - answers + - is_question_for_admin_only + Employee-State-Tax-Input-Question-Format: + type: object + properties: + type: + type: string + description: Describes the type of question - Text, Number, Select, Currency, Date + options: + type: array + uniqueItems: true + description: For "Select" type questions, the allowed values and display labels. + items: + type: object + properties: + value: + description: An allowed value to answer the question + oneOf: + - type: string + - type: boolean + - type: number + label: + type: string + description: A display label that corresponds to the answer value + required: + - label + required: + - type + Employee-State-Tax-Answer: + type: object + properties: + value: + oneOf: + - type: string + - type: number + - type: boolean + - type: 'null' + description: The answer to the corresponding question - this may be a string, number, boolean, or null. + valid_from: + type: string + description: The effective date of the answer - currently always “2010-01-01”. + valid_up_to: + type: + - string + - 'null' + description: The effective end date of the answer - currently always null. + Employee-State-Taxes-Request: + type: object + properties: + states: + type: array + uniqueItems: true + items: + type: object + properties: + state: + type: string + questions: + type: array + uniqueItems: true + items: + type: object + properties: + key: + type: string + answers: + type: array + uniqueItems: true + items: + type: object + properties: + value: + oneOf: + - type: string + - type: number + - type: boolean + - type: 'null' + valid_from: + type: string + valid_up_to: + type: + - string + - 'null' + required: + - value + - valid_from + required: + - key + required: + - state + required: + - states + Employee-Payment-Details-List: + type: array + description: A list of employee payment details. + x-examples: + success_status: + - employee_uuid: e2c4c0ce-2986-48b9-86cf-ec27f6ed9a36 + first_name: Soren + last_name: Kierkegaard + payment_method: Direct Deposit + split_by: Percentage + splits: + - bank_account_uuid: 1531e824-8d9e-4bd8-9f90-0d04608125d7 + name: Primary Checking + hidden_account_number: XXXX1207 + encrypted_account_number: mbNLVOm7psP16ocqXso5ZtzOXBrA-5Q-.zarrdLBmyYDDK4kCkF2reKtzx8udK8iDabtW + routing_number: '055003201' + account_type: Checking + priority: 1 + split_amount: 100 + - employee_uuid: 6b7e4b51-2e2d-4b54-9f37-7b9d0e9fa5d2 + first_name: Autumn + last_name: Connelly + payment_method: Check + split_by: + splits: + items: + type: object + properties: + employee_uuid: + type: string + description: The UUID of the employee. + readOnly: true + first_name: + type: string + description: The legal first name of the employee. + readOnly: true + last_name: + type: string + description: The last name of the employee. + readOnly: true + payment_method: + type: string + enum: + - Direct Deposit + - Check + description: The type of payment method. + readOnly: true + split_by: + anyOf: + - type: string + enum: + - Amount + - Percentage + - type: 'null' + description: How the payment is split. This field is applicable when `payment_method` is "Direct Deposit". If `split_by` is Percentage, then the split amounts must add up to exactly 100. If `split_by` is Amount, the last split amount must be `null` to capture the remainder. + readOnly: true + splits: + type: + - array + - 'null' + description: An array of payment splits. This field is applicable when `payment_method` is "Direct Deposit". + items: + type: object + properties: + bank_account_uuid: + type: string + description: The UUID of the bank account. + name: + type: string + description: The name of the bank account. + hidden_account_number: + type: string + description: An obfuscated version of the account number which can be used for display purposes. + encrypted_account_number: + type: + - string + - 'null' + description: Ciphertext containing the full bank account number, which must be decrypted using a key provided by Gusto. Only visible with the `employee_payment_methods:read:account_number` scope. + routing_number: + type: string + description: The routing number of the bank account. + account_type: + type: string + description: The bank account type (e.g., "Checking" or "Savings"). + priority: + type: integer + description: The order of priority for each payment split, with priority 1 being the first bank account paid. Priority must be unique and sequential. + split_amount: + type: + - number + - 'null' + description: If `split_by` is 'Amount', this is in cents (e.g., 500 for $5.00) and exactly one account must have a `split_amount` of `null` to capture the remainder. If `split_by` is 'Percentage', this is the percentage value (e.g., 60 for 60%). + readOnly: true + Contractor-Payment-Details-List: + type: array + x-examples: + success_status: + - contractor_uuid: e3d9487a-4ecb-49a3-b6ff-cf03ba7278b6 + first_name: Yael + last_name: Kuvalis + payment_method: Check + split_by: + splits: + - contractor_uuid: 577b6307-66e9-4926-a769-91f5c8b578aa + first_name: Autumn + last_name: Connelly + payment_method: Direct Deposit + split_by: Percentage + splits: + - bank_account_uuid: 0aca4500-8ba4-48fc-adce-677fe7926b7b + name: Cayman Island Checking + hidden_account_number: XXXX1545 + account_number: + encrypted_account_number: + routing_number: '055003201' + priority: 1 + split_amount: 100 + account_type: Checking + items: + type: object + properties: + contractor_uuid: + type: string + payment_method: + type: string + enum: + - Direct Deposit + - Check + first_name: + type: string + last_name: + type: string + split_by: + anyOf: + - type: string + enum: + - Amount + - Percentage + - type: 'null' + description: Describes how the payment will be split. If split_by is Percentage, then the split amounts must add up to exactly 100. If split_by is Amount, then the amount represents cents and the last split amount must be `null` to capture the remainder. + splits: + type: + - array + - 'null' + items: + type: object + properties: + bank_account_uuid: + type: string + name: + type: string + hidden_account_number: + type: string + description: An obfuscated version of the account number which can be used for display purposes. + encrypted_account_number: + type: + - string + - 'null' + description: Ciphertext containing the full bank account number, which must be decrypted using a key provided by Gusto. Only visible with the `contractor_payment_methods:read:account_number` scope. + routing_number: + type: string + priority: + type: integer + description: The order of priority for each payment split, with priority 1 being the first bank account paid. Priority must be unique and sequential. + split_amount: + type: + - number + - 'null' + description: If `split_by` is 'Amount', this is in cents (e.g., 500 for $5.00) and exactly one account must have a `split_amount` of `null` to capture the remainder. If `split_by` is 'Percentage', this is the percentage value (e.g., 60 for 60%). + account_type: + type: string + Notifications-List: + type: array + x-examples: + success_status: + - uuid: d053ee2a-a80f-4a61-8bf8-6122c1f954dd + company_uuid: 46c8329d-ebd1-49ba-878c-810b481a34c9 + category: company_setup.missing_mandatory_sick_time_policy + title: Set up a sick time off policy + message: At least one company work location requires businesses to provide a sick time off policy. + actionable: true + can_block_payroll: false + published_at: '2025-06-09T13:42:59.000-07:00' + due_at: + status: open + resources: [] + template_variables: {} + - uuid: 2edd148b-c4c3-4cda-b3e1-72b87399e6c8 + company_uuid: 46c8329d-ebd1-49ba-878c-810b481a34c9 + category: bank_error.compensation_credit_failure + title: Unable to deposit funds to Donn Cormier + message: We were unable to deposit a recent paycheck to Donn’s bank account, so these funds of $100.00 will be returned to Luettgen-Gusikowski’s bank account. Once the funds are received, the payment should be made directly to Donn. + actionable: true + can_block_payroll: false + published_at: '2025-06-09T13:43:00.000-07:00' + due_at: + status: open + resources: + - entity_type: Employee + entity_uuid: 66a27bb8-be5b-42e5-82b8-b2d0044a7f9e + template_variables: + beneficiary_name: Donn Cormier + amount: "$100.00" + company_name: Luettgen-Gusikowski + items: + "$ref": "#/components/schemas/Notification" + Notification: + type: object + properties: + uuid: + type: string + description: Unique identifier of a notification. + company_uuid: + type: string + description: Unique identifier of the company to which the notification belongs. + title: + type: string + description: The title of the notification. This highlights the actionable component of the notification. + message: + type: string + description: The message of the notification. This provides additional context for the user and recommends a specific action to resolve the notification. + status: + type: string + description: Represents the notification's status as managed by our system. It is updated based on observable system events and internal business logic, and does not reflect resolution steps taken outside our system. This field is read-only and cannot be modified via the API. + enum: + - open + - resolved + - expired + category: + type: string + description: The notification's category. + actionable: + type: boolean + description: Indicates whether a notification requires action or not. If false, the notification provides critical information only. + can_block_payroll: + type: boolean + description: Indicates whether a notification may block ability to run payroll. If true, we suggest that these notifications are prioritized to your end users. + published_at: + type: string + description: Timestamp of when the notification was published. + due_at: + type: + - string + - 'null' + description: Timestamp of when the notification is due. If the notification has no due date, this field will be null. + template_variables: + type: object + description: An object containing template variables used to render the notification. The structure of this object depends on the notification category. Each category defines a fixed set of variable names (keys), which are always present. The values of these variables can vary depending on the specific notification instance. + additionalProperties: + type: string + resources: + type: array + description: An array of entities relevant to the notification + items: + type: object + properties: + entity_type: + type: string + description: The type of entity being described. + enum: + - BankAccount + - Contractor + - ContractorPayment + - Employee + - Payroll + - PaySchedule + - RecoveryCase + - Signatory + - Wire In Request + entity_uuid: + type: string + description: Unique identifier of the entity + reference_type: + type: string + description: Optional. The type of a resource that is related to the one described by entity_type and entity_uuid. For instance, if the entity_type is “BankAccount”, the reference_type could be the “Employee” or “Contractor” to whom the bank account belongs. + reference_uuid: + type: string + description: Optional. Unique identifier of the reference. + required: + - entity_type + - entity_uuid + required: + - uuid + - company_uuid + - title + - message + - category + - actionable + - status + - published_at + - due_at + - resources + - can_block_payroll + x-examples: + notification_show: + uuid: 7b1d0df1-6403-4a06-8768-c1dd7d24d27a + company_uuid: 88f7cca1-dcad-4d20-84db-7fb80303d69f + title: 'Action required: Additional information needed to process payroll' + message: If we do not receive this information as soon as possible, your payroll may not be processed on time. + status: open + category: information_request + actionable: true + can_block_payroll: true + published_at: '2022-01-01T00:00:00.000Z' + due_at: '2022-02-01T00:00:00.000Z' + template_variables: + blocked_task: Payroll + resources: + - entity_type: Employee + entity_uuid: 21b6f9ce-0ac4-4745-8d8a-127f8c0f00f2 + Payroll-List: + description: A list of payrolls for a company. + type: array + x-examples: + success_status: + - uuid: 3601a7a2-0562-4e4c-9559-20886658daac + payroll_uuid: 3601a7a2-0562-4e4c-9559-20886658daac + company_uuid: b43e6012-bf6c-4752-b67b-5c8000595e0e + payroll_status_meta: + cancellable: false + expected_check_date: '2025-06-08' + initial_check_date: '2025-06-27' + expected_debit_time: '2025-06-12T23:00:00Z' + payroll_late: false + initial_debit_cutoff_time: '2025-06-12T23:00:00Z' + off_cycle: false + auto_payroll: false + processed: true + processed_date: '2025-06-11' + calculated_at: '2025-06-11T19:40:51Z' + pay_period: + start_date: '2025-05-20' + end_date: '2025-06-04' + pay_schedule_uuid: ded21d08-02d6-41cb-b211-8d8ca02f1c6a + check_date: '2025-06-08' + external: false + payroll_deadline: '2025-06-12T23:00:00Z' + company_taxes: [] + created_at: '2025-06-11T19:40:51Z' + partner_owned_disbursement: + items: + "$ref": "#/components/schemas/Payroll" + Payroll-Update: + type: object + properties: + employee_compensations: + type: array + items: + type: object + description: '' + properties: + employee_uuid: + type: string + description: The UUID of the employee. + version: + type: string + description: The current version of this employee compensation from the prepared payroll. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. + excluded: + type: boolean + description: This employee will be excluded from payroll calculation and will not be paid for the payroll. + payment_method: + type: string + description: The employee's compensation payment method. Invalid values will be ignored. + enum: + - Direct Deposit + - Check + memo: + type: string + description: Custom text that will be printed as a personal note to the employee on a paystub. + fixed_compensations: + type: array + items: + type: object + description: An array of fixed compensations for the employee. Fixed compensations include tips, bonuses, and one time reimbursements. + properties: + name: + type: string + description: The name of the compensation. This also serves as the unique, immutable identifier for this compensation. + amount: + type: string + description: The amount of the compensation for the pay period. + job_uuid: + type: string + description: The UUID of the job for the compensation. + hourly_compensations: + type: array + items: + type: object + description: An array of hourly compensations for the employee. Hourly compensations include regular, overtime, and double overtime hours. + properties: + name: + type: string + description: The name of the compensation. This also serves as the unique, immutable identifier for this compensation. + hours: + type: string + description: The number of hours to be compensated for this pay period. + job_uuid: + type: string + description: The UUIDs of the job for the compensation. + deductions: + type: array + items: + type: object + description: An array of deductions for the employee. + properties: + name: + type: string + description: The name of the deduction. + amount: + type: number + description: The amount of the deduction for the pay period. + amount_type: + type: string + description: The amount type of the deduction for the pay period. + enum: + - fixed + - percent + uuid: + type: string + description: The UUID of the deduction. This parameter is optional and can be provided in order to update an existing deduction. + paid_time_off: + type: array + description: An array of all paid time off the employee is eligible for this pay period. Each paid time off object can be the name or the specific policy_uuid. + items: + type: object + properties: + name: + type: string + description: The name of the PTO. This also serves as the unique, immutable identifier for the PTO. Must pass in name or policy_uuid but not both. + hours: + type: string + description: The hours of this PTO taken during the pay period. + policy_uuid: + type: string + description: The uuid of the PTO policy. Must pass in name or policy_uuid but not both. + final_payout_unused_hours_input: + type: + - string + - 'null' + description: The outstanding hours paid upon termination. This field is only applicable for termination payrolls. + reimbursements: + type: array + description: An array of reimbursements for the employee. + items: + type: object + properties: + amount: + type: string + description: The dollar amount of the reimbursement for the pay period. + description: + type: string + description: The description of the reimbursement. If not provided, the reimbursement will be unnamed. + uuid: + type: string + description: The UUID of an existing reimbursement. This parameter is optional and can be provided in order to update an existing reimbursement. + withholding_pay_period: + description: The payment schedule tax rate the payroll is based on. Only relevant for off-cycle payrolls. + type: string + enum: + - Every week + - Every other week + - Twice per month + - Monthly + - Quarterly + - Semiannually + - Annually + skip_regular_deductions: + description: Block regular deductions and contributions for this payroll. Only relevant for off-cycle payrolls. + type: boolean + fixed_withholding_rate: + description: Enable taxes to be withheld at the IRS's required rate of 22% for federal income taxes. State income taxes will be taxed at the state's supplemental tax rate. Otherwise, we'll sum the entirety of the employee's wages and withhold taxes on the entire amount at the rate for regular wages. Only relevant for off-cycle payrolls. + type: boolean + required: + - employee_compensations + Payroll-Gross-Up-Request: + type: object + description: Request body for calculating gross up amount + properties: + employee_uuid: + type: string + description: The UUID of the employee + net_pay: + type: string + format: float + description: Employee net earnings + required: + - employee_uuid + - net_pay + Payroll-Gross-Up-Response: + type: object + description: Response containing the calculated gross up amount + x-examples: + success_status: + gross_up: '1234.56' + properties: + gross_up: + type: string + format: float + description: Gross up earnings. + Payroll-Calculate-Accruing-Time-Off-Hours-Request: + type: object + description: Request body for calculating accruing time off hours + properties: + regular_hours_worked: + type: + - string + - 'null' + format: float + description: Regular hours worked in this pay period + overtime_hours_worked: + type: + - string + - 'null' + format: float + description: Overtime hours worked in this pay period + double_overtime_hours_worked: + type: + - string + - 'null' + format: float + description: Double overtime hours worked in this pay period + pto_hours_used: + type: + - string + - 'null' + format: float + description: Paid time off hours used in this pay period + sick_hours_used: + type: + - string + - 'null' + format: float + description: Sick hours used in this pay period + Payroll-Calculate-Accruing-Time-Off-Hours-Response: + type: object + description: Response containing the calculated accruing time off hours + x-examples: + success_status: + hours_earned: + - time_off_policy_uuid: 7c8d9e0f-1a2b-3c4d-5e6f-7a8b9c0d1e2f + hours: '3.0' + - time_off_policy_uuid: 1a2b3c4d-5e6f-7a8b-9c0d-1e2f3a4b5c6d + hours: '20.0' + properties: + hours_earned: + type: array + description: Accruing time off hours earned for each time off policy + items: + type: object + properties: + time_off_policy_uuid: + type: string + description: The UUID of the time off policy + hours: + type: string + format: float + description: Hours accrued during this pay period. + required: + - hours_earned + Payroll: + type: object + x-examples: + success_status: + uuid: b441a30b-2adb-489e-b7b7-9d094011a3f8 + employee_compensations: [] + submission_blockers: [] + credit_blockers: [] + payroll_uuid: b441a30b-2adb-489e-b7b7-9d094011a3f8 + company_uuid: 9aa93530-43d5-484e-b608-33214109420d + off_cycle: false + auto_payroll: false + processed: true + processed_date: '2025-06-16' + calculated_at: '2025-06-16T16:58:03Z' + pay_period: + start_date: '2025-05-25' + end_date: '2025-06-09' + pay_schedule_uuid: 40ff5990-0191-4796-9717-32f7dd3e94d5 + check_date: '2025-06-13' + external: false + payroll_deadline: '2025-06-17T23:00:00Z' + totals: + employee_bonuses: '0.00' + employee_commissions: '0.00' + employee_cash_tips: '0.00' + employee_paycheck_tips: '0.00' + additional_earnings: '0.00' + owners_draw: '0.00' + benefits: '0.00' + check_amount: '0.00' + child_support_debit: '0.00' + company_debit: '0.00' + deferred_payroll_taxes: '0.00' + employee_benefits_deductions: '0.00' + employee_taxes: '0.00' + employer_taxes: '0.00' + gross_pay: '0.00' + imputed_pay: '0.00' + net_pay: '0.00' + net_pay_debit: '0.00' + other_deductions: '0.00' + reimbursement_debit: '0.00' + reimbursements: '0.00' + tax_debit: '0.00' + payroll_status_meta: + cancellable: false + expected_check_date: '2025-06-13' + initial_check_date: '2025-06-13' + expected_debit_time: '2025-06-17T23:00:00Z' + payroll_late: false + initial_debit_cutoff_time: '2025-06-17T23:00:00Z' + processing_request: + status: submit_success + errors: [] + created_at: '2025-06-16T16:58:03Z' + partner_owned_disbursement: + properties: + payroll_deadline: + "$ref": "#/components/schemas/Payroll-Deadline-Type" + check_date: + "$ref": "#/components/schemas/Payroll-Check-Date-Type" + processed: + "$ref": "#/components/schemas/Payroll-Processed-Type" + processed_date: + "$ref": "#/components/schemas/Payroll-Processed-Date-Type" + calculated_at: + "$ref": "#/components/schemas/Payroll-Calculated-At-Type" + uuid: + "$ref": "#/components/schemas/Payroll-Payroll-Uuid-Type" + payroll_uuid: + "$ref": "#/components/schemas/Payroll-Payroll-Uuid-Type" + company_uuid: + "$ref": "#/components/schemas/Payroll-Company-Uuid-Type" + off_cycle: + "$ref": "#/components/schemas/Payroll-Off-Cycle-Type" + off_cycle_reason: + "$ref": "#/components/schemas/Off-Cycle-Reason-Type" + auto_payroll: + "$ref": "#/components/schemas/Auto-Pilot-Type" + external: + "$ref": "#/components/schemas/Payroll-External-Type" + final_termination_payroll: + "$ref": "#/components/schemas/Payroll-Final-Termination-Payroll-Type" + withholding_pay_period: + "$ref": "#/components/schemas/Payroll-Withholding-Pay-Period-Type" + skip_regular_deductions: + "$ref": "#/components/schemas/Payroll-Skip-Regular-Deductions-Type" + fixed_withholding_rate: + "$ref": "#/components/schemas/Payroll-Fixed-Withholding-Rate-Type" + pay_period: + "$ref": "#/components/schemas/Payroll-Pay-Period-Type" + payroll_status_meta: + "$ref": "#/components/schemas/Payroll-Payroll-Status-Meta-Type" + totals: + "$ref": "#/components/schemas/Payroll-Totals-Type" + company_taxes: + "$ref": "#/components/schemas/Payroll-Company-Taxes-Type" + payroll_taxes: + "$ref": "#/components/schemas/Payroll-Taxes-Type" + payment_speed_changed: + "$ref": "#/components/schemas/Payroll-Payment-Speed-Changed-Type" + created_at: + "$ref": "#/components/schemas/Created-At-Type" + submission_blockers: + "$ref": "#/components/schemas/Payroll-Submission-Blockers-Type" + credit_blockers: + "$ref": "#/components/schemas/Payroll-Credit-Blockers-Type" + processing_request: + "$ref": "#/components/schemas/Payroll-Processing-Request" + partner_owned_disbursement: + "$ref": "#/components/schemas/Payroll-Partner-Owned-Disbursement-Type" + Unprocessed-Payroll: + type: object + description: A payroll that has been transitioned back to unprocessed state after cancellation. + x-examples: + success_status: + uuid: b50e611d-8f3d-4f24-b001-46675f7b5777 + employee_compensations: [] + payroll_uuid: b50e611d-8f3d-4f24-b001-46675f7b5777 + company_uuid: 6bf7807c-a5a0-4f4d-b2e7-3fbb4b2299fb + off_cycle: false + auto_payroll: false + processed: false + processed_date: + calculated_at: + pay_period: + start_date: '2021-02-01' + end_date: '2021-02-15' + pay_schedule_uuid: 00ebc4a4-ec88-4435-8f45-c505bb63e501 + check_date: '2021-02-22' + external: false + payroll_deadline: '2021-02-18T22:00:00Z' + created_at: '2022-02-01T22:00:00Z' + partner_owned_disbursement: + properties: + payroll_deadline: + "$ref": "#/components/schemas/Payroll-Deadline-Type" + check_date: + "$ref": "#/components/schemas/Payroll-Check-Date-Type" + processed: + "$ref": "#/components/schemas/Payroll-Processed-Type" + processed_date: + "$ref": "#/components/schemas/Payroll-Processed-Date-Type" + calculated_at: + "$ref": "#/components/schemas/Payroll-Calculated-At-Type" + uuid: + "$ref": "#/components/schemas/Payroll-Payroll-Uuid-Type" + payroll_uuid: + "$ref": "#/components/schemas/Payroll-Payroll-Uuid-Type" + company_uuid: + "$ref": "#/components/schemas/Payroll-Company-Uuid-Type" + off_cycle: + "$ref": "#/components/schemas/Payroll-Off-Cycle-Type" + off_cycle_reason: + "$ref": "#/components/schemas/Off-Cycle-Reason-Type" + auto_payroll: + "$ref": "#/components/schemas/Auto-Pilot-Type" + external: + "$ref": "#/components/schemas/Payroll-External-Type" + pay_period: + "$ref": "#/components/schemas/Payroll-Pay-Period-Type" + created_at: + "$ref": "#/components/schemas/Created-At-Type" + partner_owned_disbursement: + "$ref": "#/components/schemas/Payroll-Partner-Owned-Disbursement-Type" + Payroll-Partner-Owned-Disbursement-Type: + type: + - boolean + - 'null' + description: Will money movement for the payroll be performed by the partner rather than by Gusto? + Payroll-Deadline-Type: + type: string + format: date-time + description: A timestamp that is the deadline for the payroll to be run in order for employees to be paid on time. If payroll has not been run by the deadline, a prepare request will update both the check date and deadline to reflect the soonest employees can be paid and the deadline by which the payroll must be run in order for said check date to be met. + readOnly: true + Payroll-Check-Date-Type: + type: string + description: The date on which employees will be paid for the payroll. + readOnly: true + Payroll-Processed-Type: + type: boolean + description: Whether or not the payroll has been successfully processed. Note that processed payrolls cannot be updated. Additionally, a payroll is not guaranteed to be processed just because the payroll deadline has passed. Late payrolls are not uncommon. Conversely, users may choose to run payroll before the payroll deadline. + readOnly: true + Payroll-Processed-Date-Type: + type: + - string + - 'null' + description: The date at which the payroll was processed. Null if the payroll isn't processed yet. + readOnly: true + Payroll-Calculated-At-Type: + type: + - string + - 'null' + format: date-time + description: A timestamp of the last valid payroll calculation. Null if there isn't a valid calculation. + readOnly: true + Payroll-Payroll-Uuid-Type: + type: string + description: The UUID of the payroll. + readOnly: true + Payroll-Company-Uuid-Type: + type: string + description: The UUID of the company for the payroll. + readOnly: true + Payroll-Off-Cycle-Type: + type: boolean + description: Indicates whether the payroll is an off-cycle payroll + readOnly: true + Off-Cycle-Reason-Type: + anyOf: + - type: string + enum: + - Adhoc + - Benefit reversal + - Bonus + - Correction + - Dismissed employee + - Hired employee + - Wage correction + - Tax reconciliation + - Reversal + - Disability insurance distribution + - Transition from old pay schedule + - type: 'null' + description: The off-cycle reason. Only included for off-cycle payrolls. + readOnly: true + Auto-Pilot-Type: + type: boolean + description: Indicates whether the payroll has automatic payroll enabled + readOnly: true + Payroll-External-Type: + type: boolean + description: Indicates whether the payroll is an external payroll + readOnly: true + Payroll-Final-Termination-Payroll-Type: + type: boolean + description: Indicates whether the payroll is the final payroll for a terminated employee. Only included for off-cycle payrolls. + readOnly: true + Payroll-Skip-Regular-Deductions-Type: + type: + - boolean + - 'null' + description: Block regular deductions and contributions for this payroll. Only included for off-cycle payrolls. + readOnly: true + Payroll-Withholding-Pay-Period-Type: + description: The payment schedule tax rate the payroll is based on. Only included for off-cycle payrolls. + readOnly: true + anyOf: + - type: string + enum: + - Every week + - Every other week + - Twice per month + - Monthly + - Quarterly + - Semiannually + - Annually + - type: 'null' + Payroll-Fixed-Withholding-Rate-Type: + type: + - boolean + - 'null' + description: Enable taxes to be withheld at the IRS's required rate of 22% for federal income taxes. State income taxes will be taxed at the state's supplemental tax rate. Otherwise, we'll sum the entirety of the employee's wages and withhold taxes on the entire amount at the rate for regular wages. Only included for off-cycle payrolls. + readOnly: true + Payroll-Pay-Period-Type: + type: object + readOnly: true + properties: + start_date: + type: string + description: The start date, inclusive, of the pay period. + readOnly: true + end_date: + type: string + description: The start date, inclusive, of the pay period. + readOnly: true + pay_schedule_uuid: + type: + - string + - 'null' + description: The UUID of the pay schedule for the payroll. + readOnly: true + Payroll-Payroll-Status-Meta-Type: + type: object + description: Information about the payroll's status and expected dates + properties: + cancellable: + type: boolean + description: true if the payroll may be cancelled. + readOnly: true + expected_check_date: + type: string + description: The date an employee will be paid if the payroll is submitted now. + readOnly: true + initial_check_date: + type: + - string + - 'null' + description: The normal check date for the associated pay period. Returns `null` for off-cycle payrolls (not meaningful for off-cycle). + readOnly: true + expected_debit_time: + type: string + description: The time the employer's account will be debited if the payroll is submitted now. + readOnly: true + payroll_late: + type: + - boolean + - 'null' + description: expected_check_date > initial_check_date. Returns `null` for off-cycle payrolls (not meaningful for off-cycle). + readOnly: true + initial_debit_cutoff_time: + type: string + description: Payroll must be submitted at or before this time to avoid late payroll. + readOnly: true + Payroll-Totals-Type: + type: object + description: The subtotals for the payroll. + properties: + company_debit: + type: string + description: The total company debit for the payroll. + readOnly: true + net_pay_debit: + type: string + minLength: 1 + description: The total company net pay for the payroll. + tax_debit: + type: string + description: The total tax debit for the payroll. + readOnly: true + reimbursement_debit: + type: string + description: The total reimbursement debit for the payroll. + readOnly: true + child_support_debit: + type: string + description: The total child support debit for the payroll. + readOnly: true + reimbursements: + type: string + description: The total reimbursements for the payroll. + readOnly: true + net_pay: + type: string + description: The net pay amount for the payroll. + readOnly: true + gross_pay: + type: string + description: The gross pay amount for the payroll. + readOnly: true + employee_bonuses: + type: string + description: The total employee bonuses amount for the payroll. + readOnly: true + employee_commissions: + type: string + description: The total employee commissions amount for the payroll. + readOnly: true + employee_cash_tips: + type: string + description: The total employee cash tips amount for the payroll. + readOnly: true + employee_paycheck_tips: + type: string + description: The total employee paycheck tips amount for the payroll. + readOnly: true + additional_earnings: + type: string + description: The total additional earnings amount for the payroll. + readOnly: true + owners_draw: + type: string + description: The total owner's draw for the payroll. + readOnly: true + check_amount: + type: string + description: The total check amount for the payroll. + readOnly: true + employer_taxes: + type: string + description: The total amount of employer paid taxes for the payroll. + readOnly: true + employee_taxes: + type: string + description: The total amount of employee paid taxes for the payroll. + readOnly: true + benefits: + type: string + description: The total amount of company contributed benefits for the payroll. + readOnly: true + employee_benefits_deductions: + type: string + description: The total amount of employee deducted benefits for the payroll. + readOnly: true + imputed_pay: + type: string + description: The total amount of imputed pay for the payroll. + readOnly: true + deferred_payroll_taxes: + type: string + description: The total amount of payroll taxes deferred for the payroll, such as allowed by the CARES act. + readOnly: true + other_deductions: + type: string + description: The total amount of deductions for the payroll. + readOnly: true + Payroll-Employee-Compensations-Included: + type: object + additionalProperties: true + properties: + taxes: + type: array + uniqueItems: false + description: An array of employer and employee taxes for the pay period. Only included for processed or calculated payrolls when `taxes` is present in the `include` parameter. + items: + type: object + properties: + name: + type: string + minLength: 1 + employer: + type: boolean + amount: + type: number + minLength: 1 + required: + - name + - employer + - amount + readOnly: true + readOnly: true + benefits: + type: array + uniqueItems: false + description: An array of employee benefits for the pay period. Benefits are only included for processed payroll when the include parameter is present. + items: + type: object + properties: + name: + type: string + readOnly: true + employee_deduction: + type: number + readOnly: true + company_contribution: + type: number + readOnly: true + imputed: + type: boolean + readOnly: true + readOnly: true + deductions: + type: array + uniqueItems: false + description: An array of employee deductions for the pay period. Only included when `deductions` is present in the `include` parameter. + items: + type: object + properties: + name: + type: string + description: The name of the deduction. + amount: + type: number + description: The amount of the deduction for the pay period. + amount_type: + type: string + description: The amount type of the deduction for the pay period. Only present for unprocessed payrolls. + enum: + - fixed + - percent + uuid: + type: string + description: The UUID of the deduction. Only present for unprocessed payrolls. + readOnly: true + updatable_via_payroll: + type: boolean + description: Whether the deduction can be updated via the payroll update endpoint. Only present for unprocessed payrolls. + readOnly: true + Payroll-Employee-Compensations-Base-Type: + type: object + properties: + employee_uuid: + type: string + description: The UUID of the employee. + readOnly: true + excluded: + type: boolean + description: This employee will be excluded (skipped) from payroll calculation and will not be paid for the payroll. Cancelling a payroll would reset all employees' excluded back to false. + readOnly: true + first_name: + type: + - string + - 'null' + description: The first name of the employee. Requires `employees:read` scope. + readOnly: true + preferred_first_name: + type: + - string + - 'null' + description: The preferred first name of the employee. Requires `employees:read` scope. + readOnly: true + last_name: + type: + - string + - 'null' + description: The last name of the employee. Requires `employees:read` scope. + readOnly: true + gross_pay: + type: + - string + - 'null' + description: The employee's gross pay (as a string-formatted decimal, e.g. "1234.56"), equal to regular wages + cash tips + payroll tips + any other additional earnings, excluding imputed income. This value is only available for processed payrolls. + readOnly: true + net_pay: + type: + - string + - 'null' + description: The employee's net pay (as a string-formatted decimal, e.g. "1234.56"), equal to gross_pay - employee taxes - employee deductions or garnishments - cash tips. This value is only available for processed payrolls. + readOnly: true + check_amount: + type: + - string + - 'null' + description: The employee's check amount (as a string-formatted decimal, e.g. "1234.56"), equal to net_pay + reimbursements. This value is only available for processed payrolls. + readOnly: true + payment_method: + description: The employee's compensation payment method. Is *only* `Historical` when retrieving external payrolls initially run outside of Gusto, then put into Gusto. + anyOf: + - type: string + enum: + - Direct Deposit + - Check + - Historical + - type: 'null' + memo: + type: + - string + - 'null' + description: Custom text that will be printed as a personal note to the employee on a paystub. + readOnly: true + fixed_compensations: + type: array + uniqueItems: false + description: An array of fixed compensations for the employee. Fixed compensations include tips, bonuses, and one time reimbursements. If this payroll has been processed, only fixed compensations with a value greater than 0.00 are returned. For an unprocessed payroll, all active fixed compensations are returned. + items: + type: object + properties: + name: + type: string + description: The name of the compensation. This also serves as the unique, immutable identifier for this compensation. + amount: + type: string + description: The amount of the compensation for the pay period. + job_uuid: + type: string + description: The UUID of the job for the compensation. + readOnly: true + hourly_compensations: + type: array + uniqueItems: false + description: An array of hourly compensations for the employee. Hourly compensations include regular, overtime, and double overtime hours. If this payroll has been processed, only hourly compensations with a value greater than 0.00 are returned. For an unprocessed payroll, all active hourly compensations are returned. + items: + type: object + properties: + name: + type: string + description: The name of the compensation. This also serves as the unique, immutable identifier for this compensation. + hours: + type: string + description: The number of hours to be compensated for this pay period. + amount: + type: string + description: The amount of the compensation. This field is only available after the payroll is calculated and cannot be used for updating hourly compensations. + job_uuid: + type: string + description: The UUID of the job for the compensation. + readOnly: true + compensation_multiplier: + type: number + description: The amount multiplied by the base rate to calculate total compensation per hour worked. + readOnly: true + flsa_status: + type: string + description: The FLSA Status of the employee's primary job compensation + readOnly: true + paid_time_off: + type: array + uniqueItems: false + description: An array of all paid time off the employee is eligible for this pay period. + items: + type: object + properties: + name: + type: string + description: The name of the PTO. This also serves as the unique, immutable identifier for the PTO. + hours: + type: string + description: The hours of this PTO taken during the pay period. + amount: + type: + - string + - 'null' + description: The dollar amount paid for this PTO entry during the pay period (as a string-formatted decimal, e.g. "1234.56"). Only available for processed payrolls. + readOnly: true + final_payout_unused_hours_input: + type: + - string + - 'null' + description: The outstanding hours paid upon termination. This field is only applicable for termination payrolls. + reimbursements: + type: array + uniqueItems: false + description: An array of reimbursements for the employee. + items: + type: object + properties: + amount: + type: string + description: The dollar amount of the reimbursement for the pay period. + description: + type: + - string + - 'null' + description: The description of the reimbursement. Null for unnamed reimbursements. + uuid: + type: + - string + - 'null' + description: The UUID of the reimbursement. Null for unnamed reimbursements. This field is only available for unprocessed payrolls. + readOnly: true + recurring: + type: boolean + description: Whether the reimbursement is recurring. This field is only available for unprocessed payrolls. + readOnly: true + required: + - amount + - description + Payroll-Employee-Compensations-Type: + allOf: + - "$ref": "#/components/schemas/Payroll-Employee-Compensations-Base-Type" + - "$ref": "#/components/schemas/Versionable" + - type: object + properties: + version: + description: The current version of this employee compensation. This field is only available for prepared payrolls. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. + deductions: + type: array + uniqueItems: false + description: An array of deductions for the employee. This field is included by default for regular payrolls in version `v2025-06-15` and later. + items: + type: object + properties: + name: + type: string + description: The name of the deduction. + amount: + type: number + description: The amount of the deduction for the pay period. + amount_type: + type: string + description: The amount type of the deduction for the pay period. Only present for unprocessed payrolls. + enum: + - fixed + - percent + uuid: + type: string + description: The UUID of the deduction. Only present for unprocessed payrolls. + updatable_via_payroll: + type: boolean + description: Whether the deduction can be updated via the payroll update endpoint. Only present for unprocessed payrolls. + readOnly: true + Payroll-Unprocessed-Employee-Compensations-Type: + allOf: + - "$ref": "#/components/schemas/Payroll-Employee-Compensations-Base-Type" + - "$ref": "#/components/schemas/Versionable" + - type: object + properties: + version: + description: The current version of this employee compensation. This field is only available for prepared payrolls. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/api-fundamentals#optimistic-version-control) for information on how to use this field. + Payroll-Company-Taxes-Type: + type: array + uniqueItems: false + description: An array of taxes applicable to this payroll in addition to taxes included in `employee_compensations`. Only included for processed or calculated payrolls when `taxes` is present in the `include` parameter. + items: + type: object + properties: + name: + type: string + description: The tax name + employer: + type: boolean + description: Whether this tax is an employer or employee tax + amount: + type: string + description: The amount of this tax for the payroll + Payroll-Taxes-Type: + type: array + uniqueItems: false + description: An array of tax totals applicable to this payroll. Only included for processed or calculated payrolls when `payroll_taxes` is present in the `include` parameter. + items: + type: object + properties: + name: + type: string + description: The tax name + employer: + type: boolean + description: Whether this tax is an employer or employee tax + amount: + type: number + description: The total tax for the payroll + Payroll-Payment-Speed-Changed-Type: + type: object + description: Only applicable when a payroll is moved to four day processing instead of fast ach. + properties: + original_check_date: + type: string + description: Original check date when fast ach applies. + readOnly: true + current_check_date: + type: string + description: Current check date. + readOnly: true + original_debit_date: + type: string + description: Original debit date when fast ach applies. + readOnly: true + current_debit_date: + type: string + description: Current debit date. + readOnly: true + reason: + type: string + description: The reason why the payroll is moved to four day. + readOnly: true + Created-At-Type: + type: string + format: date-time + description: Datetime for when the resource was created. + readOnly: true + Payroll-Submission-Blocker-Type: + type: object + description: A blocker that prevents payment submission. + properties: + blocker_type: + type: string + description: The type of blocker that's blocking the payment submission. + readOnly: true + blocker_name: + type: string + description: The name of the submission blocker. + readOnly: true + unblock_options: + type: array + uniqueItems: true + items: + type: object + properties: + unblock_type: + type: string + description: The type of unblock option for the submission blocker. + readOnly: true + check_date: + type: string + description: The payment check date associated with the unblock option. + readOnly: true + metadata: + type: object + additionalProperties: true + description: Additional data associated with the unblock option. + readOnly: true + description: The available options to unblock a submission blocker. + readOnly: true + selected_option: + type: + - string + - 'null' + description: The unblock option that's been selected to resolve the submission blocker. + readOnly: false + status: + type: string + description: The status of the submission blocker. + enum: + - unresolved + - resolved + readOnly: true + Payroll-Submission-Blocker-Request-Type: + type: object + description: Request object for resolving a submission blocker. Each submission_blocker should include a selected unblock option. + required: + - blocker_type + - selected_option + properties: + blocker_type: + type: string + description: The type of submission_blocker that is blocking the payment. + selected_option: + type: string + description: The selected option to unblock the payment's submission_blocker. + Payroll-Submission-Blockers-Type: + type: array + description: Only included for processed or calculated payrolls + uniqueItems: true + items: + "$ref": "#/components/schemas/Payroll-Submission-Blocker-Type" + Payroll-Credit-Blocker-Unblock-Option-Submit-Wire: + type: object + description: Unblock option to resolve a credit blocker by submitting a wire transfer + required: + - unblock_type + - check_date + - metadata + properties: + unblock_type: + type: string + enum: + - submit_wire + description: The type of unblock option for the credit blocker + readOnly: true + check_date: + type: string + description: The payment check date associated with the unblock option + readOnly: true + metadata: + type: object + required: + - wire_in_amount + - wire_in_deadline + - wire_in_request_uuid + properties: + wire_in_amount: + type: string + description: The amount to be wired in (decimal string) + readOnly: true + wire_in_deadline: + type: string + format: date-time + description: Deadline for the wire transfer to be received + readOnly: true + wire_in_request_uuid: + type: string + description: UUID of the wire in request + readOnly: true + readOnly: true + Payroll-Credit-Blocker-Unblock-Option-Submit-Bank-Screenshot: + type: object + description: Unblock option to resolve a credit blocker by submitting a bank screenshot + required: + - unblock_type + - check_date + - metadata + properties: + unblock_type: + type: string + enum: + - submit_bank_screenshot + description: The type of unblock option for the credit blocker + readOnly: true + check_date: + type: string + description: The payment check date associated with the unblock option + readOnly: true + metadata: + type: object + required: + - information_request_uuid + properties: + information_request_uuid: + type: string + description: UUID of the information request + readOnly: true + bank_account_last_four_digits: + type: + - string + - 'null' + description: Last 4 digits of the bank account number for the bank screenshot RFI + readOnly: true + readOnly: true + Payroll-Credit-Blocker-Unblock-Option-Respond-To-High-Risk-Fraud-Rfi: + type: object + description: Unblock option to resolve a credit blocker by responding to high risk fraud RFI + required: + - unblock_type + - check_date + - metadata + properties: + unblock_type: + type: string + enum: + - respond_to_high_risk_fraud_rfi + description: The type of unblock option for the credit blocker + readOnly: true + check_date: + type: string + description: The payment check date associated with the unblock option + readOnly: true + metadata: + type: object + required: + - information_request_uuid + properties: + information_request_uuid: + type: string + description: UUID of the information request + readOnly: true + readOnly: true + Payroll-Credit-Blocker-Unblock-Option-Wait-For-Reverse-Wire: + type: object + description: Unblock option to resolve a credit blocker by waiting for reverse wire + required: + - unblock_type + - check_date + - metadata + properties: + unblock_type: + type: string + enum: + - wait_for_reverse_wire + description: The type of unblock option for the credit blocker + readOnly: true + check_date: + type: string + description: The payment check date associated with the unblock option + readOnly: true + metadata: + type: object + additionalProperties: false + readOnly: true + Payroll-Credit-Blocker-Type: + type: object + description: A blocker that prevents payment crediting. + properties: + blocker_type: + type: string + description: The type of blocker that's blocking the payment from being credited. + readOnly: true + blocker_name: + type: string + description: The name of the credit blocker. + readOnly: true + unblock_options: + type: array + uniqueItems: true + items: + oneOf: + - "$ref": "#/components/schemas/Payroll-Credit-Blocker-Unblock-Option-Submit-Wire" + - "$ref": "#/components/schemas/Payroll-Credit-Blocker-Unblock-Option-Submit-Bank-Screenshot" + - "$ref": "#/components/schemas/Payroll-Credit-Blocker-Unblock-Option-Respond-To-High-Risk-Fraud-Rfi" + - "$ref": "#/components/schemas/Payroll-Credit-Blocker-Unblock-Option-Wait-For-Reverse-Wire" + discriminator: + propertyName: unblock_type + mapping: + submit_wire: "#/components/schemas/Payroll-Credit-Blocker-Unblock-Option-Submit-Wire" + submit_bank_screenshot: "#/components/schemas/Payroll-Credit-Blocker-Unblock-Option-Submit-Bank-Screenshot" + respond_to_high_risk_fraud_rfi: "#/components/schemas/Payroll-Credit-Blocker-Unblock-Option-Respond-To-High-Risk-Fraud-Rfi" + wait_for_reverse_wire: "#/components/schemas/Payroll-Credit-Blocker-Unblock-Option-Wait-For-Reverse-Wire" + description: The available options to unblock a credit blocker. + readOnly: true + selected_option: + type: + - string + - 'null' + description: The unblock option that's been selected to resolve the credit blocker. + readOnly: false + status: + type: string + description: The status of the credit blocker + enum: + - unresolved + - pending_review + - resolved + - failed + Payroll-Credit-Blockers-Type: + type: array + description: Only included for processed payrolls + uniqueItems: true + items: + "$ref": "#/components/schemas/Payroll-Credit-Blocker-Type" + Payroll-Processing-Request: + type: + - object + - 'null' + properties: + status: + type: string + description: The status of the payroll processing request + readOnly: true + enum: + - calculating + - calculate_success + - submitting + - submit_success + - processing_failed + errors: + description: Errors that occurred during async payroll processing + readOnly: true + type: array + items: + "$ref": "#/components/schemas/Entity-Error-Object" + Payroll-Fixed-Compensation-Types-Type: + type: array + items: + type: object + readOnly: true + properties: + name: + description: The name of an available type of fixed compensation. + type: string + readOnly: true + Payroll-Show: + type: object + x-examples: + success_status: + uuid: b441a30b-2adb-489e-b7b7-9d094011a3f8 + employee_compensations: [] + submission_blockers: [] + credit_blockers: [] + payroll_uuid: b441a30b-2adb-489e-b7b7-9d094011a3f8 + company_uuid: 9aa93530-43d5-484e-b608-33214109420d + off_cycle: false + auto_payroll: false + processed: true + processed_date: '2025-06-16' + calculated_at: '2025-06-16T16:58:03Z' + pay_period: + start_date: '2025-05-25' + end_date: '2025-06-09' + pay_schedule_uuid: 40ff5990-0191-4796-9717-32f7dd3e94d5 + check_date: '2025-06-13' + external: false + payroll_deadline: '2025-06-17T23:00:00Z' + totals: + employee_bonuses: '0.00' + employee_commissions: '0.00' + employee_cash_tips: '0.00' + employee_paycheck_tips: '0.00' + additional_earnings: '0.00' + owners_draw: '0.00' + benefits: '0.00' + check_amount: '0.00' + child_support_debit: '0.00' + company_debit: '0.00' + deferred_payroll_taxes: '0.00' + employee_benefits_deductions: '0.00' + employee_taxes: '0.00' + employer_taxes: '0.00' + gross_pay: '0.00' + imputed_pay: '0.00' + net_pay: '0.00' + net_pay_debit: '0.00' + other_deductions: '0.00' + reimbursement_debit: '0.00' + reimbursements: '0.00' + tax_debit: '0.00' + processing_request: + status: submit_success + errors: [] + created_at: '2025-06-16T16:58:03Z' + partner_owned_disbursement: + with_submit_wire_credit_blocker: + uuid: b441a30b-2adb-489e-b7b7-9d094011a3f8 + employee_compensations: [] + submission_blockers: [] + credit_blockers: + - blocker_type: waiting_for_wire_in + blocker_name: Waiting for Wire In + unblock_options: + - unblock_type: submit_wire + check_date: '2025-06-13' + metadata: + wire_in_amount: '15000.00' + wire_in_deadline: '2025-06-12T18:00:00Z' + wire_in_request_uuid: c1234567-89ab-cdef-0123-456789abcdef + selected_option: + status: unresolved + payroll_uuid: b441a30b-2adb-489e-b7b7-9d094011a3f8 + company_uuid: 9aa93530-43d5-484e-b608-33214109420d + off_cycle: false + auto_payroll: false + processed: true + processed_date: '2025-06-16' + calculated_at: '2025-06-16T16:58:03Z' + pay_period: + start_date: '2025-05-25' + end_date: '2025-06-09' + pay_schedule_uuid: 40ff5990-0191-4796-9717-32f7dd3e94d5 + check_date: '2025-06-13' + external: false + payroll_deadline: '2025-06-17T23:00:00Z' + totals: + employee_bonuses: '0.00' + employee_commissions: '0.00' + employee_cash_tips: '0.00' + employee_paycheck_tips: '0.00' + additional_earnings: '0.00' + owners_draw: '0.00' + benefits: '0.00' + check_amount: '0.00' + child_support_debit: '0.00' + company_debit: '0.00' + deferred_payroll_taxes: '0.00' + employee_benefits_deductions: '0.00' + employee_taxes: '0.00' + employer_taxes: '0.00' + gross_pay: '0.00' + imputed_pay: '0.00' + net_pay: '0.00' + net_pay_debit: '0.00' + other_deductions: '0.00' + reimbursement_debit: '0.00' + reimbursements: '0.00' + tax_debit: '0.00' + processing_request: + status: submit_success + errors: [] + created_at: '2025-06-16T16:58:03Z' + partner_owned_disbursement: + with_submit_bank_screenshot_credit_blocker: + uuid: b441a30b-2adb-489e-b7b7-9d094011a3f8 + employee_compensations: [] + submission_blockers: [] + credit_blockers: + - blocker_type: waiting_for_bank_screenshot + blocker_name: Waiting for Bank Screenshot + unblock_options: + - unblock_type: submit_bank_screenshot + check_date: '2025-06-13' + metadata: + information_request_uuid: d2234567-89ab-cdef-0123-456789abcdef + selected_option: + status: unresolved + payroll_uuid: b441a30b-2adb-489e-b7b7-9d094011a3f8 + company_uuid: 9aa93530-43d5-484e-b608-33214109420d + off_cycle: false + auto_payroll: false + processed: true + processed_date: '2025-06-16' + calculated_at: '2025-06-16T16:58:03Z' + pay_period: + start_date: '2025-05-25' + end_date: '2025-06-09' + pay_schedule_uuid: 40ff5990-0191-4796-9717-32f7dd3e94d5 + check_date: '2025-06-13' + external: false + payroll_deadline: '2025-06-17T23:00:00Z' + totals: + employee_bonuses: '0.00' + employee_commissions: '0.00' + employee_cash_tips: '0.00' + employee_paycheck_tips: '0.00' + additional_earnings: '0.00' + owners_draw: '0.00' + benefits: '0.00' + check_amount: '0.00' + child_support_debit: '0.00' + company_debit: '0.00' + deferred_payroll_taxes: '0.00' + employee_benefits_deductions: '0.00' + employee_taxes: '0.00' + employer_taxes: '0.00' + gross_pay: '0.00' + imputed_pay: '0.00' + net_pay: '0.00' + net_pay_debit: '0.00' + other_deductions: '0.00' + reimbursement_debit: '0.00' + reimbursements: '0.00' + tax_debit: '0.00' + processing_request: + status: submit_success + errors: [] + created_at: '2025-06-16T16:58:03Z' + partner_owned_disbursement: + with_respond_to_high_risk_fraud_rfi_credit_blocker: + uuid: b441a30b-2adb-489e-b7b7-9d094011a3f8 + employee_compensations: [] + submission_blockers: [] + credit_blockers: + - blocker_type: waiting_for_high_risk_fraud_rfi + blocker_name: Waiting for High Risk Fraud RFI + unblock_options: + - unblock_type: respond_to_high_risk_fraud_rfi + check_date: '2025-06-13' + metadata: + information_request_uuid: e3234567-89ab-cdef-0123-456789abcdef + selected_option: + status: pending_review + payroll_uuid: b441a30b-2adb-489e-b7b7-9d094011a3f8 + company_uuid: 9aa93530-43d5-484e-b608-33214109420d + off_cycle: false + auto_payroll: false + processed: true + processed_date: '2025-06-16' + calculated_at: '2025-06-16T16:58:03Z' + pay_period: + start_date: '2025-05-25' + end_date: '2025-06-09' + pay_schedule_uuid: 40ff5990-0191-4796-9717-32f7dd3e94d5 + check_date: '2025-06-13' + external: false + payroll_deadline: '2025-06-17T23:00:00Z' + totals: + employee_bonuses: '0.00' + employee_commissions: '0.00' + employee_cash_tips: '0.00' + employee_paycheck_tips: '0.00' + additional_earnings: '0.00' + owners_draw: '0.00' + benefits: '0.00' + check_amount: '0.00' + child_support_debit: '0.00' + company_debit: '0.00' + deferred_payroll_taxes: '0.00' + employee_benefits_deductions: '0.00' + employee_taxes: '0.00' + employer_taxes: '0.00' + gross_pay: '0.00' + imputed_pay: '0.00' + net_pay: '0.00' + net_pay_debit: '0.00' + other_deductions: '0.00' + reimbursement_debit: '0.00' + reimbursements: '0.00' + tax_debit: '0.00' + processing_request: + status: submit_success + errors: [] + created_at: '2025-06-16T16:58:03Z' + partner_owned_disbursement: + with_wait_for_reverse_wire_credit_blocker: + uuid: b441a30b-2adb-489e-b7b7-9d094011a3f8 + employee_compensations: [] + submission_blockers: [] + credit_blockers: + - blocker_type: waiting_for_reverse_wire + blocker_name: Waiting for Reverse Wire + unblock_options: + - unblock_type: wait_for_reverse_wire + check_date: '2025-06-13' + metadata: {} + selected_option: + status: resolved + payroll_uuid: b441a30b-2adb-489e-b7b7-9d094011a3f8 + company_uuid: 9aa93530-43d5-484e-b608-33214109420d + off_cycle: false + auto_payroll: false + processed: true + processed_date: '2025-06-16' + calculated_at: '2025-06-16T16:58:03Z' + pay_period: + start_date: '2025-05-25' + end_date: '2025-06-09' + pay_schedule_uuid: 40ff5990-0191-4796-9717-32f7dd3e94d5 + check_date: '2025-06-13' + external: false + payroll_deadline: '2025-06-17T23:00:00Z' + totals: + employee_bonuses: '0.00' + employee_commissions: '0.00' + employee_cash_tips: '0.00' + employee_paycheck_tips: '0.00' + additional_earnings: '0.00' + owners_draw: '0.00' + benefits: '0.00' + check_amount: '0.00' + child_support_debit: '0.00' + company_debit: '0.00' + deferred_payroll_taxes: '0.00' + employee_benefits_deductions: '0.00' + employee_taxes: '0.00' + employer_taxes: '0.00' + gross_pay: '0.00' + imputed_pay: '0.00' + net_pay: '0.00' + net_pay_debit: '0.00' + other_deductions: '0.00' + reimbursement_debit: '0.00' + reimbursements: '0.00' + tax_debit: '0.00' + processing_request: + status: submit_success + errors: [] + created_at: '2025-06-16T16:58:03Z' + partner_owned_disbursement: + properties: + payroll_deadline: + "$ref": "#/components/schemas/Payroll-Deadline-Type" + check_date: + "$ref": "#/components/schemas/Payroll-Check-Date-Type" + processed: + "$ref": "#/components/schemas/Payroll-Processed-Type" + processed_date: + "$ref": "#/components/schemas/Payroll-Processed-Date-Type" + calculated_at: + "$ref": "#/components/schemas/Payroll-Calculated-At-Type" + uuid: + "$ref": "#/components/schemas/Payroll-Payroll-Uuid-Type" + payroll_uuid: + "$ref": "#/components/schemas/Payroll-Payroll-Uuid-Type" + company_uuid: + "$ref": "#/components/schemas/Payroll-Company-Uuid-Type" + off_cycle: + "$ref": "#/components/schemas/Payroll-Off-Cycle-Type" + off_cycle_reason: + "$ref": "#/components/schemas/Off-Cycle-Reason-Type" + auto_payroll: + "$ref": "#/components/schemas/Auto-Pilot-Type" + external: + "$ref": "#/components/schemas/Payroll-External-Type" + final_termination_payroll: + "$ref": "#/components/schemas/Payroll-Final-Termination-Payroll-Type" + withholding_pay_period: + "$ref": "#/components/schemas/Payroll-Withholding-Pay-Period-Type" + skip_regular_deductions: + "$ref": "#/components/schemas/Payroll-Skip-Regular-Deductions-Type" + fixed_withholding_rate: + "$ref": "#/components/schemas/Payroll-Fixed-Withholding-Rate-Type" + pay_period: + "$ref": "#/components/schemas/Payroll-Pay-Period-Type" + payroll_status_meta: + "$ref": "#/components/schemas/Payroll-Payroll-Status-Meta-Type" + totals: + "$ref": "#/components/schemas/Payroll-Totals-Type" + company_taxes: + "$ref": "#/components/schemas/Payroll-Company-Taxes-Type" + payroll_taxes: + "$ref": "#/components/schemas/Payroll-Taxes-Type" + payment_speed_changed: + "$ref": "#/components/schemas/Payroll-Payment-Speed-Changed-Type" + created_at: + "$ref": "#/components/schemas/Created-At-Type" + submission_blockers: + "$ref": "#/components/schemas/Payroll-Submission-Blockers-Type" + credit_blockers: + "$ref": "#/components/schemas/Payroll-Credit-Blockers-Type" + processing_request: + "$ref": "#/components/schemas/Payroll-Processing-Request" + partner_owned_disbursement: + "$ref": "#/components/schemas/Payroll-Partner-Owned-Disbursement-Type" + employee_compensations: + type: array + uniqueItems: false + items: + type: object + allOf: + - "$ref": "#/components/schemas/Payroll-Employee-Compensations-Type" + - "$ref": "#/components/schemas/Payroll-Employee-Compensations-Included" + Payroll-Unprocessed: + description: An unprocessed payroll with employee compensations. + x-examples: + success_status: + uuid: 4428f108-e46e-4ab6-ba20-03cea031cfc0 + employee_compensations: [] + payroll_uuid: 4428f108-e46e-4ab6-ba20-03cea031cfc0 + company_uuid: 42b5333b-ee39-493a-bf7e-f41f2bd67848 + payroll_status_meta: + cancellable: false + expected_check_date: '2025-06-17' + initial_check_date: '2025-06-17' + expected_debit_time: '2025-06-11T23:00:00Z' + payroll_late: false + initial_debit_cutoff_time: '2025-06-11T23:00:00Z' + off_cycle: true + auto_payroll: false + off_cycle_reason: Bonus + withholding_pay_period: Twice per month + skip_regular_deductions: true + fixed_withholding_rate: true + final_termination_payroll: false + processed: false + processed_date: + calculated_at: + pay_period: + start_date: '2025-06-10' + end_date: '2025-06-16' + pay_schedule_uuid: + check_date: '2025-06-17' + external: false + payroll_deadline: '2025-06-11T23:00:00Z' + fixed_compensation_types: + - name: Bonus + - name: Commission + - name: Paycheck Tips + - name: Cash Tips + - name: Correction Payment + - name: Reimbursement + created_at: '2025-06-11T19:40:52Z' + partner_owned_disbursement: + type: object + properties: + payroll_deadline: + "$ref": "#/components/schemas/Payroll-Deadline-Type" + check_date: + "$ref": "#/components/schemas/Payroll-Check-Date-Type" + processed: + "$ref": "#/components/schemas/Payroll-Processed-Type" + processed_date: + "$ref": "#/components/schemas/Payroll-Processed-Date-Type" + calculated_at: + "$ref": "#/components/schemas/Payroll-Calculated-At-Type" + uuid: + "$ref": "#/components/schemas/Payroll-Payroll-Uuid-Type" + payroll_uuid: + "$ref": "#/components/schemas/Payroll-Payroll-Uuid-Type" + company_uuid: + "$ref": "#/components/schemas/Payroll-Company-Uuid-Type" + off_cycle: + "$ref": "#/components/schemas/Payroll-Off-Cycle-Type" + off_cycle_reason: + "$ref": "#/components/schemas/Off-Cycle-Reason-Type" + auto_payroll: + "$ref": "#/components/schemas/Auto-Pilot-Type" + external: + "$ref": "#/components/schemas/Payroll-External-Type" + final_termination_payroll: + "$ref": "#/components/schemas/Payroll-Final-Termination-Payroll-Type" + withholding_pay_period: + "$ref": "#/components/schemas/Payroll-Withholding-Pay-Period-Type" + skip_regular_deductions: + "$ref": "#/components/schemas/Payroll-Skip-Regular-Deductions-Type" + fixed_withholding_rate: + "$ref": "#/components/schemas/Payroll-Fixed-Withholding-Rate-Type" + pay_period: + "$ref": "#/components/schemas/Payroll-Pay-Period-Type" + payroll_status_meta: + "$ref": "#/components/schemas/Payroll-Payroll-Status-Meta-Type" + employee_compensations: + type: array + uniqueItems: false + items: + "$ref": "#/components/schemas/Payroll-Unprocessed-Employee-Compensations-Type" + payment_speed_changed: + "$ref": "#/components/schemas/Payroll-Payment-Speed-Changed-Type" + created_at: + "$ref": "#/components/schemas/Created-At-Type" + fixed_compensation_types: + "$ref": "#/components/schemas/Payroll-Fixed-Compensation-Types-Type" + processing_request: + "$ref": "#/components/schemas/Payroll-Processing-Request" + partner_owned_disbursement: + "$ref": "#/components/schemas/Payroll-Partner-Owned-Disbursement-Type" + Payroll-Prepared: + description: The response from preparing a payroll for update. Contains refreshed employee compensations, updated payroll dates, and version information needed for subsequent payroll updates. + x-examples: + success_status: + uuid: 4428f108-e46e-4ab6-ba20-03cea031cfc0 + employee_compensations: [] + payroll_uuid: 4428f108-e46e-4ab6-ba20-03cea031cfc0 + company_uuid: 42b5333b-ee39-493a-bf7e-f41f2bd67848 + payroll_status_meta: + cancellable: false + expected_check_date: '2025-06-17' + initial_check_date: '2025-06-17' + expected_debit_time: '2025-06-11T23:00:00Z' + payroll_late: false + initial_debit_cutoff_time: '2025-06-11T23:00:00Z' + off_cycle: true + auto_payroll: false + off_cycle_reason: Bonus + withholding_pay_period: Twice per month + skip_regular_deductions: true + fixed_withholding_rate: true + final_termination_payroll: false + processed: false + processed_date: + calculated_at: + pay_period: + start_date: '2025-06-10' + end_date: '2025-06-16' + pay_schedule_uuid: + check_date: '2025-06-17' + external: false + payroll_deadline: '2025-06-11T23:00:00Z' + fixed_compensation_types: + - name: Bonus + - name: Commission + - name: Paycheck Tips + - name: Cash Tips + - name: Correction Payment + - name: Reimbursement + created_at: '2025-06-11T19:40:52Z' + partner_owned_disbursement: + type: object + properties: + payroll_deadline: + "$ref": "#/components/schemas/Payroll-Deadline-Type" + check_date: + "$ref": "#/components/schemas/Payroll-Check-Date-Type" + processed: + "$ref": "#/components/schemas/Payroll-Processed-Type" + processed_date: + "$ref": "#/components/schemas/Payroll-Processed-Date-Type" + calculated_at: + "$ref": "#/components/schemas/Payroll-Calculated-At-Type" + uuid: + "$ref": "#/components/schemas/Payroll-Payroll-Uuid-Type" + payroll_uuid: + "$ref": "#/components/schemas/Payroll-Payroll-Uuid-Type" + company_uuid: + "$ref": "#/components/schemas/Payroll-Company-Uuid-Type" + off_cycle: + "$ref": "#/components/schemas/Payroll-Off-Cycle-Type" + off_cycle_reason: + "$ref": "#/components/schemas/Off-Cycle-Reason-Type" + auto_payroll: + "$ref": "#/components/schemas/Auto-Pilot-Type" + external: + "$ref": "#/components/schemas/Payroll-External-Type" + final_termination_payroll: + "$ref": "#/components/schemas/Payroll-Final-Termination-Payroll-Type" + withholding_pay_period: + "$ref": "#/components/schemas/Payroll-Withholding-Pay-Period-Type" + skip_regular_deductions: + "$ref": "#/components/schemas/Payroll-Skip-Regular-Deductions-Type" + fixed_withholding_rate: + "$ref": "#/components/schemas/Payroll-Fixed-Withholding-Rate-Type" + pay_period: + "$ref": "#/components/schemas/Payroll-Pay-Period-Type" + payroll_status_meta: + "$ref": "#/components/schemas/Payroll-Payroll-Status-Meta-Type" + employee_compensations: + type: array + uniqueItems: false + items: + "$ref": "#/components/schemas/Payroll-Employee-Compensations-Type" + payment_speed_changed: + "$ref": "#/components/schemas/Payroll-Payment-Speed-Changed-Type" + created_at: + "$ref": "#/components/schemas/Created-At-Type" + fixed_compensation_types: + "$ref": "#/components/schemas/Payroll-Fixed-Compensation-Types-Type" + processing_request: + "$ref": "#/components/schemas/Payroll-Processing-Request" + partner_owned_disbursement: + "$ref": "#/components/schemas/Payroll-Partner-Owned-Disbursement-Type" + Payroll-Receipt: + type: object + x-examples: + success_status: + totals: + company_debit: '0.00' + net_pay_debit: '0.00' + child_support_debit: '0.00' + reimbursement_debit: '0.00' + tax_debit: '0.00' + taxes: [] + employee_compensations: [] + licensee: + name: Gusto, Zenpayroll Inc. + address: 525 20th St + city: San Francisco + state: CA + postal_code: '94107' + phone_number: '4157778888' + payroll_uuid: 9f624c0d-0d4f-499a-993a-846dfa47a48e + company_uuid: '0481a066-e26a-465b-a2c1-933bd5b03a69' + name_of_sender: Kiehn, Conroy and Prohaska + name_of_recipient: Payroll Recipients + recipient_notice: Payroll recipients include the employees listed below plus the tax agencies for the taxes listed below. + debit_date: '2025-06-12' + license: ZenPayroll, Inc., dba Gusto is a licensed money transmitter. For more about Gusto’s licenses and your state-specific rights to request information, submit complaints, dispute errors, or cancel transactions, visit our license page. + license_uri: https://gusto.com/about/licenses + right_to_refund: https://gusto.com/about/licenses + liability_of_licensee: https://gusto.com/about/licenses + properties: + payroll_uuid: + type: string + description: A unique identifier of the payroll receipt. + company_uuid: + type: string + description: A unique identifier of the company for the payroll. + name_of_sender: + type: string + description: The name of the company by whom the payroll was paid + name_of_recipient: + type: string + description: Always the fixed string "Payroll Recipients" + recipient_notice: + type: string + description: Always the fixed string "Payroll recipients include the employees listed below plus the tax agencies for the taxes listed below." + debit_date: + type: string + description: The debit or funding date for the payroll + license: + type: string + description: Always the fixed string "ZenPayroll, Inc., dba Gusto is a licensed money transmitter. For more about Gusto’s licenses and your state-specific rights to request information, submit complaints, dispute errors, or cancel transactions, visit our license page." + license_uri: + type: string + description: URL for the license information for the licensed payroll processor. Always the fixed string "https://gusto.com/about/licenses" + right_to_refund: + type: string + description: '' + liability_of_licensee: + type: string + description: '' + totals: + type: object + description: The subtotals for the payroll. + properties: + company_debit: + type: string + format: float + description: The total company debit for the payroll. + net_pay_debit: + type: string + format: float + description: The total company net pay for the payroll. + child_support_debit: + type: string + format: float + description: The total child support debit for the payroll. + reimbursement_debit: + type: string + format: float + description: The total reimbursements for the payroll. + tax_debit: + type: string + format: float + description: The total tax debit for the payroll. + taxes: + type: array + description: An array of totaled employer and employee taxes for the pay period. + items: + type: object + properties: + name: + type: string + description: The amount paid for this tax. + amount: + type: string + format: float + description: The total amount paid by both employer and employee for this tax. + employee_compensations: + type: array + description: An array of employee compensations and withholdings for this payroll + items: + type: object + properties: + employee_uuid: + type: string + description: The UUID of the employee. + employee_first_name: + type: string + description: The first name of the employee. + employee_last_name: + type: string + description: The last name of the employee. + payment_method: + type: string + description: The employee's compensation payment method. + enum: + - Direct Deposit + - Check + net_pay: + type: string + format: float + description: The employee's net pay. Net pay paid by check is available for reference but is not included in the `["totals"]["net_pay_debit"]` amount. + total_tax: + type: string + format: float + description: The total of employer and employee taxes for the pay period. + total_garnishments: + type: string + format: float + description: The total garnishments for the pay period. + child_support_garnishment: + type: string + format: float + description: The total child support garnishment for the pay period. + total_reimbursement: + type: string + format: float + description: The total reimbursement for the pay period. + licensee: + type: object + description: The licensed payroll processor + properties: + name: + type: string + description: Always the fixed string "Gusto, Zenpayroll Inc." + address: + type: string + description: Always the fixed string "525 20th St" + city: + type: string + description: Always the fixed string "San Francisco" + state: + type: string + description: Always the fixed string "CA" + postal_code: + type: string + description: Always the fixed string "94107" + phone_number: + type: string + description: Always the fixed string "4157778888" + Versionable: + type: object + properties: + version: + type: string + description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. + Contractor-Address: + type: object + x-examples: + example: + version: 23323096a8015e32d9795fadf1fd300d + contractor_uuid: 9779767c-6044-48e0-bf68-aeb370b9a2e7 + street_1: 999 Kiera Stravenue + street_2: Suite 391 + city: San Francisco + state: CA + zip: '94107' + country: USA + active: true + properties: + contractor_uuid: + type: string + description: The UUID of the contractor + street_1: + type: + - string + - 'null' + readOnly: false + street_2: + type: + - string + - 'null' + readOnly: false + city: + type: + - string + - 'null' + readOnly: false + state: + type: + - string + - 'null' + readOnly: false + zip: + type: + - string + - 'null' + readOnly: false + country: + type: + - string + - 'null' + readOnly: false + default: USA + active: + type: boolean + description: The status of the location. Inactive locations have been deleted, but may still have historical data associated with them. + readOnly: true + version: + type: string + description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. + Contractor-Address-Update-Body: + type: object + properties: + version: + type: string + example: 56d00c178bc7393b2a206ed6a86afcb4 + description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. + street_1: + type: string + street_2: + type: string + city: + type: string + state: + type: string + zip: + type: string + required: + - version + x-examples: + example: + version: fe75bd065ff48b91c35fe8ff842f986c + street_1: 300 3rd Street + street_2: + city: San Francisco + state: CA + zip: '94107' + Address: + type: object + allOf: + - "$ref": "#/components/schemas/Versionable" + - type: object + properties: + street_1: + type: + - string + - 'null' + readOnly: false + street_2: + type: + - string + - 'null' + readOnly: false + city: + type: + - string + - 'null' + readOnly: false + state: + type: + - string + - 'null' + readOnly: false + zip: + type: + - string + - 'null' + readOnly: false + country: + type: + - string + - 'null' + readOnly: false + default: USA + active: + type: boolean + description: The status of the location. Inactive locations have been deleted, but may still have historical data associated with them. + readOnly: true + example: + street_1: 412 Kiera Stravenue + street_2: Suite 391 + city: San Francisco + state: CA + zip: '94107' + country: USA + active: true + Department: + type: object + allOf: + - "$ref": "#/components/schemas/Versionable" + - type: object + properties: + uuid: + type: string + description: The UUID of the department + company_uuid: + type: string + description: The UUID of the company + title: + type: string + description: Name of the department + employees: + type: array + description: Array of employees assigned to the department. + items: + properties: + uuid: + type: string + contractors: + type: array + description: Array of contractors assigned to the department. + items: + properties: + uuid: + type: string + x-examples: + example: + uuid: 56260b3d-c375-415c-b77a-75d99f717193 + company_uuid: 7087a288-8349-4632-b92e-bc94fb79f29e + title: Stage Hand + version: d90440dd464601d1c8f4e9e240dfb7a6 + employees: + - uuid: 41199375-a999-4414-9f40-d9bf596b134d + contractors: + - uuid: 3488549f-60e4-494f-a34a-9d8aad3aabf5 + example_created: + uuid: 56260b3d-c375-415c-b77a-75d99f717193 + company_uuid: 7087a288-8349-4632-b92e-bc94fb79f29e + title: Stage Hand + version: d90440dd464601d1c8f4e9e240dfb7a6 + employees: [] + contractors: [] + Department-List: + type: array + items: + "$ref": "#/components/schemas/Department" + x-examples: + example: + - uuid: 56260b3d-c375-415c-b77a-75d99f717193 + company_uuid: 7087a288-8349-4632-b92e-bc94fb79f29e + title: Stage Hand + version: d90440dd464601d1c8f4e9e240dfb7a6 + employees: + - uuid: 41199375-a999-4414-9f40-d9bf596b134d + contractors: [] + - uuid: ec5c8a85-3233-4f39-a9f5-fb1ab7b5f5f3 + company_uuid: 7087a288-8349-4632-b92e-bc94fb79f29e + title: Actors + version: 34f39a30b45d077cb83aed2df4810d74 + employees: + - uuid: 7ee4aca1-814b-4034-b0f8-07f93cc679d1 + contractors: [] + - uuid: 1802465d-4f68-4865-920c-1307ab095f12 + company_uuid: 7087a288-8349-4632-b92e-bc94fb79f29e + title: Band + version: 1fe3076d35ef7c97d0ae68c5f4df0acd + employees: + - uuid: a73955be-c009-44dc-915e-6246e2bdedbb + contractors: + - uuid: 3488549f-60e4-494f-a34a-9d8aad3aabf5 + Department-Create-Request-Body: + type: object + properties: + title: + type: string + description: Name of the department + example: Stage Hand + required: + - title + Department-Update-Request-Body: + type: object + allOf: + - "$ref": "#/components/schemas/Versionable-Required" + - "$ref": "#/components/schemas/Department-Create-Request-Body" + Department-People-Request-Body: + type: object + allOf: + - "$ref": "#/components/schemas/Versionable-Required" + - type: object + properties: + employees: + type: array + description: Array of employees to add or remove from the department + items: + type: object + properties: + uuid: + type: string + contractors: + type: array + description: Array of contractors to add or remove from the department + items: + type: object + properties: + uuid: + type: string + Child-Support-Data: + description: Child Support agency data + type: object + properties: + agencies: + type: array + description: State child support agencies + items: + type: object + properties: + state: + type: string + description: Two letter state abbreviation + name: + type: string + description: Name of state child support agency + manual_payment_required: + type: boolean + description: 'Specifies if remitting payment to the agency is required outside of Gusto. If true, Gusto includes garnishment amounts for this agency in payroll calculation, but does not debit for or remit payment to the agency automatically. As of September 2024, only garnishments for South Carolina Integrated Child Support Services require manual payment. ' + fips_codes: + type: array + description: FIPS codes for state or county child support orders + items: + type: object + properties: + code: + type: string + description: FIPS code for state or county + county: + type: + - string + - 'null' + description: Name of county in the state for the corresponding FIPS code. When `null` the FIPS code applies state wide. + required_attributes: + type: array + description: Describes which child support case identifying attributes are required for this agency. While most agencies only require a single identifier, some (e.g. OH) require multiple identifiers. + items: + type: object + properties: + key: + type: string + description: A required attribute when creating a garnishment for this state agency. The current values are listed as an enum; though unlikely, values could be added if state agency requirements change in the future. + enum: + - case_number + - order_number + - remittance_number + label: + type: string + description: A human readable name of the attribute, e.g. CSE Case Number + x-examples: + Example: + agencies: + - state: AK + name: Alaska Child Support Services Division + manual_payment_required: false + fips_codes: + - county: + code: '0200000' + required_attributes: + - key: case_number + label: CSE Case Number + - state: OH + name: Ohio Office of Child Support Enforcement + manual_payment_required: false + fips_codes: + - county: + code: '39000' + required_attributes: + - key: case_number + label: CSE Case Number + - key: order_number + label: Order Identifier + Employee-Onboarding-Document: + type: object + description: Configuration for which onboarding documents (e.g. Form I-9) are required for an employee during onboarding. + properties: + uuid: + type: + - string + - 'null' + description: The UUID of the onboarding documents config record. Null when no config has been saved yet. + readOnly: true + i9_document: + type: boolean + description: | + 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. + readOnly: true + x-examples: + config_with_i9: + uuid: 7b1d0df1-6403-4a06-8768-c1dd7d24d27a + i9_document: true + config_without_i9: + uuid: 7b1d0df1-6403-4a06-8768-c1dd7d24d27a + i9_document: false + config_not_yet_saved: + uuid: + i9_document: false + Employee-Onboarding-Documents-Config-Request: + type: object + description: Request body for updating an employee's onboarding documents configuration. + properties: + i9_document: + type: boolean + default: false + description: | + 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. + x-examples: + enable_i9: + i9_document: true + disable_i9: + i9_document: false + I9-Authorization: + type: object + description: An employee's I-9 authorization + properties: + uuid: + type: string + description: The UUID of the I-9 authorization + readOnly: true + form_uuid: + type: + - string + - 'null' + description: The UUID of the Form associated with this I-9 authorization. Use this with "Employee Forms" API endpoints. + readOnly: true + version: + type: string + description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. + readOnly: true + authorization_status: + type: string + description: The employee's authorization status + enum: + - citizen + - noncitizen + - permanent_resident + - alien + document_type: + anyOf: + - type: string + enum: + - uscis_alien_registration_number + - form_i94 + - foreign_passport + - type: 'null' + description: The document's document type + has_document_number: + type: + - boolean + - 'null' + description: Whether or not a `document_number` exists for this document. + expiration_date: + type: + - string + - 'null' + description: The document's expiration date + country: + type: + - string + - 'null' + description: The document's country of issuance + employer_signed: + type: boolean + description: Whether the employer has signed the Form I-9 + readOnly: true + employee_signed: + type: boolean + description: Whether the employee has signed the Form I-9 + readOnly: true + additional_info: + type: + - string + - 'null' + description: Any additional notes + alt_procedure: + type: + - boolean + - 'null' + description: Whether an alternative procedure authorized by DHS to examine documents was used + required: + - uuid + - version + - authorization_status + - employer_signed + - employee_signed + x-tags: + - I-9 Verification + x-examples: + alien_with_foreign_passport: + uuid: 7f2337f9-9b78-44b9-aeed-be4777b833a8 + version: 6ae7ff720107b356bf13b1606f60b24f + form_uuid: c54046f7-1be4-4c54-8194-f4842c30c86d + authorization_status: alien + document_type: foreign_passport + has_document_number: true + expiration_date: '2028-01-01' + country: Canada + employer_signed: false + employee_signed: false + additional_info: + alt_procedure: + citizen_authorization: + uuid: a12bc345-6789-4def-abcd-ef0123456789 + version: 52b7c567242cb7393b2a206ed6a86afcb + form_uuid: + authorization_status: citizen + document_type: + has_document_number: false + expiration_date: + country: + employer_signed: false + employee_signed: false + additional_info: + alt_procedure: + employer_signed_authorization: + uuid: 7f2337f9-9b78-44b9-aeed-be4777b833a8 + version: 8bc7393b2a206ed6a86afcb4d00c1785 + form_uuid: c54046f7-1be4-4c54-8194-f4842c30c86d + authorization_status: citizen + document_type: + has_document_number: false + expiration_date: + country: + employer_signed: true + employee_signed: true + additional_info: Additional info + alt_procedure: false + I9-Authorization-Document: + type: object + description: An employee's I-9 verification document + properties: + uuid: + type: string + description: The UUID of the I-9 verification document + readOnly: true + document_type: + type: string + description: The document's document type + document_title: + type: string + description: The document's document title + expiration_date: + type: + - string + - 'null' + description: The document's expiration date + issuing_authority: + type: string + description: The document's issuing authority + required: + - uuid + - document_type + - document_title + - issuing_authority + x-tags: + - I-9 Verification + x-examples: + driver_license: + uuid: 7f2337f9-9b78-44b9-aeed-be4777b833a8 + document_type: driver_license + issuing_authority: USA + expiration_date: '2027-01-01' + document_title: Driver's license + ssn_card: + uuid: 9p2337f9-9b78-44b9-aeed-be4777b833a8 + document_type: ssn_card + issuing_authority: USA + document_title: Social Security card + I9-Authorization-Document-Option: + type: object + description: An employee's I-9 verification document option based on the authorization status + properties: + section: + type: string + description: The document option's section in the list of acceptable documents on the Form I-9 + readOnly: true + enum: + - A + - A1 + - A2 + - A3 + - B + - C + description: + type: string + description: The document option's description + readOnly: true + document_type: + type: string + description: The document option's document type + readOnly: true + document_title: + type: array + description: The document option's document titles + readOnly: true + items: + type: string + common_choice: + type: boolean + description: Whether the document is a common choice for I-9 verification + readOnly: true + required: + - section + - description + - document_type + - document_title + - common_choice + x-tags: + - I-9 Verification + x-examples: + example_a: + section: A + description: Foreign passport + document_type: foreign_passport_w_i94 + document_title: + - Foreign passport + common_choice: true + example_b: + section: B + description: Driver's license or state-issued ID card + document_type: driver_license + document_title: + - Driver's license + - State ID card + common_choice: true + example_c: + section: C + description: Social Security card + document_type: ssn_card + document_title: + - Social Security card + common_choice: true + I9-Authorization-Request-Body: + description: Request body for creating or updating an employee's I-9 authorization. + type: object + properties: + version: + type: string + description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. If supplied, this endpoint will update the existing I-9 authorization if it exists. + authorization_status: + type: string + description: | + The employee's authorization status. + - `citizen`: A citizen is someone who was born in the United States or is a naturalized citizen living in the United States. + - `noncitizen`: A noncitizen national is someone born in American Samoa, certain former citizens of the former Trust Territory of the Pacific Islands, and certain children of noncitizen nationals born abroad. + - `permanent_resident`: A lawful permanent resident is someone who is not a US citizen and who resides under legally recognized and lawfully recorded permanent residence as an immigrant. + - `alien`: Also referred to as a "noncitizen authorized to work". This includes anyone who is authorized to work in the United States but is not a US citizen, US national or lawful permanent resident. + enum: + - citizen + - noncitizen + - permanent_resident + - alien + document_type: + type: string + description: | + The type of document an employee holds, based on their authorization status. + - This is unused for authorization status `citizen` or `noncitizen`. + - If the authorization status is `permanent_resident`, this must be `uscis_alien_registration_number`. + - If the authorization status is `alien`, this is required and may be any of the valid values. + enum: + - uscis_alien_registration_number + - form_i94 + - foreign_passport + document_number: + type: string + description: | + The document number. Formatting depends on the employee's document type. + - For `document_type:'uscis_alien_registration_number'`, this must be a USCIS Number/A-Number, which is 7 to 9 digits. + - For `document_type:'form_i94'`, this must be a Form I-94 Admission Number, which is 11 digits. + - For `document_type:'foreign_passport'`, this must be the passport number. + + This is required when the document type is present. + country: + type: string + description: | + The document's country of issuance. + + This is required when the document type is `foreign_passport`. + expiration_date: + type: string + description: | + The document's expiration date. + + This may only be used when the authorization status is `alien`. + required: + - authorization_status + x-examples: + create_citizen: + authorization_status: citizen + update_alien_with_foreign_passport: + version: 52b7c567242cb7393b2a206ed6a86afcb + authorization_status: alien + document_type: foreign_passport + document_number: '01234567' + country: Canada + expiration_date: '2028-01-01' + I9-Authorization-Employer-Sign-Request-Body: + description: Request body for employer signing an employee's Form I-9. + type: object + properties: + signature_text: + type: string + description: The signature + signer_title: + type: string + description: The signer's job title + signed_by_ip_address: + type: string + description: The IP address of the signatory who signed the form. Both IPv4 AND IPv6 are supported. You must provide the IP address with either this parameter OR you can leave out this parameter and set the IP address in the request header using the `x-gusto-client-ip` header instead. + agree: + type: boolean + description: Whether you agree to sign electronically + additional_info: + type: string + description: Any additional notes + alt_procedure: + type: boolean + description: Whether an alternative procedure authorized by DHS to examine documents was used + required: + - signature_text + - signer_title + - agree + x-examples: + employer_sign: + signature_text: Jane Doe + signer_title: Admin + signed_by_ip_address: 192.168.0.1 + agree: true + I9-Authorization-Documents-Request-Body: + description: Request body for creating an employee's I-9 authorization verification documents. + type: object + properties: + documents: + type: array + description: An array of I-9 verification documents. Every request must contain the complete list of documents for the employee, as previous records are replaced. + items: + type: object + properties: + document_type: + type: string + description: The document type. Use the document options endpoint to get the possible values. + example: us_passport + document_title: + type: string + description: The document title associated with the document type + example: US Passport + document_number: + type: string + description: The document's document number + example: F12345678 + expiration_date: + type: string + description: The document's expiration date + example: '2026-01-01' + issuing_authority: + type: string + description: The document's issuing authority + example: USA + required: + - document_type + - document_title + - issuing_authority + required: + - documents + x-examples: + create_documents: + documents: + - document_type: us_passport + document_title: US passport + document_number: F12345678 + expiration_date: '2035-04-01' + issuing_authority: US Department of State + Rehire-Body: + type: object + properties: + effective_date: + type: string + description: The day when the employee returns to work. + example: '2023-06-30' + file_new_hire_report: + type: boolean + description: The boolean flag indicating whether Gusto will file a new hire report for the employee. + work_location_uuid: + type: string + description: The uuid of the employee's work location. + example: b6ae9d93-d4b8-4119-8c96-dba595dd8c30 + employment_status: + type: string + description: The employee's employment status. Supplying an invalid option will set the employment_status to *not_set*. + enum: + - part_time + - full_time + - part_time_eligible + - variable + - seasonal + - not_set + two_percent_shareholder: + type: boolean + description: Whether the employee is a two percent shareholder of the company. This field only applies to companies with an S-Corp entity type. + required: + - effective_date + - file_new_hire_report + - work_location_uuid + Fast-Payment-Limit-Param: + type: string + description: Fast payment limit. This limit is an aggregate of all fast payrolls amount. This limit is only relevant when payment speed is 1-day or 2-day. + Payment-Speed-Param: + type: string + description: Gusto Embedded supports three payment speeds (1-day, 2-day, and 4-day). For next-day payments, funds are deposited in your team's bank account by the end of the next business day. Most people will see the funds arrive the next afternoon, but payments may arrive as late as the end of the business day. + enum: + - 1-day + - 2-day + - 4-day + Fast-Payment-Limit-Required-Body: + type: object + properties: + fast_payment_limit: + "$ref": "#/components/schemas/Fast-Payment-Limit-Param" + payment_speed: + "$ref": "#/components/schemas/Payment-Speed-Param" + required: + - fast_payment_limit + Payment-Speed-Required-Body: + type: object + properties: + fast_payment_limit: + "$ref": "#/components/schemas/Fast-Payment-Limit-Param" + payment_speed: + "$ref": "#/components/schemas/Payment-Speed-Param" + required: + - payment_speed + Historical-Employee-Body: + type: object + description: | + Request body for creating or updating a **historical employee**—someone who already separated from the company and must appear on year-to-date or tax filings without receiving ongoing payroll. + + Send this object under the JSON root key `employee`. All dates are ISO 8601 (`YYYY-MM-DD`). Use a `work_address.location_uuid` returned from your company locations API for an active work site. + properties: + first_name: + type: string + description: Legal first name as it appears on government-issued identification. + example: Soren + middle_initial: + type: string + description: Single middle initial, if any. + example: A + last_name: + type: string + description: Legal last name as it appears on government-issued identification. + example: Kierkegaard + preferred_first_name: + type: string + description: Preferred given name for display; omit when the same as legal first name. + example: Angel + date_of_birth: + type: string + format: date + description: Date of birth (YYYY-MM-DD). + example: '1995-05-05' + ssn: + type: string + pattern: "[0-9]{9}" + description: 'Nine-digit U.S. Social Security number **without** dashes or spaces. Must pass Gusto/SSA validation in production; use a valid test SSN in sandbox environments. + +' + example: '123456294' + work_address: + type: object + description: Primary work location for this historical employment row. + required: + - location_uuid + properties: + location_uuid: + type: string + format: uuid + description: UUID of a company work location from the company locations response. + example: 1da85d35-1910-40a7-9c1f-8e2b3d4c5a6f + home_address: + type: object + description: Residential address on file for tax withholding and compliance mail. + properties: + street_1: + type: string + description: Street address line 1. + example: 55 Mission St + street_2: + type: + - string + - 'null' + description: Apartment, suite, unit, or building (optional). + example: Floor 3 + city: + type: string + description: City. + example: San Francisco + state: + type: string + description: Two-letter U.S. state or territory postal abbreviation. + example: CA + zip: + type: string + description: ZIP or ZIP+4. + example: '94105' + required: + - street_1 + - city + - state + - zip + termination: + type: object + description: End of the historical employment period. + required: + - effective_date + properties: + effective_date: + type: string + format: date + description: Last day of employment (termination date). This is recorded on the employment; use the calendar date the person stopped working for the company. + example: '2022-01-01' + email: + type: string + format: email + description: Optional. When provided, stored on the employee record for notifications and profile. + example: soren.kierkegaard@example.com + job: + type: object + description: Hire date for the historical job used to build employments and filings. + required: + - hire_date + properties: + hire_date: + type: string + format: date + description: First calendar day the employee was employed in this role at the company. + example: '2020-01-01' + employee_state_taxes: + type: object + description: Workers' compensation fields for Washington (WA) or Wyoming (WY) when the work address is in those states; omit when not applicable. + properties: + wc_covered: + type: boolean + description: Whether this job is eligible for workers' compensation coverage in the states of Washington (WA) or Wyoming (WY). + example: true + wc_class_code: + type: string + description: The risk class code for workers' compensation in Washington or Wyoming state. For Washington, visit [Washington state's Risk Class page](https://www.lni.wa.gov/insurance/rates-risk-classes/risk-classes-for-workers-compensation/risk-class-lookup#/) to learn more. For Wyoming you can search for the code online using [WY Workforce Services website](https://dws.wyo.gov/dws-division/workers-compensation/) or call the agency at (307) 235-3217. + example: '051000' + required: + - first_name + - last_name + - date_of_birth + - ssn + - work_address + - home_address + - job + - termination + x-examples: + typical_historical_employee: + first_name: Soren + middle_initial: A + last_name: Kierkegaard + preferred_first_name: Angel + date_of_birth: '1995-05-05' + ssn: '123456294' + email: soren.kierkegaard@example.com + work_address: + location_uuid: 1da85d35-1910-40a7-9c1f-8e2b3d4c5a6f + home_address: + street_1: 55 Mission St + street_2: Floor 3 + city: San Francisco + state: CA + zip: '94105' + job: + hire_date: '2020-01-01' + termination: + effective_date: '2022-01-01' + Pay-Schedule-Assignment-Body: + type: object + properties: + type: + anyOf: + - type: string + enum: + - single + - hourly_salaried + - by_employee + - by_department + - type: 'null' + description: The pay schedule assignment type. + hourly_pay_schedule_uuid: + type: string + description: Pay schedule for hourly employees. + salaried_pay_schedule_uuid: + type: string + description: Pay schedule for salaried employees. + default_pay_schedule_uuid: + type: string + description: Default pay schedule for employees. + partial_assignment: + type: boolean + description: 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. + employees: + type: array + description: List of employees and their pay schedules. + items: + type: object + properties: + employee_uuid: + type: string + description: Employee UUID + pay_schedule_uuid: + type: string + description: Pay schedule UUID + departments: + type: array + description: List of departments and their pay schedules. + items: + type: object + properties: + department_uuid: + type: string + description: Department UUID + pay_schedule_uuid: + type: string + description: Pay schedule UUID + required: + - type + Form-Document-Content-Type-Type: + type: + - string + - 'null' + description: The content type of the associated document. Most forms are PDFs with a content type of `application/pdf`. Some tax file packages will be zip files (containing PDFs) with a content type of `application/zip`. This attribute will be `null` when the document has not been prepared. + readOnly: true + Form: + title: Form + type: object + properties: + uuid: + type: string + description: The UUID of the form + readOnly: true + employee_uuid: + type: string + description: The UUID of the employee to which the form belongs, if applicable. + readOnly: true + name: + type: string + description: The type identifier of the form + readOnly: true + title: + type: string + description: The title of the form + readOnly: true + description: + type: string + description: The description of the form + readOnly: true + draft: + type: boolean + description: If the form is in a draft state. E.g. End of year tax forms may be provided in a draft state prior to being finalized. + readOnly: true + year: + type: + - integer + - 'null' + description: The year of this form. For some forms, e.g. tax forms, this is the year which the form represents. A W2 for January - December 2022 would be delivered in January 2023 and have a year value of 2022. This value is nullable and will not be present on all forms. + readOnly: true + quarter: + type: + - integer + - 'null' + description: The quarter of this form. For some forms, e.g. tax forms, this is the calendar quarter which this form represents. An Employer's Quarterly Federal Tax Return (Form 941) for April, May, June 2022 would have a quarter value of 2 (and a year value of 2022). This value is nullable and will not be present on all forms. + readOnly: true + requires_signing: + type: boolean + description: A boolean flag that indicates whether the form needs signing or not. Note that this value will change after the form is signed. + readOnly: true + document_content_type: + "$ref": "#/components/schemas/Form-Document-Content-Type-Type" + x-examples: + Example: + uuid: 48cdd5ec-a4dd-4840-a424-ad79f38d8408 + name: company_direct_deposit + title: Direct Deposit Authorization + description: We need you to sign paperwork to authorize us to debit and credit your bank account and file and pay your taxes. + draft: false + year: + quarter: + requires_signing: true + document_content_type: application/pdf + employee_form: + uuid: 48cdd5ec-a4dd-4840-a424-ad79f38d8408 + employee_uuid: c5fdae67-b148-4b52-8b33-1384024a1256 + name: w4_federal + title: 'Form W-4: 2024' + description: Form W-4 determines how much federal income tax your employer will withhold from your pay. + draft: false + year: 2024 + quarter: + requires_signing: true + document_content_type: application/pdf + quarterly_tax_form: + uuid: 7a2b9f3e-1c4d-4e5f-8a6b-2d3e4f5a6b7c + name: form_941 + title: 'Form 941: Q2 2024' + description: Employer's Quarterly Federal Tax Return for the second quarter of 2024. + draft: false + year: 2024 + quarter: 2 + requires_signing: false + document_content_type: application/pdf + sandbox_w2: + uuid: bf5b2496-26df-436e-b465-eae4ed5c8021 + employee_uuid: 19394e76-a866-4570-b237-9a26b0163907 + name: US_W-2 + title: 'Draft Form W-2: 2021' + description: Form W-2 records your annual wages and taxes. + draft: true + year: 2021 + quarter: + requires_signing: false + document_content_type: application/pdf + x-tags: + - Forms + required: + - uuid + Form_1099: + title: Form + type: object + properties: + uuid: + type: string + description: The UUID of the form + readOnly: true + name: + type: string + description: The type identifier of the form + readOnly: true + title: + type: string + description: The title of the form + readOnly: true + description: + type: string + description: The description of the form + readOnly: true + draft: + type: boolean + description: If the form is in a draft state. E.g. End of year tax forms may be provided in a draft state prior to being finalized. + readOnly: true + year: + type: + - integer + - 'null' + description: The year of this form. For some forms, e.g. tax forms, this is the year which the form represents. A 1099 for January - December 2022 would be delivered in January 2023 and have a year value of 2022. This value is nullable and will not be present on all forms. + readOnly: true + quarter: + type: + - integer + - 'null' + description: The quarter of this form. This value is currently always null since it is not present on any contractor forms. + readOnly: true + requires_signing: + type: boolean + description: A boolean flag that indicates whether the form needs signing or not. Note that this value will change after the form is signed. + readOnly: true + document_content_type: + "$ref": "#/components/schemas/Form-Document-Content-Type-Type" + contractor_uuid: + type: string + description: The contractor UUID + readOnly: true + x-examples: + Example: + uuid: 48cdd5ec-a4dd-4840-a424-ad79f38d8408 + name: US_1099 + title: 'Form 1099: 2020' + description: Form 1099 records your annual income as a contractor. + draft: false + requires_signing: false + year: 2020 + quarter: + document_content_type: application/pdf + contractor_uuid: 123dd616-6dbc-4724-938a-403f6217a933 + sandbox_1099: + uuid: 29afb141-2256-431d-90e0-1c7344222342 + contractor_uuid: b68484a9-4487-4ee5-bafc-4245133a426c + name: US_1099 + title: 'Form 1099: 2022' + description: Form 1099 records your annual income as a contractor. + draft: true + requires_signing: false + year: 2022 + quarter: + document_content_type: application/pdf + x-tags: + - Forms + required: + - uuid + Form-Pdf: + title: Form Pdf + type: object + properties: + uuid: + type: string + description: the UUID of the form + readOnly: true + document_url: + type: + - string + - 'null' + description: the URL of the form + document_content_type: + "$ref": "#/components/schemas/Form-Document-Content-Type-Type" + x-examples: + Example: + uuid: 48cdd5ec-a4dd-4840-a424-ad79f38d8408 + document_url: https://app.gusto-demo.com/assets/forms/7757842065202782/original/form.pdf?1633667020 + document_content_type: application/pdf + document_not_ready: + uuid: 48cdd5ec-a4dd-4840-a424-ad79f38d8408 + document_url: + document_content_type: + required: + - uuid + Document: + title: Document + type: object + properties: + uuid: + type: string + description: The UUID of the document + readOnly: true + title: + type: string + description: The title of the document + readOnly: true + name: + type: string + description: The type identifier of the document + readOnly: true + recipient_type: + type: string + description: The type of recipient associated with the document (will be `Contractor` for Contractor Documents) + enum: + - Company + - Employee + - Contractor + readOnly: true + recipient_uuid: + type: string + description: Unique identifier for the recipient associated with the document + readOnly: true + pages: + type: array + description: List of the document's pages and associated image URLs. This is only returned for documents with `required_signing` = `true`, and can be used for signing preparation. + items: + type: object + properties: + image_url: + type: string + description: Image URL for the page + page_number: + type: integer + description: Page number + readOnly: true + fields: + type: array + description: List of the document's fields and associated data. Values are set for auto-filled fields. This is only returned for documents with `required_signing` = `true`, and can be used for signing preparation. + items: + type: object + properties: + key: + type: + - string + - 'null' + description: Unique identifier of the field. May be null for custom fields that do not correspond to a known Gusto-managed key mapping. + value: + type: + - string + - 'null' + description: Auto-filled value of the field + x: + type: + - integer + - 'null' + description: X-coordinate location of the field on the page. May be null when the field has no positioning information. + "y": + type: + - integer + - 'null' + description: Y-coordinate location of the field on the page. May be null when the field has no positioning information. + width: + type: + - integer + - 'null' + description: Width of the field. May be null when the field has no positioning information. + height: + type: + - integer + - 'null' + description: Height of the field. May be null when the field has no positioning information. + page_number: + type: + - integer + - 'null' + description: Page number of the field. May be null when the field has no positioning information. + data_type: + type: string + description: The field's data type + required: + type: boolean + description: Whether the field is required + readOnly: true + signed_at: + type: + - string + - 'null' + description: When the document was signed (will be `null` if unsigned) + readOnly: true + description: + type: string + description: The description of the document + readOnly: true + requires_signing: + type: boolean + description: A boolean flag that indicates whether the document needs signing or not. Note that this value will change after the document is signed. + draft: + type: boolean + description: If the document is in a draft state + readOnly: true + year: + type: + - integer + - 'null' + description: The year of this document. This value is nullable and will not be present on all documents. + readOnly: true + quarter: + type: + - integer + - 'null' + description: The quarter of this document. This value is nullable and will not be present on all documents. + readOnly: true + x-examples: + Example: + uuid: e83b3c20-dc4f-4382-bee3-b478fc42c68b + title: Taxpayer Identification (Form W-9) + name: taxpayer_identification_form_w_9 + recipient_type: Contractor + recipient_uuid: f079c253-29e2-45e2-b384-2cc615c9c568 + pages: + - image_url: http://app.gusto-dev.com:3000/assets/document_templates/20/unmapped_template/images/0.jpg + page_number: 0 + - image_url: http://app.gusto-dev.com:3000/assets/document_templates/20/unmapped_template/images/1.jpg + page_number: 1 + fields: + - key: text1596141656513 + value: + x: 69 + "y": 94 + width: 261 + height: 13 + page_number: 0 + data_type: text + required: true + - key: optional_text1596141704672 + value: + x: 69 + "y": 118 + width: 262 + height: 13 + page_number: 0 + data_type: text + required: false + signed_at: + description: Form W-9, Request for Taxpayer Identification Number and Certification + requires_signing: true + draft: false + year: + quarter: + x-tags: + - Documents + Document-Signed: + title: Document Signed + type: object + properties: + uuid: + type: string + description: The UUID of the document + readOnly: true + title: + type: string + description: The title of the document + readOnly: true + name: + type: string + description: The type identifier of the document + readOnly: true + recipient_type: + type: string + description: The type of recipient associated with the document (will be `Contractor` for Contractor Documents) + enum: + - Company + - Employee + - Contractor + readOnly: true + recipient_uuid: + type: string + description: Unique identifier for the recipient associated with the document + readOnly: true + pages: + type: array + description: List of the document's pages and associated image URLs. + items: + type: object + properties: + image_url: + type: string + description: Image URL for the page + page_number: + type: integer + description: Page number + readOnly: true + fields: + type: array + description: List of the document's fields and associated data. Values reflect the data provided at signing. + items: + type: object + properties: + key: + type: + - string + - 'null' + description: Unique identifier of the field. May be null for custom fields that do not correspond to a known Gusto-managed key mapping. + value: + type: + - string + - 'null' + description: Value of the field + x: + type: + - integer + - 'null' + description: X-coordinate location of the field on the page. May be null when the field has no positioning information. + "y": + type: + - integer + - 'null' + description: Y-coordinate location of the field on the page. May be null when the field has no positioning information. + width: + type: + - integer + - 'null' + description: Width of the field. May be null when the field has no positioning information. + height: + type: + - integer + - 'null' + description: Height of the field. May be null when the field has no positioning information. + page_number: + type: + - integer + - 'null' + description: Page number of the field. May be null when the field has no positioning information. + data_type: + type: string + description: The field's data type + required: + type: boolean + description: Whether the field is required + readOnly: true + signed_at: + type: + - string + - 'null' + description: When the document was signed (will be `null` if unsigned) + readOnly: true + description: + type: string + description: The description of the document + readOnly: true + requires_signing: + type: boolean + description: A boolean flag that indicates whether the document needs signing or not. Note that this value will change after the document is signed. + draft: + type: boolean + description: If the document is in a draft state + readOnly: true + year: + type: + - integer + - 'null' + description: The year of this document. This value is nullable and will not be present on all documents. + readOnly: true + quarter: + type: + - integer + - 'null' + description: The quarter of this document. This value is nullable and will not be present on all documents. + readOnly: true + x-examples: + Example: + uuid: e83b3c20-dc4f-4382-bee3-b478fc42c68b + title: Taxpayer Identification (Form W-9) + name: taxpayer_identification_form_w_9 + recipient_type: Contractor + recipient_uuid: f079c253-29e2-45e2-b384-2cc615c9c568 + signed_at: '2024-09-03T16:39:22.000-07:00' + description: Form W-9, Request for Taxpayer Identification Number and Certification + requires_signing: false + draft: false + year: + quarter: + x-tags: + - Documents + Document-Pdf: + title: Document Pdf + type: object + properties: + uuid: + type: string + description: the UUID of the document + readOnly: true + document_url: + type: string + description: the URL of the document + x-examples: + Example: + uuid: e83b3c20-dc4f-4382-bee3-b478fc42c68b + document_url: https://app.gusto-demo.com/assets/personal_documents/23/original.pdf?1724367941 + x-tags: + - Documents + Company-Industry-Selection-Required-Body: + type: object + properties: + title: + type: + - string + - 'null' + example: Computer Training + description: Industry title + naics_code: + type: string + pattern: "^\\d{6}$" + example: '611420' + description: North American Industry Classification System (NAICS) is used to classify businesses with a six digit number based on the primary type of work the business performs. + sic_codes: + type: array + description: A list of Standard Industrial Classification (SIC) codes, which are four digit numbers that categorize the industries that companies belong to based on their business activities. If sic_codes is not passed in, we will perform an internal lookup with `naics_code`. + items: + type: string + pattern: "^\\d{4}$" + example: '8243' + required: + - naics_code + Industry: + title: Industry + type: object + properties: + company_uuid: + type: string + description: Company UUID + readOnly: true + title: + type: + - string + - 'null' + example: Computer Training + description: Industry title + readOnly: true + naics_code: + type: + - string + - 'null' + example: '611420' + description: North American Industry Classification System (NAICS) is used to classify businesses with a six digit number based on the primary type of work the business performs. + sic_codes: + type: array + description: A list of Standard Industrial Classification (SIC) codes, which are four digit numbers that categorize the industries that companies belong to based on their business activities. If sic_codes is not passed in, we will perform an internal lookup with `naics_code`. + items: + type: string + example: '8243' + x-examples: + Example: + company_uuid: 423dd616-6dbc-4724-938a-403f6217a933 + naics_code: '611420' + sic_codes: + - '8243' + title: Computer Training + success_status: + company_uuid: 423dd616-6dbc-4724-938a-403f6217a933 + naics_code: '231208' + sic_codes: + - '1500' + title: Construction + x-tags: + - Industry + External-Payroll: + description: The representation of an external payroll. + type: object + x-tags: + - External Payrolls + title: '' + properties: + uuid: + type: string + description: The UUID of the external payroll. + readOnly: true + company_uuid: + type: string + description: The UUID of the company. + readOnly: true + check_date: + type: string + description: External payroll's check date. + readOnly: true + payment_period_start_date: + type: string + description: External payroll's pay period start date. + readOnly: true + payment_period_end_date: + type: string + description: External payroll's pay period end date. + readOnly: true + status: + type: string + enum: + - unprocessed + - processed + description: The status of the external payroll. The status will be `unprocessed` when the external payroll is created and transition to `processed` once tax liabilities are entered and finalized. Once in the `processed` status all actions that can edit an external payroll will be disabled. + readOnly: true + external_payroll_items: + type: array + description: External payroll items for employees + readOnly: true + items: + type: object + properties: + employee_uuid: + type: string + earnings: + type: array + items: + type: object + properties: + amount: + type: string + format: float + hours: + type: string + format: float + earning_type: + type: string + earning_id: + type: integer + benefits: + type: array + items: + type: object + properties: + benefit_id: + type: integer + company_contribution_amount: + type: string + format: float + employee_deduction_amount: + type: string + format: float + taxes: + type: array + items: + type: object + properties: + tax_id: + type: integer + amount: + type: string + format: float + applicable_earnings: + type: array + description: Applicable earnings based on company provisioning. + readOnly: true + items: + type: object + properties: + earning_type: + type: string + earning_id: + type: number + name: + type: string + input_type: + type: string + category: + type: string + applicable_benefits: + type: + - array + - 'null' + description: Applicable benefits based on company provisioning. + readOnly: true + items: + type: object + properties: + id: + type: integer + description: + type: string + active: + type: boolean + applicable_taxes: + type: array + description: Applicable taxes based on company provisioning. + readOnly: true + items: + type: object + properties: + id: + type: integer + name: + type: string + employer_tax: + type: boolean + description: Some taxes may have an amount withheld from the employee and an amount withheld from the employer, e.g. Social Security. A `true` value indicates this is the employer's amount. + resident_tax: + type: boolean + description: Some taxes may have different rates or reporting requirements depending on if the employee is a resident or non-resident of the tax jurisdiction. + metadata: + type: object + description: Stores metadata of the external payroll. + readOnly: true + properties: + deletable: + type: boolean + description: Determines if the external payroll can be deleted. + readOnly: true + x-examples: + Example: + uuid: c5fdae57-5483-4529-9aae-f0edceed92d4 + company_uuid: bcb305b0-2855-4025-8d22-e484a9e6b7c9 + check_date: '2022-06-03' + payment_period_start_date: '2022-05-15' + payment_period_end_date: '2022-05-30' + status: unprocessed + external_payroll_items: + - employee_uuid: 44f7cba9-7a3d-4f08-b7bd-6fcf5211f8ca + earnings: + - amount: '10000.0' + hours: '0.0' + earning_type: CompanyPayType + earning_id: 1 + - amount: '500.0' + hours: '0.0' + earning_type: CompanyEarningType + earning_id: 4 + benefits: + - benefit_id: 22 + company_contribution_amount: '100.0' + employee_deduction_amount: '50.0' + - benefit_id: 25 + company_contribution_amount: '0.0' + employee_deduction_amount: '300.0' + taxes: + - tax_id: 1 + amount: '400.0' + - tax_id: 2 + amount: '60.0' + applicable_earnings: + - earning_type: CompanyPayType + earning_id: 1 + name: Regular Wages + input_type: amount + category: default + - earning_type: CompanyEarningType + earning_id: 4 + name: Cash Tips + input_type: amount + category: default + applicable_benefits: + - id: 22 + description: Kaiser + active: true + - id: 25 + description: HSA + active: true + applicable_taxes: + - id: 1 + name: Federal Income Tax + employer_tax: false + resident_tax: false + - id: 2 + name: Social Security + employer_tax: false + resident_tax: false + metadata: + deletable: true + required: + - uuid + Webhook-Subscription: + description: The representation of webhook subscription. + type: object + x-tags: + - Webhooks + title: '' + properties: + uuid: + type: string + description: The UUID of the webhook subscription. + readOnly: true + url: + type: string + description: The webhook subscriber URL. Updates will be POSTed to this URL. + readOnly: true + status: + type: string + enum: + - pending + - verified + - removed + - unreachable + description: The status of the webhook subscription. + readOnly: true + subscription_types: + type: array + description: Receive updates for these types. + readOnly: false + items: + type: string + enum: + - BankAccount + - Company + - CompanyBenefit + - Contractor + - ContractorPayment + - Employee + - EmployeeBenefit + - EmployeeJobCompensation + - ExternalPayroll + - Form + - Location + - Notification + - Payroll + - PayrollSync + - PaySchedule + - Signatory + x-examples: + Example: + uuid: c5fdae57-5483-4529-9aae-f0edceed92d4 + url: https://partner-app.com/subscriber + status: verified + subscription_types: + - BankAccount + - Company + - CompanyBenefit + - Contractor + - ContractorPayment + - Employee + - EmployeeBenefit + - EmployeeJobCompensation + - ExternalPayroll + - Form + - Location + - Notification + - Payroll + - PayrollSync + - PaySchedule + - Signatory + Pending: + uuid: a1b2c3d4-5678-90ab-cdef-1234567890ab + url: https://partner-app.com/webhooks + status: pending + subscription_types: + - Company + - Employee + required: + - uuid + Webhook-Verification-Token-Response: + description: The response from requesting a webhook subscription verification token. + type: object + x-tags: + - Webhooks + title: '' + properties: + message: + type: string + description: A message indicating the verification token has been sent. + x-examples: + Example: + message: Success! The subscriber will be notified with the verification token + External-Payroll-Basic: + description: The representation of an external payroll with minimal information. + type: object + x-tags: + - External Payrolls + title: '' + properties: + uuid: + type: string + description: The UUID of the external payroll. + readOnly: true + company_uuid: + type: string + description: The UUID of the company. + readOnly: true + check_date: + type: string + description: External payroll's check date. + readOnly: true + payment_period_start_date: + type: string + description: External payroll's pay period start date. + readOnly: true + payment_period_end_date: + type: string + description: External payroll's pay period end date. + readOnly: true + status: + type: string + enum: + - unprocessed + - processed + description: The status of the external payroll. The status will be `unprocessed` when the external payroll is created and transition to `processed` once tax liabilities are entered and finalized. Once in the `processed` status all actions that can edit an external payroll will be disabled. + readOnly: true + x-examples: + Example: + uuid: c5fdae57-5483-4529-9aae-f0edceed92d4 + company_uuid: bcb305b0-2855-4025-8d22-e484a9e6b7c9 + check_date: '2022-06-03' + payment_period_start_date: '2022-05-15' + payment_period_end_date: '2022-05-30' + status: unprocessed + required: + - uuid + External-Payroll-Tax-Suggestions: + description: The representation of an external payroll with minimal information. + type: object + x-tags: + - External Payrolls + title: '' + properties: + employee_uuid: + type: string + description: The UUID of the employee. + readOnly: true + tax_suggestions: + type: array + description: Possible tax liabilities selections. + readOnly: true + items: + type: object + properties: + tax_id: + type: integer + description: The ID of the tax. + readOnly: true + amount: + type: string + description: Calculated tax amount. + readOnly: true + x-examples: + Example: + employee_uuid: d21848d5-446f-48a8-9430-30fbefeabda4 + tax_suggestions: + - tax_id: 1 + amount: '500.0' + - tax_id: 2 + amount: '100.0' + - tax_id: 4 + amount: '30.0' + Tax-Liabilities-Selections: + description: The representation of tax liabilities selections. + x-tags: + - External Payrolls + title: '' + type: object + properties: + tax_id: + type: integer + description: The ID of the tax. + readOnly: true + tax_name: + type: string + description: The name of the tax. + readOnly: true + description: + type: + - string + - 'null' + description: A description of the tax, providing additional detail about the tax type. + readOnly: true + last_unpaid_external_payroll_uuid: + type: + - string + - 'null' + description: The UUID of last unpaid external payroll. + readOnly: true + possible_liabilities: + type: array + description: Possible tax liabilities selections. + readOnly: true + items: + type: object + properties: + liability_amount: + type: string + description: Liability amount. + readOnly: true + payroll_check_date: + type: + - string + - 'null' + description: The external payroll check date. + readOnly: true + external_payroll_uuid: + type: + - string + - 'null' + description: The UUID of the external payroll. + readOnly: true + x-examples: + Example: + tax_id: 1 + tax_name: Federal Income Tax + description: Employee Federal Income Tax + last_unpaid_external_payroll_uuid: + possible_liabilities: + - liability_amount: '0.0' + payroll_check_date: + external_payroll_uuid: + - liability_amount: '3000.0' + payroll_check_date: '2022-06-01' + external_payroll_uuid: 1bf1efe1-72d4-4e6e-a181-611f3ea66435 + External-Payroll-Create-Request: + type: object + description: The request body for creating an external payroll. + x-tags: + - External Payrolls + required: + - check_date + - payment_period_start_date + - payment_period_end_date + properties: + check_date: + type: string + format: date + description: The check date of the external payroll. + example: '2022-06-03' + payment_period_start_date: + type: string + format: date + description: The start date of the external payroll payment period. + example: '2022-05-15' + payment_period_end_date: + type: string + format: date + description: The end date of the external payroll payment period. + example: '2022-05-30' + External-Payroll-Update-Request: + type: object + description: The request body for updating an external payroll with employee payroll items. + x-tags: + - External Payrolls + required: + - external_payroll_items + properties: + replace_fields: + type: boolean + description: Patch update external payroll items when set to true, otherwise it will overwrite the previous changes. + external_payroll_items: + type: array + description: Payroll items for each employee in the external payroll. + items: + type: object + required: + - employee_uuid + properties: + employee_uuid: + type: string + format: uuid + description: The UUID of the employee. + example: 44f7cba9-7a3d-4f08-b7bd-6fcf5211f8ca + earnings: + type: array + description: Earnings for the employee. + items: + type: object + properties: + earning_type: + type: string + enum: + - CompanyPayType + - CompanyEarningType + description: The earning type class name. + example: CompanyPayType + earning_id: + type: integer + description: The ID of the earning type. + example: 1 + amount: + type: string + format: float + description: The earning amount in dollars. + example: '10000.00' + hours: + type: string + format: float + description: The number of hours worked. + example: '80.0' + benefits: + type: array + description: Benefits for the employee. + items: + type: object + properties: + benefit_id: + type: integer + description: The ID of the company benefit. + example: 22 + company_contribution_amount: + type: string + format: float + description: The company contribution amount in dollars. + example: '100.00' + employee_deduction_amount: + type: string + format: float + description: The employee deduction amount in dollars. + example: '50.00' + taxes: + type: array + description: Taxes for the employee. + items: + type: object + properties: + tax_id: + type: integer + description: The ID of the tax. + example: 1 + amount: + type: string + format: float + description: The tax amount in dollars. + example: '400.00' + Tax-Liability-Selections-Request: + type: object + description: The request body for updating tax liability selections. + x-tags: + - External Payrolls + required: + - liability_selections + properties: + liability_selections: + type: array + description: Tax liability selections to record for the company's external payrolls. + items: + type: object + required: + - tax_id + - last_unpaid_external_payroll_uuid + - unpaid_liability_amount + properties: + tax_id: + type: integer + description: The ID of the tax. + example: 1 + last_unpaid_external_payroll_uuid: + type: + - string + - 'null' + description: The UUID of the last external payroll with an unpaid liability for this tax. Set to `null` to indicate no liability. + example: 1bf1efe1-72d4-4e6e-a181-611f3ea66435 + unpaid_liability_amount: + type: string + format: float + description: The total cumulative unpaid liability amount for this tax across all external payrolls up to and including the one specified by `last_unpaid_external_payroll_uuid`. + example: '47.5' + Admin: + title: Admin + type: object + description: The representation of an admin user in Gusto. + x-examples: + Example: + uuid: 987058cc-23ee-46e9-81ef-5cee086cceca + first_name: John + last_name: Smith + email: jsmith99@gmail.com + phone: '8009360383' + properties: + uuid: + type: string + description: The unique id of the admin. + email: + type: string + description: The email of the admin for Gusto's system. + first_name: + type: string + description: The first name of the admin. + last_name: + type: string + description: The last name of the admin. + phone: + type: + - string + - 'null' + description: The phone number of the admin. + x-tags: + - Admins + required: + - uuid + Admin-Create-Request: + type: object + description: The request body for creating a company admin. + required: + - first_name + - last_name + - email + properties: + first_name: + type: string + description: The first name of the admin. + example: John + last_name: + type: string + description: The last name of the admin. + example: Smith + email: + type: string + description: The email of the admin for Gusto's system. If the email matches an existing user, this will create an admin account for them. + example: jsmith99@gmail.com + Company: + title: Company + type: object + description: The representation of a company in Gusto. + properties: + ein: + type: string + description: The Federal Employer Identification Number of the company. + readOnly: true + entity_type: + description: The tax payer type of the company. + anyOf: + - type: string + enum: + - C-Corporation + - S-Corporation + - Sole proprietor + - LLC + - LLP + - Limited partnership + - Co-ownership + - Association + - Trusteeship + - General partnership + - Joint venture + - Non-Profit + - type: 'null' + readOnly: true + contractor_only: + type: boolean + description: Whether the company only supports contractors. + tier: + type: + - string + - 'null' + description: The Gusto product tier of the company (not applicable to Embedded partner managed companies). + readOnly: true + enum: + - simple + - plus + - premium + - core + - complete + - concierge + - contractor_only + - basic + is_suspended: + type: boolean + description: Whether or not the company is suspended in Gusto. Suspended companies may not run payroll. + company_status: + type: string + description: The status of the company in Gusto. "Approved" companies are approved to run payroll from a risk and compliance perspective. However, an approved company may still need to resolve other [payroll blockers](https://docs.gusto.com/embedded-payroll/docs/payroll-blockers) to be able to run payroll. "Not Approved" companies may not yet run payroll with Gusto and may need to complete onboarding or contact support. "Suspended" companies may not run payroll with Gusto. In order to unsuspend their account, the company must contact support. + enum: + - Approved + - Not Approved + - Suspended + readOnly: true + uuid: + type: string + description: A unique identifier of the company in Gusto. + readOnly: true + name: + type: string + description: The name of the company. + readOnly: true + slug: + type: string + description: The slug of the name of the company. + readOnly: true + trade_name: + type: + - string + - 'null' + description: The trade name of the company. + readOnly: true + is_partner_managed: + type: boolean + description: Whether the company is fully managed by a partner via the API + readOnly: true + is_high_risk_business: + type: boolean + description: Whether or not Gusto has identified the company as representing a high fraud risk. + readOnly: true + is_marijuana_business: + type: boolean + description: Whether or not the company is a marijuana-related business. + readOnly: true + pay_schedule_type: + anyOf: + - type: string + enum: + - single + - hourly_salaried + - by_employee + - by_department + - type: 'null' + description: The pay schedule assignment type. + readOnly: true + join_date: + type: + - string + - 'null' + description: Company's first invoiceable event date + readOnly: true + funding_type: + description: Company's default funding type + anyOf: + - type: string + enum: + - ach + - reverse_wire + - wire_in + - partner_disbursement + - rtp + - line_of_credit + - type: 'null' + locations: + type: array + uniqueItems: false + description: The locations of the company. + items: + "$ref": "#/components/schemas/Company-Address" + readOnly: true + compensations: + type: object + description: The available company-wide compensation rates for the company. + properties: + hourly: + type: array + uniqueItems: true + description: The available hourly compensation rates for the company. + items: + type: object + properties: + uuid: + type: + - string + - 'null' + description: The UUID of the hourly compensation rate. + readOnly: true + name: + type: string + description: The name of the hourly compensation rate. + example: Overtime + readOnly: true + multiple: + type: number + description: The amount multiplied by the base rate of a job to calculate compensation. + example: 1.5 + readOnly: true + readOnly: true + readOnly: true + fixed: + type: array + uniqueItems: true + description: The available fixed compensation rates for the company. + items: + type: object + properties: + uuid: + type: + - string + - 'null' + description: The UUID of the fixed compensation. + readOnly: true + name: + type: string + description: The name of the fixed compensation. + example: Bonus + readOnly: true + readOnly: true + paid_time_off: + type: array + uniqueItems: true + description: The available types of paid time off for the company. + items: + type: object + properties: + uuid: + type: + - string + - 'null' + description: The UUID of the paid time off type. + readOnly: true + name: + type: string + example: Vacation Hours + description: The name of the paid time off type. + readOnly: true + readOnly: true + readOnly: true + readOnly: true + primary_signatory: + type: + - object + - 'null' + description: The primary signatory of the company. + properties: + uuid: + type: string + readOnly: true + description: The UUID of the company's primary signatory. + first_name: + type: string + readOnly: true + description: The company's primary signatory's first name. + middle_initial: + type: + - string + - 'null' + readOnly: true + description: The company's primary signatory's middle initial. + last_name: + type: string + readOnly: true + description: The company's primary signatory's last name. + phone: + type: string + readOnly: true + description: The company's primary signatory's phone number. + email: + type: string + readOnly: true + description: The company's primary signatory's email address. + home_address: + type: object + properties: + street_1: + type: string + readOnly: true + street_2: + type: + - string + - 'null' + readOnly: true + city: + type: string + readOnly: true + state: + type: string + readOnly: true + zip: + type: string + readOnly: true + country: + type: string + readOnly: true + readOnly: true + description: The company's primary signatory's home address. + readOnly: true + primary_payroll_admin: + type: object + description: The primary payroll admin of the company. + properties: + first_name: + type: string + readOnly: true + description: The company's primary payroll admin's first name. + last_name: + type: string + readOnly: true + description: The company's primary payroll admin's last name. + phone: + type: + - string + - 'null' + readOnly: true + description: The company's primary payroll admin's phone number. + email: + type: string + readOnly: true + description: The company's primary payroll admin's email address. + x-examples: + success_status: + uuid: c7a07c73-a703-4462-9343-1b181182b6e0 + name: Shoppe Studios LLC + trade_name: Record Shoppe + is_partner_managed: true + tier: complete + locations: + - street_1: 412 Kiera Stravenue + street_2: Suite 391 + city: San Francisco + state: CA + zip: '94107' + country: USA + active: true + - street_1: 644 Fay Vista + street_2: Suite 842 + city: Richmond + state: VA + zip: '23218' + country: USA + active: true + ein: 00-0000001 + entity_type: C-Corporation + pay_schedule_type: by_department + join_date: '2024-01-15' + funding_type: ach + slug: shoppe-studios-llc + is_suspended: false + company_status: Approved + is_high_risk_business: false + is_marijuana_business: false + contractor_only: false + compensations: + hourly: + - uuid: 7da6b57d-22f9-11f1-ad28-0242ac100003 + name: Overtime + multiple: 1.5 + - uuid: 7da6b5ec-22f9-11f1-ad28-0242ac100003 + name: Double overtime + multiple: 2 + - uuid: 7da6b22f-22f9-11f1-ad28-0242ac100003 + name: Regular + multiple: 1 + - uuid: 7da6b3ac-22f9-11f1-ad28-0242ac100003 + name: Outstanding vacation + multiple: 1 + - uuid: 7da6b532-22f9-11f1-ad28-0242ac100003 + name: Holiday + multiple: 1 + - uuid: 7da6b44e-22f9-11f1-ad28-0242ac100003 + name: Emergency sick - self care + multiple: 1 + - uuid: 7da6b49d-22f9-11f1-ad28-0242ac100003 + name: Emergency sick - caring for others + multiple: 1 + - uuid: 7da6b4e6-22f9-11f1-ad28-0242ac100003 + name: FMLA Public Health Emergency Leave + multiple: 1 + fixed: + - uuid: 7da68d82-22f9-11f1-ad28-0242ac100003 + name: Bonus + - uuid: 7da69024-22f9-11f1-ad28-0242ac100003 + name: Commission + - uuid: 7da69104-22f9-11f1-ad28-0242ac100003 + name: Paycheck Tips + - uuid: 7da6918f-22f9-11f1-ad28-0242ac100003 + name: Cash Tips + - uuid: 7da69216-22f9-11f1-ad28-0242ac100003 + name: Correction Payment + - uuid: 7da692a6-22f9-11f1-ad28-0242ac100003 + name: Severance + - uuid: 7da69356-22f9-11f1-ad28-0242ac100003 + name: Minimum Wage Adjustment + - uuid: + name: Reimbursement + paid_time_off: + - uuid: 7dcdcb77-22f9-11f1-ad28-0242ac100003 + name: Vacation Hours + - uuid: 7dcdcc8b-22f9-11f1-ad28-0242ac100003 + name: Sick Hours + - uuid: + name: Holiday Hours + primary_signatory: + uuid: 2d7cd96f-e2fb-4db7-8c04-99ef531b4527 + first_name: Alda + middle_initial: '' + last_name: Carter + phone: '4160000000' + email: louie.hessel7757869450111547@zemlak.biz + home_address: + street_1: 524 Roob Divide + street_2: Suite 565 + city: San Francisco + state: CA + zip: '94107' + country: USA + primary_payroll_admin: + first_name: Ian + last_name: Labadie + phone: 1-565-710-7559 + email: louie.hessel7757869450111547@zemlak.biz + x-tags: + - Companies + required: + - uuid + Company-Onboarding-Status: + description: The representation of a company's onboarding status + type: object + title: '' + x-examples: + Example: + uuid: c44d66dc-c41b-4a60-9e25-5e93ff8583f2 + onboarding_completed: false + onboarding_steps: + - title: Add Your Company's Addresses + id: add_addresses + required: true + completed: true + completed_at: '2025-02-18T10:00:00Z' + skippable: false + requirements: [] + - title: Enter Your Federal Tax Information + id: federal_tax_setup + required: true + completed: true + completed_at: '2025-02-18T10:00:00Z' + skippable: false + requirements: [] + - title: Select Industry + id: select_industry + required: true + completed: true + completed_at: '2025-02-18T10:00:00Z' + skippable: false + requirements: [] + - title: Add Your Bank Account + id: add_bank_info + required: true + completed: true + completed_at: '2025-02-18T10:00:00Z' + skippable: false + requirements: [] + - title: Add Your Employees + id: add_employees + required: true + completed: true + completed_at: '2025-02-18T10:00:00Z' + skippable: true + requirements: + - add_addresses + - title: Enter Your State Tax Information + id: state_setup + required: true + completed: false + completed_at: + skippable: false + requirements: + - add_addresses + - add_employees + - title: Select a Pay Schedule + id: payroll_schedule + required: true + completed: false + completed_at: + skippable: false + requirements: [] + - title: Sign Documents + id: sign_all_forms + required: true + completed: false + completed_at: + skippable: false + requirements: + - add_employees + - federal_tax_setup + - state_setup + - add_bank_info + - payroll_schedule + - title: Verify Your Bank Account + id: verify_bank_info + required: true + completed: false + completed_at: + skippable: false + requirements: + - add_bank_info + x-tags: + - Companies + properties: + uuid: + type: string + description: the UUID of the company + onboarding_completed: + type: boolean + description: a boolean flag for the company's onboarding status + onboarding_steps: + type: array + description: a list of company onboarding steps + items: + title: Onboarding step + type: object + properties: + title: + type: string + description: The display name of the onboarding step + id: + type: string + description: The string identifier for each onboarding step + enum: + - add_addresses + - federal_tax_setup + - select_industry + - add_bank_info + - add_employees + - state_setup + - payroll_schedule + - sign_all_forms + - verify_bank_info + - external_payroll + required: + type: boolean + description: The boolean flag indicating whether the step is required or optional + completed: + type: boolean + description: The boolean flag indicating whether the step is completed or not. + completed_at: + type: + - string + - 'null' + description: The ISO 8601 timestamp indicating when the onboarding step was completed. + skippable: + type: boolean + description: The boolean flag indicating whether the step can be skipped or not. + requirements: + type: array + description: A list of onboarding steps that are required to be completed in order to proceed with the current onboarding step. + items: + type: string + enum: + - add_addresses + - federal_tax_setup + - select_industry + - add_bank_info + - add_employees + - state_setup + - payroll_schedule + - sign_all_forms + - verify_bank_info + - external_payroll + required: + - uuid + Payment-Configs: + title: Payment-Configs + type: object + properties: + company_uuid: + type: string + description: Company uuid + readOnly: true + partner_uuid: + type: string + description: Partner uuid + readOnly: true + fast_payment_limit: + type: + - string + - 'null' + description: Payment limit for 1-day or 2-day payroll (string representation of decimal). + readOnly: true + payment_speed: + type: string + enum: + - 1-day + - 2-day + - 4-day + description: | + Payment speed. READ-ONLY. + - `1-day`: Next-day ACH (only for partners that opt in). + - `2-day`: Two-day ACH. + - `4-day`: Standard ACH. + readOnly: true + partner_owned_disbursement: + type: boolean + description: Whether the company is configured to use the partner-owned disbursement payment rail + readOnly: true + earned_fast_ach_blockers: + type: array + description: Blockers preventing the company from earning fast ACH payments + readOnly: true + items: + type: object + properties: + blocker_type: + type: string + description: The type of blocker + enum: + - minimum_days + - minimum_funded_payments + readOnly: true + threshold: + type: number + description: The threshold needed to unblock + readOnly: true + x-examples: + typical_payment_config: + company_uuid: 423dd616-6dbc-4724-938a-403f6217a933 + partner_uuid: 556f05d0-48e0-4c47-bce5-db9aea923043 + fast_payment_limit: '5000.0' + payment_speed: 2-day + partner_owned_disbursement: false + earned_fast_ach_blockers: [] + payment_config_with_blockers: + company_uuid: 423dd616-6dbc-4724-938a-403f6217a933 + partner_uuid: 556f05d0-48e0-4c47-bce5-db9aea923043 + fast_payment_limit: + payment_speed: 2-day + partner_owned_disbursement: false + earned_fast_ach_blockers: + - blocker_type: minimum_days + threshold: 15 + - blocker_type: minimum_funded_payments + threshold: 5 + x-tags: + - Payment Configs + Payment-Configs-Update-Request: + type: object + description: Request body for updating company payment configs. At least one of payment_speed, fast_payment_limit, or partner_owned_disbursement is required. + properties: + payment_configs: + type: object + properties: + payment_speed: + type: string + enum: + - 1-day + - 2-day + - 4-day + description: Desired payment speed. 1-day is only applicable to partners that opt in. + fast_payment_limit: + type: + - number + - 'null' + description: Payment limit for 1-day or 2-day payroll (in dollars). + partner_owned_disbursement: + type: boolean + description: Whether to use the partner-owned disbursement payment rail. + x-examples: + update_payment_speed_and_limit: + payment_configs: + payment_speed: 2-day + fast_payment_limit: 1000 + update_payment_speed_only: + payment_configs: + payment_speed: 4-day + Contractor-Body: + type: object + properties: + type: + type: string + description: The contractor type. + default: Individual + enum: + - Individual + - Business + wage_type: + type: string + description: 'The contractor’s wage type. + +' + enum: + - Fixed + - Hourly + start_date: + type: string + description: 'The day when the contractor will start working for the company. + +' + example: '2020-01-11' + hourly_rate: + type: string + description: The contractor’s hourly rate. This attribute is required if the wage_type is `Hourly`. + example: '40.0' + self_onboarding: + type: boolean + default: false + description: |- + Whether the contractor or the payroll admin will complete onboarding in Gusto. + Self-onboarding is recommended so that contractors receive Gusto accounts. + If self_onboarding is true, then email is required. + email: + type: string + description: The contractor’s email address. + first_name: + type: string + description: |- + The contractor’s first name. + This attribute is required for `Individual` contractors and will be ignored for `Business` contractors. + last_name: + type: string + description: |- + The contractor’s last name. + This attribute is required for `Individual` contractors and will be ignored for `Business` contractors. + middle_initial: + type: string + description: |- + The contractor’s middle initial. + This attribute is optional for `Individual` contractors and will be ignored for `Business` contractors. + file_new_hire_report: + type: boolean + default: false + description: |- + The boolean flag indicating whether Gusto will file a new hire report for the contractor. + This attribute is optional for `Individual` contractors and will be ignored for `Business` contractors. + work_state: + type: + - string + - 'null' + description: |- + 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. + This attribute is required for `Individual` contractors if `file_new_hire_report` is true and will be ignored for `Business` contractors. + ssn: + type: string + pattern: "[0-9]{9}" + description: |- + This attribute is optional for `Individual` contractors and will be ignored for `Business` contractors. + Social security number is needed to file the annual 1099 tax form. + business_name: + type: string + description: The name of the contractor business. This attribute is required for `Business` contractors and will be ignored for `Individual` contractors. + ein: + type: string + description: |- + The employer identification number of the contractor business. + This attribute is optional for `Business` contractors and will be ignored for `Individual` contractors. + is_active: + type: boolean + description: The status of the contractor. If the contractor's start date is in the future, updating this field to true means we are setting the start date to today. Attempting to deactivate a contractor while a dismissal is already scheduled, or reactivate while a rehire is already scheduled, will return a 422 error. Cancel the pending transition first using the appropriate cancel endpoint. + Contractor-Update-Request-Body: + description: Request body for updating a contractor. + type: object + allOf: + - "$ref": "#/components/schemas/Versionable-Required" + - "$ref": "#/components/schemas/Contractor-Body" + x-examples: + update_individual_contractor: + version: b48c46abfed1487b873b442334b3c4ff + start_date: '2021-01-01' + first_name: Chanel + last_name: Boyle + middle_initial: X + wage_type: Hourly + hourly_rate: '20.00' + is_active: true + update_business_contractor: + version: b48c46abfed1487b873b442334b3c4ff + start_date: '2020-01-11' + business_name: Contracting Solutions + ein: '991113334' + wage_type: Fixed + is_active: false + Contractor-Create-Request-Body: + description: Request body for creating a contractor. + type: object + required: + - type + - wage_type + - start_date + allOf: + - "$ref": "#/components/schemas/Contractor-Body" + x-examples: + create_individual_contractor: + type: Individual + wage_type: Fixed + first_name: Johnson + last_name: Johnson + start_date: '2020-04-01' + self_onboarding: true + email: johnson@johnson.com + file_new_hire_report: true + work_state: CA + create_business_contractor: + type: Business + wage_type: Fixed + business_name: Johnson-Johnson Contractors + start_date: '2020-04-01' + Contractor-Onboarding-Status-Update-Request-Body: + description: Request body for updating a contractor's onboarding status. + type: object + required: + - onboarding_status + properties: + onboarding_status: + type: string + description: The updated onboarding status for the contractor. + enum: + - admin_onboarding_incomplete + - admin_onboarding_review + - self_onboarding_not_invited + - self_onboarding_invited + - self_onboarding_started + - self_onboarding_review + - onboarding_completed + x-examples: + update_onboarding_status: + onboarding_status: onboarding_completed + Contractor: + description: The representation of a contractor (individual or business) in Gusto. + type: object + properties: + uuid: + type: string + description: The UUID of the contractor in Gusto. + readOnly: true + company_uuid: + type: string + description: The UUID of the company the contractor is employed by. + readOnly: true + wage_type: + type: string + enum: + - Fixed + - Hourly + description: The contractor's wage type, either "Fixed" or "Hourly". + is_active: + type: boolean + default: true + description: The status of the contractor with the company. + readOnly: true + version: + type: string + description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. + type: + type: string + enum: + - Individual + - Business + description: 'The contractor''s type, either "Individual" or "Business". ' + first_name: + type: + - string + - 'null' + description: The contractor’s first name. This attribute is required for “Individual” contractors and will be ignored for “Business” contractors. + last_name: + type: + - string + - 'null' + description: The contractor’s last name. This attribute is required for “Individual” contractors and will be ignored for “Business” contractors. + middle_initial: + type: + - string + - 'null' + description: The contractor’s middle initial. This attribute is optional for “Individual” contractors and will be ignored for “Business” contractors. + business_name: + type: + - string + - 'null' + description: The name of the contractor business. This attribute is required for “Business” contractors and will be ignored for “Individual” contractors. + ein: + type: + - string + - 'null' + description: The Federal Employer Identification Number of the contractor business. This attribute is optional for “Business” contractors and will be ignored for “Individual” contractors. + has_ein: + type: + - boolean + - 'null' + description: Whether company's Employer Identification Number (EIN) is present + email: + type: + - string + - 'null' + description: 'The contractor’s email address. This attribute is optional for “Individual” contractors and will be ignored for “Business” contractors. ' + start_date: + type: string + description: The contractor's start date. + readOnly: true + address: + type: + - object + - 'null' + description: The contractor’s home address. + properties: + street_1: + type: string + readOnly: true + street_2: + type: + - string + - 'null' + readOnly: true + city: + type: string + readOnly: true + state: + type: string + readOnly: true + zip: + type: string + readOnly: true + country: + type: string + readOnly: true + readOnly: true + hourly_rate: + type: string + example: '50.0' + description: The contractor’s hourly rate. This attribute is required if the wage_type is “Hourly”. + file_new_hire_report: + type: + - boolean + - 'null' + description: The boolean flag indicating whether Gusto will file a new hire report for the contractor + work_state: + type: + - string + - 'null' + description: |- + 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. + onboarded: + type: boolean + description: The updated onboarding status for the contractor + onboarding_status: + type: string + description: One of the "onboarding_status" enum values. + enum: + - admin_onboarding_incomplete + - admin_onboarding_review + - self_onboarding_not_invited + - self_onboarding_invited + - self_onboarding_started + - self_onboarding_review + - onboarding_completed + payment_method: + anyOf: + - type: string + enum: + - Direct Deposit + - Check + - type: 'null' + description: The contractor's payment method. + has_ssn: + type: boolean + description: Indicates whether the contractor has an SSN in Gusto. + department_uuid: + type: + - string + - 'null' + description: The UUID of the department the contractor is under + department: + type: + - string + - 'null' + description: The contractor's department in the company. + readOnly: true + department_title: + type: + - string + - 'null' + description: The title of the contractor's department. + readOnly: true + dismissal_date: + type: + - string + - 'null' + description: The contractor's dismissal date. + readOnly: true + upcoming_employment: + type: + - object + - 'null' + description: The contractor's upcoming employment details, if a rehire is scheduled. + readOnly: true + properties: + start_date: + type: string + description: The start date of the upcoming employment. + setup_status: + type: + - string + - 'null' + description: The setup status of the upcoming employment. + dismissal_cancellation_eligible: + type: boolean + description: Whether the contractor's pending dismissal can be cancelled. + readOnly: true + rehire_cancellation_eligible: + type: boolean + description: Whether the contractor's pending rehire can be cancelled. + readOnly: true + member_portal_invitation_status: + type: + - object + - 'null' + description: Member portal invitation status information. Only included when the include param has the portal_invitations value set. + properties: + status: + type: string + description: The current status of the member portal invitation. + enum: + - pending + - sent + - verified + - complete + - cancelled + token_expired: + type: + - boolean + - 'null' + description: Whether the invitation token has expired. + welcome_email_sent_at: + type: + - string + - 'null' + format: date-time + description: The date and time when the welcome email was sent. + last_password_resent_at: + type: + - string + - 'null' + format: date-time + description: The date and time when the password reset was last resent. + partner_portal_invitation_sent: + type: + - boolean + - 'null' + description: Whether an external partner portal invitation webhook has been sent for this contractor. Only included when the include param has the portal_invitations value set. + x-tags: + - Contractors + required: + - uuid + x-examples: + Individual Contractor: + uuid: c9fc1ad3-c107-4e7b-aa21-2dd4b00a7a07 + company_uuid: b7457fec-3b76-43bb-9c6e-69cca4688942 + wage_type: Hourly + start_date: '2022-01-01' + is_active: true + version: 63859768485e218ccf8a449bb60f14ed + type: Individual + first_name: Kory + last_name: Gottlieb + middle_initial: P + business_name: + ein: + has_ein: false + has_ssn: true + department_uuid: 56260b3d-c375-415c-b77a-75d99f717193 + email: keira.west@mckenzie.org + file_new_hire_report: true + work_state: FL + onboarded: true + onboarding_status: onboarding_completed + address: + street_1: 621 Jast Row + street_2: Apt. 281 + city: Coral Springs + state: FL + zip: '33065' + country: USA + hourly_rate: '60.00' + payment_method: Direct Deposit + department: Engineering + department_title: Engineering + dismissal_date: + upcoming_employment: + dismissal_cancellation_eligible: false + rehire_cancellation_eligible: false + member_portal_invitation_status: + status: sent + token_expired: false + welcome_email_sent_at: '2024-01-15T14:30:00Z' + last_password_resent_at: + partner_portal_invitation_sent: true + Business Contractor: + uuid: c7c0659c-21a6-4b4e-b74c-9252576fc68c + company_uuid: 0ec4ae6e-e436-460d-b63c-94a14503d16f + wage_type: Fixed + start_date: '2022-01-01' + is_active: true + version: 8aab307f1e8ed788697f8986346af559 + type: Business + first_name: + last_name: + middle_initial: + business_name: Labadie-Stroman + ein: XX-XXX0001 + has_ein: true + has_ssn: false + email: jonatan@kerluke.info + file_new_hire_report: false + work_state: + onboarded: true + onboarding_status: onboarding_completed + address: + street_1: 1625 Bednar Center + street_2: Apt. 480 + city: Port Charlotte + state: FL + zip: '33954' + country: USA + hourly_rate: '0.00' + payment_method: Direct Deposit + department_uuid: + department: + department_title: + dismissal_date: + upcoming_employment: + dismissal_cancellation_eligible: false + rehire_cancellation_eligible: false + member_portal_invitation_status: + partner_portal_invitation_sent: false + Contractor-Onboarding-Status: + description: The representation of an contractor's onboarding status. + type: object + title: Contractor-Onboarding-Status + x-tags: + - Contractor + x-examples: + example: + uuid: bc57832c-d8bc-43a7-ae99-3a03380ff037 + onboarding_status: admin_onboarding_incomplete + onboarding_steps: + - title: Basic details + id: basic_details + required: true + completed: false + requirements: [] + - title: Enter compensation details + id: compensation_details + required: true + completed: false + requirements: [] + - title: Add an address + id: add_address + required: true + completed: false + requirements: [] + - title: Payment details + id: payment_details + required: true + completed: false + requirements: [] + - title: Sign and acknowledge documents + id: sign_documents + required: false + completed: false + requirements: + - basic_details + - add_address + - title: File new hire report + id: file_new_hire_report + required: false + completed: false + requirements: + - basic_details + properties: + uuid: + type: string + description: Unique identifier for this contractor. + onboarding_status: + type: string + description: One of the "onboarding_status" enum values. + enum: + - onboarding_completed + - admin_onboarding_review + - admin_onboarding_incomplete + - self_onboarding_not_invited + - self_onboarding_invited + - self_onboarding_started + - self_onboarding_review + onboarding_steps: + type: array + description: List of steps required to onboard a contractor. + items: + title: Onboarding step + type: object + properties: + title: + type: string + description: User-friendly description of the onboarding step. + id: + type: string + description: String identifier for the onboarding step. + required: + type: boolean + description: When true, this step is required. + completed: + type: boolean + description: When true, this step has been completed. + requirements: + type: array + description: A list of onboarding steps required to begin this step. + items: + type: string + required: + - uuid + Contractor-Payment: + description: The representation of a single contractor payment. + type: object + x-examples: + success_status: + uuid: 04552eb9-7829-4b18-ae96-6983552948df + contractor_uuid: bc57832c-d8bc-43a7-ae99-3a03380ff037, + bonus: '20.0' + date: '2020-10-19' + hours: '40.0' + payment_method: Direct Deposit + reimbursement: '100.0' + hourly_rate: '18.0' + may_cancel: true + status: Funded + wage: '0.0' + wage_type: Hourly + wage_total: '740.00' + example: + uuid: 04552eb9-7829-4b18-ae96-6983552948df + contractor_uuid: bc57832c-d8bc-43a7-ae99-3a03380ff037 + bonus: '20.0' + date: '2020-10-19' + hours: '40.0' + payment_method: Direct Deposit + reimbursement: '100.0' + hourly_rate: '18.0' + may_cancel: false + status: Funded + wage: '0.0' + wage_type: Hourly + wage_total: '740.00' + title: Contractor Payment + properties: + uuid: + type: string + description: The unique identifier of the contractor payment in Gusto. + readOnly: true + contractor_uuid: + type: string + description: The UUID of the contractor. + readOnly: true + bonus: + type: string + format: float + description: The bonus amount in the payment. + readOnly: true + date: + type: string + description: The payment date. + readOnly: true + hours: + type: string + format: float + description: The number of hours worked for the payment. + readOnly: true + payment_method: + type: string + description: The payment method. + enum: + - Direct Deposit + - Check + - Historical Payment + - Correction Payment + readOnly: true + reimbursement: + type: string + format: float + description: The reimbursement amount in the payment. + readOnly: true + status: + type: string + description: Contractor payment status + enum: + - Funded + - Unfunded + hourly_rate: + type: string + format: float + description: The rate per hour worked for the payment. + readOnly: true + may_cancel: + type: boolean + description: Determine if the contractor payment can be cancelled. + readOnly: true + wage: + type: string + format: float + description: The fixed wage of the payment, regardless of hours worked. + readOnly: true + wage_type: + type: string + description: The wage type for the payment. + enum: + - Hourly + - Fixed + readOnly: true + wage_total: + type: string + format: float + description: "(hours * hourly_rate) + wage + bonus" + readOnly: true + invoice_number: + type: + - string + - 'null' + description: An optional invoice number associated with this contractor payment. This will be visible to the contractor on their paystub. Maximum 25 characters. + readOnly: true + memo: + type: + - string + - 'null' + description: An optional note or memo for this contractor payment. This will be visible to the contractor on their paystub. + readOnly: true + x-tags: + - Contractor Payments + required: + - uuid + Contractor-Payment-Body: + description: Request body for creating a contractor payment. + type: object + required: + - contractor_uuid + - date + properties: + contractor_uuid: + type: string + description: The contractor receiving the payment. + date: + type: string + format: date + description: Date of contractor payment. + example: '2020-01-01' + payment_method: + type: string + enum: + - Direct Deposit + - Check + - Historical Payment + default: Direct Deposit + wage: + type: string + format: float + description: If the contractor is on a fixed wage, this is the fixed wage payment for the contractor, regardless of hours worked. + example: '5000' + hours: + type: string + format: float + description: If the contractor is on an hourly wage, this is the number of hours that the contractor worked for the payment. + example: '40' + bonus: + type: string + format: float + description: If the contractor is on an hourly wage, this is the bonus the contractor earned. + example: '500' + reimbursement: + type: string + format: float + description: Reimbursed wages for the contractor. + example: '20' + invoice_number: + type: string + description: An optional invoice number to associate with this contractor payment. This will be visible to the contractor on their paystub. Maximum 25 characters. + maxLength: 25 + example: INV-001 + memo: + type: string + description: An optional note or memo for this contractor payment. This will be visible to the contractor on their paystub. + example: Payment for consulting services + x-tags: + - Contractor Payments + Contractor-Payments-Preview-Body: + description: Request body for previewing contractor payments. The expected debit date for the payments is calculated from the provided check date and the company's ACH speed. + type: object + required: + - contractor_payments + properties: + contractor_payments: + type: array + description: A list of contractor payments to preview. + items: + type: object + properties: + contractor_uuid: + type: string + description: The contractor receiving the payment. + date: + type: string + description: Date of the contractor payment (check date). + payment_method: + type: string + enum: + - Direct Deposit + - Check + - Historical Payment + description: The payment method. + wage: + type: integer + description: Fixed wage amount for the payment. + hours: + type: integer + description: Number of hours worked for the payment. + hourly_rate: + type: integer + description: Hourly rate for the payment. + bonus: + type: integer + description: Bonus amount for the payment. + reimbursement: + type: integer + description: Reimbursement amount for the payment. + x-examples: + Example: + contractor_payments: + - bonus: 0 + date: '2022-09-02' + contractor_uuid: 5376e95b-cca0-482b-bb81-aba5e360eb04 + hours: 0 + payment_method: Check + reimbursement: 0 + wage: 123 + hourly_rate: 0 + - bonus: 0 + date: '2022-09-02' + contractor_uuid: 0c984dce-de9a-47db-8bfb-5f0c823afe6f + hours: 0 + payment_method: Check + reimbursement: 0 + wage: 456 + hourly_rate: 0 + x-tags: + - Contractor Payments + Contractor-Payments-Preview: + type: object + description: The expected debit date computed for a set of previewed contractor payments. + properties: + expected_debit_date: + type: string + format: date + description: The calculated debit date. If the payment method is Direct Deposit, the debit date will account for the company's ACH speed. If the payment method is Check, the debit date will be the same as the check date. + x-examples: + example: + expected_debit_date: '2022-08-16' + x-tags: + - Contractor Payments + Contractor-Payment-Group: + description: The full contractor payment group, including associated contractor payments. + type: object + allOf: + - "$ref": "#/components/schemas/Contractor-Payment-Group-Base" + - type: object + properties: + partner_owned_disbursement: + type: + - boolean + - 'null' + description: Whether the disbursement is partner owned. + readOnly: true + submission_blockers: + type: array + description: List of submission blockers for the contractor payment group. + readOnly: true + items: + "$ref": "#/components/schemas/Payroll-Submission-Blocker-Type" + credit_blockers: + type: array + description: List of credit blockers for the contractor payment group. + readOnly: true + items: + "$ref": "#/components/schemas/Payroll-Credit-Blocker-Type" + totals: + type: object + properties: + amount: + type: string + description: The total amount for the group of contractor payments. + readOnly: true + debit_amount: + type: string + description: The total debit amount for the group of contractor payments. Sum of wage & reimbursement amount. + readOnly: true + wage_amount: + type: string + description: The total wage amount for the group of contractor payments. + readOnly: true + reimbursement_amount: + type: string + description: The total reimbursement amount for the group of contractor payments. + readOnly: true + check_amount: + type: string + description: The total check amount for the group of contractor payments. + readOnly: true + readOnly: true + contractor_payments: + type: array + items: + "$ref": "#/components/schemas/Contractor-Payment-For-Group" + x-examples: + success: + uuid: f693e034-d833-46e3-88d4-2c820c383c57 + company_uuid: c54046f7-1be4-4c54-8194-f4842c30c86d + check_date: '2024-05-07' + debit_date: '2024-05-01' + status: Unfunded + creation_token: 45ef81bb-ae24-4ad1-b2c6-6e563a4c30ed + contractor_payments: + - uuid: 630dc982-f498-4ebc-a6dc-4d76711027ce + contractor_uuid: 2e6d0970-31bf-47ce-bdb4-713e4207ecf4 + bonus: '0.0' + hours: '40.0' + hourly_rate: '18.0' + may_cancel: false + payment_method: Direct Deposit + reimbursement: '75.0' + status: Unfunded + wage: '0.0' + wage_type: Hourly + wage_total: '720.0' + - uuid: 12f51eba-d653-4357-8c05-1f1f8d0fd5e3 + contractor_uuid: a975fda0-fcf5-469a-a5fd-06e43d1cd99d + bonus: '0.0' + hours: '0.0' + hourly_rate: '0.0' + may_cancel: false + payment_method: Check + reimbursement: '0.0' + status: Unfunded + wage: '1500.0' + wage_type: Fixed + wage_total: '1500.0' + totals: + amount: '2295.0' + debit_amount: '2295.0' + wage_amount: '2220.0' + reimbursement_amount: '75.0' + With submission blockers: + uuid: 5ec3b582-7d04-4397-be1e-f0e79d00e1b7 + company_uuid: 4a39b249-1e22-4fc9-a40f-cb07d2ab394e + check_date: '2025-08-21' + debit_date: '2025-08-19' + status: Unfunded + creation_token: 5ec3b582-7d04-4397-be1e-f0e79d00e1b7 + partner_owned_disbursement: false + submission_blockers: + - blocker_type: fast_ach_threshold_exceeded + blocker_name: Fast ACH Threshold Exceeded + selected_option: wire_in + status: resolved + unblock_options: + - unblock_type: wire_in + check_date: '2025-08-21' + metadata: + wire_in_deadline: '2025-08-21T18:00:00Z' + wire_in_amount: '760000.0' + - unblock_type: move_to_four_day + check_date: '2025-08-21' + metadata: + debit_date: '2025-08-15' + credit_blockers: + - blocker_type: waiting_for_wire_in + blocker_name: Waiting for Wire In + selected_option: submit_wire + status: unresolved + unblock_options: + - unblock_type: submit_wire + check_date: '2025-08-21' + metadata: + wire_in_deadline: '2025-08-21T18:00:00Z' + wire_in_amount: '760000.0' + wire_in_request_uuid: 7a31fef8-46c6-4114-9677-214b7a3cb532 + contractor_payments: + - uuid: ca8c7899-c2dc-40bb-8b7e-08c1309f5135 + contractor_uuid: b4c6cd3c-4b45-4738-ad40-3da45b29a765 + bonus: '0.0' + hours: '0.0' + hourly_rate: '0.0' + may_cancel: false + payment_method: Direct Deposit + reimbursement: '750000.0' + status: Unfunded + wage: '10000.0' + wage_type: Fixed + wage_total: '10000.0' + totals: + amount: '760000.00' + debit_amount: '760000.00' + wage_amount: '10000.00' + reimbursement_amount: '750000.00' + check_amount: '0.00' + x-tags: + - Contractor Payment Groups + Contractor-Payment-Group-Base: + description: Base properties for contractor payment groups. + type: object + properties: + uuid: + type: string + description: The unique identifier of the contractor payment group. + readOnly: true + company_uuid: + type: string + description: The UUID of the company. + readOnly: true + check_date: + type: string + description: The check date of the contractor payment group. + readOnly: true + debit_date: + type: string + description: The debit date of the contractor payment group. + readOnly: true + status: + type: string + description: The status of the contractor payment group. Will be `Funded` if all payments that should be funded (i.e. have `Direct Deposit` for payment method) are funded. A group can have status `Funded` while having associated payments that have status `Unfunded`, i.e. payment with `Check` payment method. + enum: + - Unfunded + - Funded + readOnly: true + creation_token: + type: + - string + - 'null' + description: Token used to make contractor payment group creation idempotent. Will error if attempting to create a group with a duplicate token. + readOnly: true + Contractor-Payment-Group-With-Blockers: + description: Contractor payment group with submission and credit blockers, but without individual contractor payments. + type: object + allOf: + - "$ref": "#/components/schemas/Contractor-Payment-Group-Base" + - type: object + properties: + partner_owned_disbursement: + type: + - boolean + - 'null' + description: Whether the disbursement is partner owned. + readOnly: true + submission_blockers: + type: array + description: List of submission blockers for the contractor payment group. + readOnly: true + items: + "$ref": "#/components/schemas/Payroll-Submission-Blocker-Type" + credit_blockers: + type: array + description: List of credit blockers for the contractor payment group. + readOnly: true + items: + "$ref": "#/components/schemas/Payroll-Credit-Blocker-Type" + totals: + type: object + properties: + amount: + type: string + description: The total amount for the group of contractor payments. + readOnly: true + debit_amount: + type: string + description: The total debit amount for the group of contractor payments. Sum of wage & reimbursement amount. + readOnly: true + wage_amount: + type: string + description: The total wage amount for the group of contractor payments. + readOnly: true + reimbursement_amount: + type: string + description: The total reimbursement amount for the group of contractor payments. + readOnly: true + check_amount: + type: string + description: The total check amount for the group of contractor payments. + readOnly: true + readOnly: true + x-examples: + success: + uuid: 94d9698e-9c95-45d6-b66e-d208258666ab + company_uuid: 5f5aaa38-f517-4f56-85e4-afdb83321663 + check_date: '2025-09-22' + debit_date: '2025-09-18' + status: Unfunded + creation_token: 94d9698e-9c95-45d6-b66e-d208258666ab + partner_owned_disbursement: false + submission_blockers: + - blocker_type: fast_ach_threshold_exceeded + blocker_name: Fast ACH Threshold Exceeded + selected_option: wire_in + status: resolved + unblock_options: + - unblock_type: wire_in + check_date: '2025-09-22' + metadata: + wire_in_deadline: '2025-09-22T18:00:00Z' + wire_in_amount: '760000.0' + - unblock_type: move_to_four_day + check_date: '2025-09-22' + metadata: + debit_date: '2025-09-16' + credit_blockers: + - blocker_type: waiting_for_wire_in + blocker_name: Waiting for Wire In + selected_option: submit_wire + status: unresolved + unblock_options: + - unblock_type: submit_wire + check_date: '2025-09-22' + metadata: + wire_in_deadline: '2025-09-22T18:00:00Z' + wire_in_amount: '760000.0' + wire_in_request_uuid: 96ea4784-979a-45aa-9ccb-83be86b6dcea + totals: + amount: '760000.00' + debit_amount: '760000.00' + wage_amount: '10000.00' + reimbursement_amount: '750000.00' + check_amount: '0.00' + x-tags: + - Contractor Payment Groups + Contractor-Payment-Group-Minimal: + description: The summary of a contractor payment group. + type: object + allOf: + - "$ref": "#/components/schemas/Contractor-Payment-Group-Base" + - type: object + properties: + totals: + type: object + properties: + amount: + type: string + description: The total amount for the group of contractor payments. + readOnly: true + debit_amount: + type: string + description: The total debit amount for the group of contractor payments. Sum of wage & reimbursement amount. + readOnly: true + wage_amount: + type: string + description: The total wage amount for the group of contractor payments. + readOnly: true + reimbursement_amount: + type: string + description: The total reimbursement amount for the group of contractor payments. + readOnly: true + readOnly: true + x-examples: + success: + - uuid: 7f2337f9-9b78-44b9-aeed-be4777b833a8 + company_uuid: c54046f7-1be4-4c54-8194-f4842c30c86d + check_date: '2024-03-15' + debit_date: '2024-03-11' + status: Funded + creation_token: a51a3500-3200-43af-a738-169d4b66a9db + totals: + debit_amount: '740.00' + wage_amount: '720.00' + reimbursement_amount: '20.00' + - uuid: 56260b3d-c375-415c-b77a-75d99f717193 + company_uuid: c54046f7-1be4-4c54-8194-f4842c30c86d + check_date: '2024-05-02' + debit_date: '2024-04-26' + status: Unfunded + creation_token: 45ef81bb-ae24-4ad1-b2c6-6e563a4c30ed + totals: + debit_amount: '2365.00' + wage_amount: '2270.00' + reimbursement_amount: '95.00' + x-tags: + - Contractor Payment Groups + Contractor-Payment-For-Group: + description: The representation of a single contractor payment. type: object - required: - - error_key - - category properties: - error_key: + uuid: type: string - description: Specifies where the error occurs. Typically this key identifies the attribute/parameter related to the error. - category: + description: The unique identifier of the contractor payment in Gusto. + readOnly: true + contractor_uuid: type: string - description: Specifies the type of error. The category provides error groupings and can be used to build custom error handling in your integration. If category is `nested_errors`, the object will contain a nested `errors` property with entity errors. - message: + description: The UUID of the contractor. + readOnly: true + bonus: type: string - description: Provides details about the error - generally this message can be surfaced to an end user. - metadata: - type: object - description: Contains relevant data to identify the resource in question when applicable. For example, to identify an entity `entity_type` and `entity_uuid` will be provided. - oneOf: - - "$ref": "#/components/schemas/Metadata-With-Multiple-Entities" - - "$ref": "#/components/schemas/Metadata-With-One-Entity" - errors: - type: array - description: Will only exist if category is `nested_errors`. It is possible to have multiple levels of nested errors. - items: - "$ref": "#/components/schemas/Entity-Error-Object" - Metadata-With-One-Entity: - type: object - description: single entity - additionalProperties: true - properties: - entity_type: + description: The bonus amount in the payment. + readOnly: true + hours: type: string - description: Name of the entity that the error corresponds to. - entity_uuid: + description: The number of hours worked for the payment. + readOnly: true + payment_method: type: string - description: Unique identifier for the entity. - valid_from: + description: The payment method. + enum: + - Direct Deposit + - Check + - Historical Payment + - Correction Payment + readOnly: true + reimbursement: + type: string + description: The reimbursement amount in the payment. + readOnly: true + status: + type: string + description: The status of the contractor payment. Will transition to `Funded` during payments processing if the payment should be funded, i.e. has `Direct Deposit` for payment method. Contractors payments with `Check` payment method will remain `Unfunded`. + enum: + - Funded + - Unfunded + hourly_rate: + type: string + description: The rate per hour worked for the payment. + readOnly: true + may_cancel: + type: boolean + description: Determine if the contractor payment can be cancelled. + readOnly: true + wage: + type: string + description: The fixed wage of the payment, regardless of hours worked. + readOnly: true + wage_type: + type: string + description: The wage type for the payment. + enum: + - Hourly + - Fixed + readOnly: true + wage_total: + type: string + description: "(hours * hourly_rate) + wage + bonus" + readOnly: true + invoice_number: type: - string - 'null' - valid_up_to: + description: An optional invoice number associated with this contractor payment. This will be visible to the contractor on their paystub. Maximum 25 characters. + readOnly: true + memo: type: - string - 'null' - key: + description: An optional note or memo for this contractor payment. This will be visible to the contractor on their paystub. + readOnly: true + x-tags: + - Contractor Payment Groups + Contractor-Payment-For-Group-Preview: + description: Preview representation of a single contractor payment with nullable uuid. + type: object + properties: + uuid: type: - string - 'null' - state: + description: The unique identifier of the contractor payment in Gusto. + readOnly: true + contractor_uuid: + type: string + description: The UUID of the contractor. + readOnly: true + bonus: + type: string + description: The bonus amount in the payment. + readOnly: true + hours: + type: string + description: The number of hours worked for the payment. + readOnly: true + payment_method: + type: string + description: The payment method. + enum: + - Direct Deposit + - Check + - Historical Payment + - Correction Payment + readOnly: true + reimbursement: + type: string + description: The reimbursement amount in the payment. + readOnly: true + status: + type: string + description: The status of the contractor payment. Will transition to `Funded` during payments processing if the payment should be funded, i.e. has `Direct Deposit` for payment method. Contractors payments with `Check` payment method will remain `Unfunded`. + enum: + - Funded + - Unfunded + hourly_rate: + type: string + description: The rate per hour worked for the payment. + readOnly: true + may_cancel: + type: boolean + description: Determine if the contractor payment can be cancelled. + readOnly: true + wage: + type: string + description: The fixed wage of the payment, regardless of hours worked. + readOnly: true + wage_type: + type: string + description: The wage type for the payment. + enum: + - Hourly + - Fixed + readOnly: true + wage_total: + type: string + description: "(hours * hourly_rate) + wage + bonus" + readOnly: true + invoice_number: type: - string - 'null' - Metadata-With-Multiple-Entities: - type: object - description: multiple entities - required: - - entities - properties: - entities: - type: array - items: - "$ref": "#/components/schemas/Metadata-With-One-Entity" - Payroll-Blockers-Error: - description: |- - Payroll Blockers Error - - For detailed information, see the [Payroll Blockers guide](https://docs.gusto.com/embedded-payroll/docs/payroll-blockers) + description: An optional invoice number associated with this contractor payment. This will be visible to the contractor on their paystub. Maximum 25 characters. + readOnly: true + memo: + type: + - string + - 'null' + description: An optional note or memo for this contractor payment. This will be visible to the contractor on their paystub. + readOnly: true + x-tags: + - Contractor Payment Groups + Contractor-Payment-Summary: + description: The representation of the summary of contractor payments for a given company in a given time period. type: object x-examples: - needs_onboarding: - errors: - - error_key: base - category: payroll_blocker - message: Company must complete all onboarding requirements in order to run payroll. - metadata: - key: needs_onboarding + success_status: + total: + reimbursements: '110.0' + wages: '1840.0' + contractor_payments: + - contractor_uuid: bc57832c-d8bc-43a7-ae99-3a03380ff037 + reimbursement_total: '110.0' + wage_total: '1840.0' + payments: + - uuid: 04552eb9-7829-4b18-ae96-6983552948df + contractor_uuid: bc57832c-d8bc-43a7-ae99-3a03380ff037 + bonus: '20.0' + date: '2020-10-19' + hours: '40.0' + payment_method: Direct Deposit + reimbursement: '100.0' + hourly_rate: '18.0' + may_cancel: true + wage: '0.0' + wage_type: Hourly + wage_total: '740.00' + - uuid: 25cfeb96-17fc-4fdf-8941-57f3fb9eea00 + contractor_uuid: bc57832c-d8bc-43a7-ae99-3a03380ff037 + bonus: '100.0' + date: '2020-10-19' + hours: '0.00' + payment_method: Direct Deposit + reimbursement: '10.0' + hourly_rate: '0.0' + may_cancel: true + wage: '1000.0' + wage_type: Fixed + wage_total: '1100.0' properties: - errors: + total: + type: object + description: The wage and reimbursement totals for all contractor payments within a given time period. + properties: + reimbursements: + type: string + format: float + description: The total reimbursements for contractor payments within a given time period. + readOnly: true + wages: + type: string + format: float + description: The total wages for contractor payments within a given time period. + readOnly: true + readOnly: true + contractor_payments: type: array + uniqueItems: false + description: The individual contractor payments, within a given time period, grouped by contractor. items: type: object + description: '' properties: - error_key: - type: string - description: The string "base" - category: + contractor_uuid: + type: number + description: The UUID of the contractor. + readOnly: true + reimbursement_total: type: string - description: The string "payroll_blocker" - message: + format: float + description: The total reimbursements for the contractor within a given time period. + readOnly: true + wage_total: type: string - description: Human readable description of the payroll blocker - metadata: - type: object - properties: - key: - type: string - description: A categorization of the payroll blocker, e.g. "geocode_error" - Migration-Blocker: - description: Migration blocker that blocks company migration + format: float + description: The total wages for the contractor within a given time period. + readOnly: true + payments: + type: array + uniqueItems: false + description: The contractor's payments within a given time period. + items: + "$ref": "#/components/schemas/Contractor-Payment" + readOnly: true + readOnly: true + x-tags: + - Contractor Payments + Contractor-Payment-Summary-By-Dates: + description: The representation of the summary of contractor payments for a given company in a given time period. type: object + x-examples: + success_status: + total: + reimbursements: '110.0' + wages: '1840.0' + contractor_payments: + - check_date: '2020-10-19' + reimbursement_total: '110.0' + wage_total: '1840.0' + payments: + - uuid: 04552eb9-7829-4b18-ae96-6983552948df + contractor_uuid: bc57832c-d8bc-43a7-ae99-3a03380ff037 + bonus: '20.0' + date: '2020-10-19' + hours: '40.0' + payment_method: Direct Deposit + reimbursement: '100.0' + hourly_rate: '18.0' + wage: '0.0' + wage_type: Hourly + wage_total: '740.00' + - uuid: 25cfeb96-17fc-4fdf-8941-57f3fb9eea00 + contractor_uuid: bc57832c-d8bc-43a7-ae99-3a03380ff037 + bonus: '100.0' + date: '2020-10-19' + hours: '0.00' + payment_method: Direct Deposit + reimbursement: '10.0' + hourly_rate: '0.0' + wage: '1000.0' + wage_type: Fixed + wage_total: '1100.0' properties: - errors: + total: + type: object + description: The wage and reimbursement totals for all contractor payments within a given time period. + properties: + reimbursements: + type: string + format: float + description: The total reimbursements for contractor payments within a given time period. + readOnly: true + wages: + type: string + format: float + description: The total wages for contractor payments within a given time period. + readOnly: true + readOnly: true + contractor_payments: type: array + uniqueItems: false + description: The individual contractor payments, within a given time period, grouped by check date. items: type: object + description: '' properties: - error_key: + contractor_uuid: type: string - description: Error key - category: + description: The UUID of the contractor. + readOnly: true + check_date: type: string - description: Error category - message: + description: The payment check date. + readOnly: true + reimbursement_total: type: string - description: Blocker message - metadata: - type: object - properties: - key: - type: string - description: A categorization of the migration blocker, e.g. "migrated_company" - Migration-Warning: - description: Migration warning that does not block company migration + format: float + description: The total reimbursements for the contractor within a given time period. + readOnly: true + wage_total: + type: string + format: float + description: The total wages for the contractor within a given time period. + readOnly: true + payments: + type: array + uniqueItems: false + description: The contractor's payments within a given time period. + items: + "$ref": "#/components/schemas/Contractor-Payment" + readOnly: true + readOnly: true + readOnly: true + x-tags: + - Contractor Payments + Contractor-Payment-Method: + title: Contractor-Payment-Method + type: object + x-examples: + check_method: + version: 63859768485e218ccf8a449bb60f14ed + type: Check + split_by: + splits: + Example-1: + value: + version: 63859768485e218ccf8a449bb60f14ed + type: Direct Deposit + split_by: Percentage + splits: + - uuid: e88f9436-b74e-49a8-87e9-777b9bfe715e + name: BoA Checking Account + priority: 1 + split_amount: 100 + Example-2: + value: + version: 63859768485e218ccf8a449bb60f14ed + type: Check + description: '' + properties: + version: + type: string + description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. + type: + anyOf: + - type: string + enum: + - Direct Deposit + - Check + - type: 'null' + description: 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. + split_by: + anyOf: + - type: string + enum: + - Amount + - Percentage + - type: 'null' + description: Describes how the payment will be split. If `split_by` is Percentage, then the `split` amounts must add up to exactly 100. If `split_by` is Amount, then values are in cents and the last split amount must be `null` to capture the remainder. + splits: + type: + - array + - 'null' + items: + "$ref": "#/components/schemas/Payment-Method-Bank-Account" + x-tags: + - Contractor Payment Method + Payment-Method-Bank-Account: + type: object + description: Representation of a bank account item + properties: + uuid: + type: string + description: The bank account ID + name: + type: string + description: The bank account name + hidden_account_number: + type: string + description: Masked bank account number + priority: + type: integer + description: The order of priority for each payment split, with priority 1 being the first bank account paid. Priority must be unique and sequential. + split_amount: + description: If `split_by` is 'Amount', this is in cents (e.g., 500 for $5.00) and exactly one account must have a `split_amount` of `null` to capture the remainder. If `split_by` is 'Percentage', this is the percentage value (e.g., 60 for 60%). + type: + - integer + - 'null' + required: + - uuid + Payroll-Blockers-Error: + description: |- + Payroll Blockers Error + + For detailed information, see the [Payroll Blockers guide](https://docs.gusto.com/embedded-payroll/docs/payroll-blockers) type: object + x-examples: + needs_onboarding: + errors: + - error_key: base + category: payroll_blocker + message: Company must complete all onboarding requirements in order to run payroll. + metadata: + key: needs_onboarding properties: - warnings: + errors: type: array items: type: object properties: error_key: type: string - description: Error key + description: The string "base" category: type: string - description: Error category + description: The string "payroll_blocker" message: type: string - description: Warning message + description: Human readable description of the payroll blocker metadata: type: object properties: key: type: string - description: A categorization of the migration warning, e.g. "marijuana_related_business" + description: A categorization of the payroll blocker, e.g. "geocode_error" + Create-Token-Authentication: + description: '' + type: object + required: + - access_token + - token_type + - expires_in + - created_at + properties: + access_token: + type: string + description: A new access token that can be used for subsequent authenticated requests + token_type: + type: string + default: Bearer + description: The literal string 'Bearer' + expires_in: + type: number + default: 7200 + description: The TTL of this token. After this amount of time, you must hit the refresh token endpoint to continue making authenticated requests. + created_at: + type: number + description: Datetime for when the new access token is created. + refresh_token: + type: + - string + - 'null' + description: A token that must be passed to the refresh token endpoint to get a new authenticated token. Only present when refresh token is provided. + Refresh-Token-Authentication: + description: '' + type: object + allOf: + - "$ref": "#/components/schemas/Create-Token-Authentication" + - type: object + properties: + refresh_token: + type: string + description: A token that must be passed to the refresh token endpoint to get a new authenticated token. + scope: + type: string + description: All of the scopes for which the access token provides access. Authentication: description: '' type: object @@ -25884,6 +10237,7 @@ components: token_type: Bearer created_at: 1767644464 expires_in: 7200 + refresh_token: refresh_token: access_token: As8qKfNObHbwe7abbJqF0WUF6iCQoIW2R664TFzXd-A refresh_token: As8qKfNObHbwe7abbJqF0WUF6iCQoIW2R664TFzXd-A @@ -25891,6 +10245,74 @@ components: token_type: Bearer created_at: 1767644464 expires_in: 7200 + Token-Info: + type: object + properties: + scope: + type: string + description: 'Space-separated list of OAuth scopes granted to this access token. + +' + example: companies:read public + resource: + type: + - object + - 'null' + description: | + The resource associated with this access token. Null when + the token has no associated resource. + properties: + type: + type: string + description: 'The type of resource associated with the access token, e.g. `Company` for a company-level token or `Oauth::Application` for a system-level token. + +' + example: Company + uuid: + type: string + format: uuid + description: The UUID of the associated resource + example: 7b1d0df1-6403-4a06-8768-c1dd7d24d27a + resource_owner: + type: + - object + - 'null' + description: | + The resource owner (user) who authorized this access token. Null for + system-level tokens or when the owner cannot be determined. + properties: + type: + type: string + enum: + - CompanyAdmin + - Employee + - Contractor + description: | + The type of resource owner: + - `CompanyAdmin`: A company administrator + - `Employee`: An employee + - `Contractor`: A contractor + example: CompanyAdmin + uuid: + type: string + format: uuid + description: The UUID of the resource owner + example: 8fdc31f0-a8a7-4872-a9f1-dcb5e6f876e3 + x-examples: + company_admin_token: + scope: companies:read public + resource: + type: Company + uuid: 7b1d0df1-6403-4a06-8768-c1dd7d24d27a + resource_owner: + type: CompanyAdmin + uuid: 8fdc31f0-a8a7-4872-a9f1-dcb5e6f876e3 + system_token: + scope: partner_managed_companies:create public + resource: + type: Oauth::Application + uuid: 9c2a1b3d-4e5f-6789-abcd-ef0123456789 + resource_owner: Pay-Schedule: type: object title: Pay Schedule @@ -25954,26 +10376,6 @@ components: - Pay Schedules required: - uuid - Contractor-Onboarding-Status-Update-Request-Body: - description: Request body for updating a contractor's onboarding status. - type: object - required: - - onboarding_status - properties: - onboarding_status: - type: string - description: The updated onboarding status for the contractor. - enum: - - admin_onboarding_incomplete - - admin_onboarding_review - - self_onboarding_not_invited - - self_onboarding_invited - - self_onboarding_started - - self_onboarding_review - - onboarding_completed - x-examples: - update_onboarding_status: - onboarding_status: onboarding_completed Pay-Schedule-Show: type: object title: Pay Schedule @@ -26038,108 +10440,253 @@ components: auto_payroll: true active: true auto_payroll_enablement_blockers: - Auto-Payroll-Enablement-Blocker-Employees-Not-On-Direct-Deposit: + Pay-Schedule-Show-Response: + type: array + description: 'List of pay schedules for a company, as returned from [GET /v1/companies/{company_id}/pay_schedules](ref:get-v1-companies-company_id-pay_schedules). Each entry matches Pay-Schedule-Show (includes `version`). + +' + items: + "$ref": "#/components/schemas/Pay-Schedule-Show" + x-tags: + - Pay Schedules + x-examples: + success_status: + - uuid: f2a69c38-e2f9-4e31-b5c5-4754fc60a052 + version: 68934a3e9455fa72420237eb05902327 + frequency: Monthly + anchor_pay_date: '2022-12-11' + anchor_end_of_pay_period: '2022-11-13' + day_1: 11 + day_2: + name: + custom_name: every 11th of the month + auto_payroll: true + active: true + auto_payroll_enablement_blockers: + Pay-Schedule-Version: + type: string + description: The current version of the pay schedule. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/api-fundamentals#optimistic-version-control) for information on how to use this field for optimistic concurrency. + readOnly: true + Pay-Schedule-Auto-Payroll: + type: boolean + description: | + With automatic payroll enabled, payroll runs automatically one day before payroll deadlines. When false, payroll does not run automatically. + Returned for API version 2025-11-15 and later; for earlier versions the response uses auto_pilot instead. + readOnly: true + Pay-Schedule-Auto-Payroll-Enablement-Blockers: + type: + - array + - 'null' + description: List of blockers preventing automatic payroll from being enabled. If automatic payroll is already enabled, this field is null. + items: + "$ref": "#/components/schemas/Pay-Schedule-Auto-Payroll-Enablement-Blocker" + Pay-Schedule-Auto-Payroll-Enablement-Blocker: type: object - title: Employees Not On Direct Deposit Blocker - description: Blocker indicating employees are not enrolled in direct deposit - required: - - key - - metadata + description: A single blocker preventing Autopayroll enablement. properties: key: type: string - enum: - - employees_not_on_direct_deposit + description: The blocker type (e.g. employees_not_on_direct_deposit, employees_not_salaried, missing_funding_method, missing_state_tax_requirements, one_day_ach_speed_not_supported, company_suspended, earned_fast_ach_not_met). metadata: type: object - properties: - employee_uuids: - type: array - description: UUIDs of employees who are not on direct deposit - items: - type: string - Auto-Payroll-Enablement-Blocker-Employees-Not-Salaried: + description: Blocker-specific metadata (e.g. employee_uuids, states). + Pay-Schedule-List: + type: array + description: List of pay schedules for a company. The pay schedule object in Gusto captures the details of when employees work and when they should be paid. A company can have multiple pay schedules. + items: + "$ref": "#/components/schemas/Pay-Schedule-Show" + x-examples: + success_status: + - uuid: f2a69c38-e2f9-4e31-b5c5-4754fc60a052 + version: 68934a3e9455fa72420237eb05902327 + frequency: Monthly + anchor_pay_date: '2022-12-11' + anchor_end_of_pay_period: '2022-11-13' + day_1: 11 + day_2: + name: + custom_name: every 11th of the month + auto_payroll: true + active: true + Pay-Schedule-Preview-Pay-Period: type: object - title: Employees Not Salaried Blocker - description: Blocker indicating employees are not salaried + description: A single pay period in a pay schedule preview, with check date, period boundaries, and payroll deadline. required: - - key - - metadata + - check_date + - start_date + - run_payroll_by + - end_date properties: - key: + check_date: type: string - enum: - - employees_not_salaried - metadata: - type: object - properties: - employee_uuids: - type: array - description: UUIDs of employees who are not salaried - items: - type: string - Auto-Payroll-Enablement-Blocker-Missing-State-Tax-Requirements: - type: object - title: Missing State Tax Requirements Blocker - description: Blocker indicating missing state tax requirements - required: - - key - - metadata - properties: - key: + format: date + description: The payment date, "Check date", for the pay period. + start_date: type: string - enum: - - missing_state_tax_requirements - metadata: - type: object - properties: - states: - type: array - description: State abbreviations for states with missing tax requirements - items: - type: string - Auto-Payroll-Enablement-Blocker-Missing-Funding-Method: - type: object - title: Missing Funding Method Blocker - description: Blocker indicating missing funding method - required: - - key - - metadata - properties: - key: + format: date + description: The first day of the pay period. + run_payroll_by: type: string - enum: - - missing_funding_method - metadata: - type: object - Auto-Payroll-Enablement-Blocker-One-Day-Ach-Speed-Not-Supported: + format: date + description: The deadline to run payroll for direct deposit on the check date. + end_date: + type: string + format: date + description: The last day of the pay period. + Pay-Schedule-Preview: type: object - title: One Day ACH Speed Not Supported Blocker - description: Blocker indicating one day ACH speed is not supported - required: - - key - - metadata + description: | + Preview of pay schedule dates for the next 18 months. Use this to show partners expected pay dates, pay period boundaries, and payroll deadlines before they create or change a pay schedule. See [Preview pay schedule dates](https://docs.gusto.com/embedded-payroll/reference/get-v1-companies-company_id-pay_schedules-preview) for usage. + + - **pay_periods**: One entry per pay period in the range; each includes check_date, start_date, end_date, and run_payroll_by. + - **holidays**: Observed bank holidays (ISO date strings) that may affect payroll timing. + x-examples: + success_status: + pay_periods: + - check_date: '2022-01-15' + start_date: '2022-01-01' + run_payroll_by: '2022-01-14' + end_date: '2022-01-15' + - check_date: '2022-01-31' + start_date: '2022-01-16' + run_payroll_by: '2022-01-30' + end_date: '2022-01-31' + holidays: + - '2022-01-01' + - '2022-01-17' properties: - key: - type: string - enum: - - one_day_ach_speed_not_supported - metadata: - type: object - Auto-Payroll-Enablement-Blocker-Company-Suspended: + pay_periods: + type: array + description: A list of pay periods for the previewed pay schedule (default range is 18 months from today, or up to end_date when provided). + items: + "$ref": "#/components/schemas/Pay-Schedule-Preview-Pay-Period" + holidays: + type: array + description: A list of dates for bank closures (ISO date strings); may affect payroll processing. + items: + type: string + format: date + Pay-Schedule-Date-Input: + type: string + format: date + description: ISO 8601 date (YYYY-MM-DD). Required for anchor and period dates in create, update, and preview requests. + Pay-Schedule-Create-Request: type: object - title: Company Suspended Blocker - description: Blocker indicating the company is suspended + description: | + Request body for creating a pay schedule. Required when a company has no pay schedules (onboarding) or when adding an additional schedule. Be sure to [check state laws](https://www.dol.gov/agencies/whd/state/payday) to know what schedule is right for your customers. + + - **anchor_pay_date**: The first date that employees on this pay schedule will be paid (first company payday). + - **anchor_end_of_pay_period**: The last date of the first pay period; can be the same as anchor_pay_date. + example: + frequency: Twice per month + anchor_pay_date: '2020-05-15' + anchor_end_of_pay_period: '2020-05-08' + day_1: 15 + day_2: 31 + custom_name: demo pay schedule + properties: + frequency: + allOf: + - "$ref": "#/components/schemas/Pay-Schedule-Frequency-Create-Update" + example: Twice per month + anchor_pay_date: + allOf: + - "$ref": "#/components/schemas/Pay-Schedule-Date-Input" + example: '2020-05-15' + anchor_end_of_pay_period: + allOf: + - "$ref": "#/components/schemas/Pay-Schedule-Date-Input" + example: '2020-05-08' + day_1: + type: + - integer + - 'null' + example: 15 + description: | + 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. + + On create: required for Twice per month and Monthly; omit or null for Every week and Every other week. + day_2: + type: + - integer + - 'null' + example: 31 + description: | + 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 is set to the last day of the month. It will be null for pay schedules with other frequencies. + + On create: only for Twice per month; omit or null for other frequencies. + custom_name: + type: + - string + - 'null' + example: demo pay schedule + description: | + A custom pay schedule name; defaults to the pay frequency description when null or omitted. + + When null or omitted, the system generates a description from the pay frequency and pay days (e.g. "every 1st and 15th of the month" for twice-monthly, "every 11th of the month" for monthly, "every Friday" for weekly). The response returns this generated value in `custom_name` when no custom name was set. When provided, the value you set is stored and returned. required: - - key - - metadata + - frequency + - anchor_pay_date + - anchor_end_of_pay_period + Pay-Schedule-Update-Request: + type: object + description: Request body for updating a pay schedule. Sent in the pay_schedule_update root key. Version is required for optimistic concurrency. Pay schedules may be automatically adjusted if an onboarded company misses their first pay date; see [Create a pay schedule](https://docs.gusto.com/embedded-payroll/docs/create-a-pay-schedule). + example: + version: 68934a3e9455fa72420237eb05902327 + auto_payroll: true + frequency: Twice per month + anchor_pay_date: '2021-10-15' + anchor_end_of_pay_period: '2021-10-15' + day_1: 15 + day_2: 31 + custom_name: demo pay schedule properties: - key: + version: type: string - enum: - - company_suspended - metadata: - type: object + example: 68934a3e9455fa72420237eb05902327 + description: Current version of the pay schedule from the GET response; required for optimistic concurrency. Mismatch returns 409 Conflict. + auto_payroll: + type: boolean + example: true + description: | + With automatic payroll enabled, payroll runs automatically one day before payroll deadlines. When false, payroll does not run automatically and must be run manually. + For API versions before 2025-11-15 the request field is auto_pilot. + frequency: + allOf: + - "$ref": "#/components/schemas/Pay-Schedule-Frequency-Create-Update" + example: Twice per month + anchor_pay_date: + allOf: + - "$ref": "#/components/schemas/Pay-Schedule-Date-Input" + example: '2020-05-15' + anchor_end_of_pay_period: + allOf: + - "$ref": "#/components/schemas/Pay-Schedule-Date-Input" + example: '2020-05-08' + day_1: + type: + - integer + - 'null' + example: 15 + description: '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: + type: + - integer + - 'null' + example: 31 + description: '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 is set to the last day of the month. It will be null for pay schedules with other frequencies. + +' + custom_name: + type: + - string + - 'null' + example: demo pay schedule + description: A custom pay schedule name; null clears any custom name so the default frequency description applies. + required: + - version Pay-Schedule-Create-Update: type: object title: Pay Schedule @@ -26262,16 +10809,6 @@ components: When the partner never set a custom name (or cleared it), this field contains the auto-generated description derived from frequency and pay days (e.g. "every 1st and 15th of the month", "every Friday"). When the partner set a custom name on create or update, this field contains that value. readOnly: true - Pay-Schedule-Version: - type: string - description: The current version of the pay schedule. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/api-fundamentals#optimistic-version-control) for information on how to use this field for optimistic concurrency. - readOnly: true - Pay-Schedule-Auto-Payroll: - type: boolean - description: | - With automatic payroll enabled, payroll runs automatically one day before payroll deadlines. When false, payroll does not run automatically. - Returned for API version 2025-11-15 and later; for earlier versions the response uses auto_pilot instead. - readOnly: true Pay-Schedule-Active: type: boolean description: Whether this pay schedule is associated with any employees. A pay schedule is inactive when it's unassigned. @@ -26307,6 +10844,33 @@ components: benefit_type: 5 ytd_employee_deduction_amount: '2132.00' ytd_company_contribution_amount: '3345.00' + Ytd-Benefit-Amounts-From-Different-Company-Body: + type: object + description: Year-to-date benefit amounts contributed at a different company for the specified employee. + properties: + benefit_type: + type: integer + description: The benefit type supported by Gusto. + tax_year: + type: number + minimum: 2000 + maximum: 2999 + description: The tax year for which this amount applies. + ytd_employee_deduction_amount: + type: string + default: '0.00' + description: The year-to-date employee deduction made outside the current company. + ytd_company_contribution_amount: + type: string + default: '0.00' + description: The year-to-date company contribution made outside the current company. + required: + - benefit_type + - tax_year + - ytd_employee_deduction_amount + - ytd_company_contribution_amount + x-tags: + - Employee Benefits Company-Attachment: description: The company attachment type: object @@ -26349,6 +10913,54 @@ components: upload_time: type: string description: The ISO 8601 timestamp of when an attachment was uploaded + Company-Attachment-List: + type: array + x-examples: + success_status: + - uuid: 5de11791-98fd-4587-9ed0-d5d804b8e647 + name: Company_Attachment_File1.pdf + category: gep_notice + upload_time: '2022-02-01T00:00:00.000Z' + - uuid: 987058cc-23ee-46e9-81ef-5cee086cceca + name: Company_Attachment_File2.pdf + category: compliance + upload_time: '2022-02-01T00:00:00.000Z' + items: + "$ref": "#/components/schemas/Company-Attachment" + Company-Attachment-Download-Url: + description: The temporary url to download a Company Attachment File + type: object + required: + - url + x-examples: + success_status: + url: https://s3.amazonaws.com/static.gusto.com/assets/uploaded_files/334721.pdf?parameter=daer8r3432423djklsdafaso + success_status_alternate: + url: https://s3.amazonaws.com/static.gusto.com/assets/uploaded_files/112233.pdf?parameter=abc123def456 + properties: + url: + type: string + description: A full URL to download a Company Attachment File + Company-Attachment-Create-Request-Body: + description: The binary payload of the file and the company attachment category. + type: object + required: + - document + - category + properties: + document: + type: string + format: binary + description: The binary payload of the file to be uploaded. Supported file types are .qbb, .qbm, .gif, .jpg, .png, .pdf, .xls, .xlsx, .doc and .docx. + category: + type: string + description: | + The category of a company attachment. + - `gep_notice`: A tax notice attachment + - `compliance`: A compliance attachment + enum: + - gep_notice + - compliance Company-Bank-Account: description: The company bank account type: object @@ -26448,6 +11060,92 @@ components: response. required: - uuid + Company-Bank-Account-Request: + type: object + properties: + routing_number: + type: string + description: The bank routing number + account_number: + type: string + description: The bank account number + account_type: + type: string + description: The bank account type + enum: + - Checking + - Savings + required: + - routing_number + - account_number + - account_type + Employee-Bank-Account-Request: + type: object + description: Request body for creating or updating an employee bank account. Send these fields as top-level JSON keys (the API wraps them server-side). + properties: + routing_number: + type: string + description: The bank routing number (nine digits). + example: '266905059' + account_number: + type: string + description: The bank account number. + example: '5809431207' + account_type: + type: string + description: The bank account type. + example: Checking + enum: + - Checking + - Savings + name: + type: string + description: A name for the bank account (e.g. "Primary Checking"). + example: BoA Checking Account + required: + - routing_number + - account_number + - account_type + - name + Company-Bank-Account-Verify-Request: + type: object + description: Request body for verifying a company bank account with the two micro-deposit amounts. + required: + - deposit_1 + - deposit_2 + properties: + deposit_1: + type: number + format: float + description: The first micro-deposit amount (order does not matter). + deposit_2: + type: number + format: float + description: The second micro-deposit amount (order does not matter). + Plaid-Processor-Token-Request: + type: object + description: Request body for creating a verified company bank account from a Plaid processor token. + required: + - owner_type + - owner_id + - processor_token + properties: + owner_type: + description: The owner type of the bank account + type: string + enum: + - Company + owner_id: + description: The owner UUID of the bank account + type: string + processor_token: + description: The Plaid processor token + type: string + x-examples: + example: + owner_type: Company + owner_id: ef279fbd-0fc6-4cf1-a977-6939d621c429 + processor_token: processor-sandbox-0asd1-a92nc Benefit-Type-Requirements: description: '' type: object @@ -26864,326 +11562,139 @@ components: yearly_limit: false category: Health Supported-Benefits-List: - - benefit_type: 1 - name: Medical Insurance - description: Deductions and contributions for Medical Insurance - pretax: true - posttax: false - imputed: false - healthcare: true - retirement: false - yearly_limit: false - category: Health - - benefit_type: 2 - name: Dental Insurance - description: Deductions and contributions for Dental Insurance - pretax: true - posttax: false - imputed: false - healthcare: true - retirement: false - yearly_limit: false - category: Health - - benefit_type: 3 - name: Vision Insurance - description: Deductions and contributions for Vision Insurance - pretax: true - posttax: false - imputed: false - healthcare: true - retirement: false - yearly_limit: false - category: Health - - benefit_type: 6 - name: Health Savings Account - description: Health Savings Accounts (HSA) allow employees to be reimbursed for qualified medical expenses. Contributions are pre-tax and lower the total amount of tax paid by employees and the employer. Employers may also make tax-free contributions to employees' HSA. Remaining balances are carried over in next year. - pretax: true - posttax: false - imputed: false - healthcare: false - retirement: false - yearly_limit: true - category: Health - - benefit_type: 7 - name: Health FSA - description: Flexible Spending Accounts (FSA) allow employees to be reimbursed for qualified medical expenses. Contributions are pre-tax and lower the total amount of tax paid by employees and the employer. Employers may also make tax-free contributions to employees' FSA. Remaining balances are not carried over in next year. - pretax: true - posttax: false - imputed: false - healthcare: false - retirement: false - yearly_limit: true - category: Health - - benefit_type: 11 - name: Dependent Care FSA - description: Dependent Care FSA reimburses employees for expenses to care for dependents while the employee is at work (e.g. Daycares). Contributions are pre-tax and lower the total amount of tax paid by employees and the employer. Employers may also make tax-free contributions to employee FSA. Remaining balances are not carried over to the next year. - pretax: true - posttax: false - imputed: false - healthcare: false - retirement: false - yearly_limit: true - category: Health - - benefit_type: 8 - name: SIMPLE IRA - description: The SIMPLE IRA is a tax-deferred retirement savings plan for employees. It is often used by small businesses as an alternative to 401(k) due to its relatively low operating cost. Employers are required to contribute a specific percentage to an employee's SIMPLE IRA. - pretax: true - posttax: false - imputed: false - healthcare: false - retirement: true - yearly_limit: true - category: Savings and Retirement - - benefit_type: 105 - name: Roth 401(k) - description: Roth 401(k) is an after-tax savings plan for employees. The standard maximum is $18,000, or $24,000 for employees over 50 years old. - pretax: false - posttax: true - imputed: false - healthcare: false - retirement: true - yearly_limit: true - category: Savings and Retirement - - benefit_type: 110 - name: Roth 403(b) - description: Roth 403(b) is an after-tax savings plan for certain clerics, employees of public schools, and employees of other types of tax-exempt organizations. Contributions made by employees are taxable for federal and state withholding. Often, employers contribute additional pre-tax dollars to the employee's Roth account to encourage saving for retirement. - pretax: false - posttax: true - imputed: false - healthcare: false - retirement: true - yearly_limit: true - category: Savings and Retirement - - benefit_type: 5 - name: 401(k) - description: 401(k) is tax-deferred retirement savings plan for employees. The standard maximum is $18,000, or $24,000 for employees over 50 years old. - pretax: true - posttax: false - imputed: false - healthcare: false - retirement: true - yearly_limit: true - category: Savings and Retirement - - benefit_type: 9 - name: 403(b) - description: 403(b) is tax-deferred retirement savings plan for certain clerics, employees of public schools, and employees of other types of tax-exempt organizations. - pretax: true - posttax: false - imputed: false - healthcare: false - retirement: true - yearly_limit: true - category: Savings and Retirement - - benefit_type: 108 - name: SEP-IRA - description: A SEP-IRA is a pre-tax retirement savings plan where only the employer contributes. It is often used by small businesses as an alternative to 401(k) due to its relatively low operating cost. Employers are required to contribute the same percentage to all enrolled employees, with a maximum contribution of 25% of the employee's compensation. - pretax: true - posttax: false - imputed: false - healthcare: false - retirement: true - yearly_limit: true - category: Savings and Retirement - - benefit_type: 109 - name: SARSEP - description: A SARSEP is a pre-tax retirement savings plan used by small businesses as an alternative to 401(k) due to its relatively low operating cost. While new SARSEP plans are not available, there are still some companies that are grandfathered into the plan. Employers are required to contribute the same percentage to all enrolled employees, with a maximum contribution of 25% of the employee's compensation. - pretax: true - posttax: false - imputed: false - healthcare: false - retirement: true - yearly_limit: true - category: Savings and Retirement - - benefit_type: 107 - name: Group-Term Life Insurance - description: Group-Term Life Insurance for coverage in excess of $50,000 per employee is a taxable fringe benefit. See IRS Publication 15-B to determine the dollar value of the excess coverage. - pretax: false - posttax: true - imputed: true - healthcare: false - retirement: false - yearly_limit: false - category: Health - - benefit_type: 10 - name: Commuter Benefits (pre-tax) - description: Tax-free commuter benefits for transit, vanpooling, bicycling, and work-related parking costs. The annual maximum contribution for this pre-tax benefit is in the IRS publication 15-B. - pretax: true - posttax: false - imputed: false - healthcare: false - retirement: false - yearly_limit: false - category: Transportation - - benefit_type: 106 - name: Personal Use of Company Car - description: When an employee uses a company-owned car for personal matters, it is considered taxable benefit provided in-kind. - pretax: false - posttax: true - imputed: true - healthcare: false - retirement: false - yearly_limit: false - category: Transportation - - benefit_type: 111 - name: 529 College Savings - description: 529 College Savings is an after-tax savings plan for employees designed to encourage saving for future college costs. This benefit should be reported as a taxable benefit and will therefore be taxed. - pretax: false - posttax: true - imputed: true - healthcare: false - retirement: false - yearly_limit: false - category: Other - - benefit_type: 112 - name: Student Loan Repayment - description: Student Loan Repayment is an after-tax savings plan for employees to pay towards their outstanding student loans. An employee can choose to set aside after-tax dollars towards this benefit. These benefits should be reported as a taxable benefit and will therefore be taxed. - pretax: false - posttax: true - imputed: true - healthcare: false - retirement: false - yearly_limit: false - category: Other - - benefit_type: 998 - name: Short Term Disability (post-tax) - description: Third Party Disability or Third Party Leave are policies offered by employers that pay an employee for a specific life event (maternity leave, injury). All payments made to employees come from a third-party, such as an insurer. For more information on the taxation of these plans, please refer to publication 15-A for more details. - pretax: false - posttax: true - imputed: false - healthcare: false - retirement: false - yearly_limit: false - category: Health - - benefit_type: 999 - name: Long Term Disability (post-tax) - description: Third Party Disability or Third Party Leave are policies offered by employers that pay an employee for a specific life event (maternity leave, injury). All payments made to employees come from a third-party, such as an insurer. For more information on the taxation of these plans, please refer to publication 15-A for more details. - pretax: false - posttax: true - imputed: false - healthcare: false - retirement: false - yearly_limit: false - category: Health - - benefit_type: 996 - name: Short Term Disability (pre-tax) - description: Third Party Disability or Third Party Leave are policies offered by employers that pay an employee for a specific life event (maternity leave, injury). All payments made to employees come from a third-party, such as an insurer. For more information on the taxation of these plans, please refer to publication 15-A for more details. - pretax: true - posttax: false - imputed: false - healthcare: false - retirement: false - yearly_limit: false - category: Health - - benefit_type: 997 - name: Long Term Disability (pre-tax) - description: Third Party Disability or Third Party Leave are policies offered by employers that pay an employee for a specific life event (maternity leave, injury). All payments made to employees come from a third-party, such as an insurer. For more information on the taxation of these plans, please refer to publication 15-A for more details. - pretax: true - posttax: false - imputed: false - healthcare: false - retirement: false - yearly_limit: false - category: Health - - benefit_type: 991 - name: Voluntary Short Term Disability (post-tax) - description: Third Party Disability or Third Party Leave are policies offered by employers that pay an employee for a specific life event (maternity leave, injury). All payments made to employees come from a third-party, such as an insurer. For more information on the taxation of these plans, please refer to publication 15-A for more details. - pretax: false - posttax: true - imputed: false - healthcare: false - retirement: false - yearly_limit: false - category: Health - - benefit_type: 992 - name: Voluntary Long Term Disability (post-tax) - description: Third Party Disability or Third Party Leave are policies offered by employers that pay an employee for a specific life event (maternity leave, injury). All payments made to employees come from a third-party, such as an insurer. For more information on the taxation of these plans, please refer to publication 15-A for more details. - pretax: false - posttax: true - imputed: false - healthcare: false - retirement: false - yearly_limit: false - category: Health - - benefit_type: 993 - name: Voluntary Life (post-tax) - description: Third Party Disability or Third Party Leave are policies offered by employers that pay an employee for a specific life event (maternity leave, injury). All payments made to employees come from a third-party, such as an insurer. For more information on the taxation of these plans, please refer to publication 15-A for more details. - pretax: false - posttax: true - imputed: false - healthcare: false - retirement: false - yearly_limit: false - category: Health - - benefit_type: 113 - name: Commuter Parking - description: Tax-free commuter benefits allow employees to reduce their monthly commuting expenses for transit, carpooling, bicycling, and work-related parking costs. Please note that there is an annual maximum for this pre-tax benefit. The maximum dollar amount is found in IRS Publication 15-B. - pretax: true - posttax: false - imputed: false - healthcare: false - retirement: false - yearly_limit: false - category: Transportation - - benefit_type: 114 - name: Commuter Transit - description: Tax-free commuter benefits allow employees to reduce their monthly commuting expenses for transit, carpooling, bicycling, and work-related parking costs. Please note that there is an annual maximum for this pre-tax benefit. The maximum dollar amount is found in IRS Publication 15-B. - pretax: true - posttax: false - imputed: false - healthcare: false - retirement: false - yearly_limit: false - category: Transportation - - benefit_type: 100 - name: Other (taxable) - description: Other taxable benefit - pretax: false - posttax: true - imputed: true - healthcare: false - retirement: false - yearly_limit: false - category: Other - - benefit_type: 201 - name: Cell Phone (taxable) - description: Employer-sponsored benefits like this are called fringe benefits, and they don't get special tax treatment—they'll be reported as taxable wages on your employees' paystubs. - pretax: false - posttax: true - imputed: true - healthcare: false - retirement: false - yearly_limit: false - category: Transportation - - benefit_type: 202 - name: Gym & Fitness (taxable) - description: Employer-sponsored benefits like this are called fringe benefits, and they don't get special tax treatment—they'll be reported as taxable wages on your employees' paystubs. - pretax: false - posttax: true - imputed: true - healthcare: false - retirement: false - yearly_limit: false - category: Transportation - - benefit_type: 203 - name: Housing (taxable) - description: Employer-sponsored benefits like this are called fringe benefits, and they don't get special tax treatment—they'll be reported as taxable wages on your employees' paystubs. - pretax: false - posttax: true - imputed: true - healthcare: false - retirement: false - yearly_limit: false - category: Transportation - - benefit_type: 204 - name: Wellness (taxable) - description: Employer-sponsored benefits like this are called fringe benefits, and they don't get special tax treatment—they'll be reported as taxable wages on your employees' paystubs. - pretax: false - posttax: true - imputed: true - healthcare: false - retirement: false - yearly_limit: false - category: Transportation + benefit_type: 1 + name: Medical Insurance + description: Deductions and contributions for Medical Insurance + pretax: true + posttax: false + imputed: false + healthcare: true + retirement: false + yearly_limit: false + category: Health + Contribution-Exclusion: + description: The representation of a contribution exclusion for a company benefit. + type: object + properties: + contribution_uuid: + type: string + description: The UUID of the contribution type. + example: '082dfd3e-5b55-11f0-bb42-ab7136ba04e2' + contribution_type: + type: string + description: The name of the contribution type. + example: Bonus + excluded: + type: boolean + description: Whether this contribution type is excluded from the benefit. + required: + - contribution_uuid + - contribution_type + - excluded + x-tags: + - Company Benefits + x-examples: + exclusion_bonus: + contribution_uuid: b82e35c5-d7c6-4705-9e16-9f87499ade18 + contribution_type: Bonus + excluded: false + exclusion_cash_tips: + contribution_uuid: f5618c94-ed7d-4366-b2c4-ff05e430064f + contribution_type: Cash Tips + excluded: false + exclusion_commission: + contribution_uuid: 60191999-004a-49d9-b163-630574433653 + contribution_type: Commission + excluded: false + exclusion_regular: + contribution_uuid: 75a7a827-1f2d-4d6f-94f2-514c1fc32b13 + contribution_type: Regular + excluded: false + exclusion_imputed: + contribution_uuid: eead3c7c-7964-4e3c-b609-670456127b09 + contribution_type: Life insurance imputed benefit + excluded: true + Company-Benefit-Create-Request: + description: '' + type: object + properties: + benefit_type: + type: integer + description: The ID of the benefit to which the company benefit belongs. + active: + type: boolean + default: true + description: Whether this benefit is active for employee participation. + description: + type: string + description: 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". + responsible_for_employer_taxes: + type: boolean + description: Whether the employer is subject to pay employer taxes when an employee is on leave. Only applicable to third party sick pay benefits. + responsible_for_employee_w2: + type: boolean + description: Whether the employer is subject to file W-2 forms for an employee on leave. Only applicable to third party sick pay benefits. + catch_up_type: + description: The type of catch-up contribution for this benefit, as required by Section 603 of the SECURE 2.0 Act. Only applicable to pre-tax 401(k) and 403(b) benefits. + anyOf: + - type: string + enum: + - elective + - deemed + - type: 'null' + required: + - description + Company-Benefit-Update-Request: + description: '' + type: object + properties: + version: + type: string + description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/versioning#object-layer) for information on how to use this field. + active: + type: boolean + description: Whether this benefit is active for employee participation. Company benefits may only be deactivated if no employees are actively participating. + description: + type: string + description: 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". + responsible_for_employer_taxes: + type: boolean + description: 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). + responsible_for_employee_w2: + type: boolean + description: 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). + catch_up_type: + description: The type of catch-up contribution for this benefit, as required by Section 603 of the SECURE 2.0 Act. Only applicable to pre-tax 401(k) and 403(b) benefits. + anyOf: + - type: string + enum: + - elective + - deemed + - type: 'null' + required: + - version + Contribution-Exclusion-Update-Request: + description: '' + type: object + properties: + contribution_exclusions: + type: array + description: The list of contribution exclusions to update + items: + "$ref": "#/components/schemas/Contribution-Exclusion" + required: + - contribution_exclusions + Employee-Benefit-Bulk-Update-Request: + description: '' + type: object + properties: + employee_benefits: + type: array + description: The list of employee benefits to create or update + items: + "$ref": "#/components/schemas/Employee-Benefit-For-Company-Benefit" + required: + - employee_benefits Company-Benefit-With-Employee-Benefits: description: The representation of a company benefit. type: object @@ -27205,12 +11716,12 @@ components: company_benefit_uuid: d2cec746-caee-464a-bcaf-00d93f7049c9 active: true deduct_as_percentage: false - employee_deduction: 3 - company_contribution: 0 + employee_deduction: '3' + company_contribution: '0' uuid: 9988f241-9aee-4383-bfca-eac79cf58135 contribution: type: amount - value: 0 + value: '0' properties: version: type: string @@ -27462,6 +11973,72 @@ components: - Earning Types required: - uuid + Earning-Type-List: + type: object + description: Lists of default and custom earning types for a company. + x-examples: + success: + default: + - name: Bonus + uuid: b82e35c5-d7c6-4705-9e16-9f87499ade18 + active: true + - name: Cash Tips + uuid: f5618c94-ed7d-4366-b2c4-ff05e430064f + active: true + - name: Commission + uuid: 60191999-004a-49d9-b163-630574433653 + active: true + - name: Correction Payment + uuid: 368226e0-8e8c-48f0-bc91-aee46caafbc9 + active: true + - name: Minimum Wage Adjustment + uuid: 88a2e519-9ff5-4c19-9071-6a709f3c2939 + active: true + - name: Paycheck Tips + uuid: a3eaf03d-e712-4144-8f9b-71a85528adcf + active: true + - name: Severance + uuid: a6a2eba7-6c7d-4ced-bbe8-43452fbc9f63 + active: true + custom: + - name: Gym Membership Stipend + uuid: 6b4a8efb-db90-4c13-a75f-aae11b3f4ff9 + active: true + defaults_only: + default: + - name: Bonus + uuid: b82e35c5-d7c6-4705-9e16-9f87499ade18 + active: true + - name: Cash Tips + uuid: f5618c94-ed7d-4366-b2c4-ff05e430064f + active: true + - name: Commission + uuid: 60191999-004a-49d9-b163-630574433653 + active: true + - name: Correction Payment + uuid: 368226e0-8e8c-48f0-bc91-aee46caafbc9 + active: true + - name: Minimum Wage Adjustment + uuid: 88a2e519-9ff5-4c19-9071-6a709f3c2939 + active: true + - name: Paycheck Tips + uuid: a3eaf03d-e712-4144-8f9b-71a85528adcf + active: true + - name: Severance + uuid: a6a2eba7-6c7d-4ced-bbe8-43452fbc9f63 + active: true + custom: [] + properties: + default: + type: array + description: The default earning types for the company. + items: + "$ref": "#/components/schemas/Earning-Type" + custom: + type: array + description: The custom earning types for the company. + items: + "$ref": "#/components/schemas/Earning-Type" Employee-Benefit-Base-Object: description: '' type: object @@ -27572,15 +12149,15 @@ components: - 'null' description: 'The amount that the employee is insured for. Note: company contribution cannot be present if coverage amount is set.' deduction_reduces_taxable_income: - type: - - string - - 'null' - default: unset - enum: - - unset - - reduces_taxable_income - - does_not_reduce_taxable_income description: 'Whether the employee deduction reduces taxable income or not. Only valid for Group Term Life benefits. Note: when the value is not "unset", coverage amount and coverage salary multiplier are ignored.' + anyOf: + - type: string + enum: + - unset + - reduces_taxable_income + - does_not_reduce_taxable_income + - type: 'null' + default: unset coverage_salary_multiplier: type: - string @@ -27607,6 +12184,299 @@ components: - 'null' format: date description: The date the employee benefit will expire. A null value indicates the benefit will not expire. + Employee-Benefit-Create-Request: + description: '' + type: object + properties: + company_benefit_uuid: + type: string + description: The UUID of the company benefit. + active: + type: boolean + default: true + description: Whether the employee benefit is active. + employee_deduction: + type: string + default: '0.00' + description: The amount to be deducted, per pay period, from the employee's pay. + deduct_as_percentage: + type: boolean + default: false + description: Whether the employee deduction amount should be treated as a percentage to be deducted from each payroll. + employee_deduction_annual_maximum: + type: + - string + - 'null' + description: The maximum employee deduction amount per year. A null value signifies no limit. + contribution: + type: object + description: An object representing the company contribution type and value. + properties: + type: + type: string + enum: + - tiered + - percentage + - amount + description: |- + The company contribution scheme. + + `amount`: The company contributes a fixed amount per payroll. If elective is true, the contribution is matching, dollar-for-dollar. + + `percentage`: The company contributes a percentage of the payroll amount per payroll period. If elective is true, the contribution is matching, dollar-for-dollar. + + `tiered`: The size of the company contribution corresponds to the size of the employee deduction relative to a tiered matching scheme. + value: + description: |- + For the `amount` and `percentage` contribution types, the value of the corresponding amount or percentage. + + For the `tiered` contribution type, an array of tiers. + oneOf: + - type: string + description: For the `amount` and `percentage` contribution types, the value of the corresponding amount or percentage. + - type: array + description: For `tiered` contribution types, an array of tiers. + items: + type: object + description: A single tier of a tiered matching scheme. + properties: + rate: + type: string + description: The percentage of employee deduction within this tier the company contribution will match. + threshold: + type: string + description: |- + Specifies the upper limit (inclusive) percentage of the employee contribution that this tier applies to. + + Use threshold to define each tier's end point, with tiers applied cumulatively from 0% upwards. + + For example: + + If the first tier has a threshold of "3", and rate of "100", the company will match 100% of employee contributions from 0% up to and including 3% of payroll. + + If the next tier has a threshold of "5" and a rate of "50", the company will match 50% of contributions from above 3% up to and including 5% of payroll. + elective: + type: boolean + description: 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`. + default: false + company_contribution_annual_maximum: + type: + - string + - 'null' + description: The maximum company contribution amount per year. A null value signifies no limit. + limit_option: + description: |- + Some benefits require additional information to determine + their limit. + + `Family` or `Individual`: Applicable to HSA benefit. + + `Joint Filing or Single` or `Married and Filing Separately`: Applicable to Dependent Care FSA benefit. + anyOf: + - type: string + enum: + - Family + - Individual + - Joint Filing or Single + - Married and Filing Separately + - type: 'null' + catch_up: + type: boolean + default: false + description: Whether the employee should use a benefit's "catch up" rate. Only Roth 401k and 401k benefits use this value for employees over 50. + coverage_amount: + type: + - string + - 'null' + description: 'The amount that the employee is insured for. Note: company contribution cannot be present if coverage amount is set.' + coverage_salary_multiplier: + type: string + default: '0.00' + description: '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: + description: 'Whether the employee deduction reduces taxable income or not. Only valid for Group Term Life benefits. Note: when the value is not "unset", coverage amount and coverage salary multiplier are ignored.' + anyOf: + - type: string + enum: + - unset + - reduces_taxable_income + - does_not_reduce_taxable_income + - type: 'null' + company_contribution: + type: string + default: '0.00' + description: The amount to be paid, per pay period, by the company. + deprecated: true + contribute_as_percentage: + type: boolean + default: false + description: Whether the company contribution amount should be treated as a percentage to be deducted from each payroll. + deprecated: true + effective_date: + type: string + format: date + default: '1970-01-01' + description: The date the employee benefit will start. If not provided, the benefit will be effective from 1970-01-01 (unix epoch). + expiration_date: + type: + - string + - 'null' + format: date + default: + description: The date the employee benefit will expire. A null value indicates the benefit will not expire. + required: + - company_benefit_uuid + x-examples: + Example: + company_benefit_uuid: f68abb42-431e-4392-bc3f-2795627e00f3 + active: true + employee_deduction: '100.00' + contribution: + type: amount + value: '100.00' + Employee-Benefit-Update-Request: + description: '' + type: object + properties: + version: + type: string + description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/versioning#object-layer) for information on how to use this field. + active: + type: boolean + description: Whether the employee benefit is active. + employee_deduction: + type: string + default: '0.00' + description: The amount to be deducted, per pay period, from the employee's pay. + deduct_as_percentage: + type: boolean + description: Whether the employee deduction amount should be treated as a percentage to be deducted from each payroll. + employee_deduction_annual_maximum: + type: + - string + - 'null' + description: The maximum employee deduction amount per year. A null value signifies no limit. + effective_date: + type: string + format: date + description: The date the employee benefit will start. + expiration_date: + type: + - string + - 'null' + format: date + description: The date the employee benefit will expire. A null value indicates the benefit will not expire. + contribution: + type: object + description: An object representing the type and value of the company contribution. + properties: + type: + type: string + enum: + - amount + - percentage + - tiered + description: |- + The company contribution scheme. + + `amount`: The company contributes a fixed amount per payroll. If elective is true, the contribution is matching, dollar-for-dollar. + + `percentage`: The company contributes a percentage of the payroll amount per payroll period. If elective is true, the contribution is matching, dollar-for-dollar. + + `tiered`: The size of the company contribution corresponds to the size of the employee deduction relative to a tiered matching scheme. + value: + description: |- + For the `amount` and `percentage` contribution types, the value of the corresponding amount or percentage. + + For the `tiered` contribution type, an array of tiers. + oneOf: + - type: string + description: For the `amount` and `percentage` contribution types, the value of the corresponding amount or percentage. + - type: array + description: For `tiered` contribution types, an array of tiers. + items: + type: object + description: A single tier of a tiered matching scheme. + properties: + rate: + type: string + description: The percentage of employee deduction within this tier the company contribution will match. + threshold: + type: string + description: |- + Specifies the upper limit (inclusive) percentage of the employee contribution that this tier applies to. + + Use threshold to define each tier's end point, with tiers applied cumulatively from 0% upwards. + + For example: + + If the first tier has a threshold of "3", and rate of "100", the company will match 100% of employee contributions from 0% up to and including 3% of payroll. + + If the next tier has a threshold of "5" and a rate of "50", the company will match 50% of contributions from above 3% up to and including 5% of payroll. + elective: + type: boolean + description: 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`. + default: false + company_contribution_annual_maximum: + type: + - string + - 'null' + description: The maximum company contribution amount per year. A null value signifies no limit. + limit_option: + description: |- + Some benefits require additional information to determine + their limit. + + `Family` or `Individual`: Applicable to HSA benefit. + + `Joint Filing or Single` or `Married and Filing Separately`: Applicable to Dependent Care FSA benefit. + anyOf: + - type: string + enum: + - Family + - Individual + - Joint Filing or Single + - Married and Filing Separately + - type: 'null' + catch_up: + type: boolean + default: false + description: Whether the employee should use a benefit's "catch up" rate. Only Roth 401k and 401k benefits use this value for employees over 50. + coverage_amount: + type: + - string + - 'null' + description: 'The amount that the employee is insured for. Note: company contribution cannot be present if coverage amount is set.' + deduction_reduces_taxable_income: + description: 'Whether the employee deduction reduces taxable income or not. Only valid for Group Term Life benefits. Note: when the value is not "unset", coverage amount and coverage salary multiplier are ignored.' + anyOf: + - type: string + enum: + - unset + - reduces_taxable_income + - does_not_reduce_taxable_income + - type: 'null' + default: unset + coverage_salary_multiplier: + type: string + default: '0.00' + description: '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.' + company_contribution: + type: string + default: '0.00' + description: The amount to be paid, per pay period, by the company. + deprecated: true + contribute_as_percentage: + type: boolean + default: false + description: Whether the company contribution amount should be treated as a percentage to be deducted from each payroll. + deprecated: true + required: + - version + x-examples: + Example: + version: '09j3d29jqdpj92109j9j2d90dq' + employee_deduction: '250.00' Employee-Benefit: description: The representation of an employee benefit. type: object @@ -27710,707 +12580,314 @@ components: - update required: - employee_uuid - Employee-Pay-Stub: - description: The representation of an employee pay stub information. - type: object - properties: - uuid: - type: string - description: The UUID of the employee pay stub. - readOnly: true - check_date: - type: string - description: The check date of the pay stub. - readOnly: true - gross_pay: - type: string - description: The gross pay amount for the pay stub. - readOnly: true - net_pay: - type: string - description: The net pay amount for the pay stub. - readOnly: true - payroll_uuid: - type: string - description: A unique identifier of the payroll to which the pay stub belongs. - readOnly: true - check_amount: - type: string - description: The check amount for the pay stub. - readOnly: true - x-tags: - - Payrolls - required: - - uuid - Pay-Period: - description: The representation of a pay period. - type: object - properties: - start_date: - type: string - description: The start date, inclusive, of the pay period. - readOnly: true - end_date: - type: string - minLength: 1 - description: The end date, inclusive, of the pay period. - pay_schedule_uuid: - type: string - description: A unique identifier of the pay schedule to which the pay period belongs. - readOnly: true - payroll: - type: object - description: Information about the payroll for the pay period. - properties: - payroll_uuid: - type: string - readOnly: true - description: The UUID of the payroll for this pay period. - check_date: - type: string - description: The date on which employees will be paid for the payroll if the payroll is submitted on time. - readOnly: true - processed: - type: boolean - readOnly: true - description: Whether or not the payroll has been successfully processed. Note that processed payrolls cannot be updated. Additionally, a payroll is not guaranteed to be processed just because the payroll deadline has passed. Late payrolls are not uncommon. Conversely, users may choose to run payroll before the payroll deadline. - payroll_deadline: - type: string - format: date-time - description: The date by which payroll should be run for employees to be paid on time. Payroll data, such as time and attendance data, should be submitted on or before this date. - readOnly: true - payroll_type: - type: string - description: Whether it is regular pay period or transition pay period. - enum: - - regular - - transition - readOnly: true - readOnly: true - x-examples: - typical_pay_period: - start_date: '2024-01-01' - end_date: '2024-01-15' - pay_schedule_uuid: 7b1d0df1-6403-4a06-8768-c1dd7d24d27a - payroll: - payroll_uuid: 8c2e1ef2-7514-5b17-9879-d2ee8e35e38b - check_date: '2024-01-19' - processed: false - payroll_deadline: '2024-01-17T18:00:00Z' - payroll_type: regular - x-tags: - - Payrolls - Contribution-Exclusion: - description: The representation of a contribution exclusion for a company benefit. - type: object - properties: - contribution_uuid: - type: string - description: The UUID of the contribution type. - example: '082dfd3e-5b55-11f0-bb42-ab7136ba04e2' - contribution_type: - type: string - description: The name of the contribution type. - example: Bonus - excluded: - type: boolean - description: Whether this contribution type is excluded from the benefit. - required: - - contribution_uuid - - contribution_type - - excluded - x-tags: - - Company Benefits - x-examples: - exclusion_bonus: - contribution_uuid: b82e35c5-d7c6-4705-9e16-9f87499ade18 - contribution_type: Bonus - excluded: false - exclusion_cash_tips: - contribution_uuid: f5618c94-ed7d-4366-b2c4-ff05e430064f - contribution_type: Cash Tips - excluded: false - exclusion_commission: - contribution_uuid: 60191999-004a-49d9-b163-630574433653 - contribution_type: Commission - excluded: false - exclusion_regular: - contribution_uuid: 75a7a827-1f2d-4d6f-94f2-514c1fc32b13 - contribution_type: Regular - excluded: false - exclusion_imputed: - contribution_uuid: eead3c7c-7964-4e3c-b609-670456127b09 - contribution_type: Life insurance imputed benefit - excluded: true - Created-At-Type: - type: string - format: date-time - description: Datetime for when the resource was created. - readOnly: true - Off-Cycle-Reason-Type: - anyOf: - - type: string - enum: - - Adhoc - - Benefit reversal - - Bonus - - Correction - - Dismissed employee - - Hired employee - - Wage correction - - Tax reconciliation - - Reversal - - Disability insurance distribution - - Transition from old pay schedule - - type: 'null' - description: The off-cycle reason. Only included for off-cycle payrolls. - readOnly: true - Auto-Pilot-Type: - type: boolean - description: Indicates whether the payroll is an auto pilot payroll - readOnly: true - Payroll-Employee-Compensations-Type: - allOf: - - "$ref": "#/components/schemas/Payroll-Employee-Compensations-Base-Type" - - "$ref": "#/components/schemas/Versionable" - - type: object - properties: - version: - description: The current version of this employee compensation. This field is only available for prepared payrolls. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. - deductions: - type: array - uniqueItems: false - description: An array of deductions for the employee. This field is included by default for regular payrolls in version `v2025-06-15` and later. - items: - type: object - properties: - name: - type: string - description: The name of the deduction. - amount: - type: number - description: The amount of the deduction for the pay period. - amount_type: - type: string - description: The amount type of the deduction for the pay period. Only present for unprocessed payrolls. - enum: - - fixed - - percent - uuid: - type: string - description: The UUID of the deduction. Only present for unprocessed payrolls. - updatable_via_payroll: - type: boolean - description: Whether the deduction can be updated via the payroll update endpoint. Only present for unprocessed payrolls. - readOnly: true - Payroll-Totals-Type: - type: object - description: The subtotals for the payroll. - properties: - company_debit: - type: string - description: The total company debit for the payroll. - readOnly: true - net_pay_debit: - type: string - minLength: 1 - description: The total company net pay for the payroll. - tax_debit: - type: string - description: The total tax debit for the payroll. - readOnly: true - reimbursement_debit: - type: string - description: The total reimbursement debit for the payroll. - readOnly: true - child_support_debit: - type: string - description: The total child support debit for the payroll. - readOnly: true - reimbursements: + Employee-Pay-Stub: + description: The representation of an employee pay stub information. + type: object + properties: + uuid: type: string - description: The total reimbursements for the payroll. + description: The UUID of the employee pay stub. readOnly: true - net_pay: + check_date: type: string - description: The net pay amount for the payroll. + description: The check date of the pay stub. readOnly: true gross_pay: type: string - description: The gross pay amount for the payroll. - readOnly: true - employee_bonuses: - type: string - description: The total employee bonuses amount for the payroll. - readOnly: true - employee_commissions: - type: string - description: The total employee commissions amount for the payroll. - readOnly: true - employee_cash_tips: - type: string - description: The total employee cash tips amount for the payroll. - readOnly: true - employee_paycheck_tips: - type: string - description: The total employee paycheck tips amount for the payroll. + description: The gross pay amount for the pay stub. readOnly: true - additional_earnings: + net_pay: type: string - description: The total additional earnings amount for the payroll. + description: The net pay amount for the pay stub. readOnly: true - owners_draw: + payroll_uuid: type: string - description: The total owner's draw for the payroll. + description: A unique identifier of the payroll to which the pay stub belongs. readOnly: true check_amount: type: string - description: The total check amount for the payroll. - readOnly: true - employer_taxes: - type: string - description: The total amount of employer paid taxes for the payroll. - readOnly: true - employee_taxes: - type: string - description: The total amount of employee paid taxes for the payroll. - readOnly: true - benefits: - type: string - description: The total amount of company contributed benefits for the payroll. - readOnly: true - employee_benefits_deductions: - type: string - description: The total amount of employee deducted benefits for the payroll. - readOnly: true - imputed_pay: - type: string - description: The total amount of imputed pay for the payroll. - readOnly: true - deferred_payroll_taxes: - type: string - description: The total amount of payroll taxes deferred for the payroll, such as allowed by the CARES act. + description: The check amount for the pay stub. readOnly: true - other_deductions: - type: string - description: The total amount of deductions for the payroll. - readOnly: true - Payroll-Company-Taxes-Type: - type: array - uniqueItems: false - description: An array of taxes applicable to this payroll in addition to taxes included in `employee_compensations`. Only included for processed or calculated payrolls when `taxes` is present in the `include` parameter. - items: - type: object - properties: - name: - type: string - description: The tax name - employer: - type: boolean - description: Whether this tax is an employer or employee tax - amount: - type: string - description: The amount of this tax for the payroll - Payroll-Payment-Speed-Changed-Type: + x-tags: + - Payrolls + required: + - uuid + Pay-Period: + description: The representation of a pay period. type: object - description: Only applicable when a payroll is moved to four day processing instead of fast ach. properties: - original_check_date: - type: string - description: Original check date when fast ach applies. - readOnly: true - current_check_date: + start_date: type: string - description: Current check date. + description: The start date, inclusive, of the pay period. readOnly: true - original_debit_date: + end_date: type: string - description: Original debit date when fast ach applies. - readOnly: true - current_debit_date: + minLength: 1 + description: The end date, inclusive, of the pay period. + pay_schedule_uuid: type: string - description: Current debit date. + description: A unique identifier of the pay schedule to which the pay period belongs. readOnly: true - reason: - type: string - description: The reason why the payroll is moved to four day. + payroll: + type: object + description: Information about the payroll for the pay period. + properties: + payroll_uuid: + type: string + readOnly: true + description: The UUID of the payroll for this pay period. + check_date: + type: string + description: The date on which employees will be paid for the payroll if the payroll is submitted on time. + readOnly: true + processed: + type: boolean + readOnly: true + description: Whether or not the payroll has been successfully processed. Note that processed payrolls cannot be updated. Additionally, a payroll is not guaranteed to be processed just because the payroll deadline has passed. Late payrolls are not uncommon. Conversely, users may choose to run payroll before the payroll deadline. + payroll_deadline: + type: string + format: date-time + description: The date by which payroll should be run for employees to be paid on time. Payroll data, such as time and attendance data, should be submitted on or before this date. + readOnly: true + payroll_type: + type: string + description: Whether it is regular pay period or transition pay period. + enum: + - regular + - transition + readOnly: true readOnly: true - Payroll-Payroll-Status-Meta-Type: + x-examples: + typical_pay_period: + start_date: '2024-01-01' + end_date: '2024-01-15' + pay_schedule_uuid: 7b1d0df1-6403-4a06-8768-c1dd7d24d27a + payroll: + payroll_uuid: 8c2e1ef2-7514-5b17-9879-d2ee8e35e38b + check_date: '2024-01-19' + processed: false + payroll_deadline: '2024-01-17T18:00:00Z' + payroll_type: regular + x-tags: + - Payrolls + People-Batch: type: object - description: Information about the payroll's status and expected dates + description: A batch for bulk people creation. + x-examples: + success_status: + uuid: 191e7162-3026-497e-aca2-f81b7e93204e + idempotency_key: 80a74f8b-2c16-45e5-9038-aa108849c6e6 + status: pending + batch_action: create properties: - cancellable: - type: boolean - description: true if the payroll may be cancelled. - readOnly: true - expected_check_date: + uuid: type: string - description: The date an employee will be paid if the payroll is submitted now. + format: uuid + description: The unique identifier of the people batch. readOnly: true - initial_check_date: + idempotency_key: type: string - description: The normal check date for the associated pay period. - readOnly: true - expected_debit_time: + format: uuid + description: The idempotency key provided when creating the batch. + status: type: string - description: The time the employer's account will be debited if the payroll is submitted now. - readOnly: true - payroll_late: - type: boolean - description: expected_check_date > initial_check_date. - readOnly: true - initial_debit_cutoff_time: + enum: + - pending + - processing + - completed + - failed + - partial_success + description: The current status of the batch processing. + batch_action: type: string - description: Payroll must be submitted at or before this time to avoid late payroll. - readOnly: true - Payroll-Pay-Period-Type: + description: The action being performed on the batch. + required: + - uuid + - idempotency_key + - status + - batch_action + People-Batch-Results: type: object - readOnly: true + description: A people batch with processing results. + x-examples: + success_status: + uuid: f711ab7a-2d44-4556-b90c-9f883195f53a + idempotency_key: 95d84feb-3a17-4c0b-a00b-bf8d3dec3326 + status: pending + submitted_at: '2026-03-02T15:09:50-08:00' + completed_at: + submitted_items: + processed_items: 0 + excluded_items: 0 + results: [] properties: - start_date: + uuid: type: string - description: The start date, inclusive, of the pay period. + format: uuid + description: The unique identifier of the people batch. readOnly: true - end_date: + idempotency_key: type: string - description: The start date, inclusive, of the pay period. - readOnly: true - pay_schedule_uuid: - type: - - string - - 'null' - description: The UUID of the pay schedule for the payroll. - readOnly: true - Payroll-Withholding-Pay-Period-Type: - description: The payment schedule tax rate the payroll is based on. Only included for off-cycle payrolls. - readOnly: true - anyOf: - - type: string - enum: - - Every week - - Every other week - - Twice per month - - Monthly - - Quarterly - - Semiannually - - Annually - - type: 'null' - Payroll-Deadline-Type: - type: string - format: date-time - description: A timestamp that is the deadline for the payroll to be run in order for employees to be paid on time. If payroll has not been run by the deadline, a prepare request will update both the check date and deadline to reflect the soonest employees can be paid and the deadline by which the payroll must be run in order for said check date to be met. - readOnly: true - Payroll-Check-Date-Type: - type: string - description: The date on which employees will be paid for the payroll. - readOnly: true - Payroll-Processed-Type: - type: boolean - description: Whether or not the payroll has been successfully processed. Note that processed payrolls cannot be updated. Additionally, a payroll is not guaranteed to be processed just because the payroll deadline has passed. Late payrolls are not uncommon. Conversely, users may choose to run payroll before the payroll deadline. - readOnly: true - Payroll-Processed-Date-Type: - type: - - string - - 'null' - description: The date at which the payroll was processed. Null if the payroll isn't processed yet. - readOnly: true - Payroll-Calculated-At-Type: - type: - - string - - 'null' - format: date-time - description: A timestamp of the last valid payroll calculation. Null if there isn't a valid calculation. - readOnly: true - Payroll-Payroll-Uuid-Type: - type: string - description: The UUID of the payroll. - readOnly: true - Payroll-Company-Uuid-Type: - type: string - description: The UUID of the company for the payroll. - readOnly: true - Payroll-Off-Cycle-Type: - type: boolean - description: Indicates whether the payroll is an off-cycle payroll - readOnly: true - Payroll-External-Type: - type: boolean - description: Indicates whether the payroll is an external payroll - readOnly: true - Payroll-Final-Termination-Payroll-Type: - type: boolean - description: Indicates whether the payroll is the final payroll for a terminated employee. Only included for off-cycle payrolls. - readOnly: true - Payroll-Skip-Regular-Deductions-Type: - type: - - boolean - - 'null' - description: Block regular deductions and contributions for this payroll. Only included for off-cycle payrolls. - readOnly: true - Payroll-Fixed-Withholding-Rate-Type: - type: - - boolean - - 'null' - description: Enable taxes to be withheld at the IRS's required rate of 22% for federal income taxes. State income taxes will be taxed at the state's supplemental tax rate. Otherwise, we'll sum the entirety of the employee's wages and withhold taxes on the entire amount at the rate for regular wages. Only included for off-cycle payrolls. - readOnly: true - Payroll-Fixed-Compensation-Types-Type: - type: array - items: - type: object - readOnly: true - properties: - name: - description: The name of an available type of fixed compensation. - type: string - readOnly: true - Payroll-Submission-Blockers-Type: - type: array - description: Only included for processed or calculated payrolls - uniqueItems: true - items: - "$ref": "#/components/schemas/Payroll-Submission-Blocker-Type" - Payroll-Credit-Blockers-Type: - type: array - description: Only included for processed payrolls - uniqueItems: true - items: - "$ref": "#/components/schemas/Payroll-Credit-Blocker-Type" - Reversal-Payroll-Uuids-Type: - type: array - description: Array of reversal payroll UUIDs, if applicable. - uniqueItems: true - items: - type: string - description: The UUID of the reversal payroll. - nullable: false - readOnly: true - Payroll-Processing-Request: - type: - - object - - 'null' - properties: + format: uuid + description: The idempotency key provided when creating the batch. status: type: string - description: The status of the payroll processing request - readOnly: true enum: - - calculating - - calculate_success - - submitting - - submit_success - - processing_failed - errors: - description: Errors that occurred during async payroll processing - readOnly: true - type: array - items: - "$ref": "#/components/schemas/Entity-Error-Object" - Payroll: - type: object - x-examples: - success_status: - uuid: b441a30b-2adb-489e-b7b7-9d094011a3f8 - employee_compensations: [] - submission_blockers: [] - credit_blockers: [] - payroll_uuid: b441a30b-2adb-489e-b7b7-9d094011a3f8 - company_uuid: 9aa93530-43d5-484e-b608-33214109420d - off_cycle: false - auto_payroll: false - processed: true - processed_date: '2025-06-16' - calculated_at: '2025-06-16T16:58:03Z' - pay_period: - start_date: '2025-05-25' - end_date: '2025-06-09' - pay_schedule_uuid: 40ff5990-0191-4796-9717-32f7dd3e94d5 - check_date: '2025-06-13' - external: false - payroll_deadline: '2025-06-17T23:00:00Z' - totals: - employee_bonuses: '0.00' - employee_commissions: '0.00' - employee_cash_tips: '0.00' - employee_paycheck_tips: '0.00' - additional_earnings: '0.00' - owners_draw: '0.00' - benefits: '0.00' - check_amount: '0.00' - child_support_debit: '0.00' - company_debit: '0.00' - deferred_payroll_taxes: '0.00' - employee_benefits_deductions: '0.00' - employee_taxes: '0.00' - employer_taxes: '0.00' - gross_pay: '0.00' - imputed_pay: '0.00' - net_pay: '0.00' - net_pay_debit: '0.00' - other_deductions: '0.00' - reimbursement_debit: '0.00' - reimbursements: '0.00' - tax_debit: '0.00' - payroll_status_meta: - cancellable: false - expected_check_date: '2025-06-13' - initial_check_date: '2025-06-13' - expected_debit_time: '2025-06-17T23:00:00Z' - payroll_late: false - initial_debit_cutoff_time: '2025-06-17T23:00:00Z' - processing_request: - status: submit_success - errors: [] - created_at: '2025-06-16T16:58:03Z' - partner_owned_disbursement: - properties: - payroll_deadline: - "$ref": "#/components/schemas/Payroll-Deadline-Type" - check_date: - "$ref": "#/components/schemas/Payroll-Check-Date-Type" - processed: - "$ref": "#/components/schemas/Payroll-Processed-Type" - processed_date: - "$ref": "#/components/schemas/Payroll-Processed-Date-Type" - calculated_at: - "$ref": "#/components/schemas/Payroll-Calculated-At-Type" - uuid: - "$ref": "#/components/schemas/Payroll-Payroll-Uuid-Type" - payroll_uuid: - "$ref": "#/components/schemas/Payroll-Payroll-Uuid-Type" - company_uuid: - "$ref": "#/components/schemas/Payroll-Company-Uuid-Type" - off_cycle: - "$ref": "#/components/schemas/Payroll-Off-Cycle-Type" - off_cycle_reason: - "$ref": "#/components/schemas/Off-Cycle-Reason-Type" - auto_payroll: - "$ref": "#/components/schemas/Auto-Pilot-Type" - external: - "$ref": "#/components/schemas/Payroll-External-Type" - final_termination_payroll: - "$ref": "#/components/schemas/Payroll-Final-Termination-Payroll-Type" - withholding_pay_period: - "$ref": "#/components/schemas/Payroll-Withholding-Pay-Period-Type" - skip_regular_deductions: - "$ref": "#/components/schemas/Payroll-Skip-Regular-Deductions-Type" - fixed_withholding_rate: - "$ref": "#/components/schemas/Payroll-Fixed-Withholding-Rate-Type" - pay_period: - "$ref": "#/components/schemas/Payroll-Pay-Period-Type" - payroll_status_meta: - "$ref": "#/components/schemas/Payroll-Payroll-Status-Meta-Type" - totals: - "$ref": "#/components/schemas/Payroll-Totals-Type" - company_taxes: - "$ref": "#/components/schemas/Payroll-Company-Taxes-Type" - payroll_taxes: - "$ref": "#/components/schemas/Payroll-Taxes-Type" - payment_speed_changed: - "$ref": "#/components/schemas/Payroll-Payment-Speed-Changed-Type" - created_at: - "$ref": "#/components/schemas/Created-At-Type" - submission_blockers: - "$ref": "#/components/schemas/Payroll-Submission-Blockers-Type" - credit_blockers: - "$ref": "#/components/schemas/Payroll-Credit-Blockers-Type" - processing_request: - "$ref": "#/components/schemas/Payroll-Processing-Request" - partner_owned_disbursement: - "$ref": "#/components/schemas/Payroll-Partner-Owned-Disbursement-Type" - Payroll-Prepared: - description: The response from preparing a payroll for update. Contains refreshed employee compensations, updated payroll dates, and version information needed for subsequent payroll updates. - x-examples: - success_status: - uuid: 4428f108-e46e-4ab6-ba20-03cea031cfc0 - employee_compensations: [] - payroll_uuid: 4428f108-e46e-4ab6-ba20-03cea031cfc0 - company_uuid: 42b5333b-ee39-493a-bf7e-f41f2bd67848 - payroll_status_meta: - cancellable: false - expected_check_date: '2025-06-17' - initial_check_date: '2025-06-17' - expected_debit_time: '2025-06-11T23:00:00Z' - payroll_late: false - initial_debit_cutoff_time: '2025-06-11T23:00:00Z' - off_cycle: true - auto_payroll: false - off_cycle_reason: Bonus - withholding_pay_period: Twice per month - skip_regular_deductions: true - fixed_withholding_rate: true - final_termination_payroll: false - processed: false - processed_date: - calculated_at: - pay_period: - start_date: '2025-06-10' - end_date: '2025-06-16' - pay_schedule_uuid: - check_date: '2025-06-17' - external: false - payroll_deadline: '2025-06-11T23:00:00Z' - fixed_compensation_types: - - name: Bonus - - name: Commission - - name: Paycheck Tips - - name: Cash Tips - - name: Correction Payment - - name: Reimbursement - created_at: '2025-06-11T19:40:52Z' - partner_owned_disbursement: + - pending + - processing + - completed + - failed + - partial_success + description: The current status of the batch processing. + submitted_at: + type: string + format: date-time + description: The timestamp when the batch was submitted. + completed_at: + type: + - string + - 'null' + format: date-time + description: The timestamp when the batch processing completed. + submitted_items: + type: + - integer + - 'null' + description: The number of items submitted in the batch. + processed_items: + type: integer + description: The number of items successfully processed. + excluded_items: + type: integer + description: The number of items excluded from processing. + results: + type: array + description: The results for each batch item. + items: + type: object + properties: + external_id: + type: string + description: The external ID provided in the batch request. + role: + type: string + enum: + - employee + description: The type of person created. + status: + type: string + enum: + - success + - partial_success + - failed + description: The status of this batch item. + idx: + type: integer + description: The index of this item in the original batch request. + uuid: + type: string + format: uuid + description: The UUID of the created person. + employee_uuid: + type: string + format: uuid + description: The UUID of the created employee (if role is employee). + errors: + type: + - array + - 'null' + description: Errors encountered while processing this batch item. + items: + type: object + properties: + error_key: + type: string + description: The key identifying the error source. + category: + type: string + description: The error category. + message: + type: + - string + - 'null' + description: Human-readable error message. + errors: + type: + - array + - 'null' + description: Nested errors for sub-operations. + items: + type: object + exclusions: + type: + - array + - 'null' + description: Items excluded from processing due to validation errors. + items: + type: object + properties: + external_id: + type: string + description: The external ID of the excluded item(s). + category: + type: string + description: The exclusion category. + message: + type: string + description: Human-readable explanation for exclusion. + item_count: + type: integer + description: Number of items affected by this exclusion. + required: + - uuid + - idempotency_key + - status + People-Batch-Conflict-Error: type: object + description: Error response when a people batch idempotency key conflict occurs. + x-examples: + conflict: + errors: + - error_key: idempotency_key + category: invalid_attribute_value + message: Idempotency token already used + metadata: + entity_uuid: 14c53a55-0a80-4d46-a866-f5f64bc06486 + entity_type: PeopleBatch properties: - payroll_deadline: - "$ref": "#/components/schemas/Payroll-Deadline-Type" - check_date: - "$ref": "#/components/schemas/Payroll-Check-Date-Type" - processed: - "$ref": "#/components/schemas/Payroll-Processed-Type" - processed_date: - "$ref": "#/components/schemas/Payroll-Processed-Date-Type" - calculated_at: - "$ref": "#/components/schemas/Payroll-Calculated-At-Type" - uuid: - "$ref": "#/components/schemas/Payroll-Payroll-Uuid-Type" - payroll_uuid: - "$ref": "#/components/schemas/Payroll-Payroll-Uuid-Type" - company_uuid: - "$ref": "#/components/schemas/Payroll-Company-Uuid-Type" - off_cycle: - "$ref": "#/components/schemas/Payroll-Off-Cycle-Type" - off_cycle_reason: - "$ref": "#/components/schemas/Off-Cycle-Reason-Type" - auto_payroll: - "$ref": "#/components/schemas/Auto-Pilot-Type" - external: - "$ref": "#/components/schemas/Payroll-External-Type" - final_termination_payroll: - "$ref": "#/components/schemas/Payroll-Final-Termination-Payroll-Type" - withholding_pay_period: - "$ref": "#/components/schemas/Payroll-Withholding-Pay-Period-Type" - skip_regular_deductions: - "$ref": "#/components/schemas/Payroll-Skip-Regular-Deductions-Type" - fixed_withholding_rate: - "$ref": "#/components/schemas/Payroll-Fixed-Withholding-Rate-Type" - pay_period: - "$ref": "#/components/schemas/Payroll-Pay-Period-Type" - payroll_status_meta: - "$ref": "#/components/schemas/Payroll-Payroll-Status-Meta-Type" - employee_compensations: + errors: type: array - uniqueItems: false items: - "$ref": "#/components/schemas/Payroll-Employee-Compensations-Type" - payment_speed_changed: - "$ref": "#/components/schemas/Payroll-Payment-Speed-Changed-Type" - created_at: - "$ref": "#/components/schemas/Created-At-Type" - fixed_compensation_types: - "$ref": "#/components/schemas/Payroll-Fixed-Compensation-Types-Type" - processing_request: - "$ref": "#/components/schemas/Payroll-Processing-Request" - partner_owned_disbursement: - "$ref": "#/components/schemas/Payroll-Partner-Owned-Disbursement-Type" + type: object + properties: + error_key: + type: string + description: The key identifying the error source. + category: + type: string + description: The error category. + message: + type: string + description: Human-readable error message. + metadata: + type: object + properties: + entity_uuid: + type: string + format: uuid + description: The UUID of the existing entity. + entity_type: + type: string + description: The type of the existing entity. + Reversal-Payroll-Uuids-Type: + type: array + description: Array of reversal payroll UUIDs, if applicable. + uniqueItems: true + items: + type: string + description: The UUID of the reversal payroll. + nullable: false + readOnly: true Payroll-Minimal: description: '' type: object @@ -28511,11 +12988,26 @@ components: example: Company needs to be approved to run payroll. x-examples: blockers_list: - - key: needs_approval - message: Company needs to be approved to run payroll. - - key: missing_bank_info - message: Company must have a bank account in order to run payroll. + key: needs_approval + message: Company needs to be approved to run payroll. empty_blockers_list: [] + Printable-Payroll-Checks-Body: + description: Request body for generating printable payroll checks. + type: object + required: + - printing_format + properties: + printing_format: + type: string + enum: + - top + - bottom + description: The type of check stock being printed. Check the "Types of check stock" section in this [link](https://support.gusto.com/article/999877761000000/Pay-your-team-by-check) for more info on check types + starting_check_number: + type: integer + description: The starting check number we will start generating checks from. Use to override the sequence that will be used to generate check numbers. + x-tags: + - Payrolls Payroll-Check: type: object properties: @@ -28660,166 +13152,248 @@ components: - employee company_uuid: p83d0ca8-7d41-42a9-834y-7d218ef6cb20 report_type: payroll_journal - Payroll-Receipt: + Create-Report-Body: + description: Request body for creating a custom report. type: object - x-examples: - success_status: - totals: - company_debit: '0.00' - net_pay_debit: '0.00' - child_support_debit: '0.00' - reimbursement_debit: '0.00' - tax_debit: '0.00' - taxes: [] - employee_compensations: [] - licensee: - name: Gusto, Zenpayroll Inc. - address: 525 20th St - city: San Francisco - state: CA - postal_code: '94107' - phone_number: '4157778888' - payroll_uuid: 9f624c0d-0d4f-499a-993a-846dfa47a48e - company_uuid: '0481a066-e26a-465b-a2c1-933bd5b03a69' - name_of_sender: Kiehn, Conroy and Prohaska - name_of_recipient: Payroll Recipients - recipient_notice: Payroll recipients include the employees listed below plus the tax agencies for the taxes listed below. - debit_date: '2025-06-12' - license: ZenPayroll, Inc., dba Gusto is a licensed money transmitter. For more about Gusto’s licenses and your state-specific rights to request information, submit complaints, dispute errors, or cancel transactions, visit our license page. - license_uri: https://gusto.com/about/licenses - right_to_refund: https://gusto.com/about/licenses - liability_of_licensee: https://gusto.com/about/licenses + required: + - columns + - groupings + - file_type properties: - payroll_uuid: - type: string - description: A unique identifier of the payroll receipt. - company_uuid: + columns: + type: array + description: Columns to include in the report + items: + type: string + enum: + - bank_account_account_number + - bank_account_routing_number + - bank_account_type + - bank_account + - bonus + - cash_tips + - check_amount + - check_date + - commission + - date_of_birth + - double_overtime_earnings + - double_overtime_hours + - double_overtime_rate + - employee_additional_taxes + - employee_benefit_contributions + - employee_compensation_time_period + - employee_compensation + - employee_deductions + - employee_department + - employee_email + - employee_donations + - employee_federal_income_tax + - employee_first_name + - employee_last_name + - employee_middle_initial + - employee_medicare_additional_tax + - employee_medicare_tax + - employee_phone_number + - employee_social_security_tax + - employee_taxes + - employee_uuid + - employee_work_email + - employer_additional_taxes + - employer_benefit_contributions + - employer_cost + - employer_futa_tax + - employer_medicare_tax + - employer_social_security_tax + - employer_suta_tax + - employer_taxes + - employment_type + - employment + - end_date + - garnishments + - gross_earnings + - holiday_earnings + - holiday_hours + - home_address_city + - home_address_state + - home_address_street + - home_address_zip + - home_address + - job_title + - net_pay + - one_time_reimbursements + - overtime_earnings + - overtime_hours + - overtime_rate + - paid_time_off_earnings + - paid_time_off_hours + - paid_time_off_rate + - pay_period_end + - pay_period_start + - paycheck_tips + - payment_method + - payroll_type + - payroll_uuid + - preferred_first_name + - recurring_reimbursements + - regular_earnings + - regular_hours + - regular_rate + - reimbursements + - risk_class_code + - sick_rate + - sick_time_off_earnings + - sick_time_off_hours + - start_date + - total_employer_benefit_contributions + - total_time_off_earnings + - total_time_off_hours + - work_address_city + - work_address_street + - work_address_zip + groupings: + type: array + description: How to group the report + items: + type: string + enum: + - payroll + - employee + - work_address + - work_address_state + custom_name: type: string - description: A unique identifier of the company for the payroll. - name_of_sender: + description: The title of the report + file_type: type: string - description: The name of the company by whom the payroll was paid - name_of_recipient: + description: The type of file to generate + enum: + - csv + - json + - pdf + with_totals: + type: boolean + description: Whether to include subtotals and grand totals in the report + default: false + start_date: type: string - description: Always the fixed string "Payroll Recipients" - recipient_notice: + format: date + description: Start date of data to filter by + example: '2024-01-01' + end_date: type: string - description: Always the fixed string "Payroll recipients include the employees listed below plus the tax agencies for the taxes listed below." - debit_date: + format: date + description: End date of data to filter by + example: '2024-04-01' + dismissed_start_date: type: string - description: The debit or funding date for the payroll - license: + format: date + description: Dismissed start date of employees to filter by + example: '2024-01-01' + dismissed_end_date: type: string - description: Always the fixed string "ZenPayroll, Inc., dba Gusto is a licensed money transmitter. For more about Gusto’s licenses and your state-specific rights to request information, submit complaints, dispute errors, or cancel transactions, visit our license page." - license_uri: + format: date + description: Dismissed end date of employees to filter by + example: '2024-04-01' + payment_method: type: string - description: URL for the license information for the licensed payroll processor. Always the fixed string "https://gusto.com/about/licenses" - right_to_refund: + description: Payment method to filter by + enum: + - check + - direct_deposit + employment_type: type: string - description: '' - liability_of_licensee: + description: Employee employment type to filter by + enum: + - exempt + - salaried_nonexempt + - nonexempt + - commission_only_exempt + - commission_only_nonexempt + employment_status: type: string - description: '' - totals: - type: object - description: The subtotals for the payroll. - properties: - company_debit: - type: string - format: float - description: The total company debit for the payroll. - net_pay_debit: - type: string - format: float - description: The total company net pay for the payroll. - child_support_debit: - type: string - format: float - description: The total child support debit for the payroll. - reimbursement_debit: - type: string - format: float - description: The total reimbursements for the payroll. - tax_debit: - type: string - format: float - description: The total tax debit for the payroll. - taxes: - type: array - description: An array of totaled employer and employee taxes for the pay period. - items: - type: object - properties: - name: - type: string - description: The amount paid for this tax. - amount: - type: string - format: float - description: The total amount paid by both employer and employee for this tax. - employee_compensations: - type: array - description: An array of employee compensations and withholdings for this payroll - items: - type: object - properties: - employee_uuid: - type: string - description: The UUID of the employee. - employee_first_name: - type: string - description: The first name of the employee. - employee_last_name: - type: string - description: The last name of the employee. - payment_method: - type: string - description: The employee's compensation payment method. - enum: - - Direct Deposit - - Check - net_pay: - type: string - format: float - description: The employee's net pay. Net pay paid by check is available for reference but is not included in the `["totals"]["net_pay_debit"]` amount. - total_tax: - type: string - format: float - description: The total of employer and employee taxes for the pay period. - total_garnishments: - type: string - format: float - description: The total garnishments for the pay period. - child_support_garnishment: - type: string - format: float - description: The total child support garnishment for the pay period. - total_reimbursement: - type: string - format: float - description: The total reimbursement for the pay period. - licensee: - type: object - description: The licensed payroll processor - properties: - name: - type: string - description: Always the fixed string "Gusto, Zenpayroll Inc." - address: - type: string - description: Always the fixed string "525 20th St" - city: - type: string - description: Always the fixed string "San Francisco" - state: - type: string - description: Always the fixed string "CA" - postal_code: - type: string - description: Always the fixed string "94107" - phone_number: - type: string - description: Always the fixed string "4157778888" + description: Employee employment status to filter by + enum: + - active_full_time + - active_part_time + - active_part_time_eligible + - active_variable + - active_seasonal + - active + - dismissed + employee_uuids: + type: + - array + - 'null' + description: Employees to filter by + items: + type: string + department_uuids: + type: array + description: Departments to filter by + items: + type: string + work_address_uuids: + type: array + description: Work addresses to filter by + items: + type: string + x-tags: + - Reports + General-Ledger-Report-Body: + description: Request body for generating a general ledger report. The report can be aggregated by different dimensions such as job or department. + type: object + required: + - aggregation + properties: + aggregation: + type: string + enum: + - default + - job + - department + - integration + description: The breakdown of the report. Use 'default' for no split. + integration_type: + description: The kind of integration set up for the company. Required when `aggregation` is 'integration'. Must be null if `aggregation` is not 'integration'. + anyOf: + - type: string + enum: + - xero + - qbo + - type: 'null' + x-tags: + - Reports + General-Ledger-Report: + type: object + description: A request for a general ledger report. The report is generated asynchronously and the URL is available via the report GET endpoint using the returned `request_uuid`. + properties: + payroll_uuid: + type: string + format: uuid + description: The UUID of the payroll record for which the report was generated. + aggregation: + type: string + enum: + - default + - job + - department + - integration + description: The breakdown level used for the report. + integration_type: + type: + - string + - 'null' + description: The `integration_type` used for the report when `aggregation` is 'integration' (e.g., `xero`, `qbo`). Otherwise, this will be null or an empty string. + request_uuid: + type: string + format: uuid + description: UUID to use for polling the report status. + x-examples: + example: + payroll_uuid: a83d0bd8-7d20-43b9-834c-6d514ef6cb20 + aggregation: integration + integration_type: xero + request_uuid: 550e8400-e29b-41d4-a716-446655440000 Payroll-Reversal: type: object properties: @@ -28858,6 +13432,19 @@ components: category: convert_check_ee_requested reversed_employee_uuids: - 5f036964-185e-4c85-bbf2-3873e1203b30 + Payroll-Reversal-List: + type: array + items: + "$ref": "#/components/schemas/Payroll-Reversal" + x-examples: + Example: + - reversed_payroll_uuid: '09505984-8d8c-41a3-adbe-5740322ae8e9' + reversal_payroll_uuid: '0424688e-0a2e-4cd0-ac86-42283e788fb3' + reason: Customer Request + approved_at: + category: convert_check_ee_requested + reversed_employee_uuids: + - 5f036964-185e-4c85-bbf2-3873e1203b30 Gross-Up-Pay: type: object properties: @@ -28997,67 +13584,6 @@ components: phone_number: type: string description: Always the fixed string "4157778888" - Custom-Field-Type: - type: string - description: Input type for the custom field. - enum: - - text - - currency - - number - - date - - radio - Employee-Custom-Field: - type: object - description: A custom field of an employee - properties: - id: - type: string - company_custom_field_id: - type: string - description: This is the id of the response object from when you get the company custom fields - name: - type: string - type: - "$ref": "#/components/schemas/Custom-Field-Type" - description: - type: - - string - - 'null' - value: - type: string - selection_options: - type: - - array - - 'null' - description: An array of options for fields of type radio. Otherwise, null. - items: - type: string - required: - - id - - company_custom_field_id - - name - - type - - value - x-examples: - example_text_field: - id: ee515986-f3ca-49da-b576-2691b95262f9 - company_custom_field_id: ea7e5d57-6abb-47d7-b654-347c142886c0 - name: employee_level - description: Employee Level - type: text - value: '2' - selection_options: - example_radio_field: - id: 3796e08d-c2e3-434c-b4de-4ce1893e7b59 - company_custom_field_id: 024ec137-6c92-43a3-b061-14a9720531d6 - name: favorite fruit - description: Which is your favorite fruit? - type: radio - value: apple - selection_options: - - apple - - banana - - orange Company-Custom-Field: type: object description: A custom field on a company @@ -29088,6 +13614,29 @@ components: - uuid - name - type + Company-Custom-Field-List: + type: object + x-examples: + success_status: + custom_fields: + - uuid: ea7e5d57-6abb-47d7-b654-347c142886c0 + name: employee_level + description: Employee Level + type: text + selection_options: + - uuid: 024ec137-6c92-43a3-b061-14a9720531d6 + name: favorite fruit + description: Which is your favorite fruit? + type: radio + selection_options: + - apple + - banana + - orange + properties: + custom_fields: + type: array + items: + "$ref": "#/components/schemas/Company-Custom-Field" Rehire: type: object properties: @@ -29152,6 +13701,156 @@ components: file_new_hire_report: true work_location_uuid: b6ae9d93-d4b8-4119-8c96-dba595dd8c30 two_percent_shareholder: false + Rehire-Update-Request-Body: + description: Request body for updating an employee rehire. + type: object + allOf: + - "$ref": "#/components/schemas/Versionable-Required" + - "$ref": "#/components/schemas/Rehire-Body" + x-examples: + update_rehire: + version: 1928d0c378e519e9c03fb959bc959a6b + effective_date: '2023-06-30' + work_location_uuid: b6ae9d93-d4b8-4119-8c96-dba595dd8c30 + file_new_hire_report: true + Salary-Estimate: + type: object + description: A salary estimate calculation for an S-Corp owner based on occupation, experience level, location, and business revenue. + properties: + uuid: + type: string + description: The UUID of the salary estimate. + readOnly: true + employee_uuid: + type: + - string + - 'null' + description: The UUID of the employee this salary estimate is for. + readOnly: true + employee_job_uuid: + type: + - string + - 'null' + description: The UUID of the employee job this salary estimate is associated with (once accepted). + readOnly: true + annual_net_revenue: + type: + - string + - 'null' + description: The annual net revenue of the business used for salary calculations. + zip_code: + type: + - string + - 'null' + description: The ZIP code used for location-based salary calculations. + pattern: "^\\d{5}$" + result: + type: + - integer + - 'null' + description: The calculated reasonable salary estimate in cents. Null if not yet calculated. + readOnly: true + accepted_at: + type: + - string + - 'null' + format: date-time + description: The timestamp when this salary estimate was accepted and finalized. + readOnly: true + created_at: + type: string + format: date-time + description: The timestamp when this salary estimate was created. + readOnly: true + updated_at: + type: string + format: date-time + description: The timestamp when this salary estimate was last updated. + readOnly: true + occupations: + type: array + description: Array of occupations with their experience levels and time allocations. + items: + type: object + properties: + code: + type: string + description: Bureau of Labor Statistics (BLS) occupation code. + name: + type: string + description: Occupation name. + description: + type: string + description: Occupation description. + experience_level: + type: string + description: Experience level for this occupation. + enum: + - novice + - intermediate + - average + - skilled + - expert + time_percentage: + type: string + description: Percentage of time spent in this occupation (as decimal string, 0-1). + primary: + type: boolean + description: Whether this is the primary occupation. + required: + - code + - experience_level + - time_percentage + required: + - uuid + - employee_uuid + - annual_net_revenue + - zip_code + - created_at + - updated_at + - occupations + x-examples: + success_status: + uuid: 7f5d3d93-6d6f-48c0-9f4e-cd12c2d3e4b2 + employee_uuid: 8c290660-b6c9-4ad7-9f6e-ea146aaf79e8 + employee_job_uuid: + annual_net_revenue: '500000' + zip_code: '94107' + result: 12000000 + accepted_at: + created_at: '2025-01-15T10:30:00.000-08:00' + updated_at: '2025-01-15T10:30:00.000-08:00' + occupations: + - code: 15-1252 + name: Software Developers, Systems Software + description: Research, design, develop, and test operating systems-level software. + experience_level: skilled + time_percentage: '1.0' + primary: true + BLS-Occupation: + type: object + description: A Bureau of Labor Statistics occupation code with its title and description, used for salary estimate calculations. + properties: + code: + type: string + description: Bureau of Labor Statistics (BLS) occupation code. + example: 15-1252 + title: + type: string + description: Occupation title. + example: Software Developers + description: + type: string + description: Occupation description. + example: Research, design, and develop computer and network software or specialized utility programs. + required: + - code + - title + x-examples: + success_status: + code: 15-1252 + title: Software Developers + description: Research, design, and develop computer and network software or specialized utility programs. Signatory: description: The representation of a company's signatory type: object @@ -29261,6 +13960,162 @@ components: state: CA zip: '94107' country: USA + Signatory-Invite-Request: + type: object + description: Request body for inviting a signatory. + properties: + first_name: + type: string + description: The signatory's first name. + middle_initial: + type: string + last_name: + type: string + description: The signatory's last name. + title: + type: string + description: The signatory's title (e.g. CEO, President). + phone: + type: string + description: The signatory's phone number. + birthday: + type: string + format: date + description: The signatory's date of birth. + email: + type: string + format: email + description: The signatory's email address. + ssn: + type: string + description: The signatory's SSN. Required for create with complete information; not used for invite. + home_address: + type: object + description: The signatory's home address. + properties: + street_1: + type: string + street_2: + type: string + city: + type: string + state: + type: string + zip: + type: string + country: + type: string + default: USA + required: + - first_name + - last_name + - email + x-tags: + - Signatories + Signatory-Create-Request: + type: object + description: Request body for creating a signatory with complete information. All listed required fields must be provided. + properties: + first_name: + type: string + description: The signatory's first name. + middle_initial: + type: string + last_name: + type: string + description: The signatory's last name. + title: + type: string + description: The signatory's title (e.g. CEO, President). + phone: + type: string + description: The signatory's phone number. + birthday: + type: string + format: date + description: The signatory's date of birth. + email: + type: string + format: email + description: The signatory's email address. + ssn: + type: string + description: The signatory's SSN. + home_address: + type: object + description: The signatory's home address. + properties: + street_1: + type: string + street_2: + type: string + city: + type: string + state: + type: string + zip: + type: string + country: + type: string + default: USA + required: + - street_1 + - city + - state + - zip + required: + - first_name + - last_name + - email + - title + - phone + - birthday + - ssn + - home_address + x-tags: + - Signatories + Signatory-Update-Request: + type: object + description: Request body for updating a signatory. Email cannot be updated. + properties: + version: + type: string + description: Current version of the signatory (required for optimistic concurrency). + first_name: + type: string + middle_initial: + type: string + last_name: + type: string + title: + type: string + phone: + type: string + birthday: + type: string + format: date + ssn: + type: string + description: The signatory's SSN. + home_address: + type: object + properties: + street_1: + type: string + street_2: + type: string + city: + type: string + state: + type: string + zip: + type: string + country: + type: string + required: + - version + x-tags: + - Signatories Flow: description: The representation of a flow in Gusto white-label UI. type: object @@ -29273,6 +14128,42 @@ components: properties: url: type: string + Create-Flow-Request: + description: Request body for creating a flow. + type: object + required: + - flow_type + properties: + flow_type: + type: string + description: 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"). + example: company_onboarding + entity_uuid: + type: string + description: UUID of the target entity applicable to the flow. This field is optional for company flows. + entity_type: + type: string + description: The type of target entity applicable to the flow. This field is optional for company flows. + enum: + - Company + - Employee + - Contractor + - Payroll + options: + type: object + description: Optional configuration object that varies based on the flow_type. This can contain arbitrary key-value pairs specific to the flow being generated. + additionalProperties: true + x-examples: + example: + flow_type: company_onboarding + with_entity: + flow_type: employee_form_signing + entity_uuid: 1b71bb5b-4811-46e9-8a8a-cf5521cbeda6 + entity_type: Employee + with_options: + flow_type: company_retirement_benefits + options: + provider: guideline Unprocessed-Termination-Pay-Period: description: The representation of an unprocessed termination pay period. type: object @@ -29318,8 +14209,8 @@ components: example: type: by_employee employees: - employee_uuid: f0238368-f2cf-43e2-9a07-b0265f2cec69 - pay_schedule_uuid: c277ac52-9871-4a96-a1e6-0c449684602a + - employee_uuid: f0238368-f2cf-43e2-9a07-b0265f2cec69 + pay_schedule_uuid: c277ac52-9871-4a96-a1e6-0c449684602a properties: type: anyOf: @@ -29407,18 +14298,18 @@ components: example: type: hourly_salaried employee_changes: - employee_uuid: 43b39ada-dc49-4879-9594-fe95f67ae434 - first_name: Penny - last_name: Parker - pay_frequency: Twice per month — Salaried pay schedule - first_pay_period: - pay_schedule_uuid: 3f029a58-155d-4c30-8361-cc266b2c1f11 - start_date: '2023-07-01' - end_date: '2023-08-01' - check_date: '2023-08-02' - transition_pay_period: - start_date: '2023-06-20' - end_date: '2023-06-30' + - employee_uuid: 43b39ada-dc49-4879-9594-fe95f67ae434 + first_name: Penny + last_name: Parker + pay_frequency: Twice per month — Salaried pay schedule + first_pay_period: + pay_schedule_uuid: 3f029a58-155d-4c30-8361-cc266b2c1f11 + start_date: '2023-07-01' + end_date: '2023-08-01' + check_date: '2023-08-02' + transition_pay_period: + start_date: '2023-06-20' + end_date: '2023-06-30' properties: type: anyOf: @@ -29527,6 +14418,121 @@ components: hours: type: string description: Hours accrued during this pay period. + Employee-Federal-Tax-Pre2020: + title: Employee-Federal-Tax-Pre2020 + type: object + description: Federal tax information for employees using the pre-2020 W4 form. + properties: + version: + type: string + description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. + employee_uuid: + type: string + description: The UUID of the employee. + employee_id: + type: integer + description: The internal ID of the employee. + company_id: + type: integer + description: The internal ID of the company. + w4_data_type: + type: string + description: The version of w4 form. + enum: + - pre_2020_w4 + filing_status: + type: + - string + - 'null' + description: |- + It determines which tax return form an individual will use and is an important factor in computing taxable income. One of: + - Single + - Married + - Head of Household + - Exempt from withholding + - Married, but withhold as Single + federal_withholding_allowance: + type: + - number + - 'null' + description: An exemption from paying a certain amount of income tax. May be null when filing_status is "Exempt from withholding". + additional_withholding: + type: string + description: An additional withholding dollar amount. + required: + - version + - w4_data_type + - additional_withholding + x-tags: + - Employee Tax Setup + Employee-Federal-Tax-Rev2020: + title: Employee-Federal-Tax-Rev2020 + type: object + description: Federal tax information for employees using the revised 2020 W4 form. + properties: + version: + type: string + description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. + employee_uuid: + type: string + description: The UUID of the employee. + employee_id: + type: integer + description: The internal ID of the employee. + company_id: + type: integer + description: The internal ID of the company. + w4_data_type: + type: string + description: The version of w4 form. + enum: + - rev_2020_w4 + filing_status: + type: + - string + - 'null' + description: |- + It determines which tax return form an individual will use and is an important factor in computing taxable income. One of: + - Single + - Married + - Head of Household + - Exempt from withholding + extra_withholding: + type: + - string + - 'null' + description: An employee can request an additional amount to be withheld from each paycheck. + two_jobs: + type: + - boolean + - 'null' + description: If there are only two jobs (i.e., you and your spouse each have a job, or you have two), you can set it to true. + dependents_amount: + type: + - string + - 'null' + description: A dependent is a person other than the taxpayer or spouse who entitles the taxpayer to claim a dependency exemption. + other_income: + type: + - string + - 'null' + description: Other income amount. + deductions: + type: + - string + - 'null' + description: Deductions other than the standard deduction to reduce withholding. + required: + - version + - w4_data_type + - filing_status + - extra_withholding + - two_jobs + - dependents_amount + - other_income + - deductions + x-tags: + - Employee Tax Setup Employee-Federal-Tax: title: Employee-Federal-Tax type: object @@ -29541,28 +14547,29 @@ components: rev_2020_w4: "#/components/schemas/Employee-Federal-Tax-Rev2020" x-examples: rev_2020_w4: - value: - version: 56a489ce86ed6c1b0f0cecc4050a0b01 - filing_status: Single - extra_withholding: '0.0' - two_jobs: true - dependents_amount: '0.0' - other_income: '0.0' - deductions: '0.0' - w4_data_type: rev_2020_w4 - employee_uuid: fa0dce23-e08d-427b-9b63-5c84dc0e3673 - employee_id: 12345 - company_id: 67890 - pre_2020_w4: - value: - version: f642dbbd8e13487d589a00f4f81a2199 - filing_status: Married - federal_withholding_allowance: 2 - additional_withholding: '3.3' - w4_data_type: pre_2020_w4 - employee_uuid: a2ce2b73-73d6-4e44-a260-e5396a24385b - employee_id: 12345 - company_id: 67890 + version: 56a489ce86ed6c1b0f0cecc4050a0b01 + filing_status: Single + two_jobs: false + dependents_amount: '1000.0' + other_income: '10.0' + deductions: '11.0' + extra_withholding: '9.0' + w4_data_type: rev_2020_w4 + employee_uuid: 7d70e6b0-9889-4060-9eef-aafabc14e2f2 + employee_id: 1 + company_id: 1 + rev_2020_w4_married_two_jobs: + version: 63859768485e218ccf8a449bb60f14ed + w4_data_type: rev_2020_w4 + filing_status: Married + two_jobs: true + dependents_amount: '2000.0' + other_income: '20.0' + deductions: '11.0' + extra_withholding: '9.0' + employee_uuid: 8d70e6b0-9889-4060-9eef-aafabc14e2f2 + employee_id: 2 + company_id: 1 x-tags: - Employee Tax Setup Employee-State-Tax: @@ -29570,6 +14577,7 @@ components: type: object x-examples: example-1: + uuid: 287d2c61-1d18-4126-8a4a-9cb29bbb6dac employee_uuid: 2005e601-3c78-410a-9d40-b960ae130383 state: CA questions: @@ -29632,6 +14640,9 @@ components: x-tags: - Employee Tax Setup properties: + uuid: + type: string + description: The uuid of the employee state field. employee_uuid: type: string description: The employee's uuid @@ -29649,82 +14660,10 @@ components: items: "$ref": "#/components/schemas/Employee-State-Tax-Question" required: + - uuid - employee_uuid - state - questions - Employee-State-Tax-Question: - type: object - properties: - label: - type: string - description: A short title for the question - description: - type: - - string - - 'null' - description: An explaination of the question - this may contain inline html formatted links. - key: - type: string - description: A unique identifier of the question (for the given state) - used for updating the answer. - is_question_for_admin_only: - type: boolean - input_question_format: - "$ref": "#/components/schemas/Employee-State-Tax-Input-Question-Format" - answers: - type: array - items: - "$ref": "#/components/schemas/Employee-State-Tax-Answer" - required: - - label - - description - - key - - input_question_format - - answers - - is_question_for_admin_only - Employee-State-Tax-Answer: - type: object - properties: - value: - oneOf: - - type: string - - type: number - - type: boolean - - type: 'null' - description: The answer to the corresponding question - this may be a string, number, boolean, or null. - valid_from: - type: string - description: The effective date of the answer - currently always “2010-01-01”. - valid_up_to: - type: - - string - - 'null' - description: The effective end date of the answer - currently always null. - Employee-State-Tax-Input-Question-Format: - type: object - properties: - type: - type: string - description: Describes the type of question - Text, Number, Select, Currency, Date - options: - type: array - uniqueItems: true - description: For "Select" type questions, the allowed values and display labels. - items: - type: object - properties: - value: - description: An allowed value to answer the question - oneOf: - - type: string - - type: boolean - - type: number - label: - type: string - description: A display label that corresponds to the answer value - required: - - label - required: - - type Federal-Tax-Details: title: Federal-Tax-Details type: object @@ -29829,6 +14768,70 @@ components: deposit_schedule: Semiweekly x-tags: - Federal Tax Details + Federal-Tax-Details-Update: + title: Federal-Tax-Details-Update + type: object + required: + - version + properties: + version: + type: string + example: 6cb95e00540706ca48d4577b3c839fbe + description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. + legal_name: + type: string + example: Acme Corp. + description: The legal name of the company + ein: + type: string + example: '123456789' + description: The company's Employer Identification Number (EIN). Must be 9 digits. Dashes are optional (e.g., '12-3456789' or '123456789'). + tax_payer_type: + type: string + example: LLP + enum: + - C-Corporation + - S-Corporation + - Sole proprietor + - LLC + - LLP + - Limited partnership + - Co-ownership + - Association + - Trusteeship + - General partnership + - Joint venture + - Non-Profit + description: |- + What type of tax entity the company is. One of: + - C-Corporation + - S-Corporation + - Sole proprietor + - LLC + - LLP + - Limited partnership + - Co-ownership + - Association + - Trusteeship + - General partnership + - Joint venture + - Non-Profit + filing_form: + type: string + example: '944' + enum: + - '941' + - '944' + description: |- + The form used by the company for federal tax filing. One of: + - 941 (Quarterly federal tax return form) + - 944 (Annual federal tax return form) + taxable_as_scorp: + type: boolean + example: false + description: Whether the company is taxed as an S-Corporation + x-tags: + - Federal Tax Details Employee-Bank-Account: title: Employee-Bank-Account type: object @@ -29908,6 +14911,49 @@ components: - routing_number - hidden_account_number - account_type + Contractor-Bank-Account-List: + title: Contractor-Bank-Account-List + type: array + items: + "$ref": "#/components/schemas/Contractor-Bank-Account" + x-examples: + example: + - uuid: 1531e824-8d9e-4bd8-9f90-0d04608125d7 + contractor_uuid: 9fcf1b1d-8886-4691-9283-383d3bdd4fd9 + name: BoA Checking Account + routing_number: '266905059' + hidden_account_number: XXXX1207 + account_type: Checking + Contractor-Bank-Account-Create-Request-Body: + title: Contractor-Bank-Account-Create-Request-Body + type: object + required: + - name + - routing_number + - account_number + - account_type + properties: + name: + type: string + description: Name for the bank account + routing_number: + type: string + description: The bank account's routing number + account_number: + type: string + description: The bank account's account number + account_type: + type: string + enum: + - Checking + - Savings + description: Bank account type + x-examples: + example: + name: BoA Checking Account + routing_number: '266905059' + account_number: '5809431207' + account_type: Checking DetailedPaymentAccountSplit: title: DetailedPaymentAccountSplit type: object @@ -30008,6 +15054,16 @@ components: title: Employee-Payment-Method type: object x-examples: + direct_deposit_percentage: + version: 63859768485e218ccf8a449bb60f14ed + type: Direct Deposit + split_by: Percentage + splits: + - uuid: 4b35bebe-3445-4014-a748-1e264647d601 + name: Cayman Island Checking + hidden_account_number: XXXX1234 + priority: 1 + split_amount: 100 Example-1: value: version: 63859768485e218ccf8a449bb60f14ed @@ -30512,6 +15568,74 @@ components: type: array items: "$ref": "#/components/schemas/Tax-Requirement-Set" + Tax-Requirement-States-List: + type: array + x-examples: + success_status: + - state: GA + setup_status: not_started + default_rates_applied: false + ready_to_run_payroll: false + - state: CA + setup_status: complete + default_rates_applied: false + ready_to_run_payroll: true + items: + type: object + properties: + state: + "$ref": "#/components/schemas/State" + setup_status: + type: string + enum: + - not_started + - in_progress + - complete + description: | + The current status of the state tax setup. + - `not_started`: No requirements have been filled + - `in_progress`: Some requirements have been filled, or default rates are applied + - `complete`: All requirements have been filled without default rates + default_rates_applied: + type: boolean + description: Whether the state is using system-assigned default SUI rates rather than employer-specific rates. + ready_to_run_payroll: + type: boolean + description: Whether the state tax setup is sufficiently complete for the company to run payroll. + Tax-Requirement-Set-Update: + type: array + description: Array of requirement sets to update. Each set corresponds to a category of requirements for the state. + items: + type: object + required: + - key + - state + properties: + key: + "$ref": "#/components/schemas/Tax-Requirement-Set-Key" + state: + "$ref": "#/components/schemas/State" + effective_from: + "$ref": "#/components/schemas/Tax-Requirement-Effective-From" + requirements: + type: array + items: + type: object + required: + - key + properties: + key: + "$ref": "#/components/schemas/Tax-Requirement-Key" + value: + "$ref": "#/components/schemas/Tax-Requirements-Value" + Tax-Requirements-Value: + description: The value or "answer" for a tax requirement. Type depends on the requirement metadata type (e.g. string for text/account_number, boolean for radio/checkbox, number for percent/currency/tax_rate). Null when the requirement has not been answered. + example: 1233214-AB + oneOf: + - type: boolean + - type: string + - type: number + - type: 'null' Tax-Requirement-Set-Key: title: Tax-Requirement-Set-Key type: string @@ -30543,13 +15667,13 @@ components: name: test policy policy_type: vacation accrual_method: per_hour_worked - accrual_rate: 40.0 - accrual_rate_unit: 40.0 + accrual_rate: '40.0' + accrual_rate_unit: '40.0' paid_out_on_termination: true accrual_waiting_period_days: 10 - carryover_limit_hours: 100.0 - max_accrual_hours_per_year: 100.0 - max_hours: 100.0 + carryover_limit_hours: '100.0' + max_accrual_hours_per_year: '100.0' + max_hours: '100.0' complete: true version: f5556bce3d75ec2b62bd11990aa7993a is_active: true @@ -30565,13 +15689,13 @@ components: name: test policy policy_type: vacation accrual_method: per_hour_worked - accrual_rate: 40.0 - accrual_rate_unit: 40.0 + accrual_rate: '40.0' + accrual_rate_unit: '40.0' paid_out_on_termination: true accrual_waiting_period_days: 10 - carryover_limit_hours: 100.0 - max_accrual_hours_per_year: 100.0 - max_hours: 100.0 + carryover_limit_hours: '100.0' + max_accrual_hours_per_year: '100.0' + max_hours: '100.0' complete: true version: f5556bce3d75ec2b62bd11990aa7993a is_active: true @@ -30583,13 +15707,13 @@ components: name: test policy policy_type: vacation accrual_method: per_hour_worked - accrual_rate: 40.0 - accrual_rate_unit: 40.0 + accrual_rate: '40.0' + accrual_rate_unit: '40.0' paid_out_on_termination: true accrual_waiting_period_days: 10 - carryover_limit_hours: 100.0 - max_accrual_hours_per_year: 100.0 - max_hours: 100.0 + carryover_limit_hours: '100.0' + max_accrual_hours_per_year: '100.0' + max_hours: '100.0' complete: true version: is_active: false @@ -30697,6 +15821,88 @@ components: - accrual_method - is_active - employees + Time-Off-Policy-Request-Base: + type: object + description: Base Request Objectfor creating or updating a time off policy + properties: + name: + type: string + description: Name of the time off policy + example: Vacation Policy + policy_type: + type: string + description: Type of the time off policy. Currently only "vacation" and "sick" are supported + enum: + - vacation + - sick + accrual_method: + type: string + description: Accrual method of the time off policy + enum: + - unlimited + - per_pay_period + - per_calendar_year + - per_anniversary_year + - per_hour_worked + - per_hour_worked_no_overtime + - per_hour_paid + - per_hour_paid_no_overtime + accrual_rate: + type: + - string + - 'null' + description: The rate at which the time off hours will accrue for an employee on the policy. Represented as a float, e.g. "40.0". + accrual_rate_unit: + type: + - string + - 'null' + description: 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, e.g. "40.0". + paid_out_on_termination: + type: boolean + description: Boolean representing if an employee's accrued time off hours will be paid out on termination. If accrual_method is unlimited, then paid_out_on_termination must be `false`. + accrual_waiting_period_days: + type: + - integer + - 'null' + description: Number of days before an employee on the policy will begin accruing time off hours. If accrual_method is per_anniversary_year, per_calendar_year, or unlimited, then accrual_waiting_period_days should be 0. + carryover_limit_hours: + type: + - string + - 'null' + description: The max number of hours an employee can carryover from one year to the next. If accrual_method is unlimited, then carryover_limit_hours must be blank. + max_accrual_hours_per_year: + type: + - string + - 'null' + description: The max number of hours an employee can accrue in a year. If accrual_method is yearly (per_anniversary_year, per_calendar_year) or unlimited, then max_accrual_hours_per_year must be blank. + max_hours: + type: + - string + - 'null' + description: The max number of hours an employee can accrue. If accrual_method is unlimited, then max_hours must be blank. + policy_reset_date: + type: + - string + - 'null' + description: The date the policy resets. Format MM-DD + complete: + type: boolean + description: boolean representing if a policy has completed configuration + Time-Off-Policy-Request: + type: object + description: Request body for creating a time off policy + allOf: + - "$ref": "#/components/schemas/Time-Off-Policy-Request-Base" + - type: object + required: + - name + - policy_type + - accrual_method + Time-Off-Policy-Update-Request: + type: object + description: Request body for updating a time off policy + allOf: + - "$ref": "#/components/schemas/Time-Off-Policy-Request-Base" Time-Off-Activity: type: object x-examples: @@ -30752,6 +15958,29 @@ components: - 'null' format: float description: The amount the time off balance changed as a result of the activity + Time-Off-Activity-List: + type: array + description: A list of time off activities for an employee + items: + "$ref": "#/components/schemas/Time-Off-Activity" + x-examples: + example: + - policy_uuid: a7838f74-4c29-4b70-9bfb-02a4e3e60709 + time_off_type: vacation + policy_name: Paid Time Off + event_type: TimeOffEvent::AddToPolicy + event_description: 'Added to policy: Vacation Per Hour Worked' + effective_time: '2022-09-27T13:43:03.000-07:00' + balance: '0.0' + balance_change: '0.0' + - policy_uuid: a7838f74-4c29-4b70-9bfb-02a4e3e60709 + time_off_type: vacation + policy_name: Paid Time Off + event_type: TimeOffEvent::Accrual + event_description: Accrual + effective_time: '2022-09-27T14:43:03.000-07:00' + balance: '2.0' + balance_change: '2.0' Holiday-Pay-Policy: type: object x-examples: @@ -30867,207 +16096,160 @@ components: properties: selected: type: boolean - name: - type: string - date: - type: string + name: + type: string + date: + type: string + labor_day: + type: object + properties: + selected: + type: boolean + name: + type: string + date: + type: string + columbus_day: + type: object + properties: + selected: + type: boolean + name: + type: string + date: + type: string + veterans_day: + type: object + properties: + selected: + type: boolean + name: + type: string + date: + type: string + thanksgiving: + type: object + properties: + selected: + type: boolean + name: + type: string + date: + type: string + christmas_day: + type: object + properties: + selected: + type: boolean + name: + type: string + date: + type: string + employees: + type: array + description: List of employee uuids under a holiday pay policy + items: + type: object + properties: + uuid: + type: string + required: + - version + - company_uuid + - federal_holidays + - employees + Holiday-Pay-Policy-Request: + type: object + description: Request body for creating or updating a holiday pay policy + properties: + federal_holidays: + type: object + description: An object containing federal holiday objects, each containing a boolean selected property. + properties: + new_years_day: + type: object + properties: + selected: + type: boolean + mlk_day: + type: object + properties: + selected: + type: boolean + presidents_day: + type: object + properties: + selected: + type: boolean + memorial_day: + type: object + properties: + selected: + type: boolean + juneteenth: + type: object + properties: + selected: + type: boolean + independence_day: + type: object + properties: + selected: + type: boolean labor_day: type: object properties: selected: type: boolean - name: - type: string - date: - type: string columbus_day: type: object properties: selected: type: boolean - name: - type: string - date: - type: string veterans_day: type: object properties: selected: type: boolean - name: - type: string - date: - type: string thanksgiving: type: object properties: selected: type: boolean - name: - type: string - date: - type: string christmas_day: type: object properties: selected: type: boolean - name: - type: string - date: - type: string - employees: - type: array - description: List of employee uuids under a holiday pay policy - items: - type: object - properties: - uuid: - type: string - required: - - version - - company_uuid - - federal_holidays - - employees - Paid-Holidays: - type: array - description: Representation of a company's paid holidays as described by their holiday pay policy - items: - "$ref": "#/components/schemas/Paid-Holiday" - Minimum-Wage: - type: object - description: Representation of a Minimum Wage - properties: - uuid: - type: string - description: unique identifier of a minimum wage - wage: - type: string - format: float - description: The wage rate for a minimum wage record. Represented as a float, e.g. "15.0". - wage_type: - type: string - description: The type of wage the minimum wage applies to, e.g. "Regular", "Regular-Industry-Specific". - effective_date: - type: string - format: date - description: The date the minimum wage rule is effective on. - authority: - type: string - description: The governing authority that created the minimum wage, e.g. "City", "State", or "Federal". - notes: - type: string - description: Description of parties the minimum wage applies to. - required: - - uuid - - wage - - wage_type - - effective_date - - authority - Notification: + Paid-Holiday: type: object + description: A paid holiday derived from the company's holiday pay policy + x-examples: + success_status: + holiday_name: New Year's Day + holiday_key: new_years_day + start_date: '2023-01-02' + end_date: '2023-01-02' properties: - uuid: - type: string - description: Unique identifier of a notification. - company_uuid: - type: string - description: Unique identifier of the company to which the notification belongs. - title: - type: string - description: The title of the notification. This highlights the actionable component of the notification. - message: - type: string - description: The message of the notification. This provides additional context for the user and recommends a specific action to resolve the notification. - status: - type: string - description: Represents the notification's status as managed by our system. It is updated based on observable system events and internal business logic, and does not reflect resolution steps taken outside our system. This field is read-only and cannot be modified via the API. - enum: - - open - - resolved - - expired - category: - type: string - description: The notification's category. - actionable: - type: boolean - description: Indicates whether a notification requires action or not. If false, the notification provides critical information only. - can_block_payroll: - type: boolean - description: Indicates whether a notification may block ability to run payroll. If true, we suggest that these notifications are prioritized to your end users. - published_at: - type: string - description: Timestamp of when the notification was published. - due_at: + holiday_key: type: - string - 'null' - description: Timestamp of when the notification is due. If the notification has no due date, this field will be null. - template_variables: - type: object - description: An object containing template variables used to render the notification. The structure of this object depends on the notification category. Each category defines a fixed set of variable names (keys), which are always present. The values of these variables can vary depending on the specific notification instance. - additionalProperties: - type: string - resources: - type: array - description: An array of entities relevant to the notification - items: - type: object - properties: - entity_type: - type: string - description: The type of entity being described. - enum: - - BankAccount - - Contractor - - ContractorPayment - - Employee - - Payroll - - PaySchedule - - RecoveryCase - - Signatory - - Wire In Request - entity_uuid: - type: string - description: Unique identifier of the entity - reference_type: - type: string - description: Optional. The type of a resource that is related to the one described by entity_type and entity_uuid. For instance, if the entity_type is “BankAccount”, the reference_type could be the “Employee” or “Contractor” to whom the bank account belongs. - reference_uuid: - type: string - description: Optional. Unique identifier of the reference. - required: - - entity_type - - entity_uuid - required: - - uuid - - company_uuid - - title - - message - - category - - actionable - - status - - published_at - - due_at - - resources - - can_block_payroll - x-examples: - notification_show: - uuid: 7b1d0df1-6403-4a06-8768-c1dd7d24d27a - company_uuid: 88f7cca1-dcad-4d20-84db-7fb80303d69f - title: 'Action required: Additional information needed to process payroll' - message: If we do not receive this information as soon as possible, your payroll may not be processed on time. - status: open - category: information_request - actionable: true - can_block_payroll: true - published_at: '2022-01-01T00:00:00.000Z' - due_at: '2022-02-01T00:00:00.000Z' - template_variables: - blocked_task: Payroll - resources: - - entity_type: Employee - entity_uuid: 21b6f9ce-0ac4-4745-8d8a-127f8c0f00f2 + description: The holiday's identifier (null for custom holidays) + holiday_name: + type: string + description: The holiday's official name + start_date: + type: string + description: The holiday's start date (YYYY-MM-DD) + end_date: + type: string + description: The holiday's end date (YYYY-MM-DD) + Paid-Holidays: + type: array + description: Representation of a company's paid holidays as described by their holiday pay policy + items: + "$ref": "#/components/schemas/Paid-Holiday" Event: type: object x-examples: @@ -31106,6 +16288,27 @@ components: description: Time at which this event was created. Measured in seconds since the Unix epoch. required: - uuid + Event-List: + type: array + description: A list of events + x-examples: + success_status: + - uuid: f7397a24-57ad-4fae-b011-d258e8232900 + event_type: employee.created + resource_type: Company + resource_uuid: 92a20431-9489-4bde-ad27-6feb20b969d5 + entity_type: Employee + entity_uuid: 92a20431-9489-4bde-ad27-6feb20b969d5 + timestamp: 1686784995 + - uuid: a1b2c3d4-e5f6-7890-abcd-ef1234567890 + event_type: company.provisioned + resource_type: Company + resource_uuid: 92a20431-9489-4bde-ad27-6feb20b969d5 + entity_type: Company + entity_uuid: 92a20431-9489-4bde-ad27-6feb20b969d5 + timestamp: 1686784994 + items: + "$ref": "#/components/schemas/Event" Invoice-Data: type: object x-examples: @@ -31171,15 +16374,15 @@ components: type: string description: Unique identifier of the company to which the information requests belongs type: - type: - - string - - 'null' description: The type of information request - enum: - - company_onboarding - - account_protection - - payment_request - - payment_error + anyOf: + - type: string + enum: + - company_onboarding + - account_protection + - payment_request + - payment_error + - type: 'null' status: type: string description: The status of the information request @@ -31214,6 +16417,69 @@ components: - question_uuid - question_text - response_type + Recurring-Reimbursement-List: + type: array + x-examples: + success_status: + - uuid: 04ca1051-dcec-4cb7-829c-dfbffdf4af23 + employee_uuid: 73c96cc6-f8c9-4513-b3f1-4301351178d6 + version: 3b8eda8460f7acabd86ceec924e0ae74 + description: Travel expenses + created_at: '2025-11-03T09:03:20.000-08:00' + updated_at: '2025-11-03T09:03:20.000-08:00' + amount: '100.00' + - uuid: e3fc7aae-5053-44bf-99e1-3636df0d1f5b + employee_uuid: 73c96cc6-f8c9-4513-b3f1-4301351178d6 + version: 30c1aeb356a70e0a71275414e5f29b7e + description: Meal allowance + created_at: '2025-11-03T09:03:20.000-08:00' + updated_at: '2025-11-03T09:03:20.000-08:00' + amount: '50.00' + items: + "$ref": "#/components/schemas/Recurring-Reimbursement" + Recurring-Reimbursement: + type: object + x-examples: + success_status: + uuid: b739f253-b028-443b-b6cf-97a555c3d493 + employee_uuid: 346e1409-1c97-4524-9ebb-0c0c169e35cb + version: cf9b64404e63d325c762aaad20ca7a39 + description: Office supplies + created_at: '2025-11-03T09:03:24.000-08:00' + updated_at: '2025-11-03T09:03:24.000-08:00' + amount: '75.50' + properties: + uuid: + type: string + description: The unique identifier of this recurring reimbursement. + readOnly: true + employee_uuid: + type: string + description: The UUID of the employee. + readOnly: true + description: + type: string + description: The description of the reimbursement. + amount: + type: string + description: The dollar amount of the reimbursement. + version: + type: string + description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. + created_at: + type: string + description: The timestamp when this reimbursement was created. + readOnly: true + updated_at: + type: string + description: The timestamp when this reimbursement was last updated. + readOnly: true + required: + - uuid + - employee_uuid + - description + - amount + - version Recovery-Case: type: object x-examples: @@ -31325,13 +16591,13 @@ components: type: string description: Unique identifier for the payment event associated with the ACH transaction recipient_type: - type: - - string - - 'null' description: The type of recipient associated with the ACH transaction - enum: - - Employee - - Contractor + anyOf: + - type: string + enum: + - Employee + - Contractor + - type: 'null' recipient_uuid: type: string description: Unique identifier for the recipient associated with the ACH transaction @@ -31371,6 +16637,26 @@ components: description: The description of the ACH transaction. Can be used to identify the ACH transaction on the recipient's bank statement. required: - uuid + Ach-Transaction-List: + type: array + items: + "$ref": "#/components/schemas/Ach-Transaction" + x-examples: + example: + - uuid: 123e4567-e89b-12d3-a456-426655440000 + company_uuid: 456e7890-e12b-34c5-d678-901234567890 + payment_event_type: Payroll + payment_event_uuid: 789e0123-e45f-67ab-c890-123456789012 + recipient_type: Employee + recipient_uuid: 012e3456-f78d-90ab-12cd-345678901234 + error_code: + transaction_type: Credit employee pay + payment_status: submitted + payment_direction: credit + payment_event_check_date: '2023-10-02' + payment_date: '2023-10-17' + amount: '123.00' + description: PAY 380654 Wire-In-Request: type: object x-examples: @@ -31381,8 +16667,8 @@ components: origination_bank_address: 1 Chase Plaza, New York, NY 10081 recipient_name: Gusto, Inc recipient_address: 525 20th Street, San Francisco, CA 94107 - recipient_account_number: 21911761 - recipient_routing_number: 123454321 + recipient_account_number: '21911761' + recipient_routing_number: '123454321' additional_notes: Additional Notes bank_name: JP Morgan Chase date_sent: '2024-06-10' @@ -31449,18 +16735,217 @@ components: - ContractorPaymentGroup payment_uuid: type: string - description: Unique identifier of the payment - amount_sent: - type: - - string - - 'null' - description: Amount sent through wire in - requested_amount: + description: Unique identifier of the payment + amount_sent: + type: + - string + - 'null' + description: Amount sent through wire in + requested_amount: + type: string + description: Requested amount for the payment + wire_in_deadline: + type: string + description: Deadline to submit the wire in + Wire-In-Request-List: + type: array + items: + "$ref": "#/components/schemas/Wire-In-Request" + x-examples: + example: + - uuid: c5fdae57-5483-4529-9aae-f0edceed92d4 + status: awaiting_funds + origination_bank: JP Morgan Chase + origination_bank_address: 1 Chase Plaza, New York, NY 10081 + recipient_name: Gusto, Inc + recipient_address: 525 20th Street, San Francisco, CA 94107 + recipient_account_number: '21911761' + recipient_routing_number: '123454321' + additional_notes: + bank_name: + date_sent: + unique_tracking_code: 1trvxwxp57zf + payment_type: Payroll + payment_uuid: 5faae454-e629-490b-a72a-c022c2c9e6bc + amount_sent: + requested_amount: '1014500.00' + wire_in_deadline: '2024-06-21T18:00:00Z' + - uuid: a47fc11d-8d92-4b3e-9f2a-3a23b9d8e7d1 + status: awaiting_funds + origination_bank: JP Morgan Chase + origination_bank_address: 1 Chase Plaza, New York, NY 10081 + recipient_name: Gusto, Inc + recipient_address: 525 20th Street, San Francisco, CA 94107 + recipient_account_number: '21911761' + recipient_routing_number: '123454321' + additional_notes: + bank_name: + date_sent: + unique_tracking_code: 6kfhwxq2crsm + payment_type: ContractorPaymentGroup + payment_uuid: 8b6c3d70-9b8e-4d4d-b6a1-a1f3a6d9b2c4 + amount_sent: + requested_amount: '15000.00' + wire_in_deadline: '2024-06-21T18:00:00Z' + Wire-In-Request-Update-Request-Body: + type: object + properties: + date_sent: + type: string + description: The date the wire was sent + example: '2024-06-10' + bank_name: + type: string + description: Name of the bank sending the wire + example: Chase + amount_sent: + type: string + description: Amount of money sent + example: '314500.00' + additional_notes: + type: string + description: Additional notes + example: Wire for 2024-06-15 payroll. + required: + - date_sent + - bank_name + - amount_sent + Payroll-Sync: + type: object + description: Record representing the sync of time sheet data to payroll. + properties: + uuid: + type: string + format: uuid + description: Unique identifier of the payroll sync. + example: 123e4567-e89b-12d3-a456-426655440000 + company_uuid: + type: string + format: uuid + description: Unique identifier of the company to which the payroll sync belongs. + example: 123e4567-e89b-12d3-a456-426655440001 + status: + type: string + readOnly: true + enum: + - pending + - in_progress + - success + - failure + - partial_success + description: | + The current status of the payroll sync. READ-ONLY. + + ## State Transitions + ``` + pending ──────► in_progress ──────► success + ├─────► failure + └─────► partial_success + ``` + + ### Valid Transitions + - `pending` → `in_progress`: Automatic when processing begins + - `in_progress` → `success`: All time sheet data synced successfully + - `in_progress` → `failure`: Sync failed entirely + - `in_progress` → `partial_success`: Some members failed to sync + example: pending + kind: + type: string + enum: + - regular + description: | + The kind of payroll sync. + - `regular`: A regular payroll sync + example: regular + pay_schedule_uuid: + type: string + format: uuid + description: Unique identifier of the pay schedule associated with this sync. + example: 123e4567-e89b-12d3-a456-426655440002 + pay_period_start_date: + type: string + format: date + description: The start date of the pay period per ISO 8601 format. + example: '2025-01-01' + pay_period_end_date: + type: string + format: date + description: The end date of the pay period per ISO 8601 format. + example: '2025-01-15' + submitted_at: + type: string + format: date-time + description: Datetime for when the payroll sync was submitted. + example: '2025-01-16T12:00:00Z' + completed_at: + type: + - string + - 'null' + format: date-time + description: Datetime for when the payroll sync completed. Null if the sync is still in progress. + example: '2025-01-16T13:00:00Z' + errors: + type: array + description: Errors encountered during the sync, if any. Each error follows the standard entity error format. + items: + "$ref": "#/components/schemas/Entity-Error-Object" + warnings: + type: array + description: Warnings encountered during the sync, if any. + items: + type: string + x-examples: + pending_sync: + uuid: 123e4567-e89b-12d3-a456-426655440000 + company_uuid: 123e4567-e89b-12d3-a456-426655440001 + status: pending + kind: regular + pay_schedule_uuid: 123e4567-e89b-12d3-a456-426655440002 + pay_period_start_date: '2025-01-01' + pay_period_end_date: '2025-01-15' + submitted_at: '2025-01-16T12:00:00Z' + completed_at: + completed_sync: + uuid: 123e4567-e89b-12d3-a456-426655440000 + company_uuid: 123e4567-e89b-12d3-a456-426655440001 + status: success + kind: regular + pay_schedule_uuid: 123e4567-e89b-12d3-a456-426655440002 + pay_period_start_date: '2025-01-01' + pay_period_end_date: '2025-01-15' + submitted_at: '2025-01-16T12:00:00Z' + completed_at: '2025-01-16T13:00:00Z' + Payroll-Sync-Create-Request-Body: + type: object + required: + - kind + - pay_schedule_uuid + - pay_period_start_date + - pay_period_end_date + properties: + kind: + type: string + enum: + - regular + description: | + The kind of payroll sync. + - `regular`: A regular payroll sync + example: regular + pay_schedule_uuid: + type: string + format: uuid + description: Unique identifier of the pay schedule to sync time sheets for. + example: 123e4567-e89b-12d3-a456-426614174000 + pay_period_start_date: type: string - description: Requested amount for the payment - wire_in_deadline: + format: date + description: The start date of the pay period per ISO 8601 format. + example: '2025-01-01' + pay_period_end_date: type: string - description: Deadline to submit the wire in + format: date + description: The end date of the pay period per ISO 8601 format. + example: '2025-01-15' Time-Sheet: type: object x-examples: @@ -31573,6 +17058,160 @@ components: - Regular - Overtime - Double overtime + Time-Sheet-Create-Body: + type: object + description: Request body for creating a time sheet. + required: + - entity_uuid + - entity_type + - time_zone + - shift_started_at + properties: + entity_uuid: + type: string + description: Unique identifier of the entity associated with the time sheet. + entity_type: + type: string + description: Type of entity associated with the time sheet. + job_uuid: + type: string + description: Unique identifier of the job for which time is tracked. + time_zone: + type: string + description: Time zone of where the time is tracked. + shift_started_at: + type: string + format: date-time + description: ISO 8601 timestamp of when the shift was started. + shift_ended_at: + type: string + format: date-time + description: ISO 8601 timestamp of when the shift was ended. If the shift is still ongoing you can omit this field. + metadata: + type: object + additionalProperties: + type: string + maxLength: 500 + propertyNames: + type: string + maxLength: 40 + maxProperties: 50 + description: Metadata associated with the time sheet. Key-value pairs of arbitrary data. Both keys and values must be strings. + entries: + type: array + description: Entries associated with the time sheet. + items: + type: object + properties: + hours_worked: + type: number + format: float + maxDecimalPlaces: 3 + minimum: 0.001 + description: Hours worked for this pay classification. Should be passed as number with up to 3 decimal places. + pay_classification: + type: string + description: Pay classification for the entry. + enum: + - Regular + - Overtime + - Double overtime + x-examples: + Example: + entity_uuid: 123e4567-e89b-12d3-a456-426614174000 + entity_type: Employee + job_uuid: 123e4567-e89b-12d3-a456-426614174000 + time_zone: America/New_York + shift_started_at: '2024-06-10T09:00:00Z' + shift_ended_at: '2024-06-10T17:00:00Z' + metadata: + custom_field: custom value + entries: + - pay_classification: Regular + hours_worked: 1.5 + x-tags: + - Time Tracking + Time-Sheet-Update-Body: + type: object + description: Request body for updating a time sheet. + allOf: + - "$ref": "#/components/schemas/Versionable-Required" + - type: object + properties: + entity_uuid: + type: string + description: Unique identifier of the entity associated with the time sheet. + example: 123e4567-e89b-12d3-a456-426614174000 + entity_type: + type: string + description: Type of entity associated with the time sheet. + example: Employee + job_uuid: + type: string + description: Unique identifier of the job for which time was tracked. Currently is only supported for employees. + example: 123e4567-e89b-12d3-a456-426614174000 + time_zone: + type: string + description: Time zone of where the time was tracked. + example: America/New_York + shift_started_at: + type: string + format: date-time + description: The start time of the shift. Timestamp should be in ISO8601 + example: '2024-06-10T09:00:00Z' + shift_ended_at: + type: string + format: date-time + description: The end time of the shift. If the shift is still ongoing this will be null. + example: '2024-06-10T17:00:00Z' + metadata: + type: object + additionalProperties: + type: string + maxLength: 500 + propertyNames: + type: string + maxLength: 40 + maxProperties: 50 + description: Metadata associated with the time sheet. Key-value pairs of arbitrary data. Both keys and values must be strings. + entries: + type: array + description: Entries associated with the time sheet. + items: + type: object + properties: + uuid: + type: string + description: Unique identifier of the entry. + hours_worked: + type: number + format: float + maxDecimalPlaces: 3 + minimum: 0.001 + description: Hours worked for this pay classification. Should be passed as number with up to 3 decimal places. + pay_classification: + type: string + description: Pay classification for the entry. + enum: + - Regular + - Overtime + - Double overtime + x-examples: + Example: + version: 72deb67e16f7b92713c00d3582fa6c68 + entity_uuid: 123e4567-e89b-12d3-a456-426614174000 + entity_type: Employee + job_uuid: 123e4567-e89b-12d3-a456-426614174000 + time_zone: America/New_York + shift_started_at: '2024-06-10T09:00:00Z' + shift_ended_at: '2024-06-10T17:00:00Z' + metadata: + custom_field: custom value + entries: + - uuid: 123e4567-e89b-12d3-a456-426614174000 + hours_worked: 1.5 + x-tags: + - Time Tracking Company-Suspension: type: object description: Record representing the suspension of a company's Gusto account. @@ -31608,501 +17247,746 @@ components: description: Unique identifier for the company which is suspended. effective_date: type: string - description: Date that the suspension took effect. - leaving_for: + description: Date that the suspension took effect. + leaving_for: + type: + - string + - 'null' + description: Which competitor the company is joining instead. Only required if `reason` is `'switching_provider'`. + reason: + type: string + description: Explanation for why the company's account was suspended. + reconcile_tax_method: + type: string + description: How Gusto will handle taxes already collected. + enum: + - pay_taxes + - refund_taxes + file_quarterly_forms: + type: boolean + description: 'Should Gusto file quarterly tax forms on behalf of the company? The correct answer can depend on why the company is suspending their account, and how taxes are being reconciled. + +' + file_yearly_forms: + type: boolean + description: 'Should Gusto file yearly tax forms on behalf of the company? The correct answer can depend on why the company is suspending their account, and how taxes are being reconciled. + +' + comments: + type: + - string + - 'null' + description: User-supplied comments describing why they are suspending their account. + tax_refunds: + type: array + description: 'Describes the taxes which are refundable to the company for this suspension. These may be refunded or paid by Gusto depending on the value in `reconcile_tax_method`. + +' + items: + type: object + properties: + amount: + type: string + description: Dollar amount. + description: + type: string + description: What kind of tax this is. + Company-Suspension-List: + type: array + description: List of suspension records for a company. + items: + "$ref": "#/components/schemas/Company-Suspension" + x-examples: + success_status: + - uuid: 3bd0fa7c-071e-4e85-a6bf-f73a69797694 + company_uuid: 3a0e3fb7-3d4b-4c7c-8ba0-9ce3c9f1f3be + effective_date: '2025-07-23' + reason: shutting_down + leaving_for: + reconcile_tax_method: refund_taxes + file_yearly_forms: false + file_quarterly_forms: false + comments: + tax_refunds: [] + - uuid: 2ad79a4e-2fbd-43ca-a77b-e9049e6cab15 + company_uuid: 3a0e3fb7-3d4b-4c7c-8ba0-9ce3c9f1f3be + effective_date: '2025-07-23' + reason: switching_provider + leaving_for: adp + reconcile_tax_method: refund_taxes + file_yearly_forms: false + file_quarterly_forms: false + comments: Company is transitioning to ADP for their payroll and HR needs + tax_refunds: [] + Company-Suspension-Creation-Errors: + type: object + allOf: + - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-examples: + missing_required_fields: + errors: + - error_key: reconcile_tax_method + category: invalid_attribute_value + message: Reconcile tax method is required + - error_key: reason + category: invalid_attribute_value + message: Reason is required + - error_key: file_yearly_forms + category: invalid_attribute_value + message: File yearly forms is required + gusto_com_requires_support: + errors: + - error_key: leaving_for + category: invalid_attribute_value + message: Switching to Gusto.com must be processed by our Customer Support team + leaving_for_required: + errors: + - error_key: leaving_for + category: invalid_attribute_value + message: Leaving for is required when switching providers + switching_provider_cannot_pay_taxes: + errors: + - error_key: reconcile_tax_method + category: invalid_attribute_value + message: Reconcile tax method must be refund_taxes when switching to a new payroll provider + pay_taxes_requires_quarterly_filing: + errors: + - error_key: file_quarterly_forms + category: invalid_attribute_value + message: File quarterly forms must be true when paying withheld taxes + Time-Off-Request: + type: object + description: The representation of a time off request. + x-examples: + success_status: + uuid: 9145390f-0431-45ee-b8a0-6e7a8850d4cf + status: approved + employee_note: Vacation at Disney World! + employer_note: But Universal has Harry Potter World... + days: + '2019-06-01': '4.000' + '2019-06-02': '8.000' + '2019-06-03': '2.000' + request_type: vacation + policy_type: vacation + policy_uuid: ae382963-06b2-4b57-9780-8feda862bb70 + employee: + uuid: 05f8663b-5944-4cfb-910e-1ee0a6df7b42 + full_name: Jessica Gusto + approver: + uuid: 21d8dff4-ce09-4120-a274-3a5628bf6769 + full_name: Karen Gusto + initiator: + uuid: 05f8663b-5944-4cfb-910e-1ee0a6df7b42 + full_name: Jessica Gusto + properties: + uuid: + type: string + description: The UUID of the time off request. + readOnly: true + status: + type: string + description: The status of the time off request. + enum: + - pending + - approved + - declined + - consumed + readOnly: true + employee_note: + type: string + description: A note about the time off request, from the employee to the employer. + readOnly: true + employer_note: + type: string + description: A note about the time off request, from the employer to the employee. + readOnly: true + request_type: + type: string + description: The type of time off request. + deprecated: true + enum: + - vacation + - sick + readOnly: true + policy_type: + type: string + description: The type of the time off policy (e.g. vacation, sick). + readOnly: true + policy_uuid: + type: + - string + - 'null' + description: The UUID of the time off policy associated with this request. + readOnly: true + days: + description: An object that represents the days in the time off request. The keys of the object are the dates, formatted as a YYYY-MM-DD string. The values of the object are the number of hours requested off for each day, formatted as a string representation of a numeric decimal to the thousands place. + type: object + readOnly: true + employee: + type: object + description: '' + properties: + uuid: + type: string + description: The UUID of the employee the time off request is for. + readOnly: true + full_name: + type: string + description: The full name of the employee the time off request is for. + readOnly: true + readOnly: true + initiator: + type: + - object + - 'null' + description: '' + properties: + uuid: + type: string + description: The UUID of the employee who initiated the time off request. + readOnly: true + full_name: + type: string + description: The full name of the employee who initiated the time off request. + readOnly: true + readOnly: true + approver: + type: + - object + - 'null' + description: This value will be null if the request has not been approved. + properties: + uuid: + type: string + description: The UUID of the employee who approved the time off request. + readOnly: true + full_name: + type: string + description: The full name of the employee who approved the time off request. + readOnly: true + readOnly: true + Time-Off-Request-List: + type: array + items: + "$ref": "#/components/schemas/Time-Off-Request" + x-examples: + success_status: + - uuid: 9145390f-0431-45ee-b8a0-6e7a8850d4cf + status: approved + employee_note: Vacation at Disney World! + employer_note: But Universal has Harry Potter World... + days: + '2019-06-01': '4.000' + '2019-06-02': '8.000' + '2019-06-03': '2.000' + request_type: vacation + policy_type: vacation + policy_uuid: ae382963-06b2-4b57-9780-8feda862bb70 + employee: + uuid: 05f8663b-5944-4cfb-910e-1ee0a6df7b42 + full_name: Jessica Gusto + approver: + uuid: 21d8dff4-ce09-4120-a274-3a5628bf6769 + full_name: Karen Gusto + initiator: + uuid: 05f8663b-5944-4cfb-910e-1ee0a6df7b42 + full_name: Jessica Gusto + - uuid: 944cbbf4-8b13-4c45-babd-11ff13e17581 + status: pending + employee_note: Coming down with the flu + employer_note: '' + days: + '2019-02-01': '8.000' + request_type: sick + policy_type: sick + policy_uuid: bf493c7e-1a2d-4e5f-8c9a-3d7b6e4f2a1c + employee: + uuid: c2236d10-959a-4bb9-a21d-e14c6df447b6 + full_name: James Gusto + approver: + initiator: + uuid: c2236d10-959a-4bb9-a21d-e14c6df447b6 + full_name: James Gusto + Embedded-Time-Off-Request: + type: object + description: The representation of a time off request. + required: + - uuid + - status + - employee_note + - employer_note + - policy_type + - policy_uuid + - days + - employee + - initiator + - approver + x-examples: + success_status: + uuid: ad158cfb-99e4-4741-9db3-0bd3a267f222 + status: pending + employee_note: Family vacation + employer_note: + days: + '2026-10-20': '8.000' + '2026-10-21': '8.000' + policy_type: vacation + policy_uuid: c2d9b1bd-3f36-4c2d-a727-b2af057d6a7f + employee: + uuid: 51924fa0-26c6-4d4c-8832-3ef0b422c67e + full_name: Alex Johnson + approver: + initiator: + uuid: 51924fa0-26c6-4d4c-8832-3ef0b422c67e + full_name: Alex Johnson + approved_status: + uuid: ad158cfb-99e4-4741-9db3-0bd3a267f222 + status: approved + employee_note: Family vacation + employer_note: + days: + '2026-10-20': '8.000' + '2026-10-21': '8.000' + policy_type: vacation + policy_uuid: c2d9b1bd-3f36-4c2d-a727-b2af057d6a7f + employee: + uuid: 51924fa0-26c6-4d4c-8832-3ef0b422c67e + full_name: Alex Johnson + approver: + uuid: 21d8dff4-ce09-4120-a274-3a5628bf6769 + full_name: Morgan Chen + initiator: + uuid: 51924fa0-26c6-4d4c-8832-3ef0b422c67e + full_name: Alex Johnson + declined_status: + uuid: ad158cfb-99e4-4741-9db3-0bd3a267f222 + status: declined + employee_note: Family vacation + employer_note: Not enough coverage + days: + '2026-10-20': '8.000' + '2026-10-21': '8.000' + policy_type: vacation + policy_uuid: c2d9b1bd-3f36-4c2d-a727-b2af057d6a7f + employee: + uuid: 51924fa0-26c6-4d4c-8832-3ef0b422c67e + full_name: Alex Johnson + approver: + initiator: + uuid: 51924fa0-26c6-4d4c-8832-3ef0b422c67e + full_name: Alex Johnson + properties: + uuid: + type: string + description: The UUID of the time off request. + example: ad158cfb-99e4-4741-9db3-0bd3a267f222 + readOnly: true + status: + type: string + description: The status of the time off request. + example: pending + enum: + - pending + - approved + - declined + - consumed + readOnly: true + employee_note: type: - string - 'null' - description: Which competitor the company is joining instead. Only required if `reason` is `'switching_provider'`. - reason: - type: string - description: Explanation for why the company's account was suspended. - reconcile_tax_method: - type: string - description: How Gusto will handle taxes already collected. - enum: - - pay_taxes - - refund_taxes - file_quarterly_forms: - type: boolean - description: 'Should Gusto file quarterly tax forms on behalf of the company? The correct answer can depend on why the company is suspending their account, and how taxes are being reconciled. - -' - file_yearly_forms: - type: boolean - description: 'Should Gusto file yearly tax forms on behalf of the company? The correct answer can depend on why the company is suspending their account, and how taxes are being reconciled. - -' - comments: + description: A note about the time off request, from the employee to the employer. + example: Family vacation + readOnly: true + employer_note: type: - string - 'null' - description: User-supplied comments describing why they are suspending their account. - tax_refunds: - type: array - description: 'Describes the taxes which are refundable to the company for this suspension. These may be refunded or paid by Gusto depending on the value in `reconcile_tax_method`. - -' - items: - type: object - properties: - amount: - type: string - description: Dollar amount. - description: - type: string - description: What kind of tax this is. - Minimum-Wage-List: - type: array - x-examples: - success_status: - - uuid: 1b71bb5b-4811-46e9-8a8a-cf5521cbeda6 - authority: City - wage: '15.0' - wage_type: Regular - effective_date: '2017-01-01' - notes: large companies - - uuid: 87434623-b57d-4630-8da5-9dde599c7840 - authority: City - wage: '10.5' - wage_type: Regular - effective_date: '2017-01-01' - notes: large companies - - uuid: fa055c11-bfe4-4ac3-84dd-8502cf046b20 - authority: State - wage: '10.5' - wage_type: Regular - effective_date: '2017-01-01' - notes: large companies - - uuid: cdd9dfc2-6465-4693-ae60-0eecff35038c - authority: Federal - wage: '10.5' - wage_type: Regular - effective_date: '2017-01-01' - notes: large companies - items: - "$ref": "#/components/schemas/Minimum-Wage" - Employment-History-List: - type: array - x-examples: - success_status: - - hire_date: '2015-06-09' - termination_date: '2025-05-09' - file_new_hire_report: false - two_percent_shareholder: false - employment_status: full_time - items: - description: The representation of an employee's individual employements. - type: object - properties: - hire_date: - type: string - description: The employee's start day of work for an employment. - termination_date: - type: - - string - - 'null' - description: The employee's last day of work for an employment. - file_new_hire_report: - type: boolean - description: The boolean flag indicating whether Gusto will file a new hire report for the employee. - two_percent_shareholder: - type: boolean - description: Whether the employee is a two percent shareholder of the company. This field only applies to companies with an S-Corp entity type. - employment_status: + description: A note about the time off request, from the employer to the employee. + example: + readOnly: true + policy_type: + type: + - string + - 'null' + description: The type of the time off policy (e.g. vacation, sick). + example: vacation + readOnly: true + policy_uuid: + type: + - string + - 'null' + description: The UUID of the time off policy associated with this request. + example: c2d9b1bd-3f36-4c2d-a727-b2af057d6a7f + readOnly: true + days: + description: 'An object where keys are dates in YYYY-MM-DD format and values are hours as string decimals (e.g. {"2025-01-20": "8.000"}).' + type: object + additionalProperties: type: string - description: The employee's employment status. Supplying an invalid option will set the employment_status to *not_set*. - enum: - - part_time - - full_time - - part_time_eligible - - variable - - seasonal - not_set - Employee-Pay-Stubs-List: + example: + '2026-10-20': '8.000' + '2026-10-21': '8.000' + readOnly: true + employee: + type: object + description: '' + properties: + uuid: + type: string + description: The UUID of the employee the time off request is for. + example: 51924fa0-26c6-4d4c-8832-3ef0b422c67e + readOnly: true + full_name: + type: string + description: The full name of the employee the time off request is for. + example: Alex Johnson + readOnly: true + readOnly: true + initiator: + type: + - object + - 'null' + description: '' + properties: + uuid: + type: string + description: The UUID of the employee who initiated the time off request. + example: 51924fa0-26c6-4d4c-8832-3ef0b422c67e + readOnly: true + full_name: + type: string + description: The full name of the employee who initiated the time off request. + example: Alex Johnson + readOnly: true + readOnly: true + approver: + type: + - object + - 'null' + description: This value will be null if the request has not been approved. + properties: + uuid: + type: string + description: The UUID of the employee who approved the time off request. + example: 21d8dff4-ce09-4120-a274-3a5628bf6769 + readOnly: true + full_name: + type: string + description: The full name of the employee who approved the time off request. + example: Morgan Chen + readOnly: true + readOnly: true + Embedded-Time-Off-Request-List: type: array - x-examples: - success_status: - - uuid: d2cec746-caee-464a-bcaf-00d93f7049c9 - check_date: '2023-11-24' - gross_pay: 880.0 - net_pay: 541.02 - payroll_uuid: a039cafb-745e-4af4-bf1e-935a86fc18e0 - check_amount: 500.2 - payment_method: Direct Deposit items: - description: The representation of an employee pay stub information. - type: object - properties: - uuid: - type: string - description: The UUID of the employee pay stub. - readOnly: true - check_date: - type: string - description: The check date of the pay stub. - readOnly: true - gross_pay: - type: string - description: The gross pay amount for the pay stub. - readOnly: true - net_pay: - type: string - description: The net pay amount for the pay stub. - readOnly: true - payroll_uuid: - type: string - description: A unique identifier of the payroll to which the pay stub belongs. - readOnly: true - check_amount: - type: string - description: The check amount for the pay stub. - readOnly: true - payment_method: - type: string - description: The payment method for the pay stub. - enum: - - Direct Deposit - - Check - readOnly: true - x-tags: - - Payrolls - required: - - uuid - Employee-Work-Addresses-List: - type: array + "$ref": "#/components/schemas/Embedded-Time-Off-Request" x-examples: success_status: - - uuid: '080b6254-ce7c-411f-9f7d-5a3ce3c51154' - employee_uuid: 6747692e-d2c8-4472-9c5e-183c65404fbf - location_uuid: 9ccfade8-82ee-490c-8711-5c0787bccde8 - effective_date: '2021-01-01' - active: false - version: 3097e9d0efb09ba2e00a8988a93b3091 - street_1: 91678 Farrell Meadow - street_2: Apt. 835 - city: Phoenix - state: AZ - zip: '85016' - country: USA - - uuid: 35d62f15-75da-45aa-9c97-adc57342b925 - employee_uuid: 6747692e-d2c8-4472-9c5e-183c65404fbf - location_uuid: 10330fe8-36ef-4713-aa59-9f8a432abd13 - effective_date: '2022-01-01' - active: false - version: 5f48ce54afed81bb11dd89461bd0e214 - street_1: 800 Adolfo Gardens - street_2: Suite 419 - city: Bremen - state: AL - zip: '35033' - country: USA - - uuid: 3f3ceaba-6b57-4039-a31a-0004bef83c6f - employee_uuid: 6747692e-d2c8-4472-9c5e-183c65404fbf - location_uuid: 98383e91-c67d-4b69-a617-5a57f91da48c - effective_date: '2023-01-01' - active: true - version: a8a78c851337676137e22caf56ffe5b5 - street_1: 2216 Icie Villages - street_2: Apt. 798 - city: Big Delta - state: AK - zip: '99737' - country: USA - items: - "$ref": "#/components/schemas/Employee-Work-Address" - Employee-Address-List: - type: array + - uuid: ad158cfb-99e4-4741-9db3-0bd3a267f222 + status: pending + employee_note: Family vacation + employer_note: + days: + '2026-10-20': '8.000' + '2026-10-21': '8.000' + policy_type: vacation + policy_uuid: c2d9b1bd-3f36-4c2d-a727-b2af057d6a7f + employee: + uuid: 51924fa0-26c6-4d4c-8832-3ef0b422c67e + full_name: Alex Johnson + approver: + initiator: + uuid: 51924fa0-26c6-4d4c-8832-3ef0b422c67e + full_name: Alex Johnson + - uuid: 944cbbf4-8b13-4c45-babd-11ff13e17581 + status: approved + employee_note: Feeling under the weather + employer_note: Feel better soon! + days: + '2026-11-05': '8.000' + policy_type: sick + policy_uuid: bf493c7e-1a2d-4e5f-8c9a-3d7b6e4f2a1c + employee: + uuid: c2236d10-959a-4bb9-a21d-e14c6df447b6 + full_name: James Rivera + approver: + uuid: 21d8dff4-ce09-4120-a274-3a5628bf6769 + full_name: Morgan Chen + initiator: + uuid: c2236d10-959a-4bb9-a21d-e14c6df447b6 + full_name: James Rivera + Embedded-Time-Off-Request-Preview: + type: object + description: Preview of the balance impact for a time off request before it is created or updated. + required: + - balance_hours + - this_request_hours + - other_requested_hours + - remaining_balance_hours + - allow_negative_balance + - unlimited x-examples: success_status: - - uuid: d6b7472f-bb55-41ca-a55c-9adbd3c64e09 - version: 7eee445be93fc50fd3cbb55b8d943fb3 - employee_uuid: d1a166b4-79b4-413f-b067-27534ec59ecd - street_1: 3121 Milky Way - street_2: '' - city: San Francisco - state: CA - zip: '94107' - country: USA - active: false - effective_date: '2024-06-09' - courtesy_withholding: false - - uuid: 1b59a593-d324-4d97-9296-99ecc95f81d1 - version: 5147ad755821c4ba3dbc3afa1055ff4d - employee_uuid: d1a166b4-79b4-413f-b067-27534ec59ecd - street_1: 3624 Victoria Ln - street_2: '' - city: Cincinnati - state: OH - zip: '45208' - country: USA - active: true - effective_date: '2025-05-26' - courtesy_withholding: false - - uuid: 69489b54-976d-4027-8b51-702e5c8c62d3 - version: f0765fa5a85f62723320763494a481a6 - employee_uuid: d1a166b4-79b4-413f-b067-27534ec59ecd - street_1: Main st. - street_2: '' - city: New York - state: NY - zip: '10011' - country: USA - active: false - effective_date: '2025-07-09' - courtesy_withholding: false - items: - "$ref": "#/components/schemas/Employee-Address" - Employee-State-Taxes-List: - type: array + balance_hours: '64.0' + this_request_hours: '16.0' + other_requested_hours: '0.0' + remaining_balance_hours: '48.0' + allow_negative_balance: false + unlimited: false + properties: + balance_hours: + type: string + nullable: true + description: The employee's current available balance hours for this policy. Null for unlimited policies. + example: '64.0' + readOnly: true + this_request_hours: + type: string + description: The total hours for this time off request. + example: '16.0' + readOnly: true + other_requested_hours: + type: string + description: Hours from other pending or approved requests for this policy. + example: '0.0' + readOnly: true + remaining_balance_hours: + type: string + nullable: true + description: The projected balance after this request is applied. Null for unlimited policies. + example: '48.0' + readOnly: true + allow_negative_balance: + type: boolean + description: Whether the time off policy allows a negative balance. + example: false + readOnly: true + unlimited: + type: boolean + description: Whether the time off policy provides unlimited time off. + example: false + readOnly: true + Embedded-Time-Off-Balance: + type: object + description: Time off balance for an employee, grouped by policy. x-examples: success_status: - - employee_uuid: c963cb99-fe1c-4aa8-9d48-1ad211ad396f - state: CA - file_new_hire_report: false - is_work_state: true - questions: - - is_question_for_admin_only: false - label: Filing Status - description: 'The Head of Household status applies to unmarried individuals who have a relative living with them in their home. If unsure, read the CA Filing Status explanation. - -' - key: filing_status - input_question_format: - type: Select - options: - - value: S - label: Single - - value: M - label: Married one income - - value: MD - label: Married dual income - - value: H - label: Head of Household - - value: E - label: Do Not Withhold - answers: - - value: M - valid_from: '2010-01-01' - valid_up_to: - - is_question_for_admin_only: false - label: Withholding Allowance - description: 'This value is needed to calculate the employee''s CA income tax withholding. If unsure, use the CA DE-4 form to calculate the value manually. - -' - key: withholding_allowance - input_question_format: - type: Number - answers: - - value: 1 - valid_from: '2010-01-01' - valid_up_to: - - is_question_for_admin_only: false - label: Additional Withholding - description: You can withhold an additional amount of California income taxes here. - key: additional_withholding - input_question_format: - type: Currency - answers: - - value: '0.0' - valid_from: '2010-01-01' - valid_up_to: - - is_question_for_admin_only: true - label: File a New Hire Report? - description: State law requires you to file a new hire report within 20 days of hiring or re-hiring an employee. - key: file_new_hire_report - input_question_format: - type: Select - options: - - value: true - label: Yes, file the state new hire report for me. - - value: false - label: No, I have already filed. - answers: - - value: false - valid_from: '2010-01-01' - valid_up_to: - items: - type: object - properties: - employee_uuid: - type: string - description: The employee's uuid - state: - type: string - description: Two letter US state abbreviation - file_new_hire_report: - type: - - boolean - - 'null' - is_work_state: - type: boolean - questions: - type: array - items: - "$ref": "#/components/schemas/Employee-State-Tax-Question" - required: - - employee_uuid - - state - - questions - Employee-State-Taxes-Request: - type: object + employee_uuid: 51924fa0-26c6-4d4c-8832-3ef0b422c67e + balances: + - policy_uuid: c2d9b1bd-3f36-4c2d-a727-b2af057d6a7f + balance_hours: '32.0' + accrued_hours: '40.0' + used_hours: '8.0' + pending_hours: '0.0' properties: - states: + employee_uuid: + type: string + description: The UUID of the employee. + example: 51924fa0-26c6-4d4c-8832-3ef0b422c67e + readOnly: true + balances: type: array - uniqueItems: true + description: The employee's time off balances, one entry per policy. + readOnly: true items: type: object properties: - state: + policy_uuid: type: string - questions: - type: array - uniqueItems: true - items: - type: object - properties: - key: - type: string - answers: - type: array - uniqueItems: true - items: - type: object - properties: - value: - oneOf: - - type: string - - type: number - - type: boolean - - type: 'null' - valid_from: - type: string - valid_up_to: - type: - - string - - 'null' - required: - - value - - valid_from - required: - - key - required: - - state - required: - - states - Notifications-List: + description: The UUID of the time off policy. + example: c2d9b1bd-3f36-4c2d-a727-b2af057d6a7f + readOnly: true + balance_hours: + type: string + description: The employee's current available balance hours for this policy. + example: '32.0' + readOnly: true + accrued_hours: + type: string + description: The total hours accrued year-to-date for this policy. + example: '40.0' + readOnly: true + used_hours: + type: string + description: The total hours used year-to-date for this policy. + example: '8.0' + readOnly: true + pending_hours: + type: + - string + - 'null' + description: The total hours from pending time off requests for this policy. + example: '0.0' + readOnly: true + Embedded-Time-Off-Balance-List: type: array - x-examples: - success_status: - - uuid: d053ee2a-a80f-4a61-8bf8-6122c1f954dd - company_uuid: 46c8329d-ebd1-49ba-878c-810b481a34c9 - category: company_setup.missing_mandatory_sick_time_policy - title: Set up a sick time off policy - message: At least one company work location requires businesses to provide a sick time off policy. - actionable: true - can_block_payroll: false - published_at: '2025-06-09T13:42:59.000-07:00' - due_at: - status: open - resources: [] - template_variables: {} - - uuid: 2edd148b-c4c3-4cda-b3e1-72b87399e6c8 - company_uuid: 46c8329d-ebd1-49ba-878c-810b481a34c9 - category: bank_error.compensation_credit_failure - title: Unable to deposit funds to Donn Cormier - message: We were unable to deposit a recent paycheck to Donn’s bank account, so these funds of $100.00 will be returned to Luettgen-Gusikowski’s bank account. Once the funds are received, the payment should be made directly to Donn. - actionable: true - can_block_payroll: false - published_at: '2025-06-09T13:43:00.000-07:00' - due_at: - status: open - resources: - - entity_type: Employee - entity_uuid: 66a27bb8-be5b-42e5-82b8-b2d0044a7f9e - template_variables: - beneficiary_name: Donn Cormier - amount: "$100.00" - company_name: Luettgen-Gusikowski items: - "$ref": "#/components/schemas/Notification" - Contractor-Payment-Details-List: - type: array + "$ref": "#/components/schemas/Embedded-Time-Off-Balance" x-examples: success_status: - - contractor_uuid: e3d9487a-4ecb-49a3-b6ff-cf03ba7278b6 - first_name: Yael - last_name: Kuvalis - payment_method: Check - split_by: - splits: - - contractor_uuid: 577b6307-66e9-4926-a769-91f5c8b578aa - first_name: Autumn - last_name: Connelly - payment_method: Direct Deposit - split_by: Percentage - splits: - - bank_account_uuid: 0aca4500-8ba4-48fc-adce-677fe7926b7b - name: Cayman Island Checking - hidden_account_number: XXXX1545 - account_number: - encrypted_account_number: - routing_number: '055003201' - priority: 1 - split_amount: 100 - account_type: Checking - items: - type: object - properties: - contractor_uuid: - type: string - payment_method: - type: string - enum: - - Direct Deposit - - Check - first_name: - type: string - last_name: - type: string - split_by: - anyOf: - - type: string - enum: - - Amount - - Percentage - - type: 'null' - description: Describes how the payment will be split. If split_by is Percentage, then the split amounts must add up to exactly 100. If split_by is Amount, then the amount represents cents and the last split amount must be `null` to capture the remainder. - splits: - type: - - array - - 'null' - items: - type: object - properties: - bank_account_uuid: - type: string - name: - type: string - hidden_account_number: - type: string - description: An obfuscated version of the account number which can be used for display purposes. - encrypted_account_number: - type: - - string - - 'null' - description: Ciphertext containing the full bank account number, which must be decrypted using a key provided by Gusto. Only visible with the `contractor_payment_methods:read:account_number` scope. - routing_number: - type: string - priority: - type: integer - description: The order of priority for each payment split, with priority 1 being the first bank account paid. Priority must be unique and sequential. - split_amount: - type: - - number - - 'null' - description: If `split_by` is 'Amount', this is in cents (e.g., 500 for $5.00) and exactly one account must have a `split_amount` of `null` to capture the remainder. If `split_by` is 'Percentage', this is the percentage value (e.g., 60 for 60%). - account_type: - type: string + - employee_uuid: 51924fa0-26c6-4d4c-8832-3ef0b422c67e + balances: + - policy_uuid: c2d9b1bd-3f36-4c2d-a727-b2af057d6a7f + balance_hours: '32.0' + accrued_hours: '40.0' + used_hours: '8.0' + pending_hours: '0.0' + Contractor-Payment-Group-Preview: + description: Preview of a contractor payment group + type: object + properties: + uuid: + type: + - string + - 'null' + description: The unique identifier of the contractor payment group. + readOnly: true + company_uuid: + type: string + description: The UUID of the company. + readOnly: true + check_date: + type: string + description: The check date of the contractor payment group. + readOnly: true + debit_date: + type: string + description: The debit date of the contractor payment group. + readOnly: true + status: + type: string + description: The status of the contractor payment group. Will be `Funded` if all payments that should be funded (i.e. have `Direct Deposit` for payment method) are funded. A group can have status `Funded` while having associated payments that have status `Unfunded`, i.e. payment with `Check` payment method. + enum: + - Unfunded + - Funded + readOnly: true + creation_token: + type: + - string + - 'null' + description: Token used to make contractor payment group creation idempotent. Will error if attempting to create a group with a duplicate token. + readOnly: true + partner_owned_disbursement: + type: + - boolean + - 'null' + description: Whether the disbursement is partner owned. + readOnly: true + submission_blockers: + type: array + description: List of submission blockers for the contractor payment group. + readOnly: true + items: + "$ref": "#/components/schemas/Payroll-Submission-Blocker-Type" + credit_blockers: + type: array + description: List of credit blockers for the contractor payment group. + readOnly: true + items: + "$ref": "#/components/schemas/Payroll-Credit-Blocker-Type" + totals: + type: object + properties: + amount: + type: string + description: The total amount for the group of contractor payments. + readOnly: true + debit_amount: + type: string + description: The total debit amount for the group of contractor payments. Sum of wage & reimbursement amount. + readOnly: true + wage_amount: + type: string + description: The total wage amount for the group of contractor payments. + readOnly: true + reimbursement_amount: + type: string + description: The total reimbursement amount for the group of contractor payments. + readOnly: true + check_amount: + type: string + description: The total check amount for the group of contractor payments. + readOnly: true + readOnly: true + contractor_payments: + type: array + items: + "$ref": "#/components/schemas/Contractor-Payment-For-Group-Preview" + x-examples: + success: + uuid: + company_uuid: 450ddadf-69da-4f37-92e5-8d78b94bffec + check_date: '2025-08-21' + debit_date: '2025-08-19' + status: Unfunded + creation_token: 025e79ac-824d-4d3e-b819-8f265c3edb72 + partner_owned_disbursement: + submission_blockers: [] + credit_blockers: [] + contractor_payments: + - uuid: + contractor_uuid: e894e72b-0aef-4856-9082-9c7826db998d + bonus: '0.0' + hours: '0.0' + hourly_rate: '0.0' + may_cancel: true + payment_method: Direct Deposit + reimbursement: '750.0' + status: Unfunded + wage: '10000.0' + wage_type: Fixed + wage_total: '10000.0' + totals: + amount: '10750.00' + debit_amount: '10750.00' + wage_amount: '10000.00' + reimbursement_amount: '750.00' + check_amount: '0.00' + With submission blockers: + uuid: + company_uuid: 450ddadf-69da-4f37-92e5-8d78b94bffec + check_date: '2025-08-21' + debit_date: '2025-08-19' + status: Unfunded + creation_token: 8f3ced95-ccba-4ace-ac5d-03c1080bb768 + partner_owned_disbursement: + submission_blockers: + - blocker_type: fast_ach_threshold_exceeded + blocker_name: Fast ACH Threshold Exceeded + selected_option: + status: unresolved + unblock_options: + - unblock_type: wire_in + check_date: '2025-08-21' + metadata: + wire_in_deadline: '2025-08-21T18:00:00Z' + wire_in_amount: '1000750.0' + - unblock_type: move_to_four_day + check_date: '2025-08-21' + metadata: + debit_date: '2025-08-15' + credit_blockers: [] + contractor_payments: + - uuid: + contractor_uuid: e894e72b-0aef-4856-9082-9c7826db998d + bonus: '0.0' + hours: '0.0' + hourly_rate: '0.0' + may_cancel: true + payment_method: Direct Deposit + reimbursement: '750.0' + status: Unfunded + wage: '1000000.0' + wage_type: Fixed + wage_total: '1000000.0' + totals: + amount: '1000750.00' + debit_amount: '1000750.00' + wage_amount: '1000000.00' + reimbursement_amount: '750.00' + check_amount: '0.00' Contractor-Payment-Group-Partner-Disbursements: type: object description: Partner disbursements for a contractor payment group @@ -32188,138 +18072,6 @@ components: - Paid - Not partner managed - Converted to check - Payroll-Update: - type: object - properties: - employee_compensations: - type: array - items: - type: object - description: '' - properties: - employee_uuid: - type: string - description: The UUID of the employee. - version: - type: string - description: The current version of this employee compensation from the prepared payroll. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. - excluded: - type: boolean - description: This employee will be excluded from payroll calculation and will not be paid for the payroll. - payment_method: - type: string - description: The employee's compensation payment method. Invalid values will be ignored. - enum: - - Direct Deposit - - Check - memo: - type: string - description: Custom text that will be printed as a personal note to the employee on a paystub. - fixed_compensations: - type: array - items: - type: object - description: An array of fixed compensations for the employee. Fixed compensations include tips, bonuses, and one time reimbursements. - properties: - name: - type: string - description: The name of the compensation. This also serves as the unique, immutable identifier for this compensation. - amount: - type: string - description: The amount of the compensation for the pay period. - job_uuid: - type: string - description: The UUID of the job for the compensation. - hourly_compensations: - type: array - items: - type: object - description: An array of hourly compensations for the employee. Hourly compensations include regular, overtime, and double overtime hours. - properties: - name: - type: string - description: The name of the compensation. This also serves as the unique, immutable identifier for this compensation. - hours: - type: string - description: The number of hours to be compensated for this pay period. - job_uuid: - type: string - description: The UUIDs of the job for the compensation. - deductions: - type: array - items: - type: object - description: An array of deductions for the employee. - properties: - name: - type: string - description: The name of the deduction. - amount: - type: number - description: The amount of the deduction for the pay period. - amount_type: - type: string - description: The amount type of the deduction for the pay period. - enum: - - fixed - - percent - uuid: - type: string - description: The UUID of the deduction. This parameter is optional and can be provided in order to update an existing deduction. - paid_time_off: - type: array - description: An array of all paid time off the employee is eligible for this pay period. Each paid time off object can be the name or the specific policy_uuid. - items: - type: object - properties: - name: - type: string - description: The name of the PTO. This also serves as the unique, immutable identifier for the PTO. Must pass in name or policy_uuid but not both. - hours: - type: string - description: The hours of this PTO taken during the pay period. - policy_uuid: - type: string - description: The uuid of the PTO policy. Must pass in name or policy_uuid but not both. - final_payout_unused_hours_input: - type: - - string - - 'null' - description: The outstanding hours paid upon termination. This field is only applicable for termination payrolls. - reimbursements: - type: array - description: An array of reimbursements for the employee. - items: - type: object - properties: - amount: - type: string - description: The dollar amount of the reimbursement for the pay period. - description: - type: string - description: The description of the reimbursement. If not provided, the reimbursement will be unnamed. - uuid: - type: string - description: The UUID of an existing reimbursement. This parameter is optional and can be provided in order to update an existing reimbursement. - withholding_pay_period: - description: The payment schedule tax rate the payroll is based on. Only relevant for off-cycle payrolls. - type: string - enum: - - Every week - - Every other week - - Twice per month - - Monthly - - Quarterly - - Semiannually - - Annually - skip_regular_deductions: - description: Block regular deductions and contributions for this payroll. Only relevant for off-cycle payrolls. - type: boolean - fixed_withholding_rate: - description: Enable taxes to be withheld at the IRS's required rate of 22% for federal income taxes. State income taxes will be taxed at the state's supplemental tax rate. Otherwise, we'll sum the entirety of the employee's wages and withhold taxes on the entire amount at the rate for regular wages. Only relevant for off-cycle payrolls. - type: boolean - required: - - employee_compensations Show-Employees: type: array items: @@ -32459,11166 +18211,20449 @@ components: welcome_email_sent_at: '2024-01-15T14:30:00Z' last_password_resent_at: partner_portal_invitation_sent: true - Payroll-Partner-Owned-Disbursement-Type: - type: - - boolean - - 'null' - description: Will money movement for the payroll be performed by the partner rather than by Gusto? - Payroll-Employee-Compensations-Included: + Employee-Home-Address: + type: object + properties: + street_1: + type: + - string + - 'null' + readOnly: false + street_2: + type: + - string + - 'null' + readOnly: false + city: + type: + - string + - 'null' + readOnly: false + state: + type: + - string + - 'null' + readOnly: false + zip: + type: + - string + - 'null' + readOnly: false + country: + type: + - string + - 'null' + readOnly: false + default: USA + active: + type: boolean + description: The status of the location. Inactive locations have been deleted, but may still have historical data associated with them. + readOnly: true + uuid: + type: string + description: Unique identifier for this address. + example: + street_1: 412 Kiera Stravenue + street_2: Suite 391 + city: San Francisco + state: CA + zip: '94107' + country: USA + active: true + uud: sample-uuid-123231 + Employee-Home-Address-History-Entry: + description: | + A single entry in an employee's home-address history. Returned in the + `all_home_addresses` array; includes the `effective_date` the address + became active in addition to the shared `Employee-Home-Address` fields. + allOf: + - "$ref": "#/components/schemas/Employee-Home-Address" + - type: object + properties: + effective_date: + type: string + format: date + description: The date the address became effective. + example: + street_1: 412 Kiera Stravenue + street_2: Suite 391 + city: San Francisco + state: CA + zip: '94107' + country: USA + active: true + uud: sample-uuid-123231 + effective_date: '2024-01-01' + Webhooks-Health-Check-Status: + description: The representation of a webhooks health check response type: object - additionalProperties: true + x-examples: + success_status: + status: healthy + last_checked_at: '2025-09-08T21:21:38.000Z' properties: - taxes: + status: + type: string + description: Latest health status of the webhooks system + readOnly: true + enum: + - healthy + - unhealthy + - unknown + last_checked_at: + type: string + format: date-time + readOnly: true + description: ISO8601 timestamp of the last successful health check with millisecond precision + Partner-Managed-Company-Migrate-Request: + type: object + description: 'Request body is optional in API version 2026-02-01 and later. The Terms of Service signer is resolved from the authenticated payroll-admin user; the previously required `email`, `ip_address`, and `external_user_id` parameters are no longer accepted. + +' + properties: {} + x-examples: + typical: {} + Partner-Managed-Company-Migrate-Response: + type: object + properties: + company_uuid: + type: string + description: The company UUID. + migration_status: + type: boolean + description: Returns `true` when the migration completed successfully, `false` otherwise. + errors: type: array - uniqueItems: false - description: An array of employer and employee taxes for the pay period. Only included for processed or calculated payrolls when `taxes` is present in the `include` parameter. + description: Migration blockers preventing the migration. Empty array when `migration_status` is `true`. items: type: object properties: - name: + error_key: type: string - minLength: 1 - employer: - type: boolean - amount: - type: number - minLength: 1 - required: - - name - - employer - - amount - readOnly: true - readOnly: true - benefits: + category: + type: string + description: Returns `migration_blocker` for blockers. + enum: + - migration_blocker + message: + type: string + metadata: + type: object + properties: + key: + type: string + description: Issue key (e.g., `company_suspended`, `terms_of_service`, `gusto_managed_benefits`). + warnings: type: array - uniqueItems: false - description: An array of employee benefits for the pay period. Benefits are only included for processed payroll when the include parameter is present. + description: Non-blocking issues surfaced during migration (e.g., suspended company, active integrations). May be present even when `migration_status` is `true`. items: type: object properties: - name: + error_key: type: string - readOnly: true - employee_deduction: - type: number - readOnly: true - company_contribution: - type: number - readOnly: true - imputed: - type: boolean - readOnly: true + category: + type: string + description: Returns `migration_warning` for warnings. + enum: + - migration_warning + message: + type: string + metadata: + type: object + properties: + key: + type: string + x-examples: + Example: + company_uuid: 39abf9b9-650b-4e67-89a0-389dc6ee8a71 + migration_status: true + errors: [] + warnings: + - error_key: base + category: migration_warning + message: Company has active integrations. + metadata: + key: active_integrations + Partner-Managed-Company-Create-Request: + type: object + required: + - user + - company + properties: + user: + type: object + description: Information for the user who will be the primary payroll administrator for the new company. + required: + - first_name + - last_name + - email + properties: + first_name: + type: string + description: The first name of the user who will be the primary payroll admin. + last_name: + type: string + description: The last name of the user who will be the primary payroll admin. + email: + type: string + description: The email of the user who will be the primary payroll admin. + phone: + type: string + description: The phone number of the user who will be the primary payroll admin. + company: + type: object + required: + - name + properties: + name: + type: string + description: The legal name of the company. + trade_name: + type: string + description: The name of the company. + ein: + type: string + description: The employer identification number (EIN) of the company. + contractor_only: + type: boolean + description: Whether the company only supports contractors. Should be set to true if the company has no W-2 employees. If not passed, will default to false (i.e. the company will support both contractors and employees). + x-examples: + Example: + user: + first_name: Frank + last_name: Ocean + email: frank@example.com + phone: '2345558899' + company: + name: Frank's Ocean, LLC + trade_name: Frank's Ocean + ein: '123456789' + contractor_only: false + Partner-Managed-Company: + description: Object returned when creating a partner managed company + type: object + properties: + access_token: + type: string + description: Access token that can be used for OAuth access to the account. Access tokens expire 2 hours after they are issued. readOnly: true - deductions: + refresh_token: + type: string + description: Refresh token that can be exchanged for a new access token. + readOnly: true + company_uuid: + type: string + description: Gusto's UUID for the company + readOnly: true + expires_in: + type: integer + description: Time of access_token expiration in seconds + readOnly: true + x-examples: + Example: + access_token: de6780bc506a0446309bd9362820ba8aed28aa506c71eedbe1c5c4f9dd350e54 + refresh_token: 8257e65c97202ed1726cf9571600918f3bffb2544b26e00a61df9897668c33a1 + company_uuid: d525dd21-ba6e-482c-be15-c2c7237f1364 + expires_in: 7200 + Migration-Blocker: + description: Migration blocker that blocks company migration + type: object + properties: + errors: type: array - uniqueItems: false - description: An array of employee deductions for the pay period. Only included when `deductions` is present in the `include` parameter. items: type: object properties: - name: + error_key: type: string - description: The name of the deduction. - amount: - type: number - description: The amount of the deduction for the pay period. - amount_type: + description: Error key + category: type: string - description: The amount type of the deduction for the pay period. Only present for unprocessed payrolls. - enum: - - fixed - - percent - uuid: + description: Error category + message: type: string - description: The UUID of the deduction. Only present for unprocessed payrolls. - readOnly: true - updatable_via_payroll: - type: boolean - description: Whether the deduction can be updated via the payroll update endpoint. Only present for unprocessed payrolls. - readOnly: true - Payroll-Show: - type: object - x-examples: - success_status: - uuid: b441a30b-2adb-489e-b7b7-9d094011a3f8 - employee_compensations: [] - submission_blockers: [] - credit_blockers: [] - payroll_uuid: b441a30b-2adb-489e-b7b7-9d094011a3f8 - company_uuid: 9aa93530-43d5-484e-b608-33214109420d - off_cycle: false - auto_payroll: false - processed: true - processed_date: '2025-06-16' - calculated_at: '2025-06-16T16:58:03Z' - pay_period: - start_date: '2025-05-25' - end_date: '2025-06-09' - pay_schedule_uuid: 40ff5990-0191-4796-9717-32f7dd3e94d5 - check_date: '2025-06-13' - external: false - payroll_deadline: '2025-06-17T23:00:00Z' - totals: - employee_bonuses: '0.00' - employee_commissions: '0.00' - employee_cash_tips: '0.00' - employee_paycheck_tips: '0.00' - additional_earnings: '0.00' - owners_draw: '0.00' - benefits: '0.00' - check_amount: '0.00' - child_support_debit: '0.00' - company_debit: '0.00' - deferred_payroll_taxes: '0.00' - employee_benefits_deductions: '0.00' - employee_taxes: '0.00' - employer_taxes: '0.00' - gross_pay: '0.00' - imputed_pay: '0.00' - net_pay: '0.00' - net_pay_debit: '0.00' - other_deductions: '0.00' - reimbursement_debit: '0.00' - reimbursements: '0.00' - tax_debit: '0.00' - processing_request: - status: submit_success - errors: [] - created_at: '2025-06-16T16:58:03Z' - partner_owned_disbursement: - with_submit_wire_credit_blocker: - uuid: b441a30b-2adb-489e-b7b7-9d094011a3f8 - employee_compensations: [] - submission_blockers: [] - credit_blockers: - - blocker_type: waiting_for_wire_in - blocker_name: Waiting for Wire In - unblock_options: - - unblock_type: submit_wire - check_date: '2025-06-13' - metadata: - wire_in_amount: '15000.00' - wire_in_deadline: '2025-06-12T18:00:00Z' - wire_in_request_uuid: c1234567-89ab-cdef-0123-456789abcdef - selected_option: - status: unresolved - payroll_uuid: b441a30b-2adb-489e-b7b7-9d094011a3f8 - company_uuid: 9aa93530-43d5-484e-b608-33214109420d - off_cycle: false - auto_payroll: false - processed: true - processed_date: '2025-06-16' - calculated_at: '2025-06-16T16:58:03Z' - pay_period: - start_date: '2025-05-25' - end_date: '2025-06-09' - pay_schedule_uuid: 40ff5990-0191-4796-9717-32f7dd3e94d5 - check_date: '2025-06-13' - external: false - payroll_deadline: '2025-06-17T23:00:00Z' - totals: - employee_bonuses: '0.00' - employee_commissions: '0.00' - employee_cash_tips: '0.00' - employee_paycheck_tips: '0.00' - additional_earnings: '0.00' - owners_draw: '0.00' - benefits: '0.00' - check_amount: '0.00' - child_support_debit: '0.00' - company_debit: '0.00' - deferred_payroll_taxes: '0.00' - employee_benefits_deductions: '0.00' - employee_taxes: '0.00' - employer_taxes: '0.00' - gross_pay: '0.00' - imputed_pay: '0.00' - net_pay: '0.00' - net_pay_debit: '0.00' - other_deductions: '0.00' - reimbursement_debit: '0.00' - reimbursements: '0.00' - tax_debit: '0.00' - processing_request: - status: submit_success - errors: [] - created_at: '2025-06-16T16:58:03Z' - partner_owned_disbursement: - with_submit_bank_screenshot_credit_blocker: - uuid: b441a30b-2adb-489e-b7b7-9d094011a3f8 - employee_compensations: [] - submission_blockers: [] - credit_blockers: - - blocker_type: waiting_for_bank_screenshot - blocker_name: Waiting for Bank Screenshot - unblock_options: - - unblock_type: submit_bank_screenshot - check_date: '2025-06-13' - metadata: - information_request_uuid: d2234567-89ab-cdef-0123-456789abcdef - selected_option: - status: unresolved - payroll_uuid: b441a30b-2adb-489e-b7b7-9d094011a3f8 - company_uuid: 9aa93530-43d5-484e-b608-33214109420d - off_cycle: false - auto_payroll: false - processed: true - processed_date: '2025-06-16' - calculated_at: '2025-06-16T16:58:03Z' - pay_period: - start_date: '2025-05-25' - end_date: '2025-06-09' - pay_schedule_uuid: 40ff5990-0191-4796-9717-32f7dd3e94d5 - check_date: '2025-06-13' - external: false - payroll_deadline: '2025-06-17T23:00:00Z' - totals: - employee_bonuses: '0.00' - employee_commissions: '0.00' - employee_cash_tips: '0.00' - employee_paycheck_tips: '0.00' - additional_earnings: '0.00' - owners_draw: '0.00' - benefits: '0.00' - check_amount: '0.00' - child_support_debit: '0.00' - company_debit: '0.00' - deferred_payroll_taxes: '0.00' - employee_benefits_deductions: '0.00' - employee_taxes: '0.00' - employer_taxes: '0.00' - gross_pay: '0.00' - imputed_pay: '0.00' - net_pay: '0.00' - net_pay_debit: '0.00' - other_deductions: '0.00' - reimbursement_debit: '0.00' - reimbursements: '0.00' - tax_debit: '0.00' - processing_request: - status: submit_success - errors: [] - created_at: '2025-06-16T16:58:03Z' - partner_owned_disbursement: - with_respond_to_high_risk_fraud_rfi_credit_blocker: - uuid: b441a30b-2adb-489e-b7b7-9d094011a3f8 - employee_compensations: [] - submission_blockers: [] - credit_blockers: - - blocker_type: waiting_for_high_risk_fraud_rfi - blocker_name: Waiting for High Risk Fraud RFI - unblock_options: - - unblock_type: respond_to_high_risk_fraud_rfi - check_date: '2025-06-13' - metadata: - information_request_uuid: e3234567-89ab-cdef-0123-456789abcdef - selected_option: - status: pending_review - payroll_uuid: b441a30b-2adb-489e-b7b7-9d094011a3f8 - company_uuid: 9aa93530-43d5-484e-b608-33214109420d - off_cycle: false - auto_payroll: false - processed: true - processed_date: '2025-06-16' - calculated_at: '2025-06-16T16:58:03Z' - pay_period: - start_date: '2025-05-25' - end_date: '2025-06-09' - pay_schedule_uuid: 40ff5990-0191-4796-9717-32f7dd3e94d5 - check_date: '2025-06-13' - external: false - payroll_deadline: '2025-06-17T23:00:00Z' - totals: - employee_bonuses: '0.00' - employee_commissions: '0.00' - employee_cash_tips: '0.00' - employee_paycheck_tips: '0.00' - additional_earnings: '0.00' - owners_draw: '0.00' - benefits: '0.00' - check_amount: '0.00' - child_support_debit: '0.00' - company_debit: '0.00' - deferred_payroll_taxes: '0.00' - employee_benefits_deductions: '0.00' - employee_taxes: '0.00' - employer_taxes: '0.00' - gross_pay: '0.00' - imputed_pay: '0.00' - net_pay: '0.00' - net_pay_debit: '0.00' - other_deductions: '0.00' - reimbursement_debit: '0.00' - reimbursements: '0.00' - tax_debit: '0.00' - processing_request: - status: submit_success - errors: [] - created_at: '2025-06-16T16:58:03Z' - partner_owned_disbursement: - with_wait_for_reverse_wire_credit_blocker: - uuid: b441a30b-2adb-489e-b7b7-9d094011a3f8 - employee_compensations: [] - submission_blockers: [] - credit_blockers: - - blocker_type: waiting_for_reverse_wire - blocker_name: Waiting for Reverse Wire - unblock_options: - - unblock_type: wait_for_reverse_wire - check_date: '2025-06-13' - metadata: - reverse_wire_detail_id: 12345 - bank_account_last_four_digits: '1234' - selected_option: - status: resolved - payroll_uuid: b441a30b-2adb-489e-b7b7-9d094011a3f8 - company_uuid: 9aa93530-43d5-484e-b608-33214109420d - off_cycle: false - auto_payroll: false - processed: true - processed_date: '2025-06-16' - calculated_at: '2025-06-16T16:58:03Z' - pay_period: - start_date: '2025-05-25' - end_date: '2025-06-09' - pay_schedule_uuid: 40ff5990-0191-4796-9717-32f7dd3e94d5 - check_date: '2025-06-13' - external: false - payroll_deadline: '2025-06-17T23:00:00Z' - totals: - employee_bonuses: '0.00' - employee_commissions: '0.00' - employee_cash_tips: '0.00' - employee_paycheck_tips: '0.00' - additional_earnings: '0.00' - owners_draw: '0.00' - benefits: '0.00' - check_amount: '0.00' - child_support_debit: '0.00' - company_debit: '0.00' - deferred_payroll_taxes: '0.00' - employee_benefits_deductions: '0.00' - employee_taxes: '0.00' - employer_taxes: '0.00' - gross_pay: '0.00' - imputed_pay: '0.00' - net_pay: '0.00' - net_pay_debit: '0.00' - other_deductions: '0.00' - reimbursement_debit: '0.00' - reimbursements: '0.00' - tax_debit: '0.00' - processing_request: - status: submit_success - errors: [] - created_at: '2025-06-16T16:58:03Z' - partner_owned_disbursement: + description: Blocker message + metadata: + type: object + properties: + key: + type: string + description: A categorization of the migration blocker, e.g. "migrated_company" + Migration-Warning: + description: Migration warning that does not block company migration + type: object properties: - payroll_deadline: - "$ref": "#/components/schemas/Payroll-Deadline-Type" - check_date: - "$ref": "#/components/schemas/Payroll-Check-Date-Type" - processed: - "$ref": "#/components/schemas/Payroll-Processed-Type" - processed_date: - "$ref": "#/components/schemas/Payroll-Processed-Date-Type" - calculated_at: - "$ref": "#/components/schemas/Payroll-Calculated-At-Type" - uuid: - "$ref": "#/components/schemas/Payroll-Payroll-Uuid-Type" - payroll_uuid: - "$ref": "#/components/schemas/Payroll-Payroll-Uuid-Type" - company_uuid: - "$ref": "#/components/schemas/Payroll-Company-Uuid-Type" - off_cycle: - "$ref": "#/components/schemas/Payroll-Off-Cycle-Type" - off_cycle_reason: - "$ref": "#/components/schemas/Off-Cycle-Reason-Type" - auto_payroll: - "$ref": "#/components/schemas/Auto-Pilot-Type" - external: - "$ref": "#/components/schemas/Payroll-External-Type" - final_termination_payroll: - "$ref": "#/components/schemas/Payroll-Final-Termination-Payroll-Type" - withholding_pay_period: - "$ref": "#/components/schemas/Payroll-Withholding-Pay-Period-Type" - skip_regular_deductions: - "$ref": "#/components/schemas/Payroll-Skip-Regular-Deductions-Type" - fixed_withholding_rate: - "$ref": "#/components/schemas/Payroll-Fixed-Withholding-Rate-Type" - pay_period: - "$ref": "#/components/schemas/Payroll-Pay-Period-Type" - payroll_status_meta: - "$ref": "#/components/schemas/Payroll-Payroll-Status-Meta-Type" - totals: - "$ref": "#/components/schemas/Payroll-Totals-Type" - company_taxes: - "$ref": "#/components/schemas/Payroll-Company-Taxes-Type" - payroll_taxes: - "$ref": "#/components/schemas/Payroll-Taxes-Type" - payment_speed_changed: - "$ref": "#/components/schemas/Payroll-Payment-Speed-Changed-Type" - created_at: - "$ref": "#/components/schemas/Created-At-Type" - submission_blockers: - "$ref": "#/components/schemas/Payroll-Submission-Blockers-Type" - credit_blockers: - "$ref": "#/components/schemas/Payroll-Credit-Blockers-Type" - processing_request: - "$ref": "#/components/schemas/Payroll-Processing-Request" - partner_owned_disbursement: - "$ref": "#/components/schemas/Payroll-Partner-Owned-Disbursement-Type" - employee_compensations: + warnings: type: array - uniqueItems: false items: type: object - allOf: - - "$ref": "#/components/schemas/Payroll-Employee-Compensations-Type" - - "$ref": "#/components/schemas/Payroll-Employee-Compensations-Included" - Company-Bank-Account-Request: + properties: + error_key: + type: string + description: Error key + category: + type: string + description: Error category + message: + type: string + description: Warning message + metadata: + type: object + properties: + key: + type: string + description: A categorization of the migration warning, e.g. "marijuana_related_business" + Partner-Managed-Company-Migration-Readiness-Response: + description: '' + allOf: + - type: object + properties: + ready_to_migrate: + type: boolean + description: Indicates if the company is ready to be migrated. + company_uuid: + type: string + description: The company UUID + - "$ref": "#/components/schemas/Migration-Blocker" + - "$ref": "#/components/schemas/Migration-Warning" + x-examples: + Example: + ready_to_migrate: false + company_uuid: 39abf9b9-650b-4e67-89a0-389dc6ee8a71 + errors: + - error_key: base + category: invalid_operation + message: The operation is already performed for this company. + metadata: + key: migrated_company + warnings: [] + Partner-Managed-Company-Accept-Terms-Of-Service-Request: type: object + description: '' + required: + - email + - ip_address + - external_user_id properties: - routing_number: + email: type: string - description: The bank routing number - account_number: + description: The user's email address on Gusto. You can retrieve the user's email via company's `/admins`, `/employees`, `/signatories`, and `/contractors` endpoints. + ip_address: type: string - description: The bank account number - account_type: + description: The IP address of the user who viewed and accepted the Terms of Service. + external_user_id: type: string - description: The bank account type - enum: - - Checking - - Savings + description: The user ID on your platform. + x-examples: + Example: + ip_address: 192.168.1.2 + external_user_id: '2005648946132' + email: jsmith99@gmail.com + Partner-Managed-Company-Retrieve-Terms-Of-Service-Request: + type: object required: - - routing_number - - account_number - - account_type - Company-Suspension-List: - type: array - description: List of suspension records for a company. - items: - "$ref": "#/components/schemas/Company-Suspension" + - email + properties: + email: + type: string + description: The user's email address on Gusto. You can retrieve the user's email via company's `/admins`, `/employees`, `/signatories`, and `/contractors` endpoints. x-examples: - success_status: - - uuid: 3bd0fa7c-071e-4e85-a6bf-f73a69797694 - company_uuid: 3a0e3fb7-3d4b-4c7c-8ba0-9ce3c9f1f3be - effective_date: '2025-07-23' - reason: shutting_down - leaving_for: - reconcile_tax_method: refund_taxes - file_yearly_forms: false - file_quarterly_forms: false - comments: - tax_refunds: [] - - uuid: 2ad79a4e-2fbd-43ca-a77b-e9049e6cab15 - company_uuid: 3a0e3fb7-3d4b-4c7c-8ba0-9ce3c9f1f3be - effective_date: '2025-07-23' - reason: switching_provider - leaving_for: adp - reconcile_tax_method: refund_taxes - file_yearly_forms: false - file_quarterly_forms: false - comments: Company is transitioning to ADP for their payroll and HR needs - tax_refunds: [] - Company-Suspension-Creation-Errors: + Example: + email: jsmith99@gmail.com + Partner-Managed-Company-Terms-Of-Service-Response: + description: '' type: object - allOf: - - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + properties: + latest_terms_accepted: + type: boolean + description: Whether the latest terms have been accepted by the user. x-examples: - missing_required_fields: - errors: - - error_key: reconcile_tax_method - category: invalid_attribute_value - message: Reconcile tax method is required - - error_key: reason - category: invalid_attribute_value - message: Reason is required - - error_key: file_yearly_forms - category: invalid_attribute_value - message: File yearly forms is required - gusto_com_requires_support: - errors: - - error_key: leaving_for - category: invalid_attribute_value - message: Switching to Gusto.com must be processed by our Customer Support team - leaving_for_required: - errors: - - error_key: leaving_for - category: invalid_attribute_value - message: Leaving for is required when switching providers - switching_provider_cannot_pay_taxes: - errors: - - error_key: reconcile_tax_method - category: invalid_attribute_value - message: Reconcile tax method must be refund_taxes when switching to a new payroll provider - pay_taxes_requires_quarterly_filing: - errors: - - error_key: file_quarterly_forms - category: invalid_attribute_value - message: File quarterly forms must be true when paying withheld taxes - Time-Off-Request: + Example: + latest_terms_accepted: true + Provision-Create-Request-Body: type: object - description: The representation of a time off request. + required: + - user + - company + properties: + user: + type: object + description: Information for the user who will be the primary payroll administrator for the new company. + required: + - first_name + - last_name + - email + properties: + first_name: + type: string + description: The first name of the user who will be the primary payroll admin. + last_name: + type: string + description: The last name of the user who will be the primary payroll admin. + email: + type: string + description: The email of the user who will be the primary payroll admin. + phone: + type: string + description: The phone number of the user who will be the primary payroll admin. + company: + type: object + required: + - name + properties: + name: + type: string + description: The legal name of the company. + trade_name: + type: string + description: The name of the company. + ein: + type: string + description: The employer identification number (EIN) of the company. + states: + type: array + description: 'The states in which the company operates. States should be included by their two letter code, i.e. NY for New York. ' + items: + type: string + number_employees: + type: number + description: The number of employees in the company. + addresses: + type: array + uniqueItems: false + description: The locations for the company. This includes mailing, work, and filing addresses. + items: + type: object + properties: + street_1: + type: string + street_2: + type: + - string + - 'null' + city: + type: string + zip: + type: string + state: + type: string + phone: + type: string + is_primary: + type: string + description: Whether or not this is a primary address for the company. If set to true, the address will be used as the mailing and filing address for the company and will be added as a work location. If set to false or not included, the address will only be added as a work location for the company. If multiple addresses are included, only one should be marked as primary. + x-examples: + Example: + user: + first_name: Frank + last_name: Ocean + email: frank@example.com + phone: '2345558899' + company: + name: Frank's Ocean, LLC + trade_name: Frank's Ocean + tier: complete + ein: '123456789' + states: + - CO + - CA + number_employees: 8 + addresses: + - street_1: 1201 16th Street Mall + street_2: Suite 350 + city: Denver + zip: '80202' + state: CO + phone: '2345678900' + is_primary: 'true' + - street_1: 525 20th Street + city: San Francisco + zip: '94107' + state: CA + phone: '2345678901' + Provision-Created: + type: object + properties: + account_claim_url: + type: string + description: A URL where the user should be redirected to complete their account setup inside of Gusto. + readOnly: true + x-examples: + Example: + account_claim_url: https://app.gusto.com/claim_account/3456789 + Payroll-Digest: + type: object + description: A payroll digest batch request. x-examples: success_status: - uuid: 9145390f-0431-45ee-b8a0-6e7a8850d4cf - status: approved - employee_note: Vacation at Disney World! - employer_note: But Universal has Harry Potter World... - days: - '2019-06-01': '4.000' - '2019-06-02': '8.000' - '2019-06-03': '2.000' - request_type: vacation - policy_type: vacation - policy_uuid: ae382963-06b2-4b57-9780-8feda862bb70 - employee: - uuid: 05f8663b-5944-4cfb-910e-1ee0a6df7b42 - full_name: Jessica Gusto - approver: - uuid: 21d8dff4-ce09-4120-a274-3a5628bf6769 - full_name: Karen Gusto - initiator: - uuid: 05f8663b-5944-4cfb-910e-1ee0a6df7b42 - full_name: Jessica Gusto + uuid: a1b2c3d4-e5f6-7890-abcd-ef1234567890 + idempotency_key: 80a74f8b-2c16-45e5-9038-aa108849c6e6 + batch_action: create + status: pending properties: uuid: type: string - description: The UUID of the time off request. + format: uuid + description: The unique identifier of the payroll digest batch. readOnly: true + idempotency_key: + type: string + format: uuid + description: The idempotency key provided when creating the batch. + batch_action: + type: string + enum: + - create + description: The action being performed on the batch. status: type: string - description: The status of the time off request. enum: - pending - - approved - - declined - - consumed - readOnly: true - employee_note: + - processing + - completed + - failed + description: The lifecycle status of the batch request itself. Terminal values are `completed` (processing finished — inspect `results` and `exclusions` for per-company outcomes) and `failed` (request failed; can be retried). This is distinct from the per-company `status` returned inside `results[]` and `exclusions[]`. + required: + - uuid + - idempotency_key + - batch_action + - status + Payroll-Digest-Results: + type: object + description: A payroll digest batch with processing results. + x-examples: + success_status: + uuid: a1b2c3d4-e5f6-7890-abcd-ef1234567890 + idempotency_key: 80a74f8b-2c16-45e5-9038-aa108849c6e6 + status: completed + submitted_at: '2026-04-01T14:30:00Z' + completed_at: '2026-04-01T14:30:12Z' + submitted_items: 4 + processed_items: 2 + excluded_items: 2 + results: + - idx: 0 + entity_type: company + uuid: c1111111-1111-1111-1111-111111111111 + name: Acme Corporation + status: success + blockers: + - type: missing_bank_account + description: Company bank account not set up + payrolls: + - payroll_uuid: + payroll_type: regular + display_title: Run biweekly payroll + auto_payroll: false + status: ready_to_start + pay_period: + start_date: '2026-03-16' + end_date: '2026-03-29' + check_date: '2026-04-03' + run_payroll_by: '2026-03-31' + pay_schedule: + uuid: aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee + frequency: Every other week + custom_name: Custom - every 1st and 15th + totals: + - payroll_uuid: 11111111-2222-3333-4444-555555555555 + payroll_type: regular + display_title: Run biweekly payroll + auto_payroll: true + status: submitted + pay_period: + start_date: '2026-03-02' + end_date: '2026-03-15' + check_date: '2026-03-20' + run_payroll_by: '2026-03-17' + pay_schedule: + uuid: aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee + frequency: Every other week + custom_name: Custom - every 1st and 15th + totals: + total_debit_amount: '15234.56' + net_pay: '11456.78' + total_employer_cost: '16890.12' + - idx: 3 + entity_type: company + uuid: c2222222-2222-2222-2222-222222222222 + name: Widget Inc + status: success + payrolls: [] + exclusions: + - idx: 1 + entity_type: company + uuid: c3333333-3333-3333-3333-333333333333 + status: failed + category: not_found + message: Company not found. + - idx: 2 + entity_type: company + uuid: c4444444-4444-4444-4444-444444444444 + status: failed + category: company_inactive + message: Company is inactive or not fully onboarded. + properties: + uuid: type: string - description: A note about the time off request, from the employee to the employer. + format: uuid + description: The unique identifier of the payroll digest batch. readOnly: true - employer_note: + idempotency_key: type: string - description: A note about the time off request, from the employer to the employee. - readOnly: true - request_type: + format: uuid + description: The idempotency key provided when creating the batch. + status: type: string - description: The type of time off request. - deprecated: true enum: - - vacation - - sick - readOnly: true - policy_type: + - pending + - processing + - completed + - failed + description: The lifecycle status of the batch request itself. Terminal values are `completed` (processing finished — inspect `results` and `exclusions` for per-company outcomes) and `failed` (request failed; can be retried). This is distinct from the per-company `status` returned inside `results[]` and `exclusions[]`. + submitted_at: type: string - description: The type of the time off policy (e.g. vacation, sick). - readOnly: true - policy_uuid: - type: - - string - - 'null' - description: The UUID of the time off policy associated with this request. - readOnly: true - days: - description: An object that represents the days in the time off request. The keys of the object are the dates, formatted as a YYYY-MM-DD string. The values of the object are the number of hours requested off for each day, formatted as a string representation of a numeric decimal to the thousands place. - type: object - readOnly: true - employee: - type: object - description: '' - properties: - uuid: - type: string - description: The UUID of the employee the time off request is for. - readOnly: true - full_name: - type: string - description: The full name of the employee the time off request is for. - readOnly: true - readOnly: true - initiator: - type: - - object - - 'null' - description: '' - properties: - uuid: - type: string - description: The UUID of the employee who initiated the time off request. - readOnly: true - full_name: - type: string - description: The full name of the employee who initiated the time off request. - readOnly: true - readOnly: true - approver: - type: - - object - - 'null' - description: This value will be null if the request has not been approved. - properties: - uuid: - type: string - description: The UUID of the employee who approved the time off request. - readOnly: true - full_name: - type: string - description: The full name of the employee who approved the time off request. - readOnly: true - readOnly: true - Time-Off-Request-List: - type: array - items: - "$ref": "#/components/schemas/Time-Off-Request" - x-examples: - success_status: - - uuid: 9145390f-0431-45ee-b8a0-6e7a8850d4cf - status: approved - employee_note: Vacation at Disney World! - employer_note: But Universal has Harry Potter World... - days: - '2019-06-01': '4.000' - '2019-06-02': '8.000' - '2019-06-03': '2.000' - request_type: vacation - policy_type: vacation - policy_uuid: ae382963-06b2-4b57-9780-8feda862bb70 - employee: - uuid: 05f8663b-5944-4cfb-910e-1ee0a6df7b42 - full_name: Jessica Gusto - approver: - uuid: 21d8dff4-ce09-4120-a274-3a5628bf6769 - full_name: Karen Gusto - initiator: - uuid: 05f8663b-5944-4cfb-910e-1ee0a6df7b42 - full_name: Jessica Gusto - - uuid: 944cbbf4-8b13-4c45-babd-11ff13e17581 - status: pending - employee_note: Coming down with the flu - employer_note: '' - days: - '2019-02-01': '8.000' - request_type: sick - policy_type: sick - policy_uuid: bf493c7e-1a2d-4e5f-8c9a-3d7b6e4f2a1c - employee: - uuid: c2236d10-959a-4bb9-a21d-e14c6df447b6 - full_name: James Gusto - approver: - initiator: - uuid: c2236d10-959a-4bb9-a21d-e14c6df447b6 - full_name: James Gusto - Not-Found-Error-Object: - description: "Not Found \n \nThe requested resource does not exist. Make sure the provided ID/UUID is valid." - type: object + format: date-time + description: The timestamp when the batch was submitted. + completed_at: + type: + - string + - 'null' + format: date-time + description: The timestamp when the batch processing completed. + submitted_items: + type: + - integer + - 'null' + description: The number of companies submitted in the batch. + processed_items: + type: integer + description: The number of companies successfully processed. Only present once the batch reaches a terminal status. + excluded_items: + type: integer + description: The number of companies excluded from processing. Only present once the batch reaches a terminal status. + results: + type: array + description: Per-company results. Only present once the batch reaches a terminal status. Includes successfully processed companies (with their `payrolls` array, which may be empty when the company has no payrolls in the date window). + items: + type: object + properties: + idx: + type: integer + description: The index of this company in the original POST batch array. + entity_type: + type: string + enum: + - company + description: The type of entity this result represents. + uuid: + type: string + format: uuid + description: The UUID of the company. + name: + type: string + description: The legal/display name of the company. + status: + type: string + enum: + - success + - partial_success + - failed + description: The status of this company's digest computation. + blockers: + type: array + description: Reasons the company cannot currently run payroll. Applies to every payroll in this company's `payrolls` array — blockers are evaluated at the company level, not per payroll. Empty when there are no blockers. + items: + type: object + properties: + type: + type: string + description: A machine-readable blocker key (e.g. `missing_bank_account`). + description: + type: string + description: Human-readable description of the blocker. + payrolls: + type: array + description: Payrolls for this company within the digest date window (7 days past, 30–60 days future). May be empty. + items: + type: object + properties: + payroll_uuid: + type: + - string + - 'null' + format: uuid + description: UUID of the payroll. `null` for upcoming pay periods that have not been started yet (the `payrolls` API has not yet created a payroll record). Once a payroll is created, subsequent digest requests will include the real `payroll_uuid`. + payroll_type: + type: string + description: The type of payroll (e.g. `regular`, `new_hire`, `termination`, `transition`, `bonus`, `correction`). + display_title: + type: string + description: Partner-facing display title for this payroll (e.g. "Run biweekly payroll"). + auto_payroll: + type: boolean + description: Whether the company has auto-payroll enabled for this pay schedule. + status: + type: string + description: The lifecycle status of the payroll (e.g. `ready_to_start`, `in_progress`, `submitted`, `completed`, `failed`). + pay_period: + type: object + properties: + start_date: + type: + - string + - 'null' + format: date + description: First day of the pay period. + end_date: + type: + - string + - 'null' + format: date + description: Last day of the pay period. + check_date: + type: + - string + - 'null' + format: date + description: The date employees get paid. + run_payroll_by: + type: + - string + - 'null' + format: date + description: The deadline to run payroll for this pay period. + pay_schedule: + type: + - object + - 'null' + properties: + uuid: + type: string + format: uuid + description: UUID of the pay schedule. + frequency: + type: string + description: Human-friendly pay frequency (e.g. "Every other week"). + custom_name: + type: + - string + - 'null' + description: Custom name for the pay schedule, when set. + totals: + type: + - object + - 'null' + description: Pay totals. `null` when the payroll has not been calculated, or when the calculation is stale (the partner edited hours/earnings after the last calculation). + properties: + total_debit_amount: + type: string + description: Total amount debited from the company bank account (string-formatted decimal). + net_pay: + type: string + description: Total net pay across all employees on this payroll (string-formatted decimal). + total_employer_cost: + type: string + description: Total employer cost including taxes and benefits (string-formatted decimal). + exclusions: + type: array + description: Companies that could not be processed. Only present once the batch reaches a terminal status. Every UUID submitted in the POST batch appears in exactly one of `results` or `exclusions`. + items: + type: object + properties: + idx: + type: integer + description: The index of this company in the original POST batch array. + entity_type: + type: string + enum: + - company + description: The type of entity this exclusion represents. + uuid: + type: string + format: uuid + description: The UUID of the excluded company. + status: + type: string + enum: + - failed + description: The status of this company's digest computation. + category: + type: string + enum: + - not_found + - company_inactive + - duplicate + - internal_error + description: Machine-readable category for why the company was excluded. + message: + type: string + description: Human-readable explanation for the exclusion. required: - - errors + - uuid + - idempotency_key + - status + - submitted_at + Payroll-Digest-Conflict-Error: + type: object + description: Error response when a payroll digest idempotency key has already been used by the same partner. + x-examples: + conflict: + errors: + - error_key: idempotency_key + category: invalid_attribute_value + message: Idempotency key has already been used + metadata: + request_uuid: a1b2c3d4-e5f6-7890-abcd-ef1234567890 properties: errors: type: array items: type: object - required: - - error_key - - category properties: error_key: type: string - description: Specifies where the error occurs. Typically this key identifies the attribute/parameter related to the error. + description: The key identifying the error source. category: type: string - description: Specifies the type of error. The category provides error groupings and can be used to build custom error handling in your integration. + description: The error category. message: type: string - description: Provides details about the error - generally this message can be surfaced to an end user. - x-examples: - not_found: - errors: - - error_key: request - category: not_found - message: The requested resource was not found. - Contractor-Payment-For-Group-Preview: - description: Preview representation of a single contractor payment with nullable uuid. + description: Human-readable error message. + metadata: + type: object + properties: + request_uuid: + type: string + format: uuid + description: The UUID of the existing payroll digest batch that already used this idempotency key. + Employees-Annual-Fica-Wage-Report-Acceptance: type: object + description: Acceptance acknowledgement for an asynchronous employees annual FICA wage report. Returned with HTTP 202; poll the report status endpoint using `request_uuid`. + required: + - request_uuid + - company_uuid + - start_year + - end_year properties: - uuid: - type: - - string - - 'null' - description: The unique identifier of the contractor payment in Gusto. - readOnly: true - contractor_uuid: - type: string - description: The UUID of the contractor. - readOnly: true - bonus: - type: string - description: The bonus amount in the payment. - readOnly: true - hours: - type: string - description: The number of hours worked for the payment. - readOnly: true - payment_method: - type: string - description: The payment method. - enum: - - Direct Deposit - - Check - - Historical Payment - - Correction Payment - readOnly: true - reimbursement: - type: string - description: The reimbursement amount in the payment. - readOnly: true - status: - type: string - description: The status of the contractor payment. Will transition to `Funded` during payments processing if the payment should be funded, i.e. has `Direct Deposit` for payment method. Contractors payments with `Check` payment method will remain `Unfunded`. - enum: - - Funded - - Unfunded - hourly_rate: - type: string - description: The rate per hour worked for the payment. - readOnly: true - may_cancel: - type: boolean - description: Determine if the contractor payment can be cancelled. - readOnly: true - wage: - type: string - description: The fixed wage of the payment, regardless of hours worked. - readOnly: true - wage_type: + request_uuid: type: string - description: The wage type for the payment. - enum: - - Hourly - - Fixed - readOnly: true - wage_total: + format: uuid + description: The UUID of the report request. Use this to poll for report completion. + company_uuid: type: string - description: "(hours * hourly_rate) + wage + bonus" - readOnly: true - x-tags: + format: uuid + description: The UUID of the company. + start_year: + type: integer + description: The start year for the report. + end_year: + type: integer + description: The end year for the report. + x-examples: + accepted: + request_uuid: a1b2c3d4-e5f6-7890-abcd-ef1234567890 + company_uuid: 12345678-abcd-ef12-3456-7890abcdef12 + start_year: 2023 + end_year: 2024 + parameters: + VersionHeader: + name: X-Gusto-API-Version + in: header + required: false + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + information_request_uuid: + name: information_request_uuid + in: path + required: true + schema: + type: string + description: The UUID of the information request + securitySchemes: + CompanyAccessAuth: + type: http + scheme: bearer + description: Company-level authentication + SystemAccessAuth: + type: http + scheme: bearer + description: System-level authentication + responses: + Not-Found-Error-Object: + description: "Not Found \n \nThe requested resource does not exist. Make sure the provided UUID is valid.\n" + Unprocessable-Entity-Error-Object: + description: "Unprocessable Entity \n \nThis may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details.\n" + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + examples: + Basic: + value: + errors: + - error_key: base + category: payroll_blocker + message: Company must complete all onboarding requirements in order to run payroll. + metadata: + key: needs_onboarding + Resource: + value: + errors: + - error_key: first_name + category: invalid_attribute_value + message: First name is required + - error_key: date_of_birth + category: invalid_attribute_value + message: Date of birth is not a valid date + Nested: + value: + errors: + - error_key: contractor_payments + category: nested_errors + metadata: + contractor_uuid: 72ae4617-daa9-4ed7-85e0-18ed5d0ee835 + errors: + - error_key: hours + category: invalid_attribute_value + message: Ella Fitzgerald is paid fixed wage and hours cannot be set on a contractor payment + - error_key: contractor_payments + category: nested_errors + metadata: + contractor_uuid: 2d7bf62c-babf-4a12-8292-340e2d9cab28 + errors: + - error_key: wage + category: invalid_attribute_value + message: Isaiah Berlin is paid hourly and wage cannot be set on a contractor payment +paths: + "/v1/companies/{company_uuid}/ach_transactions": + get: + summary: Get all ACH transactions for a company + operationId: get-ach-transactions + security: + - CompanyAccessAuth: [] + description: |- + Fetches all ACH transactions for a company. + + scope: `ach_transactions:read` + tags: + - ACH Transactions + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + required: true + description: The UUID of the company + schema: + type: string + - name: contractor_payment_uuid + in: query + required: false + description: The UUID of the contractor payment + schema: + type: string + - name: payroll_uuid + in: query + required: false + description: The UUID of the payroll + schema: + type: string + - name: transaction_type + in: query + required: false + description: Used to filter the ACH transactions to only include those with a specific transaction type, such as "Credit employee pay". + schema: + type: string + - name: payment_direction + in: query + required: false + description: Used to filter the ACH transactions to only include those with a specific payment direction, either "credit" or "debit". + schema: + type: string + - name: page + in: query + required: false + description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + schema: + type: integer + - name: per + in: query + required: false + description: Number of objects per page. For majority of endpoints will default to 25 + schema: + type: integer + x-gusto-rswag: true + responses: + '200': + description: Example response + content: + application/json: + schema: + "$ref": "#/components/schemas/Ach-Transaction-List" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: achTransactions + x-speakeasy-name-override: getAll + "/v1/companies/{company_id}/admins": + get: + summary: Get all the admins at a company + operationId: get-v1-companies-company_id-admins + security: + - CompanyAccessAuth: [] + description: |- + Returns a list of all the admins at a company + + scope: `company_admin:read` + tags: + - Companies + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: page + in: query + required: false + description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + schema: + type: integer + - name: per + in: query + required: false + description: Number of objects per page. For majority of endpoints will default to 25 + schema: + type: integer + x-gusto-rswag: true + responses: + '200': + description: Success + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Admin" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: listAdmins + post: + summary: Create an admin for the company + operationId: post-v1-companies-company_id-admins + security: + - CompanyAccessAuth: [] + description: |- + Creates a new admin for a company. + If the email matches an existing user, this will create an admin account for the current user. Otherwise, this will create a new user. + + scope: `company_admin:write` + tags: + - Companies + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Admin" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Admin-Create-Request" + required: true + x-speakeasy-name-override: createAdmin + "/v1/benefits": + get: + summary: Get all supported benefits + operationId: get-v1-benefits + security: + - CompanyAccessAuth: [] + description: |- + Returns all benefits supported by Gusto. The benefit object in Gusto contains high level information about a particular benefit type and its tax considerations. When companies choose to offer a benefit, they are creating a Company Benefit object associated with a particular benefit. + + scope: `benefits:read` + tags: + - Company Benefits + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '200': + description: Successful + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Supported-Benefit" + x-speakeasy-group: companyBenefits + x-speakeasy-name-override: getAll + "/v1/benefits/{benefit_id}": + get: + summary: Get a supported benefit + operationId: get-v1-benefits-benefit_id + security: + - CompanyAccessAuth: [] + description: |- + Returns a benefit supported by Gusto. The benefit object in Gusto contains high level information about a particular benefit type and its tax considerations. When companies choose to offer a benefit, they are creating a Company Benefit object associated with a particular benefit. + + scope: `benefits:read` + tags: + - Company Benefits + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: benefit_id + in: path + description: The benefit type in Gusto. + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Supported-Benefit" + x-speakeasy-group: companyBenefits + x-speakeasy-name-override: getSupported + "/v1/benefits/{benefit_id}/requirements": + get: + summary: Get benefit fields requirements by benefit type + operationId: get-v1-benefits-benefits_id-requirements + security: + - CompanyAccessAuth: [] + description: |- + Returns the field requirements for a given benefit type. + + scope: `benefits:read` + tags: + - Company Benefits + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: benefit_id + in: path + description: The benefit type in Gusto. + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Benefit-Type-Requirements" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: companyBenefits + x-speakeasy-name-override: getRequirements + "/v1/companies/{company_id}": + get: + summary: Get a company + operationId: get-v1-companies + security: + - CompanyAccessAuth: [] + description: |- + Get a company. + + The employees:read scope is required to return home_address and non-work locations. + The company_admin:read scope is required to return primary_payroll_admin. + The signatories:read scope is required to return primary_signatory. + + scope: `companies:read` + tags: + - Companies + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Company" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: get + put: + summary: Update a company + operationId: put-v1-companies + security: + - CompanyAccessAuth: [] + description: |- + Update a company. + + scope: `companies:write` + tags: + - Companies + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Company" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + required: + - contractor_only + properties: + contractor_only: + type: boolean + description: 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. + required: true + x-speakeasy-name-override: update + "/v1/companies/{company_id}/attachments": + get: + summary: Get List of Company Attachments + operationId: get-v1-companies-attachments + security: + - CompanyAccessAuth: [] + description: |- + Retrieve a list of all the attachments uploaded by the company. + + ### Related guides + - [Manage company attachments](doc:manage-company-attachments) + + scope: `company_attachments:read` + tags: + - Company Attachment + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Successful + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Company-Attachment" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: companyAttachments + x-speakeasy-name-override: getList + post: + summary: Create Company Attachment and Upload File + operationId: post-v1-companies-attachment + security: + - CompanyAccessAuth: [] + description: |- + Upload a file and create a company attachment. We recommend uploading PDF files for optimal compatibility. However, the following file types are allowed: .qbb, .qbm, .gif, .jpg, .png, .pdf, .xls, .xlsx, .doc and .docx. + + ### Related guides + - [Manage company attachments](doc:manage-company-attachments) + + scope: `company_attachments:write` + tags: + - Company Attachment + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '201': + description: Created + content: + application/json: + schema: + "$ref": "#/components/schemas/Company-Attachment" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + multipart/form-data: + schema: + "$ref": "#/components/schemas/Company-Attachment-Create-Request-Body" + required: true + x-speakeasy-group: companyAttachments + x-speakeasy-name-override: create + "/v1/companies/{company_id}/attachments/{company_attachment_uuid}": + get: + summary: Get Company Attachment Details + operationId: get-v1-companies-attachment + security: + - CompanyAccessAuth: [] + description: |- + Retrieve the detail of an attachment uploaded by the company. + + ### Related guides + - [Manage company attachments](doc:manage-company-attachments) + + scope: `company_attachments:read` + tags: + - Company Attachment + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: company_attachment_uuid + in: path + description: The UUID of the company attachment + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Company-Attachment" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: companyAttachments + x-speakeasy-name-override: getDetails + "/v1/companies/{company_id}/attachments/{company_attachment_uuid}/download_url": + get: + summary: Get a temporary url to download the Company Attachment file + operationId: get-v1-companies-attachment-url + security: + - CompanyAccessAuth: [] + description: |- + Retrieve a temporary url to download an attachment file uploaded by the company. + + ### Related guides + - [Manage company attachments](doc:manage-company-attachments) + + scope: `company_attachments:read` + tags: + - Company Attachment + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: company_attachment_uuid + in: path + description: The UUID of the company attachment + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Company-Attachment-Download-Url" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: companyAttachment + x-speakeasy-name-override: getDownloadUrl + "/v1/companies/{company_id}/bank_accounts": + get: + summary: Get all company bank accounts + operationId: get-v1-companies-company_id-bank-accounts + security: + - CompanyAccessAuth: [] + description: |- + Returns company bank accounts. Currently, we only support a single default bank account per company. + + scope: `company_bank_accounts:read` + tags: + - Bank Accounts + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Company-Bank-Account" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: bankAccounts + x-speakeasy-name-override: get + post: + summary: Create a company bank account + operationId: post-v1-companies-company_id-bank-accounts + security: + - CompanyAccessAuth: [] + description: "This endpoint creates a new company bank account.\n\nUpon being created, two verification deposits are automatically sent to the bank account, and the bank account's verification_status is 'awaiting_deposits'.\n\nWhen the deposits are successfully transferred, the verification_status changes to 'ready_for_verification', at which point the verify endpoint can be used to verify the bank account.\nAfter successful verification, the bank account's verification_status is 'verified'.\n\n\n>\U0001F6A7 Warning\n>\n> If a default bank account exists, it will be disabled and the new bank account will replace it as the company's default funding method.\n\nscope: `company_bank_accounts:write`" + tags: + - Bank Accounts + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Bank account unchanged + content: + application/json: + schema: + "$ref": "#/components/schemas/Company-Bank-Account" + '201': + description: created + content: + application/json: + schema: + "$ref": "#/components/schemas/Company-Bank-Account" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: Invalid Attribute + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Company-Bank-Account-Request" + required: true + x-speakeasy-group: bankAccounts + x-speakeasy-name-override: create + "/v1/companies/{company_id}/bank_accounts/{bank_account_id}": + delete: + summary: Delete a company bank account + operationId: delete-v1-companies-company_id-bank-accounts-bank_account_id + security: + - CompanyAccessAuth: [] + description: |- + This endpoint disables a company bank account. + + A bank account cannot be disabled if it is used for any unprocessed payments. + + scope: `company_bank_accounts:write` + tags: + - Bank Accounts + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: bank_account_id + in: path + description: The UUID of the company bank account + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '204': + description: successful + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: Cannot delete bank account with unfunded payments + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + "/v1/companies/{company_id}/bank_accounts/{bank_account_uuid}/verify": + put: + summary: Verify a company bank account + operationId: put-v1-companies-company_id-bank-accounts-verify + security: + - CompanyAccessAuth: [] + description: |- + Verify a company bank account by confirming the two micro-deposits sent to the bank account. + + Note that the order of the two deposits specified in request parameters does not matter. + There's a maximum of 5 verification attempts, after which we will automatically initiate a new set of micro-deposits and require the bank account to be verified with the new micro-deposits. + + ### Bank account verification in demo + In the demo environment, use the `POST /v1/companies/{company_id}/bank_accounts/{bank_account_uuid}/send_test_deposits` endpoint to simulate the micro-deposits transfer and return the two amounts in the response. You can call this endpoint as many times as you wish to retrieve the values of the two micro-deposits. + + ### Webhooks + - `company.bank_account.verified`: Fires when the company bank account is successfully verified. + + ### Related guides + - [Manage company bank accounts](doc:manage-company-bank-accounts) + - [Bank Account Events](doc:bank-account-events) + + scope: `company_bank_accounts:write` + tags: + - Bank Accounts + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: bank_account_uuid + in: path + description: The UUID of the company bank account + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Company-Bank-Account" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Company-Bank-Account-Verify-Request" + required: true + x-speakeasy-group: bankAccounts + x-speakeasy-name-override: verify + "/v1/companies/{company_id}/company_benefits": + get: + summary: Get benefits for a company + operationId: get-v1-companies-company_id-company_benefits + security: + - CompanyAccessAuth: [] + description: |- + Company benefits represent the benefits that a company is offering to employees. This ties together a particular supported benefit with the company-specific information for the offering of that benefit. + + Note that company benefits can be deactivated only when no employees are enrolled. + + Benefits containing PHI are only visible to applications with the `company_benefits:read:phi` scope. + + scope: `company_benefits:read` + tags: + - Company Benefits + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: active + in: query + required: false + description: Whether the benefit is currently active + schema: + type: boolean + - name: enrollment_count + in: query + required: false + description: Whether to return employee enrollment count + schema: + type: boolean + - name: benefit_type + in: query + required: false + description: Filter by benefit type. Comma-separated list of benefit type IDs, i.e. `?benefit_type=5,105` + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Example response + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Company-Benefit" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: companyBenefits + x-speakeasy-name-override: list + post: + summary: Create a company benefit + operationId: post-v1-companies-company_id-company_benefits + security: + - CompanyAccessAuth: [] + description: |- + Company benefits represent the benefits that a company is offering to employees. This ties together a particular supported benefit with the company-specific information for the offering of that benefit. + + Note that company benefits can be deactivated only when no employees are enrolled. + + When the application has the `company_benefits:write:benefit_type_limited` data scope, the application can only create company benefits for benefit types that are permitted for the application. + + scope: `company_benefits:write` + tags: + - Company Benefits + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '201': + description: Created + content: + application/json: + schema: + "$ref": "#/components/schemas/Company-Benefit" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Company-Benefit-Create-Request" + required: true + x-speakeasy-group: companyBenefits + x-speakeasy-name-override: create + "/v1/company_benefits/{company_benefit_id}": + get: + summary: Get a company benefit + operationId: get-v1-company_benefits-company_benefit_id + security: + - CompanyAccessAuth: [] + description: |- + Company benefits represent the benefits that a company is offering to employees. This ties together a particular supported benefit with the company-specific information for the offering of that benefit. + + Note that company benefits can be deactivated only when no employees are enrolled. + + When with_employee_benefits parameter with true value is passed, employee_benefits:read scope is required to return employee_benefits. + + scope: `company_benefits:read` + tags: + - Company Benefits + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_benefit_id + in: path + description: The UUID of the company benefit + required: true + schema: + type: string + - name: with_employee_benefits + in: query + required: false + description: Whether to return employee benefits associated with the benefit + schema: + type: boolean + - name: include + in: query + required: false + schema: + type: string + enum: + - all_benefits + description: |- + Available options: + - all_benefits: If with_employee_benefits=true, include all effective dated benefits for each employee instead of only the current benefits. + x-gusto-rswag: true + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Company-Benefit-With-Employee-Benefits" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: companyBenefits + x-speakeasy-name-override: get + put: + summary: Update a company benefit + operationId: put-v1-company_benefits-company_benefit_id + security: + - CompanyAccessAuth: [] + description: |- + Company benefits represent the benefits that a company is offering to employees. This ties together a particular supported benefit with the company-specific information for the offering of that benefit. + + Note that company benefits can be deactivated only when no employees are enrolled. + + When the application has the `company_benefits:write:benefit_type_limited` data scope, the application can only update company benefits for benefit types that are permitted for the application. + + scope: `company_benefits:write` + tags: + - Company Benefits + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_benefit_id + in: path + description: The UUID of the company benefit + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Company-Benefit" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Company-Benefit-Update-Request" + required: true + x-speakeasy-group: companyBenefits + x-speakeasy-name-override: update + delete: + summary: Delete a company benefit + operationId: delete-v1-company_benefits-company_benefit_id + security: + - CompanyAccessAuth: [] + description: |- + 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 company benefit + - The benefit is not managed by a Partner or by Gusto (type must be 'External') + + When the application has the `company_benefits:write:benefit_type_limited` data scope, the application can only delete company benefits for benefit types that are permitted for the application. + + scope: `company_benefits:write` + tags: + - Company Benefits + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_benefit_id + in: path + description: The UUID of the company benefit + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '204': + description: No Content + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-speakeasy-name-override: delete + x-speakeasy-group: companyBenefits + "/v1/company_benefits/{company_benefit_id}/contribution_exclusions": + get: + summary: Get contribution exclusions for a company benefit + operationId: get-v1-company_benefits-company_benefit_id-contribution_exclusions + security: + - CompanyAccessAuth: [] + description: |- + Returns all contributions for a given company benefit and whether they are excluded or not. + + Currently this endpoint only works for 401-k and Roth 401-k benefit types. + + scope: `company_benefits:read` + tags: + - Company Benefits + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_benefit_id + in: path + description: The UUID of the company benefit + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Success + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Contribution-Exclusion" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + put: + summary: Update contribution exclusions for a company benefit + operationId: put-v1-company_benefits-company_benefit_id-contribution_exclusions + security: + - CompanyAccessAuth: [] + description: |- + Updates contribution exclusions for a given company benefit. + + Currently this endpoint only works for 401-k and Roth 401-k benefit types. + + scope: `company_benefits:write` + tags: + - Company Benefits + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_benefit_id + in: path + description: The UUID of the company benefit + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Example response + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Contribution-Exclusion" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Contribution-Exclusion-Update-Request" + required: true + "/v1/company_benefits/{company_benefit_id}/employee_benefits": + get: + summary: Get all employee benefits for a company benefit + operationId: get-v1-company_benefits-company_benefit_id-employee_benefits + security: + - CompanyAccessAuth: [] + description: |- + Employee benefits represent an employee enrolled in a particular company benefit. It includes information specific to that employee's enrollment. + + Returns an array of all employee benefits enrolled for this company benefit. + + Benefits containing PHI are only visible to applications with the `employee_benefits:read:phi` scope. + + scope: `employee_benefits:read` + tags: + - Company Benefits + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_benefit_id + in: path + description: The UUID of the company benefit + required: true + schema: + type: string + - name: page + in: query + required: false + description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + schema: + type: integer + - name: per + in: query + required: false + description: Number of objects per page. For majority of endpoints will default to 25 + schema: + type: integer + - name: include + in: query + required: false + schema: + type: string + enum: + - all_benefits + description: |- + Available options: + - all_benefits: Include all effective dated benefits for each employee instead of only the current benefits. + x-gusto-rswag: true + responses: + '200': + description: Success + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Employee-Benefit" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: getEmployeeBenefits + x-speakeasy-group: companyBenefits + put: + summary: Bulk update employee benefits for a company benefit + operationId: put-v1-company_benefits-company_benefit_id-employee_benefits + security: + - CompanyAccessAuth: [] + description: |- + Employee benefits represent an employee enrolled in a particular company benefit. It includes information specific to that employee's enrollment. + + Create or update(if the employee is already enrolled in the company benefit previously) an employee benefit for the company benefit. + + Benefits containing PHI are only visible to applications with the `employee_benefits:read:phi` scope. + + When the application has the `employee_benefits:write:benefit_type_limited` data scope, the application can only create or update employee benefits for benefit types that are permitted for the application. + + scope: `employee_benefits:write` + tags: + - Company Benefits + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_benefit_id + in: path + description: The UUID of the company benefit + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Success + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Employee-Benefit" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Benefit-Bulk-Update-Request" + required: true + x-speakeasy-group: companyBenefits + x-speakeasy-name-override: updateEmployeeBenefits + "/v1/company_benefits/{company_benefit_id}/summary": + get: + summary: Get company benefit summary by company benefit id. + operationId: get-v1-benefits-company_benefit_id-summary + security: + - CompanyAccessAuth: [] + description: |- + Returns summary benefit data for the requested company benefit id. + + Benefits containing PHI are only visible to applications with the `company_benefits:read:phi` scope. + + scope: `company_benefits:read` + tags: + - Company Benefits + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_benefit_id + in: path + description: The UUID of the company benefit + required: true + schema: + type: string + - name: start_date + in: query + required: false + description: The start date for which to retrieve company benefit summary + example: '2022-01-01' + schema: + type: string + - name: end_date + in: query + required: false + description: The end date for which to retrieve company benefit summary. If left empty, defaults to today's date. + example: '2022-12-31' + schema: + type: string + - name: detailed + in: query + required: false + description: Display employee payroll item summary + schema: + type: boolean + x-gusto-rswag: true + responses: + '200': + description: Benefit summary response + content: + application/json: + schema: + "$ref": "#/components/schemas/Benefit-Summary" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: companyBenefits + x-speakeasy-name-override: getSummary + "/v1/companies/{company_id}/custom_fields": + get: + summary: Get the custom fields of a company + operationId: get-v1-companies-company_id-custom_fields + security: + - CompanyAccessAuth: [] + description: |- + Returns a list of the custom fields of the company. Useful when you need to know the schema of custom fields for an entire company. + + scope: `companies:read` + tags: + - Companies + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: page + in: query + required: false + description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + schema: + type: integer + - name: per + in: query + required: false + description: Number of objects per page. For majority of endpoints will default to 25 + schema: + type: integer + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Company-Custom-Field-List" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: getCustomFields + "/v1/companies/{company_id}/forms": + get: + summary: Get all company forms + operationId: get-v1-company-forms + security: + - CompanyAccessAuth: [] + description: |- + Get a list of all company's forms + + ### Related guides + - [Company Forms](doc:company-form) + + scope: `company_forms:read` + tags: + - Company Forms + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: sort_by + in: query + required: false + schema: + type: string + pattern: "^(created_at|name|year|quarter|draft|document_content_type)(:(asc|desc))?(,(created_at|name|year|quarter|draft|document_content_type)(:(asc|desc))?)*$" + example: created_at:asc + description: 'Sort by one or more fields. Options: created_at, name, year, quarter, draft, document_content_type. Append `:asc` or `:desc` to specify direction (e.g., `created_at:asc`). Defaults to ascending.' + - name: page + in: query + required: false + description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + schema: + type: integer + - name: per + in: query + required: false + description: Number of objects per page. For majority of endpoints will default to 25 + schema: + type: integer + x-gusto-rswag: true + responses: + '200': + description: Success + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Form" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: getAll + x-speakeasy-group: companyForms + "/v1/forms/{form_id}": + get: + summary: Get a company form + operationId: get-v1-company-form + security: + - CompanyAccessAuth: [] + description: |- + Get a company form + + scope: `company_forms:read` + tags: + - Company Forms + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: form_id + in: path + description: The UUID of the form + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Form" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: companyForms + x-speakeasy-name-override: get + "/v1/forms/{form_id}/pdf": + get: + summary: Get a company form pdf + operationId: get-v1-company-form-pdf + security: + - CompanyAccessAuth: [] + description: |- + Get the link to the form PDF + + scope: `company_forms:read` + tags: + - Company Forms + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: form_id + in: path + description: The UUID of the form + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Form-Pdf" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: getPdf + x-speakeasy-group: companyForms + "/v1/forms/{form_id}/sign": + put: + summary: Sign a company form + operationId: put-v1-company-form-sign + security: + - CompanyAccessAuth: [] + description: |- + Sign a company form. Company forms must be signed by the company signatory. + + scope: `company_forms:sign` + tags: + - Company Forms + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: form_id + in: path + description: The UUID of the form + required: true + schema: + type: string + - name: x-gusto-client-ip + in: header + required: false + description: Optional header to supply the IP address. This can be used to supply the IP address for signature endpoints instead of the signed_by_ip_address parameter. + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Form" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + properties: + signature_text: + type: string + description: The signature + agree: + type: boolean + description: Whether you agree to sign electronically + signed_by_ip_address: + type: string + description: The IP address of the signatory who signed the form. Both IPv4 AND IPv6 are supported. You must provide the IP address with either this parameter OR you can leave out this parameter and set the IP address in the request header using the `x-gusto-client-ip` header instead. + required: + - signature_text + - agree + required: true + x-speakeasy-group: companyForms + x-speakeasy-name-override: sign + "/v1/companies/{company_id}/industry_selection": + get: + summary: Get a company industry selection + operationId: get-v1-company-industry + security: + - CompanyAccessAuth: [] + description: |- + Returns the industry classification for a company, including NAICS code, SIC codes, and industry title. + + scope: `companies:read` + tags: + - Industry Selection + x-gusto-integration-type: + - embedded + parameters: + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Industry" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: industrySelection + x-speakeasy-name-override: get + put: + summary: Update a company industry selection + operationId: put-v1-company-industry + security: + - CompanyAccessAuth: [] + description: |- + Update the industry classification for a company by passing in a [NAICS code](https://www.naics.com). + + Optionally provide an industry title and [SIC codes](https://siccode.com/). If you do not provide SIC codes, + we will use the NAICS code to perform an internal lookup. + + Our UI leverages [Middesk API](https://docs.middesk.com/reference/introduction) to determine industry + classification codes. + + scope: `companies:write` + tags: + - Industry Selection + x-gusto-integration-type: + - embedded + parameters: + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '201': + description: Created + content: + application/json: + schema: + "$ref": "#/components/schemas/Industry" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Company-Industry-Selection-Required-Body" + required: true + x-speakeasy-group: industrySelection + x-speakeasy-name-override: update + "/v1/companies/{company_uuid}/notifications": + get: + summary: Get notifications for company + operationId: get-company-notifications + security: + - CompanyAccessAuth: [] + description: |- + Returns all notifications relevant for the given company. + + scope: `notifications:read` + tags: + - Notifications + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: company_uuid + in: path + description: The UUID of the company for which you would like to return notifications + required: true + schema: + type: string + - name: status + in: query + schema: + type: string + enum: + - open + - expired + - resolved + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: page + in: query + required: false + description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + schema: + type: integer + - name: per + in: query + required: false + description: Number of objects per page. For majority of endpoints will default to 25 + schema: + type: integer + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Notifications-List" + "/v1/companies/{company_uuid}/onboarding_status": + get: + summary: Get company onboarding status + operationId: get-v1-company-onboarding-status + security: + - CompanyAccessAuth: [] + description: |- + Retrieves a company's onboarding status, including whether onboarding is complete and the list of + required onboarding steps with their respective completion state. + + scope: `company_onboarding_status:read` + tags: + - Companies + x-gusto-integration-type: + - embedded + parameters: + - name: company_uuid + in: path + description: The UUID of the company + example: 7b1d0df1-6403-4a06-8768-c1dd7d24d27a + required: true + schema: + type: string + - name: additional_steps + in: query + required: false + example: external_payroll + description: Comma-delimited string of additional onboarding steps to include. Currently only supports the value "external_payroll". + schema: + type: string + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Company-Onboarding-Status" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: getOnboardingStatus + "/v1/companies/{company_uuid}/finish_onboarding": + put: + summary: Finish company onboarding + operationId: get-v1-company-finish-onboarding + security: + - CompanyAccessAuth: [] + description: |- + Finalize a company's onboarding process. + + ### Approve a company in demo + + After a company is finished onboarding, Gusto requires an additional step to review and approve that company. + The company onboarding status is "onboarding_completed": false, until the API call is made to finish company + onboarding. In production environments, this step is required for risk-analysis purposes. + + We provide the endpoint `PUT '/v1/companies/{company_uuid}/approve'` to facilitate company approvals in the demo environment. + + ```shell + PUT '/v1/companies/89771af8-b964-472e-8064-554dfbcb56d9/approve' + + # Response: Company object, with company_status: 'Approved' + ``` + + scope: `companies:write` + tags: + - Companies + x-gusto-integration-type: + - embedded + parameters: + - name: company_uuid + in: path + description: The UUID of the company + example: 7b1d0df1-6403-4a06-8768-c1dd7d24d27a + required: true + schema: + type: string + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Company-Onboarding-Status" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-speakeasy-name-override: finishOnboarding + "/v1/companies/{company_uuid}/payment_configs": + get: + summary: Get a company's payment configs + operationId: get-v1-company-payment-configs + security: + - CompanyAccessAuth: [] + description: |- + Get payment speed configurations for the company: payment speed (1-day, 2-day, or 4-day ACH), fast payment limit, partner-owned disbursement setting, and earned fast ACH blockers when applicable. 1-day is only available to partners that opt in. + + ### Related guides + - [Payroll Processing Speeds](doc:2-day-vs-4-day) + + scope: `company_payment_configs:read` + tags: + - Payment Configs + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Payment-Configs" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: get + x-speakeasy-group: paymentConfigs + put: + summary: Update a company's payment configs + operationId: put-v1-company-payment-configs + security: + - CompanyAccessAuth: [] + description: |- + Update payment speed, fast payment limit, and/or partner-owned disbursement for a company. + + At least one of `payment_speed`, `fast_payment_limit`, or `partner_owned_disbursement` is required. + 1-day payment speed is only applicable to partners that opt in. 1-day is not allowed when AutoPilot is enabled. + + ### Related guides + - [Payroll Processing Speeds](doc:2-day-vs-4-day) + + scope: `company_payment_configs:write` + tags: + - Payment Configs + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Payment-Configs" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Payment-Configs-Update-Request" + required: true + x-speakeasy-group: paymentConfigs + x-speakeasy-name-override: update + "/v1/companies/{company_uuid}/suspensions": + get: + summary: Get suspensions for this company + operationId: get-companies-company_uuid-suspensions + security: + - CompanyAccessAuth: [] + description: "Get existing suspension records for this company. A company may have multiple suspension records if they have suspended their Gusto account more than once.\n\n>\U0001F4D8 To check if company is already suspended\n>\n> To determine if a company is _currently_ suspended, use the `is_suspended` and `company_status` fields in the [Get a company](https://docs.gusto.com/embedded-payroll/reference/get-v1-companies) endpoint.\n\nscope: `company_suspensions:read`" + tags: + - Companies + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + required: true + description: The UUID of the company + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Successful response + content: + application/json: + schema: + "$ref": "#/components/schemas/Company-Suspension-List" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: companies.suspensions + x-speakeasy-name-override: get + post: + summary: Suspend a company's account + operationId: post-companies-company_uuid-suspensions + security: + - CompanyAccessAuth: [] + description: |- + Use this endpoint to suspend a company. After suspension, company will no longer be able to run payroll but will retain access to their information, such as retrieving employee info or retrieving past payrolls. + + scope: `company_suspensions:write` + tags: + - Companies + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + required: true + description: The UUID of the company + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Successful response + content: + application/json: + schema: + "$ref": "#/components/schemas/Company-Suspension" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Company-Suspension-Creation-Errors" + requestBody: + content: + application/json: + schema: + type: object + required: + - file_quarterly_forms + - file_yearly_forms + - reconcile_tax_method + - reason + properties: + file_quarterly_forms: + type: boolean + description: Should Gusto file quarterly tax forms on behalf of the company? The correct answer can depend on why the company is suspending their account, and how taxes are being reconciled. + file_yearly_forms: + type: boolean + description: Should Gusto file yearly tax forms on behalf of the company? The correct answer can depend on why the company is suspending their account, and how taxes are being reconciled. + reconcile_tax_method: + type: string + enum: + - pay_taxes + - refund_taxes + description: How Gusto will handle taxes already collected. + comments: + type: string + description: User-supplied comments describing why they are suspending their account. Required if the user is leaving for another provider and selects "other" instead of a defined provider. + reason: + type: string + enum: + - switching_provider + - shutting_down + - acquired + - no_more_employees + - changing_ein_or_entity_type + description: "Explanation for why the company is suspending their account.\n\n> \U0001F6A7 FEIN or entity type changes require Customer Support\n> If a company is switching FEIN or changing their entity type, this change must be performed by Gusto Customer Support and cannot be performed via the API at this time.\n" + leaving_for: + type: string + enum: + - accountant + - adp + - adp_total_source + - bamboo_hr + - bank_or_financial_institution + - check + - deel + - gusto_com + - homebase + - insperity + - intuit_or_quickbooks + - justworks + - manual + - namely + - onpay + - other + - oyster + - patriot + - paychex + - paycom + - paylocity + - remote + - rippling + - square + - surepayroll + - trinet + - velocity_global + - zenefits + description: "The competitor the company is switching to. Required if `reason` is `'switching_provider'`.\n\n> \U0001F6A7 Switching to Gusto requires Customer Support\n> If `'gusto_com'` is selected, this change must be completed by Gusto Customer Support and cannot be performed via the API. This endpoint will return a 422 error in that case.\n" + required: true + x-speakeasy-group: companies.suspensions + x-speakeasy-name-override: suspend + "/v1/companies/{company_uuid}/tax_requirements": + get: + summary: Get all tax requirements for a company + operationId: get-v1-companies-company_uuid-tax_requirements + security: + - CompanyAccessAuth: [] + description: |- + Retrieves all states for which a company has tax requirements, along with a boolean indicating whether tax setup + is complete for each state. Use this to determine which states still need tax setup during company onboarding. + + scope: `company_tax_requirements:read` + tags: + - Tax Requirements + x-gusto-integration-type: + - embedded + parameters: + - name: company_uuid + in: path + required: true + description: The UUID of the company + schema: + type: string + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Tax-Requirement-States-List" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: taxRequirements + x-speakeasy-name-override: getAll + "/v1/companies/{company_uuid}/tax_requirements/{state}": + get: + summary: Get tax requirements for a state + operationId: get-v1-companies-company_uuid-tax_requirements-state + security: + - CompanyAccessAuth: [] + description: |- + Retrieves the detailed tax requirements for a specific state. The response includes requirement sets grouped by + category (e.g., registrations, tax rates, deposit schedules), each containing individual requirements with their + current values, labels, and metadata describing the expected input format. + + Use this to build dynamic UIs for tax setup or to read the current tax configuration for a state. + + scope: `company_tax_requirements:read` + tags: + - Tax Requirements + x-gusto-integration-type: + - embedded + parameters: + - name: company_uuid + in: path + required: true + description: The UUID of the company + schema: + type: string + - name: state + in: path + required: true + description: The two-letter state abbreviation + example: CA + schema: + type: string + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: scheduling + in: query + required: false + description: When true, return "new" requirement sets with valid `effective_from` dates that are available to save new effective-dated values. + schema: + type: boolean + x-gusto-rswag: true + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Tax-Requirements-State" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: taxRequirements + x-speakeasy-name-override: get + put: + summary: Update tax requirements for a state + operationId: put-v1-companies-company_uuid-tax_requirements-state + security: + - CompanyAccessAuth: [] + description: |- + Updates the tax requirement answers for a specific state. Submit answers to the requirement questions returned + by [GET /v1/companies/{company_uuid}/tax_requirements/{state}](ref:get-v1-companies-company_uuid-tax_requirements-state). + + ### Prerequisites + + 1. Retrieve current requirements via [GET /v1/companies/{company_uuid}/tax_requirements/{state}](ref:get-v1-companies-company_uuid-tax_requirements-state) + 2. Ensure that each requirement set that you're updating includes the correct `key`, `state`, and `effective_from` values from the GET response + + scope: `company_tax_requirements:write` + tags: + - Tax Requirements + x-gusto-integration-type: + - embedded + parameters: + - name: company_uuid + in: path + required: true + description: The UUID of the company + schema: + type: string + - name: state + in: path + required: true + description: The two-letter state abbreviation + example: CA + schema: + type: string + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '200': + description: Success + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + properties: + requirement_sets: + "$ref": "#/components/schemas/Tax-Requirement-Set-Update" + required: true + x-speakeasy-group: taxRequirements + x-speakeasy-name-override: updateState + "/v1/companies/{company_id}/federal_tax_details": + get: + summary: Get a company's federal tax details + operationId: get-v1-companies-company_id-federal_tax_details + security: + - CompanyAccessAuth: [] + description: |- + Retrieves a company's federal tax details including EIN verification status, tax payer type, filing form, and other federal tax configuration. + + scope: `company_federal_taxes:read` + tags: + - Federal Tax Details + x-gusto-integration-type: + - embedded + parameters: + - name: company_id + in: path + description: The UUID of the company + example: 7b1d0df1-6403-4a06-8768-c1dd7d24d27a + required: true + schema: + type: string + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Federal-Tax-Details" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: federalTaxDetails + x-speakeasy-name-override: get + put: + summary: Update a company's federal tax details + operationId: put-v1-companies-company_id-federal_tax_details + security: + - CompanyAccessAuth: [] + description: |- + Updates a company's federal tax details including EIN, legal name, tax payer type, filing form, and S-Corp + taxation status. This information is required to onboard a company for use with Gusto Embedded Payroll. + + ### Prerequisites + Before calling this endpoint, retrieve the current federal tax details and `version` via [GET /v1/companies/{company_id}/federal_tax_details](ref:get-v1-companies-company_id-federal_tax_details) + + ### Webhooks + - `company.updated`: Fires when federal tax details for a company are successfully updated + + **Setup:** [POST /v1/webhook_subscriptions](ref:post-v1-webhook-subscription) with `subscription_types`: `["Company"]` + + scope: `company_federal_taxes:write` + tags: + - Federal Tax Details + x-gusto-integration-type: + - embedded + parameters: + - name: company_id + in: path + description: The UUID of the company + example: 7b1d0df1-6403-4a06-8768-c1dd7d24d27a + required: true + schema: + type: string + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Federal-Tax-Details" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '409': + description: Conflict + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Federal-Tax-Details-Update" + required: true + x-speakeasy-group: federalTaxDetails + x-speakeasy-name-override: update + "/v1/jobs/{job_id}/compensations": + get: + summary: Get compensations for a job + operationId: get-v1-jobs-job_id-compensations + security: + - CompanyAccessAuth: [] + description: |- + Compensations contain information on how much is paid out for a job. Jobs may have many compensations, but only one that is active. The current compensation is the one with the most recent `effective_date`. + + *Note: Currently the API does not support creating multiple compensations per job - creating a compensation with the same job_uuid as another will fail with a relevant error.* + + Use `flsa_status` to determine if an employee is eligible for overtime + By default the API returns only the current compensation - use the `include` parameter to return all compensations. + + scope: `compensations:read` + tags: + - Jobs and Compensations + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: job_id + in: path + description: The UUID of the job + required: true + schema: + type: string + - name: page + in: query + required: false + description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + schema: + type: integer + - name: per + in: query + required: false + description: Number of objects per page. For majority of endpoints will default to 25 + schema: + type: integer + - name: include + in: query + required: false + schema: + type: string + enum: + - all_compensations + description: | + Available options: + - all_compensations: Include all effective dated compensations for each job instead of only the current compensation + x-gusto-rswag: true + responses: + '200': + description: Successful + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Compensation" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: getCompensations + x-speakeasy-group: jobsAndCompensations + post: + summary: Create a compensation + operationId: post-v1-compensations-compensation_id + security: + - CompanyAccessAuth: [] + description: |- + Compensations contain information on how much is paid out for a job. Jobs may have many compensations, but only one that is active. The current compensation is the one with the most recent `effective_date`. + + ### Prerequisites + Before calling this endpoint: + 1. A [job](ref:post-v1-jobs-job_id) must exist for the employee + + ### Webhooks + - `employee_job_compensation.created`: Fires when a compensation is successfully created + + scope: `compensations:write` + tags: + - Jobs and Compensations + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: job_id + in: path + description: The UUID of the job + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '201': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Compensation" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Compensations-Request-Body" + required: true + x-speakeasy-group: jobsAndCompensations + x-speakeasy-name-override: createCompensation + "/v1/compensations/{compensation_id}": + get: + summary: Get a compensation + operationId: get-v1-compensations-compensation_id + security: + - CompanyAccessAuth: [] + description: |- + Compensations contain information on how much is paid out for a job. Jobs may have many compensations, but only one that is active. The current compensation is the one with the most recent `effective_date`. + + scope: `compensations:read` + tags: + - Jobs and Compensations + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: compensation_id + in: path + description: The UUID of the compensation + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Compensation" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: jobsAndCompensations + x-speakeasy-name-override: getCompensation + put: + summary: Update a compensation + operationId: put-v1-compensations-compensation_id + security: + - CompanyAccessAuth: [] + description: |- + Compensations contain information on how much is paid out for a job. Jobs may have many compensations, but only one that is active. The current compensation is the one with the most recent `effective_date`. + + ### Webhooks + - `employee_job_compensation.updated`: Fires when a compensation is successfully updated + + scope: `compensations:write` + tags: + - Jobs and Compensations + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: compensation_id + in: path + description: The UUID of the compensation + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Compensation" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Compensations-Update-Request-Body" + required: true + x-speakeasy-group: jobsAndCompensations + x-speakeasy-name-override: updateCompensation + delete: + summary: Delete a compensation + operationId: delete-v1-compensations-compensation_id + security: + - CompanyAccessAuth: [] + description: |- + Compensations contain information on how much is paid out for a job. Jobs may have many compensations, but only one that is active. The current compensation is the one with the most recent `effective_date`. This endpoint deletes a compensation for a job that hasn't been processed on payroll. + + ### Webhooks + - `employee_job_compensation.destroyed`: Fires when a compensation is successfully deleted + + scope: `compensations:write` + tags: + - Jobs and Compensations + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: compensation_id + in: path + description: The UUID of the compensation + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '204': + description: No Content + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-speakeasy-group: jobsAndCompensations + x-speakeasy-name-override: deleteCompensation + "/v1/contractors/{contractor_uuid}/bank_accounts": + get: + summary: Get all contractor bank accounts + operationId: get-v1-contractors-contractor_uuid-bank_accounts + security: + - CompanyAccessAuth: [] + description: |- + Returns all contractor bank accounts. + + scope: `contractor_payment_methods:read` + tags: + - Contractor Payment Method + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: contractor_uuid + in: path + description: The UUID of the contractor + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Example response + content: + application/json: + schema: + "$ref": "#/components/schemas/Contractor-Bank-Account-List" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: getBankAccounts + x-speakeasy-group: contractorPaymentMethod + post: + summary: Create a contractor bank account + operationId: post-v1-contractors-contractor_uuid-bank_accounts + security: + - CompanyAccessAuth: [] + description: |- + Creates a contractor bank account. + + Note: We currently only support one bank account per contractor. Using this endpoint on a contractor who already has a bank account will just replace it. + + scope: `contractor_payment_methods:write` + tags: + - Contractor Payment Method + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: contractor_uuid + in: path + description: The UUID of the contractor + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '201': + description: Example response + content: + application/json: + schema: + "$ref": "#/components/schemas/Contractor-Bank-Account" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Contractor-Bank-Account-Create-Request-Body" + required: true + x-speakeasy-group: contractorPaymentMethods + x-speakeasy-name-override: createBankAccount + "/v1/contractors/{contractor_uuid}/forms": + get: + summary: Get all contractor forms + operationId: get-v1-contractor-forms + security: + - CompanyAccessAuth: [] + description: |- + Get a list of all contractor's forms + + scope: `contractor_forms:read` + tags: + - Contractor Forms + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: contractor_uuid + in: path + description: The UUID of the contractor + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Example response + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Form_1099" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: contractorForms + x-speakeasy-name-override: list + "/v1/contractors/{contractor_uuid}/forms/{form_id}": + get: + summary: Get a contractor form + operationId: get-v1-contractor-form + security: + - CompanyAccessAuth: [] + description: |- + Get a contractor form + + scope: `contractor_forms:read` + tags: + - Contractor Forms + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: contractor_uuid + in: path + description: The UUID of the contractor + required: true + schema: + type: string + - name: form_id + in: path + description: The UUID of the form + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Example response + content: + application/json: + schema: + "$ref": "#/components/schemas/Form_1099" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: contractorForms + x-speakeasy-name-override: get + "/v1/contractors/{contractor_uuid}/forms/{form_id}/pdf": + get: + summary: Get the contractor form pdf + operationId: get-v1-contractor-form-pdf + security: + - CompanyAccessAuth: [] + description: |- + Get the link to the form PDF + + scope: `contractor_forms:read` + tags: + - Contractor Forms + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: contractor_uuid + in: path + description: The UUID of the contractor + required: true + schema: + type: string + - name: form_id + in: path + description: The UUID of the form + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Example response + content: + application/json: + schema: + "$ref": "#/components/schemas/Form-Pdf" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: contractorForms + x-speakeasy-name-override: getPdf + "/v1/contractors/{contractor_uuid}/address": + get: + summary: Get a contractor address + operationId: get-v1-contractors-contractor_uuid-address + security: + - CompanyAccessAuth: [] + tags: + - Contractors + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: contractor_uuid + in: path + description: The UUID of the contractor + required: true + schema: + type: string + description: |- + The address of a contractor is used to determine certain tax information about them. Addresses are geocoded on create and update to ensure validity. + + scope: `contractors:read` + x-gusto-rswag: true + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Contractor-Address" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: getAddress + put: + summary: Create or update a contractor's address + operationId: put-v1-contractors-contractor_uuid-address + security: + - CompanyAccessAuth: [] + tags: + - Contractors + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: contractor_uuid + in: path + description: The UUID of the contractor + required: true + schema: + type: string + description: "The address of a contractor is used to determine certain tax information about them. Addresses are geocoded on create and update to ensure validity.\n\n> \U0001F6A7 Contractors can only have one address.\n>\n> When a contractor is created, an address is created for them by default. Updating the address will replace the existing address.\n\nscope: `contractors:write`" + x-gusto-rswag: true + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Contractor-Address" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Contractor-Address-Update-Body" + required: true + x-speakeasy-name-override: updateAddress + "/v1/companies/{company_id}/contractors/payment_details": + get: + summary: List contractor payment details + operationId: get-v1-companies-company_id-contractors-payment_details + security: + - CompanyAccessAuth: [] + description: |- + Get payment details for contractors in a company. This endpoint returns a list of all contractors + associated with the specified company, including their payment methods and bank account details + if they are paid via direct deposit. + + For contractors paid by direct deposit, the response includes their bank account information + with sensitive data masked for security. The payment details also include information about + how their payments are split if they have multiple bank accounts configured. + + For contractors paid by check, only the basic payment method information is returned. + + ### Response Details + - For direct deposit contractors: + - Bank account details (masked) + - Payment splits configuration + - Routing numbers + - Account types + - For check payments: + - Basic payment method designation + + ### Common Use Cases + - Fetching contractor payment information for payroll processing + - Verifying contractor payment methods + - Reviewing payment split configurations + + `encrypted_account_number` is available only with the additional scope `contractor_payment_methods:read:account_numbers`. + + scope: `contractor_payment_methods:read` + tags: + - Contractors + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: company_id + in: path + description: The UUID of the company. This identifies the company whose contractor payment details you want to retrieve. + required: true + schema: + type: string + - name: contractor_uuid + in: query + required: false + description: Optional filter to get payment details for a specific contractor. When provided, the response will only include payment details for this contractor. + schema: + type: string + - name: contractor_payment_group_uuid + in: query + required: false + description: 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. + schema: + type: string + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Contractor-Payment-Details-List" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + "/v1/companies/{company_id}/contractor_payment_groups/preview": + post: + summary: Preview a contractor payment group + operationId: post-v1-companies-company_id-contractor_payment_groups-preview + security: + - CompanyAccessAuth: [] + description: |- + Preview a group of contractor payments. Request will validate inputs and return preview of the contractor payment group including the expected `debit_date`. The `uuid` field will be null in the response. + + The returned `creation_token` is a required parameter in order to create the contractor payment group. + + scope: `payrolls:read` + tags: + - Contractor Payment Groups + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + required: true + description: The UUID of the company + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Full contractor payment group object with null uuid + content: + application/json: + schema: + "$ref": "#/components/schemas/Contractor-Payment-Group-Preview" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided ID/UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + required: + - contractor_payments + properties: + contractor_payments: + type: array + items: + type: object + properties: + contractor_uuid: + type: string + description: The contractor receiving the payment + payment_method: + type: string + enum: + - Direct Deposit + - Check + - Historical Payment + default: Direct Deposit + wage: + type: string + format: float + description: If the contractor is on a fixed wage, this is the fixed wage payment for the contractor, regardless of hours worked + example: '5000.0' + hours: + type: string + format: float + example: '40.0' + description: If the contractor is on an hourly wage, this is the number of hours that the contractor worked for the payment + bonus: + type: string + format: float + example: '500.0' + description: If the contractor is on an hourly wage, this is the bonus the contractor earned + reimbursement: + type: string + format: float + example: '20.0' + description: Reimbursed wages for the contractor + invoice_number: + type: string + maxLength: 25 + example: INV-001 + description: An optional invoice number to associate with this contractor payment. This will be visible to the contractor on their paystub. + memo: + type: string + example: Payment for consulting services + description: An optional note or memo for this contractor payment. This will be visible to the contractor on their paystub. + check_date: + type: string + format: date + description: Date when payments should be processed + required: true + x-speakeasy-group: contractorPaymentGroups + x-speakeasy-name-override: preview + "/v1/contractor_payment_groups/{contractor_payment_group_uuid}/fund": + put: + summary: Fund a contractor payment group [DEMO] + operationId: put-v1-contractor_payment_groups-contractor_payment_group_id-fund + security: + - CompanyAccessAuth: [] + description: "> \U0001F6A7 Demo action\n> This action is only available in the Demo environment\n\nSimulate funding a contractor payment group. Funding only occurs automatically in the production environment when bank transactions are generated. Use this action in the demo environment to transition a contractor payment group's `status` from `Unfunded` to `Funded`. A `Funded` status is required for generating a contractor payment receipt.\n\nscope: `payrolls:run`" + tags: + - Contractor Payment Groups + x-gusto-integration-type: + - embedded + parameters: + - name: contractor_payment_group_uuid + in: path + required: true + description: The UUID of the contractor payment group + schema: + type: string + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '200': + description: Full contractor payment group object + content: + application/json: + schema: + "$ref": "#/components/schemas/Contractor-Payment-Group" + '404': + description: | + Not Found + + The requested contractor payment group does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-speakeasy-name-override: fund + x-speakeasy-group: contractorPaymentGroups + "/v1/companies/{company_id}/contractor_payment_groups": + get: + summary: Get contractor payment groups for a company + operationId: get-v1-companies-company_id-contractor_payment_groups + security: + - CompanyAccessAuth: [] + description: |- + Returns a list of minimal contractor payment groups within a given time period, including totals but not associated contractor payments. + + scope: `payrolls:read` + tags: + - Contractor Payment Groups + x-gusto-integration-type: + - embedded + parameters: + - name: company_id + in: path + required: true + description: The UUID of the company + schema: + type: string + - name: start_date + in: query + required: false + description: The time period for which to retrieve contractor payment groups. Defaults to 6 months ago. + example: '2020-01-01' + schema: + type: string + - name: end_date + in: query + required: false + description: The time period for which to retrieve contractor payment groups. Defaults to today's date. + example: '2020-12-31' + schema: + type: string + - name: page + in: query + required: false + description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + schema: + type: integer + - name: per + in: query + required: false + description: Number of objects per page. For majority of endpoints will default to 25 + schema: + type: integer + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '200': + description: List of Contractor Payment Groups + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Contractor-Payment-Group-With-Blockers" + '404': + description: | + Not Found + + The requested company does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: getList + x-speakeasy-group: contractorPaymentGroups + post: + summary: Create a contractor payment group + operationId: post-v1-companies-company_id-contractor_payment_groups + security: + - CompanyAccessAuth: [] + description: |- + Pay a group of contractors. Information needed depends on the contractor's wage type (hourly vs fixed) + + scope: `payrolls:run` + tags: + - Contractor Payment Groups + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + required: true + description: The UUID of the company + schema: + type: string + x-gusto-rswag: true + responses: + '201': + description: Full contractor payment group object + content: + application/json: + schema: + "$ref": "#/components/schemas/Contractor-Payment-Group" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '404': + description: | + Not Found + + The requested company does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + required: + - check_date + - contractor_payments + - creation_token + properties: + check_date: + type: string + format: date + description: The payment check date + example: '2020-01-01' + creation_token: + type: string + description: A token used to make contractor payment group creation idempotent. The string must be unique for each group you intend to create. + example: 1d532d13-8f61-4a57-ad3c-b5fac1c6e05e + submission_blockers: + type: array + description: Optional array of submission blockers with selected unblock options. Returned from the preview endpoint and can be submitted with selected_option to resolve blockers. + items: + type: object + properties: + blocker_type: + type: string + description: The type of blocker that is blocking the payment submission + selected_option: + type: + - string + - 'null' + description: The unblock option selected to resolve the submission blocker + message: + type: string + description: Optional message related to the blocker + options: + type: array + description: Optional array of additional options for the blocker + items: + type: object + properties: + type: + type: string + description: The type of option + message: + type: string + description: Message for the option + contractor_payments: + type: array + items: + type: object + properties: + contractor_uuid: + type: string + description: The contractor receiving the payment + payment_method: + type: string + enum: + - Direct Deposit + - Check + - Historical Payment + default: Direct Deposit + wage: + type: string + format: float + description: If the contractor is on a fixed wage, this is the fixed wage payment for the contractor, regardless of hours worked + example: '5000.0' + hours: + type: string + format: float + example: '40.0' + description: If the contractor is on an hourly wage, this is the number of hours that the contractor worked for the payment + bonus: + type: string + format: float + example: '500.0' + description: If the contractor is on an hourly wage, this is the bonus the contractor earned + reimbursement: + type: string + format: float + example: '20.0' + description: Reimbursed wages for the contractor + invoice_number: + type: string + maxLength: 25 + example: INV-001 + description: An optional invoice number to associate with this contractor payment. This will be visible to the contractor on their paystub. + memo: + type: string + example: Payment for consulting services + description: An optional note or memo for this contractor payment. This will be visible to the contractor on their paystub. + required: true + x-speakeasy-group: contractorPaymentGroups + x-speakeasy-name-override: create + "/v1/contractor_payment_groups/{contractor_payment_group_uuid}": + get: + summary: Get a contractor payment group + operationId: get-v1-contractor_payment_groups-contractor_payment_group_id + security: + - CompanyAccessAuth: [] + description: |- + Returns a contractor payment group with all associated contractor payments. + + scope: `payrolls:read` + tags: - Contractor Payment Groups - Contractor-Payment-Group-Preview: - description: Preview of a contractor payment group - type: object - properties: - uuid: - type: - - string - - 'null' - description: The unique identifier of the contractor payment group. - readOnly: true - company_uuid: - type: string - description: The UUID of the company. - readOnly: true - check_date: - type: string - description: The check date of the contractor payment group. - readOnly: true - debit_date: - type: string - description: The debit date of the contractor payment group. - readOnly: true - status: - type: string - description: The status of the contractor payment group. Will be `Funded` if all payments that should be funded (i.e. have `Direct Deposit` for payment method) are funded. A group can have status `Funded` while having associated payments that have status `Unfunded`, i.e. payment with `Check` payment method. - enum: - - Unfunded - - Funded - readOnly: true - creation_token: - type: - - string - - 'null' - description: Token used to make contractor payment group creation idempotent. Will error if attempting to create a group with a duplicate token. - readOnly: true - partner_owned_disbursement: - type: - - boolean - - 'null' - description: Whether the disbursement is partner owned. - readOnly: true - submission_blockers: - type: array - description: List of submission blockers for the contractor payment group. - readOnly: true - items: - "$ref": "#/components/schemas/Payroll-Submission-Blocker-Type" - credit_blockers: - type: array - description: List of credit blockers for the contractor payment group. - readOnly: true - items: - "$ref": "#/components/schemas/Payroll-Credit-Blocker-Type" - totals: - type: object - properties: - amount: - type: string - description: The total amount for the group of contractor payments. - readOnly: true - debit_amount: - type: string - description: The total debit amount for the group of contractor payments. Sum of wage & reimbursement amount. - readOnly: true - wage_amount: - type: string - description: The total wage amount for the group of contractor payments. - readOnly: true - reimbursement_amount: + x-gusto-integration-type: + - embedded + parameters: + - name: contractor_payment_group_uuid + in: path + required: true + description: The UUID of the contractor payment group + schema: + type: string + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '200': + description: Successful response + content: + application/json: + schema: + "$ref": "#/components/schemas/Contractor-Payment-Group" + '404': + description: | + Not Found + + The requested contractor payment group does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: contractorPaymentGroups + x-speakeasy-name-override: get + delete: + summary: Cancel a contractor payment group + operationId: delete-v1-contractor_payment_groups-contractor_payment_group_id + security: + - CompanyAccessAuth: [] + description: |- + Cancels a contractor payment group and all associated contractor payments. All contractor payments must be cancellable, unfunded. + + scope: `payrolls:run` + tags: + - Contractor Payment Groups + x-gusto-integration-type: + - embedded + parameters: + - name: contractor_payment_group_uuid + in: path + required: true + description: The UUID of the contractor payment group + schema: + type: string + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '204': + description: Successfully cancelled + '404': + description: | + Not Found + + The requested contractor payment group does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when trying to cancel a payment group that is not in a cancellable state, such as one that has already been funded or processed. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-speakeasy-name-override: delete + x-speakeasy-group: contractorPaymentGroups + "/v1/contractor_payment_groups/{id}/partner_disbursements": + get: + summary: Get partner disbursements for a contractor payment group + operationId: get-v1-contractor_payment_groups-id-partner_disbursements + security: + - CompanyAccessAuth: [] + description: |- + Get partner disbursements for a specific contractor payment group. + + scope: `partner_disbursements:read` + tags: + - Contractor Payment Groups + x-gusto-integration-type: + - embedded + parameters: + - name: id + in: path + required: true + description: The UUID of the contractor payment group + schema: + type: string + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Contractor-Payment-Group-Partner-Disbursements" + '404': + description: | + Not Found + + The requested contractor payment group does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + patch: + summary: Update partner disbursements for a contractor payment group + operationId: patch-v1-contractor_payment_groups-id-partner_disbursements + security: + - CompanyAccessAuth: [] + description: |- + Update partner disbursements for a specific contractor payment group. + + scope: `partner_disbursements:write` + tags: + - Contractor Payment Groups + x-gusto-integration-type: + - embedded + parameters: + - name: id + in: path + required: true + description: The UUID of the contractor payment group + schema: + type: string + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Contractor-Payment-Group-Partner-Disbursements" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + properties: + disbursements: + type: array + items: + type: object + properties: + contractor_payment_uuid: + type: string + description: UUID of the contractor payment + example: 9f8e7d6c-5b4a-3928-1c2d-3e4f5a6b7c8d + payment_method: + type: string + enum: + - Direct Deposit + - Check + description: Payment method for the contractor + payment_status: + type: string + enum: + - Pending + - Paid + - Not partner managed + - Converted to check + description: Status of the payment disbursement + required: + - contractor_payment_uuid + required: + - disbursements + "/v1/contractors/{contractor_uuid}/payment_method": + get: + summary: Get a contractor's payment method + operationId: get-v1-contractors-contractor_uuid-payment_method + security: + - CompanyAccessAuth: [] + description: |- + Fetches a contractor's payment method. A contractor payment method + describes how the payment should be split across the contractor's associated + bank accounts. + + scope: `contractor_payment_methods:read` + tags: + - Contractor Payment Method + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: contractor_uuid + in: path + description: The UUID of the contractor + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Example response + content: + application/json: + schema: + "$ref": "#/components/schemas/Contractor-Payment-Method" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: contractorPaymentMethod + x-speakeasy-name-override: get + put: + summary: Update a contractor's payment method + operationId: put-v1-contractors-contractor_id-payment_method + security: + - CompanyAccessAuth: [] + description: |- + Updates a contractor's payment method. Note that creating a contractor + bank account will also update the contractor's payment method. + + scope: `contractor_payment_methods:write` + tags: + - Contractor Payment Method + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: contractor_uuid + in: path + description: The UUID of the contractor + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Example response + content: + application/json: + schema: + "$ref": "#/components/schemas/Contractor-Payment-Method" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '409': + description: Conflict + content: + application/json: + schema: + "$ref": "#/components/schemas/Conflict-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + required: + - version + - type + properties: + version: + type: string + description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. + example: 63859768485e218ccf8a449bb60f14ed + type: + type: string + enum: + - Direct Deposit + - Check + description: The payment method type. If type is Direct Deposit, the contractor is required to have a bank account. See [Bank account endpoint](./post-v1-contractors-contractor_uuid-bank_accounts). + required: true + x-speakeasy-group: contractorPaymentMethod + x-speakeasy-name-override: update + "/v1/companies/{company_id}/contractor_payments": + get: + summary: Get contractor payments for a company + operationId: get-v1-companies-company_id-contractor_payments + security: + - CompanyAccessAuth: [] + description: |- + Returns an object containing individual contractor payments, within a given time period, including totals. + + Results are returned in reverse chronological order (newest first). + + scope: `payrolls:read` + tags: + - Contractor Payments + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + required: true + description: The UUID of the company + schema: + type: string + - name: start_date + in: query + required: true + description: The time period for which to retrieve contractor payments + example: '2020-01-01' + schema: + type: string + - name: end_date + in: query + required: true + description: The time period for which to retrieve contractor payments. If left empty, defaults to today's date. + example: '2020-12-31' + schema: + type: string + - name: contractor_uuid + in: query + required: false + description: The UUID of the contractor. When specified, will load all payments for that contractor. + schema: + type: string + - name: group_by_date + in: query + required: false + description: Display contractor payments results group by check date if set to true. + schema: + type: boolean + - name: page + in: query + required: false + description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + schema: + type: integer + - name: per + in: query + required: false + description: Number of objects per page. For majority of endpoints will default to 25 + schema: + type: integer + x-gusto-rswag: true + responses: + '200': + description: A JSON object containing contractor payments information + content: + application/json: + schema: + anyOf: + - "$ref": "#/components/schemas/Contractor-Payment-Summary" + - "$ref": "#/components/schemas/Contractor-Payment-Summary-By-Dates" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided ID/UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: contractorPayments + x-speakeasy-name-override: list + post: + summary: Create a contractor payment + operationId: post-v1-companies-company_id-contractor_payments + security: + - CompanyAccessAuth: [] + description: |- + Pay a contractor. Information needed depends on the contractor's wage type (hourly vs fixed) + + scope: `payrolls:run` + tags: + - Contractor Payments + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + required: true + description: The UUID of the company + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Contractor-Payment" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided ID/UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Contractor-Payment-Body" + required: true + x-speakeasy-group: contractorPayments + x-speakeasy-name-override: create + "/v1/companies/{company_id}/contractor_payments/{contractor_payment_id}": + get: + summary: Get a single contractor payment + operationId: get-v1-companies-company_id-contractor_payment-contractor-payment + security: + - CompanyAccessAuth: [] + description: |- + Returns a single contractor payment. + + scope: `payrolls:read` + tags: + - Contractor Payments + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + required: true + description: The UUID of the company + schema: + type: string + - name: contractor_payment_id + in: path + required: true + description: The UUID of the contractor payment + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Contractor-Payment" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided ID/UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: get + x-speakeasy-group: contractorPayments + delete: + summary: Cancel a contractor payment + operationId: delete-v1-companies-company_id-contractor_payment-contractor-payment + security: + - CompanyAccessAuth: [] + description: |- + Cancels and deletes a contractor payment. If the contractor payment has already started processing ("may_cancel": true), the payment cannot be cancelled. + + scope: `payrolls:run` + tags: + - Contractor Payments + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + required: true + description: The UUID of the company + schema: + type: string + - name: contractor_payment_id + in: path + required: true + description: The UUID of the contractor payment + schema: + type: string + x-gusto-rswag: true + responses: + '204': + description: No Content + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided ID/UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-speakeasy-group: contractorPayments + x-speakeasy-name-override: delete + "/v1/companies/{company_uuid}/contractor_payments/preview": + get: + summary: Preview contractor payment debit date + operationId: get-companies-company_uuid-contractor_payments-preview + security: + - CompanyAccessAuth: [] + description: |- + Returns a debit_date dependent on the ACH payment speed of the company. + + If the payment method is Check or Historical payment, the debit_date will be the same as the check_date. + + scope: `payrolls:read` + tags: + - Contractor Payments + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + required: true + description: The UUID of the company + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: OK + content: + application/json: + schema: + "$ref": "#/components/schemas/Contractor-Payments-Preview" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Contractor-Payments-Preview-Body" + required: true + x-speakeasy-name-override: preview + x-speakeasy-group: contractorPayments + "/v1/contractor_payments/{contractor_payment_uuid}/receipt": + get: + summary: Get a single contractor payment receipt + operationId: get-v1-contractor_payments-contractor_payment_uuid-receipt + security: + - CompanyAccessAuth: [] + description: |- + Returns a contractor payment receipt. + + Notes: + * Receipts are only available for direct deposit payments and are only available once those payments have been funded. + * Payroll Receipt requests for payrolls which do not have receipts available (e.g. payment by check) will return a 404 status. + * Hour and dollar amounts are returned as string representations of numeric decimals. + * Dollar amounts are represented to the cent. + * If no data has yet be inserted for a given field, it defaults to “0.00” (for fixed amounts). + + scope: `payrolls:read` + tags: + - Contractor Payments + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: contractor_payment_uuid + in: path + required: true + description: The UUID of the contractor payment + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: OK + content: + application/json: + schema: + "$ref": "#/components/schemas/Contractor-Payment-Receipt" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: getReceipt + x-speakeasy-group: contractorPayments + "/v1/contractor_payments/{contractor_payment_uuid}/fund": + put: + summary: Fund a contractor payment [DEMO] + operationId: get-v1-contractor_payments-contractor_payment_uuid-fund + security: + - CompanyAccessAuth: [] + description: "> \U0001F6A7 Demo action\n>\n> This action is only available in the Demo environment\n\nSimulate funding a contractor payment. Funding only occurs automatically in the production environment when bank transactions are generated. Use this action in the demo environment to transition a contractor payment's `status` from `Unfunded` to `Funded`. A `Funded` status is required for generating a contractor payment receipt.\n\nscope: `payrolls:run`" + tags: + - Contractor Payments + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: contractor_payment_uuid + in: path + required: true + description: The UUID of the contractor payment + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: OK + content: + application/json: + schema: + "$ref": "#/components/schemas/Contractor-Payment" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-speakeasy-group: contractorPayments + x-speakeasy-name-override: fund + "/v1/contractor_payments/{contractor_payment_id}/pdf": + get: + summary: Get a contractor payment PDF + operationId: get-v1-contractor_payments-contractor_payment_id-pdf + security: + - CompanyAccessAuth: [] + description: |- + Get a PDF document for a single contractor payment. + + scope: `payrolls:read` + tags: + - Contractor Payments + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: contractor_payment_id + in: path + required: true + description: The UUID of the contractor payment + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: A PDF document of the contractor payment + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided ID/UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + "/v1/contractors/{contractor_uuid}/rehire": + post: + summary: Schedule a contractor rehire + parameters: + - name: contractor_uuid + in: path + required: true + description: The UUID of the contractor + schema: + type: string + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + operationId: post-v1-contractors-contractor_uuid-rehire + security: + - CompanyAccessAuth: [] + description: |- + ## Purpose + Schedules a contractor rehire for a given date. Creates a new employment record for the contractor. + + ## Prerequisites + Before calling this endpoint: + 1. The contractor must be inactive (previously dismissed) + 2. The contractor must not already have an upcoming employment + + ## Related webhooks + - `contractor.reactivated`: Fires when the contractor becomes active again (on or after start_date) + + scope: `contractors:write` + tags: + - Contractors + x-gusto-integration-type: + - embedded + x-gusto-rswag: true + responses: + '204': + description: no content + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: {} + requestBody: + content: + application/json: + schema: + type: object + properties: + start_date: + type: string + format: date + description: The rehire date + example: '2025-07-01' + required: + - start_date + delete: + summary: Cancel a pending contractor rehire + parameters: + - name: contractor_uuid + in: path + required: true + description: The UUID of the contractor + schema: + type: string + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + operationId: delete-v1-contractors-contractor_uuid-rehire + security: + - CompanyAccessAuth: [] + description: |- + ## Purpose + Cancels a pending contractor rehire. For future-dated rehires, cancellation is available anytime before the date. + For past-dated rehires, cancellation is only available within the 2-day grace period. + + ## Prerequisites + Before calling this endpoint: + - The contractor must have a pending rehire (upcoming employment) + + ## Related webhooks + - `contractor.deactivated`: Fires when the contractor returns to inactive state after cancellation + + scope: `contractors:write` + tags: + - Contractors + x-gusto-integration-type: + - embedded + x-gusto-rswag: true + responses: + '204': + description: no content + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: {} + "/v1/contractors/{contractor_uuid}/termination": + post: + summary: Schedule a contractor termination + parameters: + - name: contractor_uuid + in: path + required: true + description: The UUID of the contractor + schema: + type: string + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + operationId: post-v1-contractors-contractor_uuid-termination + security: + - CompanyAccessAuth: [] + description: |- + ## Purpose + Schedules a contractor dismissal for a given date. Supports both immediate (past dates) and future-dated dismissals. + + ## Prerequisites + Before calling this endpoint: + 1. The contractor must be active (no existing pending dismissal) + 2. The contractor must have a current employment + + ## Related webhooks + - `contractor.deactivated`: Fires when the contractor becomes inactive (on or after end_date) + + scope: `contractors:write` + tags: + - Contractors + x-gusto-integration-type: + - embedded + x-gusto-rswag: true + responses: + '204': + description: no content + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: {} + requestBody: + content: + application/json: + schema: + type: object + properties: + end_date: + type: string + format: date + description: The date of dismissal + example: '2025-06-15' + required: + - end_date + delete: + summary: Cancel a pending contractor termination + parameters: + - name: contractor_uuid + in: path + required: true + description: The UUID of the contractor + schema: + type: string + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + operationId: delete-v1-contractors-contractor_uuid-termination + security: + - CompanyAccessAuth: [] + description: |- + ## Purpose + Cancels a pending contractor dismissal. For future-dated dismissals, cancellation is available anytime before the date. + For past-dated dismissals, cancellation is only available within the 2-day grace period. + + ## Prerequisites + Before calling this endpoint: + - The contractor must have a pending dismissal (scheduled or within the grace period) + + ## Related webhooks + - `contractor.reactivated`: Fires when the contractor becomes active again after cancellation + + scope: `contractors:write` + tags: + - Contractors + x-gusto-integration-type: + - embedded + x-gusto-rswag: true + responses: + '204': + description: no content + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: {} + "/v1/contractors/{contractor_uuid}": + get: + summary: Get a contractor + operationId: get-v1-contractors-contractor_uuid + security: + - CompanyAccessAuth: [] + description: |- + Get a contractor. + + scope: `contractors:read` + tags: + - Contractors + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: contractor_uuid + in: path + description: The UUID of the contractor + required: true + schema: + type: string + - name: include + in: query + explode: false + required: false + schema: + type: array + items: type: string - description: The total reimbursement amount for the group of contractor payments. - readOnly: true - check_amount: + enum: + - company_name + - portal_invitations + x-enumDescriptions: + company_name: Include the name of the company that the contractor is associated with + portal_invitations: Include portal invitation status information, including member portal invitation details and partner portal invitation status + description: Include the requested attribute(s) in each contractor response. Multiple options are comma separated. + x-gusto-rswag: true + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Contractor" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: get + put: + summary: Update a contractor + operationId: put-v1-contractors-contractor_uuid + security: + - CompanyAccessAuth: [] + description: "Update a contractor.\n\n> \U0001F6A7 Warning\n>\n> Watch out when changing a contractor's type (when the contractor is finished onboarding). Specifically, changing contractor type can be dangerous since Gusto won't recognize and file two separate 1099s if they simply change from business to individual\n\nscope: `contractors:write`" + tags: + - Contractors + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: contractor_uuid + in: path + description: The UUID of the contractor + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Contractor" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '409': + description: Conflict + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Contractor-Update-Request-Body" + required: true + x-speakeasy-name-override: update + delete: + summary: Delete a contractor + operationId: delete-v1-contractors-contractor_uuid + security: + - CompanyAccessAuth: [] + description: |- + A contractor can only be deleted when there are no contractor payments. + + scope: `contractors:manage` + tags: + - Contractors + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: contractor_uuid + in: path + description: The UUID of the contractor + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '204': + description: No Content + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-speakeasy-name-override: delete + "/v1/companies/{company_uuid}/contractors": + get: + summary: Get contractors of a company + operationId: get-v1-companies-company_uuid-contractors + security: + - CompanyAccessAuth: [] + description: |- + Get all contractors, active and inactive, individual and business, for a company. + + scope: `contractors:read` + tags: + - Contractors + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + required: true + description: The UUID of the company + schema: + type: string + - name: search_term + in: query + required: false + description: A string to search for in the object's names + schema: + type: string + - name: sort_by + in: query + required: false + schema: + type: string + pattern: "^(created_at|type|onboarding_status|name)(:(asc|desc))?(,(created_at|type|onboarding_status|name)(:(asc|desc))?)*$" + example: created_at:asc + description: 'Sort by one or more fields. Options: created_at, type, onboarding_status, name. Append `:asc` or `:desc` to specify direction (e.g., `created_at:asc`). Defaults to ascending.' + - name: onboarded + in: query + required: false + description: Filters contractors by those who have completed onboarding + schema: + type: boolean + - name: onboarded_active + in: query + required: false + description: Filters contractors who are ready to work (onboarded AND active today) + schema: + type: boolean + - name: terminated + in: query + required: false + description: Filters contractors by those who have been or are scheduled to be dismissed + schema: + type: boolean + - name: terminated_today + in: query + required: false + description: Filters contractors by those who have been dismissed and whose dismissal is in effect today (excludes active and scheduled to be dismissed) + schema: + type: boolean + - name: include + in: query + explode: false + required: false + schema: + type: array + items: type: string - description: The total check amount for the group of contractor payments. - readOnly: true - readOnly: true - contractor_payments: - type: array - items: - "$ref": "#/components/schemas/Contractor-Payment-For-Group-Preview" - x-examples: - success: - uuid: - company_uuid: 450ddadf-69da-4f37-92e5-8d78b94bffec - check_date: '2025-08-21' - debit_date: '2025-08-19' - status: Unfunded - creation_token: 025e79ac-824d-4d3e-b819-8f265c3edb72 - partner_owned_disbursement: - submission_blockers: [] - credit_blockers: [] - contractor_payments: - - uuid: - contractor_uuid: e894e72b-0aef-4856-9082-9c7826db998d - bonus: '0.0' - hours: '0.0' - hourly_rate: '0.0' - may_cancel: true - payment_method: Direct Deposit - reimbursement: '750.0' - status: Unfunded - wage: '10000.0' - wage_type: Fixed - wage_total: '10000.0' - totals: - amount: '10750.00' - debit_amount: '10750.00' - wage_amount: '10000.00' - reimbursement_amount: '750.00' - check_amount: '0.00' - With submission blockers: - uuid: - company_uuid: 450ddadf-69da-4f37-92e5-8d78b94bffec - check_date: '2025-08-21' - debit_date: '2025-08-19' - status: Unfunded - creation_token: 8f3ced95-ccba-4ace-ac5d-03c1080bb768 - partner_owned_disbursement: - submission_blockers: - - blocker_type: fast_ach_threshold_exceeded - blocker_name: Fast ACH Threshold Exceeded - selected_option: - status: unresolved - unblock_options: - - unblock_type: wire_in - check_date: '2025-08-21' - metadata: - wire_in_deadline: '2025-08-21T18:00:00Z' - wire_in_amount: '1000750.0' - - unblock_type: move_to_four_day - check_date: '2025-08-21' - metadata: - debit_date: '2025-08-15' - credit_blockers: [] - contractor_payments: - - uuid: - contractor_uuid: e894e72b-0aef-4856-9082-9c7826db998d - bonus: '0.0' - hours: '0.0' - hourly_rate: '0.0' - may_cancel: true - payment_method: Direct Deposit - reimbursement: '750.0' - status: Unfunded - wage: '1000000.0' - wage_type: Fixed - wage_total: '1000000.0' - totals: - amount: '1000750.00' - debit_amount: '1000750.00' - wage_amount: '1000000.00' - reimbursement_amount: '750.00' - check_amount: '0.00' - Webhooks-Health-Check-Status: - description: The representation of a webhooks health check response - type: object - x-examples: - success_status: - status: healthy - last_checked_at: '2025-09-08T21:21:38.000Z' - properties: - status: - type: string - description: Latest health status of the webhooks system - readOnly: true - enum: - - healthy - - unhealthy - - unknown - last_checked_at: - type: string - format: date-time - readOnly: true - description: ISO8601 timestamp of the last successful health check with millisecond precision - Contractor-Payment-Group-Base: - description: Base properties for contractor payment groups. - type: object - properties: - uuid: - type: string - description: The unique identifier of the contractor payment group. - readOnly: true - company_uuid: - type: string - description: The UUID of the company. - readOnly: true - check_date: - type: string - description: The check date of the contractor payment group. - readOnly: true - debit_date: - type: string - description: The debit date of the contractor payment group. - readOnly: true - status: - type: string - description: The status of the contractor payment group. Will be `Funded` if all payments that should be funded (i.e. have `Direct Deposit` for payment method) are funded. A group can have status `Funded` while having associated payments that have status `Unfunded`, i.e. payment with `Check` payment method. - enum: - - Unfunded - - Funded - readOnly: true - creation_token: - type: - - string - - 'null' - description: Token used to make contractor payment group creation idempotent. Will error if attempting to create a group with a duplicate token. - readOnly: true - Contractor-Payment-Group-With-Blockers: - description: Contractor payment group with submission and credit blockers, but without individual contractor payments. - type: object - allOf: - - "$ref": "#/components/schemas/Contractor-Payment-Group-Base" - - type: object - properties: - partner_owned_disbursement: - type: - - boolean - - 'null' - description: Whether the disbursement is partner owned. - readOnly: true - submission_blockers: - type: array - description: List of submission blockers for the contractor payment group. - readOnly: true - items: - "$ref": "#/components/schemas/Payroll-Submission-Blocker-Type" - credit_blockers: - type: array - description: List of credit blockers for the contractor payment group. - readOnly: true - items: - "$ref": "#/components/schemas/Payroll-Credit-Blocker-Type" - totals: + enum: + - company_name + - portal_invitations + x-enumDescriptions: + company_name: Include the name of the company that the contractor is associated with + portal_invitations: Include portal invitation status information, including member portal invitation details and partner portal invitation status + description: Include the requested attribute(s) in each contractor response. Multiple options are comma separated. + - name: page + in: query + required: false + description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + schema: + type: integer + - name: per + in: query + required: false + description: Number of objects per page. For majority of endpoints will default to 25 + schema: + type: integer + x-gusto-rswag: true + responses: + '200': + description: Successful + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Contractor" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: list + post: + summary: Create a contractor + operationId: post-v1-companies-company_uuid-contractors + security: + - CompanyAccessAuth: [] + description: |- + Create an individual or business contractor. + + scope: `contractors:manage` + tags: + - Contractors + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + required: true + description: The UUID of the company + schema: + type: string + x-gusto-rswag: true + responses: + '201': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Contractor" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Contractor-Create-Request-Body" + required: true + x-speakeasy-name-override: create + "/v1/contractors/{contractor_uuid}/onboarding_status": + get: + summary: Get the contractor's onboarding status + operationId: get-v1-contractors-contractor_uuid-onboarding_status + security: + - CompanyAccessAuth: [] + description: |- + Retrieves a contractor's onboarding status. The data returned helps inform the required onboarding steps and respective completion status. + + ## onboarding_status + + ### Admin-facilitated onboarding + | onboarding_status | Description | + |:------------------|------------:| + | `admin_onboarding_incomplete` | Admin needs to enter basic information about the contractor. | + | `admin_onboarding_review` | All information has been completed and admin needs to confirm onboarding. | + | `onboarding_completed` | Contractor has been fully onboarded and verified. | + + ### Contractor self-onboarding + + | onboarding_status | Description | + | --- | ----------- | + | `admin_onboarding_incomplete` | Admin needs to enter basic information about the contractor. | + | `self_onboarding_not_invited` | Admin has the intention to invite the contractor to self-onboard (e.g., marking a checkbox), but the system has not yet sent the invitation. | + | `self_onboarding_invited` | Contractor has been sent an invitation to self-onboard. | + | `self_onboarding_started` | Contractor has started the self-onboarding process. | + | `self_onboarding_review` | Admin needs to review contractors's entered information and confirm onboarding. | + | `onboarding_completed` | Contractor has been fully onboarded and verified. | + + ## onboarding_steps + + | onboarding_steps | Requirement(s) to be completed | + |:-----------------|-------------------------------:| + | `basic_details` | Add individual contractor's first name, last name, social security number or Business name and EIN depending on the contractor type | + | `add_address` | Add contractor address. | + | `compensation_details` | Add contractor compensation. | + | `payment_details` | (optional) Set up contractor's direct deposit or set to check. | + | `sign_documents` | Contractor forms (e.g., W9) are generated & signed. | + | `file_new_hire_report` | Contractor new hire report is generated. | + + scope: `contractors:read` + tags: + - Contractors + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: contractor_uuid + in: path + description: The UUID of the contractor + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Contractor-Onboarding-Status" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: getOnboardingStatus + put: + summary: Change the contractor's onboarding status + operationId: put-v1-contractors-contractor_uuid-onboarding_status + security: + - CompanyAccessAuth: [] + description: |- + Updates a contractor's onboarding status. + + Below is a list of valid onboarding status changes depending on the intended action to be performed on behalf of the contractor. + + | Action | current onboarding_status | new onboarding_status | + |:------------------|:------------:|----------:| + | Mark a contractor as self-onboarding | `admin_onboarding_incomplete` | `self_onboarding_not_invited` | + | Invite a contractor to self-onboard | `admin_onboarding_incomplete` or `self_onboarding_not_invited` | `self_onboarding_invited` | + | Cancel a contractor's self-onboarding | `self_onboarding_invited` or `self_onboarding_not_invited` | `admin_onboarding_incomplete` | + | Review a contractor's self-onboarded info | `self_onboarding_started` | `self_onboarding_review` | + | Finish a contractor's onboarding | `admin_onboarding_review` or `self_onboarding_review` | `onboarding_completed` | + + scope: `contractors:write` + tags: + - Contractors + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: contractor_uuid + in: path + description: The UUID of the contractor + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Contractor-Onboarding-Status" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Contractor-Onboarding-Status-Update-Request-Body" + required: true + x-speakeasy-name-override: updateOnboardingStatus + "/v1/departments/{department_uuid}": + get: + summary: Get a department + operationId: get-department + security: + - CompanyAccessAuth: [] + description: |- + Get a department given the UUID + + scope: `departments:read` + tags: + - Departments + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: department_uuid + in: path + description: The UUID of the department + required: true + schema: + type: string + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Department" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: get + put: + summary: Update a department + operationId: put-departments + security: + - CompanyAccessAuth: [] + description: |- + Update a department + + scope: `departments:write` + tags: + - Departments + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: department_uuid + in: path + description: The UUID of the department + required: true + schema: + type: string + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Department" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '409': + description: Conflict + content: + application/json: + schema: + "$ref": "#/components/schemas/Conflict-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Department-Update-Request-Body" + required: true + x-speakeasy-name-override: update + delete: + summary: Delete a department + operationId: delete-department + security: + - CompanyAccessAuth: [] + description: |- + Delete a department. You cannot delete a department until all employees and contractors have been removed. + + scope: `departments:write` + tags: + - Departments + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: department_uuid + in: path + description: The UUID of the department + required: true + schema: + type: string + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '204': + description: No Content + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-speakeasy-name-override: delete + "/v1/departments/{department_uuid}/add": + put: + summary: Add people to a department + operationId: put-add-people-to-department + security: + - CompanyAccessAuth: [] + description: |- + Add employees and contractors to a department + + scope: `departments:write` + tags: + - Departments + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: department_uuid + in: path + description: The UUID of the department + required: true + schema: + type: string + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Department" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Department-People-Request-Body" + required: true + x-speakeasy-name-override: addPeople + "/v1/departments/{department_uuid}/remove": + put: + summary: Remove people from a department + operationId: put-remove-people-from-department + security: + - CompanyAccessAuth: [] + description: |- + Remove employees and contractors from a department + + scope: `departments:write` + tags: + - Departments + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: department_uuid + in: path + description: The UUID of the department + required: true + schema: + type: string + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Department" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Department-People-Request-Body" + required: true + x-speakeasy-name-override: removePeople + "/v1/companies/{company_uuid}/departments": + get: + summary: Get all departments of a company + operationId: get-companies-departments + security: + - CompanyAccessAuth: [] + description: |- + Get all of the departments for a given company with the employees and contractors assigned to that department. + + scope: `departments:read` + tags: + - Departments + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Department-List" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: getAll + post: + summary: Create a department + operationId: post-departments + security: + - CompanyAccessAuth: [] + description: |- + Create a department + + scope: `departments:write` + tags: + - Departments + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '201': + description: Created + content: + application/json: + schema: + "$ref": "#/components/schemas/Department" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Department-Create-Request-Body" + required: true + x-speakeasy-name-override: create + "/v1/contractors/{contractor_uuid}/documents": + get: + summary: Get all contractor documents + operationId: get-v1-contractor-documents + security: + - CompanyAccessAuth: [] + description: |- + Get a list of all contractor's documents + + scope: `contractor_documents:read` + tags: + - Contractor Documents + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: contractor_uuid + in: path + description: The UUID of the contractor + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Example response + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Document" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: contractorDocuments + x-speakeasy-name-override: getAll + "/v1/documents/{document_uuid}": + get: + summary: Get a contractor document + operationId: get-v1-contractor-document + security: + - CompanyAccessAuth: [] + description: |- + Get a contractor document. + + scope: `contractor_documents:read` + tags: + - Contractor Documents + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: document_uuid + in: path + description: The UUID of the document + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Example response + content: + application/json: + schema: + "$ref": "#/components/schemas/Document" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: get + x-speakeasy-group: contractorDocuments + "/v1/documents/{document_uuid}/pdf": + get: + summary: Get the contractor document pdf + operationId: get-v1-contractor-document-pdf + security: + - CompanyAccessAuth: [] + description: |- + Get the contractor document pdf. + + scope: `contractor_documents:read` + tags: + - Contractor Documents + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: document_uuid + in: path + description: The UUID of the document + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Example response + content: + application/json: + schema: + "$ref": "#/components/schemas/Document-Pdf" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: contractorDocuments + x-speakeasy-name-override: getPdf + "/v1/documents/{document_uuid}/sign": + put: + summary: Sign a contractor document + operationId: put-v1-contractor-document-sign + security: + - CompanyAccessAuth: [] + description: |- + Sign a contractor document. + + scope: `contractor_documents:write` + tags: + - Contractor Documents + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: document_uuid + in: path + description: The UUID of the document + required: true + schema: + type: string + - name: x-gusto-client-ip + in: header + required: false + description: Optional header to supply the IP address. This can be used to supply the IP address for signature endpoints instead of the signed_by_ip_address parameter. + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Example response + content: + application/json: + schema: + "$ref": "#/components/schemas/Document-Signed" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + properties: + fields: + type: array + description: List of fields and the values they will be set to. + items: + type: object + properties: + key: + type: string + description: Unique identifier of the field + value: + type: string + description: Value for the field + agree: + type: boolean + description: Whether you agree to sign electronically + signed_by_ip_address: + type: string + description: The IP address of the signatory who signed the form. You must provide the IP address with either this parameter OR you can leave out this parameter and set the IP address in the request header using the `x-gusto-client-ip` header instead. + required: + - fields + - agree + required: true + x-speakeasy-group: contractorDocuments + x-speakeasy-name-override: sign + "/v1/companies/{company_id}/earning_types": + get: + summary: Get all earning types for a company + operationId: get-v1-companies-company_id-earning_types + security: + - CompanyAccessAuth: [] + description: |- + A payroll item in Gusto is associated to an earning type to name the type of earning described by the payroll item. + + #### Default Earning Type + Certain earning types are special because they have tax considerations. Those earning types are mostly the same for every company depending on its legal structure (LLC, Corporation, etc.) + + #### Custom Earning Type + Custom earning types are all the other earning types added specifically for a company. + + scope: `payrolls:read` + tags: + - Earning Types + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Earning-Type-List" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: earningTypes + x-speakeasy-name-override: list + post: + summary: Create a custom earning type + operationId: post-v1-companies-company_id-earning_types + security: + - CompanyAccessAuth: [] + description: |- + Create a custom earning type. + + If an inactive earning type exists with the same name, this will reactivate it instead of creating a new one. + + scope: `payrolls:write` + tags: + - Earning Types + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '201': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Earning-Type" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + required: + - name + properties: + name: + type: string + default: Gym Membership + description: The name of the custom earning type. + required: true + x-speakeasy-group: earningTypes + x-speakeasy-name-override: create + "/v1/companies/{company_id}/earning_types/{earning_type_uuid}": + put: + summary: Update an earning type + operationId: put-v1-companies-company_id-earning_types-earning_type_uuid + security: + - CompanyAccessAuth: [] + description: |- + Update an earning type. + + scope: `payrolls:write` + tags: + - Earning Types + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: earning_type_uuid + in: path + description: The UUID of the earning type + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Earning-Type" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + properties: + name: + type: string + description: The name of the custom earning type. + required: true + x-speakeasy-group: earningTypes + x-speakeasy-name-override: update + delete: + summary: Deactivate an earning type + operationId: delete-v1-companies-company_id-earning_types-earning_type_uuid + security: + - CompanyAccessAuth: [] + description: |- + Deactivate an earning type. + + scope: `payrolls:write` + tags: + - Earning Types + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: earning_type_uuid + in: path + description: The UUID of the earning type + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '204': + description: No Content + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: earningTypes + x-speakeasy-name-override: delete + "/v1/employees/{employee_id}/bank_accounts": + get: + summary: List employee bank accounts + operationId: get-v1-employees-employee_id-bank_accounts + security: + - CompanyAccessAuth: [] + description: |- + Returns all employee bank accounts. + + scope: `employee_payment_methods:read` + tags: + - Employee Payment Method + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + - name: page + in: query + required: false + description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + schema: + type: integer + - name: per + in: query + required: false + description: Number of objects per page. For majority of endpoints will default to 25 + schema: + type: integer + x-gusto-rswag: true + responses: + '200': + description: Success + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Employee-Bank-Account" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: employeePaymentMethods + x-speakeasy-name-override: getBankAccounts + post: + summary: Create an employee bank account + operationId: post-v1-employees-employee_id-bank_accounts + security: + - CompanyAccessAuth: [] + description: |- + Creates an employee bank account. An employee can have multiple bank accounts. Note that creating an employee bank account will also update the employee's payment method. + + scope: `employee_payment_methods:write` + tags: + - Employee Payment Method + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '201': + description: Created + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Bank-Account" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Bank-Account-Request" + required: true + x-speakeasy-group: employeePaymentMethod + x-speakeasy-name-override: create + "/v1/employees/{employee_id}/bank_accounts/{bank_account_uuid}": + put: + summary: Update an employee bank account + operationId: put-v1-employees-employee_id-bank_accounts + security: + - CompanyAccessAuth: [] + description: |- + Updates an employee bank account. + + scope: `employee_payment_methods:write` + tags: + - Employee Payment Method + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + - name: bank_account_uuid + in: path + description: The UUID of the bank account + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Bank-Account" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Bank-Account-Request" + required: true + x-speakeasy-group: employeePaymentMethod + x-speakeasy-name-override: updateBankAccount + delete: + summary: Delete an employee bank account + operationId: delete-v1-employees-employee_id-bank_accounts-bank_account_id + security: + - CompanyAccessAuth: [] + description: |- + Deletes an employee bank account. To update an employee's bank account details, delete the bank account first and create a new one. + + scope: `employee_payment_methods:write` + tags: + - Employee Payment Method + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + - name: bank_account_uuid + in: path + description: The UUID of the bank account + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '204': + description: No Content + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-speakeasy-group: employeePaymentMethod + x-speakeasy-name-override: deleteBankAccount + "/v1/employees/{employee_id}/employee_benefits": + get: + summary: Get all benefits for an employee + operationId: get-v1-employees-employee_id-employee_benefits + security: + - CompanyAccessAuth: [] + description: |- + Employee benefits represent an employee enrolled in a particular company benefit. It includes information specific to that employee’s enrollment. + + Returns an array of all employee benefits for this employee + + Benefits containing PHI are only visible to applications with the `employee_benefits:read:phi` scope. + + scope: `employee_benefits:read` + tags: + - Employee Benefits + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + - name: page + in: query + required: false + description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + schema: + type: integer + - name: per + in: query + required: false + description: Number of objects per page. For majority of endpoints will default to 25 + schema: + type: integer + - name: include + in: query + required: false + schema: + type: string + enum: + - all_benefits + description: |- + Available options: + - all_benefits: Include all effective dated benefits for each employee instead of only the current benefits. + x-gusto-rswag: true + responses: + '200': + description: Example response + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Employee-Benefit" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: employeeBenefits + x-speakeasy-name-override: get + post: + summary: Create an employee benefit + operationId: post-v1-employees-employee_id-employee_benefits + security: + - CompanyAccessAuth: [] + description: |- + Employee benefits represent an employee enrolled in a particular company benefit. It includes information specific to that employee's enrollment. + + When the application has the `employee_benefits:write:benefit_type_limited` data scope, the application can only create employee benefits for benefit types that are permitted for the application. + + scope: `employee_benefits:write` + tags: + - Employee Benefits + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '201': + description: Example response + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Benefit" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Benefit-Create-Request" + required: true + x-speakeasy-name-override: create + x-speakeasy-group: employeeBenefits + "/v1/employee_benefits/{employee_benefit_id}": + get: + summary: Get an employee benefit + operationId: get-v1-employee_benefits-employee_benefit_id + security: + - CompanyAccessAuth: [] + description: |- + Employee benefits represent an employee enrolled in a particular company benefit. It includes information specific to that employee’s enrollment. + + Benefits containing PHI are only visible to applications with the `employee_benefits:read:phi` scope. + + scope: `employee_benefits:read` + tags: + - Employee Benefits + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_benefit_id + in: path + description: The UUID of the employee benefit. + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Example response + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Benefit" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: retrieve + x-speakeasy-group: employeeBenefits + put: + summary: Update an employee benefit + operationId: put-v1-employee_benefits-employee_benefit_id + security: + - CompanyAccessAuth: [] + description: |- + Employee benefits represent an employee enrolled in a particular company benefit. It includes information specific to that employee's enrollment. + + When the application has the `employee_benefits:write:benefit_type_limited` data scope, the application can only update employee benefits for benefit types that are permitted for the application. + + scope: `employee_benefits:write` + tags: + - Employee Benefits + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_benefit_id + in: path + description: The UUID of the employee benefit. + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Example response + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Benefit" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Benefit-Update-Request" + required: true + x-speakeasy-group: employeeBenefits + x-speakeasy-name-override: update + delete: + summary: Delete an employee benefit + operationId: delete-v1-employee_benefits-employee_benefit_id + security: + - CompanyAccessAuth: [] + description: |- + Employee benefits represent an employee enrolled in a particular company benefit. It includes information specific to that employee's enrollment. + + When the application has the `employee_benefits:write:benefit_type_limited` data scope, the application can only delete employee benefits for benefit types that are permitted for the application. + + scope: `employee_benefits:write` + tags: + - Employee Benefits + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_benefit_id + in: path + description: The UUID of the employee benefit. + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '204': + description: No Content + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-speakeasy-group: employeeBenefits + x-speakeasy-name-override: delete + "/v1/employees/{employee_id}/custom_fields": + get: + summary: Get an employee's custom fields + operationId: get-v1-employees-employee_id-custom_fields + security: + - CompanyAccessAuth: [] + description: |- + Returns a list of the employee's custom fields. + + scope: `employees:read` + tags: + - Employees + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + - name: page + in: query + required: false + description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + schema: + type: integer + - name: per + in: query + required: false + description: Number of objects per page. For majority of endpoints will default to 25 + schema: + type: integer + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Custom-Field-List" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: getCustomFields + "/v1/employees/{employee_uuid}/federal_taxes": + get: + summary: Get federal taxes for an employee + operationId: get-v1-employees-employee_id-federal_taxes + security: + - CompanyAccessAuth: [] + description: |- + Returns federal tax information for an employee. The response structure varies based on the w4_data_type (pre_2020_w4 or rev_2020_w4). + + scope: `employee_federal_taxes:read` + tags: + - Employee Tax Setup + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_uuid + in: path + description: The UUID of the employee + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Federal-Tax" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: employeeTaxSetup + x-speakeasy-name-override: getFederalTaxes + put: + summary: Update federal taxes for an employee + operationId: put-v1-employees-employee_id-federal_taxes + security: + - CompanyAccessAuth: [] + description: |- + Updates federal tax (W4) information for an employee. Only rev_2020_w4 format is accepted for updates. + + scope: `employee_federal_taxes:write` + tags: + - Employee Tax Setup + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_uuid + in: path + description: The UUID of the employee + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Federal-Tax" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '409': + description: Conflict + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + required: + - version + - w4_data_type + - filing_status + properties: + version: + type: string + description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/versioning#object-layer) for information on how to use this field. + example: 56a489ce86ed6c1b0f0cecc4050a0b01 + w4_data_type: + type: string + enum: + - rev_2020_w4 + description: The version of the W4 form. Only rev_2020_w4 is accepted for updates. + filing_status: + type: string + enum: + - Single + - Married + - Head of Household + - Exempt from withholding + description: 'Determines which tax return form an individual will use. One of: Single, Married, Head of Household, Exempt from withholding.' + example: Single + two_jobs: + type: boolean + description: If there are only two jobs (e.g., you and your spouse each have a job), set to true. + dependents_amount: + type: number + description: Amount for dependents; a dependent entitles the taxpayer to claim a dependency exemption. + other_income: + type: number + description: Other income amount. + deductions: + type: number + description: Deductions other than the standard deduction to reduce withholding. + extra_withholding: + type: number + description: Additional amount to be withheld from each paycheck. + federal_withholding_allowance: + type: integer + description: Only applicable when w4_data_type is 'pre_2020_w4' (pre-2020 W4 forms are deprecated for updates). + additional_withholding: + type: number + description: Only applicable when w4_data_type is 'pre_2020_w4' (pre-2020 W4 forms are deprecated for updates). + required: true + x-speakeasy-group: employeeTaxSetup + x-speakeasy-name-override: updateFederalTaxes + "/v1/employees/{employee_id}/forms": + get: + summary: Get all employee forms + operationId: get-v1-employee-forms + security: + - CompanyAccessAuth: [] + description: |- + Get a list of all employee's forms + + scope: `employee_forms:read` + tags: + - Employee Forms + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Success + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Form" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: list + x-speakeasy-group: employeeForms + "/v1/employees/{employee_id}/forms/{form_id}": + get: + summary: Get an employee form + operationId: get-v1-employee-form + security: + - CompanyAccessAuth: [] + description: |- + Get an employee form + + scope: `employee_forms:read` + tags: + - Employee Forms + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + - name: form_id + in: path + description: The UUID of the form + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Form" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: employeeForms + x-speakeasy-name-override: get + "/v1/employees/{employee_id}/forms/{form_id}/pdf": + get: + summary: Get the employee form pdf + operationId: get-v1-employee-form-pdf + security: + - CompanyAccessAuth: [] + description: |- + Get the link to the employee form PDF + + scope: `employee_forms:read` + tags: + - Employee Forms + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + - name: form_id + in: path + description: The UUID of the form + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Form-Pdf" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: employeeForms + x-speakeasy-name-override: getPdf + "/v1/employees/{employee_id}/forms/{form_id}/sign": + put: + summary: Sign an employee form + operationId: put-v1-employee-form-sign + security: + - CompanyAccessAuth: [] + description: |- + Sign an employee form. + + The optional preparer attributes are only valid for I-9 form. When a preparer is used, the + first name, last name, street address, city, state, and zip for that preparer are all required. + + scope: `employee_forms:sign` + tags: + - Employee Forms + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + - name: form_id + in: path + description: The UUID of the form + required: true + schema: + type: string + - name: x-gusto-client-ip + in: header + required: false + description: Optional header to supply the IP address. This can be used to supply the IP address for signature endpoints instead of the signed_by_ip_address parameter. + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Form" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: type: object properties: - amount: + signature_text: type: string - description: The total amount for the group of contractor payments. - readOnly: true - debit_amount: + description: The signature + agree: + type: boolean + description: Whether you agree to sign electronically + signed_by_ip_address: type: string - description: The total debit amount for the group of contractor payments. Sum of wage & reimbursement amount. - readOnly: true - wage_amount: + description: The IP address of the signatory who signed the form. Both IPv4 AND IPv6 are supported. You must provide the IP address with either this parameter OR you can leave out this parameter and set the IP address in the request header using the `x-gusto-client-ip` header instead. + preparer: + type: boolean + description: Whether there is a preparer + preparer_first_name: type: string - description: The total wage amount for the group of contractor payments. - readOnly: true - reimbursement_amount: + preparer_last_name: type: string - description: The total reimbursement amount for the group of contractor payments. - readOnly: true - check_amount: + preparer_street_1: type: string - description: The total check amount for the group of contractor payments. - readOnly: true - readOnly: true - x-examples: - success: - - uuid: 94d9698e-9c95-45d6-b66e-d208258666ab - company_uuid: 5f5aaa38-f517-4f56-85e4-afdb83321663 - check_date: '2025-09-22' - debit_date: '2025-09-18' - status: Unfunded - creation_token: 94d9698e-9c95-45d6-b66e-d208258666ab - partner_owned_disbursement: false - submission_blockers: - - blocker_type: fast_ach_threshold_exceeded - blocker_name: Fast ACH Threshold Exceeded - selected_option: wire_in - status: resolved - unblock_options: - - unblock_type: wire_in - check_date: '2025-09-22' - metadata: - wire_in_deadline: '2025-09-22T18:00:00Z' - wire_in_amount: '760000.0' - - unblock_type: move_to_four_day - check_date: '2025-09-22' - metadata: - debit_date: '2025-09-16' - credit_blockers: - - blocker_type: waiting_for_wire_in - blocker_name: Waiting for Wire In - selected_option: submit_wire - status: unresolved - unblock_options: - - unblock_type: submit_wire - check_date: '2025-09-22' - metadata: - wire_in_deadline: '2025-09-22T18:00:00Z' - wire_in_amount: '760000.0' - wire_in_request_uuid: 96ea4784-979a-45aa-9ccb-83be86b6dcea - totals: - amount: '760000.00' - debit_amount: '760000.00' - wage_amount: '10000.00' - reimbursement_amount: '750000.00' - check_amount: '0.00' - x-tags: - - Contractor Payment Groups - Payroll-List: - description: A list of payrolls for a company. - type: array - x-examples: - success_status: - - uuid: 3601a7a2-0562-4e4c-9559-20886658daac - payroll_uuid: 3601a7a2-0562-4e4c-9559-20886658daac - company_uuid: b43e6012-bf6c-4752-b67b-5c8000595e0e - payroll_status_meta: - cancellable: false - expected_check_date: '2025-06-08' - initial_check_date: '2025-06-27' - expected_debit_time: '2025-06-12T23:00:00Z' - payroll_late: false - initial_debit_cutoff_time: '2025-06-12T23:00:00Z' - off_cycle: false - auto_payroll: false - processed: true - processed_date: '2025-06-11' - calculated_at: '2025-06-11T19:40:51Z' - pay_period: - start_date: '2025-05-20' - end_date: '2025-06-04' - pay_schedule_uuid: ded21d08-02d6-41cb-b211-8d8ca02f1c6a - check_date: '2025-06-08' - external: false - payroll_deadline: '2025-06-12T23:00:00Z' - company_taxes: [] - created_at: '2025-06-11T19:40:51Z' - partner_owned_disbursement: - items: - "$ref": "#/components/schemas/Payroll" - Payroll-Taxes-Type: - type: array - uniqueItems: false - description: An array of tax totals applicable to this payroll. Only included for processed or calculated payrolls when `payroll_taxes` is present in the `include` parameter. - items: - type: object - properties: - name: + preparer_street_2: + type: string + preparer_city: + type: string + preparer_state: + type: string + preparer_zip: + type: string + preparer_agree: + type: string + description: Whether preparer agrees to sign electronically + preparer2: + type: boolean + description: Whether there is a 2nd preparer + preparer2_first_name: + type: string + preparer2_last_name: + type: string + preparer2_street_1: + type: string + preparer2_street_2: + type: string + preparer2_city: + type: string + preparer2_state: + type: string + preparer2_zip: + type: string + preparer2_agree: + type: string + description: Whether 2nd preparer agrees to sign electronically + preparer3: + type: boolean + description: Whether there is a 3rd preparer + preparer3_first_name: + type: string + preparer3_last_name: + type: string + preparer3_street_1: + type: string + preparer3_street_2: + type: string + preparer3_city: + type: string + preparer3_state: + type: string + preparer3_zip: + type: string + preparer3_agree: + type: string + description: Whether 3rd preparer agrees to sign electronically + preparer4: + type: boolean + description: Whether there is a 4th preparer + preparer4_first_name: + type: string + preparer4_last_name: + type: string + preparer4_street_1: + type: string + preparer4_street_2: + type: string + preparer4_city: + type: string + preparer4_state: + type: string + preparer4_zip: + type: string + preparer4_agree: + type: string + description: Whether 4th preparer agrees to sign electronically + required: + - signature_text + - agree + required: true + x-speakeasy-group: employeeForms + x-speakeasy-name-override: sign + "/v1/companies/{company_id}/employees/payment_details": + get: + summary: Get employee payment details for a company + operationId: get-v1-companies-company_id-employees-payment_details + security: + - CompanyAccessAuth: [] + description: |- + Fetches payment details for employees in a given company. Results are paginated. + + Use the `employee_uuid` query parameter to filter for a single employee. + Use the `payroll_uuid` query parameter to filter for employees on a specific payroll. + Providing both `employee_uuid` and `payroll_uuid` will result in a 422 error. + An empty array is returned if the company has no employees or if no employees match the filter criteria. + + The `encrypted_account_number` in the `splits` array is only visible if the `employee_payment_methods:read:account_number` scope is present. + + scope: `employee_payment_methods:read` + tags: + - Employees + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: employee_uuid + in: query + required: false + description: The UUID of a specific employee to fetch payment details for. + schema: + type: string + - name: payroll_uuid + in: query + required: false + description: The UUID of a specific payroll to fetch payment details for employees on that payroll. + schema: + type: string + - name: page + in: query + required: false + description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + schema: + type: integer + - name: per + in: query + required: false + description: Number of objects per page. For majority of endpoints will default to 25 + schema: + type: integer + x-gusto-rswag: true + responses: + '200': + description: A list of employee payment details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Payment-Details-List" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + "/v1/employees/{employee_id}/payment_method": + get: + summary: Get payment method for an employee + operationId: get-v1-employees-employee_id-payment_method + security: + - CompanyAccessAuth: [] + description: |- + Returns the payment method for an employee (e.g. Check or Direct Deposit with split configuration). + + scope: `employee_payment_methods:read` + tags: + - Employee Payment Method + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Payment-Method" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: employeePaymentMethod + x-speakeasy-name-override: get + put: + summary: Update payment method for an employee + operationId: put-v1-employees-employee_id-payment_method + security: + - CompanyAccessAuth: [] + description: |- + Updates the payment method for an employee. Can set to Check or Direct Deposit with split configuration. + + scope: `employee_payment_methods:write` + tags: + - Employee Payment Method + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Payment-Method" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '409': + description: Conflict + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + required: + - version + - type + properties: + version: + type: string + description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/versioning#object-layer) for information on how to use this field. + example: 63859768485e218ccf8a449bb60f14ed + type: + type: string + enum: + - Check + - Direct Deposit + description: The payment method type. If type is Check, split_by and splits do not need to be populated. If type is Direct Deposit, split_by and splits are required. + split_by: + anyOf: + - type: string + enum: + - Percentage + - Amount + - type: 'null' + description: How the payment will be split. If Percentage, split amounts must add up to exactly 100. If Amount, values are in cents and the last split amount must be null to capture the remainder. + splits: + type: + - array + - 'null' + description: Array of payment splits. Required when type is Direct Deposit. + items: + type: object + properties: + uuid: + type: string + description: The bank account UUID. + name: + type: string + description: The bank account name. + priority: + type: integer + description: Order of priority for each payment split; priority 1 is the first account paid. Must be unique and sequential. + split_amount: + type: + - number + - 'null' + description: If split_by is Amount, value is in cents (e.g., 500 for $5.00) and exactly one account must have null to capture the remainder. If split_by is Percentage, value is the percentage (e.g., 60 for 60%). + required: true + x-speakeasy-group: employeePaymentMethod + x-speakeasy-name-override: update + "/v1/employees/{employee_id}/rehire": + get: + summary: Get an employee rehire + operationId: get-v1-employees-employee_id-rehire + security: + - CompanyAccessAuth: [] + description: |- + Retrieve an employee's rehire, which contains information on when the employee returns to work. + + scope: `employments:read` + tags: + - Employee Employments + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Rehire" + '204': + description: No Content + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: employeeEmployments + x-speakeasy-name-override: getRehire + post: + summary: Create an employee rehire + operationId: post-v1-employees-employee_id-rehire + security: + - CompanyAccessAuth: [] + description: |- + Rehire is created whenever an employee is scheduled to return to the company. + + scope: `employments:write` + tags: + - Employee Employments + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '201': + description: Created + content: + application/json: + schema: + "$ref": "#/components/schemas/Rehire" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Rehire-Body" + required: true + x-speakeasy-group: employeeEmployments + x-speakeasy-name-override: createRehire + put: + summary: Update an employee rehire + operationId: put-v1-employees-employee_id-rehire + security: + - CompanyAccessAuth: [] + description: |- + Update an employee's rehire. + + scope: `employments:write` + tags: + - Employee Employments + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: type: string - description: The tax name - employer: - type: boolean - description: Whether this tax is an employer or employee tax - amount: - type: number - description: The total tax for the payroll - Salary-Estimate: - type: object - description: A salary estimate calculation for an S-Corp owner based on occupation, experience level, location, and business revenue. - properties: - uuid: - type: string - description: The UUID of the salary estimate. - readOnly: true - employee_uuid: - type: - - string - - 'null' - description: The UUID of the employee this salary estimate is for. - readOnly: true - employee_job_uuid: - type: - - string - - 'null' - description: The UUID of the employee job this salary estimate is associated with (once accepted). - readOnly: true - annual_net_revenue: - type: - - string - - 'null' - description: The annual net revenue of the business used for salary calculations. - zip_code: - type: - - string - - 'null' - description: The ZIP code used for location-based salary calculations. - pattern: "^\\d{5}$" - result: - type: - - integer - - 'null' - description: The calculated reasonable salary estimate in cents. Null if not yet calculated. - readOnly: true - accepted_at: - type: - - string - - 'null' - format: date-time - description: The timestamp when this salary estimate was accepted and finalized. - readOnly: true - created_at: - type: string - format: date-time - description: The timestamp when this salary estimate was created. - readOnly: true - updated_at: - type: string - format: date-time - description: The timestamp when this salary estimate was last updated. - readOnly: true - occupations: - type: array - description: Array of occupations with their experience levels and time allocations. - items: - type: object - properties: - code: - type: string - description: Bureau of Labor Statistics (BLS) occupation code. - name: - type: string - description: Occupation name. - description: - type: string - description: Occupation description. - experience_level: - type: string - description: Experience level for this occupation. - enum: - - novice - - intermediate - - average - - skilled - - expert - time_percentage: - type: string - description: Percentage of time spent in this occupation (as decimal string, 0-1). - primary: - type: boolean - description: Whether this is the primary occupation. - required: - - code - - experience_level - - time_percentage - required: - - uuid - - employee_uuid - - annual_net_revenue - - zip_code - - created_at - - updated_at - - occupations - x-examples: - success_status: - uuid: 7f5d3d93-6d6f-48c0-9f4e-cd12c2d3e4b2 - employee_uuid: 8c290660-b6c9-4ad7-9f6e-ea146aaf79e8 - employee_job_uuid: - annual_net_revenue: '500000' - zip_code: '94107' - result: 12000000 - accepted_at: - created_at: '2025-01-15T10:30:00.000-08:00' - updated_at: '2025-01-15T10:30:00.000-08:00' - occupations: - - code: 15-1252 - name: Software Developers, Systems Software - description: Research, design, develop, and test operating systems-level software. - experience_level: skilled - time_percentage: '1.0' - primary: true - BLS-Occupation: - type: object - description: A Bureau of Labor Statistics occupation code with its title and description, used for salary estimate calculations. - properties: - code: - type: string - description: Bureau of Labor Statistics (BLS) occupation code. - example: 15-1252 - title: - type: string - description: Occupation title. - example: Software Developers - description: - type: string - description: Occupation description. - example: Research, design, and develop computer and network software or specialized utility programs. - required: - - code - - title - x-examples: - success_status: - - code: 15-1252 - title: Software Developers - description: Research, design, and develop computer and network software or specialized utility programs. - - code: 15-1256 - title: Software Quality Assurance Analysts and Testers - description: Develop and execute software tests to identify software problems and their causes. - Payroll-Credit-Blocker-Unblock-Option-Submit-Wire: - type: object - description: Unblock option to resolve a credit blocker by submitting a wire transfer - required: - - unblock_type - - check_date - - metadata - properties: - unblock_type: - type: string - enum: - - submit_wire - description: The type of unblock option for the credit blocker - readOnly: true - check_date: - type: string - description: The payment check date associated with the unblock option - readOnly: true - metadata: - type: object - required: - - wire_in_amount - - wire_in_deadline - - wire_in_request_uuid - properties: - wire_in_amount: - type: string - description: The amount to be wired in (decimal string) - readOnly: true - wire_in_deadline: - type: string - format: date-time - description: Deadline for the wire transfer to be received - readOnly: true - wire_in_request_uuid: - type: string - description: UUID of the wire in request - readOnly: true - readOnly: true - Payroll-Credit-Blocker-Unblock-Option-Submit-Bank-Screenshot: - type: object - description: Unblock option to resolve a credit blocker by submitting a bank screenshot - required: - - unblock_type - - check_date - - metadata - properties: - unblock_type: - type: string - enum: - - submit_bank_screenshot - description: The type of unblock option for the credit blocker - readOnly: true - check_date: - type: string - description: The payment check date associated with the unblock option - readOnly: true - metadata: - type: object - required: - - information_request_uuid - properties: - information_request_uuid: - type: string - description: UUID of the information request - readOnly: true - bank_account_last_four_digits: - type: - - string - - 'null' - description: Last 4 digits of the bank account number for the bank screenshot RFI - readOnly: true - readOnly: true - Payroll-Credit-Blocker-Unblock-Option-Respond-To-High-Risk-Fraud-Rfi: - type: object - description: Unblock option to resolve a credit blocker by responding to high risk fraud RFI - required: - - unblock_type - - check_date - - metadata - properties: - unblock_type: - type: string - enum: - - respond_to_high_risk_fraud_rfi - description: The type of unblock option for the credit blocker - readOnly: true - check_date: - type: string - description: The payment check date associated with the unblock option - readOnly: true - metadata: - type: object - required: - - information_request_uuid - properties: - information_request_uuid: - type: string - description: UUID of the information request - readOnly: true - readOnly: true - Payroll-Credit-Blocker-Unblock-Option-Wait-For-Reverse-Wire: - type: object - description: Unblock option to resolve a credit blocker by waiting for reverse wire - required: - - unblock_type - - check_date - - metadata - properties: - unblock_type: - type: string - enum: - - wait_for_reverse_wire - description: The type of unblock option for the credit blocker - readOnly: true - check_date: - type: string - description: The payment check date associated with the unblock option - readOnly: true - metadata: - type: object - properties: - reverse_wire_detail_id: - type: - - integer - - 'null' - description: ID of the reverse wire detail - readOnly: true - bank_account_last_four_digits: - type: - - string - - 'null' - description: Last 4 digits of the bank account number for the reverse wire - readOnly: true - readOnly: true - Employee-Section603-High-Earner-Status-List: - type: array - x-examples: - success_status: - - id: f47ac10b-58cc-4372-a567-0e02b2c3d479 - effective_year: 2026 - is_high_earner: false - - id: 550e8400-e29b-41d4-a716-446655440000 - effective_year: 2027 - is_high_earner: true - items: - "$ref": "#/components/schemas/Employee-Section603-High-Earner-Status" - Employee-Section603-High-Earner-Status: - type: object - description: The representation of an employee's Section 603 high earner status for a specific year. 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. - x-examples: - success_status: - id: f47ac10b-58cc-4372-a567-0e02b2c3d479 - effective_year: 2026 - is_high_earner: false - properties: - id: - type: string - description: The unique identifier of the Section 603 high earner status record - readOnly: true - effective_year: - type: integer - description: The year for which this high earner status applies - readOnly: true - is_high_earner: - type: - - boolean - - 'null' - description: Whether the employee is classified as a high earner for Section 603 purposes. Can be null if the status has not yet been determined. - readOnly: true - required: - - id - - effective_year - - is_high_earner - Employee-Section603-High-Earner-Status-Create-Request: - type: object - description: Request body for creating an employee's Section 603 high earner status - properties: - effective_year: - type: integer - description: The year for which this high earner status applies - example: 2026 - is_high_earner: - type: boolean - description: Whether the employee is classified as a high earner for Section 603 purposes - example: true - required: - - effective_year - - is_high_earner - Employee-Section603-High-Earner-Status-Update-Request: - type: object - description: Request body for updating an employee's Section 603 high earner status - properties: - is_high_earner: - type: boolean - description: Whether the employee is classified as a high earner for Section 603 purposes - example: true - required: - - is_high_earner - Employee-Federal-Tax-Pre2020: - title: Employee-Federal-Tax-Pre2020 - type: object - description: Federal tax information for employees using the pre-2020 W4 form. - properties: - version: - type: string - description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. - employee_uuid: - type: string - description: The UUID of the employee. - employee_id: - type: integer - description: The internal ID of the employee. - company_id: - type: integer - description: The internal ID of the company. - w4_data_type: - type: string - description: The version of w4 form. - enum: - - pre_2020_w4 - filing_status: - type: - - string - - 'null' - description: |- - It determines which tax return form an individual will use and is an important factor in computing taxable income. One of: - - Single - - Married - - Head of Household - - Exempt from withholding - - Married, but withhold as Single - federal_withholding_allowance: - type: - - number - - 'null' - description: An exemption from paying a certain amount of income tax. May be null when filing_status is "Exempt from withholding". - additional_withholding: - type: string - description: An additional withholding dollar amount. - required: - - version - - w4_data_type - - additional_withholding - x-tags: + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Rehire" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Rehire-Update-Request-Body" + required: true + x-speakeasy-group: employeeEmployments + x-speakeasy-name-override: rehire + delete: + summary: Delete an employee rehire + operationId: delete-v1-employees-employee_id-rehire + security: + - CompanyAccessAuth: [] + description: |- + Delete an employee rehire. An employee rehire cannot be deleted if it's active (past effective date). + + scope: `employments:write` + tags: + - Employee Employments + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '204': + description: No Content + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-speakeasy-group: employeeEmployments + x-speakeasy-name-override: deleteRehire + "/v1/employees/{employee_uuid}/section603_high_earner_statuses": + get: + summary: Get all Section 603 high earner statuses for an employee + operationId: get-v1-employees-employee_uuid-section603_high_earner_statuses + security: + - CompanyAccessAuth: [] + description: |- + Get all Section 603 high earner statuses for an employee across all years. + + Section 603 of the SECURE 2.0 Act applies to employees aged 50 or older whose prior-year FICA wages exceed the IRS threshold. + These employees are classified as high earners, and their catch-up contributions to pre-tax retirement benefits must be designated as post-tax contributions. + + scope: `employee_benefits:read` + tags: + - Employee Benefits + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: employee_uuid + in: path + description: The UUID of the employee + required: true + schema: + type: string + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '200': + description: successful - with records + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Section603-High-Earner-Status-List" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + post: + summary: Create a Section 603 high earner status + operationId: post-v1-employees-employee_uuid-section603_high_earner_statuses + security: + - CompanyAccessAuth: [] + description: |- + Create a Section 603 high earner status for an employee for a specific year. + + Section 603 of the SECURE 2.0 Act applies to employees aged 50 or older whose prior-year FICA wages exceed the IRS threshold. + These employees are classified as high earners, and their catch-up contributions to pre-tax retirement benefits must be designated as post-tax contributions. + + scope: `employee_benefits:write` + tags: + - Employee Benefits + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: employee_uuid + in: path + description: The UUID of the employee + required: true + schema: + type: string + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '201': + description: created + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Section603-High-Earner-Status" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '409': + description: conflict - record already exists + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '422': + description: unprocessable entity - invalid is_high_earner + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Section603-High-Earner-Status-Create-Request" + required: true + "/v1/employees/{employee_uuid}/section603_high_earner_statuses/{effective_year}": + get: + summary: Get a Section 603 high earner status for a specific year + operationId: get-v1-employees-employee_uuid-section603_high_earner_statuses-effective_year + security: + - CompanyAccessAuth: [] + description: |- + Get a Section 603 high earner status for an employee for a specific year. + + Section 603 of the SECURE 2.0 Act applies to employees aged 50 or older whose prior-year FICA wages exceed the IRS threshold. + These employees are classified as high earners, and their catch-up contributions to pre-tax retirement benefits must be designated as post-tax contributions. + + scope: `employee_benefits:read` + tags: + - Employee Benefits + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: employee_uuid + in: path + description: The UUID of the employee + required: true + schema: + type: string + - name: effective_year + in: path + description: The effective year for the Section 603 status + required: true + schema: + type: integer + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Section603-High-Earner-Status" + '404': + description: Not Found - employee does not exist + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: unprocessable entity - invalid effective_year + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + patch: + summary: Update a Section 603 high earner status + operationId: patch-v1-employees-employee_uuid-section603_high_earner_statuses-effective_year + security: + - CompanyAccessAuth: [] + description: |- + Update a Section 603 high earner status for an employee for a specific year. + + Section 603 of the SECURE 2.0 Act applies to employees aged 50 or older whose prior-year FICA wages exceed the IRS threshold. + These employees are classified as high earners, and their catch-up contributions to pre-tax retirement benefits must be designated as post-tax contributions. + + scope: `employee_benefits:write` + tags: + - Employee Benefits + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: employee_uuid + in: path + description: The UUID of the employee + required: true + schema: + type: string + - name: effective_year + in: path + description: The effective year for the Section 603 status + required: true + schema: + type: integer + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Section603-High-Earner-Status" + '404': + description: Not Found - employee does not exist + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: unprocessable entity - invalid is_high_earner + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Section603-High-Earner-Status-Update-Request" + required: true + "/v1/employees/{employee_uuid}/state_taxes": + get: + summary: Get an employee's state taxes + operationId: get-v1-employees-employee_id-state_taxes + security: + - CompanyAccessAuth: [] + description: |- + Get attributes relevant for an employee's state taxes. + + The data required to correctly calculate an employee's state taxes varies by both home and work location. This API returns information about each question that must be answered grouped by state. Mostly commonly, an employee lives and works in the same state and will only have questions for a single state. The response contains metadata about each question, the type of answer expected, and the current answer stored in Gusto for that question. + + Answers are represented by an array. Today, this array can only be empty or contain exactly one element, but is designed to allow for forward compatibility with effective-dated fields. The `valid_from` and `valid_up_to` fields are optional and currently ignored. + + ## About filing new hire reports + Payroll Admins are responsible for filing a new hire report for each Employee. The `file_new_hire_report` question will only be listed if: + - the `employee.onboarding_status` is one of the following: + - `admin_onboarding_incomplete` + - `self_onboarding_awaiting_admin_review` + - that employee's work state requires filing a new hire report + + scope: `employee_state_taxes:read` + tags: - Employee Tax Setup - Employee-Federal-Tax-Rev2020: - title: Employee-Federal-Tax-Rev2020 - type: object - description: Federal tax information for employees using the revised 2020 W4 form. - properties: - version: - type: string - description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. - employee_uuid: - type: string - description: The UUID of the employee. - employee_id: - type: integer - description: The internal ID of the employee. - company_id: - type: integer - description: The internal ID of the company. - w4_data_type: - type: string - description: The version of w4 form. - enum: - - rev_2020_w4 - filing_status: - type: - - string - - 'null' - description: |- - It determines which tax return form an individual will use and is an important factor in computing taxable income. One of: - - Single - - Married - - Head of Household - - Exempt from withholding - extra_withholding: - type: - - string - - 'null' - description: An employee can request an additional amount to be withheld from each paycheck. - two_jobs: - type: - - boolean - - 'null' - description: If there are only two jobs (i.e., you and your spouse each have a job, or you have two), you can set it to true. - dependents_amount: - type: - - string - - 'null' - description: A dependent is a person other than the taxpayer or spouse who entitles the taxpayer to claim a dependency exemption. - other_income: - type: - - string - - 'null' - description: Other income amount. - deductions: - type: - - string - - 'null' - description: Deductions other than the standard deduction to reduce withholding. - required: - - version - - w4_data_type - - filing_status - - extra_withholding - - two_jobs - - dependents_amount - - other_income - - deductions - x-tags: + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_uuid + in: path + description: The UUID of the employee + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-State-Taxes-List" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: employeeTaxSetup + x-speakeasy-name-override: getStateTaxes + put: + summary: Update an employee's state taxes + operationId: put-v1-employees-employee_id-state_taxes + security: + - CompanyAccessAuth: [] + description: |- + Update attributes relevant for an employee's state taxes. + + As described for the GET endpoint, the answers must be supplied in the effective-dated format, but currently only a single answer will be accepted. The `valid_from` and `valid_up_to` fields are optional and currently ignored. + + scope: `employee_state_taxes:write` + tags: - Employee Tax Setup - Time-Off-Policy-Request: - type: object - description: Request body for creating a time off policy - allOf: - - "$ref": "#/components/schemas/Time-Off-Policy-Request-Base" - - type: object - required: - - name - - policy_type - - accrual_method - Holiday-Pay-Policy-Request: - type: object - description: Request body for creating or updating a holiday pay policy - properties: - federal_holidays: - type: object - description: An object containing federal holiday objects, each containing a boolean selected property. - properties: - new_years_day: - type: object - properties: - selected: - type: boolean - mlk_day: - type: object - properties: - selected: - type: boolean - presidents_day: - type: object - properties: - selected: - type: boolean - memorial_day: - type: object - properties: - selected: - type: boolean - juneteenth: - type: object - properties: - selected: - type: boolean - independence_day: - type: object - properties: - selected: - type: boolean - labor_day: - type: object - properties: - selected: - type: boolean - columbus_day: - type: object - properties: - selected: - type: boolean - veterans_day: + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_uuid + in: path + description: The UUID of the employee + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-State-Taxes-List" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-State-Taxes-Request" + required: true + x-speakeasy-group: employeeTaxSetup + x-speakeasy-name-override: updateStateTaxes + "/v1/employees/{employee_uuid}/time_off_activities": + get: + summary: Get employee time off activities + operationId: get-version-employees-time_off_activities + security: + - CompanyAccessAuth: [] + description: |- + Get employee time off activities. + + scope: `employee_time_off_activities:read` + tags: + - Employees + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_uuid + in: path + description: The UUID of the employee + required: true + schema: + type: string + - name: time_off_type + in: query + required: true + description: 'The time off type name you want to query data for. ex: ''sick'' or ''vacation''' + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Time-Off-Activity-List" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-speakeasy-name-override: getTimeOffActivities + "/v1/companies/{company_id}/reports/employees_annual_fica_wage": + post: + summary: Create an employees annual FICA wage report + operationId: post-v1-companies-company_id-reports-employees_annual_fica_wage + security: + - CompanyAccessAuth: [] + description: |- + Generates a report containing annual FICA (Federal Insurance Contributions Act) wage data for all employees in a company over a specified year range. + + This report provides detailed wage information subject to Social Security and Medicare taxes, useful for benefits integrations that need to verify employee earnings for compliance and benefit calculations. + + The report is generated asynchronously. After making this request, you will receive a `request_uuid` which can be used to poll the [Get a report](ref:get-v1-reports-request_uuid) endpoint to check the status and retrieve the report when complete. + + scope: `company_reports:write` + tags: + - Reports + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + required: true + description: The UUID of the company + schema: + type: string + x-gusto-rswag: true + responses: + '202': + description: accepted + content: + application/json: + schema: + "$ref": "#/components/schemas/Employees-Annual-Fica-Wage-Report-Acceptance" + '422': + description: unprocessable entity - start year before minimum + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + requestBody: + content: + application/json: + schema: type: object + required: + - start_year + - end_year properties: - selected: - type: boolean - thanksgiving: + start_year: + type: integer + description: The start year for the report (must be 2011 or later) + example: 2023 + end_year: + type: integer + description: The end year for the report (must be the current year or earlier, and must be >= start_year) + example: 2024 + required: true + "/v1/employees/{employee_id}": + get: + summary: Get an employee + operationId: get-v1-employees + security: + - CompanyAccessAuth: [] + description: |- + Get an employee. + + Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope is included. This allows you to access employee and job metadata without exposing pay rates. + + scope: `employees:read` + tags: + - Employees + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + - name: include + in: query + explode: false + required: false + schema: + type: array + items: + type: string + enum: + - all_compensations + - all_home_addresses + - company_name + - current_home_address + - custom_fields + - portal_invitations + x-enumDescriptions: + all_compensations: Include all effective dated compensations for each job instead of only the current compensation. Requires `compensations:read` scope. + all_home_addresses: Include all home addresses that have been associated to this employee + company_name: Include the name of the company that the employee is associated with + current_home_address: Include the employee's current home address + custom_fields: Include employees' custom fields + portal_invitations: Include portal invitation status information, including member portal invitation details and partner portal invitation status + description: Include the requested attribute(s) in each employee response. Multiple options are comma separated. + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: get + put: + summary: Update an employee. + operationId: put-v1-employees + security: + - CompanyAccessAuth: [] + description: |- + Update an employee. + + scope: `employees:write` + tags: + - Employees + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee" + '409': + description: invalid version + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '422': + description: invalid attributes + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + requestBody: + content: + application/json: + schema: + allOf: + - "$ref": "#/components/schemas/Versionable-Required" + - type: object + properties: + first_name: + type: string + example: Weezy + middle_initial: + type: + - string + - 'null' + example: F + last_name: + type: string + example: Baby + email: + type: string + example: tunechi@cashmoneyrecords.com + work_email: + type: string + example: new.partner.work@example.com + date_of_birth: + type: string + example: '1991-01-31' + ssn: + type: string + pattern: "[0-9]{9}" + example: '824920233' + preferred_first_name: + type: + - string + - 'null' + two_percent_shareholder: + type: boolean + description: Whether the employee is a two percent shareholder of the company. This field only applies to companies with an S-Corp entity type. + required: true + x-speakeasy-name-override: update + delete: + summary: Delete an onboarding employee + operationId: delete-v1-employee + security: + - CompanyAccessAuth: [] + description: |- + Use this endpoint to delete an employee who is in onboarding. Deleting + an onboarded employee is not allowed and will return a 422 response. Please check out the Terminations api + if you need to terminate an onboarded employee. + + scope: `employees:manage` + tags: + - Employees + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '204': + description: successful + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: cannot delete onboarded employee + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-speakeasy-name-override: delete + "/v1/companies/{company_id}/employees": + get: + summary: Get employees of a company + operationId: get-v1-companies-company_id-employees + security: + - CompanyAccessAuth: [] + description: |- + Get all of the employees, onboarding, active and terminated, for a given company. + + Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope is included. This allows you to access employee and job metadata without exposing pay rates. + + scope: `employees:read` + tags: + - Employees + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + required: true + description: The UUID of the company + schema: + type: string + - name: location_uuid + in: query + required: false + description: Filter employees by a specific primary work location + schema: + type: string + - name: payroll_uuid + in: query + required: false + description: Filter employees by a specific payroll + schema: + type: string + - name: search_term + in: query + required: false + description: A string to search for in the object's names + schema: + type: string + - name: sort_by + in: query + required: false + schema: + type: string + pattern: "^(created_at|name|onboarding_status)(:(asc|desc))?(,(created_at|name|onboarding_status)(:(asc|desc))?)*$" + example: created_at:asc + description: Sort employees by a given field. Cannot be used with search_term. Append `:asc` or `:desc` to specify direction (e.g., `name:desc`). Defaults to ascending. + - name: include + in: query + explode: false + required: false + schema: + type: array + items: + type: string + enum: + - all_compensations + - all_home_addresses + - company_name + - current_home_address + - custom_fields + - portal_invitations + x-enumDescriptions: + all_compensations: Include all effective dated compensations for each job instead of only the current compensation. Requires `compensations:read` scope. + all_home_addresses: Include all home addresses that have been associated to this employee + company_name: Include the name of the company that the employee is associated with + current_home_address: Include the employee's current home address + custom_fields: Include employees' custom fields + portal_invitations: Include portal invitation status information, including member portal invitation details and partner portal invitation status + description: Include the requested attribute(s) in each employee response. Multiple options are comma separated. + - name: onboarded + in: query + required: false + description: Filters employees by those who have completed onboarding + schema: + type: boolean + - name: onboarded_active + in: query + required: false + description: Filters employees who are ready to work (onboarded AND active today) + schema: + type: boolean + - name: terminated + in: query + required: false + description: Filters employees by those who have been or are scheduled to be terminated + schema: + type: boolean + - name: terminated_today + in: query + required: false + description: Filters employees by those who have been terminated and whose termination is in effect today (excludes active and scheduled to be terminated) + schema: + type: boolean + - name: uuids + in: query + explode: false + schema: + type: array + items: + type: string + required: false + description: Optional subset of employees to fetch. + - name: page + in: query + required: false + description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + schema: + type: integer + - name: per + in: query + required: false + description: Number of objects per page. For majority of endpoints will default to 25 + schema: + type: integer + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Show-Employees" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: list + post: + summary: Create an employee + operationId: post-v1-employees + security: + - CompanyAccessAuth: [] + description: |- + Create an employee. + + scope: `employees:manage` + tags: + - Employees + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + required: true + description: Company ID + schema: + type: string + x-gusto-rswag: true + responses: + '201': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: invalid attributes + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: type: object + required: + - first_name + - last_name properties: - selected: + first_name: + type: string + middle_initial: + type: string + last_name: + type: string + email: + type: + - string + - 'null' + format: email + description: The employee's personal email address. Required if self_onboarding is true. + work_email: + type: string + format: email + description: The employee's work email address. + date_of_birth: + type: string + format: date + ssn: + type: string + pattern: "[0-9]{9}" + preferred_first_name: + type: string + self_onboarding: type: boolean - christmas_day: + description: If true, employee is expected to self-onboard. If false, payroll admin is expected to enter in the employee's onboarding information + x-speakeasy-name-override: create + "/v1/employees/{employee_id}/onboarding_status": + get: + summary: Get the employee's onboarding status + operationId: get-v1-employees-employee_id-onboarding_status + security: + - CompanyAccessAuth: [] + description: |- + # Description + Retrieves an employee's onboarding status. The data returned helps inform the required onboarding steps and respective completion status. + + + ## onboarding_status + + ### Admin-facilitated onboarding + | onboarding_status | Description | + |:------------------|------------:| + | `admin_onboarding_incomplete` | Admin needs to complete the full employee-onboarding. | + | `onboarding_completed` | Employee has been fully onboarded and verified. | + + ### Employee self-onboarding + | onboarding_status | Description | + |:------------------|------------:| + | `admin_onboarding_incomplete` | Admin needs to enter basic information about the employee. | + | `self_onboarding_pending_invite` | Admin has the intention to invite the employee to self-onboard (e.g., marking a checkbox), but the system has not yet sent the invitation. | + | `self_onboarding_invited` | Employee has been sent an invitation to self-onboard. | + | `self_onboarding_invited_started` | Employee has started the self-onboarding process. | + | `self_onboarding_invited_overdue` | Employee's start date has passed, and employee has still not completed self-onboarding. | + | `self_onboarding_completed_by_employee` | Employee has completed entering in their information. The status should be updated via API to "self_onboarding_awaiting_admin_review" from here, once the Admin has started reviewing. | + | `self_onboarding_awaiting_admin_review` | Admin has started to verify the employee's information. | + | `onboarding_completed` | Employee has been fully onboarded and verified. | + + ## onboarding_steps + + | onboarding_steps | Requirement(s) to be completed | + |:-----------------|-------------------------------:| + | `personal_details` | Add employee's first name, last name, email, date of birth, social security number | + | `compensation_details` | Associate employee to a job & compensation. | + | `add_work_address` | Add employee work address. | + | `add_home_address` | Add employee home address. | + | `federal_tax_setup` | Set up federal tax withholdings. | + | `state_tax_setup` | Set up state tax withholdings. | + | `direct_deposit_setup` | (optional) Set up employee's direct deposit. | + | `employee_form_signing` | Employee forms (e.g., W4, direct deposit authorization) are generated & signed. | + | `file_new_hire_report` | File a new hire report for this employee. | + | `admin_review` | Admin reviews & confirms employee details (only required for Employee self-onboarding) | + + scope: `employees:read` + tags: + - Employees + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Onboarding-Status" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: getOnboardingStatus + put: + summary: Update the employee's onboarding status + operationId: put-v1-employees-employee_id-onboarding_status + security: + - CompanyAccessAuth: [] + description: |- + Updates an employee's onboarding status. + Below is a list of valid onboarding status changes depending on the intended action to be performed on behalf of the employee. + + | Action | current onboarding_status | new onboarding_status | + |:------------------|:------------:|----------:| + | Mark an employee as self-onboarding | `admin_onboarding_incomplete` | `self_onboarding_pending_invite` | + | Invite an employee to self-onboard | `admin_onboarding_incomplete` or `self_onboarding_pending_invite` | `self_onboarding_invited` | + | Cancel an employee's self-onboarding | `self_onboarding_invited` or `self_onboarding_pending_invite` | `admin_onboarding_incomplete` | + | Review an employee's self-onboarded info | `self_onboarding_completed_by_employee` | `self_onboarding_awaiting_admin_review` | + | Finish an employee's onboarding | `admin_onboarding_incomplete` or `self_onboarding_awaiting_admin_review` | `onboarding_completed` | + + scope: `employees:manage` + tags: + - Employees + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Onboarding-Status" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: invalid status transition + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: type: object + required: + - onboarding_status properties: - selected: - type: boolean - Create-Token-Authentication: - description: '' - type: object - required: - - access_token - - token_type - - expires_in - - created_at - properties: - access_token: - type: string - description: A new access token that can be used for subsequent authenticated requests - token_type: - type: string - default: Bearer - description: The literal string 'Bearer' - expires_in: - type: number - default: 7200 - description: The TTL of this token. After this amount of time, you must hit the refresh token endpoint to continue making authenticated requests. - created_at: - type: number - description: Datetime for when the new access token is created. - refresh_token: - type: - - string - - 'null' - description: A token that must be passed to the refresh token endpoint to get a new authenticated token. Only present when refresh token is provided. - Refresh-Token-Authentication: - description: '' - type: object - allOf: - - "$ref": "#/components/schemas/Create-Token-Authentication" - - type: object - properties: - refresh_token: - type: string - description: A token that must be passed to the refresh token endpoint to get a new authenticated token. - scope: - type: string - description: All of the scopes for which the access token provides access. - Time-Off-Policy-Request-Base: - type: object - description: Base Request Objectfor creating or updating a time off policy - properties: - name: - type: string - description: Name of the time off policy - example: Vacation Policy - policy_type: - type: string - description: Type of the time off policy. Currently only "vacation" and "sick" are supported - enum: - - vacation - - sick - accrual_method: - type: string - description: Accrual method of the time off policy - enum: - - unlimited - - per_pay_period - - per_calendar_year - - per_anniversary_year - - per_hour_worked - - per_hour_worked_no_overtime - - per_hour_paid - - per_hour_paid_no_overtime - accrual_rate: - type: - - string - - 'null' - description: The rate at which the time off hours will accrue for an employee on the policy. Represented as a float, e.g. "40.0". - accrual_rate_unit: - type: - - string - - 'null' - description: 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, e.g. "40.0". - paid_out_on_termination: - type: boolean - description: Boolean representing if an employee's accrued time off hours will be paid out on termination. If accrual_method is unlimited, then paid_out_on_termination must be `false`. - accrual_waiting_period_days: - type: - - integer - - 'null' - description: Number of days before an employee on the policy will begin accruing time off hours. If accrual_method is per_anniversary_year, per_calendar_year, or unlimited, then accrual_waiting_period_days should be 0. - carryover_limit_hours: - type: - - string - - 'null' - description: The max number of hours an employee can carryover from one year to the next. If accrual_method is unlimited, then carryover_limit_hours must be blank. - max_accrual_hours_per_year: - type: - - string - - 'null' - description: The max number of hours an employee can accrue in a year. If accrual_method is yearly (per_anniversary_year, per_calendar_year) or unlimited, then max_accrual_hours_per_year must be blank. - max_hours: - type: - - string - - 'null' - description: The max number of hours an employee can accrue. If accrual_method is unlimited, then max_hours must be blank. - policy_reset_date: - type: - - string - - 'null' - description: The date the policy resets. Format MM-DD - complete: - type: boolean - description: boolean representing if a policy has completed configuration - Time-Off-Policy-Update-Request: - type: object - description: Request body for updating a time off policy - allOf: - - "$ref": "#/components/schemas/Time-Off-Policy-Request-Base" - Payroll-Submission-Blocker-Type: - type: object - description: A blocker that prevents payment submission. - properties: - blocker_type: - type: string - description: The type of blocker that's blocking the payment submission. - readOnly: true - blocker_name: - type: string - description: The name of the submission blocker. - readOnly: true - unblock_options: - type: array - uniqueItems: true - items: - type: object - properties: - unblock_type: - type: string - description: The type of unblock option for the submission blocker. - readOnly: true - check_date: - type: string - description: The payment check date associated with the unblock option. - readOnly: true - metadata: - type: object - additionalProperties: true - description: Additional data associated with the unblock option. - readOnly: true - description: The available options to unblock a submission blocker. - readOnly: true - selected_option: - type: - - string - - 'null' - description: The unblock option that's been selected to resolve the submission blocker. - readOnly: false - status: - type: string - description: The status of the submission blocker. - enum: - - unresolved - - resolved - readOnly: true - Payroll-Credit-Blocker-Type: - type: object - description: A blocker that prevents payment crediting. - properties: - blocker_type: - type: string - description: The type of blocker that's blocking the payment from being credited. - readOnly: true - blocker_name: - type: string - description: The name of the credit blocker. - readOnly: true - unblock_options: - type: array - uniqueItems: true - items: - oneOf: - - "$ref": "#/components/schemas/Payroll-Credit-Blocker-Unblock-Option-Submit-Wire" - - "$ref": "#/components/schemas/Payroll-Credit-Blocker-Unblock-Option-Submit-Bank-Screenshot" - - "$ref": "#/components/schemas/Payroll-Credit-Blocker-Unblock-Option-Respond-To-High-Risk-Fraud-Rfi" - - "$ref": "#/components/schemas/Payroll-Credit-Blocker-Unblock-Option-Wait-For-Reverse-Wire" - discriminator: - propertyName: unblock_type - mapping: - submit_wire: "#/components/schemas/Payroll-Credit-Blocker-Unblock-Option-Submit-Wire" - submit_bank_screenshot: "#/components/schemas/Payroll-Credit-Blocker-Unblock-Option-Submit-Bank-Screenshot" - respond_to_high_risk_fraud_rfi: "#/components/schemas/Payroll-Credit-Blocker-Unblock-Option-Respond-To-High-Risk-Fraud-Rfi" - wait_for_reverse_wire: "#/components/schemas/Payroll-Credit-Blocker-Unblock-Option-Wait-For-Reverse-Wire" - description: The available options to unblock a credit blocker. - readOnly: true - selected_option: - type: - - string - - 'null' - description: The unblock option that's been selected to resolve the credit blocker. - readOnly: false - status: - type: string - description: The status of the credit blocker - enum: - - unresolved - - pending_review - - resolved - - failed - Payroll-Gross-Up-Request: - type: object - description: Request body for calculating gross up amount - properties: - employee_uuid: - type: string + onboarding_status: + type: string + description: Onboarding status value + enum: + - 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 + required: true + x-speakeasy-name-override: updateOnboardingStatus + "/v1/employees/{employee_id}/onboarding_documents_config": + put: + summary: Update employee onboarding documents config + operationId: put-v1-employees-employee_id-onboarding_documents_config + security: + - CompanyAccessAuth: [] + description: |- + Indicate whether to include the Form I-9 for an employee during the onboarding process. + If included, the employee will be prompted to complete Form I-9 as part of their onboarding. + + ## Related guides + - [Employee onboarding](doc:employee-onboarding) + + scope: `employees:manage` + tags: + - Employees + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + required: true + description: The UUID of the employee + example: 7b1d0df1-6403-4a06-8768-c1dd7d24d27a + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Onboarding-Document" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Onboarding-Documents-Config-Request" + x-speakeasy-name-override: updateOnboardingDocumentsConfig + "/v1/employees/{employee_id}/employment_history": + get: + summary: Get employment history for an employee + operationId: get-v1-employees-employee_id-employment_history + security: + - CompanyAccessAuth: [] + description: |- + Retrieve the employment history for a given employee, which includes termination and rehire. + + scope: `employments:read` + tags: + - Employee Employments + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Employment-History-List" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: employeeEmployments + x-speakeasy-name-override: getHistory + "/v1/events": + get: + summary: Get all events + operationId: get-events + security: + - SystemAccessAuth: [] + description: "Fetch all events, going back up to 30 days, that your partner application has the required scopes for. Note that a partner does NOT have to have verified webhook subscriptions in order to utilize this endpoint.\n\n\U0001F4D8 System Access Authentication\n\nThis endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access)\n\nscope: `events:read`" + tags: + - Events + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: starting_after_uuid + in: query + required: false + description: A cursor for pagination. Returns all events occuring after the specified UUID (exclusive). Events are sorted according to the provided sort_order param. + schema: + type: string + - name: resource_uuid + in: query + required: false + description: The UUID of the company. If not specified, will return all events for all companies. + schema: + type: string + - name: limit + in: query + required: false + description: Limits the number of objects returned in a single response, between 1 and 100. The default is 25 + schema: + type: string + - name: event_type + in: query + required: false + description: A string containing the exact event name (e.g. `employee.created`), or use a wildcard match to filter for a group of events (e.g. `employee.*`, `*.created`, `notification.*.created` etc.) + schema: + type: string + - name: sort_order + in: query + required: false + schema: + type: string + enum: + - asc + - desc + description: A string indicating whether to sort resulting events in ascending (asc) or descending (desc) chronological order. Events are sorted by their `timestamp`. Defaults to asc if left empty. + x-gusto-rswag: true + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Event-List" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-speakeasy-name-override: get + "/v1/companies/{company_uuid}/external_payrolls": + get: + summary: Get external payrolls for a company + operationId: get-v1-company-external-payrolls + security: + - CompanyAccessAuth: [] + tags: + - External Payrolls + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: page + in: query + required: false + description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + schema: + type: integer + - name: per + in: query + required: false + description: Number of objects per page. For majority of endpoints will default to 25 + schema: + type: integer + description: |- + Get external payrolls for a company. + + scope: `external_payrolls:read` + x-gusto-rswag: true + responses: + '200': + description: Success + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/External-Payroll-Basic" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: externalPayrolls + x-speakeasy-name-override: get + post: + summary: Create an external payroll for a company + operationId: post-v1-external-payroll + security: + - CompanyAccessAuth: [] + tags: + - External Payrolls + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + description: |- + Creates a new external payroll for a company. + + scope: `external_payrolls:write` + x-gusto-rswag: true + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/External-Payroll" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/External-Payroll-Create-Request" + required: true + x-speakeasy-group: externalPayrolls + x-speakeasy-name-override: create + "/v1/companies/{company_uuid}/external_payrolls/tax_liabilities": + get: + summary: Get tax liabilities + operationId: get-v1-tax-liabilities + security: + - CompanyAccessAuth: [] + tags: + - External Payrolls + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + description: |- + Get tax liabilities from aggregate external payrolls for a company. + + scope: `external_payrolls:read` + x-gusto-rswag: true + responses: + '200': + description: Success + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Tax-Liabilities-Selections" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: externalPayrolls + x-speakeasy-name-override: listTaxLiabilities + put: + summary: Update tax liabilities + operationId: put-v1-tax-liabilities + security: + - CompanyAccessAuth: [] + tags: + - External Payrolls + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + description: |- + Update tax liabilities for a company. + + scope: `external_payrolls:write` + x-gusto-rswag: true + responses: + '200': + description: Success + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Tax-Liabilities-Selections" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Tax-Liability-Selections-Request" + required: true + x-speakeasy-group: externalPayrolls + x-speakeasy-name-override: updateTaxLiabilities + "/v1/companies/{company_uuid}/external_payrolls/tax_liabilities/finish": + put: + summary: Finalize tax liabilities options and convert into processed payrolls + operationId: put-v1-tax-liabilities-finish + security: + - CompanyAccessAuth: [] + tags: + - External Payrolls + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + description: |- + Finalizes tax liabilities for a company. All external payrolls edit action will be disabled. + + ### Asynchronous processing + This endpoint triggers an asynchronous operation. The external payrolls will be processed in the background after finalization. + + scope: `external_payrolls:write` + x-gusto-rswag: true + responses: + '202': + description: Accepted + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-speakeasy-group: externalPayrolls + x-speakeasy-name-override: finalizeTaxLiabilities + "/v1/companies/{company_uuid}/external_payrolls/{external_payroll_id}": + get: + summary: Get an external payroll + operationId: get-v1-external-payroll + security: + - CompanyAccessAuth: [] + tags: + - External Payrolls + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: external_payroll_id + in: path + description: The UUID of the external payroll + required: true + schema: + type: string + description: |- + Get an external payroll for a given company. + + scope: `external_payrolls:read` + x-gusto-rswag: true + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/External-Payroll" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: externalPayrolls + x-speakeasy-name-override: retrieve + put: + summary: Update an external payroll + operationId: put-v1-external-payroll + security: + - CompanyAccessAuth: [] + tags: + - External Payrolls + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: external_payroll_id + in: path + description: The UUID of the external payroll + required: true + schema: + type: string + description: |- + Update an external payroll with a list of external payroll items. + + scope: `external_payrolls:write` + x-gusto-rswag: true + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/External-Payroll" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/External-Payroll-Update-Request" + required: true + x-speakeasy-group: externalPayrolls + x-speakeasy-name-override: update + delete: + summary: Delete an external payroll + operationId: delete-v1-external-payroll + security: + - CompanyAccessAuth: [] + tags: + - External Payrolls + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: external_payroll_id + in: path + description: The UUID of the external payroll + required: true + schema: + type: string + description: |- + Delete an external payroll. + + scope: `external_payrolls:write` + x-gusto-rswag: true + responses: + '204': + description: No Content + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-speakeasy-group: externalPayrolls + x-speakeasy-name-override: delete + "/v1/companies/{company_uuid}/external_payrolls/{external_payroll_id}/calculate_taxes": + get: + summary: Get tax suggestions for an external payroll + operationId: get-v1-external-payroll-calculate-taxes + security: + - CompanyAccessAuth: [] + tags: + - External Payrolls + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: external_payroll_id + in: path + description: The UUID of the external payroll + required: true + schema: + type: string + description: |- + Get tax suggestions for an external payroll. Earnings and/or benefits data must be saved prior to the calculation in order to retrieve accurate tax calculation. + + scope: `external_payrolls:read` + x-gusto-rswag: true + responses: + '200': + description: Success + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/External-Payroll-Tax-Suggestions" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-speakeasy-group: externalPayrolls + x-speakeasy-name-override: calculateTaxes + "/v1/companies/{company_uuid}/flows": + post: + summary: Create a flow + operationId: post-v1-company-flows + security: + - CompanyAccessAuth: [] + description: |- + Generate a link to access a pre-built workflow in Gusto white-label UI. For security, all generated flows will expire within 1 hour of inactivity or 24 hours from creation time, whichever comes first. + + You can see a list of all possible flow types in our [Flow Types](https://docs.gusto.com/embedded-payroll/docs/flow-types) guide. + + You can also mix and match flow_types in the same category to create custom flows suitable for your needs. + + For instance, to create a custom onboarding flow that only includes `add_addresses`, `add_employees`, and `sign_all_forms` steps, simply stitch those flow_types together into a comma delimited string: + + ```json + { + "flow_type": "add_addresses,add_employees,sign_all_forms" + } + ``` + + Please be mindful of data dependencies in each step to achieve the best user experience. + + For more information and in-depth guides review the [Getting Started](https://docs.gusto.com/embedded-payroll/docs/flows-getting-started) guide for flows. + + scope: `flows:write` + tags: + - Flows + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '201': + description: Created + content: + application/json: + schema: + "$ref": "#/components/schemas/Flow" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Create-Flow-Request" + required: true + x-speakeasy-name-override: create + "/v1/employees/{employee_id}/garnishments": + get: + summary: Get garnishments for an employee + operationId: get-v1-employees-employee_id-garnishments + security: + - CompanyAccessAuth: [] + description: |- + Garnishments, or employee deductions, are fixed amounts or percentages deducted from an employee’s pay. They can be deducted a specific number of times or on a recurring basis. Garnishments can also have maximum deductions on a yearly or per-pay-period bases. Common uses for garnishments are court-ordered payments for child support or back taxes. Some companies provide loans to their employees that are repaid via garnishments. + + scope: `garnishments:read` + tags: + - Garnishments + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + - name: page + in: query + required: false + description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + schema: + type: integer + - name: per + in: query + required: false + description: Number of objects per page. For majority of endpoints will default to 25 + schema: + type: integer + x-gusto-rswag: true + responses: + '200': + description: Example response + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Garnishment" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: list + post: + summary: Create a garnishment + operationId: post-v1-employees-employee_id-garnishments + security: + - CompanyAccessAuth: [] + description: |- + Garnishments, or employee deductions, are fixed amounts or percentages deducted from an employee’s pay. They can be deducted a specific number of times or on a recurring basis. Garnishments can also have maximum deductions on a yearly or per-pay-period bases. Common uses for garnishments are court-ordered payments for child support or back taxes. Some companies provide loans to their employees that are repaid via garnishments. + + scope: `garnishments:write` + tags: + - Garnishments + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '201': + description: Example response + content: + application/json: + schema: + "$ref": "#/components/schemas/Garnishment" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Garnishment-Request" + required: true + x-speakeasy-name-override: create + "/v1/garnishments/child_support": + get: + summary: Get child support garnishment data + operationId: get-v1-garnishments-child_support + security: + - CompanyAccessAuth: [] + description: |- + Agency data and requirements to be used for creating child support garnishments + + scope: `garnishments:read` + tags: + - Garnishments + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '200': + description: Example response + content: + application/json: + schema: + "$ref": "#/components/schemas/Child-Support-Data" + x-speakeasy-name-override: getChildSupportData + "/v1/garnishments/{garnishment_id}": + get: + summary: Get a garnishment + operationId: get-v1-garnishments-garnishment_id + security: + - CompanyAccessAuth: [] + description: |- + Garnishments, or employee deductions, are fixed amounts or percentages deducted from an employee’s pay. They can be deducted a specific number of times or on a recurring basis. Garnishments can also have maximum deductions on a yearly or per-pay-period bases. Common uses for garnishments are court-ordered payments for child support or back taxes. Some companies provide loans to their employees that are repaid via garnishments. + + scope: `garnishments:read` + tags: + - Garnishments + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: garnishment_id + in: path + description: The UUID of the garnishment + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Example response + content: + application/json: + schema: + "$ref": "#/components/schemas/Garnishment" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: get + put: + summary: Update a garnishment + operationId: put-v1-garnishments-garnishment_id + security: + - CompanyAccessAuth: [] + description: |- + Garnishments, or employee deductions, are fixed amounts or percentages deducted from an employee’s pay. They can be deducted a specific number of times or on a recurring basis. Garnishments can also have maximum deductions on a yearly or per-pay-period bases. Common uses for garnishments are court-ordered payments for child support or back taxes. Some companies provide loans to their employees that are repaid via garnishments. + + scope: `garnishments:write` + tags: + - Garnishments + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: garnishment_id + in: path + description: The UUID of the garnishment + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Example response + content: + application/json: + schema: + "$ref": "#/components/schemas/Garnishment" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Update-Garnishment-Request" + required: true + x-speakeasy-name-override: update + "/v1/payrolls/{payroll_uuid}/generated_documents/printable_payroll_checks": + post: + summary: Generate printable payroll checks (pdf) + operationId: post-v1-payrolls-payroll_uuid-generated_documents-printable_payroll_checks + security: + - CompanyAccessAuth: [] + description: |- + This endpoint initiates the generation of employee checks for the payroll specified by payroll_uuid. A generation status and corresponding request_uuid will be returned. Use the generated document GET endpoint with document_type: `printable_payroll_checks` and request_uuid to poll the check generation process and retrieve the generated check URL upon completion. + + scope: `generated_documents:write` + tags: + - Payrolls + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: payroll_uuid + in: path + required: true + description: The UUID of the payroll + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Example response + content: + application/json: + schema: + "$ref": "#/components/schemas/Payroll-Check" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Printable-Payroll-Checks-Body" + required: true + x-speakeasy-name-override: generatePrintableChecks + "/v1/generated_documents/{document_type}/{request_uuid}": + get: + summary: Get a generated document + operationId: get-v1-generated_documents-document_type-request_uuid + security: + - CompanyAccessAuth: [] + description: |- + Get a document given the request_uuid. The response will include the generation request's status and urls to the document. A list of urls is returned as certain document types require several urls. + + scope: `generated_documents:read` + tags: + - Generated Documents + x-gusto-integration-type: + - embedded + parameters: + - name: document_type + in: path + required: true + schema: + type: string + enum: + - printable_payroll_checks + description: The type of document being generated + - name: request_uuid + in: path + required: true + description: The UUID of the request to generate a document. Generate document endpoints return request_uuids to be used with the GET generated document endpoint. + schema: + type: string + - "$ref": "#/components/parameters/VersionHeader" + x-gusto-rswag: true + responses: + '200': + description: Example response + content: + application/json: + schema: + "$ref": "#/components/schemas/Generated-Document" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: generatedDocuments + x-speakeasy-name-override: get + "/v1/companies/{company_uuid}/historical_employees": + post: + summary: Create a historical employee + operationId: post-v1-historical_employees + security: + - CompanyAccessAuth: [] + description: |- + Create a historical employee, an employee that was previously dismissed from the company in the current year. + + scope: `employees:manage` + tags: + - Employees + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + required: true + description: The UUID of the company that will employ this historical record. + example: 7b1d0df1-6403-4a06-8768-c1dd7d24d27a + schema: + type: string + x-gusto-rswag: true + responses: + '201': + description: Created + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Historical-Employee-Body" + required: true + x-speakeasy-name-override: createHistorical + "/v1/companies/{company_uuid}/historical_employees/{historical_employee_uuid}": + put: + summary: Update a historical employee + operationId: put-v1-historical_employees + security: + - CompanyAccessAuth: [] + description: |- + Update a historical employee, an employee that was previously dismissed from the company in the current year. + + scope: `employees:manage employees:write` + tags: + - Employees + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + required: true + description: The UUID of the company that will employ this historical record. + example: 7b1d0df1-6403-4a06-8768-c1dd7d24d27a + schema: + type: string + - name: historical_employee_uuid + in: path + required: true + description: The UUID of the historical employee returned from create or list responses. + example: a2b3c4d-5e6f-7890-abcd-ef1234567890 + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + allOf: + - "$ref": "#/components/schemas/Versionable-Required" + - "$ref": "#/components/schemas/Historical-Employee-Body" + required: true + x-speakeasy-group: historicalEmployees + x-speakeasy-name-override: update + "/v1/companies/{company_uuid}/holiday_pay_policy": + get: + summary: Get a company's holiday pay policy + operationId: get-v1-companies-company_uuid-holiday_pay_policy + security: + - CompanyAccessAuth: [] + description: |- + Get a company's holiday pay policy + + scope: `holiday_pay_policies:read` + tags: + - Holiday Pay Policies + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Holiday-Pay-Policy" + '204': + description: no policy exists + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: holidayPayPolicies + x-speakeasy-name-override: get + post: + summary: Create a holiday pay policy for a company + operationId: post-v1-companies-company_uuid-holiday_pay_policy + security: + - CompanyAccessAuth: [] + description: |- + Create a holiday pay policy for a company + + scope: `holiday_pay_policies:write` + tags: + - Holiday Pay Policies + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Holiday-Pay-Policy" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: company already has a policy + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Holiday-Pay-Policy-Request" + x-speakeasy-group: holidayPayPolicies + x-speakeasy-name-override: create + put: + summary: Update a company's holiday pay policy + operationId: put-v1-companies-company_uuid-holiday_pay_policy + security: + - CompanyAccessAuth: [] + description: |- + Update a company's holiday pay policy + + scope: `holiday_pay_policies:write` + tags: + - Holiday Pay Policies + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Holiday-Pay-Policy" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: no policy exists + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + allOf: + - "$ref": "#/components/schemas/Versionable-Required" + - "$ref": "#/components/schemas/Holiday-Pay-Policy-Request" + required: true + x-speakeasy-group: holidayPayPolicies + x-speakeasy-name-override: update + delete: + summary: Delete a company's holiday pay policy + operationId: delete-v1-companies-company_uuid-holiday_pay_policy + security: + - CompanyAccessAuth: [] + description: |- + Delete a company's holiday pay policy + + scope: `holiday_pay_policies:write` + tags: + - Holiday Pay Policies + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '204': + description: successful + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: no policy exists + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-speakeasy-group: holidayPayPolicies + x-speakeasy-name-override: delete + "/v1/companies/{company_uuid}/holiday_pay_policy/add": + put: + summary: Add employees to a company's holiday pay policy + operationId: put-v1-companies-company_uuid-holiday_pay_policy-add + security: + - CompanyAccessAuth: [] + description: |- + Add employees to a company's holiday pay policy + + scope: `holiday_pay_policies:write` + tags: + - Holiday Pay Policies + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Holiday-Pay-Policy" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: no policy exists + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + allOf: + - "$ref": "#/components/schemas/Versionable-Required" + - type: object + required: + - employees + properties: + employees: + type: array + description: An array of employee objects, each containing an employee_uuid. + items: + type: object + properties: + uuid: + type: string + required: true + x-speakeasy-group: holidayPayPolicies + x-speakeasy-name-override: addEmployees + "/v1/companies/{company_uuid}/holiday_pay_policy/remove": + put: + summary: Remove employees from a company's holiday pay policy + operationId: put-v1-companies-company_uuid-holiday_pay_policy-remove + security: + - CompanyAccessAuth: [] + description: |- + Remove employees from a company's holiday pay policy + + scope: `holiday_pay_policies:write` + tags: + - Holiday Pay Policies + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Holiday-Pay-Policy" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: no policy exists + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + allOf: + - "$ref": "#/components/schemas/Versionable-Required" + - type: object + required: + - employees + properties: + employees: + type: array + description: An array of employee objects, each containing an employee_uuid. + items: + type: object + properties: + uuid: + type: string + required: true + x-speakeasy-group: holidayPayPolicies + x-speakeasy-name-override: removeEmployees + "/v1/employees/{employee_id}/home_addresses": + get: + summary: Get an employee's home addresses + operationId: get-v1-employees-employee_id-home_addresses + security: + - CompanyAccessAuth: [] + description: |- + The home address of an employee is used to determine certain tax information about them. Addresses are geocoded on create and update to ensure validity. + + Supports home address effective dating and courtesy withholding. + + scope: `employees:read` + tags: + - Employee Addresses + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Address-List" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: employeeAddresses + x-speakeasy-name-override: get + post: + summary: Create an employee's home address + operationId: post-v1-employees-employee_id-home_addresses + security: + - CompanyAccessAuth: [] + description: |- + The home address of an employee is used to determine certain tax information about them. Addresses are geocoded on create and update to ensure validity. + + Supports home address effective dating and courtesy withholding. + + scope: `employees:write` + tags: + - Employee Addresses + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '201': + description: created + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Address" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + properties: + street_1: + type: string + example: 300 3rd Street + street_2: + type: + - string + - 'null' + city: + type: string + example: San Francisco + state: + type: string + example: CA + zip: + type: string + example: '94107' + effective_date: + type: + - string + - 'null' + format: date + example: '2022-01-31' + courtesy_withholding: + type: boolean + required: true + x-speakeasy-group: employeeAddresses + x-speakeasy-name-override: create + "/v1/home_addresses/{home_address_uuid}": + get: + summary: Get an employee's home address + operationId: get-v1-home_addresses-home_address_uuid + security: + - CompanyAccessAuth: [] + description: |- + The home address of an employee is used to determine certain tax information about them. Addresses are geocoded on create and update to ensure validity. + + Supports home address effective dating and courtesy withholding. + + scope: `employees:read` + tags: + - Employee Addresses + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: home_address_uuid + in: path + description: The UUID of the home address + required: true + schema: + type: string + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Address" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: employeeAddresses + x-speakeasy-name-override: retrieveHomeAddress + put: + summary: Update an employee's home address + operationId: put-v1-home_addresses-home_address_uuid + security: + - CompanyAccessAuth: [] + description: |- + The home address of an employee is used to determine certain tax information about them. Addresses are geocoded on create and update to ensure validity. + + Supports home address effective dating and courtesy withholding. + + scope: `employees:write` + tags: + - Employee Addresses + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: home_address_uuid + in: path + description: The UUID of the home address + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Address" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + allOf: + - "$ref": "#/components/schemas/Versionable-Required" + - type: object + properties: + street_1: + type: string + street_2: + type: + - string + - 'null' + city: + type: string + state: + type: string + zip: + type: string + effective_date: + type: + - string + - 'null' + format: date + courtesy_withholding: + type: boolean + required: true + x-speakeasy-group: employeeAddresses + x-speakeasy-name-override: update + delete: + summary: Delete an employee's home address + operationId: delete-v1-home_addresses-home_address_uuid + security: + - CompanyAccessAuth: [] + description: |- + Used for deleting an employee's home address. Cannot delete the employee's active home address. + + scope: `employees:write` + tags: + - Employee Addresses + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: home_address_uuid + in: path + description: The UUID of the home address + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '204': + description: successful + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-speakeasy-group: employeeAddresses + x-speakeasy-name-override: delete + "/v1/employees/{employee_id}/i9_authorization": + get: + summary: Get an employee's I-9 authorization + operationId: get-v1-employees-employee_id-i9_authorization + security: + - CompanyAccessAuth: [] + description: |- + An employee's I-9 authorization stores information about an employee's authorization status and I-9 signatures, information required to fill out the Form I-9 for employment eligibility verification. + + **NOTE:** The `form_uuid` in responses from this endpoint can be used to retrieve the PDF version of the I-9. See the "get employee form PDF" request for more details. + + ### Related guides + - [I-9 employment verification](doc:i-9-employment-verification) + + scope: `i9_authorizations:read` + tags: + - I-9 Verification + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/I9-Authorization" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: i9Verification + x-speakeasy-name-override: getAuthorization + put: + summary: Create or update an employee's I-9 authorization + operationId: put-v1-employees-employee_id-i9_authorization + security: + - CompanyAccessAuth: [] + description: |- + An employee's I-9 authorization stores information about an employee's authorization status, as well as signatures and other information required to complete the Form I-9 for employment eligibility verification. + + If the version is supplied and the employee I-9 authorization exists, this endpoint acts as an update. Otherwise, it will create an employee I-9 authorization. + + Validations on this endpoint are conditional: + * `document_type` may be required, depending on `authorization_status`. + * Valid formats for `document_number` vary, depending on `document_type`. + * `country` is only allowed with `document_type: 'foreign_passport'`. + * `expiration_date` is only allowed with `authorization_status: 'alien'`. + + > ℹ️ Unneeded information is automatically removed during updates. + > + > If an update causes some formerly-required fields to be unneeded, the now-unneeded data will be removed automatically. + > + > **Example:** Updating `authorization_status` from `alien` to `citizen` will cause any data in `document_type`, `document_number`, `country`, and `expiration_date` to be removed, since these fields are unused for `authorization_status:'citizen'`. + + Detailed instructions for completing Form I-9 can be found at https://www.uscis.gov/sites/default/files/document/forms/i-9instr.pdf + + ### Related guides + - [I-9 employment verification](doc:i-9-employment-verification) + + scope: `i9_authorizations:write` + tags: + - I-9 Verification + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/I9-Authorization" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/I9-Authorization-Request-Body" + required: true + x-speakeasy-name-override: update + x-speakeasy-group: i9Verification + "/v1/employees/{employee_id}/i9_authorization/document_options": + get: + summary: Get an employee's I-9 verification document options + operationId: get-v1-employees-employee_id-i9_authorization-document_options + security: + - CompanyAccessAuth: [] + description: |- + An employee's I-9 verification documents are the documents an employee has provided the employer to verify their identity and authorization to work in the United States. This endpoint returns the possible document options based on the employee's authorization status. These options can then be used to create the I-9 verification documents. + + ### Related guides + - [I-9 employment verification](doc:i-9-employment-verification) + + scope: `i9_authorizations:read` + tags: + - I-9 Verification + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Success + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/I9-Authorization-Document-Option" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: i9Verification + x-speakeasy-name-override: getDocumentOptions + "/v1/employees/{employee_id}/i9_authorization/documents": + get: + summary: Get an employee's I-9 verification documents + operationId: get-v1-employees-employee_id-i9_authorization-documents + security: + - CompanyAccessAuth: [] + description: |- + An employee's I-9 verification documents are the documents an employee has provided the employer to verify their identity and authorization to work in the United States. + + ### Related guides + - [I-9 employment verification](doc:i-9-employment-verification) + + scope: `i9_authorizations:read` + tags: + - I-9 Verification + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Success + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/I9-Authorization-Document" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: i9Verification + x-speakeasy-name-override: getDocuments + put: + summary: Create an employee's I-9 authorization verification documents + operationId: put-v1-employees-employee_id-i9_authorization-documents + security: + - CompanyAccessAuth: [] + description: "An employee's I-9 verification documents are the documents an employee has provided the employer to verify their identity and authorization to work in the United States.\n\nUse the [document options endpoint](ref:get-v1-employees-employee_id-i9_authorization-document_options) to get the possible document types and titles, which can vary depending on the employee's authorization status.\n\n> \U0001F6A7 Every request must contain the complete list of documents for the Employee.\n>\n> Every request to this endpoint removes any previous verification document records for the employee.\n\n### Related guides\n- [I-9 employment verification](doc:i-9-employment-verification)\n\nscope: `i9_authorizations:manage`" + tags: + - I-9 Verification + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '201': + description: Created + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/I9-Authorization-Document" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/I9-Authorization-Documents-Request-Body" + required: true + x-speakeasy-group: i9Verification + x-speakeasy-name-override: createDocuments + "/v1/employees/{employee_id}/i9_authorization/documents/{document_id}": + delete: + summary: Delete an employee's I-9 verification document + operationId: delete-v1-employees-employee_id-i9_authorization-documents-document_id + security: + - CompanyAccessAuth: [] + description: |- + An employee's I-9 verification documents are the documents an employee has provided the employer to verify their identity and authorization to work in the United States. This endpoint deletes a specific verification document. + + ### Related guides + - [I-9 employment verification](doc:i-9-employment-verification) + + scope: `i9_authorizations:manage` + tags: + - I-9 Verification + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path description: The UUID of the employee - net_pay: - type: string - format: float - description: Employee net earnings - required: - - employee_uuid - - net_pay - Payroll-Gross-Up-Response: - type: object - description: Response containing the calculated gross up amount - x-examples: - success_status: - gross_up: '1234.56' - properties: - gross_up: - type: string - format: float - description: Gross up earnings. - Payroll-Calculate-Accruing-Time-Off-Hours-Request: - type: object - description: Request body for calculating accruing time off hours - properties: - regular_hours_worked: - type: - - string - - 'null' - format: float - description: Regular hours worked in this pay period - overtime_hours_worked: - type: - - string - - 'null' - format: float - description: Overtime hours worked in this pay period - double_overtime_hours_worked: - type: - - string - - 'null' - format: float - description: Double overtime hours worked in this pay period - pto_hours_used: - type: - - string - - 'null' - format: float - description: Paid time off hours used in this pay period - sick_hours_used: - type: - - string - - 'null' - format: float - description: Sick hours used in this pay period - Payroll-Calculate-Accruing-Time-Off-Hours-Response: - type: object - description: Response containing the calculated accruing time off hours - x-examples: - success_status: - hours_earned: - - time_off_policy_uuid: 7c8d9e0f-1a2b-3c4d-5e6f-7a8b9c0d1e2f - hours: '3.0' - - time_off_policy_uuid: 1a2b3c4d-5e6f-7a8b-9c0d-1e2f3a4b5c6d - hours: '20.0' - properties: - hours_earned: - type: array - description: Accruing time off hours earned for each time off policy - items: - type: object - properties: - time_off_policy_uuid: - type: string - description: The UUID of the time off policy - hours: - type: string - format: float - description: Hours accrued during this pay period. - required: - - hours_earned - Unprocessed-Payroll: - type: object - description: A payroll that has been transitioned back to unprocessed state after cancellation. - x-examples: - success_status: - uuid: b50e611d-8f3d-4f24-b001-46675f7b5777 - employee_compensations: [] - payroll_uuid: b50e611d-8f3d-4f24-b001-46675f7b5777 - company_uuid: 6bf7807c-a5a0-4f4d-b2e7-3fbb4b2299fb - off_cycle: false - auto_payroll: false - processed: false - processed_date: - calculated_at: - pay_period: - start_date: '2021-02-01' - end_date: '2021-02-15' - pay_schedule_uuid: 00ebc4a4-ec88-4435-8f45-c505bb63e501 - check_date: '2021-02-22' - external: false - payroll_deadline: '2021-02-18T22:00:00Z' - created_at: '2022-02-01T22:00:00Z' - partner_owned_disbursement: - properties: - payroll_deadline: - "$ref": "#/components/schemas/Payroll-Deadline-Type" - check_date: - "$ref": "#/components/schemas/Payroll-Check-Date-Type" - processed: - "$ref": "#/components/schemas/Payroll-Processed-Type" - processed_date: - "$ref": "#/components/schemas/Payroll-Processed-Date-Type" - calculated_at: - "$ref": "#/components/schemas/Payroll-Calculated-At-Type" - uuid: - "$ref": "#/components/schemas/Payroll-Payroll-Uuid-Type" - payroll_uuid: - "$ref": "#/components/schemas/Payroll-Payroll-Uuid-Type" - company_uuid: - "$ref": "#/components/schemas/Payroll-Company-Uuid-Type" - off_cycle: - "$ref": "#/components/schemas/Payroll-Off-Cycle-Type" - off_cycle_reason: - "$ref": "#/components/schemas/Off-Cycle-Reason-Type" - auto_payroll: - "$ref": "#/components/schemas/Auto-Pilot-Type" - external: - "$ref": "#/components/schemas/Payroll-External-Type" - pay_period: - "$ref": "#/components/schemas/Payroll-Pay-Period-Type" - created_at: - "$ref": "#/components/schemas/Created-At-Type" - partner_owned_disbursement: - "$ref": "#/components/schemas/Payroll-Partner-Owned-Disbursement-Type" - Contractor-Payment-Body: - description: Request body for creating a contractor payment. - type: object - required: - - contractor_uuid - - date - properties: - contractor_uuid: - type: string - description: The contractor receiving the payment. - date: - type: string - format: date - description: Date of contractor payment. - example: '2020-01-01' - payment_method: - type: string - enum: - - Direct Deposit - - Check - - Historical Payment - default: Direct Deposit - wage: - type: string - format: float - description: If the contractor is on a fixed wage, this is the fixed wage payment for the contractor, regardless of hours worked. - example: '5000' - hours: - type: string - format: float - description: If the contractor is on an hourly wage, this is the number of hours that the contractor worked for the payment. - example: '40' - bonus: - type: string - format: float - description: If the contractor is on an hourly wage, this is the bonus the contractor earned. - example: '500' - reimbursement: - type: string - format: float - description: Reimbursed wages for the contractor. - example: '20' - x-tags: - - Contractor Payments - Payroll-Submission-Blocker-Request-Type: - type: object - description: Request object for resolving a submission blocker. Each submission_blocker should include a selected unblock option. - required: - - blocker_type - - selected_option - properties: - blocker_type: - type: string - description: The type of submission_blocker that is blocking the payment. - selected_option: - type: string - description: The selected option to unblock the payment's submission_blocker. - Company-Industry-Selection-Required-Body: - type: object - properties: - title: - type: - - string - - 'null' - example: Computer Training - description: Industry title - naics_code: - type: string - pattern: "^\\d{6}$" - example: 611420 - description: North American Industry Classification System (NAICS) is used to classify businesses with a six digit number based on the primary type of work the business performs. - sic_codes: - type: array - description: A list of Standard Industrial Classification (SIC) codes, which are four digit numbers that categorize the industries that companies belong to based on their business activities. If sic_codes is not passed in, we will perform an internal lookup with `naics_code`. - items: + required: true + schema: type: string - pattern: "^\\d{4}$" - example: 8243 - required: - - naics_code - Create-Flow-Request: - description: Request body for creating a flow. - type: object - required: - - flow_type - properties: - flow_type: - type: string - description: 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"). - example: company_onboarding - entity_uuid: - type: string - description: UUID of the target entity applicable to the flow. This field is optional for company flows. - entity_type: - type: string - description: The type of target entity applicable to the flow. This field is optional for company flows. - enum: - - Company - - Employee - - Contractor - - Payroll - options: - type: object - description: Optional configuration object that varies based on the flow_type. This can contain arbitrary key-value pairs specific to the flow being generated. - additionalProperties: true - x-examples: - example: - flow_type: company_onboarding - with_entity: - flow_type: employee_form_signing - entity_uuid: 1b71bb5b-4811-46e9-8a8a-cf5521cbeda6 - entity_type: Employee - with_options: - flow_type: company_retirement_benefits - options: - provider: guideline - Event-List: - type: array - description: A list of events - x-examples: - success_status: - - uuid: f7397a24-57ad-4fae-b011-d258e8232900 - event_type: employee.created - resource_type: Company - resource_uuid: 92a20431-9489-4bde-ad27-6feb20b969d5 - entity_type: Employee - entity_uuid: 92a20431-9489-4bde-ad27-6feb20b969d5 - timestamp: 1686784995 - - uuid: a1b2c3d4-e5f6-7890-abcd-ef1234567890 - event_type: company.provisioned - resource_type: Company - resource_uuid: 92a20431-9489-4bde-ad27-6feb20b969d5 - entity_type: Company - entity_uuid: 92a20431-9489-4bde-ad27-6feb20b969d5 - timestamp: 1686784994 - items: - "$ref": "#/components/schemas/Event" - Company-Location-Request: - type: object - description: Request body for creating a company location (company address). - properties: - street_1: - type: string - description: Street address line 1. - example: 300 3rd Street - street_2: - type: - - string - - 'null' - description: Street address line 2. - example: Apartment 318 - city: - type: string - description: City. - example: San Francisco - state: - type: string - description: State code (e.g. CA). Must be a valid two-letter state code. - example: CA - zip: - type: string - description: ZIP code. Must be a valid US zip (e.g. 12345 or 12345-6789). - example: '94107' - country: - type: string - description: Country code. Defaults to USA. - default: USA - example: USA - phone_number: - type: string - description: Phone number. Must be 10 digits. - pattern: "[0-9]{10}" - example: '8009360383' - mailing_address: - type: boolean - description: Specify if this location is the company's mailing address. - filing_address: - type: boolean - description: Specify if this location is the company's filing address. - required: - - phone_number - - street_1 - - city - - state - - zip - x-examples: - typical_location: - street_1: 300 3rd Street - street_2: Apartment 318 - city: San Francisco - state: CA - zip: '94107' - country: USA - phone_number: '8009360383' - mailing_address: false - filing_address: false - Company-Locations-List: - type: array - x-examples: - success_status: - - uuid: 04552eb9-7829-4b18-ae96-6983552948df - version: 7d9753112507b9dda4fb97910f39b06e - company_uuid: 6bf7807c-a5a0-4f4d-b2e7-3fbb4b2299fb - phone_number: 5825710808 - street_1: 412 Kiera Stravenue - street_2: Suite 391 - city: San Francisco - state: CA - zip: 94107 - country: USA - mailing_address: false - filing_address: false - created_at: - "$ref": "#/components/schemas/Created-At-Type" - updated_at: '2023-09-12T16:42:25.000-07:00' - active: true - inactive: false - - uuid: fa94a2fd-11a8-4024-87ff-85c587d9d2b4 - version: 15e6b9680e00f3122729e64e3cef3224 - company_uuid: 6bf7807c-a5a0-4f4d-b2e7-3fbb4b2299fb - phone_number: 2866070827 - street_1: 644 Fay Vista - street_2: Suite 842 - city: Richmond - state: VA - zip: 23218 - country: USA, - mailing_address: true - filing_address: false - created_at: - "$ref": "#/components/schemas/Created-At-Type" - updated_at: '2023-09-12T16:42:25.000-07:00' - active: true - inactive: false - items: - "$ref": "#/components/schemas/Location" - Employee-Onboarding-Documents-Config-Request: - type: object - description: Request body for updating an employee's onboarding documents configuration. - properties: - i9_document: - type: boolean - default: false + - name: document_id + in: path + description: The UUID of the document + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '204': + description: No Content + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-speakeasy-group: i9Verification + x-speakeasy-name-override: deleteDocument + "/v1/employees/{employee_id}/i9_authorization/employer_sign": + put: + summary: Employer sign an employee's Form I-9 + operationId: put-v1-employees-employee_id-i9_authorization-employer_sign + security: + - CompanyAccessAuth: [] + description: |- + Sign an employee's Form I-9 as an employer. Once the form is signed, the employee's I-9 authorization is considered complete and cannot be modified. + + ### Prerequisites + Before calling this endpoint: + 1. The employee must have a completed [I-9 authorization](ref:put-v1-employees-employee_id-i9_authorization) + 2. The employee must have signed the Form I-9 + 3. [I-9 verification documents](ref:put-v1-employees-employee_id-i9_authorization-documents) must be submitted + + ### Related guides + - [I-9 employment verification](doc:i-9-employment-verification) + + scope: `i9_authorizations:manage` + tags: + - I-9 Verification + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + - name: x-gusto-client-ip + in: header + required: false + schema: + type: string + description: Optional header to supply the IP address. This can be used to supply the IP address for signature endpoints instead of the signed_by_ip_address parameter. + x-gusto-rswag: true + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/I9-Authorization" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/I9-Authorization-Employer-Sign-Request-Body" + required: true + x-speakeasy-group: i9Verification + x-speakeasy-name-override: employerSign + "/v1/companies/{company_uuid}/information_requests": + get: + summary: Get all information requests for a company + operationId: get-information-requests + security: + - CompanyAccessAuth: [] + description: |- + Fetch all information requests for a company. + + scope: `information_requests:read` + tags: + - Information Requests + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: sort_by + in: query + required: false + schema: + type: string + pattern: "^(payroll_blocker|status|type)(:(asc|desc))?(,(payroll_blocker|status|type)(:(asc|desc))?)*$" + example: payroll_blocker:asc + description: 'Sort by one or more fields. Options: payroll_blocker, status, type. Append `:asc` or `:desc` to specify direction (e.g., `payroll_blocker:asc`). Defaults to ascending.' + x-gusto-rswag: true + responses: + '200': + description: Successful + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Information-Request" + '404': description: | - 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. - x-examples: - enable_i9: - i9_document: true - disable_i9: - i9_document: false - Contractor-Update-Request-Body: - description: Request body for updating a contractor. - type: object - allOf: - - "$ref": "#/components/schemas/Versionable-Required" - - "$ref": "#/components/schemas/Contractor-Body" - x-examples: - update_individual_contractor: - version: b48c46abfed1487b873b442334b3c4ff - start_date: '2021-01-01' - first_name: Chanel - last_name: Boyle - middle_initial: X - wage_type: Hourly - hourly_rate: '20.00' - is_active: true - update_business_contractor: - version: b48c46abfed1487b873b442334b3c4ff - start_date: '2020-01-11' - business_name: Contracting Solutions - ein: '991113334' - wage_type: Fixed - is_active: false - Contractor-Create-Request-Body: - description: Request body for creating a contractor. - type: object - required: - - type - - wage_type - - start_date - allOf: - - "$ref": "#/components/schemas/Contractor-Body" - x-examples: - create_individual_contractor: - type: Individual - wage_type: Fixed - first_name: Johnson - last_name: Johnson - start_date: '2020-04-01' - self_onboarding: true - email: johnson@johnson.com - file_new_hire_report: true - work_state: CA - create_business_contractor: - type: Business - wage_type: Fixed - business_name: Johnson-Johnson Contractors - start_date: '2020-04-01' - Compensations-Body: - type: object - properties: - rate: - type: string - description: The dollar amount paid per payment unit. - example: '70000.00' - payment_unit: - type: string - description: The unit accompanying the compensation rate. If the employee is an owner, rate should be 'Paycheck'. - enum: - - Hour - - Week - - Month - - Year - - Paycheck - example: Year - flsa_status: - "$ref": "#/components/schemas/Flsa-Status-Type" - effective_date: - type: string - description: The effective date for this compensation. - example: '2023-01-01' - title: - type: string - description: The job title for this compensation. - example: Software Engineer - adjust_for_minimum_wage: - type: boolean - description: Whether the compensation should be adjusted to minimum wage during payroll calculation. - minimum_wages: - type: array - items: - type: object - properties: - uuid: - type: string - description: The UUID of the minimum wage. - Compensations-Request-Body: - description: Request body for creating a compensation. - type: object - required: - - rate - - payment_unit - - flsa_status - allOf: - - "$ref": "#/components/schemas/Compensations-Body" - x-examples: - create_compensation: - rate: '70000.00' - payment_unit: Year - flsa_status: Exempt - effective_date: '2023-01-01' - title: Software Engineer - Compensations-Update-Request-Body: - description: Request body for updating a compensation. - type: object - allOf: - - "$ref": "#/components/schemas/Versionable-Required" - - "$ref": "#/components/schemas/Compensations-Body" - x-examples: - update_compensation: - version: b48c46abfed1487b873b442334b3c4ff - rate: '75000.00' - payment_unit: Year - flsa_status: Exempt - effective_date: '2023-01-01' - title: Senior Engineer - Payroll-Employee-Compensations-Base-Type: - type: object - properties: - employee_uuid: - type: string - description: The UUID of the employee. - readOnly: true - excluded: - type: boolean - description: This employee will be excluded (skipped) from payroll calculation and will not be paid for the payroll. Cancelling a payroll would reset all employees' excluded back to false. - readOnly: true - first_name: - type: - - string - - 'null' - description: The first name of the employee. Requires `employees:read` scope. - readOnly: true - preferred_first_name: - type: - - string - - 'null' - description: The preferred first name of the employee. Requires `employees:read` scope. - readOnly: true - last_name: - type: - - string - - 'null' - description: The last name of the employee. Requires `employees:read` scope. - readOnly: true - gross_pay: - type: - - number - - 'null' - description: The employee's gross pay, equal to regular wages + cash tips + payroll tips + any other additional earnings, excluding imputed income. This value is only available for processed payrolls. - readOnly: true - net_pay: - type: - - number - - 'null' - description: The employee's net pay, equal to gross_pay - employee taxes - employee deductions or garnishments - cash tips. This value is only available for processed payrolls. - readOnly: true - check_amount: - type: - - number - - 'null' - description: The employee's check amount, equal to net_pay + reimbursements. This value is only available for processed payrolls. - readOnly: true - payment_method: - type: - - string - - 'null' - description: The employee's compensation payment method. Is *only* `Historical` when retrieving external payrolls initially run outside of Gusto, then put into Gusto. - enum: - - Direct Deposit - - Check - - Historical - memo: - type: - - string - - 'null' - description: Custom text that will be printed as a personal note to the employee on a paystub. - readOnly: true - fixed_compensations: - type: array - uniqueItems: false - description: An array of fixed compensations for the employee. Fixed compensations include tips, bonuses, and one time reimbursements. If this payroll has been processed, only fixed compensations with a value greater than 0.00 are returned. For an unprocessed payroll, all active fixed compensations are returned. - items: - type: object - properties: - name: - type: string - description: The name of the compensation. This also serves as the unique, immutable identifier for this compensation. - amount: - type: string - description: The amount of the compensation for the pay period. - job_uuid: - type: string - description: The UUID of the job for the compensation. - readOnly: true - hourly_compensations: - type: array - uniqueItems: false - description: An array of hourly compensations for the employee. Hourly compensations include regular, overtime, and double overtime hours. If this payroll has been processed, only hourly compensations with a value greater than 0.00 are returned. For an unprocessed payroll, all active hourly compensations are returned. - items: - type: object - properties: - name: - type: string - description: The name of the compensation. This also serves as the unique, immutable identifier for this compensation. - hours: - type: string - description: The number of hours to be compensated for this pay period. - amount: - type: string - description: The amount of the compensation. This field is only available after the payroll is calculated and cannot be used for updating hourly compensations. - job_uuid: - type: string - description: The UUID of the job for the compensation. - readOnly: true - compensation_multiplier: - type: number - description: The amount multiplied by the base rate to calculate total compensation per hour worked. - readOnly: true - flsa_status: - type: string - description: The FLSA Status of the employee's primary job compensation - readOnly: true - paid_time_off: - type: array - uniqueItems: false - description: An array of all paid time off the employee is eligible for this pay period. - items: - type: object - properties: - name: - type: string - description: The name of the PTO. This also serves as the unique, immutable identifier for the PTO. - hours: - type: string - description: The hours of this PTO taken during the pay period. - final_payout_unused_hours_input: - type: - - string - - 'null' - description: The outstanding hours paid upon termination. This field is only applicable for termination payrolls. - reimbursements: - type: array - uniqueItems: false - description: An array of reimbursements for the employee. - items: - type: object - properties: - amount: - type: string - description: The dollar amount of the reimbursement for the pay period. - description: - type: - - string - - 'null' - description: The description of the reimbursement. Null for unnamed reimbursements. - uuid: - type: - - string - - 'null' - description: The UUID of the reimbursement. Null for unnamed reimbursements. This field is only available for unprocessed payrolls. - readOnly: true - recurring: - type: boolean - description: Whether the reimbursement is recurring. This field is only available for unprocessed payrolls. - readOnly: true - required: - - amount - - description - Payroll-Unprocessed-Employee-Compensations-Type: - allOf: - - "$ref": "#/components/schemas/Payroll-Employee-Compensations-Base-Type" - - "$ref": "#/components/schemas/Versionable" - - type: object - properties: - version: - description: The current version of this employee compensation. This field is only available for prepared payrolls. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/api-fundamentals#optimistic-version-control) for information on how to use this field. - Payroll-Unprocessed: - description: An unprocessed payroll with employee compensations. - x-examples: - success_status: - uuid: 4428f108-e46e-4ab6-ba20-03cea031cfc0 - employee_compensations: [] - payroll_uuid: 4428f108-e46e-4ab6-ba20-03cea031cfc0 - company_uuid: 42b5333b-ee39-493a-bf7e-f41f2bd67848 - payroll_status_meta: - cancellable: false - expected_check_date: '2025-06-17' - initial_check_date: '2025-06-17' - expected_debit_time: '2025-06-11T23:00:00Z' - payroll_late: false - initial_debit_cutoff_time: '2025-06-11T23:00:00Z' - off_cycle: true - auto_payroll: false - off_cycle_reason: Bonus - withholding_pay_period: Twice per month - skip_regular_deductions: true - fixed_withholding_rate: true - final_termination_payroll: false - processed: false - processed_date: - calculated_at: - pay_period: - start_date: '2025-06-10' - end_date: '2025-06-16' - pay_schedule_uuid: - check_date: '2025-06-17' - external: false - payroll_deadline: '2025-06-11T23:00:00Z' - fixed_compensation_types: - - name: Bonus - - name: Commission - - name: Paycheck Tips - - name: Cash Tips - - name: Correction Payment - - name: Reimbursement - created_at: '2025-06-11T19:40:52Z' - partner_owned_disbursement: - type: object - properties: - payroll_deadline: - "$ref": "#/components/schemas/Payroll-Deadline-Type" - check_date: - "$ref": "#/components/schemas/Payroll-Check-Date-Type" - processed: - "$ref": "#/components/schemas/Payroll-Processed-Type" - processed_date: - "$ref": "#/components/schemas/Payroll-Processed-Date-Type" - calculated_at: - "$ref": "#/components/schemas/Payroll-Calculated-At-Type" - uuid: - "$ref": "#/components/schemas/Payroll-Payroll-Uuid-Type" - payroll_uuid: - "$ref": "#/components/schemas/Payroll-Payroll-Uuid-Type" - company_uuid: - "$ref": "#/components/schemas/Payroll-Company-Uuid-Type" - off_cycle: - "$ref": "#/components/schemas/Payroll-Off-Cycle-Type" - off_cycle_reason: - "$ref": "#/components/schemas/Off-Cycle-Reason-Type" - auto_payroll: - "$ref": "#/components/schemas/Auto-Pilot-Type" - external: - "$ref": "#/components/schemas/Payroll-External-Type" - final_termination_payroll: - "$ref": "#/components/schemas/Payroll-Final-Termination-Payroll-Type" - withholding_pay_period: - "$ref": "#/components/schemas/Payroll-Withholding-Pay-Period-Type" - skip_regular_deductions: - "$ref": "#/components/schemas/Payroll-Skip-Regular-Deductions-Type" - fixed_withholding_rate: - "$ref": "#/components/schemas/Payroll-Fixed-Withholding-Rate-Type" - pay_period: - "$ref": "#/components/schemas/Payroll-Pay-Period-Type" - payroll_status_meta: - "$ref": "#/components/schemas/Payroll-Payroll-Status-Meta-Type" - employee_compensations: - type: array - uniqueItems: false - items: - "$ref": "#/components/schemas/Payroll-Unprocessed-Employee-Compensations-Type" - payment_speed_changed: - "$ref": "#/components/schemas/Payroll-Payment-Speed-Changed-Type" - created_at: - "$ref": "#/components/schemas/Created-At-Type" - fixed_compensation_types: - "$ref": "#/components/schemas/Payroll-Fixed-Compensation-Types-Type" - processing_request: - "$ref": "#/components/schemas/Payroll-Processing-Request" - partner_owned_disbursement: - "$ref": "#/components/schemas/Payroll-Partner-Owned-Disbursement-Type" - Token-Info: - type: object - properties: - scope: - type: string - description: 'Space-separated list of OAuth scopes granted to this access token. + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + "/v1/invoices/{invoice_period}": + get: + summary: Retrieve invoicing data for companies + operationId: get-invoices-invoice-period + security: + - SystemAccessAuth: [] + description: "Retrieve data for active companies used to calculate invoices for Gusto Embedded Payroll. A company is considered active for an invoice period if they are an active partner managed company, have run payroll or created contractor payments since becoming a partner managed company, and are not suspended at any point during the invoice period. This endpoint forces pagination, with 100 results returned at a time. You can learn more about our pagination here: [pagination guide](https://docs.gusto.com/embedded-payroll/docs/pagination)\n\n\U0001F4D8 System Access Authentication\n\nThis endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access)\n\nscope: `invoices:read`" + tags: + - Invoices + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: invoice_period + in: path + required: true + description: The month we are calculating the invoice for. Must be in YYYY-MM format + schema: + type: string + - name: page + in: query + required: false + description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + schema: + type: integer + - name: per + in: query + required: false + description: Number of objects per page. For majority of endpoints will default to 25 + schema: + type: integer + - name: company_uuids + in: query + required: false + description: Filter companies returned in the active_companies response, will return an error if company not active during provided invoice period. i.e. `?company_uuids=781922d8-e780-4b6b-bf74-ee303166d022,bbbca930-7322-491c-ba7f-98707a52a9c5` + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: OK + content: + application/json: + schema: + "$ref": "#/components/schemas/Invoice-Data" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-speakeasy-name-override: get + "/v1/jobs/{job_id}": + get: + summary: Get a job + operationId: get-v1-jobs-job_id + security: + - CompanyAccessAuth: [] + description: |- + Get a job. + + Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope is included. This allows you to access employee and job metadata without exposing pay rates. + + Compensation data in the response requires the `compensations:read` scope. + + scope: `jobs:read` + tags: + - Jobs and Compensations + x-gusto-integration-type: + - embedded + parameters: + - name: job_id + in: path + description: The UUID of the job + required: true + schema: + type: string + - name: include + in: query + required: false + schema: + type: string + enum: + - all_compensations + description: | + Available options: + - all_compensations: Include all effective dated compensations for each job instead of only the current compensation + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Job" + '404': + description: | + Not Found -' - example: companies:read public - resource: - type: - - object - - 'null' + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: jobsAndCompensations + x-speakeasy-name-override: getJob + put: + summary: Update a job + operationId: put-v1-jobs-job_id + security: + - CompanyAccessAuth: [] + description: |- + Update a job. + + scope: `jobs:write` + tags: + - Jobs and Compensations + x-gusto-integration-type: + - embedded + parameters: + - name: job_id + in: path + description: The UUID of the job + required: true + schema: + type: string + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Job" + '404': description: | - The resource associated with this access token. Null when - the token has no associated resource. - properties: - type: - type: string - description: 'The type of resource associated with the access token, e.g. `Company` for a company-level token or `Oauth::Application` for a system-level token. + Not Found -' - example: Company - uuid: - type: string - format: uuid - description: The UUID of the associated resource - example: 7b1d0df1-6403-4a06-8768-c1dd7d24d27a - resource_owner: - type: - - object - - 'null' + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': description: | - The resource owner (user) who authorized this access token. Null for - system-level tokens or when the owner cannot be determined. - properties: - type: - type: string - enum: - - CompanyAdmin - - Employee - - Contractor - description: | - The type of resource owner: - - `CompanyAdmin`: A company administrator - - `Employee`: An employee - - `Contractor`: A contractor - example: CompanyAdmin - uuid: - type: string - format: uuid - description: The UUID of the resource owner - example: 8fdc31f0-a8a7-4872-a9f1-dcb5e6f876e3 - x-examples: - company_admin_token: - scope: companies:read public - resource: - type: Company - uuid: 7b1d0df1-6403-4a06-8768-c1dd7d24d27a - resource_owner: - type: CompanyAdmin - uuid: 8fdc31f0-a8a7-4872-a9f1-dcb5e6f876e3 - system_token: - scope: partner_managed_companies:create public - resource: - type: Oauth::Application - uuid: 9c2a1b3d-4e5f-6789-abcd-ef0123456789 - resource_owner: - People-Batch: - type: object - description: A batch for bulk people creation. - x-examples: - success_status: - uuid: 191e7162-3026-497e-aca2-f81b7e93204e - idempotency_key: 80a74f8b-2c16-45e5-9038-aa108849c6e6 - status: pending - batch_action: create - properties: - uuid: - type: string - format: uuid - description: The unique identifier of the people batch. - readOnly: true - idempotency_key: - type: string - format: uuid - description: The idempotency key provided when creating the batch. - status: - type: string - enum: - - pending - - processing - - completed - - failed - - partial_success - description: The current status of the batch processing. - batch_action: - type: string - description: The action being performed on the batch. - required: - - uuid - - idempotency_key - - status - - batch_action - People-Batch-Results: - type: object - description: A people batch with processing results. - x-examples: - success_status: - uuid: f711ab7a-2d44-4556-b90c-9f883195f53a - idempotency_key: 95d84feb-3a17-4c0b-a00b-bf8d3dec3326 - status: pending - submitted_at: '2026-03-02T15:09:50-08:00' - completed_at: - submitted_items: - processed_items: 0 - excluded_items: 0 - results: [] - properties: - uuid: - type: string - format: uuid - description: The unique identifier of the people batch. - readOnly: true - idempotency_key: - type: string - format: uuid - description: The idempotency key provided when creating the batch. - status: - type: string - enum: - - pending - - processing - - completed - - failed - - partial_success - description: The current status of the batch processing. - submitted_at: - type: string - format: date-time - description: The timestamp when the batch was submitted. - completed_at: - type: - - string - - 'null' - format: date-time - description: The timestamp when the batch processing completed. - submitted_items: - type: - - integer - - 'null' - description: The number of items submitted in the batch. - processed_items: - type: integer - description: The number of items successfully processed. - excluded_items: - type: integer - description: The number of items excluded from processing. - results: - type: array - description: The results for each batch item. - items: - type: object - properties: - external_id: - type: string - description: The external ID provided in the batch request. - role: - type: string - enum: - - employee - description: The type of person created. - status: - type: string - enum: - - success - - partial_success - - failed - description: The status of this batch item. - idx: - type: integer - description: The index of this item in the original batch request. - uuid: - type: string - format: uuid - description: The UUID of the created person. - employee_uuid: - type: string - format: uuid - description: The UUID of the created employee (if role is employee). - errors: - type: - - array - - 'null' - description: Errors encountered while processing this batch item. + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Jobs-Update-Request-Body" + required: true + x-speakeasy-name-override: update + x-speakeasy-group: jobsAndCompensations + delete: + summary: Delete an individual job + operationId: delete-v1-jobs-job_id + security: + - CompanyAccessAuth: [] + description: |- + Deletes a specific job that an employee holds. + + scope: `jobs:write` + tags: + - Jobs and Compensations + x-gusto-integration-type: + - embedded + parameters: + - name: job_id + in: path + description: The UUID of the job + required: true + schema: + type: string + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '204': + description: successful + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-speakeasy-group: jobsAndCompensations + x-speakeasy-name-override: delete + "/v1/employees/{employee_id}/jobs": + get: + summary: Get jobs for an employee + operationId: get-v1-employees-employee_id-jobs + security: + - CompanyAccessAuth: [] + description: |- + Get all of the jobs that an employee holds. + Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope is included. This allows you to access employee and job metadata without exposing pay rates. + + Compensation data in the response requires the `compensations:read` scope. + + scope: `jobs:read` + tags: + - Jobs and Compensations + x-gusto-integration-type: + - embedded + parameters: + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + - name: page + in: query + required: false + description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + schema: + type: integer + - name: per + in: query + required: false + description: Number of objects per page. For majority of endpoints will default to 25 + schema: + type: integer + - name: include + in: query + required: false + schema: + type: string + enum: + - all_compensations + description: | + Available options: + - all_compensations: Include all effective dated compensations for each job instead of only the current compensation + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '200': + description: Successful + content: + application/json: + schema: + type: array items: - type: object + "$ref": "#/components/schemas/Job" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: getJobs + x-speakeasy-group: jobsAndCompensations + post: + summary: Create a job + operationId: post-v1-employees-employee_id-jobs + security: + - CompanyAccessAuth: [] + description: |- + Create a job. + + scope: `jobs:write` + tags: + - Jobs and Compensations + x-gusto-integration-type: + - embedded + parameters: + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '201': + description: created + content: + application/json: + schema: + "$ref": "#/components/schemas/Job" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Jobs-Create-Request-Body" + required: true + x-speakeasy-group: jobsAndCompensations + x-speakeasy-name-override: createJob + "/v1/locations/{location_uuid}/minimum_wages": + get: + summary: Get minimum wages for a location + operationId: get-v1-locations-location_uuid-minimum_wages + security: + - CompanyAccessAuth: [] + description: |- + Get minimum wages for a location + + scope: `companies:read` + tags: + - Locations + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: location_uuid + in: path + description: The UUID of the location + required: true + schema: + type: string + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: effective_date + in: query + required: false + example: '2020-01-31' + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Minimum-Wage-List" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: getMinimumWages + "/v1/locations/{location_id}": + get: + summary: Get a location + operationId: get-v1-locations-location_id + security: + - CompanyAccessAuth: [] + description: |- + Get a location. + + scope: `companies:read` + tags: + - Locations + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: location_id + in: path + description: The UUID of the location + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Location" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: retrieve + put: + summary: Update a location + operationId: put-v1-locations-location_id + security: + - CompanyAccessAuth: [] + description: |- + Update a location. + + scope: `companies:write` + tags: + - Locations + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: location_id + in: path + description: The UUID of the location + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Location" + '422': + description: Invalid state + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '409': + description: Invalid version param + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + allOf: + - "$ref": "#/components/schemas/Versionable-Required" + - type: object properties: - error_key: + phone_number: type: string - description: The key identifying the error source. - category: + pattern: "[0-9]{10}" + example: '8009360383' + street_1: type: string - description: The error category. - message: + example: 300 3rd Street + street_2: type: - string - 'null' - description: Human-readable error message. - errors: - type: - - array - - 'null' - description: Nested errors for sub-operations. - items: - type: object - exclusions: - type: - - array - - 'null' - description: Items excluded from processing due to validation errors. - items: - type: object - properties: - external_id: - type: string - description: The external ID of the excluded item(s). - category: - type: string - description: The exclusion category. - message: - type: string - description: Human-readable explanation for exclusion. - item_count: - type: integer - description: Number of items affected by this exclusion. - required: - - uuid - - idempotency_key - - status - People-Batch-Conflict-Error: - type: object - description: Error response when a people batch idempotency key conflict occurs. - x-examples: - conflict: - errors: - - error_key: idempotency_key - category: invalid_attribute_value - message: Idempotency token already used - metadata: - entity_uuid: 14c53a55-0a80-4d46-a866-f5f64bc06486 - entity_type: PeopleBatch - properties: - errors: - type: array - items: - type: object - properties: - error_key: - type: string - description: The key identifying the error source. - category: - type: string - description: The error category. - message: - type: string - description: Human-readable error message. - metadata: - type: object - properties: - entity_uuid: - type: string - format: uuid - description: The UUID of the existing entity. - entity_type: - type: string - description: The type of the existing entity. - Recurring-Reimbursement-List: - type: array - x-examples: - success_status: - - uuid: 04ca1051-dcec-4cb7-829c-dfbffdf4af23 - employee_uuid: 73c96cc6-f8c9-4513-b3f1-4301351178d6 - version: 3b8eda8460f7acabd86ceec924e0ae74 - description: Travel expenses - created_at: '2025-11-03T09:03:20.000-08:00' - updated_at: '2025-11-03T09:03:20.000-08:00' - amount: '100.00' - - uuid: e3fc7aae-5053-44bf-99e1-3636df0d1f5b - employee_uuid: 73c96cc6-f8c9-4513-b3f1-4301351178d6 - version: 30c1aeb356a70e0a71275414e5f29b7e - description: Meal allowance - created_at: '2025-11-03T09:03:20.000-08:00' - updated_at: '2025-11-03T09:03:20.000-08:00' - amount: '50.00' - items: - "$ref": "#/components/schemas/Recurring-Reimbursement" - Recurring-Reimbursement: - type: object - x-examples: - success_status: - uuid: b739f253-b028-443b-b6cf-97a555c3d493 - employee_uuid: 346e1409-1c97-4524-9ebb-0c0c169e35cb - version: cf9b64404e63d325c762aaad20ca7a39 - description: Office supplies - created_at: '2025-11-03T09:03:24.000-08:00' - updated_at: '2025-11-03T09:03:24.000-08:00' - amount: '75.50' - properties: - uuid: - type: string - description: The unique identifier of this recurring reimbursement. - readOnly: true - employee_uuid: - type: string - description: The UUID of the employee. - readOnly: true - description: - type: string - description: The description of the reimbursement. - amount: - type: string - description: The dollar amount of the reimbursement. - version: - type: string - description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. - created_at: - type: string - description: The timestamp when this reimbursement was created. - readOnly: true - updated_at: - type: string - description: The timestamp when this reimbursement was last updated. - readOnly: true - required: - - uuid - - employee_uuid - - description - - amount - - version - Signatory-Invite-Request: - type: object - description: Request body for inviting a signatory. - properties: - first_name: - type: string - description: The signatory's first name. - middle_initial: - type: string - last_name: - type: string - description: The signatory's last name. - title: - type: string - description: The signatory's title (e.g. CEO, President). - phone: - type: string - description: The signatory's phone number. - birthday: - type: string - format: date - description: The signatory's date of birth. - email: - type: string - format: email - description: The signatory's email address. - ssn: - type: string - description: The signatory's SSN. Required for create with complete information; not used for invite. - home_address: - type: object - description: The signatory's home address. - properties: - street_1: - type: string - street_2: - type: string - city: - type: string - state: - type: string - zip: - type: string - country: - type: string - default: USA - required: - - first_name - - last_name - - email - x-tags: - - Signatories - Signatory-Create-Request: - type: object - description: Request body for creating a signatory with complete information. All listed required fields must be provided. - properties: - first_name: - type: string - description: The signatory's first name. - middle_initial: - type: string - last_name: - type: string - description: The signatory's last name. - title: - type: string - description: The signatory's title (e.g. CEO, President). - phone: - type: string - description: The signatory's phone number. - birthday: - type: string - format: date - description: The signatory's date of birth. - email: - type: string - format: email - description: The signatory's email address. - ssn: - type: string - description: The signatory's SSN. - home_address: - type: object - description: The signatory's home address. - properties: - street_1: - type: string - street_2: - type: string - city: - type: string - state: - type: string - zip: - type: string - country: - type: string - default: USA - required: - - street_1 - - city - - state - - zip - required: - - first_name - - last_name - - email - - title - - phone - - birthday - - ssn - - home_address - x-tags: - - Signatories - Signatory-Update-Request: - type: object - description: Request body for updating a signatory. Email cannot be updated. - properties: - version: - type: string - description: Current version of the signatory (required for optimistic concurrency). - first_name: - type: string - middle_initial: - type: string - last_name: - type: string - title: - type: string - phone: - type: string - birthday: - type: string - format: date - ssn: - type: string - description: The signatory's SSN. - home_address: - type: object - properties: - street_1: - type: string - street_2: - type: string - city: - type: string - state: - type: string - zip: - type: string - country: - type: string - required: - - version - x-tags: - - Signatories - Payment-Configs-Update-Request: - type: object - description: Request body for updating company payment configs. At least one of payment_speed, fast_payment_limit, or partner_owned_disbursement is required. - properties: - payment_configs: - type: object - properties: - payment_speed: - type: string - enum: - - 1-day - - 2-day - - 4-day - description: Desired payment speed. 1-day is only applicable to partners that opt in. - fast_payment_limit: - type: - - number - - 'null' - description: Payment limit for 1-day or 2-day payroll (in dollars). - partner_owned_disbursement: - type: boolean - description: Whether to use the partner-owned disbursement payment rail. - x-examples: - update_payment_speed_and_limit: - payment_configs: - payment_speed: 2-day - fast_payment_limit: 1000 - update_payment_speed_only: - payment_configs: - payment_speed: 4-day - Company-Bank-Account-Verify-Request: - type: object - description: Request body for verifying a company bank account with the two micro-deposit amounts. - required: - - deposit_1 - - deposit_2 - properties: - deposit_1: - type: number - format: float - description: The first micro-deposit amount (order does not matter). - deposit_2: - type: number - format: float - description: The second micro-deposit amount (order does not matter). - I9-Authorization-Request-Body: - description: Request body for creating or updating an employee's I-9 authorization. - type: object - properties: - version: - type: string - description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. If supplied, this endpoint will update the existing I-9 authorization if it exists. - authorization_status: - type: string + example: Apartment 318 + city: + type: string + example: San Francisco + state: + type: string + zip: + type: string + example: '94107' + country: + type: string + mailing_address: + type: boolean + description: For a company location, specify if this location is the company's mailing address. A company has a single mailing address, so this designation will override any previous selection. + filing_address: + type: boolean + description: For a company location, specify if this location is the company's filing address. A company has a single filing address, so this designation will override any previous selection. + required: true + x-speakeasy-name-override: update + "/v1/companies/{company_id}/locations": + get: + summary: Get all company locations + operationId: get-v1-companies-company_id-locations + security: + - CompanyAccessAuth: [] + description: |- + Retrieves all company locations (addresses) associated with a company: mailing addresses, filing + addresses, or work locations. A single address may serve multiple, or all, purposes. + + Since all company locations are subsets of locations, use the Locations endpoints to + [get](ref:get-v1-locations-location_id) or [update](ref:put-v1-locations-location_id) an individual record. + + scope: `companies:read` + tags: + - Locations + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + example: 7b1d0df1-6403-4a06-8768-c1dd7d24d27a + required: true + schema: + type: string + - name: page + in: query + required: false + description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + schema: + type: integer + - name: per + in: query + required: false + description: Number of objects per page. For majority of endpoints will default to 25 + schema: + type: integer + x-gusto-rswag: true + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Company-Locations-List" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: get + post: + summary: Create a company location + operationId: post-v1-companies-company_id-locations + security: + - CompanyAccessAuth: [] + description: |- + Create a company location, which represents any address associated with a company: mailing + addresses, filing addresses, or work locations. A single address may serve multiple, or all, purposes. + + Since all company locations are subsets of locations, use the Locations endpoints to + [get](ref:get-v1-locations-location_id) or [update](ref:put-v1-locations-location_id) an individual record. + + scope: `companies:write` + tags: + - Locations + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '201': + description: Created + content: + application/json: + schema: + "$ref": "#/components/schemas/Location" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Company-Location-Request" + required: true + x-speakeasy-name-override: create + "/v1/notifications/{notification_uuid}": + get: + summary: Get a notification's details + operationId: get-notifications-notification_uuid + security: + - CompanyAccessAuth: [] + description: |- + Upon receiving a notification webhook event, use this endpoint to fetch the notification's details. The notification details include basic suggested content that can help you build notifications in your platform. + + Note: partners are responsible for the delivery and any custom state management of notifications in their application. Refer to our [partner notification guide](https://docs.gusto.com/embedded-payroll/docs/partner-notifications) for more details. + + If the notification UUID is not found, the response will be 404 Not Found. If the notification's supporting data is no longer valid, the response will be 422 Unprocessable Entity. + + scope: `notifications:read` + tags: + - Notifications + x-gusto-integration-type: + - embedded + parameters: + - name: notification_uuid + in: path + description: The notification entity_uuid + required: true + schema: + type: string + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Notification" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-speakeasy-name-override: getDetails + "/v1/companies/{company_uuid}/paid_holidays": + get: + summary: Preview a company's paid holidays + operationId: get-companies-company_uuid-paid_holidays + security: + - CompanyAccessAuth: [] + description: |- + Preview a company's paid holidays + + If a year is passed, paid holidays for that year will be returned. Otherwise, paid holidays for the next three years will be returned. + + scope: `holiday_pay_policies:read` + tags: + - Holiday Pay Policies + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: year + in: query + required: false + description: If a year is passed, paid holidays for that year will be returned. Otherwise, paid holidays for the next three years will be returned. + schema: + type: string + example: '2023' + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Paid-Holiday" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: holidayPayPolicies + x-speakeasy-name-override: previewPaidHolidays + "/v1/partner_managed_companies/{company_uuid}/migrate": + put: + summary: Migrate company to embedded payroll + operationId: put-v1-partner-managed-companies-company-uuid-migrate + security: + - CompanyAccessAuth: [] + description: |- + Migrate an existing Gusto customer to your embedded payroll product. + + ### Prerequisites + Before calling this endpoint: + 1. The customer must connect their Gusto account to your application using [OAuth2](doc:oauth2) + 2. The customer must view and [accept the Embedded Payroll Terms of Service](ref:post-partner-managed-companies-company_uuid-accept_terms_of_service) + + ### Related guides + - [Migrate an existing company](doc:migrate-existing-company) + + scope: `partner_managed_companies:write` + tags: + - Companies + x-gusto-integration-type: + - embedded + parameters: + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Partner-Managed-Company-Migrate-Response" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Partner-Managed-Company-Migrate-Request" + required: true + x-speakeasy-name-override: migrate + "/v1/partner_managed_companies": + post: + summary: Create a partner managed company + operationId: post-v1-partner-managed-companies + security: + - SystemAccessAuth: [] + description: "Create a partner managed company. When you successfully call the API, it does the following:\n* Creates a new company in Gusto\n* Creates a new user using the provided email if the user does not already exist.\n* Makes the user the primary payroll administrator of the new company.\n\nIn response, you will receive oauth access tokens for the created company.\n\nIMPORTANT: the returned access and refresh tokens are reserved for this company only. They cannot be used to access other companies AND previously granted tokens cannot be used to access this company.\n\n\U0001F4D8 System Access Authentication\n\nThis endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access)\n\nscope: `partner_managed_companies:manage`" + tags: + - Companies + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '200': + description: OK + content: + application/json: + schema: + "$ref": "#/components/schemas/Partner-Managed-Company" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Partner-Managed-Company-Create-Request" + required: true + x-speakeasy-name-override: createPartnerManaged + "/v1/partner_managed_companies/{company_uuid}/migration_readiness": + get: + summary: Check company migration readiness + operationId: get-v1-partner-managed-companies-company-uuid-migration_readiness + security: + - CompanyAccessAuth: [] + description: |- + Check if an existing Gusto customer is ready to be migrated to embedded payroll. This endpoint returns blockers and warnings associated with migrating the company and is recommended to be called before attempting to migrate a company. + + scope: `partner_managed_companies:read` + tags: + - Companies + x-gusto-integration-type: + - embedded + parameters: + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '200': + description: Example response + content: + application/json: + schema: + "$ref": "#/components/schemas/Partner-Managed-Company-Migration-Readiness-Response" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + "/v1/partner_managed_companies/{company_uuid}/accept_terms_of_service": + post: + summary: Accept terms of service for an admin + operationId: post-partner-managed-companies-company_uuid-accept_terms_of_service + security: + - CompanyAccessAuth: [] + deprecated: true + description: |- + > Deprecated: use [POST /v1/partner_managed_companies/{company_uuid}/terms_of_service](https://docs.gusto.com/embedded-payroll/reference/post-v1-partner-managed-companies-company-uuid-terms_of_service). + + Accept the Gusto Embedded Payroll's [Terms of Service](https://flows.gusto.com/terms). + The user must be a company admin in order to accept the Terms of Service. + + scope: `terms_of_services:write` + tags: + - Companies + x-gusto-integration-type: + - embedded + parameters: + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '404': + description: Deprecated endpoint + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Partner-Managed-Company-Accept-Terms-Of-Service-Request" + required: true + x-speakeasy-name-override: acceptTermsOfService + "/v1/partner_managed_companies/{company_uuid}/retrieve_terms_of_service": + post: + summary: Retrieve terms of service status for an admin + operationId: post-partner-managed-companies-company_uuid-retrieve_terms_of_service + security: + - CompanyAccessAuth: [] + deprecated: true + description: |- + > Deprecated: use [PUT /v1/partner_managed_companies/{company_uuid}/terms_of_service](https://docs.gusto.com/embedded-payroll/reference/put-v1-partner-managed-companies-company-uuid-terms_of_service) for user-level status, or [GET /v1/partner_managed_companies/{company_uuid}/terms_of_service](https://docs.gusto.com/embedded-payroll/reference/get-v1-partner-managed-companies-company-uuid-terms_of_service) for company-level status. + + Retrieve the user acceptance status of the Gusto Embedded Payroll's [Terms of Service](https://flows.gusto.com/terms). + + scope: `terms_of_services:read` + tags: + - Companies + x-gusto-integration-type: + - embedded + parameters: + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '404': + description: Deprecated endpoint + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Partner-Managed-Company-Retrieve-Terms-Of-Service-Request" + required: true + x-speakeasy-name-override: retrieveTermsOfService + "/v1/partner_managed_companies/{company_uuid}/terms_of_service": + get: + summary: Get the terms of service status for a company + operationId: get-v1-partner-managed-companies-company-uuid-terms_of_service + security: + - CompanyAccessAuth: [] + description: |- + Check if any company payroll admin has accepted the Gusto Embedded Payroll's [Terms of Service](https://flows.gusto.com/terms). + + This is useful for partners with multiple payroll admins who need to check TOS status at the company level rather than for a specific user. + + scope: `terms_of_services:read` + tags: + - Companies + x-gusto-integration-type: + - embedded + parameters: + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '200': + description: Example response + content: + application/json: + schema: + "$ref": "#/components/schemas/Partner-Managed-Company-Terms-Of-Service-Response" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + put: + summary: Check terms of service status for a specific user + operationId: put-v1-partner-managed-companies-company-uuid-terms_of_service + security: + - CompanyAccessAuth: [] + description: |- + Check user-specific Terms of Service acceptance for the Gusto Embedded Payroll [Terms of Service](https://flows.gusto.com/terms). + + The user must have a role on the company. Returns whether the specific user has accepted the latest TOS version. + + Uses PUT (rather than GET) to hide the email address from URL logs. + + scope: `terms_of_services:read` + tags: + - Companies + x-gusto-integration-type: + - embedded + parameters: + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '200': + description: Example response + content: + application/json: + schema: + "$ref": "#/components/schemas/Partner-Managed-Company-Terms-Of-Service-Response" + '404': description: | - The employee's authorization status. - - `citizen`: A citizen is someone who was born in the United States or is a naturalized citizen living in the United States. - - `noncitizen`: A noncitizen national is someone born in American Samoa, certain former citizens of the former Trust Territory of the Pacific Islands, and certain children of noncitizen nationals born abroad. - - `permanent_resident`: A lawful permanent resident is someone who is not a US citizen and who resides under legally recognized and lawfully recorded permanent residence as an immigrant. - - `alien`: Also referred to as a "noncitizen authorized to work". This includes anyone who is authorized to work in the United States but is not a US citizen, US national or lawful permanent resident. - enum: - - citizen - - noncitizen - - permanent_resident - - alien - document_type: - type: string + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': description: | - The type of document an employee holds, based on their authorization status. - - This is unused for authorization status `citizen` or `noncitizen`. - - If the authorization status is `permanent_resident`, this must be `uscis_alien_registration_number`. - - If the authorization status is `alien`, this is required and may be any of the valid values. - enum: - - uscis_alien_registration_number - - form_i94 - - foreign_passport - document_number: - type: string + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Partner-Managed-Company-Retrieve-Terms-Of-Service-Request" + required: true + post: + summary: Accept terms of service for a specific user + operationId: post-v1-partner-managed-companies-company-uuid-terms_of_service + security: + - CompanyAccessAuth: [] + description: |- + Accept the Gusto Embedded Payroll's [Terms of Service](https://flows.gusto.com/terms) on behalf of a specific user. The user must have a role on the company. + + scope: `terms_of_services:write` + tags: + - Companies + x-gusto-integration-type: + - embedded + parameters: + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '200': + description: Example response + content: + application/json: + schema: + "$ref": "#/components/schemas/Partner-Managed-Company-Terms-Of-Service-Response" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Partner-Managed-Company-Accept-Terms-Of-Service-Request" + required: true + "/v1/companies/{company_id}/pay_periods": + get: + summary: Get pay periods for a company + operationId: get-v1-companies-company_id-pay_periods + security: + - CompanyAccessAuth: [] + description: |- + Pay periods are the foundation of payroll. Compensation, time & attendance, taxes, and expense reports all rely on when they happened. + + To begin submitting information for a given payroll, we need to agree on the time period. + + By default, this endpoint returns pay periods starting from 6 months ago to the date today. Use the `start_date` and `end_date` parameters to change the scope of the response. End dates can be up to 3 months in the future and there is no limit on start dates. + + Starting in version 2023-04-01, the `eligible_employees` attribute was removed from the response. The eligible employees for a payroll are determined by the employee_compensations returned from the [PUT /v1/companies/{company_id}/payrolls/{payroll_id}/prepare](ref:put-v1-companies-company_id-payrolls-payroll_id-prepare) endpoint. + + scope: `payrolls:read` + tags: + - Payrolls + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: start_date + in: query + required: false + schema: + type: string + format: date + description: Start date (YYYY-MM-DD) for the pay periods range. Defaults to 6 months ago. + - name: end_date + in: query + required: false + schema: + type: string + format: date + description: End date (YYYY-MM-DD) for the pay periods range. Cannot be more than 3 months in the future. Defaults to today. + - name: payroll_types + in: query + required: false + schema: + type: string + enum: + - regular + - transition + - regular,transition + description: Comma-separated list of payroll types to include (regular, transition). Defaults to regular only. + x-gusto-rswag: true + responses: + '200': + description: Successful + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Pay-Period" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-speakeasy-group: paySchedules + x-speakeasy-name-override: getPayPeriods + "/v1/companies/{company_id}/pay_periods/unprocessed_termination_pay_periods": + get: + summary: Get termination pay periods for a company + operationId: get-v1-companies-company_id-unprocessed_termination_pay_periods + security: + - CompanyAccessAuth: [] + description: |- + 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. + + This endpoint returns the unprocessed pay periods for past and future terminated employees in a given company. + + scope: `payrolls:read` + tags: + - Pay Schedules + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Successful + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Unprocessed-Termination-Pay-Period" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: paySchedules + x-speakeasy-name-override: getUnprocessedTerminationPeriods + "/v1/companies/{company_id}/pay_schedules": + get: + summary: Get the pay schedules for a company + operationId: get-v1-companies-company_id-pay_schedules + security: + - CompanyAccessAuth: [] + description: |- + Returns all pay schedules for a company. The pay schedule object captures the details of when employees work and when they should be paid. A company can have multiple pay schedules. + + scope: `pay_schedules:read` + tags: + - Pay Schedules + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: page + in: query + required: false + description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + schema: + type: integer + - name: per + in: query + required: false + description: Number of objects per page. For majority of endpoints will default to 25 + schema: + type: integer + x-gusto-rswag: true + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Pay-Schedule-Show-Response" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: paySchedules + x-speakeasy-name-override: getAll + post: + summary: Create a new pay schedule + operationId: post-v1-companies-company_id-pay_schedules + security: + - CompanyAccessAuth: [] + description: |- + 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](https://www.dol.gov/agencies/whd/state/payday)** to know what schedule is right for your customers. + + > If an onboarded company misses their first pay date, Gusto will automatically adjust the pay schedule to the next available pay date. + + ### Webhooks + - `pay_schedule.created`: Fires when a pay schedule is successfully created. + + ### Related guides + - [Create a pay schedule](doc:create-a-pay-schedule) + - [Pay Schedules](doc:pay-schedule-info) + - [Manage Pay Schedules via API](doc:manage-pay-schedules-api) + + scope: `pay_schedules:write` + tags: + - Pay Schedules + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '201': + description: Created + content: + application/json: + schema: + "$ref": "#/components/schemas/Pay-Schedule-Show" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Pay-Schedule-Create-Request" + required: true + x-speakeasy-group: paySchedules + x-speakeasy-name-override: create + "/v1/companies/{company_id}/pay_schedules/preview": + get: + summary: Preview pay schedule dates + operationId: get-v1-companies-company_id-pay_schedules-preview + security: + - CompanyAccessAuth: [] + description: |- + Provides a preview of a pay schedule with the specified parameters for the next 18 months. Use this before creating or updating a pay schedule to show expected check dates, pay period boundaries, and payroll deadlines. + + ### Related guides + - [Create a pay schedule](doc:create-a-pay-schedule) + - [Manage Pay Schedules via API](doc:manage-pay-schedules-api) + + scope: `pay_schedules:write` + tags: + - Pay Schedules + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: frequency + in: query + required: true + schema: + type: string + enum: + - Every week + - Every other week + - Twice per month + - Monthly + example: Twice per month + description: The frequency that employees on this pay schedule are paid with Gusto. + - name: anchor_pay_date + in: query + required: true + schema: + type: string + format: date + example: '2020-05-15' + description: The first date that employees on this pay schedule are paid with Gusto. + - name: anchor_end_of_pay_period + in: query + required: true + schema: + type: string + format: date + example: '2020-05-08' + description: The last date of the first pay period. This can be the same date as the anchor pay date. + - name: day_1 + in: query + required: false + schema: + type: integer + example: 15 + description: 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. + - name: day_2 + in: query + required: false + schema: + type: integer + example: 31 + description: 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 is set to the last day of the month. It will be null for pay schedules with other frequencies. + - name: end_date + in: query + required: false + schema: + type: string + format: date + description: End date for the preview range. If given, this date must be in the future. When unspecified, defaults to 18 months from today. + x-gusto-rswag: true + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Pay-Schedule-Preview" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-speakeasy-group: paySchedules + x-speakeasy-name-override: getPreview + "/v1/companies/{company_id}/pay_schedules/{pay_schedule_id}": + get: + summary: Get a pay schedule + operationId: get-v1-companies-company_id-pay_schedules-pay_schedule_id + security: + - CompanyAccessAuth: [] + description: |- + Returns a single pay schedule by UUID. The pay schedule object in Gusto captures the details of when employees work and when they should be paid. A company can have multiple pay schedules. + + scope: `pay_schedules:read` + tags: + - Pay Schedules + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: pay_schedule_id + in: path + description: The UUID of the pay schedule + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Pay-Schedule-Show" + '404': description: | - The document number. Formatting depends on the employee's document type. - - For `document_type:'uscis_alien_registration_number'`, this must be a USCIS Number/A-Number, which is 7 to 9 digits. - - For `document_type:'form_i94'`, this must be a Form I-94 Admission Number, which is 11 digits. - - For `document_type:'foreign_passport'`, this must be the passport number. + Not Found - This is required when the document type is present. - country: - type: string + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: get + x-speakeasy-group: paySchedules + put: + summary: Update a pay schedule + operationId: put-v1-companies-company_id-pay_schedules-pay_schedule_id + security: + - CompanyAccessAuth: [] + description: |- + Updates a pay schedule. The `version` parameter from the GET response is required for [optimistic concurrency](doc:api-fundamentals); a mismatch returns 409 Conflict. + + ### Effect on payrolls + Updating a pay schedule will delete any unprocessed regular payrolls whose pay period end date is today or in the future. Already-processed payrolls are not affected. + + ### Pay schedules may be automatically adjusted + If an onboarded company misses their first pay date, Gusto will automatically adjust the pay schedule to the next available pay date. + + ### Webhooks + - `pay_schedule.updated`: Fires when a pay schedule is successfully updated. + + ### Related guides + - [Create a pay schedule](doc:create-a-pay-schedule) + - [Manage Pay Schedules via API](doc:manage-pay-schedules-api) + + scope: `pay_schedules:write` + tags: + - Pay Schedules + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: pay_schedule_id + in: path + description: The UUID of the pay schedule + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Pay-Schedule-Show" + '404': description: | - The document's country of issuance. + Not Found - This is required when the document type is `foreign_passport`. - expiration_date: - type: string + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '409': + description: Conflict + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '422': description: | - The document's expiration date. + Unprocessable Entity - This may only be used when the authorization status is `alien`. - required: - - authorization_status - x-examples: - create_citizen: - authorization_status: citizen - update_alien_with_foreign_passport: - version: 52b7c567242cb7393b2a206ed6a86afcb - authorization_status: alien - document_type: foreign_passport - document_number: '01234567' - country: Canada - expiration_date: '2028-01-01' - I9-Authorization-Employer-Sign-Request-Body: - description: Request body for employer signing an employee's Form I-9. - type: object - properties: - signature_text: - type: string - description: The signature - signer_title: - type: string - description: The signer's job title - signed_by_ip_address: - type: string - description: The IP address of the signatory who signed the form. Both IPv4 AND IPv6 are supported. You must provide the IP address with either this parameter OR you can leave out this parameter and set the IP address in the request header using the `x-gusto-client-ip` header instead. - agree: - type: boolean - description: Whether you agree to sign electronically - additional_info: - type: string - description: Any additional notes - alt_procedure: - type: boolean - description: Whether an alternative procedure authorized by DHS to examine documents was used - required: - - signature_text - - signer_title - - agree - x-examples: - employer_sign: - signature_text: Jane Doe - signer_title: Admin - signed_by_ip_address: 192.168.0.1 - agree: true - I9-Authorization-Documents-Request-Body: - description: Request body for creating an employee's I-9 authorization verification documents. - type: object - properties: - documents: - type: array - description: An array of I-9 verification documents. Every request must contain the complete list of documents for the employee, as previous records are replaced. - items: - type: object - properties: - document_type: - type: string - description: The document type. Use the document options endpoint to get the possible values. - example: us_passport - document_title: - type: string - description: The document title associated with the document type - example: US Passport - document_number: - type: string - description: The document's document number - example: F12345678 - expiration_date: - type: string - description: The document's expiration date - example: '2026-01-01' - issuing_authority: - type: string - description: The document's issuing authority - example: USA - required: - - document_type - - document_title - - issuing_authority - required: - - documents - x-examples: - create_documents: - documents: - - document_type: us_passport - document_title: US passport - document_number: F12345678 - expiration_date: '2035-04-01' - issuing_authority: US Department of State - Pay-Schedule-Auto-Payroll-Enablement-Blockers: - type: - - array - - 'null' - description: List of blockers preventing automatic payroll from being enabled. If automatic payroll is already enabled, this field is null. - items: - "$ref": "#/components/schemas/Pay-Schedule-Auto-Payroll-Enablement-Blocker" - Pay-Schedule-Auto-Payroll-Enablement-Blocker: - type: object - description: A single blocker preventing Autopayroll enablement. - properties: - key: - type: string - description: The blocker type (e.g. employees_not_on_direct_deposit, employees_not_salaried, missing_funding_method, missing_state_tax_requirements, one_day_ach_speed_not_supported, company_suspended, earned_fast_ach_not_met). - metadata: - type: object - description: Blocker-specific metadata (e.g. employee_uuids, states). - Pay-Schedule-List: - type: array - description: List of pay schedules for a company. The pay schedule object in Gusto captures the details of when employees work and when they should be paid. A company can have multiple pay schedules. - items: - "$ref": "#/components/schemas/Pay-Schedule-Show" - x-examples: - success_status: - - uuid: f2a69c38-e2f9-4e31-b5c5-4754fc60a052 - version: 68934a3e9455fa72420237eb05902327 - frequency: Monthly - anchor_pay_date: '2022-12-11' - anchor_end_of_pay_period: '2022-11-13' - day_1: 11 - day_2: - name: - custom_name: every 11th of the month - auto_payroll: true - active: true - Pay-Schedule-Preview-Pay-Period: - type: object - description: A single pay period in a pay schedule preview, with check date, period boundaries, and payroll deadline. - required: - - check_date - - start_date - - run_payroll_by - - end_date - properties: - check_date: - type: string - format: date - description: The payment date, "Check date", for the pay period. - start_date: - type: string - format: date - description: The first day of the pay period. - run_payroll_by: - type: string - format: date - description: The deadline to run payroll for direct deposit on the check date. - end_date: - type: string - format: date - description: The last day of the pay period. - Pay-Schedule-Preview: - type: object - description: | - Preview of pay schedule dates for the next 18 months. Use this to show partners expected pay dates, pay period boundaries, and payroll deadlines before they create or change a pay schedule. See [Preview pay schedule dates](https://docs.gusto.com/embedded-payroll/reference/get-v1-companies-company_id-pay_schedules-preview) for usage. + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Pay-Schedule-Update-Request" + required: true + x-speakeasy-group: paySchedules + x-speakeasy-name-override: update + "/v1/companies/{company_id}/pay_schedules/assignment_preview": + post: + summary: Preview pay schedule assignments for a company + operationId: post-v1-companies-company_id-pay_schedules-assignment_preview + security: + - CompanyAccessAuth: [] + description: |- + This endpoint returns the employee changes, including pay period and transition pay periods, for changing the pay schedule. - - **pay_periods**: One entry per pay period in the range; each includes check_date, start_date, end_date, and run_payroll_by. - - **holidays**: Observed bank holidays (ISO date strings) that may affect payroll timing. - x-examples: - success_status: - pay_periods: - - check_date: '2022-01-15' - start_date: '2022-01-01' - run_payroll_by: '2022-01-14' - end_date: '2022-01-15' - - check_date: '2022-01-31' - start_date: '2022-01-16' - run_payroll_by: '2022-01-30' - end_date: '2022-01-31' - holidays: - - '2022-01-01' - - '2022-01-17' - properties: - pay_periods: - type: array - description: A list of pay periods for the previewed pay schedule (default range is 18 months from today, or up to end_date when provided). - items: - "$ref": "#/components/schemas/Pay-Schedule-Preview-Pay-Period" - holidays: - type: array - description: A list of dates for bank closures (ISO date strings); may affect payroll processing. - items: + scope: `pay_schedules:write` + tags: + - Pay Schedules + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: type: string - format: date - Pay-Schedule-Date-Input: - type: string - format: date - description: ISO 8601 date (YYYY-MM-DD). Required for anchor and period dates in create, update, and preview requests. - Pay-Schedule-Create-Request: - type: object - description: | - Request body for creating a pay schedule. Required when a company has no pay schedules (onboarding) or when adding an additional schedule. Be sure to [check state laws](https://www.dol.gov/agencies/whd/state/payday) to know what schedule is right for your customers. + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Example response + content: + application/json: + schema: + "$ref": "#/components/schemas/Pay-Schedule-Assignment-Preview" + '404': + description: | + Not Found - - **anchor_pay_date**: The first date that employees on this pay schedule will be paid (first company payday). - - **anchor_end_of_pay_period**: The last date of the first pay period; can be the same as anchor_pay_date. - example: - frequency: Twice per month - anchor_pay_date: '2020-05-15' - anchor_end_of_pay_period: '2020-05-08' - day_1: 15 - day_2: 31 - custom_name: demo pay schedule - properties: - frequency: - allOf: - - "$ref": "#/components/schemas/Pay-Schedule-Frequency-Create-Update" - example: Twice per month - anchor_pay_date: - allOf: - - "$ref": "#/components/schemas/Pay-Schedule-Date-Input" - example: '2020-05-15' - anchor_end_of_pay_period: - allOf: - - "$ref": "#/components/schemas/Pay-Schedule-Date-Input" - example: '2020-05-08' - day_1: - type: - - integer - - 'null' - example: 15 + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': description: | - 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. + Unprocessable Entity - On create: required for Twice per month and Monthly; omit or null for Every week and Every other week. - day_2: - type: - - integer - - 'null' - example: 31 + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Pay-Schedule-Assignment-Body" + required: true + x-speakeasy-group: paySchedules + x-speakeasy-name-override: previewAssignment + "/v1/companies/{company_id}/pay_schedules/assign": + post: + summary: Assign pay schedules for a company + operationId: post-v1-companies-company_id-pay_schedules-assign + security: + - CompanyAccessAuth: [] + description: |- + This endpoint assigns employees to pay schedules based on the schedule type. + For `by_employee` and `by_department` schedules, use the `partial_assignment` parameter to control the assignment scope. Set it to `true` for partial assignments (only some employees or departments at a time) and `false` for full assignments (all employees or departments at once). + + scope: `pay_schedules:write` + tags: + - Pay Schedules + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: No Content + '404': description: | - 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 is set to the last day of the month. It will be null for pay schedules with other frequencies. + Not Found - On create: only for Twice per month; omit or null for other frequencies. - custom_name: - type: - - string - - 'null' - example: demo pay schedule + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': description: | - A custom pay schedule name; defaults to the pay frequency description when null or omitted. + Unprocessable Entity - When null or omitted, the system generates a description from the pay frequency and pay days (e.g. "every 1st and 15th of the month" for twice-monthly, "every 11th of the month" for monthly, "every Friday" for weekly). The response returns this generated value in `custom_name` when no custom name was set. When provided, the value you set is stored and returned. - required: - - frequency - - anchor_pay_date - - anchor_end_of_pay_period - Pay-Schedule-Update-Request: - type: object - description: Request body for updating a pay schedule. Sent in the pay_schedule_update root key. Version is required for optimistic concurrency. Pay schedules may be automatically adjusted if an onboarded company misses their first pay date; see [Create a pay schedule](https://docs.gusto.com/embedded-payroll/docs/create-a-pay-schedule). - example: - version: 68934a3e9455fa72420237eb05902327 - auto_payroll: true - frequency: Twice per month - anchor_pay_date: '2021-10-15' - anchor_end_of_pay_period: '2021-10-15' - day_1: 15 - day_2: 31 - custom_name: demo pay schedule - properties: - version: - type: string - example: 68934a3e9455fa72420237eb05902327 - description: Current version of the pay schedule from the GET response; required for optimistic concurrency. Mismatch returns 409 Conflict. - auto_payroll: - type: boolean - example: true + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Pay-Schedule-Assignment-Body" + required: true + x-speakeasy-group: paySchedules + x-speakeasy-name-override: assign + "/v1/companies/{company_id}/pay_schedules/assignments": + get: + summary: Get pay schedule assignments for a company + operationId: get-v1-companies-company_id-pay_schedules-assignments + security: + - CompanyAccessAuth: [] + description: |- + This endpoint returns the current pay schedule assignment for a company, with pay schedule and employee/department mappings depending on the pay schedule type. + + scope: `pay_schedules:read` + tags: + - Pay Schedules + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Example response + content: + application/json: + schema: + "$ref": "#/components/schemas/Pay-Schedule-Assignment" + '404': description: | - With automatic payroll enabled, payroll runs automatically one day before payroll deadlines. When false, payroll does not run automatically and must be run manually. - For API versions before 2025-11-15 the request field is auto_pilot. - frequency: - allOf: - - "$ref": "#/components/schemas/Pay-Schedule-Frequency-Create-Update" - example: Twice per month - anchor_pay_date: - allOf: - - "$ref": "#/components/schemas/Pay-Schedule-Date-Input" - example: '2020-05-15' - anchor_end_of_pay_period: - allOf: - - "$ref": "#/components/schemas/Pay-Schedule-Date-Input" - example: '2020-05-08' - day_1: - type: - - integer - - 'null' - example: 15 - description: '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. + Not Found -' - day_2: - type: - - integer - - 'null' - example: 31 - description: '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 is set to the last day of the month. It will be null for pay schedules with other frequencies. + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: paySchedules + x-speakeasy-name-override: getAssignments + "/v1/employees/{employee_id}/pay_stubs": + get: + summary: Get an employee's pay stubs + operationId: get-v1-employees-employee_uuid-pay_stubs + security: + - CompanyAccessAuth: [] + description: |- + Get an employee's pay stubs. -' - custom_name: - type: - - string - - 'null' - example: demo pay schedule - description: A custom pay schedule name; null clears any custom name so the default frequency description applies. - required: - - version - Payroll-Sync: - type: object - description: Record representing the sync of time sheet data to payroll. - properties: - uuid: - type: string - format: uuid - description: Unique identifier of the payroll sync. - example: 123e4567-e89b-12d3-a456-426655440000 - company_uuid: - type: string - format: uuid - description: Unique identifier of the company to which the payroll sync belongs. - example: 123e4567-e89b-12d3-a456-426655440001 - status: - type: string - readOnly: true - enum: - - pending - - in_progress - - success - - failure - - partial_success - description: | - The current status of the payroll sync. READ-ONLY. + Results are returned in reverse chronological order (newest first). - ## State Transitions - ``` - pending ──────► in_progress ──────► success - ├─────► failure - └─────► partial_success - ``` + scope: `pay_stubs:read` + x-gusto-integration-type: + - embedded + tags: + - Payrolls + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + - name: page + in: query + required: false + description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + schema: + type: integer + - name: per + in: query + required: false + description: Number of objects per page. For majority of endpoints will default to 25 + schema: + type: integer + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Pay-Stubs-List" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: getPayStubs + "/v1/payrolls/{payroll_id}/employees/{employee_id}/pay_stub": + get: + summary: Get an employee pay stub (pdf) + operationId: get-v1-payrolls-payroll_uuid-employees-employee_uuid-pay_stub + security: + - CompanyAccessAuth: [] + description: |- + Get an employee's pay stub for the specified payroll. By default, an application/pdf response will be returned. No other content types are currently supported, but may be supported in the future. - ### Valid Transitions - - `pending` → `in_progress`: Automatic when processing begins - - `in_progress` → `success`: All time sheet data synced successfully - - `in_progress` → `failure`: Sync failed entirely - - `in_progress` → `partial_success`: Some members failed to sync - example: pending - kind: - type: string - enum: - - regular - description: | - The kind of payroll sync. - - `regular`: A regular payroll sync - example: regular - pay_schedule_uuid: - type: string - format: uuid - description: Unique identifier of the pay schedule associated with this sync. - example: 123e4567-e89b-12d3-a456-426655440002 - pay_period_start_date: - type: string - format: date - description: The start date of the pay period per ISO 8601 format. - example: '2025-01-01' - pay_period_end_date: - type: string - format: date - description: The end date of the pay period per ISO 8601 format. - example: '2025-01-15' - submitted_at: - type: string - format: date-time - description: Datetime for when the payroll sync was submitted. - example: '2025-01-16T12:00:00Z' - completed_at: - type: - - string - - 'null' - format: date-time - description: Datetime for when the payroll sync completed. Null if the sync is still in progress. - example: '2025-01-16T13:00:00Z' - errors: - type: array - description: Errors encountered during the sync, if any. Each error follows the standard entity error format. - items: - "$ref": "#/components/schemas/Entity-Error-Object" - warnings: - type: array - description: Warnings encountered during the sync, if any. - items: + scope: `pay_stubs:read` + tags: + - Payrolls + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: type: string - x-examples: - pending_sync: - uuid: 123e4567-e89b-12d3-a456-426655440000 - company_uuid: 123e4567-e89b-12d3-a456-426655440001 - status: pending - kind: regular - pay_schedule_uuid: 123e4567-e89b-12d3-a456-426655440002 - pay_period_start_date: '2025-01-01' - pay_period_end_date: '2025-01-15' - submitted_at: '2025-01-16T12:00:00Z' - completed_at: - completed_sync: - uuid: 123e4567-e89b-12d3-a456-426655440000 - company_uuid: 123e4567-e89b-12d3-a456-426655440001 - status: success - kind: regular - pay_schedule_uuid: 123e4567-e89b-12d3-a456-426655440002 - pay_period_start_date: '2025-01-01' - pay_period_end_date: '2025-01-15' - submitted_at: '2025-01-16T12:00:00Z' - completed_at: '2025-01-16T13:00:00Z' - Payroll-Sync-Create-Request-Body: - type: object - required: - - kind - - pay_schedule_uuid - - pay_period_start_date - - pay_period_end_date - properties: - kind: - type: string - enum: - - regular - description: | - The kind of payroll sync. - - `regular`: A regular payroll sync - example: regular - pay_schedule_uuid: - type: string - format: uuid - description: Unique identifier of the pay schedule to sync time sheets for. - example: 123e4567-e89b-12d3-a456-426614174000 - pay_period_start_date: - type: string - format: date - description: The start date of the pay period per ISO 8601 format. - example: '2025-01-01' - pay_period_end_date: - type: string - format: date - description: The end date of the pay period per ISO 8601 format. - example: '2025-01-15' - Jobs-Body: - type: object - properties: - title: - type: - - string - - 'null' - description: The job title. - example: Regional Manager - hire_date: - type: string - description: The date when the employee was hired or rehired for the job. - example: '2020-12-21' - two_percent_shareholder: - type: boolean - description: Whether the employee owns at least 2% of the company. - state_wc_covered: - type: - - boolean - - 'null' - description: Whether this job is eligible for workers' compensation coverage in the state of Washington (WA). - state_wc_class_code: - type: - - string - - 'null' - description: The risk class code for workers' compensation in Washington state. Please visit [Washington state's Risk Class page](https://www.lni.wa.gov/insurance/rates-risk-classes/risk-classes-for-workers-compensation/risk-class-lookup#/) to learn more. - Jobs-Create-Request-Body: - description: Request body for creating a job. - type: object - required: - - title - - hire_date - allOf: - - "$ref": "#/components/schemas/Jobs-Body" - x-examples: - create_job: - title: Regional Manager - hire_date: '2020-12-21' - two_percent_shareholder: false - Jobs-Update-Request-Body: - description: Request body for updating a job. - type: object - allOf: - - "$ref": "#/components/schemas/Versionable-Required" - - "$ref": "#/components/schemas/Jobs-Body" - x-examples: - update_job: - version: gr78930htutrz444kuytr3s5hgxykuveb523fwl8sir - title: Regional Manager - hire_date: '2020-12-21' - Federal-Tax-Details-Update: - title: Federal-Tax-Details-Update - type: object - required: - - version - properties: - version: - type: string - example: 6cb95e00540706ca48d4577b3c839fbe - description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. - legal_name: - type: string - example: Acme Corp. - description: The legal name of the company - ein: - type: string - example: '123456789' - description: The company's Employer Identification Number (EIN). Must be 9 digits. Dashes are optional (e.g., '12-3456789' or '123456789'). - tax_payer_type: - type: string - example: LLP - enum: - - C-Corporation - - S-Corporation - - Sole proprietor - - LLC - - LLP - - Limited partnership - - Co-ownership - - Association - - Trusteeship - - General partnership - - Joint venture - - Non-Profit - description: |- - What type of tax entity the company is. One of: - - C-Corporation - - S-Corporation - - Sole proprietor - - LLC - - LLP - - Limited partnership - - Co-ownership - - Association - - Trusteeship - - General partnership - - Joint venture - - Non-Profit - filing_form: - type: string - example: '944' - enum: - - '941' - - '944' - description: |- - The form used by the company for federal tax filing. One of: - - 941 (Quarterly federal tax return form) - - 944 (Annual federal tax return form) - taxable_as_scorp: - type: boolean - example: false - description: Whether the company is taxed as an S-Corporation - x-tags: - - Federal Tax Details - Tax-Requirement-States-List: - type: array - x-examples: - success_status: - - state: GA - setup_complete: false - setup_status: not_started - default_rates_applied: false - ready_to_run_payroll: false - - state: CA - setup_complete: true - setup_status: complete - default_rates_applied: false - ready_to_run_payroll: true - items: - type: object - properties: - state: - "$ref": "#/components/schemas/State" - setup_complete: - type: boolean - description: Whether all requirements for the state have been satisfied such that the company can complete onboarding. A company must be `setup_complete` in all relevant states to complete the `state_setup` company onboarding step. - setup_status: + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: payroll_id + in: path + description: The UUID of the payroll + required: true + schema: + type: string + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/pdf: + schema: + type: string + format: binary + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: getPayStub + "/v1/companies/{company_id}/payrolls/{id}/partner_disbursements": + get: + summary: Get partner disbursements for a payroll + operationId: get-v1-companies-company_id-payrolls-id-partner_disbursements + security: + - CompanyAccessAuth: [] + description: |- + Get partner disbursements for a specific payroll. + + scope: `partner_disbursements:read` + tags: + - Payrolls + x-gusto-integration-type: + - embedded + parameters: + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: id + in: path + description: The UUID of the payroll + required: true + schema: + type: string + - name: X-Gusto-API-Version + in: header + schema: type: string enum: - - not_started - - in_progress - - complete - description: | - The current status of the state tax setup. - - `not_started`: No requirements have been filled - - `in_progress`: Some requirements have been filled, or default rates are applied - - `complete`: All requirements have been filled without default rates - default_rates_applied: - type: boolean - description: Whether the state is using system-assigned default SUI rates rather than employer-specific rates. - ready_to_run_payroll: - type: boolean - description: Whether the state tax setup is sufficiently complete for the company to run payroll. This will be `true` when `setup_complete` is `true`. - Tax-Requirement-Set-Update: - type: array - description: Array of requirement sets to update. Each set corresponds to a category of requirements for the state. - items: - type: object - required: - - key - - state - properties: - key: - "$ref": "#/components/schemas/Tax-Requirement-Set-Key" - state: - "$ref": "#/components/schemas/State" - effective_from: - "$ref": "#/components/schemas/Tax-Requirement-Effective-From" - requirements: - type: array - items: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Payroll-Partner-Disbursements" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + patch: + summary: Update partner disbursements for a payroll + operationId: patch-v1-companies-company_id-payrolls-id-partner_disbursements + security: + - CompanyAccessAuth: [] + description: |- + Update partner disbursements for a specific payroll. + + scope: `partner_disbursements:write` + tags: + - Payrolls + x-gusto-integration-type: + - embedded + parameters: + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: id + in: path + description: The UUID of the payroll + required: true + schema: + type: string + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Payroll-Partner-Disbursements" + '422': + description: mixed single and multiple errors example + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + requestBody: + content: + application/json: + schema: type: object - required: - - key properties: - key: - "$ref": "#/components/schemas/Tax-Requirement-Key" - value: - "$ref": "#/components/schemas/Tax-Requirements-Value" - Tax-Requirements-Value: - description: The value or "answer" for a tax requirement. Type depends on the requirement metadata type (e.g. string for text/account_number, boolean for radio/checkbox, number for percent/currency/tax_rate). Null when the requirement has not been answered. - example: 1233214-AB - oneOf: - - type: boolean - - type: string - - type: number - - type: 'null' - Admin-Create-Request: - type: object - description: The request body for creating a company admin. - required: - - first_name - - last_name - - email - properties: - first_name: - type: string - description: The first name of the admin. - example: John - last_name: - type: string - description: The last name of the admin. - example: Smith - email: - type: string - description: The email of the admin for Gusto's system. If the email matches an existing user, this will create an admin account for them. - example: jsmith99@gmail.com - Company-Attachment-List: - type: array - x-examples: - success_status: - - uuid: 5de11791-98fd-4587-9ed0-d5d804b8e647 - name: Company_Attachment_File1.pdf - category: gep_notice - upload_time: '2022-02-01T00:00:00.000Z' - - uuid: 987058cc-23ee-46e9-81ef-5cee086cceca - name: Company_Attachment_File2.pdf - category: compliance - upload_time: '2022-02-01T00:00:00.000Z' - items: - "$ref": "#/components/schemas/Company-Attachment" - Company-Attachment-Download-Url: - description: The temporary url to download a Company Attachment File - type: object - required: - - url - x-examples: - success_status: - url: https://s3.amazonaws.com/static.gusto.com/assets/uploaded_files/334721.pdf?parameter=daer8r3432423djklsdafaso - success_status_alternate: - url: https://s3.amazonaws.com/static.gusto.com/assets/uploaded_files/112233.pdf?parameter=abc123def456 - properties: - url: - type: string - description: A full URL to download a Company Attachment File - Company-Attachment-Create-Request-Body: - description: The binary payload of the file and the company attachment category. - type: object - required: - - document - - category - properties: - document: - type: string - format: binary - description: The binary payload of the file to be uploaded. Supported file types are .qbb, .qbm, .gif, .jpg, .png, .pdf, .xls, .xlsx, .doc and .docx. - category: - type: string + disbursements: + type: array + items: + type: object + properties: + employee_uuid: + type: string + description: UUID of the employee + example: 1a2b3c4d-5e6f-7890-abcd-ef1234567890 + payment_method: + type: string + enum: + - Direct Deposit + - Check + description: Payment method for the employee + payment_status: + type: string + enum: + - Pending + - Paid + - Not partner managed + - Converted to check + description: Status of the payment disbursement + required: + - employee_uuid + required: + - disbursements + "/v1/companies/{company_id}/payroll_reversals": + get: + summary: Get approved payroll reversals + operationId: get-v1-companies-company_id-payroll_reversals + security: + - CompanyAccessAuth: [] + description: |- + Returns all approved Payroll Reversals for a Company. + + scope: `payrolls:read` + tags: + - Payrolls + x-gusto-integration-type: + - embedded + parameters: + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: page + in: query + required: false + description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + schema: + type: integer + - name: per + in: query + required: false + description: Number of objects per page. For majority of endpoints will default to 25 + schema: + type: integer + - "$ref": "#/components/parameters/VersionHeader" + x-gusto-rswag: true + responses: + '200': + description: Example response + content: + application/json: + schema: + "$ref": "#/components/schemas/Payroll-Reversal-List" + '404': description: | - The category of a company attachment. - - `gep_notice`: A tax notice attachment - - `compliance`: A compliance attachment - enum: - - gep_notice - - compliance - Rehire-Update-Request-Body: - description: Request body for updating an employee rehire. - type: object - allOf: - - "$ref": "#/components/schemas/Versionable-Required" - - "$ref": "#/components/schemas/Rehire-Body" - x-examples: - update_rehire: - version: 1928d0c378e519e9c03fb959bc959a6b - effective_date: '2023-06-30' - work_location_uuid: b6ae9d93-d4b8-4119-8c96-dba595dd8c30 - file_new_hire_report: true - Company-Benefit-Create-Request: - description: '' - type: object - properties: - benefit_type: - type: integer - description: The ID of the benefit to which the company benefit belongs. - active: - type: boolean - default: true - description: Whether this benefit is active for employee participation. - description: - type: string - description: 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". - responsible_for_employer_taxes: - type: boolean - description: Whether the employer is subject to pay employer taxes when an employee is on leave. Only applicable to third party sick pay benefits. - responsible_for_employee_w2: - type: boolean - description: Whether the employer is subject to file W-2 forms for an employee on leave. Only applicable to third party sick pay benefits. - catch_up_type: - description: The type of catch-up contribution for this benefit, as required by Section 603 of the SECURE 2.0 Act. Only applicable to pre-tax 401(k) and 403(b) benefits. - anyOf: - - type: string - enum: - - elective - - deemed - - type: 'null' - required: - - description - Company-Benefit-Update-Request: - description: '' - type: object - properties: - version: - type: string - description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/versioning#object-layer) for information on how to use this field. - active: - type: boolean - description: Whether this benefit is active for employee participation. Company benefits may only be deactivated if no employees are actively participating. - description: - type: string - description: 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". - responsible_for_employer_taxes: - type: boolean - description: 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). - responsible_for_employee_w2: - type: boolean - description: 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). - catch_up_type: - description: The type of catch-up contribution for this benefit, as required by Section 603 of the SECURE 2.0 Act. Only applicable to pre-tax 401(k) and 403(b) benefits. - anyOf: - - type: string - enum: - - elective - - deemed - - type: 'null' - required: - - version - Contribution-Exclusion-Update-Request: - description: '' - type: object - properties: - contribution_exclusions: - type: array - description: The list of contribution exclusions to update - items: - "$ref": "#/components/schemas/Contribution-Exclusion" - required: - - contribution_exclusions - Employee-Benefit-Bulk-Update-Request: - description: '' - type: object - properties: - employee_benefits: - type: array - description: The list of employee benefits to create or update - items: - "$ref": "#/components/schemas/Employee-Benefit-For-Company-Benefit" - required: - - employee_benefits - Earning-Type-List: - type: object - description: Lists of default and custom earning types for a company. - x-examples: - success: - default: - - name: Bonus - uuid: b82e35c5-d7c6-4705-9e16-9f87499ade18 - active: true - - name: Cash Tips - uuid: f5618c94-ed7d-4366-b2c4-ff05e430064f - active: true - - name: Commission - uuid: 60191999-004a-49d9-b163-630574433653 - active: true - - name: Correction Payment - uuid: 368226e0-8e8c-48f0-bc91-aee46caafbc9 - active: true - - name: Minimum Wage Adjustment - uuid: 88a2e519-9ff5-4c19-9071-6a709f3c2939 - active: true - - name: Paycheck Tips - uuid: a3eaf03d-e712-4144-8f9b-71a85528adcf - active: true - - name: Severance - uuid: a6a2eba7-6c7d-4ced-bbe8-43452fbc9f63 - active: true - custom: - - name: Gym Membership Stipend - uuid: 6b4a8efb-db90-4c13-a75f-aae11b3f4ff9 - active: true - defaults_only: - default: - - name: Bonus - uuid: b82e35c5-d7c6-4705-9e16-9f87499ade18 - active: true - - name: Cash Tips - uuid: f5618c94-ed7d-4366-b2c4-ff05e430064f - active: true - - name: Commission - uuid: 60191999-004a-49d9-b163-630574433653 - active: true - - name: Correction Payment - uuid: 368226e0-8e8c-48f0-bc91-aee46caafbc9 - active: true - - name: Minimum Wage Adjustment - uuid: 88a2e519-9ff5-4c19-9071-6a709f3c2939 - active: true - - name: Paycheck Tips - uuid: a3eaf03d-e712-4144-8f9b-71a85528adcf - active: true - - name: Severance - uuid: a6a2eba7-6c7d-4ced-bbe8-43452fbc9f63 - active: true - custom: [] - properties: - default: - type: array - description: The default earning types for the company. - items: - "$ref": "#/components/schemas/Earning-Type" - custom: - type: array - description: The custom earning types for the company. - items: - "$ref": "#/components/schemas/Earning-Type" - Embedded-Time-Off-Request: - type: object - description: The representation of a time off request. - required: - - uuid - - status - - employee_note - - employer_note - - policy_type - - policy_uuid - - days - - employee - - initiator - - approver - x-examples: - success_status: - uuid: ad158cfb-99e4-4741-9db3-0bd3a267f222 - status: pending - employee_note: Family vacation - employer_note: - days: - '2026-10-20': '8.000' - '2026-10-21': '8.000' - policy_type: vacation - policy_uuid: c2d9b1bd-3f36-4c2d-a727-b2af057d6a7f - employee: - uuid: 51924fa0-26c6-4d4c-8832-3ef0b422c67e - full_name: Alex Johnson - approver: - initiator: - uuid: 51924fa0-26c6-4d4c-8832-3ef0b422c67e - full_name: Alex Johnson - approved_status: - uuid: ad158cfb-99e4-4741-9db3-0bd3a267f222 - status: approved - employee_note: Family vacation - employer_note: - days: - '2026-10-20': '8.000' - '2026-10-21': '8.000' - policy_type: vacation - policy_uuid: c2d9b1bd-3f36-4c2d-a727-b2af057d6a7f - employee: - uuid: 51924fa0-26c6-4d4c-8832-3ef0b422c67e - full_name: Alex Johnson - approver: - uuid: 21d8dff4-ce09-4120-a274-3a5628bf6769 - full_name: Morgan Chen - initiator: - uuid: 51924fa0-26c6-4d4c-8832-3ef0b422c67e - full_name: Alex Johnson - declined_status: - uuid: ad158cfb-99e4-4741-9db3-0bd3a267f222 - status: declined - employee_note: Family vacation - employer_note: Not enough coverage - days: - '2026-10-20': '8.000' - '2026-10-21': '8.000' - policy_type: vacation - policy_uuid: c2d9b1bd-3f36-4c2d-a727-b2af057d6a7f - employee: - uuid: 51924fa0-26c6-4d4c-8832-3ef0b422c67e - full_name: Alex Johnson - approver: - initiator: - uuid: 51924fa0-26c6-4d4c-8832-3ef0b422c67e - full_name: Alex Johnson - properties: - uuid: - type: string - description: The UUID of the time off request. - example: ad158cfb-99e4-4741-9db3-0bd3a267f222 - readOnly: true - status: - type: string - description: The status of the time off request. - example: pending - enum: - - pending - - approved - - declined - - consumed - readOnly: true - employee_note: - type: - - string - - 'null' - description: A note about the time off request, from the employee to the employer. - example: Family vacation - readOnly: true - employer_note: - type: - - string - - 'null' - description: A note about the time off request, from the employer to the employee. - example: - readOnly: true - policy_type: - type: - - string - - 'null' - description: The type of the time off policy (e.g. vacation, sick). - example: vacation - readOnly: true - policy_uuid: - type: - - string - - 'null' - description: The UUID of the time off policy associated with this request. - example: c2d9b1bd-3f36-4c2d-a727-b2af057d6a7f - readOnly: true - days: - description: 'An object where keys are dates in YYYY-MM-DD format and values are hours as string decimals (e.g. {"2025-01-20": "8.000"}).' - type: object - additionalProperties: + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: getApprovedReversals + "/v1/companies/{company_id}/payrolls/{payroll_id}": + get: + summary: Get a single payroll + operationId: get-v1-companies-company_id-payrolls-payroll_id + security: + - CompanyAccessAuth: [] + description: |- + Returns a payroll. If payroll is calculated or processed, will return employee_compensations and totals. + + Results are paginated, with a maximum page size of 100 employee_compensations. + + Notes: + * Hour and dollar amounts are returned as string representations of numeric decimals. + * Hours are represented to the thousands place; dollar amounts are represented to the cent. + * Every eligible compensation is returned for each employee. If no data has yet be inserted for a given field, it defaults to "0.00" (for fixed amounts) or "0.000" (for hours ). + * When include parameter with benefits value is passed, employee_benefits:read scope is required to return benefits + * Benefits containing PHI are only visible with the `employee_benefits:read:phi` scope + + scope: `payrolls:read` + tags: + - Payrolls + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: payroll_id + in: path + description: The UUID of the payroll + required: true + schema: + type: string + - name: X-Gusto-API-Version + in: header + schema: type: string - example: - '2026-10-20': '8.000' - '2026-10-21': '8.000' - readOnly: true - employee: - type: object - description: '' - properties: - uuid: - type: string - description: The UUID of the employee the time off request is for. - example: 51924fa0-26c6-4d4c-8832-3ef0b422c67e - readOnly: true - full_name: - type: string - description: The full name of the employee the time off request is for. - example: Alex Johnson - readOnly: true - readOnly: true - initiator: - type: - - object - - 'null' - description: '' - properties: - uuid: - type: string - description: The UUID of the employee who initiated the time off request. - example: 51924fa0-26c6-4d4c-8832-3ef0b422c67e - readOnly: true - full_name: - type: string - description: The full name of the employee who initiated the time off request. - example: Alex Johnson - readOnly: true - readOnly: true - approver: - type: - - object - - 'null' - description: This value will be null if the request has not been approved. - properties: - uuid: - type: string - description: The UUID of the employee who approved the time off request. - example: 21d8dff4-ce09-4120-a274-3a5628bf6769 - readOnly: true - full_name: + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: include + in: query + explode: false + required: false + schema: + type: array + items: type: string - description: The full name of the employee who approved the time off request. - example: Morgan Chen - readOnly: true - readOnly: true - Embedded-Time-Off-Request-List: - type: array - items: - "$ref": "#/components/schemas/Embedded-Time-Off-Request" - x-examples: - success_status: - - uuid: ad158cfb-99e4-4741-9db3-0bd3a267f222 - status: pending - employee_note: Family vacation - employer_note: - days: - '2026-10-20': '8.000' - '2026-10-21': '8.000' - policy_type: vacation - policy_uuid: c2d9b1bd-3f36-4c2d-a727-b2af057d6a7f - employee: - uuid: 51924fa0-26c6-4d4c-8832-3ef0b422c67e - full_name: Alex Johnson - approver: - initiator: - uuid: 51924fa0-26c6-4d4c-8832-3ef0b422c67e - full_name: Alex Johnson - - uuid: 944cbbf4-8b13-4c45-babd-11ff13e17581 - status: approved - employee_note: Feeling under the weather - employer_note: Feel better soon! - days: - '2026-11-05': '8.000' - policy_type: sick - policy_uuid: bf493c7e-1a2d-4e5f-8c9a-3d7b6e4f2a1c - employee: - uuid: c2236d10-959a-4bb9-a21d-e14c6df447b6 - full_name: James Rivera - approver: - uuid: 21d8dff4-ce09-4120-a274-3a5628bf6769 - full_name: Morgan Chen - initiator: - uuid: c2236d10-959a-4bb9-a21d-e14c6df447b6 - full_name: James Rivera - Embedded-Time-Off-Request-Preview: - type: object - description: Preview of the balance impact for a time off request before it is created or updated. - required: - - balance_hours - - this_request_hours - - other_requested_hours - - remaining_balance_hours - - allow_negative_balance - - unlimited - x-examples: - success_status: - balance_hours: '64.0' - this_request_hours: '16.0' - other_requested_hours: '0.0' - remaining_balance_hours: '48.0' - allow_negative_balance: false - unlimited: false - properties: - balance_hours: - type: string - nullable: true - description: The employee's current available balance hours for this policy. Null for unlimited policies. - example: '64.0' - readOnly: true - this_request_hours: - type: string - description: The total hours for this time off request. - example: '16.0' - readOnly: true - other_requested_hours: - type: string - description: Hours from other pending or approved requests for this policy. - example: '0.0' - readOnly: true - remaining_balance_hours: - type: string - nullable: true - description: The projected balance after this request is applied. Null for unlimited policies. - example: '48.0' - readOnly: true - allow_negative_balance: - type: boolean - description: Whether the time off policy allows a negative balance. - example: false - readOnly: true - unlimited: - type: boolean - description: Whether the time off policy provides unlimited time off. - example: false - readOnly: true - Embedded-Time-Off-Balance: - type: object - description: Time off balance for an employee, grouped by policy. - x-examples: - success_status: - employee_uuid: 51924fa0-26c6-4d4c-8832-3ef0b422c67e - balances: - - policy_uuid: c2d9b1bd-3f36-4c2d-a727-b2af057d6a7f - balance_hours: '32.0' - accrued_hours: '40.0' - used_hours: '8.0' - pending_hours: '0.0' - properties: - employee_uuid: - type: string - description: The UUID of the employee. - example: 51924fa0-26c6-4d4c-8832-3ef0b422c67e - readOnly: true - balances: - type: array - description: The employee's time off balances, one entry per policy. - readOnly: true - items: - type: object - properties: - policy_uuid: - type: string - description: The UUID of the time off policy. - example: c2d9b1bd-3f36-4c2d-a727-b2af057d6a7f - readOnly: true - balance_hours: - type: string - description: The employee's current available balance hours for this policy. - example: '32.0' - readOnly: true - accrued_hours: - type: string - description: The total hours accrued year-to-date for this policy. - example: '40.0' - readOnly: true - used_hours: - type: string - description: The total hours used year-to-date for this policy. - example: '8.0' - readOnly: true - pending_hours: - type: - - string - - 'null' - description: The total hours from pending time off requests for this policy. - example: '0.0' - readOnly: true - Embedded-Time-Off-Balance-List: - type: array - items: - "$ref": "#/components/schemas/Embedded-Time-Off-Balance" - x-examples: - success_status: - - employee_uuid: 51924fa0-26c6-4d4c-8832-3ef0b422c67e - balances: - - policy_uuid: c2d9b1bd-3f36-4c2d-a727-b2af057d6a7f - balance_hours: '32.0' - accrued_hours: '40.0' - used_hours: '8.0' - pending_hours: '0.0' - Conflict-Error-Object: - description: "Conflict\n \nThis error occurs when the resource version provided does not match the current version. Retrieve the latest version and retry." - type: object - required: - - errors - properties: - errors: - type: array - items: - type: object - required: - - error_key - - category - properties: - error_key: - type: string - description: Specifies where the error occurs. Typically this key identifies the attribute/parameter related to the error. - category: - type: string - description: Specifies the type of error. The category provides error groupings and can be used to build custom error handling in your integration. - message: - type: string - description: Provides details about the error - generally this message can be surfaced to an end user. - x-examples: - invalid_version: - errors: - - error_key: base - category: invalid_resource_version - message: You are attempting to update a resource using an out-of-date version. - Employee-Custom-Field-List: - type: object - description: A list of an employee's custom fields - properties: - custom_fields: - type: array - items: - "$ref": "#/components/schemas/Employee-Custom-Field" - x-examples: - example: - custom_fields: - - id: ee515986-f3ca-49da-b576-2691b95262f9 - company_custom_field_id: ea7e5d57-6abb-47d7-b654-347c142886c0 - name: employee_level - description: Employee Level - type: text - value: '2' - selection_options: - - id: 3796e08d-c2e3-434c-b4de-4ce1893e7b59 - company_custom_field_id: 024ec137-6c92-43a3-b061-14a9720531d6 - name: favorite fruit - description: Which is your favorite fruit? - type: radio - value: apple - selection_options: - - apple - - banana - - orange - Department-List: - type: array - items: - "$ref": "#/components/schemas/Department" - x-examples: - example: - - uuid: 56260b3d-c375-415c-b77a-75d99f717193 - company_uuid: 7087a288-8349-4632-b92e-bc94fb79f29e - title: Stage Hand - version: d90440dd464601d1c8f4e9e240dfb7a6 - employees: - - uuid: 41199375-a999-4414-9f40-d9bf596b134d - contractors: [] - - uuid: ec5c8a85-3233-4f39-a9f5-fb1ab7b5f5f3 - company_uuid: 7087a288-8349-4632-b92e-bc94fb79f29e - title: Actors - version: 34f39a30b45d077cb83aed2df4810d74 - employees: - - uuid: 7ee4aca1-814b-4034-b0f8-07f93cc679d1 - contractors: [] - - uuid: 1802465d-4f68-4865-920c-1307ab095f12 - company_uuid: 7087a288-8349-4632-b92e-bc94fb79f29e - title: Band - version: 1fe3076d35ef7c97d0ae68c5f4df0acd - employees: - - uuid: a73955be-c009-44dc-915e-6246e2bdedbb - contractors: - - uuid: 3488549f-60e4-494f-a34a-9d8aad3aabf5 - Department-Create-Request-Body: - type: object - properties: - title: - type: string - description: Name of the department - example: Stage Hand - required: - - title - Department-Update-Request-Body: - type: object - allOf: - - "$ref": "#/components/schemas/Versionable-Required" - - "$ref": "#/components/schemas/Department-Create-Request-Body" - Department-People-Request-Body: - type: object - allOf: - - "$ref": "#/components/schemas/Versionable-Required" - - type: object - properties: - employees: - type: array - description: Array of employees to add or remove from the department - items: - type: object - properties: - uuid: - type: string - contractors: - type: array - description: Array of contractors to add or remove from the department - items: - type: object - properties: - uuid: + enum: + - benefits + - deductions + - taxes + - payroll_status_meta + - totals + - risk_blockers + - reversals + - payroll_taxes + description: Include the requested attribute in the response, for multiple attributes comma separate the values, i.e. `?include=benefits,deductions,taxes` + - name: page + in: query + required: false + description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + schema: + type: integer + - name: per + in: query + required: false + description: Number of objects per page. For majority of endpoints will default to 25 + schema: + type: integer + - name: sort_by + in: query + required: false + schema: + type: string + pattern: "^(first_name|last_name)(:(asc|desc))?(,(first_name|last_name)(:(asc|desc))?)*$" + example: first_name:asc + description: 'Sort employee compensations by one or more fields. Options: first_name, last_name. Append `:asc` or `:desc` to specify direction (e.g., `last_name:asc` or `last_name:asc,first_name:asc`). Defaults to ascending.' + x-gusto-rswag: true + responses: + '200': + description: successful with wait_for_reverse_wire credit blocker + content: + application/json: + schema: + "$ref": "#/components/schemas/Payroll-Show" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: get + put: + summary: Update a payroll by ID + operationId: put-v1-companies-company_id-payrolls + security: + - CompanyAccessAuth: [] + description: |- + This endpoint allows you to update information for one or more employees for a specific **unprocessed** payroll. You can think of the **unprocessed** + payroll object as a template of fields that you can update. You cannot modify the structure of the payroll object through this endpoint, only values + of the fields included in the payroll. If you do not include specific employee compensations, fixed/hourly compensations, or deductions in your request body, they + will not be removed from the payroll. A maximum of 100 employee_compensations can be updated at a time. Only the employee compensation objects that were + inputted will be returned. + + scope: `payrolls:write` + tags: + - Payrolls + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: payroll_id + in: path + description: The UUID of the payroll + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Payroll-Prepared" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '409': + description: Conflict + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Payroll-Update" + required: true + x-speakeasy-name-override: update + delete: + summary: Delete a payroll + operationId: delete-v1-companies-company_id-payrolls + security: + - CompanyAccessAuth: [] + description: |- + This endpoint allows you to delete an **unprocessed** payroll. + + By default the payroll and associated data is deleted synchronously. To request an asynchronous delete, use the `async=true` query parameter. In both cases validation of ability to delete will be performed and an Unprocessable Entity error will be returned if the payroll is not able to be deleted. A successful synchronous delete will return `204/No Content`. When a payroll has been enqueued for asynchronous deletion, `202/Accepted` will be returned. + + scope: `payrolls:run` + tags: + - Payrolls + x-gusto-integration-type: + - embedded + parameters: + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: payroll_id + in: path + description: The UUID of the payroll + required: true + schema: + type: string + - name: async + in: query + description: When true, request an asynchronous delete of the payroll. + schema: + type: boolean + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '204': + description: no content + '202': + description: Accepted + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: delete + "/v1/companies/{company_id}/payrolls": + get: + summary: Get all payrolls for a company + operationId: get-v1-companies-company_id-payrolls + security: + - CompanyAccessAuth: [] + description: |- + Returns a list of payrolls for a company. You can change the payrolls returned by updating the processing_status, payroll_types, start_date, & end_date params. + + By default, will return processed, regular payrolls for the past 6 months. + + Notes: + * Dollar amounts are returned as string representations of numeric decimals, are represented to the cent. + * end_date can be at most 3 months in the future and start_date and end_date can't be more than 1 year apart. + * Results are paginated. Maximum page size is 100 payrolls per request; the default page size is 25. + + scope: `payrolls:read` + tags: + - Payrolls + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: processing_statuses + in: query + required: false + explode: false + description: Whether to include processed and/or unprocessed payrolls in the response, defaults to processed, for multiple attributes comma separate the values, i.e. `?processing_statuses=processed,unprocessed` + schema: + type: array + items: + type: string + enum: + - processed + - unprocessed + - name: payroll_types + in: query + required: false + explode: false + description: Whether to include regular and/or off_cycle payrolls in the response, defaults to regular, for multiple attributes comma separate the values, i.e. `?payroll_types=regular,off_cycle` + schema: + type: array + items: + type: string + enum: + - regular + - off_cycle + - external + - name: processed + in: query + required: false + description: Whether to return processed or unprocessed payrolls + schema: + type: boolean + - name: include_off_cycle + in: query + required: false + description: Whether to include off cycle payrolls in the response + schema: + type: boolean + - name: include + in: query + explode: false + required: false + schema: + type: array + items: + type: string + enum: + - taxes + - payroll_status_meta + - totals + - risk_blockers + - reversals + description: Include the requested attribute in the response, for multiple attributes comma separate the values, i.e. `?include=benefits,deductions,taxes` + - name: start_date + in: query + required: false + example: '2020-01-31' + description: Return payrolls whose pay period is after the start date + schema: + type: string + - name: end_date + in: query + required: false + example: '2020-01-31' + description: Return payrolls whose pay period is before the end date. If left empty, defaults to today's date. + schema: + type: string + - name: date_filter_by + in: query + required: false + description: Specifies which date field to use when filtering payrolls with start_date and end_date. This field applies only to regular processed payrolls and defaults to pay period if not provided. + schema: + type: string + enum: + - check_date + example: check_date + - name: page + in: query + required: false + description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + schema: + type: integer + - name: per + in: query + required: false + description: Number of objects per page. For majority of endpoints will default to 25 + schema: + type: integer + - name: sort_order + in: query + required: false + description: A string indicating whether to sort resulting events in ascending (asc) or descending (desc) chronological order. Events are sorted by their `timestamp`. Defaults to asc if left empty. + schema: + type: string + enum: + - asc + - desc + example: asc + x-gusto-rswag: true + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Payroll-List" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: list + post: + summary: Create an off-cycle payroll + operationId: post-v1-companies-company_id-payrolls + security: + - CompanyAccessAuth: [] + description: |- + Creates a new, unprocessed, off-cycle payroll. + + ## `off_cycle_reason` + By default: + - External benefits and deductions will be included when the `off_cycle_reason` is set to `Correction`. + - All benefits and deductions are blocked when the `off_cycle_reason` is set to `Bonus`. + + These elections can be overridden with the `skip_regular_deductions` boolean. + + scope: `payrolls:run` + tags: + - Payrolls + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Payroll-Unprocessed" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + required: + - off_cycle + - off_cycle_reason + - start_date + - end_date + properties: + off_cycle: + type: boolean + description: Whether it is an off cycle payroll. + off_cycle_reason: + type: string + enum: + - Bonus + - Correction + - Adhoc + - Dismissed employee + - Transition from old pay schedule + description: An off cycle payroll reason. Select one from the following list. + start_date: + type: string + format: date + description: Pay period start date. + end_date: + type: string + format: date + description: Pay period end date. + pay_schedule_uuid: + description: A pay schedule is required for transition from old pay schedule payroll to identify the matching transition pay period. + type: string + employee_uuids: + description: A list of employee uuids to include on the payroll. + type: + - array + - 'null' + items: type: string - Company-Custom-Field-List: - type: object - x-examples: - success_status: - custom_fields: - - uuid: ea7e5d57-6abb-47d7-b654-347c142886c0 - name: employee_level - description: Employee Level - type: text - selection_options: - - uuid: 024ec137-6c92-43a3-b061-14a9720531d6 - name: favorite fruit - description: Which is your favorite fruit? - type: radio - selection_options: - - apple - - banana - - orange - properties: - custom_fields: - type: array - items: - "$ref": "#/components/schemas/Company-Custom-Field" - Garnishment-Request-Base: - type: object - description: Shared request body properties for creating or updating a garnishment. - properties: - active: - type: boolean - default: true - description: Whether or not this garnishment is currently active. - amount: - type: string - format: float - readOnly: false - description: The amount of the garnishment. Either a percentage or a fixed dollar amount. Represented as a float, e.g. "8.00". - description: - type: string - readOnly: false - description: The description of the garnishment. - court_ordered: - type: boolean - readOnly: false - description: Whether the garnishment is court ordered. - garnishment_type: - type: - - string - - 'null' - readOnly: false - description: The specific type of garnishment for court ordered garnishments. - enum: - - child_support - - federal_tax_lien - - state_tax_lien - - student_loan - - creditor_garnishment - - federal_loan - - other_garnishment - times: - type: - - integer - - 'null' - readOnly: false - default: - description: The number of times to apply the garnishment. Ignored if recurring is true. - recurring: - type: boolean - readOnly: false - default: false - description: Whether the garnishment should recur indefinitely. - annual_maximum: - format: float - readOnly: false - default: - type: - - string - - 'null' - description: The maximum deduction per annum. A null value indicates no maximum. Represented as a float, e.g. "200.00". - pay_period_maximum: - type: - - string - - 'null' - format: float - default: - description: The maximum deduction per pay period. A null value indicates no maximum. Represented as a float, e.g. "16.00". - deduct_as_percentage: - type: boolean - readOnly: false - default: false - description: Whether the amount should be treated as a percentage to be deducted per pay period. - total_amount: - type: - - string - - 'null' - format: float - readOnly: false - description: A maximum total deduction for the lifetime of this garnishment. A null value indicates no maximum. - child_support: - "$ref": "#/components/schemas/Garnishment-Child-Support" - x-examples: - Example: - amount: '50.00' - annual_maximum: '2500.09' - recurring: true - Deactivate-Example: - active: false - Child-Support-Example: - amount: '40' - child_support: - case_number: ZZZ999 - Garnishment-Request: - description: Request body for creating a garnishment. - allOf: - - "$ref": "#/components/schemas/Garnishment-Request-Base" - - type: object - required: - - amount - - court_ordered - x-examples: - Example: - amount: '150.00' - description: Back taxes - court_ordered: true - recurring: true - deduct_as_percentage: false - Child-Support-Example: - court_ordered: true - garnishment_type: child_support - amount: '40' - recurring: true - deduct_as_percentage: true - pay_period_maximum: '500.00' - child_support: - state: FL - fips_code: '12011' - payment_period: Monthly - case_number: CS1234 - Update-Garnishment-Request: - description: Request body for updating a garnishment. - allOf: - - "$ref": "#/components/schemas/Garnishment-Request-Base" - - "$ref": "#/components/schemas/Versionable-Required" - Contractor-Address-Update-Body: - type: object - properties: - version: - type: string - example: 56d00c178bc7393b2a206ed6a86afcb4 - description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. - street_1: - type: string - street_2: - type: string - city: - type: string - state: - type: string - zip: - type: string - required: - - version - x-examples: - example: - version: fe75bd065ff48b91c35fe8ff842f986c - street_1: 300 3rd Street - street_2: - city: San Francisco - state: CA - zip: '94107' - Pay-Schedule-Show-Response: - type: array - description: 'List of pay schedules for a company, as returned from [GET /v1/companies/{company_id}/pay_schedules](ref:get-v1-companies-company_id-pay_schedules). Each entry matches Pay-Schedule-Show (includes `version`). + check_date: + type: string + format: date + description: Payment date. + withholding_pay_period: + description: The payment schedule tax rate the payroll is based on. + type: string + enum: + - Every week + - Every other week + - Twice per month + - Monthly + - Quarterly + - Semiannually + - Annually + skip_regular_deductions: + description: Block regular deductions and contributions for this payroll. + type: boolean + fixed_withholding_rate: + description: Enable taxes to be withheld at the IRS's required rate of 22% for federal income taxes. State income taxes will be taxed at the state's supplemental tax rate. Otherwise, we'll sum the entirety of the employee's wages and withhold taxes on the entire amount at the rate for regular wages. + type: boolean + is_check_only_payroll: + description: When true, all employees in the payroll will be paid by check and the check date can be set to today or any future business day (rather than requiring ACH lead time). Payment methods cannot be changed on check-only payrolls. + type: boolean + x-speakeasy-name-override: createOffCycle + "/v1/payrolls/{payroll_uuid}/receipt": + get: + summary: Get a single payroll receipt + operationId: get-v1-payment-receipts-payrolls-payroll_uuid + security: + - CompanyAccessAuth: [] + description: |- + Returns a payroll receipt. + + Notes: + * Hour and dollar amounts are returned as string representations of numeric decimals. + * Dollar amounts are represented to the cent. + * If no data has yet be inserted for a given field, it defaults to "0.00" (for fixed amounts). + + scope: `payrolls:read` + tags: + - Payrolls + x-gusto-integration-type: + - embedded + parameters: + - name: payroll_uuid + in: path + description: The UUID of the payroll + required: true + schema: + type: string + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Payroll-Receipt" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: getReceipt + "/v1/companies/{company_id}/payrolls/{payroll_id}/cancel": + put: + summary: Cancel a payroll + operationId: put-api-v1-companies-company_id-payrolls-payroll_id-cancel + security: + - CompanyAccessAuth: [] + description: |- + Transitions a `processed` payroll back to the `unprocessed` state. A payroll can be canceled if it meets both criteria: + + - `processed` is `true` + - Current time is earlier than 4pm PT on the `payroll_deadline` + + scope: `payrolls:run` + tags: + - Payrolls + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: payroll_id + in: path + description: The UUID of the payroll + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessed-Payroll" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity -' - items: - "$ref": "#/components/schemas/Pay-Schedule-Show" - x-tags: - - Pay Schedules - x-examples: - success_status: - - uuid: f2a69c38-e2f9-4e31-b5c5-4754fc60a052 - version: 68934a3e9455fa72420237eb05902327 - frequency: Monthly - anchor_pay_date: '2022-12-11' - anchor_end_of_pay_period: '2022-11-13' - day_1: 11 - day_2: - name: - custom_name: every 11th of the month - auto_payroll: true - active: true - auto_payroll_enablement_blockers: - Contractor-Bank-Account-List: - title: Contractor-Bank-Account-List - type: array - items: - "$ref": "#/components/schemas/Contractor-Bank-Account" - x-examples: - example: - - uuid: 1531e824-8d9e-4bd8-9f90-0d04608125d7 - contractor_uuid: 9fcf1b1d-8886-4691-9283-383d3bdd4fd9 - name: BoA Checking Account - routing_number: '266905059' - hidden_account_number: XXXX1207 - account_type: Checking - Contractor-Bank-Account-Create-Request-Body: - title: Contractor-Bank-Account-Create-Request-Body - type: object - required: - - name - - routing_number - - account_number - - account_type - properties: - name: - type: string - description: Name for the bank account - routing_number: - type: string - description: The bank account's routing number - account_number: - type: string - description: The bank account's account number - account_type: - type: string - enum: - - Checking - - Savings - description: Bank account type - x-examples: - example: - name: BoA Checking Account - routing_number: '266905059' - account_number: '5809431207' - account_type: Checking - Partner-Managed-Company-Migrate-Request: - type: object - required: - - email - properties: - email: - type: string - description: Email of the company signatory who is authorized to accept our [Terms of Service](https://flows.gusto.com/terms) and migration decision. You can retrieve the signatory email from the `GET /v/1/companies/{company_id}/signatories` endpoint. - ip_address: - type: string - description: The IP address of the signatory who viewed and accepted the Terms of Service. - external_user_id: - type: string - description: The signatory's user ID on your platform. - x-examples: - typical: - email: payroll.admin@example.com - ip_address: 203.0.113.42 - external_user_id: 9f8e7d6c-5b4a-3210-fedc-ba9876543210 - Partner-Managed-Company-Migrate-Response: - type: object - properties: - company_uuid: - type: string - description: The company UUID - migration_status: - type: string - description: The migration status. Always returns `success` for a successful migration. - enum: - - success - x-examples: - Example: - company_uuid: 39abf9b9-650b-4e67-89a0-389dc6ee8a71 - migration_status: success - Webhook-Verification-Token-Response: - description: The response from requesting a webhook subscription verification token. - type: object - x-tags: - - Webhooks - title: '' - properties: - message: - type: string - description: A message indicating the verification token has been sent. - x-examples: - Example: - message: Success! The subscriber will be notified with the verification token - Employee-Benefit-Create-Request: - description: '' - type: object - properties: - company_benefit_uuid: - type: string - description: The UUID of the company benefit. - active: - type: boolean - default: true - description: Whether the employee benefit is active. - employee_deduction: - type: string - default: '0.00' - description: The amount to be deducted, per pay period, from the employee's pay. - deduct_as_percentage: - type: boolean - default: false - description: Whether the employee deduction amount should be treated as a percentage to be deducted from each payroll. - employee_deduction_annual_maximum: - type: - - string - - 'null' - description: The maximum employee deduction amount per year. A null value signifies no limit. - contribution: - type: object - description: An object representing the company contribution type and value. - properties: - type: - type: string - enum: - - tiered - - percentage - - amount - description: |- - The company contribution scheme. + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-speakeasy-name-override: cancel + "/v1/companies/{company_id}/payrolls/{payroll_id}/prepare": + put: + summary: Prepare a payroll for update + operationId: put-v1-companies-company_id-payrolls-payroll_id-prepare + security: + - CompanyAccessAuth: [] + description: |- + Prepares an unprocessed payroll for update, including: adding or removing eligible employees from the payroll, + and updating `check_date`, `payroll_deadline`, and `payroll_status_meta` dates and times. - `amount`: The company contributes a fixed amount per payroll. If elective is true, the contribution is matching, dollar-for-dollar. + Use this endpoint before calling [PUT /v1/companies/{company_id}/payrolls/{payroll_id}](ref:put-v1-companies-company_id-payrolls). - `percentage`: The company contributes a percentage of the payroll amount per payroll period. If elective is true, the contribution is matching, dollar-for-dollar. + ### Notes - `tiered`: The size of the company contribution corresponds to the size of the employee deduction relative to a tiered matching scheme. - value: - description: |- - For the `amount` and `percentage` contribution types, the value of the corresponding amount or percentage. + * Nullifies `calculated_at` and `totals` if the payroll was previously calculated + * Returns the `version` parameter required for [updating the payroll](ref:put-v1-companies-company_id-payrolls) + * `employees:read` scope is required to include employee compensations data in the response. + * Results are paginated, with a maximum page size of 100 employee compensations. - For the `tiered` contribution type, an array of tiers. - oneOf: - - type: string - description: For the `amount` and `percentage` contribution types, the value of the corresponding amount or percentage. - - type: array - description: For `tiered` contribution types, an array of tiers. + scope: `payrolls:write employees:read` + tags: + - Payrolls + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: payroll_id + in: path + description: The UUID of the payroll + required: true + schema: + type: string + - name: page + in: query + required: false + description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + schema: + type: integer + - name: per + in: query + required: false + description: Number of objects per page. For majority of endpoints will default to 25 + schema: + type: integer + - name: sort_by + in: query + required: false + schema: + type: string + pattern: "^(first_name|last_name)(:(asc|desc))?(,(first_name|last_name)(:(asc|desc))?)*$" + example: first_name:asc + description: 'Sort employee compensations by one or more fields. Options: first_name, last_name. Append `:asc` or `:desc` to specify direction (e.g., `last_name:asc` or `last_name:asc,first_name:asc`). Defaults to ascending.' + x-gusto-rswag: true + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Payroll-Prepared" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + properties: + employee_uuids: + type: + - array + - 'null' + description: An array of employee UUIDs. If passed, only those employees payroll items will be prepared. items: - type: object - description: A single tier of a tiered matching scheme. - properties: - rate: - type: string - description: The percentage of employee deduction within this tier the company contribution will match. - threshold: - type: string - description: |- - Specifies the upper limit (inclusive) percentage of the employee contribution that this tier applies to. + type: string + x-speakeasy-name-override: prepare + "/v1/companies/{company_id}/payrolls/{payroll_id}/calculate": + put: + summary: Calculate a payroll + operationId: put-v1-companies-company_id-payrolls-payroll_id-calculate + security: + - CompanyAccessAuth: [] + description: |- + Performs calculations for taxes, benefits, and deductions for an unprocessed payroll. The calculated payroll details provide a preview of the actual values that will be used when the payroll is run. - Use threshold to define each tier's end point, with tiers applied cumulatively from 0% upwards. + This calculation is asynchronous and a successful request responds with a 202 HTTP status. To view the details of the calculated payroll, use the GET /v1/companies/{company_id}/payrolls/{payroll_id} endpoint with *include=taxes,benefits,deductions* params. - For example: + If the company is blocked from running payroll due to issues like incomplete setup, missing information or other compliance issues, the response will be 422 Unprocessable Entity with a categorization of the blockers as described in the error responses. - If the first tier has a threshold of "3", and rate of "100", the company will match 100% of employee contributions from 0% up to and including 3% of payroll. + scope: `payrolls:run` + tags: + - Payrolls + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: payroll_id + in: path + description: The UUID of the payroll + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '202': + description: Accepted + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity - If the next tier has a threshold of "5" and a rate of "50", the company will match 50% of contributions from above 3% up to and including 5% of payroll. - elective: - type: boolean - description: 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`. - default: false - company_contribution_annual_maximum: - type: - - string - - 'null' - description: The maximum company contribution amount per year. A null value signifies no limit. - limit_option: - type: - - string - - 'null' - enum: - - Family - - Individual - - Joint Filing or Single - - Married and Filing Separately - description: |- - Some benefits require additional information to determine - their limit. + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-speakeasy-name-override: calculate + "/v1/companies/{company_uuid}/payrolls/blockers": + get: + summary: Get all payroll blockers for a company + operationId: get-v1-companies-payroll-blockers-company_uuid + security: + - CompanyAccessAuth: [] + description: |- + Returns a list of reasons that prevent the company from running payrolls. See the [Payroll Blockers guide](doc:payroll-blockers) for a complete list of reasons. The list is empty if there are no payroll blockers. - `Family` or `Individual`: Applicable to HSA benefit. + scope: `payrolls:run` + tags: + - Payrolls + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Successful + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Payroll-Blocker" + '404': + description: | + Not Found - `Joint Filing or Single` or `Married and Filing Separately`: Applicable to Dependent Care FSA benefit. - catch_up: - type: boolean - default: false - description: Whether the employee should use a benefit's "catch up" rate. Only Roth 401k and 401k benefits use this value for employees over 50. - coverage_amount: - type: - - string - - 'null' - description: 'The amount that the employee is insured for. Note: company contribution cannot be present if coverage amount is set.' - coverage_salary_multiplier: - type: string - default: '0.00' - description: '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: - type: - - string - - 'null' - enum: - - unset - - reduces_taxable_income - - does_not_reduce_taxable_income - description: 'Whether the employee deduction reduces taxable income or not. Only valid for Group Term Life benefits. Note: when the value is not "unset", coverage amount and coverage salary multiplier are ignored.' - company_contribution: - type: string - default: '0.00' - description: The amount to be paid, per pay period, by the company. - deprecated: true - contribute_as_percentage: - type: boolean - default: false - description: Whether the company contribution amount should be treated as a percentage to be deducted from each payroll. - deprecated: true - effective_date: - type: string - format: date - default: '1970-01-01' - description: The date the employee benefit will start. If not provided, the benefit will be effective from 1970-01-01 (unix epoch). - expiration_date: - type: - - string - - 'null' - format: date - default: - description: The date the employee benefit will expire. A null value indicates the benefit will not expire. - required: - - company_benefit_uuid - x-examples: - Example: - company_benefit_uuid: f68abb42-431e-4392-bc3f-2795627e00f3 - active: true - employee_deduction: '100.00' - contribution: - type: amount - value: '100.00' - Employee-Benefit-Update-Request: - description: '' - type: object - properties: - version: - type: string - description: The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/versioning#object-layer) for information on how to use this field. - active: - type: boolean - description: Whether the employee benefit is active. - employee_deduction: - type: string - default: '0.00' - description: The amount to be deducted, per pay period, from the employee's pay. - deduct_as_percentage: - type: boolean - description: Whether the employee deduction amount should be treated as a percentage to be deducted from each payroll. - employee_deduction_annual_maximum: - type: - - string - - 'null' - description: The maximum employee deduction amount per year. A null value signifies no limit. - effective_date: - type: string - format: date - description: The date the employee benefit will start. - expiration_date: - type: - - string - - 'null' - format: date - description: The date the employee benefit will expire. A null value indicates the benefit will not expire. - contribution: - type: object - description: An object representing the type and value of the company contribution. - properties: - type: - type: string - enum: - - amount - - percentage - - tiered - description: |- - The company contribution scheme. + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: getBlockers + "/v1/companies/{company_uuid}/payrolls/skip": + post: + summary: Skip a payroll + operationId: post-companies-payroll-skip-company_uuid + security: + - CompanyAccessAuth: [] + description: |- + Submits a $0 payroll for employees associated with the pay schedule to skip payroll. This submission is asynchronous and a successful request responds with a 202 HTTP status. Upon success, the payroll is transitioned to the `processed` state. + + If the company is blocked from running payroll due to issues like incomplete setup, missing information or other compliance issues, the response will be 422 Unprocessable Entity with a categorization of the blockers as described in the error responses. + + scope: `payrolls:run` + tags: + - Payrolls + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '202': + description: Accepted + '422': + description: | + Unprocessable Entity - `amount`: The company contributes a fixed amount per payroll. If elective is true, the contribution is matching, dollar-for-dollar. + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Payroll-Blockers-Error" + '404': + description: | + Not Found - `percentage`: The company contributes a percentage of the payroll amount per payroll period. If elective is true, the contribution is matching, dollar-for-dollar. + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + properties: + payroll_type: + type: string + description: Payroll type + enum: + - Regular + - Hired employee + - Dismissed employee + - Transition from old pay schedule + start_date: + type: string + description: Pay period start date + end_date: + type: string + description: Pay period end date. If left empty, defaults to today's date. Required when skipping a termination payroll (`payroll_type` = `Dismissed employee`). + pay_schedule_uuid: + type: string + description: The UUID of the pay schedule. Required when skipping a termination payroll (`payroll_type` = `Dismissed employee`). + employee_uuids: + description: An array of employees. This field is only applicable to new hire payroll and termination payroll + type: + - array + - 'null' + items: + type: string + required: + - payroll_type + required: true + x-speakeasy-name-override: skip + "/v1/companies/{company_id}/payrolls/{payroll_id}/submit": + put: + summary: Submit payroll + operationId: put-v1-companies-company_id-payrolls-payroll_id-submit + security: + - CompanyAccessAuth: [] + description: |- + Submits an unprocessed payroll to be calculated and run. This submission is asynchronous and a successful request responds with a 202 HTTP status. Upon success, transitions the payroll to the `processed` state. - `tiered`: The size of the company contribution corresponds to the size of the employee deduction relative to a tiered matching scheme. - value: - description: |- - For the `amount` and `percentage` contribution types, the value of the corresponding amount or percentage. + You should poll to ensure that payroll is processed successfully, as async errors only occur after async processing is complete. - For the `tiered` contribution type, an array of tiers. - oneOf: - - type: string - description: For the `amount` and `percentage` contribution types, the value of the corresponding amount or percentage. - - type: array - description: For `tiered` contribution types, an array of tiers. + If the company is blocked from running payroll due to issues like incomplete setup, missing information or other compliance issues, the response will be 422 Unprocessable Entity with a categorization of the blockers as described in the error responses. + + scope: `payrolls:run` + tags: + - Payrolls + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: payroll_id + in: path + description: The UUID of the payroll + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '202': + description: Accepted + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + properties: + submission_blockers: + type: array + description: An array of submission_blockers, each with a selected unblock option. items: - type: object - description: A single tier of a tiered matching scheme. - properties: - rate: - type: string - description: The percentage of employee deduction within this tier the company contribution will match. - threshold: - type: string - description: |- - Specifies the upper limit (inclusive) percentage of the employee contribution that this tier applies to. + "$ref": "#/components/schemas/Payroll-Submission-Blocker-Request-Type" + x-speakeasy-name-override: submit + "/v1/payrolls/{payroll_uuid}/gross_up": + post: + summary: Calculate gross up for a payroll + operationId: post-payrolls-gross-up-payroll_uuid + security: + - CompanyAccessAuth: [] + description: |- + Calculates gross up earnings for an employee's payroll, given net earnings. This endpoint is only applicable to off-cycle unprocessed payrolls. - Use threshold to define each tier's end point, with tiers applied cumulatively from 0% upwards. + The gross up amount must then be mapped to the corresponding fixed compensation earning type to get the correct payroll amount. For example, for bonus off-cycles, the gross up amount should be set with the Bonus earning type in the payroll `fixed_compensations` field. - For example: + scope: `payrolls:run` + tags: + - Payrolls + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: payroll_uuid + in: path + description: The UUID of the payroll + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Payroll-Gross-Up-Response" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity - If the first tier has a threshold of "3", and rate of "100", the company will match 100% of employee contributions from 0% up to and including 3% of payroll. + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Payroll-Gross-Up-Request" + required: true + x-speakeasy-name-override: calculateGrossUp + "/v1/payrolls/{payroll_id}/employees/{employee_id}/calculate_accruing_time_off_hours": + post: + summary: Calculate accruing time off hours + operationId: post-v1-payrolls-payroll_id-calculate_accruing_time_off_hours + security: + - CompanyAccessAuth: [] + description: |- + Returns a list of accruing time off for each time off policy associated with the employee. - If the next tier has a threshold of "5" and a rate of "50", the company will match 50% of contributions from above 3% up to and including 5% of payroll. - elective: - type: boolean - description: 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`. - default: false - company_contribution_annual_maximum: - type: - - string - - 'null' - description: The maximum company contribution amount per year. A null value signifies no limit. - limit_option: - type: - - string - - 'null' - enum: - - Family - - Individual - - Joint Filing or Single - - Married and Filing Separately - description: |- - Some benefits require additional information to determine - their limit. + Factors affecting the accrued hours: - `Family` or `Individual`: Applicable to HSA benefit. + - 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) - `Joint Filing or Single` or `Married and Filing Separately`: Applicable to Dependent Care FSA benefit. - catch_up: - type: boolean - default: false - description: Whether the employee should use a benefit's "catch up" rate. Only Roth 401k and 401k benefits use this value for employees over 50. - coverage_amount: - type: - - string - - 'null' - description: 'The amount that the employee is insured for. Note: company contribution cannot be present if coverage amount is set.' - deduction_reduces_taxable_income: - type: - - string - - 'null' - default: unset - enum: - - unset - - reduces_taxable_income - - does_not_reduce_taxable_income - description: 'Whether the employee deduction reduces taxable income or not. Only valid for Group Term Life benefits. Note: when the value is not "unset", coverage amount and coverage salary multiplier are ignored.' - coverage_salary_multiplier: - type: string - default: '0.00' - description: '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.' - company_contribution: - type: string - default: '0.00' - description: The amount to be paid, per pay period, by the company. - deprecated: true - contribute_as_percentage: - type: boolean - default: false - description: Whether the company contribution amount should be treated as a percentage to be deducted from each payroll. - deprecated: true - required: - - version - x-examples: - Example: - version: '09j3d29jqdpj92109j9j2d90dq' - employee_deduction: '250.00' - Paid-Holiday: - type: object - description: A paid holiday derived from the company's holiday pay policy - x-examples: - success_status: - holiday_name: New Year's Day - holiday_key: new_years_day - start_date: '2023-01-02' - end_date: '2023-01-02' - properties: - holiday_key: - type: - - string - - 'null' - description: The holiday's identifier (null for custom holidays) - holiday_name: - type: string - description: The holiday's official name - start_date: - type: string - description: The holiday's start date (YYYY-MM-DD) - end_date: - type: string - description: The holiday's end date (YYYY-MM-DD) - Ach-Transaction-List: - type: array - items: - "$ref": "#/components/schemas/Ach-Transaction" - x-examples: - example: - - uuid: 123e4567-e89b-12d3-a456-426655440000 - company_uuid: 456e7890-e12b-34c5-d678-901234567890 - payment_event_type: Payroll - payment_event_uuid: 789e0123-e45f-67ab-c890-123456789012 - recipient_type: Employee - recipient_uuid: 012e3456-f78d-90ab-12cd-345678901234 - error_code: - transaction_type: Credit employee pay - payment_status: submitted - payment_direction: credit - payment_event_check_date: '2023-10-02' - payment_date: '2023-10-17' - amount: '123.00' - description: PAY 380654 - Wire-In-Request-List: - type: array - items: - "$ref": "#/components/schemas/Wire-In-Request" - x-examples: - example: - - uuid: c5fdae57-5483-4529-9aae-f0edceed92d4 - status: awaiting_funds - origination_bank: JP Morgan Chase - origination_bank_address: 1 Chase Plaza, New York, NY 10081 - recipient_name: Gusto, Inc - recipient_address: 525 20th Street, San Francisco, CA 94107 - recipient_account_number: '21911761' - recipient_routing_number: '123454321' - additional_notes: - bank_name: - date_sent: - unique_tracking_code: 1trvxwxp57zf - payment_type: Payroll - payment_uuid: 5faae454-e629-490b-a72a-c022c2c9e6bc - amount_sent: - requested_amount: '1014500.00' - wire_in_deadline: '2024-06-21T18:00:00Z' - - uuid: a47fc11d-8d92-4b3e-9f2a-3a23b9d8e7d1 - status: awaiting_funds - origination_bank: JP Morgan Chase - origination_bank_address: 1 Chase Plaza, New York, NY 10081 - recipient_name: Gusto, Inc - recipient_address: 525 20th Street, San Francisco, CA 94107 - recipient_account_number: '21911761' - recipient_routing_number: '123454321' - additional_notes: - bank_name: - date_sent: - unique_tracking_code: 6kfhwxq2crsm - payment_type: ContractorPaymentGroup - payment_uuid: 8b6c3d70-9b8e-4d4d-b6a1-a1f3a6d9b2c4 - amount_sent: - requested_amount: '15000.00' - wire_in_deadline: '2024-06-21T18:00:00Z' - Wire-In-Request-Update-Request-Body: - type: object - properties: - date_sent: - type: string - description: The date the wire was sent - example: '2024-06-10' - bank_name: - type: string - description: Name of the bank sending the wire - example: Chase - amount_sent: - type: string - description: Amount of money sent - example: '314500.00' - additional_notes: - type: string - description: Additional notes - example: Wire for 2024-06-15 payroll. - required: - - date_sent - - bank_name - - amount_sent - Employee-Payment-Details-List: - type: array - description: A list of employee payment details. - x-examples: - success_status: - - employee_uuid: e2c4c0ce-2986-48b9-86cf-ec27f6ed9a36 - first_name: Soren - last_name: Kierkegaard - payment_method: Direct Deposit - split_by: Percentage - splits: - - bank_account_uuid: 1531e824-8d9e-4bd8-9f90-0d04608125d7 - name: Primary Checking - hidden_account_number: XXXX1207 - encrypted_account_number: mbNLVOm7psP16ocqXso5ZtzOXBrA-5Q-.zarrdLBmyYDDK4kCkF2reKtzx8udK8iDabtW - routing_number: '055003201' - account_type: Checking - priority: 1 - split_amount: 100 - - employee_uuid: 6b7e4b51-2e2d-4b54-9f37-7b9d0e9fa5d2 - first_name: Autumn - last_name: Connelly - payment_method: Check - split_by: - splits: - items: - type: object - properties: - employee_uuid: - type: string - description: The UUID of the employee. - readOnly: true - first_name: + If none of the parameters is passed in, the accrued time off hour will be 0. + + scope: `payrolls:read` + tags: + - Time Off Policies + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: type: string - description: The legal first name of the employee. - readOnly: true - last_name: + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: payroll_id + in: path + description: The UUID of the payroll + required: true + schema: type: string - description: The last name of the employee. - readOnly: true - payment_method: + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: type: string - enum: - - Direct Deposit - - Check - description: The type of payment method. - readOnly: true - split_by: - anyOf: - - type: string - enum: - - Amount - - Percentage - - type: 'null' - description: How the payment is split. This field is applicable when `payment_method` is "Direct Deposit". If `split_by` is Percentage, then the split amounts must add up to exactly 100. If `split_by` is Amount, the last split amount must be `null` to capture the remainder. - readOnly: true - splits: - type: - - array - - 'null' - description: An array of payment splits. This field is applicable when `payment_method` is "Direct Deposit". - items: + x-gusto-rswag: true + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Payroll-Calculate-Accruing-Time-Off-Hours-Response" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Payroll-Calculate-Accruing-Time-Off-Hours-Request" + x-speakeasy-group: timeOffPolicies + x-speakeasy-name-override: calculateAccruingTimeOffHours + "/v1/companies/{company_id}/people_batches": + post: + summary: Create a people batch + operationId: post-v1-companies-company_id-people_batches + security: + - CompanyAccessAuth: [] + description: |- + Creates a batch for bulk employee creation. + + The batch is processed asynchronously. Use the returned batch UUID to poll for status and results. + + scope: `people_batches:write` + tags: + - People Batches + x-gusto-integration-type: + - embedded + parameters: + - name: company_id + in: path + description: The UUID of the company + required: true + schema: + type: string + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '201': + description: created + content: + application/json: + schema: + "$ref": "#/components/schemas/People-Batch" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '409': + description: conflict - idempotency key already used + content: + application/json: + schema: + "$ref": "#/components/schemas/People-Batch-Conflict-Error" + '422': + description: unprocessable entity - validation errors + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: type: object + required: + - idempotency_key + - batch_action + - batch properties: - bank_account_uuid: - type: string - description: The UUID of the bank account. - name: - type: string - description: The name of the bank account. - hidden_account_number: - type: string - description: An obfuscated version of the account number which can be used for display purposes. - encrypted_account_number: - type: - - string - - 'null' - description: Ciphertext containing the full bank account number, which must be decrypted using a key provided by Gusto. Only visible with the `employee_payment_methods:read:account_number` scope. - routing_number: + idempotency_key: type: string - description: The routing number of the bank account. - account_type: + format: uuid + description: A unique identifier to ensure idempotency of the batch request + example: 550e8400-e29b-41d4-a716-446655440000 + batch_action: type: string - description: The bank account type (e.g., "Checking" or "Savings"). - priority: - type: integer - description: The order of priority for each payment split, with priority 1 being the first bank account paid. Priority must be unique and sequential. - split_amount: - type: - - number - - 'null' - description: If `split_by` is 'Amount', this is in cents (e.g., 500 for $5.00) and exactly one account must have a `split_amount` of `null` to capture the remainder. If `split_by` is 'Percentage', this is the percentage value (e.g., 60 for 60%). - readOnly: true - Plaid-Processor-Token-Request: - type: object - description: Request body for creating a verified company bank account from a Plaid processor token. - required: - - owner_type - - owner_id - - processor_token - properties: - owner_type: - description: The owner type of the bank account - type: string - enum: - - Company - owner_id: - description: The owner UUID of the bank account - type: string - processor_token: - description: The Plaid processor token - type: string - x-examples: - example: - owner_type: Company - owner_id: ef279fbd-0fc6-4cf1-a977-6939d621c429 - processor_token: processor-sandbox-0asd1-a92nc - Payroll-Reversal-List: - type: array - items: - "$ref": "#/components/schemas/Payroll-Reversal" - x-examples: - Example: - - reversed_payroll_uuid: '09505984-8d8c-41a3-adbe-5740322ae8e9' - reversal_payroll_uuid: '0424688e-0a2e-4cd0-ac86-42283e788fb3' - reason: Customer Request - approved_at: - category: convert_check_ee_requested - reversed_employee_uuids: - - 5f036964-185e-4c85-bbf2-3873e1203b30 - Time-Off-Activity-List: - type: array - description: A list of time off activities for an employee - items: - "$ref": "#/components/schemas/Time-Off-Activity" - x-examples: - example: - - policy_uuid: a7838f74-4c29-4b70-9bfb-02a4e3e60709 - time_off_type: vacation - policy_name: Paid Time Off - event_type: TimeOffEvent::AddToPolicy - event_description: 'Added to policy: Vacation Per Hour Worked' - effective_time: '2022-09-27T13:43:03.000-07:00' - balance: '0.0' - balance_change: '0.0' - - policy_uuid: a7838f74-4c29-4b70-9bfb-02a4e3e60709 - time_off_type: vacation - policy_name: Paid Time Off - event_type: TimeOffEvent::Accrual - event_description: Accrual - effective_time: '2022-09-27T14:43:03.000-07:00' - balance: '2.0' - balance_change: '2.0' - External-Payroll-Create-Request: - type: object - description: The request body for creating an external payroll. - x-tags: - - External Payrolls - required: - - check_date - - payment_period_start_date - - payment_period_end_date - properties: - check_date: - type: string - format: date - description: The check date of the external payroll. - example: '2022-06-03' - payment_period_start_date: - type: string - format: date - description: The start date of the external payroll payment period. - example: '2022-05-15' - payment_period_end_date: - type: string - format: date - description: The end date of the external payroll payment period. - example: '2022-05-30' - External-Payroll-Update-Request: - type: object - description: The request body for updating an external payroll with employee payroll items. - x-tags: - - External Payrolls - required: - - external_payroll_items - properties: - replace_fields: - type: boolean - description: Patch update external payroll items when set to true, otherwise it will overwrite the previous changes. - external_payroll_items: - type: array - description: Payroll items for each employee in the external payroll. - items: - type: object - required: - - employee_uuid - properties: - employee_uuid: - type: string - format: uuid - description: The UUID of the employee. - example: 44f7cba9-7a3d-4f08-b7bd-6fcf5211f8ca - earnings: - type: array - description: Earnings for the employee. - items: - type: object - properties: - earning_type: - type: string - enum: - - CompanyPayType - - CompanyEarningType - description: The earning type class name. - example: CompanyPayType - earning_id: - type: integer - description: The ID of the earning type. - example: 1 - amount: - type: string - format: float - description: The earning amount in dollars. - example: '10000.00' - hours: - type: string - format: float - description: The number of hours worked. - example: '80.0' - benefits: - type: array - description: Benefits for the employee. - items: - type: object - properties: - benefit_id: - type: integer - description: The ID of the company benefit. - example: 22 - company_contribution_amount: - type: string - format: float - description: The company contribution amount in dollars. - example: '100.00' - employee_deduction_amount: - type: string - format: float - description: The employee deduction amount in dollars. - example: '50.00' - taxes: - type: array - description: Taxes for the employee. - items: - type: object - properties: - tax_id: - type: integer - description: The ID of the tax. - example: 1 - amount: - type: string - format: float - description: The tax amount in dollars. - example: '400.00' - Tax-Liability-Selections-Request: - type: object - description: The request body for updating tax liability selections. - x-tags: - - External Payrolls - required: - - liability_selections - properties: - liability_selections: - type: array - description: Tax liability selections to record for the company's external payrolls. - items: - type: object - required: - - tax_id - - last_unpaid_external_payroll_uuid - - unpaid_liability_amount - properties: - tax_id: - type: integer - description: The ID of the tax. - example: 1 - last_unpaid_external_payroll_uuid: - type: - - string - - 'null' - description: The UUID of the last external payroll with an unpaid liability for this tax. Set to `null` to indicate no liability. - example: 1bf1efe1-72d4-4e6e-a181-611f3ea66435 - unpaid_liability_amount: - type: string - format: float - description: The total cumulative unpaid liability amount for this tax across all external payrolls up to and including the one specified by `last_unpaid_external_payroll_uuid`. - example: '47.5' - Contractor-Payments-Preview-Body: - description: Request body for previewing contractor payments. The expected debit date for the payments is calculated from the provided check date and the company's ACH speed. - type: object - required: - - contractor_payments - properties: - contractor_payments: - type: array - description: A list of contractor payments to preview. - items: - type: object - properties: - contractor_uuid: - type: string - description: The contractor receiving the payment. - date: - type: string - description: Date of the contractor payment (check date). - payment_method: - type: string - enum: - - Direct Deposit - - Check - - Historical Payment - description: The payment method. - wage: - type: integer - description: Fixed wage amount for the payment. - hours: - type: integer - description: Number of hours worked for the payment. - hourly_rate: - type: integer - description: Hourly rate for the payment. - bonus: - type: integer - description: Bonus amount for the payment. - reimbursement: - type: integer - description: Reimbursement amount for the payment. - x-examples: - Example: - contractor_payments: - - bonus: 0 - date: '2022-09-02' - contractor_uuid: 5376e95b-cca0-482b-bb81-aba5e360eb04 - hours: 0 - payment_method: Check - reimbursement: 0 - wage: 123 - hourly_rate: 0 - - bonus: 0 - date: '2022-09-02' - contractor_uuid: 0c984dce-de9a-47db-8bfb-5f0c823afe6f - hours: 0 - payment_method: Check - reimbursement: 0 - wage: 456 - hourly_rate: 0 - x-tags: - - Contractor Payments - Contractor-Payments-Preview: - type: object - description: The expected debit date computed for a set of previewed contractor payments. - properties: - expected_debit_date: - type: string - format: date - description: The calculated debit date. If the payment method is Direct Deposit, the debit date will account for the company's ACH speed. If the payment method is Check, the debit date will be the same as the check date. - x-examples: - example: - expected_debit_date: '2022-08-16' - x-tags: - - Contractor Payments - Ytd-Benefit-Amounts-From-Different-Company-Body: - type: object - description: Year-to-date benefit amounts contributed at a different company for the specified employee. - properties: - benefit_type: - type: integer - description: The benefit type supported by Gusto. - tax_year: - type: number - minimum: 2000 - maximum: 2999 - description: The tax year for which this amount applies. - ytd_employee_deduction_amount: - type: string - default: '0.00' - description: The year-to-date employee deduction made outside the current company. - ytd_company_contribution_amount: - type: string - default: '0.00' - description: The year-to-date company contribution made outside the current company. - required: - - benefit_type - - tax_year - - ytd_employee_deduction_amount - - ytd_company_contribution_amount - x-tags: - - Employee Benefits - Employee-Bank-Account-Request: - type: object - description: Request body for creating or updating an employee bank account. Send these fields as top-level JSON keys (the API wraps them server-side). - properties: - routing_number: - type: string - description: The bank routing number (nine digits). - example: 266905059 - account_number: - type: string - description: The bank account number. - example: 5809431207 - account_type: - type: string - description: The bank account type. - example: Checking - enum: - - Checking - - Savings - name: - type: string - description: A name for the bank account (e.g. "Primary Checking"). - example: BoA Checking Account - required: - - routing_number - - account_number - - account_type - - name - Printable-Payroll-Checks-Body: - description: Request body for generating printable payroll checks. - type: object - required: - - printing_format - properties: - printing_format: - type: string - enum: - - top - - bottom - description: The type of check stock being printed. Check the "Types of check stock" section in this [link](https://support.gusto.com/article/999877761000000/Pay-your-team-by-check) for more info on check types - starting_check_number: - type: integer - description: The starting check number we will start generating checks from. Use to override the sequence that will be used to generate check numbers. - x-tags: - - Payrolls - Create-Report-Body: - description: Request body for creating a custom report. - type: object - required: - - columns - - groupings - - file_type - properties: - columns: - type: array - description: Columns to include in the report - items: + enum: + - create + description: The action to perform on the batch + example: create + batch: + type: array + description: Array of people to create + items: + type: object + required: + - entity_type + - person + properties: + entity_type: + type: string + enum: + - employee + description: The type of entity to create + example: employee + person: + type: object + required: + - external_id + - first_name + - last_name + properties: + external_id: + type: string + description: External identifier for the person + first_name: + type: string + description: Legal first name + last_name: + type: string + description: Legal last name + middle_initial: + type: + - string + - 'null' + maxLength: 1 + minLength: 1 + description: Middle initial + preferred_first_name: + type: + - string + - 'null' + description: Preferred first name + email: + type: + - string + - 'null' + format: email + description: Personal email address + work_email: + type: + - string + - 'null' + format: email + description: Work email address + ssn: + type: + - string + - 'null' + description: 'Social Security Number (format: xxx-xx-xxxx)' + date_of_birth: + type: + - string + - 'null' + format: date + description: Date of birth (YYYY-MM-DD) + self_onboarding: + type: + - boolean + - 'null' + description: Whether the employee will complete their own onboarding + home_address: + type: object + description: Home address for the employee + required: + - street_1 + - city + - state + - zip + properties: + street_1: + type: string + description: Street address line 1 + street_2: + type: string + description: Street address line 2 + city: + type: string + description: City + state: + type: string + description: State abbreviation + zip: + type: string + description: ZIP code + country: + type: string + description: Country (defaults to USA) + work_from_home: + type: boolean + description: If true, a company work address will be created based on this home address and the `work_address` property is not allowed. + work_address: + type: object + description: Specify the company work location for the employee + required: + - location_uuid + properties: + location_uuid: + type: string + format: uuid + description: UUID of an existing company work location + job: + type: object + description: Job details for the employee (required if compensation is provided) + required: + - title + - hire_date + properties: + title: + type: string + description: Job title + hire_date: + type: string + format: date + description: The date when the employee was hired or rehired for the job. + two_percent_shareholder: + type: boolean + description: Whether the employee owns at least 2% of the company. Can only be `true` for S-Corp companies. + state_wc_covered: + type: + - boolean + - 'null' + description: Whether this job is eligible for workers' compensation coverage in the state of Washington (WA). + state_wc_class_code: + type: + - string + - 'null' + description: The risk class code for workers' compensation in Washington state. Please visit [Washington state's Risk Class page](https://www.lni.wa.gov/insurance/rates-risk-classes/risk-classes-for-workers-compensation/risk-class-lookup#/) to learn more. + department: + type: object + description: Department details for the employee + required: + - department_uuid + properties: + department_uuid: + type: string + format: uuid + description: UUID of an existing company department + compensation: + type: object + description: Compensation details for the employee (requires job to be provided) + required: + - rate + - payment_unit + - flsa_status + properties: + rate: + type: string + description: The dollar amount paid per payment unit. + payment_unit: + type: string + enum: + - Hour + - Week + - Month + - Year + - Paycheck + description: The unit accompanying the compensation rate. If the employee is an owner, rate should be `Paycheck`. + flsa_status: + type: string + enum: + - Exempt + - Salaried Nonexempt + - Nonexempt + - Owner + - Commission Only Exempt + - Commission Only Nonexempt + description: 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. If selecting `Owner`, `payment_unit` must be `"Paycheck"`. + bank_accounts: + type: array + description: |- + Creates employee bank account(s) and payment method(s) for direct deposit. Payments can be split across accounts by Percentage or by Amount. If splitting payments by `Percentage`, all splits must have a `split_amount` and the percentages must add up to `100`. + If splitting payments by `Amount`, the priority is set based on the order of the bank accounts in the array and the last bank account is the remainder account (should have `split_amount` set to `null`). + items: + type: object + required: + - type + - account_type + - routing_number + - account_number + - split_by + properties: + name: + type: + - string + - 'null' + description: Account nickname + account_type: + type: string + enum: + - Checking + - Savings + description: Type of bank account + routing_number: + type: string + description: Bank routing number + account_number: + type: string + description: Bank account number + type: + type: string + enum: + - Direct Deposit + description: Payment type (must be Direct Deposit) + split_by: + type: string + enum: + - Amount + - Percentage + description: How to split deposits, must be the same for all bank accounts. If split_by is `Percentage`, then the split_amounts must add up to exactly 100. + split_amount: + type: + - string + - 'null' + description: Split amount in percentage or CENTS (`null` for remainder account) + required: true + "/v1/people_batches/{people_batch_uuid}": + get: + summary: Get a people batch + operationId: get-v1-people_batches-people_batch_uuid + security: + - CompanyAccessAuth: [] + description: |- + Returns the status and results of a people batch. + + Poll this endpoint to check the batch processing status and retrieve results. + + scope: `people_batches:read` + tags: + - People Batches + x-gusto-integration-type: + - embedded + parameters: + - name: people_batch_uuid + in: path + description: The UUID of the people batch + required: true + schema: type: string - enum: - - bank_account_account_number - - bank_account_routing_number - - bank_account_type - - bank_account - - bonus - - cash_tips - - check_amount - - check_date - - commission - - date_of_birth - - double_overtime_earnings - - double_overtime_hours - - double_overtime_rate - - employee_additional_taxes - - employee_benefit_contributions - - employee_compensation_time_period - - employee_compensation - - employee_deductions - - employee_department - - employee_email - - employee_donations - - employee_federal_income_tax - - employee_first_name - - employee_last_name - - employee_middle_initial - - employee_medicare_additional_tax - - employee_medicare_tax - - employee_phone_number - - employee_social_security_tax - - employee_taxes - - employee_work_email - - employer_additional_taxes - - employer_benefit_contributions - - employer_cost - - employer_futa_tax - - employer_medicare_tax - - employer_social_security_tax - - employer_suta_tax - - employer_taxes - - employment_type - - employment - - end_date - - garnishments - - gross_earnings - - holiday_earnings - - holiday_hours - - home_address_city - - home_address_state - - home_address_street - - home_address_zip - - home_address - - job_title - - net_pay - - one_time_reimbursements - - overtime_earnings - - overtime_hours - - overtime_rate - - paid_time_off_earnings - - paid_time_off_hours - - paid_time_off_rate - - pay_period_end - - pay_period_start - - paycheck_tips - - payment_method - - payroll_type - - preferred_first_name - - recurring_reimbursements - - regular_earnings - - regular_hours - - regular_rate - - reimbursements - - risk_class_code - - sick_rate - - sick_time_off_earnings - - sick_time_off_hours - - start_date - - total_employer_benefit_contributions - - total_time_off_earnings - - total_time_off_hours - - work_address_city - - work_address_street - - work_address_zip - groupings: - type: array - description: How to group the report - items: + - name: X-Gusto-API-Version + in: header + schema: type: string enum: - - payroll - - employee - - work_address - - work_address_state - custom_name: - type: string - description: The title of the report - file_type: - type: string - description: The type of file to generate - enum: - - csv - - json - - pdf - with_totals: - type: boolean - description: Whether to include subtotals and grand totals in the report - default: false - start_date: - type: string - format: date - description: Start date of data to filter by - example: '2024-01-01' - end_date: - type: string - format: date - description: End date of data to filter by - example: '2024-04-01' - dismissed_start_date: - type: string - format: date - description: Dismissed start date of employees to filter by - example: '2024-01-01' - dismissed_end_date: - type: string - format: date - description: Dismissed end date of employees to filter by - example: '2024-04-01' - payment_method: - type: string - description: Payment method to filter by - enum: - - check - - direct_deposit - employment_type: - type: string - description: Employee employment type to filter by - enum: - - exempt - - salaried_nonexempt - - nonexempt - - commission_only_exempt - - commission_only_nonexempt - employment_status: - type: string - description: Employee employment status to filter by - enum: - - active_full_time - - active_part_time - - active_part_time_eligible - - active_variable - - active_seasonal - - active - - dismissed - employee_uuids: - type: - - array - - 'null' - description: Employees to filter by - items: - type: string - department_uuids: - type: array - description: Departments to filter by - items: - type: string - work_address_uuids: - type: array - description: Work addresses to filter by - items: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/People-Batch-Results" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + "/v1/plaid/processor_token": + post: + summary: Create a bank account from a plaid processor token + operationId: post-v1-plaid-processor_token + security: + - CompanyAccessAuth: [] + description: "This endpoint creates a new **verified** bank account by using a plaid processor token to retrieve its information.\n\n> \U0001F4D8\n> To create a token please use the [plaid api](https://plaid.com/docs/api/processors/#processortokencreate) and select \"gusto\" as processor.\n\n> \U0001F6A7 Warning - Company Bank Accounts\n>\n> If a default company bank account exists, it will be disabled and the new bank account will replace it as the company's default funding method.\n\nscope: `plaid_processor:write`" + tags: + - Bank Accounts + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: type: string - x-tags: - - Reports - General-Ledger-Report-Body: - description: Request body for generating a general ledger report. The report can be aggregated by different dimensions such as job or department. - type: object - required: - - aggregation - properties: - aggregation: - type: string - enum: - - default - - job - - department - - integration - description: The breakdown of the report. Use 'default' for no split. - integration_type: - type: - - string - - 'null' - enum: - - xero - - qbo - - - description: The kind of integration set up for the company. Required when `aggregation` is 'integration'. Must be null if `aggregation` is not 'integration'. - x-tags: - - Reports - General-Ledger-Report: - type: object - description: A request for a general ledger report. The report is generated asynchronously and the URL is available via the report GET endpoint using the returned `request_uuid`. - properties: - payroll_uuid: - type: string - format: uuid - description: The UUID of the payroll record for which the report was generated. - aggregation: - type: string - enum: - - default - - job - - department - - integration - description: The breakdown level used for the report. - integration_type: - type: - - string - - 'null' - description: The `integration_type` used for the report when `aggregation` is 'integration' (e.g., `xero`, `qbo`). Otherwise, this will be null or an empty string. - request_uuid: - type: string - format: uuid - description: UUID to use for polling the report status. - x-examples: - example: - payroll_uuid: a83d0bd8-7d20-43b9-834c-6d514ef6cb20 - aggregation: integration - integration_type: xero - request_uuid: p83d0ca8-7d41-42a9-834y-7d218ef6cb20 - Time-Sheet-Create-Body: - type: object - description: Request body for creating a time sheet. - required: - - entity_uuid - - entity_type - - time_zone - - shift_started_at - properties: - entity_uuid: - type: string - description: Unique identifier of the entity associated with the time sheet. - entity_type: - type: string - description: Type of entity associated with the time sheet. - job_uuid: - type: string - description: Unique identifier of the job for which time is tracked. - time_zone: - type: string - description: Time zone of where the time is tracked. - shift_started_at: - type: string - format: date-time - description: ISO 8601 timestamp of when the shift was started. - shift_ended_at: - type: string - format: date-time - description: ISO 8601 timestamp of when the shift was ended. If the shift is still ongoing you can omit this field. - metadata: - type: object - additionalProperties: + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '201': + description: A JSON object containing bank information + content: + application/json: + schema: + "$ref": "#/components/schemas/Company-Bank-Account" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Plaid-Processor-Token-Request" + required: true + x-speakeasy-group: bankAccounts + x-speakeasy-name-override: createFromPlaidToken + "/v1/companies/{company_uuid}/recovery_cases": + get: + summary: Get all recovery cases for a company + operationId: get-recovery-cases + security: + - CompanyAccessAuth: [] + description: |- + Fetch all recovery cases for a company. + + scope: `recovery_cases:read` + tags: + - Recovery Cases + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: type: string - maxLength: 500 - propertyNames: + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true + schema: type: string - maxLength: 40 - maxProperties: 50 - description: Metadata associated with the time sheet. Key-value pairs of arbitrary data. Both keys and values must be strings. - entries: - type: array - description: Entries associated with the time sheet. - items: - type: object - properties: - hours_worked: - type: number - format: float - maxDecimalPlaces: 3 - minimum: 0.001 - description: Hours worked for this pay classification. Should be passed as number with up to 3 decimal places. - pay_classification: - type: string - description: Pay classification for the entry. - enum: - - Regular - - Overtime - - Double overtime - x-examples: - Example: - entity_uuid: 123e4567-e89b-12d3-a456-426614174000 - entity_type: Employee - job_uuid: 123e4567-e89b-12d3-a456-426614174000 - time_zone: America/New_York - shift_started_at: '2024-06-10T09:00:00Z' - shift_ended_at: '2024-06-10T17:00:00Z' - metadata: - custom_field: custom value - entries: - - pay_classification: Regular - hours_worked: 1.5 - x-tags: - - Time Tracking - Time-Sheet-Update-Body: - type: object - description: Request body for updating a time sheet. - allOf: - - "$ref": "#/components/schemas/Versionable-Required" - - type: object - properties: - entity_uuid: - type: string - description: Unique identifier of the entity associated with the time sheet. - example: 123e4567-e89b-12d3-a456-426614174000 - entity_type: - type: string - description: Type of entity associated with the time sheet. - example: Employee - job_uuid: - type: string - description: Unique identifier of the job for which time was tracked. Currently is only supported for employees. - example: 123e4567-e89b-12d3-a456-426614174000 - time_zone: - type: string - description: Time zone of where the time was tracked. - example: America/New_York - shift_started_at: - type: string - format: date-time - description: The start time of the shift. Timestamp should be in ISO8601 - example: '2024-06-10T09:00:00Z' - shift_ended_at: - type: string - format: date-time - description: The end time of the shift. If the shift is still ongoing this will be null. - example: '2024-06-10T17:00:00Z' - metadata: - type: object - additionalProperties: - type: string - maxLength: 500 - propertyNames: - type: string - maxLength: 40 - maxProperties: 50 - description: Metadata associated with the time sheet. Key-value pairs of arbitrary data. Both keys and values must be strings. - entries: - type: array - description: Entries associated with the time sheet. - items: - type: object - properties: - uuid: - type: string - description: Unique identifier of the entry. - hours_worked: - type: number - format: float - maxDecimalPlaces: 3 - minimum: 0.001 - description: Hours worked for this pay classification. Should be passed as number with up to 3 decimal places. - pay_classification: - type: string - description: Pay classification for the entry. - enum: - - Regular - - Overtime - - Double overtime - x-examples: - Example: - version: 72deb67e16f7b92713c00d3582fa6c68 - entity_uuid: 123e4567-e89b-12d3-a456-426614174000 - entity_type: Employee - job_uuid: 123e4567-e89b-12d3-a456-426614174000 - time_zone: America/New_York - shift_started_at: '2024-06-10T09:00:00Z' - shift_ended_at: '2024-06-10T17:00:00Z' - metadata: - custom_field: custom value - entries: - - uuid: 123e4567-e89b-12d3-a456-426614174000 - hours_worked: 1.5 - x-tags: - - Time Tracking - Partner-Managed-Company-Create-Request: - type: object - required: - - user - - company - properties: - user: - type: object - description: Information for the user who will be the primary payroll administrator for the new company. - required: - - first_name - - last_name - - email - properties: - first_name: - type: string - description: The first name of the user who will be the primary payroll admin. - last_name: - type: string - description: The last name of the user who will be the primary payroll admin. - email: - type: string - description: The email of the user who will be the primary payroll admin. - phone: - type: string - description: The phone number of the user who will be the primary payroll admin. - company: - type: object - required: - - name - properties: - name: - type: string - description: The legal name of the company. - trade_name: - type: string - description: The name of the company. - ein: - type: string - description: The employer identification number (EIN) of the company. - contractor_only: - type: boolean - description: Whether the company only supports contractors. Should be set to true if the company has no W-2 employees. If not passed, will default to false (i.e. the company will support both contractors and employees). - x-examples: - Example: - user: - first_name: Frank - last_name: Ocean - email: frank@example.com - phone: '2345558899' - company: - name: Frank's Ocean, LLC - trade_name: Frank's Ocean - ein: '123456789' - contractor_only: false - Partner-Managed-Company: - description: Object returned when creating a partner managed company - type: object - properties: - access_token: - type: string - description: Access token that can be used for OAuth access to the account. Access tokens expire 2 hours after they are issued. - readOnly: true - refresh_token: - type: string - description: Refresh token that can be exchanged for a new access token. - readOnly: true - company_uuid: - type: string - description: Gusto's UUID for the company - readOnly: true - expires_in: - type: integer - description: Time of access_token expiration in seconds - readOnly: true - x-examples: - Example: - access_token: de6780bc506a0446309bd9362820ba8aed28aa506c71eedbe1c5c4f9dd350e54 - refresh_token: 8257e65c97202ed1726cf9571600918f3bffb2544b26e00a61df9897668c33a1 - company_uuid: d525dd21-ba6e-482c-be15-c2c7237f1364 - expires_in: 7200 - Partner-Managed-Company-Migration-Readiness-Response: - description: '' - allOf: - - type: object - properties: - ready_to_migrate: - type: boolean - description: Indicates if the company is ready to be migrated. - company_uuid: - type: string - description: The company UUID - - "$ref": "#/components/schemas/Migration-Blocker" - - "$ref": "#/components/schemas/Migration-Warning" - x-examples: - Example: - ready_to_migrate: false - company_uuid: 39abf9b9-650b-4e67-89a0-389dc6ee8a71 - errors: - - error_key: base - category: invalid_operation - message: The operation is already performed for this company. - metadata: - key: migrated_company - warnings: [] - Partner-Managed-Company-Accept-Terms-Of-Service-Request: - type: object - description: '' - required: - - email - - ip_address - - external_user_id - properties: - email: - type: string - description: The user's email address on Gusto. You can retrieve the user's email via company's `/admins`, `/employees`, `/signatories`, and `/contractors` endpoints. - ip_address: - type: string - description: The IP address of the user who viewed and accepted the Terms of Service. - external_user_id: - type: string - description: The user ID on your platform. - x-examples: - Example: - ip_address: 192.168.1.2 - external_user_id: '2005648946132' - email: jsmith99@gmail.com - Partner-Managed-Company-Retrieve-Terms-Of-Service-Request: - type: object - required: - - email - properties: - email: - type: string - description: The user's email address on Gusto. You can retrieve the user's email via company's `/admins`, `/employees`, `/signatories`, and `/contractors` endpoints. - x-examples: - Example: - email: jsmith99@gmail.com - Partner-Managed-Company-Terms-Of-Service-Response: - description: '' - type: object - properties: - latest_terms_accepted: - type: boolean - description: Whether the latest terms have been accepted by the user. - x-examples: - Example: - latest_terms_accepted: true - Provision-Create-Request-Body: - type: object - required: - - user - - company - properties: - user: - type: object - description: Information for the user who will be the primary payroll administrator for the new company. - required: - - first_name - - last_name - - email - properties: - first_name: - type: string - description: The first name of the user who will be the primary payroll admin. - last_name: - type: string - description: The last name of the user who will be the primary payroll admin. - email: - type: string - description: The email of the user who will be the primary payroll admin. - phone: - type: string - description: The phone number of the user who will be the primary payroll admin. - company: - type: object - required: - - name - properties: - name: - type: string - description: The legal name of the company. - trade_name: - type: string - description: The name of the company. - ein: - type: string - description: The employer identification number (EIN) of the company. - states: - type: array - description: 'The states in which the company operates. States should be included by their two letter code, i.e. NY for New York. ' - items: - type: string - number_employees: - type: number - description: The number of employees in the company. - addresses: - type: array - uniqueItems: false - description: The locations for the company. This includes mailing, work, and filing addresses. - items: - type: object - properties: - street_1: - type: string - street_2: - type: - - string - - 'null' - city: - type: string - zip: - type: string - state: - type: string - phone: - type: string - is_primary: - type: string - description: Whether or not this is a primary address for the company. If set to true, the address will be used as the mailing and filing address for the company and will be added as a work location. If set to false or not included, the address will only be added as a work location for the company. If multiple addresses are included, only one should be marked as primary. - x-examples: - Example: - user: - first_name: Frank - last_name: Ocean - email: frank@example.com - phone: '2345558899' - company: - name: Frank's Ocean, LLC - trade_name: Frank's Ocean - tier: complete - ein: '123456789' - states: - - CO - - CA - number_employees: 8 - addresses: - - street_1: 1201 16th Street Mall - street_2: Suite 350 - city: Denver - zip: '80202' - state: CO - phone: '2345678900' - is_primary: 'true' - - street_1: 525 20th Street - city: San Francisco - zip: '94107' - state: CA - phone: '2345678901' - Provision-Created: - type: object - properties: - account_claim_url: - type: string - description: A URL where the user should be redirected to complete their account setup inside of Gusto. - readOnly: true - x-examples: - Example: - account_claim_url: https://app.gusto.com/claim_account/3456789 - Employee-Home-Address-History-Entry: - description: | - A single entry in an employee's home-address history. Returned in the - `all_home_addresses` array; includes the `effective_date` the address - became active in addition to the shared `Employee-Home-Address` fields. - allOf: - - "$ref": "#/components/schemas/Employee-Home-Address" - - type: object - properties: - effective_date: - type: string - format: date - description: The date the address became effective. - example: - street_1: 412 Kiera Stravenue - street_2: Suite 391 - city: San Francisco - state: CA - zip: '94107' - country: USA - active: true - uud: sample-uuid-123231 - effective_date: '2024-01-01' - securitySchemes: - CompanyAccessAuth: - type: http - scheme: bearer - description: Company-level authentication - SystemAccessAuth: - type: http - scheme: bearer - description: System-level authentication - responses: - Unprocessable-Entity-Error-Object: - description: "Unprocessable Entity \n \nThis may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details.\n" - content: - application/json: + - name: page + in: query + required: false + description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + schema: + type: integer + - name: per + in: query + required: false + description: Number of objects per page. For majority of endpoints will default to 25 + schema: + type: integer + x-gusto-rswag: true + responses: + '200': + description: Successful + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Recovery-Case" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: recoveryCases + x-speakeasy-name-override: get + "/v1/recovery_cases/{recovery_case_uuid}/redebit": + put: + summary: Initiate a redebit for a recovery case + operationId: redebit-recovery-case + security: + - CompanyAccessAuth: [] + description: |- + After resolving the underlying bank error, initiate a redebit for an open recovery case. This submission is asynchronous and a successful request responds with a 202 HTTP status. + + It may take up to four business days for the ACH debit to process; in the meantime, the status of the recovery case will be in the `initiated_redebit` state. When funds are successfully redebited, the recovery case is transitioned to the `recovered` state. + + If the company has exceeded maximum redebit attempts, or if the recovery case is not in a redebitable state, the response will be 422 Unprocessable Entity. + + scope: `recovery_cases:write` + tags: + - Recovery Cases + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: recovery_case_uuid + in: path + required: true + description: The UUID of the recovery case + schema: + type: string + x-gusto-rswag: true + responses: + '202': + description: Accepted + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-speakeasy-group: recoveryCases + x-speakeasy-name-override: redebit + "/v1/employees/{employee_id}/recurring_reimbursements": + get: + summary: Get recurring reimbursements for an employee + operationId: get-v1-employees-employee_id-recurring_reimbursements + security: + - CompanyAccessAuth: [] + description: |- + Get all active recurring reimbursements for an employee. + + scope: `reimbursements:read` + tags: + - Reimbursements + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - examples: - Basic: - value: - errors: - - error_key: base - category: payroll_blocker - message: Company must complete all onboarding requirements in order to run payroll. - metadata: - key: needs_onboarding - Resource: - value: - errors: - - error_key: first_name - category: invalid_attribute_value - message: First name is required - - error_key: date_of_birth - category: invalid_attribute_value - message: Date of birth is not a valid date - Nested: - value: - errors: - - error_key: contractor_payments - category: nested_errors - metadata: - contractor_uuid: 72ae4617-daa9-4ed7-85e0-18ed5d0ee835 - errors: - - error_key: hours - category: invalid_attribute_value - message: Ella Fitzgerald is paid fixed wage and hours cannot be set on a contractor payment - - error_key: contractor_payments - category: nested_errors - metadata: - contractor_uuid: 2d7bf62c-babf-4a12-8292-340e2d9cab28 - errors: - - error_key: wage - category: invalid_attribute_value - message: Isaiah Berlin is paid hourly and wage cannot be set on a contractor payment - Not-Found-Error-Object: - description: "Not Found \n \nThe requested resource does not exist. Make sure the provided UUID is valid.\n" - Employment-Not-Found-Error-Object: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true + schema: + type: string + - name: page + in: query + required: false + description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + schema: + type: integer + - name: per + in: query + required: false + description: Number of objects per page. For majority of endpoints will default to 25 + schema: + type: integer + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Recurring-Reimbursement-List" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + post: + summary: Create a recurring reimbursement + operationId: post-v1-employees-employee_id-recurring_reimbursements + security: + - CompanyAccessAuth: [] description: |- - Not Found + Create a recurring reimbursement for an employee. - * The requested resource does not exist. Make sure the provided UUID is valid. - * The employee's employment is not in the right state. - content: - application/json: + scope: `reimbursements:write` + tags: + - Reimbursements + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header schema: - "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" - examples: - Example: - value: - errors: - - error_key: employment - category: incorrect_state - message: The employee's employment is not in the right state. - Authentication-Object: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true schema: - "$ref": "#/components/schemas/Authentication" - examples: - Example: - value: - access_token: 737HdeXfIqgx-NfaUFRuhV7JDe6ns6ptanJSMuQzjlc - token_type: bearer - expires_in: 7200 - refresh_token: iEjL96L9Pndwmi-xVX3Q-xbrvvhnjHYGX87sopgGJ8E - scope: ach_transactions:read benefits:read companies:read - created_at: 1732033824 - Holiday-Pay-Policy-Object: - description: Holiday Pay Policy Object Example - content: - application/json: + type: string + x-gusto-rswag: true + responses: + '201': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Recurring-Reimbursement" + '422': + description: invalid attributes + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + required: + - description + - amount + properties: + description: + type: string + description: The description of the reimbursement + amount: + type: number + description: The dollar amount of the reimbursement + required: true + "/v1/recurring_reimbursements/{id}": + get: + summary: Get a recurring reimbursement + operationId: get-v1-recurring_reimbursements + security: + - CompanyAccessAuth: [] + description: |- + Get a specific recurring reimbursement. + + scope: `reimbursements:read` + tags: + - Reimbursements + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header schema: - "$ref": "#/components/schemas/Holiday-Pay-Policy" - examples: - Example: - value: - version: 1b37938b017c7fd7116bada007072290 - company_uuid: b7845189-f12b-4378-918a-d2b9de3dc4ea - federal_holidays: - new_years_day: - selected: false - name: New Year's Day - date: January 1 - mlk_day: - selected: true - name: Martin Luther King, Jr. Day - date: Third Monday in January - presidents_day: - selected: false - name: Presidents' Day - date: Third Monday in February - memorial_day: - selected: true - name: Memorial Day - date: Last Monday in May - juneteenth: - selected: false - name: Juneteenth - date: June 19 - independence_day: - selected: true - name: Independence Day - date: July 4 - labor_day: - selected: false - name: Labor Day - date: First Monday in September - columbus_day: - selected: false - name: Columbus Day (Indigenous Peoples' Day) - date: Second Monday in October - veterans_day: - selected: true - name: Veterans Day - date: November 11 - thanksgiving: - selected: true - name: Thanksgiving - date: Fourth Thursday in November - christmas_day: - selected: true - name: Christmas Day - date: December 25 - employees: - uuid: 1ca3cd25-3eda-48c6-ac88-f0e7fb91a15a - Paid-Holidays-Object: - description: Paid Holidays Object Example - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: id + in: path + description: The UUID of the reimbursement + required: true schema: - "$ref": "#/components/schemas/Paid-Holidays" - examples: - Example: - value: - - holiday_key: veterans_day - holiday_name: Veterans Day - start_date: '2023-11-11' - end_date: '2023-11-11' - Department-Object: - description: Department Object Example - content: - application/json: + type: string + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Recurring-Reimbursement" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + put: + summary: Update a recurring reimbursement + operationId: put-v1-recurring_reimbursements + security: + - CompanyAccessAuth: [] + description: |- + Update a recurring reimbursement. + + scope: `reimbursements:write` + tags: + - Reimbursements + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header schema: - "$ref": "#/components/schemas/Department" - examples: - Example: - value: - uuid: 56260b3d-c375-415c-b77a-75d99f717193 - company_uuid: 7087a288-8349-4632-b92e-bc94fb79f29e - title: Stage Hand - version: d90440dd464601d1c8f4e9e240dfb7a6 - employees: - - uuid: 41199375-a999-4414-9f40-d9bf596b134d - contractors: - - uuid: 3488549f-60e4-494f-a34a-9d8aad3aabf5 - Ytd-Benefit-Amounts-From-Different-Company-List: - description: List of Ytd Benefit Amounts From Different Company List - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: id + in: path + description: The UUID of the reimbursement + required: true schema: - type: array - items: - "$ref": "#/components/schemas/Ytd-Benefit-Amounts-From-Different-Company" - examples: - Example: - value: - - uuid: c5fdae57-5483-4529-9aae-f0edceed92d3 - benefit_type: 1 - ytd_employee_deduction_amount: '5000.00' - ytd_company_contribution_amount: '2500.00' - - uuid: 1bfdb946-b2be-4909-ac46-9e7f73872d0a - benefit_type: 5 - ytd_employee_deduction_amount: '2132.00' - ytd_company_contribution_amount: '3345.00' - Department-List: - description: List of departments - content: - application/json: + type: string + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Recurring-Reimbursement" + '409': + description: invalid version + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: invalid attributes + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + requestBody: + content: + application/json: + schema: + allOf: + - "$ref": "#/components/schemas/Versionable-Required" + - type: object + properties: + description: + type: string + description: The description of the reimbursement + amount: + type: number + description: The dollar amount of the reimbursement + required: true + delete: + summary: Delete a recurring reimbursement + operationId: delete-v1-recurring_reimbursements + security: + - CompanyAccessAuth: [] + description: |- + Delete (soft delete) a recurring reimbursement for an employee. + + scope: `reimbursements:write` + tags: + - Reimbursements + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header schema: - type: array - items: - "$ref": "#/components/schemas/Department" - examples: - Example: - value: - - uuid: 56260b3d-c375-415c-b77a-75d99f717193 - company_uuid: 7087a288-8349-4632-b92e-bc94fb79f29e - title: Stage Hand - version: d90440dd464601d1c8f4e9e240dfb7a6 - employees: - - uuid: 41199375-a999-4414-9f40-d9bf596b134d - contractors: [] - - uuid: ec5c8a85-3233-4f39-a9f5-fb1ab7b5f5f3 - company_uuid: 7087a288-8349-4632-b92e-bc94fb79f29e - title: Actors - version: 34f39a30b45d077cb83aed2df4810d74 - employees: - - uuid: 7ee4aca1-814b-4034-b0f8-07f93cc679d1 - contractors: [] - - uuid: 1802465d-4f68-4865-920c-1307ab095f12 - company_uuid: 7087a288-8349-4632-b92e-bc94fb79f29e - title: Band - version: 1fe3076d35ef7c97d0ae68c5f4df0acd - employees: - - uuid: a73955be-c009-44dc-915e-6246e2bdedbb - contractors: - - uuid: 3488549f-60e4-494f-a34a-9d8aad3aabf5 - Employee-Object: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: id + in: path + description: The UUID of the reimbursement + required: true + schema: + type: string + x-gusto-rswag: true + responses: + '204': + description: successful + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + "/v1/companies/{company_uuid}/reports": + post: + summary: Create a custom report + operationId: post-companies-company_uuid-reports + security: + - CompanyAccessAuth: [] + description: |- + Create a custom report for a company. This endpoint initiates creating a custom report with custom columns, groupings, and filters. The `request_uuid` in the response can then be used to poll for the status and report URL upon completion using the [report GET endpoint](https://docs.gusto.com/embedded-payroll/reference/get-reports-request_uuid). This URL is valid for 10 minutes. + + scope: `company_reports:write` + tags: + - Reports + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + required: true + description: The UUID of the company + schema: + type: string + x-gusto-rswag: true + responses: + '201': + description: Created + content: + application/json: + schema: + "$ref": "#/components/schemas/Create-Report" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Create-Report-Body" + required: true + x-speakeasy-name-override: createCustom + "/v1/payrolls/{payroll_uuid}/reports/general_ledger": + post: + summary: Create a general ledger report + operationId: post-payrolls-payroll_uuid-reports-general_ledger + security: + - CompanyAccessAuth: [] + description: |- + Create a general ledger report for a payroll. The report can be aggregated by different dimensions such as job or department. + + Use the `request_uuid` in the response with the [report GET endpoint](../reference/get-reports-request_uuid) to poll for the status and report URL upon completion. The retrieved report will be generated in a JSON format. + + scope: `company_reports:write` + tags: + - Reports + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: payroll_uuid + in: path + required: true + description: The UUID of the payroll + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: OK + content: + application/json: + schema: + "$ref": "#/components/schemas/General-Ledger-Report" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/General-Ledger-Report-Body" + required: true + "/v1/reports/{request_uuid}": + get: + summary: Get a report + operationId: get-reports-request_uuid + security: + - CompanyAccessAuth: [] + description: |- + Get a company's report given the `request_uuid`. The response will include the report request's status and, if complete, the report URL. + + Reports containing PHI are inaccessible with `company_reports:read:tier_2_only` data scope + + scope: `company_reports:read` + tags: + - Reports + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: request_uuid + in: path + required: true + description: The UUID of the request to generate a document. Generate document endpoints return request_uuids to be used with the GET generated document endpoint. + schema: + type: string + x-gusto-rswag: true + responses: + '200': + description: OK + content: + application/json: + schema: + "$ref": "#/components/schemas/Report" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + "/v1/companies/{company_uuid}/report_templates/{report_type}": + get: + summary: Get a report template + operationId: get-companies-company_uuid-report-templates-report_type + security: + - CompanyAccessAuth: [] + description: |- + Get a company's report template. The only supported report type is `payroll_journal`. The resulting columns and groupings from this endpoint can be used as a guidance to create the report using the POST create report endpoint. + + scope: `company_reports:write` + tags: + - Reports + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header schema: - "$ref": "#/components/schemas/Employee" - examples: - Create-Employee-Example: - value: - uuid: 4b3f930f-82cd-48a8-b797-798686e12e5e - first_name: Isom - middle_initial: - last_name: Jaskolski - email: dane7757869450111550@botsford.net - company_uuid: a007e1ab-3595-43c2-ab4b-af7a5af2e365 - manager_uuid: 5e53e257-c8d6-45aa-aa8a-ec99283a3acd - employee_code: fesa3w - version: 1c7ba9d62c8bafbfff998ffccad5d296 - department: Stage Hand - department_uuid: 56260b3d-c375-415c-b77a-75d99f717193 - terminated: false - two_percent_shareholder: false - onboarded: true - onboarding_status: onboarding_completed - onboarding_documents_config: - uuid: - i9_document: false - jobs: - - uuid: 428a653a-0745-4db4-9c80-558288d416fa - version: 6c0ed1521e8b86eb36bd4455a63a2dac - employee_uuid: f0689739-1985-49f3-b9ba-84562e71e85f - current_compensation_uuid: c9fd719b-8b07-48f3-8a4c-f447d2c59669 - payment_unit: Year - primary: true - title: Client Support Director - compensations: - - uuid: 145660ed-6fcc-4211-8915-18e2786290a2 - version: 2cd4b18662395eb53bcf80d5b5447f36 - payment_unit: Year - flsa_status: Exempt - job_uuid: 857feae3-414e-445d-b28b-2eb3ef50155e - effective_date: '2021-01-20' - rate: '70000.00' - adjust_for_minimum_wage: false - minimum_wages: [] - rate: '70000.00' - hire_date: '2020-01-20' - eligible_paid_time_off: - - name: Sick Hours - policy_name: Sick Policy - policy_uuid: 9940d205-9904-4e55-9fec-652628e84af7 - accrual_unit: Hour - accrual_rate: '208.0' - accrual_method: per_hour_worked - accrual_period: Year - accrual_balance: '31.8' - maximum_accrual_balance: '240.0' - paid_at_termination: false - - name: Vacation Hours - policy_name: Vacation Policy - policy_uuid: ab59de61-239f-4805-933b-0e3360ed291c - accrual_unit: Hour - accrual_rate: '208.0' - accrual_period: Year - accrual_balance: '77.8' - maximum_accrual_balance: '240.0' - paid_at_termination: true - terminations: [] - custom_fields: - - id: ee515986-f3ca-49da-b576-2691b95262f9 - company_custom_field_id: ea7e5d57-6abb-47d7-b654-347c142886c0 - name: employee_level - description: Employee Level - type: text - value: '2' - selection_options: - - id: 3796e08d-c2e3-434c-b4de-4ce1893e7b59 - company_custom_field_id: 299650e4-e970-4acf-9bf0-6f05585d20ba - name: t-shirt size - description: What is your t-shirt size? - type: text - value: md - selection_options: - - id: 3796e08d-c2e3-434c-b4de-4ce1893e7b59 - company_custom_field_id: 024ec137-6c92-43a3-b061-14a9720531d6 - name: favorite fruit - description: Which is your favorite fruit? - type: radio - value: apple - selection_options: - - apple - - banana - - orange - garnishments: [] - date_of_birth: '1986-06-25' - has_ssn: false - ssn: '' - phone: '1234567890' - preferred_first_name: Angel - work_email: angel.jaskolski@example.com - Create Historical Employee Example: - value: - uuid: ad85459f-8bf5-4a8f-9079-3b3fa790799e - first_name: Karl - middle_initial: - last_name: Jaskolski - email: - company_uuid: 3c69d228-a250-49b4-9946-24e4e4294da4 - manager_uuid: - employee_code: rke7p1 - version: dedac972dd28945fcd6cd941723cc71a - department: - department_uuid: - terminated: false - two_percent_shareholder: false - onboarded: true - historical: true - onboarding_status: onboarding_completed - onboarding_documents_config: - uuid: - i9_document: false - jobs: - - uuid: f0be5480-7a15-4583-b0d0-789c02a1afe4 - version: 1c0722f3e090713b6a0db7c39904693e - employee_uuid: ad85459f-8bf5-4a8f-9079-3b3fa790799e - current_compensation_uuid: 1a1faa42-274b-4440-b200-a5d81df14af2 - payment_unit: Year - primary: true - title: Client Support Director - compensations: - - uuid: 145660ed-6fcc-4211-8915-18e2786290a2 - version: 2cd4b18662395eb53bcf80d5b5447f36 - payment_unit: Year - flsa_status: Exempt - job_uuid: 857feae3-414e-445d-b28b-2eb3ef50155e - effective_date: '2023-11-01' - rate: '70000.00' - adjust_for_minimum_wage: false - minimum_wages: [] - rate: '70000.00' - hire_date: '2023-11-01' - eligible_paid_time_off: [] - terminations: - - uuid: ad85459f-8bf5-4a8f-9079-3b3fa790799e - employee_uuid: ad85459f-8bf5-4a8f-9079-3b3fa790799e - active: false - effective_date: '2023-12-31' - run_termination_payroll: false - cancelable: true - version: e6c865df784842196d411c1466b01686 - garnishments: [] - date_of_birth: '1986-06-25' - has_ssn: false - ssn: '' - phone: - preferred_first_name: - work_email: - Historical-Employee-Object: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + required: true + description: The UUID of the company schema: - "$ref": "#/components/schemas/Employee" - examples: - Create Historical Employee Example: - value: - uuid: ad85459f-8bf5-4a8f-9079-3b3fa790799e - first_name: Karl - middle_initial: - last_name: Jaskolski - email: - company_uuid: 3c69d228-a250-49b4-9946-24e4e4294da4 - manager_uuid: - employee_code: eh3st1 - version: dedac972dd28945fcd6cd941723cc71a - department: - department_uuid: - terminated: true - two_percent_shareholder: false - onboarded: true - historical: true - onboarding_status: onboarding_completed - onboarding_documents_config: - uuid: - i9_document: false - jobs: - - uuid: f0be5480-7a15-4583-b0d0-789c02a1afe4 - version: 1c0722f3e090713b6a0db7c39904693e - employee_uuid: ad85459f-8bf5-4a8f-9079-3b3fa790799e - current_compensation_uuid: 1a1faa42-274b-4440-b200-a5d81df14af2 - payment_unit: Year - primary: true - title: Client Support Director - compensations: - - uuid: 145660ed-6fcc-4211-8915-18e2786290a2 - version: 2cd4b18662395eb53bcf80d5b5447f36 - payment_unit: Year - flsa_status: Exempt - job_uuid: 857feae3-414e-445d-b28b-2eb3ef50155e - effective_date: '2023-11-01' - rate: '70000.00' - adjust_for_minimum_wage: false - minimum_wages: [] - rate: '70000.00' - hire_date: '2023-11-01' - eligible_paid_time_off: [] - terminations: - - uuid: ad85459f-8bf5-4a8f-9079-3b3fa790799e - employee_uuid: ad85459f-8bf5-4a8f-9079-3b3fa790799e - active: false - effective_date: '2023-12-31' - run_termination_payroll: false - cancelable: true - version: e6c865df784842196d411c1466b01686 - garnishments: [] - date_of_birth: '1986-06-25' - has_ssn: false - ssn: '' - phone: - preferred_first_name: - work_email: - Employee-List: - description: Example response - content: - application/json: + type: string + - name: report_type + in: path + required: true + description: The report type schema: - type: array - items: - "$ref": "#/components/schemas/Employee" - examples: - Example: - value: - - uuid: 9779767c-6044-48e0-bf68-aeb370b9a2e7 - first_name: Nicole - middle_initial: M - last_name: Boehm - email: kory7757869450111548@barton-hermiston.io - company_uuid: c44d66dc-c41b-4a60-9e25-5e93ff8583f2 - manager_uuid: 5e53e257-c8d6-45aa-aa8a-ec99283a3acd - version: 414dedaca594b77135e0b8d2f398516d - department: Stage Hand - department_uuid: 1802465d-4f68-4865-920c-1307ab095f12 - terminated: false - two_percent_shareholder: false - onboarded: true - onboarding_status: onboarding_completed - onboarding_documents_config: - uuid: 9d5e3ce5-ea8f-4885-90e5-7ebbed03f7c5 - i9_document: true - jobs: - - uuid: 5d5e3ce5-ea8f-4885-90e5-7ebaed03f7c5 - version: 91179081a7309c9fbd31bb3cf7b9893e - employee_uuid: a987bce1-6d06-43f8-9978-9db886f479fb - current_compensation_uuid: 798a962f-0fcf-491e-9b71-cfa6a1db114f - payment_unit: Hour - primary: true - title: Client Support Manager - compensations: - - uuid: 94f17a77-cfe5-436a-af94-422bbf8248ff - version: 233f0096a8015e62d9795fadf1fd300d - payment_unit: Hour - flsa_status: Nonexempt - job_uuid: 64711ac0-83ff-4aaf-bec1-db72f5a44e56 - effective_date: '2021-01-20' - rate: '22.00' - adjust_for_minimum_wage: false - minimum_wages: [] - rate: '22.00' - hire_date: '2020-01-20' - eligible_paid_time_off: - - name: Sick Hours - policy_name: Sick Policy - policy_uuid: 9940d205-9904-4e55-9fec-652628e84af7 - accrual_unit: Hour - accrual_rate: '208.0' - accrual_method: per_hour_worked - accrual_period: Year - accrual_balance: '71.0' - maximum_accrual_balance: '240.0' - paid_at_termination: false - - name: Vacation Hours - policy_name: Vacation Policy - policy_uuid: 8b312f0e-30e7-4810-9c06-1177a6484f2d - accrual_unit: Hour - accrual_rate: '208.0' - accrual_period: Year - accrual_balance: '34.0' - maximum_accrual_balance: '240.0' - paid_at_termination: true - terminations: [] - garnishments: [] - date_of_birth: '1996-05-08' - has_ssn: true - ssn: '' - phone: '1234567890' - preferred_first_name: Vanessa - work_email: vanessa.boehm@example.com - - uuid: d7cb289a-af62-4120-9cd5-acda324b5c04 - first_name: Maci - middle_initial: M - last_name: Cassin - email: claud_reinger7757869450111549@gutkowski.net - company_uuid: 4522d043-5731-406d-a129-de1808042a32 - manager_uuid: 5e53e257-c8d6-45aa-aa8a-ec99283a3acd - version: e867459e1360fa71e78b88142923d341 - department: Band - department_uuid: 1802465d-4f68-4865-920c-1307ab095f12 - terminated: false - two_percent_shareholder: false - onboarded: true - onboarding_status: onboarding_completed - onboarding_documents_config: - uuid: 1d5e3ce5-ea8f-4885-90e5-7ebbed03f7c5 - i9_document: true - jobs: - - uuid: 62a00cf7-342b-465e-a151-ecd295152be0 - version: d0e719137f89ca3dd334dd4cc248ffbb - employee_uuid: 5e53e257-c8d6-45aa-aa8a-ec99283a3acd - current_compensation_uuid: 93e5da92-173b-4faa-a0bd-d1a8dee68be0 - payment_unit: Year - primary: true - title: Account Director - compensations: - - uuid: 1bad5177-c4ed-432e-ab43-66055d40c3a5 - version: 994b75511d1debac5d7e2ddeae13679f - payment_unit: Year - flsa_status: Exempt - job_uuid: 1214875b-f43d-4267-bf2f-a6d2c298ff3d - effective_date: '2021-01-20' - rate: '78000.00' - adjust_for_minimum_wage: false - minimum_wages: [] - rate: '78000.00' - hire_date: '2020-01-20' - eligible_paid_time_off: - - name: Sick Hours - policy_name: Sick Policy - policy_uuid: 8b312f0e-30e7-4810-9c06-1177a6484f2d - accrual_unit: Hour - accrual_rate: '208.0' - accrual_method: per_hour_worked - accrual_period: Year - accrual_balance: '74.0' - maximum_accrual_balance: '240.0' - paid_at_termination: false - - name: Vacation Hours - policy_name: Vacation Policy - policy_uuid: 0d4c755e-50ac-4c54-b46e-81bdfa03da5b - accrual_unit: Hour - accrual_rate: '208.0' - accrual_period: Year - accrual_balance: '16.0' - maximum_accrual_balance: '240.0' - paid_at_termination: true - terminations: [] - garnishments: [] - custom_fields: - - id: ee515986-f3ca-49da-b576-2691b95262f9 - company_custom_field_id: ea7e5d57-6abb-47d7-b654-347c142886c0 - name: employee_level - description: Employee Level - type: text - value: '2' - selection_options: - - id: 3796e08d-c2e3-434c-b4de-4ce1893e7b59 - company_custom_field_id: 299650e4-e970-4acf-9bf0-6f05585d20ba - name: t-shirt size - description: What is your t-shirt size? - type: text - value: md - selection_options: - - id: 3796e08d-c2e3-434c-b4de-4ce1893e7b59 - company_custom_field_id: 024ec137-6c92-43a3-b061-14a9720531d6 - name: favorite fruit - description: Which is your favorite fruit? - type: radio - value: apple - selection_options: - - apple - - banana - - orange - date_of_birth: '1995-09-21' - has_ssn: true - ssn: '' - phone: '1234567890' - preferred_first_name: Denis - work_email: denis.cassin@example.com - Employee-Address-Object: - description: Example response - content: - application/json: + type: string + x-gusto-rswag: true + responses: + '200': + description: OK + content: + application/json: + schema: + "$ref": "#/components/schemas/Report-Template" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-speakeasy-name-override: getTemplate + "/v1/employees/{employee_id}/salary_estimates": + post: + summary: Create a salary estimate for an employee + operationId: post-v1-employees-employee_id-salary_estimates + security: + - CompanyAccessAuth: [] + description: |- + Create a salary estimate for an employee. This endpoint helps calculate a reasonable salary for S Corp owners based on their occupation, experience level, location, and business revenue. + + A salary estimate must include: + - Annual net revenue of the business + - ZIP code for location-based salary data + - One or more occupations with experience levels and time percentages (must sum to 100%) + + Only one in-progress salary estimate can exist per employee at a time. If an in-progress estimate already exists, you must either accept it or use the update endpoint. + + scope: `salary_estimates:write` + tags: + - Salary Estimates + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header schema: - "$ref": "#/components/schemas/Employee-Address" - examples: - Example: - value: - uuid: 56260b3d-c375-415c-b77a-75d99f717193 - employee_id: 12345 - street_1: 644 Fay Vista - street_2: Suite 842 - city: Richmond - state: VA - zip: '23218' - country: USA - active: false - effective_date: '2021-01-01' - courtesy_withholding: true - Employee-Address-List: - description: List of employee addresses - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + required: true + description: The UUID of the employee schema: - type: array - items: - "$ref": "#/components/schemas/Employee-Address" - examples: - Example: - value: - - uuid: 56260b3d-c375-415c-b77a-75d99f717193 - employee_uuid: 7087a288-8349-4632-b92e-bc94fb79f29e - street_1: 644 Fay Vista - street_2: Suite 842 - city: Richmond - state: VA - zip: '23218' - country: USA - active: false - effective_date: '2021-01-01' - courtesy_withholding: true - - uuid: d9f74049-8769-4fba-8e0f-eceef2da4e6b - employee_uuid: 7087a288-8349-4632-b92e-bc94fb79f29e - street_1: 100 5th Ave - street_2: Suite 555 - city: New York - state: NY - zip: '10001' - country: USA - active: true - effective_date: '2022-03-03' - courtesy_withholding: true - Employee-Work-Address-List: - description: List of employee work addresses - content: - application/json: + type: string + x-gusto-rswag: true + responses: + '201': + description: successfully created + content: + application/json: + schema: + "$ref": "#/components/schemas/Salary-Estimate" + '422': + description: unprocessable entity - invalid parameters + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + required: + - zip_code + - occupations + properties: + annual_net_revenue: + type: + - number + - 'null' + description: The annual net revenue of the business (must be greater than 0) + example: 500000 + zip_code: + type: string + description: The ZIP code for location-based salary calculations + pattern: "^\\d{5}$" + example: '94107' + occupations: + type: array + description: Array of occupations. Time percentages must sum to 100%. + minItems: 1 + items: + type: object + required: + - code + - experience_level + - time_percentage + properties: + code: + type: string + description: Bureau of Labor Statistics (BLS) occupation code + example: '151252' + experience_level: + type: string + description: Experience level for this occupation + enum: + - novice + - intermediate + - average + - skilled + - expert + example: skilled + time_percentage: + type: string + format: float + description: Percentage of time spent in this occupation (as decimal, e.g., 1.0 = 100%) + minimum: 0 + maximum: 1 + example: '1.0' + primary: + type: boolean + description: Whether this is the primary occupation + example: true + required: true + "/v1/salary_estimates/{uuid}": + get: + summary: Get a salary estimate + operationId: get-v1-salary_estimates-id + security: + - CompanyAccessAuth: [] + description: |- + Retrieve a salary estimate by its UUID. Returns the estimated salary calculation along with all occupation details, revenue, and location information. + + scope: `salary_estimates:read` + tags: + - Salary Estimates + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header schema: - type: array - items: - "$ref": "#/components/schemas/Employee-Work-Address" - examples: - Example: - value: - - uuid: fc5b87dc-8d88-400d-b2da-c3587a7e5b15 - employee_uuid: 7597f3e3-31d4-4953-83a5-f95be78d2fe2 - location_uuid: d9456c94-f561-40d2-afec-919da5f59196 - effective_date: '2022-01-01' - active: false - version: 139f9769a2e543e6a1259173e1ee3b8d - street_1: 800 Adolfo Gardens - street_2: Suite 419 - city: Bremen - state: AL - zip: '35033' - country: USA - - uuid: be1c2e24-af86-4c36-b34e-3a55dbcdbdab - employee_uuid: 7597f3e3-31d4-4953-83a5-f95be78d2fe2 - location_uuid: 6a119be7-b4b0-4e27-aaa0-89d5f2524635 - effective_date: '2023-01-01' - active: true - version: bbe8d4c741339c6b9e0e2e1c1b120816 - street_1: 2216 Icie Villages - street_2: Apt. 798 - city: Big Delta - state: AK - zip: '99737' - country: USA - Company-Onboarding-Status-Object: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: uuid + in: path + required: true + description: The UUID of the salary estimate schema: - "$ref": "#/components/schemas/Company-Onboarding-Status" - examples: - Example: - value: - uuid: c44d66dc-c41b-4a60-9e25-5e93ff8583f2 - onboarding_completed: false - onboarding_steps: - - title: Add Your Company's Addresses - id: add_addresses - required: true - completed: true - completed_at: '2025-02-18T10:00:00Z' - skippable: false - requirements: [] - - title: Enter Your Federal Tax Information - id: federal_tax_setup - required: true - completed: true - completed_at: '2025-02-18T10:00:00Z' - skippable: false - requirements: [] - - title: Select Industry - id: select_industry - required: true - completed: true - completed_at: '2025-02-18T10:00:00Z' - skippable: false - requirements: [] - - title: Add Your Bank Account - id: add_bank_info - required: true - completed: true - completed_at: '2025-02-18T10:00:00Z' - skippable: false - requirements: [] - - title: Add Your Employees - id: add_employees - required: true - completed: true - completed_at: '2025-02-18T10:00:00Z' - skippable: true - requirements: - - add_addresses - - title: Enter Your State Tax Information - id: state_setup - required: true - completed: false - completed_at: - skippable: false - requirements: - - add_addresses - - add_employees - - title: Select a Pay Schedule - id: payroll_schedule - required: true - completed: false - completed_at: - skippable: false - requirements: [] - - title: Sign Documents - id: sign_all_forms - required: true - completed: false - completed_at: - skippable: false - requirements: - - add_employees - - federal_tax_setup - - state_setup - - add_bank_info - - payroll_schedule - - title: Verify Your Bank Account - id: verify_bank_info - required: true - completed: false - completed_at: - skippable: false - requirements: - - add_bank_info - Company-Onboarding-Status-Finish-Onboarding-Object: - description: Example response - content: - application/json: + type: string + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Salary-Estimate" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + put: + summary: Update a salary estimate + operationId: put-v1-salary_estimates-id + security: + - CompanyAccessAuth: [] + description: |- + Update an existing salary estimate. You can modify the annual net revenue, ZIP code, and occupations. + + The salary estimate must not be finalized (accepted). Once accepted, salary estimates become read-only for record-keeping purposes. + + scope: `salary_estimates:write` + tags: + - Salary Estimates + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header schema: - "$ref": "#/components/schemas/Company-Onboarding-Status" - examples: - Example: - value: - uuid: c44d66dc-c41b-4a60-9e25-5e93ff8583f2 - onboarding_completed: true - onboarding_steps: - - title: Add Your Company's Addresses - id: add_addresses - required: true - completed: true - skippable: false - requirements: [] - - title: Enter Your Federal Tax Information - id: federal_tax_setup - required: true - completed: true - skippable: false - requirements: [] - - title: Select Industry - id: select_industry - required: true - completed: true - skippable: false - requirements: [] - - title: Add Your Bank Account - id: add_bank_info - required: true - completed: true - skippable: false - requirements: [] - - title: Add Your Employees - id: add_employees - required: true - completed: true - skippable: true - requirements: - - add_addresses - - title: Enter Your State Tax Information - id: state_setup - required: true - completed: true - skippable: false - requirements: - - add_addresses - - add_employees - - title: Select a Pay Schedule - id: payroll_schedule - required: true - completed: true - skippable: false - requirements: [] - - title: Sign Documents - id: sign_all_forms - required: true - completed: true - skippable: false - requirements: - - add_employees - - federal_tax_setup - - state_setup - - add_bank_info - - payroll_schedule - - title: Verify Your Bank Account - id: verify_bank_info - required: true - completed: true - skippable: false - requirements: - - add_bank_info - Webhook-Subscription-Object: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: uuid + in: path + required: true + description: The UUID of the salary estimate schema: - "$ref": "#/components/schemas/Webhook-Subscription" - examples: - Example: - value: - uuid: c5fdae57-5483-4529-9aae-f0edceed92d4 - url: https://the-partner-app.com/subscriber - status: verified - subscription_types: - - BankAccount - - Company - - CompanyBenefit - - Contractor - - ContractorPayment - - Employee - - EmployeeBenefit - - EmployeeJobCompensation - - ExternalPayroll - - Form - - Location - - Notification - - Payroll - - PayrollSync - - PaySchedule - - Signatory - Webhook-Subscriptions-List: - description: Example response - content: - application/json: + type: string + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Salary-Estimate" + '422': + description: unprocessable entity - already finalized + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + required: + - zip_code + - occupations + properties: + annual_net_revenue: + type: + - number + - 'null' + description: The annual net revenue of the business (must be greater than 0) + example: 600000 + zip_code: + type: string + description: The ZIP code for location-based salary calculations + pattern: "^\\d{5}$" + example: '94107' + occupations: + type: array + description: Array of occupations. Time percentages must sum to 100%. + minItems: 1 + items: + type: object + required: + - code + - experience_level + - time_percentage + properties: + code: + type: string + description: Bureau of Labor Statistics (BLS) occupation code + example: '151252' + experience_level: + type: string + description: Experience level for this occupation + enum: + - novice + - intermediate + - average + - skilled + - expert + example: expert + time_percentage: + type: string + format: float + description: Percentage of time spent in this occupation (as decimal, e.g., 0.5 = 50%) + minimum: 0 + maximum: 1 + example: '0.6' + primary: + type: boolean + description: Whether this is the primary occupation + example: true + required: true + "/v1/salary_estimates/{uuid}/accept": + post: + summary: Accept a salary estimate + operationId: post-v1-salary_estimates-uuid-accept + security: + - CompanyAccessAuth: [] + description: |- + Accept and finalize a salary estimate. This associates the estimate with an employee job and marks it as accepted. + + Once accepted, the salary estimate becomes read-only for record-keeping purposes. The accepted salary can then be used to set up compensation for the employee. + + scope: `salary_estimates:write` + tags: + - Salary Estimates + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header schema: - type: array - items: - "$ref": "#/components/schemas/Webhook-Subscription" - examples: - Example: - value: - - uuid: dcceb38a-46be-4110-9d1d-1b3384c3b906 - url: https://6116-2603-6000-8900-3d42-58e7-f1e3-b394-1f21.ngrok.io/subscriber - status: pending - subscription_types: - - BankAccount - - Company - - CompanyBenefit - - Contractor - - ContractorPayment - - Employee - - EmployeeBenefit - - EmployeeJobCompensation - - ExternalPayroll - - Form - - Location - - Notification - - Payroll - - PayrollSync - - PaySchedule - - Signatory - Company-Object: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: uuid + in: path + required: true + description: The UUID of the salary estimate schema: - "$ref": "#/components/schemas/Company" - examples: - Example: - value: - ein: 00-0000001 - entity_type: C-Corporation - tier: core - contractor_only: false - is_suspended: false - company_status: Approved - uuid: c7a07c73-a703-4462-9343-1b181182b6e0 - name: Shoppe Studios LLC - trade_name: Record Shoppe - slug: record-shoppe - is_partner_managed: false - pay_schedule_type: by_department - join_date: '2023-03-01' - funding_type: ach - locations: - - street_1: 412 Kiera Stravenue - street_2: Suite 391 - city: San Francisco - state: CA - zip: '94107' - country: USA - active: true - - street_1: 644 Fay Vista - street_2: Suite 842 - city: Richmond - state: VA - zip: '23218' - country: USA - active: true - compensations: - hourly: - - name: Overtime - multiple: 1.5 - - name: Double overtime - multiple: 2 - - name: Regular - multiple: 1 - - name: Outstanding vacation - multiple: 1 - - name: Holiday - multiple: 1 - - name: Emergency sick - self care - multiple: 1 - - name: Emergency sick - caring for others - multiple: 1 - - name: FMLA Public Health Emergency Leave - multiple: 1 - - name: Regular Hours - multiple: 1 - fixed: - - name: Bonus - - name: Commission - - name: Paycheck Tips - - name: Cash Tips - - name: Correction Payment - - name: Severance - - name: Minimum Wage Adjustment - paid_time_off: - - name: Vacation Hours - - name: Sick Hours - - name: Holiday Hours - primary_signatory: - uuid: 8a2ed9c2-9d1e-443a-8e56-a490d8bf73bb - first_name: Alda - middle_initial: '' - last_name: Carter - phone: 1-565-710-7558 - email: louie.hessel7757869450111547@zemlak.biz - home_address: - street_1: 524 Roob Divide - street_2: Suite 565 - city: San Francisco - state: CA - zip: '94107' - country: USA - primary_payroll_admin: - first_name: Ian - last_name: Labadie - phone: 1-565-710-7559 - email: louie.hessel7757869450111547@zemlak.biz - Signatory-Object: - description: Example response - content: - application/json: + type: string + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Salary-Estimate" + '422': + description: unprocessable entity - invalid employee job + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + required: + - employee_job_uuid + properties: + employee_job_uuid: + type: string + description: The UUID of the employee job to associate with this salary estimate + example: 7f5d3d93-6d6f-48c0-9f4e-cd12c2d3e4b2 + required: true + "/v1/salary_estimates/occupations": + get: + summary: Search for BLS occupations + operationId: get-v1-salary_estimates-occupations + security: + - SystemAccessAuth: [] + description: "Search for Bureau of Labor Statistics (BLS) occupations by name or keyword. This endpoint helps users find the appropriate occupation codes to use when creating or updating salary estimates.\n\nReturns a list of matching occupations with their codes, titles, and descriptions.\n\n\U0001F4D8 System Access Authentication\n\nThis endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access)\n\nscope: `salary_estimates:read`" + tags: + - Salary Estimates + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header schema: - "$ref": "#/components/schemas/Signatory" - examples: - Example: - value: - uuid: f8c653dc-0094-41fb-8670-45d6399afade - first_name: Bob - last_name: Johnson - title: Owner - phone: '4239879876' - birthday: '2002-10-31' - email: olin.okuneva@denesik.us - is_admin: false - has_ssn: true - version: 49ea586f528411f5cfadfd54452b2423 - home_address: - street_1: 524 Roob Divide - street_2: Suite 565 - city: San Francisco - state: CA - zip: '94107' - country: USA - identity_verification_status: Skipped - Contractor-Address-Object: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: search + in: query + required: true + description: Search term for occupation (minimum 3 characters) + example: software schema: - "$ref": "#/components/schemas/Contractor-Address" - examples: - Example: - value: - version: 23323096a8015e32d9795fadf1fd300d - contractor_uuid: 9779767c-6044-48e0-bf68-aeb370b9a2e7 - street_1: 999 Kiera Stravenue - street_2: Suite 391 - city: San Francisco - state: CA - zip: 94107 - country: USA - active: true - Employment-History-List: - description: Example response - content: - application/json: + type: string + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/BLS-Occupation" + '422': + description: unprocessable entity - search term too short + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + "/v1/sandbox/generate_w2": + post: + summary: Generate a W2 form [DEMO] + operationId: post-v1-sandbox-generate_w2 + security: + - CompanyAccessAuth: [] + description: "> \U0001F6A7 Demo action\n>\n> This action is only available in the Demo environment\n\nGenerates a W2 document for testing purposes.\n\nscope: `employees:write`" + tags: + - Employee Forms + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header schema: - type: array - items: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '201': + description: Created + content: + application/json: + schema: + "$ref": "#/components/schemas/Form" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: type: object properties: - hire_date: - type: string - description: The employee's start day of work for an employment. - termination_date: - type: string - description: The employee's last day of work for an employment. - file_new_hire_report: - type: boolean - description: The boolean flag indicating whether Gusto will file a new hire report for the employee. - two_percent_shareholder: - type: boolean - description: Whether the employee is a two percent shareholder of the company. This field only applies to companies with an S-Corp entity type. - employment_status: + employee_id: type: string - description: The employee's employment status. Supplying an invalid option will set the employment_status to *not_set*. - enum: - - part_time - - full_time - - part_time_eligible - - variable - - seasonal - - not_set - x-examples: - example-1: - hire_date: '2023-01-30' - termination_date: '2023-03-30' - file_new_hire_report: false - two_percent_shareholder: false - employment_status: seasonal - examples: - Example: - value: - - hire_date: '2023-05-30' - termination_date: - file_new_hire_report: true - two_percent_shareholder: false - employment_status: seasonal - - hire_date: '2021-02-02' - termination_date: '2023-03-01' - file_new_hire_report: false - two_percent_shareholder: false - employment_status: full_time - Rehire-Object: - description: Example response - content: - application/json: + description: The employee UUID. + year: + type: integer + description: 'Must be equal to or more recent than 2015. If not specified, defaults to the previous year. + +' + required: + - employee_id + required: true + x-speakeasy-group: employeeForms + x-speakeasy-name-override: generateW2 + "/v1/sandbox/generate_1099": + post: + summary: Generate a 1099 form [DEMO] + operationId: post-v1-sandbox-generate_1099 + security: + - CompanyAccessAuth: [] + description: "> \U0001F6A7 Demo action\n>\n> This action is only available in the Demo environment\n\nGenerates a 1099 document for testing purposes.\n\nscope: `contractors:write`" + tags: + - Contractor Forms + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header schema: - "$ref": "#/components/schemas/Rehire" - examples: - Example: - value: - version: 2e930d43acbdb241f8f14a2d531fa417 - employee_uuid: da441196-43a9-4d23-ad5d-f37ce6bb99c0 - active: false - effective_date: '2024-01-01' - file_new_hire_report: false - work_location_uuid: d2c80d44-857b-4d4d-bce4-23ae52cc863b, - two_percent_shareholder: false - employment_status: full_time - Unprocessed-Termination-Pay-Period-List: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '201': + description: Created + content: + application/json: + schema: + "$ref": "#/components/schemas/Form_1099" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + properties: + contractor_id: + type: string + description: The contractor UUID. + year: + type: integer + description: 'Must be equal to or more recent than 2015. If not specified, defaults to the previous year. + +' + required: + - contractor_id + required: true + x-speakeasy-group: contractorForms + x-speakeasy-name-override: generate1099 + "/v1/companies/{company_uuid}/signatories": + get: + summary: Get the signatories for a company + operationId: get-v1-companies-company_uuid-signatories + security: + - CompanyAccessAuth: [] + description: |- + Returns the signatories for a company. A company has at most one signatory. + + ## Related guides + - [Signatory Events](doc:signatory-events) + + scope: `signatories:read` + tags: + - Signatories + x-gusto-integration-type: + - embedded + parameters: + - name: company_uuid + in: path + description: The UUID of the company + required: true schema: - type: array - items: - "$ref": "#/components/schemas/Unprocessed-Termination-Pay-Period" - examples: - Example: - value: - - start_date: '2023-01-11' - end_date: '2023-01-24' - check_date: '2023-01-28' - debit_date: '2023-01-26' - employee_name: Mary Warner - employee_uuid: '094f6ded-a790-4651-87e6-4a7f15dec7c6' - pay_schedule_uuid: 00ebc4a4-ec88-4435-8f45-c505bb63e501 - - start_date: '2023-01-25' - end_date: '2023-02-07' - check_date: '2023-02-10' - debit_date: '2023-02-08' - employee_name: Mary Warner - employee_uuid: '094f6ded-a790-4651-87e6-4a7f15dec7c6' - pay_schedule_uuid: 00ebc4a4-ec88-4435-8f45-c505bb63e501 - Accruing-Time-Off-Hour-Object: - description: Example response - content: - application/json: + type: string + - name: X-Gusto-API-Version + in: header schema: - type: object - required: - - hours_earned - properties: - hours_earned: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '200': + description: Successful + content: + application/json: + schema: type: array items: - "$ref": "#/components/schemas/Accruing-Time-Off-Hour" - examples: - Example: - value: - - time_off_policy_uuid: c3a15554-f124-415d-b2c4-90b430fd8eb1 - hours: '3.2' - - time_off_policy_uuid: 386fc48d-52d2-4009-87b3-368f74f6b3df - hours: '6.0' - Pay-Schedule-Assignment-Object: - description: Example response - content: - application/json: + "$ref": "#/components/schemas/Signatory" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: list + post: + summary: Create a signatory + operationId: post-v1-company-signatories + security: + - CompanyAccessAuth: [] + description: |- + Creates a company signatory with complete information. The company must not already have a signatory. + + A signatory can legally sign forms once the identity verification process is successful. The signatory should be an officer, owner, general partner or LLC member manager, plan administrator, fiduciary, or an authorized representative who is designated to sign agreements on the company's behalf. An officer is the president, vice president, treasurer, chief accounting officer, etc. There can only be a single primary signatory in a company. + + ### Webhooks + - `signatory.created`: Fires when a signatory is successfully created. + + ### Related guides + - [Signatory Events](doc:signatory-events) + + scope: `signatories:manage` + tags: + - Signatories + x-gusto-integration-type: + - embedded + parameters: + - name: company_uuid + in: path + description: The UUID of the company + required: true schema: - "$ref": "#/components/schemas/Pay-Schedule-Assignment" - examples: - Example: - value: - type: by_employee - employees: - employee_uuid: f0238368-f2cf-43e2-9a07-b0265f2cec69 - pay_schedule_uuid: c277ac52-9871-4a96-a1e6-0c449684602a - Pay-Schedule-Assignment-Preview-Object: - description: Example response - content: - application/json: + type: string + - name: X-Gusto-API-Version + in: header schema: - "$ref": "#/components/schemas/Pay-Schedule-Assignment-Preview" - examples: - Example: - value: - type: hourly_salaried - employee_changes: - employee_uuid: 43b39ada-dc49-4879-9594-fe95f67ae434 - first_name: Penny - last_name: Parker - pay_frequency: Twice per month — Salaried pay schedule - first_pay_period: - pay_schedule_uuid: 3f029a58-155d-4c30-8361-cc266b2c1f11 - start_date: '2023-07-01' - end_date: '2023-08-01' - check_date: '2023-08-02' - transition_pay_period: - start_date: '2023-06-20' - end_date: '2023-06-30' - Benefit-Summary-Object: - description: Benefit summary response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Signatory" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Signatory-Create-Request" + required: true + x-speakeasy-name-override: create + "/v1/companies/{company_uuid}/signatories/invite": + post: + summary: Invite a signatory + operationId: post-v1-companies-company_uuid-signatories-invite + security: + - CompanyAccessAuth: [] + description: |- + Creates a signatory with minimal information. This signatory can be invited to provide more information through the [Update a signatory](ref:put-v1-companies-company_uuid-signatories-signatory_uuid) endpoint. This will start the identity verification process and allow the signatory to be verified to sign documents. + + ## Related guides + - [Signatory Events](doc:signatory-events) + + scope: `signatories:manage` + tags: + - Signatories + x-gusto-integration-type: + - embedded + parameters: + - name: company_uuid + in: path + description: The UUID of the company + required: true schema: - "$ref": "#/components/schemas/Benefit-Summary" - examples: - Example: - value: - start_date: '2022-01-01' - end_date: '2022-12-31' - description: Simple IRA - company_benefit_deduction: '60.0' - company_benefit_contribution: '30.0' - employees: - - uuid: 54b7114f-f5e2-4f4b-911b-5cd5ad9032b0 - company_benefit_deduction: '60.0' - company_benefit_contribution: '30.0' - benefit_deduction: '660.0' - benefit_contribution: '330.0' - gross_pay: '18000.0' - imputed_pay: '350.0' - payroll_benefits: - - payroll_uuid: 8cc3471b-9da5-47df-88ea-f238c7cb968b - payroll_type: Regular - check_date: '2022-03-01' - gross_pay: '3000.0' - imputed_pay: '70.0' - company_benefit_deduction: '10.0' - company_benefit_contribution: '5.0' - pay_period: - start_date: '2022-02-01' - end_date: '2022-02-28' - - payroll_uuid: d9d92786-722b-4bf7-bb32-79140418d349 - payroll_type: Bonus - check_date: '2022-12-31' - gross_pay: '3000.0' - imputed_pay: '70.0' - company_benefit_deduction: '20.0' - company_benefit_contribution: '10.0' - pay_period: - start_date: nil - end_date: nil - Company-Benefit-With-Employee-Benefits-Object: - description: Example response - content: - application/json: + type: string + - name: X-Gusto-API-Version + in: header schema: - "$ref": "#/components/schemas/Company-Benefit-With-Employee-Benefits" - examples: - Example: - value: - uuid: d2cec746-caee-464a-bcaf-00d93f7049c9 - version: 98jr3289h3298hr9329gf9egskt3kagri32qqgiqe3872 - active: true - description: Kaiser Permanente - source: external - partner_name: XYZ Corp - deletable: true - supports_percentage_amounts: true - responsible_for_employer_taxes: false - responsible_for_employee_w2: false - catch_up_type: elective - employee_benefits: - - employee_uuid: ae44a0b2-3c89-41e1-91c8-5f8224a779ca - company_benefit_uuid: d2cec746-caee-464a-bcaf-00d93f7049c9 - active: true - deduct_as_percentage: false - employee_deduction: 3.0 - company_contribution: 0.0 - uuid: 9988f241-9aee-4383-bfca-eac79cf58135 - contribution: - type: amount - value: 0.0 - Employee-Pay-Stubs-List: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Signatory" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Signatory-Invite-Request" + required: true + x-speakeasy-name-override: invite + "/v1/companies/{company_uuid}/signatories/{signatory_uuid}": + put: + summary: Update a signatory + operationId: put-v1-companies-company_uuid-signatories-signatory_uuid + security: + - CompanyAccessAuth: [] + description: |- + Updates a signatory that has been either invited or created. If the signatory has been created with minimal information through the [Invite a signatory](ref:post-v1-companies-company_uuid-signatories-invite) endpoint, then the first update must contain all attributes specified in the request body in order to start the identity verification process. + + ## Related guides + - [Signatory Events](doc:signatory-events) + + scope: `signatories:write` + tags: + - Signatories + x-gusto-integration-type: + - embedded + parameters: + - name: company_uuid + in: path + description: The UUID of the company + required: true schema: - type: array - items: - "$ref": "#/components/schemas/Employee-Pay-Stub" - examples: - Example: - value: - - uuid: d2cec746-caee-464a-bcaf-00d93f7049c9 - check_date: '2023-11-24' - gross_pay: 880.0 - net_pay: 541.02 - payroll_uuid: a039cafb-745e-4af4-bf1e-935a86fc18e0 - check_amount: 500.2 - description: OK - Company-Attachment-Object: - description: Example response - content: - application/json: + type: string + - name: signatory_uuid + in: path + description: The UUID of the signatory + required: true schema: - "$ref": "#/components/schemas/Company-Attachment" - examples: - Example: - value: - uuid: 1263eae5-4411-48d9-bd6d-18ed93082e65 - name: Company_Attachment_File.pdf - category: gep_notice - upload_time: '2022-02-01T00:00:00.000Z' - Company-Attachment-List: - description: Example response - content: - application/json: + type: string + - name: X-Gusto-API-Version + in: header schema: - type: array - items: - "$ref": "#/components/schemas/Company-Attachment" - examples: - Example: - value: - - uuid: 5de11791-98fd-4587-9ed0-d5d804b8e647 - name: Company_Attachment_File1.pdf - category: gep_notice - upload_time: '2022-02-01T00:00:00.000Z' - - uuid: 987058cc-23ee-46e9-81ef-5cee086cceca - name: Company_Attachment_File2.pdf - category: gep_notice - upload_time: '2022-02-01T00:00:00.000Z' - Signatory-List: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Signatory" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '409': + description: Conflict + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Signatory-Update-Request" + required: true + x-speakeasy-name-override: update + delete: + summary: Delete a signatory + operationId: delete-v1-companies-company_uuid-signatories-signatory_uuid + security: + - CompanyAccessAuth: [] + description: |- + Deletes a company signatory. + + ## Related guides + - [Signatory Events](doc:signatory-events) + + scope: `signatories:manage` + tags: + - Signatories + x-gusto-integration-type: + - embedded + parameters: + - name: company_uuid + in: path + description: The UUID of the company + required: true schema: - type: array - items: - "$ref": "#/components/schemas/Signatory" - examples: - Example: - value: - - uuid: f8c653dc-0094-41fb-8670-45d6399afade - first_name: Bob - last_name: Johnson - title: Owner - phone: '4239879876' - birthday: '2002-10-31' - email: olin.okuneva@denesik.us - is_admin: false - has_ssn: true - version: 49ea586f528411f5cfadfd54452b2423 - home_address: - street_1: 524 Roob Divide - street_2: Suite 565 - city: San Francisco - state: CA - zip: '94107' - country: USA - identity_verification_status: Skipped - External-Payroll-Object: - description: Example response - content: - application/json: + type: string + - name: signatory_uuid + in: path + description: The UUID of the signatory + required: true schema: - "$ref": "#/components/schemas/External-Payroll" - examples: - Example: - value: - uuid: c5fdae57-5483-4529-9aae-f0edceed92d4 - company_uuid: bcb305b0-2855-4025-8d22-e484a9e6b7c9 - check_date: '2022-06-03' - payment_period_start_date: '2022-05-15' - payment_period_end_date: '2022-05-30' - status: unprocessed - external_payroll_items: - - employee_uuid: 44f7cba9-7a3d-4f08-b7bd-6fcf5211f8ca - earnings: - - amount: '10000.0' - hours: '0.0' - earning_type: CompanyPayType - earning_id: 1 - - amount: '500.0' - hours: '0.0' - earning_type: CompanyEarningType - earning_id: 4 - benefits: - - benefit_id: 22 - company_contribution_amount: '100.0' - employee_deduction_amount: '50.0' - - benefit_id: 25 - company_contribution_amount: '0.0' - employee_deduction_amount: '300.0' - taxes: - - tax_id: 1 - amount: '400.0' - - tax_id: 2 - amount: '60.0' - applicable_earnings: - - earning_type: CompanyPayType - earning_id: 1 - name: Regular Wages - input_type: amount - category: default - - earning_type: CompanyEarningType - earning_id: 4 - name: Cash Tips - input_type: amount - category: default - applicable_benefits: - - id: 22 - description: Kaiser - active: true - - id: 25 - description: HSA - active: true - applicable_taxes: - - id: 1 - name: Federal Income Tax - employer_tax: false - resident_tax: false - - id: 2 - name: Social Security - employer_tax: false - resident_tax: false - metadata: - deletable: true - External-Payroll-List: - description: Example response - content: - application/json: + type: string + - name: X-Gusto-API-Version + in: header schema: - type: array - items: - "$ref": "#/components/schemas/External-Payroll-Basic" - examples: - Example: - value: - - uuid: c5fdae57-5483-4529-9aae-f0edceed92d4 - company_uuid: bcb305b0-2855-4025-8d22-e484a9e6b7c9 - check_date: '2022-06-03' - payment_period_start_date: '2022-05-15' - payment_period_end_date: '2022-05-30' - status: unprocessed - External-Payroll-Tax-Suggestions-List: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '204': + description: No Content + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: delete + "/v1/employees/{employee_id}/terminations": + get: + summary: Get terminations for an employee + operationId: get-v1-employees-employee_id-terminations + security: + - CompanyAccessAuth: [] + description: |- + Terminations are created whenever an employee is scheduled to leave the company. The only things required are an effective date (their last day of work) and whether they should receive their wages in a one-off termination payroll or with the rest of the company. + + Note that some states require employees to receive their final wages within 24 hours (unless they consent otherwise,) in which case running a one-off payroll may be the only option. + + scope: `employments:read` + tags: + - Employee Employments + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header + schema: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true schema: - type: array - items: - "$ref": "#/components/schemas/External-Payroll-Tax-Suggestions" - examples: - Example: - value: - - employee_uuid: d21848d5-446f-48a8-9430-30fbefeabda4 - tax_suggestions: - - tax_id: 1 - amount: '500.0' - - tax_id: 2 - amount: '100.0' - - tax_id: 4 - amount: '30.0' - Tax-Liabilities-List: - description: Example response - content: - application/json: + type: string + x-gusto-rswag: true + responses: + '200': + description: Successful + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Termination" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: employeeEmployments + x-speakeasy-name-override: getTerminations + post: + summary: Create an employee termination + operationId: post-v1-employees-employee_id-terminations + security: + - CompanyAccessAuth: [] + description: |- + Create a termination for an employee. The only things required are an effective date (their last day of work) and whether they should receive their wages in a one-off termination payroll or with the rest of the company. + + Note that some states require employees to receive their final wages within 24 hours (unless they consent otherwise,) in which case running a one-off payroll may be the only option. + + scope: `employments:write` + tags: + - Employee Employments + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header schema: - type: array - items: - "$ref": "#/components/schemas/Tax-Liabilities-Selections" - examples: - Example: - value: - - tax_id: 1 - tax_name: Federal Income Tax - last_unpaid_external_payroll_uuid: - possible_liabilities: - - liability_amount: '0.0' - payroll_check_date: - external_payroll_uuid: - - liability_amount: '3000.0' - payroll_check_date: '2022-06-01' - external_payroll_uuid: 1bf1efe1-72d4-4e6e-a181-611f3ea66435 - - tax_id: 2 - tax_name: Social Security - last_unpaid_external_payroll_uuid: - possible_liabilities: - - liability_amount: '0.0' - payroll_check_date: - external_payroll_uuid: - - liability_amount: '50.0' - payroll_check_date: '2022-06-01' - external_payroll_uuid: 1bf1efe1-72d4-4e6e-a181-611f3ea66435 - Flow-Object: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true schema: - "$ref": "#/components/schemas/Flow" - examples: - Example: - value: - url: https://flows.gusto-demo.com/flows/lO2BHHAMCScPVV9G5WEURW0Im_nP9mGYloQgjUWbenQ - Form-Object: - description: Example response - content: - application/json: + type: string + x-gusto-rswag: true + responses: + '201': + description: Created + content: + application/json: + schema: + "$ref": "#/components/schemas/Termination" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + properties: + effective_date: + type: string + description: The employee's last day of work. + example: '2020-06-30' + run_termination_payroll: + type: boolean + description: 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. + default: false + example: true + required: + - effective_date + example: + effective_date: '2020-06-30' + run_termination_payroll: false + required: true + x-speakeasy-name-override: createTermination + x-speakeasy-group: employeeEmployments + delete: + summary: Delete an employee termination + operationId: delete-v1-employees-employee_id-terminations + security: + - CompanyAccessAuth: [] + description: |- + Delete an employee termination. + + scope: `employments:write` + tags: + - Employee Employments + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header schema: - "$ref": "#/components/schemas/Form" - examples: - Example: - value: - uuid: 48cdd5ec-a4dd-4840-a424-ad79f38d8408 - name: company_direct_deposit - title: Direct Deposit Authorization - description: We need you to sign paperwork to authorize us to debit and credit your bank account and file and pay your taxes. - draft: false - quarter: - year: - document_content_type: application/pdf - requires_signing: true - Form-Object-Pdf: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true schema: - "$ref": "#/components/schemas/Form-Pdf" - examples: - Example: - value: - uuid: 48cdd5ec-a4dd-4840-a424-ad79f38d8408 - document_url: https://app.gusto-demo.com/assets/forms/7757842065202782/original/company_direct_deposit20211007-48226-gsqo8k.pdf?1633667020 - document_content_type: application/pdf - Form-List: - description: Example response - content: - application/json: + type: string + x-gusto-rswag: true + responses: + '204': + description: No Content + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-speakeasy-group: employeeEmployments + x-speakeasy-name-override: deleteTermination + "/v1/terminations/{employee_id}": + get: + summary: Get an employee termination + operationId: get-v1-terminations-employee_id + security: + - CompanyAccessAuth: [] + description: |- + Terminations are created whenever an employee is scheduled to leave the company. The only things required are an effective date (their last day of work) and whether they should receive their wages in a one-off termination payroll or with the rest of the company. + + Note that some states require employees to receive their final wages within 24 hours (unless they consent otherwise,) in which case running a one-off payroll may be the only option. + + scope: `employments:read` + tags: + - Employee Employments + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header schema: - type: array - items: - "$ref": "#/components/schemas/Form" - examples: - Example: - value: - - uuid: 48cdd5ec-a4dd-4840-a424-ad79f38d8408 - name: company_direct_deposit - title: Direct Deposit Authorization - description: We need you to sign paperwork to authorize us to debit and credit your bank account and file and pay your taxes. - draft: false - quarter: - year: - document_content_type: application/pdf - requires_signing: true - Industry-Object: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true schema: - "$ref": "#/components/schemas/Industry" - examples: - Example: - value: - company_uuid: 423dd616-6dbc-4724-938a-403f6217a933 - naics_code: '611420' - sic_codes: - - '8243' - title: Computer Training - Job-Object: - description: Example response - content: - application/json: + type: string + x-gusto-rswag: true + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Termination" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + put: + summary: Update an employee termination + operationId: put-v1-terminations-employee_id + security: + - CompanyAccessAuth: [] + description: |- + Terminations are created whenever an employee is scheduled to leave the company. The only things required are an effective date (their last day of work) and whether they should receive their wages in a one-off termination payroll or with the rest of the company. + + Note that some states require employees to receive their final wages within 24 hours (unless they consent otherwise,) in which case running a one-off payroll may be the only option. + + scope: `employments:write` + tags: + - Employee Employments + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header schema: - "$ref": "#/components/schemas/Job" - examples: - Example: - value: - uuid: d6d1035e-8a21-4e1d-89d5-fa894f9aff97 - version: d0e719137f89ca3dd334dd4cc248ffbb - employee_uuid: 948daac8-4355-4ece-9e2a-229898accb22 - current_compensation_uuid: ea8b0b90-1112-4f9d-bb93-bf029bc8537a - payment_unit: Year - primary: true - title: Account Director - state_wc_covered: null, - state_wc_class_code: null, - compensations: - - uuid: ea8b0b90-1112-4f9d-bb93-bf029bc8537a - version: 994b75511d1debac5d7e2ddeae13679f - payment_unit: Year - flsa_status: Exempt - job_uuid: d6d1035e-8a21-4e1d-89d5-fa894f9aff97 - effective_date: '2021-01-20' - rate: '78000.00' - adjust_for_minimum_wage: false - minimum_wages: [] - rate: '78000.00' - hire_date: '2020-01-20' - Job-List: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + description: The UUID of the employee + required: true schema: - type: array - items: - "$ref": "#/components/schemas/Job" - examples: - Example: - value: - - uuid: d6d1035e-8a21-4e1d-89d5-fa894f9aff97 - version: 6c0ed1521e8b86eb36bd4455a63a2dac - employee_uuid: 948daac8-4355-4ece-9e2a-229898accb22 - current_compensation_uuid: ea8b0b90-1112-4f9d-bb93-bf029bc8537a - payment_unit: Year - primary: true - title: Client Support Director - state_wc_covered: null, - state_wc_class_code: null, - compensations: - - uuid: ea8b0b90-1112-4f9d-bb93-bf029bc8537a - version: 2cd4b18662395eb53bcf80d5b5447f36 - payment_unit: Year - flsa_status: Exempt - job_uuid: d6d1035e-8a21-4e1d-89d5-fa894f9aff97 - effective_date: '2021-01-20' - rate: '70000.00' - adjust_for_minimum_wage: false - minimum_wages: [] - rate: '70000.00' - hire_date: '2020-01-20' - Employee-Federal-Tax-Object: - description: Example response - content: - application/json: + type: string + x-gusto-rswag: true + responses: + '200': + description: Successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Termination" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + allOf: + - "$ref": "#/components/schemas/Versionable-Required" + - type: object + properties: + effective_date: + type: string + description: The employee's last day of work. + example: '2020-06-30' + run_termination_payroll: + type: boolean + description: 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. + default: false + example: true + required: + - effective_date + example: + version: d487dd0b55dfcacdd920ccbdaeafa351 + effective_date: '2020-06-30' + run_termination_payroll: false + required: true + x-speakeasy-group: employeeEmployments + x-speakeasy-name-override: updateTermination + "/v1/companies/{company_uuid}/time_off/admin_approved_requests": + post: + summary: Create an admin-approved time off request + operationId: post-v1-companies-company_uuid-time_off-admin_approved_requests + security: + - CompanyAccessAuth: [] + description: |- + Create a pre-approved time off request on behalf of an employee (admin or system initiated). + The request is always created with approved status. + + scope: `time_off_requests:manage` + tags: + - Time Off Requests + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header schema: - "$ref": "#/components/schemas/Employee-Federal-Tax" - examples: - Example: - value: - version: 56a489ce86ed6c1b0f0cecc4050a0b01 - filing_status: Single - extra_withholding: '0.0' - two_jobs: true - dependents_amount: '0.0' - other_income: '0.0' - deductions: '0.0' - employee_id: 29 - w4_data_type: rev_2020_w4 - Location-Object: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true schema: - "$ref": "#/components/schemas/Location" - examples: - Example: - value: - company_uuid: 6bf7807c-a5a0-4f4d-b2e7-3fbb4b2299fb - version: 7d9753112507b9dda4fb97910f39b06e - phone_number: '5825710808' - uuid: 04552eb9-7829-4b18-ae96-6983552948df - street_1: 412 Kiera Stravenue - street_2: Suite 391 - city: San Francisco - state: CA - zip: '94107' - country: USA - active: true - filing_address: false - mailing_address: false - created_at: '2023-09-12T16:42:25.000-07:00' - updated_at: '2023-09-12T16:42:25.000-07:00' - Location-List: - description: Example response - content: - application/json: + type: string + x-gusto-rswag: true + responses: + '201': + description: created + content: + application/json: + schema: + "$ref": "#/components/schemas/Embedded-Time-Off-Request" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + properties: + employee_uuid: + type: string + description: The UUID of the employee + policy_uuid: + type: string + description: The UUID of the time off policy + employer_note: + type: string + description: A note from the employer about the request + approver_uuid: + type: string + description: The UUID of the approving admin. Defaults to the primary payroll admin. + start_date: + type: string + description: The start date of the time off request (YYYY-MM-DD) + end_date: + type: string + description: The end date of the time off request (YYYY-MM-DD) + days: + type: object + additionalProperties: + type: string + description: 'An object where keys are dates in YYYY-MM-DD format and values are hours as string decimals (e.g. {"2025-01-20": "8.000"})' + required: + - employee_uuid + - policy_uuid + - start_date + - end_date + - days + required: true + "/v1/companies/{company_uuid}/time_off/balances": + get: + summary: Get time off balances for a company + operationId: get-v1-companies-company_uuid-time_off-balances + security: + - CompanyAccessAuth: [] + description: |- + Get time off balances for all employees in a company + + scope: `time_off_requests:read` + tags: + - Time Off Requests + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header schema: - type: array - items: - "$ref": "#/components/schemas/Location" - examples: - Example: - value: - - company_uuid: 6bf7807c-a5a0-4f4d-b2e7-3fbb4b2299fb - version: 7d9753112507b9dda4fb97910f39b06e - phone_number: '5825710808' - uuid: 04552eb9-7829-4b18-ae96-6983552948df - street_1: 412 Kiera Stravenue - street_2: Suite 391 - city: San Francisco - state: CA - zip: '94107' - country: USA - active: true - filing_address: false - mailing_address: false - created_at: '2023-09-12T16:42:25.000-07:00' - updated_at: '2023-09-12T16:42:25.000-07:00' - - company_uuid: 6bf7807c-a5a0-4f4d-b2e7-3fbb4b2299fb - version: 15e6b9680e00f3122729e64e3cef3224 - phone_number: '2866070827' - uuid: fa94a2fd-11a8-4024-87ff-85c587d9d2b4 - street_1: 644 Fay Vista - street_2: Suite 842 - city: Richmond - state: VA - zip: '23218' - country: USA - active: true - filing_address: false - mailing_address: false - created_at: '2023-09-12T16:42:25.000-07:00' - updated_at: '2023-09-12T16:42:25.000-07:00' - Contractor-List: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true schema: - type: array - items: - "$ref": "#/components/schemas/Contractor" - examples: - Example: - value: - - uuid: c9fc1ad3-c107-4e7b-aa21-2dd4b00a7a07 - company_uuid: b7457fec-3b76-43bb-9c6e-69cca4688942 - wage_type: Fixed - is_active: false - version: 63859768485e218ccf8a449bb60f14ed - type: Individual - first_name: Kory - last_name: Gottlieb - middle_initial: P - business_name: - ein: - has_ein: false - has_ssn: true - department: Backup Dancer - department_uuid: 1802465d-4f68-4865-920c-1307ab095f12 - email: keira.west@mckenzie.org - start_date: '2022-01-01' - file_new_hire_report: false - work_state: - onboarded: true - onboarding_status: onboarding_completed - address: - street_1: 621 Jast Row - street_2: Apt. 281 - city: Coral Springs - state: FL - zip: '33065' - country: USA - hourly_rate: '0.00' - - uuid: 183a86f4-a803-4b38-9357-cd9b78e2560c - company_uuid: afdd5d98-581b-4fc0-b988-706b7d23b2a5 - wage_type: Fixed - is_active: true - version: 8aab307f1e8ed788697f8986346af559 - type: Business - first_name: - last_name: - middle_initial: - business_name: Labadie-Stroman - ein: XX-XXX0001 - has_ein: true - has_ssn: false - email: jonatan@kerluke.info - start_date: '2022-01-01' - onboarded: true - onboarding_status: onboarding_completed - address: - street_1: 1625 Bednar Center - street_2: Apt. 480 - city: Port Charlotte - state: FL - zip: '33954' - country: USA - hourly_rate: '0.00' - file_new_hire_report: false - work_state: - - uuid: ea1c2d65-b622-4899-bcb7-5cd0fe0232aa - id: 7757515807623484 - company_uuid: 281c763d-a2ba-4f51-b9e8-b1ed61576d62 - company_id: 7757616923763477 - wage_type: Fixed - is_active: true - version: b48c46abfed1487b873b442334b3c4ff - type: Individual - first_name: Chanel - last_name: Boyle - middle_initial: X - business_name: - ein: - has_ein: false - has_ssn: true - email: loyal@hettinger.biz - file_new_hire_report: true - work_state: TX - onboarded: true - onboarding_status: onboarding_completed - address: - street_1: 35913 Darrick Run - street_2: Apt. 913 - city: Cypress - state: TX - zip: '77433' - country: USA - hourly_rate: '0.00' - Created-Contractor-Object: - description: Example response - content: - application/json: + type: string + - name: employee_uuids + in: query + required: false + description: Filter by employee UUIDs (comma-separated) schema: - "$ref": "#/components/schemas/Contractor" - examples: - Individual Contractor: - value: - uuid: c9fc1ad3-c107-4e7b-aa21-2dd4b00a7a07 - company_uuid: b7457fec-3b76-43bb-9c6e-69cca4688942 - wage_type: Hourly - start_date: '2022-01-01' - is_active: false - version: 63859768485e218ccf8a449bb60f14ed - type: Individual - first_name: Kory - last_name: Gottlieb - middle_initial: P - business_name: - ein: - has_ein: false - has_ssn: true - department_uuid: - email: keira.west@mckenzie.org - file_new_hire_report: true - work_state: FL - onboarded: true - onboarding_status: onboarding_completed - address: - hourly_rate: '60.00' - payment_method: - Business Contractor: - value: - uuid: c7c0659c-21a6-4b4e-b74c-9252576fc68c - company_uuid: 0ec4ae6e-e436-460d-b63c-94a14503d16f - wage_type: Fixed - start_date: '2022-01-01' - is_active: true - version: 8aab307f1e8ed788697f8986346af559 - type: Business - first_name: - last_name: - middle_initial: - business_name: Labadie-Stroman - ein: XX-XXX0001 - has_ein: true - has_ssn: false - email: jonatan@kerluke.info - file_new_hire_report: false - work_state: - onboarded: false - onboarding_status: admin_onboarding_incomplete - address: - hourly_rate: '0.00' - payment_method: - Contractor-Object: - description: Example response - content: - application/json: + type: string + - name: policy_uuids + in: query + required: false + description: Filter by time off policy UUIDs (comma-separated) schema: - "$ref": "#/components/schemas/Contractor" - examples: - Individual Contractor: - value: - uuid: c9fc1ad3-c107-4e7b-aa21-2dd4b00a7a07 - company_uuid: b7457fec-3b76-43bb-9c6e-69cca4688942 - wage_type: Hourly - start_date: '2022-01-01' - is_active: false - version: 63859768485e218ccf8a449bb60f14ed - type: Individual - first_name: Kory - last_name: Gottlieb - middle_initial: P - business_name: - ein: - has_ein: false - has_ssn: true - department_uuid: 56260b3d-c375-415c-b77a-75d99f717193 - email: keira.west@mckenzie.org - file_new_hire_report: true - work_state: FL - onboarded: true - onboarding_status: onboarding_completed - address: - street_1: 621 Jast Row - street_2: Apt. 281 - city: Coral Springs - state: FL - zip: '33065' - country: USA - hourly_rate: '60.00' - payment_method: Direct Deposit - Business Contractor: - value: - uuid: c7c0659c-21a6-4b4e-b74c-9252576fc68c - company_uuid: 0ec4ae6e-e436-460d-b63c-94a14503d16f - wage_type: Fixed - start_date: '2022-01-01' - is_active: true - version: 8aab307f1e8ed788697f8986346af559 - type: Business - first_name: - last_name: - middle_initial: - business_name: Labadie-Stroman - ein: XX-XXX0001 - has_ein: true - has_ssn: false - email: jonatan@kerluke.info - file_new_hire_report: false - work_state: - onboarded: false - onboarding_status: admin_onboarding_incomplete - address: - hourly_rate: '0.00' - payment_method: Direct Deposit - Contractor-Onboarding-Status-Object: - description: Example response. - content: - application/json: + type: string + - name: page + in: query + required: false + description: The page that is requested schema: - "$ref": "#/components/schemas/Contractor-Onboarding-Status" - examples: - Example: - value: - uuid: bc57832c-d8bc-43a7-ae99-3a03380ff037 - onboarding_status: admin_onboarding_incomplete - onboarding_steps: - - title: Basic details - id: basic_details - required: true - completed: false - requirements: [] - - title: Enter compensation details - id: compensation_details - required: true - completed: false - requirements: [] - - title: Add an address - id: add_address - required: true - completed: false - requirements: [] - - title: Payment details - id: payment_details - required: true - completed: false - requirements: [] - - title: Sign and acknowledge documents - id: sign_documents - required: false - completed: false - requirements: - - basic_details, - - add_address - - title: File new hire report - id: file_new_hire_report - required: false - completed: false - requirements: - - basic_details - Contractor-Payment-Object: - description: Example response - content: - application/json: + type: integer + - name: per + in: query + required: false + description: Number of objects per page schema: - "$ref": "#/components/schemas/Contractor-Payment" - examples: - Example: - value: - uuid: 04552eb9-7829-4b18-ae96-6983552948df - contractor_uuid: bc57832c-d8bc-43a7-ae99-3a03380ff037 - bonus: '20.0' - date: '2020-10-19' - hours: '40.0' - payment_method: Direct Deposit - reimbursement: '100.0' - status: Unfunded - hourly_rate: '18.0' - may_cancel: true - wage: '0.0' - wage_type: Hourly - wage_total: '740.00' - Contractor-Payment-Group-List: - description: List of Contractor Payment Groups - content: - application/json: + type: integer + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Embedded-Time-Off-Balance" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + "/v1/companies/{company_uuid}/time_off/requests": + get: + summary: List time off requests for a company + operationId: get-v1-companies-company_uuid-time_off-requests + security: + - CompanyAccessAuth: [] + description: |- + Get all time off requests for a company. Supports filtering by status, employee, and date ranges. + + Possible statuses: + - `pending` — awaiting approval + - `approved` — approved by an admin but not yet processed in a payroll + - `declined` — declined by an admin + - `consumed` — processed in a completed payroll + + Allowed values for `status`: pending, approved, declined, consumed. + + scope: `time_off_requests:read` + tags: + - Time Off Requests + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header schema: - type: array - items: - "$ref": "#/components/schemas/Contractor-Payment-Group-Minimal" - examples: - Example: - value: - - uuid: 7f2337f9-9b78-44b9-aeed-be4777b833a8 - company_uuid: c54046f7-1be4-4c54-8194-f4842c30c86d - check_date: '2024-03-15' - debit_date: '2024-03-11' - status: Funded - creation_token: a51a3500-3200-43af-a738-169d4b66a9db - totals: - debit_amount: '740.00' - wage_amount: '720.00' - reimbursement_amount: '20.00' - - uuid: 56260b3d-c375-415c-b77a-75d99f717193 - company_uuid: c54046f7-1be4-4c54-8194-f4842c30c86d - check_date: '2024-05-02' - debit_date: '2024-04-26' - status: Unfunded - creation_token: 45ef81bb-ae24-4ad1-b2c6-6e563a4c30ed - totals: - debit_amount: '2365.00' - wage_amount: '2270.00' - reimbursement_amount: '95.00' - Contractor-Payment-Group-Object: - description: Full contractor payment group object - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true schema: - "$ref": "#/components/schemas/Contractor-Payment-Group" - examples: - Example: - value: - uuid: f693e034-d833-46e3-88d4-2c820c383c57 - company_uuid: c54046f7-1be4-4c54-8194-f4842c30c86d - check_date: '2024-05-07' - debit_date: '2024-05-01' - status: Unfunded - creation_token: 45ef81bb-ae24-4ad1-b2c6-6e563a4c30ed - contractor_payments: - - uuid: 630dc982-f498-4ebc-a6dc-4d76711027ce - contractor_uuid: 2e6d0970-31bf-47ce-bdb4-713e4207ecf4 - bonus: '0.0' - hours: '40.0' - hourly_rate: '18.0' - may_cancel: false - payment_method: Direct Deposit - reimbursement: '75.0' - status: Unfunded - wage: '0.0' - wage_type: Hourly - wage_total: '720.0' - - uuid: 12f51eba-d653-4357-8c05-1f1f8d0fd5e3 - contractor_uuid: a975fda0-fcf5-469a-a5fd-06e43d1cd99d - bonus: '0.0' - hours: '0.0' - hourly_rate: '0.0' - may_cancel: false - payment_method: Check - reimbursement: '0.0' - status: Unfunded - wage: '1500.0' - wage_type: Fixed - wage_total: '1500.0' - totals: - amount: '2295.0' - debit_amount: '2295.0' - wage_amount: '2220.0' - reimbursement_amount: '75.0' - Contractor-Payment-Group-Null-Uuid-Object: - description: Full contractor payment group object with null uuid - content: - application/json: + type: string + - name: employee_uuids + in: query + required: false + description: Filter by employee UUIDs. Comma-separated for multiple values. schema: - allOf: - - "$ref": "#/components/schemas/Contractor-Payment-Group" - - type: object - properties: - uuid: - type: - - string - - 'null' - examples: - Example: - value: - uuid: - company_uuid: c54046f7-1be4-4c54-8194-f4842c30c86d - check_date: '2024-05-07' - debit_date: '2024-05-01' - status: Unfunded - creation_token: nil - contractor_payments: - - uuid: nil - contractor_uuid: 2e6d0970-31bf-47ce-bdb4-713e4207ecf4 - bonus: '0.0' - hours: '40.0' - hourly_rate: '18.0' - may_cancel: false - payment_method: Direct Deposit - reimbursement: '75.0' - status: Unfunded - wage: '0.0' - wage_type: Hourly - wage_total: '720.0' - - uuid: nil - contractor_uuid: a975fda0-fcf5-469a-a5fd-06e43d1cd99d - bonus: '0.0' - hours: '0.0' - hourly_rate: '0.0' - may_cancel: false - payment_method: Check - reimbursement: '0.0' - status: Unfunded - wage: '1500.0' - wage_type: Fixed - wage_total: '1500.0' - totals: - amount: '2295.0' - debit_amount: '2295.0' - wage_amount: '2220.0' - reimbursement_amount: '75.0' - Contractor-Payment-Method-Object: - description: Example response - content: - application/json: + type: string + - name: status + in: query + required: false + description: Filter by request status. Comma-separated for multiple values (e.g. pending,approved,declined,consumed). schema: - "$ref": "#/components/schemas/Contractor-Payment-Method" - examples: - Example: - value: - version: 63859768485e218ccf8a449bb60f14ed - type: Direct Deposit - split_by: Percentage - splits: - - uuid: e88f9436-b74e-49a8-87e9-777b9bfe715e - name: BoA Checking Account - hidden_account_number: XXXX0992 - priority: 1 - split_amount: 100 - Compensation-Object: - description: Example response - content: - application/json: + type: string + - name: start_date + in: query + required: false + description: Filter requests that overlap with this start date schema: - "$ref": "#/components/schemas/Compensation" - examples: - Exempt: - value: - uuid: db57832c-d8bc-43a7-ae99-0a04480ff037 - version: 98jr3289h3298hr9329gf9egskt3kagri32qqgiqe3872 - job_uuid: d8f8fbe7-496d-4b69-86f0-1e2d1b73a086 - rate: '60000.00' - payment_unit: Year - flsa_status: Exempt - effective_date: '2020-12-11' - adjust_for_minimum_wage: false - minimum_wages: [] - Minimum Wage Adjusted: - value: - uuid: a4d9ba9c-32cc-4cc1-a5bc-6ef4cd653e7a - version: cc59bd3879d655fb940a1f6b675f2ad9 - job_uuid: d8f8fbe7-496d-4b69-86f0-1e2d1b73a086 - rate: '5.00' - payment_unit: Hour - flsa_status: Nonexempt - effective_date: '2018-12-11' - adjust_for_minimum_wage: true - minimum_wages: - - uuid: edeea5af-ecd6-4b1c-b5de-5cff2d302738 - wage: '7.25' - effective_date: '2018-12-11' - Compensation-List: - description: Example response - content: - application/json: + type: string + - name: end_date + in: query + required: false + description: Filter requests that overlap with this end date schema: - type: array - items: - "$ref": "#/components/schemas/Compensation" - examples: - Example: - value: - - uuid: db57832c-d8bc-43a7-ae99-0a04480ff037 - version: 98jr3289h3298hr9329gf9egskt3kagri32qqgiqe3872 - job_uuid: d8f8fbe7-496d-4b69-86f0-1e2d1b73a086 - rate: '70.00' - payment_unit: Hour - flsa_status: Nonexempt - effective_date: '2020-12-11' - adjust_for_minimum_wage: false - minimum_wages: [] - - id: 1363316536327003 - job_id: 1123581321345589 - uuid: a4d9ba9c-32cc-4cc1-a5bc-6ef4cd653e7a - version: cc59bd3879d655fb940a1f6b675f2ad9 - job_uuid: d8f8fbe7-496d-4b69-86f0-1e2d1b73a086 - payment_unit: Hour - flsa_status: Nonexempt - effective_date: '2018-12-11' - rate: '5.00' - adjust_for_minimum_wage: true - minimum_wages: - - uuid: edeea5af-ecd6-4b1c-b5de-5cff2d302738 - wage: '7.25' - effective_date: '2018-12-11' - Garnishment-Object: - description: Example response - content: - application/json: + type: string + - name: sort_order + in: query + required: false + description: Sort order by start_date (asc or desc, defaults to desc) schema: - "$ref": "#/components/schemas/Garnishment" - examples: - Example: - value: - uuid: 4c7841a2-1363-497e-bc0f-664703c7484f - version: 52b7c567242cb7452e89ba2bc02cb476 - employee_uuid: a6b53294-f871-4db2-bbd4-8c3d1fe56440 - active: true - amount: '8.00' - description: Company loan to employee - court_ordered: false - times: 5 - recurring: false - annual_maximum: - total_amount: - pay_period_maximum: '100.00' - deduct_as_percentage: true - garnishment_type: - child_support: - Child-Support-Example: - value: - uuid: 4c7841a2-1363-497e-bc0f-664703c7481a - version: 52b7c567242cb7452e89ba2bc02cb383 - employee_uuid: a6b53294-f871-4db2-bbd4-8c3d1fe56440 - active: true - amount: '40.00' - description: Child support - AZ28319 - court_ordered: true - times: - recurring: true - annual_maximum: - total_amount: - pay_period_maximum: '400.00' - deduct_as_percentage: true - garnishment_type: child_support - child_support: - state: AZ - payment_period: Monthly - case_number: AZ28319 - order_number: - remittance_number: - fips_code: '04000' - Garnishment-List: - description: Example response - content: - application/json: + type: string + - name: page + in: query + required: false + description: The page that is requested schema: - type: array - items: - "$ref": "#/components/schemas/Garnishment" - examples: - Example: - value: - - uuid: 4c7841a2-1363-497e-bc0f-664703c7484f - version: 52b7c567242cb7452e89ba2bc02cb476 - employee_uuid: a6b53294-f871-4db2-bbd4-8c3d1fe56440 - active: true - amount: '8.00' - description: Company loan to employee - court_ordered: false - times: 5 - recurring: false - annual_maximum: - total_amount: - pay_period_maximum: '100.00' - deduct_as_percentage: true - garnishment_type: - child_support: - - uuid: 4c7841a2-1363-497e-bc0f-664703c7481a - version: 52b7c567242cb7452e89ba2bc02cb383 - employee_uuid: a6b53294-f871-4db2-bbd4-8c3d1fe56440 - active: true - amount: '40.00' - description: Child support - AZ28319 - court_ordered: true - times: - recurring: true - annual_maximum: - total_amount: - pay_period_maximum: '400.00' - deduct_as_percentage: true - garnishment_type: child_support - child_support: - state: AZ - payment_period: Monthly - case_number: AZ28319 - order_number: - remittance_number: - fips_code: '04000' - Child-Support-Data-Object: - description: Example response - content: - application/json: + type: integer + - name: per + in: query + required: false + description: Number of objects per page schema: - "$ref": "#/components/schemas/Child-Support-Data" - examples: - Example: - value: - agencies: - - state: AK - name: Alaska Child Support Services Division - manual_payment_required: false - fips_codes: - - county: - code: '0200000' - required_attributes: - - key: case_number - label: CSE Case Number - - state: OH - name: Ohio Office of Child Support Enforcement - manual_payment_required: false - fips_codes: - - county: - code: '39000' - required_attributes: - - key: case_number - label: CSE Case Number - - key: order_number - label: Order Identifier - Employee-Onboarding-Documents-Object: - description: Example response - content: - application/json: + type: integer + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Embedded-Time-Off-Request" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + post: + summary: Create a time off request + operationId: post-v1-companies-company_uuid-time_off-requests + security: + - CompanyAccessAuth: [] + description: |- + Create a time off request for an employee + + scope: `time_off_requests:write` + tags: + - Time Off Requests + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header schema: - "$ref": "#/components/schemas/Employee-Onboarding-Document" - examples: - Example: - value: - i9_document: true - I9-Authorization-Object: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true schema: - "$ref": "#/components/schemas/I9-Authorization" - examples: - Example: - value: - - version: 6ae7ff720107b356bf13b1606f60b24f - uuid: 7f2337f9-9b78-44b9-aeed-be4777b833a8 - form_uuid: c54046f7-1be4-4c54-8194-f4842c30c86d - authorization_status: alien - document_type: foreign_passport - has_document_number: true - expiration_date: '2027-01-01' - country: Panama - employer_signed: false - employee_signed: false - additional_info: Notes - alt_procedure: false - I9-Authorization-Documents-Object: - description: Example response - content: - application/json: + type: string + x-gusto-rswag: true + responses: + '201': + description: created + content: + application/json: + schema: + "$ref": "#/components/schemas/Embedded-Time-Off-Request" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + properties: + employee_uuid: + type: string + description: The UUID of the employee + policy_uuid: + type: string + description: The UUID of the time off policy + employee_note: + type: string + description: A note from the employee about the request + start_date: + type: string + description: The start date of the time off request (YYYY-MM-DD) + end_date: + type: string + description: The end date of the time off request (YYYY-MM-DD) + days: + type: object + additionalProperties: + type: string + description: 'An object where keys are dates in YYYY-MM-DD format and values are hours as string decimals (e.g. {"2025-01-20": "8.000"})' + required: + - employee_uuid + - policy_uuid + - start_date + - end_date + - days + required: true + "/v1/companies/{company_uuid}/time_off/requests/preview": + post: + summary: Preview a time off request + operationId: post-v1-companies-company_uuid-time_off-requests-preview + security: + - CompanyAccessAuth: [] + description: |- + Preview a time off request to see balance impact before creating + + scope: `time_off_requests:read` + tags: + - Time Off Requests + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header schema: - type: array - items: - "$ref": "#/components/schemas/I9-Authorization-Document" - examples: - Example: - value: - - uuid: 7f2337f9-9b78-44b9-aeed-be4777b833a8 - document_type: driver_license - issuing_authority: USA - expiration_date: '2027-01-01' - document_title: Driver's license - - uuid: 9p2337f9-9b78-44b9-aeed-be4777b833a8 - document_type: ssn_card - issuing_authority: USA - document_title: Social Security card - I9-Authorization-Document-Options-Object: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true schema: - type: array - items: - "$ref": "#/components/schemas/I9-Authorization-Document-Option" - examples: - Example: - value: - - section: A - description: Foreign passport - document_type: foreign_passport_w_i94 - document_title: - - Foreign passport - common_choice: true - - section: B - description: Driver’s license or state-issued ID card - document_type: driver_license - document_title: - - Driver's license - - State ID card - common_choice: true - - section: C - description: Social Security card - document_type: ssn_card - document_title: - - Social Security card - common_choice: true - Termination-Object: - description: Example Response - content: - application/json: + type: string + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Embedded-Time-Off-Request-Preview" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + properties: + request_uuid: + type: string + description: The UUID of an existing time off request to preview changes for + employee_uuid: + type: string + description: The UUID of the employee + policy_uuid: + type: string + description: The UUID of the time off policy + start_date: + type: string + description: The start date of the time off request (YYYY-MM-DD) + end_date: + type: string + description: The end date of the time off request (YYYY-MM-DD) + days: + type: object + additionalProperties: + type: string + description: 'An object where keys are dates in YYYY-MM-DD format and values are hours as string decimals (e.g. {"2025-01-20": "8.000"})' + required: + - employee_uuid + - policy_uuid + - start_date + - end_date + - days + required: true + "/v1/time_off/requests/{time_off_request_uuid}": + get: + summary: Get a time off request + operationId: get-v1-time_off-requests-time_off_request_uuid + security: + - CompanyAccessAuth: [] + description: |- + Get a single time off request by UUID + + scope: `time_off_requests:read` + tags: + - Time Off Requests + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header schema: - "$ref": "#/components/schemas/Termination" - examples: - Example: - value: - uuid: da441196-43a9-4d23-ad5d-f37ce6bb99c0 - employee_uuid: da441196-43a9-4d23-ad5d-f37ce6bb99c0 - version: d487dd0b55dfcacdd920ccbdaeafa351 - active: true - cancelable: true - effective_date: '2020-03-10' - run_termination_payroll: false - Termination-List: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: time_off_request_uuid + in: path + description: The UUID of the time off request + required: true schema: - type: array - items: - "$ref": "#/components/schemas/Termination" - examples: - Example: - value: - - uuid: da441196-43a9-4d23-ad5d-f37ce6bb99c0 - employee_uuid: da441196-43a9-4d23-ad5d-f37ce6bb99c0 - version: d487dd0b55dfcacdd920ccbdaeafa351 - active: true - cancelable: true - effective_date: '2020-03-10' - run_termination_payroll: false - Pay-Period-List: - description: Example response - content: - application/json: + type: string + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Embedded-Time-Off-Request" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + delete: + summary: Delete a time off request + operationId: delete-v1-time_off-requests-time_off_request_uuid + security: + - CompanyAccessAuth: [] + description: |- + Delete a time off request + + scope: `time_off_requests:write` + tags: + - Time Off Requests + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header schema: - type: array - items: - "$ref": "#/components/schemas/Pay-Period" - examples: - Example: - value: - - start_date: '2020-01-11' - end_date: '2020-01-24' - pay_schedule_uuid: 00ebc4a4-ec88-4435-8f45-c505bb63e501 - payroll: - payroll_uuid: bfd8aad4-9c3f-4ca3-b072-a1b2b3ea689f - check_date: '2020-01-30' - processed: true - payroll_deadline: '2020-01-28' - payroll_type: regular - - start_date: '2020-12-12' - end_date: '2020-12-25' - pay_schedule_uuid: cb53db72-612f-4eb1-9b85-389e79cfa510 - payroll: - payroll_uuid: 7ed29b45-4bb1-4d38-bd94-4d607d49fd21 - check_date: '2020-12-30' - processed: true - payroll_deadline: '2020-12-28' - payroll_type: regular - Pay-Schedule-Object: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: time_off_request_uuid + in: path + description: The UUID of the time off request + required: true schema: - "$ref": "#/components/schemas/Pay-Schedule-Show" - examples: - Example: - value: - uuid: f2a69c38-e2f9-4e31-b5c5-4754fc60a052 - version: 68934a3e9455fa72420237eb05902327 - frequency: Twice per month - anchor_pay_date: '2020-05-15' - anchor_end_of_pay_period: '2020-05-08' - day_1: 15 - day_2: 31 - name: Engineering - custom_name: A new monthly pay schedule - auto_payroll: false - active: true - Pay-Schedule-Show-Response: - description: Example response - content: - application/json: + type: string + x-gusto-rswag: true + responses: + '204': + description: no content + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + "/v1/time_off/requests/{time_off_request_uuid}/approve": + put: + summary: Approve a time off request + operationId: put-v1-time_off-requests-time_off_request_uuid-approve + security: + - CompanyAccessAuth: [] + description: |- + Approve a pending time off request. Optionally override the dates and hours. + + Only requests with a `pending` status can be approved. Attempting to approve a request that has already been `declined` or `consumed` will fail with a 422 error. + + scope: `time_off_requests:manage` + tags: + - Time Off Requests + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header schema: - allOf: - - "$ref": "#/components/schemas/Pay-Schedule-Show" - - "$ref": "#/components/schemas/Versionable-Required" - examples: - Example: - value: - uuid: f2a69c38-e2f9-4e31-b5c5-4754fc60a052 - version: 68934a3e9455fa72420237eb05902327 - frequency: Twice per month - anchor_pay_date: '2020-05-15' - anchor_end_of_pay_period: '2020-05-08' - day_1: 15 - day_2: 31 - name: Engineering - custom_name: A new monthly pay schedule - auto_payroll: false - active: true - auto_payroll_enablement_blockers: - - key: missing_state_tax_requirements - metadata: - - states: - - CO - - CA - - NY - Pay-Schedule-Create-Update-Object: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: time_off_request_uuid + in: path + description: The UUID of the time off request + required: true schema: - "$ref": "#/components/schemas/Pay-Schedule-Create-Update" - examples: - Example: - value: - uuid: f2a69c38-e2f9-4e31-b5c5-4754fc60a052 - frequency: Twice per month - anchor_pay_date: '2020-05-15' - anchor_end_of_pay_period: '2020-05-08' - day_1: 15 - day_2: 31 - name: Engineering - custom_name: A new monthly pay schedule - auto_payroll: false - active: true - Pay-Schedule-List: - description: Example response - content: - application/json: + type: string + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Embedded-Time-Off-Request" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + properties: + approver_uuid: + type: string + description: The UUID of the admin approving the request. Defaults to the company's primary payroll admin. + employer_note: + type: string + description: A note from the employer about the approval + days: + type: object + additionalProperties: + type: string + description: 'An object where keys are dates in YYYY-MM-DD format and values are hours as string decimals (e.g. {"2025-01-20": "8.000"}). Use this to override the requested hours.' + "/v1/time_off/requests/{time_off_request_uuid}/decline": + put: + summary: Decline a time off request + operationId: put-v1-time_off-requests-time_off_request_uuid-decline + security: + - CompanyAccessAuth: [] + description: |- + Decline a pending or approved time off request. Requires an employer_note. + + scope: `time_off_requests:manage` + tags: + - Time Off Requests + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header schema: - "$ref": "#/components/schemas/Pay-Schedule-Show-Response" - examples: - Example: - value: - - uuid: 2097fe08-407a-46d7-b35c-a32402a2355e - version: 68934a3e9455fa72420237eb05902327 - frequency: Twice per month - anchor_pay_date: '2020-05-15' - anchor_end_of_pay_period: '2020-05-08' - day_1: 15 - day_2: 31 - name: Engineering - custom_name: Engineering department pay schedule - auto_payroll: false - active: true - - uuid: 8fc9f556-74fa-4271-97f6-4bfbfc5a5352 - version: 68934a3e9455fa72420237eb05902320 - frequency: Monthly - anchor_pay_date: '2020-05-31' - day_1: 31 - day_2: - name: Sales - custom_name: Sales department monthly schedule - auto_payroll: false - active: false - - uuid: 0e07d35a-af11-4123-bfcb-4dd5f2f12ee1 - version: 68934a3e9455fa72420237eb05902323 - frequency: Monthly - anchor_pay_date: '2020-05-31' - day_1: 31 - day_2: - name: Staff - custom_name: Staff department pay schedule - auto_payroll: true - active: false - Benefit-Type-Requirements-Object: - description: Benefit type requirements response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: time_off_request_uuid + in: path + description: The UUID of the time off request + required: true schema: - "$ref": "#/components/schemas/Benefit-Type-Requirements" - examples: - Example: - value: - employee_deduction: - required: true - editable: true - default_value: - choices: - contribution: - required: true - editable: true - default_value: - type: percentage - value: 2 - choices: - - percentage - deduct_as_percentage: - required: true - editable: true - default_value: - choices: - catch_up: - required: true - editable: true - default_value: - choices: - limit_option: - required: false - editable: false - default_value: - choices: - company_contribution_annual_maximum: - required: false - editable: false - default_value: - choices: - coverage_salary_multiplier: - required: false - editable: false - default_value: - choices: - coverage_amount: - required: false - editable: false - default_value: - choices: - Supported-Benefit-Object: - description: Supported benefit response - content: - application/json: + type: string + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Embedded-Time-Off-Request" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + properties: + employer_note: + type: string + description: Note explaining why the request was declined + approver_uuid: + type: string + description: The UUID of the admin declining the request. Defaults to the company's primary payroll admin. + required: + - employer_note + required: true + "/v1/companies/{company_uuid}/time_off_policies": + get: + summary: Get all time off policies for a company + operationId: get-v1-companies-company_uuid-time_off_policies + security: + - CompanyAccessAuth: [] + description: |- + Get all time off policies for a company + + scope: `time_off_policies:read` + tags: + - Time Off Policies + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header schema: - "$ref": "#/components/schemas/Supported-Benefit" - examples: - Example: - value: - benefit_type: 1 - name: Medical Insurance - description: Deductions and contributions for Medical Insurance - pretax: true - posttax: false - imputed: false - healthcare: true - retirement: false - yearly_limit: false - Supported-Benefit-List: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true schema: - type: array - items: - "$ref": "#/components/schemas/Supported-Benefit" - examples: - Supported Benefits: - value: - - benefit_type: 1 - name: Medical Insurance - description: Deductions and contributions for Medical Insurance - pretax: true - posttax: false - imputed: false - healthcare: true - retirement: false - yearly_limit: false - category: Health - - benefit_type: 2 - name: Dental Insurance - description: Deductions and contributions for Dental Insurance - pretax: true - posttax: false - imputed: false - healthcare: true - retirement: false - yearly_limit: false - category: Health - - benefit_type: 3 - name: Vision Insurance - description: Deductions and contributions for Vision Insurance - pretax: true - posttax: false - imputed: false - healthcare: true - retirement: false - yearly_limit: false - category: Health - - benefit_type: 6 - name: Health Savings Account - description: Health Savings Accounts (HSA) allow employees to be reimbursed for qualified medical expenses. Contributions are pre-tax and lower the total amount of tax paid by employees and the employer. Employers may also make tax-free contributions to employees' HSA. Remaining balances are carried over in next year. - pretax: true - posttax: false - imputed: false - healthcare: false - retirement: false - yearly_limit: true - category: Health - - benefit_type: 7 - name: Health FSA - description: Flexible Spending Accounts (FSA) allow employees to be reimbursed for qualified medical expenses. Contributions are pre-tax and lower the total amount of tax paid by employees and the employer. Employers may also make tax-free contributions to employees' FSA. Remaining balances are not carried over in next year. - pretax: true - posttax: false - imputed: false - healthcare: false - retirement: false - yearly_limit: true - category: Health - - benefit_type: 11 - name: Dependent Care FSA - description: Dependent Care FSA reimburses employees for expenses to care for dependents while the employee is at work (e.g. Daycares). Contributions are pre-tax and lower the total amount of tax paid by employees and the employer. Employers may also make tax-free contributions to employee FSA. Remaining balances are not carried over to the next year. Single parents or Married couples filing a joint return can elect up to $5000 per year. Married couples filing separate returns are limited to $2500 elections each. - pretax: true - posttax: false - imputed: false - healthcare: false - retirement: false - yearly_limit: true - category: Health - - benefit_type: 8 - name: SIMPLE IRA - description: The SIMPLE IRA is a tax-deferred retirement savings plan for employees. It is often used by small businesses as an alternative to 401(k) due to its relatively low operating cost. Employers are required to contribute a specific percentage to an employee's SIMPLE IRA. - pretax: true - posttax: false - imputed: false - healthcare: false - retirement: true - yearly_limit: true - category: Savings and Retirement - - benefit_type: 105 - name: Roth 401(k) - description: Roth 401(k) is an after-tax savings plan for employees. The standard maximum is $18,000, or $24,000 for employees over 50 years old. - pretax: false - posttax: true - imputed: false - healthcare: false - retirement: true - yearly_limit: true - category: Savings and Retirement - - benefit_type: 110 - name: Roth 403(b) - description: Roth 403(b) is an after-tax savings plan for certain clerics, employees of public schools, and employees of other types of tax-exempt organizations. Contributions made by employees are taxable for federal and state withholding. Often, employers contribute additional pre-tax dollars to the employee’s Roth account to encourage saving for retirement. - pretax: false - posttax: true - imputed: false - healthcare: false - retirement: true - yearly_limit: true - category: Savings and Retirement - - benefit_type: 5 - name: 401(k) - description: 401(k) is tax-deferred retirement savings plan for employees. The standard maximum is $18,000, or $24,000 for employees over 50 years old. - pretax: true - posttax: false - imputed: false - healthcare: false - retirement: true - yearly_limit: true - category: Savings and Retirement - - benefit_type: 9 - name: 403(b) - description: 403(b) is tax-deferred retirement savings plan for certain clerics, employees of public schools, and employees of other types of tax-exempt organizations. - pretax: true - posttax: false - imputed: false - healthcare: false - retirement: true - yearly_limit: true - category: Savings and Retirement - - benefit_type: 108 - name: SEP-IRA - description: A SEP-IRA is a pre-tax retirement savings plan where only the employer contributes. It is often used by small businesses as an alternative to 401(k) due to its relatively low operating cost. Employers are required to contribute the same percentage to all enrolled employees, with a maximum contribution of 25% of the employee’s compensation. - pretax: true - posttax: false - imputed: false - healthcare: false - retirement: true - yearly_limit: true - category: Savings and Retirement - - benefit_type: 109 - name: SARSEP - description: A SARSEP is a pre-tax retirement savings plan used by small businesses as an alternative to 401(k) due to its relatively low operating cost. While new SARSEP plans are not available, there are still some companies that are grandfathered into the plan. Employers are required to contribute the same percentage to all enrolled employees, with a maximum contribution of 25% of the employee’s compensation. - pretax: true - posttax: false - imputed: false - healthcare: false - retirement: true - yearly_limit: true - category: Savings and Retirement - - benefit_type: 107 - name: Group-Term Life Insurance - description: Group-Term Life Insurance for coverage in excess of $50,000 per employee is a taxable fringe benefit. See IRS Publication 15-B to determine the dollar value of the excess coverage. - pretax: false - posttax: true - imputed: true - healthcare: false - retirement: false - yearly_limit: false - category: Health - - benefit_type: 10 - name: Commuter Benefits (pre-tax) - description: Tax-free commuter benefits for transit, vanpooling, bicycling, and work-related parking costs. The annual maximum contribution for this pre-tax benefit is in the IRS publication 15-B. - pretax: true - posttax: false - imputed: false - healthcare: false - retirement: false - yearly_limit: false - category: Transportation - - benefit_type: 106 - name: Personal Use of Company Car - description: When an employee uses a company-owned car for personal matters, it is considered taxable benefit provided in-kind. - pretax: false - posttax: true - imputed: true - healthcare: false - retirement: false - yearly_limit: false - category: Transportation - - benefit_type: 111 - name: 529 College Savings - description: 529 College Savings is an after-tax savings plan for employees designed to encourage saving for future college costs. This benefit should be reported as a taxable benefit and will therefore be taxed. - pretax: false - posttax: true - imputed: true - healthcare: false - retirement: false - yearly_limit: false - category: Other - - benefit_type: 112 - name: Student Loan Repayment - description: Student Loan Repayment is an after-tax savings plan for employees to pay towards their outstanding student loans. An employee can choose to set aside after-tax dollars towards this benefit. These benefits should be reported as a taxable benefit and will therefore be taxed. - pretax: false - posttax: true - imputed: true - healthcare: false - retirement: false - yearly_limit: false - category: Other - - benefit_type: 998 - name: Short Term Disability (post-tax) - description: Third Party Disability or Third Party Leave are policies offered by employers that pay an employee for a specific life event (maternity leave, injury). All payments made to employees come from a third-party, such as an insurer. For more information on the taxation of these plans, please refer to publication 15-A for more details. - pretax: false - posttax: true - imputed: false - healthcare: false - retirement: false - yearly_limit: false - category: Health - - benefit_type: 999 - name: Long Term Disability (post-tax) - description: Third Party Disability or Third Party Leave are policies offered by employers that pay an employee for a specific life event (maternity leave, injury). All payments made to employees come from a third-party, such as an insurer. For more information on the taxation of these plans, please refer to publication 15-A for more details. - pretax: false - posttax: true - imputed: false - healthcare: false - retirement: false - yearly_limit: false - category: Health - - benefit_type: 996 - name: Short Term Disability (pre-tax) - description: Third Party Disability or Third Party Leave are policies offered by employers that pay an employee for a specific life event (maternity leave, injury). All payments made to employees come from a third-party, such as an insurer. For more information on the taxation of these plans, please refer to publication 15-A for more details. - pretax: true - posttax: false - imputed: false - healthcare: false - retirement: false - yearly_limit: false - category: Health - - benefit_type: 997 - name: Long Term Disability (pre-tax) - description: Third Party Disability or Third Party Leave are policies offered by employers that pay an employee for a specific life event (maternity leave, injury). All payments made to employees come from a third-party, such as an insurer. For more information on the taxation of these plans, please refer to publication 15-A for more details. - pretax: true - posttax: false - imputed: false - healthcare: false - retirement: false - yearly_limit: false - category: Health - - benefit_type: 991 - name: Voluntary Short Term Disability (post-tax) - description: Third Party Disability or Third Party Leave are policies offered by employers that pay an employee for a specific life event (maternity leave, injury). All payments made to employees come from a third-party, such as an insurer. For more information on the taxation of these plans, please refer to publication 15-A for more details. - pretax: false - posttax: true - imputed: false - healthcare: false - retirement: false - yearly_limit: false - category: Health - - benefit_type: 992 - name: Voluntary Long Term Disability (post-tax) - description: Third Party Disability or Third Party Leave are policies offered by employers that pay an employee for a specific life event (maternity leave, injury). All payments made to employees come from a third-party, such as an insurer. For more information on the taxation of these plans, please refer to publication 15-A for more details. - pretax: false - posttax: true - imputed: false - healthcare: false - retirement: false - yearly_limit: false - category: Health - - benefit_type: 993 - name: Voluntary Life (post-tax) - description: Third Party Disability or Third Party Leave are policies offered by employers that pay an employee for a specific life event (maternity leave, injury). All payments made to employees come from a third-party, such as an insurer. For more information on the taxation of these plans, please refer to publication 15-A for more details. - pretax: false - posttax: true - imputed: false - healthcare: false - retirement: false - yearly_limit: false - category: Health - - benefit_type: 113 - name: Commuter Parking - description: Tax-free commuter benefits allow employees to reduce their monthly commuting expenses for transit, carpooling, bicycling, and work-related parking costs. Please note that there is an annual maximum for this pre-tax benefit. The maximum dollar amount is found in IRS Publication 15-B. - pretax: true - posttax: false - imputed: false - healthcare: false - retirement: false - yearly_limit: false - category: Transportation - - benefit_type: 114 - name: Commuter Transit - description: Tax-free commuter benefits allow employees to reduce their monthly commuting expenses for transit, carpooling, bicycling, and work-related parking costs. Please note that there is an annual maximum for this pre-tax benefit. The maximum dollar amount is found in IRS Publication 15-B. - pretax: true - posttax: false - imputed: false - healthcare: false - retirement: false - yearly_limit: false - category: Transportation - - benefit_type: 100 - name: Other (taxable) - description: Other taxable benefit - pretax: false - posttax: true - imputed: true - healthcare: false - retirement: false - yearly_limit: false - category: Other - - benefit_type: 201 - name: Cell Phone (taxable) - description: Employer-sponsored benefits like this are called fringe benefits, and they don’t get special tax treatment—they’ll be reported as taxable wages on your employees’ paystubs. - pretax: false - posttax: true - imputed: true - healthcare: false - retirement: false - yearly_limit: false - category: Transportation - - benefit_type: 202 - name: Gym & Fitness (taxable) - description: Employer-sponsored benefits like this are called fringe benefits, and they don’t get special tax treatment—they’ll be reported as taxable wages on your employees’ paystubs. - pretax: false - posttax: true - imputed: true - healthcare: false - retirement: false - yearly_limit: false - category: Transportation - - benefit_type: 203 - name: Housing (taxable) - description: Employer-sponsored benefits like this are called fringe benefits, and they don’t get special tax treatment—they’ll be reported as taxable wages on your employees’ paystubs. - pretax: false - posttax: true - imputed: true - healthcare: false - retirement: false - yearly_limit: false - category: Transportation - - benefit_type: 204 - name: Wellness (taxable) - description: Employer-sponsored benefits like this are called fringe benefits, and they don’t get special tax treatment—they’ll be reported as taxable wages on your employees’ paystubs. - pretax: false - posttax: true - imputed: true - healthcare: false - retirement: false - yearly_limit: false - category: Transportation - Admin-Object: - description: Example response - content: - application/json: + type: string + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Time-Off-Policy" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: timeOffPolicies + x-speakeasy-name-override: getAll + post: + summary: Create a time off policy + operationId: post-v1-companies-company_uuid-time_off_policies + security: + - CompanyAccessAuth: [] + description: |- + Create a time off policy + + scope: `time_off_policies:write` + tags: + - Time Off Policies + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header schema: - "$ref": "#/components/schemas/Admin" - examples: - Example: - value: - first_name: John - last_name: Smith - email: jsmith99@gmail.com - uuid: 5de11791-98fd-4587-9ed0-d5d804b8e647 - Admin-List: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: company_uuid + in: path + description: The UUID of the company + required: true schema: - type: array - items: - "$ref": "#/components/schemas/Admin" - examples: - Example: - value: - - first_name: Katherine - last_name: Johnson - email: Katherine@acmecorp.com - uuid: 987058cc-23ee-46e9-81ef-5cee086cceca - - first_name: Anita - last_name: Borg - email: Anita@acmecorp.com - uuid: 5de11791-98fd-4587-9ed0-d5d804b8e647 - Company-Benefit-Object: - description: Example response - content: - application/json: + type: string + x-gusto-rswag: true + responses: + '201': + description: created + content: + application/json: + schema: + "$ref": "#/components/schemas/Time-Off-Policy" + '422': + description: Policy name required + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Time-Off-Policy-Request" + required: true + x-speakeasy-name-override: create + x-speakeasy-group: timeOffPolicies + "/v1/time_off_policies/{time_off_policy_uuid}": + get: + summary: Get a time off policy + operationId: get-v1-time_off_policies-time_off_policy_uuid + security: + - CompanyAccessAuth: [] + description: |- + Get a time off policy + + scope: `time_off_policies:read` + tags: + - Time Off Policies + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header schema: - "$ref": "#/components/schemas/Company-Benefit" - examples: - Example: - value: - uuid: d2cec746-caee-464a-bcaf-00d93f7049c9 - version: 98jr3289h3298hr9329gf9egskt3kagri32qqgiqe3872 - company_uuid: 881ce3f2-e3e1-49c9-8ad4-0bcf515f5618 - benefit_type: 1 - active: true - description: Kaiser Permanente - source: external - partner_name: XYZ Corp - deletable: true - supports_percentage_amounts: true - responsible_for_employer_taxes: false - responsible_for_employee_w2: false - catch_up_type: elective - Company-Benefit-List: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: time_off_policy_uuid + in: path + description: The UUID of the time off policy + required: true schema: - type: array - items: - "$ref": "#/components/schemas/Company-Benefit" - examples: - Example: - value: - - uuid: d2cec746-caee-464a-bcaf-00d93f7049c9 - version: 98jr3289h3298hr9329gf9egskt3kagri32qqgiqe3872 - company_uuid: 528cc543-8a41-497e-b479-23a4c5ec77ac - benefit_type: 1 - active: true - description: Kaiser Permanente - source: external - partner_name: XYZ Corp - deletable: true - supports_percentage_amounts: true - responsible_for_employer_taxes: false - responsible_for_employee_w2: false - catch_up_type: elective - description: OK - Company-Custom-Field-List: - description: Example response - content: - application/json: + type: string + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Time-Off-Policy" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: timeOffPolicies + x-speakeasy-name-override: get + put: + summary: Update a time off policy + operationId: put-v1-time_off_policies-time_off_policy_uuid + security: + - CompanyAccessAuth: [] + description: |- + Update a time off policy + + scope: `time_off_policies:write` + tags: + - Time Off Policies + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header schema: - type: object - properties: - custom_fields: - type: array - items: - "$ref": "#/components/schemas/Company-Custom-Field" - examples: - Example: - value: - custom_fields: - - uuid: ea7e5d57-6abb-47d7-b654-347c142886c0 - name: employee_level - description: Employee Level - type: text - selection_options: - - uuid: 299650e4-e970-4acf-9bf0-6f05585d20ba - name: t-shirt size - description: What is your t-shirt size? - type: text - selection_options: - - uuid: 024ec137-6c92-43a3-b061-14a9720531d6 - name: favorite fruit - description: Which is your favorite fruit? - type: radio - selection_options: - - apple - - banana - - orange - Earning-Type-List: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: time_off_policy_uuid + in: path + description: The UUID of the time off policy + required: true schema: - type: object - properties: - default: - type: array - description: The default earning types for the company. - items: - "$ref": "#/components/schemas/Earning-Type" - custom: - type: array - description: The custom earning types for the company. - items: - "$ref": "#/components/schemas/Earning-Type" - examples: - Example: - value: - default: - - name: Bonus - uuid: b82e35c5-d7c6-4705-9e16-9f87499ade18 - active: true - - name: Cash Tips - uuid: f5618c94-ed7d-4366-b2c4-ff05e430064f - active: true - - name: Commission - uuid: 60191999-004a-49d9-b163-630574433653 - active: true - - name: Correction Payment - uuid: 368226e0-8e8c-48f0-bc91-aee46caafbc9 - active: true - - name: Minimum Wage Adjustment - uuid: 88a2e519-9ff5-4c19-9071-6a709f3c2939 - active: true - - name: Paycheck Tips - uuid: a3eaf03d-e712-4144-8f9b-71a85528adcf - active: true - - name: Severance - uuid: a6a2eba7-6c7d-4ced-bbe8-43452fbc9f63 - active: true - custom: - - name: Gym Membership Stipend - uuid: 6b4a8efb-db90-4c13-a75f-aae11b3f4ff9 - active: true - Earning-Type-Object: - description: Example response - content: - application/json: + type: string + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Time-Off-Policy" + '422': + description: Unlimited Policy updated with accrual rate + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + requestBody: + content: + application/json: + schema: + allOf: + - "$ref": "#/components/schemas/Versionable-Required" + - "$ref": "#/components/schemas/Time-Off-Policy-Update-Request" + required: true + x-speakeasy-group: timeOffPolicies + x-speakeasy-name-override: update + "/v1/time_off_policies/{time_off_policy_uuid}/deactivate": + put: + summary: Deactivate a time off policy + operationId: put-v1-time_off_policies-time_off_policy_uuid-deactivate + security: + - CompanyAccessAuth: [] + description: |- + Deactivate a time off policy + + scope: `time_off_policies:write` + tags: + - Time Off Policies + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header schema: - "$ref": "#/components/schemas/Earning-Type" - examples: - Example: - value: - name: Gym Membership Stipend - uuid: f4dc8972-8830-4c07-b623-349a04b040d7 - active: true - Employee-Benefit-Object: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: time_off_policy_uuid + in: path + description: The UUID of the time off policy + required: true schema: - "$ref": "#/components/schemas/Employee-Benefit" - examples: - Example: - value: - 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: - deduct_as_percentage: false - catch_up: false - coverage_amount: - deduction_reduces_taxable_income: - coverage_salary_multiplier: '0.00' - contribution: - type: amount - value: '100.00' - Tiered example: - value: - version: string - 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: '0.00' - deduct_as_percentage: false - employee_deduction_annual_maximum: string - contribution: - type: tiered - value: - tiers: - - rate: '5.0' - threshold: '2.0' - threshold_delta: '2.0' - - rate: '3.0' - threshold: '5.0' - threshold_delta: '3.0' - elective: false - company_contribution_annual_maximum: string - limit_option: string - catch_up: false - coverage_amount: string - deduction_reduces_taxable_income: unset - coverage_salary_multiplier: '0.00' - Employee-Benefit-List: - description: Example response - content: - application/json: + type: string + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Time-Off-Policy" + '422': + description: Policy has pending time off requests + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: timeOffPolicies + x-speakeasy-name-override: deactivate + "/v1/time_off_policies/{time_off_policy_uuid}/add_employees": + put: + summary: Add employees to a time off policy + operationId: put-v1-time_off_policies-time_off_policy_uuid-add_employees + security: + - CompanyAccessAuth: [] + description: |- + 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` + tags: + - Time Off Policies + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header schema: - type: array - items: - "$ref": "#/components/schemas/Employee-Benefit" - examples: - Example: - value: - - 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: - deduct_as_percentage: false - contribute_as_percentage: false - catch_up: false - coverage_amount: - deduction_reduces_taxable_income: - coverage_salary_multiplier: '0.00' - Contribution-Exclusion-List: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: time_off_policy_uuid + in: path + description: The UUID of the time off policy + required: true schema: - type: array - items: - "$ref": "#/components/schemas/Contribution-Exclusion" - examples: - Example: - value: - - contribution_uuid: b82e35c5-d7c6-4705-9e16-9f87499ade18 - contribution_type: Bonus - excluded: false - - contribution_uuid: f5618c94-ed7d-4366-b2c4-ff05e430064f - contribution_type: Cash Tips - excluded: false - - contribution_uuid: 60191999-004a-49d9-b163-630574433653 - contribution_type: Commission - excluded: false - - contribution_uuid: 75a7a827-1f2d-4d6f-94f2-514c1fc32b13 - contribution_type: Regular - excluded: false - - contribution_uuid: eead3c7c-7964-4e3c-b609-670456127b09 - contribution_type: Life insurance imputed benefit - excluded: true - Payroll-Update-Object: - description: A prepared payroll - content: - application/json: + type: string + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Time-Off-Policy" + '422': + description: Add employees with no employees + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + required: + - employees + properties: + employees: + type: array + items: + type: object + required: + - uuid + properties: + uuid: + type: string + description: The UUID of the employee + balance: + type: + - string + - 'null' + description: The starting balance for the employee + required: true + x-speakeasy-group: timeOffPolicies + x-speakeasy-name-override: addEmployees + "/v1/time_off_policies/{time_off_policy_uuid}/remove_employees": + put: + summary: Remove employees from a time off policy + operationId: put-v1-time_off_policies-time_off_policy_uuid-remove_employees + security: + - CompanyAccessAuth: [] + description: |- + Remove employees from a time off policy + + scope: `time_off_policies:write` + tags: + - Time Off Policies + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header schema: - "$ref": "#/components/schemas/Payroll-Prepared" - examples: - Example: - value: - payroll_deadline: '2022-02-18T22:00:00Z' - check_date: '2021-02-22' - off_cycle: false - off_cycle_reason: - external: false - auto_payroll: false - processed: false - processed_date: - calculated_at: - uuid: b50e611d-8f3d-4f24-b001-46675f7b5777 - payroll_uuid: b50e611d-8f3d-4f24-b001-46675f7b5777 - company_uuid: 6bf7807c-a5a0-4f4d-b2e7-3fbb4b2299fb - created_at: '2022-02-01T22:00:00Z' - pay_period: - start_date: '2021-02-01' - end_date: '2021-02-15' - pay_schedule_uuid: 00ebc4a4-ec88-4435-8f45-c505bb63e501 - payroll_status_meta: - cancellable: false - expected_check_date: '2022-02-22' - initial_check_date: '2022-02-22' - expected_debit_time: '2022-02-18T22:00:00Z' - payroll_late: false - initial_debit_cutoff_time: '2022-02-18T22:00:00Z' - processing_request: - employee_compensations: - - employee_uuid: 187412e1-3dbe-491a-bb2f-2f40323a7067 - version: 4ba36d23a78c7393b4900ef38019d8ff - first_name: Patricia - preferred_first_name: Patricia - last_name: Hamil - excluded: false - payment_method: Direct Deposit - fixed_compensations: - - name: Bonus - amount: '100.00' - job_uuid: 94e0d15e-9ed2-4077-98f6-64554f242ba5 - hourly_compensations: - - name: Regular Hours - hours: '40.000' - job_uuid: bd378298-3e0c-4145-904a-baadf8a91fa3 - compensation_multiplier: 1 - flsa_status: Nonexempt - - name: Overtime - hours: '15.000' - job_uuid: 9d3760f0-d1f9-4700-8817-0fe2dce5cf23 - compensation_multiplier: 1.5 - flsa_status: Nonexempt - - name: Double overtime - hours: '0.000' - job_uuid: b5eef9a9-4a87-4649-a80d-14878c05f44e - compensation_multiplier: 2 - flsa_status: Nonexempt - - name: Regular Hours - hours: '40.000' - job_uuid: 332bd171-9efc-432b-abbb-a75c9dba706a - compensation_multiplier: 1 - flsa_status: Nonexempt - - name: Overtime - hours: '5.000' - job_uuid: ca9b3dc1-57ac-4736-901a-9b1c9634b9d5 - compensation_multiplier: 1.5 - flsa_status: Nonexempt - - name: Double overtime - hours: '0.000' - job_uuid: 1bad01e2-140c-49ed-9542-2388ce4a19b3 - compensation_multiplier: 2 - flsa_status: Nonexempt - paid_time_off: - - name: Vacation Hours - hours: '20.000' - - name: Sick Hours - hours: '0.000' - - name: Holiday Hours - hours: '0.000' - - employee_uuid: 187412e1-3dbe-491a-bb2f-2f40323a7012 - version: ff083257a5583291fb86656ad0df1b42 - first_name: Soren - preferred_first_name: Soren - last_name: Keck - excluded: false - payment_method: Direct Deposit - fixed_compensations: - - name: Bonus - amount: '100.00' - job_uuid: 94e0d15e-9ed2-4077-98f6-64554f242b34 - hourly_compensations: - - name: Regular Hours - hours: '40.000' - job_uuid: bd378298-3e0c-4145-904a-baadf8a91fa3 - compensation_multiplier: 1 - flsa_status: Commission Only Exempt - paid_time_off: - - name: Vacation Hours - hours: '20.000' - - name: Sick Hours - hours: '0.000' - - name: Holiday Hours - hours: '0.000' - - employee_uuid: 187412e1-3dbe-491a-bb2f-2f40323a7781 - version: 259816479e3729bf855318af9b9adddf - first_name: Patty - preferred_first_name: Patty - last_name: Tam - excluded: false - payment_method: Direct Deposit - fixed_compensations: - - name: Bonus - amount: '100.00' - job_uuid: 94e0d15e-9ed2-4077-98f6-64554f242bab - hourly_compensations: - - name: Regular Hours - hours: '40.000' - job_uuid: bd378298-3e0c-4145-904a-baadf8a91fa3 - compensation_multiplier: 1 - flsa_status: Exempt - paid_time_off: - - name: Vacation Hours - hours: '20.000' - - name: Sick Hours - hours: '0.000' - - name: Holiday Hours - hours: '0.000' - fixed_compensation_types: - - name: Bonus - - name: Commission - - name: Paycheck Tips - - name: Cash Tips - - name: Correction Payment - - name: Anniversary Bonus - - name: Internet Stipend - Off-Cycle-Payroll-Object: - description: An off-cycle payroll - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: time_off_policy_uuid + in: path + description: The UUID of the time off policy + required: true schema: - "$ref": "#/components/schemas/Payroll-Prepared" - examples: - Example: - value: - version: 19289df18e6e20f797de4a585ea5a91535c7ddf7 - payroll_deadline: '2022-02-18T22:00:00Z' - check_date: '2021-02-22' - off_cycle: true - off_cycle_reason: Bonus - external: false - auto_payroll: false - processed: false - processed_date: - calculated_at: - uuid: b50e611d-8f3d-4f24-b001-46675f7b5777 - payroll_uuid: b50e611d-8f3d-4f24-b001-46675f7b5777 - company_uuid: 6bf7807c-a5a0-4f4d-b2e7-3fbb4b2299fb - created_at: '2022-02-01T22:00:00Z' - withholding_pay_period: Every other week - skip_regular_deductions: true - fixed_withholding_rate: true - final_termination_payroll: false - pay_period: - start_date: '2021-02-01' - end_date: '2021-02-15' - pay_schedule_uuid: 00ebc4a4-ec88-4435-8f45-c505bb63e501 - payroll_status_meta: - cancellable: false - expected_check_date: '2022-02-22' - initial_check_date: '2022-02-22' - expected_debit_time: '2022-02-18T22:00:00Z' - payroll_late: false - initial_debit_cutoff_time: '2022-02-18T22:00:00Z' - processing_request: - employee_compensations: - - employee_uuid: 187412e1-3dbe-491a-bb2f-2f40323a7067 - first_name: John - preferred_first_name: John - last_name: Doe - excluded: false - payment_method: Direct Deposit - fixed_compensations: [] - memo: - hourly_compensations: - - name: Regular Hours - hours: '0.000' - job_uuid: bd378298-3e0c-4145-904a-baadf8a91fa3 - compensation_multiplier: 1 - flsa_status: Nonexempt - - name: Overtime - hours: '0.000' - job_uuid: 9d3760f0-d1f9-4700-8817-0fe2dce5cf23 - compensation_multiplier: 1.5 - flsa_status: Nonexempt - - name: Double overtime - hours: '0.000' - job_uuid: b5eef9a9-4a87-4649-a80d-14878c05f44e - compensation_multiplier: 2 - flsa_status: Nonexempt - - name: Regular Hours - hours: '0.000' - job_uuid: 332bd171-9efc-432b-abbb-a75c9dba706a - compensation_multiplier: 1 - flsa_status: Nonexempt - - name: Overtime - hours: '0.000' - job_uuid: ca9b3dc1-57ac-4736-901a-9b1c9634b9d5 - compensation_multiplier: 1.5 - flsa_status: Nonexempt - - name: Double overtime - hours: '0.000' - job_uuid: 1bad01e2-140c-49ed-9542-2388ce4a19b3 - compensation_multiplier: 2 - flsa_status: Nonexempt - paid_time_off: [] - Payroll-Show-Object: - description: Example response - content: - application/json: + type: string + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Time-Off-Policy" + '422': + description: Remove employees with no employees + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + required: + - employees + properties: + employees: + type: array + items: + type: object + required: + - uuid + properties: + uuid: + type: string + description: The UUID of the employee + required: true + x-speakeasy-group: timeOffPolicies + x-speakeasy-name-override: removeEmployees + "/v1/time_off_policies/{time_off_policy_uuid}/balance": + put: + summary: Update employee time off balances + operationId: put-v1-time_off_policies-time_off_policy_uuid-balance + security: + - CompanyAccessAuth: [] + description: |- + Updates time off hours balances for employees for a time off policy. + + scope: `time_off_policies:write` + tags: + - Time Off Policies + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header schema: - "$ref": "#/components/schemas/Payroll" - examples: - Unprocessed: - value: - payroll_deadline: '2021-02-18T22:00:00Z' - check_date: '2021-02-22' - off_cycle: false - external: false - auto_payroll: false - processed: false - processed_date: - calculated_at: - uuid: b50e611d-8f3d-4f24-b001-46675f7b5777 - payroll_uuid: b50e611d-8f3d-4f24-b001-46675f7b5777 - company_uuid: 6bf7807c-a5a0-4f4d-b2e7-3fbb4b2299fb - created_at: '2022-02-01T22:00:00Z' - pay_period: - start_date: '2021-02-01' - end_date: '2021-02-15' - pay_schedule_uuid: 00ebc4a4-ec88-4435-8f45-c505bb63e501 - payroll_status_meta: - cancellable: false - expected_check_date: '2021-02-22' - initial_check_date: '2021-02-22' - expected_debit_time: '2021-02-18T22:00:00Z' - payroll_late: false - initial_debit_cutoff_time: '2021-02-18T22:00:00Z' - submission_blockers: - - blocker_type: fast_ach_threshold_exceeded - blocker_name: Fast ACH Threshold Exceeded - unblock_options: - - unblock_type: wire_in - check_date: '2024-06-10' - metadata: - wire_in_deadline: '2024-06-19T18:00:00Z' - wire_in_amount: 400000.0 - - unblock_type: move_to_four_day - check_date: '2024-06-12' - metadata: {} - selected_option: - status: unresolved - processing_request: - Processed: - value: - payroll_deadline: '2021-02-18T22:00:00Z' - check_date: '2021-02-22' - off_cycle: false - external: false - auto_payroll: true - processed: true - processed_date: '2021-02-18' - calculated_at: '2021-02-18T12:00:00Z' - payroll_uuid: b50e611d-8f3d-4f24-b001-46675f7b5777 - company_uuid: 6bf7807c-a5a0-4f4d-b2e7-3fbb4b2299fb - created_at: '2022-02-01T22:00:00Z' - pay_period: - start_date: '2021-02-01' - end_date: '2021-02-15' - pay_schedule_uuid: 00ebc4a4-ec88-4435-8f45-c505bb63e501 - totals: - company_debit: '121747.71' - net_pay_debit: '79283.80' - tax_debit: '42463.91' - reimbursement_debit: '0.00' - child_support_debit: '0.00' - reimbursements: '0.00' - net_pay: '81752.94' - gross_pay: '130635.89' - employee_bonuses: '0.00' - employee_commissions: '18536.37' - employee_cash_tips: '0.00' - employee_paycheck_tips: '0.00' - additional_earnings: '0.00' - owners_draw: '0.00' - check_amount: '2469.14' - employer_taxes: '6917.19' - employee_taxes: '35546.72' - benefits: '0.00' - employee_benefits_deductions: '13336.23' - imputed_pay: '0.00' - deferred_payroll_taxes: '0.00' - other_deductions: '240.00' - company_taxes: - - name: MO Compensation Deduction - amount: "-0.92" - employer: true - - name: NY MCTMT - amount: '5.00' - employer: true - payroll_taxes: - - name: Federal Income Tax - employer: false - amount: 3546.72 - - name: Social Security - employer: true - amount: 786.0 - - name: Social Security - employer: false - amount: 786.0 - - name: CA State Income Tax - employer: false - amount: 132.51 - payroll_status_meta: - cancellable: false - expected_check_date: '2021-02-22' - initial_check_date: '2021-02-22' - expected_debit_time: '2021-02-18T22:00:00Z' - payroll_late: false - initial_debit_cutoff_time: '2021-02-18T22:00:00Z' - employee_compensations: - - employee_uuid: 187412e1-3dbe-491a-bb2f-2f40323a7067 - excluded: false - gross_pay: '2791.25' - net_pay: '1953.31' - check_amount: '1953.31' - payment_method: Direct Deposit - fixed_compensations: - - name: Bonus - amount: '100.00' - job_uuid: 94e0d15e-9ed2-4077-98f6-64554f242ba5 - hourly_compensations: - - name: Regular Hours - hours: '40.000' - job_uuid: bd378298-3e0c-4145-904a-baadf8a91fa3 - compensation_multiplier: 1 - flsa_status: Nonexempt - - name: Overtime - hours: '15.000' - job_uuid: 9d3760f0-d1f9-4700-8817-0fe2dce5cf23 - compensation_multiplier: 1.5 - flsa_status: Nonexempt - - name: Double overtime - hours: '0.000' - job_uuid: b5eef9a9-4a87-4649-a80d-14878c05f44e - compensation_multiplier: 2 - flsa_status: Nonexempt - - name: Regular Hours - hours: '40.000' - job_uuid: 332bd171-9efc-432b-abbb-a75c9dba706a - compensation_multiplier: 1 - flsa_status: Nonexempt - - name: Overtime - hours: '5.000' - job_uuid: ca9b3dc1-57ac-4736-901a-9b1c9634b9d5 - compensation_multiplier: 1.5 - flsa_status: Nonexempt - - name: Double overtime - hours: '0.000' - job_uuid: 1bad01e2-140c-49ed-9542-2388ce4a19b3 - compensation_multiplier: 2 - flsa_status: Nonexempt - paid_time_off: - - name: Vacation Hours - hours: '20.000' - - name: Sick Hours - hours: '0.000' - - name: Holiday Hours - hours: '0.000' - benefits: - - name: Group Term Life - employee_deduction: '100.00' - company_contribution: '50.00' - imputed: true - - name: 401K - employee_deduction: '100.00' - company_contribution: '50.00' - imputed: false - deductions: - - name: Child Support - amount: '80.00' - taxes: - - name: Federal Income Tax - employer: false - amount: '646.69' - - name: Social Security - employer: true - amount: '191.25' - - employee_uuid: 187412e1-3dbe-491a-bb2f-2f40323a7012 - excluded: false - gross_pay: '2791.25' - net_pay: '1953.31' - check_amount: '1953.31' - payment_method: Direct Deposit - fixed_compensations: - - name: Bonus - amount: '100.00' - job_uuid: 94e0d15e-9ed2-4077-98f6-64554f242b34 - hourly_compensations: - - name: Regular Hours - hours: '40.000' - job_uuid: bd378298-3e0c-4145-904a-baadf8a91fa3 - compensation_multiplier: 1 - flsa_status: Commission Only Exempt - paid_time_off: - - name: Vacation Hours - hours: '20.000' - - name: Sick Hours - hours: '0.000' - - name: Holiday Hours - hours: '0.000' - benefits: - - name: Group Term Life - employee_deduction: '100.00' - company_contribution: '50.00' - imputed: true - - name: 401K - employee_deduction: '100.00' - company_contribution: '50.00' - imputed: false - deductions: - - name: Child Support - amount: '80.00' - taxes: - - name: Federal Income Tax - employer: false - amount: '646.69' - - name: Social Security - employer: true - amount: '191.25' - - employee_uuid: 187412e1-3dbe-491a-bb2f-2f40323a7781 - excluded: false - gross_pay: '2791.25' - net_pay: '1953.31' - check_amount: '1953.31' - payment_method: Direct Deposit - fixed_compensations: - - name: Bonus - amount: '100.00' - job_uuid: 94e0d15e-9ed2-4077-98f6-64554f242bab - hourly_compensations: - - name: Regular Hours - hours: '40.000' - job_uuid: bd378298-3e0c-4145-904a-baadf8a91fa3 - compensation_multiplier: 1 - flsa_status: Exempt - paid_time_off: - - name: Vacation Hours - hours: '20.000' - - name: Sick Hours - hours: '0.000' - - name: Holiday Hours - hours: '0.000' - benefits: - - name: Group Term Life - employee_deduction: '100.00' - company_contribution: '50.00' - imputed: true - - name: 401K - employee_deduction: '100.00' - company_contribution: '50.00' - imputed: false - deductions: - - name: Child Support - amount: '80.00' - taxes: - - name: Federal Income Tax - employer: false - amount: 646.69 - - name: Social Security - employer: true - amount: 191.25 - credit_blockers: - - blocker_type: waiting_for_wire_in - blocker_name: Waiting for Wire In - unblock_options: - - unblock_type: submit_wire - check_date: '2024-06-10' - metadata: - wire_in_deadline: '2024-06-19T18:00:00Z' - wire_in_amount: 400000.0 - wire_in_request_uuid: 187412e1-3dbe-491a-bb2f-2f40323a421a - selected_option: submit_wire - status: unresolved - processing_request: - status: submit_success - errors: [] - Payroll-List: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: time_off_policy_uuid + in: path + description: The UUID of the time off policy + required: true schema: - type: array - items: - "$ref": "#/components/schemas/Payroll-Minimal" - examples: - Example: - value: - - payroll_deadline: '2021-02-18T22:00:00Z' - check_date: '2021-02-22' - off_cycle: false - external: false - processed: true - processed_date: '2021-02-18' - calculated_at: '2021-02-18T12:00:00Z' - uuid: b50e611d-8f3d-4f24-b001-46675f7b5777 - payroll_uuid: b50e611d-8f3d-4f24-b001-46675f7b5777 - company_uuid: 6bf7807c-a5a0-4f4d-b2e7-3fbb4b2299fb - created_at: '2021-02-01T22:00:00Z' - reversal_payroll_uuids: [] - pay_period: - start_date: '2021-02-01' - end_date: '2021-02-15' - pay_schedule_uuid: 00ebc4a4-ec88-4435-8f45-c505bb63e501 - totals: - company_debit: '121747.71' - net_pay_debit: '79283.80' - tax_debit: '42463.91' - reimbursement_debit: '0.00' - child_support_debit: '0.00' - reimbursements: '0.00' - net_pay: '81752.94' - gross_pay: '130635.89' - employee_bonuses: '0.00' - employee_commissions: '18536.37' - employee_cash_tips: '0.00' - employee_paycheck_tips: '0.00' - additional_earnings: '0.00' - owners_draw: '0.00' - check_amount: '2469.14' - employer_taxes: '6917.19' - employee_taxes: '35546.72' - benefits: '0.00' - employee_benefits_deductions: '13336.23' - imputed_pay: '0.00' - deferred_payroll_taxes: '0.00' - other_deductions: '240.00' - - payroll_deadline: '2021-02-28' - check_date: '2021-03-01' - off_cycle: false - external: false - processed: false - processed_date: nil - calculated_at: nil - payroll_uuid: b50e611d-8f3d-4f24-b001-46675f7b5777 - company_uuid: 6bf7807c-a5a0-4f4d-b2e7-3fbb4b2299fb - created_at: '2022-02-01T22:00:00Z' - pay_period: - start_date: '2021-02-16' - end_date: '2021-03-01' - pay_schedule_uuid: 00ebc4a4-ec88-4435-8f45-c505bb63e501 - Payment-Configs-Object: - description: Example response - content: - application/json: + type: string + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Time-Off-Policy" + '422': + description: Unlimited policy balance update + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + required: + - employees + properties: + employees: + type: array + items: + type: object + required: + - uuid + - balance + properties: + uuid: + type: string + description: The UUID of the employee + balance: + type: string + description: The new balance for the employee + required: true + x-speakeasy-group: timeOffPolicies + x-speakeasy-name-override: updateBalance + "/oauth/token": + post: + summary: Create a System Access Token or Refresh an Access Token + operationId: oauth-access-token + security: [] + description: Creates a system access token or refreshes an oauth access token + tags: + - Introspection + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header schema: - "$ref": "#/components/schemas/Payment-Configs" - examples: - Example: - value: - company_uuid: 423dd616-6dbc-4724-938a-403f6217a933 - partner_uuid: 556f05d0-48e0-4c47-bce5-db9aea923043 - fast_payment_limit: '5000' - payment_speed: 2-day - earned_fast_ach_blockers: - - blocker_type: minimum_days - threshold: 15 - - blocker_type: minimum_funded_payments - threshold: 1 - Company-Bank-Account-Object: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Authentication" + requestBody: + content: + application/json: + schema: + oneOf: + - type: object + title: Refresh Token Request + required: + - client_id + - client_secret + - grant_type + - refresh_token + properties: + client_id: + type: string + description: Your client ID + example: qr6L_9FRkbMVL_GdwvrMW6Ef8tcU6NUxjWpOfqXqOG8 + client_secret: + type: string + description: Your client secret + example: 3aQSHRB3596nZhm6NdNBELZ1u9xbZmvCrKpBhbZYq6w + grant_type: + type: string + enum: + - refresh_token + description: Set system_access to create a system access token, refresh_token to refresh an existing token + refresh_token: + type: string + descrition: The refresh token being exchanged for an access token code + example: iEjL96L9Pndwmi-xVX3Q-xbrvvhnjHYGX87sopgGJ8E + redirect_uri: + type: string + description: The redirect URI you set up via the Developer Portal + - type: object + title: System Access Token Request + required: + - client_id + - client_secret + - grant_type + properties: + client_id: + type: string + description: Your client ID + example: qr6L_9FRkbMVL_GdwvrMW6Ef8tcU6NUxjWpOfqXqOG8 + client_secret: + type: string + description: Your client secret + example: 3aQSHRB3596nZhm6NdNBELZ1u9xbZmvCrKpBhbZYq6w + grant_type: + type: string + description: Set system_access to create a system access token, refresh_token to refresh an existing token + enum: + - system_access + required: true + "/v1/token_info": + get: + summary: Get info about the current access token + operationId: get-v1-token-info + security: + - CompanyAccessAuth: [] + description: |- + Returns scope and resource information associated with the current access token. Use this endpoint to verify the following for the current access token: + * Resource (company, employee, contractor, or application) and resource owner + * Access level + tags: + - Introspection + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header schema: - "$ref": "#/components/schemas/Company-Bank-Account" - examples: - Example: - value: - uuid: 1263eae5-4411-48d9-bd6d-18ed93082e65 - company_uuid: e2c4c0ce-2986-48b9-86cf-ec27f6ed9a36 - account_type: Checking - routing_number: '851070439' - hidden_account_number: XXXX4087 - verification_status: verified - verification_type: bank_deposits - name: Employer Funding Account - Company-Bank-Account-List: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Token-Info" + x-speakeasy-name-override: getInfo + "/v1/webhook_subscriptions": + get: + summary: List webhook subscriptions + operationId: get-v1-webhook-subscriptions + security: + - SystemAccessAuth: [] + description: "Returns all webhook subscriptions associated with the provided Partner API token.\n\n\U0001F4D8 System Access Authentication\n\nThis endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access)\n\nscope: `webhook_subscriptions:read`" + tags: + - Webhooks + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header schema: - type: array - items: - "$ref": "#/components/schemas/Company-Bank-Account" - examples: - Example: - value: - - uuid: 1263eae5-4411-48d9-bd6d-18ed93082e65 - company_uuid: e2c4c0ce-2986-48b9-86cf-ec27f6ed9a36 - account_type: Checking - routing_number: '851070439' - hidden_account_number: XXXX4087 - verification_status: verified - verification_type: bank_deposits - name: Employer Funding Account - Employee-Bank-Account-Object: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Webhook-Subscription" + x-speakeasy-name-override: listSubscriptions + post: + summary: Create a webhook subscription + operationId: post-v1-webhook-subscription + security: + - SystemAccessAuth: [] + description: "Create a webhook subscription to receive events of the specified subscription_types whenever there is a state change.\n\n\U0001F4D8 System Access Authentication\n\nThis endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access)\n\nscope: `webhook_subscriptions:write`" + tags: + - Webhooks + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header schema: - "$ref": "#/components/schemas/Employee-Bank-Account" - examples: - Example: - value: - uuid: 1531e824-8d9e-4bd8-9f90-0d04608125d7 - employee_uuid: 9fcf1b1d-8886-4691-9283-383d3bdd4fd9 - name: BoA Checking Account - routing_number: '266905059' - hidden_account_number: XXXX1207 - account_type: Checking - Employee-Bank-Account-List: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '201': + description: created + content: + application/json: + schema: + "$ref": "#/components/schemas/Webhook-Subscription" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + required: + - url + - subscription_types + properties: + url: + type: string + description: The URL where webhook events will be POSTed. + subscription_types: + type: array + description: The types of events to subscribe to. + items: + type: string + enum: + - BankAccount + - Company + - CompanyBenefit + - Contractor + - ContractorPayment + - Employee + - EmployeeBenefit + - EmployeeJobCompensation + - ExternalPayroll + - Form + - Location + - Notification + - Payroll + - PayrollSync + - PaySchedule + - PeopleBatch + - Signatory + required: true + x-speakeasy-name-override: createSubscription + "/v1/webhook_subscriptions/{webhook_subscription_uuid}": + get: + summary: Get a webhook subscription + operationId: get-v1-webhook-subscription-uuid + security: + - SystemAccessAuth: [] + description: "Returns the Webhook Subscription associated with the provided UUID.\n\n\U0001F4D8 System Access Authentication\n\nThis endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access)\n\nscope: `webhook_subscriptions:read`" + tags: + - Webhooks + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: webhook_subscription_uuid + in: path + description: The webhook subscription UUID. + required: true schema: - type: array - items: - "$ref": "#/components/schemas/Employee-Bank-Account" - examples: - Example: - value: - - uuid: 1531e824-8d9e-4bd8-9f90-0d04608125d7 - employee_uuid: 9fcf1b1d-8886-4691-9283-383d3bdd4fd9 - name: BoA Checking Account - routing_number: '266905059' - hidden_account_number: XXXX1207 - account_type: Checking - Employee-Payment-Method-Object: - description: Example response - content: - application/json: + type: string + - name: X-Gusto-API-Version + in: header schema: - "$ref": "#/components/schemas/Employee-Payment-Method" - examples: - Example: - value: - version: 63859768485e218ccf8a449bb60f14ed - type: Direct Deposit - split_by: Amount - splits: - - uuid: e88f9436-b74e-49a8-87e9-777b9bfe715e - name: BoA Checking Account - priority: 1 - split_amount: 500 - - uuid: 0d2b7f73-05d6-4184-911d-269edeecc30a - name: Chase Checking Account - priority: 2 - split_amount: 1000 - - uuid: 1531e824-8d9e-4bd8-9f90-0d04608125d7 - name: US Bank Checking Account - priority: 3 - split_amount: - Federal-Tax-Details-Object: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Webhook-Subscription" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: getSubscription + put: + summary: Update a webhook subscription + operationId: put-v1-webhook-subscription-uuid + security: + - SystemAccessAuth: [] + description: "Updates the Webhook Subscription associated with the provided UUID.\n\n\U0001F4D8 System Access Authentication\n\nThis endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access)\n\nscope: `webhook_subscriptions:write`" + tags: + - Webhooks + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: webhook_subscription_uuid + in: path + description: The webhook subscription UUID. + required: true schema: - "$ref": "#/components/schemas/Federal-Tax-Details" - examples: - Example: - value: - version: 5521489cc7c93732300805dcf87a5fd3 - tax_payer_type: S-Corporation - taxable_as_scorp: true - filing_form: '941' - has_ein: true - ein_verified: true - ein_verification: - status: verified - legal_name: Company Name LLC - effective_date: '2024-01-01' - deposit_schedule: Semiweekly - Employee-State-Taxes-List: - description: Example response - content: - application/json: + type: string + - name: X-Gusto-API-Version + in: header schema: - type: array - items: - "$ref": "#/components/schemas/Employee-State-Tax" - examples: - Employee-State-Taxes-List-Example: - value: - employee_uuid: 92fa4d30-e284-43d0-a26e-605619c04beb - file_new_hire_report: false - is_work_state: true - state: CA - questions: - - label: Filing Status - description: 'The Head of Household status applies to unmarried individuals who have a relative living with them in their home. If unsure, read the CA Filing Status explanation. + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Webhook-Subscription" + '404': + description: | + Not Found -' - key: filing_status - input_question_format: - type: Select - options: - - value: S - label: Single - - value: M - label: Married one income - - value: MD - label: Married dual income - - value: H - label: Head of household - - value: E - label: Do Not Withhold - answers: - - value: S - valid_from: '2010-01-01' - valid_up_to: - - label: Withholding Allowance - description: 'This value is needed to calculate the employee''s CA income tax withholding. If unsure, use the CA DE-4 form to calculate the value manually. + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity -' - key: withholding_allowance - input_question_format: - type: Number - answers: - - value: 1 - valid_from: '2010-01-01' - valid_up_to: - - label: Additional Withholding - description: You can withhold an additional amount of California income taxes here. - key: additional_withholding - input_question_format: - type: Currency - answers: - - value: '0.0' - valid_from: '2010-01-01' - valid_up_to: - - label: File a New Hire Report? - description: State law requires you to file a new hire report within 20 days of hiring or re-hiring an employee. - key: file_new_hire_report - input_question_format: - type: Select - answers: - - value: true - valid_from: '2010-01-01' - valid_up_to: - Employee-Onboarding-Status-Object: - description: Example response. - content: - application/json: + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + required: + - subscription_types + properties: + subscription_types: + type: array + description: The types of events to subscribe to. + items: + type: string + enum: + - BankAccount + - Company + - CompanyBenefit + - Contractor + - ContractorPayment + - Employee + - EmployeeBenefit + - EmployeeJobCompensation + - ExternalPayroll + - Form + - Location + - Notification + - Payroll + - PayrollSync + - PaySchedule + - PeopleBatch + - Signatory + required: true + x-speakeasy-name-override: updateSubscription + delete: + summary: Delete a webhook subscription + operationId: delete-v1-webhook-subscription-uuid + security: + - SystemAccessAuth: [] + description: "Deletes the Webhook Subscription associated with the provided UUID.\n\n\U0001F4D8 System Access Authentication\n\nThis endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access)\n\nscope: `webhook_subscriptions:write`" + tags: + - Webhooks + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: webhook_subscription_uuid + in: path + description: The webhook subscription UUID. + required: true schema: - "$ref": "#/components/schemas/Employee-Onboarding-Status" - examples: - Example: - value: - uuid: c44d66dc-c41b-4a60-9e25-5e93ff8583f2 - onboarding_status: admin_onboarding_incomplete - onboarding_steps: - - title: Personal details - id: personal_details - required: true - completed: false - requirements: [] - - title: Enter compensation details - id: compensation_details - required: true - completed: false - requirements: [] - - title: Add work address - id: add_work_address - required: true - completed: false - requirements: [] - - title: Add home address - id: add_home_address - required: true - completed: false - requirements: [] - - title: Enter federal tax withholdings - id: federal_tax_setup - required: true - completed: false - requirements: [] - - title: Enter state tax information - id: state_tax_setup - required: true - completed: false - requirements: - - add_work_address - - add_home_address - - title: Direct deposit setup - id: direct_deposit_setup - required: false - completed: false - requirements: [] - - title: Employee form signing - id: employee_form_signing - required: true - completed: false - requirements: - - federal_tax_setup - - state_tax_setup - Payroll-Blocker-List: - description: Example response - content: - application/json: + type: string + - name: X-Gusto-API-Version + in: header schema: - type: array - items: - "$ref": "#/components/schemas/Payroll-Blocker" - examples: - Payroll Blockers: - value: - - key: eftps_in_error - message: We could not make payments to the Electronic Federal Tax Payment System. - - key: geocode_error - message: Company or employee address could not be verified. Please ensure all addresses are valid. - - key: geocode_needed - message: Company or employee address verification is missing. Please ensure all addresses are entered correctly. - - key: pay_schedule_setup_not_complete - message: Some employees don’t have a pay schedule set up yet. Please complete this step to run payroll. - - key: invalid_signatory - message: A signatory who is authorized to sign documents on behalf of your company is required. Please ensure their identity verification is successful. - - key: suspended - message: Company is suspended and cannot run payroll. - - key: soft_suspended - message: Company is placed in a 'soft' suspension state and requires missing/incorrect information to be corrected. - - key: pending_payroll_review - message: Payroll is blocked. We are reviewing payroll information in your account. Please contact support if you believe this is an error. - - key: pending_recovery_case - message: Payroll is blocked due to an open recovery case. Please contact support if you believe this is an error. - - key: pending_information_request - message: Payroll is blocked due to an open information request. Please contact support if you believe this is an error. - - key: needs_approval - message: Company needs to be approved to run payroll. - - key: missing_addresses - message: Company must add addresses in order to run payroll. - - key: missing_federal_tax_setup - message: Company must complete federal tax setup in order to run payroll. - - key: missing_industry_selection - message: Company must complete industry selection in order to run payroll. - - key: missing_bank_info - message: Company must have a bank account in order to run payroll. - - key: missing_employee_setup - message: Company must add employees in order to run payroll. - - key: missing_state_tax_setup - message: Company must complete state tax setup in order to run payroll. - - key: missing_pay_schedule - message: Company must have a pay schedule in order to run payroll. - - key: missing_forms - message: Company forms must be signed in order to run payroll. - - key: missing_bank_verification - message: Company bank account must be verified in order to run payroll. - - key: missing_signatory - message: Company must have a verified signatory in order to run payroll. - Generated-Document: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '204': + description: No Content + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: deleteSubscription + "/v1/webhook_subscriptions/{webhook_subscription_uuid}/request_verification_token": + get: + summary: Request a verification token for a webhook subscription + operationId: get-v1-webhook-subscription-verification-token-uuid + security: + - SystemAccessAuth: [] + description: "Request that the webhook subscription `verification_token` be POSTed to the Subscription URL.\n\n\U0001F4D8 System Access Authentication\n\nThis endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access)\n\nscope: `webhook_subscriptions:read`" + tags: + - Webhooks + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: webhook_subscription_uuid + in: path + description: The webhook subscription UUID. + required: true schema: - "$ref": "#/components/schemas/Generated-Document" - examples: - Example: - value: - document_urls: - - https://document.url.com - request_uuid: p83d0ca8-7d41-42a9-834y-7d218ef6cb20 - status: succeeded - General-Ledger-Report: - description: Successful response for general ledger report generation - content: - application/json: + type: string + - name: X-Gusto-API-Version + in: header schema: - type: object - properties: - payroll_uuid: - type: string - format: uuid - description: The UUID of the payroll record for which the report was generated - aggregation: - type: string - enum: - - default - - job - - department - - integration - description: The breakdown level used for the report - integration_type: - type: - - string - - 'null' - enum: - - xero - - qbo - description: The `integration_type` used for the report, if `aggregation` was 'integration.' Otherwise, this will be null. - request_uuid: - type: string - format: uuid - description: UUID to use for polling the report status - examples: - Example: - value: - payroll_uuid: a83d0bd8-7d20-43b9-834c-6d514ef6cb20 - aggregation: integration - integration_type: xero - request_uuid: p83d0ca8-7d41-42a9-834y-7d218ef6cb20 - Report: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '200': + description: No Content. The `verification_token` is POSTed to the Subscription URL. + content: + application/json: + schema: + "$ref": "#/components/schemas/Webhook-Verification-Token-Response" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-name-override: requestVerificationToken + "/v1/webhook_subscriptions/{webhook_subscription_uuid}/verify": + put: + summary: Verify a webhook subscription + operationId: put-v1-verify-webhook-subscription-uuid + security: + - SystemAccessAuth: [] + description: "When a webhook subscription is created, a `verification_token` is POSTed to the registered webhook subscription URL. This `verify` endpoint needs to be called with `verification_token` before webhook events can be sent to the registered webhook URL.\n\nUse the /v1/webhook_subscriptions/{webhook_subscription_uuid}/request_verification_token API to resend the `verification_token` to the Subscriber.\n\n\U0001F4D8 System Access Authentication\n\nThis endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access)\n\nscope: `webhook_subscriptions:write`" + tags: + - Webhooks + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: webhook_subscription_uuid + in: path + description: The webhook subscription UUID. + required: true schema: - "$ref": "#/components/schemas/Report" - examples: - Example: - value: - report_urls: - - https://report.url.com - request_uuid: p83d0ca8-7d41-42a9-834y-7d218ef6cb20 - status: succeeded - Create-Report: - description: Example response - content: - application/json: + type: string + - name: X-Gusto-API-Version + in: header schema: - "$ref": "#/components/schemas/Create-Report" - examples: - Example: - value: - file_type: csv - request_uuid: p83d0ca8-7d41-42a9-834y-7d218ef6cb20 - company_uuid: z83d0ca8-7d41-42a9-834y-7d218ef6cb20 - custom_name: CustomReport - Report-Template: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Webhook-Subscription" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + required: + - verification_token + properties: + verification_token: + type: string + description: The verification token received at the webhook subscription URL. + required: true + x-speakeasy-name-override: verify + "/v1/webhooks/health_check": + get: + summary: Get the webhooks health status + operationId: get-v1-webhooks-health_check + security: + - SystemAccessAuth: [] + description: "Returns the health status (`healthy`, `unhealthy`, or `unknown`) of the webhooks system based on the last ten minutes of activity.\n\n\U0001F4D8 System Access Authentication\n\nThis endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access)\n\nscope: `webhook_subscriptions:read`" + tags: + - Webhooks + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header schema: - "$ref": "#/components/schemas/Report-Template" - examples: - Example: - value: - columns: - - regular_rate - - regular_hours - - regular_earnings - groupings: - - payroll - - employee - company_uuid: p83d0ca8-7d41-42a9-834y-7d218ef6cb20 - report_type: payroll_journal - Notification: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Webhooks-Health-Check-Status" + "/v1/wire_in_requests/{wire_in_request_uuid}": + get: + summary: Get a single Wire In Request + operationId: get-wire_in_requests-wire_in_request_uuid + security: + - CompanyAccessAuth: [] + description: |- + Fetch a Wire In Request. + + scope: `payrolls:read` + tags: + - Wire In Requests + x-gusto-integration-type: + - embedded + parameters: + - name: wire_in_request_uuid + in: path + description: The UUID of the Wire In Request + required: true schema: - "$ref": "#/components/schemas/Notification" - examples: - Example: - value: - uuid: 7b1d0df1-6403-4a06-8768-c1dd7d24d27a - company_uuid: 88f7cca1-dcad-4d20-84db-7fb80303d69f - title: 'Action required: Additional information needed to process payroll' - message: If we do not receive this information as soon as possible, your payroll may not be processed on time. - status: open - category: information_request - actionable: true - can_block_payroll: true - published_at: '2022-01-01T00:00:00.000Z' - due_at: '2022-02-01T00:00:00.000Z' - template_variables: - blocked_task: Payroll - resources: - - entity_type: Employee - entity_uuid: 21b6f9ce-0ac4-4745-8d8a-127f8c0f00f2 - Event-List: - description: Example response - content: - application/json: + type: string + - name: X-Gusto-API-Version + in: header schema: - type: array - items: - "$ref": "#/components/schemas/Event" - examples: - Example: - value: - - uuid: f7397a24-57ad-4fae-b011-d258e8232900 - event_type: employee.bank_account.created - resource_type: Company - resource_uuid: 92a20431-9489-4bde-ad27-6feb20b969d5 - entity_type: BankAccount - entity_uuid: 92a20431-9489-4bde-ad27-6feb20b969d5 - timestamp: 1686784995 - Payroll-Check: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Wire-In-Request" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: wireInRequests + x-speakeasy-name-override: get + put: + summary: Submit a wire in request + operationId: put-wire_in_requests-wire_in_request_uuid + security: + - CompanyAccessAuth: [] + description: |- + Submit a wire in request for a payment + + scope: `payrolls:run` + tags: + - Wire In Requests + x-gusto-integration-type: + - embedded + parameters: + - name: wire_in_request_uuid + in: path + description: The UUID of the Wire In Request + required: true schema: - "$ref": "#/components/schemas/Payroll-Check" - examples: - Example: - value: - payroll_uuid: a83d0bd8-7d20-43b9-834c-6d514ef6cb20 - printing_format: top - starting_check_number: 10 - request_uuid: p83d0ca8-7d41-42a9-834y-7d218ef6cb20 - status: pending - employee_check_number_mapping: - - employee_uuid: 9fcf1b1d-8886-4691-9283-383d3bdd4fd9 - check_number: 10 - Payroll-Receipt: - description: Example response - content: - application/json: + type: string + - name: X-Gusto-API-Version + in: header schema: - "$ref": "#/components/schemas/Payroll-Receipt" - examples: - Example: - value: - totals: - company_debit: '1080.47' - net_pay_debit: '748.34' - child_support_debit: '100.0' - reimbursement_debit: '50.0' - tax_debit: '182.13' - taxes: - - name: Federal Income Tax - amount: '30.36' - - name: Social Security - amount: '104.54' - - name: Medicare - amount: '24.46' - - name: Additional Medicare - amount: '0.0' - - name: TX SUTA - amount: '22.77' - - name: FUTA - amount: '0.0' - employee_compensations: - - employee_uuid: f83d0bd8-7e20-43b9-834c-6d514ef6cb47 - employee_first_name: Patricia - employee_last_name: Hamill - payment_method: Direct Deposit - net_pay: '748.34' - total_tax: '182.13' - total_garnishments: '0.0' - child_support_garnishment: '100.0' - total_reimbursement: '50.0' - licensee: - name: Gusto, Zenpayroll Inc. - address: 525 20th St - city: San Francisco - state: CA - postal_code: '94107' - phone_number: '4157778888' - payroll_uuid: afccb970-357e-4013-81f5-85dafc74f9b6 - company_uuid: c827aa0d-3928-4d5a-ab1f-400641a7d2b8 - name_of_sender: Torp and Sons and Sons - name_of_recipient: Payroll Recipients - recipient_notice: Payroll recipients include the employees listed below plus the tax agencies for the taxes listed below. - debit_date: '2022-06-02' - license: ZenPayroll, Inc., dba Gusto is a licensed money transmitter. For more about Gusto’s licenses and your state-specific rights to request information, submit complaints, dispute errors, or cancel transactions, visit our license page. - license_uri: https://gusto.com/about/licenses - right_to_refund: https://gusto.com/about/licenses - liability_of_licensee: https://gusto.com/about/licenses - Payroll-Reversal-List: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Wire-In-Request" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Wire-In-Request-Update-Request-Body" + required: true + x-speakeasy-group: wireInRequests + x-speakeasy-name-override: submit + "/v1/companies/{company_uuid}/wire_in_requests": + get: + summary: Get all Wire In Requests for a company + operationId: get-companies-company_uuid-wire_in_request_uuid + security: + - CompanyAccessAuth: [] + description: |- + Fetches all Wire In Requests for a company. + + scope: `payrolls:read` + tags: + - Wire In Requests + x-gusto-integration-type: + - embedded + parameters: + - name: company_uuid + in: path + description: The UUID of the company + required: true schema: - "$ref": "#/components/schemas/Payroll-Reversal" - examples: - Example: - value: - reversed_payroll_uuid: '09505984-8d8c-41a3-adbe-5740322ae8e9' - reversal_payroll_uuid: '0424688e-0a2e-4cd0-ac86-42283e788fb3' - reason: Customer Request - approved_at: - category: convert_check_ee_requested - reversed_employee_uuids: - - 5f036964-185e-4c85-bbf2-3873e1203b30 - Gross-Up-Pay: - description: Example response - content: - application/json: + type: string + - name: X-Gusto-API-Version + in: header schema: - "$ref": "#/components/schemas/Gross-Up-Pay" - examples: - Example: - value: - net_pay: '1183.25' - Contractor-Payment-Receipt: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: page + in: query + required: false + description: The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. schema: - "$ref": "#/components/schemas/Contractor-Payment-Receipt" - examples: - Example: - value: - contractor_payment_uuid: afccb970-357e-4013-81f5-85dafc74f9b6 - name_of_recipient: Patricia Hamill - totals: - company_debit: '748.34' - contractor_payments: - - contractor_uuid: f83d0bd8-7e20-43b9-834c-6d514ef6cb47 - contractor_first_name: Patricia - contractor_last_name: Hamill - contractor_business_name: '' - contractor_type: Individual - payment_method: Direct Deposit - wage: '448.34' - bonus: '248.00' - reimbursement: '100.00' - licensee: - name: Gusto, Zenpayroll Inc. - address: 525 20th St - city: San Francisco - state: CA - postal_code: '94107' - phone_number: '4157778888' - company_uuid: c827aa0d-3928-4d5a-ab1f-400641a7d2b8 - name_of_sender: Torp and Sons and Sons - debit_date: '2022-06-02' - license: Your payroll provider partners with Gusto Inc. for payments processing. Gusto Inc. is a licensed money transmitter. Learn more on our license page. - license_uri: https://gusto.com/about/licenses - right_to_refund: https://gusto.com/about/licenses - liability_of_licensee: https://gusto.com/about/licenses - Contractor-Bank-Account-Object: - description: Example response - content: - application/json: + type: integer + - name: per + in: query + required: false + description: Number of objects per page. For majority of endpoints will default to 25 schema: - "$ref": "#/components/schemas/Contractor-Bank-Account" - examples: - Example: - value: - uuid: 1531e824-8d9e-4bd8-9f90-0d04608125d7 - contractor_uuid: 9fcf1b1d-8886-4691-9283-383d3bdd4fd9 - name: BoA Checking Account - routing_number: '266905059' - hidden_account_number: XXXX1207 - account_type: Checking - Contractor-Bank-Account-List: - description: Example response - content: - application/json: + type: integer + x-gusto-rswag: true + responses: + '200': + description: Success + content: + application/json: + schema: + "$ref": "#/components/schemas/Wire-In-Request-List" + x-speakeasy-group: wireInRequests + x-speakeasy-name-override: list + "/v1/employees/{employee_id}/work_addresses": + get: + summary: Get an employee's work addresses + operationId: get-v1-employees-employee_id-work_addresses + security: + - CompanyAccessAuth: [] + description: |- + Returns a list of an employee's work addresses. Each address includes its effective + date and a boolean signifying if it is the currently active work address. + + scope: `employees:read` + tags: + - Employee Addresses + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: employee_id + in: path + description: The UUID of the employee + required: true schema: - type: array - items: - "$ref": "#/components/schemas/Contractor-Bank-Account" - examples: - Example: - value: - - uuid: 1531e824-8d9e-4bd8-9f90-0d04608125d7 - contractor_uuid: 9fcf1b1d-8886-4691-9283-383d3bdd4fd9 - name: BoA Checking Account - routing_number: '266905059' - hidden_account_number: XXXX1207 - account_type: Checking - Time-Off-Policy-Object: - description: Example response - content: - application/json: + type: string + - name: X-Gusto-API-Version + in: header schema: - "$ref": "#/components/schemas/Time-Off-Policy" - examples: - Unlimited Policy: - value: - uuid: 3f746cd0-dd08-408f-b712-8180c7c621e9 - company_uuid: de83cff2-8e7a-448e-a28c-14258a9971c3 - name: Test Vacation Unlimited Policy - policy_type: vacation - accrual_method: unlimited - accrual_rate: - accrual_rate_unit: - paid_out_on_termination: false - accrual_waiting_period_days: - carryover_limit_hours: - max_accrual_hours_per_year: - max_hours: - version: f5556bce3d75ec2b62bd11990aa7993a - is_active: true - complete: true - employees: - - uuid: 05ed3150-591e-4f8b-bfd5-55d478edd2d8 - - uuid: 3633ce57-abb7-422f-8c5a-455566618e6a - - uuid: 9b37429c-e540-40fb-86b3-738ca9af65c7 - Fixed Policy: - value: - uuid: 2439c13f-f6d7-4a93-af8c-175fd4cc7ce8 - company_uuid: f5f7b10d-2ddb-42f6-a955-d55320ce5316 - name: Test Vacation Fixed Policy - policy_type: vacation - accrual_method: per_anniversary_year - accrual_rate: '120.0' - accrual_rate_unit: - paid_out_on_termination: true - accrual_waiting_period_days: 0 - carryover_limit_hours: '240.0' - max_accrual_hours_per_year: '120.0' - max_hours: '300.0' - version: f5556bce3d75ec2b62bd11990aa7993a - is_active: true - complete: true - employees: - - uuid: de7a5fb3-2e0f-460a-abbf-467fe310bf5c - balance: '80.0' - - uuid: 92af03c7-a833-43ae-bae8-f67007a59b37 - balance: '60.0' - Hourly Policy: - value: - uuid: bd5f354f-12e0-4a5e-ad1f-953bb2685ad4 - company_uuid: 6767445f-5075-4ea4-a7f5-d5b5b93d4d60 - name: Test Vacation Hourly Policy - policy_type: vacation - accrual_method: per_hour_paid - accrual_rate: '4.0' - accrual_rate_unit: '80.0' - paid_out_on_termination: true - accrual_waiting_period_days: 30 - carryover_limit_hours: '200.0' - max_accrual_hours_per_year: '120.0' - max_hours: '240.0' - version: f5556bce3d75ec2b62bd11990aa7993a - is_active: true - complete: true - employees: - - uuid: 1ea2764d-0f1a-4f09-b1d9-3006aecf63c4 - balance: '56.0' - - uuid: a0db19a2-7c8f-42b4-9d4c-2e6246c3d6e8 - balance: '84.0' - Time-Off-Policy-List: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '200': + description: List of employee work addresses + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Work-Addresses-List" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: employeeAddresses + x-speakeasy-name-override: getWorkAddresses + post: + summary: Create an employee work address + operationId: post-v1-employees-employee_id-work_addresses + security: + - CompanyAccessAuth: [] + description: |- + The work address of an employee describes when an employee began working at an associated company location. + + scope: `employees:manage` + tags: + - Employee Addresses + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: employee_id + in: path + description: The UUID of the employee + required: true schema: - type: array - items: - "$ref": "#/components/schemas/Time-Off-Policy" - examples: - example: - value: - - uuid: 3f746cd0-dd08-408f-b712-8180c7c621e9 - company_uuid: de83cff2-8e7a-448e-a28c-14258a9971c3 - name: Test Vacation Unlimited Policy - policy_type: vacation - accrual_method: unlimited - accrual_rate: - accrual_rate_unit: - paid_out_on_termination: false - accrual_waiting_period_days: - carryover_limit_hours: - max_accrual_hours_per_year: - max_hours: - version: f5556bce3d75ec2b62bd11990aa7993a - is_active: true - complete: true - employees: - - uuid: 05ed3150-591e-4f8b-bfd5-55d478edd2d8 - - uuid: 3633ce57-abb7-422f-8c5a-455566618e6a - - uuid: 9b37429c-e540-40fb-86b3-738ca9af65c7 - - uuid: 2439c13f-f6d7-4a93-af8c-175fd4cc7ce8 - company_uuid: f5f7b10d-2ddb-42f6-a955-d55320ce5316 - name: Test Vacation Fixed Policy - policy_type: vacation - accrual_method: per_anniversary_year - accrual_rate: '120.0' - accrual_rate_unit: - paid_out_on_termination: true - accrual_waiting_period_days: 0 - carryover_limit_hours: '240.0' - max_accrual_hours_per_year: '120.0' - max_hours: '300.0' - version: f5556bce3d75ec2b62bd11990aa7993a - is_active: true - complete: true - employees: - - uuid: de7a5fb3-2e0f-460a-abbf-467fe310bf5c - balance: '80.0' - - uuid: 92af03c7-a833-43ae-bae8-f67007a59b37 - balance: '60.0' - - uuid: bd5f354f-12e0-4a5e-ad1f-953bb2685ad4 - company_uuid: 6767445f-5075-4ea4-a7f5-d5b5b93d4d60 - name: Test Vacation Hourly Policy - policy_type: vacation - accrual_method: per_hour_paid - accrual_rate: '4.0' - accrual_rate_unit: '80.0' - paid_out_on_termination: true - accrual_waiting_period_days: 30 - carryover_limit_hours: '200.0' - max_accrual_hours_per_year: '120.0' - max_hours: '240.0' - version: f5556bce3d75ec2b62bd11990aa7993a - is_active: true - complete: true - employees: - - uuid: 1ea2764d-0f1a-4f09-b1d9-3006aecf63c4 - balance: '56.0' - - uuid: a0db19a2-7c8f-42b4-9d4c-2e6246c3d6e8 - balance: '84.0' - Time-Off-Activity-Object: - description: Example response - content: - application/json: + type: string + - name: X-Gusto-API-Version + in: header schema: - "$ref": "#/components/schemas/Time-Off-Activity" - examples: - example: - value: - - policy_uuid: a7838f74-4c29-4b70-9bfb-02a4e3e60709 - time_off_type: vacation - policy_name: Paid Time Off - event_type: TimeOffEvent::AddToPolicy - event_description: 'Added to policy: Vacation Per Hour Worked' - effective_time: '2022-09-27T13:43:03.000-07:00' - balance: '0.0' - balance_change: '0.0' - - policy_uuid: a7838f74-4c29-4b70-9bfb-02a4e3e60709 - time_off_type: vacation - policy_name: Paid Time Off - event_type: TimeOffEvent::Accrual - event_description: Accrual - effective_time: '2022-09-27T14:43:03.000-07:00' - balance: '2.0' - balance_change: '2.0' - Invoice-Data-Object: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '201': + description: created + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Work-Address" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: unprocessable entity + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + properties: + location_uuid: + type: string + description: Reference to a company location + example: 6a119be7-b4b0-4e27-aaa0-89d5f2524635 + effective_date: + type: string + format: date + description: Date the employee began working at the company location + example: '2023-05-15' + required: true + x-speakeasy-group: employeeAddresses + x-speakeasy-name-override: createWorkAddress + "/v1/work_addresses/{work_address_uuid}": + get: + summary: Get an employee work address + operationId: get-v1-work_addresses-work_address_uuid + security: + - CompanyAccessAuth: [] + description: |- + The work address of an employee is used for payroll tax purposes. + + scope: `employees:read` + tags: + - Employee Addresses + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: work_address_uuid + in: path + description: The UUID of the work address + required: true schema: - "$ref": "#/components/schemas/Invoice-Data" - examples: - example: - value: - active_companies: - - company_uuid: 05ed3150-591e-4f8b-bfd5-55d478edd2d8 - active_employees: 5 - active_contractors: 3 - initial_invoice_period: 2022-01 - - company_uuid: 9b37429c-e540-40fb-86b3-738ca9af65c7 - active_employees: 0 - active_contractors: 1 - initial_invoice_period: 2023-05 - Minimum-Wage-List: - description: Example response - content: - application/json: + type: string + - name: X-Gusto-API-Version + in: header schema: - type: array - items: - "$ref": "#/components/schemas/Minimum-Wage" - examples: - Example: - value: - - uuid: 70c523ff-c71e-4474-9c83-a4ea51bd54a8 - authority: State - wage: '13.0' - wage_type: Regular - effective_date: '2022-01-01' - notes: Employers with 6 or more employees - Information-Request-List: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Work-Address" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: employeeAddresses + x-speakeasy-name-override: retrieveWorkAddress + put: + summary: Update an employee work address + operationId: put-v1-work_addresses-work_address_uuid + security: + - CompanyAccessAuth: [] + description: |- + The work address of an employee is used for payroll tax purposes. + + scope: `employees:manage` + tags: + - Employee Addresses + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: work_address_uuid + in: path + description: The UUID of the work address + required: true schema: - type: array - items: - "$ref": "#/components/schemas/Information-Request" - examples: - Example: - value: - - uuid: e83d273e-4ae9-4b61-9c71-4030c2f73093 - company_uuid: c5e3e3e9-732f-4762-849e-20b5cec9036f - type: company_onboarding - status: pending_response - blocking_payroll: true - required_questions: - - question_uuid: a1b2c3d4-e5f6-7890-abcd-ef1234567890 - question_text: How much wood can a wood chuck chuck? - response_type: text - - question_uuid: b2c3d4e5-f6a7-8901-bcde-f12345678901 - question_text: Please upload supporting documentation - response_type: document - Recovery-Case-List: - description: Example response - content: - application/json: + type: string + - name: X-Gusto-API-Version + in: header schema: - type: array - items: - "$ref": "#/components/schemas/Recovery-Case" - examples: - Example: - value: - - uuid: e83d273e-4ae9-4b61-9c71-4030c2f73093 - company_uuid: c5e3e3e9-732f-4762-849e-20b5cec9036f - status: open - latest_error_code: R01 - original_debit_date: '2023-10-11' - check_date: '2023-10-13' - payroll_uuid: 210f2034-fb4a-4059-b109-6c3b5efe499d - contractor_payment_uuids: - amount_outstanding: '10499.43' - event_total_amount: '5912.07' - Ach-Transaction-List: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Employee-Work-Address" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: unprocessable entity + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + allOf: + - "$ref": "#/components/schemas/Versionable-Required" + - type: object + properties: + location_uuid: + type: string + description: Reference to a company location + example: 6a119be7-b4b0-4e27-aaa0-89d5f2524635 + effective_date: + type: string + format: date + example: '2023-05-15' + required: true + x-speakeasy-group: employeeAddresses + x-speakeasy-name-override: updateWorkAddress + delete: + summary: Delete an employee's work address + operationId: delete-v1-work_addresses-work_address_uuid + security: + - CompanyAccessAuth: [] + description: |- + Used for deleting an employee's work address. Cannot delete the employee's active work address. + + scope: `employees:manage` + tags: + - Employee Addresses + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: work_address_uuid + in: path + description: The UUID of the work address + required: true schema: - type: array - items: - "$ref": "#/components/schemas/Ach-Transaction" - examples: - Example: - value: - - uuid: 123e4567-e89b-12d3-a456-426655440000 - company_uuid: 456e7890-e12b-34c5-d678-901234567890 - payment_event_type: Payroll - payment_event_uuid: 789e0123-e45f-67ab-c890-123456789012 - recipient_type: Employee - recipient_uuid: 012e3456-f78d-90ab-12cd-345678901234 - error_code: - transaction_type: Credit employee pay - payment_status: submitted - payment_direction: credit - payment_event_check_date: '2023-10-02' - payment_date: '2023-10-17' - amount: '123.00' - description: PAY 380654 - Wire-In-Request-Object: - description: Example response - content: - application/json: + type: string + - name: X-Gusto-API-Version + in: header schema: - "$ref": "#/components/schemas/Wire-In-Request" - examples: - example: - value: - uuid: c5fdae57-5483-4529-9aae-f0edceed92d4 - status: awaiting_funds - origination_bank: JP Morgan Chase - origination_bank_address: 1 Chase Plaza, New York, NY 10081 - recipient_name: Gusto, Inc - recipient_address: 525 20th Street, San Francisco, CA 94107 - recipient_account_number: 21911761 - recipient_routing_number: 123454321 - additional_notes: Additional Notes - bank_name: JP Morgan Chase - date_sent: '2024-06-10' - unique_tracking_code: 1trvxwxp57zf - payment_type: Payroll - payment_uuid: 5faae454-e629-490b-a72a-c022c2c9e6bc - amount_sent: '1014500.00' - requested_amount: '1014500.00' - wire_in_deadline: '2024-06-21T18:00:00Z' - Wire-In-Request-List: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '204': + description: no content + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: unprocessable entity + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + x-speakeasy-group: employeeAddresses + x-speakeasy-name-override: deleteWorkAddress + "/v1/employees/{employee_id}/ytd_benefit_amounts_from_different_company": + get: + summary: Get year-to-date benefit amounts from a different company + operationId: get-employee-ytd-benefit-amounts-from-different-company + security: + - CompanyAccessAuth: [] + description: |- + Retrieves year-to-date benefit amounts that were contributed at a different company for the specified 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. + + scope: `employee_benefits:read` + tags: + - Employee Benefits + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header schema: - type: array - items: - "$ref": "#/components/schemas/Wire-In-Request" - examples: - Example: - value: - - uuid: c5fdae57-5483-4529-9aae-f0edceed92d4 - status: awaiting_funds - origination_bank: JP Morgan Chase - origination_bank_address: 1 Chase Plaza, New York, NY 10081 - recipient_name: Gusto, Inc - recipient_address: 525 20th Street, San Francisco, CA 94107 - recipient_account_number: 21911761 - recipient_routing_number: 5773243 - additional_notes: Additional Notes - bank_name: Chase - date_sent: '2024-06-10' - unique_tracking_code: 1trvxwxp57zf - payment_type: Payroll, - payment_uuid: 5faae454-e629-490b-a72a-c022c2c9e6bc - amount_sent: '1054693.52' - requested_amount: '1054693.52' - wire_in_deadline: '2024-06-21T18:00:00Z' - Time-Sheet-Object: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + required: true + description: The UUID of the employee schema: - "$ref": "#/components/schemas/Time-Sheet" - examples: - example: - value: - uuid: 123e4567-e89b-12d3-a456-426655440000 - company_uuid: 123e4567-e89b-12d3-a456-426655440000 - status: approved - time_zone: America/Los_Angeles - entity_type: Employee - version: 72deb67e16f7b92713c00d3582fa6c68 - job_uuid: 123e4567-e89b-12d3-a456-426655440000 - entity_uuid: 123e4567-e89b-12d3-a456-426655440000 - shift_started_at: '2025-03-04T13:07:10Z' - shift_ended_at: '2025-03-04T16:07:10Z' - created_at: '2025-04-29T16:08:53Z' - updated_at: '2025-04-29T16:08:53Z' - metadata: {} - entries: - - uuid: 123e4567-e89b-12d3-a456-426655440000 - hours_worked: '1.000' - pay_classification: Regular - - uuid: 123e4567-e89b-12d3-a456-426655440000 - hours_worked: '1.000' - pay_classification: Overtime - - uuid: 123e4567-e89b-12d3-a456-426655440000 - hours_worked: '1.000' - pay_classification: Double overtime - Time-Sheet-List: - description: Example response - content: - application/json: + type: string + - name: tax_year + in: query + required: false schema: - type: array - items: - "$ref": "#/components/schemas/Time-Sheet" - examples: - Example: - value: - - uuid: 123e4567-e89b-12d3-a456-426655440000 - company_uuid: 123e4567-e89b-12d3-a456-426655440000 - status: approved - time_zone: America/Los_Angeles - entity_type: Employee - version: 72deb67e16f7b92713c00d3582fa6c68 - job_uuid: 123e4567-e89b-12d3-a456-426655440000 - entity_uuid: 123e4567-e89b-12d3-a456-426655440000 - shift_started_at: '2025-03-04T13:07:10Z' - shift_ended_at: '2025-03-04T16:07:10Z' - created_at: '2025-04-29T16:08:53Z' - updated_at: '2025-04-29T16:08:53Z' - metadata: {} - entries: - - uuid: 123e4567-e89b-12d3-a456-426655440000 - hours_worked: '1.000' - pay_classification: Regular - - uuid: 123e4567-e89b-12d3-a456-426655440000 - hours_worked: '1.000' - pay_classification: Overtime - - uuid: 123e4567-e89b-12d3-a456-426655440000 - hours_worked: '1.000' - pay_classification: Double overtime - Company-Suspension: - description: Example response - content: - application/json: + type: integer + minimum: 2000 + maximum: 2999 + example: 2024 + description: The tax year for which to retrieve YTD benefit amounts. Defaults to current year if not specified. + x-gusto-rswag: true + responses: + '200': + description: OK + content: + application/json: + schema: + type: array + items: + "$ref": "#/components/schemas/Ytd-Benefit-Amounts-From-Different-Company" + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + x-speakeasy-group: employeeBenefits + x-speakeasy-name-override: getYtdBenefitAmountsFromDifferentCompany + post: + summary: Create year-to-date benefit amounts from a different company + operationId: post-employee-ytd-benefit-amounts-from-different-company + security: + - CompanyAccessAuth: [] + description: |- + 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 were employed at a different company. + + This endpoint only supports passing outside contributions for 401(k) benefits. + + scope: `employee_benefits:write` + tags: + - Employee Benefits + x-gusto-integration-type: + - embedded + - app-integrations + parameters: + - name: X-Gusto-API-Version + in: header schema: - "$ref": "#/components/schemas/Company-Suspension" - Company-Suspension-List: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + - name: employee_id + in: path + required: true + description: The UUID of the employee schema: - type: array - items: - "$ref": "#/components/schemas/Company-Suspension" - Time-Off-Request-Object: - description: Example response - content: - application/json: + type: string + x-gusto-rswag: true + responses: + '204': + description: No Content + '404': + description: | + Not Found + + The requested resource does not exist. Make sure the provided UUID is valid. + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '422': + description: | + Unprocessable Entity + + This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + "$ref": "#/components/schemas/Ytd-Benefit-Amounts-From-Different-Company-Body" + required: true + x-speakeasy-group: employeeBenefits + x-speakeasy-name-override: createYtdBenefitAmountsFromDifferentCompany + "/v1/payroll_digests": + post: + summary: Create a payroll digest batch + operationId: post-v1-payroll_digests + security: + - SystemAccessAuth: [] + description: "Triggers an asynchronous computation of payroll digest data (statuses, blockers, pay periods, totals) across up to 25 companies that the partner is mapped to.\n\nThe batch is processed asynchronously. Use the returned batch UUID to poll `GET /v1/payroll_digests/{payroll_digest_uuid}` for status and results.\n\nIdempotency is scoped per `(partner, idempotency_key)`. A duplicate POST with the same `idempotency_key` returns a 409 Conflict referencing the existing batch UUID — no duplicate computation occurs.\n\n\U0001F4D8 System Access Authentication\n\nThis endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access)\n\nscope: `payroll_digests:write`" + tags: + - Payroll Digests + x-gusto-integration-type: + - embedded + parameters: + - name: X-Gusto-API-Version + in: header schema: - "$ref": "#/components/schemas/Time-Off-Request" - Time-Off-Request-List: - description: Example response - content: - application/json: + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '201': + description: created + content: + application/json: + schema: + "$ref": "#/components/schemas/Payroll-Digest" + '409': + description: conflict - idempotency key already used by this partner + content: + application/json: + schema: + "$ref": "#/components/schemas/Payroll-Digest-Conflict-Error" + '422': + description: unprocessable entity - validation errors + content: + application/json: + schema: + "$ref": "#/components/schemas/Unprocessable-Entity-Error-Object" + requestBody: + content: + application/json: + schema: + type: object + required: + - idempotency_key + - batch_action + - batch + properties: + idempotency_key: + type: string + format: uuid + description: A partner-generated unique identifier to ensure idempotency of the batch request. Scoped per partner. + example: 80a74f8b-2c16-45e5-9038-aa108849c6e6 + batch_action: + type: string + enum: + - create + description: The action to perform on the batch. + example: create + batch: + type: array + description: Array of companies to fetch payroll digest data for. Maximum 25 companies per request. + minItems: 1 + maxItems: 25 + items: + type: object + required: + - entity_type + - uuid + properties: + entity_type: + type: string + enum: + - company + description: The type of entity to look up. + example: company + uuid: + type: string + format: uuid + description: The UUID of a company that the partner is mapped to. Companies that the partner is not authorized to access will appear in the response's `exclusions` array. + required: true + "/v1/payroll_digests/{payroll_digest_uuid}": + get: + summary: Get a payroll digest batch + operationId: get-v1-payroll_digests-payroll_digest_uuid + security: + - SystemAccessAuth: [] + description: "Returns the status and results of a payroll digest batch.\n\nPoll this endpoint until the batch `status` reaches a terminal value (`completed` or `failed`). Once terminal, the response includes the full `results` array (one entry per attempted company, each with its own per-company `status` — `success`, `partial_success`, or `failed`) and the `exclusions` array (one entry per company that could not be looked up or processed).\n\nNote that the top-level batch `status` (`pending` / `processing` / `completed` / `failed`) is distinct from the per-company `status` returned inside `results[]` and `exclusions[]`. A `completed` batch does not imply every company succeeded — inspect the arrays for per-company outcomes.\n\nResults are stored in Redis with a short TTL after completion. If the partner polls after results have expired, this endpoint returns 410 Gone — partners should re-submit a new batch to fetch fresh data.\n\n\U0001F4D8 System Access Authentication\n\nThis endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access)\n\nscope: `payroll_digests:read`" + tags: + - Payroll Digests + x-gusto-integration-type: + - embedded + parameters: + - name: payroll_digest_uuid + in: path + description: The UUID of the payroll digest batch returned by `POST /v1/payroll_digests`. + required: true schema: - type: array - items: - "$ref": "#/components/schemas/Time-Off-Request" - requestBodies: - post-employee-ytd-benefit-amounts-from-different-company: - required: true - content: - application/json: + type: string + - name: X-Gusto-API-Version + in: header schema: - type: object - properties: - benefit_type: - type: integer - description: The benefit type supported by Gusto. - tax_year: - type: number - minimum: 2000 - maximum: 2999 - description: The tax year for which this amount applies. - ytd_employee_deduction_amount: - type: string - default: '0.00' - description: The year-to-date employee deduction made outside the current company. - ytd_company_contribution_amount: - type: string - default: '0.00' - description: The year-to-date company contribution made outside the current company. - required: - - benefit_id - - tax_year - - ytd_employee_deduction_amount - - ytd_company_contribution_amount -security: - - CompanyAccessAuth: [] + type: string + enum: + - '2026-06-15' + default: '2026-06-15' + description: Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + x-gusto-rswag: true + responses: + '200': + description: successful + content: + application/json: + schema: + "$ref": "#/components/schemas/Payroll-Digest-Results" + '404': + description: Not Found + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + '410': + description: Gone - results have expired from Redis + content: + application/json: + schema: + "$ref": "#/components/schemas/Not-Found-Error-Object" + "/v1/information_requests/{information_request_uuid}/submit": + put: + x-gusto-integration-type: + - embedded + summary: Submit information request responses + tags: + - Information Requests + operationId: submit-information-request + x-speakeasy-group: informationRequests + x-speakeasy-name-override: submit + description: |- + Submit responses to an information request. + Supports both text responses and file uploads (multipart/form-data). + Maximum file size: 120MB. + + scope: `information_requests:write` + parameters: + - "$ref": "#/components/parameters/information_request_uuid" + requestBody: + required: true + content: + application/json: + schema: + type: object + properties: + required_questions: + type: array + items: + type: object + required: + - question_uuid + - response_type + properties: + question_uuid: + type: string + format: uuid + description: UUID of the question being answered + response_type: + type: string + enum: + - text + - document + description: Type of response - matches the question's response_type from GET + text_response: + type: string + description: Text response (required when response_type is text) + file_response: + type: string + description: Data URL with base64-encoded file (e.g., "data:image/png;base64,..."). Required when response_type is document. + file_name: + type: string + description: Original filename with extension (e.g., "document.pdf"). Used for document uploads. + responses: + '200': + description: Information request successfully submitted + content: + application/json: + schema: + "$ref": "#/components/schemas/Information-Request" + '422': + description: Validation error - invalid responses or missing required answers + "$ref": "#/components/responses/Unprocessable-Entity-Error-Object" + '404': + "$ref": "#/components/responses/Not-Found-Error-Object" diff --git a/.speakeasy/workflow.lock b/.speakeasy/workflow.lock index 12b8b5c3f..0d766975e 100644 --- a/.speakeasy/workflow.lock +++ b/.speakeasy/workflow.lock @@ -1,23 +1,23 @@ -speakeasyVersion: 1.768.2 +speakeasyVersion: 1.796.4 sources: GustoEmbedded-OAS: sourceNamespace: gusto-embedded-oas - sourceRevisionDigest: sha256:379bbf7e06f163379db1f96afc529190fb2a2d4919fa7302e269a4983316c665 - sourceBlobDigest: sha256:8203c96e2a5a6525354b175c0aed3ae72b00a4fe1d2afdce59de98d0d0d15706 + sourceRevisionDigest: sha256:ccf84de3d742668bd3e98ca4abfd20a94a4a1c7614c597a4a2b7f84c745e68f7 + sourceBlobDigest: sha256:4ec06080f3d53f05eae8db4121c4e7b5a37f3d7a5dfba3e6da676a29eef94266 tags: - latest - "2025-06-15" GustoEmbedded-OAS-v2025-11-15: sourceNamespace: gusto-embedded-oas-v2025-11-15 - sourceRevisionDigest: sha256:d0217da4f7a5b3f63ceb5d299cfbbc8f1178772aff3dec517ce4d42f286174ae - sourceBlobDigest: sha256:3d0895671895eef6530d62138db4cfbcdee7bf182602f02934031e0dc17b180d + sourceRevisionDigest: sha256:84a354d36272eed247fb0c8e89f8b795ed89c1af8b244e1ff968490c12dedb7a + sourceBlobDigest: sha256:0dc4654c6996a554779c68939655a911b53f6decc3d65c95b7ccca37265945d4 tags: - latest - "2025-11-15" GustoEmbedded-OAS-v2026-06-15: sourceNamespace: gusto-embedded-oas-v2026-06-15 - sourceRevisionDigest: sha256:f35a7078c0b3bf293e5bbc12b5694caf35de97d2bcd7430f4e761bfa296e7aff - sourceBlobDigest: sha256:e64d71e6ecd26d23f86e0bec1bf340c3098096316fde81124dd56f9c9c9ca7dc + sourceRevisionDigest: sha256:3818af0bc9242ec1840ccc6fa2d9e883a5a2ac2d7e54f434a244461babedacaf + sourceBlobDigest: sha256:8b1729ca3330347f3ffdfdc89182a57d09b8ccd49d271e700ada5ab85fe275d3 tags: - latest - "2026-06-15" @@ -25,24 +25,24 @@ targets: gusto-embedded: source: GustoEmbedded-OAS sourceNamespace: gusto-embedded-oas - sourceRevisionDigest: sha256:379bbf7e06f163379db1f96afc529190fb2a2d4919fa7302e269a4983316c665 - sourceBlobDigest: sha256:8203c96e2a5a6525354b175c0aed3ae72b00a4fe1d2afdce59de98d0d0d15706 + sourceRevisionDigest: sha256:ccf84de3d742668bd3e98ca4abfd20a94a4a1c7614c597a4a2b7f84c745e68f7 + sourceBlobDigest: sha256:4ec06080f3d53f05eae8db4121c4e7b5a37f3d7a5dfba3e6da676a29eef94266 codeSamplesNamespace: gusto-embedded-oas-java-code-samples - codeSamplesRevisionDigest: sha256:0a84bd74a9025c63567037ab4b5c784c92cd92fcc9829a8f12272ea0cfcae596 + codeSamplesRevisionDigest: sha256:da8841f53d14433e8863c4ae49889c19b477e8774c02c99672cd6d52270163d9 gusto-embedded-v2025-11-15: source: GustoEmbedded-OAS-v2025-11-15 sourceNamespace: gusto-embedded-oas-v2025-11-15 - sourceRevisionDigest: sha256:d0217da4f7a5b3f63ceb5d299cfbbc8f1178772aff3dec517ce4d42f286174ae - sourceBlobDigest: sha256:3d0895671895eef6530d62138db4cfbcdee7bf182602f02934031e0dc17b180d + sourceRevisionDigest: sha256:84a354d36272eed247fb0c8e89f8b795ed89c1af8b244e1ff968490c12dedb7a + sourceBlobDigest: sha256:0dc4654c6996a554779c68939655a911b53f6decc3d65c95b7ccca37265945d4 codeSamplesNamespace: gusto-embedded-oas-java-code-samples-v2025-11-15-code-samples - codeSamplesRevisionDigest: sha256:f15edb43adde121d04c5e80d50d715c17f7588cc2edbcc92625dbeb73f80890a + codeSamplesRevisionDigest: sha256:05475c79a5af37b42e0cfd888f6aa502c23beb5812fbfa4f228acb8b9f58cc8f gusto-embedded-v2026-06-15: source: GustoEmbedded-OAS-v2026-06-15 sourceNamespace: gusto-embedded-oas-v2026-06-15 - sourceRevisionDigest: sha256:f35a7078c0b3bf293e5bbc12b5694caf35de97d2bcd7430f4e761bfa296e7aff - sourceBlobDigest: sha256:e64d71e6ecd26d23f86e0bec1bf340c3098096316fde81124dd56f9c9c9ca7dc + sourceRevisionDigest: sha256:3818af0bc9242ec1840ccc6fa2d9e883a5a2ac2d7e54f434a244461babedacaf + sourceBlobDigest: sha256:8b1729ca3330347f3ffdfdc89182a57d09b8ccd49d271e700ada5ab85fe275d3 codeSamplesNamespace: gusto-embedded-oas-java-code-samples-v2026-06-15-code-samples - codeSamplesRevisionDigest: sha256:dbe4e004431ac92c8bd4b9a8c9925f24c83f205157368b2021f108c772bf8462 + codeSamplesRevisionDigest: sha256:23b697b03be68d26f78c3595311bec87865b2165f2463594d17d09a6b93f1ce3 workflow: workflowVersion: 1.0.0 speakeasyVersion: latest diff --git a/RELEASES.md b/RELEASES.md index 6f2516c40..f42fdf8d7 100644 --- a/RELEASES.md +++ b/RELEASES.md @@ -14,4 +14,12 @@ Based on: - OpenAPI Doc - Speakeasy CLI 1.768.2 (2.889.1) https://github.com/speakeasy-api/speakeasy ### Generated -- [java v0.0.1] gusto_embedded_v_2026_06_15 \ No newline at end of file +- [java v0.0.1] gusto_embedded_v_2026_06_15 + +## 2026-09-09 00:29:57 +### Changes +Based on: +- OpenAPI Doc +- Speakeasy CLI 1.796.4 (2.935.1) https://github.com/speakeasy-api/speakeasy +### Generated +- [java v0.1.0] gusto_embedded_v_2026_06_15 \ No newline at end of file diff --git a/gusto_embedded/.speakeasy/gen.lock b/gusto_embedded/.speakeasy/gen.lock index 8076f6c00..e25a52af1 100644 --- a/gusto_embedded/.speakeasy/gen.lock +++ b/gusto_embedded/.speakeasy/gen.lock @@ -1,25 +1,25 @@ lockVersion: 2.0.0 id: 5d57a1bf-31fa-4bb7-8d47-6fe0473a6fda management: - docChecksum: 25abba0d414667155b65157f200ff6a6 + docChecksum: bd35e9538b1e20f521cb15c98428509a docVersion: "2025-06-15" - speakeasyVersion: 1.768.2 - generationVersion: 2.889.1 - releaseVersion: 0.3.4 - configChecksum: 6c37b16792253bae1fd0024ea1b0c9e4 + speakeasyVersion: 1.796.4 + generationVersion: 2.935.1 + releaseVersion: 0.4.0 + configChecksum: 877bffc77e077791e9f83102c5b81332 repoURL: https://github.com/Gusto/gusto-java-client.git repoSubDirectory: gusto_embedded installationURL: https://github.com/Gusto/gusto-java-client persistentEdits: - generation_id: 5d7b2e3c-0965-4f6f-9692-209d6ba3b153 - pristine_commit_hash: 7907391b537c54dceb6cbd8d73d0ff2c600acf14 - pristine_tree_hash: 9f3582cd5961465ce164510bac38cd4610b4558b + generation_id: f5b9dcc8-6c89-4131-9f51-50674990c32a + pristine_commit_hash: b65ccb8cc2f6a2f555a821e78b7e8c1fc0bae60d + pristine_tree_hash: dad01f4b221f451fb1ef9a0152d0bf7af2a0e93b features: java: additionalDependencies: 0.1.0 - additionalProperties: 0.0.1 + additionalProperties: 0.0.2 constsAndDefaults: 0.1.3 - core: 3.55.26 + core: 3.57.2 deprecations: 2.81.2 downloadStreams: 0.1.1 flattening: 2.81.1 @@ -32,10 +32,10 @@ features: inputOutputModels: 2.83.0 methodSecurity: 2.82.4 nameOverrides: 2.81.5 - nullables: 0.1.0 + nullables: 0.1.1 sdkHooks: 1.2.0 serverIDs: 2.81.1 - unions: 0.3.6 + unions: 0.3.8 uploadStreams: 0.1.0 trackedFiles: .gitattributes: @@ -44,12 +44,12 @@ trackedFiles: pristine_git_object: 8f8da085659bbf87d293b49b4593e43137a4acb0 USAGE.md: id: 3aed33ce6e6f - last_write_checksum: sha1:4be58e2376040ba503a8e4e565ad246bf6e69421 - pristine_git_object: 82971d7bcdec241be81b8035d5411644d00b2864 + last_write_checksum: sha1:188ee6b1679f03ad75edd683115f5d84e5eda43a + pristine_git_object: 9f9728887c265e82fc28070d9adeaa41bbcb15d7 build.gradle: id: f07866736216 - last_write_checksum: sha1:cb3fa37f389353e794b8857c1b8bc7684028fda2 - pristine_git_object: 1f9254c3673fb779f1c1284a7475e986899f03e1 + last_write_checksum: sha1:b6d40dc9645ee108cf0bf1aa3122f53a782bff98 + pristine_git_object: 24984bebc0fd7026c6f971e00b393a735e8f06ca docs/models/components/AccountType.md: id: 32b5b4e60da5 last_write_checksum: sha1:64a3904460454c1e640f6072b47616114bee2af4 @@ -60,12 +60,8 @@ trackedFiles: pristine_git_object: 43161598279764d47c0c307505a073128d75e6e1 docs/models/components/AchTransaction.md: id: c49ada058827 - last_write_checksum: sha1:939c24dd6fb6293759b8778126975c7a737afb7f - pristine_git_object: b3783352c3e5aee1507ae64ca94c0cf8abd25884 - docs/models/components/AchTransactionRecipientType.md: - id: 29d384f9a03f - last_write_checksum: sha1:ff2e51e7238bc015cfaeff534cdbe9a6248176e0 - pristine_git_object: a61aa21b3cd5fb532a96ba5d932bd1bca5b453da + last_write_checksum: sha1:33ab87089c8f7b839d308a8f68b56faa8aa83e99 + pristine_git_object: f5c0589dcb254082cffcac9e9a8a970428769934 docs/models/components/Action.md: id: 45f4a6205564 last_write_checksum: sha1:5fb591b202e62ef2b78f291d0644c023c7d767af @@ -92,8 +88,8 @@ trackedFiles: pristine_git_object: a8deac80b4f101043b4c0e8f6e7ba2a6e6d9fb8c docs/models/components/Aggregation.md: id: e5d63019622a - last_write_checksum: sha1:08e4fba770c536c0f4a2b8fe15cda94af64cbe42 - pristine_git_object: 6116fea7b2124498ca9bd64df58110a77d9fca69 + last_write_checksum: sha1:6323965fb8b2a57028c8c9c005a1b9db4ec42a30 + pristine_git_object: 3135bd3ef33c6404a0504daf84bd9354b82b15de docs/models/components/AmountType.md: id: 663939309beb last_write_checksum: sha1:b2db564fbf6c7d48692d3bb17172848d479a8e42 @@ -140,24 +136,20 @@ trackedFiles: pristine_git_object: f1e7b78532bd5e7f2ddad60282481ec907142c51 docs/models/components/BatchAction.md: id: ddc06cdc93b6 - last_write_checksum: sha1:35a136724191328d396b377cb1ef7b29a52864d6 - pristine_git_object: 499007b628cc8b811e5e113977f5c08ad7c0e246 + last_write_checksum: sha1:58fbd9ce7442cac5f64a469f730e1bed2d5b1705 + pristine_git_object: 6569b9b3f25ca50ac494977367c95c9f33f27428 docs/models/components/BenefitSummary.md: id: c5490be656b5 - last_write_checksum: sha1:8a0329c5bc402cd5da16b85fd648881f9cbfc930 - pristine_git_object: 1b77eb091a13d992af741c956ceacfdd6656e3ab - docs/models/components/BenefitSummaryEmployees.md: - id: f6a84fcf342c - last_write_checksum: sha1:351c5f9fc87b1a1e9e5565e2c2e03ab13f36f851 - pristine_git_object: 04409f20793e969537696eaf8811d1e273c352cc + last_write_checksum: sha1:760a6f470506e435577a75fb05ad32c6c0533cce + pristine_git_object: 039a753cc54bcc46f205509ceadb26645a782563 docs/models/components/BenefitSummaryPayPeriod.md: id: 18e7cd0a560f last_write_checksum: sha1:a845aae220af9821e52179b9b5f6da3bdbb15750 pristine_git_object: b18fb3329ec844e28727c4bb0ee24d4c164042db docs/models/components/BenefitTypeRequirements.md: id: 6fbbf940f96b - last_write_checksum: sha1:10a789304ba3315603ee079dcc271e1c0338aea0 - pristine_git_object: 605be56204ca00aa3e8efd28004a968bfd194174 + last_write_checksum: sha1:20fd2bcd7a34e50ca58e57e6d0c7bb024eda23c3 + pristine_git_object: 8ab0f5e7b99e2412b34f28f05e3630a9f0ca671d docs/models/components/BenefitTypeRequirementsCatchUpDefaultValue.md: id: 83a058b41ac1 last_write_checksum: sha1:bec87202b30d242cee29406db62f6d00b4530ebd @@ -166,10 +158,6 @@ trackedFiles: id: 82037000a66c last_write_checksum: sha1:39cbc56bbab8a58c90cbc68d347a79dab64b0c90 pristine_git_object: 16a2879833f7e82af30bee1319fbe36e0ebf2244 - docs/models/components/BenefitTypeRequirementsContribution.md: - id: 6b2c86311d6c - last_write_checksum: sha1:84b2d6b4aa1e15d4ab533334b0394bad85b3a464 - pristine_git_object: 02b99f614d534d8b809e9931d9472a225b9c22dd docs/models/components/BenefitTypeRequirementsCoverageAmountDefaultValue.md: id: 487b96b0e224 last_write_checksum: sha1:1f30be4cb612a58bcb7c70efa16913ae3a9f5f9c @@ -200,8 +188,56 @@ trackedFiles: pristine_git_object: 1902bff23d8faffcb7051c14139f80e9a00662ca docs/models/components/Blockers.md: id: 5a96143923fd - last_write_checksum: sha1:8c32d09c90f329f6ecaf6e0f0b9474ae280d971a - pristine_git_object: a9c5d26fdb797d2aa0ebdd0707326abe4a97f232 + last_write_checksum: sha1:f59a22b61a811345cecc10ebf23ce4405acf1cd9 + pristine_git_object: 3f3950886ce1dc651b1d83c939520cd71fb17869 + docs/models/components/BulkReport.md: + id: 72c5edae0d6c + last_write_checksum: sha1:4db6bf11bd83ec9c1653364686dfc244ad843c66 + pristine_git_object: f74c41ef5f3bce048304242ec7eb4cbfa935b8a4 + docs/models/components/BulkReportBody.md: + id: 5456d4b00a13 + last_write_checksum: sha1:065a9f701fa120828d66bc4b9441094c44c9526e + pristine_git_object: a492fe670a908de273a0d46095561554a7cd0e2d + docs/models/components/BulkReportCompany.md: + id: b74200873d5a + last_write_checksum: sha1:9060cbfddd5705eda765eaca15b5d8d7fa247191 + pristine_git_object: 403c6549099b45c49728e26d70d66195f397fc38 + docs/models/components/BulkReportCompanyStatus.md: + id: 0320128bc4dd + last_write_checksum: sha1:d3b06ff2a65e0bf30ced6808aace028f49e1c453 + pristine_git_object: c82fb43b10121698c2ea465423a1e6d20c6ff163 + docs/models/components/BulkReportCustomReportItem.md: + id: 1357328d5841 + last_write_checksum: sha1:075640b9f30744fa01221e33ffc2719e84bd7931 + pristine_git_object: 60c0cbc47c2ef50f3848747c1bba8f0bcf581289 + docs/models/components/BulkReportGeneralLedgerItem.md: + id: b9b8fe1d0284 + last_write_checksum: sha1:90a0eacd63291ea506235931941955d10d1802a6 + pristine_git_object: c2b22186bcc5e2d5a454f8871284598afeb0cde4 + docs/models/components/BulkReportGeneralLedgerItemReportType.md: + id: 6cbd2e830f8c + last_write_checksum: sha1:9b8840cf8e8ba41f95b56b86c63e61ffb6cbdc11 + pristine_git_object: 4177ba6734b13a2cb65aaab6b5e2493a5069b7a0 + docs/models/components/BulkReportItem.md: + id: b26e1dfbcbc7 + last_write_checksum: sha1:5f7ce5ccf97e79a6454c761b161c2a2b8df78745 + pristine_git_object: 822bc679de20e53aacfa75c0483dd5dd2b2568a9 + docs/models/components/BulkReportItemResult.md: + id: c22991b3fae2 + last_write_checksum: sha1:832b06c0f81a7ee828d822ef6a1b6efa73e3d81e + pristine_git_object: 035a9001d7ffa6d1d1463ec500aee95aacfd9b5c + docs/models/components/BulkReportItemResultReportType.md: + id: f6058cdad26b + last_write_checksum: sha1:9df556b0001fb3ae8506836f917ab0902c0c5d1d + pristine_git_object: 152c1642900039484f677968c8f24a4933c2e524 + docs/models/components/BulkReportItemResultStatus.md: + id: 72898a8deda7 + last_write_checksum: sha1:fa1130639c07815cd4e6436cb58e3fe22ea67ad2 + pristine_git_object: 70bbe3378292fe2d1afe79c233deb734d0fb51e8 + docs/models/components/BulkReportStatus.md: + id: bcdde57b8dba + last_write_checksum: sha1:24793cfcde3a04044f7d748988a158e0e85eed0b + pristine_git_object: 09ae66de6e4a4e4881b462c5b8820a4b50dbe401 docs/models/components/CatchUp.md: id: 75e0752e3b9d last_write_checksum: sha1:408fcb57b5bb0609dc60b24f397db3189fc54c83 @@ -232,8 +268,8 @@ trackedFiles: pristine_git_object: 2f0d92ede7ce8f75b2f5ba30268162a440a16989 docs/models/components/Columns.md: id: 2c0ae85d9402 - last_write_checksum: sha1:5c8da9d7e7318e837866d4126477a77af77253f5 - pristine_git_object: 07cb3ac37ec741d5c79100fb769e4f08b58c33a0 + last_write_checksum: sha1:d61a2230d48d4a189aa6c8e98e52c8dcd745b7a0 + pristine_git_object: 026811b5adad455353f6c40bfeb3dd637ebe79b0 docs/models/components/Company.md: id: a50352948c02 last_write_checksum: sha1:c2ab1a6c1b7efaaa928a44f6993c65d625ede642 @@ -404,12 +440,12 @@ trackedFiles: pristine_git_object: 9848d2e45c01ef224e5b06ec9f4c5ccaa657258a docs/models/components/Contractor.md: id: 1920d517318b - last_write_checksum: sha1:c22099280f39d0b22bc2e6bb679cbaa41bf43f38 - pristine_git_object: e9f68045bdf0260520e11ceff3f6791d92845e47 + last_write_checksum: sha1:3e5916a700abd7446c9ae2d58f80d4a09b536217 + pristine_git_object: 78bd8a45268e5715395969d1970b964f9359b21d docs/models/components/ContractorAddress.md: id: 6e7add70317c - last_write_checksum: sha1:1d517bbca73d42565872162908d8e0a877bc19ba - pristine_git_object: 782ff1953563bf0db4097216dd2118a5123a8735 + last_write_checksum: sha1:c6b6d5cafabfec07e90591acb95720de6ccd3bfb + pristine_git_object: 9927dcc3a4d81469ccb45540534b59cc6e009003 docs/models/components/ContractorAddressUpdateBody.md: id: c41c79d09142 last_write_checksum: sha1:5814f6c0a4e8c4ca19d4f69f9e152632dfdbc3ef @@ -432,8 +468,8 @@ trackedFiles: pristine_git_object: 7d1fe6aaeaf8a20a362ba86a3141dde089e5d0a0 docs/models/components/ContractorCreateRequestBody.md: id: ee6e4128485c - last_write_checksum: sha1:9542498db6005a3d3c86ae8bf2c18176bf9d2038 - pristine_git_object: 9507c9ce25a51d2296d6f8bbc7116ed4a6d40fe8 + last_write_checksum: sha1:d485cce2a48fac03eaef2cf3b8197cc6d59baed3 + pristine_git_object: 9c18cf5c1ba8f4b98333bd4b74355dc0115b50c5 docs/models/components/ContractorCreateRequestBodyType.md: id: 5b55ad3dc1ec last_write_checksum: sha1:c908529744af5a89d9e9f486e2d2d8e9535853a4 @@ -442,18 +478,10 @@ trackedFiles: id: 9093052f54c5 last_write_checksum: sha1:2921712ffec06c528fb9e486c4b437e3b9da3f9c pristine_git_object: 3d38b31d37c2bec88b23beb6f8c79ca4c8fcfb6d - docs/models/components/ContractorMemberPortalInvitationStatus.md: - id: 64e0e7b7efb5 - last_write_checksum: sha1:fb4865f78b87db13fecad2b9d05b8f7acbc6ac81 - pristine_git_object: 88a4a9ba616efd725d1dbef3934c2916a84c8d74 docs/models/components/ContractorOnboardingStatus.md: id: c306bc054c2a last_write_checksum: sha1:24b923fabf9ae55d38162de2965d892fdd999b98 pristine_git_object: 07dd219462278f2d07aa0f8d8e257b93517b2554 - docs/models/components/ContractorOnboardingStatus1.md: - id: df90c6ab9d9a - last_write_checksum: sha1:dd4deb1ef7d5d3189d3c608a08ce9a9e40e92e0f - pristine_git_object: 9afd0ee79d594b1a0f0ff9cffaa5891153b2848f docs/models/components/ContractorOnboardingStatusOnboardingStatus.md: id: a96d4a36ea23 last_write_checksum: sha1:dfb4a58d7e39020371173d7e4b92750c21a02acb @@ -484,20 +512,12 @@ trackedFiles: pristine_git_object: 34382d511e3fd57efa67c3ed15d46d09cf729a6b docs/models/components/ContractorPaymentDetailsList.md: id: 05a6d3271b00 - last_write_checksum: sha1:901deddf7ed8f8b32074e15dede2f4b22badca56 - pristine_git_object: a393d2b51cd2c44f12d69167951a8438e2cc1281 + last_write_checksum: sha1:bf4187f87f088bd43f43abe05831a81d5392cc04 + pristine_git_object: db2d5093b391f262d66aaced1392669f9a61b267 docs/models/components/ContractorPaymentDetailsListPaymentMethod.md: id: a05648d10967 last_write_checksum: sha1:a6b1fd5664778eec822c13a1937fce0e96593cda pristine_git_object: c66399e72a18c5bdd72dd31516c88ea800287e06 - docs/models/components/ContractorPaymentDetailsListSplitBy.md: - id: b5f97cf3c40b - last_write_checksum: sha1:2727a956b9821dfe16feaf1b95ea5136d0fdb3e5 - pristine_git_object: 493b8592a8609d2ec11b1e81336a1f6c08c97c0d - docs/models/components/ContractorPaymentDetailsListSplits.md: - id: 22ab2f5f3e1f - last_write_checksum: sha1:e6a393c4f09bd581f8a44ce20449f2d40fd34fe6 - pristine_git_object: 89d0bc39dab7046e5092b874ad5822f9c2169e28 docs/models/components/ContractorPaymentForGroup.md: id: e008571f2391 last_write_checksum: sha1:f686e34304e836599ef4e4c83f4bde8b033409f4 @@ -508,8 +528,8 @@ trackedFiles: pristine_git_object: ce7e964a012f179598212ff015559763d69922d3 docs/models/components/ContractorPaymentForGroupPreview.md: id: f97b69bed015 - last_write_checksum: sha1:ea75a4a97299dd1a0a23ce05d8e4ed00af8eaa06 - pristine_git_object: 3692137c4272fb25dc79e67f5de351dd1a534092 + last_write_checksum: sha1:6cea8966d8e1bf06a08c1c365a24ff7632c8d282 + pristine_git_object: ff0dddb1f402edfe02a047bbb302c866e58be36b docs/models/components/ContractorPaymentForGroupPreviewPaymentMethod.md: id: 9ae712d92f35 last_write_checksum: sha1:096a259b3bdcfa5383150c834c28dd52c924aa98 @@ -518,10 +538,6 @@ trackedFiles: id: 7db296ff554e last_write_checksum: sha1:a510640eebbc206384aebd756277f0121eb2d6b6 pristine_git_object: d07ebc7fe4f8e9821e55ee4d6ac5aff641037a33 - docs/models/components/ContractorPaymentForGroupPreviewWageType.md: - id: 1d1887b54b00 - last_write_checksum: sha1:b2cb94a02e05c13402e6ca237bea8c6681f50d11 - pristine_git_object: d617c2000ca8ddc28dc936974cb3d139085298b8 docs/models/components/ContractorPaymentForGroupStatus.md: id: c2349f6e3976 last_write_checksum: sha1:1342d10f978ad06c34e199780d906651548ade8c @@ -548,16 +564,12 @@ trackedFiles: pristine_git_object: 96dc4038df1d2d1917adc1e1de638285b4eec239 docs/models/components/ContractorPaymentGroupPreview.md: id: 67cf3509a6eb - last_write_checksum: sha1:1788ff25019d22d4ac7bd653f06fcc0681e07834 - pristine_git_object: 3783123f764f3dda950d96bb4a78a84a61ec12fc + last_write_checksum: sha1:1cd98804a9289678b8a9bdddd1d8cbe02d084e62 + pristine_git_object: bf2893ac1d9b4933edba6752ba6f9afddfe21f8a docs/models/components/ContractorPaymentGroupPreviewStatus.md: id: b7e4e82369a4 last_write_checksum: sha1:34de58d2d9b1e5a03ba32e6b73c6c8fda83d63db pristine_git_object: 4604f6b7b68055e138f4fc76a8d7f7c132485028 - docs/models/components/ContractorPaymentGroupPreviewTotals.md: - id: 92b24d10edaa - last_write_checksum: sha1:c3d67d0ac2ab9c7d334717b6221949a637a5ca93 - pristine_git_object: 99c1c6ceaace3d490d3137e882ed52094ae78baa docs/models/components/ContractorPaymentGroupStatus.md: id: 73671f7c5629 last_write_checksum: sha1:201a2321e4a50dad5378d76f90da6a6fad0fd153 @@ -578,6 +590,22 @@ trackedFiles: id: c9289cc61b3b last_write_checksum: sha1:e8486803edc4a43235044125f7d2adf27bde177c pristine_git_object: 4388b6c92539ca4643854c944c6776c9e2c05ba5 + docs/models/components/ContractorPaymentListing.md: + id: 4b6ffe99500c + last_write_checksum: sha1:66eac01194216f16aafa370f5086fb86cdcf73ea + pristine_git_object: be5d0c0234560fe9d3b6f75b86996387c4c302f9 + docs/models/components/ContractorPaymentListingPaymentMethod.md: + id: "744218089439" + last_write_checksum: sha1:c29ce17e5ce85d299979ab17e74a5ad641b6ce30 + pristine_git_object: 4b93da598e9f08700bf23538affd6636f0d32c68 + docs/models/components/ContractorPaymentListingStatus.md: + id: 1717d98c291c + last_write_checksum: sha1:88c5c5581a5b190ebd9b8c2bc22c29fd1658346a + pristine_git_object: c003483703242e0b4d194dcaa73473ea01f1a780 + docs/models/components/ContractorPaymentListingWageType.md: + id: f0624ce91793 + last_write_checksum: sha1:1a462ddc0ceb4517c5de9c507403d18db2d316e1 + pristine_git_object: 64f7f2586fd80279b8ab2567d2fbf4780f64c2f9 docs/models/components/ContractorPaymentMethod.md: id: b1de3b896787 last_write_checksum: sha1:4f69bd45acfe350f44958118aea4612f63114102 @@ -600,12 +628,12 @@ trackedFiles: pristine_git_object: 14666197365af8dc7636f0e099a37436535b1eaa docs/models/components/ContractorPaymentReceipt.md: id: bc8aad722e24 - last_write_checksum: sha1:dce0f49192b9635beef89274116793d0d57c5f2b - pristine_git_object: 52b5de482f04fb9582e06dea4ead2fec827a6bba - docs/models/components/ContractorPaymentReceiptLicensee.md: - id: 8274d2aacec3 - last_write_checksum: sha1:f5eef038ae99bab3c5ba3f51009bb27028da10aa - pristine_git_object: b0731de4a0ff6ca1ae3b01ec13d835433f6cd2ab + last_write_checksum: sha1:f030c26803492cce8da8e786d9a71f25a006ac4a + pristine_git_object: f2fd2d6c0e19e761ae4a74aa8535d810dba13f69 + docs/models/components/ContractorPaymentReceiptContractorPayments.md: + id: 88f22d09783e + last_write_checksum: sha1:6e72e09920fd946ec2fc2ddfe71f7c48f631e950 + pristine_git_object: c2b4897c07c7a25a888e02292aa147d60cf8c987 docs/models/components/ContractorPaymentReceiptPaymentMethod.md: id: 9d6ca11aed19 last_write_checksum: sha1:0d626e472b86edbced4e60072b47e2b95edaefd8 @@ -620,8 +648,8 @@ trackedFiles: pristine_git_object: 637fed14fd80606e8144e1f65c0ec6edcffebea7 docs/models/components/ContractorPaymentSummary.md: id: 63fe2e442467 - last_write_checksum: sha1:cf55960b1e01a38c39367571d5062196ec2a5400 - pristine_git_object: 60f4326a58241b92a6519f6af4d45349d80fd399 + last_write_checksum: sha1:c3d8c1ab28e3d5cb9fafe91ffd7840c7db07c2f2 + pristine_git_object: c3777cb7f8e7bfb1bd2f73c40daf65c674127eb2 docs/models/components/ContractorPaymentSummaryByDates.md: id: 27094f498a71 last_write_checksum: sha1:1991066ca0a4bda6e708267c4b2c4ff905b0a439 @@ -634,18 +662,14 @@ trackedFiles: id: 895f4b7c1b2c last_write_checksum: sha1:1a0af244dc71013ec2f15318eb48489dbabae808 pristine_git_object: 61230941a8c002099449bf04887bcb7f5d44f9c3 - docs/models/components/ContractorPaymentSummaryContractorPayments.md: - id: 166d2a3cb65a - last_write_checksum: sha1:c0f1361d888de6a8f51fd312892d8097f98de9da - pristine_git_object: 24e1c0548324ccad771e5939bae9010101a55a76 docs/models/components/ContractorPaymentWageType.md: id: 499bee63481b last_write_checksum: sha1:83a96f5c45046a0da60d332c06a4500e1b42880b pristine_git_object: 2570ffb935a366764b5d537210f6e353940d898f docs/models/components/ContractorPayments.md: id: eb57e3c43cbe - last_write_checksum: sha1:671fdeacb4de1342457989ab8867e0da396f72eb - pristine_git_object: e474adff9b306fb131ecc5dbb71c1dd5495c0cd5 + last_write_checksum: sha1:e7afe357710e348e20d946ebaac1794c9129b67b + pristine_git_object: bda0472aeacec4d1319df443288990aef6b836aa docs/models/components/ContractorPaymentsPreview.md: id: ec07b87aaaf7 last_write_checksum: sha1:69cf3dc15ea241e4667b7d987e08f4187c651dbf @@ -672,8 +696,8 @@ trackedFiles: pristine_git_object: 8b035944e595006f70c62cd1531236713342a6ce docs/models/components/ContractorUpdateRequestBody.md: id: 5da71416e591 - last_write_checksum: sha1:7a8ddad8ff3965f4a3a8488ac8ad64f82b225fea - pristine_git_object: aafda5b8808df2353bc931eda3414ebb96b63f02 + last_write_checksum: sha1:a6939fb3a5d95149b782cc567aef2c087988ade9 + pristine_git_object: b4cf16a094d5f1f0452b16b3582f5c901a3a732d docs/models/components/ContractorUpdateRequestBodyType.md: id: 74afb8e29b3d last_write_checksum: sha1:e2c5e3d6dbd27eaf5816db7301a050cfd2e8a7a8 @@ -682,14 +706,18 @@ trackedFiles: id: 15e3ac5dda07 last_write_checksum: sha1:58813eee8e33c0d6a7df51379f728b3433949cd6 pristine_git_object: a8f5956d84268510f5d5b5d92feaf0f683a68606 + docs/models/components/ContractorWageType.md: + id: 489fc035761c + last_write_checksum: sha1:c9bcca983d91a5841dc7e4606cf454bb1402fc2d + pristine_git_object: c4a434cef341087bb91fc81d0d5fd366914cc981 docs/models/components/Contractors.md: id: c4b207ef8d50 last_write_checksum: sha1:b6510b9cabbf2f3a33eb37f4e18cbb6a9effc7c1 pristine_git_object: d838ba611c786d95f14ead12157a35dfbf8ed4b0 docs/models/components/Contribution.md: id: 6292eec0ae66 - last_write_checksum: sha1:ec4cddfd512f945362306f57eda2aad99214b832 - pristine_git_object: 775293e49ebfbeb50c2f374ad60bd9972865e7b9 + last_write_checksum: sha1:caa6b61d832581a5d15dd54b9ce0edff908bafd6 + pristine_git_object: cd61e24a186f49915d460ac687dd04477fd8fac9 docs/models/components/ContributionExclusion.md: id: 7e9794cf4bc8 last_write_checksum: sha1:10c46711d614c301b1163efcb5cd254e184c5d12 @@ -706,6 +734,10 @@ trackedFiles: id: c7661e55985e last_write_checksum: sha1:524dfb65f93668fb147b0fee60bee086a6f4fd06 pristine_git_object: 564e608eeebf523d48889d28b44c59cc1768081a + docs/models/components/CreateBulkReport.md: + id: 0b2ef9f71f5f + last_write_checksum: sha1:9ecf3d08e9b7acdbaf5cfeaf74525716cf53f48c + pristine_git_object: c8188d84e028cdd4bf3352781aaa6754a424f51f docs/models/components/CreateFlowRequest.md: id: f27f7c3e28f6 last_write_checksum: sha1:d81988a7e2fa69d59684b89a2ea050fe7d471fe8 @@ -720,12 +752,32 @@ trackedFiles: pristine_git_object: 7a9a7e693fc4db4de1e05d8df5ce2db9427a9de8 docs/models/components/CreateReportBody.md: id: ee976281d7d5 - last_write_checksum: sha1:80ffa85c01e20a0a2f77549e28c8e9b05e0bbba5 - pristine_git_object: 9ff6e15d552cb45443e029043470de25cc20015b + last_write_checksum: sha1:65c7a28d19acdd51451ae4cfe81e7848bd0739c0 + pristine_git_object: 769de027894b444dbf8889d50bf13078f17aa78a + docs/models/components/CreateReportBodyColumns.md: + id: 95cc7cf16507 + last_write_checksum: sha1:5610dbebc82846607dc1abdf9d172bc706f06c52 + pristine_git_object: ee507311019066b8b7d45e8a22b0deb79ccfbe31 + docs/models/components/CreateReportBodyDateFilterType.md: + id: 8ac0abd54b2d + last_write_checksum: sha1:593e3cb455982c206f0449e2438f3b329b18a437 + pristine_git_object: 168c14ce3c5835e0e40ad6cedcee445e979d01d2 docs/models/components/CreateReportBodyEmploymentStatus.md: id: 3eb48637df01 last_write_checksum: sha1:10af4979fd09e04d4ca43f4b95862d2f7fb51c9a pristine_git_object: d6de332e3e90b66d6723c3ed1903b48cbf888784 + docs/models/components/CreateReportBodyEmploymentType.md: + id: 231577f6858a + last_write_checksum: sha1:16bf69f0a0e22ab79b6b2a996d666060ac92774b + pristine_git_object: fa7e49c1b535c72e0a29bde353e473f2382ff7fc + docs/models/components/CreateReportBodyFileType.md: + id: f7552e3af460 + last_write_checksum: sha1:6217d10ef985ee3d596c4a0998d987540da45877 + pristine_git_object: 466ff1aa5d9270684d19f80db49d517ca1e32152 + docs/models/components/CreateReportBodyGroupings.md: + id: ad245e00e685 + last_write_checksum: sha1:2867571c30b12682ee6e2aaa684360af86904300 + pristine_git_object: aa183b416ca95d4056fb45308d03efc478662e53 docs/models/components/CreateReportBodyPaymentMethod.md: id: aff867236d8e last_write_checksum: sha1:50294106cba9a51b12860e0093d6da10e8c4a3ed @@ -742,6 +794,14 @@ trackedFiles: id: 167a6296115c last_write_checksum: sha1:1fdb84b368638c08fb4ff512955569ae140971bd pristine_git_object: 7499427b4d86e8befa3e5f06d6fdafeb273cdec2 + docs/models/components/CustomWithholdings.md: + id: aceb94ead24f + last_write_checksum: sha1:024956520c149a2236ba278c79b727ceb8f6360f + pristine_git_object: 21feb111f94dfae1afc82aca5c6f1e0ef22ad454 + docs/models/components/DateFilterType.md: + id: 4b508df148cb + last_write_checksum: sha1:4bc5cbc601288cb5b9c99fa10e2d91d2290d6732 + pristine_git_object: a30e2bc16f330cd1cd27701f8dca2171e92c36eb docs/models/components/DeductAsPercentage.md: id: a6071fb8b05c last_write_checksum: sha1:a28a7c955fa62ae3e772870a4be603fac4e4506e @@ -796,12 +856,16 @@ trackedFiles: pristine_git_object: 825ad728398d38fa114be22287a46d419ca65d9b docs/models/components/Document.md: id: 1a57b1271a67 - last_write_checksum: sha1:ae30d5a55725263250b17b0ee1eb353e4df8d75b - pristine_git_object: 2e4cd21a29ae63013ba3e943179960a4a2efd9e4 + last_write_checksum: sha1:7f513eb81cd2f5e20b40030e4b77ebbe243c35c4 + pristine_git_object: 660fc8a6047332897efe38788e994acd55afef3c docs/models/components/DocumentPdf.md: id: 38fa3d6e93cd last_write_checksum: sha1:14b5e46b4c895e421ff1748d0e1a462f12971ef5 pristine_git_object: 09078f9e4eea2016ff8ffcdcf0ac9f6d4020da2b + docs/models/components/DocumentRecipientType.md: + id: 9b7889fddb08 + last_write_checksum: sha1:0a64e759a0a47171060651fc27a0dfb3f3de23a4 + pristine_git_object: c8db84d7e38ef2ea1fa07dc77a7b5ee6f4e95391 docs/models/components/DocumentSigned.md: id: 4f5124beb261 last_write_checksum: sha1:168572792c935ccf9e96bce2599ff82ca32d8614 @@ -868,12 +932,12 @@ trackedFiles: pristine_git_object: 55000b881e28f434cc9f06432c47e55e1d9cd48c docs/models/components/Employee.md: id: 3dd8f21466f2 - last_write_checksum: sha1:0a93d09719f97f8e32d6d2f8a90251c7345b19cb - pristine_git_object: 97c30cf44cdd29ca0795e233563b34610d855a8d + last_write_checksum: sha1:1fa3522e1861082ecd7839cc77cb7fa34e3a4c73 + pristine_git_object: df027f92099a91353b5914e40460996c130edce0 docs/models/components/EmployeeAddress.md: id: 7a8cdf9537c6 - last_write_checksum: sha1:8c5c661ef34e2efddf41e21a99338af3f8d12db7 - pristine_git_object: fb7413252c37a396a1e03ef9bc037a724b898409 + last_write_checksum: sha1:c695b8c192e66c54ce1a2df637f3e85da401ddc5 + pristine_git_object: a3a5fb43d30f233c4643715a682524f29977c3d5 docs/models/components/EmployeeBankAccount.md: id: 83df104f98bb last_write_checksum: sha1:bea3e0ae36b0515a75c28803d2b1d40629729b80 @@ -892,12 +956,16 @@ trackedFiles: pristine_git_object: 649b1c0c3ab327e20a3399cdb2c701331b4e3c45 docs/models/components/EmployeeBenefit.md: id: a4e381075da7 - last_write_checksum: sha1:cd87c293ef2c14c3c43e1cfd9c982ec32aef0bea - pristine_git_object: 46d870734f2ef753a1fb9a103d20701def7e1758 + last_write_checksum: sha1:e3804bd6bf104ed540a53fdb084b88a27ff8ad12 + pristine_git_object: 20a86ea09e52048369c3c07db3efa52f686b0116 docs/models/components/EmployeeBenefitBulkUpdateRequest.md: id: b2090e2e151c last_write_checksum: sha1:e553704ec2fdca08c8ad14924ab1c6bde28b5030 pristine_git_object: c08547eae72c9d3f1c2826655776e646cd4684c1 + docs/models/components/EmployeeBenefitContribution.md: + id: 8401acee0dbb + last_write_checksum: sha1:20ae7364993c150fa78879a349597c3280484bea + pristine_git_object: 60d082742b82be306d53b24602553e33fda79153 docs/models/components/EmployeeBenefitCreateRequest.md: id: 5abd9d86c462 last_write_checksum: sha1:d691a445192fe3e207460c75951daed85fc0a940 @@ -984,12 +1052,8 @@ trackedFiles: pristine_git_object: 0cddc21f2f557b797d4328cc5ff3b8318723fc38 docs/models/components/EmployeeCompensations.md: id: 6819a79517c5 - last_write_checksum: sha1:a05fbd01b3009a030a1ff63e8294f5c43968087f - pristine_git_object: 010678ff2ebbae0928ec84eee003b9417b05ccc5 - docs/models/components/EmployeeCurrentEmploymentStatus.md: - id: 2f375e797a0f - last_write_checksum: sha1:c12fb225a07050c9a24d266bae31f6e73dee7e94 - pristine_git_object: 16812657c463ff01b120f3d7730db5cc82502cec + last_write_checksum: sha1:c7efd202c295442546f9f36a0ac410c9d73659c1 + pristine_git_object: a932f0619fef20f3229cd4aa1e395a1536a96c74 docs/models/components/EmployeeCustomField.md: id: e57ca94db19e last_write_checksum: sha1:8d4101e6b10d32f7db58b6d5fc00b850b73b7b19 @@ -1030,22 +1094,22 @@ trackedFiles: id: f88a5c3812b0 last_write_checksum: sha1:fb432469b940ef6b757b332b3384dc3a47bf5ffa pristine_git_object: f32acf0c989fd67487288f2aedf186d5a46def57 - docs/models/components/EmployeeOnboardingDocumentsConfig.md: - id: e88a30f8bbc5 - last_write_checksum: sha1:d36741e4539145a03ba6c821cd0334cc117bec13 - pristine_git_object: 9f937d820c51d59e1c86e435c57af1427591b7e2 docs/models/components/EmployeeOnboardingDocumentsConfigRequest.md: id: 1b241c82d0ad last_write_checksum: sha1:4400364b358bbc5534ba89c3085cbc836e61b8b6 pristine_git_object: 2ad69f6f195260ef44657c6d061c9c7f7feed72a docs/models/components/EmployeeOnboardingStatus.md: id: 60902bb5f747 - last_write_checksum: sha1:3782dad967a2782a22f1ab36d78231513f1cd8eb - pristine_git_object: 75686cf105d8952edea3234c6cec04e7ac542278 + last_write_checksum: sha1:d424327a16d52979d35da44f6792deae88965d1d + pristine_git_object: e7d8f695fd3a8b871035b389e940b803b1fa66dd docs/models/components/EmployeeOnboardingStatus1.md: id: a17d7e9198af last_write_checksum: sha1:fed0e0aa8ae75e3bb649eca170b142f4ec06e2ba pristine_git_object: 3f61bea62a48e564466b6429122d855523293e92 + docs/models/components/EmployeeOnboardingStatusCategory.md: + id: 286a2d1e42bc + last_write_checksum: sha1:5e5a12e813c5fb009777e0012293e502589099a9 + pristine_git_object: 98edf85c8ac04ef912f7bb10110bc5969a4f7124 docs/models/components/EmployeeOnboardingStatusOnboardingStep.md: id: edb79f2cb32d last_write_checksum: sha1:0294bb77a1838eabe1d4d061e6384c1b19f5ca2b @@ -1060,12 +1124,20 @@ trackedFiles: pristine_git_object: 5523d62576d3b07db2427da6d9fa1006bceb2993 docs/models/components/EmployeePaymentDetailsList.md: id: aa2c0c8d52b6 - last_write_checksum: sha1:3b7dbc83d11c9233d138956d795ea5203d34215b - pristine_git_object: 219154844a00aff48373e5cb3af86de1a9b32828 + last_write_checksum: sha1:072b797be566b3f7838c2850328ff07f65e20a1c + pristine_git_object: 43ed177429532b1eaf8c69af4c692d6f288eb90d docs/models/components/EmployeePaymentDetailsListPaymentMethod.md: id: 608ed4d2b6a8 last_write_checksum: sha1:523b3213a58e9e79c32df7bbfce48aadb323c798 pristine_git_object: e448fe1a55221ea4c9009c608042ab716bcb2361 + docs/models/components/EmployeePaymentDetailsListSplitBy.md: + id: 0223e9a45334 + last_write_checksum: sha1:e243397f06fe46cf4aa921c54f8cbd20b6e40fef + pristine_git_object: a344521bdd2c1157df1dad0bca71731b27bf072a + docs/models/components/EmployeePaymentDetailsListSplits.md: + id: aed4e12b9bf2 + last_write_checksum: sha1:2714b63df2b71327b826b52f92caffda4ae30e00 + pristine_git_object: c75cf86694750c6c5b9c4c5f32462b161fe7d34d docs/models/components/EmployeePaymentMethod.md: id: eb15f80af445 last_write_checksum: sha1:876e2c54d596ddc89a0def568df35788f5b9ffce @@ -1100,8 +1172,12 @@ trackedFiles: pristine_git_object: 871b6ebc0082bec87ba71c562c716130eccd2710 docs/models/components/EmployeeStateTaxInputQuestionFormat.md: id: a17d8bad920b - last_write_checksum: sha1:04ea59c96c8bc13ae68f00a5be18130636bc4fa0 - pristine_git_object: 8ca576818a22caf6ae961b21e4e4d82bbd87f592 + last_write_checksum: sha1:16c88555c1d6153ef9967621ea9825958fb1e633 + pristine_git_object: a130f0b8fe9fd6bbe90a79e4135a49d1c912e2e1 + docs/models/components/EmployeeStateTaxInputQuestionFormatOptions.md: + id: 1c0e1a198782 + last_write_checksum: sha1:8bc32e47a37945cd7e569b2c17ddff0db4ef6a1d + pristine_git_object: 88f3ba6af2a5c73bba2f72b153e844ff4b63135e docs/models/components/EmployeeStateTaxInputQuestionFormatValue.md: id: 01f8b53d14b7 last_write_checksum: sha1:5631fc59b8d97ed5b4e4088463d957c586b260b1 @@ -1136,8 +1212,8 @@ trackedFiles: pristine_git_object: 0c56035c9f4fc52d574e4a7fd65e53eda1e53926 docs/models/components/Employees.md: id: d545edec452d - last_write_checksum: sha1:f7aafb55068b66a9f3432665ae782f26273f231c - pristine_git_object: f809dff54d42d9a9341a33524ec0b9d13f64eab6 + last_write_checksum: sha1:bf2a77990cd76f6454ee0bfb2d27c3f0ca4d285d + pristine_git_object: 729a5ce41d19211e06972f695ede9db7c4704c3a docs/models/components/EmployeesAnnualFicaWageReportAcceptance.md: id: ea3e5e36d262 last_write_checksum: sha1:868ca49c29fd2d7ccfd89d2806d94c3deb2378ba @@ -1152,12 +1228,12 @@ trackedFiles: pristine_git_object: 77d618a9a4a7bf8e18d9f53ed9f552b53cd38f9d docs/models/components/EmploymentStatus.md: id: ce77cdbe50a3 - last_write_checksum: sha1:9e25d539a5b1b21f4169a25f9a36c4f4525b121e - pristine_git_object: 6a1a3241b010c17e1c8ca333d4112442278299e6 + last_write_checksum: sha1:99da57d070fa659b88093c6aa452f95d93911804 + pristine_git_object: fa037eab159eb1e43a2ee05a3718d8ef4d0170eb docs/models/components/EmploymentType.md: id: 3756d9f9106d - last_write_checksum: sha1:1cf88b651adbb98258e793966c2a6e8d6c2007bd - pristine_git_object: 982daa5c9900000ab0ef645679ee6e0436a3b93d + last_write_checksum: sha1:d4bc5d1058f435b915e70a004458445e0b5f6bda + pristine_git_object: 47a36dc8adda239d8c0288615bbb4d45b0c5bcb9 docs/models/components/EntityErrorObject.md: id: 5dd1d4dfcf55 last_write_checksum: sha1:7f2733a4ca492029ac9876620c715a923e699e0e @@ -1176,8 +1252,8 @@ trackedFiles: pristine_git_object: 8efa51b28f66dafa1ebb031a21905137e625b36f docs/models/components/Exclusions.md: id: 40623fc4f64c - last_write_checksum: sha1:f56e4ce537aa48e0813e9e321a0dbe1b1363b521 - pristine_git_object: 8284107204740b8573151aa6fb2f3bd7161925bf + last_write_checksum: sha1:2be67048385adbd70e7c3c40ef4d7d4e4daf05fb + pristine_git_object: 1a6c3b2e695731c6bf99be3c148c623c5d508e19 docs/models/components/ExperienceLevel.md: id: 9278dff1da72 last_write_checksum: sha1:8a42af1b347df6a9ef6c5ff1c360756d5caf059d @@ -1188,8 +1264,12 @@ trackedFiles: pristine_git_object: 21278651661a1316d08a294e453f2f3077897c09 docs/models/components/ExternalPayrollBasic.md: id: 2f13884154bb - last_write_checksum: sha1:89930594cd442985037ac6aa1c16c40ee9d8e955 - pristine_git_object: b907ed57549f3881330d54570d9ea47a609b8415 + last_write_checksum: sha1:b1749cb41a7f64c4439431d661c6f30c33f4b9fc + pristine_git_object: 008fcfd6b272d9a311b51440ea5170a24c639ac1 + docs/models/components/ExternalPayrollBasicStatus.md: + id: 41985d32bad3 + last_write_checksum: sha1:eca75c805726eab79718533924ea445cfc248315 + pristine_git_object: ad45a9407becfd493dcbdadc7c545f9c096622cf docs/models/components/ExternalPayrollCreateRequest.md: id: d86e4a5628f4 last_write_checksum: sha1:1221486fbf3ab4307044e41c667052e67761ab6c @@ -1238,6 +1318,10 @@ trackedFiles: id: a0455a5a2b50 last_write_checksum: sha1:4541b1d548efb9ddfd7394a218427e79d24109a5 pristine_git_object: cab3b0fd8367f3540675adaa0c1af2c14714a44c + docs/models/components/Federal.md: + id: dce43892c19c + last_write_checksum: sha1:ead0fe6450c17654e3a69cdcd7190206b5298788 + pristine_git_object: 12c04e7361294c9e471878eff02937fbab58fde4 docs/models/components/FederalHolidays.md: id: f8409ad07138 last_write_checksum: sha1:4a3fe9c86f7f0faee23315866f3768814868c80a @@ -1262,14 +1346,18 @@ trackedFiles: id: 8cfc69d4ddb9 last_write_checksum: sha1:5b08d033834648c00316353a422603bc3ba5d7e2 pristine_git_object: 258b9a8e0fe37f4fe6a83f6b973c3f9a5eeea987 + docs/models/components/Field.md: + id: aee8d71308a6 + last_write_checksum: sha1:fe50cc0d9d2a31f85d32e3be38cdf43daa08338a + pristine_git_object: a669fe4c00d8b842dcc7031b8d39dd7e2d49628c docs/models/components/Fields.md: id: 7d2684d56319 last_write_checksum: sha1:263dce987e603869bd919173b7f8f827b80029c1 pristine_git_object: 5553538da7bb981c0d2d5985ca121abb019681b4 docs/models/components/FileType.md: id: 74cd4c306ec9 - last_write_checksum: sha1:97b2ec6392634460a5abf3f349d613310d07b1ec - pristine_git_object: 1369b1b06933096b6d30066004c23249a3eee9d5 + last_write_checksum: sha1:6af4dafdf3518fdfe17a119ccf2b48c473496642 + pristine_git_object: 0354ccb32bd914f4a8a9935dc49e30a4a3f9ac17 docs/models/components/FilingForm.md: id: ef2df346c7e5 last_write_checksum: sha1:6f2b239b64f3bb57196941c2ee8a0d7a8c795c7c @@ -1344,8 +1432,12 @@ trackedFiles: pristine_git_object: 76105d700939a89a6e640dabf660d34f461c4d9f docs/models/components/GeneralLedgerReportBody.md: id: ac3d76b538ca - last_write_checksum: sha1:7f3543461cb7826824bf96be372f1598cbebf285 - pristine_git_object: fad04b537cf606ddea225e7d58ac5d053f742922 + last_write_checksum: sha1:6abe1192bbf9fdf9636ecf36c50c96c6826cf2f0 + pristine_git_object: 99fa0a43cdb784748393831862ff57c55a22c073 + docs/models/components/GeneralLedgerReportBodyAggregation.md: + id: edc5a6460875 + last_write_checksum: sha1:1699618803693d4ceedf2fd129cb222766944582 + pristine_git_object: 52a3d303923c344e16b9741da2cfb5b2ec6c34b5 docs/models/components/GeneratedDocument.md: id: 801a45cb3afc last_write_checksum: sha1:838c962604c29e2902e1e94ecfe56e14e3008583 @@ -1360,12 +1452,8 @@ trackedFiles: pristine_git_object: 611d03a415673cb6a02d3fd02bbd166000aa4df0 docs/models/components/HistoricalEmployeeBody.md: id: 22a9ae47117a - last_write_checksum: sha1:8477424075ccc58499b6ac61d8e684cae1805b6c - pristine_git_object: db95952e469bb818ae8f93a96d30ecfd5dc5334a - docs/models/components/HistoricalEmployeeBodyHomeAddress.md: - id: c03af5e569e6 - last_write_checksum: sha1:b39d8e807a60faa8ec98a61ae9b6bcbcbe2b2489 - pristine_git_object: 768c8f45326b200b43576b1e9afbb055a66e458c + last_write_checksum: sha1:0cb88b97e01edb4446f63e0216b888a5611ea1ff + pristine_git_object: a892c89ca0f3e630e481eca8740fcdd03ef37cd6 docs/models/components/HistoricalEmployeeBodyJob.md: id: 734e2e45148d last_write_checksum: sha1:d3a629123a10c088bd84bfcc3378ec584cc2eeed @@ -1436,8 +1524,8 @@ trackedFiles: pristine_git_object: 1160075611195525c477e68b405c755aa90c4e66 docs/models/components/HomeAddress.md: id: 27a386629905 - last_write_checksum: sha1:2ab3cde14a1add231d34ed7a45b6e7f25d0b8aa2 - pristine_git_object: a35071d04565e0df75aba024f7b08a0c5ba9e003 + last_write_checksum: sha1:10171976ede8a99d6092b6cd974048159cf316cd + pristine_git_object: 01694e0331e3a2c943cff95664796018aa41393d docs/models/components/Hourly.md: id: 7023361a6f67 last_write_checksum: sha1:f8415b126212f33ed2ff5ba065aa3cb04c5a1d9d @@ -1560,12 +1648,20 @@ trackedFiles: pristine_git_object: c7d1dc1cb1ea796741418d4ed7b7cb17de4d85c3 docs/models/components/Location.md: id: cc158a8d9f37 - last_write_checksum: sha1:2a66f032246c128f23aa6dafa39a6c251bbae915 - pristine_git_object: 56a22e02c6b1cc24927a3bbe747517073f2ecfa2 + last_write_checksum: sha1:3b0ed6cda3e0664b885cc513402a54ecce520dd9 + pristine_git_object: bf6907034ede2744ca8c2cd146828d9b845a67bc + docs/models/components/MemberPortalInvitation.md: + id: a15928befa1e + last_write_checksum: sha1:eb4d7f2f5c667a17a4becb12375d4f90778c4fab + pristine_git_object: 588490e35a4da4c06f37125a2fcaef867a5bddaa docs/models/components/MemberPortalInvitationStatus.md: id: ac58ee3ed737 - last_write_checksum: sha1:17defe6f14b16eb0ed1e2a8965811fcada466533 - pristine_git_object: 9f4f500a086d5c718fcc25906c2748181b0d0f53 + last_write_checksum: sha1:607a2d4e7ea7e6a15f2b9879b3a7654fb10c1b69 + pristine_git_object: 5f221901b876ccaea30d1b5b80a5df2284e562b6 + docs/models/components/MemberPortalInvitationStatus1.md: + id: 8ef1027a02a4 + last_write_checksum: sha1:0367d81461560514ec43fe07f3de2467003d40d5 + pristine_git_object: f5b1a6d57a8dd986937880dfae981aaaf0de59e4 docs/models/components/MemorialDay.md: id: b1ef8b2c1756 last_write_checksum: sha1:e510f200cb248fe7a3fc15b9df1a94fc257943ef @@ -1632,16 +1728,20 @@ trackedFiles: pristine_git_object: d47a2b4b9aeb3117ef26fbbe0c5264ea254f002f docs/models/components/OnboardingStatus.md: id: 991770e866a2 - last_write_checksum: sha1:5d2ca9a24c9bbd12c910c73fedc2582b85fae961 - pristine_git_object: af5abc944087ac0c0dfea25ff637799cd7a73fb2 + last_write_checksum: sha1:62c52ece3bd5919ecd7064e56a37392899c5c4ff + pristine_git_object: cc112ce9082c13fbd921c6dfbfd0ebd1e925d1a4 docs/models/components/OnboardingStep.md: id: e664633073d3 last_write_checksum: sha1:e1a13ed0bd5238242ab860c9f036826a74c92ed8 pristine_git_object: e5fb285e2aba19c4f556cde7150a0b9b58288b4d docs/models/components/Options.md: id: 4c216ddf3b3d - last_write_checksum: sha1:10c355093d27bd72d2135d08d375e607c1fee36e - pristine_git_object: df1a11cd0c9debf5481b8eb300b950c6120b3abe + last_write_checksum: sha1:dd85fc723d1589e817b6a0ae051b33bb2e1fb2cc + pristine_git_object: 87fc6e78505353fa2f8ab24cfce94a027ef6f4b9 + docs/models/components/OverrideType.md: + id: 1980f4ade097 + last_write_checksum: sha1:eeb7cb14ec4305e074e6eae1ca9556b97cf6d07a + pristine_git_object: 9466d2edc797dee8dcd4b9d361df6a8aa4ae7f95 docs/models/components/OwnerType.md: id: fb590f6731b3 last_write_checksum: sha1:80612ba0757d652372c7fa8036ccfc25c36e5aff @@ -1674,6 +1774,10 @@ trackedFiles: id: 654d132fd234 last_write_checksum: sha1:2515439de8bf7d9169909d1680f34ede2bbed922 pristine_git_object: 8c27c3463f9d54e0fcaec3b02b38e8841c4185b0 + docs/models/components/PartnerManagedCompanyDisassociateResponse.md: + id: be4b99e7209e + last_write_checksum: sha1:36c54e114556811b38e3fdea2e86bbb4f62291f5 + pristine_git_object: 72338ea6ca4355337de795d755a79999536deef5 docs/models/components/PartnerManagedCompanyMigrateRequest.md: id: 22c973027506 last_write_checksum: sha1:50c053c3d687b2cd52a494c296d58edc7159f95d @@ -1716,12 +1820,16 @@ trackedFiles: pristine_git_object: 972eeadb0529f7f4f5ef0487bb0f0ebdeab032a3 docs/models/components/PayScheduleAssignment.md: id: 81151504d731 - last_write_checksum: sha1:209f6bd89e6e82301e68eb258977339de1b822b1 - pristine_git_object: 28a0e0f02171e925a2e513faa7384b9b2c540c6a + last_write_checksum: sha1:03d0357fd0bc4dedaeaebb4259374dd8fc0f6425 + pristine_git_object: 4cfde5f04a91184e43f4b6c5fe6ed9d32a0ded1a docs/models/components/PayScheduleAssignmentBody.md: id: 49b464347fcb - last_write_checksum: sha1:e0c9c17f769fe57ebdd3c1158172993ad91f083c - pristine_git_object: 44af68c52d11ae8f0c20bd4df634ae3dc12b4ecc + last_write_checksum: sha1:fc1ec6402c4d4b321ee8281500f420bd87e1ceae + pristine_git_object: d1ca8d3c8270b7ddd38653e368b5993bbbe60b1c + docs/models/components/PayScheduleAssignmentBodyEmployees.md: + id: 441e547b5d80 + last_write_checksum: sha1:85bef9a0fb1a5d84b453c92cc72ce4c1514d8eda + pristine_git_object: 626f7b928bdaf73a564dcf486d181ddc35ed4a07 docs/models/components/PayScheduleAssignmentBodyType.md: id: 18032cb63895 last_write_checksum: sha1:15e8d4c9d383eb1d4fb7ef75524171d4660cbe10 @@ -1754,10 +1862,14 @@ trackedFiles: id: 5a76ae1c7e0f last_write_checksum: sha1:8ebd94b63f41d469c979ba8b7f9b6df5a478f167 pristine_git_object: 96b66d83bc2db4f2207a52aba08f01e999731e02 + docs/models/components/PayScheduleAssignmentType.md: + id: 5c89256f2743 + last_write_checksum: sha1:2860bb0c28edb2c6fe2202128e8c5bb98317a8a8 + pristine_git_object: beff0c8fba7e72a362117a9db9e22d36d5a23775 docs/models/components/PayScheduleAutoPayrollEnablementBlocker.md: id: c0f3a76f0e90 - last_write_checksum: sha1:96829203777389bf1b8dd9c577f3c3abeac719eb - pristine_git_object: ba659d09faea1689fd8c5cf6282e9cd3a920f8a5 + last_write_checksum: sha1:44c2de769b3e99f8d9ff6504bfadf33e689ed54f + pristine_git_object: 3f81e58622bccdc14182e1db8be521731b2fabb8 docs/models/components/PayScheduleAutoPayrollEnablementBlockerMetadata.md: id: ffdc9b1a9801 last_write_checksum: sha1:bea258766300ffc574f5f6571068634c3467fce6 @@ -1820,8 +1932,8 @@ trackedFiles: pristine_git_object: 218ea46d3febd3fd432f6ddeb2d1b9e9d10c1e67 docs/models/components/PaymentMethod.md: id: 1b54b132ff41 - last_write_checksum: sha1:ae58defdac83e40e1c3b2b8310ec2fb52213ff20 - pristine_git_object: dda535e831f695023de4b15c0d3e36cdf29c67bf + last_write_checksum: sha1:e74b6877d5a422228c3dcec1dd5a5a5c6540e7c8 + pristine_git_object: dd6f92f2da2284c7c357582893e7e186805d7afa docs/models/components/PaymentMethodBankAccount.md: id: 3e0f4e30abac last_write_checksum: sha1:718c3a58ad65e5b3a0dba93269145404fa026ef7 @@ -1850,6 +1962,46 @@ trackedFiles: id: 4fa486c1417a last_write_checksum: sha1:27ff349edf1fb70cf6691014935b90b5c3d9d853 pristine_git_object: 361037a3bf072ff9df94f72d2872acf81428f8ff + docs/models/components/PayrollBatch.md: + id: aa379ae74487 + last_write_checksum: sha1:639a6f14faf9a44a75f0f1b6288d02cdd7186a6b + pristine_git_object: 0ef0a9c6f19c1d7a1a2a015d81979d6ec947e4ea + docs/models/components/PayrollBatchResults.md: + id: 098f60e665e1 + last_write_checksum: sha1:5fc5700ad07078c32451316462fd96ad953103ee + pristine_git_object: 35d1b086db5e2f909c1f3c19c5bdc7fadf45c5e7 + docs/models/components/PayrollBatchResultsCategory.md: + id: 833ccbedcd94 + last_write_checksum: sha1:4bc099b437b2b2fa08bac07d5b9a3ac833546fe7 + pristine_git_object: 4389fa10bc1275546249aba78efdd01119c4524f + docs/models/components/PayrollBatchResultsEntityType.md: + id: 543e0adb6d11 + last_write_checksum: sha1:e9b3ffe5384263e1abffd156d97425cb0b4ffabe + pristine_git_object: 9a6d0bb47cfecf44115589afbec892460b8ff5a4 + docs/models/components/PayrollBatchResultsErrors.md: + id: d9d6034410c0 + last_write_checksum: sha1:b9c09d7a955a8a335597ea4cd7f0359bc3ef241f + pristine_git_object: 2923fe2760eb6f28bbe26df5e830b15e41e19b4d + docs/models/components/PayrollBatchResultsExclusionsStatus.md: + id: e9f94cba753e + last_write_checksum: sha1:f4e36c986bb7ff1b3a3bc2e80517bf4638e2091f + pristine_git_object: ab4b8af8d538781980345939a76cb272143fb0e6 + docs/models/components/PayrollBatchResultsResultsCategory.md: + id: f543792db812 + last_write_checksum: sha1:2aa692e1ec6a8480c75782a810aee7b09eb1eacc + pristine_git_object: 51e79896813e80ea51e9cb95c2953319176184fa + docs/models/components/PayrollBatchResultsResultsStatus.md: + id: fbf4a75f229e + last_write_checksum: sha1:04b1ea1802f24440717956eafe3c0159a50919c7 + pristine_git_object: 5f83c095060de7fbcf3265f8f3f96a104add49b0 + docs/models/components/PayrollBatchResultsStatus.md: + id: e381f28c0708 + last_write_checksum: sha1:b0443426365202f31e1f40d38f613a3ee7a4c227 + pristine_git_object: 494584ea12f92ad5515352a0b6c040650895d131 + docs/models/components/PayrollBatchStatus.md: + id: 5cfe77d913ce + last_write_checksum: sha1:117c08e553f5ccfab520a3bf1e8f1237cbc437e5 + pristine_git_object: b15676daa8f22314fabeece09e3a1e959d43944a docs/models/components/PayrollBenefits.md: id: 6272f369fea6 last_write_checksum: sha1:6ebc0b9c32b506836852515c74ecedec22584d58 @@ -1932,12 +2084,20 @@ trackedFiles: pristine_git_object: 2a528ca4a10a775b64747b353ed30fc12626a71c docs/models/components/PayrollDigest.md: id: bad4af67bf40 - last_write_checksum: sha1:58da5557d492389ba4d71bb6e97bba6054e15262 - pristine_git_object: 0322bb856262d0f7ae3ea95e1d48036bbf5096df + last_write_checksum: sha1:1925d2c7a157ad8c6786852b101063659694fb3e + pristine_git_object: 053c53bd266b46db660ae277af61e7fb8e52e26a + docs/models/components/PayrollDigestBatchAction.md: + id: ed15e77a4eb0 + last_write_checksum: sha1:708f7e7441617282541a2fe9a2f3ebf17af3f1db + pristine_git_object: f05362f1d7e5af45f16513d9080c9874b23d4bc9 docs/models/components/PayrollDigestResults.md: id: 5c926153f262 last_write_checksum: sha1:652e70d893806d647da334973e8a3b25e3e98ff1 pristine_git_object: de2f608698fec77393afb45a687d44c09a1b03f0 + docs/models/components/PayrollDigestResultsBlockers.md: + id: 3e3f481078bd + last_write_checksum: sha1:28bc04757a62d0b7c0aa614f57f529321e97929c + pristine_git_object: 0e66251ca74eb2041fc7a70f274fa6c361c7e72d docs/models/components/PayrollDigestResultsCategory.md: id: 6adf604cb4f7 last_write_checksum: sha1:c27ae1f0d93acdcdb571fa4804c836961734745c @@ -1964,8 +2124,8 @@ trackedFiles: pristine_git_object: 377e7bc67358a5d1e2e2570ff409438a8e1e45a1 docs/models/components/PayrollDigestResultsResults.md: id: f94d2703fee7 - last_write_checksum: sha1:a9177c7dc02ad8ec4b3ec8d8957f1325dae695f8 - pristine_git_object: 3b98f1941e0270cd8953bb9a34e951db07e82561 + last_write_checksum: sha1:276a7147579b0d18b1de3a85c9addb0a37e53620 + pristine_git_object: dd80d9d7c798241a5ca0dab67c3fa37081edc867 docs/models/components/PayrollDigestResultsResultsStatus.md: id: dc8b8812d32f last_write_checksum: sha1:d6ab1ebaac71ad7ea8585ad1298c257cb7521ddd @@ -1984,16 +2144,20 @@ trackedFiles: pristine_git_object: 17752b88fd4be632aa12c41cae0361c636d41f3e docs/models/components/PayrollEmployeeCompensationsType.md: id: be4c680f6697 - last_write_checksum: sha1:0f4953434f28497b409e18b2382f6cc733167d02 - pristine_git_object: 3d03e72a66b6289180ff1e330707a2b2fe49a93d - docs/models/components/PayrollEmployeeCompensationsTypeFixedCompensations.md: - id: 48d8a817e979 - last_write_checksum: sha1:f763abc85ccff7352f73e2f292877ebc3823d5bd - pristine_git_object: 631946a82bc650831066f1646d94f357514ca22a - docs/models/components/PayrollEmployeeCompensationsTypeHourlyCompensations.md: - id: e874fb06c090 - last_write_checksum: sha1:1abe9a40b6d67d1445079202d04250c4b4a3efff - pristine_git_object: cf0b473d7bdedb89cece05ec90e52bd13a2cfde9 + last_write_checksum: sha1:7fe7adbc0fcc4f8687ea9cf807784d11c3396977 + pristine_git_object: dd19bec141351e092f4819f0b54fd9119caf1f63 + docs/models/components/PayrollEmployeeCompensationsTypeAmountType.md: + id: 8ce326416971 + last_write_checksum: sha1:d96367859ab2653b91c944f46c58b098b03119e2 + pristine_git_object: 9097dea013247692eb33c545c82f773c167b0cfe + docs/models/components/PayrollEmployeeCompensationsTypeCustomWithholdingsAmountType.md: + id: 783c11f0e1c8 + last_write_checksum: sha1:86f840c76955ce0d9e6275356d8bfa3a1d4dbd33 + pristine_git_object: 8a0c9b47fd11e5604322540b8eec621f6c76246e + docs/models/components/PayrollEmployeeCompensationsTypeOverrideType.md: + id: f4bc702e32a8 + last_write_checksum: sha1:59c10965cefa8e1f1ab774016dabe7c66287147d + pristine_git_object: a61a08b1ff357f25f84316a0ffb5440fbe166ac4 docs/models/components/PayrollEmployeeCompensationsTypePaidTimeOff.md: id: c18ebc92a47a last_write_checksum: sha1:d59c12c2a95bffe3e9878782af384e931477d4a1 @@ -2002,10 +2166,6 @@ trackedFiles: id: a5ad40ccd570 last_write_checksum: sha1:0f51a4c0b7ab60bf3e0961066ce3379a7b3dabee pristine_git_object: 41b4d281c0806a7606ad6d5d33b1ec6414e4f712 - docs/models/components/PayrollEmployeeCompensationsTypeReimbursements.md: - id: db897da1d796 - last_write_checksum: sha1:a1535c91e360a4dfc13486fa62ff74a14845abd6 - pristine_git_object: c6b17aa06c86c4ce017190ba008bed614f99a970 docs/models/components/PayrollFixedCompensationTypesType.md: id: f0144f0ddb81 last_write_checksum: sha1:a89c0be09f2a3251c943503e66be1faedf4662d0 @@ -2060,16 +2220,24 @@ trackedFiles: pristine_git_object: 5a028da0475137952ef4de604c6c8453f7e46f5d docs/models/components/PayrollReceipt.md: id: bc8b694da3f3 - last_write_checksum: sha1:3cdb3310ee8c3bdf54cf1d9f4dc3973f069a5f0c - pristine_git_object: 1cfc2175327245984b123ed95f30ff6c400a79e8 + last_write_checksum: sha1:bb816f0022564cc6e2d6fa286de45267d716be00 + pristine_git_object: 4d8db7dedd8b359afc5161f6f6d9005811ef37e6 docs/models/components/PayrollReceiptEmployeeCompensations.md: id: 9cb787b381a0 last_write_checksum: sha1:a5dc79380c4c7a5c67176a1b0db2d98077735d04 pristine_git_object: 8152d0a41569a823d0f5ee0b8e9aaeece9f2b2f3 + docs/models/components/PayrollReceiptLicensee.md: + id: fbad3838f68c + last_write_checksum: sha1:5f2ec3e579586078ebc6a0cde5e4f27863be0913 + pristine_git_object: b9d850a105cdd42c4e33af554c52d14e81500cca docs/models/components/PayrollReceiptPaymentMethod.md: id: b2ff9c2dcea9 last_write_checksum: sha1:10be57d411f17eec72697a60c9100dfd7365625a pristine_git_object: 7573f5374ae3c4216a0a6efe6135438eb237422d + docs/models/components/PayrollReceiptTotals.md: + id: c4f979d31d5c + last_write_checksum: sha1:c3122e7196918cd8301372cf1c16f5e78e449409 + pristine_git_object: dd8d4da2aa99a723309cb957fbeb5fc892baa9bd docs/models/components/PayrollReversal.md: id: e37d94f01d36 last_write_checksum: sha1:4d02af277175766bcda8de5141c74639ab68eba4 @@ -2086,10 +2254,30 @@ trackedFiles: id: 10eebfca6377 last_write_checksum: sha1:bb8dd69bb6b76644f58b701bb869c6ed8e68a2d6 pristine_git_object: 2eb21a6cd6b638ba86128a32857bdc8079e30a15 + docs/models/components/PayrollShowCustomWithholdings.md: + id: 7380eda0703b + last_write_checksum: sha1:bf1821fab078d782dc33cba4c3780baa87381667 + pristine_git_object: 2d3858464ddac8b4d2a7248650e79a08800b7def docs/models/components/PayrollShowDeductions.md: id: 0871b8250a52 last_write_checksum: sha1:f0ec977285c6d5a5d3e187690ea8651b82f37453 pristine_git_object: 213639757138a63ecf80e933d63e24163a041304 + docs/models/components/PayrollShowEmployeeCompensationsAmountType.md: + id: d98a1482a9fc + last_write_checksum: sha1:2cf866652c216770c8b712216a055f73f6cd1bd0 + pristine_git_object: ddffd139ef53e1ad9b2f165d85f7675ffdb73b08 + docs/models/components/PayrollShowEmployeeCompensationsCustomWithholdingsAmountType.md: + id: 4b4e00b2513c + last_write_checksum: sha1:c223f06d5d23b694837de33404d992a2ff751ebf + pristine_git_object: 034a933bc0689cc83b5b4f360b3fd82e981f02be + docs/models/components/PayrollShowEmployeeCompensationsOverrideType.md: + id: 29c8204a6f36 + last_write_checksum: sha1:59e42718cdcfe2c18f5b14179f48396116eb42a3 + pristine_git_object: 1171cb66ae741f3cd7fdbdca8594c562674b3bf8 + docs/models/components/PayrollShowFederal.md: + id: d5069af306f1 + last_write_checksum: sha1:59511677d3496405d5f1b3fdf34b6ea3d9e80506 + pristine_git_object: bbf1e61158145e15196c1d27676faef1fab461f5 docs/models/components/PayrollShowFixedCompensations.md: id: 6831dec3ae52 last_write_checksum: sha1:af9bb58a56e81fe4673ca44a2b77a56b9422201f @@ -2098,6 +2286,10 @@ trackedFiles: id: 21eb04e12ef9 last_write_checksum: sha1:8e530178e64df579ee3af3d7743d45e9adbe69eb pristine_git_object: 01342eeb7c48636faf9c000687231a8acd0bbe6b + docs/models/components/PayrollShowOverrideType.md: + id: 305c8262bd19 + last_write_checksum: sha1:54ccad9557474b1a59291e8d1d6329fedbc5f262 + pristine_git_object: 53bf27c499a5adbc273ea0d832745d22721e9d36 docs/models/components/PayrollShowPaidTimeOff.md: id: d444bbcd3049 last_write_checksum: sha1:55f1e610c75887ba0148ea83b65bf684136bd7df @@ -2110,6 +2302,10 @@ trackedFiles: id: 8b674ae511bf last_write_checksum: sha1:3e0071ceae31e9672729bde69c551910293a1d7b pristine_git_object: ec9d3862049972a155ee1efc6859c9e385627d88 + docs/models/components/PayrollShowState.md: + id: 6c26fdd2c4e7 + last_write_checksum: sha1:b6745147067885a3e4515c47991851facd8ef0b8 + pristine_git_object: 4b83ec0bd585f82e02c67bc65f1e2bcc555f4ba3 docs/models/components/PayrollShowTaxes.md: id: ce867da55c07 last_write_checksum: sha1:a05b50206cd160d90e878c01b019953d8b86201a @@ -2144,8 +2340,40 @@ trackedFiles: pristine_git_object: 02fece6d6cb1d55692b7a9cdeb591967c80f6d8c docs/models/components/PayrollUnprocessedEmployeeCompensationsType.md: id: 12faf57e77a6 - last_write_checksum: sha1:86b5017a71b74c86fa577172e6893158d12de9a5 - pristine_git_object: 8dc5537b968a27f59d6941bdc6616e0698e0ecd6 + last_write_checksum: sha1:84287e807ec9a790783ee5dcc593f141beff81ca + pristine_git_object: 5ca8d7f18ab8576c6a05c9288bbf4bd43927b52a + docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeAmountType.md: + id: df816249dab3 + last_write_checksum: sha1:5ce48a0459aa976318624231c4cb75621664a39a + pristine_git_object: efbce97127c30df2d23eb4da79f2cceeabfbdbbc + docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings.md: + id: e8587d7c644f + last_write_checksum: sha1:1ca8284acd8e0ff8681fcb464aa730ef40e4637c + pristine_git_object: c90466649a59b7334959baec83f7f3a9d2d93788 + docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsAmountType.md: + id: 9820098ae632 + last_write_checksum: sha1:2820060f061082712d6fcceebb335b2cbc76bad4 + pristine_git_object: 247a30da047d8580170f77acd188f41c57c5c4b7 + docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsOverrideType.md: + id: ebcff5b5416c + last_write_checksum: sha1:3eee2c7b1d97341ef62fd543c59ef90f8a192fd9 + pristine_git_object: 2d9da5c86996dd32f0471e032ae82354e131f8c9 + docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeFederal.md: + id: d03c0b6e559a + last_write_checksum: sha1:62aa84c1ef6951243d06180caadcdb08884b3343 + pristine_git_object: 29df2d93aeaf5c3b1cca6005a8face7126c7baef + docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeFixedCompensations.md: + id: 9ce856dd8266 + last_write_checksum: sha1:b63b053feeaec50329ef4caf332dce2c10662344 + pristine_git_object: 5296b2d38748e8f8b9e58419298044c989bc28ab + docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeHourlyCompensations.md: + id: 31da53840c25 + last_write_checksum: sha1:c1fef032ac08ae19d221d8bcaa1299cc029c38e8 + pristine_git_object: 6c039e58f68d149167e28fe6751856c34ab40f95 + docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeOverrideType.md: + id: b3acd35aa153 + last_write_checksum: sha1:77e2ed206fc811b0846a13395db097898add4d4c + pristine_git_object: ab7268f7c15cb3ee3b05586ff08b5b87736f6106 docs/models/components/PayrollUnprocessedEmployeeCompensationsTypePaidTimeOff.md: id: 026d1745e945 last_write_checksum: sha1:feb019f0b17f1f3414c92e6853dedfe949a99ea6 @@ -2154,6 +2382,14 @@ trackedFiles: id: cf8c3a1562f3 last_write_checksum: sha1:1c18efb3dcce365ac7095b9bd52c602ed5b750c6 pristine_git_object: 744805e8a5d65b15c8ff7a0d52420ce16b6da0d2 + docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeReimbursements.md: + id: 3e2ead6833e4 + last_write_checksum: sha1:09869862f666ec6fb4afac0c0839a5a15943fc2c + pristine_git_object: 4f08ee2bb35deb7fc60f2cc8cf335b6881143a5d + docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeState.md: + id: 3e7d97bb91ba + last_write_checksum: sha1:cb65e580c1992765bd4773c6dcb31d9d5114d4a2 + pristine_git_object: 8af5caa60b3796c391de58cac4ca43f264840d71 docs/models/components/PayrollUpdate.md: id: 8e2688800bcd last_write_checksum: sha1:8d4a9c237dd1507da92fb4c42045854612cfe8f0 @@ -2162,14 +2398,34 @@ trackedFiles: id: e0586e313149 last_write_checksum: sha1:314fae2ece4b367087f87254f5bb38c4fb365086 pristine_git_object: bcc19a88cdad98272c11722d01be2b6951d2ee7f + docs/models/components/PayrollUpdateCustomWithholdings.md: + id: 69dd85dce0c9 + last_write_checksum: sha1:646e76332d9c30da66e0a4b3eac0231949ff2818 + pristine_git_object: 663fa43ab16359120642e1bb9c5cdc3537cd8a7c docs/models/components/PayrollUpdateDeductions.md: id: 7ddee42b04ea last_write_checksum: sha1:75f3070e514a301daf2366ff3afb207a12255e5b pristine_git_object: a3ed7482f3dbe73cb424431533eaf82cb3cd83fd docs/models/components/PayrollUpdateEmployeeCompensations.md: id: d36f03c59ff0 - last_write_checksum: sha1:f75ce168b3670c8bbda39b7a5aacaa7cf5cb113e - pristine_git_object: aca72c1b650394d4eed4582a4a79d541c5f3cc99 + last_write_checksum: sha1:3f05d23ab2b7b9bada6007acf7b7a82375f33792 + pristine_git_object: 3d8bf7689ec114bdc461ae6d3845c69ec94b5b2d + docs/models/components/PayrollUpdateEmployeeCompensationsAmountType.md: + id: 9732cd16ed30 + last_write_checksum: sha1:d8436cf01065eee3f2b931472b13ed5ebf71df56 + pristine_git_object: 8d22b2281fb06355b5e20a46fd8667422cbfea2c + docs/models/components/PayrollUpdateEmployeeCompensationsCustomWithholdingsAmountType.md: + id: 95e41bbf35d8 + last_write_checksum: sha1:96742d65c411ce4fbce01231d052ff2b7ff69dd0 + pristine_git_object: 2b374ec8726ae26eb70c40da858a41280d3915bd + docs/models/components/PayrollUpdateEmployeeCompensationsOverrideType.md: + id: c7552c95b9af + last_write_checksum: sha1:293bb6801d3fde140d40c8e89a4cd84e26008822 + pristine_git_object: 0783e082a40713b49928cf0ca067aeeec103c4e4 + docs/models/components/PayrollUpdateFederal.md: + id: b7a7750a60ee + last_write_checksum: sha1:c5ee034d99470c44636745445800129f1719fdbf + pristine_git_object: 009ecf2d1d6e92f5dc1293b3ffbbc4501149426c docs/models/components/PayrollUpdateFixedCompensations.md: id: b80e7f9e1bab last_write_checksum: sha1:540d5942bdb229327033fc80a46fb2a489352eec @@ -2178,6 +2434,10 @@ trackedFiles: id: 24b14d627aaf last_write_checksum: sha1:48e33fd48482e67f32b710d383fcdf3f2fee5cab pristine_git_object: 95ffe176a5aaf032fb55165b7c571f91e1881789 + docs/models/components/PayrollUpdateOverrideType.md: + id: 25faeb199073 + last_write_checksum: sha1:7155cab061353eb279151f2bf3ed4dee0e3efb61 + pristine_git_object: d4d2c57ea9f36b82caf68e9e4b5f10ff1404dabc docs/models/components/PayrollUpdatePaidTimeOff.md: id: 0c1798874b93 last_write_checksum: sha1:f1bb4e10c83dbdb2c6086ca7960a2dd4e41d73e0 @@ -2190,6 +2450,10 @@ trackedFiles: id: c8928c5a8280 last_write_checksum: sha1:757cd2d5c9198af30c1be53e6d54252bcee84f98 pristine_git_object: d3f6d0d05817dd893d6f64fc9e57ae77eb3e5620 + docs/models/components/PayrollUpdateState.md: + id: d57eae94f563 + last_write_checksum: sha1:d1cf6367cf8fd795966466de5152713def5a1448 + pristine_git_object: 2d38a6401f467eaa0f1266cf29025e89e09e02a6 docs/models/components/PayrollWithholdingPayPeriodType.md: id: b768dbd78092 last_write_checksum: sha1:1f9dbb73520a3fb5d2f67d227f28a61da524fb46 @@ -2204,12 +2468,20 @@ trackedFiles: pristine_git_object: 5621d3f319e2e4ba4dc01b457a87c330e7e5a25b docs/models/components/PeopleBatchResults.md: id: e2e042b339fa - last_write_checksum: sha1:204c17bf44cb2089bdbaf50c3b7db75e69286cf6 - pristine_git_object: 2002eb602e967ca1e625c6c400c659aea81527d6 + last_write_checksum: sha1:a7560b61726d7d8284e22a16182c0abe55cfe8e1 + pristine_git_object: 0feaa44a4d8966ae05ab7ba943f868377b91e1dc docs/models/components/PeopleBatchResultsErrors.md: id: 56004f6492cf last_write_checksum: sha1:1859e61136a846604a90527dc14c210d4abb0049 pristine_git_object: 8067200cdd2ab4ed2e677b29d179928d2c9fd7f2 + docs/models/components/PeopleBatchResultsExclusions.md: + id: c7e9e8821f24 + last_write_checksum: sha1:cf8d1e38cb08b0e824163d52909e86ecb90514ff + pristine_git_object: a060cc6f695356a4673baa106975e7295a32468e + docs/models/components/PeopleBatchResultsResults.md: + id: 5c0cdd98b702 + last_write_checksum: sha1:2deffc7c4e259e8151de4a45096f05433f5a5ade + pristine_git_object: 117463dc28633a20491c4bd73671e1ceba8c4613 docs/models/components/PeopleBatchResultsResultsErrors.md: id: 194377318a00 last_write_checksum: sha1:ef76f6a24fb3c10d97d777ebb336b7a289c06582 @@ -2272,8 +2544,8 @@ trackedFiles: pristine_git_object: 437bf9865faf5981fa9883462b1b5221bdf6f3ad docs/models/components/RecipientType.md: id: 8fe24b71cad1 - last_write_checksum: sha1:c41b9ab0a2f050151eb7d7304299d1728eb1a85e - pristine_git_object: 475d32ba26b87ebf213d22f0e2824712dd0c0b5b + last_write_checksum: sha1:a3cf829386e056982726dd6f5435d37b28be7413 + pristine_git_object: 5a625a5234eb634746eb49aef877caacacc91a68 docs/models/components/ReconcileTaxMethod.md: id: 64d843ce1128 last_write_checksum: sha1:679875dd1519258e889cf2367ca5be33ae908e0c @@ -2296,8 +2568,8 @@ trackedFiles: pristine_git_object: dba1a815ec819a8c6fd4e1d739a0cbc2661bad9e docs/models/components/Rehire.md: id: fe3b9b67a0c8 - last_write_checksum: sha1:5f2983cd7d6b6fab4c50400a5afdb4c4b7517251 - pristine_git_object: fd2baae624f7fbe45d83a4b40c8904b382d7f2b7 + last_write_checksum: sha1:9ce8cacd19a7321a8d35deae63cea2404eef617b + pristine_git_object: ed57665f6ab66a554194bbfb30330104df18ba03 docs/models/components/RehireBody.md: id: b1a9e45d5161 last_write_checksum: sha1:781e548831c4a9e26bbc4be72253037ab9177330 @@ -2306,6 +2578,10 @@ trackedFiles: id: 064b7f8a880a last_write_checksum: sha1:415ef9aad83a39ca14670d443c812c7789a51d36 pristine_git_object: ed7f566cc5298eff78fd764e4baabe64d516d4c9 + docs/models/components/RehireEmploymentStatus.md: + id: bcfe5ddcf68c + last_write_checksum: sha1:0c523a03728e605105415c438557a7f74fec9d67 + pristine_git_object: 422b1df33d937a7b92a8e080674260754936bf52 docs/models/components/RehireUpdateRequestBody.md: id: 63668e49baeb last_write_checksum: sha1:79c51df018a666890bc0a07ee85d0a15925d8acd @@ -2326,6 +2602,10 @@ trackedFiles: id: 9b0071ddccd9 last_write_checksum: sha1:00d068ba0ce990a48a8c4c4bd844998715e7065a pristine_git_object: 06684bd6a239772fef644645cc3ca143ac83804e + docs/models/components/ReportType.md: + id: 34d55ac7dd96 + last_write_checksum: sha1:269eb427bf8ebe16513cb3a45a3de290250940c8 + pristine_git_object: 74e06180596cd010e3396ec41ae4527452bd2bfe docs/models/components/RequiredAttributes.md: id: 5a3341555761 last_write_checksum: sha1:c3da23b44cf58c5e98b06f98599f81fdf53f3935 @@ -2360,8 +2640,24 @@ trackedFiles: pristine_git_object: fc94d7b72fb4bfd41764484260cd32b9054f12df docs/models/components/Results.md: id: 1a859def686b - last_write_checksum: sha1:fd708580cddc4edf1e18d51bbaebe3fc95e8e852 - pristine_git_object: 48e2f05cd6db21eeb06ebdd28f02ae2dded1a8b3 + last_write_checksum: sha1:48f3158827df46ddde2e7b4e6342096fdd25778c + pristine_git_object: 51744c248b6f683a55213714b4b46e7f29ceadc3 + docs/models/components/ReverseWireTransaction.md: + id: 361f3522d68d + last_write_checksum: sha1:b4d6a36fab182c2198f9fab7cd3aa8eec7b7a4d9 + pristine_git_object: 23b632d125d8ba2460bc19d649b3d660281e487a + docs/models/components/ReverseWireTransactionPaymentDirection.md: + id: ef848726e3d2 + last_write_checksum: sha1:15e5dad373ffe145ee8d15f6c2f5a69623cea43a + pristine_git_object: 0694ea2cffbeeaa2bf45ee50eeb07bb398d383f6 + docs/models/components/ReverseWireTransactionPaymentEventType.md: + id: 15dc6be3a2a8 + last_write_checksum: sha1:28b406c99cb76a22382f51d5a457e6c9be8bd8bc + pristine_git_object: 2bbd1f42456ba63453926d91a1041d7528446984 + docs/models/components/ReverseWireTransactionStatus.md: + id: 941dad71301a + last_write_checksum: sha1:c99ce44d2f996364687aa182449cf1724727c37f + pristine_git_object: c051370a2b4c41fb7d5d0479388e3ecf4a415d04 docs/models/components/Role.md: id: c89eff3746a7 last_write_checksum: sha1:fbefe0b4be585b819f1b3e684383b669c9b89bfb @@ -2384,16 +2680,36 @@ trackedFiles: pristine_git_object: 252a7e77e74e1855f227f4c671d44b1a8c1d3296 docs/models/components/ShowEmployees.md: id: 200257b3b2a2 - last_write_checksum: sha1:3bb1bdc611da8c41d8f82d9e74c71c8953bb6bfb - pristine_git_object: 218142fda2c6e966412fecb225ae4b8cc4d384c6 + last_write_checksum: sha1:944ad437790e564b40028462c8faf9d6eb5253b1 + pristine_git_object: 06872895530c1922e30545f0b922565cc671616d + docs/models/components/ShowEmployeesCurrentEmploymentStatus.md: + id: a46f25d8b0b8 + last_write_checksum: sha1:fbb3fbe07c60b7867e0d09293b9dbf4f9be0eb8d + pristine_git_object: c7150fe5735faf0725c8a86160f9ddfc625c583e + docs/models/components/ShowEmployeesMemberPortalInvitationStatus.md: + id: a60542e83289 + last_write_checksum: sha1:2e5e6da02e3d69fad0cdb6bb7729c104f36803bf + pristine_git_object: f58e21a59158e7a72322128479263e22bf1d63df + docs/models/components/ShowEmployeesOnboardingDocumentsConfig.md: + id: 7680f311089c + last_write_checksum: sha1:4cc59cfaf9fb728e9d129f7dc21dfcfb63f486d0 + pristine_git_object: aaa90973af21c3bced75c92df71ebb0bb4694347 + docs/models/components/ShowEmployeesOnboardingStatus.md: + id: 159385d156eb + last_write_checksum: sha1:33114d6bdbb68200712495561b00af6c931b4e9a + pristine_git_object: cbff9fabfbf25189062df01a80171ce38b4b656e + docs/models/components/ShowEmployeesPaymentMethod.md: + id: ef2c9ff0707e + last_write_checksum: sha1:df5902e72c9b61b338809eba4690bd8ed7e601d6 + pristine_git_object: 719b7ff7f4509e91118e3801d08c505568051744 docs/models/components/ShowEmployeesStatus.md: id: a72b2b5b5aa9 last_write_checksum: sha1:35f96826ecec65dc318c40cda5681094a2da847b pristine_git_object: bd216410b89fe82ef39872326f94442c1c440324 docs/models/components/Signatory.md: id: b69c25b1bd12 - last_write_checksum: sha1:6d1cf40515b397d9d89784a84215c687b96f3066 - pristine_git_object: 40961c9e78614449daf533660e72e25ed25db7df + last_write_checksum: sha1:3089fb5f7d3af3bea85cd537bcd5b7849d2fdd5b + pristine_git_object: 4d79198390ec9b916e8dae46f54352b0a0205c6f docs/models/components/SignatoryCreateRequest.md: id: f56ce1c4b674 last_write_checksum: sha1:42c3470746922d357c1d915e8f9ba81618c14de7 @@ -2402,6 +2718,10 @@ trackedFiles: id: e5cf3f075f75 last_write_checksum: sha1:224cf6eeccebaace8e5d54c1d105723d2ad7c467 pristine_git_object: fa1f497dafbd2f314a1a284b791d6b982947b150 + docs/models/components/SignatoryHomeAddress.md: + id: da545e067198 + last_write_checksum: sha1:e463f6089438b2a678b5a4f1356bcde0ee4f6717 + pristine_git_object: b3cf894696b7b83aded9ea3f4a216a470c767bd8 docs/models/components/SignatoryInviteRequest.md: id: 34e3131bd6af last_write_checksum: sha1:616b87e51ed15c4e295c8fdd670c7260c62cf0ab @@ -2428,20 +2748,24 @@ trackedFiles: pristine_git_object: 841e1e94a0f633a80f571eb7e7e2c4ac7f46675d docs/models/components/Splits.md: id: 550db2269fbd - last_write_checksum: sha1:93dfba876aee5dee3ba096013b470211119d1fa2 - pristine_git_object: 1547cc064a95362d4bc5f82034f5269983d406fc + last_write_checksum: sha1:3e75aa61b73e2b2d6d1f1965ac0921a33038d7c0 + pristine_git_object: d1f404ebd5668f9726911e50ad5894a460d4ec90 + docs/models/components/State.md: + id: 43ba85dae5e2 + last_write_checksum: sha1:bcfe9990249c4b26e295731bf6f306a1355b6774 + pristine_git_object: cef1936bd2ddec2425ca5a7d8b5d3b2207385976 docs/models/components/States.md: id: 6d1630f1842d last_write_checksum: sha1:a00c925e8012ad81808efede6a56ed68689f869c pristine_git_object: e3b3ba515434bd5d564c3c81dbbbf484ba859f4d docs/models/components/Status.md: id: dd05f949cb61 - last_write_checksum: sha1:5857709d76ecaaf997caa000e34a04ef9d1fcc1d - pristine_git_object: 1f14a956e020394eb1162080e84d6fe0ee8d1aea + last_write_checksum: sha1:834c296715254508a668eb3f0db1927d4f2b3ac9 + pristine_git_object: ef67d5014e0f5475d8f077a004ade46c14527ffe docs/models/components/SubscriptionTypes.md: id: 1b70918affab - last_write_checksum: sha1:55bf647a8bff25c9feaef6087383e63519f98a80 - pristine_git_object: c77d06d0345945e2724886d0b7fe5d53ff8da893 + last_write_checksum: sha1:c88437c7a8b39d87bb45764684c85909be530979 + pristine_git_object: 774d227ab2588cdbb767bee257479342773fb419 docs/models/components/SupportedBenefit.md: id: 5a54fc450697 last_write_checksum: sha1:e47fbc2f8dae270afeb96895007edd8b46f4e8bf @@ -2458,30 +2782,30 @@ trackedFiles: id: 91872fabfcbe last_write_checksum: sha1:0cd8b221909335150109c8d3b8a0e7e884a8d644 pristine_git_object: 611baac069a418549f937949072e36989b60d9fb + docs/models/components/TaxPayment.md: + id: fa9fa9a32254 + last_write_checksum: sha1:36035c24a05e9c95e9e0959b4c5b13039849f05b + pristine_git_object: 417720f9b78e57578fcec33c2bb6cdfcec2c7b58 + docs/models/components/TaxPaymentLineItem.md: + id: 4297fdd79618 + last_write_checksum: sha1:602b2da44c4e0de8623dff7a386e2ec5f79d56f3 + pristine_git_object: 813912882921a4b4a96dc495ac524779c80ed4af docs/models/components/TaxRefunds.md: id: 52eb6abeb81a last_write_checksum: sha1:9acd5216bfbaf7e196e9eca31010415e4b51b15e pristine_git_object: 5b5a1417d0ed4caa82be7f6cc29e976c3ab2fae4 docs/models/components/TaxRequirement.md: id: 485b5784a8d6 - last_write_checksum: sha1:210cc5cb58fc130377713755333c3f9b009c48f1 - pristine_git_object: 8e31bfbeb7cb16e6e45cc83491a22341243efc34 + last_write_checksum: sha1:feb7e9ea3576c19b706fb4f82194343c4f3c9e9f + pristine_git_object: e03bc29024625fc1301e274941ab3fb74cfef680 docs/models/components/TaxRequirementMetadata.md: id: 02d22c41e7e3 - last_write_checksum: sha1:9dfc1a40f6a375a9822ab43bbef8f3f6e2282053 - pristine_git_object: c6c204ac8efcff02f33616c11ccc86b9dd707695 - docs/models/components/TaxRequirementMetadataOptions.md: - id: d8a581f1d9a5 - last_write_checksum: sha1:8fb3a3c2d7069868cf5a3bc61eec02c70c2be41a - pristine_git_object: 3e78bf332c3388a4deedf86dcfa9e6186acdf844 + last_write_checksum: sha1:fe07173e1c2a74beff7f9f1626eb888f108862cd + pristine_git_object: bb98431749b4f36fbef20405082b315b15b71e35 docs/models/components/TaxRequirementMetadataType.md: id: 3700c55f678d - last_write_checksum: sha1:1ac953219fe780250ed6211c4bb36d115617c586 - pristine_git_object: 7ba821299899ba9bf6fd45bd41fc156280c44cc7 - docs/models/components/TaxRequirementMetadataValidationType.md: - id: 408228c09cda - last_write_checksum: sha1:cb76e9b220fb0d99f02824eac942df1b8ccd2b6f - pristine_git_object: 1c2da207ca5f422f5a423c3d2d9dc340f98a5a5f + last_write_checksum: sha1:83c85488fcd6139cc49df1067f6b80f681b0fe55 + pristine_git_object: 805cb563840774cd6e2fc1d6090fcfca96a20fd8 docs/models/components/TaxRequirementMetadataValue.md: id: 61fb3b23d321 last_write_checksum: sha1:96960cb2a7cf971c20e749ffd5de3eb97d757f5c @@ -2572,16 +2896,16 @@ trackedFiles: pristine_git_object: 5c2b9d35796320026a405823e994a4ae51c99161 docs/models/components/Totals.md: id: d837cc2544f0 - last_write_checksum: sha1:6576ca386fb7c5d2b913ae26e43c306807bf2f5e - pristine_git_object: 96143d9517b7bf7ccf3075a689ad4ae4d9fc315b + last_write_checksum: sha1:b1bc305497660cae0df4ce4ef5a72a2cb1e8ab05 + pristine_git_object: 79bd07d3a430bb10113e9d2682d2c5c1883b2753 docs/models/components/Two.md: id: d40a2aa6dcb3 last_write_checksum: sha1:9955b5141f96f7d954a59663f609286ed5df5bae pristine_git_object: 07ff479d3d44790bbf4e1ff29706928886d87e46 docs/models/components/Type.md: id: 8c0a5144d92e - last_write_checksum: sha1:07fb0b0b3988fde45cf5bcaec62576718cb5bb67 - pristine_git_object: 8b53d728598704a2a5662b3c8c21767ea79bffee + last_write_checksum: sha1:2f7eb094816727069c084bfa9d9e3686179c38de + pristine_git_object: ecd8812bf5dd22db661ab4d185a1c8c0ce02cca9 docs/models/components/UnblockOptions.md: id: 4db5714d9d73 last_write_checksum: sha1:20d77f76e4af75c1521955b7ac2d93c8e8ac1686 @@ -2616,8 +2940,8 @@ trackedFiles: pristine_git_object: 25c386347a5aa1cdabb26c213c5767a4fccf753d docs/models/components/Validation.md: id: 7df579e163f7 - last_write_checksum: sha1:4b1f7bbaefce7dc745739a8fbe5a223424d440bd - pristine_git_object: ce347f32dba28637fc8f322a7c6946cb7ca87d33 + last_write_checksum: sha1:8a6a576b4bd6cfead479a6721003ebbe8f1585b8 + pristine_git_object: 14a176ce8075f933e9a2dac94022eb68a6ec7514 docs/models/components/Value.md: id: 298b43471825 last_write_checksum: sha1:7cf36d454160dcd639f9afdff5d0a068244b0142 @@ -2638,10 +2962,6 @@ trackedFiles: id: 752770a96807 last_write_checksum: sha1:b4a183f5e6cb90e688a9cd25a19b286a8481dba1 pristine_git_object: cc4fad1a10ba1c41320a8f53c78133a617ff98ab - docs/models/components/VersionHeader.md: - id: 7c4f94fa7e65 - last_write_checksum: sha1:57cdb2cf5e46097ea6251653a71de285ba2ee0be - pristine_git_object: 3fd6556a1448929f9138c3d1df2fee00eed32311 docs/models/components/VeteransDay.md: id: 974931980e5a last_write_checksum: sha1:73d3d96fb7c9c816147d21ace1db262f400be08d @@ -2652,8 +2972,12 @@ trackedFiles: pristine_git_object: 9e6f8eedaa8fb6a379ad3cb5900732d7b70cb684 docs/models/components/WageType.md: id: ae6c7aa17a55 - last_write_checksum: sha1:45873407a7bb0a54aad472d22c3631b1857752d8 - pristine_git_object: 53c10fca34a83e75ff26ed21624947fea74f26a4 + last_write_checksum: sha1:97a53e7dbf31ca52790c99f3e3ff16b8f3b744de + pristine_git_object: ef5d1b22bfd1498527f339d0910e9b3cd71c8a18 + docs/models/components/WarningObject.md: + id: 77231dc5d962 + last_write_checksum: sha1:946160dc7a32d7b8572684864c141ca41265e2d7 + pristine_git_object: 7db41084f3a89f4ec3519bd400b7bad42a13c57a docs/models/components/Warnings.md: id: 1133aa133ae1 last_write_checksum: sha1:3dc6289d6b5d2aacf472b6dc4d77ed2dc4062b55 @@ -2708,8 +3032,8 @@ trackedFiles: pristine_git_object: 41813e2dd6c133693e51138aeff5130bd38f0cf0 docs/models/errors/ConflictErrorObject.md: id: a9577e85192e - last_write_checksum: sha1:8f3087b520cd14b48b7aae7911756f89282fdaf9 - pristine_git_object: 46ec3c2fbd9a3b41cd649cc318052ee6eef410f3 + last_write_checksum: sha1:b89f2c283e26f9329a4164bfb75fd33e4d392506 + pristine_git_object: bc5326f19de847ab9ef764405cfdffc4db0407ba docs/models/errors/ConflictErrorObjectErrors.md: id: e4a113f06902 last_write_checksum: sha1:7d0e54fd6134937c0284262284c4720ba22c19a9 @@ -2718,22 +3042,38 @@ trackedFiles: id: 607310e85338 last_write_checksum: sha1:d109e36aced698732ee63f0c1b269e398a594c2a pristine_git_object: b0d0a11f57ecf5d93c2b43f18820523f826b0c14 + docs/models/errors/ForbiddenErrorObject.md: + id: d1222a77cd9f + last_write_checksum: sha1:3f69533faf341477c38ff2ae91dd28f964bab7bc + pristine_git_object: 4cfa4c14ecb2d75995bb3a9d507b6013f920a8c0 docs/models/errors/Metadata.md: id: da0ca4518929 - last_write_checksum: sha1:dec6775cd0e0abcb27a0d2dc49a6f161a8601f44 - pristine_git_object: 9e479ea35cc7d75205465758b9d8e24ce8733617 + last_write_checksum: sha1:bdc0f3642423a269beb168b2ffd3050b9c5350b9 + pristine_git_object: 74f2b9e371228a11b9a538deb3ac5d48536fe514 docs/models/errors/NotFoundErrorObject.md: id: 85bd5de8b5dd last_write_checksum: sha1:eb8d94dbce552d0b050e8bc221a84aca25beb527 pristine_git_object: 32a21dea9066d4af0c515f490cf8165d276d3060 + docs/models/errors/PayrollBatchConflictError.md: + id: 79eea272248c + last_write_checksum: sha1:f422481488238f7609e6ef86704d636f70a0472c + pristine_git_object: c8c98a8a00bb45e7756da169db0c8dff1c745597 + docs/models/errors/PayrollBatchConflictErrorErrors.md: + id: "334408287786" + last_write_checksum: sha1:9349d3aeea2a89816cca28a10a6d575093c926ab + pristine_git_object: 89ca96f7ff801cc633d5f2f159ba7421fcf24056 docs/models/errors/PayrollBlockersError.md: id: 74a3d8802ae4 last_write_checksum: sha1:717ff65befc340841871fbf4e09f1b79b63c8a57 pristine_git_object: 46ebb71b8138d434af5f0690d149f8ab01502b58 docs/models/errors/PayrollBlockersErrorErrors.md: id: 9b10ecfafce5 - last_write_checksum: sha1:fe54d3dfe44707e6e3a6a47e2d1dc114cf9c8829 - pristine_git_object: 38137ce81d903b2af4e6fd502f9b2430789dd211 + last_write_checksum: sha1:7d9bd8407b6c06292c01dbe64af9b3f487854804 + pristine_git_object: 00687e96454805abd085d76d49303da6cf0e0ed7 + docs/models/errors/PayrollBlockersErrorMetadata.md: + id: 1a7043c0cda4 + last_write_checksum: sha1:d74cdd1e0eaa559f53254cdaa0dea8fe361a51e3 + pristine_git_object: 2dc76c4cba1cb5fc70d0433fe820ad0d7df8c094 docs/models/errors/PayrollDigestConflictError.md: id: 19fcf70a863c last_write_checksum: sha1:40b47c2058d51d13de9b4817a1ef8989e65d0a9e @@ -2776,12 +3116,12 @@ trackedFiles: pristine_git_object: d9bfcf90ebe8dcfe126d51c05a5c03be1843ce04 docs/models/operations/Batch.md: id: fb70d60a5d4a - last_write_checksum: sha1:e08ca08b023066a98b0631dd7b716b76581fd811 - pristine_git_object: 2da5e31d31c2a0d293e5b8ccb6868f7e71b1b13b + last_write_checksum: sha1:2396c62450508b9d36e63149cf64f98575a29b58 + pristine_git_object: 7cef8eb513e3c2d03245cc8d0ae084242923468b docs/models/operations/BatchAction.md: id: 71466b7fca28 - last_write_checksum: sha1:5ba4dfb2d43f609485b6d63088f186f134fcf26f - pristine_git_object: f7bbeb63918bc1d17dab33255889e1bb9e715364 + last_write_checksum: sha1:cfc990b44707888a82e46804e34541f3cf501eef + pristine_git_object: 7d14b01dbb1defb7f3e54695f61a659523253e14 docs/models/operations/ChristmasDay.md: id: 2b33b0dc8037 last_write_checksum: sha1:a068692813599ef7b1c9e8037038ea50ced28ee2 @@ -2808,8 +3148,8 @@ trackedFiles: pristine_git_object: feaa52b065576f1c39084f6ef66b1d74acf75079 docs/models/operations/DeleteDepartmentRequest.md: id: 225a5dd67efa - last_write_checksum: sha1:79e8d70884ee6133d0a6b241d20aa496d13837f6 - pristine_git_object: ad8e37b720dd9ae3097c38a1f7af51a88c7dfe50 + last_write_checksum: sha1:6239c4ee59b8c6d435bdf89ac3d9c947785bd1aa + pristine_git_object: 84240d2140e46eee9e0accf6dcc70f7518db2b00 docs/models/operations/DeleteDepartmentResponse.md: id: 2b626e6f6ad2 last_write_checksum: sha1:051eafc691ca6154adb724524000bfc821049543 @@ -2856,8 +3196,8 @@ trackedFiles: pristine_git_object: 6b4fad44a4f445a9862883d1b5a90bda4651c4d0 docs/models/operations/DeleteV1CompaniesCompanyIdPayrollsRequest.md: id: 80c761a49606 - last_write_checksum: sha1:4ce4b13596097118d1f02def9f5c8459df26d22e - pristine_git_object: d8039e22bed7b2682c9e7035f6ed2da7bfa9e19f + last_write_checksum: sha1:762e2019ce9dce66d7e13accb59d8dc16dbb08ed + pristine_git_object: daefaf7e56afb23bab121f5541802d049408e8a1 docs/models/operations/DeleteV1CompaniesCompanyIdPayrollsResponse.md: id: 8bb31ac92f37 last_write_checksum: sha1:d4526f6c3be516844a1d637f3743dd1afcdc3746 @@ -2880,8 +3220,8 @@ trackedFiles: pristine_git_object: c3e20a4924262b461e29f3b8752bae29a6491382 docs/models/operations/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.md: id: 5042a285b865 - last_write_checksum: sha1:be5f53912018c06fdb18bd5c72de24cb57d29ad5 - pristine_git_object: db63e0d6a22ceb9882c3ce5134188c90ad8b1271 + last_write_checksum: sha1:31a52934eb17f1c8df5006f11de536abe28d674f + pristine_git_object: 74bbfc77bbb18758ad24c39151b50de1c50dac98 docs/models/operations/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidResponse.md: id: 5ff7408c87c0 last_write_checksum: sha1:0fce22d35e827da13bc4e64a24cbbec718e0996d @@ -2916,8 +3256,8 @@ trackedFiles: pristine_git_object: b84187c577678a77780ae0b60e202605ff12fa0b docs/models/operations/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.md: id: c7fe8e2c439f - last_write_checksum: sha1:c0cb6a895830b2120d433d9d571b8885daa43cf2 - pristine_git_object: 36464b1f65ffd7a30bde283a3403a551e39896ab + last_write_checksum: sha1:5cdc963d5b10ca5070998ab3641da65d6c1935e8 + pristine_git_object: ca5eb9eb8bd8d1b7870b6dd0113b88344df792df docs/models/operations/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdResponse.md: id: 8e24b36765e5 last_write_checksum: sha1:74e61c4178574e1aff44fea1cbf5691ed99d55e6 @@ -2926,14 +3266,26 @@ trackedFiles: id: b6f9ca421cc3 last_write_checksum: sha1:5262fad5b4b9a62efa74f3adaa8fc437339bca37 pristine_git_object: 43b54dee37bdc8ec3b559bc41384f7e62a986a2d + docs/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.md: + id: 2ef252ab6a94 + last_write_checksum: sha1:63ad0f529c3148f5d1871dbf3779e306e58e90e7 + pristine_git_object: 02bc960477953e5e4dac183b37edda27960690da + docs/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest.md: + id: fcc734224303 + last_write_checksum: sha1:28d9929cc1357d2d728b2bec3945c85716cf38f9 + pristine_git_object: 68a9f1e2938914b58654fb542c3b14d1d3ca6cf6 + docs/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse.md: + id: 8eb1513c5464 + last_write_checksum: sha1:dc8ac65a7acef9721697e4db00688ff20778eb1d + pristine_git_object: 3e71f42e1e6f757ced5c72720eff9d582a4fa8e5 docs/models/operations/DeleteV1ContractorsContractorUuidRehireHeaderXGustoAPIVersion.md: id: ecf3b6007f4a last_write_checksum: sha1:e2cd0b6410384181042889d03cdc131acb07e41e pristine_git_object: 5652aec149560f33f8c02450d9dcc6d31c1e6013 docs/models/operations/DeleteV1ContractorsContractorUuidRehireRequest.md: id: b10f5b915de8 - last_write_checksum: sha1:f010d8c4f9293e58f29eab6bd873f86382e39e50 - pristine_git_object: a23be06397a07b007e4b508bf03117173d6a9ad2 + last_write_checksum: sha1:523e52a569da242b0099c1819dc855ed2b710420 + pristine_git_object: 5d967bc218c594d4c8d711e1dff574390e225701 docs/models/operations/DeleteV1ContractorsContractorUuidRehireResponse.md: id: 3cfb7f7ed748 last_write_checksum: sha1:c56c8350ee2f8e4b973f32718d8cc4595a796322 @@ -2952,8 +3304,8 @@ trackedFiles: pristine_git_object: 544baefe4f7a2406b1ae86b96adeb9228d24d2d0 docs/models/operations/DeleteV1ContractorsContractorUuidTerminationRequest.md: id: 80b1a809b5a7 - last_write_checksum: sha1:654410417de10082757f28af4781ecb6c171d11d - pristine_git_object: 63ffc2dbafcf4b27905205b44d5bfd141121e62e + last_write_checksum: sha1:377115640b2a5ac5c7b85bf0993ea852e7164a88 + pristine_git_object: 8c9b110d6bfb352ed59a96d59e6d23e300c1ce63 docs/models/operations/DeleteV1ContractorsContractorUuidTerminationResponse.md: id: 226160638aaf last_write_checksum: sha1:6e87bbc129271e303f864bc07b36fd0100177f2b @@ -3006,6 +3358,18 @@ trackedFiles: id: 2dd8d1625f13 last_write_checksum: sha1:7c47ae6566e47b06514706717f822a9353c8c9f8 pristine_git_object: 8342fb0f40822d312a3f517f7870d6916df37e70 + docs/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.md: + id: e0c30f9f9cc7 + last_write_checksum: sha1:1d4e763eb06bc357b5e11046beb8faceb570f589 + pristine_git_object: c187cd70287d83dedd072cb142e3c80fbae7bbff + docs/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest.md: + id: 90d3b4b03ed2 + last_write_checksum: sha1:2ba324c90e3666d5f583a9165c058757f7fd237d + pristine_git_object: c75ec42f6ee215822e3bb0f8203e9d57707cbb64 + docs/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse.md: + id: 57b99e51a48a + last_write_checksum: sha1:9dd5452adafe28e961da177ed8d636232826e17b + pristine_git_object: eb01e4ce801c1c547549c7eb9cf594e9faa295ab docs/models/operations/DeleteV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion.md: id: 9688b8813591 last_write_checksum: sha1:df3dec55005bc19b064b57718713c728c032fc48 @@ -3060,8 +3424,8 @@ trackedFiles: pristine_git_object: cf94d2b1032bf7b1a2b884a748a68bbe11b87c00 docs/models/operations/DeleteV1JobsJobIdRequest.md: id: 5a550369e634 - last_write_checksum: sha1:da9794499da6e0a9ec8b57c118e80af54edab48a - pristine_git_object: 08467b97a4f15a4522261ecbd0902eee04adc0f7 + last_write_checksum: sha1:39fe0cf9d67288a5491e37f702c19f39c3a7f0a2 + pristine_git_object: ae69845c26df09bd6e744480674aac85dab1effe docs/models/operations/DeleteV1JobsJobIdResponse.md: id: 614e61aa2780 last_write_checksum: sha1:b3c5bbdf54917224f4659135d89b69ef20aa801a @@ -3096,8 +3460,8 @@ trackedFiles: pristine_git_object: 839b11786e679dbcd47afaaa9974c6653f8e4ec0 docs/models/operations/DeleteV1WebhookSubscriptionUuidRequest.md: id: d3f9ac164fdf - last_write_checksum: sha1:8b9ef9db6eb779459a7789736c460f0c250caaf8 - pristine_git_object: 1f6589f3c0bc4b92a3657423d74d3e5f56906aa6 + last_write_checksum: sha1:ac77406cfac3a27805f0b15cb7823fbcd837375d + pristine_git_object: 1329055416b1b743b8bb730d61096d8f4de7ac4c docs/models/operations/DeleteV1WebhookSubscriptionUuidResponse.md: id: 909d6928a576 last_write_checksum: sha1:bf707016103169d746fd1cee178b148fea9028fd @@ -3112,8 +3476,8 @@ trackedFiles: pristine_git_object: 0f35185e623f029c92f43a159385fdba24966e2d docs/models/operations/DeleteV1WorkAddressesWorkAddressUuidRequest.md: id: bf8280ddebb8 - last_write_checksum: sha1:ea734fd63382917371d946b22876b26a6917da3d - pristine_git_object: 540e7dccaf69665d80e57fcc2ee7d3dc80a5c146 + last_write_checksum: sha1:07c835fe10b2000e0cf6102260583ad9ef252d57 + pristine_git_object: 390a7dff392bf91af7bcceda427132e29aa831fe docs/models/operations/DeleteV1WorkAddressesWorkAddressUuidResponse.md: id: 491b43ae722d last_write_checksum: sha1:7452fbbb183bea20cf025de424b35b07ee01261f @@ -3136,12 +3500,12 @@ trackedFiles: pristine_git_object: 3cb7924b4fd0cd61415341a6261f2598736eaee0 docs/models/operations/Employees.md: id: ccf160984904 - last_write_checksum: sha1:5f382e4550c4ba6ed7ceec7f0494fcaa7c6126a5 - pristine_git_object: 186f9b8de9ad2dc085ee6a621ab2fc61df44b030 + last_write_checksum: sha1:a5c8a4e7cdc7f8206aef77b1a2d3f9e9c511f2c7 + pristine_git_object: d8aa07ecca142e276010fb7eae132e54c0bf9b5d docs/models/operations/EntityType.md: id: 8a8fa61053f4 - last_write_checksum: sha1:1b8306ff727a4a1f12c363b8e50aba8ec8bab0a7 - pristine_git_object: db5f9b5079227e14f7693cfc27da8a2b76b9feba + last_write_checksum: sha1:bdd01b20acd960b1bbfaf9f57ad4dafd832f8ae3 + pristine_git_object: f7c2c75951ee1f76b435452ee466d63da952f057 docs/models/operations/ExperienceLevel.md: id: 4076fb44469f last_write_checksum: sha1:0b41f9f3cb1eb80cebf83268dca557d2b656acfb @@ -3166,14 +3530,10 @@ trackedFiles: id: 5516f4fa7be4 last_write_checksum: sha1:463a035f3639f44ad3544d08a1b4c5bc56064a4e pristine_git_object: 3c6f6c14d3a51cc7ed769d2027ffb06794af4afc - docs/models/operations/GetAchTransactionsHeaderXGustoAPIVersion.md: - id: 20ae160f59b3 - last_write_checksum: sha1:4c20d2715243957a23270c5d7e3fc79198f1124f - pristine_git_object: b36f9258000b0c37915b946ebe66c93a2776763b docs/models/operations/GetAchTransactionsRequest.md: id: 0aa2de4a2f19 - last_write_checksum: sha1:0903b1b98c6b4d75cbaf48a60aff1a99b03ed3f4 - pristine_git_object: ed5fd80f6b7f541d09b04fcc3ebb86b167db3605 + last_write_checksum: sha1:0620f5ce276378f8aa52e7a21b3fee9f267e44a9 + pristine_git_object: 8e1b7d90cd18b33f25f617fc6850960b3a0bdc80 docs/models/operations/GetAchTransactionsResponse.md: id: 616accc1a0d5 last_write_checksum: sha1:0acd42899ddbae3f355003211a2550319c5ffbf7 @@ -3232,8 +3592,8 @@ trackedFiles: pristine_git_object: b0305dc5095bc10e8592337879e662accf347684 docs/models/operations/GetCompaniesCompanyUuidWireInRequestUuidRequest.md: id: 952d0a7be074 - last_write_checksum: sha1:c019f1ddd35f8e6c2c12da706cafaa809a192281 - pristine_git_object: 49727cf55ca254530176edcbe7136ae1141719b4 + last_write_checksum: sha1:2ae6f44516173c92c3c083b2c8ea1697f0929bc6 + pristine_git_object: 92dad002952cec6798ee09fe34f855f119c0cfca docs/models/operations/GetCompaniesCompanyUuidWireInRequestUuidResponse.md: id: b75910218858 last_write_checksum: sha1:3d6ec06c599c2922d4c2a96bc69152ffad07cd71 @@ -3244,8 +3604,8 @@ trackedFiles: pristine_git_object: 2d6ac0ae566a10c1b26e8b07f72417bf4d51b807 docs/models/operations/GetCompaniesDepartmentsRequest.md: id: 9bfd8d20f253 - last_write_checksum: sha1:79f9b8f4c1628b1c58a23619147eeed3e0c256a4 - pristine_git_object: d3edad26d584c2ca7d7480a99df77ac101c3363b + last_write_checksum: sha1:19143a48d938883a242e2c6a04ef7bc76bc6b9bc + pristine_git_object: 75f56a515e32a444bf798d3acf2b93aa1c8dd866 docs/models/operations/GetCompaniesDepartmentsResponse.md: id: 5a076da15005 last_write_checksum: sha1:90a71aeb005564acf517306dc6a3054a055bf0d7 @@ -3256,8 +3616,8 @@ trackedFiles: pristine_git_object: d93af367d935050c83945654030da424cfafd21a docs/models/operations/GetCompanyNotificationsRequest.md: id: ee6e9c165a35 - last_write_checksum: sha1:537bad789e259ef5f7fa17ef62dc1d0a4f402c7a - pristine_git_object: 5a9e7cbebfcd5eee58998e84930e028c39598337 + last_write_checksum: sha1:18a1ee3e3fcb32ac84e514144ccf6dcb0f773ed4 + pristine_git_object: 0f95439098fea89355c64cb0481e0ad00f033cc6 docs/models/operations/GetCompanyNotificationsResponse.md: id: 3133971fba0c last_write_checksum: sha1:7c1f03fbef40dcb42d13dbc3192178f350721160 @@ -3268,8 +3628,8 @@ trackedFiles: pristine_git_object: 0ddd52f92691bbe572462f0a795d248a5471c364 docs/models/operations/GetDepartmentRequest.md: id: 9d220094095c - last_write_checksum: sha1:14ad08a50829552a7aa36b5143549d9e5da49ed3 - pristine_git_object: 967af39fb2e0a93edf201380d66ffcc4d2cefd48 + last_write_checksum: sha1:5cd5287409611628e98f869418efc2e471597179 + pristine_git_object: c2cb710fceb97d04a8a1815695365645440838cd docs/models/operations/GetDepartmentResponse.md: id: c2054fd8315c last_write_checksum: sha1:41927991f85b8446a592720ce2c20ebe187b235d @@ -3292,8 +3652,8 @@ trackedFiles: pristine_git_object: ae84ba7504754a2c52a8bb36fd35586bc550749b docs/models/operations/GetEventsRequest.md: id: e6280d90fe7c - last_write_checksum: sha1:5cf910538b333719eb130fce563f6811a2c00beb - pristine_git_object: aa7a6c30ebcbd0fd7251f62bd1a02fae8d712f8d + last_write_checksum: sha1:0246a87d539dd39797beb8fcb7038a53eb740853 + pristine_git_object: 7172c6eb46aeea3876f4f748e5de2f60d3eab57a docs/models/operations/GetEventsResponse.md: id: c441cfe55d03 last_write_checksum: sha1:9b2a27d4eafc55cb85fe9401717b248bbe1fbb96 @@ -3336,8 +3696,8 @@ trackedFiles: pristine_git_object: a17a1302f21477df6405ecacf7a25a823675cc70 docs/models/operations/GetNotificationsNotificationUuidRequest.md: id: 801ae55c9bae - last_write_checksum: sha1:9c46f4e220e6ca7b8f19b46fbd093245031429d8 - pristine_git_object: cc03e18ffc72242cdca742af74f67126bc2e43d8 + last_write_checksum: sha1:4858ec292f2edf8ddd960319ffae526f66e8a579 + pristine_git_object: 51e4b61d1ea08bff3bfd5727a1b6ea883199c524 docs/models/operations/GetNotificationsNotificationUuidResponse.md: id: 4d787ea80190 last_write_checksum: sha1:ec4c3c37a6196cf965ca582c39eb2ed40cec9cd5 @@ -3366,6 +3726,42 @@ trackedFiles: id: 889a0b4abd90 last_write_checksum: sha1:0be831bcbdc3545254de7248610f0ba02da99e78 pristine_git_object: 6dfc672aa3e9ee421ecbd2d5de601897c08adf98 + docs/models/operations/GetReverseWireTransactionsHeaderXGustoAPIVersion.md: + id: fb794000ec85 + last_write_checksum: sha1:46fa1d7ce90254e4ec13d959d23396918b2e43b5 + pristine_git_object: ec1d7e0d36c436d6bc512b455fda1b46553fcaef + docs/models/operations/GetReverseWireTransactionsRequest.md: + id: ccdeec6e01e8 + last_write_checksum: sha1:20891854e5a1428af058d19843a6ab356b20d301 + pristine_git_object: 3bdd174decb8b81db2c76e55b58ccaac5ce62296 + docs/models/operations/GetReverseWireTransactionsResponse.md: + id: 3a0d4f66c984 + last_write_checksum: sha1:878a6a6df08b0d9573d93e3e10fe53a5769e3827 + pristine_git_object: 54edb09579a4711475638b631377bd1e437c8dad + docs/models/operations/GetTaxPaymentHeaderXGustoAPIVersion.md: + id: 83a2323624a8 + last_write_checksum: sha1:f9fdc8d94032e88d571335ccfc51d089a5cee39f + pristine_git_object: f9895e0fa1289beffe71c3364f6f2065f4f1d63a + docs/models/operations/GetTaxPaymentRequest.md: + id: 498fe3e9f0ef + last_write_checksum: sha1:18bcff9b5595f93630b008942ffd88422ea2aa3e + pristine_git_object: 27124ac9363a54c11743bb9e840f7537d7536aeb + docs/models/operations/GetTaxPaymentResponse.md: + id: 0128dfbc4ae5 + last_write_checksum: sha1:88666ad39eac88106a9453806fc85438dfa96bd5 + pristine_git_object: 5d78fdd78f5aaf1eb1998fced751dfe3ab6ca1f9 + docs/models/operations/GetTaxPaymentsHeaderXGustoAPIVersion.md: + id: 29261b0a5463 + last_write_checksum: sha1:60ea417e8961f6caa2bfb52a35423dda6023b981 + pristine_git_object: a119bf2b36c5ca06074205d91c74f034e70d4e93 + docs/models/operations/GetTaxPaymentsRequest.md: + id: 9211f174ce0a + last_write_checksum: sha1:4a795cebed11aa6c976378bc708903cc509aed1e + pristine_git_object: ceee8ed55306f0fb258b9622cc7c3d8a8bf7201c + docs/models/operations/GetTaxPaymentsResponse.md: + id: 9e9e580ff785 + last_write_checksum: sha1:7e63630a633d078024a375c6c80900ec49fe5563 + pristine_git_object: 9e06ceeae81c96a25f42957c504c5086f535dac4 docs/models/operations/GetV1BenefitsBenefitIdHeaderXGustoAPIVersion.md: id: f247a64c47af last_write_checksum: sha1:10b1045200bb3c74c25330caf3fe5eb2e5dc9c0d @@ -3412,8 +3808,24 @@ trackedFiles: pristine_git_object: 95e2b3895147603941a000329d50bc38a10d68b2 docs/models/operations/GetV1BenefitsResponse.md: id: 257d0090ff83 - last_write_checksum: sha1:35c05b5f2c1b9244df460e9b3ec9f822b5e72f24 - pristine_git_object: 38d1b7a14bc81466ef579f0aaf05c0b0680d9cbe + last_write_checksum: sha1:11567c87b6c02a4b99a4910d26360a16024773d0 + pristine_git_object: c636016d6f7d4006346f6650a575e77da13acd6b + docs/models/operations/GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion.md: + id: ff041859b83d + last_write_checksum: sha1:1a0afa1e9d73e9764e545ae6b988528e570b6637 + pristine_git_object: f609b4392337853016ccd0d9c2dbcadf837c36b2 + docs/models/operations/GetV1BulkReportsRequestUuidRequest.md: + id: ab8e1edc4091 + last_write_checksum: sha1:69005726412d0becbd5607fb8a3d9a58e6b78659 + pristine_git_object: 455e7dd033efee9c28745ac4e46dc67816f096db + docs/models/operations/GetV1BulkReportsRequestUuidResponse.md: + id: 19ba6bb99aaf + last_write_checksum: sha1:038367edf0731b6f4527d2dd6777e0f7364b7a51 + pristine_git_object: 308f4e425a395272618ecd94ef728e346f6a66a8 + docs/models/operations/GetV1BulkReportsRequestUuidSecurity.md: + id: 4a0c01780680 + last_write_checksum: sha1:ed7e2b5d63ac663194bbec432efb8e3835beb2bc + pristine_git_object: ad43655f1131c8347238ca0199cadaca5fa5f550 docs/models/operations/GetV1CompaniesAttachmentHeaderXGustoAPIVersion.md: id: 046b7fdb9d06 last_write_checksum: sha1:edd32deda8de10ff9ad0355d3bd8b212a98006d9 @@ -3450,14 +3862,10 @@ trackedFiles: id: 6f2f23af171c last_write_checksum: sha1:ac9fc5377dfcdf013faadea3cea4bbee9640c2b8 pristine_git_object: fbdb71ff21f3473f885a6046d96244942cdb81a5 - docs/models/operations/GetV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion.md: - id: 6bfec9e77440 - last_write_checksum: sha1:c033f028687b607f60c08c3bc97050e0bf780b49 - pristine_git_object: 554389755d850765ab6583ffd30ed8d399617f4e docs/models/operations/GetV1CompaniesCompanyIdAdminsRequest.md: id: 05542e452c30 - last_write_checksum: sha1:283b2cab39f459e03828b46e12bef2e1a4439354 - pristine_git_object: d31ca9aecc82c1d700a6c3aadac50d1c76e34d82 + last_write_checksum: sha1:403e8c1ab50b07abcd240a54c90013d61367d02d + pristine_git_object: cdf8eb2e8c2ca3e64c83a92c3a4564fa355753bb docs/models/operations/GetV1CompaniesCompanyIdAdminsResponse.md: id: 137d6d6a175e last_write_checksum: sha1:0e9a390110928574eeca3dbbbfeccd8e3488368f @@ -3504,8 +3912,8 @@ trackedFiles: pristine_git_object: a888e13e817180032b3c422013a8ac413e69c095 docs/models/operations/GetV1CompaniesCompanyIdContractorPaymentGroupsRequest.md: id: 75b0550b74c1 - last_write_checksum: sha1:bbd88beb414a98c02c23669ae2a2a1c809185be3 - pristine_git_object: c6048a25c46b36b2fe5f4fcefef433b13c2e40b2 + last_write_checksum: sha1:3d3b394edafc8fa036d44c47c16401ed1eed0baf + pristine_git_object: 5393f11c62f1f634c472c672fd415c0ea25d9ec3 docs/models/operations/GetV1CompaniesCompanyIdContractorPaymentGroupsResponse.md: id: 8a810e763279 last_write_checksum: sha1:d61be1e197fe5f6c884cd4f66f72623d2df1a78a @@ -3532,8 +3940,8 @@ trackedFiles: pristine_git_object: 9e9e2b84be45f86500216363f06a38b363e991d0 docs/models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest.md: id: 0f4c000da73b - last_write_checksum: sha1:3ba7bf4bd4917eebcca647ae8b16c3a7d3b013fd - pristine_git_object: b2b1058ad5c548da40869a8b6e5c96176749f2e1 + last_write_checksum: sha1:ed706b89d7d551f4cedb1c09c96f7c12563ffe3d + pristine_git_object: b49fbb0fa4cbb93537dfbff31b2d4599342916cf docs/models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsResponse.md: id: e3da32bf63d7 last_write_checksum: sha1:6744dafd956eb6567149e63d194a82ab30ac4b97 @@ -3578,10 +3986,14 @@ trackedFiles: id: fe375e79fd4a last_write_checksum: sha1:4d760a0bed80bae4abf8d5b546a68198fa454286 pristine_git_object: cee20405e0a91aed26fe3bf9e154bfaae5736e0c + docs/models/operations/GetV1CompaniesCompanyIdEmployeesQueryParamInclude.md: + id: 6f46fdc98f40 + last_write_checksum: sha1:1c0d764e061a7bbe9a3e6a004cf521801c337653 + pristine_git_object: 24c99d39e72524eebcbd38aa8e9cb7130f89bdd8 docs/models/operations/GetV1CompaniesCompanyIdEmployeesRequest.md: id: f37cf221e405 - last_write_checksum: sha1:b5e56402eb6d4b624a0111d14bd3227f00879e38 - pristine_git_object: b1338ec65e89a205daf9e288157dc554f7763f0f + last_write_checksum: sha1:02ae2c6211087cc4d0a38219f82fadc655533127 + pristine_git_object: 959151d9553a3f4f384984934253cf4db3b0e4f2 docs/models/operations/GetV1CompaniesCompanyIdEmployeesResponse.md: id: 10658dbf4ba2 last_write_checksum: sha1:745cb7c527b8e0493783d460580fa0ebac05d096 @@ -3592,8 +4004,8 @@ trackedFiles: pristine_git_object: be05c33a978f8845be8f3126e454077047ab0b43 docs/models/operations/GetV1CompaniesCompanyIdFederalTaxDetailsRequest.md: id: 3bd78defc737 - last_write_checksum: sha1:49acea9323549bbdf7957d72f1746e734c5a3491 - pristine_git_object: 3d1f819c956df0b4c5f1646b74167a1c1de24cf2 + last_write_checksum: sha1:c3376d6791c1103ecb488126abcb0484d67237da + pristine_git_object: b8135170ede7c4ced4430a11a674faf319ff952d docs/models/operations/GetV1CompaniesCompanyIdFederalTaxDetailsResponse.md: id: 31144abce6ec last_write_checksum: sha1:54f4236686240194ef2738617a3061c78c3459cc @@ -3656,8 +4068,8 @@ trackedFiles: pristine_git_object: df4c473e3b1e592117a1f47bc60b98f5cf775061 docs/models/operations/GetV1CompaniesCompanyIdPaySchedulesPreviewRequest.md: id: 30f0114598e4 - last_write_checksum: sha1:54382a3f01189774377eb66c08b4781afadc0bb2 - pristine_git_object: 912c535a031f333a827ea54b5eb1031c3e51424b + last_write_checksum: sha1:2fae53b80aadfe10139f75a312e6e1b9d5197915 + pristine_git_object: cfb82250ac6817d5a27dc5711a53477471ff4873 docs/models/operations/GetV1CompaniesCompanyIdPaySchedulesPreviewResponse.md: id: 1554fe3909c9 last_write_checksum: sha1:17d4c361f1b3a3dbeda348d19ff9e0fa13023166 @@ -3670,10 +4082,14 @@ trackedFiles: id: adee5caaa2ba last_write_checksum: sha1:8574576c917d28fec7624cb13ec15a41c50a3fa6 pristine_git_object: 788494a81f7fb68c7a2963d7e754ce3c452fd10a + docs/models/operations/GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion.md: + id: e39ee821cac9 + last_write_checksum: sha1:fac595c93525dafde85e4c1631b9f893e131f35e + pristine_git_object: f7126ded9976025fe4c4540e2595016da007c505 docs/models/operations/GetV1CompaniesCompanyIdPayrollReversalsRequest.md: id: bb087fdd3ff8 - last_write_checksum: sha1:c951e4e466bd96e36f908e0c17b4d6030e46ed80 - pristine_git_object: 29e8e3fb17248e6fb775359600e12ab349246a76 + last_write_checksum: sha1:4c7f6323d62b9e935a73033ffed98bd5fbfccc4c + pristine_git_object: f828b2823a85bfa802445e14b6ba925a55dbc6d7 docs/models/operations/GetV1CompaniesCompanyIdPayrollReversalsResponse.md: id: c186454b7f29 last_write_checksum: sha1:98bfcad8acd7eb93f31a7d4e3472c25ab9d499c7 @@ -3688,8 +4104,8 @@ trackedFiles: pristine_git_object: c64f3e11e8cb8fd02b1bebdb57d877489cb3919b docs/models/operations/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.md: id: 46107c379f6c - last_write_checksum: sha1:f2b5cb0e28998546d2a118dd55af0e5b579a8bbb - pristine_git_object: e8abe53dba08f1990fb00dea036149d9c99ed72e + last_write_checksum: sha1:afe99067f14ea21d61b0ae4c8115eee85f352a9f + pristine_git_object: ff9d1d05c6373f41054537e8a7a8426da2f306d1 docs/models/operations/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsResponse.md: id: 7ca07686a3ee last_write_checksum: sha1:a2d9949bed72d87d49eefa76bae08ff02da10467 @@ -3704,8 +4120,8 @@ trackedFiles: pristine_git_object: 164107bb154e13038e961b3251615428aa3900bc docs/models/operations/GetV1CompaniesCompanyIdPayrollsPayrollIdRequest.md: id: e1853df6e4ed - last_write_checksum: sha1:ffaf2f0d7ede3246669e64a8d2bd6498f2d18d20 - pristine_git_object: 3f6e266a20ad9302595d7fcda183fc42bcd15aa5 + last_write_checksum: sha1:c8a67a820884296118a352fc7e97ed2b6129231f + pristine_git_object: 2ddcfd247b21b407a8bef7b656a6a3450af4c0d8 docs/models/operations/GetV1CompaniesCompanyIdPayrollsPayrollIdResponse.md: id: 39087f41d949 last_write_checksum: sha1:2f1dee6fb18ecd19695f3376f476cbc850663754 @@ -3716,8 +4132,8 @@ trackedFiles: pristine_git_object: be2b4a7f307767c027397b26f8d962a0c9c39b69 docs/models/operations/GetV1CompaniesCompanyIdPayrollsRequest.md: id: 82e5a165e4cd - last_write_checksum: sha1:80b59fedce34d71b78b8af5b917aff60cb9cc353 - pristine_git_object: 7fb68723fcf98673337243307dd498adeb52cc56 + last_write_checksum: sha1:eef12db31edf1d00e265e2b5fa5ef1ecb5372bce + pristine_git_object: d7c533615a47ab87b3f62a7024d6a79da8cb6301 docs/models/operations/GetV1CompaniesCompanyIdPayrollsResponse.md: id: 9919e264e26d last_write_checksum: sha1:7a067abd64be01479b4ac917faa441cfaa421540 @@ -3768,8 +4184,8 @@ trackedFiles: pristine_git_object: 182ed64f0308576cc962e5c37c3f88d37fc5cd45 docs/models/operations/GetV1CompaniesCompanyUuidSignatoriesRequest.md: id: 99a788e4745d - last_write_checksum: sha1:e59e641f53a05f212253561f0ef56c589394e38a - pristine_git_object: d663e119ca91bd3faec3dd0c784f277a2b30dc8b + last_write_checksum: sha1:5cdafa66d6cb676db978990fc45c6aa629733e95 + pristine_git_object: 0582dd5b433698fa97728c919bb9aec129c1b156 docs/models/operations/GetV1CompaniesCompanyUuidSignatoriesResponse.md: id: 6f324970bfae last_write_checksum: sha1:7c292dffbf17ed17021b5f3e3a3891de28c779e1 @@ -3780,8 +4196,8 @@ trackedFiles: pristine_git_object: 700d69f72ba6e893b2a7d79288081c33fa5bf29d docs/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsRequest.md: id: 80204602e739 - last_write_checksum: sha1:5dd49ad65fc0704eb7329d415fbe7a03963179bc - pristine_git_object: e045197b316bc52a491429d754995762f55205af + last_write_checksum: sha1:a63fbdaf00cc53ab4d5af8501a35a6d023629415 + pristine_git_object: dc8ac0a768a300b4b2e1629a77c6bf5526fefd07 docs/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsResponse.md: id: 531d7e728e74 last_write_checksum: sha1:263b0337b6f5bd9ef748de426d7076426c098ba0 @@ -3792,8 +4208,8 @@ trackedFiles: pristine_git_object: 7914df0506c858b80316c6b139f65b079e9090b9 docs/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsStateRequest.md: id: 018b9158ccf8 - last_write_checksum: sha1:24cbc873e2b71de0b8a2f1ffc50cc4f5d59e00db - pristine_git_object: 8ab8c17eb37d00e652126957fa8b2a4c382e7249 + last_write_checksum: sha1:592601823e24cb6c3e830345e9c0c77127fd8df5 + pristine_git_object: 30fdff1b12cfc8fe8c0168ac440199ea8ca49121 docs/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsStateResponse.md: id: 8c35f2bd3de2 last_write_checksum: sha1:a9a0e63c8f3d027b54c4b15f4b969be0949f5996 @@ -3852,8 +4268,8 @@ trackedFiles: pristine_git_object: 9a2b4720439666117663762665c928d162bec579 docs/models/operations/GetV1CompaniesRequest.md: id: 6415242b650e - last_write_checksum: sha1:e2c9c6a104c64b8b27d4c0ec89792346a0dca32a - pristine_git_object: 6e2ad32276a44899c2518bb2c19dad6dd596ce38 + last_write_checksum: sha1:973e6a2ec30218ce9c2a3aec5e77c517d29833b1 + pristine_git_object: 67d84a95664de05d76f130bf1caa6b84b5bc36b1 docs/models/operations/GetV1CompaniesResponse.md: id: 3af5aadb9476 last_write_checksum: sha1:363fef63d6b2b38ccb4ca9a2912140caccafa316 @@ -3874,14 +4290,10 @@ trackedFiles: id: 11305afcfcab last_write_checksum: sha1:cc6d3b6d6be6f286e56c123ec6391620dea35c17 pristine_git_object: 2379b25c2595062eba98d2cc7ec21dd06e5ab28f - docs/models/operations/GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsQueryParamInclude.md: - id: 555a99b96903 - last_write_checksum: sha1:101ffe37a85d7d62a1b93563c05eb36cf94f5e38 - pristine_git_object: 3e6b1aaf7835592c0e0c33137a441240b2d432a4 docs/models/operations/GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsRequest.md: id: 7128800f1a6f - last_write_checksum: sha1:c49ba574fa2cf1b0b41bcc439c809f4c1509284a - pristine_git_object: 0a21e174aaa3ba84fddae31c62ed704436185114 + last_write_checksum: sha1:9bab5eceb11c9bc75a972c8a99c149b72fbb43eb + pristine_git_object: d5aaf5ac46bbcf155dacd2040b3a843b60d5d5eb docs/models/operations/GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsResponse.md: id: ae33bd0aac10 last_write_checksum: sha1:ee3e4d7a776148fe070d2ff695888a4fcec0bdd4 @@ -3890,14 +4302,10 @@ trackedFiles: id: 03fd0836c6e0 last_write_checksum: sha1:c495685cafee217525e8b1d4ee0ffe72e03c46cd pristine_git_object: a43f1b12c9599f6df4085f6ee6127e87207f5f74 - docs/models/operations/GetV1CompanyBenefitsCompanyBenefitIdQueryParamInclude.md: - id: a3cdb2d2265b - last_write_checksum: sha1:62e87fd55810a7002c75dd983ca712594f787c41 - pristine_git_object: 34acf295a38023b9e6a0db67ebf47ecd56c781b1 docs/models/operations/GetV1CompanyBenefitsCompanyBenefitIdRequest.md: id: 7a402d542126 - last_write_checksum: sha1:6dbe1b00edd62b61d78866e967eac7cd930a8592 - pristine_git_object: ff4093df883074e9033e8baf3b096f81fc19a329 + last_write_checksum: sha1:2dad26693367d23b42a32f407b6f1d81d99d12c6 + pristine_git_object: 1d0a4b9b5e2876e68884cc3e4606678b8013c6db docs/models/operations/GetV1CompanyBenefitsCompanyBenefitIdResponse.md: id: 122e37b5ce63 last_write_checksum: sha1:d0c05783ac11b51e28186c10bfc75cb3387d9f15 @@ -3920,8 +4328,8 @@ trackedFiles: pristine_git_object: 55898c096fe0b099c630740ae40d35b604562f8a docs/models/operations/GetV1CompanyFinishOnboardingRequest.md: id: ddebb45f22a9 - last_write_checksum: sha1:284ffbed5beffc0674fc8d68b6040f91fe2f5073 - pristine_git_object: 387d5e5827ed4a1af453947a65a9b7814581a55e + last_write_checksum: sha1:7a66e1e35b879e8d1ff5515e327ca40f062b9c50 + pristine_git_object: cd74288a130b2a695458ecce26098acb852a15ea docs/models/operations/GetV1CompanyFinishOnboardingResponse.md: id: 3f52377acc70 last_write_checksum: sha1:ee2b4481e01439c5dba861c830ea1cdaf5357a91 @@ -3968,8 +4376,8 @@ trackedFiles: pristine_git_object: 31bcbfc68db8106f84c75690ceb5224ba46b5820 docs/models/operations/GetV1CompanyIndustryRequest.md: id: 7f19e772f30d - last_write_checksum: sha1:39169952b430f42c3f18dca11e9fdb2596a70c24 - pristine_git_object: b6a7b04f592d62ab2fca8dcb65287b00f3951a7c + last_write_checksum: sha1:644b8af9f463deafeed7a9a9533f4d38f8a36cea + pristine_git_object: 789bd7642472d7f60a46430061a8569b439bcf72 docs/models/operations/GetV1CompanyIndustryResponse.md: id: 724db0239d57 last_write_checksum: sha1:45d96531329d75de9ff32d1b0efc9c6342a35139 @@ -3980,8 +4388,8 @@ trackedFiles: pristine_git_object: de16c2d40b1e01a0951092a1953b3ae707a84f6f docs/models/operations/GetV1CompanyOnboardingStatusRequest.md: id: 85feafbfed12 - last_write_checksum: sha1:71b5190a2e7302f895a3dabe2262328a46aa9944 - pristine_git_object: 3292469c35aaf76b948d5edaf781111bc352ef90 + last_write_checksum: sha1:f4f56dd665671cdcf55cd1d31c188ddb137df94d + pristine_git_object: 4b1732f8870b96bcef8fa18f46dde911226bf97c docs/models/operations/GetV1CompanyOnboardingStatusResponse.md: id: d6eb5cb8dc0d last_write_checksum: sha1:ba0004687693db506d5bd47fc1fe99db3f6b8bfa @@ -4088,8 +4496,8 @@ trackedFiles: pristine_git_object: 188b335c8d6b41ce0fc3e590a5bd64e8672d5984 docs/models/operations/GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.md: id: 65524fd5dfcf - last_write_checksum: sha1:23901a013f7e4fa9170b87395889acfbb41bedfd - pristine_git_object: 472134e8aefca0dc9317fee0c24819905a071df6 + last_write_checksum: sha1:dfccbdf6b5fdb4aab984f8fcfde17bc7d4081b83 + pristine_git_object: 468079c7292f65b5bbfee2af3eaced98eec96447 docs/models/operations/GetV1ContractorPaymentGroupsContractorPaymentGroupIdResponse.md: id: 28ceb1cf3821 last_write_checksum: sha1:e9fff99ac6c3c3068311a859d5a58bacd30b8cfc @@ -4100,8 +4508,8 @@ trackedFiles: pristine_git_object: ec83ea01fd6d4fb37289ae6b1c5b3dac053243ee docs/models/operations/GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.md: id: cfc94efa23b1 - last_write_checksum: sha1:34053502e7ec7a07fd8c7a12c31809e7700493f1 - pristine_git_object: 5faa3bac3f4a6507f1d7fa4c7bc6b5dcbb920e0e + last_write_checksum: sha1:9e9b6c99a993df3fb331b5df91a9dcc92b3283f0 + pristine_git_object: 8dc42357aabe07a5003725d44f8a9601a2115d72 docs/models/operations/GetV1ContractorPaymentGroupsIdPartnerDisbursementsResponse.md: id: c5d15b11462a last_write_checksum: sha1:870c5afa506a2f70d5905df86c9fc8bec831ed57 @@ -4170,6 +4578,18 @@ trackedFiles: id: a6a7a0e5f9fe last_write_checksum: sha1:226fb35cce4877e3110c161091d6a7af7a188c93 pristine_git_object: d9c8df9fedbb896edaa7c9c5225faeb58cc37da2 + docs/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.md: + id: 5ee617705af5 + last_write_checksum: sha1:cafd1c395c476feef870283cacad752d025a60ff + pristine_git_object: ab124d2b6bd35338f8a95b10a68a7ce904e2861d + docs/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsRequest.md: + id: ede3f62d86ee + last_write_checksum: sha1:73247888317c4deadb9b9b8789426f8021226d47 + pristine_git_object: 93ce3684cde213f8ed5f2141819460256365e393 + docs/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsResponse.md: + id: b194ff25688f + last_write_checksum: sha1:2829d8e5aa3c941f1c873418e88d5a009805ef2f + pristine_git_object: 130dc68ec59248d7fd5df1d6fcd6935477ea9d3b docs/models/operations/GetV1ContractorsContractorUuidOnboardingStatusHeaderXGustoAPIVersion.md: id: 5629f61a0768 last_write_checksum: sha1:2e9ef525a1056160c80d2a50394da2726be23f05 @@ -4194,6 +4614,18 @@ trackedFiles: id: 90c201e43f98 last_write_checksum: sha1:d7e5fdc3a06bdbd2e5059e5e55c7222c7fc1074e pristine_git_object: f2047935f35d394ddf88fd0fcc6f2bfbc21755f1 + docs/models/operations/GetV1ContractorsContractorUuidPaymentsHeaderXGustoAPIVersion.md: + id: fa15b1194a0d + last_write_checksum: sha1:c78c2f9897b8118f4955b05e27d31c73080923c6 + pristine_git_object: 6e89fd830e42190c7ca2903d5ff4d3cfa81cfea6 + docs/models/operations/GetV1ContractorsContractorUuidPaymentsRequest.md: + id: 9d59e6796fd3 + last_write_checksum: sha1:0a5bfa638150670cd40a1d7b2686d9b5b78e4eb5 + pristine_git_object: 8aa624653b1b1e99baaec9a3517b2f3ef9f8c2e2 + docs/models/operations/GetV1ContractorsContractorUuidPaymentsResponse.md: + id: 8c70ef3ae3de + last_write_checksum: sha1:b0525a5c6d37569b35d47e9ae5aa3032c79dae2b + pristine_git_object: 2a76072a62ca839737f2f3c064187c9a9f12c750 docs/models/operations/GetV1ContractorsContractorUuidQueryParamInclude.md: id: 0b8a5ba3b801 last_write_checksum: sha1:2b2252da2f7e460c31e7875785701ed9d1b26d7a @@ -4272,8 +4704,8 @@ trackedFiles: pristine_git_object: aac5d765d322a911e1bcee99ba864d54a0a869c4 docs/models/operations/GetV1EmployeesEmployeeIdCustomFieldsRequest.md: id: c81651503583 - last_write_checksum: sha1:334151890b5b9d93ed6c4add239d8c8b3feb47d0 - pristine_git_object: 293792d1631413aa4d9ef4361efd509d2041c47a + last_write_checksum: sha1:8c4dd34a687738b2fe96d4bcc71d7cfdbaf22f68 + pristine_git_object: f5f22f6f1f2b0ecbf20e8da1ecbf89be94a1b0d3 docs/models/operations/GetV1EmployeesEmployeeIdCustomFieldsResponse.md: id: 2b4578aa79d6 last_write_checksum: sha1:f86baf17b677e8eaf3787bb5b7633df33fd540fb @@ -4336,8 +4768,8 @@ trackedFiles: pristine_git_object: d5690d2af9c488fb0d40f96f66d5cb23e4cab549 docs/models/operations/GetV1EmployeesEmployeeIdHomeAddressesRequest.md: id: 0157cd814280 - last_write_checksum: sha1:c1f6816c975e492a01891a561c42269ca142e274 - pristine_git_object: 6aebafe066c6cbd3dad6ef7d9ebff651e236838d + last_write_checksum: sha1:4521cbe7442d95fbd71e14a361eaea9253b8f799 + pristine_git_object: 76ab936a3f5e9869c0c11ad65e3140546cc63f96 docs/models/operations/GetV1EmployeesEmployeeIdHomeAddressesResponse.md: id: c0feb32cfe5a last_write_checksum: sha1:de8392f952ba13b5972fef7a7bd89a72f883fed4 @@ -4388,12 +4820,24 @@ trackedFiles: pristine_git_object: dfb6c5aa3e9cd7a8125d56bcd055234ae90372bf docs/models/operations/GetV1EmployeesEmployeeIdJobsRequest.md: id: 4ccb7ce0653f - last_write_checksum: sha1:68977d423f670afcf0193b0c2b50165aedaffa08 - pristine_git_object: cf7a66074f13d11791fc391ed48c008eff5ae4b4 + last_write_checksum: sha1:bc51fcfe17dc0b26650793477fd9112ff531980e + pristine_git_object: 3fc632e2980fa3f9d56068833c294659de53394d docs/models/operations/GetV1EmployeesEmployeeIdJobsResponse.md: id: 986bfdb6fd1c last_write_checksum: sha1:be913e275fbbe58f3228884e3aa6f7b5dfa41eca pristine_git_object: 62aeb35c642b9c828235cc6ea4afe4206dcc866e + docs/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.md: + id: be566dcb4469 + last_write_checksum: sha1:197f1a5243ac1ca9f965db8b6bfcd57ec9003eae + pristine_git_object: 79f4f8af20b666904c2497d2afd5e3cc068ab116 + docs/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest.md: + id: c5e1730042e0 + last_write_checksum: sha1:2a5768505eac78981e810ec3bfd1e9f73693fc34 + pristine_git_object: 1b278bbe8f03ee69fc38b5ac207e8ca1cacb41be + docs/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse.md: + id: 9c962b8ea95f + last_write_checksum: sha1:fd63b97af949caf5e577d8059f5d4af5bf8a4f3c + pristine_git_object: f3813fbd51762818f9bb3738db7129b94612948c docs/models/operations/GetV1EmployeesEmployeeIdOnboardingStatusHeaderXGustoAPIVersion.md: id: 7a275ff6ae99 last_write_checksum: sha1:e2ae378dfa0cd356de8136df1c74113a4ec2cf7b @@ -4472,8 +4916,8 @@ trackedFiles: pristine_git_object: e36db4dd480492f10e46a664aa28862cafa0a925 docs/models/operations/GetV1EmployeesEmployeeIdWorkAddressesRequest.md: id: ea939daf6cdd - last_write_checksum: sha1:25d8afcf27cd3bb059dd0477e5561fd60c8165f0 - pristine_git_object: d19a627b609c95eda74703ad49ec1be4ea6524f8 + last_write_checksum: sha1:4c3b83dd2b2db1798b77a76b69d99d780e4f8e67 + pristine_git_object: 50040c09ed9935d8acf594aa2948cb6bc70f36c0 docs/models/operations/GetV1EmployeesEmployeeIdWorkAddressesResponse.md: id: fa514d9e0ddc last_write_checksum: sha1:436894ebb86d8261245556d67d3add1127793c07 @@ -4496,8 +4940,8 @@ trackedFiles: pristine_git_object: 2936495ac901e1220f62e0d8a085c7824a0d799d docs/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.md: id: c84fdaf66194 - last_write_checksum: sha1:7cf9f987eb11ebfe6b5f13b61ef59059f4301266 - pristine_git_object: d65f1161d2acd2889bc1c07be64e6f5cd7808e76 + last_write_checksum: sha1:fc84d12d0ec6c02930789210c3fc50483ed63b91 + pristine_git_object: 5126079832a55ca676713e1fd3c4c58770eb7857 docs/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearResponse.md: id: c997434b07b4 last_write_checksum: sha1:4cfc3562a7aa7bae2cf5b39f791f19938397848f @@ -4508,8 +4952,8 @@ trackedFiles: pristine_git_object: 3246942bade4101bddc17e91634cb64462f39316 docs/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.md: id: 6fec461c7a29 - last_write_checksum: sha1:13ddf94127332657e90805d68df873312a1deac0 - pristine_git_object: 80afc7e835e21eb7d4d3ae3effb253dbe0b6fab5 + last_write_checksum: sha1:63032732b09bb3d14381452fbdb385dbeafdd259 + pristine_git_object: e9a06200c65cb243ce3a4bc831a21ccbae2e09d5 docs/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesResponse.md: id: 98154fb9b5c9 last_write_checksum: sha1:1284eab5465afb16a4204829c902bbbd0107ca3b @@ -4518,10 +4962,14 @@ trackedFiles: id: 854609ca3aa1 last_write_checksum: sha1:12614123dead61ac33a394167e4cdd4ab8ee4de5 pristine_git_object: e977264a7775fe7768f27cb5e8057b04129ac090 + docs/models/operations/GetV1EmployeesQueryParamInclude.md: + id: dc07cd39f7e6 + last_write_checksum: sha1:e188f7faf93af69171fa95858edcaa00cc402b0a + pristine_git_object: b5723142a32c90cb27a5a0e1287f65ae436b46f1 docs/models/operations/GetV1EmployeesRequest.md: id: 223f04be7236 - last_write_checksum: sha1:add7b9f8902062aa7f9b0242233699cda171e1c4 - pristine_git_object: 565b2b40f44a4215631fe9e4a9f2cf22af1d1326 + last_write_checksum: sha1:aea832b218f7214287eafb2efcbcf1e8b77cff6e + pristine_git_object: 047635b759a498a0187588249d0592a914232838 docs/models/operations/GetV1EmployeesResponse.md: id: 853bdf44cd6b last_write_checksum: sha1:cea45369bf1e2a5641c3f0d24875dd9ab3ab939c @@ -4574,10 +5022,14 @@ trackedFiles: id: 1f1f6ba87132 last_write_checksum: sha1:971fb72535c33d57704da5a6622aad500c80a176 pristine_git_object: ef6a3466d9a0fadbf40e41c612b8d56faf0d24ed + docs/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion.md: + id: c4da4d9984e4 + last_write_checksum: sha1:269505c81a4e28301fefe1dd1f0445eb0f2807e3 + pristine_git_object: 8f71a3594ecc8c9e398bb7267d514c6f61a58c65 docs/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest.md: id: 613fd414b5a7 - last_write_checksum: sha1:f513b2c8597aa2933dcdb6a4c4b478bc0754e763 - pristine_git_object: 5f54a4af001f65857a808844921cd4662ab5cd26 + last_write_checksum: sha1:1dfaebe742676623e6185b213c90cad9ebcbbc19 + pristine_git_object: eb0ec75b979911fe0f509a778191db9e1cba1d7e docs/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidResponse.md: id: 3f4898bf1463 last_write_checksum: sha1:7a275e95ac461fd7d8e743996f767ebfadf9ad53 @@ -4588,8 +5040,8 @@ trackedFiles: pristine_git_object: 29b72092f2d6e487066ada8da55935fa0ed5cd31 docs/models/operations/GetV1HomeAddressesHomeAddressUuidRequest.md: id: a588fb324a01 - last_write_checksum: sha1:fb49c506a1134ba759654c764f553c30d768d780 - pristine_git_object: a64d26076329bbe232e761d823f1697078bf53e6 + last_write_checksum: sha1:82857314368f21b4d5d2a3bdc1ed772a7c9209d0 + pristine_git_object: c0c0df377c9a432d09a0a051d1f8ae343363b76b docs/models/operations/GetV1HomeAddressesHomeAddressUuidResponse.md: id: c9252a2ac245 last_write_checksum: sha1:4524ee2005826acd98cca68acc4b8d540da85098 @@ -4620,8 +5072,8 @@ trackedFiles: pristine_git_object: 23f84b685f4bbe2c52a1ee05cc5f59a19057faea docs/models/operations/GetV1JobsJobIdRequest.md: id: bc457dd1c163 - last_write_checksum: sha1:b462e71300da97b17a09d2d7b17b8df0c87dc3f3 - pristine_git_object: 87c2fabaaeac2b469bb28d422a16e52d63b372d5 + last_write_checksum: sha1:b0baa81190ae003251bd5b817ff84f97a74a5b4d + pristine_git_object: 586a46dd88dd1ac4944d2108c0cc803fe8f7b61b docs/models/operations/GetV1JobsJobIdResponse.md: id: 574495194c85 last_write_checksum: sha1:2f324c66561481bd15f5b8bfa0114ebfb51b7897 @@ -4644,8 +5096,8 @@ trackedFiles: pristine_git_object: e4e2035c00ae1fbc8feba7bd10ab807859a62abc docs/models/operations/GetV1LocationsLocationUuidMinimumWagesRequest.md: id: 718a87d3c1d5 - last_write_checksum: sha1:cc359d7503916f0e0d7e447974d5d17a2a4a5a92 - pristine_git_object: b5c4959daf60a1582280edcb3a2249c8e5fdd686 + last_write_checksum: sha1:6e7efc92b8ef515249c26c594eb790e4b4a85f1d + pristine_git_object: 395a3c3794c9416b9afb205e52d9ffd009d4bff9 docs/models/operations/GetV1LocationsLocationUuidMinimumWagesResponse.md: id: 7e7e378145d3 last_write_checksum: sha1:dc30b3d7e7f84315677bead0a0583727ecc82765 @@ -4656,8 +5108,8 @@ trackedFiles: pristine_git_object: d4329af3a00b1dd3865e34f41dcdc61ad815f266 docs/models/operations/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest.md: id: c6dc994bc139 - last_write_checksum: sha1:8957db3add843e0be385e5efab7cbb413bfeb3ac - pristine_git_object: 465361c16d863800a1d07ff77827f0b205149839 + last_write_checksum: sha1:1fb3b42e5e4b43e348d6e6a5a4527114cf76b897 + pristine_git_object: 7745ffd4af6ca1889d17e68c73a50c492337eba3 docs/models/operations/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessResponse.md: id: 47955a2e8280 last_write_checksum: sha1:6735abdbfb4fba20334f87ec10781cd1955864a6 @@ -4668,20 +5120,36 @@ trackedFiles: pristine_git_object: c21b9feca8c5b6889241cdd8883ba29407eb82a6 docs/models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidRequest.md: id: 6e06e82f2048 - last_write_checksum: sha1:4a96318945cb8c3733b89e7f58e4dd11a8fb2518 - pristine_git_object: 6dbb99dc3179371dcc0aec62551c6fa761cc91b5 + last_write_checksum: sha1:2b22eafc5c78a329c3caf86bf3c03571f963ecc0 + pristine_git_object: 2a52e8262838855e8a57eaf4b7d7edea0c6164bf docs/models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidResponse.md: id: 62ff13fc9167 last_write_checksum: sha1:114113a4ff89bba647b47a1f556470e8641bfe83 pristine_git_object: 832b1b98bcec2df013d782772d5bde2cd0742011 + docs/models/operations/GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion.md: + id: ad4790a65201 + last_write_checksum: sha1:5bc1eed507fc31502f811ab6d3e9d869e4b72138 + pristine_git_object: f9a7d6875142b3013ace6ba850d9c4e0a69ca049 + docs/models/operations/GetV1PayrollBatchesPayrollBatchUuidRequest.md: + id: 8463db0a5cac + last_write_checksum: sha1:07a36708773047af5f402254d5fad6a98716ec8b + pristine_git_object: 9e4304a5f7ae954652cffc9fcc6f38a5a298da72 + docs/models/operations/GetV1PayrollBatchesPayrollBatchUuidResponse.md: + id: 21416aec9c4b + last_write_checksum: sha1:235dd9e01ad1c2d5c7e4dd41251fb5198fdbd330 + pristine_git_object: ada4d02fe9937197b4dcdf3e388475690da1accf + docs/models/operations/GetV1PayrollBatchesPayrollBatchUuidSecurity.md: + id: 337528e29daa + last_write_checksum: sha1:074e7f5ddc006affe73cf9a622d67657eaf70c62 + pristine_git_object: 06c6b17ca1ff615df6f4c6372f33d211a884ac46 docs/models/operations/GetV1PayrollDigestsPayrollDigestUuidHeaderXGustoAPIVersion.md: id: bef6d14bb6a0 last_write_checksum: sha1:0b07bf7d83526b8c1268276b95c0606213bb7c65 pristine_git_object: b6bc46ff8ee05a1c2e0e90ad41ce56dbebad541f docs/models/operations/GetV1PayrollDigestsPayrollDigestUuidRequest.md: id: c873a93995ff - last_write_checksum: sha1:7c7ca1a1d63ebc095e8404c00a507efcb4248aba - pristine_git_object: 94932ddab94097b2850419575428a638327a5bef + last_write_checksum: sha1:63cb1fd927dcde23fd41e09c9a9613210d646db6 + pristine_git_object: e1a2f32f400524d741e57c30c096edd8bc7c7365 docs/models/operations/GetV1PayrollDigestsPayrollDigestUuidResponse.md: id: 145a9fa7b8ca last_write_checksum: sha1:27a703d5f65f8a8df4bb7c096e3556989c786acd @@ -4708,8 +5176,8 @@ trackedFiles: pristine_git_object: 371b9443c235a9c425fb4b2d32cb5579afd0cd33 docs/models/operations/GetV1PeopleBatchesPeopleBatchUuidRequest.md: id: 60f403a9fb05 - last_write_checksum: sha1:c70b2ff33b369c9f81bd5c8dbcecae9dffca9cc7 - pristine_git_object: 8c0c6537d840cdf480a43c79553d54ba4c75d56c + last_write_checksum: sha1:dce6419cb7cb50a3adcc905f88e30d629a5f7800 + pristine_git_object: 300509ccb4f191f84c4941f01efd5f57da41234e docs/models/operations/GetV1PeopleBatchesPeopleBatchUuidResponse.md: id: f2cd611363cb last_write_checksum: sha1:2158b4d17cb331da9c2009e5cfcc032daada4175 @@ -4802,10 +5270,14 @@ trackedFiles: id: 054b103294a3 last_write_checksum: sha1:0c2cc7ad8b4d71255801bfd7ba4cc14ddab85bfe pristine_git_object: 7fadf721d9661749c79ee462bff19f3129b39ee4 + docs/models/operations/GetV1TokenInfoHeaderXGustoAPIVersion.md: + id: 7029efdce779 + last_write_checksum: sha1:63ba8c45bb10009417c99352c10157efaac79fe2 + pristine_git_object: d7be7ef862d2d0dbf97b172a642d8d337efc4824 docs/models/operations/GetV1TokenInfoRequest.md: id: c32d316bb9fa - last_write_checksum: sha1:3822cebca8058a6619703bd043698215ed95ff5b - pristine_git_object: 6bd0fb01076177cb85b076482c9fdc6fff1b920f + last_write_checksum: sha1:64dffb2a100616fb263cf96a8ca5740142594327 + pristine_git_object: 718672757728878f9aca5d5859e19bb55347673a docs/models/operations/GetV1TokenInfoResponse.md: id: 9237706ba00d last_write_checksum: sha1:af559ce2221cc2acbee3fbf0c2559ed46e9fcd63 @@ -4816,8 +5288,8 @@ trackedFiles: pristine_git_object: 1ee19d63669732e5bdd4df55f287ba895c69f5c6 docs/models/operations/GetV1WebhookSubscriptionUuidRequest.md: id: b69fa09d793a - last_write_checksum: sha1:7ccf04df63c4a2310d1ecdfc0095bfb9a344239d - pristine_git_object: f375788c185f5bb9673ae1e718712db2c20e17ec + last_write_checksum: sha1:afeaba0ee632abc4d3d5a977a316fe52ffdb6f86 + pristine_git_object: bb801890452822ad206cdfcd08a0883127dea785 docs/models/operations/GetV1WebhookSubscriptionUuidResponse.md: id: aa4b74cfea80 last_write_checksum: sha1:678723b2584fb57e3f4b3c435e02b4c28bbd05ba @@ -4832,8 +5304,8 @@ trackedFiles: pristine_git_object: b01beb73b90e2fc714816789c78a28c038d4b669 docs/models/operations/GetV1WebhookSubscriptionVerificationTokenUuidRequest.md: id: dd81b5658304 - last_write_checksum: sha1:3fdae414e3919f3e2187c60a643b70499599799f - pristine_git_object: 8d407e95db64c02e45fa5742fedb3a747f52af62 + last_write_checksum: sha1:2cd56342056b4331c03912ff1f3106202a4e0341 + pristine_git_object: fd4a311e8b4a5e6a5f0a3bfe55e793f828a0e3f0 docs/models/operations/GetV1WebhookSubscriptionVerificationTokenUuidResponse.md: id: cfd1c8a3d41a last_write_checksum: sha1:0f30b2d6fa70d8807f46cdd673498af2440c5b82 @@ -4880,8 +5352,8 @@ trackedFiles: pristine_git_object: 905e8d3e96bc990cef97f7a07844633a962aa280 docs/models/operations/GetV1WorkAddressesWorkAddressUuidRequest.md: id: 095d69f139bc - last_write_checksum: sha1:24dfa29a86bdefb8249d7c491c99036a0c32ae25 - pristine_git_object: 55cbdc9b086451cbaba3277922b62d553a9f0e5a + last_write_checksum: sha1:3d9ec610e9d15e15807b60d15127b9ca5451e323 + pristine_git_object: 0be33d2ce4359464ba28b7ff3aeec9b1bf513e73 docs/models/operations/GetV1WorkAddressesWorkAddressUuidResponse.md: id: 85a9306a1b87 last_write_checksum: sha1:0789f470fb0e2fd21c61f3a5e90a56fe8a023777 @@ -4904,8 +5376,8 @@ trackedFiles: pristine_git_object: f6aa261decbca158589c6aa61311d2b2f8b9b661 docs/models/operations/GetWireInRequestsWireInRequestUuidRequest.md: id: b89154a3fa0e - last_write_checksum: sha1:42815a5b6bad0b8612ee96b7f835325dea3fd07a - pristine_git_object: 88549dd5cf1f71115fee12e26bc4f08f4881ff90 + last_write_checksum: sha1:764eb6b5aa998a21e6013cb1f864723ba1d0f7e4 + pristine_git_object: 7b5ec66a0dfb7d988433ae74037c032c0f624cce docs/models/operations/GetWireInRequestsWireInRequestUuidResponse.md: id: 190ff496c05d last_write_checksum: sha1:4b55d1ebca49a45988dbd52b32cdd52ce398615e @@ -4924,8 +5396,8 @@ trackedFiles: pristine_git_object: 01694e0331e3a2c943cff95664796018aa41393d docs/models/operations/Include.md: id: 323eb1b543b1 - last_write_checksum: sha1:34889d7e0a8d1b4e0f483a018a25fc562805fd3c - pristine_git_object: 3ce3ae7f0f53bafd4887bc9de54a8c6524d707d8 + last_write_checksum: sha1:2b51d9d99b1e2bf2c9e269291291d26cd92ee33d + pristine_git_object: 788e2a2915f1ce4b84e40160a2065ad577f8d35d docs/models/operations/IndependenceDay.md: id: 30e5759a1ae4 last_write_checksum: sha1:75b27e4c8d9474e37a0d803c8d1ced751d839ad4 @@ -4944,8 +5416,8 @@ trackedFiles: pristine_git_object: e019802e31233ff14a36924881392289f4f45dd6 docs/models/operations/LeavingFor.md: id: c618c6365ad0 - last_write_checksum: sha1:d8c701712bdc31612e33fd839531d2dfbb67fe21 - pristine_git_object: 841a9d0224521061db05b8b4f005f4f6489a8a77 + last_write_checksum: sha1:285ffbf514d6ec158a0f6eca3e02abdfa2eec01d + pristine_git_object: b115de2929f82417c08db66f636eb3e21894bb11 docs/models/operations/MemorialDay.md: id: d09755b914b3 last_write_checksum: sha1:df85d934c3453b8b54c6c38fd13b634296dd9c0d @@ -4958,10 +5430,14 @@ trackedFiles: id: a607b01e33a9 last_write_checksum: sha1:faba128507fac5f145db5692b1eb558e59991125 pristine_git_object: e6e277bdefdb364f618d68743470034b7ed063e9 + docs/models/operations/OauthAccessTokenHeaderXGustoAPIVersion.md: + id: 55107db3b1e6 + last_write_checksum: sha1:e6049e7e9226b317636fab8d076307f07cee71a0 + pristine_git_object: 4f602fcc506520b4515b47ff7db50f54de72bf47 docs/models/operations/OauthAccessTokenRequest.md: id: b5c3c4554e95 - last_write_checksum: sha1:48ec73723630e512d490a53da014d44e84920dac - pristine_git_object: 8a4e9f658bed1b45ea1ffc4d0a210e5306c91621 + last_write_checksum: sha1:06053986a030814050d5e340ae404adc1e32f135 + pristine_git_object: 87d3e0a1854fdd64310caee8bad8baca01de79ef docs/models/operations/OauthAccessTokenRequestBody.md: id: b31223a28af3 last_write_checksum: sha1:78249604e7ea7d07502bae337288b9170032bf05 @@ -5004,8 +5480,8 @@ trackedFiles: pristine_git_object: 62265e1f4059f74c96736ef5ed69fd939eeee6a6 docs/models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.md: id: eb0b6aae5434 - last_write_checksum: sha1:1066181ef7235abe3f20a298baf2cd690d354c1a - pristine_git_object: 76cdb0c80725b39f9628e73319fbdbd8d25533b7 + last_write_checksum: sha1:f4c202431a1b3a1e7a6355415825ce18b9ea559d + pristine_git_object: 2ce283bded33a2b1ef030cd7f20575396a050e3f docs/models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBody.md: id: ccae975a5ddb last_write_checksum: sha1:450220997d267e283f4b3ca805892bea70b3aa9f @@ -5020,12 +5496,12 @@ trackedFiles: pristine_git_object: 2da995e3c39ee11d6ffa960e91eb5cb453eff40d docs/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsPaymentMethod.md: id: 041d5a811531 - last_write_checksum: sha1:d23f19a02f0365e4cef807a32de0e9c7ed2a4ead - pristine_git_object: f425ba05df85f6b3c2f64b09e18b3620039f9a84 + last_write_checksum: sha1:dd20aa72a219cafa5a1100a5991f8ea656ab0e9b + pristine_git_object: 0221517fe88fddb54540bdce25a3e23b869de7d3 docs/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.md: id: 0a87e49ab660 - last_write_checksum: sha1:b5d2efe002ccc9749fafb3a9090423782c8e7921 - pristine_git_object: 46f310e3bb1cd6ad69b4eb211e466f0890a38c6b + last_write_checksum: sha1:25e8bdda83cbe0aaa17f092b1cda7fcc63d62152 + pristine_git_object: bb75e1de4ffe2523343a66412bccf2adb711e10a docs/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBody.md: id: b2d7123a94c1 last_write_checksum: sha1:a38844ba10e0d5eef70805e1c3a2057258d4f098 @@ -5040,8 +5516,8 @@ trackedFiles: pristine_git_object: a79503be103f13f97a8de674ec4113ab566ded28 docs/models/operations/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.md: id: cfa9e00db0ed - last_write_checksum: sha1:ab28e41d2765e669c208bd58a71b83a19ab62832 - pristine_git_object: f93a2192cc40e12f0ddc359fd1e364a31143fb24 + last_write_checksum: sha1:44aa6dd890f78f5f932dd73a8cccd3443bc9e416 + pristine_git_object: 62aba45bc2bb5a3f8b0775aa9dceac756c9847ee docs/models/operations/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearResponse.md: id: 91294fa2115b last_write_checksum: sha1:0029726021b5c71128ac6d9a8c34c1e9223cf707 @@ -5124,8 +5600,8 @@ trackedFiles: pristine_git_object: 6afe44e8f10b5e0e988c953d55eb7921089c9e0d docs/models/operations/PostDepartmentsRequest.md: id: 860182a3b064 - last_write_checksum: sha1:7c7516442c403bc7d52d2be4314384dc56f543ee - pristine_git_object: a0ac021705d4cce7beadcd7e95c6e20459a83568 + last_write_checksum: sha1:3044d948d43ceaf62e4bd7b6d1284bdda47ea1c6 + pristine_git_object: 52954e667d68c6040304f4f9889b60d59ec02dcd docs/models/operations/PostDepartmentsResponse.md: id: aaf1e1c08996 last_write_checksum: sha1:0963b94872aa9939fc84656a1c02c838b73edc1d @@ -5148,8 +5624,8 @@ trackedFiles: pristine_git_object: 261860e762155a362fd2970fb161099a93110b8e docs/models/operations/PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest.md: id: 783fe6e92bf7 - last_write_checksum: sha1:03624968a24030b63073a70fb36a5b94967f10ae - pristine_git_object: 4f2143bdeaeee704e101351b66cfd4266da44a1d + last_write_checksum: sha1:32209fc8c520f234b73246ef44dc005e023e2c33 + pristine_git_object: aa464e21f853f3c06489c84c0cce6bf16b2b8652 docs/models/operations/PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceResponse.md: id: 66a21230b63d last_write_checksum: sha1:94ad92e245e29863fcd980bb26ac6217cf2fedce @@ -5160,8 +5636,8 @@ trackedFiles: pristine_git_object: 23524611436371aa44e241bd4993bb9091e8a514 docs/models/operations/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest.md: id: 0e3bd2025cd6 - last_write_checksum: sha1:fa2f307872fcbb4c4d43223b177ff47f3c29cf91 - pristine_git_object: af85fbf8cacb3f6fe54a0abba4f664717b03cffd + last_write_checksum: sha1:bbe185e8ab2011ad6ca6ce409d95dd44a6ba864b + pristine_git_object: 86c040233e44016c9f5dac4a72ab975ce277f61c docs/models/operations/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceResponse.md: id: bdb1b3bf4585 last_write_checksum: sha1:49233dadb4ca9922570530f7210c01a4b54e197b @@ -5190,6 +5666,22 @@ trackedFiles: id: def2ecde26dd last_write_checksum: sha1:1080d498506c065a1a143e76a3d66bfef678b408 pristine_git_object: 3f958930597e58cc3603ae12585760684189e8e5 + docs/models/operations/PostV1BulkReportsHeaderXGustoAPIVersion.md: + id: 240913639bfb + last_write_checksum: sha1:388e865926fb64c191ddacf973ae6caff348b31b + pristine_git_object: 8f2f5a6e6390fd943a39703f6b69e5843268590a + docs/models/operations/PostV1BulkReportsRequest.md: + id: 5944f0ba4d38 + last_write_checksum: sha1:6818cfa9703770c8b31eee81a74e8f8e8347b8db + pristine_git_object: 9e340b0982fccc10edbd564bc6a72d89aef02dad + docs/models/operations/PostV1BulkReportsResponse.md: + id: df09ed78df51 + last_write_checksum: sha1:925b7e0661e79caaaf4777b9a82ce288e6682273 + pristine_git_object: ff0e1b271a2f1c951bef8f6e3d09169453a8cedf + docs/models/operations/PostV1BulkReportsSecurity.md: + id: 54892097a73a + last_write_checksum: sha1:7ecf355359e1a75fa22beaba37a03d99c5a9f2c5 + pristine_git_object: ae57a7bec8590a0f0bb35d5e4a8bd1526f1245e5 docs/models/operations/PostV1CompaniesAttachmentHeaderXGustoAPIVersion.md: id: 59da96fbaad4 last_write_checksum: sha1:fcd97ad6e146063e75e3bad1ae9ad9e85eba35a3 @@ -5238,30 +5730,30 @@ trackedFiles: id: ece1c151ffda last_write_checksum: sha1:69ffbc1542799e88e0dc742168b59e4c3859e238 pristine_git_object: 4709a8c2dfb4b2c6b051f3381a3a69625f186430 + docs/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsContractorPayments.md: + id: b2a0fa95ebc9 + last_write_checksum: sha1:2a5ec83a0ade2729869fc0de30c60bd4545acdc0 + pristine_git_object: cd7ba289dd802918f56dfedd02b3d7f03a45908f docs/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsHeaderXGustoAPIVersion.md: id: 1593717bf416 last_write_checksum: sha1:cd195a39c56b922de929760d0475bcfe6711b7ef pristine_git_object: 8e05b0b39ea6df944759c8c83add5de0ab2c10a3 - docs/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments.md: - id: 6b61e470f4e7 - last_write_checksum: sha1:dc2ca501981550eec3dd056e34130d432d688e5e - pristine_git_object: 118c7022049d8871c7bcd94acc54857f7b9a1165 + docs/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPaymentMethod.md: + id: b7606f14e9b9 + last_write_checksum: sha1:ad884b50449b54976106c048b03f4db8fe08e9c6 + pristine_git_object: 92b0c31a4eb7c222f1c5ab00985d2856c49d239a docs/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewHeaderXGustoAPIVersion.md: id: a368eac1eaec last_write_checksum: sha1:cfcb0d6c608d85bcd900b486dd6067a4a477c440 pristine_git_object: 088e5a06656ce7f452e91d4a57d9a714126a4876 - docs/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewPaymentMethod.md: - id: a37aef74f713 - last_write_checksum: sha1:1d0fee81ab8b4af8ff17815755ab292fa8b83618 - pristine_git_object: b9a837cccd07507457d11880ba070b1f5c674f2f docs/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequest.md: id: 1883487b0640 last_write_checksum: sha1:74ccb1394dce1f89b7369933713cebe8a18e0f15 pristine_git_object: fb9ed03939a4e41d77c95f3ecc35709bdac8e709 docs/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBody.md: id: 4d4e32190f2d - last_write_checksum: sha1:4a171c34fd92314e53c565ed30cf55312d1fafd5 - pristine_git_object: 9188cfdae8d23200018d694da9fdc5207ade67ce + last_write_checksum: sha1:e2c3965656d1cf51f41639070b2b376098fd1b13 + pristine_git_object: f9e2b8f502d19f4d19be96b202ca9b9eca8f7f9f docs/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewResponse.md: id: 276b3428b1df last_write_checksum: sha1:fbac6b94e543b7ca949ee31f93074b4a50e4077f @@ -5272,8 +5764,8 @@ trackedFiles: pristine_git_object: 3a323aa09f4a699cd7df472cffee13d56816d297 docs/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBody.md: id: ef06a3f9b0aa - last_write_checksum: sha1:3a617657d3c46ed3a956f02be03f8758ef0dd019 - pristine_git_object: 9fb4cffca5609e562f1d78cd513ebc15007087c9 + last_write_checksum: sha1:4e2eae02634343c93343c86cfec53eb70edab461 + pristine_git_object: a14caa125eca53bc7a03d91ebfa0c735cdce8545 docs/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsResponse.md: id: 835554da692c last_write_checksum: sha1:1e050b52fe4cb1cc843a987825130c760431d1c8 @@ -5370,6 +5862,18 @@ trackedFiles: id: fe7fa931c9b7 last_write_checksum: sha1:83c0498d9cd17c772a3d6e4af2b535ec94d4fa0c pristine_git_object: 215698bb64e042835142bc81509ba966b32c11cd + docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesBatch.md: + id: 23925e688c68 + last_write_checksum: sha1:e98062355c9555f2ba0038648d0a2898c5bcf835 + pristine_git_object: 715af28ada254d95936ed337fa977e150ce556c8 + docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesBatchAction.md: + id: 26148add4c4c + last_write_checksum: sha1:4f0065fb31541f8f6d43edfdbe562bea72ac7a6a + pristine_git_object: 16ce491322eeee0bc890e9883a1616ed81218d76 + docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesEntityType.md: + id: c020774b6877 + last_write_checksum: sha1:edd0a235418d480e728c9771f8b6df75285a38d5 + pristine_git_object: cab22e4966c26d58374d880e023fae43e0004f68 docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesHeaderXGustoAPIVersion.md: id: 2b0bbc48cdf6 last_write_checksum: sha1:c29b3de5444f1c77192ad53811275ebc20151605 @@ -5384,12 +5888,12 @@ trackedFiles: pristine_git_object: 5e857913102acc87994cd537e2828e66abdb6026 docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequest.md: id: 5b1c63c0c0cc - last_write_checksum: sha1:79e8c2eefea91cb41d3cefcf499ae1745d24a231 - pristine_git_object: 8e61170ff2c32a4a6b02c11269ae77db38bd47f8 + last_write_checksum: sha1:d5089935c120affdeeeb305977effbc47a6afe31 + pristine_git_object: 39900e87ae513bdace98416c98fde7b8e2e5c807 docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequestBody.md: id: 71a2fc2d48ee - last_write_checksum: sha1:12b003ce8bbeb5f1a9d077d6fe5361c237586783 - pristine_git_object: 08dc4bd9d48c9e84eab6c3cfeb31566f85eeb3b4 + last_write_checksum: sha1:4d28c76ae0ca4b1b1736009688101d9c9d9b6fdf + pristine_git_object: 934a967138e87d5ab7e9ab4c91125d7c358fdb82 docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesResponse.md: id: 9271271dbbc1 last_write_checksum: sha1:47dfc433a2ed10ecca44d21f3a2623bb056b9122 @@ -5452,8 +5956,8 @@ trackedFiles: pristine_git_object: a9055415995c647df10227fd8158ff0a7c02e605 docs/models/operations/PostV1CompaniesCompanyUuidSignatoriesInviteRequest.md: id: f3b2383e7446 - last_write_checksum: sha1:a6ca2528e20076e469badb0390f4f2c5d0290c4b - pristine_git_object: 8790dab06e358009ccbafcbf0e827e377621377f + last_write_checksum: sha1:fb4aaef33e5bbebe2ef7372de28b5ef4dff29810 + pristine_git_object: 43d8574c2428c48f862b4e28d421ec67c125eab0 docs/models/operations/PostV1CompaniesCompanyUuidSignatoriesInviteResponse.md: id: f1444bdf53b5 last_write_checksum: sha1:06397041a1836b910b0d221c56c1c79ff39ad982 @@ -5536,8 +6040,8 @@ trackedFiles: pristine_git_object: 2f730a1c4433903d8a54cf6f5cf55dc10814203b docs/models/operations/PostV1CompanySignatoriesRequest.md: id: 99b80c3073ec - last_write_checksum: sha1:d3d4ce7399a80aa1eb0c12b1bf2a78d48f510bca - pristine_git_object: 9a5dd743ac40ac5ef3c7111d3998ba4fc0913691 + last_write_checksum: sha1:b485e2bc18acb632481de07805922197fd0b5b9e + pristine_git_object: a06b649507f2a29d4da5e12f1c446ec9fc5a09fe docs/models/operations/PostV1CompanySignatoriesResponse.md: id: f0abb6e36894 last_write_checksum: sha1:d81d3292392004758f0bc20d8a99304ec2cc6581 @@ -5566,14 +6070,26 @@ trackedFiles: id: b194333bb6fc last_write_checksum: sha1:f37a4cfc070587157eb947495a407961c238f5a7 pristine_git_object: 819e8a8b4be2d9f869797707d1f8ed096351874f + docs/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.md: + id: be5324664465 + last_write_checksum: sha1:85f1eab8b9f47456ecc21560dd2e8bc5c73b0507 + pristine_git_object: b608e44fb8f2d8abbcef8c8f2091a3532e852e18 + docs/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsRequest.md: + id: 33e93d055df5 + last_write_checksum: sha1:4d819d46cc452f33f508b4254459cc4a7fea0fd9 + pristine_git_object: 966121990053c91c945fec68f48694f13a2f3718 + docs/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsResponse.md: + id: 73c759a35611 + last_write_checksum: sha1:a69df221fa76ffefe5a5c1dbfca38fda6cc02a9e + pristine_git_object: 481a117a09511fa0ac49581566441cfda3dd79e7 docs/models/operations/PostV1ContractorsContractorUuidRehireHeaderXGustoAPIVersion.md: id: 4183a4e0bf08 last_write_checksum: sha1:24957e300147adb27f26026330a94d3bf44ef422 pristine_git_object: 66dd7b869cfda6b7ac79106b24070b5a778d9a5f docs/models/operations/PostV1ContractorsContractorUuidRehireRequest.md: id: 86ac708d314b - last_write_checksum: sha1:f6dbd70cde0aabfa0581aae36b0e484f7282d58d - pristine_git_object: 97ec33c6e2a594233df92ee1f1256fb024da715b + last_write_checksum: sha1:626c4bc845501780a76f4c9bac2d358465881792 + pristine_git_object: 6598bac8cd3524b5155c5cba21daa3068812abb8 docs/models/operations/PostV1ContractorsContractorUuidRehireRequestBody.md: id: e509ee7c46be last_write_checksum: sha1:80e65add58ff75ad5c372fa23fff13e6ec997ce2 @@ -5588,8 +6104,8 @@ trackedFiles: pristine_git_object: a72033891dd391b5b957881065afd436572a1fe0 docs/models/operations/PostV1ContractorsContractorUuidTerminationRequest.md: id: b0098e8b13df - last_write_checksum: sha1:f1643ddfe7c4c4b3971dec538963f9e160e4a3f8 - pristine_git_object: 2a911bb23351cd90132c3a76f8ba91a7d192b1e8 + last_write_checksum: sha1:0cfb4a5ceebab82c51568bc16377ef629e3a97f1 + pristine_git_object: deea204260574ffdd81969817c8cfdf17ee6c82a docs/models/operations/PostV1ContractorsContractorUuidTerminationRequestBody.md: id: 64e4d241e7c1 last_write_checksum: sha1:589618ecf99f7295edf7a5527ea1f49e76486b38 @@ -5640,8 +6156,8 @@ trackedFiles: pristine_git_object: 0c422a606eaf882ad9746f4354dbde3cccb5416e docs/models/operations/PostV1EmployeesEmployeeIdHomeAddressesRequest.md: id: 57ddfcc7561a - last_write_checksum: sha1:b94fd46e398143b32b1ea53abc88ab589c135750 - pristine_git_object: 8e8b602784096bef2d5b7bd61587e0d0108c209a + last_write_checksum: sha1:1a97864cf984651fd5c638cba711daa8af7bbf08 + pristine_git_object: ea4752ef34c052766d8d1cb500c4db6eba10d6d3 docs/models/operations/PostV1EmployeesEmployeeIdHomeAddressesRequestBody.md: id: e1bd4fa1e3e5 last_write_checksum: sha1:425ad27e7ed9d3f2304f5fd33b10357c511bbcca @@ -5656,12 +6172,24 @@ trackedFiles: pristine_git_object: 5fa0aa15bdfd733404315a481a9901c713c26f9c docs/models/operations/PostV1EmployeesEmployeeIdJobsRequest.md: id: 3144c05ff3ec - last_write_checksum: sha1:af85eac4ea7fd0bbe77055f5df76e57c80ff533b - pristine_git_object: c66ac8cd1df07ff9ff3e9da652db730f35bec247 + last_write_checksum: sha1:e70b5eb7c3f4b2557e6c1f9f6a7a0816523824b3 + pristine_git_object: 8227a3f151ef0a860f904691187d42bc82f2075a docs/models/operations/PostV1EmployeesEmployeeIdJobsResponse.md: id: d033e6a66b8a - last_write_checksum: sha1:02f6d10e191b1afd165f6aa90db2ac289f0bb68f - pristine_git_object: 4347a1f9cd75371b3a904c442d07dbceffe0ae0e + last_write_checksum: sha1:c0dada7407079f2a34ce6868c12093bbb563a450 + pristine_git_object: 78c50467ba31b9c86a4a5c310145800e2786b2eb + docs/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.md: + id: 32c79bed0f4c + last_write_checksum: sha1:e0abd6e9b4dbdcef5c81f306366b2660b1660aec + pristine_git_object: 327c3b59d5172615f9c594e7cd74e6fb7e125fec + docs/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest.md: + id: dfe69490a4d6 + last_write_checksum: sha1:b8f51696ed102c5d3747a7799be794df67a66458 + pristine_git_object: e59810e0f4e1d5386e4d51ca00bc7a4e606e554b + docs/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse.md: + id: 0bfcd7a61c82 + last_write_checksum: sha1:42ed29804ff44943d01b5910bb1b08f2eb67befb + pristine_git_object: ab7f01e3715aacdcec9da2eaea2c727ec8f30d5e docs/models/operations/PostV1EmployeesEmployeeIdRecurringReimbursementsHeaderXGustoAPIVersion.md: id: f45d0ce7022d last_write_checksum: sha1:7c86be3948f2712599bb6e9a6fa4704254ef864e @@ -5728,8 +6256,8 @@ trackedFiles: pristine_git_object: 44eeeac43297565440c19b1a388cb4067fc7efd9 docs/models/operations/PostV1EmployeesEmployeeIdWorkAddressesRequest.md: id: 2642f48d6bb3 - last_write_checksum: sha1:25952ea526ca4cc063b10b3ea6fc98b485f983dd - pristine_git_object: c94f3722d5e26b1a25243ca9b5982435c5d165b8 + last_write_checksum: sha1:43677566519db1cc8ea3787951e5215ec293fdaf + pristine_git_object: 39eb4db576e3f090d92fc8e3a6bd7a55f91b2e98 docs/models/operations/PostV1EmployeesEmployeeIdWorkAddressesRequestBody.md: id: 4f9800256295 last_write_checksum: sha1:42277b94c1426f5980a1d9ce0547cd95c709242b @@ -5744,8 +6272,8 @@ trackedFiles: pristine_git_object: 2e2da89943f2bb9f6886e974665fdc6d5340ccd2 docs/models/operations/PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.md: id: edf077bfc210 - last_write_checksum: sha1:c705bdd3c39aa12a2f137b14892d5fc716c12771 - pristine_git_object: b427efdbf0f23ea5da16254886db64b3251402b4 + last_write_checksum: sha1:4f2007e126f82939004faf2645ee7415515a0720 + pristine_git_object: a39f3225dda5eb97845c75c35aef6a728421b8f9 docs/models/operations/PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesResponse.md: id: 6f48cec38118 last_write_checksum: sha1:6ccb96dc481c096c876acfd419249572af855d7c @@ -5806,6 +6334,26 @@ trackedFiles: id: 6fa91b563914 last_write_checksum: sha1:fc767ac3a6a2808b2277da4ad4b3c81aeb7765a0 pristine_git_object: 4cd14e4a1ff448b00d37afd3d4347707c49ad948 + docs/models/operations/PostV1PayrollBatchesHeaderXGustoAPIVersion.md: + id: f1961b1c380a + last_write_checksum: sha1:45d0dd7a033f69e5fb4d9d2133c8896617b34840 + pristine_git_object: 38e2818f87771f3814e2f9e37c83e88705ec86d8 + docs/models/operations/PostV1PayrollBatchesRequest.md: + id: 9fdb57f5297c + last_write_checksum: sha1:0e417655b0fabe759dc9201ae04c3e1321431f36 + pristine_git_object: e44ed5f4a895589a770819c3025fb93cd4105549 + docs/models/operations/PostV1PayrollBatchesRequestBody.md: + id: a84b6ce96b36 + last_write_checksum: sha1:c4c00383e7c26dd79d527cabdaa922373543b0b1 + pristine_git_object: 14a2ebbbf7cc69802f284be8750f1a3699599e85 + docs/models/operations/PostV1PayrollBatchesResponse.md: + id: 9f7a422b228a + last_write_checksum: sha1:40f97b50900b3abac60b971566752e9c0520e31d + pristine_git_object: 7a82db52f982d747c1c861e4b2a9aaddbfcf9925 + docs/models/operations/PostV1PayrollBatchesSecurity.md: + id: de9aa374bb99 + last_write_checksum: sha1:fac2bab10284573cee219c6add0690b7577740d4 + pristine_git_object: c89721adbda473b494ab3b7dc8595addd711707b docs/models/operations/PostV1PayrollDigestsBatch.md: id: c71a8d2294e4 last_write_checksum: sha1:ee6ac9de031c4cf34c38b34859d08ad2cf6e592b @@ -5956,8 +6504,8 @@ trackedFiles: pristine_git_object: 9abafeb01a9e207cb620d96681731bcea1b7c154 docs/models/operations/PutAddPeopleToDepartmentRequest.md: id: 2b9a863c52a7 - last_write_checksum: sha1:634c47b5dab282acf8e4fdd6a1c35424de671ef7 - pristine_git_object: d7876c7e20385150087d6ece0b81ed3d7248fce2 + last_write_checksum: sha1:b778f97ec8217694df28d0bef107a8f5f5a955ca + pristine_git_object: aa61e40bb6dcbf2763bc5d3084117c1ba51a5bed docs/models/operations/PutAddPeopleToDepartmentResponse.md: id: b7d404099b57 last_write_checksum: sha1:099ae4134b67c7891ddd04e2031244dbf7de6e0d @@ -5980,8 +6528,8 @@ trackedFiles: pristine_git_object: 2e529417dab40414f27b8b595d4177a4698ee0be docs/models/operations/PutDepartmentsRequest.md: id: 047a12ea6e5e - last_write_checksum: sha1:4f17796a63ccc30a542d979cb9c070b8ffb8c944 - pristine_git_object: 0e429b407100ea74e9b5b1279a2c47801c6a60cf + last_write_checksum: sha1:119197632c88b8f0fa8de8e29958643692c1dd85 + pristine_git_object: 6a6d7b03750f5f4ce11c1a2c3b10b1df62a3b875 docs/models/operations/PutDepartmentsResponse.md: id: 88bd7859f294 last_write_checksum: sha1:10288af362764465de9aae08790fbc505b83d749 @@ -5992,8 +6540,8 @@ trackedFiles: pristine_git_object: fdca5f354b7c912ba3db2398aee7a1d0bbee6225 docs/models/operations/PutRemovePeopleFromDepartmentRequest.md: id: 48c532707498 - last_write_checksum: sha1:2eab9f37449b76f967ca0039374e13d0e1fff418 - pristine_git_object: f6db8e85c3f737e3d49220d81f5fb2359ac15a0f + last_write_checksum: sha1:825872ee67b2900f3de2900b2f77912f503aa58c + pristine_git_object: 16ea106aa7ca40e686b7c68d55f32936f7233e3f docs/models/operations/PutRemovePeopleFromDepartmentResponse.md: id: 372bfef4cccd last_write_checksum: sha1:1e9d94702e89fa7dcf009de96ad5dd6ad526cc0f @@ -6032,8 +6580,8 @@ trackedFiles: pristine_git_object: 1aee3f71e3e78471c99a6e03fb9ad93cbf9ee073 docs/models/operations/PutV1CompaniesCompanyIdFederalTaxDetailsRequest.md: id: b5f68ecab8bf - last_write_checksum: sha1:81b7282cacf28be287c9c6bc119b512fada73872 - pristine_git_object: 98aef451c37a2d8b354960d919bee78d98cd6730 + last_write_checksum: sha1:f005c4caf5749562c3e25f183bb1b89c18b51eb7 + pristine_git_object: 621b3bb8dc96c63c25ca119d335a0393ae0d3e23 docs/models/operations/PutV1CompaniesCompanyIdFederalTaxDetailsResponse.md: id: f2ac895b8625 last_write_checksum: sha1:dc9233fc0c2904aa5a58604fa288855ec001216f @@ -6076,8 +6624,8 @@ trackedFiles: pristine_git_object: 6c219fdb1123ecde04cf115658e4a38fc23c0989 docs/models/operations/PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBody.md: id: ebab6168954a - last_write_checksum: sha1:b21f363b9b8fe4c2dc743b936de9aff9475be958 - pristine_git_object: 1193dc0ac2fceb7a4c7fc1dc1fab8b60cc965eef + last_write_checksum: sha1:cebe826bac65176c83a2330fbd4c5f2936b2090f + pristine_git_object: 5f5ba18b3e92449a277bb2776b589ac51678c5ae docs/models/operations/PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareResponse.md: id: 5346d9650ca3 last_write_checksum: sha1:39fb2e43f5f0ebd2dd4e47534d13f207f72a7445 @@ -6106,10 +6654,6 @@ trackedFiles: id: 2ec78cb49edb last_write_checksum: sha1:d3ec3eb720a50f35eaaa187acefeae14f7aae0a8 pristine_git_object: c610add97a4394620d9ad21ce596a678fb775956 - docs/models/operations/PutV1CompaniesCompanyUuidHolidayPayPolicyAddEmployees.md: - id: 2ff2166d21d2 - last_write_checksum: sha1:e5027daaabe7369dcb5935ce6cc0f70a00ab836c - pristine_git_object: 430b8afc1df5a537f0d0bb27e2dda40bc2b90e72 docs/models/operations/PutV1CompaniesCompanyUuidHolidayPayPolicyAddHeaderXGustoAPIVersion.md: id: e36fcab485fc last_write_checksum: sha1:89890ebb41b3ebbb61170b825a50d0b85fe39ebc @@ -6120,8 +6664,8 @@ trackedFiles: pristine_git_object: 36806f50d609ebcd1f272b285ec8494e5104d4b3 docs/models/operations/PutV1CompaniesCompanyUuidHolidayPayPolicyAddRequestBody.md: id: d9e9ab27c42e - last_write_checksum: sha1:f7a7ae294b7e9e2ca495f9198e6327b9dcaefb3e - pristine_git_object: 53ce7df40940a2475a0c67b29083c59ce7037c05 + last_write_checksum: sha1:16b94cc2f2323388085ac9880c6224a25d88f8c2 + pristine_git_object: f66e3700d653b0b55f1c90bda108997dadcc26c4 docs/models/operations/PutV1CompaniesCompanyUuidHolidayPayPolicyAddResponse.md: id: 5c6ea002006a last_write_checksum: sha1:29c58016cbe424d31f812d456e70bf50d82e09c9 @@ -6168,8 +6712,8 @@ trackedFiles: pristine_git_object: 986e6f00dc6afee94adb8e52e67ce2f0413e73ff docs/models/operations/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.md: id: be4f2d3b4736 - last_write_checksum: sha1:78848c5bc56a1f1a315e17f2429bd16a081dea4e - pristine_git_object: 3b1edb2ee6dddb0fd5afa98918353595d30f2996 + last_write_checksum: sha1:676d852fe883847c8a538c3de961bb92d3b976f8 + pristine_git_object: 355dc82edb02261ec0a18e437b8008da5d9add80 docs/models/operations/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidResponse.md: id: f22fc9eda580 last_write_checksum: sha1:7593654de722ba27d78ad0e579f4a4e54d72b68a @@ -6180,8 +6724,8 @@ trackedFiles: pristine_git_object: 82a3bf1c66556811a661761fe4c94104e2eaece4 docs/models/operations/PutV1CompaniesCompanyUuidTaxRequirementsStateRequest.md: id: 68bca344ef9e - last_write_checksum: sha1:e472250b3accbdb523ea6733e8f7b57e0681989d - pristine_git_object: 8e8c65dd6b85589392eb7a6e5c6d2b280f23b72f + last_write_checksum: sha1:5e0c67fb5db45fc26dc57bc4859065eb7a1f754e + pristine_git_object: 59917c760d78e2790951dfe8eeac6aa1ab01c9ce docs/models/operations/PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody.md: id: 19aa8826d69f last_write_checksum: sha1:ffdfe6d0821ec5a0183133817d2cb6a765173f6e @@ -6196,8 +6740,8 @@ trackedFiles: pristine_git_object: 05db4677e49431442ac3bfaf93d8ad37138716b4 docs/models/operations/PutV1CompaniesRequest.md: id: 8796725e157d - last_write_checksum: sha1:6919f370334159e470d08e8d61e4a9864dd852d6 - pristine_git_object: 92dfc34fd05b4cd38a0249f05de369181f3f48df + last_write_checksum: sha1:e1373deab8409297b72722c188508cc6d35c4960 + pristine_git_object: 159c8a9535ea8fca8ed12b1afeac92a3bfba017d docs/models/operations/PutV1CompaniesRequestBody.md: id: 7711e9fd7f78 last_write_checksum: sha1:e296b498a1e2acbf75323733c68bc00bcbd29302 @@ -6264,8 +6808,8 @@ trackedFiles: pristine_git_object: b6f685cd87b41987a31795ec92ee6d9c2d35ba3d docs/models/operations/PutV1CompanyIndustryRequest.md: id: 04eebd165cbd - last_write_checksum: sha1:468e314c9d7a458dd469e2ac425b9269125bd9e6 - pristine_git_object: e9f2a20539f9a6fc666d3fe3922fdbbf0d5baeca + last_write_checksum: sha1:eb8502c992b65c733033cfbbf771ea90c5014ac8 + pristine_git_object: 5982a88b7dad99c6038fe62140d1a58a8ec80ba3 docs/models/operations/PutV1CompanyIndustryResponse.md: id: 5ab14ee20311 last_write_checksum: sha1:de7f76f5dbd5ea42056386d38c71299fe2423848 @@ -6316,8 +6860,8 @@ trackedFiles: pristine_git_object: 913006c7d798ccd53ff2c268eac7f29885d0d826 docs/models/operations/PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest.md: id: 20932d8ecf0d - last_write_checksum: sha1:5354be3a9842db37d6130c5ac5553dad6064be9d - pristine_git_object: 101d5ceaded848fa2f9917ebb54f48c14fdf9b6d + last_write_checksum: sha1:c700323a74ab72d3a79b6a282f164820643034f0 + pristine_git_object: ff81244f2a9e02cc3b7610b8b8734802c5d81e72 docs/models/operations/PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundResponse.md: id: e4baa219029f last_write_checksum: sha1:0ae316e3a0357cc3fc6f73586677aae1cd9bc4ae @@ -6332,16 +6876,12 @@ trackedFiles: pristine_git_object: 8cd34a9f81d72a0ad79d19f7b1280bbd45aa2c48 docs/models/operations/PutV1ContractorsContractorIdPaymentMethodRequestBody.md: id: d9a3f81e773d - last_write_checksum: sha1:730fe66f8c8d601a0b95b41928e6cc447754aeb5 - pristine_git_object: 2ec71523972aea126d9a14356de36ab4a12ccbc8 + last_write_checksum: sha1:019fb05a126aa20a1df027c64ed9b29f2d0e9231 + pristine_git_object: ba3e7c7a49a35a90f8831a005bfa504a588e12fe docs/models/operations/PutV1ContractorsContractorIdPaymentMethodResponse.md: id: 1fd5280c9486 last_write_checksum: sha1:007abf5fb2c74115e195cf22e543c33343cdc393 pristine_git_object: cd3e1ec368350a8f865e5a96bfc2d3695624132c - docs/models/operations/PutV1ContractorsContractorIdPaymentMethodType.md: - id: e967c464ee54 - last_write_checksum: sha1:c1c604a6d615029777be876eedfd819156e2607a - pristine_git_object: bb3e30e80a7a44e9b7005d934ad2fd16a462b987 docs/models/operations/PutV1ContractorsContractorUuidAddressHeaderXGustoAPIVersion.md: id: 31589fa0c88c last_write_checksum: sha1:a651814538e8989cf54db91642b50ca3e3f56373 @@ -6508,12 +7048,16 @@ trackedFiles: pristine_git_object: 305b3708ddbca01654c03322bf657fe9a5b9e74d docs/models/operations/PutV1EmployeesEmployeeIdPaymentMethodRequestBody.md: id: 78b24ad35d94 - last_write_checksum: sha1:c60c92facc7ed14f65fc70c1bf2a9eeed1a9a644 - pristine_git_object: 8bf62c46fcf6c58342c7eb0e8985172ec40ce9a4 + last_write_checksum: sha1:61c586d109229d9702aa0d8dbb68b04ebb13ad1f + pristine_git_object: 6a195fecaec19176a7bf09410436d56926fb6c4d docs/models/operations/PutV1EmployeesEmployeeIdPaymentMethodResponse.md: id: aa2612ebfc90 last_write_checksum: sha1:4ba3d6ad95e3136b7ae82eddcf787fe65ff1ccdc pristine_git_object: 2fc662b2c645a14fa3d18a82671e6450e6f6cd47 + docs/models/operations/PutV1EmployeesEmployeeIdPaymentMethodType.md: + id: d0d5994cd78d + last_write_checksum: sha1:fb7d64b1348704f487f85129ad731f3184263906 + pristine_git_object: bb61c0fdf5a22b52baa584fa673c0df02ac52b22 docs/models/operations/PutV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion.md: id: 4d57522e2deb last_write_checksum: sha1:37470bf918f243a4bb3c7e6be13e67f8a5c7b02c @@ -6616,12 +7160,12 @@ trackedFiles: pristine_git_object: 3035ca79708ed49b56b28c3c8c9bd5b5a5af221b docs/models/operations/PutV1JobsJobIdRequest.md: id: 6ea87f7b4cda - last_write_checksum: sha1:f24a491a291aa2245510bd2a536bea80f3714455 - pristine_git_object: 5693ace76c03b0bb03099996d42d6d09a5ec9079 + last_write_checksum: sha1:84375e27111e748c775baa5b0dedafbae479d8ae + pristine_git_object: e592dadba2d455c248c72b842121b0d7e2f142cd docs/models/operations/PutV1JobsJobIdResponse.md: id: 6225478952be - last_write_checksum: sha1:cf143b12b8c5922ff91224448669f491914fb589 - pristine_git_object: 382e72363ae49e350c21dc27a21c5a09de0f5684 + last_write_checksum: sha1:ca3fbcb6cd8469650f3b7c36da0b255c3cf94cae + pristine_git_object: bb4b0f4e4008f6905526e15c02f34ad17ede77a3 docs/models/operations/PutV1LocationsLocationIdHeaderXGustoAPIVersion.md: id: c4f3095c1323 last_write_checksum: sha1:f575d2a6d0859d5dc1e3e84a91eab546a0089c8c @@ -6638,14 +7182,30 @@ trackedFiles: id: 773f6f2381dc last_write_checksum: sha1:f1ebbd523b3a80a4eacda7d0e70ce0282173b6b1 pristine_git_object: 44c7258e465c3cf176e7bf4de338feeffb5299b4 + docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion.md: + id: 736d24de7ad3 + last_write_checksum: sha1:3f77bba0dd69b378faebb8b20a7876b0b147d176 + pristine_git_object: 63162385f79c5f762b5dd1ab0842d6b0985c18ab + docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest.md: + id: 7b47e23e4b44 + last_write_checksum: sha1:5d7ca17535188255248b166dd870440526ff16be + pristine_git_object: 45b4b9023eba0d3745cebe07f3720d895cbfba35 + docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse.md: + id: 2d2102067629 + last_write_checksum: sha1:2b5802af12df7fb9130a7534d9b842efa0404694 + pristine_git_object: 1c7129d6e34429e03574c4513d94e4b875f88223 + docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity.md: + id: 55b140d1bfb2 + last_write_checksum: sha1:75fd1437b3fe6b5a201c8109687b71b66d5bad59 + pristine_git_object: d4704fc62a718049e24dc1fd0e21cdd88e5f7b40 docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidMigrateHeaderXGustoAPIVersion.md: id: 37e8218bde18 last_write_checksum: sha1:b34cac6f3f85b51129fdf613e94ddac60e33dbe8 pristine_git_object: 4c9626fc562930165311f7aae63ed4e138cc957a docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest.md: id: a3fe2c6ab1fa - last_write_checksum: sha1:6d738ec17f4ee556d9a17312e0194cccf1018f8b - pristine_git_object: 7a3caec0d4f3a51f5fbce23895c04134a0b7b7c7 + last_write_checksum: sha1:21a1ae1d87ab0a2ca63e7a023df2d4a500c1a9b1 + pristine_git_object: b5bf48b8d3f0c67a2cc6dd56b30e5e79da37353e docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidMigrateResponse.md: id: 90d8e80f4a7f last_write_checksum: sha1:39cb27c2848f3610983839dc295342bccf409c0b @@ -6730,6 +7290,10 @@ trackedFiles: id: cd317a9cf2de last_write_checksum: sha1:cdda9c707ae3b49306a3a7efadd76acd98865cf3 pristine_git_object: 14fa5e1cecf3a77a7c09ac7a2cd0a15a3155fa0c + docs/models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesEmployees.md: + id: 4d589d686329 + last_write_checksum: sha1:22f49bc3b48325d6ac4c1a129b509e25dbae8a23 + pristine_git_object: 8a23a01fe9256ea24a82b3cd419f54795952bdc9 docs/models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesHeaderXGustoAPIVersion.md: id: a9a1d1cbc4fa last_write_checksum: sha1:41e8fac334222a21057cad8f62dc0d8980467810 @@ -6740,8 +7304,8 @@ trackedFiles: pristine_git_object: 649bf6e90b4aa7c87e75289cdec1cc8769665a6c docs/models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesRequestBody.md: id: 5beddaf3bd0d - last_write_checksum: sha1:6fac44a1d965214ddb18e1e16506c1ed57a35d96 - pristine_git_object: 18e2c7ae0a2e6574f04842858c3ece7775ed327c + last_write_checksum: sha1:740fe2660181ae3f7466d88f8050ac82ca76b541 + pristine_git_object: e0c34a4ea5bc52b51822f836da46b3e77d7ecf4f docs/models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesResponse.md: id: dc83f39ec347 last_write_checksum: sha1:712d3ea031e0493ebe04a965f5df66d2ba93a1cb @@ -6852,8 +7416,8 @@ trackedFiles: pristine_git_object: 242bb17930b91b5ae57e7ce08c0613a50bbaea17 docs/models/operations/PutV1VerifyWebhookSubscriptionUuidRequest.md: id: 0a7078df388f - last_write_checksum: sha1:4e31614d88633569ed2018883c4503c818edf320 - pristine_git_object: 6e933d7e90d3efcc5b07072e48202afd46861d80 + last_write_checksum: sha1:ab68ab23c7a220aea902913d8819de3c8a3504ce + pristine_git_object: 4c3b9b24be7b9ca095a98113523e9b1453da5be4 docs/models/operations/PutV1VerifyWebhookSubscriptionUuidRequestBody.md: id: 951a817c1e3a last_write_checksum: sha1:106ee914e9b16b2b55a4781b01abf3dead6a4159 @@ -6872,8 +7436,8 @@ trackedFiles: pristine_git_object: 8fab017101ee227eb7b0dbd45eda7c28566f0b17 docs/models/operations/PutV1WebhookSubscriptionUuidRequest.md: id: 758f39661a53 - last_write_checksum: sha1:4a7c01a1e2ff9a39b19d5e9b2da1499891dbff6a - pristine_git_object: b9f66c8ca569de934da8783d8aac32a04871fb46 + last_write_checksum: sha1:6178b1ed0eeb8a676bab517575989c75c0a6dc0d + pristine_git_object: 7ce624932f982ebcf16d3acd3ce8f72b821ec258 docs/models/operations/PutV1WebhookSubscriptionUuidRequestBody.md: id: 1dc43ddeceb1 last_write_checksum: sha1:177a500da25ec8f4d1c1c91d408a26323597b5a8 @@ -6888,16 +7452,16 @@ trackedFiles: pristine_git_object: 4d8d8da8ad725b7d31738ce440147d214cabc181 docs/models/operations/PutV1WebhookSubscriptionUuidSubscriptionTypes.md: id: e9d54b239864 - last_write_checksum: sha1:a7eb2cc5dfcb440b5187064b7ff8e047d00566c0 - pristine_git_object: a890314beabb9e42b463416dc768611e894bdcd7 + last_write_checksum: sha1:9867931056fcf05cc730410f0b76e4fd7bd32a95 + pristine_git_object: 184c73a560687a6a782813246ce5e7ae01f4fd7a docs/models/operations/PutV1WorkAddressesWorkAddressUuidHeaderXGustoAPIVersion.md: id: 3df3bcb6dee7 last_write_checksum: sha1:c22e5a056cd2ff4748086865ee27bc25e8345e27 pristine_git_object: 2eb400c47e58dddf3d2fdebd384fbc7147f45264 docs/models/operations/PutV1WorkAddressesWorkAddressUuidRequest.md: id: b014f5af1b21 - last_write_checksum: sha1:69d1322e559d75fa3ede60cc9c0ca035407142db - pristine_git_object: 7a7d25b3197b88c7c4a7dcd74e0dc0f4440206ab + last_write_checksum: sha1:152bb4974ac37584589c849c8fedfc29fd5e85c1 + pristine_git_object: 9a0ff43310d711dcb4e1296b1891d1f64b2b45d3 docs/models/operations/PutV1WorkAddressesWorkAddressUuidRequestBody.md: id: ed8eb9dae3dd last_write_checksum: sha1:1d4aa78eb7bc6e338c7c2939441c9967301ab0c9 @@ -6912,16 +7476,16 @@ trackedFiles: pristine_git_object: 409f315553e3c30df27db85347122d90bcfd4ac9 docs/models/operations/PutWireInRequestsWireInRequestUuidRequest.md: id: 508c4f66a20d - last_write_checksum: sha1:c043aa9bcf507047d4e3e62d0634ca0e88a3f033 - pristine_git_object: 35548bea31ddd7c08c4d25fa663ff2015a64ce9c + last_write_checksum: sha1:3fe167bebd257b3a0164ad8295c7e44fb2ba2423 + pristine_git_object: 13faf2ee8c70a48aa82cc3625e0328ea1f758306 docs/models/operations/PutWireInRequestsWireInRequestUuidResponse.md: id: 42d7e1705bac last_write_checksum: sha1:894bf21457c0c75427cf4829ea3926f0f472fa81 pristine_git_object: 6d14586edb079166a0367b39007735979af87a3a docs/models/operations/QueryParamInclude.md: id: 98e9203d317e - last_write_checksum: sha1:9dc28b5164ed5f5d1feb64c942b3404eb98492d8 - pristine_git_object: c5967c5e725ce7d53896d064586171e1a98502df + last_write_checksum: sha1:0af43f5ac64050e10ac9dc5daf26e84e4cf1ecde + pristine_git_object: 40f1d12fa1ac5330b675c38fc4e774a0db0664b3 docs/models/operations/QueryParamPayrollTypes.md: id: c9d44e722c3f last_write_checksum: sha1:65c37f7fd310cbd7faf787805d400d24bd079bea @@ -7000,8 +7564,8 @@ trackedFiles: pristine_git_object: d609733ca94981ecd583cf04ea5bdb28986ea922 docs/models/operations/SubscriptionTypes.md: id: f7fa74935662 - last_write_checksum: sha1:d9647208fc2d004dcd923ed67436e3ea4d0d1e2a - pristine_git_object: c0a50d5d7a4829a841cc7c2d8d1af829c9d37b2e + last_write_checksum: sha1:638985b1c1c3a0dda1b980794afba623499bc5b3 + pristine_git_object: c87957b5b9e0dd16e26d0c172133d9784e27ca7e docs/models/operations/SystemAccessTokenRequest.md: id: 11a6e4bf3a9a last_write_checksum: sha1:49ea0cd266f24538f6d73c7fa667f723d1741804 @@ -7016,8 +7580,8 @@ trackedFiles: pristine_git_object: 1e54bfae80ab5a68ab213dfbe3074b746e40946e docs/models/operations/Type.md: id: b7dc6280f202 - last_write_checksum: sha1:b21db844b26f7bc77456b3731e0636dfcd6a36d1 - pristine_git_object: bde57d6cb58a1109f1d92680c7fc450767846205 + last_write_checksum: sha1:a40c65fc9969f4594205b849ee30b72779fd01c0 + pristine_git_object: 8f2d169facfca87a9eecaf10b79b2d9a1f85aef0 docs/models/operations/VeteransDay.md: id: 1224301ff362 last_write_checksum: sha1:5a4736026a7a9a1b5ff58a61a8af936019872569 @@ -7048,20 +7612,20 @@ trackedFiles: pristine_git_object: 5353c5970f31c46a16deb02e26856498381c121b docs/sdks/companies/README.md: id: 67e8a49afa67 - last_write_checksum: sha1:4ad24879fae40b8691e36930b0d97533e79b6733 - pristine_git_object: fb12888c27ac227788c2541b092136bf4aad90a3 + last_write_checksum: sha1:09b69dbf9effe41b9f8149f0db3d770f240867fc + pristine_git_object: c88266a312b97ca028aaf028c5b57b08af64cd63 docs/sdks/companyattachment/README.md: id: 49c4e919caa2 last_write_checksum: sha1:bd871f2beb9928a2ca846907578b7dc92b20e981 pristine_git_object: 4b0a18b68be3d06ae835ed3457d83fc46f2171dc docs/sdks/companyattachments/README.md: id: 105a968c3402 - last_write_checksum: sha1:e16eedd3fa1b32ad30df4ee8834c3c0851552a7f - pristine_git_object: 4c6ad29f0e134fc307c863651849dc4ea62ddf93 + last_write_checksum: sha1:031ef233bf258e9e750559cdc8031942b8c17bcd + pristine_git_object: af3f486f16f1477c5611f5a17681d22c2983da66 docs/sdks/companybenefits/README.md: id: 68640bb09ef2 - last_write_checksum: sha1:0ea13fd82edca2506dc1a680ddcd3330e88c3038 - pristine_git_object: c0991e25b376e47fb5575738f3e223ba54f28a13 + last_write_checksum: sha1:9f50c43bc8154270e049a9d72dd0b1ad4017159e + pristine_git_object: a110688e0cb8298bed92a0c22b832dd6f1f768bb docs/sdks/companyforms/README.md: id: 950fa696807e last_write_checksum: sha1:acf4d2c60c3662806732052ec5d710f288709b5f @@ -7076,88 +7640,88 @@ trackedFiles: pristine_git_object: c28eb14bf471295c30916d1900cdabe3089d6795 docs/sdks/contractorpaymentgroups/README.md: id: 827b7ed15692 - last_write_checksum: sha1:ebc038f5013a79f95f00e6d6d4b34fb61cd6e9af - pristine_git_object: 99b19900dce312b4f3ddb4e0c20040a9aad64339 + last_write_checksum: sha1:803ca7e4663695e55c27425c1bf83144c80b02ac + pristine_git_object: 8b6040322a251b5687582d9d1084d7a0570212cc docs/sdks/contractorpaymentmethod/README.md: id: 6d90189ab4bc - last_write_checksum: sha1:f84c3c257d058073d18aeeb019ce13eb1650d826 - pristine_git_object: cd9720ab35d2eb4c4b08ab18680ba6bae2319365 + last_write_checksum: sha1:85991079ec373400b907df9ee960e1e74f533def + pristine_git_object: 11c17cc3fad2ad98ab4e4aca13f255869a503641 docs/sdks/contractorpaymentmethods/README.md: id: 8e60120cdd11 last_write_checksum: sha1:56399090365d7cc2e74110c9fe655706658153f6 pristine_git_object: 43e9f1a86feb4ff63e6ea2621a47d3be6fbfc3b6 docs/sdks/contractorpayments/README.md: id: 2636bdbff20f - last_write_checksum: sha1:5c5368b60fdb72ec861049c7a2c4148ecce733d0 - pristine_git_object: 8963c73c63f8c4a1eaeab246e0b5d0b8d0f4b0b9 + last_write_checksum: sha1:45bbe67fbbb4db0e9fd4e3d2b52e19c5a14e573d + pristine_git_object: 73b2331fd950c183acfd03f12f06d81ca95ac958 docs/sdks/contractors/README.md: id: e5de017cf9e6 - last_write_checksum: sha1:f91874177fb5e355d6b0ab5cae166f999712ebe0 - pristine_git_object: 44960fe46b0db690df8e3c5f11a5baa2898e6dbc + last_write_checksum: sha1:dec522d98aa62bcdd7843dcff4981d18e42b48e0 + pristine_git_object: 617200a938b2224f3979354e654ae2d331f18514 docs/sdks/departments/README.md: id: 12342c54f2cb - last_write_checksum: sha1:bb5beb13b84d00adb95a04c669e989901449740d - pristine_git_object: bcc657a3d40fc836370f199e2887752841a558ba + last_write_checksum: sha1:bc7a41f966ea87256f4b823f6867794e48c77f28 + pristine_git_object: 00b0b389d4580820bf2cc49a5ddc737e6a18ab4b docs/sdks/earningtypes/README.md: id: 8fdb58368538 last_write_checksum: sha1:a091b8f8ca610f0a02f3f57ca2ff07321421c794 pristine_git_object: 280016e73f1eb12721f6bbce16a6413bb365f4c6 docs/sdks/employeeaddresses/README.md: id: 9dcdcfde936a - last_write_checksum: sha1:2c22a8d77499af882183f7a565095090bf4e81b2 - pristine_git_object: c2d7d14be33f26f9b10fe95da7c178cbc558dab0 + last_write_checksum: sha1:bb28ed79b1ba89827b1ba12140b060c5d725ee3f + pristine_git_object: 5d4375761547f7771da9f856356d0f600c724eca docs/sdks/employeebenefits/README.md: id: d8dae69d12b6 - last_write_checksum: sha1:dbccd226f855e2ad1d2710cd41c7081a5b54d04f - pristine_git_object: f9b4b5a4cbe82050ebe73b07de78b4007da4b2a1 + last_write_checksum: sha1:05e037eb38001d8d60b076925db042686f70603f + pristine_git_object: 867d63cceefd1a2f8217e7050c0e9662ebd0d4e2 docs/sdks/employeeemployments/README.md: id: a5c0a62c8948 - last_write_checksum: sha1:3c65e9649f8ac70e3ca54c5db5c4d451a65291cb - pristine_git_object: 0c66087c1008c53fd7de3a74a2376758f3a72e27 + last_write_checksum: sha1:6296eb5617c211bae9c66572c7b16f46c576c6be + pristine_git_object: 3f4cf4eb6c8c70f018946ec79e5cba518dd4e26a docs/sdks/employeeforms/README.md: id: 6e8cbb9eb9f8 - last_write_checksum: sha1:06b613f504a13a5dacb6ca50281258c72662fad3 - pristine_git_object: 615cde31fe14fb971398b9ce997afe311c70b5de + last_write_checksum: sha1:a044dcc47ef628517591e1901b82c8e03c7e08c1 + pristine_git_object: fcb14ebd4bad6c7b2881b71dd45e2681bba8fe0a docs/sdks/employeepaymentmethod/README.md: id: 3d8a3fd0cae6 - last_write_checksum: sha1:7334da799d4dac67b7ba83397db10fcea68b8a03 - pristine_git_object: c32d816ff14b6a2c2fc10bd5b61d5b1788254759 + last_write_checksum: sha1:c83f2ea09424708a92d02cb461bcb1d926621a43 + pristine_git_object: 9ed9ebe014e55ff250eb7c1b41a2924e43ffdc78 docs/sdks/employeepaymentmethods/README.md: id: 805c32ccd865 last_write_checksum: sha1:d028a68a1e8ae7c5d91e90ee5324e5e4f63d0192 pristine_git_object: 7dec9955f3cec1c8abc4efb4c29fc0b9a9cbe0a9 docs/sdks/employees/README.md: id: 3adbd327ce9d - last_write_checksum: sha1:84ca51d0bd3e99fb4d06dccff02f8bea5127322c - pristine_git_object: f3931948652a2de7efdab651a78dd7758a48236b + last_write_checksum: sha1:5c9215d73a4d039aa3aae81a73dadcbbad949236 + pristine_git_object: 4acea4db4f8f09790bf399f8cd83580017c22562 docs/sdks/employeetaxsetup/README.md: id: 65804e377e2e last_write_checksum: sha1:edeb71dc8b79f33269f4e02fb5a040170d824d2f pristine_git_object: 33e02304f6141b8f83f699c60ac91470036e8a3f docs/sdks/events/README.md: id: cf45a4390b9b - last_write_checksum: sha1:02d9f675cfb93f75a60f5200d919788ffac591ad - pristine_git_object: 3896dbae7e714012489a83fc6edc4f44c8f1c4ec + last_write_checksum: sha1:f2b091eddd22fb6d7d9ddca527d88be5f0b4b6ea + pristine_git_object: 271411a38cadb66fe1f5ac6a3f2fcf39a3b059bc docs/sdks/externalpayrolls/README.md: id: 3ef919744e64 - last_write_checksum: sha1:53550a95293c06fdeb007cb53273ecd8c8ebac9e - pristine_git_object: d45dd404536bd2984631b45f44f81d60b223f98a + last_write_checksum: sha1:703cad157d80d452112459630b15939f5514dae5 + pristine_git_object: b95e8e8ee7dd30302f34e53eee1e09c34f73f5df docs/sdks/federaltaxdetails/README.md: id: d3272089b17e - last_write_checksum: sha1:9fe5952d0a6b78ec29365b90d19c2b348d783a2c - pristine_git_object: 864bc29762aabcdf5e5ab246efa58b03a0995c7b + last_write_checksum: sha1:b50e28c7d516e04310351d66a3fb83925cc50425 + pristine_git_object: b5744451df488291c4107c510ca48abdeaf7a187 docs/sdks/flows/README.md: id: 1e486772e924 last_write_checksum: sha1:9eac9be8f65f9c8da17b02e8bd832b7c4d35d7bc pristine_git_object: 5fda140bfcb71e6e18b592aff2fef5bb6819879e docs/sdks/garnishments/README.md: id: 6758c2e254f5 - last_write_checksum: sha1:16642aa4656792c1d7552999eb7d10da517f2293 - pristine_git_object: f2cc57a36af8c0f08948e7234a993a383e79f71e + last_write_checksum: sha1:7edcce39016e1ff705f8aa44987c333fc2aee558 + pristine_git_object: 455cb004740362084dd4d81baf28271ac790f7f3 docs/sdks/generateddocuments/README.md: id: 5072871eb0eb - last_write_checksum: sha1:a0f4ce13f29b821f88e2f6a5f47e41f2b2b9d2fa - pristine_git_object: 599414e400a90c258c485b57c8d91d4c92414335 + last_write_checksum: sha1:a6ea0c7fa8c0ae3973479dee896af68ebe1c70c4 + pristine_git_object: be2ed0d1e5fbeb30efce3079a9e2ad0ee155b46e docs/sdks/historicalemployees/README.md: id: 38adbb7622ee last_write_checksum: sha1:4cdb11f90868b2dedbe07ff7dc6295df934fc8f0 @@ -7172,52 +7736,60 @@ trackedFiles: pristine_git_object: d542b61905fcf1d67ab6b99c8a1569391f1b5e48 docs/sdks/industryselection/README.md: id: 6633a8a37ae7 - last_write_checksum: sha1:6516c1646870851346b135a6c9be4664dd2d0b0d - pristine_git_object: 29686244186299ab6beddd4139f07c644737b82c + last_write_checksum: sha1:1a3f33df9c3d3a026e69e55b9962f1e8eb1222cd + pristine_git_object: 364b34aaa53b3c6faa76922ba026971b814fdb1d docs/sdks/informationrequests/README.md: id: e176ae9536c5 last_write_checksum: sha1:84cc0e501da76f9618b007eb7d2049c1f9b7d3f9 pristine_git_object: ec604fb8e1c35f6b31fad3624e3d3ea5a58e309d docs/sdks/introspection/README.md: id: 9f867af7c1f3 - last_write_checksum: sha1:e6f969e774c49c20923eb8b48579b2420f25dbc2 - pristine_git_object: 55dbe00f3853f2882a4544972ee09ae1c9f07265 + last_write_checksum: sha1:99833cefbba5d7d6e95a14c992a7e7cafda112d1 + pristine_git_object: 9995aafb91c20e1441ada5542917f49c29b0c24b docs/sdks/invoices/README.md: id: a3f76a06eded last_write_checksum: sha1:8be0b7b3614f54fd825168d6048a48118544209a pristine_git_object: aa57485a35c86b474aa8fb36fe8c9d004f490ae8 docs/sdks/jobsandcompensations/README.md: id: f262ef7b4c37 - last_write_checksum: sha1:4446546e656164a74587a75cf8a15a727ab81d3c - pristine_git_object: 885545c3debb11b3ce844a3a5650dcbf78bea747 + last_write_checksum: sha1:9445d08fbd8ed5ad00ea5f00b1e03cc98030bcc1 + pristine_git_object: 455c3f1fdfa3b3d53d4e4395a9b5512171ca28e4 docs/sdks/locations/README.md: id: 18f4bc68d8e9 - last_write_checksum: sha1:69e4847978505d6de47ab673bfa2c38abab42444 - pristine_git_object: 414357d1820317a10430820071d3dd95debbcf29 + last_write_checksum: sha1:a3108a6118817d5c843dae3079e069216f333f37 + pristine_git_object: 2f72c58a0228856a74157fcd4610f66efa7a0a62 + docs/sdks/memberportalinvitations/README.md: + id: 633e8eb21d54 + last_write_checksum: sha1:146debc0225e764480118794057e4082fecc729f + pristine_git_object: 695530536b73b679e8e803e96362177d3e23a3f1 docs/sdks/notifications/README.md: id: 271bac956045 - last_write_checksum: sha1:8929605a8812cf636884de3a5ad799340aec9b50 - pristine_git_object: fc1b51472213af1f01fe667b0ae44328123f1ceb + last_write_checksum: sha1:f7c24cfef1ca65163b7d12b2cae583df215aefd1 + pristine_git_object: dfd59d4da3ca9704836cab0395cdf661013f9044 docs/sdks/paymentconfigs/README.md: id: a5944d10a31f last_write_checksum: sha1:1a7e76daa5ac5910db0aa501e50156ef9faee1dc pristine_git_object: 6de20c52368b1546b7d498a6d1aceb5a0bad6316 + docs/sdks/payrollcancellations/README.md: + id: 7eaeae3e2673 + last_write_checksum: sha1:f42ea9c2f95fb896de00b9a12762fa177c8c1cb6 + pristine_git_object: 288a172ecba4f7eb2ba2e78d8fdf1b9ff11525a8 docs/sdks/payrolldigests/README.md: id: 0f533581818e - last_write_checksum: sha1:d759eea4117bc1d1876abc45a70e419e4c137c1a - pristine_git_object: ccd87553ff0112e108ef402ce7d464ca2b7aab2b + last_write_checksum: sha1:abc5b3ac8699327a49c42152db6577ca2cacff8b + pristine_git_object: f0bdfbc5bee95a378825736dab86fb6ccf37753b docs/sdks/payrolls/README.md: id: f6fb115a2746 - last_write_checksum: sha1:e2b63c8f76212a5b0ecb3a7e35edabcd687bc79d - pristine_git_object: ba8dd1354fb3da236ed56960dd64dd72272501b9 + last_write_checksum: sha1:05828897b1e8eadcbc18e8408fe0989eed503083 + pristine_git_object: 4ce3685bd1e312b58f572e7dc348805dbc8bdc91 docs/sdks/payschedules/README.md: id: c0aa724eca5e - last_write_checksum: sha1:82012d83214f9f086e62950a8f17122577208c9c - pristine_git_object: 6e16ceef7843a04ae59a907ef00937fa3fc0c672 + last_write_checksum: sha1:32d41b462ff51ec935f0917aa9587f69de48240b + pristine_git_object: 21d4e10a012276ae6afa74a4b71b2bd04c8147ff docs/sdks/peoplebatches/README.md: id: 9ac77915c062 - last_write_checksum: sha1:208711cbe99db60c5149218520a80d65dc4e902b - pristine_git_object: 76a3fa2ea101cd86b950d97a18fe79563f6437ac + last_write_checksum: sha1:57c102139d80204067aac669ab63b9de67fc02a0 + pristine_git_object: d939a6fd9268b6fab413f064c6f992fb75a795fc docs/sdks/recoverycases/README.md: id: 31e46e1efeef last_write_checksum: sha1:3d1539f6f9dfd465be1bba5a0c2772d1ccc9d88e @@ -7228,48 +7800,56 @@ trackedFiles: pristine_git_object: f6d5efb583a15fb1ebcf039a915bf07dee5633a9 docs/sdks/reports/README.md: id: 66bfd66f1efc - last_write_checksum: sha1:0da94fe9039a7818ebd6b30fd098cedbe34081d9 - pristine_git_object: 64a9723cd577cb2aa61a36f5517f262e04c98b28 + last_write_checksum: sha1:37c19eb0d28cd86d774d955cb873219d5ae08bba + pristine_git_object: 95cf69cf8c979d4d7557521ed0d6fabddb13be89 + docs/sdks/reversewiretransactions/README.md: + id: f7259ae5df40 + last_write_checksum: sha1:385a7335326f7d6cc00d4d8677472521d2959e7f + pristine_git_object: 2b59421b1b2066d7118d49af8760cad6d2c07b32 docs/sdks/salaryestimates/README.md: id: 6793d2b9fcf5 last_write_checksum: sha1:fc59a171477ca0ba1e6d9a6a11fad7dc6f7ed501 pristine_git_object: 03d818132391b25ef4bd20f1c62de25ba0e5e808 docs/sdks/signatories/README.md: id: 70a385fb9412 - last_write_checksum: sha1:013019f64ececf596772fa31c4b015a471f61687 - pristine_git_object: a092b88c25e6c032e1cd3140f561dfc72753c884 + last_write_checksum: sha1:0313befd2b5e5e55b39cee447a8327bd72c9625b + pristine_git_object: 2e2b297cdad7af6830dc8e8d6c852bb4b7bcfb01 docs/sdks/suspensions/README.md: id: f304a2d5ba91 last_write_checksum: sha1:7cccad02bb9d98b016a7036fc6c9d1c231a68094 pristine_git_object: 025859583ba3b6f4bd88997f8fa5ca73f169e50b + docs/sdks/taxpayments/README.md: + id: 973352999eca + last_write_checksum: sha1:83827cfb56f2c60bd830a6fbf29b8fab41e20c05 + pristine_git_object: 4a59b968f73b9bfc3f92c2c065f5a1ddcaa8a93d docs/sdks/taxrequirements/README.md: id: f686b8175c1a - last_write_checksum: sha1:09a748d1622359d0d84a0425ad8c52d9c69f4ece - pristine_git_object: aa005c8228eab70cba1a12ebc3904e7b9d6852db + last_write_checksum: sha1:5f97812a17e79c273b204b7d993dc5db9d496e19 + pristine_git_object: cabc61a828e8353206c0e3cec6b4fa4193b853c6 docs/sdks/timeoffpolicies/README.md: id: 8b8852bbde37 - last_write_checksum: sha1:74d8bd84602ed07eb31fed9a0f42c6841bdd9c00 - pristine_git_object: 10a7b021d39ee65908470539cfe73ac5628cd5eb + last_write_checksum: sha1:96c2e06bbd1986dd2f108d8c745430290b351a55 + pristine_git_object: 0fa97fff55a2b4ca67ddaf7a170f271df88f484a docs/sdks/timeoffrequests/README.md: id: e94091d49fcb last_write_checksum: sha1:9ff3889a3071e08ed79740e62e37201bdd73fa24 pristine_git_object: 60dbd0cd0274291cd371e748a9e047236a56039c docs/sdks/webhooks/README.md: id: e21b32d786a4 - last_write_checksum: sha1:3ab5547e676f64cad5e122e8bc4b9ada89dde62c - pristine_git_object: 07fafe8bbd09a1ccfffa0cd00f1943aab7d85bb1 + last_write_checksum: sha1:d2b89205340853dec791d4be3e3f3021fb5209b3 + pristine_git_object: f930d00ca22e332ed10a1dccf9986cf10e9a4d4c docs/sdks/wireinrequests/README.md: id: fb21b6718da2 - last_write_checksum: sha1:5baf0d1f9cbf217085effb30590304b426daccf2 - pristine_git_object: 256bd46fdde4dc0885b71c20fcab03cc47b3253b + last_write_checksum: sha1:2ddf24cf9a9afa147132f74d815a0e309a66380f + pristine_git_object: 913bfa978db741d979aaa2db259f1e745518b1b9 docs/utils/Blob.md: id: 3d9a7c4ad67a last_write_checksum: sha1:760a6261cfb9516bbfbf76efcdd9962c7724229c pristine_git_object: 0f659807250bd74a70615ee7e9befe64fd92a66c gradle.properties: id: 2afbb999f001 - last_write_checksum: sha1:71523f976c332c31b9adf50a6535514d5c0b38f8 - pristine_git_object: 8677d604aaca685f039871e6013b776e16dea69d + last_write_checksum: sha1:878c27098ecbecfb129a1c0d41dd4c04a6d089ef + pristine_git_object: 6be05a626e3d9c42ef90f95dd9a51ee7f74edf52 gradle/wrapper/gradle-wrapper.jar: id: ec27dae6e852 last_write_checksum: sha1:f725fb1467084142d74fd7cd8eab691ab3442611 @@ -7292,36 +7872,8 @@ trackedFiles: pristine_git_object: 47f489c8a4744ab4f795e7aa28bb8ad0b0f865d3 settings.gradle: id: 05efc8b16577 - last_write_checksum: sha1:b6694294e108cd46bf53b1b107a7285cf269f734 - pristine_git_object: 9362b0593441eb7e395a244c3440a90942354428 - spring/GustoEmbedded-spring-boot-autoconfigure/build.gradle: - id: 76ca39958f8a - last_write_checksum: sha1:799f092cd17f3623e82f882c4ec6f3e7b9a2e993 - pristine_git_object: e5032894762089308ac30bd2414c6690d5121b7e - spring/GustoEmbedded-spring-boot-autoconfigure/src/main/java/com/gusto/embedded_api/ConditionalOnPropertyPrefix.java: - id: 8248008c2342 - last_write_checksum: sha1:366b1d7082cfd333074557118d9def956351f440 - pristine_git_object: 2857ee005045e3b7d727b470105f53885cf1d4f3 - spring/GustoEmbedded-spring-boot-autoconfigure/src/main/java/com/gusto/embedded_api/GustoEmbeddedAutoConfig.java: - id: 57200e839c18 - last_write_checksum: sha1:b8be0783afe0a88daf223d34bc77a1bf14ee75e3 - pristine_git_object: 8b2a1e7fd8be27a24a997bcb2b5bdf5becdae48f - spring/GustoEmbedded-spring-boot-autoconfigure/src/main/java/com/gusto/embedded_api/GustoEmbeddedAutoConfigProperties.java: - id: 06b64f3c224a - last_write_checksum: sha1:110ebc47d597e5e12ef1d97b15317f1d5baa8c4f - pristine_git_object: d7a6ef45f311f7e415d12327ca3b5b04ade75558 - spring/GustoEmbedded-spring-boot-autoconfigure/src/main/java/com/gusto/embedded_api/OnPropertyPrefixCondition.java: - id: ad2a4a23bb28 - last_write_checksum: sha1:dd1b2a1caa30791242999f907d07d232981ede35 - pristine_git_object: ff6bfc5fbb575b082e8ea13c0900d400f536d012 - ? spring/GustoEmbedded-spring-boot-autoconfigure/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports - : id: 496839c32c94 - last_write_checksum: sha1:881b6d619c69f13c7286a0cf93a7dbc956e92117 - pristine_git_object: f26c5593fc659bb3f3b91b823428df2b9b17186d - spring/GustoEmbedded-spring-boot-starter/build.gradle: - id: 9a7dfcb4d70f - last_write_checksum: sha1:de3eb2e85d672b39be14d7c80886f985fe27bd1f - pristine_git_object: 2111bc5aa6da87c1e20da23cb980efaef7fae3be + last_write_checksum: sha1:2f838e8bf1b604a51492d9e16f70df055cf22c78 + pristine_git_object: 02d3671b1cb25e791435ee6fba474b88e4d9ee9e src/main/java/com/gusto/embedded_api/AchTransactions.java: id: 5fb6242428fc last_write_checksum: sha1:6632e1f3b8d96c823ec8593ca7cc8775ee3d9830 @@ -7336,20 +7888,20 @@ trackedFiles: pristine_git_object: 58c64e3c2ada8bb89435dd09e422cdd262e99e17 src/main/java/com/gusto/embedded_api/AsyncCompanies.java: id: 0a2b8daeed3f - last_write_checksum: sha1:11e3770c03dea163d4e41baede51358371c6d4b6 - pristine_git_object: 226825e4c4b5b7589160bf0e9ba3c90998735318 + last_write_checksum: sha1:ecc8136a53416c9fcbfda4e5dcc8791da6ddf5ab + pristine_git_object: ea43c6e03d2fe1b4bcc13d878d421821403799cb src/main/java/com/gusto/embedded_api/AsyncCompanyAttachment.java: id: 5bbc25d0d0f6 last_write_checksum: sha1:0828d45e5ce8c5b845eb2d13cb4d2bdf6ecbc110 pristine_git_object: c5239a0f5e4aa7cd3533c305313bf2eb1281f23d src/main/java/com/gusto/embedded_api/AsyncCompanyAttachments.java: id: 61e420e29e92 - last_write_checksum: sha1:d334176b348b53624c3343bb9ce9f9f525d348d9 - pristine_git_object: dc4b078bcfe827bf5a06edf0ad70791bd8d92276 + last_write_checksum: sha1:0d8178975667521800971db108538b77f905b0e1 + pristine_git_object: 306d7a449cc28dab6e6da43bc7e2095c7aa02382 src/main/java/com/gusto/embedded_api/AsyncCompanyBenefits.java: id: eb85c4f0d751 - last_write_checksum: sha1:253548a2bbd59e0612457c7d0addff31a9ba8a23 - pristine_git_object: 2b2027f2120af303038083fb215b9034dc3f6f68 + last_write_checksum: sha1:af764d96d031f2a528ca973e9bf329ff31e868a2 + pristine_git_object: 25d7d88b9c26ee0a76a5f09f62c660891e38d78e src/main/java/com/gusto/embedded_api/AsyncCompanyForms.java: id: 209ae3e8cbdf last_write_checksum: sha1:e1fca5dd66e45f4fa417596d2b846a44f70f7560 @@ -7364,8 +7916,8 @@ trackedFiles: pristine_git_object: cca2e1f25e351592f9540ea14f6a0049c34daba0 src/main/java/com/gusto/embedded_api/AsyncContractorPaymentGroups.java: id: 8c381b6b4646 - last_write_checksum: sha1:06d3820c77a47709b09b5736981af74149619269 - pristine_git_object: 085db7fa1a51089c435d2857c2353607a9202b6c + last_write_checksum: sha1:a754b3ce29c601c3739a57875255304c44d8433f + pristine_git_object: 4d977584d71fdf431b2f6d480f69e89f76779325 src/main/java/com/gusto/embedded_api/AsyncContractorPaymentMethod.java: id: 92f0c16f1e5d last_write_checksum: sha1:1086443ebd5a4b783d46749f0a6a22d549738b7e @@ -7376,36 +7928,36 @@ trackedFiles: pristine_git_object: 9301c76c823c4fe36c82d5a2512451477cc7405e src/main/java/com/gusto/embedded_api/AsyncContractorPayments.java: id: 57464af11a55 - last_write_checksum: sha1:60351c5387bc8638c882e8eea1165cb48309d242 - pristine_git_object: 6d03411d3a7af746ec2a3a2e7a2940e9c4cf2253 + last_write_checksum: sha1:ca61006af51a85c4769c0d5ecc5b2ae52e3cef55 + pristine_git_object: 1e81ab6d2cdf907d16a546194dd6a735ebbe3e66 src/main/java/com/gusto/embedded_api/AsyncContractors.java: id: 648a33b01f17 - last_write_checksum: sha1:e41f7bf61d4b00ef10fe4e84b048805dd9322687 - pristine_git_object: adf3cf9366b444121d6904097efc224209dcf11f + last_write_checksum: sha1:01c5bb87b6b2423dc2419699c9402172cfdd117d + pristine_git_object: fd42287f1ad99485fc5cc85db0263b4814f119ab src/main/java/com/gusto/embedded_api/AsyncDepartments.java: id: 313b2517a1ac - last_write_checksum: sha1:b765407265462af6e6944a390e80aed3ae847406 - pristine_git_object: f9059b44ea2ad58cd2f2169b69aabe585235224a + last_write_checksum: sha1:c47f2e6c57e42ebe813a631e91654581e715179e + pristine_git_object: 10416a66d21ba51405d891b8c59d892d34f496a0 src/main/java/com/gusto/embedded_api/AsyncEarningTypes.java: id: c9b666fa23e6 last_write_checksum: sha1:0562c5099445942cfb15d68bb09daca91397a33f pristine_git_object: c1f5f40812e4614582fa3bfaae055fb1372643fe src/main/java/com/gusto/embedded_api/AsyncEmployeeAddresses.java: id: dee07b00b034 - last_write_checksum: sha1:a1256df74be8fc0ab4dd16405dc73c3d26641f99 - pristine_git_object: c5148b4444e874e5eda7408684b0e707d951edae + last_write_checksum: sha1:d8c653ac53b159f51007b0ff937e4a3cd2a2ea5f + pristine_git_object: 877a1a20ff71d0bcf8c79d9abef0dd17c050c0c5 src/main/java/com/gusto/embedded_api/AsyncEmployeeBenefits.java: id: bb8290fa3cdd - last_write_checksum: sha1:95d03bd865f4da7661e7f33c7d7c82bb5e625e09 - pristine_git_object: 54a4502680cb0054f2be8000441616ae3bdcb4fb + last_write_checksum: sha1:9037e975d5314d8e8a187316df78ec2a2baf0e65 + pristine_git_object: 3f54ca586dbe2fb3a33726841aa23e791d277295 src/main/java/com/gusto/embedded_api/AsyncEmployeeEmployments.java: id: 387885308d73 - last_write_checksum: sha1:76b1dff6a03404f62874807ff9d5c4db88034d4e - pristine_git_object: 42ea3b3ab235c63ecb9324090c3fab4ceacc05c6 + last_write_checksum: sha1:e8b5cf03e2aedebac61d536b0bce396453009750 + pristine_git_object: 50af37f850c4cb209f993932b1bffc975c7c76c0 src/main/java/com/gusto/embedded_api/AsyncEmployeeForms.java: id: 3eaad1b38381 - last_write_checksum: sha1:01f0f97cae51dc0403c39d8a064f7a6cb3fe7b9e - pristine_git_object: a5f5672628a76b4ea784e6b58df5f2ec632fa691 + last_write_checksum: sha1:dab088918e07c2a6d011a39b32d7a65150cde940 + pristine_git_object: 8568c71e89a3c6e00201cc2a6bd8951cdf10d2c3 src/main/java/com/gusto/embedded_api/AsyncEmployeePaymentMethod.java: id: b23762a4cfce last_write_checksum: sha1:a836914c939a5b114e9e1c3a8a485a758bb7ac95 @@ -7420,36 +7972,36 @@ trackedFiles: pristine_git_object: 4ff7dff24a45d0c54c4900269cd2b51c7ef8d555 src/main/java/com/gusto/embedded_api/AsyncEmployees.java: id: e27cd50b1457 - last_write_checksum: sha1:358595e7fb2cfbd292d2a29984533617e936706e - pristine_git_object: 7dcecd211a545d03e9b94edd946765826f1792f6 + last_write_checksum: sha1:3e3ddcb4bdc69202d3b89748b524a84546a68b0f + pristine_git_object: 576a4b41bfd31486af8d37ce5e5e646e3c2a9722 src/main/java/com/gusto/embedded_api/AsyncEvents.java: id: 21340fae7091 last_write_checksum: sha1:42a92909ad752949f709d3222b2bd5a32d9dcbc3 pristine_git_object: 5f1008e6dbf6a462c737ae48f72d1de2fce90c48 src/main/java/com/gusto/embedded_api/AsyncExternalPayrolls.java: id: 608bd79747da - last_write_checksum: sha1:77f7b70a17a6ffc967b6aaadc9418de7dba60fa0 - pristine_git_object: 06fef56550b3d76d9584b188e65b3b77b5aed0aa + last_write_checksum: sha1:1fce966ff5eafca6ca4aa2029dde033bb37c1f38 + pristine_git_object: 09fd5cef0f0055a85d10b17094f83e2a7bc19cc8 src/main/java/com/gusto/embedded_api/AsyncFederalTaxDetails.java: id: 6d4c1cc415da - last_write_checksum: sha1:e568204ce389f2c3f144eab0c169d03e7083ba6f - pristine_git_object: 3786d970bbc1c946113f53588ad1ede1c5b48c95 + last_write_checksum: sha1:05f8b31830f638e596a1980055cbeda9547f8d65 + pristine_git_object: 24c4b516dad72491971292b4bd6f051044cf1000 src/main/java/com/gusto/embedded_api/AsyncFlows.java: id: c14584f54147 last_write_checksum: sha1:e28240790eecd3b23af4381c4b60f9eea2e56625 pristine_git_object: 15fcff6822cbc1d5a4b81c65b5a3d7d3b9bd812a src/main/java/com/gusto/embedded_api/AsyncGarnishments.java: id: e0e46848dcfb - last_write_checksum: sha1:45521da4bbf9bd187638b03aca37cb46a0a91529 - pristine_git_object: 2c4fda5294e9a4c104610d8d0c59a4f7b500a7ec + last_write_checksum: sha1:fa2ad5951f0613085dba9e8cedaf64c5e80f5902 + pristine_git_object: 77a4a59a96964caf941106d65113192d66fedf52 src/main/java/com/gusto/embedded_api/AsyncGeneratedDocuments.java: id: 9f54723f070d - last_write_checksum: sha1:be367d43778f03965c92526d9c27a2767e05eb50 - pristine_git_object: 07510535f91f739690eb2e26db7a6340ae7abcf3 + last_write_checksum: sha1:85bc72d94eb875371af165918e4b0ebc36ee59fe + pristine_git_object: 1061d0a517f6862f8f7c14b2e500b834423b54bb src/main/java/com/gusto/embedded_api/AsyncGustoEmbedded.java: id: 3dd88e00a611 - last_write_checksum: sha1:ff56dd3f31d7031d89ccbba98a4b6819a5410cc9 - pristine_git_object: 213b505bdeb6f22ccab965b9962180c2bab405d1 + last_write_checksum: sha1:1b5286c2ce8ef757675c079b469208554327ca8d + pristine_git_object: ee1f32853c6e3fb8a9c467c997e0ff3b93d7ab77 src/main/java/com/gusto/embedded_api/AsyncHistoricalEmployees.java: id: 43df209cc828 last_write_checksum: sha1:4147d857055c87bb712ef37792cf276ca45a5bce @@ -7464,52 +8016,60 @@ trackedFiles: pristine_git_object: 614185a9e3a53d741f38d5c663d1ad067dc1d252 src/main/java/com/gusto/embedded_api/AsyncIndustrySelection.java: id: f283fe3224e1 - last_write_checksum: sha1:91d3518b8b6addf768888c2fada31f738f5b3457 - pristine_git_object: a169a03e0de71f93a5536feea34ab9dc0fab336c + last_write_checksum: sha1:8f1844d75443069cc9ba73c5a47514a647a78e02 + pristine_git_object: 8b71141959f88e0e37399b2bc677517851966ad5 src/main/java/com/gusto/embedded_api/AsyncInformationRequests.java: id: 2d21db82fafc last_write_checksum: sha1:a2df6e5b1d0c1f4bc2400892d1c3a226a26586f3 pristine_git_object: 4c84cb67654d581025fc243293bf7c869ada6f1e src/main/java/com/gusto/embedded_api/AsyncIntrospection.java: id: f10d3976b2c1 - last_write_checksum: sha1:99d52681c20efaf85ac6c1c93e1726b33714ee8f - pristine_git_object: 47bb4883f7829daca79acfd1be5da7ec62676ba9 + last_write_checksum: sha1:6eeb91934bcea601c04dda18c677292bf88f9641 + pristine_git_object: 635522be3047beb800767f6f3e1407c694adb294 src/main/java/com/gusto/embedded_api/AsyncInvoices.java: id: fcb4e1e369ab last_write_checksum: sha1:0c0b587af24c7d4569759de3a4a1b22ef9b4972a pristine_git_object: 58bc339dae1aefac32f4544fd26e16dc2f478dc6 src/main/java/com/gusto/embedded_api/AsyncJobsAndCompensations.java: id: 6ece00508c2d - last_write_checksum: sha1:3e7f60f2791f2147860241f232db7358bd891531 - pristine_git_object: aef818d2514446af9e13ac3dfbe9337009da3efe + last_write_checksum: sha1:ff8d0ad4c5e196fb2d96327c1c60b53e9f9e9e2f + pristine_git_object: 9fe83e985ee6c6b87728d03a52728771d7ce0f9b src/main/java/com/gusto/embedded_api/AsyncLocations.java: id: 30cc4a1f3c6f - last_write_checksum: sha1:dcdb10883e0e32ec7ffdab5e38ec0cd98f570265 - pristine_git_object: a077befe3e011b3d8712bca8f49ed99172ab9473 + last_write_checksum: sha1:78752730215cdb91d9d00b2c8a8b5e78b8a1ad55 + pristine_git_object: 074bc01988a75156b766562587fc0dbe6285677c + src/main/java/com/gusto/embedded_api/AsyncMemberPortalInvitations.java: + id: 99bc763f634e + last_write_checksum: sha1:93d923b0dc05a64cbf2cd91f5a90d9cad6828496 + pristine_git_object: 03329bac66837c455b3ac8cc21226b131f42d0f0 src/main/java/com/gusto/embedded_api/AsyncNotifications.java: id: 8147d6c05c67 - last_write_checksum: sha1:d36f4c07c64426a8e06713b66229da7bd1cacf74 - pristine_git_object: 45334ce8e4b55ca9d5a598f9e47d321e5941ff89 + last_write_checksum: sha1:172097f9bc20778260c64066ff0fd64ce61e240b + pristine_git_object: e53963930e02a3d39d89b05890f23256f248f83c src/main/java/com/gusto/embedded_api/AsyncPaySchedules.java: id: d424f0aaf749 - last_write_checksum: sha1:2a805775c82fcf3e3a96bccbf35a3f5d3ec94dba - pristine_git_object: 268489a4cd32b45be0f5f4ff52b299f69576f5ae + last_write_checksum: sha1:1fb3e2eecd4dfce9b8f2e1aedbe0bf67f87e0fa2 + pristine_git_object: f108d2b28475b8731b7a71be43cc262807526335 src/main/java/com/gusto/embedded_api/AsyncPaymentConfigs.java: id: 584b57bb5ff2 last_write_checksum: sha1:a45019ea252f72606bbcdb82b4122f10bf8866fd pristine_git_object: 4f22d0d5014c7b44b1b100da4862fdd08e362ac8 + src/main/java/com/gusto/embedded_api/AsyncPayrollCancellations.java: + id: 2b35c29d83a7 + last_write_checksum: sha1:beafb5f076702c530ddbaf54117de7340cc5b60f + pristine_git_object: 2b1609ae9a666d8ae0a47f050c240c997d1cb1c7 src/main/java/com/gusto/embedded_api/AsyncPayrollDigests.java: id: f742a2982d6b - last_write_checksum: sha1:fae5ff868fb906bc83cba98a43e212509c48bcc7 - pristine_git_object: f86cb5b75ab8588f9120c34a3af3f1cc7dd96938 + last_write_checksum: sha1:372d3c42dad1fe275ed999ad99fb746daf8e2365 + pristine_git_object: 4cda3100e7860d329fa31e6327483a2e7255631d src/main/java/com/gusto/embedded_api/AsyncPayrolls.java: id: 46742a304ad9 - last_write_checksum: sha1:32aa448f8c8d3f10311c26d777ff3596a8393100 - pristine_git_object: 3df5010c556885dd8946fb68de6f9f0f69eca33c + last_write_checksum: sha1:fb272233b9602348a2b6f8b1226285e10aac927b + pristine_git_object: 137feecc5439d6b9289a52f8073ec0dc48ab08b0 src/main/java/com/gusto/embedded_api/AsyncPeopleBatches.java: id: 9ab3c92785e7 - last_write_checksum: sha1:6af4e88c8c117b16654f47ceb823d092970f7188 - pristine_git_object: d868113480f4fa4bddc3f7f8d7e4e82495273e94 + last_write_checksum: sha1:22acd40ab08417082664a78ceb011854d7660ab2 + pristine_git_object: cc3181e7a490a9c695571c2274a62a05f53e016e src/main/java/com/gusto/embedded_api/AsyncRecoveryCases.java: id: 01e046272d2f last_write_checksum: sha1:28e0c3c824a0bb433c27f48797aae0c0e2c4ba49 @@ -7520,60 +8080,68 @@ trackedFiles: pristine_git_object: d2f8596b0d1860573b3d3e57610f9b27b15743c5 src/main/java/com/gusto/embedded_api/AsyncReports.java: id: 885299ba6375 - last_write_checksum: sha1:29c100ff7fed93ba84ba454d1ab70019334e06be - pristine_git_object: 78cf12ca19a03c4330e7df362df4362cb9df38d0 + last_write_checksum: sha1:841a1e95b867024f7c833c73f9d4f85c8469efe2 + pristine_git_object: f3d877c0402af0a88b4cc8eb207d831ca30039e4 + src/main/java/com/gusto/embedded_api/AsyncReverseWireTransactions.java: + id: 7b671e8a0de9 + last_write_checksum: sha1:ac0741f59e8c2261cac4ab5ddfedd011a7e9da92 + pristine_git_object: 72b41f48cb88f572adf2e88272dadced7e84f56f src/main/java/com/gusto/embedded_api/AsyncSalaryEstimates.java: id: 97e0f564671a last_write_checksum: sha1:8809c9612755b08d6c50bc40d54fa5b7e5f64b63 pristine_git_object: 601ce99f0c0a874a79285e5bc6ed5e1a2dc32868 src/main/java/com/gusto/embedded_api/AsyncSignatories.java: id: f4faf674cdbe - last_write_checksum: sha1:1526695daa9d7e833e3bc31cd4a946323f33f481 - pristine_git_object: 1461487b84b0671fbd0309601996c02ce866ab9c + last_write_checksum: sha1:4ce57f4e89600a6fa0a4251e230550f93b9584d9 + pristine_git_object: 0efbacd4f5716dab5afd63e5df5ac8a66fa4994b src/main/java/com/gusto/embedded_api/AsyncSuspensions.java: id: 47c9e5fe08da last_write_checksum: sha1:f43d77fcc83dd5c7d8f8013b4d711e275b7fe8a3 pristine_git_object: dcd73ac50a4f9ab020beac135e63ddc57092c14d + src/main/java/com/gusto/embedded_api/AsyncTaxPayments.java: + id: cb6eeb7b075f + last_write_checksum: sha1:4c46078d7bea3b1a3906c4bd436a8525b52da5d6 + pristine_git_object: a1932bf2c1006a76cf69dada67c78dbc7a917f6a src/main/java/com/gusto/embedded_api/AsyncTaxRequirements.java: id: a28ae376c9b0 - last_write_checksum: sha1:6b0b686cbe499a0367facd855393b9360ede3647 - pristine_git_object: 60796570acb4f04e8e1338e72038475eac35e41f + last_write_checksum: sha1:5f92959ead696fa991860cd79f4f467b582aad57 + pristine_git_object: 0ae76b8f5874aa6f833180aacdeef131ab84d98c src/main/java/com/gusto/embedded_api/AsyncTimeOffPolicies.java: id: a21f1e7496e7 - last_write_checksum: sha1:21f85d0fdb9c2879f1556475d95aa8f10d14392f - pristine_git_object: 853d03640b1e653c92893f36af105a6d5801cdd0 + last_write_checksum: sha1:50e15941c36473da23c8aa6b41d1abd87ebc6ddf + pristine_git_object: 14b96ff88666ce3edf276245d1c916d267b53037 src/main/java/com/gusto/embedded_api/AsyncTimeOffRequests.java: id: 8b18a53e1037 last_write_checksum: sha1:bebda54952dc02b4a6aefa54a3bd46df44332009 pristine_git_object: ff086588c0ba6814acfdd49b3b4b37b99e5c26f3 src/main/java/com/gusto/embedded_api/AsyncWebhooks.java: id: ee3b4808d295 - last_write_checksum: sha1:39f68bf68e32bceecc4a092d747552aac38b60f1 - pristine_git_object: 2d815c8e465415bdb2fdb2d5f1ca301db51d142b + last_write_checksum: sha1:437a0856a15fc5013db99a75b78450eb91991c6a + pristine_git_object: f24ea9df3e60d7a5f32eb995c5d5e59a5c8cacc1 src/main/java/com/gusto/embedded_api/AsyncWireInRequests.java: id: 1cc88a2e8de6 - last_write_checksum: sha1:7c937f7d65d5b7e5bfbc3c9232d5b6cb7601cbca - pristine_git_object: 773ff612767bfb29646e6c0a004c87222433b160 + last_write_checksum: sha1:c946f8a469e903f48b3c5bb7b2485f879c398db6 + pristine_git_object: 477b858aa46d68548b5d509607a24ec1644cf949 src/main/java/com/gusto/embedded_api/BankAccounts.java: id: e0bd67741e1e last_write_checksum: sha1:ff3a25f2894f1429b4b1711b8c1f00243a4c4666 pristine_git_object: 234781357bbcd52e7eb6b640d6b0bc3620c72c18 src/main/java/com/gusto/embedded_api/Companies.java: id: 52fb35e90cef - last_write_checksum: sha1:3863053c1fd23eb12ac1a4e7f44df13707640ed0 - pristine_git_object: b553c7ce0181ef82de652a1e021d0bdb83753b29 + last_write_checksum: sha1:1c9c3c9e858f0583788f2d6b755944f96c662d89 + pristine_git_object: 20db4b36909c3b8570bce7d8742eef90aaf95442 src/main/java/com/gusto/embedded_api/CompanyAttachment.java: id: ba842dd466c4 last_write_checksum: sha1:064f761c470b0148d97b31e00590ec2aebf53965 pristine_git_object: ca26d66fc084f6251e4c707e099ec3f2537c6c63 src/main/java/com/gusto/embedded_api/CompanyAttachments.java: id: 2f214b1e00e4 - last_write_checksum: sha1:bd31139ccfa2bfcc474e5750c0bb3033565ed380 - pristine_git_object: 8a57e2bd391c72305e64e21c4850ff9f63167178 + last_write_checksum: sha1:cc72c6966bb51569882e3445d50b3da915c1de32 + pristine_git_object: 15b2633a31f48339cf4f2a508183d8b0b829d10a src/main/java/com/gusto/embedded_api/CompanyBenefits.java: id: 102c291ef2c6 - last_write_checksum: sha1:486c8ced6c19746c6b9ac1e3d6ba9d543f07f084 - pristine_git_object: 5bda5c26c3da90b8d97bc5f750295b3a8a05ab02 + last_write_checksum: sha1:f522a356360494cd6f3525e08199269b6ab661ff + pristine_git_object: 09a5aba4ce1b24923d6657777e49a672de6f0304 src/main/java/com/gusto/embedded_api/CompanyForms.java: id: a2472178be8a last_write_checksum: sha1:30547da119836533494d7466b96f6a79c116221e @@ -7588,8 +8156,8 @@ trackedFiles: pristine_git_object: 899bd6acb40538c1e2a18890701f78447e3462da src/main/java/com/gusto/embedded_api/ContractorPaymentGroups.java: id: 756aec16588a - last_write_checksum: sha1:aa6cf40c29a17fa3355fc9f46547055b7b430b87 - pristine_git_object: e3248f156792b689a1c90c6fd8469f5446ff4ea9 + last_write_checksum: sha1:89e4312ccbebe82350227eec65c5342572af353a + pristine_git_object: 9f1ecebf1abbd293fa16f56fd0e8a0726802ca19 src/main/java/com/gusto/embedded_api/ContractorPaymentMethod.java: id: a9298d96b663 last_write_checksum: sha1:8bfd8232d79f3ac229697566ac5507332608084f @@ -7600,36 +8168,36 @@ trackedFiles: pristine_git_object: b9df7702fe6cc3a9e2f9e1ea206bc83a5979cdc9 src/main/java/com/gusto/embedded_api/ContractorPayments.java: id: 02e0fb52881d - last_write_checksum: sha1:3844389fcce0fe7641e5615f420f6021edb13496 - pristine_git_object: f9c82edeafb45a4e90f4566229d2179bf0588662 + last_write_checksum: sha1:4f75aacf46221e978b521d1d0e74a316c755e39d + pristine_git_object: cd594ced0f69dd32f0ac16b5ef145f562c9d3c9b src/main/java/com/gusto/embedded_api/Contractors.java: id: 2fbaadc4514a - last_write_checksum: sha1:d47da2809e0b72ef195fe7efa8440f3dea1dabd4 - pristine_git_object: 7e55ca846931a24c77fe152cfcf60b0f1cadab67 + last_write_checksum: sha1:3e0377120cd34c47ec2e86e327507ed456fe7c5c + pristine_git_object: e6a6e7ec37d5658f083466e4ca16e851152dfda2 src/main/java/com/gusto/embedded_api/Departments.java: id: 0e6cd7cac4d3 - last_write_checksum: sha1:ae3038e92137f977c24aa641b3e983e8e0a3a35f - pristine_git_object: bc6a506257a5d5161b30133ecfcfadcdec30d9c4 + last_write_checksum: sha1:9f83812489373f7a357008269260fe4bc421cd42 + pristine_git_object: 5dd042eedbb73d7aedeffd3b6ee9a76034fddf0f src/main/java/com/gusto/embedded_api/EarningTypes.java: id: 27f670c9dd4d last_write_checksum: sha1:79b65f790877d54e1b4ff9aa8c82518923f8de38 pristine_git_object: 9c9f384254077616853100610f87c8af41629d68 src/main/java/com/gusto/embedded_api/EmployeeAddresses.java: id: 92cb95a4cf04 - last_write_checksum: sha1:0dbbdae5968a840d488042eacc8e3a4f6b8f3484 - pristine_git_object: 9bcaa766902463f20356d0f9e67bdb5b751937ab + last_write_checksum: sha1:cd3f869b0e45a01e1b5829811b4ac56b2db32663 + pristine_git_object: 94aa99e35830964bc9e2f0683b6642b23012fddd src/main/java/com/gusto/embedded_api/EmployeeBenefits.java: id: 6a33ede06c70 - last_write_checksum: sha1:26744e71e4794b89c3a87dec282292c680aad6d4 - pristine_git_object: ca34ac91068f51f25ba58743c952e0916f37deca + last_write_checksum: sha1:2ad1bb525f5bbf2b907d5f0f9323314ba3cb6d5d + pristine_git_object: bd70db2eb994e02c1eddb3353f19073a642e3f89 src/main/java/com/gusto/embedded_api/EmployeeEmployments.java: id: 252be3055952 - last_write_checksum: sha1:20e3b838918994b40341df802325c86c2a003031 - pristine_git_object: b452f2c97fb34af8274889cc37ce65958f4ecbf0 + last_write_checksum: sha1:a21dd6dfca5780e0075e77935775fc5eb7a2fdb1 + pristine_git_object: 95935f08262b86d6926989dacee3ffe31de0eb7e src/main/java/com/gusto/embedded_api/EmployeeForms.java: id: 49300d23d029 - last_write_checksum: sha1:8e34d790990b9410a1a513fedf960d8b9b0fbd18 - pristine_git_object: f117f04684374d8011bac734c92e46cf701aca6b + last_write_checksum: sha1:2ff88be688b9ef9e502520394af4eb31d0d6c724 + pristine_git_object: 3c0421a7c93a47c3668a410ecc8c60d0dafeb92d src/main/java/com/gusto/embedded_api/EmployeePaymentMethod.java: id: 8018a1fc129b last_write_checksum: sha1:c694cb3c2520be47a0dbe6a5d9c53d864286b2d5 @@ -7644,36 +8212,36 @@ trackedFiles: pristine_git_object: efbdd19a5a4b3dacda15d5d0d7fa65a750c07450 src/main/java/com/gusto/embedded_api/Employees.java: id: 091ea013fe8d - last_write_checksum: sha1:d5a136630e3cb2039936101714cce5ad6aaff0f8 - pristine_git_object: eb519c87c0b7a86f9f3e2a49a0ed784654329ccf + last_write_checksum: sha1:a72cfb7e72357aaba89b67a5da9fe085fed317e8 + pristine_git_object: 498e2a41796e2b692c3c7e0fcb125d09024dbc6a src/main/java/com/gusto/embedded_api/Events.java: id: dd3ce72881a8 last_write_checksum: sha1:f4fd99505b1b82903094b16d48ab226a69f0018c pristine_git_object: 45e68586df9f9f3663c18520672cf24d79225e59 src/main/java/com/gusto/embedded_api/ExternalPayrolls.java: id: c39139cf3725 - last_write_checksum: sha1:65378732af722bdfb7b477c97e7b96188018dcfc - pristine_git_object: a4188f5a0480f45f89464fd8aa706fbf0295a605 + last_write_checksum: sha1:99c65b3e581d800a0c899a83499c1f705faaff02 + pristine_git_object: 525f13f7030cce8f56e8bfe890e106838b9e33dd src/main/java/com/gusto/embedded_api/FederalTaxDetails.java: id: 524de2f6e5db - last_write_checksum: sha1:8c0abbacbcea2ad15fb03785856bab59f8cc6f4f - pristine_git_object: 40ddc1aeb6bb6e33b3b6ce77afacf7a71aff8b81 + last_write_checksum: sha1:a7a17465660aecb759b434ba931483876afc6940 + pristine_git_object: b39877dffed0c40b6e23ab78c58b59ac8a46f86f src/main/java/com/gusto/embedded_api/Flows.java: id: c3e13244c264 last_write_checksum: sha1:024f069d2423f5f8b7eaaea04faf09517e358349 pristine_git_object: 9be99552ab565008946e5f6bdcd67dbac3ac9cdc src/main/java/com/gusto/embedded_api/Garnishments.java: id: 3a3970182f32 - last_write_checksum: sha1:b2092e0bc3faade333a75574da2a9449120c0707 - pristine_git_object: 274791e12c36cd3657e669f7f7b85fe66abcbd11 + last_write_checksum: sha1:6f267a12b25b1054187a818bb9197c39424435f8 + pristine_git_object: 9eea72b98d9e00d098db38afafc2801fa07a3e5f src/main/java/com/gusto/embedded_api/GeneratedDocuments.java: id: 3fff612fa728 - last_write_checksum: sha1:df539adb93cb2524a040fcabb3a1301e15a7801d - pristine_git_object: 40912324ac2da11c99252817a2abe429e28ed1f7 + last_write_checksum: sha1:f32149a93dca18c14663795686ba8e9ea7f32112 + pristine_git_object: 8cbe9edec9913fbc61fc2e955482ad1a780cb879 src/main/java/com/gusto/embedded_api/GustoEmbedded.java: id: 956df7eec9b1 - last_write_checksum: sha1:b6e13b170e75446a047b4dbfc552f61bdc5d8a39 - pristine_git_object: d9a70f72b9a63c252cb37885118a29a6c9c69d7e + last_write_checksum: sha1:f367f9ac45748869712621aa405d58bf80528b2e + pristine_git_object: 0bb56bea516cdf0390daaad8a07364914725d5a5 src/main/java/com/gusto/embedded_api/HistoricalEmployees.java: id: dbd82b59e12b last_write_checksum: sha1:585e5607784951b3be9e1db8f10f8fdf0ddca2eb @@ -7688,52 +8256,60 @@ trackedFiles: pristine_git_object: 203dcb91195480f9c37750cd74109c7276442515 src/main/java/com/gusto/embedded_api/IndustrySelection.java: id: 7f2973151c17 - last_write_checksum: sha1:8f335381e7e90d28d66aa713fe5f66ca3e8d733c - pristine_git_object: 6e44cf3de30e7ca1c2766def3cb2ac88ef345c14 + last_write_checksum: sha1:15a7f0a3dbd727d080a785f730498be9f7ec1e43 + pristine_git_object: 7b6bd5c7b8928df5e786ad473cad35601cde6916 src/main/java/com/gusto/embedded_api/InformationRequests.java: id: 77a240b100a7 last_write_checksum: sha1:aa0c253006256ff8a5007c64afccd776eb34b344 pristine_git_object: 50dc797f9c862b5382273345e4e734e8ed613939 src/main/java/com/gusto/embedded_api/Introspection.java: id: 09598fc172f7 - last_write_checksum: sha1:a6f6a9bac9edd06e98b6fd2c10119f7a5cc6e8ee - pristine_git_object: 003fb2334d3b44d8b8c06de7184d1c5b6f8a881b + last_write_checksum: sha1:cd87fe655309f36dbe5a0850130d582f17809b64 + pristine_git_object: abc86d57c521aef73f0108ba70db9a4bbffc5b07 src/main/java/com/gusto/embedded_api/Invoices.java: id: 299cce4d02f9 last_write_checksum: sha1:71c94cb24fe1470728c1605d465f4b07dce08299 pristine_git_object: ad06ddff03d9913d8d620ace0b4a97f099700a37 src/main/java/com/gusto/embedded_api/JobsAndCompensations.java: id: 71e096333824 - last_write_checksum: sha1:2f17553215aa53c50f83ab8c8040e1c5daacb128 - pristine_git_object: fbff180a36fb9c2a7738f14c08a376a4c38fe823 + last_write_checksum: sha1:782b84bd0161fea253d518f638540bc02a092147 + pristine_git_object: 4bbf82b2473711ae97868eb3dd70a37d33a31620 src/main/java/com/gusto/embedded_api/Locations.java: id: f42d3fab934c - last_write_checksum: sha1:f1271479b9a0872d5e1c3424bedd47534f9412c6 - pristine_git_object: e46b30ae59a1f4bdbf7706aa5617fa10f832b3a8 + last_write_checksum: sha1:6c07cfca950b403031d54eed894c6cab501323f2 + pristine_git_object: 9d206f75cc6ceb71eec43291a8a10320352e7dbf + src/main/java/com/gusto/embedded_api/MemberPortalInvitations.java: + id: 85164d46fcd0 + last_write_checksum: sha1:001900eb60be42a8f5045c6044e828594c3f54af + pristine_git_object: d0300f90c86f434df6af378772294266031914db src/main/java/com/gusto/embedded_api/Notifications.java: id: 0518c78960e5 - last_write_checksum: sha1:49de56474bd6339aa7a1b5161f3da686a2663a76 - pristine_git_object: 9c943654bd2bcbd385de9df06e4911214f649905 + last_write_checksum: sha1:63b8427ecc9cc9d02681cd5fc57784330e376970 + pristine_git_object: 2a26fb025f45fac282e823f5db78e939051ba6f3 src/main/java/com/gusto/embedded_api/PaySchedules.java: id: ab9f9e17ccc8 - last_write_checksum: sha1:bd24153c7e105a4aebf623b398e840cd09c2a224 - pristine_git_object: d405c4fc9748e82886f41b049d85f9800f9cd602 + last_write_checksum: sha1:0ed25d3705713604949ba282b134b021768d6e67 + pristine_git_object: e21553204b2fc495f0eb9d75fb969c90006aa772 src/main/java/com/gusto/embedded_api/PaymentConfigs.java: id: a66112143396 last_write_checksum: sha1:4e7961f4b53838d55bbfb9d9672dc8bb8e7ed27a pristine_git_object: e2c9ba82d26bcfcf3055600906cfd355c990049d + src/main/java/com/gusto/embedded_api/PayrollCancellations.java: + id: 1551a67b6398 + last_write_checksum: sha1:983352f5103c46d8b28588bc7e0ffba2ae8a3ef7 + pristine_git_object: 37f5c8d652908343100332075e8e51a401957d4f src/main/java/com/gusto/embedded_api/PayrollDigests.java: id: 065e15f070ee - last_write_checksum: sha1:4c99d80f1bbc9e808d468a4955046c72416bd197 - pristine_git_object: 94524d2b2a6a88c5901b21908494fff3db513ba7 + last_write_checksum: sha1:99222e338c61282c2469e098a017d861e741e7da + pristine_git_object: eb3ac1efd8e7c6c22331285a45320ec8df99e144 src/main/java/com/gusto/embedded_api/Payrolls.java: id: 06d373d55255 - last_write_checksum: sha1:64c2586cfd60f8b6fd7a7f5d9591327ba5f98a6a - pristine_git_object: abeaae73ad5874af06b6eeb63ac8b7b72df26bc1 + last_write_checksum: sha1:94a719ce1263873f0ef0f46cf292044bef639a95 + pristine_git_object: 7dcf81869d7449c3fde0fcc334f3949304736cf4 src/main/java/com/gusto/embedded_api/PeopleBatches.java: id: f744eb3b14b2 - last_write_checksum: sha1:f094e6946555258c27264000b4fe5c4b54b2e659 - pristine_git_object: 8d2f287c094cb7df8b6af153e4bf404f5e919ac2 + last_write_checksum: sha1:623db0b27242b22e2ced900c556dfea749d5b3dd + pristine_git_object: f27ef1875d314cb0bbe6b67cfd10f0e3c68a9d68 src/main/java/com/gusto/embedded_api/RecoveryCases.java: id: 6e039c8761f4 last_write_checksum: sha1:a76b942a6003527b29d5640935b04098c198e6a6 @@ -7744,12 +8320,16 @@ trackedFiles: pristine_git_object: 1e0cf638656c18d786ec37e5edbbdd6eb885cefd src/main/java/com/gusto/embedded_api/Reports.java: id: 7592c9eaf743 - last_write_checksum: sha1:1e16dd9adc652cd677ef61245aa37756a90da825 - pristine_git_object: 7e3ef2aea6d2bdd880ea63d253f3b71a85d9cc2c + last_write_checksum: sha1:66892e18539dd3eeb21eb14852a2dc8b6d441cf3 + pristine_git_object: 021bf36d5de863aaa92ee4dd199838ff0cba0815 + src/main/java/com/gusto/embedded_api/ReverseWireTransactions.java: + id: 94df80d29bca + last_write_checksum: sha1:374eabbf3f921759103c4f8ffd873329fcad63e1 + pristine_git_object: 7deb64903bebbddf1f14044fda841813e84b2ad3 src/main/java/com/gusto/embedded_api/SDKConfiguration.java: id: c282180d7aa3 - last_write_checksum: sha1:b798e5762287791e52cec07896e5254d7954e62e - pristine_git_object: dc606fef75cebbbaeb7fc4a87c53d16a062637e5 + last_write_checksum: sha1:45a84020b36f55f90a05dd4599b25d8f690e3494 + pristine_git_object: acbb809ba7e012747bed376698e666ce090f16e5 src/main/java/com/gusto/embedded_api/SalaryEstimates.java: id: 34e62c9ddacb last_write_checksum: sha1:6cdb58ff0eb8d1de8c391d3d47a87eddee8e55ef @@ -7760,32 +8340,36 @@ trackedFiles: pristine_git_object: b3d6e0b24dc7a482da14a597a5a68014a3c7bb62 src/main/java/com/gusto/embedded_api/Signatories.java: id: 05bf27d0c53b - last_write_checksum: sha1:c15d3535e079ce46ea77ed507f8fa3cb57475249 - pristine_git_object: 48646707e97bfd216cd3ab3837c2b278bca1707d + last_write_checksum: sha1:764a468566fd3c4a098e084111bf94477b87a7ac + pristine_git_object: 5ff6452f5f28adfa31516387b6b89d302abe2c58 src/main/java/com/gusto/embedded_api/Suspensions.java: id: ad1759787886 last_write_checksum: sha1:0f5f0866f902c307fd2aba85c2569aa4797fefcc pristine_git_object: 80b73252231b6659db090d11b3e8829777379da5 + src/main/java/com/gusto/embedded_api/TaxPayments.java: + id: 4b4e3142817a + last_write_checksum: sha1:d170d58e6cea80cdd36af0a7f9396cb8387f33e0 + pristine_git_object: 267c96356f794c9038f38fd9b9fb17a0e26c6039 src/main/java/com/gusto/embedded_api/TaxRequirements.java: id: b9e4306f8ba4 - last_write_checksum: sha1:cdf39591e57aa53f5ccdcebc822a4a552e7c157e - pristine_git_object: 8a4460edae96d160d602b5efca2d80b4512b61dd + last_write_checksum: sha1:0226f30ebf36eb5c338e9e620f44ea6f0307fd0f + pristine_git_object: 26f771ce292a9aff1b8dda445e8609cc7c0db302 src/main/java/com/gusto/embedded_api/TimeOffPolicies.java: id: cc093b9ba3de - last_write_checksum: sha1:f8b30261bd6353bebd823a69585ea1026706fd7d - pristine_git_object: aefd958f8e95bbac65b45db889f6786b65fdc170 + last_write_checksum: sha1:46b7c052c683d133fa3f92ffbaf50db9814c956e + pristine_git_object: d245c6f47a20f7bd31028e7fe3b8188bac5b443e src/main/java/com/gusto/embedded_api/TimeOffRequests.java: id: 37f584007489 last_write_checksum: sha1:3b0e92db10b8c0538d49d6b09262afb3b7b3b657 pristine_git_object: 00ac9cee179fab7d5b9ec54c010cb07268c72363 src/main/java/com/gusto/embedded_api/Webhooks.java: id: d2df3199a4f7 - last_write_checksum: sha1:d5de3836df66812c33e2caa39a573d3f7c2ffbca - pristine_git_object: 1b4e6a83d35c07f59ecb5c2302dbce6d94998c93 + last_write_checksum: sha1:0b0541189fe6c12ee5df16ac70a9c5088d4424e8 + pristine_git_object: 0b7032cf26f78ab115821fd750b45a643e2c2cce src/main/java/com/gusto/embedded_api/WireInRequests.java: id: eb6ba317e9e6 - last_write_checksum: sha1:c9fb1a462c68e5895fe9ffd761281c889190aaa9 - pristine_git_object: d9751a69a88fe2359213e99b5e31037388a9ad22 + last_write_checksum: sha1:ea98793417fc6e11b2e8e2ca549daeab3d379096 + pristine_git_object: b5e842bca9935782d8e11a883d13ce8e4df8b167 src/main/java/com/gusto/embedded_api/models/components/AccountType.java: id: 42e018210a1c last_write_checksum: sha1:c78c1e279be2d2f347d0382183b172f62be902eb @@ -7796,12 +8380,8 @@ trackedFiles: pristine_git_object: 03bf7b6a2c0487dff92f80b272ea599ec28f5104 src/main/java/com/gusto/embedded_api/models/components/AchTransaction.java: id: 063f79e2cf4e - last_write_checksum: sha1:91e1bb1b8e6b4ac247dc3549a9d352253fbf91ad - pristine_git_object: b5ab5431717d04e1742689014e1bb806e81febe1 - src/main/java/com/gusto/embedded_api/models/components/AchTransactionRecipientType.java: - id: 51d05c688721 - last_write_checksum: sha1:0d6b4fdf38b228f64f9ff2126261b836e6c0f131 - pristine_git_object: 02e0574403670625c925ad5ff83052c47be8eeeb + last_write_checksum: sha1:d84c46111eea8e7e5db86b971f426da5d5700c4e + pristine_git_object: 5ab6291dad2bd10204a6f704614bf5a4e644e8ec src/main/java/com/gusto/embedded_api/models/components/Action.java: id: 1c760e035f7e last_write_checksum: sha1:37c8e2a7b8f745386241107829aba5e5d4a1a7d9 @@ -7828,8 +8408,8 @@ trackedFiles: pristine_git_object: 8d2a2befb2ab2561a91bb8aceced9d8d18ab16fb src/main/java/com/gusto/embedded_api/models/components/Aggregation.java: id: 3098a2172204 - last_write_checksum: sha1:9a1db22115537c5b8b9a33726c6faacec9a3ad12 - pristine_git_object: 30e6213f9e9f6adc0d007c1c7be0b4a9b7fdb95a + last_write_checksum: sha1:c99dc4c2182c501ee879cb2df6adab18d284a0ab + pristine_git_object: 4f2861fa8dcdc944ea47ca4121ff88a17b058092 src/main/java/com/gusto/embedded_api/models/components/AmountType.java: id: d4c1543d1d62 last_write_checksum: sha1:8c234257cb94ccb1ab1d9004670c7c97e9046a8a @@ -7876,24 +8456,20 @@ trackedFiles: pristine_git_object: ef34b131f2236f51f11069faa33f0eb66abfde52 src/main/java/com/gusto/embedded_api/models/components/BatchAction.java: id: c118c324a3de - last_write_checksum: sha1:e71aafcba50c886a648590800162aa594545b471 - pristine_git_object: 0b377492c8e2e3d72f05ad7666d5722204dcbf53 + last_write_checksum: sha1:960826b39064e05c151b5288c68ee0814f7c4056 + pristine_git_object: d359d345bad61bd446817ccd25d9e18342f77afb src/main/java/com/gusto/embedded_api/models/components/BenefitSummary.java: id: b2b545ad0db0 - last_write_checksum: sha1:86baa0b76164db5347471ae50e0b4bdca5f89095 - pristine_git_object: 9a451474187b3bfedf5a6ec1cc37b604a176c8e1 - src/main/java/com/gusto/embedded_api/models/components/BenefitSummaryEmployees.java: - id: 7dd21f1decbb - last_write_checksum: sha1:520bcccdf78192425d8c16bf1f3f46e5f2cf49f6 - pristine_git_object: d75631258213dcb831ccc6fc0bd889008c214dd9 + last_write_checksum: sha1:100db8b1b95b8555337af41b1ced67987e744cf0 + pristine_git_object: d6cce8a419608e1a442c4ae1bc02ce8c770583ff src/main/java/com/gusto/embedded_api/models/components/BenefitSummaryPayPeriod.java: id: 821c908a1e09 last_write_checksum: sha1:a72a147765aea624f873fb180cc888621da9c580 pristine_git_object: e437f48c5bd055af71ca85dcb814bd7eac255ddf src/main/java/com/gusto/embedded_api/models/components/BenefitTypeRequirements.java: id: 305cdc396184 - last_write_checksum: sha1:b62e524d72a67289cc2deb9962296b9d9aa2043e - pristine_git_object: 793f0836b80204b6196d4dedbf0baea0e7bd09b5 + last_write_checksum: sha1:4737d47fda06097ba31ee6d3b5e9dd8b785296fd + pristine_git_object: d376003cd7a2050e929b8213bfc79f8c1f4593db src/main/java/com/gusto/embedded_api/models/components/BenefitTypeRequirementsCatchUpDefaultValue.java: id: 8cf17781b62c last_write_checksum: sha1:8fa019977b04474af7b785c4dcf19a5da0236bdf @@ -7902,10 +8478,6 @@ trackedFiles: id: 392600ade438 last_write_checksum: sha1:9497c7458e2cdf76e32bd13e91fc086024f7e33e pristine_git_object: 9259519ba5e6addeacca05714d177ac00d40cf42 - src/main/java/com/gusto/embedded_api/models/components/BenefitTypeRequirementsContribution.java: - id: 31f9ce314466 - last_write_checksum: sha1:5b0cda1f53331f8269766c600e5b95a344c8446a - pristine_git_object: 870c92c204e834a68012aed4586b1cf80c31d3a2 src/main/java/com/gusto/embedded_api/models/components/BenefitTypeRequirementsCoverageAmountDefaultValue.java: id: 94c935386362 last_write_checksum: sha1:d5c9f6108404cd53e375a267175c9434a3d8582e @@ -7936,8 +8508,60 @@ trackedFiles: pristine_git_object: 23c94b0232dffdb0e82fdf85cc60a35f0ba78feb src/main/java/com/gusto/embedded_api/models/components/Blockers.java: id: 0830c0098b4e - last_write_checksum: sha1:06ffee08607fbd469215351290a0fa6ba691c2c6 - pristine_git_object: 495d759a55663d009fff3ecbb4528324539aeb32 + last_write_checksum: sha1:2ef509015ca9fbd459f93ac928fc05d7f623f759 + pristine_git_object: 8ceb4c84022b22c124e4e2c2e66590ece945f871 + src/main/java/com/gusto/embedded_api/models/components/BulkReport.java: + id: bfeb0052094d + last_write_checksum: sha1:9aa9cba727335fa83d8b9636e0cd7cce30b52008 + pristine_git_object: 19ed8ca6e9aa5c3744212c19361e7c2a14af507b + src/main/java/com/gusto/embedded_api/models/components/BulkReportBody.java: + id: 385036a54c61 + last_write_checksum: sha1:2dd7b9ea474a3b0a657ee616324c26677af3b11b + pristine_git_object: 0d2bfc642da81a19c85f024a58555a4b7a60096c + src/main/java/com/gusto/embedded_api/models/components/BulkReportCompany.java: + id: 84d4264d7e9d + last_write_checksum: sha1:0ab0614694d5b18b462c3b3d940cb61ec43b5891 + pristine_git_object: 9ed26081b065ca66097e48b1bebfb282aaa185b1 + src/main/java/com/gusto/embedded_api/models/components/BulkReportCompanyStatus.java: + id: bd94f27a6d1c + last_write_checksum: sha1:a02daf51d44a64f1f9d8188499df88f5640a0926 + pristine_git_object: e41171a055576a6a6494feb460cce82fba74aca6 + src/main/java/com/gusto/embedded_api/models/components/BulkReportCustomReportItem.java: + id: 9e6dd44785da + last_write_checksum: sha1:2bf1d76d7c12ed7e2916efaffb9142c887a3fa2a + pristine_git_object: 079e7d8e2657c066a33b9102a9b40f5febf8455c + src/main/java/com/gusto/embedded_api/models/components/BulkReportGeneralLedgerItem.java: + id: 0e7654908c34 + last_write_checksum: sha1:528cfe3e7bfaf638dcf1bfdf9ecdf682d00deaaa + pristine_git_object: 33f8cbcddebc921b5fceb97f6d9bb573edb97d5b + src/main/java/com/gusto/embedded_api/models/components/BulkReportGeneralLedgerItemReportType.java: + id: 39dd9b840524 + last_write_checksum: sha1:2c4ae18585446d106f8a97c3146b2dc694edbee1 + pristine_git_object: 8770e0cc451acb9f45f564511b6f6a07dada78e1 + src/main/java/com/gusto/embedded_api/models/components/BulkReportItem.java: + id: 4ff9ba9f68e7 + last_write_checksum: sha1:0f03075e246e875d4e18499b7ea14e5b97dafdbc + pristine_git_object: 64784f37a2924f772ffa75280e0e3fe1d3b1a510 + src/main/java/com/gusto/embedded_api/models/components/BulkReportItemResult.java: + id: 67169ac61a64 + last_write_checksum: sha1:598aac96e9c1f4a93285ce7ae092b7a9a015fe7c + pristine_git_object: e87dc67e30a5f40ed14d157c4778635e71763560 + src/main/java/com/gusto/embedded_api/models/components/BulkReportItemResultReportType.java: + id: 1dbcf1ebf8d9 + last_write_checksum: sha1:11fc2848e5ad4a0dd17a573b0d167099106ad969 + pristine_git_object: 555909569b4d4f0ffdc38991494eb306086f0d46 + src/main/java/com/gusto/embedded_api/models/components/BulkReportItemResultStatus.java: + id: 5e9aacbd4f0a + last_write_checksum: sha1:32c9c33c3a60469dcc98a7e9b69089dca23846f9 + pristine_git_object: 18e908badadfa5b386e47e6d215e8010f4979235 + src/main/java/com/gusto/embedded_api/models/components/BulkReportItemTypeIdResolver.java: + id: 4a715a276ef7 + last_write_checksum: sha1:5e820013f3a780cc422bdc55b288c9c1f30c7740 + pristine_git_object: 00c93b353af8313ef420997fec02da3af7f2d28d + src/main/java/com/gusto/embedded_api/models/components/BulkReportStatus.java: + id: 7bbe353391bb + last_write_checksum: sha1:a6a048a673a134f3042368f1c05697f8f3f7f477 + pristine_git_object: ccc4f4a90fb7cdfc065f21a8bef40b382367ed67 src/main/java/com/gusto/embedded_api/models/components/CatchUp.java: id: 51590359d633 last_write_checksum: sha1:5835093acf8aba77d7c6be3f7663bd3a24677c95 @@ -7968,8 +8592,8 @@ trackedFiles: pristine_git_object: f697118605ed924196adea3a7385594296d8e550 src/main/java/com/gusto/embedded_api/models/components/Columns.java: id: 40b0985790a2 - last_write_checksum: sha1:0d72cc5408ba74c1a93b35151ad0973e6f5421fb - pristine_git_object: 02a86d6f0f7d91fae4b9af170b7676b9e54703ad + last_write_checksum: sha1:fffc9cef0c211d842539ac0660783d5a8d2a7275 + pristine_git_object: 398a15a0fc57948baa30597ecfcb995fdb951cc7 src/main/java/com/gusto/embedded_api/models/components/Company.java: id: 261e875ed07c last_write_checksum: sha1:25ae1905fcecf6c635b67cbd439c5cd0194455cc @@ -8140,12 +8764,12 @@ trackedFiles: pristine_git_object: 788df91bcf2ba9f11c7b9259c605ca873b605d38 src/main/java/com/gusto/embedded_api/models/components/Contractor.java: id: d9814f603555 - last_write_checksum: sha1:a9b0301b69c69b2307fac3038618c5fcd6f5c5a3 - pristine_git_object: 2113d068c929b2548e4973b1c04f67050895dde8 + last_write_checksum: sha1:c92b5d5eac6c935f922332152c0c49b1acd6752d + pristine_git_object: 8708333d1d715fd900c85fe3b9aea34312a9f2e3 src/main/java/com/gusto/embedded_api/models/components/ContractorAddress.java: id: 6e0457ce0729 - last_write_checksum: sha1:4f92baa59158c34b4d5501bafa44ca735cee2234 - pristine_git_object: 1fa7b24a60df9d81212d776bcc2b385ee0b6aad5 + last_write_checksum: sha1:27a7d6b6079f9b0efa601957b0db18e22d334809 + pristine_git_object: 3ee66f3b758b8225a403b6a7600444098c2f19cf src/main/java/com/gusto/embedded_api/models/components/ContractorAddressUpdateBody.java: id: 135195b198d1 last_write_checksum: sha1:afa8c1fdae7045f066c520ebff9ea340c78840c8 @@ -8168,8 +8792,8 @@ trackedFiles: pristine_git_object: 18c6050a59f86913ed6918bb96d3c5fbb3c550d6 src/main/java/com/gusto/embedded_api/models/components/ContractorCreateRequestBody.java: id: 958154f73e3c - last_write_checksum: sha1:f87c904940624ff25502ec5dd08beefc2158ca65 - pristine_git_object: f135124f4b986948b54e75e746cffd73e5d28cf6 + last_write_checksum: sha1:d94a05c3f2220eb4b3548fa58621a5482ee2d821 + pristine_git_object: 802f8eb11274f6f91de90e5b7ec47f02b058b3b2 src/main/java/com/gusto/embedded_api/models/components/ContractorCreateRequestBodyType.java: id: e46bebd9dd20 last_write_checksum: sha1:956b963a3de72c1680001e18031bf5ce3317723d @@ -8178,18 +8802,10 @@ trackedFiles: id: 020e4184103d last_write_checksum: sha1:afb8746dd91238e6605e8ff136e3a0b57d37ea2d pristine_git_object: 305408bf06269cfca5923529cf43ca4487f30e49 - src/main/java/com/gusto/embedded_api/models/components/ContractorMemberPortalInvitationStatus.java: - id: 86aa2042a8a1 - last_write_checksum: sha1:04974a16b831f3d754d566b93b915347e1d070f5 - pristine_git_object: b4b6f0ee8626731176d90a3e783b6b6220b1faaf src/main/java/com/gusto/embedded_api/models/components/ContractorOnboardingStatus.java: id: 2fdf1ac29bda last_write_checksum: sha1:60f840b4bca19f9a267275a04b672642a35dbb52 pristine_git_object: ec20e7ce9986d5e247666a03010c5f5db5767a24 - src/main/java/com/gusto/embedded_api/models/components/ContractorOnboardingStatus1.java: - id: 4e4b86240966 - last_write_checksum: sha1:15fe4585339e5af8e445746d50f56c981916201b - pristine_git_object: f4f4384496370496534c5351ca0726cd09d41661 src/main/java/com/gusto/embedded_api/models/components/ContractorOnboardingStatusOnboardingStatus.java: id: 6b11bdedc43a last_write_checksum: sha1:6036bfbcb1d3922f71658c8e0eff1749b5542131 @@ -8220,20 +8836,12 @@ trackedFiles: pristine_git_object: 6be12af68d413936f22884a9b4ba58da0ac704cb src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentDetailsList.java: id: d280084b9a84 - last_write_checksum: sha1:4b458f3f5ecb5c2fd185b87c95fcba7110160c6e - pristine_git_object: 752ec3dc863da695a22a4d40ab93b9d1f1921ca3 + last_write_checksum: sha1:de9a46c2ce364806166622b6136dbefa60182dfe + pristine_git_object: a4974e256ce165564a79a6e3b0cd235ff3d6810b src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentDetailsListPaymentMethod.java: id: d4266c2e813b last_write_checksum: sha1:5614aa31662319ef71e71988d169e01546b845c4 pristine_git_object: b12254c9426fd8500be484ca9c0a8f74aa384292 - src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentDetailsListSplitBy.java: - id: f958bb5bdb27 - last_write_checksum: sha1:1575e9003e3edd9c853aeb9a3c50b1e9277f26ad - pristine_git_object: 89693fd8ae162f34c01919ce57e765d60d14ca8f - src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentDetailsListSplits.java: - id: ebce3ff8eebd - last_write_checksum: sha1:df4c1c853524c0669b7a91bde99924e6b634a184 - pristine_git_object: 4b9b78451043ba6723ff084f3db713603c5e903d src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentForGroup.java: id: 45aa1486186f last_write_checksum: sha1:a1841b7777e85f33256d42d49a172325a5e57338 @@ -8244,8 +8852,8 @@ trackedFiles: pristine_git_object: 2dd471ad7334e0a585393a2e37bc74fd4525ce34 src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentForGroupPreview.java: id: 9c70577387fb - last_write_checksum: sha1:812beb1d0a983f8853f8e910aae355a9bf0b4e32 - pristine_git_object: 9748a9cb3f57768477d772919ca311258a533657 + last_write_checksum: sha1:49cb0c8e9ec5ea6b2863b30bbd234408f7c57d6c + pristine_git_object: 0c74590d937aac43414fbf6a93dcaba83e5d7882 src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentForGroupPreviewPaymentMethod.java: id: e5151e413d2e last_write_checksum: sha1:b957450013eb865f87a505b888e352d795b02200 @@ -8254,10 +8862,6 @@ trackedFiles: id: 2797337f95ec last_write_checksum: sha1:ea3753f5cf347b41c99f7ee649a2ffb382b67837 pristine_git_object: e9e6f0e0da6ccc9656197e653362f14f0ca7a7da - src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentForGroupPreviewWageType.java: - id: dcd5d4c8dc3e - last_write_checksum: sha1:d30181c6016a6fb3977b28bd896ee75c6cec22e6 - pristine_git_object: 4dc79d75a40c1dc1867887d9671e9b248cf641b3 src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentForGroupStatus.java: id: f48c636a6e87 last_write_checksum: sha1:959ddd9bb095cb19ac9ed94bf787211336ac5b47 @@ -8284,16 +8888,12 @@ trackedFiles: pristine_git_object: 1fb8c7e8fbbe7194a4f6d7b5917dcf1f477a628f src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentGroupPreview.java: id: b4a31b4c3954 - last_write_checksum: sha1:5ab54c7c36246d17a887eb5c3427d2d87388b55e - pristine_git_object: fba7fc82f0624bda9142698006258221409210ed + last_write_checksum: sha1:9a53352944442626e51830a9daae7d60eb06ace5 + pristine_git_object: f729e4b451c21b694d5c8438fdf133cb608dab4d src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentGroupPreviewStatus.java: id: af12ec714e73 last_write_checksum: sha1:08247b06d85c593e2ffda4f1ede24e8f538f7ba9 pristine_git_object: 9b1c078ae19cbfd4c746b2aeb2cf9e0323de7a82 - src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentGroupPreviewTotals.java: - id: 8b35875a4915 - last_write_checksum: sha1:5de8e17512677bf22d0faa802be8479cbe466c9f - pristine_git_object: d1b503439d80cd55b6a27736ec635e08a7993d65 src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentGroupStatus.java: id: 67575657aeac last_write_checksum: sha1:1edc7edda47bde33d8b2322e7be28e5e7f0402ea @@ -8314,6 +8914,22 @@ trackedFiles: id: de607313ae31 last_write_checksum: sha1:0776f96422fb9939ddfe1877d8612e6c8b72b5de pristine_git_object: 13c77057fa97d743c472edf60fd40b51ee5db1cc + src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentListing.java: + id: b7775340dce1 + last_write_checksum: sha1:bdde99ee2056124baa599c2a0fcbe9ee484d37a7 + pristine_git_object: 60be8c4297eaa0d1630502969743c75ca07034b8 + src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentListingPaymentMethod.java: + id: 4d98d02f3113 + last_write_checksum: sha1:9db562989be77ec0c089280a3a225b932095ee16 + pristine_git_object: 7ee16b4da36495c1905ef5f6852a716a7bac4c11 + src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentListingStatus.java: + id: 26a0c2149760 + last_write_checksum: sha1:2b9cb1d840970e1209f9139c3bd15af736644baf + pristine_git_object: 878ee006a07a0dd9f719f3d37d22d25a86e5d563 + src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentListingWageType.java: + id: 01de7a6e1d07 + last_write_checksum: sha1:b060213adcf15924c550e0a52a41619660e1bea4 + pristine_git_object: d27c59534870491bdf606e53bfa70e1a25aa55d0 src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentMethod.java: id: 92b6c168a6d7 last_write_checksum: sha1:8bca7402192f24f39cd5f20afdb568c470ba1199 @@ -8336,12 +8952,12 @@ trackedFiles: pristine_git_object: 22e7041c529a7e36bd52e42e16cf1cc68233af00 src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentReceipt.java: id: 0b219166844d - last_write_checksum: sha1:8757e5ed47063c66c3ae619556f489216484d4fd - pristine_git_object: ddeccf454c2d729c04764e46e0787a9438ecf67f - src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentReceiptLicensee.java: - id: 7e5743fee19c - last_write_checksum: sha1:3dad1c202bd00831f76731bdba3cf58de5087bbe - pristine_git_object: 01871ee33602113e06a6c78f8d069d69825ea30f + last_write_checksum: sha1:80a99c4f8a26dda811723cc2e65fdcc44d201ee1 + pristine_git_object: 0f744f875c6c7b079b57d166c59051cf26ba1781 + src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentReceiptContractorPayments.java: + id: 06a74442d72d + last_write_checksum: sha1:f700a43e3b6bc17329e68b42c01380c68e6c8355 + pristine_git_object: b77b969df59dde871ec3409363afbbf4d862dbd6 src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentReceiptPaymentMethod.java: id: 325c1269d38e last_write_checksum: sha1:598990d46c95cb6cc87f035dc68293e3ac9470fc @@ -8356,8 +8972,8 @@ trackedFiles: pristine_git_object: 18c957fdd4014411cea853ffef0b7757ff39240e src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentSummary.java: id: e2b5f41f3e8b - last_write_checksum: sha1:a70fb40be7b0a3c99479d63fb27566c59fb7fb09 - pristine_git_object: 99f55d152e00b2f962eba77287b0f6ee6770a529 + last_write_checksum: sha1:e0883421633769ed9d8e7ba399b67d5c9d04ba71 + pristine_git_object: 0f1929ec97a77766741ec0a65ed1966ec983af7a src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentSummaryByDates.java: id: ac742c798aa0 last_write_checksum: sha1:c097142a62aa80314b594c66d99b4240d6970c5f @@ -8370,18 +8986,14 @@ trackedFiles: id: 134f9e290b73 last_write_checksum: sha1:4a2a089aea9d06e6ffabcec31499d712393f5c29 pristine_git_object: f4df8865c308abd4563ad38d7f670e31814aa0d9 - src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentSummaryContractorPayments.java: - id: b9c5a113e98e - last_write_checksum: sha1:99180b23d8dba3e599e2fa86331bd26db19dcf2b - pristine_git_object: 58ef9eb8b1fe3a0471c0968e86ab3f8e81925b5b src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentWageType.java: id: 954a6abb333b last_write_checksum: sha1:b4a2a63aaa1d40741710dcdabdab41450ff8b457 pristine_git_object: 2b519708a979a7153520ba9949b9374864031fcf src/main/java/com/gusto/embedded_api/models/components/ContractorPayments.java: id: e7e669d454a6 - last_write_checksum: sha1:156ee7459eb9116a7e880c871bd3faef65ba3a89 - pristine_git_object: 3f4960b973c8baaab4cd0e7500e2546470d4b63a + last_write_checksum: sha1:2330a0be1aec7859faf4ef10fc0e40a6dfe96738 + pristine_git_object: db7c962e4b720585b821e544b0052d3705b04eb0 src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentsPreview.java: id: dba093510f97 last_write_checksum: sha1:c38dfd5ba0987fe83aa3b9bd9d17af36bfb1fe9e @@ -8408,8 +9020,8 @@ trackedFiles: pristine_git_object: 543c096aa4569b6e170cf34edd25e7d5044d150b src/main/java/com/gusto/embedded_api/models/components/ContractorUpdateRequestBody.java: id: d716e70f4a61 - last_write_checksum: sha1:7d00ad296c27bd10070034528f8d8eb4ae166fbb - pristine_git_object: c136203eae251b08b42b8703f93de39a3f15b86f + last_write_checksum: sha1:53ddd44a2753aa1d98e886694133785e90b4814f + pristine_git_object: 121c74ee175b240ae910fde672b163473af862cd src/main/java/com/gusto/embedded_api/models/components/ContractorUpdateRequestBodyType.java: id: f0a80880716f last_write_checksum: sha1:a2a15ab526bdbd252ac8a856f61a4e810d3bb1a2 @@ -8418,14 +9030,18 @@ trackedFiles: id: 6b63e9acb53d last_write_checksum: sha1:d91bc91b09d0cfbaf92161ed7c1ac4da60f9129e pristine_git_object: e75580bb1cddcf4492e045ca743882c710c81678 + src/main/java/com/gusto/embedded_api/models/components/ContractorWageType.java: + id: 43b246758799 + last_write_checksum: sha1:4e55ea79c7e9197d146c5dd61c0358b8f9fe6e42 + pristine_git_object: 9f72f16023862cc2eaf866dde3aa534a34a0f70b src/main/java/com/gusto/embedded_api/models/components/Contractors.java: id: 77191fcd7366 last_write_checksum: sha1:39875de974ec54795074f83cd5fd675b45a9fafe pristine_git_object: 1b552f82129acd108c16cdf664f714069b19be67 src/main/java/com/gusto/embedded_api/models/components/Contribution.java: id: d2bb5624ff66 - last_write_checksum: sha1:11c3a37cdee4799bd3330373ddd0b904a4a9d61c - pristine_git_object: b065dad58050ec15999ed1c67660c5acb083da27 + last_write_checksum: sha1:8d5e2fa16a92d0db48614b6c528742e6cec84995 + pristine_git_object: 796417830310b74d91c22ee480c11e33e02fe80c src/main/java/com/gusto/embedded_api/models/components/ContributionExclusion.java: id: c7e5fa4a04d3 last_write_checksum: sha1:8fbcb845cc712181279c0d440dff4a6ab27f6a4f @@ -8442,6 +9058,10 @@ trackedFiles: id: eacc3ebf65fb last_write_checksum: sha1:15520aaa27b119c3192b4971ab75ef18c4dcd1c3 pristine_git_object: 1766f7b71260becbfed6e7f1fa7453252334aa0b + src/main/java/com/gusto/embedded_api/models/components/CreateBulkReport.java: + id: 5cccf3527b17 + last_write_checksum: sha1:26c12269d0674e099d4c411a773ccb697eaf62cf + pristine_git_object: c31e38b19f588f8acfc0e09ef7f6b598a8153f83 src/main/java/com/gusto/embedded_api/models/components/CreateFlowRequest.java: id: 36048d8befb9 last_write_checksum: sha1:57264b7d2d1f37ae821f0b0800c73310aab3f358 @@ -8456,12 +9076,32 @@ trackedFiles: pristine_git_object: 9d1783938b40995312e20e3b9d3b0904d14697a7 src/main/java/com/gusto/embedded_api/models/components/CreateReportBody.java: id: b70a9755c028 - last_write_checksum: sha1:ece8dc29dde87c7dafd1c6b937454cc149ec74b1 - pristine_git_object: 5ebbf0fe48fd3d927dc5267aa77b8f1424dbc1b3 + last_write_checksum: sha1:f1f0e5c43b83198720213de1ed44c938cb05f5d5 + pristine_git_object: a5f18d15e7b469ff089538557d28cd63fe6003f3 + src/main/java/com/gusto/embedded_api/models/components/CreateReportBodyColumns.java: + id: 6669d7b3b52c + last_write_checksum: sha1:c543aeefdf2e45ad0564849942bfcad2d7adf3a5 + pristine_git_object: f134890fba214002b05494dcb81227af551906c5 + src/main/java/com/gusto/embedded_api/models/components/CreateReportBodyDateFilterType.java: + id: 29103155327c + last_write_checksum: sha1:34c99a91319f2f22a084a30b25d0901a0dd4efbe + pristine_git_object: 21d30423d19662ddba7d4f178dce6e61dc67912a src/main/java/com/gusto/embedded_api/models/components/CreateReportBodyEmploymentStatus.java: id: 56ef7351bc0d last_write_checksum: sha1:cb0dc2d52d0c15da416ff8596102fa62d41ef7db pristine_git_object: 5d0ddd18c19967806b1180eca20e27fb49662466 + src/main/java/com/gusto/embedded_api/models/components/CreateReportBodyEmploymentType.java: + id: 531550dd04dc + last_write_checksum: sha1:2ef32913a17ef97fd16497b3afb2f2da3de38144 + pristine_git_object: 2124e6197f1cfe74120e10f4c69b629bddb03c49 + src/main/java/com/gusto/embedded_api/models/components/CreateReportBodyFileType.java: + id: 7a2a7264a9b2 + last_write_checksum: sha1:6e550763e8e9fe4fb339401f236288f7e1663e42 + pristine_git_object: 859574050ef9dce1af542ff1f2b95d5b1c63a36a + src/main/java/com/gusto/embedded_api/models/components/CreateReportBodyGroupings.java: + id: 58d07954a620 + last_write_checksum: sha1:3c2936ea7d6510639b0e8eda0cafe910be0d40f3 + pristine_git_object: 90f0a00cfb1789931cb843920123400e6e953c03 src/main/java/com/gusto/embedded_api/models/components/CreateReportBodyPaymentMethod.java: id: e3aee5372df3 last_write_checksum: sha1:8b7a9f04360b7c40124cef51427fd6e4f40fffcd @@ -8478,6 +9118,14 @@ trackedFiles: id: 64d0655276fb last_write_checksum: sha1:061ba5eeedbe7470790e4f093dbae9aca978c18b pristine_git_object: 37313baac15d256943c570ec5358be5eec244c61 + src/main/java/com/gusto/embedded_api/models/components/CustomWithholdings.java: + id: 5c0718b1b9c6 + last_write_checksum: sha1:bc3a068db20e0caa57f97898999aaf15e193d269 + pristine_git_object: d75daa3df3c8cd5ee6f15a899626e721d754901e + src/main/java/com/gusto/embedded_api/models/components/DateFilterType.java: + id: 431ee6d2b9d8 + last_write_checksum: sha1:48414c578db8f49583d19ab9fd5383107c5aebf9 + pristine_git_object: 7798a4e726e5dbbb054b2b2a33e1abf570af0700 src/main/java/com/gusto/embedded_api/models/components/DeductAsPercentage.java: id: c5b32bd54e58 last_write_checksum: sha1:7686b723f8a088d8ff77b954dc5d19611bc60bfe @@ -8532,12 +9180,16 @@ trackedFiles: pristine_git_object: a2ab3700eb5851274865563268f07c9824b58e75 src/main/java/com/gusto/embedded_api/models/components/Document.java: id: ab039802747f - last_write_checksum: sha1:a9cb62c7f3cfc86c7fef83d7dbe866a55842da74 - pristine_git_object: ba5e77b78a82d28f32bd7443bd494eeb57699eab + last_write_checksum: sha1:869c7d646573f59c58ca074831bb837de6af283d + pristine_git_object: aa30bfee534640f1354f4fb0db35c7d74a6ebcbc src/main/java/com/gusto/embedded_api/models/components/DocumentPdf.java: id: 629fa41a2e7d last_write_checksum: sha1:36095e7e0960125eb7c6e7fe328aa1281d59f0fe pristine_git_object: 02ac2d68630aa343fc110aeebebfd0b6e8e522b7 + src/main/java/com/gusto/embedded_api/models/components/DocumentRecipientType.java: + id: aa7dc0db6da8 + last_write_checksum: sha1:d35b8527b731438e4a63b4fc9d12d78426432557 + pristine_git_object: 3fe64097b11b1459ddee3e1e32f959c9922cbcaa src/main/java/com/gusto/embedded_api/models/components/DocumentSigned.java: id: 53e1c3c4fcdc last_write_checksum: sha1:f60c28a1591bdcf7d631ab790e010cb2f8357da8 @@ -8604,12 +9256,12 @@ trackedFiles: pristine_git_object: 8c27c6b7cdaaff986d905a3c4b8359ad89013ca0 src/main/java/com/gusto/embedded_api/models/components/Employee.java: id: fd86c135114e - last_write_checksum: sha1:511ff229d624a44ffd2981e13646fa20799e1d1a - pristine_git_object: a857a20c3f2717b6edc60c0e90ebc27aff03c2f5 + last_write_checksum: sha1:e62d49593aaad042d4ee7c78d42b59e955c0cac0 + pristine_git_object: 646d2a3030d294b3f6e464db966339b5de10346a src/main/java/com/gusto/embedded_api/models/components/EmployeeAddress.java: id: 4404924c255d - last_write_checksum: sha1:bad729c7f4d99e6812e61e89ca68b172a6e479d0 - pristine_git_object: 98a00f21e19e812a60ecaaf7ca2874f737db3c9e + last_write_checksum: sha1:f1c583a9d9c2164f82fb7cc8d32f14a94825e2ab + pristine_git_object: 27006cece19d8bb3410392562caae003e67ab1ef src/main/java/com/gusto/embedded_api/models/components/EmployeeBankAccount.java: id: 85da7fc53902 last_write_checksum: sha1:eb4b3a45f2ef98ad4d500d96aef68dcf06293fb8 @@ -8628,12 +9280,16 @@ trackedFiles: pristine_git_object: eac825b46a74bc953d85187a97e6ecb181bec15c src/main/java/com/gusto/embedded_api/models/components/EmployeeBenefit.java: id: fb4aeb646f02 - last_write_checksum: sha1:f615d584d1cebd84ca977d2fe304f4b6314d3fd5 - pristine_git_object: c3b0338b45ced6769a330828362e1d5476243434 + last_write_checksum: sha1:1b5b7127a77ee9811777b5cf1cf4572e0ae4c2d6 + pristine_git_object: e1881fcfcbfe36d2ccb414436ea08f8b1e114bc1 src/main/java/com/gusto/embedded_api/models/components/EmployeeBenefitBulkUpdateRequest.java: id: 4efaedf4b2d0 last_write_checksum: sha1:a6ded0901f225f8656e83850e8808d5cab9de321 pristine_git_object: 47a5435dc3e874c70d16d381d85a56812d5cd7f4 + src/main/java/com/gusto/embedded_api/models/components/EmployeeBenefitContribution.java: + id: 78e6fcda686b + last_write_checksum: sha1:b02c4df4022a02ce3a8241941e820dfff03b8af0 + pristine_git_object: f899daec1977e890b4349aa8f821b9e2f153a6ca src/main/java/com/gusto/embedded_api/models/components/EmployeeBenefitCreateRequest.java: id: 23ff08fe48e0 last_write_checksum: sha1:97510518055726e6fd6c804641c7a782ed039e2b @@ -8720,12 +9376,8 @@ trackedFiles: pristine_git_object: 4db6ef3741907f3252fccda8c8fe245dc54af511 src/main/java/com/gusto/embedded_api/models/components/EmployeeCompensations.java: id: d00c1e76259d - last_write_checksum: sha1:b19847e1baed46c6e8c629fb567a41c58adca3c2 - pristine_git_object: 9d5f0d2ee011cffb7429c1141649e11144fc6faf - src/main/java/com/gusto/embedded_api/models/components/EmployeeCurrentEmploymentStatus.java: - id: 21e2544751a3 - last_write_checksum: sha1:4ead73a702915dbb220b94a345c2636ff2cca6ff - pristine_git_object: aa4227d5a6d67ad95e1ab6ca67b6daea87590975 + last_write_checksum: sha1:e74f1980b1d9e223b5e359851d8d79cc0900f368 + pristine_git_object: ecf3f5558f5c6fad8aa4694b374f5b63bf24869f src/main/java/com/gusto/embedded_api/models/components/EmployeeCustomField.java: id: be98c6ccb96b last_write_checksum: sha1:ebce9b48f31e3429b37da779127b8cc1f88078b2 @@ -8770,22 +9422,22 @@ trackedFiles: id: 9983c3586f18 last_write_checksum: sha1:38ad4ef1cb78544a90373f9dad0585da021419da pristine_git_object: e6f4c1614e8a325b54e826c81204d3be4661549e - src/main/java/com/gusto/embedded_api/models/components/EmployeeOnboardingDocumentsConfig.java: - id: d17baf8c4687 - last_write_checksum: sha1:0c520bb05ad797b0b229da2abee07f2c662b9a76 - pristine_git_object: 67f49fd22fc996c8fa59039172c1a7f03fdba1d0 src/main/java/com/gusto/embedded_api/models/components/EmployeeOnboardingDocumentsConfigRequest.java: id: 631b984b52f6 last_write_checksum: sha1:f06b62dd93a99ec59a180e061b369d68882eb6c4 pristine_git_object: 87bb6fbe5b1589de0087db07708d169d17fd1ec9 src/main/java/com/gusto/embedded_api/models/components/EmployeeOnboardingStatus.java: id: 12f67c1b31c7 - last_write_checksum: sha1:a38920c87d21aa2b9504ebd859f6857e2da08715 - pristine_git_object: e7aa89cab0f20afe3fe103e30198842c58dea484 + last_write_checksum: sha1:06099298e528f8379e559927e5c22291b13bd1b8 + pristine_git_object: b33c6bedd463a0c331544ed279594654707a204c src/main/java/com/gusto/embedded_api/models/components/EmployeeOnboardingStatus1.java: id: 472c6f5e36a6 last_write_checksum: sha1:afe6e7c4e797c0891da4d3bf3b389bcff54033a7 pristine_git_object: 10cd6551dadef5d7ba4bdd172729acac839fa899 + src/main/java/com/gusto/embedded_api/models/components/EmployeeOnboardingStatusCategory.java: + id: fd202ec1d3d9 + last_write_checksum: sha1:256263e89989c39af86a2c21540d6e7b06b17801 + pristine_git_object: e203d6f41ccc311d83439b79c8ce908c7a27cf21 src/main/java/com/gusto/embedded_api/models/components/EmployeeOnboardingStatusOnboardingStep.java: id: 92425ca3749b last_write_checksum: sha1:8fca30521b3132b4c95712573f838ca0295df347 @@ -8800,12 +9452,20 @@ trackedFiles: pristine_git_object: 042a7da67f23a3d8ead732c2e7a6eff5148fc81f src/main/java/com/gusto/embedded_api/models/components/EmployeePaymentDetailsList.java: id: 4d1b8e5cea56 - last_write_checksum: sha1:f63950109db4d37ea14e12ba93765cb3d4ed86a0 - pristine_git_object: 14d8b6518c34db4bf4425acee01083863d9caca9 + last_write_checksum: sha1:82673dc94452f3bade378719c20a28a9a2ba7dcc + pristine_git_object: 7d5ad9d351f35c857bd67ac2d108b79131223e14 src/main/java/com/gusto/embedded_api/models/components/EmployeePaymentDetailsListPaymentMethod.java: id: b9460ad19382 last_write_checksum: sha1:fe9cd0ce06604c8a6744ce42187d8ecc0aa6f39a pristine_git_object: d9d528623167803b0c69b3a6ffa0b1199d6d2a79 + src/main/java/com/gusto/embedded_api/models/components/EmployeePaymentDetailsListSplitBy.java: + id: fde05e28fabe + last_write_checksum: sha1:423f1922aa2ce58a59bf74d597fc1afc46c7f363 + pristine_git_object: bd142eba4ed79eae409de788310cfd35f966614f + src/main/java/com/gusto/embedded_api/models/components/EmployeePaymentDetailsListSplits.java: + id: bf39a3f7664b + last_write_checksum: sha1:ce1127c4575c108113c11603d7869873555c0df5 + pristine_git_object: d452ae1db58d806674b438132484d5ed8928684f src/main/java/com/gusto/embedded_api/models/components/EmployeePaymentMethod.java: id: 018e8f5325c1 last_write_checksum: sha1:b9e5c9078e34d2ca5eaf89b48053bc7b59d55cd0 @@ -8840,8 +9500,12 @@ trackedFiles: pristine_git_object: 53c398260a83dc4f4e65f72bf674fff4f1b99a89 src/main/java/com/gusto/embedded_api/models/components/EmployeeStateTaxInputQuestionFormat.java: id: 5d75a34184c4 - last_write_checksum: sha1:98bd3ac78ffddb64efa7ef42c69d0a1685c87105 - pristine_git_object: 36e686ef3132a708e8541d55b0d23d7f27473eda + last_write_checksum: sha1:1c73532b70c445d7814a40781b636f1086473eb9 + pristine_git_object: e352420303e3db5f28446a4997bb5829256f2a62 + src/main/java/com/gusto/embedded_api/models/components/EmployeeStateTaxInputQuestionFormatOptions.java: + id: cbd25c549388 + last_write_checksum: sha1:55f3bf34c5f37b3e54f8eaed3b651be09a87ee27 + pristine_git_object: c4629c01195bbb9a769386e88f8fe3b45e86402a src/main/java/com/gusto/embedded_api/models/components/EmployeeStateTaxInputQuestionFormatValue.java: id: 41213be24736 last_write_checksum: sha1:3e543f682e65af05b6a3666377b6747da86a89a5 @@ -8876,8 +9540,8 @@ trackedFiles: pristine_git_object: c6c0412aef7926a56ab318e1a7a51cbfd40a4354 src/main/java/com/gusto/embedded_api/models/components/Employees.java: id: 22ce7bece476 - last_write_checksum: sha1:86fbdd59a154002c19ee58779c895ef41f631ad2 - pristine_git_object: 4410fd374380cf08fa354afd1a9ec062911b2775 + last_write_checksum: sha1:940cf8242e3a00a79b52e82f8b757d1ed606373e + pristine_git_object: 74f70f1b339f99c4b5006ad65dd402197d72aee2 src/main/java/com/gusto/embedded_api/models/components/EmployeesAnnualFicaWageReportAcceptance.java: id: 67a423e11b9c last_write_checksum: sha1:8bb6cdd0b0cb6cb8de56b8f5c1a767c223bac22d @@ -8892,12 +9556,12 @@ trackedFiles: pristine_git_object: af729d7518d8145cf5e6e3703423811870334329 src/main/java/com/gusto/embedded_api/models/components/EmploymentStatus.java: id: f5bb2b976f0f - last_write_checksum: sha1:7cfb47d66e11ad2a70a834d47e5f096e41168742 - pristine_git_object: d6cf5f4472b5165b732ffedda3f75de6bbccacd3 + last_write_checksum: sha1:07689580e4cc2d8092e587f96ec9334e1ea0c87d + pristine_git_object: 9888a61704d8fa93a5ce8e34fc4275e6708c0956 src/main/java/com/gusto/embedded_api/models/components/EmploymentType.java: id: 6e405651cd7b - last_write_checksum: sha1:0d105dd684ac3247ef668955d122808ccf93ee7b - pristine_git_object: 938e067c71c972fa32e34595513b31c9675c228f + last_write_checksum: sha1:3f9a2d41ec303a722de69d867f4db6f280461a3c + pristine_git_object: 38513e7f2c4299d2f3a5276ae7fb363fb86cfacc src/main/java/com/gusto/embedded_api/models/components/EntityErrorObject.java: id: 0025a4769c17 last_write_checksum: sha1:adf545712363148cef987c08597eff038a18e223 @@ -8916,8 +9580,8 @@ trackedFiles: pristine_git_object: bd8f08c159f8b3745cdbd3a7216757a761e16d52 src/main/java/com/gusto/embedded_api/models/components/Exclusions.java: id: acdfceb03a2f - last_write_checksum: sha1:86d697c95d907e1a92c397b9d7c6507605bce65d - pristine_git_object: 217dfc9e8819d1cd87191176f6a563b82fc3090d + last_write_checksum: sha1:7d877f8a88a626b030d404f42f958a244364fa95 + pristine_git_object: d241366f48ddd0636fb4208654c56279e20c3bd5 src/main/java/com/gusto/embedded_api/models/components/ExperienceLevel.java: id: adfde72e2274 last_write_checksum: sha1:e5b0caa84c8b09766a68ecacc9a0c00673c047c1 @@ -8928,8 +9592,12 @@ trackedFiles: pristine_git_object: 5b88d69614569711e6c62ee528d1a234fc2963b6 src/main/java/com/gusto/embedded_api/models/components/ExternalPayrollBasic.java: id: ad385c0555e5 - last_write_checksum: sha1:88eba9f6c76bb7b780e3af5f3325305c1f23aa31 - pristine_git_object: 5800356a3ab70ef81290c39ee0c68e9e8333b516 + last_write_checksum: sha1:d2bdb2d1a1321b302e6d636f9e4cafd01082d00b + pristine_git_object: eb68c032c24ad1090b5cbb3418116b701dcd43de + src/main/java/com/gusto/embedded_api/models/components/ExternalPayrollBasicStatus.java: + id: c41aae7a7936 + last_write_checksum: sha1:0bff565b74c6dcb9a1bfcbcabae1cd120951f6f5 + pristine_git_object: 89b763541dbfc983b437395d1ecc5a495d72f78e src/main/java/com/gusto/embedded_api/models/components/ExternalPayrollCreateRequest.java: id: e64bb89f0725 last_write_checksum: sha1:5573b6e982af452d97df177c9af4cdb4c446862a @@ -8978,6 +9646,10 @@ trackedFiles: id: 8a0adeea11e9 last_write_checksum: sha1:d5902c240c6b2b787f15f44d3344c51a6cee2799 pristine_git_object: ec1bbbe23c9ac763da792054f462cf7a00e4fc40 + src/main/java/com/gusto/embedded_api/models/components/Federal.java: + id: ab1b3540a3f7 + last_write_checksum: sha1:ea5040a55508a0101051a02101693500cec96ddb + pristine_git_object: 4c205de56b2ba3bcc35cf966804278be40316823 src/main/java/com/gusto/embedded_api/models/components/FederalHolidays.java: id: f76383f768a7 last_write_checksum: sha1:dac66e59fffbbf9e4fda834ea12a8c318540887b @@ -9002,14 +9674,18 @@ trackedFiles: id: 78f99e65dd9f last_write_checksum: sha1:32cc24074fc17f27364a9a4c995c844289705832 pristine_git_object: f72e0fdf1dd5a99d58cc5d8b0892e8ef1fd5f833 + src/main/java/com/gusto/embedded_api/models/components/Field.java: + id: cbaa830db706 + last_write_checksum: sha1:2025b6a14e5a63353ab9dc18ca27faaa69f2d7f5 + pristine_git_object: 0e2fb949c6483256013736463abb6dee599cef5b src/main/java/com/gusto/embedded_api/models/components/Fields.java: id: 287560ac30bf last_write_checksum: sha1:a54e3b636337ef9af6e359607354ac2e4862d7dc pristine_git_object: 28267e05a409fea6271a25ea980b95a8ee46e6fc src/main/java/com/gusto/embedded_api/models/components/FileType.java: id: 37096f8f7a14 - last_write_checksum: sha1:3eb19ec176c6360f52deff64f1d1531d9403f5d4 - pristine_git_object: 1050eed06a1faf6ec1fe26144c40cf3abe82812d + last_write_checksum: sha1:edc22ee4e0315ec0a38e9eb5b271a9b525c2ab21 + pristine_git_object: 07ce3b749bd4c07ddaea4eeb00a596c153450864 src/main/java/com/gusto/embedded_api/models/components/FilingForm.java: id: 33f8d0250dfb last_write_checksum: sha1:1ac413689cb69c5528b21a8ce78a0cecb43710d7 @@ -9084,8 +9760,12 @@ trackedFiles: pristine_git_object: 10ba1327374f519ac64f7141d99562007782c9ad src/main/java/com/gusto/embedded_api/models/components/GeneralLedgerReportBody.java: id: ad4f732ddb6b - last_write_checksum: sha1:97240cd3af345cbd3b8426f7b64b2b960e9fc642 - pristine_git_object: 442fb10bd932a6a4ab1e2e823eaefb568928352d + last_write_checksum: sha1:4da38e76ca020bcc78df18ecb05111160834a74f + pristine_git_object: d017395c451bae247a0bbcb54fbc26242a9a5e10 + src/main/java/com/gusto/embedded_api/models/components/GeneralLedgerReportBodyAggregation.java: + id: 7779f19be0e3 + last_write_checksum: sha1:4e5f2facd72755d3eb74392eda100cdb1b908a4a + pristine_git_object: 27b39509201e5471a0b827994406b3b6c32bebbc src/main/java/com/gusto/embedded_api/models/components/GeneratedDocument.java: id: 90a7fe618d09 last_write_checksum: sha1:abfa3155688a6eae8b09b096865e5a25bd0001c2 @@ -9100,12 +9780,8 @@ trackedFiles: pristine_git_object: 5052e6931097c8d734290d24c28986644c6df367 src/main/java/com/gusto/embedded_api/models/components/HistoricalEmployeeBody.java: id: 4fd1d854ee38 - last_write_checksum: sha1:b9b5612e0c9bfd55a6beed3baa6e36b9b5c3b43e - pristine_git_object: 0163491c318454f0efc6167145341c90b1ca9f50 - src/main/java/com/gusto/embedded_api/models/components/HistoricalEmployeeBodyHomeAddress.java: - id: da43dd36f3ae - last_write_checksum: sha1:f325a185bf151f0b12d58c3525b061409767a0b3 - pristine_git_object: e95386f927e90d44816f3abba3b53b6b2243dcf9 + last_write_checksum: sha1:350b366df1755f8a20e133b8fd3db2fdfcc18f0c + pristine_git_object: 0b456ff57b8f37cb52f8a9e6dd595f20aae344a1 src/main/java/com/gusto/embedded_api/models/components/HistoricalEmployeeBodyJob.java: id: 6ac6693c93f5 last_write_checksum: sha1:77d8cb1aa54a842a791745229248925e6c183331 @@ -9176,8 +9852,8 @@ trackedFiles: pristine_git_object: 1e099d4949b05d071881d3a93a16fb4678b2d86f src/main/java/com/gusto/embedded_api/models/components/HomeAddress.java: id: 6e5daf14d0ca - last_write_checksum: sha1:445d426cfa2d34ce38c0fe346479e2d982e50bf2 - pristine_git_object: 53e3c2a08621b41a0c7b4cefb1d6f8831de1edac + last_write_checksum: sha1:51b731c9a9f72d6db73a6afac1e9b88ccf178959 + pristine_git_object: 111160153d08af228300247664234c2465601284 src/main/java/com/gusto/embedded_api/models/components/Hourly.java: id: 96ee54b5fb50 last_write_checksum: sha1:b5255a163b340ae2b0c058caa83a67e66cd83d7d @@ -9300,12 +9976,20 @@ trackedFiles: pristine_git_object: f455166425e0a103a922ea36ca9b0917feb6f8ee src/main/java/com/gusto/embedded_api/models/components/Location.java: id: 4ef5f4b04569 - last_write_checksum: sha1:b1e4896a9c145e74d0b7ebb6bdaa190cb1713618 - pristine_git_object: 543412f9a43be29331a9e932f743b82c4d0562fd + last_write_checksum: sha1:474cbdf9a9929843a664f2fbb1e26655b4424718 + pristine_git_object: 5e65a4a0912d3c1bde735712ce1cd1ad0e648cc7 + src/main/java/com/gusto/embedded_api/models/components/MemberPortalInvitation.java: + id: 776275a261db + last_write_checksum: sha1:24fe7b51e1f786bb2647b58363756adefb03756a + pristine_git_object: 6af1765dda7f63d53eeb60cf865c8e9d68dadf50 src/main/java/com/gusto/embedded_api/models/components/MemberPortalInvitationStatus.java: id: c5a37a4d79e1 - last_write_checksum: sha1:08fda92155a7d65702b9a10994cd71c4ddbdc21b - pristine_git_object: 1a8cd372e408593c3645de7f4d67c29f59552398 + last_write_checksum: sha1:c551b0a9bd848152623991112a65829651dcddc9 + pristine_git_object: f1356c5c3dfd7bf2d4e6dc1841e9e16e593c0ce7 + src/main/java/com/gusto/embedded_api/models/components/MemberPortalInvitationStatus1.java: + id: 07574bd17d5d + last_write_checksum: sha1:07f58df9e75b9a7cc6033a468bb8407971d17273 + pristine_git_object: 97b76ffe2a0aa00f97bfd35835cef8e6079548d6 src/main/java/com/gusto/embedded_api/models/components/MemorialDay.java: id: fb1af61e910d last_write_checksum: sha1:b491709e682a5d54917dc602c2f86926202795a9 @@ -9372,16 +10056,20 @@ trackedFiles: pristine_git_object: cda80201051682c33c52d914935fc429b4714109 src/main/java/com/gusto/embedded_api/models/components/OnboardingStatus.java: id: 57e5d33b50db - last_write_checksum: sha1:0f44a8c20953125256b9118211f44947fa0f6617 - pristine_git_object: 3b1d193185131830037a44d8aa29df049b5a55c3 + last_write_checksum: sha1:67d5c949131af15e72ec0203752cb5d89ea4f727 + pristine_git_object: 5b079e0d0abc98b25962b6db7c781338fa0cf7e7 src/main/java/com/gusto/embedded_api/models/components/OnboardingStep.java: id: df41abd5bc6f last_write_checksum: sha1:96bca2efcc3193c06bac9869120ec2695a3c5ef0 pristine_git_object: 33505585d078dc37ff65b5ad1adbe11fd2ebed5f src/main/java/com/gusto/embedded_api/models/components/Options.java: id: 5007fc132f38 - last_write_checksum: sha1:031a8f7b1bea2a2004ffbb233abeb586ea1ccda4 - pristine_git_object: f9d3aa9088ea29ae5c6bd5781952f1caf9f9c964 + last_write_checksum: sha1:9a407e73a2b416ed38b98f9685c74f2d7f2516b7 + pristine_git_object: ca5b7457d2e1f05665e3d892c5b4c8e8736d11d3 + src/main/java/com/gusto/embedded_api/models/components/OverrideType.java: + id: 478899bc1f34 + last_write_checksum: sha1:efbb691770dd831b378cf89ad67f07c6cf4ee28b + pristine_git_object: d8636958a84c37bed30c80044a136f0f7d598a88 src/main/java/com/gusto/embedded_api/models/components/OwnerType.java: id: 08f9794bdcf4 last_write_checksum: sha1:719a9ff57c82caf615711df018a7bc20aad081ff @@ -9414,6 +10102,10 @@ trackedFiles: id: b485e05b231a last_write_checksum: sha1:019c4f568ac149a696af4c33a46c41b36d8de223 pristine_git_object: ef650ba70c59e6690caa5e6de52c55b02dc2c34f + src/main/java/com/gusto/embedded_api/models/components/PartnerManagedCompanyDisassociateResponse.java: + id: 55858b69e512 + last_write_checksum: sha1:030c96dff3dd3ecd948e93559fccdfc9733fbd5a + pristine_git_object: 0c3c819af6b1319d856c50b7bf4fb7832ef77367 src/main/java/com/gusto/embedded_api/models/components/PartnerManagedCompanyMigrateRequest.java: id: 462c4a2b4326 last_write_checksum: sha1:8592a9d7d3719447388a9a1ab011fc89a8d038f9 @@ -9456,12 +10148,16 @@ trackedFiles: pristine_git_object: b9cc709ff6b97de5cee85c1742925816ee9062b0 src/main/java/com/gusto/embedded_api/models/components/PayScheduleAssignment.java: id: 06c8ac314a55 - last_write_checksum: sha1:77043ab48bea196fa00dc07a231b81a7a90bc008 - pristine_git_object: 5b44aeba2a9675350b8d61a3ee412ea7a7829286 + last_write_checksum: sha1:79501a82274d523e6bef3e6df46be949291db48f + pristine_git_object: af03d5c1c57cb7c3c12bc15a0b053ba06c17ba51 src/main/java/com/gusto/embedded_api/models/components/PayScheduleAssignmentBody.java: id: f190bc026408 - last_write_checksum: sha1:0cdc8acde641dfcb29f5785d3a15bf636ff9002e - pristine_git_object: 9e3ea94077f359d7a82e49b21d03668a41b3462c + last_write_checksum: sha1:56f01c2231bcf921b22655e23846984b834138a4 + pristine_git_object: 11f818c4f83760478dd37c784a64b52f32334683 + src/main/java/com/gusto/embedded_api/models/components/PayScheduleAssignmentBodyEmployees.java: + id: 4a066df116ee + last_write_checksum: sha1:3ba4709b603c46399e79b866e871c416a378427d + pristine_git_object: de90067c76338c3b947b98c7947cc90bfe4e4987 src/main/java/com/gusto/embedded_api/models/components/PayScheduleAssignmentBodyType.java: id: e38e4a5990ba last_write_checksum: sha1:b54472d5f7a5ff6129b6818617f9a662b80bb572 @@ -9494,10 +10190,14 @@ trackedFiles: id: d0f785e95e6f last_write_checksum: sha1:629d7598e10b4315f53ddfe6a63d84028ed5d24a pristine_git_object: 9f59f0c5c9d0df691dd775cdbdc60bf72a68696a + src/main/java/com/gusto/embedded_api/models/components/PayScheduleAssignmentType.java: + id: 1d240295689a + last_write_checksum: sha1:c27d853e9948544b01884cc8ddc82dc1fcbe06c1 + pristine_git_object: 692793911912c6fe026f75f063e32a390197394c src/main/java/com/gusto/embedded_api/models/components/PayScheduleAutoPayrollEnablementBlocker.java: id: eb366c65b7d1 - last_write_checksum: sha1:818381d58028f912ba4daedba25336781955b2d0 - pristine_git_object: 1cdead7dfb79b9ccbfd25a1f4dc2b9ac5e092362 + last_write_checksum: sha1:2b11e78910d15cd54889cf5131cd6858d9b4c109 + pristine_git_object: 260ff5baba1ebc0df6f6c2fc935048cf99c57165 src/main/java/com/gusto/embedded_api/models/components/PayScheduleAutoPayrollEnablementBlockerMetadata.java: id: 9bb733f57e83 last_write_checksum: sha1:c792c0781653d67f6d3fd8837807e0efbc9b6031 @@ -9560,8 +10260,8 @@ trackedFiles: pristine_git_object: 643548c109f1e8d3100f5e6f48b96d3b0b950c95 src/main/java/com/gusto/embedded_api/models/components/PaymentMethod.java: id: a838e597e388 - last_write_checksum: sha1:2d9c3d5599b96a88762fa1b55cae45ddb5ba6965 - pristine_git_object: fa1cfcc09317966def41ff9c4cc19f3d1370139e + last_write_checksum: sha1:be71569e6bd4dd5605ebf7c84747db4379b0e4f9 + pristine_git_object: be45b3da77e434aa125bfaaac576b4f3ea0a36a4 src/main/java/com/gusto/embedded_api/models/components/PaymentMethodBankAccount.java: id: a7e8c48294bb last_write_checksum: sha1:a8d5dfd2f0461055a056afb4c4f40998da7ba584 @@ -9590,6 +10290,46 @@ trackedFiles: id: c3457c719c74 last_write_checksum: sha1:2139ee7a47c142387d9a40f4fe69cea09f1de698 pristine_git_object: 947ce1dcc1cd7a4899fc18373100518b0e0f4331 + src/main/java/com/gusto/embedded_api/models/components/PayrollBatch.java: + id: 24cda74f32e8 + last_write_checksum: sha1:59ccd7e9bde51ae55932fae0df662c9cee343817 + pristine_git_object: 774a8187c8c7e363e248ccabb55c3a3d8c20c0f4 + src/main/java/com/gusto/embedded_api/models/components/PayrollBatchResults.java: + id: e0c6716b5ff8 + last_write_checksum: sha1:60b04d40011b29a6ea930565af72b26f901811a7 + pristine_git_object: ef54e1b390b6e329701724da0bc31e6188906e74 + src/main/java/com/gusto/embedded_api/models/components/PayrollBatchResultsCategory.java: + id: be1d43dcc9a7 + last_write_checksum: sha1:f2f36555378e7b11fae7ad2161d0e5c77c01efde + pristine_git_object: 74e1ca15757d45268f44a8e2add7b8cd573e07db + src/main/java/com/gusto/embedded_api/models/components/PayrollBatchResultsEntityType.java: + id: 59c6539c4e8b + last_write_checksum: sha1:778722acc350369d2220ca3265b2cc5fecfa603a + pristine_git_object: 036c72b86c4f9bd96379bb461397de77be2b3872 + src/main/java/com/gusto/embedded_api/models/components/PayrollBatchResultsErrors.java: + id: 019a67074572 + last_write_checksum: sha1:46a367e088c5b98ae6e77c53c7fe2549e2e112d1 + pristine_git_object: 80f8f84e87a72d2f53dd290cb1d0a31a261a46e0 + src/main/java/com/gusto/embedded_api/models/components/PayrollBatchResultsExclusionsStatus.java: + id: 44c59f8f750f + last_write_checksum: sha1:b9f5629315f34f669beffe916d6ada89313481cd + pristine_git_object: deb957d6c28226425f3db64771e59f8a5ff29083 + src/main/java/com/gusto/embedded_api/models/components/PayrollBatchResultsResultsCategory.java: + id: eb379b9b759e + last_write_checksum: sha1:1351ff360b95ae13d93a92617901c21b6c6cb23e + pristine_git_object: 4a88569f706d10ba39a016c5d2655544b59d3936 + src/main/java/com/gusto/embedded_api/models/components/PayrollBatchResultsResultsStatus.java: + id: bf64bac90689 + last_write_checksum: sha1:62c10da7bddba716a323c3c26ef5dd27dbe0d7e9 + pristine_git_object: abf975fc27cf6d0261d69893999d0132b6a600c3 + src/main/java/com/gusto/embedded_api/models/components/PayrollBatchResultsStatus.java: + id: 499ac609f7da + last_write_checksum: sha1:dba6c680bcaa94286658c3860e9ae8d44494521e + pristine_git_object: 0fccd6e254d4a16d5b20872fb22d5960857d9cb8 + src/main/java/com/gusto/embedded_api/models/components/PayrollBatchStatus.java: + id: 822a9130fe18 + last_write_checksum: sha1:0b86ebcaad58ed5cf11b44dc06e6df5f65148274 + pristine_git_object: a66d6342e6a26fcfcb7eeec2ae41020554adb160 src/main/java/com/gusto/embedded_api/models/components/PayrollBenefits.java: id: 7b486950d7cb last_write_checksum: sha1:371ad0970332e00b2b3fd645c876fab883379fd1 @@ -9676,12 +10416,20 @@ trackedFiles: pristine_git_object: c142d9c4067470de15bd9ff8e2fc7e8062772d73 src/main/java/com/gusto/embedded_api/models/components/PayrollDigest.java: id: 649b11d91345 - last_write_checksum: sha1:d4b01caff98e4eab098aac20997e35cccef9b6ea - pristine_git_object: 1be82c09331f8778e210867d5574c7bec1e20080 + last_write_checksum: sha1:3ff8ca176a2e9b35041fd9f41ca17991bcee78a3 + pristine_git_object: 129bc8d7473ad7457d6a89ce5b4aa946fd4e13f3 + src/main/java/com/gusto/embedded_api/models/components/PayrollDigestBatchAction.java: + id: 12d436266656 + last_write_checksum: sha1:2bc58c3754c1e1cb4830d4d7295c219f6f1a3d8f + pristine_git_object: 84e41902738457090ba73eb01c90831c1d121cf4 src/main/java/com/gusto/embedded_api/models/components/PayrollDigestResults.java: id: 3021775dfb11 last_write_checksum: sha1:f7e6124b0cc06dd52307b89e4752c001da15e2e2 pristine_git_object: 3056e01ccd3f562c7e2543a2d1bd29118f0afab2 + src/main/java/com/gusto/embedded_api/models/components/PayrollDigestResultsBlockers.java: + id: 04f6938355d1 + last_write_checksum: sha1:5ec8f9cb192f84e98100fb7681660aa84060d311 + pristine_git_object: 2a4eb8fdd4ddd54d997116d6e83fa67d53205f28 src/main/java/com/gusto/embedded_api/models/components/PayrollDigestResultsCategory.java: id: a11300851de3 last_write_checksum: sha1:f5cf82bb2d6f138d1c5c92b2676d1219bbb01bfd @@ -9708,8 +10456,8 @@ trackedFiles: pristine_git_object: 2f1b3e80a99ca2deadc8b97581a22fa03249a878 src/main/java/com/gusto/embedded_api/models/components/PayrollDigestResultsResults.java: id: 8006ad639d72 - last_write_checksum: sha1:74a375e5cc2322c131db93d667aaea38cbc4e4e7 - pristine_git_object: a8c412d7609ce94fa955ef964f16e54fcecd19d2 + last_write_checksum: sha1:6f709918235eb8d71770d7fc7631bd38c98c64bb + pristine_git_object: 156db79523c738d2bc5741e102dcb3ea3f7c2418 src/main/java/com/gusto/embedded_api/models/components/PayrollDigestResultsResultsStatus.java: id: c0cb56149d96 last_write_checksum: sha1:19d751ce872abe080a886b36a6242dc1dbe70cd4 @@ -9728,16 +10476,20 @@ trackedFiles: pristine_git_object: 1176f2680d254e689eae46785d52db38b176e9b0 src/main/java/com/gusto/embedded_api/models/components/PayrollEmployeeCompensationsType.java: id: eba9ef69a011 - last_write_checksum: sha1:0a0620ddb27ce4b858b48c6312fd8789063e8a78 - pristine_git_object: b47c6816b8d0a0785cdf65c7a9772aec7dbb7609 - src/main/java/com/gusto/embedded_api/models/components/PayrollEmployeeCompensationsTypeFixedCompensations.java: - id: 4c947e99298f - last_write_checksum: sha1:faa0976c64fc1b17379f5ce5d1d130f0c1443601 - pristine_git_object: d634354f0d30aae4c5839e82524c0c019be2f6c9 - src/main/java/com/gusto/embedded_api/models/components/PayrollEmployeeCompensationsTypeHourlyCompensations.java: - id: 76edc4281c83 - last_write_checksum: sha1:f383c321ff15dc5915b9eeca301f5844578239a9 - pristine_git_object: 24b878e2adb74abe310cedf57ce27f23d871e3ee + last_write_checksum: sha1:93206633d9955243fff7a85467655b8d1752c189 + pristine_git_object: bdf7ab8f1ce8daa32d49300d41c457f367654f42 + src/main/java/com/gusto/embedded_api/models/components/PayrollEmployeeCompensationsTypeAmountType.java: + id: 5876c95654c8 + last_write_checksum: sha1:f9e37b2ccf92312a7b4421b7ea68eab4c106c9f3 + pristine_git_object: 796da52a409341f8c33c8d44011ec6959f491801 + src/main/java/com/gusto/embedded_api/models/components/PayrollEmployeeCompensationsTypeCustomWithholdingsAmountType.java: + id: d67e7df69218 + last_write_checksum: sha1:b91b95b54b031699f6f03678c2362ff184ec70d0 + pristine_git_object: a06e4a85b991521f06e6148267b79defaa6c0b06 + src/main/java/com/gusto/embedded_api/models/components/PayrollEmployeeCompensationsTypeOverrideType.java: + id: e2f70af745c2 + last_write_checksum: sha1:e66e3e71b326d82983d720f17c3997584e9ed1cc + pristine_git_object: ba846e211f5d213df8ed3d93131550f5a4fb6de0 src/main/java/com/gusto/embedded_api/models/components/PayrollEmployeeCompensationsTypePaidTimeOff.java: id: fc2b471de294 last_write_checksum: sha1:3d5efe823a6644a40953e216111cfc017a6c739e @@ -9746,10 +10498,6 @@ trackedFiles: id: 0fae62fb9607 last_write_checksum: sha1:afbcb2fddde3b217bee6cfe504ba810798e57d8d pristine_git_object: 0a9df7687d3e724f97f20de142327d0985a428ff - src/main/java/com/gusto/embedded_api/models/components/PayrollEmployeeCompensationsTypeReimbursements.java: - id: 054fb0b450c1 - last_write_checksum: sha1:4ce184365f0979625a79af45a7f56148e012f276 - pristine_git_object: 5e4bd7c34e4e7f1e3ff3ca96cf161eb47226a9cd src/main/java/com/gusto/embedded_api/models/components/PayrollFixedCompensationTypesType.java: id: 5bace57a720a last_write_checksum: sha1:f8ddb39dd715b5aa9f94b9a46ea263f2a8121817 @@ -9804,16 +10552,24 @@ trackedFiles: pristine_git_object: 7719fe1bb743f1ac2d3d3c1bc3879ab15bb33e25 src/main/java/com/gusto/embedded_api/models/components/PayrollReceipt.java: id: 1dcea3eac579 - last_write_checksum: sha1:44d19f68f654fb39b244d2c640702ce092a33f5e - pristine_git_object: 5feb25621dc51008d855b7fe0182c90da1e5486a + last_write_checksum: sha1:ac4744f33109fbcbe467945c65f947c2160bb0d8 + pristine_git_object: dd59032953d9d8bd7804ffcab19f4fefb81cb8d6 src/main/java/com/gusto/embedded_api/models/components/PayrollReceiptEmployeeCompensations.java: id: 9dc1082b73d8 last_write_checksum: sha1:12fc13ee84b4b69a9aaeab8032ad17317cbc5985 pristine_git_object: c9a0768b4a13e31ac4e6c654da06275767d9c459 + src/main/java/com/gusto/embedded_api/models/components/PayrollReceiptLicensee.java: + id: c2194ee39986 + last_write_checksum: sha1:05e1c3cbe92eac077fdfdeefedd6008e4da6d92c + pristine_git_object: 2ab89cac59cc6417a27d5683fb0fe0f5bd35c2cc src/main/java/com/gusto/embedded_api/models/components/PayrollReceiptPaymentMethod.java: id: 6fe2aed93a1e last_write_checksum: sha1:d7dc8e2c962eb7a8e7524aa9cc5a9501d52664d4 pristine_git_object: 46495b62763a6e10976d8c8d0b7351504ac02459 + src/main/java/com/gusto/embedded_api/models/components/PayrollReceiptTotals.java: + id: 061535428d27 + last_write_checksum: sha1:df44b5e862babab82e9b9403e4ae8e9ba2ef66e0 + pristine_git_object: fded665213c328fb9384c89f8046517d205a5655 src/main/java/com/gusto/embedded_api/models/components/PayrollReversal.java: id: 09bfb248de49 last_write_checksum: sha1:af02e4dd85216254938effe0120a76842f0f6ed3 @@ -9830,10 +10586,30 @@ trackedFiles: id: 52de4b4fc366 last_write_checksum: sha1:6bdf18be7b79279c40a7d11719364cdc82447db3 pristine_git_object: 1b5ac03a012c37a94c6de725a8f4b3106f891997 + src/main/java/com/gusto/embedded_api/models/components/PayrollShowCustomWithholdings.java: + id: 22d2885480b5 + last_write_checksum: sha1:16e415171fb08793909b5691263158c4773d82d5 + pristine_git_object: bd1e671314e97fbaaa544f8c26c2f8a242751444 src/main/java/com/gusto/embedded_api/models/components/PayrollShowDeductions.java: id: f360d6bd81c4 last_write_checksum: sha1:0e13319497982bc6442dcad22db85f78786f59f6 pristine_git_object: bb0dcd443ca30ebd50fc465154d8cd460e25031c + src/main/java/com/gusto/embedded_api/models/components/PayrollShowEmployeeCompensationsAmountType.java: + id: d80daa5e276c + last_write_checksum: sha1:cdc4e4ea564fba883761afc05812baba7a02501f + pristine_git_object: 70b7ee97eefec96e1f03ae83731fab926e18c1f3 + src/main/java/com/gusto/embedded_api/models/components/PayrollShowEmployeeCompensationsCustomWithholdingsAmountType.java: + id: e692200ecc19 + last_write_checksum: sha1:7c86663b5de00b02b8ac63e6f8364255d4f50609 + pristine_git_object: 2ed99aa81b5d60161e746079b8f59105b24b386b + src/main/java/com/gusto/embedded_api/models/components/PayrollShowEmployeeCompensationsOverrideType.java: + id: 395d016f9c73 + last_write_checksum: sha1:f0f0e01c5c28eb3e28e78fda24f4e1e705202478 + pristine_git_object: 7c194b7b2696819ca0889d082b9ba0a7c592fd14 + src/main/java/com/gusto/embedded_api/models/components/PayrollShowFederal.java: + id: db93b214dcff + last_write_checksum: sha1:1f4c6a58b1a5c4ae66c2b7ba5fcdabacd6377c75 + pristine_git_object: db9a99b7aad51a2e8b4c469cfc9f79bbb4012b5b src/main/java/com/gusto/embedded_api/models/components/PayrollShowFixedCompensations.java: id: 96f24c301fc8 last_write_checksum: sha1:c88303b90acf1e6a4948bb04e4f12c4052c52da2 @@ -9842,6 +10618,10 @@ trackedFiles: id: 8cada24253f2 last_write_checksum: sha1:e8e6197f2820204da1db641746cab71012846b76 pristine_git_object: 215f5c973c9133ef7c541a7682e9fa1418d3c166 + src/main/java/com/gusto/embedded_api/models/components/PayrollShowOverrideType.java: + id: 0fc06d042742 + last_write_checksum: sha1:ee6774ef321d4f5624e1202ce08e934c5a4cbe1d + pristine_git_object: 806c3b37e148d256bec0c0a60ccc74fa1b52bf2b src/main/java/com/gusto/embedded_api/models/components/PayrollShowPaidTimeOff.java: id: 555aefe4dc37 last_write_checksum: sha1:e15cc575f900f193aa38571397dc5e4cd344a713 @@ -9854,6 +10634,10 @@ trackedFiles: id: 6b05fca5d11c last_write_checksum: sha1:3ad90c9c0924d28e3be05aa0283bb9376ebe9776 pristine_git_object: 13407eb3b9056a110e6408aa694d38d79635dc14 + src/main/java/com/gusto/embedded_api/models/components/PayrollShowState.java: + id: a494f0d97f10 + last_write_checksum: sha1:91b7996aab36a4d568e9fb5220deb2058275086b + pristine_git_object: 84b3e4583ef025c8d2e431ddccd633b34cf10540 src/main/java/com/gusto/embedded_api/models/components/PayrollShowTaxes.java: id: dda676e1d8ed last_write_checksum: sha1:3b2aac675bafa3e637bf22b2dfaed671e639a3cb @@ -9888,8 +10672,40 @@ trackedFiles: pristine_git_object: 75ecdcd84ca9952975b5291139e79bb99df266b2 src/main/java/com/gusto/embedded_api/models/components/PayrollUnprocessedEmployeeCompensationsType.java: id: 20c01a83cb9d - last_write_checksum: sha1:a5faafb3cae2460c1a02c015257c5a32aa55e586 - pristine_git_object: c1b6880b87292d203d5c8a16727a62b0ae85b972 + last_write_checksum: sha1:b61ddc66b61384dce0f2f7d03dcc51717bd42ecc + pristine_git_object: 9268154284dfb68a3b1cf8b356243c32c232bcc8 + src/main/java/com/gusto/embedded_api/models/components/PayrollUnprocessedEmployeeCompensationsTypeAmountType.java: + id: c9ecfc3fe9d1 + last_write_checksum: sha1:bcdc85b8c5bc9a6a7e91936f41319da966b8027d + pristine_git_object: 48137a94bdd0c82588db6d958f1355064493f954 + src/main/java/com/gusto/embedded_api/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings.java: + id: 81ab96f864e9 + last_write_checksum: sha1:bee1b8437d68d7e47ada9802cd2f2a3add3c2303 + pristine_git_object: 322940978ab0df78144f72b6be42e618b422ee1c + ? src/main/java/com/gusto/embedded_api/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsAmountType.java + : id: 2fe23da1536c + last_write_checksum: sha1:397021441a157bedc3c5d3ad372227a3d121c4e9 + pristine_git_object: b79d20608551b8afa20c202746c2d16259e1ed2b + ? src/main/java/com/gusto/embedded_api/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsOverrideType.java + : id: 9dc60f65ea03 + last_write_checksum: sha1:befacf43b401eec23b5b460f2161ceeaf7101eff + pristine_git_object: 86896ca412291459e8aa2b1620869c90f5bd288e + src/main/java/com/gusto/embedded_api/models/components/PayrollUnprocessedEmployeeCompensationsTypeFederal.java: + id: bfb54cf0ed94 + last_write_checksum: sha1:dc21f03e1d1ebd95a6a993d51a153acb36ad25cb + pristine_git_object: e1e1822e5fb996b7b95d3ca72244c13f770e7ede + src/main/java/com/gusto/embedded_api/models/components/PayrollUnprocessedEmployeeCompensationsTypeFixedCompensations.java: + id: ed04140a2275 + last_write_checksum: sha1:b04bc5e576b63b5a55e49250a008aa5dadbdc1b1 + pristine_git_object: 5301d139438fe10c727259693abed47452bf0750 + src/main/java/com/gusto/embedded_api/models/components/PayrollUnprocessedEmployeeCompensationsTypeHourlyCompensations.java: + id: e6302adfd680 + last_write_checksum: sha1:ef6db857cd86d8a440e8d81954b917dfe65604bc + pristine_git_object: df8ae4497c6dc2df2d09cdfdf01220efc3f4a7b4 + src/main/java/com/gusto/embedded_api/models/components/PayrollUnprocessedEmployeeCompensationsTypeOverrideType.java: + id: 983189aae54c + last_write_checksum: sha1:8d6bda3f37a584e0db5aba6164400fac02053db2 + pristine_git_object: 69660bf61923e8a66243e50b57f4c746f1a0c65d src/main/java/com/gusto/embedded_api/models/components/PayrollUnprocessedEmployeeCompensationsTypePaidTimeOff.java: id: aa83f239f748 last_write_checksum: sha1:440fe5c5b6ad086045dfed077976e030956dbbf8 @@ -9898,6 +10714,14 @@ trackedFiles: id: 24b46d678c94 last_write_checksum: sha1:b98dbff3e496c4f0a9bb55b4dac1a46a802b64dc pristine_git_object: 803262a14f06dfd48a66c250c27fb3edbda83615 + src/main/java/com/gusto/embedded_api/models/components/PayrollUnprocessedEmployeeCompensationsTypeReimbursements.java: + id: 8484b72a8db7 + last_write_checksum: sha1:7add6b9c13be861a292420698d9882642f4144e7 + pristine_git_object: 11d0e8532ffcaa9344749993fd065672b99ae468 + src/main/java/com/gusto/embedded_api/models/components/PayrollUnprocessedEmployeeCompensationsTypeState.java: + id: b41e8f4be1a1 + last_write_checksum: sha1:92a25a6b84049123b48fbfa55fb6f2472c88efc8 + pristine_git_object: fb018c26b19374333717d07303935e63dfc5ec6c src/main/java/com/gusto/embedded_api/models/components/PayrollUpdate.java: id: 8acf87503910 last_write_checksum: sha1:6a0e43960d98de1e7f0e5b73231cd81b407d5627 @@ -9906,14 +10730,34 @@ trackedFiles: id: 6b32d8a375f9 last_write_checksum: sha1:b09ce526bd3aaa982542514f330eccb76ccc2779 pristine_git_object: bdb4503d24e93004d5cd2431110dd810c0e4d5ff + src/main/java/com/gusto/embedded_api/models/components/PayrollUpdateCustomWithholdings.java: + id: 876b3fd7bb31 + last_write_checksum: sha1:1d83692c2f8b379c56579ffe4f089d4eaf85ef77 + pristine_git_object: c1289a075c25a120a1b2e6d57b3b509c0a55acb1 src/main/java/com/gusto/embedded_api/models/components/PayrollUpdateDeductions.java: id: fe466ce11ec4 last_write_checksum: sha1:c7fc93309f4bbb144dec42d0b72daa830c64e399 pristine_git_object: 915c256f0bb3a1b79efe54c2f20cea665d84d0c3 src/main/java/com/gusto/embedded_api/models/components/PayrollUpdateEmployeeCompensations.java: id: 141b5d006b8a - last_write_checksum: sha1:bfc8d45bb3c5daf3c64c3a6e0ff1ff6950eb1989 - pristine_git_object: 7f8192b242f12394c40b6d068da502c969a9c49f + last_write_checksum: sha1:3f59e882f2d19b1f15e5af13d342b1ecbfaca8d4 + pristine_git_object: 52b0b6db41a7b3963ea340989dd92e42674c6dde + src/main/java/com/gusto/embedded_api/models/components/PayrollUpdateEmployeeCompensationsAmountType.java: + id: 22439a0da61c + last_write_checksum: sha1:2342c4ede39b585463320435776f7bd552249757 + pristine_git_object: b1de3dcd387ad737e27f842592f167bfc6b70de8 + src/main/java/com/gusto/embedded_api/models/components/PayrollUpdateEmployeeCompensationsCustomWithholdingsAmountType.java: + id: 9bc2b317058d + last_write_checksum: sha1:36306e989244d8ee61db8417e5a5f691b14f56d7 + pristine_git_object: ff80369d7836ad561c815cea20ecedaeb4313e44 + src/main/java/com/gusto/embedded_api/models/components/PayrollUpdateEmployeeCompensationsOverrideType.java: + id: e45258f8bdb1 + last_write_checksum: sha1:1e07a6c7524cd2ea069ad4da657f3e1f4d3287ed + pristine_git_object: ecc4df308ccba73002965646b22a61e5e7b05a69 + src/main/java/com/gusto/embedded_api/models/components/PayrollUpdateFederal.java: + id: 4c0784d823df + last_write_checksum: sha1:2268ea06c5bcb79e7f160c8212ef2fdaec1d46b9 + pristine_git_object: 279a5aad04e89baceb3d7aa1a36bab43c6ac1cb0 src/main/java/com/gusto/embedded_api/models/components/PayrollUpdateFixedCompensations.java: id: d24a736d22b5 last_write_checksum: sha1:7bc93175d964caabcc0b66840e6fb15e1eee51d9 @@ -9922,6 +10766,10 @@ trackedFiles: id: 8c9483393989 last_write_checksum: sha1:370cf282200413c5cb529542c1ab0ead4a40d7b0 pristine_git_object: 631c437f2d3cbf0171e7cad672ee090c957c578c + src/main/java/com/gusto/embedded_api/models/components/PayrollUpdateOverrideType.java: + id: 34d3e86632b9 + last_write_checksum: sha1:eda37f59ba2cd1f06d8b1b03f1e8e45dad515c51 + pristine_git_object: f4878acc9cb8d115450278a66feb0cc240433ec2 src/main/java/com/gusto/embedded_api/models/components/PayrollUpdatePaidTimeOff.java: id: 3153a8a04855 last_write_checksum: sha1:0fc399622e14b6e8fa1f6d0b782620ea01941fed @@ -9934,6 +10782,10 @@ trackedFiles: id: 1b79577a9b33 last_write_checksum: sha1:3aaaf7ea6a917218c178d3d0027a9a414abb09bb pristine_git_object: 53b1cd59953de7bc800443be9fe0cd962222417d + src/main/java/com/gusto/embedded_api/models/components/PayrollUpdateState.java: + id: d61c1330a83b + last_write_checksum: sha1:d924c81088b78a71dfaaa22340b2bc06d091e9ea + pristine_git_object: 4591f65ef686a6d8fd7abbe224e25a4949a663cc src/main/java/com/gusto/embedded_api/models/components/PayrollWithholdingPayPeriodType.java: id: "944261242561" last_write_checksum: sha1:986330336f9bc807cf4321dbd2fa11ebe4fdef53 @@ -9948,12 +10800,20 @@ trackedFiles: pristine_git_object: 62ba6def1d203a4da8fac03faa8d54bf383881a7 src/main/java/com/gusto/embedded_api/models/components/PeopleBatchResults.java: id: 7023333b1112 - last_write_checksum: sha1:a936006f4d2e21c0ab85bbbc794166b5085b6bd5 - pristine_git_object: 90bec4fec85e67afbdf404921f58001f77da5269 + last_write_checksum: sha1:d014a8dfe64a48628c3198ed469a262e071a963b + pristine_git_object: 518b468b31ffe3445437fded4e2c8196d2bd2fb3 src/main/java/com/gusto/embedded_api/models/components/PeopleBatchResultsErrors.java: id: 490617cfe546 last_write_checksum: sha1:7d510fe46ec071f3475400d6d30e81cea3d0ef25 pristine_git_object: f2b13bbf818072b8991ec8341b11951488faff05 + src/main/java/com/gusto/embedded_api/models/components/PeopleBatchResultsExclusions.java: + id: e95850d141e8 + last_write_checksum: sha1:a1c258d0ce065c0e7548eb86e3942c43bed8c064 + pristine_git_object: 1cd0b23a877dba77e2d45818133aa26ffa2e5ca1 + src/main/java/com/gusto/embedded_api/models/components/PeopleBatchResultsResults.java: + id: 6517531040fd + last_write_checksum: sha1:7d9baa2d1b40579ac6a30ae89bdbbe4b41331630 + pristine_git_object: 25ef9381801e10c854888ee006e1aa546161c8a3 src/main/java/com/gusto/embedded_api/models/components/PeopleBatchResultsResultsErrors.java: id: 87f2df02d8e8 last_write_checksum: sha1:70a0682c2f95be8e43f4c18ee6763388f9269944 @@ -10016,8 +10876,8 @@ trackedFiles: pristine_git_object: 1a352ba6ec15cc7341cfc6b5d8bee35a063a819a src/main/java/com/gusto/embedded_api/models/components/RecipientType.java: id: "718181868299" - last_write_checksum: sha1:102e59e1a302a47c0c2d4a008994b7e2c7e940e6 - pristine_git_object: 87c0bd73122a320ebad251e64c16bf95c7ffe58e + last_write_checksum: sha1:92d3d232f764784de440cb9fe29b22ccc499e7ab + pristine_git_object: 432c1a8ce5f528b1d6251cfd816bcb85febf34fa src/main/java/com/gusto/embedded_api/models/components/ReconcileTaxMethod.java: id: c20a15f808ba last_write_checksum: sha1:97288407417969948cbb4769f6da3146c97e2182 @@ -10040,8 +10900,8 @@ trackedFiles: pristine_git_object: 224a04811b9966aa427bbd0e850d9026c444a1d9 src/main/java/com/gusto/embedded_api/models/components/Rehire.java: id: aa39acc64e05 - last_write_checksum: sha1:0c50fa1843d46d069e40dd0f436bb4f02f6e6dd4 - pristine_git_object: 1be53dac4579ebdb959ee41202c00af544427af3 + last_write_checksum: sha1:0c636a445eb7679466315dd457c382eac3f3c16f + pristine_git_object: 01f94d7764dc10968735a07525e2eaac1ac79302 src/main/java/com/gusto/embedded_api/models/components/RehireBody.java: id: 32ee0cd8b4db last_write_checksum: sha1:09b1825b5f85fb8ffc5dc51064d8155cad2f4634 @@ -10050,6 +10910,10 @@ trackedFiles: id: 1484def751e6 last_write_checksum: sha1:c2b1cbe4d3b011b0483a489ef34fec2e6282c0e5 pristine_git_object: 95627ba297153525f283ad12d3f1567259e043dd + src/main/java/com/gusto/embedded_api/models/components/RehireEmploymentStatus.java: + id: 2204bab51c7f + last_write_checksum: sha1:3a7511374955f398b6098665c922fe91016c854d + pristine_git_object: d1503b65167227f60817905c3ab4b6b8a8529a0f src/main/java/com/gusto/embedded_api/models/components/RehireUpdateRequestBody.java: id: 02e22d6cba78 last_write_checksum: sha1:549a1d8901b1b17dba09dd52ba3e040f4bb1f53d @@ -10070,6 +10934,10 @@ trackedFiles: id: 54bc2a0a4ad3 last_write_checksum: sha1:a6c5591fe0475f484252dc0fa5a8172cd5a26bcb pristine_git_object: 2da8557a113e3116162919e4297d05be0c8ecfad + src/main/java/com/gusto/embedded_api/models/components/ReportType.java: + id: ccc5da426dfe + last_write_checksum: sha1:334b0fb7ac01ac980c8e8cadef829d3d143273d1 + pristine_git_object: 788b6ed31338f1bd49ac1abe06774e545a2ae629 src/main/java/com/gusto/embedded_api/models/components/RequiredAttributes.java: id: ea7603558c69 last_write_checksum: sha1:fb38a561727add646e909d248f299876a11975cb @@ -10104,8 +10972,24 @@ trackedFiles: pristine_git_object: 5aa06335f986c792b4f2f4bb555206ddbf9de9ee src/main/java/com/gusto/embedded_api/models/components/Results.java: id: e02768787cf8 - last_write_checksum: sha1:a22ebb04d538f9e2ef3d6886107c8d3c17fedccc - pristine_git_object: 2ceaac9617be57b82f8c28f97313ffa18804e3f7 + last_write_checksum: sha1:97a05acf94da6f14df11f13ef0915fd5cf79786b + pristine_git_object: e3682a25b9d2e14c3d3a2d67ba80b78cd9de28c4 + src/main/java/com/gusto/embedded_api/models/components/ReverseWireTransaction.java: + id: 46dc82602127 + last_write_checksum: sha1:edfb57961104f8a65c966b8e1f947c9f85e08752 + pristine_git_object: 8e5f82390eb672b3799488659e4c2c2dbff1c155 + src/main/java/com/gusto/embedded_api/models/components/ReverseWireTransactionPaymentDirection.java: + id: 89fd3e91affc + last_write_checksum: sha1:25cb1f02a1e9f2501789311ee727aa08d59a5bcf + pristine_git_object: 2a9a7a940cd8c902c214926afb6e413eae6b8a55 + src/main/java/com/gusto/embedded_api/models/components/ReverseWireTransactionPaymentEventType.java: + id: b21b79857f1f + last_write_checksum: sha1:457ff80ea5ea65c30889b7e605e087c314cca1ad + pristine_git_object: 21f45ff2e9d76149017d887aac78705d4b557f55 + src/main/java/com/gusto/embedded_api/models/components/ReverseWireTransactionStatus.java: + id: 3c11c81dd2fe + last_write_checksum: sha1:79a4dd82a539dbe0d1f05e84033045426cacff77 + pristine_git_object: b465e18ee198ce568f2871ca930e4f5f1c8ebb26 src/main/java/com/gusto/embedded_api/models/components/Role.java: id: 2a8ffb95f8ac last_write_checksum: sha1:9f3ea4c7421b869942c0aebdf4a775d0b52d65ea @@ -10128,16 +11012,36 @@ trackedFiles: pristine_git_object: da394c105088272d74fd795949eb8da1bb8580dd src/main/java/com/gusto/embedded_api/models/components/ShowEmployees.java: id: e66ec4583757 - last_write_checksum: sha1:11d2574a3d1cac458810a00c3956a26ef6c3429c - pristine_git_object: 04d789ae7beb04fa47c2ceda5ed04538ff4d8983 + last_write_checksum: sha1:e0790410b5cb993bde414f73ad8ccb2ff59bd02c + pristine_git_object: 5abbb5bcbe33a8e27c952862706a18c54246efb0 + src/main/java/com/gusto/embedded_api/models/components/ShowEmployeesCurrentEmploymentStatus.java: + id: 22ba70f0f6d1 + last_write_checksum: sha1:0f740401df9a18b1516aaf630be62601063c9790 + pristine_git_object: bbf230f2ecff4a798bcd93dc69cb77e2ac613101 + src/main/java/com/gusto/embedded_api/models/components/ShowEmployeesMemberPortalInvitationStatus.java: + id: 4a593c161a10 + last_write_checksum: sha1:5fd1855eef3f965122a37a832ce0ab53a52fca06 + pristine_git_object: 938ea68bb91e5e07626671ee49765fff5fd23f40 + src/main/java/com/gusto/embedded_api/models/components/ShowEmployeesOnboardingDocumentsConfig.java: + id: ff8353256bd0 + last_write_checksum: sha1:0c435cff3f48fe45c3983a8b166c4494d11d7d59 + pristine_git_object: c2e379b98237feec288c239462360bd4199ea75c + src/main/java/com/gusto/embedded_api/models/components/ShowEmployeesOnboardingStatus.java: + id: 8737c5c6e37f + last_write_checksum: sha1:0038f6711757971d76de97a3f08e206d4c2476c4 + pristine_git_object: b383000edb67e788877f148b8b6c9a9a438f2384 + src/main/java/com/gusto/embedded_api/models/components/ShowEmployeesPaymentMethod.java: + id: 24d15b276666 + last_write_checksum: sha1:5474378718e8231ed99238bd7d9872c744d4e6c2 + pristine_git_object: 704af23ca5d2c58a7b98fe1b092ff2ec519a81a9 src/main/java/com/gusto/embedded_api/models/components/ShowEmployeesStatus.java: id: 8522283ce566 last_write_checksum: sha1:5f1abb30a85c0a60010e6523e050fe5a843507a5 pristine_git_object: d04790a75e3825b444e86f9071d6bf87d9b0348c src/main/java/com/gusto/embedded_api/models/components/Signatory.java: id: 9c5f62a93462 - last_write_checksum: sha1:8a74e028fb79db7422f7d21df08aab4ce208eb3d - pristine_git_object: c02cf6bad5e6f016045fa0f5b1d2815abd40209d + last_write_checksum: sha1:960a9e8f3a935d7dbaaaf39bdd5109b3cfe8f767 + pristine_git_object: f2d651ff12a364cd46b8ddbef28d12acfdea8db1 src/main/java/com/gusto/embedded_api/models/components/SignatoryCreateRequest.java: id: 2c8f50d9e756 last_write_checksum: sha1:7f1641eac77cd57007c93a44e458a2494c901176 @@ -10146,6 +11050,10 @@ trackedFiles: id: baab02f78f05 last_write_checksum: sha1:6c584f713ee7b07604441be0845eeafdddb20272 pristine_git_object: d9c20ec6476afa4434929788f5965bb6edec4093 + src/main/java/com/gusto/embedded_api/models/components/SignatoryHomeAddress.java: + id: ab5d743d4718 + last_write_checksum: sha1:a1225441c3d78e3d5b09644b23f36bdb9692309d + pristine_git_object: 90e12e205565d70e341c27a1df0ea33676abfc18 src/main/java/com/gusto/embedded_api/models/components/SignatoryInviteRequest.java: id: 43b90b296a78 last_write_checksum: sha1:dc4591455168bc7dbf6d15bfb0b8809199f80f83 @@ -10172,20 +11080,24 @@ trackedFiles: pristine_git_object: ef93e855cd994cefcb5f94406a15abcc4f6764bb src/main/java/com/gusto/embedded_api/models/components/Splits.java: id: 6455cb8ec4e7 - last_write_checksum: sha1:9d6857ca5d1a7a9923b19bc73011f8c4f80a16ba - pristine_git_object: 801907878df063caf260b8ebe065ff76bdcab913 + last_write_checksum: sha1:e21beb1f51f4f29fc9e76929ce08d8cb59958431 + pristine_git_object: 843c910da4de998799f2a5b5df9a5b3584492983 + src/main/java/com/gusto/embedded_api/models/components/State.java: + id: e7bf4b47ff56 + last_write_checksum: sha1:8015d4586795ec7639a0ea438f48db6e150cb299 + pristine_git_object: de06908c7103ec5fbd19dd4bfbeb119634bdccfa src/main/java/com/gusto/embedded_api/models/components/States.java: id: 2d085285b10f last_write_checksum: sha1:5dfce58427e66e4a62b86285c1425e16c93cebd1 pristine_git_object: d1f89da50d90042bf1c0b39a0deec5d8ee56ef57 src/main/java/com/gusto/embedded_api/models/components/Status.java: id: 9a95287087f0 - last_write_checksum: sha1:3e12355064bdc8f1f39e1b56fd8ba6d54a231be9 - pristine_git_object: 68a360ee21a416211a2c158ccfbc735f78f45d2e + last_write_checksum: sha1:57007636e01957eed28b8b7acec54fb6102e836c + pristine_git_object: 57d618a99a4fc5958b44f5378fb0bd345dd5692e src/main/java/com/gusto/embedded_api/models/components/SubscriptionTypes.java: id: a67ee4858962 - last_write_checksum: sha1:77f4741c8890434890887f216e2ccd132b3c28ed - pristine_git_object: 5933348a13ca4452f3f887467b9d58c138e7c408 + last_write_checksum: sha1:1a9c1a2c38deaae7545b9e09c8d9964fe0ba9034 + pristine_git_object: c8bd9d8baa8dc7e6a8c42dddaa367380ef6b62fa src/main/java/com/gusto/embedded_api/models/components/SupportedBenefit.java: id: d3ed9401093a last_write_checksum: sha1:4023aa81dc4d15a32393e3dd56de9cfd4fd4c4f0 @@ -10202,30 +11114,30 @@ trackedFiles: id: da3830404c8a last_write_checksum: sha1:114f6f6dd9c5df215c45ecbe3de0be7b9f971c63 pristine_git_object: 7c6fbd33f84226f11b5b767c0a246a78f2d05ea7 + src/main/java/com/gusto/embedded_api/models/components/TaxPayment.java: + id: 740866583a3e + last_write_checksum: sha1:5cf3419c3c753352b5e37585e07f0ec70995a83e + pristine_git_object: f5be4fcf7c3c4d61a4b07dc3bad9e28e45c5adfe + src/main/java/com/gusto/embedded_api/models/components/TaxPaymentLineItem.java: + id: be0b0ffdff1d + last_write_checksum: sha1:144adb63834e767ae8f2307a59b5ed8c5fd31967 + pristine_git_object: df456edfb11fc09b24c24df905ab804f7dddcf19 src/main/java/com/gusto/embedded_api/models/components/TaxRefunds.java: id: e557be588eb6 last_write_checksum: sha1:32fda9fd656a3fe0a2ed21a717838ada3fbea52b pristine_git_object: cdbb97bcc04206a976b52c8a527b7bf65a5829c0 src/main/java/com/gusto/embedded_api/models/components/TaxRequirement.java: id: c4a8e098d97c - last_write_checksum: sha1:23e7645ae49e5a240ed3ad62d66c4c8afa0b9c04 - pristine_git_object: 3cc561c7476c58fcc45ae473bf8281da5d3f7ada + last_write_checksum: sha1:2ac73a5b6f5f5549d12a3b5b436e97bbd467a09b + pristine_git_object: 078888079fe70466518b2d719f3bd6df662c8f3c src/main/java/com/gusto/embedded_api/models/components/TaxRequirementMetadata.java: id: 39e61643c3e1 - last_write_checksum: sha1:dddbb224d3f492612de8de7c0bef70ae6bb8e64e - pristine_git_object: f265bae1c517b6c905e47819c013766c56eef908 - src/main/java/com/gusto/embedded_api/models/components/TaxRequirementMetadataOptions.java: - id: d4ae184a6ba9 - last_write_checksum: sha1:618e8ff866071a7fb35ed73c800c068d0e573158 - pristine_git_object: 11f27781f8632a4c70aee2f5b4d5a5d502903ea9 + last_write_checksum: sha1:4440dc14ca42acb932c46609d52d1e7927349297 + pristine_git_object: fdaa73522be6ce314ca95d195e56d996a915ae05 src/main/java/com/gusto/embedded_api/models/components/TaxRequirementMetadataType.java: id: 873d2d9a74de - last_write_checksum: sha1:22020b867f90a53047ba38781810dc8897a1e7d2 - pristine_git_object: ff394df15df77b4589b5136996d69e1e6a60e4b6 - src/main/java/com/gusto/embedded_api/models/components/TaxRequirementMetadataValidationType.java: - id: 30e17b3583ad - last_write_checksum: sha1:c0234ae4cd43d500d9e078bee768d8dbeed4fff1 - pristine_git_object: 565b78da7e68e648fb0fd61f81227cea08bcaebc + last_write_checksum: sha1:50728987847a78e2f1507ab33bcf63d807e37f29 + pristine_git_object: 255853690744230dbc7b10fdfb97cf1703f3b4ab src/main/java/com/gusto/embedded_api/models/components/TaxRequirementMetadataValue.java: id: 2e0affce6174 last_write_checksum: sha1:402b788fb9f5edfe1ca4a13a53431a021fdd7c79 @@ -10316,16 +11228,16 @@ trackedFiles: pristine_git_object: ff4d9f3fc9b9d6296932194d87a8a5965215fe5e src/main/java/com/gusto/embedded_api/models/components/Totals.java: id: f83e7fa65bea - last_write_checksum: sha1:c4e75a65438d6df16f4cf1a28877d86bd60e6057 - pristine_git_object: 4629a6762b391603c8f6029348576e3e2f3d5c02 + last_write_checksum: sha1:d71fcfb9788470c6ed2a23b7fc08893fdf415c09 + pristine_git_object: 00e8dc4765a9ec714d9c54ce6fd72d985bc57ce1 src/main/java/com/gusto/embedded_api/models/components/Two.java: id: ec41c418a829 last_write_checksum: sha1:aa730cf86c815138807cf95442a94f0d62e2a206 pristine_git_object: e43232d9625ee5260f6b00f9df52a7d0e1d457a6 src/main/java/com/gusto/embedded_api/models/components/Type.java: id: 2d4599e04c45 - last_write_checksum: sha1:8c8753cfe49078a6e77074e014bf11a845162725 - pristine_git_object: ebca79b0744bbe65275be42f66e147cc8d1a68b2 + last_write_checksum: sha1:683f7a5ccc95639544362e4651a9eda8eed50166 + pristine_git_object: 9b072173dcb730d0dccbd117b642df5091b63f6f src/main/java/com/gusto/embedded_api/models/components/UnblockOptions.java: id: 1f22ef9e44bd last_write_checksum: sha1:231ad3c96a4a79a9f2b1284e90dcbfdb1bf51f7e @@ -10334,6 +11246,10 @@ trackedFiles: id: 68f461d23f63 last_write_checksum: sha1:d5063aca09ce8dcd189c459601c2b6ec44be9e06 pristine_git_object: 59ac8b30235c7ca971104861ee431d9853758869 + src/main/java/com/gusto/embedded_api/models/components/UnknownBulkReportItem.java: + id: c18bc6bf1200 + last_write_checksum: sha1:b44b0eb8f6efc122b0b41088c5603e4d9f159de6 + pristine_git_object: a3ff0408232e17b1bb8d23882b8c243c6c78487a src/main/java/com/gusto/embedded_api/models/components/UnknownEmployeeFederalTax.java: id: 6ac40a1d2ab7 last_write_checksum: sha1:e70ba2b3d5dee09e09dfc17b30abd834a585bd9a @@ -10368,8 +11284,8 @@ trackedFiles: pristine_git_object: 6c1d2f8c66ce3f25d79e2b119c5e2e458d138986 src/main/java/com/gusto/embedded_api/models/components/Validation.java: id: 866fb4d35e7b - last_write_checksum: sha1:5b911139fefbe6f90ae53728adeb5ef283eda885 - pristine_git_object: e2557aa4034d7f701e5ae6853de0084c3c01b429 + last_write_checksum: sha1:e83d86bffbd3b2f7625e1522b5569bfa67321cd3 + pristine_git_object: c0183a6c1557e8e7d77378c221599b12a81a0b87 src/main/java/com/gusto/embedded_api/models/components/Value.java: id: d221dde61675 last_write_checksum: sha1:9d92bcf81a9b3465f7ea2f5632b707e02ae3021c @@ -10390,10 +11306,6 @@ trackedFiles: id: c0e3b63af2ed last_write_checksum: sha1:d16f0b6a34579b1d0cbba88a17b6ad4d87dde78b pristine_git_object: 188f45256dfc42b7347f8321db919e20d8363d73 - src/main/java/com/gusto/embedded_api/models/components/VersionHeader.java: - id: e0a18157fac3 - last_write_checksum: sha1:f1e87a8c5f056933106959d4c105266991a3e044 - pristine_git_object: 10029bfb59549e9e6135f59faedf9832dc682847 src/main/java/com/gusto/embedded_api/models/components/VeteransDay.java: id: ef0ee3fd3bf1 last_write_checksum: sha1:79a6109c3237c87fd742b7c0b54913999f4158af @@ -10404,8 +11316,12 @@ trackedFiles: pristine_git_object: 5ee9b7fe03885f674dd3fff7b2cd57e3d50741c4 src/main/java/com/gusto/embedded_api/models/components/WageType.java: id: 615d3750c7ea - last_write_checksum: sha1:a7e7047919a8f885a2d5557d34a7934b97e5af26 - pristine_git_object: e3bf0743190bf32f44377370bc08ea256cb241b7 + last_write_checksum: sha1:9faa9d1dbd4dcbc77477bbb4360f4f6273344958 + pristine_git_object: 4e0ccab8be94b9007ec0dabc564246d2773a4438 + src/main/java/com/gusto/embedded_api/models/components/WarningObject.java: + id: cbcdc4d706e7 + last_write_checksum: sha1:a6516ab28ccbf0dd7892151a9f3155aa1129e7d6 + pristine_git_object: d5bc65392e500b096f935581088ed0028903d5e6 src/main/java/com/gusto/embedded_api/models/components/Warnings.java: id: 6dbcb16beb90 last_write_checksum: sha1:75683741dd1b95048c44312c81c2f1e7835488b0 @@ -10472,8 +11388,8 @@ trackedFiles: pristine_git_object: 6ca43086dc7971cd7df955f1f5789c50e34f7e96 src/main/java/com/gusto/embedded_api/models/errors/ConflictErrorObject.java: id: e00e3e4b9019 - last_write_checksum: sha1:0d6abbc8b27a08490fa7a99569ceec569640f642 - pristine_git_object: 940e50aff60286aa2630f9e84aaa66eb2c084ae9 + last_write_checksum: sha1:560f7f832250836605c00c54ec33b9142bb44fef + pristine_git_object: 57cca7b7056090dcbc05058debc78589109cae03 src/main/java/com/gusto/embedded_api/models/errors/ConflictErrorObjectErrors.java: id: b38596b9315f last_write_checksum: sha1:a4ec28793535e90c0ce6b0dca8f19d7493ea0607 @@ -10482,26 +11398,42 @@ trackedFiles: id: 234d3d9faf06 last_write_checksum: sha1:9e72c4f56e7748a870f4c8b2036e1ae3320ea254 pristine_git_object: f3210a1f0c8aa67d803dc86c7dd321577075ee4d + src/main/java/com/gusto/embedded_api/models/errors/ForbiddenErrorObject.java: + id: 202cf6ddb497 + last_write_checksum: sha1:27fe6e2d4cef948498030a58b2438b9e69581667 + pristine_git_object: 2470aff7a08f7981cd5e300da4ef7dc79a52ca06 src/main/java/com/gusto/embedded_api/models/errors/GustoEmbeddedException.java: id: cc54ae4576b4 last_write_checksum: sha1:b34f100e0c4fd311c9e6798e95875a6a30844f13 pristine_git_object: c211a391820935b64061115c8ba2a68b4681076d src/main/java/com/gusto/embedded_api/models/errors/Metadata.java: id: 6ea111b63e71 - last_write_checksum: sha1:bf436aba3ffe286db264f38501bbba359ff76162 - pristine_git_object: b5ecf4fbada86238c44e7d1aff0b041db83e788c + last_write_checksum: sha1:f18fb305a5dabcfe896343ff0fab78565721f4b9 + pristine_git_object: 2c7369cce61b5f07e63d06412c3045a2f061bf72 src/main/java/com/gusto/embedded_api/models/errors/NotFoundErrorObject.java: id: 25d507ae9e37 last_write_checksum: sha1:a2d5f2c22441aa53411dec9554887bdde996dcc9 pristine_git_object: 519080e59522e0486de22acf576fd2b5cea86c79 + src/main/java/com/gusto/embedded_api/models/errors/PayrollBatchConflictError.java: + id: 26c39461be79 + last_write_checksum: sha1:e67b7e4c19479d6b7b827d75bc65a7582d3e57cc + pristine_git_object: 8077b62713e966c01434255c1d60bfe871fa0df0 + src/main/java/com/gusto/embedded_api/models/errors/PayrollBatchConflictErrorErrors.java: + id: 1051ce962fd5 + last_write_checksum: sha1:3498a009004c6c599bc09d94a2ba0c500e966ba2 + pristine_git_object: 20806e874071db73dfa8aa69f533be4b6e3e474e src/main/java/com/gusto/embedded_api/models/errors/PayrollBlockersError.java: id: 1d58bec39355 last_write_checksum: sha1:28b26f9b6bd3ce36ea077334ca8af6371a2c1f5e pristine_git_object: d5e066b7796d0c04fdb638e9b1d13ec54c0cf894 src/main/java/com/gusto/embedded_api/models/errors/PayrollBlockersErrorErrors.java: id: fd2aa1bbe42a - last_write_checksum: sha1:9b70c25ca590a64609a89e721b6932e196d54aac - pristine_git_object: b6a7dde80091c5f45615d10889b1b5f43b4cb49e + last_write_checksum: sha1:3d6c0c04303c94ab11c99966a5fa26bd8642d717 + pristine_git_object: d4f1c5340e01fdf1b9bc6700c60ba0849e49ae48 + src/main/java/com/gusto/embedded_api/models/errors/PayrollBlockersErrorMetadata.java: + id: a2e752370f0f + last_write_checksum: sha1:5b875b4dd9324d2a917c335ac23dd0490a5a285e + pristine_git_object: ee94f633db4050913e1efdedb0979cbe96d77282 src/main/java/com/gusto/embedded_api/models/errors/PayrollDigestConflictError.java: id: 55dd3bfee812 last_write_checksum: sha1:77a559167be2fb914ea237a7d7a38503462c0ea3 @@ -10532,8 +11464,8 @@ trackedFiles: pristine_git_object: ef0784d0e74ce56d9c2963390e8a260511deaad1 src/main/java/com/gusto/embedded_api/models/operations//async/DeleteDepartmentRequestBuilder.java: id: ed69d2c2ec14 - last_write_checksum: sha1:117624a8dac3ef7694bfabb56f2a39e58d50a598 - pristine_git_object: 23b4c93b7b147501faa485b768f98f377b58d152 + last_write_checksum: sha1:cc5428bf998349074c4a4525d089c5d7d4a50647 + pristine_git_object: 7b47e4df3b9f63fe40f4983fc4c9a8b117cc13b4 ? src/main/java/com/gusto/embedded_api/models/operations//async/DeleteV1CompaniesCompanyIdBankAccountsBankAccountIdRequestBuilder.java : id: 1ec693bd6b86 last_write_checksum: sha1:a9779cd10ac099f079c04ff1e405aeafe8a18970 @@ -10548,16 +11480,16 @@ trackedFiles: pristine_git_object: d9ca3de6975fd981f0c6a1f0ed582b921eb7ef52 src/main/java/com/gusto/embedded_api/models/operations//async/DeleteV1CompaniesCompanyIdPayrollsRequestBuilder.java: id: 2ba51af93ea4 - last_write_checksum: sha1:4f96eb0f8e5b5f6279614f58eade3c76fac90154 - pristine_git_object: e9b6a016b84fd4619249606f216a00f1f797debb + last_write_checksum: sha1:c0e653ece338fa7eda0440f5e1d7c599bb32db21 + pristine_git_object: c6ceb3d8b6c326d848821ec87860df30e0b0f716 src/main/java/com/gusto/embedded_api/models/operations//async/DeleteV1CompaniesCompanyUuidHolidayPayPolicyRequestBuilder.java: id: 72d06d1a0dea last_write_checksum: sha1:2e88f6f74c97f1fe6e35a978b9e00022e9c2f787 pristine_git_object: a7392252f8f63583b25c68d3bcc5bddd5889f663 ? src/main/java/com/gusto/embedded_api/models/operations//async/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder.java : id: be63fed4add8 - last_write_checksum: sha1:5b33f5382a24f471f3ec6001d78e0c4264b7790c - pristine_git_object: 1fd41340c5093deacaff2160d2bd76ce33efcffd + last_write_checksum: sha1:10d7321e71d877e301748c2cd37ad1ef5b83c908 + pristine_git_object: b6a81d43de30a84569f682fc01073923dc677f57 src/main/java/com/gusto/embedded_api/models/operations//async/DeleteV1CompanyBenefitsCompanyBenefitIdRequestBuilder.java: id: 01d6a2c7b6ab last_write_checksum: sha1:4bedec0ee9258e0f24bfdb1e5edba80059128071 @@ -10568,20 +11500,24 @@ trackedFiles: pristine_git_object: f679e6912a9c65741bbd4df027a50ad0e0f6caa7 ? src/main/java/com/gusto/embedded_api/models/operations//async/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder.java : id: aae48f68eba1 - last_write_checksum: sha1:386cb5f087da817b447e6584e8da8b57bb050617 - pristine_git_object: 61038fe8ac0215b949e7950349e35010fcb4451e + last_write_checksum: sha1:7ddc4ceb6fcad9c4d00fb6790ede773a04d6ee4d + pristine_git_object: fee9bdaa03df05e9c5e86dd432c233ac772008b4 + ? src/main/java/com/gusto/embedded_api/models/operations//async/DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder.java + : id: da6d5125b3bc + last_write_checksum: sha1:24a267e682c761fb644e10d934c999048745aa83 + pristine_git_object: 078d7c2ddd916fc245bcf132321895d056e710b1 src/main/java/com/gusto/embedded_api/models/operations//async/DeleteV1ContractorsContractorUuidRehireRequestBuilder.java: id: abfc8a497312 - last_write_checksum: sha1:b5526713ca797be6b65ebb0494756223642d6b40 - pristine_git_object: 2234853c9aa7222f0a580f2f410ebd43f919c507 + last_write_checksum: sha1:4cea287c3f1cea8c1d0ec14951babe67c05696c6 + pristine_git_object: b46fa9dc614512431a02fae9bae8aad7de275c53 src/main/java/com/gusto/embedded_api/models/operations//async/DeleteV1ContractorsContractorUuidRequestBuilder.java: id: ed323c3643c7 last_write_checksum: sha1:b5454d1495c4a10186c14844263f19a879512892 pristine_git_object: 614377ba35c2d8889da968ca36513ded22315be6 src/main/java/com/gusto/embedded_api/models/operations//async/DeleteV1ContractorsContractorUuidTerminationRequestBuilder.java: id: ce392a334729 - last_write_checksum: sha1:bec311c897a8376ecad1ba5e84508904e67a00c1 - pristine_git_object: 73d5beddc9bd69e0c880f68ff6249d0235c2e65a + last_write_checksum: sha1:ba53d1ca4b3833f33918fc0a58405bc5b5a139dc + pristine_git_object: 1b345ef9fa7fb553dd310491f6f29e6759fc975b src/main/java/com/gusto/embedded_api/models/operations//async/DeleteV1EmployeeBenefitsEmployeeBenefitIdRequestBuilder.java: id: 872ddcf1944a last_write_checksum: sha1:09e0d01ffaca4ea01b80c4a0a16775779e446a8c @@ -10598,6 +11534,10 @@ trackedFiles: : id: 987edc251f30 last_write_checksum: sha1:5cea3e7921fd3cfb8831420e73669bab20442d9f pristine_git_object: ae184e572975b3d930d499381f55a3637b8d1205 + ? src/main/java/com/gusto/embedded_api/models/operations//async/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java + : id: fd3c27710757 + last_write_checksum: sha1:de871ff57e6627cc183bb44c90ce95dfa4e9d071 + pristine_git_object: 651e537e611c21f2895113678e74c3c09929429b src/main/java/com/gusto/embedded_api/models/operations//async/DeleteV1EmployeesEmployeeIdRehireRequestBuilder.java: id: 8d020041b133 last_write_checksum: sha1:98790d8a21aeec83e303474fce596c3c3be566c0 @@ -10616,8 +11556,8 @@ trackedFiles: pristine_git_object: f983ef470f8ad0d094e22e2f9ae9cac25122c6da src/main/java/com/gusto/embedded_api/models/operations//async/DeleteV1JobsJobIdRequestBuilder.java: id: 8f8783f41113 - last_write_checksum: sha1:e8dbd093f3bfe9ac7ba7d82125c201e9f6668e0e - pristine_git_object: f922c7847d346fc60795a42617e1d20ffbc6cf64 + last_write_checksum: sha1:cfcadbef2f7cab9f4a4f6087be01b96efa90bc99 + pristine_git_object: e8960b19ec989a73e95f8587bc4bf4c2662301d2 src/main/java/com/gusto/embedded_api/models/operations//async/DeleteV1RecurringReimbursementsRequestBuilder.java: id: b40c7856d13a last_write_checksum: sha1:734f0c149e6a0306a0792f7b11a9a94644bd0237 @@ -10628,12 +11568,12 @@ trackedFiles: pristine_git_object: 7b1646e5163ac819a00b2be8c49122698450d50e src/main/java/com/gusto/embedded_api/models/operations//async/DeleteV1WebhookSubscriptionUuidRequestBuilder.java: id: ebd9a84ec80b - last_write_checksum: sha1:84cfbb6aa91b150b4d6e4cc6765ddb10a9ce1225 - pristine_git_object: a1b801e982f7d25801cebaa70966ef8396884475 + last_write_checksum: sha1:1f00a29abbf9d254e65d42245cde50769ba8d07d + pristine_git_object: e472a9911e80a3d142588def0494572ad85ad64f src/main/java/com/gusto/embedded_api/models/operations//async/DeleteV1WorkAddressesWorkAddressUuidRequestBuilder.java: id: 60d387238dd3 - last_write_checksum: sha1:d0a54347968ba8da789fbec1e7095697b0a5a680 - pristine_git_object: 0a4dac3c6d3a4396df4c8e8c7b0d4297c94e6f1d + last_write_checksum: sha1:e7e4ed01428107bd00f14853bbd4452e096b3d53 + pristine_git_object: 31ddcef3b1908d2db12ffc039cd61d58e55f5b27 src/main/java/com/gusto/embedded_api/models/operations//async/GetAchTransactionsRequestBuilder.java: id: ed275391bcec last_write_checksum: sha1:2a3a6194508a2955fec31483d2e1d0d11f5a2c9f @@ -10656,20 +11596,20 @@ trackedFiles: pristine_git_object: 7dca2550461e2a746417d7418c949b07efd16178 src/main/java/com/gusto/embedded_api/models/operations//async/GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder.java: id: fbc81d902336 - last_write_checksum: sha1:ac5ab164c0ba276fbaeb8c99be7969ce8e3e6f75 - pristine_git_object: 3607bf350073c6d9967a5956ef3e1971e0ff1638 + last_write_checksum: sha1:face799b748ac902ec93d5ead6cc08e7ac6409db + pristine_git_object: 2e5bb8133e59ca51bfd4c142fbf1d6626e748041 src/main/java/com/gusto/embedded_api/models/operations//async/GetCompaniesDepartmentsRequestBuilder.java: id: ebae56cff12e - last_write_checksum: sha1:3c5b481ed08b07c55db4c77a01d89721ef3b055c - pristine_git_object: 510a2525b368dee28cf683b362b42ae2e4e26d80 + last_write_checksum: sha1:0074bd1667d9c862aafebae5fb2b814e90dcc780 + pristine_git_object: 9f6e31108f580efc7d694656bbc20f02e020e7fa src/main/java/com/gusto/embedded_api/models/operations//async/GetCompanyNotificationsRequestBuilder.java: id: 204f4d73b7c2 last_write_checksum: sha1:74712655cf31992430ae0be1e3240119ba592840 pristine_git_object: ff7df165ed856bc1fd9ca260c92b4a4781a29d8c src/main/java/com/gusto/embedded_api/models/operations//async/GetDepartmentRequestBuilder.java: id: 555d1670ee8b - last_write_checksum: sha1:111d2b7b7c314e3362b34039d16a70d91ec669f7 - pristine_git_object: 3223af68b97ff0b764a3658afbda9bd0cd45d5e5 + last_write_checksum: sha1:8af4250c6f6ba324331d209059f43bc6bd9b2ff9 + pristine_git_object: b55de30f5570c1f880670430cd943b84f9360068 ? src/main/java/com/gusto/embedded_api/models/operations//async/GetEmployeeYtdBenefitAmountsFromDifferentCompanyRequestBuilder.java : id: add2850332b7 last_write_checksum: sha1:c5543f965a4031d3fd2d494aa3bc6e72ad221c8b @@ -10688,8 +11628,8 @@ trackedFiles: pristine_git_object: bc0b666af3482c139a3384a29b73ed6d61bd6d36 src/main/java/com/gusto/embedded_api/models/operations//async/GetNotificationsNotificationUuidRequestBuilder.java: id: dc6142cc0429 - last_write_checksum: sha1:421953b990250f8dcc21f85b08b46d6d2474d080 - pristine_git_object: f26fd04b519619af4fc1698f91ff12edd61be107 + last_write_checksum: sha1:d6ee045167d15c89b9004ade2097134119997f89 + pristine_git_object: 058be10d813d22a4ae84ad6044ca2da773f0deb6 src/main/java/com/gusto/embedded_api/models/operations//async/GetRecoveryCasesRequestBuilder.java: id: 4a5ae0f78ded last_write_checksum: sha1:2315f096485a2b70c50d9b4d17b3a9836496a389 @@ -10698,6 +11638,18 @@ trackedFiles: id: fdba76b60df7 last_write_checksum: sha1:a295448576ab33212f9e452318338c86334e46c5 pristine_git_object: 25219dfb39ba56def4b559ea35f79797929d2dd4 + src/main/java/com/gusto/embedded_api/models/operations//async/GetReverseWireTransactionsRequestBuilder.java: + id: e9cd6df53754 + last_write_checksum: sha1:9b0bf1d4481bf096afac8355cc11174b9ed4aecf + pristine_git_object: e38ee2c711edaf1b2c8ae0aa5bb3ec777d4d9329 + src/main/java/com/gusto/embedded_api/models/operations//async/GetTaxPaymentRequestBuilder.java: + id: eac23b692062 + last_write_checksum: sha1:923b4c96b48bff545b6c2b8eca6c4a2ce114f376 + pristine_git_object: 2dd21630701591b12ad894cf21f36700978be5b1 + src/main/java/com/gusto/embedded_api/models/operations//async/GetTaxPaymentsRequestBuilder.java: + id: ce58171ee045 + last_write_checksum: sha1:cd275ec8872c7afc7b6a80b97f00e32b28cf6653 + pristine_git_object: e24653b8611b79d593d5b94c4c783e33705d1abb src/main/java/com/gusto/embedded_api/models/operations//async/GetV1BenefitsBenefitIdRequestBuilder.java: id: 9b1186f2da4c last_write_checksum: sha1:2619f6fe1729abb6a642dac747f461f4b8270ace @@ -10714,6 +11666,10 @@ trackedFiles: id: 4539697f7903 last_write_checksum: sha1:8b8d3b3749fa18c6c1fdfb4aafa393ba25bc4f89 pristine_git_object: 836292ee1e1e51cf3fc0cd4c0b8d74dae0b5d2fc + src/main/java/com/gusto/embedded_api/models/operations//async/GetV1BulkReportsRequestUuidRequestBuilder.java: + id: fd30428bc0b4 + last_write_checksum: sha1:b151b2f54d84e37fb14b7c032939784198d1c822 + pristine_git_object: 6aa5e0cb567b138e2cb414c29b1bb7ffa9de61f1 src/main/java/com/gusto/embedded_api/models/operations//async/GetV1CompaniesAttachmentRequestBuilder.java: id: b7a5f99d9425 last_write_checksum: sha1:ef329df3fa7a817a45b002a79581ccf775aa6fb4 @@ -10728,8 +11684,8 @@ trackedFiles: pristine_git_object: 87023fcf962442cb55392712d97e43bc86132fe4 src/main/java/com/gusto/embedded_api/models/operations//async/GetV1CompaniesCompanyIdAdminsRequestBuilder.java: id: bc676aa9370d - last_write_checksum: sha1:5d130218b8c1a322e33ddc33a9ba077d8caf472b - pristine_git_object: a01010320a042861be223d6e629156e0b648e85e + last_write_checksum: sha1:33525138c4963a3002374c9199ce14567eb9877b + pristine_git_object: b3809a10d973d2fa6fca6accc6ada5bd6b5559cc src/main/java/com/gusto/embedded_api/models/operations//async/GetV1CompaniesCompanyIdBankAccountsRequestBuilder.java: id: 35b3007360e0 last_write_checksum: sha1:cebdad370422522764b6044c54de83287b2c048e @@ -10752,8 +11708,8 @@ trackedFiles: pristine_git_object: 659fd56ddb7068f414040ce486fa7cd059b1c718 ? src/main/java/com/gusto/embedded_api/models/operations//async/GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder.java : id: 336ba023cd6b - last_write_checksum: sha1:aabca69b9406b4fc8c3336123cbe8fdd3b758045 - pristine_git_object: a3edc0953251990052909eb23bbdb2633b1f74a6 + last_write_checksum: sha1:ae2596ac82612b23d1a5d5259e8fd636336fa5f0 + pristine_git_object: 14a0e3923e79dfe45dd77d96e13139f0f0d97e77 src/main/java/com/gusto/embedded_api/models/operations//async/GetV1CompaniesCompanyIdCustomFieldsRequestBuilder.java: id: ebf3f6786a6b last_write_checksum: sha1:38c5c3cfe872e14e24f7a441445e769f8b91ffef @@ -10772,8 +11728,8 @@ trackedFiles: pristine_git_object: d743530fd189b7f471e5fca30fdc9e97e14ec3c5 src/main/java/com/gusto/embedded_api/models/operations//async/GetV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder.java: id: 9faacebd6a59 - last_write_checksum: sha1:b2124b27ed5ea0771db9861d8f5020645f67e7f4 - pristine_git_object: eb92e1e7815a4a0b562a3d2aa078b994bbddbc96 + last_write_checksum: sha1:0893bb505dcde1f34d496de49bb416717dc5b4d5 + pristine_git_object: ad7a97fa499f38aa89d5d329fe0a536d37fc9c02 src/main/java/com/gusto/embedded_api/models/operations//async/GetV1CompaniesCompanyIdLocationsRequestBuilder.java: id: 84163334bf29 last_write_checksum: sha1:c194ba6b1ec0778aacc6fda55d9c6aab9fc69a92 @@ -10800,12 +11756,12 @@ trackedFiles: pristine_git_object: a9ac477a2f4426b09c654341c20a632574c94b4d src/main/java/com/gusto/embedded_api/models/operations//async/GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder.java: id: 52af3cc9e272 - last_write_checksum: sha1:a434e3aed33a73afa728d60ed1664ffca14958bc - pristine_git_object: 4740d9c7caba44faefc9dc1a90964df779ddb43b + last_write_checksum: sha1:3fb6a1bf93b0fab870841c1cb2687895f32d7bdf + pristine_git_object: 7e2ba8c3f71be1db8384c3cebd15a25431b3dd74 ? src/main/java/com/gusto/embedded_api/models/operations//async/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder.java : id: 222736a5a6f8 - last_write_checksum: sha1:79c1ece8e84139b3f7d35f7729c6fd4498348508 - pristine_git_object: 0399d4b202c324de1e05d4915cba82dd9c3a4cff + last_write_checksum: sha1:a3c3af00410650740f31c8745311516be4fab21e + pristine_git_object: 39f55784446b28766517daa5691d80b40d3cddb3 src/main/java/com/gusto/embedded_api/models/operations//async/GetV1CompaniesCompanyIdPayrollsPayrollIdRequestBuilder.java: id: 7f84e88f6cc1 last_write_checksum: sha1:9b88dad80005bd8d2fb964e154eac53deb28f17c @@ -10828,16 +11784,16 @@ trackedFiles: pristine_git_object: 20ed951978123e927e1b86f27d75990ca8eca54c src/main/java/com/gusto/embedded_api/models/operations//async/GetV1CompaniesCompanyUuidSignatoriesRequestBuilder.java: id: f999523dd1bd - last_write_checksum: sha1:cdd019c25819201bebdc454582ab531597e65b02 - pristine_git_object: 65b72810470c97ab9577ded433fef145ee57e932 + last_write_checksum: sha1:781b565ebb200edca7610a1d6d91b4a8570d7834 + pristine_git_object: c1f9c194e0edfde3266682dc6a7d808c86035a44 src/main/java/com/gusto/embedded_api/models/operations//async/GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder.java: id: 90e20b78adb6 - last_write_checksum: sha1:91b80f1b4edf96851ceb0f7f870ced6dbd00aab4 - pristine_git_object: e8053ac488f647d8300e3cd7251d41b424c26037 + last_write_checksum: sha1:4030c3c3e0cdd445e1a5b000b30c3ed3ab535877 + pristine_git_object: e763e92f30a81fb8095a73ff71b72a4e5e7bd9df src/main/java/com/gusto/embedded_api/models/operations//async/GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder.java: id: 52316951d416 - last_write_checksum: sha1:55cdd2ba1b0ff3a4724875db49543876b29ee03a - pristine_git_object: 05fcc96ffcb3ba729d2eb74b760478f619cfeac1 + last_write_checksum: sha1:83948d871b486e27f1d49cce19cd95687a668eab + pristine_git_object: d9f303c5ad92b7dee7e27fc73ea968b3ed498c9c src/main/java/com/gusto/embedded_api/models/operations//async/GetV1CompaniesCompanyUuidTimeOffBalancesRequestBuilder.java: id: 06e769d894ef last_write_checksum: sha1:3cfa67f3c2bd7c767283b7422783c635796fc5f4 @@ -10856,8 +11812,8 @@ trackedFiles: pristine_git_object: b8909d676d48c2cb318d90f2a50e198a796280ce src/main/java/com/gusto/embedded_api/models/operations//async/GetV1CompaniesRequestBuilder.java: id: 3cbbd76d6e2b - last_write_checksum: sha1:de3272b25ddaf81c9c037eba95e200fce1d8584c - pristine_git_object: 5004937ddd839f6d6403e1f57c1a3c91c33eefab + last_write_checksum: sha1:657ebc968441b935fabecd62690731edf35a5e38 + pristine_git_object: 23104d5b7f0653568765ee742b6c9646544ea576 ? src/main/java/com/gusto/embedded_api/models/operations//async/GetV1CompanyBenefitsCompanyBenefitIdContributionExclusionsRequestBuilder.java : id: 5bf4621fd535 last_write_checksum: sha1:c654a9e6601783abd3b7d6464f0215a1fdb03fd5 @@ -10868,16 +11824,16 @@ trackedFiles: pristine_git_object: eadd0fc1453c8ccb62a6676183a865767b6900f0 src/main/java/com/gusto/embedded_api/models/operations//async/GetV1CompanyBenefitsCompanyBenefitIdRequestBuilder.java: id: 6aa8f2296418 - last_write_checksum: sha1:21082b31491634ae4111b06692f0698ba51c979c - pristine_git_object: ac803ab8335fcc412cc26577785235438ea3b8c8 + last_write_checksum: sha1:88bb162dcde8d7838c9c30adf467c2ceab8d9dcd + pristine_git_object: 25f60641e71d8472411d9e550adb2deeac51e61a src/main/java/com/gusto/embedded_api/models/operations//async/GetV1CompanyExternalPayrollsRequestBuilder.java: id: 47bb60a515e5 last_write_checksum: sha1:f39c490e4596f2088d9ce4053325946546b647be pristine_git_object: 4f254ae460b774755fdfe911f5aaddae739b6583 src/main/java/com/gusto/embedded_api/models/operations//async/GetV1CompanyFinishOnboardingRequestBuilder.java: id: 13b130524ff2 - last_write_checksum: sha1:501786705969411c5bae8bbd48ea742ca8ba99ea - pristine_git_object: 936771fa9b9c8c1ac53c58b7e7ef09263284c674 + last_write_checksum: sha1:5993f50fc25e589c7c7471f38775f5f8d2e9588b + pristine_git_object: 0924d5adec56e011ccc40857b5cd853146ddb121 src/main/java/com/gusto/embedded_api/models/operations//async/GetV1CompanyFormPdfRequestBuilder.java: id: e5339111763d last_write_checksum: sha1:055d291cc9ad3239697afa2afbc7b707dec097c8 @@ -10892,12 +11848,12 @@ trackedFiles: pristine_git_object: cde4bdd213fe67642ac20d149058a201253aebf4 src/main/java/com/gusto/embedded_api/models/operations//async/GetV1CompanyIndustryRequestBuilder.java: id: f45dff8d7b39 - last_write_checksum: sha1:107b7b6237ef35710ca9b01396bb7c90e9354b21 - pristine_git_object: 4acab3128486eb2cc39e05786ee9f4675b37f225 + last_write_checksum: sha1:39972e73d9a2beec897be9fe3aa841fbb8f38e80 + pristine_git_object: 82b31adba83b064d8f011ab7f9283781bb24abad src/main/java/com/gusto/embedded_api/models/operations//async/GetV1CompanyOnboardingStatusRequestBuilder.java: id: 54190ab4fbb5 - last_write_checksum: sha1:c78278e2115ec9b4c1477e1fb11183e25291d7f9 - pristine_git_object: 715af1db097b1654053ba7b08bb345218cc019e0 + last_write_checksum: sha1:080844b991fc56431462643524349af5348af29e + pristine_git_object: 6eae4cd6551a754b68066041e81a4c61c7069694 src/main/java/com/gusto/embedded_api/models/operations//async/GetV1CompanyPaymentConfigsRequestBuilder.java: id: 725119b5f1f1 last_write_checksum: sha1:b0f4fa99469e9e65642fe1630e68282de9eae3f0 @@ -10932,12 +11888,12 @@ trackedFiles: pristine_git_object: 5e5dd8036671729669a1ed982537402ddbad1180 ? src/main/java/com/gusto/embedded_api/models/operations//async/GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder.java : id: eb63532d6bef - last_write_checksum: sha1:89543ad1a2320b09026589d0ee507b79aa0dfa1d - pristine_git_object: 272d4c4b2261f829907dad188f62c2cc541a7f32 + last_write_checksum: sha1:e3f8ded312eec03ab804db9e7e9854a6f71ea0fd + pristine_git_object: a29f5bf1f46d53c11ffb982a457b5013ace0e5d4 ? src/main/java/com/gusto/embedded_api/models/operations//async/GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder.java : id: a6412fdcb3e1 - last_write_checksum: sha1:ff1925455fa57e099f776eb1018c6839a2a1728b - pristine_git_object: fade5ff4b9947cda1bc0110bc335e7cf6efdae18 + last_write_checksum: sha1:ebafbe87614f6f765804aefaeb930634b7417551 + pristine_git_object: 42b3189c145a6e7cfd20be3dd09d3735b7613624 src/main/java/com/gusto/embedded_api/models/operations//async/GetV1ContractorPaymentsContractorPaymentIdPdfRequestBuilder.java: id: b4a84c964d14 last_write_checksum: sha1:640bc5c3a139345ef12a6009fb2ccc1401f72d4b @@ -10958,6 +11914,10 @@ trackedFiles: id: bda00e767f02 last_write_checksum: sha1:e91b29e26886f7bf73a36fb90c62fa442615b13e pristine_git_object: 6db7f8bb235ad22eee904f61c710c46608fd050b + ? src/main/java/com/gusto/embedded_api/models/operations//async/GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder.java + : id: 3baf236e2a85 + last_write_checksum: sha1:7c3fef6d498adf412c9587eeacfea467d29afae1 + pristine_git_object: 418540c5ccf5cd08e67ee7249e118bed35bfa32f src/main/java/com/gusto/embedded_api/models/operations//async/GetV1ContractorsContractorUuidOnboardingStatusRequestBuilder.java: id: a95a76e9c86f last_write_checksum: sha1:ebb9b1ba906a6a759200f2ae2d3305269d6c6bad @@ -10966,6 +11926,10 @@ trackedFiles: id: f6768612fdfb last_write_checksum: sha1:4c93bfaea6d952f5ba788b5099c21255cf3b521f pristine_git_object: 888d71f46569715aafa578d112c7a9264df54b83 + src/main/java/com/gusto/embedded_api/models/operations//async/GetV1ContractorsContractorUuidPaymentsRequestBuilder.java: + id: 50a934d54835 + last_write_checksum: sha1:b28d1ff741858147dbd21478046cae614745c19d + pristine_git_object: a9f8a53c4bf5d4e97490900d5a4de9252314d7ef src/main/java/com/gusto/embedded_api/models/operations//async/GetV1ContractorsContractorUuidRequestBuilder.java: id: 02e52b3db080 last_write_checksum: sha1:563539efabdd514594312cd0f61832bda772718e @@ -10992,8 +11956,8 @@ trackedFiles: pristine_git_object: 3714066c46a41a493c6737349172ffc57781d7d5 src/main/java/com/gusto/embedded_api/models/operations//async/GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder.java: id: 4813b830b680 - last_write_checksum: sha1:3dba3de67b768b83aad10c43454b20a0e86acb66 - pristine_git_object: 4dc6187f0043f7513f160a7d3c3be24c251f2282 + last_write_checksum: sha1:a975c5ecbf0333445f98f00e153eb640bb72143c + pristine_git_object: ce8552fd0417bb4946c784bdb694dc686777be4f src/main/java/com/gusto/embedded_api/models/operations//async/GetV1EmployeesEmployeeIdEmployeeBenefitsRequestBuilder.java: id: 9ac8072ba429 last_write_checksum: sha1:159ea28c3dc53bbb0ede54a59c97742dd0a56e4a @@ -11012,8 +11976,8 @@ trackedFiles: pristine_git_object: cf65f49f03d6e8a07a59962d21e2f93b8c819a2c src/main/java/com/gusto/embedded_api/models/operations//async/GetV1EmployeesEmployeeIdHomeAddressesRequestBuilder.java: id: 0fe7e16cfd89 - last_write_checksum: sha1:4398568c0982ec5e477547429dca220fc6963a16 - pristine_git_object: a66d92f4541e584ad6e33798d0307d860e5a6a5f + last_write_checksum: sha1:b41736bf30ac6a5147e2a79ff1e8dfc09cbececc + pristine_git_object: 817e3c5136f3d5189d8dd3c0265fdadf1637938f ? src/main/java/com/gusto/embedded_api/models/operations//async/GetV1EmployeesEmployeeIdI9AuthorizationDocumentOptionsRequestBuilder.java : id: c77095249b80 last_write_checksum: sha1:6e1315c8af5d269caffe50dd6b065c14d758de0c @@ -11030,6 +11994,10 @@ trackedFiles: id: 654cea72e1d5 last_write_checksum: sha1:7ba1f058d63c411b9f1a5c545832dcd377e61ad2 pristine_git_object: 29b3e8249b0c6516896dc9198d6a4b686f240c75 + src/main/java/com/gusto/embedded_api/models/operations//async/GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java: + id: "688487145e51" + last_write_checksum: sha1:a03dcbe9f207a5adbb45c389101fba41901d0cf5 + pristine_git_object: 5bd3a7d259f340056f6e2c4f0d84dc5bc1a37bec src/main/java/com/gusto/embedded_api/models/operations//async/GetV1EmployeesEmployeeIdOnboardingStatusRequestBuilder.java: id: 30387dede46a last_write_checksum: sha1:d6155e73a5736da5ecccd03cbb10dfb81d79616f @@ -11056,24 +12024,24 @@ trackedFiles: pristine_git_object: c2eff5c4efe51f50cbf7159dbbe2ef87d966277e src/main/java/com/gusto/embedded_api/models/operations//async/GetV1EmployeesEmployeeIdWorkAddressesRequestBuilder.java: id: 49d49c2d38bc - last_write_checksum: sha1:7377c1b8abe2feb67a00b5bfc8d7bc74240204db - pristine_git_object: aa260ce30f2adf37b479f1b500cac548a8517274 + last_write_checksum: sha1:0c4728e3e2943256de9ffa13dbcc4e6da8eab28e + pristine_git_object: 36d2f1995aacf8eb33435513a80da4874e75efff src/main/java/com/gusto/embedded_api/models/operations//async/GetV1EmployeesEmployeeUuidPayStubsRequestBuilder.java: id: 901b7da008f9 last_write_checksum: sha1:20dcb69a1cd679229b5ccac8a13d55eb6c7dcd15 pristine_git_object: 55ea69d021a2c7bfc4677d1300db5516c20c8abc ? src/main/java/com/gusto/embedded_api/models/operations//async/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder.java : id: 4118465bad26 - last_write_checksum: sha1:89679a388d01e388ea978e3f7cf0d1c59a2d854f - pristine_git_object: e9dff2e9a496192fb2aa293b5f04800145c4c591 + last_write_checksum: sha1:48519d5a890064f8e91b6b23436000ad5cd9e56c + pristine_git_object: d0deea3e883e24abdc0c94295ed4e8f28227be35 ? src/main/java/com/gusto/embedded_api/models/operations//async/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder.java : id: 32b21a35fafb - last_write_checksum: sha1:efacdbe23d4e523d10b857414aee754a68134a1d - pristine_git_object: bc248ad5e93de49b0e9ce4730cb11412a4a7cb5e + last_write_checksum: sha1:9795de3964fea683aa6eb8f0580b6a8d3c9fc58f + pristine_git_object: 8c9130c9f5024bc983326cee17f579586c98e176 src/main/java/com/gusto/embedded_api/models/operations//async/GetV1EmployeesRequestBuilder.java: id: d1bb9266a202 - last_write_checksum: sha1:dff482f07c390da720f1770e86b3592b0caa16be - pristine_git_object: b3cfd4ce636e407aeac483c646b9a3e31152dc19 + last_write_checksum: sha1:4d1dada2d9f1fff64e34bb164a882e3906406d04 + pristine_git_object: 9b3cf317cde6653c8cf37c1addcd0e050deedc35 src/main/java/com/gusto/embedded_api/models/operations//async/GetV1ExternalPayrollCalculateTaxesRequestBuilder.java: id: a61ededddc26 last_write_checksum: sha1:56aba8174b0668326d639fa9ed7b99e1f18e04cd @@ -11092,48 +12060,52 @@ trackedFiles: pristine_git_object: 64afb289f541625d8f1f968717f1ce5c809be9c7 src/main/java/com/gusto/embedded_api/models/operations//async/GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder.java: id: 231a96ecc347 - last_write_checksum: sha1:2ecdb439d993d864b537542566f63336bb71d363 - pristine_git_object: 48488bc124d5db553734e845440f64aa25a56893 + last_write_checksum: sha1:bb68c1d06494ba0e62748bdb384ddafd32bf767f + pristine_git_object: 4f4ce8c652ddc4fb410aa799cfadae798b5fc75d src/main/java/com/gusto/embedded_api/models/operations//async/GetV1HomeAddressesHomeAddressUuidRequestBuilder.java: id: 5fea4c685d21 - last_write_checksum: sha1:6efdcc2914a5fb0d2a81776d8335b1c5e1dc8341 - pristine_git_object: 50c2244be9a29d52ded3f817c8930b15ed782021 + last_write_checksum: sha1:a70e62fc1a1a0c0bf30dc1a8477fb715e6ae6fa1 + pristine_git_object: 4a70fc9e851c5eb5c991d98c37b87eb9968e275d src/main/java/com/gusto/embedded_api/models/operations//async/GetV1JobsJobIdCompensationsRequestBuilder.java: id: 84c859099601 last_write_checksum: sha1:143151e3a352b83b10d6c73e7a859be369fc2ac3 pristine_git_object: 9d36126c9ab36ee4fbe05a7baeb1bd429861cc48 src/main/java/com/gusto/embedded_api/models/operations//async/GetV1JobsJobIdRequestBuilder.java: id: dc6e5f1b488c - last_write_checksum: sha1:09f98a24d682c55cce0ab1fd7f678f73774ff4a5 - pristine_git_object: 559cf029d871e611e99aa92760043ea3c49589ac + last_write_checksum: sha1:8d6780ebb7ea52e5ecadf0c23acc13ccc3f88fa0 + pristine_git_object: 2ba00f5de61b025b9087cbcf196a5d8cf9488e16 src/main/java/com/gusto/embedded_api/models/operations//async/GetV1LocationsLocationIdRequestBuilder.java: id: a3a8b7c017a0 last_write_checksum: sha1:38fcc106b331d1055b695ef4ea295c2fc3578315 pristine_git_object: 2f5a908b682754e93afc7b3c36c982fb2896b4a6 src/main/java/com/gusto/embedded_api/models/operations//async/GetV1LocationsLocationUuidMinimumWagesRequestBuilder.java: id: 2c385f828bea - last_write_checksum: sha1:1eff359e791cb4175ebe0b28d8bfe00b2cdbbd7e - pristine_git_object: e9f9aedc0a5bb136e52a8e1a421442e06de00275 + last_write_checksum: sha1:2101ef27fba9f60fc091ff5e108d47e41b57096f + pristine_git_object: c45505e69ba16af6187dc9f6d52f95d39fe2532a ? src/main/java/com/gusto/embedded_api/models/operations//async/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder.java : id: d7b48a441795 - last_write_checksum: sha1:fc14bceb7df9dfc3ae07edb6c29d7310492f334e - pristine_git_object: d97c801bf2abac257a92ac78b14b884d8d374a9a + last_write_checksum: sha1:bb02afac6f2d77ec3cb856216368b23194cd0235 + pristine_git_object: 32808a4140652c0de9704c5e0816572c92f2b6cd src/main/java/com/gusto/embedded_api/models/operations//async/GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder.java: id: 13cea91ed47b - last_write_checksum: sha1:fe3a7a0aa7a675497910a3b8c6cffbd1b3ccd40b - pristine_git_object: f99c5239a28275f1e5aa3f39f816a47ec02c2347 + last_write_checksum: sha1:da021968f7e21210d3c0831898d28c41bbe073de + pristine_git_object: 3145455f44da4601d2173b862c5142266d33fb03 + src/main/java/com/gusto/embedded_api/models/operations//async/GetV1PayrollBatchesPayrollBatchUuidRequestBuilder.java: + id: aa1acb8d9ca2 + last_write_checksum: sha1:50e2f8885d5a501eb21d19dff2b61574811ae25d + pristine_git_object: 31d9d08eb4c280f32b92c18975f3cb8243b07169 src/main/java/com/gusto/embedded_api/models/operations//async/GetV1PayrollDigestsPayrollDigestUuidRequestBuilder.java: id: 6a5f9bd7118f - last_write_checksum: sha1:40b6d6bceb754706ca38724a20b686b81f515863 - pristine_git_object: 3f0de855f0496673be9af66e5fb45d1c44d1d1bd + last_write_checksum: sha1:bebc417ce953c0f2b59519fc9bb879f0cff1e9f0 + pristine_git_object: a9f4040d19781b10492dcd586010d5c10127e2a4 ? src/main/java/com/gusto/embedded_api/models/operations//async/GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubRequestBuilder.java : id: 612f47cc6a4f last_write_checksum: sha1:1ae09ccb7fbbb6c9c26f44e175b8f9ff2c8e5b23 pristine_git_object: 9fbec4546d4c75498ff299c8e18be6ab8bae53e5 src/main/java/com/gusto/embedded_api/models/operations//async/GetV1PeopleBatchesPeopleBatchUuidRequestBuilder.java: id: 1e0e14f969ab - last_write_checksum: sha1:70b27cdce2afc25c919a38cff1026b7b0a4d8f82 - pristine_git_object: 76cb1b6a92d6cc8e437f3f2b068e352b0d6c7c98 + last_write_checksum: sha1:6729b55edf060bcf57d65fe3f32d42c8a3c4b6a2 + pristine_git_object: 9753f39183a8905c8830a8c304088e12b2f5f72f src/main/java/com/gusto/embedded_api/models/operations//async/GetV1RecurringReimbursementsRequestBuilder.java: id: f269e5b2ea47 last_write_checksum: sha1:c8cbc58c3fdefac35cffbf591cf14247a8536c38 @@ -11164,16 +12136,16 @@ trackedFiles: pristine_git_object: 798826a7c71466f006569e65b99e0987366cfa17 src/main/java/com/gusto/embedded_api/models/operations//async/GetV1TokenInfoRequestBuilder.java: id: 8470fa7f8355 - last_write_checksum: sha1:dc46f19936199e27989bf41c1a91250c9f24e5a2 - pristine_git_object: 4ce7210acbfde928202107d34aa2d2595c888c0c + last_write_checksum: sha1:b232ed41f2c4fc40e043175508bc30eb1368edae + pristine_git_object: 78f47cec695cd6dc6b86f080d7609fa81c5526be src/main/java/com/gusto/embedded_api/models/operations//async/GetV1WebhookSubscriptionUuidRequestBuilder.java: id: 449c5a571091 - last_write_checksum: sha1:80e2610e42f7943aa528eb411b64c4281f30fc51 - pristine_git_object: 2902b51eced6e04778d5bdfc1f65a8feec2acc8e + last_write_checksum: sha1:fb949a294e9c38ba1a2307d3f8d0bf4d30ec93cc + pristine_git_object: 729f293b583d290fa3b34a12c47efd9db0e8d4ff src/main/java/com/gusto/embedded_api/models/operations//async/GetV1WebhookSubscriptionVerificationTokenUuidRequestBuilder.java: id: f88598503a4d - last_write_checksum: sha1:9a4edf532aa34c9fc47691a8eb7180b7a389d930 - pristine_git_object: 353daa79d33b46a90d615fce27d1b9d5109cd4a1 + last_write_checksum: sha1:6d492a4385eac209d815fb613d6d52521b5fc4b1 + pristine_git_object: cf6c7d9fa5f39886a75975696683d44f4de4a41b src/main/java/com/gusto/embedded_api/models/operations//async/GetV1WebhookSubscriptionsRequestBuilder.java: id: c6726b0aff3f last_write_checksum: sha1:e112aeebac6ecfabdbdf632bbf499dda0b8d5809 @@ -11184,32 +12156,32 @@ trackedFiles: pristine_git_object: 3e29b0c1b06f3a5fa70fb5e47463d6a2b8ecb9f9 src/main/java/com/gusto/embedded_api/models/operations//async/GetV1WorkAddressesWorkAddressUuidRequestBuilder.java: id: 79e4cf3f1bd9 - last_write_checksum: sha1:14f311f3fb6957d2319f4d3dae98fab85f002a67 - pristine_git_object: cc75cc377258e639e2062946fcb0b219aa4a11b7 + last_write_checksum: sha1:b8ef2302ea437c0f912d88a6be3b3273f5e3e447 + pristine_git_object: cd6b880c78a7c61a0e513bcbc8b66c50089d9547 src/main/java/com/gusto/embedded_api/models/operations//async/GetVersionEmployeesTimeOffActivitiesRequestBuilder.java: id: 10afaaa01be3 last_write_checksum: sha1:b14ce44c6f767006311e00ebc90c60da7b5a7aea pristine_git_object: faa1b00a280e3baa4ed3a67a0aa3a0f1ce6b516b src/main/java/com/gusto/embedded_api/models/operations//async/GetWireInRequestsWireInRequestUuidRequestBuilder.java: id: 40aaf73287d1 - last_write_checksum: sha1:6c723178676459911e3e73d426dbb3d084bad238 - pristine_git_object: fbe4d881b5d5e6587118bbddf0bc98110f61b1fe + last_write_checksum: sha1:3408e4d18b2b5c9d1bc7c23e1c7d0efe7720b812 + pristine_git_object: 160cfa0b0edacaff0376551f95ac707c4b6700fa src/main/java/com/gusto/embedded_api/models/operations//async/OauthAccessTokenRequestBuilder.java: id: 1f4658b049e7 - last_write_checksum: sha1:ef1bcb24159f29debaf8779ada0e20ea3d202d37 - pristine_git_object: 38e5dcb99b660636c855b16666ffc51b38975b68 + last_write_checksum: sha1:c1a00772f88c5262badab3644a88251327aa5ee1 + pristine_git_object: 674505c31d7fbdf30bc5d3887b8b7e5dcb9ba337 ? src/main/java/com/gusto/embedded_api/models/operations//async/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder.java : id: 14ede85e6c81 - last_write_checksum: sha1:fab5497c341e0dc581d08c11a988fb210734e686 - pristine_git_object: bc1dd2f05ce587a6a05d0b82564a8d5d5a8c72a9 + last_write_checksum: sha1:2f2f618d1095d4fd062416dccc6d3be5004101ba + pristine_git_object: 7aa1ed6ff69b72ef1cf2c424689bb92e81e2b928 ? src/main/java/com/gusto/embedded_api/models/operations//async/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder.java : id: 8f524ecc2758 - last_write_checksum: sha1:e227d32fabec25955c56d17d01de330d05ed662b - pristine_git_object: 2bad060fbc005fadae9673a4f8ed04a423bb0ea2 + last_write_checksum: sha1:d8e203afd21e820c223530a42bb24e488ad0b98d + pristine_git_object: 1f542ed6802d2bd67076baf264667d60f136d037 ? src/main/java/com/gusto/embedded_api/models/operations//async/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder.java : id: 6b0bfe65d3bc - last_write_checksum: sha1:615a17c1ab391c00c24ea659764d2c9b867e5ddc - pristine_git_object: bc4c08ef5cb291d14932caca4330e1f6325f4531 + last_write_checksum: sha1:c6010fdf268a1dc527e99a54802cdff977179b62 + pristine_git_object: c3e4e132e325bfee4eec130c9ea4b1cd169c6957 src/main/java/com/gusto/embedded_api/models/operations//async/PostCompaniesCompanyUuidReportsRequestBuilder.java: id: 13850122bee6 last_write_checksum: sha1:7d283e78d83ca24186d8e2813a2ef27798b39ef6 @@ -11224,20 +12196,20 @@ trackedFiles: pristine_git_object: d3987abf500d4009de8bc34c9b50358d83db2ce6 src/main/java/com/gusto/embedded_api/models/operations//async/PostDepartmentsRequestBuilder.java: id: bbf361dfbd7c - last_write_checksum: sha1:ca8e396eba3489398b261a80935bda335cbf4792 - pristine_git_object: 3df29b3254f3cfcd632405e2ca319099627652b2 + last_write_checksum: sha1:3f4e98dcc8b78aaae78558e27d633146888bad77 + pristine_git_object: 646be4bdfbff60f4997807aaf1a6b776f8229604 ? src/main/java/com/gusto/embedded_api/models/operations//async/PostEmployeeYtdBenefitAmountsFromDifferentCompanyRequestBuilder.java : id: 1e06cc40cf48 last_write_checksum: sha1:087e3eb08476fb4be680e2c5c644a58ea257da52 pristine_git_object: d106662d2fba5b22747672be0c885891a9739004 ? src/main/java/com/gusto/embedded_api/models/operations//async/PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBuilder.java : id: 99caeeed0639 - last_write_checksum: sha1:5428258f985ceebee1ead6e4cd128f6c985e35c3 - pristine_git_object: 054214e652bc382e615f4a87944d249a713bb529 + last_write_checksum: sha1:c74435ea0b7bb5ef907495881c3e2c5c9703a716 + pristine_git_object: 041235deee75a41b40a9709e3cd2350313632391 ? src/main/java/com/gusto/embedded_api/models/operations//async/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder.java : id: 7de18748362c - last_write_checksum: sha1:901c5a9c76fcb7351228cc12cf732936ab8e405b - pristine_git_object: 64859af08a2c6bc9a15e8772e0704bba3b986923 + last_write_checksum: sha1:0e82c3b15a1933924692012ea1f13a0b83477237 + pristine_git_object: a11f0750d758007de2d6e245f7f0cbb3a210bf64 src/main/java/com/gusto/embedded_api/models/operations//async/PostPayrollsGrossUpPayrollUuidRequestBuilder.java: id: c98602673f8e last_write_checksum: sha1:2f094619cc78e84b134d6854ab843b1ee8e50bbb @@ -11246,6 +12218,10 @@ trackedFiles: id: aa4793171ada last_write_checksum: sha1:a4bcd2a969d3be288f097c933586e7a8727e3d15 pristine_git_object: 51b52a007f6a71b8bb68d1baef385fc9afc08749 + src/main/java/com/gusto/embedded_api/models/operations//async/PostV1BulkReportsRequestBuilder.java: + id: 4661bf38ecb9 + last_write_checksum: sha1:a3c91b58e8fc4a9880238b60c460727c1c62ac63 + pristine_git_object: 686d48bce03133cf6175cac06a206a84fbd457e8 src/main/java/com/gusto/embedded_api/models/operations//async/PostV1CompaniesAttachmentRequestBuilder.java: id: 641ec25150c3 last_write_checksum: sha1:4678c9b41267b0fcc83a40424e17cf4d81b05cd6 @@ -11300,8 +12276,8 @@ trackedFiles: pristine_git_object: 3a82506024ca037196f900691bb2c1210caa41d6 src/main/java/com/gusto/embedded_api/models/operations//async/PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder.java: id: a20cf60116e9 - last_write_checksum: sha1:17fdc9149da82037aef6f6d0c6e92e9b6aeee47a - pristine_git_object: 89086288748e42ddddc35f20fc741f7eb2e7136c + last_write_checksum: sha1:8d8e7940332a30ab3e68d65b3067d4601fd108a9 + pristine_git_object: 394dc4439c930b4bee9bc4772ca2ef6cd1ae9f66 ? src/main/java/com/gusto/embedded_api/models/operations//async/PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequestBuilder.java : id: 3312cd529ac9 last_write_checksum: sha1:d7bb7f710ac3d44b212085bad3f0432ffb66d9c6 @@ -11316,8 +12292,8 @@ trackedFiles: pristine_git_object: 375a988ce36da9e636c8557983782c2cc80d46cb src/main/java/com/gusto/embedded_api/models/operations//async/PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder.java: id: 51ce7bc1f6e5 - last_write_checksum: sha1:6c23d19de260cdeadcaa105a8538fee7c32d7ae5 - pristine_git_object: 272a5323dbf0ef59a26dc0d3e8ff74636a3ffce5 + last_write_checksum: sha1:12c1c55906a6dc8eb39baa5b77f72606ac634219 + pristine_git_object: 4d8aea9591aabb85c2cb3ca5cd276bbd3b8d0c30 ? src/main/java/com/gusto/embedded_api/models/operations//async/PostV1CompaniesCompanyUuidTimeOffAdminApprovedRequestsRequestBuilder.java : id: 2b8feaf908e7 last_write_checksum: sha1:ade27f6fcb0b0c77bfba499a4526fb1b427de521 @@ -11340,8 +12316,8 @@ trackedFiles: pristine_git_object: df5d40bed4a78ecbd71e4a5dd0e49d6b2027dc38 src/main/java/com/gusto/embedded_api/models/operations//async/PostV1CompanySignatoriesRequestBuilder.java: id: 8e69ab51bac5 - last_write_checksum: sha1:77cef8fa3de173bae6721c8a2b14dc5a07749e1e - pristine_git_object: 14aeae353b6d29c2f8f12a77ecba6fa4f955fce9 + last_write_checksum: sha1:d09a8a091906386381f546f27b966ce84963199f + pristine_git_object: d146ef4accc711cc1476528eb9ee25089058ca59 src/main/java/com/gusto/embedded_api/models/operations//async/PostV1CompensationsCompensationIdRequestBuilder.java: id: 69d02d0238b9 last_write_checksum: sha1:05c761b698294859bae1b1f4c192fcb9d846f965 @@ -11350,14 +12326,18 @@ trackedFiles: id: d2cd99436fd8 last_write_checksum: sha1:80bbf3b57d6746e0a6672297687f2fedf88f9f4d pristine_git_object: 9bae479927b9ea919f78ee62d61c47eb065b4611 + ? src/main/java/com/gusto/embedded_api/models/operations//async/PostV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder.java + : id: 8809ec6b23ec + last_write_checksum: sha1:90c62c7ccf7cf1f5f0e69aab74883df1df0ecef2 + pristine_git_object: 9e274ae8b72f31b5e6ff116caa5a85e6cf4d4cba src/main/java/com/gusto/embedded_api/models/operations//async/PostV1ContractorsContractorUuidRehireRequestBuilder.java: id: 115d037d122c - last_write_checksum: sha1:10aba69f3bb90e3056abf151cfdff65bafefd9dd - pristine_git_object: ee0cf39bb96ceae01b3eac6d70f5c32ebd55fede + last_write_checksum: sha1:90edb6d7b969dd49a7600e16bcb628a2f7b550f1 + pristine_git_object: 58053a7233887af3eedfef5f6f32dbe1c7190f42 src/main/java/com/gusto/embedded_api/models/operations//async/PostV1ContractorsContractorUuidTerminationRequestBuilder.java: id: dd7ea6aa4945 - last_write_checksum: sha1:2bea0afaf41fcf87bb55d682f87340c13b1340af - pristine_git_object: 1517b0e9ab8f788fda445fac821b48db7305915d + last_write_checksum: sha1:62771a765195fc268d5122e3bc15f83f704a2a08 + pristine_git_object: 05a8f0e23b98e8ca7566a00f5eea7b7caf53f9ce src/main/java/com/gusto/embedded_api/models/operations//async/PostV1EmployeesEmployeeIdBankAccountsRequestBuilder.java: id: 8dc7c6fa0b88 last_write_checksum: sha1:a58f77d237c4f987d6819e432f5459ee425eaabe @@ -11372,12 +12352,16 @@ trackedFiles: pristine_git_object: 27f4af7cc545fe0b03e5f21a5d48ca17a085d6bf src/main/java/com/gusto/embedded_api/models/operations//async/PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder.java: id: 6e8d4f04ee84 - last_write_checksum: sha1:8f6e085af257050b8d0b0fe05065ea8a897a1055 - pristine_git_object: 4d0d48a3daa13a28cf55f9dff8d8fa7df9ffea17 + last_write_checksum: sha1:a24a220566cba479159d2b8abac33f2bfa8fb294 + pristine_git_object: 81f0f1a2f613f49c950239e3a83a7eee74c7836f src/main/java/com/gusto/embedded_api/models/operations//async/PostV1EmployeesEmployeeIdJobsRequestBuilder.java: id: af0c657add6c - last_write_checksum: sha1:ce0160843111102476f3fb8bbc56cb8386e7f835 - pristine_git_object: 7c8e8386f10ececb9b69807cf76aeaee5b1f039e + last_write_checksum: sha1:ddf09a906f6c8f577dee539585d5001053101ad7 + pristine_git_object: 93efd2e257c3a2388b9c81aa1f26718ec82c8398 + ? src/main/java/com/gusto/embedded_api/models/operations//async/PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java + : id: a924972e1c5b + last_write_checksum: sha1:d6abd4d2ad9325a6d2d60fe26dbf8821ca13992f + pristine_git_object: a7227297366cc2dd3ef3d4d327d838997f4a8cab ? src/main/java/com/gusto/embedded_api/models/operations//async/PostV1EmployeesEmployeeIdRecurringReimbursementsRequestBuilder.java : id: ea4affcc77f2 last_write_checksum: sha1:817618ac65d70283fcbaf2747464e3d0e14cbafd @@ -11396,12 +12380,12 @@ trackedFiles: pristine_git_object: c55ffe6c19f15468eee1603c9fc8efa918632adf src/main/java/com/gusto/embedded_api/models/operations//async/PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder.java: id: fdff5f549c84 - last_write_checksum: sha1:ae9db34fc9b4d590e53451a2b17573d1cf3579da - pristine_git_object: ca0be70e7512248b2d138ad2c90e8b890e80a724 + last_write_checksum: sha1:e014c38da327f396f909f51bd0526bbc15227d1f + pristine_git_object: 9e5b4631e6374cb0132d87abe16e71d24c25f7cc ? src/main/java/com/gusto/embedded_api/models/operations//async/PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder.java : id: 6bc33337dedd - last_write_checksum: sha1:c1267930c99f4349b93a26b48567bfc142b5595d - pristine_git_object: a5d797ad5131f89aa9896a7e2e380183478b4312 + last_write_checksum: sha1:8c17d63206e3d0739ef0f4a5331b68370371c3b1 + pristine_git_object: 881ba08cce8308cc9102e6af9555c24e8dabe7df src/main/java/com/gusto/embedded_api/models/operations//async/PostV1EmployeesRequestBuilder.java: id: b73264bd1d48 last_write_checksum: sha1:a6d3bfb0cb3d00b37db6048776cc414df7fa4b14 @@ -11418,6 +12402,10 @@ trackedFiles: id: 41930863c85b last_write_checksum: sha1:751ea1e78ed9dea26c5f34a65561afe5d8965333 pristine_git_object: 26f26a51695c574f875ae42cd052f33e0b99ca85 + src/main/java/com/gusto/embedded_api/models/operations//async/PostV1PayrollBatchesRequestBuilder.java: + id: 5b08a8f51957 + last_write_checksum: sha1:f5cc4032e164b1240b5439e84837374f3b2ebb58 + pristine_git_object: 0dfbd567ad2423fec0e8e9839484a434df0104ac src/main/java/com/gusto/embedded_api/models/operations//async/PostV1PayrollDigestsRequestBuilder.java: id: 8a235f404bb5 last_write_checksum: sha1:da4b3074e87cc59fcbc6c28a5c903298d8efa29b @@ -11452,20 +12440,20 @@ trackedFiles: pristine_git_object: cdc168ea8fcf8225c213015a9c36b4608b586bf6 src/main/java/com/gusto/embedded_api/models/operations//async/PutAddPeopleToDepartmentRequestBuilder.java: id: 26e908df39cb - last_write_checksum: sha1:09526e698b76706b848c09aaa74da55126878580 - pristine_git_object: bde7e731829f9ae1d392e4e5bd7a7cc68cb2020e + last_write_checksum: sha1:031a8ff1b8cf5650e3cb3558287e10a184717945 + pristine_git_object: e0d339c0002dedc90e0cf8e39dedbd4452d8ddf8 ? src/main/java/com/gusto/embedded_api/models/operations//async/PutApiV1CompaniesCompanyIdPayrollsPayrollIdCancelRequestBuilder.java : id: 2dd041d1f077 last_write_checksum: sha1:510c0b34c8268bbea04fe0f7121cded74c93b3fc pristine_git_object: b2582a285a7513b3570adaf7cfc9d4a6d8f1a31e src/main/java/com/gusto/embedded_api/models/operations//async/PutDepartmentsRequestBuilder.java: id: 7131b9be0e74 - last_write_checksum: sha1:b6ac3c9a9358fff8c354209200100e37a0e597cb - pristine_git_object: 2bc329cdbf874db666497a52137af5e305c8df60 + last_write_checksum: sha1:b034107658791fc03a9c7b7935fb204c890af6ca + pristine_git_object: d9ccb9884266c2afd734d1a820ab451d0b157dd1 src/main/java/com/gusto/embedded_api/models/operations//async/PutRemovePeopleFromDepartmentRequestBuilder.java: id: 119fcf6b095d - last_write_checksum: sha1:103c73a23dcd758f4d2cb58c0e8d9c80f27f4d28 - pristine_git_object: 3d8c0d752bcce792b09d538d60517a0de3cb5923 + last_write_checksum: sha1:e870e858d976a04b547d451afc48355b4f3aac09 + pristine_git_object: 3fac5bc1aca8bd444a1eda6d101e1cd67384e70d src/main/java/com/gusto/embedded_api/models/operations//async/PutV1CompaniesCompanyIdBankAccountsVerifyRequestBuilder.java: id: 24e48d6dbf8b last_write_checksum: sha1:610e6be2f2ffd32e979d429edf80f433f65e3161 @@ -11476,8 +12464,8 @@ trackedFiles: pristine_git_object: 802bf0ccaad5a1c9ec6fd9cf76cef9e731e04b6b src/main/java/com/gusto/embedded_api/models/operations//async/PutV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder.java: id: 45ba6d835783 - last_write_checksum: sha1:d1d7a938c6a7cefcedba6c7ea4640648d303beb2 - pristine_git_object: 961735efa69cb7e0e5d08b3ef121d3782151858b + last_write_checksum: sha1:769eadb3468c3f0d5b47f05fbb4709b92dffa257 + pristine_git_object: ebaa1f350b2409d9b1517a2b6a4c4254eb3589d4 ? src/main/java/com/gusto/embedded_api/models/operations//async/PutV1CompaniesCompanyIdPaySchedulesPayScheduleIdRequestBuilder.java : id: f47a91e9debe last_write_checksum: sha1:a17135841e448b3799dfc696107affc303331c34 @@ -11512,16 +12500,16 @@ trackedFiles: pristine_git_object: 541c4bcfb58d8d1184364270ddd624e44e6d9f3b ? src/main/java/com/gusto/embedded_api/models/operations//async/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder.java : id: acd7fa458499 - last_write_checksum: sha1:85681449df9ac9c94d40b356b6252b2e6affee94 - pristine_git_object: 922e2739911387890a45f5b33c57f3a0239caefc + last_write_checksum: sha1:e17ee3161aff95e20bbdc997c43391e556391d5a + pristine_git_object: d8fa575c925e5c560ace960de1a9ac1243736f95 src/main/java/com/gusto/embedded_api/models/operations//async/PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder.java: id: 09797393e9fe - last_write_checksum: sha1:dce5afd296ade0534b25b48553038b308e2700ca - pristine_git_object: 004af5c900c256c0ead64a6acf8e1e53673aec62 + last_write_checksum: sha1:2533efbe6e8645e681d22892043e8d85cf06db08 + pristine_git_object: 97c39fa81da092678e4e2b295bc15e993aa77800 src/main/java/com/gusto/embedded_api/models/operations//async/PutV1CompaniesRequestBuilder.java: id: 66e901fdaff2 - last_write_checksum: sha1:afa9ea04ddeef30b16c3a34a4cb8b8d00ba5b095 - pristine_git_object: b0cae2b5fbb650c3d64e6a2198969f5f5ac6f9a4 + last_write_checksum: sha1:0460dea99628f6ab814d435dab0ba6f2f90f21a4 + pristine_git_object: 6cb6631defba52ad0235ec8aa9dff026173fa634 ? src/main/java/com/gusto/embedded_api/models/operations//async/PutV1CompanyBenefitsCompanyBenefitIdContributionExclusionsRequestBuilder.java : id: 459d32c75ea8 last_write_checksum: sha1:60d75c175105167792f1f8cc76ada7c8f8a6e91a @@ -11540,8 +12528,8 @@ trackedFiles: pristine_git_object: d409bc6b8258ffa427f46361a28187676755f073 src/main/java/com/gusto/embedded_api/models/operations//async/PutV1CompanyIndustryRequestBuilder.java: id: 99116db0b312 - last_write_checksum: sha1:b152bd0a660d81383c01573a4ffcee10d40dfaeb - pristine_git_object: cc65eda8b71fe9d7c513c440c1650637a4794bfa + last_write_checksum: sha1:0a8f09bf36d9ec812c6fe983f637e3bb35040039 + pristine_git_object: 03073334f0338ad1204fb898a17d5a9ada97aabe src/main/java/com/gusto/embedded_api/models/operations//async/PutV1CompanyPaymentConfigsRequestBuilder.java: id: 1c0f13bc0244 last_write_checksum: sha1:8c85262366d8bfb710e97d44ce787cf1382b509d @@ -11556,8 +12544,8 @@ trackedFiles: pristine_git_object: f30fa0e4e07fa8d5e0e9f3fb7cc0f5d88265ac63 ? src/main/java/com/gusto/embedded_api/models/operations//async/PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequestBuilder.java : id: 290a86bd99b3 - last_write_checksum: sha1:0f5083622fa1919cfe156a1e39856c9d706eb340 - pristine_git_object: 998c225f52493eb4483d4a695ef75de6a37d24d5 + last_write_checksum: sha1:c086deefe812ef4eae98232d3f266eaa62e100d7 + pristine_git_object: 131f4f7ddbc07a5399569075fa50a40dddb82b25 src/main/java/com/gusto/embedded_api/models/operations//async/PutV1ContractorsContractorIdPaymentMethodRequestBuilder.java: id: e8d467d66ab5 last_write_checksum: sha1:70b8ceaada33e8529de8020fe89e2feced91a6dd @@ -11644,16 +12632,20 @@ trackedFiles: pristine_git_object: 47f0fb8db21537a62a4c0a87e4fb1cdc73156d8f src/main/java/com/gusto/embedded_api/models/operations//async/PutV1JobsJobIdRequestBuilder.java: id: a9b62befb83e - last_write_checksum: sha1:fe021b40abc3b1547ded42ec3d1f2b5e18f03ee2 - pristine_git_object: 465a6a885a7a17964c16ff9e4a27e6208c3b8c07 + last_write_checksum: sha1:3befc55f66d07b532d9e4ae5628b8f8016c91f46 + pristine_git_object: dafcb3d71c1e3e29d490c1815ae65eceb6b391e9 src/main/java/com/gusto/embedded_api/models/operations//async/PutV1LocationsLocationIdRequestBuilder.java: id: c7ff984e20eb last_write_checksum: sha1:36ceb1e342bd1ac4df9b6daf3c11fd4e4a380b05 pristine_git_object: 70579325cc474ca2836471e1cdbf4933e41784b5 + ? src/main/java/com/gusto/embedded_api/models/operations//async/PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder.java + : id: c3f7c15d35e2 + last_write_checksum: sha1:410f5ec65d9104d05884164f1bdcf38f161b9f11 + pristine_git_object: aa027a1a8e5c6716cce633bf919bfffff4ccb927 src/main/java/com/gusto/embedded_api/models/operations//async/PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder.java: id: bd8d6e59d7f6 - last_write_checksum: sha1:1c715a716b30959a6775a5ce34e0244eb920e203 - pristine_git_object: 5b691c52a17e3ef56795eaab552ec4f583b1c9f5 + last_write_checksum: sha1:553bf005c198d4508880d5325e928505e7f9a9f9 + pristine_git_object: 5a8025a4b95177e003d2fb6f7866991c15f181d4 src/main/java/com/gusto/embedded_api/models/operations//async/PutV1RecurringReimbursementsRequestBuilder.java: id: 8961e96bd55a last_write_checksum: sha1:235f580b08fff16b664e17b4189741d90a2253e8 @@ -11704,20 +12696,20 @@ trackedFiles: pristine_git_object: b05341554591c7042b91d7c75d8b3d78e65f2e3e src/main/java/com/gusto/embedded_api/models/operations//async/PutV1VerifyWebhookSubscriptionUuidRequestBuilder.java: id: 3dafc84abec9 - last_write_checksum: sha1:c760f725c7a749d87577a3e98d3f522865331427 - pristine_git_object: 6a1c1d6f08f197555cf0fd24693fb6f5fcf33423 + last_write_checksum: sha1:3792ed61aad6292cd6e5d200ae9ffc2415501f4d + pristine_git_object: f3e5a69105e01f42a5cb6bde10933fb8905e3c01 src/main/java/com/gusto/embedded_api/models/operations//async/PutV1WebhookSubscriptionUuidRequestBuilder.java: id: 967045023f56 - last_write_checksum: sha1:a2ec3cdae1a63fe9e97d526d00560e342df74414 - pristine_git_object: 0cabd144e5352492aac2d1e4e6b4c7a75ca6b903 + last_write_checksum: sha1:3f8e6d33458624a49ece02428fff109c4275819b + pristine_git_object: 8827bd2cd7b82b47933d96981d5b701076f12c1e src/main/java/com/gusto/embedded_api/models/operations//async/PutV1WorkAddressesWorkAddressUuidRequestBuilder.java: id: 49df11f55930 - last_write_checksum: sha1:6fc8094083e27c583ade381360885bf5bbb6b636 - pristine_git_object: 47d1a5e4316e27c1db040ed3feadd61ebbeaa6cf + last_write_checksum: sha1:860e3424ba3dd591be4221a3217dc9f9160e71d2 + pristine_git_object: ba185051a738567ce632643814f61730c1b56679 src/main/java/com/gusto/embedded_api/models/operations//async/PutWireInRequestsWireInRequestUuidRequestBuilder.java: id: 7fa0f1355401 - last_write_checksum: sha1:2f3a556843f07a2c138a0e8e5d5855d7ab53c0fc - pristine_git_object: a0f9133680ebae8648104b27b13955de744941e9 + last_write_checksum: sha1:ebd49c2cb7466ee483799ca15bd4cf34d88c7034 + pristine_git_object: ab13834b303c90d05a65080400e063c6dcd242b2 src/main/java/com/gusto/embedded_api/models/operations//async/RedebitRecoveryCaseRequestBuilder.java: id: e498eb3858f1 last_write_checksum: sha1:cdfb3c5ae1d47d01597633b257841715ff034c1b @@ -11740,12 +12732,12 @@ trackedFiles: pristine_git_object: 630b221b6e19df7f5d944e869fe041396341b615 src/main/java/com/gusto/embedded_api/models/operations/Batch.java: id: e4149401c2f0 - last_write_checksum: sha1:89a2ff66d840cad007b83c123d2a4194e2491d66 - pristine_git_object: ea4cec9c513bb1bb7242cf23b4751735a818d54d + last_write_checksum: sha1:dce35df1f8e1a0ea3bf1477c89c251f9f678eba0 + pristine_git_object: 8ec1f4e4aa29b9674cad650840194f686596aec9 src/main/java/com/gusto/embedded_api/models/operations/BatchAction.java: id: 4702cc4e20de - last_write_checksum: sha1:1bf1256ff0509c03b28bdc0ea7ef6acaae81ed41 - pristine_git_object: 77e1d5b27b73f844c697271d8cf8fe94b0ecd36f + last_write_checksum: sha1:2edcdc9062c658ac73d45c6eab6169f0666b866e + pristine_git_object: a0b7e2226faa7ed1dd1013f746e249b009cb87c4 src/main/java/com/gusto/embedded_api/models/operations/ChristmasDay.java: id: 5c30a2d55217 last_write_checksum: sha1:c2241a78f8bdae54ab9881734054fdef5b72ea71 @@ -11772,12 +12764,12 @@ trackedFiles: pristine_git_object: b9be78a9d6eaf0b13faaee5d2c82bc83091a0232 src/main/java/com/gusto/embedded_api/models/operations/DeleteDepartmentRequest.java: id: b9e83604fce8 - last_write_checksum: sha1:e9b6fea17d5e947ee6076fe2afd992259be4ea9a - pristine_git_object: 7a2597a09364931c0bb724528e212539f8a71c3b + last_write_checksum: sha1:e31bbb30ebd5bb0eedf0a1734589229548ea0c31 + pristine_git_object: bd2e9d103a087688d9c2fc8396b8eee89afb430e src/main/java/com/gusto/embedded_api/models/operations/DeleteDepartmentRequestBuilder.java: id: 03ce1260f9ed - last_write_checksum: sha1:e49ddd7f6081694bc093683955cc3cf3ada76c6e - pristine_git_object: 5932561a0a6a03ab6259fc3ccb44eb7f5320845a + last_write_checksum: sha1:3ae872352e35db645b699300178870563c2f86e5 + pristine_git_object: 80f95ffa8f0b62c05bfb653e2d9454e176b51785 src/main/java/com/gusto/embedded_api/models/operations/DeleteDepartmentResponse.java: id: 201b6412fe3c last_write_checksum: sha1:7de25202389d2f5a3759a75d7c82660d528e8686 @@ -11836,12 +12828,12 @@ trackedFiles: pristine_git_object: 53b84103308dbcc40ad6c8a5761c12c4a063827d src/main/java/com/gusto/embedded_api/models/operations/DeleteV1CompaniesCompanyIdPayrollsRequest.java: id: 6040c2f1cfb3 - last_write_checksum: sha1:2d31b9ced258f6959b90ef3c99795a1a22f730c1 - pristine_git_object: 0674205b1d90d6878327b3ac07c22afff17b40ac + last_write_checksum: sha1:3485c5ecb7c6500e6f04c8a1c5e8cfe2057acf84 + pristine_git_object: 691b0740f0c0ffe387cd0514617c16730960f31a src/main/java/com/gusto/embedded_api/models/operations/DeleteV1CompaniesCompanyIdPayrollsRequestBuilder.java: id: 3267aef0ea2f - last_write_checksum: sha1:76411b174510f76365acf28c17320edc5a75dd87 - pristine_git_object: 9279b7e8bbf966a4d7ab4c31f16b753d334a49a1 + last_write_checksum: sha1:819e44141c846c13c276c8dab17803ebcf93a9a6 + pristine_git_object: 8040d37d03d73535027bcb64f5e9741ea4101f45 src/main/java/com/gusto/embedded_api/models/operations/DeleteV1CompaniesCompanyIdPayrollsResponse.java: id: 6bbc3b535fc6 last_write_checksum: sha1:0dcef56f12e19a53acae620566653bf8bc9a9580 @@ -11868,12 +12860,12 @@ trackedFiles: pristine_git_object: f00604131148aef5383db70b186416bb166d5810 src/main/java/com/gusto/embedded_api/models/operations/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.java: id: b30a0db78527 - last_write_checksum: sha1:d60c81a70cab9cf0fc8b2e57ab6fe702169c93ea - pristine_git_object: bec877d9758bf52b1565de9cf756205a80c4b968 + last_write_checksum: sha1:4511ff6744b23062c659206177c7b840377c0a66 + pristine_git_object: d2af334af283c4beefe700f35775ffbfbf2ed5af src/main/java/com/gusto/embedded_api/models/operations/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder.java: id: 4e2cf7404cfd - last_write_checksum: sha1:7ca5ed4ee6b405f8fceed0fd2329efd430bd08e0 - pristine_git_object: 7fc3930f49e075ee6679e438ac60865bb800ac2e + last_write_checksum: sha1:f4ac9caaa9af6860d5e7ce91fa1d7707f1229166 + pristine_git_object: 17539577f0349a5f1353611cfe453c5c3090ac8b src/main/java/com/gusto/embedded_api/models/operations/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidResponse.java: id: ecdf5289a1a0 last_write_checksum: sha1:f7f6e8d600163c77a405565ad3a3206d23ad246a @@ -11916,12 +12908,12 @@ trackedFiles: pristine_git_object: 7b96742742d21c251ae65c0d65ff8d0282c4d3b9 src/main/java/com/gusto/embedded_api/models/operations/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.java: id: 539557431bab - last_write_checksum: sha1:8e744380b4f4b7ad7f3d6f43ef4267fc153875b6 - pristine_git_object: adda4f0504e104f6785f0abf010b40009c2a5149 + last_write_checksum: sha1:5545f9f52873a8fa1adb8c584b015af52d4347cf + pristine_git_object: f603bdf198c23a90b7d52a05e5a568a846b665ef ? src/main/java/com/gusto/embedded_api/models/operations/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder.java : id: ae7851311f13 - last_write_checksum: sha1:753a0809c1335a4dac6222990cf960b67601c30d - pristine_git_object: 9316c966a34807f2b5fed481ccdbcad140bbccbf + last_write_checksum: sha1:7ad54937076d3320d2339ee830b32d8a866fdc43 + pristine_git_object: b626886aad9340148d9d261b0c49ecfad9673cb4 src/main/java/com/gusto/embedded_api/models/operations/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdResponse.java: id: a96ae19da974 last_write_checksum: sha1:69ca46ee4c5055e20e3f9179fb02fc8dfbc684d7 @@ -11930,18 +12922,34 @@ trackedFiles: id: 7e9c00654467 last_write_checksum: sha1:e1116dc121587e49dd26626ffb7985588aa82a7a pristine_git_object: 6f3139fc182e125cd3d46480696d277c8c90f1ff + ? src/main/java/com/gusto/embedded_api/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.java + : id: 2f927e148146 + last_write_checksum: sha1:3cf1d156bb59614d8657cdddd32a785edc6623cd + pristine_git_object: 0da87495d1a8e349cd8d4234f54911412822947b + src/main/java/com/gusto/embedded_api/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest.java: + id: f2f625503029 + last_write_checksum: sha1:0ceeb13a52752c85ef03d05ae2a39c1ef6e6fed5 + pristine_git_object: ad2b52b848e96024695d108d5ff4e0803ac8a3bf + ? src/main/java/com/gusto/embedded_api/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder.java + : id: 89ce8dd3cec9 + last_write_checksum: sha1:6489c2d94b3749e5c3ff29154dae19685c12faf4 + pristine_git_object: 3fb6675d4efb40030751cae008dee03a0ca7d42a + src/main/java/com/gusto/embedded_api/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse.java: + id: a9d7da71b4ac + last_write_checksum: sha1:7351031392f7864aa7ba7ff3b88ca254650df822 + pristine_git_object: d98f1eccbd7b154d4a1ae4abba3717acd40f0934 src/main/java/com/gusto/embedded_api/models/operations/DeleteV1ContractorsContractorUuidRehireHeaderXGustoAPIVersion.java: id: abb4728cf280 last_write_checksum: sha1:af28923be558b4f51f34a53c9bc23cc2a26f138d pristine_git_object: dcda370eb1968fa0cfb934d2399a9b82c7c8cd86 src/main/java/com/gusto/embedded_api/models/operations/DeleteV1ContractorsContractorUuidRehireRequest.java: id: efc3ca4f0626 - last_write_checksum: sha1:5869bef7cb30d6951bd3cc66d7a61c4726e9de7c - pristine_git_object: 2a1f38a9a7a6e8c0cfe83386930c213fa643ab57 + last_write_checksum: sha1:9ea71626a24b65807f20b5d9af154e458cee1a43 + pristine_git_object: a4c166f34d70fe3df24a5c791910335ddd977c53 src/main/java/com/gusto/embedded_api/models/operations/DeleteV1ContractorsContractorUuidRehireRequestBuilder.java: id: 7a4870ca3867 - last_write_checksum: sha1:c38eb16ca46be07a88078daf48d0dbe10aa0f194 - pristine_git_object: 2ecbea43a9d02c13f632715f5ca5d44f58c3b3a7 + last_write_checksum: sha1:1c1ee6393afc78ce52786ef0486fe377c6b42a73 + pristine_git_object: 84fadf1b0ccab92a5cfd11615662234de07763ef src/main/java/com/gusto/embedded_api/models/operations/DeleteV1ContractorsContractorUuidRehireResponse.java: id: 110163724a69 last_write_checksum: sha1:42df120a147869dd95999b46ba2fb16a178950aa @@ -11964,12 +12972,12 @@ trackedFiles: pristine_git_object: 93ecace91bc379f78de781fc26071057ce02b8db src/main/java/com/gusto/embedded_api/models/operations/DeleteV1ContractorsContractorUuidTerminationRequest.java: id: 4dbdddc0df30 - last_write_checksum: sha1:dd8a9dbe2153c60b6d985047e27910f5179df88f - pristine_git_object: ad98d04ec5496e2531db2aec04480cdfd5c34279 + last_write_checksum: sha1:74ebf03ca0103d783f1ca6e99f3e7fea47c0f378 + pristine_git_object: 34d87585978696b4e04061f86022e58e97d86b2f src/main/java/com/gusto/embedded_api/models/operations/DeleteV1ContractorsContractorUuidTerminationRequestBuilder.java: id: add3cd606b20 - last_write_checksum: sha1:ecff5c1387aa56a06c578feaf38628bfdfe77c93 - pristine_git_object: e529d30591b68dea316d93cb71d3d6803cd767d6 + last_write_checksum: sha1:28c403b816b218b391353017359a07538230e299 + pristine_git_object: 49be3636fe1b6ca578fdd41304bd6d8dfd323787 src/main/java/com/gusto/embedded_api/models/operations/DeleteV1ContractorsContractorUuidTerminationResponse.java: id: 52426b8fdb63 last_write_checksum: sha1:455d93a0dfedfefdf3bfb9f17598a792243d88b7 @@ -12038,6 +13046,22 @@ trackedFiles: : id: a2cd41f95891 last_write_checksum: sha1:d66ed594ff16f9238a65fd3a7bcecf61bf7a85ce pristine_git_object: 9cf5178df524896e821451804de7fe0c768dbd00 + ? src/main/java/com/gusto/embedded_api/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.java + : id: 6f4111cc9386 + last_write_checksum: sha1:cadd9a843e5fee5c3a497ec3b5b2e20ff2fe63a6 + pristine_git_object: eaaaf535cc3984b0f26e8e330bcb4cde1d1d8989 + src/main/java/com/gusto/embedded_api/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest.java: + id: 3bca8e4d3fef + last_write_checksum: sha1:cdd30a7529d2f7a0bd982e416e2520fea766382b + pristine_git_object: 3f136722bd3852e7694c99732c1b42c6cdb42ea2 + src/main/java/com/gusto/embedded_api/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java: + id: 0e155dfed3cb + last_write_checksum: sha1:4a464243bc6f8bc23afe0f7cb2b0518bfc78e14c + pristine_git_object: edd1b97a849cc721ad4e51635f80c65aea94174a + src/main/java/com/gusto/embedded_api/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java: + id: bc3cc3b7e1c8 + last_write_checksum: sha1:47709f47fd974d3c366b1803d3139a36f3af86d1 + pristine_git_object: f75fef693b7d16786f30c913bfab03d16a6f636b src/main/java/com/gusto/embedded_api/models/operations/DeleteV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion.java: id: 3e30a0c6f9fe last_write_checksum: sha1:554fbe9a4b8ed8178783202305b66f6147a10510 @@ -12108,12 +13132,12 @@ trackedFiles: pristine_git_object: 4b4e8ba7559e79ec20231d5788ca1e9a440fab36 src/main/java/com/gusto/embedded_api/models/operations/DeleteV1JobsJobIdRequest.java: id: fe6dba30515e - last_write_checksum: sha1:46f2142ca1a646a2d5c327bdfcd8462a97376c36 - pristine_git_object: 49953a3d6c69ab8db76651815ded9570079bb0b1 + last_write_checksum: sha1:7c65f13cf1865fb68b2a29eec09e854ebe85c4df + pristine_git_object: 8275b2d560dfb90b731fc09ac5f437894bb681d9 src/main/java/com/gusto/embedded_api/models/operations/DeleteV1JobsJobIdRequestBuilder.java: id: d415a88c14d6 - last_write_checksum: sha1:c7eb7624e9d17b173eb8a87855fd28f3277ed3f0 - pristine_git_object: b60dfb82cabc3ea98bb7f5ea08e8b5fc3844ce78 + last_write_checksum: sha1:696922ca3ba44fce0a909870ff4624da41c1749d + pristine_git_object: 97272f13071acafeb6da9cd25e45de19a9e7b1d2 src/main/java/com/gusto/embedded_api/models/operations/DeleteV1JobsJobIdResponse.java: id: ed0f16b61211 last_write_checksum: sha1:d6481639d03d0901e13c7f8e5a23684da20a65d7 @@ -12156,12 +13180,12 @@ trackedFiles: pristine_git_object: f321d3d0001cd68359cc41fe83202770b499dbd7 src/main/java/com/gusto/embedded_api/models/operations/DeleteV1WebhookSubscriptionUuidRequest.java: id: 31827e4b96a0 - last_write_checksum: sha1:a5aeb48b35aaccf0f0ee8d713c07c1738d69ef4c - pristine_git_object: c2e4afd6ab0ed62cfa266f3e5ce2cc11732971f6 + last_write_checksum: sha1:1bf11e41967083373b172cbf312a483fce3e07c2 + pristine_git_object: a3756b0e705cbce29919c3101188a7ebf8367744 src/main/java/com/gusto/embedded_api/models/operations/DeleteV1WebhookSubscriptionUuidRequestBuilder.java: id: 735d9cea15c4 - last_write_checksum: sha1:ae95f956b791a5e5b18b4d1f4618be66689bc025 - pristine_git_object: fded23477f5375e6410481c1faec9395828cb4dc + last_write_checksum: sha1:71d6f482ec3c2e8b8836bb38061bd674860dc464 + pristine_git_object: 3f4a7faf9a052f847f7cba248a943831fb02eb15 src/main/java/com/gusto/embedded_api/models/operations/DeleteV1WebhookSubscriptionUuidResponse.java: id: 8a983e49ec2a last_write_checksum: sha1:922ce05408e33eb9d467864b3b2ab7bd864e8149 @@ -12176,12 +13200,12 @@ trackedFiles: pristine_git_object: 7d2deddb1ef42a518bd0f959cea7978df27a3db0 src/main/java/com/gusto/embedded_api/models/operations/DeleteV1WorkAddressesWorkAddressUuidRequest.java: id: e8cd6fcddc99 - last_write_checksum: sha1:e075541ae29f4686d4ea0e4d501dd5764d84d63b - pristine_git_object: b8bd58848a42eeeb44dd85e0f76c4b522a3a3d87 + last_write_checksum: sha1:779309789f3d2db04247629c4bbd0d3e93f7a0e9 + pristine_git_object: b116d30c9014aec358265c7f195c2046bf732840 src/main/java/com/gusto/embedded_api/models/operations/DeleteV1WorkAddressesWorkAddressUuidRequestBuilder.java: id: 247f28c95ab9 - last_write_checksum: sha1:365cdd7bcd648f30bcfc830adb652ae6da9510b7 - pristine_git_object: 58b34edbe31f94da65ee1eba4f1a3a98cbaeb6a5 + last_write_checksum: sha1:1c75ec8bfdc929cd528a72e57547aa67a7634381 + pristine_git_object: 0955138d3461cad0fb4d129b70d090c65f6529e1 src/main/java/com/gusto/embedded_api/models/operations/DeleteV1WorkAddressesWorkAddressUuidResponse.java: id: c9f3353b43a2 last_write_checksum: sha1:05348f8d075131b384e11ee368b250524247f33c @@ -12204,12 +13228,12 @@ trackedFiles: pristine_git_object: af4c9cc06500ed97820dd2ff5dcc6656f1584e1b src/main/java/com/gusto/embedded_api/models/operations/Employees.java: id: 83eaffc18c74 - last_write_checksum: sha1:c846e472fe8039b7ece823c413da5204233722b9 - pristine_git_object: bfa627cb92dbe7dce1cbe1773ab8de6c152b9f2c + last_write_checksum: sha1:03d15c4ec2129fc61212f55e003963ce679fe60c + pristine_git_object: dbe053324201e34cb7be058189798b4ddea5ceb7 src/main/java/com/gusto/embedded_api/models/operations/EntityType.java: id: 392f01a2e357 - last_write_checksum: sha1:cee01ed1e0925fa8948ec5604144ff3239e46d4d - pristine_git_object: f36fc9987b0a6bf2000ff6e16cb81e9e60703905 + last_write_checksum: sha1:e72f075d6fc6fea2f1c094d1bf0fe627b393ced0 + pristine_git_object: 8f73ee66dd02c418ab4d9a1363d279bb367b4300 src/main/java/com/gusto/embedded_api/models/operations/ExperienceLevel.java: id: 624d9bfb4c60 last_write_checksum: sha1:ef419d948f6c9611636a585f544310582be98f3a @@ -12234,14 +13258,10 @@ trackedFiles: id: 5aaba13f60e9 last_write_checksum: sha1:fd70501726cd55d45c7c3c9dd6fbe372c5e25ab5 pristine_git_object: 3696ef790fe6c92acbbf29512e542edc7ce475f4 - src/main/java/com/gusto/embedded_api/models/operations/GetAchTransactionsHeaderXGustoAPIVersion.java: - id: 2e775d7b02c1 - last_write_checksum: sha1:988540fd43b2c4e64903e1804bb48e0db0e2601d - pristine_git_object: 1792b2a474969e73dbb57b435288dadbe8a94182 src/main/java/com/gusto/embedded_api/models/operations/GetAchTransactionsRequest.java: id: 85a978e82636 - last_write_checksum: sha1:2396df3ae2b3ab0f7a38fc9ca7e4cecc4475f1c4 - pristine_git_object: abcebbfe98ab0438c2fcb31c58bb241dc86ab5c9 + last_write_checksum: sha1:8745458042de2eb1e2bc065138b63c77e54e6d05 + pristine_git_object: 0a0b50977d3377ed9d5a63ffca993d6c4ff7f37c src/main/java/com/gusto/embedded_api/models/operations/GetAchTransactionsRequestBuilder.java: id: 16385c4ab5db last_write_checksum: sha1:e2f4852900a685a497bc7f9abab063d0a82d1786 @@ -12320,12 +13340,12 @@ trackedFiles: pristine_git_object: 89d8ba81775d782676f82a545950bfe4eee2e0a4 src/main/java/com/gusto/embedded_api/models/operations/GetCompaniesCompanyUuidWireInRequestUuidRequest.java: id: ef480c22826d - last_write_checksum: sha1:d2500ef43dd468399ac0d9669548d37bba2a934c - pristine_git_object: a196554888e8b0349c11c5f6187414ff943a5af3 + last_write_checksum: sha1:781bf2ccdc3d213f155ceb85a54dcd5ef6ab53d0 + pristine_git_object: 0e38bf0c0ddba6ffe6655892fc429d48b33453c5 src/main/java/com/gusto/embedded_api/models/operations/GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder.java: id: 1565746e20c5 - last_write_checksum: sha1:f1aad5b8bb8ac7de2d03edd98ba0ccd6b6c61ec2 - pristine_git_object: e02112d02f85cf6ecda6c2192e9d646700010e4e + last_write_checksum: sha1:ec8746d9f1e3a0e85b61486bcdbe7c11d8842edf + pristine_git_object: dfa835630d59d591cc633aa5f74b5482a0ce3443 src/main/java/com/gusto/embedded_api/models/operations/GetCompaniesCompanyUuidWireInRequestUuidResponse.java: id: 69d124fc09b8 last_write_checksum: sha1:b4b6853fe523aec36fd7b5f98a212cc218a63d6c @@ -12336,12 +13356,12 @@ trackedFiles: pristine_git_object: 707a30f02135f74bf04790f7ca0f5607df39cc70 src/main/java/com/gusto/embedded_api/models/operations/GetCompaniesDepartmentsRequest.java: id: da7da419ef1d - last_write_checksum: sha1:9f7a559e9d9d0ec8221306cb3e842b264e3f1917 - pristine_git_object: 953f891453bab7ff3b41f90633d6554cec88217c + last_write_checksum: sha1:9898f5d5e8d191f3e59a47fe40ae868f6a5ac52b + pristine_git_object: 0f94673a91386651984cade102360b64a7c69cab src/main/java/com/gusto/embedded_api/models/operations/GetCompaniesDepartmentsRequestBuilder.java: id: 7ddbbbd2becf - last_write_checksum: sha1:fddb8cca7ccdfaf1a277c87a249c2dd590008a05 - pristine_git_object: b447aad0d217ee1821312b87cc02cb9fac9ebac2 + last_write_checksum: sha1:3326544062efb88e7f95f2efd4cefdad8d5afee3 + pristine_git_object: 3784b67b2432351854123d0c83edb21b50ef8052 src/main/java/com/gusto/embedded_api/models/operations/GetCompaniesDepartmentsResponse.java: id: 00ec085e1a2c last_write_checksum: sha1:39d2cf7345ce43996810d2bcba695d1fb9f8b2fe @@ -12352,8 +13372,8 @@ trackedFiles: pristine_git_object: d91a1ffb3f17541e793347b84cd4f174e822ab29 src/main/java/com/gusto/embedded_api/models/operations/GetCompanyNotificationsRequest.java: id: 3175fae25445 - last_write_checksum: sha1:a357275bc04ef94f2688f2bb10b32e14c62ed604 - pristine_git_object: b288fc8639b64fb164479e7ad90c43009ad7151a + last_write_checksum: sha1:1c0a95d36d06e38c4acc5ae6a1d4c3dcbda10ddc + pristine_git_object: 00e84b74890fe5821f96dfe4473958a1fdcfa473 src/main/java/com/gusto/embedded_api/models/operations/GetCompanyNotificationsRequestBuilder.java: id: 95808bb4125d last_write_checksum: sha1:8ac5fb7786ed6fedfd7c0118fe6d70c1c94440b9 @@ -12368,12 +13388,12 @@ trackedFiles: pristine_git_object: 471083d3ee619ffa8e9ca5010ed22f2541082166 src/main/java/com/gusto/embedded_api/models/operations/GetDepartmentRequest.java: id: e40b85b885f0 - last_write_checksum: sha1:99d05bbfb18a601f6e9bb9edb85e079ed1311b34 - pristine_git_object: befd731bb6b6de495c43bd6508ead7d71730b950 + last_write_checksum: sha1:be1c407bdbf754f484805e7b604302f716c614e9 + pristine_git_object: 925ec4c75b176ff6bd8c9eb2a9a43a533b497387 src/main/java/com/gusto/embedded_api/models/operations/GetDepartmentRequestBuilder.java: id: 8a109d3f8a6f - last_write_checksum: sha1:63109beb501e817cf62e00bd6122d53f0461cb84 - pristine_git_object: b76452a8f380f65d92d0e8c12a7a9880b488aa7f + last_write_checksum: sha1:4259cf63900730e48f7b280ca2594610ec24ab48 + pristine_git_object: 3071ca7b011190733dfae1917f5ca92c3a093806 src/main/java/com/gusto/embedded_api/models/operations/GetDepartmentResponse.java: id: 05ae6f1ee35c last_write_checksum: sha1:2d7ac6e44c6e173a4c242e91c6a98f924d2d6423 @@ -12400,8 +13420,8 @@ trackedFiles: pristine_git_object: c369cb1f35cfac09d0e62c08fc0702ac63f8a687 src/main/java/com/gusto/embedded_api/models/operations/GetEventsRequest.java: id: fa8fee744dd9 - last_write_checksum: sha1:a04571cccb44a3fbbb47c8ce509705a599adec11 - pristine_git_object: 31f7695fba0e449cf95a9b8b8675f9f3535bba6e + last_write_checksum: sha1:47290f57e0da12f78c7766ff779e251dfb0cc681 + pristine_git_object: 8dc8f6e859ef057c47999916f78e344e18880f62 src/main/java/com/gusto/embedded_api/models/operations/GetEventsRequestBuilder.java: id: 6a79fe3f7087 last_write_checksum: sha1:1300f4e9f4687acaeef957af0b480e48beb20959 @@ -12456,12 +13476,12 @@ trackedFiles: pristine_git_object: aa75c6021c783d90376646f4be5263b50293bc71 src/main/java/com/gusto/embedded_api/models/operations/GetNotificationsNotificationUuidRequest.java: id: f5a37167b8f7 - last_write_checksum: sha1:4ffbb66cccf34a6d803bd7cb13016671777b64b7 - pristine_git_object: 19a4fbc155d5bbc8f60f7ff5adeb41d36fc56208 + last_write_checksum: sha1:570eaa94d5aefa94b7ad6a73a5f07544ffdb1216 + pristine_git_object: 78abd486573943a3b0e623d187eec430277d8e5b src/main/java/com/gusto/embedded_api/models/operations/GetNotificationsNotificationUuidRequestBuilder.java: id: 433967fa5971 - last_write_checksum: sha1:ce31948598fbf6df37c0239c3b5b3b5cddee088b - pristine_git_object: ee8332846da0cd03a81fc940f6283ce6f858bb91 + last_write_checksum: sha1:2421de21319906c77ce8d8fc04e0d247dced729d + pristine_git_object: 61bf7a390b9219eec20e2829468b0404f4a9cbb8 src/main/java/com/gusto/embedded_api/models/operations/GetNotificationsNotificationUuidResponse.java: id: 5402491d1f9d last_write_checksum: sha1:7437d6683b18c9e3266eb8db6c6c40b629d05969 @@ -12498,6 +13518,54 @@ trackedFiles: id: 6290914285c1 last_write_checksum: sha1:797d1ad8282aa5715b568b115e45bfae96ed4e3a pristine_git_object: 946542a0fd2e16b495783f3e6093bc0c19bc0e72 + src/main/java/com/gusto/embedded_api/models/operations/GetReverseWireTransactionsHeaderXGustoAPIVersion.java: + id: 06e941c58082 + last_write_checksum: sha1:45be86311308b2a12803dacd9cb036a53e812855 + pristine_git_object: d857f5af0d82dc7347328ca3fe5c46641bfe47c7 + src/main/java/com/gusto/embedded_api/models/operations/GetReverseWireTransactionsRequest.java: + id: 00b287a8c7e5 + last_write_checksum: sha1:6ba5a729c299831fe96714cabf47ac605bbead57 + pristine_git_object: c5a661bef0c226e2e3a86c89f218ad42347b0b2f + src/main/java/com/gusto/embedded_api/models/operations/GetReverseWireTransactionsRequestBuilder.java: + id: 00dfd006cc5e + last_write_checksum: sha1:64ae44d3d45550ba1a87b1ba2dc4c71eab287080 + pristine_git_object: 45193d42498bfe3b4013ff826dee4033314f8d09 + src/main/java/com/gusto/embedded_api/models/operations/GetReverseWireTransactionsResponse.java: + id: 45b7a658aa23 + last_write_checksum: sha1:5466db8cdb359c72ad7c1a28d93a311f572548e9 + pristine_git_object: 605025dff410c43cee170a305aa40ded7d0cda9c + src/main/java/com/gusto/embedded_api/models/operations/GetTaxPaymentHeaderXGustoAPIVersion.java: + id: 6308ee9ec0be + last_write_checksum: sha1:8b43904903acae2158e52dcd9ce2083fc81221ed + pristine_git_object: c5ac876d0c6cc2a1ca2150633582d60907c9412e + src/main/java/com/gusto/embedded_api/models/operations/GetTaxPaymentRequest.java: + id: d8aba2b66b8f + last_write_checksum: sha1:074e30ef62d026db703ef4ed0701f5309ff34f86 + pristine_git_object: 3e5f6f32d8adf5cb0ef8d8783b3aa1e264cbfa95 + src/main/java/com/gusto/embedded_api/models/operations/GetTaxPaymentRequestBuilder.java: + id: 2478256a49e8 + last_write_checksum: sha1:c7b045ea8356bad8e36a0e6a83f9103cec16269a + pristine_git_object: 643b6c46ec56fef1249c87c1f4fd0eb98954ab46 + src/main/java/com/gusto/embedded_api/models/operations/GetTaxPaymentResponse.java: + id: d3659d9837c5 + last_write_checksum: sha1:a810637d68247b81af873c1c5f085d9bbaec012b + pristine_git_object: 2c3254537fbc03ffed4657ffd85ddd54d1ba6b62 + src/main/java/com/gusto/embedded_api/models/operations/GetTaxPaymentsHeaderXGustoAPIVersion.java: + id: df448f66ab3f + last_write_checksum: sha1:dae5af70646be68a337f247667fb3b51e7ff9f09 + pristine_git_object: 150f4d2a58820d6ed98689d07cd2f4ba711c59f7 + src/main/java/com/gusto/embedded_api/models/operations/GetTaxPaymentsRequest.java: + id: f3e7dcc53908 + last_write_checksum: sha1:32c9c1c8ec0425fed55b21de0cf81291156f25b5 + pristine_git_object: 964517716d2d841d59d0bdd97967b462b32d0764 + src/main/java/com/gusto/embedded_api/models/operations/GetTaxPaymentsRequestBuilder.java: + id: afdde7781512 + last_write_checksum: sha1:9b084058aa01bb01d15d73ab6a34738f565abb66 + pristine_git_object: d1f20d0e9304b78bee99f54a4c0c8541176eb799 + src/main/java/com/gusto/embedded_api/models/operations/GetTaxPaymentsResponse.java: + id: eeaa4d9956a4 + last_write_checksum: sha1:bd23fd9337b09103b9c388919365af134326d68a + pristine_git_object: 0bf459902f7ca1e58767324d8a508cb7d219909d src/main/java/com/gusto/embedded_api/models/operations/GetV1BenefitsBenefitIdHeaderXGustoAPIVersion.java: id: bb1bad21c226 last_write_checksum: sha1:d9ab4c15835c59863435c1b123e97e92c3f877bb @@ -12560,8 +13628,28 @@ trackedFiles: pristine_git_object: fdd8f5b831292608d965ee45069f2710c215a3a9 src/main/java/com/gusto/embedded_api/models/operations/GetV1BenefitsResponse.java: id: 88f8cdd66633 - last_write_checksum: sha1:da36d62ecd5df6e0652739a0826a365043aa2bef - pristine_git_object: 0cdbf6cebb56627e7592277654bcdd26f867739d + last_write_checksum: sha1:da4736c2b4036dbcf84d915b8286c20fadddd82f + pristine_git_object: 8ab5924fd016a4c808c87fc716a168ffbe5f214c + src/main/java/com/gusto/embedded_api/models/operations/GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion.java: + id: 3b88e1c9b7f4 + last_write_checksum: sha1:a2efd8b2d011a00a31edcace8b2d301f317d6def + pristine_git_object: 70d83e1e47599e02efaf7b8994ac5709ee0fc32a + src/main/java/com/gusto/embedded_api/models/operations/GetV1BulkReportsRequestUuidRequest.java: + id: e08619e0d47d + last_write_checksum: sha1:6c10d8489104c68bf1ba2d8a970920f96a4e0034 + pristine_git_object: 53916252152d04b87c2a0f40c6efbd3201315da3 + src/main/java/com/gusto/embedded_api/models/operations/GetV1BulkReportsRequestUuidRequestBuilder.java: + id: 2dd97804c66c + last_write_checksum: sha1:a6abdff2c281a70ff879f28c870bac43f800226d + pristine_git_object: 5427a2cfd4490119884a155b919ee1fc1cfb828c + src/main/java/com/gusto/embedded_api/models/operations/GetV1BulkReportsRequestUuidResponse.java: + id: 48b160fd887d + last_write_checksum: sha1:5544cdc160deda8cdc78cdccfa0ddb5366576e8c + pristine_git_object: 2b531f1ad2b74f3cd381ddd37208aa1a1dd28738 + src/main/java/com/gusto/embedded_api/models/operations/GetV1BulkReportsRequestUuidSecurity.java: + id: 340bd57f46dd + last_write_checksum: sha1:863550103a8f10808c58053d7770aebd225c4e57 + pristine_git_object: dece3bc671fee224d3fe06dda03af2945f49d91a src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesAttachmentHeaderXGustoAPIVersion.java: id: 086b42ec4d10 last_write_checksum: sha1:f3765a756251d3568683a1295a369b7044ac7abe @@ -12610,18 +13698,14 @@ trackedFiles: id: 1bbcca58d7f0 last_write_checksum: sha1:522b84d21bc3824f70e9d0e84f89de1494b4375b pristine_git_object: 4f1f66c0f803d4ef49cf994c1c863d095875c04d - src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion.java: - id: a6d26a76999f - last_write_checksum: sha1:93224b094a2e9227a51670a034815b4b19b75dbc - pristine_git_object: c68e02e20ffab8f93d71669dc3c6146d59cc3629 src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdAdminsRequest.java: id: 272db91b848e - last_write_checksum: sha1:f95df9d239a1b13601cc412cdc5294a80ca3c9fc - pristine_git_object: 589c65cb641b7b192c9579ce4facd733ab4738b7 + last_write_checksum: sha1:e25c55ca242701b68e474a78583ac9b33f5d2206 + pristine_git_object: 331cc6f9180de2331d5d6148c1871a211215921e src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdAdminsRequestBuilder.java: id: b87e252d4098 - last_write_checksum: sha1:e24aafce203cae1a1a7cf9dc8a917d9b15e589ca - pristine_git_object: bbc0ad06f7b6bff276ca023a338bfc044de77530 + last_write_checksum: sha1:07a9ee24a467115467df900d0468d979e726bf2f + pristine_git_object: f03f58559fbf0707cd30d6915d9d48f6612ccb22 src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdAdminsResponse.java: id: 279c538cdb57 last_write_checksum: sha1:2236f0370edb69ed8a69d3069083c40f41247748 @@ -12680,8 +13764,8 @@ trackedFiles: pristine_git_object: ee1f18164dc684a7251a14f8e861d74b5ec91f86 src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdContractorPaymentGroupsRequest.java: id: 866f10d44612 - last_write_checksum: sha1:c2f207216c22e65d2ae179266ec8e4f7efd0f9ba - pristine_git_object: b0021e68fdc38c8759c39f358c70523b0b333166 + last_write_checksum: sha1:d0a4e290e42319bb05f69b38e495cd9dd7107de2 + pristine_git_object: 89a5b73b8f9b4e2e03d8050cd5d69c7a13b5bfad src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdContractorPaymentGroupsRequestBuilder.java: id: 6c485e0aaa8e last_write_checksum: sha1:a72e369897c75e4e9a14213e61a1927e20272c05 @@ -12716,12 +13800,12 @@ trackedFiles: pristine_git_object: 85a61cc296a9cbf15cc3d0cac3c4186a678ad7d0 src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest.java: id: cc277232b69a - last_write_checksum: sha1:0ba154a44428711d662f0bfeeee15294211359be - pristine_git_object: 0d1e053e3567221ad111455416bd8ce8036097cc + last_write_checksum: sha1:2720ccd2daf5e0edf040bca0c057607960700c29 + pristine_git_object: 1c77262a092635dae5512282d4cc12818c6b32c4 src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder.java: id: 6729f8ecfe03 - last_write_checksum: sha1:a1a7317ba137cef894820ade81dafc253e2747be - pristine_git_object: d098f649ceadaaaf804ba2fb3b41e27226fafc96 + last_write_checksum: sha1:84ca2a41c3836d0fd5f0fd2c5e237106ec13889d + pristine_git_object: 97ec8a2c64ef7107fce03db835f77c600ef9f442 src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsResponse.java: id: 28ebad5522ff last_write_checksum: sha1:5bd17911cf07312df4bd3b625b7a7827081f7079 @@ -12778,10 +13862,14 @@ trackedFiles: id: 98b612920845 last_write_checksum: sha1:9db81448253e164f0f43aee84de3f6ffece6f031 pristine_git_object: 7e42b469761c011d135b3b817d82eb547d6710be + src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdEmployeesQueryParamInclude.java: + id: 6ffae1ac12d4 + last_write_checksum: sha1:85e495c41ae0e00d99f1eb5bf7882af347cff3db + pristine_git_object: 74580726d39b57c7bf1ced2d9511d334bd8b6c6f src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdEmployeesRequest.java: id: 84a638f4ad78 - last_write_checksum: sha1:8c19544fa7ff44fed0d49d95eb2f2da7c37aa183 - pristine_git_object: 98ab9b2694e38b9eaf76c4e640f20ba659e35c59 + last_write_checksum: sha1:89c5eee7e163ab110defdcf03c38f0f657d60c1a + pristine_git_object: 0a4670de42567cf8ec826c7e5adcec71267d5d38 src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdEmployeesRequestBuilder.java: id: f90979383800 last_write_checksum: sha1:c74e0960009e1d9bde4cf312742f9a47d98b90e1 @@ -12796,12 +13884,12 @@ trackedFiles: pristine_git_object: 74ced714dce491b4c05821fe53d2a016cb3d1ff7 src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdFederalTaxDetailsRequest.java: id: 47d864d4d4f8 - last_write_checksum: sha1:869a8c6aabc34c3605b4514d91d1179db94d5f3d - pristine_git_object: 851f8af2de8e8d53a1591752adc8ef3bc58aa032 + last_write_checksum: sha1:c168ba7cac9d4ed54f4c079ce95d1ce548c6bbc4 + pristine_git_object: dd97e54607d8fdd09ee86b7fa8c44d3b627ea16a src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder.java: id: 6ff78580530e - last_write_checksum: sha1:ea9bc527fa7760b74f59f55f8068e31b78cb9ac0 - pristine_git_object: 113e766061d72641d3ff76c43a05ef499ee16252 + last_write_checksum: sha1:c7fdea76507c7fa96274dccf0ae02bed7cd5c5b1 + pristine_git_object: 931a117f12991ddb3702ecdd31c8581bcbae10c5 src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdFederalTaxDetailsResponse.java: id: a80b355a286c last_write_checksum: sha1:0fb5729e2d30da1eb885546ea9d2658f056f0581 @@ -12880,8 +13968,8 @@ trackedFiles: pristine_git_object: 8e74f223fa7d0c050774f455014f533056bae098 src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdPaySchedulesPreviewRequest.java: id: abcd13b01e0d - last_write_checksum: sha1:12de2a79506a781950627d36c46651e0a3ea7b72 - pristine_git_object: cc66a049f482780288905b74f878ff065fb5fde4 + last_write_checksum: sha1:f1efb5b3bfca0a0e05d334e3145911987a52c222 + pristine_git_object: 8e30cfd38a4125031fe6826332358211d2cc7ace src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdPaySchedulesPreviewRequestBuilder.java: id: a608e1f44d5a last_write_checksum: sha1:4e1139f6c2bf8eb6a11248db07320d0ed1430b10 @@ -12902,14 +13990,18 @@ trackedFiles: id: e62b3c28e691 last_write_checksum: sha1:1324e789228ee56c2d890c5159fd404395390e27 pristine_git_object: 04275f0c9687042ae256c75927678619e4adec53 + src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion.java: + id: 3758e52b2c6f + last_write_checksum: sha1:15fa2fb2098491ad545ea446ec5fd4db1239973e + pristine_git_object: e7c2aa1f1ec9d136a7950e2e6bd643c02b2e8e46 src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdPayrollReversalsRequest.java: id: 0155ccc410b3 - last_write_checksum: sha1:5ac12c442242e515bbf7d1986c9aeb3603b91555 - pristine_git_object: c03f25b1a995d3c80637b23948a17570f4be47ae + last_write_checksum: sha1:fe2666d556e69a5d20c6a3b8cc4659318b50de9d + pristine_git_object: 6c68f3a97642e82ba13a15ea83be60cc517dc755 src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder.java: id: 0009f5d7a615 - last_write_checksum: sha1:8a849c06c53c2a63515bc4fa0665201af172b24a - pristine_git_object: ba53163dc25fc6519def69c284855824984e1b00 + last_write_checksum: sha1:85aeb8ae9fb4de360e6e8b62485f3f78556bfdbe + pristine_git_object: 45b7491b5508dd458f4eeed86369967da5d38402 src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdPayrollReversalsResponse.java: id: 2ec777641615 last_write_checksum: sha1:ff7682f4d975cb82f4dd225e4977370743dc6bf4 @@ -12924,12 +14016,12 @@ trackedFiles: pristine_git_object: 04086aec85eb3e8b18ba1affb0bf078512e0964b src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.java: id: bfb8b1135c62 - last_write_checksum: sha1:38187196bc477060041bebfca5823883194e1078 - pristine_git_object: 6acc1cb5db414cf4ae07066def136c68c01d0291 + last_write_checksum: sha1:037b211ed83df495782c9783ed75cedfab89cc29 + pristine_git_object: 28451d910d1a2de256b22af6452ba4f533834dcc src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder.java: id: 3aedd110d6c9 - last_write_checksum: sha1:98e9383b3e6ff2d39676c284224dcf72b658ba35 - pristine_git_object: 3b236a357375b8e3c29d5c3191ccbf1512e7f439 + last_write_checksum: sha1:6de6a4432ce9071041f1f6d8e1017f4870c7fff5 + pristine_git_object: 5fb2764a664b8f074478f81dd9ec2636616a3cd4 src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsResponse.java: id: 0178822bd470 last_write_checksum: sha1:35e98d70b89f9d95b81b35ebe0708cfc66ad58eb @@ -12944,8 +14036,8 @@ trackedFiles: pristine_git_object: ffcd517847de8b0cb1a7a8b5f712df9698cd2819 src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdPayrollsPayrollIdRequest.java: id: f7c9c984a029 - last_write_checksum: sha1:a482faf010aa8be5f322f5a84fb22685d441b457 - pristine_git_object: 127e52b5c3c2f792cbbba57a7b15291c3d515934 + last_write_checksum: sha1:53269bd342ed22c161095233bfe9589a0a6de9c9 + pristine_git_object: 8acd15613aee153961f610515a4bdd4e27f7de85 src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdPayrollsPayrollIdRequestBuilder.java: id: 2690fb496195 last_write_checksum: sha1:9fe327ea882f0cb0080e40046ada8bd2f41649cc @@ -12960,8 +14052,8 @@ trackedFiles: pristine_git_object: 5b5b1d9ec31669899e60fe90957af37d5e9744d4 src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdPayrollsRequest.java: id: c6d3e166263c - last_write_checksum: sha1:59f957c5e9a4103545cee8cee327a75bd6238a78 - pristine_git_object: 0f0748b0945361be5109848cc1fe55116a2dc793 + last_write_checksum: sha1:6cf1199df970137e26d3f96409f932ae9f274034 + pristine_git_object: c8e295b9690141fc8e9046496db01d5cf625b2aa src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdPayrollsRequestBuilder.java: id: f7a93c34f5f1 last_write_checksum: sha1:bb64ef70c7bbec772049742104074cdeb04768e7 @@ -13028,12 +14120,12 @@ trackedFiles: pristine_git_object: 66f2e296632dead2ea7778dfd6f1cacf0fe272ef src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyUuidSignatoriesRequest.java: id: a4c5f9606999 - last_write_checksum: sha1:4debeff1f0aabaf7ade7086d46f94da162f4d2db - pristine_git_object: 8525f28749dc1cf89a397007626b8459195143b2 + last_write_checksum: sha1:122cebeb367e56b4e285b84a73987d5f374fbf7e + pristine_git_object: 5e67e861ab8aad7ff6ab4821dd111e7deaabce43 src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyUuidSignatoriesRequestBuilder.java: id: 36232d3c941e - last_write_checksum: sha1:38cc36df2336f97392cf6b5391c7667068508d47 - pristine_git_object: 467d48778959603b9ae289346ccdd8fb9a8e1090 + last_write_checksum: sha1:0f6b161ef3a3b1f5f9bae10d9544d5300cad980c + pristine_git_object: 6539ea7c6ffbad4bd6e8cda9991bb1caa369bdb6 src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyUuidSignatoriesResponse.java: id: b2a78487f89d last_write_checksum: sha1:1958d2895d510cf544f3ea5ff4479aa7d7ee696e @@ -13044,12 +14136,12 @@ trackedFiles: pristine_git_object: cc90b5927c62660700ff5c79e081c7746b14b5b4 src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsRequest.java: id: 23fe42032b91 - last_write_checksum: sha1:1354de28d78df74d3e22adb25241865d24896b47 - pristine_git_object: 2317fecd5d18ad328368f999ac94b209d4e706a8 + last_write_checksum: sha1:2bbdb7c4b2002197639033ccf4ac7641e5abb876 + pristine_git_object: c48f4eb2fdc8aa2d26d2cdceffb8a7a02d403ec8 src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder.java: id: c416ff0f377f - last_write_checksum: sha1:f085092be2ff21423cbb12d4a41a53431c6dc6df - pristine_git_object: eb334026bad60fba3ca00d1d74b31a8c7794b568 + last_write_checksum: sha1:09159dd709ccbe0ac2b626f0d61e4ae1af5544cc + pristine_git_object: a9fba46d22c1e42ddf7791df72e27254cda465c9 src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsResponse.java: id: 7c8aef864c9a last_write_checksum: sha1:02c05c7082b940c0bd488002ab2f3606d1fd6c95 @@ -13060,12 +14152,12 @@ trackedFiles: pristine_git_object: 72cbbdbd80a15807e4fcaeb5d1d40a9ba18d316c src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsStateRequest.java: id: abf152dc70ff - last_write_checksum: sha1:ff2bfc80dc9a860ffeb18864d74df60d01c11966 - pristine_git_object: 2b2f978c561a30950a45bbae1fe37796300e1e77 + last_write_checksum: sha1:160819e39f59665e2c0faba2fe06e3d3f92fb902 + pristine_git_object: ed858e37a412caa78e6e7995a8e8c1e4ddd5c22c src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder.java: id: 879674bfab5e - last_write_checksum: sha1:259f34b06483a8a496673836c77cbae26f122744 - pristine_git_object: 184d2d4e1c7d1794577379c6911efdbe181e133a + last_write_checksum: sha1:4f265499373c69a6a41d6dcc77870dca236b4b3a + pristine_git_object: 2ddbb3b660923e07190bfd4aa746fc8c4cbeb3aa src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsStateResponse.java: id: ae048a3ffe0e last_write_checksum: sha1:b3c930dad6956486f61190e44d2dc504933d7bcc @@ -13140,12 +14232,12 @@ trackedFiles: pristine_git_object: bb3a8598b30be8a36dc6c5904298da09e2fe0612 src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesRequest.java: id: bcc8d0c3de4e - last_write_checksum: sha1:e8be9a9b5a981f944c118efc994baf24c9f375d2 - pristine_git_object: 0d404e63fc8b5335a301327223f6a67d142dfe1e + last_write_checksum: sha1:a30c8fbc2249942c7f663324c96ba3fb30d64fd0 + pristine_git_object: 7a2449c14f0657ec0803254c3ed3d06c42f69afa src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesRequestBuilder.java: id: 377ffb36ee64 - last_write_checksum: sha1:71ce9d11173dad0c5cfa0ede760fab9ffbb3e696 - pristine_git_object: 39ade571de3ccb3e52fab5513317fedc6a61537a + last_write_checksum: sha1:392212d3c2008bc5fa9ead4c40eba5b8700ac008 + pristine_git_object: 4b10fb1b131c5e5d1ce9393f38f2fd70afc1660c src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesResponse.java: id: 985ec066a3fd last_write_checksum: sha1:17533aa1faa0c0c0535f4a4aad6be160a8b5d902 @@ -13170,14 +14262,10 @@ trackedFiles: : id: 1c90ebd1c2f9 last_write_checksum: sha1:5df6f59d5c059db2784cd7de890c9fd3376e957a pristine_git_object: f85ea405e5c958247858b15aa6457822ac76fda4 - ? src/main/java/com/gusto/embedded_api/models/operations/GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsQueryParamInclude.java - : id: 1a5b56156ede - last_write_checksum: sha1:204b7abf61521464d3ff8e4e82a0b878704a6159 - pristine_git_object: 9927339524c866c73844f2c3aca7890a43a432d0 src/main/java/com/gusto/embedded_api/models/operations/GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsRequest.java: id: a9d15093c2bd - last_write_checksum: sha1:c2f258bff12b8f2b7ccba86d0adcb03315240951 - pristine_git_object: 4203f7d495fd3122eccacdd6984ae96dc7c4721c + last_write_checksum: sha1:5086e9841428d8628c9d6ecdd8bc27a9f434c931 + pristine_git_object: abc97365c109d74c31162256b652ed4a00fefd50 src/main/java/com/gusto/embedded_api/models/operations/GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsRequestBuilder.java: id: 266ed28d6f69 last_write_checksum: sha1:f72df12110991c72f45402f4b8ab85f256545422 @@ -13190,18 +14278,14 @@ trackedFiles: id: 594c07e77e29 last_write_checksum: sha1:29e088c65f8f055cf82cd0b8977c0b9694bcbb1d pristine_git_object: e89922cbc6ff3245b25f2f7a86cb9fddb8f54c0e - src/main/java/com/gusto/embedded_api/models/operations/GetV1CompanyBenefitsCompanyBenefitIdQueryParamInclude.java: - id: 1fd9d9e338f5 - last_write_checksum: sha1:81d904042709158abaeb2c5db7a21cb7720658bf - pristine_git_object: 829ad9fc5d85a8a1b49a7b76c68bbff5c7c7a1a6 src/main/java/com/gusto/embedded_api/models/operations/GetV1CompanyBenefitsCompanyBenefitIdRequest.java: id: ab68cf162728 - last_write_checksum: sha1:b5315dda66945b4399d9c9cf6805b717c44b6e81 - pristine_git_object: 912fd26e57b636f436f3db58fb2503517637d37b + last_write_checksum: sha1:aacd7330b183e981b4896d01e996a0cefffd0419 + pristine_git_object: 8d81e64a99c4c1448da7619df720bdd739de6773 src/main/java/com/gusto/embedded_api/models/operations/GetV1CompanyBenefitsCompanyBenefitIdRequestBuilder.java: id: 1a3a243ef90c - last_write_checksum: sha1:9f093ac6cbc6efb76bcb4a20f65324582fb057ac - pristine_git_object: 84dee698f6bb9adecad5ed4cfa37aaba43ab0a95 + last_write_checksum: sha1:4122ad7163d063a3ac5f628dfd1aab8f5f5c35c2 + pristine_git_object: d5a5cf7ebaf8eab2b286b1ce496dadb2c05221ee src/main/java/com/gusto/embedded_api/models/operations/GetV1CompanyBenefitsCompanyBenefitIdResponse.java: id: a18fddc65932 last_write_checksum: sha1:0e77ad0fc3309922104a9dde5aad1847a3fbaa40 @@ -13228,12 +14312,12 @@ trackedFiles: pristine_git_object: dd6df96eb1ad3f58f3578186286c4e3d50ca7003 src/main/java/com/gusto/embedded_api/models/operations/GetV1CompanyFinishOnboardingRequest.java: id: d08b685baf51 - last_write_checksum: sha1:2a6d3f791e1d17695041fc6ec1285d33c2e225e7 - pristine_git_object: a1dd3af3a1140c143be3e7a9112c0b6516468dc0 + last_write_checksum: sha1:b57974cd79df09ddd530d930e81bc5fa9ffa830c + pristine_git_object: 53d6df4d26d43e66939bc0fb0e0f5251943fd132 src/main/java/com/gusto/embedded_api/models/operations/GetV1CompanyFinishOnboardingRequestBuilder.java: id: 1c20caca2380 - last_write_checksum: sha1:6ab29e685e120e28475290ea034a41f3a35ad9e0 - pristine_git_object: 16c9582f7f43fbd0569caf130ab8db890caf7985 + last_write_checksum: sha1:6b5dd445fe3fd249aa86f01475eea1465c15fd31 + pristine_git_object: 275170cf79f3b80d0114378a19e71c11e4508ad2 src/main/java/com/gusto/embedded_api/models/operations/GetV1CompanyFinishOnboardingResponse.java: id: 3d11409972ef last_write_checksum: sha1:37a4e710c8e9a67a0d58a7f78460107a028463d1 @@ -13292,12 +14376,12 @@ trackedFiles: pristine_git_object: f9a159a7caa69ddcaf22952406d813a52e372459 src/main/java/com/gusto/embedded_api/models/operations/GetV1CompanyIndustryRequest.java: id: 8d0b41a6ebdc - last_write_checksum: sha1:66cfd987a2bcb9eccc14dff32006c1dd1388535a - pristine_git_object: 0ec154711d0c4ae7f80cdabb9c04c75cf2f73db0 + last_write_checksum: sha1:532834c315ccc73f42713b01988d619213c5c4b9 + pristine_git_object: 7490ae3787c005931d5d1423abb3fdfa2694355f src/main/java/com/gusto/embedded_api/models/operations/GetV1CompanyIndustryRequestBuilder.java: id: 9348736ca584 - last_write_checksum: sha1:62ec92054218ecce900ed5133c8c3d07f3b8d03b - pristine_git_object: d0d0a26d6af8aed47fcd7423e98b768741840862 + last_write_checksum: sha1:59a2c0f21eda9f5adcd7434dadeef93c801acb3a + pristine_git_object: 002dfec6303af68b87bf01ee22783b7525e2d009 src/main/java/com/gusto/embedded_api/models/operations/GetV1CompanyIndustryResponse.java: id: 625ca5188031 last_write_checksum: sha1:9cf0b3a962832888a1138445c95c3f39f6925217 @@ -13308,12 +14392,12 @@ trackedFiles: pristine_git_object: e51ef3513cc1f2649d17defc5d814c937239e173 src/main/java/com/gusto/embedded_api/models/operations/GetV1CompanyOnboardingStatusRequest.java: id: 2eed87bd4bc2 - last_write_checksum: sha1:5f13d8e66b5a7702bd66e5512fa16f8b17974b38 - pristine_git_object: 0b32b66847ed6f17cc49f91db49e87e7dd959f93 + last_write_checksum: sha1:d39733c497c76a22377d4416b693ee504b133b6e + pristine_git_object: 7335c896755c6013a45d013efaa21e8dc0097634 src/main/java/com/gusto/embedded_api/models/operations/GetV1CompanyOnboardingStatusRequestBuilder.java: id: ea49633520b6 - last_write_checksum: sha1:b81916db096027fc7ddbedfee6ecde8630b64b49 - pristine_git_object: e9839f8771b684a4596c3026b764436c3d98174b + last_write_checksum: sha1:db45f029e1cfe596134d1abe1ef152916599dcf0 + pristine_git_object: 45db3ff30e8e47115edc6fb02cf99feaeb63808c src/main/java/com/gusto/embedded_api/models/operations/GetV1CompanyOnboardingStatusResponse.java: id: d68a0967d748 last_write_checksum: sha1:12fc53c1aad801377866e813c7e5a2167748dc4c @@ -13452,12 +14536,12 @@ trackedFiles: pristine_git_object: 42c11a8a157fbd0f793a24e2e9bc65ccff059bf1 src/main/java/com/gusto/embedded_api/models/operations/GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.java: id: 12e92f2dcf4b - last_write_checksum: sha1:75b7b1c5afda7046c330ee663140b768e4b44dca - pristine_git_object: e1bbe92d3d81811c3a746b487f5da8d1be99dad6 + last_write_checksum: sha1:f52f39d067f5837c017de065f29318ed4899530b + pristine_git_object: 9a90e80bee9eecc0ccc40b0efaec6452ad28c20e src/main/java/com/gusto/embedded_api/models/operations/GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder.java: id: 91ba8ab14f72 - last_write_checksum: sha1:bc50ce876c8b416ec90462187b4ae35eb4a5a2e1 - pristine_git_object: c0c210ff16a2215bacd8a8c79c866ddeefefe80f + last_write_checksum: sha1:720a68656090e33c44f233ad00c2b5b08792e2b6 + pristine_git_object: 7c5dbebb6ae7b8a88438fd4cd3844d098883e730 src/main/java/com/gusto/embedded_api/models/operations/GetV1ContractorPaymentGroupsContractorPaymentGroupIdResponse.java: id: 27b615fc72d0 last_write_checksum: sha1:0d7eadb0ad39bf50eba5baa33ffd1955466c3e7a @@ -13468,12 +14552,12 @@ trackedFiles: pristine_git_object: 9306f076a8852ce9b1e7ebe65f796c3d7181e697 src/main/java/com/gusto/embedded_api/models/operations/GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.java: id: f0d07b1d9acf - last_write_checksum: sha1:d27be065f4bed26cce44559f56731559f2578935 - pristine_git_object: 6d3f0fe12db142f2ad82589b8df4fa8bc78309b8 + last_write_checksum: sha1:580516cb7a886459a824e9a6249c2fa3f5d5e442 + pristine_git_object: bb00a5a8ff12486bf12586e367ba0ded18a53c64 src/main/java/com/gusto/embedded_api/models/operations/GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder.java: id: f84a04df20fb - last_write_checksum: sha1:7fec37011376c03c2eb9b41f4527c60797a6dc72 - pristine_git_object: e2fda11a07f36ebe86106c4824b0c81dc6fb9736 + last_write_checksum: sha1:cea6f32c3e28560dc79ce360cc7c5e5f7267fc5c + pristine_git_object: b53359081b7fc31f5d9d6959fc579d979446bd2e src/main/java/com/gusto/embedded_api/models/operations/GetV1ContractorPaymentGroupsIdPartnerDisbursementsResponse.java: id: 3cb538d74586 last_write_checksum: sha1:80446bc7de717ba8f4a46ecbba8394b0efdf3021 @@ -13562,6 +14646,22 @@ trackedFiles: id: 32eca9236ef9 last_write_checksum: sha1:fd3a32dc8df6e1d699318e2fb153ad9b1b73e565 pristine_git_object: 86bfe412cb5cdf08da2bd56483fca5cb683043cc + ? src/main/java/com/gusto/embedded_api/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.java + : id: 1df652eeac6a + last_write_checksum: sha1:23619cfe439eced45db0121859e4977af4d09e8d + pristine_git_object: 9367676abe28fad999b64a94ec6f5f48d8159f4a + src/main/java/com/gusto/embedded_api/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsRequest.java: + id: f394a0c3166a + last_write_checksum: sha1:17dd82472676b2bd96ebd472876ad6054c468a1f + pristine_git_object: 83c90fa5f68466f0c9f042b8a9613dfc60387ce8 + src/main/java/com/gusto/embedded_api/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder.java: + id: f611006cb79e + last_write_checksum: sha1:f49c1e2788ce9708c2471c7b60654cd3433e6d21 + pristine_git_object: 6ebef1015a1eda6149f756f93f1ac411d93f241b + src/main/java/com/gusto/embedded_api/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsResponse.java: + id: 0fb52c4f503b + last_write_checksum: sha1:45d6a716f9cdb95cf4157e9971581c576941c3c8 + pristine_git_object: 22f494f9b18a2e695f6618172048d910ff2bf946 src/main/java/com/gusto/embedded_api/models/operations/GetV1ContractorsContractorUuidOnboardingStatusHeaderXGustoAPIVersion.java: id: cf75c1c92a2f last_write_checksum: sha1:2db7edce1a1b6356f6881bda7cd2a3d5d71f30e0 @@ -13594,6 +14694,22 @@ trackedFiles: id: 8a688e1fac29 last_write_checksum: sha1:82fbc7d49a0d6d31fd873a8a3161a47b91d0c748 pristine_git_object: 9342d8fbe3a110850f388ed302c0fab1231ba2ec + src/main/java/com/gusto/embedded_api/models/operations/GetV1ContractorsContractorUuidPaymentsHeaderXGustoAPIVersion.java: + id: 9a93be287440 + last_write_checksum: sha1:baf5617f190a6753a23adadbedfcafc477e9d7ef + pristine_git_object: 25e8251100713a22303979b72eaa6f32c1e6af29 + src/main/java/com/gusto/embedded_api/models/operations/GetV1ContractorsContractorUuidPaymentsRequest.java: + id: 60fcb5c584a1 + last_write_checksum: sha1:0c0a71ea498268045870316f106a3fac66168167 + pristine_git_object: 3e55384af5da4fdbda1e9fb80a2a7a14f2d5f164 + src/main/java/com/gusto/embedded_api/models/operations/GetV1ContractorsContractorUuidPaymentsRequestBuilder.java: + id: f23985ca36d9 + last_write_checksum: sha1:79ddf000491f82234c1eb42936f6f7de435e0895 + pristine_git_object: fbd44287671af79044e3f84b8e8eb3043f41a1a5 + src/main/java/com/gusto/embedded_api/models/operations/GetV1ContractorsContractorUuidPaymentsResponse.java: + id: fb6154741b24 + last_write_checksum: sha1:2d94889623a2c421cdaa43629afaf06b674c8ff0 + pristine_git_object: 3d3b287e0c47dd0e4a5ee13eab1aea600ac887ab src/main/java/com/gusto/embedded_api/models/operations/GetV1ContractorsContractorUuidQueryParamInclude.java: id: aa340f6e6aaa last_write_checksum: sha1:7f1c3a0371f213159f328cc9c4c63f8a00e5f933 @@ -13696,12 +14812,12 @@ trackedFiles: pristine_git_object: fa6699283dbd98e91d212ae791eb9042baca51c9 src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesEmployeeIdCustomFieldsRequest.java: id: 3715c37cae4e - last_write_checksum: sha1:69956909b1a4e2a22db937f7be1b09f748989367 - pristine_git_object: cfa35a56fa3b29d7a6e1ed1323a2045a2a4fffb9 + last_write_checksum: sha1:26788544b0334c3c9b944b5d4ce1413d959e00c1 + pristine_git_object: 8c065539a8142304af627f63c46208fc3c9d9350 src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder.java: id: 6cc7ac803bec - last_write_checksum: sha1:e5fdedd817e8c2026ea070dd8d445097dc651f1f - pristine_git_object: b894fed7fdd7c1f88592b91b273a671fab9cdd10 + last_write_checksum: sha1:0d36568b8d1c1ba57ac2d49047784af2d6cbfac2 + pristine_git_object: 70848270a578f65ae10f936e83dab15802b603f4 src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesEmployeeIdCustomFieldsResponse.java: id: 19a8cf36e85b last_write_checksum: sha1:a50d5fe9052d42f9d315a0ac069b970372a678a5 @@ -13780,12 +14896,12 @@ trackedFiles: pristine_git_object: fe0b266cba4ebce07b5e039f34198b21d62d0630 src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesEmployeeIdHomeAddressesRequest.java: id: 69f084ea98f6 - last_write_checksum: sha1:b1177f2f5b96376d5b7bc01133a457b8ee5d8f07 - pristine_git_object: 5ccbd8e450023e1eec377ab3f2d138960373f5da + last_write_checksum: sha1:eeab17712c88072b89898b3eb04b35758a0e11fa + pristine_git_object: a535e9565d43dbba584a219fd19063164a42d53a src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesEmployeeIdHomeAddressesRequestBuilder.java: id: f6f48ad38877 - last_write_checksum: sha1:05c5679ebd0eec964fef2a3a17eda47d5b593e66 - pristine_git_object: c078871018468ed1d132c73f78835fdf84789f69 + last_write_checksum: sha1:da5c1adb1d3f87269bceba9a090650006f91ab4d + pristine_git_object: c5842320ca875057eebeed6dd94ec7203adc746c src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesEmployeeIdHomeAddressesResponse.java: id: 939c0dcff053 last_write_checksum: sha1:ebebd4cc25b307dde7b8bd7c4f5f60570f4465a2 @@ -13848,8 +14964,8 @@ trackedFiles: pristine_git_object: 773a9b572dd0dda163aa80ded80dbfee59708bb0 src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesEmployeeIdJobsRequest.java: id: 1528c4a4f87f - last_write_checksum: sha1:8bdc938be5d3604f0f72f4951d07ea621c49cd7d - pristine_git_object: 901ece2fbfcf87e4a7de886160d55eda007b098e + last_write_checksum: sha1:216e508236d8e8f24d80936d5236d45f48a09de1 + pristine_git_object: 5c24bc47c30dec181046efcc1eaa43b09bae52a7 src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesEmployeeIdJobsRequestBuilder.java: id: 65b510b66ed3 last_write_checksum: sha1:6d187c820297a0f449a0b525a62797a8f41608be @@ -13858,6 +14974,22 @@ trackedFiles: id: b2c646de6f0f last_write_checksum: sha1:10ca0ad7a73403610cd303f5ca6941a61c950db4 pristine_git_object: b6988f99071c4ed6aca1a08585d634401024f55b + ? src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.java + : id: a4c6e4ef870c + last_write_checksum: sha1:713203b1edc00dc591690887c2aa7aee07d56f7e + pristine_git_object: fb921860dfa7e4573335e82de1a20b969e9ec999 + src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest.java: + id: 0b10f04bd5e2 + last_write_checksum: sha1:532a71f7d4acbe8c80c7a4fbb8827d9ee75b1fed + pristine_git_object: 0769c315fd9fc2963b03d6d0e33a3a6049c73759 + src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java: + id: 541bd2f714f5 + last_write_checksum: sha1:6472c57dea13a9ecf7ab75a97b6960c7b9c3050f + pristine_git_object: 87ae08ff3577bbfd3138628ad8073fb5ad6a3efa + src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java: + id: 7d31a0e17ec4 + last_write_checksum: sha1:7ba1736afc34beb3cae32e4fb03f5cf36d3b4748 + pristine_git_object: fa7eedce6c7894ffb015dd8fbad8bf04fa03f696 src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesEmployeeIdOnboardingStatusHeaderXGustoAPIVersion.java: id: 0a00c42cebe0 last_write_checksum: sha1:0e9d38b2e8fa7ca9f637ab4824adb23f2644dc45 @@ -13960,12 +15092,12 @@ trackedFiles: pristine_git_object: 1f3c07daff2997715324b30a0fca5e3c9854cf27 src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesEmployeeIdWorkAddressesRequest.java: id: efe554f917d9 - last_write_checksum: sha1:6b83f1eeaa76e497072a7c11d7ceed16e2771967 - pristine_git_object: 8b4d99661a88d8d549980b624a86bd2bc90edb70 + last_write_checksum: sha1:44b0f328cc1257847030560c529bd33216dd2cee + pristine_git_object: 43f24efb85c89a6acff4c8b17005681ab1c2daea src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesEmployeeIdWorkAddressesRequestBuilder.java: id: 948f54b350d2 - last_write_checksum: sha1:c5d33b10b973283c7dc2aa7892b629d90da8a7ed - pristine_git_object: a83caa05b46472d599740c534e42f6acd29e7f2d + last_write_checksum: sha1:afa6f5c3a31a4785d0f64f5513f7cd3f8e5cdbcc + pristine_git_object: 04e73d920613b46526f76b8d5265f5494938f712 src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesEmployeeIdWorkAddressesResponse.java: id: 9d52e68a9933 last_write_checksum: sha1:828e78409209a9ba85506e8b189ec3fee26f1711 @@ -13992,12 +15124,12 @@ trackedFiles: pristine_git_object: 9779bbd7c60bcbd7e0d1cca01b102f971c4db995 ? src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.java : id: fc87c2eac2da - last_write_checksum: sha1:25804ee17f41dbc88d28462f6cbf40987ab6f637 - pristine_git_object: 4e9a78b2db73efe0704a396221024ec0a4e9e372 + last_write_checksum: sha1:506748180cc08ed753aca8179ac7b0cddb881284 + pristine_git_object: fc409bb62b2f9276048bdcba9dbcf4887df3b579 ? src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder.java : id: eaafe99ec23b - last_write_checksum: sha1:bb4952e0a71e07664f47f5668e50f28c6808232f - pristine_git_object: 0edc70bbf8c216326f90da0da18d018dd5ff85d0 + last_write_checksum: sha1:a0320ce856b983c2c0884d209c2de7cc57643ecc + pristine_git_object: 5c5ea085a02b57e1282374aca9d0126905965151 ? src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearResponse.java : id: f8e5cfb4c7af last_write_checksum: sha1:ba83616e9e5e83eb8f7a913bcada1cb8a231d8a2 @@ -14008,12 +15140,12 @@ trackedFiles: pristine_git_object: 8ddc02d62d92cc30853a69c352a69b633ac8aa18 src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.java: id: de27ba0f7a8e - last_write_checksum: sha1:2a58a5e5767e01b6226dd20a80a452b4e42e4343 - pristine_git_object: 1426c7d22cdaea7d56332b83cefd3edcf5153f9a + last_write_checksum: sha1:ef05da1e5517be5e05cf62f701327182f0ee7887 + pristine_git_object: b931896d60fdfd6a72089e33d41651c18e44e0f6 src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder.java: id: 8465cf37453d - last_write_checksum: sha1:2a03272376feaf74479bb79192ecd1b3cfa6f326 - pristine_git_object: 8c1e2200184b56cdc7f15a4743513ebdf9bda6b6 + last_write_checksum: sha1:29846266be058b7e9a3e8b93e952536135063531 + pristine_git_object: d8d5d06bb7a82b310f332aab04bd354c564cee8f src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesResponse.java: id: 8c05067d00a0 last_write_checksum: sha1:c3de2ca08fd8ddc1fb289d0a55293f18ffab8069 @@ -14022,14 +15154,18 @@ trackedFiles: id: 995ca48519bc last_write_checksum: sha1:c0d8b217d4372e47e43414e1791d01a2e28a8e24 pristine_git_object: 85360215fc10ec686ec994e36b2897e603f7d1e5 + src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesQueryParamInclude.java: + id: d4b323b6286a + last_write_checksum: sha1:e8ce66d740322c114eb1e397a3619aeb79ac28fa + pristine_git_object: 07174f066f8c1329f61d1d853301e88e43585823 src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesRequest.java: id: 72e43676bb76 - last_write_checksum: sha1:a8c8c936ddeb0edb4d011a3503f7be42ca80c1d2 - pristine_git_object: 6bd943caadf13fbcb2994cfcd2586bb7a8f51bd9 + last_write_checksum: sha1:def11e1ef3006b90fb63af1ddaa8bdec9f9333c0 + pristine_git_object: 415cf952cec4de5784890086a8c3bd7d602a63f4 src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesRequestBuilder.java: id: d7e34b92a273 - last_write_checksum: sha1:ccf7ac44b177f248773600c993530e154b2a6807 - pristine_git_object: 404d28cd20995e90d209abbfb8ade45f2df91aa2 + last_write_checksum: sha1:8e5449f2a07792f9ddc3e40300ad58918de54eb2 + pristine_git_object: 1286352ae96be6933b6ff23c8d037e9aa153bf5f src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesResponse.java: id: "202177496944" last_write_checksum: sha1:6bd4c2cc497d67c78f68c15ddb98ca6100d82f9c @@ -14098,14 +15234,18 @@ trackedFiles: id: 914e2d8c2e4b last_write_checksum: sha1:25a66f22110268b0351bfe4b842485705da94d11 pristine_git_object: eb4692f4e92747a4fad66b5060c81cd6288c9905 + src/main/java/com/gusto/embedded_api/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion.java: + id: a9d5e66c0eb0 + last_write_checksum: sha1:90a0c2b2b1d5ee038dcb6e5f15b6a5fff2e47822 + pristine_git_object: f3143b086bfb73acc71b916d26460fbd4c59ffd8 src/main/java/com/gusto/embedded_api/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest.java: id: bc57d6968084 - last_write_checksum: sha1:5ea27fe4affa8849597f8c3244653598416e9980 - pristine_git_object: 201cc1191ed22584a9eafcdb1e779ee1db615c5e + last_write_checksum: sha1:c90cb66ef6ac71489292da9e3fe83be9782b1f68 + pristine_git_object: b00fdebdf703f347da2c72770fc197e9f7208602 src/main/java/com/gusto/embedded_api/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder.java: id: 1ab16d56d265 - last_write_checksum: sha1:5c5aa3ef950e67b7398f5b0839270a4a1199e9f0 - pristine_git_object: 2ccf9b6cd4125f8287070d704a82d3cd155414fd + last_write_checksum: sha1:75e449f59b888aabbb37598939d6f81f5fc5bf34 + pristine_git_object: f214712fc9d033c0aff968c8fb40234113f7b6c6 src/main/java/com/gusto/embedded_api/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidResponse.java: id: e3472835991a last_write_checksum: sha1:25c93fe97bb1bc826e6c44981935b999ab643560 @@ -14116,12 +15256,12 @@ trackedFiles: pristine_git_object: b0de1bfd6b36d4e76866762152032fb6b4050d9d src/main/java/com/gusto/embedded_api/models/operations/GetV1HomeAddressesHomeAddressUuidRequest.java: id: e5ee44fbe93d - last_write_checksum: sha1:0a283d5c16309549434731dcef449a8c18bd699b - pristine_git_object: 506c9b41f9755f244b05a9e0a9a67d9ad5ddcd26 + last_write_checksum: sha1:1ac0635001fcd26bd2ebab2eb392b3d527d365fb + pristine_git_object: e1cb9498e5700f30ac95dacd2c6c33adc8d4b209 src/main/java/com/gusto/embedded_api/models/operations/GetV1HomeAddressesHomeAddressUuidRequestBuilder.java: id: 5a1d817d85a1 - last_write_checksum: sha1:7ccf7dfcfaa857680f2f1f3cabba1694ca4315cf - pristine_git_object: ac396283cf09065c33e404db4d6c81124f12eed5 + last_write_checksum: sha1:a32f1c51d907df039da97d08c5c3cafd52d238be + pristine_git_object: 4f6957bd6645f0cae6df6a234cddb3a0ea0218c2 src/main/java/com/gusto/embedded_api/models/operations/GetV1HomeAddressesHomeAddressUuidResponse.java: id: 1addac9d6ebf last_write_checksum: sha1:be854e60cf4ab700d4436c5e12884cf053981264 @@ -14156,12 +15296,12 @@ trackedFiles: pristine_git_object: da95174d16e1ec6b84d1977d526ac78ffb3282e1 src/main/java/com/gusto/embedded_api/models/operations/GetV1JobsJobIdRequest.java: id: 869ab6c095ae - last_write_checksum: sha1:e187cf031c4f6e875bebbcfb3d6b85240be3a79f - pristine_git_object: 3e272fbff4198a864d49fd7282eec8d24644c84e + last_write_checksum: sha1:1061234190b098ab581d17850d2d3bd89e1923fb + pristine_git_object: 08d88218a420bb49d3db1c4875a29019509b86c3 src/main/java/com/gusto/embedded_api/models/operations/GetV1JobsJobIdRequestBuilder.java: id: ce3771c1f210 - last_write_checksum: sha1:bbc17a01ff5905792b646d763f8b2b5a9f186d6a - pristine_git_object: 90d3bb55b2f922e8213c48eed04841a11435d89b + last_write_checksum: sha1:60608d8e06423a3020ba7dd366fe9af2e44cba4d + pristine_git_object: 7dd9d4eec023c81d8379e598749601fd116aba29 src/main/java/com/gusto/embedded_api/models/operations/GetV1JobsJobIdResponse.java: id: 9758bf3f8fdf last_write_checksum: sha1:5f7d0753b017f62d0ce606df66fbd5e8f34bd967 @@ -14188,12 +15328,12 @@ trackedFiles: pristine_git_object: 562404e52c32b24214581caf122cb0863088411e src/main/java/com/gusto/embedded_api/models/operations/GetV1LocationsLocationUuidMinimumWagesRequest.java: id: ffdf76ccd468 - last_write_checksum: sha1:1bcc88d3474dd165573cd36dd33e9c658f9bdc72 - pristine_git_object: 7b1b49e66d4b1f0b7ba7ea417e2fc7c23336068c + last_write_checksum: sha1:cbc5466f74018d4a2c712f5b2057277ab10694b7 + pristine_git_object: 6841e311a6151d6315c33feafcf55ce2b24c252b src/main/java/com/gusto/embedded_api/models/operations/GetV1LocationsLocationUuidMinimumWagesRequestBuilder.java: id: ffea73847b3d - last_write_checksum: sha1:eabdf2c868723b3d4d3f78afb768bc2684eea586 - pristine_git_object: f814200e674c57937f225d953521f82d653f2259 + last_write_checksum: sha1:30ad9a94ca00efd58f62aa73f10416a18a0f2a1e + pristine_git_object: efb5371edbebe1fe58342226d2f66252eaf090c7 src/main/java/com/gusto/embedded_api/models/operations/GetV1LocationsLocationUuidMinimumWagesResponse.java: id: 45fc0518b98c last_write_checksum: sha1:3fe56578f0ff8cac1955d0f73647aad5a0c67570 @@ -14204,12 +15344,12 @@ trackedFiles: pristine_git_object: 93f274f09a702686334289d6bfc6f5fc700daaf7 src/main/java/com/gusto/embedded_api/models/operations/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest.java: id: 69c230c0a2af - last_write_checksum: sha1:150a492437e7f0736215d657b98fb0e5ae93ef98 - pristine_git_object: d57dcf6271fda9eaf79f98689ecae0bd275302fd + last_write_checksum: sha1:a85bfcb991ad8f737ec077c253cf9ed97f69347d + pristine_git_object: c51465db9acf47002313bd6cfb64f23290d0267c ? src/main/java/com/gusto/embedded_api/models/operations/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder.java : id: 99acd3474d5c - last_write_checksum: sha1:2a20668ee421d64aa43aeef6556e092726026e2f - pristine_git_object: 88b89263c9e540690a065a34b8952092f8b48a7d + last_write_checksum: sha1:c56f11ab23aabc879dce8d4beb032950d699a50c + pristine_git_object: 71aa1a94eae8afdba60b35745ed8265b1d29325e src/main/java/com/gusto/embedded_api/models/operations/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessResponse.java: id: 3cb5066211e7 last_write_checksum: sha1:a7fd79b70b3c5714dbdb84da1f03fc652e02c875 @@ -14220,28 +15360,48 @@ trackedFiles: pristine_git_object: a9ef939f1ecd0867ca84ec2a2344d5ff283fe28d src/main/java/com/gusto/embedded_api/models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidRequest.java: id: 3221f2b20796 - last_write_checksum: sha1:f3fbe67d2dd6d138e1b2ae77c0a4fe88c140f364 - pristine_git_object: 96929b148b83ac872d67772be558ce9ceb0c6e8e + last_write_checksum: sha1:dcada1af08ae9f4fbb73e4c08ec46c1f548366a3 + pristine_git_object: 6a7da7912ce75f6c3810cbc4378991b65aefdd3d src/main/java/com/gusto/embedded_api/models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder.java: id: f2130d4cd4a5 - last_write_checksum: sha1:cc8308f62088aaa659543bb2a0ad1f89ff9f375e - pristine_git_object: f2c489dff0826eba06f033d352103a1c32549ef6 + last_write_checksum: sha1:4508a1fefb2fdf81ee5fb468f9cb20fd1c62266d + pristine_git_object: c1f7b4ccce329fd82376b7df3e19b4a4073b51ab src/main/java/com/gusto/embedded_api/models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidResponse.java: id: f5270556c1fa last_write_checksum: sha1:e966c9704dc63bd331808a1ead7bb7dba93071a0 pristine_git_object: 8911d29f0a5703e023575ddfb887ceb93ba0fd16 + src/main/java/com/gusto/embedded_api/models/operations/GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion.java: + id: e2216a918905 + last_write_checksum: sha1:99a54004b1d5b73dacc1d0c1e3ca6eff42c8b2c9 + pristine_git_object: 3d92510d701634fe01f8534f538e005140f17617 + src/main/java/com/gusto/embedded_api/models/operations/GetV1PayrollBatchesPayrollBatchUuidRequest.java: + id: 8d76c474b1a6 + last_write_checksum: sha1:69ee27ccbf3c77b56f8c06d317a905006a6b2d5f + pristine_git_object: 5ce51edcda77d8ea3d0d9e8c39527709584a72f5 + src/main/java/com/gusto/embedded_api/models/operations/GetV1PayrollBatchesPayrollBatchUuidRequestBuilder.java: + id: 85f80df5f525 + last_write_checksum: sha1:866cf455e3c9c969360c5bde2c20d4456a75e268 + pristine_git_object: e3010fe16eb21b8c110a8fa865d9a56bea3ee4e2 + src/main/java/com/gusto/embedded_api/models/operations/GetV1PayrollBatchesPayrollBatchUuidResponse.java: + id: fd80bc41944f + last_write_checksum: sha1:ac590ec505a0f4e6362e11083599b51929af5332 + pristine_git_object: e5deae8ce4c231d70e6517a6b1db0dabe6c08fb0 + src/main/java/com/gusto/embedded_api/models/operations/GetV1PayrollBatchesPayrollBatchUuidSecurity.java: + id: 6d4ba5eb0715 + last_write_checksum: sha1:f00a82b38a797d4450dcad3efec96ac8bff79997 + pristine_git_object: e94f693dd70c370f0700dd0ff9f5b956562599f9 src/main/java/com/gusto/embedded_api/models/operations/GetV1PayrollDigestsPayrollDigestUuidHeaderXGustoAPIVersion.java: id: 62c802410e39 last_write_checksum: sha1:4cf7d0be4a7d19b481b7c411a3372894f31ea217 pristine_git_object: 620de2038c53179b487884d51543bf6532bb3f81 src/main/java/com/gusto/embedded_api/models/operations/GetV1PayrollDigestsPayrollDigestUuidRequest.java: id: 7e957ecd055d - last_write_checksum: sha1:ee28771bb5018494b90e756c5bb47557f82eab5a - pristine_git_object: f9578c3a31489e8b87de1355f869d069fb268b62 + last_write_checksum: sha1:735bcd3843cd16e91aa8a831380457678ad54207 + pristine_git_object: 4b4f6976e5e39010d82ba314c37de1789df24468 src/main/java/com/gusto/embedded_api/models/operations/GetV1PayrollDigestsPayrollDigestUuidRequestBuilder.java: id: d7a66c8af22c - last_write_checksum: sha1:2b946d2c786e847ac7464f1d393b369d7028cbe8 - pristine_git_object: f8e09236e5b6ad632d295398dce985ad39b0fe0e + last_write_checksum: sha1:7602d7e00e7fd54500de4b7bb176d456eb9a88d3 + pristine_git_object: e2366af7bc6c9ba417e32b635c670f02ca3cb47a src/main/java/com/gusto/embedded_api/models/operations/GetV1PayrollDigestsPayrollDigestUuidResponse.java: id: bf31c90bc858 last_write_checksum: sha1:a0d8b1e5e70425f9e52cc29c4e067b71b6c57cf5 @@ -14272,12 +15432,12 @@ trackedFiles: pristine_git_object: 60cd2ef90ddbd6bb6d49bda507c258cbad23c773 src/main/java/com/gusto/embedded_api/models/operations/GetV1PeopleBatchesPeopleBatchUuidRequest.java: id: b167633201cf - last_write_checksum: sha1:ff9643d8c5c14000d32eef4c684415ee6291f807 - pristine_git_object: 5c7dfe959bb0cb7d05d7ad81d050f59b3517d4c5 + last_write_checksum: sha1:11f4f3c7235ab3f3a282595c2306b0050ab5808b + pristine_git_object: f4ae45441317c659e313f6b968bd8955d53fb7c6 src/main/java/com/gusto/embedded_api/models/operations/GetV1PeopleBatchesPeopleBatchUuidRequestBuilder.java: id: 43d1f9569c82 - last_write_checksum: sha1:5a70986c2d17070daba782cef18fef1cc2f72d85 - pristine_git_object: 612d166ae66d2a02dc5fb3e3d5048b0a37d74b7a + last_write_checksum: sha1:cbff904811baf3c6b05b14964d1813ff8801e347 + pristine_git_object: 71d613d138a08ca153f0c67f798d294dd024a50d src/main/java/com/gusto/embedded_api/models/operations/GetV1PeopleBatchesPeopleBatchUuidResponse.java: id: 96e6f19f9125 last_write_checksum: sha1:68e4fd7be7ed0a5f2859b10d79f9dd9ec11326d4 @@ -14398,14 +15558,18 @@ trackedFiles: id: 9bad5119e339 last_write_checksum: sha1:2ec99c349b855699fd62cf8fe00751ec7be71876 pristine_git_object: c494207e82ac503ae9135bc1238aa0407bfb9751 + src/main/java/com/gusto/embedded_api/models/operations/GetV1TokenInfoHeaderXGustoAPIVersion.java: + id: 2112c4a469c9 + last_write_checksum: sha1:1186f997ae600aacd502cce9588cf8c3720fee24 + pristine_git_object: 301c2b8c9d3b6e697e35b405e3aab4b50d4c6075 src/main/java/com/gusto/embedded_api/models/operations/GetV1TokenInfoRequest.java: id: 112eb6fd0497 - last_write_checksum: sha1:5f20527aba9c0ad633e44d8aa1e228ae05a612f8 - pristine_git_object: 70a8ca091528679ce93cb93be80cd4560c21422b + last_write_checksum: sha1:743a1b2b9487727558253dd4377924cff320a773 + pristine_git_object: 1e07042331b0e766ec38cfdb8abb5c3d0d88051e src/main/java/com/gusto/embedded_api/models/operations/GetV1TokenInfoRequestBuilder.java: id: 6e6f43493cb7 - last_write_checksum: sha1:570daad3a8575320d70de12e05449a33cdbfbb64 - pristine_git_object: a4fc4c1684e402bdb415ac6afe74b97b176bf19c + last_write_checksum: sha1:09822511a24298fcf9efe3cb736096a98f7884b4 + pristine_git_object: 62dca7d17917a1649a81260a0d238cd667b9abf9 src/main/java/com/gusto/embedded_api/models/operations/GetV1TokenInfoResponse.java: id: de87de4675d8 last_write_checksum: sha1:61844eb729f042d5cbced4e5ac179810d30c3f9a @@ -14416,12 +15580,12 @@ trackedFiles: pristine_git_object: bdcf59e046d1ee81a29156471c65be5d5ca52b99 src/main/java/com/gusto/embedded_api/models/operations/GetV1WebhookSubscriptionUuidRequest.java: id: b6d05f49ffc2 - last_write_checksum: sha1:7eddd4097d926ee54dd5efeaf62af0afefadb340 - pristine_git_object: 8518be38ab59138c6e0a0fc7bbd5de44ef637385 + last_write_checksum: sha1:f78fda123718b6c4739aced09a0044fc309697e9 + pristine_git_object: 3378ff18421df2ed44cd876e09f04c6283c52f92 src/main/java/com/gusto/embedded_api/models/operations/GetV1WebhookSubscriptionUuidRequestBuilder.java: id: d83eea576196 - last_write_checksum: sha1:65bd2a5e1533c3445f981f8971074aa9d1807b44 - pristine_git_object: 8003b4bbb1d14bf3fab85146ec19e06d573da78b + last_write_checksum: sha1:70360ab387fc673aba45fae0b000cd8130b10ddc + pristine_git_object: 934f0838e8229960f432255ec79be8e5b4f1bb5f src/main/java/com/gusto/embedded_api/models/operations/GetV1WebhookSubscriptionUuidResponse.java: id: f133c4f47784 last_write_checksum: sha1:d7105e583acdae7e024b69c3b5931628e6d15ac0 @@ -14436,12 +15600,12 @@ trackedFiles: pristine_git_object: 8f1b4805cb405b54bdaab06c5d16ec03205ed12e src/main/java/com/gusto/embedded_api/models/operations/GetV1WebhookSubscriptionVerificationTokenUuidRequest.java: id: 7cfed10f6ff2 - last_write_checksum: sha1:08ac95defbc217bcc03b2820fde8ef30730fba79 - pristine_git_object: 6a2ad44b07c25b1e4276f8e8fe02ff4c86d1724b + last_write_checksum: sha1:3e15b85b066282022c359c7273dcbcc9d43a2bd6 + pristine_git_object: fa1e217b475ce71bc81bb6ce1e2a27c0d80730f1 src/main/java/com/gusto/embedded_api/models/operations/GetV1WebhookSubscriptionVerificationTokenUuidRequestBuilder.java: id: 8890709e877c - last_write_checksum: sha1:edecade8ad67554f9565c7d0596cd36cdaacfbe0 - pristine_git_object: 3ac2e03122aca8669f34b88b2cfcb619d6cc9116 + last_write_checksum: sha1:ec2f087b65eafc27fd10f054bca0aed0fb698d07 + pristine_git_object: c20e301589072716db575e6624fe735c090b6455 src/main/java/com/gusto/embedded_api/models/operations/GetV1WebhookSubscriptionVerificationTokenUuidResponse.java: id: 98b3d226b2c2 last_write_checksum: sha1:476284f2babdec3eed2b56f93536d6b11140a53c @@ -14496,12 +15660,12 @@ trackedFiles: pristine_git_object: acaeebff8e119e421856862a0922194bbb3d5321 src/main/java/com/gusto/embedded_api/models/operations/GetV1WorkAddressesWorkAddressUuidRequest.java: id: 21ad11d88243 - last_write_checksum: sha1:2bda80f8f02458360a18e63ef26e51d8d3acc47c - pristine_git_object: dd5b5834e542988f11829d6893fcc6f17a7e633c + last_write_checksum: sha1:116aeaa1def747b9bda1d121014cd4fd03a5e966 + pristine_git_object: f92d7baf1346780d49f5eba06c025f42119e27db src/main/java/com/gusto/embedded_api/models/operations/GetV1WorkAddressesWorkAddressUuidRequestBuilder.java: id: 95aa6a03d194 - last_write_checksum: sha1:c493200e6118d8b174ae178913140f8f663cb296 - pristine_git_object: 0e95488af7a10002e1518200a8a674ac1344f4a7 + last_write_checksum: sha1:6265883a353fe2ac47c3094bfd1de2613c2050e5 + pristine_git_object: 8e49a64ee6b73ae3d993c4ba8afb12992d371a38 src/main/java/com/gusto/embedded_api/models/operations/GetV1WorkAddressesWorkAddressUuidResponse.java: id: 097bd4228802 last_write_checksum: sha1:a062e64f3ab52f18f08a4d58c7fa34e94e75ebd8 @@ -14528,12 +15692,12 @@ trackedFiles: pristine_git_object: d20c5a0f1f86ef03c7679899e609392441201d07 src/main/java/com/gusto/embedded_api/models/operations/GetWireInRequestsWireInRequestUuidRequest.java: id: 286d569c7ee3 - last_write_checksum: sha1:aeb6ce1e349b93a9629e8c4d0c92e9ce1170536b - pristine_git_object: 29b6f6cec3e509632062e3bc1bcb851e8205a694 + last_write_checksum: sha1:780a0b2d351959bf7808bb93ab160fbc30278ca4 + pristine_git_object: f98835222152affabbae130cd8ea25ffe206b1ce src/main/java/com/gusto/embedded_api/models/operations/GetWireInRequestsWireInRequestUuidRequestBuilder.java: id: 1dc747473131 - last_write_checksum: sha1:c800da3c1cdbf77e1eae35c1bb5ca95e67451882 - pristine_git_object: 9f256da9d82520ccf1d185c4b9cceaca4ae6a09f + last_write_checksum: sha1:4e5763424c7f38bb8cda66f7ef4f95c743126940 + pristine_git_object: 3e6536e8dcb52a7e6bf59fcf576a613c6385a48b src/main/java/com/gusto/embedded_api/models/operations/GetWireInRequestsWireInRequestUuidResponse.java: id: d39cb92a27a5 last_write_checksum: sha1:718060b5d523b5f0058bc804c88b390bc9347640 @@ -14552,8 +15716,8 @@ trackedFiles: pristine_git_object: df559c0d23c429849427b1496fac737a1a876e4f src/main/java/com/gusto/embedded_api/models/operations/Include.java: id: ce77dc64b506 - last_write_checksum: sha1:cccd30f6e1cac2c9d8fcc76c5feb1b444b5529af - pristine_git_object: 7bf7d9abe18645c4f33336ea81675d7a936882f6 + last_write_checksum: sha1:8880efa2b56b506e0cd45fa2159e9e19a0565c9f + pristine_git_object: e4368923ecdb9af9bf7549ef9ee2e95f62d29f05 src/main/java/com/gusto/embedded_api/models/operations/IndependenceDay.java: id: af34e2750dde last_write_checksum: sha1:69d222be2e9d1f29eaf270255545aeeda1e22f0d @@ -14572,8 +15736,8 @@ trackedFiles: pristine_git_object: 17d7af7d4b0dcb00ddac582b03c7ab14e0f68ad1 src/main/java/com/gusto/embedded_api/models/operations/LeavingFor.java: id: aec012ba6502 - last_write_checksum: sha1:1037d09a6fa4af4d00fd5fa3020a06d03212f7ac - pristine_git_object: e0010bb80bcafae284e18798b226fb5f048b022d + last_write_checksum: sha1:4e303a5c18a00e8ed72ccfb899590815f5ae6725 + pristine_git_object: 597650f02620b01e410f5826e296052e38099ab6 src/main/java/com/gusto/embedded_api/models/operations/MemorialDay.java: id: 9a0bec42d0d4 last_write_checksum: sha1:199352489eb8e55b141502ab023b62ae00032338 @@ -14586,18 +15750,22 @@ trackedFiles: id: 92a17496c0e9 last_write_checksum: sha1:1b5b35376a90e80cf8fe6869b6b20dffff0e414f pristine_git_object: b2c7cbc5bdc890425e4ee38fa4531c16c0d9b6a5 + src/main/java/com/gusto/embedded_api/models/operations/OauthAccessTokenHeaderXGustoAPIVersion.java: + id: bb4a92481615 + last_write_checksum: sha1:0aaa0f95f7549aa7aae8317ac9f4f087db70d0ac + pristine_git_object: 002cac1981a2a7745edfd30fb853593950c2da0c src/main/java/com/gusto/embedded_api/models/operations/OauthAccessTokenRequest.java: id: 53cfd68060b7 - last_write_checksum: sha1:835e994c1ff5fa5c1f5141d1efbc6e1cf88db4f2 - pristine_git_object: edb6fdcb3eee49e510ccf2a2a380ada488e9bd22 + last_write_checksum: sha1:c373f340e556376ffe4f285c0adc666691063b7b + pristine_git_object: 60940ce8a7e551591b01d9dfb9209f599e81adf4 src/main/java/com/gusto/embedded_api/models/operations/OauthAccessTokenRequestBody.java: id: 62769ca5477e last_write_checksum: sha1:7adc3c675ea09da63cf2c57036f42f9788efdd28 pristine_git_object: 9dc39f6b92d4b1f8966da60bdfad33f39d471b52 src/main/java/com/gusto/embedded_api/models/operations/OauthAccessTokenRequestBuilder.java: id: b88130428e77 - last_write_checksum: sha1:70b1b88ecf1160cb2ae027bdd8adecc9358ddccd - pristine_git_object: 72b017c406596082016c3a8b83381ce61239f44a + last_write_checksum: sha1:3d230650c1173d9f230ae0fcf4ef6722f0a2a7e3 + pristine_git_object: 11b34d768bf62c2ae59dacf9ba4de7ba75976ecb src/main/java/com/gusto/embedded_api/models/operations/OauthAccessTokenResponse.java: id: e50d74d04d66 last_write_checksum: sha1:49001e43d1faee228b124c8fbc36d29221c517e7 @@ -14636,16 +15804,16 @@ trackedFiles: pristine_git_object: 0f1c8371c0d6e732577a4debd34de97c0f75f7dc src/main/java/com/gusto/embedded_api/models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.java: id: 4046ed81d6d2 - last_write_checksum: sha1:b8bb0734d480f0d5db683c987c764b5ff215be20 - pristine_git_object: 26fb9d692b892895b3280ea1467242fb649d7c66 + last_write_checksum: sha1:c66b1355cc73f4170942f492ce1b53f422007100 + pristine_git_object: 0da17b75d9b6a82fcb65716f5db2fcc516dd6e83 src/main/java/com/gusto/embedded_api/models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBody.java: id: 8244a149a6aa last_write_checksum: sha1:f42511cb6c98fc84d66717dd181ac043decc9c73 pristine_git_object: 93e1bbbe52a47b2b79a9c961ee576442039be7d8 ? src/main/java/com/gusto/embedded_api/models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder.java : id: 7a289bf1bc1f - last_write_checksum: sha1:3358c3e0ea45667cc2952f622473dd5227286e37 - pristine_git_object: aa7bdda2f0fbe3257fc5d7e4f8f97c46b39be4bb + last_write_checksum: sha1:051c23a64cf4f4ae4c1ca505963eb02a60de665f + pristine_git_object: 0218df3da9137f15c1a955b4c665cc5bf792db29 src/main/java/com/gusto/embedded_api/models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsResponse.java: id: 80ecedcd9735 last_write_checksum: sha1:18b91598309c497965b35e24ecc5d2a6f4815eea @@ -14656,20 +15824,20 @@ trackedFiles: pristine_git_object: d88a17cf377d7bb1c44e013ba949513c00e0896c src/main/java/com/gusto/embedded_api/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsPaymentMethod.java: id: 5975470ff009 - last_write_checksum: sha1:9ebb3f72d43ba9b7bf712eec1d938e69b36a3bd4 - pristine_git_object: 9146b747f4a020aeb93a3a97121b2a67c132fc7a + last_write_checksum: sha1:c94390d7e19c13c54cbf9a4ea9428fdec56bff8d + pristine_git_object: f0b161531429abd75ce8d3f2e231ece9e08c7301 src/main/java/com/gusto/embedded_api/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.java: id: b44ea92218cd - last_write_checksum: sha1:2dad4475eb7a052dd1bfcbcb92dedc4417488b1e - pristine_git_object: 659c783896c455cad9070bec77f4b6e1c2204535 + last_write_checksum: sha1:0663ffb3c68ac6f02f6d701244fb00b0909fcbd3 + pristine_git_object: ce724b633c859d492cc905b375ae0a2181fd0347 src/main/java/com/gusto/embedded_api/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBody.java: id: 5fbb052d28ac last_write_checksum: sha1:9fdd2591287f19fe4566a21c4ad506a7e5e6da63 pristine_git_object: c7c4d44f2739acb7bb56e803438375c851ba8a38 src/main/java/com/gusto/embedded_api/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder.java: id: 74aef404f7d5 - last_write_checksum: sha1:9448cc5df5bfdacad998127e149add2d22d48bb4 - pristine_git_object: 6f59167e2b4787e0861c3018becd287065718c38 + last_write_checksum: sha1:95e4354e63ed763233a98f91f74d05709d73a168 + pristine_git_object: de14fb4152367c76f8de0f55e84be1a828971c88 src/main/java/com/gusto/embedded_api/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsResponse.java: id: 224b7a7c75dd last_write_checksum: sha1:69e688678deeccb3b705e9f356fd3da27f59bc00 @@ -14680,12 +15848,12 @@ trackedFiles: pristine_git_object: b8af3751a6e49cdf5a865e33c6f8c63345e30160 ? src/main/java/com/gusto/embedded_api/models/operations/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.java : id: 661fde144233 - last_write_checksum: sha1:a04f5012ed8ee7ef12936ec3f3cffcf363dfd020 - pristine_git_object: f6968a35a8ecea29a1c75755fb6dad9eb2b24bd0 + last_write_checksum: sha1:ac8d97f6c004c89a8ccce637693e5270aca7e8a1 + pristine_git_object: 0ef262f5df3b3a59b612eca14cde04eda11f5ee3 ? src/main/java/com/gusto/embedded_api/models/operations/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder.java : id: 5c5cc873e86b - last_write_checksum: sha1:a9ca1f60075130b1ac0221591444a47fe0472960 - pristine_git_object: b07f2c9f5d8594fb4f4b81ac130e0fbe3ace0845 + last_write_checksum: sha1:574f301a3099d8634056e27e9b4feecdead9c652 + pristine_git_object: f9f3084f91593423e714bc4cc6794779201e63dd ? src/main/java/com/gusto/embedded_api/models/operations/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearResponse.java : id: 8128ed58f15c last_write_checksum: sha1:8952f363dae9315a112b01162da87c69266fdabe @@ -14780,12 +15948,12 @@ trackedFiles: pristine_git_object: 2fcef7709adaf6e0dca6f69965fbecf18cdea6f0 src/main/java/com/gusto/embedded_api/models/operations/PostDepartmentsRequest.java: id: d88c93e8b728 - last_write_checksum: sha1:daf28f5221688cc5f02ce24c1e1e2ded48648d13 - pristine_git_object: 8fcf3599fc1e9d949a8da0c44487fe87b4d1306c + last_write_checksum: sha1:500273b8bbd1f41d763e44630d81b58ffe07d996 + pristine_git_object: 55ad224b2a4a947f9bb26eddb45abf49118c7f85 src/main/java/com/gusto/embedded_api/models/operations/PostDepartmentsRequestBuilder.java: id: 2b270e994a26 - last_write_checksum: sha1:7d7ecb82357b43ee15c935c5ac3e55d4b0467c54 - pristine_git_object: 9c9257024b701c5dcf650997e12d74dfa6da4e58 + last_write_checksum: sha1:c329d91f4246c4fdc5d2c6100d4496a9f58defc5 + pristine_git_object: bc6f4969b29a9b2501493c5ef0ca7f5f868088f7 src/main/java/com/gusto/embedded_api/models/operations/PostDepartmentsResponse.java: id: b17cc21a6bb0 last_write_checksum: sha1:29b25bd44fa57078179a0f6bd2cc28525731af7a @@ -14812,12 +15980,12 @@ trackedFiles: pristine_git_object: 31b1c8cda09f2546bd0e4bf8167c3b81f47d52f6 src/main/java/com/gusto/embedded_api/models/operations/PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest.java: id: b8321ca10e0a - last_write_checksum: sha1:882147ed8c68bbabcc48ee5936d386332a79d3a3 - pristine_git_object: 392d1fbeeaeb05788d6622d1e1d66e67690bd6d8 + last_write_checksum: sha1:d7c0dc0d4033b0800002b34f00a206c238e5308e + pristine_git_object: c9813bdfd3d00753cd4fa3ac215da16ec0b9b361 ? src/main/java/com/gusto/embedded_api/models/operations/PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBuilder.java : id: 610eb2566f26 - last_write_checksum: sha1:4b597ce65db3dd6640465c0fa4abec29e0bbddf0 - pristine_git_object: e5365f82dd3669fe682fd72d8831a58e92674649 + last_write_checksum: sha1:f6e738451d13b86ac2f3a2b267fced2aca4bb6e1 + pristine_git_object: 5595f741308e76b2777b02161a10b92b8be7e8e4 src/main/java/com/gusto/embedded_api/models/operations/PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceResponse.java: id: 9c14d51d3fb7 last_write_checksum: sha1:7bd16f260f91e3a076a647e503622716d4a53a33 @@ -14828,12 +15996,12 @@ trackedFiles: pristine_git_object: b6e7a7aee61da5e478d1334514a6b667f19828cc src/main/java/com/gusto/embedded_api/models/operations/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest.java: id: 886fa858f24d - last_write_checksum: sha1:15b726fdf823a2733f051e9eef1591443fe0d7d8 - pristine_git_object: e480f74b59111633ddb737894ead31962da23303 + last_write_checksum: sha1:5cbaabaf9ad6e36e5c87385e9683371f4dd4a987 + pristine_git_object: f47db37e2f99d7997d3bb8aeb694870e927c7ba2 ? src/main/java/com/gusto/embedded_api/models/operations/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder.java : id: c69f0c87e103 - last_write_checksum: sha1:2c4e4bb49906a79af972662bddf31c02be4e05b3 - pristine_git_object: 44c2a2a4df0ab450c0b42ee0727c2ac27fcc6cc1 + last_write_checksum: sha1:da825e8fbcaf709b0d280b7ec350177cb8d97c62 + pristine_git_object: 1838bd4d36d3ca4b7da6f015add25a4802113472 src/main/java/com/gusto/embedded_api/models/operations/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceResponse.java: id: 2b6a066facfa last_write_checksum: sha1:53ae71aba687cc9421ca9637da58d82cc037a010 @@ -14870,6 +16038,26 @@ trackedFiles: id: 80a10e8f050c last_write_checksum: sha1:8999c5847a286e76cafe6183b5811cd8228a35d4 pristine_git_object: e417fd460713ea625ccacafc11c4133952686581 + src/main/java/com/gusto/embedded_api/models/operations/PostV1BulkReportsHeaderXGustoAPIVersion.java: + id: dc35cd40ad28 + last_write_checksum: sha1:10b0cf1eb9086dce030357544b8886f64503d9bc + pristine_git_object: e0910f9577c134dc1af268b521fe0abecb227542 + src/main/java/com/gusto/embedded_api/models/operations/PostV1BulkReportsRequest.java: + id: b795c1abc5ed + last_write_checksum: sha1:b435f541165ac010bacbf84a31cacd06735eeaf6 + pristine_git_object: 138609abece49a0fa406bdf977116c5c9a9c903d + src/main/java/com/gusto/embedded_api/models/operations/PostV1BulkReportsRequestBuilder.java: + id: 8ed54dccf79b + last_write_checksum: sha1:5c031ef51c160d2971bf83655cbe04abfdfdef45 + pristine_git_object: f9a7a70562a35f2a64da79c8a3a6bfcab36f29e3 + src/main/java/com/gusto/embedded_api/models/operations/PostV1BulkReportsResponse.java: + id: a845e1efe6dd + last_write_checksum: sha1:1e8be7f1660caa7f4c8d2ae34dae0a7004032eca + pristine_git_object: e81ad4957f9ddbf7d8f3cd07c490cd884b4848dd + src/main/java/com/gusto/embedded_api/models/operations/PostV1BulkReportsSecurity.java: + id: 519d35ecd15a + last_write_checksum: sha1:c6aadd9faa531014b271187052517fc746ba5a9c + pristine_git_object: 8cbbcdaceb14fa1b27d0bf9cfffddd8bf6f62cfb src/main/java/com/gusto/embedded_api/models/operations/PostV1CompaniesAttachmentHeaderXGustoAPIVersion.java: id: 07ca878b779c last_write_checksum: sha1:add214589d415550a2efa962f05bfaa6eb9d2e59 @@ -14934,30 +16122,30 @@ trackedFiles: id: b71f947a93d3 last_write_checksum: sha1:555701e4f8d4282bba2a889edb943228f080a101 pristine_git_object: 34b98226adb75402ce3c4db7754bcbe8fd086530 + src/main/java/com/gusto/embedded_api/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsContractorPayments.java: + id: 77537d91333b + last_write_checksum: sha1:dbc1079dcaa6e374f4f9c910a0a7f94347ca76ce + pristine_git_object: 31e474746af5bc6256c19a9c934511ee41bd6f83 ? src/main/java/com/gusto/embedded_api/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsHeaderXGustoAPIVersion.java : id: 8898c81b8e44 last_write_checksum: sha1:1e32c24894dc42c3c3720b09ee87cf20941f5b0a pristine_git_object: e9b5249c2aec080d782951ac3fd57f87d8f57b6f - ? src/main/java/com/gusto/embedded_api/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments.java - : id: b457fe0adbb9 - last_write_checksum: sha1:6fed5dd1817106294921b2963816238882d0ab07 - pristine_git_object: 019f573edce8184305a270b974f28c7e64f0bf92 + src/main/java/com/gusto/embedded_api/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPaymentMethod.java: + id: 47dd198b7344 + last_write_checksum: sha1:e530ca6476243e3166d937f457b00286dcbadc35 + pristine_git_object: f51ae2090cd09992a89c8b0a72055501396405d6 ? src/main/java/com/gusto/embedded_api/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewHeaderXGustoAPIVersion.java : id: 4ecadc212132 last_write_checksum: sha1:aecb6a0610fa045dca2f7e196a1d69c2f044ab69 pristine_git_object: 048aa94791d8e24b6bce067262b72d37369a03b1 - src/main/java/com/gusto/embedded_api/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewPaymentMethod.java: - id: 2801a3dd0737 - last_write_checksum: sha1:354833cb677c56b212e4ff47edeaf3075a7ea02d - pristine_git_object: f9ca21b74f84c0bd5980cdeb81adf46ed2bccb76 src/main/java/com/gusto/embedded_api/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequest.java: id: 5a233ba8a3ac last_write_checksum: sha1:fb7abc59b2f59c4a4ef1812a8a65f6789e18af81 pristine_git_object: 0b9dfb88c1b45702004af1da04516f763ab147d6 src/main/java/com/gusto/embedded_api/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBody.java: id: 708ecd7c1f4e - last_write_checksum: sha1:3db1e593b39646bf32206d2b269638cf39674c09 - pristine_git_object: d731bbaa5b1dbf7c401aba7cc875efb76a2f5ad5 + last_write_checksum: sha1:902e0d30f96c6107cdf14bd1844ebc42d6569572 + pristine_git_object: a6ea6bf85a6cdd97e1fa22211d793f661cbf96ec src/main/java/com/gusto/embedded_api/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBuilder.java: id: 0d159e903d80 last_write_checksum: sha1:0efeea953754a5fefc1f78dd657355037bfc4180 @@ -14972,8 +16160,8 @@ trackedFiles: pristine_git_object: a9b2aa9f94193119099cf5e0c188b56059c68cba src/main/java/com/gusto/embedded_api/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBody.java: id: 2aa540df1886 - last_write_checksum: sha1:dab70f9718e254fbb741df197fdc08553587b6e9 - pristine_git_object: c9e7e8973c050ec09a70233bd8e414f974fd9403 + last_write_checksum: sha1:bcb76c71f00954ab0b7e9b73d3cd9227b94fde93 + pristine_git_object: 81f42baca0c31799b03496c7a0d154a768fa25ca src/main/java/com/gusto/embedded_api/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBuilder.java: id: 600a7b186775 last_write_checksum: sha1:0b04621655e6546f7bf2e235800abccf0fc76697 @@ -15102,6 +16290,18 @@ trackedFiles: id: 3c24cf855192 last_write_checksum: sha1:0dcc82778576e76d5389ca3ce50e31187ae59de4 pristine_git_object: 8b23e4283d7f9909f8b19afd82d40a512b0e293b + src/main/java/com/gusto/embedded_api/models/operations/PostV1CompaniesCompanyIdPeopleBatchesBatch.java: + id: 0440f5d9a360 + last_write_checksum: sha1:d499d8f9957631a3c4fb1a3c84900acee9cb274d + pristine_git_object: cea03c289133c2817c24b5b2f155a74edeb0ca44 + src/main/java/com/gusto/embedded_api/models/operations/PostV1CompaniesCompanyIdPeopleBatchesBatchAction.java: + id: 1a4d04effc20 + last_write_checksum: sha1:e03504924cc283f61431e8e1b050b983a20b5515 + pristine_git_object: 291a722d6bb397cbf31f55f90121ac140d2e8c14 + src/main/java/com/gusto/embedded_api/models/operations/PostV1CompaniesCompanyIdPeopleBatchesEntityType.java: + id: 5d10fcfd5312 + last_write_checksum: sha1:af7c1560c637a6f35a4c81bd6272894dbcfca550 + pristine_git_object: e22023a3c44e6b5cee5142175f468357c5eb73cc src/main/java/com/gusto/embedded_api/models/operations/PostV1CompaniesCompanyIdPeopleBatchesHeaderXGustoAPIVersion.java: id: 12764b51bf1a last_write_checksum: sha1:287f00d4ef502f49913b61a4709f46dd5060d627 @@ -15116,16 +16316,16 @@ trackedFiles: pristine_git_object: 7d0f150930ff825a336bfd33fa9c76db22e360f6 src/main/java/com/gusto/embedded_api/models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequest.java: id: 9297310feefe - last_write_checksum: sha1:11df21f42bc677cf1eb6b349705a5ef1f9a7bd74 - pristine_git_object: 36b0bdd75a789335bc8cd4b0142cd06226fe9030 + last_write_checksum: sha1:dfb64c5d56d2b06e9522b03bd2e6509254072d5d + pristine_git_object: 5861a968dd769dad4f29ee8602b9e96ccf3c679f src/main/java/com/gusto/embedded_api/models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequestBody.java: id: 8e3c07997f89 - last_write_checksum: sha1:61118439b03224057e86869a996567696e84bd31 - pristine_git_object: 7fc0adb984908e790f5b82b2d2b604a9f8cfdba5 + last_write_checksum: sha1:e45eae1f6b2ab217a147a5dc95e9bbe59ed2eab4 + pristine_git_object: c6e304af460270333375d9f8781d8cb954c2e84c src/main/java/com/gusto/embedded_api/models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder.java: id: 7cf4524d2104 - last_write_checksum: sha1:1bf0970acf6be124a357fda17bffd6d71e400f7c - pristine_git_object: 88cb5ba3eee0e1467377f308e7f0cc89b0f7d8f7 + last_write_checksum: sha1:0798b1c1880fa4af7709cd087491f18f8f710a51 + pristine_git_object: 02885d2e755490892178cf970cbe20db6bc62cb0 src/main/java/com/gusto/embedded_api/models/operations/PostV1CompaniesCompanyIdPeopleBatchesResponse.java: id: c941abbfcb08 last_write_checksum: sha1:c7f0209512228149aa943f201ae22c2608744070 @@ -15200,12 +16400,12 @@ trackedFiles: pristine_git_object: 4121a19a793a0603e4742735fa028bbf5cefda30 src/main/java/com/gusto/embedded_api/models/operations/PostV1CompaniesCompanyUuidSignatoriesInviteRequest.java: id: d731f0206378 - last_write_checksum: sha1:804063aba5582279c0b4a87c490f9e52fe2509f2 - pristine_git_object: b2d634d0113ab2bad935f6d50d159e4230736be6 + last_write_checksum: sha1:2b3420dc992b7cebe01a68f3216a427d828e8ee4 + pristine_git_object: 38c923eec39f1f059c9c98d7a52c7ce2451918dd src/main/java/com/gusto/embedded_api/models/operations/PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder.java: id: a46c87f2c6e6 - last_write_checksum: sha1:a7916b948004aca1155f910d715f34db16ae7500 - pristine_git_object: 18eab821b668301e1936fd48d5df77af9e8b8bf5 + last_write_checksum: sha1:c5eec43462113c34c591eb2543fe63b92d017790 + pristine_git_object: 52f74662752aa244e56f4c445a90ba282022d3c9 src/main/java/com/gusto/embedded_api/models/operations/PostV1CompaniesCompanyUuidSignatoriesInviteResponse.java: id: 53e0660c2b01 last_write_checksum: sha1:977dfe2e42fc5b3ba9c189154980ae705b6d338f @@ -15308,12 +16508,12 @@ trackedFiles: pristine_git_object: be1530f69599b200352e87f89b271a6fe89b7f7c src/main/java/com/gusto/embedded_api/models/operations/PostV1CompanySignatoriesRequest.java: id: 4d8f801e31fe - last_write_checksum: sha1:f246f3f8db96a80248916d6202e6a6cb7fdd02af - pristine_git_object: 2270cdcdd7bdee18e6b224bfed10df0c1214bfdd + last_write_checksum: sha1:5379bfbf70298b55e02aa42bbc8b5bbe39e32951 + pristine_git_object: 1d1485c1c62e64f7838753c33c1a197d6e0b745b src/main/java/com/gusto/embedded_api/models/operations/PostV1CompanySignatoriesRequestBuilder.java: id: bafd14df761e - last_write_checksum: sha1:64a5b3f654d63c62f642e9c0fa224e7e54b62d5b - pristine_git_object: c2963c9a2e3140657e53635ab471f394019250ff + last_write_checksum: sha1:8688e32e2358266e61682592a1694a56782012ab + pristine_git_object: 0f54c46ed1ae2d8405cec3e623dc2e1a33ae06f4 src/main/java/com/gusto/embedded_api/models/operations/PostV1CompanySignatoriesResponse.java: id: 6429f1bb1adf last_write_checksum: sha1:939880e440f127d632852388a0dffb083fa1db3d @@ -15350,22 +16550,38 @@ trackedFiles: id: 93359ecddd79 last_write_checksum: sha1:2204a080e9fc0af74135abef2d5e9bc092693dcc pristine_git_object: 8edbaf25bdea97db20571e39195cf5a233faa894 + ? src/main/java/com/gusto/embedded_api/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.java + : id: 671ebf76223a + last_write_checksum: sha1:dd58b756b66977eccb634fb4fd8067037df8cd97 + pristine_git_object: 55354e5a417d9a4f58a488001c9d9ea4eeacca1f + src/main/java/com/gusto/embedded_api/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsRequest.java: + id: dc09dbb36c81 + last_write_checksum: sha1:f5850f8e1aa5b2897a75446de48579ce65d83442 + pristine_git_object: d2b35690f6a39e52518d198e20ce9df359fad9a9 + src/main/java/com/gusto/embedded_api/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder.java: + id: 21d26980b9ed + last_write_checksum: sha1:19d854e1a8134680b575a970c27b195120baf0bb + pristine_git_object: c29ad53d1175a477bcf370d83d4b50006ff91028 + src/main/java/com/gusto/embedded_api/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsResponse.java: + id: "768376055943" + last_write_checksum: sha1:fc91e5d0db2862b3b0b88ced9c95644c8de7f7c3 + pristine_git_object: aa00bfe0d70bcc2c3d3622ea324d2f8683860269 src/main/java/com/gusto/embedded_api/models/operations/PostV1ContractorsContractorUuidRehireHeaderXGustoAPIVersion.java: id: 8d8d34696887 last_write_checksum: sha1:de7fa687c1a1fd1546113ceaaa860dcdd28cd6b5 pristine_git_object: cde52e35a77e72065cc9a79bca64a35c81d062f6 src/main/java/com/gusto/embedded_api/models/operations/PostV1ContractorsContractorUuidRehireRequest.java: id: 7ebd6b35087a - last_write_checksum: sha1:21617394a7972f393a2f49ed0ca2bfa330ed4bac - pristine_git_object: 52dfd9bf6e2c6f4d1e56499944217ab333db844e + last_write_checksum: sha1:733e657906276efeab40377d3a3b240906ec31d4 + pristine_git_object: b50580fb6ae967450408aa7e67a6aeb30b37c1b3 src/main/java/com/gusto/embedded_api/models/operations/PostV1ContractorsContractorUuidRehireRequestBody.java: id: b2660c377689 last_write_checksum: sha1:d505c9aac0a7a7b906a3f361c0a3680db61ff3f3 pristine_git_object: 28ecb23aae62ea39706e5544d00dab6869f0cb35 src/main/java/com/gusto/embedded_api/models/operations/PostV1ContractorsContractorUuidRehireRequestBuilder.java: id: 2d9f52be3c7e - last_write_checksum: sha1:f95944ef5fccc7159a7e82b51c489ec55e58c2fb - pristine_git_object: d0ca7a7d6a21caf07eaabbde945c7f50d87f968d + last_write_checksum: sha1:a9cc1bbcbf1cb4b00a451f0f5901fa0a301cd810 + pristine_git_object: e78bc479add5eb1866ac0df01054f2486d476242 src/main/java/com/gusto/embedded_api/models/operations/PostV1ContractorsContractorUuidRehireResponse.java: id: 62296e5b998c last_write_checksum: sha1:575fffb7fa5d9ecbb651275d3ad35a7e008b576f @@ -15376,16 +16592,16 @@ trackedFiles: pristine_git_object: 0a0b9396ff8e480361915f9caeb1482d3282e3fd src/main/java/com/gusto/embedded_api/models/operations/PostV1ContractorsContractorUuidTerminationRequest.java: id: 0a5c0f84c152 - last_write_checksum: sha1:16ec458bf82852209be997efee24a1367541ac94 - pristine_git_object: f6c9a357bef261e8e22442ad743dd022cea318a9 + last_write_checksum: sha1:bb580aa864bbd56db2cdcc7431c2f5f6afbeed1d + pristine_git_object: 546b3ffe6344cfd6ebfb0cc0d6c9d45ae7bf49af src/main/java/com/gusto/embedded_api/models/operations/PostV1ContractorsContractorUuidTerminationRequestBody.java: id: c334a11ec129 last_write_checksum: sha1:49e7f3df53a0a61ccd96e087bdac73e362fecec9 pristine_git_object: aa4a64ada82ccd505ac01cfb0a8f70833e42c493 src/main/java/com/gusto/embedded_api/models/operations/PostV1ContractorsContractorUuidTerminationRequestBuilder.java: id: dbbb86f125fc - last_write_checksum: sha1:da46e648b966d2b77de2fab8d5329cecf3dd1784 - pristine_git_object: fa8a76ade7cf9a8c8bee94d917e9d5512981b598 + last_write_checksum: sha1:db7b1db36089baad1316c453c84956a4e476e414 + pristine_git_object: 31872b6f9282d10dbce915ec8688ac8fc83acb83 src/main/java/com/gusto/embedded_api/models/operations/PostV1ContractorsContractorUuidTerminationResponse.java: id: 1713192dc2f9 last_write_checksum: sha1:ebc58c3b92f96cbb4170aeb30af3876f0aff4a3e @@ -15444,16 +16660,16 @@ trackedFiles: pristine_git_object: 1ef1af79a7c0375d115a9af793d7472a5dbd8b53 src/main/java/com/gusto/embedded_api/models/operations/PostV1EmployeesEmployeeIdHomeAddressesRequest.java: id: f3ef1469f9e8 - last_write_checksum: sha1:14975e9b22b2f094fa8932bef715cc4dd4bae725 - pristine_git_object: 31b0eb65946ee49ff4942b16d60315fca555b5a9 + last_write_checksum: sha1:3bdd985ecfa13ed0bacea503e6270950e25993c8 + pristine_git_object: ac629a9f9a17d1fb170da8a0a835532db2111f2f src/main/java/com/gusto/embedded_api/models/operations/PostV1EmployeesEmployeeIdHomeAddressesRequestBody.java: id: 67873fcd0884 last_write_checksum: sha1:bf04f38810427c995bec5e0f49d62323664ea9ed pristine_git_object: dbdb7cc26d7bd74704c27a801325c17411eafca7 src/main/java/com/gusto/embedded_api/models/operations/PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder.java: id: adf8e7aaeb46 - last_write_checksum: sha1:f014ab1bab0856a9c605d46985c134d031f3958c - pristine_git_object: 09f81821f24ac80877c829726cc104ebbd35a723 + last_write_checksum: sha1:d419e4d0c38e9ff30aa58e4a77813ccb7f261714 + pristine_git_object: fd038b99b6743e21241de0ab2c0b52168e583328 src/main/java/com/gusto/embedded_api/models/operations/PostV1EmployeesEmployeeIdHomeAddressesResponse.java: id: fa27030aebfb last_write_checksum: sha1:554a34c27b9d870f8fdc215e6075246b4523d475 @@ -15464,16 +16680,32 @@ trackedFiles: pristine_git_object: 2a2fa0313d70230aaf0fd0e29bd15c755aa3c698 src/main/java/com/gusto/embedded_api/models/operations/PostV1EmployeesEmployeeIdJobsRequest.java: id: bed70f498446 - last_write_checksum: sha1:ce92eee1449a1d5816b56fff34e83219559b43f9 - pristine_git_object: 26c81336da113eeb11ca23e95f48a7b61a830250 + last_write_checksum: sha1:73bcdfbc9dbe2e2064a05fd27746b1d408e2b999 + pristine_git_object: d0db23a4abf2b38f8ebc2c20dbbe7dfee9fac8f3 src/main/java/com/gusto/embedded_api/models/operations/PostV1EmployeesEmployeeIdJobsRequestBuilder.java: id: 805cce6832e6 - last_write_checksum: sha1:c5382273182e6901d223cf09b9c4144e069a247c - pristine_git_object: 09c844c35fad44c9d783568fb9fd921bb6c56b41 + last_write_checksum: sha1:611a84ecf45bde230f46089e42e3d83b1c213d6e + pristine_git_object: 7f78000e47b3c42279c51dde804da268a4549032 src/main/java/com/gusto/embedded_api/models/operations/PostV1EmployeesEmployeeIdJobsResponse.java: id: 8abf1472f3f0 - last_write_checksum: sha1:d2b2cb28f1cd3ce480e48bc3d521cc973c34954e - pristine_git_object: b9b0672e347dbe6957021c6f21fc3c328e4bb7fa + last_write_checksum: sha1:f54277ffb8b4b7779afada62865ac3b48b282849 + pristine_git_object: 81aaa936507de46223d126c072c95268c1d4430c + ? src/main/java/com/gusto/embedded_api/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.java + : id: faba237c3e6a + last_write_checksum: sha1:98d19130d47f9e4a033e8c09c8005703d523ed0c + pristine_git_object: 6674d8d00ad7b7b3ada8fa4721b40c0cc8558139 + src/main/java/com/gusto/embedded_api/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest.java: + id: 2ff89998cc86 + last_write_checksum: sha1:b29553d470e6af241fbaaf8720d6055143291da5 + pristine_git_object: 2c3be2e8194672a82fc6c2d86da59072807ab8c4 + src/main/java/com/gusto/embedded_api/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java: + id: bed97c7a22f9 + last_write_checksum: sha1:7b668971776d262032f2fe90829a784849f52ea5 + pristine_git_object: cecdf3f8235fbf37154e4942888d51947f5379bf + src/main/java/com/gusto/embedded_api/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java: + id: 33e2f2dc472d + last_write_checksum: sha1:f2235ac36728d81e6ebfb738d89f67a2b0ff6e31 + pristine_git_object: 42bdf03307fcd49338b0c9a260079006da20b34d ? src/main/java/com/gusto/embedded_api/models/operations/PostV1EmployeesEmployeeIdRecurringReimbursementsHeaderXGustoAPIVersion.java : id: 2331fa8d20be last_write_checksum: sha1:54dd30aeeac34efde2997323bf723824f7a6724d @@ -15556,16 +16788,16 @@ trackedFiles: pristine_git_object: 75232b53590d32db1ddcc136d4b8a05979b82b63 src/main/java/com/gusto/embedded_api/models/operations/PostV1EmployeesEmployeeIdWorkAddressesRequest.java: id: f8b0c88fec70 - last_write_checksum: sha1:4733be5dfc790d1c4eeb811e75d6b6f59e72ee8d - pristine_git_object: 2be423506524b8572d8e90764a2c18d99aca2663 + last_write_checksum: sha1:e5c27a6081af5bc990ac61d2ab2bc8a6bf4cdfba + pristine_git_object: 5089786294c8f05fea93df5a95d32d79884efe12 src/main/java/com/gusto/embedded_api/models/operations/PostV1EmployeesEmployeeIdWorkAddressesRequestBody.java: id: 60f11d08d794 last_write_checksum: sha1:610e625ae54dd46e6470f8383185ba6014c78a14 pristine_git_object: 82d80e04b7c551ed012a0358fac498d936ae2956 src/main/java/com/gusto/embedded_api/models/operations/PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder.java: id: 49c71700bfb2 - last_write_checksum: sha1:26b62aa1734c6bf0537703ebd7b0891b8c0c4504 - pristine_git_object: cc96e2b6fd6d93ce71509073f63c157d3a2b9d35 + last_write_checksum: sha1:f17f47273e501fcf83bba2bbc441dee8787422e0 + pristine_git_object: 3f5f7df262c5f78abbadb7e9e3f076e53319b190 src/main/java/com/gusto/embedded_api/models/operations/PostV1EmployeesEmployeeIdWorkAddressesResponse.java: id: 633b65a0d08c last_write_checksum: sha1:0a8a4cce56c0e39dd7035c959ea85e8d9987e73d @@ -15576,12 +16808,12 @@ trackedFiles: pristine_git_object: 2147de2cd3784b7d85d7c1d308e11037a355c8ad src/main/java/com/gusto/embedded_api/models/operations/PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.java: id: d2f8123824d9 - last_write_checksum: sha1:e05570257a258d1cb7d92dafefe5d96ea52317a3 - pristine_git_object: ae0a26ccd125f5fca141fabdfa9f20d319d7cdb1 + last_write_checksum: sha1:0ed18d32ae98b1d1bd262e885483cf00dadce236 + pristine_git_object: 9287671bbcc2cd18564fce307670b5e5caf37c0d ? src/main/java/com/gusto/embedded_api/models/operations/PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder.java : id: 3d9e4e134fe1 - last_write_checksum: sha1:47766a22e41aea6d410b3d54f13a18935e15d5fb - pristine_git_object: c2fa4d2a6413ddb6d6f00ee5e6d4ec5690dbf3ca + last_write_checksum: sha1:db077e03c2c28fa887601a997d54b641df6f23f8 + pristine_git_object: c2c4d08b0e9d1276ad95b214b4481661e4a91ff9 src/main/java/com/gusto/embedded_api/models/operations/PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesResponse.java: id: 972e6d2e0bf7 last_write_checksum: sha1:a484a27f38104bea6eee6d9f1b1615bafd36a944 @@ -15658,6 +16890,30 @@ trackedFiles: id: 8d7a4355acf1 last_write_checksum: sha1:4d3e72d3a7f245363d33dd743762b653113210cd pristine_git_object: 58b8da58fdf592942fb62338c7fb2a21936c141f + src/main/java/com/gusto/embedded_api/models/operations/PostV1PayrollBatchesHeaderXGustoAPIVersion.java: + id: 10a88cc611fd + last_write_checksum: sha1:522c4f55e5a9f66d1fd1b1b69419db47ef0595a2 + pristine_git_object: f362104c44bd600a1bab0d06b4a0d15c0bd002e8 + src/main/java/com/gusto/embedded_api/models/operations/PostV1PayrollBatchesRequest.java: + id: 34a227d779d3 + last_write_checksum: sha1:7031786b5bf2285f802b7b355fbabca46dd5284f + pristine_git_object: 8fdf9a5da212474f7c0edc463949d565103b410c + src/main/java/com/gusto/embedded_api/models/operations/PostV1PayrollBatchesRequestBody.java: + id: 696b56012047 + last_write_checksum: sha1:08c92cf39cc5c53e6702fd3c1c0ec346572d82bd + pristine_git_object: 555de7e4b4093d9dfced9642368df70564a5ac74 + src/main/java/com/gusto/embedded_api/models/operations/PostV1PayrollBatchesRequestBuilder.java: + id: bfb017572ace + last_write_checksum: sha1:0bbe0fc985ee70c653a2039e4e304fda73d1cf42 + pristine_git_object: d53b6c1880e73a08a6b72b889dd86b8c0e21ff5a + src/main/java/com/gusto/embedded_api/models/operations/PostV1PayrollBatchesResponse.java: + id: 422d528af4c4 + last_write_checksum: sha1:4054605dfdaa77dbab2842bc438ad8ffab0e8c4e + pristine_git_object: 6065172f396d5f17269566432615dac87b3b3453 + src/main/java/com/gusto/embedded_api/models/operations/PostV1PayrollBatchesSecurity.java: + id: 977f509a1efe + last_write_checksum: sha1:c0026b98f5ad2e4faac5597545d68171db8c3bd0 + pristine_git_object: b6be50a674f49d3a2839c4339f352a6b8511c470 src/main/java/com/gusto/embedded_api/models/operations/PostV1PayrollDigestsBatch.java: id: 40e8378631ef last_write_checksum: sha1:265cf952be3a1dda623d9b6a5a8674a50ab7b2b6 @@ -15844,12 +17100,12 @@ trackedFiles: pristine_git_object: a942b624ca32580a513c99db298006fd9500e4b8 src/main/java/com/gusto/embedded_api/models/operations/PutAddPeopleToDepartmentRequest.java: id: 08b397915bcb - last_write_checksum: sha1:7b2b4e7132b79c0daa3ecabc40589ba6e1b94e69 - pristine_git_object: 1510e586f3734a9041868d1a72e56f9d6a880e5c + last_write_checksum: sha1:3c1a3ceb5d325703c362f22495f615d6fa386f81 + pristine_git_object: 39046d13f334c32d289f7d7c1a8b04dacaa069a8 src/main/java/com/gusto/embedded_api/models/operations/PutAddPeopleToDepartmentRequestBuilder.java: id: b2aeb1dd3c2b - last_write_checksum: sha1:2ca6b1c4aa129795862b73154f3cc81502b1a250 - pristine_git_object: 40aaed5483a484b4f1bbf31b59f96d8f4ded040d + last_write_checksum: sha1:286adc53bfc7f9bc49dcd0f2e8434b19bd01feec + pristine_git_object: d1e248aef9366bc50e4a877d97acf9f6a6036dbe src/main/java/com/gusto/embedded_api/models/operations/PutAddPeopleToDepartmentResponse.java: id: d5f5eecc52b7 last_write_checksum: sha1:b659da5152a13da72ac0d841613b2b51f6d73e98 @@ -15872,12 +17128,12 @@ trackedFiles: pristine_git_object: e5243064a895c2865b9176294d651e4666a57d18 src/main/java/com/gusto/embedded_api/models/operations/PutDepartmentsRequest.java: id: 769f0aaa9380 - last_write_checksum: sha1:9107f12ec80bf98c253cc1c0a55eb58f23495641 - pristine_git_object: 82c4c97689ae03ff57d38615bfea08b4abbd07da + last_write_checksum: sha1:25be41ec58ec77544703cd014db0569f28582c3a + pristine_git_object: b7af18dee70e11b1eefea99a9e5aa31ba484325c src/main/java/com/gusto/embedded_api/models/operations/PutDepartmentsRequestBuilder.java: id: ecfb6d92121d - last_write_checksum: sha1:8c34bcea56fcdf4f081805eba70e661505eb934a - pristine_git_object: 402acb21e0363166c842cb53ea5f293a58794c0a + last_write_checksum: sha1:8c0a92edd1563c2b09adb415375c4b0649f9178a + pristine_git_object: 1d7563fd25bf6bb83b5ced2e8436bf75f752632b src/main/java/com/gusto/embedded_api/models/operations/PutDepartmentsResponse.java: id: 8e9dc56f8669 last_write_checksum: sha1:16d6575fb0015d3b6a0c5698445a57f1f85d310b @@ -15888,12 +17144,12 @@ trackedFiles: pristine_git_object: 67aad787121904d87935b4042a223331c91e21ec src/main/java/com/gusto/embedded_api/models/operations/PutRemovePeopleFromDepartmentRequest.java: id: "564866640807" - last_write_checksum: sha1:c3e04c299ff9dc6fdd74d8c40b03e03745c6b1c9 - pristine_git_object: 6fb54d539985cd6cd6bb0e74234814647e52c9b7 + last_write_checksum: sha1:7f2abede01ce4b11fb886685ad2646ba9ca0ba0b + pristine_git_object: 168d41488c26255a41b7d796a8ea032363a985bb src/main/java/com/gusto/embedded_api/models/operations/PutRemovePeopleFromDepartmentRequestBuilder.java: id: 773c86db4229 - last_write_checksum: sha1:ab6c92f520deee0415defeaf0d1f20b3216b60db - pristine_git_object: 6e465e211a398b1235f708ace1c1838a11a153d5 + last_write_checksum: sha1:5117e16fd0309316ed00d0f6aa3bdfec7093473d + pristine_git_object: af98a5fbe982fb25128c035f37471dfd431df4b9 src/main/java/com/gusto/embedded_api/models/operations/PutRemovePeopleFromDepartmentResponse.java: id: 7c0081754285 last_write_checksum: sha1:a23a9d7edba5610242c29f343a183bb1f975f18f @@ -15940,12 +17196,12 @@ trackedFiles: pristine_git_object: 1142eab68ab049fb02dfa56c4aa05f55564d9231 src/main/java/com/gusto/embedded_api/models/operations/PutV1CompaniesCompanyIdFederalTaxDetailsRequest.java: id: 411f7e6054a2 - last_write_checksum: sha1:8219baef186951976ca0b1289a78d8640149fcb6 - pristine_git_object: e059fee8ac856356d53ff63e7f30432aecc04a10 + last_write_checksum: sha1:b2827d5ddfe58d868989d3c9de78fe0293de7780 + pristine_git_object: e3fc31256a897f3f04d3ec152e3a76ce6d6ca26f src/main/java/com/gusto/embedded_api/models/operations/PutV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder.java: id: d5a0c034e265 - last_write_checksum: sha1:986bec36a970dec421de1333c3501ffbc77d818a - pristine_git_object: 971454afba25a75c4b69a0a6b9463f1ee56f9edf + last_write_checksum: sha1:8d117057f08624036b753c1c8009701fe3ba6a4a + pristine_git_object: ce3d0828fe616139f53159706567d8c1024cb9e0 src/main/java/com/gusto/embedded_api/models/operations/PutV1CompaniesCompanyIdFederalTaxDetailsResponse.java: id: b7c5876247f1 last_write_checksum: sha1:c553422d2cffd5a94de0a36bf3325e1a8e983cf5 @@ -15996,8 +17252,8 @@ trackedFiles: pristine_git_object: f9359f78be7bacc3186193b1dbdda4078143ac86 src/main/java/com/gusto/embedded_api/models/operations/PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBody.java: id: ca0a7d0ade88 - last_write_checksum: sha1:8ae3d4ec7a11a85764713dd5995dd77b19371851 - pristine_git_object: a70a6817a6f8532e71e15f2d11cc27de6bcc1b8b + last_write_checksum: sha1:f17aab1782e1ad0366a153751489aaedb0eb28af + pristine_git_object: 0b7ae084b0386d7146dc772484b86a699959a11b src/main/java/com/gusto/embedded_api/models/operations/PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBuilder.java: id: 5f511889fedd last_write_checksum: sha1:4550ace22faa5d6e3edf8e6ae3d5b8d873f72052 @@ -16038,10 +17294,6 @@ trackedFiles: id: 426a193179ec last_write_checksum: sha1:ed7234b57722dc761c6ccaf9b8a8d72993dc2a94 pristine_git_object: 8478a05d6f6f586ae01ebce5eecef727d67d5cd7 - src/main/java/com/gusto/embedded_api/models/operations/PutV1CompaniesCompanyUuidHolidayPayPolicyAddEmployees.java: - id: 1a40387fc03d - last_write_checksum: sha1:a1c2b8f225089f1f9bb5bcb9e2a5a162418f29f6 - pristine_git_object: d50eae90e74dabe83f735fe113392b5640ee2b1c src/main/java/com/gusto/embedded_api/models/operations/PutV1CompaniesCompanyUuidHolidayPayPolicyAddHeaderXGustoAPIVersion.java: id: d89a7007801e last_write_checksum: sha1:7e46e1161d2d010d5094f524d6ac8880d344db39 @@ -16052,8 +17304,8 @@ trackedFiles: pristine_git_object: 7bb5cf1cead8c0fdf64a91bbb698507eeed08ff5 src/main/java/com/gusto/embedded_api/models/operations/PutV1CompaniesCompanyUuidHolidayPayPolicyAddRequestBody.java: id: e3b30fd05385 - last_write_checksum: sha1:8014ce00ddb48409e2700faabd891bd9e30b078d - pristine_git_object: fa68ce89d914031095ac2f5810c08d6b655ce527 + last_write_checksum: sha1:55a6525562f479c87abac65e913d099047be9683 + pristine_git_object: 049c7f0f45d56d900a7c96caaaccfa5475e8bec0 src/main/java/com/gusto/embedded_api/models/operations/PutV1CompaniesCompanyUuidHolidayPayPolicyAddRequestBuilder.java: id: f9e346e6eb19 last_write_checksum: sha1:f984359f791a45f4395edc1e4c0a0b0eed9d270c @@ -16112,12 +17364,12 @@ trackedFiles: pristine_git_object: b5b8da129c8fa28db3e95c5d4bde8f52e2f2dce9 src/main/java/com/gusto/embedded_api/models/operations/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.java: id: 25e6733869a2 - last_write_checksum: sha1:a9dfa8141ee169a485d732c475d6740fe2dd5d44 - pristine_git_object: 9d8a55ed4da7535c12fd7ac0ae020d2d1d1f674f + last_write_checksum: sha1:b8d14c971871037995d9fd7ff3f35189698c29b5 + pristine_git_object: b06623006ea5bf822de4605976b3ce105ab4dd34 src/main/java/com/gusto/embedded_api/models/operations/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder.java: id: 6d1f2a24884d - last_write_checksum: sha1:fed1279c4d3b3ac990763c708b23badc3309627d - pristine_git_object: 8b20f042a14fbf777801ff7f76b8984a17e7439f + last_write_checksum: sha1:ee5993d82069c8cc01e7c5b1b3c74d5bfc77c689 + pristine_git_object: 12e206b4b397cbc225ef5b63dc29652c217a194f src/main/java/com/gusto/embedded_api/models/operations/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidResponse.java: id: c60a0ffcd589 last_write_checksum: sha1:84bb1a6a832aa15a74bdefbdc65e0e624449c9dc @@ -16128,16 +17380,16 @@ trackedFiles: pristine_git_object: 4d5ab35277469c28fa6b7fbb23ace6506b5477be src/main/java/com/gusto/embedded_api/models/operations/PutV1CompaniesCompanyUuidTaxRequirementsStateRequest.java: id: 068816b064ae - last_write_checksum: sha1:9d36f441d16075af0c3be6ce94c0039525a88fd5 - pristine_git_object: 8713692a872f3aed179b5d28ebb4b3cccd119768 + last_write_checksum: sha1:b60fd398802d3d5087e4b7a3bac745ba8ab63703 + pristine_git_object: 9df3ab21767ae4dddd0431a9de826a978e984279 src/main/java/com/gusto/embedded_api/models/operations/PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody.java: id: a252a5277cc3 last_write_checksum: sha1:c63851e8c57426c6af76e111034a450e70a1caca pristine_git_object: f9b2599e73082c1d64b161fa6943a10d54f9d5ed src/main/java/com/gusto/embedded_api/models/operations/PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder.java: id: 5902be654abe - last_write_checksum: sha1:4de511905686070666b0a1d7a20cdf856496d32d - pristine_git_object: 1e765011e9be2ec8cc7feea2977aba245811afb4 + last_write_checksum: sha1:bcbb9e6ec60ae740b4ad45be6197dcf5619f75f7 + pristine_git_object: 4d2ee32115c6ee6b87556f2aabf29062644c1b37 src/main/java/com/gusto/embedded_api/models/operations/PutV1CompaniesCompanyUuidTaxRequirementsStateResponse.java: id: aa02bf30a05b last_write_checksum: sha1:3c4502558d1653c217881fac04ce8c282a4061d5 @@ -16148,16 +17400,16 @@ trackedFiles: pristine_git_object: f239712ffb81f3fd2f7997b7427c71677c17aef5 src/main/java/com/gusto/embedded_api/models/operations/PutV1CompaniesRequest.java: id: 741f9a7b8ecb - last_write_checksum: sha1:682b1316dd11aed69c4ceb25145e342104d222be - pristine_git_object: 90bb281c2a7373bc40374480ee49c0df4df7c0e5 + last_write_checksum: sha1:a0c0016a3610529aa0a16f838609a4060b4ce725 + pristine_git_object: 91c58722cbde5fed3d3ad2081201a1a6224ea038 src/main/java/com/gusto/embedded_api/models/operations/PutV1CompaniesRequestBody.java: id: 1051d131fd4d last_write_checksum: sha1:2cf72816147f898e78ea021c8e9e0c9612d860c1 pristine_git_object: 090cc2cbc0b127bc3a08d26d458cd7ad036f74d2 src/main/java/com/gusto/embedded_api/models/operations/PutV1CompaniesRequestBuilder.java: id: af989c44e98e - last_write_checksum: sha1:8ea5f57382287f67411ac823625faca5eb5ab1d4 - pristine_git_object: 0f4b5ba3509cd93541be6840b43fd683e38183f3 + last_write_checksum: sha1:880989c901b3d840ce393cac3f8e7f1e5c9c070a + pristine_git_object: 5b3054ff4a8c4d5c0ad0c0bd04b575e8350c4071 src/main/java/com/gusto/embedded_api/models/operations/PutV1CompaniesResponse.java: id: ca1dda3749f7 last_write_checksum: sha1:b9ce3347588cdca5c82da597b0b492773ee0417c @@ -16236,12 +17488,12 @@ trackedFiles: pristine_git_object: b34e3221c3bcf606265a6edd93cd0ad90ab6613c src/main/java/com/gusto/embedded_api/models/operations/PutV1CompanyIndustryRequest.java: id: 4d5082949f68 - last_write_checksum: sha1:6dc825adf91e40acecb60f382b25a21f0eca8f6c - pristine_git_object: d35c0caac5197122e7d150aff61f321d2afbf4a7 + last_write_checksum: sha1:ff3a7123eebea2ad562dafcec2e310441d068d6e + pristine_git_object: 16ebab26113af3a92c104c1be99c30b83bdf73fd src/main/java/com/gusto/embedded_api/models/operations/PutV1CompanyIndustryRequestBuilder.java: id: 01b75314a693 - last_write_checksum: sha1:b893e247795936cf09de453582caf934b1ecc6d5 - pristine_git_object: e7a4ec2110592c17c15bec76e136978ea387ef60 + last_write_checksum: sha1:8c5f4193b9c4f5fa77f2037e9f9630d62e304d5e + pristine_git_object: ff5947bf1eae19e032f7405c91c502713de862ea src/main/java/com/gusto/embedded_api/models/operations/PutV1CompanyIndustryResponse.java: id: 594579b1a028 last_write_checksum: sha1:702c6941945d9733c244f034ffede7dc35838467 @@ -16304,12 +17556,12 @@ trackedFiles: pristine_git_object: 39c82d253d081a95c125d68524b15bfb1cf185f4 src/main/java/com/gusto/embedded_api/models/operations/PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest.java: id: 05aca2f5e627 - last_write_checksum: sha1:9c0f2a07b905bfea4137166a032d9192ef2eebce - pristine_git_object: 8e5acc3b7406435c30b89ec7a3cc29cd4c0d9002 + last_write_checksum: sha1:c7c7c7e5816d59453f372b8c7408a269787a726a + pristine_git_object: 8c6bc947deebe3210896d36c1a3b51ed86d01744 ? src/main/java/com/gusto/embedded_api/models/operations/PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequestBuilder.java : id: 02982fd2f401 - last_write_checksum: sha1:123f99192aff2a203014775ee5bed65a04d8f3de - pristine_git_object: 0550cb5ab894e4e9257f561b9876b44809c0733b + last_write_checksum: sha1:eef8a06afe6c63587a34c5b9d9190a17f604484a + pristine_git_object: 92868c0c5225eb79f42d137b87e3100c313f61db src/main/java/com/gusto/embedded_api/models/operations/PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundResponse.java: id: 1f921efa1e1b last_write_checksum: sha1:9a94c6a5d3674df2f8bdd97186b847fb2be08db8 @@ -16324,8 +17576,8 @@ trackedFiles: pristine_git_object: 8857c2a9ff767de1ec83822b62b5e9d87971b08a src/main/java/com/gusto/embedded_api/models/operations/PutV1ContractorsContractorIdPaymentMethodRequestBody.java: id: 14ee4dbf3060 - last_write_checksum: sha1:d9d4b8148f2a0e3a98c2297bf339ec373b4cf8e5 - pristine_git_object: 278d6bd223368077b84bd37b90d6e163fd96edfe + last_write_checksum: sha1:d480bcb1f76112cbbbdbca4573cf3a3004bad3b9 + pristine_git_object: 9d8932b9c82747ffa0f105782eb1d14a2e7f7f0b src/main/java/com/gusto/embedded_api/models/operations/PutV1ContractorsContractorIdPaymentMethodRequestBuilder.java: id: 29591affa89a last_write_checksum: sha1:aca2cf729cfd63c6e4937f4b2dc4f62e9b2dc23f @@ -16334,10 +17586,6 @@ trackedFiles: id: d2a5e037639f last_write_checksum: sha1:15773751187ce73cd6723cb35fdcfbea76e3c9ce pristine_git_object: aebca6145a4555376abd63483a074f24f492156c - src/main/java/com/gusto/embedded_api/models/operations/PutV1ContractorsContractorIdPaymentMethodType.java: - id: 03f97e500fae - last_write_checksum: sha1:c39a1708264bedfa5568d5424d34acbd5addf478 - pristine_git_object: 60454f13cccb4b879b327701191a221c0b21d9d0 src/main/java/com/gusto/embedded_api/models/operations/PutV1ContractorsContractorUuidAddressHeaderXGustoAPIVersion.java: id: ce782a98104b last_write_checksum: sha1:bde75b62c3b37bb0fe00afc8cd19721decad3d0e @@ -16552,8 +17800,8 @@ trackedFiles: pristine_git_object: 5466595483647cb96060ccc71aede8e508f2f5c6 src/main/java/com/gusto/embedded_api/models/operations/PutV1EmployeesEmployeeIdPaymentMethodRequestBody.java: id: 32125b1ea2c9 - last_write_checksum: sha1:89d64627cdd46233b7dadb70799fdbd57d138b24 - pristine_git_object: a00df76c01c5f059844f60afcde547ecb372b76e + last_write_checksum: sha1:db7248c3bd7f398ec8de1db91583b9054836d772 + pristine_git_object: 36bd61e0b6cdc9a9e9632bc18d7fc675acb0a98c src/main/java/com/gusto/embedded_api/models/operations/PutV1EmployeesEmployeeIdPaymentMethodRequestBuilder.java: id: 3fc8ddfca292 last_write_checksum: sha1:05f9201b39976f230dd6876950aca3c829f44043 @@ -16562,6 +17810,10 @@ trackedFiles: id: cfc5ca2a5227 last_write_checksum: sha1:f10da1cf0ccc512941d069cd2d40c125b026c61d pristine_git_object: cc8031b194d34fe485a7b036d6aa40dcf8f80675 + src/main/java/com/gusto/embedded_api/models/operations/PutV1EmployeesEmployeeIdPaymentMethodType.java: + id: 4875b155e2d4 + last_write_checksum: sha1:638adae861a8fc371c9dc30fe28008b502662909 + pristine_git_object: 1b9be134f0d46cfc589ac5aab0ea6bb9d50fc80b src/main/java/com/gusto/embedded_api/models/operations/PutV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion.java: id: 72f55a4048c6 last_write_checksum: sha1:680fb636cbf71ccb32bf3192a8e50cc372841273 @@ -16692,16 +17944,16 @@ trackedFiles: pristine_git_object: e0ba028e9b2e5d271a17578cf7005e78ca11319d src/main/java/com/gusto/embedded_api/models/operations/PutV1JobsJobIdRequest.java: id: ab584acb4759 - last_write_checksum: sha1:2075b6014144d17d9f94e21b061f3a0012ce2567 - pristine_git_object: 2a03deddf3e09197be69209da1f5aed7f7b17805 + last_write_checksum: sha1:a5548ed5955a84b9dc26764f4e402b9535841319 + pristine_git_object: 43135237cbce5d63db9df91f2d0ae3bc776924cf src/main/java/com/gusto/embedded_api/models/operations/PutV1JobsJobIdRequestBuilder.java: id: da5120970d24 - last_write_checksum: sha1:ffb36b8e67164afa66355d87c8459ddab93a968d - pristine_git_object: fe4f4d6b01bb51bb2975e26c0bca2a6a3a8aebed + last_write_checksum: sha1:59c8bc4f6228eca300d8056aca4f028c54c8eadc + pristine_git_object: 6246856a87edcf5c32980713d62a747d6fc78231 src/main/java/com/gusto/embedded_api/models/operations/PutV1JobsJobIdResponse.java: id: ee106771d97f - last_write_checksum: sha1:3e80e98e26265cbb8c7f101d9c49707262a04e41 - pristine_git_object: 5ad6c701f52fabf843a20bf920bf13f0f13a8827 + last_write_checksum: sha1:27f5967299d3b1de414dba673eaef7722aefc839 + pristine_git_object: 2ebb1f2ede856934f076fd89f9f76ec06289fb08 src/main/java/com/gusto/embedded_api/models/operations/PutV1LocationsLocationIdHeaderXGustoAPIVersion.java: id: 9aebf89104f7 last_write_checksum: sha1:03fb8ba2bd508c01c6a1143ab1f7a1c89af7f7e1 @@ -16722,18 +17974,38 @@ trackedFiles: id: 63ee1722ba5b last_write_checksum: sha1:81785b0319ccf6aa6fcc8050a89c07764af76479 pristine_git_object: cde9e37ddb9e04ccd73ce68c02d34085ec83353d + ? src/main/java/com/gusto/embedded_api/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion.java + : id: f66d6d2ec8df + last_write_checksum: sha1:c81b15720d0789d383d7c98cb79fefc53ea011c5 + pristine_git_object: 39963ea61359252ae93759ee89a76d051ef3c9fe + src/main/java/com/gusto/embedded_api/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest.java: + id: ea5d29bea786 + last_write_checksum: sha1:927f9741506157134322810cd7b463c2df8359d9 + pristine_git_object: bca0a6cfafd95183d608323b24e5ef6bb6471eec + src/main/java/com/gusto/embedded_api/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder.java: + id: 519cc16799ab + last_write_checksum: sha1:f6b264a3afd6d7ce07426769ff3c1ad6b5775057 + pristine_git_object: 635899651e5ed6ebb2d1914bf742a2a868eab96a + src/main/java/com/gusto/embedded_api/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse.java: + id: 26354eca786b + last_write_checksum: sha1:0701de20516d8c4013c28489cfdd400f2baf2968 + pristine_git_object: e92641e2bf88012176f5abcff7891e382ec0d114 + src/main/java/com/gusto/embedded_api/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity.java: + id: 0567e653d732 + last_write_checksum: sha1:763810b7d3d0f11141212f8629a3a8f038da3a44 + pristine_git_object: 82a71b0b8cffd846bc80eb155561047f53921436 src/main/java/com/gusto/embedded_api/models/operations/PutV1PartnerManagedCompaniesCompanyUuidMigrateHeaderXGustoAPIVersion.java: id: 1233757c28d0 last_write_checksum: sha1:a58715be14c846178374063332cff440924eee96 pristine_git_object: 2a87c037664ede857169ebd82c75b2f3ff9065a5 src/main/java/com/gusto/embedded_api/models/operations/PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest.java: id: 4cdb42f66094 - last_write_checksum: sha1:444f07abc1bbd9a58156d8e9198e63270828bce3 - pristine_git_object: 294204b12569b25aabf948e817721c004ced096b + last_write_checksum: sha1:3cf099a28d8ae22663663d914d60226644171bf5 + pristine_git_object: 4392c8c89cb664ff06b8a549e5da518d88207ad1 src/main/java/com/gusto/embedded_api/models/operations/PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder.java: id: 9ada3776153d - last_write_checksum: sha1:de2d901b99243103f94553889576ba56624b1f7d - pristine_git_object: 8c9a62eb336ce023dc52d92e5e8a5ff82e9c93d7 + last_write_checksum: sha1:cb445c84f13239eb51d0e8b9eb95bb1b9a8aef8f + pristine_git_object: 6d4258db5048c0b68a979fa5de5eef664225a440 src/main/java/com/gusto/embedded_api/models/operations/PutV1PartnerManagedCompaniesCompanyUuidMigrateResponse.java: id: 87c9ee7ca765 last_write_checksum: sha1:3c52d7ec95d04c301ef15c6103428031faad8b44 @@ -16838,6 +18110,10 @@ trackedFiles: id: a1d089086d1a last_write_checksum: sha1:138ea29912ce061bd86a6fb403fffac77769cfc6 pristine_git_object: 42e3a007d5a9e7e39c469459e518312686136c70 + src/main/java/com/gusto/embedded_api/models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesEmployees.java: + id: 435ae1e4e47d + last_write_checksum: sha1:b6721ac2807363185ef3b57c99731a27066ba918 + pristine_git_object: 8658440c9298488143e1b49843712f713091bbdd ? src/main/java/com/gusto/embedded_api/models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesHeaderXGustoAPIVersion.java : id: 1e655b2453d4 last_write_checksum: sha1:c86121289a6b73ee15f94d4e055198fe2324ed9c @@ -16848,8 +18124,8 @@ trackedFiles: pristine_git_object: c85744730f3f94662c019818fc9efadb805027d4 src/main/java/com/gusto/embedded_api/models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesRequestBody.java: id: aa73f2b3475a - last_write_checksum: sha1:31bcb2eaddaa4b50e98bc95a823a946e9da68a95 - pristine_git_object: e8771cddc0d345ae2733f4f83df8c735d846c929 + last_write_checksum: sha1:82a0df6843ee8f495f418df37d1c7695d70c81cb + pristine_git_object: e66899b4f5557ec5a03696d471b73570f3b7fcf4 src/main/java/com/gusto/embedded_api/models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesRequestBuilder.java: id: 6f4b6d6baa49 last_write_checksum: sha1:4920db5aac2fe445bd6cdb385c65f5ea7b6d9dd2 @@ -16988,16 +18264,16 @@ trackedFiles: pristine_git_object: ed729a067548e7917ef8ab370d0d284c7a4e3da1 src/main/java/com/gusto/embedded_api/models/operations/PutV1VerifyWebhookSubscriptionUuidRequest.java: id: a647ff476e86 - last_write_checksum: sha1:ba373b76fd7738af3e0cdc80ae8f1de4a0368c07 - pristine_git_object: bf075061c1969468598663a2567d08b86920fc5e + last_write_checksum: sha1:bbe2ed7609872f3b5e006ba70b850fa3bd30f1e9 + pristine_git_object: 2c9c2ba2ff73a8c9f8f6e2c717237bf717241610 src/main/java/com/gusto/embedded_api/models/operations/PutV1VerifyWebhookSubscriptionUuidRequestBody.java: id: 4fae8039d854 last_write_checksum: sha1:7d6cafcf40402edef4fddf17903e42cff09303a3 pristine_git_object: c44522f5fc084a7408171b307396bac672a0625c src/main/java/com/gusto/embedded_api/models/operations/PutV1VerifyWebhookSubscriptionUuidRequestBuilder.java: id: a5c98ca08022 - last_write_checksum: sha1:c12e9eadde05df6a6c595a91d4490815e9a2ba28 - pristine_git_object: 632e3c883ab40f48360826d852191ce7caf9633b + last_write_checksum: sha1:e04e8cb5113d7d4b307b773766ad083b7118a291 + pristine_git_object: 23567dc5bfe8045c078838dd0b35d5af31d1e720 src/main/java/com/gusto/embedded_api/models/operations/PutV1VerifyWebhookSubscriptionUuidResponse.java: id: 6f3bc62335dc last_write_checksum: sha1:68ce3f604bae36f224b844ecab1f0dd07ce22f82 @@ -17012,16 +18288,16 @@ trackedFiles: pristine_git_object: 19c5aa4eeee3db32be93de6b54411ef4f852e2d4 src/main/java/com/gusto/embedded_api/models/operations/PutV1WebhookSubscriptionUuidRequest.java: id: 3bd29154242b - last_write_checksum: sha1:48dd190fd89e2e66030c690dfaddbee01cf7f3f3 - pristine_git_object: d35c65f0756d771caa4242f3e78516fd51466387 + last_write_checksum: sha1:11b7ba0a091193f0b6c6a91bc6e4e38986c43a67 + pristine_git_object: 320f05f9852a9364f7c68aca6d7703f69baab083 src/main/java/com/gusto/embedded_api/models/operations/PutV1WebhookSubscriptionUuidRequestBody.java: id: a895df8a699c last_write_checksum: sha1:65e1538aa336c6da3b3855ccf48008f15f30abec pristine_git_object: bb968c6e14a2d6205dad9f8f178b095d97f21d80 src/main/java/com/gusto/embedded_api/models/operations/PutV1WebhookSubscriptionUuidRequestBuilder.java: id: 7fc5d0394db6 - last_write_checksum: sha1:a438e9254eeaaaae1f73c362fd1d9ab8c1c1294a - pristine_git_object: a3055cf045bacb54bb311cdb82151e939027185c + last_write_checksum: sha1:b3d9542502d19382a28ce850a52fc9977c8fb5bb + pristine_git_object: 422a61849bfe31ca44cf201b8a6780a7e53616ee src/main/java/com/gusto/embedded_api/models/operations/PutV1WebhookSubscriptionUuidResponse.java: id: 6325ad9c9330 last_write_checksum: sha1:2e046a7c63f47de62b1d5d269fbfef722022d590 @@ -17032,24 +18308,24 @@ trackedFiles: pristine_git_object: 8173d74239b5f3ba44a072b4a4b854e29e6e5ce8 src/main/java/com/gusto/embedded_api/models/operations/PutV1WebhookSubscriptionUuidSubscriptionTypes.java: id: 8d12a577d1f0 - last_write_checksum: sha1:8626fadd59e1766f4789944242af60d50ba03ff4 - pristine_git_object: 4f72cba16658ff9407b8321b80cd6c739aa05e5b + last_write_checksum: sha1:086463736150925781ce64a4f273e97b069f5120 + pristine_git_object: c5caca2580dabef011310626c36b77c961d21b82 src/main/java/com/gusto/embedded_api/models/operations/PutV1WorkAddressesWorkAddressUuidHeaderXGustoAPIVersion.java: id: 4c511f7acc9c last_write_checksum: sha1:4906eef75f52b18d8e21696fd157d0b76d7628ff pristine_git_object: b587323ae73d9499cf27456c8ec74c4482e8fefa src/main/java/com/gusto/embedded_api/models/operations/PutV1WorkAddressesWorkAddressUuidRequest.java: id: 8f685376ee4f - last_write_checksum: sha1:a69f75566f597b3cbe6d2a27d6c411a0f3974f40 - pristine_git_object: 6d4fdf1423696c2a3612ed27726ce6d5d086b0c4 + last_write_checksum: sha1:479700f47862b99de582cd6d4d22f1c113df2a56 + pristine_git_object: 1141f2c71cda54c8a0e77776b5e0a99db0a3bca5 src/main/java/com/gusto/embedded_api/models/operations/PutV1WorkAddressesWorkAddressUuidRequestBody.java: id: dbb250b4e6f8 last_write_checksum: sha1:9bec74b1685724827d645270318ea1040642a16f pristine_git_object: d24c1f4627c0d4a2af38e6dfe6a0b4ea712c197f src/main/java/com/gusto/embedded_api/models/operations/PutV1WorkAddressesWorkAddressUuidRequestBuilder.java: id: f413082cb948 - last_write_checksum: sha1:9786db86058739e349fcc6a692bf4ae66f069b42 - pristine_git_object: 68028c1d21dad56ef26b1a541e39d3a1f79e874d + last_write_checksum: sha1:67e5e3dc56ec7da549d8bd78a619c1adf57e5118 + pristine_git_object: 41af3f264d90caa3a69f450d546f73a1b369074b src/main/java/com/gusto/embedded_api/models/operations/PutV1WorkAddressesWorkAddressUuidResponse.java: id: a7b54ec55d9a last_write_checksum: sha1:e5813ae5bdf717add03bfd349d330dc52f866a9f @@ -17060,20 +18336,20 @@ trackedFiles: pristine_git_object: c9f266d6b563808de21363c2d92241d6857aa9dd src/main/java/com/gusto/embedded_api/models/operations/PutWireInRequestsWireInRequestUuidRequest.java: id: b5d7fd6a410b - last_write_checksum: sha1:9c1177683b8c959f213cc86f6558f23a745705bb - pristine_git_object: 7055d8adb4c017d452638dbcf6811c5dd04d9af9 + last_write_checksum: sha1:7bdca516b05391c65df525c9729b3eb5ccdaf51b + pristine_git_object: c2d58ddbb9c11aca08d1193880d7907291f98de9 src/main/java/com/gusto/embedded_api/models/operations/PutWireInRequestsWireInRequestUuidRequestBuilder.java: id: afc22113ac14 - last_write_checksum: sha1:f4b7bd224e50314a085d845155e608297520af73 - pristine_git_object: 684d064bcad647dc9b92414b20f1ea864a6bb7dd + last_write_checksum: sha1:3df684ae38ec74b252103e68974653d57c306ccd + pristine_git_object: a1ce48b656f27d53dbd54e0d4340c75594803c81 src/main/java/com/gusto/embedded_api/models/operations/PutWireInRequestsWireInRequestUuidResponse.java: id: 0a17907f8711 last_write_checksum: sha1:3a1252f231cda3340a8abf98369f84891367be8e pristine_git_object: cfc007843347a93e3c70cf16076c8ebfbc117e0f src/main/java/com/gusto/embedded_api/models/operations/QueryParamInclude.java: id: b70d1a3f87d3 - last_write_checksum: sha1:5909320ed8de8afc650e622c355d74bac5cd81a7 - pristine_git_object: f8408cec4f854346dac0abf48d55110e84827ffb + last_write_checksum: sha1:b9935e7bccba9d38460d02a7b951d1c3a036f64c + pristine_git_object: ed8fe6e1124ee0aa77e04ecd0470ae28f0d9adb5 src/main/java/com/gusto/embedded_api/models/operations/QueryParamPayrollTypes.java: id: bce16c55b2eb last_write_checksum: sha1:da926edd8867197bf13eddcba30869a2b1704bb7 @@ -17160,8 +18436,8 @@ trackedFiles: pristine_git_object: 5c986ce6f9998f89404a3e170cc8971e8e1bb687 src/main/java/com/gusto/embedded_api/models/operations/SubscriptionTypes.java: id: b52a19241cf3 - last_write_checksum: sha1:101a6106830ba4b8c2f1a53dcd6ff12569b9db61 - pristine_git_object: d699ab691a0a3d0b8667c754c1eff9ce8e954691 + last_write_checksum: sha1:17e9b0943c4b4baa828c8cbdcac91a882e0d5917 + pristine_git_object: 357a4147da699412fb5e19917f131b1584e97127 src/main/java/com/gusto/embedded_api/models/operations/SystemAccessTokenRequest.java: id: ad1c3b2ec635 last_write_checksum: sha1:7402d96840c256ff2fd3cd18e1febd33cded1147 @@ -17176,8 +18452,8 @@ trackedFiles: pristine_git_object: ad940e3efb2fa94604c9d601538ab2041ba8365f src/main/java/com/gusto/embedded_api/models/operations/Type.java: id: 126437c03e1e - last_write_checksum: sha1:afa982d3ca80a7f88bd6e5688988fcd79a235460 - pristine_git_object: fd43cfb69237f294d33dacf9c21349ae7e4e4f24 + last_write_checksum: sha1:f61126d6bc0b895ecb6de4c0cad428cb5c64862d + pristine_git_object: cb5805d929b7b20b1d680d853e140bb150cc24ef src/main/java/com/gusto/embedded_api/models/operations/VeteransDay.java: id: 3409c87a67f1 last_write_checksum: sha1:850eefd436514c4538f4496dd1e9f1ade4adefa6 @@ -17238,6 +18514,10 @@ trackedFiles: : id: be9043ce4bbb last_write_checksum: sha1:03f8531da98f640a9a7f6bc8ae80cf48b5e8e761 pristine_git_object: fe8e82333d2bae54d03b47a085096f0ee1629e4f + ? src/main/java/com/gusto/embedded_api/models/operations/async/DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse.java + : id: b56291f33443 + last_write_checksum: sha1:667768f68dd44e07e588bedb21af9b2947a88f9d + pristine_git_object: 222c02c69aaddd9c4b558118dd74a1aab1e0ecc2 src/main/java/com/gusto/embedded_api/models/operations/async/DeleteV1ContractorsContractorUuidRehireResponse.java: id: cdba57ec3b27 last_write_checksum: sha1:ac5d61402aa4e4dfa5bad164d77f3ca7efaee57f @@ -17266,6 +18546,10 @@ trackedFiles: : id: 19105b9e470c last_write_checksum: sha1:a3923aeb2f674477783fe240d602b7aa79156c08 pristine_git_object: facc546ef36c32ac6b52607c6c91dc15c063a2d1 + src/main/java/com/gusto/embedded_api/models/operations/async/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java: + id: f5d1bc0ec26b + last_write_checksum: sha1:0a76828fcefcd26f21664018d3371bd69da3e492 + pristine_git_object: 4687a588d80b8939e5131e62b860ea38b630d6cd src/main/java/com/gusto/embedded_api/models/operations/async/DeleteV1EmployeesEmployeeIdRehireResponse.java: id: 32c374aab458 last_write_checksum: sha1:99633b004e1ae110cb93b813af65c3ef5fb24790 @@ -17366,6 +18650,18 @@ trackedFiles: id: 2690203f64d6 last_write_checksum: sha1:8d52f7edd3bef8dd60e0a090eab6f77701417540 pristine_git_object: b4cc4bc8a4078c4d148c5e868239e578558d7dae + src/main/java/com/gusto/embedded_api/models/operations/async/GetReverseWireTransactionsResponse.java: + id: f00dd871da82 + last_write_checksum: sha1:42f78becb4e0b9b548f35eeb0af0d858a9e27cef + pristine_git_object: 7ed4dd756a4dd7d81ca5f390c4a1818a98ccda61 + src/main/java/com/gusto/embedded_api/models/operations/async/GetTaxPaymentResponse.java: + id: 28b85779f929 + last_write_checksum: sha1:962a73e8e8708350fa8459c26552a093787f5647 + pristine_git_object: fa150168b3041e7e7568a6119e56a8d5e123cb4c + src/main/java/com/gusto/embedded_api/models/operations/async/GetTaxPaymentsResponse.java: + id: 41c0c7e0676a + last_write_checksum: sha1:015d8f471fff6502ea5adccb14187af85cc56477 + pristine_git_object: aff18d816e7c877ef5e0dfead9d72c2cde6fe828 src/main/java/com/gusto/embedded_api/models/operations/async/GetV1BenefitsBenefitIdResponse.java: id: 64f3190d24e6 last_write_checksum: sha1:8237b1adf8dc145ebb1fe193a3f59141b2963eb6 @@ -17380,8 +18676,12 @@ trackedFiles: pristine_git_object: 6d7ef57b4c712bf9d6c4fb7b1ca96a25eb57a87f src/main/java/com/gusto/embedded_api/models/operations/async/GetV1BenefitsResponse.java: id: 304299d2f745 - last_write_checksum: sha1:ee26d91d74a14c45278698390414b9ba45171a4d - pristine_git_object: d693a123d2fc358a12e6f80b7c23788a8f3863f3 + last_write_checksum: sha1:caa2d75bf74f352fa018ef43f9fbc9a1d53a7708 + pristine_git_object: 83438c108873aa7a820e73f8916e01909b255d40 + src/main/java/com/gusto/embedded_api/models/operations/async/GetV1BulkReportsRequestUuidResponse.java: + id: 34dc661d9b7b + last_write_checksum: sha1:f6cf83092749dadfea502a6b9dc46e82a08148e9 + pristine_git_object: 320e6fe030d0b7c97914e3aaad3028bf66d0fd4b src/main/java/com/gusto/embedded_api/models/operations/async/GetV1CompaniesAttachmentResponse.java: id: 66832a236894 last_write_checksum: sha1:14619b731b5d782cd14df3de0427714e73f3e44a @@ -17626,6 +18926,10 @@ trackedFiles: id: 9cebc1a2bd88 last_write_checksum: sha1:6fa2d312f639e5303fca57772896d4df8dba39d1 pristine_git_object: d75e3f654331d9520d8f9f01d125623eee279a99 + src/main/java/com/gusto/embedded_api/models/operations/async/GetV1ContractorsContractorUuidMemberPortalInvitationsResponse.java: + id: 8ae07c281867 + last_write_checksum: sha1:1379200bba327eb9cd7a620222b395985339e7d7 + pristine_git_object: 9ee8a2355f975a5b9d00cf84fa70c9c5d3b5c7c8 src/main/java/com/gusto/embedded_api/models/operations/async/GetV1ContractorsContractorUuidOnboardingStatusResponse.java: id: 93c4b58b400c last_write_checksum: sha1:5f810be6fe82cb5d14b34e5481db689b949a5562 @@ -17634,6 +18938,10 @@ trackedFiles: id: 5f72f1824ef3 last_write_checksum: sha1:7b9546286f3e0921457d7d1869d5a16a1eb2d7f7 pristine_git_object: 96f9f69f358b69934300e1ccf0d5ab7a2d7ae6ad + src/main/java/com/gusto/embedded_api/models/operations/async/GetV1ContractorsContractorUuidPaymentsResponse.java: + id: 130dbe432130 + last_write_checksum: sha1:da0bac9ff81c18d5d62cb8926ff91cec3b6ca526 + pristine_git_object: 62c61c872a35b70e1b271e7c21c75e07d4bc05b0 src/main/java/com/gusto/embedded_api/models/operations/async/GetV1ContractorsContractorUuidResponse.java: id: 8e25b4489c55 last_write_checksum: sha1:5fe290bde823c1a45037bdce733deebe8c02e657 @@ -17698,6 +19006,10 @@ trackedFiles: id: 9990295b2c63 last_write_checksum: sha1:37edb202ae193cebd61377b209485d64e678ab69 pristine_git_object: 53708ea70cd7cfa5e32c7dcdfa9346c937625099 + src/main/java/com/gusto/embedded_api/models/operations/async/GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java: + id: aa98695b7fd8 + last_write_checksum: sha1:118f1dad224e01f10151de17805de58df063e6a0 + pristine_git_object: 1a50d4fbfafac8b13f2219d3092482eac46a57f1 src/main/java/com/gusto/embedded_api/models/operations/async/GetV1EmployeesEmployeeIdOnboardingStatusResponse.java: id: ca3678b2097f last_write_checksum: sha1:839b6ba440c9d6c3beb989e3967266007b6cc8ea @@ -17790,6 +19102,10 @@ trackedFiles: id: f58d43055245 last_write_checksum: sha1:d4305cb748ff9c7b4f074049f2abed126d3d8963 pristine_git_object: 7ff11fbebcd17b3d56a8e0d8c19faa5676516fc7 + src/main/java/com/gusto/embedded_api/models/operations/async/GetV1PayrollBatchesPayrollBatchUuidResponse.java: + id: a9c7a44560da + last_write_checksum: sha1:877905c10477496db7256faa4c409f69b3cf6c3f + pristine_git_object: da7ab9afbb25e4f27e5b8bf6af1b6c3e985d9b81 src/main/java/com/gusto/embedded_api/models/operations/async/GetV1PayrollDigestsPayrollDigestUuidResponse.java: id: 62a006493ca5 last_write_checksum: sha1:07175aa6cc967a668c1d097ae249a14ad7ce2bfc @@ -17914,6 +19230,10 @@ trackedFiles: id: 37f2c8d5c784 last_write_checksum: sha1:2981e817371133277fef5f738f90e30d65179b99 pristine_git_object: a58f45f456b19b88eb8209960315bb89e37ebf53 + src/main/java/com/gusto/embedded_api/models/operations/async/PostV1BulkReportsResponse.java: + id: c659e3a25e8f + last_write_checksum: sha1:3a15c968ba52a83d801d4e086f57a977c05e820e + pristine_git_object: 46db6d81f4aac908a285a2399dbfeecb4887f447 src/main/java/com/gusto/embedded_api/models/operations/async/PostV1CompaniesAttachmentResponse.java: id: 579f809723a9 last_write_checksum: sha1:c529d82bbab096c950f470c2a1d7d6915eb8a8bd @@ -18018,6 +19338,10 @@ trackedFiles: id: 5bef39618e84 last_write_checksum: sha1:5655c8efc6721f4881fbbcbfa41d19cf56e3f855 pristine_git_object: 6cf37d5b08bef76349af46db01f84ab11a121274 + src/main/java/com/gusto/embedded_api/models/operations/async/PostV1ContractorsContractorUuidMemberPortalInvitationsResponse.java: + id: 61098375e5f4 + last_write_checksum: sha1:4ffa49c96efe3b2b9b09d73cefa0889b2d6026f2 + pristine_git_object: 587006eb38afc02ee9d49d3cf24d7dee523602e9 src/main/java/com/gusto/embedded_api/models/operations/async/PostV1ContractorsContractorUuidRehireResponse.java: id: fea61c8ccd3f last_write_checksum: sha1:62085a4f3afb3ac73370ce64aec8b4cc3f7c9760 @@ -18044,8 +19368,12 @@ trackedFiles: pristine_git_object: d1f0673ab0f8d446d9aa0c2bd274d6ca25e34d7a src/main/java/com/gusto/embedded_api/models/operations/async/PostV1EmployeesEmployeeIdJobsResponse.java: id: 7fe00205f528 - last_write_checksum: sha1:0242f0b0ef18bb0ff059b9883ee63574e39f90fd - pristine_git_object: a0359904c461994c94d3141c47f435989a18dd42 + last_write_checksum: sha1:edec5ce2aafdb2d4eb4fb5788a7f7c6aeff38c86 + pristine_git_object: 7cb2c32feb19f4c42f8dc2caf9c3f32444718f5b + src/main/java/com/gusto/embedded_api/models/operations/async/PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java: + id: c506c2b95c46 + last_write_checksum: sha1:5bc043c71cd1f0529dfd3467816319c38331bc2a + pristine_git_object: d2b00aa0b0ff3baff7da5418296ac192b93bf4c0 src/main/java/com/gusto/embedded_api/models/operations/async/PostV1EmployeesEmployeeIdRecurringReimbursementsResponse.java: id: 92002bb6da7b last_write_checksum: sha1:2d97e79be5ce2394158fd62618f79e27f0f043b3 @@ -18086,6 +19414,10 @@ trackedFiles: id: ad5d3c39a9dd last_write_checksum: sha1:4ee4b20044fcc9ac5aa31f732dac92a739750693 pristine_git_object: ecfd9495aa1ef7a4cf11a5f055d466a790ee74ea + src/main/java/com/gusto/embedded_api/models/operations/async/PostV1PayrollBatchesResponse.java: + id: 29911b02e1d8 + last_write_checksum: sha1:d52b65e0c027dc9f942dc4fd8ef94418f1cee8c5 + pristine_git_object: 6d1273c383c89d5d132329c7b97ffe0986fe322d src/main/java/com/gusto/embedded_api/models/operations/async/PostV1PayrollDigestsResponse.java: id: 4458af683111 last_write_checksum: sha1:8e0085a1fd86bbaaa7b048f464b0c02822fc6405 @@ -18312,12 +19644,16 @@ trackedFiles: pristine_git_object: 6b495114eab2f3901477e21a73c0082c0040bfb3 src/main/java/com/gusto/embedded_api/models/operations/async/PutV1JobsJobIdResponse.java: id: ecc3e868cde8 - last_write_checksum: sha1:3a83164c3cced0d7ae9624c3634a0c4343f241da - pristine_git_object: e04756e5aac6dc699e09bdf8cbadf2b2c86e8570 + last_write_checksum: sha1:9825826e5879804484c84327dd73ba48b3bddd90 + pristine_git_object: 6c473d7d317f3d0f1c4e67dcde013a0874950221 src/main/java/com/gusto/embedded_api/models/operations/async/PutV1LocationsLocationIdResponse.java: id: a60801d874c8 last_write_checksum: sha1:9cb6026c7134fe2aa77853c34a3121bfb266bd92 pristine_git_object: e3e9581d05bdde4822432fc64dde069e9e5dd322 + src/main/java/com/gusto/embedded_api/models/operations/async/PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse.java: + id: 3502dfc9d6fb + last_write_checksum: sha1:fd3754ed5b8d53b33750f918a53fb73d80226808 + pristine_git_object: 31c06970e46a75b4e87d108f24b4cd791bb36b4b src/main/java/com/gusto/embedded_api/models/operations/async/PutV1PartnerManagedCompaniesCompanyUuidMigrateResponse.java: id: a4485bd0b46a last_write_checksum: sha1:061a918da1f358fd99a4e3494680c42cfaabe6f6 @@ -18438,14 +19774,18 @@ trackedFiles: id: 5f9a71848f5f last_write_checksum: sha1:42f52514e7e532e375bead5fcd2fe3bc04594999 pristine_git_object: ab39371e95fdd5ba2fb1695bdcf824d4259eda22 + src/main/java/com/gusto/embedded_api/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitations.java: + id: e9b5c154b9da + last_write_checksum: sha1:2f8928c865b14220a15db54669db334f9df0b568 + pristine_git_object: 5d5328848e5607a684a4d3eebcbcb4c4c0de70c2 src/main/java/com/gusto/embedded_api/operations/DeleteV1ContractorsContractorUuidRehire.java: id: 1ae3b475d1f1 - last_write_checksum: sha1:5ec8e60613da5a68da61d7cf7a0cde3fd17584f5 - pristine_git_object: 2a570888b040ab183ffbfef3f669140799c6fbb5 + last_write_checksum: sha1:c8bf37c02504e7089a35977c162b18d5dfc21397 + pristine_git_object: 798e2d4757e136fa2a13b262e820983b029be73e src/main/java/com/gusto/embedded_api/operations/DeleteV1ContractorsContractorUuidTermination.java: id: ca13b3d30178 - last_write_checksum: sha1:03c4eaeaf4d07d4df0d21a57bc6769a65d35a3fc - pristine_git_object: ab4858aabeb82ca64cb7ebd9b52d8a1b0c37a674 + last_write_checksum: sha1:b8c4d52b96056e0660bfb0b778c67a86d020d399 + pristine_git_object: 386c064c52052c2befb5c72c519a41df09e81c6d src/main/java/com/gusto/embedded_api/operations/DeleteV1Employee.java: id: 661a70fa860d last_write_checksum: sha1:50539e97f52ee5f9739fd7de5aeb761947d9c92b @@ -18462,6 +19802,10 @@ trackedFiles: id: ea19f415c3e6 last_write_checksum: sha1:9b153eebc836dd264f9eeef62075c3e45d45179d pristine_git_object: 15220a612db46e8f623798c5c35c8a722aec6b2f + src/main/java/com/gusto/embedded_api/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitations.java: + id: ec6ba9150e44 + last_write_checksum: sha1:5c182a128cc21fb5bc05a5bb06ee94ff1861b7c4 + pristine_git_object: 2f534a18963b17e7dd764158c5e36504cf1ecc74 src/main/java/com/gusto/embedded_api/operations/DeleteV1EmployeesEmployeeIdRehire.java: id: 7fe054a0a867 last_write_checksum: sha1:3869a939f072d556084638963bda017909721d58 @@ -18562,10 +19906,22 @@ trackedFiles: id: cac6f5ab085d last_write_checksum: sha1:ec8766eb3bae72d5cf4986094d2d03c394e9b6a3 pristine_git_object: 4ab8afd016224d1e41ef24e0f859f6e145f839ca + src/main/java/com/gusto/embedded_api/operations/GetReverseWireTransactions.java: + id: 4701b750a50e + last_write_checksum: sha1:fad1f05403c5813cac4a3590c57209e1e71208d4 + pristine_git_object: 9596c0560959fcd5cfb64e8f40b641e121315158 + src/main/java/com/gusto/embedded_api/operations/GetTaxPayment.java: + id: 540536ea9f0d + last_write_checksum: sha1:f2a06602c57944aef71e5cbb2deee5726008f7f0 + pristine_git_object: 7e3cf9f24364901939abeea3264e0ac3b202f4e9 + src/main/java/com/gusto/embedded_api/operations/GetTaxPayments.java: + id: 5babc789ff6d + last_write_checksum: sha1:437a5023693aa0756eb6781e34aadc79d5d27dff + pristine_git_object: 7ce705476dfa76389c1fc82da06af162e69d0632 src/main/java/com/gusto/embedded_api/operations/GetV1Benefits.java: id: a7ea4eb799a6 - last_write_checksum: sha1:3c1512dc92a0124ea28b9656faf805e792cab983 - pristine_git_object: 39956b249ecf88b0a67738ba24acca5754421803 + last_write_checksum: sha1:b7038347b738e06f68bac0bbfcb3389ca02cee08 + pristine_git_object: 9e7f172734f6d09c155da829f86c6759460bfeea src/main/java/com/gusto/embedded_api/operations/GetV1BenefitsBenefitId.java: id: 22e44f60e1f0 last_write_checksum: sha1:b33ac9ac2ab736c38dd1eb7b554c9f9182761872 @@ -18578,6 +19934,10 @@ trackedFiles: id: c43ed6bb7268 last_write_checksum: sha1:b2ba432d14a2f46b7ac5dc9bbbe5a21040a04f67 pristine_git_object: 95c3d9e913831fe93a356ef9b31257e6e96ee766 + src/main/java/com/gusto/embedded_api/operations/GetV1BulkReportsRequestUuid.java: + id: d3bece5161c1 + last_write_checksum: sha1:2a8ea170785889c3b970adb16112759fee0bf48b + pristine_git_object: cf79e9bbb91cad7e62c3e1514297c7aa4aa1d2da src/main/java/com/gusto/embedded_api/operations/GetV1Companies.java: id: 7b5cf54bede3 last_write_checksum: sha1:abd4f99cf284694b7fff615f854222987729f9f5 @@ -18826,6 +20186,10 @@ trackedFiles: id: f6d7f89d0ba9 last_write_checksum: sha1:517c3a24063833b09de80d6a11ca8db1947fea47 pristine_git_object: 685887266e46526138d30854631bfa0c5a0a1ec0 + src/main/java/com/gusto/embedded_api/operations/GetV1ContractorsContractorUuidMemberPortalInvitations.java: + id: 3e5db40ca612 + last_write_checksum: sha1:d8d36f845cc13927b0a5737371913bc39eb72666 + pristine_git_object: a9ae3da5d9142d39f7ed6fd62077f88478841688 src/main/java/com/gusto/embedded_api/operations/GetV1ContractorsContractorUuidOnboardingStatus.java: id: 2d50d19ff153 last_write_checksum: sha1:8ed0cd9973c77011e9bf860e344004965d34ef7b @@ -18834,6 +20198,10 @@ trackedFiles: id: 87c308b26bac last_write_checksum: sha1:a43d9eaff5d2c5a464fe13a506356cb9f751d839 pristine_git_object: 6934ea65968ee1467b0544f3c199eceb73450b01 + src/main/java/com/gusto/embedded_api/operations/GetV1ContractorsContractorUuidPayments.java: + id: afa3801938ed + last_write_checksum: sha1:aaffe6c0fa0513567b317ad3aa3a5183969c042b + pristine_git_object: d4a1a21d1fbfab01eeb0c130c87fc57254f31ee7 src/main/java/com/gusto/embedded_api/operations/GetV1EmployeeBenefitsEmployeeBenefitId.java: id: 1d45007e3549 last_write_checksum: sha1:0205ae63b4759d96add219ab2d240e678c64e078 @@ -18898,6 +20266,10 @@ trackedFiles: id: 81a3546d87f3 last_write_checksum: sha1:bccdac290f5db92e60bc70f277d7582e9153c170 pristine_git_object: 736c74fda00f052f2442514f7a202262a3570694 + src/main/java/com/gusto/embedded_api/operations/GetV1EmployeesEmployeeIdMemberPortalInvitations.java: + id: 84641a29ad57 + last_write_checksum: sha1:6c5da09ed068d6ed138699b68736edb3e9647e2e + pristine_git_object: 1d88ff5af2038e7a78a2a770e5ff9b6274e60ed8 src/main/java/com/gusto/embedded_api/operations/GetV1EmployeesEmployeeIdOnboardingStatus.java: id: 30913e449ad4 last_write_checksum: sha1:32898a6ec025e2fd054fb536d4d57af365c0a3a2 @@ -18984,8 +20356,12 @@ trackedFiles: pristine_git_object: 306e35b617f76ee6674d8c00e0a2d4e31aaf1f51 src/main/java/com/gusto/embedded_api/operations/GetV1PaymentReceiptsPayrollsPayrollUuid.java: id: a113bd62e891 - last_write_checksum: sha1:972fcb20cd4282c1e2501d7e117ece59c3318c45 - pristine_git_object: d6f14a4a7cc0aa65de095ebb2c7489c28294c0f8 + last_write_checksum: sha1:e2d4f68756ab1e198bdf8a2f14a725e7ac7c5812 + pristine_git_object: f841e0d36ba5ba9e293a3bab7d5b1ce75b7fe099 + src/main/java/com/gusto/embedded_api/operations/GetV1PayrollBatchesPayrollBatchUuid.java: + id: 39d9f3be0e83 + last_write_checksum: sha1:005155fbae787c15e87d62f536d0371cb8d5d000 + pristine_git_object: f02c7554b047d8d551d3ab8731eda3282b181704 src/main/java/com/gusto/embedded_api/operations/GetV1PayrollDigestsPayrollDigestUuid.java: id: 7d2fc63a3e02 last_write_checksum: sha1:58f71ba033d916978e3c29d03aea8d8af781ff13 @@ -19088,8 +20464,8 @@ trackedFiles: pristine_git_object: 2cb89187ef34da14316e27a4c7b5929a211759f3 src/main/java/com/gusto/embedded_api/operations/PostCompaniesPayrollSkipCompanyUuid.java: id: 2d3a53a01fb7 - last_write_checksum: sha1:cd536ce61848a27ad2fec963b65ccfc70dfb24a9 - pristine_git_object: 170f6be913a996948f0006df3af33f51a2481567 + last_write_checksum: sha1:44cc769026c2adab55a2a5b2f839f3418bd9ef93 + pristine_git_object: 6ae758c404d8bd67d84e0b8acb2114278560abda src/main/java/com/gusto/embedded_api/operations/PostDepartments.java: id: 6cac223e2515 last_write_checksum: sha1:307925a8d081e1c51f290c4ce34ad047a800d3d8 @@ -19114,6 +20490,10 @@ trackedFiles: id: 002c9122af11 last_write_checksum: sha1:a75ed3b980a756b188d646854951eacaa7c1620a pristine_git_object: 5b1c03702652c7e57551bd73b0bd83717647e83f + src/main/java/com/gusto/embedded_api/operations/PostV1BulkReports.java: + id: ba803554b217 + last_write_checksum: sha1:c5eb68381cda030f477c75f84c7e34cdfc090b13 + pristine_git_object: 00a4b5463eacdab11c91e6328fe3852f9bb6582e src/main/java/com/gusto/embedded_api/operations/PostV1CompaniesAttachment.java: id: ddaf268c9a78 last_write_checksum: sha1:017b2154300669c6d0d87fe0dd16599394cc9573 @@ -19218,14 +20598,18 @@ trackedFiles: id: ee672a537f98 last_write_checksum: sha1:f7ec001936744b1718d1159af25d9f7c733ae202 pristine_git_object: 2ba455bde8ed509175d2b1c858e83ffbdc31fe35 + src/main/java/com/gusto/embedded_api/operations/PostV1ContractorsContractorUuidMemberPortalInvitations.java: + id: fb8c4a7f0db7 + last_write_checksum: sha1:48d761237bb5d39aa8ea29699b70dcdfea1506f2 + pristine_git_object: a25270dbf0142cf0a8dd70d42875b495d3a1ca59 src/main/java/com/gusto/embedded_api/operations/PostV1ContractorsContractorUuidRehire.java: id: d0dac408edde - last_write_checksum: sha1:e76a95e56e5889a8ba7ab90805d3de8b66fbbd6c - pristine_git_object: 8c8c5f4dbd7f1e6065c32ec354ee36ca0b681837 + last_write_checksum: sha1:565a3179b2fdf856fe0c4c65f14335cb404055f1 + pristine_git_object: a0296bfaa491bc564d28badcbe3bebc585803896 src/main/java/com/gusto/embedded_api/operations/PostV1ContractorsContractorUuidTermination.java: id: 732c8e8f51ff - last_write_checksum: sha1:1032875e5b968cbef2b0a993b6cd20ec2818bf83 - pristine_git_object: 0d794557a798967f5bb81e2dd73837980552cd96 + last_write_checksum: sha1:303e990c486437e67d3a591ca58965f3c87c365c + pristine_git_object: 82387ac0e4fd791b0b3c1f9743a27cc7ab263f61 src/main/java/com/gusto/embedded_api/operations/PostV1Employees.java: id: 716ca3917f45 last_write_checksum: sha1:db5069dbe67f5f2c493d45f4190cc58e26a4354e @@ -19250,6 +20634,10 @@ trackedFiles: id: 6b3bf85f0b44 last_write_checksum: sha1:ca3da4b1dfdef63fe5344fa9b3eb603bcb951bd6 pristine_git_object: b8ca153edd0033c10745e8067bfa21bacb68edd0 + src/main/java/com/gusto/embedded_api/operations/PostV1EmployeesEmployeeIdMemberPortalInvitations.java: + id: e5a025887384 + last_write_checksum: sha1:8d703d0a0ec01a85845a395dca88f8b5777b4b64 + pristine_git_object: 9eeba36f5bd9df59c8ff3412bc3dba1e150d0c4e src/main/java/com/gusto/embedded_api/operations/PostV1EmployeesEmployeeIdRecurringReimbursements.java: id: 6ca2dba9227f last_write_checksum: sha1:cca6279f098fc129ffa863593c689d91f837d940 @@ -19286,6 +20674,10 @@ trackedFiles: id: 415032df716f last_write_checksum: sha1:f8f70715997c9a09c954b44cf88834d5e247fb7c pristine_git_object: f44074e5c2cbe92e0fd55a1cfd15021e2ecfa1ea + src/main/java/com/gusto/embedded_api/operations/PostV1PayrollBatches.java: + id: d32863457d72 + last_write_checksum: sha1:cf9ffbfc2c613553baec93a74e9696979520f173 + pristine_git_object: d9551984c0f2043ddfa999cb2748ce20d6af08c9 src/main/java/com/gusto/embedded_api/operations/PostV1PayrollDigests.java: id: f6ccf18c990b last_write_checksum: sha1:87f40e0bf63cf453b03ed4154e27d95ebd1bbf34 @@ -19348,8 +20740,8 @@ trackedFiles: pristine_git_object: 44ee35d6c082528a13055b49069858d53f63e993 src/main/java/com/gusto/embedded_api/operations/PutV1CompaniesCompanyIdFederalTaxDetails.java: id: 76b48d3f162f - last_write_checksum: sha1:21763c2de89c875cc5095ab8204bafee33fa4f80 - pristine_git_object: 97429ba9b55868980632c92a7554d39616511b16 + last_write_checksum: sha1:ead6776624f8db2b81fe863f23ef79e1d048e34f + pristine_git_object: bf659082640cc9ac0c891ace6b5ca9c1458391e5 src/main/java/com/gusto/embedded_api/operations/PutV1CompaniesCompanyIdPaySchedulesPayScheduleId.java: id: b80469755ff2 last_write_checksum: sha1:66657141f9867f10c26c84de925a8dfba22b0eee @@ -19518,6 +20910,10 @@ trackedFiles: id: bc7045eaf7a1 last_write_checksum: sha1:04114d66bcba2be8427439ca4fae5c7a57f7361c pristine_git_object: e5415c30b8e29cdd4af7ab9e6196718c6eb3c2ba + src/main/java/com/gusto/embedded_api/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociate.java: + id: 280e6660eae5 + last_write_checksum: sha1:608efe5c6cb09a49ab26dda397e6ecd1da678a70 + pristine_git_object: dcf6b79ecdc33febf06cf33f586bf3811854eaa4 src/main/java/com/gusto/embedded_api/operations/PutV1PartnerManagedCompaniesCompanyUuidMigrate.java: id: d23fab2c5987 last_write_checksum: sha1:197d34e39fe3a82e578a199485b126054b242872 @@ -19608,8 +21004,8 @@ trackedFiles: pristine_git_object: 907dea4e35dfb26a9cd5209a7597d982f24a77e6 src/main/java/com/gusto/embedded_api/utils/AsyncRetries.java: id: 16d036b2ba97 - last_write_checksum: sha1:62ffab234abc9a36949f3647b90bf355593f1229 - pristine_git_object: 39e2c224ed87362a90fd69eca0578a280ecc543b + last_write_checksum: sha1:6061be026e2e2961a29de92539b2ae1a418630ec + pristine_git_object: e5b7cb284b7a20fd71e23ff15c3fd3d09aefb7f0 src/main/java/com/gusto/embedded_api/utils/AsyncRetryableException.java: id: 36c34e655982 last_write_checksum: sha1:18fa49083d7fecb5743cfc0577e82880c16f8f1b @@ -19724,8 +21120,8 @@ trackedFiles: pristine_git_object: 5d74250cc1cc303abc0f8a672541b0f5309396f7 src/main/java/com/gusto/embedded_api/utils/Multipart.java: id: cda7aca7f7ca - last_write_checksum: sha1:001aebbc0e228035ac8bd9be805267ced3163de9 - pristine_git_object: 12e748114c733d7f590af1359b81dc414b07ab3f + last_write_checksum: sha1:f6b17a03c336625883ff419aa169ffb19dfcc78f + pristine_git_object: aba4d02c2397d4da91add939907f0f51a37ca783 src/main/java/com/gusto/embedded_api/utils/MultipartFormMetadata.java: id: 701e904f331e last_write_checksum: sha1:04f439fe3e8132a86e8577b3ce8f5f89c6d3c392 @@ -19792,8 +21188,8 @@ trackedFiles: pristine_git_object: 71066c808de0a91ece50233a5286eaec3193203a src/main/java/com/gusto/embedded_api/utils/Retries.java: id: 70963fb29954 - last_write_checksum: sha1:8b43f18898be16278db6a5f470b9677a958cf9a7 - pristine_git_object: d12de68409a657d7490519e40a0d61d6c2f49954 + last_write_checksum: sha1:2a36acf4326f1c7becda89d51e97fab3c371bd69 + pristine_git_object: 61619d51fc7bfe039dc831c79ecec499ef008236 src/main/java/com/gusto/embedded_api/utils/RetryConfig.java: id: f7af4b5b9a01 last_write_checksum: sha1:e46ba1f045c7d2d2316db89e7d378731e39811ce @@ -19820,8 +21216,8 @@ trackedFiles: pristine_git_object: 0f4cf989e704ed4f15afdc5ad6baa65f694eefd0 src/main/java/com/gusto/embedded_api/utils/SpeakeasyHTTPClient.java: id: 948d0f4903e2 - last_write_checksum: sha1:e98a2053b651fcc86b8cf04b51d3e4db8798438e - pristine_git_object: f64093addbdeb724a6593751e21ba88364f0fde6 + last_write_checksum: sha1:0bea9a281035ee09469f625f81d79440a803bfa2 + pristine_git_object: 2abe3eada54f00e3da1d92c3b3fcf7c3fc83def5 src/main/java/com/gusto/embedded_api/utils/SpeakeasyLogger.java: id: 726f9916a24d last_write_checksum: sha1:366e456a8a7d6a39347170c3f54582a50f2772d8 @@ -19832,8 +21228,8 @@ trackedFiles: pristine_git_object: 4c0b7cbed17249ec1129a0de7623e000bbf957dc src/main/java/com/gusto/embedded_api/utils/StreamingParser.java: id: 424b591f63da - last_write_checksum: sha1:308feb965bb246b717688e740309ff71631478ad - pristine_git_object: c61e65636d28ff4a92f10a5ce9f769c41e3b20ec + last_write_checksum: sha1:86e6038d1c808e6ff4910a56da0339cc1fdbbf32 + pristine_git_object: 0cc745f4454603abc07bf1dc5815c5939cb8039b src/main/java/com/gusto/embedded_api/utils/TypedObject.java: id: 1518a3fca10b last_write_checksum: sha1:473e779621338fc220aeef04fd1e690ec0f3b08b @@ -20634,6 +22030,8 @@ examples: application/json: {"errors": [{"error_key": "", "category": ""}]} "409": application/json: {"errors": []} + "403": + application/json: {"errors": [{"error_key": "", "category": ""}]} get-v1-company-industry: Example: parameters: @@ -26356,7 +27754,7 @@ examples: header: X-Gusto-API-Version: "2025-06-15" requestBody: - application/json: {"columns": ["total_time_off_earnings"], "groupings": [], "file_type": "json", "with_totals": false, "start_date": "2024-01-01", "end_date": "2024-04-01", "dismissed_start_date": "2024-01-01", "dismissed_end_date": "2024-04-01"} + application/json: {"columns": ["total_time_off_earnings"], "file_type": "json", "with_totals": false, "date_filter_type": "period_end_date", "start_date": "2024-01-01", "end_date": "2024-04-01", "dismissed_start_date": "2024-01-01", "dismissed_end_date": "2024-04-01"} responses: "201": application/json: {} @@ -28556,6 +29954,9 @@ examples: X-Gusto-API-Version: "2025-06-15" requestBody: application/json: {"start_date": "2025-07-01"} + responses: + "422": + application/json: {"errors": [{"error_key": "", "category": ""}]} delete-v1-contractors-contractor_uuid-rehire: speakeasy-default-delete-v1-contractors-contractor-uuid-rehire: parameters: @@ -28563,6 +29964,9 @@ examples: contractor_uuid: "" header: X-Gusto-API-Version: "2025-06-15" + responses: + "422": + application/json: {"errors": []} post-v1-contractors-contractor_uuid-termination: speakeasy-default-post-v1-contractors-contractor-uuid-termination: parameters: @@ -28572,6 +29976,9 @@ examples: X-Gusto-API-Version: "2025-06-15" requestBody: application/json: {"end_date": "2025-06-15"} + responses: + "422": + application/json: {"errors": [{"error_key": "", "category": ""}]} delete-v1-contractors-contractor_uuid-termination: speakeasy-default-delete-v1-contractors-contractor-uuid-termination: parameters: @@ -28579,6 +29986,9 @@ examples: contractor_uuid: "" header: X-Gusto-API-Version: "2025-06-15" + responses: + "422": + application/json: {"errors": []} post-companies-payroll-skip-company_uuid: speakeasy-default-post-companies-payroll-skip-company-uuid: parameters: @@ -28593,6 +30003,8 @@ examples: application/json: {"errors": [{"error_key": "", "category": ""}]} "422": application/json: {} + "409": + application/json: {"errors": [{"error_key": "", "category": ""}]} get-v1-contractor_payments-contractor_payment_id-pdf: speakeasy-default-get-v1-contractor-payments-contractor-payment-id-pdf: parameters: @@ -28751,9 +30163,202 @@ examples: application/json: {"uuid": "1abe7289-f78c-4339-88a8-85081eccbe5e", "idempotency_key": "fe854863-de8e-4f8d-969c-e489e9c596f2", "status": "completed", "submitted_at": "2024-10-08T07:24:00.354Z"} "404": application/json: {"errors": [{"error_key": "", "category": ""}]} + put-v1-partner-managed-companies-company-uuid-disassociate: + speakeasy-default-put-v1-partner-managed-companies-company-uuid-disassociate: + parameters: + path: + company_uuid: "" + header: + X-Gusto-API-Version: "2025-06-15" + responses: + "200": + application/json: {"company_uuid": "509a4fda-2971-4edb-96da-5be5d1295f82", "company_name": "Runte, Parisian and Terry"} + "404": + application/json: {"errors": [{"error_key": "", "category": ""}]} + "422": + application/json: {"errors": []} + post-v1-bulk_reports: + speakeasy-default-post-v1-bulk-reports: + parameters: + header: + X-Gusto-API-Version: "2025-06-15" + requestBody: + application/json: {"batch": [{"company_uuid": "12345678-abcd-ef12-3456-7890abcdef12", "report_type": "custom_report", "columns": ["employee_first_name"], "groupings": ["employee"], "file_type": "csv", "custom_name": "Q1 Payroll Export", "with_totals": false, "date_filter_type": "check_date", "start_date": "2026-01-01", "end_date": "2026-03-31", "payment_method": "check", "employment_type": "exempt", "employment_status": "active_full_time"}, {"company_uuid": "12345678-abcd-ef12-3456-7890abcdef12", "report_type": "general_ledger", "payroll_uuid": "7b1d0df1-6403-4a06-8768-c1dd7d24d27a", "aggregation": "default"}]} + responses: + "201": + application/json: {"uuid": "57c90f01-b7ef-4831-bb62-f80c2ce1a69d", "status": "failed"} + "422": + application/json: {"errors": [{"error_key": "", "category": ""}]} + get-v1-bulk_reports-request_uuid: + speakeasy-default-get-v1-bulk-reports-request-uuid: + parameters: + path: + request_uuid: "" + header: + X-Gusto-API-Version: "2025-06-15" + responses: + "200": + application/json: {"uuid": "9ec387cc-e6b9-432e-9d7f-d588522b1b8b", "status": "pending", "submitted_at": "2026-03-16T03:33:23.733Z", "completed_at": null, "submitted_items": 5304} + "404": + application/json: {"errors": []} + get-v1-contractors-contractor_uuid-payments: + speakeasy-default-get-v1-contractors-contractor-uuid-payments: + parameters: + path: + contractor_uuid: "" + query: + sort_by: "check_date:desc" + header: + X-Gusto-API-Version: "2025-06-15" + responses: + "200": + application/json: [{"uuid": "4c253703-bc3f-484d-b971-5348e5a9a5d9"}] + "404": + application/json: {"errors": [{"error_key": "", "category": ""}]} + "422": + application/json: {"errors": [{"error_key": "", "category": ""}]} + post-v1-employees-employee_id-member_portal_invitations: + speakeasy-default-post-v1-employees-employee-id-member-portal-invitations: + parameters: + path: + employee_id: "" + header: + X-Gusto-API-Version: "2025-06-15" + responses: + "404": + application/json: {"errors": [{"error_key": "", "category": ""}]} + "422": + application/json: {"errors": [{"error_key": "", "category": ""}]} + get-v1-employees-employee_id-member_portal_invitations: + speakeasy-default-get-v1-employees-employee-id-member-portal-invitations: + parameters: + path: + employee_id: "" + header: + X-Gusto-API-Version: "2025-06-15" + responses: + "200": + application/json: {"status": "sent", "expired": false} + "404": + application/json: {"errors": [{"error_key": "", "category": ""}]} + delete-v1-employees-employee_id-member_portal_invitations: + speakeasy-default-delete-v1-employees-employee-id-member-portal-invitations: + parameters: + path: + employee_id: "" + header: + X-Gusto-API-Version: "2025-06-15" + responses: + "404": + application/json: {"errors": [{"error_key": "", "category": ""}]} + "422": + application/json: {"errors": []} + post-v1-contractors-contractor_uuid-member_portal_invitations: + speakeasy-default-post-v1-contractors-contractor-uuid-member-portal-invitations: + parameters: + path: + contractor_uuid: "" + header: + X-Gusto-API-Version: "2025-06-15" + responses: + "404": + application/json: {"errors": [{"error_key": "", "category": ""}]} + "422": + application/json: {"errors": []} + get-v1-contractors-contractor_uuid-member_portal_invitations: + speakeasy-default-get-v1-contractors-contractor-uuid-member-portal-invitations: + parameters: + path: + contractor_uuid: "" + header: + X-Gusto-API-Version: "2025-06-15" + responses: + "200": + application/json: {"status": "sent", "expired": false} + "404": + application/json: {"errors": []} + delete-v1-contractors-contractor_uuid-member_portal_invitations: + speakeasy-default-delete-v1-contractors-contractor-uuid-member-portal-invitations: + parameters: + path: + contractor_uuid: "" + header: + X-Gusto-API-Version: "2025-06-15" + responses: + "404": + application/json: {"errors": [{"error_key": "", "category": ""}]} + "422": + application/json: {"errors": []} + post-v1-payroll_batches: + speakeasy-default-post-v1-payroll-batches: + parameters: + header: + X-Gusto-API-Version: "2025-06-15" + requestBody: + application/json: {"idempotency_key": "80a74f8b-2c16-45e5-9038-aa108849c6e6", "batch_action": "cancel", "batch": [{"entity_type": "payroll", "uuid": "f5ac6d4e-8400-4a52-a5cf-dea57b2ee65a", "company_uuid": "7cd3f4a2-0bf9-485a-bbc0-f6adbdf0246b"}]} + responses: + "201": + application/json: {"uuid": "dbcadf09-f75f-48ee-b03c-1d7207e4ca21", "idempotency_key": "139ceb06-56d5-4d74-a1a2-d4b976a9e00f", "batch_action": "cancel", "status": "completed"} + "409": + application/json: {} + "422": + application/json: {"errors": [{"error_key": "", "category": ""}]} + get-v1-payroll_batches-payroll_batch_uuid: + speakeasy-default-get-v1-payroll-batches-payroll-batch-uuid: + parameters: + path: + payroll_batch_uuid: "" + header: + X-Gusto-API-Version: "2025-06-15" + responses: + "200": + application/json: {"uuid": "03a66cd2-126d-4e8f-a60f-122098226ea5", "idempotency_key": "beeda2f5-1ab7-4d71-bd9a-1cb9b8247468", "status": "failed", "submitted_at": "2026-05-02T17:33:16.380Z"} + "404": + application/json: {"errors": [{"error_key": "", "category": ""}]} + get-reverse-wire-transactions: + speakeasy-default-get-reverse-wire-transactions: + parameters: + path: + company_uuid: "" + header: + X-Gusto-API-Version: "2025-06-15" + responses: + "200": + application/json: [{"company_uuid": "", "amount": "", "status": "rejected", "payment_direction": "debit", "created_at": "1714750477797"}] + "404": + application/json: {"errors": [{"error_key": "", "category": ""}]} + get-tax-payments: + speakeasy-default-get-tax-payments: + parameters: + path: + company_uuid: "" + query: + sort_by: "amount:asc" + header: + X-Gusto-API-Version: "2025-06-15" + responses: + "200": + application/json: [{"uuid": "96b40a3b-720f-4338-94a2-75a39708a720", "company_uuid": "", "agency_name": "", "jurisdiction": "", "period_start": "2026-05-16", "period_end": "2024-07-16", "due_date": "2024-03-30", "amount": "", "amount_paid": ""}] + "404": + application/json: {"errors": []} + "422": + application/json: {"errors": [{"error_key": "", "category": ""}]} + get-tax-payment: + speakeasy-default-get-tax-payment: + parameters: + path: + company_uuid: "" + uuid: "7cdc7492-54c4-4684-9729-2c5da517245b" + header: + X-Gusto-API-Version: "2025-06-15" + responses: + "200": + application/json: {"uuid": "c8e53592-2f95-4477-8ecb-e5efae6f56b9", "company_uuid": "", "agency_name": "", "jurisdiction": "", "period_start": "2024-03-28", "period_end": "2024-07-11", "due_date": "2026-09-10", "amount": "", "amount_paid": ""} + "404": + application/json: {"errors": [{"error_key": "", "category": ""}]} examplesVersion: 1.0.2 generatedTests: {} -releaseNotes: "## Java SDK Changes:\n* `gustoembedded.payrolls.get()`: \n * `request.sortBy` **Changed** (Breaking ⚠️)\n* `gustoembedded.companyForms.getAll()`: \n * `request.sortBy` **Changed** (Breaking ⚠️)\n* `gustoembedded.companies.get()`: `response.fundingType` **Changed** (Breaking ⚠️)\n* `gustoembedded.companies.update()`: `response.fundingType` **Changed** (Breaking ⚠️)\n* `gustoembedded.payrolls.prepare()`: \n * `request.sortBy` **Changed** (Breaking ⚠️)\n* `gustoembedded.contractorPayments.getV1ContractorPaymentsContractorPaymentIdPdf()`: `error.status[404]` **Added**\n* `gustoembedded.reports.createCustom()`: \n * `request.createReportBody.columns[]` **Changed**\n* `gustoembedded.employeeTaxSetup.updateStateTaxes()`: `response.[].uuid` **Added**\n* `gustoembedded.employeePaymentMethod.deleteBankAccount()`: `error` **Changed**\n* `gustoembedded.earningTypes.delete()`: `error.status[404]` **Added**\n* `gustoembedded.externalPayrolls.finalizeTaxLiabilities()`: `error` **Changed**\n* `gustoembedded.externalPayrolls.delete()`: `error` **Changed**\n* `gustoembedded.payrollDigests.postV1PayrollDigests()`: **Added**\n* `gustoembedded.payrollDigests.getV1PayrollDigestsPayrollDigestUuid()`: **Added**\n* `gustoembedded.employeeTaxSetup.getStateTaxes()`: `response.[].uuid` **Added**\n* `gustoembedded.companyBenefits.delete()`: `error` **Changed**\n* `gustoembedded.companyBenefits.getEmployeeBenefits()`: `response.[].deductionReducesTaxableIncome` **Changed**\n* `gustoembedded.companyBenefits.updateEmployeeBenefits()`: \n * `request.employeeBenefitBulkUpdateRequest.employeeBenefits[].deductionReducesTaxableIncome` **Changed**\n * `response.[].deductionReducesTaxableIncome` **Changed**\n* `gustoembedded.employeeBenefits.get()`: `response.[].deductionReducesTaxableIncome` **Changed**\n* `gustoembedded.employeeBenefits.create()`: `response.deductionReducesTaxableIncome` **Changed**\n* `gustoembedded.employeeBenefits.retrieve()`: `response.deductionReducesTaxableIncome` **Changed**\n* `gustoembedded.employeeBenefits.update()`: \n * `request.employeeBenefitUpdateRequest.deductionReducesTaxableIncome` **Changed**\n * `response.deductionReducesTaxableIncome` **Changed**\n* `gustoembedded.employeeBenefits.delete()`: `error` **Changed**\n* `gustoembedded.informationRequests.getInformationRequests()`: `request.sortBy` **Added**\n* `gustoembedded.timeOffRequests.deleteV1TimeOffRequestsTimeOffRequestUuid()`: `error` **Changed**\n" +releaseNotes: "## Java SDK Changes:\n* `gustoembedded.webhooks.listSubscriptions()`: `response.[].subscriptionTypes[].enum(timeOffRequest)` **Added** (Breaking ⚠️)\n* `gustoembedded.webhooks.createSubscription()`: \n * `requestBody.subscriptionTypes[].enum(timeOffRequest)` **Added**\n * `response.subscriptionTypes[].enum(timeOffRequest)` **Added** (Breaking ⚠️)\n* `gustoembedded.webhooks.getSubscription()`: `response.subscriptionTypes[].enum(timeOffRequest)` **Added** (Breaking ⚠️)\n* `gustoembedded.webhooks.updateSubscription()`: \n * `requestBody.subscriptionTypes[].enum(timeOffRequest)` **Added**\n * `response.subscriptionTypes[].enum(timeOffRequest)` **Added** (Breaking ⚠️)\n* `gustoembedded.webhooks.verify()`: `response.subscriptionTypes[].enum(timeOffRequest)` **Added** (Breaking ⚠️)\n* `gustoembedded.locations.retrieve()`: `response.warnings` **Added**\n* `gustoembedded.employees.list()`: `response.[].jobs[].location.warnings` **Added**\n* `gustoembedded.reports.getV1BulkReportsRequestUuid()`: **Added**\n* `gustoembedded.contractorPayments.getV1ContractorsContractorUuidPayments()`: **Added**\n* `gustoembedded.contractorPayments.getV1ContractorPaymentsContractorPaymentIdPdf()`: **Added**\n* `gustoembedded.contractorPayments.list()`: **Added**\n* `gustoembedded.contractorPayments.create()`: **Added**\n* `gustoembedded.contractorPayments.get()`: **Added**\n* `gustoembedded.contractorPayments.delete()`: **Added**\n* `gustoembedded.contractorPayments.preview()`: **Added**\n* `gustoembedded.contractorPayments.getReceipt()`: **Added**\n* `gustoembedded.contractorPayments.fund()`: **Added**\n* `gustoembedded.memberPortalInvitations.postV1EmployeesEmployeeIdMemberPortalInvitations()`: **Added**\n* `gustoembedded.memberPortalInvitations.getV1EmployeesEmployeeIdMemberPortalInvitations()`: **Added**\n* `gustoembedded.memberPortalInvitations.deleteV1EmployeesEmployeeIdMemberPortalInvitations()`: **Added**\n* `gustoembedded.memberPortalInvitations.postV1ContractorsContractorUuidMemberPortalInvitations()`: **Added**\n* `gustoembedded.memberPortalInvitations.getV1ContractorsContractorUuidMemberPortalInvitations()`: **Added**\n* `gustoembedded.memberPortalInvitations.deleteV1ContractorsContractorUuidMemberPortalInvitations()`: **Added**\n* `gustoembedded.payrollCancellations.postV1PayrollBatches()`: **Added**\n* `gustoembedded.payrollCancellations.getV1PayrollBatchesPayrollBatchUuid()`: **Added**\n* `gustoembedded.reverseWireTransactions.getReverseWireTransactions()`: **Added**\n* `gustoembedded.taxPayments.getTaxPayments()`: **Added**\n* `gustoembedded.taxPayments.getTaxPayment()`: **Added**\n* `gustoembedded.contractorPayments.getReceipt()`: **Removed** (Breaking ⚠️)\n* `gustoembedded.contractorPayments.fund()`: **Removed** (Breaking ⚠️)\n* `gustoembedded.contractorPayments.list()`: **Removed** (Breaking ⚠️)\n* `gustoembedded.contractorPayments.create()`: **Removed** (Breaking ⚠️)\n* `gustoembedded.paySchedules.getPreview()`: \n * `request.payScheduleUuid` **Added**\n* `gustoembedded.contractorPayments.delete()`: **Removed** (Breaking ⚠️)\n* `gustoembedded.contractorPayments.preview()`: **Removed** (Breaking ⚠️)\n* `gustoembedded.contractorPayments.getV1ContractorPaymentsContractorPaymentIdPdf()`: **Removed** (Breaking ⚠️)\n* `gustoembedded.companies.suspensions.suspend()`: \n * `requestBody.leavingFor` **Changed**\n* `gustoembedded.federalTaxDetails.update()`: `error.status[403]` **Added**\n* `gustoembedded.locations.get()`: `response.[].warnings` **Added**\n* `gustoembedded.locations.create()`: `response.warnings` **Added**\n* `gustoembedded.companies.putV1PartnerManagedCompaniesCompanyUuidDisassociate()`: **Added**\n* `gustoembedded.reports.postV1BulkReports()`: **Added**\n* `gustoembedded.locations.update()`: `response.warnings` **Added**\n* `gustoembedded.contractorPayments.get()`: **Removed** (Breaking ⚠️)\n* `gustoembedded.employees.create()`: `response.jobs[].location.warnings` **Added**\n* `gustoembedded.employees.createHistorical()`: `response.jobs[].location.warnings` **Added**\n* `gustoembedded.employees.get()`: `response.jobs[].location.warnings` **Added**\n* `gustoembedded.employees.update()`: `response.jobs[].location.warnings` **Added**\n* `gustoembedded.employees.getOnboardingStatus()`: `response.blockers` **Added**\n* `gustoembedded.employees.updateOnboardingStatus()`: `response.blockers` **Added**\n* `gustoembedded.historicalEmployees.update()`: `response.jobs[].location.warnings` **Added**\n* `gustoembedded.employeeAddresses.get()`: `response.[].warnings` **Added**\n* `gustoembedded.employeeAddresses.create()`: `response.warnings` **Added**\n* `gustoembedded.employeeAddresses.retrieveHomeAddress()`: `response.warnings` **Added**\n* `gustoembedded.employeeAddresses.update()`: `response.warnings` **Added**\n* `gustoembedded.jobsAndCompensations.getJobs()`: `response.[].location.warnings` **Added**\n* `gustoembedded.jobsAndCompensations.createJob()`: `response.location.warnings` **Added**\n* `gustoembedded.jobsAndCompensations.getJob()`: `response.location.warnings` **Added**\n* `gustoembedded.jobsAndCompensations.update()`: `response.location.warnings` **Added**\n* `gustoembedded.contractors.list()`: `response.[].workEmail` **Added**\n* `gustoembedded.contractors.create()`: \n * `request.contractorCreateRequestBody.workEmail` **Added**\n * `response.workEmail` **Added**\n* `gustoembedded.contractors.get()`: `response.workEmail` **Added**\n* `gustoembedded.contractors.update()`: \n * `request.contractorUpdateRequestBody.workEmail` **Added**\n * `response.workEmail` **Added**\n* `gustoembedded.contractors.getAddress()`: `response.warnings` **Added**\n* `gustoembedded.contractors.updateAddress()`: `response.warnings` **Added**\n* `gustoembedded.contractors.postV1ContractorsContractorUuidRehire()`: `error.status[422]` **Added**\n* `gustoembedded.contractors.deleteV1ContractorsContractorUuidRehire()`: `error.status[422]` **Added**\n* `gustoembedded.contractors.postV1ContractorsContractorUuidTermination()`: `error.status[422]` **Added**\n* `gustoembedded.contractors.deleteV1ContractorsContractorUuidTermination()`: `error.status[422]` **Added**\n* `gustoembedded.payrolls.createOffCycle()`: `response.employeeCompensations[].customWithholdings` **Added**\n* `gustoembedded.payrolls.getApprovedReversals()`: `request.xGustoApiVersion` **Changed**\n* `gustoembedded.payrolls.get()`: `response.employeeCompensations[].customWithholdings` **Added**\n* `gustoembedded.payrolls.update()`: \n * `request.payrollUpdate.employeeCompensations[].customWithholdings` **Added**\n * `response.employeeCompensations[].customWithholdings` **Added**\n* `gustoembedded.payrolls.prepare()`: `response.employeeCompensations[].customWithholdings` **Added**\n* `gustoembedded.payrolls.getReceipt()`: `request` **Changed**\n* `gustoembedded.payrolls.skip()`: `error.status[409]` **Added**\n* `gustoembedded.contractorPaymentGroups.patchV1ContractorPaymentGroupsIdPartnerDisbursements()`: \n * `requestBody.disbursements[].paymentMethod` **Changed**\n* `gustoembedded.generatedDocuments.get()`: `request.xGustoApiVersion` **Changed**\n* `gustoembedded.reports.createCustom()`: `request.createReportBody` **Changed**\n* `gustoembedded.taxRequirements.get()`: `response.requirementSets[].requirements[]` **Changed**\n" generatedFiles: - .gitattributes - USAGE.md diff --git a/gusto_embedded/.speakeasy/gen.yaml b/gusto_embedded/.speakeasy/gen.yaml index b34dd4184..fa06bc658 100644 --- a/gusto_embedded/.speakeasy/gen.yaml +++ b/gusto_embedded/.speakeasy/gen.yaml @@ -29,7 +29,7 @@ generation: generateNewTests: false skipResponseBodyAssertions: false java: - version: 0.3.4 + version: 0.4.0 additionalDependencies: [] additionalPlugins: [] artifactID: embedded-api @@ -47,12 +47,14 @@ java: explicitDocImports: false flattenGlobalSecurity: true forwardCompatibleEnumsByDefault: false - forwardCompatibleUnionsByDefault: "false" + forwardCompatibleUnionsByDefault: true generateOptionalUnionAccessors: false generateSpringBootStarter: true generateUnionDocs: false + getterStyle: presence-aware githubURL: github.com/Gusto/gusto-java-client groupID: com.gusto + httpClient: jdk imports: option: openapi paths: diff --git a/gusto_embedded/README.md b/gusto_embedded/README.md index 15e464d89..f674b34a7 100644 --- a/gusto_embedded/README.md +++ b/gusto_embedded/README.md @@ -51,7 +51,7 @@ The samples below show how a published SDK artifact is used: Gradle: ```groovy -implementation 'com.gusto:embedded-api:0.3.4' +implementation 'com.gusto:embedded-api:0.4.0' ``` Maven: @@ -59,7 +59,7 @@ Maven: com.gusto embedded-api - 0.3.4 + 0.4.0 ``` @@ -87,24 +87,29 @@ gradlew.bat publishToMavenLocal -Pskip.signing package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.operations.GetV1TokenInfoResponse; -import com.gusto.embedded_api.models.operations.XGustoAPIVersion; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.operations.GetAchTransactionsRequest; +import com.gusto.embedded_api.models.operations.GetAchTransactionsResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws Exception { + public static void main(String[] args) throws NotFoundErrorObject, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1TokenInfoResponse res = sdk.introspection().getInfo() - .xGustoAPIVersion(XGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + GetAchTransactionsRequest req = GetAchTransactionsRequest.builder() + .companyUuid("") + .build(); + + GetAchTransactionsResponse res = sdk.achTransactions().getAll() + .request(req) .call(); - if (res.tokenInfo().isPresent()) { - System.out.println(res.tokenInfo().get()); + if (res.achTransactionList().isPresent()) { + System.out.println(res.achTransactionList().get()); } } } @@ -116,8 +121,8 @@ package hello.world; import com.gusto.embedded_api.AsyncGustoEmbedded; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.operations.XGustoAPIVersion; -import com.gusto.embedded_api.models.operations.async.GetV1TokenInfoResponse; +import com.gusto.embedded_api.models.operations.GetAchTransactionsRequest; +import com.gusto.embedded_api.models.operations.async.GetAchTransactionsResponse; import java.util.concurrent.CompletableFuture; public class Application { @@ -129,13 +134,17 @@ public class Application { .build() .async(); - CompletableFuture resFut = sdk.introspection().getInfo() - .xGustoAPIVersion(XGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + GetAchTransactionsRequest req = GetAchTransactionsRequest.builder() + .companyUuid("") + .build(); + + CompletableFuture resFut = sdk.achTransactions().getAll() + .request(req) .call(); resFut.thenAccept(res -> { - if (res.tokenInfo().isPresent()) { - System.out.println(res.tokenInfo().get()); + if (res.achTransactionList().isPresent()) { + System.out.println(res.achTransactionList().get()); } }); } @@ -236,24 +245,29 @@ To authenticate with the API the `companyAccessAuth` parameter must be set when package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.operations.GetV1TokenInfoResponse; -import com.gusto.embedded_api.models.operations.XGustoAPIVersion; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.operations.GetAchTransactionsRequest; +import com.gusto.embedded_api.models.operations.GetAchTransactionsResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws Exception { + public static void main(String[] args) throws NotFoundErrorObject, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1TokenInfoResponse res = sdk.introspection().getInfo() - .xGustoAPIVersion(XGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + GetAchTransactionsRequest req = GetAchTransactionsRequest.builder() + .companyUuid("") + .build(); + + GetAchTransactionsResponse res = sdk.achTransactions().getAll() + .request(req) .call(); - if (res.tokenInfo().isPresent()) { - System.out.println(res.tokenInfo().get()); + if (res.achTransactionList().isPresent()) { + System.out.println(res.achTransactionList().get()); } } } @@ -266,41 +280,28 @@ Some operations in this SDK require the security scheme to be specified at the r package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.*; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; import com.gusto.embedded_api.models.operations.*; import java.lang.Exception; public class Application { - public static void main(String[] args) throws UnprocessableEntityError, Exception { + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .build(); - PostV1PartnerManagedCompaniesResponse res = sdk.companies().createPartnerManaged() - .security(PostV1PartnerManagedCompaniesSecurity.builder() + PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse res = sdk.companies().putV1PartnerManagedCompaniesCompanyUuidDisassociate() + .security(PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity.builder() .systemAccessAuth(System.getenv().getOrDefault("SYSTEM_ACCESS_AUTH", "")) .build()) - .xGustoAPIVersion(PostV1PartnerManagedCompaniesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .partnerManagedCompanyCreateRequest(PartnerManagedCompanyCreateRequest.builder() - .user(User.builder() - .firstName("Frank") - .lastName("Ocean") - .email("frank@example.com") - .phone("2345558899") - .build()) - .company(PartnerManagedCompanyCreateRequestCompany.builder() - .name("Frank's Ocean, LLC") - .tradeName("Frank’s Ocean") - .ein("123456789") - .contractorOnly(false) - .build()) - .build()) + .xGustoAPIVersion(PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyUuid("") .call(); - if (res.partnerManagedCompany().isPresent()) { - System.out.println(res.partnerManagedCompany().get()); + if (res.partnerManagedCompanyDisassociateResponse().isPresent()) { + System.out.println(res.partnerManagedCompanyDisassociateResponse().get()); } } } @@ -327,18 +328,19 @@ public class Application { ### [Companies](docs/sdks/companies/README.md) -* [createPartnerManaged](docs/sdks/companies/README.md#createpartnermanaged) - Create a partner managed company +* [listAdmins](docs/sdks/companies/README.md#listadmins) - Get all the admins at a company +* [createAdmin](docs/sdks/companies/README.md#createadmin) - Create an admin for the company * [get](docs/sdks/companies/README.md#get) - Get a company * [update](docs/sdks/companies/README.md#update) - Update a company +* [getCustomFields](docs/sdks/companies/README.md#getcustomfields) - Get the custom fields of a company +* [getOnboardingStatus](docs/sdks/companies/README.md#getonboardingstatus) - Get company onboarding status +* [finishOnboarding](docs/sdks/companies/README.md#finishonboarding) - Finish company onboarding +* [putV1PartnerManagedCompaniesCompanyUuidDisassociate](docs/sdks/companies/README.md#putv1partnermanagedcompaniescompanyuuiddisassociate) - Disassociate a partner managed company * [migrate](docs/sdks/companies/README.md#migrate) - Migrate company to embedded payroll +* [createPartnerManaged](docs/sdks/companies/README.md#createpartnermanaged) - Create a partner managed company * [getV1PartnerManagedCompaniesCompanyUuidMigrationReadiness](docs/sdks/companies/README.md#getv1partnermanagedcompaniescompanyuuidmigrationreadiness) - Check company migration readiness * [acceptTermsOfService](docs/sdks/companies/README.md#accepttermsofservice) - Accept terms of service for a company user * [retrieveTermsOfService](docs/sdks/companies/README.md#retrievetermsofservice) - Retrieve terms of service status for a company user -* [listAdmins](docs/sdks/companies/README.md#listadmins) - Get all the admins at a company -* [createAdmin](docs/sdks/companies/README.md#createadmin) - Create an admin for the company -* [getOnboardingStatus](docs/sdks/companies/README.md#getonboardingstatus) - Get company onboarding status -* [finishOnboarding](docs/sdks/companies/README.md#finishonboarding) - Finish company onboarding -* [getCustomFields](docs/sdks/companies/README.md#getcustomfields) - Get the custom fields of a company ### [Companies.Suspensions](docs/sdks/suspensions/README.md) @@ -351,23 +353,23 @@ public class Application { ### [CompanyAttachments](docs/sdks/companyattachments/README.md) -* [getDetails](docs/sdks/companyattachments/README.md#getdetails) - Get Company Attachment Details * [getList](docs/sdks/companyattachments/README.md#getlist) - Get List of Company Attachments * [create](docs/sdks/companyattachments/README.md#create) - Create Company Attachment and Upload File +* [getDetails](docs/sdks/companyattachments/README.md#getdetails) - Get Company Attachment Details ### [CompanyBenefits](docs/sdks/companybenefits/README.md) +* [getAll](docs/sdks/companybenefits/README.md#getall) - Get all supported benefits +* [getSupported](docs/sdks/companybenefits/README.md#getsupported) - Get a supported benefit +* [getRequirements](docs/sdks/companybenefits/README.md#getrequirements) - Get benefit fields requirements by benefit type * [list](docs/sdks/companybenefits/README.md#list) - Get benefits for a company * [create](docs/sdks/companybenefits/README.md#create) - Create a company benefit * [get](docs/sdks/companybenefits/README.md#get) - Get a company benefit * [update](docs/sdks/companybenefits/README.md#update) - Update a company benefit * [delete](docs/sdks/companybenefits/README.md#delete) - Delete a company benefit -* [getAll](docs/sdks/companybenefits/README.md#getall) - Get all supported benefits -* [getSupported](docs/sdks/companybenefits/README.md#getsupported) - Get a supported benefit -* [getSummary](docs/sdks/companybenefits/README.md#getsummary) - Get company benefit summary by company benefit id. * [getEmployeeBenefits](docs/sdks/companybenefits/README.md#getemployeebenefits) - Get all employee benefits for a company benefit * [updateEmployeeBenefits](docs/sdks/companybenefits/README.md#updateemployeebenefits) - Bulk update employee benefits for a company benefit -* [getRequirements](docs/sdks/companybenefits/README.md#getrequirements) - Get benefit fields requirements by benefit type +* [getSummary](docs/sdks/companybenefits/README.md#getsummary) - Get company benefit summary by company benefit id. * [getV1CompanyBenefitsCompanyBenefitIdContributionExclusions](docs/sdks/companybenefits/README.md#getv1companybenefitscompanybenefitidcontributionexclusions) - Get contribution exclusions for a company benefit * [putV1CompanyBenefitsCompanyBenefitIdContributionExclusions](docs/sdks/companybenefits/README.md#putv1companybenefitscompanybenefitidcontributionexclusions) - Update contribution exclusions for a company benefit @@ -378,6 +380,18 @@ public class Application { * [getPdf](docs/sdks/companyforms/README.md#getpdf) - Get a company form pdf * [sign](docs/sdks/companyforms/README.md#sign) - Sign a company form +### [ContractorPayments](docs/sdks/contractorpayments/README.md) + +* [getV1ContractorsContractorUuidPayments](docs/sdks/contractorpayments/README.md#getv1contractorscontractoruuidpayments) - Get contractor payments +* [getV1ContractorPaymentsContractorPaymentIdPdf](docs/sdks/contractorpayments/README.md#getv1contractorpaymentscontractorpaymentidpdf) - Get a contractor payment PDF +* [list](docs/sdks/contractorpayments/README.md#list) - Get contractor payments for a company +* [create](docs/sdks/contractorpayments/README.md#create) - Create a contractor payment +* [get](docs/sdks/contractorpayments/README.md#get) - Get a single contractor payment +* [delete](docs/sdks/contractorpayments/README.md#delete) - Cancel a contractor payment +* [preview](docs/sdks/contractorpayments/README.md#preview) - Preview contractor payment debit date +* [getReceipt](docs/sdks/contractorpayments/README.md#getreceipt) - Get a single contractor payment receipt +* [fund](docs/sdks/contractorpayments/README.md#fund) - Fund a contractor payment [DEMO] + ### [ContractorDocuments](docs/sdks/contractordocuments/README.md) * [getAll](docs/sdks/contractordocuments/README.md#getall) - Get all contractor documents @@ -394,12 +408,12 @@ public class Application { ### [ContractorPaymentGroups](docs/sdks/contractorpaymentgroups/README.md) +* [preview](docs/sdks/contractorpaymentgroups/README.md#preview) - Preview a contractor payment group +* [fund](docs/sdks/contractorpaymentgroups/README.md#fund) - Fund a contractor payment group [DEMO] * [getList](docs/sdks/contractorpaymentgroups/README.md#getlist) - Get contractor payment groups for a company * [create](docs/sdks/contractorpaymentgroups/README.md#create) - Create a contractor payment group -* [preview](docs/sdks/contractorpaymentgroups/README.md#preview) - Preview a contractor payment group * [get](docs/sdks/contractorpaymentgroups/README.md#get) - Get a contractor payment group * [delete](docs/sdks/contractorpaymentgroups/README.md#delete) - Cancel a contractor payment group -* [fund](docs/sdks/contractorpaymentgroups/README.md#fund) - Fund a contractor payment group [DEMO] * [getV1ContractorPaymentGroupsIdPartnerDisbursements](docs/sdks/contractorpaymentgroups/README.md#getv1contractorpaymentgroupsidpartnerdisbursements) - Get partner disbursements for a contractor payment group * [patchV1ContractorPaymentGroupsIdPartnerDisbursements](docs/sdks/contractorpaymentgroups/README.md#patchv1contractorpaymentgroupsidpartnerdisbursements) - Update partner disbursements for a contractor payment group @@ -413,26 +427,8 @@ public class Application { * [createBankAccount](docs/sdks/contractorpaymentmethods/README.md#createbankaccount) - Create a contractor bank account -### [ContractorPayments](docs/sdks/contractorpayments/README.md) - -* [getReceipt](docs/sdks/contractorpayments/README.md#getreceipt) - Get a single contractor payment receipt -* [fund](docs/sdks/contractorpayments/README.md#fund) - Fund a contractor payment [DEMO] -* [list](docs/sdks/contractorpayments/README.md#list) - Get contractor payments for a company -* [create](docs/sdks/contractorpayments/README.md#create) - Create a contractor payment -* [get](docs/sdks/contractorpayments/README.md#get) - Get a single contractor payment -* [delete](docs/sdks/contractorpayments/README.md#delete) - Cancel a contractor payment -* [preview](docs/sdks/contractorpayments/README.md#preview) - Preview contractor payment debit date -* [getV1ContractorPaymentsContractorPaymentIdPdf](docs/sdks/contractorpayments/README.md#getv1contractorpaymentscontractorpaymentidpdf) - Get a contractor payment PDF - ### [Contractors](docs/sdks/contractors/README.md) -* [list](docs/sdks/contractors/README.md#list) - Get contractors of a company -* [create](docs/sdks/contractors/README.md#create) - Create a contractor -* [get](docs/sdks/contractors/README.md#get) - Get a contractor -* [update](docs/sdks/contractors/README.md#update) - Update a contractor -* [delete](docs/sdks/contractors/README.md#delete) - Delete a contractor -* [getOnboardingStatus](docs/sdks/contractors/README.md#getonboardingstatus) - Get the contractor's onboarding status -* [updateOnboardingStatus](docs/sdks/contractors/README.md#updateonboardingstatus) - Change the contractor's onboarding status * [getAddress](docs/sdks/contractors/README.md#getaddress) - Get a contractor address * [updateAddress](docs/sdks/contractors/README.md#updateaddress) - Create or update a contractor's address * [getV1CompaniesCompanyIdContractorsPaymentDetails](docs/sdks/contractors/README.md#getv1companiescompanyidcontractorspaymentdetails) - List contractor payment details @@ -440,16 +436,23 @@ public class Application { * [deleteV1ContractorsContractorUuidRehire](docs/sdks/contractors/README.md#deletev1contractorscontractoruuidrehire) - Cancel a pending contractor rehire * [postV1ContractorsContractorUuidTermination](docs/sdks/contractors/README.md#postv1contractorscontractoruuidtermination) - Schedule a contractor termination * [deleteV1ContractorsContractorUuidTermination](docs/sdks/contractors/README.md#deletev1contractorscontractoruuidtermination) - Cancel a pending contractor termination +* [get](docs/sdks/contractors/README.md#get) - Get a contractor +* [update](docs/sdks/contractors/README.md#update) - Update a contractor +* [delete](docs/sdks/contractors/README.md#delete) - Delete a contractor +* [list](docs/sdks/contractors/README.md#list) - Get contractors of a company +* [create](docs/sdks/contractors/README.md#create) - Create a contractor +* [getOnboardingStatus](docs/sdks/contractors/README.md#getonboardingstatus) - Get the contractor's onboarding status +* [updateOnboardingStatus](docs/sdks/contractors/README.md#updateonboardingstatus) - Change the contractor's onboarding status ### [Departments](docs/sdks/departments/README.md) -* [getAll](docs/sdks/departments/README.md#getall) - Get all departments of a company -* [create](docs/sdks/departments/README.md#create) - Create a department * [get](docs/sdks/departments/README.md#get) - Get a department * [update](docs/sdks/departments/README.md#update) - Update a department * [delete](docs/sdks/departments/README.md#delete) - Delete a department * [addPeople](docs/sdks/departments/README.md#addpeople) - Add people to a department * [removePeople](docs/sdks/departments/README.md#removepeople) - Remove people from a department +* [getAll](docs/sdks/departments/README.md#getall) - Get all departments of a company +* [create](docs/sdks/departments/README.md#create) - Create a department ### [EarningTypes](docs/sdks/earningtypes/README.md) @@ -487,24 +490,24 @@ public class Application { ### [EmployeeEmployments](docs/sdks/employeeemployments/README.md) -* [getTerminations](docs/sdks/employeeemployments/README.md#getterminations) - Get terminations for an employee -* [createTermination](docs/sdks/employeeemployments/README.md#createtermination) - Create an employee termination -* [deleteTermination](docs/sdks/employeeemployments/README.md#deletetermination) - Delete an employee termination -* [updateTermination](docs/sdks/employeeemployments/README.md#updatetermination) - Update an employee termination * [getRehire](docs/sdks/employeeemployments/README.md#getrehire) - Get an employee rehire * [createRehire](docs/sdks/employeeemployments/README.md#createrehire) - Create an employee rehire * [rehire](docs/sdks/employeeemployments/README.md#rehire) - Update an employee rehire * [deleteRehire](docs/sdks/employeeemployments/README.md#deleterehire) - Delete an employee rehire * [getHistory](docs/sdks/employeeemployments/README.md#gethistory) - Get employment history for an employee +* [getTerminations](docs/sdks/employeeemployments/README.md#getterminations) - Get terminations for an employee +* [createTermination](docs/sdks/employeeemployments/README.md#createtermination) - Create an employee termination +* [deleteTermination](docs/sdks/employeeemployments/README.md#deletetermination) - Delete an employee termination +* [updateTermination](docs/sdks/employeeemployments/README.md#updatetermination) - Update an employee termination * [getV1TerminationsEmployeeId](docs/sdks/employeeemployments/README.md#getv1terminationsemployeeid) - Get an employee termination ### [EmployeeForms](docs/sdks/employeeforms/README.md) -* [generateW2](docs/sdks/employeeforms/README.md#generatew2) - Generate a W2 form [DEMO] * [list](docs/sdks/employeeforms/README.md#list) - Get all employee forms * [get](docs/sdks/employeeforms/README.md#get) - Get an employee form * [getPdf](docs/sdks/employeeforms/README.md#getpdf) - Get the employee form pdf * [sign](docs/sdks/employeeforms/README.md#sign) - Sign an employee form +* [generateW2](docs/sdks/employeeforms/README.md#generatew2) - Generate a W2 form [DEMO] ### [EmployeePaymentMethod](docs/sdks/employeepaymentmethod/README.md) @@ -520,18 +523,18 @@ public class Application { ### [Employees](docs/sdks/employees/README.md) -* [list](docs/sdks/employees/README.md#list) - Get employees of a company -* [create](docs/sdks/employees/README.md#create) - Create an employee +* [getCustomFields](docs/sdks/employees/README.md#getcustomfields) - Get an employee's custom fields * [getV1CompaniesCompanyIdEmployeesPaymentDetails](docs/sdks/employees/README.md#getv1companiescompanyidemployeespaymentdetails) - Get employee payment details for a company -* [createHistorical](docs/sdks/employees/README.md#createhistorical) - Create a historical employee +* [getTimeOffActivities](docs/sdks/employees/README.md#gettimeoffactivities) - Get employee time off activities * [get](docs/sdks/employees/README.md#get) - Get an employee * [update](docs/sdks/employees/README.md#update) - Update an employee. * [delete](docs/sdks/employees/README.md#delete) - Delete an onboarding employee -* [getCustomFields](docs/sdks/employees/README.md#getcustomfields) - Get an employee's custom fields -* [updateOnboardingDocumentsConfig](docs/sdks/employees/README.md#updateonboardingdocumentsconfig) - Update employee onboarding documents config +* [list](docs/sdks/employees/README.md#list) - Get employees of a company +* [create](docs/sdks/employees/README.md#create) - Create an employee * [getOnboardingStatus](docs/sdks/employees/README.md#getonboardingstatus) - Get the employee's onboarding status * [updateOnboardingStatus](docs/sdks/employees/README.md#updateonboardingstatus) - Update the employee's onboarding status -* [getTimeOffActivities](docs/sdks/employees/README.md#gettimeoffactivities) - Get employee time off activities +* [updateOnboardingDocumentsConfig](docs/sdks/employees/README.md#updateonboardingdocumentsconfig) - Update employee onboarding documents config +* [createHistorical](docs/sdks/employees/README.md#createhistorical) - Create a historical employee ### [EmployeeTaxSetup](docs/sdks/employeetaxsetup/README.md) @@ -548,13 +551,13 @@ public class Application { * [get](docs/sdks/externalpayrolls/README.md#get) - Get external payrolls for a company * [create](docs/sdks/externalpayrolls/README.md#create) - Create an external payroll for a company +* [listTaxLiabilities](docs/sdks/externalpayrolls/README.md#listtaxliabilities) - Get tax liabilities +* [updateTaxLiabilities](docs/sdks/externalpayrolls/README.md#updatetaxliabilities) - Update tax liabilities +* [finalizeTaxLiabilities](docs/sdks/externalpayrolls/README.md#finalizetaxliabilities) - Finalize tax liabilities options and convert into processed payrolls * [retrieve](docs/sdks/externalpayrolls/README.md#retrieve) - Get an external payroll * [update](docs/sdks/externalpayrolls/README.md#update) - Update an external payroll * [delete](docs/sdks/externalpayrolls/README.md#delete) - Delete an external payroll * [calculateTaxes](docs/sdks/externalpayrolls/README.md#calculatetaxes) - Get tax suggestions for an external payroll -* [listTaxLiabilities](docs/sdks/externalpayrolls/README.md#listtaxliabilities) - Get tax liabilities -* [updateTaxLiabilities](docs/sdks/externalpayrolls/README.md#updatetaxliabilities) - Update tax liabilities -* [finalizeTaxLiabilities](docs/sdks/externalpayrolls/README.md#finalizetaxliabilities) - Finalize tax liabilities options and convert into processed payrolls ### [FederalTaxDetails](docs/sdks/federaltaxdetails/README.md) @@ -569,9 +572,9 @@ public class Application { * [list](docs/sdks/garnishments/README.md#list) - Get garnishments for an employee * [create](docs/sdks/garnishments/README.md#create) - Create a garnishment +* [getChildSupportData](docs/sdks/garnishments/README.md#getchildsupportdata) - Get child support garnishment data * [get](docs/sdks/garnishments/README.md#get) - Get a garnishment * [update](docs/sdks/garnishments/README.md#update) - Update a garnishment -* [getChildSupportData](docs/sdks/garnishments/README.md#getchildsupportdata) - Get child support garnishment data ### [GeneratedDocuments](docs/sdks/generateddocuments/README.md) @@ -613,8 +616,8 @@ public class Application { ### [Introspection](docs/sdks/introspection/README.md) -* [getInfo](docs/sdks/introspection/README.md#getinfo) - Get info about the current access token * [oauthAccessToken](docs/sdks/introspection/README.md#oauthaccesstoken) - Create a System Access Token or Refresh an Access Token +* [getInfo](docs/sdks/introspection/README.md#getinfo) - Get info about the current access token ### [Invoices](docs/sdks/invoices/README.md) @@ -622,35 +625,49 @@ public class Application { ### [JobsAndCompensations](docs/sdks/jobsandcompensations/README.md) -* [getJobs](docs/sdks/jobsandcompensations/README.md#getjobs) - Get jobs for an employee -* [createJob](docs/sdks/jobsandcompensations/README.md#createjob) - Create a job -* [getJob](docs/sdks/jobsandcompensations/README.md#getjob) - Get a job -* [update](docs/sdks/jobsandcompensations/README.md#update) - Update a job -* [delete](docs/sdks/jobsandcompensations/README.md#delete) - Delete an individual job * [getCompensations](docs/sdks/jobsandcompensations/README.md#getcompensations) - Get compensations for a job * [createCompensation](docs/sdks/jobsandcompensations/README.md#createcompensation) - Create a compensation * [getCompensation](docs/sdks/jobsandcompensations/README.md#getcompensation) - Get a compensation * [updateCompensation](docs/sdks/jobsandcompensations/README.md#updatecompensation) - Update a compensation * [deleteCompensation](docs/sdks/jobsandcompensations/README.md#deletecompensation) - Delete a compensation +* [getJob](docs/sdks/jobsandcompensations/README.md#getjob) - Get a job +* [update](docs/sdks/jobsandcompensations/README.md#update) - Update a job +* [delete](docs/sdks/jobsandcompensations/README.md#delete) - Delete an individual job +* [getJobs](docs/sdks/jobsandcompensations/README.md#getjobs) - Get jobs for an employee +* [createJob](docs/sdks/jobsandcompensations/README.md#createjob) - Create a job ### [Locations](docs/sdks/locations/README.md) -* [get](docs/sdks/locations/README.md#get) - Get all company locations -* [create](docs/sdks/locations/README.md#create) - Create a company location +* [getMinimumWages](docs/sdks/locations/README.md#getminimumwages) - Get minimum wages for a location * [retrieve](docs/sdks/locations/README.md#retrieve) - Get a location * [update](docs/sdks/locations/README.md#update) - Update a location -* [getMinimumWages](docs/sdks/locations/README.md#getminimumwages) - Get minimum wages for a location +* [get](docs/sdks/locations/README.md#get) - Get all company locations +* [create](docs/sdks/locations/README.md#create) - Create a company location + +### [MemberPortalInvitations](docs/sdks/memberportalinvitations/README.md) + +* [postV1EmployeesEmployeeIdMemberPortalInvitations](docs/sdks/memberportalinvitations/README.md#postv1employeesemployeeidmemberportalinvitations) - Create an employee member portal invitation +* [getV1EmployeesEmployeeIdMemberPortalInvitations](docs/sdks/memberportalinvitations/README.md#getv1employeesemployeeidmemberportalinvitations) - Get an employee member portal invitation +* [deleteV1EmployeesEmployeeIdMemberPortalInvitations](docs/sdks/memberportalinvitations/README.md#deletev1employeesemployeeidmemberportalinvitations) - Cancel an employee member portal invitation +* [postV1ContractorsContractorUuidMemberPortalInvitations](docs/sdks/memberportalinvitations/README.md#postv1contractorscontractoruuidmemberportalinvitations) - Create a contractor member portal invitation +* [getV1ContractorsContractorUuidMemberPortalInvitations](docs/sdks/memberportalinvitations/README.md#getv1contractorscontractoruuidmemberportalinvitations) - Get a contractor member portal invitation +* [deleteV1ContractorsContractorUuidMemberPortalInvitations](docs/sdks/memberportalinvitations/README.md#deletev1contractorscontractoruuidmemberportalinvitations) - Cancel a contractor member portal invitation ### [Notifications](docs/sdks/notifications/README.md) -* [getDetails](docs/sdks/notifications/README.md#getdetails) - Get a notification's details * [getCompanyNotifications](docs/sdks/notifications/README.md#getcompanynotifications) - Get notifications for company +* [getDetails](docs/sdks/notifications/README.md#getdetails) - Get a notification's details ### [PaymentConfigs](docs/sdks/paymentconfigs/README.md) * [get](docs/sdks/paymentconfigs/README.md#get) - Get a company's payment configs * [update](docs/sdks/paymentconfigs/README.md#update) - Update a company's payment configs +### [PayrollCancellations](docs/sdks/payrollcancellations/README.md) + +* [postV1PayrollBatches](docs/sdks/payrollcancellations/README.md#postv1payrollbatches) - Create a payroll cancellation batch +* [getV1PayrollBatchesPayrollBatchUuid](docs/sdks/payrollcancellations/README.md#getv1payrollbatchespayrollbatchuuid) - Get a payroll cancellation batch + ### [PayrollDigests](docs/sdks/payrolldigests/README.md) * [postV1PayrollDigests](docs/sdks/payrolldigests/README.md#postv1payrolldigests) - Create a payroll digest batch @@ -658,38 +675,38 @@ public class Application { ### [Payrolls](docs/sdks/payrolls/README.md) -* [list](docs/sdks/payrolls/README.md#list) - Get all payrolls for a company -* [createOffCycle](docs/sdks/payrolls/README.md#createoffcycle) - Create an off-cycle payroll +* [generatePrintableChecks](docs/sdks/payrolls/README.md#generateprintablechecks) - Generate printable payroll checks (pdf) +* [getPayStubs](docs/sdks/payrolls/README.md#getpaystubs) - Get an employee's pay stubs +* [getPayStub](docs/sdks/payrolls/README.md#getpaystub) - Get an employee pay stub (pdf) +* [getV1CompaniesCompanyIdPayrollsIdPartnerDisbursements](docs/sdks/payrolls/README.md#getv1companiescompanyidpayrollsidpartnerdisbursements) - Get partner disbursements for a payroll +* [patchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements](docs/sdks/payrolls/README.md#patchv1companiescompanyidpayrollsidpartnerdisbursements) - Update partner disbursements for a payroll * [getApprovedReversals](docs/sdks/payrolls/README.md#getapprovedreversals) - Get approved payroll reversals * [get](docs/sdks/payrolls/README.md#get) - Get a single payroll * [update](docs/sdks/payrolls/README.md#update) - Update a payroll by ID * [delete](docs/sdks/payrolls/README.md#delete) - Delete a payroll -* [prepare](docs/sdks/payrolls/README.md#prepare) - Prepare a payroll for update +* [list](docs/sdks/payrolls/README.md#list) - Get all payrolls for a company +* [createOffCycle](docs/sdks/payrolls/README.md#createoffcycle) - Create an off-cycle payroll * [getReceipt](docs/sdks/payrolls/README.md#getreceipt) - Get a single payroll receipt +* [cancel](docs/sdks/payrolls/README.md#cancel) - Cancel a payroll +* [prepare](docs/sdks/payrolls/README.md#prepare) - Prepare a payroll for update +* [calculate](docs/sdks/payrolls/README.md#calculate) - Calculate a payroll * [getBlockers](docs/sdks/payrolls/README.md#getblockers) - Get all payroll blockers for a company * [skip](docs/sdks/payrolls/README.md#skip) - Skip a payroll -* [calculateGrossUp](docs/sdks/payrolls/README.md#calculategrossup) - Calculate gross up for a payroll -* [calculate](docs/sdks/payrolls/README.md#calculate) - Calculate a payroll * [submit](docs/sdks/payrolls/README.md#submit) - Submit payroll -* [cancel](docs/sdks/payrolls/README.md#cancel) - Cancel a payroll -* [getPayStub](docs/sdks/payrolls/README.md#getpaystub) - Get an employee pay stub (pdf) -* [getPayStubs](docs/sdks/payrolls/README.md#getpaystubs) - Get an employee's pay stubs -* [generatePrintableChecks](docs/sdks/payrolls/README.md#generateprintablechecks) - Generate printable payroll checks (pdf) -* [getV1CompaniesCompanyIdPayrollsIdPartnerDisbursements](docs/sdks/payrolls/README.md#getv1companiescompanyidpayrollsidpartnerdisbursements) - Get partner disbursements for a payroll -* [patchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements](docs/sdks/payrolls/README.md#patchv1companiescompanyidpayrollsidpartnerdisbursements) - Update partner disbursements for a payroll +* [calculateGrossUp](docs/sdks/payrolls/README.md#calculategrossup) - Calculate gross up for a payroll ### [PaySchedules](docs/sdks/payschedules/README.md) +* [getPayPeriods](docs/sdks/payschedules/README.md#getpayperiods) - Get pay periods for a company +* [getUnprocessedTerminationPeriods](docs/sdks/payschedules/README.md#getunprocessedterminationperiods) - Get termination pay periods for a company * [getAll](docs/sdks/payschedules/README.md#getall) - Get the pay schedules for a company * [create](docs/sdks/payschedules/README.md#create) - Create a new pay schedule * [getPreview](docs/sdks/payschedules/README.md#getpreview) - Preview pay schedule dates * [get](docs/sdks/payschedules/README.md#get) - Get a pay schedule * [update](docs/sdks/payschedules/README.md#update) - Update a pay schedule -* [getPayPeriods](docs/sdks/payschedules/README.md#getpayperiods) - Get pay periods for a company -* [getUnprocessedTerminationPeriods](docs/sdks/payschedules/README.md#getunprocessedterminationperiods) - Get termination pay periods for a company -* [getAssignments](docs/sdks/payschedules/README.md#getassignments) - Get pay schedule assignments for a company * [previewAssignment](docs/sdks/payschedules/README.md#previewassignment) - Preview pay schedule assignments for a company * [assign](docs/sdks/payschedules/README.md#assign) - Assign pay schedules for a company +* [getAssignments](docs/sdks/payschedules/README.md#getassignments) - Get pay schedule assignments for a company ### [PeopleBatches](docs/sdks/peoplebatches/README.md) @@ -711,11 +728,17 @@ public class Application { ### [Reports](docs/sdks/reports/README.md) +* [postV1BulkReports](docs/sdks/reports/README.md#postv1bulkreports) - Create a bulk report batch +* [getV1BulkReportsRequestUuid](docs/sdks/reports/README.md#getv1bulkreportsrequestuuid) - Get a bulk report batch +* [postV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage](docs/sdks/reports/README.md#postv1companiescompanyidreportsemployeesannualficawage) - Create an employees annual FICA wage report * [createCustom](docs/sdks/reports/README.md#createcustom) - Create a custom report * [postPayrollsPayrollUuidReportsGeneralLedger](docs/sdks/reports/README.md#postpayrollspayrolluuidreportsgeneralledger) - Create a general ledger report * [getReportsRequestUuid](docs/sdks/reports/README.md#getreportsrequestuuid) - Get a report * [getTemplate](docs/sdks/reports/README.md#gettemplate) - Get a report template -* [postV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage](docs/sdks/reports/README.md#postv1companiescompanyidreportsemployeesannualficawage) - Create an employees annual FICA wage report + +### [ReverseWireTransactions](docs/sdks/reversewiretransactions/README.md) + +* [getReverseWireTransactions](docs/sdks/reversewiretransactions/README.md#getreversewiretransactions) - Get all reverse wire transactions for a company ### [SalaryEstimates](docs/sdks/salaryestimates/README.md) @@ -733,11 +756,16 @@ public class Application { * [update](docs/sdks/signatories/README.md#update) - Update a signatory * [delete](docs/sdks/signatories/README.md#delete) - Delete a signatory +### [TaxPayments](docs/sdks/taxpayments/README.md) + +* [getTaxPayments](docs/sdks/taxpayments/README.md#gettaxpayments) - Get all tax payments for a company +* [getTaxPayment](docs/sdks/taxpayments/README.md#gettaxpayment) - Get a tax payment for a company + ### [TaxRequirements](docs/sdks/taxrequirements/README.md) +* [getAll](docs/sdks/taxrequirements/README.md#getall) - Get all tax requirements for a company * [get](docs/sdks/taxrequirements/README.md#get) - Get tax requirements for a state * [updateState](docs/sdks/taxrequirements/README.md#updatestate) - Update tax requirements for a state -* [getAll](docs/sdks/taxrequirements/README.md#getall) - Get all tax requirements for a company ### [TimeOffRequests](docs/sdks/timeoffrequests/README.md) @@ -754,14 +782,14 @@ public class Application { ### [TimeOffPolicies](docs/sdks/timeoffpolicies/README.md) * [calculateAccruingTimeOffHours](docs/sdks/timeoffpolicies/README.md#calculateaccruingtimeoffhours) - Calculate accruing time off hours -* [get](docs/sdks/timeoffpolicies/README.md#get) - Get a time off policy -* [update](docs/sdks/timeoffpolicies/README.md#update) - Update a time off policy * [getAll](docs/sdks/timeoffpolicies/README.md#getall) - Get all time off policies for a company * [create](docs/sdks/timeoffpolicies/README.md#create) - Create a time off policy +* [get](docs/sdks/timeoffpolicies/README.md#get) - Get a time off policy +* [update](docs/sdks/timeoffpolicies/README.md#update) - Update a time off policy +* [deactivate](docs/sdks/timeoffpolicies/README.md#deactivate) - Deactivate a time off policy * [addEmployees](docs/sdks/timeoffpolicies/README.md#addemployees) - Add employees to a time off policy * [removeEmployees](docs/sdks/timeoffpolicies/README.md#removeemployees) - Remove employees from a time off policy * [updateBalance](docs/sdks/timeoffpolicies/README.md#updatebalance) - Update employee time off balances -* [deactivate](docs/sdks/timeoffpolicies/README.md#deactivate) - Deactivate a time off policy ### [Webhooks](docs/sdks/webhooks/README.md) @@ -770,8 +798,8 @@ public class Application { * [getSubscription](docs/sdks/webhooks/README.md#getsubscription) - Get a webhook subscription * [updateSubscription](docs/sdks/webhooks/README.md#updatesubscription) - Update a webhook subscription * [deleteSubscription](docs/sdks/webhooks/README.md#deletesubscription) - Delete a webhook subscription -* [verify](docs/sdks/webhooks/README.md#verify) - Verify a webhook subscription * [requestVerificationToken](docs/sdks/webhooks/README.md#requestverificationtoken) - Request a verification token for a webhook subscription +* [verify](docs/sdks/webhooks/README.md#verify) - Verify a webhook subscription * [getV1WebhooksHealthCheck](docs/sdks/webhooks/README.md#getv1webhookshealthcheck) - Get the webhooks health status ### [WireInRequests](docs/sdks/wireinrequests/README.md) @@ -805,10 +833,9 @@ Handling errors in this SDK should largely match your expectations. All operatio package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.*; -import com.gusto.embedded_api.models.errors.GustoEmbeddedException; -import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.*; +import com.gusto.embedded_api.models.errors.*; +import com.gusto.embedded_api.models.operations.GetAchTransactionsRequest; +import com.gusto.embedded_api.models.operations.GetAchTransactionsResponse; import java.io.UncheckedIOException; import java.lang.Exception; import java.util.List; @@ -816,35 +843,23 @@ import java.util.Optional; public class Application { - public static void main(String[] args) throws UnprocessableEntityError, Exception { + public static void main(String[] args) throws NotFoundErrorObject, Exception { GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); try { - PostV1PartnerManagedCompaniesResponse res = sdk.companies().createPartnerManaged() - .security(PostV1PartnerManagedCompaniesSecurity.builder() - .systemAccessAuth(System.getenv().getOrDefault("SYSTEM_ACCESS_AUTH", "")) - .build()) - .xGustoAPIVersion(PostV1PartnerManagedCompaniesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .partnerManagedCompanyCreateRequest(PartnerManagedCompanyCreateRequest.builder() - .user(User.builder() - .firstName("Frank") - .lastName("Ocean") - .email("frank@example.com") - .phone("2345558899") - .build()) - .company(PartnerManagedCompanyCreateRequestCompany.builder() - .name("Frank's Ocean, LLC") - .tradeName("Frank’s Ocean") - .ein("123456789") - .contractorOnly(false) - .build()) - .build()) + GetAchTransactionsRequest req = GetAchTransactionsRequest.builder() + .companyUuid("") + .build(); + + GetAchTransactionsResponse res = sdk.achTransactions().getAll() + .request(req) .call(); - if (res.partnerManagedCompany().isPresent()) { - System.out.println(res.partnerManagedCompany().get()); + if (res.achTransactionList().isPresent()) { + System.out.println(res.achTransactionList().get()); } } catch (GustoEmbeddedException ex) { // all SDK exceptions inherit from GustoEmbeddedException @@ -861,11 +876,11 @@ public class Application { // different error subclasses may be thrown // depending on the service call - if (ex instanceof UnprocessableEntityError) { - var e = (UnprocessableEntityError) ex; + if (ex instanceof NotFoundErrorObject) { + var e = (NotFoundErrorObject) ex; // Check error data fields e.data().ifPresent(payload -> { - List errors = payload.errors(); + List errors = payload.errors(); }); } @@ -886,7 +901,7 @@ public class Application { * [`GustoEmbeddedException`](./src/main/java/models/errors/GustoEmbeddedException.java): The base class for HTTP error responses. * [`com.gusto.embedded_api.models.errors.NotFoundErrorObject`](./src/main/java/models/errors/com.gusto.embedded_api.models.errors.NotFoundErrorObject.java): Not Found The requested resource does not exist. Make sure the provided ID/UUID is valid. * -
    Less common errors (11) +
    Less common errors (13)
    @@ -896,11 +911,13 @@ public class Application { many more subclasses in the JDK platform). **Inherit from [`GustoEmbeddedException`](./src/main/java/models/errors/GustoEmbeddedException.java)**: -* [`com.gusto.embedded_api.models.errors.UnprocessableEntityError`](./src/main/java/models/errors/com.gusto.embedded_api.models.errors.UnprocessableEntityError.java): Unprocessable Entity This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. Applicable to 159 of 299 methods.* -* [`com.gusto.embedded_api.models.errors.ConflictErrorObject`](./src/main/java/models/errors/com.gusto.embedded_api.models.errors.ConflictErrorObject.java): Conflict This error occurs when the resource version provided does not match the current version. Retrieve the latest version and retry. Status code `409`. Applicable to 2 of 299 methods.* -* [`com.gusto.embedded_api.models.errors.PeopleBatchConflictError`](./src/main/java/models/errors/com.gusto.embedded_api.models.errors.PeopleBatchConflictError.java): Error response when a people batch idempotency key conflict occurs. Status code `409`. Applicable to 1 of 299 methods.* -* [`com.gusto.embedded_api.models.errors.PayrollDigestConflictError`](./src/main/java/models/errors/com.gusto.embedded_api.models.errors.PayrollDigestConflictError.java): Error response when a payroll digest idempotency key has already been used by the same partner. Status code `409`. Applicable to 1 of 299 methods.* -* [`com.gusto.embedded_api.models.errors.PayrollBlockersError`](./src/main/java/models/errors/com.gusto.embedded_api.models.errors.PayrollBlockersError.java): Payroll Blockers Error For detailed information, see the [Payroll Blockers guide](https://docs.gusto.com/embedded-payroll/docs/payroll-blockers). Status code `422`. Applicable to 1 of 299 methods.* +* [`com.gusto.embedded_api.models.errors.UnprocessableEntityError`](./src/main/java/models/errors/com.gusto.embedded_api.models.errors.UnprocessableEntityError.java): Unprocessable Entity This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. Applicable to 172 of 314 methods.* +* [`com.gusto.embedded_api.models.errors.ConflictErrorObject`](./src/main/java/models/errors/com.gusto.embedded_api.models.errors.ConflictErrorObject.java): Conflict This may happen when the resource version provided does not match the current version — retrieve the latest version and retry — or when the request conflicts with another in-progress operation on the same resource. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. Status code `409`. Applicable to 3 of 314 methods.* +* [`com.gusto.embedded_api.models.errors.ForbiddenErrorObject`](./src/main/java/models/errors/com.gusto.embedded_api.models.errors.ForbiddenErrorObject.java): Forbidden The targeted company has been archived because its EIN was reassigned to a replacement company. Use the replacement company referenced in the error metadata. Status code `403`. Applicable to 1 of 314 methods.* +* [`com.gusto.embedded_api.models.errors.PayrollBatchConflictError`](./src/main/java/models/errors/com.gusto.embedded_api.models.errors.PayrollBatchConflictError.java): Error response when a payroll cancellation idempotency key has already been used by the same partner. Status code `409`. Applicable to 1 of 314 methods.* +* [`com.gusto.embedded_api.models.errors.PayrollDigestConflictError`](./src/main/java/models/errors/com.gusto.embedded_api.models.errors.PayrollDigestConflictError.java): Error response when a payroll digest idempotency key has already been used by the same partner. Status code `409`. Applicable to 1 of 314 methods.* +* [`com.gusto.embedded_api.models.errors.PeopleBatchConflictError`](./src/main/java/models/errors/com.gusto.embedded_api.models.errors.PeopleBatchConflictError.java): Error response when a people batch idempotency key conflict occurs. Status code `409`. Applicable to 1 of 314 methods.* +* [`com.gusto.embedded_api.models.errors.PayrollBlockersError`](./src/main/java/models/errors/com.gusto.embedded_api.models.errors.PayrollBlockersError.java): Payroll Blockers Error For detailed information, see the [Payroll Blockers guide](https://docs.gusto.com/embedded-payroll/docs/payroll-blockers). Status code `422`. Applicable to 1 of 314 methods.*
    @@ -926,25 +943,30 @@ You can override the default server globally using the `.server(AvailableServers package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.operations.GetV1TokenInfoResponse; -import com.gusto.embedded_api.models.operations.XGustoAPIVersion; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.operations.GetAchTransactionsRequest; +import com.gusto.embedded_api.models.operations.GetAchTransactionsResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws Exception { + public static void main(String[] args) throws NotFoundErrorObject, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .server(GustoEmbedded.AvailableServers.DEMO) .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1TokenInfoResponse res = sdk.introspection().getInfo() - .xGustoAPIVersion(XGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + GetAchTransactionsRequest req = GetAchTransactionsRequest.builder() + .companyUuid("") + .build(); + + GetAchTransactionsResponse res = sdk.achTransactions().getAll() + .request(req) .call(); - if (res.tokenInfo().isPresent()) { - System.out.println(res.tokenInfo().get()); + if (res.achTransactionList().isPresent()) { + System.out.println(res.achTransactionList().get()); } } } @@ -957,25 +979,30 @@ The default server can also be overridden globally using the `.serverURL(String package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.operations.GetV1TokenInfoResponse; -import com.gusto.embedded_api.models.operations.XGustoAPIVersion; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.operations.GetAchTransactionsRequest; +import com.gusto.embedded_api.models.operations.GetAchTransactionsResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws Exception { + public static void main(String[] args) throws NotFoundErrorObject, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .serverURL("https://api.gusto-demo.com") .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1TokenInfoResponse res = sdk.introspection().getInfo() - .xGustoAPIVersion(XGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + GetAchTransactionsRequest req = GetAchTransactionsRequest.builder() + .companyUuid("") + .build(); + + GetAchTransactionsResponse res = sdk.achTransactions().getAll() + .request(req) .call(); - if (res.tokenInfo().isPresent()) { - System.out.println(res.tokenInfo().get()); + if (res.achTransactionList().isPresent()) { + System.out.println(res.achTransactionList().get()); } } } diff --git a/gusto_embedded/USAGE.md b/gusto_embedded/USAGE.md index 82971d7bc..9f9728887 100644 --- a/gusto_embedded/USAGE.md +++ b/gusto_embedded/USAGE.md @@ -3,24 +3,29 @@ package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.operations.GetV1TokenInfoResponse; -import com.gusto.embedded_api.models.operations.XGustoAPIVersion; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.operations.GetAchTransactionsRequest; +import com.gusto.embedded_api.models.operations.GetAchTransactionsResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws Exception { + public static void main(String[] args) throws NotFoundErrorObject, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1TokenInfoResponse res = sdk.introspection().getInfo() - .xGustoAPIVersion(XGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + GetAchTransactionsRequest req = GetAchTransactionsRequest.builder() + .companyUuid("") + .build(); + + GetAchTransactionsResponse res = sdk.achTransactions().getAll() + .request(req) .call(); - if (res.tokenInfo().isPresent()) { - System.out.println(res.tokenInfo().get()); + if (res.achTransactionList().isPresent()) { + System.out.println(res.achTransactionList().get()); } } } diff --git a/gusto_embedded/build.gradle b/gusto_embedded/build.gradle index 1f9254c36..24984bebc 100644 --- a/gusto_embedded/build.gradle +++ b/gusto_embedded/build.gradle @@ -14,7 +14,6 @@ plugins { id 'java-library' id 'maven-publish' id 'signing' - id "io.spring.dependency-management" version "1.1.6" apply false } compileJava.options.encoding = "UTF-8" @@ -72,56 +71,16 @@ javadocJar { } dependencies { - api 'com.fasterxml.jackson.core:jackson-annotations:2.18.2' - implementation 'com.fasterxml.jackson.core:jackson-databind:2.18.2' - implementation 'com.fasterxml.jackson.datatype:jackson-datatype-jsr310:2.18.2' - implementation 'com.fasterxml.jackson.datatype:jackson-datatype-jdk8:2.18.2' + api 'com.fasterxml.jackson.core:jackson-annotations:2.22' + implementation 'com.fasterxml.jackson.core:jackson-databind:2.22.1' + implementation 'com.fasterxml.jackson.datatype:jackson-datatype-jsr310:2.22.0' + implementation 'com.fasterxml.jackson.datatype:jackson-datatype-jdk8:2.22.0' api('org.openapitools:jackson-databind-nullable:0.2.6') {exclude group: 'com.fasterxml.jackson.core', module: 'jackson-databind'} implementation 'commons-io:commons-io:2.18.0' implementation 'jakarta.annotation:jakarta.annotation-api:3.0.0' api 'org.reactivestreams:reactive-streams:1.0.4' } -ext { - springBootVersion = '2.7.18' -} - -subprojects { - if (name in [ - 'GustoEmbedded-spring-boot-autoconfigure', - 'GustoEmbedded-spring-boot-starter' - ]) { - // Ensure subprojects use the same group and version as root project - group = rootProject.group - version = rootProject.version - - apply { - plugin "java-library" - plugin "io.spring.dependency-management" - plugin "maven-publish" - plugin "signing" - } - dependencyManagement { - imports { - mavenBom "org.springframework.boot:spring-boot-dependencies:${rootProject.springBootVersion}" - } - } - repositories { - mavenCentral() - } - java { - withSourcesJar() - withJavadocJar() - } - tasks.withType(JavaCompile).configureEach { - options.release = 11 - } - - // Apply publishing configuration to all subprojects - they'll check for publishingConfig internally - apply from: rootProject.file('publishing.gradle') - } -} - ext { publishingConfig = [ groupId: group, diff --git a/gusto_embedded/docs/models/components/AchTransaction.md b/gusto_embedded/docs/models/components/AchTransaction.md index b3783352c..f5c0589dc 100644 --- a/gusto_embedded/docs/models/components/AchTransaction.md +++ b/gusto_embedded/docs/models/components/AchTransaction.md @@ -11,7 +11,7 @@ Representation of an ACH transaction | `companyUuid` | *Optional\* | :heavy_minus_sign: | Unique identifier of the company to which the ACH transaction belongs | | `paymentEventType` | [Optional\](../../models/components/PaymentEventType.md) | :heavy_minus_sign: | The type of payment event associated with the ACH transaction | | `paymentEventUuid` | *Optional\* | :heavy_minus_sign: | Unique identifier for the payment event associated with the ACH transaction | -| `recipientType` | [JsonNullable\](../../models/components/AchTransactionRecipientType.md) | :heavy_minus_sign: | The type of recipient associated with the ACH transaction | +| `recipientType` | [JsonNullable\](../../models/components/RecipientType.md) | :heavy_minus_sign: | The type of recipient associated with the ACH transaction | | `recipientUuid` | *Optional\* | :heavy_minus_sign: | Unique identifier for the recipient associated with the ACH transaction | | `errorCode` | *JsonNullable\* | :heavy_minus_sign: | The error code associated with the ACH transaction, if any. If there is no error on the ACH transaction, this field will be nil. See [this article](https://engineering.gusto.com/how-ach-works-a-developer-perspective-part-2/) for a complete list of ACH return codes. | | `transactionType` | *Optional\* | :heavy_minus_sign: | The type of transaction associated with the ACH transaction | diff --git a/gusto_embedded/docs/models/components/AchTransactionRecipientType.md b/gusto_embedded/docs/models/components/AchTransactionRecipientType.md deleted file mode 100644 index a61aa21b3..000000000 --- a/gusto_embedded/docs/models/components/AchTransactionRecipientType.md +++ /dev/null @@ -1,17 +0,0 @@ -# AchTransactionRecipientType - -## Example Usage - -```java -import com.gusto.embedded_api.models.components.AchTransactionRecipientType; - -AchTransactionRecipientType value = AchTransactionRecipientType.EMPLOYEE; -``` - - -## Values - -| Name | Value | -| ------------ | ------------ | -| `EMPLOYEE` | Employee | -| `CONTRACTOR` | Contractor | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/Aggregation.md b/gusto_embedded/docs/models/components/Aggregation.md index 6116fea7b..3135bd3ef 100644 --- a/gusto_embedded/docs/models/components/Aggregation.md +++ b/gusto_embedded/docs/models/components/Aggregation.md @@ -1,6 +1,6 @@ # Aggregation -The breakdown of the report. Use 'default' for no split. +The breakdown of the report. Use `default` for no split. ## Example Usage diff --git a/gusto_embedded/docs/models/components/BatchAction.md b/gusto_embedded/docs/models/components/BatchAction.md index 499007b62..6569b9b3f 100644 --- a/gusto_embedded/docs/models/components/BatchAction.md +++ b/gusto_embedded/docs/models/components/BatchAction.md @@ -7,7 +7,7 @@ The action being performed on the batch. ```java import com.gusto.embedded_api.models.components.BatchAction; -BatchAction value = BatchAction.CREATE; +BatchAction value = BatchAction.CANCEL; ``` @@ -15,4 +15,4 @@ BatchAction value = BatchAction.CREATE; | Name | Value | | -------- | -------- | -| `CREATE` | create | \ No newline at end of file +| `CANCEL` | cancel | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/BenefitSummary.md b/gusto_embedded/docs/models/components/BenefitSummary.md index 1b77eb091..039a753cc 100644 --- a/gusto_embedded/docs/models/components/BenefitSummary.md +++ b/gusto_embedded/docs/models/components/BenefitSummary.md @@ -10,4 +10,4 @@ | `description` | *Optional\* | :heavy_minus_sign: | Description of the benefit. | | `companyBenefitDeduction` | *Optional\* | :heavy_minus_sign: | The aggregate of employee deduction for all employees given the period of time and the specific company benefit. | | `companyBenefitContribution` | *Optional\* | :heavy_minus_sign: | The aggregate of company contribution for all employees given the period of time and the specific company benefit. | -| `employees` | List\<[BenefitSummaryEmployees](../../models/components/BenefitSummaryEmployees.md)> | :heavy_minus_sign: | N/A | \ No newline at end of file +| `employees` | List\<[Employees](../../models/components/Employees.md)> | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/BenefitSummaryEmployees.md b/gusto_embedded/docs/models/components/BenefitSummaryEmployees.md deleted file mode 100644 index 04409f207..000000000 --- a/gusto_embedded/docs/models/components/BenefitSummaryEmployees.md +++ /dev/null @@ -1,15 +0,0 @@ -# BenefitSummaryEmployees - - -## Fields - -| Field | Type | Required | Description | -| ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | -| `uuid` | *Optional\* | :heavy_minus_sign: | The UUID of the employee | -| `companyBenefitDeduction` | *Optional\* | :heavy_minus_sign: | The sum of employee deduction for this employee given the period of time and the specific company benefit. | -| `companyBenefitContribution` | *Optional\* | :heavy_minus_sign: | The sum of company contribution for this employee given the period of time and the specific company benefit. | -| `benefitDeduction` | *Optional\* | :heavy_minus_sign: | The sum of employee benefit deduction for this employee given the period of time and the benefit type. | -| `benefitContribution` | *Optional\* | :heavy_minus_sign: | The sum of company contribution for this employee given the period of time and the benefit type. | -| `grossPay` | *Optional\* | :heavy_minus_sign: | Gross pay for this employee given the period of time. | -| `imputedPay` | *Optional\* | :heavy_minus_sign: | Total imputed pay for this employee given the period of time (not scoped to a benefit type). | -| `payrollBenefits` | List\<[PayrollBenefits](../../models/components/PayrollBenefits.md)> | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/BenefitTypeRequirements.md b/gusto_embedded/docs/models/components/BenefitTypeRequirements.md index 605be5620..8ab0f5e7b 100644 --- a/gusto_embedded/docs/models/components/BenefitTypeRequirements.md +++ b/gusto_embedded/docs/models/components/BenefitTypeRequirements.md @@ -6,7 +6,7 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `employeeDeduction` | [Optional\](../../models/components/EmployeeDeduction.md) | :heavy_minus_sign: | The amount to be deducted, per pay period, from the employee's pay. | -| `contribution` | [Optional\](../../models/components/BenefitTypeRequirementsContribution.md) | :heavy_minus_sign: | An object representing the type and value of the company contribution. | +| `contribution` | [Optional\](../../models/components/Contribution.md) | :heavy_minus_sign: | An object representing the type and value of the company contribution. | | `deductAsPercentage` | [Optional\](../../models/components/DeductAsPercentage.md) | :heavy_minus_sign: | Whether the employee deduction amount should be treated as a percentage to be deducted from each payroll. | | `catchUp` | [Optional\](../../models/components/CatchUp.md) | :heavy_minus_sign: | Whether the employee should use a benefit’s 'catch up' rate. Only Roth 401k and 401k benefits use this value for employees over 50. | | `limitOption` | [Optional\](../../models/components/LimitOption.md) | :heavy_minus_sign: | Some benefits require additional information to determine their limit. For example, for an HSA benefit, the limit option should be either 'Family' or 'Individual'. For a Dependent Care FSA benefit, the limit option should be either 'Joint Filing or Single' or 'Married and Filing Separately'. | diff --git a/gusto_embedded/docs/models/components/BenefitTypeRequirementsContribution.md b/gusto_embedded/docs/models/components/BenefitTypeRequirementsContribution.md deleted file mode 100644 index 02b99f614..000000000 --- a/gusto_embedded/docs/models/components/BenefitTypeRequirementsContribution.md +++ /dev/null @@ -1,13 +0,0 @@ -# BenefitTypeRequirementsContribution - -An object representing the type and value of the company contribution. - - -## Fields - -| Field | Type | Required | Description | -| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -| `required` | *Optional\* | :heavy_minus_sign: | N/A | -| `editable` | *Optional\* | :heavy_minus_sign: | N/A | -| `defaultValue` | [JsonNullable\](../../models/components/BenefitTypeRequirementsDefaultValue.md) | :heavy_minus_sign: | N/A | -| `choices` | List\<*String*> | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/Blockers.md b/gusto_embedded/docs/models/components/Blockers.md index a9c5d26fd..3f3950886 100644 --- a/gusto_embedded/docs/models/components/Blockers.md +++ b/gusto_embedded/docs/models/components/Blockers.md @@ -3,7 +3,8 @@ ## Fields -| Field | Type | Required | Description | -| ------------------------------------------------------------- | ------------------------------------------------------------- | ------------------------------------------------------------- | ------------------------------------------------------------- | -| `type` | *Optional\* | :heavy_minus_sign: | A machine-readable blocker key (e.g. `missing_bank_account`). | -| `description` | *Optional\* | :heavy_minus_sign: | Human-readable description of the blocker. | \ No newline at end of file +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | +| `field` | [Optional\](../../models/components/Field.md) | :heavy_minus_sign: | The employee field affected. | +| `category` | [Optional\](../../models/components/EmployeeOnboardingStatusCategory.md) | :heavy_minus_sign: | Category of the blocker. See the array-level description for resolution guidance. | +| `message` | *Optional\* | :heavy_minus_sign: | Human-readable description of the blocker. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/BulkReport.md b/gusto_embedded/docs/models/components/BulkReport.md new file mode 100644 index 000000000..f74c41ef5 --- /dev/null +++ b/gusto_embedded/docs/models/components/BulkReport.md @@ -0,0 +1,16 @@ +# BulkReport + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| `uuid` | *String* | :heavy_check_mark: | Unique identifier of the bulk report batch. | +| `status` | [BulkReportStatus](../../models/components/BulkReportStatus.md) | :heavy_check_mark: | Overall batch status. `pending`/`processing` while in progress; once finished, `success` (all reports succeeded), `partial_success` (some succeeded, some failed), or `failed` (none succeeded). | +| `submittedAt` | [OffsetDateTime](https://docs.oracle.com/javase/8/docs/api/java/time/OffsetDateTime.html) | :heavy_check_mark: | When the batch was accepted. | +| `completedAt` | [OffsetDateTime](https://docs.oracle.com/javase/8/docs/api/java/time/OffsetDateTime.html) | :heavy_check_mark: | When the batch reached a terminal state. Null while non-terminal. | +| `submittedItems` | *long* | :heavy_check_mark: | How many reports the partner asked for in this batch. | +| `partnerUuid` | *Optional\* | :heavy_minus_sign: | UUID of the partner that owns this batch. Returned only once the batch has finished; omitted while in progress. | +| `processedItems` | *Optional\* | :heavy_minus_sign: | How many reports succeeded. Returned only once the batch has finished; omitted while in progress. | +| `reportUrl` | *JsonNullable\* | :heavy_minus_sign: | Signed S3 URL to a zip containing every successfully-generated report, valid for 10 minutes. Returned only once the batch has finished; omitted while in progress. | +| `companies` | List\<[BulkReportCompany](../../models/components/BulkReportCompany.md)> | :heavy_minus_sign: | Per-company breakdown. Returned only once the batch has finished; omitted while in progress. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/BulkReportBody.md b/gusto_embedded/docs/models/components/BulkReportBody.md new file mode 100644 index 000000000..a492fe670 --- /dev/null +++ b/gusto_embedded/docs/models/components/BulkReportBody.md @@ -0,0 +1,10 @@ +# BulkReportBody + +Each `batch` item is a `custom_report` or a `general_ledger` report. + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | +| `batch` | List\<[BulkReportItem](../../models/components/BulkReportItem.md)> | :heavy_check_mark: | One report per item. Up to 25 items per batch, across any combination of companies the partner is mapped to. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/BulkReportCompany.md b/gusto_embedded/docs/models/components/BulkReportCompany.md new file mode 100644 index 000000000..403c65490 --- /dev/null +++ b/gusto_embedded/docs/models/components/BulkReportCompany.md @@ -0,0 +1,12 @@ +# BulkReportCompany + +Results for a single company in a bulk report batch. + + +## Fields + +| Field | Type | Required | Description | +| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `companyUuid` | *String* | :heavy_check_mark: | UUID of the company. | +| `status` | [BulkReportCompanyStatus](../../models/components/BulkReportCompanyStatus.md) | :heavy_check_mark: | This company's overall status across its `reports`:
    - `success`: every report succeeded
    - `partial_success`: some succeeded, some failed
    - `failed`: every report failed
    - `pending`: at least one report is still being generated
    | +| `reports` | List\<[BulkReportItemResult](../../models/components/BulkReportItemResult.md)> | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/BulkReportCompanyStatus.md b/gusto_embedded/docs/models/components/BulkReportCompanyStatus.md new file mode 100644 index 000000000..c82fb43b1 --- /dev/null +++ b/gusto_embedded/docs/models/components/BulkReportCompanyStatus.md @@ -0,0 +1,26 @@ +# BulkReportCompanyStatus + +This company's overall status across its `reports`: +- `success`: every report succeeded +- `partial_success`: some succeeded, some failed +- `failed`: every report failed +- `pending`: at least one report is still being generated + + +## Example Usage + +```java +import com.gusto.embedded_api.models.components.BulkReportCompanyStatus; + +BulkReportCompanyStatus value = BulkReportCompanyStatus.PENDING; +``` + + +## Values + +| Name | Value | +| ----------------- | ----------------- | +| `PENDING` | pending | +| `SUCCESS` | success | +| `PARTIAL_SUCCESS` | partial_success | +| `FAILED` | failed | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/BulkReportCustomReportItem.md b/gusto_embedded/docs/models/components/BulkReportCustomReportItem.md new file mode 100644 index 000000000..60c0cbc47 --- /dev/null +++ b/gusto_embedded/docs/models/components/BulkReportCustomReportItem.md @@ -0,0 +1,25 @@ +# BulkReportCustomReportItem + +A custom report entry in a bulk batch. + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | +| `companyUuid` | *String* | :heavy_check_mark: | UUID of the company to generate the report for. The partner must be mapped to this company. | 12345678-abcd-ef12-3456-7890abcdef12 | +| `reportType` | [ReportType](../../models/components/ReportType.md) | :heavy_check_mark: | Identifies this batch item as a custom report. | custom_report | +| `columns` | List\<[Columns](../../models/components/Columns.md)> | :heavy_check_mark: | Columns to include in the report. | | +| `groupings` | List\<[Groupings](../../models/components/Groupings.md)> | :heavy_minus_sign: | How to group the report. If omitted, defaults are derived from the requested `columns`. | | +| `fileType` | [FileType](../../models/components/FileType.md) | :heavy_check_mark: | The type of file to generate. | | +| `customName` | *Optional\* | :heavy_minus_sign: | Display name for the report. | | +| `withTotals` | *Optional\* | :heavy_minus_sign: | Whether to include subtotals and grand totals. | | +| `dateFilterType` | [Optional\](../../models/components/DateFilterType.md) | :heavy_minus_sign: | Which payroll date `start_date` and `end_date` filter against. | | +| `startDate` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_minus_sign: | Start date of data to filter by. | 2026-01-01 | +| `endDate` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_minus_sign: | End date of data to filter by. | 2026-03-31 | +| `paymentMethod` | [Optional\](../../models/components/PaymentMethod.md) | :heavy_minus_sign: | Payment method to filter by. | | +| `employmentType` | [Optional\](../../models/components/EmploymentType.md) | :heavy_minus_sign: | Employee employment type to filter by. | | +| `employmentStatus` | [Optional\](../../models/components/EmploymentStatus.md) | :heavy_minus_sign: | Employee employment status to filter by. | | +| `employeeUuids` | List\<*String*> | :heavy_minus_sign: | Employees to filter by. | | +| `departmentUuids` | List\<*String*> | :heavy_minus_sign: | Departments to filter by. | | +| `workAddressUuids` | List\<*String*> | :heavy_minus_sign: | Work addresses to filter by. | | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/BulkReportGeneralLedgerItem.md b/gusto_embedded/docs/models/components/BulkReportGeneralLedgerItem.md new file mode 100644 index 000000000..c2b22186b --- /dev/null +++ b/gusto_embedded/docs/models/components/BulkReportGeneralLedgerItem.md @@ -0,0 +1,14 @@ +# BulkReportGeneralLedgerItem + +A general ledger report entry in a bulk batch. + + +## Fields + +| Field | Type | Required | Description | Example | +| --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | +| `companyUuid` | *String* | :heavy_check_mark: | UUID of the company to generate the report for. The partner must be mapped to this company. | 12345678-abcd-ef12-3456-7890abcdef12 | +| `reportType` | [BulkReportGeneralLedgerItemReportType](../../models/components/BulkReportGeneralLedgerItemReportType.md) | :heavy_check_mark: | Identifies this batch item as a general ledger report. | general_ledger | +| `payrollUuid` | *String* | :heavy_check_mark: | The UUID of the payroll to generate the general ledger for. | | +| `aggregation` | [Aggregation](../../models/components/Aggregation.md) | :heavy_check_mark: | The breakdown of the report. Use `default` for no split. | | +| `integrationType` | *JsonNullable\* | :heavy_minus_sign: | The kind of integration set up for the company. Required when `aggregation` is `integration`; must be null otherwise. | | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/BulkReportGeneralLedgerItemReportType.md b/gusto_embedded/docs/models/components/BulkReportGeneralLedgerItemReportType.md new file mode 100644 index 000000000..4177ba673 --- /dev/null +++ b/gusto_embedded/docs/models/components/BulkReportGeneralLedgerItemReportType.md @@ -0,0 +1,18 @@ +# BulkReportGeneralLedgerItemReportType + +Identifies this batch item as a general ledger report. + +## Example Usage + +```java +import com.gusto.embedded_api.models.components.BulkReportGeneralLedgerItemReportType; + +BulkReportGeneralLedgerItemReportType value = BulkReportGeneralLedgerItemReportType.GENERAL_LEDGER; +``` + + +## Values + +| Name | Value | +| ---------------- | ---------------- | +| `GENERAL_LEDGER` | general_ledger | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/BulkReportItem.md b/gusto_embedded/docs/models/components/BulkReportItem.md new file mode 100644 index 000000000..822bc679d --- /dev/null +++ b/gusto_embedded/docs/models/components/BulkReportItem.md @@ -0,0 +1,4 @@ +# BulkReportItem + +A single report inside a bulk batch. Required fields depend on `report_type`: `custom_report` requires `columns` and `file_type`; `general_ledger` requires `payroll_uuid` and `aggregation`. + diff --git a/gusto_embedded/docs/models/components/BulkReportItemResult.md b/gusto_embedded/docs/models/components/BulkReportItemResult.md new file mode 100644 index 000000000..035a9001d --- /dev/null +++ b/gusto_embedded/docs/models/components/BulkReportItemResult.md @@ -0,0 +1,13 @@ +# BulkReportItemResult + +A single report's outcome. + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | +| `reportType` | [BulkReportItemResultReportType](../../models/components/BulkReportItemResultReportType.md) | :heavy_check_mark: | Which report this entry refers to. | +| `fileType` | *String* | :heavy_check_mark: | The report's output file type. | +| `status` | [BulkReportItemResultStatus](../../models/components/BulkReportItemResultStatus.md) | :heavy_check_mark: | The terminal state for this individual report. | +| `error` | *Optional\* | :heavy_check_mark: | A user-facing error message when status is `failed`. Null on success. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/BulkReportItemResultReportType.md b/gusto_embedded/docs/models/components/BulkReportItemResultReportType.md new file mode 100644 index 000000000..152c16429 --- /dev/null +++ b/gusto_embedded/docs/models/components/BulkReportItemResultReportType.md @@ -0,0 +1,19 @@ +# BulkReportItemResultReportType + +Which report this entry refers to. + +## Example Usage + +```java +import com.gusto.embedded_api.models.components.BulkReportItemResultReportType; + +BulkReportItemResultReportType value = BulkReportItemResultReportType.CUSTOM_REPORT; +``` + + +## Values + +| Name | Value | +| ---------------- | ---------------- | +| `CUSTOM_REPORT` | custom_report | +| `GENERAL_LEDGER` | general_ledger | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/BulkReportItemResultStatus.md b/gusto_embedded/docs/models/components/BulkReportItemResultStatus.md new file mode 100644 index 000000000..70bbe3378 --- /dev/null +++ b/gusto_embedded/docs/models/components/BulkReportItemResultStatus.md @@ -0,0 +1,20 @@ +# BulkReportItemResultStatus + +The terminal state for this individual report. + +## Example Usage + +```java +import com.gusto.embedded_api.models.components.BulkReportItemResultStatus; + +BulkReportItemResultStatus value = BulkReportItemResultStatus.PENDING; +``` + + +## Values + +| Name | Value | +| --------- | --------- | +| `PENDING` | pending | +| `SUCCESS` | success | +| `FAILED` | failed | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/BulkReportStatus.md b/gusto_embedded/docs/models/components/BulkReportStatus.md new file mode 100644 index 000000000..09ae66de6 --- /dev/null +++ b/gusto_embedded/docs/models/components/BulkReportStatus.md @@ -0,0 +1,22 @@ +# BulkReportStatus + +Overall batch status. `pending`/`processing` while in progress; once finished, `success` (all reports succeeded), `partial_success` (some succeeded, some failed), or `failed` (none succeeded). + +## Example Usage + +```java +import com.gusto.embedded_api.models.components.BulkReportStatus; + +BulkReportStatus value = BulkReportStatus.PENDING; +``` + + +## Values + +| Name | Value | +| ----------------- | ----------------- | +| `PENDING` | pending | +| `PROCESSING` | processing | +| `SUCCESS` | success | +| `PARTIAL_SUCCESS` | partial_success | +| `FAILED` | failed | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/Columns.md b/gusto_embedded/docs/models/components/Columns.md index 07cb3ac37..026811b5a 100644 --- a/gusto_embedded/docs/models/components/Columns.md +++ b/gusto_embedded/docs/models/components/Columns.md @@ -5,7 +5,7 @@ ```java import com.gusto.embedded_api.models.components.Columns; -Columns value = Columns.BANK_ACCOUNT_ACCOUNT_NUMBER; +Columns value = Columns.ADDITIONAL_EARNINGS; ``` @@ -13,6 +13,7 @@ Columns value = Columns.BANK_ACCOUNT_ACCOUNT_NUMBER; | Name | Value | | -------------------------------------- | -------------------------------------- | +| `ADDITIONAL_EARNINGS` | additional_earnings | | `BANK_ACCOUNT_ACCOUNT_NUMBER` | bank_account_account_number | | `BANK_ACCOUNT_ROUTING_NUMBER` | bank_account_routing_number | | `BANK_ACCOUNT_TYPE` | bank_account_type | @@ -42,6 +43,7 @@ Columns value = Columns.BANK_ACCOUNT_ACCOUNT_NUMBER; | `EMPLOYEE_MEDICARE_TAX` | employee_medicare_tax | | `EMPLOYEE_PHONE_NUMBER` | employee_phone_number | | `EMPLOYEE_SOCIAL_SECURITY_TAX` | employee_social_security_tax | +| `EMPLOYEE_STATE_INCOME_TAX` | employee_state_income_tax | | `EMPLOYEE_TAXES` | employee_taxes | | `EMPLOYEE_UUID` | employee_uuid | | `EMPLOYEE_WORK_EMAIL` | employee_work_email | diff --git a/gusto_embedded/docs/models/components/Contractor.md b/gusto_embedded/docs/models/components/Contractor.md index e9f68045b..78bd8a452 100644 --- a/gusto_embedded/docs/models/components/Contractor.md +++ b/gusto_embedded/docs/models/components/Contractor.md @@ -5,36 +5,37 @@ The representation of a contractor (individual or business) in Gusto. ## Fields -| Field | Type | Required | Description | Example | -| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `uuid` | *String* | :heavy_check_mark: | The UUID of the contractor in Gusto. | | -| `companyUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the company the contractor is employed by. | | -| `wageType` | [Optional\](../../models/components/WageType.md) | :heavy_minus_sign: | The contractor's wage type, either "Fixed" or "Hourly". | | -| `isActive` | *Optional\* | :heavy_minus_sign: | The status of the contractor with the company. | | -| `version` | *Optional\* | :heavy_minus_sign: | The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. | | -| `type` | [Optional\](../../models/components/ContractorType.md) | :heavy_minus_sign: | The contractor's type, either "Individual" or "Business". | | -| `firstName` | *JsonNullable\* | :heavy_minus_sign: | The contractor’s first name. This attribute is required for “Individual” contractors and will be ignored for “Business” contractors. | | -| `lastName` | *JsonNullable\* | :heavy_minus_sign: | The contractor’s last name. This attribute is required for “Individual” contractors and will be ignored for “Business” contractors. | | -| `middleInitial` | *JsonNullable\* | :heavy_minus_sign: | The contractor’s middle initial. This attribute is optional for “Individual” contractors and will be ignored for “Business” contractors. | | -| `businessName` | *JsonNullable\* | :heavy_minus_sign: | The name of the contractor business. This attribute is required for “Business” contractors and will be ignored for “Individual” contractors. | | -| `ein` | *JsonNullable\* | :heavy_minus_sign: | The Federal Employer Identification Number of the contractor business. This attribute is optional for “Business” contractors and will be ignored for “Individual” contractors. | | -| `hasEin` | *JsonNullable\* | :heavy_minus_sign: | Whether company's Employer Identification Number (EIN) is present | | -| `email` | *JsonNullable\* | :heavy_minus_sign: | The contractor’s email address. This attribute is optional for “Individual” contractors and will be ignored for “Business” contractors. | | -| `startDate` | *Optional\* | :heavy_minus_sign: | The contractor's start date. | | -| `address` | [JsonNullable\
    ](../../models/components/Address.md) | :heavy_minus_sign: | The contractor’s home address. | | -| `hourlyRate` | *Optional\* | :heavy_minus_sign: | The contractor’s hourly rate. This attribute is required if the wage_type is “Hourly”. | 50.0 | -| `fileNewHireReport` | *JsonNullable\* | :heavy_minus_sign: | The boolean flag indicating whether Gusto will file a new hire report for the contractor | | -| `workState` | *JsonNullable\* | :heavy_minus_sign: | 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. | | -| `onboarded` | *Optional\* | :heavy_minus_sign: | The updated onboarding status for the contractor | | -| `onboardingStatus` | [Optional\](../../models/components/ContractorOnboardingStatus1.md) | :heavy_minus_sign: | One of the "onboarding_status" enum values. | | -| `paymentMethod` | [JsonNullable\](../../models/components/ContractorPaymentMethod1.md) | :heavy_minus_sign: | The contractor's payment method. | | -| `hasSsn` | *Optional\* | :heavy_minus_sign: | Indicates whether the contractor has an SSN in Gusto. | | -| `departmentUuid` | *JsonNullable\* | :heavy_minus_sign: | The UUID of the department the contractor is under | | -| `department` | *JsonNullable\* | :heavy_minus_sign: | The contractor's department in the company. | | -| `departmentTitle` | *JsonNullable\* | :heavy_minus_sign: | The title of the contractor's department. | | -| `dismissalDate` | *JsonNullable\* | :heavy_minus_sign: | The contractor's dismissal date. | | -| `upcomingEmployment` | [JsonNullable\](../../models/components/UpcomingEmployment.md) | :heavy_minus_sign: | The contractor's upcoming employment details, if a rehire is scheduled. | | -| `dismissalCancellationEligible` | *Optional\* | :heavy_minus_sign: | Whether the contractor's pending dismissal can be cancelled. | | -| `rehireCancellationEligible` | *Optional\* | :heavy_minus_sign: | Whether the contractor's pending rehire can be cancelled. | | -| `memberPortalInvitationStatus` | [JsonNullable\](../../models/components/ContractorMemberPortalInvitationStatus.md) | :heavy_minus_sign: | Member portal invitation status information. Only included when the include param has the portal_invitations value set. | | -| `partnerPortalInvitationSent` | *JsonNullable\* | :heavy_minus_sign: | Whether an external partner portal invitation webhook has been sent for this contractor. Only included when the include param has the portal_invitations value set. | | \ No newline at end of file +| Field | Type | Required | Description | Example | +| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `uuid` | *String* | :heavy_check_mark: | The UUID of the contractor in Gusto. | | +| `companyUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the company the contractor is employed by. | | +| `wageType` | [Optional\](../../models/components/ContractorWageType.md) | :heavy_minus_sign: | The contractor's wage type, either "Fixed" or "Hourly". | | +| `isActive` | *Optional\* | :heavy_minus_sign: | The status of the contractor with the company. | | +| `version` | *Optional\* | :heavy_minus_sign: | The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. | | +| `type` | [Optional\](../../models/components/ContractorType.md) | :heavy_minus_sign: | The contractor's type, either "Individual" or "Business". | | +| `firstName` | *JsonNullable\* | :heavy_minus_sign: | The contractor’s first name. This attribute is required for “Individual” contractors and will be ignored for “Business” contractors. | | +| `lastName` | *JsonNullable\* | :heavy_minus_sign: | The contractor’s last name. This attribute is required for “Individual” contractors and will be ignored for “Business” contractors. | | +| `middleInitial` | *JsonNullable\* | :heavy_minus_sign: | The contractor’s middle initial. This attribute is optional for “Individual” contractors and will be ignored for “Business” contractors. | | +| `businessName` | *JsonNullable\* | :heavy_minus_sign: | The name of the contractor business. This attribute is required for “Business” contractors and will be ignored for “Individual” contractors. | | +| `ein` | *JsonNullable\* | :heavy_minus_sign: | The Federal Employer Identification Number of the contractor business. This attribute is optional for “Business” contractors and will be ignored for “Individual” contractors. | | +| `hasEin` | *JsonNullable\* | :heavy_minus_sign: | Whether company's Employer Identification Number (EIN) is present | | +| `email` | *JsonNullable\* | :heavy_minus_sign: | The contractor’s email address. This attribute is optional for “Individual” contractors and will be ignored for “Business” contractors. | | +| `workEmail` | *JsonNullable\* | :heavy_minus_sign: | The work email address of the contractor. This is provided to support syncing users between our system and yours. You may not use this email address for any other purpose (e.g. marketing). | | +| `startDate` | *Optional\* | :heavy_minus_sign: | The contractor's start date. | | +| `address` | [JsonNullable\
    ](../../models/components/Address.md) | :heavy_minus_sign: | The contractor’s home address. | | +| `hourlyRate` | *Optional\* | :heavy_minus_sign: | The contractor’s hourly rate. This attribute is required if the wage_type is “Hourly”. | 50.0 | +| `fileNewHireReport` | *JsonNullable\* | :heavy_minus_sign: | The boolean flag indicating whether Gusto will file a new hire report for the contractor | | +| `workState` | *JsonNullable\* | :heavy_minus_sign: | 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. | | +| `onboarded` | *Optional\* | :heavy_minus_sign: | The updated onboarding status for the contractor | | +| `onboardingStatus` | [Optional\](../../models/components/OnboardingStatus.md) | :heavy_minus_sign: | One of the "onboarding_status" enum values. | | +| `paymentMethod` | [JsonNullable\](../../models/components/ContractorPaymentMethod1.md) | :heavy_minus_sign: | The contractor's payment method. | | +| `hasSsn` | *Optional\* | :heavy_minus_sign: | Indicates whether the contractor has an SSN in Gusto. | | +| `departmentUuid` | *JsonNullable\* | :heavy_minus_sign: | The UUID of the department the contractor is under | | +| `department` | *JsonNullable\* | :heavy_minus_sign: | The contractor's department in the company. | | +| `departmentTitle` | *JsonNullable\* | :heavy_minus_sign: | The title of the contractor's department. | | +| `dismissalDate` | *JsonNullable\* | :heavy_minus_sign: | The contractor's dismissal date. | | +| `upcomingEmployment` | [JsonNullable\](../../models/components/UpcomingEmployment.md) | :heavy_minus_sign: | The contractor's upcoming employment details, if a rehire is scheduled. | | +| `dismissalCancellationEligible` | *Optional\* | :heavy_minus_sign: | Whether the contractor's pending dismissal can be cancelled. | | +| `rehireCancellationEligible` | *Optional\* | :heavy_minus_sign: | Whether the contractor's pending rehire can be cancelled. | | +| `memberPortalInvitationStatus` | [JsonNullable\](../../models/components/MemberPortalInvitationStatus.md) | :heavy_minus_sign: | Member portal invitation status information. Only included when the include param has the portal_invitations value set. | | +| `partnerPortalInvitationSent` | *JsonNullable\* | :heavy_minus_sign: | Whether an external partner portal invitation webhook has been sent for this contractor. Only included when the include param has the portal_invitations value set. | | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/ContractorAddress.md b/gusto_embedded/docs/models/components/ContractorAddress.md index 782ff1953..9927dcc3a 100644 --- a/gusto_embedded/docs/models/components/ContractorAddress.md +++ b/gusto_embedded/docs/models/components/ContractorAddress.md @@ -13,4 +13,5 @@ | `zip` | *JsonNullable\* | :heavy_minus_sign: | N/A | | `country` | *JsonNullable\* | :heavy_minus_sign: | N/A | | `active` | *Optional\* | :heavy_minus_sign: | The status of the location. Inactive locations have been deleted, but may still have historical data associated with them. | -| `version` | *Optional\* | :heavy_minus_sign: | The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. | \ No newline at end of file +| `version` | *Optional\* | :heavy_minus_sign: | The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. | +| `warnings` | List\<[WarningObject](../../models/components/WarningObject.md)> | :heavy_minus_sign: | An array of warning objects that provide additional information about the address. Warnings do not prevent the address from being saved. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/ContractorCreateRequestBody.md b/gusto_embedded/docs/models/components/ContractorCreateRequestBody.md index 9507c9ce2..9c18cf5c1 100644 --- a/gusto_embedded/docs/models/components/ContractorCreateRequestBody.md +++ b/gusto_embedded/docs/models/components/ContractorCreateRequestBody.md @@ -13,6 +13,7 @@ Request body for creating a contractor. | `hourlyRate` | *Optional\* | :heavy_minus_sign: | The contractor’s hourly rate. This attribute is required if the wage_type is `Hourly`. | 40.0 | | `selfOnboarding` | *Optional\* | :heavy_minus_sign: | Whether the contractor or the payroll admin will complete onboarding in Gusto.
    Self-onboarding is recommended so that contractors receive Gusto accounts.
    If self_onboarding is true, then email is required. | | | `email` | *Optional\* | :heavy_minus_sign: | The contractor’s email address. | | +| `workEmail` | *Optional\* | :heavy_minus_sign: | The work email address of the contractor. This is provided to support syncing users between our system and yours. You may not use this email address for any other purpose (e.g. marketing). | | | `firstName` | *Optional\* | :heavy_minus_sign: | The contractor’s first name.
    This attribute is required for `Individual` contractors and will be ignored for `Business` contractors. | | | `lastName` | *Optional\* | :heavy_minus_sign: | The contractor’s last name.
    This attribute is required for `Individual` contractors and will be ignored for `Business` contractors. | | | `middleInitial` | *Optional\* | :heavy_minus_sign: | The contractor’s middle initial.
    This attribute is optional for `Individual` contractors and will be ignored for `Business` contractors. | | diff --git a/gusto_embedded/docs/models/components/ContractorOnboardingStatus1.md b/gusto_embedded/docs/models/components/ContractorOnboardingStatus1.md deleted file mode 100644 index 9afd0ee79..000000000 --- a/gusto_embedded/docs/models/components/ContractorOnboardingStatus1.md +++ /dev/null @@ -1,24 +0,0 @@ -# ContractorOnboardingStatus1 - -One of the "onboarding_status" enum values. - -## Example Usage - -```java -import com.gusto.embedded_api.models.components.ContractorOnboardingStatus1; - -ContractorOnboardingStatus1 value = ContractorOnboardingStatus1.ADMIN_ONBOARDING_INCOMPLETE; -``` - - -## Values - -| Name | Value | -| ----------------------------- | ----------------------------- | -| `ADMIN_ONBOARDING_INCOMPLETE` | admin_onboarding_incomplete | -| `ADMIN_ONBOARDING_REVIEW` | admin_onboarding_review | -| `SELF_ONBOARDING_NOT_INVITED` | self_onboarding_not_invited | -| `SELF_ONBOARDING_INVITED` | self_onboarding_invited | -| `SELF_ONBOARDING_STARTED` | self_onboarding_started | -| `SELF_ONBOARDING_REVIEW` | self_onboarding_review | -| `ONBOARDING_COMPLETED` | onboarding_completed | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/ContractorPaymentDetailsList.md b/gusto_embedded/docs/models/components/ContractorPaymentDetailsList.md index a393d2b51..db2d5093b 100644 --- a/gusto_embedded/docs/models/components/ContractorPaymentDetailsList.md +++ b/gusto_embedded/docs/models/components/ContractorPaymentDetailsList.md @@ -9,5 +9,5 @@ | `paymentMethod` | [Optional\](../../models/components/ContractorPaymentDetailsListPaymentMethod.md) | :heavy_minus_sign: | N/A | | `firstName` | *Optional\* | :heavy_minus_sign: | N/A | | `lastName` | *Optional\* | :heavy_minus_sign: | N/A | -| `splitBy` | [JsonNullable\](../../models/components/ContractorPaymentDetailsListSplitBy.md) | :heavy_minus_sign: | Describes how the payment will be split. If split_by is Percentage, then the split amounts must add up to exactly 100. If split_by is Amount, then the amount represents cents and the last split amount must be `null` to capture the remainder. | -| `splits` | List\<[ContractorPaymentDetailsListSplits](../../models/components/ContractorPaymentDetailsListSplits.md)> | :heavy_minus_sign: | N/A | \ No newline at end of file +| `splitBy` | [JsonNullable\](../../models/components/SplitBy.md) | :heavy_minus_sign: | Describes how the payment will be split. If split_by is Percentage, then the split amounts must add up to exactly 100. If split_by is Amount, then the amount represents cents and the last split amount must be `null` to capture the remainder. | +| `splits` | List\<[Splits](../../models/components/Splits.md)> | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/ContractorPaymentDetailsListSplitBy.md b/gusto_embedded/docs/models/components/ContractorPaymentDetailsListSplitBy.md deleted file mode 100644 index 493b8592a..000000000 --- a/gusto_embedded/docs/models/components/ContractorPaymentDetailsListSplitBy.md +++ /dev/null @@ -1,17 +0,0 @@ -# ContractorPaymentDetailsListSplitBy - -## Example Usage - -```java -import com.gusto.embedded_api.models.components.ContractorPaymentDetailsListSplitBy; - -ContractorPaymentDetailsListSplitBy value = ContractorPaymentDetailsListSplitBy.AMOUNT; -``` - - -## Values - -| Name | Value | -| ------------ | ------------ | -| `AMOUNT` | Amount | -| `PERCENTAGE` | Percentage | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/ContractorPaymentForGroupPreview.md b/gusto_embedded/docs/models/components/ContractorPaymentForGroupPreview.md index 3692137c4..ff0dddb1f 100644 --- a/gusto_embedded/docs/models/components/ContractorPaymentForGroupPreview.md +++ b/gusto_embedded/docs/models/components/ContractorPaymentForGroupPreview.md @@ -17,5 +17,5 @@ Preview representation of a single contractor payment with nullable uuid. | `hourlyRate` | *Optional\* | :heavy_minus_sign: | The rate per hour worked for the payment. | | `mayCancel` | *Optional\* | :heavy_minus_sign: | Determine if the contractor payment can be cancelled. | | `wage` | *Optional\* | :heavy_minus_sign: | The fixed wage of the payment, regardless of hours worked. | -| `wageType` | [Optional\](../../models/components/ContractorPaymentForGroupPreviewWageType.md) | :heavy_minus_sign: | The wage type for the payment. | +| `wageType` | [Optional\](../../models/components/WageType.md) | :heavy_minus_sign: | The wage type for the payment. | | `wageTotal` | *Optional\* | :heavy_minus_sign: | (hours * hourly_rate) + wage + bonus | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/ContractorPaymentGroupPreview.md b/gusto_embedded/docs/models/components/ContractorPaymentGroupPreview.md index 3783123f7..bf2893ac1 100644 --- a/gusto_embedded/docs/models/components/ContractorPaymentGroupPreview.md +++ b/gusto_embedded/docs/models/components/ContractorPaymentGroupPreview.md @@ -16,5 +16,5 @@ Preview of a contractor payment group | `partnerOwnedDisbursement` | *JsonNullable\* | :heavy_minus_sign: | Whether the disbursement is partner owned. | | `submissionBlockers` | List\<[PayrollSubmissionBlockerType](../../models/components/PayrollSubmissionBlockerType.md)> | :heavy_minus_sign: | List of submission blockers for the contractor payment group. | | `creditBlockers` | List\<[PayrollCreditBlockerType](../../models/components/PayrollCreditBlockerType.md)> | :heavy_minus_sign: | List of credit blockers for the contractor payment group. | -| `totals` | [Optional\](../../models/components/ContractorPaymentGroupPreviewTotals.md) | :heavy_minus_sign: | N/A | +| `totals` | [Optional\](../../models/components/Totals.md) | :heavy_minus_sign: | N/A | | `contractorPayments` | List\<[ContractorPaymentForGroupPreview](../../models/components/ContractorPaymentForGroupPreview.md)> | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/ContractorPaymentGroupPreviewTotals.md b/gusto_embedded/docs/models/components/ContractorPaymentGroupPreviewTotals.md deleted file mode 100644 index 99c1c6cea..000000000 --- a/gusto_embedded/docs/models/components/ContractorPaymentGroupPreviewTotals.md +++ /dev/null @@ -1,12 +0,0 @@ -# ContractorPaymentGroupPreviewTotals - - -## Fields - -| Field | Type | Required | Description | -| ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | -| `amount` | *Optional\* | :heavy_minus_sign: | The total amount for the group of contractor payments. | -| `debitAmount` | *Optional\* | :heavy_minus_sign: | The total debit amount for the group of contractor payments. Sum of wage & reimbursement amount. | -| `wageAmount` | *Optional\* | :heavy_minus_sign: | The total wage amount for the group of contractor payments. | -| `reimbursementAmount` | *Optional\* | :heavy_minus_sign: | The total reimbursement amount for the group of contractor payments. | -| `checkAmount` | *Optional\* | :heavy_minus_sign: | The total check amount for the group of contractor payments. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/ContractorPaymentListing.md b/gusto_embedded/docs/models/components/ContractorPaymentListing.md new file mode 100644 index 000000000..be5d0c023 --- /dev/null +++ b/gusto_embedded/docs/models/components/ContractorPaymentListing.md @@ -0,0 +1,20 @@ +# ContractorPaymentListing + +The representation of a contractor payment as it appears in a contractor's payment history. + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | +| `uuid` | *String* | :heavy_check_mark: | The unique identifier of the contractor payment in Gusto. | +| `checkDate` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_minus_sign: | The check date for the payment. | +| `bonus` | *Optional\* | :heavy_minus_sign: | The bonus amount in the payment. | +| `hours` | *Optional\* | :heavy_minus_sign: | The number of hours worked for the payment. | +| `hourlyRate` | *Optional\* | :heavy_minus_sign: | The rate per hour worked for the payment. | +| `paymentMethod` | [Optional\](../../models/components/ContractorPaymentListingPaymentMethod.md) | :heavy_minus_sign: | The payment method. | +| `reimbursement` | *Optional\* | :heavy_minus_sign: | The reimbursement amount in the payment. | +| `status` | [Optional\](../../models/components/ContractorPaymentListingStatus.md) | :heavy_minus_sign: | Contractor payment status | +| `wage` | *Optional\* | :heavy_minus_sign: | The fixed wage of the payment, regardless of hours worked. | +| `wageType` | [Optional\](../../models/components/ContractorPaymentListingWageType.md) | :heavy_minus_sign: | The wage type for the payment. | +| `wageTotal` | *Optional\* | :heavy_minus_sign: | (hours * hourly_rate) + wage + bonus | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/ContractorPaymentListingPaymentMethod.md b/gusto_embedded/docs/models/components/ContractorPaymentListingPaymentMethod.md new file mode 100644 index 000000000..4b93da598 --- /dev/null +++ b/gusto_embedded/docs/models/components/ContractorPaymentListingPaymentMethod.md @@ -0,0 +1,21 @@ +# ContractorPaymentListingPaymentMethod + +The payment method. + +## Example Usage + +```java +import com.gusto.embedded_api.models.components.ContractorPaymentListingPaymentMethod; + +ContractorPaymentListingPaymentMethod value = ContractorPaymentListingPaymentMethod.DIRECT_DEPOSIT; +``` + + +## Values + +| Name | Value | +| -------------------- | -------------------- | +| `DIRECT_DEPOSIT` | Direct Deposit | +| `CHECK` | Check | +| `HISTORICAL_PAYMENT` | Historical Payment | +| `CORRECTION_PAYMENT` | Correction Payment | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/ContractorPaymentListingStatus.md b/gusto_embedded/docs/models/components/ContractorPaymentListingStatus.md new file mode 100644 index 000000000..c00348370 --- /dev/null +++ b/gusto_embedded/docs/models/components/ContractorPaymentListingStatus.md @@ -0,0 +1,19 @@ +# ContractorPaymentListingStatus + +Contractor payment status + +## Example Usage + +```java +import com.gusto.embedded_api.models.components.ContractorPaymentListingStatus; + +ContractorPaymentListingStatus value = ContractorPaymentListingStatus.FUNDED; +``` + + +## Values + +| Name | Value | +| ---------- | ---------- | +| `FUNDED` | Funded | +| `UNFUNDED` | Unfunded | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/ContractorPaymentForGroupPreviewWageType.md b/gusto_embedded/docs/models/components/ContractorPaymentListingWageType.md similarity index 58% rename from gusto_embedded/docs/models/components/ContractorPaymentForGroupPreviewWageType.md rename to gusto_embedded/docs/models/components/ContractorPaymentListingWageType.md index d617c2000..64f7f2586 100644 --- a/gusto_embedded/docs/models/components/ContractorPaymentForGroupPreviewWageType.md +++ b/gusto_embedded/docs/models/components/ContractorPaymentListingWageType.md @@ -1,13 +1,13 @@ -# ContractorPaymentForGroupPreviewWageType +# ContractorPaymentListingWageType The wage type for the payment. ## Example Usage ```java -import com.gusto.embedded_api.models.components.ContractorPaymentForGroupPreviewWageType; +import com.gusto.embedded_api.models.components.ContractorPaymentListingWageType; -ContractorPaymentForGroupPreviewWageType value = ContractorPaymentForGroupPreviewWageType.HOURLY; +ContractorPaymentListingWageType value = ContractorPaymentListingWageType.HOURLY; ``` diff --git a/gusto_embedded/docs/models/components/ContractorPaymentReceipt.md b/gusto_embedded/docs/models/components/ContractorPaymentReceipt.md index 52b5de482..f2fd2d6c0 100644 --- a/gusto_embedded/docs/models/components/ContractorPaymentReceipt.md +++ b/gusto_embedded/docs/models/components/ContractorPaymentReceipt.md @@ -15,5 +15,5 @@ | `rightToRefund` | *Optional\* | :heavy_minus_sign: | URL for information related to right to refund. Always the fixed string "https://gusto.com/about/licenses" | | | `liabilityOfLicensee` | *Optional\* | :heavy_minus_sign: | URL for information related to right to liability of licensee. Always the fixed string "https://gusto.com/about/licenses" | | | `totals` | [Optional\](../../models/components/ContractorPaymentReceiptTotals.md) | :heavy_minus_sign: | The subtotals for the contractor payment. | | -| `contractorPayments` | List\<[ContractorPayments](../../models/components/ContractorPayments.md)> | :heavy_minus_sign: | An array of contractor payments for this contractor payment. | | -| `licensee` | [Optional\](../../models/components/ContractorPaymentReceiptLicensee.md) | :heavy_minus_sign: | The licensed payroll processor | | \ No newline at end of file +| `contractorPayments` | List\<[ContractorPaymentReceiptContractorPayments](../../models/components/ContractorPaymentReceiptContractorPayments.md)> | :heavy_minus_sign: | An array of contractor payments for this contractor payment. | | +| `licensee` | [Optional\](../../models/components/Licensee.md) | :heavy_minus_sign: | The licensed payroll processor | | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/ContractorPaymentReceiptContractorPayments.md b/gusto_embedded/docs/models/components/ContractorPaymentReceiptContractorPayments.md new file mode 100644 index 000000000..c2b4897c0 --- /dev/null +++ b/gusto_embedded/docs/models/components/ContractorPaymentReceiptContractorPayments.md @@ -0,0 +1,16 @@ +# ContractorPaymentReceiptContractorPayments + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | +| `contractorUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the contractor. | +| `contractorFirstName` | *Optional\* | :heavy_minus_sign: | The first name of the contractor. Applies when `contractor_type` is `Individual`. | +| `contractorLastName` | *Optional\* | :heavy_minus_sign: | The last name of the contractor. Applies when `contractor_type` is `Individual`. | +| `contractorBusinessName` | *Optional\* | :heavy_minus_sign: | The business name of the contractor. Applies when `contractor_type` is `Business`. | +| `contractorType` | *Optional\* | :heavy_minus_sign: | The type of contractor.

    `Individual` `Business` | +| `paymentMethod` | [Optional\](../../models/components/ContractorPaymentReceiptPaymentMethod.md) | :heavy_minus_sign: | The payment method. | +| `wage` | *Optional\* | :heavy_minus_sign: | The fixed wage of the payment, regardless of hours worked. | +| `bonus` | *Optional\* | :heavy_minus_sign: | The bonus amount in the payment. | +| `reimbursement` | *Optional\* | :heavy_minus_sign: | The reimbursement amount in the payment. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/ContractorPaymentSummary.md b/gusto_embedded/docs/models/components/ContractorPaymentSummary.md index 60f4326a5..c3777cb7f 100644 --- a/gusto_embedded/docs/models/components/ContractorPaymentSummary.md +++ b/gusto_embedded/docs/models/components/ContractorPaymentSummary.md @@ -5,7 +5,7 @@ The representation of the summary of contractor payments for a given company in ## Fields -| Field | Type | Required | Description | -| -------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | -| `total` | [Optional\](../../models/components/Total.md) | :heavy_minus_sign: | The wage and reimbursement totals for all contractor payments within a given time period. | -| `contractorPayments` | List\<[ContractorPaymentSummaryContractorPayments](../../models/components/ContractorPaymentSummaryContractorPayments.md)> | :heavy_minus_sign: | The individual contractor payments, within a given time period, grouped by contractor. | \ No newline at end of file +| Field | Type | Required | Description | +| ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | +| `total` | [Optional\](../../models/components/Total.md) | :heavy_minus_sign: | The wage and reimbursement totals for all contractor payments within a given time period. | +| `contractorPayments` | List\<[ContractorPayments](../../models/components/ContractorPayments.md)> | :heavy_minus_sign: | The individual contractor payments, within a given time period, grouped by contractor. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/ContractorPaymentSummaryContractorPayments.md b/gusto_embedded/docs/models/components/ContractorPaymentSummaryContractorPayments.md deleted file mode 100644 index 24e1c0548..000000000 --- a/gusto_embedded/docs/models/components/ContractorPaymentSummaryContractorPayments.md +++ /dev/null @@ -1,11 +0,0 @@ -# ContractorPaymentSummaryContractorPayments - - -## Fields - -| Field | Type | Required | Description | -| ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | -| `contractorUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the contractor. | -| `reimbursementTotal` | *Optional\* | :heavy_minus_sign: | The total reimbursements for the contractor within a given time period. | -| `wageTotal` | *Optional\* | :heavy_minus_sign: | The total wages for the contractor within a given time period. | -| `payments` | List\<[ContractorPayment](../../models/components/ContractorPayment.md)> | :heavy_minus_sign: | The contractor's payments within a given time period. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/ContractorPayments.md b/gusto_embedded/docs/models/components/ContractorPayments.md index e474adff9..bda0472ae 100644 --- a/gusto_embedded/docs/models/components/ContractorPayments.md +++ b/gusto_embedded/docs/models/components/ContractorPayments.md @@ -3,14 +3,9 @@ ## Fields -| Field | Type | Required | Description | -| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -| `contractorUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the contractor. | -| `contractorFirstName` | *Optional\* | :heavy_minus_sign: | The first name of the contractor. Applies when `contractor_type` is `Individual`. | -| `contractorLastName` | *Optional\* | :heavy_minus_sign: | The last name of the contractor. Applies when `contractor_type` is `Individual`. | -| `contractorBusinessName` | *Optional\* | :heavy_minus_sign: | The business name of the contractor. Applies when `contractor_type` is `Business`. | -| `contractorType` | *Optional\* | :heavy_minus_sign: | The type of contractor.

    `Individual` `Business` | -| `paymentMethod` | [Optional\](../../models/components/ContractorPaymentReceiptPaymentMethod.md) | :heavy_minus_sign: | The payment method. | -| `wage` | *Optional\* | :heavy_minus_sign: | The fixed wage of the payment, regardless of hours worked. | -| `bonus` | *Optional\* | :heavy_minus_sign: | The bonus amount in the payment. | -| `reimbursement` | *Optional\* | :heavy_minus_sign: | The reimbursement amount in the payment. | \ No newline at end of file +| Field | Type | Required | Description | +| ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | +| `contractorUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the contractor. | +| `reimbursementTotal` | *Optional\* | :heavy_minus_sign: | The total reimbursements for the contractor within a given time period. | +| `wageTotal` | *Optional\* | :heavy_minus_sign: | The total wages for the contractor within a given time period. | +| `payments` | List\<[ContractorPayment](../../models/components/ContractorPayment.md)> | :heavy_minus_sign: | The contractor's payments within a given time period. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/ContractorUpdateRequestBody.md b/gusto_embedded/docs/models/components/ContractorUpdateRequestBody.md index aafda5b88..b4cf16a09 100644 --- a/gusto_embedded/docs/models/components/ContractorUpdateRequestBody.md +++ b/gusto_embedded/docs/models/components/ContractorUpdateRequestBody.md @@ -14,6 +14,7 @@ Request body for updating a contractor. | `hourlyRate` | *Optional\* | :heavy_minus_sign: | The contractor’s hourly rate. This attribute is required if the wage_type is `Hourly`. | 40.0 | | `selfOnboarding` | *Optional\* | :heavy_minus_sign: | Whether the contractor or the payroll admin will complete onboarding in Gusto.
    Self-onboarding is recommended so that contractors receive Gusto accounts.
    If self_onboarding is true, then email is required. | | | `email` | *Optional\* | :heavy_minus_sign: | The contractor’s email address. | | +| `workEmail` | *Optional\* | :heavy_minus_sign: | The work email address of the contractor. This is provided to support syncing users between our system and yours. You may not use this email address for any other purpose (e.g. marketing). | | | `firstName` | *Optional\* | :heavy_minus_sign: | The contractor’s first name.
    This attribute is required for `Individual` contractors and will be ignored for `Business` contractors. | | | `lastName` | *Optional\* | :heavy_minus_sign: | The contractor’s last name.
    This attribute is required for `Individual` contractors and will be ignored for `Business` contractors. | | | `middleInitial` | *Optional\* | :heavy_minus_sign: | The contractor’s middle initial.
    This attribute is optional for `Individual` contractors and will be ignored for `Business` contractors. | | diff --git a/gusto_embedded/docs/models/components/ContractorWageType.md b/gusto_embedded/docs/models/components/ContractorWageType.md new file mode 100644 index 000000000..c4a434cef --- /dev/null +++ b/gusto_embedded/docs/models/components/ContractorWageType.md @@ -0,0 +1,19 @@ +# ContractorWageType + +The contractor's wage type, either "Fixed" or "Hourly". + +## Example Usage + +```java +import com.gusto.embedded_api.models.components.ContractorWageType; + +ContractorWageType value = ContractorWageType.FIXED; +``` + + +## Values + +| Name | Value | +| -------- | -------- | +| `FIXED` | Fixed | +| `HOURLY` | Hourly | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/Contribution.md b/gusto_embedded/docs/models/components/Contribution.md index 775293e49..cd61e24a1 100644 --- a/gusto_embedded/docs/models/components/Contribution.md +++ b/gusto_embedded/docs/models/components/Contribution.md @@ -5,7 +5,9 @@ An object representing the type and value of the company contribution. ## Fields -| Field | Type | Required | Description | -| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `type` | *Optional\* | :heavy_minus_sign: | The company contribution scheme.

    "amount": The company contributes a fixed amount per payroll. If elective is true, the contribution is matching, dollar-for-dollar.

    "percentage": The company contributes a percentage of the payroll amount per payroll period. If elective is true, the contribution is matching, dollar-for-dollar.

    "tiered": The company contribution varies according to the size of the employee deduction. | -| `value` | [Optional\](../../models/components/EmployeeBenefitValue.md) | :heavy_minus_sign: | For the `amount` and `percentage` contribution types, the value of the corresponding amount or percentage.

    For the `tiered` contribution type, an array of tiers. | \ No newline at end of file +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | +| `required` | *Optional\* | :heavy_minus_sign: | N/A | +| `editable` | *Optional\* | :heavy_minus_sign: | N/A | +| `defaultValue` | [JsonNullable\](../../models/components/BenefitTypeRequirementsDefaultValue.md) | :heavy_minus_sign: | N/A | +| `choices` | List\<*String*> | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/CreateBulkReport.md b/gusto_embedded/docs/models/components/CreateBulkReport.md new file mode 100644 index 000000000..c8188d84e --- /dev/null +++ b/gusto_embedded/docs/models/components/CreateBulkReport.md @@ -0,0 +1,9 @@ +# CreateBulkReport + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `uuid` | *String* | :heavy_check_mark: | Unique identifier of the bulk report batch. | +| `status` | [Status](../../models/components/Status.md) | :heavy_check_mark: | The batch's processing state.
    - `pending`: accepted, not yet started
    - `processing`: reports are being generated
    - `completed`: all reports finished
    - `failed`: the batch failed before completing
    | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/CreateReportBody.md b/gusto_embedded/docs/models/components/CreateReportBody.md index 9ff6e15d5..769de0278 100644 --- a/gusto_embedded/docs/models/components/CreateReportBody.md +++ b/gusto_embedded/docs/models/components/CreateReportBody.md @@ -7,17 +7,18 @@ Request body for creating a custom report. | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | -| `columns` | List\<[Columns](../../models/components/Columns.md)> | :heavy_check_mark: | Columns to include in the report | | -| `groupings` | List\<[Groupings](../../models/components/Groupings.md)> | :heavy_check_mark: | How to group the report | | +| `columns` | List\<[CreateReportBodyColumns](../../models/components/CreateReportBodyColumns.md)> | :heavy_check_mark: | Columns to include in the report | | +| `groupings` | List\<[CreateReportBodyGroupings](../../models/components/CreateReportBodyGroupings.md)> | :heavy_minus_sign: | Optional. How to group the report. If omitted, sensible defaults are derived from the `columns` requested. | | | `customName` | *Optional\* | :heavy_minus_sign: | The title of the report | | -| `fileType` | [FileType](../../models/components/FileType.md) | :heavy_check_mark: | The type of file to generate | | +| `fileType` | [CreateReportBodyFileType](../../models/components/CreateReportBodyFileType.md) | :heavy_check_mark: | The type of file to generate | | | `withTotals` | *Optional\* | :heavy_minus_sign: | Whether to include subtotals and grand totals in the report | | +| `dateFilterType` | [Optional\](../../models/components/CreateReportBodyDateFilterType.md) | :heavy_minus_sign: | Which payroll date `start_date` and `end_date` filter against. | | | `startDate` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_minus_sign: | Start date of data to filter by | 2024-01-01 | | `endDate` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_minus_sign: | End date of data to filter by | 2024-04-01 | | `dismissedStartDate` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_minus_sign: | Dismissed start date of employees to filter by | 2024-01-01 | | `dismissedEndDate` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_minus_sign: | Dismissed end date of employees to filter by | 2024-04-01 | | `paymentMethod` | [Optional\](../../models/components/CreateReportBodyPaymentMethod.md) | :heavy_minus_sign: | Payment method to filter by | | -| `employmentType` | [Optional\](../../models/components/EmploymentType.md) | :heavy_minus_sign: | Employee employment type to filter by | | +| `employmentType` | [Optional\](../../models/components/CreateReportBodyEmploymentType.md) | :heavy_minus_sign: | Employee employment type to filter by | | | `employmentStatus` | [Optional\](../../models/components/CreateReportBodyEmploymentStatus.md) | :heavy_minus_sign: | Employee employment status to filter by | | | `employeeUuids` | List\<*String*> | :heavy_minus_sign: | Employees to filter by | | | `departmentUuids` | List\<*String*> | :heavy_minus_sign: | Departments to filter by | | diff --git a/gusto_embedded/docs/models/components/CreateReportBodyColumns.md b/gusto_embedded/docs/models/components/CreateReportBodyColumns.md new file mode 100644 index 000000000..ee5073110 --- /dev/null +++ b/gusto_embedded/docs/models/components/CreateReportBodyColumns.md @@ -0,0 +1,101 @@ +# CreateReportBodyColumns + +## Example Usage + +```java +import com.gusto.embedded_api.models.components.CreateReportBodyColumns; + +CreateReportBodyColumns value = CreateReportBodyColumns.ADDITIONAL_EARNINGS; +``` + + +## Values + +| Name | Value | +| -------------------------------------- | -------------------------------------- | +| `ADDITIONAL_EARNINGS` | additional_earnings | +| `BANK_ACCOUNT_ACCOUNT_NUMBER` | bank_account_account_number | +| `BANK_ACCOUNT_ROUTING_NUMBER` | bank_account_routing_number | +| `BANK_ACCOUNT_TYPE` | bank_account_type | +| `BANK_ACCOUNT` | bank_account | +| `BONUS` | bonus | +| `CASH_TIPS` | cash_tips | +| `CHECK_AMOUNT` | check_amount | +| `CHECK_DATE` | check_date | +| `COMMISSION` | commission | +| `DATE_OF_BIRTH` | date_of_birth | +| `DOUBLE_OVERTIME_EARNINGS` | double_overtime_earnings | +| `DOUBLE_OVERTIME_HOURS` | double_overtime_hours | +| `DOUBLE_OVERTIME_RATE` | double_overtime_rate | +| `EMPLOYEE_ADDITIONAL_TAXES` | employee_additional_taxes | +| `EMPLOYEE_BENEFIT_CONTRIBUTIONS` | employee_benefit_contributions | +| `EMPLOYEE_COMPENSATION_TIME_PERIOD` | employee_compensation_time_period | +| `EMPLOYEE_COMPENSATION` | employee_compensation | +| `EMPLOYEE_DEDUCTIONS` | employee_deductions | +| `EMPLOYEE_DEPARTMENT` | employee_department | +| `EMPLOYEE_EMAIL` | employee_email | +| `EMPLOYEE_DONATIONS` | employee_donations | +| `EMPLOYEE_FEDERAL_INCOME_TAX` | employee_federal_income_tax | +| `EMPLOYEE_FIRST_NAME` | employee_first_name | +| `EMPLOYEE_LAST_NAME` | employee_last_name | +| `EMPLOYEE_MIDDLE_INITIAL` | employee_middle_initial | +| `EMPLOYEE_MEDICARE_ADDITIONAL_TAX` | employee_medicare_additional_tax | +| `EMPLOYEE_MEDICARE_TAX` | employee_medicare_tax | +| `EMPLOYEE_PHONE_NUMBER` | employee_phone_number | +| `EMPLOYEE_SOCIAL_SECURITY_TAX` | employee_social_security_tax | +| `EMPLOYEE_STATE_INCOME_TAX` | employee_state_income_tax | +| `EMPLOYEE_TAXES` | employee_taxes | +| `EMPLOYEE_UUID` | employee_uuid | +| `EMPLOYEE_WORK_EMAIL` | employee_work_email | +| `EMPLOYER_ADDITIONAL_TAXES` | employer_additional_taxes | +| `EMPLOYER_BENEFIT_CONTRIBUTIONS` | employer_benefit_contributions | +| `EMPLOYER_COST` | employer_cost | +| `EMPLOYER_FUTA_TAX` | employer_futa_tax | +| `EMPLOYER_MEDICARE_TAX` | employer_medicare_tax | +| `EMPLOYER_SOCIAL_SECURITY_TAX` | employer_social_security_tax | +| `EMPLOYER_SUTA_TAX` | employer_suta_tax | +| `EMPLOYER_TAXES` | employer_taxes | +| `EMPLOYMENT_TYPE` | employment_type | +| `EMPLOYMENT` | employment | +| `END_DATE` | end_date | +| `GARNISHMENTS` | garnishments | +| `GROSS_EARNINGS` | gross_earnings | +| `HOLIDAY_EARNINGS` | holiday_earnings | +| `HOLIDAY_HOURS` | holiday_hours | +| `HOME_ADDRESS_CITY` | home_address_city | +| `HOME_ADDRESS_STATE` | home_address_state | +| `HOME_ADDRESS_STREET` | home_address_street | +| `HOME_ADDRESS_ZIP` | home_address_zip | +| `HOME_ADDRESS` | home_address | +| `JOB_TITLE` | job_title | +| `NET_PAY` | net_pay | +| `ONE_TIME_REIMBURSEMENTS` | one_time_reimbursements | +| `OVERTIME_EARNINGS` | overtime_earnings | +| `OVERTIME_HOURS` | overtime_hours | +| `OVERTIME_RATE` | overtime_rate | +| `PAID_TIME_OFF_EARNINGS` | paid_time_off_earnings | +| `PAID_TIME_OFF_HOURS` | paid_time_off_hours | +| `PAID_TIME_OFF_RATE` | paid_time_off_rate | +| `PAY_PERIOD_END` | pay_period_end | +| `PAY_PERIOD_START` | pay_period_start | +| `PAYCHECK_TIPS` | paycheck_tips | +| `PAYMENT_METHOD` | payment_method | +| `PAYROLL_TYPE` | payroll_type | +| `PAYROLL_UUID` | payroll_uuid | +| `PREFERRED_FIRST_NAME` | preferred_first_name | +| `RECURRING_REIMBURSEMENTS` | recurring_reimbursements | +| `REGULAR_EARNINGS` | regular_earnings | +| `REGULAR_HOURS` | regular_hours | +| `REGULAR_RATE` | regular_rate | +| `REIMBURSEMENTS` | reimbursements | +| `RISK_CLASS_CODE` | risk_class_code | +| `SICK_RATE` | sick_rate | +| `SICK_TIME_OFF_EARNINGS` | sick_time_off_earnings | +| `SICK_TIME_OFF_HOURS` | sick_time_off_hours | +| `START_DATE` | start_date | +| `TOTAL_EMPLOYER_BENEFIT_CONTRIBUTIONS` | total_employer_benefit_contributions | +| `TOTAL_TIME_OFF_EARNINGS` | total_time_off_earnings | +| `TOTAL_TIME_OFF_HOURS` | total_time_off_hours | +| `WORK_ADDRESS_CITY` | work_address_city | +| `WORK_ADDRESS_STREET` | work_address_street | +| `WORK_ADDRESS_ZIP` | work_address_zip | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/CreateReportBodyDateFilterType.md b/gusto_embedded/docs/models/components/CreateReportBodyDateFilterType.md new file mode 100644 index 000000000..168c14ce3 --- /dev/null +++ b/gusto_embedded/docs/models/components/CreateReportBodyDateFilterType.md @@ -0,0 +1,20 @@ +# CreateReportBodyDateFilterType + +Which payroll date `start_date` and `end_date` filter against. + +## Example Usage + +```java +import com.gusto.embedded_api.models.components.CreateReportBodyDateFilterType; + +CreateReportBodyDateFilterType value = CreateReportBodyDateFilterType.PERIOD_END_DATE; +``` + + +## Values + +| Name | Value | +| ------------------- | ------------------- | +| `PERIOD_END_DATE` | period_end_date | +| `PERIOD_START_DATE` | period_start_date | +| `CHECK_DATE` | check_date | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/CreateReportBodyEmploymentType.md b/gusto_embedded/docs/models/components/CreateReportBodyEmploymentType.md new file mode 100644 index 000000000..fa7e49c1b --- /dev/null +++ b/gusto_embedded/docs/models/components/CreateReportBodyEmploymentType.md @@ -0,0 +1,22 @@ +# CreateReportBodyEmploymentType + +Employee employment type to filter by + +## Example Usage + +```java +import com.gusto.embedded_api.models.components.CreateReportBodyEmploymentType; + +CreateReportBodyEmploymentType value = CreateReportBodyEmploymentType.EXEMPT; +``` + + +## Values + +| Name | Value | +| --------------------------- | --------------------------- | +| `EXEMPT` | exempt | +| `SALARIED_NONEXEMPT` | salaried_nonexempt | +| `NONEXEMPT` | nonexempt | +| `COMMISSION_ONLY_EXEMPT` | commission_only_exempt | +| `COMMISSION_ONLY_NONEXEMPT` | commission_only_nonexempt | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/CreateReportBodyFileType.md b/gusto_embedded/docs/models/components/CreateReportBodyFileType.md new file mode 100644 index 000000000..466ff1aa5 --- /dev/null +++ b/gusto_embedded/docs/models/components/CreateReportBodyFileType.md @@ -0,0 +1,20 @@ +# CreateReportBodyFileType + +The type of file to generate + +## Example Usage + +```java +import com.gusto.embedded_api.models.components.CreateReportBodyFileType; + +CreateReportBodyFileType value = CreateReportBodyFileType.CSV; +``` + + +## Values + +| Name | Value | +| ------ | ------ | +| `CSV` | csv | +| `JSON` | json | +| `PDF` | pdf | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/CreateReportBodyGroupings.md b/gusto_embedded/docs/models/components/CreateReportBodyGroupings.md new file mode 100644 index 000000000..aa183b416 --- /dev/null +++ b/gusto_embedded/docs/models/components/CreateReportBodyGroupings.md @@ -0,0 +1,19 @@ +# CreateReportBodyGroupings + +## Example Usage + +```java +import com.gusto.embedded_api.models.components.CreateReportBodyGroupings; + +CreateReportBodyGroupings value = CreateReportBodyGroupings.PAYROLL; +``` + + +## Values + +| Name | Value | +| -------------------- | -------------------- | +| `PAYROLL` | payroll | +| `EMPLOYEE` | employee | +| `WORK_ADDRESS` | work_address | +| `WORK_ADDRESS_STATE` | work_address_state | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/CustomWithholdings.md b/gusto_embedded/docs/models/components/CustomWithholdings.md new file mode 100644 index 000000000..21feb111f --- /dev/null +++ b/gusto_embedded/docs/models/components/CustomWithholdings.md @@ -0,0 +1,14 @@ +# CustomWithholdings + +The one-time custom withholding overrides applied to this payroll for this employee. +`federal` is null when no federal one-time override is set; `state` is an empty +array when no state one-time overrides are set. + + + +## Fields + +| Field | Type | Required | Description | +| ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | +| `federal` | [JsonNullable\](../../models/components/Federal.md) | :heavy_minus_sign: | Federal one-time custom withholding override applied to this payroll. | +| `state` | List\<[State](../../models/components/State.md)> | :heavy_minus_sign: | State one-time custom withholding overrides applied to this payroll, one entry per state field. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/DateFilterType.md b/gusto_embedded/docs/models/components/DateFilterType.md new file mode 100644 index 000000000..a30e2bc16 --- /dev/null +++ b/gusto_embedded/docs/models/components/DateFilterType.md @@ -0,0 +1,20 @@ +# DateFilterType + +Which payroll date `start_date` and `end_date` filter against. + +## Example Usage + +```java +import com.gusto.embedded_api.models.components.DateFilterType; + +DateFilterType value = DateFilterType.PERIOD_END_DATE; +``` + + +## Values + +| Name | Value | +| ------------------- | ------------------- | +| `PERIOD_END_DATE` | period_end_date | +| `PERIOD_START_DATE` | period_start_date | +| `CHECK_DATE` | check_date | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/Document.md b/gusto_embedded/docs/models/components/Document.md index 2e4cd21a2..660fc8a60 100644 --- a/gusto_embedded/docs/models/components/Document.md +++ b/gusto_embedded/docs/models/components/Document.md @@ -8,7 +8,7 @@ | `uuid` | *Optional\* | :heavy_minus_sign: | The UUID of the document | | `title` | *Optional\* | :heavy_minus_sign: | The title of the document | | `name` | *Optional\* | :heavy_minus_sign: | The type identifier of the document | -| `recipientType` | [Optional\](../../models/components/RecipientType.md) | :heavy_minus_sign: | The type of recipient associated with the document (will be `Contractor` for Contractor Documents) | +| `recipientType` | [Optional\](../../models/components/DocumentRecipientType.md) | :heavy_minus_sign: | The type of recipient associated with the document (will be `Contractor` for Contractor Documents) | | `recipientUuid` | *Optional\* | :heavy_minus_sign: | Unique identifier for the recipient associated with the document | | `pages` | List\<[Pages](../../models/components/Pages.md)> | :heavy_minus_sign: | List of the document's pages and associated image URLs. This is only returned for documents with `required_signing` = `true`, and can be used for signing preparation. | | `fields` | List\<[Fields](../../models/components/Fields.md)> | :heavy_minus_sign: | List of the document's fields and associated data. Values are set for auto-filled fields. This is only returned for documents with `required_signing` = `true`, and can be used for signing preparation. | diff --git a/gusto_embedded/docs/models/components/DocumentRecipientType.md b/gusto_embedded/docs/models/components/DocumentRecipientType.md new file mode 100644 index 000000000..c8db84d7e --- /dev/null +++ b/gusto_embedded/docs/models/components/DocumentRecipientType.md @@ -0,0 +1,20 @@ +# DocumentRecipientType + +The type of recipient associated with the document (will be `Contractor` for Contractor Documents) + +## Example Usage + +```java +import com.gusto.embedded_api.models.components.DocumentRecipientType; + +DocumentRecipientType value = DocumentRecipientType.COMPANY; +``` + + +## Values + +| Name | Value | +| ------------ | ------------ | +| `COMPANY` | Company | +| `EMPLOYEE` | Employee | +| `CONTRACTOR` | Contractor | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/Employee.md b/gusto_embedded/docs/models/components/Employee.md index 97c30cf44..df027f920 100644 --- a/gusto_embedded/docs/models/components/Employee.md +++ b/gusto_embedded/docs/models/components/Employee.md @@ -21,7 +21,7 @@ The representation of an employee in Gusto. | `workEmail` | *JsonNullable\* | :heavy_minus_sign: | The work email address of the employee. This is provided to support syncing users between our system and yours. You may not use this email address for any other purpose (e.g. marketing). | | `onboarded` | *Optional\* | :heavy_minus_sign: | Whether the employee has completed onboarding. | | `onboardingStatus` | [JsonNullable\](../../models/components/EmployeeOnboardingStatus1.md) | :heavy_minus_sign: | The current onboarding status of the employee | -| `onboardingDocumentsConfig` | [Optional\](../../models/components/EmployeeOnboardingDocumentsConfig.md) | :heavy_minus_sign: | Configuration for an employee onboarding documents during onboarding | +| `onboardingDocumentsConfig` | [Optional\](../../models/components/OnboardingDocumentsConfig.md) | :heavy_minus_sign: | Configuration for an employee onboarding documents during onboarding | | `jobs` | List\<[Job](../../models/components/Job.md)> | :heavy_minus_sign: | N/A | | `eligiblePaidTimeOff` | List\<[PaidTimeOff](../../models/components/PaidTimeOff.md)> | :heavy_minus_sign: | N/A | | `terminations` | List\<[Termination](../../models/components/Termination.md)> | :heavy_minus_sign: | N/A | @@ -33,7 +33,7 @@ The representation of an employee in Gusto. | `phone` | *JsonNullable\* | :heavy_minus_sign: | N/A | | `preferredFirstName` | *JsonNullable\* | :heavy_minus_sign: | N/A | | `paymentMethod` | [Optional\](../../models/components/EmployeePaymentMethod1.md) | :heavy_minus_sign: | The employee's payment method | -| `currentEmploymentStatus` | [JsonNullable\](../../models/components/EmployeeCurrentEmploymentStatus.md) | :heavy_minus_sign: | The current employment status of the employee. Full-time employees work 30+ hours per week. Part-time employees are split into two groups: those that work 20-29 hours a week, and those that work under 20 hours a week. Variable employees have hours that vary each week. Seasonal employees are hired for 6 months of the year or less. | +| `currentEmploymentStatus` | [JsonNullable\](../../models/components/CurrentEmploymentStatus.md) | :heavy_minus_sign: | The current employment status of the employee. Full-time employees work 30+ hours per week. Part-time employees are split into two groups: those that work 20-29 hours a week, and those that work under 20 hours a week. Variable employees have hours that vary each week. Seasonal employees are hired for 6 months of the year or less. | | `historical` | *Optional\* | :heavy_minus_sign: | N/A | | `employeeCode` | *Optional\* | :heavy_minus_sign: | The short format code of the employee | | `departmentUuid` | *JsonNullable\* | :heavy_minus_sign: | The UUID of the department the employee is under | diff --git a/gusto_embedded/docs/models/components/EmployeeAddress.md b/gusto_embedded/docs/models/components/EmployeeAddress.md index fb7413252..a3a5fb43d 100644 --- a/gusto_embedded/docs/models/components/EmployeeAddress.md +++ b/gusto_embedded/docs/models/components/EmployeeAddress.md @@ -16,4 +16,5 @@ | `zip` | *Optional\* | :heavy_minus_sign: | N/A | | `country` | *Optional\* | :heavy_minus_sign: | N/A | | `active` | *Optional\* | :heavy_minus_sign: | The status of the location. Inactive locations have been deleted, but may still have historical data associated with them. | -| `version` | *String* | :heavy_check_mark: | The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. | \ No newline at end of file +| `version` | *String* | :heavy_check_mark: | The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. | +| `warnings` | List\<[WarningObject](../../models/components/WarningObject.md)> | :heavy_minus_sign: | An array of warning objects that provide additional information about the address. Warnings do not prevent the address from being saved. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/EmployeeBenefit.md b/gusto_embedded/docs/models/components/EmployeeBenefit.md index 46d870734..20a86ea09 100644 --- a/gusto_embedded/docs/models/components/EmployeeBenefit.md +++ b/gusto_embedded/docs/models/components/EmployeeBenefit.md @@ -12,7 +12,7 @@ The representation of an employee benefit. | `employeeDeduction` | *Optional\* | :heavy_minus_sign: | The amount to be deducted, per pay period, from the employee's pay. | | `deductAsPercentage` | *Optional\* | :heavy_minus_sign: | Whether the employee deduction amount should be treated as a percentage to be deducted from each payroll. | | `employeeDeductionAnnualMaximum` | *JsonNullable\* | :heavy_minus_sign: | The maximum employee deduction amount per year. A null value signifies no limit. | -| `contribution` | [Optional\](../../models/components/Contribution.md) | :heavy_minus_sign: | An object representing the type and value of the company contribution. | +| `contribution` | [Optional\](../../models/components/EmployeeBenefitContribution.md) | :heavy_minus_sign: | An object representing the type and value of the company contribution. | | `elective` | *Optional\* | :heavy_minus_sign: | Whether the company contribution is elective (aka matching). For "tiered" contribution types, this is always true. | | `companyContributionAnnualMaximum` | *JsonNullable\* | :heavy_minus_sign: | The maximum company contribution amount per year. A null value signifies no limit. | | `limitOption` | *JsonNullable\* | :heavy_minus_sign: | Some benefits require additional information to determine their limit.

    `Family` and `Individual` are applicable to HSA benefit.

    `Joint Filing or Single` and `Married and Filing Separately` are applicable to Dependent Care FSA benefit. | diff --git a/gusto_embedded/docs/models/components/EmployeeBenefitContribution.md b/gusto_embedded/docs/models/components/EmployeeBenefitContribution.md new file mode 100644 index 000000000..60d082742 --- /dev/null +++ b/gusto_embedded/docs/models/components/EmployeeBenefitContribution.md @@ -0,0 +1,11 @@ +# EmployeeBenefitContribution + +An object representing the type and value of the company contribution. + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `type` | *Optional\* | :heavy_minus_sign: | The company contribution scheme.

    "amount": The company contributes a fixed amount per payroll. If elective is true, the contribution is matching, dollar-for-dollar.

    "percentage": The company contributes a percentage of the payroll amount per payroll period. If elective is true, the contribution is matching, dollar-for-dollar.

    "tiered": The company contribution varies according to the size of the employee deduction. | +| `value` | [Optional\](../../models/components/EmployeeBenefitValue.md) | :heavy_minus_sign: | For the `amount` and `percentage` contribution types, the value of the corresponding amount or percentage.

    For the `tiered` contribution type, an array of tiers. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/EmployeeCompensations.md b/gusto_embedded/docs/models/components/EmployeeCompensations.md index 010678ff2..a932f0619 100644 --- a/gusto_embedded/docs/models/components/EmployeeCompensations.md +++ b/gusto_embedded/docs/models/components/EmployeeCompensations.md @@ -19,6 +19,7 @@ | `hourlyCompensations` | List\<[PayrollShowHourlyCompensations](../../models/components/PayrollShowHourlyCompensations.md)> | :heavy_minus_sign: | An array of hourly compensations for the employee. Hourly compensations include regular, overtime, and double overtime hours. If this payroll has been processed, only hourly compensations with a value greater than 0.00 are returned. For an unprocessed payroll, all active hourly compensations are returned. | | `paidTimeOff` | List\<[PayrollShowPaidTimeOff](../../models/components/PayrollShowPaidTimeOff.md)> | :heavy_minus_sign: | An array of all paid time off the employee is eligible for this pay period. | | `reimbursements` | List\<[PayrollShowReimbursements](../../models/components/PayrollShowReimbursements.md)> | :heavy_minus_sign: | An array of reimbursements for the employee. | +| `customWithholdings` | [Optional\](../../models/components/PayrollShowCustomWithholdings.md) | :heavy_minus_sign: | The one-time custom withholding overrides applied to this payroll for this employee.
    `federal` is null when no federal one-time override is set; `state` is an empty
    array when no state one-time overrides are set.
    | | `version` | *Optional\* | :heavy_minus_sign: | The current version of this employee compensation. This field is only available for prepared payrolls. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. | | `deductions` | List\<[PayrollShowDeductions](../../models/components/PayrollShowDeductions.md)> | :heavy_minus_sign: | An array of employee deductions for the pay period. Only included when `deductions` is present in the `include` parameter. | | `taxes` | List\<[PayrollShowTaxes](../../models/components/PayrollShowTaxes.md)> | :heavy_minus_sign: | An array of employer and employee taxes for the pay period. Only included for processed or calculated payrolls when `taxes` is present in the `include` parameter. | diff --git a/gusto_embedded/docs/models/components/EmployeeOnboardingStatus.md b/gusto_embedded/docs/models/components/EmployeeOnboardingStatus.md index 75686cf10..e7d8f695f 100644 --- a/gusto_embedded/docs/models/components/EmployeeOnboardingStatus.md +++ b/gusto_embedded/docs/models/components/EmployeeOnboardingStatus.md @@ -5,8 +5,9 @@ The representation of an employee's onboarding status. ## Fields -| Field | Type | Required | Description | -| ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | -| `uuid` | *String* | :heavy_check_mark: | Unique identifier for this employee. | -| `onboardingStatus` | *Optional\* | :heavy_minus_sign: | One of the "onboarding_status" enum values. | -| `onboardingSteps` | List\<[EmployeeOnboardingStatusOnboardingStep](../../models/components/EmployeeOnboardingStatusOnboardingStep.md)> | :heavy_minus_sign: | List of steps required to onboard an employee. | \ No newline at end of file +| Field | Type | Required | Description | +| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `uuid` | *String* | :heavy_check_mark: | Unique identifier for this employee. | +| `onboardingStatus` | *Optional\* | :heavy_minus_sign: | One of the "onboarding_status" enum values. | +| `onboardingSteps` | List\<[EmployeeOnboardingStatusOnboardingStep](../../models/components/EmployeeOnboardingStatusOnboardingStep.md)> | :heavy_minus_sign: | List of steps required to onboard an employee. | +| `blockers` | List\<[Blockers](../../models/components/Blockers.md)> | :heavy_minus_sign: | Validation issues that should be resolved before this employee's onboarding is complete. Each entry identifies an affected field, a category describing the type of problem, and a human-readable message.

    Supported categories:

    - `duplicate_value`: Another employee in the same company already has this value. To resolve, cancel this onboarding and initiate a rehire if it's a returning employee, or contact support to investigate the conflict.

    This list may grow over time as new validation rules are added.
    | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/EmployeeOnboardingStatusCategory.md b/gusto_embedded/docs/models/components/EmployeeOnboardingStatusCategory.md new file mode 100644 index 000000000..98edf85c8 --- /dev/null +++ b/gusto_embedded/docs/models/components/EmployeeOnboardingStatusCategory.md @@ -0,0 +1,18 @@ +# EmployeeOnboardingStatusCategory + +Category of the blocker. See the array-level description for resolution guidance. + +## Example Usage + +```java +import com.gusto.embedded_api.models.components.EmployeeOnboardingStatusCategory; + +EmployeeOnboardingStatusCategory value = EmployeeOnboardingStatusCategory.DUPLICATE_VALUE; +``` + + +## Values + +| Name | Value | +| ----------------- | ----------------- | +| `DUPLICATE_VALUE` | duplicate_value | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/EmployeePaymentDetailsList.md b/gusto_embedded/docs/models/components/EmployeePaymentDetailsList.md index 219154844..43ed17742 100644 --- a/gusto_embedded/docs/models/components/EmployeePaymentDetailsList.md +++ b/gusto_embedded/docs/models/components/EmployeePaymentDetailsList.md @@ -9,5 +9,5 @@ | `firstName` | *Optional\* | :heavy_minus_sign: | The legal first name of the employee. | | `lastName` | *Optional\* | :heavy_minus_sign: | The last name of the employee. | | `paymentMethod` | [Optional\](../../models/components/EmployeePaymentDetailsListPaymentMethod.md) | :heavy_minus_sign: | The type of payment method. | -| `splitBy` | [JsonNullable\](../../models/components/SplitBy.md) | :heavy_minus_sign: | How the payment is split. This field is applicable when `payment_method` is "Direct Deposit". If `split_by` is Percentage, then the split amounts must add up to exactly 100. If `split_by` is Amount, the last split amount must be `null` to capture the remainder. | -| `splits` | List\<[Splits](../../models/components/Splits.md)> | :heavy_minus_sign: | An array of payment splits. This field is applicable when `payment_method` is "Direct Deposit". | \ No newline at end of file +| `splitBy` | [JsonNullable\](../../models/components/EmployeePaymentDetailsListSplitBy.md) | :heavy_minus_sign: | How the payment is split. This field is applicable when `payment_method` is "Direct Deposit". If `split_by` is Percentage, then the split amounts must add up to exactly 100. If `split_by` is Amount, the last split amount must be `null` to capture the remainder. | +| `splits` | List\<[EmployeePaymentDetailsListSplits](../../models/components/EmployeePaymentDetailsListSplits.md)> | :heavy_minus_sign: | An array of payment splits. This field is applicable when `payment_method` is "Direct Deposit". | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/EmployeePaymentDetailsListSplitBy.md b/gusto_embedded/docs/models/components/EmployeePaymentDetailsListSplitBy.md new file mode 100644 index 000000000..a344521bd --- /dev/null +++ b/gusto_embedded/docs/models/components/EmployeePaymentDetailsListSplitBy.md @@ -0,0 +1,17 @@ +# EmployeePaymentDetailsListSplitBy + +## Example Usage + +```java +import com.gusto.embedded_api.models.components.EmployeePaymentDetailsListSplitBy; + +EmployeePaymentDetailsListSplitBy value = EmployeePaymentDetailsListSplitBy.AMOUNT; +``` + + +## Values + +| Name | Value | +| ------------ | ------------ | +| `AMOUNT` | Amount | +| `PERCENTAGE` | Percentage | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/ContractorPaymentDetailsListSplits.md b/gusto_embedded/docs/models/components/EmployeePaymentDetailsListSplits.md similarity index 95% rename from gusto_embedded/docs/models/components/ContractorPaymentDetailsListSplits.md rename to gusto_embedded/docs/models/components/EmployeePaymentDetailsListSplits.md index 89d0bc39d..c75cf8669 100644 --- a/gusto_embedded/docs/models/components/ContractorPaymentDetailsListSplits.md +++ b/gusto_embedded/docs/models/components/EmployeePaymentDetailsListSplits.md @@ -1,15 +1,15 @@ -# ContractorPaymentDetailsListSplits +# EmployeePaymentDetailsListSplits ## Fields | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `bankAccountUuid` | *Optional\* | :heavy_minus_sign: | N/A | -| `name` | *Optional\* | :heavy_minus_sign: | N/A | +| `bankAccountUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the bank account. | +| `name` | *Optional\* | :heavy_minus_sign: | The name of the bank account. | | `hiddenAccountNumber` | *Optional\* | :heavy_minus_sign: | An obfuscated version of the account number which can be used for display purposes. | -| `encryptedAccountNumber` | *JsonNullable\* | :heavy_minus_sign: | Ciphertext containing the full bank account number, which must be decrypted using a key provided by Gusto. Only visible with the `contractor_payment_methods:read:account_number` scope. | -| `routingNumber` | *Optional\* | :heavy_minus_sign: | N/A | +| `encryptedAccountNumber` | *JsonNullable\* | :heavy_minus_sign: | Ciphertext containing the full bank account number, which must be decrypted using a key provided by Gusto. Only visible with the `employee_payment_methods:read:account_number` scope. | +| `routingNumber` | *Optional\* | :heavy_minus_sign: | The routing number of the bank account. | +| `accountType` | *Optional\* | :heavy_minus_sign: | The bank account type (e.g., "Checking" or "Savings"). | | `priority` | *Optional\* | :heavy_minus_sign: | The order of priority for each payment split, with priority 1 being the first bank account paid. Priority must be unique and sequential. | -| `splitAmount` | *JsonNullable\* | :heavy_minus_sign: | If `split_by` is 'Amount', this is in cents (e.g., 500 for $5.00) and exactly one account must have a `split_amount` of `null` to capture the remainder. If `split_by` is 'Percentage', this is the percentage value (e.g., 60 for 60%). | -| `accountType` | *Optional\* | :heavy_minus_sign: | N/A | \ No newline at end of file +| `splitAmount` | *JsonNullable\* | :heavy_minus_sign: | If `split_by` is 'Amount', this is in cents (e.g., 500 for $5.00) and exactly one account must have a `split_amount` of `null` to capture the remainder. If `split_by` is 'Percentage', this is the percentage value (e.g., 60 for 60%). | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/EmployeeStateTaxInputQuestionFormat.md b/gusto_embedded/docs/models/components/EmployeeStateTaxInputQuestionFormat.md index 8ca576818..a130f0b8f 100644 --- a/gusto_embedded/docs/models/components/EmployeeStateTaxInputQuestionFormat.md +++ b/gusto_embedded/docs/models/components/EmployeeStateTaxInputQuestionFormat.md @@ -3,7 +3,7 @@ ## Fields -| Field | Type | Required | Description | -| --------------------------------------------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------- | -| `type` | *String* | :heavy_check_mark: | Describes the type of question - Text, Number, Select, Currency, Date | -| `options` | List\<[Options](../../models/components/Options.md)> | :heavy_minus_sign: | For "Select" type questions, the allowed values and display labels. | \ No newline at end of file +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | +| `type` | *String* | :heavy_check_mark: | Describes the type of question - Text, Number, Select, Currency, Date | +| `options` | List\<[EmployeeStateTaxInputQuestionFormatOptions](../../models/components/EmployeeStateTaxInputQuestionFormatOptions.md)> | :heavy_minus_sign: | For "Select" type questions, the allowed values and display labels. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/EmployeeStateTaxInputQuestionFormatOptions.md b/gusto_embedded/docs/models/components/EmployeeStateTaxInputQuestionFormatOptions.md new file mode 100644 index 000000000..88f3ba6af --- /dev/null +++ b/gusto_embedded/docs/models/components/EmployeeStateTaxInputQuestionFormatOptions.md @@ -0,0 +1,9 @@ +# EmployeeStateTaxInputQuestionFormatOptions + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | +| `value` | [Optional\](../../models/components/EmployeeStateTaxInputQuestionFormatValue.md) | :heavy_minus_sign: | An allowed value to answer the question | +| `label` | *String* | :heavy_check_mark: | A display label that corresponds to the answer value | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/Employees.md b/gusto_embedded/docs/models/components/Employees.md index f809dff54..729a5ce41 100644 --- a/gusto_embedded/docs/models/components/Employees.md +++ b/gusto_embedded/docs/models/components/Employees.md @@ -3,7 +3,13 @@ ## Fields -| Field | Type | Required | Description | -| ------------------- | ------------------- | ------------------- | ------------------- | -| `employeeUuid` | *Optional\* | :heavy_minus_sign: | Employee UUID | -| `payScheduleUuid` | *Optional\* | :heavy_minus_sign: | Pay schedule UUID | \ No newline at end of file +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | +| `uuid` | *Optional\* | :heavy_minus_sign: | The UUID of the employee | +| `companyBenefitDeduction` | *Optional\* | :heavy_minus_sign: | The sum of employee deduction for this employee given the period of time and the specific company benefit. | +| `companyBenefitContribution` | *Optional\* | :heavy_minus_sign: | The sum of company contribution for this employee given the period of time and the specific company benefit. | +| `benefitDeduction` | *Optional\* | :heavy_minus_sign: | The sum of employee benefit deduction for this employee given the period of time and the benefit type. | +| `benefitContribution` | *Optional\* | :heavy_minus_sign: | The sum of company contribution for this employee given the period of time and the benefit type. | +| `grossPay` | *Optional\* | :heavy_minus_sign: | Gross pay for this employee given the period of time. | +| `imputedPay` | *Optional\* | :heavy_minus_sign: | Total imputed pay for this employee given the period of time (not scoped to a benefit type). | +| `payrollBenefits` | List\<[PayrollBenefits](../../models/components/PayrollBenefits.md)> | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/EmploymentStatus.md b/gusto_embedded/docs/models/components/EmploymentStatus.md index 6a1a3241b..fa037eab1 100644 --- a/gusto_embedded/docs/models/components/EmploymentStatus.md +++ b/gusto_embedded/docs/models/components/EmploymentStatus.md @@ -1,23 +1,24 @@ # EmploymentStatus -The employee's employment status. Supplying an invalid option will set the employment_status to *not_set*. +Employee employment status to filter by. ## Example Usage ```java import com.gusto.embedded_api.models.components.EmploymentStatus; -EmploymentStatus value = EmploymentStatus.PART_TIME; +EmploymentStatus value = EmploymentStatus.ACTIVE_FULL_TIME; ``` ## Values -| Name | Value | -| -------------------- | -------------------- | -| `PART_TIME` | part_time | -| `FULL_TIME` | full_time | -| `PART_TIME_ELIGIBLE` | part_time_eligible | -| `VARIABLE` | variable | -| `SEASONAL` | seasonal | -| `NOT_SET` | not_set | \ No newline at end of file +| Name | Value | +| --------------------------- | --------------------------- | +| `ACTIVE_FULL_TIME` | active_full_time | +| `ACTIVE_PART_TIME` | active_part_time | +| `ACTIVE_PART_TIME_ELIGIBLE` | active_part_time_eligible | +| `ACTIVE_VARIABLE` | active_variable | +| `ACTIVE_SEASONAL` | active_seasonal | +| `ACTIVE` | active | +| `DISMISSED` | dismissed | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/EmploymentType.md b/gusto_embedded/docs/models/components/EmploymentType.md index 982daa5c9..47a36dc8a 100644 --- a/gusto_embedded/docs/models/components/EmploymentType.md +++ b/gusto_embedded/docs/models/components/EmploymentType.md @@ -1,6 +1,6 @@ # EmploymentType -Employee employment type to filter by +Employee employment type to filter by. ## Example Usage diff --git a/gusto_embedded/docs/models/components/Exclusions.md b/gusto_embedded/docs/models/components/Exclusions.md index 828410720..1a6c3b2e6 100644 --- a/gusto_embedded/docs/models/components/Exclusions.md +++ b/gusto_embedded/docs/models/components/Exclusions.md @@ -3,9 +3,12 @@ ## Fields -| Field | Type | Required | Description | -| ------------------------------------------- | ------------------------------------------- | ------------------------------------------- | ------------------------------------------- | -| `externalId` | *Optional\* | :heavy_minus_sign: | The external ID of the excluded item(s). | -| `category` | *Optional\* | :heavy_minus_sign: | The exclusion category. | -| `message` | *Optional\* | :heavy_minus_sign: | Human-readable explanation for exclusion. | -| `itemCount` | *Optional\* | :heavy_minus_sign: | Number of items affected by this exclusion. | \ No newline at end of file +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `idx` | *Optional\* | :heavy_minus_sign: | The index of this payroll in the original POST batch array. | +| `entityType` | [Optional\](../../models/components/PayrollBatchResultsEntityType.md) | :heavy_minus_sign: | The type of entity this exclusion represents. | +| `uuid` | *Optional\* | :heavy_minus_sign: | The UUID of the excluded payroll. | +| `companyUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the company asserted to own the payroll. | +| `status` | [Optional\](../../models/components/PayrollBatchResultsExclusionsStatus.md) | :heavy_minus_sign: | Always `failed` for an excluded payroll. | +| `category` | [Optional\](../../models/components/PayrollBatchResultsCategory.md) | :heavy_minus_sign: | Machine-readable category for why the payroll was excluded.
    - `not_found`: the payroll does not exist, or is not associated with a company the partner is mapped to
    - `duplicate_operation`: the same payroll UUID appeared more than once in the request; only the first occurrence is processed
    | +| `message` | *Optional\* | :heavy_minus_sign: | Human-readable explanation for the exclusion. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/ExternalPayrollBasic.md b/gusto_embedded/docs/models/components/ExternalPayrollBasic.md index b907ed575..008fcfd6b 100644 --- a/gusto_embedded/docs/models/components/ExternalPayrollBasic.md +++ b/gusto_embedded/docs/models/components/ExternalPayrollBasic.md @@ -12,4 +12,4 @@ The representation of an external payroll with minimal information. | `checkDate` | *Optional\* | :heavy_minus_sign: | External payroll's check date. | | `paymentPeriodStartDate` | *Optional\* | :heavy_minus_sign: | External payroll's pay period start date. | | `paymentPeriodEndDate` | *Optional\* | :heavy_minus_sign: | External payroll's pay period end date. | -| `status` | [Optional\](../../models/components/Status.md) | :heavy_minus_sign: | The status of the external payroll. The status will be `unprocessed` when the external payroll is created and transition to `processed` once tax liabilities are entered and finalized. Once in the `processed` status all actions that can edit an external payroll will be disabled. | \ No newline at end of file +| `status` | [Optional\](../../models/components/ExternalPayrollBasicStatus.md) | :heavy_minus_sign: | The status of the external payroll. The status will be `unprocessed` when the external payroll is created and transition to `processed` once tax liabilities are entered and finalized. Once in the `processed` status all actions that can edit an external payroll will be disabled. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/ExternalPayrollBasicStatus.md b/gusto_embedded/docs/models/components/ExternalPayrollBasicStatus.md new file mode 100644 index 000000000..ad45a9407 --- /dev/null +++ b/gusto_embedded/docs/models/components/ExternalPayrollBasicStatus.md @@ -0,0 +1,19 @@ +# ExternalPayrollBasicStatus + +The status of the external payroll. The status will be `unprocessed` when the external payroll is created and transition to `processed` once tax liabilities are entered and finalized. Once in the `processed` status all actions that can edit an external payroll will be disabled. + +## Example Usage + +```java +import com.gusto.embedded_api.models.components.ExternalPayrollBasicStatus; + +ExternalPayrollBasicStatus value = ExternalPayrollBasicStatus.UNPROCESSED; +``` + + +## Values + +| Name | Value | +| ------------- | ------------- | +| `UNPROCESSED` | unprocessed | +| `PROCESSED` | processed | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/Federal.md b/gusto_embedded/docs/models/components/Federal.md new file mode 100644 index 000000000..12c04e736 --- /dev/null +++ b/gusto_embedded/docs/models/components/Federal.md @@ -0,0 +1,12 @@ +# Federal + +Federal one-time custom withholding override applied to this payroll. + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ | +| `overrideType` | [Optional\](../../models/components/OverrideType.md) | :heavy_minus_sign: | Override mode. Only `one_time` is currently exposed. | +| `amount` | *Optional\* | :heavy_minus_sign: | The amount that was withheld for this payroll. | +| `amountType` | [Optional\](../../models/components/PayrollEmployeeCompensationsTypeAmountType.md) | :heavy_minus_sign: | How to interpret the amount. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/Field.md b/gusto_embedded/docs/models/components/Field.md new file mode 100644 index 000000000..a669fe4c0 --- /dev/null +++ b/gusto_embedded/docs/models/components/Field.md @@ -0,0 +1,18 @@ +# Field + +The employee field affected. + +## Example Usage + +```java +import com.gusto.embedded_api.models.components.Field; + +Field value = Field.SSN; +``` + + +## Values + +| Name | Value | +| ----- | ----- | +| `SSN` | ssn | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/FileType.md b/gusto_embedded/docs/models/components/FileType.md index 1369b1b06..0354ccb32 100644 --- a/gusto_embedded/docs/models/components/FileType.md +++ b/gusto_embedded/docs/models/components/FileType.md @@ -1,6 +1,6 @@ # FileType -The type of file to generate +The type of file to generate. ## Example Usage diff --git a/gusto_embedded/docs/models/components/GeneralLedgerReportBody.md b/gusto_embedded/docs/models/components/GeneralLedgerReportBody.md index fad04b537..99fa0a43c 100644 --- a/gusto_embedded/docs/models/components/GeneralLedgerReportBody.md +++ b/gusto_embedded/docs/models/components/GeneralLedgerReportBody.md @@ -7,5 +7,5 @@ Request body for generating a general ledger report. The report can be aggregate | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- | -| `aggregation` | [Aggregation](../../models/components/Aggregation.md) | :heavy_check_mark: | The breakdown of the report. Use 'default' for no split. | +| `aggregation` | [GeneralLedgerReportBodyAggregation](../../models/components/GeneralLedgerReportBodyAggregation.md) | :heavy_check_mark: | The breakdown of the report. Use 'default' for no split. | | `integrationType` | [JsonNullable\](../../models/components/IntegrationType.md) | :heavy_minus_sign: | The kind of integration set up for the company. Required when `aggregation` is 'integration'. Must be null if `aggregation` is not 'integration'. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/GeneralLedgerReportBodyAggregation.md b/gusto_embedded/docs/models/components/GeneralLedgerReportBodyAggregation.md new file mode 100644 index 000000000..52a3d3039 --- /dev/null +++ b/gusto_embedded/docs/models/components/GeneralLedgerReportBodyAggregation.md @@ -0,0 +1,21 @@ +# GeneralLedgerReportBodyAggregation + +The breakdown of the report. Use 'default' for no split. + +## Example Usage + +```java +import com.gusto.embedded_api.models.components.GeneralLedgerReportBodyAggregation; + +GeneralLedgerReportBodyAggregation value = GeneralLedgerReportBodyAggregation.DEFAULT; +``` + + +## Values + +| Name | Value | +| ------------- | ------------- | +| `DEFAULT` | default | +| `JOB` | job | +| `DEPARTMENT` | department | +| `INTEGRATION` | integration | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/HistoricalEmployeeBody.md b/gusto_embedded/docs/models/components/HistoricalEmployeeBody.md index db95952e4..a892c89ca 100644 --- a/gusto_embedded/docs/models/components/HistoricalEmployeeBody.md +++ b/gusto_embedded/docs/models/components/HistoricalEmployeeBody.md @@ -17,7 +17,7 @@ Send this object under the JSON root key `employee`. All dates are ISO 8601 (`YY | `dateOfBirth` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_check_mark: | Date of birth (YYYY-MM-DD). | 1995-05-05 | | `ssn` | *String* | :heavy_check_mark: | Nine-digit U.S. Social Security number **without** dashes or spaces. Must pass Gusto/SSA validation in production; use a valid test SSN in sandbox environments.
    | 123456294 | | `workAddress` | [WorkAddress](../../models/components/WorkAddress.md) | :heavy_check_mark: | Primary work location for this historical employment row. | | -| `homeAddress` | [HistoricalEmployeeBodyHomeAddress](../../models/components/HistoricalEmployeeBodyHomeAddress.md) | :heavy_check_mark: | Residential address on file for tax withholding and compliance mail. | | +| `homeAddress` | [HomeAddress](../../models/components/HomeAddress.md) | :heavy_check_mark: | Residential address on file for tax withholding and compliance mail. | | | `termination` | [HistoricalEmployeeBodyTermination](../../models/components/HistoricalEmployeeBodyTermination.md) | :heavy_check_mark: | End of the historical employment period. | | | `email` | *Optional\* | :heavy_minus_sign: | Optional. When provided, stored on the employee record for notifications and profile. | soren.kierkegaard@example.com | | `job` | [HistoricalEmployeeBodyJob](../../models/components/HistoricalEmployeeBodyJob.md) | :heavy_check_mark: | Hire date for the historical job used to build employments and filings. | | diff --git a/gusto_embedded/docs/models/components/HistoricalEmployeeBodyHomeAddress.md b/gusto_embedded/docs/models/components/HistoricalEmployeeBodyHomeAddress.md deleted file mode 100644 index 768c8f453..000000000 --- a/gusto_embedded/docs/models/components/HistoricalEmployeeBodyHomeAddress.md +++ /dev/null @@ -1,14 +0,0 @@ -# HistoricalEmployeeBodyHomeAddress - -Residential address on file for tax withholding and compliance mail. - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | -| `street1` | *String* | :heavy_check_mark: | Street address line 1. | 55 Mission St | -| `street2` | *JsonNullable\* | :heavy_minus_sign: | Apartment, suite, unit, or building (optional). | Floor 3 | -| `city` | *String* | :heavy_check_mark: | City. | San Francisco | -| `state` | *String* | :heavy_check_mark: | Two-letter U.S. state or territory postal abbreviation. | CA | -| `zip` | *String* | :heavy_check_mark: | ZIP or ZIP+4. | 94105 | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/HomeAddress.md b/gusto_embedded/docs/models/components/HomeAddress.md index a35071d04..01694e033 100644 --- a/gusto_embedded/docs/models/components/HomeAddress.md +++ b/gusto_embedded/docs/models/components/HomeAddress.md @@ -1,13 +1,14 @@ # HomeAddress +Residential address on file for tax withholding and compliance mail. + ## Fields -| Field | Type | Required | Description | -| ------------------- | ------------------- | ------------------- | ------------------- | -| `street1` | *Optional\* | :heavy_minus_sign: | N/A | -| `street2` | *Optional\* | :heavy_minus_sign: | N/A | -| `city` | *Optional\* | :heavy_minus_sign: | N/A | -| `state` | *Optional\* | :heavy_minus_sign: | N/A | -| `zip` | *Optional\* | :heavy_minus_sign: | N/A | -| `country` | *Optional\* | :heavy_minus_sign: | N/A | \ No newline at end of file +| Field | Type | Required | Description | Example | +| ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | +| `street1` | *String* | :heavy_check_mark: | Street address line 1. | 55 Mission St | +| `street2` | *JsonNullable\* | :heavy_minus_sign: | Apartment, suite, unit, or building (optional). | Floor 3 | +| `city` | *String* | :heavy_check_mark: | City. | San Francisco | +| `state` | *String* | :heavy_check_mark: | Two-letter U.S. state or territory postal abbreviation. | CA | +| `zip` | *String* | :heavy_check_mark: | ZIP or ZIP+4. | 94105 | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/Location.md b/gusto_embedded/docs/models/components/Location.md index 56a22e02c..bf6907034 100644 --- a/gusto_embedded/docs/models/components/Location.md +++ b/gusto_embedded/docs/models/components/Location.md @@ -22,4 +22,5 @@ The representation of an address in Gusto. | `createdAt` | *Optional\* | :heavy_minus_sign: | Datetime for when location is created | | `updatedAt` | *Optional\* | :heavy_minus_sign: | Datetime for when location is updated | | `active` | *Optional\* | :heavy_minus_sign: | The status of the location. Inactive locations have been deleted, but may still have historical data associated with them. | -| `inactive` | *Optional\* | :heavy_minus_sign: | The status of the location. Inactive locations have been deleted, but may still have historical data associated with them. | \ No newline at end of file +| `inactive` | *Optional\* | :heavy_minus_sign: | The status of the location. Inactive locations have been deleted, but may still have historical data associated with them. | +| `warnings` | List\<[WarningObject](../../models/components/WarningObject.md)> | :heavy_minus_sign: | An array of warning objects that provide additional information about the address. Warnings do not prevent the address from being saved. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/MemberPortalInvitation.md b/gusto_embedded/docs/models/components/MemberPortalInvitation.md new file mode 100644 index 000000000..588490e35 --- /dev/null +++ b/gusto_embedded/docs/models/components/MemberPortalInvitation.md @@ -0,0 +1,12 @@ +# MemberPortalInvitation + +The status of a member portal invitation for an employee or contractor. Returned by `GET /v1/employees/{employee_id}/member_portal_invitations` and `GET /v1/contractors/{contractor_uuid}/member_portal_invitations`. + + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `status` | [MemberPortalInvitationStatus1](../../models/components/MemberPortalInvitationStatus1.md) | :heavy_check_mark: | Current status of the member portal invitation.
    - `pending`: The invitation record has been created but the invitation email has not yet been delivered.
    - `sent`: The invitation email has been delivered to the member.
    - `verified`: The member has been verified by the member portal partner.
    - `complete`: The member has fully completed their member portal registration.
    - `cancelled`: The invitation has been cancelled, either via `DELETE` on this endpoint or because it was superseded.
    | sent | +| `expired` | *boolean* | :heavy_check_mark: | Whether the invitation can no longer be acted on by the member. Returns `true` when the invitation token has expired or when the invitation has been `cancelled`. To reissue an expired invitation, call `POST` on this endpoint again — a new token will be generated and will override the prior one.
    | false | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/MemberPortalInvitationStatus.md b/gusto_embedded/docs/models/components/MemberPortalInvitationStatus.md index 9f4f500a0..5f221901b 100644 --- a/gusto_embedded/docs/models/components/MemberPortalInvitationStatus.md +++ b/gusto_embedded/docs/models/components/MemberPortalInvitationStatus.md @@ -7,7 +7,7 @@ Member portal invitation status information. Only included when the include para | Field | Type | Required | Description | | ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | -| `status` | [Optional\](../../models/components/ShowEmployeesStatus.md) | :heavy_minus_sign: | The current status of the member portal invitation. | +| `status` | [Optional\](../../models/components/ContractorStatus.md) | :heavy_minus_sign: | The current status of the member portal invitation. | | `tokenExpired` | *JsonNullable\* | :heavy_minus_sign: | Whether the invitation token has expired. | | `welcomeEmailSentAt` | [OffsetDateTime](https://docs.oracle.com/javase/8/docs/api/java/time/OffsetDateTime.html) | :heavy_minus_sign: | The date and time when the welcome email was sent. | | `lastPasswordResentAt` | [OffsetDateTime](https://docs.oracle.com/javase/8/docs/api/java/time/OffsetDateTime.html) | :heavy_minus_sign: | The date and time when the password reset was last resent. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/MemberPortalInvitationStatus1.md b/gusto_embedded/docs/models/components/MemberPortalInvitationStatus1.md new file mode 100644 index 000000000..f5b1a6d57 --- /dev/null +++ b/gusto_embedded/docs/models/components/MemberPortalInvitationStatus1.md @@ -0,0 +1,28 @@ +# MemberPortalInvitationStatus1 + +Current status of the member portal invitation. +- `pending`: The invitation record has been created but the invitation email has not yet been delivered. +- `sent`: The invitation email has been delivered to the member. +- `verified`: The member has been verified by the member portal partner. +- `complete`: The member has fully completed their member portal registration. +- `cancelled`: The invitation has been cancelled, either via `DELETE` on this endpoint or because it was superseded. + + +## Example Usage + +```java +import com.gusto.embedded_api.models.components.MemberPortalInvitationStatus1; + +MemberPortalInvitationStatus1 value = MemberPortalInvitationStatus1.PENDING; +``` + + +## Values + +| Name | Value | +| ----------- | ----------- | +| `PENDING` | pending | +| `SENT` | sent | +| `VERIFIED` | verified | +| `COMPLETE` | complete | +| `CANCELLED` | cancelled | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/OnboardingStatus.md b/gusto_embedded/docs/models/components/OnboardingStatus.md index af5abc944..cc112ce90 100644 --- a/gusto_embedded/docs/models/components/OnboardingStatus.md +++ b/gusto_embedded/docs/models/components/OnboardingStatus.md @@ -1,23 +1,24 @@ # OnboardingStatus +One of the "onboarding_status" enum values. + ## Example Usage ```java import com.gusto.embedded_api.models.components.OnboardingStatus; -OnboardingStatus value = OnboardingStatus.ONBOARDING_COMPLETED; +OnboardingStatus value = OnboardingStatus.ADMIN_ONBOARDING_INCOMPLETE; ``` ## Values -| Name | Value | -| --------------------------------------- | --------------------------------------- | -| `ONBOARDING_COMPLETED` | onboarding_completed | -| `ADMIN_ONBOARDING_INCOMPLETE` | admin_onboarding_incomplete | -| `SELF_ONBOARDING_PENDING_INVITE` | self_onboarding_pending_invite | -| `SELF_ONBOARDING_INVITED` | self_onboarding_invited | -| `SELF_ONBOARDING_INVITED_STARTED` | self_onboarding_invited_started | -| `SELF_ONBOARDING_INVITED_OVERDUE` | self_onboarding_invited_overdue | -| `SELF_ONBOARDING_COMPLETED_BY_EMPLOYEE` | self_onboarding_completed_by_employee | -| `SELF_ONBOARDING_AWAITING_ADMIN_REVIEW` | self_onboarding_awaiting_admin_review | \ No newline at end of file +| Name | Value | +| ----------------------------- | ----------------------------- | +| `ADMIN_ONBOARDING_INCOMPLETE` | admin_onboarding_incomplete | +| `ADMIN_ONBOARDING_REVIEW` | admin_onboarding_review | +| `SELF_ONBOARDING_NOT_INVITED` | self_onboarding_not_invited | +| `SELF_ONBOARDING_INVITED` | self_onboarding_invited | +| `SELF_ONBOARDING_STARTED` | self_onboarding_started | +| `SELF_ONBOARDING_REVIEW` | self_onboarding_review | +| `ONBOARDING_COMPLETED` | onboarding_completed | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/Options.md b/gusto_embedded/docs/models/components/Options.md index df1a11cd0..87fc6e785 100644 --- a/gusto_embedded/docs/models/components/Options.md +++ b/gusto_embedded/docs/models/components/Options.md @@ -3,7 +3,8 @@ ## Fields -| Field | Type | Required | Description | -| -------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | -| `value` | [Optional\](../../models/components/EmployeeStateTaxInputQuestionFormatValue.md) | :heavy_minus_sign: | An allowed value to answer the question | -| `label` | *String* | :heavy_check_mark: | A display label that corresponds to the answer value | \ No newline at end of file +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | +| `label` | *String* | :heavy_check_mark: | A customer facing label for the answer | +| `value` | [TaxRequirementMetadataValue](../../models/components/TaxRequirementMetadataValue.md) | :heavy_check_mark: | The actual value to be submitted | +| `shortLabel` | *JsonNullable\* | :heavy_minus_sign: | A less verbose label that may sometimes be available | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/OverrideType.md b/gusto_embedded/docs/models/components/OverrideType.md new file mode 100644 index 000000000..9466d2edc --- /dev/null +++ b/gusto_embedded/docs/models/components/OverrideType.md @@ -0,0 +1,18 @@ +# OverrideType + +Override mode. Only `one_time` is currently exposed. + +## Example Usage + +```java +import com.gusto.embedded_api.models.components.OverrideType; + +OverrideType value = OverrideType.ONE_TIME; +``` + + +## Values + +| Name | Value | +| ---------- | ---------- | +| `ONE_TIME` | one_time | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/PartnerManagedCompanyDisassociateResponse.md b/gusto_embedded/docs/models/components/PartnerManagedCompanyDisassociateResponse.md new file mode 100644 index 000000000..72338ea6c --- /dev/null +++ b/gusto_embedded/docs/models/components/PartnerManagedCompanyDisassociateResponse.md @@ -0,0 +1,11 @@ +# PartnerManagedCompanyDisassociateResponse + +The company that was disassociated from the partner's embedded payroll product. + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | -------------------------------------- | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the disassociated company. | +| `companyName` | *String* | :heavy_check_mark: | The name of the disassociated company. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/PayScheduleAssignment.md b/gusto_embedded/docs/models/components/PayScheduleAssignment.md index 28a0e0f02..4cfde5f04 100644 --- a/gusto_embedded/docs/models/components/PayScheduleAssignment.md +++ b/gusto_embedded/docs/models/components/PayScheduleAssignment.md @@ -7,7 +7,7 @@ The representation of a pay schedule assignment. | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | -| `type` | [JsonNullable\](../../models/components/Type.md) | :heavy_minus_sign: | The pay schedule assignment type. | +| `type` | [JsonNullable\](../../models/components/PayScheduleAssignmentType.md) | :heavy_minus_sign: | The pay schedule assignment type. | | `hourlyPayScheduleUuid` | *JsonNullable\* | :heavy_minus_sign: | Pay schedule for hourly employees. | | `salariedPayScheduleUuid` | *JsonNullable\* | :heavy_minus_sign: | Pay schedule for salaried employees. | | `defaultPayScheduleUuid` | *JsonNullable\* | :heavy_minus_sign: | Default pay schedule for employees. | diff --git a/gusto_embedded/docs/models/components/PayScheduleAssignmentBody.md b/gusto_embedded/docs/models/components/PayScheduleAssignmentBody.md index 44af68c52..d1ca8d3c8 100644 --- a/gusto_embedded/docs/models/components/PayScheduleAssignmentBody.md +++ b/gusto_embedded/docs/models/components/PayScheduleAssignmentBody.md @@ -10,5 +10,5 @@ | `salariedPayScheduleUuid` | *Optional\* | :heavy_minus_sign: | Pay schedule for salaried employees. | | `defaultPayScheduleUuid` | *Optional\* | :heavy_minus_sign: | Default pay schedule for employees. | | `partialAssignment` | *Optional\* | :heavy_minus_sign: | 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. | -| `employees` | List\<[Employees](../../models/components/Employees.md)> | :heavy_minus_sign: | List of employees and their pay schedules. | +| `employees` | List\<[PayScheduleAssignmentBodyEmployees](../../models/components/PayScheduleAssignmentBodyEmployees.md)> | :heavy_minus_sign: | List of employees and their pay schedules. | | `departments` | List\<[Departments](../../models/components/Departments.md)> | :heavy_minus_sign: | List of departments and their pay schedules. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/PayScheduleAssignmentBodyEmployees.md b/gusto_embedded/docs/models/components/PayScheduleAssignmentBodyEmployees.md new file mode 100644 index 000000000..626f7b928 --- /dev/null +++ b/gusto_embedded/docs/models/components/PayScheduleAssignmentBodyEmployees.md @@ -0,0 +1,9 @@ +# PayScheduleAssignmentBodyEmployees + + +## Fields + +| Field | Type | Required | Description | +| ------------------- | ------------------- | ------------------- | ------------------- | +| `employeeUuid` | *Optional\* | :heavy_minus_sign: | Employee UUID | +| `payScheduleUuid` | *Optional\* | :heavy_minus_sign: | Pay schedule UUID | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/PayScheduleAssignmentType.md b/gusto_embedded/docs/models/components/PayScheduleAssignmentType.md new file mode 100644 index 000000000..beff0c8fb --- /dev/null +++ b/gusto_embedded/docs/models/components/PayScheduleAssignmentType.md @@ -0,0 +1,19 @@ +# PayScheduleAssignmentType + +## Example Usage + +```java +import com.gusto.embedded_api.models.components.PayScheduleAssignmentType; + +PayScheduleAssignmentType value = PayScheduleAssignmentType.SINGLE; +``` + + +## Values + +| Name | Value | +| ----------------- | ----------------- | +| `SINGLE` | single | +| `HOURLY_SALARIED` | hourly_salaried | +| `BY_EMPLOYEE` | by_employee | +| `BY_DEPARTMENT` | by_department | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/PayScheduleAutoPayrollEnablementBlocker.md b/gusto_embedded/docs/models/components/PayScheduleAutoPayrollEnablementBlocker.md index ba659d09f..3f81e5862 100644 --- a/gusto_embedded/docs/models/components/PayScheduleAutoPayrollEnablementBlocker.md +++ b/gusto_embedded/docs/models/components/PayScheduleAutoPayrollEnablementBlocker.md @@ -5,7 +5,7 @@ A single blocker preventing Autopayroll enablement. ## Fields -| Field | Type | Required | Description | -| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `key` | *Optional\* | :heavy_minus_sign: | The blocker type (e.g. employees_not_on_direct_deposit, employees_not_salaried, missing_funding_method, missing_state_tax_requirements, one_day_ach_speed_not_supported, company_suspended, earned_fast_ach_not_met). | -| `metadata` | [Optional\](../../models/components/PayScheduleAutoPayrollEnablementBlockerMetadata.md) | :heavy_minus_sign: | Blocker-specific metadata (e.g. employee_uuids, states). | \ No newline at end of file +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| `key` | *Optional\* | :heavy_minus_sign: | The blocker type. Possible values: employees_not_on_direct_deposit, employees_not_salaried, missing_state_tax_requirements, missing_funding_method, one_day_ach_speed_not_supported, company_suspended, earned_fast_ach_not_met, hourly_employees_missing_default_hours. | +| `metadata` | [Optional\](../../models/components/PayScheduleAutoPayrollEnablementBlockerMetadata.md) | :heavy_minus_sign: | Blocker-specific metadata (e.g. employee_uuids, states). | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/PaymentMethod.md b/gusto_embedded/docs/models/components/PaymentMethod.md index dda535e83..dd6f92f2d 100644 --- a/gusto_embedded/docs/models/components/PaymentMethod.md +++ b/gusto_embedded/docs/models/components/PaymentMethod.md @@ -1,13 +1,13 @@ # PaymentMethod -The employee's payment method +Payment method to filter by. ## Example Usage ```java import com.gusto.embedded_api.models.components.PaymentMethod; -PaymentMethod value = PaymentMethod.DIRECT_DEPOSIT; +PaymentMethod value = PaymentMethod.CHECK; ``` @@ -15,5 +15,5 @@ PaymentMethod value = PaymentMethod.DIRECT_DEPOSIT; | Name | Value | | ---------------- | ---------------- | -| `DIRECT_DEPOSIT` | Direct Deposit | -| `CHECK` | Check | \ No newline at end of file +| `CHECK` | check | +| `DIRECT_DEPOSIT` | direct_deposit | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/PayrollBatch.md b/gusto_embedded/docs/models/components/PayrollBatch.md new file mode 100644 index 000000000..0ef0a9c6f --- /dev/null +++ b/gusto_embedded/docs/models/components/PayrollBatch.md @@ -0,0 +1,13 @@ +# PayrollBatch + +A payroll cancellation batch request. + + +## Fields + +| Field | Type | Required | Description | +| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `uuid` | *String* | :heavy_check_mark: | The unique identifier of the payroll cancellation batch. | +| `idempotencyKey` | *String* | :heavy_check_mark: | The idempotency key provided when creating the batch. | +| `batchAction` | [BatchAction](../../models/components/BatchAction.md) | :heavy_check_mark: | The action being performed on the batch. | +| `status` | [PayrollBatchStatus](../../models/components/PayrollBatchStatus.md) | :heavy_check_mark: | The lifecycle status of the batch request itself. Terminal values are `completed` (processing finished — inspect `results` and `exclusions` for per-payroll outcomes) and `failed` (the batch crashed at the system level; can be retried). This is distinct from the per-payroll `status` returned inside `results[]`. A `completed` batch does not imply every payroll was cancelled. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/PayrollBatchResults.md b/gusto_embedded/docs/models/components/PayrollBatchResults.md new file mode 100644 index 000000000..35d1b086d --- /dev/null +++ b/gusto_embedded/docs/models/components/PayrollBatchResults.md @@ -0,0 +1,19 @@ +# PayrollBatchResults + +A payroll cancellation batch with per-payroll results. + + +## Fields + +| Field | Type | Required | Description | +| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `uuid` | *String* | :heavy_check_mark: | The unique identifier of the payroll cancellation batch. | +| `idempotencyKey` | *String* | :heavy_check_mark: | The idempotency key provided when creating the batch. | +| `status` | [PayrollBatchResultsStatus](../../models/components/PayrollBatchResultsStatus.md) | :heavy_check_mark: | The lifecycle status of the batch request itself. Terminal values are `completed` (processing finished — inspect `results` and `exclusions` for per-payroll outcomes) and `failed` (the batch crashed at the system level; can be retried). This is distinct from the per-payroll `status` returned inside `results[]`. A `completed` batch does not imply every payroll was cancelled. | +| `submittedAt` | [OffsetDateTime](https://docs.oracle.com/javase/8/docs/api/java/time/OffsetDateTime.html) | :heavy_check_mark: | The timestamp when the batch was submitted. | +| `completedAt` | [OffsetDateTime](https://docs.oracle.com/javase/8/docs/api/java/time/OffsetDateTime.html) | :heavy_minus_sign: | The timestamp when the batch processing completed. | +| `submittedItems` | *JsonNullable\* | :heavy_minus_sign: | The number of payrolls submitted in the batch. | +| `processedItems` | *Optional\* | :heavy_minus_sign: | The number of payrolls processed (cancelled or attempted). Only present once the batch reaches a terminal status. | +| `excludedItems` | *Optional\* | :heavy_minus_sign: | The number of payrolls excluded from processing. Only present once the batch reaches a terminal status. | +| `results` | List\<[Results](../../models/components/Results.md)> | :heavy_minus_sign: | Per-payroll cancellation results. Only present once the batch reaches a terminal status. One entry per authorized payroll. | +| `exclusions` | List\<[Exclusions](../../models/components/Exclusions.md)> | :heavy_minus_sign: | Payrolls that could not be processed, determined at submission time. Only present once the batch reaches a terminal status. Every UUID submitted in the POST batch appears in exactly one of `results` or `exclusions`. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/PayrollBatchResultsCategory.md b/gusto_embedded/docs/models/components/PayrollBatchResultsCategory.md new file mode 100644 index 000000000..4389fa10b --- /dev/null +++ b/gusto_embedded/docs/models/components/PayrollBatchResultsCategory.md @@ -0,0 +1,22 @@ +# PayrollBatchResultsCategory + +Machine-readable category for why the payroll was excluded. +- `not_found`: the payroll does not exist, or is not associated with a company the partner is mapped to +- `duplicate_operation`: the same payroll UUID appeared more than once in the request; only the first occurrence is processed + + +## Example Usage + +```java +import com.gusto.embedded_api.models.components.PayrollBatchResultsCategory; + +PayrollBatchResultsCategory value = PayrollBatchResultsCategory.NOT_FOUND; +``` + + +## Values + +| Name | Value | +| --------------------- | --------------------- | +| `NOT_FOUND` | not_found | +| `DUPLICATE_OPERATION` | duplicate_operation | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/PayrollBatchResultsEntityType.md b/gusto_embedded/docs/models/components/PayrollBatchResultsEntityType.md new file mode 100644 index 000000000..9a6d0bb47 --- /dev/null +++ b/gusto_embedded/docs/models/components/PayrollBatchResultsEntityType.md @@ -0,0 +1,18 @@ +# PayrollBatchResultsEntityType + +The type of entity this exclusion represents. + +## Example Usage + +```java +import com.gusto.embedded_api.models.components.PayrollBatchResultsEntityType; + +PayrollBatchResultsEntityType value = PayrollBatchResultsEntityType.PAYROLL; +``` + + +## Values + +| Name | Value | +| --------- | --------- | +| `PAYROLL` | payroll | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/PayrollBatchResultsErrors.md b/gusto_embedded/docs/models/components/PayrollBatchResultsErrors.md new file mode 100644 index 000000000..2923fe276 --- /dev/null +++ b/gusto_embedded/docs/models/components/PayrollBatchResultsErrors.md @@ -0,0 +1,10 @@ +# PayrollBatchResultsErrors + + +## Fields + +| Field | Type | Required | Description | +| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `errorKey` | *Optional\* | :heavy_minus_sign: | The key identifying the error source. | +| `category` | [Optional\](../../models/components/PayrollBatchResultsResultsCategory.md) | :heavy_minus_sign: | Machine-readable reason the cancellation failed.
    - `not_cancellable`: the payroll is past the point where it can be cancelled
    - `internal_error`: an unexpected error occurred; the request can be retried
    | +| `message` | *Optional\* | :heavy_minus_sign: | Human-readable explanation of the failure. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/PayrollBatchResultsExclusionsStatus.md b/gusto_embedded/docs/models/components/PayrollBatchResultsExclusionsStatus.md new file mode 100644 index 000000000..ab4b8af8d --- /dev/null +++ b/gusto_embedded/docs/models/components/PayrollBatchResultsExclusionsStatus.md @@ -0,0 +1,18 @@ +# PayrollBatchResultsExclusionsStatus + +Always `failed` for an excluded payroll. + +## Example Usage + +```java +import com.gusto.embedded_api.models.components.PayrollBatchResultsExclusionsStatus; + +PayrollBatchResultsExclusionsStatus value = PayrollBatchResultsExclusionsStatus.FAILED; +``` + + +## Values + +| Name | Value | +| -------- | -------- | +| `FAILED` | failed | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/PayrollBatchResultsResultsCategory.md b/gusto_embedded/docs/models/components/PayrollBatchResultsResultsCategory.md new file mode 100644 index 000000000..51e798968 --- /dev/null +++ b/gusto_embedded/docs/models/components/PayrollBatchResultsResultsCategory.md @@ -0,0 +1,22 @@ +# PayrollBatchResultsResultsCategory + +Machine-readable reason the cancellation failed. +- `not_cancellable`: the payroll is past the point where it can be cancelled +- `internal_error`: an unexpected error occurred; the request can be retried + + +## Example Usage + +```java +import com.gusto.embedded_api.models.components.PayrollBatchResultsResultsCategory; + +PayrollBatchResultsResultsCategory value = PayrollBatchResultsResultsCategory.NOT_CANCELLABLE; +``` + + +## Values + +| Name | Value | +| ----------------- | ----------------- | +| `NOT_CANCELLABLE` | not_cancellable | +| `INTERNAL_ERROR` | internal_error | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/PayrollBatchResultsResultsStatus.md b/gusto_embedded/docs/models/components/PayrollBatchResultsResultsStatus.md new file mode 100644 index 000000000..5f83c0950 --- /dev/null +++ b/gusto_embedded/docs/models/components/PayrollBatchResultsResultsStatus.md @@ -0,0 +1,22 @@ +# PayrollBatchResultsResultsStatus + +The outcome of cancelling this payroll. A cancel is atomic — there is no per-payroll `partial_success`. +- `success`: the payroll was cancelled, or required no action (already cancelled / never run) +- `failed`: the payroll could not be cancelled; see `errors` + + +## Example Usage + +```java +import com.gusto.embedded_api.models.components.PayrollBatchResultsResultsStatus; + +PayrollBatchResultsResultsStatus value = PayrollBatchResultsResultsStatus.SUCCESS; +``` + + +## Values + +| Name | Value | +| --------- | --------- | +| `SUCCESS` | success | +| `FAILED` | failed | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/PayrollBatchResultsStatus.md b/gusto_embedded/docs/models/components/PayrollBatchResultsStatus.md new file mode 100644 index 000000000..494584ea1 --- /dev/null +++ b/gusto_embedded/docs/models/components/PayrollBatchResultsStatus.md @@ -0,0 +1,21 @@ +# PayrollBatchResultsStatus + +The lifecycle status of the batch request itself. Terminal values are `completed` (processing finished — inspect `results` and `exclusions` for per-payroll outcomes) and `failed` (the batch crashed at the system level; can be retried). This is distinct from the per-payroll `status` returned inside `results[]`. A `completed` batch does not imply every payroll was cancelled. + +## Example Usage + +```java +import com.gusto.embedded_api.models.components.PayrollBatchResultsStatus; + +PayrollBatchResultsStatus value = PayrollBatchResultsStatus.PENDING; +``` + + +## Values + +| Name | Value | +| ------------ | ------------ | +| `PENDING` | pending | +| `PROCESSING` | processing | +| `COMPLETED` | completed | +| `FAILED` | failed | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/PayrollBatchStatus.md b/gusto_embedded/docs/models/components/PayrollBatchStatus.md new file mode 100644 index 000000000..b15676daa --- /dev/null +++ b/gusto_embedded/docs/models/components/PayrollBatchStatus.md @@ -0,0 +1,21 @@ +# PayrollBatchStatus + +The lifecycle status of the batch request itself. Terminal values are `completed` (processing finished — inspect `results` and `exclusions` for per-payroll outcomes) and `failed` (the batch crashed at the system level; can be retried). This is distinct from the per-payroll `status` returned inside `results[]`. A `completed` batch does not imply every payroll was cancelled. + +## Example Usage + +```java +import com.gusto.embedded_api.models.components.PayrollBatchStatus; + +PayrollBatchStatus value = PayrollBatchStatus.PENDING; +``` + + +## Values + +| Name | Value | +| ------------ | ------------ | +| `PENDING` | pending | +| `PROCESSING` | processing | +| `COMPLETED` | completed | +| `FAILED` | failed | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/PayrollDigest.md b/gusto_embedded/docs/models/components/PayrollDigest.md index 0322bb856..053c53bd2 100644 --- a/gusto_embedded/docs/models/components/PayrollDigest.md +++ b/gusto_embedded/docs/models/components/PayrollDigest.md @@ -9,5 +9,5 @@ A payroll digest batch request. | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `uuid` | *String* | :heavy_check_mark: | The unique identifier of the payroll digest batch. | | `idempotencyKey` | *String* | :heavy_check_mark: | The idempotency key provided when creating the batch. | -| `batchAction` | [BatchAction](../../models/components/BatchAction.md) | :heavy_check_mark: | The action being performed on the batch. | +| `batchAction` | [PayrollDigestBatchAction](../../models/components/PayrollDigestBatchAction.md) | :heavy_check_mark: | The action being performed on the batch. | | `status` | [PayrollDigestStatus](../../models/components/PayrollDigestStatus.md) | :heavy_check_mark: | The lifecycle status of the batch request itself. Terminal values are `completed` (processing finished — inspect `results` and `exclusions` for per-company outcomes) and `failed` (request failed; can be retried). This is distinct from the per-company `status` returned inside `results[]` and `exclusions[]`. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/PayrollDigestBatchAction.md b/gusto_embedded/docs/models/components/PayrollDigestBatchAction.md new file mode 100644 index 000000000..f05362f1d --- /dev/null +++ b/gusto_embedded/docs/models/components/PayrollDigestBatchAction.md @@ -0,0 +1,18 @@ +# PayrollDigestBatchAction + +The action being performed on the batch. + +## Example Usage + +```java +import com.gusto.embedded_api.models.components.PayrollDigestBatchAction; + +PayrollDigestBatchAction value = PayrollDigestBatchAction.CREATE; +``` + + +## Values + +| Name | Value | +| -------- | -------- | +| `CREATE` | create | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/PayrollDigestResultsBlockers.md b/gusto_embedded/docs/models/components/PayrollDigestResultsBlockers.md new file mode 100644 index 000000000..0e66251ca --- /dev/null +++ b/gusto_embedded/docs/models/components/PayrollDigestResultsBlockers.md @@ -0,0 +1,9 @@ +# PayrollDigestResultsBlockers + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------------- | ------------------------------------------------------------- | ------------------------------------------------------------- | ------------------------------------------------------------- | +| `type` | *Optional\* | :heavy_minus_sign: | A machine-readable blocker key (e.g. `missing_bank_account`). | +| `description` | *Optional\* | :heavy_minus_sign: | Human-readable description of the blocker. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/PayrollDigestResultsResults.md b/gusto_embedded/docs/models/components/PayrollDigestResultsResults.md index 3b98f1941..dd80d9d7c 100644 --- a/gusto_embedded/docs/models/components/PayrollDigestResultsResults.md +++ b/gusto_embedded/docs/models/components/PayrollDigestResultsResults.md @@ -10,5 +10,5 @@ | `uuid` | *Optional\* | :heavy_minus_sign: | The UUID of the company. | | `name` | *Optional\* | :heavy_minus_sign: | The legal/display name of the company. | | `status` | [Optional\](../../models/components/PayrollDigestResultsResultsStatus.md) | :heavy_minus_sign: | The status of this company's digest computation. | -| `blockers` | List\<[Blockers](../../models/components/Blockers.md)> | :heavy_minus_sign: | Reasons the company cannot currently run payroll. Applies to every payroll in this company's `payrolls` array — blockers are evaluated at the company level, not per payroll. Empty when there are no blockers. | +| `blockers` | List\<[PayrollDigestResultsBlockers](../../models/components/PayrollDigestResultsBlockers.md)> | :heavy_minus_sign: | Reasons the company cannot currently run payroll. Applies to every payroll in this company's `payrolls` array — blockers are evaluated at the company level, not per payroll. Empty when there are no blockers. | | `payrolls` | List\<[Payrolls](../../models/components/Payrolls.md)> | :heavy_minus_sign: | Payrolls for this company within the digest date window (7 days past, 30–60 days future). May be empty. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/PayrollEmployeeCompensationsType.md b/gusto_embedded/docs/models/components/PayrollEmployeeCompensationsType.md index 3d03e72a6..dd19bec14 100644 --- a/gusto_embedded/docs/models/components/PayrollEmployeeCompensationsType.md +++ b/gusto_embedded/docs/models/components/PayrollEmployeeCompensationsType.md @@ -15,9 +15,10 @@ | `checkAmount` | *JsonNullable\* | :heavy_minus_sign: | The employee's check amount, equal to net_pay + reimbursements. This value is only available for processed payrolls. | | `paymentMethod` | [JsonNullable\](../../models/components/PayrollEmployeeCompensationsTypePaymentMethod.md) | :heavy_minus_sign: | The employee's compensation payment method. Is *only* `Historical` when retrieving external payrolls initially run outside of Gusto, then put into Gusto. | | `memo` | *JsonNullable\* | :heavy_minus_sign: | Custom text that will be printed as a personal note to the employee on a paystub. | -| `fixedCompensations` | List\<[PayrollEmployeeCompensationsTypeFixedCompensations](../../models/components/PayrollEmployeeCompensationsTypeFixedCompensations.md)> | :heavy_minus_sign: | An array of fixed compensations for the employee. Fixed compensations include tips, bonuses, and one time reimbursements. If this payroll has been processed, only fixed compensations with a value greater than 0.00 are returned. For an unprocessed payroll, all active fixed compensations are returned. | -| `hourlyCompensations` | List\<[PayrollEmployeeCompensationsTypeHourlyCompensations](../../models/components/PayrollEmployeeCompensationsTypeHourlyCompensations.md)> | :heavy_minus_sign: | An array of hourly compensations for the employee. Hourly compensations include regular, overtime, and double overtime hours. If this payroll has been processed, only hourly compensations with a value greater than 0.00 are returned. For an unprocessed payroll, all active hourly compensations are returned. | +| `fixedCompensations` | List\<[FixedCompensations](../../models/components/FixedCompensations.md)> | :heavy_minus_sign: | An array of fixed compensations for the employee. Fixed compensations include tips, bonuses, and one time reimbursements. If this payroll has been processed, only fixed compensations with a value greater than 0.00 are returned. For an unprocessed payroll, all active fixed compensations are returned. | +| `hourlyCompensations` | List\<[HourlyCompensations](../../models/components/HourlyCompensations.md)> | :heavy_minus_sign: | An array of hourly compensations for the employee. Hourly compensations include regular, overtime, and double overtime hours. If this payroll has been processed, only hourly compensations with a value greater than 0.00 are returned. For an unprocessed payroll, all active hourly compensations are returned. | | `paidTimeOff` | List\<[PayrollEmployeeCompensationsTypePaidTimeOff](../../models/components/PayrollEmployeeCompensationsTypePaidTimeOff.md)> | :heavy_minus_sign: | An array of all paid time off the employee is eligible for this pay period. | -| `reimbursements` | List\<[PayrollEmployeeCompensationsTypeReimbursements](../../models/components/PayrollEmployeeCompensationsTypeReimbursements.md)> | :heavy_minus_sign: | An array of reimbursements for the employee. | +| `reimbursements` | List\<[Reimbursements](../../models/components/Reimbursements.md)> | :heavy_minus_sign: | An array of reimbursements for the employee. | +| `customWithholdings` | [Optional\](../../models/components/CustomWithholdings.md) | :heavy_minus_sign: | The one-time custom withholding overrides applied to this payroll for this employee.
    `federal` is null when no federal one-time override is set; `state` is an empty
    array when no state one-time overrides are set.
    | | `version` | *Optional\* | :heavy_minus_sign: | The current version of this employee compensation. This field is only available for prepared payrolls. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. | | `deductions` | List\<[Deductions](../../models/components/Deductions.md)> | :heavy_minus_sign: | An array of deductions for the employee. This field is included by default for regular payrolls in version `v2025-06-15` and later. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/PayrollEmployeeCompensationsTypeAmountType.md b/gusto_embedded/docs/models/components/PayrollEmployeeCompensationsTypeAmountType.md new file mode 100644 index 000000000..9097dea01 --- /dev/null +++ b/gusto_embedded/docs/models/components/PayrollEmployeeCompensationsTypeAmountType.md @@ -0,0 +1,19 @@ +# PayrollEmployeeCompensationsTypeAmountType + +How to interpret the amount. + +## Example Usage + +```java +import com.gusto.embedded_api.models.components.PayrollEmployeeCompensationsTypeAmountType; + +PayrollEmployeeCompensationsTypeAmountType value = PayrollEmployeeCompensationsTypeAmountType.FIXED; +``` + + +## Values + +| Name | Value | +| --------- | --------- | +| `FIXED` | fixed | +| `PERCENT` | percent | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/PayrollEmployeeCompensationsTypeCustomWithholdingsAmountType.md b/gusto_embedded/docs/models/components/PayrollEmployeeCompensationsTypeCustomWithholdingsAmountType.md new file mode 100644 index 000000000..8a0c9b47f --- /dev/null +++ b/gusto_embedded/docs/models/components/PayrollEmployeeCompensationsTypeCustomWithholdingsAmountType.md @@ -0,0 +1,19 @@ +# PayrollEmployeeCompensationsTypeCustomWithholdingsAmountType + +How to interpret the amount. + +## Example Usage + +```java +import com.gusto.embedded_api.models.components.PayrollEmployeeCompensationsTypeCustomWithholdingsAmountType; + +PayrollEmployeeCompensationsTypeCustomWithholdingsAmountType value = PayrollEmployeeCompensationsTypeCustomWithholdingsAmountType.FIXED; +``` + + +## Values + +| Name | Value | +| --------- | --------- | +| `FIXED` | fixed | +| `PERCENT` | percent | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/PayrollEmployeeCompensationsTypeOverrideType.md b/gusto_embedded/docs/models/components/PayrollEmployeeCompensationsTypeOverrideType.md new file mode 100644 index 000000000..a61a08b1f --- /dev/null +++ b/gusto_embedded/docs/models/components/PayrollEmployeeCompensationsTypeOverrideType.md @@ -0,0 +1,18 @@ +# PayrollEmployeeCompensationsTypeOverrideType + +Override mode. Only `one_time` is currently exposed. + +## Example Usage + +```java +import com.gusto.embedded_api.models.components.PayrollEmployeeCompensationsTypeOverrideType; + +PayrollEmployeeCompensationsTypeOverrideType value = PayrollEmployeeCompensationsTypeOverrideType.ONE_TIME; +``` + + +## Values + +| Name | Value | +| ---------- | ---------- | +| `ONE_TIME` | one_time | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/PayrollReceipt.md b/gusto_embedded/docs/models/components/PayrollReceipt.md index 1cfc21753..4d8db7ded 100644 --- a/gusto_embedded/docs/models/components/PayrollReceipt.md +++ b/gusto_embedded/docs/models/components/PayrollReceipt.md @@ -15,7 +15,7 @@ | `licenseUri` | *Optional\* | :heavy_minus_sign: | URL for the license information for the licensed payroll processor. Always the fixed string "https://gusto.com/about/licenses" | | `rightToRefund` | *Optional\* | :heavy_minus_sign: | N/A | | `liabilityOfLicensee` | *Optional\* | :heavy_minus_sign: | N/A | -| `totals` | [Optional\](../../models/components/Totals.md) | :heavy_minus_sign: | The subtotals for the payroll. | +| `totals` | [Optional\](../../models/components/PayrollReceiptTotals.md) | :heavy_minus_sign: | The subtotals for the payroll. | | `taxes` | List\<[Taxes](../../models/components/Taxes.md)> | :heavy_minus_sign: | An array of totaled employer and employee taxes for the pay period. | | `employeeCompensations` | List\<[PayrollReceiptEmployeeCompensations](../../models/components/PayrollReceiptEmployeeCompensations.md)> | :heavy_minus_sign: | An array of employee compensations and withholdings for this payroll | -| `licensee` | [Optional\](../../models/components/Licensee.md) | :heavy_minus_sign: | The licensed payroll processor | \ No newline at end of file +| `licensee` | [Optional\](../../models/components/PayrollReceiptLicensee.md) | :heavy_minus_sign: | The licensed payroll processor | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/ContractorPaymentReceiptLicensee.md b/gusto_embedded/docs/models/components/PayrollReceiptLicensee.md similarity index 97% rename from gusto_embedded/docs/models/components/ContractorPaymentReceiptLicensee.md rename to gusto_embedded/docs/models/components/PayrollReceiptLicensee.md index b0731de4a..b9d850a10 100644 --- a/gusto_embedded/docs/models/components/ContractorPaymentReceiptLicensee.md +++ b/gusto_embedded/docs/models/components/PayrollReceiptLicensee.md @@ -1,4 +1,4 @@ -# ContractorPaymentReceiptLicensee +# PayrollReceiptLicensee The licensed payroll processor diff --git a/gusto_embedded/docs/models/components/PayrollReceiptTotals.md b/gusto_embedded/docs/models/components/PayrollReceiptTotals.md new file mode 100644 index 000000000..dd8d4da2a --- /dev/null +++ b/gusto_embedded/docs/models/components/PayrollReceiptTotals.md @@ -0,0 +1,14 @@ +# PayrollReceiptTotals + +The subtotals for the payroll. + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------- | ---------------------------------------------- | ---------------------------------------------- | ---------------------------------------------- | +| `companyDebit` | *Optional\* | :heavy_minus_sign: | The total company debit for the payroll. | +| `netPayDebit` | *Optional\* | :heavy_minus_sign: | The total company net pay for the payroll. | +| `childSupportDebit` | *Optional\* | :heavy_minus_sign: | The total child support debit for the payroll. | +| `reimbursementDebit` | *Optional\* | :heavy_minus_sign: | The total reimbursements for the payroll. | +| `taxDebit` | *Optional\* | :heavy_minus_sign: | The total tax debit for the payroll. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/PayrollShowCustomWithholdings.md b/gusto_embedded/docs/models/components/PayrollShowCustomWithholdings.md new file mode 100644 index 000000000..2d3858464 --- /dev/null +++ b/gusto_embedded/docs/models/components/PayrollShowCustomWithholdings.md @@ -0,0 +1,14 @@ +# PayrollShowCustomWithholdings + +The one-time custom withholding overrides applied to this payroll for this employee. +`federal` is null when no federal one-time override is set; `state` is an empty +array when no state one-time overrides are set. + + + +## Fields + +| Field | Type | Required | Description | +| ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | +| `federal` | [JsonNullable\](../../models/components/PayrollShowFederal.md) | :heavy_minus_sign: | Federal one-time custom withholding override applied to this payroll. | +| `state` | List\<[PayrollShowState](../../models/components/PayrollShowState.md)> | :heavy_minus_sign: | State one-time custom withholding overrides applied to this payroll, one entry per state field. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/PayrollShowEmployeeCompensationsAmountType.md b/gusto_embedded/docs/models/components/PayrollShowEmployeeCompensationsAmountType.md new file mode 100644 index 000000000..ddffd139e --- /dev/null +++ b/gusto_embedded/docs/models/components/PayrollShowEmployeeCompensationsAmountType.md @@ -0,0 +1,19 @@ +# PayrollShowEmployeeCompensationsAmountType + +How to interpret the amount. + +## Example Usage + +```java +import com.gusto.embedded_api.models.components.PayrollShowEmployeeCompensationsAmountType; + +PayrollShowEmployeeCompensationsAmountType value = PayrollShowEmployeeCompensationsAmountType.FIXED; +``` + + +## Values + +| Name | Value | +| --------- | --------- | +| `FIXED` | fixed | +| `PERCENT` | percent | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/PayrollShowEmployeeCompensationsCustomWithholdingsAmountType.md b/gusto_embedded/docs/models/components/PayrollShowEmployeeCompensationsCustomWithholdingsAmountType.md new file mode 100644 index 000000000..034a933bc --- /dev/null +++ b/gusto_embedded/docs/models/components/PayrollShowEmployeeCompensationsCustomWithholdingsAmountType.md @@ -0,0 +1,19 @@ +# PayrollShowEmployeeCompensationsCustomWithholdingsAmountType + +How to interpret the amount. + +## Example Usage + +```java +import com.gusto.embedded_api.models.components.PayrollShowEmployeeCompensationsCustomWithholdingsAmountType; + +PayrollShowEmployeeCompensationsCustomWithholdingsAmountType value = PayrollShowEmployeeCompensationsCustomWithholdingsAmountType.FIXED; +``` + + +## Values + +| Name | Value | +| --------- | --------- | +| `FIXED` | fixed | +| `PERCENT` | percent | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/PayrollShowEmployeeCompensationsOverrideType.md b/gusto_embedded/docs/models/components/PayrollShowEmployeeCompensationsOverrideType.md new file mode 100644 index 000000000..1171cb66a --- /dev/null +++ b/gusto_embedded/docs/models/components/PayrollShowEmployeeCompensationsOverrideType.md @@ -0,0 +1,18 @@ +# PayrollShowEmployeeCompensationsOverrideType + +Override mode. Only `one_time` is currently exposed. + +## Example Usage + +```java +import com.gusto.embedded_api.models.components.PayrollShowEmployeeCompensationsOverrideType; + +PayrollShowEmployeeCompensationsOverrideType value = PayrollShowEmployeeCompensationsOverrideType.ONE_TIME; +``` + + +## Values + +| Name | Value | +| ---------- | ---------- | +| `ONE_TIME` | one_time | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/PayrollShowFederal.md b/gusto_embedded/docs/models/components/PayrollShowFederal.md new file mode 100644 index 000000000..bbf1e6115 --- /dev/null +++ b/gusto_embedded/docs/models/components/PayrollShowFederal.md @@ -0,0 +1,12 @@ +# PayrollShowFederal + +Federal one-time custom withholding override applied to this payroll. + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | +| `overrideType` | [Optional\](../../models/components/PayrollShowEmployeeCompensationsOverrideType.md) | :heavy_minus_sign: | Override mode. Only `one_time` is currently exposed. | +| `amount` | *Optional\* | :heavy_minus_sign: | The amount that was withheld for this payroll. | +| `amountType` | [Optional\](../../models/components/PayrollShowEmployeeCompensationsAmountType.md) | :heavy_minus_sign: | How to interpret the amount. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/PayrollShowOverrideType.md b/gusto_embedded/docs/models/components/PayrollShowOverrideType.md new file mode 100644 index 000000000..53bf27c49 --- /dev/null +++ b/gusto_embedded/docs/models/components/PayrollShowOverrideType.md @@ -0,0 +1,18 @@ +# PayrollShowOverrideType + +Override mode. Only `one_time` is currently exposed. + +## Example Usage + +```java +import com.gusto.embedded_api.models.components.PayrollShowOverrideType; + +PayrollShowOverrideType value = PayrollShowOverrideType.ONE_TIME; +``` + + +## Values + +| Name | Value | +| ---------- | ---------- | +| `ONE_TIME` | one_time | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/PayrollShowState.md b/gusto_embedded/docs/models/components/PayrollShowState.md new file mode 100644 index 000000000..4b83ec0bd --- /dev/null +++ b/gusto_embedded/docs/models/components/PayrollShowState.md @@ -0,0 +1,11 @@ +# PayrollShowState + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| `employeeStateFieldUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the EmployeeStateField this withholding applies to. | +| `overrideType` | [Optional\](../../models/components/PayrollShowOverrideType.md) | :heavy_minus_sign: | Override mode. Only `one_time` is currently exposed. | +| `amount` | *Optional\* | :heavy_minus_sign: | The amount that was withheld for this payroll. | +| `amountType` | [Optional\](../../models/components/PayrollShowEmployeeCompensationsCustomWithholdingsAmountType.md) | :heavy_minus_sign: | How to interpret the amount. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/PayrollUnprocessedEmployeeCompensationsType.md b/gusto_embedded/docs/models/components/PayrollUnprocessedEmployeeCompensationsType.md index 8dc5537b9..5ca8d7f18 100644 --- a/gusto_embedded/docs/models/components/PayrollUnprocessedEmployeeCompensationsType.md +++ b/gusto_embedded/docs/models/components/PayrollUnprocessedEmployeeCompensationsType.md @@ -15,8 +15,9 @@ | `checkAmount` | *JsonNullable\* | :heavy_minus_sign: | The employee's check amount, equal to net_pay + reimbursements. This value is only available for processed payrolls. | | `paymentMethod` | [JsonNullable\](../../models/components/PayrollUnprocessedEmployeeCompensationsTypePaymentMethod.md) | :heavy_minus_sign: | The employee's compensation payment method. Is *only* `Historical` when retrieving external payrolls initially run outside of Gusto, then put into Gusto. | | `memo` | *JsonNullable\* | :heavy_minus_sign: | Custom text that will be printed as a personal note to the employee on a paystub. | -| `fixedCompensations` | List\<[FixedCompensations](../../models/components/FixedCompensations.md)> | :heavy_minus_sign: | An array of fixed compensations for the employee. Fixed compensations include tips, bonuses, and one time reimbursements. If this payroll has been processed, only fixed compensations with a value greater than 0.00 are returned. For an unprocessed payroll, all active fixed compensations are returned. | -| `hourlyCompensations` | List\<[HourlyCompensations](../../models/components/HourlyCompensations.md)> | :heavy_minus_sign: | An array of hourly compensations for the employee. Hourly compensations include regular, overtime, and double overtime hours. If this payroll has been processed, only hourly compensations with a value greater than 0.00 are returned. For an unprocessed payroll, all active hourly compensations are returned. | +| `fixedCompensations` | List\<[PayrollUnprocessedEmployeeCompensationsTypeFixedCompensations](../../models/components/PayrollUnprocessedEmployeeCompensationsTypeFixedCompensations.md)> | :heavy_minus_sign: | An array of fixed compensations for the employee. Fixed compensations include tips, bonuses, and one time reimbursements. If this payroll has been processed, only fixed compensations with a value greater than 0.00 are returned. For an unprocessed payroll, all active fixed compensations are returned. | +| `hourlyCompensations` | List\<[PayrollUnprocessedEmployeeCompensationsTypeHourlyCompensations](../../models/components/PayrollUnprocessedEmployeeCompensationsTypeHourlyCompensations.md)> | :heavy_minus_sign: | An array of hourly compensations for the employee. Hourly compensations include regular, overtime, and double overtime hours. If this payroll has been processed, only hourly compensations with a value greater than 0.00 are returned. For an unprocessed payroll, all active hourly compensations are returned. | | `paidTimeOff` | List\<[PayrollUnprocessedEmployeeCompensationsTypePaidTimeOff](../../models/components/PayrollUnprocessedEmployeeCompensationsTypePaidTimeOff.md)> | :heavy_minus_sign: | An array of all paid time off the employee is eligible for this pay period. | -| `reimbursements` | List\<[Reimbursements](../../models/components/Reimbursements.md)> | :heavy_minus_sign: | An array of reimbursements for the employee. | +| `reimbursements` | List\<[PayrollUnprocessedEmployeeCompensationsTypeReimbursements](../../models/components/PayrollUnprocessedEmployeeCompensationsTypeReimbursements.md)> | :heavy_minus_sign: | An array of reimbursements for the employee. | +| `customWithholdings` | [Optional\](../../models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings.md) | :heavy_minus_sign: | The one-time custom withholding overrides applied to this payroll for this employee.
    `federal` is null when no federal one-time override is set; `state` is an empty
    array when no state one-time overrides are set.
    | | `version` | *Optional\* | :heavy_minus_sign: | The current version of this employee compensation. This field is only available for prepared payrolls. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/api-fundamentals#optimistic-version-control) for information on how to use this field. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeAmountType.md b/gusto_embedded/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeAmountType.md new file mode 100644 index 000000000..efbce9712 --- /dev/null +++ b/gusto_embedded/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeAmountType.md @@ -0,0 +1,19 @@ +# PayrollUnprocessedEmployeeCompensationsTypeAmountType + +How to interpret the amount. + +## Example Usage + +```java +import com.gusto.embedded_api.models.components.PayrollUnprocessedEmployeeCompensationsTypeAmountType; + +PayrollUnprocessedEmployeeCompensationsTypeAmountType value = PayrollUnprocessedEmployeeCompensationsTypeAmountType.FIXED; +``` + + +## Values + +| Name | Value | +| --------- | --------- | +| `FIXED` | fixed | +| `PERCENT` | percent | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings.md b/gusto_embedded/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings.md new file mode 100644 index 000000000..c90466649 --- /dev/null +++ b/gusto_embedded/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings.md @@ -0,0 +1,14 @@ +# PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings + +The one-time custom withholding overrides applied to this payroll for this employee. +`federal` is null when no federal one-time override is set; `state` is an empty +array when no state one-time overrides are set. + + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- | +| `federal` | [JsonNullable\](../../models/components/PayrollUnprocessedEmployeeCompensationsTypeFederal.md) | :heavy_minus_sign: | Federal one-time custom withholding override applied to this payroll. | +| `state` | List\<[PayrollUnprocessedEmployeeCompensationsTypeState](../../models/components/PayrollUnprocessedEmployeeCompensationsTypeState.md)> | :heavy_minus_sign: | State one-time custom withholding overrides applied to this payroll, one entry per state field. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsAmountType.md b/gusto_embedded/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsAmountType.md new file mode 100644 index 000000000..247a30da0 --- /dev/null +++ b/gusto_embedded/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsAmountType.md @@ -0,0 +1,19 @@ +# PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsAmountType + +How to interpret the amount. + +## Example Usage + +```java +import com.gusto.embedded_api.models.components.PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsAmountType; + +PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsAmountType value = PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsAmountType.FIXED; +``` + + +## Values + +| Name | Value | +| --------- | --------- | +| `FIXED` | fixed | +| `PERCENT` | percent | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsOverrideType.md b/gusto_embedded/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsOverrideType.md new file mode 100644 index 000000000..2d9da5c86 --- /dev/null +++ b/gusto_embedded/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsOverrideType.md @@ -0,0 +1,18 @@ +# PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsOverrideType + +Override mode. Only `one_time` is currently exposed. + +## Example Usage + +```java +import com.gusto.embedded_api.models.components.PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsOverrideType; + +PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsOverrideType value = PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsOverrideType.ONE_TIME; +``` + + +## Values + +| Name | Value | +| ---------- | ---------- | +| `ONE_TIME` | one_time | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeFederal.md b/gusto_embedded/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeFederal.md new file mode 100644 index 000000000..29df2d93a --- /dev/null +++ b/gusto_embedded/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeFederal.md @@ -0,0 +1,12 @@ +# PayrollUnprocessedEmployeeCompensationsTypeFederal + +Federal one-time custom withholding override applied to this payroll. + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `overrideType` | [Optional\](../../models/components/PayrollUnprocessedEmployeeCompensationsTypeOverrideType.md) | :heavy_minus_sign: | Override mode. Only `one_time` is currently exposed. | +| `amount` | *Optional\* | :heavy_minus_sign: | The amount that was withheld for this payroll. | +| `amountType` | [Optional\](../../models/components/PayrollUnprocessedEmployeeCompensationsTypeAmountType.md) | :heavy_minus_sign: | How to interpret the amount. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/PayrollEmployeeCompensationsTypeFixedCompensations.md b/gusto_embedded/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeFixedCompensations.md similarity index 97% rename from gusto_embedded/docs/models/components/PayrollEmployeeCompensationsTypeFixedCompensations.md rename to gusto_embedded/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeFixedCompensations.md index 631946a82..5296b2d38 100644 --- a/gusto_embedded/docs/models/components/PayrollEmployeeCompensationsTypeFixedCompensations.md +++ b/gusto_embedded/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeFixedCompensations.md @@ -1,4 +1,4 @@ -# PayrollEmployeeCompensationsTypeFixedCompensations +# PayrollUnprocessedEmployeeCompensationsTypeFixedCompensations ## Fields diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/PayrollEmployeeCompensationsTypeHourlyCompensations.md b/gusto_embedded/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeHourlyCompensations.md similarity index 98% rename from gusto_embedded_v_2025_11_15/docs/models/components/PayrollEmployeeCompensationsTypeHourlyCompensations.md rename to gusto_embedded/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeHourlyCompensations.md index cf0b473d7..6c039e58f 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/PayrollEmployeeCompensationsTypeHourlyCompensations.md +++ b/gusto_embedded/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeHourlyCompensations.md @@ -1,4 +1,4 @@ -# PayrollEmployeeCompensationsTypeHourlyCompensations +# PayrollUnprocessedEmployeeCompensationsTypeHourlyCompensations ## Fields diff --git a/gusto_embedded/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeOverrideType.md b/gusto_embedded/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeOverrideType.md new file mode 100644 index 000000000..ab7268f7c --- /dev/null +++ b/gusto_embedded/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeOverrideType.md @@ -0,0 +1,18 @@ +# PayrollUnprocessedEmployeeCompensationsTypeOverrideType + +Override mode. Only `one_time` is currently exposed. + +## Example Usage + +```java +import com.gusto.embedded_api.models.components.PayrollUnprocessedEmployeeCompensationsTypeOverrideType; + +PayrollUnprocessedEmployeeCompensationsTypeOverrideType value = PayrollUnprocessedEmployeeCompensationsTypeOverrideType.ONE_TIME; +``` + + +## Values + +| Name | Value | +| ---------- | ---------- | +| `ONE_TIME` | one_time | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/PayrollEmployeeCompensationsTypeReimbursements.md b/gusto_embedded/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeReimbursements.md similarity index 97% rename from gusto_embedded_v_2025_11_15/docs/models/components/PayrollEmployeeCompensationsTypeReimbursements.md rename to gusto_embedded/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeReimbursements.md index c6b17aa06..4f08ee2bb 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/PayrollEmployeeCompensationsTypeReimbursements.md +++ b/gusto_embedded/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeReimbursements.md @@ -1,4 +1,4 @@ -# PayrollEmployeeCompensationsTypeReimbursements +# PayrollUnprocessedEmployeeCompensationsTypeReimbursements ## Fields diff --git a/gusto_embedded/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeState.md b/gusto_embedded/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeState.md new file mode 100644 index 000000000..8af5caa60 --- /dev/null +++ b/gusto_embedded/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeState.md @@ -0,0 +1,11 @@ +# PayrollUnprocessedEmployeeCompensationsTypeState + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `employeeStateFieldUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the EmployeeStateField this withholding applies to. | +| `overrideType` | [Optional\](../../models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsOverrideType.md) | :heavy_minus_sign: | Override mode. Only `one_time` is currently exposed. | +| `amount` | *Optional\* | :heavy_minus_sign: | The amount that was withheld for this payroll. | +| `amountType` | [Optional\](../../models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsAmountType.md) | :heavy_minus_sign: | How to interpret the amount. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/PayrollUpdateCustomWithholdings.md b/gusto_embedded/docs/models/components/PayrollUpdateCustomWithholdings.md new file mode 100644 index 000000000..663fa43ab --- /dev/null +++ b/gusto_embedded/docs/models/components/PayrollUpdateCustomWithholdings.md @@ -0,0 +1,14 @@ +# PayrollUpdateCustomWithholdings + +Optional per-payroll one-time custom withholdings for federal and/or state income tax. +When provided, the supplied override takes precedence over any persistent withholding schedule for this run. +This field is in limited release; if your application does not have access, requests including it are silently ignored. + + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | +| `federal` | [Optional\](../../models/components/PayrollUpdateFederal.md) | :heavy_minus_sign: | Federal one-time custom withholding override. | +| `state` | List\<[PayrollUpdateState](../../models/components/PayrollUpdateState.md)> | :heavy_minus_sign: | State one-time custom withholding overrides, one entry per state field. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/PayrollUpdateEmployeeCompensations.md b/gusto_embedded/docs/models/components/PayrollUpdateEmployeeCompensations.md index aca72c1b6..3d8bf7689 100644 --- a/gusto_embedded/docs/models/components/PayrollUpdateEmployeeCompensations.md +++ b/gusto_embedded/docs/models/components/PayrollUpdateEmployeeCompensations.md @@ -3,15 +3,16 @@ ## Fields -| Field | Type | Required | Description | -| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `employeeUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the employee. | -| `version` | *Optional\* | :heavy_minus_sign: | The current version of this employee compensation from the prepared payroll. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. | -| `excluded` | *Optional\* | :heavy_minus_sign: | This employee will be excluded from payroll calculation and will not be paid for the payroll. | -| `paymentMethod` | [Optional\](../../models/components/PayrollUpdatePaymentMethod.md) | :heavy_minus_sign: | The employee's compensation payment method. Invalid values will be ignored. | -| `memo` | *Optional\* | :heavy_minus_sign: | Custom text that will be printed as a personal note to the employee on a paystub. | -| `fixedCompensations` | List\<[PayrollUpdateFixedCompensations](../../models/components/PayrollUpdateFixedCompensations.md)> | :heavy_minus_sign: | N/A | -| `hourlyCompensations` | List\<[PayrollUpdateHourlyCompensations](../../models/components/PayrollUpdateHourlyCompensations.md)> | :heavy_minus_sign: | N/A | -| `deductions` | List\<[PayrollUpdateDeductions](../../models/components/PayrollUpdateDeductions.md)> | :heavy_minus_sign: | N/A | -| `paidTimeOff` | List\<[PayrollUpdatePaidTimeOff](../../models/components/PayrollUpdatePaidTimeOff.md)> | :heavy_minus_sign: | An array of all paid time off the employee is eligible for this pay period. Each paid time off object can be the name or the specific policy_uuid. | -| `reimbursements` | List\<[PayrollUpdateReimbursements](../../models/components/PayrollUpdateReimbursements.md)> | :heavy_minus_sign: | An array of reimbursements for the employee. | \ No newline at end of file +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `employeeUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the employee. | +| `version` | *Optional\* | :heavy_minus_sign: | The current version of this employee compensation from the prepared payroll. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. | +| `excluded` | *Optional\* | :heavy_minus_sign: | This employee will be excluded from payroll calculation and will not be paid for the payroll. | +| `paymentMethod` | [Optional\](../../models/components/PayrollUpdatePaymentMethod.md) | :heavy_minus_sign: | The employee's compensation payment method. Invalid values will be ignored. | +| `memo` | *Optional\* | :heavy_minus_sign: | Custom text that will be printed as a personal note to the employee on a paystub. | +| `fixedCompensations` | List\<[PayrollUpdateFixedCompensations](../../models/components/PayrollUpdateFixedCompensations.md)> | :heavy_minus_sign: | N/A | +| `hourlyCompensations` | List\<[PayrollUpdateHourlyCompensations](../../models/components/PayrollUpdateHourlyCompensations.md)> | :heavy_minus_sign: | N/A | +| `deductions` | List\<[PayrollUpdateDeductions](../../models/components/PayrollUpdateDeductions.md)> | :heavy_minus_sign: | N/A | +| `customWithholdings` | [Optional\](../../models/components/PayrollUpdateCustomWithholdings.md) | :heavy_minus_sign: | Optional per-payroll one-time custom withholdings for federal and/or state income tax.
    When provided, the supplied override takes precedence over any persistent withholding schedule for this run.
    This field is in limited release; if your application does not have access, requests including it are silently ignored.
    | +| `paidTimeOff` | List\<[PayrollUpdatePaidTimeOff](../../models/components/PayrollUpdatePaidTimeOff.md)> | :heavy_minus_sign: | An array of all paid time off the employee is eligible for this pay period. Each paid time off object can be the name or the specific policy_uuid. | +| `reimbursements` | List\<[PayrollUpdateReimbursements](../../models/components/PayrollUpdateReimbursements.md)> | :heavy_minus_sign: | An array of reimbursements for the employee. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/PayrollUpdateEmployeeCompensationsAmountType.md b/gusto_embedded/docs/models/components/PayrollUpdateEmployeeCompensationsAmountType.md new file mode 100644 index 000000000..8d22b2281 --- /dev/null +++ b/gusto_embedded/docs/models/components/PayrollUpdateEmployeeCompensationsAmountType.md @@ -0,0 +1,19 @@ +# PayrollUpdateEmployeeCompensationsAmountType + +How to interpret the amount. + +## Example Usage + +```java +import com.gusto.embedded_api.models.components.PayrollUpdateEmployeeCompensationsAmountType; + +PayrollUpdateEmployeeCompensationsAmountType value = PayrollUpdateEmployeeCompensationsAmountType.FIXED; +``` + + +## Values + +| Name | Value | +| --------- | --------- | +| `FIXED` | fixed | +| `PERCENT` | percent | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/PayrollUpdateEmployeeCompensationsCustomWithholdingsAmountType.md b/gusto_embedded/docs/models/components/PayrollUpdateEmployeeCompensationsCustomWithholdingsAmountType.md new file mode 100644 index 000000000..2b374ec87 --- /dev/null +++ b/gusto_embedded/docs/models/components/PayrollUpdateEmployeeCompensationsCustomWithholdingsAmountType.md @@ -0,0 +1,19 @@ +# PayrollUpdateEmployeeCompensationsCustomWithholdingsAmountType + +How to interpret the amount. + +## Example Usage + +```java +import com.gusto.embedded_api.models.components.PayrollUpdateEmployeeCompensationsCustomWithholdingsAmountType; + +PayrollUpdateEmployeeCompensationsCustomWithholdingsAmountType value = PayrollUpdateEmployeeCompensationsCustomWithholdingsAmountType.FIXED; +``` + + +## Values + +| Name | Value | +| --------- | --------- | +| `FIXED` | fixed | +| `PERCENT` | percent | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/PayrollUpdateEmployeeCompensationsOverrideType.md b/gusto_embedded/docs/models/components/PayrollUpdateEmployeeCompensationsOverrideType.md new file mode 100644 index 000000000..0783e082a --- /dev/null +++ b/gusto_embedded/docs/models/components/PayrollUpdateEmployeeCompensationsOverrideType.md @@ -0,0 +1,18 @@ +# PayrollUpdateEmployeeCompensationsOverrideType + +Override mode. Only `one_time` is currently supported. + +## Example Usage + +```java +import com.gusto.embedded_api.models.components.PayrollUpdateEmployeeCompensationsOverrideType; + +PayrollUpdateEmployeeCompensationsOverrideType value = PayrollUpdateEmployeeCompensationsOverrideType.ONE_TIME; +``` + + +## Values + +| Name | Value | +| ---------- | ---------- | +| `ONE_TIME` | one_time | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/PayrollUpdateFederal.md b/gusto_embedded/docs/models/components/PayrollUpdateFederal.md new file mode 100644 index 000000000..009ecf2d1 --- /dev/null +++ b/gusto_embedded/docs/models/components/PayrollUpdateFederal.md @@ -0,0 +1,12 @@ +# PayrollUpdateFederal + +Federal one-time custom withholding override. + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | +| `overrideType` | [Optional\](../../models/components/PayrollUpdateOverrideType.md) | :heavy_minus_sign: | Override mode. Only `one_time` is currently supported. | +| `amount` | *Optional\* | :heavy_minus_sign: | The amount to be withheld for this payroll. | +| `amountType` | [Optional\](../../models/components/PayrollUpdateEmployeeCompensationsAmountType.md) | :heavy_minus_sign: | How to interpret the amount. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/PayrollUpdateOverrideType.md b/gusto_embedded/docs/models/components/PayrollUpdateOverrideType.md new file mode 100644 index 000000000..d4d2c57ea --- /dev/null +++ b/gusto_embedded/docs/models/components/PayrollUpdateOverrideType.md @@ -0,0 +1,18 @@ +# PayrollUpdateOverrideType + +Override mode. Only `one_time` is currently supported. + +## Example Usage + +```java +import com.gusto.embedded_api.models.components.PayrollUpdateOverrideType; + +PayrollUpdateOverrideType value = PayrollUpdateOverrideType.ONE_TIME; +``` + + +## Values + +| Name | Value | +| ---------- | ---------- | +| `ONE_TIME` | one_time | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/PayrollUpdateState.md b/gusto_embedded/docs/models/components/PayrollUpdateState.md new file mode 100644 index 000000000..2d38a6401 --- /dev/null +++ b/gusto_embedded/docs/models/components/PayrollUpdateState.md @@ -0,0 +1,11 @@ +# PayrollUpdateState + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `employeeStateFieldUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the EmployeeStateField this withholding applies to. | +| `overrideType` | [Optional\](../../models/components/PayrollUpdateEmployeeCompensationsOverrideType.md) | :heavy_minus_sign: | Override mode. Only `one_time` is currently supported. | +| `amount` | *Optional\* | :heavy_minus_sign: | The amount to be withheld for this payroll. | +| `amountType` | [Optional\](../../models/components/PayrollUpdateEmployeeCompensationsCustomWithholdingsAmountType.md) | :heavy_minus_sign: | How to interpret the amount. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/PeopleBatchResults.md b/gusto_embedded/docs/models/components/PeopleBatchResults.md index 2002eb602..0feaa44a4 100644 --- a/gusto_embedded/docs/models/components/PeopleBatchResults.md +++ b/gusto_embedded/docs/models/components/PeopleBatchResults.md @@ -5,15 +5,15 @@ A people batch with processing results. ## Fields -| Field | Type | Required | Description | -| ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | -| `uuid` | *String* | :heavy_check_mark: | The unique identifier of the people batch. | -| `idempotencyKey` | *String* | :heavy_check_mark: | The idempotency key provided when creating the batch. | -| `status` | [PeopleBatchResultsStatus](../../models/components/PeopleBatchResultsStatus.md) | :heavy_check_mark: | The current status of the batch processing. | -| `submittedAt` | [OffsetDateTime](https://docs.oracle.com/javase/8/docs/api/java/time/OffsetDateTime.html) | :heavy_minus_sign: | The timestamp when the batch was submitted. | -| `completedAt` | [OffsetDateTime](https://docs.oracle.com/javase/8/docs/api/java/time/OffsetDateTime.html) | :heavy_minus_sign: | The timestamp when the batch processing completed. | -| `submittedItems` | *JsonNullable\* | :heavy_minus_sign: | The number of items submitted in the batch. | -| `processedItems` | *Optional\* | :heavy_minus_sign: | The number of items successfully processed. | -| `excludedItems` | *Optional\* | :heavy_minus_sign: | The number of items excluded from processing. | -| `results` | List\<[Results](../../models/components/Results.md)> | :heavy_minus_sign: | The results for each batch item. | -| `exclusions` | List\<[Exclusions](../../models/components/Exclusions.md)> | :heavy_minus_sign: | Items excluded from processing due to validation errors. | \ No newline at end of file +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | +| `uuid` | *String* | :heavy_check_mark: | The unique identifier of the people batch. | +| `idempotencyKey` | *String* | :heavy_check_mark: | The idempotency key provided when creating the batch. | +| `status` | [PeopleBatchResultsStatus](../../models/components/PeopleBatchResultsStatus.md) | :heavy_check_mark: | The current status of the batch processing. | +| `submittedAt` | [OffsetDateTime](https://docs.oracle.com/javase/8/docs/api/java/time/OffsetDateTime.html) | :heavy_minus_sign: | The timestamp when the batch was submitted. | +| `completedAt` | [OffsetDateTime](https://docs.oracle.com/javase/8/docs/api/java/time/OffsetDateTime.html) | :heavy_minus_sign: | The timestamp when the batch processing completed. | +| `submittedItems` | *JsonNullable\* | :heavy_minus_sign: | The number of items submitted in the batch. | +| `processedItems` | *Optional\* | :heavy_minus_sign: | The number of items successfully processed. | +| `excludedItems` | *Optional\* | :heavy_minus_sign: | The number of items excluded from processing. | +| `results` | List\<[PeopleBatchResultsResults](../../models/components/PeopleBatchResultsResults.md)> | :heavy_minus_sign: | The results for each batch item. | +| `exclusions` | List\<[PeopleBatchResultsExclusions](../../models/components/PeopleBatchResultsExclusions.md)> | :heavy_minus_sign: | Items excluded from processing due to validation errors. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/PeopleBatchResultsExclusions.md b/gusto_embedded/docs/models/components/PeopleBatchResultsExclusions.md new file mode 100644 index 000000000..a060cc6f6 --- /dev/null +++ b/gusto_embedded/docs/models/components/PeopleBatchResultsExclusions.md @@ -0,0 +1,11 @@ +# PeopleBatchResultsExclusions + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------- | ------------------------------------------- | ------------------------------------------- | ------------------------------------------- | +| `externalId` | *Optional\* | :heavy_minus_sign: | The external ID of the excluded item(s). | +| `category` | *Optional\* | :heavy_minus_sign: | The exclusion category. | +| `message` | *Optional\* | :heavy_minus_sign: | Human-readable explanation for exclusion. | +| `itemCount` | *Optional\* | :heavy_minus_sign: | Number of items affected by this exclusion. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/PeopleBatchResultsResults.md b/gusto_embedded/docs/models/components/PeopleBatchResultsResults.md new file mode 100644 index 000000000..117463dc2 --- /dev/null +++ b/gusto_embedded/docs/models/components/PeopleBatchResultsResults.md @@ -0,0 +1,14 @@ +# PeopleBatchResultsResults + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | +| `externalId` | *Optional\* | :heavy_minus_sign: | The external ID provided in the batch request. | +| `role` | [Optional\](../../models/components/Role.md) | :heavy_minus_sign: | The type of person created. | +| `status` | [Optional\](../../models/components/PeopleBatchResultsResultsStatus.md) | :heavy_minus_sign: | The status of this batch item. | +| `idx` | *Optional\* | :heavy_minus_sign: | The index of this item in the original batch request. | +| `uuid` | *Optional\* | :heavy_minus_sign: | The UUID of the created person. | +| `employeeUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the created employee (if role is employee). | +| `errors` | List\<[PeopleBatchResultsErrors](../../models/components/PeopleBatchResultsErrors.md)> | :heavy_minus_sign: | Errors encountered while processing this batch item. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/RecipientType.md b/gusto_embedded/docs/models/components/RecipientType.md index 475d32ba2..5a625a523 100644 --- a/gusto_embedded/docs/models/components/RecipientType.md +++ b/gusto_embedded/docs/models/components/RecipientType.md @@ -1,13 +1,11 @@ # RecipientType -The type of recipient associated with the document (will be `Contractor` for Contractor Documents) - ## Example Usage ```java import com.gusto.embedded_api.models.components.RecipientType; -RecipientType value = RecipientType.COMPANY; +RecipientType value = RecipientType.EMPLOYEE; ``` @@ -15,6 +13,5 @@ RecipientType value = RecipientType.COMPANY; | Name | Value | | ------------ | ------------ | -| `COMPANY` | Company | | `EMPLOYEE` | Employee | | `CONTRACTOR` | Contractor | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/Rehire.md b/gusto_embedded/docs/models/components/Rehire.md index fd2baae62..ed57665f6 100644 --- a/gusto_embedded/docs/models/components/Rehire.md +++ b/gusto_embedded/docs/models/components/Rehire.md @@ -9,7 +9,7 @@ | `effectiveDate` | *Optional\* | :heavy_minus_sign: | The day when the employee returns to work. | | `fileNewHireReport` | *Optional\* | :heavy_minus_sign: | The boolean flag indicating whether Gusto will file a new hire report for the employee. | | `workLocationUuid` | *Optional\* | :heavy_minus_sign: | The uuid of the employee's work location. | -| `employmentStatus` | [Optional\](../../models/components/EmploymentStatus.md) | :heavy_minus_sign: | The employee's employment status. Supplying an invalid option will set the employment_status to *not_set*. | +| `employmentStatus` | [Optional\](../../models/components/RehireEmploymentStatus.md) | :heavy_minus_sign: | The employee's employment status. Supplying an invalid option will set the employment_status to *not_set*. | | `twoPercentShareholder` | *Optional\* | :heavy_minus_sign: | Whether the employee is a two percent shareholder of the company. This field only applies to companies with an S-Corp entity type. | | `employeeUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the employee. | | `active` | *Optional\* | :heavy_minus_sign: | Whether the employee's rehire has gone into effect. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/RehireEmploymentStatus.md b/gusto_embedded/docs/models/components/RehireEmploymentStatus.md new file mode 100644 index 000000000..422b1df33 --- /dev/null +++ b/gusto_embedded/docs/models/components/RehireEmploymentStatus.md @@ -0,0 +1,23 @@ +# RehireEmploymentStatus + +The employee's employment status. Supplying an invalid option will set the employment_status to *not_set*. + +## Example Usage + +```java +import com.gusto.embedded_api.models.components.RehireEmploymentStatus; + +RehireEmploymentStatus value = RehireEmploymentStatus.PART_TIME; +``` + + +## Values + +| Name | Value | +| -------------------- | -------------------- | +| `PART_TIME` | part_time | +| `FULL_TIME` | full_time | +| `PART_TIME_ELIGIBLE` | part_time_eligible | +| `VARIABLE` | variable | +| `SEASONAL` | seasonal | +| `NOT_SET` | not_set | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/ReportType.md b/gusto_embedded/docs/models/components/ReportType.md new file mode 100644 index 000000000..74e061805 --- /dev/null +++ b/gusto_embedded/docs/models/components/ReportType.md @@ -0,0 +1,18 @@ +# ReportType + +Identifies this batch item as a custom report. + +## Example Usage + +```java +import com.gusto.embedded_api.models.components.ReportType; + +ReportType value = ReportType.CUSTOM_REPORT; +``` + + +## Values + +| Name | Value | +| --------------- | --------------- | +| `CUSTOM_REPORT` | custom_report | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/Results.md b/gusto_embedded/docs/models/components/Results.md index 48e2f05cd..51744c248 100644 --- a/gusto_embedded/docs/models/components/Results.md +++ b/gusto_embedded/docs/models/components/Results.md @@ -3,12 +3,9 @@ ## Fields -| Field | Type | Required | Description | -| -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -| `externalId` | *Optional\* | :heavy_minus_sign: | The external ID provided in the batch request. | -| `role` | [Optional\](../../models/components/Role.md) | :heavy_minus_sign: | The type of person created. | -| `status` | [Optional\](../../models/components/PeopleBatchResultsResultsStatus.md) | :heavy_minus_sign: | The status of this batch item. | -| `idx` | *Optional\* | :heavy_minus_sign: | The index of this item in the original batch request. | -| `uuid` | *Optional\* | :heavy_minus_sign: | The UUID of the created person. | -| `employeeUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the created employee (if role is employee). | -| `errors` | List\<[PeopleBatchResultsErrors](../../models/components/PeopleBatchResultsErrors.md)> | :heavy_minus_sign: | Errors encountered while processing this batch item. | \ No newline at end of file +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `idx` | *Optional\* | :heavy_minus_sign: | The index of this payroll in the original POST batch array. | +| `uuid` | *Optional\* | :heavy_minus_sign: | The UUID of the payroll. | +| `status` | [Optional\](../../models/components/PayrollBatchResultsResultsStatus.md) | :heavy_minus_sign: | The outcome of cancelling this payroll. A cancel is atomic — there is no per-payroll `partial_success`.
    - `success`: the payroll was cancelled, or required no action (already cancelled / never run)
    - `failed`: the payroll could not be cancelled; see `errors`
    | +| `errors` | List\<[PayrollBatchResultsErrors](../../models/components/PayrollBatchResultsErrors.md)> | :heavy_minus_sign: | Present only when `status` is `failed`. A cancel is a single atomic operation, so this is a flat array with exactly one error. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/ReverseWireTransaction.md b/gusto_embedded/docs/models/components/ReverseWireTransaction.md new file mode 100644 index 000000000..23b632d12 --- /dev/null +++ b/gusto_embedded/docs/models/components/ReverseWireTransaction.md @@ -0,0 +1,18 @@ +# ReverseWireTransaction + +Representation of a reverse wire (drawdown) transaction. Reverse wires are debit transactions initiated by Gusto to pull funds from a partner's bank account to cover payroll or contractor payment obligations. + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| `companyUuid` | *String* | :heavy_check_mark: | Unique identifier of the company the reverse wire transaction belongs to | +| `amount` | *String* | :heavy_check_mark: | The amount of money moved by the reverse wire, as a decimal string. Always non-negative. | +| `status` | [ReverseWireTransactionStatus](../../models/components/ReverseWireTransactionStatus.md) | :heavy_check_mark: | Current status of the reverse wire transaction.
    - `pending_processing`: The reverse wire has been initiated and is awaiting processing by the banking network.
    - `processed`: The reverse wire was successfully settled and funds have been received.
    - `rejected`: The reverse wire was rejected by the receiving bank (e.g. invalid account, insufficient funds).
    - `failed`: The reverse wire failed during processing due to a system or network error.
    | +| `paymentDirection` | [ReverseWireTransactionPaymentDirection](../../models/components/ReverseWireTransactionPaymentDirection.md) | :heavy_check_mark: | The direction of the payment. Reverse wires are always debits from the company's account. | +| `bankName` | *JsonNullable\* | :heavy_minus_sign: | Name of the receiving bank. Null when the bank is not known. | +| `paymentEventType` | [JsonNullable\](../../models/components/ReverseWireTransactionPaymentEventType.md) | :heavy_minus_sign: | The type of payment event this reverse wire is associated with. Null when the wire is not linked to a payroll or contractor payment. | +| `paymentEventUuid` | *JsonNullable\* | :heavy_minus_sign: | Unique identifier of the associated payroll or contractor payment. Null when the wire is not linked to a payment event. | +| `paymentEventCheckDate` | *JsonNullable\* | :heavy_minus_sign: | The check date of the associated payment event. Null when the wire is not linked to a payment event. | +| `createdAt` | *String* | :heavy_check_mark: | The date the reverse wire record was created. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/ReverseWireTransactionPaymentDirection.md b/gusto_embedded/docs/models/components/ReverseWireTransactionPaymentDirection.md new file mode 100644 index 000000000..0694ea2cf --- /dev/null +++ b/gusto_embedded/docs/models/components/ReverseWireTransactionPaymentDirection.md @@ -0,0 +1,18 @@ +# ReverseWireTransactionPaymentDirection + +The direction of the payment. Reverse wires are always debits from the company's account. + +## Example Usage + +```java +import com.gusto.embedded_api.models.components.ReverseWireTransactionPaymentDirection; + +ReverseWireTransactionPaymentDirection value = ReverseWireTransactionPaymentDirection.DEBIT; +``` + + +## Values + +| Name | Value | +| ------- | ------- | +| `DEBIT` | debit | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/ReverseWireTransactionPaymentEventType.md b/gusto_embedded/docs/models/components/ReverseWireTransactionPaymentEventType.md new file mode 100644 index 000000000..2bbd1f424 --- /dev/null +++ b/gusto_embedded/docs/models/components/ReverseWireTransactionPaymentEventType.md @@ -0,0 +1,17 @@ +# ReverseWireTransactionPaymentEventType + +## Example Usage + +```java +import com.gusto.embedded_api.models.components.ReverseWireTransactionPaymentEventType; + +ReverseWireTransactionPaymentEventType value = ReverseWireTransactionPaymentEventType.PAYROLL; +``` + + +## Values + +| Name | Value | +| -------------------- | -------------------- | +| `PAYROLL` | Payroll | +| `CONTRACTOR_PAYMENT` | ContractorPayment | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/ReverseWireTransactionStatus.md b/gusto_embedded/docs/models/components/ReverseWireTransactionStatus.md new file mode 100644 index 000000000..c051370a2 --- /dev/null +++ b/gusto_embedded/docs/models/components/ReverseWireTransactionStatus.md @@ -0,0 +1,26 @@ +# ReverseWireTransactionStatus + +Current status of the reverse wire transaction. +- `pending_processing`: The reverse wire has been initiated and is awaiting processing by the banking network. +- `processed`: The reverse wire was successfully settled and funds have been received. +- `rejected`: The reverse wire was rejected by the receiving bank (e.g. invalid account, insufficient funds). +- `failed`: The reverse wire failed during processing due to a system or network error. + + +## Example Usage + +```java +import com.gusto.embedded_api.models.components.ReverseWireTransactionStatus; + +ReverseWireTransactionStatus value = ReverseWireTransactionStatus.PENDING_PROCESSING; +``` + + +## Values + +| Name | Value | +| -------------------- | -------------------- | +| `PENDING_PROCESSING` | pending_processing | +| `PROCESSED` | processed | +| `REJECTED` | rejected | +| `FAILED` | failed | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/ShowEmployees.md b/gusto_embedded/docs/models/components/ShowEmployees.md index 218142fda..068728955 100644 --- a/gusto_embedded/docs/models/components/ShowEmployees.md +++ b/gusto_embedded/docs/models/components/ShowEmployees.md @@ -20,8 +20,8 @@ The representation of an employee in Gusto. | `twoPercentShareholder` | *JsonNullable\* | :heavy_minus_sign: | Whether the employee is a two percent shareholder of the company. This field only applies to companies with an S-Corp entity type. | | | `workEmail` | *JsonNullable\* | :heavy_minus_sign: | The work email address of the employee. This is provided to support syncing users between our system and yours. You may not use this email address for any other purpose (e.g. marketing). | | | `onboarded` | *Optional\* | :heavy_minus_sign: | Whether the employee has completed onboarding. | | -| `onboardingStatus` | [JsonNullable\](../../models/components/OnboardingStatus.md) | :heavy_minus_sign: | The current onboarding status of the employee | | -| `onboardingDocumentsConfig` | [Optional\](../../models/components/OnboardingDocumentsConfig.md) | :heavy_minus_sign: | Configuration for an employee onboarding documents during onboarding | | +| `onboardingStatus` | [JsonNullable\](../../models/components/ShowEmployeesOnboardingStatus.md) | :heavy_minus_sign: | The current onboarding status of the employee | | +| `onboardingDocumentsConfig` | [Optional\](../../models/components/ShowEmployeesOnboardingDocumentsConfig.md) | :heavy_minus_sign: | Configuration for an employee onboarding documents during onboarding | | | `jobs` | List\<[Job](../../models/components/Job.md)> | :heavy_minus_sign: | N/A | | | `eligiblePaidTimeOff` | List\<[PaidTimeOff](../../models/components/PaidTimeOff.md)> | :heavy_minus_sign: | N/A | | | `terminations` | List\<[Termination](../../models/components/Termination.md)> | :heavy_minus_sign: | N/A | | @@ -32,8 +32,8 @@ The representation of an employee in Gusto. | `ssn` | *Optional\* | :heavy_minus_sign: | Deprecated. This field always returns an empty string. | | | `phone` | *JsonNullable\* | :heavy_minus_sign: | N/A | | | `preferredFirstName` | *JsonNullable\* | :heavy_minus_sign: | N/A | | -| `paymentMethod` | [Optional\](../../models/components/PaymentMethod.md) | :heavy_minus_sign: | The employee's payment method | | -| `currentEmploymentStatus` | [JsonNullable\](../../models/components/CurrentEmploymentStatus.md) | :heavy_minus_sign: | The current employment status of the employee. Full-time employees work 30+ hours per week. Part-time employees are split into two groups: those that work 20-29 hours a week, and those that work under 20 hours a week. Variable employees have hours that vary each week. Seasonal employees are hired for 6 months of the year or less. | | +| `paymentMethod` | [Optional\](../../models/components/ShowEmployeesPaymentMethod.md) | :heavy_minus_sign: | The employee's payment method | | +| `currentEmploymentStatus` | [JsonNullable\](../../models/components/ShowEmployeesCurrentEmploymentStatus.md) | :heavy_minus_sign: | The current employment status of the employee. Full-time employees work 30+ hours per week. Part-time employees are split into two groups: those that work 20-29 hours a week, and those that work under 20 hours a week. Variable employees have hours that vary each week. Seasonal employees are hired for 6 months of the year or less. | | | `historical` | *Optional\* | :heavy_minus_sign: | N/A | | | `employeeCode` | *Optional\* | :heavy_minus_sign: | The short format code of the employee | | | `departmentUuid` | *JsonNullable\* | :heavy_minus_sign: | The UUID of the department the employee is under | | @@ -42,7 +42,7 @@ The representation of an employee in Gusto. | `hiddenSsn` | *Optional\* | :heavy_minus_sign: | N/A | | | `flsaStatus` | [Optional\](../../models/components/FlsaStatusType.md) | :heavy_minus_sign: | 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. | | | `applicableTaxIds` | List\<*double*> | :heavy_minus_sign: | N/A | | -| `memberPortalInvitationStatus` | [JsonNullable\](../../models/components/MemberPortalInvitationStatus.md) | :heavy_minus_sign: | Member portal invitation status information. Only included when the include param has the portal_invitations value set. | | +| `memberPortalInvitationStatus` | [JsonNullable\](../../models/components/ShowEmployeesMemberPortalInvitationStatus.md) | :heavy_minus_sign: | Member portal invitation status information. Only included when the include param has the portal_invitations value set. | | | `partnerPortalInvitationSent` | *JsonNullable\* | :heavy_minus_sign: | Whether an external partner portal invitation webhook has been sent for this employee. Only included when the include param has the portal_invitations value set. | | | `currentHomeAddress` | [Optional\](../../models/components/EmployeeHomeAddress.md) | :heavy_minus_sign: | N/A | {
    "street_1": "412 Kiera Stravenue",
    "street_2": "Suite 391",
    "city": "San Francisco",
    "state": "CA",
    "zip": "94107",
    "country": "USA",
    "active": true,
    "uud": "sample-uuid-123231",
    "id": 3,
    "effective_from": "2024-01-01",
    "effective_to": "2025-01-01",
    "effective_date": "2024-01-01"
    } | | `allHomeAddresses` | List\<[EmployeeHomeAddress](../../models/components/EmployeeHomeAddress.md)> | :heavy_minus_sign: | N/A | | diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/EmployeeCurrentEmploymentStatus.md b/gusto_embedded/docs/models/components/ShowEmployeesCurrentEmploymentStatus.md similarity index 70% rename from gusto_embedded_v_2025_11_15/docs/models/components/EmployeeCurrentEmploymentStatus.md rename to gusto_embedded/docs/models/components/ShowEmployeesCurrentEmploymentStatus.md index db8aa5758..c7150fe57 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/EmployeeCurrentEmploymentStatus.md +++ b/gusto_embedded/docs/models/components/ShowEmployeesCurrentEmploymentStatus.md @@ -1,11 +1,11 @@ -# EmployeeCurrentEmploymentStatus +# ShowEmployeesCurrentEmploymentStatus ## Example Usage ```java -import com.gusto.embedded_api_v_2025_11_15.models.components.EmployeeCurrentEmploymentStatus; +import com.gusto.embedded_api.models.components.ShowEmployeesCurrentEmploymentStatus; -EmployeeCurrentEmploymentStatus value = EmployeeCurrentEmploymentStatus.FULL_TIME; +ShowEmployeesCurrentEmploymentStatus value = ShowEmployeesCurrentEmploymentStatus.FULL_TIME; ``` diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/ContractorMemberPortalInvitationStatus.md b/gusto_embedded/docs/models/components/ShowEmployeesMemberPortalInvitationStatus.md similarity index 92% rename from gusto_embedded_v_2025_11_15/docs/models/components/ContractorMemberPortalInvitationStatus.md rename to gusto_embedded/docs/models/components/ShowEmployeesMemberPortalInvitationStatus.md index 88a4a9ba6..f58e21a59 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/ContractorMemberPortalInvitationStatus.md +++ b/gusto_embedded/docs/models/components/ShowEmployeesMemberPortalInvitationStatus.md @@ -1,4 +1,4 @@ -# ContractorMemberPortalInvitationStatus +# ShowEmployeesMemberPortalInvitationStatus Member portal invitation status information. Only included when the include param has the portal_invitations value set. @@ -7,7 +7,7 @@ Member portal invitation status information. Only included when the include para | Field | Type | Required | Description | | ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | -| `status` | [Optional\](../../models/components/ContractorStatus.md) | :heavy_minus_sign: | The current status of the member portal invitation. | +| `status` | [Optional\](../../models/components/ShowEmployeesStatus.md) | :heavy_minus_sign: | The current status of the member portal invitation. | | `tokenExpired` | *JsonNullable\* | :heavy_minus_sign: | Whether the invitation token has expired. | | `welcomeEmailSentAt` | [OffsetDateTime](https://docs.oracle.com/javase/8/docs/api/java/time/OffsetDateTime.html) | :heavy_minus_sign: | The date and time when the welcome email was sent. | | `lastPasswordResentAt` | [OffsetDateTime](https://docs.oracle.com/javase/8/docs/api/java/time/OffsetDateTime.html) | :heavy_minus_sign: | The date and time when the password reset was last resent. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/EmployeeOnboardingDocumentsConfig.md b/gusto_embedded/docs/models/components/ShowEmployeesOnboardingDocumentsConfig.md similarity index 96% rename from gusto_embedded_v_2025_11_15/docs/models/components/EmployeeOnboardingDocumentsConfig.md rename to gusto_embedded/docs/models/components/ShowEmployeesOnboardingDocumentsConfig.md index 9f937d820..aaa90973a 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/EmployeeOnboardingDocumentsConfig.md +++ b/gusto_embedded/docs/models/components/ShowEmployeesOnboardingDocumentsConfig.md @@ -1,4 +1,4 @@ -# EmployeeOnboardingDocumentsConfig +# ShowEmployeesOnboardingDocumentsConfig Configuration for an employee onboarding documents during onboarding diff --git a/gusto_embedded/docs/models/components/ShowEmployeesOnboardingStatus.md b/gusto_embedded/docs/models/components/ShowEmployeesOnboardingStatus.md new file mode 100644 index 000000000..cbff9fabf --- /dev/null +++ b/gusto_embedded/docs/models/components/ShowEmployeesOnboardingStatus.md @@ -0,0 +1,23 @@ +# ShowEmployeesOnboardingStatus + +## Example Usage + +```java +import com.gusto.embedded_api.models.components.ShowEmployeesOnboardingStatus; + +ShowEmployeesOnboardingStatus value = ShowEmployeesOnboardingStatus.ONBOARDING_COMPLETED; +``` + + +## Values + +| Name | Value | +| --------------------------------------- | --------------------------------------- | +| `ONBOARDING_COMPLETED` | onboarding_completed | +| `ADMIN_ONBOARDING_INCOMPLETE` | admin_onboarding_incomplete | +| `SELF_ONBOARDING_PENDING_INVITE` | self_onboarding_pending_invite | +| `SELF_ONBOARDING_INVITED` | self_onboarding_invited | +| `SELF_ONBOARDING_INVITED_STARTED` | self_onboarding_invited_started | +| `SELF_ONBOARDING_INVITED_OVERDUE` | self_onboarding_invited_overdue | +| `SELF_ONBOARDING_COMPLETED_BY_EMPLOYEE` | self_onboarding_completed_by_employee | +| `SELF_ONBOARDING_AWAITING_ADMIN_REVIEW` | self_onboarding_awaiting_admin_review | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/ShowEmployeesPaymentMethod.md b/gusto_embedded/docs/models/components/ShowEmployeesPaymentMethod.md new file mode 100644 index 000000000..719b7ff7f --- /dev/null +++ b/gusto_embedded/docs/models/components/ShowEmployeesPaymentMethod.md @@ -0,0 +1,19 @@ +# ShowEmployeesPaymentMethod + +The employee's payment method + +## Example Usage + +```java +import com.gusto.embedded_api.models.components.ShowEmployeesPaymentMethod; + +ShowEmployeesPaymentMethod value = ShowEmployeesPaymentMethod.DIRECT_DEPOSIT; +``` + + +## Values + +| Name | Value | +| ---------------- | ---------------- | +| `DIRECT_DEPOSIT` | Direct Deposit | +| `CHECK` | Check | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/Signatory.md b/gusto_embedded/docs/models/components/Signatory.md index 40961c9e7..4d7919839 100644 --- a/gusto_embedded/docs/models/components/Signatory.md +++ b/gusto_embedded/docs/models/components/Signatory.md @@ -18,4 +18,4 @@ The representation of a company's signatory | `hasSsn` | *Optional\* | :heavy_minus_sign: | Indicates whether the signatory has an SSN in Gusto. | | `version` | *Optional\* | :heavy_minus_sign: | The current version of the signatory. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. | | `identityVerificationStatus` | [JsonNullable\](../../models/components/IdentityVerificationStatus.md) | :heavy_minus_sign: | \| \| \|
    \|---\|---\|
    \|__Status__\| __Description__ \|
    \| Pass \| Signatory can sign all forms \|
    \| Fail \| Signatory cannot sign forms \|
    \| Skipped \| Signatory cannot sign Form 8655 until the form is manually uploaded as wet-signed \|
    \| null \| Identity verification process has not been completed \| | -| `homeAddress` | [JsonNullable\](../../models/components/HomeAddress.md) | :heavy_minus_sign: | N/A | \ No newline at end of file +| `homeAddress` | [JsonNullable\](../../models/components/SignatoryHomeAddress.md) | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/SignatoryHomeAddress.md b/gusto_embedded/docs/models/components/SignatoryHomeAddress.md new file mode 100644 index 000000000..b3cf89469 --- /dev/null +++ b/gusto_embedded/docs/models/components/SignatoryHomeAddress.md @@ -0,0 +1,13 @@ +# SignatoryHomeAddress + + +## Fields + +| Field | Type | Required | Description | +| ------------------- | ------------------- | ------------------- | ------------------- | +| `street1` | *Optional\* | :heavy_minus_sign: | N/A | +| `street2` | *Optional\* | :heavy_minus_sign: | N/A | +| `city` | *Optional\* | :heavy_minus_sign: | N/A | +| `state` | *Optional\* | :heavy_minus_sign: | N/A | +| `zip` | *Optional\* | :heavy_minus_sign: | N/A | +| `country` | *Optional\* | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/Splits.md b/gusto_embedded/docs/models/components/Splits.md index 1547cc064..d1f404ebd 100644 --- a/gusto_embedded/docs/models/components/Splits.md +++ b/gusto_embedded/docs/models/components/Splits.md @@ -5,11 +5,11 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `bankAccountUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the bank account. | -| `name` | *Optional\* | :heavy_minus_sign: | The name of the bank account. | +| `bankAccountUuid` | *Optional\* | :heavy_minus_sign: | N/A | +| `name` | *Optional\* | :heavy_minus_sign: | N/A | | `hiddenAccountNumber` | *Optional\* | :heavy_minus_sign: | An obfuscated version of the account number which can be used for display purposes. | -| `encryptedAccountNumber` | *JsonNullable\* | :heavy_minus_sign: | Ciphertext containing the full bank account number, which must be decrypted using a key provided by Gusto. Only visible with the `employee_payment_methods:read:account_number` scope. | -| `routingNumber` | *Optional\* | :heavy_minus_sign: | The routing number of the bank account. | -| `accountType` | *Optional\* | :heavy_minus_sign: | The bank account type (e.g., "Checking" or "Savings"). | +| `encryptedAccountNumber` | *JsonNullable\* | :heavy_minus_sign: | Ciphertext containing the full bank account number, which must be decrypted using a key provided by Gusto. Only visible with the `contractor_payment_methods:read:account_number` scope. | +| `routingNumber` | *Optional\* | :heavy_minus_sign: | N/A | | `priority` | *Optional\* | :heavy_minus_sign: | The order of priority for each payment split, with priority 1 being the first bank account paid. Priority must be unique and sequential. | -| `splitAmount` | *JsonNullable\* | :heavy_minus_sign: | If `split_by` is 'Amount', this is in cents (e.g., 500 for $5.00) and exactly one account must have a `split_amount` of `null` to capture the remainder. If `split_by` is 'Percentage', this is the percentage value (e.g., 60 for 60%). | \ No newline at end of file +| `splitAmount` | *JsonNullable\* | :heavy_minus_sign: | If `split_by` is 'Amount', this is in cents (e.g., 500 for $5.00) and exactly one account must have a `split_amount` of `null` to capture the remainder. If `split_by` is 'Percentage', this is the percentage value (e.g., 60 for 60%). | +| `accountType` | *Optional\* | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/State.md b/gusto_embedded/docs/models/components/State.md new file mode 100644 index 000000000..cef1936bd --- /dev/null +++ b/gusto_embedded/docs/models/components/State.md @@ -0,0 +1,11 @@ +# State + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| `employeeStateFieldUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the EmployeeStateField this withholding applies to. | +| `overrideType` | [Optional\](../../models/components/PayrollEmployeeCompensationsTypeOverrideType.md) | :heavy_minus_sign: | Override mode. Only `one_time` is currently exposed. | +| `amount` | *Optional\* | :heavy_minus_sign: | The amount that was withheld for this payroll. | +| `amountType` | [Optional\](../../models/components/PayrollEmployeeCompensationsTypeCustomWithholdingsAmountType.md) | :heavy_minus_sign: | How to interpret the amount. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/Status.md b/gusto_embedded/docs/models/components/Status.md index 1f14a956e..ef67d5014 100644 --- a/gusto_embedded/docs/models/components/Status.md +++ b/gusto_embedded/docs/models/components/Status.md @@ -1,19 +1,26 @@ # Status -The status of the external payroll. The status will be `unprocessed` when the external payroll is created and transition to `processed` once tax liabilities are entered and finalized. Once in the `processed` status all actions that can edit an external payroll will be disabled. +The batch's processing state. +- `pending`: accepted, not yet started +- `processing`: reports are being generated +- `completed`: all reports finished +- `failed`: the batch failed before completing + ## Example Usage ```java import com.gusto.embedded_api.models.components.Status; -Status value = Status.UNPROCESSED; +Status value = Status.PENDING; ``` ## Values -| Name | Value | -| ------------- | ------------- | -| `UNPROCESSED` | unprocessed | -| `PROCESSED` | processed | \ No newline at end of file +| Name | Value | +| ------------ | ------------ | +| `PENDING` | pending | +| `PROCESSING` | processing | +| `COMPLETED` | completed | +| `FAILED` | failed | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/SubscriptionTypes.md b/gusto_embedded/docs/models/components/SubscriptionTypes.md index c77d06d03..774d227ab 100644 --- a/gusto_embedded/docs/models/components/SubscriptionTypes.md +++ b/gusto_embedded/docs/models/components/SubscriptionTypes.md @@ -28,4 +28,5 @@ SubscriptionTypes value = SubscriptionTypes.BANK_ACCOUNT; | `PAYROLL` | Payroll | | `PAYROLL_SYNC` | PayrollSync | | `PAY_SCHEDULE` | PaySchedule | -| `SIGNATORY` | Signatory | \ No newline at end of file +| `SIGNATORY` | Signatory | +| `TIME_OFF_REQUEST` | TimeOffRequest | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/TaxPayment.md b/gusto_embedded/docs/models/components/TaxPayment.md new file mode 100644 index 000000000..417720f9b --- /dev/null +++ b/gusto_embedded/docs/models/components/TaxPayment.md @@ -0,0 +1,20 @@ +# TaxPayment + +Representation of a tax payment made by Gusto to a tax agency on behalf of a company + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `uuid` | *String* | :heavy_check_mark: | Unique identifier of the tax payment | +| `companyUuid` | *String* | :heavy_check_mark: | Unique identifier of the company to which the tax payment belongs | +| `agencyName` | *String* | :heavy_check_mark: | The name of the tax agency this payment is submitted to | +| `jurisdiction` | *String* | :heavy_check_mark: | The tax jurisdiction this payment is for. A two-letter state code, or US for federal. | +| `periodStart` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_check_mark: | The start date of the period this payment covers | +| `periodEnd` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_check_mark: | The end date of the period this payment covers | +| `dueDate` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_check_mark: | The date this payment is due | +| `paymentSentOn` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_minus_sign: | The date Gusto submitted this payment to the tax agency. It is null until submitted, and also if the payment is returned or cancelled after being sent. It is not guaranteed to stay set once populated. | +| `amount` | *String* | :heavy_check_mark: | Total amount owed for this tax payment. Can be negative for corrections, refunds, or credits. | +| `amountPaid` | *String* | :heavy_check_mark: | Amount paid toward this tax payment so far, sourced from the payment's running balance. "0.00" until paid; equal to `amount` once fully paid. | +| `lineItems` | List\<[TaxPaymentLineItem](../../models/components/TaxPaymentLineItem.md)> | :heavy_minus_sign: | The payroll tax liabilities that make up this payment. Empty array when the payment has no associated payroll taxes. Only included in the response of GET /v1/companies/{company_uuid}/tax_payments/{uuid}. It is omitted from the list endpoint response. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/TaxPaymentLineItem.md b/gusto_embedded/docs/models/components/TaxPaymentLineItem.md new file mode 100644 index 000000000..813912882 --- /dev/null +++ b/gusto_embedded/docs/models/components/TaxPaymentLineItem.md @@ -0,0 +1,12 @@ +# TaxPaymentLineItem + +A single payroll tax liability rolled up into a tax payment + + +## Fields + +| Field | Type | Required | Description | +| --------------------------------------------------------- | --------------------------------------------------------- | --------------------------------------------------------- | --------------------------------------------------------- | +| `payrollUuid` | *String* | :heavy_check_mark: | Unique identifier of the payroll this liability came from | +| `uniqueTaxId` | *String* | :heavy_check_mark: | Unique identifier of the tax type this liability is for | +| `amount` | *String* | :heavy_check_mark: | The amount of this liability included in the tax payment | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/TaxRequirement.md b/gusto_embedded/docs/models/components/TaxRequirement.md index 8e31bfbeb..e03bc2902 100644 --- a/gusto_embedded/docs/models/components/TaxRequirement.md +++ b/gusto_embedded/docs/models/components/TaxRequirement.md @@ -11,4 +11,6 @@ | `description` | *JsonNullable\* | :heavy_minus_sign: | A more detailed customer facing description of the requirement | | | `value` | [JsonNullable\](../../models/components/TaxRequirementsValue.md) | :heavy_minus_sign: | The value or "answer" for a tax requirement. Type depends on the requirement metadata type (e.g. string for text/account_number, boolean for radio/checkbox, number for percent/currency/tax_rate). Null when the requirement has not been answered. | 1233214-AB | | `metadata` | [Optional\](../../models/components/TaxRequirementMetadata.md) | :heavy_minus_sign: | N/A | | -| `editable` | *Optional\* | :heavy_minus_sign: | Whether the value of this requirement can be updated | | \ No newline at end of file +| `editable` | *Optional\* | :heavy_minus_sign: | Whether the value of this requirement can be updated | | +| `payrollBlocking` | *Optional\* | :heavy_minus_sign: | Whether this requirement, when blank, would block payroll processing for the company in this state.
    Stable across changes to the field's value: a `payroll_blocking: true` field reports `true` whether
    currently empty or populated.
    | | +| `defaultValueApplied` | *Optional\* | :heavy_minus_sign: | Whether the current `value` is a default rather than an explicitly set one.
    | | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/TaxRequirementMetadata.md b/gusto_embedded/docs/models/components/TaxRequirementMetadata.md index c6c204ac8..bb9843174 100644 --- a/gusto_embedded/docs/models/components/TaxRequirementMetadata.md +++ b/gusto_embedded/docs/models/components/TaxRequirementMetadata.md @@ -5,8 +5,8 @@ | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `type` | [TaxRequirementMetadataType](../../models/components/TaxRequirementMetadataType.md) | :heavy_check_mark: | Describes the type of requirement - each type may have additional metadata properties to describe possible values, formats, etc.

    - `text`: free-text input, no additional requirements
    - `currency`: a value representing a dollar amount, e.g. `374.55` representing `$374.55`
    - `radio`: choose one of options provided, see `options`
    - `select`: choose one of options provided, see `options`
    - `percent`: A decimal value representing a percentage, e.g. `0.034` representing `3.4%`
    - `account_number`: An account number for a tax agency, more information provided by `mask` and `prefix`
    - `tax_rate`: A decimal value representing a tax rate, e.g. `0.034` representing a tax rate of `3.4%`, see `validation` for additional validation guidance
    - `workers_compensation_rate`: A decimal value representing a percentage, see `risk_class_code`, `risk_class_description`, and `rate_type`
    | -| `options` | List\<[TaxRequirementMetadataOptions](../../models/components/TaxRequirementMetadataOptions.md)> | :heavy_minus_sign: | [for `select` or `radio`] An array of objects describing the possible values. | +| `type` | [Type](../../models/components/Type.md) | :heavy_check_mark: | Describes the type of requirement - each type may have additional metadata properties to describe possible values, formats, etc.

    - `text`: free-text input, no additional requirements
    - `currency`: a value representing a dollar amount, e.g. `374.55` representing `$374.55`
    - `radio`: choose one of options provided, see `options`
    - `select`: choose one of options provided, see `options`
    - `percent`: A decimal value representing a percentage, e.g. `0.034` representing `3.4%`
    - `account_number`: An account number for a tax agency, more information provided by `mask` and `prefix`
    - `tax_rate`: A decimal value representing a tax rate, e.g. `0.034` representing a tax rate of `3.4%`, see `validation` for additional validation guidance
    - `workers_compensation_rate`: A decimal value representing a percentage, see `risk_class_code`, `risk_class_description`, and `rate_type`
    | +| `options` | List\<[Options](../../models/components/Options.md)> | :heavy_minus_sign: | [for `select` or `radio`] An array of objects describing the possible values. | | `riskClassCode` | *Optional\* | :heavy_minus_sign: | [for `workers_compensation_rate`] The industry risk class code for the rate being requested | | `riskClassDescription` | *Optional\* | :heavy_minus_sign: | [for `workers_compensation_rate`] A description of the industry risk class for the rate being requested | | `rateType` | [Optional\](../../models/components/RateType.md) | :heavy_minus_sign: | [for `workers_compensation_rate`] The type of rate being collected. Either:
    - `percent`: A percentage formatted as a decimal, e.g. `0.01` for 1%
    - `currency_per_hour`: A dollar amount per hour, e.g. `3.24` for $3.24/hr
    | diff --git a/gusto_embedded/docs/models/components/TaxRequirementMetadataOptions.md b/gusto_embedded/docs/models/components/TaxRequirementMetadataOptions.md deleted file mode 100644 index 3e78bf332..000000000 --- a/gusto_embedded/docs/models/components/TaxRequirementMetadataOptions.md +++ /dev/null @@ -1,10 +0,0 @@ -# TaxRequirementMetadataOptions - - -## Fields - -| Field | Type | Required | Description | -| ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | -| `label` | *String* | :heavy_check_mark: | A customer facing label for the answer | -| `value` | [TaxRequirementMetadataValue](../../models/components/TaxRequirementMetadataValue.md) | :heavy_check_mark: | The actual value to be submitted | -| `shortLabel` | *JsonNullable\* | :heavy_minus_sign: | A less verbose label that may sometimes be available | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/TaxRequirementMetadataType.md b/gusto_embedded/docs/models/components/TaxRequirementMetadataType.md index 7ba821299..805cb5638 100644 --- a/gusto_embedded/docs/models/components/TaxRequirementMetadataType.md +++ b/gusto_embedded/docs/models/components/TaxRequirementMetadataType.md @@ -1,35 +1,19 @@ # TaxRequirementMetadataType -Describes the type of requirement - each type may have additional metadata properties to describe possible values, formats, etc. - -- `text`: free-text input, no additional requirements -- `currency`: a value representing a dollar amount, e.g. `374.55` representing `$374.55` -- `radio`: choose one of options provided, see `options` -- `select`: choose one of options provided, see `options` -- `percent`: A decimal value representing a percentage, e.g. `0.034` representing `3.4%` -- `account_number`: An account number for a tax agency, more information provided by `mask` and `prefix` -- `tax_rate`: A decimal value representing a tax rate, e.g. `0.034` representing a tax rate of `3.4%`, see `validation` for additional validation guidance -- `workers_compensation_rate`: A decimal value representing a percentage, see `risk_class_code`, `risk_class_description`, and `rate_type` - +Describes the type of tax_rate validation rule ## Example Usage ```java import com.gusto.embedded_api.models.components.TaxRequirementMetadataType; -TaxRequirementMetadataType value = TaxRequirementMetadataType.TEXT; +TaxRequirementMetadataType value = TaxRequirementMetadataType.ONE_OF; ``` ## Values -| Name | Value | -| --------------------------- | --------------------------- | -| `TEXT` | text | -| `CURRENCY` | currency | -| `RADIO` | radio | -| `SELECT` | select | -| `PERCENT` | percent | -| `ACCOUNT_NUMBER` | account_number | -| `TAX_RATE` | tax_rate | -| `WORKERS_COMPENSATION_RATE` | workers_compensation_rate | \ No newline at end of file +| Name | Value | +| --------- | --------- | +| `ONE_OF` | one_of | +| `MIN_MAX` | min_max | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/TaxRequirementMetadataValidationType.md b/gusto_embedded/docs/models/components/TaxRequirementMetadataValidationType.md deleted file mode 100644 index 1c2da207c..000000000 --- a/gusto_embedded/docs/models/components/TaxRequirementMetadataValidationType.md +++ /dev/null @@ -1,19 +0,0 @@ -# TaxRequirementMetadataValidationType - -Describes the type of tax_rate validation rule - -## Example Usage - -```java -import com.gusto.embedded_api.models.components.TaxRequirementMetadataValidationType; - -TaxRequirementMetadataValidationType value = TaxRequirementMetadataValidationType.ONE_OF; -``` - - -## Values - -| Name | Value | -| --------- | --------- | -| `ONE_OF` | one_of | -| `MIN_MAX` | min_max | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/Totals.md b/gusto_embedded/docs/models/components/Totals.md index 96143d951..79bd07d3a 100644 --- a/gusto_embedded/docs/models/components/Totals.md +++ b/gusto_embedded/docs/models/components/Totals.md @@ -1,14 +1,12 @@ # Totals -The subtotals for the payroll. - ## Fields -| Field | Type | Required | Description | -| ---------------------------------------------- | ---------------------------------------------- | ---------------------------------------------- | ---------------------------------------------- | -| `companyDebit` | *Optional\* | :heavy_minus_sign: | The total company debit for the payroll. | -| `netPayDebit` | *Optional\* | :heavy_minus_sign: | The total company net pay for the payroll. | -| `childSupportDebit` | *Optional\* | :heavy_minus_sign: | The total child support debit for the payroll. | -| `reimbursementDebit` | *Optional\* | :heavy_minus_sign: | The total reimbursements for the payroll. | -| `taxDebit` | *Optional\* | :heavy_minus_sign: | The total tax debit for the payroll. | \ No newline at end of file +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | +| `amount` | *Optional\* | :heavy_minus_sign: | The total amount for the group of contractor payments. | +| `debitAmount` | *Optional\* | :heavy_minus_sign: | The total debit amount for the group of contractor payments. Sum of wage & reimbursement amount. | +| `wageAmount` | *Optional\* | :heavy_minus_sign: | The total wage amount for the group of contractor payments. | +| `reimbursementAmount` | *Optional\* | :heavy_minus_sign: | The total reimbursement amount for the group of contractor payments. | +| `checkAmount` | *Optional\* | :heavy_minus_sign: | The total check amount for the group of contractor payments. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/Type.md b/gusto_embedded/docs/models/components/Type.md index 8b53d7285..ecd8812bf 100644 --- a/gusto_embedded/docs/models/components/Type.md +++ b/gusto_embedded/docs/models/components/Type.md @@ -1,19 +1,35 @@ # Type +Describes the type of requirement - each type may have additional metadata properties to describe possible values, formats, etc. + +- `text`: free-text input, no additional requirements +- `currency`: a value representing a dollar amount, e.g. `374.55` representing `$374.55` +- `radio`: choose one of options provided, see `options` +- `select`: choose one of options provided, see `options` +- `percent`: A decimal value representing a percentage, e.g. `0.034` representing `3.4%` +- `account_number`: An account number for a tax agency, more information provided by `mask` and `prefix` +- `tax_rate`: A decimal value representing a tax rate, e.g. `0.034` representing a tax rate of `3.4%`, see `validation` for additional validation guidance +- `workers_compensation_rate`: A decimal value representing a percentage, see `risk_class_code`, `risk_class_description`, and `rate_type` + + ## Example Usage ```java import com.gusto.embedded_api.models.components.Type; -Type value = Type.SINGLE; +Type value = Type.TEXT; ``` ## Values -| Name | Value | -| ----------------- | ----------------- | -| `SINGLE` | single | -| `HOURLY_SALARIED` | hourly_salaried | -| `BY_EMPLOYEE` | by_employee | -| `BY_DEPARTMENT` | by_department | \ No newline at end of file +| Name | Value | +| --------------------------- | --------------------------- | +| `TEXT` | text | +| `CURRENCY` | currency | +| `RADIO` | radio | +| `SELECT` | select | +| `PERCENT` | percent | +| `ACCOUNT_NUMBER` | account_number | +| `TAX_RATE` | tax_rate | +| `WORKERS_COMPENSATION_RATE` | workers_compensation_rate | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/Validation.md b/gusto_embedded/docs/models/components/Validation.md index ce347f32d..14a176ce8 100644 --- a/gusto_embedded/docs/models/components/Validation.md +++ b/gusto_embedded/docs/models/components/Validation.md @@ -7,7 +7,7 @@ | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------- | -| `type` | [TaxRequirementMetadataValidationType](../../models/components/TaxRequirementMetadataValidationType.md) | :heavy_check_mark: | Describes the type of tax_rate validation rule | +| `type` | [TaxRequirementMetadataType](../../models/components/TaxRequirementMetadataType.md) | :heavy_check_mark: | Describes the type of tax_rate validation rule | | `min` | *Optional\* | :heavy_minus_sign: | [for `min_max`] The inclusive lower bound of the tax rate | | `max` | *Optional\* | :heavy_minus_sign: | [for `min_max`] The inclusive upper bound of the tax rate | | `rates` | List\<*String*> | :heavy_minus_sign: | [for `one_of`] The possible, unformatted tax rates for selection.
    - e.g. ["0.0", "0.001"] representing 0% and 0.1%
    | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/VersionHeader.md b/gusto_embedded/docs/models/components/VersionHeader.md deleted file mode 100644 index 3fd6556a1..000000000 --- a/gusto_embedded/docs/models/components/VersionHeader.md +++ /dev/null @@ -1,16 +0,0 @@ -# VersionHeader - -## Example Usage - -```java -import com.gusto.embedded_api.models.components.VersionHeader; - -VersionHeader value = VersionHeader.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15; -``` - - -## Values - -| Name | Value | -| ---------------------------------------------- | ---------------------------------------------- | -| `TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15` | 2025-06-15 | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/WageType.md b/gusto_embedded/docs/models/components/WageType.md index 53c10fca3..ef5d1b22b 100644 --- a/gusto_embedded/docs/models/components/WageType.md +++ b/gusto_embedded/docs/models/components/WageType.md @@ -1,13 +1,13 @@ # WageType -The contractor's wage type, either "Fixed" or "Hourly". +The wage type for the payment. ## Example Usage ```java import com.gusto.embedded_api.models.components.WageType; -WageType value = WageType.FIXED; +WageType value = WageType.HOURLY; ``` @@ -15,5 +15,5 @@ WageType value = WageType.FIXED; | Name | Value | | -------- | -------- | -| `FIXED` | Fixed | -| `HOURLY` | Hourly | \ No newline at end of file +| `HOURLY` | Hourly | +| `FIXED` | Fixed | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/WarningObject.md b/gusto_embedded/docs/models/components/WarningObject.md new file mode 100644 index 000000000..7db41084f --- /dev/null +++ b/gusto_embedded/docs/models/components/WarningObject.md @@ -0,0 +1,10 @@ +# WarningObject + + +## Fields + +| Field | Type | Required | Description | +| ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | +| `errorKey` | *Optional\* | :heavy_minus_sign: | Specifies where the warning occurs. Typically identifies the attribute or parameter related to the warning. | +| `category` | *Optional\* | :heavy_minus_sign: | Specifies the type of warning. Can be used to build custom warning handling. | +| `message` | *Optional\* | :heavy_minus_sign: | Provides details about the warning. The message can be surfaced directly to the end user. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/errors/ConflictErrorObject.md b/gusto_embedded/docs/models/errors/ConflictErrorObject.md index 46ec3c2fb..bc5326f19 100644 --- a/gusto_embedded/docs/models/errors/ConflictErrorObject.md +++ b/gusto_embedded/docs/models/errors/ConflictErrorObject.md @@ -2,7 +2,7 @@ Conflict -This error occurs when the resource version provided does not match the current version. Retrieve the latest version and retry. +This may happen when the resource version provided does not match the current version — retrieve the latest version and retry — or when the request conflicts with another in-progress operation on the same resource. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. ## Fields diff --git a/gusto_embedded/docs/models/errors/ForbiddenErrorObject.md b/gusto_embedded/docs/models/errors/ForbiddenErrorObject.md new file mode 100644 index 000000000..4cfa4c14e --- /dev/null +++ b/gusto_embedded/docs/models/errors/ForbiddenErrorObject.md @@ -0,0 +1,12 @@ +# ForbiddenErrorObject + +Forbidden + +The targeted company has been archived because its EIN was reassigned to a replacement company. Use the replacement company referenced in the error metadata. + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | +| `errors` | List\<[EntityErrorObject](../../models/components/EntityErrorObject.md)> | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded/docs/models/errors/Metadata.md b/gusto_embedded/docs/models/errors/Metadata.md index 9e479ea35..74f2b9e37 100644 --- a/gusto_embedded/docs/models/errors/Metadata.md +++ b/gusto_embedded/docs/models/errors/Metadata.md @@ -3,6 +3,6 @@ ## Fields -| Field | Type | Required | Description | -| ------------------------------------------------------------- | ------------------------------------------------------------- | ------------------------------------------------------------- | ------------------------------------------------------------- | -| `key` | *Optional\* | :heavy_minus_sign: | A categorization of the payroll blocker, e.g. "geocode_error" | \ No newline at end of file +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | +| `requestUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the existing payroll cancellation batch that already used this idempotency key. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/errors/PayrollBatchConflictError.md b/gusto_embedded/docs/models/errors/PayrollBatchConflictError.md new file mode 100644 index 000000000..c8c98a8a0 --- /dev/null +++ b/gusto_embedded/docs/models/errors/PayrollBatchConflictError.md @@ -0,0 +1,10 @@ +# PayrollBatchConflictError + +Error response when a payroll cancellation idempotency key has already been used by the same partner. + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | +| `errors` | List\<[PayrollBatchConflictErrorErrors](../../models/errors/PayrollBatchConflictErrorErrors.md)> | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/gusto_embedded/docs/models/errors/PayrollBatchConflictErrorErrors.md b/gusto_embedded/docs/models/errors/PayrollBatchConflictErrorErrors.md new file mode 100644 index 000000000..89ca96f7f --- /dev/null +++ b/gusto_embedded/docs/models/errors/PayrollBatchConflictErrorErrors.md @@ -0,0 +1,11 @@ +# PayrollBatchConflictErrorErrors + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------ | ------------------------------------------------------ | ------------------------------------------------------ | ------------------------------------------------------ | +| `errorKey` | *Optional\* | :heavy_minus_sign: | The key identifying the error source. | +| `category` | *Optional\* | :heavy_minus_sign: | The error category. | +| `message` | *Optional\* | :heavy_minus_sign: | Human-readable error message. | +| `metadata` | [Optional\](../../models/errors/Metadata.md) | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/gusto_embedded/docs/models/errors/PayrollBlockersErrorErrors.md b/gusto_embedded/docs/models/errors/PayrollBlockersErrorErrors.md index 38137ce81..00687e964 100644 --- a/gusto_embedded/docs/models/errors/PayrollBlockersErrorErrors.md +++ b/gusto_embedded/docs/models/errors/PayrollBlockersErrorErrors.md @@ -3,9 +3,9 @@ ## Fields -| Field | Type | Required | Description | -| ------------------------------------------------------ | ------------------------------------------------------ | ------------------------------------------------------ | ------------------------------------------------------ | -| `errorKey` | *Optional\* | :heavy_minus_sign: | The string "base" | -| `category` | *Optional\* | :heavy_minus_sign: | The string "payroll_blocker" | -| `message` | *Optional\* | :heavy_minus_sign: | Human readable description of the payroll blocker | -| `metadata` | [Optional\](../../models/errors/Metadata.md) | :heavy_minus_sign: | N/A | \ No newline at end of file +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | +| `errorKey` | *Optional\* | :heavy_minus_sign: | The string "base" | +| `category` | *Optional\* | :heavy_minus_sign: | The string "payroll_blocker" | +| `message` | *Optional\* | :heavy_minus_sign: | Human readable description of the payroll blocker | +| `metadata` | [Optional\](../../models/errors/PayrollBlockersErrorMetadata.md) | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/gusto_embedded/docs/models/errors/PayrollBlockersErrorMetadata.md b/gusto_embedded/docs/models/errors/PayrollBlockersErrorMetadata.md new file mode 100644 index 000000000..2dc76c4cb --- /dev/null +++ b/gusto_embedded/docs/models/errors/PayrollBlockersErrorMetadata.md @@ -0,0 +1,8 @@ +# PayrollBlockersErrorMetadata + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------------- | ------------------------------------------------------------- | ------------------------------------------------------------- | ------------------------------------------------------------- | +| `key` | *Optional\* | :heavy_minus_sign: | A categorization of the payroll blocker, e.g. "geocode_error" | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/Batch.md b/gusto_embedded/docs/models/operations/Batch.md index 2da5e31d3..7cef8eb51 100644 --- a/gusto_embedded/docs/models/operations/Batch.md +++ b/gusto_embedded/docs/models/operations/Batch.md @@ -3,13 +3,8 @@ ## Fields -| Field | Type | Required | Description | Example | -| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `entityType` | [EntityType](../../models/operations/EntityType.md) | :heavy_check_mark: | The type of entity to create | employee | -| `person` | [Person](../../models/operations/Person.md) | :heavy_check_mark: | N/A | | -| `homeAddress` | [Optional\](../../models/operations/PostV1CompaniesCompanyIdPeopleBatchesHomeAddress.md) | :heavy_minus_sign: | Home address for the employee | | -| `workAddress` | [Optional\](../../models/operations/PostV1CompaniesCompanyIdPeopleBatchesWorkAddress.md) | :heavy_minus_sign: | Specify the company work location for the employee | | -| `job` | [Optional\](../../models/operations/PostV1CompaniesCompanyIdPeopleBatchesJob.md) | :heavy_minus_sign: | Job details for the employee (required if compensation is provided) | | -| `department` | [Optional\](../../models/operations/Department.md) | :heavy_minus_sign: | Department details for the employee | | -| `compensation` | [Optional\](../../models/operations/Compensation.md) | :heavy_minus_sign: | Compensation details for the employee (requires job to be provided) | | -| `bankAccounts` | List\<[BankAccounts](../../models/operations/BankAccounts.md)> | :heavy_minus_sign: | Creates employee bank account(s) and payment method(s) for direct deposit. Payments can be split across accounts by Percentage or by Amount. If splitting payments by `Percentage`, all splits must have a `split_amount` and the percentages must add up to `100`.
    If splitting payments by `Amount`, the priority is set based on the order of the bank accounts in the array and the last bank account is the remainder account (should have `split_amount` set to `null`). | | \ No newline at end of file +| Field | Type | Required | Description | Example | +| ------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `entityType` | [EntityType](../../models/operations/EntityType.md) | :heavy_check_mark: | The type of entity to act on. | payroll | +| `uuid` | *String* | :heavy_check_mark: | The UUID of the payroll to cancel. Payrolls the partner is not authorized to access, or that do not exist, appear in the response's `exclusions` array. | | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company that owns the payroll. The partner must be mapped to this company. | | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/BatchAction.md b/gusto_embedded/docs/models/operations/BatchAction.md index f7bbeb639..7d14b01db 100644 --- a/gusto_embedded/docs/models/operations/BatchAction.md +++ b/gusto_embedded/docs/models/operations/BatchAction.md @@ -1,13 +1,13 @@ # BatchAction -The action to perform on the batch +The action to perform on the batch. Only `cancel` is supported. ## Example Usage ```java import com.gusto.embedded_api.models.operations.BatchAction; -BatchAction value = BatchAction.CREATE; +BatchAction value = BatchAction.CANCEL; ``` @@ -15,4 +15,4 @@ BatchAction value = BatchAction.CREATE; | Name | Value | | -------- | -------- | -| `CREATE` | create | \ No newline at end of file +| `CANCEL` | cancel | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/DeleteDepartmentRequest.md b/gusto_embedded/docs/models/operations/DeleteDepartmentRequest.md index ad8e37b72..84240d214 100644 --- a/gusto_embedded/docs/models/operations/DeleteDepartmentRequest.md +++ b/gusto_embedded/docs/models/operations/DeleteDepartmentRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `departmentUuid` | *String* | :heavy_check_mark: | The UUID of the department | -| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteDepartmentHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteDepartmentHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `departmentUuid` | *String* | :heavy_check_mark: | The UUID of the department | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/DeleteV1CompaniesCompanyIdPayrollsRequest.md b/gusto_embedded/docs/models/operations/DeleteV1CompaniesCompanyIdPayrollsRequest.md index d8039e22b..daefaf7e5 100644 --- a/gusto_embedded/docs/models/operations/DeleteV1CompaniesCompanyIdPayrollsRequest.md +++ b/gusto_embedded/docs/models/operations/DeleteV1CompaniesCompanyIdPayrollsRequest.md @@ -5,7 +5,7 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | `payrollId` | *String* | :heavy_check_mark: | The UUID of the payroll | -| `async` | *Optional\* | :heavy_minus_sign: | When true, request an asynchronous delete of the payroll. | -| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `async` | *Optional\* | :heavy_minus_sign: | When true, request an asynchronous delete of the payroll. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.md b/gusto_embedded/docs/models/operations/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.md index db63e0d6a..74bbfc77b 100644 --- a/gusto_embedded/docs/models/operations/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.md +++ b/gusto_embedded/docs/models/operations/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | -| `signatoryUuid` | *String* | :heavy_check_mark: | The UUID of the signatory | -| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `signatoryUuid` | *String* | :heavy_check_mark: | The UUID of the signatory | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.md b/gusto_embedded/docs/models/operations/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.md index 36464b1f6..ca5eb9eb8 100644 --- a/gusto_embedded/docs/models/operations/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.md +++ b/gusto_embedded/docs/models/operations/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `contractorPaymentGroupUuid` | *String* | :heavy_check_mark: | The UUID of the contractor payment group | -| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorPaymentGroupUuid` | *String* | :heavy_check_mark: | The UUID of the contractor payment group | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.md b/gusto_embedded/docs/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.md new file mode 100644 index 000000000..02bc96047 --- /dev/null +++ b/gusto_embedded/docs/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.md @@ -0,0 +1,18 @@ +# DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion + +Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + +## Example Usage + +```java +import com.gusto.embedded_api.models.operations.DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion; + +DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion value = DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15; +``` + + +## Values + +| Name | Value | +| ---------------------------------------------- | ---------------------------------------------- | +| `TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15` | 2025-06-15 | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest.md b/gusto_embedded/docs/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest.md new file mode 100644 index 000000000..68a9f1e29 --- /dev/null +++ b/gusto_embedded/docs/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest.md @@ -0,0 +1,9 @@ +# DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse.md b/gusto_embedded/docs/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse.md new file mode 100644 index 000000000..3e71f42e1 --- /dev/null +++ b/gusto_embedded/docs/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse.md @@ -0,0 +1,10 @@ +# DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | +| `contentType` | *String* | :heavy_check_mark: | HTTP response content type for this operation | +| `statusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation | +| `rawResponse` | [HttpResponse\](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/DeleteV1ContractorsContractorUuidRehireRequest.md b/gusto_embedded/docs/models/operations/DeleteV1ContractorsContractorUuidRehireRequest.md index a23be0639..5d967bc21 100644 --- a/gusto_embedded/docs/models/operations/DeleteV1ContractorsContractorUuidRehireRequest.md +++ b/gusto_embedded/docs/models/operations/DeleteV1ContractorsContractorUuidRehireRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | -| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1ContractorsContractorUuidRehireHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1ContractorsContractorUuidRehireHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/DeleteV1ContractorsContractorUuidTerminationRequest.md b/gusto_embedded/docs/models/operations/DeleteV1ContractorsContractorUuidTerminationRequest.md index 63ffc2dba..8c9b110d6 100644 --- a/gusto_embedded/docs/models/operations/DeleteV1ContractorsContractorUuidTerminationRequest.md +++ b/gusto_embedded/docs/models/operations/DeleteV1ContractorsContractorUuidTerminationRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | -| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1ContractorsContractorUuidTerminationHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1ContractorsContractorUuidTerminationHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.md b/gusto_embedded/docs/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.md new file mode 100644 index 000000000..c187cd702 --- /dev/null +++ b/gusto_embedded/docs/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.md @@ -0,0 +1,18 @@ +# DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion + +Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + +## Example Usage + +```java +import com.gusto.embedded_api.models.operations.DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion; + +DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion value = DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15; +``` + + +## Values + +| Name | Value | +| ---------------------------------------------- | ---------------------------------------------- | +| `TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15` | 2025-06-15 | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest.md b/gusto_embedded/docs/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest.md new file mode 100644 index 000000000..c75ec42f6 --- /dev/null +++ b/gusto_embedded/docs/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest.md @@ -0,0 +1,9 @@ +# DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse.md b/gusto_embedded/docs/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse.md new file mode 100644 index 000000000..eb01e4ce8 --- /dev/null +++ b/gusto_embedded/docs/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse.md @@ -0,0 +1,10 @@ +# DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | +| `contentType` | *String* | :heavy_check_mark: | HTTP response content type for this operation | +| `statusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation | +| `rawResponse` | [HttpResponse\](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/DeleteV1JobsJobIdRequest.md b/gusto_embedded/docs/models/operations/DeleteV1JobsJobIdRequest.md index 08467b97a..ae69845c2 100644 --- a/gusto_embedded/docs/models/operations/DeleteV1JobsJobIdRequest.md +++ b/gusto_embedded/docs/models/operations/DeleteV1JobsJobIdRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `jobId` | *String* | :heavy_check_mark: | The UUID of the job | -| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1JobsJobIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1JobsJobIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `jobId` | *String* | :heavy_check_mark: | The UUID of the job | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/DeleteV1WebhookSubscriptionUuidRequest.md b/gusto_embedded/docs/models/operations/DeleteV1WebhookSubscriptionUuidRequest.md index 1f6589f3c..132905541 100644 --- a/gusto_embedded/docs/models/operations/DeleteV1WebhookSubscriptionUuidRequest.md +++ b/gusto_embedded/docs/models/operations/DeleteV1WebhookSubscriptionUuidRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `webhookSubscriptionUuid` | *String* | :heavy_check_mark: | The webhook subscription UUID. | -| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1WebhookSubscriptionUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1WebhookSubscriptionUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `webhookSubscriptionUuid` | *String* | :heavy_check_mark: | The webhook subscription UUID. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/DeleteV1WorkAddressesWorkAddressUuidRequest.md b/gusto_embedded/docs/models/operations/DeleteV1WorkAddressesWorkAddressUuidRequest.md index 540e7dcca..390a7dff3 100644 --- a/gusto_embedded/docs/models/operations/DeleteV1WorkAddressesWorkAddressUuidRequest.md +++ b/gusto_embedded/docs/models/operations/DeleteV1WorkAddressesWorkAddressUuidRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `workAddressUuid` | *String* | :heavy_check_mark: | The UUID of the work address | -| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1WorkAddressesWorkAddressUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1WorkAddressesWorkAddressUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `workAddressUuid` | *String* | :heavy_check_mark: | The UUID of the work address | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/Employees.md b/gusto_embedded/docs/models/operations/Employees.md index 186f9b8de..d8aa07ecc 100644 --- a/gusto_embedded/docs/models/operations/Employees.md +++ b/gusto_embedded/docs/models/operations/Employees.md @@ -3,7 +3,6 @@ ## Fields -| Field | Type | Required | Description | -| ------------------------------------- | ------------------------------------- | ------------------------------------- | ------------------------------------- | -| `uuid` | *String* | :heavy_check_mark: | The UUID of the employee | -| `balance` | *JsonNullable\* | :heavy_minus_sign: | The starting balance for the employee | \ No newline at end of file +| Field | Type | Required | Description | +| ------------------- | ------------------- | ------------------- | ------------------- | +| `uuid` | *Optional\* | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/EntityType.md b/gusto_embedded/docs/models/operations/EntityType.md index db5f9b507..f7c2c7595 100644 --- a/gusto_embedded/docs/models/operations/EntityType.md +++ b/gusto_embedded/docs/models/operations/EntityType.md @@ -1,18 +1,18 @@ # EntityType -The type of entity to create +The type of entity to act on. ## Example Usage ```java import com.gusto.embedded_api.models.operations.EntityType; -EntityType value = EntityType.EMPLOYEE; +EntityType value = EntityType.PAYROLL; ``` ## Values -| Name | Value | -| ---------- | ---------- | -| `EMPLOYEE` | employee | \ No newline at end of file +| Name | Value | +| --------- | --------- | +| `PAYROLL` | payroll | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetAchTransactionsRequest.md b/gusto_embedded/docs/models/operations/GetAchTransactionsRequest.md index ed5fd80f6..8e1b7d90c 100644 --- a/gusto_embedded/docs/models/operations/GetAchTransactionsRequest.md +++ b/gusto_embedded/docs/models/operations/GetAchTransactionsRequest.md @@ -5,7 +5,7 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetAchTransactionsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/XGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `contractorPaymentUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the contractor payment | | `payrollUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the payroll | diff --git a/gusto_embedded/docs/models/operations/GetCompaniesCompanyUuidWireInRequestUuidRequest.md b/gusto_embedded/docs/models/operations/GetCompaniesCompanyUuidWireInRequestUuidRequest.md index 49727cf55..92dad0029 100644 --- a/gusto_embedded/docs/models/operations/GetCompaniesCompanyUuidWireInRequestUuidRequest.md +++ b/gusto_embedded/docs/models/operations/GetCompaniesCompanyUuidWireInRequestUuidRequest.md @@ -5,7 +5,7 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetCompaniesCompanyUuidWireInRequestUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | | `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetCompaniesDepartmentsRequest.md b/gusto_embedded/docs/models/operations/GetCompaniesDepartmentsRequest.md index d3edad26d..75f56a515 100644 --- a/gusto_embedded/docs/models/operations/GetCompaniesDepartmentsRequest.md +++ b/gusto_embedded/docs/models/operations/GetCompaniesDepartmentsRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetCompaniesDepartmentsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetCompaniesDepartmentsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetCompanyNotificationsRequest.md b/gusto_embedded/docs/models/operations/GetCompanyNotificationsRequest.md index 5a9e7cbeb..0f9543909 100644 --- a/gusto_embedded/docs/models/operations/GetCompanyNotificationsRequest.md +++ b/gusto_embedded/docs/models/operations/GetCompanyNotificationsRequest.md @@ -5,8 +5,8 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetCompanyNotificationsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company for which you would like to return notifications | | `status` | [Optional\](../../models/operations/Status.md) | :heavy_minus_sign: | N/A | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetCompanyNotificationsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | | `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetDepartmentRequest.md b/gusto_embedded/docs/models/operations/GetDepartmentRequest.md index 967af39fb..c2cb710fc 100644 --- a/gusto_embedded/docs/models/operations/GetDepartmentRequest.md +++ b/gusto_embedded/docs/models/operations/GetDepartmentRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `departmentUuid` | *String* | :heavy_check_mark: | The UUID of the department | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetDepartmentHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetDepartmentHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `departmentUuid` | *String* | :heavy_check_mark: | The UUID of the department | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetEventsRequest.md b/gusto_embedded/docs/models/operations/GetEventsRequest.md index aa7a6c30e..7172c6eb4 100644 --- a/gusto_embedded/docs/models/operations/GetEventsRequest.md +++ b/gusto_embedded/docs/models/operations/GetEventsRequest.md @@ -10,4 +10,4 @@ | `resourceUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the company. If not specified, will return all events for all companies. | | `limit` | *Optional\* | :heavy_minus_sign: | Limits the number of objects returned in a single response, between 1 and 100. The default is 25 | | `eventType` | *Optional\* | :heavy_minus_sign: | A string containing the exact event name (e.g. `employee.created`), or use a wildcard match to filter for a group of events (e.g. `employee.*`, `*.created`, `notification.*.created` etc.) | -| `sortOrder` | [Optional\](../../models/operations/QueryParamSortOrder.md) | :heavy_minus_sign: | A string indicating whether to sort resulting events in ascending (asc) or descending (desc) chronological order. Events are sorted by their `timestamp`. Defaults to asc if left empty. | \ No newline at end of file +| `sortOrder` | [Optional\](../../models/operations/SortOrder.md) | :heavy_minus_sign: | A string indicating whether to sort resulting events in ascending (asc) or descending (desc) chronological order. Events are sorted by their `timestamp`. Defaults to asc if left empty. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetNotificationsNotificationUuidRequest.md b/gusto_embedded/docs/models/operations/GetNotificationsNotificationUuidRequest.md index cc03e18ff..51e4b61d1 100644 --- a/gusto_embedded/docs/models/operations/GetNotificationsNotificationUuidRequest.md +++ b/gusto_embedded/docs/models/operations/GetNotificationsNotificationUuidRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `notificationUuid` | *String* | :heavy_check_mark: | The notification entity_uuid | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetNotificationsNotificationUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetNotificationsNotificationUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `notificationUuid` | *String* | :heavy_check_mark: | The notification entity_uuid | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetReverseWireTransactionsHeaderXGustoAPIVersion.md b/gusto_embedded/docs/models/operations/GetReverseWireTransactionsHeaderXGustoAPIVersion.md new file mode 100644 index 000000000..ec1d7e0d3 --- /dev/null +++ b/gusto_embedded/docs/models/operations/GetReverseWireTransactionsHeaderXGustoAPIVersion.md @@ -0,0 +1,18 @@ +# GetReverseWireTransactionsHeaderXGustoAPIVersion + +Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + +## Example Usage + +```java +import com.gusto.embedded_api.models.operations.GetReverseWireTransactionsHeaderXGustoAPIVersion; + +GetReverseWireTransactionsHeaderXGustoAPIVersion value = GetReverseWireTransactionsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15; +``` + + +## Values + +| Name | Value | +| ---------------------------------------------- | ---------------------------------------------- | +| `TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15` | 2025-06-15 | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetReverseWireTransactionsRequest.md b/gusto_embedded/docs/models/operations/GetReverseWireTransactionsRequest.md new file mode 100644 index 000000000..3bdd174de --- /dev/null +++ b/gusto_embedded/docs/models/operations/GetReverseWireTransactionsRequest.md @@ -0,0 +1,12 @@ +# GetReverseWireTransactionsRequest + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetReverseWireTransactionsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | +| `payrollUuid` | *Optional\* | :heavy_minus_sign: | Filter results to reverse wires associated with a specific payroll | +| `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | +| `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetReverseWireTransactionsResponse.md b/gusto_embedded/docs/models/operations/GetReverseWireTransactionsResponse.md new file mode 100644 index 000000000..54edb0957 --- /dev/null +++ b/gusto_embedded/docs/models/operations/GetReverseWireTransactionsResponse.md @@ -0,0 +1,11 @@ +# GetReverseWireTransactionsResponse + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | +| `contentType` | *String* | :heavy_check_mark: | HTTP response content type for this operation | +| `statusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation | +| `rawResponse` | [HttpResponse\](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | +| `reverseWireTransactionList` | List\<[ReverseWireTransaction](../../models/components/ReverseWireTransaction.md)> | :heavy_minus_sign: | Example response | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetAchTransactionsHeaderXGustoAPIVersion.md b/gusto_embedded/docs/models/operations/GetTaxPaymentHeaderXGustoAPIVersion.md similarity index 67% rename from gusto_embedded/docs/models/operations/GetAchTransactionsHeaderXGustoAPIVersion.md rename to gusto_embedded/docs/models/operations/GetTaxPaymentHeaderXGustoAPIVersion.md index b36f92580..f9895e0fa 100644 --- a/gusto_embedded/docs/models/operations/GetAchTransactionsHeaderXGustoAPIVersion.md +++ b/gusto_embedded/docs/models/operations/GetTaxPaymentHeaderXGustoAPIVersion.md @@ -1,13 +1,13 @@ -# GetAchTransactionsHeaderXGustoAPIVersion +# GetTaxPaymentHeaderXGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. ## Example Usage ```java -import com.gusto.embedded_api.models.operations.GetAchTransactionsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetTaxPaymentHeaderXGustoAPIVersion; -GetAchTransactionsHeaderXGustoAPIVersion value = GetAchTransactionsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15; +GetTaxPaymentHeaderXGustoAPIVersion value = GetTaxPaymentHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15; ``` diff --git a/gusto_embedded/docs/models/operations/GetTaxPaymentRequest.md b/gusto_embedded/docs/models/operations/GetTaxPaymentRequest.md new file mode 100644 index 000000000..27124ac93 --- /dev/null +++ b/gusto_embedded/docs/models/operations/GetTaxPaymentRequest.md @@ -0,0 +1,10 @@ +# GetTaxPaymentRequest + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetTaxPaymentHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | +| `uuid` | *String* | :heavy_check_mark: | The UUID of the tax payment | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetTaxPaymentResponse.md b/gusto_embedded/docs/models/operations/GetTaxPaymentResponse.md new file mode 100644 index 000000000..5d78fdd78 --- /dev/null +++ b/gusto_embedded/docs/models/operations/GetTaxPaymentResponse.md @@ -0,0 +1,11 @@ +# GetTaxPaymentResponse + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | +| `contentType` | *String* | :heavy_check_mark: | HTTP response content type for this operation | +| `statusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation | +| `rawResponse` | [HttpResponse\](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | +| `taxPayment` | [Optional\](../../models/components/TaxPayment.md) | :heavy_minus_sign: | Success | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetTaxPaymentsHeaderXGustoAPIVersion.md b/gusto_embedded/docs/models/operations/GetTaxPaymentsHeaderXGustoAPIVersion.md new file mode 100644 index 000000000..a119bf2b3 --- /dev/null +++ b/gusto_embedded/docs/models/operations/GetTaxPaymentsHeaderXGustoAPIVersion.md @@ -0,0 +1,18 @@ +# GetTaxPaymentsHeaderXGustoAPIVersion + +Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + +## Example Usage + +```java +import com.gusto.embedded_api.models.operations.GetTaxPaymentsHeaderXGustoAPIVersion; + +GetTaxPaymentsHeaderXGustoAPIVersion value = GetTaxPaymentsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15; +``` + + +## Values + +| Name | Value | +| ---------------------------------------------- | ---------------------------------------------- | +| `TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15` | 2025-06-15 | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetTaxPaymentsRequest.md b/gusto_embedded/docs/models/operations/GetTaxPaymentsRequest.md new file mode 100644 index 000000000..ceee8ed55 --- /dev/null +++ b/gusto_embedded/docs/models/operations/GetTaxPaymentsRequest.md @@ -0,0 +1,24 @@ +# GetTaxPaymentsRequest + + +## Fields + +| Field | Type | Required | Description | Example | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetTaxPaymentsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | +| `jurisdiction` | List\<*String*> | :heavy_minus_sign: | Filter by tax jurisdiction. Accepts one or more two-letter state codes, or `US` for federal, as a comma-separated list (e.g. `IL,CA`). Codes are case-insensitive. | | +| `payrollUuids` | List\<*String*> | :heavy_minus_sign: | Filter to tax payments associated with one or more payrolls, given as a comma-separated list of payroll UUIDs. | | +| `dueDateFrom` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_minus_sign: | Lower-bound (inclusive) date filter on due_date. | | +| `dueDateTo` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_minus_sign: | Upper-bound (inclusive) date filter on due_date. | | +| `paymentSentOnFrom` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_minus_sign: | Lower-bound (inclusive) date filter on payment_sent_on. | | +| `paymentSentOnTo` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_minus_sign: | Upper-bound (inclusive) date filter on payment_sent_on. | | +| `periodStartFrom` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_minus_sign: | Lower-bound (inclusive) date filter on period_start. | | +| `periodStartTo` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_minus_sign: | Upper-bound (inclusive) date filter on period_start. | | +| `periodEndFrom` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_minus_sign: | Lower-bound (inclusive) date filter on period_end. | | +| `periodEndTo` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_minus_sign: | Upper-bound (inclusive) date filter on period_end. | | +| `amountMin` | *Optional\* | :heavy_minus_sign: | Lower-bound (inclusive) filter on amount. | | +| `amountMax` | *Optional\* | :heavy_minus_sign: | Upper-bound (inclusive) filter on amount. | | +| `sortBy` | *Optional\* | :heavy_minus_sign: | Sort by one or more fields. Options: amount, due_date, payment_sent_on, period_end, period_start. Append `:asc` or `:desc` to specify direction (e.g., `amount:asc`). Defaults to ascending. | amount:asc | +| `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | | +| `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetTaxPaymentsResponse.md b/gusto_embedded/docs/models/operations/GetTaxPaymentsResponse.md new file mode 100644 index 000000000..9e06ceeae --- /dev/null +++ b/gusto_embedded/docs/models/operations/GetTaxPaymentsResponse.md @@ -0,0 +1,11 @@ +# GetTaxPaymentsResponse + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | +| `contentType` | *String* | :heavy_check_mark: | HTTP response content type for this operation | +| `statusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation | +| `rawResponse` | [HttpResponse\](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | +| `taxPaymentList` | List\<[TaxPayment](../../models/components/TaxPayment.md)> | :heavy_minus_sign: | Success | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetV1BenefitsResponse.md b/gusto_embedded/docs/models/operations/GetV1BenefitsResponse.md index 38d1b7a14..c636016d6 100644 --- a/gusto_embedded/docs/models/operations/GetV1BenefitsResponse.md +++ b/gusto_embedded/docs/models/operations/GetV1BenefitsResponse.md @@ -8,4 +8,4 @@ | `contentType` | *String* | :heavy_check_mark: | HTTP response content type for this operation | | `statusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation | | `rawResponse` | [HttpResponse\](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | -| `supportedBenefits` | List\<[SupportedBenefit](../../models/components/SupportedBenefit.md)> | :heavy_minus_sign: | Successful | \ No newline at end of file +| `supportedBenefitList` | List\<[SupportedBenefit](../../models/components/SupportedBenefit.md)> | :heavy_minus_sign: | Successful | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion.md b/gusto_embedded/docs/models/operations/GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion.md new file mode 100644 index 000000000..f609b4392 --- /dev/null +++ b/gusto_embedded/docs/models/operations/GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion.md @@ -0,0 +1,18 @@ +# GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion + +Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + +## Example Usage + +```java +import com.gusto.embedded_api.models.operations.GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion; + +GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion value = GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15; +``` + + +## Values + +| Name | Value | +| ---------------------------------------------- | ---------------------------------------------- | +| `TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15` | 2025-06-15 | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetV1BulkReportsRequestUuidRequest.md b/gusto_embedded/docs/models/operations/GetV1BulkReportsRequestUuidRequest.md new file mode 100644 index 000000000..455e7dd03 --- /dev/null +++ b/gusto_embedded/docs/models/operations/GetV1BulkReportsRequestUuidRequest.md @@ -0,0 +1,9 @@ +# GetV1BulkReportsRequestUuidRequest + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `requestUuid` | *String* | :heavy_check_mark: | The UUID of the bulk report batch. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetV1BulkReportsRequestUuidResponse.md b/gusto_embedded/docs/models/operations/GetV1BulkReportsRequestUuidResponse.md new file mode 100644 index 000000000..308f4e425 --- /dev/null +++ b/gusto_embedded/docs/models/operations/GetV1BulkReportsRequestUuidResponse.md @@ -0,0 +1,11 @@ +# GetV1BulkReportsRequestUuidResponse + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | +| `contentType` | *String* | :heavy_check_mark: | HTTP response content type for this operation | +| `statusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation | +| `rawResponse` | [HttpResponse\](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | +| `bulkReport` | [Optional\](../../models/components/BulkReport.md) | :heavy_minus_sign: | OK | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetV1BulkReportsRequestUuidSecurity.md b/gusto_embedded/docs/models/operations/GetV1BulkReportsRequestUuidSecurity.md new file mode 100644 index 000000000..ad43655f1 --- /dev/null +++ b/gusto_embedded/docs/models/operations/GetV1BulkReportsRequestUuidSecurity.md @@ -0,0 +1,8 @@ +# GetV1BulkReportsRequestUuidSecurity + + +## Fields + +| Field | Type | Required | Description | +| ------------------ | ------------------ | ------------------ | ------------------ | +| `systemAccessAuth` | *String* | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetV1CompaniesCompanyIdAdminsRequest.md b/gusto_embedded/docs/models/operations/GetV1CompaniesCompanyIdAdminsRequest.md index d31ca9aec..cdf8eb2e8 100644 --- a/gusto_embedded/docs/models/operations/GetV1CompaniesCompanyIdAdminsRequest.md +++ b/gusto_embedded/docs/models/operations/GetV1CompaniesCompanyIdAdminsRequest.md @@ -5,7 +5,7 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/HeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | | `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetV1CompaniesCompanyIdContractorPaymentGroupsRequest.md b/gusto_embedded/docs/models/operations/GetV1CompaniesCompanyIdContractorPaymentGroupsRequest.md index c6048a25c..5393f11c6 100644 --- a/gusto_embedded/docs/models/operations/GetV1CompaniesCompanyIdContractorPaymentGroupsRequest.md +++ b/gusto_embedded/docs/models/operations/GetV1CompaniesCompanyIdContractorPaymentGroupsRequest.md @@ -5,9 +5,9 @@ | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdContractorPaymentGroupsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | | `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | | `startDate` | *Optional\* | :heavy_minus_sign: | The time period for which to retrieve contractor payment groups. Defaults to 6 months ago. | 2020-01-01 | | `endDate` | *Optional\* | :heavy_minus_sign: | The time period for which to retrieve contractor payment groups. Defaults to today's date. | 2020-12-31 | | `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | | -| `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdContractorPaymentGroupsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | \ No newline at end of file +| `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest.md b/gusto_embedded/docs/models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest.md index b2b1058ad..b49fbb0fa 100644 --- a/gusto_embedded/docs/models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest.md +++ b/gusto_embedded/docs/models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest.md @@ -5,7 +5,7 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyId` | *String* | :heavy_check_mark: | The UUID of the company. This identifies the company whose contractor payment details you want to retrieve. | | `contractorUuid` | *Optional\* | :heavy_minus_sign: | Optional filter to get payment details for a specific contractor. When provided, the response will only include payment details for this contractor. | -| `contractorPaymentGroupUuid` | *Optional\* | :heavy_minus_sign: | 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. | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `contractorPaymentGroupUuid` | *Optional\* | :heavy_minus_sign: | 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. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetV1CompaniesCompanyIdEmployeesQueryParamInclude.md b/gusto_embedded/docs/models/operations/GetV1CompaniesCompanyIdEmployeesQueryParamInclude.md new file mode 100644 index 000000000..24c99d39e --- /dev/null +++ b/gusto_embedded/docs/models/operations/GetV1CompaniesCompanyIdEmployeesQueryParamInclude.md @@ -0,0 +1,21 @@ +# GetV1CompaniesCompanyIdEmployeesQueryParamInclude + +## Example Usage + +```java +import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdEmployeesQueryParamInclude; + +GetV1CompaniesCompanyIdEmployeesQueryParamInclude value = GetV1CompaniesCompanyIdEmployeesQueryParamInclude.ALL_COMPENSATIONS; +``` + + +## Values + +| Name | Value | +| ---------------------- | ---------------------- | +| `ALL_COMPENSATIONS` | all_compensations | +| `ALL_HOME_ADDRESSES` | all_home_addresses | +| `COMPANY_NAME` | company_name | +| `CURRENT_HOME_ADDRESS` | current_home_address | +| `CUSTOM_FIELDS` | custom_fields | +| `PORTAL_INVITATIONS` | portal_invitations | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetV1CompaniesCompanyIdEmployeesRequest.md b/gusto_embedded/docs/models/operations/GetV1CompaniesCompanyIdEmployeesRequest.md index b1338ec65..959151d95 100644 --- a/gusto_embedded/docs/models/operations/GetV1CompaniesCompanyIdEmployeesRequest.md +++ b/gusto_embedded/docs/models/operations/GetV1CompaniesCompanyIdEmployeesRequest.md @@ -11,7 +11,7 @@ | `payrollUuid` | *Optional\* | :heavy_minus_sign: | Filter employees by a specific payroll | | | `searchTerm` | *Optional\* | :heavy_minus_sign: | A string to search for in the object's names | | | `sortBy` | *Optional\* | :heavy_minus_sign: | Sort employees by a given field. Cannot be used with search_term. Append `:asc` or `:desc` to specify direction (e.g., `name:desc`). Defaults to ascending. | created_at:asc | -| `include` | List\<[Include](../../models/operations/Include.md)> | :heavy_minus_sign: | Include the requested attribute(s) in each employee response. Multiple options are comma separated. | | +| `include` | List\<[GetV1CompaniesCompanyIdEmployeesQueryParamInclude](../../models/operations/GetV1CompaniesCompanyIdEmployeesQueryParamInclude.md)> | :heavy_minus_sign: | Include the requested attribute(s) in each employee response. Multiple options are comma separated. | | | `onboarded` | *Optional\* | :heavy_minus_sign: | Filters employees by those who have completed onboarding | | | `onboardedActive` | *Optional\* | :heavy_minus_sign: | Filters employees who are ready to work (onboarded AND active today) | | | `terminated` | *Optional\* | :heavy_minus_sign: | Filters employees by those who have been or are scheduled to be terminated | | diff --git a/gusto_embedded/docs/models/operations/GetV1CompaniesCompanyIdFederalTaxDetailsRequest.md b/gusto_embedded/docs/models/operations/GetV1CompaniesCompanyIdFederalTaxDetailsRequest.md index 3d1f819c9..b8135170e 100644 --- a/gusto_embedded/docs/models/operations/GetV1CompaniesCompanyIdFederalTaxDetailsRequest.md +++ b/gusto_embedded/docs/models/operations/GetV1CompaniesCompanyIdFederalTaxDetailsRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | 7b1d0df1-6403-4a06-8768-c1dd7d24d27a | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdFederalTaxDetailsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdFederalTaxDetailsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | 7b1d0df1-6403-4a06-8768-c1dd7d24d27a | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetV1CompaniesCompanyIdPaySchedulesPreviewRequest.md b/gusto_embedded/docs/models/operations/GetV1CompaniesCompanyIdPaySchedulesPreviewRequest.md index 912c535a0..cfb82250a 100644 --- a/gusto_embedded/docs/models/operations/GetV1CompaniesCompanyIdPaySchedulesPreviewRequest.md +++ b/gusto_embedded/docs/models/operations/GetV1CompaniesCompanyIdPaySchedulesPreviewRequest.md @@ -12,4 +12,5 @@ | `anchorEndOfPayPeriod` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_check_mark: | The last date of the first pay period. This can be the same date as the anchor pay date. | 2020-05-08 | | `day1` | *Optional\* | :heavy_minus_sign: | 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. | 15 | | `day2` | *Optional\* | :heavy_minus_sign: | 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 is set to the last day of the month. It will be null for pay schedules with other frequencies. | 31 | -| `endDate` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_minus_sign: | End date for the preview range. If given, this date must be in the future. When unspecified, defaults to 18 months from today. | | \ No newline at end of file +| `endDate` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_minus_sign: | End date for the preview range. If given, this date must be in the future. When unspecified, defaults to 18 months from today. | | +| `payScheduleUuid` | *Optional\* | :heavy_minus_sign: | Optional UUID of an existing pay schedule. When supplied, the preview is seeded from the persisted schedule — including internal flags (such as arrears handling) that affect period boundaries but are not exposed as request parameters. Any other query parameters override individual attributes on top of the loaded schedule. | | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion.md b/gusto_embedded/docs/models/operations/GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion.md similarity index 68% rename from gusto_embedded/docs/models/operations/GetV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion.md rename to gusto_embedded/docs/models/operations/GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion.md index 554389755..f7126ded9 100644 --- a/gusto_embedded/docs/models/operations/GetV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion.md +++ b/gusto_embedded/docs/models/operations/GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion.md @@ -1,13 +1,13 @@ -# GetV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion +# GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. ## Example Usage ```java -import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion; -GetV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion value = GetV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15; +GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion value = GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15; ``` diff --git a/gusto_embedded/docs/models/operations/GetV1CompaniesCompanyIdPayrollReversalsRequest.md b/gusto_embedded/docs/models/operations/GetV1CompaniesCompanyIdPayrollReversalsRequest.md index 29e8e3fb1..f828b2823 100644 --- a/gusto_embedded/docs/models/operations/GetV1CompaniesCompanyIdPayrollReversalsRequest.md +++ b/gusto_embedded/docs/models/operations/GetV1CompaniesCompanyIdPayrollReversalsRequest.md @@ -5,7 +5,7 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | -| `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | -| `xGustoAPIVersion` | [Optional\](../../models/components/VersionHeader.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.md b/gusto_embedded/docs/models/operations/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.md index e8abe53db..ff9d1d05c 100644 --- a/gusto_embedded/docs/models/operations/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.md +++ b/gusto_embedded/docs/models/operations/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyId` | *String* | :heavy_check_mark: | The UUID of the company | -| `id` | *String* | :heavy_check_mark: | The UUID of the payroll | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `id` | *String* | :heavy_check_mark: | The UUID of the payroll | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetV1CompaniesCompanyIdPayrollsPayrollIdRequest.md b/gusto_embedded/docs/models/operations/GetV1CompaniesCompanyIdPayrollsPayrollIdRequest.md index 3f6e266a2..2ddcfd247 100644 --- a/gusto_embedded/docs/models/operations/GetV1CompaniesCompanyIdPayrollsPayrollIdRequest.md +++ b/gusto_embedded/docs/models/operations/GetV1CompaniesCompanyIdPayrollsPayrollIdRequest.md @@ -5,9 +5,9 @@ | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdPayrollsPayrollIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | | `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | | `payrollId` | *String* | :heavy_check_mark: | The UUID of the payroll | | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdPayrollsPayrollIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | | `include` | List\<[GetV1CompaniesCompanyIdPayrollsPayrollIdQueryParamInclude](../../models/operations/GetV1CompaniesCompanyIdPayrollsPayrollIdQueryParamInclude.md)> | :heavy_minus_sign: | Include the requested attribute in the response, for multiple attributes comma separate the values, i.e. `?include=benefits,deductions,taxes` | | | `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | | | `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | | diff --git a/gusto_embedded/docs/models/operations/GetV1CompaniesCompanyIdPayrollsRequest.md b/gusto_embedded/docs/models/operations/GetV1CompaniesCompanyIdPayrollsRequest.md index 7fb68723f..d7c533615 100644 --- a/gusto_embedded/docs/models/operations/GetV1CompaniesCompanyIdPayrollsRequest.md +++ b/gusto_embedded/docs/models/operations/GetV1CompaniesCompanyIdPayrollsRequest.md @@ -5,8 +5,8 @@ | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | | `processingStatuses` | List\<[ProcessingStatuses](../../models/operations/ProcessingStatuses.md)> | :heavy_minus_sign: | Whether to include processed and/or unprocessed payrolls in the response, defaults to processed, for multiple attributes comma separate the values, i.e. `?processing_statuses=processed,unprocessed` | | | `payrollTypes` | List\<[QueryParamPayrollTypes](../../models/operations/QueryParamPayrollTypes.md)> | :heavy_minus_sign: | Whether to include regular and/or off_cycle payrolls in the response, defaults to regular, for multiple attributes comma separate the values, i.e. `?payroll_types=regular,off_cycle` | | | `processed` | *Optional\* | :heavy_minus_sign: | Whether to return processed or unprocessed payrolls | | @@ -17,4 +17,4 @@ | `dateFilterBy` | [Optional\](../../models/operations/DateFilterBy.md) | :heavy_minus_sign: | Specifies which date field to use when filtering payrolls with start_date and end_date. This field applies only to regular processed payrolls and defaults to pay period if not provided. | check_date | | `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | | | `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | | -| `sortOrder` | [Optional\](../../models/operations/SortOrder.md) | :heavy_minus_sign: | A string indicating whether to sort resulting events in ascending (asc) or descending (desc) chronological order. Events are sorted by their `timestamp`. Defaults to asc if left empty. | asc | \ No newline at end of file +| `sortOrder` | [Optional\](../../models/operations/QueryParamSortOrder.md) | :heavy_minus_sign: | A string indicating whether to sort resulting events in ascending (asc) or descending (desc) chronological order. Events are sorted by their `timestamp`. Defaults to asc if left empty. | asc | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetV1CompaniesCompanyUuidSignatoriesRequest.md b/gusto_embedded/docs/models/operations/GetV1CompaniesCompanyUuidSignatoriesRequest.md index d663e119c..0582dd5b4 100644 --- a/gusto_embedded/docs/models/operations/GetV1CompaniesCompanyUuidSignatoriesRequest.md +++ b/gusto_embedded/docs/models/operations/GetV1CompaniesCompanyUuidSignatoriesRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyUuidSignatoriesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyUuidSignatoriesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsRequest.md b/gusto_embedded/docs/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsRequest.md index e045197b3..dc8ac0a76 100644 --- a/gusto_embedded/docs/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsRequest.md +++ b/gusto_embedded/docs/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyUuidTaxRequirementsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyUuidTaxRequirementsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsStateRequest.md b/gusto_embedded/docs/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsStateRequest.md index 8ab8c17eb..30fdff1b1 100644 --- a/gusto_embedded/docs/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsStateRequest.md +++ b/gusto_embedded/docs/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsStateRequest.md @@ -5,7 +5,7 @@ | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyUuidTaxRequirementsStateHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | | `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | | `state` | *String* | :heavy_check_mark: | The two-letter state abbreviation | CA | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyUuidTaxRequirementsStateHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | | `scheduling` | *Optional\* | :heavy_minus_sign: | When true, return "new" requirement sets with valid `effective_from` dates that are available to save new effective-dated values. | | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetV1CompaniesRequest.md b/gusto_embedded/docs/models/operations/GetV1CompaniesRequest.md index 6e2ad3227..67d84a956 100644 --- a/gusto_embedded/docs/models/operations/GetV1CompaniesRequest.md +++ b/gusto_embedded/docs/models/operations/GetV1CompaniesRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsQueryParamInclude.md b/gusto_embedded/docs/models/operations/GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsQueryParamInclude.md deleted file mode 100644 index 3e6b1aaf7..000000000 --- a/gusto_embedded/docs/models/operations/GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsQueryParamInclude.md +++ /dev/null @@ -1,19 +0,0 @@ -# GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsQueryParamInclude - -Available options: -- all_benefits: Include all effective dated benefits for each employee instead of only the current benefits. - -## Example Usage - -```java -import com.gusto.embedded_api.models.operations.GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsQueryParamInclude; - -GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsQueryParamInclude value = GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsQueryParamInclude.ALL_BENEFITS; -``` - - -## Values - -| Name | Value | -| -------------- | -------------- | -| `ALL_BENEFITS` | all_benefits | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsRequest.md b/gusto_embedded/docs/models/operations/GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsRequest.md index 0a21e174a..d5aaf5ac4 100644 --- a/gusto_embedded/docs/models/operations/GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsRequest.md +++ b/gusto_embedded/docs/models/operations/GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsRequest.md @@ -9,4 +9,4 @@ | `companyBenefitId` | *String* | :heavy_check_mark: | The UUID of the company benefit | | `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | | `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | -| `include` | [Optional\](../../models/operations/GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsQueryParamInclude.md) | :heavy_minus_sign: | Available options:
    - all_benefits: Include all effective dated benefits for each employee instead of only the current benefits. | \ No newline at end of file +| `include` | [Optional\](../../models/operations/QueryParamInclude.md) | :heavy_minus_sign: | Available options:
    - all_benefits: Include all effective dated benefits for each employee instead of only the current benefits. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetV1CompanyBenefitsCompanyBenefitIdQueryParamInclude.md b/gusto_embedded/docs/models/operations/GetV1CompanyBenefitsCompanyBenefitIdQueryParamInclude.md deleted file mode 100644 index 34acf295a..000000000 --- a/gusto_embedded/docs/models/operations/GetV1CompanyBenefitsCompanyBenefitIdQueryParamInclude.md +++ /dev/null @@ -1,19 +0,0 @@ -# GetV1CompanyBenefitsCompanyBenefitIdQueryParamInclude - -Available options: -- all_benefits: If with_employee_benefits=true, include all effective dated benefits for each employee instead of only the current benefits. - -## Example Usage - -```java -import com.gusto.embedded_api.models.operations.GetV1CompanyBenefitsCompanyBenefitIdQueryParamInclude; - -GetV1CompanyBenefitsCompanyBenefitIdQueryParamInclude value = GetV1CompanyBenefitsCompanyBenefitIdQueryParamInclude.ALL_BENEFITS; -``` - - -## Values - -| Name | Value | -| -------------- | -------------- | -| `ALL_BENEFITS` | all_benefits | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetV1CompanyBenefitsCompanyBenefitIdRequest.md b/gusto_embedded/docs/models/operations/GetV1CompanyBenefitsCompanyBenefitIdRequest.md index ff4093df8..1d0a4b9b5 100644 --- a/gusto_embedded/docs/models/operations/GetV1CompanyBenefitsCompanyBenefitIdRequest.md +++ b/gusto_embedded/docs/models/operations/GetV1CompanyBenefitsCompanyBenefitIdRequest.md @@ -8,4 +8,4 @@ | `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompanyBenefitsCompanyBenefitIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyBenefitId` | *String* | :heavy_check_mark: | The UUID of the company benefit | | `withEmployeeBenefits` | *Optional\* | :heavy_minus_sign: | Whether to return employee benefits associated with the benefit | -| `include` | [Optional\](../../models/operations/GetV1CompanyBenefitsCompanyBenefitIdQueryParamInclude.md) | :heavy_minus_sign: | Available options:
    - all_benefits: If with_employee_benefits=true, include all effective dated benefits for each employee instead of only the current benefits. | \ No newline at end of file +| `include` | [Optional\](../../models/operations/Include.md) | :heavy_minus_sign: | Available options:
    - all_benefits: If with_employee_benefits=true, include all effective dated benefits for each employee instead of only the current benefits. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetV1CompanyFinishOnboardingRequest.md b/gusto_embedded/docs/models/operations/GetV1CompanyFinishOnboardingRequest.md index 387d5e582..cd74288a1 100644 --- a/gusto_embedded/docs/models/operations/GetV1CompanyFinishOnboardingRequest.md +++ b/gusto_embedded/docs/models/operations/GetV1CompanyFinishOnboardingRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | 7b1d0df1-6403-4a06-8768-c1dd7d24d27a | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompanyFinishOnboardingHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompanyFinishOnboardingHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | 7b1d0df1-6403-4a06-8768-c1dd7d24d27a | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetV1CompanyIndustryRequest.md b/gusto_embedded/docs/models/operations/GetV1CompanyIndustryRequest.md index b6a7b04f5..789bd7642 100644 --- a/gusto_embedded/docs/models/operations/GetV1CompanyIndustryRequest.md +++ b/gusto_embedded/docs/models/operations/GetV1CompanyIndustryRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompanyIndustryHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompanyIndustryHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetV1CompanyOnboardingStatusRequest.md b/gusto_embedded/docs/models/operations/GetV1CompanyOnboardingStatusRequest.md index 3292469c3..4b1732f88 100644 --- a/gusto_embedded/docs/models/operations/GetV1CompanyOnboardingStatusRequest.md +++ b/gusto_embedded/docs/models/operations/GetV1CompanyOnboardingStatusRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompanyOnboardingStatusHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | | `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | 7b1d0df1-6403-4a06-8768-c1dd7d24d27a | -| `additionalSteps` | *Optional\* | :heavy_minus_sign: | Comma-delimited string of additional onboarding steps to include. Currently only supports the value "external_payroll". | external_payroll | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompanyOnboardingStatusHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | \ No newline at end of file +| `additionalSteps` | *Optional\* | :heavy_minus_sign: | Comma-delimited string of additional onboarding steps to include. Currently only supports the value "external_payroll". | external_payroll | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.md b/gusto_embedded/docs/models/operations/GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.md index 472134e8a..468079c72 100644 --- a/gusto_embedded/docs/models/operations/GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.md +++ b/gusto_embedded/docs/models/operations/GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `contractorPaymentGroupUuid` | *String* | :heavy_check_mark: | The UUID of the contractor payment group | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1ContractorPaymentGroupsContractorPaymentGroupIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1ContractorPaymentGroupsContractorPaymentGroupIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorPaymentGroupUuid` | *String* | :heavy_check_mark: | The UUID of the contractor payment group | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.md b/gusto_embedded/docs/models/operations/GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.md index 5faa3bac3..8dc42357a 100644 --- a/gusto_embedded/docs/models/operations/GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.md +++ b/gusto_embedded/docs/models/operations/GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `id` | *String* | :heavy_check_mark: | The UUID of the contractor payment group | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1ContractorPaymentGroupsIdPartnerDisbursementsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1ContractorPaymentGroupsIdPartnerDisbursementsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `id` | *String* | :heavy_check_mark: | The UUID of the contractor payment group | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.md b/gusto_embedded/docs/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.md new file mode 100644 index 000000000..ab124d2b6 --- /dev/null +++ b/gusto_embedded/docs/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.md @@ -0,0 +1,18 @@ +# GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion + +Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + +## Example Usage + +```java +import com.gusto.embedded_api.models.operations.GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion; + +GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion value = GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15; +``` + + +## Values + +| Name | Value | +| ---------------------------------------------- | ---------------------------------------------- | +| `TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15` | 2025-06-15 | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsRequest.md b/gusto_embedded/docs/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsRequest.md new file mode 100644 index 000000000..93ce3684c --- /dev/null +++ b/gusto_embedded/docs/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsRequest.md @@ -0,0 +1,9 @@ +# GetV1ContractorsContractorUuidMemberPortalInvitationsRequest + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsResponse.md b/gusto_embedded/docs/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsResponse.md new file mode 100644 index 000000000..130dc68ec --- /dev/null +++ b/gusto_embedded/docs/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsResponse.md @@ -0,0 +1,11 @@ +# GetV1ContractorsContractorUuidMemberPortalInvitationsResponse + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | +| `contentType` | *String* | :heavy_check_mark: | HTTP response content type for this operation | +| `statusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation | +| `rawResponse` | [HttpResponse\](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | +| `memberPortalInvitation` | [Optional\](../../models/components/MemberPortalInvitation.md) | :heavy_minus_sign: | Success | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetV1ContractorsContractorUuidPaymentsHeaderXGustoAPIVersion.md b/gusto_embedded/docs/models/operations/GetV1ContractorsContractorUuidPaymentsHeaderXGustoAPIVersion.md new file mode 100644 index 000000000..6e89fd830 --- /dev/null +++ b/gusto_embedded/docs/models/operations/GetV1ContractorsContractorUuidPaymentsHeaderXGustoAPIVersion.md @@ -0,0 +1,18 @@ +# GetV1ContractorsContractorUuidPaymentsHeaderXGustoAPIVersion + +Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + +## Example Usage + +```java +import com.gusto.embedded_api.models.operations.GetV1ContractorsContractorUuidPaymentsHeaderXGustoAPIVersion; + +GetV1ContractorsContractorUuidPaymentsHeaderXGustoAPIVersion value = GetV1ContractorsContractorUuidPaymentsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15; +``` + + +## Values + +| Name | Value | +| ---------------------------------------------- | ---------------------------------------------- | +| `TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15` | 2025-06-15 | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetV1ContractorsContractorUuidPaymentsRequest.md b/gusto_embedded/docs/models/operations/GetV1ContractorsContractorUuidPaymentsRequest.md new file mode 100644 index 000000000..8aa624653 --- /dev/null +++ b/gusto_embedded/docs/models/operations/GetV1ContractorsContractorUuidPaymentsRequest.md @@ -0,0 +1,12 @@ +# GetV1ContractorsContractorUuidPaymentsRequest + + +## Fields + +| Field | Type | Required | Description | Example | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1ContractorsContractorUuidPaymentsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | +| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | | +| `sortBy` | *Optional\* | :heavy_minus_sign: | Sort the results. Format: `field` or `field:direction` where `field` is `check_date` or `created_at` and `direction` is `asc` or `desc`. | check_date:desc | +| `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | | +| `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetV1ContractorsContractorUuidPaymentsResponse.md b/gusto_embedded/docs/models/operations/GetV1ContractorsContractorUuidPaymentsResponse.md new file mode 100644 index 000000000..2a76072a6 --- /dev/null +++ b/gusto_embedded/docs/models/operations/GetV1ContractorsContractorUuidPaymentsResponse.md @@ -0,0 +1,11 @@ +# GetV1ContractorsContractorUuidPaymentsResponse + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | +| `contentType` | *String* | :heavy_check_mark: | HTTP response content type for this operation | +| `statusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation | +| `rawResponse` | [HttpResponse\](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | +| `contractorPaymentListings` | List\<[ContractorPaymentListing](../../models/components/ContractorPaymentListing.md)> | :heavy_minus_sign: | A JSON array of contractor payments | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetV1EmployeesEmployeeIdCustomFieldsRequest.md b/gusto_embedded/docs/models/operations/GetV1EmployeesEmployeeIdCustomFieldsRequest.md index 293792d16..f5f22f6f1 100644 --- a/gusto_embedded/docs/models/operations/GetV1EmployeesEmployeeIdCustomFieldsRequest.md +++ b/gusto_embedded/docs/models/operations/GetV1EmployeesEmployeeIdCustomFieldsRequest.md @@ -5,7 +5,7 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeIdCustomFieldsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | | `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | -| `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeIdCustomFieldsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetV1EmployeesEmployeeIdHomeAddressesRequest.md b/gusto_embedded/docs/models/operations/GetV1EmployeesEmployeeIdHomeAddressesRequest.md index 6aebafe06..76ab936a3 100644 --- a/gusto_embedded/docs/models/operations/GetV1EmployeesEmployeeIdHomeAddressesRequest.md +++ b/gusto_embedded/docs/models/operations/GetV1EmployeesEmployeeIdHomeAddressesRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeIdHomeAddressesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeIdHomeAddressesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetV1EmployeesEmployeeIdJobsRequest.md b/gusto_embedded/docs/models/operations/GetV1EmployeesEmployeeIdJobsRequest.md index cf7a66074..3fc632e29 100644 --- a/gusto_embedded/docs/models/operations/GetV1EmployeesEmployeeIdJobsRequest.md +++ b/gusto_embedded/docs/models/operations/GetV1EmployeesEmployeeIdJobsRequest.md @@ -5,8 +5,8 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeIdJobsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | | `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | | `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | -| `include` | [Optional\](../../models/operations/GetV1EmployeesEmployeeIdJobsQueryParamInclude.md) | :heavy_minus_sign: | Available options:
    - all_compensations: Include all effective dated compensations for each job instead of only the current compensation
    | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeIdJobsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `include` | [Optional\](../../models/operations/GetV1EmployeesEmployeeIdJobsQueryParamInclude.md) | :heavy_minus_sign: | Available options:
    - all_compensations: Include all effective dated compensations for each job instead of only the current compensation
    | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.md b/gusto_embedded/docs/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.md new file mode 100644 index 000000000..79f4f8af2 --- /dev/null +++ b/gusto_embedded/docs/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.md @@ -0,0 +1,18 @@ +# GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion + +Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + +## Example Usage + +```java +import com.gusto.embedded_api.models.operations.GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion; + +GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion value = GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15; +``` + + +## Values + +| Name | Value | +| ---------------------------------------------- | ---------------------------------------------- | +| `TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15` | 2025-06-15 | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest.md b/gusto_embedded/docs/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest.md new file mode 100644 index 000000000..1b278bbe8 --- /dev/null +++ b/gusto_embedded/docs/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest.md @@ -0,0 +1,9 @@ +# GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse.md b/gusto_embedded/docs/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse.md new file mode 100644 index 000000000..f3813fbd5 --- /dev/null +++ b/gusto_embedded/docs/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse.md @@ -0,0 +1,11 @@ +# GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | +| `contentType` | *String* | :heavy_check_mark: | HTTP response content type for this operation | +| `statusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation | +| `rawResponse` | [HttpResponse\](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | +| `memberPortalInvitation` | [Optional\](../../models/components/MemberPortalInvitation.md) | :heavy_minus_sign: | Success | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetV1EmployeesEmployeeIdWorkAddressesRequest.md b/gusto_embedded/docs/models/operations/GetV1EmployeesEmployeeIdWorkAddressesRequest.md index d19a627b6..50040c09e 100644 --- a/gusto_embedded/docs/models/operations/GetV1EmployeesEmployeeIdWorkAddressesRequest.md +++ b/gusto_embedded/docs/models/operations/GetV1EmployeesEmployeeIdWorkAddressesRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeIdWorkAddressesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeIdWorkAddressesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.md b/gusto_embedded/docs/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.md index d65f1161d..512607983 100644 --- a/gusto_embedded/docs/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.md +++ b/gusto_embedded/docs/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `employeeUuid` | *String* | :heavy_check_mark: | The UUID of the employee | -| `effectiveYear` | *long* | :heavy_check_mark: | The effective year for the Section 603 status | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `effectiveYear` | *long* | :heavy_check_mark: | The effective year for the Section 603 status | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.md b/gusto_embedded/docs/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.md index 80afc7e83..e9a06200c 100644 --- a/gusto_embedded/docs/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.md +++ b/gusto_embedded/docs/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `employeeUuid` | *String* | :heavy_check_mark: | The UUID of the employee | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeUuid` | *String* | :heavy_check_mark: | The UUID of the employee | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetV1EmployeesQueryParamInclude.md b/gusto_embedded/docs/models/operations/GetV1EmployeesQueryParamInclude.md new file mode 100644 index 000000000..b5723142a --- /dev/null +++ b/gusto_embedded/docs/models/operations/GetV1EmployeesQueryParamInclude.md @@ -0,0 +1,21 @@ +# GetV1EmployeesQueryParamInclude + +## Example Usage + +```java +import com.gusto.embedded_api.models.operations.GetV1EmployeesQueryParamInclude; + +GetV1EmployeesQueryParamInclude value = GetV1EmployeesQueryParamInclude.ALL_COMPENSATIONS; +``` + + +## Values + +| Name | Value | +| ---------------------- | ---------------------- | +| `ALL_COMPENSATIONS` | all_compensations | +| `ALL_HOME_ADDRESSES` | all_home_addresses | +| `COMPANY_NAME` | company_name | +| `CURRENT_HOME_ADDRESS` | current_home_address | +| `CUSTOM_FIELDS` | custom_fields | +| `PORTAL_INVITATIONS` | portal_invitations | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetV1EmployeesRequest.md b/gusto_embedded/docs/models/operations/GetV1EmployeesRequest.md index 565b2b40f..047635b75 100644 --- a/gusto_embedded/docs/models/operations/GetV1EmployeesRequest.md +++ b/gusto_embedded/docs/models/operations/GetV1EmployeesRequest.md @@ -7,4 +7,4 @@ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | -| `include` | List\<[QueryParamInclude](../../models/operations/QueryParamInclude.md)> | :heavy_minus_sign: | Include the requested attribute(s) in each employee response. Multiple options are comma separated. | \ No newline at end of file +| `include` | List\<[GetV1EmployeesQueryParamInclude](../../models/operations/GetV1EmployeesQueryParamInclude.md)> | :heavy_minus_sign: | Include the requested attribute(s) in each employee response. Multiple options are comma separated. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion.md b/gusto_embedded/docs/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion.md new file mode 100644 index 000000000..8f71a3594 --- /dev/null +++ b/gusto_embedded/docs/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion.md @@ -0,0 +1,18 @@ +# GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion + +Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + +## Example Usage + +```java +import com.gusto.embedded_api.models.operations.GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion; + +GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion value = GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15; +``` + + +## Values + +| Name | Value | +| ---------------------------------------------- | ---------------------------------------------- | +| `TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15` | 2025-06-15 | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest.md b/gusto_embedded/docs/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest.md index 5f54a4af0..eb0ec75b9 100644 --- a/gusto_embedded/docs/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest.md +++ b/gusto_embedded/docs/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `documentType` | [DocumentType](../../models/operations/DocumentType.md) | :heavy_check_mark: | The type of document being generated | -| `requestUuid` | *String* | :heavy_check_mark: | The UUID of the request to generate a document. Generate document endpoints return request_uuids to be used with the GET generated document endpoint. | -| `xGustoAPIVersion` | [Optional\](../../models/components/VersionHeader.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `requestUuid` | *String* | :heavy_check_mark: | The UUID of the request to generate a document. Generate document endpoints return request_uuids to be used with the GET generated document endpoint. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetV1HomeAddressesHomeAddressUuidRequest.md b/gusto_embedded/docs/models/operations/GetV1HomeAddressesHomeAddressUuidRequest.md index a64d26076..c0c0df377 100644 --- a/gusto_embedded/docs/models/operations/GetV1HomeAddressesHomeAddressUuidRequest.md +++ b/gusto_embedded/docs/models/operations/GetV1HomeAddressesHomeAddressUuidRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `homeAddressUuid` | *String* | :heavy_check_mark: | The UUID of the home address | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1HomeAddressesHomeAddressUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1HomeAddressesHomeAddressUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `homeAddressUuid` | *String* | :heavy_check_mark: | The UUID of the home address | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetV1JobsJobIdRequest.md b/gusto_embedded/docs/models/operations/GetV1JobsJobIdRequest.md index 87c2fabaa..586a46dd8 100644 --- a/gusto_embedded/docs/models/operations/GetV1JobsJobIdRequest.md +++ b/gusto_embedded/docs/models/operations/GetV1JobsJobIdRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1JobsJobIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `jobId` | *String* | :heavy_check_mark: | The UUID of the job | -| `include` | [Optional\](../../models/operations/GetV1JobsJobIdQueryParamInclude.md) | :heavy_minus_sign: | Available options:
    - all_compensations: Include all effective dated compensations for each job instead of only the current compensation
    | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1JobsJobIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `include` | [Optional\](../../models/operations/GetV1JobsJobIdQueryParamInclude.md) | :heavy_minus_sign: | Available options:
    - all_compensations: Include all effective dated compensations for each job instead of only the current compensation
    | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetV1LocationsLocationUuidMinimumWagesRequest.md b/gusto_embedded/docs/models/operations/GetV1LocationsLocationUuidMinimumWagesRequest.md index b5c4959da..395a3c379 100644 --- a/gusto_embedded/docs/models/operations/GetV1LocationsLocationUuidMinimumWagesRequest.md +++ b/gusto_embedded/docs/models/operations/GetV1LocationsLocationUuidMinimumWagesRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `locationUuid` | *String* | :heavy_check_mark: | The UUID of the location | | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1LocationsLocationUuidMinimumWagesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | +| `locationUuid` | *String* | :heavy_check_mark: | The UUID of the location | | | `effectiveDate` | *Optional\* | :heavy_minus_sign: | N/A | 2020-01-31 | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest.md b/gusto_embedded/docs/models/operations/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest.md index 465361c16..7745ffd4a 100644 --- a/gusto_embedded/docs/models/operations/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest.md +++ b/gusto_embedded/docs/models/operations/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidRequest.md b/gusto_embedded/docs/models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidRequest.md index 6dbb99dc3..2a52e8262 100644 --- a/gusto_embedded/docs/models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidRequest.md +++ b/gusto_embedded/docs/models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidRequest.md @@ -5,5 +5,7 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `payrollUuid` | *String* | :heavy_check_mark: | The UUID of the payroll | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | +| `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion.md b/gusto_embedded/docs/models/operations/GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion.md new file mode 100644 index 000000000..f9a7d6875 --- /dev/null +++ b/gusto_embedded/docs/models/operations/GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion.md @@ -0,0 +1,18 @@ +# GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion + +Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + +## Example Usage + +```java +import com.gusto.embedded_api.models.operations.GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion; + +GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion value = GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15; +``` + + +## Values + +| Name | Value | +| ---------------------------------------------- | ---------------------------------------------- | +| `TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15` | 2025-06-15 | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetV1PayrollBatchesPayrollBatchUuidRequest.md b/gusto_embedded/docs/models/operations/GetV1PayrollBatchesPayrollBatchUuidRequest.md new file mode 100644 index 000000000..9e4304a5f --- /dev/null +++ b/gusto_embedded/docs/models/operations/GetV1PayrollBatchesPayrollBatchUuidRequest.md @@ -0,0 +1,9 @@ +# GetV1PayrollBatchesPayrollBatchUuidRequest + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `payrollBatchUuid` | *String* | :heavy_check_mark: | The UUID of the payroll cancellation batch returned by `POST /v1/payroll_batches`. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetV1PayrollBatchesPayrollBatchUuidResponse.md b/gusto_embedded/docs/models/operations/GetV1PayrollBatchesPayrollBatchUuidResponse.md new file mode 100644 index 000000000..ada4d02fe --- /dev/null +++ b/gusto_embedded/docs/models/operations/GetV1PayrollBatchesPayrollBatchUuidResponse.md @@ -0,0 +1,11 @@ +# GetV1PayrollBatchesPayrollBatchUuidResponse + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | +| `contentType` | *String* | :heavy_check_mark: | HTTP response content type for this operation | +| `statusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation | +| `rawResponse` | [HttpResponse\](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | +| `payrollBatchResults` | [Optional\](../../models/components/PayrollBatchResults.md) | :heavy_minus_sign: | successful | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetV1PayrollBatchesPayrollBatchUuidSecurity.md b/gusto_embedded/docs/models/operations/GetV1PayrollBatchesPayrollBatchUuidSecurity.md new file mode 100644 index 000000000..06c6b17ca --- /dev/null +++ b/gusto_embedded/docs/models/operations/GetV1PayrollBatchesPayrollBatchUuidSecurity.md @@ -0,0 +1,8 @@ +# GetV1PayrollBatchesPayrollBatchUuidSecurity + + +## Fields + +| Field | Type | Required | Description | +| ------------------ | ------------------ | ------------------ | ------------------ | +| `systemAccessAuth` | *String* | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetV1PayrollDigestsPayrollDigestUuidRequest.md b/gusto_embedded/docs/models/operations/GetV1PayrollDigestsPayrollDigestUuidRequest.md index 94932ddab..e1a2f32f4 100644 --- a/gusto_embedded/docs/models/operations/GetV1PayrollDigestsPayrollDigestUuidRequest.md +++ b/gusto_embedded/docs/models/operations/GetV1PayrollDigestsPayrollDigestUuidRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `payrollDigestUuid` | *String* | :heavy_check_mark: | The UUID of the payroll digest batch returned by `POST /v1/payroll_digests`. | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1PayrollDigestsPayrollDigestUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1PayrollDigestsPayrollDigestUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `payrollDigestUuid` | *String* | :heavy_check_mark: | The UUID of the payroll digest batch returned by `POST /v1/payroll_digests`. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetV1PeopleBatchesPeopleBatchUuidRequest.md b/gusto_embedded/docs/models/operations/GetV1PeopleBatchesPeopleBatchUuidRequest.md index 8c0c6537d..300509ccb 100644 --- a/gusto_embedded/docs/models/operations/GetV1PeopleBatchesPeopleBatchUuidRequest.md +++ b/gusto_embedded/docs/models/operations/GetV1PeopleBatchesPeopleBatchUuidRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `peopleBatchUuid` | *String* | :heavy_check_mark: | The UUID of the people batch | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1PeopleBatchesPeopleBatchUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1PeopleBatchesPeopleBatchUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `peopleBatchUuid` | *String* | :heavy_check_mark: | The UUID of the people batch | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetV1TokenInfoHeaderXGustoAPIVersion.md b/gusto_embedded/docs/models/operations/GetV1TokenInfoHeaderXGustoAPIVersion.md new file mode 100644 index 000000000..d7be7ef86 --- /dev/null +++ b/gusto_embedded/docs/models/operations/GetV1TokenInfoHeaderXGustoAPIVersion.md @@ -0,0 +1,18 @@ +# GetV1TokenInfoHeaderXGustoAPIVersion + +Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + +## Example Usage + +```java +import com.gusto.embedded_api.models.operations.GetV1TokenInfoHeaderXGustoAPIVersion; + +GetV1TokenInfoHeaderXGustoAPIVersion value = GetV1TokenInfoHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15; +``` + + +## Values + +| Name | Value | +| ---------------------------------------------- | ---------------------------------------------- | +| `TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15` | 2025-06-15 | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetV1TokenInfoRequest.md b/gusto_embedded/docs/models/operations/GetV1TokenInfoRequest.md index 6bd0fb010..718672757 100644 --- a/gusto_embedded/docs/models/operations/GetV1TokenInfoRequest.md +++ b/gusto_embedded/docs/models/operations/GetV1TokenInfoRequest.md @@ -5,4 +5,4 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/XGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1TokenInfoHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetV1WebhookSubscriptionUuidRequest.md b/gusto_embedded/docs/models/operations/GetV1WebhookSubscriptionUuidRequest.md index f375788c1..bb8018904 100644 --- a/gusto_embedded/docs/models/operations/GetV1WebhookSubscriptionUuidRequest.md +++ b/gusto_embedded/docs/models/operations/GetV1WebhookSubscriptionUuidRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `webhookSubscriptionUuid` | *String* | :heavy_check_mark: | The webhook subscription UUID. | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1WebhookSubscriptionUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1WebhookSubscriptionUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `webhookSubscriptionUuid` | *String* | :heavy_check_mark: | The webhook subscription UUID. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetV1WebhookSubscriptionVerificationTokenUuidRequest.md b/gusto_embedded/docs/models/operations/GetV1WebhookSubscriptionVerificationTokenUuidRequest.md index 8d407e95d..fd4a311e8 100644 --- a/gusto_embedded/docs/models/operations/GetV1WebhookSubscriptionVerificationTokenUuidRequest.md +++ b/gusto_embedded/docs/models/operations/GetV1WebhookSubscriptionVerificationTokenUuidRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `webhookSubscriptionUuid` | *String* | :heavy_check_mark: | The webhook subscription UUID. | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1WebhookSubscriptionVerificationTokenUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1WebhookSubscriptionVerificationTokenUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `webhookSubscriptionUuid` | *String* | :heavy_check_mark: | The webhook subscription UUID. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetV1WorkAddressesWorkAddressUuidRequest.md b/gusto_embedded/docs/models/operations/GetV1WorkAddressesWorkAddressUuidRequest.md index 55cbdc9b0..0be33d2ce 100644 --- a/gusto_embedded/docs/models/operations/GetV1WorkAddressesWorkAddressUuidRequest.md +++ b/gusto_embedded/docs/models/operations/GetV1WorkAddressesWorkAddressUuidRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `workAddressUuid` | *String* | :heavy_check_mark: | The UUID of the work address | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1WorkAddressesWorkAddressUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1WorkAddressesWorkAddressUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `workAddressUuid` | *String* | :heavy_check_mark: | The UUID of the work address | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/GetWireInRequestsWireInRequestUuidRequest.md b/gusto_embedded/docs/models/operations/GetWireInRequestsWireInRequestUuidRequest.md index 88549dd5c..7b5ec66a0 100644 --- a/gusto_embedded/docs/models/operations/GetWireInRequestsWireInRequestUuidRequest.md +++ b/gusto_embedded/docs/models/operations/GetWireInRequestsWireInRequestUuidRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `wireInRequestUuid` | *String* | :heavy_check_mark: | The UUID of the Wire In Request | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetWireInRequestsWireInRequestUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetWireInRequestsWireInRequestUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `wireInRequestUuid` | *String* | :heavy_check_mark: | The UUID of the Wire In Request | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/Include.md b/gusto_embedded/docs/models/operations/Include.md index 3ce3ae7f0..788e2a291 100644 --- a/gusto_embedded/docs/models/operations/Include.md +++ b/gusto_embedded/docs/models/operations/Include.md @@ -1,21 +1,19 @@ # Include +Available options: +- all_benefits: If with_employee_benefits=true, include all effective dated benefits for each employee instead of only the current benefits. + ## Example Usage ```java import com.gusto.embedded_api.models.operations.Include; -Include value = Include.ALL_COMPENSATIONS; +Include value = Include.ALL_BENEFITS; ``` ## Values -| Name | Value | -| ---------------------- | ---------------------- | -| `ALL_COMPENSATIONS` | all_compensations | -| `ALL_HOME_ADDRESSES` | all_home_addresses | -| `COMPANY_NAME` | company_name | -| `CURRENT_HOME_ADDRESS` | current_home_address | -| `CUSTOM_FIELDS` | custom_fields | -| `PORTAL_INVITATIONS` | portal_invitations | \ No newline at end of file +| Name | Value | +| -------------- | -------------- | +| `ALL_BENEFITS` | all_benefits | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/LeavingFor.md b/gusto_embedded/docs/models/operations/LeavingFor.md index 841a9d022..b115de292 100644 --- a/gusto_embedded/docs/models/operations/LeavingFor.md +++ b/gusto_embedded/docs/models/operations/LeavingFor.md @@ -35,6 +35,7 @@ LeavingFor value = LeavingFor.ACCOUNTANT; | `NAMELY` | namely | | `ONPAY` | onpay | | `OTHER` | other | +| `OTHER_PEO` | other_peo | | `OYSTER` | oyster | | `PATRIOT` | patriot | | `PAYCHEX` | paychex | @@ -44,6 +45,7 @@ LeavingFor value = LeavingFor.ACCOUNTANT; | `RIPPLING` | rippling | | `SQUARE` | square | | `SUREPAYROLL` | surepayroll | +| `TOAST` | toast | | `TRINET` | trinet | | `VELOCITY_GLOBAL` | velocity_global | | `ZENEFITS` | zenefits | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/OauthAccessTokenHeaderXGustoAPIVersion.md b/gusto_embedded/docs/models/operations/OauthAccessTokenHeaderXGustoAPIVersion.md new file mode 100644 index 000000000..4f602fcc5 --- /dev/null +++ b/gusto_embedded/docs/models/operations/OauthAccessTokenHeaderXGustoAPIVersion.md @@ -0,0 +1,18 @@ +# OauthAccessTokenHeaderXGustoAPIVersion + +Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + +## Example Usage + +```java +import com.gusto.embedded_api.models.operations.OauthAccessTokenHeaderXGustoAPIVersion; + +OauthAccessTokenHeaderXGustoAPIVersion value = OauthAccessTokenHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15; +``` + + +## Values + +| Name | Value | +| ---------------------------------------------- | ---------------------------------------------- | +| `TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15` | 2025-06-15 | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/OauthAccessTokenRequest.md b/gusto_embedded/docs/models/operations/OauthAccessTokenRequest.md index 8a4e9f658..87d3e0a18 100644 --- a/gusto_embedded/docs/models/operations/OauthAccessTokenRequest.md +++ b/gusto_embedded/docs/models/operations/OauthAccessTokenRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/HeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/OauthAccessTokenHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `requestBody` | [OauthAccessTokenRequestBody](../../models/operations/OauthAccessTokenRequestBody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.md b/gusto_embedded/docs/models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.md index 76cdb0c80..2ce283bde 100644 --- a/gusto_embedded/docs/models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.md +++ b/gusto_embedded/docs/models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.md @@ -5,7 +5,7 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | `id` | *String* | :heavy_check_mark: | The UUID of the payroll | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `requestBody` | [Optional\](../../models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBody.md) | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsPaymentMethod.md b/gusto_embedded/docs/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsPaymentMethod.md index f425ba05d..0221517fe 100644 --- a/gusto_embedded/docs/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsPaymentMethod.md +++ b/gusto_embedded/docs/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsPaymentMethod.md @@ -13,7 +13,9 @@ PatchV1ContractorPaymentGroupsIdPartnerDisbursementsPaymentMethod value = PatchV ## Values -| Name | Value | -| ---------------- | ---------------- | -| `DIRECT_DEPOSIT` | Direct Deposit | -| `CHECK` | Check | \ No newline at end of file +| Name | Value | +| -------------------- | -------------------- | +| `DIRECT_DEPOSIT` | Direct Deposit | +| `CHECK` | Check | +| `HISTORICAL_PAYMENT` | Historical Payment | +| `CORRECTION_PAYMENT` | Correction Payment | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.md b/gusto_embedded/docs/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.md index 46f310e3b..bb75e1de4 100644 --- a/gusto_embedded/docs/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.md +++ b/gusto_embedded/docs/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `id` | *String* | :heavy_check_mark: | The UUID of the contractor payment group | | `xGustoAPIVersion` | [Optional\](../../models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `id` | *String* | :heavy_check_mark: | The UUID of the contractor payment group | | `requestBody` | [Optional\](../../models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBody.md) | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.md b/gusto_embedded/docs/models/operations/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.md index f93a2192c..62aba45bc 100644 --- a/gusto_embedded/docs/models/operations/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.md +++ b/gusto_embedded/docs/models/operations/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.md @@ -5,7 +5,7 @@ | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `employeeUuid` | *String* | :heavy_check_mark: | The UUID of the employee | | `effectiveYear` | *long* | :heavy_check_mark: | The effective year for the Section 603 status | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `employeeSection603HighEarnerStatusUpdateRequest` | [EmployeeSection603HighEarnerStatusUpdateRequest](../../models/components/EmployeeSection603HighEarnerStatusUpdateRequest.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PostDepartmentsRequest.md b/gusto_embedded/docs/models/operations/PostDepartmentsRequest.md index a0ac02170..52954e667 100644 --- a/gusto_embedded/docs/models/operations/PostDepartmentsRequest.md +++ b/gusto_embedded/docs/models/operations/PostDepartmentsRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/PostDepartmentsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `departmentCreateRequestBody` | [DepartmentCreateRequestBody](../../models/components/DepartmentCreateRequestBody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest.md b/gusto_embedded/docs/models/operations/PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest.md index 4f2143bde..aa464e21f 100644 --- a/gusto_embedded/docs/models/operations/PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest.md +++ b/gusto_embedded/docs/models/operations/PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `partnerManagedCompanyAcceptTermsOfServiceRequest` | [PartnerManagedCompanyAcceptTermsOfServiceRequest](../../models/components/PartnerManagedCompanyAcceptTermsOfServiceRequest.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest.md b/gusto_embedded/docs/models/operations/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest.md index af85fbf8c..86c040233 100644 --- a/gusto_embedded/docs/models/operations/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest.md +++ b/gusto_embedded/docs/models/operations/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `partnerManagedCompanyRetrieveTermsOfServiceRequest` | [PartnerManagedCompanyRetrieveTermsOfServiceRequest](../../models/components/PartnerManagedCompanyRetrieveTermsOfServiceRequest.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PostV1BulkReportsHeaderXGustoAPIVersion.md b/gusto_embedded/docs/models/operations/PostV1BulkReportsHeaderXGustoAPIVersion.md new file mode 100644 index 000000000..8f2f5a6e6 --- /dev/null +++ b/gusto_embedded/docs/models/operations/PostV1BulkReportsHeaderXGustoAPIVersion.md @@ -0,0 +1,18 @@ +# PostV1BulkReportsHeaderXGustoAPIVersion + +Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + +## Example Usage + +```java +import com.gusto.embedded_api.models.operations.PostV1BulkReportsHeaderXGustoAPIVersion; + +PostV1BulkReportsHeaderXGustoAPIVersion value = PostV1BulkReportsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15; +``` + + +## Values + +| Name | Value | +| ---------------------------------------------- | ---------------------------------------------- | +| `TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15` | 2025-06-15 | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PostV1BulkReportsRequest.md b/gusto_embedded/docs/models/operations/PostV1BulkReportsRequest.md new file mode 100644 index 000000000..9e340b098 --- /dev/null +++ b/gusto_embedded/docs/models/operations/PostV1BulkReportsRequest.md @@ -0,0 +1,9 @@ +# PostV1BulkReportsRequest + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1BulkReportsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | +| `bulkReportBody` | [BulkReportBody](../../models/components/BulkReportBody.md) | :heavy_check_mark: | N/A | {
    "batch": [
    {
    "company_uuid": "12345678-abcd-ef12-3456-7890abcdef12",
    "report_type": "custom_report",
    "columns": [
    "employee_first_name"
    ],
    "groupings": [
    "employee"
    ],
    "file_type": "csv",
    "custom_name": "Q1 Payroll Export",
    "with_totals": false,
    "start_date": "2026-01-01",
    "end_date": "2026-03-31",
    "date_filter_type": "check_date",
    "payment_method": "check",
    "employment_type": "exempt",
    "employment_status": "active_full_time"
    },
    {
    "company_uuid": "12345678-abcd-ef12-3456-7890abcdef12",
    "report_type": "general_ledger",
    "payroll_uuid": "7b1d0df1-6403-4a06-8768-c1dd7d24d27a",
    "aggregation": "default"
    }
    ]
    } | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PostV1BulkReportsResponse.md b/gusto_embedded/docs/models/operations/PostV1BulkReportsResponse.md new file mode 100644 index 000000000..ff0e1b271 --- /dev/null +++ b/gusto_embedded/docs/models/operations/PostV1BulkReportsResponse.md @@ -0,0 +1,11 @@ +# PostV1BulkReportsResponse + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | +| `contentType` | *String* | :heavy_check_mark: | HTTP response content type for this operation | +| `statusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation | +| `rawResponse` | [HttpResponse\](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | +| `createBulkReport` | [Optional\](../../models/components/CreateBulkReport.md) | :heavy_minus_sign: | Created | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PostV1BulkReportsSecurity.md b/gusto_embedded/docs/models/operations/PostV1BulkReportsSecurity.md new file mode 100644 index 000000000..ae57a7bec --- /dev/null +++ b/gusto_embedded/docs/models/operations/PostV1BulkReportsSecurity.md @@ -0,0 +1,8 @@ +# PostV1BulkReportsSecurity + + +## Fields + +| Field | Type | Required | Description | +| ------------------ | ------------------ | ------------------ | ------------------ | +| `systemAccessAuth` | *String* | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsContractorPayments.md b/gusto_embedded/docs/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsContractorPayments.md new file mode 100644 index 000000000..cd7ba289d --- /dev/null +++ b/gusto_embedded/docs/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsContractorPayments.md @@ -0,0 +1,13 @@ +# PostV1CompaniesCompanyIdContractorPaymentGroupsContractorPayments + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| `contractorUuid` | *Optional\* | :heavy_minus_sign: | The contractor receiving the payment | | +| `paymentMethod` | [Optional\](../../models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPaymentMethod.md) | :heavy_minus_sign: | N/A | | +| `wage` | *Optional\* | :heavy_minus_sign: | If the contractor is on a fixed wage, this is the fixed wage payment for the contractor, regardless of hours worked | 5000.0 | +| `hours` | *Optional\* | :heavy_minus_sign: | If the contractor is on an hourly wage, this is the number of hours that the contractor worked for the payment | 40.0 | +| `bonus` | *Optional\* | :heavy_minus_sign: | If the contractor is on an hourly wage, this is the bonus the contractor earned | 500.0 | +| `reimbursement` | *Optional\* | :heavy_minus_sign: | Reimbursed wages for the contractor | 20.0 | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewPaymentMethod.md b/gusto_embedded/docs/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPaymentMethod.md similarity index 55% rename from gusto_embedded/docs/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewPaymentMethod.md rename to gusto_embedded/docs/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPaymentMethod.md index b9a837ccc..92b0c31a4 100644 --- a/gusto_embedded/docs/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewPaymentMethod.md +++ b/gusto_embedded/docs/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPaymentMethod.md @@ -1,11 +1,11 @@ -# PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewPaymentMethod +# PostV1CompaniesCompanyIdContractorPaymentGroupsPaymentMethod ## Example Usage ```java -import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewPaymentMethod; +import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyIdContractorPaymentGroupsPaymentMethod; -PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewPaymentMethod value = PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewPaymentMethod.DIRECT_DEPOSIT; +PostV1CompaniesCompanyIdContractorPaymentGroupsPaymentMethod value = PostV1CompaniesCompanyIdContractorPaymentGroupsPaymentMethod.DIRECT_DEPOSIT; ``` diff --git a/gusto_embedded/docs/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments.md b/gusto_embedded/docs/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments.md deleted file mode 100644 index 118c70220..000000000 --- a/gusto_embedded/docs/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments.md +++ /dev/null @@ -1,13 +0,0 @@ -# PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments - - -## Fields - -| Field | Type | Required | Description | Example | -| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `contractorUuid` | *Optional\* | :heavy_minus_sign: | The contractor receiving the payment | | -| `paymentMethod` | [Optional\](../../models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewPaymentMethod.md) | :heavy_minus_sign: | N/A | | -| `wage` | *Optional\* | :heavy_minus_sign: | If the contractor is on a fixed wage, this is the fixed wage payment for the contractor, regardless of hours worked | 5000.0 | -| `hours` | *Optional\* | :heavy_minus_sign: | If the contractor is on an hourly wage, this is the number of hours that the contractor worked for the payment | 40.0 | -| `bonus` | *Optional\* | :heavy_minus_sign: | If the contractor is on an hourly wage, this is the bonus the contractor earned | 500.0 | -| `reimbursement` | *Optional\* | :heavy_minus_sign: | Reimbursed wages for the contractor | 20.0 | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBody.md b/gusto_embedded/docs/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBody.md index 9188cfdae..f9e2b8f50 100644 --- a/gusto_embedded/docs/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBody.md +++ b/gusto_embedded/docs/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBody.md @@ -3,7 +3,7 @@ ## Fields -| Field | Type | Required | Description | -| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `contractorPayments` | List\<[PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments](../../models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments.md)> | :heavy_check_mark: | N/A | -| `checkDate` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_minus_sign: | Date when payments should be processed | \ No newline at end of file +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- | +| `contractorPayments` | List\<[ContractorPayments](../../models/operations/ContractorPayments.md)> | :heavy_check_mark: | N/A | +| `checkDate` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_minus_sign: | Date when payments should be processed | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBody.md b/gusto_embedded/docs/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBody.md index 9fb4cffca..a14caa125 100644 --- a/gusto_embedded/docs/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBody.md +++ b/gusto_embedded/docs/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBody.md @@ -3,9 +3,9 @@ ## Fields -| Field | Type | Required | Description | Example | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `checkDate` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_check_mark: | The payment check date | 2020-01-01 | -| `creationToken` | *String* | :heavy_check_mark: | A token used to make contractor payment group creation idempotent. The string must be unique for each group you intend to create. | 1d532d13-8f61-4a57-ad3c-b5fac1c6e05e | -| `submissionBlockers` | List\<[SubmissionBlockers](../../models/operations/SubmissionBlockers.md)> | :heavy_minus_sign: | Optional array of submission blockers with selected unblock options. Returned from the preview endpoint and can be submitted with selected_option to resolve blockers. | | -| `contractorPayments` | List\<[ContractorPayments](../../models/operations/ContractorPayments.md)> | :heavy_check_mark: | N/A | | \ No newline at end of file +| Field | Type | Required | Description | Example | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| `checkDate` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_check_mark: | The payment check date | 2020-01-01 | +| `creationToken` | *String* | :heavy_check_mark: | A token used to make contractor payment group creation idempotent. The string must be unique for each group you intend to create. | 1d532d13-8f61-4a57-ad3c-b5fac1c6e05e | +| `submissionBlockers` | List\<[SubmissionBlockers](../../models/operations/SubmissionBlockers.md)> | :heavy_minus_sign: | Optional array of submission blockers with selected unblock options. Returned from the preview endpoint and can be submitted with selected_option to resolve blockers. | | +| `contractorPayments` | List\<[PostV1CompaniesCompanyIdContractorPaymentGroupsContractorPayments](../../models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsContractorPayments.md)> | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesBatch.md b/gusto_embedded/docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesBatch.md new file mode 100644 index 000000000..715af28ad --- /dev/null +++ b/gusto_embedded/docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesBatch.md @@ -0,0 +1,15 @@ +# PostV1CompaniesCompanyIdPeopleBatchesBatch + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| `entityType` | [PostV1CompaniesCompanyIdPeopleBatchesEntityType](../../models/operations/PostV1CompaniesCompanyIdPeopleBatchesEntityType.md) | :heavy_check_mark: | The type of entity to create | employee | +| `person` | [Person](../../models/operations/Person.md) | :heavy_check_mark: | N/A | | +| `homeAddress` | [Optional\](../../models/operations/PostV1CompaniesCompanyIdPeopleBatchesHomeAddress.md) | :heavy_minus_sign: | Home address for the employee | | +| `workAddress` | [Optional\](../../models/operations/PostV1CompaniesCompanyIdPeopleBatchesWorkAddress.md) | :heavy_minus_sign: | Specify the company work location for the employee | | +| `job` | [Optional\](../../models/operations/PostV1CompaniesCompanyIdPeopleBatchesJob.md) | :heavy_minus_sign: | Job details for the employee (required if compensation is provided) | | +| `department` | [Optional\](../../models/operations/Department.md) | :heavy_minus_sign: | Department details for the employee | | +| `compensation` | [Optional\](../../models/operations/Compensation.md) | :heavy_minus_sign: | Compensation details for the employee (requires job to be provided) | | +| `bankAccounts` | List\<[BankAccounts](../../models/operations/BankAccounts.md)> | :heavy_minus_sign: | Creates employee bank account(s) and payment method(s) for direct deposit. Payments can be split across accounts by Percentage or by Amount. If splitting payments by `Percentage`, all splits must have a `split_amount` and the percentages must add up to `100`.
    If splitting payments by `Amount`, the priority is set based on the order of the bank accounts in the array and the last bank account is the remainder account (should have `split_amount` set to `null`). | | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesBatchAction.md b/gusto_embedded/docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesBatchAction.md new file mode 100644 index 000000000..16ce49132 --- /dev/null +++ b/gusto_embedded/docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesBatchAction.md @@ -0,0 +1,18 @@ +# PostV1CompaniesCompanyIdPeopleBatchesBatchAction + +The action to perform on the batch + +## Example Usage + +```java +import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyIdPeopleBatchesBatchAction; + +PostV1CompaniesCompanyIdPeopleBatchesBatchAction value = PostV1CompaniesCompanyIdPeopleBatchesBatchAction.CREATE; +``` + + +## Values + +| Name | Value | +| -------- | -------- | +| `CREATE` | create | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesEntityType.md b/gusto_embedded/docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesEntityType.md new file mode 100644 index 000000000..cab22e496 --- /dev/null +++ b/gusto_embedded/docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesEntityType.md @@ -0,0 +1,18 @@ +# PostV1CompaniesCompanyIdPeopleBatchesEntityType + +The type of entity to create + +## Example Usage + +```java +import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyIdPeopleBatchesEntityType; + +PostV1CompaniesCompanyIdPeopleBatchesEntityType value = PostV1CompaniesCompanyIdPeopleBatchesEntityType.EMPLOYEE; +``` + + +## Values + +| Name | Value | +| ---------- | ---------- | +| `EMPLOYEE` | employee | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequest.md b/gusto_embedded/docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequest.md index 8e61170ff..39900e87a 100644 --- a/gusto_embedded/docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequest.md +++ b/gusto_embedded/docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1CompaniesCompanyIdPeopleBatchesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | `requestBody` | [PostV1CompaniesCompanyIdPeopleBatchesRequestBody](../../models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequestBody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequestBody.md b/gusto_embedded/docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequestBody.md index 08dc4bd9d..934a96713 100644 --- a/gusto_embedded/docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequestBody.md +++ b/gusto_embedded/docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequestBody.md @@ -3,8 +3,8 @@ ## Fields -| Field | Type | Required | Description | Example | -| -------------------------------------------------------------- | -------------------------------------------------------------- | -------------------------------------------------------------- | -------------------------------------------------------------- | -------------------------------------------------------------- | -| `idempotencyKey` | *String* | :heavy_check_mark: | A unique identifier to ensure idempotency of the batch request | 550e8400-e29b-41d4-a716-446655440000 | -| `batchAction` | [BatchAction](../../models/operations/BatchAction.md) | :heavy_check_mark: | The action to perform on the batch | create | -| `batch` | List\<[Batch](../../models/operations/Batch.md)> | :heavy_check_mark: | Array of people to create | | \ No newline at end of file +| Field | Type | Required | Description | Example | +| ------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- | +| `idempotencyKey` | *String* | :heavy_check_mark: | A unique identifier to ensure idempotency of the batch request | 550e8400-e29b-41d4-a716-446655440000 | +| `batchAction` | [PostV1CompaniesCompanyIdPeopleBatchesBatchAction](../../models/operations/PostV1CompaniesCompanyIdPeopleBatchesBatchAction.md) | :heavy_check_mark: | The action to perform on the batch | create | +| `batch` | List\<[PostV1CompaniesCompanyIdPeopleBatchesBatch](../../models/operations/PostV1CompaniesCompanyIdPeopleBatchesBatch.md)> | :heavy_check_mark: | Array of people to create | | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PostV1CompaniesCompanyUuidSignatoriesInviteRequest.md b/gusto_embedded/docs/models/operations/PostV1CompaniesCompanyUuidSignatoriesInviteRequest.md index 8790dab06..43d8574c2 100644 --- a/gusto_embedded/docs/models/operations/PostV1CompaniesCompanyUuidSignatoriesInviteRequest.md +++ b/gusto_embedded/docs/models/operations/PostV1CompaniesCompanyUuidSignatoriesInviteRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1CompaniesCompanyUuidSignatoriesInviteHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `signatoryInviteRequest` | [SignatoryInviteRequest](../../models/components/SignatoryInviteRequest.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PostV1CompanySignatoriesRequest.md b/gusto_embedded/docs/models/operations/PostV1CompanySignatoriesRequest.md index 9a5dd743a..a06b64950 100644 --- a/gusto_embedded/docs/models/operations/PostV1CompanySignatoriesRequest.md +++ b/gusto_embedded/docs/models/operations/PostV1CompanySignatoriesRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1CompanySignatoriesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `signatoryCreateRequest` | [SignatoryCreateRequest](../../models/components/SignatoryCreateRequest.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.md b/gusto_embedded/docs/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.md new file mode 100644 index 000000000..b608e44fb --- /dev/null +++ b/gusto_embedded/docs/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.md @@ -0,0 +1,18 @@ +# PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion + +Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + +## Example Usage + +```java +import com.gusto.embedded_api.models.operations.PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion; + +PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion value = PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15; +``` + + +## Values + +| Name | Value | +| ---------------------------------------------- | ---------------------------------------------- | +| `TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15` | 2025-06-15 | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsRequest.md b/gusto_embedded/docs/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsRequest.md new file mode 100644 index 000000000..966121990 --- /dev/null +++ b/gusto_embedded/docs/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsRequest.md @@ -0,0 +1,9 @@ +# PostV1ContractorsContractorUuidMemberPortalInvitationsRequest + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsResponse.md b/gusto_embedded/docs/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsResponse.md new file mode 100644 index 000000000..481a117a0 --- /dev/null +++ b/gusto_embedded/docs/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsResponse.md @@ -0,0 +1,10 @@ +# PostV1ContractorsContractorUuidMemberPortalInvitationsResponse + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | +| `contentType` | *String* | :heavy_check_mark: | HTTP response content type for this operation | +| `statusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation | +| `rawResponse` | [HttpResponse\](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PostV1ContractorsContractorUuidRehireRequest.md b/gusto_embedded/docs/models/operations/PostV1ContractorsContractorUuidRehireRequest.md index 97ec33c6e..6598bac8c 100644 --- a/gusto_embedded/docs/models/operations/PostV1ContractorsContractorUuidRehireRequest.md +++ b/gusto_embedded/docs/models/operations/PostV1ContractorsContractorUuidRehireRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | | `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1ContractorsContractorUuidRehireHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | | `requestBody` | [Optional\](../../models/operations/PostV1ContractorsContractorUuidRehireRequestBody.md) | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PostV1ContractorsContractorUuidTerminationRequest.md b/gusto_embedded/docs/models/operations/PostV1ContractorsContractorUuidTerminationRequest.md index 2a911bb23..deea20426 100644 --- a/gusto_embedded/docs/models/operations/PostV1ContractorsContractorUuidTerminationRequest.md +++ b/gusto_embedded/docs/models/operations/PostV1ContractorsContractorUuidTerminationRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | | `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1ContractorsContractorUuidTerminationHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | | `requestBody` | [Optional\](../../models/operations/PostV1ContractorsContractorUuidTerminationRequestBody.md) | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PostV1EmployeesEmployeeIdHomeAddressesRequest.md b/gusto_embedded/docs/models/operations/PostV1EmployeesEmployeeIdHomeAddressesRequest.md index 8e8b60278..ea4752ef3 100644 --- a/gusto_embedded/docs/models/operations/PostV1EmployeesEmployeeIdHomeAddressesRequest.md +++ b/gusto_embedded/docs/models/operations/PostV1EmployeesEmployeeIdHomeAddressesRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | | `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1EmployeesEmployeeIdHomeAddressesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | | `requestBody` | [PostV1EmployeesEmployeeIdHomeAddressesRequestBody](../../models/operations/PostV1EmployeesEmployeeIdHomeAddressesRequestBody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PostV1EmployeesEmployeeIdJobsRequest.md b/gusto_embedded/docs/models/operations/PostV1EmployeesEmployeeIdJobsRequest.md index c66ac8cd1..8227a3f15 100644 --- a/gusto_embedded/docs/models/operations/PostV1EmployeesEmployeeIdJobsRequest.md +++ b/gusto_embedded/docs/models/operations/PostV1EmployeesEmployeeIdJobsRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | | `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1EmployeesEmployeeIdJobsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | | `jobsCreateRequestBody` | [JobsCreateRequestBody](../../models/components/JobsCreateRequestBody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PostV1EmployeesEmployeeIdJobsResponse.md b/gusto_embedded/docs/models/operations/PostV1EmployeesEmployeeIdJobsResponse.md index 4347a1f9c..78c50467b 100644 --- a/gusto_embedded/docs/models/operations/PostV1EmployeesEmployeeIdJobsResponse.md +++ b/gusto_embedded/docs/models/operations/PostV1EmployeesEmployeeIdJobsResponse.md @@ -8,4 +8,4 @@ | `contentType` | *String* | :heavy_check_mark: | HTTP response content type for this operation | | `statusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation | | `rawResponse` | [HttpResponse\](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | -| `job` | [Optional\](../../models/components/Job.md) | :heavy_minus_sign: | created | \ No newline at end of file +| `job` | [Optional\](../../models/components/Job.md) | :heavy_minus_sign: | created a primary job with a null title | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.md b/gusto_embedded/docs/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.md new file mode 100644 index 000000000..327c3b59d --- /dev/null +++ b/gusto_embedded/docs/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.md @@ -0,0 +1,18 @@ +# PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion + +Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + +## Example Usage + +```java +import com.gusto.embedded_api.models.operations.PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion; + +PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion value = PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15; +``` + + +## Values + +| Name | Value | +| ---------------------------------------------- | ---------------------------------------------- | +| `TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15` | 2025-06-15 | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest.md b/gusto_embedded/docs/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest.md new file mode 100644 index 000000000..e59810e0f --- /dev/null +++ b/gusto_embedded/docs/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest.md @@ -0,0 +1,9 @@ +# PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse.md b/gusto_embedded/docs/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse.md new file mode 100644 index 000000000..ab7f01e37 --- /dev/null +++ b/gusto_embedded/docs/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse.md @@ -0,0 +1,10 @@ +# PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | +| `contentType` | *String* | :heavy_check_mark: | HTTP response content type for this operation | +| `statusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation | +| `rawResponse` | [HttpResponse\](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PostV1EmployeesEmployeeIdWorkAddressesRequest.md b/gusto_embedded/docs/models/operations/PostV1EmployeesEmployeeIdWorkAddressesRequest.md index c94f3722d..39eb4db57 100644 --- a/gusto_embedded/docs/models/operations/PostV1EmployeesEmployeeIdWorkAddressesRequest.md +++ b/gusto_embedded/docs/models/operations/PostV1EmployeesEmployeeIdWorkAddressesRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | | `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1EmployeesEmployeeIdWorkAddressesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | | `requestBody` | [PostV1EmployeesEmployeeIdWorkAddressesRequestBody](../../models/operations/PostV1EmployeesEmployeeIdWorkAddressesRequestBody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.md b/gusto_embedded/docs/models/operations/PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.md index b427efdbf..a39f3225d 100644 --- a/gusto_embedded/docs/models/operations/PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.md +++ b/gusto_embedded/docs/models/operations/PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `employeeUuid` | *String* | :heavy_check_mark: | The UUID of the employee | | `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeUuid` | *String* | :heavy_check_mark: | The UUID of the employee | | `employeeSection603HighEarnerStatusCreateRequest` | [EmployeeSection603HighEarnerStatusCreateRequest](../../models/components/EmployeeSection603HighEarnerStatusCreateRequest.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PostV1PayrollBatchesHeaderXGustoAPIVersion.md b/gusto_embedded/docs/models/operations/PostV1PayrollBatchesHeaderXGustoAPIVersion.md new file mode 100644 index 000000000..38e2818f8 --- /dev/null +++ b/gusto_embedded/docs/models/operations/PostV1PayrollBatchesHeaderXGustoAPIVersion.md @@ -0,0 +1,18 @@ +# PostV1PayrollBatchesHeaderXGustoAPIVersion + +Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + +## Example Usage + +```java +import com.gusto.embedded_api.models.operations.PostV1PayrollBatchesHeaderXGustoAPIVersion; + +PostV1PayrollBatchesHeaderXGustoAPIVersion value = PostV1PayrollBatchesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15; +``` + + +## Values + +| Name | Value | +| ---------------------------------------------- | ---------------------------------------------- | +| `TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15` | 2025-06-15 | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PostV1PayrollBatchesRequest.md b/gusto_embedded/docs/models/operations/PostV1PayrollBatchesRequest.md new file mode 100644 index 000000000..e44ed5f4a --- /dev/null +++ b/gusto_embedded/docs/models/operations/PostV1PayrollBatchesRequest.md @@ -0,0 +1,9 @@ +# PostV1PayrollBatchesRequest + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1PayrollBatchesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `requestBody` | [PostV1PayrollBatchesRequestBody](../../models/operations/PostV1PayrollBatchesRequestBody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PostV1PayrollBatchesRequestBody.md b/gusto_embedded/docs/models/operations/PostV1PayrollBatchesRequestBody.md new file mode 100644 index 000000000..14a2ebbbf --- /dev/null +++ b/gusto_embedded/docs/models/operations/PostV1PayrollBatchesRequestBody.md @@ -0,0 +1,10 @@ +# PostV1PayrollBatchesRequestBody + + +## Fields + +| Field | Type | Required | Description | Example | +| ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | +| `idempotencyKey` | *String* | :heavy_check_mark: | A partner-generated unique identifier to ensure idempotency of the batch request. Scoped per partner. | 80a74f8b-2c16-45e5-9038-aa108849c6e6 | +| `batchAction` | [BatchAction](../../models/operations/BatchAction.md) | :heavy_check_mark: | The action to perform on the batch. Only `cancel` is supported. | cancel | +| `batch` | List\<[Batch](../../models/operations/Batch.md)> | :heavy_check_mark: | Array of payrolls to cancel. Maximum 100 payrolls per request. | | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PostV1PayrollBatchesResponse.md b/gusto_embedded/docs/models/operations/PostV1PayrollBatchesResponse.md new file mode 100644 index 000000000..7a82db52f --- /dev/null +++ b/gusto_embedded/docs/models/operations/PostV1PayrollBatchesResponse.md @@ -0,0 +1,11 @@ +# PostV1PayrollBatchesResponse + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | +| `contentType` | *String* | :heavy_check_mark: | HTTP response content type for this operation | +| `statusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation | +| `rawResponse` | [HttpResponse\](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | +| `payrollBatch` | [Optional\](../../models/components/PayrollBatch.md) | :heavy_minus_sign: | created | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PostV1PayrollBatchesSecurity.md b/gusto_embedded/docs/models/operations/PostV1PayrollBatchesSecurity.md new file mode 100644 index 000000000..c89721adb --- /dev/null +++ b/gusto_embedded/docs/models/operations/PostV1PayrollBatchesSecurity.md @@ -0,0 +1,8 @@ +# PostV1PayrollBatchesSecurity + + +## Fields + +| Field | Type | Required | Description | +| ------------------ | ------------------ | ------------------ | ------------------ | +| `systemAccessAuth` | *String* | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PutAddPeopleToDepartmentRequest.md b/gusto_embedded/docs/models/operations/PutAddPeopleToDepartmentRequest.md index d7876c7e2..aa61e40bb 100644 --- a/gusto_embedded/docs/models/operations/PutAddPeopleToDepartmentRequest.md +++ b/gusto_embedded/docs/models/operations/PutAddPeopleToDepartmentRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `departmentUuid` | *String* | :heavy_check_mark: | The UUID of the department | | `xGustoAPIVersion` | [Optional\](../../models/operations/PutAddPeopleToDepartmentHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `departmentUuid` | *String* | :heavy_check_mark: | The UUID of the department | | `departmentPeopleRequestBody` | [DepartmentPeopleRequestBody](../../models/components/DepartmentPeopleRequestBody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PutDepartmentsRequest.md b/gusto_embedded/docs/models/operations/PutDepartmentsRequest.md index 0e429b407..6a6d7b037 100644 --- a/gusto_embedded/docs/models/operations/PutDepartmentsRequest.md +++ b/gusto_embedded/docs/models/operations/PutDepartmentsRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `departmentUuid` | *String* | :heavy_check_mark: | The UUID of the department | | `xGustoAPIVersion` | [Optional\](../../models/operations/PutDepartmentsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `departmentUuid` | *String* | :heavy_check_mark: | The UUID of the department | | `departmentUpdateRequestBody` | [DepartmentUpdateRequestBody](../../models/components/DepartmentUpdateRequestBody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PutRemovePeopleFromDepartmentRequest.md b/gusto_embedded/docs/models/operations/PutRemovePeopleFromDepartmentRequest.md index f6db8e85c..16ea106aa 100644 --- a/gusto_embedded/docs/models/operations/PutRemovePeopleFromDepartmentRequest.md +++ b/gusto_embedded/docs/models/operations/PutRemovePeopleFromDepartmentRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `departmentUuid` | *String* | :heavy_check_mark: | The UUID of the department | | `xGustoAPIVersion` | [Optional\](../../models/operations/PutRemovePeopleFromDepartmentHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `departmentUuid` | *String* | :heavy_check_mark: | The UUID of the department | | `departmentPeopleRequestBody` | [DepartmentPeopleRequestBody](../../models/components/DepartmentPeopleRequestBody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PutV1CompaniesCompanyIdFederalTaxDetailsRequest.md b/gusto_embedded/docs/models/operations/PutV1CompaniesCompanyIdFederalTaxDetailsRequest.md index 98aef451c..621b3bb8d 100644 --- a/gusto_embedded/docs/models/operations/PutV1CompaniesCompanyIdFederalTaxDetailsRequest.md +++ b/gusto_embedded/docs/models/operations/PutV1CompaniesCompanyIdFederalTaxDetailsRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | 7b1d0df1-6403-4a06-8768-c1dd7d24d27a | | `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1CompaniesCompanyIdFederalTaxDetailsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | 7b1d0df1-6403-4a06-8768-c1dd7d24d27a | | `federalTaxDetailsUpdate` | [FederalTaxDetailsUpdate](../../models/components/FederalTaxDetailsUpdate.md) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBody.md b/gusto_embedded/docs/models/operations/PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBody.md index 1193dc0ac..5f5ba18b3 100644 --- a/gusto_embedded/docs/models/operations/PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBody.md +++ b/gusto_embedded/docs/models/operations/PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBody.md @@ -3,6 +3,6 @@ ## Fields -| Field | Type | Required | Description | -| ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | -| `employeeUuids` | List\<*String*> | :heavy_minus_sign: | An array of employee UUIDs. If passed, only those employees payroll items will be prepared. | \ No newline at end of file +| Field | Type | Required | Description | +| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `employeeUuids` | List\<*String*> | :heavy_minus_sign: | The employees to prepare, identified by UUID. If omitted, every employee currently on the payroll is prepared.

    **Off-cycle payrolls that support multiple employees (`Bonus`, `Correction`, `Adhoc`):** passing `employee_uuids` also adds eligible employees who aren't yet on the payroll - a listed employee not on the payroll is added, while one already on it is simply prepared. A request may include up to 100 UUIDs, of which at most 25 may be employees not already on the payroll; an ineligible or unknown UUID, or more than 25 new employees, is rejected with a 422.

    **All other payrolls:** `employee_uuids` selects which of the payroll's existing employees to prepare; a UUID for an employee not on the payroll is rejected with a 422. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PutV1CompaniesCompanyUuidHolidayPayPolicyAddEmployees.md b/gusto_embedded/docs/models/operations/PutV1CompaniesCompanyUuidHolidayPayPolicyAddEmployees.md deleted file mode 100644 index 430b8afc1..000000000 --- a/gusto_embedded/docs/models/operations/PutV1CompaniesCompanyUuidHolidayPayPolicyAddEmployees.md +++ /dev/null @@ -1,8 +0,0 @@ -# PutV1CompaniesCompanyUuidHolidayPayPolicyAddEmployees - - -## Fields - -| Field | Type | Required | Description | -| ------------------- | ------------------- | ------------------- | ------------------- | -| `uuid` | *Optional\* | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PutV1CompaniesCompanyUuidHolidayPayPolicyAddRequestBody.md b/gusto_embedded/docs/models/operations/PutV1CompaniesCompanyUuidHolidayPayPolicyAddRequestBody.md index 53ce7df40..f66e3700d 100644 --- a/gusto_embedded/docs/models/operations/PutV1CompaniesCompanyUuidHolidayPayPolicyAddRequestBody.md +++ b/gusto_embedded/docs/models/operations/PutV1CompaniesCompanyUuidHolidayPayPolicyAddRequestBody.md @@ -6,4 +6,4 @@ | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `version` | *String* | :heavy_check_mark: | The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. | 56d00c178bc7393b2a206ed6a86afcb4 | -| `employees` | List\<[PutV1CompaniesCompanyUuidHolidayPayPolicyAddEmployees](../../models/operations/PutV1CompaniesCompanyUuidHolidayPayPolicyAddEmployees.md)> | :heavy_check_mark: | An array of employee objects, each containing an employee_uuid. | | \ No newline at end of file +| `employees` | List\<[Employees](../../models/operations/Employees.md)> | :heavy_check_mark: | An array of employee objects, each containing an employee_uuid. | | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.md b/gusto_embedded/docs/models/operations/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.md index 3b1edb2ee..355dc82ed 100644 --- a/gusto_embedded/docs/models/operations/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.md +++ b/gusto_embedded/docs/models/operations/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.md @@ -5,7 +5,7 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `signatoryUuid` | *String* | :heavy_check_mark: | The UUID of the signatory | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `signatoryUpdateRequest` | [SignatoryUpdateRequest](../../models/components/SignatoryUpdateRequest.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PutV1CompaniesCompanyUuidTaxRequirementsStateRequest.md b/gusto_embedded/docs/models/operations/PutV1CompaniesCompanyUuidTaxRequirementsStateRequest.md index 8e8c65dd6..59917c760 100644 --- a/gusto_embedded/docs/models/operations/PutV1CompaniesCompanyUuidTaxRequirementsStateRequest.md +++ b/gusto_embedded/docs/models/operations/PutV1CompaniesCompanyUuidTaxRequirementsStateRequest.md @@ -5,7 +5,7 @@ | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1CompaniesCompanyUuidTaxRequirementsStateHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | | `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | | `state` | *String* | :heavy_check_mark: | The two-letter state abbreviation | CA | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1CompaniesCompanyUuidTaxRequirementsStateHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | | `requestBody` | [PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody](../../models/operations/PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody.md) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PutV1CompaniesRequest.md b/gusto_embedded/docs/models/operations/PutV1CompaniesRequest.md index 92dfc34fd..159c8a953 100644 --- a/gusto_embedded/docs/models/operations/PutV1CompaniesRequest.md +++ b/gusto_embedded/docs/models/operations/PutV1CompaniesRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1CompaniesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | `requestBody` | [PutV1CompaniesRequestBody](../../models/operations/PutV1CompaniesRequestBody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PutV1CompanyIndustryRequest.md b/gusto_embedded/docs/models/operations/PutV1CompanyIndustryRequest.md index e9f2a2053..5982a88b7 100644 --- a/gusto_embedded/docs/models/operations/PutV1CompanyIndustryRequest.md +++ b/gusto_embedded/docs/models/operations/PutV1CompanyIndustryRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1CompanyIndustryHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | `companyIndustrySelectionRequiredBody` | [CompanyIndustrySelectionRequiredBody](../../models/components/CompanyIndustrySelectionRequiredBody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest.md b/gusto_embedded/docs/models/operations/PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest.md index 101d5cead..ff81244f2 100644 --- a/gusto_embedded/docs/models/operations/PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest.md +++ b/gusto_embedded/docs/models/operations/PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `contractorPaymentGroupUuid` | *String* | :heavy_check_mark: | The UUID of the contractor payment group | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorPaymentGroupUuid` | *String* | :heavy_check_mark: | The UUID of the contractor payment group | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PutV1ContractorsContractorIdPaymentMethodRequestBody.md b/gusto_embedded/docs/models/operations/PutV1ContractorsContractorIdPaymentMethodRequestBody.md index 2ec715239..ba3e7c7a4 100644 --- a/gusto_embedded/docs/models/operations/PutV1ContractorsContractorIdPaymentMethodRequestBody.md +++ b/gusto_embedded/docs/models/operations/PutV1ContractorsContractorIdPaymentMethodRequestBody.md @@ -6,4 +6,4 @@ | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `version` | *String* | :heavy_check_mark: | The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. | 63859768485e218ccf8a449bb60f14ed | -| `type` | [PutV1ContractorsContractorIdPaymentMethodType](../../models/operations/PutV1ContractorsContractorIdPaymentMethodType.md) | :heavy_check_mark: | The payment method type. If type is Direct Deposit, the contractor is required to have a bank account. See [Bank account endpoint](./post-v1-contractors-contractor_uuid-bank_accounts). | | \ No newline at end of file +| `type` | [Type](../../models/operations/Type.md) | :heavy_check_mark: | The payment method type. If type is Direct Deposit, the contractor is required to have a bank account. See [Bank account endpoint](./post-v1-contractors-contractor_uuid-bank_accounts). | | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PutV1ContractorsContractorIdPaymentMethodType.md b/gusto_embedded/docs/models/operations/PutV1ContractorsContractorIdPaymentMethodType.md deleted file mode 100644 index bb3e30e80..000000000 --- a/gusto_embedded/docs/models/operations/PutV1ContractorsContractorIdPaymentMethodType.md +++ /dev/null @@ -1,19 +0,0 @@ -# PutV1ContractorsContractorIdPaymentMethodType - -The payment method type. If type is Direct Deposit, the contractor is required to have a bank account. See [Bank account endpoint](./post-v1-contractors-contractor_uuid-bank_accounts). - -## Example Usage - -```java -import com.gusto.embedded_api.models.operations.PutV1ContractorsContractorIdPaymentMethodType; - -PutV1ContractorsContractorIdPaymentMethodType value = PutV1ContractorsContractorIdPaymentMethodType.DIRECT_DEPOSIT; -``` - - -## Values - -| Name | Value | -| ---------------- | ---------------- | -| `DIRECT_DEPOSIT` | Direct Deposit | -| `CHECK` | Check | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PutV1EmployeesEmployeeIdPaymentMethodRequestBody.md b/gusto_embedded/docs/models/operations/PutV1EmployeesEmployeeIdPaymentMethodRequestBody.md index 8bf62c46f..6a195feca 100644 --- a/gusto_embedded/docs/models/operations/PutV1EmployeesEmployeeIdPaymentMethodRequestBody.md +++ b/gusto_embedded/docs/models/operations/PutV1EmployeesEmployeeIdPaymentMethodRequestBody.md @@ -6,6 +6,6 @@ | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `version` | *String* | :heavy_check_mark: | The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/versioning#object-layer) for information on how to use this field. | 63859768485e218ccf8a449bb60f14ed | -| `type` | [Type](../../models/operations/Type.md) | :heavy_check_mark: | The payment method type. If type is Check, split_by and splits do not need to be populated. If type is Direct Deposit, split_by and splits are required. | | +| `type` | [PutV1EmployeesEmployeeIdPaymentMethodType](../../models/operations/PutV1EmployeesEmployeeIdPaymentMethodType.md) | :heavy_check_mark: | The payment method type. If type is Check, split_by and splits do not need to be populated. If type is Direct Deposit, split_by and splits are required. | | | `splitBy` | [JsonNullable\](../../models/operations/SplitBy.md) | :heavy_minus_sign: | How the payment will be split. If Percentage, split amounts must add up to exactly 100. If Amount, values are in cents and the last split amount must be null to capture the remainder. | | | `splits` | List\<[Splits](../../models/operations/Splits.md)> | :heavy_minus_sign: | Array of payment splits. Required when type is Direct Deposit. | | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PutV1EmployeesEmployeeIdPaymentMethodType.md b/gusto_embedded/docs/models/operations/PutV1EmployeesEmployeeIdPaymentMethodType.md new file mode 100644 index 000000000..bb61c0fdf --- /dev/null +++ b/gusto_embedded/docs/models/operations/PutV1EmployeesEmployeeIdPaymentMethodType.md @@ -0,0 +1,19 @@ +# PutV1EmployeesEmployeeIdPaymentMethodType + +The payment method type. If type is Check, split_by and splits do not need to be populated. If type is Direct Deposit, split_by and splits are required. + +## Example Usage + +```java +import com.gusto.embedded_api.models.operations.PutV1EmployeesEmployeeIdPaymentMethodType; + +PutV1EmployeesEmployeeIdPaymentMethodType value = PutV1EmployeesEmployeeIdPaymentMethodType.CHECK; +``` + + +## Values + +| Name | Value | +| ---------------- | ---------------- | +| `CHECK` | Check | +| `DIRECT_DEPOSIT` | Direct Deposit | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PutV1JobsJobIdRequest.md b/gusto_embedded/docs/models/operations/PutV1JobsJobIdRequest.md index 5693ace76..e592dadba 100644 --- a/gusto_embedded/docs/models/operations/PutV1JobsJobIdRequest.md +++ b/gusto_embedded/docs/models/operations/PutV1JobsJobIdRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `jobId` | *String* | :heavy_check_mark: | The UUID of the job | | `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1JobsJobIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `jobId` | *String* | :heavy_check_mark: | The UUID of the job | | `jobsUpdateRequestBody` | [JobsUpdateRequestBody](../../models/components/JobsUpdateRequestBody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PutV1JobsJobIdResponse.md b/gusto_embedded/docs/models/operations/PutV1JobsJobIdResponse.md index 382e72363..bb4b0f4e4 100644 --- a/gusto_embedded/docs/models/operations/PutV1JobsJobIdResponse.md +++ b/gusto_embedded/docs/models/operations/PutV1JobsJobIdResponse.md @@ -8,4 +8,4 @@ | `contentType` | *String* | :heavy_check_mark: | HTTP response content type for this operation | | `statusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation | | `rawResponse` | [HttpResponse\](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | -| `job` | [Optional\](../../models/components/Job.md) | :heavy_minus_sign: | successful | \ No newline at end of file +| `job` | [Optional\](../../models/components/Job.md) | :heavy_minus_sign: | successful blank title on a non-primary active job | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion.md b/gusto_embedded/docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion.md new file mode 100644 index 000000000..63162385f --- /dev/null +++ b/gusto_embedded/docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion.md @@ -0,0 +1,18 @@ +# PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion + +Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + +## Example Usage + +```java +import com.gusto.embedded_api.models.operations.PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion; + +PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion value = PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15; +``` + + +## Values + +| Name | Value | +| ---------------------------------------------- | ---------------------------------------------- | +| `TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15` | 2025-06-15 | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest.md b/gusto_embedded/docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest.md new file mode 100644 index 000000000..45b4b9023 --- /dev/null +++ b/gusto_embedded/docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest.md @@ -0,0 +1,9 @@ +# PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse.md b/gusto_embedded/docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse.md new file mode 100644 index 000000000..1c7129d6e --- /dev/null +++ b/gusto_embedded/docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse.md @@ -0,0 +1,11 @@ +# PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- | +| `contentType` | *String* | :heavy_check_mark: | HTTP response content type for this operation | +| `statusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation | +| `rawResponse` | [HttpResponse\](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | +| `partnerManagedCompanyDisassociateResponse` | [Optional\](../../models/components/PartnerManagedCompanyDisassociateResponse.md) | :heavy_minus_sign: | OK | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity.md b/gusto_embedded/docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity.md new file mode 100644 index 000000000..d4704fc62 --- /dev/null +++ b/gusto_embedded/docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity.md @@ -0,0 +1,8 @@ +# PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity + + +## Fields + +| Field | Type | Required | Description | +| ------------------ | ------------------ | ------------------ | ------------------ | +| `systemAccessAuth` | *String* | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest.md b/gusto_embedded/docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest.md index 7a3caec0d..b5bf48b8d 100644 --- a/gusto_embedded/docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest.md +++ b/gusto_embedded/docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1PartnerManagedCompaniesCompanyUuidMigrateHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `partnerManagedCompanyMigrateRequest` | [PartnerManagedCompanyMigrateRequest](../../models/components/PartnerManagedCompanyMigrateRequest.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesEmployees.md b/gusto_embedded/docs/models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesEmployees.md new file mode 100644 index 000000000..8a23a01fe --- /dev/null +++ b/gusto_embedded/docs/models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesEmployees.md @@ -0,0 +1,9 @@ +# PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesEmployees + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------- | ------------------------------------- | ------------------------------------- | ------------------------------------- | +| `uuid` | *String* | :heavy_check_mark: | The UUID of the employee | +| `balance` | *JsonNullable\* | :heavy_minus_sign: | The starting balance for the employee | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesRequestBody.md b/gusto_embedded/docs/models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesRequestBody.md index 18e2c7ae0..e0c34a4ea 100644 --- a/gusto_embedded/docs/models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesRequestBody.md +++ b/gusto_embedded/docs/models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesRequestBody.md @@ -3,6 +3,6 @@ ## Fields -| Field | Type | Required | Description | -| -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -| `employees` | List\<[Employees](../../models/operations/Employees.md)> | :heavy_check_mark: | N/A | \ No newline at end of file +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `employees` | List\<[PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesEmployees](../../models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesEmployees.md)> | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PutV1VerifyWebhookSubscriptionUuidRequest.md b/gusto_embedded/docs/models/operations/PutV1VerifyWebhookSubscriptionUuidRequest.md index 6e933d7e9..4c3b9b24b 100644 --- a/gusto_embedded/docs/models/operations/PutV1VerifyWebhookSubscriptionUuidRequest.md +++ b/gusto_embedded/docs/models/operations/PutV1VerifyWebhookSubscriptionUuidRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `webhookSubscriptionUuid` | *String* | :heavy_check_mark: | The webhook subscription UUID. | | `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1VerifyWebhookSubscriptionUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `webhookSubscriptionUuid` | *String* | :heavy_check_mark: | The webhook subscription UUID. | | `requestBody` | [PutV1VerifyWebhookSubscriptionUuidRequestBody](../../models/operations/PutV1VerifyWebhookSubscriptionUuidRequestBody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PutV1WebhookSubscriptionUuidRequest.md b/gusto_embedded/docs/models/operations/PutV1WebhookSubscriptionUuidRequest.md index b9f66c8ca..7ce624932 100644 --- a/gusto_embedded/docs/models/operations/PutV1WebhookSubscriptionUuidRequest.md +++ b/gusto_embedded/docs/models/operations/PutV1WebhookSubscriptionUuidRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `webhookSubscriptionUuid` | *String* | :heavy_check_mark: | The webhook subscription UUID. | | `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1WebhookSubscriptionUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `webhookSubscriptionUuid` | *String* | :heavy_check_mark: | The webhook subscription UUID. | | `requestBody` | [PutV1WebhookSubscriptionUuidRequestBody](../../models/operations/PutV1WebhookSubscriptionUuidRequestBody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PutV1WebhookSubscriptionUuidSubscriptionTypes.md b/gusto_embedded/docs/models/operations/PutV1WebhookSubscriptionUuidSubscriptionTypes.md index a890314be..184c73a56 100644 --- a/gusto_embedded/docs/models/operations/PutV1WebhookSubscriptionUuidSubscriptionTypes.md +++ b/gusto_embedded/docs/models/operations/PutV1WebhookSubscriptionUuidSubscriptionTypes.md @@ -29,4 +29,5 @@ PutV1WebhookSubscriptionUuidSubscriptionTypes value = PutV1WebhookSubscriptionUu | `PAYROLL_SYNC` | PayrollSync | | `PAY_SCHEDULE` | PaySchedule | | `PEOPLE_BATCH` | PeopleBatch | -| `SIGNATORY` | Signatory | \ No newline at end of file +| `SIGNATORY` | Signatory | +| `TIME_OFF_REQUEST` | TimeOffRequest | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PutV1WorkAddressesWorkAddressUuidRequest.md b/gusto_embedded/docs/models/operations/PutV1WorkAddressesWorkAddressUuidRequest.md index 7a7d25b31..9a0ff4331 100644 --- a/gusto_embedded/docs/models/operations/PutV1WorkAddressesWorkAddressUuidRequest.md +++ b/gusto_embedded/docs/models/operations/PutV1WorkAddressesWorkAddressUuidRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `workAddressUuid` | *String* | :heavy_check_mark: | The UUID of the work address | | `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1WorkAddressesWorkAddressUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `workAddressUuid` | *String* | :heavy_check_mark: | The UUID of the work address | | `requestBody` | [PutV1WorkAddressesWorkAddressUuidRequestBody](../../models/operations/PutV1WorkAddressesWorkAddressUuidRequestBody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/PutWireInRequestsWireInRequestUuidRequest.md b/gusto_embedded/docs/models/operations/PutWireInRequestsWireInRequestUuidRequest.md index 35548bea3..13faf2ee8 100644 --- a/gusto_embedded/docs/models/operations/PutWireInRequestsWireInRequestUuidRequest.md +++ b/gusto_embedded/docs/models/operations/PutWireInRequestsWireInRequestUuidRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `wireInRequestUuid` | *String* | :heavy_check_mark: | The UUID of the Wire In Request | | `xGustoAPIVersion` | [Optional\](../../models/operations/PutWireInRequestsWireInRequestUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `wireInRequestUuid` | *String* | :heavy_check_mark: | The UUID of the Wire In Request | | `wireInRequestUpdateRequestBody` | [WireInRequestUpdateRequestBody](../../models/components/WireInRequestUpdateRequestBody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/QueryParamInclude.md b/gusto_embedded/docs/models/operations/QueryParamInclude.md index c5967c5e7..40f1d12fa 100644 --- a/gusto_embedded/docs/models/operations/QueryParamInclude.md +++ b/gusto_embedded/docs/models/operations/QueryParamInclude.md @@ -1,21 +1,19 @@ # QueryParamInclude +Available options: +- all_benefits: Include all effective dated benefits for each employee instead of only the current benefits. + ## Example Usage ```java import com.gusto.embedded_api.models.operations.QueryParamInclude; -QueryParamInclude value = QueryParamInclude.ALL_COMPENSATIONS; +QueryParamInclude value = QueryParamInclude.ALL_BENEFITS; ``` ## Values -| Name | Value | -| ---------------------- | ---------------------- | -| `ALL_COMPENSATIONS` | all_compensations | -| `ALL_HOME_ADDRESSES` | all_home_addresses | -| `COMPANY_NAME` | company_name | -| `CURRENT_HOME_ADDRESS` | current_home_address | -| `CUSTOM_FIELDS` | custom_fields | -| `PORTAL_INVITATIONS` | portal_invitations | \ No newline at end of file +| Name | Value | +| -------------- | -------------- | +| `ALL_BENEFITS` | all_benefits | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/SubscriptionTypes.md b/gusto_embedded/docs/models/operations/SubscriptionTypes.md index c0a50d5d7..c87957b5b 100644 --- a/gusto_embedded/docs/models/operations/SubscriptionTypes.md +++ b/gusto_embedded/docs/models/operations/SubscriptionTypes.md @@ -29,4 +29,5 @@ SubscriptionTypes value = SubscriptionTypes.BANK_ACCOUNT; | `PAYROLL_SYNC` | PayrollSync | | `PAY_SCHEDULE` | PaySchedule | | `PEOPLE_BATCH` | PeopleBatch | -| `SIGNATORY` | Signatory | \ No newline at end of file +| `SIGNATORY` | Signatory | +| `TIME_OFF_REQUEST` | TimeOffRequest | \ No newline at end of file diff --git a/gusto_embedded/docs/models/operations/Type.md b/gusto_embedded/docs/models/operations/Type.md index bde57d6cb..8f2d169fa 100644 --- a/gusto_embedded/docs/models/operations/Type.md +++ b/gusto_embedded/docs/models/operations/Type.md @@ -1,13 +1,13 @@ # Type -The payment method type. If type is Check, split_by and splits do not need to be populated. If type is Direct Deposit, split_by and splits are required. +The payment method type. If type is Direct Deposit, the contractor is required to have a bank account. See [Bank account endpoint](./post-v1-contractors-contractor_uuid-bank_accounts). ## Example Usage ```java import com.gusto.embedded_api.models.operations.Type; -Type value = Type.CHECK; +Type value = Type.DIRECT_DEPOSIT; ``` @@ -15,5 +15,5 @@ Type value = Type.CHECK; | Name | Value | | ---------------- | ---------------- | -| `CHECK` | Check | -| `DIRECT_DEPOSIT` | Direct Deposit | \ No newline at end of file +| `DIRECT_DEPOSIT` | Direct Deposit | +| `CHECK` | Check | \ No newline at end of file diff --git a/gusto_embedded/docs/sdks/companies/README.md b/gusto_embedded/docs/sdks/companies/README.md index fb12888c2..c88266a31 100644 --- a/gusto_embedded/docs/sdks/companies/README.md +++ b/gusto_embedded/docs/sdks/companies/README.md @@ -4,204 +4,233 @@ ### Available Operations -* [createPartnerManaged](#createpartnermanaged) - Create a partner managed company +* [listAdmins](#listadmins) - Get all the admins at a company +* [createAdmin](#createadmin) - Create an admin for the company * [get](#get) - Get a company * [update](#update) - Update a company +* [getCustomFields](#getcustomfields) - Get the custom fields of a company +* [getOnboardingStatus](#getonboardingstatus) - Get company onboarding status +* [finishOnboarding](#finishonboarding) - Finish company onboarding +* [putV1PartnerManagedCompaniesCompanyUuidDisassociate](#putv1partnermanagedcompaniescompanyuuiddisassociate) - Disassociate a partner managed company * [migrate](#migrate) - Migrate company to embedded payroll +* [createPartnerManaged](#createpartnermanaged) - Create a partner managed company * [getV1PartnerManagedCompaniesCompanyUuidMigrationReadiness](#getv1partnermanagedcompaniescompanyuuidmigrationreadiness) - Check company migration readiness * [acceptTermsOfService](#accepttermsofservice) - Accept terms of service for a company user * [retrieveTermsOfService](#retrievetermsofservice) - Retrieve terms of service status for a company user -* [listAdmins](#listadmins) - Get all the admins at a company -* [createAdmin](#createadmin) - Create an admin for the company -* [getOnboardingStatus](#getonboardingstatus) - Get company onboarding status -* [finishOnboarding](#finishonboarding) - Finish company onboarding -* [getCustomFields](#getcustomfields) - Get the custom fields of a company -## createPartnerManaged +## listAdmins -Create a partner managed company. When you successfully call the API, it does the following: -* Creates a new company in Gusto -* Creates a new user using the provided email if the user does not already exist. -* Makes the user the primary payroll administrator of the new company. +Returns a list of all the admins at a company -In response, you will receive oauth access tokens for the created company. +scope: `company_admin:read` -IMPORTANT: the returned access and refresh tokens are reserved for this company only. They cannot be used to access other companies AND previously granted tokens cannot be used to access this company. +### Example Usage -📘 System Access Authentication + +```java +package hello.world; -This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) +import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdAdminsResponse; +import com.gusto.embedded_api.models.operations.HeaderXGustoAPIVersion; +import java.lang.Exception; -scope: `partner_managed_companies:manage` +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + GetV1CompaniesCompanyIdAdminsResponse res = sdk.companies().listAdmins() + .xGustoAPIVersion(HeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyId("") + .call(); + + if (res.admins().isPresent()) { + System.out.println(res.admins().get()); + } + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/HeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | +| `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | +| `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | + +### Response + +**[GetV1CompaniesCompanyIdAdminsResponse](../../models/operations/GetV1CompaniesCompanyIdAdminsResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | + +## createAdmin + +Creates a new admin for a company. +If the email matches an existing user, this will create an admin account for the current user. Otherwise, this will create a new user. + +scope: `company_admin:write` ### Example Usage: Basic - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.*; +import com.gusto.embedded_api.models.components.AdminCreateRequest; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.*; +import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyIdAdminsResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws UnprocessableEntityError, Exception { + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostV1PartnerManagedCompaniesResponse res = sdk.companies().createPartnerManaged() - .security(PostV1PartnerManagedCompaniesSecurity.builder() - .systemAccessAuth(System.getenv().getOrDefault("SYSTEM_ACCESS_AUTH", "")) - .build()) - .xGustoAPIVersion(PostV1PartnerManagedCompaniesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .partnerManagedCompanyCreateRequest(PartnerManagedCompanyCreateRequest.builder() - .user(User.builder() - .firstName("Randi") - .lastName("Schaden") - .email("Geovanni_Mertz12@yahoo.com") - .build()) - .company(PartnerManagedCompanyCreateRequestCompany.builder() - .name("") - .build()) + PostV1CompaniesCompanyIdAdminsResponse res = sdk.companies().createAdmin() + .xGustoAPIVersion(PostV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyId("") + .adminCreateRequest(AdminCreateRequest.builder() + .firstName("Hilbert") + .lastName("Hilll") + .email("Dejah.Pagac14@gmail.com") .build()) .call(); - if (res.partnerManagedCompany().isPresent()) { - System.out.println(res.partnerManagedCompany().get()); + if (res.admin().isPresent()) { + System.out.println(res.admin().get()); } } } ``` ### Example Usage: Example - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.*; +import com.gusto.embedded_api.models.components.AdminCreateRequest; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.*; +import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyIdAdminsResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws UnprocessableEntityError, Exception { + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostV1PartnerManagedCompaniesResponse res = sdk.companies().createPartnerManaged() - .security(PostV1PartnerManagedCompaniesSecurity.builder() - .systemAccessAuth(System.getenv().getOrDefault("SYSTEM_ACCESS_AUTH", "")) - .build()) - .xGustoAPIVersion(PostV1PartnerManagedCompaniesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .partnerManagedCompanyCreateRequest(PartnerManagedCompanyCreateRequest.builder() - .user(User.builder() - .firstName("Frank") - .lastName("Ocean") - .email("frank@example.com") - .phone("2345558899") - .build()) - .company(PartnerManagedCompanyCreateRequestCompany.builder() - .name("Frank's Ocean, LLC") - .tradeName("Frank’s Ocean") - .ein("123456789") - .contractorOnly(false) - .build()) + PostV1CompaniesCompanyIdAdminsResponse res = sdk.companies().createAdmin() + .xGustoAPIVersion(PostV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyId("") + .adminCreateRequest(AdminCreateRequest.builder() + .firstName("John") + .lastName("Smith") + .email("jsmith99@gmail.com") .build()) .call(); - if (res.partnerManagedCompany().isPresent()) { - System.out.println(res.partnerManagedCompany().get()); + if (res.admin().isPresent()) { + System.out.println(res.admin().get()); } } } ``` ### Example Usage: Nested - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.*; +import com.gusto.embedded_api.models.components.AdminCreateRequest; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.*; +import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyIdAdminsResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws UnprocessableEntityError, Exception { + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostV1PartnerManagedCompaniesResponse res = sdk.companies().createPartnerManaged() - .security(PostV1PartnerManagedCompaniesSecurity.builder() - .systemAccessAuth(System.getenv().getOrDefault("SYSTEM_ACCESS_AUTH", "")) - .build()) - .xGustoAPIVersion(PostV1PartnerManagedCompaniesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .partnerManagedCompanyCreateRequest(PartnerManagedCompanyCreateRequest.builder() - .user(User.builder() - .firstName("Randi") - .lastName("Schaden") - .email("Geovanni_Mertz12@yahoo.com") - .build()) - .company(PartnerManagedCompanyCreateRequestCompany.builder() - .name("") - .build()) + PostV1CompaniesCompanyIdAdminsResponse res = sdk.companies().createAdmin() + .xGustoAPIVersion(PostV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyId("") + .adminCreateRequest(AdminCreateRequest.builder() + .firstName("Hilbert") + .lastName("Hilll") + .email("Dejah.Pagac14@gmail.com") .build()) .call(); - if (res.partnerManagedCompany().isPresent()) { - System.out.println(res.partnerManagedCompany().get()); + if (res.admin().isPresent()) { + System.out.println(res.admin().get()); } } } ``` ### Example Usage: Resource - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.*; +import com.gusto.embedded_api.models.components.AdminCreateRequest; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.*; +import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyIdAdminsResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws UnprocessableEntityError, Exception { + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostV1PartnerManagedCompaniesResponse res = sdk.companies().createPartnerManaged() - .security(PostV1PartnerManagedCompaniesSecurity.builder() - .systemAccessAuth(System.getenv().getOrDefault("SYSTEM_ACCESS_AUTH", "")) - .build()) - .xGustoAPIVersion(PostV1PartnerManagedCompaniesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .partnerManagedCompanyCreateRequest(PartnerManagedCompanyCreateRequest.builder() - .user(User.builder() - .firstName("Randi") - .lastName("Schaden") - .email("Geovanni_Mertz12@yahoo.com") - .build()) - .company(PartnerManagedCompanyCreateRequestCompany.builder() - .name("") - .build()) + PostV1CompaniesCompanyIdAdminsResponse res = sdk.companies().createAdmin() + .xGustoAPIVersion(PostV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyId("") + .adminCreateRequest(AdminCreateRequest.builder() + .firstName("Hilbert") + .lastName("Hilll") + .email("Dejah.Pagac14@gmail.com") .build()) .call(); - if (res.partnerManagedCompany().isPresent()) { - System.out.println(res.partnerManagedCompany().get()); + if (res.admin().isPresent()) { + System.out.println(res.admin().get()); } } } @@ -211,18 +240,19 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `security` | [com.gusto.embedded_api.models.operations.PostV1PartnerManagedCompaniesSecurity](../../models/operations/PostV1PartnerManagedCompaniesSecurity.md) | :heavy_check_mark: | The security requirements to use for the request. | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1PartnerManagedCompaniesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `partnerManagedCompanyCreateRequest` | [PartnerManagedCompanyCreateRequest](../../models/components/PartnerManagedCompanyCreateRequest.md) | :heavy_check_mark: | N/A | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | +| `adminCreateRequest` | [AdminCreateRequest](../../models/components/AdminCreateRequest.md) | :heavy_check_mark: | N/A | ### Response -**[PostV1PartnerManagedCompaniesResponse](../../models/operations/PostV1PartnerManagedCompaniesResponse.md)** +**[PostV1CompaniesCompanyIdAdminsResponse](../../models/operations/PostV1CompaniesCompanyIdAdminsResponse.md)** ### Errors | Error Type | Status Code | Content Type | | -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | @@ -257,8 +287,8 @@ public class Application { .build(); GetV1CompaniesResponse res = sdk.companies().get() - .companyId("") .xGustoAPIVersion(GetV1CompaniesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyId("") .call(); if (res.company().isPresent()) { @@ -272,8 +302,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | ### Response @@ -313,8 +343,8 @@ public class Application { .build(); PutV1CompaniesResponse res = sdk.companies().update() - .companyId("") .xGustoAPIVersion(PutV1CompaniesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyId("") .requestBody(PutV1CompaniesRequestBody.builder() .contractorOnly(true) .build()) @@ -347,8 +377,8 @@ public class Application { .build(); PutV1CompaniesResponse res = sdk.companies().update() - .companyId("") .xGustoAPIVersion(PutV1CompaniesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyId("") .requestBody(PutV1CompaniesRequestBody.builder() .contractorOnly(false) .build()) @@ -381,8 +411,8 @@ public class Application { .build(); PutV1CompaniesResponse res = sdk.companies().update() - .companyId("") .xGustoAPIVersion(PutV1CompaniesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyId("") .requestBody(PutV1CompaniesRequestBody.builder() .contractorOnly(true) .build()) @@ -415,8 +445,8 @@ public class Application { .build(); PutV1CompaniesResponse res = sdk.companies().update() - .companyId("") .xGustoAPIVersion(PutV1CompaniesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyId("") .requestBody(PutV1CompaniesRequestBody.builder() .contractorOnly(true) .build()) @@ -433,8 +463,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1CompaniesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | `requestBody` | [PutV1CompaniesRequestBody](../../models/operations/PutV1CompaniesRequestBody.md) | :heavy_check_mark: | N/A | ### Response @@ -449,108 +479,154 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## migrate +## getCustomFields -Migrate an existing Gusto customer to your embedded payroll product. +Returns a list of the custom fields of the company. Useful when you need to know the schema of custom fields for an entire company. -### Prerequisites -Before calling this endpoint: -1. The customer must connect their Gusto account to your application using [OAuth2](doc:oauth2) -2. The customer must view and [accept the Embedded Payroll Terms of Service](ref:post-partner-managed-companies-company_uuid-accept_terms_of_service) - -### Related guides -- [Migrate an existing company](doc:migrate-existing-company) - -scope: `partner_managed_companies:write` +scope: `companies:read` -### Example Usage: Basic +### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.PartnerManagedCompanyMigrateRequest; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PutV1PartnerManagedCompaniesCompanyUuidMigrateHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PutV1PartnerManagedCompaniesCompanyUuidMigrateResponse; +import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdCustomFieldsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdCustomFieldsResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + public static void main(String[] args) throws NotFoundErrorObject, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1PartnerManagedCompaniesCompanyUuidMigrateResponse res = sdk.companies().migrate() - .companyUuid("") - .xGustoAPIVersion(PutV1PartnerManagedCompaniesCompanyUuidMigrateHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .partnerManagedCompanyMigrateRequest(PartnerManagedCompanyMigrateRequest.builder() - .email("Janice18@gmail.com") - .ipAddress("75.249.55.210") - .externalUserId("") - .build()) + GetV1CompaniesCompanyIdCustomFieldsResponse res = sdk.companies().getCustomFields() + .xGustoAPIVersion(GetV1CompaniesCompanyIdCustomFieldsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyId("") .call(); - if (res.partnerManagedCompanyMigrateResponse().isPresent()) { - System.out.println(res.partnerManagedCompanyMigrateResponse().get()); + if (res.companyCustomFieldList().isPresent()) { + System.out.println(res.companyCustomFieldList().get()); } } } ``` -### Example Usage: Nested - +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdCustomFieldsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | +| `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | +| `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | + +### Response + +**[GetV1CompaniesCompanyIdCustomFieldsResponse](../../models/operations/GetV1CompaniesCompanyIdCustomFieldsResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | + +## getOnboardingStatus + +Retrieves a company's onboarding status, including whether onboarding is complete and the list of +required onboarding steps with their respective completion state. + +scope: `company_onboarding_status:read` + +### Example Usage + + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.PartnerManagedCompanyMigrateRequest; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PutV1PartnerManagedCompaniesCompanyUuidMigrateHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PutV1PartnerManagedCompaniesCompanyUuidMigrateResponse; +import com.gusto.embedded_api.models.operations.GetV1CompanyOnboardingStatusHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetV1CompanyOnboardingStatusResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + public static void main(String[] args) throws NotFoundErrorObject, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1PartnerManagedCompaniesCompanyUuidMigrateResponse res = sdk.companies().migrate() + GetV1CompanyOnboardingStatusResponse res = sdk.companies().getOnboardingStatus() + .xGustoAPIVersion(GetV1CompanyOnboardingStatusHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .companyUuid("") - .xGustoAPIVersion(PutV1PartnerManagedCompaniesCompanyUuidMigrateHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .partnerManagedCompanyMigrateRequest(PartnerManagedCompanyMigrateRequest.builder() - .email("Janice18@gmail.com") - .ipAddress("75.249.55.210") - .externalUserId("") - .build()) + .additionalSteps("external_payroll") .call(); - if (res.partnerManagedCompanyMigrateResponse().isPresent()) { - System.out.println(res.partnerManagedCompanyMigrateResponse().get()); + if (res.companyOnboardingStatus().isPresent()) { + System.out.println(res.companyOnboardingStatus().get()); } } } ``` -### Example Usage: Resource - +### Parameters + +| Parameter | Type | Required | Description | Example | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompanyOnboardingStatusHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | 7b1d0df1-6403-4a06-8768-c1dd7d24d27a | +| `additionalSteps` | *Optional\* | :heavy_minus_sign: | Comma-delimited string of additional onboarding steps to include. Currently only supports the value "external_payroll". | external_payroll | + +### Response + +**[GetV1CompanyOnboardingStatusResponse](../../models/operations/GetV1CompanyOnboardingStatusResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | + +## finishOnboarding + +Finalize a company's onboarding process. + +### Approve a company in demo + +After a company is finished onboarding, Gusto requires an additional step to review and approve that company. +The company onboarding status is "onboarding_completed": false, until the API call is made to finish company +onboarding. In production environments, this step is required for risk-analysis purposes. + +We provide the endpoint `PUT '/v1/companies/{company_uuid}/approve'` to facilitate company approvals in the demo environment. + +```shell +PUT '/v1/companies/89771af8-b964-472e-8064-554dfbcb56d9/approve' + +# Response: Company object, with company_status: 'Approved' +``` + +scope: `companies:write` + +### Example Usage + + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.PartnerManagedCompanyMigrateRequest; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PutV1PartnerManagedCompaniesCompanyUuidMigrateHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PutV1PartnerManagedCompaniesCompanyUuidMigrateResponse; +import com.gusto.embedded_api.models.operations.GetV1CompanyFinishOnboardingHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetV1CompanyFinishOnboardingResponse; import java.lang.Exception; public class Application { @@ -561,18 +637,13 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1PartnerManagedCompaniesCompanyUuidMigrateResponse res = sdk.companies().migrate() + GetV1CompanyFinishOnboardingResponse res = sdk.companies().finishOnboarding() + .xGustoAPIVersion(GetV1CompanyFinishOnboardingHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .companyUuid("") - .xGustoAPIVersion(PutV1PartnerManagedCompaniesCompanyUuidMigrateHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .partnerManagedCompanyMigrateRequest(PartnerManagedCompanyMigrateRequest.builder() - .email("Janice18@gmail.com") - .ipAddress("75.249.55.210") - .externalUserId("") - .build()) .call(); - if (res.partnerManagedCompanyMigrateResponse().isPresent()) { - System.out.println(res.partnerManagedCompanyMigrateResponse().get()); + if (res.companyOnboardingStatus().isPresent()) { + System.out.println(res.companyOnboardingStatus().get()); } } } @@ -580,15 +651,14 @@ public class Application { ### Parameters -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1PartnerManagedCompaniesCompanyUuidMigrateHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `partnerManagedCompanyMigrateRequest` | [PartnerManagedCompanyMigrateRequest](../../models/components/PartnerManagedCompanyMigrateRequest.md) | :heavy_check_mark: | N/A | +| Parameter | Type | Required | Description | Example | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompanyFinishOnboardingHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | 7b1d0df1-6403-4a06-8768-c1dd7d24d27a | ### Response -**[PutV1PartnerManagedCompaniesCompanyUuidMigrateResponse](../../models/operations/PutV1PartnerManagedCompaniesCompanyUuidMigrateResponse.md)** +**[GetV1CompanyFinishOnboardingResponse](../../models/operations/GetV1CompanyFinishOnboardingResponse.md)** ### Errors @@ -598,39 +668,45 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## getV1PartnerManagedCompaniesCompanyUuidMigrationReadiness +## putV1PartnerManagedCompaniesCompanyUuidDisassociate -Check if an existing Gusto customer is ready to be migrated to embedded payroll. This endpoint returns blockers and warnings associated with migrating the company and is recommended to be called before attempting to migrate a company. +Disassociate a company from your embedded payroll product, reversing an earlier association or migration. You can only disassociate a company that is currently associated with your application. -scope: `partner_managed_companies:read` +📘 System Access Authentication + +This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + +scope: `partner_managed_companies:disassociate` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.operations.GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessResponse; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.operations.*; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, Exception { + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() - .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessResponse res = sdk.companies().getV1PartnerManagedCompaniesCompanyUuidMigrationReadiness() + PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse res = sdk.companies().putV1PartnerManagedCompaniesCompanyUuidDisassociate() + .security(PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity.builder() + .systemAccessAuth(System.getenv().getOrDefault("SYSTEM_ACCESS_AUTH", "")) + .build()) + .xGustoAPIVersion(PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .companyUuid("") - .xGustoAPIVersion(GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .call(); - if (res.partnerManagedCompanyMigrationReadinessResponse().isPresent()) { - System.out.println(res.partnerManagedCompanyMigrationReadinessResponse().get()); + if (res.partnerManagedCompanyDisassociateResponse().isPresent()) { + System.out.println(res.partnerManagedCompanyDisassociateResponse().get()); } } } @@ -640,39 +716,48 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `security` | [com.gusto.embedded_api.models.operations.PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity](../../models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity.md) | :heavy_check_mark: | The security requirements to use for the request. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | ### Response -**[GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessResponse](../../models/operations/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessResponse.md)** +**[PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse](../../models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| --------------------------------- | --------------------------------- | --------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | -## acceptTermsOfService +## migrate -Accept the Gusto Embedded Payroll's [Terms of Service](https://flows.gusto.com/terms). -The user must have a role in the company in order to accept the Terms of Service. +Migrate an existing Gusto customer to your embedded payroll product. -scope: `terms_of_services:write` +### Prerequisites +Before calling this endpoint: +1. The customer must connect their Gusto account to your application using [OAuth2](doc:oauth2) +2. The customer must view and [accept the Embedded Payroll Terms of Service](ref:post-partner-managed-companies-company_uuid-accept_terms_of_service) + +### Related guides +- [Migrate an existing company](doc:migrate-existing-company) + +scope: `partner_managed_companies:write` ### Example Usage: Basic - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.PartnerManagedCompanyAcceptTermsOfServiceRequest; +import com.gusto.embedded_api.models.components.PartnerManagedCompanyMigrateRequest; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceResponse; +import com.gusto.embedded_api.models.operations.PutV1PartnerManagedCompaniesCompanyUuidMigrateHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PutV1PartnerManagedCompaniesCompanyUuidMigrateResponse; import java.lang.Exception; public class Application { @@ -683,34 +768,34 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceResponse res = sdk.companies().acceptTermsOfService() + PutV1PartnerManagedCompaniesCompanyUuidMigrateResponse res = sdk.companies().migrate() + .xGustoAPIVersion(PutV1PartnerManagedCompaniesCompanyUuidMigrateHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .companyUuid("") - .xGustoAPIVersion(PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .partnerManagedCompanyAcceptTermsOfServiceRequest(PartnerManagedCompanyAcceptTermsOfServiceRequest.builder() - .email("Mary_Welch@hotmail.com") - .ipAddress("ad95:edec:dbf8:daea:be73:caca:2bf2:c269") + .partnerManagedCompanyMigrateRequest(PartnerManagedCompanyMigrateRequest.builder() + .email("Janice18@gmail.com") + .ipAddress("75.249.55.210") .externalUserId("") .build()) .call(); - if (res.partnerManagedCompanyTermsOfServiceResponse().isPresent()) { - System.out.println(res.partnerManagedCompanyTermsOfServiceResponse().get()); + if (res.partnerManagedCompanyMigrateResponse().isPresent()) { + System.out.println(res.partnerManagedCompanyMigrateResponse().get()); } } } ``` -### Example Usage: Example +### Example Usage: Nested - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.PartnerManagedCompanyAcceptTermsOfServiceRequest; +import com.gusto.embedded_api.models.components.PartnerManagedCompanyMigrateRequest; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceResponse; +import com.gusto.embedded_api.models.operations.PutV1PartnerManagedCompaniesCompanyUuidMigrateHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PutV1PartnerManagedCompaniesCompanyUuidMigrateResponse; import java.lang.Exception; public class Application { @@ -721,72 +806,34 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceResponse res = sdk.companies().acceptTermsOfService() + PutV1PartnerManagedCompaniesCompanyUuidMigrateResponse res = sdk.companies().migrate() + .xGustoAPIVersion(PutV1PartnerManagedCompaniesCompanyUuidMigrateHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .companyUuid("") - .xGustoAPIVersion(PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .partnerManagedCompanyAcceptTermsOfServiceRequest(PartnerManagedCompanyAcceptTermsOfServiceRequest.builder() - .email("jsmith99@gmail.com") - .ipAddress("192.168.1.2") - .externalUserId("2005648946132") + .partnerManagedCompanyMigrateRequest(PartnerManagedCompanyMigrateRequest.builder() + .email("Janice18@gmail.com") + .ipAddress("75.249.55.210") + .externalUserId("") .build()) .call(); - if (res.partnerManagedCompanyTermsOfServiceResponse().isPresent()) { - System.out.println(res.partnerManagedCompanyTermsOfServiceResponse().get()); - } - } -} -``` -### Example Usage: Nested - - -```java -package hello.world; - -import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.PartnerManagedCompanyAcceptTermsOfServiceRequest; -import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceResponse; -import java.lang.Exception; - -public class Application { - - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { - - GustoEmbedded sdk = GustoEmbedded.builder() - .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) - .build(); - - PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceResponse res = sdk.companies().acceptTermsOfService() - .companyUuid("") - .xGustoAPIVersion(PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .partnerManagedCompanyAcceptTermsOfServiceRequest(PartnerManagedCompanyAcceptTermsOfServiceRequest.builder() - .email("Mary_Welch@hotmail.com") - .ipAddress("ad95:edec:dbf8:daea:be73:caca:2bf2:c269") - .externalUserId("") - .build()) - .call(); - - if (res.partnerManagedCompanyTermsOfServiceResponse().isPresent()) { - System.out.println(res.partnerManagedCompanyTermsOfServiceResponse().get()); + if (res.partnerManagedCompanyMigrateResponse().isPresent()) { + System.out.println(res.partnerManagedCompanyMigrateResponse().get()); } } } ``` ### Example Usage: Resource - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.PartnerManagedCompanyAcceptTermsOfServiceRequest; +import com.gusto.embedded_api.models.components.PartnerManagedCompanyMigrateRequest; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceResponse; +import com.gusto.embedded_api.models.operations.PutV1PartnerManagedCompaniesCompanyUuidMigrateHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PutV1PartnerManagedCompaniesCompanyUuidMigrateResponse; import java.lang.Exception; public class Application { @@ -797,18 +844,18 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceResponse res = sdk.companies().acceptTermsOfService() + PutV1PartnerManagedCompaniesCompanyUuidMigrateResponse res = sdk.companies().migrate() + .xGustoAPIVersion(PutV1PartnerManagedCompaniesCompanyUuidMigrateHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .companyUuid("") - .xGustoAPIVersion(PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .partnerManagedCompanyAcceptTermsOfServiceRequest(PartnerManagedCompanyAcceptTermsOfServiceRequest.builder() - .email("Mary_Welch@hotmail.com") - .ipAddress("ad95:edec:dbf8:daea:be73:caca:2bf2:c269") + .partnerManagedCompanyMigrateRequest(PartnerManagedCompanyMigrateRequest.builder() + .email("Janice18@gmail.com") + .ipAddress("75.249.55.210") .externalUserId("") .build()) .call(); - if (res.partnerManagedCompanyTermsOfServiceResponse().isPresent()) { - System.out.println(res.partnerManagedCompanyTermsOfServiceResponse().get()); + if (res.partnerManagedCompanyMigrateResponse().isPresent()) { + System.out.println(res.partnerManagedCompanyMigrateResponse().get()); } } } @@ -818,13 +865,13 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1PartnerManagedCompaniesCompanyUuidMigrateHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `partnerManagedCompanyAcceptTermsOfServiceRequest` | [PartnerManagedCompanyAcceptTermsOfServiceRequest](../../models/components/PartnerManagedCompanyAcceptTermsOfServiceRequest.md) | :heavy_check_mark: | N/A | +| `partnerManagedCompanyMigrateRequest` | [PartnerManagedCompanyMigrateRequest](../../models/components/PartnerManagedCompanyMigrateRequest.md) | :heavy_check_mark: | N/A | ### Response -**[PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceResponse](../../models/operations/PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceResponse.md)** +**[PutV1PartnerManagedCompaniesCompanyUuidMigrateResponse](../../models/operations/PutV1PartnerManagedCompaniesCompanyUuidMigrateResponse.md)** ### Errors @@ -834,152 +881,191 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## retrieveTermsOfService +## createPartnerManaged -Retrieve the user acceptance status of the Gusto Embedded Payroll's [Terms of Service](https://flows.gusto.com/terms). +Create a partner managed company. When you successfully call the API, it does the following: +* Creates a new company in Gusto +* Creates a new user using the provided email if the user does not already exist. +* Makes the user the primary payroll administrator of the new company. -scope: `terms_of_services:read` +In response, you will receive oauth access tokens for the created company. + +IMPORTANT: the returned access and refresh tokens are reserved for this company only. They cannot be used to access other companies AND previously granted tokens cannot be used to access this company. + +📘 System Access Authentication + +This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + +scope: `partner_managed_companies:manage` ### Example Usage: Basic - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.PartnerManagedCompanyRetrieveTermsOfServiceRequest; -import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.components.*; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceResponse; +import com.gusto.embedded_api.models.operations.*; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + public static void main(String[] args) throws UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() - .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceResponse res = sdk.companies().retrieveTermsOfService() - .companyUuid("") - .xGustoAPIVersion(PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .partnerManagedCompanyRetrieveTermsOfServiceRequest(PartnerManagedCompanyRetrieveTermsOfServiceRequest.builder() - .email("Valentin_Ziemann@yahoo.com") + PostV1PartnerManagedCompaniesResponse res = sdk.companies().createPartnerManaged() + .security(PostV1PartnerManagedCompaniesSecurity.builder() + .systemAccessAuth(System.getenv().getOrDefault("SYSTEM_ACCESS_AUTH", "")) + .build()) + .xGustoAPIVersion(PostV1PartnerManagedCompaniesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .partnerManagedCompanyCreateRequest(PartnerManagedCompanyCreateRequest.builder() + .user(User.builder() + .firstName("Randi") + .lastName("Schaden") + .email("Geovanni_Mertz12@yahoo.com") + .build()) + .company(PartnerManagedCompanyCreateRequestCompany.builder() + .name("") + .build()) .build()) .call(); - if (res.partnerManagedCompanyTermsOfServiceResponse().isPresent()) { - System.out.println(res.partnerManagedCompanyTermsOfServiceResponse().get()); + if (res.partnerManagedCompany().isPresent()) { + System.out.println(res.partnerManagedCompany().get()); } } } ``` ### Example Usage: Example - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.PartnerManagedCompanyRetrieveTermsOfServiceRequest; -import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.components.*; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceResponse; +import com.gusto.embedded_api.models.operations.*; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + public static void main(String[] args) throws UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() - .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceResponse res = sdk.companies().retrieveTermsOfService() - .companyUuid("") - .xGustoAPIVersion(PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .partnerManagedCompanyRetrieveTermsOfServiceRequest(PartnerManagedCompanyRetrieveTermsOfServiceRequest.builder() - .email("jsmith99@gmail.com") + PostV1PartnerManagedCompaniesResponse res = sdk.companies().createPartnerManaged() + .security(PostV1PartnerManagedCompaniesSecurity.builder() + .systemAccessAuth(System.getenv().getOrDefault("SYSTEM_ACCESS_AUTH", "")) + .build()) + .xGustoAPIVersion(PostV1PartnerManagedCompaniesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .partnerManagedCompanyCreateRequest(PartnerManagedCompanyCreateRequest.builder() + .user(User.builder() + .firstName("Frank") + .lastName("Ocean") + .email("frank@example.com") + .phone("2345558899") + .build()) + .company(PartnerManagedCompanyCreateRequestCompany.builder() + .name("Frank's Ocean, LLC") + .tradeName("Frank’s Ocean") + .ein("123456789") + .contractorOnly(false) + .build()) .build()) .call(); - if (res.partnerManagedCompanyTermsOfServiceResponse().isPresent()) { - System.out.println(res.partnerManagedCompanyTermsOfServiceResponse().get()); + if (res.partnerManagedCompany().isPresent()) { + System.out.println(res.partnerManagedCompany().get()); } } } ``` ### Example Usage: Nested - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.PartnerManagedCompanyRetrieveTermsOfServiceRequest; -import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.components.*; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceResponse; +import com.gusto.embedded_api.models.operations.*; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + public static void main(String[] args) throws UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() - .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceResponse res = sdk.companies().retrieveTermsOfService() - .companyUuid("") - .xGustoAPIVersion(PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .partnerManagedCompanyRetrieveTermsOfServiceRequest(PartnerManagedCompanyRetrieveTermsOfServiceRequest.builder() - .email("Valentin_Ziemann@yahoo.com") + PostV1PartnerManagedCompaniesResponse res = sdk.companies().createPartnerManaged() + .security(PostV1PartnerManagedCompaniesSecurity.builder() + .systemAccessAuth(System.getenv().getOrDefault("SYSTEM_ACCESS_AUTH", "")) + .build()) + .xGustoAPIVersion(PostV1PartnerManagedCompaniesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .partnerManagedCompanyCreateRequest(PartnerManagedCompanyCreateRequest.builder() + .user(User.builder() + .firstName("Randi") + .lastName("Schaden") + .email("Geovanni_Mertz12@yahoo.com") + .build()) + .company(PartnerManagedCompanyCreateRequestCompany.builder() + .name("") + .build()) .build()) .call(); - if (res.partnerManagedCompanyTermsOfServiceResponse().isPresent()) { - System.out.println(res.partnerManagedCompanyTermsOfServiceResponse().get()); + if (res.partnerManagedCompany().isPresent()) { + System.out.println(res.partnerManagedCompany().get()); } } } ``` ### Example Usage: Resource - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.PartnerManagedCompanyRetrieveTermsOfServiceRequest; -import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.components.*; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceResponse; +import com.gusto.embedded_api.models.operations.*; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + public static void main(String[] args) throws UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() - .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceResponse res = sdk.companies().retrieveTermsOfService() - .companyUuid("") - .xGustoAPIVersion(PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .partnerManagedCompanyRetrieveTermsOfServiceRequest(PartnerManagedCompanyRetrieveTermsOfServiceRequest.builder() - .email("Valentin_Ziemann@yahoo.com") + PostV1PartnerManagedCompaniesResponse res = sdk.companies().createPartnerManaged() + .security(PostV1PartnerManagedCompaniesSecurity.builder() + .systemAccessAuth(System.getenv().getOrDefault("SYSTEM_ACCESS_AUTH", "")) + .build()) + .xGustoAPIVersion(PostV1PartnerManagedCompaniesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .partnerManagedCompanyCreateRequest(PartnerManagedCompanyCreateRequest.builder() + .user(User.builder() + .firstName("Randi") + .lastName("Schaden") + .email("Geovanni_Mertz12@yahoo.com") + .build()) + .company(PartnerManagedCompanyCreateRequestCompany.builder() + .name("") + .build()) .build()) .call(); - if (res.partnerManagedCompanyTermsOfServiceResponse().isPresent()) { - System.out.println(res.partnerManagedCompanyTermsOfServiceResponse().get()); + if (res.partnerManagedCompany().isPresent()) { + System.out.println(res.partnerManagedCompany().get()); } } } @@ -989,38 +1075,37 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `partnerManagedCompanyRetrieveTermsOfServiceRequest` | [PartnerManagedCompanyRetrieveTermsOfServiceRequest](../../models/components/PartnerManagedCompanyRetrieveTermsOfServiceRequest.md) | :heavy_check_mark: | N/A | +| `security` | [com.gusto.embedded_api.models.operations.PostV1PartnerManagedCompaniesSecurity](../../models/operations/PostV1PartnerManagedCompaniesSecurity.md) | :heavy_check_mark: | The security requirements to use for the request. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1PartnerManagedCompaniesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `partnerManagedCompanyCreateRequest` | [PartnerManagedCompanyCreateRequest](../../models/components/PartnerManagedCompanyCreateRequest.md) | :heavy_check_mark: | N/A | ### Response -**[PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceResponse](../../models/operations/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceResponse.md)** +**[PostV1PartnerManagedCompaniesResponse](../../models/operations/PostV1PartnerManagedCompaniesResponse.md)** ### Errors | Error Type | Status Code | Content Type | | -------------------------------------- | -------------------------------------- | -------------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## listAdmins +## getV1PartnerManagedCompaniesCompanyUuidMigrationReadiness -Returns a list of all the admins at a company +Check if an existing Gusto customer is ready to be migrated to embedded payroll. This endpoint returns blockers and warnings associated with migrating the company and is recommended to be called before attempting to migrate a company. -scope: `company_admin:read` +scope: `partner_managed_companies:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdAdminsResponse; +import com.gusto.embedded_api.models.operations.GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessResponse; import java.lang.Exception; public class Application { @@ -1031,13 +1116,13 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1CompaniesCompanyIdAdminsResponse res = sdk.companies().listAdmins() - .xGustoAPIVersion(GetV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .companyId("") + GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessResponse res = sdk.companies().getV1PartnerManagedCompaniesCompanyUuidMigrationReadiness() + .xGustoAPIVersion(GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyUuid("") .call(); - if (res.admins().isPresent()) { - System.out.println(res.admins().get()); + if (res.partnerManagedCompanyMigrationReadinessResponse().isPresent()) { + System.out.println(res.partnerManagedCompanyMigrationReadinessResponse().get()); } } } @@ -1047,14 +1132,12 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | -| `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | -| `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | ### Response -**[GetV1CompaniesCompanyIdAdminsResponse](../../models/operations/GetV1CompaniesCompanyIdAdminsResponse.md)** +**[GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessResponse](../../models/operations/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessResponse.md)** ### Errors @@ -1063,25 +1146,25 @@ public class Application { | models/errors/NotFoundErrorObject | 404 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## createAdmin +## acceptTermsOfService -Creates a new admin for a company. -If the email matches an existing user, this will create an admin account for the current user. Otherwise, this will create a new user. +Accept the Gusto Embedded Payroll's [Terms of Service](https://flows.gusto.com/terms). +The user must have a role in the company in order to accept the Terms of Service. -scope: `company_admin:write` +scope: `terms_of_services:write` ### Example Usage: Basic - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.AdminCreateRequest; +import com.gusto.embedded_api.models.components.PartnerManagedCompanyAcceptTermsOfServiceRequest; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyIdAdminsResponse; +import com.gusto.embedded_api.models.operations.PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceResponse; import java.lang.Exception; public class Application { @@ -1092,34 +1175,34 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostV1CompaniesCompanyIdAdminsResponse res = sdk.companies().createAdmin() - .xGustoAPIVersion(PostV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .companyId("") - .adminCreateRequest(AdminCreateRequest.builder() - .firstName("Hilbert") - .lastName("Hilll") - .email("Dejah.Pagac14@gmail.com") + PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceResponse res = sdk.companies().acceptTermsOfService() + .xGustoAPIVersion(PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyUuid("") + .partnerManagedCompanyAcceptTermsOfServiceRequest(PartnerManagedCompanyAcceptTermsOfServiceRequest.builder() + .email("Mary_Welch@hotmail.com") + .ipAddress("ad95:edec:dbf8:daea:be73:caca:2bf2:c269") + .externalUserId("") .build()) .call(); - if (res.admin().isPresent()) { - System.out.println(res.admin().get()); + if (res.partnerManagedCompanyTermsOfServiceResponse().isPresent()) { + System.out.println(res.partnerManagedCompanyTermsOfServiceResponse().get()); } } } ``` ### Example Usage: Example - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.AdminCreateRequest; +import com.gusto.embedded_api.models.components.PartnerManagedCompanyAcceptTermsOfServiceRequest; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyIdAdminsResponse; +import com.gusto.embedded_api.models.operations.PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceResponse; import java.lang.Exception; public class Application { @@ -1130,34 +1213,34 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostV1CompaniesCompanyIdAdminsResponse res = sdk.companies().createAdmin() - .xGustoAPIVersion(PostV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .companyId("") - .adminCreateRequest(AdminCreateRequest.builder() - .firstName("John") - .lastName("Smith") + PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceResponse res = sdk.companies().acceptTermsOfService() + .xGustoAPIVersion(PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyUuid("") + .partnerManagedCompanyAcceptTermsOfServiceRequest(PartnerManagedCompanyAcceptTermsOfServiceRequest.builder() .email("jsmith99@gmail.com") + .ipAddress("192.168.1.2") + .externalUserId("2005648946132") .build()) .call(); - if (res.admin().isPresent()) { - System.out.println(res.admin().get()); + if (res.partnerManagedCompanyTermsOfServiceResponse().isPresent()) { + System.out.println(res.partnerManagedCompanyTermsOfServiceResponse().get()); } } } ``` ### Example Usage: Nested - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.AdminCreateRequest; +import com.gusto.embedded_api.models.components.PartnerManagedCompanyAcceptTermsOfServiceRequest; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyIdAdminsResponse; +import com.gusto.embedded_api.models.operations.PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceResponse; import java.lang.Exception; public class Application { @@ -1168,34 +1251,34 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostV1CompaniesCompanyIdAdminsResponse res = sdk.companies().createAdmin() - .xGustoAPIVersion(PostV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .companyId("") - .adminCreateRequest(AdminCreateRequest.builder() - .firstName("Hilbert") - .lastName("Hilll") - .email("Dejah.Pagac14@gmail.com") + PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceResponse res = sdk.companies().acceptTermsOfService() + .xGustoAPIVersion(PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyUuid("") + .partnerManagedCompanyAcceptTermsOfServiceRequest(PartnerManagedCompanyAcceptTermsOfServiceRequest.builder() + .email("Mary_Welch@hotmail.com") + .ipAddress("ad95:edec:dbf8:daea:be73:caca:2bf2:c269") + .externalUserId("") .build()) .call(); - if (res.admin().isPresent()) { - System.out.println(res.admin().get()); + if (res.partnerManagedCompanyTermsOfServiceResponse().isPresent()) { + System.out.println(res.partnerManagedCompanyTermsOfServiceResponse().get()); } } } ``` ### Example Usage: Resource - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.AdminCreateRequest; +import com.gusto.embedded_api.models.components.PartnerManagedCompanyAcceptTermsOfServiceRequest; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyIdAdminsResponse; +import com.gusto.embedded_api.models.operations.PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceResponse; import java.lang.Exception; public class Application { @@ -1206,18 +1289,18 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostV1CompaniesCompanyIdAdminsResponse res = sdk.companies().createAdmin() - .xGustoAPIVersion(PostV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .companyId("") - .adminCreateRequest(AdminCreateRequest.builder() - .firstName("Hilbert") - .lastName("Hilll") - .email("Dejah.Pagac14@gmail.com") + PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceResponse res = sdk.companies().acceptTermsOfService() + .xGustoAPIVersion(PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyUuid("") + .partnerManagedCompanyAcceptTermsOfServiceRequest(PartnerManagedCompanyAcceptTermsOfServiceRequest.builder() + .email("Mary_Welch@hotmail.com") + .ipAddress("ad95:edec:dbf8:daea:be73:caca:2bf2:c269") + .externalUserId("") .build()) .call(); - if (res.admin().isPresent()) { - System.out.println(res.admin().get()); + if (res.partnerManagedCompanyTermsOfServiceResponse().isPresent()) { + System.out.println(res.partnerManagedCompanyTermsOfServiceResponse().get()); } } } @@ -1227,13 +1310,13 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | -| `adminCreateRequest` | [AdminCreateRequest](../../models/components/AdminCreateRequest.md) | :heavy_check_mark: | N/A | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | +| `partnerManagedCompanyAcceptTermsOfServiceRequest` | [PartnerManagedCompanyAcceptTermsOfServiceRequest](../../models/components/PartnerManagedCompanyAcceptTermsOfServiceRequest.md) | :heavy_check_mark: | N/A | ### Response -**[PostV1CompaniesCompanyIdAdminsResponse](../../models/operations/PostV1CompaniesCompanyIdAdminsResponse.md)** +**[PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceResponse](../../models/operations/PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceResponse.md)** ### Errors @@ -1243,96 +1326,96 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## getOnboardingStatus +## retrieveTermsOfService -Retrieves a company's onboarding status, including whether onboarding is complete and the list of -required onboarding steps with their respective completion state. +Retrieve the user acceptance status of the Gusto Embedded Payroll's [Terms of Service](https://flows.gusto.com/terms). -scope: `company_onboarding_status:read` +scope: `terms_of_services:read` -### Example Usage +### Example Usage: Basic - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.components.PartnerManagedCompanyRetrieveTermsOfServiceRequest; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.operations.GetV1CompanyOnboardingStatusHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.GetV1CompanyOnboardingStatusResponse; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.operations.PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, Exception { + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1CompanyOnboardingStatusResponse res = sdk.companies().getOnboardingStatus() + PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceResponse res = sdk.companies().retrieveTermsOfService() + .xGustoAPIVersion(PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .companyUuid("") - .additionalSteps("external_payroll") - .xGustoAPIVersion(GetV1CompanyOnboardingStatusHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .partnerManagedCompanyRetrieveTermsOfServiceRequest(PartnerManagedCompanyRetrieveTermsOfServiceRequest.builder() + .email("Valentin_Ziemann@yahoo.com") + .build()) .call(); - if (res.companyOnboardingStatus().isPresent()) { - System.out.println(res.companyOnboardingStatus().get()); + if (res.partnerManagedCompanyTermsOfServiceResponse().isPresent()) { + System.out.println(res.partnerManagedCompanyTermsOfServiceResponse().get()); } } } ``` +### Example Usage: Example -### Parameters - -| Parameter | Type | Required | Description | Example | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | 7b1d0df1-6403-4a06-8768-c1dd7d24d27a | -| `additionalSteps` | *Optional\* | :heavy_minus_sign: | Comma-delimited string of additional onboarding steps to include. Currently only supports the value "external_payroll". | external_payroll | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompanyOnboardingStatusHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | - -### Response - -**[GetV1CompanyOnboardingStatusResponse](../../models/operations/GetV1CompanyOnboardingStatusResponse.md)** - -### Errors - -| Error Type | Status Code | Content Type | -| --------------------------------- | --------------------------------- | --------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | - -## finishOnboarding + +```java +package hello.world; -Finalize a company's onboarding process. +import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.components.PartnerManagedCompanyRetrieveTermsOfServiceRequest; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.operations.PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceResponse; +import java.lang.Exception; -### Approve a company in demo +public class Application { -After a company is finished onboarding, Gusto requires an additional step to review and approve that company. -The company onboarding status is "onboarding_completed": false, until the API call is made to finish company -onboarding. In production environments, this step is required for risk-analysis purposes. + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { -We provide the endpoint `PUT '/v1/companies/{company_uuid}/approve'` to facilitate company approvals in the demo environment. + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); -```shell -PUT '/v1/companies/89771af8-b964-472e-8064-554dfbcb56d9/approve' + PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceResponse res = sdk.companies().retrieveTermsOfService() + .xGustoAPIVersion(PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyUuid("") + .partnerManagedCompanyRetrieveTermsOfServiceRequest(PartnerManagedCompanyRetrieveTermsOfServiceRequest.builder() + .email("jsmith99@gmail.com") + .build()) + .call(); -# Response: Company object, with company_status: 'Approved' + if (res.partnerManagedCompanyTermsOfServiceResponse().isPresent()) { + System.out.println(res.partnerManagedCompanyTermsOfServiceResponse().get()); + } + } +} ``` +### Example Usage: Nested -scope: `companies:write` - -### Example Usage - - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.components.PartnerManagedCompanyRetrieveTermsOfServiceRequest; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.GetV1CompanyFinishOnboardingHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.GetV1CompanyFinishOnboardingResponse; +import com.gusto.embedded_api.models.operations.PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceResponse; import java.lang.Exception; public class Application { @@ -1343,70 +1426,52 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1CompanyFinishOnboardingResponse res = sdk.companies().finishOnboarding() + PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceResponse res = sdk.companies().retrieveTermsOfService() + .xGustoAPIVersion(PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .companyUuid("") - .xGustoAPIVersion(GetV1CompanyFinishOnboardingHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .partnerManagedCompanyRetrieveTermsOfServiceRequest(PartnerManagedCompanyRetrieveTermsOfServiceRequest.builder() + .email("Valentin_Ziemann@yahoo.com") + .build()) .call(); - if (res.companyOnboardingStatus().isPresent()) { - System.out.println(res.companyOnboardingStatus().get()); + if (res.partnerManagedCompanyTermsOfServiceResponse().isPresent()) { + System.out.println(res.partnerManagedCompanyTermsOfServiceResponse().get()); } } } ``` +### Example Usage: Resource -### Parameters - -| Parameter | Type | Required | Description | Example | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | 7b1d0df1-6403-4a06-8768-c1dd7d24d27a | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompanyFinishOnboardingHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | - -### Response - -**[GetV1CompanyFinishOnboardingResponse](../../models/operations/GetV1CompanyFinishOnboardingResponse.md)** - -### Errors - -| Error Type | Status Code | Content Type | -| -------------------------------------- | -------------------------------------- | -------------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/UnprocessableEntityError | 422 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | - -## getCustomFields - -Returns a list of the custom fields of the company. Useful when you need to know the schema of custom fields for an entire company. - -scope: `companies:read` - -### Example Usage - - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.components.PartnerManagedCompanyRetrieveTermsOfServiceRequest; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdCustomFieldsHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdCustomFieldsResponse; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.operations.PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, Exception { + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1CompaniesCompanyIdCustomFieldsResponse res = sdk.companies().getCustomFields() - .xGustoAPIVersion(GetV1CompaniesCompanyIdCustomFieldsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .companyId("") + PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceResponse res = sdk.companies().retrieveTermsOfService() + .xGustoAPIVersion(PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyUuid("") + .partnerManagedCompanyRetrieveTermsOfServiceRequest(PartnerManagedCompanyRetrieveTermsOfServiceRequest.builder() + .email("Valentin_Ziemann@yahoo.com") + .build()) .call(); - if (res.companyCustomFieldList().isPresent()) { - System.out.println(res.companyCustomFieldList().get()); + if (res.partnerManagedCompanyTermsOfServiceResponse().isPresent()) { + System.out.println(res.partnerManagedCompanyTermsOfServiceResponse().get()); } } } @@ -1416,18 +1481,18 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdCustomFieldsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | -| `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | -| `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | +| `partnerManagedCompanyRetrieveTermsOfServiceRequest` | [PartnerManagedCompanyRetrieveTermsOfServiceRequest](../../models/components/PartnerManagedCompanyRetrieveTermsOfServiceRequest.md) | :heavy_check_mark: | N/A | ### Response -**[GetV1CompaniesCompanyIdCustomFieldsResponse](../../models/operations/GetV1CompaniesCompanyIdCustomFieldsResponse.md)** +**[PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceResponse](../../models/operations/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| --------------------------------- | --------------------------------- | --------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | \ No newline at end of file +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/gusto_embedded/docs/sdks/companyattachments/README.md b/gusto_embedded/docs/sdks/companyattachments/README.md index 4c6ad29f0..af3f486f1 100644 --- a/gusto_embedded/docs/sdks/companyattachments/README.md +++ b/gusto_embedded/docs/sdks/companyattachments/README.md @@ -4,70 +4,9 @@ ### Available Operations -* [getDetails](#getdetails) - Get Company Attachment Details * [getList](#getlist) - Get List of Company Attachments * [create](#create) - Create Company Attachment and Upload File - -## getDetails - -Retrieve the detail of an attachment uploaded by the company. - -### Related guides -- [Manage company attachments](doc:manage-company-attachments) - -scope: `company_attachments:read` - -### Example Usage - - -```java -package hello.world; - -import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.operations.GetV1CompaniesAttachmentHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.GetV1CompaniesAttachmentResponse; -import java.lang.Exception; - -public class Application { - - public static void main(String[] args) throws NotFoundErrorObject, Exception { - - GustoEmbedded sdk = GustoEmbedded.builder() - .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) - .build(); - - GetV1CompaniesAttachmentResponse res = sdk.companyAttachments().getDetails() - .xGustoAPIVersion(GetV1CompaniesAttachmentHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .companyId("") - .companyAttachmentUuid("") - .call(); - - if (res.companyAttachment().isPresent()) { - System.out.println(res.companyAttachment().get()); - } - } -} -``` - -### Parameters - -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesAttachmentHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | -| `companyAttachmentUuid` | *String* | :heavy_check_mark: | The UUID of the company attachment | - -### Response - -**[GetV1CompaniesAttachmentResponse](../../models/operations/GetV1CompaniesAttachmentResponse.md)** - -### Errors - -| Error Type | Status Code | Content Type | -| --------------------------------- | --------------------------------- | --------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | +* [getDetails](#getdetails) - Get Company Attachment Details ## getList @@ -312,4 +251,65 @@ public class Application { | -------------------------------------- | -------------------------------------- | -------------------------------------- | | models/errors/NotFoundErrorObject | 404 | application/json | | models/errors/UnprocessableEntityError | 422 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | \ No newline at end of file +| models/errors/APIException | 4XX, 5XX | \*/\* | + +## getDetails + +Retrieve the detail of an attachment uploaded by the company. + +### Related guides +- [Manage company attachments](doc:manage-company-attachments) + +scope: `company_attachments:read` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.operations.GetV1CompaniesAttachmentHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetV1CompaniesAttachmentResponse; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + GetV1CompaniesAttachmentResponse res = sdk.companyAttachments().getDetails() + .xGustoAPIVersion(GetV1CompaniesAttachmentHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyId("") + .companyAttachmentUuid("") + .call(); + + if (res.companyAttachment().isPresent()) { + System.out.println(res.companyAttachment().get()); + } + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesAttachmentHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | +| `companyAttachmentUuid` | *String* | :heavy_check_mark: | The UUID of the company attachment | + +### Response + +**[GetV1CompaniesAttachmentResponse](../../models/operations/GetV1CompaniesAttachmentResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/gusto_embedded/docs/sdks/companybenefits/README.md b/gusto_embedded/docs/sdks/companybenefits/README.md index c0991e25b..a110688e0 100644 --- a/gusto_embedded/docs/sdks/companybenefits/README.md +++ b/gusto_embedded/docs/sdks/companybenefits/README.md @@ -4,20 +4,182 @@ ### Available Operations +* [getAll](#getall) - Get all supported benefits +* [getSupported](#getsupported) - Get a supported benefit +* [getRequirements](#getrequirements) - Get benefit fields requirements by benefit type * [list](#list) - Get benefits for a company * [create](#create) - Create a company benefit * [get](#get) - Get a company benefit * [update](#update) - Update a company benefit * [delete](#delete) - Delete a company benefit -* [getAll](#getall) - Get all supported benefits -* [getSupported](#getsupported) - Get a supported benefit -* [getSummary](#getsummary) - Get company benefit summary by company benefit id. * [getEmployeeBenefits](#getemployeebenefits) - Get all employee benefits for a company benefit * [updateEmployeeBenefits](#updateemployeebenefits) - Bulk update employee benefits for a company benefit -* [getRequirements](#getrequirements) - Get benefit fields requirements by benefit type +* [getSummary](#getsummary) - Get company benefit summary by company benefit id. * [getV1CompanyBenefitsCompanyBenefitIdContributionExclusions](#getv1companybenefitscompanybenefitidcontributionexclusions) - Get contribution exclusions for a company benefit * [putV1CompanyBenefitsCompanyBenefitIdContributionExclusions](#putv1companybenefitscompanybenefitidcontributionexclusions) - Update contribution exclusions for a company benefit +## getAll + +Returns all benefits supported by Gusto. The benefit object in Gusto contains high level information about a particular benefit type and its tax considerations. When companies choose to offer a benefit, they are creating a Company Benefit object associated with a particular benefit. + +scope: `benefits:read` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.operations.GetV1BenefitsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetV1BenefitsResponse; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + GetV1BenefitsResponse res = sdk.companyBenefits().getAll() + .xGustoAPIVersion(GetV1BenefitsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .call(); + + if (res.supportedBenefitList().isPresent()) { + System.out.println(res.supportedBenefitList().get()); + } + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1BenefitsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | + +### Response + +**[GetV1BenefitsResponse](../../models/operations/GetV1BenefitsResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| -------------------------- | -------------------------- | -------------------------- | +| models/errors/APIException | 4XX, 5XX | \*/\* | + +## getSupported + +Returns a benefit supported by Gusto. The benefit object in Gusto contains high level information about a particular benefit type and its tax considerations. When companies choose to offer a benefit, they are creating a Company Benefit object associated with a particular benefit. + +scope: `benefits:read` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.operations.GetV1BenefitsBenefitIdHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetV1BenefitsBenefitIdResponse; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + GetV1BenefitsBenefitIdResponse res = sdk.companyBenefits().getSupported() + .xGustoAPIVersion(GetV1BenefitsBenefitIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .benefitId("") + .call(); + + if (res.supportedBenefit().isPresent()) { + System.out.println(res.supportedBenefit().get()); + } + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1BenefitsBenefitIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `benefitId` | *String* | :heavy_check_mark: | The benefit type in Gusto. | + +### Response + +**[GetV1BenefitsBenefitIdResponse](../../models/operations/GetV1BenefitsBenefitIdResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| -------------------------- | -------------------------- | -------------------------- | +| models/errors/APIException | 4XX, 5XX | \*/\* | + +## getRequirements + +Returns the field requirements for a given benefit type. + +scope: `benefits:read` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.operations.GetV1BenefitsBenefitsIdRequirementsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetV1BenefitsBenefitsIdRequirementsResponse; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + GetV1BenefitsBenefitsIdRequirementsResponse res = sdk.companyBenefits().getRequirements() + .xGustoAPIVersion(GetV1BenefitsBenefitsIdRequirementsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .benefitId("") + .call(); + + if (res.benefitTypeRequirements().isPresent()) { + System.out.println(res.benefitTypeRequirements().get()); + } + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1BenefitsBenefitsIdRequirementsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `benefitId` | *String* | :heavy_check_mark: | The benefit type in Gusto. | + +### Response + +**[GetV1BenefitsBenefitsIdRequirementsResponse](../../models/operations/GetV1BenefitsBenefitsIdRequirementsResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | + ## list Company benefits represent the benefits that a company is offering to employees. This ties together a particular supported benefit with the company-specific information for the offering of that benefit. @@ -304,7 +466,7 @@ public class Application { | `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompanyBenefitsCompanyBenefitIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyBenefitId` | *String* | :heavy_check_mark: | The UUID of the company benefit | | `withEmployeeBenefits` | *Optional\* | :heavy_minus_sign: | Whether to return employee benefits associated with the benefit | -| `include` | [Optional\](../../models/operations/GetV1CompanyBenefitsCompanyBenefitIdQueryParamInclude.md) | :heavy_minus_sign: | Available options:
    - all_benefits: If with_employee_benefits=true, include all effective dated benefits for each employee instead of only the current benefits. | +| `include` | [Optional\](../../models/operations/Include.md) | :heavy_minus_sign: | Available options:
    - all_benefits: If with_employee_benefits=true, include all effective dated benefits for each employee instead of only the current benefits. | ### Response @@ -555,174 +717,6 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## getAll - -Returns all benefits supported by Gusto. The benefit object in Gusto contains high level information about a particular benefit type and its tax considerations. When companies choose to offer a benefit, they are creating a Company Benefit object associated with a particular benefit. - -scope: `benefits:read` - -### Example Usage - - -```java -package hello.world; - -import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.operations.GetV1BenefitsHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.GetV1BenefitsResponse; -import java.lang.Exception; - -public class Application { - - public static void main(String[] args) throws Exception { - - GustoEmbedded sdk = GustoEmbedded.builder() - .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) - .build(); - - GetV1BenefitsResponse res = sdk.companyBenefits().getAll() - .xGustoAPIVersion(GetV1BenefitsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .call(); - - if (res.supportedBenefits().isPresent()) { - System.out.println(res.supportedBenefits().get()); - } - } -} -``` - -### Parameters - -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1BenefitsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | - -### Response - -**[GetV1BenefitsResponse](../../models/operations/GetV1BenefitsResponse.md)** - -### Errors - -| Error Type | Status Code | Content Type | -| -------------------------- | -------------------------- | -------------------------- | -| models/errors/APIException | 4XX, 5XX | \*/\* | - -## getSupported - -Returns a benefit supported by Gusto. The benefit object in Gusto contains high level information about a particular benefit type and its tax considerations. When companies choose to offer a benefit, they are creating a Company Benefit object associated with a particular benefit. - -scope: `benefits:read` - -### Example Usage - - -```java -package hello.world; - -import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.operations.GetV1BenefitsBenefitIdHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.GetV1BenefitsBenefitIdResponse; -import java.lang.Exception; - -public class Application { - - public static void main(String[] args) throws Exception { - - GustoEmbedded sdk = GustoEmbedded.builder() - .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) - .build(); - - GetV1BenefitsBenefitIdResponse res = sdk.companyBenefits().getSupported() - .xGustoAPIVersion(GetV1BenefitsBenefitIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .benefitId("") - .call(); - - if (res.supportedBenefit().isPresent()) { - System.out.println(res.supportedBenefit().get()); - } - } -} -``` - -### Parameters - -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1BenefitsBenefitIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `benefitId` | *String* | :heavy_check_mark: | The benefit type in Gusto. | - -### Response - -**[GetV1BenefitsBenefitIdResponse](../../models/operations/GetV1BenefitsBenefitIdResponse.md)** - -### Errors - -| Error Type | Status Code | Content Type | -| -------------------------- | -------------------------- | -------------------------- | -| models/errors/APIException | 4XX, 5XX | \*/\* | - -## getSummary - -Returns summary benefit data for the requested company benefit id. - -Benefits containing PHI are only visible to applications with the `company_benefits:read:phi` scope. - -scope: `company_benefits:read` - -### Example Usage - - -```java -package hello.world; - -import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.operations.GetV1BenefitsCompanyBenefitIdSummaryRequest; -import com.gusto.embedded_api.models.operations.GetV1BenefitsCompanyBenefitIdSummaryResponse; -import java.lang.Exception; - -public class Application { - - public static void main(String[] args) throws NotFoundErrorObject, Exception { - - GustoEmbedded sdk = GustoEmbedded.builder() - .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) - .build(); - - GetV1BenefitsCompanyBenefitIdSummaryRequest req = GetV1BenefitsCompanyBenefitIdSummaryRequest.builder() - .companyBenefitId("") - .startDate("2022-01-01") - .endDate("2022-12-31") - .build(); - - GetV1BenefitsCompanyBenefitIdSummaryResponse res = sdk.companyBenefits().getSummary() - .request(req) - .call(); - - if (res.benefitSummary().isPresent()) { - System.out.println(res.benefitSummary().get()); - } - } -} -``` - -### Parameters - -| Parameter | Type | Required | Description | -| --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | -| `request` | [GetV1BenefitsCompanyBenefitIdSummaryRequest](../../models/operations/GetV1BenefitsCompanyBenefitIdSummaryRequest.md) | :heavy_check_mark: | The request object to use for the request. | - -### Response - -**[GetV1BenefitsCompanyBenefitIdSummaryResponse](../../models/operations/GetV1BenefitsCompanyBenefitIdSummaryResponse.md)** - -### Errors - -| Error Type | Status Code | Content Type | -| --------------------------------- | --------------------------------- | --------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | - ## getEmployeeBenefits Employee benefits represent an employee enrolled in a particular company benefit. It includes information specific to that employee's enrollment. @@ -984,22 +978,24 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## getRequirements +## getSummary -Returns the field requirements for a given benefit type. +Returns summary benefit data for the requested company benefit id. -scope: `benefits:read` +Benefits containing PHI are only visible to applications with the `company_benefits:read:phi` scope. + +scope: `company_benefits:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.operations.GetV1BenefitsBenefitsIdRequirementsHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.GetV1BenefitsBenefitsIdRequirementsResponse; +import com.gusto.embedded_api.models.operations.GetV1BenefitsCompanyBenefitIdSummaryRequest; +import com.gusto.embedded_api.models.operations.GetV1BenefitsCompanyBenefitIdSummaryResponse; import java.lang.Exception; public class Application { @@ -1010,13 +1006,18 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1BenefitsBenefitsIdRequirementsResponse res = sdk.companyBenefits().getRequirements() - .xGustoAPIVersion(GetV1BenefitsBenefitsIdRequirementsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .benefitId("") + GetV1BenefitsCompanyBenefitIdSummaryRequest req = GetV1BenefitsCompanyBenefitIdSummaryRequest.builder() + .companyBenefitId("") + .startDate("2022-01-01") + .endDate("2022-12-31") + .build(); + + GetV1BenefitsCompanyBenefitIdSummaryResponse res = sdk.companyBenefits().getSummary() + .request(req) .call(); - if (res.benefitTypeRequirements().isPresent()) { - System.out.println(res.benefitTypeRequirements().get()); + if (res.benefitSummary().isPresent()) { + System.out.println(res.benefitSummary().get()); } } } @@ -1024,14 +1025,13 @@ public class Application { ### Parameters -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1BenefitsBenefitsIdRequirementsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `benefitId` | *String* | :heavy_check_mark: | The benefit type in Gusto. | +| Parameter | Type | Required | Description | +| --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | +| `request` | [GetV1BenefitsCompanyBenefitIdSummaryRequest](../../models/operations/GetV1BenefitsCompanyBenefitIdSummaryRequest.md) | :heavy_check_mark: | The request object to use for the request. | ### Response -**[GetV1BenefitsBenefitsIdRequirementsResponse](../../models/operations/GetV1BenefitsBenefitsIdRequirementsResponse.md)** +**[GetV1BenefitsCompanyBenefitIdSummaryResponse](../../models/operations/GetV1BenefitsCompanyBenefitIdSummaryResponse.md)** ### Errors diff --git a/gusto_embedded/docs/sdks/contractorpaymentgroups/README.md b/gusto_embedded/docs/sdks/contractorpaymentgroups/README.md index 99b19900d..8b6040322 100644 --- a/gusto_embedded/docs/sdks/contractorpaymentgroups/README.md +++ b/gusto_embedded/docs/sdks/contractorpaymentgroups/README.md @@ -4,53 +4,54 @@ ### Available Operations +* [preview](#preview) - Preview a contractor payment group +* [fund](#fund) - Fund a contractor payment group [DEMO] * [getList](#getlist) - Get contractor payment groups for a company * [create](#create) - Create a contractor payment group -* [preview](#preview) - Preview a contractor payment group * [get](#get) - Get a contractor payment group * [delete](#delete) - Cancel a contractor payment group -* [fund](#fund) - Fund a contractor payment group [DEMO] * [getV1ContractorPaymentGroupsIdPartnerDisbursements](#getv1contractorpaymentgroupsidpartnerdisbursements) - Get partner disbursements for a contractor payment group * [patchV1ContractorPaymentGroupsIdPartnerDisbursements](#patchv1contractorpaymentgroupsidpartnerdisbursements) - Update partner disbursements for a contractor payment group -## getList +## preview -Returns a list of minimal contractor payment groups within a given time period, including totals but not associated contractor payments. +Preview a group of contractor payments. Request will validate inputs and return preview of the contractor payment group including the expected `debit_date`. The `uuid` field will be null in the response. + +The returned `creation_token` is a required parameter in order to create the contractor payment group. scope: `payrolls:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdContractorPaymentGroupsRequest; -import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdContractorPaymentGroupsResponse; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.operations.*; import java.lang.Exception; +import java.util.List; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, Exception { + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1CompaniesCompanyIdContractorPaymentGroupsRequest req = GetV1CompaniesCompanyIdContractorPaymentGroupsRequest.builder() + PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewResponse res = sdk.contractorPaymentGroups().preview() + .xGustoAPIVersion(PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .companyId("") - .startDate("2020-01-01") - .endDate("2020-12-31") - .build(); - - GetV1CompaniesCompanyIdContractorPaymentGroupsResponse res = sdk.contractorPaymentGroups().getList() - .request(req) + .requestBody(PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBody.builder() + .contractorPayments(List.of()) + .build()) .call(); - if (res.contractorPaymentGroupWithBlockers().isPresent()) { - System.out.println(res.contractorPaymentGroupWithBlockers().get()); + if (res.contractorPaymentGroupPreview().isPresent()) { + System.out.println(res.contractorPaymentGroupPreview().get()); } } } @@ -58,40 +59,45 @@ public class Application { ### Parameters -| Parameter | Type | Required | Description | -| ----------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | -| `request` | [GetV1CompaniesCompanyIdContractorPaymentGroupsRequest](../../models/operations/GetV1CompaniesCompanyIdContractorPaymentGroupsRequest.md) | :heavy_check_mark: | The request object to use for the request. | +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | +| `requestBody` | [PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBody](../../models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBody.md) | :heavy_check_mark: | N/A | ### Response -**[GetV1CompaniesCompanyIdContractorPaymentGroupsResponse](../../models/operations/GetV1CompaniesCompanyIdContractorPaymentGroupsResponse.md)** +**[PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewResponse](../../models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| --------------------------------- | --------------------------------- | --------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | -## create +## fund -Pay a group of contractors. Information needed depends on the contractor's wage type (hourly vs fixed) +> 🚧 Demo action +> This action is only available in the Demo environment + +Simulate funding a contractor payment group. Funding only occurs automatically in the production environment when bank transactions are generated. Use this action in the demo environment to transition a contractor payment group's `status` from `Unfunded` to `Funded`. A `Funded` status is required for generating a contractor payment receipt. scope: `payrolls:run` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.*; +import com.gusto.embedded_api.models.operations.PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundResponse; import java.lang.Exception; -import java.time.LocalDate; -import java.util.List; public class Application { @@ -101,14 +107,9 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostV1CompaniesCompanyIdContractorPaymentGroupsResponse res = sdk.contractorPaymentGroups().create() - .xGustoAPIVersion(PostV1CompaniesCompanyIdContractorPaymentGroupsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .companyId("") - .requestBody(PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBody.builder() - .checkDate(LocalDate.parse("2020-01-01")) - .creationToken("1d532d13-8f61-4a57-ad3c-b5fac1c6e05e") - .contractorPayments(List.of()) - .build()) + PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundResponse res = sdk.contractorPaymentGroups().fund() + .xGustoAPIVersion(PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .contractorPaymentGroupUuid("") .call(); if (res.contractorPaymentGroup().isPresent()) { @@ -122,13 +123,12 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | -| `requestBody` | [PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBody](../../models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBody.md) | :heavy_check_mark: | N/A | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorPaymentGroupUuid` | *String* | :heavy_check_mark: | The UUID of the contractor payment group | ### Response -**[PostV1CompaniesCompanyIdContractorPaymentGroupsResponse](../../models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsResponse.md)** +**[PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundResponse](../../models/operations/PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundResponse.md)** ### Errors @@ -138,45 +138,44 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## preview - -Preview a group of contractor payments. Request will validate inputs and return preview of the contractor payment group including the expected `debit_date`. The `uuid` field will be null in the response. +## getList -The returned `creation_token` is a required parameter in order to create the contractor payment group. +Returns a list of minimal contractor payment groups within a given time period, including totals but not associated contractor payments. scope: `payrolls:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.*; +import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdContractorPaymentGroupsRequest; +import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdContractorPaymentGroupsResponse; import java.lang.Exception; -import java.util.List; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + public static void main(String[] args) throws NotFoundErrorObject, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewResponse res = sdk.contractorPaymentGroups().preview() - .xGustoAPIVersion(PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + GetV1CompaniesCompanyIdContractorPaymentGroupsRequest req = GetV1CompaniesCompanyIdContractorPaymentGroupsRequest.builder() .companyId("") - .requestBody(PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBody.builder() - .contractorPayments(List.of()) - .build()) + .startDate("2020-01-01") + .endDate("2020-12-31") + .build(); + + GetV1CompaniesCompanyIdContractorPaymentGroupsResponse res = sdk.contractorPaymentGroups().getList() + .request(req) .call(); - if (res.contractorPaymentGroupPreview().isPresent()) { - System.out.println(res.contractorPaymentGroupPreview().get()); + if (res.contractorPaymentGroupWithBlockers().isPresent()) { + System.out.println(res.contractorPaymentGroupWithBlockers().get()); } } } @@ -184,53 +183,57 @@ public class Application { ### Parameters -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | -| `requestBody` | [PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBody](../../models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBody.md) | :heavy_check_mark: | N/A | +| Parameter | Type | Required | Description | +| ----------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | +| `request` | [GetV1CompaniesCompanyIdContractorPaymentGroupsRequest](../../models/operations/GetV1CompaniesCompanyIdContractorPaymentGroupsRequest.md) | :heavy_check_mark: | The request object to use for the request. | ### Response -**[PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewResponse](../../models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewResponse.md)** +**[GetV1CompaniesCompanyIdContractorPaymentGroupsResponse](../../models/operations/GetV1CompaniesCompanyIdContractorPaymentGroupsResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| -------------------------------------- | -------------------------------------- | -------------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/UnprocessableEntityError | 422 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | -## get +## create -Returns a contractor payment group with all associated contractor payments. +Pay a group of contractors. Information needed depends on the contractor's wage type (hourly vs fixed) -scope: `payrolls:read` +scope: `payrolls:run` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.operations.GetV1ContractorPaymentGroupsContractorPaymentGroupIdHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.GetV1ContractorPaymentGroupsContractorPaymentGroupIdResponse; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.operations.*; import java.lang.Exception; +import java.time.LocalDate; +import java.util.List; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, Exception { + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1ContractorPaymentGroupsContractorPaymentGroupIdResponse res = sdk.contractorPaymentGroups().get() - .contractorPaymentGroupUuid("") - .xGustoAPIVersion(GetV1ContractorPaymentGroupsContractorPaymentGroupIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + PostV1CompaniesCompanyIdContractorPaymentGroupsResponse res = sdk.contractorPaymentGroups().create() + .xGustoAPIVersion(PostV1CompaniesCompanyIdContractorPaymentGroupsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyId("") + .requestBody(PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBody.builder() + .checkDate(LocalDate.parse("2020-01-01")) + .creationToken("1d532d13-8f61-4a57-ad3c-b5fac1c6e05e") + .contractorPayments(List.of()) + .build()) .call(); if (res.contractorPaymentGroup().isPresent()) { @@ -244,53 +247,56 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `contractorPaymentGroupUuid` | *String* | :heavy_check_mark: | The UUID of the contractor payment group | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1ContractorPaymentGroupsContractorPaymentGroupIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | +| `requestBody` | [PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBody](../../models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBody.md) | :heavy_check_mark: | N/A | ### Response -**[GetV1ContractorPaymentGroupsContractorPaymentGroupIdResponse](../../models/operations/GetV1ContractorPaymentGroupsContractorPaymentGroupIdResponse.md)** +**[PostV1CompaniesCompanyIdContractorPaymentGroupsResponse](../../models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| --------------------------------- | --------------------------------- | --------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | -## delete +## get -Cancels a contractor payment group and all associated contractor payments. All contractor payments must be cancellable, unfunded. +Returns a contractor payment group with all associated contractor payments. -scope: `payrolls:run` +scope: `payrolls:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdResponse; +import com.gusto.embedded_api.models.operations.GetV1ContractorPaymentGroupsContractorPaymentGroupIdHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetV1ContractorPaymentGroupsContractorPaymentGroupIdResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + public static void main(String[] args) throws NotFoundErrorObject, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdResponse res = sdk.contractorPaymentGroups().delete() + GetV1ContractorPaymentGroupsContractorPaymentGroupIdResponse res = sdk.contractorPaymentGroups().get() + .xGustoAPIVersion(GetV1ContractorPaymentGroupsContractorPaymentGroupIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .contractorPaymentGroupUuid("") - .xGustoAPIVersion(DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .call(); - // handle response + if (res.contractorPaymentGroup().isPresent()) { + System.out.println(res.contractorPaymentGroup().get()); + } } } ``` @@ -299,41 +305,37 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1ContractorPaymentGroupsContractorPaymentGroupIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `contractorPaymentGroupUuid` | *String* | :heavy_check_mark: | The UUID of the contractor payment group | -| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | ### Response -**[DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdResponse](../../models/operations/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdResponse.md)** +**[GetV1ContractorPaymentGroupsContractorPaymentGroupIdResponse](../../models/operations/GetV1ContractorPaymentGroupsContractorPaymentGroupIdResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| -------------------------------------- | -------------------------------------- | -------------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/UnprocessableEntityError | 422 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | - -## fund +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | -> 🚧 Demo action -> This action is only available in the Demo environment +## delete -Simulate funding a contractor payment group. Funding only occurs automatically in the production environment when bank transactions are generated. Use this action in the demo environment to transition a contractor payment group's `status` from `Unfunded` to `Funded`. A `Funded` status is required for generating a contractor payment receipt. +Cancels a contractor payment group and all associated contractor payments. All contractor payments must be cancellable, unfunded. scope: `payrolls:run` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundResponse; +import com.gusto.embedded_api.models.operations.DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdResponse; import java.lang.Exception; public class Application { @@ -344,14 +346,12 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundResponse res = sdk.contractorPaymentGroups().fund() + DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdResponse res = sdk.contractorPaymentGroups().delete() + .xGustoAPIVersion(DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .contractorPaymentGroupUuid("") - .xGustoAPIVersion(PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .call(); - if (res.contractorPaymentGroup().isPresent()) { - System.out.println(res.contractorPaymentGroup().get()); - } + // handle response } } ``` @@ -360,12 +360,12 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `contractorPaymentGroupUuid` | *String* | :heavy_check_mark: | The UUID of the contractor payment group | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | ### Response -**[PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundResponse](../../models/operations/PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundResponse.md)** +**[DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdResponse](../../models/operations/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdResponse.md)** ### Errors @@ -402,8 +402,8 @@ public class Application { .build(); GetV1ContractorPaymentGroupsIdPartnerDisbursementsResponse res = sdk.contractorPaymentGroups().getV1ContractorPaymentGroupsIdPartnerDisbursements() - .id("") .xGustoAPIVersion(GetV1ContractorPaymentGroupsIdPartnerDisbursementsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .id("") .call(); if (res.contractorPaymentGroupPartnerDisbursements().isPresent()) { @@ -417,8 +417,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `id` | *String* | :heavy_check_mark: | The UUID of the contractor payment group | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1ContractorPaymentGroupsIdPartnerDisbursementsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `id` | *String* | :heavy_check_mark: | The UUID of the contractor payment group | ### Response @@ -459,8 +459,8 @@ public class Application { .build(); PatchV1ContractorPaymentGroupsIdPartnerDisbursementsResponse res = sdk.contractorPaymentGroups().patchV1ContractorPaymentGroupsIdPartnerDisbursements() - .id("") .xGustoAPIVersion(PatchV1ContractorPaymentGroupsIdPartnerDisbursementsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .id("") .requestBody(PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBody.builder() .disbursements(List.of( Disbursements.builder() @@ -480,8 +480,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `id` | *String* | :heavy_check_mark: | The UUID of the contractor payment group | | `xGustoAPIVersion` | [Optional\](../../models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `id` | *String* | :heavy_check_mark: | The UUID of the contractor payment group | | `requestBody` | [Optional\](../../models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBody.md) | :heavy_minus_sign: | N/A | ### Response diff --git a/gusto_embedded/docs/sdks/contractorpaymentmethod/README.md b/gusto_embedded/docs/sdks/contractorpaymentmethod/README.md index cd9720ab3..11c17cc3f 100644 --- a/gusto_embedded/docs/sdks/contractorpaymentmethod/README.md +++ b/gusto_embedded/docs/sdks/contractorpaymentmethod/README.md @@ -153,7 +153,7 @@ public class Application { .contractorUuid("") .requestBody(PutV1ContractorsContractorIdPaymentMethodRequestBody.builder() .version("56d00c178bc7393b2a206ed6a86afcb4") - .type(PutV1ContractorsContractorIdPaymentMethodType.DIRECT_DEPOSIT) + .type(Type.DIRECT_DEPOSIT) .build()) .call(); @@ -187,7 +187,7 @@ public class Application { .contractorUuid("") .requestBody(PutV1ContractorsContractorIdPaymentMethodRequestBody.builder() .version("56d00c178bc7393b2a206ed6a86afcb4") - .type(PutV1ContractorsContractorIdPaymentMethodType.DIRECT_DEPOSIT) + .type(Type.DIRECT_DEPOSIT) .build()) .call(); @@ -221,7 +221,7 @@ public class Application { .contractorUuid("") .requestBody(PutV1ContractorsContractorIdPaymentMethodRequestBody.builder() .version("56d00c178bc7393b2a206ed6a86afcb4") - .type(PutV1ContractorsContractorIdPaymentMethodType.DIRECT_DEPOSIT) + .type(Type.DIRECT_DEPOSIT) .build()) .call(); @@ -255,7 +255,7 @@ public class Application { .contractorUuid("") .requestBody(PutV1ContractorsContractorIdPaymentMethodRequestBody.builder() .version("56d00c178bc7393b2a206ed6a86afcb4") - .type(PutV1ContractorsContractorIdPaymentMethodType.DIRECT_DEPOSIT) + .type(Type.DIRECT_DEPOSIT) .build()) .call(); @@ -289,7 +289,7 @@ public class Application { .contractorUuid("") .requestBody(PutV1ContractorsContractorIdPaymentMethodRequestBody.builder() .version("63859768485e218ccf8a449bb60f14ed") - .type(PutV1ContractorsContractorIdPaymentMethodType.DIRECT_DEPOSIT) + .type(Type.DIRECT_DEPOSIT) .build()) .call(); @@ -323,7 +323,7 @@ public class Application { .contractorUuid("") .requestBody(PutV1ContractorsContractorIdPaymentMethodRequestBody.builder() .version("63859768485e218ccf8a449bb60f14ed") - .type(PutV1ContractorsContractorIdPaymentMethodType.CHECK) + .type(Type.CHECK) .build()) .call(); diff --git a/gusto_embedded/docs/sdks/contractorpayments/README.md b/gusto_embedded/docs/sdks/contractorpayments/README.md index 8963c73c6..73b2331fd 100644 --- a/gusto_embedded/docs/sdks/contractorpayments/README.md +++ b/gusto_embedded/docs/sdks/contractorpayments/README.md @@ -4,55 +4,56 @@ ### Available Operations -* [getReceipt](#getreceipt) - Get a single contractor payment receipt -* [fund](#fund) - Fund a contractor payment [DEMO] +* [getV1ContractorsContractorUuidPayments](#getv1contractorscontractoruuidpayments) - Get contractor payments +* [getV1ContractorPaymentsContractorPaymentIdPdf](#getv1contractorpaymentscontractorpaymentidpdf) - Get a contractor payment PDF * [list](#list) - Get contractor payments for a company * [create](#create) - Create a contractor payment * [get](#get) - Get a single contractor payment * [delete](#delete) - Cancel a contractor payment * [preview](#preview) - Preview contractor payment debit date -* [getV1ContractorPaymentsContractorPaymentIdPdf](#getv1contractorpaymentscontractorpaymentidpdf) - Get a contractor payment PDF +* [getReceipt](#getreceipt) - Get a single contractor payment receipt +* [fund](#fund) - Fund a contractor payment [DEMO] -## getReceipt +## getV1ContractorsContractorUuidPayments -Returns a contractor payment receipt. +Returns a paginated list of payments for a single contractor. -Notes: -* Receipts are only available for direct deposit payments and are only available once those payments have been funded. -* Payroll Receipt requests for payrolls which do not have receipts available (e.g. payment by check) will return a 404 status. -* Hour and dollar amounts are returned as string representations of numeric decimals. -* Dollar amounts are represented to the cent. -* If no data has yet be inserted for a given field, it defaults to “0.00” (for fixed amounts). +Results are sortable by `check_date` or `created_at`. Append `:asc` or `:desc` to control direction (e.g., `check_date:desc`). -scope: `payrolls:read` +scope: `contractor_pay_stubs:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.operations.GetV1ContractorPaymentsContractorPaymentUuidReceiptHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.GetV1ContractorPaymentsContractorPaymentUuidReceiptResponse; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.operations.GetV1ContractorsContractorUuidPaymentsRequest; +import com.gusto.embedded_api.models.operations.GetV1ContractorsContractorUuidPaymentsResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, Exception { + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1ContractorPaymentsContractorPaymentUuidReceiptResponse res = sdk.contractorPayments().getReceipt() - .xGustoAPIVersion(GetV1ContractorPaymentsContractorPaymentUuidReceiptHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .contractorPaymentUuid("") + GetV1ContractorsContractorUuidPaymentsRequest req = GetV1ContractorsContractorUuidPaymentsRequest.builder() + .contractorUuid("") + .sortBy("check_date:desc") + .build(); + + GetV1ContractorsContractorUuidPaymentsResponse res = sdk.contractorPayments().getV1ContractorsContractorUuidPayments() + .request(req) .call(); - if (res.contractorPaymentReceipt().isPresent()) { - System.out.println(res.contractorPaymentReceipt().get()); + if (res.contractorPaymentListings().isPresent()) { + System.out.println(res.contractorPaymentListings().get()); } } } @@ -60,61 +61,54 @@ public class Application { ### Parameters -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1ContractorPaymentsContractorPaymentUuidReceiptHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `contractorPaymentUuid` | *String* | :heavy_check_mark: | The UUID of the contractor payment | +| Parameter | Type | Required | Description | +| ------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------- | +| `request` | [GetV1ContractorsContractorUuidPaymentsRequest](../../models/operations/GetV1ContractorsContractorUuidPaymentsRequest.md) | :heavy_check_mark: | The request object to use for the request. | ### Response -**[GetV1ContractorPaymentsContractorPaymentUuidReceiptResponse](../../models/operations/GetV1ContractorPaymentsContractorPaymentUuidReceiptResponse.md)** +**[GetV1ContractorsContractorUuidPaymentsResponse](../../models/operations/GetV1ContractorsContractorUuidPaymentsResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| --------------------------------- | --------------------------------- | --------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | - -## fund +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | -> 🚧 Demo action -> -> This action is only available in the Demo environment +## getV1ContractorPaymentsContractorPaymentIdPdf -Simulate funding a contractor payment. Funding only occurs automatically in the production environment when bank transactions are generated. Use this action in the demo environment to transition a contractor payment's `status` from `Unfunded` to `Funded`. A `Funded` status is required for generating a contractor payment receipt. +Get a PDF document for a single contractor payment. -scope: `payrolls:run` +scope: `payrolls:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.GetV1ContractorPaymentsContractorPaymentUuidFundHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.GetV1ContractorPaymentsContractorPaymentUuidFundResponse; +import com.gusto.embedded_api.models.operations.GetV1ContractorPaymentsContractorPaymentIdPdfHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetV1ContractorPaymentsContractorPaymentIdPdfResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + public static void main(String[] args) throws NotFoundErrorObject, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1ContractorPaymentsContractorPaymentUuidFundResponse res = sdk.contractorPayments().fund() - .xGustoAPIVersion(GetV1ContractorPaymentsContractorPaymentUuidFundHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .contractorPaymentUuid("") + GetV1ContractorPaymentsContractorPaymentIdPdfResponse res = sdk.contractorPayments().getV1ContractorPaymentsContractorPaymentIdPdf() + .xGustoAPIVersion(GetV1ContractorPaymentsContractorPaymentIdPdfHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .contractorPaymentId("") .call(); - if (res.contractorPayment().isPresent()) { - System.out.println(res.contractorPayment().get()); - } + // handle response } } ``` @@ -123,20 +117,19 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1ContractorPaymentsContractorPaymentUuidFundHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `contractorPaymentUuid` | *String* | :heavy_check_mark: | The UUID of the contractor payment | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1ContractorPaymentsContractorPaymentIdPdfHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorPaymentId` | *String* | :heavy_check_mark: | The UUID of the contractor payment | ### Response -**[GetV1ContractorPaymentsContractorPaymentUuidFundResponse](../../models/operations/GetV1ContractorPaymentsContractorPaymentUuidFundResponse.md)** +**[GetV1ContractorPaymentsContractorPaymentIdPdfResponse](../../models/operations/GetV1ContractorPaymentsContractorPaymentIdPdfResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| -------------------------------------- | -------------------------------------- | -------------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/UnprocessableEntityError | 422 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | ## list @@ -589,22 +582,29 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## getV1ContractorPaymentsContractorPaymentIdPdf +## getReceipt -Get a PDF document for a single contractor payment. +Returns a contractor payment receipt. + +Notes: +* Receipts are only available for direct deposit payments and are only available once those payments have been funded. +* Payroll Receipt requests for payrolls which do not have receipts available (e.g. payment by check) will return a 404 status. +* Hour and dollar amounts are returned as string representations of numeric decimals. +* Dollar amounts are represented to the cent. +* If no data has yet be inserted for a given field, it defaults to “0.00” (for fixed amounts). scope: `payrolls:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.operations.GetV1ContractorPaymentsContractorPaymentIdPdfHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.GetV1ContractorPaymentsContractorPaymentIdPdfResponse; +import com.gusto.embedded_api.models.operations.GetV1ContractorPaymentsContractorPaymentUuidReceiptHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetV1ContractorPaymentsContractorPaymentUuidReceiptResponse; import java.lang.Exception; public class Application { @@ -615,12 +615,14 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1ContractorPaymentsContractorPaymentIdPdfResponse res = sdk.contractorPayments().getV1ContractorPaymentsContractorPaymentIdPdf() - .xGustoAPIVersion(GetV1ContractorPaymentsContractorPaymentIdPdfHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .contractorPaymentId("") + GetV1ContractorPaymentsContractorPaymentUuidReceiptResponse res = sdk.contractorPayments().getReceipt() + .xGustoAPIVersion(GetV1ContractorPaymentsContractorPaymentUuidReceiptHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .contractorPaymentUuid("") .call(); - // handle response + if (res.contractorPaymentReceipt().isPresent()) { + System.out.println(res.contractorPaymentReceipt().get()); + } } } ``` @@ -629,16 +631,78 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1ContractorPaymentsContractorPaymentIdPdfHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `contractorPaymentId` | *String* | :heavy_check_mark: | The UUID of the contractor payment | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1ContractorPaymentsContractorPaymentUuidReceiptHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorPaymentUuid` | *String* | :heavy_check_mark: | The UUID of the contractor payment | ### Response -**[GetV1ContractorPaymentsContractorPaymentIdPdfResponse](../../models/operations/GetV1ContractorPaymentsContractorPaymentIdPdfResponse.md)** +**[GetV1ContractorPaymentsContractorPaymentUuidReceiptResponse](../../models/operations/GetV1ContractorPaymentsContractorPaymentUuidReceiptResponse.md)** ### Errors | Error Type | Status Code | Content Type | | --------------------------------- | --------------------------------- | --------------------------------- | | models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | \ No newline at end of file +| models/errors/APIException | 4XX, 5XX | \*/\* | + +## fund + +> 🚧 Demo action +> +> This action is only available in the Demo environment + +Simulate funding a contractor payment. Funding only occurs automatically in the production environment when bank transactions are generated. Use this action in the demo environment to transition a contractor payment's `status` from `Unfunded` to `Funded`. A `Funded` status is required for generating a contractor payment receipt. + +scope: `payrolls:run` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.operations.GetV1ContractorPaymentsContractorPaymentUuidFundHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetV1ContractorPaymentsContractorPaymentUuidFundResponse; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + GetV1ContractorPaymentsContractorPaymentUuidFundResponse res = sdk.contractorPayments().fund() + .xGustoAPIVersion(GetV1ContractorPaymentsContractorPaymentUuidFundHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .contractorPaymentUuid("") + .call(); + + if (res.contractorPayment().isPresent()) { + System.out.println(res.contractorPayment().get()); + } + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1ContractorPaymentsContractorPaymentUuidFundHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorPaymentUuid` | *String* | :heavy_check_mark: | The UUID of the contractor payment | + +### Response + +**[GetV1ContractorPaymentsContractorPaymentUuidFundResponse](../../models/operations/GetV1ContractorPaymentsContractorPaymentUuidFundResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/gusto_embedded/docs/sdks/contractors/README.md b/gusto_embedded/docs/sdks/contractors/README.md index 44960fe46..617200a93 100644 --- a/gusto_embedded/docs/sdks/contractors/README.md +++ b/gusto_embedded/docs/sdks/contractors/README.md @@ -4,13 +4,6 @@ ### Available Operations -* [list](#list) - Get contractors of a company -* [create](#create) - Create a contractor -* [get](#get) - Get a contractor -* [update](#update) - Update a contractor -* [delete](#delete) - Delete a contractor -* [getOnboardingStatus](#getonboardingstatus) - Get the contractor's onboarding status -* [updateOnboardingStatus](#updateonboardingstatus) - Change the contractor's onboarding status * [getAddress](#getaddress) - Get a contractor address * [updateAddress](#updateaddress) - Create or update a contractor's address * [getV1CompaniesCompanyIdContractorsPaymentDetails](#getv1companiescompanyidcontractorspaymentdetails) - List contractor payment details @@ -18,23 +11,30 @@ * [deleteV1ContractorsContractorUuidRehire](#deletev1contractorscontractoruuidrehire) - Cancel a pending contractor rehire * [postV1ContractorsContractorUuidTermination](#postv1contractorscontractoruuidtermination) - Schedule a contractor termination * [deleteV1ContractorsContractorUuidTermination](#deletev1contractorscontractoruuidtermination) - Cancel a pending contractor termination +* [get](#get) - Get a contractor +* [update](#update) - Update a contractor +* [delete](#delete) - Delete a contractor +* [list](#list) - Get contractors of a company +* [create](#create) - Create a contractor +* [getOnboardingStatus](#getonboardingstatus) - Get the contractor's onboarding status +* [updateOnboardingStatus](#updateonboardingstatus) - Change the contractor's onboarding status -## list +## getAddress -Get all contractors, active and inactive, individual and business, for a company. +The address of a contractor is used to determine certain tax information about them. Addresses are geocoded on create and update to ensure validity. scope: `contractors:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyUuidContractorsRequest; -import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyUuidContractorsResponse; +import com.gusto.embedded_api.models.operations.GetV1ContractorsContractorUuidAddressHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetV1ContractorsContractorUuidAddressResponse; import java.lang.Exception; public class Application { @@ -45,16 +45,13 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1CompaniesCompanyUuidContractorsRequest req = GetV1CompaniesCompanyUuidContractorsRequest.builder() - .companyUuid("") - .build(); - - GetV1CompaniesCompanyUuidContractorsResponse res = sdk.contractors().list() - .request(req) + GetV1ContractorsContractorUuidAddressResponse res = sdk.contractors().getAddress() + .xGustoAPIVersion(GetV1ContractorsContractorUuidAddressHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .contractorUuid("") .call(); - if (res.contractors().isPresent()) { - System.out.println(res.contractors().get()); + if (res.contractorAddress().isPresent()) { + System.out.println(res.contractorAddress().get()); } } } @@ -62,13 +59,14 @@ public class Application { ### Parameters -| Parameter | Type | Required | Description | -| --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | -| `request` | [GetV1CompaniesCompanyUuidContractorsRequest](../../models/operations/GetV1CompaniesCompanyUuidContractorsRequest.md) | :heavy_check_mark: | The request object to use for the request. | +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1ContractorsContractorUuidAddressHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | ### Response -**[GetV1CompaniesCompanyUuidContractorsResponse](../../models/operations/GetV1CompaniesCompanyUuidContractorsResponse.md)** +**[GetV1ContractorsContractorUuidAddressResponse](../../models/operations/GetV1ContractorsContractorUuidAddressResponse.md)** ### Errors @@ -77,25 +75,28 @@ public class Application { | models/errors/NotFoundErrorObject | 404 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## create +## updateAddress -Create an individual or business contractor. +The address of a contractor is used to determine certain tax information about them. Addresses are geocoded on create and update to ensure validity. -scope: `contractors:manage` +> 🚧 Contractors can only have one address. +> +> When a contractor is created, an address is created for them by default. Updating the address will replace the existing address. + +scope: `contractors:write` ### Example Usage: Basic - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.ContractorCreateRequestBody; -import com.gusto.embedded_api.models.components.ContractorCreateRequestBodyWageType; +import com.gusto.embedded_api.models.components.ContractorAddressUpdateBody; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyUuidContractorsHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyUuidContractorsResponse; +import com.gusto.embedded_api.models.operations.PutV1ContractorsContractorUuidAddressHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PutV1ContractorsContractorUuidAddressResponse; import java.lang.Exception; public class Application { @@ -106,35 +107,32 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostV1CompaniesCompanyUuidContractorsResponse res = sdk.contractors().create() - .xGustoAPIVersion(PostV1CompaniesCompanyUuidContractorsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .companyUuid("") - .contractorCreateRequestBody(ContractorCreateRequestBody.builder() - .wageType(ContractorCreateRequestBodyWageType.FIXED) - .startDate("2020-01-11") - .hourlyRate("40.0") + PutV1ContractorsContractorUuidAddressResponse res = sdk.contractors().updateAddress() + .xGustoAPIVersion(PutV1ContractorsContractorUuidAddressHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .contractorUuid("") + .contractorAddressUpdateBody(ContractorAddressUpdateBody.builder() + .version("56d00c178bc7393b2a206ed6a86afcb4") .build()) .call(); - if (res.contractor().isPresent()) { - System.out.println(res.contractor().get()); + if (res.contractorAddress().isPresent()) { + System.out.println(res.contractorAddress().get()); } } } ``` -### Example Usage: Business Contractor +### Example Usage: Example - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.ContractorCreateRequestBody; -import com.gusto.embedded_api.models.components.ContractorCreateRequestBodyWageType; +import com.gusto.embedded_api.models.components.ContractorAddressUpdateBody; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyUuidContractorsHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyUuidContractorsResponse; +import com.gusto.embedded_api.models.operations.PutV1ContractorsContractorUuidAddressHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PutV1ContractorsContractorUuidAddressResponse; import java.lang.Exception; public class Application { @@ -145,34 +143,37 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostV1CompaniesCompanyUuidContractorsResponse res = sdk.contractors().create() - .xGustoAPIVersion(PostV1CompaniesCompanyUuidContractorsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .companyUuid("") - .contractorCreateRequestBody(ContractorCreateRequestBody.builder() - .wageType(ContractorCreateRequestBodyWageType.FIXED) - .startDate("2020-01-11") - .hourlyRate("40.0") + PutV1ContractorsContractorUuidAddressResponse res = sdk.contractors().updateAddress() + .xGustoAPIVersion(PutV1ContractorsContractorUuidAddressHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .contractorUuid("") + .contractorAddressUpdateBody(ContractorAddressUpdateBody.builder() + .version("fe75bd065ff48b91c35fe8ff842f986c") + .street1("300 3rd Street") + .street2("") + .city("San Francisco") + .state("CA") + .zip("94107") .build()) .call(); - if (res.contractor().isPresent()) { - System.out.println(res.contractor().get()); + if (res.contractorAddress().isPresent()) { + System.out.println(res.contractorAddress().get()); } } } ``` -### Example Usage: Create a Business contractor +### Example Usage: Nested - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.*; +import com.gusto.embedded_api.models.components.ContractorAddressUpdateBody; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyUuidContractorsHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyUuidContractorsResponse; +import com.gusto.embedded_api.models.operations.PutV1ContractorsContractorUuidAddressHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PutV1ContractorsContractorUuidAddressResponse; import java.lang.Exception; public class Application { @@ -183,36 +184,32 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostV1CompaniesCompanyUuidContractorsResponse res = sdk.contractors().create() - .xGustoAPIVersion(PostV1CompaniesCompanyUuidContractorsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .companyUuid("") - .contractorCreateRequestBody(ContractorCreateRequestBody.builder() - .wageType(ContractorCreateRequestBodyWageType.FIXED) - .startDate("2020-04-01") - .type(ContractorCreateRequestBodyType.BUSINESS) - .businessName("Johnson-Johnson Contractors") + PutV1ContractorsContractorUuidAddressResponse res = sdk.contractors().updateAddress() + .xGustoAPIVersion(PutV1ContractorsContractorUuidAddressHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .contractorUuid("") + .contractorAddressUpdateBody(ContractorAddressUpdateBody.builder() + .version("56d00c178bc7393b2a206ed6a86afcb4") .build()) .call(); - if (res.contractor().isPresent()) { - System.out.println(res.contractor().get()); + if (res.contractorAddress().isPresent()) { + System.out.println(res.contractorAddress().get()); } } } ``` -### Example Usage: Create an Individual contractor +### Example Usage: Resource - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.ContractorCreateRequestBody; -import com.gusto.embedded_api.models.components.ContractorCreateRequestBodyWageType; +import com.gusto.embedded_api.models.components.ContractorAddressUpdateBody; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyUuidContractorsHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyUuidContractorsResponse; +import com.gusto.embedded_api.models.operations.PutV1ContractorsContractorUuidAddressHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PutV1ContractorsContractorUuidAddressResponse; import java.lang.Exception; public class Application { @@ -223,140 +220,297 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostV1CompaniesCompanyUuidContractorsResponse res = sdk.contractors().create() - .xGustoAPIVersion(PostV1CompaniesCompanyUuidContractorsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .companyUuid("") - .contractorCreateRequestBody(ContractorCreateRequestBody.builder() - .wageType(ContractorCreateRequestBodyWageType.FIXED) - .startDate("2020-04-01") - .selfOnboarding(true) - .email("johnson@johnson.com") - .firstName("Johnson") - .lastName("Johnson") - .workState("CA") + PutV1ContractorsContractorUuidAddressResponse res = sdk.contractors().updateAddress() + .xGustoAPIVersion(PutV1ContractorsContractorUuidAddressHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .contractorUuid("") + .contractorAddressUpdateBody(ContractorAddressUpdateBody.builder() + .version("56d00c178bc7393b2a206ed6a86afcb4") .build()) .call(); - if (res.contractor().isPresent()) { - System.out.println(res.contractor().get()); + if (res.contractorAddress().isPresent()) { + System.out.println(res.contractorAddress().get()); } } } ``` -### Example Usage: Individual Contractor - +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1ContractorsContractorUuidAddressHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | +| `contractorAddressUpdateBody` | [ContractorAddressUpdateBody](../../models/components/ContractorAddressUpdateBody.md) | :heavy_check_mark: | N/A | + +### Response + +**[PutV1ContractorsContractorUuidAddressResponse](../../models/operations/PutV1ContractorsContractorUuidAddressResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | + +## getV1CompaniesCompanyIdContractorsPaymentDetails + +Get payment details for contractors in a company. This endpoint returns a list of all contractors +associated with the specified company, including their payment methods and bank account details +if they are paid via direct deposit. + +For contractors paid by direct deposit, the response includes their bank account information +with sensitive data masked for security. The payment details also include information about +how their payments are split if they have multiple bank accounts configured. + +For contractors paid by check, only the basic payment method information is returned. + +### Response Details +- For direct deposit contractors: + - Bank account details (masked) + - Payment splits configuration + - Routing numbers + - Account types +- For check payments: + - Basic payment method designation + +### Common Use Cases +- Fetching contractor payment information for payroll processing +- Verifying contractor payment methods +- Reviewing payment split configurations + +`encrypted_account_number` is available only with the additional scope `contractor_payment_methods:read:account_numbers`. + +scope: `contractor_payment_methods:read` + +### Example Usage + + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.ContractorCreateRequestBody; -import com.gusto.embedded_api.models.components.ContractorCreateRequestBodyWageType; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyUuidContractorsHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyUuidContractorsResponse; +import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdContractorsPaymentDetailsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdContractorsPaymentDetailsResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + public static void main(String[] args) throws NotFoundErrorObject, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostV1CompaniesCompanyUuidContractorsResponse res = sdk.contractors().create() - .xGustoAPIVersion(PostV1CompaniesCompanyUuidContractorsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .companyUuid("") - .contractorCreateRequestBody(ContractorCreateRequestBody.builder() - .wageType(ContractorCreateRequestBodyWageType.FIXED) - .startDate("2020-01-11") - .hourlyRate("40.0") - .build()) + GetV1CompaniesCompanyIdContractorsPaymentDetailsResponse res = sdk.contractors().getV1CompaniesCompanyIdContractorsPaymentDetails() + .xGustoAPIVersion(GetV1CompaniesCompanyIdContractorsPaymentDetailsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyId("") .call(); - if (res.contractor().isPresent()) { - System.out.println(res.contractor().get()); + if (res.contractorPaymentDetailsList().isPresent()) { + System.out.println(res.contractorPaymentDetailsList().get()); } } } ``` -### Example Usage: Nested - -```java -package hello.world; +### Parameters -import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.ContractorCreateRequestBody; -import com.gusto.embedded_api.models.components.ContractorCreateRequestBodyWageType; -import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company. This identifies the company whose contractor payment details you want to retrieve. | +| `contractorUuid` | *Optional\* | :heavy_minus_sign: | Optional filter to get payment details for a specific contractor. When provided, the response will only include payment details for this contractor. | +| `contractorPaymentGroupUuid` | *Optional\* | :heavy_minus_sign: | 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. | + +### Response + +**[GetV1CompaniesCompanyIdContractorsPaymentDetailsResponse](../../models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | + +## postV1ContractorsContractorUuidRehire + +## Purpose +Schedules a contractor rehire for a given date. Creates a new employment record for the contractor. + +## Prerequisites +Before calling this endpoint: +1. The contractor must be inactive (previously dismissed) +2. The contractor must not already have an upcoming employment + +## Related webhooks +- `contractor.reactivated`: Fires when the contractor becomes active again (on or after start_date) + +scope: `contractors:write` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api.GustoEmbedded; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyUuidContractorsHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyUuidContractorsResponse; +import com.gusto.embedded_api.models.operations.*; import java.lang.Exception; +import java.time.LocalDate; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + public static void main(String[] args) throws UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostV1CompaniesCompanyUuidContractorsResponse res = sdk.contractors().create() - .xGustoAPIVersion(PostV1CompaniesCompanyUuidContractorsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .companyUuid("") - .contractorCreateRequestBody(ContractorCreateRequestBody.builder() - .wageType(ContractorCreateRequestBodyWageType.FIXED) - .startDate("2020-01-11") - .hourlyRate("40.0") + PostV1ContractorsContractorUuidRehireResponse res = sdk.contractors().postV1ContractorsContractorUuidRehire() + .xGustoAPIVersion(PostV1ContractorsContractorUuidRehireHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .contractorUuid("") + .requestBody(PostV1ContractorsContractorUuidRehireRequestBody.builder() + .startDate(LocalDate.parse("2025-07-01")) .build()) .call(); - if (res.contractor().isPresent()) { - System.out.println(res.contractor().get()); - } + // handle response } } ``` -### Example Usage: Resource - +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1ContractorsContractorUuidRehireHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | +| `requestBody` | [Optional\](../../models/operations/PostV1ContractorsContractorUuidRehireRequestBody.md) | :heavy_minus_sign: | N/A | + +### Response + +**[PostV1ContractorsContractorUuidRehireResponse](../../models/operations/PostV1ContractorsContractorUuidRehireResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | + +## deleteV1ContractorsContractorUuidRehire + +## Purpose +Cancels a pending contractor rehire. For future-dated rehires, cancellation is available anytime before the date. +For past-dated rehires, cancellation is only available within the 2-day grace period. + +## Prerequisites +Before calling this endpoint: +- The contractor must have a pending rehire (upcoming employment) + +## Related webhooks +- `contractor.deactivated`: Fires when the contractor returns to inactive state after cancellation + +scope: `contractors:write` + +### Example Usage + + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.ContractorCreateRequestBody; -import com.gusto.embedded_api.models.components.ContractorCreateRequestBodyWageType; -import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyUuidContractorsHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyUuidContractorsResponse; +import com.gusto.embedded_api.models.operations.DeleteV1ContractorsContractorUuidRehireHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.DeleteV1ContractorsContractorUuidRehireResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + public static void main(String[] args) throws UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostV1CompaniesCompanyUuidContractorsResponse res = sdk.contractors().create() - .xGustoAPIVersion(PostV1CompaniesCompanyUuidContractorsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .companyUuid("") - .contractorCreateRequestBody(ContractorCreateRequestBody.builder() - .wageType(ContractorCreateRequestBodyWageType.FIXED) - .startDate("2020-01-11") - .hourlyRate("40.0") + DeleteV1ContractorsContractorUuidRehireResponse res = sdk.contractors().deleteV1ContractorsContractorUuidRehire() + .xGustoAPIVersion(DeleteV1ContractorsContractorUuidRehireHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .contractorUuid("") + .call(); + + // handle response + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1ContractorsContractorUuidRehireHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | + +### Response + +**[DeleteV1ContractorsContractorUuidRehireResponse](../../models/operations/DeleteV1ContractorsContractorUuidRehireResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | + +## postV1ContractorsContractorUuidTermination + +## Purpose +Schedules a contractor dismissal for a given date. Supports both immediate (past dates) and future-dated dismissals. + +## Prerequisites +Before calling this endpoint: +1. The contractor must be active (no existing pending dismissal) +2. The contractor must have a current employment + +## Related webhooks +- `contractor.deactivated`: Fires when the contractor becomes inactive (on or after end_date) + +scope: `contractors:write` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.operations.*; +import java.lang.Exception; +import java.time.LocalDate; + +public class Application { + + public static void main(String[] args) throws UnprocessableEntityError, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + PostV1ContractorsContractorUuidTerminationResponse res = sdk.contractors().postV1ContractorsContractorUuidTermination() + .xGustoAPIVersion(PostV1ContractorsContractorUuidTerminationHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .contractorUuid("") + .requestBody(PostV1ContractorsContractorUuidTerminationRequestBody.builder() + .endDate(LocalDate.parse("2025-06-15")) .build()) .call(); - if (res.contractor().isPresent()) { - System.out.println(res.contractor().get()); - } + // handle response } } ``` @@ -365,19 +519,81 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1CompaniesCompanyUuidContractorsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | -| `contractorCreateRequestBody` | [ContractorCreateRequestBody](../../models/components/ContractorCreateRequestBody.md) | :heavy_check_mark: | N/A | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1ContractorsContractorUuidTerminationHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | +| `requestBody` | [Optional\](../../models/operations/PostV1ContractorsContractorUuidTerminationRequestBody.md) | :heavy_minus_sign: | N/A | ### Response -**[PostV1CompaniesCompanyUuidContractorsResponse](../../models/operations/PostV1CompaniesCompanyUuidContractorsResponse.md)** +**[PostV1ContractorsContractorUuidTerminationResponse](../../models/operations/PostV1ContractorsContractorUuidTerminationResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | + +## deleteV1ContractorsContractorUuidTermination + +## Purpose +Cancels a pending contractor dismissal. For future-dated dismissals, cancellation is available anytime before the date. +For past-dated dismissals, cancellation is only available within the 2-day grace period. + +## Prerequisites +Before calling this endpoint: +- The contractor must have a pending dismissal (scheduled or within the grace period) + +## Related webhooks +- `contractor.reactivated`: Fires when the contractor becomes active again after cancellation + +scope: `contractors:write` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.operations.DeleteV1ContractorsContractorUuidTerminationHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.DeleteV1ContractorsContractorUuidTerminationResponse; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws UnprocessableEntityError, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + DeleteV1ContractorsContractorUuidTerminationResponse res = sdk.contractors().deleteV1ContractorsContractorUuidTermination() + .xGustoAPIVersion(DeleteV1ContractorsContractorUuidTerminationHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .contractorUuid("") + .call(); + + // handle response + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1ContractorsContractorUuidTerminationHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | + +### Response + +**[DeleteV1ContractorsContractorUuidTerminationResponse](../../models/operations/DeleteV1ContractorsContractorUuidTerminationResponse.md)** ### Errors | Error Type | Status Code | Content Type | | -------------------------------------- | -------------------------------------- | -------------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | @@ -832,53 +1048,22 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## getOnboardingStatus - -Retrieves a contractor's onboarding status. The data returned helps inform the required onboarding steps and respective completion status. - -## onboarding_status - -### Admin-facilitated onboarding -| onboarding_status | Description | -|:------------------|------------:| -| `admin_onboarding_incomplete` | Admin needs to enter basic information about the contractor. | -| `admin_onboarding_review` | All information has been completed and admin needs to confirm onboarding. | -| `onboarding_completed` | Contractor has been fully onboarded and verified. | - -### Contractor self-onboarding - -| onboarding_status | Description | -| --- | ----------- | -| `admin_onboarding_incomplete` | Admin needs to enter basic information about the contractor. | -| `self_onboarding_not_invited` | Admin has the intention to invite the contractor to self-onboard (e.g., marking a checkbox), but the system has not yet sent the invitation. | -| `self_onboarding_invited` | Contractor has been sent an invitation to self-onboard. | -| `self_onboarding_started` | Contractor has started the self-onboarding process. | -| `self_onboarding_review` | Admin needs to review contractors's entered information and confirm onboarding. | -| `onboarding_completed` | Contractor has been fully onboarded and verified. | - -## onboarding_steps +## list -| onboarding_steps | Requirement(s) to be completed | -|:-----------------|-------------------------------:| -| `basic_details` | Add individual contractor's first name, last name, social security number or Business name and EIN depending on the contractor type | -| `add_address` | Add contractor address. | -| `compensation_details` | Add contractor compensation. | -| `payment_details` | (optional) Set up contractor's direct deposit or set to check. | -| `sign_documents` | Contractor forms (e.g., W9) are generated & signed. | -| `file_new_hire_report` | Contractor new hire report is generated. | +Get all contractors, active and inactive, individual and business, for a company. scope: `contractors:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.operations.GetV1ContractorsContractorUuidOnboardingStatusHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.GetV1ContractorsContractorUuidOnboardingStatusResponse; +import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyUuidContractorsRequest; +import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyUuidContractorsResponse; import java.lang.Exception; public class Application { @@ -889,13 +1074,16 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1ContractorsContractorUuidOnboardingStatusResponse res = sdk.contractors().getOnboardingStatus() - .xGustoAPIVersion(GetV1ContractorsContractorUuidOnboardingStatusHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .contractorUuid("") + GetV1CompaniesCompanyUuidContractorsRequest req = GetV1CompaniesCompanyUuidContractorsRequest.builder() + .companyUuid("") + .build(); + + GetV1CompaniesCompanyUuidContractorsResponse res = sdk.contractors().list() + .request(req) .call(); - if (res.contractorOnboardingStatus().isPresent()) { - System.out.println(res.contractorOnboardingStatus().get()); + if (res.contractors().isPresent()) { + System.out.println(res.contractors().get()); } } } @@ -903,14 +1091,13 @@ public class Application { ### Parameters -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1ContractorsContractorUuidOnboardingStatusHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | +| Parameter | Type | Required | Description | +| --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | +| `request` | [GetV1CompaniesCompanyUuidContractorsRequest](../../models/operations/GetV1CompaniesCompanyUuidContractorsRequest.md) | :heavy_check_mark: | The request object to use for the request. | ### Response -**[GetV1ContractorsContractorUuidOnboardingStatusResponse](../../models/operations/GetV1ContractorsContractorUuidOnboardingStatusResponse.md)** +**[GetV1CompaniesCompanyUuidContractorsResponse](../../models/operations/GetV1CompaniesCompanyUuidContractorsResponse.md)** ### Errors @@ -919,146 +1106,25 @@ public class Application { | models/errors/NotFoundErrorObject | 404 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## updateOnboardingStatus - -Updates a contractor's onboarding status. - -Below is a list of valid onboarding status changes depending on the intended action to be performed on behalf of the contractor. +## create -| Action | current onboarding_status | new onboarding_status | -|:------------------|:------------:|----------:| -| Mark a contractor as self-onboarding | `admin_onboarding_incomplete` | `self_onboarding_not_invited` | -| Invite a contractor to self-onboard | `admin_onboarding_incomplete` or `self_onboarding_not_invited` | `self_onboarding_invited` | -| Cancel a contractor's self-onboarding | `self_onboarding_invited` or `self_onboarding_not_invited` | `admin_onboarding_incomplete` | -| Review a contractor's self-onboarded info | `self_onboarding_started` | `self_onboarding_review` | -| Finish a contractor's onboarding | `admin_onboarding_review` or `self_onboarding_review` | `onboarding_completed` | +Create an individual or business contractor. -scope: `contractors:write` +scope: `contractors:manage` ### Example Usage: Basic - -```java -package hello.world; - -import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.ContractorOnboardingStatusUpdateRequestBody; -import com.gusto.embedded_api.models.components.ContractorOnboardingStatusUpdateRequestBodyOnboardingStatus; -import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PutV1ContractorsContractorUuidOnboardingStatusHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PutV1ContractorsContractorUuidOnboardingStatusResponse; -import java.lang.Exception; - -public class Application { - - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { - - GustoEmbedded sdk = GustoEmbedded.builder() - .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) - .build(); - - PutV1ContractorsContractorUuidOnboardingStatusResponse res = sdk.contractors().updateOnboardingStatus() - .xGustoAPIVersion(PutV1ContractorsContractorUuidOnboardingStatusHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .contractorUuid("") - .contractorOnboardingStatusUpdateRequestBody(ContractorOnboardingStatusUpdateRequestBody.builder() - .onboardingStatus(ContractorOnboardingStatusUpdateRequestBodyOnboardingStatus.ONBOARDING_COMPLETED) - .build()) - .call(); - - if (res.contractorOnboardingStatus().isPresent()) { - System.out.println(res.contractorOnboardingStatus().get()); - } - } -} -``` -### Example Usage: Example - - -```java -package hello.world; - -import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.ContractorOnboardingStatusUpdateRequestBody; -import com.gusto.embedded_api.models.components.ContractorOnboardingStatusUpdateRequestBodyOnboardingStatus; -import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PutV1ContractorsContractorUuidOnboardingStatusHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PutV1ContractorsContractorUuidOnboardingStatusResponse; -import java.lang.Exception; - -public class Application { - - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { - - GustoEmbedded sdk = GustoEmbedded.builder() - .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) - .build(); - - PutV1ContractorsContractorUuidOnboardingStatusResponse res = sdk.contractors().updateOnboardingStatus() - .xGustoAPIVersion(PutV1ContractorsContractorUuidOnboardingStatusHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .contractorUuid("") - .contractorOnboardingStatusUpdateRequestBody(ContractorOnboardingStatusUpdateRequestBody.builder() - .onboardingStatus(ContractorOnboardingStatusUpdateRequestBodyOnboardingStatus.ONBOARDING_COMPLETED) - .build()) - .call(); - - if (res.contractorOnboardingStatus().isPresent()) { - System.out.println(res.contractorOnboardingStatus().get()); - } - } -} -``` -### Example Usage: Nested - - -```java -package hello.world; - -import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.ContractorOnboardingStatusUpdateRequestBody; -import com.gusto.embedded_api.models.components.ContractorOnboardingStatusUpdateRequestBodyOnboardingStatus; -import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PutV1ContractorsContractorUuidOnboardingStatusHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PutV1ContractorsContractorUuidOnboardingStatusResponse; -import java.lang.Exception; - -public class Application { - - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { - - GustoEmbedded sdk = GustoEmbedded.builder() - .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) - .build(); - - PutV1ContractorsContractorUuidOnboardingStatusResponse res = sdk.contractors().updateOnboardingStatus() - .xGustoAPIVersion(PutV1ContractorsContractorUuidOnboardingStatusHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .contractorUuid("") - .contractorOnboardingStatusUpdateRequestBody(ContractorOnboardingStatusUpdateRequestBody.builder() - .onboardingStatus(ContractorOnboardingStatusUpdateRequestBodyOnboardingStatus.ONBOARDING_COMPLETED) - .build()) - .call(); - - if (res.contractorOnboardingStatus().isPresent()) { - System.out.println(res.contractorOnboardingStatus().get()); - } - } -} -``` -### Example Usage: Resource - - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.ContractorOnboardingStatusUpdateRequestBody; -import com.gusto.embedded_api.models.components.ContractorOnboardingStatusUpdateRequestBodyOnboardingStatus; +import com.gusto.embedded_api.models.components.ContractorCreateRequestBody; +import com.gusto.embedded_api.models.components.ContractorCreateRequestBodyWageType; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PutV1ContractorsContractorUuidOnboardingStatusHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PutV1ContractorsContractorUuidOnboardingStatusResponse; +import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyUuidContractorsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyUuidContractorsResponse; import java.lang.Exception; public class Application { @@ -1069,119 +1135,113 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1ContractorsContractorUuidOnboardingStatusResponse res = sdk.contractors().updateOnboardingStatus() - .xGustoAPIVersion(PutV1ContractorsContractorUuidOnboardingStatusHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .contractorUuid("") - .contractorOnboardingStatusUpdateRequestBody(ContractorOnboardingStatusUpdateRequestBody.builder() - .onboardingStatus(ContractorOnboardingStatusUpdateRequestBodyOnboardingStatus.ONBOARDING_COMPLETED) - .build()) - .call(); - - if (res.contractorOnboardingStatus().isPresent()) { - System.out.println(res.contractorOnboardingStatus().get()); - } - } -} -``` - -### Parameters - -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1ContractorsContractorUuidOnboardingStatusHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | -| `contractorOnboardingStatusUpdateRequestBody` | [ContractorOnboardingStatusUpdateRequestBody](../../models/components/ContractorOnboardingStatusUpdateRequestBody.md) | :heavy_check_mark: | N/A | - -### Response - -**[PutV1ContractorsContractorUuidOnboardingStatusResponse](../../models/operations/PutV1ContractorsContractorUuidOnboardingStatusResponse.md)** - -### Errors - -| Error Type | Status Code | Content Type | -| -------------------------------------- | -------------------------------------- | -------------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/UnprocessableEntityError | 422 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | - -## getAddress - -The address of a contractor is used to determine certain tax information about them. Addresses are geocoded on create and update to ensure validity. - -scope: `contractors:read` + PostV1CompaniesCompanyUuidContractorsResponse res = sdk.contractors().create() + .xGustoAPIVersion(PostV1CompaniesCompanyUuidContractorsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyUuid("") + .contractorCreateRequestBody(ContractorCreateRequestBody.builder() + .wageType(ContractorCreateRequestBodyWageType.FIXED) + .startDate("2020-01-11") + .hourlyRate("40.0") + .build()) + .call(); -### Example Usage + if (res.contractor().isPresent()) { + System.out.println(res.contractor().get()); + } + } +} +``` +### Example Usage: Business Contractor - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.components.ContractorCreateRequestBody; +import com.gusto.embedded_api.models.components.ContractorCreateRequestBodyWageType; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.operations.GetV1ContractorsContractorUuidAddressHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.GetV1ContractorsContractorUuidAddressResponse; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyUuidContractorsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyUuidContractorsResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, Exception { + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1ContractorsContractorUuidAddressResponse res = sdk.contractors().getAddress() - .xGustoAPIVersion(GetV1ContractorsContractorUuidAddressHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .contractorUuid("") + PostV1CompaniesCompanyUuidContractorsResponse res = sdk.contractors().create() + .xGustoAPIVersion(PostV1CompaniesCompanyUuidContractorsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyUuid("") + .contractorCreateRequestBody(ContractorCreateRequestBody.builder() + .wageType(ContractorCreateRequestBodyWageType.FIXED) + .startDate("2020-01-11") + .hourlyRate("40.0") + .build()) .call(); - if (res.contractorAddress().isPresent()) { - System.out.println(res.contractorAddress().get()); + if (res.contractor().isPresent()) { + System.out.println(res.contractor().get()); } } } ``` +### Example Usage: Create a Business contractor -### Parameters - -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1ContractorsContractorUuidAddressHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | - -### Response - -**[GetV1ContractorsContractorUuidAddressResponse](../../models/operations/GetV1ContractorsContractorUuidAddressResponse.md)** - -### Errors + +```java +package hello.world; -| Error Type | Status Code | Content Type | -| --------------------------------- | --------------------------------- | --------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | +import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.components.*; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyUuidContractorsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyUuidContractorsResponse; +import java.lang.Exception; -## updateAddress +public class Application { -The address of a contractor is used to determine certain tax information about them. Addresses are geocoded on create and update to ensure validity. + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { -> 🚧 Contractors can only have one address. -> -> When a contractor is created, an address is created for them by default. Updating the address will replace the existing address. + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); -scope: `contractors:write` + PostV1CompaniesCompanyUuidContractorsResponse res = sdk.contractors().create() + .xGustoAPIVersion(PostV1CompaniesCompanyUuidContractorsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyUuid("") + .contractorCreateRequestBody(ContractorCreateRequestBody.builder() + .wageType(ContractorCreateRequestBodyWageType.FIXED) + .startDate("2020-04-01") + .type(ContractorCreateRequestBodyType.BUSINESS) + .businessName("Johnson-Johnson Contractors") + .build()) + .call(); -### Example Usage: Basic + if (res.contractor().isPresent()) { + System.out.println(res.contractor().get()); + } + } +} +``` +### Example Usage: Create an Individual contractor - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.ContractorAddressUpdateBody; +import com.gusto.embedded_api.models.components.ContractorCreateRequestBody; +import com.gusto.embedded_api.models.components.ContractorCreateRequestBodyWageType; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PutV1ContractorsContractorUuidAddressHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PutV1ContractorsContractorUuidAddressResponse; +import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyUuidContractorsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyUuidContractorsResponse; import java.lang.Exception; public class Application { @@ -1192,32 +1252,39 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1ContractorsContractorUuidAddressResponse res = sdk.contractors().updateAddress() - .xGustoAPIVersion(PutV1ContractorsContractorUuidAddressHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .contractorUuid("") - .contractorAddressUpdateBody(ContractorAddressUpdateBody.builder() - .version("56d00c178bc7393b2a206ed6a86afcb4") + PostV1CompaniesCompanyUuidContractorsResponse res = sdk.contractors().create() + .xGustoAPIVersion(PostV1CompaniesCompanyUuidContractorsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyUuid("") + .contractorCreateRequestBody(ContractorCreateRequestBody.builder() + .wageType(ContractorCreateRequestBodyWageType.FIXED) + .startDate("2020-04-01") + .selfOnboarding(true) + .email("johnson@johnson.com") + .firstName("Johnson") + .lastName("Johnson") + .workState("CA") .build()) .call(); - if (res.contractorAddress().isPresent()) { - System.out.println(res.contractorAddress().get()); + if (res.contractor().isPresent()) { + System.out.println(res.contractor().get()); } } } ``` -### Example Usage: Example +### Example Usage: Individual Contractor - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.ContractorAddressUpdateBody; +import com.gusto.embedded_api.models.components.ContractorCreateRequestBody; +import com.gusto.embedded_api.models.components.ContractorCreateRequestBodyWageType; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PutV1ContractorsContractorUuidAddressHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PutV1ContractorsContractorUuidAddressResponse; +import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyUuidContractorsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyUuidContractorsResponse; import java.lang.Exception; public class Application { @@ -1228,37 +1295,35 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1ContractorsContractorUuidAddressResponse res = sdk.contractors().updateAddress() - .xGustoAPIVersion(PutV1ContractorsContractorUuidAddressHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .contractorUuid("") - .contractorAddressUpdateBody(ContractorAddressUpdateBody.builder() - .version("fe75bd065ff48b91c35fe8ff842f986c") - .street1("300 3rd Street") - .street2("") - .city("San Francisco") - .state("CA") - .zip("94107") + PostV1CompaniesCompanyUuidContractorsResponse res = sdk.contractors().create() + .xGustoAPIVersion(PostV1CompaniesCompanyUuidContractorsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyUuid("") + .contractorCreateRequestBody(ContractorCreateRequestBody.builder() + .wageType(ContractorCreateRequestBodyWageType.FIXED) + .startDate("2020-01-11") + .hourlyRate("40.0") .build()) .call(); - if (res.contractorAddress().isPresent()) { - System.out.println(res.contractorAddress().get()); + if (res.contractor().isPresent()) { + System.out.println(res.contractor().get()); } } } ``` ### Example Usage: Nested - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.ContractorAddressUpdateBody; +import com.gusto.embedded_api.models.components.ContractorCreateRequestBody; +import com.gusto.embedded_api.models.components.ContractorCreateRequestBodyWageType; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PutV1ContractorsContractorUuidAddressHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PutV1ContractorsContractorUuidAddressResponse; +import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyUuidContractorsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyUuidContractorsResponse; import java.lang.Exception; public class Application { @@ -1269,32 +1334,35 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1ContractorsContractorUuidAddressResponse res = sdk.contractors().updateAddress() - .xGustoAPIVersion(PutV1ContractorsContractorUuidAddressHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .contractorUuid("") - .contractorAddressUpdateBody(ContractorAddressUpdateBody.builder() - .version("56d00c178bc7393b2a206ed6a86afcb4") + PostV1CompaniesCompanyUuidContractorsResponse res = sdk.contractors().create() + .xGustoAPIVersion(PostV1CompaniesCompanyUuidContractorsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyUuid("") + .contractorCreateRequestBody(ContractorCreateRequestBody.builder() + .wageType(ContractorCreateRequestBodyWageType.FIXED) + .startDate("2020-01-11") + .hourlyRate("40.0") .build()) .call(); - if (res.contractorAddress().isPresent()) { - System.out.println(res.contractorAddress().get()); + if (res.contractor().isPresent()) { + System.out.println(res.contractor().get()); } } } ``` ### Example Usage: Resource - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.ContractorAddressUpdateBody; +import com.gusto.embedded_api.models.components.ContractorCreateRequestBody; +import com.gusto.embedded_api.models.components.ContractorCreateRequestBodyWageType; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PutV1ContractorsContractorUuidAddressHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PutV1ContractorsContractorUuidAddressResponse; +import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyUuidContractorsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyUuidContractorsResponse; import java.lang.Exception; public class Application { @@ -1305,16 +1373,18 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1ContractorsContractorUuidAddressResponse res = sdk.contractors().updateAddress() - .xGustoAPIVersion(PutV1ContractorsContractorUuidAddressHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .contractorUuid("") - .contractorAddressUpdateBody(ContractorAddressUpdateBody.builder() - .version("56d00c178bc7393b2a206ed6a86afcb4") + PostV1CompaniesCompanyUuidContractorsResponse res = sdk.contractors().create() + .xGustoAPIVersion(PostV1CompaniesCompanyUuidContractorsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyUuid("") + .contractorCreateRequestBody(ContractorCreateRequestBody.builder() + .wageType(ContractorCreateRequestBodyWageType.FIXED) + .startDate("2020-01-11") + .hourlyRate("40.0") .build()) .call(); - if (res.contractorAddress().isPresent()) { - System.out.println(res.contractorAddress().get()); + if (res.contractor().isPresent()) { + System.out.println(res.contractor().get()); } } } @@ -1324,13 +1394,13 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1ContractorsContractorUuidAddressHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | -| `contractorAddressUpdateBody` | [ContractorAddressUpdateBody](../../models/components/ContractorAddressUpdateBody.md) | :heavy_check_mark: | N/A | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1CompaniesCompanyUuidContractorsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | +| `contractorCreateRequestBody` | [ContractorCreateRequestBody](../../models/components/ContractorCreateRequestBody.md) | :heavy_check_mark: | N/A | ### Response -**[PutV1ContractorsContractorUuidAddressResponse](../../models/operations/PutV1ContractorsContractorUuidAddressResponse.md)** +**[PostV1CompaniesCompanyUuidContractorsResponse](../../models/operations/PostV1CompaniesCompanyUuidContractorsResponse.md)** ### Errors @@ -1340,46 +1410,53 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## getV1CompaniesCompanyIdContractorsPaymentDetails +## getOnboardingStatus -Get payment details for contractors in a company. This endpoint returns a list of all contractors -associated with the specified company, including their payment methods and bank account details -if they are paid via direct deposit. +Retrieves a contractor's onboarding status. The data returned helps inform the required onboarding steps and respective completion status. -For contractors paid by direct deposit, the response includes their bank account information -with sensitive data masked for security. The payment details also include information about -how their payments are split if they have multiple bank accounts configured. +## onboarding_status -For contractors paid by check, only the basic payment method information is returned. +### Admin-facilitated onboarding +| onboarding_status | Description | +|:------------------|------------:| +| `admin_onboarding_incomplete` | Admin needs to enter basic information about the contractor. | +| `admin_onboarding_review` | All information has been completed and admin needs to confirm onboarding. | +| `onboarding_completed` | Contractor has been fully onboarded and verified. | -### Response Details -- For direct deposit contractors: - - Bank account details (masked) - - Payment splits configuration - - Routing numbers - - Account types -- For check payments: - - Basic payment method designation +### Contractor self-onboarding -### Common Use Cases -- Fetching contractor payment information for payroll processing -- Verifying contractor payment methods -- Reviewing payment split configurations +| onboarding_status | Description | +| --- | ----------- | +| `admin_onboarding_incomplete` | Admin needs to enter basic information about the contractor. | +| `self_onboarding_not_invited` | Admin has the intention to invite the contractor to self-onboard (e.g., marking a checkbox), but the system has not yet sent the invitation. | +| `self_onboarding_invited` | Contractor has been sent an invitation to self-onboard. | +| `self_onboarding_started` | Contractor has started the self-onboarding process. | +| `self_onboarding_review` | Admin needs to review contractors's entered information and confirm onboarding. | +| `onboarding_completed` | Contractor has been fully onboarded and verified. | -`encrypted_account_number` is available only with the additional scope `contractor_payment_methods:read:account_numbers`. +## onboarding_steps -scope: `contractor_payment_methods:read` +| onboarding_steps | Requirement(s) to be completed | +|:-----------------|-------------------------------:| +| `basic_details` | Add individual contractor's first name, last name, social security number or Business name and EIN depending on the contractor type | +| `add_address` | Add contractor address. | +| `compensation_details` | Add contractor compensation. | +| `payment_details` | (optional) Set up contractor's direct deposit or set to check. | +| `sign_documents` | Contractor forms (e.g., W9) are generated & signed. | +| `file_new_hire_report` | Contractor new hire report is generated. | + +scope: `contractors:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdContractorsPaymentDetailsHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdContractorsPaymentDetailsResponse; +import com.gusto.embedded_api.models.operations.GetV1ContractorsContractorUuidOnboardingStatusHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetV1ContractorsContractorUuidOnboardingStatusResponse; import java.lang.Exception; public class Application { @@ -1390,13 +1467,13 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1CompaniesCompanyIdContractorsPaymentDetailsResponse res = sdk.contractors().getV1CompaniesCompanyIdContractorsPaymentDetails() - .companyId("") - .xGustoAPIVersion(GetV1CompaniesCompanyIdContractorsPaymentDetailsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + GetV1ContractorsContractorUuidOnboardingStatusResponse res = sdk.contractors().getOnboardingStatus() + .xGustoAPIVersion(GetV1ContractorsContractorUuidOnboardingStatusHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .contractorUuid("") .call(); - if (res.contractorPaymentDetailsList().isPresent()) { - System.out.println(res.contractorPaymentDetailsList().get()); + if (res.contractorOnboardingStatus().isPresent()) { + System.out.println(res.contractorOnboardingStatus().get()); } } } @@ -1406,14 +1483,12 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company. This identifies the company whose contractor payment details you want to retrieve. | -| `contractorUuid` | *Optional\* | :heavy_minus_sign: | Optional filter to get payment details for a specific contractor. When provided, the response will only include payment details for this contractor. | -| `contractorPaymentGroupUuid` | *Optional\* | :heavy_minus_sign: | 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. | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1ContractorsContractorUuidOnboardingStatusHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | ### Response -**[GetV1CompaniesCompanyIdContractorsPaymentDetailsResponse](../../models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsResponse.md)** +**[GetV1ContractorsContractorUuidOnboardingStatusResponse](../../models/operations/GetV1ContractorsContractorUuidOnboardingStatusResponse.md)** ### Errors @@ -1422,237 +1497,167 @@ public class Application { | models/errors/NotFoundErrorObject | 404 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## postV1ContractorsContractorUuidRehire +## updateOnboardingStatus -## Purpose -Schedules a contractor rehire for a given date. Creates a new employment record for the contractor. +Updates a contractor's onboarding status. -## Prerequisites -Before calling this endpoint: -1. The contractor must be inactive (previously dismissed) -2. The contractor must not already have an upcoming employment +Below is a list of valid onboarding status changes depending on the intended action to be performed on behalf of the contractor. -## Related webhooks -- `contractor.reactivated`: Fires when the contractor becomes active again (on or after start_date) +| Action | current onboarding_status | new onboarding_status | +|:------------------|:------------:|----------:| +| Mark a contractor as self-onboarding | `admin_onboarding_incomplete` | `self_onboarding_not_invited` | +| Invite a contractor to self-onboard | `admin_onboarding_incomplete` or `self_onboarding_not_invited` | `self_onboarding_invited` | +| Cancel a contractor's self-onboarding | `self_onboarding_invited` or `self_onboarding_not_invited` | `admin_onboarding_incomplete` | +| Review a contractor's self-onboarded info | `self_onboarding_started` | `self_onboarding_review` | +| Finish a contractor's onboarding | `admin_onboarding_review` or `self_onboarding_review` | `onboarding_completed` | scope: `contractors:write` -### Example Usage +### Example Usage: Basic - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.operations.*; +import com.gusto.embedded_api.models.components.ContractorOnboardingStatusUpdateRequestBody; +import com.gusto.embedded_api.models.components.ContractorOnboardingStatusUpdateRequestBodyOnboardingStatus; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.operations.PutV1ContractorsContractorUuidOnboardingStatusHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PutV1ContractorsContractorUuidOnboardingStatusResponse; import java.lang.Exception; -import java.time.LocalDate; public class Application { - public static void main(String[] args) throws Exception { + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostV1ContractorsContractorUuidRehireResponse res = sdk.contractors().postV1ContractorsContractorUuidRehire() + PutV1ContractorsContractorUuidOnboardingStatusResponse res = sdk.contractors().updateOnboardingStatus() + .xGustoAPIVersion(PutV1ContractorsContractorUuidOnboardingStatusHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .contractorUuid("") - .xGustoAPIVersion(PostV1ContractorsContractorUuidRehireHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .requestBody(PostV1ContractorsContractorUuidRehireRequestBody.builder() - .startDate(LocalDate.parse("2025-07-01")) + .contractorOnboardingStatusUpdateRequestBody(ContractorOnboardingStatusUpdateRequestBody.builder() + .onboardingStatus(ContractorOnboardingStatusUpdateRequestBodyOnboardingStatus.ONBOARDING_COMPLETED) .build()) .call(); - // handle response + if (res.contractorOnboardingStatus().isPresent()) { + System.out.println(res.contractorOnboardingStatus().get()); + } } } ``` +### Example Usage: Example -### Parameters - -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1ContractorsContractorUuidRehireHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `requestBody` | [Optional\](../../models/operations/PostV1ContractorsContractorUuidRehireRequestBody.md) | :heavy_minus_sign: | N/A | - -### Response - -**[PostV1ContractorsContractorUuidRehireResponse](../../models/operations/PostV1ContractorsContractorUuidRehireResponse.md)** - -### Errors - -| Error Type | Status Code | Content Type | -| -------------------------- | -------------------------- | -------------------------- | -| models/errors/APIException | 4XX, 5XX | \*/\* | - -## deleteV1ContractorsContractorUuidRehire - -## Purpose -Cancels a pending contractor rehire. For future-dated rehires, cancellation is available anytime before the date. -For past-dated rehires, cancellation is only available within the 2-day grace period. - -## Prerequisites -Before calling this endpoint: -- The contractor must have a pending rehire (upcoming employment) - -## Related webhooks -- `contractor.deactivated`: Fires when the contractor returns to inactive state after cancellation - -scope: `contractors:write` - -### Example Usage - - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.operations.DeleteV1ContractorsContractorUuidRehireHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.DeleteV1ContractorsContractorUuidRehireResponse; +import com.gusto.embedded_api.models.components.ContractorOnboardingStatusUpdateRequestBody; +import com.gusto.embedded_api.models.components.ContractorOnboardingStatusUpdateRequestBodyOnboardingStatus; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.operations.PutV1ContractorsContractorUuidOnboardingStatusHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PutV1ContractorsContractorUuidOnboardingStatusResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws Exception { + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - DeleteV1ContractorsContractorUuidRehireResponse res = sdk.contractors().deleteV1ContractorsContractorUuidRehire() + PutV1ContractorsContractorUuidOnboardingStatusResponse res = sdk.contractors().updateOnboardingStatus() + .xGustoAPIVersion(PutV1ContractorsContractorUuidOnboardingStatusHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .contractorUuid("") - .xGustoAPIVersion(DeleteV1ContractorsContractorUuidRehireHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .contractorOnboardingStatusUpdateRequestBody(ContractorOnboardingStatusUpdateRequestBody.builder() + .onboardingStatus(ContractorOnboardingStatusUpdateRequestBodyOnboardingStatus.ONBOARDING_COMPLETED) + .build()) .call(); - // handle response + if (res.contractorOnboardingStatus().isPresent()) { + System.out.println(res.contractorOnboardingStatus().get()); + } } } ``` +### Example Usage: Nested -### Parameters - -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | -| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1ContractorsContractorUuidRehireHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | - -### Response - -**[DeleteV1ContractorsContractorUuidRehireResponse](../../models/operations/DeleteV1ContractorsContractorUuidRehireResponse.md)** - -### Errors - -| Error Type | Status Code | Content Type | -| -------------------------- | -------------------------- | -------------------------- | -| models/errors/APIException | 4XX, 5XX | \*/\* | - -## postV1ContractorsContractorUuidTermination - -## Purpose -Schedules a contractor dismissal for a given date. Supports both immediate (past dates) and future-dated dismissals. - -## Prerequisites -Before calling this endpoint: -1. The contractor must be active (no existing pending dismissal) -2. The contractor must have a current employment - -## Related webhooks -- `contractor.deactivated`: Fires when the contractor becomes inactive (on or after end_date) - -scope: `contractors:write` - -### Example Usage - - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.operations.*; +import com.gusto.embedded_api.models.components.ContractorOnboardingStatusUpdateRequestBody; +import com.gusto.embedded_api.models.components.ContractorOnboardingStatusUpdateRequestBodyOnboardingStatus; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.operations.PutV1ContractorsContractorUuidOnboardingStatusHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PutV1ContractorsContractorUuidOnboardingStatusResponse; import java.lang.Exception; -import java.time.LocalDate; public class Application { - public static void main(String[] args) throws Exception { + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostV1ContractorsContractorUuidTerminationResponse res = sdk.contractors().postV1ContractorsContractorUuidTermination() + PutV1ContractorsContractorUuidOnboardingStatusResponse res = sdk.contractors().updateOnboardingStatus() + .xGustoAPIVersion(PutV1ContractorsContractorUuidOnboardingStatusHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .contractorUuid("") - .xGustoAPIVersion(PostV1ContractorsContractorUuidTerminationHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .requestBody(PostV1ContractorsContractorUuidTerminationRequestBody.builder() - .endDate(LocalDate.parse("2025-06-15")) + .contractorOnboardingStatusUpdateRequestBody(ContractorOnboardingStatusUpdateRequestBody.builder() + .onboardingStatus(ContractorOnboardingStatusUpdateRequestBodyOnboardingStatus.ONBOARDING_COMPLETED) .build()) .call(); - // handle response + if (res.contractorOnboardingStatus().isPresent()) { + System.out.println(res.contractorOnboardingStatus().get()); + } } } ``` +### Example Usage: Resource -### Parameters - -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1ContractorsContractorUuidTerminationHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `requestBody` | [Optional\](../../models/operations/PostV1ContractorsContractorUuidTerminationRequestBody.md) | :heavy_minus_sign: | N/A | - -### Response - -**[PostV1ContractorsContractorUuidTerminationResponse](../../models/operations/PostV1ContractorsContractorUuidTerminationResponse.md)** - -### Errors - -| Error Type | Status Code | Content Type | -| -------------------------- | -------------------------- | -------------------------- | -| models/errors/APIException | 4XX, 5XX | \*/\* | - -## deleteV1ContractorsContractorUuidTermination - -## Purpose -Cancels a pending contractor dismissal. For future-dated dismissals, cancellation is available anytime before the date. -For past-dated dismissals, cancellation is only available within the 2-day grace period. - -## Prerequisites -Before calling this endpoint: -- The contractor must have a pending dismissal (scheduled or within the grace period) - -## Related webhooks -- `contractor.reactivated`: Fires when the contractor becomes active again after cancellation - -scope: `contractors:write` - -### Example Usage - - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.operations.DeleteV1ContractorsContractorUuidTerminationHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.DeleteV1ContractorsContractorUuidTerminationResponse; +import com.gusto.embedded_api.models.components.ContractorOnboardingStatusUpdateRequestBody; +import com.gusto.embedded_api.models.components.ContractorOnboardingStatusUpdateRequestBodyOnboardingStatus; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.operations.PutV1ContractorsContractorUuidOnboardingStatusHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PutV1ContractorsContractorUuidOnboardingStatusResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws Exception { + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - DeleteV1ContractorsContractorUuidTerminationResponse res = sdk.contractors().deleteV1ContractorsContractorUuidTermination() + PutV1ContractorsContractorUuidOnboardingStatusResponse res = sdk.contractors().updateOnboardingStatus() + .xGustoAPIVersion(PutV1ContractorsContractorUuidOnboardingStatusHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .contractorUuid("") - .xGustoAPIVersion(DeleteV1ContractorsContractorUuidTerminationHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .contractorOnboardingStatusUpdateRequestBody(ContractorOnboardingStatusUpdateRequestBody.builder() + .onboardingStatus(ContractorOnboardingStatusUpdateRequestBodyOnboardingStatus.ONBOARDING_COMPLETED) + .build()) .call(); - // handle response + if (res.contractorOnboardingStatus().isPresent()) { + System.out.println(res.contractorOnboardingStatus().get()); + } } } ``` @@ -1661,15 +1666,18 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1ContractorsContractorUuidOnboardingStatusHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | -| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1ContractorsContractorUuidTerminationHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorOnboardingStatusUpdateRequestBody` | [ContractorOnboardingStatusUpdateRequestBody](../../models/components/ContractorOnboardingStatusUpdateRequestBody.md) | :heavy_check_mark: | N/A | ### Response -**[DeleteV1ContractorsContractorUuidTerminationResponse](../../models/operations/DeleteV1ContractorsContractorUuidTerminationResponse.md)** +**[PutV1ContractorsContractorUuidOnboardingStatusResponse](../../models/operations/PutV1ContractorsContractorUuidOnboardingStatusResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| -------------------------- | -------------------------- | -------------------------- | -| models/errors/APIException | 4XX, 5XX | \*/\* | \ No newline at end of file +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/gusto_embedded/docs/sdks/departments/README.md b/gusto_embedded/docs/sdks/departments/README.md index bcc657a3d..00b0b389d 100644 --- a/gusto_embedded/docs/sdks/departments/README.md +++ b/gusto_embedded/docs/sdks/departments/README.md @@ -4,30 +4,30 @@ ### Available Operations -* [getAll](#getall) - Get all departments of a company -* [create](#create) - Create a department * [get](#get) - Get a department * [update](#update) - Update a department * [delete](#delete) - Delete a department * [addPeople](#addpeople) - Add people to a department * [removePeople](#removepeople) - Remove people from a department +* [getAll](#getall) - Get all departments of a company +* [create](#create) - Create a department -## getAll +## get -Get all of the departments for a given company with the employees and contractors assigned to that department. +Get a department given the UUID scope: `departments:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.operations.GetCompaniesDepartmentsHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.GetCompaniesDepartmentsResponse; +import com.gusto.embedded_api.models.operations.GetDepartmentHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetDepartmentResponse; import java.lang.Exception; public class Application { @@ -38,13 +38,13 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetCompaniesDepartmentsResponse res = sdk.departments().getAll() - .companyUuid("") - .xGustoAPIVersion(GetCompaniesDepartmentsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + GetDepartmentResponse res = sdk.departments().get() + .xGustoAPIVersion(GetDepartmentHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .departmentUuid("") .call(); - if (res.departmentList().isPresent()) { - System.out.println(res.departmentList().get()); + if (res.department().isPresent()) { + System.out.println(res.department().get()); } } } @@ -54,12 +54,12 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetCompaniesDepartmentsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetDepartmentHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `departmentUuid` | *String* | :heavy_check_mark: | The UUID of the department | ### Response -**[GetCompaniesDepartmentsResponse](../../models/operations/GetCompaniesDepartmentsResponse.md)** +**[GetDepartmentResponse](../../models/operations/GetDepartmentResponse.md)** ### Errors @@ -68,38 +68,38 @@ public class Application { | models/errors/NotFoundErrorObject | 404 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## create +## update -Create a department +Update a department scope: `departments:write` ### Example Usage: Basic - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.DepartmentCreateRequestBody; -import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PostDepartmentsHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PostDepartmentsResponse; +import com.gusto.embedded_api.models.components.DepartmentUpdateRequestBody; +import com.gusto.embedded_api.models.errors.*; +import com.gusto.embedded_api.models.operations.PutDepartmentsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PutDepartmentsResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + public static void main(String[] args) throws NotFoundErrorObject, ConflictErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostDepartmentsResponse res = sdk.departments().create() - .companyUuid("") - .xGustoAPIVersion(PostDepartmentsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .departmentCreateRequestBody(DepartmentCreateRequestBody.builder() + PutDepartmentsResponse res = sdk.departments().update() + .xGustoAPIVersion(PutDepartmentsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .departmentUuid("") + .departmentUpdateRequestBody(DepartmentUpdateRequestBody.builder() + .version("") .title("Stage Hand") .build()) .call(); @@ -112,31 +112,31 @@ public class Application { ``` ### Example Usage: Example - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.DepartmentCreateRequestBody; -import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PostDepartmentsHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PostDepartmentsResponse; +import com.gusto.embedded_api.models.components.DepartmentUpdateRequestBody; +import com.gusto.embedded_api.models.errors.*; +import com.gusto.embedded_api.models.operations.PutDepartmentsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PutDepartmentsResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + public static void main(String[] args) throws NotFoundErrorObject, ConflictErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostDepartmentsResponse res = sdk.departments().create() - .companyUuid("") - .xGustoAPIVersion(PostDepartmentsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .departmentCreateRequestBody(DepartmentCreateRequestBody.builder() - .title("Stage Hand") + PutDepartmentsResponse res = sdk.departments().update() + .xGustoAPIVersion(PutDepartmentsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .departmentUuid("") + .departmentUpdateRequestBody(DepartmentUpdateRequestBody.builder() + .version("db0edd04aaac4506f7edab03ac855d56") + .title("Backup Dancer") .build()) .call(); @@ -148,30 +148,30 @@ public class Application { ``` ### Example Usage: Nested - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.DepartmentCreateRequestBody; -import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PostDepartmentsHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PostDepartmentsResponse; +import com.gusto.embedded_api.models.components.DepartmentUpdateRequestBody; +import com.gusto.embedded_api.models.errors.*; +import com.gusto.embedded_api.models.operations.PutDepartmentsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PutDepartmentsResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + public static void main(String[] args) throws NotFoundErrorObject, ConflictErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostDepartmentsResponse res = sdk.departments().create() - .companyUuid("") - .xGustoAPIVersion(PostDepartmentsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .departmentCreateRequestBody(DepartmentCreateRequestBody.builder() + PutDepartmentsResponse res = sdk.departments().update() + .xGustoAPIVersion(PutDepartmentsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .departmentUuid("") + .departmentUpdateRequestBody(DepartmentUpdateRequestBody.builder() + .version("") .title("Stage Hand") .build()) .call(); @@ -184,30 +184,30 @@ public class Application { ``` ### Example Usage: Resource - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.DepartmentCreateRequestBody; -import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PostDepartmentsHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PostDepartmentsResponse; +import com.gusto.embedded_api.models.components.DepartmentUpdateRequestBody; +import com.gusto.embedded_api.models.errors.*; +import com.gusto.embedded_api.models.operations.PutDepartmentsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PutDepartmentsResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + public static void main(String[] args) throws NotFoundErrorObject, ConflictErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostDepartmentsResponse res = sdk.departments().create() - .companyUuid("") - .xGustoAPIVersion(PostDepartmentsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .departmentCreateRequestBody(DepartmentCreateRequestBody.builder() + PutDepartmentsResponse res = sdk.departments().update() + .xGustoAPIVersion(PutDepartmentsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .departmentUuid("") + .departmentUpdateRequestBody(DepartmentUpdateRequestBody.builder() + .version("") .title("Stage Hand") .build()) .call(); @@ -223,56 +223,56 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PostDepartmentsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `departmentCreateRequestBody` | [DepartmentCreateRequestBody](../../models/components/DepartmentCreateRequestBody.md) | :heavy_check_mark: | N/A | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutDepartmentsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `departmentUuid` | *String* | :heavy_check_mark: | The UUID of the department | +| `departmentUpdateRequestBody` | [DepartmentUpdateRequestBody](../../models/components/DepartmentUpdateRequestBody.md) | :heavy_check_mark: | N/A | ### Response -**[PostDepartmentsResponse](../../models/operations/PostDepartmentsResponse.md)** +**[PutDepartmentsResponse](../../models/operations/PutDepartmentsResponse.md)** ### Errors | Error Type | Status Code | Content Type | | -------------------------------------- | -------------------------------------- | -------------------------------------- | | models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/ConflictErrorObject | 409 | application/json | | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## get +## delete -Get a department given the UUID +Delete a department. You cannot delete a department until all employees and contractors have been removed. -scope: `departments:read` +scope: `departments:write` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.operations.GetDepartmentHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.GetDepartmentResponse; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.operations.DeleteDepartmentHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.DeleteDepartmentResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, Exception { + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetDepartmentResponse res = sdk.departments().get() + DeleteDepartmentResponse res = sdk.departments().delete() + .xGustoAPIVersion(DeleteDepartmentHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .departmentUuid("") - .xGustoAPIVersion(GetDepartmentHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .call(); - if (res.department().isPresent()) { - System.out.println(res.department().get()); - } + // handle response } } ``` @@ -281,53 +281,54 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteDepartmentHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `departmentUuid` | *String* | :heavy_check_mark: | The UUID of the department | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetDepartmentHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | ### Response -**[GetDepartmentResponse](../../models/operations/GetDepartmentResponse.md)** +**[DeleteDepartmentResponse](../../models/operations/DeleteDepartmentResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| --------------------------------- | --------------------------------- | --------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | -## update +## addPeople -Update a department +Add employees and contractors to a department scope: `departments:write` -### Example Usage: Basic +### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.DepartmentUpdateRequestBody; -import com.gusto.embedded_api.models.errors.*; -import com.gusto.embedded_api.models.operations.PutDepartmentsHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PutDepartmentsResponse; +import com.gusto.embedded_api.models.components.DepartmentPeopleRequestBody; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.operations.PutAddPeopleToDepartmentHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PutAddPeopleToDepartmentResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, ConflictErrorObject, UnprocessableEntityError, Exception { + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutDepartmentsResponse res = sdk.departments().update() + PutAddPeopleToDepartmentResponse res = sdk.departments().addPeople() + .xGustoAPIVersion(PutAddPeopleToDepartmentHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .departmentUuid("") - .xGustoAPIVersion(PutDepartmentsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .departmentUpdateRequestBody(DepartmentUpdateRequestBody.builder() - .version("") - .title("Stage Hand") + .departmentPeopleRequestBody(DepartmentPeopleRequestBody.builder() + .version("56d00c178bc7393b2a206ed6a86afcb4") .build()) .call(); @@ -337,105 +338,60 @@ public class Application { } } ``` -### Example Usage: Example - - -```java -package hello.world; -import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.DepartmentUpdateRequestBody; -import com.gusto.embedded_api.models.errors.*; -import com.gusto.embedded_api.models.operations.PutDepartmentsHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PutDepartmentsResponse; -import java.lang.Exception; - -public class Application { - - public static void main(String[] args) throws NotFoundErrorObject, ConflictErrorObject, UnprocessableEntityError, Exception { - - GustoEmbedded sdk = GustoEmbedded.builder() - .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) - .build(); +### Parameters - PutDepartmentsResponse res = sdk.departments().update() - .departmentUuid("") - .xGustoAPIVersion(PutDepartmentsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .departmentUpdateRequestBody(DepartmentUpdateRequestBody.builder() - .version("db0edd04aaac4506f7edab03ac855d56") - .title("Backup Dancer") - .build()) - .call(); +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutAddPeopleToDepartmentHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `departmentUuid` | *String* | :heavy_check_mark: | The UUID of the department | +| `departmentPeopleRequestBody` | [DepartmentPeopleRequestBody](../../models/components/DepartmentPeopleRequestBody.md) | :heavy_check_mark: | N/A | - if (res.department().isPresent()) { - System.out.println(res.department().get()); - } - } -} -``` -### Example Usage: Nested +### Response - -```java -package hello.world; +**[PutAddPeopleToDepartmentResponse](../../models/operations/PutAddPeopleToDepartmentResponse.md)** -import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.DepartmentUpdateRequestBody; -import com.gusto.embedded_api.models.errors.*; -import com.gusto.embedded_api.models.operations.PutDepartmentsHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PutDepartmentsResponse; -import java.lang.Exception; +### Errors -public class Application { +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | - public static void main(String[] args) throws NotFoundErrorObject, ConflictErrorObject, UnprocessableEntityError, Exception { +## removePeople - GustoEmbedded sdk = GustoEmbedded.builder() - .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) - .build(); +Remove employees and contractors from a department - PutDepartmentsResponse res = sdk.departments().update() - .departmentUuid("") - .xGustoAPIVersion(PutDepartmentsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .departmentUpdateRequestBody(DepartmentUpdateRequestBody.builder() - .version("") - .title("Stage Hand") - .build()) - .call(); +scope: `departments:write` - if (res.department().isPresent()) { - System.out.println(res.department().get()); - } - } -} -``` -### Example Usage: Resource +### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.DepartmentUpdateRequestBody; -import com.gusto.embedded_api.models.errors.*; -import com.gusto.embedded_api.models.operations.PutDepartmentsHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PutDepartmentsResponse; +import com.gusto.embedded_api.models.components.DepartmentPeopleRequestBody; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.operations.PutRemovePeopleFromDepartmentHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PutRemovePeopleFromDepartmentResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, ConflictErrorObject, UnprocessableEntityError, Exception { + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutDepartmentsResponse res = sdk.departments().update() + PutRemovePeopleFromDepartmentResponse res = sdk.departments().removePeople() + .xGustoAPIVersion(PutRemovePeopleFromDepartmentHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .departmentUuid("") - .xGustoAPIVersion(PutDepartmentsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .departmentUpdateRequestBody(DepartmentUpdateRequestBody.builder() - .version("") - .title("Stage Hand") + .departmentPeopleRequestBody(DepartmentPeopleRequestBody.builder() + .version("56d00c178bc7393b2a206ed6a86afcb4") .build()) .call(); @@ -450,56 +406,56 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutRemovePeopleFromDepartmentHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `departmentUuid` | *String* | :heavy_check_mark: | The UUID of the department | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutDepartmentsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `departmentUpdateRequestBody` | [DepartmentUpdateRequestBody](../../models/components/DepartmentUpdateRequestBody.md) | :heavy_check_mark: | N/A | +| `departmentPeopleRequestBody` | [DepartmentPeopleRequestBody](../../models/components/DepartmentPeopleRequestBody.md) | :heavy_check_mark: | N/A | ### Response -**[PutDepartmentsResponse](../../models/operations/PutDepartmentsResponse.md)** +**[PutRemovePeopleFromDepartmentResponse](../../models/operations/PutRemovePeopleFromDepartmentResponse.md)** ### Errors | Error Type | Status Code | Content Type | | -------------------------------------- | -------------------------------------- | -------------------------------------- | | models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/ConflictErrorObject | 409 | application/json | | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## delete +## getAll -Delete a department. You cannot delete a department until all employees and contractors have been removed. +Get all of the departments for a given company with the employees and contractors assigned to that department. -scope: `departments:write` +scope: `departments:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.DeleteDepartmentHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.DeleteDepartmentResponse; +import com.gusto.embedded_api.models.operations.GetCompaniesDepartmentsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetCompaniesDepartmentsResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + public static void main(String[] args) throws NotFoundErrorObject, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - DeleteDepartmentResponse res = sdk.departments().delete() - .departmentUuid("") - .xGustoAPIVersion(DeleteDepartmentHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + GetCompaniesDepartmentsResponse res = sdk.departments().getAll() + .xGustoAPIVersion(GetCompaniesDepartmentsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyUuid("") .call(); - // handle response + if (res.departmentList().isPresent()) { + System.out.println(res.departmentList().get()); + } } } ``` @@ -508,39 +464,38 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `departmentUuid` | *String* | :heavy_check_mark: | The UUID of the department | -| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteDepartmentHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetCompaniesDepartmentsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | ### Response -**[DeleteDepartmentResponse](../../models/operations/DeleteDepartmentResponse.md)** +**[GetCompaniesDepartmentsResponse](../../models/operations/GetCompaniesDepartmentsResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| -------------------------------------- | -------------------------------------- | -------------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/UnprocessableEntityError | 422 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | -## addPeople +## create -Add employees and contractors to a department +Create a department scope: `departments:write` -### Example Usage +### Example Usage: Basic - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.DepartmentPeopleRequestBody; +import com.gusto.embedded_api.models.components.DepartmentCreateRequestBody; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PutAddPeopleToDepartmentHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PutAddPeopleToDepartmentResponse; +import com.gusto.embedded_api.models.operations.PostDepartmentsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PostDepartmentsResponse; import java.lang.Exception; public class Application { @@ -551,11 +506,11 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutAddPeopleToDepartmentResponse res = sdk.departments().addPeople() - .departmentUuid("") - .xGustoAPIVersion(PutAddPeopleToDepartmentHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .departmentPeopleRequestBody(DepartmentPeopleRequestBody.builder() - .version("56d00c178bc7393b2a206ed6a86afcb4") + PostDepartmentsResponse res = sdk.departments().create() + .xGustoAPIVersion(PostDepartmentsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyUuid("") + .departmentCreateRequestBody(DepartmentCreateRequestBody.builder() + .title("Stage Hand") .build()) .call(); @@ -565,45 +520,90 @@ public class Application { } } ``` +### Example Usage: Example -### Parameters + +```java +package hello.world; -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `departmentUuid` | *String* | :heavy_check_mark: | The UUID of the department | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutAddPeopleToDepartmentHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `departmentPeopleRequestBody` | [DepartmentPeopleRequestBody](../../models/components/DepartmentPeopleRequestBody.md) | :heavy_check_mark: | N/A | +import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.components.DepartmentCreateRequestBody; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.operations.PostDepartmentsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PostDepartmentsResponse; +import java.lang.Exception; -### Response +public class Application { -**[PutAddPeopleToDepartmentResponse](../../models/operations/PutAddPeopleToDepartmentResponse.md)** + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { -### Errors + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); -| Error Type | Status Code | Content Type | -| -------------------------------------- | -------------------------------------- | -------------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/UnprocessableEntityError | 422 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | + PostDepartmentsResponse res = sdk.departments().create() + .xGustoAPIVersion(PostDepartmentsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyUuid("") + .departmentCreateRequestBody(DepartmentCreateRequestBody.builder() + .title("Stage Hand") + .build()) + .call(); -## removePeople + if (res.department().isPresent()) { + System.out.println(res.department().get()); + } + } +} +``` +### Example Usage: Nested -Remove employees and contractors from a department + +```java +package hello.world; -scope: `departments:write` +import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.components.DepartmentCreateRequestBody; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.operations.PostDepartmentsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PostDepartmentsResponse; +import java.lang.Exception; -### Example Usage +public class Application { - + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + PostDepartmentsResponse res = sdk.departments().create() + .xGustoAPIVersion(PostDepartmentsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyUuid("") + .departmentCreateRequestBody(DepartmentCreateRequestBody.builder() + .title("Stage Hand") + .build()) + .call(); + + if (res.department().isPresent()) { + System.out.println(res.department().get()); + } + } +} +``` +### Example Usage: Resource + + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.DepartmentPeopleRequestBody; +import com.gusto.embedded_api.models.components.DepartmentCreateRequestBody; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PutRemovePeopleFromDepartmentHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PutRemovePeopleFromDepartmentResponse; +import com.gusto.embedded_api.models.operations.PostDepartmentsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PostDepartmentsResponse; import java.lang.Exception; public class Application { @@ -614,11 +614,11 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutRemovePeopleFromDepartmentResponse res = sdk.departments().removePeople() - .departmentUuid("") - .xGustoAPIVersion(PutRemovePeopleFromDepartmentHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .departmentPeopleRequestBody(DepartmentPeopleRequestBody.builder() - .version("56d00c178bc7393b2a206ed6a86afcb4") + PostDepartmentsResponse res = sdk.departments().create() + .xGustoAPIVersion(PostDepartmentsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyUuid("") + .departmentCreateRequestBody(DepartmentCreateRequestBody.builder() + .title("Stage Hand") .build()) .call(); @@ -633,13 +633,13 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `departmentUuid` | *String* | :heavy_check_mark: | The UUID of the department | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutRemovePeopleFromDepartmentHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `departmentPeopleRequestBody` | [DepartmentPeopleRequestBody](../../models/components/DepartmentPeopleRequestBody.md) | :heavy_check_mark: | N/A | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostDepartmentsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | +| `departmentCreateRequestBody` | [DepartmentCreateRequestBody](../../models/components/DepartmentCreateRequestBody.md) | :heavy_check_mark: | N/A | ### Response -**[PutRemovePeopleFromDepartmentResponse](../../models/operations/PutRemovePeopleFromDepartmentResponse.md)** +**[PostDepartmentsResponse](../../models/operations/PostDepartmentsResponse.md)** ### Errors diff --git a/gusto_embedded/docs/sdks/employeeaddresses/README.md b/gusto_embedded/docs/sdks/employeeaddresses/README.md index c2d7d14be..5d4375761 100644 --- a/gusto_embedded/docs/sdks/employeeaddresses/README.md +++ b/gusto_embedded/docs/sdks/employeeaddresses/README.md @@ -44,8 +44,8 @@ public class Application { .build(); GetV1EmployeesEmployeeIdHomeAddressesResponse res = sdk.employeeAddresses().get() - .employeeId("") .xGustoAPIVersion(GetV1EmployeesEmployeeIdHomeAddressesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .employeeId("") .call(); if (res.employeeAddressList().isPresent()) { @@ -59,8 +59,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeIdHomeAddressesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | ### Response @@ -103,8 +103,8 @@ public class Application { .build(); PostV1EmployeesEmployeeIdHomeAddressesResponse res = sdk.employeeAddresses().create() - .employeeId("") .xGustoAPIVersion(PostV1EmployeesEmployeeIdHomeAddressesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .employeeId("") .requestBody(PostV1EmployeesEmployeeIdHomeAddressesRequestBody.builder() .street1("300 3rd Street") .city("San Francisco") @@ -125,8 +125,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | | `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1EmployeesEmployeeIdHomeAddressesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | | `requestBody` | [PostV1EmployeesEmployeeIdHomeAddressesRequestBody](../../models/operations/PostV1EmployeesEmployeeIdHomeAddressesRequestBody.md) | :heavy_check_mark: | N/A | ### Response @@ -170,8 +170,8 @@ public class Application { .build(); GetV1HomeAddressesHomeAddressUuidResponse res = sdk.employeeAddresses().retrieveHomeAddress() - .homeAddressUuid("") .xGustoAPIVersion(GetV1HomeAddressesHomeAddressUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .homeAddressUuid("") .call(); if (res.employeeAddress().isPresent()) { @@ -185,8 +185,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `homeAddressUuid` | *String* | :heavy_check_mark: | The UUID of the home address | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1HomeAddressesHomeAddressUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `homeAddressUuid` | *String* | :heavy_check_mark: | The UUID of the home address | ### Response @@ -346,8 +346,8 @@ public class Application { .build(); GetV1EmployeesEmployeeIdWorkAddressesResponse res = sdk.employeeAddresses().getWorkAddresses() - .employeeId("") .xGustoAPIVersion(GetV1EmployeesEmployeeIdWorkAddressesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .employeeId("") .call(); if (res.employeeWorkAddressesList().isPresent()) { @@ -361,8 +361,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeIdWorkAddressesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | ### Response @@ -403,8 +403,8 @@ public class Application { .build(); PostV1EmployeesEmployeeIdWorkAddressesResponse res = sdk.employeeAddresses().createWorkAddress() - .employeeId("") .xGustoAPIVersion(PostV1EmployeesEmployeeIdWorkAddressesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .employeeId("") .requestBody(PostV1EmployeesEmployeeIdWorkAddressesRequestBody.builder() .locationUuid("6a119be7-b4b0-4e27-aaa0-89d5f2524635") .effectiveDate(LocalDate.parse("2023-05-15")) @@ -422,8 +422,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | | `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1EmployeesEmployeeIdWorkAddressesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | | `requestBody` | [PostV1EmployeesEmployeeIdWorkAddressesRequestBody](../../models/operations/PostV1EmployeesEmployeeIdWorkAddressesRequestBody.md) | :heavy_check_mark: | N/A | ### Response @@ -465,8 +465,8 @@ public class Application { .build(); GetV1WorkAddressesWorkAddressUuidResponse res = sdk.employeeAddresses().retrieveWorkAddress() - .workAddressUuid("") .xGustoAPIVersion(GetV1WorkAddressesWorkAddressUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .workAddressUuid("") .call(); if (res.employeeWorkAddress().isPresent()) { @@ -480,8 +480,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `workAddressUuid` | *String* | :heavy_check_mark: | The UUID of the work address | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1WorkAddressesWorkAddressUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `workAddressUuid` | *String* | :heavy_check_mark: | The UUID of the work address | ### Response @@ -522,8 +522,8 @@ public class Application { .build(); PutV1WorkAddressesWorkAddressUuidResponse res = sdk.employeeAddresses().updateWorkAddress() - .workAddressUuid("") .xGustoAPIVersion(PutV1WorkAddressesWorkAddressUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .workAddressUuid("") .requestBody(PutV1WorkAddressesWorkAddressUuidRequestBody.builder() .version("56d00c178bc7393b2a206ed6a86afcb4") .locationUuid("6a119be7-b4b0-4e27-aaa0-89d5f2524635") @@ -542,8 +542,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `workAddressUuid` | *String* | :heavy_check_mark: | The UUID of the work address | | `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1WorkAddressesWorkAddressUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `workAddressUuid` | *String* | :heavy_check_mark: | The UUID of the work address | | `requestBody` | [PutV1WorkAddressesWorkAddressUuidRequestBody](../../models/operations/PutV1WorkAddressesWorkAddressUuidRequestBody.md) | :heavy_check_mark: | N/A | ### Response @@ -586,8 +586,8 @@ public class Application { .build(); DeleteV1WorkAddressesWorkAddressUuidResponse res = sdk.employeeAddresses().deleteWorkAddress() - .workAddressUuid("") .xGustoAPIVersion(DeleteV1WorkAddressesWorkAddressUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .workAddressUuid("") .call(); // handle response @@ -599,8 +599,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `workAddressUuid` | *String* | :heavy_check_mark: | The UUID of the work address | | `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1WorkAddressesWorkAddressUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `workAddressUuid` | *String* | :heavy_check_mark: | The UUID of the work address | ### Response diff --git a/gusto_embedded/docs/sdks/employeebenefits/README.md b/gusto_embedded/docs/sdks/employeebenefits/README.md index f9b4b5a4c..867d63cce 100644 --- a/gusto_embedded/docs/sdks/employeebenefits/README.md +++ b/gusto_embedded/docs/sdks/employeebenefits/README.md @@ -884,8 +884,8 @@ public class Application { .build(); GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesResponse res = sdk.employeeBenefits().getV1EmployeesEmployeeUuidSection603HighEarnerStatuses() - .employeeUuid("") .xGustoAPIVersion(GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .employeeUuid("") .call(); if (res.employeeSection603HighEarnerStatusList().isPresent()) { @@ -899,8 +899,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `employeeUuid` | *String* | :heavy_check_mark: | The UUID of the employee | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeUuid` | *String* | :heavy_check_mark: | The UUID of the employee | ### Response @@ -945,8 +945,8 @@ public class Application { .build(); PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesResponse res = sdk.employeeBenefits().postV1EmployeesEmployeeUuidSection603HighEarnerStatuses() - .employeeUuid("") .xGustoAPIVersion(PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .employeeUuid("") .employeeSection603HighEarnerStatusCreateRequest(EmployeeSection603HighEarnerStatusCreateRequest.builder() .effectiveYear(2026L) .isHighEarner(true) @@ -964,8 +964,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `employeeUuid` | *String* | :heavy_check_mark: | The UUID of the employee | | `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeUuid` | *String* | :heavy_check_mark: | The UUID of the employee | | `employeeSection603HighEarnerStatusCreateRequest` | [EmployeeSection603HighEarnerStatusCreateRequest](../../models/components/EmployeeSection603HighEarnerStatusCreateRequest.md) | :heavy_check_mark: | N/A | ### Response @@ -1011,9 +1011,9 @@ public class Application { .build(); GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearResponse res = sdk.employeeBenefits().getV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYear() + .xGustoAPIVersion(GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .employeeUuid("") .effectiveYear(857230L) - .xGustoAPIVersion(GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .call(); if (res.employeeSection603HighEarnerStatus().isPresent()) { @@ -1027,9 +1027,9 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `employeeUuid` | *String* | :heavy_check_mark: | The UUID of the employee | | `effectiveYear` | *long* | :heavy_check_mark: | The effective year for the Section 603 status | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | ### Response @@ -1075,9 +1075,9 @@ public class Application { .build(); PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearResponse res = sdk.employeeBenefits().patchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYear() + .xGustoAPIVersion(PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .employeeUuid("") .effectiveYear(152322L) - .xGustoAPIVersion(PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .employeeSection603HighEarnerStatusUpdateRequest(EmployeeSection603HighEarnerStatusUpdateRequest.builder() .isHighEarner(true) .build()) @@ -1094,9 +1094,9 @@ public class Application { | Parameter | Type | Required | Description | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `employeeUuid` | *String* | :heavy_check_mark: | The UUID of the employee | | `effectiveYear` | *long* | :heavy_check_mark: | The effective year for the Section 603 status | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `employeeSection603HighEarnerStatusUpdateRequest` | [EmployeeSection603HighEarnerStatusUpdateRequest](../../models/components/EmployeeSection603HighEarnerStatusUpdateRequest.md) | :heavy_check_mark: | N/A | ### Response diff --git a/gusto_embedded/docs/sdks/employeeemployments/README.md b/gusto_embedded/docs/sdks/employeeemployments/README.md index 0c66087c1..3f4cf4eb6 100644 --- a/gusto_embedded/docs/sdks/employeeemployments/README.md +++ b/gusto_embedded/docs/sdks/employeeemployments/README.md @@ -4,35 +4,33 @@ ### Available Operations -* [getTerminations](#getterminations) - Get terminations for an employee -* [createTermination](#createtermination) - Create an employee termination -* [deleteTermination](#deletetermination) - Delete an employee termination -* [updateTermination](#updatetermination) - Update an employee termination * [getRehire](#getrehire) - Get an employee rehire * [createRehire](#createrehire) - Create an employee rehire * [rehire](#rehire) - Update an employee rehire * [deleteRehire](#deleterehire) - Delete an employee rehire * [getHistory](#gethistory) - Get employment history for an employee +* [getTerminations](#getterminations) - Get terminations for an employee +* [createTermination](#createtermination) - Create an employee termination +* [deleteTermination](#deletetermination) - Delete an employee termination +* [updateTermination](#updatetermination) - Update an employee termination * [getV1TerminationsEmployeeId](#getv1terminationsemployeeid) - Get an employee termination -## getTerminations - -Terminations are created whenever an employee is scheduled to leave the company. The only things required are an effective date (their last day of work) and whether they should receive their wages in a one-off termination payroll or with the rest of the company. +## getRehire -Note that some states require employees to receive their final wages within 24 hours (unless they consent otherwise,) in which case running a one-off payroll may be the only option. +Retrieve an employee's rehire, which contains information on when the employee returns to work. scope: `employments:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.operations.GetV1EmployeesEmployeeIdTerminationsHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.GetV1EmployeesEmployeeIdTerminationsResponse; +import com.gusto.embedded_api.models.operations.GetV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetV1EmployeesEmployeeIdRehireResponse; import java.lang.Exception; public class Application { @@ -43,13 +41,13 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1EmployeesEmployeeIdTerminationsResponse res = sdk.employeeEmployments().getTerminations() - .xGustoAPIVersion(GetV1EmployeesEmployeeIdTerminationsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + GetV1EmployeesEmployeeIdRehireResponse res = sdk.employeeEmployments().getRehire() + .xGustoAPIVersion(GetV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .employeeId("") .call(); - if (res.terminations().isPresent()) { - System.out.println(res.terminations().get()); + if (res.rehire().isPresent()) { + System.out.println(res.rehire().get()); } } } @@ -59,12 +57,12 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeIdTerminationsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | ### Response -**[GetV1EmployeesEmployeeIdTerminationsResponse](../../models/operations/GetV1EmployeesEmployeeIdTerminationsResponse.md)** +**[GetV1EmployeesEmployeeIdRehireResponse](../../models/operations/GetV1EmployeesEmployeeIdRehireResponse.md)** ### Errors @@ -73,24 +71,24 @@ public class Application { | models/errors/NotFoundErrorObject | 404 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## createTermination - -Create a termination for an employee. The only things required are an effective date (their last day of work) and whether they should receive their wages in a one-off termination payroll or with the rest of the company. +## createRehire -Note that some states require employees to receive their final wages within 24 hours (unless they consent otherwise,) in which case running a one-off payroll may be the only option. +Rehire is created whenever an employee is scheduled to return to the company. scope: `employments:write` ### Example Usage: Basic - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.components.RehireBody; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.*; +import com.gusto.embedded_api.models.operations.PostV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PostV1EmployeesEmployeeIdRehireResponse; import java.lang.Exception; public class Application { @@ -101,30 +99,34 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostV1EmployeesEmployeeIdTerminationsResponse res = sdk.employeeEmployments().createTermination() - .xGustoAPIVersion(PostV1EmployeesEmployeeIdTerminationsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + PostV1EmployeesEmployeeIdRehireResponse res = sdk.employeeEmployments().createRehire() + .xGustoAPIVersion(PostV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .employeeId("") - .requestBody(PostV1EmployeesEmployeeIdTerminationsRequestBody.builder() + .rehireBody(RehireBody.builder() .effectiveDate("") + .fileNewHireReport(false) + .workLocationUuid("") .build()) .call(); - if (res.termination().isPresent()) { - System.out.println(res.termination().get()); + if (res.rehire().isPresent()) { + System.out.println(res.rehire().get()); } } } ``` ### Example Usage: Example - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.components.RehireBody; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.*; +import com.gusto.embedded_api.models.operations.PostV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PostV1EmployeesEmployeeIdRehireResponse; import java.lang.Exception; public class Application { @@ -135,31 +137,34 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostV1EmployeesEmployeeIdTerminationsResponse res = sdk.employeeEmployments().createTermination() - .xGustoAPIVersion(PostV1EmployeesEmployeeIdTerminationsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + PostV1EmployeesEmployeeIdRehireResponse res = sdk.employeeEmployments().createRehire() + .xGustoAPIVersion(PostV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .employeeId("") - .requestBody(PostV1EmployeesEmployeeIdTerminationsRequestBody.builder() - .effectiveDate("2020-06-30") - .runTerminationPayroll(true) + .rehireBody(RehireBody.builder() + .effectiveDate("2023-06-30") + .fileNewHireReport(true) + .workLocationUuid("b6ae9d93-d4b8-4119-8c96-dba595dd8c30") .build()) .call(); - if (res.termination().isPresent()) { - System.out.println(res.termination().get()); + if (res.rehire().isPresent()) { + System.out.println(res.rehire().get()); } } } ``` ### Example Usage: Nested - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.components.RehireBody; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.*; +import com.gusto.embedded_api.models.operations.PostV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PostV1EmployeesEmployeeIdRehireResponse; import java.lang.Exception; public class Application { @@ -170,30 +175,34 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostV1EmployeesEmployeeIdTerminationsResponse res = sdk.employeeEmployments().createTermination() - .xGustoAPIVersion(PostV1EmployeesEmployeeIdTerminationsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + PostV1EmployeesEmployeeIdRehireResponse res = sdk.employeeEmployments().createRehire() + .xGustoAPIVersion(PostV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .employeeId("") - .requestBody(PostV1EmployeesEmployeeIdTerminationsRequestBody.builder() + .rehireBody(RehireBody.builder() .effectiveDate("") + .fileNewHireReport(false) + .workLocationUuid("") .build()) .call(); - if (res.termination().isPresent()) { - System.out.println(res.termination().get()); + if (res.rehire().isPresent()) { + System.out.println(res.rehire().get()); } } } ``` ### Example Usage: Resource - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.components.RehireBody; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.*; +import com.gusto.embedded_api.models.operations.PostV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PostV1EmployeesEmployeeIdRehireResponse; import java.lang.Exception; public class Application { @@ -204,16 +213,18 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostV1EmployeesEmployeeIdTerminationsResponse res = sdk.employeeEmployments().createTermination() - .xGustoAPIVersion(PostV1EmployeesEmployeeIdTerminationsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + PostV1EmployeesEmployeeIdRehireResponse res = sdk.employeeEmployments().createRehire() + .xGustoAPIVersion(PostV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .employeeId("") - .requestBody(PostV1EmployeesEmployeeIdTerminationsRequestBody.builder() + .rehireBody(RehireBody.builder() .effectiveDate("") + .fileNewHireReport(false) + .workLocationUuid("") .build()) .call(); - if (res.termination().isPresent()) { - System.out.println(res.termination().get()); + if (res.rehire().isPresent()) { + System.out.println(res.rehire().get()); } } } @@ -221,71 +232,15 @@ public class Application { ### Parameters -| Parameter | Type | Required | Description | Example | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1EmployeesEmployeeIdTerminationsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | -| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | | -| `requestBody` | [PostV1EmployeesEmployeeIdTerminationsRequestBody](../../models/operations/PostV1EmployeesEmployeeIdTerminationsRequestBody.md) | :heavy_check_mark: | N/A | {
    "effective_date": "2020-06-30",
    "run_termination_payroll": false
    } | - -### Response - -**[PostV1EmployeesEmployeeIdTerminationsResponse](../../models/operations/PostV1EmployeesEmployeeIdTerminationsResponse.md)** - -### Errors - -| Error Type | Status Code | Content Type | -| -------------------------------------- | -------------------------------------- | -------------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/UnprocessableEntityError | 422 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | - -## deleteTermination - -Delete an employee termination. - -scope: `employments:write` - -### Example Usage - - -```java -package hello.world; - -import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.DeleteV1EmployeesEmployeeIdTerminationsHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.DeleteV1EmployeesEmployeeIdTerminationsResponse; -import java.lang.Exception; - -public class Application { - - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { - - GustoEmbedded sdk = GustoEmbedded.builder() - .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) - .build(); - - DeleteV1EmployeesEmployeeIdTerminationsResponse res = sdk.employeeEmployments().deleteTermination() - .xGustoAPIVersion(DeleteV1EmployeesEmployeeIdTerminationsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .employeeId("") - .call(); - - // handle response - } -} -``` - -### Parameters - | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1EmployeesEmployeeIdTerminationsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | +| `rehireBody` | [RehireBody](../../models/components/RehireBody.md) | :heavy_check_mark: | N/A | ### Response -**[DeleteV1EmployeesEmployeeIdTerminationsResponse](../../models/operations/DeleteV1EmployeesEmployeeIdTerminationsResponse.md)** +**[PostV1EmployeesEmployeeIdRehireResponse](../../models/operations/PostV1EmployeesEmployeeIdRehireResponse.md)** ### Errors @@ -295,24 +250,24 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## updateTermination - -Terminations are created whenever an employee is scheduled to leave the company. The only things required are an effective date (their last day of work) and whether they should receive their wages in a one-off termination payroll or with the rest of the company. +## rehire -Note that some states require employees to receive their final wages within 24 hours (unless they consent otherwise,) in which case running a one-off payroll may be the only option. +Update an employee's rehire. scope: `employments:write` ### Example Usage: Basic - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.components.RehireUpdateRequestBody; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.*; +import com.gusto.embedded_api.models.operations.PutV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PutV1EmployeesEmployeeIdRehireResponse; import java.lang.Exception; public class Application { @@ -323,31 +278,35 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1TerminationsEmployeeIdResponse res = sdk.employeeEmployments().updateTermination() - .xGustoAPIVersion(PutV1TerminationsEmployeeIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + PutV1EmployeesEmployeeIdRehireResponse res = sdk.employeeEmployments().rehire() + .xGustoAPIVersion(PutV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .employeeId("") - .requestBody(PutV1TerminationsEmployeeIdRequestBody.builder() + .rehireUpdateRequestBody(RehireUpdateRequestBody.builder() .version("56d00c178bc7393b2a206ed6a86afcb4") .effectiveDate("") + .fileNewHireReport(true) + .workLocationUuid("") .build()) .call(); - if (res.termination().isPresent()) { - System.out.println(res.termination().get()); + if (res.rehire().isPresent()) { + System.out.println(res.rehire().get()); } } } ``` ### Example Usage: Example - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.components.RehireUpdateRequestBody; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.*; +import com.gusto.embedded_api.models.operations.PutV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PutV1EmployeesEmployeeIdRehireResponse; import java.lang.Exception; public class Application { @@ -358,32 +317,35 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1TerminationsEmployeeIdResponse res = sdk.employeeEmployments().updateTermination() - .xGustoAPIVersion(PutV1TerminationsEmployeeIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + PutV1EmployeesEmployeeIdRehireResponse res = sdk.employeeEmployments().rehire() + .xGustoAPIVersion(PutV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .employeeId("") - .requestBody(PutV1TerminationsEmployeeIdRequestBody.builder() + .rehireUpdateRequestBody(RehireUpdateRequestBody.builder() .version("1928d0c378e519e9c03fb959bc959a6b") - .effectiveDate("2020-06-30") - .runTerminationPayroll(true) + .effectiveDate("2023-06-30") + .fileNewHireReport(true) + .workLocationUuid("b6ae9d93-d4b8-4119-8c96-dba595dd8c30") .build()) .call(); - if (res.termination().isPresent()) { - System.out.println(res.termination().get()); + if (res.rehire().isPresent()) { + System.out.println(res.rehire().get()); } } } ``` ### Example Usage: Nested - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.components.RehireUpdateRequestBody; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.*; +import com.gusto.embedded_api.models.operations.PutV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PutV1EmployeesEmployeeIdRehireResponse; import java.lang.Exception; public class Application { @@ -394,31 +356,35 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1TerminationsEmployeeIdResponse res = sdk.employeeEmployments().updateTermination() - .xGustoAPIVersion(PutV1TerminationsEmployeeIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + PutV1EmployeesEmployeeIdRehireResponse res = sdk.employeeEmployments().rehire() + .xGustoAPIVersion(PutV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .employeeId("") - .requestBody(PutV1TerminationsEmployeeIdRequestBody.builder() + .rehireUpdateRequestBody(RehireUpdateRequestBody.builder() .version("56d00c178bc7393b2a206ed6a86afcb4") .effectiveDate("") + .fileNewHireReport(true) + .workLocationUuid("") .build()) .call(); - if (res.termination().isPresent()) { - System.out.println(res.termination().get()); + if (res.rehire().isPresent()) { + System.out.println(res.rehire().get()); } } } ``` ### Example Usage: Resource - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.components.RehireUpdateRequestBody; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.*; +import com.gusto.embedded_api.models.operations.PutV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PutV1EmployeesEmployeeIdRehireResponse; import java.lang.Exception; public class Application { @@ -429,17 +395,19 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1TerminationsEmployeeIdResponse res = sdk.employeeEmployments().updateTermination() - .xGustoAPIVersion(PutV1TerminationsEmployeeIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + PutV1EmployeesEmployeeIdRehireResponse res = sdk.employeeEmployments().rehire() + .xGustoAPIVersion(PutV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .employeeId("") - .requestBody(PutV1TerminationsEmployeeIdRequestBody.builder() + .rehireUpdateRequestBody(RehireUpdateRequestBody.builder() .version("56d00c178bc7393b2a206ed6a86afcb4") .effectiveDate("") + .fileNewHireReport(true) + .workLocationUuid("") .build()) .call(); - if (res.termination().isPresent()) { - System.out.println(res.termination().get()); + if (res.rehire().isPresent()) { + System.out.println(res.rehire().get()); } } } @@ -447,15 +415,15 @@ public class Application { ### Parameters -| Parameter | Type | Required | Description | Example | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1TerminationsEmployeeIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | -| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | | -| `requestBody` | [PutV1TerminationsEmployeeIdRequestBody](../../models/operations/PutV1TerminationsEmployeeIdRequestBody.md) | :heavy_check_mark: | N/A | {
    "version": "d487dd0b55dfcacdd920ccbdaeafa351",
    "effective_date": "2020-06-30",
    "run_termination_payroll": false
    } | +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | +| `rehireUpdateRequestBody` | [RehireUpdateRequestBody](../../models/components/RehireUpdateRequestBody.md) | :heavy_check_mark: | N/A | ### Response -**[PutV1TerminationsEmployeeIdResponse](../../models/operations/PutV1TerminationsEmployeeIdResponse.md)** +**[PutV1EmployeesEmployeeIdRehireResponse](../../models/operations/PutV1EmployeesEmployeeIdRehireResponse.md)** ### Errors @@ -465,40 +433,39 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## getRehire +## deleteRehire -Retrieve an employee's rehire, which contains information on when the employee returns to work. +Delete an employee rehire. An employee rehire cannot be deleted if it's active (past effective date). -scope: `employments:read` +scope: `employments:write` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.operations.GetV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.GetV1EmployeesEmployeeIdRehireResponse; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.operations.DeleteV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.DeleteV1EmployeesEmployeeIdRehireResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, Exception { + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1EmployeesEmployeeIdRehireResponse res = sdk.employeeEmployments().getRehire() - .xGustoAPIVersion(GetV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + DeleteV1EmployeesEmployeeIdRehireResponse res = sdk.employeeEmployments().deleteRehire() + .xGustoAPIVersion(DeleteV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .employeeId("") .call(); - if (res.rehire().isPresent()) { - System.out.println(res.rehire().get()); - } + // handle response } } ``` @@ -507,174 +474,112 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | ### Response -**[GetV1EmployeesEmployeeIdRehireResponse](../../models/operations/GetV1EmployeesEmployeeIdRehireResponse.md)** +**[DeleteV1EmployeesEmployeeIdRehireResponse](../../models/operations/DeleteV1EmployeesEmployeeIdRehireResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| --------------------------------- | --------------------------------- | --------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | -## createRehire +## getHistory -Rehire is created whenever an employee is scheduled to return to the company. +Retrieve the employment history for a given employee, which includes termination and rehire. -scope: `employments:write` +scope: `employments:read` -### Example Usage: Basic +### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.RehireBody; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PostV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PostV1EmployeesEmployeeIdRehireResponse; +import com.gusto.embedded_api.models.operations.GetV1EmployeesEmployeeIdEmploymentHistoryHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetV1EmployeesEmployeeIdEmploymentHistoryResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + public static void main(String[] args) throws NotFoundErrorObject, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostV1EmployeesEmployeeIdRehireResponse res = sdk.employeeEmployments().createRehire() - .xGustoAPIVersion(PostV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + GetV1EmployeesEmployeeIdEmploymentHistoryResponse res = sdk.employeeEmployments().getHistory() + .xGustoAPIVersion(GetV1EmployeesEmployeeIdEmploymentHistoryHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .employeeId("") - .rehireBody(RehireBody.builder() - .effectiveDate("") - .fileNewHireReport(false) - .workLocationUuid("") - .build()) .call(); - if (res.rehire().isPresent()) { - System.out.println(res.rehire().get()); + if (res.employmentHistoryList().isPresent()) { + System.out.println(res.employmentHistoryList().get()); } } } ``` -### Example Usage: Example - -```java -package hello.world; - -import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.RehireBody; -import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PostV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PostV1EmployeesEmployeeIdRehireResponse; -import java.lang.Exception; - -public class Application { - - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { +### Parameters - GustoEmbedded sdk = GustoEmbedded.builder() - .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) - .build(); +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeIdEmploymentHistoryHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | - PostV1EmployeesEmployeeIdRehireResponse res = sdk.employeeEmployments().createRehire() - .xGustoAPIVersion(PostV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .employeeId("") - .rehireBody(RehireBody.builder() - .effectiveDate("2023-06-30") - .fileNewHireReport(true) - .workLocationUuid("b6ae9d93-d4b8-4119-8c96-dba595dd8c30") - .build()) - .call(); +### Response - if (res.rehire().isPresent()) { - System.out.println(res.rehire().get()); - } - } -} -``` -### Example Usage: Nested +**[GetV1EmployeesEmployeeIdEmploymentHistoryResponse](../../models/operations/GetV1EmployeesEmployeeIdEmploymentHistoryResponse.md)** - -```java -package hello.world; +### Errors -import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.RehireBody; -import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PostV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PostV1EmployeesEmployeeIdRehireResponse; -import java.lang.Exception; +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | -public class Application { +## getTerminations - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { +Terminations are created whenever an employee is scheduled to leave the company. The only things required are an effective date (their last day of work) and whether they should receive their wages in a one-off termination payroll or with the rest of the company. - GustoEmbedded sdk = GustoEmbedded.builder() - .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) - .build(); +Note that some states require employees to receive their final wages within 24 hours (unless they consent otherwise,) in which case running a one-off payroll may be the only option. - PostV1EmployeesEmployeeIdRehireResponse res = sdk.employeeEmployments().createRehire() - .xGustoAPIVersion(PostV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .employeeId("") - .rehireBody(RehireBody.builder() - .effectiveDate("") - .fileNewHireReport(false) - .workLocationUuid("") - .build()) - .call(); +scope: `employments:read` - if (res.rehire().isPresent()) { - System.out.println(res.rehire().get()); - } - } -} -``` -### Example Usage: Resource +### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.RehireBody; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PostV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PostV1EmployeesEmployeeIdRehireResponse; +import com.gusto.embedded_api.models.operations.GetV1EmployeesEmployeeIdTerminationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetV1EmployeesEmployeeIdTerminationsResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + public static void main(String[] args) throws NotFoundErrorObject, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostV1EmployeesEmployeeIdRehireResponse res = sdk.employeeEmployments().createRehire() - .xGustoAPIVersion(PostV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + GetV1EmployeesEmployeeIdTerminationsResponse res = sdk.employeeEmployments().getTerminations() + .xGustoAPIVersion(GetV1EmployeesEmployeeIdTerminationsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .employeeId("") - .rehireBody(RehireBody.builder() - .effectiveDate("") - .fileNewHireReport(false) - .workLocationUuid("") - .build()) .call(); - if (res.rehire().isPresent()) { - System.out.println(res.rehire().get()); + if (res.terminations().isPresent()) { + System.out.println(res.terminations().get()); } } } @@ -684,40 +589,38 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeIdTerminationsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | -| `rehireBody` | [RehireBody](../../models/components/RehireBody.md) | :heavy_check_mark: | N/A | ### Response -**[PostV1EmployeesEmployeeIdRehireResponse](../../models/operations/PostV1EmployeesEmployeeIdRehireResponse.md)** +**[GetV1EmployeesEmployeeIdTerminationsResponse](../../models/operations/GetV1EmployeesEmployeeIdTerminationsResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| -------------------------------------- | -------------------------------------- | -------------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/UnprocessableEntityError | 422 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | -## rehire +## createTermination -Update an employee's rehire. +Create a termination for an employee. The only things required are an effective date (their last day of work) and whether they should receive their wages in a one-off termination payroll or with the rest of the company. + +Note that some states require employees to receive their final wages within 24 hours (unless they consent otherwise,) in which case running a one-off payroll may be the only option. scope: `employments:write` ### Example Usage: Basic - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.RehireUpdateRequestBody; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PutV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PutV1EmployeesEmployeeIdRehireResponse; +import com.gusto.embedded_api.models.operations.*; import java.lang.Exception; public class Application { @@ -728,35 +631,30 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1EmployeesEmployeeIdRehireResponse res = sdk.employeeEmployments().rehire() - .xGustoAPIVersion(PutV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + PostV1EmployeesEmployeeIdTerminationsResponse res = sdk.employeeEmployments().createTermination() + .xGustoAPIVersion(PostV1EmployeesEmployeeIdTerminationsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .employeeId("") - .rehireUpdateRequestBody(RehireUpdateRequestBody.builder() - .version("56d00c178bc7393b2a206ed6a86afcb4") + .requestBody(PostV1EmployeesEmployeeIdTerminationsRequestBody.builder() .effectiveDate("") - .fileNewHireReport(true) - .workLocationUuid("") .build()) .call(); - if (res.rehire().isPresent()) { - System.out.println(res.rehire().get()); + if (res.termination().isPresent()) { + System.out.println(res.termination().get()); } } } ``` ### Example Usage: Example - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.RehireUpdateRequestBody; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PutV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PutV1EmployeesEmployeeIdRehireResponse; +import com.gusto.embedded_api.models.operations.*; import java.lang.Exception; public class Application { @@ -767,35 +665,31 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1EmployeesEmployeeIdRehireResponse res = sdk.employeeEmployments().rehire() - .xGustoAPIVersion(PutV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + PostV1EmployeesEmployeeIdTerminationsResponse res = sdk.employeeEmployments().createTermination() + .xGustoAPIVersion(PostV1EmployeesEmployeeIdTerminationsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .employeeId("") - .rehireUpdateRequestBody(RehireUpdateRequestBody.builder() - .version("1928d0c378e519e9c03fb959bc959a6b") - .effectiveDate("2023-06-30") - .fileNewHireReport(true) - .workLocationUuid("b6ae9d93-d4b8-4119-8c96-dba595dd8c30") + .requestBody(PostV1EmployeesEmployeeIdTerminationsRequestBody.builder() + .effectiveDate("2020-06-30") + .runTerminationPayroll(true) .build()) .call(); - if (res.rehire().isPresent()) { - System.out.println(res.rehire().get()); + if (res.termination().isPresent()) { + System.out.println(res.termination().get()); } } } ``` ### Example Usage: Nested - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.RehireUpdateRequestBody; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PutV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PutV1EmployeesEmployeeIdRehireResponse; +import com.gusto.embedded_api.models.operations.*; import java.lang.Exception; public class Application { @@ -806,35 +700,30 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1EmployeesEmployeeIdRehireResponse res = sdk.employeeEmployments().rehire() - .xGustoAPIVersion(PutV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + PostV1EmployeesEmployeeIdTerminationsResponse res = sdk.employeeEmployments().createTermination() + .xGustoAPIVersion(PostV1EmployeesEmployeeIdTerminationsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .employeeId("") - .rehireUpdateRequestBody(RehireUpdateRequestBody.builder() - .version("56d00c178bc7393b2a206ed6a86afcb4") + .requestBody(PostV1EmployeesEmployeeIdTerminationsRequestBody.builder() .effectiveDate("") - .fileNewHireReport(true) - .workLocationUuid("") .build()) .call(); - if (res.rehire().isPresent()) { - System.out.println(res.rehire().get()); + if (res.termination().isPresent()) { + System.out.println(res.termination().get()); } } } ``` ### Example Usage: Resource - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.RehireUpdateRequestBody; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PutV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PutV1EmployeesEmployeeIdRehireResponse; +import com.gusto.embedded_api.models.operations.*; import java.lang.Exception; public class Application { @@ -845,19 +734,16 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1EmployeesEmployeeIdRehireResponse res = sdk.employeeEmployments().rehire() - .xGustoAPIVersion(PutV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + PostV1EmployeesEmployeeIdTerminationsResponse res = sdk.employeeEmployments().createTermination() + .xGustoAPIVersion(PostV1EmployeesEmployeeIdTerminationsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .employeeId("") - .rehireUpdateRequestBody(RehireUpdateRequestBody.builder() - .version("56d00c178bc7393b2a206ed6a86afcb4") + .requestBody(PostV1EmployeesEmployeeIdTerminationsRequestBody.builder() .effectiveDate("") - .fileNewHireReport(true) - .workLocationUuid("") .build()) .call(); - if (res.rehire().isPresent()) { - System.out.println(res.rehire().get()); + if (res.termination().isPresent()) { + System.out.println(res.termination().get()); } } } @@ -865,15 +751,15 @@ public class Application { ### Parameters -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | -| `rehireUpdateRequestBody` | [RehireUpdateRequestBody](../../models/components/RehireUpdateRequestBody.md) | :heavy_check_mark: | N/A | +| Parameter | Type | Required | Description | Example | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1EmployeesEmployeeIdTerminationsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | | +| `requestBody` | [PostV1EmployeesEmployeeIdTerminationsRequestBody](../../models/operations/PostV1EmployeesEmployeeIdTerminationsRequestBody.md) | :heavy_check_mark: | N/A | {
    "effective_date": "2020-06-30",
    "run_termination_payroll": false
    } | ### Response -**[PutV1EmployeesEmployeeIdRehireResponse](../../models/operations/PutV1EmployeesEmployeeIdRehireResponse.md)** +**[PostV1EmployeesEmployeeIdTerminationsResponse](../../models/operations/PostV1EmployeesEmployeeIdTerminationsResponse.md)** ### Errors @@ -883,23 +769,23 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## deleteRehire +## deleteTermination -Delete an employee rehire. An employee rehire cannot be deleted if it's active (past effective date). +Delete an employee termination. scope: `employments:write` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.DeleteV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.DeleteV1EmployeesEmployeeIdRehireResponse; +import com.gusto.embedded_api.models.operations.DeleteV1EmployeesEmployeeIdTerminationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.DeleteV1EmployeesEmployeeIdTerminationsResponse; import java.lang.Exception; public class Application { @@ -910,8 +796,8 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - DeleteV1EmployeesEmployeeIdRehireResponse res = sdk.employeeEmployments().deleteRehire() - .xGustoAPIVersion(DeleteV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + DeleteV1EmployeesEmployeeIdTerminationsResponse res = sdk.employeeEmployments().deleteTermination() + .xGustoAPIVersion(DeleteV1EmployeesEmployeeIdTerminationsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .employeeId("") .call(); @@ -924,12 +810,12 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1EmployeesEmployeeIdTerminationsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | ### Response -**[DeleteV1EmployeesEmployeeIdRehireResponse](../../models/operations/DeleteV1EmployeesEmployeeIdRehireResponse.md)** +**[DeleteV1EmployeesEmployeeIdTerminationsResponse](../../models/operations/DeleteV1EmployeesEmployeeIdTerminationsResponse.md)** ### Errors @@ -939,39 +825,151 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## getHistory +## updateTermination -Retrieve the employment history for a given employee, which includes termination and rehire. +Terminations are created whenever an employee is scheduled to leave the company. The only things required are an effective date (their last day of work) and whether they should receive their wages in a one-off termination payroll or with the rest of the company. -scope: `employments:read` +Note that some states require employees to receive their final wages within 24 hours (unless they consent otherwise,) in which case running a one-off payroll may be the only option. -### Example Usage +scope: `employments:write` - +### Example Usage: Basic + + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.operations.GetV1EmployeesEmployeeIdEmploymentHistoryHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.GetV1EmployeesEmployeeIdEmploymentHistoryResponse; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.operations.*; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, Exception { + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1EmployeesEmployeeIdEmploymentHistoryResponse res = sdk.employeeEmployments().getHistory() - .xGustoAPIVersion(GetV1EmployeesEmployeeIdEmploymentHistoryHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + PutV1TerminationsEmployeeIdResponse res = sdk.employeeEmployments().updateTermination() + .xGustoAPIVersion(PutV1TerminationsEmployeeIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .employeeId("") + .requestBody(PutV1TerminationsEmployeeIdRequestBody.builder() + .version("56d00c178bc7393b2a206ed6a86afcb4") + .effectiveDate("") + .build()) .call(); - if (res.employmentHistoryList().isPresent()) { - System.out.println(res.employmentHistoryList().get()); + if (res.termination().isPresent()) { + System.out.println(res.termination().get()); + } + } +} +``` +### Example Usage: Example + + +```java +package hello.world; + +import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.operations.*; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + PutV1TerminationsEmployeeIdResponse res = sdk.employeeEmployments().updateTermination() + .xGustoAPIVersion(PutV1TerminationsEmployeeIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .employeeId("") + .requestBody(PutV1TerminationsEmployeeIdRequestBody.builder() + .version("1928d0c378e519e9c03fb959bc959a6b") + .effectiveDate("2020-06-30") + .runTerminationPayroll(true) + .build()) + .call(); + + if (res.termination().isPresent()) { + System.out.println(res.termination().get()); + } + } +} +``` +### Example Usage: Nested + + +```java +package hello.world; + +import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.operations.*; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + PutV1TerminationsEmployeeIdResponse res = sdk.employeeEmployments().updateTermination() + .xGustoAPIVersion(PutV1TerminationsEmployeeIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .employeeId("") + .requestBody(PutV1TerminationsEmployeeIdRequestBody.builder() + .version("56d00c178bc7393b2a206ed6a86afcb4") + .effectiveDate("") + .build()) + .call(); + + if (res.termination().isPresent()) { + System.out.println(res.termination().get()); + } + } +} +``` +### Example Usage: Resource + + +```java +package hello.world; + +import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.operations.*; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + PutV1TerminationsEmployeeIdResponse res = sdk.employeeEmployments().updateTermination() + .xGustoAPIVersion(PutV1TerminationsEmployeeIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .employeeId("") + .requestBody(PutV1TerminationsEmployeeIdRequestBody.builder() + .version("56d00c178bc7393b2a206ed6a86afcb4") + .effectiveDate("") + .build()) + .call(); + + if (res.termination().isPresent()) { + System.out.println(res.termination().get()); } } } @@ -979,21 +977,23 @@ public class Application { ### Parameters -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeIdEmploymentHistoryHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | +| Parameter | Type | Required | Description | Example | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1TerminationsEmployeeIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | | +| `requestBody` | [PutV1TerminationsEmployeeIdRequestBody](../../models/operations/PutV1TerminationsEmployeeIdRequestBody.md) | :heavy_check_mark: | N/A | {
    "version": "d487dd0b55dfcacdd920ccbdaeafa351",
    "effective_date": "2020-06-30",
    "run_termination_payroll": false
    } | ### Response -**[GetV1EmployeesEmployeeIdEmploymentHistoryResponse](../../models/operations/GetV1EmployeesEmployeeIdEmploymentHistoryResponse.md)** +**[PutV1TerminationsEmployeeIdResponse](../../models/operations/PutV1TerminationsEmployeeIdResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| --------------------------------- | --------------------------------- | --------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | ## getV1TerminationsEmployeeId diff --git a/gusto_embedded/docs/sdks/employeeforms/README.md b/gusto_embedded/docs/sdks/employeeforms/README.md index 615cde31f..fcb14ebd4 100644 --- a/gusto_embedded/docs/sdks/employeeforms/README.md +++ b/gusto_embedded/docs/sdks/employeeforms/README.md @@ -4,140 +4,11 @@ ### Available Operations -* [generateW2](#generatew2) - Generate a W2 form [DEMO] * [list](#list) - Get all employee forms * [get](#get) - Get an employee form * [getPdf](#getpdf) - Get the employee form pdf * [sign](#sign) - Sign an employee form - -## generateW2 - -> 🚧 Demo action -> -> This action is only available in the Demo environment - -Generates a W2 document for testing purposes. - -scope: `employees:write` - -### Example Usage: Basic - - -```java -package hello.world; - -import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.*; -import java.lang.Exception; - -public class Application { - - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { - - GustoEmbedded sdk = GustoEmbedded.builder() - .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) - .build(); - - PostV1SandboxGenerateW2Response res = sdk.employeeForms().generateW2() - .xGustoAPIVersion(PostV1SandboxGenerateW2HeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .requestBody(PostV1SandboxGenerateW2RequestBody.builder() - .employeeId("") - .build()) - .call(); - - if (res.form().isPresent()) { - System.out.println(res.form().get()); - } - } -} -``` -### Example Usage: Nested - - -```java -package hello.world; - -import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.*; -import java.lang.Exception; - -public class Application { - - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { - - GustoEmbedded sdk = GustoEmbedded.builder() - .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) - .build(); - - PostV1SandboxGenerateW2Response res = sdk.employeeForms().generateW2() - .xGustoAPIVersion(PostV1SandboxGenerateW2HeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .requestBody(PostV1SandboxGenerateW2RequestBody.builder() - .employeeId("") - .build()) - .call(); - - if (res.form().isPresent()) { - System.out.println(res.form().get()); - } - } -} -``` -### Example Usage: Resource - - -```java -package hello.world; - -import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.*; -import java.lang.Exception; - -public class Application { - - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { - - GustoEmbedded sdk = GustoEmbedded.builder() - .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) - .build(); - - PostV1SandboxGenerateW2Response res = sdk.employeeForms().generateW2() - .xGustoAPIVersion(PostV1SandboxGenerateW2HeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .requestBody(PostV1SandboxGenerateW2RequestBody.builder() - .employeeId("") - .build()) - .call(); - - if (res.form().isPresent()) { - System.out.println(res.form().get()); - } - } -} -``` - -### Parameters - -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1SandboxGenerateW2HeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `requestBody` | [PostV1SandboxGenerateW2RequestBody](../../models/operations/PostV1SandboxGenerateW2RequestBody.md) | :heavy_check_mark: | N/A | - -### Response - -**[PostV1SandboxGenerateW2Response](../../models/operations/PostV1SandboxGenerateW2Response.md)** - -### Errors - -| Error Type | Status Code | Content Type | -| -------------------------------------- | -------------------------------------- | -------------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/UnprocessableEntityError | 422 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | +* [generateW2](#generatew2) - Generate a W2 form [DEMO] ## list @@ -490,6 +361,135 @@ public class Application { ### Errors +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | + +## generateW2 + +> 🚧 Demo action +> +> This action is only available in the Demo environment + +Generates a W2 document for testing purposes. + +scope: `employees:write` + +### Example Usage: Basic + + +```java +package hello.world; + +import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.operations.*; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + PostV1SandboxGenerateW2Response res = sdk.employeeForms().generateW2() + .xGustoAPIVersion(PostV1SandboxGenerateW2HeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .requestBody(PostV1SandboxGenerateW2RequestBody.builder() + .employeeId("") + .build()) + .call(); + + if (res.form().isPresent()) { + System.out.println(res.form().get()); + } + } +} +``` +### Example Usage: Nested + + +```java +package hello.world; + +import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.operations.*; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + PostV1SandboxGenerateW2Response res = sdk.employeeForms().generateW2() + .xGustoAPIVersion(PostV1SandboxGenerateW2HeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .requestBody(PostV1SandboxGenerateW2RequestBody.builder() + .employeeId("") + .build()) + .call(); + + if (res.form().isPresent()) { + System.out.println(res.form().get()); + } + } +} +``` +### Example Usage: Resource + + +```java +package hello.world; + +import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.operations.*; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + PostV1SandboxGenerateW2Response res = sdk.employeeForms().generateW2() + .xGustoAPIVersion(PostV1SandboxGenerateW2HeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .requestBody(PostV1SandboxGenerateW2RequestBody.builder() + .employeeId("") + .build()) + .call(); + + if (res.form().isPresent()) { + System.out.println(res.form().get()); + } + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1SandboxGenerateW2HeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `requestBody` | [PostV1SandboxGenerateW2RequestBody](../../models/operations/PostV1SandboxGenerateW2RequestBody.md) | :heavy_check_mark: | N/A | + +### Response + +**[PostV1SandboxGenerateW2Response](../../models/operations/PostV1SandboxGenerateW2Response.md)** + +### Errors + | Error Type | Status Code | Content Type | | -------------------------------------- | -------------------------------------- | -------------------------------------- | | models/errors/NotFoundErrorObject | 404 | application/json | diff --git a/gusto_embedded/docs/sdks/employeepaymentmethod/README.md b/gusto_embedded/docs/sdks/employeepaymentmethod/README.md index c32d816ff..9ed9ebe01 100644 --- a/gusto_embedded/docs/sdks/employeepaymentmethod/README.md +++ b/gusto_embedded/docs/sdks/employeepaymentmethod/README.md @@ -534,7 +534,7 @@ public class Application { .employeeId("") .requestBody(PutV1EmployeesEmployeeIdPaymentMethodRequestBody.builder() .version("") - .type(Type.DIRECT_DEPOSIT) + .type(PutV1EmployeesEmployeeIdPaymentMethodType.DIRECT_DEPOSIT) .build()) .call(); @@ -569,7 +569,7 @@ public class Application { .employeeId("") .requestBody(PutV1EmployeesEmployeeIdPaymentMethodRequestBody.builder() .version("") - .type(Type.DIRECT_DEPOSIT) + .type(PutV1EmployeesEmployeeIdPaymentMethodType.DIRECT_DEPOSIT) .build()) .call(); @@ -604,7 +604,7 @@ public class Application { .employeeId("") .requestBody(PutV1EmployeesEmployeeIdPaymentMethodRequestBody.builder() .version("") - .type(Type.DIRECT_DEPOSIT) + .type(PutV1EmployeesEmployeeIdPaymentMethodType.DIRECT_DEPOSIT) .build()) .call(); @@ -639,7 +639,7 @@ public class Application { .employeeId("") .requestBody(PutV1EmployeesEmployeeIdPaymentMethodRequestBody.builder() .version("") - .type(Type.DIRECT_DEPOSIT) + .type(PutV1EmployeesEmployeeIdPaymentMethodType.DIRECT_DEPOSIT) .build()) .call(); @@ -676,7 +676,7 @@ public class Application { .employeeId("") .requestBody(PutV1EmployeesEmployeeIdPaymentMethodRequestBody.builder() .version("63859768485e218ccf8a449bb60f14ed") - .type(Type.DIRECT_DEPOSIT) + .type(PutV1EmployeesEmployeeIdPaymentMethodType.DIRECT_DEPOSIT) .splitBy(SplitBy.AMOUNT) .splits(List.of( Splits.builder() @@ -732,7 +732,7 @@ public class Application { .employeeId("") .requestBody(PutV1EmployeesEmployeeIdPaymentMethodRequestBody.builder() .version("63859768485e218ccf8a449bb60f14ed") - .type(Type.DIRECT_DEPOSIT) + .type(PutV1EmployeesEmployeeIdPaymentMethodType.DIRECT_DEPOSIT) .splitBy(SplitBy.PERCENTAGE) .splits(List.of( Splits.builder() @@ -781,7 +781,7 @@ public class Application { .employeeId("") .requestBody(PutV1EmployeesEmployeeIdPaymentMethodRequestBody.builder() .version("63859768485e218ccf8a449bb60f14ed") - .type(Type.CHECK) + .type(PutV1EmployeesEmployeeIdPaymentMethodType.CHECK) .build()) .call(); diff --git a/gusto_embedded/docs/sdks/employees/README.md b/gusto_embedded/docs/sdks/employees/README.md index f39319486..4acea4db4 100644 --- a/gusto_embedded/docs/sdks/employees/README.md +++ b/gusto_embedded/docs/sdks/employees/README.md @@ -4,37 +4,35 @@ ### Available Operations -* [list](#list) - Get employees of a company -* [create](#create) - Create an employee +* [getCustomFields](#getcustomfields) - Get an employee's custom fields * [getV1CompaniesCompanyIdEmployeesPaymentDetails](#getv1companiescompanyidemployeespaymentdetails) - Get employee payment details for a company -* [createHistorical](#createhistorical) - Create a historical employee +* [getTimeOffActivities](#gettimeoffactivities) - Get employee time off activities * [get](#get) - Get an employee * [update](#update) - Update an employee. * [delete](#delete) - Delete an onboarding employee -* [getCustomFields](#getcustomfields) - Get an employee's custom fields -* [updateOnboardingDocumentsConfig](#updateonboardingdocumentsconfig) - Update employee onboarding documents config +* [list](#list) - Get employees of a company +* [create](#create) - Create an employee * [getOnboardingStatus](#getonboardingstatus) - Get the employee's onboarding status * [updateOnboardingStatus](#updateonboardingstatus) - Update the employee's onboarding status -* [getTimeOffActivities](#gettimeoffactivities) - Get employee time off activities - -## list +* [updateOnboardingDocumentsConfig](#updateonboardingdocumentsconfig) - Update employee onboarding documents config +* [createHistorical](#createhistorical) - Create a historical employee -Get all of the employees, onboarding, active and terminated, for a given company. +## getCustomFields -Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope is included. This allows you to access employee and job metadata without exposing pay rates. +Returns a list of the employee's custom fields. scope: `employees:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdEmployeesRequest; -import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdEmployeesResponse; +import com.gusto.embedded_api.models.operations.GetV1EmployeesEmployeeIdCustomFieldsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetV1EmployeesEmployeeIdCustomFieldsResponse; import java.lang.Exception; public class Application { @@ -45,17 +43,13 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1CompaniesCompanyIdEmployeesRequest req = GetV1CompaniesCompanyIdEmployeesRequest.builder() - .companyId("") - .sortBy("name:desc") - .build(); - - GetV1CompaniesCompanyIdEmployeesResponse res = sdk.employees().list() - .request(req) + GetV1EmployeesEmployeeIdCustomFieldsResponse res = sdk.employees().getCustomFields() + .xGustoAPIVersion(GetV1EmployeesEmployeeIdCustomFieldsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .employeeId("") .call(); - if (res.showEmployees().isPresent()) { - System.out.println(res.showEmployees().get()); + if (res.employeeCustomFieldList().isPresent()) { + System.out.println(res.employeeCustomFieldList().get()); } } } @@ -63,13 +57,16 @@ public class Application { ### Parameters -| Parameter | Type | Required | Description | -| ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | -| `request` | [GetV1CompaniesCompanyIdEmployeesRequest](../../models/operations/GetV1CompaniesCompanyIdEmployeesRequest.md) | :heavy_check_mark: | The request object to use for the request. | +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeIdCustomFieldsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | +| `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | +| `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | ### Response -**[GetV1CompaniesCompanyIdEmployeesResponse](../../models/operations/GetV1CompaniesCompanyIdEmployeesResponse.md)** +**[GetV1EmployeesEmployeeIdCustomFieldsResponse](../../models/operations/GetV1EmployeesEmployeeIdCustomFieldsResponse.md)** ### Errors @@ -78,23 +75,30 @@ public class Application { | models/errors/NotFoundErrorObject | 404 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## create +## getV1CompaniesCompanyIdEmployeesPaymentDetails -Create an employee. +Fetches payment details for employees in a given company. Results are paginated. -scope: `employees:manage` +Use the `employee_uuid` query parameter to filter for a single employee. +Use the `payroll_uuid` query parameter to filter for employees on a specific payroll. +Providing both `employee_uuid` and `payroll_uuid` will result in a 422 error. +An empty array is returned if the company has no employees or if no employees match the filter criteria. + +The `encrypted_account_number` in the `splits` array is only visible if the `employee_payment_methods:read:account_number` scope is present. + +scope: `employee_payment_methods:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PostV1EmployeesHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PostV1EmployeesResponse; +import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdEmployeesPaymentDetailsRequest; +import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdEmployeesPaymentDetailsResponse; import java.lang.Exception; public class Application { @@ -105,13 +109,16 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostV1EmployeesResponse res = sdk.employees().create() - .xGustoAPIVersion(PostV1EmployeesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + GetV1CompaniesCompanyIdEmployeesPaymentDetailsRequest req = GetV1CompaniesCompanyIdEmployeesPaymentDetailsRequest.builder() .companyId("") + .build(); + + GetV1CompaniesCompanyIdEmployeesPaymentDetailsResponse res = sdk.employees().getV1CompaniesCompanyIdEmployeesPaymentDetails() + .request(req) .call(); - if (res.employee().isPresent()) { - System.out.println(res.employee().get()); + if (res.employeePaymentDetailsList().isPresent()) { + System.out.println(res.employeePaymentDetailsList().get()); } } } @@ -119,15 +126,13 @@ public class Application { ### Parameters -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1EmployeesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `companyId` | *String* | :heavy_check_mark: | Company ID | -| `requestBody` | [Optional\](../../models/operations/PostV1EmployeesRequestBody.md) | :heavy_minus_sign: | N/A | +| Parameter | Type | Required | Description | +| ----------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | +| `request` | [GetV1CompaniesCompanyIdEmployeesPaymentDetailsRequest](../../models/operations/GetV1CompaniesCompanyIdEmployeesPaymentDetailsRequest.md) | :heavy_check_mark: | The request object to use for the request. | ### Response -**[PostV1EmployeesResponse](../../models/operations/PostV1EmployeesResponse.md)** +**[GetV1CompaniesCompanyIdEmployeesPaymentDetailsResponse](../../models/operations/GetV1CompaniesCompanyIdEmployeesPaymentDetailsResponse.md)** ### Errors @@ -137,30 +142,23 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## getV1CompaniesCompanyIdEmployeesPaymentDetails - -Fetches payment details for employees in a given company. Results are paginated. - -Use the `employee_uuid` query parameter to filter for a single employee. -Use the `payroll_uuid` query parameter to filter for employees on a specific payroll. -Providing both `employee_uuid` and `payroll_uuid` will result in a 422 error. -An empty array is returned if the company has no employees or if no employees match the filter criteria. +## getTimeOffActivities -The `encrypted_account_number` in the `splits` array is only visible if the `employee_payment_methods:read:account_number` scope is present. +Get employee time off activities. -scope: `employee_payment_methods:read` +scope: `employee_time_off_activities:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdEmployeesPaymentDetailsRequest; -import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdEmployeesPaymentDetailsResponse; +import com.gusto.embedded_api.models.operations.GetVersionEmployeesTimeOffActivitiesHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetVersionEmployeesTimeOffActivitiesResponse; import java.lang.Exception; public class Application { @@ -171,16 +169,14 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1CompaniesCompanyIdEmployeesPaymentDetailsRequest req = GetV1CompaniesCompanyIdEmployeesPaymentDetailsRequest.builder() - .companyId("") - .build(); - - GetV1CompaniesCompanyIdEmployeesPaymentDetailsResponse res = sdk.employees().getV1CompaniesCompanyIdEmployeesPaymentDetails() - .request(req) + GetVersionEmployeesTimeOffActivitiesResponse res = sdk.employees().getTimeOffActivities() + .xGustoAPIVersion(GetVersionEmployeesTimeOffActivitiesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .employeeUuid("") + .timeOffType("") .call(); - if (res.employeePaymentDetailsList().isPresent()) { - System.out.println(res.employeePaymentDetailsList().get()); + if (res.timeOffActivityList().isPresent()) { + System.out.println(res.timeOffActivityList().get()); } } } @@ -188,13 +184,15 @@ public class Application { ### Parameters -| Parameter | Type | Required | Description | -| ----------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | -| `request` | [GetV1CompaniesCompanyIdEmployeesPaymentDetailsRequest](../../models/operations/GetV1CompaniesCompanyIdEmployeesPaymentDetailsRequest.md) | :heavy_check_mark: | The request object to use for the request. | +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetVersionEmployeesTimeOffActivitiesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeUuid` | *String* | :heavy_check_mark: | The UUID of the employee | +| `timeOffType` | *String* | :heavy_check_mark: | The time off type name you want to query data for. ex: 'sick' or 'vacation' | ### Response -**[GetV1CompaniesCompanyIdEmployeesPaymentDetailsResponse](../../models/operations/GetV1CompaniesCompanyIdEmployeesPaymentDetailsResponse.md)** +**[GetVersionEmployeesTimeOffActivitiesResponse](../../models/operations/GetVersionEmployeesTimeOffActivitiesResponse.md)** ### Errors @@ -204,59 +202,37 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## createHistorical +## get -Create a historical employee, an employee that was previously dismissed from the company in the current year. +Get an employee. -scope: `employees:manage` +Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope is included. This allows you to access employee and job metadata without exposing pay rates. -### Example Usage: Basic +scope: `employees:read` - +### Example Usage + + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.*; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PostV1HistoricalEmployeesHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PostV1HistoricalEmployeesResponse; +import com.gusto.embedded_api.models.operations.GetV1EmployeesHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetV1EmployeesResponse; import java.lang.Exception; -import java.time.LocalDate; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + public static void main(String[] args) throws NotFoundErrorObject, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostV1HistoricalEmployeesResponse res = sdk.employees().createHistorical() - .xGustoAPIVersion(PostV1HistoricalEmployeesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .companyUuid("") - .historicalEmployeeBody(HistoricalEmployeeBody.builder() - .firstName("Maida") - .lastName("Schroeder") - .dateOfBirth(LocalDate.parse("1959-03-15")) - .ssn("") - .workAddress(WorkAddress.builder() - .locationUuid("1da85d35-1910-40a7-9c1f-8e2b3d4c5a6f") - .build()) - .homeAddress(HistoricalEmployeeBodyHomeAddress.builder() - .street1("") - .city("Beerstead") - .state("Arizona") - .zip("05000-6136") - .build()) - .termination(HistoricalEmployeeBodyTermination.builder() - .effectiveDate(LocalDate.parse("2022-01-01")) - .build()) - .job(HistoricalEmployeeBodyJob.builder() - .hireDate(LocalDate.parse("2020-01-01")) - .build()) - .build()) + GetV1EmployeesResponse res = sdk.employees().get() + .xGustoAPIVersion(GetV1EmployeesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .employeeId("") .call(); if (res.employee().isPresent()) { @@ -265,20 +241,43 @@ public class Application { } } ``` -### Example Usage: Create Historical Employee Example - +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | +| `include` | List\<[GetV1EmployeesQueryParamInclude](../../models/operations/GetV1EmployeesQueryParamInclude.md)> | :heavy_minus_sign: | Include the requested attribute(s) in each employee response. Multiple options are comma separated. | + +### Response + +**[GetV1EmployeesResponse](../../models/operations/GetV1EmployeesResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | + +## update + +Update an employee. + +scope: `employees:write` + +### Example Usage + + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.*; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PostV1HistoricalEmployeesHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PostV1HistoricalEmployeesResponse; +import com.gusto.embedded_api.models.operations.*; import java.lang.Exception; -import java.time.LocalDate; public class Application { @@ -288,29 +287,18 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostV1HistoricalEmployeesResponse res = sdk.employees().createHistorical() - .xGustoAPIVersion(PostV1HistoricalEmployeesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .companyUuid("") - .historicalEmployeeBody(HistoricalEmployeeBody.builder() - .firstName("Maida") - .lastName("Schroeder") - .dateOfBirth(LocalDate.parse("1959-03-15")) - .ssn("") - .workAddress(WorkAddress.builder() - .locationUuid("1da85d35-1910-40a7-9c1f-8e2b3d4c5a6f") - .build()) - .homeAddress(HistoricalEmployeeBodyHomeAddress.builder() - .street1("") - .city("Beerstead") - .state("Arizona") - .zip("05000-6136") - .build()) - .termination(HistoricalEmployeeBodyTermination.builder() - .effectiveDate(LocalDate.parse("2022-01-01")) - .build()) - .job(HistoricalEmployeeBodyJob.builder() - .hireDate(LocalDate.parse("2020-01-01")) - .build()) + PutV1EmployeesResponse res = sdk.employees().update() + .xGustoAPIVersion(PutV1EmployeesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .employeeId("") + .requestBody(PutV1EmployeesRequestBody.builder() + .version("56d00c178bc7393b2a206ed6a86afcb4") + .firstName("Weezy") + .middleInitial("F") + .lastName("Baby") + .email("tunechi@cashmoneyrecords.com") + .workEmail("new.partner.work@example.com") + .dateOfBirth("1991-01-31") + .ssn("824920233") .build()) .call(); @@ -320,138 +308,47 @@ public class Application { } } ``` -### Example Usage: Example - -```java -package hello.world; +### Parameters -import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.*; -import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PostV1HistoricalEmployeesHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PostV1HistoricalEmployeesResponse; -import java.lang.Exception; -import java.time.LocalDate; -import org.openapitools.jackson.nullable.JsonNullable; - -public class Application { - - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { - - GustoEmbedded sdk = GustoEmbedded.builder() - .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) - .build(); - - PostV1HistoricalEmployeesResponse res = sdk.employees().createHistorical() - .xGustoAPIVersion(PostV1HistoricalEmployeesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .companyUuid("") - .historicalEmployeeBody(HistoricalEmployeeBody.builder() - .firstName("Soren") - .lastName("Kierkegaard") - .dateOfBirth(LocalDate.parse("1995-05-05T00:00:00Z")) - .ssn("123456294") - .workAddress(WorkAddress.builder() - .locationUuid("1da85d35-1910-4d5e-8e94-39e8cdfe8c9a") - .build()) - .homeAddress(HistoricalEmployeeBodyHomeAddress.builder() - .street1("300 3rd Street") - .city("San Francisco") - .state("CA") - .zip("94107") - .street2(JsonNullable.of(null)) - .build()) - .termination(HistoricalEmployeeBodyTermination.builder() - .effectiveDate(LocalDate.parse("2022-09-15T00:00:00Z")) - .build()) - .job(HistoricalEmployeeBodyJob.builder() - .hireDate(LocalDate.parse("2018-05-09T00:00:00Z")) - .build()) - .middleInitial("A") - .preferredFirstName("Angel") - .employeeStateTaxes(EmployeeStateTaxes.builder() - .wcCovered(true) - .wcClassCode("20992") - .build()) - .build()) - .call(); +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1EmployeesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | +| `requestBody` | [PutV1EmployeesRequestBody](../../models/operations/PutV1EmployeesRequestBody.md) | :heavy_check_mark: | N/A | - if (res.employee().isPresent()) { - System.out.println(res.employee().get()); - } - } -} -``` -### Example Usage: Nested +### Response - -```java -package hello.world; +**[PutV1EmployeesResponse](../../models/operations/PutV1EmployeesResponse.md)** -import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.*; -import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PostV1HistoricalEmployeesHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PostV1HistoricalEmployeesResponse; -import java.lang.Exception; -import java.time.LocalDate; +### Errors -public class Application { +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 409, 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { +## delete - GustoEmbedded sdk = GustoEmbedded.builder() - .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) - .build(); +Use this endpoint to delete an employee who is in onboarding. Deleting +an onboarded employee is not allowed and will return a 422 response. Please check out the Terminations api +if you need to terminate an onboarded employee. - PostV1HistoricalEmployeesResponse res = sdk.employees().createHistorical() - .xGustoAPIVersion(PostV1HistoricalEmployeesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .companyUuid("") - .historicalEmployeeBody(HistoricalEmployeeBody.builder() - .firstName("Maida") - .lastName("Schroeder") - .dateOfBirth(LocalDate.parse("1959-03-15")) - .ssn("") - .workAddress(WorkAddress.builder() - .locationUuid("1da85d35-1910-40a7-9c1f-8e2b3d4c5a6f") - .build()) - .homeAddress(HistoricalEmployeeBodyHomeAddress.builder() - .street1("") - .city("Beerstead") - .state("Arizona") - .zip("05000-6136") - .build()) - .termination(HistoricalEmployeeBodyTermination.builder() - .effectiveDate(LocalDate.parse("2022-01-01")) - .build()) - .job(HistoricalEmployeeBodyJob.builder() - .hireDate(LocalDate.parse("2020-01-01")) - .build()) - .build()) - .call(); +scope: `employees:manage` - if (res.employee().isPresent()) { - System.out.println(res.employee().get()); - } - } -} -``` -### Example Usage: Resource +### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.*; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PostV1HistoricalEmployeesHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PostV1HistoricalEmployeesResponse; +import com.gusto.embedded_api.models.operations.DeleteV1EmployeeHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.DeleteV1EmployeeResponse; import java.lang.Exception; -import java.time.LocalDate; public class Application { @@ -461,50 +358,26 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostV1HistoricalEmployeesResponse res = sdk.employees().createHistorical() - .xGustoAPIVersion(PostV1HistoricalEmployeesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .companyUuid("") - .historicalEmployeeBody(HistoricalEmployeeBody.builder() - .firstName("Maida") - .lastName("Schroeder") - .dateOfBirth(LocalDate.parse("1959-03-15")) - .ssn("") - .workAddress(WorkAddress.builder() - .locationUuid("1da85d35-1910-40a7-9c1f-8e2b3d4c5a6f") - .build()) - .homeAddress(HistoricalEmployeeBodyHomeAddress.builder() - .street1("") - .city("Beerstead") - .state("Arizona") - .zip("05000-6136") - .build()) - .termination(HistoricalEmployeeBodyTermination.builder() - .effectiveDate(LocalDate.parse("2022-01-01")) - .build()) - .job(HistoricalEmployeeBodyJob.builder() - .hireDate(LocalDate.parse("2020-01-01")) - .build()) - .build()) + DeleteV1EmployeeResponse res = sdk.employees().delete() + .xGustoAPIVersion(DeleteV1EmployeeHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .employeeId("") .call(); - if (res.employee().isPresent()) { - System.out.println(res.employee().get()); - } + // handle response } } ``` ### Parameters -| Parameter | Type | Required | Description | Example | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1HistoricalEmployeesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company that will employ this historical record. | 7b1d0df1-6403-4a06-8768-c1dd7d24d27a | -| `historicalEmployeeBody` | [HistoricalEmployeeBody](../../models/components/HistoricalEmployeeBody.md) | :heavy_check_mark: | N/A | | +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1EmployeeHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | ### Response -**[PostV1HistoricalEmployeesResponse](../../models/operations/PostV1HistoricalEmployeesResponse.md)** +**[DeleteV1EmployeeResponse](../../models/operations/DeleteV1EmployeeResponse.md)** ### Errors @@ -514,9 +387,9 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## get +## list -Get an employee. +Get all of the employees, onboarding, active and terminated, for a given company. Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope is included. This allows you to access employee and job metadata without exposing pay rates. @@ -524,14 +397,14 @@ scope: `employees:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.operations.GetV1EmployeesHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.GetV1EmployeesResponse; +import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdEmployeesRequest; +import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdEmployeesResponse; import java.lang.Exception; public class Application { @@ -542,13 +415,17 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1EmployeesResponse res = sdk.employees().get() - .xGustoAPIVersion(GetV1EmployeesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .employeeId("") + GetV1CompaniesCompanyIdEmployeesRequest req = GetV1CompaniesCompanyIdEmployeesRequest.builder() + .companyId("") + .sortBy("name:desc") + .build(); + + GetV1CompaniesCompanyIdEmployeesResponse res = sdk.employees().list() + .request(req) .call(); - if (res.employee().isPresent()) { - System.out.println(res.employee().get()); + if (res.showEmployees().isPresent()) { + System.out.println(res.showEmployees().get()); } } } @@ -556,15 +433,13 @@ public class Application { ### Parameters -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | -| `include` | List\<[QueryParamInclude](../../models/operations/QueryParamInclude.md)> | :heavy_minus_sign: | Include the requested attribute(s) in each employee response. Multiple options are comma separated. | +| Parameter | Type | Required | Description | +| ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | +| `request` | [GetV1CompaniesCompanyIdEmployeesRequest](../../models/operations/GetV1CompaniesCompanyIdEmployeesRequest.md) | :heavy_check_mark: | The request object to use for the request. | ### Response -**[GetV1EmployeesResponse](../../models/operations/GetV1EmployeesResponse.md)** +**[GetV1CompaniesCompanyIdEmployeesResponse](../../models/operations/GetV1CompaniesCompanyIdEmployeesResponse.md)** ### Errors @@ -573,22 +448,23 @@ public class Application { | models/errors/NotFoundErrorObject | 404 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## update +## create -Update an employee. +Create an employee. -scope: `employees:write` +scope: `employees:manage` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.*; +import com.gusto.embedded_api.models.operations.PostV1EmployeesHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PostV1EmployeesResponse; import java.lang.Exception; public class Application { @@ -599,19 +475,9 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1EmployeesResponse res = sdk.employees().update() - .xGustoAPIVersion(PutV1EmployeesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .employeeId("") - .requestBody(PutV1EmployeesRequestBody.builder() - .version("56d00c178bc7393b2a206ed6a86afcb4") - .firstName("Weezy") - .middleInitial("F") - .lastName("Baby") - .email("tunechi@cashmoneyrecords.com") - .workEmail("new.partner.work@example.com") - .dateOfBirth("1991-01-31") - .ssn("824920233") - .build()) + PostV1EmployeesResponse res = sdk.employees().create() + .xGustoAPIVersion(PostV1EmployeesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyId("") .call(); if (res.employee().isPresent()) { @@ -625,57 +491,93 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1EmployeesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | -| `requestBody` | [PutV1EmployeesRequestBody](../../models/operations/PutV1EmployeesRequestBody.md) | :heavy_check_mark: | N/A | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1EmployeesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyId` | *String* | :heavy_check_mark: | Company ID | +| `requestBody` | [Optional\](../../models/operations/PostV1EmployeesRequestBody.md) | :heavy_minus_sign: | N/A | ### Response -**[PutV1EmployeesResponse](../../models/operations/PutV1EmployeesResponse.md)** +**[PostV1EmployeesResponse](../../models/operations/PostV1EmployeesResponse.md)** ### Errors | Error Type | Status Code | Content Type | | -------------------------------------- | -------------------------------------- | -------------------------------------- | | models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/UnprocessableEntityError | 409, 422 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## delete +## getOnboardingStatus -Use this endpoint to delete an employee who is in onboarding. Deleting -an onboarded employee is not allowed and will return a 422 response. Please check out the Terminations api -if you need to terminate an onboarded employee. +# Description +Retrieves an employee's onboarding status. The data returned helps inform the required onboarding steps and respective completion status. -scope: `employees:manage` -### Example Usage +## onboarding_status - -```java -package hello.world; +### Admin-facilitated onboarding +| onboarding_status | Description | +|:------------------|------------:| +| `admin_onboarding_incomplete` | Admin needs to complete the full employee-onboarding. | +| `onboarding_completed` | Employee has been fully onboarded and verified. | -import com.gusto.embedded_api.GustoEmbedded; +### Employee self-onboarding +| onboarding_status | Description | +|:------------------|------------:| +| `admin_onboarding_incomplete` | Admin needs to enter basic information about the employee. | +| `self_onboarding_pending_invite` | Admin has the intention to invite the employee to self-onboard (e.g., marking a checkbox), but the system has not yet sent the invitation. | +| `self_onboarding_invited` | Employee has been sent an invitation to self-onboard. | +| `self_onboarding_invited_started` | Employee has started the self-onboarding process. | +| `self_onboarding_invited_overdue` | Employee's start date has passed, and employee has still not completed self-onboarding. | +| `self_onboarding_completed_by_employee` | Employee has completed entering in their information. The status should be updated via API to "self_onboarding_awaiting_admin_review" from here, once the Admin has started reviewing. | +| `self_onboarding_awaiting_admin_review` | Admin has started to verify the employee's information. | +| `onboarding_completed` | Employee has been fully onboarded and verified. | + +## onboarding_steps + +| onboarding_steps | Requirement(s) to be completed | +|:-----------------|-------------------------------:| +| `personal_details` | Add employee's first name, last name, email, date of birth, social security number | +| `compensation_details` | Associate employee to a job & compensation. | +| `add_work_address` | Add employee work address. | +| `add_home_address` | Add employee home address. | +| `federal_tax_setup` | Set up federal tax withholdings. | +| `state_tax_setup` | Set up state tax withholdings. | +| `direct_deposit_setup` | (optional) Set up employee's direct deposit. | +| `employee_form_signing` | Employee forms (e.g., W4, direct deposit authorization) are generated & signed. | +| `file_new_hire_report` | File a new hire report for this employee. | +| `admin_review` | Admin reviews & confirms employee details (only required for Employee self-onboarding) | + +scope: `employees:read` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api.GustoEmbedded; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.DeleteV1EmployeeHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.DeleteV1EmployeeResponse; +import com.gusto.embedded_api.models.operations.GetV1EmployeesEmployeeIdOnboardingStatusHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetV1EmployeesEmployeeIdOnboardingStatusResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + public static void main(String[] args) throws NotFoundErrorObject, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - DeleteV1EmployeeResponse res = sdk.employees().delete() - .xGustoAPIVersion(DeleteV1EmployeeHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + GetV1EmployeesEmployeeIdOnboardingStatusResponse res = sdk.employees().getOnboardingStatus() + .xGustoAPIVersion(GetV1EmployeesEmployeeIdOnboardingStatusHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .employeeId("") .call(); - // handle response + if (res.employeeOnboardingStatus().isPresent()) { + System.out.println(res.employeeOnboardingStatus().get()); + } } } ``` @@ -684,54 +586,65 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1EmployeeHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeIdOnboardingStatusHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | ### Response -**[DeleteV1EmployeeResponse](../../models/operations/DeleteV1EmployeeResponse.md)** +**[GetV1EmployeesEmployeeIdOnboardingStatusResponse](../../models/operations/GetV1EmployeesEmployeeIdOnboardingStatusResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| -------------------------------------- | -------------------------------------- | -------------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/UnprocessableEntityError | 422 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | -## getCustomFields +## updateOnboardingStatus -Returns a list of the employee's custom fields. +Updates an employee's onboarding status. +Below is a list of valid onboarding status changes depending on the intended action to be performed on behalf of the employee. -scope: `employees:read` +| Action | current onboarding_status | new onboarding_status | +|:------------------|:------------:|----------:| +| Mark an employee as self-onboarding | `admin_onboarding_incomplete` | `self_onboarding_pending_invite` | +| Invite an employee to self-onboard | `admin_onboarding_incomplete` or `self_onboarding_pending_invite` | `self_onboarding_invited` | +| Cancel an employee's self-onboarding | `self_onboarding_invited` or `self_onboarding_pending_invite` | `admin_onboarding_incomplete` | +| Review an employee's self-onboarded info | `self_onboarding_completed_by_employee` | `self_onboarding_awaiting_admin_review` | +| Finish an employee's onboarding | `admin_onboarding_incomplete` or `self_onboarding_awaiting_admin_review` | `onboarding_completed` | + +scope: `employees:manage` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.operations.GetV1EmployeesEmployeeIdCustomFieldsHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.GetV1EmployeesEmployeeIdCustomFieldsResponse; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.operations.*; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, Exception { + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1EmployeesEmployeeIdCustomFieldsResponse res = sdk.employees().getCustomFields() + PutV1EmployeesEmployeeIdOnboardingStatusResponse res = sdk.employees().updateOnboardingStatus() + .xGustoAPIVersion(PutV1EmployeesEmployeeIdOnboardingStatusHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .employeeId("") - .xGustoAPIVersion(GetV1EmployeesEmployeeIdCustomFieldsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .requestBody(PutV1EmployeesEmployeeIdOnboardingStatusRequestBody.builder() + .onboardingStatus(OnboardingStatus.ADMIN_ONBOARDING_INCOMPLETE) + .build()) .call(); - if (res.employeeCustomFieldList().isPresent()) { - System.out.println(res.employeeCustomFieldList().get()); + if (res.employeeOnboardingStatus().isPresent()) { + System.out.println(res.employeeOnboardingStatus().get()); } } } @@ -741,21 +654,21 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1EmployeesEmployeeIdOnboardingStatusHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | -| `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | -| `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeIdCustomFieldsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `requestBody` | [PutV1EmployeesEmployeeIdOnboardingStatusRequestBody](../../models/operations/PutV1EmployeesEmployeeIdOnboardingStatusRequestBody.md) | :heavy_check_mark: | N/A | ### Response -**[GetV1EmployeesEmployeeIdCustomFieldsResponse](../../models/operations/GetV1EmployeesEmployeeIdCustomFieldsResponse.md)** +**[PutV1EmployeesEmployeeIdOnboardingStatusResponse](../../models/operations/PutV1EmployeesEmployeeIdOnboardingStatusResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| --------------------------------- | --------------------------------- | --------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | ## updateOnboardingDocumentsConfig @@ -822,125 +735,137 @@ public class Application { | models/errors/NotFoundErrorObject | 404 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## getOnboardingStatus - -# Description -Retrieves an employee's onboarding status. The data returned helps inform the required onboarding steps and respective completion status. - - -## onboarding_status - -### Admin-facilitated onboarding -| onboarding_status | Description | -|:------------------|------------:| -| `admin_onboarding_incomplete` | Admin needs to complete the full employee-onboarding. | -| `onboarding_completed` | Employee has been fully onboarded and verified. | - -### Employee self-onboarding -| onboarding_status | Description | -|:------------------|------------:| -| `admin_onboarding_incomplete` | Admin needs to enter basic information about the employee. | -| `self_onboarding_pending_invite` | Admin has the intention to invite the employee to self-onboard (e.g., marking a checkbox), but the system has not yet sent the invitation. | -| `self_onboarding_invited` | Employee has been sent an invitation to self-onboard. | -| `self_onboarding_invited_started` | Employee has started the self-onboarding process. | -| `self_onboarding_invited_overdue` | Employee's start date has passed, and employee has still not completed self-onboarding. | -| `self_onboarding_completed_by_employee` | Employee has completed entering in their information. The status should be updated via API to "self_onboarding_awaiting_admin_review" from here, once the Admin has started reviewing. | -| `self_onboarding_awaiting_admin_review` | Admin has started to verify the employee's information. | -| `onboarding_completed` | Employee has been fully onboarded and verified. | - -## onboarding_steps +## createHistorical -| onboarding_steps | Requirement(s) to be completed | -|:-----------------|-------------------------------:| -| `personal_details` | Add employee's first name, last name, email, date of birth, social security number | -| `compensation_details` | Associate employee to a job & compensation. | -| `add_work_address` | Add employee work address. | -| `add_home_address` | Add employee home address. | -| `federal_tax_setup` | Set up federal tax withholdings. | -| `state_tax_setup` | Set up state tax withholdings. | -| `direct_deposit_setup` | (optional) Set up employee's direct deposit. | -| `employee_form_signing` | Employee forms (e.g., W4, direct deposit authorization) are generated & signed. | -| `file_new_hire_report` | File a new hire report for this employee. | -| `admin_review` | Admin reviews & confirms employee details (only required for Employee self-onboarding) | +Create a historical employee, an employee that was previously dismissed from the company in the current year. -scope: `employees:read` +scope: `employees:manage` -### Example Usage +### Example Usage: Basic - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.components.*; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.operations.GetV1EmployeesEmployeeIdOnboardingStatusHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.GetV1EmployeesEmployeeIdOnboardingStatusResponse; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.operations.PostV1HistoricalEmployeesHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PostV1HistoricalEmployeesResponse; import java.lang.Exception; +import java.time.LocalDate; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, Exception { + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1EmployeesEmployeeIdOnboardingStatusResponse res = sdk.employees().getOnboardingStatus() - .xGustoAPIVersion(GetV1EmployeesEmployeeIdOnboardingStatusHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .employeeId("") + PostV1HistoricalEmployeesResponse res = sdk.employees().createHistorical() + .xGustoAPIVersion(PostV1HistoricalEmployeesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyUuid("") + .historicalEmployeeBody(HistoricalEmployeeBody.builder() + .firstName("Maida") + .lastName("Schroeder") + .dateOfBirth(LocalDate.parse("1959-03-15")) + .ssn("") + .workAddress(WorkAddress.builder() + .locationUuid("1da85d35-1910-40a7-9c1f-8e2b3d4c5a6f") + .build()) + .homeAddress(HomeAddress.builder() + .street1("") + .city("Beerstead") + .state("Arizona") + .zip("05000-6136") + .build()) + .termination(HistoricalEmployeeBodyTermination.builder() + .effectiveDate(LocalDate.parse("2022-01-01")) + .build()) + .job(HistoricalEmployeeBodyJob.builder() + .hireDate(LocalDate.parse("2020-01-01")) + .build()) + .build()) .call(); - if (res.employeeOnboardingStatus().isPresent()) { - System.out.println(res.employeeOnboardingStatus().get()); + if (res.employee().isPresent()) { + System.out.println(res.employee().get()); } } } ``` +### Example Usage: Create Historical Employee Example -### Parameters - -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeIdOnboardingStatusHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | - -### Response - -**[GetV1EmployeesEmployeeIdOnboardingStatusResponse](../../models/operations/GetV1EmployeesEmployeeIdOnboardingStatusResponse.md)** - -### Errors + +```java +package hello.world; -| Error Type | Status Code | Content Type | -| --------------------------------- | --------------------------------- | --------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | +import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.components.*; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.operations.PostV1HistoricalEmployeesHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PostV1HistoricalEmployeesResponse; +import java.lang.Exception; +import java.time.LocalDate; -## updateOnboardingStatus +public class Application { -Updates an employee's onboarding status. -Below is a list of valid onboarding status changes depending on the intended action to be performed on behalf of the employee. + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { -| Action | current onboarding_status | new onboarding_status | -|:------------------|:------------:|----------:| -| Mark an employee as self-onboarding | `admin_onboarding_incomplete` | `self_onboarding_pending_invite` | -| Invite an employee to self-onboard | `admin_onboarding_incomplete` or `self_onboarding_pending_invite` | `self_onboarding_invited` | -| Cancel an employee's self-onboarding | `self_onboarding_invited` or `self_onboarding_pending_invite` | `admin_onboarding_incomplete` | -| Review an employee's self-onboarded info | `self_onboarding_completed_by_employee` | `self_onboarding_awaiting_admin_review` | -| Finish an employee's onboarding | `admin_onboarding_incomplete` or `self_onboarding_awaiting_admin_review` | `onboarding_completed` | + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); -scope: `employees:manage` + PostV1HistoricalEmployeesResponse res = sdk.employees().createHistorical() + .xGustoAPIVersion(PostV1HistoricalEmployeesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyUuid("") + .historicalEmployeeBody(HistoricalEmployeeBody.builder() + .firstName("Maida") + .lastName("Schroeder") + .dateOfBirth(LocalDate.parse("1959-03-15")) + .ssn("") + .workAddress(WorkAddress.builder() + .locationUuid("1da85d35-1910-40a7-9c1f-8e2b3d4c5a6f") + .build()) + .homeAddress(HomeAddress.builder() + .street1("") + .city("Beerstead") + .state("Arizona") + .zip("05000-6136") + .build()) + .termination(HistoricalEmployeeBodyTermination.builder() + .effectiveDate(LocalDate.parse("2022-01-01")) + .build()) + .job(HistoricalEmployeeBodyJob.builder() + .hireDate(LocalDate.parse("2020-01-01")) + .build()) + .build()) + .call(); -### Example Usage + if (res.employee().isPresent()) { + System.out.println(res.employee().get()); + } + } +} +``` +### Example Usage: Example - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.components.*; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.*; +import com.gusto.embedded_api.models.operations.PostV1HistoricalEmployeesHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PostV1HistoricalEmployeesResponse; import java.lang.Exception; +import java.time.LocalDate; +import org.openapitools.jackson.nullable.JsonNullable; public class Application { @@ -950,59 +875,114 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1EmployeesEmployeeIdOnboardingStatusResponse res = sdk.employees().updateOnboardingStatus() - .xGustoAPIVersion(PutV1EmployeesEmployeeIdOnboardingStatusHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .employeeId("") - .requestBody(PutV1EmployeesEmployeeIdOnboardingStatusRequestBody.builder() - .onboardingStatus(OnboardingStatus.ADMIN_ONBOARDING_INCOMPLETE) + PostV1HistoricalEmployeesResponse res = sdk.employees().createHistorical() + .xGustoAPIVersion(PostV1HistoricalEmployeesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyUuid("") + .historicalEmployeeBody(HistoricalEmployeeBody.builder() + .firstName("Soren") + .lastName("Kierkegaard") + .dateOfBirth(LocalDate.parse("1995-05-05T00:00:00Z")) + .ssn("123456294") + .workAddress(WorkAddress.builder() + .locationUuid("1da85d35-1910-4d5e-8e94-39e8cdfe8c9a") + .build()) + .homeAddress(HomeAddress.builder() + .street1("300 3rd Street") + .city("San Francisco") + .state("CA") + .zip("94107") + .street2(JsonNullable.of(null)) + .build()) + .termination(HistoricalEmployeeBodyTermination.builder() + .effectiveDate(LocalDate.parse("2022-09-15T00:00:00Z")) + .build()) + .job(HistoricalEmployeeBodyJob.builder() + .hireDate(LocalDate.parse("2018-05-09T00:00:00Z")) + .build()) + .middleInitial("A") + .preferredFirstName("Angel") + .employeeStateTaxes(EmployeeStateTaxes.builder() + .wcCovered(true) + .wcClassCode("20992") + .build()) .build()) .call(); - if (res.employeeOnboardingStatus().isPresent()) { - System.out.println(res.employeeOnboardingStatus().get()); + if (res.employee().isPresent()) { + System.out.println(res.employee().get()); } } } ``` +### Example Usage: Nested -### Parameters - -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1EmployeesEmployeeIdOnboardingStatusHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | -| `requestBody` | [PutV1EmployeesEmployeeIdOnboardingStatusRequestBody](../../models/operations/PutV1EmployeesEmployeeIdOnboardingStatusRequestBody.md) | :heavy_check_mark: | N/A | - -### Response - -**[PutV1EmployeesEmployeeIdOnboardingStatusResponse](../../models/operations/PutV1EmployeesEmployeeIdOnboardingStatusResponse.md)** + +```java +package hello.world; -### Errors +import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.components.*; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.operations.PostV1HistoricalEmployeesHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PostV1HistoricalEmployeesResponse; +import java.lang.Exception; +import java.time.LocalDate; -| Error Type | Status Code | Content Type | -| -------------------------------------- | -------------------------------------- | -------------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/UnprocessableEntityError | 422 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | +public class Application { -## getTimeOffActivities + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { -Get employee time off activities. + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); -scope: `employee_time_off_activities:read` + PostV1HistoricalEmployeesResponse res = sdk.employees().createHistorical() + .xGustoAPIVersion(PostV1HistoricalEmployeesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyUuid("") + .historicalEmployeeBody(HistoricalEmployeeBody.builder() + .firstName("Maida") + .lastName("Schroeder") + .dateOfBirth(LocalDate.parse("1959-03-15")) + .ssn("") + .workAddress(WorkAddress.builder() + .locationUuid("1da85d35-1910-40a7-9c1f-8e2b3d4c5a6f") + .build()) + .homeAddress(HomeAddress.builder() + .street1("") + .city("Beerstead") + .state("Arizona") + .zip("05000-6136") + .build()) + .termination(HistoricalEmployeeBodyTermination.builder() + .effectiveDate(LocalDate.parse("2022-01-01")) + .build()) + .job(HistoricalEmployeeBodyJob.builder() + .hireDate(LocalDate.parse("2020-01-01")) + .build()) + .build()) + .call(); -### Example Usage + if (res.employee().isPresent()) { + System.out.println(res.employee().get()); + } + } +} +``` +### Example Usage: Resource - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.components.*; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.GetVersionEmployeesTimeOffActivitiesHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.GetVersionEmployeesTimeOffActivitiesResponse; +import com.gusto.embedded_api.models.operations.PostV1HistoricalEmployeesHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PostV1HistoricalEmployeesResponse; import java.lang.Exception; +import java.time.LocalDate; public class Application { @@ -1012,14 +992,34 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetVersionEmployeesTimeOffActivitiesResponse res = sdk.employees().getTimeOffActivities() - .xGustoAPIVersion(GetVersionEmployeesTimeOffActivitiesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .employeeUuid("") - .timeOffType("") + PostV1HistoricalEmployeesResponse res = sdk.employees().createHistorical() + .xGustoAPIVersion(PostV1HistoricalEmployeesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyUuid("") + .historicalEmployeeBody(HistoricalEmployeeBody.builder() + .firstName("Maida") + .lastName("Schroeder") + .dateOfBirth(LocalDate.parse("1959-03-15")) + .ssn("") + .workAddress(WorkAddress.builder() + .locationUuid("1da85d35-1910-40a7-9c1f-8e2b3d4c5a6f") + .build()) + .homeAddress(HomeAddress.builder() + .street1("") + .city("Beerstead") + .state("Arizona") + .zip("05000-6136") + .build()) + .termination(HistoricalEmployeeBodyTermination.builder() + .effectiveDate(LocalDate.parse("2022-01-01")) + .build()) + .job(HistoricalEmployeeBodyJob.builder() + .hireDate(LocalDate.parse("2020-01-01")) + .build()) + .build()) .call(); - if (res.timeOffActivityList().isPresent()) { - System.out.println(res.timeOffActivityList().get()); + if (res.employee().isPresent()) { + System.out.println(res.employee().get()); } } } @@ -1027,15 +1027,15 @@ public class Application { ### Parameters -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetVersionEmployeesTimeOffActivitiesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `employeeUuid` | *String* | :heavy_check_mark: | The UUID of the employee | -| `timeOffType` | *String* | :heavy_check_mark: | The time off type name you want to query data for. ex: 'sick' or 'vacation' | +| Parameter | Type | Required | Description | Example | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1HistoricalEmployeesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company that will employ this historical record. | 7b1d0df1-6403-4a06-8768-c1dd7d24d27a | +| `historicalEmployeeBody` | [HistoricalEmployeeBody](../../models/components/HistoricalEmployeeBody.md) | :heavy_check_mark: | N/A | | ### Response -**[GetVersionEmployeesTimeOffActivitiesResponse](../../models/operations/GetVersionEmployeesTimeOffActivitiesResponse.md)** +**[PostV1HistoricalEmployeesResponse](../../models/operations/PostV1HistoricalEmployeesResponse.md)** ### Errors diff --git a/gusto_embedded/docs/sdks/events/README.md b/gusto_embedded/docs/sdks/events/README.md index 3896dbae7..271411a38 100644 --- a/gusto_embedded/docs/sdks/events/README.md +++ b/gusto_embedded/docs/sdks/events/README.md @@ -35,7 +35,7 @@ public class Application { .build(); GetEventsRequest req = GetEventsRequest.builder() - .sortOrder(QueryParamSortOrder.ASC) + .sortOrder(SortOrder.ASC) .build(); GetEventsResponse res = sdk.events().get() diff --git a/gusto_embedded/docs/sdks/externalpayrolls/README.md b/gusto_embedded/docs/sdks/externalpayrolls/README.md index d45dd4045..b95e8e8ee 100644 --- a/gusto_embedded/docs/sdks/externalpayrolls/README.md +++ b/gusto_embedded/docs/sdks/externalpayrolls/README.md @@ -6,13 +6,13 @@ * [get](#get) - Get external payrolls for a company * [create](#create) - Create an external payroll for a company +* [listTaxLiabilities](#listtaxliabilities) - Get tax liabilities +* [updateTaxLiabilities](#updatetaxliabilities) - Update tax liabilities +* [finalizeTaxLiabilities](#finalizetaxliabilities) - Finalize tax liabilities options and convert into processed payrolls * [retrieve](#retrieve) - Get an external payroll * [update](#update) - Update an external payroll * [delete](#delete) - Delete an external payroll * [calculateTaxes](#calculatetaxes) - Get tax suggestions for an external payroll -* [listTaxLiabilities](#listtaxliabilities) - Get tax liabilities -* [updateTaxLiabilities](#updatetaxliabilities) - Update tax liabilities -* [finalizeTaxLiabilities](#finalizetaxliabilities) - Finalize tax liabilities options and convert into processed payrolls ## get @@ -255,22 +255,22 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## retrieve +## listTaxLiabilities -Get an external payroll for a given company. +Get tax liabilities from aggregate external payrolls for a company. scope: `external_payrolls:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.operations.GetV1ExternalPayrollHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.GetV1ExternalPayrollResponse; +import com.gusto.embedded_api.models.operations.GetV1TaxLiabilitiesHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetV1TaxLiabilitiesResponse; import java.lang.Exception; public class Application { @@ -281,14 +281,13 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1ExternalPayrollResponse res = sdk.externalPayrolls().retrieve() - .xGustoAPIVersion(GetV1ExternalPayrollHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + GetV1TaxLiabilitiesResponse res = sdk.externalPayrolls().listTaxLiabilities() + .xGustoAPIVersion(GetV1TaxLiabilitiesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .companyUuid("") - .externalPayrollId("") .call(); - if (res.externalPayroll().isPresent()) { - System.out.println(res.externalPayroll().get()); + if (res.taxLiabilitiesSelections().isPresent()) { + System.out.println(res.taxLiabilitiesSelections().get()); } } } @@ -298,13 +297,12 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1ExternalPayrollHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1TaxLiabilitiesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | -| `externalPayrollId` | *String* | :heavy_check_mark: | The UUID of the external payroll | ### Response -**[GetV1ExternalPayrollResponse](../../models/operations/GetV1ExternalPayrollResponse.md)** +**[GetV1TaxLiabilitiesResponse](../../models/operations/GetV1TaxLiabilitiesResponse.md)** ### Errors @@ -313,239 +311,181 @@ public class Application { | models/errors/NotFoundErrorObject | 404 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## update +## updateTaxLiabilities -Update an external payroll with a list of external payroll items. +Update tax liabilities for a company. scope: `external_payrolls:write` ### Example Usage: Basic - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.*; +import com.gusto.embedded_api.models.components.TaxLiabilitySelectionsRequest; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PutV1ExternalPayrollHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PutV1ExternalPayrollResponse; +import com.gusto.embedded_api.models.operations.PutV1TaxLiabilitiesHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PutV1TaxLiabilitiesResponse; import java.lang.Exception; import java.util.List; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + public static void main(String[] args) throws NotFoundErrorObject, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1ExternalPayrollResponse res = sdk.externalPayrolls().update() - .xGustoAPIVersion(PutV1ExternalPayrollHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + PutV1TaxLiabilitiesResponse res = sdk.externalPayrolls().updateTaxLiabilities() + .xGustoAPIVersion(PutV1TaxLiabilitiesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .companyUuid("") - .externalPayrollId("") - .externalPayrollUpdateRequest(ExternalPayrollUpdateRequest.builder() - .externalPayrollItems(List.of( - ExternalPayrollUpdateRequestExternalPayrollItems.builder() - .employeeUuid("44f7cba9-7a3d-4f08-b7bd-6fcf5211f8ca") - .earnings(List.of( - ExternalPayrollUpdateRequestEarnings.builder() - .earningType(ExternalPayrollUpdateRequestEarningType.COMPANY_PAY_TYPE) - .earningId(1L) - .amount("10000.00") - .hours("80.0") - .build())) - .benefits(List.of( - ExternalPayrollUpdateRequestBenefits.builder() - .benefitId(22L) - .companyContributionAmount("100.00") - .employeeDeductionAmount("50.00") - .build())) - .taxes(List.of( - ExternalPayrollUpdateRequestTaxes.builder() - .taxId(1L) - .amount("400.00") - .build())) - .build())) + .taxLiabilitySelectionsRequest(TaxLiabilitySelectionsRequest.builder() + .liabilitySelections(List.of()) .build()) .call(); - if (res.externalPayroll().isPresent()) { - System.out.println(res.externalPayroll().get()); + if (res.taxLiabilitiesSelections().isPresent()) { + System.out.println(res.taxLiabilitiesSelections().get()); } } } ``` ### Example Usage: Example - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.*; +import com.gusto.embedded_api.models.components.LiabilitySelections; +import com.gusto.embedded_api.models.components.TaxLiabilitySelectionsRequest; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PutV1ExternalPayrollHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PutV1ExternalPayrollResponse; +import com.gusto.embedded_api.models.operations.PutV1TaxLiabilitiesHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PutV1TaxLiabilitiesResponse; import java.lang.Exception; import java.util.List; +import java.util.Optional; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + public static void main(String[] args) throws NotFoundErrorObject, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1ExternalPayrollResponse res = sdk.externalPayrolls().update() - .xGustoAPIVersion(PutV1ExternalPayrollHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + PutV1TaxLiabilitiesResponse res = sdk.externalPayrolls().updateTaxLiabilities() + .xGustoAPIVersion(PutV1TaxLiabilitiesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .companyUuid("") - .externalPayrollId("") - .externalPayrollUpdateRequest(ExternalPayrollUpdateRequest.builder() - .externalPayrollItems(List.of( - ExternalPayrollUpdateRequestExternalPayrollItems.builder() - .employeeUuid("403c6ee3-5f58-40ef-a117-ff7175cd9ee3") - .earnings(List.of( - ExternalPayrollUpdateRequestEarnings.builder() - .earningType(ExternalPayrollUpdateRequestEarningType.COMPANY_PAY_TYPE) - .earningId(1L) - .amount("200.00") - .hours("0.0") - .build(), - ExternalPayrollUpdateRequestEarnings.builder() - .earningType(ExternalPayrollUpdateRequestEarningType.COMPANY_EARNING_TYPE) - .earningId(2L) - .amount("5000.00") - .hours("0.0") - .build())) - .benefits(List.of( - ExternalPayrollUpdateRequestBenefits.builder() - .benefitId(10L) - .companyContributionAmount("300.0") - .employeeDeductionAmount("300.0") - .build(), - ExternalPayrollUpdateRequestBenefits.builder() - .benefitId(21L) - .companyContributionAmount("50.0") - .employeeDeductionAmount("100.0") - .build())) - .taxes(List.of( - ExternalPayrollUpdateRequestTaxes.builder() - .taxId(1L) - .amount("20.0") - .build(), - ExternalPayrollUpdateRequestTaxes.builder() - .taxId(2L) - .amount("100.0") - .build())) + .taxLiabilitySelectionsRequest(TaxLiabilitySelectionsRequest.builder() + .liabilitySelections(List.of( + LiabilitySelections.builder() + .taxId(1L) + .lastUnpaidExternalPayrollUuid("7985032c-ee3a-4e98-af27-d56551eb5f1c") + .unpaidLiabilityAmount("50") + .build(), + LiabilitySelections.builder() + .taxId(2L) + .lastUnpaidExternalPayrollUuid("5ed14dbb-958f-47c8-b16e-c4fed82dc486") + .unpaidLiabilityAmount("400") + .build(), + LiabilitySelections.builder() + .taxId(8L) + .lastUnpaidExternalPayrollUuid(Optional.empty()) + .unpaidLiabilityAmount("0") .build())) - .replaceFields(true) .build()) .call(); - if (res.externalPayroll().isPresent()) { - System.out.println(res.externalPayroll().get()); + if (res.taxLiabilitiesSelections().isPresent()) { + System.out.println(res.taxLiabilitiesSelections().get()); } } } ``` ### Example Usage: Nested - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.*; +import com.gusto.embedded_api.models.components.LiabilitySelections; +import com.gusto.embedded_api.models.components.TaxLiabilitySelectionsRequest; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PutV1ExternalPayrollHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PutV1ExternalPayrollResponse; +import com.gusto.embedded_api.models.operations.PutV1TaxLiabilitiesHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PutV1TaxLiabilitiesResponse; import java.lang.Exception; import java.util.List; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + public static void main(String[] args) throws NotFoundErrorObject, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1ExternalPayrollResponse res = sdk.externalPayrolls().update() - .xGustoAPIVersion(PutV1ExternalPayrollHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + PutV1TaxLiabilitiesResponse res = sdk.externalPayrolls().updateTaxLiabilities() + .xGustoAPIVersion(PutV1TaxLiabilitiesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .companyUuid("") - .externalPayrollId("") - .externalPayrollUpdateRequest(ExternalPayrollUpdateRequest.builder() - .externalPayrollItems(List.of( - ExternalPayrollUpdateRequestExternalPayrollItems.builder() - .employeeUuid("44f7cba9-7a3d-4f08-b7bd-6fcf5211f8ca") - .earnings(List.of( - ExternalPayrollUpdateRequestEarnings.builder() - .earningType(ExternalPayrollUpdateRequestEarningType.COMPANY_PAY_TYPE) - .earningId(1L) - .amount("10000.00") - .hours("80.0") - .build())) - .benefits(List.of( - ExternalPayrollUpdateRequestBenefits.builder() - .benefitId(22L) - .companyContributionAmount("100.00") - .employeeDeductionAmount("50.00") - .build())) - .taxes(List.of( - ExternalPayrollUpdateRequestTaxes.builder() - .taxId(1L) - .amount("400.00") - .build())) + .taxLiabilitySelectionsRequest(TaxLiabilitySelectionsRequest.builder() + .liabilitySelections(List.of( + LiabilitySelections.builder() + .taxId(1L) + .lastUnpaidExternalPayrollUuid("1bf1efe1-72d4-4e6e-a181-611f3ea66435") + .unpaidLiabilityAmount("47.5") .build())) .build()) .call(); - if (res.externalPayroll().isPresent()) { - System.out.println(res.externalPayroll().get()); + if (res.taxLiabilitiesSelections().isPresent()) { + System.out.println(res.taxLiabilitiesSelections().get()); } } } ``` ### Example Usage: Resource - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.ExternalPayrollUpdateRequest; +import com.gusto.embedded_api.models.components.LiabilitySelections; +import com.gusto.embedded_api.models.components.TaxLiabilitySelectionsRequest; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PutV1ExternalPayrollHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PutV1ExternalPayrollResponse; +import com.gusto.embedded_api.models.operations.PutV1TaxLiabilitiesHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PutV1TaxLiabilitiesResponse; import java.lang.Exception; import java.util.List; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + public static void main(String[] args) throws NotFoundErrorObject, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1ExternalPayrollResponse res = sdk.externalPayrolls().update() - .xGustoAPIVersion(PutV1ExternalPayrollHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + PutV1TaxLiabilitiesResponse res = sdk.externalPayrolls().updateTaxLiabilities() + .xGustoAPIVersion(PutV1TaxLiabilitiesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .companyUuid("") - .externalPayrollId("") - .externalPayrollUpdateRequest(ExternalPayrollUpdateRequest.builder() - .externalPayrollItems(List.of()) + .taxLiabilitySelectionsRequest(TaxLiabilitySelectionsRequest.builder() + .liabilitySelections(List.of( + LiabilitySelections.builder() + .taxId(1L) + .lastUnpaidExternalPayrollUuid("1bf1efe1-72d4-4e6e-a181-611f3ea66435") + .unpaidLiabilityAmount("47.5") + .build())) .build()) .call(); - if (res.externalPayroll().isPresent()) { - System.out.println(res.externalPayroll().get()); + if (res.taxLiabilitiesSelections().isPresent()) { + System.out.println(res.taxLiabilitiesSelections().get()); } } } @@ -555,40 +495,41 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1ExternalPayrollHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1TaxLiabilitiesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | -| `externalPayrollId` | *String* | :heavy_check_mark: | The UUID of the external payroll | -| `externalPayrollUpdateRequest` | [ExternalPayrollUpdateRequest](../../models/components/ExternalPayrollUpdateRequest.md) | :heavy_check_mark: | N/A | +| `taxLiabilitySelectionsRequest` | [TaxLiabilitySelectionsRequest](../../models/components/TaxLiabilitySelectionsRequest.md) | :heavy_check_mark: | N/A | ### Response -**[PutV1ExternalPayrollResponse](../../models/operations/PutV1ExternalPayrollResponse.md)** +**[PutV1TaxLiabilitiesResponse](../../models/operations/PutV1TaxLiabilitiesResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| -------------------------------------- | -------------------------------------- | -------------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/UnprocessableEntityError | 422 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | - -## delete +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | -Delete an external payroll. +## finalizeTaxLiabilities -scope: `external_payrolls:write` +Finalizes tax liabilities for a company. All external payrolls edit action will be disabled. + +### Asynchronous processing +This endpoint triggers an asynchronous operation. The external payrolls will be processed in the background after finalization. + +scope: `external_payrolls:write` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.DeleteV1ExternalPayrollHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.DeleteV1ExternalPayrollResponse; +import com.gusto.embedded_api.models.operations.PutV1TaxLiabilitiesFinishHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PutV1TaxLiabilitiesFinishResponse; import java.lang.Exception; public class Application { @@ -599,10 +540,9 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - DeleteV1ExternalPayrollResponse res = sdk.externalPayrolls().delete() - .xGustoAPIVersion(DeleteV1ExternalPayrollHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + PutV1TaxLiabilitiesFinishResponse res = sdk.externalPayrolls().finalizeTaxLiabilities() + .xGustoAPIVersion(PutV1TaxLiabilitiesFinishHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .companyUuid("") - .externalPayrollId("") .call(); // handle response @@ -614,13 +554,12 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1ExternalPayrollHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1TaxLiabilitiesFinishHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | -| `externalPayrollId` | *String* | :heavy_check_mark: | The UUID of the external payroll | ### Response -**[DeleteV1ExternalPayrollResponse](../../models/operations/DeleteV1ExternalPayrollResponse.md)** +**[PutV1TaxLiabilitiesFinishResponse](../../models/operations/PutV1TaxLiabilitiesFinishResponse.md)** ### Errors @@ -630,41 +569,40 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## calculateTaxes +## retrieve -Get tax suggestions for an external payroll. Earnings and/or benefits data must be saved prior to the calculation in order to retrieve accurate tax calculation. +Get an external payroll for a given company. scope: `external_payrolls:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.GetV1ExternalPayrollCalculateTaxesHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.GetV1ExternalPayrollCalculateTaxesResponse; +import com.gusto.embedded_api.models.operations.GetV1ExternalPayrollHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetV1ExternalPayrollResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + public static void main(String[] args) throws NotFoundErrorObject, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1ExternalPayrollCalculateTaxesResponse res = sdk.externalPayrolls().calculateTaxes() - .xGustoAPIVersion(GetV1ExternalPayrollCalculateTaxesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + GetV1ExternalPayrollResponse res = sdk.externalPayrolls().retrieve() + .xGustoAPIVersion(GetV1ExternalPayrollHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .companyUuid("") .externalPayrollId("") .call(); - if (res.externalPayrollTaxSuggestions().isPresent()) { - System.out.println(res.externalPayrollTaxSuggestions().get()); + if (res.externalPayroll().isPresent()) { + System.out.println(res.externalPayroll().get()); } } } @@ -674,254 +612,314 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1ExternalPayrollCalculateTaxesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1ExternalPayrollHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `externalPayrollId` | *String* | :heavy_check_mark: | The UUID of the external payroll | ### Response -**[GetV1ExternalPayrollCalculateTaxesResponse](../../models/operations/GetV1ExternalPayrollCalculateTaxesResponse.md)** +**[GetV1ExternalPayrollResponse](../../models/operations/GetV1ExternalPayrollResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| -------------------------------------- | -------------------------------------- | -------------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/UnprocessableEntityError | 422 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | -## listTaxLiabilities +## update -Get tax liabilities from aggregate external payrolls for a company. +Update an external payroll with a list of external payroll items. -scope: `external_payrolls:read` +scope: `external_payrolls:write` -### Example Usage +### Example Usage: Basic - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.components.*; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.operations.GetV1TaxLiabilitiesHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.GetV1TaxLiabilitiesResponse; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.operations.PutV1ExternalPayrollHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PutV1ExternalPayrollResponse; import java.lang.Exception; +import java.util.List; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, Exception { + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1TaxLiabilitiesResponse res = sdk.externalPayrolls().listTaxLiabilities() - .xGustoAPIVersion(GetV1TaxLiabilitiesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + PutV1ExternalPayrollResponse res = sdk.externalPayrolls().update() + .xGustoAPIVersion(PutV1ExternalPayrollHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .companyUuid("") + .externalPayrollId("") + .externalPayrollUpdateRequest(ExternalPayrollUpdateRequest.builder() + .externalPayrollItems(List.of( + ExternalPayrollUpdateRequestExternalPayrollItems.builder() + .employeeUuid("44f7cba9-7a3d-4f08-b7bd-6fcf5211f8ca") + .earnings(List.of( + ExternalPayrollUpdateRequestEarnings.builder() + .earningType(ExternalPayrollUpdateRequestEarningType.COMPANY_PAY_TYPE) + .earningId(1L) + .amount("10000.00") + .hours("80.0") + .build())) + .benefits(List.of( + ExternalPayrollUpdateRequestBenefits.builder() + .benefitId(22L) + .companyContributionAmount("100.00") + .employeeDeductionAmount("50.00") + .build())) + .taxes(List.of( + ExternalPayrollUpdateRequestTaxes.builder() + .taxId(1L) + .amount("400.00") + .build())) + .build())) + .build()) .call(); - if (res.taxLiabilitiesSelections().isPresent()) { - System.out.println(res.taxLiabilitiesSelections().get()); + if (res.externalPayroll().isPresent()) { + System.out.println(res.externalPayroll().get()); } } } ``` +### Example Usage: Example -### Parameters - -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1TaxLiabilitiesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | - -### Response - -**[GetV1TaxLiabilitiesResponse](../../models/operations/GetV1TaxLiabilitiesResponse.md)** - -### Errors - -| Error Type | Status Code | Content Type | -| --------------------------------- | --------------------------------- | --------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | - -## updateTaxLiabilities - -Update tax liabilities for a company. - -scope: `external_payrolls:write` - -### Example Usage: Basic - - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.TaxLiabilitySelectionsRequest; +import com.gusto.embedded_api.models.components.*; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.operations.PutV1TaxLiabilitiesHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PutV1TaxLiabilitiesResponse; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.operations.PutV1ExternalPayrollHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PutV1ExternalPayrollResponse; import java.lang.Exception; import java.util.List; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, Exception { + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1TaxLiabilitiesResponse res = sdk.externalPayrolls().updateTaxLiabilities() - .xGustoAPIVersion(PutV1TaxLiabilitiesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + PutV1ExternalPayrollResponse res = sdk.externalPayrolls().update() + .xGustoAPIVersion(PutV1ExternalPayrollHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .companyUuid("") - .taxLiabilitySelectionsRequest(TaxLiabilitySelectionsRequest.builder() - .liabilitySelections(List.of()) + .externalPayrollId("") + .externalPayrollUpdateRequest(ExternalPayrollUpdateRequest.builder() + .externalPayrollItems(List.of( + ExternalPayrollUpdateRequestExternalPayrollItems.builder() + .employeeUuid("403c6ee3-5f58-40ef-a117-ff7175cd9ee3") + .earnings(List.of( + ExternalPayrollUpdateRequestEarnings.builder() + .earningType(ExternalPayrollUpdateRequestEarningType.COMPANY_PAY_TYPE) + .earningId(1L) + .amount("200.00") + .hours("0.0") + .build(), + ExternalPayrollUpdateRequestEarnings.builder() + .earningType(ExternalPayrollUpdateRequestEarningType.COMPANY_EARNING_TYPE) + .earningId(2L) + .amount("5000.00") + .hours("0.0") + .build())) + .benefits(List.of( + ExternalPayrollUpdateRequestBenefits.builder() + .benefitId(10L) + .companyContributionAmount("300.0") + .employeeDeductionAmount("300.0") + .build(), + ExternalPayrollUpdateRequestBenefits.builder() + .benefitId(21L) + .companyContributionAmount("50.0") + .employeeDeductionAmount("100.0") + .build())) + .taxes(List.of( + ExternalPayrollUpdateRequestTaxes.builder() + .taxId(1L) + .amount("20.0") + .build(), + ExternalPayrollUpdateRequestTaxes.builder() + .taxId(2L) + .amount("100.0") + .build())) + .build())) + .replaceFields(true) .build()) .call(); - if (res.taxLiabilitiesSelections().isPresent()) { - System.out.println(res.taxLiabilitiesSelections().get()); + if (res.externalPayroll().isPresent()) { + System.out.println(res.externalPayroll().get()); } } } ``` -### Example Usage: Example +### Example Usage: Nested - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.LiabilitySelections; -import com.gusto.embedded_api.models.components.TaxLiabilitySelectionsRequest; +import com.gusto.embedded_api.models.components.*; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.operations.PutV1TaxLiabilitiesHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PutV1TaxLiabilitiesResponse; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.operations.PutV1ExternalPayrollHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PutV1ExternalPayrollResponse; import java.lang.Exception; import java.util.List; -import java.util.Optional; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, Exception { + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1TaxLiabilitiesResponse res = sdk.externalPayrolls().updateTaxLiabilities() - .xGustoAPIVersion(PutV1TaxLiabilitiesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + PutV1ExternalPayrollResponse res = sdk.externalPayrolls().update() + .xGustoAPIVersion(PutV1ExternalPayrollHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .companyUuid("") - .taxLiabilitySelectionsRequest(TaxLiabilitySelectionsRequest.builder() - .liabilitySelections(List.of( - LiabilitySelections.builder() - .taxId(1L) - .lastUnpaidExternalPayrollUuid("7985032c-ee3a-4e98-af27-d56551eb5f1c") - .unpaidLiabilityAmount("50") - .build(), - LiabilitySelections.builder() - .taxId(2L) - .lastUnpaidExternalPayrollUuid("5ed14dbb-958f-47c8-b16e-c4fed82dc486") - .unpaidLiabilityAmount("400") - .build(), - LiabilitySelections.builder() - .taxId(8L) - .lastUnpaidExternalPayrollUuid(Optional.empty()) - .unpaidLiabilityAmount("0") + .externalPayrollId("") + .externalPayrollUpdateRequest(ExternalPayrollUpdateRequest.builder() + .externalPayrollItems(List.of( + ExternalPayrollUpdateRequestExternalPayrollItems.builder() + .employeeUuid("44f7cba9-7a3d-4f08-b7bd-6fcf5211f8ca") + .earnings(List.of( + ExternalPayrollUpdateRequestEarnings.builder() + .earningType(ExternalPayrollUpdateRequestEarningType.COMPANY_PAY_TYPE) + .earningId(1L) + .amount("10000.00") + .hours("80.0") + .build())) + .benefits(List.of( + ExternalPayrollUpdateRequestBenefits.builder() + .benefitId(22L) + .companyContributionAmount("100.00") + .employeeDeductionAmount("50.00") + .build())) + .taxes(List.of( + ExternalPayrollUpdateRequestTaxes.builder() + .taxId(1L) + .amount("400.00") + .build())) .build())) .build()) .call(); - if (res.taxLiabilitiesSelections().isPresent()) { - System.out.println(res.taxLiabilitiesSelections().get()); + if (res.externalPayroll().isPresent()) { + System.out.println(res.externalPayroll().get()); } } } ``` -### Example Usage: Nested +### Example Usage: Resource - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.LiabilitySelections; -import com.gusto.embedded_api.models.components.TaxLiabilitySelectionsRequest; +import com.gusto.embedded_api.models.components.ExternalPayrollUpdateRequest; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.operations.PutV1TaxLiabilitiesHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PutV1TaxLiabilitiesResponse; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.operations.PutV1ExternalPayrollHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PutV1ExternalPayrollResponse; import java.lang.Exception; import java.util.List; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, Exception { + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1TaxLiabilitiesResponse res = sdk.externalPayrolls().updateTaxLiabilities() - .xGustoAPIVersion(PutV1TaxLiabilitiesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + PutV1ExternalPayrollResponse res = sdk.externalPayrolls().update() + .xGustoAPIVersion(PutV1ExternalPayrollHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .companyUuid("") - .taxLiabilitySelectionsRequest(TaxLiabilitySelectionsRequest.builder() - .liabilitySelections(List.of( - LiabilitySelections.builder() - .taxId(1L) - .lastUnpaidExternalPayrollUuid("1bf1efe1-72d4-4e6e-a181-611f3ea66435") - .unpaidLiabilityAmount("47.5") - .build())) + .externalPayrollId("") + .externalPayrollUpdateRequest(ExternalPayrollUpdateRequest.builder() + .externalPayrollItems(List.of()) .build()) .call(); - if (res.taxLiabilitiesSelections().isPresent()) { - System.out.println(res.taxLiabilitiesSelections().get()); + if (res.externalPayroll().isPresent()) { + System.out.println(res.externalPayroll().get()); } } } ``` -### Example Usage: Resource - +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1ExternalPayrollHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | +| `externalPayrollId` | *String* | :heavy_check_mark: | The UUID of the external payroll | +| `externalPayrollUpdateRequest` | [ExternalPayrollUpdateRequest](../../models/components/ExternalPayrollUpdateRequest.md) | :heavy_check_mark: | N/A | + +### Response + +**[PutV1ExternalPayrollResponse](../../models/operations/PutV1ExternalPayrollResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | + +## delete + +Delete an external payroll. + +scope: `external_payrolls:write` + +### Example Usage + + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.LiabilitySelections; -import com.gusto.embedded_api.models.components.TaxLiabilitySelectionsRequest; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.operations.PutV1TaxLiabilitiesHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PutV1TaxLiabilitiesResponse; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.operations.DeleteV1ExternalPayrollHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.DeleteV1ExternalPayrollResponse; import java.lang.Exception; -import java.util.List; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, Exception { + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1TaxLiabilitiesResponse res = sdk.externalPayrolls().updateTaxLiabilities() - .xGustoAPIVersion(PutV1TaxLiabilitiesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + DeleteV1ExternalPayrollResponse res = sdk.externalPayrolls().delete() + .xGustoAPIVersion(DeleteV1ExternalPayrollHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .companyUuid("") - .taxLiabilitySelectionsRequest(TaxLiabilitySelectionsRequest.builder() - .liabilitySelections(List.of( - LiabilitySelections.builder() - .taxId(1L) - .lastUnpaidExternalPayrollUuid("1bf1efe1-72d4-4e6e-a181-611f3ea66435") - .unpaidLiabilityAmount("47.5") - .build())) - .build()) + .externalPayrollId("") .call(); - if (res.taxLiabilitiesSelections().isPresent()) { - System.out.println(res.taxLiabilitiesSelections().get()); - } + // handle response } } ``` @@ -930,41 +928,39 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1TaxLiabilitiesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1ExternalPayrollHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | -| `taxLiabilitySelectionsRequest` | [TaxLiabilitySelectionsRequest](../../models/components/TaxLiabilitySelectionsRequest.md) | :heavy_check_mark: | N/A | +| `externalPayrollId` | *String* | :heavy_check_mark: | The UUID of the external payroll | ### Response -**[PutV1TaxLiabilitiesResponse](../../models/operations/PutV1TaxLiabilitiesResponse.md)** +**[DeleteV1ExternalPayrollResponse](../../models/operations/DeleteV1ExternalPayrollResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| --------------------------------- | --------------------------------- | --------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | - -## finalizeTaxLiabilities +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | -Finalizes tax liabilities for a company. All external payrolls edit action will be disabled. +## calculateTaxes -### Asynchronous processing -This endpoint triggers an asynchronous operation. The external payrolls will be processed in the background after finalization. +Get tax suggestions for an external payroll. Earnings and/or benefits data must be saved prior to the calculation in order to retrieve accurate tax calculation. -scope: `external_payrolls:write` +scope: `external_payrolls:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PutV1TaxLiabilitiesFinishHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PutV1TaxLiabilitiesFinishResponse; +import com.gusto.embedded_api.models.operations.GetV1ExternalPayrollCalculateTaxesHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetV1ExternalPayrollCalculateTaxesResponse; import java.lang.Exception; public class Application { @@ -975,12 +971,15 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1TaxLiabilitiesFinishResponse res = sdk.externalPayrolls().finalizeTaxLiabilities() - .xGustoAPIVersion(PutV1TaxLiabilitiesFinishHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + GetV1ExternalPayrollCalculateTaxesResponse res = sdk.externalPayrolls().calculateTaxes() + .xGustoAPIVersion(GetV1ExternalPayrollCalculateTaxesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .companyUuid("") + .externalPayrollId("") .call(); - // handle response + if (res.externalPayrollTaxSuggestions().isPresent()) { + System.out.println(res.externalPayrollTaxSuggestions().get()); + } } } ``` @@ -989,12 +988,13 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1TaxLiabilitiesFinishHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1ExternalPayrollCalculateTaxesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | +| `externalPayrollId` | *String* | :heavy_check_mark: | The UUID of the external payroll | ### Response -**[PutV1TaxLiabilitiesFinishResponse](../../models/operations/PutV1TaxLiabilitiesFinishResponse.md)** +**[GetV1ExternalPayrollCalculateTaxesResponse](../../models/operations/GetV1ExternalPayrollCalculateTaxesResponse.md)** ### Errors diff --git a/gusto_embedded/docs/sdks/federaltaxdetails/README.md b/gusto_embedded/docs/sdks/federaltaxdetails/README.md index 864bc2976..b5744451d 100644 --- a/gusto_embedded/docs/sdks/federaltaxdetails/README.md +++ b/gusto_embedded/docs/sdks/federaltaxdetails/README.md @@ -34,8 +34,8 @@ public class Application { .build(); GetV1CompaniesCompanyIdFederalTaxDetailsResponse res = sdk.federalTaxDetails().get() - .companyId("") .xGustoAPIVersion(GetV1CompaniesCompanyIdFederalTaxDetailsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyId("") .call(); if (res.federalTaxDetails().isPresent()) { @@ -49,8 +49,8 @@ public class Application { | Parameter | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | 7b1d0df1-6403-4a06-8768-c1dd7d24d27a | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdFederalTaxDetailsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | 7b1d0df1-6403-4a06-8768-c1dd7d24d27a | ### Response @@ -86,23 +86,22 @@ package hello.world; import com.gusto.embedded_api.GustoEmbedded; import com.gusto.embedded_api.models.components.FederalTaxDetailsUpdate; -import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.errors.*; import com.gusto.embedded_api.models.operations.PutV1CompaniesCompanyIdFederalTaxDetailsHeaderXGustoAPIVersion; import com.gusto.embedded_api.models.operations.PutV1CompaniesCompanyIdFederalTaxDetailsResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + public static void main(String[] args) throws ForbiddenErrorObject, NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); PutV1CompaniesCompanyIdFederalTaxDetailsResponse res = sdk.federalTaxDetails().update() - .companyId("") .xGustoAPIVersion(PutV1CompaniesCompanyIdFederalTaxDetailsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyId("") .federalTaxDetailsUpdate(FederalTaxDetailsUpdate.builder() .version("") .build()) @@ -122,23 +121,22 @@ package hello.world; import com.gusto.embedded_api.GustoEmbedded; import com.gusto.embedded_api.models.components.*; -import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.errors.*; import com.gusto.embedded_api.models.operations.PutV1CompaniesCompanyIdFederalTaxDetailsHeaderXGustoAPIVersion; import com.gusto.embedded_api.models.operations.PutV1CompaniesCompanyIdFederalTaxDetailsResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + public static void main(String[] args) throws ForbiddenErrorObject, NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); PutV1CompaniesCompanyIdFederalTaxDetailsResponse res = sdk.federalTaxDetails().update() - .companyId("") .xGustoAPIVersion(PutV1CompaniesCompanyIdFederalTaxDetailsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyId("") .federalTaxDetailsUpdate(FederalTaxDetailsUpdate.builder() .version("6cb95e00540706ca48d4577b3c839fbe") .legalName("Acme Corp.") @@ -162,23 +160,22 @@ package hello.world; import com.gusto.embedded_api.GustoEmbedded; import com.gusto.embedded_api.models.components.FederalTaxDetailsUpdate; -import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.errors.*; import com.gusto.embedded_api.models.operations.PutV1CompaniesCompanyIdFederalTaxDetailsHeaderXGustoAPIVersion; import com.gusto.embedded_api.models.operations.PutV1CompaniesCompanyIdFederalTaxDetailsResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + public static void main(String[] args) throws ForbiddenErrorObject, NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); PutV1CompaniesCompanyIdFederalTaxDetailsResponse res = sdk.federalTaxDetails().update() - .companyId("") .xGustoAPIVersion(PutV1CompaniesCompanyIdFederalTaxDetailsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyId("") .federalTaxDetailsUpdate(FederalTaxDetailsUpdate.builder() .version("") .build()) @@ -198,23 +195,22 @@ package hello.world; import com.gusto.embedded_api.GustoEmbedded; import com.gusto.embedded_api.models.components.FederalTaxDetailsUpdate; -import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.errors.*; import com.gusto.embedded_api.models.operations.PutV1CompaniesCompanyIdFederalTaxDetailsHeaderXGustoAPIVersion; import com.gusto.embedded_api.models.operations.PutV1CompaniesCompanyIdFederalTaxDetailsResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + public static void main(String[] args) throws ForbiddenErrorObject, NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); PutV1CompaniesCompanyIdFederalTaxDetailsResponse res = sdk.federalTaxDetails().update() - .companyId("") .xGustoAPIVersion(PutV1CompaniesCompanyIdFederalTaxDetailsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyId("") .federalTaxDetailsUpdate(FederalTaxDetailsUpdate.builder() .version("") .build()) @@ -231,8 +227,8 @@ public class Application { | Parameter | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | 7b1d0df1-6403-4a06-8768-c1dd7d24d27a | | `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1CompaniesCompanyIdFederalTaxDetailsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | 7b1d0df1-6403-4a06-8768-c1dd7d24d27a | | `federalTaxDetailsUpdate` | [FederalTaxDetailsUpdate](../../models/components/FederalTaxDetailsUpdate.md) | :heavy_check_mark: | N/A | | ### Response @@ -243,6 +239,7 @@ public class Application { | Error Type | Status Code | Content Type | | -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/ForbiddenErrorObject | 403 | application/json | | models/errors/NotFoundErrorObject | 404 | application/json | | models/errors/UnprocessableEntityError | 409, 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/gusto_embedded/docs/sdks/garnishments/README.md b/gusto_embedded/docs/sdks/garnishments/README.md index f2cc57a36..455cb0047 100644 --- a/gusto_embedded/docs/sdks/garnishments/README.md +++ b/gusto_embedded/docs/sdks/garnishments/README.md @@ -6,9 +6,9 @@ * [list](#list) - Get garnishments for an employee * [create](#create) - Create a garnishment +* [getChildSupportData](#getchildsupportdata) - Get child support garnishment data * [get](#get) - Get a garnishment * [update](#update) - Update a garnishment -* [getChildSupportData](#getchildsupportdata) - Get child support garnishment data ## list @@ -292,6 +292,58 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | +## getChildSupportData + +Agency data and requirements to be used for creating child support garnishments + +scope: `garnishments:read` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.operations.GetV1GarnishmentsChildSupportHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetV1GarnishmentsChildSupportResponse; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + GetV1GarnishmentsChildSupportResponse res = sdk.garnishments().getChildSupportData() + .xGustoAPIVersion(GetV1GarnishmentsChildSupportHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .call(); + + if (res.childSupportData().isPresent()) { + System.out.println(res.childSupportData().get()); + } + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1GarnishmentsChildSupportHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | + +### Response + +**[GetV1GarnishmentsChildSupportResponse](../../models/operations/GetV1GarnishmentsChildSupportResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| -------------------------- | -------------------------- | -------------------------- | +| models/errors/APIException | 4XX, 5XX | \*/\* | + ## get Garnishments, or employee deductions, are fixed amounts or percentages deducted from an employee’s pay. They can be deducted a specific number of times or on a recurring basis. Garnishments can also have maximum deductions on a yearly or per-pay-period bases. Common uses for garnishments are court-ordered payments for child support or back taxes. Some companies provide loans to their employees that are repaid via garnishments. @@ -585,56 +637,4 @@ public class Application { | -------------------------------------- | -------------------------------------- | -------------------------------------- | | models/errors/NotFoundErrorObject | 404 | application/json | | models/errors/UnprocessableEntityError | 422 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | - -## getChildSupportData - -Agency data and requirements to be used for creating child support garnishments - -scope: `garnishments:read` - -### Example Usage - - -```java -package hello.world; - -import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.operations.GetV1GarnishmentsChildSupportHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.GetV1GarnishmentsChildSupportResponse; -import java.lang.Exception; - -public class Application { - - public static void main(String[] args) throws Exception { - - GustoEmbedded sdk = GustoEmbedded.builder() - .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) - .build(); - - GetV1GarnishmentsChildSupportResponse res = sdk.garnishments().getChildSupportData() - .xGustoAPIVersion(GetV1GarnishmentsChildSupportHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .call(); - - if (res.childSupportData().isPresent()) { - System.out.println(res.childSupportData().get()); - } - } -} -``` - -### Parameters - -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1GarnishmentsChildSupportHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | - -### Response - -**[GetV1GarnishmentsChildSupportResponse](../../models/operations/GetV1GarnishmentsChildSupportResponse.md)** - -### Errors - -| Error Type | Status Code | Content Type | -| -------------------------- | -------------------------- | -------------------------- | -| models/errors/APIException | 4XX, 5XX | \*/\* | \ No newline at end of file +| models/errors/APIException | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/gusto_embedded/docs/sdks/generateddocuments/README.md b/gusto_embedded/docs/sdks/generateddocuments/README.md index 599414e40..be2ed0d1e 100644 --- a/gusto_embedded/docs/sdks/generateddocuments/README.md +++ b/gusto_embedded/docs/sdks/generateddocuments/README.md @@ -19,10 +19,8 @@ scope: `generated_documents:read` package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.VersionHeader; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.operations.DocumentType; -import com.gusto.embedded_api.models.operations.GetV1GeneratedDocumentsDocumentTypeRequestUuidResponse; +import com.gusto.embedded_api.models.operations.*; import java.lang.Exception; public class Application { @@ -34,9 +32,9 @@ public class Application { .build(); GetV1GeneratedDocumentsDocumentTypeRequestUuidResponse res = sdk.generatedDocuments().get() + .xGustoAPIVersion(GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .documentType(DocumentType.PRINTABLE_PAYROLL_CHECKS) .requestUuid("") - .xGustoAPIVersion(VersionHeader.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .call(); if (res.generatedDocument().isPresent()) { @@ -50,9 +48,9 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `documentType` | [DocumentType](../../models/operations/DocumentType.md) | :heavy_check_mark: | The type of document being generated | | `requestUuid` | *String* | :heavy_check_mark: | The UUID of the request to generate a document. Generate document endpoints return request_uuids to be used with the GET generated document endpoint. | -| `xGustoAPIVersion` | [Optional\](../../models/components/VersionHeader.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | ### Response diff --git a/gusto_embedded/docs/sdks/industryselection/README.md b/gusto_embedded/docs/sdks/industryselection/README.md index 296862441..364b34aaa 100644 --- a/gusto_embedded/docs/sdks/industryselection/README.md +++ b/gusto_embedded/docs/sdks/industryselection/README.md @@ -34,8 +34,8 @@ public class Application { .build(); GetV1CompanyIndustryResponse res = sdk.industrySelection().get() - .companyId("") .xGustoAPIVersion(GetV1CompanyIndustryHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyId("") .call(); if (res.industry().isPresent()) { @@ -49,8 +49,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompanyIndustryHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | ### Response @@ -98,8 +98,8 @@ public class Application { .build(); PutV1CompanyIndustryResponse res = sdk.industrySelection().update() - .companyId("") .xGustoAPIVersion(PutV1CompanyIndustryHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyId("") .companyIndustrySelectionRequiredBody(CompanyIndustrySelectionRequiredBody.builder() .naicsCode("") .build()) @@ -135,8 +135,8 @@ public class Application { .build(); PutV1CompanyIndustryResponse res = sdk.industrySelection().update() - .companyId("") .xGustoAPIVersion(PutV1CompanyIndustryHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyId("") .companyIndustrySelectionRequiredBody(CompanyIndustrySelectionRequiredBody.builder() .naicsCode("611420") .title("Computer Training") @@ -174,8 +174,8 @@ public class Application { .build(); PutV1CompanyIndustryResponse res = sdk.industrySelection().update() - .companyId("") .xGustoAPIVersion(PutV1CompanyIndustryHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyId("") .companyIndustrySelectionRequiredBody(CompanyIndustrySelectionRequiredBody.builder() .naicsCode("") .build()) @@ -210,8 +210,8 @@ public class Application { .build(); PutV1CompanyIndustryResponse res = sdk.industrySelection().update() - .companyId("") .xGustoAPIVersion(PutV1CompanyIndustryHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyId("") .companyIndustrySelectionRequiredBody(CompanyIndustrySelectionRequiredBody.builder() .naicsCode("") .build()) @@ -228,8 +228,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1CompanyIndustryHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | `companyIndustrySelectionRequiredBody` | [CompanyIndustrySelectionRequiredBody](../../models/components/CompanyIndustrySelectionRequiredBody.md) | :heavy_check_mark: | N/A | ### Response diff --git a/gusto_embedded/docs/sdks/introspection/README.md b/gusto_embedded/docs/sdks/introspection/README.md index 55dbe00f3..9995aafb9 100644 --- a/gusto_embedded/docs/sdks/introspection/README.md +++ b/gusto_embedded/docs/sdks/introspection/README.md @@ -4,40 +4,53 @@ ### Available Operations -* [getInfo](#getinfo) - Get info about the current access token * [oauthAccessToken](#oauthaccesstoken) - Create a System Access Token or Refresh an Access Token +* [getInfo](#getinfo) - Get info about the current access token -## getInfo +## oauthAccessToken -Returns scope and resource information associated with the current access token. Use this endpoint to verify the following for the current access token: -* Resource (company, employee, contractor, or application) and resource owner -* Access level +Creates a system access token or refreshes an oauth access token ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.operations.GetV1TokenInfoResponse; -import com.gusto.embedded_api.models.operations.XGustoAPIVersion; +import com.gusto.embedded_api.models.components.*; +import com.gusto.embedded_api.models.operations.*; import java.lang.Exception; +import java.lang.Object; public class Application { public static void main(String[] args) throws Exception { GustoEmbedded sdk = GustoEmbedded.builder() - .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1TokenInfoResponse res = sdk.introspection().getInfo() - .xGustoAPIVersion(XGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + OauthAccessTokenResponse res = sdk.introspection().oauthAccessToken() + .xGustoAPIVersion(OauthAccessTokenHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .requestBody(OauthAccessTokenRequestBody.of(SystemAccessTokenRequest.builder() + .clientId("qr6L_9FRkbMVL_GdwvrMW6Ef8tcU6NUxjWpOfqXqOG8") + .clientSecret("3aQSHRB3596nZhm6NdNBELZ1u9xbZmvCrKpBhbZYq6w") + .grantType(RequestBodyGrantType.SYSTEM_ACCESS) + .build())) .call(); - if (res.tokenInfo().isPresent()) { - System.out.println(res.tokenInfo().get()); + if (res.authentication().isPresent()) { + Authentication unionValue = res.authentication().get(); + Object raw = unionValue.value(); + if (raw instanceof CreateTokenAuthentication) { + CreateTokenAuthentication createTokenAuthenticationValue = (CreateTokenAuthentication) raw; + // Handle createTokenAuthentication variant + } else if (raw instanceof RefreshTokenAuthentication) { + RefreshTokenAuthentication refreshTokenAuthenticationValue = (RefreshTokenAuthentication) raw; + // Handle refreshTokenAuthentication variant + } else { + // Unknown or unsupported variant + } } } } @@ -47,11 +60,12 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/XGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/OauthAccessTokenHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `requestBody` | [OauthAccessTokenRequestBody](../../models/operations/OauthAccessTokenRequestBody.md) | :heavy_check_mark: | N/A | ### Response -**[GetV1TokenInfoResponse](../../models/operations/GetV1TokenInfoResponse.md)** +**[OauthAccessTokenResponse](../../models/operations/OauthAccessTokenResponse.md)** ### Errors @@ -59,50 +73,37 @@ public class Application { | -------------------------- | -------------------------- | -------------------------- | | models/errors/APIException | 4XX, 5XX | \*/\* | -## oauthAccessToken +## getInfo -Creates a system access token or refreshes an oauth access token +Returns scope and resource information associated with the current access token. Use this endpoint to verify the following for the current access token: +* Resource (company, employee, contractor, or application) and resource owner +* Access level ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.*; -import com.gusto.embedded_api.models.operations.*; +import com.gusto.embedded_api.models.operations.GetV1TokenInfoHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetV1TokenInfoResponse; import java.lang.Exception; -import java.lang.Object; public class Application { public static void main(String[] args) throws Exception { GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - OauthAccessTokenResponse res = sdk.introspection().oauthAccessToken() - .xGustoAPIVersion(HeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .requestBody(OauthAccessTokenRequestBody.of(SystemAccessTokenRequest.builder() - .clientId("qr6L_9FRkbMVL_GdwvrMW6Ef8tcU6NUxjWpOfqXqOG8") - .clientSecret("3aQSHRB3596nZhm6NdNBELZ1u9xbZmvCrKpBhbZYq6w") - .grantType(RequestBodyGrantType.SYSTEM_ACCESS) - .build())) + GetV1TokenInfoResponse res = sdk.introspection().getInfo() + .xGustoAPIVersion(GetV1TokenInfoHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .call(); - if (res.authentication().isPresent()) { - Authentication unionValue = res.authentication().get(); - Object raw = unionValue.value(); - if (raw instanceof CreateTokenAuthentication) { - CreateTokenAuthentication createTokenAuthenticationValue = (CreateTokenAuthentication) raw; - // Handle createTokenAuthentication variant - } else if (raw instanceof RefreshTokenAuthentication) { - RefreshTokenAuthentication refreshTokenAuthenticationValue = (RefreshTokenAuthentication) raw; - // Handle refreshTokenAuthentication variant - } else { - // Unknown or unsupported variant - } + if (res.tokenInfo().isPresent()) { + System.out.println(res.tokenInfo().get()); } } } @@ -112,12 +113,11 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/HeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `requestBody` | [OauthAccessTokenRequestBody](../../models/operations/OauthAccessTokenRequestBody.md) | :heavy_check_mark: | N/A | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1TokenInfoHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | ### Response -**[OauthAccessTokenResponse](../../models/operations/OauthAccessTokenResponse.md)** +**[GetV1TokenInfoResponse](../../models/operations/GetV1TokenInfoResponse.md)** ### Errors diff --git a/gusto_embedded/docs/sdks/jobsandcompensations/README.md b/gusto_embedded/docs/sdks/jobsandcompensations/README.md index 885545c3d..455c3f1fd 100644 --- a/gusto_embedded/docs/sdks/jobsandcompensations/README.md +++ b/gusto_embedded/docs/sdks/jobsandcompensations/README.md @@ -4,36 +4,38 @@ ### Available Operations -* [getJobs](#getjobs) - Get jobs for an employee -* [createJob](#createjob) - Create a job -* [getJob](#getjob) - Get a job -* [update](#update) - Update a job -* [delete](#delete) - Delete an individual job * [getCompensations](#getcompensations) - Get compensations for a job * [createCompensation](#createcompensation) - Create a compensation * [getCompensation](#getcompensation) - Get a compensation * [updateCompensation](#updatecompensation) - Update a compensation * [deleteCompensation](#deletecompensation) - Delete a compensation +* [getJob](#getjob) - Get a job +* [update](#update) - Update a job +* [delete](#delete) - Delete an individual job +* [getJobs](#getjobs) - Get jobs for an employee +* [createJob](#createjob) - Create a job -## getJobs +## getCompensations -Get all of the jobs that an employee holds. -Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope is included. This allows you to access employee and job metadata without exposing pay rates. +Compensations contain information on how much is paid out for a job. Jobs may have many compensations, but only one that is active. The current compensation is the one with the most recent `effective_date`. -Compensation data in the response requires the `compensations:read` scope. +*Note: Currently the API does not support creating multiple compensations per job - creating a compensation with the same job_uuid as another will fail with a relevant error.* -scope: `jobs:read` +Use `flsa_status` to determine if an employee is eligible for overtime +By default the API returns only the current compensation - use the `include` parameter to return all compensations. + +scope: `compensations:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.operations.GetV1EmployeesEmployeeIdJobsRequest; -import com.gusto.embedded_api.models.operations.GetV1EmployeesEmployeeIdJobsResponse; +import com.gusto.embedded_api.models.operations.GetV1JobsJobIdCompensationsRequest; +import com.gusto.embedded_api.models.operations.GetV1JobsJobIdCompensationsResponse; import java.lang.Exception; public class Application { @@ -44,16 +46,16 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1EmployeesEmployeeIdJobsRequest req = GetV1EmployeesEmployeeIdJobsRequest.builder() - .employeeId("") + GetV1JobsJobIdCompensationsRequest req = GetV1JobsJobIdCompensationsRequest.builder() + .jobId("") .build(); - GetV1EmployeesEmployeeIdJobsResponse res = sdk.jobsAndCompensations().getJobs() + GetV1JobsJobIdCompensationsResponse res = sdk.jobsAndCompensations().getCompensations() .request(req) .call(); - if (res.jobs().isPresent()) { - System.out.println(res.jobs().get()); + if (res.compensations().isPresent()) { + System.out.println(res.compensations().get()); } } } @@ -61,13 +63,13 @@ public class Application { ### Parameters -| Parameter | Type | Required | Description | -| ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | -| `request` | [GetV1EmployeesEmployeeIdJobsRequest](../../models/operations/GetV1EmployeesEmployeeIdJobsRequest.md) | :heavy_check_mark: | The request object to use for the request. | +| Parameter | Type | Required | Description | +| --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | +| `request` | [GetV1JobsJobIdCompensationsRequest](../../models/operations/GetV1JobsJobIdCompensationsRequest.md) | :heavy_check_mark: | The request object to use for the request. | ### Response -**[GetV1EmployeesEmployeeIdJobsResponse](../../models/operations/GetV1EmployeesEmployeeIdJobsResponse.md)** +**[GetV1JobsJobIdCompensationsResponse](../../models/operations/GetV1JobsJobIdCompensationsResponse.md)** ### Errors @@ -76,24 +78,31 @@ public class Application { | models/errors/NotFoundErrorObject | 404 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## createJob +## createCompensation -Create a job. +Compensations contain information on how much is paid out for a job. Jobs may have many compensations, but only one that is active. The current compensation is the one with the most recent `effective_date`. -scope: `jobs:write` +### Prerequisites +Before calling this endpoint: +1. A [job](ref:post-v1-jobs-job_id) must exist for the employee -### Example Usage +### Webhooks +- `employee_job_compensation.created`: Fires when a compensation is successfully created - +scope: `compensations:write` + +### Example Usage: Basic + + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.JobsCreateRequestBody; +import com.gusto.embedded_api.models.components.*; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PostV1EmployeesEmployeeIdJobsHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PostV1EmployeesEmployeeIdJobsResponse; +import com.gusto.embedded_api.models.operations.PostV1CompensationsCompensationIdHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PostV1CompensationsCompensationIdResponse; import java.lang.Exception; public class Application { @@ -104,122 +113,74 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostV1EmployeesEmployeeIdJobsResponse res = sdk.jobsAndCompensations().createJob() - .employeeId("") - .xGustoAPIVersion(PostV1EmployeesEmployeeIdJobsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .jobsCreateRequestBody(JobsCreateRequestBody.builder() - .title("Regional Manager") - .hireDate("2020-12-21") + PostV1CompensationsCompensationIdResponse res = sdk.jobsAndCompensations().createCompensation() + .xGustoAPIVersion(PostV1CompensationsCompensationIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .jobId("") + .compensationsRequestBody(CompensationsRequestBody.builder() + .rate("70000.00") + .paymentUnit(CompensationsRequestBodyPaymentUnit.WEEK) + .flsaStatus(FlsaStatusType.SALARIED_NONEXEMPT) .build()) .call(); - if (res.job().isPresent()) { - System.out.println(res.job().get()); + if (res.compensation().isPresent()) { + System.out.println(res.compensation().get()); } } } ``` +### Example Usage: Exempt -### Parameters - -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1EmployeesEmployeeIdJobsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `jobsCreateRequestBody` | [JobsCreateRequestBody](../../models/components/JobsCreateRequestBody.md) | :heavy_check_mark: | N/A | - -### Response - -**[PostV1EmployeesEmployeeIdJobsResponse](../../models/operations/PostV1EmployeesEmployeeIdJobsResponse.md)** - -### Errors - -| Error Type | Status Code | Content Type | -| -------------------------------------- | -------------------------------------- | -------------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/UnprocessableEntityError | 422 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | - -## getJob - -Get a job. - -Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope is included. This allows you to access employee and job metadata without exposing pay rates. - -Compensation data in the response requires the `compensations:read` scope. - -scope: `jobs:read` - -### Example Usage - - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.components.*; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.operations.GetV1JobsJobIdHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.GetV1JobsJobIdResponse; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.operations.PostV1CompensationsCompensationIdHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PostV1CompensationsCompensationIdResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, Exception { + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1JobsJobIdResponse res = sdk.jobsAndCompensations().getJob() + PostV1CompensationsCompensationIdResponse res = sdk.jobsAndCompensations().createCompensation() + .xGustoAPIVersion(PostV1CompensationsCompensationIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .jobId("") - .xGustoAPIVersion(GetV1JobsJobIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .compensationsRequestBody(CompensationsRequestBody.builder() + .rate("60000.00") + .paymentUnit(CompensationsRequestBodyPaymentUnit.YEAR) + .flsaStatus(FlsaStatusType.EXEMPT) + .build()) .call(); - if (res.job().isPresent()) { - System.out.println(res.job().get()); + if (res.compensation().isPresent()) { + System.out.println(res.compensation().get()); } } } ``` +### Example Usage: Minimum Wage Adjusted -### Parameters - -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `jobId` | *String* | :heavy_check_mark: | The UUID of the job | -| `include` | [Optional\](../../models/operations/GetV1JobsJobIdQueryParamInclude.md) | :heavy_minus_sign: | Available options:
    - all_compensations: Include all effective dated compensations for each job instead of only the current compensation
    | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1JobsJobIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | - -### Response - -**[GetV1JobsJobIdResponse](../../models/operations/GetV1JobsJobIdResponse.md)** - -### Errors - -| Error Type | Status Code | Content Type | -| --------------------------------- | --------------------------------- | --------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | - -## update - -Update a job. - -scope: `jobs:write` - -### Example Usage: Basic - - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.JobsUpdateRequestBody; +import com.gusto.embedded_api.models.components.*; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PutV1JobsJobIdHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PutV1JobsJobIdResponse; +import com.gusto.embedded_api.models.operations.PostV1CompensationsCompensationIdHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PostV1CompensationsCompensationIdResponse; import java.lang.Exception; +import java.util.List; public class Application { @@ -229,32 +190,40 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1JobsJobIdResponse res = sdk.jobsAndCompensations().update() + PostV1CompensationsCompensationIdResponse res = sdk.jobsAndCompensations().createCompensation() + .xGustoAPIVersion(PostV1CompensationsCompensationIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .jobId("") - .xGustoAPIVersion(PutV1JobsJobIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .jobsUpdateRequestBody(JobsUpdateRequestBody.builder() - .version("") + .compensationsRequestBody(CompensationsRequestBody.builder() + .rate("7.00") + .paymentUnit(CompensationsRequestBodyPaymentUnit.HOUR) + .flsaStatus(FlsaStatusType.NONEXEMPT) + .effectiveDate("2023-01-01") + .adjustForMinimumWage(true) + .minimumWages(List.of( + CompensationsRequestBodyMinimumWages.builder() + .uuid("340832db-ab28-4112-9e10-28dd1711835f") + .build())) .build()) .call(); - if (res.job().isPresent()) { - System.out.println(res.job().get()); + if (res.compensation().isPresent()) { + System.out.println(res.compensation().get()); } } } ``` -### Example Usage: Example +### Example Usage: Nested - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.JobsUpdateRequestBody; +import com.gusto.embedded_api.models.components.*; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PutV1JobsJobIdHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PutV1JobsJobIdResponse; +import com.gusto.embedded_api.models.operations.PostV1CompensationsCompensationIdHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PostV1CompensationsCompensationIdResponse; import java.lang.Exception; public class Application { @@ -265,34 +234,34 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1JobsJobIdResponse res = sdk.jobsAndCompensations().update() + PostV1CompensationsCompensationIdResponse res = sdk.jobsAndCompensations().createCompensation() + .xGustoAPIVersion(PostV1CompensationsCompensationIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .jobId("") - .xGustoAPIVersion(PutV1JobsJobIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .jobsUpdateRequestBody(JobsUpdateRequestBody.builder() - .version("gr78930htutrz444kuytr3s5hgxykuveb523fwl8sir") - .title("Regional Manager") - .hireDate("2020-12-21") + .compensationsRequestBody(CompensationsRequestBody.builder() + .rate("70000.00") + .paymentUnit(CompensationsRequestBodyPaymentUnit.WEEK) + .flsaStatus(FlsaStatusType.SALARIED_NONEXEMPT) .build()) .call(); - if (res.job().isPresent()) { - System.out.println(res.job().get()); + if (res.compensation().isPresent()) { + System.out.println(res.compensation().get()); } } } ``` -### Example Usage: Nested +### Example Usage: Resource - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.JobsUpdateRequestBody; +import com.gusto.embedded_api.models.components.*; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PutV1JobsJobIdHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PutV1JobsJobIdResponse; +import com.gusto.embedded_api.models.operations.PostV1CompensationsCompensationIdHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PostV1CompensationsCompensationIdResponse; import java.lang.Exception; public class Application { @@ -303,68 +272,34 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1JobsJobIdResponse res = sdk.jobsAndCompensations().update() + PostV1CompensationsCompensationIdResponse res = sdk.jobsAndCompensations().createCompensation() + .xGustoAPIVersion(PostV1CompensationsCompensationIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .jobId("") - .xGustoAPIVersion(PutV1JobsJobIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .jobsUpdateRequestBody(JobsUpdateRequestBody.builder() - .version("") + .compensationsRequestBody(CompensationsRequestBody.builder() + .rate("70000.00") + .paymentUnit(CompensationsRequestBodyPaymentUnit.WEEK) + .flsaStatus(FlsaStatusType.SALARIED_NONEXEMPT) .build()) .call(); - if (res.job().isPresent()) { - System.out.println(res.job().get()); + if (res.compensation().isPresent()) { + System.out.println(res.compensation().get()); } } } ``` -### Example Usage: Resource - -```java -package hello.world; - -import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.JobsUpdateRequestBody; -import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PutV1JobsJobIdHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PutV1JobsJobIdResponse; -import java.lang.Exception; - -public class Application { - - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { - - GustoEmbedded sdk = GustoEmbedded.builder() - .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) - .build(); - - PutV1JobsJobIdResponse res = sdk.jobsAndCompensations().update() - .jobId("") - .xGustoAPIVersion(PutV1JobsJobIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .jobsUpdateRequestBody(JobsUpdateRequestBody.builder() - .version("") - .build()) - .call(); - - if (res.job().isPresent()) { - System.out.println(res.job().get()); - } - } -} -``` - -### Parameters +### Parameters | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1CompensationsCompensationIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `jobId` | *String* | :heavy_check_mark: | The UUID of the job | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1JobsJobIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `jobsUpdateRequestBody` | [JobsUpdateRequestBody](../../models/components/JobsUpdateRequestBody.md) | :heavy_check_mark: | N/A | +| `compensationsRequestBody` | [CompensationsRequestBody](../../models/components/CompensationsRequestBody.md) | :heavy_check_mark: | N/A | ### Response -**[PutV1JobsJobIdResponse](../../models/operations/PutV1JobsJobIdResponse.md)** +**[PostV1CompensationsCompensationIdResponse](../../models/operations/PostV1CompensationsCompensationIdResponse.md)** ### Errors @@ -374,83 +309,53 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## delete +## getCompensation -Deletes a specific job that an employee holds. +Compensations contain information on how much is paid out for a job. Jobs may have many compensations, but only one that is active. The current compensation is the one with the most recent `effective_date`. -scope: `jobs:write` +scope: `compensations:read` -### Example Usage +### Example Usage: Exempt - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.DeleteV1JobsJobIdHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.DeleteV1JobsJobIdResponse; +import com.gusto.embedded_api.models.operations.GetV1CompensationsCompensationIdHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetV1CompensationsCompensationIdResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + public static void main(String[] args) throws NotFoundErrorObject, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - DeleteV1JobsJobIdResponse res = sdk.jobsAndCompensations().delete() - .jobId("") - .xGustoAPIVersion(DeleteV1JobsJobIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + GetV1CompensationsCompensationIdResponse res = sdk.jobsAndCompensations().getCompensation() + .xGustoAPIVersion(GetV1CompensationsCompensationIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .compensationId("") .call(); - // handle response + if (res.compensation().isPresent()) { + System.out.println(res.compensation().get()); + } } } ``` +### Example Usage: Minimum Wage Adjusted -### Parameters - -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `jobId` | *String* | :heavy_check_mark: | The UUID of the job | -| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1JobsJobIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | - -### Response - -**[DeleteV1JobsJobIdResponse](../../models/operations/DeleteV1JobsJobIdResponse.md)** - -### Errors - -| Error Type | Status Code | Content Type | -| -------------------------------------- | -------------------------------------- | -------------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/UnprocessableEntityError | 422 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | - -## getCompensations - -Compensations contain information on how much is paid out for a job. Jobs may have many compensations, but only one that is active. The current compensation is the one with the most recent `effective_date`. - -*Note: Currently the API does not support creating multiple compensations per job - creating a compensation with the same job_uuid as another will fail with a relevant error.* - -Use `flsa_status` to determine if an employee is eligible for overtime -By default the API returns only the current compensation - use the `include` parameter to return all compensations. - -scope: `compensations:read` - -### Example Usage - - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.operations.GetV1JobsJobIdCompensationsRequest; -import com.gusto.embedded_api.models.operations.GetV1JobsJobIdCompensationsResponse; +import com.gusto.embedded_api.models.operations.GetV1CompensationsCompensationIdHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetV1CompensationsCompensationIdResponse; import java.lang.Exception; public class Application { @@ -461,16 +366,13 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1JobsJobIdCompensationsRequest req = GetV1JobsJobIdCompensationsRequest.builder() - .jobId("") - .build(); - - GetV1JobsJobIdCompensationsResponse res = sdk.jobsAndCompensations().getCompensations() - .request(req) + GetV1CompensationsCompensationIdResponse res = sdk.jobsAndCompensations().getCompensation() + .xGustoAPIVersion(GetV1CompensationsCompensationIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .compensationId("") .call(); - if (res.compensations().isPresent()) { - System.out.println(res.compensations().get()); + if (res.compensation().isPresent()) { + System.out.println(res.compensation().get()); } } } @@ -478,13 +380,14 @@ public class Application { ### Parameters -| Parameter | Type | Required | Description | -| --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | -| `request` | [GetV1JobsJobIdCompensationsRequest](../../models/operations/GetV1JobsJobIdCompensationsRequest.md) | :heavy_check_mark: | The request object to use for the request. | +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompensationsCompensationIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `compensationId` | *String* | :heavy_check_mark: | The UUID of the compensation | ### Response -**[GetV1JobsJobIdCompensationsResponse](../../models/operations/GetV1JobsJobIdCompensationsResponse.md)** +**[GetV1CompensationsCompensationIdResponse](../../models/operations/GetV1CompensationsCompensationIdResponse.md)** ### Errors @@ -493,31 +396,27 @@ public class Application { | models/errors/NotFoundErrorObject | 404 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## createCompensation +## updateCompensation Compensations contain information on how much is paid out for a job. Jobs may have many compensations, but only one that is active. The current compensation is the one with the most recent `effective_date`. -### Prerequisites -Before calling this endpoint: -1. A [job](ref:post-v1-jobs-job_id) must exist for the employee - ### Webhooks -- `employee_job_compensation.created`: Fires when a compensation is successfully created +- `employee_job_compensation.updated`: Fires when a compensation is successfully updated scope: `compensations:write` ### Example Usage: Basic - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.*; +import com.gusto.embedded_api.models.components.CompensationsUpdateRequestBody; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PostV1CompensationsCompensationIdHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PostV1CompensationsCompensationIdResponse; +import com.gusto.embedded_api.models.operations.PutV1CompensationsCompensationIdHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PutV1CompensationsCompensationIdResponse; import java.lang.Exception; public class Application { @@ -528,13 +427,11 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostV1CompensationsCompensationIdResponse res = sdk.jobsAndCompensations().createCompensation() - .xGustoAPIVersion(PostV1CompensationsCompensationIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .jobId("") - .compensationsRequestBody(CompensationsRequestBody.builder() - .rate("70000.00") - .paymentUnit(CompensationsRequestBodyPaymentUnit.WEEK) - .flsaStatus(FlsaStatusType.SALARIED_NONEXEMPT) + PutV1CompensationsCompensationIdResponse res = sdk.jobsAndCompensations().updateCompensation() + .xGustoAPIVersion(PutV1CompensationsCompensationIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .compensationId("") + .compensationsUpdateRequestBody(CompensationsUpdateRequestBody.builder() + .version("") .build()) .call(); @@ -546,7 +443,7 @@ public class Application { ``` ### Example Usage: Exempt - + ```java package hello.world; @@ -554,8 +451,8 @@ import com.gusto.embedded_api.GustoEmbedded; import com.gusto.embedded_api.models.components.*; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PostV1CompensationsCompensationIdHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PostV1CompensationsCompensationIdResponse; +import com.gusto.embedded_api.models.operations.PutV1CompensationsCompensationIdHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PutV1CompensationsCompensationIdResponse; import java.lang.Exception; public class Application { @@ -566,12 +463,13 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostV1CompensationsCompensationIdResponse res = sdk.jobsAndCompensations().createCompensation() - .xGustoAPIVersion(PostV1CompensationsCompensationIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .jobId("") - .compensationsRequestBody(CompensationsRequestBody.builder() + PutV1CompensationsCompensationIdResponse res = sdk.jobsAndCompensations().updateCompensation() + .xGustoAPIVersion(PutV1CompensationsCompensationIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .compensationId("") + .compensationsUpdateRequestBody(CompensationsUpdateRequestBody.builder() + .version("98jr3289h3298hr9329gf9egskt3kagri32qqgiqe3872") .rate("60000.00") - .paymentUnit(CompensationsRequestBodyPaymentUnit.YEAR) + .paymentUnit(CompensationsUpdateRequestBodyPaymentUnit.YEAR) .flsaStatus(FlsaStatusType.EXEMPT) .build()) .call(); @@ -584,7 +482,7 @@ public class Application { ``` ### Example Usage: Minimum Wage Adjusted - + ```java package hello.world; @@ -592,8 +490,8 @@ import com.gusto.embedded_api.GustoEmbedded; import com.gusto.embedded_api.models.components.*; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PostV1CompensationsCompensationIdHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PostV1CompensationsCompensationIdResponse; +import com.gusto.embedded_api.models.operations.PutV1CompensationsCompensationIdHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PutV1CompensationsCompensationIdResponse; import java.lang.Exception; import java.util.List; @@ -605,17 +503,17 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostV1CompensationsCompensationIdResponse res = sdk.jobsAndCompensations().createCompensation() - .xGustoAPIVersion(PostV1CompensationsCompensationIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .jobId("") - .compensationsRequestBody(CompensationsRequestBody.builder() + PutV1CompensationsCompensationIdResponse res = sdk.jobsAndCompensations().updateCompensation() + .xGustoAPIVersion(PutV1CompensationsCompensationIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .compensationId("") + .compensationsUpdateRequestBody(CompensationsUpdateRequestBody.builder() + .version("98jr3289h3298hr9329gf9egskt3kagri32qqgiqe3872") .rate("7.00") - .paymentUnit(CompensationsRequestBodyPaymentUnit.HOUR) + .paymentUnit(CompensationsUpdateRequestBodyPaymentUnit.HOUR) .flsaStatus(FlsaStatusType.NONEXEMPT) - .effectiveDate("2023-01-01") .adjustForMinimumWage(true) .minimumWages(List.of( - CompensationsRequestBodyMinimumWages.builder() + CompensationsUpdateRequestBodyMinimumWages.builder() .uuid("340832db-ab28-4112-9e10-28dd1711835f") .build())) .build()) @@ -629,16 +527,16 @@ public class Application { ``` ### Example Usage: Nested - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.*; +import com.gusto.embedded_api.models.components.CompensationsUpdateRequestBody; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PostV1CompensationsCompensationIdHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PostV1CompensationsCompensationIdResponse; +import com.gusto.embedded_api.models.operations.PutV1CompensationsCompensationIdHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PutV1CompensationsCompensationIdResponse; import java.lang.Exception; public class Application { @@ -649,13 +547,11 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostV1CompensationsCompensationIdResponse res = sdk.jobsAndCompensations().createCompensation() - .xGustoAPIVersion(PostV1CompensationsCompensationIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .jobId("") - .compensationsRequestBody(CompensationsRequestBody.builder() - .rate("70000.00") - .paymentUnit(CompensationsRequestBodyPaymentUnit.WEEK) - .flsaStatus(FlsaStatusType.SALARIED_NONEXEMPT) + PutV1CompensationsCompensationIdResponse res = sdk.jobsAndCompensations().updateCompensation() + .xGustoAPIVersion(PutV1CompensationsCompensationIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .compensationId("") + .compensationsUpdateRequestBody(CompensationsUpdateRequestBody.builder() + .version("") .build()) .call(); @@ -667,16 +563,16 @@ public class Application { ``` ### Example Usage: Resource - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.*; +import com.gusto.embedded_api.models.components.CompensationsUpdateRequestBody; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PostV1CompensationsCompensationIdHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PostV1CompensationsCompensationIdResponse; +import com.gusto.embedded_api.models.operations.PutV1CompensationsCompensationIdHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PutV1CompensationsCompensationIdResponse; import java.lang.Exception; public class Application { @@ -687,13 +583,11 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostV1CompensationsCompensationIdResponse res = sdk.jobsAndCompensations().createCompensation() - .xGustoAPIVersion(PostV1CompensationsCompensationIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .jobId("") - .compensationsRequestBody(CompensationsRequestBody.builder() - .rate("70000.00") - .paymentUnit(CompensationsRequestBodyPaymentUnit.WEEK) - .flsaStatus(FlsaStatusType.SALARIED_NONEXEMPT) + PutV1CompensationsCompensationIdResponse res = sdk.jobsAndCompensations().updateCompensation() + .xGustoAPIVersion(PutV1CompensationsCompensationIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .compensationId("") + .compensationsUpdateRequestBody(CompensationsUpdateRequestBody.builder() + .version("") .build()) .call(); @@ -708,13 +602,13 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1CompensationsCompensationIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `jobId` | *String* | :heavy_check_mark: | The UUID of the job | -| `compensationsRequestBody` | [CompensationsRequestBody](../../models/components/CompensationsRequestBody.md) | :heavy_check_mark: | N/A | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1CompensationsCompensationIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `compensationId` | *String* | :heavy_check_mark: | The UUID of the compensation | +| `compensationsUpdateRequestBody` | [CompensationsUpdateRequestBody](../../models/components/CompensationsUpdateRequestBody.md) | :heavy_check_mark: | N/A | ### Response -**[PostV1CompensationsCompensationIdResponse](../../models/operations/PostV1CompensationsCompensationIdResponse.md)** +**[PutV1CompensationsCompensationIdResponse](../../models/operations/PutV1CompensationsCompensationIdResponse.md)** ### Errors @@ -724,53 +618,85 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## getCompensation +## deleteCompensation -Compensations contain information on how much is paid out for a job. Jobs may have many compensations, but only one that is active. The current compensation is the one with the most recent `effective_date`. +Compensations contain information on how much is paid out for a job. Jobs may have many compensations, but only one that is active. The current compensation is the one with the most recent `effective_date`. This endpoint deletes a compensation for a job that hasn't been processed on payroll. -scope: `compensations:read` +### Webhooks +- `employee_job_compensation.destroyed`: Fires when a compensation is successfully deleted -### Example Usage: Exempt +scope: `compensations:write` - +### Example Usage + + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.operations.GetV1CompensationsCompensationIdHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.GetV1CompensationsCompensationIdResponse; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.operations.DeleteV1CompensationsCompensationIdHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.DeleteV1CompensationsCompensationIdResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, Exception { + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1CompensationsCompensationIdResponse res = sdk.jobsAndCompensations().getCompensation() - .xGustoAPIVersion(GetV1CompensationsCompensationIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + DeleteV1CompensationsCompensationIdResponse res = sdk.jobsAndCompensations().deleteCompensation() + .xGustoAPIVersion(DeleteV1CompensationsCompensationIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .compensationId("") .call(); - if (res.compensation().isPresent()) { - System.out.println(res.compensation().get()); - } + // handle response } } ``` -### Example Usage: Minimum Wage Adjusted - +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1CompensationsCompensationIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `compensationId` | *String* | :heavy_check_mark: | The UUID of the compensation | + +### Response + +**[DeleteV1CompensationsCompensationIdResponse](../../models/operations/DeleteV1CompensationsCompensationIdResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | + +## getJob + +Get a job. + +Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope is included. This allows you to access employee and job metadata without exposing pay rates. + +Compensation data in the response requires the `compensations:read` scope. + +scope: `jobs:read` + +### Example Usage + + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.operations.GetV1CompensationsCompensationIdHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.GetV1CompensationsCompensationIdResponse; +import com.gusto.embedded_api.models.operations.GetV1JobsJobIdHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetV1JobsJobIdResponse; import java.lang.Exception; public class Application { @@ -781,13 +707,13 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1CompensationsCompensationIdResponse res = sdk.jobsAndCompensations().getCompensation() - .xGustoAPIVersion(GetV1CompensationsCompensationIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .compensationId("") + GetV1JobsJobIdResponse res = sdk.jobsAndCompensations().getJob() + .xGustoAPIVersion(GetV1JobsJobIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .jobId("") .call(); - if (res.compensation().isPresent()) { - System.out.println(res.compensation().get()); + if (res.job().isPresent()) { + System.out.println(res.job().get()); } } } @@ -797,12 +723,13 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompensationsCompensationIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `compensationId` | *String* | :heavy_check_mark: | The UUID of the compensation | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1JobsJobIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `jobId` | *String* | :heavy_check_mark: | The UUID of the job | +| `include` | [Optional\](../../models/operations/GetV1JobsJobIdQueryParamInclude.md) | :heavy_minus_sign: | Available options:
    - all_compensations: Include all effective dated compensations for each job instead of only the current compensation
    | ### Response -**[GetV1CompensationsCompensationIdResponse](../../models/operations/GetV1CompensationsCompensationIdResponse.md)** +**[GetV1JobsJobIdResponse](../../models/operations/GetV1JobsJobIdResponse.md)** ### Errors @@ -811,27 +738,24 @@ public class Application { | models/errors/NotFoundErrorObject | 404 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## updateCompensation - -Compensations contain information on how much is paid out for a job. Jobs may have many compensations, but only one that is active. The current compensation is the one with the most recent `effective_date`. +## update -### Webhooks -- `employee_job_compensation.updated`: Fires when a compensation is successfully updated +Update a job. -scope: `compensations:write` +scope: `jobs:write` ### Example Usage: Basic - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.CompensationsUpdateRequestBody; +import com.gusto.embedded_api.models.components.JobsUpdateRequestBody; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PutV1CompensationsCompensationIdHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PutV1CompensationsCompensationIdResponse; +import com.gusto.embedded_api.models.operations.PutV1JobsJobIdHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PutV1JobsJobIdResponse; import java.lang.Exception; public class Application { @@ -842,32 +766,32 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1CompensationsCompensationIdResponse res = sdk.jobsAndCompensations().updateCompensation() - .xGustoAPIVersion(PutV1CompensationsCompensationIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .compensationId("") - .compensationsUpdateRequestBody(CompensationsUpdateRequestBody.builder() + PutV1JobsJobIdResponse res = sdk.jobsAndCompensations().update() + .xGustoAPIVersion(PutV1JobsJobIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .jobId("") + .jobsUpdateRequestBody(JobsUpdateRequestBody.builder() .version("") .build()) .call(); - if (res.compensation().isPresent()) { - System.out.println(res.compensation().get()); + if (res.job().isPresent()) { + System.out.println(res.job().get()); } } } ``` -### Example Usage: Exempt +### Example Usage: Example - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.*; +import com.gusto.embedded_api.models.components.JobsUpdateRequestBody; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PutV1CompensationsCompensationIdHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PutV1CompensationsCompensationIdResponse; +import com.gusto.embedded_api.models.operations.PutV1JobsJobIdHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PutV1JobsJobIdResponse; import java.lang.Exception; public class Application { @@ -878,37 +802,35 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1CompensationsCompensationIdResponse res = sdk.jobsAndCompensations().updateCompensation() - .xGustoAPIVersion(PutV1CompensationsCompensationIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .compensationId("") - .compensationsUpdateRequestBody(CompensationsUpdateRequestBody.builder() - .version("98jr3289h3298hr9329gf9egskt3kagri32qqgiqe3872") - .rate("60000.00") - .paymentUnit(CompensationsUpdateRequestBodyPaymentUnit.YEAR) - .flsaStatus(FlsaStatusType.EXEMPT) + PutV1JobsJobIdResponse res = sdk.jobsAndCompensations().update() + .xGustoAPIVersion(PutV1JobsJobIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .jobId("") + .jobsUpdateRequestBody(JobsUpdateRequestBody.builder() + .version("gr78930htutrz444kuytr3s5hgxykuveb523fwl8sir") + .title("Regional Manager") + .hireDate("2020-12-21") .build()) .call(); - if (res.compensation().isPresent()) { - System.out.println(res.compensation().get()); + if (res.job().isPresent()) { + System.out.println(res.job().get()); } } } ``` -### Example Usage: Minimum Wage Adjusted +### Example Usage: Nested - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.*; +import com.gusto.embedded_api.models.components.JobsUpdateRequestBody; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PutV1CompensationsCompensationIdHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PutV1CompensationsCompensationIdResponse; +import com.gusto.embedded_api.models.operations.PutV1JobsJobIdHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PutV1JobsJobIdResponse; import java.lang.Exception; -import java.util.List; public class Application { @@ -918,40 +840,32 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1CompensationsCompensationIdResponse res = sdk.jobsAndCompensations().updateCompensation() - .xGustoAPIVersion(PutV1CompensationsCompensationIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .compensationId("") - .compensationsUpdateRequestBody(CompensationsUpdateRequestBody.builder() - .version("98jr3289h3298hr9329gf9egskt3kagri32qqgiqe3872") - .rate("7.00") - .paymentUnit(CompensationsUpdateRequestBodyPaymentUnit.HOUR) - .flsaStatus(FlsaStatusType.NONEXEMPT) - .adjustForMinimumWage(true) - .minimumWages(List.of( - CompensationsUpdateRequestBodyMinimumWages.builder() - .uuid("340832db-ab28-4112-9e10-28dd1711835f") - .build())) + PutV1JobsJobIdResponse res = sdk.jobsAndCompensations().update() + .xGustoAPIVersion(PutV1JobsJobIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .jobId("") + .jobsUpdateRequestBody(JobsUpdateRequestBody.builder() + .version("") .build()) .call(); - if (res.compensation().isPresent()) { - System.out.println(res.compensation().get()); + if (res.job().isPresent()) { + System.out.println(res.job().get()); } } } ``` -### Example Usage: Nested +### Example Usage: Resource - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.CompensationsUpdateRequestBody; +import com.gusto.embedded_api.models.components.JobsUpdateRequestBody; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PutV1CompensationsCompensationIdHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PutV1CompensationsCompensationIdResponse; +import com.gusto.embedded_api.models.operations.PutV1JobsJobIdHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PutV1JobsJobIdResponse; import java.lang.Exception; public class Application { @@ -962,32 +876,58 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1CompensationsCompensationIdResponse res = sdk.jobsAndCompensations().updateCompensation() - .xGustoAPIVersion(PutV1CompensationsCompensationIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .compensationId("") - .compensationsUpdateRequestBody(CompensationsUpdateRequestBody.builder() + PutV1JobsJobIdResponse res = sdk.jobsAndCompensations().update() + .xGustoAPIVersion(PutV1JobsJobIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .jobId("") + .jobsUpdateRequestBody(JobsUpdateRequestBody.builder() .version("") .build()) .call(); - if (res.compensation().isPresent()) { - System.out.println(res.compensation().get()); + if (res.job().isPresent()) { + System.out.println(res.job().get()); } } } ``` -### Example Usage: Resource - +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1JobsJobIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `jobId` | *String* | :heavy_check_mark: | The UUID of the job | +| `jobsUpdateRequestBody` | [JobsUpdateRequestBody](../../models/components/JobsUpdateRequestBody.md) | :heavy_check_mark: | N/A | + +### Response + +**[PutV1JobsJobIdResponse](../../models/operations/PutV1JobsJobIdResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | + +## delete + +Deletes a specific job that an employee holds. + +scope: `jobs:write` + +### Example Usage + + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.CompensationsUpdateRequestBody; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PutV1CompensationsCompensationIdHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PutV1CompensationsCompensationIdResponse; +import com.gusto.embedded_api.models.operations.DeleteV1JobsJobIdHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.DeleteV1JobsJobIdResponse; import java.lang.Exception; public class Application { @@ -998,17 +938,12 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1CompensationsCompensationIdResponse res = sdk.jobsAndCompensations().updateCompensation() - .xGustoAPIVersion(PutV1CompensationsCompensationIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .compensationId("") - .compensationsUpdateRequestBody(CompensationsUpdateRequestBody.builder() - .version("") - .build()) + DeleteV1JobsJobIdResponse res = sdk.jobsAndCompensations().delete() + .xGustoAPIVersion(DeleteV1JobsJobIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .jobId("") .call(); - if (res.compensation().isPresent()) { - System.out.println(res.compensation().get()); - } + // handle response } } ``` @@ -1017,13 +952,12 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1CompensationsCompensationIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `compensationId` | *String* | :heavy_check_mark: | The UUID of the compensation | -| `compensationsUpdateRequestBody` | [CompensationsUpdateRequestBody](../../models/components/CompensationsUpdateRequestBody.md) | :heavy_check_mark: | N/A | +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1JobsJobIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `jobId` | *String* | :heavy_check_mark: | The UUID of the job | ### Response -**[PutV1CompensationsCompensationIdResponse](../../models/operations/PutV1CompensationsCompensationIdResponse.md)** +**[DeleteV1JobsJobIdResponse](../../models/operations/DeleteV1JobsJobIdResponse.md)** ### Errors @@ -1033,26 +967,85 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## deleteCompensation +## getJobs -Compensations contain information on how much is paid out for a job. Jobs may have many compensations, but only one that is active. The current compensation is the one with the most recent `effective_date`. This endpoint deletes a compensation for a job that hasn't been processed on payroll. +Get all of the jobs that an employee holds. +Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope is included. This allows you to access employee and job metadata without exposing pay rates. -### Webhooks -- `employee_job_compensation.destroyed`: Fires when a compensation is successfully deleted +Compensation data in the response requires the `compensations:read` scope. -scope: `compensations:write` +scope: `jobs:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.operations.GetV1EmployeesEmployeeIdJobsRequest; +import com.gusto.embedded_api.models.operations.GetV1EmployeesEmployeeIdJobsResponse; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + GetV1EmployeesEmployeeIdJobsRequest req = GetV1EmployeesEmployeeIdJobsRequest.builder() + .employeeId("") + .build(); + + GetV1EmployeesEmployeeIdJobsResponse res = sdk.jobsAndCompensations().getJobs() + .request(req) + .call(); + + if (res.jobs().isPresent()) { + System.out.println(res.jobs().get()); + } + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | +| `request` | [GetV1EmployeesEmployeeIdJobsRequest](../../models/operations/GetV1EmployeesEmployeeIdJobsRequest.md) | :heavy_check_mark: | The request object to use for the request. | + +### Response + +**[GetV1EmployeesEmployeeIdJobsResponse](../../models/operations/GetV1EmployeesEmployeeIdJobsResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | + +## createJob + +Create a job. + +scope: `jobs:write` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.components.JobsCreateRequestBody; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.DeleteV1CompensationsCompensationIdHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.DeleteV1CompensationsCompensationIdResponse; +import com.gusto.embedded_api.models.operations.PostV1EmployeesEmployeeIdJobsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PostV1EmployeesEmployeeIdJobsResponse; import java.lang.Exception; public class Application { @@ -1063,12 +1056,18 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - DeleteV1CompensationsCompensationIdResponse res = sdk.jobsAndCompensations().deleteCompensation() - .xGustoAPIVersion(DeleteV1CompensationsCompensationIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .compensationId("") + PostV1EmployeesEmployeeIdJobsResponse res = sdk.jobsAndCompensations().createJob() + .xGustoAPIVersion(PostV1EmployeesEmployeeIdJobsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .employeeId("") + .jobsCreateRequestBody(JobsCreateRequestBody.builder() + .title("Regional Manager") + .hireDate("2020-12-21") + .build()) .call(); - // handle response + if (res.job().isPresent()) { + System.out.println(res.job().get()); + } } } ``` @@ -1077,12 +1076,13 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1CompensationsCompensationIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `compensationId` | *String* | :heavy_check_mark: | The UUID of the compensation | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1EmployeesEmployeeIdJobsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | +| `jobsCreateRequestBody` | [JobsCreateRequestBody](../../models/components/JobsCreateRequestBody.md) | :heavy_check_mark: | N/A | ### Response -**[DeleteV1CompensationsCompensationIdResponse](../../models/operations/DeleteV1CompensationsCompensationIdResponse.md)** +**[PostV1EmployeesEmployeeIdJobsResponse](../../models/operations/PostV1EmployeesEmployeeIdJobsResponse.md)** ### Errors diff --git a/gusto_embedded/docs/sdks/locations/README.md b/gusto_embedded/docs/sdks/locations/README.md index 414357d18..2f72c58a0 100644 --- a/gusto_embedded/docs/sdks/locations/README.md +++ b/gusto_embedded/docs/sdks/locations/README.md @@ -4,11 +4,191 @@ ### Available Operations -* [get](#get) - Get all company locations -* [create](#create) - Create a company location +* [getMinimumWages](#getminimumwages) - Get minimum wages for a location * [retrieve](#retrieve) - Get a location * [update](#update) - Update a location -* [getMinimumWages](#getminimumwages) - Get minimum wages for a location +* [get](#get) - Get all company locations +* [create](#create) - Create a company location + +## getMinimumWages + +Get minimum wages for a location + +scope: `companies:read` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.operations.GetV1LocationsLocationUuidMinimumWagesHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetV1LocationsLocationUuidMinimumWagesResponse; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + GetV1LocationsLocationUuidMinimumWagesResponse res = sdk.locations().getMinimumWages() + .xGustoAPIVersion(GetV1LocationsLocationUuidMinimumWagesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .locationUuid("") + .effectiveDate("2020-01-31") + .call(); + + if (res.minimumWageList().isPresent()) { + System.out.println(res.minimumWageList().get()); + } + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | Example | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1LocationsLocationUuidMinimumWagesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | +| `locationUuid` | *String* | :heavy_check_mark: | The UUID of the location | | +| `effectiveDate` | *Optional\* | :heavy_minus_sign: | N/A | 2020-01-31 | + +### Response + +**[GetV1LocationsLocationUuidMinimumWagesResponse](../../models/operations/GetV1LocationsLocationUuidMinimumWagesResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | + +## retrieve + +Get a location. + +scope: `companies:read` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.operations.GetV1LocationsLocationIdHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetV1LocationsLocationIdResponse; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + GetV1LocationsLocationIdResponse res = sdk.locations().retrieve() + .xGustoAPIVersion(GetV1LocationsLocationIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .locationId("") + .call(); + + if (res.location().isPresent()) { + System.out.println(res.location().get()); + } + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1LocationsLocationIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `locationId` | *String* | :heavy_check_mark: | The UUID of the location | + +### Response + +**[GetV1LocationsLocationIdResponse](../../models/operations/GetV1LocationsLocationIdResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | + +## update + +Update a location. + +scope: `companies:write` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.operations.*; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + PutV1LocationsLocationIdResponse res = sdk.locations().update() + .xGustoAPIVersion(PutV1LocationsLocationIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .locationId("") + .requestBody(PutV1LocationsLocationIdRequestBody.builder() + .version("56d00c178bc7393b2a206ed6a86afcb4") + .phoneNumber("8009360383") + .street1("300 3rd Street") + .street2("Apartment 318") + .city("San Francisco") + .zip("94107") + .build()) + .call(); + + if (res.location().isPresent()) { + System.out.println(res.location().get()); + } + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1LocationsLocationIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `locationId` | *String* | :heavy_check_mark: | The UUID of the location | +| `requestBody` | [PutV1LocationsLocationIdRequestBody](../../models/operations/PutV1LocationsLocationIdRequestBody.md) | :heavy_check_mark: | N/A | + +### Response + +**[PutV1LocationsLocationIdResponse](../../models/operations/PutV1LocationsLocationIdResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 409, 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | ## get @@ -262,184 +442,4 @@ public class Application { | -------------------------------------- | -------------------------------------- | -------------------------------------- | | models/errors/NotFoundErrorObject | 404 | application/json | | models/errors/UnprocessableEntityError | 422 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | - -## retrieve - -Get a location. - -scope: `companies:read` - -### Example Usage - - -```java -package hello.world; - -import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.operations.GetV1LocationsLocationIdHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.GetV1LocationsLocationIdResponse; -import java.lang.Exception; - -public class Application { - - public static void main(String[] args) throws NotFoundErrorObject, Exception { - - GustoEmbedded sdk = GustoEmbedded.builder() - .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) - .build(); - - GetV1LocationsLocationIdResponse res = sdk.locations().retrieve() - .xGustoAPIVersion(GetV1LocationsLocationIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .locationId("") - .call(); - - if (res.location().isPresent()) { - System.out.println(res.location().get()); - } - } -} -``` - -### Parameters - -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1LocationsLocationIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `locationId` | *String* | :heavy_check_mark: | The UUID of the location | - -### Response - -**[GetV1LocationsLocationIdResponse](../../models/operations/GetV1LocationsLocationIdResponse.md)** - -### Errors - -| Error Type | Status Code | Content Type | -| --------------------------------- | --------------------------------- | --------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | - -## update - -Update a location. - -scope: `companies:write` - -### Example Usage - - -```java -package hello.world; - -import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.*; -import java.lang.Exception; - -public class Application { - - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { - - GustoEmbedded sdk = GustoEmbedded.builder() - .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) - .build(); - - PutV1LocationsLocationIdResponse res = sdk.locations().update() - .xGustoAPIVersion(PutV1LocationsLocationIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .locationId("") - .requestBody(PutV1LocationsLocationIdRequestBody.builder() - .version("56d00c178bc7393b2a206ed6a86afcb4") - .phoneNumber("8009360383") - .street1("300 3rd Street") - .street2("Apartment 318") - .city("San Francisco") - .zip("94107") - .build()) - .call(); - - if (res.location().isPresent()) { - System.out.println(res.location().get()); - } - } -} -``` - -### Parameters - -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1LocationsLocationIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `locationId` | *String* | :heavy_check_mark: | The UUID of the location | -| `requestBody` | [PutV1LocationsLocationIdRequestBody](../../models/operations/PutV1LocationsLocationIdRequestBody.md) | :heavy_check_mark: | N/A | - -### Response - -**[PutV1LocationsLocationIdResponse](../../models/operations/PutV1LocationsLocationIdResponse.md)** - -### Errors - -| Error Type | Status Code | Content Type | -| -------------------------------------- | -------------------------------------- | -------------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/UnprocessableEntityError | 409, 422 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | - -## getMinimumWages - -Get minimum wages for a location - -scope: `companies:read` - -### Example Usage - - -```java -package hello.world; - -import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.operations.GetV1LocationsLocationUuidMinimumWagesHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.GetV1LocationsLocationUuidMinimumWagesResponse; -import java.lang.Exception; - -public class Application { - - public static void main(String[] args) throws NotFoundErrorObject, Exception { - - GustoEmbedded sdk = GustoEmbedded.builder() - .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) - .build(); - - GetV1LocationsLocationUuidMinimumWagesResponse res = sdk.locations().getMinimumWages() - .locationUuid("") - .xGustoAPIVersion(GetV1LocationsLocationUuidMinimumWagesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .effectiveDate("2020-01-31") - .call(); - - if (res.minimumWageList().isPresent()) { - System.out.println(res.minimumWageList().get()); - } - } -} -``` - -### Parameters - -| Parameter | Type | Required | Description | Example | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `locationUuid` | *String* | :heavy_check_mark: | The UUID of the location | | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1LocationsLocationUuidMinimumWagesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | -| `effectiveDate` | *Optional\* | :heavy_minus_sign: | N/A | 2020-01-31 | - -### Response - -**[GetV1LocationsLocationUuidMinimumWagesResponse](../../models/operations/GetV1LocationsLocationUuidMinimumWagesResponse.md)** - -### Errors - -| Error Type | Status Code | Content Type | -| --------------------------------- | --------------------------------- | --------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | \ No newline at end of file +| models/errors/APIException | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/gusto_embedded/docs/sdks/memberportalinvitations/README.md b/gusto_embedded/docs/sdks/memberportalinvitations/README.md new file mode 100644 index 000000000..695530536 --- /dev/null +++ b/gusto_embedded/docs/sdks/memberportalinvitations/README.md @@ -0,0 +1,352 @@ +# MemberPortalInvitations + +## Overview + +### Available Operations + +* [postV1EmployeesEmployeeIdMemberPortalInvitations](#postv1employeesemployeeidmemberportalinvitations) - Create an employee member portal invitation +* [getV1EmployeesEmployeeIdMemberPortalInvitations](#getv1employeesemployeeidmemberportalinvitations) - Get an employee member portal invitation +* [deleteV1EmployeesEmployeeIdMemberPortalInvitations](#deletev1employeesemployeeidmemberportalinvitations) - Cancel an employee member portal invitation +* [postV1ContractorsContractorUuidMemberPortalInvitations](#postv1contractorscontractoruuidmemberportalinvitations) - Create a contractor member portal invitation +* [getV1ContractorsContractorUuidMemberPortalInvitations](#getv1contractorscontractoruuidmemberportalinvitations) - Get a contractor member portal invitation +* [deleteV1ContractorsContractorUuidMemberPortalInvitations](#deletev1contractorscontractoruuidmemberportalinvitations) - Cancel a contractor member portal invitation + +## postV1EmployeesEmployeeIdMemberPortalInvitations + +Generates a member portal invitation for the specified employee. If the employee already has an invitation and its token has expired, calling this endpoint regenerates the invitation and overrides the prior token. + +scope: `member_portal_invitation:write` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.operations.PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse res = sdk.memberPortalInvitations().postV1EmployeesEmployeeIdMemberPortalInvitations() + .xGustoAPIVersion(PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .employeeId("") + .call(); + + // handle response + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | + +### Response + +**[PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse](../../models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | + +## getV1EmployeesEmployeeIdMemberPortalInvitations + +Returns the current status of an employee's member portal invitation (`pending`, `sent`, `verified`, `complete`, or `cancelled`) along with an `expired` flag indicating whether the invitation can still be acted on by the employee. + +scope: `member_portal_invitation:read` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.operations.GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse res = sdk.memberPortalInvitations().getV1EmployeesEmployeeIdMemberPortalInvitations() + .xGustoAPIVersion(GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .employeeId("") + .call(); + + if (res.memberPortalInvitation().isPresent()) { + System.out.println(res.memberPortalInvitation().get()); + } + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | + +### Response + +**[GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse](../../models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | + +## deleteV1EmployeesEmployeeIdMemberPortalInvitations + +Cancels the member portal invitation for the specified employee. + +Note: this endpoint does not cancel the employee's self-onboarding flow. If you want the company admin to take full control of onboarding the employee, cancel the self-onboarding request instead. + +scope: `member_portal_invitation:write` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.operations.DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse res = sdk.memberPortalInvitations().deleteV1EmployeesEmployeeIdMemberPortalInvitations() + .xGustoAPIVersion(DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .employeeId("") + .call(); + + // handle response + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | + +### Response + +**[DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse](../../models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | + +## postV1ContractorsContractorUuidMemberPortalInvitations + +Generates a member portal invitation for the specified contractor. If the contractor already has an invitation and its token has expired, calling this endpoint regenerates the invitation and overrides the prior token. + +scope: `member_portal_invitation:write` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.operations.PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PostV1ContractorsContractorUuidMemberPortalInvitationsResponse; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + PostV1ContractorsContractorUuidMemberPortalInvitationsResponse res = sdk.memberPortalInvitations().postV1ContractorsContractorUuidMemberPortalInvitations() + .xGustoAPIVersion(PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .contractorUuid("") + .call(); + + // handle response + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | + +### Response + +**[PostV1ContractorsContractorUuidMemberPortalInvitationsResponse](../../models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | + +## getV1ContractorsContractorUuidMemberPortalInvitations + +Returns the current status of a contractor's member portal invitation (`pending`, `sent`, `verified`, `complete`, or `cancelled`) along with an `expired` flag indicating whether the invitation can still be acted on by the contractor. + +scope: `member_portal_invitation:read` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.operations.GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetV1ContractorsContractorUuidMemberPortalInvitationsResponse; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + GetV1ContractorsContractorUuidMemberPortalInvitationsResponse res = sdk.memberPortalInvitations().getV1ContractorsContractorUuidMemberPortalInvitations() + .xGustoAPIVersion(GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .contractorUuid("") + .call(); + + if (res.memberPortalInvitation().isPresent()) { + System.out.println(res.memberPortalInvitation().get()); + } + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | + +### Response + +**[GetV1ContractorsContractorUuidMemberPortalInvitationsResponse](../../models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | + +## deleteV1ContractorsContractorUuidMemberPortalInvitations + +Cancels the member portal invitation for the specified contractor. + +Note: this endpoint does not cancel the contractor's self-onboarding flow. If you want the company admin to take full control of onboarding the contractor, cancel the self-onboarding request instead. + +scope: `member_portal_invitation:write` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.operations.DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse res = sdk.memberPortalInvitations().deleteV1ContractorsContractorUuidMemberPortalInvitations() + .xGustoAPIVersion(DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .contractorUuid("") + .call(); + + // handle response + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | + +### Response + +**[DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse](../../models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/gusto_embedded/docs/sdks/notifications/README.md b/gusto_embedded/docs/sdks/notifications/README.md index fc1b51472..dfd59d4da 100644 --- a/gusto_embedded/docs/sdks/notifications/README.md +++ b/gusto_embedded/docs/sdks/notifications/README.md @@ -4,47 +4,44 @@ ### Available Operations -* [getDetails](#getdetails) - Get a notification's details * [getCompanyNotifications](#getcompanynotifications) - Get notifications for company +* [getDetails](#getdetails) - Get a notification's details -## getDetails - -Upon receiving a notification webhook event, use this endpoint to fetch the notification's details. The notification details include basic suggested content that can help you build notifications in your platform. - -Note: partners are responsible for the delivery and any custom state management of notifications in their application. Refer to our [partner notification guide](https://docs.gusto.com/embedded-payroll/docs/partner-notifications) for more details. +## getCompanyNotifications -If the notification UUID is not found, the response will be 404 Not Found. If the notification's supporting data is no longer valid, the response will be 422 Unprocessable Entity. +Returns all notifications relevant for the given company. scope: `notifications:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.GetNotificationsNotificationUuidHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.GetNotificationsNotificationUuidResponse; +import com.gusto.embedded_api.models.operations.GetCompanyNotificationsRequest; +import com.gusto.embedded_api.models.operations.GetCompanyNotificationsResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + public static void main(String[] args) throws Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetNotificationsNotificationUuidResponse res = sdk.notifications().getDetails() - .notificationUuid("") - .xGustoAPIVersion(GetNotificationsNotificationUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + GetCompanyNotificationsRequest req = GetCompanyNotificationsRequest.builder() + .companyUuid("") + .build(); + + GetCompanyNotificationsResponse res = sdk.notifications().getCompanyNotifications() + .request(req) .call(); - if (res.notification().isPresent()) { - System.out.println(res.notification().get()); + if (res.notificationsList().isPresent()) { + System.out.println(res.notificationsList().get()); } } } @@ -52,58 +49,58 @@ public class Application { ### Parameters -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `notificationUuid` | *String* | :heavy_check_mark: | The notification entity_uuid | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetNotificationsNotificationUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| Parameter | Type | Required | Description | +| ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | +| `request` | [GetCompanyNotificationsRequest](../../models/operations/GetCompanyNotificationsRequest.md) | :heavy_check_mark: | The request object to use for the request. | ### Response -**[GetNotificationsNotificationUuidResponse](../../models/operations/GetNotificationsNotificationUuidResponse.md)** +**[GetCompanyNotificationsResponse](../../models/operations/GetCompanyNotificationsResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| -------------------------------------- | -------------------------------------- | -------------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/UnprocessableEntityError | 422 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | +| Error Type | Status Code | Content Type | +| -------------------------- | -------------------------- | -------------------------- | +| models/errors/APIException | 4XX, 5XX | \*/\* | -## getCompanyNotifications +## getDetails -Returns all notifications relevant for the given company. +Upon receiving a notification webhook event, use this endpoint to fetch the notification's details. The notification details include basic suggested content that can help you build notifications in your platform. + +Note: partners are responsible for the delivery and any custom state management of notifications in their application. Refer to our [partner notification guide](https://docs.gusto.com/embedded-payroll/docs/partner-notifications) for more details. + +If the notification UUID is not found, the response will be 404 Not Found. If the notification's supporting data is no longer valid, the response will be 422 Unprocessable Entity. scope: `notifications:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.operations.GetCompanyNotificationsRequest; -import com.gusto.embedded_api.models.operations.GetCompanyNotificationsResponse; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.operations.GetNotificationsNotificationUuidHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetNotificationsNotificationUuidResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws Exception { + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetCompanyNotificationsRequest req = GetCompanyNotificationsRequest.builder() - .companyUuid("") - .build(); - - GetCompanyNotificationsResponse res = sdk.notifications().getCompanyNotifications() - .request(req) + GetNotificationsNotificationUuidResponse res = sdk.notifications().getDetails() + .xGustoAPIVersion(GetNotificationsNotificationUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .notificationUuid("") .call(); - if (res.notificationsList().isPresent()) { - System.out.println(res.notificationsList().get()); + if (res.notification().isPresent()) { + System.out.println(res.notification().get()); } } } @@ -111,16 +108,19 @@ public class Application { ### Parameters -| Parameter | Type | Required | Description | -| ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | -| `request` | [GetCompanyNotificationsRequest](../../models/operations/GetCompanyNotificationsRequest.md) | :heavy_check_mark: | The request object to use for the request. | +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetNotificationsNotificationUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `notificationUuid` | *String* | :heavy_check_mark: | The notification entity_uuid | ### Response -**[GetCompanyNotificationsResponse](../../models/operations/GetCompanyNotificationsResponse.md)** +**[GetNotificationsNotificationUuidResponse](../../models/operations/GetNotificationsNotificationUuidResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| -------------------------- | -------------------------- | -------------------------- | -| models/errors/APIException | 4XX, 5XX | \*/\* | \ No newline at end of file +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/gusto_embedded/docs/sdks/payrollcancellations/README.md b/gusto_embedded/docs/sdks/payrollcancellations/README.md new file mode 100644 index 000000000..288a172ec --- /dev/null +++ b/gusto_embedded/docs/sdks/payrollcancellations/README.md @@ -0,0 +1,156 @@ +# PayrollCancellations + +## Overview + +### Available Operations + +* [postV1PayrollBatches](#postv1payrollbatches) - Create a payroll cancellation batch +* [getV1PayrollBatchesPayrollBatchUuid](#getv1payrollbatchespayrollbatchuuid) - Get a payroll cancellation batch + +## postV1PayrollBatches + +Cancels up to 100 payrolls across one or more companies the partner is mapped to, asynchronously. + +The batch is processed asynchronously. Use the returned batch UUID to poll `GET /v1/payroll_batches/{payroll_batch_uuid}` for status and per-payroll results. + +Each item carries the payroll `uuid` and the `company_uuid` that owns it. A payroll whose company is not mapped to the partner — or that doesn't exist — is recorded as a `not_found` exclusion rather than a hard error, so every requested UUID lands in either `results` or `exclusions`. + +Idempotency is scoped per `(partner, idempotency_key)`. A duplicate POST with the same `idempotency_key` returns a 409 Conflict referencing the existing batch UUID — no duplicate processing occurs. + +📘 System Access Authentication + +This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + +scope: `payroll_batches:write` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.errors.PayrollBatchConflictError; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.operations.*; +import java.lang.Exception; +import java.util.List; + +public class Application { + + public static void main(String[] args) throws PayrollBatchConflictError, UnprocessableEntityError, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .build(); + + PostV1PayrollBatchesResponse res = sdk.payrollCancellations().postV1PayrollBatches() + .security(PostV1PayrollBatchesSecurity.builder() + .systemAccessAuth(System.getenv().getOrDefault("SYSTEM_ACCESS_AUTH", "")) + .build()) + .xGustoAPIVersion(PostV1PayrollBatchesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .requestBody(PostV1PayrollBatchesRequestBody.builder() + .idempotencyKey("80a74f8b-2c16-45e5-9038-aa108849c6e6") + .batchAction(BatchAction.CANCEL) + .batch(List.of( + Batch.builder() + .entityType(EntityType.PAYROLL) + .uuid("f5ac6d4e-8400-4a52-a5cf-dea57b2ee65a") + .companyUuid("7cd3f4a2-0bf9-485a-bbc0-f6adbdf0246b") + .build())) + .build()) + .call(); + + if (res.payrollBatch().isPresent()) { + System.out.println(res.payrollBatch().get()); + } + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `security` | [com.gusto.embedded_api.models.operations.PostV1PayrollBatchesSecurity](../../models/operations/PostV1PayrollBatchesSecurity.md) | :heavy_check_mark: | The security requirements to use for the request. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1PayrollBatchesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `requestBody` | [PostV1PayrollBatchesRequestBody](../../models/operations/PostV1PayrollBatchesRequestBody.md) | :heavy_check_mark: | N/A | + +### Response + +**[PostV1PayrollBatchesResponse](../../models/operations/PostV1PayrollBatchesResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| --------------------------------------- | --------------------------------------- | --------------------------------------- | +| models/errors/PayrollBatchConflictError | 409 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | + +## getV1PayrollBatchesPayrollBatchUuid + +Returns the status and per-payroll results of a payroll cancellation batch. + +Poll this endpoint until the batch `status` reaches a terminal value (`completed` or `failed`). Once terminal, the response includes the `results` array (one entry per authorized payroll, each with its own per-payroll `status` — `success` or `failed`) and the `exclusions` array (one entry per payroll that could not be processed). A cancel is atomic, so a per-payroll result is only ever `success` or `failed` — never `partial_success`. + +Note that the top-level batch `status` (`pending` / `processing` / `completed` / `failed`) is the request lifecycle, distinct from the per-payroll `status` inside `results[]`. A `completed` batch does not imply every payroll was cancelled — inspect the array for per-payroll outcomes. + +Results are stored in Redis with a limited TTL after completion. If the partner polls after results have expired, this endpoint returns 410 Gone — partners should re-submit a new batch. + +📘 System Access Authentication + +This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + +scope: `payroll_batches:read` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.operations.*; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .build(); + + GetV1PayrollBatchesPayrollBatchUuidResponse res = sdk.payrollCancellations().getV1PayrollBatchesPayrollBatchUuid() + .security(GetV1PayrollBatchesPayrollBatchUuidSecurity.builder() + .systemAccessAuth(System.getenv().getOrDefault("SYSTEM_ACCESS_AUTH", "")) + .build()) + .xGustoAPIVersion(GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .payrollBatchUuid("") + .call(); + + if (res.payrollBatchResults().isPresent()) { + System.out.println(res.payrollBatchResults().get()); + } + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `security` | [com.gusto.embedded_api.models.operations.GetV1PayrollBatchesPayrollBatchUuidSecurity](../../models/operations/GetV1PayrollBatchesPayrollBatchUuidSecurity.md) | :heavy_check_mark: | The security requirements to use for the request. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `payrollBatchUuid` | *String* | :heavy_check_mark: | The UUID of the payroll cancellation batch returned by `POST /v1/payroll_batches`. | + +### Response + +**[GetV1PayrollBatchesPayrollBatchUuidResponse](../../models/operations/GetV1PayrollBatchesPayrollBatchUuidResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404, 410 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/gusto_embedded/docs/sdks/payrolldigests/README.md b/gusto_embedded/docs/sdks/payrolldigests/README.md index ccd87553f..f0bdfbc5b 100644 --- a/gusto_embedded/docs/sdks/payrolldigests/README.md +++ b/gusto_embedded/docs/sdks/payrolldigests/README.md @@ -118,8 +118,8 @@ public class Application { .security(GetV1PayrollDigestsPayrollDigestUuidSecurity.builder() .systemAccessAuth(System.getenv().getOrDefault("SYSTEM_ACCESS_AUTH", "")) .build()) - .payrollDigestUuid("") .xGustoAPIVersion(GetV1PayrollDigestsPayrollDigestUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .payrollDigestUuid("") .call(); if (res.payrollDigestResults().isPresent()) { @@ -134,8 +134,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `security` | [com.gusto.embedded_api.models.operations.GetV1PayrollDigestsPayrollDigestUuidSecurity](../../models/operations/GetV1PayrollDigestsPayrollDigestUuidSecurity.md) | :heavy_check_mark: | The security requirements to use for the request. | -| `payrollDigestUuid` | *String* | :heavy_check_mark: | The UUID of the payroll digest batch returned by `POST /v1/payroll_digests`. | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1PayrollDigestsPayrollDigestUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `payrollDigestUuid` | *String* | :heavy_check_mark: | The UUID of the payroll digest batch returned by `POST /v1/payroll_digests`. | ### Response diff --git a/gusto_embedded/docs/sdks/payrolls/README.md b/gusto_embedded/docs/sdks/payrolls/README.md index ba8dd1354..4ce3685bd 100644 --- a/gusto_embedded/docs/sdks/payrolls/README.md +++ b/gusto_embedded/docs/sdks/payrolls/README.md @@ -4,118 +4,156 @@ ### Available Operations -* [list](#list) - Get all payrolls for a company -* [createOffCycle](#createoffcycle) - Create an off-cycle payroll +* [generatePrintableChecks](#generateprintablechecks) - Generate printable payroll checks (pdf) +* [getPayStubs](#getpaystubs) - Get an employee's pay stubs +* [getPayStub](#getpaystub) - Get an employee pay stub (pdf) +* [getV1CompaniesCompanyIdPayrollsIdPartnerDisbursements](#getv1companiescompanyidpayrollsidpartnerdisbursements) - Get partner disbursements for a payroll +* [patchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements](#patchv1companiescompanyidpayrollsidpartnerdisbursements) - Update partner disbursements for a payroll * [getApprovedReversals](#getapprovedreversals) - Get approved payroll reversals * [get](#get) - Get a single payroll * [update](#update) - Update a payroll by ID * [delete](#delete) - Delete a payroll -* [prepare](#prepare) - Prepare a payroll for update +* [list](#list) - Get all payrolls for a company +* [createOffCycle](#createoffcycle) - Create an off-cycle payroll * [getReceipt](#getreceipt) - Get a single payroll receipt +* [cancel](#cancel) - Cancel a payroll +* [prepare](#prepare) - Prepare a payroll for update +* [calculate](#calculate) - Calculate a payroll * [getBlockers](#getblockers) - Get all payroll blockers for a company * [skip](#skip) - Skip a payroll -* [calculateGrossUp](#calculategrossup) - Calculate gross up for a payroll -* [calculate](#calculate) - Calculate a payroll * [submit](#submit) - Submit payroll -* [cancel](#cancel) - Cancel a payroll -* [getPayStub](#getpaystub) - Get an employee pay stub (pdf) -* [getPayStubs](#getpaystubs) - Get an employee's pay stubs -* [generatePrintableChecks](#generateprintablechecks) - Generate printable payroll checks (pdf) -* [getV1CompaniesCompanyIdPayrollsIdPartnerDisbursements](#getv1companiescompanyidpayrollsidpartnerdisbursements) - Get partner disbursements for a payroll -* [patchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements](#patchv1companiescompanyidpayrollsidpartnerdisbursements) - Update partner disbursements for a payroll - -## list - -Returns a list of payrolls for a company. You can change the payrolls returned by updating the processing_status, payroll_types, start_date, & end_date params. +* [calculateGrossUp](#calculategrossup) - Calculate gross up for a payroll -By default, will return processed, regular payrolls for the past 6 months. +## generatePrintableChecks -Notes: -* Dollar amounts are returned as string representations of numeric decimals, are represented to the cent. -* end_date can be at most 3 months in the future and start_date and end_date can't be more than 1 year apart. -* Results are paginated. Maximum page size is 100 payrolls per request; the default page size is 25. +This endpoint initiates the generation of employee checks for the payroll specified by payroll_uuid. A generation status and corresponding request_uuid will be returned. Use the generated document GET endpoint with document_type: `printable_payroll_checks` and request_uuid to poll the check generation process and retrieve the generated check URL upon completion. -scope: `payrolls:read` +scope: `generated_documents:write` -### Example Usage +### Example Usage: Basic - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.components.PrintablePayrollChecksBody; +import com.gusto.embedded_api.models.components.PrintingFormat; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.operations.*; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.operations.PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, Exception { + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1CompaniesCompanyIdPayrollsRequest req = GetV1CompaniesCompanyIdPayrollsRequest.builder() - .companyId("") - .startDate("2020-01-31") - .endDate("2020-01-31") - .dateFilterBy(DateFilterBy.CHECK_DATE) - .sortOrder(SortOrder.ASC) - .build(); - - GetV1CompaniesCompanyIdPayrollsResponse res = sdk.payrolls().list() - .request(req) + PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksResponse res = sdk.payrolls().generatePrintableChecks() + .xGustoAPIVersion(PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .payrollUuid("") + .printablePayrollChecksBody(PrintablePayrollChecksBody.builder() + .printingFormat(PrintingFormat.TOP) + .build()) .call(); - if (res.payrollList().isPresent()) { - System.out.println(res.payrollList().get()); + if (res.payrollCheck().isPresent()) { + System.out.println(res.payrollCheck().get()); } } } ``` +### Example Usage: Example -### Parameters + +```java +package hello.world; -| Parameter | Type | Required | Description | -| ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | -| `request` | [GetV1CompaniesCompanyIdPayrollsRequest](../../models/operations/GetV1CompaniesCompanyIdPayrollsRequest.md) | :heavy_check_mark: | The request object to use for the request. | +import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.components.PrintablePayrollChecksBody; +import com.gusto.embedded_api.models.components.PrintingFormat; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.operations.PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksResponse; +import java.lang.Exception; -### Response +public class Application { -**[GetV1CompaniesCompanyIdPayrollsResponse](../../models/operations/GetV1CompaniesCompanyIdPayrollsResponse.md)** + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { -### Errors + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); -| Error Type | Status Code | Content Type | -| --------------------------------- | --------------------------------- | --------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | + PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksResponse res = sdk.payrolls().generatePrintableChecks() + .xGustoAPIVersion(PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .payrollUuid("") + .printablePayrollChecksBody(PrintablePayrollChecksBody.builder() + .printingFormat(PrintingFormat.TOP) + .build()) + .call(); -## createOffCycle + if (res.payrollCheck().isPresent()) { + System.out.println(res.payrollCheck().get()); + } + } +} +``` +### Example Usage: Nested -Creates a new, unprocessed, off-cycle payroll. + +```java +package hello.world; -## `off_cycle_reason` -By default: -- External benefits and deductions will be included when the `off_cycle_reason` is set to `Correction`. -- All benefits and deductions are blocked when the `off_cycle_reason` is set to `Bonus`. +import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.components.PrintablePayrollChecksBody; +import com.gusto.embedded_api.models.components.PrintingFormat; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.operations.PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksResponse; +import java.lang.Exception; -These elections can be overridden with the `skip_regular_deductions` boolean. +public class Application { -scope: `payrolls:run` + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { -### Example Usage + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); - + PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksResponse res = sdk.payrolls().generatePrintableChecks() + .xGustoAPIVersion(PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .payrollUuid("") + .printablePayrollChecksBody(PrintablePayrollChecksBody.builder() + .printingFormat(PrintingFormat.TOP) + .build()) + .call(); + + if (res.payrollCheck().isPresent()) { + System.out.println(res.payrollCheck().get()); + } + } +} +``` +### Example Usage: Resource + + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.components.PrintablePayrollChecksBody; +import com.gusto.embedded_api.models.components.PrintingFormat; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyIdPayrollsResponse; +import com.gusto.embedded_api.models.operations.PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksResponse; import java.lang.Exception; public class Application { @@ -126,13 +164,16 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostV1CompaniesCompanyIdPayrollsResponse res = sdk.payrolls().createOffCycle() - .xGustoAPIVersion(PostV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .companyId("") + PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksResponse res = sdk.payrolls().generatePrintableChecks() + .xGustoAPIVersion(PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .payrollUuid("") + .printablePayrollChecksBody(PrintablePayrollChecksBody.builder() + .printingFormat(PrintingFormat.TOP) + .build()) .call(); - if (res.payrollUnprocessed().isPresent()) { - System.out.println(res.payrollUnprocessed().get()); + if (res.payrollCheck().isPresent()) { + System.out.println(res.payrollCheck().get()); } } } @@ -142,13 +183,13 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | -| `requestBody` | [Optional\](../../models/operations/PostV1CompaniesCompanyIdPayrollsRequestBody.md) | :heavy_minus_sign: | N/A | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `payrollUuid` | *String* | :heavy_check_mark: | The UUID of the payroll | +| `printablePayrollChecksBody` | [PrintablePayrollChecksBody](../../models/components/PrintablePayrollChecksBody.md) | :heavy_check_mark: | N/A | ### Response -**[PostV1CompaniesCompanyIdPayrollsResponse](../../models/operations/PostV1CompaniesCompanyIdPayrollsResponse.md)** +**[PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksResponse](../../models/operations/PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksResponse.md)** ### Errors @@ -158,22 +199,24 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## getApprovedReversals +## getPayStubs -Returns all approved Payroll Reversals for a Company. +Get an employee's pay stubs. -scope: `payrolls:read` +Results are returned in reverse chronological order (newest first). + +scope: `pay_stubs:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.VersionHeader; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdPayrollReversalsResponse; +import com.gusto.embedded_api.models.operations.GetV1EmployeesEmployeeUuidPayStubsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetV1EmployeesEmployeeUuidPayStubsResponse; import java.lang.Exception; public class Application { @@ -184,13 +227,13 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1CompaniesCompanyIdPayrollReversalsResponse res = sdk.payrolls().getApprovedReversals() - .companyId("") - .xGustoAPIVersion(VersionHeader.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + GetV1EmployeesEmployeeUuidPayStubsResponse res = sdk.payrolls().getPayStubs() + .xGustoAPIVersion(GetV1EmployeesEmployeeUuidPayStubsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .employeeId("") .call(); - if (res.payrollReversalList().isPresent()) { - System.out.println(res.payrollReversalList().get()); + if (res.employeePayStubsList().isPresent()) { + System.out.println(res.employeePayStubsList().get()); } } } @@ -200,14 +243,14 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeUuidPayStubsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | | `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | | `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | -| `xGustoAPIVersion` | [Optional\](../../models/components/VersionHeader.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | ### Response -**[GetV1CompaniesCompanyIdPayrollReversalsResponse](../../models/operations/GetV1CompaniesCompanyIdPayrollReversalsResponse.md)** +**[GetV1EmployeesEmployeeUuidPayStubsResponse](../../models/operations/GetV1EmployeesEmployeeUuidPayStubsResponse.md)** ### Errors @@ -216,31 +259,22 @@ public class Application { | models/errors/NotFoundErrorObject | 404 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## get - -Returns a payroll. If payroll is calculated or processed, will return employee_compensations and totals. - -Results are paginated, with a maximum page size of 100 employee_compensations. +## getPayStub -Notes: -* Hour and dollar amounts are returned as string representations of numeric decimals. -* Hours are represented to the thousands place; dollar amounts are represented to the cent. -* Every eligible compensation is returned for each employee. If no data has yet be inserted for a given field, it defaults to "0.00" (for fixed amounts) or "0.000" (for hours ). -* When include parameter with benefits value is passed, employee_benefits:read scope is required to return benefits - * Benefits containing PHI are only visible with the `employee_benefits:read:phi` scope +Get an employee's pay stub for the specified payroll. By default, an application/pdf response will be returned. No other content types are currently supported, but may be supported in the future. -scope: `payrolls:read` +scope: `pay_stubs:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdPayrollsPayrollIdRequest; -import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdPayrollsPayrollIdResponse; +import com.gusto.embedded_api.models.operations.GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubResponse; import java.lang.Exception; public class Application { @@ -251,18 +285,14 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1CompaniesCompanyIdPayrollsPayrollIdRequest req = GetV1CompaniesCompanyIdPayrollsPayrollIdRequest.builder() - .companyId("") + GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubResponse res = sdk.payrolls().getPayStub() + .xGustoAPIVersion(GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .payrollId("") - .sortBy("first_name:asc") - .build(); - - GetV1CompaniesCompanyIdPayrollsPayrollIdResponse res = sdk.payrolls().get() - .request(req) + .employeeId("") .call(); - if (res.payrollShow().isPresent()) { - System.out.println(res.payrollShow().get()); + if (res.responseStream().isPresent()) { + // handle response } } } @@ -270,13 +300,15 @@ public class Application { ### Parameters -| Parameter | Type | Required | Description | -| ----------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- | -| `request` | [GetV1CompaniesCompanyIdPayrollsPayrollIdRequest](../../models/operations/GetV1CompaniesCompanyIdPayrollsPayrollIdRequest.md) | :heavy_check_mark: | The request object to use for the request. | +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `payrollId` | *String* | :heavy_check_mark: | The UUID of the payroll | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | ### Response -**[GetV1CompaniesCompanyIdPayrollsPayrollIdResponse](../../models/operations/GetV1CompaniesCompanyIdPayrollsPayrollIdResponse.md)** +**[GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubResponse](../../models/operations/GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubResponse.md)** ### Errors @@ -285,53 +317,40 @@ public class Application { | models/errors/NotFoundErrorObject | 404 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## update +## getV1CompaniesCompanyIdPayrollsIdPartnerDisbursements -This endpoint allows you to update information for one or more employees for a specific **unprocessed** payroll. You can think of the **unprocessed** -payroll object as a template of fields that you can update. You cannot modify the structure of the payroll object through this endpoint, only values -of the fields included in the payroll. If you do not include specific employee compensations, fixed/hourly compensations, or deductions in your request body, they -will not be removed from the payroll. A maximum of 100 employee_compensations can be updated at a time. Only the employee compensation objects that were -inputted will be returned. +Get partner disbursements for a specific payroll. -scope: `payrolls:write` +scope: `partner_disbursements:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.PayrollUpdate; -import com.gusto.embedded_api.models.components.PayrollUpdateEmployeeCompensations; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PutV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PutV1CompaniesCompanyIdPayrollsResponse; +import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsResponse; import java.lang.Exception; -import java.util.List; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + public static void main(String[] args) throws NotFoundErrorObject, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1CompaniesCompanyIdPayrollsResponse res = sdk.payrolls().update() - .xGustoAPIVersion(PutV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsResponse res = sdk.payrolls().getV1CompaniesCompanyIdPayrollsIdPartnerDisbursements() + .xGustoAPIVersion(GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .companyId("") - .payrollId("") - .payrollUpdate(PayrollUpdate.builder() - .employeeCompensations(List.of( - PayrollUpdateEmployeeCompensations.builder() - .build())) - .build()) + .id("") .call(); - if (res.payrollPrepared().isPresent()) { - System.out.println(res.payrollPrepared().get()); + if (res.payrollPartnerDisbursements().isPresent()) { + System.out.println(res.payrollPartnerDisbursements().get()); } } } @@ -341,58 +360,63 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyId` | *String* | :heavy_check_mark: | The UUID of the company | -| `payrollId` | *String* | :heavy_check_mark: | The UUID of the payroll | -| `payrollUpdate` | [PayrollUpdate](../../models/components/PayrollUpdate.md) | :heavy_check_mark: | N/A | +| `id` | *String* | :heavy_check_mark: | The UUID of the payroll | ### Response -**[PutV1CompaniesCompanyIdPayrollsResponse](../../models/operations/PutV1CompaniesCompanyIdPayrollsResponse.md)** +**[GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsResponse](../../models/operations/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| -------------------------------------- | -------------------------------------- | -------------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/UnprocessableEntityError | 422 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | - -## delete +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | -This endpoint allows you to delete an **unprocessed** payroll. +## patchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements -By default the payroll and associated data is deleted synchronously. To request an asynchronous delete, use the `async=true` query parameter. In both cases validation of ability to delete will be performed and an Unprocessable Entity error will be returned if the payroll is not able to be deleted. A successful synchronous delete will return `204/No Content`. When a payroll has been enqueued for asynchronous deletion, `202/Accepted` will be returned. +Update partner disbursements for a specific payroll. -scope: `payrolls:run` +scope: `partner_disbursements:write` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.operations.DeleteV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.DeleteV1CompaniesCompanyIdPayrollsResponse; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.operations.*; import java.lang.Exception; +import java.util.List; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, Exception { + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - DeleteV1CompaniesCompanyIdPayrollsResponse res = sdk.payrolls().delete() + PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsResponse res = sdk.payrolls().patchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements() + .xGustoAPIVersion(PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .companyId("") - .payrollId("") - .xGustoAPIVersion(DeleteV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .id("") + .requestBody(PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBody.builder() + .disbursements(List.of( + PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsDisbursements.builder() + .employeeUuid("1a2b3c4d-5e6f-7890-abcd-ef1234567890") + .build())) + .build()) .call(); - // handle response + if (res.payrollPartnerDisbursements().isPresent()) { + System.out.println(res.payrollPartnerDisbursements().get()); + } } } ``` @@ -401,70 +425,56 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyId` | *String* | :heavy_check_mark: | The UUID of the company | -| `payrollId` | *String* | :heavy_check_mark: | The UUID of the payroll | -| `async` | *Optional\* | :heavy_minus_sign: | When true, request an asynchronous delete of the payroll. | -| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `id` | *String* | :heavy_check_mark: | The UUID of the payroll | +| `requestBody` | [Optional\](../../models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBody.md) | :heavy_minus_sign: | N/A | ### Response -**[DeleteV1CompaniesCompanyIdPayrollsResponse](../../models/operations/DeleteV1CompaniesCompanyIdPayrollsResponse.md)** +**[PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsResponse](../../models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| --------------------------------- | --------------------------------- | --------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | - -## prepare - -Prepares an unprocessed payroll for update, including: adding or removing eligible employees from the payroll, -and updating `check_date`, `payroll_deadline`, and `payroll_status_meta` dates and times. - -Use this endpoint before calling [PUT /v1/companies/{company_id}/payrolls/{payroll_id}](ref:put-v1-companies-company_id-payrolls). +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | -### Notes +## getApprovedReversals -* Nullifies `calculated_at` and `totals` if the payroll was previously calculated -* Returns the `version` parameter required for [updating the payroll](ref:put-v1-companies-company_id-payrolls) -* `employees:read` scope is required to include employee compensations data in the response. -* Results are paginated, with a maximum page size of 100 employee compensations. +Returns all approved Payroll Reversals for a Company. -scope: `payrolls:write employees:read` +scope: `payrolls:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequest; -import com.gusto.embedded_api.models.operations.PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareResponse; +import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdPayrollReversalsResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + public static void main(String[] args) throws NotFoundErrorObject, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequest req = PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequest.builder() + GetV1CompaniesCompanyIdPayrollReversalsResponse res = sdk.payrolls().getApprovedReversals() + .xGustoAPIVersion(GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .companyId("") - .payrollId("") - .build(); - - PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareResponse res = sdk.payrolls().prepare() - .request(req) .call(); - if (res.payrollPrepared().isPresent()) { - System.out.println(res.payrollPrepared().get()); + if (res.payrollReversalList().isPresent()) { + System.out.println(res.payrollReversalList().get()); } } } @@ -472,43 +482,49 @@ public class Application { ### Parameters -| Parameter | Type | Required | Description | -| ------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- | -| `request` | [PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequest](../../models/operations/PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequest.md) | :heavy_check_mark: | The request object to use for the request. | +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | +| `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | +| `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | ### Response -**[PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareResponse](../../models/operations/PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareResponse.md)** +**[GetV1CompaniesCompanyIdPayrollReversalsResponse](../../models/operations/GetV1CompaniesCompanyIdPayrollReversalsResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| -------------------------------------- | -------------------------------------- | -------------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/UnprocessableEntityError | 422 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | -## getReceipt +## get -Returns a payroll receipt. +Returns a payroll. If payroll is calculated or processed, will return employee_compensations and totals. + +Results are paginated, with a maximum page size of 100 employee_compensations. Notes: * Hour and dollar amounts are returned as string representations of numeric decimals. -* Dollar amounts are represented to the cent. -* If no data has yet be inserted for a given field, it defaults to "0.00" (for fixed amounts). +* Hours are represented to the thousands place; dollar amounts are represented to the cent. +* Every eligible compensation is returned for each employee. If no data has yet be inserted for a given field, it defaults to "0.00" (for fixed amounts) or "0.000" (for hours ). +* When include parameter with benefits value is passed, employee_benefits:read scope is required to return benefits + * Benefits containing PHI are only visible with the `employee_benefits:read:phi` scope scope: `payrolls:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.operations.GetV1PaymentReceiptsPayrollsPayrollUuidHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.GetV1PaymentReceiptsPayrollsPayrollUuidResponse; +import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdPayrollsPayrollIdRequest; +import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdPayrollsPayrollIdResponse; import java.lang.Exception; public class Application { @@ -519,13 +535,18 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1PaymentReceiptsPayrollsPayrollUuidResponse res = sdk.payrolls().getReceipt() - .payrollUuid("") - .xGustoAPIVersion(GetV1PaymentReceiptsPayrollsPayrollUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + GetV1CompaniesCompanyIdPayrollsPayrollIdRequest req = GetV1CompaniesCompanyIdPayrollsPayrollIdRequest.builder() + .companyId("") + .payrollId("") + .sortBy("first_name:asc") + .build(); + + GetV1CompaniesCompanyIdPayrollsPayrollIdResponse res = sdk.payrolls().get() + .request(req) .call(); - if (res.payrollReceipt().isPresent()) { - System.out.println(res.payrollReceipt().get()); + if (res.payrollShow().isPresent()) { + System.out.println(res.payrollShow().get()); } } } @@ -533,14 +554,13 @@ public class Application { ### Parameters -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `payrollUuid` | *String* | :heavy_check_mark: | The UUID of the payroll | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| Parameter | Type | Required | Description | +| ----------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- | +| `request` | [GetV1CompaniesCompanyIdPayrollsPayrollIdRequest](../../models/operations/GetV1CompaniesCompanyIdPayrollsPayrollIdRequest.md) | :heavy_check_mark: | The request object to use for the request. | ### Response -**[GetV1PaymentReceiptsPayrollsPayrollUuidResponse](../../models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidResponse.md)** +**[GetV1CompaniesCompanyIdPayrollsPayrollIdResponse](../../models/operations/GetV1CompaniesCompanyIdPayrollsPayrollIdResponse.md)** ### Errors @@ -549,39 +569,53 @@ public class Application { | models/errors/NotFoundErrorObject | 404 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## getBlockers +## update -Returns a list of reasons that prevent the company from running payrolls. See the [Payroll Blockers guide](doc:payroll-blockers) for a complete list of reasons. The list is empty if there are no payroll blockers. +This endpoint allows you to update information for one or more employees for a specific **unprocessed** payroll. You can think of the **unprocessed** +payroll object as a template of fields that you can update. You cannot modify the structure of the payroll object through this endpoint, only values +of the fields included in the payroll. If you do not include specific employee compensations, fixed/hourly compensations, or deductions in your request body, they +will not be removed from the payroll. A maximum of 100 employee_compensations can be updated at a time. Only the employee compensation objects that were +inputted will be returned. -scope: `payrolls:run` +scope: `payrolls:write` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.components.PayrollUpdate; +import com.gusto.embedded_api.models.components.PayrollUpdateEmployeeCompensations; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.operations.GetV1CompaniesPayrollBlockersCompanyUuidHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.GetV1CompaniesPayrollBlockersCompanyUuidResponse; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.operations.PutV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PutV1CompaniesCompanyIdPayrollsResponse; import java.lang.Exception; +import java.util.List; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, Exception { + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1CompaniesPayrollBlockersCompanyUuidResponse res = sdk.payrolls().getBlockers() - .xGustoAPIVersion(GetV1CompaniesPayrollBlockersCompanyUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .companyUuid("") + PutV1CompaniesCompanyIdPayrollsResponse res = sdk.payrolls().update() + .xGustoAPIVersion(PutV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyId("") + .payrollId("") + .payrollUpdate(PayrollUpdate.builder() + .employeeCompensations(List.of( + PayrollUpdateEmployeeCompensations.builder() + .build())) + .build()) .call(); - if (res.payrollBlockers().isPresent()) { - System.out.println(res.payrollBlockers().get()); + if (res.payrollPrepared().isPresent()) { + System.out.println(res.payrollPrepared().get()); } } } @@ -591,54 +625,55 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesPayrollBlockersCompanyUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | +| `payrollId` | *String* | :heavy_check_mark: | The UUID of the payroll | +| `payrollUpdate` | [PayrollUpdate](../../models/components/PayrollUpdate.md) | :heavy_check_mark: | N/A | ### Response -**[GetV1CompaniesPayrollBlockersCompanyUuidResponse](../../models/operations/GetV1CompaniesPayrollBlockersCompanyUuidResponse.md)** +**[PutV1CompaniesCompanyIdPayrollsResponse](../../models/operations/PutV1CompaniesCompanyIdPayrollsResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| --------------------------------- | --------------------------------- | --------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | -## skip +## delete -Submits a $0 payroll for employees associated with the pay schedule to skip payroll. This submission is asynchronous and a successful request responds with a 202 HTTP status. Upon success, the payroll is transitioned to the `processed` state. +This endpoint allows you to delete an **unprocessed** payroll. -If the company is blocked from running payroll due to issues like incomplete setup, missing information or other compliance issues, the response will be 422 Unprocessable Entity with a categorization of the blockers as described in the error responses. +By default the payroll and associated data is deleted synchronously. To request an asynchronous delete, use the `async=true` query parameter. In both cases validation of ability to delete will be performed and an Unprocessable Entity error will be returned if the payroll is not able to be deleted. A successful synchronous delete will return `204/No Content`. When a payroll has been enqueued for asynchronous deletion, `202/Accepted` will be returned. scope: `payrolls:run` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.errors.PayrollBlockersError; -import com.gusto.embedded_api.models.operations.*; +import com.gusto.embedded_api.models.operations.DeleteV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.DeleteV1CompaniesCompanyIdPayrollsResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, PayrollBlockersError, Exception { + public static void main(String[] args) throws NotFoundErrorObject, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostCompaniesPayrollSkipCompanyUuidResponse res = sdk.payrolls().skip() - .xGustoAPIVersion(PostCompaniesPayrollSkipCompanyUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .companyUuid("") - .requestBody(PostCompaniesPayrollSkipCompanyUuidRequestBody.builder() - .payrollType(PayrollType.TRANSITION_FROM_OLD_PAY_SCHEDULE) - .build()) + DeleteV1CompaniesCompanyIdPayrollsResponse res = sdk.payrolls().delete() + .xGustoAPIVersion(DeleteV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyId("") + .payrollId("") .call(); // handle response @@ -650,63 +685,68 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PostCompaniesPayrollSkipCompanyUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | -| `requestBody` | [PostCompaniesPayrollSkipCompanyUuidRequestBody](../../models/operations/PostCompaniesPayrollSkipCompanyUuidRequestBody.md) | :heavy_check_mark: | N/A | +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | +| `payrollId` | *String* | :heavy_check_mark: | The UUID of the payroll | +| `async` | *Optional\* | :heavy_minus_sign: | When true, request an asynchronous delete of the payroll. | ### Response -**[PostCompaniesPayrollSkipCompanyUuidResponse](../../models/operations/PostCompaniesPayrollSkipCompanyUuidResponse.md)** +**[DeleteV1CompaniesCompanyIdPayrollsResponse](../../models/operations/DeleteV1CompaniesCompanyIdPayrollsResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| ---------------------------------- | ---------------------------------- | ---------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/PayrollBlockersError | 422 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | -## calculateGrossUp +## list -Calculates gross up earnings for an employee's payroll, given net earnings. This endpoint is only applicable to off-cycle unprocessed payrolls. +Returns a list of payrolls for a company. You can change the payrolls returned by updating the processing_status, payroll_types, start_date, & end_date params. -The gross up amount must then be mapped to the corresponding fixed compensation earning type to get the correct payroll amount. For example, for bonus off-cycles, the gross up amount should be set with the Bonus earning type in the payroll `fixed_compensations` field. +By default, will return processed, regular payrolls for the past 6 months. -scope: `payrolls:run` +Notes: +* Dollar amounts are returned as string representations of numeric decimals, are represented to the cent. +* end_date can be at most 3 months in the future and start_date and end_date can't be more than 1 year apart. +* Results are paginated. Maximum page size is 100 payrolls per request; the default page size is 25. + +scope: `payrolls:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.PayrollGrossUpRequest; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PostPayrollsGrossUpPayrollUuidHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PostPayrollsGrossUpPayrollUuidResponse; +import com.gusto.embedded_api.models.operations.*; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + public static void main(String[] args) throws NotFoundErrorObject, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostPayrollsGrossUpPayrollUuidResponse res = sdk.payrolls().calculateGrossUp() - .xGustoAPIVersion(PostPayrollsGrossUpPayrollUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .payrollUuid("") - .payrollGrossUpRequest(PayrollGrossUpRequest.builder() - .employeeUuid("") - .netPay("") - .build()) + GetV1CompaniesCompanyIdPayrollsRequest req = GetV1CompaniesCompanyIdPayrollsRequest.builder() + .companyId("") + .startDate("2020-01-31") + .endDate("2020-01-31") + .dateFilterBy(DateFilterBy.CHECK_DATE) + .sortOrder(QueryParamSortOrder.ASC) + .build(); + + GetV1CompaniesCompanyIdPayrollsResponse res = sdk.payrolls().list() + .request(req) .call(); - if (res.payrollGrossUpResponse().isPresent()) { - System.out.println(res.payrollGrossUpResponse().get()); + if (res.payrollList().isPresent()) { + System.out.println(res.payrollList().get()); } } } @@ -714,45 +754,45 @@ public class Application { ### Parameters -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PostPayrollsGrossUpPayrollUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `payrollUuid` | *String* | :heavy_check_mark: | The UUID of the payroll | -| `payrollGrossUpRequest` | [PayrollGrossUpRequest](../../models/components/PayrollGrossUpRequest.md) | :heavy_check_mark: | N/A | +| Parameter | Type | Required | Description | +| ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | +| `request` | [GetV1CompaniesCompanyIdPayrollsRequest](../../models/operations/GetV1CompaniesCompanyIdPayrollsRequest.md) | :heavy_check_mark: | The request object to use for the request. | ### Response -**[PostPayrollsGrossUpPayrollUuidResponse](../../models/operations/PostPayrollsGrossUpPayrollUuidResponse.md)** +**[GetV1CompaniesCompanyIdPayrollsResponse](../../models/operations/GetV1CompaniesCompanyIdPayrollsResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| -------------------------------------- | -------------------------------------- | -------------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/UnprocessableEntityError | 422 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | -## calculate +## createOffCycle -Performs calculations for taxes, benefits, and deductions for an unprocessed payroll. The calculated payroll details provide a preview of the actual values that will be used when the payroll is run. +Creates a new, unprocessed, off-cycle payroll. -This calculation is asynchronous and a successful request responds with a 202 HTTP status. To view the details of the calculated payroll, use the GET /v1/companies/{company_id}/payrolls/{payroll_id} endpoint with *include=taxes,benefits,deductions* params. +## `off_cycle_reason` +By default: +- External benefits and deductions will be included when the `off_cycle_reason` is set to `Correction`. +- All benefits and deductions are blocked when the `off_cycle_reason` is set to `Bonus`. -If the company is blocked from running payroll due to issues like incomplete setup, missing information or other compliance issues, the response will be 422 Unprocessable Entity with a categorization of the blockers as described in the error responses. +These elections can be overridden with the `skip_regular_deductions` boolean. scope: `payrolls:run` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateResponse; +import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyIdPayrollsResponse; import java.lang.Exception; public class Application { @@ -763,13 +803,14 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateResponse res = sdk.payrolls().calculate() - .xGustoAPIVersion(PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + PostV1CompaniesCompanyIdPayrollsResponse res = sdk.payrolls().createOffCycle() + .xGustoAPIVersion(PostV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .companyId("") - .payrollId("") .call(); - // handle response + if (res.payrollUnprocessed().isPresent()) { + System.out.println(res.payrollUnprocessed().get()); + } } } ``` @@ -778,13 +819,13 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyId` | *String* | :heavy_check_mark: | The UUID of the company | -| `payrollId` | *String* | :heavy_check_mark: | The UUID of the payroll | +| `requestBody` | [Optional\](../../models/operations/PostV1CompaniesCompanyIdPayrollsRequestBody.md) | :heavy_minus_sign: | N/A | ### Response -**[PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateResponse](../../models/operations/PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateResponse.md)** +**[PostV1CompaniesCompanyIdPayrollsResponse](../../models/operations/PostV1CompaniesCompanyIdPayrollsResponse.md)** ### Errors @@ -794,44 +835,47 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## submit - -Submits an unprocessed payroll to be calculated and run. This submission is asynchronous and a successful request responds with a 202 HTTP status. Upon success, transitions the payroll to the `processed` state. +## getReceipt -You should poll to ensure that payroll is processed successfully, as async errors only occur after async processing is complete. +Returns a payroll receipt. -If the company is blocked from running payroll due to issues like incomplete setup, missing information or other compliance issues, the response will be 422 Unprocessable Entity with a categorization of the blockers as described in the error responses. +Notes: +* Hour and dollar amounts are returned as string representations of numeric decimals. +* Dollar amounts are represented to the cent. +* If no data has yet be inserted for a given field, it defaults to "0.00" (for fixed amounts). +* Pagination is optional. Supplying `page` and/or `per` returns only the requested page of employee compensations and includes the `X-Page`, `X-Total-Count`, `X-Total-Pages`, and `X-Per-Page` response headers. Without either parameter, all employee compensations are returned without pagination headers. +* Maximum page size is 100 employee compensations per request. -scope: `payrolls:run` +scope: `payrolls:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitResponse; +import com.gusto.embedded_api.models.operations.GetV1PaymentReceiptsPayrollsPayrollUuidHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetV1PaymentReceiptsPayrollsPayrollUuidResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + public static void main(String[] args) throws NotFoundErrorObject, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitResponse res = sdk.payrolls().submit() - .xGustoAPIVersion(PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .companyId("") - .payrollId("") + GetV1PaymentReceiptsPayrollsPayrollUuidResponse res = sdk.payrolls().getReceipt() + .xGustoAPIVersion(GetV1PaymentReceiptsPayrollsPayrollUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .payrollUuid("") .call(); - // handle response + if (res.payrollReceipt().isPresent()) { + System.out.println(res.payrollReceipt().get()); + } } } ``` @@ -840,22 +884,21 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | -| `payrollId` | *String* | :heavy_check_mark: | The UUID of the payroll | -| `requestBody` | [Optional\](../../models/operations/PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitRequestBody.md) | :heavy_minus_sign: | N/A | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `payrollUuid` | *String* | :heavy_check_mark: | The UUID of the payroll | +| `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | +| `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | ### Response -**[PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitResponse](../../models/operations/PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitResponse.md)** +**[GetV1PaymentReceiptsPayrollsPayrollUuidResponse](../../models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| -------------------------------------- | -------------------------------------- | -------------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/UnprocessableEntityError | 422 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | ## cancel @@ -953,40 +996,54 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## getPayStub +## prepare -Get an employee's pay stub for the specified payroll. By default, an application/pdf response will be returned. No other content types are currently supported, but may be supported in the future. +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_date`, `payroll_deadline`, and `payroll_status_meta` dates and times. -scope: `pay_stubs:read` +Use this endpoint before calling [PUT /v1/companies/{company_id}/payrolls/{payroll_id}](ref:put-v1-companies-company_id-payrolls). + +### Notes + +* Nullifies `calculated_at` and `totals` if the payroll was previously calculated +* Returns the `version` parameter required for [updating the payroll](ref:put-v1-companies-company_id-payrolls) +* `employees:read` scope is required to include employee compensations data in the response. +* Results are paginated, with a maximum page size of 100 employee compensations. + +scope: `payrolls:write employees:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.operations.GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubResponse; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.operations.PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequest; +import com.gusto.embedded_api.models.operations.PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, Exception { + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubResponse res = sdk.payrolls().getPayStub() - .xGustoAPIVersion(GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequest req = PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequest.builder() + .companyId("") .payrollId("") - .employeeId("") + .build(); + + PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareResponse res = sdk.payrolls().prepare() + .request(req) .call(); - if (res.responseStream().isPresent()) { - // handle response + if (res.payrollPrepared().isPresent()) { + System.out.println(res.payrollPrepared().get()); } } } @@ -994,59 +1051,60 @@ public class Application { ### Parameters -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `payrollId` | *String* | :heavy_check_mark: | The UUID of the payroll | -| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | +| Parameter | Type | Required | Description | +| ------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- | +| `request` | [PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequest](../../models/operations/PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequest.md) | :heavy_check_mark: | The request object to use for the request. | ### Response -**[GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubResponse](../../models/operations/GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubResponse.md)** +**[PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareResponse](../../models/operations/PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| --------------------------------- | --------------------------------- | --------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | -## getPayStubs +## calculate -Get an employee's pay stubs. +Performs calculations for taxes, benefits, and deductions for an unprocessed payroll. The calculated payroll details provide a preview of the actual values that will be used when the payroll is run. -Results are returned in reverse chronological order (newest first). +This calculation is asynchronous and a successful request responds with a 202 HTTP status. To view the details of the calculated payroll, use the GET /v1/companies/{company_id}/payrolls/{payroll_id} endpoint with *include=taxes,benefits,deductions* params. -scope: `pay_stubs:read` +If the company is blocked from running payroll due to issues like incomplete setup, missing information or other compliance issues, the response will be 422 Unprocessable Entity with a categorization of the blockers as described in the error responses. + +scope: `payrolls:run` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.operations.GetV1EmployeesEmployeeUuidPayStubsHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.GetV1EmployeesEmployeeUuidPayStubsResponse; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.operations.PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, Exception { + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1EmployeesEmployeeUuidPayStubsResponse res = sdk.payrolls().getPayStubs() - .xGustoAPIVersion(GetV1EmployeesEmployeeUuidPayStubsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .employeeId("") - .call(); - - if (res.employeePayStubsList().isPresent()) { - System.out.println(res.employeePayStubsList().get()); - } + PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateResponse res = sdk.payrolls().calculate() + .xGustoAPIVersion(PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyId("") + .payrollId("") + .call(); + + // handle response } } ``` @@ -1055,173 +1113,114 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeUuidPayStubsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | -| `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | -| `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | +| `payrollId` | *String* | :heavy_check_mark: | The UUID of the payroll | ### Response -**[GetV1EmployeesEmployeeUuidPayStubsResponse](../../models/operations/GetV1EmployeesEmployeeUuidPayStubsResponse.md)** +**[PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateResponse](../../models/operations/PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| --------------------------------- | --------------------------------- | --------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | -## generatePrintableChecks +## getBlockers -This endpoint initiates the generation of employee checks for the payroll specified by payroll_uuid. A generation status and corresponding request_uuid will be returned. Use the generated document GET endpoint with document_type: `printable_payroll_checks` and request_uuid to poll the check generation process and retrieve the generated check URL upon completion. +Returns a list of reasons that prevent the company from running payrolls. See the [Payroll Blockers guide](doc:payroll-blockers) for a complete list of reasons. The list is empty if there are no payroll blockers. -scope: `generated_documents:write` +scope: `payrolls:run` -### Example Usage: Basic +### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.PrintablePayrollChecksBody; -import com.gusto.embedded_api.models.components.PrintingFormat; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksResponse; +import com.gusto.embedded_api.models.operations.GetV1CompaniesPayrollBlockersCompanyUuidHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetV1CompaniesPayrollBlockersCompanyUuidResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + public static void main(String[] args) throws NotFoundErrorObject, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksResponse res = sdk.payrolls().generatePrintableChecks() - .xGustoAPIVersion(PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .payrollUuid("") - .printablePayrollChecksBody(PrintablePayrollChecksBody.builder() - .printingFormat(PrintingFormat.TOP) - .build()) + GetV1CompaniesPayrollBlockersCompanyUuidResponse res = sdk.payrolls().getBlockers() + .xGustoAPIVersion(GetV1CompaniesPayrollBlockersCompanyUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyUuid("") .call(); - if (res.payrollCheck().isPresent()) { - System.out.println(res.payrollCheck().get()); + if (res.payrollBlockers().isPresent()) { + System.out.println(res.payrollBlockers().get()); } } } ``` -### Example Usage: Example - - -```java -package hello.world; - -import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.PrintablePayrollChecksBody; -import com.gusto.embedded_api.models.components.PrintingFormat; -import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksResponse; -import java.lang.Exception; - -public class Application { - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { +### Parameters - GustoEmbedded sdk = GustoEmbedded.builder() - .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) - .build(); +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesPayrollBlockersCompanyUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | - PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksResponse res = sdk.payrolls().generatePrintableChecks() - .xGustoAPIVersion(PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .payrollUuid("") - .printablePayrollChecksBody(PrintablePayrollChecksBody.builder() - .printingFormat(PrintingFormat.TOP) - .build()) - .call(); +### Response - if (res.payrollCheck().isPresent()) { - System.out.println(res.payrollCheck().get()); - } - } -} -``` -### Example Usage: Nested +**[GetV1CompaniesPayrollBlockersCompanyUuidResponse](../../models/operations/GetV1CompaniesPayrollBlockersCompanyUuidResponse.md)** - -```java -package hello.world; +### Errors -import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.PrintablePayrollChecksBody; -import com.gusto.embedded_api.models.components.PrintingFormat; -import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksResponse; -import java.lang.Exception; +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | -public class Application { +## skip - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { +Submits a $0 payroll for employees associated with the pay schedule to skip payroll. This submission is asynchronous and a successful request responds with a 202 HTTP status. Upon success, the payroll is transitioned to the `processed` state. - GustoEmbedded sdk = GustoEmbedded.builder() - .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) - .build(); +If the company is blocked from running payroll due to issues like incomplete setup, missing information or other compliance issues, the response will be 422 Unprocessable Entity with a categorization of the blockers as described in the error responses. - PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksResponse res = sdk.payrolls().generatePrintableChecks() - .xGustoAPIVersion(PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .payrollUuid("") - .printablePayrollChecksBody(PrintablePayrollChecksBody.builder() - .printingFormat(PrintingFormat.TOP) - .build()) - .call(); +scope: `payrolls:run` - if (res.payrollCheck().isPresent()) { - System.out.println(res.payrollCheck().get()); - } - } -} -``` -### Example Usage: Resource +### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.PrintablePayrollChecksBody; -import com.gusto.embedded_api.models.components.PrintingFormat; -import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksResponse; +import com.gusto.embedded_api.models.errors.*; +import com.gusto.embedded_api.models.operations.*; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + public static void main(String[] args) throws NotFoundErrorObject, ConflictErrorObject, PayrollBlockersError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksResponse res = sdk.payrolls().generatePrintableChecks() - .xGustoAPIVersion(PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .payrollUuid("") - .printablePayrollChecksBody(PrintablePayrollChecksBody.builder() - .printingFormat(PrintingFormat.TOP) + PostCompaniesPayrollSkipCompanyUuidResponse res = sdk.payrolls().skip() + .xGustoAPIVersion(PostCompaniesPayrollSkipCompanyUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyUuid("") + .requestBody(PostCompaniesPayrollSkipCompanyUuidRequestBody.builder() + .payrollType(PayrollType.TRANSITION_FROM_OLD_PAY_SCHEDULE) .build()) .call(); - if (res.payrollCheck().isPresent()) { - System.out.println(res.payrollCheck().get()); - } + // handle response } } ``` @@ -1230,57 +1229,61 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `payrollUuid` | *String* | :heavy_check_mark: | The UUID of the payroll | -| `printablePayrollChecksBody` | [PrintablePayrollChecksBody](../../models/components/PrintablePayrollChecksBody.md) | :heavy_check_mark: | N/A | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostCompaniesPayrollSkipCompanyUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | +| `requestBody` | [PostCompaniesPayrollSkipCompanyUuidRequestBody](../../models/operations/PostCompaniesPayrollSkipCompanyUuidRequestBody.md) | :heavy_check_mark: | N/A | ### Response -**[PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksResponse](../../models/operations/PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksResponse.md)** +**[PostCompaniesPayrollSkipCompanyUuidResponse](../../models/operations/PostCompaniesPayrollSkipCompanyUuidResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| -------------------------------------- | -------------------------------------- | -------------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/UnprocessableEntityError | 422 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | +| Error Type | Status Code | Content Type | +| ---------------------------------- | ---------------------------------- | ---------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/ConflictErrorObject | 409 | application/json | +| models/errors/PayrollBlockersError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | -## getV1CompaniesCompanyIdPayrollsIdPartnerDisbursements +## submit -Get partner disbursements for a specific payroll. +Submits an unprocessed payroll to be calculated and run. This submission is asynchronous and a successful request responds with a 202 HTTP status. Upon success, transitions the payroll to the `processed` state. -scope: `partner_disbursements:read` +You should poll to ensure that payroll is processed successfully, as async errors only occur after async processing is complete. + +If the company is blocked from running payroll due to issues like incomplete setup, missing information or other compliance issues, the response will be 422 Unprocessable Entity with a categorization of the blockers as described in the error responses. + +scope: `payrolls:run` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsResponse; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.operations.PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, Exception { + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsResponse res = sdk.payrolls().getV1CompaniesCompanyIdPayrollsIdPartnerDisbursements() + PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitResponse res = sdk.payrolls().submit() + .xGustoAPIVersion(PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .companyId("") - .id("") - .xGustoAPIVersion(GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .payrollId("") .call(); - if (res.payrollPartnerDisbursements().isPresent()) { - System.out.println(res.payrollPartnerDisbursements().get()); - } + // handle response } } ``` @@ -1289,39 +1292,44 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyId` | *String* | :heavy_check_mark: | The UUID of the company | -| `id` | *String* | :heavy_check_mark: | The UUID of the payroll | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `payrollId` | *String* | :heavy_check_mark: | The UUID of the payroll | +| `requestBody` | [Optional\](../../models/operations/PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitRequestBody.md) | :heavy_minus_sign: | N/A | ### Response -**[GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsResponse](../../models/operations/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsResponse.md)** +**[PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitResponse](../../models/operations/PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| --------------------------------- | --------------------------------- | --------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | -## patchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements +## calculateGrossUp -Update partner disbursements for a specific payroll. +Calculates gross up earnings for an employee's payroll, given net earnings. This endpoint is only applicable to off-cycle unprocessed payrolls. -scope: `partner_disbursements:write` +The gross up amount must then be mapped to the corresponding fixed compensation earning type to get the correct payroll amount. For example, for bonus off-cycles, the gross up amount should be set with the Bonus earning type in the payroll `fixed_compensations` field. + +scope: `payrolls:run` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.components.PayrollGrossUpRequest; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.*; +import com.gusto.embedded_api.models.operations.PostPayrollsGrossUpPayrollUuidHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PostPayrollsGrossUpPayrollUuidResponse; import java.lang.Exception; -import java.util.List; public class Application { @@ -1331,20 +1339,17 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsResponse res = sdk.payrolls().patchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements() - .companyId("") - .id("") - .xGustoAPIVersion(PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .requestBody(PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBody.builder() - .disbursements(List.of( - PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsDisbursements.builder() - .employeeUuid("1a2b3c4d-5e6f-7890-abcd-ef1234567890") - .build())) + PostPayrollsGrossUpPayrollUuidResponse res = sdk.payrolls().calculateGrossUp() + .xGustoAPIVersion(PostPayrollsGrossUpPayrollUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .payrollUuid("") + .payrollGrossUpRequest(PayrollGrossUpRequest.builder() + .employeeUuid("") + .netPay("") .build()) .call(); - if (res.payrollPartnerDisbursements().isPresent()) { - System.out.println(res.payrollPartnerDisbursements().get()); + if (res.payrollGrossUpResponse().isPresent()) { + System.out.println(res.payrollGrossUpResponse().get()); } } } @@ -1354,14 +1359,13 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | -| `id` | *String* | :heavy_check_mark: | The UUID of the payroll | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `requestBody` | [Optional\](../../models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBody.md) | :heavy_minus_sign: | N/A | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostPayrollsGrossUpPayrollUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `payrollUuid` | *String* | :heavy_check_mark: | The UUID of the payroll | +| `payrollGrossUpRequest` | [PayrollGrossUpRequest](../../models/components/PayrollGrossUpRequest.md) | :heavy_check_mark: | N/A | ### Response -**[PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsResponse](../../models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsResponse.md)** +**[PostPayrollsGrossUpPayrollUuidResponse](../../models/operations/PostPayrollsGrossUpPayrollUuidResponse.md)** ### Errors diff --git a/gusto_embedded/docs/sdks/payschedules/README.md b/gusto_embedded/docs/sdks/payschedules/README.md index 6e16ceef7..21d4e10a0 100644 --- a/gusto_embedded/docs/sdks/payschedules/README.md +++ b/gusto_embedded/docs/sdks/payschedules/README.md @@ -4,16 +4,143 @@ ### Available Operations +* [getPayPeriods](#getpayperiods) - Get pay periods for a company +* [getUnprocessedTerminationPeriods](#getunprocessedterminationperiods) - Get termination pay periods for a company * [getAll](#getall) - Get the pay schedules for a company * [create](#create) - Create a new pay schedule * [getPreview](#getpreview) - Preview pay schedule dates * [get](#get) - Get a pay schedule * [update](#update) - Update a pay schedule -* [getPayPeriods](#getpayperiods) - Get pay periods for a company -* [getUnprocessedTerminationPeriods](#getunprocessedterminationperiods) - Get termination pay periods for a company -* [getAssignments](#getassignments) - Get pay schedule assignments for a company * [previewAssignment](#previewassignment) - Preview pay schedule assignments for a company * [assign](#assign) - Assign pay schedules for a company +* [getAssignments](#getassignments) - Get pay schedule assignments for a company + +## getPayPeriods + +Pay periods are the foundation of payroll. Compensation, time & attendance, taxes, and expense reports all rely on when they happened. + +To begin submitting information for a given payroll, we need to agree on the time period. + +By default, this endpoint returns pay periods starting from 6 months ago to the date today. Use the `start_date` and `end_date` parameters to change the scope of the response. End dates can be up to 3 months in the future and there is no limit on start dates. + +Starting in version 2023-04-01, the `eligible_employees` attribute was removed from the response. The eligible employees for a payroll are determined by the employee_compensations returned from the [PUT /v1/companies/{company_id}/payrolls/{payroll_id}/prepare](ref:put-v1-companies-company_id-payrolls-payroll_id-prepare) endpoint. + +scope: `payrolls:read` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdPayPeriodsRequest; +import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdPayPeriodsResponse; +import java.lang.Exception; +import java.time.LocalDate; + +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + GetV1CompaniesCompanyIdPayPeriodsRequest req = GetV1CompaniesCompanyIdPayPeriodsRequest.builder() + .companyId("") + .startDate(LocalDate.parse("2020-01-01")) + .endDate(LocalDate.parse("2020-01-31")) + .build(); + + GetV1CompaniesCompanyIdPayPeriodsResponse res = sdk.paySchedules().getPayPeriods() + .request(req) + .call(); + + if (res.payPeriods().isPresent()) { + System.out.println(res.payPeriods().get()); + } + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| --------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------- | +| `request` | [GetV1CompaniesCompanyIdPayPeriodsRequest](../../models/operations/GetV1CompaniesCompanyIdPayPeriodsRequest.md) | :heavy_check_mark: | The request object to use for the request. | + +### Response + +**[GetV1CompaniesCompanyIdPayPeriodsResponse](../../models/operations/GetV1CompaniesCompanyIdPayPeriodsResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | + +## getUnprocessedTerminationPeriods + +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. + +This endpoint returns the unprocessed pay periods for past and future terminated employees in a given company. + +scope: `payrolls:read` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsResponse; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsResponse res = sdk.paySchedules().getUnprocessedTerminationPeriods() + .xGustoAPIVersion(GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyId("") + .call(); + + if (res.unprocessedTerminationPayPeriods().isPresent()) { + System.out.println(res.unprocessedTerminationPayPeriods().get()); + } + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | + +### Response + +**[GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsResponse](../../models/operations/GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | ## getAll @@ -610,189 +737,6 @@ public class Application { | models/errors/UnprocessableEntityError | 409, 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## getPayPeriods - -Pay periods are the foundation of payroll. Compensation, time & attendance, taxes, and expense reports all rely on when they happened. - -To begin submitting information for a given payroll, we need to agree on the time period. - -By default, this endpoint returns pay periods starting from 6 months ago to the date today. Use the `start_date` and `end_date` parameters to change the scope of the response. End dates can be up to 3 months in the future and there is no limit on start dates. - -Starting in version 2023-04-01, the `eligible_employees` attribute was removed from the response. The eligible employees for a payroll are determined by the employee_compensations returned from the [PUT /v1/companies/{company_id}/payrolls/{payroll_id}/prepare](ref:put-v1-companies-company_id-payrolls-payroll_id-prepare) endpoint. - -scope: `payrolls:read` - -### Example Usage - - -```java -package hello.world; - -import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdPayPeriodsRequest; -import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdPayPeriodsResponse; -import java.lang.Exception; -import java.time.LocalDate; - -public class Application { - - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { - - GustoEmbedded sdk = GustoEmbedded.builder() - .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) - .build(); - - GetV1CompaniesCompanyIdPayPeriodsRequest req = GetV1CompaniesCompanyIdPayPeriodsRequest.builder() - .companyId("") - .startDate(LocalDate.parse("2020-01-01")) - .endDate(LocalDate.parse("2020-01-31")) - .build(); - - GetV1CompaniesCompanyIdPayPeriodsResponse res = sdk.paySchedules().getPayPeriods() - .request(req) - .call(); - - if (res.payPeriods().isPresent()) { - System.out.println(res.payPeriods().get()); - } - } -} -``` - -### Parameters - -| Parameter | Type | Required | Description | -| --------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------- | -| `request` | [GetV1CompaniesCompanyIdPayPeriodsRequest](../../models/operations/GetV1CompaniesCompanyIdPayPeriodsRequest.md) | :heavy_check_mark: | The request object to use for the request. | - -### Response - -**[GetV1CompaniesCompanyIdPayPeriodsResponse](../../models/operations/GetV1CompaniesCompanyIdPayPeriodsResponse.md)** - -### Errors - -| Error Type | Status Code | Content Type | -| -------------------------------------- | -------------------------------------- | -------------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/UnprocessableEntityError | 422 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | - -## getUnprocessedTerminationPeriods - -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. - -This endpoint returns the unprocessed pay periods for past and future terminated employees in a given company. - -scope: `payrolls:read` - -### Example Usage - - -```java -package hello.world; - -import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsResponse; -import java.lang.Exception; - -public class Application { - - public static void main(String[] args) throws NotFoundErrorObject, Exception { - - GustoEmbedded sdk = GustoEmbedded.builder() - .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) - .build(); - - GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsResponse res = sdk.paySchedules().getUnprocessedTerminationPeriods() - .xGustoAPIVersion(GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .companyId("") - .call(); - - if (res.unprocessedTerminationPayPeriods().isPresent()) { - System.out.println(res.unprocessedTerminationPayPeriods().get()); - } - } -} -``` - -### Parameters - -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | - -### Response - -**[GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsResponse](../../models/operations/GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsResponse.md)** - -### Errors - -| Error Type | Status Code | Content Type | -| --------------------------------- | --------------------------------- | --------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | - -## getAssignments - -This endpoint returns the current pay schedule assignment for a company, with pay schedule and employee/department mappings depending on the pay schedule type. - -scope: `pay_schedules:read` - -### Example Usage - - -```java -package hello.world; - -import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdPaySchedulesAssignmentsHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdPaySchedulesAssignmentsResponse; -import java.lang.Exception; - -public class Application { - - public static void main(String[] args) throws NotFoundErrorObject, Exception { - - GustoEmbedded sdk = GustoEmbedded.builder() - .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) - .build(); - - GetV1CompaniesCompanyIdPaySchedulesAssignmentsResponse res = sdk.paySchedules().getAssignments() - .xGustoAPIVersion(GetV1CompaniesCompanyIdPaySchedulesAssignmentsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .companyId("") - .call(); - - if (res.payScheduleAssignment().isPresent()) { - System.out.println(res.payScheduleAssignment().get()); - } - } -} -``` - -### Parameters - -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdPaySchedulesAssignmentsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | - -### Response - -**[GetV1CompaniesCompanyIdPaySchedulesAssignmentsResponse](../../models/operations/GetV1CompaniesCompanyIdPaySchedulesAssignmentsResponse.md)** - -### Errors - -| Error Type | Status Code | Content Type | -| --------------------------------- | --------------------------------- | --------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | - ## previewAssignment This endpoint returns the employee changes, including pay period and transition pay periods, for changing the pay schedule. @@ -865,7 +809,7 @@ public class Application { .payScheduleAssignmentBody(PayScheduleAssignmentBody.builder() .type(PayScheduleAssignmentBodyType.BY_EMPLOYEE) .employees(List.of( - Employees.builder() + PayScheduleAssignmentBodyEmployees.builder() .employeeUuid("f0238368-f2cf-43e2-9a07-b0265f2cec69") .payScheduleUuid("c277ac52-9871-4a96-a1e6-0c449684602a") .build())) @@ -1044,7 +988,7 @@ public class Application { .payScheduleAssignmentBody(PayScheduleAssignmentBody.builder() .type(PayScheduleAssignmentBodyType.BY_EMPLOYEE) .employees(List.of( - Employees.builder() + PayScheduleAssignmentBodyEmployees.builder() .employeeUuid("f0238368-f2cf-43e2-9a07-b0265f2cec69") .payScheduleUuid("c277ac52-9871-4a96-a1e6-0c449684602a") .build())) @@ -1144,4 +1088,60 @@ public class Application { | -------------------------------------- | -------------------------------------- | -------------------------------------- | | models/errors/NotFoundErrorObject | 404 | application/json | | models/errors/UnprocessableEntityError | 422 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | \ No newline at end of file +| models/errors/APIException | 4XX, 5XX | \*/\* | + +## getAssignments + +This endpoint returns the current pay schedule assignment for a company, with pay schedule and employee/department mappings depending on the pay schedule type. + +scope: `pay_schedules:read` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdPaySchedulesAssignmentsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdPaySchedulesAssignmentsResponse; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + GetV1CompaniesCompanyIdPaySchedulesAssignmentsResponse res = sdk.paySchedules().getAssignments() + .xGustoAPIVersion(GetV1CompaniesCompanyIdPaySchedulesAssignmentsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyId("") + .call(); + + if (res.payScheduleAssignment().isPresent()) { + System.out.println(res.payScheduleAssignment().get()); + } + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdPaySchedulesAssignmentsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | + +### Response + +**[GetV1CompaniesCompanyIdPaySchedulesAssignmentsResponse](../../models/operations/GetV1CompaniesCompanyIdPaySchedulesAssignmentsResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/gusto_embedded/docs/sdks/peoplebatches/README.md b/gusto_embedded/docs/sdks/peoplebatches/README.md index 76a3fa2ea..d939a6fd9 100644 --- a/gusto_embedded/docs/sdks/peoplebatches/README.md +++ b/gusto_embedded/docs/sdks/peoplebatches/README.md @@ -36,11 +36,11 @@ public class Application { .build(); PostV1CompaniesCompanyIdPeopleBatchesResponse res = sdk.peopleBatches().postV1CompaniesCompanyIdPeopleBatches() - .companyId("") .xGustoAPIVersion(PostV1CompaniesCompanyIdPeopleBatchesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyId("") .requestBody(PostV1CompaniesCompanyIdPeopleBatchesRequestBody.builder() .idempotencyKey("550e8400-e29b-41d4-a716-446655440000") - .batchAction(BatchAction.CREATE) + .batchAction(PostV1CompaniesCompanyIdPeopleBatchesBatchAction.CREATE) .batch(List.of()) .build()) .call(); @@ -56,8 +56,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1CompaniesCompanyIdPeopleBatchesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | `requestBody` | [PostV1CompaniesCompanyIdPeopleBatchesRequestBody](../../models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequestBody.md) | :heavy_check_mark: | N/A | ### Response @@ -102,8 +102,8 @@ public class Application { .build(); GetV1PeopleBatchesPeopleBatchUuidResponse res = sdk.peopleBatches().getV1PeopleBatchesPeopleBatchUuid() - .peopleBatchUuid("") .xGustoAPIVersion(GetV1PeopleBatchesPeopleBatchUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .peopleBatchUuid("") .call(); if (res.peopleBatchResults().isPresent()) { @@ -117,8 +117,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `peopleBatchUuid` | *String* | :heavy_check_mark: | The UUID of the people batch | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1PeopleBatchesPeopleBatchUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `peopleBatchUuid` | *String* | :heavy_check_mark: | The UUID of the people batch | ### Response diff --git a/gusto_embedded/docs/sdks/reports/README.md b/gusto_embedded/docs/sdks/reports/README.md index 64a9723cd..95cf69cf8 100644 --- a/gusto_embedded/docs/sdks/reports/README.md +++ b/gusto_embedded/docs/sdks/reports/README.md @@ -4,11 +4,234 @@ ### Available Operations +* [postV1BulkReports](#postv1bulkreports) - Create a bulk report batch +* [getV1BulkReportsRequestUuid](#getv1bulkreportsrequestuuid) - Get a bulk report batch +* [postV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage](#postv1companiescompanyidreportsemployeesannualficawage) - Create an employees annual FICA wage report * [createCustom](#createcustom) - Create a custom report * [postPayrollsPayrollUuidReportsGeneralLedger](#postpayrollspayrolluuidreportsgeneralledger) - Create a general ledger report * [getReportsRequestUuid](#getreportsrequestuuid) - Get a report * [getTemplate](#gettemplate) - Get a report template -* [postV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage](#postv1companiescompanyidreportsemployeesannualficawage) - Create an employees annual FICA wage report + +## postV1BulkReports + +Triggers asynchronous generation of up to 25 reports across companies the partner is mapped to. Each `batch` item is a `custom_report` (same parameters as [create a custom report](https://docs.gusto.com/embedded-payroll/reference/post-companies-company_uuid-reports)) or a `general_ledger` report (same parameters as [create a general ledger report](https://docs.gusto.com/embedded-payroll/reference/post-payrolls-payroll_uuid-reports-general_ledger)), keyed by `company_uuid` and `report_type`. Items are validated synchronously; if any is invalid, the entire batch is rejected. + +Poll the [bulk report GET endpoint](https://docs.gusto.com/embedded-payroll/reference/get-v1-bulk_reports-request_uuid) with the returned `uuid` for status and the report URL, which is valid for 10 minutes. + +📘 System Access Authentication + +This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + +scope: `company_reports:write` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.components.*; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.operations.*; +import java.lang.Exception; +import java.time.LocalDate; +import java.util.List; + +public class Application { + + public static void main(String[] args) throws UnprocessableEntityError, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .build(); + + PostV1BulkReportsResponse res = sdk.reports().postV1BulkReports() + .security(PostV1BulkReportsSecurity.builder() + .systemAccessAuth(System.getenv().getOrDefault("SYSTEM_ACCESS_AUTH", "")) + .build()) + .xGustoAPIVersion(PostV1BulkReportsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .bulkReportBody(BulkReportBody.builder() + .batch(List.of( + BulkReportCustomReportItem.builder() + .companyUuid("12345678-abcd-ef12-3456-7890abcdef12") + .reportType(ReportType.CUSTOM_REPORT) + .columns(List.of( + Columns.EMPLOYEE_FIRST_NAME)) + .fileType(FileType.CSV) + .groupings(List.of( + Groupings.EMPLOYEE)) + .customName("Q1 Payroll Export") + .dateFilterType(DateFilterType.CHECK_DATE) + .startDate(LocalDate.parse("2026-01-01")) + .endDate(LocalDate.parse("2026-03-31")) + .paymentMethod(PaymentMethod.CHECK) + .employmentType(EmploymentType.EXEMPT) + .employmentStatus(EmploymentStatus.ACTIVE_FULL_TIME) + .build(), + BulkReportGeneralLedgerItem.builder() + .companyUuid("12345678-abcd-ef12-3456-7890abcdef12") + .reportType(BulkReportGeneralLedgerItemReportType.GENERAL_LEDGER) + .payrollUuid("7b1d0df1-6403-4a06-8768-c1dd7d24d27a") + .aggregation(Aggregation.DEFAULT) + .build())) + .build()) + .call(); + + if (res.createBulkReport().isPresent()) { + System.out.println(res.createBulkReport().get()); + } + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | Example | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| `security` | [com.gusto.embedded_api.models.operations.PostV1BulkReportsSecurity](../../models/operations/PostV1BulkReportsSecurity.md) | :heavy_check_mark: | The security requirements to use for the request. | | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1BulkReportsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | +| `bulkReportBody` | [BulkReportBody](../../models/components/BulkReportBody.md) | :heavy_check_mark: | N/A | {
    "batch": [
    {
    "company_uuid": "12345678-abcd-ef12-3456-7890abcdef12",
    "report_type": "custom_report",
    "columns": [
    "employee_first_name"
    ],
    "groupings": [
    "employee"
    ],
    "file_type": "csv",
    "custom_name": "Q1 Payroll Export",
    "with_totals": false,
    "start_date": "2026-01-01",
    "end_date": "2026-03-31",
    "date_filter_type": "check_date",
    "payment_method": "check",
    "employment_type": "exempt",
    "employment_status": "active_full_time"
    },
    {
    "company_uuid": "12345678-abcd-ef12-3456-7890abcdef12",
    "report_type": "general_ledger",
    "payroll_uuid": "7b1d0df1-6403-4a06-8768-c1dd7d24d27a",
    "aggregation": "default"
    }
    ]
    } | + +### Response + +**[PostV1BulkReportsResponse](../../models/operations/PostV1BulkReportsResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | + +## getV1BulkReportsRequestUuid + +Get a bulk report batch's status and results given the `request_uuid`. While in progress, only batch metadata is returned; once complete, it also includes a signed `report_url` (a zip of all generated reports, valid for 10 minutes) and a per-company breakdown. + +Reports containing PHI are inaccessible with `company_reports:read:tier_2_only` data scope. + +📘 System Access Authentication + +This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + +scope: `company_reports:read` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.operations.*; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .build(); + + GetV1BulkReportsRequestUuidResponse res = sdk.reports().getV1BulkReportsRequestUuid() + .security(GetV1BulkReportsRequestUuidSecurity.builder() + .systemAccessAuth(System.getenv().getOrDefault("SYSTEM_ACCESS_AUTH", "")) + .build()) + .xGustoAPIVersion(GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .requestUuid("") + .call(); + + if (res.bulkReport().isPresent()) { + System.out.println(res.bulkReport().get()); + } + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `security` | [com.gusto.embedded_api.models.operations.GetV1BulkReportsRequestUuidSecurity](../../models/operations/GetV1BulkReportsRequestUuidSecurity.md) | :heavy_check_mark: | The security requirements to use for the request. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `requestUuid` | *String* | :heavy_check_mark: | The UUID of the bulk report batch. | + +### Response + +**[GetV1BulkReportsRequestUuidResponse](../../models/operations/GetV1BulkReportsRequestUuidResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | + +## postV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage + +Generates a report containing annual FICA (Federal Insurance Contributions Act) wage data for all employees in a company over a specified year range. + +This report provides detailed wage information subject to Social Security and Medicare taxes, useful for benefits integrations that need to verify employee earnings for compliance and benefit calculations. + +The report is generated asynchronously. After making this request, you will receive a `request_uuid` which can be used to poll the [Get a report](ref:get-v1-reports-request_uuid) endpoint to check the status and retrieve the report when complete. + +scope: `company_reports:write` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.operations.*; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageResponse res = sdk.reports().postV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage() + .xGustoAPIVersion(PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyId("") + .requestBody(PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequestBody.builder() + .startYear(2023L) + .endYear(2024L) + .build()) + .call(); + + if (res.employeesAnnualFicaWageReportAcceptance().isPresent()) { + System.out.println(res.employeesAnnualFicaWageReportAcceptance().get()); + } + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | +| `requestBody` | [PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequestBody](../../models/operations/PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequestBody.md) | :heavy_check_mark: | N/A | + +### Response + +**[PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageResponse](../../models/operations/PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | ## createCustom @@ -45,9 +268,9 @@ public class Application { .companyUuid("") .createReportBody(CreateReportBody.builder() .columns(List.of( - Columns.TOTAL_TIME_OFF_EARNINGS)) + CreateReportBodyColumns.TOTAL_TIME_OFF_EARNINGS)) + .fileType(CreateReportBodyFileType.JSON) .groupings(List.of()) - .fileType(FileType.JSON) .startDate(LocalDate.parse("2024-01-01")) .endDate(LocalDate.parse("2024-04-01")) .dismissedStartDate(LocalDate.parse("2024-01-01")) @@ -90,9 +313,9 @@ public class Application { .companyUuid("") .createReportBody(CreateReportBody.builder() .columns(List.of( - Columns.TOTAL_TIME_OFF_EARNINGS)) + CreateReportBodyColumns.TOTAL_TIME_OFF_EARNINGS)) + .fileType(CreateReportBodyFileType.JSON) .groupings(List.of()) - .fileType(FileType.JSON) .startDate(LocalDate.parse("2024-01-01")) .endDate(LocalDate.parse("2024-04-01")) .dismissedStartDate(LocalDate.parse("2024-01-01")) @@ -135,9 +358,9 @@ public class Application { .companyUuid("") .createReportBody(CreateReportBody.builder() .columns(List.of( - Columns.TOTAL_TIME_OFF_EARNINGS)) + CreateReportBodyColumns.TOTAL_TIME_OFF_EARNINGS)) + .fileType(CreateReportBodyFileType.JSON) .groupings(List.of()) - .fileType(FileType.JSON) .startDate(LocalDate.parse("2024-01-01")) .endDate(LocalDate.parse("2024-04-01")) .dismissedStartDate(LocalDate.parse("2024-01-01")) @@ -180,9 +403,9 @@ public class Application { .companyUuid("") .createReportBody(CreateReportBody.builder() .columns(List.of( - Columns.TOTAL_TIME_OFF_EARNINGS)) + CreateReportBodyColumns.TOTAL_TIME_OFF_EARNINGS)) + .fileType(CreateReportBodyFileType.JSON) .groupings(List.of()) - .fileType(FileType.JSON) .startDate(LocalDate.parse("2024-01-01")) .endDate(LocalDate.parse("2024-04-01")) .dismissedStartDate(LocalDate.parse("2024-01-01")) @@ -232,8 +455,8 @@ scope: `company_reports:write` package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.Aggregation; import com.gusto.embedded_api.models.components.GeneralLedgerReportBody; +import com.gusto.embedded_api.models.components.GeneralLedgerReportBodyAggregation; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; import com.gusto.embedded_api.models.operations.PostPayrollsPayrollUuidReportsGeneralLedgerHeaderXGustoAPIVersion; @@ -252,7 +475,7 @@ public class Application { .xGustoAPIVersion(PostPayrollsPayrollUuidReportsGeneralLedgerHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .payrollUuid("") .generalLedgerReportBody(GeneralLedgerReportBody.builder() - .aggregation(Aggregation.DEFAULT) + .aggregation(GeneralLedgerReportBodyAggregation.DEFAULT) .build()) .call(); @@ -269,8 +492,8 @@ public class Application { package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.Aggregation; import com.gusto.embedded_api.models.components.GeneralLedgerReportBody; +import com.gusto.embedded_api.models.components.GeneralLedgerReportBodyAggregation; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; import com.gusto.embedded_api.models.operations.PostPayrollsPayrollUuidReportsGeneralLedgerHeaderXGustoAPIVersion; @@ -289,7 +512,7 @@ public class Application { .xGustoAPIVersion(PostPayrollsPayrollUuidReportsGeneralLedgerHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .payrollUuid("") .generalLedgerReportBody(GeneralLedgerReportBody.builder() - .aggregation(Aggregation.DEFAULT) + .aggregation(GeneralLedgerReportBodyAggregation.DEFAULT) .build()) .call(); @@ -306,8 +529,8 @@ public class Application { package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.Aggregation; import com.gusto.embedded_api.models.components.GeneralLedgerReportBody; +import com.gusto.embedded_api.models.components.GeneralLedgerReportBodyAggregation; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; import com.gusto.embedded_api.models.operations.PostPayrollsPayrollUuidReportsGeneralLedgerHeaderXGustoAPIVersion; @@ -326,7 +549,7 @@ public class Application { .xGustoAPIVersion(PostPayrollsPayrollUuidReportsGeneralLedgerHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .payrollUuid("") .generalLedgerReportBody(GeneralLedgerReportBody.builder() - .aggregation(Aggregation.DEFAULT) + .aggregation(GeneralLedgerReportBodyAggregation.DEFAULT) .build()) .call(); @@ -343,8 +566,8 @@ public class Application { package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.Aggregation; import com.gusto.embedded_api.models.components.GeneralLedgerReportBody; +import com.gusto.embedded_api.models.components.GeneralLedgerReportBodyAggregation; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; import com.gusto.embedded_api.models.operations.PostPayrollsPayrollUuidReportsGeneralLedgerHeaderXGustoAPIVersion; @@ -363,7 +586,7 @@ public class Application { .xGustoAPIVersion(PostPayrollsPayrollUuidReportsGeneralLedgerHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .payrollUuid("") .generalLedgerReportBody(GeneralLedgerReportBody.builder() - .aggregation(Aggregation.DEFAULT) + .aggregation(GeneralLedgerReportBodyAggregation.DEFAULT) .build()) .call(); @@ -506,72 +729,6 @@ public class Application { ### Errors -| Error Type | Status Code | Content Type | -| -------------------------------------- | -------------------------------------- | -------------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/UnprocessableEntityError | 422 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | - -## postV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage - -Generates a report containing annual FICA (Federal Insurance Contributions Act) wage data for all employees in a company over a specified year range. - -This report provides detailed wage information subject to Social Security and Medicare taxes, useful for benefits integrations that need to verify employee earnings for compliance and benefit calculations. - -The report is generated asynchronously. After making this request, you will receive a `request_uuid` which can be used to poll the [Get a report](ref:get-v1-reports-request_uuid) endpoint to check the status and retrieve the report when complete. - -scope: `company_reports:write` - -### Example Usage - - -```java -package hello.world; - -import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.*; -import java.lang.Exception; - -public class Application { - - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { - - GustoEmbedded sdk = GustoEmbedded.builder() - .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) - .build(); - - PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageResponse res = sdk.reports().postV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage() - .xGustoAPIVersion(PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .companyId("") - .requestBody(PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequestBody.builder() - .startYear(2023L) - .endYear(2024L) - .build()) - .call(); - - if (res.employeesAnnualFicaWageReportAcceptance().isPresent()) { - System.out.println(res.employeesAnnualFicaWageReportAcceptance().get()); - } - } -} -``` - -### Parameters - -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | -| `requestBody` | [PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequestBody](../../models/operations/PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequestBody.md) | :heavy_check_mark: | N/A | - -### Response - -**[PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageResponse](../../models/operations/PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageResponse.md)** - -### Errors - | Error Type | Status Code | Content Type | | -------------------------------------- | -------------------------------------- | -------------------------------------- | | models/errors/NotFoundErrorObject | 404 | application/json | diff --git a/gusto_embedded/docs/sdks/reversewiretransactions/README.md b/gusto_embedded/docs/sdks/reversewiretransactions/README.md new file mode 100644 index 000000000..2b59421b1 --- /dev/null +++ b/gusto_embedded/docs/sdks/reversewiretransactions/README.md @@ -0,0 +1,65 @@ +# ReverseWireTransactions + +## Overview + +### Available Operations + +* [getReverseWireTransactions](#getreversewiretransactions) - Get all reverse wire transactions for a company + +## getReverseWireTransactions + +Returns a paginated list of reverse wire (drawdown) transactions for a company. Reverse wires are debit transactions initiated by Gusto to pull funds from a partner's bank account to cover payroll or contractor payment obligations. Pagination is returned via the `x-page`, `x-per-page`, `x-total-count`, and `x-total-pages` response headers. + +scope: `reverse_wire_transactions:read` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.operations.GetReverseWireTransactionsRequest; +import com.gusto.embedded_api.models.operations.GetReverseWireTransactionsResponse; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + GetReverseWireTransactionsRequest req = GetReverseWireTransactionsRequest.builder() + .companyUuid("") + .build(); + + GetReverseWireTransactionsResponse res = sdk.reverseWireTransactions().getReverseWireTransactions() + .request(req) + .call(); + + if (res.reverseWireTransactionList().isPresent()) { + System.out.println(res.reverseWireTransactionList().get()); + } + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | +| `request` | [GetReverseWireTransactionsRequest](../../models/operations/GetReverseWireTransactionsRequest.md) | :heavy_check_mark: | The request object to use for the request. | + +### Response + +**[GetReverseWireTransactionsResponse](../../models/operations/GetReverseWireTransactionsResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/gusto_embedded/docs/sdks/signatories/README.md b/gusto_embedded/docs/sdks/signatories/README.md index a092b88c2..2e2b297cd 100644 --- a/gusto_embedded/docs/sdks/signatories/README.md +++ b/gusto_embedded/docs/sdks/signatories/README.md @@ -40,8 +40,8 @@ public class Application { .build(); GetV1CompaniesCompanyUuidSignatoriesResponse res = sdk.signatories().list() - .companyUuid("") .xGustoAPIVersion(GetV1CompaniesCompanyUuidSignatoriesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyUuid("") .call(); if (res.signatories().isPresent()) { @@ -55,8 +55,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyUuidSignatoriesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | ### Response @@ -108,8 +108,8 @@ public class Application { .build(); PostV1CompanySignatoriesResponse res = sdk.signatories().create() - .companyUuid("") .xGustoAPIVersion(PostV1CompanySignatoriesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyUuid("") .signatoryCreateRequest(SignatoryCreateRequest.builder() .firstName("Ed") .lastName("Reichert") @@ -158,8 +158,8 @@ public class Application { .build(); PostV1CompanySignatoriesResponse res = sdk.signatories().create() - .companyUuid("") .xGustoAPIVersion(PostV1CompanySignatoriesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyUuid("") .signatoryCreateRequest(SignatoryCreateRequest.builder() .firstName("Ed") .lastName("Reichert") @@ -208,8 +208,8 @@ public class Application { .build(); PostV1CompanySignatoriesResponse res = sdk.signatories().create() - .companyUuid("") .xGustoAPIVersion(PostV1CompanySignatoriesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyUuid("") .signatoryCreateRequest(SignatoryCreateRequest.builder() .firstName("Ed") .lastName("Reichert") @@ -258,8 +258,8 @@ public class Application { .build(); PostV1CompanySignatoriesResponse res = sdk.signatories().create() - .companyUuid("") .xGustoAPIVersion(PostV1CompanySignatoriesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyUuid("") .signatoryCreateRequest(SignatoryCreateRequest.builder() .firstName("Ed") .lastName("Reichert") @@ -288,8 +288,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1CompanySignatoriesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `signatoryCreateRequest` | [SignatoryCreateRequest](../../models/components/SignatoryCreateRequest.md) | :heavy_check_mark: | N/A | ### Response @@ -336,8 +336,8 @@ public class Application { .build(); PostV1CompaniesCompanyUuidSignatoriesInviteResponse res = sdk.signatories().invite() - .companyUuid("") .xGustoAPIVersion(PostV1CompaniesCompanyUuidSignatoriesInviteHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyUuid("") .signatoryInviteRequest(SignatoryInviteRequest.builder() .firstName("Madelyn") .lastName("Littel") @@ -374,8 +374,8 @@ public class Application { .build(); PostV1CompaniesCompanyUuidSignatoriesInviteResponse res = sdk.signatories().invite() - .companyUuid("") .xGustoAPIVersion(PostV1CompaniesCompanyUuidSignatoriesInviteHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyUuid("") .signatoryInviteRequest(SignatoryInviteRequest.builder() .firstName("Lucienne") .lastName("Watsica") @@ -412,8 +412,8 @@ public class Application { .build(); PostV1CompaniesCompanyUuidSignatoriesInviteResponse res = sdk.signatories().invite() - .companyUuid("") .xGustoAPIVersion(PostV1CompaniesCompanyUuidSignatoriesInviteHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyUuid("") .signatoryInviteRequest(SignatoryInviteRequest.builder() .firstName("Fatima") .lastName("Ruecker") @@ -450,8 +450,8 @@ public class Application { .build(); PostV1CompaniesCompanyUuidSignatoriesInviteResponse res = sdk.signatories().invite() - .companyUuid("") .xGustoAPIVersion(PostV1CompaniesCompanyUuidSignatoriesInviteHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyUuid("") .signatoryInviteRequest(SignatoryInviteRequest.builder() .firstName("Mac") .lastName("Hudson") @@ -470,8 +470,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1CompaniesCompanyUuidSignatoriesInviteHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `signatoryInviteRequest` | [SignatoryInviteRequest](../../models/components/SignatoryInviteRequest.md) | :heavy_check_mark: | N/A | ### Response @@ -518,9 +518,9 @@ public class Application { .build(); PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidResponse res = sdk.signatories().update() + .xGustoAPIVersion(PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .companyUuid("") .signatoryUuid("") - .xGustoAPIVersion(PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .signatoryUpdateRequest(SignatoryUpdateRequest.builder() .version("") .build()) @@ -555,9 +555,9 @@ public class Application { .build(); PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidResponse res = sdk.signatories().update() + .xGustoAPIVersion(PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .companyUuid("") .signatoryUuid("") - .xGustoAPIVersion(PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .signatoryUpdateRequest(SignatoryUpdateRequest.builder() .version("") .build()) @@ -592,9 +592,9 @@ public class Application { .build(); PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidResponse res = sdk.signatories().update() + .xGustoAPIVersion(PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .companyUuid("") .signatoryUuid("") - .xGustoAPIVersion(PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .signatoryUpdateRequest(SignatoryUpdateRequest.builder() .version("") .build()) @@ -629,9 +629,9 @@ public class Application { .build(); PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidResponse res = sdk.signatories().update() + .xGustoAPIVersion(PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .companyUuid("") .signatoryUuid("") - .xGustoAPIVersion(PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .signatoryUpdateRequest(SignatoryUpdateRequest.builder() .version("") .build()) @@ -648,9 +648,9 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `signatoryUuid` | *String* | :heavy_check_mark: | The UUID of the signatory | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `signatoryUpdateRequest` | [SignatoryUpdateRequest](../../models/components/SignatoryUpdateRequest.md) | :heavy_check_mark: | N/A | ### Response @@ -695,9 +695,9 @@ public class Application { .build(); DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidResponse res = sdk.signatories().delete() + .xGustoAPIVersion(DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .companyUuid("") .signatoryUuid("") - .xGustoAPIVersion(DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .call(); // handle response @@ -709,9 +709,9 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `signatoryUuid` | *String* | :heavy_check_mark: | The UUID of the signatory | -| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | ### Response diff --git a/gusto_embedded/docs/sdks/taxpayments/README.md b/gusto_embedded/docs/sdks/taxpayments/README.md new file mode 100644 index 000000000..4a59b968f --- /dev/null +++ b/gusto_embedded/docs/sdks/taxpayments/README.md @@ -0,0 +1,127 @@ +# TaxPayments + +## Overview + +### Available Operations + +* [getTaxPayments](#gettaxpayments) - Get all tax payments for a company +* [getTaxPayment](#gettaxpayment) - Get a tax payment for a company + +## getTaxPayments + +Fetches all tax payments Gusto has made (or scheduled) to tax agencies on behalf of a company. + +scope: `tax_payments:read` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.operations.GetTaxPaymentsRequest; +import com.gusto.embedded_api.models.operations.GetTaxPaymentsResponse; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + GetTaxPaymentsRequest req = GetTaxPaymentsRequest.builder() + .companyUuid("") + .sortBy("amount:asc") + .build(); + + GetTaxPaymentsResponse res = sdk.taxPayments().getTaxPayments() + .request(req) + .call(); + + if (res.taxPaymentList().isPresent()) { + System.out.println(res.taxPaymentList().get()); + } + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | +| `request` | [GetTaxPaymentsRequest](../../models/operations/GetTaxPaymentsRequest.md) | :heavy_check_mark: | The request object to use for the request. | + +### Response + +**[GetTaxPaymentsResponse](../../models/operations/GetTaxPaymentsResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | + +## getTaxPayment + +Fetches a single tax payment by UUID, including the payroll tax liabilities that make up the payment. + +scope: `tax_payments:read` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.operations.GetTaxPaymentHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetTaxPaymentResponse; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + GetTaxPaymentResponse res = sdk.taxPayments().getTaxPayment() + .xGustoAPIVersion(GetTaxPaymentHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyUuid("") + .uuid("7cdc7492-54c4-4684-9729-2c5da517245b") + .call(); + + if (res.taxPayment().isPresent()) { + System.out.println(res.taxPayment().get()); + } + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetTaxPaymentHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | +| `uuid` | *String* | :heavy_check_mark: | The UUID of the tax payment | + +### Response + +**[GetTaxPaymentResponse](../../models/operations/GetTaxPaymentResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/gusto_embedded/docs/sdks/taxrequirements/README.md b/gusto_embedded/docs/sdks/taxrequirements/README.md index aa005c822..cabc61a82 100644 --- a/gusto_embedded/docs/sdks/taxrequirements/README.md +++ b/gusto_embedded/docs/sdks/taxrequirements/README.md @@ -4,9 +4,66 @@ ### Available Operations +* [getAll](#getall) - Get all tax requirements for a company * [get](#get) - Get tax requirements for a state * [updateState](#updatestate) - Update tax requirements for a state -* [getAll](#getall) - Get all tax requirements for a company + +## getAll + +Retrieves all states for which a company has tax requirements, along with a boolean indicating whether tax setup +is complete for each state. Use this to determine which states still need tax setup during company onboarding. + +scope: `company_tax_requirements:read` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyUuidTaxRequirementsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyUuidTaxRequirementsResponse; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + GetV1CompaniesCompanyUuidTaxRequirementsResponse res = sdk.taxRequirements().getAll() + .xGustoAPIVersion(GetV1CompaniesCompanyUuidTaxRequirementsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyUuid("") + .call(); + + if (res.taxRequirementStatesList().isPresent()) { + System.out.println(res.taxRequirementStatesList().get()); + } + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyUuidTaxRequirementsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | + +### Response + +**[GetV1CompaniesCompanyUuidTaxRequirementsResponse](../../models/operations/GetV1CompaniesCompanyUuidTaxRequirementsResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | ## get @@ -39,9 +96,9 @@ public class Application { .build(); GetV1CompaniesCompanyUuidTaxRequirementsStateResponse res = sdk.taxRequirements().get() + .xGustoAPIVersion(GetV1CompaniesCompanyUuidTaxRequirementsStateHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .companyUuid("") .state("CA") - .xGustoAPIVersion(GetV1CompaniesCompanyUuidTaxRequirementsStateHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .call(); if (res.taxRequirementsState().isPresent()) { @@ -55,9 +112,9 @@ public class Application { | Parameter | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyUuidTaxRequirementsStateHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | | `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | | `state` | *String* | :heavy_check_mark: | The two-letter state abbreviation | CA | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyUuidTaxRequirementsStateHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | | `scheduling` | *Optional\* | :heavy_minus_sign: | When true, return "new" requirement sets with valid `effective_from` dates that are available to save new effective-dated values. | | ### Response @@ -104,9 +161,9 @@ public class Application { .build(); PutV1CompaniesCompanyUuidTaxRequirementsStateResponse res = sdk.taxRequirements().updateState() + .xGustoAPIVersion(PutV1CompaniesCompanyUuidTaxRequirementsStateHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .companyUuid("") .state("West Virginia") - .xGustoAPIVersion(PutV1CompaniesCompanyUuidTaxRequirementsStateHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .requestBody(PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody.builder() .build()) .call(); @@ -139,9 +196,9 @@ public class Application { .build(); PutV1CompaniesCompanyUuidTaxRequirementsStateResponse res = sdk.taxRequirements().updateState() + .xGustoAPIVersion(PutV1CompaniesCompanyUuidTaxRequirementsStateHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .companyUuid("") .state("Tennessee") - .xGustoAPIVersion(PutV1CompaniesCompanyUuidTaxRequirementsStateHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .requestBody(PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody.builder() .requirementSets(List.of( TaxRequirementSetUpdate.builder() @@ -206,9 +263,9 @@ public class Application { .build(); PutV1CompaniesCompanyUuidTaxRequirementsStateResponse res = sdk.taxRequirements().updateState() + .xGustoAPIVersion(PutV1CompaniesCompanyUuidTaxRequirementsStateHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .companyUuid("") .state("Maryland") - .xGustoAPIVersion(PutV1CompaniesCompanyUuidTaxRequirementsStateHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .requestBody(PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody.builder() .build()) .call(); @@ -238,9 +295,9 @@ public class Application { .build(); PutV1CompaniesCompanyUuidTaxRequirementsStateResponse res = sdk.taxRequirements().updateState() + .xGustoAPIVersion(PutV1CompaniesCompanyUuidTaxRequirementsStateHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .companyUuid("") .state("Vermont") - .xGustoAPIVersion(PutV1CompaniesCompanyUuidTaxRequirementsStateHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .requestBody(PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody.builder() .build()) .call(); @@ -254,9 +311,9 @@ public class Application { | Parameter | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1CompaniesCompanyUuidTaxRequirementsStateHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | | `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | | `state` | *String* | :heavy_check_mark: | The two-letter state abbreviation | CA | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1CompaniesCompanyUuidTaxRequirementsStateHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | | `requestBody` | [PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody](../../models/operations/PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody.md) | :heavy_check_mark: | N/A | | ### Response @@ -269,61 +326,4 @@ public class Application { | -------------------------------------- | -------------------------------------- | -------------------------------------- | | models/errors/NotFoundErrorObject | 404 | application/json | | models/errors/UnprocessableEntityError | 422 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | - -## getAll - -Retrieves all states for which a company has tax requirements, along with a boolean indicating whether tax setup -is complete for each state. Use this to determine which states still need tax setup during company onboarding. - -scope: `company_tax_requirements:read` - -### Example Usage - - -```java -package hello.world; - -import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyUuidTaxRequirementsHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyUuidTaxRequirementsResponse; -import java.lang.Exception; - -public class Application { - - public static void main(String[] args) throws NotFoundErrorObject, Exception { - - GustoEmbedded sdk = GustoEmbedded.builder() - .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) - .build(); - - GetV1CompaniesCompanyUuidTaxRequirementsResponse res = sdk.taxRequirements().getAll() - .companyUuid("") - .xGustoAPIVersion(GetV1CompaniesCompanyUuidTaxRequirementsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .call(); - - if (res.taxRequirementStatesList().isPresent()) { - System.out.println(res.taxRequirementStatesList().get()); - } - } -} -``` - -### Parameters - -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyUuidTaxRequirementsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | - -### Response - -**[GetV1CompaniesCompanyUuidTaxRequirementsResponse](../../models/operations/GetV1CompaniesCompanyUuidTaxRequirementsResponse.md)** - -### Errors - -| Error Type | Status Code | Content Type | -| --------------------------------- | --------------------------------- | --------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | \ No newline at end of file +| models/errors/APIException | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/gusto_embedded/docs/sdks/timeoffpolicies/README.md b/gusto_embedded/docs/sdks/timeoffpolicies/README.md index 10a7b021d..0fa97fff5 100644 --- a/gusto_embedded/docs/sdks/timeoffpolicies/README.md +++ b/gusto_embedded/docs/sdks/timeoffpolicies/README.md @@ -5,14 +5,14 @@ ### Available Operations * [calculateAccruingTimeOffHours](#calculateaccruingtimeoffhours) - Calculate accruing time off hours -* [get](#get) - Get a time off policy -* [update](#update) - Update a time off policy * [getAll](#getall) - Get all time off policies for a company * [create](#create) - Create a time off policy +* [get](#get) - Get a time off policy +* [update](#update) - Update a time off policy +* [deactivate](#deactivate) - Deactivate a time off policy * [addEmployees](#addemployees) - Add employees to a time off policy * [removeEmployees](#removeemployees) - Remove employees from a time off policy * [updateBalance](#updatebalance) - Update employee time off balances -* [deactivate](#deactivate) - Deactivate a time off policy ## calculateAccruingTimeOffHours @@ -200,22 +200,22 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## get +## getAll -Get a time off policy +Get all time off policies for a company scope: `time_off_policies:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.operations.GetV1TimeOffPoliciesTimeOffPolicyUuidHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.GetV1TimeOffPoliciesTimeOffPolicyUuidResponse; +import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyUuidTimeOffPoliciesHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyUuidTimeOffPoliciesResponse; import java.lang.Exception; public class Application { @@ -226,13 +226,13 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1TimeOffPoliciesTimeOffPolicyUuidResponse res = sdk.timeOffPolicies().get() - .xGustoAPIVersion(GetV1TimeOffPoliciesTimeOffPolicyUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .timeOffPolicyUuid("") + GetV1CompaniesCompanyUuidTimeOffPoliciesResponse res = sdk.timeOffPolicies().getAll() + .xGustoAPIVersion(GetV1CompaniesCompanyUuidTimeOffPoliciesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyUuid("") .call(); - if (res.timeOffPolicy().isPresent()) { - System.out.println(res.timeOffPolicy().get()); + if (res.timeOffPolicies().isPresent()) { + System.out.println(res.timeOffPolicies().get()); } } } @@ -242,12 +242,12 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1TimeOffPoliciesTimeOffPolicyUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `timeOffPolicyUuid` | *String* | :heavy_check_mark: | The UUID of the time off policy | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyUuidTimeOffPoliciesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | ### Response -**[GetV1TimeOffPoliciesTimeOffPolicyUuidResponse](../../models/operations/GetV1TimeOffPoliciesTimeOffPolicyUuidResponse.md)** +**[GetV1CompaniesCompanyUuidTimeOffPoliciesResponse](../../models/operations/GetV1CompaniesCompanyUuidTimeOffPoliciesResponse.md)** ### Errors @@ -256,22 +256,24 @@ public class Application { | models/errors/NotFoundErrorObject | 404 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## update +## create -Update a time off policy +Create a time off policy scope: `time_off_policies:write` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.components.*; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.*; +import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyUuidTimeOffPoliciesHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyUuidTimeOffPoliciesResponse; import java.lang.Exception; public class Application { @@ -282,12 +284,13 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1TimeOffPoliciesTimeOffPolicyUuidResponse res = sdk.timeOffPolicies().update() - .xGustoAPIVersion(PutV1TimeOffPoliciesTimeOffPolicyUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .timeOffPolicyUuid("") - .requestBody(PutV1TimeOffPoliciesTimeOffPolicyUuidRequestBody.builder() - .version("56d00c178bc7393b2a206ed6a86afcb4") + PostV1CompaniesCompanyUuidTimeOffPoliciesResponse res = sdk.timeOffPolicies().create() + .xGustoAPIVersion(PostV1CompaniesCompanyUuidTimeOffPoliciesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyUuid("") + .timeOffPolicyRequest(TimeOffPolicyRequest.builder() .name("Vacation Policy") + .policyType(TimeOffPolicyRequestPolicyType.VACATION) + .accrualMethod(AccrualMethod.PER_PAY_PERIOD) .build()) .call(); @@ -302,13 +305,13 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `timeOffPolicyUuid` | *String* | :heavy_check_mark: | The UUID of the time off policy | -| `requestBody` | [PutV1TimeOffPoliciesTimeOffPolicyUuidRequestBody](../../models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidRequestBody.md) | :heavy_check_mark: | N/A | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1CompaniesCompanyUuidTimeOffPoliciesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | +| `timeOffPolicyRequest` | [TimeOffPolicyRequest](../../models/components/TimeOffPolicyRequest.md) | :heavy_check_mark: | N/A | ### Response -**[PutV1TimeOffPoliciesTimeOffPolicyUuidResponse](../../models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidResponse.md)** +**[PostV1CompaniesCompanyUuidTimeOffPoliciesResponse](../../models/operations/PostV1CompaniesCompanyUuidTimeOffPoliciesResponse.md)** ### Errors @@ -318,22 +321,22 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## getAll +## get -Get all time off policies for a company +Get a time off policy scope: `time_off_policies:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyUuidTimeOffPoliciesHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyUuidTimeOffPoliciesResponse; +import com.gusto.embedded_api.models.operations.GetV1TimeOffPoliciesTimeOffPolicyUuidHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetV1TimeOffPoliciesTimeOffPolicyUuidResponse; import java.lang.Exception; public class Application { @@ -344,13 +347,13 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1CompaniesCompanyUuidTimeOffPoliciesResponse res = sdk.timeOffPolicies().getAll() - .xGustoAPIVersion(GetV1CompaniesCompanyUuidTimeOffPoliciesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .companyUuid("") + GetV1TimeOffPoliciesTimeOffPolicyUuidResponse res = sdk.timeOffPolicies().get() + .xGustoAPIVersion(GetV1TimeOffPoliciesTimeOffPolicyUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .timeOffPolicyUuid("") .call(); - if (res.timeOffPolicies().isPresent()) { - System.out.println(res.timeOffPolicies().get()); + if (res.timeOffPolicy().isPresent()) { + System.out.println(res.timeOffPolicy().get()); } } } @@ -360,12 +363,12 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyUuidTimeOffPoliciesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1TimeOffPoliciesTimeOffPolicyUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `timeOffPolicyUuid` | *String* | :heavy_check_mark: | The UUID of the time off policy | ### Response -**[GetV1CompaniesCompanyUuidTimeOffPoliciesResponse](../../models/operations/GetV1CompaniesCompanyUuidTimeOffPoliciesResponse.md)** +**[GetV1TimeOffPoliciesTimeOffPolicyUuidResponse](../../models/operations/GetV1TimeOffPoliciesTimeOffPolicyUuidResponse.md)** ### Errors @@ -374,24 +377,22 @@ public class Application { | models/errors/NotFoundErrorObject | 404 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## create +## update -Create a time off policy +Update a time off policy scope: `time_off_policies:write` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.components.*; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyUuidTimeOffPoliciesHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyUuidTimeOffPoliciesResponse; +import com.gusto.embedded_api.models.operations.*; import java.lang.Exception; public class Application { @@ -402,13 +403,12 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostV1CompaniesCompanyUuidTimeOffPoliciesResponse res = sdk.timeOffPolicies().create() - .xGustoAPIVersion(PostV1CompaniesCompanyUuidTimeOffPoliciesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .companyUuid("") - .timeOffPolicyRequest(TimeOffPolicyRequest.builder() + PutV1TimeOffPoliciesTimeOffPolicyUuidResponse res = sdk.timeOffPolicies().update() + .xGustoAPIVersion(PutV1TimeOffPoliciesTimeOffPolicyUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .timeOffPolicyUuid("") + .requestBody(PutV1TimeOffPoliciesTimeOffPolicyUuidRequestBody.builder() + .version("56d00c178bc7393b2a206ed6a86afcb4") .name("Vacation Policy") - .policyType(TimeOffPolicyRequestPolicyType.VACATION) - .accrualMethod(AccrualMethod.PER_PAY_PERIOD) .build()) .call(); @@ -423,13 +423,13 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1CompaniesCompanyUuidTimeOffPoliciesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | -| `timeOffPolicyRequest` | [TimeOffPolicyRequest](../../models/components/TimeOffPolicyRequest.md) | :heavy_check_mark: | N/A | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `timeOffPolicyUuid` | *String* | :heavy_check_mark: | The UUID of the time off policy | +| `requestBody` | [PutV1TimeOffPoliciesTimeOffPolicyUuidRequestBody](../../models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidRequestBody.md) | :heavy_check_mark: | N/A | ### Response -**[PostV1CompaniesCompanyUuidTimeOffPoliciesResponse](../../models/operations/PostV1CompaniesCompanyUuidTimeOffPoliciesResponse.md)** +**[PutV1TimeOffPoliciesTimeOffPolicyUuidResponse](../../models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidResponse.md)** ### Errors @@ -439,24 +439,24 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## addEmployees +## deactivate -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 +Deactivate a time off policy scope: `time_off_policies:write` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.*; +import com.gusto.embedded_api.models.operations.PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateResponse; import java.lang.Exception; -import java.util.List; public class Application { @@ -466,12 +466,9 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesResponse res = sdk.timeOffPolicies().addEmployees() - .xGustoAPIVersion(PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateResponse res = sdk.timeOffPolicies().deactivate() + .xGustoAPIVersion(PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .timeOffPolicyUuid("") - .requestBody(PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesRequestBody.builder() - .employees(List.of()) - .build()) .call(); if (res.timeOffPolicy().isPresent()) { @@ -485,13 +482,12 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `timeOffPolicyUuid` | *String* | :heavy_check_mark: | The UUID of the time off policy | -| `requestBody` | [PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesRequestBody](../../models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesRequestBody.md) | :heavy_check_mark: | N/A | ### Response -**[PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesResponse](../../models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesResponse.md)** +**[PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateResponse](../../models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateResponse.md)** ### Errors @@ -501,15 +497,15 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## removeEmployees +## addEmployees -Remove employees from a time off policy +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 - + ```java package hello.world; @@ -528,10 +524,10 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1TimeOffPoliciesTimeOffPolicyUuidRemoveEmployeesResponse res = sdk.timeOffPolicies().removeEmployees() - .xGustoAPIVersion(PutV1TimeOffPoliciesTimeOffPolicyUuidRemoveEmployeesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesResponse res = sdk.timeOffPolicies().addEmployees() + .xGustoAPIVersion(PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .timeOffPolicyUuid("") - .requestBody(PutV1TimeOffPoliciesTimeOffPolicyUuidRemoveEmployeesRequestBody.builder() + .requestBody(PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesRequestBody.builder() .employees(List.of()) .build()) .call(); @@ -547,13 +543,13 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidRemoveEmployeesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `timeOffPolicyUuid` | *String* | :heavy_check_mark: | The UUID of the time off policy | -| `requestBody` | [PutV1TimeOffPoliciesTimeOffPolicyUuidRemoveEmployeesRequestBody](../../models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidRemoveEmployeesRequestBody.md) | :heavy_check_mark: | N/A | +| `requestBody` | [PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesRequestBody](../../models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesRequestBody.md) | :heavy_check_mark: | N/A | ### Response -**[PutV1TimeOffPoliciesTimeOffPolicyUuidRemoveEmployeesResponse](../../models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidRemoveEmployeesResponse.md)** +**[PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesResponse](../../models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesResponse.md)** ### Errors @@ -563,15 +559,15 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## updateBalance +## removeEmployees -Updates time off hours balances for employees for a time off policy. +Remove employees from a time off policy scope: `time_off_policies:write` ### Example Usage - + ```java package hello.world; @@ -590,10 +586,10 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1TimeOffPoliciesTimeOffPolicyUuidBalanceResponse res = sdk.timeOffPolicies().updateBalance() - .xGustoAPIVersion(PutV1TimeOffPoliciesTimeOffPolicyUuidBalanceHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + PutV1TimeOffPoliciesTimeOffPolicyUuidRemoveEmployeesResponse res = sdk.timeOffPolicies().removeEmployees() + .xGustoAPIVersion(PutV1TimeOffPoliciesTimeOffPolicyUuidRemoveEmployeesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .timeOffPolicyUuid("") - .requestBody(PutV1TimeOffPoliciesTimeOffPolicyUuidBalanceRequestBody.builder() + .requestBody(PutV1TimeOffPoliciesTimeOffPolicyUuidRemoveEmployeesRequestBody.builder() .employees(List.of()) .build()) .call(); @@ -609,13 +605,13 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidBalanceHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidRemoveEmployeesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `timeOffPolicyUuid` | *String* | :heavy_check_mark: | The UUID of the time off policy | -| `requestBody` | [PutV1TimeOffPoliciesTimeOffPolicyUuidBalanceRequestBody](../../models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidBalanceRequestBody.md) | :heavy_check_mark: | N/A | +| `requestBody` | [PutV1TimeOffPoliciesTimeOffPolicyUuidRemoveEmployeesRequestBody](../../models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidRemoveEmployeesRequestBody.md) | :heavy_check_mark: | N/A | ### Response -**[PutV1TimeOffPoliciesTimeOffPolicyUuidBalanceResponse](../../models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidBalanceResponse.md)** +**[PutV1TimeOffPoliciesTimeOffPolicyUuidRemoveEmployeesResponse](../../models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidRemoveEmployeesResponse.md)** ### Errors @@ -625,24 +621,24 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## deactivate +## updateBalance -Deactivate a time off policy +Updates time off hours balances for employees for a time off policy. scope: `time_off_policies:write` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api.GustoEmbedded; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api.models.operations.PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateResponse; +import com.gusto.embedded_api.models.operations.*; import java.lang.Exception; +import java.util.List; public class Application { @@ -652,9 +648,12 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateResponse res = sdk.timeOffPolicies().deactivate() - .xGustoAPIVersion(PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + PutV1TimeOffPoliciesTimeOffPolicyUuidBalanceResponse res = sdk.timeOffPolicies().updateBalance() + .xGustoAPIVersion(PutV1TimeOffPoliciesTimeOffPolicyUuidBalanceHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) .timeOffPolicyUuid("") + .requestBody(PutV1TimeOffPoliciesTimeOffPolicyUuidBalanceRequestBody.builder() + .employees(List.of()) + .build()) .call(); if (res.timeOffPolicy().isPresent()) { @@ -668,12 +667,13 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidBalanceHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `timeOffPolicyUuid` | *String* | :heavy_check_mark: | The UUID of the time off policy | +| `requestBody` | [PutV1TimeOffPoliciesTimeOffPolicyUuidBalanceRequestBody](../../models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidBalanceRequestBody.md) | :heavy_check_mark: | N/A | ### Response -**[PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateResponse](../../models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateResponse.md)** +**[PutV1TimeOffPoliciesTimeOffPolicyUuidBalanceResponse](../../models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidBalanceResponse.md)** ### Errors diff --git a/gusto_embedded/docs/sdks/webhooks/README.md b/gusto_embedded/docs/sdks/webhooks/README.md index 07fafe8bb..f930d00ca 100644 --- a/gusto_embedded/docs/sdks/webhooks/README.md +++ b/gusto_embedded/docs/sdks/webhooks/README.md @@ -9,8 +9,8 @@ * [getSubscription](#getsubscription) - Get a webhook subscription * [updateSubscription](#updatesubscription) - Update a webhook subscription * [deleteSubscription](#deletesubscription) - Delete a webhook subscription -* [verify](#verify) - Verify a webhook subscription * [requestVerificationToken](#requestverificationtoken) - Request a verification token for a webhook subscription +* [verify](#verify) - Verify a webhook subscription * [getV1WebhooksHealthCheck](#getv1webhookshealthcheck) - Get the webhooks health status ## listSubscriptions @@ -282,8 +282,8 @@ public class Application { .security(GetV1WebhookSubscriptionUuidSecurity.builder() .systemAccessAuth(System.getenv().getOrDefault("SYSTEM_ACCESS_AUTH", "")) .build()) - .webhookSubscriptionUuid("") .xGustoAPIVersion(GetV1WebhookSubscriptionUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .webhookSubscriptionUuid("") .call(); if (res.webhookSubscription().isPresent()) { @@ -298,8 +298,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `security` | [com.gusto.embedded_api.models.operations.GetV1WebhookSubscriptionUuidSecurity](../../models/operations/GetV1WebhookSubscriptionUuidSecurity.md) | :heavy_check_mark: | The security requirements to use for the request. | -| `webhookSubscriptionUuid` | *String* | :heavy_check_mark: | The webhook subscription UUID. | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1WebhookSubscriptionUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `webhookSubscriptionUuid` | *String* | :heavy_check_mark: | The webhook subscription UUID. | ### Response @@ -346,8 +346,8 @@ public class Application { .security(PutV1WebhookSubscriptionUuidSecurity.builder() .systemAccessAuth(System.getenv().getOrDefault("SYSTEM_ACCESS_AUTH", "")) .build()) - .webhookSubscriptionUuid("") .xGustoAPIVersion(PutV1WebhookSubscriptionUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .webhookSubscriptionUuid("") .requestBody(PutV1WebhookSubscriptionUuidRequestBody.builder() .subscriptionTypes(List.of( PutV1WebhookSubscriptionUuidSubscriptionTypes.PAYROLL)) @@ -384,8 +384,8 @@ public class Application { .security(PutV1WebhookSubscriptionUuidSecurity.builder() .systemAccessAuth(System.getenv().getOrDefault("SYSTEM_ACCESS_AUTH", "")) .build()) - .webhookSubscriptionUuid("") .xGustoAPIVersion(PutV1WebhookSubscriptionUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .webhookSubscriptionUuid("") .requestBody(PutV1WebhookSubscriptionUuidRequestBody.builder() .subscriptionTypes(List.of( PutV1WebhookSubscriptionUuidSubscriptionTypes.COMPANY, @@ -423,8 +423,8 @@ public class Application { .security(PutV1WebhookSubscriptionUuidSecurity.builder() .systemAccessAuth(System.getenv().getOrDefault("SYSTEM_ACCESS_AUTH", "")) .build()) - .webhookSubscriptionUuid("") .xGustoAPIVersion(PutV1WebhookSubscriptionUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .webhookSubscriptionUuid("") .requestBody(PutV1WebhookSubscriptionUuidRequestBody.builder() .subscriptionTypes(List.of( PutV1WebhookSubscriptionUuidSubscriptionTypes.PAYROLL)) @@ -461,8 +461,8 @@ public class Application { .security(PutV1WebhookSubscriptionUuidSecurity.builder() .systemAccessAuth(System.getenv().getOrDefault("SYSTEM_ACCESS_AUTH", "")) .build()) - .webhookSubscriptionUuid("") .xGustoAPIVersion(PutV1WebhookSubscriptionUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .webhookSubscriptionUuid("") .requestBody(PutV1WebhookSubscriptionUuidRequestBody.builder() .subscriptionTypes(List.of( PutV1WebhookSubscriptionUuidSubscriptionTypes.PAYROLL)) @@ -481,8 +481,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `security` | [com.gusto.embedded_api.models.operations.PutV1WebhookSubscriptionUuidSecurity](../../models/operations/PutV1WebhookSubscriptionUuidSecurity.md) | :heavy_check_mark: | The security requirements to use for the request. | -| `webhookSubscriptionUuid` | *String* | :heavy_check_mark: | The webhook subscription UUID. | | `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1WebhookSubscriptionUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `webhookSubscriptionUuid` | *String* | :heavy_check_mark: | The webhook subscription UUID. | | `requestBody` | [PutV1WebhookSubscriptionUuidRequestBody](../../models/operations/PutV1WebhookSubscriptionUuidRequestBody.md) | :heavy_check_mark: | N/A | ### Response @@ -529,8 +529,8 @@ public class Application { .security(DeleteV1WebhookSubscriptionUuidSecurity.builder() .systemAccessAuth(System.getenv().getOrDefault("SYSTEM_ACCESS_AUTH", "")) .build()) - .webhookSubscriptionUuid("") .xGustoAPIVersion(DeleteV1WebhookSubscriptionUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .webhookSubscriptionUuid("") .call(); // handle response @@ -543,8 +543,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `security` | [com.gusto.embedded_api.models.operations.DeleteV1WebhookSubscriptionUuidSecurity](../../models/operations/DeleteV1WebhookSubscriptionUuidSecurity.md) | :heavy_check_mark: | The security requirements to use for the request. | -| `webhookSubscriptionUuid` | *String* | :heavy_check_mark: | The webhook subscription UUID. | | `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1WebhookSubscriptionUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `webhookSubscriptionUuid` | *String* | :heavy_check_mark: | The webhook subscription UUID. | ### Response @@ -557,6 +557,68 @@ public class Application { | models/errors/NotFoundErrorObject | 404 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | +## requestVerificationToken + +Request that the webhook subscription `verification_token` be POSTed to the Subscription URL. + +📘 System Access Authentication + +This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + +scope: `webhook_subscriptions:read` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api.GustoEmbedded; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.operations.*; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .build(); + + GetV1WebhookSubscriptionVerificationTokenUuidResponse res = sdk.webhooks().requestVerificationToken() + .security(GetV1WebhookSubscriptionVerificationTokenUuidSecurity.builder() + .systemAccessAuth(System.getenv().getOrDefault("SYSTEM_ACCESS_AUTH", "")) + .build()) + .xGustoAPIVersion(GetV1WebhookSubscriptionVerificationTokenUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .webhookSubscriptionUuid("") + .call(); + + if (res.webhookVerificationTokenResponse().isPresent()) { + System.out.println(res.webhookVerificationTokenResponse().get()); + } + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `security` | [com.gusto.embedded_api.models.operations.GetV1WebhookSubscriptionVerificationTokenUuidSecurity](../../models/operations/GetV1WebhookSubscriptionVerificationTokenUuidSecurity.md) | :heavy_check_mark: | The security requirements to use for the request. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1WebhookSubscriptionVerificationTokenUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `webhookSubscriptionUuid` | *String* | :heavy_check_mark: | The webhook subscription UUID. | + +### Response + +**[GetV1WebhookSubscriptionVerificationTokenUuidResponse](../../models/operations/GetV1WebhookSubscriptionVerificationTokenUuidResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | + ## verify When a webhook subscription is created, a `verification_token` is POSTed to the registered webhook subscription URL. This `verify` endpoint needs to be called with `verification_token` before webhook events can be sent to the registered webhook URL. @@ -592,8 +654,8 @@ public class Application { .security(PutV1VerifyWebhookSubscriptionUuidSecurity.builder() .systemAccessAuth(System.getenv().getOrDefault("SYSTEM_ACCESS_AUTH", "")) .build()) - .webhookSubscriptionUuid("") .xGustoAPIVersion(PutV1VerifyWebhookSubscriptionUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .webhookSubscriptionUuid("") .requestBody(PutV1VerifyWebhookSubscriptionUuidRequestBody.builder() .verificationToken("") .build()) @@ -628,8 +690,8 @@ public class Application { .security(PutV1VerifyWebhookSubscriptionUuidSecurity.builder() .systemAccessAuth(System.getenv().getOrDefault("SYSTEM_ACCESS_AUTH", "")) .build()) - .webhookSubscriptionUuid("") .xGustoAPIVersion(PutV1VerifyWebhookSubscriptionUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .webhookSubscriptionUuid("") .requestBody(PutV1VerifyWebhookSubscriptionUuidRequestBody.builder() .verificationToken("asefasedfe23e234easd") .build()) @@ -664,8 +726,8 @@ public class Application { .security(PutV1VerifyWebhookSubscriptionUuidSecurity.builder() .systemAccessAuth(System.getenv().getOrDefault("SYSTEM_ACCESS_AUTH", "")) .build()) - .webhookSubscriptionUuid("") .xGustoAPIVersion(PutV1VerifyWebhookSubscriptionUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .webhookSubscriptionUuid("") .requestBody(PutV1VerifyWebhookSubscriptionUuidRequestBody.builder() .verificationToken("") .build()) @@ -700,8 +762,8 @@ public class Application { .security(PutV1VerifyWebhookSubscriptionUuidSecurity.builder() .systemAccessAuth(System.getenv().getOrDefault("SYSTEM_ACCESS_AUTH", "")) .build()) - .webhookSubscriptionUuid("") .xGustoAPIVersion(PutV1VerifyWebhookSubscriptionUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .webhookSubscriptionUuid("") .requestBody(PutV1VerifyWebhookSubscriptionUuidRequestBody.builder() .verificationToken("") .build()) @@ -719,8 +781,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `security` | [com.gusto.embedded_api.models.operations.PutV1VerifyWebhookSubscriptionUuidSecurity](../../models/operations/PutV1VerifyWebhookSubscriptionUuidSecurity.md) | :heavy_check_mark: | The security requirements to use for the request. | -| `webhookSubscriptionUuid` | *String* | :heavy_check_mark: | The webhook subscription UUID. | | `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1VerifyWebhookSubscriptionUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `webhookSubscriptionUuid` | *String* | :heavy_check_mark: | The webhook subscription UUID. | | `requestBody` | [PutV1VerifyWebhookSubscriptionUuidRequestBody](../../models/operations/PutV1VerifyWebhookSubscriptionUuidRequestBody.md) | :heavy_check_mark: | N/A | ### Response @@ -735,68 +797,6 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## requestVerificationToken - -Request that the webhook subscription `verification_token` be POSTed to the Subscription URL. - -📘 System Access Authentication - -This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) - -scope: `webhook_subscriptions:read` - -### Example Usage - - -```java -package hello.world; - -import com.gusto.embedded_api.GustoEmbedded; -import com.gusto.embedded_api.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api.models.operations.*; -import java.lang.Exception; - -public class Application { - - public static void main(String[] args) throws NotFoundErrorObject, Exception { - - GustoEmbedded sdk = GustoEmbedded.builder() - .build(); - - GetV1WebhookSubscriptionVerificationTokenUuidResponse res = sdk.webhooks().requestVerificationToken() - .security(GetV1WebhookSubscriptionVerificationTokenUuidSecurity.builder() - .systemAccessAuth(System.getenv().getOrDefault("SYSTEM_ACCESS_AUTH", "")) - .build()) - .webhookSubscriptionUuid("") - .xGustoAPIVersion(GetV1WebhookSubscriptionVerificationTokenUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) - .call(); - - if (res.webhookVerificationTokenResponse().isPresent()) { - System.out.println(res.webhookVerificationTokenResponse().get()); - } - } -} -``` - -### Parameters - -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `security` | [com.gusto.embedded_api.models.operations.GetV1WebhookSubscriptionVerificationTokenUuidSecurity](../../models/operations/GetV1WebhookSubscriptionVerificationTokenUuidSecurity.md) | :heavy_check_mark: | The security requirements to use for the request. | -| `webhookSubscriptionUuid` | *String* | :heavy_check_mark: | The webhook subscription UUID. | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1WebhookSubscriptionVerificationTokenUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | - -### Response - -**[GetV1WebhookSubscriptionVerificationTokenUuidResponse](../../models/operations/GetV1WebhookSubscriptionVerificationTokenUuidResponse.md)** - -### Errors - -| Error Type | Status Code | Content Type | -| --------------------------------- | --------------------------------- | --------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | - ## getV1WebhooksHealthCheck Returns the health status (`healthy`, `unhealthy`, or `unknown`) of the webhooks system based on the last ten minutes of activity. diff --git a/gusto_embedded/docs/sdks/wireinrequests/README.md b/gusto_embedded/docs/sdks/wireinrequests/README.md index 256bd46fd..913bfa978 100644 --- a/gusto_embedded/docs/sdks/wireinrequests/README.md +++ b/gusto_embedded/docs/sdks/wireinrequests/README.md @@ -35,8 +35,8 @@ public class Application { .build(); GetWireInRequestsWireInRequestUuidResponse res = sdk.wireInRequests().get() - .wireInRequestUuid("") .xGustoAPIVersion(GetWireInRequestsWireInRequestUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .wireInRequestUuid("") .call(); if (res.wireInRequest().isPresent()) { @@ -50,8 +50,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `wireInRequestUuid` | *String* | :heavy_check_mark: | The UUID of the Wire In Request | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetWireInRequestsWireInRequestUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `wireInRequestUuid` | *String* | :heavy_check_mark: | The UUID of the Wire In Request | ### Response @@ -93,8 +93,8 @@ public class Application { .build(); PutWireInRequestsWireInRequestUuidResponse res = sdk.wireInRequests().submit() - .wireInRequestUuid("") .xGustoAPIVersion(PutWireInRequestsWireInRequestUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .wireInRequestUuid("") .wireInRequestUpdateRequestBody(WireInRequestUpdateRequestBody.builder() .dateSent("") .bankName("") @@ -131,8 +131,8 @@ public class Application { .build(); PutWireInRequestsWireInRequestUuidResponse res = sdk.wireInRequests().submit() - .wireInRequestUuid("") .xGustoAPIVersion(PutWireInRequestsWireInRequestUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .wireInRequestUuid("") .wireInRequestUpdateRequestBody(WireInRequestUpdateRequestBody.builder() .dateSent("2024-06-10T00:00:00Z") .bankName("Chase") @@ -170,8 +170,8 @@ public class Application { .build(); PutWireInRequestsWireInRequestUuidResponse res = sdk.wireInRequests().submit() - .wireInRequestUuid("") .xGustoAPIVersion(PutWireInRequestsWireInRequestUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .wireInRequestUuid("") .wireInRequestUpdateRequestBody(WireInRequestUpdateRequestBody.builder() .dateSent("") .bankName("") @@ -208,8 +208,8 @@ public class Application { .build(); PutWireInRequestsWireInRequestUuidResponse res = sdk.wireInRequests().submit() - .wireInRequestUuid("") .xGustoAPIVersion(PutWireInRequestsWireInRequestUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .wireInRequestUuid("") .wireInRequestUpdateRequestBody(WireInRequestUpdateRequestBody.builder() .dateSent("") .bankName("") @@ -246,8 +246,8 @@ public class Application { .build(); PutWireInRequestsWireInRequestUuidResponse res = sdk.wireInRequests().submit() - .wireInRequestUuid("") .xGustoAPIVersion(PutWireInRequestsWireInRequestUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .wireInRequestUuid("") .wireInRequestUpdateRequestBody(WireInRequestUpdateRequestBody.builder() .dateSent("") .bankName("") @@ -266,8 +266,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `wireInRequestUuid` | *String* | :heavy_check_mark: | The UUID of the Wire In Request | | `xGustoAPIVersion` | [Optional\](../../models/operations/PutWireInRequestsWireInRequestUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `wireInRequestUuid` | *String* | :heavy_check_mark: | The UUID of the Wire In Request | | `wireInRequestUpdateRequestBody` | [WireInRequestUpdateRequestBody](../../models/components/WireInRequestUpdateRequestBody.md) | :heavy_check_mark: | N/A | ### Response @@ -308,8 +308,8 @@ public class Application { .build(); GetCompaniesCompanyUuidWireInRequestUuidResponse res = sdk.wireInRequests().list() - .companyUuid("") .xGustoAPIVersion(GetCompaniesCompanyUuidWireInRequestUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15) + .companyUuid("") .call(); if (res.wireInRequestList().isPresent()) { @@ -323,8 +323,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetCompaniesCompanyUuidWireInRequestUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | | `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | diff --git a/gusto_embedded/gradle.properties b/gusto_embedded/gradle.properties index 8677d604a..6be05a626 100644 --- a/gusto_embedded/gradle.properties +++ b/gusto_embedded/gradle.properties @@ -1,4 +1,4 @@ groupId=com.gusto artifactId=embedded-api -version=0.3.4 +version=0.4.0 org.gradle.jvmargs=-Xmx4g -XX:MaxMetaspaceSize=1g diff --git a/gusto_embedded/settings.gradle b/gusto_embedded/settings.gradle index 9362b0593..02d3671b1 100644 --- a/gusto_embedded/settings.gradle +++ b/gusto_embedded/settings.gradle @@ -9,12 +9,6 @@ rootProject.name = 'GustoEmbedded' -include 'GustoEmbedded-spring-boot-autoconfigure' -include 'GustoEmbedded-spring-boot-starter' - -project(':GustoEmbedded-spring-boot-autoconfigure').projectDir = file('spring/GustoEmbedded-spring-boot-autoconfigure') -project(':GustoEmbedded-spring-boot-starter').projectDir = file('spring/GustoEmbedded-spring-boot-starter') - // Apply additional settings if the file exists if (file('settings-extra.gradle').exists()) { apply from: 'settings-extra.gradle' diff --git a/gusto_embedded/spring/GustoEmbedded-spring-boot-autoconfigure/build.gradle b/gusto_embedded/spring/GustoEmbedded-spring-boot-autoconfigure/build.gradle deleted file mode 100644 index e50328947..000000000 --- a/gusto_embedded/spring/GustoEmbedded-spring-boot-autoconfigure/build.gradle +++ /dev/null @@ -1,35 +0,0 @@ -description = 'GustoEmbedded Spring Boot Auto Configuration' - -// Publishing configuration overrides -ext { - publishingConfig = [ - groupId: rootProject.group, - artifactId: 'GustoEmbedded-spring-boot-autoconfigure', - version: rootProject.version, - name: 'Gusto Java SDK - Spring Boot Auto Configuration', - description: 'Spring Boot auto-configuration for the Gusto Java SDK.', - ] -} - -dependencies { - api project(':') - implementation 'org.springframework.boot:spring-boot-autoconfigure' - annotationProcessor 'org.springframework.boot:spring-boot-configuration-processor' - testImplementation 'org.springframework.boot:spring-boot-starter-test' - testRuntimeOnly 'org.junit.platform:junit-platform-launcher' -} - -test { - useJUnitPlatform() -} - -jar { - dependsOn 'generatePomFileForMavenPublication' - archiveBaseName = 'GustoEmbedded-spring-boot-autoconfigure' - into("META-INF/maven/com.gusto/GustoEmbedded-spring-boot-autoconfigure") { - from(layout.buildDirectory.file("pom.xml")) { - // Only include if it exists to avoid build ordering issues - duplicatesStrategy = DuplicatesStrategy.INCLUDE - } - } -} \ No newline at end of file diff --git a/gusto_embedded/spring/GustoEmbedded-spring-boot-autoconfigure/src/main/java/com/gusto/embedded_api/ConditionalOnPropertyPrefix.java b/gusto_embedded/spring/GustoEmbedded-spring-boot-autoconfigure/src/main/java/com/gusto/embedded_api/ConditionalOnPropertyPrefix.java deleted file mode 100644 index 2857ee005..000000000 --- a/gusto_embedded/spring/GustoEmbedded-spring-boot-autoconfigure/src/main/java/com/gusto/embedded_api/ConditionalOnPropertyPrefix.java +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - */ -package com.gusto.embedded_api; - -import org.springframework.context.annotation.Conditional; - -import java.lang.annotation.Documented; -import java.lang.annotation.ElementType; -import java.lang.annotation.Retention; -import java.lang.annotation.RetentionPolicy; -import java.lang.annotation.Target; - -/** - * Conditional annotation that matches when any properties exist under the specified prefix. - * This is useful for conditionally creating beans only when configuration properties - * are present under a specific prefix. - * - *

    Example usage: - *

    - * @Bean
    - * @ConditionalOnPropertyPrefix(prefix = "myapp.security")
    - * public SecuritySource securitySource() {
    - *     // This bean will only be created if properties like myapp.security.* exist
    - * }
    - * 
    - */ -@Target({ ElementType.TYPE, ElementType.METHOD }) -@Retention(RetentionPolicy.RUNTIME) -@Documented -@Conditional(OnPropertyPrefixCondition.class) -public @interface ConditionalOnPropertyPrefix { - - /** - * The property prefix to check for. Properties starting with this prefix - * (followed by a dot) will be considered when determining if the condition matches. - * - * @return the property prefix - */ - String prefix(); -} \ No newline at end of file diff --git a/gusto_embedded/spring/GustoEmbedded-spring-boot-autoconfigure/src/main/java/com/gusto/embedded_api/GustoEmbeddedAutoConfig.java b/gusto_embedded/spring/GustoEmbedded-spring-boot-autoconfigure/src/main/java/com/gusto/embedded_api/GustoEmbeddedAutoConfig.java deleted file mode 100644 index 8b2a1e7fd..000000000 --- a/gusto_embedded/spring/GustoEmbedded-spring-boot-autoconfigure/src/main/java/com/gusto/embedded_api/GustoEmbeddedAutoConfig.java +++ /dev/null @@ -1,1448 +0,0 @@ -/* - * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - */ -package com.gusto.embedded_api; - -import org.springframework.boot.autoconfigure.AutoConfiguration; -import org.springframework.boot.autoconfigure.condition.ConditionalOnClass; -import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean; -import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; -import org.springframework.boot.context.properties.EnableConfigurationProperties; -import org.springframework.context.annotation.Bean; -import java.util.concurrent.TimeUnit; - -import com.gusto.embedded_api.utils.BackoffStrategy; -import com.gusto.embedded_api.utils.HTTPClient; -import com.gusto.embedded_api.utils.RetryConfig; -import com.gusto.embedded_api.utils.SpeakeasyHTTPClient; -import java.lang.IllegalStateException; -import java.lang.String; -import java.lang.System; -import java.util.Optional; -import java.util.concurrent.Executors; -import java.util.concurrent.ScheduledExecutorService; -import java.util.function.Consumer; - - -/** - * Spring Boot Auto Configuration for GustoEmbedded SDK - * This configuration class automatically configures the GustoEmbedded SDK - * when Spring Boot detects it on the classpath. - */ -@AutoConfiguration -@ConditionalOnClass(GustoEmbedded.class) -@EnableConfigurationProperties(GustoEmbeddedAutoConfigProperties.class) -public class GustoEmbeddedAutoConfig { - - /** - * Constructor. - */ - public GustoEmbeddedAutoConfig() { - } - - /** - * Creates a RetryConfig bean from properties if retry is enabled. - * - * @param properties the configuration properties - * @return A configured RetryConfig instance - */ - @Bean - @ConditionalOnMissingBean - @ConditionalOnProperty(prefix = "GustoEmbedded.retry-config", name = "strategy") - public RetryConfig retryConfig(GustoEmbeddedAutoConfigProperties properties) { - GustoEmbeddedAutoConfigProperties.RetryConfig retryProps = properties.getRetryConfig(); - - if (RetryConfig.Strategy.BACKOFF.equals(retryProps.getStrategy())) { - GustoEmbeddedAutoConfigProperties.RetryConfig.Backoff backoff = retryProps.getBackoff(); - return RetryConfig.builder() - .backoff( - BackoffStrategy.builder() - .initialInterval(backoff.getInitialInterval().toMillis(), TimeUnit.MILLISECONDS) - .maxInterval(backoff.getMaxInterval().toMillis(), TimeUnit.MILLISECONDS) - .maxElapsedTime(backoff.getMaxElapsedTime().toMillis(), TimeUnit.MILLISECONDS) - .baseFactor(backoff.getBaseFactor()) - .jitterFactor(backoff.getJitterFactor()) - .retryConnectError(backoff.isRetryConnectError()) - .retryReadTimeoutError(backoff.isRetryReadTimeoutError()) - .build() - ) - .build(); - } - - // Default retry config for other strategies - return RetryConfig.builder().build(); - } - /** - * Creates a {@code Consumer} bean for HTTP debug logging if none exists. - * This logger is used by the SpeakeasyHTTPClient for debug output when debug logging is enabled. - * By default, it logs to {@code System.out}, but can be customized by providing your own {@code Consumer} bean. - * - * @return A {@code Consumer} that logs messages to {@code System.out} - */ - @Bean - @ConditionalOnMissingBean - public Consumer httpLogger() { - return System.out::println; - } - /** - * Creates an HTTPClient bean if none exists. - * - * @param properties the configuration properties - * @param httpLogger the logger for HTTP debug output - * @return A configured HTTPClient instance - */ - @Bean - @ConditionalOnMissingBean - public HTTPClient httpClient(GustoEmbeddedAutoConfigProperties properties, Consumer httpLogger) { - GustoEmbeddedAutoConfigProperties.HttpClient httpClientProps = properties.getHttpClient(); - - // Configure the static logger - SpeakeasyHTTPClient.setLogger(httpLogger); - - if (httpClientProps != null) { - // Configure debug logging - SpeakeasyHTTPClient.setDebugLogging(httpClientProps.isEnableDebugLogging()); - - // Configure redacted headers - if (httpClientProps.getRedactedHeaders() != null && !httpClientProps.getRedactedHeaders().isEmpty()) { - SpeakeasyHTTPClient.setRedactedHeaders(httpClientProps.getRedactedHeaders()); - } - } - - return new SpeakeasyHTTPClient(); - } - /** - * Creates a SecuritySource bean if none exists and security properties are configured. - * - * @param properties the configuration properties - * @return A configured SecuritySource instance - */ - @Bean - @ConditionalOnMissingBean - @ConditionalOnPropertyPrefix(prefix = "GustoEmbedded.security") - public SecuritySource securitySource(GustoEmbeddedAutoConfigProperties properties) {GustoEmbeddedAutoConfigProperties.Security securityProps = properties.getSecurity(); - com.gusto.embedded_api.models.components.Security.Builder securityBuilder = com.gusto.embedded_api.models.components.Security.builder(); - boolean hasAnySecurityConfiguration = false; - // Build CompanyAccessAuth security from direct properties (primitive value) - if (securityProps.getCompanyAccessAuth() != null) { - securityBuilder.companyAccessAuth(securityProps.getCompanyAccessAuth()); - hasAnySecurityConfiguration = true; - } - - if (!hasAnySecurityConfiguration) { - throw new IllegalStateException("Security configuration is present but no security options are configured. " + - "Please configure at least one security option in your application properties."); - } - - return SecuritySource.of(securityBuilder.build()); - } - - /** - * Creates the SDKConfiguration bean as the single source of truth for all SDK configuration. - * - * @param properties the configuration properties - * @param httpClient the HTTP client bean - * @param hooks the hooks bean - * @param asyncHooks the async hooks bean - * @param securitySource the security source bean (optional) - * @param retryConfig the retry config bean (optional) - * @return A configured SDKConfiguration instance - */ - @Bean - @ConditionalOnMissingBean - public SDKConfiguration sdkConfiguration( - GustoEmbeddedAutoConfigProperties properties, - HTTPClient httpClient, - com.gusto.embedded_api.utils.Hooks hooks, - com.gusto.embedded_api.utils.AsyncHooks asyncHooks, - SecuritySource securitySource, - Optional retryConfig) { - - SDKConfiguration sdkConfiguration = new SDKConfiguration(); - - sdkConfiguration.setClient(httpClient); - - sdkConfiguration.setHooks(hooks); - sdkConfiguration.setAsyncHooks(asyncHooks); - sdkConfiguration.setSecuritySource(securitySource); - - if (properties.getServerUrl() != null) { - sdkConfiguration.setServerUrl(properties.getServerUrl()); - } - if (properties.getServer() != null) { - sdkConfiguration.setServer(properties.getServer()); - } - - sdkConfiguration.setRetryConfig(retryConfig); - - return sdkConfiguration; - } - - /** - * Creates the main SDK bean using the configured SDKConfiguration. - * - * @param sdkConfiguration the configured SDKConfiguration bean - * @return A configured GustoEmbedded instance - */ - @Bean - @ConditionalOnMissingBean - public GustoEmbedded gustoEmbedded(SDKConfiguration sdkConfiguration) { - return new GustoEmbedded(sdkConfiguration); - } - - /** - * Creates an AsyncHooks bean if none exists. - * - * @return A configured AsyncHooks instance - */ - @Bean - @ConditionalOnMissingBean - public com.gusto.embedded_api.utils.AsyncHooks asyncHooks() { - return new com.gusto.embedded_api.utils.AsyncHooks(); - } - - /** - * Creates a ScheduledExecutorService for async retry operations if none exists. - * - * @return A configured ScheduledExecutorService instance - */ - @Bean - @ConditionalOnMissingBean - public ScheduledExecutorService retryScheduler() { - return Executors.newSingleThreadScheduledExecutor(); - } - - /** - * Creates a Hooks configuration bean if none exists. - * - * @return A configured Hooks instance - */ - @Bean - @ConditionalOnMissingBean - public com.gusto.embedded_api.utils.Hooks hooks() { - return new com.gusto.embedded_api.utils.Hooks(); - } - /** - * Creates a Introspection sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured Introspection instance - */ - @Bean - @ConditionalOnMissingBean - public Introspection introspection(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.introspection(); - } - /** - * Creates a Companies sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured Companies instance - */ - @Bean - @ConditionalOnMissingBean - public Companies companies(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.companies(); - } - /** - * Creates a Invoices sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured Invoices instance - */ - @Bean - @ConditionalOnMissingBean - public Invoices invoices(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.invoices(); - } - /** - * Creates a CompanyAttachments sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured CompanyAttachments instance - */ - @Bean - @ConditionalOnMissingBean - public CompanyAttachments companyAttachments(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.companyAttachments(); - } - /** - * Creates a CompanyAttachment sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured CompanyAttachment instance - */ - @Bean - @ConditionalOnMissingBean - public CompanyAttachment companyAttachment(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.companyAttachment(); - } - /** - * Creates a FederalTaxDetails sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured FederalTaxDetails instance - */ - @Bean - @ConditionalOnMissingBean - public FederalTaxDetails federalTaxDetails(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.federalTaxDetails(); - } - /** - * Creates a IndustrySelection sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured IndustrySelection instance - */ - @Bean - @ConditionalOnMissingBean - public IndustrySelection industrySelection(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.industrySelection(); - } - /** - * Creates a Signatories sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured Signatories instance - */ - @Bean - @ConditionalOnMissingBean - public Signatories signatories(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.signatories(); - } - /** - * Creates a Flows sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured Flows instance - */ - @Bean - @ConditionalOnMissingBean - public Flows flows(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.flows(); - } - /** - * Creates a Locations sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured Locations instance - */ - @Bean - @ConditionalOnMissingBean - public Locations locations(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.locations(); - } - /** - * Creates a BankAccounts sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured BankAccounts instance - */ - @Bean - @ConditionalOnMissingBean - public BankAccounts bankAccounts(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.bankAccounts(); - } - /** - * Creates a ExternalPayrolls sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured ExternalPayrolls instance - */ - @Bean - @ConditionalOnMissingBean - public ExternalPayrolls externalPayrolls(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.externalPayrolls(); - } - /** - * Creates a PaymentConfigs sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured PaymentConfigs instance - */ - @Bean - @ConditionalOnMissingBean - public PaymentConfigs paymentConfigs(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.paymentConfigs(); - } - /** - * Creates a PaySchedules sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured PaySchedules instance - */ - @Bean - @ConditionalOnMissingBean - public PaySchedules paySchedules(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.paySchedules(); - } - /** - * Creates a Employees sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured Employees instance - */ - @Bean - @ConditionalOnMissingBean - public Employees employees(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.employees(); - } - /** - * Creates a HistoricalEmployees sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured HistoricalEmployees instance - */ - @Bean - @ConditionalOnMissingBean - public HistoricalEmployees historicalEmployees(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.historicalEmployees(); - } - /** - * Creates a Departments sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured Departments instance - */ - @Bean - @ConditionalOnMissingBean - public Departments departments(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.departments(); - } - /** - * Creates a EmployeeEmployments sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured EmployeeEmployments instance - */ - @Bean - @ConditionalOnMissingBean - public EmployeeEmployments employeeEmployments(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.employeeEmployments(); - } - /** - * Creates a EmployeeAddresses sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured EmployeeAddresses instance - */ - @Bean - @ConditionalOnMissingBean - public EmployeeAddresses employeeAddresses(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.employeeAddresses(); - } - /** - * Creates a EmployeeTaxSetup sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured EmployeeTaxSetup instance - */ - @Bean - @ConditionalOnMissingBean - public EmployeeTaxSetup employeeTaxSetup(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.employeeTaxSetup(); - } - /** - * Creates a EmployeePaymentMethods sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured EmployeePaymentMethods instance - */ - @Bean - @ConditionalOnMissingBean - public EmployeePaymentMethods employeePaymentMethods(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.employeePaymentMethods(); - } - /** - * Creates a EmployeePaymentMethod sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured EmployeePaymentMethod instance - */ - @Bean - @ConditionalOnMissingBean - public EmployeePaymentMethod employeePaymentMethod(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.employeePaymentMethod(); - } - /** - * Creates a JobsAndCompensations sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured JobsAndCompensations instance - */ - @Bean - @ConditionalOnMissingBean - public JobsAndCompensations jobsAndCompensations(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.jobsAndCompensations(); - } - /** - * Creates a EarningTypes sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured EarningTypes instance - */ - @Bean - @ConditionalOnMissingBean - public EarningTypes earningTypes(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.earningTypes(); - } - /** - * Creates a Contractors sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured Contractors instance - */ - @Bean - @ConditionalOnMissingBean - public Contractors contractors(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.contractors(); - } - /** - * Creates a ContractorPaymentMethod sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured ContractorPaymentMethod instance - */ - @Bean - @ConditionalOnMissingBean - public ContractorPaymentMethod contractorPaymentMethod(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.contractorPaymentMethod(); - } - /** - * Creates a ContractorPaymentMethods sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured ContractorPaymentMethods instance - */ - @Bean - @ConditionalOnMissingBean - public ContractorPaymentMethods contractorPaymentMethods(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.contractorPaymentMethods(); - } - /** - * Creates a Webhooks sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured Webhooks instance - */ - @Bean - @ConditionalOnMissingBean - public Webhooks webhooks(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.webhooks(); - } - /** - * Creates a ContractorForms sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured ContractorForms instance - */ - @Bean - @ConditionalOnMissingBean - public ContractorForms contractorForms(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.contractorForms(); - } - /** - * Creates a ContractorDocuments sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured ContractorDocuments instance - */ - @Bean - @ConditionalOnMissingBean - public ContractorDocuments contractorDocuments(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.contractorDocuments(); - } - /** - * Creates a EmployeeForms sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured EmployeeForms instance - */ - @Bean - @ConditionalOnMissingBean - public EmployeeForms employeeForms(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.employeeForms(); - } - /** - * Creates a Payrolls sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured Payrolls instance - */ - @Bean - @ConditionalOnMissingBean - public Payrolls payrolls(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.payrolls(); - } - /** - * Creates a TimeOffPolicies sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured TimeOffPolicies instance - */ - @Bean - @ConditionalOnMissingBean - public TimeOffPolicies timeOffPolicies(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.timeOffPolicies(); - } - /** - * Creates a ContractorPayments sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured ContractorPayments instance - */ - @Bean - @ConditionalOnMissingBean - public ContractorPayments contractorPayments(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.contractorPayments(); - } - /** - * Creates a ContractorPaymentGroups sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured ContractorPaymentGroups instance - */ - @Bean - @ConditionalOnMissingBean - public ContractorPaymentGroups contractorPaymentGroups(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.contractorPaymentGroups(); - } - /** - * Creates a CompanyForms sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured CompanyForms instance - */ - @Bean - @ConditionalOnMissingBean - public CompanyForms companyForms(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.companyForms(); - } - /** - * Creates a GeneratedDocuments sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured GeneratedDocuments instance - */ - @Bean - @ConditionalOnMissingBean - public GeneratedDocuments generatedDocuments(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.generatedDocuments(); - } - /** - * Creates a Reports sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured Reports instance - */ - @Bean - @ConditionalOnMissingBean - public Reports reports(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.reports(); - } - /** - * Creates a CompanyBenefits sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured CompanyBenefits instance - */ - @Bean - @ConditionalOnMissingBean - public CompanyBenefits companyBenefits(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.companyBenefits(); - } - /** - * Creates a EmployeeBenefits sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured EmployeeBenefits instance - */ - @Bean - @ConditionalOnMissingBean - public EmployeeBenefits employeeBenefits(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.employeeBenefits(); - } - /** - * Creates a Garnishments sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured Garnishments instance - */ - @Bean - @ConditionalOnMissingBean - public Garnishments garnishments(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.garnishments(); - } - /** - * Creates a I9Verification sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured I9Verification instance - */ - @Bean - @ConditionalOnMissingBean - public I9Verification i9Verification(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.i9Verification(); - } - /** - * Creates a TaxRequirements sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured TaxRequirements instance - */ - @Bean - @ConditionalOnMissingBean - public TaxRequirements taxRequirements(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.taxRequirements(); - } - /** - * Creates a HolidayPayPolicies sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured HolidayPayPolicies instance - */ - @Bean - @ConditionalOnMissingBean - public HolidayPayPolicies holidayPayPolicies(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.holidayPayPolicies(); - } - /** - * Creates a Notifications sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured Notifications instance - */ - @Bean - @ConditionalOnMissingBean - public Notifications notifications(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.notifications(); - } - /** - * Creates a Events sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured Events instance - */ - @Bean - @ConditionalOnMissingBean - public Events events(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.events(); - } - /** - * Creates a InformationRequests sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured InformationRequests instance - */ - @Bean - @ConditionalOnMissingBean - public InformationRequests informationRequests(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.informationRequests(); - } - /** - * Creates a RecoveryCases sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured RecoveryCases instance - */ - @Bean - @ConditionalOnMissingBean - public RecoveryCases recoveryCases(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.recoveryCases(); - } - /** - * Creates a AchTransactions sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured AchTransactions instance - */ - @Bean - @ConditionalOnMissingBean - public AchTransactions achTransactions(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.achTransactions(); - } - /** - * Creates a WireInRequests sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured WireInRequests instance - */ - @Bean - @ConditionalOnMissingBean - public WireInRequests wireInRequests(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.wireInRequests(); - } - /** - * Creates a SalaryEstimates sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured SalaryEstimates instance - */ - @Bean - @ConditionalOnMissingBean - public SalaryEstimates salaryEstimates(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.salaryEstimates(); - } - /** - * Creates a Reimbursements sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured Reimbursements instance - */ - @Bean - @ConditionalOnMissingBean - public Reimbursements reimbursements(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.reimbursements(); - } - /** - * Creates a PeopleBatches sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured PeopleBatches instance - */ - @Bean - @ConditionalOnMissingBean - public PeopleBatches peopleBatches(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.peopleBatches(); - } - /** - * Creates a TimeOffRequests sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured TimeOffRequests instance - */ - @Bean - @ConditionalOnMissingBean - public TimeOffRequests timeOffRequests(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.timeOffRequests(); - } - /** - * Creates a PayrollDigests sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured PayrollDigests instance - */ - @Bean - @ConditionalOnMissingBean - public PayrollDigests payrollDigests(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.payrollDigests(); - } - - /** - * Creates the async SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @param sdkConfiguration the configured SDKConfiguration bean - * @return A configured AsyncGustoEmbedded instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncGustoEmbedded asyncGustoEmbedded(GustoEmbedded gustoEmbedded, SDKConfiguration sdkConfiguration) { - return new AsyncGustoEmbedded(gustoEmbedded, sdkConfiguration); - } - /** - * Creates an AsyncIntrospection sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncIntrospection instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncIntrospection asyncIntrospection(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.introspection(); - } - /** - * Creates an AsyncCompanies sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncCompanies instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncCompanies asyncCompanies(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.companies(); - } - /** - * Creates an AsyncInvoices sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncInvoices instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncInvoices asyncInvoices(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.invoices(); - } - /** - * Creates an AsyncCompanyAttachments sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncCompanyAttachments instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncCompanyAttachments asyncCompanyAttachments(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.companyAttachments(); - } - /** - * Creates an AsyncCompanyAttachment sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncCompanyAttachment instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncCompanyAttachment asyncCompanyAttachment(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.companyAttachment(); - } - /** - * Creates an AsyncFederalTaxDetails sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncFederalTaxDetails instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncFederalTaxDetails asyncFederalTaxDetails(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.federalTaxDetails(); - } - /** - * Creates an AsyncIndustrySelection sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncIndustrySelection instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncIndustrySelection asyncIndustrySelection(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.industrySelection(); - } - /** - * Creates an AsyncSignatories sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncSignatories instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncSignatories asyncSignatories(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.signatories(); - } - /** - * Creates an AsyncFlows sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncFlows instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncFlows asyncFlows(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.flows(); - } - /** - * Creates an AsyncLocations sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncLocations instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncLocations asyncLocations(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.locations(); - } - /** - * Creates an AsyncBankAccounts sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncBankAccounts instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncBankAccounts asyncBankAccounts(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.bankAccounts(); - } - /** - * Creates an AsyncExternalPayrolls sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncExternalPayrolls instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncExternalPayrolls asyncExternalPayrolls(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.externalPayrolls(); - } - /** - * Creates an AsyncPaymentConfigs sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncPaymentConfigs instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncPaymentConfigs asyncPaymentConfigs(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.paymentConfigs(); - } - /** - * Creates an AsyncPaySchedules sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncPaySchedules instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncPaySchedules asyncPaySchedules(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.paySchedules(); - } - /** - * Creates an AsyncEmployees sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncEmployees instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncEmployees asyncEmployees(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.employees(); - } - /** - * Creates an AsyncHistoricalEmployees sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncHistoricalEmployees instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncHistoricalEmployees asyncHistoricalEmployees(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.historicalEmployees(); - } - /** - * Creates an AsyncDepartments sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncDepartments instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncDepartments asyncDepartments(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.departments(); - } - /** - * Creates an AsyncEmployeeEmployments sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncEmployeeEmployments instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncEmployeeEmployments asyncEmployeeEmployments(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.employeeEmployments(); - } - /** - * Creates an AsyncEmployeeAddresses sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncEmployeeAddresses instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncEmployeeAddresses asyncEmployeeAddresses(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.employeeAddresses(); - } - /** - * Creates an AsyncEmployeeTaxSetup sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncEmployeeTaxSetup instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncEmployeeTaxSetup asyncEmployeeTaxSetup(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.employeeTaxSetup(); - } - /** - * Creates an AsyncEmployeePaymentMethods sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncEmployeePaymentMethods instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncEmployeePaymentMethods asyncEmployeePaymentMethods(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.employeePaymentMethods(); - } - /** - * Creates an AsyncEmployeePaymentMethod sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncEmployeePaymentMethod instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncEmployeePaymentMethod asyncEmployeePaymentMethod(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.employeePaymentMethod(); - } - /** - * Creates an AsyncJobsAndCompensations sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncJobsAndCompensations instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncJobsAndCompensations asyncJobsAndCompensations(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.jobsAndCompensations(); - } - /** - * Creates an AsyncEarningTypes sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncEarningTypes instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncEarningTypes asyncEarningTypes(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.earningTypes(); - } - /** - * Creates an AsyncContractors sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncContractors instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncContractors asyncContractors(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.contractors(); - } - /** - * Creates an AsyncContractorPaymentMethod sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncContractorPaymentMethod instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncContractorPaymentMethod asyncContractorPaymentMethod(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.contractorPaymentMethod(); - } - /** - * Creates an AsyncContractorPaymentMethods sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncContractorPaymentMethods instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncContractorPaymentMethods asyncContractorPaymentMethods(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.contractorPaymentMethods(); - } - /** - * Creates an AsyncWebhooks sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncWebhooks instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncWebhooks asyncWebhooks(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.webhooks(); - } - /** - * Creates an AsyncContractorForms sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncContractorForms instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncContractorForms asyncContractorForms(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.contractorForms(); - } - /** - * Creates an AsyncContractorDocuments sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncContractorDocuments instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncContractorDocuments asyncContractorDocuments(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.contractorDocuments(); - } - /** - * Creates an AsyncEmployeeForms sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncEmployeeForms instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncEmployeeForms asyncEmployeeForms(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.employeeForms(); - } - /** - * Creates an AsyncPayrolls sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncPayrolls instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncPayrolls asyncPayrolls(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.payrolls(); - } - /** - * Creates an AsyncTimeOffPolicies sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncTimeOffPolicies instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncTimeOffPolicies asyncTimeOffPolicies(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.timeOffPolicies(); - } - /** - * Creates an AsyncContractorPayments sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncContractorPayments instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncContractorPayments asyncContractorPayments(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.contractorPayments(); - } - /** - * Creates an AsyncContractorPaymentGroups sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncContractorPaymentGroups instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncContractorPaymentGroups asyncContractorPaymentGroups(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.contractorPaymentGroups(); - } - /** - * Creates an AsyncCompanyForms sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncCompanyForms instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncCompanyForms asyncCompanyForms(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.companyForms(); - } - /** - * Creates an AsyncGeneratedDocuments sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncGeneratedDocuments instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncGeneratedDocuments asyncGeneratedDocuments(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.generatedDocuments(); - } - /** - * Creates an AsyncReports sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncReports instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncReports asyncReports(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.reports(); - } - /** - * Creates an AsyncCompanyBenefits sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncCompanyBenefits instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncCompanyBenefits asyncCompanyBenefits(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.companyBenefits(); - } - /** - * Creates an AsyncEmployeeBenefits sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncEmployeeBenefits instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncEmployeeBenefits asyncEmployeeBenefits(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.employeeBenefits(); - } - /** - * Creates an AsyncGarnishments sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncGarnishments instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncGarnishments asyncGarnishments(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.garnishments(); - } - /** - * Creates an AsyncI9Verification sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncI9Verification instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncI9Verification asyncI9Verification(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.i9Verification(); - } - /** - * Creates an AsyncTaxRequirements sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncTaxRequirements instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncTaxRequirements asyncTaxRequirements(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.taxRequirements(); - } - /** - * Creates an AsyncHolidayPayPolicies sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncHolidayPayPolicies instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncHolidayPayPolicies asyncHolidayPayPolicies(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.holidayPayPolicies(); - } - /** - * Creates an AsyncNotifications sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncNotifications instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncNotifications asyncNotifications(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.notifications(); - } - /** - * Creates an AsyncEvents sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncEvents instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncEvents asyncEvents(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.events(); - } - /** - * Creates an AsyncInformationRequests sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncInformationRequests instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncInformationRequests asyncInformationRequests(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.informationRequests(); - } - /** - * Creates an AsyncRecoveryCases sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncRecoveryCases instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncRecoveryCases asyncRecoveryCases(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.recoveryCases(); - } - /** - * Creates an AsyncAchTransactions sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncAchTransactions instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncAchTransactions asyncAchTransactions(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.achTransactions(); - } - /** - * Creates an AsyncWireInRequests sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncWireInRequests instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncWireInRequests asyncWireInRequests(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.wireInRequests(); - } - /** - * Creates an AsyncSalaryEstimates sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncSalaryEstimates instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncSalaryEstimates asyncSalaryEstimates(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.salaryEstimates(); - } - /** - * Creates an AsyncReimbursements sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncReimbursements instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncReimbursements asyncReimbursements(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.reimbursements(); - } - /** - * Creates an AsyncPeopleBatches sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncPeopleBatches instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncPeopleBatches asyncPeopleBatches(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.peopleBatches(); - } - /** - * Creates an AsyncTimeOffRequests sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncTimeOffRequests instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncTimeOffRequests asyncTimeOffRequests(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.timeOffRequests(); - } - /** - * Creates an AsyncPayrollDigests sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncPayrollDigests instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncPayrollDigests asyncPayrollDigests(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.payrollDigests(); - } -} \ No newline at end of file diff --git a/gusto_embedded/spring/GustoEmbedded-spring-boot-autoconfigure/src/main/java/com/gusto/embedded_api/GustoEmbeddedAutoConfigProperties.java b/gusto_embedded/spring/GustoEmbedded-spring-boot-autoconfigure/src/main/java/com/gusto/embedded_api/GustoEmbeddedAutoConfigProperties.java deleted file mode 100644 index d7a6ef45f..000000000 --- a/gusto_embedded/spring/GustoEmbedded-spring-boot-autoconfigure/src/main/java/com/gusto/embedded_api/GustoEmbeddedAutoConfigProperties.java +++ /dev/null @@ -1,460 +0,0 @@ -/* - * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - */ -package com.gusto.embedded_api; - -import org.springframework.boot.context.properties.ConfigurationProperties; - -import java.time.Duration; -import java.lang.String; -import java.util.Collection; -import java.util.Set; - - -/** - * Spring Boot Configuration Properties for GustoEmbedded SDK - */ -@ConfigurationProperties(prefix = "GustoEmbedded") -public class GustoEmbeddedAutoConfigProperties { - - /** - * Constructor. - */ - public GustoEmbeddedAutoConfigProperties() { - } - - /** - * The base URL for the API server. If not specified, the SDK will use the default server URL. - */ - private String serverUrl; - - /** - * Configuration for retry behavior when API calls fail due to transient errors. - */ - private RetryConfig retryConfig = new RetryConfig(); - - /** - * HTTP client configuration for API requests. - */ - private HttpClient httpClient = new HttpClient(); - /** - * The name of the server to use from the available server configurations defined in the OpenAPI specification. - */ - private String server; - /** - * Security configuration for API authentication. - */ - private Security security = new Security(); - - /** - * Gets the base URL for the API server. - * - * @return the base URL for the API server - */ - public String getServerUrl() { - return serverUrl; - } - - /** - * Sets the base URL for the API server. - * - * @param serverUrl the base URL for the API server - */ - public void setServerUrl(String serverUrl) { - this.serverUrl = serverUrl; - } - - /** - * Gets the retry configuration for API calls that fail due to transient errors. - * - * @return the retry configuration - */ - public RetryConfig getRetryConfig() { - return retryConfig; - } - - /** - * Sets the retry configuration for API calls that fail due to transient errors. - * - * @param retryConfig the retry configuration to use - */ - public void setRetryConfig(RetryConfig retryConfig) { - this.retryConfig = retryConfig; - } - - /** - * Gets the HTTP client configuration for API requests. - * - * @return the HTTP client configuration - */ - public HttpClient getHttpClient() { - return httpClient; - } - - /** - * Sets the HTTP client configuration for API requests. - * - * @param httpClient the HTTP client configuration to use - */ - public void setHttpClient(HttpClient httpClient) { - this.httpClient = httpClient; - } - /** - * Gets the name of the server to use from the available server configurations. - * - * @return the server name - */ - public String getServer() { - return server; - } - - /** - * Sets the name of the server to use from the available server configurations. - * - * @param server the server name to use - */ - public void setServer(String server) { - this.server = server; - } - /** - * Gets the security configuration for API authentication. - * - * @return the security configuration - */ - public Security getSecurity() { - return security; - } - - /** - * Sets the security configuration for API authentication. - * - * @param security the security configuration to use - */ - public void setSecurity(Security security) { - this.security = security; - } - - /** - * Retry configuration properties - */ - public static class RetryConfig { - - /** - * Constructor. - */ - public RetryConfig() { - } - - /** - * The retry strategy to use for failed requests. - */ - private com.gusto.embedded_api.utils.RetryConfig.Strategy strategy; - - /** - * Configuration for exponential backoff retry strategy. Only used when strategy is set to BACKOFF. - */ - private Backoff backoff = new Backoff(); - - /** - * Gets the retry strategy to use for failed requests. - * - * @return the retry strategy - */ - public com.gusto.embedded_api.utils.RetryConfig.Strategy getStrategy() { - return strategy; - } - - /** - * Sets the retry strategy to use for failed requests. - * - * @param strategy the retry strategy to use - */ - public void setStrategy(com.gusto.embedded_api.utils.RetryConfig.Strategy strategy) { - this.strategy = strategy; - } - - /** - * Gets the backoff configuration for exponential backoff retry strategy. - * - * @return the backoff configuration - */ - public Backoff getBackoff() { - return backoff; - } - - /** - * Sets the backoff configuration for exponential backoff retry strategy. - * - * @param backoff the backoff configuration to use - */ - public void setBackoff(Backoff backoff) { - this.backoff = backoff; - } - - /** - * Backoff retry configuration matching BackoffStrategy fields - */ - public static class Backoff { - - /** - * Constructor. - */ - public Backoff() { - } - - /** - * The initial delay before the first retry attempt. Supports duration formats like "500ms", "1s", "2m". - */ - private Duration initialInterval = Duration.ofMillis(500); - - /** - * The maximum delay between retry attempts. The backoff will not exceed this value. - */ - private Duration maxInterval = Duration.ofSeconds(60); - - /** - * The maximum total time to spend on all retry attempts. Retries will stop after this duration. - */ - private Duration maxElapsedTime = Duration.ofHours(1); - - /** - * The multiplier for exponential backoff. Each retry delay is multiplied by this factor (e.g., 1.5 means 50% increase). - */ - private double baseFactor = 1.5; - - /** - * Random jitter factor to avoid thundering herd problems. Value between 0.0 (no jitter) and 1.0 (full jitter). - */ - private double jitterFactor = 0.5; - - /** - * Whether to retry requests that fail due to connection errors (e.g., connection refused, timeout). - */ - private boolean retryConnectError = false; - - /** - * Whether to retry requests that fail due to read timeout errors (server doesn't respond within timeout). - */ - private boolean retryReadTimeoutError = false; - - /** - * Gets the initial delay before the first retry attempt. - * - * @return the initial delay duration - */ - public Duration getInitialInterval() { - return initialInterval; - } - - /** - * Sets the initial delay before the first retry attempt. - * - * @param initialInterval the initial delay duration - */ - public void setInitialInterval(Duration initialInterval) { - this.initialInterval = initialInterval; - } - - /** - * Gets the maximum delay between retry attempts. - * - * @return the maximum delay duration - */ - public Duration getMaxInterval() { - return maxInterval; - } - - /** - * Sets the maximum delay between retry attempts. - * - * @param maxInterval the maximum delay duration - */ - public void setMaxInterval(Duration maxInterval) { - this.maxInterval = maxInterval; - } - - /** - * Gets the maximum total time to spend on all retry attempts. - * - * @return the maximum elapsed time duration - */ - public Duration getMaxElapsedTime() { - return maxElapsedTime; - } - - /** - * Sets the maximum total time to spend on all retry attempts. - * - * @param maxElapsedTime the maximum elapsed time duration - */ - public void setMaxElapsedTime(Duration maxElapsedTime) { - this.maxElapsedTime = maxElapsedTime; - } - - /** - * Gets the multiplier for exponential backoff. - * - * @return the base factor for exponential backoff - */ - public double getBaseFactor() { - return baseFactor; - } - - /** - * Sets the multiplier for exponential backoff. - * - * @param baseFactor the base factor for exponential backoff - */ - public void setBaseFactor(double baseFactor) { - this.baseFactor = baseFactor; - } - - /** - * Gets the random jitter factor to avoid thundering herd problems. - * - * @return the jitter factor (0.0 to 1.0) - */ - public double getJitterFactor() { - return jitterFactor; - } - - /** - * Sets the random jitter factor to avoid thundering herd problems. - * - * @param jitterFactor the jitter factor (0.0 to 1.0) - */ - public void setJitterFactor(double jitterFactor) { - this.jitterFactor = jitterFactor; - } - - /** - * Gets whether to retry requests that fail due to connection errors. - * - * @return true if connection errors should be retried, false otherwise - */ - public boolean isRetryConnectError() { - return retryConnectError; - } - - /** - * Sets whether to retry requests that fail due to connection errors. - * - * @param retryConnectError true to retry connection errors, false otherwise - */ - public void setRetryConnectError(boolean retryConnectError) { - this.retryConnectError = retryConnectError; - } - - /** - * Gets whether to retry requests that fail due to read timeout errors. - * - * @return true if read timeout errors should be retried, false otherwise - */ - public boolean isRetryReadTimeoutError() { - return retryReadTimeoutError; - } - - /** - * Sets whether to retry requests that fail due to read timeout errors. - * - * @param retryReadTimeoutError true to retry read timeout errors, false otherwise - */ - public void setRetryReadTimeoutError(boolean retryReadTimeoutError) { - this.retryReadTimeoutError = retryReadTimeoutError; - } - } - } - - /** - * HTTP client configuration properties - */ - public static class HttpClient { - - /** - * Constructor. - */ - public HttpClient() { - } - - /** - * Whether to enable debug logging for HTTP requests and responses, including JSON body content. - */ - private boolean enableDebugLogging = false; - - /** - * Collection of header names (case-insensitive) whose values will be redacted in debug logs. - * By default, Authorization and X-API-KEY headers are redacted for security. - */ - private Collection redactedHeaders = Set.of("Authorization", "X-API-KEY"); - - /** - * Gets whether debug logging is enabled for HTTP requests and responses. - * - * @return true if debug logging is enabled, false otherwise - */ - public boolean isEnableDebugLogging() { - return enableDebugLogging; - } - - /** - * Sets whether to enable debug logging for HTTP requests and responses. - * - * @param enableDebugLogging true to enable debug logging, false otherwise - */ - public void setEnableDebugLogging(boolean enableDebugLogging) { - this.enableDebugLogging = enableDebugLogging; - } - - /** - * Gets the collection of header names whose values will be redacted in debug logs. - * - * @return the collection of header names to redact - */ - public Collection getRedactedHeaders() { - return redactedHeaders; - } - - /** - * Sets the collection of header names whose values will be redacted in debug logs. - * - * @param redactedHeaders the collection of header names to redact - */ - public void setRedactedHeaders(Collection redactedHeaders) { - this.redactedHeaders = redactedHeaders; - } - } - - /** - * Security configuration properties - */ - public static class Security { - - /** - * Constructor. - */ - public Security() { - } - /** - * CompanyAccessAuth for authentication. - */ - private String companyAccessAuth; - - /** - * Gets the CompanyAccessAuth value. - * - * @return the CompanyAccessAuth value - */ - public String getCompanyAccessAuth() { - return companyAccessAuth; - } - - /** - * Sets the CompanyAccessAuth value. - * - * @param companyAccessAuth the CompanyAccessAuth value to use - */ - public void setCompanyAccessAuth(String companyAccessAuth) { - this.companyAccessAuth = companyAccessAuth; - } - } -} \ No newline at end of file diff --git a/gusto_embedded/spring/GustoEmbedded-spring-boot-autoconfigure/src/main/java/com/gusto/embedded_api/OnPropertyPrefixCondition.java b/gusto_embedded/spring/GustoEmbedded-spring-boot-autoconfigure/src/main/java/com/gusto/embedded_api/OnPropertyPrefixCondition.java deleted file mode 100644 index ff6bfc5fb..000000000 --- a/gusto_embedded/spring/GustoEmbedded-spring-boot-autoconfigure/src/main/java/com/gusto/embedded_api/OnPropertyPrefixCondition.java +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - */ -package com.gusto.embedded_api; - -import org.springframework.boot.autoconfigure.condition.ConditionMessage; -import org.springframework.boot.autoconfigure.condition.ConditionOutcome; -import org.springframework.boot.autoconfigure.condition.SpringBootCondition; -import org.springframework.boot.context.properties.bind.Binder; -import org.springframework.context.annotation.ConditionContext; -import org.springframework.core.type.AnnotatedTypeMetadata; -import org.springframework.core.env.Environment; - -import java.util.Map; - -/** - * Custom condition that checks if any properties exist under a given prefix. - * This is used to conditionally create beans only when configuration properties - * are present under a specific prefix. - */ -public class OnPropertyPrefixCondition extends SpringBootCondition { - - /** - * Default constructor for OnPropertyPrefixCondition. - */ - public OnPropertyPrefixCondition() { - // Default constructor - } - - @Override - public ConditionOutcome getMatchOutcome(ConditionContext context, AnnotatedTypeMetadata metadata) { - Map attributes = metadata.getAnnotationAttributes(ConditionalOnPropertyPrefix.class.getName()); - if (attributes == null) { - return ConditionOutcome.noMatch("@ConditionalOnPropertyPrefix annotation not found"); - } - - String prefix = (String) attributes.get("prefix"); - if (prefix == null || prefix.isEmpty()) { - return ConditionOutcome.noMatch("Property prefix is empty"); - } - - Environment environment = context.getEnvironment(); - - // Check if any properties exist under the given prefix - boolean hasPropertiesUnderPrefix = hasPropertiesWithPrefix(environment, prefix); - - ConditionMessage.Builder message = ConditionMessage.forCondition(ConditionalOnPropertyPrefix.class, prefix); - - if (hasPropertiesUnderPrefix) { - return ConditionOutcome.match(message.found("properties").items(prefix + ".*")); - } else { - return ConditionOutcome.noMatch(message.didNotFind("properties").items(prefix + ".*")); - } - } - - private boolean hasPropertiesWithPrefix(Environment environment, String prefix) { - try { - // Use Spring Boot's Binder to check if any properties exist under the prefix - Binder binder = Binder.get(environment); - - // Try to bind to a Map to see if any properties exist under the prefix - return binder.bind(prefix, Map.class).isBound(); - } catch (Exception e) { - // If we can't determine, assume no properties exist - return false; - } - } -} \ No newline at end of file diff --git a/gusto_embedded/spring/GustoEmbedded-spring-boot-autoconfigure/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports b/gusto_embedded/spring/GustoEmbedded-spring-boot-autoconfigure/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports deleted file mode 100644 index f26c5593f..000000000 --- a/gusto_embedded/spring/GustoEmbedded-spring-boot-autoconfigure/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports +++ /dev/null @@ -1 +0,0 @@ -com.gusto.embedded_api.GustoEmbeddedAutoConfig \ No newline at end of file diff --git a/gusto_embedded/spring/GustoEmbedded-spring-boot-starter/build.gradle b/gusto_embedded/spring/GustoEmbedded-spring-boot-starter/build.gradle deleted file mode 100644 index 2111bc5aa..000000000 --- a/gusto_embedded/spring/GustoEmbedded-spring-boot-starter/build.gradle +++ /dev/null @@ -1,29 +0,0 @@ -description = 'GustoEmbedded Spring Boot Starter' - -// Publishing configuration overrides -ext { - publishingConfig = [ - groupId: rootProject.group, - artifactId: 'GustoEmbedded-spring-boot-starter', - version: rootProject.version, - name: 'Gusto Java SDK - Spring Boot Starter', - description: 'Spring Boot starter for the Gusto Java SDK.', - ] -} - -dependencies { - api project(':') - api project(':GustoEmbedded-spring-boot-autoconfigure') - api "org.springframework.boot:spring-boot-starter:${rootProject.springBootVersion}" -} - -jar { - dependsOn 'generatePomFileForMavenPublication' - archiveBaseName = 'GustoEmbedded-spring-boot-starter' - into("META-INF/maven/com.gusto/GustoEmbedded-spring-boot-starter") { - from(layout.buildDirectory.file("pom.xml")) { - // Only include if it exists to avoid build ordering issues - duplicatesStrategy = DuplicatesStrategy.INCLUDE - } - } -} \ No newline at end of file diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncCompanies.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncCompanies.java index 226825e4c..ea43c6e03 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncCompanies.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncCompanies.java @@ -10,7 +10,6 @@ import com.gusto.embedded_api.models.components.PartnerManagedCompanyCreateRequest; import com.gusto.embedded_api.models.components.PartnerManagedCompanyMigrateRequest; import com.gusto.embedded_api.models.components.PartnerManagedCompanyRetrieveTermsOfServiceRequest; -import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion; import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdAdminsRequest; import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdCustomFieldsHeaderXGustoAPIVersion; import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdCustomFieldsRequest; @@ -22,6 +21,7 @@ import com.gusto.embedded_api.models.operations.GetV1CompanyOnboardingStatusRequest; import com.gusto.embedded_api.models.operations.GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessHeaderXGustoAPIVersion; import com.gusto.embedded_api.models.operations.GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest; +import com.gusto.embedded_api.models.operations.HeaderXGustoAPIVersion; import com.gusto.embedded_api.models.operations.PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceHeaderXGustoAPIVersion; import com.gusto.embedded_api.models.operations.PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest; import com.gusto.embedded_api.models.operations.PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceHeaderXGustoAPIVersion; @@ -34,6 +34,9 @@ import com.gusto.embedded_api.models.operations.PutV1CompaniesHeaderXGustoAPIVersion; import com.gusto.embedded_api.models.operations.PutV1CompaniesRequest; import com.gusto.embedded_api.models.operations.PutV1CompaniesRequestBody; +import com.gusto.embedded_api.models.operations.PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest; +import com.gusto.embedded_api.models.operations.PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity; import com.gusto.embedded_api.models.operations.PutV1PartnerManagedCompaniesCompanyUuidMigrateHeaderXGustoAPIVersion; import com.gusto.embedded_api.models.operations.PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest; import com.gusto.embedded_api.models.operations.async.GetV1CompaniesCompanyIdAdminsRequestBuilder; @@ -58,6 +61,8 @@ import com.gusto.embedded_api.models.operations.async.PostV1PartnerManagedCompaniesResponse; import com.gusto.embedded_api.models.operations.async.PutV1CompaniesRequestBuilder; import com.gusto.embedded_api.models.operations.async.PutV1CompaniesResponse; +import com.gusto.embedded_api.models.operations.async.PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder; +import com.gusto.embedded_api.models.operations.async.PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse; import com.gusto.embedded_api.models.operations.async.PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder; import com.gusto.embedded_api.models.operations.async.PutV1PartnerManagedCompaniesCompanyUuidMigrateResponse; import com.gusto.embedded_api.operations.GetV1Companies; @@ -71,6 +76,7 @@ import com.gusto.embedded_api.operations.PostV1CompaniesCompanyIdAdmins; import com.gusto.embedded_api.operations.PostV1PartnerManagedCompanies; import com.gusto.embedded_api.operations.PutV1Companies; +import com.gusto.embedded_api.operations.PutV1PartnerManagedCompaniesCompanyUuidDisassociate; import com.gusto.embedded_api.operations.PutV1PartnerManagedCompaniesCompanyUuidMigrate; import com.gusto.embedded_api.utils.Headers; import java.lang.Long; @@ -106,95 +112,135 @@ public Companies sync() { /** - * Create a partner managed company + * Get all the admins at a company * - *

    Create a partner managed company. When you successfully call the API, it does the following: - * * Creates a new company in Gusto - * * Creates a new user using the provided email if the user does not already exist. - * * Makes the user the primary payroll administrator of the new company. + *

    Returns a list of all the admins at a company * - *

    In response, you will receive oauth access tokens for the created company. + *

    scope: `company_admin:read` * - *

    IMPORTANT: the returned access and refresh tokens are reserved for this company only. They cannot be - * used to access other companies AND previously granted tokens cannot be used to access this company. + *

    If set, this operation will use Security#companyAccessAuth from the global security. * - *

    📘 System Access Authentication + * @return The async call builder + */ + public GetV1CompaniesCompanyIdAdminsRequestBuilder listAdmins() { + return new GetV1CompaniesCompanyIdAdminsRequestBuilder(sdkConfiguration); + } + + /** + * Get all the admins at a company * - *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP - * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + *

    Returns a list of all the admins at a company * - *

    scope: `partner_managed_companies:manage` + *

    scope: `company_admin:read` * - * @return The async call builder + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param companyId The UUID of the company + * @return {@code CompletableFuture} - The async response */ - public PostV1PartnerManagedCompaniesRequestBuilder createPartnerManaged() { - return new PostV1PartnerManagedCompaniesRequestBuilder(sdkConfiguration); + public CompletableFuture listAdmins(String companyId) { + return listAdmins( + Optional.empty(), companyId, Optional.empty(), + Optional.empty()); } /** - * Create a partner managed company + * Get all the admins at a company * - *

    Create a partner managed company. When you successfully call the API, it does the following: - * * Creates a new company in Gusto - * * Creates a new user using the provided email if the user does not already exist. - * * Makes the user the primary payroll administrator of the new company. + *

    Returns a list of all the admins at a company * - *

    In response, you will receive oauth access tokens for the created company. + *

    scope: `company_admin:read` * - *

    IMPORTANT: the returned access and refresh tokens are reserved for this company only. They cannot be - * used to access other companies AND previously granted tokens cannot be used to access this company. + *

    If set, this operation will use Security#companyAccessAuth from the global security. * - *

    📘 System Access Authentication + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company + * @param page The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + * @param per Number of objects per page. For majority of endpoints will default to 25 + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture listAdmins( + Optional xGustoAPIVersion, String companyId, + Optional page, Optional per) { + GetV1CompaniesCompanyIdAdminsRequest request = + GetV1CompaniesCompanyIdAdminsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) + .page(page) + .per(per) + .build(); + AsyncRequestOperation operation + = new GetV1CompaniesCompanyIdAdmins.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Create an admin for the company * - *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP - * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + *

    Creates a new admin for a company. + * If the email matches an existing user, this will create an admin account for the current user. + * Otherwise, this will create a new user. * - *

    scope: `partner_managed_companies:manage` + *

    scope: `company_admin:write` * - * @param security The security details to use for authentication. - * @param partnerManagedCompanyCreateRequest - * @return {@code CompletableFuture} - The async response + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder */ - public CompletableFuture createPartnerManaged(PostV1PartnerManagedCompaniesSecurity security, PartnerManagedCompanyCreateRequest partnerManagedCompanyCreateRequest) { - return createPartnerManaged(security, Optional.empty(), partnerManagedCompanyCreateRequest); + public PostV1CompaniesCompanyIdAdminsRequestBuilder createAdmin() { + return new PostV1CompaniesCompanyIdAdminsRequestBuilder(sdkConfiguration); } /** - * Create a partner managed company + * Create an admin for the company * - *

    Create a partner managed company. When you successfully call the API, it does the following: - * * Creates a new company in Gusto - * * Creates a new user using the provided email if the user does not already exist. - * * Makes the user the primary payroll administrator of the new company. + *

    Creates a new admin for a company. + * If the email matches an existing user, this will create an admin account for the current user. + * Otherwise, this will create a new user. * - *

    In response, you will receive oauth access tokens for the created company. + *

    scope: `company_admin:write` * - *

    IMPORTANT: the returned access and refresh tokens are reserved for this company only. They cannot be - * used to access other companies AND previously granted tokens cannot be used to access this company. + *

    If set, this operation will use Security#companyAccessAuth from the global security. * - *

    📘 System Access Authentication + * @param companyId The UUID of the company + * @param adminCreateRequest The request body for creating a company admin. + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture createAdmin(String companyId, AdminCreateRequest adminCreateRequest) { + return createAdmin(Optional.empty(), companyId, adminCreateRequest); + } + + /** + * Create an admin for the company * - *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP - * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + *

    Creates a new admin for a company. + * If the email matches an existing user, this will create an admin account for the current user. + * Otherwise, this will create a new user. * - *

    scope: `partner_managed_companies:manage` + *

    scope: `company_admin:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param security The security details to use for authentication. * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param partnerManagedCompanyCreateRequest - * @return {@code CompletableFuture} - The async response + * @param companyId The UUID of the company + * @param adminCreateRequest The request body for creating a company admin. + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture createPartnerManaged( - PostV1PartnerManagedCompaniesSecurity security, Optional xGustoAPIVersion, - PartnerManagedCompanyCreateRequest partnerManagedCompanyCreateRequest) { - PostV1PartnerManagedCompaniesRequest request = - PostV1PartnerManagedCompaniesRequest + public CompletableFuture createAdmin( + Optional xGustoAPIVersion, String companyId, + AdminCreateRequest adminCreateRequest) { + PostV1CompaniesCompanyIdAdminsRequest request = + PostV1CompaniesCompanyIdAdminsRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .partnerManagedCompanyCreateRequest(partnerManagedCompanyCreateRequest) + .companyId(companyId) + .adminCreateRequest(adminCreateRequest) .build(); - AsyncRequestOperation operation - = new PostV1PartnerManagedCompanies.Async(sdkConfiguration, security, _headers); + AsyncRequestOperation operation + = new PostV1CompaniesCompanyIdAdmins.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } @@ -236,7 +282,7 @@ public GetV1CompaniesRequestBuilder get() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture get(String companyId) { - return get(companyId, Optional.empty()); + return get(Optional.empty(), companyId); } /** @@ -252,16 +298,16 @@ public CompletableFuture get(String companyId) { * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company * @return {@code CompletableFuture} - The async response */ - public CompletableFuture get(String companyId, Optional xGustoAPIVersion) { + public CompletableFuture get(Optional xGustoAPIVersion, String companyId) { GetV1CompaniesRequest request = GetV1CompaniesRequest .builder() - .companyId(companyId) .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) .build(); AsyncRequestOperation operation = new GetV1Companies.Async(sdkConfiguration, _headers); @@ -299,7 +345,7 @@ public PutV1CompaniesRequestBuilder update() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture update(String companyId, PutV1CompaniesRequestBody requestBody) { - return update(companyId, Optional.empty(), requestBody); + return update(Optional.empty(), companyId, requestBody); } /** @@ -311,19 +357,19 @@ public CompletableFuture update(String companyId, PutV1C * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company * @param requestBody * @return {@code CompletableFuture} - The async response */ public CompletableFuture update( - String companyId, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String companyId, PutV1CompaniesRequestBody requestBody) { PutV1CompaniesRequest request = PutV1CompaniesRequest .builder() - .companyId(companyId) .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) .requestBody(requestBody) .build(); AsyncRequestOperation operation @@ -334,664 +380,698 @@ public CompletableFuture update( /** - * Migrate company to embedded payroll - * - *

    Migrate an existing Gusto customer to your embedded payroll product. - * - *

    ### Prerequisites - * Before calling this endpoint: - * 1. The customer must connect their Gusto account to your application using [OAuth2](doc:oauth2) - * 2. The customer must view and [accept the Embedded Payroll Terms of - * Service](ref:post-partner-managed-companies-company_uuid-accept_terms_of_service) + * Get the custom fields of a company * - *

    ### Related guides - * - [Migrate an existing company](doc:migrate-existing-company) + *

    Returns a list of the custom fields of the company. Useful when you need to know the schema of + * custom fields for an entire company. * - *

    scope: `partner_managed_companies:write` + *

    scope: `companies:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder migrate() { - return new PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder(sdkConfiguration); + public GetV1CompaniesCompanyIdCustomFieldsRequestBuilder getCustomFields() { + return new GetV1CompaniesCompanyIdCustomFieldsRequestBuilder(sdkConfiguration); } /** - * Migrate company to embedded payroll - * - *

    Migrate an existing Gusto customer to your embedded payroll product. - * - *

    ### Prerequisites - * Before calling this endpoint: - * 1. The customer must connect their Gusto account to your application using [OAuth2](doc:oauth2) - * 2. The customer must view and [accept the Embedded Payroll Terms of - * Service](ref:post-partner-managed-companies-company_uuid-accept_terms_of_service) + * Get the custom fields of a company * - *

    ### Related guides - * - [Migrate an existing company](doc:migrate-existing-company) + *

    Returns a list of the custom fields of the company. Useful when you need to know the schema of + * custom fields for an entire company. * - *

    scope: `partner_managed_companies:write` + *

    scope: `companies:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company - * @param partnerManagedCompanyMigrateRequest - * @return {@code CompletableFuture} - The async response + * @param companyId The UUID of the company + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture migrate(String companyUuid, PartnerManagedCompanyMigrateRequest partnerManagedCompanyMigrateRequest) { - return migrate(companyUuid, Optional.empty(), partnerManagedCompanyMigrateRequest); + public CompletableFuture getCustomFields(String companyId) { + return getCustomFields( + Optional.empty(), companyId, Optional.empty(), + Optional.empty()); } /** - * Migrate company to embedded payroll - * - *

    Migrate an existing Gusto customer to your embedded payroll product. - * - *

    ### Prerequisites - * Before calling this endpoint: - * 1. The customer must connect their Gusto account to your application using [OAuth2](doc:oauth2) - * 2. The customer must view and [accept the Embedded Payroll Terms of - * Service](ref:post-partner-managed-companies-company_uuid-accept_terms_of_service) + * Get the custom fields of a company * - *

    ### Related guides - * - [Migrate an existing company](doc:migrate-existing-company) + *

    Returns a list of the custom fields of the company. Useful when you need to know the schema of + * custom fields for an entire company. * - *

    scope: `partner_managed_companies:write` + *

    scope: `companies:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param partnerManagedCompanyMigrateRequest - * @return {@code CompletableFuture} - The async response + * @param companyId The UUID of the company + * @param page The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + * @param per Number of objects per page. For majority of endpoints will default to 25 + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture migrate( - String companyUuid, Optional xGustoAPIVersion, - PartnerManagedCompanyMigrateRequest partnerManagedCompanyMigrateRequest) { - PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest request = - PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest + public CompletableFuture getCustomFields( + Optional xGustoAPIVersion, String companyId, + Optional page, Optional per) { + GetV1CompaniesCompanyIdCustomFieldsRequest request = + GetV1CompaniesCompanyIdCustomFieldsRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) - .partnerManagedCompanyMigrateRequest(partnerManagedCompanyMigrateRequest) + .companyId(companyId) + .page(page) + .per(per) .build(); - AsyncRequestOperation operation - = new PutV1PartnerManagedCompaniesCompanyUuidMigrate.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new GetV1CompaniesCompanyIdCustomFields.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Check company migration readiness + * Get company onboarding status * - *

    Check if an existing Gusto customer is ready to be migrated to embedded payroll. This endpoint - * returns blockers and warnings associated with migrating the company and is recommended to be called - * before attempting to migrate a company. + *

    Retrieves a company's onboarding status, including whether onboarding is complete and the list of + * required onboarding steps with their respective completion state. * - *

    scope: `partner_managed_companies:read` + *

    scope: `company_onboarding_status:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder getV1PartnerManagedCompaniesCompanyUuidMigrationReadiness() { - return new GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder(sdkConfiguration); - } + public GetV1CompanyOnboardingStatusRequestBuilder getOnboardingStatus() { + return new GetV1CompanyOnboardingStatusRequestBuilder(sdkConfiguration); + } /** - * Check company migration readiness + * Get company onboarding status * - *

    Check if an existing Gusto customer is ready to be migrated to embedded payroll. This endpoint - * returns blockers and warnings associated with migrating the company and is recommended to be called - * before attempting to migrate a company. + *

    Retrieves a company's onboarding status, including whether onboarding is complete and the list of + * required onboarding steps with their respective completion state. * - *

    scope: `partner_managed_companies:read` + *

    scope: `company_onboarding_status:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param companyUuid The UUID of the company - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getV1PartnerManagedCompaniesCompanyUuidMigrationReadiness(String companyUuid) { - return getV1PartnerManagedCompaniesCompanyUuidMigrationReadiness(companyUuid, Optional.empty()); + public CompletableFuture getOnboardingStatus(String companyUuid) { + return getOnboardingStatus(Optional.empty(), companyUuid, Optional.empty()); } /** - * Check company migration readiness + * Get company onboarding status * - *

    Check if an existing Gusto customer is ready to be migrated to embedded payroll. This endpoint - * returns blockers and warnings associated with migrating the company and is recommended to be called - * before attempting to migrate a company. + *

    Retrieves a company's onboarding status, including whether onboarding is complete and the list of + * required onboarding steps with their respective completion state. * - *

    scope: `partner_managed_companies:read` + *

    scope: `company_onboarding_status:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @return {@code CompletableFuture} - The async response + * @param companyUuid The UUID of the company + * @param additionalSteps Comma-delimited string of additional onboarding steps to include. Currently only supports the value "external_payroll". + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getV1PartnerManagedCompaniesCompanyUuidMigrationReadiness(String companyUuid, Optional xGustoAPIVersion) { - GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest request = - GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest + public CompletableFuture getOnboardingStatus( + Optional xGustoAPIVersion, String companyUuid, + Optional additionalSteps) { + GetV1CompanyOnboardingStatusRequest request = + GetV1CompanyOnboardingStatusRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) + .additionalSteps(additionalSteps) .build(); - AsyncRequestOperation operation - = new GetV1PartnerManagedCompaniesCompanyUuidMigrationReadiness.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new GetV1CompanyOnboardingStatus.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Accept terms of service for a company user + * Finish company onboarding * - *

    Accept the Gusto Embedded Payroll's [Terms of Service](https://flows.gusto.com/terms). - * The user must have a role in the company in order to accept the Terms of Service. + *

    Finalize a company's onboarding process. * - *

    scope: `terms_of_services:write` + *

    ### Approve a company in demo + * + *

    After a company is finished onboarding, Gusto requires an additional step to review and approve that + * company. + * The company onboarding status is "onboarding_completed": false, until the API call is made to finish + * company + * onboarding. In production environments, this step is required for risk-analysis purposes. + * + *

    We provide the endpoint `PUT '/v1/companies/{company_uuid}/approve'` to facilitate company approvals + * in the demo environment. + * + *

    ```shell + * PUT '/v1/companies/89771af8-b964-472e-8064-554dfbcb56d9/approve' + * + *

    # Response: Company object, with company_status: 'Approved' + * ``` + * + *

    scope: `companies:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBuilder acceptTermsOfService() { - return new PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBuilder(sdkConfiguration); + public GetV1CompanyFinishOnboardingRequestBuilder finishOnboarding() { + return new GetV1CompanyFinishOnboardingRequestBuilder(sdkConfiguration); } /** - * Accept terms of service for a company user + * Finish company onboarding * - *

    Accept the Gusto Embedded Payroll's [Terms of Service](https://flows.gusto.com/terms). - * The user must have a role in the company in order to accept the Terms of Service. + *

    Finalize a company's onboarding process. * - *

    scope: `terms_of_services:write` + *

    ### Approve a company in demo + * + *

    After a company is finished onboarding, Gusto requires an additional step to review and approve that + * company. + * The company onboarding status is "onboarding_completed": false, until the API call is made to finish + * company + * onboarding. In production environments, this step is required for risk-analysis purposes. + * + *

    We provide the endpoint `PUT '/v1/companies/{company_uuid}/approve'` to facilitate company approvals + * in the demo environment. + * + *

    ```shell + * PUT '/v1/companies/89771af8-b964-472e-8064-554dfbcb56d9/approve' + * + *

    # Response: Company object, with company_status: 'Approved' + * ``` + * + *

    scope: `companies:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param companyUuid The UUID of the company - * @param partnerManagedCompanyAcceptTermsOfServiceRequest - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture acceptTermsOfService(String companyUuid, PartnerManagedCompanyAcceptTermsOfServiceRequest partnerManagedCompanyAcceptTermsOfServiceRequest) { - return acceptTermsOfService(companyUuid, Optional.empty(), partnerManagedCompanyAcceptTermsOfServiceRequest); + public CompletableFuture finishOnboarding(String companyUuid) { + return finishOnboarding(Optional.empty(), companyUuid); } /** - * Accept terms of service for a company user + * Finish company onboarding * - *

    Accept the Gusto Embedded Payroll's [Terms of Service](https://flows.gusto.com/terms). - * The user must have a role in the company in order to accept the Terms of Service. + *

    Finalize a company's onboarding process. * - *

    scope: `terms_of_services:write` + *

    ### Approve a company in demo + * + *

    After a company is finished onboarding, Gusto requires an additional step to review and approve that + * company. + * The company onboarding status is "onboarding_completed": false, until the API call is made to finish + * company + * onboarding. In production environments, this step is required for risk-analysis purposes. + * + *

    We provide the endpoint `PUT '/v1/companies/{company_uuid}/approve'` to facilitate company approvals + * in the demo environment. + * + *

    ```shell + * PUT '/v1/companies/89771af8-b964-472e-8064-554dfbcb56d9/approve' + * + *

    # Response: Company object, with company_status: 'Approved' + * ``` + * + *

    scope: `companies:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param partnerManagedCompanyAcceptTermsOfServiceRequest - * @return {@code CompletableFuture} - The async response + * @param companyUuid The UUID of the company + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture acceptTermsOfService( - String companyUuid, Optional xGustoAPIVersion, - PartnerManagedCompanyAcceptTermsOfServiceRequest partnerManagedCompanyAcceptTermsOfServiceRequest) { - PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest request = - PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest + public CompletableFuture finishOnboarding(Optional xGustoAPIVersion, String companyUuid) { + GetV1CompanyFinishOnboardingRequest request = + GetV1CompanyFinishOnboardingRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) - .partnerManagedCompanyAcceptTermsOfServiceRequest(partnerManagedCompanyAcceptTermsOfServiceRequest) + .companyUuid(companyUuid) .build(); - AsyncRequestOperation operation - = new PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfService.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new GetV1CompanyFinishOnboarding.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Retrieve terms of service status for a company user + * Disassociate a partner managed company * - *

    Retrieve the user acceptance status of the Gusto Embedded Payroll's [Terms of - * Service](https://flows.gusto.com/terms). + *

    Disassociate a company from your embedded payroll product, reversing an earlier association or + * migration. You can only disassociate a company that is currently associated with your application. * - *

    scope: `terms_of_services:read` + *

    📘 System Access Authentication * - *

    If set, this operation will use Security#companyAccessAuth from the global security. + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `partner_managed_companies:disassociate` * * @return The async call builder */ - public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder retrieveTermsOfService() { - return new PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder(sdkConfiguration); + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder putV1PartnerManagedCompaniesCompanyUuidDisassociate() { + return new PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder(sdkConfiguration); } /** - * Retrieve terms of service status for a company user + * Disassociate a partner managed company * - *

    Retrieve the user acceptance status of the Gusto Embedded Payroll's [Terms of - * Service](https://flows.gusto.com/terms). + *

    Disassociate a company from your embedded payroll product, reversing an earlier association or + * migration. You can only disassociate a company that is currently associated with your application. * - *

    scope: `terms_of_services:read` + *

    📘 System Access Authentication * - *

    If set, this operation will use Security#companyAccessAuth from the global security. + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) * + *

    scope: `partner_managed_companies:disassociate` + * + * @param security The security details to use for authentication. * @param companyUuid The UUID of the company - * @param partnerManagedCompanyRetrieveTermsOfServiceRequest - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture retrieveTermsOfService(String companyUuid, PartnerManagedCompanyRetrieveTermsOfServiceRequest partnerManagedCompanyRetrieveTermsOfServiceRequest) { - return retrieveTermsOfService(companyUuid, Optional.empty(), partnerManagedCompanyRetrieveTermsOfServiceRequest); + public CompletableFuture putV1PartnerManagedCompaniesCompanyUuidDisassociate(PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity security, String companyUuid) { + return putV1PartnerManagedCompaniesCompanyUuidDisassociate(security, Optional.empty(), companyUuid); } /** - * Retrieve terms of service status for a company user + * Disassociate a partner managed company * - *

    Retrieve the user acceptance status of the Gusto Embedded Payroll's [Terms of - * Service](https://flows.gusto.com/terms). + *

    Disassociate a company from your embedded payroll product, reversing an earlier association or + * migration. You can only disassociate a company that is currently associated with your application. * - *

    scope: `terms_of_services:read` + *

    📘 System Access Authentication * - *

    If set, this operation will use Security#companyAccessAuth from the global security. + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) * - * @param companyUuid The UUID of the company + *

    scope: `partner_managed_companies:disassociate` + * + * @param security The security details to use for authentication. * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param partnerManagedCompanyRetrieveTermsOfServiceRequest - * @return {@code CompletableFuture} - The async response + * @param companyUuid The UUID of the company + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture retrieveTermsOfService( - String companyUuid, Optional xGustoAPIVersion, - PartnerManagedCompanyRetrieveTermsOfServiceRequest partnerManagedCompanyRetrieveTermsOfServiceRequest) { - PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest request = - PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest + public CompletableFuture putV1PartnerManagedCompaniesCompanyUuidDisassociate( + PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity security, Optional xGustoAPIVersion, + String companyUuid) { + PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest request = + PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) - .partnerManagedCompanyRetrieveTermsOfServiceRequest(partnerManagedCompanyRetrieveTermsOfServiceRequest) + .companyUuid(companyUuid) .build(); - AsyncRequestOperation operation - = new PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfService.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new PutV1PartnerManagedCompaniesCompanyUuidDisassociate.Async(sdkConfiguration, security, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Get all the admins at a company + * Migrate company to embedded payroll * - *

    Returns a list of all the admins at a company + *

    Migrate an existing Gusto customer to your embedded payroll product. * - *

    scope: `company_admin:read` + *

    ### Prerequisites + * Before calling this endpoint: + * 1. The customer must connect their Gusto account to your application using [OAuth2](doc:oauth2) + * 2. The customer must view and [accept the Embedded Payroll Terms of + * Service](ref:post-partner-managed-companies-company_uuid-accept_terms_of_service) + * + *

    ### Related guides + * - [Migrate an existing company](doc:migrate-existing-company) + * + *

    scope: `partner_managed_companies:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public GetV1CompaniesCompanyIdAdminsRequestBuilder listAdmins() { - return new GetV1CompaniesCompanyIdAdminsRequestBuilder(sdkConfiguration); + public PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder migrate() { + return new PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder(sdkConfiguration); } /** - * Get all the admins at a company + * Migrate company to embedded payroll * - *

    Returns a list of all the admins at a company + *

    Migrate an existing Gusto customer to your embedded payroll product. * - *

    scope: `company_admin:read` + *

    ### Prerequisites + * Before calling this endpoint: + * 1. The customer must connect their Gusto account to your application using [OAuth2](doc:oauth2) + * 2. The customer must view and [accept the Embedded Payroll Terms of + * Service](ref:post-partner-managed-companies-company_uuid-accept_terms_of_service) + * + *

    ### Related guides + * - [Migrate an existing company](doc:migrate-existing-company) + * + *

    scope: `partner_managed_companies:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company - * @return {@code CompletableFuture} - The async response + * @param companyUuid The UUID of the company + * @param partnerManagedCompanyMigrateRequest + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture listAdmins(String companyId) { - return listAdmins( - Optional.empty(), companyId, Optional.empty(), - Optional.empty()); + public CompletableFuture migrate(String companyUuid, PartnerManagedCompanyMigrateRequest partnerManagedCompanyMigrateRequest) { + return migrate(Optional.empty(), companyUuid, partnerManagedCompanyMigrateRequest); } /** - * Get all the admins at a company + * Migrate company to embedded payroll * - *

    Returns a list of all the admins at a company + *

    Migrate an existing Gusto customer to your embedded payroll product. * - *

    scope: `company_admin:read` + *

    ### Prerequisites + * Before calling this endpoint: + * 1. The customer must connect their Gusto account to your application using [OAuth2](doc:oauth2) + * 2. The customer must view and [accept the Embedded Payroll Terms of + * Service](ref:post-partner-managed-companies-company_uuid-accept_terms_of_service) + * + *

    ### Related guides + * - [Migrate an existing company](doc:migrate-existing-company) + * + *

    scope: `partner_managed_companies:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyId The UUID of the company - * @param page The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - * @param per Number of objects per page. For majority of endpoints will default to 25 - * @return {@code CompletableFuture} - The async response + * @param companyUuid The UUID of the company + * @param partnerManagedCompanyMigrateRequest + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture listAdmins( - Optional xGustoAPIVersion, String companyId, - Optional page, Optional per) { - GetV1CompaniesCompanyIdAdminsRequest request = - GetV1CompaniesCompanyIdAdminsRequest + public CompletableFuture migrate( + Optional xGustoAPIVersion, String companyUuid, + PartnerManagedCompanyMigrateRequest partnerManagedCompanyMigrateRequest) { + PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest request = + PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .companyId(companyId) - .page(page) - .per(per) + .companyUuid(companyUuid) + .partnerManagedCompanyMigrateRequest(partnerManagedCompanyMigrateRequest) .build(); - AsyncRequestOperation operation - = new GetV1CompaniesCompanyIdAdmins.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new PutV1PartnerManagedCompaniesCompanyUuidMigrate.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Create an admin for the company + * Create a partner managed company * - *

    Creates a new admin for a company. - * If the email matches an existing user, this will create an admin account for the current user. - * Otherwise, this will create a new user. + *

    Create a partner managed company. When you successfully call the API, it does the following: + * * Creates a new company in Gusto + * * Creates a new user using the provided email if the user does not already exist. + * * Makes the user the primary payroll administrator of the new company. * - *

    scope: `company_admin:write` + *

    In response, you will receive oauth access tokens for the created company. * - *

    If set, this operation will use Security#companyAccessAuth from the global security. + *

    IMPORTANT: the returned access and refresh tokens are reserved for this company only. They cannot be + * used to access other companies AND previously granted tokens cannot be used to access this company. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `partner_managed_companies:manage` * * @return The async call builder */ - public PostV1CompaniesCompanyIdAdminsRequestBuilder createAdmin() { - return new PostV1CompaniesCompanyIdAdminsRequestBuilder(sdkConfiguration); + public PostV1PartnerManagedCompaniesRequestBuilder createPartnerManaged() { + return new PostV1PartnerManagedCompaniesRequestBuilder(sdkConfiguration); } /** - * Create an admin for the company + * Create a partner managed company * - *

    Creates a new admin for a company. - * If the email matches an existing user, this will create an admin account for the current user. - * Otherwise, this will create a new user. + *

    Create a partner managed company. When you successfully call the API, it does the following: + * * Creates a new company in Gusto + * * Creates a new user using the provided email if the user does not already exist. + * * Makes the user the primary payroll administrator of the new company. * - *

    scope: `company_admin:write` + *

    In response, you will receive oauth access tokens for the created company. * - *

    If set, this operation will use Security#companyAccessAuth from the global security. + *

    IMPORTANT: the returned access and refresh tokens are reserved for this company only. They cannot be + * used to access other companies AND previously granted tokens cannot be used to access this company. * - * @param companyId The UUID of the company - * @param adminCreateRequest The request body for creating a company admin. - * @return {@code CompletableFuture} - The async response + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `partner_managed_companies:manage` + * + * @param security The security details to use for authentication. + * @param partnerManagedCompanyCreateRequest + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture createAdmin(String companyId, AdminCreateRequest adminCreateRequest) { - return createAdmin(Optional.empty(), companyId, adminCreateRequest); + public CompletableFuture createPartnerManaged(PostV1PartnerManagedCompaniesSecurity security, PartnerManagedCompanyCreateRequest partnerManagedCompanyCreateRequest) { + return createPartnerManaged(security, Optional.empty(), partnerManagedCompanyCreateRequest); } /** - * Create an admin for the company + * Create a partner managed company * - *

    Creates a new admin for a company. - * If the email matches an existing user, this will create an admin account for the current user. - * Otherwise, this will create a new user. + *

    Create a partner managed company. When you successfully call the API, it does the following: + * * Creates a new company in Gusto + * * Creates a new user using the provided email if the user does not already exist. + * * Makes the user the primary payroll administrator of the new company. * - *

    scope: `company_admin:write` + *

    In response, you will receive oauth access tokens for the created company. * - *

    If set, this operation will use Security#companyAccessAuth from the global security. + *

    IMPORTANT: the returned access and refresh tokens are reserved for this company only. They cannot be + * used to access other companies AND previously granted tokens cannot be used to access this company. + * + *

    📘 System Access Authentication * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `partner_managed_companies:manage` + * + * @param security The security details to use for authentication. * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyId The UUID of the company - * @param adminCreateRequest The request body for creating a company admin. - * @return {@code CompletableFuture} - The async response + * @param partnerManagedCompanyCreateRequest + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture createAdmin( - Optional xGustoAPIVersion, String companyId, - AdminCreateRequest adminCreateRequest) { - PostV1CompaniesCompanyIdAdminsRequest request = - PostV1CompaniesCompanyIdAdminsRequest + public CompletableFuture createPartnerManaged( + PostV1PartnerManagedCompaniesSecurity security, Optional xGustoAPIVersion, + PartnerManagedCompanyCreateRequest partnerManagedCompanyCreateRequest) { + PostV1PartnerManagedCompaniesRequest request = + PostV1PartnerManagedCompaniesRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .companyId(companyId) - .adminCreateRequest(adminCreateRequest) + .partnerManagedCompanyCreateRequest(partnerManagedCompanyCreateRequest) .build(); - AsyncRequestOperation operation - = new PostV1CompaniesCompanyIdAdmins.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new PostV1PartnerManagedCompanies.Async(sdkConfiguration, security, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Get company onboarding status + * Check company migration readiness * - *

    Retrieves a company's onboarding status, including whether onboarding is complete and the list of - * required onboarding steps with their respective completion state. + *

    Check if an existing Gusto customer is ready to be migrated to embedded payroll. This endpoint + * returns blockers and warnings associated with migrating the company and is recommended to be called + * before attempting to migrate a company. * - *

    scope: `company_onboarding_status:read` + *

    scope: `partner_managed_companies:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public GetV1CompanyOnboardingStatusRequestBuilder getOnboardingStatus() { - return new GetV1CompanyOnboardingStatusRequestBuilder(sdkConfiguration); + public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder getV1PartnerManagedCompaniesCompanyUuidMigrationReadiness() { + return new GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder(sdkConfiguration); } /** - * Get company onboarding status + * Check company migration readiness * - *

    Retrieves a company's onboarding status, including whether onboarding is complete and the list of - * required onboarding steps with their respective completion state. + *

    Check if an existing Gusto customer is ready to be migrated to embedded payroll. This endpoint + * returns blockers and warnings associated with migrating the company and is recommended to be called + * before attempting to migrate a company. * - *

    scope: `company_onboarding_status:read` + *

    scope: `partner_managed_companies:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param companyUuid The UUID of the company - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getOnboardingStatus(String companyUuid) { - return getOnboardingStatus(companyUuid, Optional.empty(), Optional.empty()); + public CompletableFuture getV1PartnerManagedCompaniesCompanyUuidMigrationReadiness(String companyUuid) { + return getV1PartnerManagedCompaniesCompanyUuidMigrationReadiness(Optional.empty(), companyUuid); } /** - * Get company onboarding status + * Check company migration readiness * - *

    Retrieves a company's onboarding status, including whether onboarding is complete and the list of - * required onboarding steps with their respective completion state. + *

    Check if an existing Gusto customer is ready to be migrated to embedded payroll. This endpoint + * returns blockers and warnings associated with migrating the company and is recommended to be called + * before attempting to migrate a company. * - *

    scope: `company_onboarding_status:read` + *

    scope: `partner_managed_companies:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company - * @param additionalSteps Comma-delimited string of additional onboarding steps to include. Currently only supports the value "external_payroll". * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @return {@code CompletableFuture} - The async response + * @param companyUuid The UUID of the company + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getOnboardingStatus( - String companyUuid, Optional additionalSteps, - Optional xGustoAPIVersion) { - GetV1CompanyOnboardingStatusRequest request = - GetV1CompanyOnboardingStatusRequest + public CompletableFuture getV1PartnerManagedCompaniesCompanyUuidMigrationReadiness(Optional xGustoAPIVersion, String companyUuid) { + GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest request = + GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest .builder() - .companyUuid(companyUuid) - .additionalSteps(additionalSteps) .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) .build(); - AsyncRequestOperation operation - = new GetV1CompanyOnboardingStatus.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new GetV1PartnerManagedCompaniesCompanyUuidMigrationReadiness.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Finish company onboarding - * - *

    Finalize a company's onboarding process. - * - *

    ### Approve a company in demo - * - *

    After a company is finished onboarding, Gusto requires an additional step to review and approve that - * company. - * The company onboarding status is "onboarding_completed": false, until the API call is made to finish - * company - * onboarding. In production environments, this step is required for risk-analysis purposes. - * - *

    We provide the endpoint `PUT '/v1/companies/{company_uuid}/approve'` to facilitate company approvals - * in the demo environment. - * - *

    ```shell - * PUT '/v1/companies/89771af8-b964-472e-8064-554dfbcb56d9/approve' + * Accept terms of service for a company user * - *

    # Response: Company object, with company_status: 'Approved' - * ``` + *

    Accept the Gusto Embedded Payroll's [Terms of Service](https://flows.gusto.com/terms). + * The user must have a role in the company in order to accept the Terms of Service. * - *

    scope: `companies:write` + *

    scope: `terms_of_services:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public GetV1CompanyFinishOnboardingRequestBuilder finishOnboarding() { - return new GetV1CompanyFinishOnboardingRequestBuilder(sdkConfiguration); + public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBuilder acceptTermsOfService() { + return new PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBuilder(sdkConfiguration); } /** - * Finish company onboarding - * - *

    Finalize a company's onboarding process. - * - *

    ### Approve a company in demo - * - *

    After a company is finished onboarding, Gusto requires an additional step to review and approve that - * company. - * The company onboarding status is "onboarding_completed": false, until the API call is made to finish - * company - * onboarding. In production environments, this step is required for risk-analysis purposes. - * - *

    We provide the endpoint `PUT '/v1/companies/{company_uuid}/approve'` to facilitate company approvals - * in the demo environment. - * - *

    ```shell - * PUT '/v1/companies/89771af8-b964-472e-8064-554dfbcb56d9/approve' + * Accept terms of service for a company user * - *

    # Response: Company object, with company_status: 'Approved' - * ``` + *

    Accept the Gusto Embedded Payroll's [Terms of Service](https://flows.gusto.com/terms). + * The user must have a role in the company in order to accept the Terms of Service. * - *

    scope: `companies:write` + *

    scope: `terms_of_services:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param companyUuid The UUID of the company - * @return {@code CompletableFuture} - The async response + * @param partnerManagedCompanyAcceptTermsOfServiceRequest + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture finishOnboarding(String companyUuid) { - return finishOnboarding(companyUuid, Optional.empty()); + public CompletableFuture acceptTermsOfService(String companyUuid, PartnerManagedCompanyAcceptTermsOfServiceRequest partnerManagedCompanyAcceptTermsOfServiceRequest) { + return acceptTermsOfService(Optional.empty(), companyUuid, partnerManagedCompanyAcceptTermsOfServiceRequest); } /** - * Finish company onboarding - * - *

    Finalize a company's onboarding process. - * - *

    ### Approve a company in demo - * - *

    After a company is finished onboarding, Gusto requires an additional step to review and approve that - * company. - * The company onboarding status is "onboarding_completed": false, until the API call is made to finish - * company - * onboarding. In production environments, this step is required for risk-analysis purposes. - * - *

    We provide the endpoint `PUT '/v1/companies/{company_uuid}/approve'` to facilitate company approvals - * in the demo environment. - * - *

    ```shell - * PUT '/v1/companies/89771af8-b964-472e-8064-554dfbcb56d9/approve' + * Accept terms of service for a company user * - *

    # Response: Company object, with company_status: 'Approved' - * ``` + *

    Accept the Gusto Embedded Payroll's [Terms of Service](https://flows.gusto.com/terms). + * The user must have a role in the company in order to accept the Terms of Service. * - *

    scope: `companies:write` + *

    scope: `terms_of_services:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @return {@code CompletableFuture} - The async response + * @param companyUuid The UUID of the company + * @param partnerManagedCompanyAcceptTermsOfServiceRequest + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture finishOnboarding(String companyUuid, Optional xGustoAPIVersion) { - GetV1CompanyFinishOnboardingRequest request = - GetV1CompanyFinishOnboardingRequest + public CompletableFuture acceptTermsOfService( + Optional xGustoAPIVersion, String companyUuid, + PartnerManagedCompanyAcceptTermsOfServiceRequest partnerManagedCompanyAcceptTermsOfServiceRequest) { + PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest request = + PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) + .partnerManagedCompanyAcceptTermsOfServiceRequest(partnerManagedCompanyAcceptTermsOfServiceRequest) .build(); - AsyncRequestOperation operation - = new GetV1CompanyFinishOnboarding.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfService.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Get the custom fields of a company + * Retrieve terms of service status for a company user * - *

    Returns a list of the custom fields of the company. Useful when you need to know the schema of - * custom fields for an entire company. + *

    Retrieve the user acceptance status of the Gusto Embedded Payroll's [Terms of + * Service](https://flows.gusto.com/terms). * - *

    scope: `companies:read` + *

    scope: `terms_of_services:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public GetV1CompaniesCompanyIdCustomFieldsRequestBuilder getCustomFields() { - return new GetV1CompaniesCompanyIdCustomFieldsRequestBuilder(sdkConfiguration); + public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder retrieveTermsOfService() { + return new PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder(sdkConfiguration); } /** - * Get the custom fields of a company + * Retrieve terms of service status for a company user * - *

    Returns a list of the custom fields of the company. Useful when you need to know the schema of - * custom fields for an entire company. + *

    Retrieve the user acceptance status of the Gusto Embedded Payroll's [Terms of + * Service](https://flows.gusto.com/terms). * - *

    scope: `companies:read` + *

    scope: `terms_of_services:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company - * @return {@code CompletableFuture} - The async response + * @param companyUuid The UUID of the company + * @param partnerManagedCompanyRetrieveTermsOfServiceRequest + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getCustomFields(String companyId) { - return getCustomFields( - Optional.empty(), companyId, Optional.empty(), - Optional.empty()); + public CompletableFuture retrieveTermsOfService(String companyUuid, PartnerManagedCompanyRetrieveTermsOfServiceRequest partnerManagedCompanyRetrieveTermsOfServiceRequest) { + return retrieveTermsOfService(Optional.empty(), companyUuid, partnerManagedCompanyRetrieveTermsOfServiceRequest); } /** - * Get the custom fields of a company + * Retrieve terms of service status for a company user * - *

    Returns a list of the custom fields of the company. Useful when you need to know the schema of - * custom fields for an entire company. + *

    Retrieve the user acceptance status of the Gusto Embedded Payroll's [Terms of + * Service](https://flows.gusto.com/terms). * - *

    scope: `companies:read` + *

    scope: `terms_of_services:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyId The UUID of the company - * @param page The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - * @param per Number of objects per page. For majority of endpoints will default to 25 - * @return {@code CompletableFuture} - The async response + * @param companyUuid The UUID of the company + * @param partnerManagedCompanyRetrieveTermsOfServiceRequest + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getCustomFields( - Optional xGustoAPIVersion, String companyId, - Optional page, Optional per) { - GetV1CompaniesCompanyIdCustomFieldsRequest request = - GetV1CompaniesCompanyIdCustomFieldsRequest + public CompletableFuture retrieveTermsOfService( + Optional xGustoAPIVersion, String companyUuid, + PartnerManagedCompanyRetrieveTermsOfServiceRequest partnerManagedCompanyRetrieveTermsOfServiceRequest) { + PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest request = + PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .companyId(companyId) - .page(page) - .per(per) + .companyUuid(companyUuid) + .partnerManagedCompanyRetrieveTermsOfServiceRequest(partnerManagedCompanyRetrieveTermsOfServiceRequest) .build(); - AsyncRequestOperation operation - = new GetV1CompaniesCompanyIdCustomFields.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfService.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncCompanyAttachments.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncCompanyAttachments.java index dc4b078bc..306d7a449 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncCompanyAttachments.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncCompanyAttachments.java @@ -47,78 +47,6 @@ public CompanyAttachments sync() { } - /** - * Get Company Attachment Details - * - *

    Retrieve the detail of an attachment uploaded by the company. - * - *

    ### Related guides - * - [Manage company attachments](doc:manage-company-attachments) - * - *

    scope: `company_attachments:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The async call builder - */ - public GetV1CompaniesAttachmentRequestBuilder getDetails() { - return new GetV1CompaniesAttachmentRequestBuilder(sdkConfiguration); - } - - /** - * Get Company Attachment Details - * - *

    Retrieve the detail of an attachment uploaded by the company. - * - *

    ### Related guides - * - [Manage company attachments](doc:manage-company-attachments) - * - *

    scope: `company_attachments:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param companyId The UUID of the company - * @param companyAttachmentUuid The UUID of the company attachment - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture getDetails(String companyId, String companyAttachmentUuid) { - return getDetails(Optional.empty(), companyId, companyAttachmentUuid); - } - - /** - * Get Company Attachment Details - * - *

    Retrieve the detail of an attachment uploaded by the company. - * - *

    ### Related guides - * - [Manage company attachments](doc:manage-company-attachments) - * - *

    scope: `company_attachments:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyId The UUID of the company - * @param companyAttachmentUuid The UUID of the company attachment - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture getDetails( - Optional xGustoAPIVersion, String companyId, - String companyAttachmentUuid) { - GetV1CompaniesAttachmentRequest request = - GetV1CompaniesAttachmentRequest - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .companyId(companyId) - .companyAttachmentUuid(companyAttachmentUuid) - .build(); - AsyncRequestOperation operation - = new GetV1CompaniesAttachment.Async(sdkConfiguration, _headers); - return operation.doRequest(request) - .thenCompose(operation::handleResponse); - } - - /** * Get List of Company Attachments * @@ -263,4 +191,76 @@ public CompletableFuture create( .thenCompose(operation::handleResponse); } + + /** + * Get Company Attachment Details + * + *

    Retrieve the detail of an attachment uploaded by the company. + * + *

    ### Related guides + * - [Manage company attachments](doc:manage-company-attachments) + * + *

    scope: `company_attachments:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public GetV1CompaniesAttachmentRequestBuilder getDetails() { + return new GetV1CompaniesAttachmentRequestBuilder(sdkConfiguration); + } + + /** + * Get Company Attachment Details + * + *

    Retrieve the detail of an attachment uploaded by the company. + * + *

    ### Related guides + * - [Manage company attachments](doc:manage-company-attachments) + * + *

    scope: `company_attachments:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param companyId The UUID of the company + * @param companyAttachmentUuid The UUID of the company attachment + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getDetails(String companyId, String companyAttachmentUuid) { + return getDetails(Optional.empty(), companyId, companyAttachmentUuid); + } + + /** + * Get Company Attachment Details + * + *

    Retrieve the detail of an attachment uploaded by the company. + * + *

    ### Related guides + * - [Manage company attachments](doc:manage-company-attachments) + * + *

    scope: `company_attachments:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company + * @param companyAttachmentUuid The UUID of the company attachment + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getDetails( + Optional xGustoAPIVersion, String companyId, + String companyAttachmentUuid) { + GetV1CompaniesAttachmentRequest request = + GetV1CompaniesAttachmentRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) + .companyAttachmentUuid(companyAttachmentUuid) + .build(); + AsyncRequestOperation operation + = new GetV1CompaniesAttachment.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncCompanyBenefits.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncCompanyBenefits.java index 2b2027f21..25d7d88b9 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncCompanyBenefits.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncCompanyBenefits.java @@ -23,8 +23,8 @@ import com.gusto.embedded_api.models.operations.GetV1CompanyBenefitsCompanyBenefitIdContributionExclusionsRequest; import com.gusto.embedded_api.models.operations.GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsRequest; import com.gusto.embedded_api.models.operations.GetV1CompanyBenefitsCompanyBenefitIdHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.GetV1CompanyBenefitsCompanyBenefitIdQueryParamInclude; import com.gusto.embedded_api.models.operations.GetV1CompanyBenefitsCompanyBenefitIdRequest; +import com.gusto.embedded_api.models.operations.Include; import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyIdCompanyBenefitsHeaderXGustoAPIVersion; import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyIdCompanyBenefitsRequest; import com.gusto.embedded_api.models.operations.PutV1CompanyBenefitsCompanyBenefitIdContributionExclusionsHeaderXGustoAPIVersion; @@ -99,6 +99,189 @@ public CompanyBenefits sync() { } + /** + * Get all supported benefits + * + *

    Returns all benefits supported by Gusto. The benefit object in Gusto contains high level information + * about a particular benefit type and its tax considerations. When companies choose to offer a + * benefit, they are creating a Company Benefit object associated with a particular benefit. + * + *

    scope: `benefits:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public GetV1BenefitsRequestBuilder getAll() { + return new GetV1BenefitsRequestBuilder(sdkConfiguration); + } + + /** + * Get all supported benefits + * + *

    Returns all benefits supported by Gusto. The benefit object in Gusto contains high level information + * about a particular benefit type and its tax considerations. When companies choose to offer a + * benefit, they are creating a Company Benefit object associated with a particular benefit. + * + *

    scope: `benefits:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getAllDirect() { + return getAll(Optional.empty()); + } + + /** + * Get all supported benefits + * + *

    Returns all benefits supported by Gusto. The benefit object in Gusto contains high level information + * about a particular benefit type and its tax considerations. When companies choose to offer a + * benefit, they are creating a Company Benefit object associated with a particular benefit. + * + *

    scope: `benefits:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getAll(Optional xGustoAPIVersion) { + GetV1BenefitsRequest request = + GetV1BenefitsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .build(); + AsyncRequestOperation operation + = new GetV1Benefits.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Get a supported benefit + * + *

    Returns a benefit supported by Gusto. The benefit object in Gusto contains high level information + * about a particular benefit type and its tax considerations. When companies choose to offer a + * benefit, they are creating a Company Benefit object associated with a particular benefit. + * + *

    scope: `benefits:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public GetV1BenefitsBenefitIdRequestBuilder getSupported() { + return new GetV1BenefitsBenefitIdRequestBuilder(sdkConfiguration); + } + + /** + * Get a supported benefit + * + *

    Returns a benefit supported by Gusto. The benefit object in Gusto contains high level information + * about a particular benefit type and its tax considerations. When companies choose to offer a + * benefit, they are creating a Company Benefit object associated with a particular benefit. + * + *

    scope: `benefits:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param benefitId The benefit type in Gusto. + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getSupported(String benefitId) { + return getSupported(Optional.empty(), benefitId); + } + + /** + * Get a supported benefit + * + *

    Returns a benefit supported by Gusto. The benefit object in Gusto contains high level information + * about a particular benefit type and its tax considerations. When companies choose to offer a + * benefit, they are creating a Company Benefit object associated with a particular benefit. + * + *

    scope: `benefits:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param benefitId The benefit type in Gusto. + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getSupported(Optional xGustoAPIVersion, String benefitId) { + GetV1BenefitsBenefitIdRequest request = + GetV1BenefitsBenefitIdRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .benefitId(benefitId) + .build(); + AsyncRequestOperation operation + = new GetV1BenefitsBenefitId.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Get benefit fields requirements by benefit type + * + *

    Returns the field requirements for a given benefit type. + * + *

    scope: `benefits:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public GetV1BenefitsBenefitsIdRequirementsRequestBuilder getRequirements() { + return new GetV1BenefitsBenefitsIdRequirementsRequestBuilder(sdkConfiguration); + } + + /** + * Get benefit fields requirements by benefit type + * + *

    Returns the field requirements for a given benefit type. + * + *

    scope: `benefits:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param benefitId The benefit type in Gusto. + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getRequirements(String benefitId) { + return getRequirements(Optional.empty(), benefitId); + } + + /** + * Get benefit fields requirements by benefit type + * + *

    Returns the field requirements for a given benefit type. + * + *

    scope: `benefits:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param benefitId The benefit type in Gusto. + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getRequirements(Optional xGustoAPIVersion, String benefitId) { + GetV1BenefitsBenefitsIdRequirementsRequest request = + GetV1BenefitsBenefitsIdRequirementsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .benefitId(benefitId) + .build(); + AsyncRequestOperation operation + = new GetV1BenefitsBenefitsIdRequirements.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + /** * Get benefits for a company * @@ -305,7 +488,7 @@ public CompletableFuture get(Strin */ public CompletableFuture get( Optional xGustoAPIVersion, String companyBenefitId, - Optional withEmployeeBenefits, Optional include) { + Optional withEmployeeBenefits, Optional include) { GetV1CompanyBenefitsCompanyBenefitIdRequest request = GetV1CompanyBenefitsCompanyBenefitIdRequest .builder() @@ -490,170 +673,6 @@ public CompletableFuture delete } - /** - * Get all supported benefits - * - *

    Returns all benefits supported by Gusto. The benefit object in Gusto contains high level information - * about a particular benefit type and its tax considerations. When companies choose to offer a - * benefit, they are creating a Company Benefit object associated with a particular benefit. - * - *

    scope: `benefits:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The async call builder - */ - public GetV1BenefitsRequestBuilder getAll() { - return new GetV1BenefitsRequestBuilder(sdkConfiguration); - } - - /** - * Get all supported benefits - * - *

    Returns all benefits supported by Gusto. The benefit object in Gusto contains high level information - * about a particular benefit type and its tax considerations. When companies choose to offer a - * benefit, they are creating a Company Benefit object associated with a particular benefit. - * - *

    scope: `benefits:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture getAllDirect() { - return getAll(Optional.empty()); - } - - /** - * Get all supported benefits - * - *

    Returns all benefits supported by Gusto. The benefit object in Gusto contains high level information - * about a particular benefit type and its tax considerations. When companies choose to offer a - * benefit, they are creating a Company Benefit object associated with a particular benefit. - * - *

    scope: `benefits:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture getAll(Optional xGustoAPIVersion) { - GetV1BenefitsRequest request = - GetV1BenefitsRequest - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .build(); - AsyncRequestOperation operation - = new GetV1Benefits.Async(sdkConfiguration, _headers); - return operation.doRequest(request) - .thenCompose(operation::handleResponse); - } - - - /** - * Get a supported benefit - * - *

    Returns a benefit supported by Gusto. The benefit object in Gusto contains high level information - * about a particular benefit type and its tax considerations. When companies choose to offer a - * benefit, they are creating a Company Benefit object associated with a particular benefit. - * - *

    scope: `benefits:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The async call builder - */ - public GetV1BenefitsBenefitIdRequestBuilder getSupported() { - return new GetV1BenefitsBenefitIdRequestBuilder(sdkConfiguration); - } - - /** - * Get a supported benefit - * - *

    Returns a benefit supported by Gusto. The benefit object in Gusto contains high level information - * about a particular benefit type and its tax considerations. When companies choose to offer a - * benefit, they are creating a Company Benefit object associated with a particular benefit. - * - *

    scope: `benefits:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param benefitId The benefit type in Gusto. - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture getSupported(String benefitId) { - return getSupported(Optional.empty(), benefitId); - } - - /** - * Get a supported benefit - * - *

    Returns a benefit supported by Gusto. The benefit object in Gusto contains high level information - * about a particular benefit type and its tax considerations. When companies choose to offer a - * benefit, they are creating a Company Benefit object associated with a particular benefit. - * - *

    scope: `benefits:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param benefitId The benefit type in Gusto. - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture getSupported(Optional xGustoAPIVersion, String benefitId) { - GetV1BenefitsBenefitIdRequest request = - GetV1BenefitsBenefitIdRequest - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .benefitId(benefitId) - .build(); - AsyncRequestOperation operation - = new GetV1BenefitsBenefitId.Async(sdkConfiguration, _headers); - return operation.doRequest(request) - .thenCompose(operation::handleResponse); - } - - - /** - * Get company benefit summary by company benefit id. - * - *

    Returns summary benefit data for the requested company benefit id. - * - *

    Benefits containing PHI are only visible to applications with the `company_benefits:read:phi` scope. - * - *

    scope: `company_benefits:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The async call builder - */ - public GetV1BenefitsCompanyBenefitIdSummaryRequestBuilder getSummary() { - return new GetV1BenefitsCompanyBenefitIdSummaryRequestBuilder(sdkConfiguration); - } - - /** - * Get company benefit summary by company benefit id. - * - *

    Returns summary benefit data for the requested company benefit id. - * - *

    Benefits containing PHI are only visible to applications with the `company_benefits:read:phi` scope. - * - *

    scope: `company_benefits:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param request The request object containing all the parameters for the API call. - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture getSummary(GetV1BenefitsCompanyBenefitIdSummaryRequest request) { - AsyncRequestOperation operation - = new GetV1BenefitsCompanyBenefitIdSummary.Async(sdkConfiguration, _headers); - return operation.doRequest(request) - .thenCompose(operation::handleResponse); - } - - /** * Get all employee benefits for a company benefit * @@ -798,58 +817,39 @@ public CompletableFutureReturns the field requirements for a given benefit type. + *

    Returns summary benefit data for the requested company benefit id. * - *

    scope: `benefits:read` + *

    Benefits containing PHI are only visible to applications with the `company_benefits:read:phi` scope. + * + *

    scope: `company_benefits:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public GetV1BenefitsBenefitsIdRequirementsRequestBuilder getRequirements() { - return new GetV1BenefitsBenefitsIdRequirementsRequestBuilder(sdkConfiguration); + public GetV1BenefitsCompanyBenefitIdSummaryRequestBuilder getSummary() { + return new GetV1BenefitsCompanyBenefitIdSummaryRequestBuilder(sdkConfiguration); } /** - * Get benefit fields requirements by benefit type - * - *

    Returns the field requirements for a given benefit type. - * - *

    scope: `benefits:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. + * Get company benefit summary by company benefit id. * - * @param benefitId The benefit type in Gusto. - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture getRequirements(String benefitId) { - return getRequirements(Optional.empty(), benefitId); - } - - /** - * Get benefit fields requirements by benefit type + *

    Returns summary benefit data for the requested company benefit id. * - *

    Returns the field requirements for a given benefit type. + *

    Benefits containing PHI are only visible to applications with the `company_benefits:read:phi` scope. * - *

    scope: `benefits:read` + *

    scope: `company_benefits:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param benefitId The benefit type in Gusto. - * @return {@code CompletableFuture} - The async response + * @param request The request object containing all the parameters for the API call. + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getRequirements(Optional xGustoAPIVersion, String benefitId) { - GetV1BenefitsBenefitsIdRequirementsRequest request = - GetV1BenefitsBenefitsIdRequirementsRequest - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .benefitId(benefitId) - .build(); - AsyncRequestOperation operation - = new GetV1BenefitsBenefitsIdRequirements.Async(sdkConfiguration, _headers); + public CompletableFuture getSummary(GetV1BenefitsCompanyBenefitIdSummaryRequest request) { + AsyncRequestOperation operation + = new GetV1BenefitsCompanyBenefitIdSummary.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncContractorPaymentGroups.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncContractorPaymentGroups.java index 085db7fa1..4d977584d 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncContractorPaymentGroups.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncContractorPaymentGroups.java @@ -74,10 +74,14 @@ public ContractorPaymentGroups sync() { /** - * Get contractor payment groups for a company + * Preview a contractor payment group * - *

    Returns a list of minimal contractor payment groups within a given time period, including totals but - * not associated contractor payments. + *

    Preview a group of contractor payments. Request will validate inputs and return preview of the + * contractor payment group including the expected `debit_date`. The `uuid` field will be null in the + * response. + * + *

    The returned `creation_token` is a required parameter in order to create the contractor payment + * group. * *

    scope: `payrolls:read` * @@ -85,36 +89,79 @@ public ContractorPaymentGroups sync() { * * @return The async call builder */ - public GetV1CompaniesCompanyIdContractorPaymentGroupsRequestBuilder getList() { - return new GetV1CompaniesCompanyIdContractorPaymentGroupsRequestBuilder(sdkConfiguration); + public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBuilder preview() { + return new PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBuilder(sdkConfiguration); } /** - * Get contractor payment groups for a company + * Preview a contractor payment group * - *

    Returns a list of minimal contractor payment groups within a given time period, including totals but - * not associated contractor payments. + *

    Preview a group of contractor payments. Request will validate inputs and return preview of the + * contractor payment group including the expected `debit_date`. The `uuid` field will be null in the + * response. + * + *

    The returned `creation_token` is a required parameter in order to create the contractor payment + * group. * *

    scope: `payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param request The request object containing all the parameters for the API call. - * @return {@code CompletableFuture} - The async response + * @param companyId The UUID of the company + * @param requestBody + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getList(GetV1CompaniesCompanyIdContractorPaymentGroupsRequest request) { - AsyncRequestOperation operation - = new GetV1CompaniesCompanyIdContractorPaymentGroups.Async(sdkConfiguration, _headers); + public CompletableFuture preview(String companyId, PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBody requestBody) { + return preview(Optional.empty(), companyId, requestBody); + } + + /** + * Preview a contractor payment group + * + *

    Preview a group of contractor payments. Request will validate inputs and return preview of the + * contractor payment group including the expected `debit_date`. The `uuid` field will be null in the + * response. + * + *

    The returned `creation_token` is a required parameter in order to create the contractor payment + * group. + * + *

    scope: `payrolls:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company + * @param requestBody + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture preview( + Optional xGustoAPIVersion, String companyId, + PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBody requestBody) { + PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequest request = + PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) + .requestBody(requestBody) + .build(); + AsyncRequestOperation operation + = new PostV1CompaniesCompanyIdContractorPaymentGroupsPreview.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Create a contractor payment group + * Fund a contractor payment group [DEMO] * - *

    Pay a group of contractors. Information needed depends on the contractor's wage type (hourly vs - * fixed) + *

    > 🚧 Demo action + * > This action is only available in the Demo environment + * + *

    Simulate funding a contractor payment group. Funding only occurs automatically in the production + * environment when bank transactions are generated. Use this action in the demo environment to + * transition a contractor payment group's `status` from `Unfunded` to `Funded`. + * + *

    A `Funded` status is required for generating a contractor payment receipt. * *

    scope: `payrolls:run` * @@ -122,69 +169,72 @@ public CompletableFuture * * @return The async call builder */ - public PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBuilder create() { - return new PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBuilder(sdkConfiguration); + public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequestBuilder fund() { + return new PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequestBuilder(sdkConfiguration); } /** - * Create a contractor payment group + * Fund a contractor payment group [DEMO] * - *

    Pay a group of contractors. Information needed depends on the contractor's wage type (hourly vs - * fixed) + *

    > 🚧 Demo action + * > This action is only available in the Demo environment + * + *

    Simulate funding a contractor payment group. Funding only occurs automatically in the production + * environment when bank transactions are generated. Use this action in the demo environment to + * transition a contractor payment group's `status` from `Unfunded` to `Funded`. + * + *

    A `Funded` status is required for generating a contractor payment receipt. * *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company - * @param requestBody - * @return {@code CompletableFuture} - The async response + * @param contractorPaymentGroupUuid The UUID of the contractor payment group + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture create(String companyId, PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBody requestBody) { - return create(Optional.empty(), companyId, requestBody); + public CompletableFuture fund(String contractorPaymentGroupUuid) { + return fund(Optional.empty(), contractorPaymentGroupUuid); } /** - * Create a contractor payment group + * Fund a contractor payment group [DEMO] * - *

    Pay a group of contractors. Information needed depends on the contractor's wage type (hourly vs - * fixed) + *

    > 🚧 Demo action + * > This action is only available in the Demo environment + * + *

    Simulate funding a contractor payment group. Funding only occurs automatically in the production + * environment when bank transactions are generated. Use this action in the demo environment to + * transition a contractor payment group's `status` from `Unfunded` to `Funded`. + * + *

    A `Funded` status is required for generating a contractor payment receipt. * *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyId The UUID of the company - * @param requestBody - * @return {@code CompletableFuture} - The async response + * @param contractorPaymentGroupUuid The UUID of the contractor payment group + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture create( - Optional xGustoAPIVersion, String companyId, - PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBody requestBody) { - PostV1CompaniesCompanyIdContractorPaymentGroupsRequest request = - PostV1CompaniesCompanyIdContractorPaymentGroupsRequest + public CompletableFuture fund(Optional xGustoAPIVersion, String contractorPaymentGroupUuid) { + PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest request = + PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .companyId(companyId) - .requestBody(requestBody) + .contractorPaymentGroupUuid(contractorPaymentGroupUuid) .build(); - AsyncRequestOperation operation - = new PostV1CompaniesCompanyIdContractorPaymentGroups.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new PutV1ContractorPaymentGroupsContractorPaymentGroupIdFund.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Preview a contractor payment group - * - *

    Preview a group of contractor payments. Request will validate inputs and return preview of the - * contractor payment group including the expected `debit_date`. The `uuid` field will be null in the - * response. + * Get contractor payment groups for a company * - *

    The returned `creation_token` is a required parameter in order to create the contractor payment - * group. + *

    Returns a list of minimal contractor payment groups within a given time period, including totals but + * not associated contractor payments. * *

    scope: `payrolls:read` * @@ -192,63 +242,92 @@ public CompletableFuturePreview a group of contractor payments. Request will validate inputs and return preview of the - * contractor payment group including the expected `debit_date`. The `uuid` field will be null in the - * response. + * Get contractor payment groups for a company * - *

    The returned `creation_token` is a required parameter in order to create the contractor payment - * group. + *

    Returns a list of minimal contractor payment groups within a given time period, including totals but + * not associated contractor payments. * *

    scope: `payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * + * @param request The request object containing all the parameters for the API call. + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getList(GetV1CompaniesCompanyIdContractorPaymentGroupsRequest request) { + AsyncRequestOperation operation + = new GetV1CompaniesCompanyIdContractorPaymentGroups.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Create a contractor payment group + * + *

    Pay a group of contractors. Information needed depends on the contractor's wage type (hourly vs + * fixed) + * + *

    scope: `payrolls:run` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBuilder create() { + return new PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBuilder(sdkConfiguration); + } + + /** + * Create a contractor payment group + * + *

    Pay a group of contractors. Information needed depends on the contractor's wage type (hourly vs + * fixed) + * + *

    scope: `payrolls:run` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * * @param companyId The UUID of the company * @param requestBody - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture preview(String companyId, PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBody requestBody) { - return preview(Optional.empty(), companyId, requestBody); + public CompletableFuture create(String companyId, PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBody requestBody) { + return create(Optional.empty(), companyId, requestBody); } /** - * Preview a contractor payment group - * - *

    Preview a group of contractor payments. Request will validate inputs and return preview of the - * contractor payment group including the expected `debit_date`. The `uuid` field will be null in the - * response. + * Create a contractor payment group * - *

    The returned `creation_token` is a required parameter in order to create the contractor payment - * group. + *

    Pay a group of contractors. Information needed depends on the contractor's wage type (hourly vs + * fixed) * - *

    scope: `payrolls:read` + *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyId The UUID of the company * @param requestBody - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture preview( - Optional xGustoAPIVersion, String companyId, - PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBody requestBody) { - PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequest request = - PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequest + public CompletableFuture create( + Optional xGustoAPIVersion, String companyId, + PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBody requestBody) { + PostV1CompaniesCompanyIdContractorPaymentGroupsRequest request = + PostV1CompaniesCompanyIdContractorPaymentGroupsRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .companyId(companyId) .requestBody(requestBody) .build(); - AsyncRequestOperation operation - = new PostV1CompaniesCompanyIdContractorPaymentGroupsPreview.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new PostV1CompaniesCompanyIdContractorPaymentGroups.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } @@ -282,7 +361,7 @@ public GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder get() * @return {@code CompletableFuture} - The async response */ public CompletableFuture get(String contractorPaymentGroupUuid) { - return get(contractorPaymentGroupUuid, Optional.empty()); + return get(Optional.empty(), contractorPaymentGroupUuid); } /** @@ -294,16 +373,16 @@ public CompletableFutureIf set, this operation will use Security#companyAccessAuth from the global security. * - * @param contractorPaymentGroupUuid The UUID of the contractor payment group * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param contractorPaymentGroupUuid The UUID of the contractor payment group * @return {@code CompletableFuture} - The async response */ - public CompletableFuture get(String contractorPaymentGroupUuid, Optional xGustoAPIVersion) { + public CompletableFuture get(Optional xGustoAPIVersion, String contractorPaymentGroupUuid) { GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest request = GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest .builder() - .contractorPaymentGroupUuid(contractorPaymentGroupUuid) .xGustoAPIVersion(xGustoAPIVersion) + .contractorPaymentGroupUuid(contractorPaymentGroupUuid) .build(); AsyncRequestOperation operation = new GetV1ContractorPaymentGroupsContractorPaymentGroupId.Async(sdkConfiguration, _headers); @@ -342,7 +421,7 @@ public DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder del * @return {@code CompletableFuture} - The async response */ public CompletableFuture delete(String contractorPaymentGroupUuid) { - return delete(contractorPaymentGroupUuid, Optional.empty()); + return delete(Optional.empty(), contractorPaymentGroupUuid); } /** @@ -355,16 +434,16 @@ public CompletableFutureIf set, this operation will use Security#companyAccessAuth from the global security. * - * @param contractorPaymentGroupUuid The UUID of the contractor payment group * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param contractorPaymentGroupUuid The UUID of the contractor payment group * @return {@code CompletableFuture} - The async response */ - public CompletableFuture delete(String contractorPaymentGroupUuid, Optional xGustoAPIVersion) { + public CompletableFuture delete(Optional xGustoAPIVersion, String contractorPaymentGroupUuid) { DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest request = DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest .builder() - .contractorPaymentGroupUuid(contractorPaymentGroupUuid) .xGustoAPIVersion(xGustoAPIVersion) + .contractorPaymentGroupUuid(contractorPaymentGroupUuid) .build(); AsyncRequestOperation operation = new DeleteV1ContractorPaymentGroupsContractorPaymentGroupId.Async(sdkConfiguration, _headers); @@ -373,85 +452,6 @@ public CompletableFuture> 🚧 Demo action - * > This action is only available in the Demo environment - * - *

    Simulate funding a contractor payment group. Funding only occurs automatically in the production - * environment when bank transactions are generated. Use this action in the demo environment to - * transition a contractor payment group's `status` from `Unfunded` to `Funded`. - * - *

    A `Funded` status is required for generating a contractor payment receipt. - * - *

    scope: `payrolls:run` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The async call builder - */ - public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequestBuilder fund() { - return new PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequestBuilder(sdkConfiguration); - } - - /** - * Fund a contractor payment group [DEMO] - * - *

    > 🚧 Demo action - * > This action is only available in the Demo environment - * - *

    Simulate funding a contractor payment group. Funding only occurs automatically in the production - * environment when bank transactions are generated. Use this action in the demo environment to - * transition a contractor payment group's `status` from `Unfunded` to `Funded`. - * - *

    A `Funded` status is required for generating a contractor payment receipt. - * - *

    scope: `payrolls:run` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param contractorPaymentGroupUuid The UUID of the contractor payment group - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture fund(String contractorPaymentGroupUuid) { - return fund(contractorPaymentGroupUuid, Optional.empty()); - } - - /** - * Fund a contractor payment group [DEMO] - * - *

    > 🚧 Demo action - * > This action is only available in the Demo environment - * - *

    Simulate funding a contractor payment group. Funding only occurs automatically in the production - * environment when bank transactions are generated. Use this action in the demo environment to - * transition a contractor payment group's `status` from `Unfunded` to `Funded`. - * - *

    A `Funded` status is required for generating a contractor payment receipt. - * - *

    scope: `payrolls:run` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param contractorPaymentGroupUuid The UUID of the contractor payment group - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture fund(String contractorPaymentGroupUuid, Optional xGustoAPIVersion) { - PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest request = - PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest - .builder() - .contractorPaymentGroupUuid(contractorPaymentGroupUuid) - .xGustoAPIVersion(xGustoAPIVersion) - .build(); - AsyncRequestOperation operation - = new PutV1ContractorPaymentGroupsContractorPaymentGroupIdFund.Async(sdkConfiguration, _headers); - return operation.doRequest(request) - .thenCompose(operation::handleResponse); - } - - /** * Get partner disbursements for a contractor payment group * @@ -480,7 +480,7 @@ public GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder getV1Con * @return {@code CompletableFuture} - The async response */ public CompletableFuture getV1ContractorPaymentGroupsIdPartnerDisbursements(String id) { - return getV1ContractorPaymentGroupsIdPartnerDisbursements(id, Optional.empty()); + return getV1ContractorPaymentGroupsIdPartnerDisbursements(Optional.empty(), id); } /** @@ -492,16 +492,16 @@ public CompletableFutureIf set, this operation will use Security#companyAccessAuth from the global security. * - * @param id The UUID of the contractor payment group * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param id The UUID of the contractor payment group * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getV1ContractorPaymentGroupsIdPartnerDisbursements(String id, Optional xGustoAPIVersion) { + public CompletableFuture getV1ContractorPaymentGroupsIdPartnerDisbursements(Optional xGustoAPIVersion, String id) { GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest request = GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest .builder() - .id(id) .xGustoAPIVersion(xGustoAPIVersion) + .id(id) .build(); AsyncRequestOperation operation = new GetV1ContractorPaymentGroupsIdPartnerDisbursements.Async(sdkConfiguration, _headers); @@ -538,7 +538,7 @@ public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder patchV * @return {@code CompletableFuture} - The async response */ public CompletableFuture patchV1ContractorPaymentGroupsIdPartnerDisbursements(String id) { - return patchV1ContractorPaymentGroupsIdPartnerDisbursements(id, Optional.empty(), Optional.empty()); + return patchV1ContractorPaymentGroupsIdPartnerDisbursements(Optional.empty(), id, Optional.empty()); } /** @@ -550,19 +550,19 @@ public CompletableFutureIf set, this operation will use Security#companyAccessAuth from the global security. * - * @param id The UUID of the contractor payment group * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param id The UUID of the contractor payment group * @param requestBody * @return {@code CompletableFuture} - The async response */ public CompletableFuture patchV1ContractorPaymentGroupsIdPartnerDisbursements( - String id, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String id, Optional requestBody) { PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest request = PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest .builder() - .id(id) .xGustoAPIVersion(xGustoAPIVersion) + .id(id) .requestBody(requestBody) .build(); AsyncRequestOperation operation diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncContractorPayments.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncContractorPayments.java index 6d03411d3..1e81ab6d2 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncContractorPayments.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncContractorPayments.java @@ -20,6 +20,7 @@ import com.gusto.embedded_api.models.operations.GetV1ContractorPaymentsContractorPaymentUuidFundRequest; import com.gusto.embedded_api.models.operations.GetV1ContractorPaymentsContractorPaymentUuidReceiptHeaderXGustoAPIVersion; import com.gusto.embedded_api.models.operations.GetV1ContractorPaymentsContractorPaymentUuidReceiptRequest; +import com.gusto.embedded_api.models.operations.GetV1ContractorsContractorUuidPaymentsRequest; import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyIdContractorPaymentsHeaderXGustoAPIVersion; import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyIdContractorPaymentsRequest; import com.gusto.embedded_api.models.operations.async.DeleteV1CompaniesCompanyIdContractorPaymentContractorPaymentRequestBuilder; @@ -36,6 +37,8 @@ import com.gusto.embedded_api.models.operations.async.GetV1ContractorPaymentsContractorPaymentUuidFundResponse; import com.gusto.embedded_api.models.operations.async.GetV1ContractorPaymentsContractorPaymentUuidReceiptRequestBuilder; import com.gusto.embedded_api.models.operations.async.GetV1ContractorPaymentsContractorPaymentUuidReceiptResponse; +import com.gusto.embedded_api.models.operations.async.GetV1ContractorsContractorUuidPaymentsRequestBuilder; +import com.gusto.embedded_api.models.operations.async.GetV1ContractorsContractorUuidPaymentsResponse; import com.gusto.embedded_api.models.operations.async.PostV1CompaniesCompanyIdContractorPaymentsRequestBuilder; import com.gusto.embedded_api.models.operations.async.PostV1CompaniesCompanyIdContractorPaymentsResponse; import com.gusto.embedded_api.operations.DeleteV1CompaniesCompanyIdContractorPaymentContractorPayment; @@ -45,6 +48,7 @@ import com.gusto.embedded_api.operations.GetV1ContractorPaymentsContractorPaymentIdPdf; import com.gusto.embedded_api.operations.GetV1ContractorPaymentsContractorPaymentUuidFund; import com.gusto.embedded_api.operations.GetV1ContractorPaymentsContractorPaymentUuidReceipt; +import com.gusto.embedded_api.operations.GetV1ContractorsContractorUuidPayments; import com.gusto.embedded_api.operations.PostV1CompaniesCompanyIdContractorPayments; import com.gusto.embedded_api.utils.Headers; import java.lang.String; @@ -73,167 +77,99 @@ public ContractorPayments sync() { /** - * Get a single contractor payment receipt + * Get contractor payments * - *

    Returns a contractor payment receipt. + *

    Returns a paginated list of payments for a single contractor. * - *

    Notes: - * * Receipts are only available for direct deposit payments and are only available once those payments - * have been funded. - * * Payroll Receipt requests for payrolls which do not have receipts available (e.g. payment by check) - * will return a 404 status. - * * Hour and dollar amounts are returned as string representations of numeric decimals. - * * Dollar amounts are represented to the cent. - * * If no data has yet be inserted for a given field, it defaults to “0.00” (for fixed amounts). + *

    Results are sortable by `check_date` or `created_at`. Append `:asc` or `:desc` to control direction + * (e.g., `check_date:desc`). * - *

    scope: `payrolls:read` + *

    scope: `contractor_pay_stubs:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public GetV1ContractorPaymentsContractorPaymentUuidReceiptRequestBuilder getReceipt() { - return new GetV1ContractorPaymentsContractorPaymentUuidReceiptRequestBuilder(sdkConfiguration); + public GetV1ContractorsContractorUuidPaymentsRequestBuilder getV1ContractorsContractorUuidPayments() { + return new GetV1ContractorsContractorUuidPaymentsRequestBuilder(sdkConfiguration); } /** - * Get a single contractor payment receipt + * Get contractor payments * - *

    Returns a contractor payment receipt. + *

    Returns a paginated list of payments for a single contractor. * - *

    Notes: - * * Receipts are only available for direct deposit payments and are only available once those payments - * have been funded. - * * Payroll Receipt requests for payrolls which do not have receipts available (e.g. payment by check) - * will return a 404 status. - * * Hour and dollar amounts are returned as string representations of numeric decimals. - * * Dollar amounts are represented to the cent. - * * If no data has yet be inserted for a given field, it defaults to “0.00” (for fixed amounts). + *

    Results are sortable by `check_date` or `created_at`. Append `:asc` or `:desc` to control direction + * (e.g., `check_date:desc`). * - *

    scope: `payrolls:read` + *

    scope: `contractor_pay_stubs:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param contractorPaymentUuid The UUID of the contractor payment - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture getReceipt(String contractorPaymentUuid) { - return getReceipt(Optional.empty(), contractorPaymentUuid); - } - - /** - * Get a single contractor payment receipt - * - *

    Returns a contractor payment receipt. - * - *

    Notes: - * * Receipts are only available for direct deposit payments and are only available once those payments - * have been funded. - * * Payroll Receipt requests for payrolls which do not have receipts available (e.g. payment by check) - * will return a 404 status. - * * Hour and dollar amounts are returned as string representations of numeric decimals. - * * Dollar amounts are represented to the cent. - * * If no data has yet be inserted for a given field, it defaults to “0.00” (for fixed amounts). - * - *

    scope: `payrolls:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param contractorPaymentUuid The UUID of the contractor payment - * @return {@code CompletableFuture} - The async response + * @param request The request object containing all the parameters for the API call. + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getReceipt(Optional xGustoAPIVersion, String contractorPaymentUuid) { - GetV1ContractorPaymentsContractorPaymentUuidReceiptRequest request = - GetV1ContractorPaymentsContractorPaymentUuidReceiptRequest - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .contractorPaymentUuid(contractorPaymentUuid) - .build(); - AsyncRequestOperation operation - = new GetV1ContractorPaymentsContractorPaymentUuidReceipt.Async(sdkConfiguration, _headers); + public CompletableFuture getV1ContractorsContractorUuidPayments(GetV1ContractorsContractorUuidPaymentsRequest request) { + AsyncRequestOperation operation + = new GetV1ContractorsContractorUuidPayments.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Fund a contractor payment [DEMO] - * - *

    > 🚧 Demo action - * > - * > This action is only available in the Demo environment - * - *

    Simulate funding a contractor payment. Funding only occurs automatically in the production - * environment when bank transactions are generated. Use this action in the demo environment to - * transition a contractor payment's `status` from `Unfunded` to `Funded`. + * Get a contractor payment PDF * - *

    A `Funded` status is required for generating a contractor payment receipt. + *

    Get a PDF document for a single contractor payment. * - *

    scope: `payrolls:run` + *

    scope: `payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public GetV1ContractorPaymentsContractorPaymentUuidFundRequestBuilder fund() { - return new GetV1ContractorPaymentsContractorPaymentUuidFundRequestBuilder(sdkConfiguration); + public GetV1ContractorPaymentsContractorPaymentIdPdfRequestBuilder getV1ContractorPaymentsContractorPaymentIdPdf() { + return new GetV1ContractorPaymentsContractorPaymentIdPdfRequestBuilder(sdkConfiguration); } /** - * Fund a contractor payment [DEMO] - * - *

    > 🚧 Demo action - * > - * > This action is only available in the Demo environment - * - *

    Simulate funding a contractor payment. Funding only occurs automatically in the production - * environment when bank transactions are generated. Use this action in the demo environment to - * transition a contractor payment's `status` from `Unfunded` to `Funded`. + * Get a contractor payment PDF * - *

    A `Funded` status is required for generating a contractor payment receipt. + *

    Get a PDF document for a single contractor payment. * - *

    scope: `payrolls:run` + *

    scope: `payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param contractorPaymentUuid The UUID of the contractor payment - * @return {@code CompletableFuture} - The async response + * @param contractorPaymentId The UUID of the contractor payment + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture fund(String contractorPaymentUuid) { - return fund(Optional.empty(), contractorPaymentUuid); + public CompletableFuture getV1ContractorPaymentsContractorPaymentIdPdf(String contractorPaymentId) { + return getV1ContractorPaymentsContractorPaymentIdPdf(Optional.empty(), contractorPaymentId); } /** - * Fund a contractor payment [DEMO] - * - *

    > 🚧 Demo action - * > - * > This action is only available in the Demo environment - * - *

    Simulate funding a contractor payment. Funding only occurs automatically in the production - * environment when bank transactions are generated. Use this action in the demo environment to - * transition a contractor payment's `status` from `Unfunded` to `Funded`. + * Get a contractor payment PDF * - *

    A `Funded` status is required for generating a contractor payment receipt. + *

    Get a PDF document for a single contractor payment. * - *

    scope: `payrolls:run` + *

    scope: `payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param contractorPaymentUuid The UUID of the contractor payment - * @return {@code CompletableFuture} - The async response + * @param contractorPaymentId The UUID of the contractor payment + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture fund(Optional xGustoAPIVersion, String contractorPaymentUuid) { - GetV1ContractorPaymentsContractorPaymentUuidFundRequest request = - GetV1ContractorPaymentsContractorPaymentUuidFundRequest + public CompletableFuture getV1ContractorPaymentsContractorPaymentIdPdf(Optional xGustoAPIVersion, String contractorPaymentId) { + GetV1ContractorPaymentsContractorPaymentIdPdfRequest request = + GetV1ContractorPaymentsContractorPaymentIdPdfRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .contractorPaymentUuid(contractorPaymentUuid) + .contractorPaymentId(contractorPaymentId) .build(); - AsyncRequestOperation operation - = new GetV1ContractorPaymentsContractorPaymentUuidFund.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new GetV1ContractorPaymentsContractorPaymentIdPdf.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } @@ -545,9 +481,18 @@ public CompletableFutureGet a PDF document for a single contractor payment. + *

    Returns a contractor payment receipt. + * + *

    Notes: + * * Receipts are only available for direct deposit payments and are only available once those payments + * have been funded. + * * Payroll Receipt requests for payrolls which do not have receipts available (e.g. payment by check) + * will return a 404 status. + * * Hour and dollar amounts are returned as string representations of numeric decimals. + * * Dollar amounts are represented to the cent. + * * If no data has yet be inserted for a given field, it defaults to “0.00” (for fixed amounts). * *

    scope: `payrolls:read` * @@ -555,48 +500,148 @@ public CompletableFutureGet a PDF document for a single contractor payment. + *

    Returns a contractor payment receipt. + * + *

    Notes: + * * Receipts are only available for direct deposit payments and are only available once those payments + * have been funded. + * * Payroll Receipt requests for payrolls which do not have receipts available (e.g. payment by check) + * will return a 404 status. + * * Hour and dollar amounts are returned as string representations of numeric decimals. + * * Dollar amounts are represented to the cent. + * * If no data has yet be inserted for a given field, it defaults to “0.00” (for fixed amounts). * *

    scope: `payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param contractorPaymentId The UUID of the contractor payment - * @return {@code CompletableFuture} - The async response + * @param contractorPaymentUuid The UUID of the contractor payment + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getV1ContractorPaymentsContractorPaymentIdPdf(String contractorPaymentId) { - return getV1ContractorPaymentsContractorPaymentIdPdf(Optional.empty(), contractorPaymentId); + public CompletableFuture getReceipt(String contractorPaymentUuid) { + return getReceipt(Optional.empty(), contractorPaymentUuid); } /** - * Get a contractor payment PDF + * Get a single contractor payment receipt * - *

    Get a PDF document for a single contractor payment. + *

    Returns a contractor payment receipt. + * + *

    Notes: + * * Receipts are only available for direct deposit payments and are only available once those payments + * have been funded. + * * Payroll Receipt requests for payrolls which do not have receipts available (e.g. payment by check) + * will return a 404 status. + * * Hour and dollar amounts are returned as string representations of numeric decimals. + * * Dollar amounts are represented to the cent. + * * If no data has yet be inserted for a given field, it defaults to “0.00” (for fixed amounts). * *

    scope: `payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param contractorPaymentId The UUID of the contractor payment - * @return {@code CompletableFuture} - The async response + * @param contractorPaymentUuid The UUID of the contractor payment + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getV1ContractorPaymentsContractorPaymentIdPdf(Optional xGustoAPIVersion, String contractorPaymentId) { - GetV1ContractorPaymentsContractorPaymentIdPdfRequest request = - GetV1ContractorPaymentsContractorPaymentIdPdfRequest + public CompletableFuture getReceipt(Optional xGustoAPIVersion, String contractorPaymentUuid) { + GetV1ContractorPaymentsContractorPaymentUuidReceiptRequest request = + GetV1ContractorPaymentsContractorPaymentUuidReceiptRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .contractorPaymentId(contractorPaymentId) + .contractorPaymentUuid(contractorPaymentUuid) .build(); - AsyncRequestOperation operation - = new GetV1ContractorPaymentsContractorPaymentIdPdf.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new GetV1ContractorPaymentsContractorPaymentUuidReceipt.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Fund a contractor payment [DEMO] + * + *

    > 🚧 Demo action + * > + * > This action is only available in the Demo environment + * + *

    Simulate funding a contractor payment. Funding only occurs automatically in the production + * environment when bank transactions are generated. Use this action in the demo environment to + * transition a contractor payment's `status` from `Unfunded` to `Funded`. + * + *

    A `Funded` status is required for generating a contractor payment receipt. + * + *

    scope: `payrolls:run` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public GetV1ContractorPaymentsContractorPaymentUuidFundRequestBuilder fund() { + return new GetV1ContractorPaymentsContractorPaymentUuidFundRequestBuilder(sdkConfiguration); + } + + /** + * Fund a contractor payment [DEMO] + * + *

    > 🚧 Demo action + * > + * > This action is only available in the Demo environment + * + *

    Simulate funding a contractor payment. Funding only occurs automatically in the production + * environment when bank transactions are generated. Use this action in the demo environment to + * transition a contractor payment's `status` from `Unfunded` to `Funded`. + * + *

    A `Funded` status is required for generating a contractor payment receipt. + * + *

    scope: `payrolls:run` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param contractorPaymentUuid The UUID of the contractor payment + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture fund(String contractorPaymentUuid) { + return fund(Optional.empty(), contractorPaymentUuid); + } + + /** + * Fund a contractor payment [DEMO] + * + *

    > 🚧 Demo action + * > + * > This action is only available in the Demo environment + * + *

    Simulate funding a contractor payment. Funding only occurs automatically in the production + * environment when bank transactions are generated. Use this action in the demo environment to + * transition a contractor payment's `status` from `Unfunded` to `Funded`. + * + *

    A `Funded` status is required for generating a contractor payment receipt. + * + *

    scope: `payrolls:run` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param contractorPaymentUuid The UUID of the contractor payment + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture fund(Optional xGustoAPIVersion, String contractorPaymentUuid) { + GetV1ContractorPaymentsContractorPaymentUuidFundRequest request = + GetV1ContractorPaymentsContractorPaymentUuidFundRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .contractorPaymentUuid(contractorPaymentUuid) + .build(); + AsyncRequestOperation operation + = new GetV1ContractorPaymentsContractorPaymentUuidFund.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncContractors.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncContractors.java index adf3cf936..fd42287f1 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncContractors.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncContractors.java @@ -109,107 +109,10 @@ public Contractors sync() { /** - * Get contractors of a company - * - *

    Get all contractors, active and inactive, individual and business, for a company. - * - *

    scope: `contractors:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The async call builder - */ - public GetV1CompaniesCompanyUuidContractorsRequestBuilder list() { - return new GetV1CompaniesCompanyUuidContractorsRequestBuilder(sdkConfiguration); - } - - /** - * Get contractors of a company - * - *

    Get all contractors, active and inactive, individual and business, for a company. - * - *

    scope: `contractors:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param request The request object containing all the parameters for the API call. - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture list(GetV1CompaniesCompanyUuidContractorsRequest request) { - AsyncRequestOperation operation - = new GetV1CompaniesCompanyUuidContractors.Async(sdkConfiguration, _headers); - return operation.doRequest(request) - .thenCompose(operation::handleResponse); - } - - - /** - * Create a contractor - * - *

    Create an individual or business contractor. - * - *

    scope: `contractors:manage` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The async call builder - */ - public PostV1CompaniesCompanyUuidContractorsRequestBuilder create() { - return new PostV1CompaniesCompanyUuidContractorsRequestBuilder(sdkConfiguration); - } - - /** - * Create a contractor - * - *

    Create an individual or business contractor. - * - *

    scope: `contractors:manage` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param companyUuid The UUID of the company - * @param contractorCreateRequestBody Request body for creating a contractor. - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture create(String companyUuid, ContractorCreateRequestBody contractorCreateRequestBody) { - return create(Optional.empty(), companyUuid, contractorCreateRequestBody); - } - - /** - * Create a contractor - * - *

    Create an individual or business contractor. - * - *

    scope: `contractors:manage` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyUuid The UUID of the company - * @param contractorCreateRequestBody Request body for creating a contractor. - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture create( - Optional xGustoAPIVersion, String companyUuid, - ContractorCreateRequestBody contractorCreateRequestBody) { - PostV1CompaniesCompanyUuidContractorsRequest request = - PostV1CompaniesCompanyUuidContractorsRequest - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .companyUuid(companyUuid) - .contractorCreateRequestBody(contractorCreateRequestBody) - .build(); - AsyncRequestOperation operation - = new PostV1CompaniesCompanyUuidContractors.Async(sdkConfiguration, _headers); - return operation.doRequest(request) - .thenCompose(operation::handleResponse); - } - - - /** - * Get a contractor + * Get a contractor address * - *

    Get a contractor. + *

    The address of a contractor is used to determine certain tax information about them. Addresses are + * geocoded on create and update to ensure validity. * *

    scope: `contractors:read` * @@ -217,30 +120,32 @@ public CompletableFuture create( * * @return The async call builder */ - public GetV1ContractorsContractorUuidRequestBuilder get() { - return new GetV1ContractorsContractorUuidRequestBuilder(sdkConfiguration); + public GetV1ContractorsContractorUuidAddressRequestBuilder getAddress() { + return new GetV1ContractorsContractorUuidAddressRequestBuilder(sdkConfiguration); } /** - * Get a contractor + * Get a contractor address * - *

    Get a contractor. + *

    The address of a contractor is used to determine certain tax information about them. Addresses are + * geocoded on create and update to ensure validity. * *

    scope: `contractors:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param contractorUuid The UUID of the contractor - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture get(String contractorUuid) { - return get(Optional.empty(), contractorUuid, Optional.empty()); + public CompletableFuture getAddress(String contractorUuid) { + return getAddress(Optional.empty(), contractorUuid); } /** - * Get a contractor + * Get a contractor address * - *

    Get a contractor. + *

    The address of a contractor is used to determine certain tax information about them. Addresses are + * geocoded on create and update to ensure validity. * *

    scope: `contractors:read` * @@ -248,36 +153,32 @@ public CompletableFuture get(String cont * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param contractorUuid The UUID of the contractor - * @param include Include the requested attribute(s) in each contractor response. Multiple options are comma separated. - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture get( - Optional xGustoAPIVersion, String contractorUuid, - Optional> include) { - GetV1ContractorsContractorUuidRequest request = - GetV1ContractorsContractorUuidRequest + public CompletableFuture getAddress(Optional xGustoAPIVersion, String contractorUuid) { + GetV1ContractorsContractorUuidAddressRequest request = + GetV1ContractorsContractorUuidAddressRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .contractorUuid(contractorUuid) - .include(include) .build(); - AsyncRequestOperation operation - = new GetV1ContractorsContractorUuid.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new GetV1ContractorsContractorUuidAddress.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Update a contractor + * Create or update a contractor's address * - *

    Update a contractor. + *

    The address of a contractor is used to determine certain tax information about them. Addresses are + * geocoded on create and update to ensure validity. * - *

    > 🚧 Warning + *

    > 🚧 Contractors can only have one address. * > - * > Watch out when changing a contractor's type (when the contractor is finished onboarding). - * Specifically, changing contractor type can be dangerous since Gusto won't recognize and file two - * separate 1099s if they simply change from business to individual + * > When a contractor is created, an address is created for them by default. Updating the address + * will replace the existing address. * *

    scope: `contractors:write` * @@ -285,43 +186,43 @@ public CompletableFuture get( * * @return The async call builder */ - public PutV1ContractorsContractorUuidRequestBuilder update() { - return new PutV1ContractorsContractorUuidRequestBuilder(sdkConfiguration); + public PutV1ContractorsContractorUuidAddressRequestBuilder updateAddress() { + return new PutV1ContractorsContractorUuidAddressRequestBuilder(sdkConfiguration); } /** - * Update a contractor + * Create or update a contractor's address * - *

    Update a contractor. + *

    The address of a contractor is used to determine certain tax information about them. Addresses are + * geocoded on create and update to ensure validity. * - *

    > 🚧 Warning + *

    > 🚧 Contractors can only have one address. * > - * > Watch out when changing a contractor's type (when the contractor is finished onboarding). - * Specifically, changing contractor type can be dangerous since Gusto won't recognize and file two - * separate 1099s if they simply change from business to individual + * > When a contractor is created, an address is created for them by default. Updating the address + * will replace the existing address. * *

    scope: `contractors:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param contractorUuid The UUID of the contractor - * @param contractorUpdateRequestBody Request body for updating a contractor. - * @return {@code CompletableFuture} - The async response + * @param contractorAddressUpdateBody + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture update(String contractorUuid, ContractorUpdateRequestBody contractorUpdateRequestBody) { - return update(Optional.empty(), contractorUuid, contractorUpdateRequestBody); + public CompletableFuture updateAddress(String contractorUuid, ContractorAddressUpdateBody contractorAddressUpdateBody) { + return updateAddress(Optional.empty(), contractorUuid, contractorAddressUpdateBody); } /** - * Update a contractor + * Create or update a contractor's address * - *

    Update a contractor. + *

    The address of a contractor is used to determine certain tax information about them. Addresses are + * geocoded on create and update to ensure validity. * - *

    > 🚧 Warning + *

    > 🚧 Contractors can only have one address. * > - * > Watch out when changing a contractor's type (when the contractor is finished onboarding). - * Specifically, changing contractor type can be dangerous since Gusto won't recognize and file two - * separate 1099s if they simply change from business to individual + * > When a contractor is created, an address is created for them by default. Updating the address + * will replace the existing address. * *

    scope: `contractors:write` * @@ -329,269 +230,358 @@ public CompletableFuture update(String c * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param contractorUuid The UUID of the contractor - * @param contractorUpdateRequestBody Request body for updating a contractor. - * @return {@code CompletableFuture} - The async response + * @param contractorAddressUpdateBody + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture update( - Optional xGustoAPIVersion, String contractorUuid, - ContractorUpdateRequestBody contractorUpdateRequestBody) { - PutV1ContractorsContractorUuidRequest request = - PutV1ContractorsContractorUuidRequest + public CompletableFuture updateAddress( + Optional xGustoAPIVersion, String contractorUuid, + ContractorAddressUpdateBody contractorAddressUpdateBody) { + PutV1ContractorsContractorUuidAddressRequest request = + PutV1ContractorsContractorUuidAddressRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .contractorUuid(contractorUuid) - .contractorUpdateRequestBody(contractorUpdateRequestBody) + .contractorAddressUpdateBody(contractorAddressUpdateBody) .build(); - AsyncRequestOperation operation - = new PutV1ContractorsContractorUuid.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new PutV1ContractorsContractorUuidAddress.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Delete a contractor + * List contractor payment details * - *

    A contractor can only be deleted when there are no contractor payments. + *

    Get payment details for contractors in a company. This endpoint returns a list of all contractors + * associated with the specified company, including their payment methods and bank account details + * if they are paid via direct deposit. * - *

    scope: `contractors:manage` + *

    For contractors paid by direct deposit, the response includes their bank account information + * with sensitive data masked for security. The payment details also include information about + * how their payments are split if they have multiple bank accounts configured. * - *

    If set, this operation will use Security#companyAccessAuth from the global security. + *

    For contractors paid by check, only the basic payment method information is returned. * - * @return The async call builder - */ - public DeleteV1ContractorsContractorUuidRequestBuilder delete() { - return new DeleteV1ContractorsContractorUuidRequestBuilder(sdkConfiguration); - } - - /** - * Delete a contractor + *

    ### Response Details + * - For direct deposit contractors: + * - Bank account details (masked) + * - Payment splits configuration + * - Routing numbers + * - Account types + * - For check payments: + * - Basic payment method designation * - *

    A contractor can only be deleted when there are no contractor payments. + *

    ### Common Use Cases + * - Fetching contractor payment information for payroll processing + * - Verifying contractor payment methods + * - Reviewing payment split configurations * - *

    scope: `contractors:manage` + *

    `encrypted_account_number` is available only with the additional scope + * `contractor_payment_methods:read:account_numbers`. + * + *

    scope: `contractor_payment_methods:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param contractorUuid The UUID of the contractor - * @return {@code CompletableFuture} - The async response + * @return The async call builder */ - public CompletableFuture delete(String contractorUuid) { - return delete(Optional.empty(), contractorUuid); + public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder getV1CompaniesCompanyIdContractorsPaymentDetails() { + return new GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder(sdkConfiguration); } /** - * Delete a contractor - * - *

    A contractor can only be deleted when there are no contractor payments. + * List contractor payment details * - *

    scope: `contractors:manage` + *

    Get payment details for contractors in a company. This endpoint returns a list of all contractors + * associated with the specified company, including their payment methods and bank account details + * if they are paid via direct deposit. + * + *

    For contractors paid by direct deposit, the response includes their bank account information + * with sensitive data masked for security. The payment details also include information about + * how their payments are split if they have multiple bank accounts configured. + * + *

    For contractors paid by check, only the basic payment method information is returned. + * + *

    ### Response Details + * - For direct deposit contractors: + * - Bank account details (masked) + * - Payment splits configuration + * - Routing numbers + * - Account types + * - For check payments: + * - Basic payment method designation + * + *

    ### Common Use Cases + * - Fetching contractor payment information for payroll processing + * - Verifying contractor payment methods + * - Reviewing payment split configurations + * + *

    `encrypted_account_number` is available only with the additional scope + * `contractor_payment_methods:read:account_numbers`. + * + *

    scope: `contractor_payment_methods:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param companyId The UUID of the company. This identifies the company whose contractor payment details you want to retrieve. + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getV1CompaniesCompanyIdContractorsPaymentDetails(String companyId) { + return getV1CompaniesCompanyIdContractorsPaymentDetails( + Optional.empty(), companyId, Optional.empty(), + Optional.empty()); + } + + /** + * List contractor payment details + * + *

    Get payment details for contractors in a company. This endpoint returns a list of all contractors + * associated with the specified company, including their payment methods and bank account details + * if they are paid via direct deposit. + * + *

    For contractors paid by direct deposit, the response includes their bank account information + * with sensitive data masked for security. The payment details also include information about + * how their payments are split if they have multiple bank accounts configured. + * + *

    For contractors paid by check, only the basic payment method information is returned. + * + *

    ### Response Details + * - For direct deposit contractors: + * - Bank account details (masked) + * - Payment splits configuration + * - Routing numbers + * - Account types + * - For check payments: + * - Basic payment method designation + * + *

    ### Common Use Cases + * - Fetching contractor payment information for payroll processing + * - Verifying contractor payment methods + * - Reviewing payment split configurations + * + *

    `encrypted_account_number` is available only with the additional scope + * `contractor_payment_methods:read:account_numbers`. + * + *

    scope: `contractor_payment_methods:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param contractorUuid The UUID of the contractor - * @return {@code CompletableFuture} - The async response + * @param companyId The UUID of the company. This identifies the company whose contractor payment details you want to retrieve. + * @param contractorUuid Optional filter to get payment details for a specific contractor. When provided, the response will only include payment details for this contractor. + * @param contractorPaymentGroupUuid 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. + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture delete(Optional xGustoAPIVersion, String contractorUuid) { - DeleteV1ContractorsContractorUuidRequest request = - DeleteV1ContractorsContractorUuidRequest + public CompletableFuture getV1CompaniesCompanyIdContractorsPaymentDetails( + Optional xGustoAPIVersion, String companyId, + Optional contractorUuid, Optional contractorPaymentGroupUuid) { + GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest request = + GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) .contractorUuid(contractorUuid) + .contractorPaymentGroupUuid(contractorPaymentGroupUuid) .build(); - AsyncRequestOperation operation - = new DeleteV1ContractorsContractorUuid.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new GetV1CompaniesCompanyIdContractorsPaymentDetails.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Get the contractor's onboarding status + * Schedule a contractor rehire * - *

    Retrieves a contractor's onboarding status. The data returned helps inform the required onboarding - * steps and respective completion status. + *

    ## Purpose + * Schedules a contractor rehire for a given date. Creates a new employment record for the contractor. * - *

    ## onboarding_status + *

    ## Prerequisites + * Before calling this endpoint: + * 1. The contractor must be inactive (previously dismissed) + * 2. The contractor must not already have an upcoming employment * - *

    ### Admin-facilitated onboarding - * | onboarding_status | Description | - * |:------------------|------------:| - * | `admin_onboarding_incomplete` | Admin needs to enter basic information about the contractor. | - * | `admin_onboarding_review` | All information has been completed and admin needs to confirm - * onboarding. | - * | `onboarding_completed` | Contractor has been fully onboarded and verified. | + *

    ## Related webhooks + * - `contractor.reactivated`: Fires when the contractor becomes active again (on or after start_date) * - *

    ### Contractor self-onboarding + *

    scope: `contractors:write` * - *

    | onboarding_status | Description | - * | --- | ----------- | - * | `admin_onboarding_incomplete` | Admin needs to enter basic information about the contractor. | - * | `self_onboarding_not_invited` | Admin has the intention to invite the contractor to self-onboard - * (e.g., marking a checkbox), but the system has not yet sent the invitation. | - * | `self_onboarding_invited` | Contractor has been sent an invitation to self-onboard. | - * | `self_onboarding_started` | Contractor has started the self-onboarding process. | - * | `self_onboarding_review` | Admin needs to review contractors's entered information and confirm - * onboarding. | - * | `onboarding_completed` | Contractor has been fully onboarded and verified. | + *

    If set, this operation will use Security#companyAccessAuth from the global security. * - *

    ## onboarding_steps + * @return The async call builder + */ + public PostV1ContractorsContractorUuidRehireRequestBuilder postV1ContractorsContractorUuidRehire() { + return new PostV1ContractorsContractorUuidRehireRequestBuilder(sdkConfiguration); + } + + /** + * Schedule a contractor rehire * - *

    | onboarding_steps | Requirement(s) to be completed | - * |:-----------------|-------------------------------:| - * | `basic_details` | Add individual contractor's first name, last name, social security number or - * Business name and EIN depending on the contractor type | - * | `add_address` | Add contractor address. | - * | `compensation_details` | Add contractor compensation. | - * | `payment_details` | (optional) Set up contractor's direct deposit or set to check. | - * | `sign_documents` | Contractor forms (e.g., W9) are generated & signed. | - * | `file_new_hire_report` | Contractor new hire report is generated. | + *

    ## Purpose + * Schedules a contractor rehire for a given date. Creates a new employment record for the contractor. * - *

    scope: `contractors:read` + *

    ## Prerequisites + * Before calling this endpoint: + * 1. The contractor must be inactive (previously dismissed) + * 2. The contractor must not already have an upcoming employment + * + *

    ## Related webhooks + * - `contractor.reactivated`: Fires when the contractor becomes active again (on or after start_date) + * + *

    scope: `contractors:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @return The async call builder + * @param contractorUuid The UUID of the contractor + * @return {@code CompletableFuture} - The async response */ - public GetV1ContractorsContractorUuidOnboardingStatusRequestBuilder getOnboardingStatus() { - return new GetV1ContractorsContractorUuidOnboardingStatusRequestBuilder(sdkConfiguration); + public CompletableFuture postV1ContractorsContractorUuidRehire(String contractorUuid) { + return postV1ContractorsContractorUuidRehire(Optional.empty(), contractorUuid, Optional.empty()); } /** - * Get the contractor's onboarding status + * Schedule a contractor rehire * - *

    Retrieves a contractor's onboarding status. The data returned helps inform the required onboarding - * steps and respective completion status. + *

    ## Purpose + * Schedules a contractor rehire for a given date. Creates a new employment record for the contractor. * - *

    ## onboarding_status + *

    ## Prerequisites + * Before calling this endpoint: + * 1. The contractor must be inactive (previously dismissed) + * 2. The contractor must not already have an upcoming employment * - *

    ### Admin-facilitated onboarding - * | onboarding_status | Description | - * |:------------------|------------:| - * | `admin_onboarding_incomplete` | Admin needs to enter basic information about the contractor. | - * | `admin_onboarding_review` | All information has been completed and admin needs to confirm - * onboarding. | - * | `onboarding_completed` | Contractor has been fully onboarded and verified. | + *

    ## Related webhooks + * - `contractor.reactivated`: Fires when the contractor becomes active again (on or after start_date) * - *

    ### Contractor self-onboarding + *

    scope: `contractors:write` * - *

    | onboarding_status | Description | - * | --- | ----------- | - * | `admin_onboarding_incomplete` | Admin needs to enter basic information about the contractor. | - * | `self_onboarding_not_invited` | Admin has the intention to invite the contractor to self-onboard - * (e.g., marking a checkbox), but the system has not yet sent the invitation. | - * | `self_onboarding_invited` | Contractor has been sent an invitation to self-onboard. | - * | `self_onboarding_started` | Contractor has started the self-onboarding process. | - * | `self_onboarding_review` | Admin needs to review contractors's entered information and confirm - * onboarding. | - * | `onboarding_completed` | Contractor has been fully onboarded and verified. | + *

    If set, this operation will use Security#companyAccessAuth from the global security. * - *

    ## onboarding_steps + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param contractorUuid The UUID of the contractor + * @param requestBody + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture postV1ContractorsContractorUuidRehire( + Optional xGustoAPIVersion, String contractorUuid, + Optional requestBody) { + PostV1ContractorsContractorUuidRehireRequest request = + PostV1ContractorsContractorUuidRehireRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .contractorUuid(contractorUuid) + .requestBody(requestBody) + .build(); + AsyncRequestOperation operation + = new PostV1ContractorsContractorUuidRehire.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Cancel a pending contractor rehire * - *

    | onboarding_steps | Requirement(s) to be completed | - * |:-----------------|-------------------------------:| - * | `basic_details` | Add individual contractor's first name, last name, social security number or - * Business name and EIN depending on the contractor type | - * | `add_address` | Add contractor address. | - * | `compensation_details` | Add contractor compensation. | - * | `payment_details` | (optional) Set up contractor's direct deposit or set to check. | - * | `sign_documents` | Contractor forms (e.g., W9) are generated & signed. | - * | `file_new_hire_report` | Contractor new hire report is generated. | + *

    ## Purpose + * Cancels a pending contractor rehire. For future-dated rehires, cancellation is available anytime + * before the date. + * For past-dated rehires, cancellation is only available within the 2-day grace period. * - *

    scope: `contractors:read` + *

    ## Prerequisites + * Before calling this endpoint: + * - The contractor must have a pending rehire (upcoming employment) + * + *

    ## Related webhooks + * - `contractor.deactivated`: Fires when the contractor returns to inactive state after cancellation + * + *

    scope: `contractors:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param contractorUuid The UUID of the contractor - * @return {@code CompletableFuture} - The async response + * @return The async call builder */ - public CompletableFuture getOnboardingStatus(String contractorUuid) { - return getOnboardingStatus(Optional.empty(), contractorUuid); + public DeleteV1ContractorsContractorUuidRehireRequestBuilder deleteV1ContractorsContractorUuidRehire() { + return new DeleteV1ContractorsContractorUuidRehireRequestBuilder(sdkConfiguration); } /** - * Get the contractor's onboarding status + * Cancel a pending contractor rehire * - *

    Retrieves a contractor's onboarding status. The data returned helps inform the required onboarding - * steps and respective completion status. + *

    ## Purpose + * Cancels a pending contractor rehire. For future-dated rehires, cancellation is available anytime + * before the date. + * For past-dated rehires, cancellation is only available within the 2-day grace period. * - *

    ## onboarding_status + *

    ## Prerequisites + * Before calling this endpoint: + * - The contractor must have a pending rehire (upcoming employment) * - *

    ### Admin-facilitated onboarding - * | onboarding_status | Description | - * |:------------------|------------:| - * | `admin_onboarding_incomplete` | Admin needs to enter basic information about the contractor. | - * | `admin_onboarding_review` | All information has been completed and admin needs to confirm - * onboarding. | - * | `onboarding_completed` | Contractor has been fully onboarded and verified. | + *

    ## Related webhooks + * - `contractor.deactivated`: Fires when the contractor returns to inactive state after cancellation * - *

    ### Contractor self-onboarding + *

    scope: `contractors:write` * - *

    | onboarding_status | Description | - * | --- | ----------- | - * | `admin_onboarding_incomplete` | Admin needs to enter basic information about the contractor. | - * | `self_onboarding_not_invited` | Admin has the intention to invite the contractor to self-onboard - * (e.g., marking a checkbox), but the system has not yet sent the invitation. | - * | `self_onboarding_invited` | Contractor has been sent an invitation to self-onboard. | - * | `self_onboarding_started` | Contractor has started the self-onboarding process. | - * | `self_onboarding_review` | Admin needs to review contractors's entered information and confirm - * onboarding. | - * | `onboarding_completed` | Contractor has been fully onboarded and verified. | + *

    If set, this operation will use Security#companyAccessAuth from the global security. * - *

    ## onboarding_steps + * @param contractorUuid The UUID of the contractor + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture deleteV1ContractorsContractorUuidRehire(String contractorUuid) { + return deleteV1ContractorsContractorUuidRehire(Optional.empty(), contractorUuid); + } + + /** + * Cancel a pending contractor rehire * - *

    | onboarding_steps | Requirement(s) to be completed | - * |:-----------------|-------------------------------:| - * | `basic_details` | Add individual contractor's first name, last name, social security number or - * Business name and EIN depending on the contractor type | - * | `add_address` | Add contractor address. | - * | `compensation_details` | Add contractor compensation. | - * | `payment_details` | (optional) Set up contractor's direct deposit or set to check. | - * | `sign_documents` | Contractor forms (e.g., W9) are generated & signed. | - * | `file_new_hire_report` | Contractor new hire report is generated. | + *

    ## Purpose + * Cancels a pending contractor rehire. For future-dated rehires, cancellation is available anytime + * before the date. + * For past-dated rehires, cancellation is only available within the 2-day grace period. * - *

    scope: `contractors:read` + *

    ## Prerequisites + * Before calling this endpoint: + * - The contractor must have a pending rehire (upcoming employment) + * + *

    ## Related webhooks + * - `contractor.deactivated`: Fires when the contractor returns to inactive state after cancellation + * + *

    scope: `contractors:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param contractorUuid The UUID of the contractor - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getOnboardingStatus(Optional xGustoAPIVersion, String contractorUuid) { - GetV1ContractorsContractorUuidOnboardingStatusRequest request = - GetV1ContractorsContractorUuidOnboardingStatusRequest + public CompletableFuture deleteV1ContractorsContractorUuidRehire(Optional xGustoAPIVersion, String contractorUuid) { + DeleteV1ContractorsContractorUuidRehireRequest request = + DeleteV1ContractorsContractorUuidRehireRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .contractorUuid(contractorUuid) .build(); - AsyncRequestOperation operation - = new GetV1ContractorsContractorUuidOnboardingStatus.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new DeleteV1ContractorsContractorUuidRehire.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Change the contractor's onboarding status + * Schedule a contractor termination * - *

    Updates a contractor's onboarding status. + *

    ## Purpose + * Schedules a contractor dismissal for a given date. Supports both immediate (past dates) and + * future-dated dismissals. * - *

    Below is a list of valid onboarding status changes depending on the intended action to be performed - * on behalf of the contractor. + *

    ## Prerequisites + * Before calling this endpoint: + * 1. The contractor must be active (no existing pending dismissal) + * 2. The contractor must have a current employment * - *

    | Action | current onboarding_status | new onboarding_status | - * |:------------------|:------------:|----------:| - * | Mark a contractor as self-onboarding | `admin_onboarding_incomplete` | - * `self_onboarding_not_invited` | - * | Invite a contractor to self-onboard | `admin_onboarding_incomplete` or - * `self_onboarding_not_invited` | `self_onboarding_invited` | - * | Cancel a contractor's self-onboarding | `self_onboarding_invited` or `self_onboarding_not_invited` - * | `admin_onboarding_incomplete` | - * | Review a contractor's self-onboarded info | `self_onboarding_started` | `self_onboarding_review` | - * | Finish a contractor's onboarding | `admin_onboarding_review` or `self_onboarding_review` | - * `onboarding_completed` | + *

    ## Related webhooks + * - `contractor.deactivated`: Fires when the contractor becomes inactive (on or after end_date) * *

    scope: `contractors:write` * @@ -599,61 +589,50 @@ public CompletableFuture * * @return The async call builder */ - public PutV1ContractorsContractorUuidOnboardingStatusRequestBuilder updateOnboardingStatus() { - return new PutV1ContractorsContractorUuidOnboardingStatusRequestBuilder(sdkConfiguration); + public PostV1ContractorsContractorUuidTerminationRequestBuilder postV1ContractorsContractorUuidTermination() { + return new PostV1ContractorsContractorUuidTerminationRequestBuilder(sdkConfiguration); } /** - * Change the contractor's onboarding status + * Schedule a contractor termination * - *

    Updates a contractor's onboarding status. + *

    ## Purpose + * Schedules a contractor dismissal for a given date. Supports both immediate (past dates) and + * future-dated dismissals. * - *

    Below is a list of valid onboarding status changes depending on the intended action to be performed - * on behalf of the contractor. + *

    ## Prerequisites + * Before calling this endpoint: + * 1. The contractor must be active (no existing pending dismissal) + * 2. The contractor must have a current employment * - *

    | Action | current onboarding_status | new onboarding_status | - * |:------------------|:------------:|----------:| - * | Mark a contractor as self-onboarding | `admin_onboarding_incomplete` | - * `self_onboarding_not_invited` | - * | Invite a contractor to self-onboard | `admin_onboarding_incomplete` or - * `self_onboarding_not_invited` | `self_onboarding_invited` | - * | Cancel a contractor's self-onboarding | `self_onboarding_invited` or `self_onboarding_not_invited` - * | `admin_onboarding_incomplete` | - * | Review a contractor's self-onboarded info | `self_onboarding_started` | `self_onboarding_review` | - * | Finish a contractor's onboarding | `admin_onboarding_review` or `self_onboarding_review` | - * `onboarding_completed` | + *

    ## Related webhooks + * - `contractor.deactivated`: Fires when the contractor becomes inactive (on or after end_date) * *

    scope: `contractors:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param contractorUuid The UUID of the contractor - * @param contractorOnboardingStatusUpdateRequestBody Request body for updating a contractor's onboarding status. - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture updateOnboardingStatus(String contractorUuid, ContractorOnboardingStatusUpdateRequestBody contractorOnboardingStatusUpdateRequestBody) { - return updateOnboardingStatus(Optional.empty(), contractorUuid, contractorOnboardingStatusUpdateRequestBody); + public CompletableFuture postV1ContractorsContractorUuidTermination(String contractorUuid) { + return postV1ContractorsContractorUuidTermination(Optional.empty(), contractorUuid, Optional.empty()); } /** - * Change the contractor's onboarding status - * - *

    Updates a contractor's onboarding status. + * Schedule a contractor termination * - *

    Below is a list of valid onboarding status changes depending on the intended action to be performed - * on behalf of the contractor. + *

    ## Purpose + * Schedules a contractor dismissal for a given date. Supports both immediate (past dates) and + * future-dated dismissals. * - *

    | Action | current onboarding_status | new onboarding_status | - * |:------------------|:------------:|----------:| - * | Mark a contractor as self-onboarding | `admin_onboarding_incomplete` | - * `self_onboarding_not_invited` | - * | Invite a contractor to self-onboard | `admin_onboarding_incomplete` or - * `self_onboarding_not_invited` | `self_onboarding_invited` | - * | Cancel a contractor's self-onboarding | `self_onboarding_invited` or `self_onboarding_not_invited` - * | `admin_onboarding_incomplete` | - * | Review a contractor's self-onboarded info | `self_onboarding_started` | `self_onboarding_review` | - * | Finish a contractor's onboarding | `admin_onboarding_review` or `self_onboarding_review` | - * `onboarding_completed` | + *

    ## Prerequisites + * Before calling this endpoint: + * 1. The contractor must be active (no existing pending dismissal) + * 2. The contractor must have a current employment + * + *

    ## Related webhooks + * - `contractor.deactivated`: Fires when the contractor becomes inactive (on or after end_date) * *

    scope: `contractors:write` * @@ -661,592 +640,598 @@ public CompletableFuture * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param contractorUuid The UUID of the contractor - * @param contractorOnboardingStatusUpdateRequestBody Request body for updating a contractor's onboarding status. - * @return {@code CompletableFuture} - The async response + * @param requestBody + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture updateOnboardingStatus( - Optional xGustoAPIVersion, String contractorUuid, - ContractorOnboardingStatusUpdateRequestBody contractorOnboardingStatusUpdateRequestBody) { - PutV1ContractorsContractorUuidOnboardingStatusRequest request = - PutV1ContractorsContractorUuidOnboardingStatusRequest + public CompletableFuture postV1ContractorsContractorUuidTermination( + Optional xGustoAPIVersion, String contractorUuid, + Optional requestBody) { + PostV1ContractorsContractorUuidTerminationRequest request = + PostV1ContractorsContractorUuidTerminationRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .contractorUuid(contractorUuid) - .contractorOnboardingStatusUpdateRequestBody(contractorOnboardingStatusUpdateRequestBody) + .requestBody(requestBody) .build(); - AsyncRequestOperation operation - = new PutV1ContractorsContractorUuidOnboardingStatus.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new PostV1ContractorsContractorUuidTermination.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Get a contractor address + * Cancel a pending contractor termination * - *

    The address of a contractor is used to determine certain tax information about them. Addresses are - * geocoded on create and update to ensure validity. + *

    ## Purpose + * Cancels a pending contractor dismissal. For future-dated dismissals, cancellation is available + * anytime before the date. + * For past-dated dismissals, cancellation is only available within the 2-day grace period. * - *

    scope: `contractors:read` + *

    ## Prerequisites + * Before calling this endpoint: + * - The contractor must have a pending dismissal (scheduled or within the grace period) + * + *

    ## Related webhooks + * - `contractor.reactivated`: Fires when the contractor becomes active again after cancellation + * + *

    scope: `contractors:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public GetV1ContractorsContractorUuidAddressRequestBuilder getAddress() { - return new GetV1ContractorsContractorUuidAddressRequestBuilder(sdkConfiguration); + public DeleteV1ContractorsContractorUuidTerminationRequestBuilder deleteV1ContractorsContractorUuidTermination() { + return new DeleteV1ContractorsContractorUuidTerminationRequestBuilder(sdkConfiguration); } /** - * Get a contractor address + * Cancel a pending contractor termination * - *

    The address of a contractor is used to determine certain tax information about them. Addresses are - * geocoded on create and update to ensure validity. + *

    ## Purpose + * Cancels a pending contractor dismissal. For future-dated dismissals, cancellation is available + * anytime before the date. + * For past-dated dismissals, cancellation is only available within the 2-day grace period. * - *

    scope: `contractors:read` + *

    ## Prerequisites + * Before calling this endpoint: + * - The contractor must have a pending dismissal (scheduled or within the grace period) + * + *

    ## Related webhooks + * - `contractor.reactivated`: Fires when the contractor becomes active again after cancellation + * + *

    scope: `contractors:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param contractorUuid The UUID of the contractor - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getAddress(String contractorUuid) { - return getAddress(Optional.empty(), contractorUuid); + public CompletableFuture deleteV1ContractorsContractorUuidTermination(String contractorUuid) { + return deleteV1ContractorsContractorUuidTermination(Optional.empty(), contractorUuid); } /** - * Get a contractor address + * Cancel a pending contractor termination * - *

    The address of a contractor is used to determine certain tax information about them. Addresses are - * geocoded on create and update to ensure validity. + *

    ## Purpose + * Cancels a pending contractor dismissal. For future-dated dismissals, cancellation is available + * anytime before the date. + * For past-dated dismissals, cancellation is only available within the 2-day grace period. * - *

    scope: `contractors:read` + *

    ## Prerequisites + * Before calling this endpoint: + * - The contractor must have a pending dismissal (scheduled or within the grace period) + * + *

    ## Related webhooks + * - `contractor.reactivated`: Fires when the contractor becomes active again after cancellation + * + *

    scope: `contractors:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param contractorUuid The UUID of the contractor - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getAddress(Optional xGustoAPIVersion, String contractorUuid) { - GetV1ContractorsContractorUuidAddressRequest request = - GetV1ContractorsContractorUuidAddressRequest + public CompletableFuture deleteV1ContractorsContractorUuidTermination(Optional xGustoAPIVersion, String contractorUuid) { + DeleteV1ContractorsContractorUuidTerminationRequest request = + DeleteV1ContractorsContractorUuidTerminationRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .contractorUuid(contractorUuid) .build(); - AsyncRequestOperation operation - = new GetV1ContractorsContractorUuidAddress.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new DeleteV1ContractorsContractorUuidTermination.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Create or update a contractor's address - * - *

    The address of a contractor is used to determine certain tax information about them. Addresses are - * geocoded on create and update to ensure validity. + * Get a contractor * - *

    > 🚧 Contractors can only have one address. - * > - * > When a contractor is created, an address is created for them by default. Updating the address - * will replace the existing address. + *

    Get a contractor. * - *

    scope: `contractors:write` + *

    scope: `contractors:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public PutV1ContractorsContractorUuidAddressRequestBuilder updateAddress() { - return new PutV1ContractorsContractorUuidAddressRequestBuilder(sdkConfiguration); + public GetV1ContractorsContractorUuidRequestBuilder get() { + return new GetV1ContractorsContractorUuidRequestBuilder(sdkConfiguration); } /** - * Create or update a contractor's address - * - *

    The address of a contractor is used to determine certain tax information about them. Addresses are - * geocoded on create and update to ensure validity. + * Get a contractor * - *

    > 🚧 Contractors can only have one address. - * > - * > When a contractor is created, an address is created for them by default. Updating the address - * will replace the existing address. + *

    Get a contractor. * - *

    scope: `contractors:write` + *

    scope: `contractors:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param contractorUuid The UUID of the contractor - * @param contractorAddressUpdateBody - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture updateAddress(String contractorUuid, ContractorAddressUpdateBody contractorAddressUpdateBody) { - return updateAddress(Optional.empty(), contractorUuid, contractorAddressUpdateBody); + public CompletableFuture get(String contractorUuid) { + return get(Optional.empty(), contractorUuid, Optional.empty()); } /** - * Create or update a contractor's address - * - *

    The address of a contractor is used to determine certain tax information about them. Addresses are - * geocoded on create and update to ensure validity. + * Get a contractor * - *

    > 🚧 Contractors can only have one address. - * > - * > When a contractor is created, an address is created for them by default. Updating the address - * will replace the existing address. + *

    Get a contractor. * - *

    scope: `contractors:write` + *

    scope: `contractors:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param contractorUuid The UUID of the contractor - * @param contractorAddressUpdateBody - * @return {@code CompletableFuture} - The async response + * @param include Include the requested attribute(s) in each contractor response. Multiple options are comma separated. + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture updateAddress( - Optional xGustoAPIVersion, String contractorUuid, - ContractorAddressUpdateBody contractorAddressUpdateBody) { - PutV1ContractorsContractorUuidAddressRequest request = - PutV1ContractorsContractorUuidAddressRequest + public CompletableFuture get( + Optional xGustoAPIVersion, String contractorUuid, + Optional> include) { + GetV1ContractorsContractorUuidRequest request = + GetV1ContractorsContractorUuidRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .contractorUuid(contractorUuid) - .contractorAddressUpdateBody(contractorAddressUpdateBody) + .include(include) .build(); - AsyncRequestOperation operation - = new PutV1ContractorsContractorUuidAddress.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new GetV1ContractorsContractorUuid.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * List contractor payment details - * - *

    Get payment details for contractors in a company. This endpoint returns a list of all contractors - * associated with the specified company, including their payment methods and bank account details - * if they are paid via direct deposit. - * - *

    For contractors paid by direct deposit, the response includes their bank account information - * with sensitive data masked for security. The payment details also include information about - * how their payments are split if they have multiple bank accounts configured. - * - *

    For contractors paid by check, only the basic payment method information is returned. - * - *

    ### Response Details - * - For direct deposit contractors: - * - Bank account details (masked) - * - Payment splits configuration - * - Routing numbers - * - Account types - * - For check payments: - * - Basic payment method designation + * Update a contractor * - *

    ### Common Use Cases - * - Fetching contractor payment information for payroll processing - * - Verifying contractor payment methods - * - Reviewing payment split configurations + *

    Update a contractor. * - *

    `encrypted_account_number` is available only with the additional scope - * `contractor_payment_methods:read:account_numbers`. + *

    > 🚧 Warning + * > + * > Watch out when changing a contractor's type (when the contractor is finished onboarding). + * Specifically, changing contractor type can be dangerous since Gusto won't recognize and file two + * separate 1099s if they simply change from business to individual * - *

    scope: `contractor_payment_methods:read` + *

    scope: `contractors:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder getV1CompaniesCompanyIdContractorsPaymentDetails() { - return new GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder(sdkConfiguration); + public PutV1ContractorsContractorUuidRequestBuilder update() { + return new PutV1ContractorsContractorUuidRequestBuilder(sdkConfiguration); } /** - * List contractor payment details - * - *

    Get payment details for contractors in a company. This endpoint returns a list of all contractors - * associated with the specified company, including their payment methods and bank account details - * if they are paid via direct deposit. - * - *

    For contractors paid by direct deposit, the response includes their bank account information - * with sensitive data masked for security. The payment details also include information about - * how their payments are split if they have multiple bank accounts configured. - * - *

    For contractors paid by check, only the basic payment method information is returned. - * - *

    ### Response Details - * - For direct deposit contractors: - * - Bank account details (masked) - * - Payment splits configuration - * - Routing numbers - * - Account types - * - For check payments: - * - Basic payment method designation - * - *

    ### Common Use Cases - * - Fetching contractor payment information for payroll processing - * - Verifying contractor payment methods - * - Reviewing payment split configurations - * - *

    `encrypted_account_number` is available only with the additional scope - * `contractor_payment_methods:read:account_numbers`. - * - *

    scope: `contractor_payment_methods:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. + * Update a contractor * - * @param companyId The UUID of the company. This identifies the company whose contractor payment details you want to retrieve. - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture getV1CompaniesCompanyIdContractorsPaymentDetails(String companyId) { - return getV1CompaniesCompanyIdContractorsPaymentDetails( - companyId, Optional.empty(), Optional.empty(), - Optional.empty()); - } - - /** - * List contractor payment details + *

    Update a contractor. * - *

    Get payment details for contractors in a company. This endpoint returns a list of all contractors - * associated with the specified company, including their payment methods and bank account details - * if they are paid via direct deposit. + *

    > 🚧 Warning + * > + * > Watch out when changing a contractor's type (when the contractor is finished onboarding). + * Specifically, changing contractor type can be dangerous since Gusto won't recognize and file two + * separate 1099s if they simply change from business to individual * - *

    For contractors paid by direct deposit, the response includes their bank account information - * with sensitive data masked for security. The payment details also include information about - * how their payments are split if they have multiple bank accounts configured. + *

    scope: `contractors:write` * - *

    For contractors paid by check, only the basic payment method information is returned. + *

    If set, this operation will use Security#companyAccessAuth from the global security. * - *

    ### Response Details - * - For direct deposit contractors: - * - Bank account details (masked) - * - Payment splits configuration - * - Routing numbers - * - Account types - * - For check payments: - * - Basic payment method designation + * @param contractorUuid The UUID of the contractor + * @param contractorUpdateRequestBody Request body for updating a contractor. + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture update(String contractorUuid, ContractorUpdateRequestBody contractorUpdateRequestBody) { + return update(Optional.empty(), contractorUuid, contractorUpdateRequestBody); + } + + /** + * Update a contractor * - *

    ### Common Use Cases - * - Fetching contractor payment information for payroll processing - * - Verifying contractor payment methods - * - Reviewing payment split configurations + *

    Update a contractor. * - *

    `encrypted_account_number` is available only with the additional scope - * `contractor_payment_methods:read:account_numbers`. + *

    > 🚧 Warning + * > + * > Watch out when changing a contractor's type (when the contractor is finished onboarding). + * Specifically, changing contractor type can be dangerous since Gusto won't recognize and file two + * separate 1099s if they simply change from business to individual * - *

    scope: `contractor_payment_methods:read` + *

    scope: `contractors:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company. This identifies the company whose contractor payment details you want to retrieve. - * @param contractorUuid Optional filter to get payment details for a specific contractor. When provided, the response will only include payment details for this contractor. - * @param contractorPaymentGroupUuid 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. * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @return {@code CompletableFuture} - The async response + * @param contractorUuid The UUID of the contractor + * @param contractorUpdateRequestBody Request body for updating a contractor. + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getV1CompaniesCompanyIdContractorsPaymentDetails( - String companyId, Optional contractorUuid, - Optional contractorPaymentGroupUuid, Optional xGustoAPIVersion) { - GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest request = - GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest + public CompletableFuture update( + Optional xGustoAPIVersion, String contractorUuid, + ContractorUpdateRequestBody contractorUpdateRequestBody) { + PutV1ContractorsContractorUuidRequest request = + PutV1ContractorsContractorUuidRequest .builder() - .companyId(companyId) - .contractorUuid(contractorUuid) - .contractorPaymentGroupUuid(contractorPaymentGroupUuid) .xGustoAPIVersion(xGustoAPIVersion) + .contractorUuid(contractorUuid) + .contractorUpdateRequestBody(contractorUpdateRequestBody) .build(); - AsyncRequestOperation operation - = new GetV1CompaniesCompanyIdContractorsPaymentDetails.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new PutV1ContractorsContractorUuid.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Schedule a contractor rehire - * - *

    ## Purpose - * Schedules a contractor rehire for a given date. Creates a new employment record for the contractor. - * - *

    ## Prerequisites - * Before calling this endpoint: - * 1. The contractor must be inactive (previously dismissed) - * 2. The contractor must not already have an upcoming employment + * Delete a contractor * - *

    ## Related webhooks - * - `contractor.reactivated`: Fires when the contractor becomes active again (on or after start_date) + *

    A contractor can only be deleted when there are no contractor payments. * - *

    scope: `contractors:write` + *

    scope: `contractors:manage` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public PostV1ContractorsContractorUuidRehireRequestBuilder postV1ContractorsContractorUuidRehire() { - return new PostV1ContractorsContractorUuidRehireRequestBuilder(sdkConfiguration); + public DeleteV1ContractorsContractorUuidRequestBuilder delete() { + return new DeleteV1ContractorsContractorUuidRequestBuilder(sdkConfiguration); } /** - * Schedule a contractor rehire - * - *

    ## Purpose - * Schedules a contractor rehire for a given date. Creates a new employment record for the contractor. - * - *

    ## Prerequisites - * Before calling this endpoint: - * 1. The contractor must be inactive (previously dismissed) - * 2. The contractor must not already have an upcoming employment + * Delete a contractor * - *

    ## Related webhooks - * - `contractor.reactivated`: Fires when the contractor becomes active again (on or after start_date) + *

    A contractor can only be deleted when there are no contractor payments. * - *

    scope: `contractors:write` + *

    scope: `contractors:manage` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param contractorUuid The UUID of the contractor - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture postV1ContractorsContractorUuidRehire(String contractorUuid) { - return postV1ContractorsContractorUuidRehire(contractorUuid, Optional.empty(), Optional.empty()); + public CompletableFuture delete(String contractorUuid) { + return delete(Optional.empty(), contractorUuid); } /** - * Schedule a contractor rehire - * - *

    ## Purpose - * Schedules a contractor rehire for a given date. Creates a new employment record for the contractor. - * - *

    ## Prerequisites - * Before calling this endpoint: - * 1. The contractor must be inactive (previously dismissed) - * 2. The contractor must not already have an upcoming employment + * Delete a contractor * - *

    ## Related webhooks - * - `contractor.reactivated`: Fires when the contractor becomes active again (on or after start_date) + *

    A contractor can only be deleted when there are no contractor payments. * - *

    scope: `contractors:write` + *

    scope: `contractors:manage` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param contractorUuid The UUID of the contractor * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param requestBody - * @return {@code CompletableFuture} - The async response + * @param contractorUuid The UUID of the contractor + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture postV1ContractorsContractorUuidRehire( - String contractorUuid, Optional xGustoAPIVersion, - Optional requestBody) { - PostV1ContractorsContractorUuidRehireRequest request = - PostV1ContractorsContractorUuidRehireRequest + public CompletableFuture delete(Optional xGustoAPIVersion, String contractorUuid) { + DeleteV1ContractorsContractorUuidRequest request = + DeleteV1ContractorsContractorUuidRequest .builder() - .contractorUuid(contractorUuid) .xGustoAPIVersion(xGustoAPIVersion) - .requestBody(requestBody) + .contractorUuid(contractorUuid) .build(); - AsyncRequestOperation operation - = new PostV1ContractorsContractorUuidRehire.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new DeleteV1ContractorsContractorUuid.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Cancel a pending contractor rehire - * - *

    ## Purpose - * Cancels a pending contractor rehire. For future-dated rehires, cancellation is available anytime - * before the date. - * For past-dated rehires, cancellation is only available within the 2-day grace period. - * - *

    ## Prerequisites - * Before calling this endpoint: - * - The contractor must have a pending rehire (upcoming employment) + * Get contractors of a company * - *

    ## Related webhooks - * - `contractor.deactivated`: Fires when the contractor returns to inactive state after cancellation + *

    Get all contractors, active and inactive, individual and business, for a company. * - *

    scope: `contractors:write` + *

    scope: `contractors:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public DeleteV1ContractorsContractorUuidRehireRequestBuilder deleteV1ContractorsContractorUuidRehire() { - return new DeleteV1ContractorsContractorUuidRehireRequestBuilder(sdkConfiguration); + public GetV1CompaniesCompanyUuidContractorsRequestBuilder list() { + return new GetV1CompaniesCompanyUuidContractorsRequestBuilder(sdkConfiguration); } /** - * Cancel a pending contractor rehire + * Get contractors of a company * - *

    ## Purpose - * Cancels a pending contractor rehire. For future-dated rehires, cancellation is available anytime - * before the date. - * For past-dated rehires, cancellation is only available within the 2-day grace period. + *

    Get all contractors, active and inactive, individual and business, for a company. * - *

    ## Prerequisites - * Before calling this endpoint: - * - The contractor must have a pending rehire (upcoming employment) + *

    scope: `contractors:read` * - *

    ## Related webhooks - * - `contractor.deactivated`: Fires when the contractor returns to inactive state after cancellation + *

    If set, this operation will use Security#companyAccessAuth from the global security. * - *

    scope: `contractors:write` + * @param request The request object containing all the parameters for the API call. + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture list(GetV1CompaniesCompanyUuidContractorsRequest request) { + AsyncRequestOperation operation + = new GetV1CompaniesCompanyUuidContractors.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Create a contractor + * + *

    Create an individual or business contractor. + * + *

    scope: `contractors:manage` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param contractorUuid The UUID of the contractor - * @return {@code CompletableFuture} - The async response + * @return The async call builder */ - public CompletableFuture deleteV1ContractorsContractorUuidRehire(String contractorUuid) { - return deleteV1ContractorsContractorUuidRehire(contractorUuid, Optional.empty()); + public PostV1CompaniesCompanyUuidContractorsRequestBuilder create() { + return new PostV1CompaniesCompanyUuidContractorsRequestBuilder(sdkConfiguration); } /** - * Cancel a pending contractor rehire + * Create a contractor * - *

    ## Purpose - * Cancels a pending contractor rehire. For future-dated rehires, cancellation is available anytime - * before the date. - * For past-dated rehires, cancellation is only available within the 2-day grace period. + *

    Create an individual or business contractor. * - *

    ## Prerequisites - * Before calling this endpoint: - * - The contractor must have a pending rehire (upcoming employment) + *

    scope: `contractors:manage` * - *

    ## Related webhooks - * - `contractor.deactivated`: Fires when the contractor returns to inactive state after cancellation + *

    If set, this operation will use Security#companyAccessAuth from the global security. * - *

    scope: `contractors:write` + * @param companyUuid The UUID of the company + * @param contractorCreateRequestBody Request body for creating a contractor. + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture create(String companyUuid, ContractorCreateRequestBody contractorCreateRequestBody) { + return create(Optional.empty(), companyUuid, contractorCreateRequestBody); + } + + /** + * Create a contractor + * + *

    Create an individual or business contractor. + * + *

    scope: `contractors:manage` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param contractorUuid The UUID of the contractor * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @return {@code CompletableFuture} - The async response + * @param companyUuid The UUID of the company + * @param contractorCreateRequestBody Request body for creating a contractor. + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture deleteV1ContractorsContractorUuidRehire(String contractorUuid, Optional xGustoAPIVersion) { - DeleteV1ContractorsContractorUuidRehireRequest request = - DeleteV1ContractorsContractorUuidRehireRequest + public CompletableFuture create( + Optional xGustoAPIVersion, String companyUuid, + ContractorCreateRequestBody contractorCreateRequestBody) { + PostV1CompaniesCompanyUuidContractorsRequest request = + PostV1CompaniesCompanyUuidContractorsRequest .builder() - .contractorUuid(contractorUuid) .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) + .contractorCreateRequestBody(contractorCreateRequestBody) .build(); - AsyncRequestOperation operation - = new DeleteV1ContractorsContractorUuidRehire.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new PostV1CompaniesCompanyUuidContractors.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Schedule a contractor termination + * Get the contractor's onboarding status * - *

    ## Purpose - * Schedules a contractor dismissal for a given date. Supports both immediate (past dates) and - * future-dated dismissals. + *

    Retrieves a contractor's onboarding status. The data returned helps inform the required onboarding + * steps and respective completion status. + * + *

    ## onboarding_status + * + *

    ### Admin-facilitated onboarding + * | onboarding_status | Description | + * |:------------------|------------:| + * | `admin_onboarding_incomplete` | Admin needs to enter basic information about the contractor. | + * | `admin_onboarding_review` | All information has been completed and admin needs to confirm + * onboarding. | + * | `onboarding_completed` | Contractor has been fully onboarded and verified. | + * + *

    ### Contractor self-onboarding + * + *

    | onboarding_status | Description | + * | --- | ----------- | + * | `admin_onboarding_incomplete` | Admin needs to enter basic information about the contractor. | + * | `self_onboarding_not_invited` | Admin has the intention to invite the contractor to self-onboard + * (e.g., marking a checkbox), but the system has not yet sent the invitation. | + * | `self_onboarding_invited` | Contractor has been sent an invitation to self-onboard. | + * | `self_onboarding_started` | Contractor has started the self-onboarding process. | + * | `self_onboarding_review` | Admin needs to review contractors's entered information and confirm + * onboarding. | + * | `onboarding_completed` | Contractor has been fully onboarded and verified. | * - *

    ## Prerequisites - * Before calling this endpoint: - * 1. The contractor must be active (no existing pending dismissal) - * 2. The contractor must have a current employment + *

    ## onboarding_steps * - *

    ## Related webhooks - * - `contractor.deactivated`: Fires when the contractor becomes inactive (on or after end_date) + *

    | onboarding_steps | Requirement(s) to be completed | + * |:-----------------|-------------------------------:| + * | `basic_details` | Add individual contractor's first name, last name, social security number or + * Business name and EIN depending on the contractor type | + * | `add_address` | Add contractor address. | + * | `compensation_details` | Add contractor compensation. | + * | `payment_details` | (optional) Set up contractor's direct deposit or set to check. | + * | `sign_documents` | Contractor forms (e.g., W9) are generated & signed. | + * | `file_new_hire_report` | Contractor new hire report is generated. | * - *

    scope: `contractors:write` + *

    scope: `contractors:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public PostV1ContractorsContractorUuidTerminationRequestBuilder postV1ContractorsContractorUuidTermination() { - return new PostV1ContractorsContractorUuidTerminationRequestBuilder(sdkConfiguration); + public GetV1ContractorsContractorUuidOnboardingStatusRequestBuilder getOnboardingStatus() { + return new GetV1ContractorsContractorUuidOnboardingStatusRequestBuilder(sdkConfiguration); } /** - * Schedule a contractor termination + * Get the contractor's onboarding status * - *

    ## Purpose - * Schedules a contractor dismissal for a given date. Supports both immediate (past dates) and - * future-dated dismissals. + *

    Retrieves a contractor's onboarding status. The data returned helps inform the required onboarding + * steps and respective completion status. * - *

    ## Prerequisites - * Before calling this endpoint: - * 1. The contractor must be active (no existing pending dismissal) - * 2. The contractor must have a current employment + *

    ## onboarding_status * - *

    ## Related webhooks - * - `contractor.deactivated`: Fires when the contractor becomes inactive (on or after end_date) + *

    ### Admin-facilitated onboarding + * | onboarding_status | Description | + * |:------------------|------------:| + * | `admin_onboarding_incomplete` | Admin needs to enter basic information about the contractor. | + * | `admin_onboarding_review` | All information has been completed and admin needs to confirm + * onboarding. | + * | `onboarding_completed` | Contractor has been fully onboarded and verified. | * - *

    scope: `contractors:write` + *

    ### Contractor self-onboarding + * + *

    | onboarding_status | Description | + * | --- | ----------- | + * | `admin_onboarding_incomplete` | Admin needs to enter basic information about the contractor. | + * | `self_onboarding_not_invited` | Admin has the intention to invite the contractor to self-onboard + * (e.g., marking a checkbox), but the system has not yet sent the invitation. | + * | `self_onboarding_invited` | Contractor has been sent an invitation to self-onboard. | + * | `self_onboarding_started` | Contractor has started the self-onboarding process. | + * | `self_onboarding_review` | Admin needs to review contractors's entered information and confirm + * onboarding. | + * | `onboarding_completed` | Contractor has been fully onboarded and verified. | + * + *

    ## onboarding_steps + * + *

    | onboarding_steps | Requirement(s) to be completed | + * |:-----------------|-------------------------------:| + * | `basic_details` | Add individual contractor's first name, last name, social security number or + * Business name and EIN depending on the contractor type | + * | `add_address` | Add contractor address. | + * | `compensation_details` | Add contractor compensation. | + * | `payment_details` | (optional) Set up contractor's direct deposit or set to check. | + * | `sign_documents` | Contractor forms (e.g., W9) are generated & signed. | + * | `file_new_hire_report` | Contractor new hire report is generated. | + * + *

    scope: `contractors:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param contractorUuid The UUID of the contractor - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture postV1ContractorsContractorUuidTermination(String contractorUuid) { - return postV1ContractorsContractorUuidTermination(contractorUuid, Optional.empty(), Optional.empty()); + public CompletableFuture getOnboardingStatus(String contractorUuid) { + return getOnboardingStatus(Optional.empty(), contractorUuid); } /** - * Schedule a contractor termination + * Get the contractor's onboarding status * - *

    ## Purpose - * Schedules a contractor dismissal for a given date. Supports both immediate (past dates) and - * future-dated dismissals. + *

    Retrieves a contractor's onboarding status. The data returned helps inform the required onboarding + * steps and respective completion status. * - *

    ## Prerequisites - * Before calling this endpoint: - * 1. The contractor must be active (no existing pending dismissal) - * 2. The contractor must have a current employment + *

    ## onboarding_status * - *

    ## Related webhooks - * - `contractor.deactivated`: Fires when the contractor becomes inactive (on or after end_date) + *

    ### Admin-facilitated onboarding + * | onboarding_status | Description | + * |:------------------|------------:| + * | `admin_onboarding_incomplete` | Admin needs to enter basic information about the contractor. | + * | `admin_onboarding_review` | All information has been completed and admin needs to confirm + * onboarding. | + * | `onboarding_completed` | Contractor has been fully onboarded and verified. | * - *

    scope: `contractors:write` + *

    ### Contractor self-onboarding + * + *

    | onboarding_status | Description | + * | --- | ----------- | + * | `admin_onboarding_incomplete` | Admin needs to enter basic information about the contractor. | + * | `self_onboarding_not_invited` | Admin has the intention to invite the contractor to self-onboard + * (e.g., marking a checkbox), but the system has not yet sent the invitation. | + * | `self_onboarding_invited` | Contractor has been sent an invitation to self-onboard. | + * | `self_onboarding_started` | Contractor has started the self-onboarding process. | + * | `self_onboarding_review` | Admin needs to review contractors's entered information and confirm + * onboarding. | + * | `onboarding_completed` | Contractor has been fully onboarded and verified. | + * + *

    ## onboarding_steps + * + *

    | onboarding_steps | Requirement(s) to be completed | + * |:-----------------|-------------------------------:| + * | `basic_details` | Add individual contractor's first name, last name, social security number or + * Business name and EIN depending on the contractor type | + * | `add_address` | Add contractor address. | + * | `compensation_details` | Add contractor compensation. | + * | `payment_details` | (optional) Set up contractor's direct deposit or set to check. | + * | `sign_documents` | Contractor forms (e.g., W9) are generated & signed. | + * | `file_new_hire_report` | Contractor new hire report is generated. | + * + *

    scope: `contractors:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param contractorUuid The UUID of the contractor * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param requestBody - * @return {@code CompletableFuture} - The async response + * @param contractorUuid The UUID of the contractor + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture postV1ContractorsContractorUuidTermination( - String contractorUuid, Optional xGustoAPIVersion, - Optional requestBody) { - PostV1ContractorsContractorUuidTerminationRequest request = - PostV1ContractorsContractorUuidTerminationRequest + public CompletableFuture getOnboardingStatus(Optional xGustoAPIVersion, String contractorUuid) { + GetV1ContractorsContractorUuidOnboardingStatusRequest request = + GetV1ContractorsContractorUuidOnboardingStatusRequest .builder() - .contractorUuid(contractorUuid) .xGustoAPIVersion(xGustoAPIVersion) - .requestBody(requestBody) + .contractorUuid(contractorUuid) .build(); - AsyncRequestOperation operation - = new PostV1ContractorsContractorUuidTermination.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new GetV1ContractorsContractorUuidOnboardingStatus.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Cancel a pending contractor termination + * Change the contractor's onboarding status * - *

    ## Purpose - * Cancels a pending contractor dismissal. For future-dated dismissals, cancellation is available - * anytime before the date. - * For past-dated dismissals, cancellation is only available within the 2-day grace period. + *

    Updates a contractor's onboarding status. * - *

    ## Prerequisites - * Before calling this endpoint: - * - The contractor must have a pending dismissal (scheduled or within the grace period) + *

    Below is a list of valid onboarding status changes depending on the intended action to be performed + * on behalf of the contractor. * - *

    ## Related webhooks - * - `contractor.reactivated`: Fires when the contractor becomes active again after cancellation + *

    | Action | current onboarding_status | new onboarding_status | + * |:------------------|:------------:|----------:| + * | Mark a contractor as self-onboarding | `admin_onboarding_incomplete` | + * `self_onboarding_not_invited` | + * | Invite a contractor to self-onboard | `admin_onboarding_incomplete` or + * `self_onboarding_not_invited` | `self_onboarding_invited` | + * | Cancel a contractor's self-onboarding | `self_onboarding_invited` or `self_onboarding_not_invited` + * | `admin_onboarding_incomplete` | + * | Review a contractor's self-onboarded info | `self_onboarding_started` | `self_onboarding_review` | + * | Finish a contractor's onboarding | `admin_onboarding_review` or `self_onboarding_review` | + * `onboarding_completed` | * *

    scope: `contractors:write` * @@ -1254,68 +1239,83 @@ public CompletableFuture pos * * @return The async call builder */ - public DeleteV1ContractorsContractorUuidTerminationRequestBuilder deleteV1ContractorsContractorUuidTermination() { - return new DeleteV1ContractorsContractorUuidTerminationRequestBuilder(sdkConfiguration); + public PutV1ContractorsContractorUuidOnboardingStatusRequestBuilder updateOnboardingStatus() { + return new PutV1ContractorsContractorUuidOnboardingStatusRequestBuilder(sdkConfiguration); } /** - * Cancel a pending contractor termination + * Change the contractor's onboarding status * - *

    ## Purpose - * Cancels a pending contractor dismissal. For future-dated dismissals, cancellation is available - * anytime before the date. - * For past-dated dismissals, cancellation is only available within the 2-day grace period. + *

    Updates a contractor's onboarding status. * - *

    ## Prerequisites - * Before calling this endpoint: - * - The contractor must have a pending dismissal (scheduled or within the grace period) + *

    Below is a list of valid onboarding status changes depending on the intended action to be performed + * on behalf of the contractor. * - *

    ## Related webhooks - * - `contractor.reactivated`: Fires when the contractor becomes active again after cancellation + *

    | Action | current onboarding_status | new onboarding_status | + * |:------------------|:------------:|----------:| + * | Mark a contractor as self-onboarding | `admin_onboarding_incomplete` | + * `self_onboarding_not_invited` | + * | Invite a contractor to self-onboard | `admin_onboarding_incomplete` or + * `self_onboarding_not_invited` | `self_onboarding_invited` | + * | Cancel a contractor's self-onboarding | `self_onboarding_invited` or `self_onboarding_not_invited` + * | `admin_onboarding_incomplete` | + * | Review a contractor's self-onboarded info | `self_onboarding_started` | `self_onboarding_review` | + * | Finish a contractor's onboarding | `admin_onboarding_review` or `self_onboarding_review` | + * `onboarding_completed` | * *

    scope: `contractors:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param contractorUuid The UUID of the contractor - * @return {@code CompletableFuture} - The async response + * @param contractorOnboardingStatusUpdateRequestBody Request body for updating a contractor's onboarding status. + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture deleteV1ContractorsContractorUuidTermination(String contractorUuid) { - return deleteV1ContractorsContractorUuidTermination(contractorUuid, Optional.empty()); + public CompletableFuture updateOnboardingStatus(String contractorUuid, ContractorOnboardingStatusUpdateRequestBody contractorOnboardingStatusUpdateRequestBody) { + return updateOnboardingStatus(Optional.empty(), contractorUuid, contractorOnboardingStatusUpdateRequestBody); } /** - * Cancel a pending contractor termination + * Change the contractor's onboarding status * - *

    ## Purpose - * Cancels a pending contractor dismissal. For future-dated dismissals, cancellation is available - * anytime before the date. - * For past-dated dismissals, cancellation is only available within the 2-day grace period. + *

    Updates a contractor's onboarding status. * - *

    ## Prerequisites - * Before calling this endpoint: - * - The contractor must have a pending dismissal (scheduled or within the grace period) + *

    Below is a list of valid onboarding status changes depending on the intended action to be performed + * on behalf of the contractor. * - *

    ## Related webhooks - * - `contractor.reactivated`: Fires when the contractor becomes active again after cancellation + *

    | Action | current onboarding_status | new onboarding_status | + * |:------------------|:------------:|----------:| + * | Mark a contractor as self-onboarding | `admin_onboarding_incomplete` | + * `self_onboarding_not_invited` | + * | Invite a contractor to self-onboard | `admin_onboarding_incomplete` or + * `self_onboarding_not_invited` | `self_onboarding_invited` | + * | Cancel a contractor's self-onboarding | `self_onboarding_invited` or `self_onboarding_not_invited` + * | `admin_onboarding_incomplete` | + * | Review a contractor's self-onboarded info | `self_onboarding_started` | `self_onboarding_review` | + * | Finish a contractor's onboarding | `admin_onboarding_review` or `self_onboarding_review` | + * `onboarding_completed` | * *

    scope: `contractors:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param contractorUuid The UUID of the contractor * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @return {@code CompletableFuture} - The async response + * @param contractorUuid The UUID of the contractor + * @param contractorOnboardingStatusUpdateRequestBody Request body for updating a contractor's onboarding status. + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture deleteV1ContractorsContractorUuidTermination(String contractorUuid, Optional xGustoAPIVersion) { - DeleteV1ContractorsContractorUuidTerminationRequest request = - DeleteV1ContractorsContractorUuidTerminationRequest + public CompletableFuture updateOnboardingStatus( + Optional xGustoAPIVersion, String contractorUuid, + ContractorOnboardingStatusUpdateRequestBody contractorOnboardingStatusUpdateRequestBody) { + PutV1ContractorsContractorUuidOnboardingStatusRequest request = + PutV1ContractorsContractorUuidOnboardingStatusRequest .builder() - .contractorUuid(contractorUuid) .xGustoAPIVersion(xGustoAPIVersion) + .contractorUuid(contractorUuid) + .contractorOnboardingStatusUpdateRequestBody(contractorOnboardingStatusUpdateRequestBody) .build(); - AsyncRequestOperation operation - = new DeleteV1ContractorsContractorUuidTermination.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new PutV1ContractorsContractorUuidOnboardingStatus.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncDepartments.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncDepartments.java index f9059b44e..10416a66d 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncDepartments.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncDepartments.java @@ -69,130 +69,6 @@ public Departments sync() { } - /** - * Get all departments of a company - * - *

    Get all of the departments for a given company with the employees and contractors assigned to that - * department. - * - *

    scope: `departments:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The async call builder - */ - public GetCompaniesDepartmentsRequestBuilder getAll() { - return new GetCompaniesDepartmentsRequestBuilder(sdkConfiguration); - } - - /** - * Get all departments of a company - * - *

    Get all of the departments for a given company with the employees and contractors assigned to that - * department. - * - *

    scope: `departments:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param companyUuid The UUID of the company - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture getAll(String companyUuid) { - return getAll(companyUuid, Optional.empty()); - } - - /** - * Get all departments of a company - * - *

    Get all of the departments for a given company with the employees and contractors assigned to that - * department. - * - *

    scope: `departments:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param companyUuid The UUID of the company - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture getAll(String companyUuid, Optional xGustoAPIVersion) { - GetCompaniesDepartmentsRequest request = - GetCompaniesDepartmentsRequest - .builder() - .companyUuid(companyUuid) - .xGustoAPIVersion(xGustoAPIVersion) - .build(); - AsyncRequestOperation operation - = new GetCompaniesDepartments.Async(sdkConfiguration, _headers); - return operation.doRequest(request) - .thenCompose(operation::handleResponse); - } - - - /** - * Create a department - * - *

    Create a department - * - *

    scope: `departments:write` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The async call builder - */ - public PostDepartmentsRequestBuilder create() { - return new PostDepartmentsRequestBuilder(sdkConfiguration); - } - - /** - * Create a department - * - *

    Create a department - * - *

    scope: `departments:write` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param companyUuid The UUID of the company - * @param departmentCreateRequestBody - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture create(String companyUuid, DepartmentCreateRequestBody departmentCreateRequestBody) { - return create(companyUuid, Optional.empty(), departmentCreateRequestBody); - } - - /** - * Create a department - * - *

    Create a department - * - *

    scope: `departments:write` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param companyUuid The UUID of the company - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param departmentCreateRequestBody - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture create( - String companyUuid, Optional xGustoAPIVersion, - DepartmentCreateRequestBody departmentCreateRequestBody) { - PostDepartmentsRequest request = - PostDepartmentsRequest - .builder() - .companyUuid(companyUuid) - .xGustoAPIVersion(xGustoAPIVersion) - .departmentCreateRequestBody(departmentCreateRequestBody) - .build(); - AsyncRequestOperation operation - = new PostDepartments.Async(sdkConfiguration, _headers); - return operation.doRequest(request) - .thenCompose(operation::handleResponse); - } - - /** * Get a department * @@ -221,7 +97,7 @@ public GetDepartmentRequestBuilder get() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture get(String departmentUuid) { - return get(departmentUuid, Optional.empty()); + return get(Optional.empty(), departmentUuid); } /** @@ -233,16 +109,16 @@ public CompletableFuture get(String departmentUuid) { * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param departmentUuid The UUID of the department * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param departmentUuid The UUID of the department * @return {@code CompletableFuture} - The async response */ - public CompletableFuture get(String departmentUuid, Optional xGustoAPIVersion) { + public CompletableFuture get(Optional xGustoAPIVersion, String departmentUuid) { GetDepartmentRequest request = GetDepartmentRequest .builder() - .departmentUuid(departmentUuid) .xGustoAPIVersion(xGustoAPIVersion) + .departmentUuid(departmentUuid) .build(); AsyncRequestOperation operation = new GetDepartment.Async(sdkConfiguration, _headers); @@ -280,7 +156,7 @@ public PutDepartmentsRequestBuilder update() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture update(String departmentUuid, DepartmentUpdateRequestBody departmentUpdateRequestBody) { - return update(departmentUuid, Optional.empty(), departmentUpdateRequestBody); + return update(Optional.empty(), departmentUuid, departmentUpdateRequestBody); } /** @@ -292,19 +168,19 @@ public CompletableFuture update(String departmentUuid, D * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param departmentUuid The UUID of the department * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param departmentUuid The UUID of the department * @param departmentUpdateRequestBody * @return {@code CompletableFuture} - The async response */ public CompletableFuture update( - String departmentUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String departmentUuid, DepartmentUpdateRequestBody departmentUpdateRequestBody) { PutDepartmentsRequest request = PutDepartmentsRequest .builder() - .departmentUuid(departmentUuid) .xGustoAPIVersion(xGustoAPIVersion) + .departmentUuid(departmentUuid) .departmentUpdateRequestBody(departmentUpdateRequestBody) .build(); AsyncRequestOperation operation @@ -344,7 +220,7 @@ public DeleteDepartmentRequestBuilder delete() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture delete(String departmentUuid) { - return delete(departmentUuid, Optional.empty()); + return delete(Optional.empty(), departmentUuid); } /** @@ -357,16 +233,16 @@ public CompletableFuture delete(String departmentUuid) * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param departmentUuid The UUID of the department * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param departmentUuid The UUID of the department * @return {@code CompletableFuture} - The async response */ - public CompletableFuture delete(String departmentUuid, Optional xGustoAPIVersion) { + public CompletableFuture delete(Optional xGustoAPIVersion, String departmentUuid) { DeleteDepartmentRequest request = DeleteDepartmentRequest .builder() - .departmentUuid(departmentUuid) .xGustoAPIVersion(xGustoAPIVersion) + .departmentUuid(departmentUuid) .build(); AsyncRequestOperation operation = new DeleteDepartment.Async(sdkConfiguration, _headers); @@ -404,7 +280,7 @@ public PutAddPeopleToDepartmentRequestBuilder addPeople() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture addPeople(String departmentUuid, DepartmentPeopleRequestBody departmentPeopleRequestBody) { - return addPeople(departmentUuid, Optional.empty(), departmentPeopleRequestBody); + return addPeople(Optional.empty(), departmentUuid, departmentPeopleRequestBody); } /** @@ -416,19 +292,19 @@ public CompletableFuture addPeople(String depa * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param departmentUuid The UUID of the department * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param departmentUuid The UUID of the department * @param departmentPeopleRequestBody * @return {@code CompletableFuture} - The async response */ public CompletableFuture addPeople( - String departmentUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String departmentUuid, DepartmentPeopleRequestBody departmentPeopleRequestBody) { PutAddPeopleToDepartmentRequest request = PutAddPeopleToDepartmentRequest .builder() - .departmentUuid(departmentUuid) .xGustoAPIVersion(xGustoAPIVersion) + .departmentUuid(departmentUuid) .departmentPeopleRequestBody(departmentPeopleRequestBody) .build(); AsyncRequestOperation operation @@ -467,7 +343,7 @@ public PutRemovePeopleFromDepartmentRequestBuilder removePeople() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture removePeople(String departmentUuid, DepartmentPeopleRequestBody departmentPeopleRequestBody) { - return removePeople(departmentUuid, Optional.empty(), departmentPeopleRequestBody); + return removePeople(Optional.empty(), departmentUuid, departmentPeopleRequestBody); } /** @@ -479,19 +355,19 @@ public CompletableFuture removePeople(Str * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param departmentUuid The UUID of the department * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param departmentUuid The UUID of the department * @param departmentPeopleRequestBody * @return {@code CompletableFuture} - The async response */ public CompletableFuture removePeople( - String departmentUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String departmentUuid, DepartmentPeopleRequestBody departmentPeopleRequestBody) { PutRemovePeopleFromDepartmentRequest request = PutRemovePeopleFromDepartmentRequest .builder() - .departmentUuid(departmentUuid) .xGustoAPIVersion(xGustoAPIVersion) + .departmentUuid(departmentUuid) .departmentPeopleRequestBody(departmentPeopleRequestBody) .build(); AsyncRequestOperation operation @@ -500,4 +376,128 @@ public CompletableFuture removePeople( .thenCompose(operation::handleResponse); } + + /** + * Get all departments of a company + * + *

    Get all of the departments for a given company with the employees and contractors assigned to that + * department. + * + *

    scope: `departments:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public GetCompaniesDepartmentsRequestBuilder getAll() { + return new GetCompaniesDepartmentsRequestBuilder(sdkConfiguration); + } + + /** + * Get all departments of a company + * + *

    Get all of the departments for a given company with the employees and contractors assigned to that + * department. + * + *

    scope: `departments:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param companyUuid The UUID of the company + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getAll(String companyUuid) { + return getAll(Optional.empty(), companyUuid); + } + + /** + * Get all departments of a company + * + *

    Get all of the departments for a given company with the employees and contractors assigned to that + * department. + * + *

    scope: `departments:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getAll(Optional xGustoAPIVersion, String companyUuid) { + GetCompaniesDepartmentsRequest request = + GetCompaniesDepartmentsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) + .build(); + AsyncRequestOperation operation + = new GetCompaniesDepartments.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Create a department + * + *

    Create a department + * + *

    scope: `departments:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public PostDepartmentsRequestBuilder create() { + return new PostDepartmentsRequestBuilder(sdkConfiguration); + } + + /** + * Create a department + * + *

    Create a department + * + *

    scope: `departments:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param companyUuid The UUID of the company + * @param departmentCreateRequestBody + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture create(String companyUuid, DepartmentCreateRequestBody departmentCreateRequestBody) { + return create(Optional.empty(), companyUuid, departmentCreateRequestBody); + } + + /** + * Create a department + * + *

    Create a department + * + *

    scope: `departments:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company + * @param departmentCreateRequestBody + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture create( + Optional xGustoAPIVersion, String companyUuid, + DepartmentCreateRequestBody departmentCreateRequestBody) { + PostDepartmentsRequest request = + PostDepartmentsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) + .departmentCreateRequestBody(departmentCreateRequestBody) + .build(); + AsyncRequestOperation operation + = new PostDepartments.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncEmployeeAddresses.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncEmployeeAddresses.java index c5148b444..877a1a20f 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncEmployeeAddresses.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncEmployeeAddresses.java @@ -119,7 +119,7 @@ public GetV1EmployeesEmployeeIdHomeAddressesRequestBuilder get() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture get(String employeeId) { - return get(employeeId, Optional.empty()); + return get(Optional.empty(), employeeId); } /** @@ -134,16 +134,16 @@ public CompletableFuture get(Stri * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param employeeId The UUID of the employee * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param employeeId The UUID of the employee * @return {@code CompletableFuture} - The async response */ - public CompletableFuture get(String employeeId, Optional xGustoAPIVersion) { + public CompletableFuture get(Optional xGustoAPIVersion, String employeeId) { GetV1EmployeesEmployeeIdHomeAddressesRequest request = GetV1EmployeesEmployeeIdHomeAddressesRequest .builder() - .employeeId(employeeId) .xGustoAPIVersion(xGustoAPIVersion) + .employeeId(employeeId) .build(); AsyncRequestOperation operation = new GetV1EmployeesEmployeeIdHomeAddresses.Async(sdkConfiguration, _headers); @@ -187,7 +187,7 @@ public PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder create() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture create(String employeeId, PostV1EmployeesEmployeeIdHomeAddressesRequestBody requestBody) { - return create(employeeId, Optional.empty(), requestBody); + return create(Optional.empty(), employeeId, requestBody); } /** @@ -202,19 +202,19 @@ public CompletableFuture create( * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param employeeId The UUID of the employee * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param employeeId The UUID of the employee * @param requestBody * @return {@code CompletableFuture} - The async response */ public CompletableFuture create( - String employeeId, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String employeeId, PostV1EmployeesEmployeeIdHomeAddressesRequestBody requestBody) { PostV1EmployeesEmployeeIdHomeAddressesRequest request = PostV1EmployeesEmployeeIdHomeAddressesRequest .builder() - .employeeId(employeeId) .xGustoAPIVersion(xGustoAPIVersion) + .employeeId(employeeId) .requestBody(requestBody) .build(); AsyncRequestOperation operation @@ -258,7 +258,7 @@ public GetV1HomeAddressesHomeAddressUuidRequestBuilder retrieveHomeAddress() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture retrieveHomeAddress(String homeAddressUuid) { - return retrieveHomeAddress(homeAddressUuid, Optional.empty()); + return retrieveHomeAddress(Optional.empty(), homeAddressUuid); } /** @@ -273,16 +273,16 @@ public CompletableFuture retrieveHome * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param homeAddressUuid The UUID of the home address * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param homeAddressUuid The UUID of the home address * @return {@code CompletableFuture} - The async response */ - public CompletableFuture retrieveHomeAddress(String homeAddressUuid, Optional xGustoAPIVersion) { + public CompletableFuture retrieveHomeAddress(Optional xGustoAPIVersion, String homeAddressUuid) { GetV1HomeAddressesHomeAddressUuidRequest request = GetV1HomeAddressesHomeAddressUuidRequest .builder() - .homeAddressUuid(homeAddressUuid) .xGustoAPIVersion(xGustoAPIVersion) + .homeAddressUuid(homeAddressUuid) .build(); AsyncRequestOperation operation = new GetV1HomeAddressesHomeAddressUuid.Async(sdkConfiguration, _headers); @@ -451,7 +451,7 @@ public GetV1EmployeesEmployeeIdWorkAddressesRequestBuilder getWorkAddresses() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture getWorkAddresses(String employeeId) { - return getWorkAddresses(employeeId, Optional.empty()); + return getWorkAddresses(Optional.empty(), employeeId); } /** @@ -464,16 +464,16 @@ public CompletableFuture getWorkA * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param employeeId The UUID of the employee * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param employeeId The UUID of the employee * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getWorkAddresses(String employeeId, Optional xGustoAPIVersion) { + public CompletableFuture getWorkAddresses(Optional xGustoAPIVersion, String employeeId) { GetV1EmployeesEmployeeIdWorkAddressesRequest request = GetV1EmployeesEmployeeIdWorkAddressesRequest .builder() - .employeeId(employeeId) .xGustoAPIVersion(xGustoAPIVersion) + .employeeId(employeeId) .build(); AsyncRequestOperation operation = new GetV1EmployeesEmployeeIdWorkAddresses.Async(sdkConfiguration, _headers); @@ -513,7 +513,7 @@ public PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder createWorkAddress() * @return {@code CompletableFuture} - The async response */ public CompletableFuture createWorkAddress(String employeeId, PostV1EmployeesEmployeeIdWorkAddressesRequestBody requestBody) { - return createWorkAddress(employeeId, Optional.empty(), requestBody); + return createWorkAddress(Optional.empty(), employeeId, requestBody); } /** @@ -526,19 +526,19 @@ public CompletableFuture createW * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param employeeId The UUID of the employee * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param employeeId The UUID of the employee * @param requestBody * @return {@code CompletableFuture} - The async response */ public CompletableFuture createWorkAddress( - String employeeId, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String employeeId, PostV1EmployeesEmployeeIdWorkAddressesRequestBody requestBody) { PostV1EmployeesEmployeeIdWorkAddressesRequest request = PostV1EmployeesEmployeeIdWorkAddressesRequest .builder() - .employeeId(employeeId) .xGustoAPIVersion(xGustoAPIVersion) + .employeeId(employeeId) .requestBody(requestBody) .build(); AsyncRequestOperation operation @@ -576,7 +576,7 @@ public GetV1WorkAddressesWorkAddressUuidRequestBuilder retrieveWorkAddress() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture retrieveWorkAddress(String workAddressUuid) { - return retrieveWorkAddress(workAddressUuid, Optional.empty()); + return retrieveWorkAddress(Optional.empty(), workAddressUuid); } /** @@ -588,16 +588,16 @@ public CompletableFuture retrieveWork * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param workAddressUuid The UUID of the work address * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param workAddressUuid The UUID of the work address * @return {@code CompletableFuture} - The async response */ - public CompletableFuture retrieveWorkAddress(String workAddressUuid, Optional xGustoAPIVersion) { + public CompletableFuture retrieveWorkAddress(Optional xGustoAPIVersion, String workAddressUuid) { GetV1WorkAddressesWorkAddressUuidRequest request = GetV1WorkAddressesWorkAddressUuidRequest .builder() - .workAddressUuid(workAddressUuid) .xGustoAPIVersion(xGustoAPIVersion) + .workAddressUuid(workAddressUuid) .build(); AsyncRequestOperation operation = new GetV1WorkAddressesWorkAddressUuid.Async(sdkConfiguration, _headers); @@ -635,7 +635,7 @@ public PutV1WorkAddressesWorkAddressUuidRequestBuilder updateWorkAddress() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture updateWorkAddress(String workAddressUuid, PutV1WorkAddressesWorkAddressUuidRequestBody requestBody) { - return updateWorkAddress(workAddressUuid, Optional.empty(), requestBody); + return updateWorkAddress(Optional.empty(), workAddressUuid, requestBody); } /** @@ -647,19 +647,19 @@ public CompletableFuture updateWorkAd * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param workAddressUuid The UUID of the work address * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param workAddressUuid The UUID of the work address * @param requestBody * @return {@code CompletableFuture} - The async response */ public CompletableFuture updateWorkAddress( - String workAddressUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String workAddressUuid, PutV1WorkAddressesWorkAddressUuidRequestBody requestBody) { PutV1WorkAddressesWorkAddressUuidRequest request = PutV1WorkAddressesWorkAddressUuidRequest .builder() - .workAddressUuid(workAddressUuid) .xGustoAPIVersion(xGustoAPIVersion) + .workAddressUuid(workAddressUuid) .requestBody(requestBody) .build(); AsyncRequestOperation operation @@ -697,7 +697,7 @@ public DeleteV1WorkAddressesWorkAddressUuidRequestBuilder deleteWorkAddress() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture deleteWorkAddress(String workAddressUuid) { - return deleteWorkAddress(workAddressUuid, Optional.empty()); + return deleteWorkAddress(Optional.empty(), workAddressUuid); } /** @@ -709,16 +709,16 @@ public CompletableFuture deleteWor * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param workAddressUuid The UUID of the work address * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param workAddressUuid The UUID of the work address * @return {@code CompletableFuture} - The async response */ - public CompletableFuture deleteWorkAddress(String workAddressUuid, Optional xGustoAPIVersion) { + public CompletableFuture deleteWorkAddress(Optional xGustoAPIVersion, String workAddressUuid) { DeleteV1WorkAddressesWorkAddressUuidRequest request = DeleteV1WorkAddressesWorkAddressUuidRequest .builder() - .workAddressUuid(workAddressUuid) .xGustoAPIVersion(xGustoAPIVersion) + .workAddressUuid(workAddressUuid) .build(); AsyncRequestOperation operation = new DeleteV1WorkAddressesWorkAddressUuid.Async(sdkConfiguration, _headers); diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncEmployeeBenefits.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncEmployeeBenefits.java index 54a450268..3f54ca586 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncEmployeeBenefits.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncEmployeeBenefits.java @@ -624,7 +624,7 @@ public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder getV * @return {@code CompletableFuture} - The async response */ public CompletableFuture getV1EmployeesEmployeeUuidSection603HighEarnerStatuses(String employeeUuid) { - return getV1EmployeesEmployeeUuidSection603HighEarnerStatuses(employeeUuid, Optional.empty()); + return getV1EmployeesEmployeeUuidSection603HighEarnerStatuses(Optional.empty(), employeeUuid); } /** @@ -641,16 +641,16 @@ public CompletableFutureIf set, this operation will use Security#companyAccessAuth from the global security. * - * @param employeeUuid The UUID of the employee * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param employeeUuid The UUID of the employee * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getV1EmployeesEmployeeUuidSection603HighEarnerStatuses(String employeeUuid, Optional xGustoAPIVersion) { + public CompletableFuture getV1EmployeesEmployeeUuidSection603HighEarnerStatuses(Optional xGustoAPIVersion, String employeeUuid) { GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest request = GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest .builder() - .employeeUuid(employeeUuid) .xGustoAPIVersion(xGustoAPIVersion) + .employeeUuid(employeeUuid) .build(); AsyncRequestOperation operation = new GetV1EmployeesEmployeeUuidSection603HighEarnerStatuses.Async(sdkConfiguration, _headers); @@ -698,7 +698,7 @@ public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder pos * @return {@code CompletableFuture} - The async response */ public CompletableFuture postV1EmployeesEmployeeUuidSection603HighEarnerStatuses(String employeeUuid, EmployeeSection603HighEarnerStatusCreateRequest employeeSection603HighEarnerStatusCreateRequest) { - return postV1EmployeesEmployeeUuidSection603HighEarnerStatuses(employeeUuid, Optional.empty(), employeeSection603HighEarnerStatusCreateRequest); + return postV1EmployeesEmployeeUuidSection603HighEarnerStatuses(Optional.empty(), employeeUuid, employeeSection603HighEarnerStatusCreateRequest); } /** @@ -715,19 +715,19 @@ public CompletableFutureIf set, this operation will use Security#companyAccessAuth from the global security. * - * @param employeeUuid The UUID of the employee * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param employeeUuid The UUID of the employee * @param employeeSection603HighEarnerStatusCreateRequest Request body for creating an employee's Section 603 high earner status * @return {@code CompletableFuture} - The async response */ public CompletableFuture postV1EmployeesEmployeeUuidSection603HighEarnerStatuses( - String employeeUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String employeeUuid, EmployeeSection603HighEarnerStatusCreateRequest employeeSection603HighEarnerStatusCreateRequest) { PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest request = PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest .builder() - .employeeUuid(employeeUuid) .xGustoAPIVersion(xGustoAPIVersion) + .employeeUuid(employeeUuid) .employeeSection603HighEarnerStatusCreateRequest(employeeSection603HighEarnerStatusCreateRequest) .build(); AsyncRequestOperation operation @@ -776,7 +776,7 @@ public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearReques * @return {@code CompletableFuture} - The async response */ public CompletableFuture getV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYear(String employeeUuid, long effectiveYear) { - return getV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYear(employeeUuid, effectiveYear, Optional.empty()); + return getV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYear(Optional.empty(), employeeUuid, effectiveYear); } /** @@ -793,20 +793,20 @@ public CompletableFutureIf set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param employeeUuid The UUID of the employee * @param effectiveYear The effective year for the Section 603 status - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @return {@code CompletableFuture} - The async response */ public CompletableFuture getV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYear( - String employeeUuid, long effectiveYear, - Optional xGustoAPIVersion) { + Optional xGustoAPIVersion, String employeeUuid, + long effectiveYear) { GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest request = GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest .builder() + .xGustoAPIVersion(xGustoAPIVersion) .employeeUuid(employeeUuid) .effectiveYear(effectiveYear) - .xGustoAPIVersion(xGustoAPIVersion) .build(); AsyncRequestOperation operation = new GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYear.Async(sdkConfiguration, _headers); @@ -858,7 +858,7 @@ public CompletableFutureIf set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param employeeUuid The UUID of the employee * @param effectiveYear The effective year for the Section 603 status - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param employeeSection603HighEarnerStatusUpdateRequest Request body for updating an employee's Section 603 high earner status * @return {@code CompletableFuture} - The async response */ public CompletableFuture patchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYear( - String employeeUuid, long effectiveYear, - Optional xGustoAPIVersion, EmployeeSection603HighEarnerStatusUpdateRequest employeeSection603HighEarnerStatusUpdateRequest) { + Optional xGustoAPIVersion, String employeeUuid, + long effectiveYear, EmployeeSection603HighEarnerStatusUpdateRequest employeeSection603HighEarnerStatusUpdateRequest) { PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest request = PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest .builder() + .xGustoAPIVersion(xGustoAPIVersion) .employeeUuid(employeeUuid) .effectiveYear(effectiveYear) - .xGustoAPIVersion(xGustoAPIVersion) .employeeSection603HighEarnerStatusUpdateRequest(employeeSection603HighEarnerStatusUpdateRequest) .build(); AsyncRequestOperation operation diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncEmployeeEmployments.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncEmployeeEmployments.java index 42ea3b3ab..50af37f85 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncEmployeeEmployments.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncEmployeeEmployments.java @@ -86,14 +86,9 @@ public EmployeeEmployments sync() { /** - * Get terminations for an employee - * - *

    Terminations are created whenever an employee is scheduled to leave the company. The only things - * required are an effective date (their last day of work) and whether they should receive their wages - * in a one-off termination payroll or with the rest of the company. + * Get an employee rehire * - *

    Note that some states require employees to receive their final wages within 24 hours (unless they - * consent otherwise,) in which case running a one-off payroll may be the only option. + *

    Retrieve an employee's rehire, which contains information on when the employee returns to work. * *

    scope: `employments:read` * @@ -101,40 +96,30 @@ public EmployeeEmployments sync() { * * @return The async call builder */ - public GetV1EmployeesEmployeeIdTerminationsRequestBuilder getTerminations() { - return new GetV1EmployeesEmployeeIdTerminationsRequestBuilder(sdkConfiguration); + public GetV1EmployeesEmployeeIdRehireRequestBuilder getRehire() { + return new GetV1EmployeesEmployeeIdRehireRequestBuilder(sdkConfiguration); } /** - * Get terminations for an employee - * - *

    Terminations are created whenever an employee is scheduled to leave the company. The only things - * required are an effective date (their last day of work) and whether they should receive their wages - * in a one-off termination payroll or with the rest of the company. + * Get an employee rehire * - *

    Note that some states require employees to receive their final wages within 24 hours (unless they - * consent otherwise,) in which case running a one-off payroll may be the only option. + *

    Retrieve an employee's rehire, which contains information on when the employee returns to work. * *

    scope: `employments:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param employeeId The UUID of the employee - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getTerminations(String employeeId) { - return getTerminations(Optional.empty(), employeeId); + public CompletableFuture getRehire(String employeeId) { + return getRehire(Optional.empty(), employeeId); } /** - * Get terminations for an employee - * - *

    Terminations are created whenever an employee is scheduled to leave the company. The only things - * required are an effective date (their last day of work) and whether they should receive their wages - * in a one-off termination payroll or with the rest of the company. + * Get an employee rehire * - *

    Note that some states require employees to receive their final wages within 24 hours (unless they - * consent otherwise,) in which case running a one-off payroll may be the only option. + *

    Retrieve an employee's rehire, which contains information on when the employee returns to work. * *

    scope: `employments:read` * @@ -142,31 +127,26 @@ public CompletableFuture getTermin * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param employeeId The UUID of the employee - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getTerminations(Optional xGustoAPIVersion, String employeeId) { - GetV1EmployeesEmployeeIdTerminationsRequest request = - GetV1EmployeesEmployeeIdTerminationsRequest + public CompletableFuture getRehire(Optional xGustoAPIVersion, String employeeId) { + GetV1EmployeesEmployeeIdRehireRequest request = + GetV1EmployeesEmployeeIdRehireRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .employeeId(employeeId) .build(); - AsyncRequestOperation operation - = new GetV1EmployeesEmployeeIdTerminations.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new GetV1EmployeesEmployeeIdRehire.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Create an employee termination - * - *

    Create a termination for an employee. The only things required are an effective date (their last day - * of work) and whether they should receive their wages in a one-off termination payroll or with the - * rest of the company. + * Create an employee rehire * - *

    Note that some states require employees to receive their final wages within 24 hours (unless they - * consent otherwise,) in which case running a one-off payroll may be the only option. + *

    Rehire is created whenever an employee is scheduled to return to the company. * *

    scope: `employments:write` * @@ -174,41 +154,31 @@ public CompletableFuture getTermin * * @return The async call builder */ - public PostV1EmployeesEmployeeIdTerminationsRequestBuilder createTermination() { - return new PostV1EmployeesEmployeeIdTerminationsRequestBuilder(sdkConfiguration); + public PostV1EmployeesEmployeeIdRehireRequestBuilder createRehire() { + return new PostV1EmployeesEmployeeIdRehireRequestBuilder(sdkConfiguration); } /** - * Create an employee termination - * - *

    Create a termination for an employee. The only things required are an effective date (their last day - * of work) and whether they should receive their wages in a one-off termination payroll or with the - * rest of the company. + * Create an employee rehire * - *

    Note that some states require employees to receive their final wages within 24 hours (unless they - * consent otherwise,) in which case running a one-off payroll may be the only option. + *

    Rehire is created whenever an employee is scheduled to return to the company. * *

    scope: `employments:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param employeeId The UUID of the employee - * @param requestBody - * @return {@code CompletableFuture} - The async response + * @param rehireBody + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture createTermination(String employeeId, PostV1EmployeesEmployeeIdTerminationsRequestBody requestBody) { - return createTermination(Optional.empty(), employeeId, requestBody); + public CompletableFuture createRehire(String employeeId, RehireBody rehireBody) { + return createRehire(Optional.empty(), employeeId, rehireBody); } /** - * Create an employee termination - * - *

    Create a termination for an employee. The only things required are an effective date (their last day - * of work) and whether they should receive their wages in a one-off termination payroll or with the - * rest of the company. + * Create an employee rehire * - *

    Note that some states require employees to receive their final wages within 24 hours (unless they - * consent otherwise,) in which case running a one-off payroll may be the only option. + *

    Rehire is created whenever an employee is scheduled to return to the company. * *

    scope: `employments:write` * @@ -216,30 +186,30 @@ public CompletableFuture createTe * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param employeeId The UUID of the employee - * @param requestBody - * @return {@code CompletableFuture} - The async response + * @param rehireBody + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture createTermination( - Optional xGustoAPIVersion, String employeeId, - PostV1EmployeesEmployeeIdTerminationsRequestBody requestBody) { - PostV1EmployeesEmployeeIdTerminationsRequest request = - PostV1EmployeesEmployeeIdTerminationsRequest + public CompletableFuture createRehire( + Optional xGustoAPIVersion, String employeeId, + RehireBody rehireBody) { + PostV1EmployeesEmployeeIdRehireRequest request = + PostV1EmployeesEmployeeIdRehireRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .employeeId(employeeId) - .requestBody(requestBody) + .rehireBody(rehireBody) .build(); - AsyncRequestOperation operation - = new PostV1EmployeesEmployeeIdTerminations.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new PostV1EmployeesEmployeeIdRehire.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Delete an employee termination + * Update an employee rehire * - *

    Delete an employee termination. + *

    Update an employee's rehire. * *

    scope: `employments:write` * @@ -247,30 +217,31 @@ public CompletableFuture createTe * * @return The async call builder */ - public DeleteV1EmployeesEmployeeIdTerminationsRequestBuilder deleteTermination() { - return new DeleteV1EmployeesEmployeeIdTerminationsRequestBuilder(sdkConfiguration); + public PutV1EmployeesEmployeeIdRehireRequestBuilder rehire() { + return new PutV1EmployeesEmployeeIdRehireRequestBuilder(sdkConfiguration); } /** - * Delete an employee termination + * Update an employee rehire * - *

    Delete an employee termination. + *

    Update an employee's rehire. * *

    scope: `employments:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param employeeId The UUID of the employee - * @return {@code CompletableFuture} - The async response + * @param rehireUpdateRequestBody Request body for updating an employee rehire. + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture deleteTermination(String employeeId) { - return deleteTermination(Optional.empty(), employeeId); + public CompletableFuture rehire(String employeeId, RehireUpdateRequestBody rehireUpdateRequestBody) { + return rehire(Optional.empty(), employeeId, rehireUpdateRequestBody); } /** - * Delete an employee termination + * Update an employee rehire * - *

    Delete an employee termination. + *

    Update an employee's rehire. * *

    scope: `employments:write` * @@ -278,31 +249,31 @@ public CompletableFuture delete * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param employeeId The UUID of the employee - * @return {@code CompletableFuture} - The async response + * @param rehireUpdateRequestBody Request body for updating an employee rehire. + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture deleteTermination(Optional xGustoAPIVersion, String employeeId) { - DeleteV1EmployeesEmployeeIdTerminationsRequest request = - DeleteV1EmployeesEmployeeIdTerminationsRequest + public CompletableFuture rehire( + Optional xGustoAPIVersion, String employeeId, + RehireUpdateRequestBody rehireUpdateRequestBody) { + PutV1EmployeesEmployeeIdRehireRequest request = + PutV1EmployeesEmployeeIdRehireRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .employeeId(employeeId) + .rehireUpdateRequestBody(rehireUpdateRequestBody) .build(); - AsyncRequestOperation operation - = new DeleteV1EmployeesEmployeeIdTerminations.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new PutV1EmployeesEmployeeIdRehire.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Update an employee termination - * - *

    Terminations are created whenever an employee is scheduled to leave the company. The only things - * required are an effective date (their last day of work) and whether they should receive their wages - * in a one-off termination payroll or with the rest of the company. + * Delete an employee rehire * - *

    Note that some states require employees to receive their final wages within 24 hours (unless they - * consent otherwise,) in which case running a one-off payroll may be the only option. + *

    Delete an employee rehire. An employee rehire cannot be deleted if it's active (past effective + * date). * *

    scope: `employments:write` * @@ -310,41 +281,32 @@ public CompletableFuture delete * * @return The async call builder */ - public PutV1TerminationsEmployeeIdRequestBuilder updateTermination() { - return new PutV1TerminationsEmployeeIdRequestBuilder(sdkConfiguration); + public DeleteV1EmployeesEmployeeIdRehireRequestBuilder deleteRehire() { + return new DeleteV1EmployeesEmployeeIdRehireRequestBuilder(sdkConfiguration); } /** - * Update an employee termination - * - *

    Terminations are created whenever an employee is scheduled to leave the company. The only things - * required are an effective date (their last day of work) and whether they should receive their wages - * in a one-off termination payroll or with the rest of the company. + * Delete an employee rehire * - *

    Note that some states require employees to receive their final wages within 24 hours (unless they - * consent otherwise,) in which case running a one-off payroll may be the only option. + *

    Delete an employee rehire. An employee rehire cannot be deleted if it's active (past effective + * date). * *

    scope: `employments:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param employeeId The UUID of the employee - * @param requestBody - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture updateTermination(String employeeId, PutV1TerminationsEmployeeIdRequestBody requestBody) { - return updateTermination(Optional.empty(), employeeId, requestBody); + public CompletableFuture deleteRehire(String employeeId) { + return deleteRehire(Optional.empty(), employeeId); } /** - * Update an employee termination - * - *

    Terminations are created whenever an employee is scheduled to leave the company. The only things - * required are an effective date (their last day of work) and whether they should receive their wages - * in a one-off termination payroll or with the rest of the company. + * Delete an employee rehire * - *

    Note that some states require employees to receive their final wages within 24 hours (unless they - * consent otherwise,) in which case running a one-off payroll may be the only option. + *

    Delete an employee rehire. An employee rehire cannot be deleted if it's active (past effective + * date). * *

    scope: `employments:write` * @@ -352,30 +314,26 @@ public CompletableFuture updateTermination( * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param employeeId The UUID of the employee - * @param requestBody - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture updateTermination( - Optional xGustoAPIVersion, String employeeId, - PutV1TerminationsEmployeeIdRequestBody requestBody) { - PutV1TerminationsEmployeeIdRequest request = - PutV1TerminationsEmployeeIdRequest + public CompletableFuture deleteRehire(Optional xGustoAPIVersion, String employeeId) { + DeleteV1EmployeesEmployeeIdRehireRequest request = + DeleteV1EmployeesEmployeeIdRehireRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .employeeId(employeeId) - .requestBody(requestBody) .build(); - AsyncRequestOperation operation - = new PutV1TerminationsEmployeeId.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new DeleteV1EmployeesEmployeeIdRehire.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Get an employee rehire + * Get employment history for an employee * - *

    Retrieve an employee's rehire, which contains information on when the employee returns to work. + *

    Retrieve the employment history for a given employee, which includes termination and rehire. * *

    scope: `employments:read` * @@ -383,30 +341,30 @@ public CompletableFuture updateTermination( * * @return The async call builder */ - public GetV1EmployeesEmployeeIdRehireRequestBuilder getRehire() { - return new GetV1EmployeesEmployeeIdRehireRequestBuilder(sdkConfiguration); + public GetV1EmployeesEmployeeIdEmploymentHistoryRequestBuilder getHistory() { + return new GetV1EmployeesEmployeeIdEmploymentHistoryRequestBuilder(sdkConfiguration); } /** - * Get an employee rehire + * Get employment history for an employee * - *

    Retrieve an employee's rehire, which contains information on when the employee returns to work. + *

    Retrieve the employment history for a given employee, which includes termination and rehire. * *

    scope: `employments:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param employeeId The UUID of the employee - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getRehire(String employeeId) { - return getRehire(Optional.empty(), employeeId); + public CompletableFuture getHistory(String employeeId) { + return getHistory(Optional.empty(), employeeId); } /** - * Get an employee rehire + * Get employment history for an employee * - *

    Retrieve an employee's rehire, which contains information on when the employee returns to work. + *

    Retrieve the employment history for a given employee, which includes termination and rehire. * *

    scope: `employments:read` * @@ -414,89 +372,104 @@ public CompletableFuture getRehire(Strin * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param employeeId The UUID of the employee - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getRehire(Optional xGustoAPIVersion, String employeeId) { - GetV1EmployeesEmployeeIdRehireRequest request = - GetV1EmployeesEmployeeIdRehireRequest + public CompletableFuture getHistory(Optional xGustoAPIVersion, String employeeId) { + GetV1EmployeesEmployeeIdEmploymentHistoryRequest request = + GetV1EmployeesEmployeeIdEmploymentHistoryRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .employeeId(employeeId) .build(); - AsyncRequestOperation operation - = new GetV1EmployeesEmployeeIdRehire.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new GetV1EmployeesEmployeeIdEmploymentHistory.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Create an employee rehire + * Get terminations for an employee * - *

    Rehire is created whenever an employee is scheduled to return to the company. + *

    Terminations are created whenever an employee is scheduled to leave the company. The only things + * required are an effective date (their last day of work) and whether they should receive their wages + * in a one-off termination payroll or with the rest of the company. * - *

    scope: `employments:write` + *

    Note that some states require employees to receive their final wages within 24 hours (unless they + * consent otherwise,) in which case running a one-off payroll may be the only option. + * + *

    scope: `employments:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public PostV1EmployeesEmployeeIdRehireRequestBuilder createRehire() { - return new PostV1EmployeesEmployeeIdRehireRequestBuilder(sdkConfiguration); + public GetV1EmployeesEmployeeIdTerminationsRequestBuilder getTerminations() { + return new GetV1EmployeesEmployeeIdTerminationsRequestBuilder(sdkConfiguration); } /** - * Create an employee rehire + * Get terminations for an employee * - *

    Rehire is created whenever an employee is scheduled to return to the company. + *

    Terminations are created whenever an employee is scheduled to leave the company. The only things + * required are an effective date (their last day of work) and whether they should receive their wages + * in a one-off termination payroll or with the rest of the company. * - *

    scope: `employments:write` + *

    Note that some states require employees to receive their final wages within 24 hours (unless they + * consent otherwise,) in which case running a one-off payroll may be the only option. + * + *

    scope: `employments:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param employeeId The UUID of the employee - * @param rehireBody - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture createRehire(String employeeId, RehireBody rehireBody) { - return createRehire(Optional.empty(), employeeId, rehireBody); + public CompletableFuture getTerminations(String employeeId) { + return getTerminations(Optional.empty(), employeeId); } /** - * Create an employee rehire + * Get terminations for an employee * - *

    Rehire is created whenever an employee is scheduled to return to the company. + *

    Terminations are created whenever an employee is scheduled to leave the company. The only things + * required are an effective date (their last day of work) and whether they should receive their wages + * in a one-off termination payroll or with the rest of the company. * - *

    scope: `employments:write` + *

    Note that some states require employees to receive their final wages within 24 hours (unless they + * consent otherwise,) in which case running a one-off payroll may be the only option. + * + *

    scope: `employments:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param employeeId The UUID of the employee - * @param rehireBody - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture createRehire( - Optional xGustoAPIVersion, String employeeId, - RehireBody rehireBody) { - PostV1EmployeesEmployeeIdRehireRequest request = - PostV1EmployeesEmployeeIdRehireRequest + public CompletableFuture getTerminations(Optional xGustoAPIVersion, String employeeId) { + GetV1EmployeesEmployeeIdTerminationsRequest request = + GetV1EmployeesEmployeeIdTerminationsRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .employeeId(employeeId) - .rehireBody(rehireBody) .build(); - AsyncRequestOperation operation - = new PostV1EmployeesEmployeeIdRehire.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new GetV1EmployeesEmployeeIdTerminations.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Update an employee rehire + * Create an employee termination * - *

    Update an employee's rehire. + *

    Create a termination for an employee. The only things required are an effective date (their last day + * of work) and whether they should receive their wages in a one-off termination payroll or with the + * rest of the company. + * + *

    Note that some states require employees to receive their final wages within 24 hours (unless they + * consent otherwise,) in which case running a one-off payroll may be the only option. * *

    scope: `employments:write` * @@ -504,31 +477,41 @@ public CompletableFuture createRehire( * * @return The async call builder */ - public PutV1EmployeesEmployeeIdRehireRequestBuilder rehire() { - return new PutV1EmployeesEmployeeIdRehireRequestBuilder(sdkConfiguration); + public PostV1EmployeesEmployeeIdTerminationsRequestBuilder createTermination() { + return new PostV1EmployeesEmployeeIdTerminationsRequestBuilder(sdkConfiguration); } /** - * Update an employee rehire + * Create an employee termination * - *

    Update an employee's rehire. + *

    Create a termination for an employee. The only things required are an effective date (their last day + * of work) and whether they should receive their wages in a one-off termination payroll or with the + * rest of the company. + * + *

    Note that some states require employees to receive their final wages within 24 hours (unless they + * consent otherwise,) in which case running a one-off payroll may be the only option. * *

    scope: `employments:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param employeeId The UUID of the employee - * @param rehireUpdateRequestBody Request body for updating an employee rehire. - * @return {@code CompletableFuture} - The async response + * @param requestBody + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture rehire(String employeeId, RehireUpdateRequestBody rehireUpdateRequestBody) { - return rehire(Optional.empty(), employeeId, rehireUpdateRequestBody); + public CompletableFuture createTermination(String employeeId, PostV1EmployeesEmployeeIdTerminationsRequestBody requestBody) { + return createTermination(Optional.empty(), employeeId, requestBody); } /** - * Update an employee rehire + * Create an employee termination * - *

    Update an employee's rehire. + *

    Create a termination for an employee. The only things required are an effective date (their last day + * of work) and whether they should receive their wages in a one-off termination payroll or with the + * rest of the company. + * + *

    Note that some states require employees to receive their final wages within 24 hours (unless they + * consent otherwise,) in which case running a one-off payroll may be the only option. * *

    scope: `employments:write` * @@ -536,31 +519,30 @@ public CompletableFuture rehire(String e * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param employeeId The UUID of the employee - * @param rehireUpdateRequestBody Request body for updating an employee rehire. - * @return {@code CompletableFuture} - The async response + * @param requestBody + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture rehire( - Optional xGustoAPIVersion, String employeeId, - RehireUpdateRequestBody rehireUpdateRequestBody) { - PutV1EmployeesEmployeeIdRehireRequest request = - PutV1EmployeesEmployeeIdRehireRequest + public CompletableFuture createTermination( + Optional xGustoAPIVersion, String employeeId, + PostV1EmployeesEmployeeIdTerminationsRequestBody requestBody) { + PostV1EmployeesEmployeeIdTerminationsRequest request = + PostV1EmployeesEmployeeIdTerminationsRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .employeeId(employeeId) - .rehireUpdateRequestBody(rehireUpdateRequestBody) + .requestBody(requestBody) .build(); - AsyncRequestOperation operation - = new PutV1EmployeesEmployeeIdRehire.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new PostV1EmployeesEmployeeIdTerminations.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Delete an employee rehire + * Delete an employee termination * - *

    Delete an employee rehire. An employee rehire cannot be deleted if it's active (past effective - * date). + *

    Delete an employee termination. * *

    scope: `employments:write` * @@ -568,32 +550,30 @@ public CompletableFuture rehire( * * @return The async call builder */ - public DeleteV1EmployeesEmployeeIdRehireRequestBuilder deleteRehire() { - return new DeleteV1EmployeesEmployeeIdRehireRequestBuilder(sdkConfiguration); + public DeleteV1EmployeesEmployeeIdTerminationsRequestBuilder deleteTermination() { + return new DeleteV1EmployeesEmployeeIdTerminationsRequestBuilder(sdkConfiguration); } /** - * Delete an employee rehire + * Delete an employee termination * - *

    Delete an employee rehire. An employee rehire cannot be deleted if it's active (past effective - * date). + *

    Delete an employee termination. * *

    scope: `employments:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param employeeId The UUID of the employee - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture deleteRehire(String employeeId) { - return deleteRehire(Optional.empty(), employeeId); + public CompletableFuture deleteTermination(String employeeId) { + return deleteTermination(Optional.empty(), employeeId); } /** - * Delete an employee rehire + * Delete an employee termination * - *

    Delete an employee rehire. An employee rehire cannot be deleted if it's active (past effective - * date). + *

    Delete an employee termination. * *

    scope: `employments:write` * @@ -601,75 +581,95 @@ public CompletableFuture deleteRehire * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param employeeId The UUID of the employee - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture deleteRehire(Optional xGustoAPIVersion, String employeeId) { - DeleteV1EmployeesEmployeeIdRehireRequest request = - DeleteV1EmployeesEmployeeIdRehireRequest + public CompletableFuture deleteTermination(Optional xGustoAPIVersion, String employeeId) { + DeleteV1EmployeesEmployeeIdTerminationsRequest request = + DeleteV1EmployeesEmployeeIdTerminationsRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .employeeId(employeeId) .build(); - AsyncRequestOperation operation - = new DeleteV1EmployeesEmployeeIdRehire.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new DeleteV1EmployeesEmployeeIdTerminations.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Get employment history for an employee + * Update an employee termination * - *

    Retrieve the employment history for a given employee, which includes termination and rehire. + *

    Terminations are created whenever an employee is scheduled to leave the company. The only things + * required are an effective date (their last day of work) and whether they should receive their wages + * in a one-off termination payroll or with the rest of the company. * - *

    scope: `employments:read` + *

    Note that some states require employees to receive their final wages within 24 hours (unless they + * consent otherwise,) in which case running a one-off payroll may be the only option. + * + *

    scope: `employments:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public GetV1EmployeesEmployeeIdEmploymentHistoryRequestBuilder getHistory() { - return new GetV1EmployeesEmployeeIdEmploymentHistoryRequestBuilder(sdkConfiguration); + public PutV1TerminationsEmployeeIdRequestBuilder updateTermination() { + return new PutV1TerminationsEmployeeIdRequestBuilder(sdkConfiguration); } /** - * Get employment history for an employee + * Update an employee termination * - *

    Retrieve the employment history for a given employee, which includes termination and rehire. + *

    Terminations are created whenever an employee is scheduled to leave the company. The only things + * required are an effective date (their last day of work) and whether they should receive their wages + * in a one-off termination payroll or with the rest of the company. * - *

    scope: `employments:read` + *

    Note that some states require employees to receive their final wages within 24 hours (unless they + * consent otherwise,) in which case running a one-off payroll may be the only option. + * + *

    scope: `employments:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param employeeId The UUID of the employee - * @return {@code CompletableFuture} - The async response + * @param requestBody + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getHistory(String employeeId) { - return getHistory(Optional.empty(), employeeId); + public CompletableFuture updateTermination(String employeeId, PutV1TerminationsEmployeeIdRequestBody requestBody) { + return updateTermination(Optional.empty(), employeeId, requestBody); } /** - * Get employment history for an employee + * Update an employee termination * - *

    Retrieve the employment history for a given employee, which includes termination and rehire. + *

    Terminations are created whenever an employee is scheduled to leave the company. The only things + * required are an effective date (their last day of work) and whether they should receive their wages + * in a one-off termination payroll or with the rest of the company. * - *

    scope: `employments:read` + *

    Note that some states require employees to receive their final wages within 24 hours (unless they + * consent otherwise,) in which case running a one-off payroll may be the only option. + * + *

    scope: `employments:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param employeeId The UUID of the employee - * @return {@code CompletableFuture} - The async response + * @param requestBody + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getHistory(Optional xGustoAPIVersion, String employeeId) { - GetV1EmployeesEmployeeIdEmploymentHistoryRequest request = - GetV1EmployeesEmployeeIdEmploymentHistoryRequest + public CompletableFuture updateTermination( + Optional xGustoAPIVersion, String employeeId, + PutV1TerminationsEmployeeIdRequestBody requestBody) { + PutV1TerminationsEmployeeIdRequest request = + PutV1TerminationsEmployeeIdRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .employeeId(employeeId) + .requestBody(requestBody) .build(); - AsyncRequestOperation operation - = new GetV1EmployeesEmployeeIdEmploymentHistory.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new PutV1TerminationsEmployeeId.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncEmployeeForms.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncEmployeeForms.java index a5f567262..8568c71e8 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncEmployeeForms.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncEmployeeForms.java @@ -56,76 +56,6 @@ public EmployeeForms sync() { } - /** - * Generate a W2 form [DEMO] - * - *

    > 🚧 Demo action - * > - * > This action is only available in the Demo environment - * - *

    Generates a W2 document for testing purposes. - * - *

    scope: `employees:write` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The async call builder - */ - public PostV1SandboxGenerateW2RequestBuilder generateW2() { - return new PostV1SandboxGenerateW2RequestBuilder(sdkConfiguration); - } - - /** - * Generate a W2 form [DEMO] - * - *

    > 🚧 Demo action - * > - * > This action is only available in the Demo environment - * - *

    Generates a W2 document for testing purposes. - * - *

    scope: `employees:write` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param requestBody - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture generateW2(PostV1SandboxGenerateW2RequestBody requestBody) { - return generateW2(Optional.empty(), requestBody); - } - - /** - * Generate a W2 form [DEMO] - * - *

    > 🚧 Demo action - * > - * > This action is only available in the Demo environment - * - *

    Generates a W2 document for testing purposes. - * - *

    scope: `employees:write` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param requestBody - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture generateW2(Optional xGustoAPIVersion, PostV1SandboxGenerateW2RequestBody requestBody) { - PostV1SandboxGenerateW2Request request = - PostV1SandboxGenerateW2Request - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .requestBody(requestBody) - .build(); - AsyncRequestOperation operation - = new PostV1SandboxGenerateW2.Async(sdkConfiguration, _headers); - return operation.doRequest(request) - .thenCompose(operation::handleResponse); - } - - /** * Get all employee forms * @@ -350,4 +280,74 @@ public CompletableFuture sign(PutV1EmployeeFormSi .thenCompose(operation::handleResponse); } + + /** + * Generate a W2 form [DEMO] + * + *

    > 🚧 Demo action + * > + * > This action is only available in the Demo environment + * + *

    Generates a W2 document for testing purposes. + * + *

    scope: `employees:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public PostV1SandboxGenerateW2RequestBuilder generateW2() { + return new PostV1SandboxGenerateW2RequestBuilder(sdkConfiguration); + } + + /** + * Generate a W2 form [DEMO] + * + *

    > 🚧 Demo action + * > + * > This action is only available in the Demo environment + * + *

    Generates a W2 document for testing purposes. + * + *

    scope: `employees:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param requestBody + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture generateW2(PostV1SandboxGenerateW2RequestBody requestBody) { + return generateW2(Optional.empty(), requestBody); + } + + /** + * Generate a W2 form [DEMO] + * + *

    > 🚧 Demo action + * > + * > This action is only available in the Demo environment + * + *

    Generates a W2 document for testing purposes. + * + *

    scope: `employees:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param requestBody + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture generateW2(Optional xGustoAPIVersion, PostV1SandboxGenerateW2RequestBody requestBody) { + PostV1SandboxGenerateW2Request request = + PostV1SandboxGenerateW2Request + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .requestBody(requestBody) + .build(); + AsyncRequestOperation operation + = new PostV1SandboxGenerateW2.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncEmployees.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncEmployees.java index 7dcecd211..576a4b41b 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncEmployees.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncEmployees.java @@ -16,6 +16,7 @@ import com.gusto.embedded_api.models.operations.GetV1EmployeesEmployeeIdOnboardingStatusHeaderXGustoAPIVersion; import com.gusto.embedded_api.models.operations.GetV1EmployeesEmployeeIdOnboardingStatusRequest; import com.gusto.embedded_api.models.operations.GetV1EmployeesHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetV1EmployeesQueryParamInclude; import com.gusto.embedded_api.models.operations.GetV1EmployeesRequest; import com.gusto.embedded_api.models.operations.GetVersionEmployeesTimeOffActivitiesHeaderXGustoAPIVersion; import com.gusto.embedded_api.models.operations.GetVersionEmployeesTimeOffActivitiesRequest; @@ -32,7 +33,6 @@ import com.gusto.embedded_api.models.operations.PutV1EmployeesHeaderXGustoAPIVersion; import com.gusto.embedded_api.models.operations.PutV1EmployeesRequest; import com.gusto.embedded_api.models.operations.PutV1EmployeesRequestBody; -import com.gusto.embedded_api.models.operations.QueryParamInclude; import com.gusto.embedded_api.models.operations.async.DeleteV1EmployeeRequestBuilder; import com.gusto.embedded_api.models.operations.async.DeleteV1EmployeeResponse; import com.gusto.embedded_api.models.operations.async.GetV1CompaniesCompanyIdEmployeesPaymentDetailsRequestBuilder; @@ -98,14 +98,9 @@ public Employees sync() { /** - * Get employees of a company - * - *

    Get all of the employees, onboarding, active and terminated, for a given company. + * Get an employee's custom fields * - *

    Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee - * pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, - * `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope - * is included. This allows you to access employee and job metadata without exposing pay rates. + *

    Returns a list of the employee's custom fields. * *

    scope: `employees:read` * @@ -113,92 +108,56 @@ public Employees sync() { * * @return The async call builder */ - public GetV1CompaniesCompanyIdEmployeesRequestBuilder list() { - return new GetV1CompaniesCompanyIdEmployeesRequestBuilder(sdkConfiguration); + public GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder getCustomFields() { + return new GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder(sdkConfiguration); } /** - * Get employees of a company - * - *

    Get all of the employees, onboarding, active and terminated, for a given company. + * Get an employee's custom fields * - *

    Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee - * pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, - * `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope - * is included. This allows you to access employee and job metadata without exposing pay rates. + *

    Returns a list of the employee's custom fields. * *

    scope: `employees:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param request The request object containing all the parameters for the API call. - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture list(GetV1CompaniesCompanyIdEmployeesRequest request) { - AsyncRequestOperation operation - = new GetV1CompaniesCompanyIdEmployees.Async(sdkConfiguration, _headers); - return operation.doRequest(request) - .thenCompose(operation::handleResponse); - } - - - /** - * Create an employee - * - *

    Create an employee. - * - *

    scope: `employees:manage` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The async call builder - */ - public PostV1EmployeesRequestBuilder create() { - return new PostV1EmployeesRequestBuilder(sdkConfiguration); - } - - /** - * Create an employee - * - *

    Create an employee. - * - *

    scope: `employees:manage` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param companyId Company ID - * @return {@code CompletableFuture} - The async response + * @param employeeId The UUID of the employee + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture create(String companyId) { - return create(Optional.empty(), companyId, Optional.empty()); + public CompletableFuture getCustomFields(String employeeId) { + return getCustomFields( + Optional.empty(), employeeId, Optional.empty(), + Optional.empty()); } /** - * Create an employee + * Get an employee's custom fields * - *

    Create an employee. + *

    Returns a list of the employee's custom fields. * - *

    scope: `employees:manage` + *

    scope: `employees:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyId Company ID - * @param requestBody - * @return {@code CompletableFuture} - The async response + * @param employeeId The UUID of the employee + * @param page The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + * @param per Number of objects per page. For majority of endpoints will default to 25 + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture create( - Optional xGustoAPIVersion, String companyId, - Optional requestBody) { - PostV1EmployeesRequest request = - PostV1EmployeesRequest + public CompletableFuture getCustomFields( + Optional xGustoAPIVersion, String employeeId, + Optional page, Optional per) { + GetV1EmployeesEmployeeIdCustomFieldsRequest request = + GetV1EmployeesEmployeeIdCustomFieldsRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .companyId(companyId) - .requestBody(requestBody) + .employeeId(employeeId) + .page(page) + .per(per) .build(); - AsyncRequestOperation operation - = new PostV1Employees.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new GetV1EmployeesEmployeeIdCustomFields.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } @@ -258,72 +217,63 @@ public CompletableFuture /** - * Create a historical employee + * Get employee time off activities * - *

    Create a historical employee, an employee that was previously dismissed from the company in the - * current year. + *

    Get employee time off activities. * - *

    scope: `employees:manage` + *

    scope: `employee_time_off_activities:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public PostV1HistoricalEmployeesRequestBuilder createHistorical() { - return new PostV1HistoricalEmployeesRequestBuilder(sdkConfiguration); + public GetVersionEmployeesTimeOffActivitiesRequestBuilder getTimeOffActivities() { + return new GetVersionEmployeesTimeOffActivitiesRequestBuilder(sdkConfiguration); } /** - * Create a historical employee + * Get employee time off activities * - *

    Create a historical employee, an employee that was previously dismissed from the company in the - * current year. + *

    Get employee time off activities. * - *

    scope: `employees:manage` + *

    scope: `employee_time_off_activities:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company that will employ this historical record. - * @param historicalEmployeeBody Request body for creating or updating a **historical employee**—someone who already separated from the company and must appear on year-to-date or tax filings without receiving ongoing payroll. - * - * Send this object under the JSON root key `employee`. All dates are ISO 8601 (`YYYY-MM-DD`). Use a `work_address.location_uuid` returned from your company locations API for an active work site. - * - * @return {@code CompletableFuture} - The async response + * @param employeeUuid The UUID of the employee + * @param timeOffType The time off type name you want to query data for. ex: 'sick' or 'vacation' + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture createHistorical(String companyUuid, HistoricalEmployeeBody historicalEmployeeBody) { - return createHistorical(Optional.empty(), companyUuid, historicalEmployeeBody); + public CompletableFuture getTimeOffActivities(String employeeUuid, String timeOffType) { + return getTimeOffActivities(Optional.empty(), employeeUuid, timeOffType); } /** - * Create a historical employee + * Get employee time off activities * - *

    Create a historical employee, an employee that was previously dismissed from the company in the - * current year. + *

    Get employee time off activities. * - *

    scope: `employees:manage` + *

    scope: `employee_time_off_activities:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyUuid The UUID of the company that will employ this historical record. - * @param historicalEmployeeBody Request body for creating or updating a **historical employee**—someone who already separated from the company and must appear on year-to-date or tax filings without receiving ongoing payroll. - * - * Send this object under the JSON root key `employee`. All dates are ISO 8601 (`YYYY-MM-DD`). Use a `work_address.location_uuid` returned from your company locations API for an active work site. - * - * @return {@code CompletableFuture} - The async response + * @param employeeUuid The UUID of the employee + * @param timeOffType The time off type name you want to query data for. ex: 'sick' or 'vacation' + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture createHistorical( - Optional xGustoAPIVersion, String companyUuid, - HistoricalEmployeeBody historicalEmployeeBody) { - PostV1HistoricalEmployeesRequest request = - PostV1HistoricalEmployeesRequest + public CompletableFuture getTimeOffActivities( + Optional xGustoAPIVersion, String employeeUuid, + String timeOffType) { + GetVersionEmployeesTimeOffActivitiesRequest request = + GetVersionEmployeesTimeOffActivitiesRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .companyUuid(companyUuid) - .historicalEmployeeBody(historicalEmployeeBody) + .employeeUuid(employeeUuid) + .timeOffType(timeOffType) .build(); - AsyncRequestOperation operation - = new PostV1HistoricalEmployees.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new GetVersionEmployeesTimeOffActivities.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } @@ -391,7 +341,7 @@ public CompletableFuture get(String employeeId) { */ public CompletableFuture get( Optional xGustoAPIVersion, String employeeId, - Optional> include) { + Optional> include) { GetV1EmployeesRequest request = GetV1EmployeesRequest .builder() @@ -537,9 +487,14 @@ public CompletableFuture delete(OptionalReturns a list of the employee's custom fields. + *

    Get all of the employees, onboarding, active and terminated, for a given company. + * + *

    Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee + * pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, + * `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope + * is included. This allows you to access employee and job metadata without exposing pay rates. * *

    scope: `employees:read` * @@ -547,69 +502,39 @@ public CompletableFuture delete(OptionalReturns a list of the employee's custom fields. - * - *

    scope: `employees:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. + * Get employees of a company * - * @param employeeId The UUID of the employee - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture getCustomFields(String employeeId) { - return getCustomFields( - employeeId, Optional.empty(), Optional.empty(), - Optional.empty()); - } - - /** - * Get an employee's custom fields + *

    Get all of the employees, onboarding, active and terminated, for a given company. * - *

    Returns a list of the employee's custom fields. + *

    Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee + * pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, + * `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope + * is included. This allows you to access employee and job metadata without exposing pay rates. * *

    scope: `employees:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param employeeId The UUID of the employee - * @param page The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - * @param per Number of objects per page. For majority of endpoints will default to 25 - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @return {@code CompletableFuture} - The async response + * @param request The request object containing all the parameters for the API call. + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getCustomFields( - String employeeId, Optional page, - Optional per, Optional xGustoAPIVersion) { - GetV1EmployeesEmployeeIdCustomFieldsRequest request = - GetV1EmployeesEmployeeIdCustomFieldsRequest - .builder() - .employeeId(employeeId) - .page(page) - .per(per) - .xGustoAPIVersion(xGustoAPIVersion) - .build(); - AsyncRequestOperation operation - = new GetV1EmployeesEmployeeIdCustomFields.Async(sdkConfiguration, _headers); + public CompletableFuture list(GetV1CompaniesCompanyIdEmployeesRequest request) { + AsyncRequestOperation operation + = new GetV1CompaniesCompanyIdEmployees.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Update employee onboarding documents config - * - *

    Indicate whether to include the Form I-9 for an employee during the onboarding process. - * If included, the employee will be prompted to complete Form I-9 as part of their onboarding. + * Create an employee * - *

    ## Related guides - * - [Employee onboarding](doc:employee-onboarding) + *

    Create an employee. * *

    scope: `employees:manage` * @@ -617,60 +542,52 @@ public CompletableFuture getCustom * * @return The async call builder */ - public PutV1EmployeesEmployeeIdOnboardingDocumentsConfigRequestBuilder updateOnboardingDocumentsConfig() { - return new PutV1EmployeesEmployeeIdOnboardingDocumentsConfigRequestBuilder(sdkConfiguration); + public PostV1EmployeesRequestBuilder create() { + return new PostV1EmployeesRequestBuilder(sdkConfiguration); } /** - * Update employee onboarding documents config - * - *

    Indicate whether to include the Form I-9 for an employee during the onboarding process. - * If included, the employee will be prompted to complete Form I-9 as part of their onboarding. + * Create an employee * - *

    ## Related guides - * - [Employee onboarding](doc:employee-onboarding) + *

    Create an employee. * *

    scope: `employees:manage` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param employeeId The UUID of the employee - * @return {@code CompletableFuture} - The async response + * @param companyId Company ID + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture updateOnboardingDocumentsConfig(String employeeId) { - return updateOnboardingDocumentsConfig(Optional.empty(), employeeId, Optional.empty()); + public CompletableFuture create(String companyId) { + return create(Optional.empty(), companyId, Optional.empty()); } /** - * Update employee onboarding documents config - * - *

    Indicate whether to include the Form I-9 for an employee during the onboarding process. - * If included, the employee will be prompted to complete Form I-9 as part of their onboarding. + * Create an employee * - *

    ## Related guides - * - [Employee onboarding](doc:employee-onboarding) + *

    Create an employee. * *

    scope: `employees:manage` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param employeeId The UUID of the employee - * @param employeeOnboardingDocumentsConfigRequest Request body for updating an employee's onboarding documents configuration. - * @return {@code CompletableFuture} - The async response + * @param companyId Company ID + * @param requestBody + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture updateOnboardingDocumentsConfig( - Optional xGustoAPIVersion, String employeeId, - Optional employeeOnboardingDocumentsConfigRequest) { - PutV1EmployeesEmployeeIdOnboardingDocumentsConfigRequest request = - PutV1EmployeesEmployeeIdOnboardingDocumentsConfigRequest + public CompletableFuture create( + Optional xGustoAPIVersion, String companyId, + Optional requestBody) { + PostV1EmployeesRequest request = + PostV1EmployeesRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .employeeId(employeeId) - .employeeOnboardingDocumentsConfigRequest(employeeOnboardingDocumentsConfigRequest) + .companyId(companyId) + .requestBody(requestBody) .build(); - AsyncRequestOperation operation - = new PutV1EmployeesEmployeeIdOnboardingDocumentsConfig.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new PostV1Employees.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } @@ -978,63 +895,146 @@ public CompletableFuture updat /** - * Get employee time off activities + * Update employee onboarding documents config * - *

    Get employee time off activities. + *

    Indicate whether to include the Form I-9 for an employee during the onboarding process. + * If included, the employee will be prompted to complete Form I-9 as part of their onboarding. * - *

    scope: `employee_time_off_activities:read` + *

    ## Related guides + * - [Employee onboarding](doc:employee-onboarding) + * + *

    scope: `employees:manage` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public GetVersionEmployeesTimeOffActivitiesRequestBuilder getTimeOffActivities() { - return new GetVersionEmployeesTimeOffActivitiesRequestBuilder(sdkConfiguration); + public PutV1EmployeesEmployeeIdOnboardingDocumentsConfigRequestBuilder updateOnboardingDocumentsConfig() { + return new PutV1EmployeesEmployeeIdOnboardingDocumentsConfigRequestBuilder(sdkConfiguration); } /** - * Get employee time off activities + * Update employee onboarding documents config * - *

    Get employee time off activities. + *

    Indicate whether to include the Form I-9 for an employee during the onboarding process. + * If included, the employee will be prompted to complete Form I-9 as part of their onboarding. * - *

    scope: `employee_time_off_activities:read` + *

    ## Related guides + * - [Employee onboarding](doc:employee-onboarding) + * + *

    scope: `employees:manage` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param employeeUuid The UUID of the employee - * @param timeOffType The time off type name you want to query data for. ex: 'sick' or 'vacation' - * @return {@code CompletableFuture} - The async response + * @param employeeId The UUID of the employee + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getTimeOffActivities(String employeeUuid, String timeOffType) { - return getTimeOffActivities(Optional.empty(), employeeUuid, timeOffType); + public CompletableFuture updateOnboardingDocumentsConfig(String employeeId) { + return updateOnboardingDocumentsConfig(Optional.empty(), employeeId, Optional.empty()); } /** - * Get employee time off activities + * Update employee onboarding documents config * - *

    Get employee time off activities. + *

    Indicate whether to include the Form I-9 for an employee during the onboarding process. + * If included, the employee will be prompted to complete Form I-9 as part of their onboarding. * - *

    scope: `employee_time_off_activities:read` + *

    ## Related guides + * - [Employee onboarding](doc:employee-onboarding) + * + *

    scope: `employees:manage` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param employeeUuid The UUID of the employee - * @param timeOffType The time off type name you want to query data for. ex: 'sick' or 'vacation' - * @return {@code CompletableFuture} - The async response + * @param employeeId The UUID of the employee + * @param employeeOnboardingDocumentsConfigRequest Request body for updating an employee's onboarding documents configuration. + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getTimeOffActivities( - Optional xGustoAPIVersion, String employeeUuid, - String timeOffType) { - GetVersionEmployeesTimeOffActivitiesRequest request = - GetVersionEmployeesTimeOffActivitiesRequest + public CompletableFuture updateOnboardingDocumentsConfig( + Optional xGustoAPIVersion, String employeeId, + Optional employeeOnboardingDocumentsConfigRequest) { + PutV1EmployeesEmployeeIdOnboardingDocumentsConfigRequest request = + PutV1EmployeesEmployeeIdOnboardingDocumentsConfigRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .employeeUuid(employeeUuid) - .timeOffType(timeOffType) + .employeeId(employeeId) + .employeeOnboardingDocumentsConfigRequest(employeeOnboardingDocumentsConfigRequest) .build(); - AsyncRequestOperation operation - = new GetVersionEmployeesTimeOffActivities.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new PutV1EmployeesEmployeeIdOnboardingDocumentsConfig.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Create a historical employee + * + *

    Create a historical employee, an employee that was previously dismissed from the company in the + * current year. + * + *

    scope: `employees:manage` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public PostV1HistoricalEmployeesRequestBuilder createHistorical() { + return new PostV1HistoricalEmployeesRequestBuilder(sdkConfiguration); + } + + /** + * Create a historical employee + * + *

    Create a historical employee, an employee that was previously dismissed from the company in the + * current year. + * + *

    scope: `employees:manage` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param companyUuid The UUID of the company that will employ this historical record. + * @param historicalEmployeeBody Request body for creating or updating a **historical employee**—someone who already separated from the company and must appear on year-to-date or tax filings without receiving ongoing payroll. + * + * Send this object under the JSON root key `employee`. All dates are ISO 8601 (`YYYY-MM-DD`). Use a `work_address.location_uuid` returned from your company locations API for an active work site. + * + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture createHistorical(String companyUuid, HistoricalEmployeeBody historicalEmployeeBody) { + return createHistorical(Optional.empty(), companyUuid, historicalEmployeeBody); + } + + /** + * Create a historical employee + * + *

    Create a historical employee, an employee that was previously dismissed from the company in the + * current year. + * + *

    scope: `employees:manage` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company that will employ this historical record. + * @param historicalEmployeeBody Request body for creating or updating a **historical employee**—someone who already separated from the company and must appear on year-to-date or tax filings without receiving ongoing payroll. + * + * Send this object under the JSON root key `employee`. All dates are ISO 8601 (`YYYY-MM-DD`). Use a `work_address.location_uuid` returned from your company locations API for an active work site. + * + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture createHistorical( + Optional xGustoAPIVersion, String companyUuid, + HistoricalEmployeeBody historicalEmployeeBody) { + PostV1HistoricalEmployeesRequest request = + PostV1HistoricalEmployeesRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) + .historicalEmployeeBody(historicalEmployeeBody) + .build(); + AsyncRequestOperation operation + = new PostV1HistoricalEmployees.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncExternalPayrolls.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncExternalPayrolls.java index 06fef5655..09fd5cef0 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncExternalPayrolls.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncExternalPayrolls.java @@ -210,9 +210,9 @@ public CompletableFuture create( /** - * Get an external payroll + * Get tax liabilities * - *

    Get an external payroll for a given company. + *

    Get tax liabilities from aggregate external payrolls for a company. * *

    scope: `external_payrolls:read` * @@ -220,31 +220,30 @@ public CompletableFuture create( * * @return The async call builder */ - public GetV1ExternalPayrollRequestBuilder retrieve() { - return new GetV1ExternalPayrollRequestBuilder(sdkConfiguration); + public GetV1TaxLiabilitiesRequestBuilder listTaxLiabilities() { + return new GetV1TaxLiabilitiesRequestBuilder(sdkConfiguration); } /** - * Get an external payroll + * Get tax liabilities * - *

    Get an external payroll for a given company. + *

    Get tax liabilities from aggregate external payrolls for a company. * *

    scope: `external_payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param companyUuid The UUID of the company - * @param externalPayrollId The UUID of the external payroll - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture retrieve(String companyUuid, String externalPayrollId) { - return retrieve(Optional.empty(), companyUuid, externalPayrollId); + public CompletableFuture listTaxLiabilities(String companyUuid) { + return listTaxLiabilities(Optional.empty(), companyUuid); } /** - * Get an external payroll + * Get tax liabilities * - *

    Get an external payroll for a given company. + *

    Get tax liabilities from aggregate external payrolls for a company. * *

    scope: `external_payrolls:read` * @@ -252,30 +251,26 @@ public CompletableFuture retrieve(String companyUu * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyUuid The UUID of the company - * @param externalPayrollId The UUID of the external payroll - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture retrieve( - Optional xGustoAPIVersion, String companyUuid, - String externalPayrollId) { - GetV1ExternalPayrollRequest request = - GetV1ExternalPayrollRequest + public CompletableFuture listTaxLiabilities(Optional xGustoAPIVersion, String companyUuid) { + GetV1TaxLiabilitiesRequest request = + GetV1TaxLiabilitiesRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .companyUuid(companyUuid) - .externalPayrollId(externalPayrollId) .build(); - AsyncRequestOperation operation - = new GetV1ExternalPayroll.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new GetV1TaxLiabilities.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Update an external payroll + * Update tax liabilities * - *

    Update an external payroll with a list of external payroll items. + *

    Update tax liabilities for a company. * *

    scope: `external_payrolls:write` * @@ -283,36 +278,31 @@ public CompletableFuture retrieve( * * @return The async call builder */ - public PutV1ExternalPayrollRequestBuilder update() { - return new PutV1ExternalPayrollRequestBuilder(sdkConfiguration); + public PutV1TaxLiabilitiesRequestBuilder updateTaxLiabilities() { + return new PutV1TaxLiabilitiesRequestBuilder(sdkConfiguration); } /** - * Update an external payroll + * Update tax liabilities * - *

    Update an external payroll with a list of external payroll items. + *

    Update tax liabilities for a company. * *

    scope: `external_payrolls:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param companyUuid The UUID of the company - * @param externalPayrollId The UUID of the external payroll - * @param externalPayrollUpdateRequest The request body for updating an external payroll with employee payroll items. - * @return {@code CompletableFuture} - The async response + * @param taxLiabilitySelectionsRequest The request body for updating tax liability selections. + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture update( - String companyUuid, String externalPayrollId, - ExternalPayrollUpdateRequest externalPayrollUpdateRequest) { - return update( - Optional.empty(), companyUuid, externalPayrollId, - externalPayrollUpdateRequest); + public CompletableFuture updateTaxLiabilities(String companyUuid, TaxLiabilitySelectionsRequest taxLiabilitySelectionsRequest) { + return updateTaxLiabilities(Optional.empty(), companyUuid, taxLiabilitySelectionsRequest); } /** - * Update an external payroll + * Update tax liabilities * - *

    Update an external payroll with a list of external payroll items. + *

    Update tax liabilities for a company. * *

    scope: `external_payrolls:write` * @@ -320,32 +310,34 @@ public CompletableFuture update( * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyUuid The UUID of the company - * @param externalPayrollId The UUID of the external payroll - * @param externalPayrollUpdateRequest The request body for updating an external payroll with employee payroll items. - * @return {@code CompletableFuture} - The async response + * @param taxLiabilitySelectionsRequest The request body for updating tax liability selections. + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture update( - Optional xGustoAPIVersion, String companyUuid, - String externalPayrollId, ExternalPayrollUpdateRequest externalPayrollUpdateRequest) { - PutV1ExternalPayrollRequest request = - PutV1ExternalPayrollRequest + public CompletableFuture updateTaxLiabilities( + Optional xGustoAPIVersion, String companyUuid, + TaxLiabilitySelectionsRequest taxLiabilitySelectionsRequest) { + PutV1TaxLiabilitiesRequest request = + PutV1TaxLiabilitiesRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .companyUuid(companyUuid) - .externalPayrollId(externalPayrollId) - .externalPayrollUpdateRequest(externalPayrollUpdateRequest) + .taxLiabilitySelectionsRequest(taxLiabilitySelectionsRequest) .build(); - AsyncRequestOperation operation - = new PutV1ExternalPayroll.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new PutV1TaxLiabilities.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Delete an external payroll + * Finalize tax liabilities options and convert into processed payrolls * - *

    Delete an external payroll. + *

    Finalizes tax liabilities for a company. All external payrolls edit action will be disabled. + * + *

    ### Asynchronous processing + * This endpoint triggers an asynchronous operation. The external payrolls will be processed in the + * background after finalization. * *

    scope: `external_payrolls:write` * @@ -353,31 +345,38 @@ public CompletableFuture update( * * @return The async call builder */ - public DeleteV1ExternalPayrollRequestBuilder delete() { - return new DeleteV1ExternalPayrollRequestBuilder(sdkConfiguration); + public PutV1TaxLiabilitiesFinishRequestBuilder finalizeTaxLiabilities() { + return new PutV1TaxLiabilitiesFinishRequestBuilder(sdkConfiguration); } /** - * Delete an external payroll + * Finalize tax liabilities options and convert into processed payrolls * - *

    Delete an external payroll. + *

    Finalizes tax liabilities for a company. All external payrolls edit action will be disabled. + * + *

    ### Asynchronous processing + * This endpoint triggers an asynchronous operation. The external payrolls will be processed in the + * background after finalization. * *

    scope: `external_payrolls:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param companyUuid The UUID of the company - * @param externalPayrollId The UUID of the external payroll - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture delete(String companyUuid, String externalPayrollId) { - return delete(Optional.empty(), companyUuid, externalPayrollId); + public CompletableFuture finalizeTaxLiabilities(String companyUuid) { + return finalizeTaxLiabilities(Optional.empty(), companyUuid); } /** - * Delete an external payroll + * Finalize tax liabilities options and convert into processed payrolls * - *

    Delete an external payroll. + *

    Finalizes tax liabilities for a company. All external payrolls edit action will be disabled. + * + *

    ### Asynchronous processing + * This endpoint triggers an asynchronous operation. The external payrolls will be processed in the + * background after finalization. * *

    scope: `external_payrolls:write` * @@ -385,31 +384,26 @@ public CompletableFuture delete(String companyU * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyUuid The UUID of the company - * @param externalPayrollId The UUID of the external payroll - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture delete( - Optional xGustoAPIVersion, String companyUuid, - String externalPayrollId) { - DeleteV1ExternalPayrollRequest request = - DeleteV1ExternalPayrollRequest + public CompletableFuture finalizeTaxLiabilities(Optional xGustoAPIVersion, String companyUuid) { + PutV1TaxLiabilitiesFinishRequest request = + PutV1TaxLiabilitiesFinishRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .companyUuid(companyUuid) - .externalPayrollId(externalPayrollId) .build(); - AsyncRequestOperation operation - = new DeleteV1ExternalPayroll.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new PutV1TaxLiabilitiesFinish.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Get tax suggestions for an external payroll + * Get an external payroll * - *

    Get tax suggestions for an external payroll. Earnings and/or benefits data must be saved prior to - * the calculation in order to retrieve accurate tax calculation. + *

    Get an external payroll for a given company. * *

    scope: `external_payrolls:read` * @@ -417,15 +411,14 @@ public CompletableFuture delete( * * @return The async call builder */ - public GetV1ExternalPayrollCalculateTaxesRequestBuilder calculateTaxes() { - return new GetV1ExternalPayrollCalculateTaxesRequestBuilder(sdkConfiguration); + public GetV1ExternalPayrollRequestBuilder retrieve() { + return new GetV1ExternalPayrollRequestBuilder(sdkConfiguration); } /** - * Get tax suggestions for an external payroll + * Get an external payroll * - *

    Get tax suggestions for an external payroll. Earnings and/or benefits data must be saved prior to - * the calculation in order to retrieve accurate tax calculation. + *

    Get an external payroll for a given company. * *

    scope: `external_payrolls:read` * @@ -433,17 +426,16 @@ public GetV1ExternalPayrollCalculateTaxesRequestBuilder calculateTaxes() { * * @param companyUuid The UUID of the company * @param externalPayrollId The UUID of the external payroll - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture calculateTaxes(String companyUuid, String externalPayrollId) { - return calculateTaxes(Optional.empty(), companyUuid, externalPayrollId); + public CompletableFuture retrieve(String companyUuid, String externalPayrollId) { + return retrieve(Optional.empty(), companyUuid, externalPayrollId); } /** - * Get tax suggestions for an external payroll + * Get an external payroll * - *

    Get tax suggestions for an external payroll. Earnings and/or benefits data must be saved prior to - * the calculation in order to retrieve accurate tax calculation. + *

    Get an external payroll for a given company. * *

    scope: `external_payrolls:read` * @@ -452,87 +444,99 @@ public CompletableFuture calculateTa * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyUuid The UUID of the company * @param externalPayrollId The UUID of the external payroll - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture calculateTaxes( - Optional xGustoAPIVersion, String companyUuid, + public CompletableFuture retrieve( + Optional xGustoAPIVersion, String companyUuid, String externalPayrollId) { - GetV1ExternalPayrollCalculateTaxesRequest request = - GetV1ExternalPayrollCalculateTaxesRequest + GetV1ExternalPayrollRequest request = + GetV1ExternalPayrollRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .companyUuid(companyUuid) .externalPayrollId(externalPayrollId) .build(); - AsyncRequestOperation operation - = new GetV1ExternalPayrollCalculateTaxes.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new GetV1ExternalPayroll.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Get tax liabilities + * Update an external payroll * - *

    Get tax liabilities from aggregate external payrolls for a company. + *

    Update an external payroll with a list of external payroll items. * - *

    scope: `external_payrolls:read` + *

    scope: `external_payrolls:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public GetV1TaxLiabilitiesRequestBuilder listTaxLiabilities() { - return new GetV1TaxLiabilitiesRequestBuilder(sdkConfiguration); + public PutV1ExternalPayrollRequestBuilder update() { + return new PutV1ExternalPayrollRequestBuilder(sdkConfiguration); } /** - * Get tax liabilities + * Update an external payroll * - *

    Get tax liabilities from aggregate external payrolls for a company. + *

    Update an external payroll with a list of external payroll items. * - *

    scope: `external_payrolls:read` + *

    scope: `external_payrolls:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param companyUuid The UUID of the company - * @return {@code CompletableFuture} - The async response + * @param externalPayrollId The UUID of the external payroll + * @param externalPayrollUpdateRequest The request body for updating an external payroll with employee payroll items. + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture listTaxLiabilities(String companyUuid) { - return listTaxLiabilities(Optional.empty(), companyUuid); + public CompletableFuture update( + String companyUuid, String externalPayrollId, + ExternalPayrollUpdateRequest externalPayrollUpdateRequest) { + return update( + Optional.empty(), companyUuid, externalPayrollId, + externalPayrollUpdateRequest); } /** - * Get tax liabilities + * Update an external payroll * - *

    Get tax liabilities from aggregate external payrolls for a company. + *

    Update an external payroll with a list of external payroll items. * - *

    scope: `external_payrolls:read` + *

    scope: `external_payrolls:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyUuid The UUID of the company - * @return {@code CompletableFuture} - The async response + * @param externalPayrollId The UUID of the external payroll + * @param externalPayrollUpdateRequest The request body for updating an external payroll with employee payroll items. + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture listTaxLiabilities(Optional xGustoAPIVersion, String companyUuid) { - GetV1TaxLiabilitiesRequest request = - GetV1TaxLiabilitiesRequest + public CompletableFuture update( + Optional xGustoAPIVersion, String companyUuid, + String externalPayrollId, ExternalPayrollUpdateRequest externalPayrollUpdateRequest) { + PutV1ExternalPayrollRequest request = + PutV1ExternalPayrollRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .companyUuid(companyUuid) + .externalPayrollId(externalPayrollId) + .externalPayrollUpdateRequest(externalPayrollUpdateRequest) .build(); - AsyncRequestOperation operation - = new GetV1TaxLiabilities.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new PutV1ExternalPayroll.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Update tax liabilities + * Delete an external payroll * - *

    Update tax liabilities for a company. + *

    Delete an external payroll. * *

    scope: `external_payrolls:write` * @@ -540,31 +544,31 @@ public CompletableFuture listTaxLiabilities(Optiona * * @return The async call builder */ - public PutV1TaxLiabilitiesRequestBuilder updateTaxLiabilities() { - return new PutV1TaxLiabilitiesRequestBuilder(sdkConfiguration); + public DeleteV1ExternalPayrollRequestBuilder delete() { + return new DeleteV1ExternalPayrollRequestBuilder(sdkConfiguration); } /** - * Update tax liabilities + * Delete an external payroll * - *

    Update tax liabilities for a company. + *

    Delete an external payroll. * *

    scope: `external_payrolls:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param companyUuid The UUID of the company - * @param taxLiabilitySelectionsRequest The request body for updating tax liability selections. - * @return {@code CompletableFuture} - The async response + * @param externalPayrollId The UUID of the external payroll + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture updateTaxLiabilities(String companyUuid, TaxLiabilitySelectionsRequest taxLiabilitySelectionsRequest) { - return updateTaxLiabilities(Optional.empty(), companyUuid, taxLiabilitySelectionsRequest); + public CompletableFuture delete(String companyUuid, String externalPayrollId) { + return delete(Optional.empty(), companyUuid, externalPayrollId); } /** - * Update tax liabilities + * Delete an external payroll * - *

    Update tax liabilities for a company. + *

    Delete an external payroll. * *

    scope: `external_payrolls:write` * @@ -572,91 +576,87 @@ public CompletableFuture updateTaxLiabilities(Strin * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyUuid The UUID of the company - * @param taxLiabilitySelectionsRequest The request body for updating tax liability selections. - * @return {@code CompletableFuture} - The async response + * @param externalPayrollId The UUID of the external payroll + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture updateTaxLiabilities( - Optional xGustoAPIVersion, String companyUuid, - TaxLiabilitySelectionsRequest taxLiabilitySelectionsRequest) { - PutV1TaxLiabilitiesRequest request = - PutV1TaxLiabilitiesRequest + public CompletableFuture delete( + Optional xGustoAPIVersion, String companyUuid, + String externalPayrollId) { + DeleteV1ExternalPayrollRequest request = + DeleteV1ExternalPayrollRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .companyUuid(companyUuid) - .taxLiabilitySelectionsRequest(taxLiabilitySelectionsRequest) + .externalPayrollId(externalPayrollId) .build(); - AsyncRequestOperation operation - = new PutV1TaxLiabilities.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new DeleteV1ExternalPayroll.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Finalize tax liabilities options and convert into processed payrolls - * - *

    Finalizes tax liabilities for a company. All external payrolls edit action will be disabled. + * Get tax suggestions for an external payroll * - *

    ### Asynchronous processing - * This endpoint triggers an asynchronous operation. The external payrolls will be processed in the - * background after finalization. + *

    Get tax suggestions for an external payroll. Earnings and/or benefits data must be saved prior to + * the calculation in order to retrieve accurate tax calculation. * - *

    scope: `external_payrolls:write` + *

    scope: `external_payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public PutV1TaxLiabilitiesFinishRequestBuilder finalizeTaxLiabilities() { - return new PutV1TaxLiabilitiesFinishRequestBuilder(sdkConfiguration); + public GetV1ExternalPayrollCalculateTaxesRequestBuilder calculateTaxes() { + return new GetV1ExternalPayrollCalculateTaxesRequestBuilder(sdkConfiguration); } /** - * Finalize tax liabilities options and convert into processed payrolls - * - *

    Finalizes tax liabilities for a company. All external payrolls edit action will be disabled. + * Get tax suggestions for an external payroll * - *

    ### Asynchronous processing - * This endpoint triggers an asynchronous operation. The external payrolls will be processed in the - * background after finalization. + *

    Get tax suggestions for an external payroll. Earnings and/or benefits data must be saved prior to + * the calculation in order to retrieve accurate tax calculation. * - *

    scope: `external_payrolls:write` + *

    scope: `external_payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param companyUuid The UUID of the company - * @return {@code CompletableFuture} - The async response + * @param externalPayrollId The UUID of the external payroll + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture finalizeTaxLiabilities(String companyUuid) { - return finalizeTaxLiabilities(Optional.empty(), companyUuid); + public CompletableFuture calculateTaxes(String companyUuid, String externalPayrollId) { + return calculateTaxes(Optional.empty(), companyUuid, externalPayrollId); } /** - * Finalize tax liabilities options and convert into processed payrolls - * - *

    Finalizes tax liabilities for a company. All external payrolls edit action will be disabled. + * Get tax suggestions for an external payroll * - *

    ### Asynchronous processing - * This endpoint triggers an asynchronous operation. The external payrolls will be processed in the - * background after finalization. + *

    Get tax suggestions for an external payroll. Earnings and/or benefits data must be saved prior to + * the calculation in order to retrieve accurate tax calculation. * - *

    scope: `external_payrolls:write` + *

    scope: `external_payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyUuid The UUID of the company - * @return {@code CompletableFuture} - The async response + * @param externalPayrollId The UUID of the external payroll + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture finalizeTaxLiabilities(Optional xGustoAPIVersion, String companyUuid) { - PutV1TaxLiabilitiesFinishRequest request = - PutV1TaxLiabilitiesFinishRequest + public CompletableFuture calculateTaxes( + Optional xGustoAPIVersion, String companyUuid, + String externalPayrollId) { + GetV1ExternalPayrollCalculateTaxesRequest request = + GetV1ExternalPayrollCalculateTaxesRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .companyUuid(companyUuid) + .externalPayrollId(externalPayrollId) .build(); - AsyncRequestOperation operation - = new PutV1TaxLiabilitiesFinish.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new GetV1ExternalPayrollCalculateTaxes.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncFederalTaxDetails.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncFederalTaxDetails.java index 3786d970b..24c4b516d 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncFederalTaxDetails.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncFederalTaxDetails.java @@ -72,7 +72,7 @@ public GetV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder get() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture get(String companyId) { - return get(companyId, Optional.empty()); + return get(Optional.empty(), companyId); } /** @@ -85,16 +85,16 @@ public CompletableFuture get(S * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company * @return {@code CompletableFuture} - The async response */ - public CompletableFuture get(String companyId, Optional xGustoAPIVersion) { + public CompletableFuture get(Optional xGustoAPIVersion, String companyId) { GetV1CompaniesCompanyIdFederalTaxDetailsRequest request = GetV1CompaniesCompanyIdFederalTaxDetailsRequest .builder() - .companyId(companyId) .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) .build(); AsyncRequestOperation operation = new GetV1CompaniesCompanyIdFederalTaxDetails.Async(sdkConfiguration, _headers); @@ -158,7 +158,7 @@ public PutV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder update() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture update(String companyId, FederalTaxDetailsUpdate federalTaxDetailsUpdate) { - return update(companyId, Optional.empty(), federalTaxDetailsUpdate); + return update(Optional.empty(), companyId, federalTaxDetailsUpdate); } /** @@ -183,19 +183,19 @@ public CompletableFuture updat * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company * @param federalTaxDetailsUpdate * @return {@code CompletableFuture} - The async response */ public CompletableFuture update( - String companyId, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String companyId, FederalTaxDetailsUpdate federalTaxDetailsUpdate) { PutV1CompaniesCompanyIdFederalTaxDetailsRequest request = PutV1CompaniesCompanyIdFederalTaxDetailsRequest .builder() - .companyId(companyId) .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) .federalTaxDetailsUpdate(federalTaxDetailsUpdate) .build(); AsyncRequestOperation operation diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncGarnishments.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncGarnishments.java index 2c4fda529..77a4a59a9 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncGarnishments.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncGarnishments.java @@ -218,6 +218,61 @@ public CompletableFuture create( } + /** + * Get child support garnishment data + * + *

    Agency data and requirements to be used for creating child support garnishments + * + *

    scope: `garnishments:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public GetV1GarnishmentsChildSupportRequestBuilder getChildSupportData() { + return new GetV1GarnishmentsChildSupportRequestBuilder(sdkConfiguration); + } + + /** + * Get child support garnishment data + * + *

    Agency data and requirements to be used for creating child support garnishments + * + *

    scope: `garnishments:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getChildSupportDataDirect() { + return getChildSupportData(Optional.empty()); + } + + /** + * Get child support garnishment data + * + *

    Agency data and requirements to be used for creating child support garnishments + * + *

    scope: `garnishments:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getChildSupportData(Optional xGustoAPIVersion) { + GetV1GarnishmentsChildSupportRequest request = + GetV1GarnishmentsChildSupportRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .build(); + AsyncRequestOperation operation + = new GetV1GarnishmentsChildSupport.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + /** * Get a garnishment * @@ -368,59 +423,4 @@ public CompletableFuture update( .thenCompose(operation::handleResponse); } - - /** - * Get child support garnishment data - * - *

    Agency data and requirements to be used for creating child support garnishments - * - *

    scope: `garnishments:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The async call builder - */ - public GetV1GarnishmentsChildSupportRequestBuilder getChildSupportData() { - return new GetV1GarnishmentsChildSupportRequestBuilder(sdkConfiguration); - } - - /** - * Get child support garnishment data - * - *

    Agency data and requirements to be used for creating child support garnishments - * - *

    scope: `garnishments:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture getChildSupportDataDirect() { - return getChildSupportData(Optional.empty()); - } - - /** - * Get child support garnishment data - * - *

    Agency data and requirements to be used for creating child support garnishments - * - *

    scope: `garnishments:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture getChildSupportData(Optional xGustoAPIVersion) { - GetV1GarnishmentsChildSupportRequest request = - GetV1GarnishmentsChildSupportRequest - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .build(); - AsyncRequestOperation operation - = new GetV1GarnishmentsChildSupport.Async(sdkConfiguration, _headers); - return operation.doRequest(request) - .thenCompose(operation::handleResponse); - } - } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncGeneratedDocuments.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncGeneratedDocuments.java index 07510535f..1061d0a51 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncGeneratedDocuments.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncGeneratedDocuments.java @@ -5,8 +5,8 @@ import static com.gusto.embedded_api.operations.Operations.AsyncRequestOperation; -import com.gusto.embedded_api.models.components.VersionHeader; import com.gusto.embedded_api.models.operations.DocumentType; +import com.gusto.embedded_api.models.operations.GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion; import com.gusto.embedded_api.models.operations.GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest; import com.gusto.embedded_api.models.operations.async.GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder; import com.gusto.embedded_api.models.operations.async.GetV1GeneratedDocumentsDocumentTypeRequestUuidResponse; @@ -68,7 +68,7 @@ public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder get() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture get(DocumentType documentType, String requestUuid) { - return get(documentType, requestUuid, Optional.empty()); + return get(Optional.empty(), documentType, requestUuid); } /** @@ -81,20 +81,20 @@ public CompletableFuture * *

    If set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param documentType The type of document being generated * @param requestUuid The UUID of the request to generate a document. Generate document endpoints return request_uuids to be used with the GET generated document endpoint. - * @param xGustoAPIVersion * @return {@code CompletableFuture} - The async response */ public CompletableFuture get( - DocumentType documentType, String requestUuid, - Optional xGustoAPIVersion) { + Optional xGustoAPIVersion, DocumentType documentType, + String requestUuid) { GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest request = GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest .builder() + .xGustoAPIVersion(xGustoAPIVersion) .documentType(documentType) .requestUuid(requestUuid) - .xGustoAPIVersion(xGustoAPIVersion) .build(); AsyncRequestOperation operation = new GetV1GeneratedDocumentsDocumentTypeRequestUuid.Async(sdkConfiguration, _headers); diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncGustoEmbedded.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncGustoEmbedded.java index 213b505bd..ee1f32853 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncGustoEmbedded.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncGustoEmbedded.java @@ -11,126 +11,138 @@ public class AsyncGustoEmbedded { private static final Headers _headers = Headers.EMPTY; - private final AsyncIntrospection introspection; + private final AsyncAchTransactions achTransactions; private final AsyncCompanies companies; - private final AsyncInvoices invoices; + private final AsyncCompanyBenefits companyBenefits; + + private final AsyncReports reports; private final AsyncCompanyAttachments companyAttachments; private final AsyncCompanyAttachment companyAttachment; - private final AsyncFederalTaxDetails federalTaxDetails; + private final AsyncBankAccounts bankAccounts; + + private final AsyncCompanyForms companyForms; private final AsyncIndustrySelection industrySelection; - private final AsyncSignatories signatories; + private final AsyncNotifications notifications; - private final AsyncFlows flows; + private final AsyncPaymentConfigs paymentConfigs; - private final AsyncLocations locations; + private final AsyncTaxRequirements taxRequirements; - private final AsyncBankAccounts bankAccounts; + private final AsyncFederalTaxDetails federalTaxDetails; - private final AsyncExternalPayrolls externalPayrolls; + private final AsyncJobsAndCompensations jobsAndCompensations; - private final AsyncPaymentConfigs paymentConfigs; + private final AsyncContractorPaymentMethod contractorPaymentMethod; - private final AsyncPaySchedules paySchedules; + private final AsyncContractorPaymentMethods contractorPaymentMethods; - private final AsyncEmployees employees; + private final AsyncContractorForms contractorForms; - private final AsyncHistoricalEmployees historicalEmployees; + private final AsyncContractors contractors; - private final AsyncDepartments departments; + private final AsyncContractorPaymentGroups contractorPaymentGroups; - private final AsyncEmployeeEmployments employeeEmployments; + private final AsyncContractorPayments contractorPayments; - private final AsyncEmployeeAddresses employeeAddresses; + private final AsyncDepartments departments; - private final AsyncEmployeeTaxSetup employeeTaxSetup; + private final AsyncContractorDocuments contractorDocuments; + + private final AsyncEarningTypes earningTypes; private final AsyncEmployeePaymentMethods employeePaymentMethods; private final AsyncEmployeePaymentMethod employeePaymentMethod; - private final AsyncJobsAndCompensations jobsAndCompensations; + private final AsyncEmployeeBenefits employeeBenefits; - private final AsyncEarningTypes earningTypes; + private final AsyncEmployees employees; - private final AsyncContractors contractors; + private final AsyncEmployeeTaxSetup employeeTaxSetup; - private final AsyncContractorPaymentMethod contractorPaymentMethod; + private final AsyncEmployeeForms employeeForms; - private final AsyncContractorPaymentMethods contractorPaymentMethods; + private final AsyncEmployeeEmployments employeeEmployments; - private final AsyncWebhooks webhooks; + private final AsyncEvents events; - private final AsyncContractorForms contractorForms; + private final AsyncExternalPayrolls externalPayrolls; - private final AsyncContractorDocuments contractorDocuments; + private final AsyncFlows flows; - private final AsyncEmployeeForms employeeForms; + private final AsyncGarnishments garnishments; private final AsyncPayrolls payrolls; - private final AsyncTimeOffPolicies timeOffPolicies; - - private final AsyncContractorPayments contractorPayments; + private final AsyncGeneratedDocuments generatedDocuments; - private final AsyncContractorPaymentGroups contractorPaymentGroups; + private final AsyncHistoricalEmployees historicalEmployees; - private final AsyncCompanyForms companyForms; + private final AsyncHolidayPayPolicies holidayPayPolicies; - private final AsyncGeneratedDocuments generatedDocuments; + private final AsyncEmployeeAddresses employeeAddresses; - private final AsyncReports reports; + private final AsyncI9Verification i9Verification; - private final AsyncCompanyBenefits companyBenefits; + private final AsyncInformationRequests informationRequests; - private final AsyncEmployeeBenefits employeeBenefits; + private final AsyncInvoices invoices; - private final AsyncGarnishments garnishments; + private final AsyncLocations locations; - private final AsyncI9Verification i9Verification; + private final AsyncMemberPortalInvitations memberPortalInvitations; - private final AsyncTaxRequirements taxRequirements; + private final AsyncPaySchedules paySchedules; - private final AsyncHolidayPayPolicies holidayPayPolicies; + private final AsyncPayrollCancellations payrollCancellations; - private final AsyncNotifications notifications; + private final AsyncPayrollDigests payrollDigests; - private final AsyncEvents events; + private final AsyncTimeOffPolicies timeOffPolicies; - private final AsyncInformationRequests informationRequests; + private final AsyncPeopleBatches peopleBatches; private final AsyncRecoveryCases recoveryCases; - private final AsyncAchTransactions achTransactions; + private final AsyncReimbursements reimbursements; - private final AsyncWireInRequests wireInRequests; + private final AsyncReverseWireTransactions reverseWireTransactions; private final AsyncSalaryEstimates salaryEstimates; - private final AsyncReimbursements reimbursements; + private final AsyncSignatories signatories; - private final AsyncPeopleBatches peopleBatches; + private final AsyncTaxPayments taxPayments; private final AsyncTimeOffRequests timeOffRequests; - private final AsyncPayrollDigests payrollDigests; + private final AsyncIntrospection introspection; - public AsyncIntrospection introspection() { - return introspection; + private final AsyncWebhooks webhooks; + + private final AsyncWireInRequests wireInRequests; + + public AsyncAchTransactions achTransactions() { + return achTransactions; } public AsyncCompanies companies() { return companies; } - public AsyncInvoices invoices() { - return invoices; + public AsyncCompanyBenefits companyBenefits() { + return companyBenefits; + } + + public AsyncReports reports() { + return reports; } public AsyncCompanyAttachments companyAttachments() { @@ -141,64 +153,72 @@ public AsyncCompanyAttachment companyAttachment() { return companyAttachment; } - public AsyncFederalTaxDetails federalTaxDetails() { - return federalTaxDetails; + public AsyncBankAccounts bankAccounts() { + return bankAccounts; + } + + public AsyncCompanyForms companyForms() { + return companyForms; } public AsyncIndustrySelection industrySelection() { return industrySelection; } - public AsyncSignatories signatories() { - return signatories; + public AsyncNotifications notifications() { + return notifications; } - public AsyncFlows flows() { - return flows; + public AsyncPaymentConfigs paymentConfigs() { + return paymentConfigs; } - public AsyncLocations locations() { - return locations; + public AsyncTaxRequirements taxRequirements() { + return taxRequirements; } - public AsyncBankAccounts bankAccounts() { - return bankAccounts; + public AsyncFederalTaxDetails federalTaxDetails() { + return federalTaxDetails; } - public AsyncExternalPayrolls externalPayrolls() { - return externalPayrolls; + public AsyncJobsAndCompensations jobsAndCompensations() { + return jobsAndCompensations; } - public AsyncPaymentConfigs paymentConfigs() { - return paymentConfigs; + public AsyncContractorPaymentMethod contractorPaymentMethod() { + return contractorPaymentMethod; } - public AsyncPaySchedules paySchedules() { - return paySchedules; + public AsyncContractorPaymentMethods contractorPaymentMethods() { + return contractorPaymentMethods; } - public AsyncEmployees employees() { - return employees; + public AsyncContractorForms contractorForms() { + return contractorForms; } - public AsyncHistoricalEmployees historicalEmployees() { - return historicalEmployees; + public AsyncContractors contractors() { + return contractors; } - public AsyncDepartments departments() { - return departments; + public AsyncContractorPaymentGroups contractorPaymentGroups() { + return contractorPaymentGroups; } - public AsyncEmployeeEmployments employeeEmployments() { - return employeeEmployments; + public AsyncContractorPayments contractorPayments() { + return contractorPayments; } - public AsyncEmployeeAddresses employeeAddresses() { - return employeeAddresses; + public AsyncDepartments departments() { + return departments; } - public AsyncEmployeeTaxSetup employeeTaxSetup() { - return employeeTaxSetup; + public AsyncContractorDocuments contractorDocuments() { + return contractorDocuments; + } + + public AsyncEarningTypes earningTypes() { + return earningTypes; } public AsyncEmployeePaymentMethods employeePaymentMethods() { @@ -209,136 +229,140 @@ public AsyncEmployeePaymentMethod employeePaymentMethod() { return employeePaymentMethod; } - public AsyncJobsAndCompensations jobsAndCompensations() { - return jobsAndCompensations; + public AsyncEmployeeBenefits employeeBenefits() { + return employeeBenefits; } - public AsyncEarningTypes earningTypes() { - return earningTypes; + public AsyncEmployees employees() { + return employees; } - public AsyncContractors contractors() { - return contractors; + public AsyncEmployeeTaxSetup employeeTaxSetup() { + return employeeTaxSetup; } - public AsyncContractorPaymentMethod contractorPaymentMethod() { - return contractorPaymentMethod; + public AsyncEmployeeForms employeeForms() { + return employeeForms; } - public AsyncContractorPaymentMethods contractorPaymentMethods() { - return contractorPaymentMethods; + public AsyncEmployeeEmployments employeeEmployments() { + return employeeEmployments; } - public AsyncWebhooks webhooks() { - return webhooks; + public AsyncEvents events() { + return events; } - public AsyncContractorForms contractorForms() { - return contractorForms; + public AsyncExternalPayrolls externalPayrolls() { + return externalPayrolls; } - public AsyncContractorDocuments contractorDocuments() { - return contractorDocuments; + public AsyncFlows flows() { + return flows; } - public AsyncEmployeeForms employeeForms() { - return employeeForms; + public AsyncGarnishments garnishments() { + return garnishments; } public AsyncPayrolls payrolls() { return payrolls; } - public AsyncTimeOffPolicies timeOffPolicies() { - return timeOffPolicies; - } - - public AsyncContractorPayments contractorPayments() { - return contractorPayments; + public AsyncGeneratedDocuments generatedDocuments() { + return generatedDocuments; } - public AsyncContractorPaymentGroups contractorPaymentGroups() { - return contractorPaymentGroups; + public AsyncHistoricalEmployees historicalEmployees() { + return historicalEmployees; } - public AsyncCompanyForms companyForms() { - return companyForms; + public AsyncHolidayPayPolicies holidayPayPolicies() { + return holidayPayPolicies; } - public AsyncGeneratedDocuments generatedDocuments() { - return generatedDocuments; + public AsyncEmployeeAddresses employeeAddresses() { + return employeeAddresses; } - public AsyncReports reports() { - return reports; + public AsyncI9Verification i9Verification() { + return i9Verification; } - public AsyncCompanyBenefits companyBenefits() { - return companyBenefits; + public AsyncInformationRequests informationRequests() { + return informationRequests; } - public AsyncEmployeeBenefits employeeBenefits() { - return employeeBenefits; + public AsyncInvoices invoices() { + return invoices; } - public AsyncGarnishments garnishments() { - return garnishments; + public AsyncLocations locations() { + return locations; } - public AsyncI9Verification i9Verification() { - return i9Verification; + public AsyncMemberPortalInvitations memberPortalInvitations() { + return memberPortalInvitations; } - public AsyncTaxRequirements taxRequirements() { - return taxRequirements; + public AsyncPaySchedules paySchedules() { + return paySchedules; } - public AsyncHolidayPayPolicies holidayPayPolicies() { - return holidayPayPolicies; + public AsyncPayrollCancellations payrollCancellations() { + return payrollCancellations; } - public AsyncNotifications notifications() { - return notifications; + public AsyncPayrollDigests payrollDigests() { + return payrollDigests; } - public AsyncEvents events() { - return events; + public AsyncTimeOffPolicies timeOffPolicies() { + return timeOffPolicies; } - public AsyncInformationRequests informationRequests() { - return informationRequests; + public AsyncPeopleBatches peopleBatches() { + return peopleBatches; } public AsyncRecoveryCases recoveryCases() { return recoveryCases; } - public AsyncAchTransactions achTransactions() { - return achTransactions; + public AsyncReimbursements reimbursements() { + return reimbursements; } - public AsyncWireInRequests wireInRequests() { - return wireInRequests; + public AsyncReverseWireTransactions reverseWireTransactions() { + return reverseWireTransactions; } public AsyncSalaryEstimates salaryEstimates() { return salaryEstimates; } - public AsyncReimbursements reimbursements() { - return reimbursements; + public AsyncSignatories signatories() { + return signatories; } - public AsyncPeopleBatches peopleBatches() { - return peopleBatches; + public AsyncTaxPayments taxPayments() { + return taxPayments; } public AsyncTimeOffRequests timeOffRequests() { return timeOffRequests; } - public AsyncPayrollDigests payrollDigests() { - return payrollDigests; + public AsyncIntrospection introspection() { + return introspection; + } + + public AsyncWebhooks webhooks() { + return webhooks; + } + + public AsyncWireInRequests wireInRequests() { + return wireInRequests; } private final SDKConfiguration sdkConfiguration; @@ -347,61 +371,65 @@ public AsyncPayrollDigests payrollDigests() { AsyncGustoEmbedded(GustoEmbedded syncSDK, SDKConfiguration sdkConfiguration) { this.syncSDK = syncSDK; this.sdkConfiguration = sdkConfiguration; - this.introspection = new AsyncIntrospection(syncSDK.introspection(), sdkConfiguration); + this.achTransactions = new AsyncAchTransactions(syncSDK.achTransactions(), sdkConfiguration); this.companies = new AsyncCompanies(syncSDK.companies(), sdkConfiguration); - this.invoices = new AsyncInvoices(syncSDK.invoices(), sdkConfiguration); + this.companyBenefits = new AsyncCompanyBenefits(syncSDK.companyBenefits(), sdkConfiguration); + this.reports = new AsyncReports(syncSDK.reports(), sdkConfiguration); this.companyAttachments = new AsyncCompanyAttachments(syncSDK.companyAttachments(), sdkConfiguration); this.companyAttachment = new AsyncCompanyAttachment(syncSDK.companyAttachment(), sdkConfiguration); - this.federalTaxDetails = new AsyncFederalTaxDetails(syncSDK.federalTaxDetails(), sdkConfiguration); - this.industrySelection = new AsyncIndustrySelection(syncSDK.industrySelection(), sdkConfiguration); - this.signatories = new AsyncSignatories(syncSDK.signatories(), sdkConfiguration); - this.flows = new AsyncFlows(syncSDK.flows(), sdkConfiguration); - this.locations = new AsyncLocations(syncSDK.locations(), sdkConfiguration); this.bankAccounts = new AsyncBankAccounts(syncSDK.bankAccounts(), sdkConfiguration); - this.externalPayrolls = new AsyncExternalPayrolls(syncSDK.externalPayrolls(), sdkConfiguration); + this.companyForms = new AsyncCompanyForms(syncSDK.companyForms(), sdkConfiguration); + this.industrySelection = new AsyncIndustrySelection(syncSDK.industrySelection(), sdkConfiguration); + this.notifications = new AsyncNotifications(syncSDK.notifications(), sdkConfiguration); this.paymentConfigs = new AsyncPaymentConfigs(syncSDK.paymentConfigs(), sdkConfiguration); - this.paySchedules = new AsyncPaySchedules(syncSDK.paySchedules(), sdkConfiguration); - this.employees = new AsyncEmployees(syncSDK.employees(), sdkConfiguration); - this.historicalEmployees = new AsyncHistoricalEmployees(syncSDK.historicalEmployees(), sdkConfiguration); - this.departments = new AsyncDepartments(syncSDK.departments(), sdkConfiguration); - this.employeeEmployments = new AsyncEmployeeEmployments(syncSDK.employeeEmployments(), sdkConfiguration); - this.employeeAddresses = new AsyncEmployeeAddresses(syncSDK.employeeAddresses(), sdkConfiguration); - this.employeeTaxSetup = new AsyncEmployeeTaxSetup(syncSDK.employeeTaxSetup(), sdkConfiguration); - this.employeePaymentMethods = new AsyncEmployeePaymentMethods(syncSDK.employeePaymentMethods(), sdkConfiguration); - this.employeePaymentMethod = new AsyncEmployeePaymentMethod(syncSDK.employeePaymentMethod(), sdkConfiguration); + this.taxRequirements = new AsyncTaxRequirements(syncSDK.taxRequirements(), sdkConfiguration); + this.federalTaxDetails = new AsyncFederalTaxDetails(syncSDK.federalTaxDetails(), sdkConfiguration); this.jobsAndCompensations = new AsyncJobsAndCompensations(syncSDK.jobsAndCompensations(), sdkConfiguration); - this.earningTypes = new AsyncEarningTypes(syncSDK.earningTypes(), sdkConfiguration); - this.contractors = new AsyncContractors(syncSDK.contractors(), sdkConfiguration); this.contractorPaymentMethod = new AsyncContractorPaymentMethod(syncSDK.contractorPaymentMethod(), sdkConfiguration); this.contractorPaymentMethods = new AsyncContractorPaymentMethods(syncSDK.contractorPaymentMethods(), sdkConfiguration); - this.webhooks = new AsyncWebhooks(syncSDK.webhooks(), sdkConfiguration); this.contractorForms = new AsyncContractorForms(syncSDK.contractorForms(), sdkConfiguration); + this.contractors = new AsyncContractors(syncSDK.contractors(), sdkConfiguration); + this.contractorPaymentGroups = new AsyncContractorPaymentGroups(syncSDK.contractorPaymentGroups(), sdkConfiguration); + this.contractorPayments = new AsyncContractorPayments(syncSDK.contractorPayments(), sdkConfiguration); + this.departments = new AsyncDepartments(syncSDK.departments(), sdkConfiguration); this.contractorDocuments = new AsyncContractorDocuments(syncSDK.contractorDocuments(), sdkConfiguration); + this.earningTypes = new AsyncEarningTypes(syncSDK.earningTypes(), sdkConfiguration); + this.employeePaymentMethods = new AsyncEmployeePaymentMethods(syncSDK.employeePaymentMethods(), sdkConfiguration); + this.employeePaymentMethod = new AsyncEmployeePaymentMethod(syncSDK.employeePaymentMethod(), sdkConfiguration); + this.employeeBenefits = new AsyncEmployeeBenefits(syncSDK.employeeBenefits(), sdkConfiguration); + this.employees = new AsyncEmployees(syncSDK.employees(), sdkConfiguration); + this.employeeTaxSetup = new AsyncEmployeeTaxSetup(syncSDK.employeeTaxSetup(), sdkConfiguration); this.employeeForms = new AsyncEmployeeForms(syncSDK.employeeForms(), sdkConfiguration); + this.employeeEmployments = new AsyncEmployeeEmployments(syncSDK.employeeEmployments(), sdkConfiguration); + this.events = new AsyncEvents(syncSDK.events(), sdkConfiguration); + this.externalPayrolls = new AsyncExternalPayrolls(syncSDK.externalPayrolls(), sdkConfiguration); + this.flows = new AsyncFlows(syncSDK.flows(), sdkConfiguration); + this.garnishments = new AsyncGarnishments(syncSDK.garnishments(), sdkConfiguration); this.payrolls = new AsyncPayrolls(syncSDK.payrolls(), sdkConfiguration); - this.timeOffPolicies = new AsyncTimeOffPolicies(syncSDK.timeOffPolicies(), sdkConfiguration); - this.contractorPayments = new AsyncContractorPayments(syncSDK.contractorPayments(), sdkConfiguration); - this.contractorPaymentGroups = new AsyncContractorPaymentGroups(syncSDK.contractorPaymentGroups(), sdkConfiguration); - this.companyForms = new AsyncCompanyForms(syncSDK.companyForms(), sdkConfiguration); this.generatedDocuments = new AsyncGeneratedDocuments(syncSDK.generatedDocuments(), sdkConfiguration); - this.reports = new AsyncReports(syncSDK.reports(), sdkConfiguration); - this.companyBenefits = new AsyncCompanyBenefits(syncSDK.companyBenefits(), sdkConfiguration); - this.employeeBenefits = new AsyncEmployeeBenefits(syncSDK.employeeBenefits(), sdkConfiguration); - this.garnishments = new AsyncGarnishments(syncSDK.garnishments(), sdkConfiguration); - this.i9Verification = new AsyncI9Verification(syncSDK.i9Verification(), sdkConfiguration); - this.taxRequirements = new AsyncTaxRequirements(syncSDK.taxRequirements(), sdkConfiguration); + this.historicalEmployees = new AsyncHistoricalEmployees(syncSDK.historicalEmployees(), sdkConfiguration); this.holidayPayPolicies = new AsyncHolidayPayPolicies(syncSDK.holidayPayPolicies(), sdkConfiguration); - this.notifications = new AsyncNotifications(syncSDK.notifications(), sdkConfiguration); - this.events = new AsyncEvents(syncSDK.events(), sdkConfiguration); + this.employeeAddresses = new AsyncEmployeeAddresses(syncSDK.employeeAddresses(), sdkConfiguration); + this.i9Verification = new AsyncI9Verification(syncSDK.i9Verification(), sdkConfiguration); this.informationRequests = new AsyncInformationRequests(syncSDK.informationRequests(), sdkConfiguration); + this.invoices = new AsyncInvoices(syncSDK.invoices(), sdkConfiguration); + this.locations = new AsyncLocations(syncSDK.locations(), sdkConfiguration); + this.memberPortalInvitations = new AsyncMemberPortalInvitations(syncSDK.memberPortalInvitations(), sdkConfiguration); + this.paySchedules = new AsyncPaySchedules(syncSDK.paySchedules(), sdkConfiguration); + this.payrollCancellations = new AsyncPayrollCancellations(syncSDK.payrollCancellations(), sdkConfiguration); + this.payrollDigests = new AsyncPayrollDigests(syncSDK.payrollDigests(), sdkConfiguration); + this.timeOffPolicies = new AsyncTimeOffPolicies(syncSDK.timeOffPolicies(), sdkConfiguration); + this.peopleBatches = new AsyncPeopleBatches(syncSDK.peopleBatches(), sdkConfiguration); this.recoveryCases = new AsyncRecoveryCases(syncSDK.recoveryCases(), sdkConfiguration); - this.achTransactions = new AsyncAchTransactions(syncSDK.achTransactions(), sdkConfiguration); - this.wireInRequests = new AsyncWireInRequests(syncSDK.wireInRequests(), sdkConfiguration); - this.salaryEstimates = new AsyncSalaryEstimates(syncSDK.salaryEstimates(), sdkConfiguration); this.reimbursements = new AsyncReimbursements(syncSDK.reimbursements(), sdkConfiguration); - this.peopleBatches = new AsyncPeopleBatches(syncSDK.peopleBatches(), sdkConfiguration); + this.reverseWireTransactions = new AsyncReverseWireTransactions(syncSDK.reverseWireTransactions(), sdkConfiguration); + this.salaryEstimates = new AsyncSalaryEstimates(syncSDK.salaryEstimates(), sdkConfiguration); + this.signatories = new AsyncSignatories(syncSDK.signatories(), sdkConfiguration); + this.taxPayments = new AsyncTaxPayments(syncSDK.taxPayments(), sdkConfiguration); this.timeOffRequests = new AsyncTimeOffRequests(syncSDK.timeOffRequests(), sdkConfiguration); - this.payrollDigests = new AsyncPayrollDigests(syncSDK.payrollDigests(), sdkConfiguration); + this.introspection = new AsyncIntrospection(syncSDK.introspection(), sdkConfiguration); + this.webhooks = new AsyncWebhooks(syncSDK.webhooks(), sdkConfiguration); + this.wireInRequests = new AsyncWireInRequests(syncSDK.wireInRequests(), sdkConfiguration); } /** diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncIndustrySelection.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncIndustrySelection.java index a169a03e0..8b7114195 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncIndustrySelection.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncIndustrySelection.java @@ -72,7 +72,7 @@ public GetV1CompanyIndustryRequestBuilder get() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture get(String companyId) { - return get(companyId, Optional.empty()); + return get(Optional.empty(), companyId); } /** @@ -85,16 +85,16 @@ public CompletableFuture get(String companyId) { * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company * @return {@code CompletableFuture} - The async response */ - public CompletableFuture get(String companyId, Optional xGustoAPIVersion) { + public CompletableFuture get(Optional xGustoAPIVersion, String companyId) { GetV1CompanyIndustryRequest request = GetV1CompanyIndustryRequest .builder() - .companyId(companyId) .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) .build(); AsyncRequestOperation operation = new GetV1CompanyIndustry.Async(sdkConfiguration, _headers); @@ -150,7 +150,7 @@ public PutV1CompanyIndustryRequestBuilder update() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture update(String companyId, CompanyIndustrySelectionRequiredBody companyIndustrySelectionRequiredBody) { - return update(companyId, Optional.empty(), companyIndustrySelectionRequiredBody); + return update(Optional.empty(), companyId, companyIndustrySelectionRequiredBody); } /** @@ -171,19 +171,19 @@ public CompletableFuture update(String companyId, * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company * @param companyIndustrySelectionRequiredBody * @return {@code CompletableFuture} - The async response */ public CompletableFuture update( - String companyId, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String companyId, CompanyIndustrySelectionRequiredBody companyIndustrySelectionRequiredBody) { PutV1CompanyIndustryRequest request = PutV1CompanyIndustryRequest .builder() - .companyId(companyId) .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) .companyIndustrySelectionRequiredBody(companyIndustrySelectionRequiredBody) .build(); AsyncRequestOperation operation diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncIntrospection.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncIntrospection.java index 47bb4883f..635522be3 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncIntrospection.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncIntrospection.java @@ -5,11 +5,11 @@ import static com.gusto.embedded_api.operations.Operations.AsyncRequestOperation; +import com.gusto.embedded_api.models.operations.GetV1TokenInfoHeaderXGustoAPIVersion; import com.gusto.embedded_api.models.operations.GetV1TokenInfoRequest; -import com.gusto.embedded_api.models.operations.HeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.OauthAccessTokenHeaderXGustoAPIVersion; import com.gusto.embedded_api.models.operations.OauthAccessTokenRequest; import com.gusto.embedded_api.models.operations.OauthAccessTokenRequestBody; -import com.gusto.embedded_api.models.operations.XGustoAPIVersion; import com.gusto.embedded_api.models.operations.async.GetV1TokenInfoRequestBuilder; import com.gusto.embedded_api.models.operations.async.GetV1TokenInfoResponse; import com.gusto.embedded_api.models.operations.async.OauthAccessTokenRequestBuilder; @@ -41,6 +41,52 @@ public Introspection sync() { } + /** + * Create a System Access Token or Refresh an Access Token + * + *

    Creates a system access token or refreshes an oauth access token + * + * @return The async call builder + */ + public OauthAccessTokenRequestBuilder oauthAccessToken() { + return new OauthAccessTokenRequestBuilder(sdkConfiguration); + } + + /** + * Create a System Access Token or Refresh an Access Token + * + *

    Creates a system access token or refreshes an oauth access token + * + * @param requestBody + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture oauthAccessToken(OauthAccessTokenRequestBody requestBody) { + return oauthAccessToken(Optional.empty(), requestBody); + } + + /** + * Create a System Access Token or Refresh an Access Token + * + *

    Creates a system access token or refreshes an oauth access token + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param requestBody + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture oauthAccessToken(Optional xGustoAPIVersion, OauthAccessTokenRequestBody requestBody) { + OauthAccessTokenRequest request = + OauthAccessTokenRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .requestBody(requestBody) + .build(); + AsyncRequestOperation operation + = new OauthAccessToken.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + /** * Get info about the current access token * @@ -86,7 +132,7 @@ public CompletableFuture getInfoDirect() { * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getInfo(Optional xGustoAPIVersion) { + public CompletableFuture getInfo(Optional xGustoAPIVersion) { GetV1TokenInfoRequest request = GetV1TokenInfoRequest .builder() @@ -98,50 +144,4 @@ public CompletableFuture getInfo(OptionalCreates a system access token or refreshes an oauth access token - * - * @return The async call builder - */ - public OauthAccessTokenRequestBuilder oauthAccessToken() { - return new OauthAccessTokenRequestBuilder(sdkConfiguration); - } - - /** - * Create a System Access Token or Refresh an Access Token - * - *

    Creates a system access token or refreshes an oauth access token - * - * @param requestBody - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture oauthAccessToken(OauthAccessTokenRequestBody requestBody) { - return oauthAccessToken(Optional.empty(), requestBody); - } - - /** - * Create a System Access Token or Refresh an Access Token - * - *

    Creates a system access token or refreshes an oauth access token - * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param requestBody - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture oauthAccessToken(Optional xGustoAPIVersion, OauthAccessTokenRequestBody requestBody) { - OauthAccessTokenRequest request = - OauthAccessTokenRequest - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .requestBody(requestBody) - .build(); - AsyncRequestOperation operation - = new OauthAccessToken.Async(sdkConfiguration, _headers); - return operation.doRequest(request) - .thenCompose(operation::handleResponse); - } - } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncJobsAndCompensations.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncJobsAndCompensations.java index aef818d25..9fe83e985 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncJobsAndCompensations.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncJobsAndCompensations.java @@ -85,680 +85,680 @@ public JobsAndCompensations sync() { /** - * Get jobs for an employee - * - *

    Get all of the jobs that an employee holds. - * Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee - * pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, - * `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope - * is included. This allows you to access employee and job metadata without exposing pay rates. - * - *

    Compensation data in the response requires the `compensations:read` scope. - * - *

    scope: `jobs:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The async call builder - */ - public GetV1EmployeesEmployeeIdJobsRequestBuilder getJobs() { - return new GetV1EmployeesEmployeeIdJobsRequestBuilder(sdkConfiguration); - } - - /** - * Get jobs for an employee - * - *

    Get all of the jobs that an employee holds. - * Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee - * pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, - * `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope - * is included. This allows you to access employee and job metadata without exposing pay rates. - * - *

    Compensation data in the response requires the `compensations:read` scope. - * - *

    scope: `jobs:read` + * Get compensations for a job * - *

    If set, this operation will use Security#companyAccessAuth from the global security. + *

    Compensations contain information on how much is paid out for a job. Jobs may have many + * compensations, but only one that is active. The current compensation is the one with the most recent + * `effective_date`. * - * @param request The request object containing all the parameters for the API call. - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture getJobs(GetV1EmployeesEmployeeIdJobsRequest request) { - AsyncRequestOperation operation - = new GetV1EmployeesEmployeeIdJobs.Async(sdkConfiguration, _headers); - return operation.doRequest(request) - .thenCompose(operation::handleResponse); - } - - - /** - * Create a job + *

    *Note: Currently the API does not support creating multiple compensations per job - creating a + * compensation with the same job_uuid as another will fail with a relevant error.* * - *

    Create a job. + *

    Use `flsa_status` to determine if an employee is eligible for overtime + * By default the API returns only the current compensation - use the `include` parameter to return all + * compensations. * - *

    scope: `jobs:write` + *

    scope: `compensations:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public PostV1EmployeesEmployeeIdJobsRequestBuilder createJob() { - return new PostV1EmployeesEmployeeIdJobsRequestBuilder(sdkConfiguration); + public GetV1JobsJobIdCompensationsRequestBuilder getCompensations() { + return new GetV1JobsJobIdCompensationsRequestBuilder(sdkConfiguration); } /** - * Create a job - * - *

    Create a job. - * - *

    scope: `jobs:write` + * Get compensations for a job * - *

    If set, this operation will use Security#companyAccessAuth from the global security. + *

    Compensations contain information on how much is paid out for a job. Jobs may have many + * compensations, but only one that is active. The current compensation is the one with the most recent + * `effective_date`. * - * @param employeeId The UUID of the employee - * @param jobsCreateRequestBody Request body for creating a job. - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture createJob(String employeeId, JobsCreateRequestBody jobsCreateRequestBody) { - return createJob(employeeId, Optional.empty(), jobsCreateRequestBody); - } - - /** - * Create a job + *

    *Note: Currently the API does not support creating multiple compensations per job - creating a + * compensation with the same job_uuid as another will fail with a relevant error.* * - *

    Create a job. + *

    Use `flsa_status` to determine if an employee is eligible for overtime + * By default the API returns only the current compensation - use the `include` parameter to return all + * compensations. * - *

    scope: `jobs:write` + *

    scope: `compensations:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param employeeId The UUID of the employee - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param jobsCreateRequestBody Request body for creating a job. - * @return {@code CompletableFuture} - The async response + * @param request The request object containing all the parameters for the API call. + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture createJob( - String employeeId, Optional xGustoAPIVersion, - JobsCreateRequestBody jobsCreateRequestBody) { - PostV1EmployeesEmployeeIdJobsRequest request = - PostV1EmployeesEmployeeIdJobsRequest - .builder() - .employeeId(employeeId) - .xGustoAPIVersion(xGustoAPIVersion) - .jobsCreateRequestBody(jobsCreateRequestBody) - .build(); - AsyncRequestOperation operation - = new PostV1EmployeesEmployeeIdJobs.Async(sdkConfiguration, _headers); + public CompletableFuture getCompensations(GetV1JobsJobIdCompensationsRequest request) { + AsyncRequestOperation operation + = new GetV1JobsJobIdCompensations.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Get a job + * Create a compensation * - *

    Get a job. + *

    Compensations contain information on how much is paid out for a job. Jobs may have many + * compensations, but only one that is active. The current compensation is the one with the most recent + * `effective_date`. * - *

    Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee - * pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, - * `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope - * is included. This allows you to access employee and job metadata without exposing pay rates. + *

    ### Prerequisites + * Before calling this endpoint: + * 1. A [job](ref:post-v1-jobs-job_id) must exist for the employee * - *

    Compensation data in the response requires the `compensations:read` scope. + *

    ### Webhooks + * - `employee_job_compensation.created`: Fires when a compensation is successfully created * - *

    scope: `jobs:read` + *

    scope: `compensations:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public GetV1JobsJobIdRequestBuilder getJob() { - return new GetV1JobsJobIdRequestBuilder(sdkConfiguration); + public PostV1CompensationsCompensationIdRequestBuilder createCompensation() { + return new PostV1CompensationsCompensationIdRequestBuilder(sdkConfiguration); } /** - * Get a job + * Create a compensation * - *

    Get a job. + *

    Compensations contain information on how much is paid out for a job. Jobs may have many + * compensations, but only one that is active. The current compensation is the one with the most recent + * `effective_date`. * - *

    Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee - * pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, - * `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope - * is included. This allows you to access employee and job metadata without exposing pay rates. + *

    ### Prerequisites + * Before calling this endpoint: + * 1. A [job](ref:post-v1-jobs-job_id) must exist for the employee * - *

    Compensation data in the response requires the `compensations:read` scope. + *

    ### Webhooks + * - `employee_job_compensation.created`: Fires when a compensation is successfully created * - *

    scope: `jobs:read` + *

    scope: `compensations:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param jobId The UUID of the job - * @return {@code CompletableFuture} - The async response + * @param compensationsRequestBody Request body for creating a compensation. + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getJob(String jobId) { - return getJob(jobId, Optional.empty(), Optional.empty()); + public CompletableFuture createCompensation(String jobId, CompensationsRequestBody compensationsRequestBody) { + return createCompensation(Optional.empty(), jobId, compensationsRequestBody); } /** - * Get a job + * Create a compensation * - *

    Get a job. + *

    Compensations contain information on how much is paid out for a job. Jobs may have many + * compensations, but only one that is active. The current compensation is the one with the most recent + * `effective_date`. * - *

    Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee - * pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, - * `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope - * is included. This allows you to access employee and job metadata without exposing pay rates. + *

    ### Prerequisites + * Before calling this endpoint: + * 1. A [job](ref:post-v1-jobs-job_id) must exist for the employee * - *

    Compensation data in the response requires the `compensations:read` scope. + *

    ### Webhooks + * - `employee_job_compensation.created`: Fires when a compensation is successfully created * - *

    scope: `jobs:read` + *

    scope: `compensations:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param jobId The UUID of the job - * @param include Available options: - * - all_compensations: Include all effective dated compensations for each job instead of only the current compensation - * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @return {@code CompletableFuture} - The async response + * @param jobId The UUID of the job + * @param compensationsRequestBody Request body for creating a compensation. + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getJob( - String jobId, Optional include, - Optional xGustoAPIVersion) { - GetV1JobsJobIdRequest request = - GetV1JobsJobIdRequest + public CompletableFuture createCompensation( + Optional xGustoAPIVersion, String jobId, + CompensationsRequestBody compensationsRequestBody) { + PostV1CompensationsCompensationIdRequest request = + PostV1CompensationsCompensationIdRequest .builder() - .jobId(jobId) - .include(include) .xGustoAPIVersion(xGustoAPIVersion) + .jobId(jobId) + .compensationsRequestBody(compensationsRequestBody) .build(); - AsyncRequestOperation operation - = new GetV1JobsJobId.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new PostV1CompensationsCompensationId.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Update a job + * Get a compensation * - *

    Update a job. + *

    Compensations contain information on how much is paid out for a job. Jobs may have many + * compensations, but only one that is active. The current compensation is the one with the most recent + * `effective_date`. * - *

    scope: `jobs:write` + *

    scope: `compensations:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public PutV1JobsJobIdRequestBuilder update() { - return new PutV1JobsJobIdRequestBuilder(sdkConfiguration); + public GetV1CompensationsCompensationIdRequestBuilder getCompensation() { + return new GetV1CompensationsCompensationIdRequestBuilder(sdkConfiguration); } /** - * Update a job + * Get a compensation * - *

    Update a job. + *

    Compensations contain information on how much is paid out for a job. Jobs may have many + * compensations, but only one that is active. The current compensation is the one with the most recent + * `effective_date`. * - *

    scope: `jobs:write` + *

    scope: `compensations:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param jobId The UUID of the job - * @param jobsUpdateRequestBody Request body for updating a job. - * @return {@code CompletableFuture} - The async response + * @param compensationId The UUID of the compensation + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture update(String jobId, JobsUpdateRequestBody jobsUpdateRequestBody) { - return update(jobId, Optional.empty(), jobsUpdateRequestBody); + public CompletableFuture getCompensation(String compensationId) { + return getCompensation(Optional.empty(), compensationId); } /** - * Update a job + * Get a compensation * - *

    Update a job. + *

    Compensations contain information on how much is paid out for a job. Jobs may have many + * compensations, but only one that is active. The current compensation is the one with the most recent + * `effective_date`. * - *

    scope: `jobs:write` + *

    scope: `compensations:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param jobId The UUID of the job * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param jobsUpdateRequestBody Request body for updating a job. - * @return {@code CompletableFuture} - The async response + * @param compensationId The UUID of the compensation + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture update( - String jobId, Optional xGustoAPIVersion, - JobsUpdateRequestBody jobsUpdateRequestBody) { - PutV1JobsJobIdRequest request = - PutV1JobsJobIdRequest + public CompletableFuture getCompensation(Optional xGustoAPIVersion, String compensationId) { + GetV1CompensationsCompensationIdRequest request = + GetV1CompensationsCompensationIdRequest .builder() - .jobId(jobId) .xGustoAPIVersion(xGustoAPIVersion) - .jobsUpdateRequestBody(jobsUpdateRequestBody) + .compensationId(compensationId) .build(); - AsyncRequestOperation operation - = new PutV1JobsJobId.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new GetV1CompensationsCompensationId.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Delete an individual job + * Update a compensation * - *

    Deletes a specific job that an employee holds. + *

    Compensations contain information on how much is paid out for a job. Jobs may have many + * compensations, but only one that is active. The current compensation is the one with the most recent + * `effective_date`. * - *

    scope: `jobs:write` + *

    ### Webhooks + * - `employee_job_compensation.updated`: Fires when a compensation is successfully updated + * + *

    scope: `compensations:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public DeleteV1JobsJobIdRequestBuilder delete() { - return new DeleteV1JobsJobIdRequestBuilder(sdkConfiguration); + public PutV1CompensationsCompensationIdRequestBuilder updateCompensation() { + return new PutV1CompensationsCompensationIdRequestBuilder(sdkConfiguration); } /** - * Delete an individual job + * Update a compensation * - *

    Deletes a specific job that an employee holds. + *

    Compensations contain information on how much is paid out for a job. Jobs may have many + * compensations, but only one that is active. The current compensation is the one with the most recent + * `effective_date`. * - *

    scope: `jobs:write` + *

    ### Webhooks + * - `employee_job_compensation.updated`: Fires when a compensation is successfully updated + * + *

    scope: `compensations:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param jobId The UUID of the job - * @return {@code CompletableFuture} - The async response + * @param compensationId The UUID of the compensation + * @param compensationsUpdateRequestBody Request body for updating a compensation. + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture delete(String jobId) { - return delete(jobId, Optional.empty()); + public CompletableFuture updateCompensation(String compensationId, CompensationsUpdateRequestBody compensationsUpdateRequestBody) { + return updateCompensation(Optional.empty(), compensationId, compensationsUpdateRequestBody); } /** - * Delete an individual job + * Update a compensation * - *

    Deletes a specific job that an employee holds. + *

    Compensations contain information on how much is paid out for a job. Jobs may have many + * compensations, but only one that is active. The current compensation is the one with the most recent + * `effective_date`. * - *

    scope: `jobs:write` + *

    ### Webhooks + * - `employee_job_compensation.updated`: Fires when a compensation is successfully updated + * + *

    scope: `compensations:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param jobId The UUID of the job * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @return {@code CompletableFuture} - The async response + * @param compensationId The UUID of the compensation + * @param compensationsUpdateRequestBody Request body for updating a compensation. + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture delete(String jobId, Optional xGustoAPIVersion) { - DeleteV1JobsJobIdRequest request = - DeleteV1JobsJobIdRequest + public CompletableFuture updateCompensation( + Optional xGustoAPIVersion, String compensationId, + CompensationsUpdateRequestBody compensationsUpdateRequestBody) { + PutV1CompensationsCompensationIdRequest request = + PutV1CompensationsCompensationIdRequest .builder() - .jobId(jobId) .xGustoAPIVersion(xGustoAPIVersion) + .compensationId(compensationId) + .compensationsUpdateRequestBody(compensationsUpdateRequestBody) .build(); - AsyncRequestOperation operation - = new DeleteV1JobsJobId.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new PutV1CompensationsCompensationId.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Get compensations for a job + * Delete a compensation * *

    Compensations contain information on how much is paid out for a job. Jobs may have many * compensations, but only one that is active. The current compensation is the one with the most recent * `effective_date`. * - *

    *Note: Currently the API does not support creating multiple compensations per job - creating a - * compensation with the same job_uuid as another will fail with a relevant error.* + *

    This endpoint deletes a compensation for a job that hasn't been processed on payroll. * - *

    Use `flsa_status` to determine if an employee is eligible for overtime - * By default the API returns only the current compensation - use the `include` parameter to return all - * compensations. + *

    ### Webhooks + * - `employee_job_compensation.destroyed`: Fires when a compensation is successfully deleted * - *

    scope: `compensations:read` + *

    scope: `compensations:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public GetV1JobsJobIdCompensationsRequestBuilder getCompensations() { - return new GetV1JobsJobIdCompensationsRequestBuilder(sdkConfiguration); + public DeleteV1CompensationsCompensationIdRequestBuilder deleteCompensation() { + return new DeleteV1CompensationsCompensationIdRequestBuilder(sdkConfiguration); } /** - * Get compensations for a job + * Delete a compensation * *

    Compensations contain information on how much is paid out for a job. Jobs may have many * compensations, but only one that is active. The current compensation is the one with the most recent * `effective_date`. * - *

    *Note: Currently the API does not support creating multiple compensations per job - creating a - * compensation with the same job_uuid as another will fail with a relevant error.* + *

    This endpoint deletes a compensation for a job that hasn't been processed on payroll. * - *

    Use `flsa_status` to determine if an employee is eligible for overtime - * By default the API returns only the current compensation - use the `include` parameter to return all - * compensations. + *

    ### Webhooks + * - `employee_job_compensation.destroyed`: Fires when a compensation is successfully deleted * - *

    scope: `compensations:read` + *

    scope: `compensations:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param request The request object containing all the parameters for the API call. - * @return {@code CompletableFuture} - The async response + * @param compensationId The UUID of the compensation + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getCompensations(GetV1JobsJobIdCompensationsRequest request) { - AsyncRequestOperation operation - = new GetV1JobsJobIdCompensations.Async(sdkConfiguration, _headers); - return operation.doRequest(request) - .thenCompose(operation::handleResponse); + public CompletableFuture deleteCompensation(String compensationId) { + return deleteCompensation(Optional.empty(), compensationId); } - /** - * Create a compensation + * Delete a compensation * *

    Compensations contain information on how much is paid out for a job. Jobs may have many * compensations, but only one that is active. The current compensation is the one with the most recent * `effective_date`. * - *

    ### Prerequisites - * Before calling this endpoint: - * 1. A [job](ref:post-v1-jobs-job_id) must exist for the employee + *

    This endpoint deletes a compensation for a job that hasn't been processed on payroll. * *

    ### Webhooks - * - `employee_job_compensation.created`: Fires when a compensation is successfully created + * - `employee_job_compensation.destroyed`: Fires when a compensation is successfully deleted * *

    scope: `compensations:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param compensationId The UUID of the compensation + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture deleteCompensation(Optional xGustoAPIVersion, String compensationId) { + DeleteV1CompensationsCompensationIdRequest request = + DeleteV1CompensationsCompensationIdRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .compensationId(compensationId) + .build(); + AsyncRequestOperation operation + = new DeleteV1CompensationsCompensationId.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Get a job + * + *

    Get a job. + * + *

    Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee + * pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, + * `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope + * is included. This allows you to access employee and job metadata without exposing pay rates. + * + *

    Compensation data in the response requires the `compensations:read` scope. + * + *

    scope: `jobs:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * * @return The async call builder */ - public PostV1CompensationsCompensationIdRequestBuilder createCompensation() { - return new PostV1CompensationsCompensationIdRequestBuilder(sdkConfiguration); + public GetV1JobsJobIdRequestBuilder getJob() { + return new GetV1JobsJobIdRequestBuilder(sdkConfiguration); } /** - * Create a compensation + * Get a job * - *

    Compensations contain information on how much is paid out for a job. Jobs may have many - * compensations, but only one that is active. The current compensation is the one with the most recent - * `effective_date`. + *

    Get a job. * - *

    ### Prerequisites - * Before calling this endpoint: - * 1. A [job](ref:post-v1-jobs-job_id) must exist for the employee + *

    Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee + * pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, + * `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope + * is included. This allows you to access employee and job metadata without exposing pay rates. * - *

    ### Webhooks - * - `employee_job_compensation.created`: Fires when a compensation is successfully created + *

    Compensation data in the response requires the `compensations:read` scope. * - *

    scope: `compensations:write` + *

    scope: `jobs:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param jobId The UUID of the job - * @param compensationsRequestBody Request body for creating a compensation. - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture createCompensation(String jobId, CompensationsRequestBody compensationsRequestBody) { - return createCompensation(Optional.empty(), jobId, compensationsRequestBody); + public CompletableFuture getJob(String jobId) { + return getJob(Optional.empty(), jobId, Optional.empty()); } /** - * Create a compensation - * - *

    Compensations contain information on how much is paid out for a job. Jobs may have many - * compensations, but only one that is active. The current compensation is the one with the most recent - * `effective_date`. + * Get a job * - *

    ### Prerequisites - * Before calling this endpoint: - * 1. A [job](ref:post-v1-jobs-job_id) must exist for the employee + *

    Get a job. * - *

    ### Webhooks - * - `employee_job_compensation.created`: Fires when a compensation is successfully created + *

    Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee + * pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, + * `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope + * is included. This allows you to access employee and job metadata without exposing pay rates. * - *

    scope: `compensations:write` + *

    Compensation data in the response requires the `compensations:read` scope. + * + *

    scope: `jobs:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param jobId The UUID of the job - * @param compensationsRequestBody Request body for creating a compensation. - * @return {@code CompletableFuture} - The async response + * @param include Available options: + * - all_compensations: Include all effective dated compensations for each job instead of only the current compensation + * + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture createCompensation( - Optional xGustoAPIVersion, String jobId, - CompensationsRequestBody compensationsRequestBody) { - PostV1CompensationsCompensationIdRequest request = - PostV1CompensationsCompensationIdRequest + public CompletableFuture getJob( + Optional xGustoAPIVersion, String jobId, + Optional include) { + GetV1JobsJobIdRequest request = + GetV1JobsJobIdRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .jobId(jobId) - .compensationsRequestBody(compensationsRequestBody) + .include(include) .build(); - AsyncRequestOperation operation - = new PostV1CompensationsCompensationId.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new GetV1JobsJobId.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Get a compensation + * Update a job * - *

    Compensations contain information on how much is paid out for a job. Jobs may have many - * compensations, but only one that is active. The current compensation is the one with the most recent - * `effective_date`. + *

    Update a job. * - *

    scope: `compensations:read` + *

    scope: `jobs:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public GetV1CompensationsCompensationIdRequestBuilder getCompensation() { - return new GetV1CompensationsCompensationIdRequestBuilder(sdkConfiguration); + public PutV1JobsJobIdRequestBuilder update() { + return new PutV1JobsJobIdRequestBuilder(sdkConfiguration); } /** - * Get a compensation + * Update a job * - *

    Compensations contain information on how much is paid out for a job. Jobs may have many - * compensations, but only one that is active. The current compensation is the one with the most recent - * `effective_date`. + *

    Update a job. * - *

    scope: `compensations:read` + *

    scope: `jobs:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param compensationId The UUID of the compensation - * @return {@code CompletableFuture} - The async response + * @param jobId The UUID of the job + * @param jobsUpdateRequestBody Request body for updating a job. + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getCompensation(String compensationId) { - return getCompensation(Optional.empty(), compensationId); + public CompletableFuture update(String jobId, JobsUpdateRequestBody jobsUpdateRequestBody) { + return update(Optional.empty(), jobId, jobsUpdateRequestBody); } /** - * Get a compensation + * Update a job * - *

    Compensations contain information on how much is paid out for a job. Jobs may have many - * compensations, but only one that is active. The current compensation is the one with the most recent - * `effective_date`. + *

    Update a job. * - *

    scope: `compensations:read` + *

    scope: `jobs:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param compensationId The UUID of the compensation - * @return {@code CompletableFuture} - The async response + * @param jobId The UUID of the job + * @param jobsUpdateRequestBody Request body for updating a job. + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getCompensation(Optional xGustoAPIVersion, String compensationId) { - GetV1CompensationsCompensationIdRequest request = - GetV1CompensationsCompensationIdRequest + public CompletableFuture update( + Optional xGustoAPIVersion, String jobId, + JobsUpdateRequestBody jobsUpdateRequestBody) { + PutV1JobsJobIdRequest request = + PutV1JobsJobIdRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .compensationId(compensationId) + .jobId(jobId) + .jobsUpdateRequestBody(jobsUpdateRequestBody) .build(); - AsyncRequestOperation operation - = new GetV1CompensationsCompensationId.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new PutV1JobsJobId.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Update a compensation - * - *

    Compensations contain information on how much is paid out for a job. Jobs may have many - * compensations, but only one that is active. The current compensation is the one with the most recent - * `effective_date`. + * Delete an individual job * - *

    ### Webhooks - * - `employee_job_compensation.updated`: Fires when a compensation is successfully updated + *

    Deletes a specific job that an employee holds. * - *

    scope: `compensations:write` + *

    scope: `jobs:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public PutV1CompensationsCompensationIdRequestBuilder updateCompensation() { - return new PutV1CompensationsCompensationIdRequestBuilder(sdkConfiguration); + public DeleteV1JobsJobIdRequestBuilder delete() { + return new DeleteV1JobsJobIdRequestBuilder(sdkConfiguration); } /** - * Update a compensation - * - *

    Compensations contain information on how much is paid out for a job. Jobs may have many - * compensations, but only one that is active. The current compensation is the one with the most recent - * `effective_date`. + * Delete an individual job * - *

    ### Webhooks - * - `employee_job_compensation.updated`: Fires when a compensation is successfully updated + *

    Deletes a specific job that an employee holds. * - *

    scope: `compensations:write` + *

    scope: `jobs:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param compensationId The UUID of the compensation - * @param compensationsUpdateRequestBody Request body for updating a compensation. - * @return {@code CompletableFuture} - The async response + * @param jobId The UUID of the job + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture updateCompensation(String compensationId, CompensationsUpdateRequestBody compensationsUpdateRequestBody) { - return updateCompensation(Optional.empty(), compensationId, compensationsUpdateRequestBody); + public CompletableFuture delete(String jobId) { + return delete(Optional.empty(), jobId); } /** - * Update a compensation - * - *

    Compensations contain information on how much is paid out for a job. Jobs may have many - * compensations, but only one that is active. The current compensation is the one with the most recent - * `effective_date`. + * Delete an individual job * - *

    ### Webhooks - * - `employee_job_compensation.updated`: Fires when a compensation is successfully updated + *

    Deletes a specific job that an employee holds. * - *

    scope: `compensations:write` + *

    scope: `jobs:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param compensationId The UUID of the compensation - * @param compensationsUpdateRequestBody Request body for updating a compensation. - * @return {@code CompletableFuture} - The async response + * @param jobId The UUID of the job + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture updateCompensation( - Optional xGustoAPIVersion, String compensationId, - CompensationsUpdateRequestBody compensationsUpdateRequestBody) { - PutV1CompensationsCompensationIdRequest request = - PutV1CompensationsCompensationIdRequest + public CompletableFuture delete(Optional xGustoAPIVersion, String jobId) { + DeleteV1JobsJobIdRequest request = + DeleteV1JobsJobIdRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .compensationId(compensationId) - .compensationsUpdateRequestBody(compensationsUpdateRequestBody) + .jobId(jobId) .build(); - AsyncRequestOperation operation - = new PutV1CompensationsCompensationId.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new DeleteV1JobsJobId.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Delete a compensation - * - *

    Compensations contain information on how much is paid out for a job. Jobs may have many - * compensations, but only one that is active. The current compensation is the one with the most recent - * `effective_date`. + * Get jobs for an employee * - *

    This endpoint deletes a compensation for a job that hasn't been processed on payroll. + *

    Get all of the jobs that an employee holds. + * Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee + * pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, + * `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope + * is included. This allows you to access employee and job metadata without exposing pay rates. * - *

    ### Webhooks - * - `employee_job_compensation.destroyed`: Fires when a compensation is successfully deleted + *

    Compensation data in the response requires the `compensations:read` scope. * - *

    scope: `compensations:write` + *

    scope: `jobs:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public DeleteV1CompensationsCompensationIdRequestBuilder deleteCompensation() { - return new DeleteV1CompensationsCompensationIdRequestBuilder(sdkConfiguration); + public GetV1EmployeesEmployeeIdJobsRequestBuilder getJobs() { + return new GetV1EmployeesEmployeeIdJobsRequestBuilder(sdkConfiguration); } /** - * Delete a compensation + * Get jobs for an employee * - *

    Compensations contain information on how much is paid out for a job. Jobs may have many - * compensations, but only one that is active. The current compensation is the one with the most recent - * `effective_date`. + *

    Get all of the jobs that an employee holds. + * Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee + * pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, + * `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope + * is included. This allows you to access employee and job metadata without exposing pay rates. * - *

    This endpoint deletes a compensation for a job that hasn't been processed on payroll. + *

    Compensation data in the response requires the `compensations:read` scope. * - *

    ### Webhooks - * - `employee_job_compensation.destroyed`: Fires when a compensation is successfully deleted + *

    scope: `jobs:read` * - *

    scope: `compensations:write` + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param request The request object containing all the parameters for the API call. + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getJobs(GetV1EmployeesEmployeeIdJobsRequest request) { + AsyncRequestOperation operation + = new GetV1EmployeesEmployeeIdJobs.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Create a job + * + *

    Create a job. + * + *

    scope: `jobs:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param compensationId The UUID of the compensation - * @return {@code CompletableFuture} - The async response + * @return The async call builder */ - public CompletableFuture deleteCompensation(String compensationId) { - return deleteCompensation(Optional.empty(), compensationId); + public PostV1EmployeesEmployeeIdJobsRequestBuilder createJob() { + return new PostV1EmployeesEmployeeIdJobsRequestBuilder(sdkConfiguration); } /** - * Delete a compensation + * Create a job * - *

    Compensations contain information on how much is paid out for a job. Jobs may have many - * compensations, but only one that is active. The current compensation is the one with the most recent - * `effective_date`. + *

    Create a job. * - *

    This endpoint deletes a compensation for a job that hasn't been processed on payroll. + *

    scope: `jobs:write` * - *

    ### Webhooks - * - `employee_job_compensation.destroyed`: Fires when a compensation is successfully deleted + *

    If set, this operation will use Security#companyAccessAuth from the global security. * - *

    scope: `compensations:write` + * @param employeeId The UUID of the employee + * @param jobsCreateRequestBody Request body for creating a job. + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture createJob(String employeeId, JobsCreateRequestBody jobsCreateRequestBody) { + return createJob(Optional.empty(), employeeId, jobsCreateRequestBody); + } + + /** + * Create a job + * + *

    Create a job. + * + *

    scope: `jobs:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param compensationId The UUID of the compensation - * @return {@code CompletableFuture} - The async response + * @param employeeId The UUID of the employee + * @param jobsCreateRequestBody Request body for creating a job. + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture deleteCompensation(Optional xGustoAPIVersion, String compensationId) { - DeleteV1CompensationsCompensationIdRequest request = - DeleteV1CompensationsCompensationIdRequest + public CompletableFuture createJob( + Optional xGustoAPIVersion, String employeeId, + JobsCreateRequestBody jobsCreateRequestBody) { + PostV1EmployeesEmployeeIdJobsRequest request = + PostV1EmployeesEmployeeIdJobsRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .compensationId(compensationId) + .employeeId(employeeId) + .jobsCreateRequestBody(jobsCreateRequestBody) .build(); - AsyncRequestOperation operation - = new DeleteV1CompensationsCompensationId.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new PostV1EmployeesEmployeeIdJobs.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncLocations.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncLocations.java index a077befe3..074bc0198 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncLocations.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncLocations.java @@ -60,14 +60,9 @@ public Locations sync() { /** - * Get all company locations - * - *

    Retrieves all company locations (addresses) associated with a company: mailing addresses, filing - * addresses, or work locations. A single address may serve multiple, or all, purposes. + * Get minimum wages for a location * - *

    Since all company locations are subsets of locations, use the Locations endpoints to - * [get](ref:get-v1-locations-location_id) or [update](ref:put-v1-locations-location_id) an individual - * record. + *

    Get minimum wages for a location * *

    scope: `companies:read` * @@ -75,147 +70,52 @@ public Locations sync() { * * @return The async call builder */ - public GetV1CompaniesCompanyIdLocationsRequestBuilder get() { - return new GetV1CompaniesCompanyIdLocationsRequestBuilder(sdkConfiguration); + public GetV1LocationsLocationUuidMinimumWagesRequestBuilder getMinimumWages() { + return new GetV1LocationsLocationUuidMinimumWagesRequestBuilder(sdkConfiguration); } /** - * Get all company locations - * - *

    Retrieves all company locations (addresses) associated with a company: mailing addresses, filing - * addresses, or work locations. A single address may serve multiple, or all, purposes. + * Get minimum wages for a location * - *

    Since all company locations are subsets of locations, use the Locations endpoints to - * [get](ref:get-v1-locations-location_id) or [update](ref:put-v1-locations-location_id) an individual - * record. + *

    Get minimum wages for a location * *

    scope: `companies:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company - * @return {@code CompletableFuture} - The async response + * @param locationUuid The UUID of the location + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture get(String companyId) { - return get( - Optional.empty(), companyId, Optional.empty(), - Optional.empty()); + public CompletableFuture getMinimumWages(String locationUuid) { + return getMinimumWages(Optional.empty(), locationUuid, Optional.empty()); } /** - * Get all company locations - * - *

    Retrieves all company locations (addresses) associated with a company: mailing addresses, filing - * addresses, or work locations. A single address may serve multiple, or all, purposes. + * Get minimum wages for a location * - *

    Since all company locations are subsets of locations, use the Locations endpoints to - * [get](ref:get-v1-locations-location_id) or [update](ref:put-v1-locations-location_id) an individual - * record. + *

    Get minimum wages for a location * *

    scope: `companies:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyId The UUID of the company - * @param page The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - * @param per Number of objects per page. For majority of endpoints will default to 25 - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture get( - Optional xGustoAPIVersion, String companyId, - Optional page, Optional per) { - GetV1CompaniesCompanyIdLocationsRequest request = - GetV1CompaniesCompanyIdLocationsRequest - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .companyId(companyId) - .page(page) - .per(per) - .build(); - AsyncRequestOperation operation - = new GetV1CompaniesCompanyIdLocations.Async(sdkConfiguration, _headers); - return operation.doRequest(request) - .thenCompose(operation::handleResponse); - } - - - /** - * Create a company location - * - *

    Create a company location, which represents any address associated with a company: mailing - * addresses, filing addresses, or work locations. A single address may serve multiple, or all, - * purposes. - * - *

    Since all company locations are subsets of locations, use the Locations endpoints to - * [get](ref:get-v1-locations-location_id) or [update](ref:put-v1-locations-location_id) an individual - * record. - * - *

    scope: `companies:write` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The async call builder - */ - public PostV1CompaniesCompanyIdLocationsRequestBuilder create() { - return new PostV1CompaniesCompanyIdLocationsRequestBuilder(sdkConfiguration); - } - - /** - * Create a company location - * - *

    Create a company location, which represents any address associated with a company: mailing - * addresses, filing addresses, or work locations. A single address may serve multiple, or all, - * purposes. - * - *

    Since all company locations are subsets of locations, use the Locations endpoints to - * [get](ref:get-v1-locations-location_id) or [update](ref:put-v1-locations-location_id) an individual - * record. - * - *

    scope: `companies:write` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param companyId The UUID of the company - * @param companyLocationRequest Request body for creating a company location (company address). - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture create(String companyId, CompanyLocationRequest companyLocationRequest) { - return create(Optional.empty(), companyId, companyLocationRequest); - } - - /** - * Create a company location - * - *

    Create a company location, which represents any address associated with a company: mailing - * addresses, filing addresses, or work locations. A single address may serve multiple, or all, - * purposes. - * - *

    Since all company locations are subsets of locations, use the Locations endpoints to - * [get](ref:get-v1-locations-location_id) or [update](ref:put-v1-locations-location_id) an individual - * record. - * - *

    scope: `companies:write` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyId The UUID of the company - * @param companyLocationRequest Request body for creating a company location (company address). - * @return {@code CompletableFuture} - The async response + * @param locationUuid The UUID of the location + * @param effectiveDate + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture create( - Optional xGustoAPIVersion, String companyId, - CompanyLocationRequest companyLocationRequest) { - PostV1CompaniesCompanyIdLocationsRequest request = - PostV1CompaniesCompanyIdLocationsRequest + public CompletableFuture getMinimumWages( + Optional xGustoAPIVersion, String locationUuid, + Optional effectiveDate) { + GetV1LocationsLocationUuidMinimumWagesRequest request = + GetV1LocationsLocationUuidMinimumWagesRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .companyId(companyId) - .companyLocationRequest(companyLocationRequest) + .locationUuid(locationUuid) + .effectiveDate(effectiveDate) .build(); - AsyncRequestOperation operation - = new PostV1CompaniesCompanyIdLocations.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new GetV1LocationsLocationUuidMinimumWages.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } @@ -343,9 +243,14 @@ public CompletableFuture update( /** - * Get minimum wages for a location + * Get all company locations * - *

    Get minimum wages for a location + *

    Retrieves all company locations (addresses) associated with a company: mailing addresses, filing + * addresses, or work locations. A single address may serve multiple, or all, purposes. + * + *

    Since all company locations are subsets of locations, use the Locations endpoints to + * [get](ref:get-v1-locations-location_id) or [update](ref:put-v1-locations-location_id) an individual + * record. * *

    scope: `companies:read` * @@ -353,52 +258,147 @@ public CompletableFuture update( * * @return The async call builder */ - public GetV1LocationsLocationUuidMinimumWagesRequestBuilder getMinimumWages() { - return new GetV1LocationsLocationUuidMinimumWagesRequestBuilder(sdkConfiguration); + public GetV1CompaniesCompanyIdLocationsRequestBuilder get() { + return new GetV1CompaniesCompanyIdLocationsRequestBuilder(sdkConfiguration); } /** - * Get minimum wages for a location + * Get all company locations * - *

    Get minimum wages for a location + *

    Retrieves all company locations (addresses) associated with a company: mailing addresses, filing + * addresses, or work locations. A single address may serve multiple, or all, purposes. + * + *

    Since all company locations are subsets of locations, use the Locations endpoints to + * [get](ref:get-v1-locations-location_id) or [update](ref:put-v1-locations-location_id) an individual + * record. * *

    scope: `companies:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param locationUuid The UUID of the location - * @return {@code CompletableFuture} - The async response + * @param companyId The UUID of the company + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getMinimumWages(String locationUuid) { - return getMinimumWages(locationUuid, Optional.empty(), Optional.empty()); + public CompletableFuture get(String companyId) { + return get( + Optional.empty(), companyId, Optional.empty(), + Optional.empty()); } /** - * Get minimum wages for a location + * Get all company locations * - *

    Get minimum wages for a location + *

    Retrieves all company locations (addresses) associated with a company: mailing addresses, filing + * addresses, or work locations. A single address may serve multiple, or all, purposes. + * + *

    Since all company locations are subsets of locations, use the Locations endpoints to + * [get](ref:get-v1-locations-location_id) or [update](ref:put-v1-locations-location_id) an individual + * record. * *

    scope: `companies:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param locationUuid The UUID of the location * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param effectiveDate - * @return {@code CompletableFuture} - The async response + * @param companyId The UUID of the company + * @param page The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + * @param per Number of objects per page. For majority of endpoints will default to 25 + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getMinimumWages( - String locationUuid, Optional xGustoAPIVersion, - Optional effectiveDate) { - GetV1LocationsLocationUuidMinimumWagesRequest request = - GetV1LocationsLocationUuidMinimumWagesRequest + public CompletableFuture get( + Optional xGustoAPIVersion, String companyId, + Optional page, Optional per) { + GetV1CompaniesCompanyIdLocationsRequest request = + GetV1CompaniesCompanyIdLocationsRequest .builder() - .locationUuid(locationUuid) .xGustoAPIVersion(xGustoAPIVersion) - .effectiveDate(effectiveDate) + .companyId(companyId) + .page(page) + .per(per) .build(); - AsyncRequestOperation operation - = new GetV1LocationsLocationUuidMinimumWages.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new GetV1CompaniesCompanyIdLocations.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Create a company location + * + *

    Create a company location, which represents any address associated with a company: mailing + * addresses, filing addresses, or work locations. A single address may serve multiple, or all, + * purposes. + * + *

    Since all company locations are subsets of locations, use the Locations endpoints to + * [get](ref:get-v1-locations-location_id) or [update](ref:put-v1-locations-location_id) an individual + * record. + * + *

    scope: `companies:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public PostV1CompaniesCompanyIdLocationsRequestBuilder create() { + return new PostV1CompaniesCompanyIdLocationsRequestBuilder(sdkConfiguration); + } + + /** + * Create a company location + * + *

    Create a company location, which represents any address associated with a company: mailing + * addresses, filing addresses, or work locations. A single address may serve multiple, or all, + * purposes. + * + *

    Since all company locations are subsets of locations, use the Locations endpoints to + * [get](ref:get-v1-locations-location_id) or [update](ref:put-v1-locations-location_id) an individual + * record. + * + *

    scope: `companies:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param companyId The UUID of the company + * @param companyLocationRequest Request body for creating a company location (company address). + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture create(String companyId, CompanyLocationRequest companyLocationRequest) { + return create(Optional.empty(), companyId, companyLocationRequest); + } + + /** + * Create a company location + * + *

    Create a company location, which represents any address associated with a company: mailing + * addresses, filing addresses, or work locations. A single address may serve multiple, or all, + * purposes. + * + *

    Since all company locations are subsets of locations, use the Locations endpoints to + * [get](ref:get-v1-locations-location_id) or [update](ref:put-v1-locations-location_id) an individual + * record. + * + *

    scope: `companies:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company + * @param companyLocationRequest Request body for creating a company location (company address). + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture create( + Optional xGustoAPIVersion, String companyId, + CompanyLocationRequest companyLocationRequest) { + PostV1CompaniesCompanyIdLocationsRequest request = + PostV1CompaniesCompanyIdLocationsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) + .companyLocationRequest(companyLocationRequest) + .build(); + AsyncRequestOperation operation + = new PostV1CompaniesCompanyIdLocations.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncMemberPortalInvitations.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncMemberPortalInvitations.java new file mode 100644 index 000000000..03329bac6 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncMemberPortalInvitations.java @@ -0,0 +1,453 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api; + +import static com.gusto.embedded_api.operations.Operations.AsyncRequestOperation; + +import com.gusto.embedded_api.models.operations.DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest; +import com.gusto.embedded_api.models.operations.DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest; +import com.gusto.embedded_api.models.operations.GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetV1ContractorsContractorUuidMemberPortalInvitationsRequest; +import com.gusto.embedded_api.models.operations.GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest; +import com.gusto.embedded_api.models.operations.PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PostV1ContractorsContractorUuidMemberPortalInvitationsRequest; +import com.gusto.embedded_api.models.operations.PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest; +import com.gusto.embedded_api.models.operations.async.DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder; +import com.gusto.embedded_api.models.operations.async.DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse; +import com.gusto.embedded_api.models.operations.async.DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder; +import com.gusto.embedded_api.models.operations.async.DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse; +import com.gusto.embedded_api.models.operations.async.GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder; +import com.gusto.embedded_api.models.operations.async.GetV1ContractorsContractorUuidMemberPortalInvitationsResponse; +import com.gusto.embedded_api.models.operations.async.GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder; +import com.gusto.embedded_api.models.operations.async.GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse; +import com.gusto.embedded_api.models.operations.async.PostV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder; +import com.gusto.embedded_api.models.operations.async.PostV1ContractorsContractorUuidMemberPortalInvitationsResponse; +import com.gusto.embedded_api.models.operations.async.PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder; +import com.gusto.embedded_api.models.operations.async.PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse; +import com.gusto.embedded_api.operations.DeleteV1ContractorsContractorUuidMemberPortalInvitations; +import com.gusto.embedded_api.operations.DeleteV1EmployeesEmployeeIdMemberPortalInvitations; +import com.gusto.embedded_api.operations.GetV1ContractorsContractorUuidMemberPortalInvitations; +import com.gusto.embedded_api.operations.GetV1EmployeesEmployeeIdMemberPortalInvitations; +import com.gusto.embedded_api.operations.PostV1ContractorsContractorUuidMemberPortalInvitations; +import com.gusto.embedded_api.operations.PostV1EmployeesEmployeeIdMemberPortalInvitations; +import com.gusto.embedded_api.utils.Headers; +import java.lang.String; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; + + +public class AsyncMemberPortalInvitations { + private static final Headers _headers = Headers.EMPTY; + private final SDKConfiguration sdkConfiguration; + private final MemberPortalInvitations syncSDK; + + AsyncMemberPortalInvitations(MemberPortalInvitations syncSDK, SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + this.syncSDK = syncSDK; + } + + /** + * Switches to the sync SDK. + * + * @return The sync SDK + */ + public MemberPortalInvitations sync() { + return syncSDK; + } + + + /** + * Create an employee member portal invitation + * + *

    Generates a member portal invitation for the specified employee. If the employee already has an + * invitation and its token has expired, calling this endpoint regenerates the invitation and overrides + * the prior token. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder postV1EmployeesEmployeeIdMemberPortalInvitations() { + return new PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder(sdkConfiguration); + } + + /** + * Create an employee member portal invitation + * + *

    Generates a member portal invitation for the specified employee. If the employee already has an + * invitation and its token has expired, calling this endpoint regenerates the invitation and overrides + * the prior token. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param employeeId The UUID of the employee + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture postV1EmployeesEmployeeIdMemberPortalInvitations(String employeeId) { + return postV1EmployeesEmployeeIdMemberPortalInvitations(Optional.empty(), employeeId); + } + + /** + * Create an employee member portal invitation + * + *

    Generates a member portal invitation for the specified employee. If the employee already has an + * invitation and its token has expired, calling this endpoint regenerates the invitation and overrides + * the prior token. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param employeeId The UUID of the employee + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture postV1EmployeesEmployeeIdMemberPortalInvitations(Optional xGustoAPIVersion, String employeeId) { + PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest request = + PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .employeeId(employeeId) + .build(); + AsyncRequestOperation operation + = new PostV1EmployeesEmployeeIdMemberPortalInvitations.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Get an employee member portal invitation + * + *

    Returns the current status of an employee's member portal invitation (`pending`, `sent`, `verified`, + * `complete`, or `cancelled`) along with an `expired` flag indicating whether the invitation can still + * be acted on by the employee. + * + *

    scope: `member_portal_invitation:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder getV1EmployeesEmployeeIdMemberPortalInvitations() { + return new GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder(sdkConfiguration); + } + + /** + * Get an employee member portal invitation + * + *

    Returns the current status of an employee's member portal invitation (`pending`, `sent`, `verified`, + * `complete`, or `cancelled`) along with an `expired` flag indicating whether the invitation can still + * be acted on by the employee. + * + *

    scope: `member_portal_invitation:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param employeeId The UUID of the employee + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getV1EmployeesEmployeeIdMemberPortalInvitations(String employeeId) { + return getV1EmployeesEmployeeIdMemberPortalInvitations(Optional.empty(), employeeId); + } + + /** + * Get an employee member portal invitation + * + *

    Returns the current status of an employee's member portal invitation (`pending`, `sent`, `verified`, + * `complete`, or `cancelled`) along with an `expired` flag indicating whether the invitation can still + * be acted on by the employee. + * + *

    scope: `member_portal_invitation:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param employeeId The UUID of the employee + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getV1EmployeesEmployeeIdMemberPortalInvitations(Optional xGustoAPIVersion, String employeeId) { + GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest request = + GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .employeeId(employeeId) + .build(); + AsyncRequestOperation operation + = new GetV1EmployeesEmployeeIdMemberPortalInvitations.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Cancel an employee member portal invitation + * + *

    Cancels the member portal invitation for the specified employee. + * + *

    Note: this endpoint does not cancel the employee's self-onboarding flow. If you want the company + * admin to take full control of onboarding the employee, cancel the self-onboarding request instead. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder deleteV1EmployeesEmployeeIdMemberPortalInvitations() { + return new DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder(sdkConfiguration); + } + + /** + * Cancel an employee member portal invitation + * + *

    Cancels the member portal invitation for the specified employee. + * + *

    Note: this endpoint does not cancel the employee's self-onboarding flow. If you want the company + * admin to take full control of onboarding the employee, cancel the self-onboarding request instead. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param employeeId The UUID of the employee + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture deleteV1EmployeesEmployeeIdMemberPortalInvitations(String employeeId) { + return deleteV1EmployeesEmployeeIdMemberPortalInvitations(Optional.empty(), employeeId); + } + + /** + * Cancel an employee member portal invitation + * + *

    Cancels the member portal invitation for the specified employee. + * + *

    Note: this endpoint does not cancel the employee's self-onboarding flow. If you want the company + * admin to take full control of onboarding the employee, cancel the self-onboarding request instead. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param employeeId The UUID of the employee + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture deleteV1EmployeesEmployeeIdMemberPortalInvitations(Optional xGustoAPIVersion, String employeeId) { + DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest request = + DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .employeeId(employeeId) + .build(); + AsyncRequestOperation operation + = new DeleteV1EmployeesEmployeeIdMemberPortalInvitations.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Create a contractor member portal invitation + * + *

    Generates a member portal invitation for the specified contractor. If the contractor already has an + * invitation and its token has expired, calling this endpoint regenerates the invitation and overrides + * the prior token. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public PostV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder postV1ContractorsContractorUuidMemberPortalInvitations() { + return new PostV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder(sdkConfiguration); + } + + /** + * Create a contractor member portal invitation + * + *

    Generates a member portal invitation for the specified contractor. If the contractor already has an + * invitation and its token has expired, calling this endpoint regenerates the invitation and overrides + * the prior token. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param contractorUuid The UUID of the contractor + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture postV1ContractorsContractorUuidMemberPortalInvitations(String contractorUuid) { + return postV1ContractorsContractorUuidMemberPortalInvitations(Optional.empty(), contractorUuid); + } + + /** + * Create a contractor member portal invitation + * + *

    Generates a member portal invitation for the specified contractor. If the contractor already has an + * invitation and its token has expired, calling this endpoint regenerates the invitation and overrides + * the prior token. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param contractorUuid The UUID of the contractor + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture postV1ContractorsContractorUuidMemberPortalInvitations(Optional xGustoAPIVersion, String contractorUuid) { + PostV1ContractorsContractorUuidMemberPortalInvitationsRequest request = + PostV1ContractorsContractorUuidMemberPortalInvitationsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .contractorUuid(contractorUuid) + .build(); + AsyncRequestOperation operation + = new PostV1ContractorsContractorUuidMemberPortalInvitations.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Get a contractor member portal invitation + * + *

    Returns the current status of a contractor's member portal invitation (`pending`, `sent`, + * `verified`, `complete`, or `cancelled`) along with an `expired` flag indicating whether the + * invitation can still be acted on by the contractor. + * + *

    scope: `member_portal_invitation:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder getV1ContractorsContractorUuidMemberPortalInvitations() { + return new GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder(sdkConfiguration); + } + + /** + * Get a contractor member portal invitation + * + *

    Returns the current status of a contractor's member portal invitation (`pending`, `sent`, + * `verified`, `complete`, or `cancelled`) along with an `expired` flag indicating whether the + * invitation can still be acted on by the contractor. + * + *

    scope: `member_portal_invitation:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param contractorUuid The UUID of the contractor + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getV1ContractorsContractorUuidMemberPortalInvitations(String contractorUuid) { + return getV1ContractorsContractorUuidMemberPortalInvitations(Optional.empty(), contractorUuid); + } + + /** + * Get a contractor member portal invitation + * + *

    Returns the current status of a contractor's member portal invitation (`pending`, `sent`, + * `verified`, `complete`, or `cancelled`) along with an `expired` flag indicating whether the + * invitation can still be acted on by the contractor. + * + *

    scope: `member_portal_invitation:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param contractorUuid The UUID of the contractor + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getV1ContractorsContractorUuidMemberPortalInvitations(Optional xGustoAPIVersion, String contractorUuid) { + GetV1ContractorsContractorUuidMemberPortalInvitationsRequest request = + GetV1ContractorsContractorUuidMemberPortalInvitationsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .contractorUuid(contractorUuid) + .build(); + AsyncRequestOperation operation + = new GetV1ContractorsContractorUuidMemberPortalInvitations.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Cancel a contractor member portal invitation + * + *

    Cancels the member portal invitation for the specified contractor. + * + *

    Note: this endpoint does not cancel the contractor's self-onboarding flow. If you want the company + * admin to take full control of onboarding the contractor, cancel the self-onboarding request instead. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder deleteV1ContractorsContractorUuidMemberPortalInvitations() { + return new DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder(sdkConfiguration); + } + + /** + * Cancel a contractor member portal invitation + * + *

    Cancels the member portal invitation for the specified contractor. + * + *

    Note: this endpoint does not cancel the contractor's self-onboarding flow. If you want the company + * admin to take full control of onboarding the contractor, cancel the self-onboarding request instead. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param contractorUuid The UUID of the contractor + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture deleteV1ContractorsContractorUuidMemberPortalInvitations(String contractorUuid) { + return deleteV1ContractorsContractorUuidMemberPortalInvitations(Optional.empty(), contractorUuid); + } + + /** + * Cancel a contractor member portal invitation + * + *

    Cancels the member portal invitation for the specified contractor. + * + *

    Note: this endpoint does not cancel the contractor's self-onboarding flow. If you want the company + * admin to take full control of onboarding the contractor, cancel the self-onboarding request instead. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param contractorUuid The UUID of the contractor + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture deleteV1ContractorsContractorUuidMemberPortalInvitations(Optional xGustoAPIVersion, String contractorUuid) { + DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest request = + DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .contractorUuid(contractorUuid) + .build(); + AsyncRequestOperation operation + = new DeleteV1ContractorsContractorUuidMemberPortalInvitations.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncNotifications.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncNotifications.java index 45334ce8e..e53963930 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncNotifications.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncNotifications.java @@ -40,6 +40,41 @@ public Notifications sync() { } + /** + * Get notifications for company + * + *

    Returns all notifications relevant for the given company. + * + *

    scope: `notifications:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public GetCompanyNotificationsRequestBuilder getCompanyNotifications() { + return new GetCompanyNotificationsRequestBuilder(sdkConfiguration); + } + + /** + * Get notifications for company + * + *

    Returns all notifications relevant for the given company. + * + *

    scope: `notifications:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param request The request object containing all the parameters for the API call. + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getCompanyNotifications(GetCompanyNotificationsRequest request) { + AsyncRequestOperation operation + = new GetCompanyNotifications.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + /** * Get a notification's details * @@ -86,7 +121,7 @@ public GetNotificationsNotificationUuidRequestBuilder getDetails() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture getDetails(String notificationUuid) { - return getDetails(notificationUuid, Optional.empty()); + return getDetails(Optional.empty(), notificationUuid); } /** @@ -107,16 +142,16 @@ public CompletableFuture getDetails(St * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param notificationUuid The notification entity_uuid * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param notificationUuid The notification entity_uuid * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getDetails(String notificationUuid, Optional xGustoAPIVersion) { + public CompletableFuture getDetails(Optional xGustoAPIVersion, String notificationUuid) { GetNotificationsNotificationUuidRequest request = GetNotificationsNotificationUuidRequest .builder() - .notificationUuid(notificationUuid) .xGustoAPIVersion(xGustoAPIVersion) + .notificationUuid(notificationUuid) .build(); AsyncRequestOperation operation = new GetNotificationsNotificationUuid.Async(sdkConfiguration, _headers); @@ -124,39 +159,4 @@ public CompletableFuture getDetails(St .thenCompose(operation::handleResponse); } - - /** - * Get notifications for company - * - *

    Returns all notifications relevant for the given company. - * - *

    scope: `notifications:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The async call builder - */ - public GetCompanyNotificationsRequestBuilder getCompanyNotifications() { - return new GetCompanyNotificationsRequestBuilder(sdkConfiguration); - } - - /** - * Get notifications for company - * - *

    Returns all notifications relevant for the given company. - * - *

    scope: `notifications:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param request The request object containing all the parameters for the API call. - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture getCompanyNotifications(GetCompanyNotificationsRequest request) { - AsyncRequestOperation operation - = new GetCompanyNotifications.Async(sdkConfiguration, _headers); - return operation.doRequest(request) - .thenCompose(operation::handleResponse); - } - } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncPaySchedules.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncPaySchedules.java index 268489a4c..f108d2b28 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncPaySchedules.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncPaySchedules.java @@ -83,6 +83,137 @@ public PaySchedules sync() { } + /** + * Get pay periods for a company + * + *

    Pay periods are the foundation of payroll. Compensation, time & attendance, taxes, and expense + * reports all rely on when they happened. + * + *

    To begin submitting information for a given payroll, we need to agree on the time period. + * + *

    By default, this endpoint returns pay periods starting from 6 months ago to the date today. Use the + * `start_date` and `end_date` parameters to change the scope of the response. End dates can be up to 3 + * months in the future and there is no limit on start dates. + * + *

    Starting in version 2023-04-01, the `eligible_employees` attribute was removed from the response. + * The eligible employees for a payroll are determined by the employee_compensations returned from the + * [PUT + * /v1/companies/{company_id}/payrolls/{payroll_id}/prepare](ref:put-v1-companies-company_id-payrolls-payroll_id-prepare) + * endpoint. + * + *

    scope: `payrolls:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public GetV1CompaniesCompanyIdPayPeriodsRequestBuilder getPayPeriods() { + return new GetV1CompaniesCompanyIdPayPeriodsRequestBuilder(sdkConfiguration); + } + + /** + * Get pay periods for a company + * + *

    Pay periods are the foundation of payroll. Compensation, time & attendance, taxes, and expense + * reports all rely on when they happened. + * + *

    To begin submitting information for a given payroll, we need to agree on the time period. + * + *

    By default, this endpoint returns pay periods starting from 6 months ago to the date today. Use the + * `start_date` and `end_date` parameters to change the scope of the response. End dates can be up to 3 + * months in the future and there is no limit on start dates. + * + *

    Starting in version 2023-04-01, the `eligible_employees` attribute was removed from the response. + * The eligible employees for a payroll are determined by the employee_compensations returned from the + * [PUT + * /v1/companies/{company_id}/payrolls/{payroll_id}/prepare](ref:put-v1-companies-company_id-payrolls-payroll_id-prepare) + * endpoint. + * + *

    scope: `payrolls:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param request The request object containing all the parameters for the API call. + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getPayPeriods(GetV1CompaniesCompanyIdPayPeriodsRequest request) { + AsyncRequestOperation operation + = new GetV1CompaniesCompanyIdPayPeriods.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Get termination pay periods for a company + * + *

    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. + * + *

    This endpoint returns the unprocessed pay periods for past and future terminated employees in a + * given company. + * + *

    scope: `payrolls:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsRequestBuilder getUnprocessedTerminationPeriods() { + return new GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsRequestBuilder(sdkConfiguration); + } + + /** + * Get termination pay periods for a company + * + *

    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. + * + *

    This endpoint returns the unprocessed pay periods for past and future terminated employees in a + * given company. + * + *

    scope: `payrolls:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param companyId The UUID of the company + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getUnprocessedTerminationPeriods(String companyId) { + return getUnprocessedTerminationPeriods(Optional.empty(), companyId); + } + + /** + * Get termination pay periods for a company + * + *

    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. + * + *

    This endpoint returns the unprocessed pay periods for past and future terminated employees in a + * given company. + * + *

    scope: `payrolls:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getUnprocessedTerminationPeriods(Optional xGustoAPIVersion, String companyId) { + GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsRequest request = + GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) + .build(); + AsyncRequestOperation operation + = new GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriods.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + /** * Get the pay schedules for a company * @@ -508,198 +639,6 @@ public CompletableFuturePay periods are the foundation of payroll. Compensation, time & attendance, taxes, and expense - * reports all rely on when they happened. - * - *

    To begin submitting information for a given payroll, we need to agree on the time period. - * - *

    By default, this endpoint returns pay periods starting from 6 months ago to the date today. Use the - * `start_date` and `end_date` parameters to change the scope of the response. End dates can be up to 3 - * months in the future and there is no limit on start dates. - * - *

    Starting in version 2023-04-01, the `eligible_employees` attribute was removed from the response. - * The eligible employees for a payroll are determined by the employee_compensations returned from the - * [PUT - * /v1/companies/{company_id}/payrolls/{payroll_id}/prepare](ref:put-v1-companies-company_id-payrolls-payroll_id-prepare) - * endpoint. - * - *

    scope: `payrolls:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The async call builder - */ - public GetV1CompaniesCompanyIdPayPeriodsRequestBuilder getPayPeriods() { - return new GetV1CompaniesCompanyIdPayPeriodsRequestBuilder(sdkConfiguration); - } - - /** - * Get pay periods for a company - * - *

    Pay periods are the foundation of payroll. Compensation, time & attendance, taxes, and expense - * reports all rely on when they happened. - * - *

    To begin submitting information for a given payroll, we need to agree on the time period. - * - *

    By default, this endpoint returns pay periods starting from 6 months ago to the date today. Use the - * `start_date` and `end_date` parameters to change the scope of the response. End dates can be up to 3 - * months in the future and there is no limit on start dates. - * - *

    Starting in version 2023-04-01, the `eligible_employees` attribute was removed from the response. - * The eligible employees for a payroll are determined by the employee_compensations returned from the - * [PUT - * /v1/companies/{company_id}/payrolls/{payroll_id}/prepare](ref:put-v1-companies-company_id-payrolls-payroll_id-prepare) - * endpoint. - * - *

    scope: `payrolls:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param request The request object containing all the parameters for the API call. - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture getPayPeriods(GetV1CompaniesCompanyIdPayPeriodsRequest request) { - AsyncRequestOperation operation - = new GetV1CompaniesCompanyIdPayPeriods.Async(sdkConfiguration, _headers); - return operation.doRequest(request) - .thenCompose(operation::handleResponse); - } - - - /** - * Get termination pay periods for a company - * - *

    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. - * - *

    This endpoint returns the unprocessed pay periods for past and future terminated employees in a - * given company. - * - *

    scope: `payrolls:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The async call builder - */ - public GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsRequestBuilder getUnprocessedTerminationPeriods() { - return new GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsRequestBuilder(sdkConfiguration); - } - - /** - * Get termination pay periods for a company - * - *

    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. - * - *

    This endpoint returns the unprocessed pay periods for past and future terminated employees in a - * given company. - * - *

    scope: `payrolls:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param companyId The UUID of the company - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture getUnprocessedTerminationPeriods(String companyId) { - return getUnprocessedTerminationPeriods(Optional.empty(), companyId); - } - - /** - * Get termination pay periods for a company - * - *

    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. - * - *

    This endpoint returns the unprocessed pay periods for past and future terminated employees in a - * given company. - * - *

    scope: `payrolls:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyId The UUID of the company - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture getUnprocessedTerminationPeriods(Optional xGustoAPIVersion, String companyId) { - GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsRequest request = - GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsRequest - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .companyId(companyId) - .build(); - AsyncRequestOperation operation - = new GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriods.Async(sdkConfiguration, _headers); - return operation.doRequest(request) - .thenCompose(operation::handleResponse); - } - - - /** - * Get pay schedule assignments for a company - * - *

    This endpoint returns the current pay schedule assignment for a company, with pay schedule and - * employee/department mappings depending on the pay schedule type. - * - *

    scope: `pay_schedules:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The async call builder - */ - public GetV1CompaniesCompanyIdPaySchedulesAssignmentsRequestBuilder getAssignments() { - return new GetV1CompaniesCompanyIdPaySchedulesAssignmentsRequestBuilder(sdkConfiguration); - } - - /** - * Get pay schedule assignments for a company - * - *

    This endpoint returns the current pay schedule assignment for a company, with pay schedule and - * employee/department mappings depending on the pay schedule type. - * - *

    scope: `pay_schedules:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param companyId The UUID of the company - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture getAssignments(String companyId) { - return getAssignments(Optional.empty(), companyId); - } - - /** - * Get pay schedule assignments for a company - * - *

    This endpoint returns the current pay schedule assignment for a company, with pay schedule and - * employee/department mappings depending on the pay schedule type. - * - *

    scope: `pay_schedules:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyId The UUID of the company - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture getAssignments(Optional xGustoAPIVersion, String companyId) { - GetV1CompaniesCompanyIdPaySchedulesAssignmentsRequest request = - GetV1CompaniesCompanyIdPaySchedulesAssignmentsRequest - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .companyId(companyId) - .build(); - AsyncRequestOperation operation - = new GetV1CompaniesCompanyIdPaySchedulesAssignments.Async(sdkConfiguration, _headers); - return operation.doRequest(request) - .thenCompose(operation::handleResponse); - } - - /** * Preview pay schedule assignments for a company * @@ -837,4 +776,65 @@ public CompletableFuture ass .thenCompose(operation::handleResponse); } + + /** + * Get pay schedule assignments for a company + * + *

    This endpoint returns the current pay schedule assignment for a company, with pay schedule and + * employee/department mappings depending on the pay schedule type. + * + *

    scope: `pay_schedules:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public GetV1CompaniesCompanyIdPaySchedulesAssignmentsRequestBuilder getAssignments() { + return new GetV1CompaniesCompanyIdPaySchedulesAssignmentsRequestBuilder(sdkConfiguration); + } + + /** + * Get pay schedule assignments for a company + * + *

    This endpoint returns the current pay schedule assignment for a company, with pay schedule and + * employee/department mappings depending on the pay schedule type. + * + *

    scope: `pay_schedules:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param companyId The UUID of the company + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getAssignments(String companyId) { + return getAssignments(Optional.empty(), companyId); + } + + /** + * Get pay schedule assignments for a company + * + *

    This endpoint returns the current pay schedule assignment for a company, with pay schedule and + * employee/department mappings depending on the pay schedule type. + * + *

    scope: `pay_schedules:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getAssignments(Optional xGustoAPIVersion, String companyId) { + GetV1CompaniesCompanyIdPaySchedulesAssignmentsRequest request = + GetV1CompaniesCompanyIdPaySchedulesAssignmentsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) + .build(); + AsyncRequestOperation operation + = new GetV1CompaniesCompanyIdPaySchedulesAssignments.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncPayrollCancellations.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncPayrollCancellations.java new file mode 100644 index 000000000..2b1609ae9 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncPayrollCancellations.java @@ -0,0 +1,260 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api; + +import static com.gusto.embedded_api.operations.Operations.AsyncRequestOperation; + +import com.gusto.embedded_api.models.operations.GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetV1PayrollBatchesPayrollBatchUuidRequest; +import com.gusto.embedded_api.models.operations.GetV1PayrollBatchesPayrollBatchUuidSecurity; +import com.gusto.embedded_api.models.operations.PostV1PayrollBatchesHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PostV1PayrollBatchesRequest; +import com.gusto.embedded_api.models.operations.PostV1PayrollBatchesRequestBody; +import com.gusto.embedded_api.models.operations.PostV1PayrollBatchesSecurity; +import com.gusto.embedded_api.models.operations.async.GetV1PayrollBatchesPayrollBatchUuidRequestBuilder; +import com.gusto.embedded_api.models.operations.async.GetV1PayrollBatchesPayrollBatchUuidResponse; +import com.gusto.embedded_api.models.operations.async.PostV1PayrollBatchesRequestBuilder; +import com.gusto.embedded_api.models.operations.async.PostV1PayrollBatchesResponse; +import com.gusto.embedded_api.operations.GetV1PayrollBatchesPayrollBatchUuid; +import com.gusto.embedded_api.operations.PostV1PayrollBatches; +import com.gusto.embedded_api.utils.Headers; +import java.lang.String; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; + + +public class AsyncPayrollCancellations { + private static final Headers _headers = Headers.EMPTY; + private final SDKConfiguration sdkConfiguration; + private final PayrollCancellations syncSDK; + + AsyncPayrollCancellations(PayrollCancellations syncSDK, SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + this.syncSDK = syncSDK; + } + + /** + * Switches to the sync SDK. + * + * @return The sync SDK + */ + public PayrollCancellations sync() { + return syncSDK; + } + + + /** + * Create a payroll cancellation batch + * + *

    Cancels up to 100 payrolls across one or more companies the partner is mapped to, asynchronously. + * + *

    The batch is processed asynchronously. Use the returned batch UUID to poll `GET + * /v1/payroll_batches/{payroll_batch_uuid}` for status and per-payroll results. + * + *

    Each item carries the payroll `uuid` and the `company_uuid` that owns it. A payroll whose company is + * not mapped to the partner — or that doesn't exist — is recorded as a `not_found` exclusion rather + * than a hard error, so every requested UUID lands in either `results` or `exclusions`. + * + *

    Idempotency is scoped per `(partner, idempotency_key)`. A duplicate POST with the same + * `idempotency_key` returns a 409 Conflict referencing the existing batch UUID — no duplicate + * processing occurs. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `payroll_batches:write` + * + * @return The async call builder + */ + public PostV1PayrollBatchesRequestBuilder postV1PayrollBatches() { + return new PostV1PayrollBatchesRequestBuilder(sdkConfiguration); + } + + /** + * Create a payroll cancellation batch + * + *

    Cancels up to 100 payrolls across one or more companies the partner is mapped to, asynchronously. + * + *

    The batch is processed asynchronously. Use the returned batch UUID to poll `GET + * /v1/payroll_batches/{payroll_batch_uuid}` for status and per-payroll results. + * + *

    Each item carries the payroll `uuid` and the `company_uuid` that owns it. A payroll whose company is + * not mapped to the partner — or that doesn't exist — is recorded as a `not_found` exclusion rather + * than a hard error, so every requested UUID lands in either `results` or `exclusions`. + * + *

    Idempotency is scoped per `(partner, idempotency_key)`. A duplicate POST with the same + * `idempotency_key` returns a 409 Conflict referencing the existing batch UUID — no duplicate + * processing occurs. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `payroll_batches:write` + * + * @param security The security details to use for authentication. + * @param requestBody + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture postV1PayrollBatches(PostV1PayrollBatchesSecurity security, PostV1PayrollBatchesRequestBody requestBody) { + return postV1PayrollBatches(security, Optional.empty(), requestBody); + } + + /** + * Create a payroll cancellation batch + * + *

    Cancels up to 100 payrolls across one or more companies the partner is mapped to, asynchronously. + * + *

    The batch is processed asynchronously. Use the returned batch UUID to poll `GET + * /v1/payroll_batches/{payroll_batch_uuid}` for status and per-payroll results. + * + *

    Each item carries the payroll `uuid` and the `company_uuid` that owns it. A payroll whose company is + * not mapped to the partner — or that doesn't exist — is recorded as a `not_found` exclusion rather + * than a hard error, so every requested UUID lands in either `results` or `exclusions`. + * + *

    Idempotency is scoped per `(partner, idempotency_key)`. A duplicate POST with the same + * `idempotency_key` returns a 409 Conflict referencing the existing batch UUID — no duplicate + * processing occurs. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `payroll_batches:write` + * + * @param security The security details to use for authentication. + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param requestBody + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture postV1PayrollBatches( + PostV1PayrollBatchesSecurity security, Optional xGustoAPIVersion, + PostV1PayrollBatchesRequestBody requestBody) { + PostV1PayrollBatchesRequest request = + PostV1PayrollBatchesRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .requestBody(requestBody) + .build(); + AsyncRequestOperation operation + = new PostV1PayrollBatches.Async(sdkConfiguration, security, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Get a payroll cancellation batch + * + *

    Returns the status and per-payroll results of a payroll cancellation batch. + * + *

    Poll this endpoint until the batch `status` reaches a terminal value (`completed` or `failed`). Once + * terminal, the response includes the `results` array (one entry per authorized payroll, each with its + * own per-payroll `status` — `success` or `failed`) and the `exclusions` array (one entry per payroll + * that could not be processed). A cancel is atomic, so a per-payroll result is only ever `success` or + * `failed` — never `partial_success`. + * + *

    Note that the top-level batch `status` (`pending` / `processing` / `completed` / `failed`) is the + * request lifecycle, distinct from the per-payroll `status` inside `results[]`. A `completed` batch + * does not imply every payroll was cancelled — inspect the array for per-payroll outcomes. + * + *

    Results are stored in Redis with a limited TTL after completion. If the partner polls after results + * have expired, this endpoint returns 410 Gone — partners should re-submit a new batch. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `payroll_batches:read` + * + * @return The async call builder + */ + public GetV1PayrollBatchesPayrollBatchUuidRequestBuilder getV1PayrollBatchesPayrollBatchUuid() { + return new GetV1PayrollBatchesPayrollBatchUuidRequestBuilder(sdkConfiguration); + } + + /** + * Get a payroll cancellation batch + * + *

    Returns the status and per-payroll results of a payroll cancellation batch. + * + *

    Poll this endpoint until the batch `status` reaches a terminal value (`completed` or `failed`). Once + * terminal, the response includes the `results` array (one entry per authorized payroll, each with its + * own per-payroll `status` — `success` or `failed`) and the `exclusions` array (one entry per payroll + * that could not be processed). A cancel is atomic, so a per-payroll result is only ever `success` or + * `failed` — never `partial_success`. + * + *

    Note that the top-level batch `status` (`pending` / `processing` / `completed` / `failed`) is the + * request lifecycle, distinct from the per-payroll `status` inside `results[]`. A `completed` batch + * does not imply every payroll was cancelled — inspect the array for per-payroll outcomes. + * + *

    Results are stored in Redis with a limited TTL after completion. If the partner polls after results + * have expired, this endpoint returns 410 Gone — partners should re-submit a new batch. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `payroll_batches:read` + * + * @param security The security details to use for authentication. + * @param payrollBatchUuid The UUID of the payroll cancellation batch returned by `POST /v1/payroll_batches`. + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getV1PayrollBatchesPayrollBatchUuid(GetV1PayrollBatchesPayrollBatchUuidSecurity security, String payrollBatchUuid) { + return getV1PayrollBatchesPayrollBatchUuid(security, Optional.empty(), payrollBatchUuid); + } + + /** + * Get a payroll cancellation batch + * + *

    Returns the status and per-payroll results of a payroll cancellation batch. + * + *

    Poll this endpoint until the batch `status` reaches a terminal value (`completed` or `failed`). Once + * terminal, the response includes the `results` array (one entry per authorized payroll, each with its + * own per-payroll `status` — `success` or `failed`) and the `exclusions` array (one entry per payroll + * that could not be processed). A cancel is atomic, so a per-payroll result is only ever `success` or + * `failed` — never `partial_success`. + * + *

    Note that the top-level batch `status` (`pending` / `processing` / `completed` / `failed`) is the + * request lifecycle, distinct from the per-payroll `status` inside `results[]`. A `completed` batch + * does not imply every payroll was cancelled — inspect the array for per-payroll outcomes. + * + *

    Results are stored in Redis with a limited TTL after completion. If the partner polls after results + * have expired, this endpoint returns 410 Gone — partners should re-submit a new batch. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `payroll_batches:read` + * + * @param security The security details to use for authentication. + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param payrollBatchUuid The UUID of the payroll cancellation batch returned by `POST /v1/payroll_batches`. + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getV1PayrollBatchesPayrollBatchUuid( + GetV1PayrollBatchesPayrollBatchUuidSecurity security, Optional xGustoAPIVersion, + String payrollBatchUuid) { + GetV1PayrollBatchesPayrollBatchUuidRequest request = + GetV1PayrollBatchesPayrollBatchUuidRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .payrollBatchUuid(payrollBatchUuid) + .build(); + AsyncRequestOperation operation + = new GetV1PayrollBatchesPayrollBatchUuid.Async(sdkConfiguration, security, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncPayrollDigests.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncPayrollDigests.java index f86cb5b75..4cda3100e 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncPayrollDigests.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncPayrollDigests.java @@ -200,7 +200,7 @@ public GetV1PayrollDigestsPayrollDigestUuidRequestBuilder getV1PayrollDigestsPay * @return {@code CompletableFuture} - The async response */ public CompletableFuture getV1PayrollDigestsPayrollDigestUuid(GetV1PayrollDigestsPayrollDigestUuidSecurity security, String payrollDigestUuid) { - return getV1PayrollDigestsPayrollDigestUuid(security, payrollDigestUuid, Optional.empty()); + return getV1PayrollDigestsPayrollDigestUuid(security, Optional.empty(), payrollDigestUuid); } /** @@ -229,18 +229,18 @@ public CompletableFuture getV1Payr *

    scope: `payroll_digests:read` * * @param security The security details to use for authentication. - * @param payrollDigestUuid The UUID of the payroll digest batch returned by `POST /v1/payroll_digests`. * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param payrollDigestUuid The UUID of the payroll digest batch returned by `POST /v1/payroll_digests`. * @return {@code CompletableFuture} - The async response */ public CompletableFuture getV1PayrollDigestsPayrollDigestUuid( - GetV1PayrollDigestsPayrollDigestUuidSecurity security, String payrollDigestUuid, - Optional xGustoAPIVersion) { + GetV1PayrollDigestsPayrollDigestUuidSecurity security, Optional xGustoAPIVersion, + String payrollDigestUuid) { GetV1PayrollDigestsPayrollDigestUuidRequest request = GetV1PayrollDigestsPayrollDigestUuidRequest .builder() - .payrollDigestUuid(payrollDigestUuid) .xGustoAPIVersion(xGustoAPIVersion) + .payrollDigestUuid(payrollDigestUuid) .build(); AsyncRequestOperation operation = new GetV1PayrollDigestsPayrollDigestUuid.Async(sdkConfiguration, security, _headers); diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncPayrolls.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncPayrolls.java index 3df5010c5..137feecc5 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncPayrolls.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncPayrolls.java @@ -8,9 +8,9 @@ import com.gusto.embedded_api.models.components.PayrollGrossUpRequest; import com.gusto.embedded_api.models.components.PayrollUpdate; import com.gusto.embedded_api.models.components.PrintablePayrollChecksBody; -import com.gusto.embedded_api.models.components.VersionHeader; import com.gusto.embedded_api.models.operations.DeleteV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion; import com.gusto.embedded_api.models.operations.DeleteV1CompaniesCompanyIdPayrollsRequest; +import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion; import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdPayrollReversalsRequest; import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsHeaderXGustoAPIVersion; import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest; @@ -133,253 +133,452 @@ public Payrolls sync() { /** - * Get all payrolls for a company - * - *

    Returns a list of payrolls for a company. You can change the payrolls returned by updating the - * processing_status, payroll_types, start_date, & end_date params. - * - *

    By default, will return processed, regular payrolls for the past 6 months. + * Generate printable payroll checks (pdf) * - *

    Notes: - * * Dollar amounts are returned as string representations of numeric decimals, are represented to the - * cent. - * * end_date can be at most 3 months in the future and start_date and end_date can't be more than 1 - * year apart. - * * Results are paginated. Maximum page size is 100 payrolls per request; the default page size is 25. + *

    This endpoint initiates the generation of employee checks for the payroll specified by payroll_uuid. + * A generation status and corresponding request_uuid will be returned. Use the generated document GET + * endpoint with document_type: `printable_payroll_checks` and request_uuid to poll the check + * generation process and retrieve the generated check URL upon completion. * - *

    scope: `payrolls:read` + *

    scope: `generated_documents:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public GetV1CompaniesCompanyIdPayrollsRequestBuilder list() { - return new GetV1CompaniesCompanyIdPayrollsRequestBuilder(sdkConfiguration); + public PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksRequestBuilder generatePrintableChecks() { + return new PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksRequestBuilder(sdkConfiguration); } /** - * Get all payrolls for a company + * Generate printable payroll checks (pdf) * - *

    Returns a list of payrolls for a company. You can change the payrolls returned by updating the - * processing_status, payroll_types, start_date, & end_date params. + *

    This endpoint initiates the generation of employee checks for the payroll specified by payroll_uuid. + * A generation status and corresponding request_uuid will be returned. Use the generated document GET + * endpoint with document_type: `printable_payroll_checks` and request_uuid to poll the check + * generation process and retrieve the generated check URL upon completion. * - *

    By default, will return processed, regular payrolls for the past 6 months. + *

    scope: `generated_documents:write` * - *

    Notes: - * * Dollar amounts are returned as string representations of numeric decimals, are represented to the - * cent. - * * end_date can be at most 3 months in the future and start_date and end_date can't be more than 1 - * year apart. - * * Results are paginated. Maximum page size is 100 payrolls per request; the default page size is 25. + *

    If set, this operation will use Security#companyAccessAuth from the global security. * - *

    scope: `payrolls:read` + * @param payrollUuid The UUID of the payroll + * @param printablePayrollChecksBody Request body for generating printable payroll checks. + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture generatePrintableChecks(String payrollUuid, PrintablePayrollChecksBody printablePayrollChecksBody) { + return generatePrintableChecks(Optional.empty(), payrollUuid, printablePayrollChecksBody); + } + + /** + * Generate printable payroll checks (pdf) + * + *

    This endpoint initiates the generation of employee checks for the payroll specified by payroll_uuid. + * A generation status and corresponding request_uuid will be returned. Use the generated document GET + * endpoint with document_type: `printable_payroll_checks` and request_uuid to poll the check + * generation process and retrieve the generated check URL upon completion. + * + *

    scope: `generated_documents:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param request The request object containing all the parameters for the API call. - * @return {@code CompletableFuture} - The async response + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param payrollUuid The UUID of the payroll + * @param printablePayrollChecksBody Request body for generating printable payroll checks. + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture list(GetV1CompaniesCompanyIdPayrollsRequest request) { - AsyncRequestOperation operation - = new GetV1CompaniesCompanyIdPayrolls.Async(sdkConfiguration, _headers); + public CompletableFuture generatePrintableChecks( + Optional xGustoAPIVersion, String payrollUuid, + PrintablePayrollChecksBody printablePayrollChecksBody) { + PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksRequest request = + PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .payrollUuid(payrollUuid) + .printablePayrollChecksBody(printablePayrollChecksBody) + .build(); + AsyncRequestOperation operation + = new PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecks.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Create an off-cycle payroll - * - *

    Creates a new, unprocessed, off-cycle payroll. + * Get an employee's pay stubs * - *

    ## `off_cycle_reason` - * By default: - * - External benefits and deductions will be included when the `off_cycle_reason` is set to - * `Correction`. - * - All benefits and deductions are blocked when the `off_cycle_reason` is set to `Bonus`. + *

    Get an employee's pay stubs. * - *

    These elections can be overridden with the `skip_regular_deductions` boolean. + *

    Results are returned in reverse chronological order (newest first). * - *

    scope: `payrolls:run` + *

    scope: `pay_stubs:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public PostV1CompaniesCompanyIdPayrollsRequestBuilder createOffCycle() { - return new PostV1CompaniesCompanyIdPayrollsRequestBuilder(sdkConfiguration); + public GetV1EmployeesEmployeeUuidPayStubsRequestBuilder getPayStubs() { + return new GetV1EmployeesEmployeeUuidPayStubsRequestBuilder(sdkConfiguration); } /** - * Create an off-cycle payroll - * - *

    Creates a new, unprocessed, off-cycle payroll. + * Get an employee's pay stubs * - *

    ## `off_cycle_reason` - * By default: - * - External benefits and deductions will be included when the `off_cycle_reason` is set to - * `Correction`. - * - All benefits and deductions are blocked when the `off_cycle_reason` is set to `Bonus`. + *

    Get an employee's pay stubs. * - *

    These elections can be overridden with the `skip_regular_deductions` boolean. + *

    Results are returned in reverse chronological order (newest first). * - *

    scope: `payrolls:run` + *

    scope: `pay_stubs:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company - * @return {@code CompletableFuture} - The async response + * @param employeeId The UUID of the employee + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture createOffCycle(String companyId) { - return createOffCycle(Optional.empty(), companyId, Optional.empty()); + public CompletableFuture getPayStubs(String employeeId) { + return getPayStubs( + Optional.empty(), employeeId, Optional.empty(), + Optional.empty()); } /** - * Create an off-cycle payroll - * - *

    Creates a new, unprocessed, off-cycle payroll. + * Get an employee's pay stubs * - *

    ## `off_cycle_reason` - * By default: - * - External benefits and deductions will be included when the `off_cycle_reason` is set to - * `Correction`. - * - All benefits and deductions are blocked when the `off_cycle_reason` is set to `Bonus`. + *

    Get an employee's pay stubs. * - *

    These elections can be overridden with the `skip_regular_deductions` boolean. + *

    Results are returned in reverse chronological order (newest first). * - *

    scope: `payrolls:run` + *

    scope: `pay_stubs:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyId The UUID of the company - * @param requestBody - * @return {@code CompletableFuture} - The async response + * @param employeeId The UUID of the employee + * @param page The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + * @param per Number of objects per page. For majority of endpoints will default to 25 + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture createOffCycle( - Optional xGustoAPIVersion, String companyId, - Optional requestBody) { - PostV1CompaniesCompanyIdPayrollsRequest request = - PostV1CompaniesCompanyIdPayrollsRequest + public CompletableFuture getPayStubs( + Optional xGustoAPIVersion, String employeeId, + Optional page, Optional per) { + GetV1EmployeesEmployeeUuidPayStubsRequest request = + GetV1EmployeesEmployeeUuidPayStubsRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .companyId(companyId) - .requestBody(requestBody) + .employeeId(employeeId) + .page(page) + .per(per) .build(); - AsyncRequestOperation operation - = new PostV1CompaniesCompanyIdPayrolls.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new GetV1EmployeesEmployeeUuidPayStubs.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Get approved payroll reversals + * Get an employee pay stub (pdf) * - *

    Returns all approved Payroll Reversals for a Company. + *

    Get an employee's pay stub for the specified payroll. By default, an application/pdf response will + * be returned. No other content types are currently supported, but may be supported in the future. * - *

    scope: `payrolls:read` + *

    scope: `pay_stubs:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder getApprovedReversals() { - return new GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder(sdkConfiguration); + public GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubRequestBuilder getPayStub() { + return new GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubRequestBuilder(sdkConfiguration); } /** - * Get approved payroll reversals + * Get an employee pay stub (pdf) * - *

    Returns all approved Payroll Reversals for a Company. + *

    Get an employee's pay stub for the specified payroll. By default, an application/pdf response will + * be returned. No other content types are currently supported, but may be supported in the future. * - *

    scope: `payrolls:read` + *

    scope: `pay_stubs:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company - * @return {@code CompletableFuture} - The async response + * @param payrollId The UUID of the payroll + * @param employeeId The UUID of the employee + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getApprovedReversals(String companyId) { - return getApprovedReversals( - companyId, Optional.empty(), Optional.empty(), - Optional.empty()); + public CompletableFuture getPayStub(String payrollId, String employeeId) { + return getPayStub(Optional.empty(), payrollId, employeeId); } /** - * Get approved payroll reversals + * Get an employee pay stub (pdf) * - *

    Returns all approved Payroll Reversals for a Company. + *

    Get an employee's pay stub for the specified payroll. By default, an application/pdf response will + * be returned. No other content types are currently supported, but may be supported in the future. * - *

    scope: `payrolls:read` + *

    scope: `pay_stubs:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company - * @param page The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - * @param per Number of objects per page. For majority of endpoints will default to 25 - * @param xGustoAPIVersion - * @return {@code CompletableFuture} - The async response + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param payrollId The UUID of the payroll + * @param employeeId The UUID of the employee + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getApprovedReversals( - String companyId, Optional page, - Optional per, Optional xGustoAPIVersion) { - GetV1CompaniesCompanyIdPayrollReversalsRequest request = - GetV1CompaniesCompanyIdPayrollReversalsRequest + public CompletableFuture getPayStub( + Optional xGustoAPIVersion, String payrollId, + String employeeId) { + GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubRequest request = + GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubRequest .builder() - .companyId(companyId) - .page(page) - .per(per) .xGustoAPIVersion(xGustoAPIVersion) + .payrollId(payrollId) + .employeeId(employeeId) .build(); - AsyncRequestOperation operation - = new GetV1CompaniesCompanyIdPayrollReversals.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStub.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Get a single payroll - * - *

    Returns a payroll. If payroll is calculated or processed, will return employee_compensations and - * totals. - * - *

    Results are paginated, with a maximum page size of 100 employee_compensations. + * Get partner disbursements for a payroll * - *

    Notes: - * * Hour and dollar amounts are returned as string representations of numeric decimals. - * * Hours are represented to the thousands place; dollar amounts are represented to the cent. - * * Every eligible compensation is returned for each employee. If no data has yet be inserted for a - * given field, it defaults to "0.00" (for fixed amounts) or "0.000" (for hours ). - * * When include parameter with benefits value is passed, employee_benefits:read scope is required to - * return benefits - * * Benefits containing PHI are only visible with the `employee_benefits:read:phi` scope + *

    Get partner disbursements for a specific payroll. * - *

    scope: `payrolls:read` + *

    scope: `partner_disbursements:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public GetV1CompaniesCompanyIdPayrollsPayrollIdRequestBuilder get() { - return new GetV1CompaniesCompanyIdPayrollsPayrollIdRequestBuilder(sdkConfiguration); + public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder getV1CompaniesCompanyIdPayrollsIdPartnerDisbursements() { + return new GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder(sdkConfiguration); } /** - * Get a single payroll + * Get partner disbursements for a payroll * - *

    Returns a payroll. If payroll is calculated or processed, will return employee_compensations and - * totals. + *

    Get partner disbursements for a specific payroll. * - *

    Results are paginated, with a maximum page size of 100 employee_compensations. + *

    scope: `partner_disbursements:read` * - *

    Notes: - * * Hour and dollar amounts are returned as string representations of numeric decimals. - * * Hours are represented to the thousands place; dollar amounts are represented to the cent. - * * Every eligible compensation is returned for each employee. If no data has yet be inserted for a - * given field, it defaults to "0.00" (for fixed amounts) or "0.000" (for hours ). - * * When include parameter with benefits value is passed, employee_benefits:read scope is required to + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param companyId The UUID of the company + * @param id The UUID of the payroll + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getV1CompaniesCompanyIdPayrollsIdPartnerDisbursements(String companyId, String id) { + return getV1CompaniesCompanyIdPayrollsIdPartnerDisbursements(Optional.empty(), companyId, id); + } + + /** + * Get partner disbursements for a payroll + * + *

    Get partner disbursements for a specific payroll. + * + *

    scope: `partner_disbursements:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company + * @param id The UUID of the payroll + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getV1CompaniesCompanyIdPayrollsIdPartnerDisbursements( + Optional xGustoAPIVersion, String companyId, + String id) { + GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest request = + GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) + .id(id) + .build(); + AsyncRequestOperation operation + = new GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursements.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Update partner disbursements for a payroll + * + *

    Update partner disbursements for a specific payroll. + * + *

    scope: `partner_disbursements:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder patchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements() { + return new PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder(sdkConfiguration); + } + + /** + * Update partner disbursements for a payroll + * + *

    Update partner disbursements for a specific payroll. + * + *

    scope: `partner_disbursements:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param companyId The UUID of the company + * @param id The UUID of the payroll + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture patchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements(String companyId, String id) { + return patchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements( + Optional.empty(), companyId, id, + Optional.empty()); + } + + /** + * Update partner disbursements for a payroll + * + *

    Update partner disbursements for a specific payroll. + * + *

    scope: `partner_disbursements:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company + * @param id The UUID of the payroll + * @param requestBody + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture patchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements( + Optional xGustoAPIVersion, String companyId, + String id, Optional requestBody) { + PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest request = + PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) + .id(id) + .requestBody(requestBody) + .build(); + AsyncRequestOperation operation + = new PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Get approved payroll reversals + * + *

    Returns all approved Payroll Reversals for a Company. + * + *

    scope: `payrolls:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder getApprovedReversals() { + return new GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder(sdkConfiguration); + } + + /** + * Get approved payroll reversals + * + *

    Returns all approved Payroll Reversals for a Company. + * + *

    scope: `payrolls:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param companyId The UUID of the company + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getApprovedReversals(String companyId) { + return getApprovedReversals( + Optional.empty(), companyId, Optional.empty(), + Optional.empty()); + } + + /** + * Get approved payroll reversals + * + *

    Returns all approved Payroll Reversals for a Company. + * + *

    scope: `payrolls:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company + * @param page The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + * @param per Number of objects per page. For majority of endpoints will default to 25 + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getApprovedReversals( + Optional xGustoAPIVersion, String companyId, + Optional page, Optional per) { + GetV1CompaniesCompanyIdPayrollReversalsRequest request = + GetV1CompaniesCompanyIdPayrollReversalsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) + .page(page) + .per(per) + .build(); + AsyncRequestOperation operation + = new GetV1CompaniesCompanyIdPayrollReversals.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Get a single payroll + * + *

    Returns a payroll. If payroll is calculated or processed, will return employee_compensations and + * totals. + * + *

    Results are paginated, with a maximum page size of 100 employee_compensations. + * + *

    Notes: + * * Hour and dollar amounts are returned as string representations of numeric decimals. + * * Hours are represented to the thousands place; dollar amounts are represented to the cent. + * * Every eligible compensation is returned for each employee. If no data has yet be inserted for a + * given field, it defaults to "0.00" (for fixed amounts) or "0.000" (for hours ). + * * When include parameter with benefits value is passed, employee_benefits:read scope is required to + * return benefits + * * Benefits containing PHI are only visible with the `employee_benefits:read:phi` scope + * + *

    scope: `payrolls:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public GetV1CompaniesCompanyIdPayrollsPayrollIdRequestBuilder get() { + return new GetV1CompaniesCompanyIdPayrollsPayrollIdRequestBuilder(sdkConfiguration); + } + + /** + * Get a single payroll + * + *

    Returns a payroll. If payroll is calculated or processed, will return employee_compensations and + * totals. + * + *

    Results are paginated, with a maximum page size of 100 employee_compensations. + * + *

    Notes: + * * Hour and dollar amounts are returned as string representations of numeric decimals. + * * Hours are represented to the thousands place; dollar amounts are represented to the cent. + * * Every eligible compensation is returned for each employee. If no data has yet be inserted for a + * given field, it defaults to "0.00" (for fixed amounts) or "0.000" (for hours ). + * * When include parameter with benefits value is passed, employee_benefits:read scope is required to * return benefits * * Benefits containing PHI are only visible with the `employee_benefits:read:phi` scope * @@ -538,7 +737,7 @@ public DeleteV1CompaniesCompanyIdPayrollsRequestBuilder delete() { */ public CompletableFuture delete(String companyId, String payrollId) { return delete( - companyId, payrollId, Optional.empty(), + Optional.empty(), companyId, payrollId, Optional.empty()); } @@ -559,22 +758,22 @@ public CompletableFuture delete(Stri * *

    If set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyId The UUID of the company * @param payrollId The UUID of the payroll * @param async When true, request an asynchronous delete of the payroll. - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @return {@code CompletableFuture} - The async response */ public CompletableFuture delete( - String companyId, String payrollId, - Optional async, Optional xGustoAPIVersion) { + Optional xGustoAPIVersion, String companyId, + String payrollId, Optional async) { DeleteV1CompaniesCompanyIdPayrollsRequest request = DeleteV1CompaniesCompanyIdPayrollsRequest .builder() + .xGustoAPIVersion(xGustoAPIVersion) .companyId(companyId) .payrollId(payrollId) .async(async) - .xGustoAPIVersion(xGustoAPIVersion) .build(); AsyncRequestOperation operation = new DeleteV1CompaniesCompanyIdPayrolls.Async(sdkConfiguration, _headers); @@ -584,375 +783,72 @@ public CompletableFuture delete( /** - * Prepare a payroll for update - * - *

    Prepares an unprocessed payroll for update, including: adding or removing eligible employees from - * the payroll, - * and updating `check_date`, `payroll_deadline`, and `payroll_status_meta` dates and times. + * Get all payrolls for a company * - *

    Use this endpoint before calling [PUT - * /v1/companies/{company_id}/payrolls/{payroll_id}](ref:put-v1-companies-company_id-payrolls). + *

    Returns a list of payrolls for a company. You can change the payrolls returned by updating the + * processing_status, payroll_types, start_date, & end_date params. * - *

    ### Notes + *

    By default, will return processed, regular payrolls for the past 6 months. * - *

    * Nullifies `calculated_at` and `totals` if the payroll was previously calculated - * * Returns the `version` parameter required for [updating the - * payroll](ref:put-v1-companies-company_id-payrolls) - * * `employees:read` scope is required to include employee compensations data in the response. - * * Results are paginated, with a maximum page size of 100 employee compensations. + *

    Notes: + * * Dollar amounts are returned as string representations of numeric decimals, are represented to the + * cent. + * * end_date can be at most 3 months in the future and start_date and end_date can't be more than 1 + * year apart. + * * Results are paginated. Maximum page size is 100 payrolls per request; the default page size is 25. * - *

    scope: `payrolls:write employees:read` + *

    scope: `payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBuilder prepare() { - return new PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBuilder(sdkConfiguration); + public GetV1CompaniesCompanyIdPayrollsRequestBuilder list() { + return new GetV1CompaniesCompanyIdPayrollsRequestBuilder(sdkConfiguration); } /** - * Prepare a payroll for update + * Get all payrolls for a company * - *

    Prepares an unprocessed payroll for update, including: adding or removing eligible employees from - * the payroll, - * and updating `check_date`, `payroll_deadline`, and `payroll_status_meta` dates and times. + *

    Returns a list of payrolls for a company. You can change the payrolls returned by updating the + * processing_status, payroll_types, start_date, & end_date params. * - *

    Use this endpoint before calling [PUT - * /v1/companies/{company_id}/payrolls/{payroll_id}](ref:put-v1-companies-company_id-payrolls). + *

    By default, will return processed, regular payrolls for the past 6 months. * - *

    ### Notes - * - *

    * Nullifies `calculated_at` and `totals` if the payroll was previously calculated - * * Returns the `version` parameter required for [updating the - * payroll](ref:put-v1-companies-company_id-payrolls) - * * `employees:read` scope is required to include employee compensations data in the response. - * * Results are paginated, with a maximum page size of 100 employee compensations. - * - *

    scope: `payrolls:write employees:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param request The request object containing all the parameters for the API call. - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture prepare(PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequest request) { - AsyncRequestOperation operation - = new PutV1CompaniesCompanyIdPayrollsPayrollIdPrepare.Async(sdkConfiguration, _headers); - return operation.doRequest(request) - .thenCompose(operation::handleResponse); - } - - - /** - * Get a single payroll receipt - * - *

    Returns a payroll receipt. - * - *

    Notes: - * * Hour and dollar amounts are returned as string representations of numeric decimals. - * * Dollar amounts are represented to the cent. - * * If no data has yet be inserted for a given field, it defaults to "0.00" (for fixed amounts). - * - *

    scope: `payrolls:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The async call builder - */ - public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder getReceipt() { - return new GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder(sdkConfiguration); - } - - /** - * Get a single payroll receipt - * - *

    Returns a payroll receipt. - * - *

    Notes: - * * Hour and dollar amounts are returned as string representations of numeric decimals. - * * Dollar amounts are represented to the cent. - * * If no data has yet be inserted for a given field, it defaults to "0.00" (for fixed amounts). + *

    Notes: + * * Dollar amounts are returned as string representations of numeric decimals, are represented to the + * cent. + * * end_date can be at most 3 months in the future and start_date and end_date can't be more than 1 + * year apart. + * * Results are paginated. Maximum page size is 100 payrolls per request; the default page size is 25. * *

    scope: `payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param payrollUuid The UUID of the payroll - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture getReceipt(String payrollUuid) { - return getReceipt(payrollUuid, Optional.empty()); - } - - /** - * Get a single payroll receipt - * - *

    Returns a payroll receipt. - * - *

    Notes: - * * Hour and dollar amounts are returned as string representations of numeric decimals. - * * Dollar amounts are represented to the cent. - * * If no data has yet be inserted for a given field, it defaults to "0.00" (for fixed amounts). - * - *

    scope: `payrolls:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param payrollUuid The UUID of the payroll - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture getReceipt(String payrollUuid, Optional xGustoAPIVersion) { - GetV1PaymentReceiptsPayrollsPayrollUuidRequest request = - GetV1PaymentReceiptsPayrollsPayrollUuidRequest - .builder() - .payrollUuid(payrollUuid) - .xGustoAPIVersion(xGustoAPIVersion) - .build(); - AsyncRequestOperation operation - = new GetV1PaymentReceiptsPayrollsPayrollUuid.Async(sdkConfiguration, _headers); - return operation.doRequest(request) - .thenCompose(operation::handleResponse); - } - - - /** - * Get all payroll blockers for a company - * - *

    Returns a list of reasons that prevent the company from running payrolls. See the [Payroll Blockers - * guide](doc:payroll-blockers) for a complete list of reasons. The list is empty if there are no - * payroll blockers. - * - *

    scope: `payrolls:run` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The async call builder - */ - public GetV1CompaniesPayrollBlockersCompanyUuidRequestBuilder getBlockers() { - return new GetV1CompaniesPayrollBlockersCompanyUuidRequestBuilder(sdkConfiguration); - } - - /** - * Get all payroll blockers for a company - * - *

    Returns a list of reasons that prevent the company from running payrolls. See the [Payroll Blockers - * guide](doc:payroll-blockers) for a complete list of reasons. The list is empty if there are no - * payroll blockers. - * - *

    scope: `payrolls:run` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param companyUuid The UUID of the company - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture getBlockers(String companyUuid) { - return getBlockers(Optional.empty(), companyUuid); - } - - /** - * Get all payroll blockers for a company - * - *

    Returns a list of reasons that prevent the company from running payrolls. See the [Payroll Blockers - * guide](doc:payroll-blockers) for a complete list of reasons. The list is empty if there are no - * payroll blockers. - * - *

    scope: `payrolls:run` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyUuid The UUID of the company - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture getBlockers(Optional xGustoAPIVersion, String companyUuid) { - GetV1CompaniesPayrollBlockersCompanyUuidRequest request = - GetV1CompaniesPayrollBlockersCompanyUuidRequest - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .companyUuid(companyUuid) - .build(); - AsyncRequestOperation operation - = new GetV1CompaniesPayrollBlockersCompanyUuid.Async(sdkConfiguration, _headers); - return operation.doRequest(request) - .thenCompose(operation::handleResponse); - } - - - /** - * Skip a payroll - * - *

    Submits a $0 payroll for employees associated with the pay schedule to skip payroll. This submission - * is asynchronous and a successful request responds with a 202 HTTP status. Upon success, the payroll - * is transitioned to the `processed` state. - * - *

    If the company is blocked from running payroll due to issues like incomplete setup, missing - * information or other compliance issues, the response will be 422 Unprocessable Entity with a - * categorization of the blockers as described in the error responses. - * - *

    scope: `payrolls:run` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The async call builder - */ - public PostCompaniesPayrollSkipCompanyUuidRequestBuilder skip() { - return new PostCompaniesPayrollSkipCompanyUuidRequestBuilder(sdkConfiguration); - } - - /** - * Skip a payroll - * - *

    Submits a $0 payroll for employees associated with the pay schedule to skip payroll. This submission - * is asynchronous and a successful request responds with a 202 HTTP status. Upon success, the payroll - * is transitioned to the `processed` state. - * - *

    If the company is blocked from running payroll due to issues like incomplete setup, missing - * information or other compliance issues, the response will be 422 Unprocessable Entity with a - * categorization of the blockers as described in the error responses. - * - *

    scope: `payrolls:run` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param companyUuid The UUID of the company - * @param requestBody - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture skip(String companyUuid, PostCompaniesPayrollSkipCompanyUuidRequestBody requestBody) { - return skip(Optional.empty(), companyUuid, requestBody); - } - - /** - * Skip a payroll - * - *

    Submits a $0 payroll for employees associated with the pay schedule to skip payroll. This submission - * is asynchronous and a successful request responds with a 202 HTTP status. Upon success, the payroll - * is transitioned to the `processed` state. - * - *

    If the company is blocked from running payroll due to issues like incomplete setup, missing - * information or other compliance issues, the response will be 422 Unprocessable Entity with a - * categorization of the blockers as described in the error responses. - * - *

    scope: `payrolls:run` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyUuid The UUID of the company - * @param requestBody - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture skip( - Optional xGustoAPIVersion, String companyUuid, - PostCompaniesPayrollSkipCompanyUuidRequestBody requestBody) { - PostCompaniesPayrollSkipCompanyUuidRequest request = - PostCompaniesPayrollSkipCompanyUuidRequest - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .companyUuid(companyUuid) - .requestBody(requestBody) - .build(); - AsyncRequestOperation operation - = new PostCompaniesPayrollSkipCompanyUuid.Async(sdkConfiguration, _headers); - return operation.doRequest(request) - .thenCompose(operation::handleResponse); - } - - - /** - * Calculate gross up for a payroll - * - *

    Calculates gross up earnings for an employee's payroll, given net earnings. This endpoint is only - * applicable to off-cycle unprocessed payrolls. - * - *

    The gross up amount must then be mapped to the corresponding fixed compensation earning type to get - * the correct payroll amount. For example, for bonus off-cycles, the gross up amount should be set - * with the Bonus earning type in the payroll `fixed_compensations` field. - * - *

    scope: `payrolls:run` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The async call builder - */ - public PostPayrollsGrossUpPayrollUuidRequestBuilder calculateGrossUp() { - return new PostPayrollsGrossUpPayrollUuidRequestBuilder(sdkConfiguration); - } - - /** - * Calculate gross up for a payroll - * - *

    Calculates gross up earnings for an employee's payroll, given net earnings. This endpoint is only - * applicable to off-cycle unprocessed payrolls. - * - *

    The gross up amount must then be mapped to the corresponding fixed compensation earning type to get - * the correct payroll amount. For example, for bonus off-cycles, the gross up amount should be set - * with the Bonus earning type in the payroll `fixed_compensations` field. - * - *

    scope: `payrolls:run` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param payrollUuid The UUID of the payroll - * @param payrollGrossUpRequest Request body for calculating gross up amount - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture calculateGrossUp(String payrollUuid, PayrollGrossUpRequest payrollGrossUpRequest) { - return calculateGrossUp(Optional.empty(), payrollUuid, payrollGrossUpRequest); - } - - /** - * Calculate gross up for a payroll - * - *

    Calculates gross up earnings for an employee's payroll, given net earnings. This endpoint is only - * applicable to off-cycle unprocessed payrolls. - * - *

    The gross up amount must then be mapped to the corresponding fixed compensation earning type to get - * the correct payroll amount. For example, for bonus off-cycles, the gross up amount should be set - * with the Bonus earning type in the payroll `fixed_compensations` field. - * - *

    scope: `payrolls:run` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param payrollUuid The UUID of the payroll - * @param payrollGrossUpRequest Request body for calculating gross up amount - * @return {@code CompletableFuture} - The async response + * @param request The request object containing all the parameters for the API call. + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture calculateGrossUp( - Optional xGustoAPIVersion, String payrollUuid, - PayrollGrossUpRequest payrollGrossUpRequest) { - PostPayrollsGrossUpPayrollUuidRequest request = - PostPayrollsGrossUpPayrollUuidRequest - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .payrollUuid(payrollUuid) - .payrollGrossUpRequest(payrollGrossUpRequest) - .build(); - AsyncRequestOperation operation - = new PostPayrollsGrossUpPayrollUuid.Async(sdkConfiguration, _headers); + public CompletableFuture list(GetV1CompaniesCompanyIdPayrollsRequest request) { + AsyncRequestOperation operation + = new GetV1CompaniesCompanyIdPayrolls.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Calculate a payroll + * Create an off-cycle payroll * - *

    Performs calculations for taxes, benefits, and deductions for an unprocessed payroll. The calculated - * payroll details provide a preview of the actual values that will be used when the payroll is run. + *

    Creates a new, unprocessed, off-cycle payroll. * - *

    This calculation is asynchronous and a successful request responds with a 202 HTTP status. To view - * the details of the calculated payroll, use the GET /v1/companies/{company_id}/payrolls/{payroll_id} - * endpoint with *include=taxes,benefits,deductions* params. + *

    ## `off_cycle_reason` + * By default: + * - External benefits and deductions will be included when the `off_cycle_reason` is set to + * `Correction`. + * - All benefits and deductions are blocked when the `off_cycle_reason` is set to `Bonus`. * - *

    If the company is blocked from running payroll due to issues like incomplete setup, missing - * information or other compliance issues, the response will be 422 Unprocessable Entity with a - * categorization of the blockers as described in the error responses. + *

    These elections can be overridden with the `skip_regular_deductions` boolean. * *

    scope: `payrolls:run` * @@ -960,49 +856,46 @@ public CompletableFuture calculateGrossU * * @return The async call builder */ - public PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateRequestBuilder calculate() { - return new PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateRequestBuilder(sdkConfiguration); + public PostV1CompaniesCompanyIdPayrollsRequestBuilder createOffCycle() { + return new PostV1CompaniesCompanyIdPayrollsRequestBuilder(sdkConfiguration); } /** - * Calculate a payroll + * Create an off-cycle payroll * - *

    Performs calculations for taxes, benefits, and deductions for an unprocessed payroll. The calculated - * payroll details provide a preview of the actual values that will be used when the payroll is run. + *

    Creates a new, unprocessed, off-cycle payroll. * - *

    This calculation is asynchronous and a successful request responds with a 202 HTTP status. To view - * the details of the calculated payroll, use the GET /v1/companies/{company_id}/payrolls/{payroll_id} - * endpoint with *include=taxes,benefits,deductions* params. + *

    ## `off_cycle_reason` + * By default: + * - External benefits and deductions will be included when the `off_cycle_reason` is set to + * `Correction`. + * - All benefits and deductions are blocked when the `off_cycle_reason` is set to `Bonus`. * - *

    If the company is blocked from running payroll due to issues like incomplete setup, missing - * information or other compliance issues, the response will be 422 Unprocessable Entity with a - * categorization of the blockers as described in the error responses. + *

    These elections can be overridden with the `skip_regular_deductions` boolean. * *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param companyId The UUID of the company - * @param payrollId The UUID of the payroll - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture calculate(String companyId, String payrollId) { - return calculate(Optional.empty(), companyId, payrollId); + public CompletableFuture createOffCycle(String companyId) { + return createOffCycle(Optional.empty(), companyId, Optional.empty()); } /** - * Calculate a payroll + * Create an off-cycle payroll * - *

    Performs calculations for taxes, benefits, and deductions for an unprocessed payroll. The calculated - * payroll details provide a preview of the actual values that will be used when the payroll is run. + *

    Creates a new, unprocessed, off-cycle payroll. * - *

    This calculation is asynchronous and a successful request responds with a 202 HTTP status. To view - * the details of the calculated payroll, use the GET /v1/companies/{company_id}/payrolls/{payroll_id} - * endpoint with *include=taxes,benefits,deductions* params. + *

    ## `off_cycle_reason` + * By default: + * - External benefits and deductions will be included when the `off_cycle_reason` is set to + * `Correction`. + * - All benefits and deductions are blocked when the `off_cycle_reason` is set to `Bonus`. * - *

    If the company is blocked from running payroll due to issues like incomplete setup, missing - * information or other compliance issues, the response will be 422 Unprocessable Entity with a - * categorization of the blockers as described in the error responses. + *

    These elections can be overridden with the `skip_regular_deductions` boolean. * *

    scope: `payrolls:run` * @@ -1010,115 +903,117 @@ public CompletableFuture} - The async response + * @param requestBody + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture calculate( - Optional xGustoAPIVersion, String companyId, - String payrollId) { - PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateRequest request = - PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateRequest + public CompletableFuture createOffCycle( + Optional xGustoAPIVersion, String companyId, + Optional requestBody) { + PostV1CompaniesCompanyIdPayrollsRequest request = + PostV1CompaniesCompanyIdPayrollsRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .companyId(companyId) - .payrollId(payrollId) + .requestBody(requestBody) .build(); - AsyncRequestOperation operation - = new PutV1CompaniesCompanyIdPayrollsPayrollIdCalculate.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new PostV1CompaniesCompanyIdPayrolls.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Submit payroll - * - *

    Submits an unprocessed payroll to be calculated and run. This submission is asynchronous and a - * successful request responds with a 202 HTTP status. Upon success, transitions the payroll to the - * `processed` state. + * Get a single payroll receipt * - *

    You should poll to ensure that payroll is processed successfully, as async errors only occur after - * async processing is complete. + *

    Returns a payroll receipt. * - *

    If the company is blocked from running payroll due to issues like incomplete setup, missing - * information or other compliance issues, the response will be 422 Unprocessable Entity with a - * categorization of the blockers as described in the error responses. + *

    Notes: + * * Hour and dollar amounts are returned as string representations of numeric decimals. + * * Dollar amounts are represented to the cent. + * * If no data has yet be inserted for a given field, it defaults to "0.00" (for fixed amounts). + * * Pagination is optional. Supplying `page` and/or `per` returns only the requested page of employee + * compensations and includes the `X-Page`, `X-Total-Count`, `X-Total-Pages`, and `X-Per-Page` response + * headers. Without either parameter, all employee compensations are returned without pagination + * headers. + * * Maximum page size is 100 employee compensations per request. * - *

    scope: `payrolls:run` + *

    scope: `payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitRequestBuilder submit() { - return new PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitRequestBuilder(sdkConfiguration); - } - - /** - * Submit payroll - * - *

    Submits an unprocessed payroll to be calculated and run. This submission is asynchronous and a - * successful request responds with a 202 HTTP status. Upon success, transitions the payroll to the - * `processed` state. + public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder getReceipt() { + return new GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder(sdkConfiguration); + } + + /** + * Get a single payroll receipt * - *

    You should poll to ensure that payroll is processed successfully, as async errors only occur after - * async processing is complete. + *

    Returns a payroll receipt. * - *

    If the company is blocked from running payroll due to issues like incomplete setup, missing - * information or other compliance issues, the response will be 422 Unprocessable Entity with a - * categorization of the blockers as described in the error responses. + *

    Notes: + * * Hour and dollar amounts are returned as string representations of numeric decimals. + * * Dollar amounts are represented to the cent. + * * If no data has yet be inserted for a given field, it defaults to "0.00" (for fixed amounts). + * * Pagination is optional. Supplying `page` and/or `per` returns only the requested page of employee + * compensations and includes the `X-Page`, `X-Total-Count`, `X-Total-Pages`, and `X-Per-Page` response + * headers. Without either parameter, all employee compensations are returned without pagination + * headers. + * * Maximum page size is 100 employee compensations per request. * - *

    scope: `payrolls:run` + *

    scope: `payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company - * @param payrollId The UUID of the payroll - * @return {@code CompletableFuture} - The async response + * @param payrollUuid The UUID of the payroll + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture submit(String companyId, String payrollId) { - return submit( - Optional.empty(), companyId, payrollId, + public CompletableFuture getReceipt(String payrollUuid) { + return getReceipt( + Optional.empty(), payrollUuid, Optional.empty(), Optional.empty()); } /** - * Submit payroll - * - *

    Submits an unprocessed payroll to be calculated and run. This submission is asynchronous and a - * successful request responds with a 202 HTTP status. Upon success, transitions the payroll to the - * `processed` state. + * Get a single payroll receipt * - *

    You should poll to ensure that payroll is processed successfully, as async errors only occur after - * async processing is complete. + *

    Returns a payroll receipt. * - *

    If the company is blocked from running payroll due to issues like incomplete setup, missing - * information or other compliance issues, the response will be 422 Unprocessable Entity with a - * categorization of the blockers as described in the error responses. + *

    Notes: + * * Hour and dollar amounts are returned as string representations of numeric decimals. + * * Dollar amounts are represented to the cent. + * * If no data has yet be inserted for a given field, it defaults to "0.00" (for fixed amounts). + * * Pagination is optional. Supplying `page` and/or `per` returns only the requested page of employee + * compensations and includes the `X-Page`, `X-Total-Count`, `X-Total-Pages`, and `X-Per-Page` response + * headers. Without either parameter, all employee compensations are returned without pagination + * headers. + * * Maximum page size is 100 employee compensations per request. * - *

    scope: `payrolls:run` + *

    scope: `payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyId The UUID of the company - * @param payrollId The UUID of the payroll - * @param requestBody - * @return {@code CompletableFuture} - The async response + * @param payrollUuid The UUID of the payroll + * @param page The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + * @param per Number of objects per page. For majority of endpoints will default to 25 + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture submit( - Optional xGustoAPIVersion, String companyId, - String payrollId, Optional requestBody) { - PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitRequest request = - PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitRequest + public CompletableFuture getReceipt( + Optional xGustoAPIVersion, String payrollUuid, + Optional page, Optional per) { + GetV1PaymentReceiptsPayrollsPayrollUuidRequest request = + GetV1PaymentReceiptsPayrollsPayrollUuidRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .companyId(companyId) - .payrollId(payrollId) - .requestBody(requestBody) + .payrollUuid(payrollUuid) + .page(page) + .per(per) .build(); - AsyncRequestOperation operation - = new PutV1CompaniesCompanyIdPayrollsPayrollIdSubmit.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new GetV1PaymentReceiptsPayrollsPayrollUuid.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } @@ -1200,340 +1095,468 @@ public CompletableFutureGet an employee's pay stub for the specified payroll. By default, an application/pdf response will - * be returned. No other content types are currently supported, but may be supported in the future. + *

    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_date`, `payroll_deadline`, and `payroll_status_meta` dates and times. * - *

    scope: `pay_stubs:read` + *

    Use this endpoint before calling [PUT + * /v1/companies/{company_id}/payrolls/{payroll_id}](ref:put-v1-companies-company_id-payrolls). + * + *

    ### Notes + * + *

    * Nullifies `calculated_at` and `totals` if the payroll was previously calculated + * * Returns the `version` parameter required for [updating the + * payroll](ref:put-v1-companies-company_id-payrolls) + * * `employees:read` scope is required to include employee compensations data in the response. + * * Results are paginated, with a maximum page size of 100 employee compensations. + * + *

    scope: `payrolls:write employees:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubRequestBuilder getPayStub() { - return new GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubRequestBuilder(sdkConfiguration); + public PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBuilder prepare() { + return new PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBuilder(sdkConfiguration); } /** - * Get an employee pay stub (pdf) + * Prepare a payroll for update * - *

    Get an employee's pay stub for the specified payroll. By default, an application/pdf response will - * be returned. No other content types are currently supported, but may be supported in the future. + *

    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_date`, `payroll_deadline`, and `payroll_status_meta` dates and times. * - *

    scope: `pay_stubs:read` + *

    Use this endpoint before calling [PUT + * /v1/companies/{company_id}/payrolls/{payroll_id}](ref:put-v1-companies-company_id-payrolls). + * + *

    ### Notes + * + *

    * Nullifies `calculated_at` and `totals` if the payroll was previously calculated + * * Returns the `version` parameter required for [updating the + * payroll](ref:put-v1-companies-company_id-payrolls) + * * `employees:read` scope is required to include employee compensations data in the response. + * * Results are paginated, with a maximum page size of 100 employee compensations. + * + *

    scope: `payrolls:write employees:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param request The request object containing all the parameters for the API call. + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture prepare(PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequest request) { + AsyncRequestOperation operation + = new PutV1CompaniesCompanyIdPayrollsPayrollIdPrepare.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Calculate a payroll + * + *

    Performs calculations for taxes, benefits, and deductions for an unprocessed payroll. The calculated + * payroll details provide a preview of the actual values that will be used when the payroll is run. + * + *

    This calculation is asynchronous and a successful request responds with a 202 HTTP status. To view + * the details of the calculated payroll, use the GET /v1/companies/{company_id}/payrolls/{payroll_id} + * endpoint with *include=taxes,benefits,deductions* params. + * + *

    If the company is blocked from running payroll due to issues like incomplete setup, missing + * information or other compliance issues, the response will be 422 Unprocessable Entity with a + * categorization of the blockers as described in the error responses. + * + *

    scope: `payrolls:run` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateRequestBuilder calculate() { + return new PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateRequestBuilder(sdkConfiguration); + } + + /** + * Calculate a payroll + * + *

    Performs calculations for taxes, benefits, and deductions for an unprocessed payroll. The calculated + * payroll details provide a preview of the actual values that will be used when the payroll is run. + * + *

    This calculation is asynchronous and a successful request responds with a 202 HTTP status. To view + * the details of the calculated payroll, use the GET /v1/companies/{company_id}/payrolls/{payroll_id} + * endpoint with *include=taxes,benefits,deductions* params. + * + *

    If the company is blocked from running payroll due to issues like incomplete setup, missing + * information or other compliance issues, the response will be 422 Unprocessable Entity with a + * categorization of the blockers as described in the error responses. + * + *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * + * @param companyId The UUID of the company * @param payrollId The UUID of the payroll - * @param employeeId The UUID of the employee - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getPayStub(String payrollId, String employeeId) { - return getPayStub(Optional.empty(), payrollId, employeeId); + public CompletableFuture calculate(String companyId, String payrollId) { + return calculate(Optional.empty(), companyId, payrollId); } /** - * Get an employee pay stub (pdf) + * Calculate a payroll * - *

    Get an employee's pay stub for the specified payroll. By default, an application/pdf response will - * be returned. No other content types are currently supported, but may be supported in the future. + *

    Performs calculations for taxes, benefits, and deductions for an unprocessed payroll. The calculated + * payroll details provide a preview of the actual values that will be used when the payroll is run. * - *

    scope: `pay_stubs:read` + *

    This calculation is asynchronous and a successful request responds with a 202 HTTP status. To view + * the details of the calculated payroll, use the GET /v1/companies/{company_id}/payrolls/{payroll_id} + * endpoint with *include=taxes,benefits,deductions* params. + * + *

    If the company is blocked from running payroll due to issues like incomplete setup, missing + * information or other compliance issues, the response will be 422 Unprocessable Entity with a + * categorization of the blockers as described in the error responses. + * + *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company * @param payrollId The UUID of the payroll - * @param employeeId The UUID of the employee - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getPayStub( - Optional xGustoAPIVersion, String payrollId, - String employeeId) { - GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubRequest request = - GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubRequest + public CompletableFuture calculate( + Optional xGustoAPIVersion, String companyId, + String payrollId) { + PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateRequest request = + PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) .payrollId(payrollId) - .employeeId(employeeId) .build(); - AsyncRequestOperation operation - = new GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStub.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new PutV1CompaniesCompanyIdPayrollsPayrollIdCalculate.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Get an employee's pay stubs - * - *

    Get an employee's pay stubs. + * Get all payroll blockers for a company * - *

    Results are returned in reverse chronological order (newest first). + *

    Returns a list of reasons that prevent the company from running payrolls. See the [Payroll Blockers + * guide](doc:payroll-blockers) for a complete list of reasons. The list is empty if there are no + * payroll blockers. * - *

    scope: `pay_stubs:read` + *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public GetV1EmployeesEmployeeUuidPayStubsRequestBuilder getPayStubs() { - return new GetV1EmployeesEmployeeUuidPayStubsRequestBuilder(sdkConfiguration); + public GetV1CompaniesPayrollBlockersCompanyUuidRequestBuilder getBlockers() { + return new GetV1CompaniesPayrollBlockersCompanyUuidRequestBuilder(sdkConfiguration); } /** - * Get an employee's pay stubs - * - *

    Get an employee's pay stubs. + * Get all payroll blockers for a company * - *

    Results are returned in reverse chronological order (newest first). + *

    Returns a list of reasons that prevent the company from running payrolls. See the [Payroll Blockers + * guide](doc:payroll-blockers) for a complete list of reasons. The list is empty if there are no + * payroll blockers. * - *

    scope: `pay_stubs:read` + *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param employeeId The UUID of the employee - * @return {@code CompletableFuture} - The async response + * @param companyUuid The UUID of the company + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getPayStubs(String employeeId) { - return getPayStubs( - Optional.empty(), employeeId, Optional.empty(), - Optional.empty()); + public CompletableFuture getBlockers(String companyUuid) { + return getBlockers(Optional.empty(), companyUuid); } /** - * Get an employee's pay stubs - * - *

    Get an employee's pay stubs. + * Get all payroll blockers for a company * - *

    Results are returned in reverse chronological order (newest first). + *

    Returns a list of reasons that prevent the company from running payrolls. See the [Payroll Blockers + * guide](doc:payroll-blockers) for a complete list of reasons. The list is empty if there are no + * payroll blockers. * - *

    scope: `pay_stubs:read` + *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param employeeId The UUID of the employee - * @param page The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - * @param per Number of objects per page. For majority of endpoints will default to 25 - * @return {@code CompletableFuture} - The async response + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getPayStubs( - Optional xGustoAPIVersion, String employeeId, - Optional page, Optional per) { - GetV1EmployeesEmployeeUuidPayStubsRequest request = - GetV1EmployeesEmployeeUuidPayStubsRequest + public CompletableFuture getBlockers(Optional xGustoAPIVersion, String companyUuid) { + GetV1CompaniesPayrollBlockersCompanyUuidRequest request = + GetV1CompaniesPayrollBlockersCompanyUuidRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .employeeId(employeeId) - .page(page) - .per(per) + .companyUuid(companyUuid) .build(); - AsyncRequestOperation operation - = new GetV1EmployeesEmployeeUuidPayStubs.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new GetV1CompaniesPayrollBlockersCompanyUuid.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Generate printable payroll checks (pdf) + * Skip a payroll * - *

    This endpoint initiates the generation of employee checks for the payroll specified by payroll_uuid. - * A generation status and corresponding request_uuid will be returned. Use the generated document GET - * endpoint with document_type: `printable_payroll_checks` and request_uuid to poll the check - * generation process and retrieve the generated check URL upon completion. + *

    Submits a $0 payroll for employees associated with the pay schedule to skip payroll. This submission + * is asynchronous and a successful request responds with a 202 HTTP status. Upon success, the payroll + * is transitioned to the `processed` state. * - *

    scope: `generated_documents:write` + *

    If the company is blocked from running payroll due to issues like incomplete setup, missing + * information or other compliance issues, the response will be 422 Unprocessable Entity with a + * categorization of the blockers as described in the error responses. + * + *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksRequestBuilder generatePrintableChecks() { - return new PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksRequestBuilder(sdkConfiguration); + public PostCompaniesPayrollSkipCompanyUuidRequestBuilder skip() { + return new PostCompaniesPayrollSkipCompanyUuidRequestBuilder(sdkConfiguration); } /** - * Generate printable payroll checks (pdf) + * Skip a payroll * - *

    This endpoint initiates the generation of employee checks for the payroll specified by payroll_uuid. - * A generation status and corresponding request_uuid will be returned. Use the generated document GET - * endpoint with document_type: `printable_payroll_checks` and request_uuid to poll the check - * generation process and retrieve the generated check URL upon completion. + *

    Submits a $0 payroll for employees associated with the pay schedule to skip payroll. This submission + * is asynchronous and a successful request responds with a 202 HTTP status. Upon success, the payroll + * is transitioned to the `processed` state. * - *

    scope: `generated_documents:write` + *

    If the company is blocked from running payroll due to issues like incomplete setup, missing + * information or other compliance issues, the response will be 422 Unprocessable Entity with a + * categorization of the blockers as described in the error responses. + * + *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param payrollUuid The UUID of the payroll - * @param printablePayrollChecksBody Request body for generating printable payroll checks. - * @return {@code CompletableFuture} - The async response + * @param companyUuid The UUID of the company + * @param requestBody + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture generatePrintableChecks(String payrollUuid, PrintablePayrollChecksBody printablePayrollChecksBody) { - return generatePrintableChecks(Optional.empty(), payrollUuid, printablePayrollChecksBody); + public CompletableFuture skip(String companyUuid, PostCompaniesPayrollSkipCompanyUuidRequestBody requestBody) { + return skip(Optional.empty(), companyUuid, requestBody); } /** - * Generate printable payroll checks (pdf) + * Skip a payroll * - *

    This endpoint initiates the generation of employee checks for the payroll specified by payroll_uuid. - * A generation status and corresponding request_uuid will be returned. Use the generated document GET - * endpoint with document_type: `printable_payroll_checks` and request_uuid to poll the check - * generation process and retrieve the generated check URL upon completion. + *

    Submits a $0 payroll for employees associated with the pay schedule to skip payroll. This submission + * is asynchronous and a successful request responds with a 202 HTTP status. Upon success, the payroll + * is transitioned to the `processed` state. * - *

    scope: `generated_documents:write` + *

    If the company is blocked from running payroll due to issues like incomplete setup, missing + * information or other compliance issues, the response will be 422 Unprocessable Entity with a + * categorization of the blockers as described in the error responses. + * + *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param payrollUuid The UUID of the payroll - * @param printablePayrollChecksBody Request body for generating printable payroll checks. - * @return {@code CompletableFuture} - The async response + * @param companyUuid The UUID of the company + * @param requestBody + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture generatePrintableChecks( - Optional xGustoAPIVersion, String payrollUuid, - PrintablePayrollChecksBody printablePayrollChecksBody) { - PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksRequest request = - PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksRequest + public CompletableFuture skip( + Optional xGustoAPIVersion, String companyUuid, + PostCompaniesPayrollSkipCompanyUuidRequestBody requestBody) { + PostCompaniesPayrollSkipCompanyUuidRequest request = + PostCompaniesPayrollSkipCompanyUuidRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .payrollUuid(payrollUuid) - .printablePayrollChecksBody(printablePayrollChecksBody) + .companyUuid(companyUuid) + .requestBody(requestBody) .build(); - AsyncRequestOperation operation - = new PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecks.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new PostCompaniesPayrollSkipCompanyUuid.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Get partner disbursements for a payroll + * Submit payroll * - *

    Get partner disbursements for a specific payroll. + *

    Submits an unprocessed payroll to be calculated and run. This submission is asynchronous and a + * successful request responds with a 202 HTTP status. Upon success, transitions the payroll to the + * `processed` state. * - *

    scope: `partner_disbursements:read` + *

    You should poll to ensure that payroll is processed successfully, as async errors only occur after + * async processing is complete. + * + *

    If the company is blocked from running payroll due to issues like incomplete setup, missing + * information or other compliance issues, the response will be 422 Unprocessable Entity with a + * categorization of the blockers as described in the error responses. + * + *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder getV1CompaniesCompanyIdPayrollsIdPartnerDisbursements() { - return new GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder(sdkConfiguration); + public PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitRequestBuilder submit() { + return new PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitRequestBuilder(sdkConfiguration); } /** - * Get partner disbursements for a payroll + * Submit payroll * - *

    Get partner disbursements for a specific payroll. + *

    Submits an unprocessed payroll to be calculated and run. This submission is asynchronous and a + * successful request responds with a 202 HTTP status. Upon success, transitions the payroll to the + * `processed` state. * - *

    scope: `partner_disbursements:read` + *

    You should poll to ensure that payroll is processed successfully, as async errors only occur after + * async processing is complete. + * + *

    If the company is blocked from running payroll due to issues like incomplete setup, missing + * information or other compliance issues, the response will be 422 Unprocessable Entity with a + * categorization of the blockers as described in the error responses. + * + *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param companyId The UUID of the company - * @param id The UUID of the payroll - * @return {@code CompletableFuture} - The async response + * @param payrollId The UUID of the payroll + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getV1CompaniesCompanyIdPayrollsIdPartnerDisbursements(String companyId, String id) { - return getV1CompaniesCompanyIdPayrollsIdPartnerDisbursements(companyId, id, Optional.empty()); + public CompletableFuture submit(String companyId, String payrollId) { + return submit( + Optional.empty(), companyId, payrollId, + Optional.empty()); } /** - * Get partner disbursements for a payroll + * Submit payroll * - *

    Get partner disbursements for a specific payroll. + *

    Submits an unprocessed payroll to be calculated and run. This submission is asynchronous and a + * successful request responds with a 202 HTTP status. Upon success, transitions the payroll to the + * `processed` state. * - *

    scope: `partner_disbursements:read` + *

    You should poll to ensure that payroll is processed successfully, as async errors only occur after + * async processing is complete. + * + *

    If the company is blocked from running payroll due to issues like incomplete setup, missing + * information or other compliance issues, the response will be 422 Unprocessable Entity with a + * categorization of the blockers as described in the error responses. + * + *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company - * @param id The UUID of the payroll * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @return {@code CompletableFuture} - The async response + * @param companyId The UUID of the company + * @param payrollId The UUID of the payroll + * @param requestBody + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getV1CompaniesCompanyIdPayrollsIdPartnerDisbursements( - String companyId, String id, - Optional xGustoAPIVersion) { - GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest request = - GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest + public CompletableFuture submit( + Optional xGustoAPIVersion, String companyId, + String payrollId, Optional requestBody) { + PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitRequest request = + PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitRequest .builder() - .companyId(companyId) - .id(id) .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) + .payrollId(payrollId) + .requestBody(requestBody) .build(); - AsyncRequestOperation operation - = new GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursements.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new PutV1CompaniesCompanyIdPayrollsPayrollIdSubmit.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Update partner disbursements for a payroll + * Calculate gross up for a payroll * - *

    Update partner disbursements for a specific payroll. + *

    Calculates gross up earnings for an employee's payroll, given net earnings. This endpoint is only + * applicable to off-cycle unprocessed payrolls. * - *

    scope: `partner_disbursements:write` + *

    The gross up amount must then be mapped to the corresponding fixed compensation earning type to get + * the correct payroll amount. For example, for bonus off-cycles, the gross up amount should be set + * with the Bonus earning type in the payroll `fixed_compensations` field. + * + *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder patchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements() { - return new PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder(sdkConfiguration); + public PostPayrollsGrossUpPayrollUuidRequestBuilder calculateGrossUp() { + return new PostPayrollsGrossUpPayrollUuidRequestBuilder(sdkConfiguration); } /** - * Update partner disbursements for a payroll + * Calculate gross up for a payroll * - *

    Update partner disbursements for a specific payroll. + *

    Calculates gross up earnings for an employee's payroll, given net earnings. This endpoint is only + * applicable to off-cycle unprocessed payrolls. * - *

    scope: `partner_disbursements:write` + *

    The gross up amount must then be mapped to the corresponding fixed compensation earning type to get + * the correct payroll amount. For example, for bonus off-cycles, the gross up amount should be set + * with the Bonus earning type in the payroll `fixed_compensations` field. + * + *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company - * @param id The UUID of the payroll - * @return {@code CompletableFuture} - The async response + * @param payrollUuid The UUID of the payroll + * @param payrollGrossUpRequest Request body for calculating gross up amount + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture patchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements(String companyId, String id) { - return patchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements( - companyId, id, Optional.empty(), - Optional.empty()); + public CompletableFuture calculateGrossUp(String payrollUuid, PayrollGrossUpRequest payrollGrossUpRequest) { + return calculateGrossUp(Optional.empty(), payrollUuid, payrollGrossUpRequest); } /** - * Update partner disbursements for a payroll + * Calculate gross up for a payroll * - *

    Update partner disbursements for a specific payroll. + *

    Calculates gross up earnings for an employee's payroll, given net earnings. This endpoint is only + * applicable to off-cycle unprocessed payrolls. * - *

    scope: `partner_disbursements:write` + *

    The gross up amount must then be mapped to the corresponding fixed compensation earning type to get + * the correct payroll amount. For example, for bonus off-cycles, the gross up amount should be set + * with the Bonus earning type in the payroll `fixed_compensations` field. + * + *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company - * @param id The UUID of the payroll * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param requestBody - * @return {@code CompletableFuture} - The async response + * @param payrollUuid The UUID of the payroll + * @param payrollGrossUpRequest Request body for calculating gross up amount + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture patchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements( - String companyId, String id, - Optional xGustoAPIVersion, Optional requestBody) { - PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest request = - PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest + public CompletableFuture calculateGrossUp( + Optional xGustoAPIVersion, String payrollUuid, + PayrollGrossUpRequest payrollGrossUpRequest) { + PostPayrollsGrossUpPayrollUuidRequest request = + PostPayrollsGrossUpPayrollUuidRequest .builder() - .companyId(companyId) - .id(id) .xGustoAPIVersion(xGustoAPIVersion) - .requestBody(requestBody) + .payrollUuid(payrollUuid) + .payrollGrossUpRequest(payrollGrossUpRequest) .build(); - AsyncRequestOperation operation - = new PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new PostPayrollsGrossUpPayrollUuid.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncPeopleBatches.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncPeopleBatches.java index d86811348..cc3181e7a 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncPeopleBatches.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncPeopleBatches.java @@ -75,7 +75,7 @@ public PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder postV1CompaniesCompan * @return {@code CompletableFuture} - The async response */ public CompletableFuture postV1CompaniesCompanyIdPeopleBatches(String companyId, PostV1CompaniesCompanyIdPeopleBatchesRequestBody requestBody) { - return postV1CompaniesCompanyIdPeopleBatches(companyId, Optional.empty(), requestBody); + return postV1CompaniesCompanyIdPeopleBatches(Optional.empty(), companyId, requestBody); } /** @@ -89,19 +89,19 @@ public CompletableFuture postV1Co * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company * @param requestBody * @return {@code CompletableFuture} - The async response */ public CompletableFuture postV1CompaniesCompanyIdPeopleBatches( - String companyId, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String companyId, PostV1CompaniesCompanyIdPeopleBatchesRequestBody requestBody) { PostV1CompaniesCompanyIdPeopleBatchesRequest request = PostV1CompaniesCompanyIdPeopleBatchesRequest .builder() - .companyId(companyId) .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) .requestBody(requestBody) .build(); AsyncRequestOperation operation @@ -143,7 +143,7 @@ public GetV1PeopleBatchesPeopleBatchUuidRequestBuilder getV1PeopleBatchesPeopleB * @return {@code CompletableFuture} - The async response */ public CompletableFuture getV1PeopleBatchesPeopleBatchUuid(String peopleBatchUuid) { - return getV1PeopleBatchesPeopleBatchUuid(peopleBatchUuid, Optional.empty()); + return getV1PeopleBatchesPeopleBatchUuid(Optional.empty(), peopleBatchUuid); } /** @@ -157,16 +157,16 @@ public CompletableFuture getV1PeopleB * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param peopleBatchUuid The UUID of the people batch * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param peopleBatchUuid The UUID of the people batch * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getV1PeopleBatchesPeopleBatchUuid(String peopleBatchUuid, Optional xGustoAPIVersion) { + public CompletableFuture getV1PeopleBatchesPeopleBatchUuid(Optional xGustoAPIVersion, String peopleBatchUuid) { GetV1PeopleBatchesPeopleBatchUuidRequest request = GetV1PeopleBatchesPeopleBatchUuidRequest .builder() - .peopleBatchUuid(peopleBatchUuid) .xGustoAPIVersion(xGustoAPIVersion) + .peopleBatchUuid(peopleBatchUuid) .build(); AsyncRequestOperation operation = new GetV1PeopleBatchesPeopleBatchUuid.Async(sdkConfiguration, _headers); diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncReports.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncReports.java index 78cf12ca1..f3d877c04 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncReports.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncReports.java @@ -5,16 +5,23 @@ import static com.gusto.embedded_api.operations.Operations.AsyncRequestOperation; +import com.gusto.embedded_api.models.components.BulkReportBody; import com.gusto.embedded_api.models.components.CreateReportBody; import com.gusto.embedded_api.models.components.GeneralLedgerReportBody; import com.gusto.embedded_api.models.operations.GetCompaniesCompanyUuidReportTemplatesReportTypeHeaderXGustoAPIVersion; import com.gusto.embedded_api.models.operations.GetCompaniesCompanyUuidReportTemplatesReportTypeRequest; import com.gusto.embedded_api.models.operations.GetReportsRequestUuidHeaderXGustoAPIVersion; import com.gusto.embedded_api.models.operations.GetReportsRequestUuidRequest; +import com.gusto.embedded_api.models.operations.GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetV1BulkReportsRequestUuidRequest; +import com.gusto.embedded_api.models.operations.GetV1BulkReportsRequestUuidSecurity; import com.gusto.embedded_api.models.operations.PostCompaniesCompanyUuidReportsHeaderXGustoAPIVersion; import com.gusto.embedded_api.models.operations.PostCompaniesCompanyUuidReportsRequest; import com.gusto.embedded_api.models.operations.PostPayrollsPayrollUuidReportsGeneralLedgerHeaderXGustoAPIVersion; import com.gusto.embedded_api.models.operations.PostPayrollsPayrollUuidReportsGeneralLedgerRequest; +import com.gusto.embedded_api.models.operations.PostV1BulkReportsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PostV1BulkReportsRequest; +import com.gusto.embedded_api.models.operations.PostV1BulkReportsSecurity; import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageHeaderXGustoAPIVersion; import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequest; import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequestBody; @@ -22,16 +29,22 @@ import com.gusto.embedded_api.models.operations.async.GetCompaniesCompanyUuidReportTemplatesReportTypeResponse; import com.gusto.embedded_api.models.operations.async.GetReportsRequestUuidRequestBuilder; import com.gusto.embedded_api.models.operations.async.GetReportsRequestUuidResponse; +import com.gusto.embedded_api.models.operations.async.GetV1BulkReportsRequestUuidRequestBuilder; +import com.gusto.embedded_api.models.operations.async.GetV1BulkReportsRequestUuidResponse; import com.gusto.embedded_api.models.operations.async.PostCompaniesCompanyUuidReportsRequestBuilder; import com.gusto.embedded_api.models.operations.async.PostCompaniesCompanyUuidReportsResponse; import com.gusto.embedded_api.models.operations.async.PostPayrollsPayrollUuidReportsGeneralLedgerRequestBuilder; import com.gusto.embedded_api.models.operations.async.PostPayrollsPayrollUuidReportsGeneralLedgerResponse; +import com.gusto.embedded_api.models.operations.async.PostV1BulkReportsRequestBuilder; +import com.gusto.embedded_api.models.operations.async.PostV1BulkReportsResponse; import com.gusto.embedded_api.models.operations.async.PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequestBuilder; import com.gusto.embedded_api.models.operations.async.PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageResponse; import com.gusto.embedded_api.operations.GetCompaniesCompanyUuidReportTemplatesReportType; import com.gusto.embedded_api.operations.GetReportsRequestUuid; +import com.gusto.embedded_api.operations.GetV1BulkReportsRequestUuid; import com.gusto.embedded_api.operations.PostCompaniesCompanyUuidReports; import com.gusto.embedded_api.operations.PostPayrollsPayrollUuidReportsGeneralLedger; +import com.gusto.embedded_api.operations.PostV1BulkReports; import com.gusto.embedded_api.operations.PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage; import com.gusto.embedded_api.utils.Headers; import java.lang.String; @@ -59,6 +72,280 @@ public Reports sync() { } + /** + * Create a bulk report batch + * + *

    Triggers asynchronous generation of up to 25 reports across companies the partner is mapped to. Each + * `batch` item is a `custom_report` (same parameters as [create a custom + * report](https://docs.gusto.com/embedded-payroll/reference/post-companies-company_uuid-reports)) or a + * `general_ledger` report (same parameters as [create a general ledger + * report](https://docs.gusto.com/embedded-payroll/reference/post-payrolls-payroll_uuid-reports-general_ledger)), + * keyed by `company_uuid` and `report_type`. Items are validated synchronously; if any is invalid, the + * entire batch is rejected. + * + *

    Poll the [bulk report GET + * endpoint](https://docs.gusto.com/embedded-payroll/reference/get-v1-bulk_reports-request_uuid) with + * the returned `uuid` for status and the report URL, which is valid for 10 minutes. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `company_reports:write` + * + * @return The async call builder + */ + public PostV1BulkReportsRequestBuilder postV1BulkReports() { + return new PostV1BulkReportsRequestBuilder(sdkConfiguration); + } + + /** + * Create a bulk report batch + * + *

    Triggers asynchronous generation of up to 25 reports across companies the partner is mapped to. Each + * `batch` item is a `custom_report` (same parameters as [create a custom + * report](https://docs.gusto.com/embedded-payroll/reference/post-companies-company_uuid-reports)) or a + * `general_ledger` report (same parameters as [create a general ledger + * report](https://docs.gusto.com/embedded-payroll/reference/post-payrolls-payroll_uuid-reports-general_ledger)), + * keyed by `company_uuid` and `report_type`. Items are validated synchronously; if any is invalid, the + * entire batch is rejected. + * + *

    Poll the [bulk report GET + * endpoint](https://docs.gusto.com/embedded-payroll/reference/get-v1-bulk_reports-request_uuid) with + * the returned `uuid` for status and the report URL, which is valid for 10 minutes. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `company_reports:write` + * + * @param security The security details to use for authentication. + * @param bulkReportBody Each `batch` item is a `custom_report` or a `general_ledger` report. + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture postV1BulkReports(PostV1BulkReportsSecurity security, BulkReportBody bulkReportBody) { + return postV1BulkReports(security, Optional.empty(), bulkReportBody); + } + + /** + * Create a bulk report batch + * + *

    Triggers asynchronous generation of up to 25 reports across companies the partner is mapped to. Each + * `batch` item is a `custom_report` (same parameters as [create a custom + * report](https://docs.gusto.com/embedded-payroll/reference/post-companies-company_uuid-reports)) or a + * `general_ledger` report (same parameters as [create a general ledger + * report](https://docs.gusto.com/embedded-payroll/reference/post-payrolls-payroll_uuid-reports-general_ledger)), + * keyed by `company_uuid` and `report_type`. Items are validated synchronously; if any is invalid, the + * entire batch is rejected. + * + *

    Poll the [bulk report GET + * endpoint](https://docs.gusto.com/embedded-payroll/reference/get-v1-bulk_reports-request_uuid) with + * the returned `uuid` for status and the report URL, which is valid for 10 minutes. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `company_reports:write` + * + * @param security The security details to use for authentication. + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param bulkReportBody Each `batch` item is a `custom_report` or a `general_ledger` report. + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture postV1BulkReports( + PostV1BulkReportsSecurity security, Optional xGustoAPIVersion, + BulkReportBody bulkReportBody) { + PostV1BulkReportsRequest request = + PostV1BulkReportsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .bulkReportBody(bulkReportBody) + .build(); + AsyncRequestOperation operation + = new PostV1BulkReports.Async(sdkConfiguration, security, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Get a bulk report batch + * + *

    Get a bulk report batch's status and results given the `request_uuid`. While in progress, only batch + * metadata is returned; once complete, it also includes a signed `report_url` (a zip of all generated + * reports, valid for 10 minutes) and a per-company breakdown. + * + *

    Reports containing PHI are inaccessible with `company_reports:read:tier_2_only` data scope. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `company_reports:read` + * + * @return The async call builder + */ + public GetV1BulkReportsRequestUuidRequestBuilder getV1BulkReportsRequestUuid() { + return new GetV1BulkReportsRequestUuidRequestBuilder(sdkConfiguration); + } + + /** + * Get a bulk report batch + * + *

    Get a bulk report batch's status and results given the `request_uuid`. While in progress, only batch + * metadata is returned; once complete, it also includes a signed `report_url` (a zip of all generated + * reports, valid for 10 minutes) and a per-company breakdown. + * + *

    Reports containing PHI are inaccessible with `company_reports:read:tier_2_only` data scope. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `company_reports:read` + * + * @param security The security details to use for authentication. + * @param requestUuid The UUID of the bulk report batch. + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getV1BulkReportsRequestUuid(GetV1BulkReportsRequestUuidSecurity security, String requestUuid) { + return getV1BulkReportsRequestUuid(security, Optional.empty(), requestUuid); + } + + /** + * Get a bulk report batch + * + *

    Get a bulk report batch's status and results given the `request_uuid`. While in progress, only batch + * metadata is returned; once complete, it also includes a signed `report_url` (a zip of all generated + * reports, valid for 10 minutes) and a per-company breakdown. + * + *

    Reports containing PHI are inaccessible with `company_reports:read:tier_2_only` data scope. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `company_reports:read` + * + * @param security The security details to use for authentication. + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param requestUuid The UUID of the bulk report batch. + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getV1BulkReportsRequestUuid( + GetV1BulkReportsRequestUuidSecurity security, Optional xGustoAPIVersion, + String requestUuid) { + GetV1BulkReportsRequestUuidRequest request = + GetV1BulkReportsRequestUuidRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .requestUuid(requestUuid) + .build(); + AsyncRequestOperation operation + = new GetV1BulkReportsRequestUuid.Async(sdkConfiguration, security, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Create an employees annual FICA wage report + * + *

    Generates a report containing annual FICA (Federal Insurance Contributions Act) wage data for all + * employees in a company over a specified year range. + * + *

    This report provides detailed wage information subject to Social Security and Medicare taxes, useful + * for benefits integrations that need to verify employee earnings for compliance and benefit + * calculations. + * + *

    The report is generated asynchronously. After making this request, you will receive a `request_uuid` + * which can be used to poll the [Get a report](ref:get-v1-reports-request_uuid) endpoint to check the + * status and retrieve the report when complete. + * + *

    scope: `company_reports:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequestBuilder postV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage() { + return new PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequestBuilder(sdkConfiguration); + } + + /** + * Create an employees annual FICA wage report + * + *

    Generates a report containing annual FICA (Federal Insurance Contributions Act) wage data for all + * employees in a company over a specified year range. + * + *

    This report provides detailed wage information subject to Social Security and Medicare taxes, useful + * for benefits integrations that need to verify employee earnings for compliance and benefit + * calculations. + * + *

    The report is generated asynchronously. After making this request, you will receive a `request_uuid` + * which can be used to poll the [Get a report](ref:get-v1-reports-request_uuid) endpoint to check the + * status and retrieve the report when complete. + * + *

    scope: `company_reports:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param companyId The UUID of the company + * @param requestBody + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture postV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage(String companyId, PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequestBody requestBody) { + return postV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage(Optional.empty(), companyId, requestBody); + } + + /** + * Create an employees annual FICA wage report + * + *

    Generates a report containing annual FICA (Federal Insurance Contributions Act) wage data for all + * employees in a company over a specified year range. + * + *

    This report provides detailed wage information subject to Social Security and Medicare taxes, useful + * for benefits integrations that need to verify employee earnings for compliance and benefit + * calculations. + * + *

    The report is generated asynchronously. After making this request, you will receive a `request_uuid` + * which can be used to poll the [Get a report](ref:get-v1-reports-request_uuid) endpoint to check the + * status and retrieve the report when complete. + * + *

    scope: `company_reports:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company + * @param requestBody + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture postV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage( + Optional xGustoAPIVersion, String companyId, + PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequestBody requestBody) { + PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequest request = + PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) + .requestBody(requestBody) + .build(); + AsyncRequestOperation operation + = new PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + /** * Create a custom report * @@ -350,94 +637,4 @@ public CompletableFutureGenerates a report containing annual FICA (Federal Insurance Contributions Act) wage data for all - * employees in a company over a specified year range. - * - *

    This report provides detailed wage information subject to Social Security and Medicare taxes, useful - * for benefits integrations that need to verify employee earnings for compliance and benefit - * calculations. - * - *

    The report is generated asynchronously. After making this request, you will receive a `request_uuid` - * which can be used to poll the [Get a report](ref:get-v1-reports-request_uuid) endpoint to check the - * status and retrieve the report when complete. - * - *

    scope: `company_reports:write` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The async call builder - */ - public PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequestBuilder postV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage() { - return new PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequestBuilder(sdkConfiguration); - } - - /** - * Create an employees annual FICA wage report - * - *

    Generates a report containing annual FICA (Federal Insurance Contributions Act) wage data for all - * employees in a company over a specified year range. - * - *

    This report provides detailed wage information subject to Social Security and Medicare taxes, useful - * for benefits integrations that need to verify employee earnings for compliance and benefit - * calculations. - * - *

    The report is generated asynchronously. After making this request, you will receive a `request_uuid` - * which can be used to poll the [Get a report](ref:get-v1-reports-request_uuid) endpoint to check the - * status and retrieve the report when complete. - * - *

    scope: `company_reports:write` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param companyId The UUID of the company - * @param requestBody - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture postV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage(String companyId, PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequestBody requestBody) { - return postV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage(Optional.empty(), companyId, requestBody); - } - - /** - * Create an employees annual FICA wage report - * - *

    Generates a report containing annual FICA (Federal Insurance Contributions Act) wage data for all - * employees in a company over a specified year range. - * - *

    This report provides detailed wage information subject to Social Security and Medicare taxes, useful - * for benefits integrations that need to verify employee earnings for compliance and benefit - * calculations. - * - *

    The report is generated asynchronously. After making this request, you will receive a `request_uuid` - * which can be used to poll the [Get a report](ref:get-v1-reports-request_uuid) endpoint to check the - * status and retrieve the report when complete. - * - *

    scope: `company_reports:write` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyId The UUID of the company - * @param requestBody - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture postV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage( - Optional xGustoAPIVersion, String companyId, - PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequestBody requestBody) { - PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequest request = - PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequest - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .companyId(companyId) - .requestBody(requestBody) - .build(); - AsyncRequestOperation operation - = new PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage.Async(sdkConfiguration, _headers); - return operation.doRequest(request) - .thenCompose(operation::handleResponse); - } - } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncReverseWireTransactions.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncReverseWireTransactions.java new file mode 100644 index 000000000..72b41f48c --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncReverseWireTransactions.java @@ -0,0 +1,76 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api; + +import static com.gusto.embedded_api.operations.Operations.AsyncRequestOperation; + +import com.gusto.embedded_api.models.operations.GetReverseWireTransactionsRequest; +import com.gusto.embedded_api.models.operations.async.GetReverseWireTransactionsRequestBuilder; +import com.gusto.embedded_api.models.operations.async.GetReverseWireTransactionsResponse; +import com.gusto.embedded_api.operations.GetReverseWireTransactions; +import com.gusto.embedded_api.utils.Headers; +import java.util.concurrent.CompletableFuture; + + +public class AsyncReverseWireTransactions { + private static final Headers _headers = Headers.EMPTY; + private final SDKConfiguration sdkConfiguration; + private final ReverseWireTransactions syncSDK; + + AsyncReverseWireTransactions(ReverseWireTransactions syncSDK, SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + this.syncSDK = syncSDK; + } + + /** + * Switches to the sync SDK. + * + * @return The sync SDK + */ + public ReverseWireTransactions sync() { + return syncSDK; + } + + + /** + * Get all reverse wire transactions for a company + * + *

    Returns a paginated list of reverse wire (drawdown) transactions for a company. Reverse wires are + * debit transactions initiated by Gusto to pull funds from a partner's bank account to cover payroll + * or contractor payment obligations. Pagination is returned via the `x-page`, `x-per-page`, + * `x-total-count`, and `x-total-pages` response headers. + * + *

    scope: `reverse_wire_transactions:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public GetReverseWireTransactionsRequestBuilder getReverseWireTransactions() { + return new GetReverseWireTransactionsRequestBuilder(sdkConfiguration); + } + + /** + * Get all reverse wire transactions for a company + * + *

    Returns a paginated list of reverse wire (drawdown) transactions for a company. Reverse wires are + * debit transactions initiated by Gusto to pull funds from a partner's bank account to cover payroll + * or contractor payment obligations. Pagination is returned via the `x-page`, `x-per-page`, + * `x-total-count`, and `x-total-pages` response headers. + * + *

    scope: `reverse_wire_transactions:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param request The request object containing all the parameters for the API call. + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getReverseWireTransactions(GetReverseWireTransactionsRequest request) { + AsyncRequestOperation operation + = new GetReverseWireTransactions.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncSignatories.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncSignatories.java index 1461487b8..0efbacd4f 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncSignatories.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncSignatories.java @@ -93,7 +93,7 @@ public GetV1CompaniesCompanyUuidSignatoriesRequestBuilder list() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture list(String companyUuid) { - return list(companyUuid, Optional.empty()); + return list(Optional.empty(), companyUuid); } /** @@ -108,16 +108,16 @@ public CompletableFuture list(Stri * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company * @return {@code CompletableFuture} - The async response */ - public CompletableFuture list(String companyUuid, Optional xGustoAPIVersion) { + public CompletableFuture list(Optional xGustoAPIVersion, String companyUuid) { GetV1CompaniesCompanyUuidSignatoriesRequest request = GetV1CompaniesCompanyUuidSignatoriesRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) .build(); AsyncRequestOperation operation = new GetV1CompaniesCompanyUuidSignatories.Async(sdkConfiguration, _headers); @@ -183,7 +183,7 @@ public PostV1CompanySignatoriesRequestBuilder create() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture create(String companyUuid, SignatoryCreateRequest signatoryCreateRequest) { - return create(companyUuid, Optional.empty(), signatoryCreateRequest); + return create(Optional.empty(), companyUuid, signatoryCreateRequest); } /** @@ -209,19 +209,19 @@ public CompletableFuture create(String company * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company * @param signatoryCreateRequest Request body for creating a signatory with complete information. All listed required fields must be provided. * @return {@code CompletableFuture} - The async response */ public CompletableFuture create( - String companyUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String companyUuid, SignatoryCreateRequest signatoryCreateRequest) { PostV1CompanySignatoriesRequest request = PostV1CompanySignatoriesRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) .signatoryCreateRequest(signatoryCreateRequest) .build(); AsyncRequestOperation operation @@ -272,7 +272,7 @@ public PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder invite() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture invite(String companyUuid, SignatoryInviteRequest signatoryInviteRequest) { - return invite(companyUuid, Optional.empty(), signatoryInviteRequest); + return invite(Optional.empty(), companyUuid, signatoryInviteRequest); } /** @@ -290,19 +290,19 @@ public CompletableFuture in * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company * @param signatoryInviteRequest Request body for inviting a signatory. * @return {@code CompletableFuture} - The async response */ public CompletableFuture invite( - String companyUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String companyUuid, SignatoryInviteRequest signatoryInviteRequest) { PostV1CompaniesCompanyUuidSignatoriesInviteRequest request = PostV1CompaniesCompanyUuidSignatoriesInviteRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) .signatoryInviteRequest(signatoryInviteRequest) .build(); AsyncRequestOperation operation @@ -359,7 +359,7 @@ public CompletableFutureIf set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyUuid The UUID of the company * @param signatoryUuid The UUID of the signatory - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param signatoryUpdateRequest Request body for updating a signatory. Email cannot be updated. * @return {@code CompletableFuture} - The async response */ public CompletableFuture update( - String companyUuid, String signatoryUuid, - Optional xGustoAPIVersion, SignatoryUpdateRequest signatoryUpdateRequest) { + Optional xGustoAPIVersion, String companyUuid, + String signatoryUuid, SignatoryUpdateRequest signatoryUpdateRequest) { PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest request = PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest .builder() + .xGustoAPIVersion(xGustoAPIVersion) .companyUuid(companyUuid) .signatoryUuid(signatoryUuid) - .xGustoAPIVersion(xGustoAPIVersion) .signatoryUpdateRequest(signatoryUpdateRequest) .build(); AsyncRequestOperation operation @@ -438,7 +438,7 @@ public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder delete * @return {@code CompletableFuture} - The async response */ public CompletableFuture delete(String companyUuid, String signatoryUuid) { - return delete(companyUuid, signatoryUuid, Optional.empty()); + return delete(Optional.empty(), companyUuid, signatoryUuid); } /** @@ -453,20 +453,20 @@ public CompletableFutureIf set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyUuid The UUID of the company * @param signatoryUuid The UUID of the signatory - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @return {@code CompletableFuture} - The async response */ public CompletableFuture delete( - String companyUuid, String signatoryUuid, - Optional xGustoAPIVersion) { + Optional xGustoAPIVersion, String companyUuid, + String signatoryUuid) { DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest request = DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest .builder() + .xGustoAPIVersion(xGustoAPIVersion) .companyUuid(companyUuid) .signatoryUuid(signatoryUuid) - .xGustoAPIVersion(xGustoAPIVersion) .build(); AsyncRequestOperation operation = new DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuid.Async(sdkConfiguration, _headers); diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncTaxPayments.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncTaxPayments.java new file mode 100644 index 000000000..a1932bf2c --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncTaxPayments.java @@ -0,0 +1,143 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api; + +import static com.gusto.embedded_api.operations.Operations.AsyncRequestOperation; + +import com.gusto.embedded_api.models.operations.GetTaxPaymentHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetTaxPaymentRequest; +import com.gusto.embedded_api.models.operations.GetTaxPaymentsRequest; +import com.gusto.embedded_api.models.operations.async.GetTaxPaymentRequestBuilder; +import com.gusto.embedded_api.models.operations.async.GetTaxPaymentResponse; +import com.gusto.embedded_api.models.operations.async.GetTaxPaymentsRequestBuilder; +import com.gusto.embedded_api.models.operations.async.GetTaxPaymentsResponse; +import com.gusto.embedded_api.operations.GetTaxPayment; +import com.gusto.embedded_api.operations.GetTaxPayments; +import com.gusto.embedded_api.utils.Headers; +import java.lang.String; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; + + +public class AsyncTaxPayments { + private static final Headers _headers = Headers.EMPTY; + private final SDKConfiguration sdkConfiguration; + private final TaxPayments syncSDK; + + AsyncTaxPayments(TaxPayments syncSDK, SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + this.syncSDK = syncSDK; + } + + /** + * Switches to the sync SDK. + * + * @return The sync SDK + */ + public TaxPayments sync() { + return syncSDK; + } + + + /** + * Get all tax payments for a company + * + *

    Fetches all tax payments Gusto has made (or scheduled) to tax agencies on behalf of a company. + * + *

    scope: `tax_payments:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public GetTaxPaymentsRequestBuilder getTaxPayments() { + return new GetTaxPaymentsRequestBuilder(sdkConfiguration); + } + + /** + * Get all tax payments for a company + * + *

    Fetches all tax payments Gusto has made (or scheduled) to tax agencies on behalf of a company. + * + *

    scope: `tax_payments:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param request The request object containing all the parameters for the API call. + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getTaxPayments(GetTaxPaymentsRequest request) { + AsyncRequestOperation operation + = new GetTaxPayments.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Get a tax payment for a company + * + *

    Fetches a single tax payment by UUID, including the payroll tax liabilities that make up the + * payment. + * + *

    scope: `tax_payments:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public GetTaxPaymentRequestBuilder getTaxPayment() { + return new GetTaxPaymentRequestBuilder(sdkConfiguration); + } + + /** + * Get a tax payment for a company + * + *

    Fetches a single tax payment by UUID, including the payroll tax liabilities that make up the + * payment. + * + *

    scope: `tax_payments:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param companyUuid The UUID of the company + * @param uuid The UUID of the tax payment + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getTaxPayment(String companyUuid, String uuid) { + return getTaxPayment(Optional.empty(), companyUuid, uuid); + } + + /** + * Get a tax payment for a company + * + *

    Fetches a single tax payment by UUID, including the payroll tax liabilities that make up the + * payment. + * + *

    scope: `tax_payments:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company + * @param uuid The UUID of the tax payment + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getTaxPayment( + Optional xGustoAPIVersion, String companyUuid, + String uuid) { + GetTaxPaymentRequest request = + GetTaxPaymentRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) + .uuid(uuid) + .build(); + AsyncRequestOperation operation + = new GetTaxPayment.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncTaxRequirements.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncTaxRequirements.java index 60796570a..0ae76b8f5 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncTaxRequirements.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncTaxRequirements.java @@ -48,6 +48,73 @@ public TaxRequirements sync() { } + /** + * Get all tax requirements for a company + * + *

    Retrieves all states for which a company has tax requirements, along with a boolean indicating + * whether tax setup + * is complete for each state. Use this to determine which states still need tax setup during company + * onboarding. + * + *

    scope: `company_tax_requirements:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder getAll() { + return new GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder(sdkConfiguration); + } + + /** + * Get all tax requirements for a company + * + *

    Retrieves all states for which a company has tax requirements, along with a boolean indicating + * whether tax setup + * is complete for each state. Use this to determine which states still need tax setup during company + * onboarding. + * + *

    scope: `company_tax_requirements:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param companyUuid The UUID of the company + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getAll(String companyUuid) { + return getAll(Optional.empty(), companyUuid); + } + + /** + * Get all tax requirements for a company + * + *

    Retrieves all states for which a company has tax requirements, along with a boolean indicating + * whether tax setup + * is complete for each state. Use this to determine which states still need tax setup during company + * onboarding. + * + *

    scope: `company_tax_requirements:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getAll(Optional xGustoAPIVersion, String companyUuid) { + GetV1CompaniesCompanyUuidTaxRequirementsRequest request = + GetV1CompaniesCompanyUuidTaxRequirementsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) + .build(); + AsyncRequestOperation operation + = new GetV1CompaniesCompanyUuidTaxRequirements.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + /** * Get tax requirements for a state * @@ -90,7 +157,7 @@ public GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder get() { */ public CompletableFuture get(String companyUuid, String state) { return get( - companyUuid, state, Optional.empty(), + Optional.empty(), companyUuid, state, Optional.empty()); } @@ -109,21 +176,21 @@ public CompletableFuture * *

    If set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyUuid The UUID of the company * @param state The two-letter state abbreviation - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param scheduling When true, return "new" requirement sets with valid `effective_from` dates that are available to save new effective-dated values. * @return {@code CompletableFuture} - The async response */ public CompletableFuture get( - String companyUuid, String state, - Optional xGustoAPIVersion, Optional scheduling) { + Optional xGustoAPIVersion, String companyUuid, + String state, Optional scheduling) { GetV1CompaniesCompanyUuidTaxRequirementsStateRequest request = GetV1CompaniesCompanyUuidTaxRequirementsStateRequest .builder() + .xGustoAPIVersion(xGustoAPIVersion) .companyUuid(companyUuid) .state(state) - .xGustoAPIVersion(xGustoAPIVersion) .scheduling(scheduling) .build(); AsyncRequestOperation operation @@ -186,7 +253,7 @@ public CompletableFuture String companyUuid, String state, PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody requestBody) { return updateState( - companyUuid, state, Optional.empty(), + Optional.empty(), companyUuid, state, requestBody); } @@ -209,21 +276,21 @@ public CompletableFuture * *

    If set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyUuid The UUID of the company * @param state The two-letter state abbreviation - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param requestBody * @return {@code CompletableFuture} - The async response */ public CompletableFuture updateState( - String companyUuid, String state, - Optional xGustoAPIVersion, PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody requestBody) { + Optional xGustoAPIVersion, String companyUuid, + String state, PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody requestBody) { PutV1CompaniesCompanyUuidTaxRequirementsStateRequest request = PutV1CompaniesCompanyUuidTaxRequirementsStateRequest .builder() + .xGustoAPIVersion(xGustoAPIVersion) .companyUuid(companyUuid) .state(state) - .xGustoAPIVersion(xGustoAPIVersion) .requestBody(requestBody) .build(); AsyncRequestOperation operation @@ -232,71 +299,4 @@ public CompletableFuture .thenCompose(operation::handleResponse); } - - /** - * Get all tax requirements for a company - * - *

    Retrieves all states for which a company has tax requirements, along with a boolean indicating - * whether tax setup - * is complete for each state. Use this to determine which states still need tax setup during company - * onboarding. - * - *

    scope: `company_tax_requirements:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The async call builder - */ - public GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder getAll() { - return new GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder(sdkConfiguration); - } - - /** - * Get all tax requirements for a company - * - *

    Retrieves all states for which a company has tax requirements, along with a boolean indicating - * whether tax setup - * is complete for each state. Use this to determine which states still need tax setup during company - * onboarding. - * - *

    scope: `company_tax_requirements:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param companyUuid The UUID of the company - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture getAll(String companyUuid) { - return getAll(companyUuid, Optional.empty()); - } - - /** - * Get all tax requirements for a company - * - *

    Retrieves all states for which a company has tax requirements, along with a boolean indicating - * whether tax setup - * is complete for each state. Use this to determine which states still need tax setup during company - * onboarding. - * - *

    scope: `company_tax_requirements:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param companyUuid The UUID of the company - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture getAll(String companyUuid, Optional xGustoAPIVersion) { - GetV1CompaniesCompanyUuidTaxRequirementsRequest request = - GetV1CompaniesCompanyUuidTaxRequirementsRequest - .builder() - .companyUuid(companyUuid) - .xGustoAPIVersion(xGustoAPIVersion) - .build(); - AsyncRequestOperation operation - = new GetV1CompaniesCompanyUuidTaxRequirements.Async(sdkConfiguration, _headers); - return operation.doRequest(request) - .thenCompose(operation::handleResponse); - } - } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncTimeOffPolicies.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncTimeOffPolicies.java index 853d03640..14b96ff88 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncTimeOffPolicies.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncTimeOffPolicies.java @@ -179,6 +179,127 @@ public CompletableFutureGet all time off policies for a company + * + *

    scope: `time_off_policies:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public GetV1CompaniesCompanyUuidTimeOffPoliciesRequestBuilder getAll() { + return new GetV1CompaniesCompanyUuidTimeOffPoliciesRequestBuilder(sdkConfiguration); + } + + /** + * Get all time off policies for a company + * + *

    Get all time off policies for a company + * + *

    scope: `time_off_policies:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param companyUuid The UUID of the company + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getAll(String companyUuid) { + return getAll(Optional.empty(), companyUuid); + } + + /** + * Get all time off policies for a company + * + *

    Get all time off policies for a company + * + *

    scope: `time_off_policies:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getAll(Optional xGustoAPIVersion, String companyUuid) { + GetV1CompaniesCompanyUuidTimeOffPoliciesRequest request = + GetV1CompaniesCompanyUuidTimeOffPoliciesRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) + .build(); + AsyncRequestOperation operation + = new GetV1CompaniesCompanyUuidTimeOffPolicies.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Create a time off policy + * + *

    Create a time off policy + * + *

    scope: `time_off_policies:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public PostV1CompaniesCompanyUuidTimeOffPoliciesRequestBuilder create() { + return new PostV1CompaniesCompanyUuidTimeOffPoliciesRequestBuilder(sdkConfiguration); + } + + /** + * Create a time off policy + * + *

    Create a time off policy + * + *

    scope: `time_off_policies:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param companyUuid The UUID of the company + * @param timeOffPolicyRequest Request body for creating a time off policy + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture create(String companyUuid, TimeOffPolicyRequest timeOffPolicyRequest) { + return create(Optional.empty(), companyUuid, timeOffPolicyRequest); + } + + /** + * Create a time off policy + * + *

    Create a time off policy + * + *

    scope: `time_off_policies:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company + * @param timeOffPolicyRequest Request body for creating a time off policy + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture create( + Optional xGustoAPIVersion, String companyUuid, + TimeOffPolicyRequest timeOffPolicyRequest) { + PostV1CompaniesCompanyUuidTimeOffPoliciesRequest request = + PostV1CompaniesCompanyUuidTimeOffPoliciesRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) + .timeOffPolicyRequest(timeOffPolicyRequest) + .build(); + AsyncRequestOperation operation + = new PostV1CompaniesCompanyUuidTimeOffPolicies.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + /** * Get a time off policy * @@ -301,67 +422,9 @@ public CompletableFuture update( /** - * Get all time off policies for a company - * - *

    Get all time off policies for a company - * - *

    scope: `time_off_policies:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The async call builder - */ - public GetV1CompaniesCompanyUuidTimeOffPoliciesRequestBuilder getAll() { - return new GetV1CompaniesCompanyUuidTimeOffPoliciesRequestBuilder(sdkConfiguration); - } - - /** - * Get all time off policies for a company - * - *

    Get all time off policies for a company - * - *

    scope: `time_off_policies:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param companyUuid The UUID of the company - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture getAll(String companyUuid) { - return getAll(Optional.empty(), companyUuid); - } - - /** - * Get all time off policies for a company - * - *

    Get all time off policies for a company - * - *

    scope: `time_off_policies:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyUuid The UUID of the company - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture getAll(Optional xGustoAPIVersion, String companyUuid) { - GetV1CompaniesCompanyUuidTimeOffPoliciesRequest request = - GetV1CompaniesCompanyUuidTimeOffPoliciesRequest - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .companyUuid(companyUuid) - .build(); - AsyncRequestOperation operation - = new GetV1CompaniesCompanyUuidTimeOffPolicies.Async(sdkConfiguration, _headers); - return operation.doRequest(request) - .thenCompose(operation::handleResponse); - } - - - /** - * Create a time off policy + * Deactivate a time off policy * - *

    Create a time off policy + *

    Deactivate a time off policy * *

    scope: `time_off_policies:write` * @@ -369,53 +432,48 @@ public CompletableFuture getAl * * @return The async call builder */ - public PostV1CompaniesCompanyUuidTimeOffPoliciesRequestBuilder create() { - return new PostV1CompaniesCompanyUuidTimeOffPoliciesRequestBuilder(sdkConfiguration); + public PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateRequestBuilder deactivate() { + return new PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateRequestBuilder(sdkConfiguration); } /** - * Create a time off policy + * Deactivate a time off policy * - *

    Create a time off policy + *

    Deactivate a time off policy * *

    scope: `time_off_policies:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company - * @param timeOffPolicyRequest Request body for creating a time off policy - * @return {@code CompletableFuture} - The async response + * @param timeOffPolicyUuid The UUID of the time off policy + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture create(String companyUuid, TimeOffPolicyRequest timeOffPolicyRequest) { - return create(Optional.empty(), companyUuid, timeOffPolicyRequest); + public CompletableFuture deactivate(String timeOffPolicyUuid) { + return deactivate(Optional.empty(), timeOffPolicyUuid); } /** - * Create a time off policy + * Deactivate a time off policy * - *

    Create a time off policy + *

    Deactivate a time off policy * *

    scope: `time_off_policies:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyUuid The UUID of the company - * @param timeOffPolicyRequest Request body for creating a time off policy - * @return {@code CompletableFuture} - The async response + * @param timeOffPolicyUuid The UUID of the time off policy + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture create( - Optional xGustoAPIVersion, String companyUuid, - TimeOffPolicyRequest timeOffPolicyRequest) { - PostV1CompaniesCompanyUuidTimeOffPoliciesRequest request = - PostV1CompaniesCompanyUuidTimeOffPoliciesRequest + public CompletableFuture deactivate(Optional xGustoAPIVersion, String timeOffPolicyUuid) { + PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateRequest request = + PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .companyUuid(companyUuid) - .timeOffPolicyRequest(timeOffPolicyRequest) + .timeOffPolicyUuid(timeOffPolicyUuid) .build(); - AsyncRequestOperation operation - = new PostV1CompaniesCompanyUuidTimeOffPolicies.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivate.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } @@ -612,62 +670,4 @@ public CompletableFuture u .thenCompose(operation::handleResponse); } - - /** - * Deactivate a time off policy - * - *

    Deactivate a time off policy - * - *

    scope: `time_off_policies:write` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The async call builder - */ - public PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateRequestBuilder deactivate() { - return new PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateRequestBuilder(sdkConfiguration); - } - - /** - * Deactivate a time off policy - * - *

    Deactivate a time off policy - * - *

    scope: `time_off_policies:write` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param timeOffPolicyUuid The UUID of the time off policy - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture deactivate(String timeOffPolicyUuid) { - return deactivate(Optional.empty(), timeOffPolicyUuid); - } - - /** - * Deactivate a time off policy - * - *

    Deactivate a time off policy - * - *

    scope: `time_off_policies:write` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param timeOffPolicyUuid The UUID of the time off policy - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture deactivate(Optional xGustoAPIVersion, String timeOffPolicyUuid) { - PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateRequest request = - PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateRequest - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .timeOffPolicyUuid(timeOffPolicyUuid) - .build(); - AsyncRequestOperation operation - = new PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivate.Async(sdkConfiguration, _headers); - return operation.doRequest(request) - .thenCompose(operation::handleResponse); - } - } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncWebhooks.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncWebhooks.java index 2d815c8e4..f24ea9df3 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncWebhooks.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncWebhooks.java @@ -257,7 +257,7 @@ public GetV1WebhookSubscriptionUuidRequestBuilder getSubscription() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture getSubscription(GetV1WebhookSubscriptionUuidSecurity security, String webhookSubscriptionUuid) { - return getSubscription(security, webhookSubscriptionUuid, Optional.empty()); + return getSubscription(security, Optional.empty(), webhookSubscriptionUuid); } /** @@ -273,18 +273,18 @@ public CompletableFuture getSubscription(G *

    scope: `webhook_subscriptions:read` * * @param security The security details to use for authentication. - * @param webhookSubscriptionUuid The webhook subscription UUID. * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param webhookSubscriptionUuid The webhook subscription UUID. * @return {@code CompletableFuture} - The async response */ public CompletableFuture getSubscription( - GetV1WebhookSubscriptionUuidSecurity security, String webhookSubscriptionUuid, - Optional xGustoAPIVersion) { + GetV1WebhookSubscriptionUuidSecurity security, Optional xGustoAPIVersion, + String webhookSubscriptionUuid) { GetV1WebhookSubscriptionUuidRequest request = GetV1WebhookSubscriptionUuidRequest .builder() - .webhookSubscriptionUuid(webhookSubscriptionUuid) .xGustoAPIVersion(xGustoAPIVersion) + .webhookSubscriptionUuid(webhookSubscriptionUuid) .build(); AsyncRequestOperation operation = new GetV1WebhookSubscriptionUuid.Async(sdkConfiguration, security, _headers); @@ -332,7 +332,7 @@ public CompletableFuture updateSubscriptio PutV1WebhookSubscriptionUuidSecurity security, String webhookSubscriptionUuid, PutV1WebhookSubscriptionUuidRequestBody requestBody) { return updateSubscription( - security, webhookSubscriptionUuid, Optional.empty(), + security, Optional.empty(), webhookSubscriptionUuid, requestBody); } @@ -349,19 +349,19 @@ public CompletableFuture updateSubscriptio *

    scope: `webhook_subscriptions:write` * * @param security The security details to use for authentication. - * @param webhookSubscriptionUuid The webhook subscription UUID. * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param webhookSubscriptionUuid The webhook subscription UUID. * @param requestBody * @return {@code CompletableFuture} - The async response */ public CompletableFuture updateSubscription( - PutV1WebhookSubscriptionUuidSecurity security, String webhookSubscriptionUuid, - Optional xGustoAPIVersion, PutV1WebhookSubscriptionUuidRequestBody requestBody) { + PutV1WebhookSubscriptionUuidSecurity security, Optional xGustoAPIVersion, + String webhookSubscriptionUuid, PutV1WebhookSubscriptionUuidRequestBody requestBody) { PutV1WebhookSubscriptionUuidRequest request = PutV1WebhookSubscriptionUuidRequest .builder() - .webhookSubscriptionUuid(webhookSubscriptionUuid) .xGustoAPIVersion(xGustoAPIVersion) + .webhookSubscriptionUuid(webhookSubscriptionUuid) .requestBody(requestBody) .build(); AsyncRequestOperation operation @@ -406,7 +406,7 @@ public DeleteV1WebhookSubscriptionUuidRequestBuilder deleteSubscription() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture deleteSubscription(DeleteV1WebhookSubscriptionUuidSecurity security, String webhookSubscriptionUuid) { - return deleteSubscription(security, webhookSubscriptionUuid, Optional.empty()); + return deleteSubscription(security, Optional.empty(), webhookSubscriptionUuid); } /** @@ -422,18 +422,18 @@ public CompletableFuture deleteSubscrip *

    scope: `webhook_subscriptions:write` * * @param security The security details to use for authentication. - * @param webhookSubscriptionUuid The webhook subscription UUID. * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param webhookSubscriptionUuid The webhook subscription UUID. * @return {@code CompletableFuture} - The async response */ public CompletableFuture deleteSubscription( - DeleteV1WebhookSubscriptionUuidSecurity security, String webhookSubscriptionUuid, - Optional xGustoAPIVersion) { + DeleteV1WebhookSubscriptionUuidSecurity security, Optional xGustoAPIVersion, + String webhookSubscriptionUuid) { DeleteV1WebhookSubscriptionUuidRequest request = DeleteV1WebhookSubscriptionUuidRequest .builder() - .webhookSubscriptionUuid(webhookSubscriptionUuid) .xGustoAPIVersion(xGustoAPIVersion) + .webhookSubscriptionUuid(webhookSubscriptionUuid) .build(); AsyncRequestOperation operation = new DeleteV1WebhookSubscriptionUuid.Async(sdkConfiguration, security, _headers); @@ -443,164 +443,164 @@ public CompletableFuture deleteSubscrip /** - * Verify a webhook subscription - * - *

    When a webhook subscription is created, a `verification_token` is POSTed to the registered webhook - * subscription URL. This `verify` endpoint needs to be called with `verification_token` before webhook - * events can be sent to the registered webhook URL. + * Request a verification token for a webhook subscription * - *

    Use the /v1/webhook_subscriptions/{webhook_subscription_uuid}/request_verification_token API to - * resend the `verification_token` to the Subscriber. + *

    Request that the webhook subscription `verification_token` be POSTed to the Subscription URL. * *

    📘 System Access Authentication * *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) * - *

    scope: `webhook_subscriptions:write` + *

    scope: `webhook_subscriptions:read` * * @return The async call builder */ - public PutV1VerifyWebhookSubscriptionUuidRequestBuilder verify() { - return new PutV1VerifyWebhookSubscriptionUuidRequestBuilder(sdkConfiguration); + public GetV1WebhookSubscriptionVerificationTokenUuidRequestBuilder requestVerificationToken() { + return new GetV1WebhookSubscriptionVerificationTokenUuidRequestBuilder(sdkConfiguration); } /** - * Verify a webhook subscription - * - *

    When a webhook subscription is created, a `verification_token` is POSTed to the registered webhook - * subscription URL. This `verify` endpoint needs to be called with `verification_token` before webhook - * events can be sent to the registered webhook URL. + * Request a verification token for a webhook subscription * - *

    Use the /v1/webhook_subscriptions/{webhook_subscription_uuid}/request_verification_token API to - * resend the `verification_token` to the Subscriber. + *

    Request that the webhook subscription `verification_token` be POSTed to the Subscription URL. * *

    📘 System Access Authentication * *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) * - *

    scope: `webhook_subscriptions:write` + *

    scope: `webhook_subscriptions:read` * * @param security The security details to use for authentication. * @param webhookSubscriptionUuid The webhook subscription UUID. - * @param requestBody - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture verify( - PutV1VerifyWebhookSubscriptionUuidSecurity security, String webhookSubscriptionUuid, - PutV1VerifyWebhookSubscriptionUuidRequestBody requestBody) { - return verify( - security, webhookSubscriptionUuid, Optional.empty(), - requestBody); + public CompletableFuture requestVerificationToken(GetV1WebhookSubscriptionVerificationTokenUuidSecurity security, String webhookSubscriptionUuid) { + return requestVerificationToken(security, Optional.empty(), webhookSubscriptionUuid); } /** - * Verify a webhook subscription - * - *

    When a webhook subscription is created, a `verification_token` is POSTed to the registered webhook - * subscription URL. This `verify` endpoint needs to be called with `verification_token` before webhook - * events can be sent to the registered webhook URL. + * Request a verification token for a webhook subscription * - *

    Use the /v1/webhook_subscriptions/{webhook_subscription_uuid}/request_verification_token API to - * resend the `verification_token` to the Subscriber. + *

    Request that the webhook subscription `verification_token` be POSTed to the Subscription URL. * *

    📘 System Access Authentication * *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) * - *

    scope: `webhook_subscriptions:write` + *

    scope: `webhook_subscriptions:read` * * @param security The security details to use for authentication. - * @param webhookSubscriptionUuid The webhook subscription UUID. * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param requestBody - * @return {@code CompletableFuture} - The async response + * @param webhookSubscriptionUuid The webhook subscription UUID. + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture verify( - PutV1VerifyWebhookSubscriptionUuidSecurity security, String webhookSubscriptionUuid, - Optional xGustoAPIVersion, PutV1VerifyWebhookSubscriptionUuidRequestBody requestBody) { - PutV1VerifyWebhookSubscriptionUuidRequest request = - PutV1VerifyWebhookSubscriptionUuidRequest + public CompletableFuture requestVerificationToken( + GetV1WebhookSubscriptionVerificationTokenUuidSecurity security, Optional xGustoAPIVersion, + String webhookSubscriptionUuid) { + GetV1WebhookSubscriptionVerificationTokenUuidRequest request = + GetV1WebhookSubscriptionVerificationTokenUuidRequest .builder() - .webhookSubscriptionUuid(webhookSubscriptionUuid) .xGustoAPIVersion(xGustoAPIVersion) - .requestBody(requestBody) + .webhookSubscriptionUuid(webhookSubscriptionUuid) .build(); - AsyncRequestOperation operation - = new PutV1VerifyWebhookSubscriptionUuid.Async(sdkConfiguration, security, _headers); + AsyncRequestOperation operation + = new GetV1WebhookSubscriptionVerificationTokenUuid.Async(sdkConfiguration, security, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Request a verification token for a webhook subscription + * Verify a webhook subscription * - *

    Request that the webhook subscription `verification_token` be POSTed to the Subscription URL. + *

    When a webhook subscription is created, a `verification_token` is POSTed to the registered webhook + * subscription URL. This `verify` endpoint needs to be called with `verification_token` before webhook + * events can be sent to the registered webhook URL. + * + *

    Use the /v1/webhook_subscriptions/{webhook_subscription_uuid}/request_verification_token API to + * resend the `verification_token` to the Subscriber. * *

    📘 System Access Authentication * *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) * - *

    scope: `webhook_subscriptions:read` + *

    scope: `webhook_subscriptions:write` * * @return The async call builder */ - public GetV1WebhookSubscriptionVerificationTokenUuidRequestBuilder requestVerificationToken() { - return new GetV1WebhookSubscriptionVerificationTokenUuidRequestBuilder(sdkConfiguration); + public PutV1VerifyWebhookSubscriptionUuidRequestBuilder verify() { + return new PutV1VerifyWebhookSubscriptionUuidRequestBuilder(sdkConfiguration); } /** - * Request a verification token for a webhook subscription + * Verify a webhook subscription * - *

    Request that the webhook subscription `verification_token` be POSTed to the Subscription URL. + *

    When a webhook subscription is created, a `verification_token` is POSTed to the registered webhook + * subscription URL. This `verify` endpoint needs to be called with `verification_token` before webhook + * events can be sent to the registered webhook URL. + * + *

    Use the /v1/webhook_subscriptions/{webhook_subscription_uuid}/request_verification_token API to + * resend the `verification_token` to the Subscriber. * *

    📘 System Access Authentication * *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) * - *

    scope: `webhook_subscriptions:read` + *

    scope: `webhook_subscriptions:write` * * @param security The security details to use for authentication. * @param webhookSubscriptionUuid The webhook subscription UUID. - * @return {@code CompletableFuture} - The async response + * @param requestBody + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture requestVerificationToken(GetV1WebhookSubscriptionVerificationTokenUuidSecurity security, String webhookSubscriptionUuid) { - return requestVerificationToken(security, webhookSubscriptionUuid, Optional.empty()); + public CompletableFuture verify( + PutV1VerifyWebhookSubscriptionUuidSecurity security, String webhookSubscriptionUuid, + PutV1VerifyWebhookSubscriptionUuidRequestBody requestBody) { + return verify( + security, Optional.empty(), webhookSubscriptionUuid, + requestBody); } /** - * Request a verification token for a webhook subscription + * Verify a webhook subscription * - *

    Request that the webhook subscription `verification_token` be POSTed to the Subscription URL. + *

    When a webhook subscription is created, a `verification_token` is POSTed to the registered webhook + * subscription URL. This `verify` endpoint needs to be called with `verification_token` before webhook + * events can be sent to the registered webhook URL. + * + *

    Use the /v1/webhook_subscriptions/{webhook_subscription_uuid}/request_verification_token API to + * resend the `verification_token` to the Subscriber. * *

    📘 System Access Authentication * *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) * - *

    scope: `webhook_subscriptions:read` + *

    scope: `webhook_subscriptions:write` * * @param security The security details to use for authentication. - * @param webhookSubscriptionUuid The webhook subscription UUID. * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @return {@code CompletableFuture} - The async response + * @param webhookSubscriptionUuid The webhook subscription UUID. + * @param requestBody + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture requestVerificationToken( - GetV1WebhookSubscriptionVerificationTokenUuidSecurity security, String webhookSubscriptionUuid, - Optional xGustoAPIVersion) { - GetV1WebhookSubscriptionVerificationTokenUuidRequest request = - GetV1WebhookSubscriptionVerificationTokenUuidRequest + public CompletableFuture verify( + PutV1VerifyWebhookSubscriptionUuidSecurity security, Optional xGustoAPIVersion, + String webhookSubscriptionUuid, PutV1VerifyWebhookSubscriptionUuidRequestBody requestBody) { + PutV1VerifyWebhookSubscriptionUuidRequest request = + PutV1VerifyWebhookSubscriptionUuidRequest .builder() - .webhookSubscriptionUuid(webhookSubscriptionUuid) .xGustoAPIVersion(xGustoAPIVersion) + .webhookSubscriptionUuid(webhookSubscriptionUuid) + .requestBody(requestBody) .build(); - AsyncRequestOperation operation - = new GetV1WebhookSubscriptionVerificationTokenUuid.Async(sdkConfiguration, security, _headers); + AsyncRequestOperation operation + = new PutV1VerifyWebhookSubscriptionUuid.Async(sdkConfiguration, security, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncWireInRequests.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncWireInRequests.java index 773ff6127..477b858aa 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncWireInRequests.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/AsyncWireInRequests.java @@ -76,7 +76,7 @@ public GetWireInRequestsWireInRequestUuidRequestBuilder get() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture get(String wireInRequestUuid) { - return get(wireInRequestUuid, Optional.empty()); + return get(Optional.empty(), wireInRequestUuid); } /** @@ -88,16 +88,16 @@ public CompletableFuture get(String * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param wireInRequestUuid The UUID of the Wire In Request * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param wireInRequestUuid The UUID of the Wire In Request * @return {@code CompletableFuture} - The async response */ - public CompletableFuture get(String wireInRequestUuid, Optional xGustoAPIVersion) { + public CompletableFuture get(Optional xGustoAPIVersion, String wireInRequestUuid) { GetWireInRequestsWireInRequestUuidRequest request = GetWireInRequestsWireInRequestUuidRequest .builder() - .wireInRequestUuid(wireInRequestUuid) .xGustoAPIVersion(xGustoAPIVersion) + .wireInRequestUuid(wireInRequestUuid) .build(); AsyncRequestOperation operation = new GetWireInRequestsWireInRequestUuid.Async(sdkConfiguration, _headers); @@ -135,7 +135,7 @@ public PutWireInRequestsWireInRequestUuidRequestBuilder submit() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture submit(String wireInRequestUuid, WireInRequestUpdateRequestBody wireInRequestUpdateRequestBody) { - return submit(wireInRequestUuid, Optional.empty(), wireInRequestUpdateRequestBody); + return submit(Optional.empty(), wireInRequestUuid, wireInRequestUpdateRequestBody); } /** @@ -147,19 +147,19 @@ public CompletableFuture submit(Stri * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param wireInRequestUuid The UUID of the Wire In Request * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param wireInRequestUuid The UUID of the Wire In Request * @param wireInRequestUpdateRequestBody * @return {@code CompletableFuture} - The async response */ public CompletableFuture submit( - String wireInRequestUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String wireInRequestUuid, WireInRequestUpdateRequestBody wireInRequestUpdateRequestBody) { PutWireInRequestsWireInRequestUuidRequest request = PutWireInRequestsWireInRequestUuidRequest .builder() - .wireInRequestUuid(wireInRequestUuid) .xGustoAPIVersion(xGustoAPIVersion) + .wireInRequestUuid(wireInRequestUuid) .wireInRequestUpdateRequestBody(wireInRequestUpdateRequestBody) .build(); AsyncRequestOperation operation @@ -198,7 +198,7 @@ public GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder list() { */ public CompletableFuture list(String companyUuid) { return list( - companyUuid, Optional.empty(), Optional.empty(), + Optional.empty(), companyUuid, Optional.empty(), Optional.empty()); } @@ -211,20 +211,20 @@ public CompletableFuture list( * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company * @param page The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. * @param per Number of objects per page. For majority of endpoints will default to 25 * @return {@code CompletableFuture} - The async response */ public CompletableFuture list( - String companyUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String companyUuid, Optional page, Optional per) { GetCompaniesCompanyUuidWireInRequestUuidRequest request = GetCompaniesCompanyUuidWireInRequestUuidRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) .page(page) .per(per) .build(); diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/Companies.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/Companies.java index b553c7ce0..20db4b369 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/Companies.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/Companies.java @@ -10,7 +10,6 @@ import com.gusto.embedded_api.models.components.PartnerManagedCompanyCreateRequest; import com.gusto.embedded_api.models.components.PartnerManagedCompanyMigrateRequest; import com.gusto.embedded_api.models.components.PartnerManagedCompanyRetrieveTermsOfServiceRequest; -import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion; import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdAdminsRequest; import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdAdminsRequestBuilder; import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdAdminsResponse; @@ -34,6 +33,7 @@ import com.gusto.embedded_api.models.operations.GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest; import com.gusto.embedded_api.models.operations.GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder; import com.gusto.embedded_api.models.operations.GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessResponse; +import com.gusto.embedded_api.models.operations.HeaderXGustoAPIVersion; import com.gusto.embedded_api.models.operations.PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceHeaderXGustoAPIVersion; import com.gusto.embedded_api.models.operations.PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest; import com.gusto.embedded_api.models.operations.PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBuilder; @@ -56,6 +56,11 @@ import com.gusto.embedded_api.models.operations.PutV1CompaniesRequestBody; import com.gusto.embedded_api.models.operations.PutV1CompaniesRequestBuilder; import com.gusto.embedded_api.models.operations.PutV1CompaniesResponse; +import com.gusto.embedded_api.models.operations.PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest; +import com.gusto.embedded_api.models.operations.PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder; +import com.gusto.embedded_api.models.operations.PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse; +import com.gusto.embedded_api.models.operations.PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity; import com.gusto.embedded_api.models.operations.PutV1PartnerManagedCompaniesCompanyUuidMigrateHeaderXGustoAPIVersion; import com.gusto.embedded_api.models.operations.PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest; import com.gusto.embedded_api.models.operations.PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder; @@ -71,6 +76,7 @@ import com.gusto.embedded_api.operations.PostV1CompaniesCompanyIdAdmins; import com.gusto.embedded_api.operations.PostV1PartnerManagedCompanies; import com.gusto.embedded_api.operations.PutV1Companies; +import com.gusto.embedded_api.operations.PutV1PartnerManagedCompaniesCompanyUuidDisassociate; import com.gusto.embedded_api.operations.PutV1PartnerManagedCompaniesCompanyUuidMigrate; import com.gusto.embedded_api.utils.Headers; import java.lang.Long; @@ -104,97 +110,136 @@ public AsyncCompanies async() { } /** - * Create a partner managed company - * - *

    Create a partner managed company. When you successfully call the API, it does the following: - * * Creates a new company in Gusto - * * Creates a new user using the provided email if the user does not already exist. - * * Makes the user the primary payroll administrator of the new company. - * - *

    In response, you will receive oauth access tokens for the created company. - * - *

    IMPORTANT: the returned access and refresh tokens are reserved for this company only. They cannot be - * used to access other companies AND previously granted tokens cannot be used to access this company. + * Get all the admins at a company * - *

    📘 System Access Authentication + *

    Returns a list of all the admins at a company * - *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP - * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + *

    scope: `company_admin:read` * - *

    scope: `partner_managed_companies:manage` + *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public PostV1PartnerManagedCompaniesRequestBuilder createPartnerManaged() { - return new PostV1PartnerManagedCompaniesRequestBuilder(sdkConfiguration); + public GetV1CompaniesCompanyIdAdminsRequestBuilder listAdmins() { + return new GetV1CompaniesCompanyIdAdminsRequestBuilder(sdkConfiguration); } /** - * Create a partner managed company + * Get all the admins at a company * - *

    Create a partner managed company. When you successfully call the API, it does the following: - * * Creates a new company in Gusto - * * Creates a new user using the provided email if the user does not already exist. - * * Makes the user the primary payroll administrator of the new company. + *

    Returns a list of all the admins at a company * - *

    In response, you will receive oauth access tokens for the created company. + *

    scope: `company_admin:read` * - *

    IMPORTANT: the returned access and refresh tokens are reserved for this company only. They cannot be - * used to access other companies AND previously granted tokens cannot be used to access this company. + *

    If set, this operation will use Security#companyAccessAuth from the global security. * - *

    📘 System Access Authentication + * @param companyId The UUID of the company + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1CompaniesCompanyIdAdminsResponse listAdmins(String companyId) { + return listAdmins(Optional.empty(), companyId, Optional.empty(), + Optional.empty()); + } + + /** + * Get all the admins at a company * - *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP - * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + *

    Returns a list of all the admins at a company * - *

    scope: `partner_managed_companies:manage` + *

    scope: `company_admin:read` * - * @param security The security details to use for authentication. - * @param partnerManagedCompanyCreateRequest + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company + * @param page The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + * @param per Number of objects per page. For majority of endpoints will default to 25 * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostV1PartnerManagedCompaniesResponse createPartnerManaged(PostV1PartnerManagedCompaniesSecurity security, PartnerManagedCompanyCreateRequest partnerManagedCompanyCreateRequest) { - return createPartnerManaged(security, Optional.empty(), partnerManagedCompanyCreateRequest); + public GetV1CompaniesCompanyIdAdminsResponse listAdmins( + Optional xGustoAPIVersion, String companyId, + Optional page, Optional per) { + GetV1CompaniesCompanyIdAdminsRequest request = + GetV1CompaniesCompanyIdAdminsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) + .page(page) + .per(per) + .build(); + RequestOperation operation + = new GetV1CompaniesCompanyIdAdmins.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); } /** - * Create a partner managed company + * Create an admin for the company * - *

    Create a partner managed company. When you successfully call the API, it does the following: - * * Creates a new company in Gusto - * * Creates a new user using the provided email if the user does not already exist. - * * Makes the user the primary payroll administrator of the new company. + *

    Creates a new admin for a company. + * If the email matches an existing user, this will create an admin account for the current user. + * Otherwise, this will create a new user. * - *

    In response, you will receive oauth access tokens for the created company. + *

    scope: `company_admin:write` * - *

    IMPORTANT: the returned access and refresh tokens are reserved for this company only. They cannot be - * used to access other companies AND previously granted tokens cannot be used to access this company. + *

    If set, this operation will use Security#companyAccessAuth from the global security. * - *

    📘 System Access Authentication + * @return The call builder + */ + public PostV1CompaniesCompanyIdAdminsRequestBuilder createAdmin() { + return new PostV1CompaniesCompanyIdAdminsRequestBuilder(sdkConfiguration); + } + + /** + * Create an admin for the company * - *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP - * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + *

    Creates a new admin for a company. + * If the email matches an existing user, this will create an admin account for the current user. + * Otherwise, this will create a new user. * - *

    scope: `partner_managed_companies:manage` + *

    scope: `company_admin:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param companyId The UUID of the company + * @param adminCreateRequest The request body for creating a company admin. + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public PostV1CompaniesCompanyIdAdminsResponse createAdmin(String companyId, AdminCreateRequest adminCreateRequest) { + return createAdmin(Optional.empty(), companyId, adminCreateRequest); + } + + /** + * Create an admin for the company + * + *

    Creates a new admin for a company. + * If the email matches an existing user, this will create an admin account for the current user. + * Otherwise, this will create a new user. + * + *

    scope: `company_admin:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param security The security details to use for authentication. * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param partnerManagedCompanyCreateRequest + * @param companyId The UUID of the company + * @param adminCreateRequest The request body for creating a company admin. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostV1PartnerManagedCompaniesResponse createPartnerManaged( - PostV1PartnerManagedCompaniesSecurity security, Optional xGustoAPIVersion, - PartnerManagedCompanyCreateRequest partnerManagedCompanyCreateRequest) { - PostV1PartnerManagedCompaniesRequest request = - PostV1PartnerManagedCompaniesRequest + public PostV1CompaniesCompanyIdAdminsResponse createAdmin( + Optional xGustoAPIVersion, String companyId, + AdminCreateRequest adminCreateRequest) { + PostV1CompaniesCompanyIdAdminsRequest request = + PostV1CompaniesCompanyIdAdminsRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .partnerManagedCompanyCreateRequest(partnerManagedCompanyCreateRequest) + .companyId(companyId) + .adminCreateRequest(adminCreateRequest) .build(); - RequestOperation operation - = new PostV1PartnerManagedCompanies.Sync(sdkConfiguration, security, _headers); + RequestOperation operation + = new PostV1CompaniesCompanyIdAdmins.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } @@ -235,7 +280,7 @@ public GetV1CompaniesRequestBuilder get() { * @throws RuntimeException subclass if the API call fails */ public GetV1CompaniesResponse get(String companyId) { - return get(companyId, Optional.empty()); + return get(Optional.empty(), companyId); } /** @@ -251,17 +296,17 @@ public GetV1CompaniesResponse get(String companyId) { * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1CompaniesResponse get(String companyId, Optional xGustoAPIVersion) { + public GetV1CompaniesResponse get(Optional xGustoAPIVersion, String companyId) { GetV1CompaniesRequest request = GetV1CompaniesRequest .builder() - .companyId(companyId) .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) .build(); RequestOperation operation = new GetV1Companies.Sync(sdkConfiguration, _headers); @@ -298,7 +343,7 @@ public PutV1CompaniesRequestBuilder update() { * @throws RuntimeException subclass if the API call fails */ public PutV1CompaniesResponse update(String companyId, PutV1CompaniesRequestBody requestBody) { - return update(companyId, Optional.empty(), requestBody); + return update(Optional.empty(), companyId, requestBody); } /** @@ -310,20 +355,20 @@ public PutV1CompaniesResponse update(String companyId, PutV1CompaniesRequestBody * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PutV1CompaniesResponse update( - String companyId, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String companyId, PutV1CompaniesRequestBody requestBody) { PutV1CompaniesRequest request = PutV1CompaniesRequest .builder() - .companyId(companyId) .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) .requestBody(requestBody) .build(); RequestOperation operation @@ -332,120 +377,96 @@ public PutV1CompaniesResponse update( } /** - * Migrate company to embedded payroll - * - *

    Migrate an existing Gusto customer to your embedded payroll product. - * - *

    ### Prerequisites - * Before calling this endpoint: - * 1. The customer must connect their Gusto account to your application using [OAuth2](doc:oauth2) - * 2. The customer must view and [accept the Embedded Payroll Terms of - * Service](ref:post-partner-managed-companies-company_uuid-accept_terms_of_service) + * Get the custom fields of a company * - *

    ### Related guides - * - [Migrate an existing company](doc:migrate-existing-company) + *

    Returns a list of the custom fields of the company. Useful when you need to know the schema of + * custom fields for an entire company. * - *

    scope: `partner_managed_companies:write` + *

    scope: `companies:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder migrate() { - return new PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder(sdkConfiguration); + public GetV1CompaniesCompanyIdCustomFieldsRequestBuilder getCustomFields() { + return new GetV1CompaniesCompanyIdCustomFieldsRequestBuilder(sdkConfiguration); } /** - * Migrate company to embedded payroll - * - *

    Migrate an existing Gusto customer to your embedded payroll product. - * - *

    ### Prerequisites - * Before calling this endpoint: - * 1. The customer must connect their Gusto account to your application using [OAuth2](doc:oauth2) - * 2. The customer must view and [accept the Embedded Payroll Terms of - * Service](ref:post-partner-managed-companies-company_uuid-accept_terms_of_service) + * Get the custom fields of a company * - *

    ### Related guides - * - [Migrate an existing company](doc:migrate-existing-company) + *

    Returns a list of the custom fields of the company. Useful when you need to know the schema of + * custom fields for an entire company. * - *

    scope: `partner_managed_companies:write` + *

    scope: `companies:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company - * @param partnerManagedCompanyMigrateRequest + * @param companyId The UUID of the company * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1PartnerManagedCompaniesCompanyUuidMigrateResponse migrate(String companyUuid, PartnerManagedCompanyMigrateRequest partnerManagedCompanyMigrateRequest) { - return migrate(companyUuid, Optional.empty(), partnerManagedCompanyMigrateRequest); + public GetV1CompaniesCompanyIdCustomFieldsResponse getCustomFields(String companyId) { + return getCustomFields(Optional.empty(), companyId, Optional.empty(), + Optional.empty()); } /** - * Migrate company to embedded payroll - * - *

    Migrate an existing Gusto customer to your embedded payroll product. - * - *

    ### Prerequisites - * Before calling this endpoint: - * 1. The customer must connect their Gusto account to your application using [OAuth2](doc:oauth2) - * 2. The customer must view and [accept the Embedded Payroll Terms of - * Service](ref:post-partner-managed-companies-company_uuid-accept_terms_of_service) + * Get the custom fields of a company * - *

    ### Related guides - * - [Migrate an existing company](doc:migrate-existing-company) + *

    Returns a list of the custom fields of the company. Useful when you need to know the schema of + * custom fields for an entire company. * - *

    scope: `partner_managed_companies:write` + *

    scope: `companies:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param partnerManagedCompanyMigrateRequest + * @param companyId The UUID of the company + * @param page The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + * @param per Number of objects per page. For majority of endpoints will default to 25 * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1PartnerManagedCompaniesCompanyUuidMigrateResponse migrate( - String companyUuid, Optional xGustoAPIVersion, - PartnerManagedCompanyMigrateRequest partnerManagedCompanyMigrateRequest) { - PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest request = - PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest + public GetV1CompaniesCompanyIdCustomFieldsResponse getCustomFields( + Optional xGustoAPIVersion, String companyId, + Optional page, Optional per) { + GetV1CompaniesCompanyIdCustomFieldsRequest request = + GetV1CompaniesCompanyIdCustomFieldsRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) - .partnerManagedCompanyMigrateRequest(partnerManagedCompanyMigrateRequest) + .companyId(companyId) + .page(page) + .per(per) .build(); - RequestOperation operation - = new PutV1PartnerManagedCompaniesCompanyUuidMigrate.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new GetV1CompaniesCompanyIdCustomFields.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Check company migration readiness + * Get company onboarding status * - *

    Check if an existing Gusto customer is ready to be migrated to embedded payroll. This endpoint - * returns blockers and warnings associated with migrating the company and is recommended to be called - * before attempting to migrate a company. + *

    Retrieves a company's onboarding status, including whether onboarding is complete and the list of + * required onboarding steps with their respective completion state. * - *

    scope: `partner_managed_companies:read` + *

    scope: `company_onboarding_status:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder getV1PartnerManagedCompaniesCompanyUuidMigrationReadiness() { - return new GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder(sdkConfiguration); + public GetV1CompanyOnboardingStatusRequestBuilder getOnboardingStatus() { + return new GetV1CompanyOnboardingStatusRequestBuilder(sdkConfiguration); } /** - * Check company migration readiness + * Get company onboarding status * - *

    Check if an existing Gusto customer is ready to be migrated to embedded payroll. This endpoint - * returns blockers and warnings associated with migrating the company and is recommended to be called - * before attempting to migrate a company. + *

    Retrieves a company's onboarding status, including whether onboarding is complete and the list of + * required onboarding steps with their respective completion state. * - *

    scope: `partner_managed_companies:read` + *

    scope: `company_onboarding_status:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * @@ -453,327 +474,434 @@ public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder g * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessResponse getV1PartnerManagedCompaniesCompanyUuidMigrationReadiness(String companyUuid) { - return getV1PartnerManagedCompaniesCompanyUuidMigrationReadiness(companyUuid, Optional.empty()); + public GetV1CompanyOnboardingStatusResponse getOnboardingStatus(String companyUuid) { + return getOnboardingStatus(Optional.empty(), companyUuid, Optional.empty()); } /** - * Check company migration readiness + * Get company onboarding status * - *

    Check if an existing Gusto customer is ready to be migrated to embedded payroll. This endpoint - * returns blockers and warnings associated with migrating the company and is recommended to be called - * before attempting to migrate a company. + *

    Retrieves a company's onboarding status, including whether onboarding is complete and the list of + * required onboarding steps with their respective completion state. * - *

    scope: `partner_managed_companies:read` + *

    scope: `company_onboarding_status:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company + * @param additionalSteps Comma-delimited string of additional onboarding steps to include. Currently only supports the value "external_payroll". * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessResponse getV1PartnerManagedCompaniesCompanyUuidMigrationReadiness(String companyUuid, Optional xGustoAPIVersion) { - GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest request = - GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest + public GetV1CompanyOnboardingStatusResponse getOnboardingStatus( + Optional xGustoAPIVersion, String companyUuid, + Optional additionalSteps) { + GetV1CompanyOnboardingStatusRequest request = + GetV1CompanyOnboardingStatusRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) + .additionalSteps(additionalSteps) .build(); - RequestOperation operation - = new GetV1PartnerManagedCompaniesCompanyUuidMigrationReadiness.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new GetV1CompanyOnboardingStatus.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Accept terms of service for a company user + * Finish company onboarding * - *

    Accept the Gusto Embedded Payroll's [Terms of Service](https://flows.gusto.com/terms). - * The user must have a role in the company in order to accept the Terms of Service. + *

    Finalize a company's onboarding process. * - *

    scope: `terms_of_services:write` + *

    ### Approve a company in demo + * + *

    After a company is finished onboarding, Gusto requires an additional step to review and approve that + * company. + * The company onboarding status is "onboarding_completed": false, until the API call is made to finish + * company + * onboarding. In production environments, this step is required for risk-analysis purposes. + * + *

    We provide the endpoint `PUT '/v1/companies/{company_uuid}/approve'` to facilitate company approvals + * in the demo environment. + * + *

    ```shell + * PUT '/v1/companies/89771af8-b964-472e-8064-554dfbcb56d9/approve' + * + *

    # Response: Company object, with company_status: 'Approved' + * ``` + * + *

    scope: `companies:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBuilder acceptTermsOfService() { - return new PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBuilder(sdkConfiguration); + public GetV1CompanyFinishOnboardingRequestBuilder finishOnboarding() { + return new GetV1CompanyFinishOnboardingRequestBuilder(sdkConfiguration); } /** - * Accept terms of service for a company user + * Finish company onboarding * - *

    Accept the Gusto Embedded Payroll's [Terms of Service](https://flows.gusto.com/terms). - * The user must have a role in the company in order to accept the Terms of Service. + *

    Finalize a company's onboarding process. * - *

    scope: `terms_of_services:write` + *

    ### Approve a company in demo + * + *

    After a company is finished onboarding, Gusto requires an additional step to review and approve that + * company. + * The company onboarding status is "onboarding_completed": false, until the API call is made to finish + * company + * onboarding. In production environments, this step is required for risk-analysis purposes. + * + *

    We provide the endpoint `PUT '/v1/companies/{company_uuid}/approve'` to facilitate company approvals + * in the demo environment. + * + *

    ```shell + * PUT '/v1/companies/89771af8-b964-472e-8064-554dfbcb56d9/approve' + * + *

    # Response: Company object, with company_status: 'Approved' + * ``` + * + *

    scope: `companies:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param companyUuid The UUID of the company - * @param partnerManagedCompanyAcceptTermsOfServiceRequest * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceResponse acceptTermsOfService(String companyUuid, PartnerManagedCompanyAcceptTermsOfServiceRequest partnerManagedCompanyAcceptTermsOfServiceRequest) { - return acceptTermsOfService(companyUuid, Optional.empty(), partnerManagedCompanyAcceptTermsOfServiceRequest); + public GetV1CompanyFinishOnboardingResponse finishOnboarding(String companyUuid) { + return finishOnboarding(Optional.empty(), companyUuid); } /** - * Accept terms of service for a company user + * Finish company onboarding * - *

    Accept the Gusto Embedded Payroll's [Terms of Service](https://flows.gusto.com/terms). - * The user must have a role in the company in order to accept the Terms of Service. + *

    Finalize a company's onboarding process. * - *

    scope: `terms_of_services:write` + *

    ### Approve a company in demo + * + *

    After a company is finished onboarding, Gusto requires an additional step to review and approve that + * company. + * The company onboarding status is "onboarding_completed": false, until the API call is made to finish + * company + * onboarding. In production environments, this step is required for risk-analysis purposes. + * + *

    We provide the endpoint `PUT '/v1/companies/{company_uuid}/approve'` to facilitate company approvals + * in the demo environment. + * + *

    ```shell + * PUT '/v1/companies/89771af8-b964-472e-8064-554dfbcb56d9/approve' + * + *

    # Response: Company object, with company_status: 'Approved' + * ``` + * + *

    scope: `companies:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param partnerManagedCompanyAcceptTermsOfServiceRequest + * @param companyUuid The UUID of the company * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceResponse acceptTermsOfService( - String companyUuid, Optional xGustoAPIVersion, - PartnerManagedCompanyAcceptTermsOfServiceRequest partnerManagedCompanyAcceptTermsOfServiceRequest) { - PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest request = - PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest + public GetV1CompanyFinishOnboardingResponse finishOnboarding(Optional xGustoAPIVersion, String companyUuid) { + GetV1CompanyFinishOnboardingRequest request = + GetV1CompanyFinishOnboardingRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) - .partnerManagedCompanyAcceptTermsOfServiceRequest(partnerManagedCompanyAcceptTermsOfServiceRequest) + .companyUuid(companyUuid) .build(); - RequestOperation operation - = new PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfService.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new GetV1CompanyFinishOnboarding.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Retrieve terms of service status for a company user + * Disassociate a partner managed company * - *

    Retrieve the user acceptance status of the Gusto Embedded Payroll's [Terms of - * Service](https://flows.gusto.com/terms). + *

    Disassociate a company from your embedded payroll product, reversing an earlier association or + * migration. You can only disassociate a company that is currently associated with your application. * - *

    scope: `terms_of_services:read` + *

    📘 System Access Authentication * - *

    If set, this operation will use Security#companyAccessAuth from the global security. + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `partner_managed_companies:disassociate` * * @return The call builder */ - public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder retrieveTermsOfService() { - return new PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder(sdkConfiguration); + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder putV1PartnerManagedCompaniesCompanyUuidDisassociate() { + return new PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder(sdkConfiguration); } /** - * Retrieve terms of service status for a company user + * Disassociate a partner managed company * - *

    Retrieve the user acceptance status of the Gusto Embedded Payroll's [Terms of - * Service](https://flows.gusto.com/terms). + *

    Disassociate a company from your embedded payroll product, reversing an earlier association or + * migration. You can only disassociate a company that is currently associated with your application. * - *

    scope: `terms_of_services:read` + *

    📘 System Access Authentication * - *

    If set, this operation will use Security#companyAccessAuth from the global security. + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) * + *

    scope: `partner_managed_companies:disassociate` + * + * @param security The security details to use for authentication. * @param companyUuid The UUID of the company - * @param partnerManagedCompanyRetrieveTermsOfServiceRequest * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceResponse retrieveTermsOfService(String companyUuid, PartnerManagedCompanyRetrieveTermsOfServiceRequest partnerManagedCompanyRetrieveTermsOfServiceRequest) { - return retrieveTermsOfService(companyUuid, Optional.empty(), partnerManagedCompanyRetrieveTermsOfServiceRequest); + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse putV1PartnerManagedCompaniesCompanyUuidDisassociate(PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity security, String companyUuid) { + return putV1PartnerManagedCompaniesCompanyUuidDisassociate(security, Optional.empty(), companyUuid); } /** - * Retrieve terms of service status for a company user + * Disassociate a partner managed company * - *

    Retrieve the user acceptance status of the Gusto Embedded Payroll's [Terms of - * Service](https://flows.gusto.com/terms). + *

    Disassociate a company from your embedded payroll product, reversing an earlier association or + * migration. You can only disassociate a company that is currently associated with your application. * - *

    scope: `terms_of_services:read` + *

    📘 System Access Authentication * - *

    If set, this operation will use Security#companyAccessAuth from the global security. + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) * - * @param companyUuid The UUID of the company + *

    scope: `partner_managed_companies:disassociate` + * + * @param security The security details to use for authentication. * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param partnerManagedCompanyRetrieveTermsOfServiceRequest + * @param companyUuid The UUID of the company * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceResponse retrieveTermsOfService( - String companyUuid, Optional xGustoAPIVersion, - PartnerManagedCompanyRetrieveTermsOfServiceRequest partnerManagedCompanyRetrieveTermsOfServiceRequest) { - PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest request = - PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse putV1PartnerManagedCompaniesCompanyUuidDisassociate( + PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity security, Optional xGustoAPIVersion, + String companyUuid) { + PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest request = + PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) - .partnerManagedCompanyRetrieveTermsOfServiceRequest(partnerManagedCompanyRetrieveTermsOfServiceRequest) + .companyUuid(companyUuid) .build(); - RequestOperation operation - = new PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfService.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PutV1PartnerManagedCompaniesCompanyUuidDisassociate.Sync(sdkConfiguration, security, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Get all the admins at a company + * Migrate company to embedded payroll * - *

    Returns a list of all the admins at a company + *

    Migrate an existing Gusto customer to your embedded payroll product. * - *

    scope: `company_admin:read` + *

    ### Prerequisites + * Before calling this endpoint: + * 1. The customer must connect their Gusto account to your application using [OAuth2](doc:oauth2) + * 2. The customer must view and [accept the Embedded Payroll Terms of + * Service](ref:post-partner-managed-companies-company_uuid-accept_terms_of_service) + * + *

    ### Related guides + * - [Migrate an existing company](doc:migrate-existing-company) + * + *

    scope: `partner_managed_companies:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public GetV1CompaniesCompanyIdAdminsRequestBuilder listAdmins() { - return new GetV1CompaniesCompanyIdAdminsRequestBuilder(sdkConfiguration); + public PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder migrate() { + return new PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder(sdkConfiguration); } /** - * Get all the admins at a company + * Migrate company to embedded payroll * - *

    Returns a list of all the admins at a company + *

    Migrate an existing Gusto customer to your embedded payroll product. * - *

    scope: `company_admin:read` + *

    ### Prerequisites + * Before calling this endpoint: + * 1. The customer must connect their Gusto account to your application using [OAuth2](doc:oauth2) + * 2. The customer must view and [accept the Embedded Payroll Terms of + * Service](ref:post-partner-managed-companies-company_uuid-accept_terms_of_service) + * + *

    ### Related guides + * - [Migrate an existing company](doc:migrate-existing-company) + * + *

    scope: `partner_managed_companies:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company + * @param companyUuid The UUID of the company + * @param partnerManagedCompanyMigrateRequest * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1CompaniesCompanyIdAdminsResponse listAdmins(String companyId) { - return listAdmins(Optional.empty(), companyId, Optional.empty(), - Optional.empty()); + public PutV1PartnerManagedCompaniesCompanyUuidMigrateResponse migrate(String companyUuid, PartnerManagedCompanyMigrateRequest partnerManagedCompanyMigrateRequest) { + return migrate(Optional.empty(), companyUuid, partnerManagedCompanyMigrateRequest); } /** - * Get all the admins at a company + * Migrate company to embedded payroll * - *

    Returns a list of all the admins at a company + *

    Migrate an existing Gusto customer to your embedded payroll product. * - *

    scope: `company_admin:read` + *

    ### Prerequisites + * Before calling this endpoint: + * 1. The customer must connect their Gusto account to your application using [OAuth2](doc:oauth2) + * 2. The customer must view and [accept the Embedded Payroll Terms of + * Service](ref:post-partner-managed-companies-company_uuid-accept_terms_of_service) + * + *

    ### Related guides + * - [Migrate an existing company](doc:migrate-existing-company) + * + *

    scope: `partner_managed_companies:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyId The UUID of the company - * @param page The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - * @param per Number of objects per page. For majority of endpoints will default to 25 + * @param companyUuid The UUID of the company + * @param partnerManagedCompanyMigrateRequest * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1CompaniesCompanyIdAdminsResponse listAdmins( - Optional xGustoAPIVersion, String companyId, - Optional page, Optional per) { - GetV1CompaniesCompanyIdAdminsRequest request = - GetV1CompaniesCompanyIdAdminsRequest + public PutV1PartnerManagedCompaniesCompanyUuidMigrateResponse migrate( + Optional xGustoAPIVersion, String companyUuid, + PartnerManagedCompanyMigrateRequest partnerManagedCompanyMigrateRequest) { + PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest request = + PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .companyId(companyId) - .page(page) - .per(per) + .companyUuid(companyUuid) + .partnerManagedCompanyMigrateRequest(partnerManagedCompanyMigrateRequest) .build(); - RequestOperation operation - = new GetV1CompaniesCompanyIdAdmins.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PutV1PartnerManagedCompaniesCompanyUuidMigrate.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Create an admin for the company - * - *

    Creates a new admin for a company. - * If the email matches an existing user, this will create an admin account for the current user. - * Otherwise, this will create a new user. - * - *

    scope: `company_admin:write` + * Create a partner managed company * - *

    If set, this operation will use Security#companyAccessAuth from the global security. + *

    Create a partner managed company. When you successfully call the API, it does the following: + * * Creates a new company in Gusto + * * Creates a new user using the provided email if the user does not already exist. + * * Makes the user the primary payroll administrator of the new company. + * + *

    In response, you will receive oauth access tokens for the created company. + * + *

    IMPORTANT: the returned access and refresh tokens are reserved for this company only. They cannot be + * used to access other companies AND previously granted tokens cannot be used to access this company. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `partner_managed_companies:manage` * * @return The call builder */ - public PostV1CompaniesCompanyIdAdminsRequestBuilder createAdmin() { - return new PostV1CompaniesCompanyIdAdminsRequestBuilder(sdkConfiguration); + public PostV1PartnerManagedCompaniesRequestBuilder createPartnerManaged() { + return new PostV1PartnerManagedCompaniesRequestBuilder(sdkConfiguration); } /** - * Create an admin for the company + * Create a partner managed company * - *

    Creates a new admin for a company. - * If the email matches an existing user, this will create an admin account for the current user. - * Otherwise, this will create a new user. + *

    Create a partner managed company. When you successfully call the API, it does the following: + * * Creates a new company in Gusto + * * Creates a new user using the provided email if the user does not already exist. + * * Makes the user the primary payroll administrator of the new company. * - *

    scope: `company_admin:write` + *

    In response, you will receive oauth access tokens for the created company. * - *

    If set, this operation will use Security#companyAccessAuth from the global security. + *

    IMPORTANT: the returned access and refresh tokens are reserved for this company only. They cannot be + * used to access other companies AND previously granted tokens cannot be used to access this company. * - * @param companyId The UUID of the company - * @param adminCreateRequest The request body for creating a company admin. + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `partner_managed_companies:manage` + * + * @param security The security details to use for authentication. + * @param partnerManagedCompanyCreateRequest * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostV1CompaniesCompanyIdAdminsResponse createAdmin(String companyId, AdminCreateRequest adminCreateRequest) { - return createAdmin(Optional.empty(), companyId, adminCreateRequest); + public PostV1PartnerManagedCompaniesResponse createPartnerManaged(PostV1PartnerManagedCompaniesSecurity security, PartnerManagedCompanyCreateRequest partnerManagedCompanyCreateRequest) { + return createPartnerManaged(security, Optional.empty(), partnerManagedCompanyCreateRequest); } /** - * Create an admin for the company + * Create a partner managed company * - *

    Creates a new admin for a company. - * If the email matches an existing user, this will create an admin account for the current user. - * Otherwise, this will create a new user. + *

    Create a partner managed company. When you successfully call the API, it does the following: + * * Creates a new company in Gusto + * * Creates a new user using the provided email if the user does not already exist. + * * Makes the user the primary payroll administrator of the new company. * - *

    scope: `company_admin:write` + *

    In response, you will receive oauth access tokens for the created company. * - *

    If set, this operation will use Security#companyAccessAuth from the global security. + *

    IMPORTANT: the returned access and refresh tokens are reserved for this company only. They cannot be + * used to access other companies AND previously granted tokens cannot be used to access this company. + * + *

    📘 System Access Authentication * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `partner_managed_companies:manage` + * + * @param security The security details to use for authentication. * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyId The UUID of the company - * @param adminCreateRequest The request body for creating a company admin. + * @param partnerManagedCompanyCreateRequest * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostV1CompaniesCompanyIdAdminsResponse createAdmin( - Optional xGustoAPIVersion, String companyId, - AdminCreateRequest adminCreateRequest) { - PostV1CompaniesCompanyIdAdminsRequest request = - PostV1CompaniesCompanyIdAdminsRequest + public PostV1PartnerManagedCompaniesResponse createPartnerManaged( + PostV1PartnerManagedCompaniesSecurity security, Optional xGustoAPIVersion, + PartnerManagedCompanyCreateRequest partnerManagedCompanyCreateRequest) { + PostV1PartnerManagedCompaniesRequest request = + PostV1PartnerManagedCompaniesRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .companyId(companyId) - .adminCreateRequest(adminCreateRequest) + .partnerManagedCompanyCreateRequest(partnerManagedCompanyCreateRequest) .build(); - RequestOperation operation - = new PostV1CompaniesCompanyIdAdmins.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PostV1PartnerManagedCompanies.Sync(sdkConfiguration, security, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Get company onboarding status + * Check company migration readiness * - *

    Retrieves a company's onboarding status, including whether onboarding is complete and the list of - * required onboarding steps with their respective completion state. + *

    Check if an existing Gusto customer is ready to be migrated to embedded payroll. This endpoint + * returns blockers and warnings associated with migrating the company and is recommended to be called + * before attempting to migrate a company. * - *

    scope: `company_onboarding_status:read` + *

    scope: `partner_managed_companies:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public GetV1CompanyOnboardingStatusRequestBuilder getOnboardingStatus() { - return new GetV1CompanyOnboardingStatusRequestBuilder(sdkConfiguration); + public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder getV1PartnerManagedCompaniesCompanyUuidMigrationReadiness() { + return new GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder(sdkConfiguration); } /** - * Get company onboarding status + * Check company migration readiness * - *

    Retrieves a company's onboarding status, including whether onboarding is complete and the list of - * required onboarding steps with their respective completion state. + *

    Check if an existing Gusto customer is ready to be migrated to embedded payroll. This endpoint + * returns blockers and warnings associated with migrating the company and is recommended to be called + * before attempting to migrate a company. * - *

    scope: `company_onboarding_status:read` + *

    scope: `partner_managed_companies:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * @@ -781,215 +909,167 @@ public GetV1CompanyOnboardingStatusRequestBuilder getOnboardingStatus() { * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1CompanyOnboardingStatusResponse getOnboardingStatus(String companyUuid) { - return getOnboardingStatus(companyUuid, Optional.empty(), Optional.empty()); + public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessResponse getV1PartnerManagedCompaniesCompanyUuidMigrationReadiness(String companyUuid) { + return getV1PartnerManagedCompaniesCompanyUuidMigrationReadiness(Optional.empty(), companyUuid); } /** - * Get company onboarding status + * Check company migration readiness * - *

    Retrieves a company's onboarding status, including whether onboarding is complete and the list of - * required onboarding steps with their respective completion state. + *

    Check if an existing Gusto customer is ready to be migrated to embedded payroll. This endpoint + * returns blockers and warnings associated with migrating the company and is recommended to be called + * before attempting to migrate a company. * - *

    scope: `company_onboarding_status:read` + *

    scope: `partner_managed_companies:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company - * @param additionalSteps Comma-delimited string of additional onboarding steps to include. Currently only supports the value "external_payroll". * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1CompanyOnboardingStatusResponse getOnboardingStatus( - String companyUuid, Optional additionalSteps, - Optional xGustoAPIVersion) { - GetV1CompanyOnboardingStatusRequest request = - GetV1CompanyOnboardingStatusRequest + public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessResponse getV1PartnerManagedCompaniesCompanyUuidMigrationReadiness(Optional xGustoAPIVersion, String companyUuid) { + GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest request = + GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest .builder() - .companyUuid(companyUuid) - .additionalSteps(additionalSteps) .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) .build(); - RequestOperation operation - = new GetV1CompanyOnboardingStatus.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new GetV1PartnerManagedCompaniesCompanyUuidMigrationReadiness.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Finish company onboarding - * - *

    Finalize a company's onboarding process. - * - *

    ### Approve a company in demo - * - *

    After a company is finished onboarding, Gusto requires an additional step to review and approve that - * company. - * The company onboarding status is "onboarding_completed": false, until the API call is made to finish - * company - * onboarding. In production environments, this step is required for risk-analysis purposes. - * - *

    We provide the endpoint `PUT '/v1/companies/{company_uuid}/approve'` to facilitate company approvals - * in the demo environment. - * - *

    ```shell - * PUT '/v1/companies/89771af8-b964-472e-8064-554dfbcb56d9/approve' + * Accept terms of service for a company user * - *

    # Response: Company object, with company_status: 'Approved' - * ``` + *

    Accept the Gusto Embedded Payroll's [Terms of Service](https://flows.gusto.com/terms). + * The user must have a role in the company in order to accept the Terms of Service. * - *

    scope: `companies:write` + *

    scope: `terms_of_services:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public GetV1CompanyFinishOnboardingRequestBuilder finishOnboarding() { - return new GetV1CompanyFinishOnboardingRequestBuilder(sdkConfiguration); + public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBuilder acceptTermsOfService() { + return new PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBuilder(sdkConfiguration); } /** - * Finish company onboarding - * - *

    Finalize a company's onboarding process. - * - *

    ### Approve a company in demo - * - *

    After a company is finished onboarding, Gusto requires an additional step to review and approve that - * company. - * The company onboarding status is "onboarding_completed": false, until the API call is made to finish - * company - * onboarding. In production environments, this step is required for risk-analysis purposes. - * - *

    We provide the endpoint `PUT '/v1/companies/{company_uuid}/approve'` to facilitate company approvals - * in the demo environment. - * - *

    ```shell - * PUT '/v1/companies/89771af8-b964-472e-8064-554dfbcb56d9/approve' + * Accept terms of service for a company user * - *

    # Response: Company object, with company_status: 'Approved' - * ``` + *

    Accept the Gusto Embedded Payroll's [Terms of Service](https://flows.gusto.com/terms). + * The user must have a role in the company in order to accept the Terms of Service. * - *

    scope: `companies:write` + *

    scope: `terms_of_services:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param companyUuid The UUID of the company + * @param partnerManagedCompanyAcceptTermsOfServiceRequest * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1CompanyFinishOnboardingResponse finishOnboarding(String companyUuid) { - return finishOnboarding(companyUuid, Optional.empty()); + public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceResponse acceptTermsOfService(String companyUuid, PartnerManagedCompanyAcceptTermsOfServiceRequest partnerManagedCompanyAcceptTermsOfServiceRequest) { + return acceptTermsOfService(Optional.empty(), companyUuid, partnerManagedCompanyAcceptTermsOfServiceRequest); } /** - * Finish company onboarding - * - *

    Finalize a company's onboarding process. - * - *

    ### Approve a company in demo - * - *

    After a company is finished onboarding, Gusto requires an additional step to review and approve that - * company. - * The company onboarding status is "onboarding_completed": false, until the API call is made to finish - * company - * onboarding. In production environments, this step is required for risk-analysis purposes. - * - *

    We provide the endpoint `PUT '/v1/companies/{company_uuid}/approve'` to facilitate company approvals - * in the demo environment. - * - *

    ```shell - * PUT '/v1/companies/89771af8-b964-472e-8064-554dfbcb56d9/approve' + * Accept terms of service for a company user * - *

    # Response: Company object, with company_status: 'Approved' - * ``` + *

    Accept the Gusto Embedded Payroll's [Terms of Service](https://flows.gusto.com/terms). + * The user must have a role in the company in order to accept the Terms of Service. * - *

    scope: `companies:write` + *

    scope: `terms_of_services:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company + * @param partnerManagedCompanyAcceptTermsOfServiceRequest * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1CompanyFinishOnboardingResponse finishOnboarding(String companyUuid, Optional xGustoAPIVersion) { - GetV1CompanyFinishOnboardingRequest request = - GetV1CompanyFinishOnboardingRequest + public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceResponse acceptTermsOfService( + Optional xGustoAPIVersion, String companyUuid, + PartnerManagedCompanyAcceptTermsOfServiceRequest partnerManagedCompanyAcceptTermsOfServiceRequest) { + PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest request = + PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) + .partnerManagedCompanyAcceptTermsOfServiceRequest(partnerManagedCompanyAcceptTermsOfServiceRequest) .build(); - RequestOperation operation - = new GetV1CompanyFinishOnboarding.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfService.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Get the custom fields of a company + * Retrieve terms of service status for a company user * - *

    Returns a list of the custom fields of the company. Useful when you need to know the schema of - * custom fields for an entire company. + *

    Retrieve the user acceptance status of the Gusto Embedded Payroll's [Terms of + * Service](https://flows.gusto.com/terms). * - *

    scope: `companies:read` + *

    scope: `terms_of_services:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public GetV1CompaniesCompanyIdCustomFieldsRequestBuilder getCustomFields() { - return new GetV1CompaniesCompanyIdCustomFieldsRequestBuilder(sdkConfiguration); + public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder retrieveTermsOfService() { + return new PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder(sdkConfiguration); } /** - * Get the custom fields of a company + * Retrieve terms of service status for a company user * - *

    Returns a list of the custom fields of the company. Useful when you need to know the schema of - * custom fields for an entire company. + *

    Retrieve the user acceptance status of the Gusto Embedded Payroll's [Terms of + * Service](https://flows.gusto.com/terms). * - *

    scope: `companies:read` + *

    scope: `terms_of_services:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company + * @param companyUuid The UUID of the company + * @param partnerManagedCompanyRetrieveTermsOfServiceRequest * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1CompaniesCompanyIdCustomFieldsResponse getCustomFields(String companyId) { - return getCustomFields(Optional.empty(), companyId, Optional.empty(), - Optional.empty()); + public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceResponse retrieveTermsOfService(String companyUuid, PartnerManagedCompanyRetrieveTermsOfServiceRequest partnerManagedCompanyRetrieveTermsOfServiceRequest) { + return retrieveTermsOfService(Optional.empty(), companyUuid, partnerManagedCompanyRetrieveTermsOfServiceRequest); } /** - * Get the custom fields of a company + * Retrieve terms of service status for a company user * - *

    Returns a list of the custom fields of the company. Useful when you need to know the schema of - * custom fields for an entire company. + *

    Retrieve the user acceptance status of the Gusto Embedded Payroll's [Terms of + * Service](https://flows.gusto.com/terms). * - *

    scope: `companies:read` + *

    scope: `terms_of_services:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyId The UUID of the company - * @param page The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - * @param per Number of objects per page. For majority of endpoints will default to 25 + * @param companyUuid The UUID of the company + * @param partnerManagedCompanyRetrieveTermsOfServiceRequest * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1CompaniesCompanyIdCustomFieldsResponse getCustomFields( - Optional xGustoAPIVersion, String companyId, - Optional page, Optional per) { - GetV1CompaniesCompanyIdCustomFieldsRequest request = - GetV1CompaniesCompanyIdCustomFieldsRequest + public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceResponse retrieveTermsOfService( + Optional xGustoAPIVersion, String companyUuid, + PartnerManagedCompanyRetrieveTermsOfServiceRequest partnerManagedCompanyRetrieveTermsOfServiceRequest) { + PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest request = + PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .companyId(companyId) - .page(page) - .per(per) + .companyUuid(companyUuid) + .partnerManagedCompanyRetrieveTermsOfServiceRequest(partnerManagedCompanyRetrieveTermsOfServiceRequest) .build(); - RequestOperation operation - = new GetV1CompaniesCompanyIdCustomFields.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfService.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/CompanyAttachments.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/CompanyAttachments.java index 8a57e2bd3..15b2633a3 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/CompanyAttachments.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/CompanyAttachments.java @@ -46,9 +46,9 @@ public AsyncCompanyAttachments async() { } /** - * Get Company Attachment Details + * Get List of Company Attachments * - *

    Retrieve the detail of an attachment uploaded by the company. + *

    Retrieve a list of all the attachments uploaded by the company. * *

    ### Related guides * - [Manage company attachments](doc:manage-company-attachments) @@ -59,14 +59,14 @@ public AsyncCompanyAttachments async() { * * @return The call builder */ - public GetV1CompaniesAttachmentRequestBuilder getDetails() { - return new GetV1CompaniesAttachmentRequestBuilder(sdkConfiguration); + public GetV1CompaniesAttachmentsRequestBuilder getList() { + return new GetV1CompaniesAttachmentsRequestBuilder(sdkConfiguration); } /** - * Get Company Attachment Details + * Get List of Company Attachments * - *

    Retrieve the detail of an attachment uploaded by the company. + *

    Retrieve a list of all the attachments uploaded by the company. * *

    ### Related guides * - [Manage company attachments](doc:manage-company-attachments) @@ -76,18 +76,17 @@ public GetV1CompaniesAttachmentRequestBuilder getDetails() { *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param companyId The UUID of the company - * @param companyAttachmentUuid The UUID of the company attachment * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1CompaniesAttachmentResponse getDetails(String companyId, String companyAttachmentUuid) { - return getDetails(Optional.empty(), companyId, companyAttachmentUuid); + public GetV1CompaniesAttachmentsResponse getList(String companyId) { + return getList(Optional.empty(), companyId); } /** - * Get Company Attachment Details + * Get List of Company Attachments * - *

    Retrieve the detail of an attachment uploaded by the company. + *

    Retrieve a list of all the attachments uploaded by the company. * *

    ### Related guides * - [Manage company attachments](doc:manage-company-attachments) @@ -98,167 +97,168 @@ public GetV1CompaniesAttachmentResponse getDetails(String companyId, String comp * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyId The UUID of the company - * @param companyAttachmentUuid The UUID of the company attachment * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1CompaniesAttachmentResponse getDetails( - Optional xGustoAPIVersion, String companyId, - String companyAttachmentUuid) { - GetV1CompaniesAttachmentRequest request = - GetV1CompaniesAttachmentRequest + public GetV1CompaniesAttachmentsResponse getList(Optional xGustoAPIVersion, String companyId) { + GetV1CompaniesAttachmentsRequest request = + GetV1CompaniesAttachmentsRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .companyId(companyId) - .companyAttachmentUuid(companyAttachmentUuid) .build(); - RequestOperation operation - = new GetV1CompaniesAttachment.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new GetV1CompaniesAttachments.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Get List of Company Attachments + * Create Company Attachment and Upload File * - *

    Retrieve a list of all the attachments uploaded by the company. + *

    Upload a file and create a company attachment. We recommend uploading PDF files for optimal + * compatibility. However, the following file types are allowed: .qbb, .qbm, .gif, .jpg, .png, .pdf, + * .xls, .xlsx, .doc and .docx. * *

    ### Related guides * - [Manage company attachments](doc:manage-company-attachments) * - *

    scope: `company_attachments:read` + *

    scope: `company_attachments:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public GetV1CompaniesAttachmentsRequestBuilder getList() { - return new GetV1CompaniesAttachmentsRequestBuilder(sdkConfiguration); + public PostV1CompaniesAttachmentRequestBuilder create() { + return new PostV1CompaniesAttachmentRequestBuilder(sdkConfiguration); } /** - * Get List of Company Attachments + * Create Company Attachment and Upload File * - *

    Retrieve a list of all the attachments uploaded by the company. + *

    Upload a file and create a company attachment. We recommend uploading PDF files for optimal + * compatibility. However, the following file types are allowed: .qbb, .qbm, .gif, .jpg, .png, .pdf, + * .xls, .xlsx, .doc and .docx. * *

    ### Related guides * - [Manage company attachments](doc:manage-company-attachments) * - *

    scope: `company_attachments:read` + *

    scope: `company_attachments:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param companyId The UUID of the company + * @param companyAttachmentCreateRequestBody The binary payload of the file and the company attachment category. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1CompaniesAttachmentsResponse getList(String companyId) { - return getList(Optional.empty(), companyId); + public PostV1CompaniesAttachmentResponse create(String companyId, CompanyAttachmentCreateRequestBody companyAttachmentCreateRequestBody) { + return create(Optional.empty(), companyId, companyAttachmentCreateRequestBody); } /** - * Get List of Company Attachments + * Create Company Attachment and Upload File * - *

    Retrieve a list of all the attachments uploaded by the company. + *

    Upload a file and create a company attachment. We recommend uploading PDF files for optimal + * compatibility. However, the following file types are allowed: .qbb, .qbm, .gif, .jpg, .png, .pdf, + * .xls, .xlsx, .doc and .docx. * *

    ### Related guides * - [Manage company attachments](doc:manage-company-attachments) * - *

    scope: `company_attachments:read` + *

    scope: `company_attachments:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyId The UUID of the company + * @param companyAttachmentCreateRequestBody The binary payload of the file and the company attachment category. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1CompaniesAttachmentsResponse getList(Optional xGustoAPIVersion, String companyId) { - GetV1CompaniesAttachmentsRequest request = - GetV1CompaniesAttachmentsRequest + public PostV1CompaniesAttachmentResponse create( + Optional xGustoAPIVersion, String companyId, + CompanyAttachmentCreateRequestBody companyAttachmentCreateRequestBody) { + PostV1CompaniesAttachmentRequest request = + PostV1CompaniesAttachmentRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .companyId(companyId) + .companyAttachmentCreateRequestBody(companyAttachmentCreateRequestBody) .build(); - RequestOperation operation - = new GetV1CompaniesAttachments.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PostV1CompaniesAttachment.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Create Company Attachment and Upload File + * Get Company Attachment Details * - *

    Upload a file and create a company attachment. We recommend uploading PDF files for optimal - * compatibility. However, the following file types are allowed: .qbb, .qbm, .gif, .jpg, .png, .pdf, - * .xls, .xlsx, .doc and .docx. + *

    Retrieve the detail of an attachment uploaded by the company. * *

    ### Related guides * - [Manage company attachments](doc:manage-company-attachments) * - *

    scope: `company_attachments:write` + *

    scope: `company_attachments:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public PostV1CompaniesAttachmentRequestBuilder create() { - return new PostV1CompaniesAttachmentRequestBuilder(sdkConfiguration); + public GetV1CompaniesAttachmentRequestBuilder getDetails() { + return new GetV1CompaniesAttachmentRequestBuilder(sdkConfiguration); } /** - * Create Company Attachment and Upload File + * Get Company Attachment Details * - *

    Upload a file and create a company attachment. We recommend uploading PDF files for optimal - * compatibility. However, the following file types are allowed: .qbb, .qbm, .gif, .jpg, .png, .pdf, - * .xls, .xlsx, .doc and .docx. + *

    Retrieve the detail of an attachment uploaded by the company. * *

    ### Related guides * - [Manage company attachments](doc:manage-company-attachments) * - *

    scope: `company_attachments:write` + *

    scope: `company_attachments:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param companyId The UUID of the company - * @param companyAttachmentCreateRequestBody The binary payload of the file and the company attachment category. + * @param companyAttachmentUuid The UUID of the company attachment * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostV1CompaniesAttachmentResponse create(String companyId, CompanyAttachmentCreateRequestBody companyAttachmentCreateRequestBody) { - return create(Optional.empty(), companyId, companyAttachmentCreateRequestBody); + public GetV1CompaniesAttachmentResponse getDetails(String companyId, String companyAttachmentUuid) { + return getDetails(Optional.empty(), companyId, companyAttachmentUuid); } /** - * Create Company Attachment and Upload File + * Get Company Attachment Details * - *

    Upload a file and create a company attachment. We recommend uploading PDF files for optimal - * compatibility. However, the following file types are allowed: .qbb, .qbm, .gif, .jpg, .png, .pdf, - * .xls, .xlsx, .doc and .docx. + *

    Retrieve the detail of an attachment uploaded by the company. * *

    ### Related guides * - [Manage company attachments](doc:manage-company-attachments) * - *

    scope: `company_attachments:write` + *

    scope: `company_attachments:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyId The UUID of the company - * @param companyAttachmentCreateRequestBody The binary payload of the file and the company attachment category. + * @param companyAttachmentUuid The UUID of the company attachment * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostV1CompaniesAttachmentResponse create( - Optional xGustoAPIVersion, String companyId, - CompanyAttachmentCreateRequestBody companyAttachmentCreateRequestBody) { - PostV1CompaniesAttachmentRequest request = - PostV1CompaniesAttachmentRequest + public GetV1CompaniesAttachmentResponse getDetails( + Optional xGustoAPIVersion, String companyId, + String companyAttachmentUuid) { + GetV1CompaniesAttachmentRequest request = + GetV1CompaniesAttachmentRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .companyId(companyId) - .companyAttachmentCreateRequestBody(companyAttachmentCreateRequestBody) + .companyAttachmentUuid(companyAttachmentUuid) .build(); - RequestOperation operation - = new PostV1CompaniesAttachment.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new GetV1CompaniesAttachment.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/CompanyBenefits.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/CompanyBenefits.java index 5bda5c26c..09a5aba4c 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/CompanyBenefits.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/CompanyBenefits.java @@ -39,10 +39,10 @@ import com.gusto.embedded_api.models.operations.GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsRequestBuilder; import com.gusto.embedded_api.models.operations.GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsResponse; import com.gusto.embedded_api.models.operations.GetV1CompanyBenefitsCompanyBenefitIdHeaderXGustoAPIVersion; -import com.gusto.embedded_api.models.operations.GetV1CompanyBenefitsCompanyBenefitIdQueryParamInclude; import com.gusto.embedded_api.models.operations.GetV1CompanyBenefitsCompanyBenefitIdRequest; import com.gusto.embedded_api.models.operations.GetV1CompanyBenefitsCompanyBenefitIdRequestBuilder; import com.gusto.embedded_api.models.operations.GetV1CompanyBenefitsCompanyBenefitIdResponse; +import com.gusto.embedded_api.models.operations.Include; import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyIdCompanyBenefitsHeaderXGustoAPIVersion; import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyIdCompanyBenefitsRequest; import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyIdCompanyBenefitsRequestBuilder; @@ -97,6 +97,189 @@ public AsyncCompanyBenefits async() { return asyncSDK; } + /** + * Get all supported benefits + * + *

    Returns all benefits supported by Gusto. The benefit object in Gusto contains high level information + * about a particular benefit type and its tax considerations. When companies choose to offer a + * benefit, they are creating a Company Benefit object associated with a particular benefit. + * + *

    scope: `benefits:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public GetV1BenefitsRequestBuilder getAll() { + return new GetV1BenefitsRequestBuilder(sdkConfiguration); + } + + /** + * Get all supported benefits + * + *

    Returns all benefits supported by Gusto. The benefit object in Gusto contains high level information + * about a particular benefit type and its tax considerations. When companies choose to offer a + * benefit, they are creating a Company Benefit object associated with a particular benefit. + * + *

    scope: `benefits:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1BenefitsResponse getAllDirect() { + return getAll(Optional.empty()); + } + + /** + * Get all supported benefits + * + *

    Returns all benefits supported by Gusto. The benefit object in Gusto contains high level information + * about a particular benefit type and its tax considerations. When companies choose to offer a + * benefit, they are creating a Company Benefit object associated with a particular benefit. + * + *

    scope: `benefits:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1BenefitsResponse getAll(Optional xGustoAPIVersion) { + GetV1BenefitsRequest request = + GetV1BenefitsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .build(); + RequestOperation operation + = new GetV1Benefits.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + + /** + * Get a supported benefit + * + *

    Returns a benefit supported by Gusto. The benefit object in Gusto contains high level information + * about a particular benefit type and its tax considerations. When companies choose to offer a + * benefit, they are creating a Company Benefit object associated with a particular benefit. + * + *

    scope: `benefits:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public GetV1BenefitsBenefitIdRequestBuilder getSupported() { + return new GetV1BenefitsBenefitIdRequestBuilder(sdkConfiguration); + } + + /** + * Get a supported benefit + * + *

    Returns a benefit supported by Gusto. The benefit object in Gusto contains high level information + * about a particular benefit type and its tax considerations. When companies choose to offer a + * benefit, they are creating a Company Benefit object associated with a particular benefit. + * + *

    scope: `benefits:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param benefitId The benefit type in Gusto. + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1BenefitsBenefitIdResponse getSupported(String benefitId) { + return getSupported(Optional.empty(), benefitId); + } + + /** + * Get a supported benefit + * + *

    Returns a benefit supported by Gusto. The benefit object in Gusto contains high level information + * about a particular benefit type and its tax considerations. When companies choose to offer a + * benefit, they are creating a Company Benefit object associated with a particular benefit. + * + *

    scope: `benefits:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param benefitId The benefit type in Gusto. + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1BenefitsBenefitIdResponse getSupported(Optional xGustoAPIVersion, String benefitId) { + GetV1BenefitsBenefitIdRequest request = + GetV1BenefitsBenefitIdRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .benefitId(benefitId) + .build(); + RequestOperation operation + = new GetV1BenefitsBenefitId.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + + /** + * Get benefit fields requirements by benefit type + * + *

    Returns the field requirements for a given benefit type. + * + *

    scope: `benefits:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public GetV1BenefitsBenefitsIdRequirementsRequestBuilder getRequirements() { + return new GetV1BenefitsBenefitsIdRequirementsRequestBuilder(sdkConfiguration); + } + + /** + * Get benefit fields requirements by benefit type + * + *

    Returns the field requirements for a given benefit type. + * + *

    scope: `benefits:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param benefitId The benefit type in Gusto. + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1BenefitsBenefitsIdRequirementsResponse getRequirements(String benefitId) { + return getRequirements(Optional.empty(), benefitId); + } + + /** + * Get benefit fields requirements by benefit type + * + *

    Returns the field requirements for a given benefit type. + * + *

    scope: `benefits:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param benefitId The benefit type in Gusto. + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1BenefitsBenefitsIdRequirementsResponse getRequirements(Optional xGustoAPIVersion, String benefitId) { + GetV1BenefitsBenefitsIdRequirementsRequest request = + GetV1BenefitsBenefitsIdRequirementsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .benefitId(benefitId) + .build(); + RequestOperation operation + = new GetV1BenefitsBenefitsIdRequirements.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + /** * Get benefits for a company * @@ -303,7 +486,7 @@ public GetV1CompanyBenefitsCompanyBenefitIdResponse get(String companyBenefitId) */ public GetV1CompanyBenefitsCompanyBenefitIdResponse get( Optional xGustoAPIVersion, String companyBenefitId, - Optional withEmployeeBenefits, Optional include) { + Optional withEmployeeBenefits, Optional include) { GetV1CompanyBenefitsCompanyBenefitIdRequest request = GetV1CompanyBenefitsCompanyBenefitIdRequest .builder() @@ -486,169 +669,6 @@ public DeleteV1CompanyBenefitsCompanyBenefitIdResponse delete(OptionalReturns all benefits supported by Gusto. The benefit object in Gusto contains high level information - * about a particular benefit type and its tax considerations. When companies choose to offer a - * benefit, they are creating a Company Benefit object associated with a particular benefit. - * - *

    scope: `benefits:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The call builder - */ - public GetV1BenefitsRequestBuilder getAll() { - return new GetV1BenefitsRequestBuilder(sdkConfiguration); - } - - /** - * Get all supported benefits - * - *

    Returns all benefits supported by Gusto. The benefit object in Gusto contains high level information - * about a particular benefit type and its tax considerations. When companies choose to offer a - * benefit, they are creating a Company Benefit object associated with a particular benefit. - * - *

    scope: `benefits:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public GetV1BenefitsResponse getAllDirect() { - return getAll(Optional.empty()); - } - - /** - * Get all supported benefits - * - *

    Returns all benefits supported by Gusto. The benefit object in Gusto contains high level information - * about a particular benefit type and its tax considerations. When companies choose to offer a - * benefit, they are creating a Company Benefit object associated with a particular benefit. - * - *

    scope: `benefits:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public GetV1BenefitsResponse getAll(Optional xGustoAPIVersion) { - GetV1BenefitsRequest request = - GetV1BenefitsRequest - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .build(); - RequestOperation operation - = new GetV1Benefits.Sync(sdkConfiguration, _headers); - return operation.handleResponse(operation.doRequest(request)); - } - - /** - * Get a supported benefit - * - *

    Returns a benefit supported by Gusto. The benefit object in Gusto contains high level information - * about a particular benefit type and its tax considerations. When companies choose to offer a - * benefit, they are creating a Company Benefit object associated with a particular benefit. - * - *

    scope: `benefits:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The call builder - */ - public GetV1BenefitsBenefitIdRequestBuilder getSupported() { - return new GetV1BenefitsBenefitIdRequestBuilder(sdkConfiguration); - } - - /** - * Get a supported benefit - * - *

    Returns a benefit supported by Gusto. The benefit object in Gusto contains high level information - * about a particular benefit type and its tax considerations. When companies choose to offer a - * benefit, they are creating a Company Benefit object associated with a particular benefit. - * - *

    scope: `benefits:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param benefitId The benefit type in Gusto. - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public GetV1BenefitsBenefitIdResponse getSupported(String benefitId) { - return getSupported(Optional.empty(), benefitId); - } - - /** - * Get a supported benefit - * - *

    Returns a benefit supported by Gusto. The benefit object in Gusto contains high level information - * about a particular benefit type and its tax considerations. When companies choose to offer a - * benefit, they are creating a Company Benefit object associated with a particular benefit. - * - *

    scope: `benefits:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param benefitId The benefit type in Gusto. - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public GetV1BenefitsBenefitIdResponse getSupported(Optional xGustoAPIVersion, String benefitId) { - GetV1BenefitsBenefitIdRequest request = - GetV1BenefitsBenefitIdRequest - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .benefitId(benefitId) - .build(); - RequestOperation operation - = new GetV1BenefitsBenefitId.Sync(sdkConfiguration, _headers); - return operation.handleResponse(operation.doRequest(request)); - } - - /** - * Get company benefit summary by company benefit id. - * - *

    Returns summary benefit data for the requested company benefit id. - * - *

    Benefits containing PHI are only visible to applications with the `company_benefits:read:phi` scope. - * - *

    scope: `company_benefits:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The call builder - */ - public GetV1BenefitsCompanyBenefitIdSummaryRequestBuilder getSummary() { - return new GetV1BenefitsCompanyBenefitIdSummaryRequestBuilder(sdkConfiguration); - } - - /** - * Get company benefit summary by company benefit id. - * - *

    Returns summary benefit data for the requested company benefit id. - * - *

    Benefits containing PHI are only visible to applications with the `company_benefits:read:phi` scope. - * - *

    scope: `company_benefits:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param request The request object containing all the parameters for the API call. - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public GetV1BenefitsCompanyBenefitIdSummaryResponse getSummary(GetV1BenefitsCompanyBenefitIdSummaryRequest request) { - RequestOperation operation - = new GetV1BenefitsCompanyBenefitIdSummary.Sync(sdkConfiguration, _headers); - return operation.handleResponse(operation.doRequest(request)); - } - /** * Get all employee benefits for a company benefit * @@ -792,60 +812,40 @@ public PutV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsResponse updateEmploy } /** - * Get benefit fields requirements by benefit type + * Get company benefit summary by company benefit id. * - *

    Returns the field requirements for a given benefit type. + *

    Returns summary benefit data for the requested company benefit id. * - *

    scope: `benefits:read` + *

    Benefits containing PHI are only visible to applications with the `company_benefits:read:phi` scope. + * + *

    scope: `company_benefits:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public GetV1BenefitsBenefitsIdRequirementsRequestBuilder getRequirements() { - return new GetV1BenefitsBenefitsIdRequirementsRequestBuilder(sdkConfiguration); + public GetV1BenefitsCompanyBenefitIdSummaryRequestBuilder getSummary() { + return new GetV1BenefitsCompanyBenefitIdSummaryRequestBuilder(sdkConfiguration); } /** - * Get benefit fields requirements by benefit type - * - *

    Returns the field requirements for a given benefit type. - * - *

    scope: `benefits:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. + * Get company benefit summary by company benefit id. * - * @param benefitId The benefit type in Gusto. - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public GetV1BenefitsBenefitsIdRequirementsResponse getRequirements(String benefitId) { - return getRequirements(Optional.empty(), benefitId); - } - - /** - * Get benefit fields requirements by benefit type + *

    Returns summary benefit data for the requested company benefit id. * - *

    Returns the field requirements for a given benefit type. + *

    Benefits containing PHI are only visible to applications with the `company_benefits:read:phi` scope. * - *

    scope: `benefits:read` + *

    scope: `company_benefits:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param benefitId The benefit type in Gusto. + * @param request The request object containing all the parameters for the API call. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1BenefitsBenefitsIdRequirementsResponse getRequirements(Optional xGustoAPIVersion, String benefitId) { - GetV1BenefitsBenefitsIdRequirementsRequest request = - GetV1BenefitsBenefitsIdRequirementsRequest - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .benefitId(benefitId) - .build(); - RequestOperation operation - = new GetV1BenefitsBenefitsIdRequirements.Sync(sdkConfiguration, _headers); + public GetV1BenefitsCompanyBenefitIdSummaryResponse getSummary(GetV1BenefitsCompanyBenefitIdSummaryRequest request) { + RequestOperation operation + = new GetV1BenefitsCompanyBenefitIdSummary.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/ContractorPaymentGroups.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/ContractorPaymentGroups.java index e3248f156..9f1ecebf1 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/ContractorPaymentGroups.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/ContractorPaymentGroups.java @@ -72,10 +72,14 @@ public AsyncContractorPaymentGroups async() { } /** - * Get contractor payment groups for a company + * Preview a contractor payment group * - *

    Returns a list of minimal contractor payment groups within a given time period, including totals but - * not associated contractor payments. + *

    Preview a group of contractor payments. Request will validate inputs and return preview of the + * contractor payment group including the expected `debit_date`. The `uuid` field will be null in the + * response. + * + *

    The returned `creation_token` is a required parameter in order to create the contractor payment + * group. * *

    scope: `payrolls:read` * @@ -83,35 +87,79 @@ public AsyncContractorPaymentGroups async() { * * @return The call builder */ - public GetV1CompaniesCompanyIdContractorPaymentGroupsRequestBuilder getList() { - return new GetV1CompaniesCompanyIdContractorPaymentGroupsRequestBuilder(sdkConfiguration); + public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBuilder preview() { + return new PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBuilder(sdkConfiguration); } /** - * Get contractor payment groups for a company + * Preview a contractor payment group * - *

    Returns a list of minimal contractor payment groups within a given time period, including totals but - * not associated contractor payments. + *

    Preview a group of contractor payments. Request will validate inputs and return preview of the + * contractor payment group including the expected `debit_date`. The `uuid` field will be null in the + * response. + * + *

    The returned `creation_token` is a required parameter in order to create the contractor payment + * group. * *

    scope: `payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param request The request object containing all the parameters for the API call. + * @param companyId The UUID of the company + * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1CompaniesCompanyIdContractorPaymentGroupsResponse getList(GetV1CompaniesCompanyIdContractorPaymentGroupsRequest request) { - RequestOperation operation - = new GetV1CompaniesCompanyIdContractorPaymentGroups.Sync(sdkConfiguration, _headers); + public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewResponse preview(String companyId, PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBody requestBody) { + return preview(Optional.empty(), companyId, requestBody); + } + + /** + * Preview a contractor payment group + * + *

    Preview a group of contractor payments. Request will validate inputs and return preview of the + * contractor payment group including the expected `debit_date`. The `uuid` field will be null in the + * response. + * + *

    The returned `creation_token` is a required parameter in order to create the contractor payment + * group. + * + *

    scope: `payrolls:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company + * @param requestBody + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewResponse preview( + Optional xGustoAPIVersion, String companyId, + PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBody requestBody) { + PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequest request = + PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) + .requestBody(requestBody) + .build(); + RequestOperation operation + = new PostV1CompaniesCompanyIdContractorPaymentGroupsPreview.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Create a contractor payment group + * Fund a contractor payment group [DEMO] * - *

    Pay a group of contractors. Information needed depends on the contractor's wage type (hourly vs - * fixed) + *

    > 🚧 Demo action + * > This action is only available in the Demo environment + * + *

    Simulate funding a contractor payment group. Funding only occurs automatically in the production + * environment when bank transactions are generated. Use this action in the demo environment to + * transition a contractor payment group's `status` from `Unfunded` to `Funded`. + * + *

    A `Funded` status is required for generating a contractor payment receipt. * *

    scope: `payrolls:run` * @@ -119,69 +167,72 @@ public GetV1CompaniesCompanyIdContractorPaymentGroupsResponse getList(GetV1Compa * * @return The call builder */ - public PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBuilder create() { - return new PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBuilder(sdkConfiguration); + public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequestBuilder fund() { + return new PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequestBuilder(sdkConfiguration); } /** - * Create a contractor payment group + * Fund a contractor payment group [DEMO] * - *

    Pay a group of contractors. Information needed depends on the contractor's wage type (hourly vs - * fixed) + *

    > 🚧 Demo action + * > This action is only available in the Demo environment + * + *

    Simulate funding a contractor payment group. Funding only occurs automatically in the production + * environment when bank transactions are generated. Use this action in the demo environment to + * transition a contractor payment group's `status` from `Unfunded` to `Funded`. + * + *

    A `Funded` status is required for generating a contractor payment receipt. * *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company - * @param requestBody + * @param contractorPaymentGroupUuid The UUID of the contractor payment group * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostV1CompaniesCompanyIdContractorPaymentGroupsResponse create(String companyId, PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBody requestBody) { - return create(Optional.empty(), companyId, requestBody); + public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundResponse fund(String contractorPaymentGroupUuid) { + return fund(Optional.empty(), contractorPaymentGroupUuid); } /** - * Create a contractor payment group + * Fund a contractor payment group [DEMO] * - *

    Pay a group of contractors. Information needed depends on the contractor's wage type (hourly vs - * fixed) + *

    > 🚧 Demo action + * > This action is only available in the Demo environment + * + *

    Simulate funding a contractor payment group. Funding only occurs automatically in the production + * environment when bank transactions are generated. Use this action in the demo environment to + * transition a contractor payment group's `status` from `Unfunded` to `Funded`. + * + *

    A `Funded` status is required for generating a contractor payment receipt. * *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyId The UUID of the company - * @param requestBody + * @param contractorPaymentGroupUuid The UUID of the contractor payment group * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostV1CompaniesCompanyIdContractorPaymentGroupsResponse create( - Optional xGustoAPIVersion, String companyId, - PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBody requestBody) { - PostV1CompaniesCompanyIdContractorPaymentGroupsRequest request = - PostV1CompaniesCompanyIdContractorPaymentGroupsRequest + public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundResponse fund(Optional xGustoAPIVersion, String contractorPaymentGroupUuid) { + PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest request = + PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .companyId(companyId) - .requestBody(requestBody) + .contractorPaymentGroupUuid(contractorPaymentGroupUuid) .build(); - RequestOperation operation - = new PostV1CompaniesCompanyIdContractorPaymentGroups.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PutV1ContractorPaymentGroupsContractorPaymentGroupIdFund.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Preview a contractor payment group - * - *

    Preview a group of contractor payments. Request will validate inputs and return preview of the - * contractor payment group including the expected `debit_date`. The `uuid` field will be null in the - * response. + * Get contractor payment groups for a company * - *

    The returned `creation_token` is a required parameter in order to create the contractor payment - * group. + *

    Returns a list of minimal contractor payment groups within a given time period, including totals but + * not associated contractor payments. * *

    scope: `payrolls:read` * @@ -189,44 +240,72 @@ public PostV1CompaniesCompanyIdContractorPaymentGroupsResponse create( * * @return The call builder */ - public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBuilder preview() { - return new PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBuilder(sdkConfiguration); + public GetV1CompaniesCompanyIdContractorPaymentGroupsRequestBuilder getList() { + return new GetV1CompaniesCompanyIdContractorPaymentGroupsRequestBuilder(sdkConfiguration); } /** - * Preview a contractor payment group - * - *

    Preview a group of contractor payments. Request will validate inputs and return preview of the - * contractor payment group including the expected `debit_date`. The `uuid` field will be null in the - * response. + * Get contractor payment groups for a company * - *

    The returned `creation_token` is a required parameter in order to create the contractor payment - * group. + *

    Returns a list of minimal contractor payment groups within a given time period, including totals but + * not associated contractor payments. * *

    scope: `payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * + * @param request The request object containing all the parameters for the API call. + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1CompaniesCompanyIdContractorPaymentGroupsResponse getList(GetV1CompaniesCompanyIdContractorPaymentGroupsRequest request) { + RequestOperation operation + = new GetV1CompaniesCompanyIdContractorPaymentGroups.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + + /** + * Create a contractor payment group + * + *

    Pay a group of contractors. Information needed depends on the contractor's wage type (hourly vs + * fixed) + * + *

    scope: `payrolls:run` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBuilder create() { + return new PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBuilder(sdkConfiguration); + } + + /** + * Create a contractor payment group + * + *

    Pay a group of contractors. Information needed depends on the contractor's wage type (hourly vs + * fixed) + * + *

    scope: `payrolls:run` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * * @param companyId The UUID of the company * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewResponse preview(String companyId, PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBody requestBody) { - return preview(Optional.empty(), companyId, requestBody); + public PostV1CompaniesCompanyIdContractorPaymentGroupsResponse create(String companyId, PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBody requestBody) { + return create(Optional.empty(), companyId, requestBody); } /** - * Preview a contractor payment group - * - *

    Preview a group of contractor payments. Request will validate inputs and return preview of the - * contractor payment group including the expected `debit_date`. The `uuid` field will be null in the - * response. + * Create a contractor payment group * - *

    The returned `creation_token` is a required parameter in order to create the contractor payment - * group. + *

    Pay a group of contractors. Information needed depends on the contractor's wage type (hourly vs + * fixed) * - *

    scope: `payrolls:read` + *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * @@ -236,18 +315,18 @@ public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewResponse preview(St * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewResponse preview( - Optional xGustoAPIVersion, String companyId, - PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBody requestBody) { - PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequest request = - PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequest + public PostV1CompaniesCompanyIdContractorPaymentGroupsResponse create( + Optional xGustoAPIVersion, String companyId, + PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBody requestBody) { + PostV1CompaniesCompanyIdContractorPaymentGroupsRequest request = + PostV1CompaniesCompanyIdContractorPaymentGroupsRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .companyId(companyId) .requestBody(requestBody) .build(); - RequestOperation operation - = new PostV1CompaniesCompanyIdContractorPaymentGroupsPreview.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PostV1CompaniesCompanyIdContractorPaymentGroups.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } @@ -280,7 +359,7 @@ public GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder get() * @throws RuntimeException subclass if the API call fails */ public GetV1ContractorPaymentGroupsContractorPaymentGroupIdResponse get(String contractorPaymentGroupUuid) { - return get(contractorPaymentGroupUuid, Optional.empty()); + return get(Optional.empty(), contractorPaymentGroupUuid); } /** @@ -292,17 +371,17 @@ public GetV1ContractorPaymentGroupsContractorPaymentGroupIdResponse get(String c * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param contractorPaymentGroupUuid The UUID of the contractor payment group * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param contractorPaymentGroupUuid The UUID of the contractor payment group * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1ContractorPaymentGroupsContractorPaymentGroupIdResponse get(String contractorPaymentGroupUuid, Optional xGustoAPIVersion) { + public GetV1ContractorPaymentGroupsContractorPaymentGroupIdResponse get(Optional xGustoAPIVersion, String contractorPaymentGroupUuid) { GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest request = GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest .builder() - .contractorPaymentGroupUuid(contractorPaymentGroupUuid) .xGustoAPIVersion(xGustoAPIVersion) + .contractorPaymentGroupUuid(contractorPaymentGroupUuid) .build(); RequestOperation operation = new GetV1ContractorPaymentGroupsContractorPaymentGroupId.Sync(sdkConfiguration, _headers); @@ -340,7 +419,7 @@ public DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder del * @throws RuntimeException subclass if the API call fails */ public DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdResponse delete(String contractorPaymentGroupUuid) { - return delete(contractorPaymentGroupUuid, Optional.empty()); + return delete(Optional.empty(), contractorPaymentGroupUuid); } /** @@ -353,102 +432,23 @@ public DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdResponse delete(St * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param contractorPaymentGroupUuid The UUID of the contractor payment group * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param contractorPaymentGroupUuid The UUID of the contractor payment group * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdResponse delete(String contractorPaymentGroupUuid, Optional xGustoAPIVersion) { + public DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdResponse delete(Optional xGustoAPIVersion, String contractorPaymentGroupUuid) { DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest request = DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest .builder() - .contractorPaymentGroupUuid(contractorPaymentGroupUuid) .xGustoAPIVersion(xGustoAPIVersion) + .contractorPaymentGroupUuid(contractorPaymentGroupUuid) .build(); RequestOperation operation = new DeleteV1ContractorPaymentGroupsContractorPaymentGroupId.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } - /** - * Fund a contractor payment group [DEMO] - * - *

    > 🚧 Demo action - * > This action is only available in the Demo environment - * - *

    Simulate funding a contractor payment group. Funding only occurs automatically in the production - * environment when bank transactions are generated. Use this action in the demo environment to - * transition a contractor payment group's `status` from `Unfunded` to `Funded`. - * - *

    A `Funded` status is required for generating a contractor payment receipt. - * - *

    scope: `payrolls:run` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The call builder - */ - public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequestBuilder fund() { - return new PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequestBuilder(sdkConfiguration); - } - - /** - * Fund a contractor payment group [DEMO] - * - *

    > 🚧 Demo action - * > This action is only available in the Demo environment - * - *

    Simulate funding a contractor payment group. Funding only occurs automatically in the production - * environment when bank transactions are generated. Use this action in the demo environment to - * transition a contractor payment group's `status` from `Unfunded` to `Funded`. - * - *

    A `Funded` status is required for generating a contractor payment receipt. - * - *

    scope: `payrolls:run` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param contractorPaymentGroupUuid The UUID of the contractor payment group - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundResponse fund(String contractorPaymentGroupUuid) { - return fund(contractorPaymentGroupUuid, Optional.empty()); - } - - /** - * Fund a contractor payment group [DEMO] - * - *

    > 🚧 Demo action - * > This action is only available in the Demo environment - * - *

    Simulate funding a contractor payment group. Funding only occurs automatically in the production - * environment when bank transactions are generated. Use this action in the demo environment to - * transition a contractor payment group's `status` from `Unfunded` to `Funded`. - * - *

    A `Funded` status is required for generating a contractor payment receipt. - * - *

    scope: `payrolls:run` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param contractorPaymentGroupUuid The UUID of the contractor payment group - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundResponse fund(String contractorPaymentGroupUuid, Optional xGustoAPIVersion) { - PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest request = - PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest - .builder() - .contractorPaymentGroupUuid(contractorPaymentGroupUuid) - .xGustoAPIVersion(xGustoAPIVersion) - .build(); - RequestOperation operation - = new PutV1ContractorPaymentGroupsContractorPaymentGroupIdFund.Sync(sdkConfiguration, _headers); - return operation.handleResponse(operation.doRequest(request)); - } - /** * Get partner disbursements for a contractor payment group * @@ -478,7 +478,7 @@ public GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder getV1Con * @throws RuntimeException subclass if the API call fails */ public GetV1ContractorPaymentGroupsIdPartnerDisbursementsResponse getV1ContractorPaymentGroupsIdPartnerDisbursements(String id) { - return getV1ContractorPaymentGroupsIdPartnerDisbursements(id, Optional.empty()); + return getV1ContractorPaymentGroupsIdPartnerDisbursements(Optional.empty(), id); } /** @@ -490,17 +490,17 @@ public GetV1ContractorPaymentGroupsIdPartnerDisbursementsResponse getV1Contracto * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param id The UUID of the contractor payment group * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param id The UUID of the contractor payment group * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1ContractorPaymentGroupsIdPartnerDisbursementsResponse getV1ContractorPaymentGroupsIdPartnerDisbursements(String id, Optional xGustoAPIVersion) { + public GetV1ContractorPaymentGroupsIdPartnerDisbursementsResponse getV1ContractorPaymentGroupsIdPartnerDisbursements(Optional xGustoAPIVersion, String id) { GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest request = GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest .builder() - .id(id) .xGustoAPIVersion(xGustoAPIVersion) + .id(id) .build(); RequestOperation operation = new GetV1ContractorPaymentGroupsIdPartnerDisbursements.Sync(sdkConfiguration, _headers); @@ -536,7 +536,7 @@ public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder patchV * @throws RuntimeException subclass if the API call fails */ public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsResponse patchV1ContractorPaymentGroupsIdPartnerDisbursements(String id) { - return patchV1ContractorPaymentGroupsIdPartnerDisbursements(id, Optional.empty(), Optional.empty()); + return patchV1ContractorPaymentGroupsIdPartnerDisbursements(Optional.empty(), id, Optional.empty()); } /** @@ -548,20 +548,20 @@ public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsResponse patchV1Contr * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param id The UUID of the contractor payment group * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param id The UUID of the contractor payment group * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsResponse patchV1ContractorPaymentGroupsIdPartnerDisbursements( - String id, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String id, Optional requestBody) { PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest request = PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest .builder() - .id(id) .xGustoAPIVersion(xGustoAPIVersion) + .id(id) .requestBody(requestBody) .build(); RequestOperation operation diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/ContractorPayments.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/ContractorPayments.java index f9c82edea..cd594ced0 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/ContractorPayments.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/ContractorPayments.java @@ -34,6 +34,9 @@ import com.gusto.embedded_api.models.operations.GetV1ContractorPaymentsContractorPaymentUuidReceiptRequest; import com.gusto.embedded_api.models.operations.GetV1ContractorPaymentsContractorPaymentUuidReceiptRequestBuilder; import com.gusto.embedded_api.models.operations.GetV1ContractorPaymentsContractorPaymentUuidReceiptResponse; +import com.gusto.embedded_api.models.operations.GetV1ContractorsContractorUuidPaymentsRequest; +import com.gusto.embedded_api.models.operations.GetV1ContractorsContractorUuidPaymentsRequestBuilder; +import com.gusto.embedded_api.models.operations.GetV1ContractorsContractorUuidPaymentsResponse; import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyIdContractorPaymentsHeaderXGustoAPIVersion; import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyIdContractorPaymentsRequest; import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyIdContractorPaymentsRequestBuilder; @@ -45,6 +48,7 @@ import com.gusto.embedded_api.operations.GetV1ContractorPaymentsContractorPaymentIdPdf; import com.gusto.embedded_api.operations.GetV1ContractorPaymentsContractorPaymentUuidFund; import com.gusto.embedded_api.operations.GetV1ContractorPaymentsContractorPaymentUuidReceipt; +import com.gusto.embedded_api.operations.GetV1ContractorsContractorUuidPayments; import com.gusto.embedded_api.operations.PostV1CompaniesCompanyIdContractorPayments; import com.gusto.embedded_api.utils.Headers; import java.lang.String; @@ -71,169 +75,100 @@ public AsyncContractorPayments async() { } /** - * Get a single contractor payment receipt + * Get contractor payments * - *

    Returns a contractor payment receipt. + *

    Returns a paginated list of payments for a single contractor. * - *

    Notes: - * * Receipts are only available for direct deposit payments and are only available once those payments - * have been funded. - * * Payroll Receipt requests for payrolls which do not have receipts available (e.g. payment by check) - * will return a 404 status. - * * Hour and dollar amounts are returned as string representations of numeric decimals. - * * Dollar amounts are represented to the cent. - * * If no data has yet be inserted for a given field, it defaults to “0.00” (for fixed amounts). + *

    Results are sortable by `check_date` or `created_at`. Append `:asc` or `:desc` to control direction + * (e.g., `check_date:desc`). * - *

    scope: `payrolls:read` + *

    scope: `contractor_pay_stubs:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public GetV1ContractorPaymentsContractorPaymentUuidReceiptRequestBuilder getReceipt() { - return new GetV1ContractorPaymentsContractorPaymentUuidReceiptRequestBuilder(sdkConfiguration); + public GetV1ContractorsContractorUuidPaymentsRequestBuilder getV1ContractorsContractorUuidPayments() { + return new GetV1ContractorsContractorUuidPaymentsRequestBuilder(sdkConfiguration); } /** - * Get a single contractor payment receipt + * Get contractor payments * - *

    Returns a contractor payment receipt. + *

    Returns a paginated list of payments for a single contractor. * - *

    Notes: - * * Receipts are only available for direct deposit payments and are only available once those payments - * have been funded. - * * Payroll Receipt requests for payrolls which do not have receipts available (e.g. payment by check) - * will return a 404 status. - * * Hour and dollar amounts are returned as string representations of numeric decimals. - * * Dollar amounts are represented to the cent. - * * If no data has yet be inserted for a given field, it defaults to “0.00” (for fixed amounts). + *

    Results are sortable by `check_date` or `created_at`. Append `:asc` or `:desc` to control direction + * (e.g., `check_date:desc`). * - *

    scope: `payrolls:read` + *

    scope: `contractor_pay_stubs:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param contractorPaymentUuid The UUID of the contractor payment - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public GetV1ContractorPaymentsContractorPaymentUuidReceiptResponse getReceipt(String contractorPaymentUuid) { - return getReceipt(Optional.empty(), contractorPaymentUuid); - } - - /** - * Get a single contractor payment receipt - * - *

    Returns a contractor payment receipt. - * - *

    Notes: - * * Receipts are only available for direct deposit payments and are only available once those payments - * have been funded. - * * Payroll Receipt requests for payrolls which do not have receipts available (e.g. payment by check) - * will return a 404 status. - * * Hour and dollar amounts are returned as string representations of numeric decimals. - * * Dollar amounts are represented to the cent. - * * If no data has yet be inserted for a given field, it defaults to “0.00” (for fixed amounts). - * - *

    scope: `payrolls:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param contractorPaymentUuid The UUID of the contractor payment + * @param request The request object containing all the parameters for the API call. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1ContractorPaymentsContractorPaymentUuidReceiptResponse getReceipt(Optional xGustoAPIVersion, String contractorPaymentUuid) { - GetV1ContractorPaymentsContractorPaymentUuidReceiptRequest request = - GetV1ContractorPaymentsContractorPaymentUuidReceiptRequest - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .contractorPaymentUuid(contractorPaymentUuid) - .build(); - RequestOperation operation - = new GetV1ContractorPaymentsContractorPaymentUuidReceipt.Sync(sdkConfiguration, _headers); + public GetV1ContractorsContractorUuidPaymentsResponse getV1ContractorsContractorUuidPayments(GetV1ContractorsContractorUuidPaymentsRequest request) { + RequestOperation operation + = new GetV1ContractorsContractorUuidPayments.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Fund a contractor payment [DEMO] - * - *

    > 🚧 Demo action - * > - * > This action is only available in the Demo environment - * - *

    Simulate funding a contractor payment. Funding only occurs automatically in the production - * environment when bank transactions are generated. Use this action in the demo environment to - * transition a contractor payment's `status` from `Unfunded` to `Funded`. + * Get a contractor payment PDF * - *

    A `Funded` status is required for generating a contractor payment receipt. + *

    Get a PDF document for a single contractor payment. * - *

    scope: `payrolls:run` + *

    scope: `payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public GetV1ContractorPaymentsContractorPaymentUuidFundRequestBuilder fund() { - return new GetV1ContractorPaymentsContractorPaymentUuidFundRequestBuilder(sdkConfiguration); + public GetV1ContractorPaymentsContractorPaymentIdPdfRequestBuilder getV1ContractorPaymentsContractorPaymentIdPdf() { + return new GetV1ContractorPaymentsContractorPaymentIdPdfRequestBuilder(sdkConfiguration); } /** - * Fund a contractor payment [DEMO] - * - *

    > 🚧 Demo action - * > - * > This action is only available in the Demo environment - * - *

    Simulate funding a contractor payment. Funding only occurs automatically in the production - * environment when bank transactions are generated. Use this action in the demo environment to - * transition a contractor payment's `status` from `Unfunded` to `Funded`. + * Get a contractor payment PDF * - *

    A `Funded` status is required for generating a contractor payment receipt. + *

    Get a PDF document for a single contractor payment. * - *

    scope: `payrolls:run` + *

    scope: `payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param contractorPaymentUuid The UUID of the contractor payment + * @param contractorPaymentId The UUID of the contractor payment * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1ContractorPaymentsContractorPaymentUuidFundResponse fund(String contractorPaymentUuid) { - return fund(Optional.empty(), contractorPaymentUuid); + public GetV1ContractorPaymentsContractorPaymentIdPdfResponse getV1ContractorPaymentsContractorPaymentIdPdf(String contractorPaymentId) { + return getV1ContractorPaymentsContractorPaymentIdPdf(Optional.empty(), contractorPaymentId); } /** - * Fund a contractor payment [DEMO] - * - *

    > 🚧 Demo action - * > - * > This action is only available in the Demo environment - * - *

    Simulate funding a contractor payment. Funding only occurs automatically in the production - * environment when bank transactions are generated. Use this action in the demo environment to - * transition a contractor payment's `status` from `Unfunded` to `Funded`. + * Get a contractor payment PDF * - *

    A `Funded` status is required for generating a contractor payment receipt. + *

    Get a PDF document for a single contractor payment. * - *

    scope: `payrolls:run` + *

    scope: `payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param contractorPaymentUuid The UUID of the contractor payment + * @param contractorPaymentId The UUID of the contractor payment * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1ContractorPaymentsContractorPaymentUuidFundResponse fund(Optional xGustoAPIVersion, String contractorPaymentUuid) { - GetV1ContractorPaymentsContractorPaymentUuidFundRequest request = - GetV1ContractorPaymentsContractorPaymentUuidFundRequest + public GetV1ContractorPaymentsContractorPaymentIdPdfResponse getV1ContractorPaymentsContractorPaymentIdPdf(Optional xGustoAPIVersion, String contractorPaymentId) { + GetV1ContractorPaymentsContractorPaymentIdPdfRequest request = + GetV1ContractorPaymentsContractorPaymentIdPdfRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .contractorPaymentUuid(contractorPaymentUuid) + .contractorPaymentId(contractorPaymentId) .build(); - RequestOperation operation - = new GetV1ContractorPaymentsContractorPaymentUuidFund.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new GetV1ContractorPaymentsContractorPaymentIdPdf.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } @@ -542,9 +477,18 @@ public GetCompaniesCompanyUuidContractorPaymentsPreviewResponse preview( } /** - * Get a contractor payment PDF + * Get a single contractor payment receipt * - *

    Get a PDF document for a single contractor payment. + *

    Returns a contractor payment receipt. + * + *

    Notes: + * * Receipts are only available for direct deposit payments and are only available once those payments + * have been funded. + * * Payroll Receipt requests for payrolls which do not have receipts available (e.g. payment by check) + * will return a 404 status. + * * Hour and dollar amounts are returned as string representations of numeric decimals. + * * Dollar amounts are represented to the cent. + * * If no data has yet be inserted for a given field, it defaults to “0.00” (for fixed amounts). * *

    scope: `payrolls:read` * @@ -552,50 +496,150 @@ public GetCompaniesCompanyUuidContractorPaymentsPreviewResponse preview( * * @return The call builder */ - public GetV1ContractorPaymentsContractorPaymentIdPdfRequestBuilder getV1ContractorPaymentsContractorPaymentIdPdf() { - return new GetV1ContractorPaymentsContractorPaymentIdPdfRequestBuilder(sdkConfiguration); + public GetV1ContractorPaymentsContractorPaymentUuidReceiptRequestBuilder getReceipt() { + return new GetV1ContractorPaymentsContractorPaymentUuidReceiptRequestBuilder(sdkConfiguration); } /** - * Get a contractor payment PDF + * Get a single contractor payment receipt * - *

    Get a PDF document for a single contractor payment. + *

    Returns a contractor payment receipt. + * + *

    Notes: + * * Receipts are only available for direct deposit payments and are only available once those payments + * have been funded. + * * Payroll Receipt requests for payrolls which do not have receipts available (e.g. payment by check) + * will return a 404 status. + * * Hour and dollar amounts are returned as string representations of numeric decimals. + * * Dollar amounts are represented to the cent. + * * If no data has yet be inserted for a given field, it defaults to “0.00” (for fixed amounts). * *

    scope: `payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param contractorPaymentId The UUID of the contractor payment + * @param contractorPaymentUuid The UUID of the contractor payment * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1ContractorPaymentsContractorPaymentIdPdfResponse getV1ContractorPaymentsContractorPaymentIdPdf(String contractorPaymentId) { - return getV1ContractorPaymentsContractorPaymentIdPdf(Optional.empty(), contractorPaymentId); + public GetV1ContractorPaymentsContractorPaymentUuidReceiptResponse getReceipt(String contractorPaymentUuid) { + return getReceipt(Optional.empty(), contractorPaymentUuid); } /** - * Get a contractor payment PDF + * Get a single contractor payment receipt * - *

    Get a PDF document for a single contractor payment. + *

    Returns a contractor payment receipt. + * + *

    Notes: + * * Receipts are only available for direct deposit payments and are only available once those payments + * have been funded. + * * Payroll Receipt requests for payrolls which do not have receipts available (e.g. payment by check) + * will return a 404 status. + * * Hour and dollar amounts are returned as string representations of numeric decimals. + * * Dollar amounts are represented to the cent. + * * If no data has yet be inserted for a given field, it defaults to “0.00” (for fixed amounts). * *

    scope: `payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param contractorPaymentId The UUID of the contractor payment + * @param contractorPaymentUuid The UUID of the contractor payment * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1ContractorPaymentsContractorPaymentIdPdfResponse getV1ContractorPaymentsContractorPaymentIdPdf(Optional xGustoAPIVersion, String contractorPaymentId) { - GetV1ContractorPaymentsContractorPaymentIdPdfRequest request = - GetV1ContractorPaymentsContractorPaymentIdPdfRequest + public GetV1ContractorPaymentsContractorPaymentUuidReceiptResponse getReceipt(Optional xGustoAPIVersion, String contractorPaymentUuid) { + GetV1ContractorPaymentsContractorPaymentUuidReceiptRequest request = + GetV1ContractorPaymentsContractorPaymentUuidReceiptRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .contractorPaymentId(contractorPaymentId) + .contractorPaymentUuid(contractorPaymentUuid) .build(); - RequestOperation operation - = new GetV1ContractorPaymentsContractorPaymentIdPdf.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new GetV1ContractorPaymentsContractorPaymentUuidReceipt.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + + /** + * Fund a contractor payment [DEMO] + * + *

    > 🚧 Demo action + * > + * > This action is only available in the Demo environment + * + *

    Simulate funding a contractor payment. Funding only occurs automatically in the production + * environment when bank transactions are generated. Use this action in the demo environment to + * transition a contractor payment's `status` from `Unfunded` to `Funded`. + * + *

    A `Funded` status is required for generating a contractor payment receipt. + * + *

    scope: `payrolls:run` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public GetV1ContractorPaymentsContractorPaymentUuidFundRequestBuilder fund() { + return new GetV1ContractorPaymentsContractorPaymentUuidFundRequestBuilder(sdkConfiguration); + } + + /** + * Fund a contractor payment [DEMO] + * + *

    > 🚧 Demo action + * > + * > This action is only available in the Demo environment + * + *

    Simulate funding a contractor payment. Funding only occurs automatically in the production + * environment when bank transactions are generated. Use this action in the demo environment to + * transition a contractor payment's `status` from `Unfunded` to `Funded`. + * + *

    A `Funded` status is required for generating a contractor payment receipt. + * + *

    scope: `payrolls:run` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param contractorPaymentUuid The UUID of the contractor payment + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1ContractorPaymentsContractorPaymentUuidFundResponse fund(String contractorPaymentUuid) { + return fund(Optional.empty(), contractorPaymentUuid); + } + + /** + * Fund a contractor payment [DEMO] + * + *

    > 🚧 Demo action + * > + * > This action is only available in the Demo environment + * + *

    Simulate funding a contractor payment. Funding only occurs automatically in the production + * environment when bank transactions are generated. Use this action in the demo environment to + * transition a contractor payment's `status` from `Unfunded` to `Funded`. + * + *

    A `Funded` status is required for generating a contractor payment receipt. + * + *

    scope: `payrolls:run` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param contractorPaymentUuid The UUID of the contractor payment + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1ContractorPaymentsContractorPaymentUuidFundResponse fund(Optional xGustoAPIVersion, String contractorPaymentUuid) { + GetV1ContractorPaymentsContractorPaymentUuidFundRequest request = + GetV1ContractorPaymentsContractorPaymentUuidFundRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .contractorPaymentUuid(contractorPaymentUuid) + .build(); + RequestOperation operation + = new GetV1ContractorPaymentsContractorPaymentUuidFund.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/Contractors.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/Contractors.java index 7e55ca846..e6a6e7ec3 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/Contractors.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/Contractors.java @@ -107,106 +107,10 @@ public AsyncContractors async() { } /** - * Get contractors of a company - * - *

    Get all contractors, active and inactive, individual and business, for a company. - * - *

    scope: `contractors:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The call builder - */ - public GetV1CompaniesCompanyUuidContractorsRequestBuilder list() { - return new GetV1CompaniesCompanyUuidContractorsRequestBuilder(sdkConfiguration); - } - - /** - * Get contractors of a company - * - *

    Get all contractors, active and inactive, individual and business, for a company. - * - *

    scope: `contractors:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param request The request object containing all the parameters for the API call. - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public GetV1CompaniesCompanyUuidContractorsResponse list(GetV1CompaniesCompanyUuidContractorsRequest request) { - RequestOperation operation - = new GetV1CompaniesCompanyUuidContractors.Sync(sdkConfiguration, _headers); - return operation.handleResponse(operation.doRequest(request)); - } - - /** - * Create a contractor - * - *

    Create an individual or business contractor. - * - *

    scope: `contractors:manage` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The call builder - */ - public PostV1CompaniesCompanyUuidContractorsRequestBuilder create() { - return new PostV1CompaniesCompanyUuidContractorsRequestBuilder(sdkConfiguration); - } - - /** - * Create a contractor - * - *

    Create an individual or business contractor. - * - *

    scope: `contractors:manage` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param companyUuid The UUID of the company - * @param contractorCreateRequestBody Request body for creating a contractor. - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public PostV1CompaniesCompanyUuidContractorsResponse create(String companyUuid, ContractorCreateRequestBody contractorCreateRequestBody) { - return create(Optional.empty(), companyUuid, contractorCreateRequestBody); - } - - /** - * Create a contractor - * - *

    Create an individual or business contractor. - * - *

    scope: `contractors:manage` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyUuid The UUID of the company - * @param contractorCreateRequestBody Request body for creating a contractor. - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public PostV1CompaniesCompanyUuidContractorsResponse create( - Optional xGustoAPIVersion, String companyUuid, - ContractorCreateRequestBody contractorCreateRequestBody) { - PostV1CompaniesCompanyUuidContractorsRequest request = - PostV1CompaniesCompanyUuidContractorsRequest - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .companyUuid(companyUuid) - .contractorCreateRequestBody(contractorCreateRequestBody) - .build(); - RequestOperation operation - = new PostV1CompaniesCompanyUuidContractors.Sync(sdkConfiguration, _headers); - return operation.handleResponse(operation.doRequest(request)); - } - - /** - * Get a contractor + * Get a contractor address * - *

    Get a contractor. + *

    The address of a contractor is used to determine certain tax information about them. Addresses are + * geocoded on create and update to ensure validity. * *

    scope: `contractors:read` * @@ -214,14 +118,15 @@ public PostV1CompaniesCompanyUuidContractorsResponse create( * * @return The call builder */ - public GetV1ContractorsContractorUuidRequestBuilder get() { - return new GetV1ContractorsContractorUuidRequestBuilder(sdkConfiguration); + public GetV1ContractorsContractorUuidAddressRequestBuilder getAddress() { + return new GetV1ContractorsContractorUuidAddressRequestBuilder(sdkConfiguration); } /** - * Get a contractor + * Get a contractor address * - *

    Get a contractor. + *

    The address of a contractor is used to determine certain tax information about them. Addresses are + * geocoded on create and update to ensure validity. * *

    scope: `contractors:read` * @@ -231,14 +136,15 @@ public GetV1ContractorsContractorUuidRequestBuilder get() { * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1ContractorsContractorUuidResponse get(String contractorUuid) { - return get(Optional.empty(), contractorUuid, Optional.empty()); + public GetV1ContractorsContractorUuidAddressResponse getAddress(String contractorUuid) { + return getAddress(Optional.empty(), contractorUuid); } /** - * Get a contractor + * Get a contractor address * - *

    Get a contractor. + *

    The address of a contractor is used to determine certain tax information about them. Addresses are + * geocoded on create and update to ensure validity. * *

    scope: `contractors:read` * @@ -246,35 +152,31 @@ public GetV1ContractorsContractorUuidResponse get(String contractorUuid) { * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param contractorUuid The UUID of the contractor - * @param include Include the requested attribute(s) in each contractor response. Multiple options are comma separated. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1ContractorsContractorUuidResponse get( - Optional xGustoAPIVersion, String contractorUuid, - Optional> include) { - GetV1ContractorsContractorUuidRequest request = - GetV1ContractorsContractorUuidRequest + public GetV1ContractorsContractorUuidAddressResponse getAddress(Optional xGustoAPIVersion, String contractorUuid) { + GetV1ContractorsContractorUuidAddressRequest request = + GetV1ContractorsContractorUuidAddressRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .contractorUuid(contractorUuid) - .include(include) .build(); - RequestOperation operation - = new GetV1ContractorsContractorUuid.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new GetV1ContractorsContractorUuidAddress.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Update a contractor + * Create or update a contractor's address * - *

    Update a contractor. + *

    The address of a contractor is used to determine certain tax information about them. Addresses are + * geocoded on create and update to ensure validity. * - *

    > 🚧 Warning + *

    > 🚧 Contractors can only have one address. * > - * > Watch out when changing a contractor's type (when the contractor is finished onboarding). - * Specifically, changing contractor type can be dangerous since Gusto won't recognize and file two - * separate 1099s if they simply change from business to individual + * > When a contractor is created, an address is created for them by default. Updating the address + * will replace the existing address. * *

    scope: `contractors:write` * @@ -282,44 +184,44 @@ public GetV1ContractorsContractorUuidResponse get( * * @return The call builder */ - public PutV1ContractorsContractorUuidRequestBuilder update() { - return new PutV1ContractorsContractorUuidRequestBuilder(sdkConfiguration); + public PutV1ContractorsContractorUuidAddressRequestBuilder updateAddress() { + return new PutV1ContractorsContractorUuidAddressRequestBuilder(sdkConfiguration); } /** - * Update a contractor + * Create or update a contractor's address * - *

    Update a contractor. + *

    The address of a contractor is used to determine certain tax information about them. Addresses are + * geocoded on create and update to ensure validity. * - *

    > 🚧 Warning + *

    > 🚧 Contractors can only have one address. * > - * > Watch out when changing a contractor's type (when the contractor is finished onboarding). - * Specifically, changing contractor type can be dangerous since Gusto won't recognize and file two - * separate 1099s if they simply change from business to individual + * > When a contractor is created, an address is created for them by default. Updating the address + * will replace the existing address. * *

    scope: `contractors:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param contractorUuid The UUID of the contractor - * @param contractorUpdateRequestBody Request body for updating a contractor. + * @param contractorAddressUpdateBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1ContractorsContractorUuidResponse update(String contractorUuid, ContractorUpdateRequestBody contractorUpdateRequestBody) { - return update(Optional.empty(), contractorUuid, contractorUpdateRequestBody); + public PutV1ContractorsContractorUuidAddressResponse updateAddress(String contractorUuid, ContractorAddressUpdateBody contractorAddressUpdateBody) { + return updateAddress(Optional.empty(), contractorUuid, contractorAddressUpdateBody); } /** - * Update a contractor + * Create or update a contractor's address * - *

    Update a contractor. + *

    The address of a contractor is used to determine certain tax information about them. Addresses are + * geocoded on create and update to ensure validity. * - *

    > 🚧 Warning + *

    > 🚧 Contractors can only have one address. * > - * > Watch out when changing a contractor's type (when the contractor is finished onboarding). - * Specifically, changing contractor type can be dangerous since Gusto won't recognize and file two - * separate 1099s if they simply change from business to individual + * > When a contractor is created, an address is created for them by default. Updating the address + * will replace the existing address. * *

    scope: `contractors:write` * @@ -327,229 +229,322 @@ public PutV1ContractorsContractorUuidResponse update(String contractorUuid, Cont * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param contractorUuid The UUID of the contractor - * @param contractorUpdateRequestBody Request body for updating a contractor. + * @param contractorAddressUpdateBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1ContractorsContractorUuidResponse update( - Optional xGustoAPIVersion, String contractorUuid, - ContractorUpdateRequestBody contractorUpdateRequestBody) { - PutV1ContractorsContractorUuidRequest request = - PutV1ContractorsContractorUuidRequest + public PutV1ContractorsContractorUuidAddressResponse updateAddress( + Optional xGustoAPIVersion, String contractorUuid, + ContractorAddressUpdateBody contractorAddressUpdateBody) { + PutV1ContractorsContractorUuidAddressRequest request = + PutV1ContractorsContractorUuidAddressRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .contractorUuid(contractorUuid) - .contractorUpdateRequestBody(contractorUpdateRequestBody) + .contractorAddressUpdateBody(contractorAddressUpdateBody) .build(); - RequestOperation operation - = new PutV1ContractorsContractorUuid.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PutV1ContractorsContractorUuidAddress.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Delete a contractor + * List contractor payment details * - *

    A contractor can only be deleted when there are no contractor payments. + *

    Get payment details for contractors in a company. This endpoint returns a list of all contractors + * associated with the specified company, including their payment methods and bank account details + * if they are paid via direct deposit. * - *

    scope: `contractors:manage` + *

    For contractors paid by direct deposit, the response includes their bank account information + * with sensitive data masked for security. The payment details also include information about + * how their payments are split if they have multiple bank accounts configured. * - *

    If set, this operation will use Security#companyAccessAuth from the global security. + *

    For contractors paid by check, only the basic payment method information is returned. * - * @return The call builder - */ - public DeleteV1ContractorsContractorUuidRequestBuilder delete() { - return new DeleteV1ContractorsContractorUuidRequestBuilder(sdkConfiguration); - } - - /** - * Delete a contractor + *

    ### Response Details + * - For direct deposit contractors: + * - Bank account details (masked) + * - Payment splits configuration + * - Routing numbers + * - Account types + * - For check payments: + * - Basic payment method designation * - *

    A contractor can only be deleted when there are no contractor payments. + *

    ### Common Use Cases + * - Fetching contractor payment information for payroll processing + * - Verifying contractor payment methods + * - Reviewing payment split configurations * - *

    scope: `contractors:manage` + *

    `encrypted_account_number` is available only with the additional scope + * `contractor_payment_methods:read:account_numbers`. + * + *

    scope: `contractor_payment_methods:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param contractorUuid The UUID of the contractor - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails + * @return The call builder */ - public DeleteV1ContractorsContractorUuidResponse delete(String contractorUuid) { - return delete(Optional.empty(), contractorUuid); + public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder getV1CompaniesCompanyIdContractorsPaymentDetails() { + return new GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder(sdkConfiguration); } /** - * Delete a contractor + * List contractor payment details * - *

    A contractor can only be deleted when there are no contractor payments. + *

    Get payment details for contractors in a company. This endpoint returns a list of all contractors + * associated with the specified company, including their payment methods and bank account details + * if they are paid via direct deposit. * - *

    scope: `contractors:manage` + *

    For contractors paid by direct deposit, the response includes their bank account information + * with sensitive data masked for security. The payment details also include information about + * how their payments are split if they have multiple bank accounts configured. * - *

    If set, this operation will use Security#companyAccessAuth from the global security. + *

    For contractors paid by check, only the basic payment method information is returned. + * + *

    ### Response Details + * - For direct deposit contractors: + * - Bank account details (masked) + * - Payment splits configuration + * - Routing numbers + * - Account types + * - For check payments: + * - Basic payment method designation + * + *

    ### Common Use Cases + * - Fetching contractor payment information for payroll processing + * - Verifying contractor payment methods + * - Reviewing payment split configurations + * + *

    `encrypted_account_number` is available only with the additional scope + * `contractor_payment_methods:read:account_numbers`. + * + *

    scope: `contractor_payment_methods:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param companyId The UUID of the company. This identifies the company whose contractor payment details you want to retrieve. + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1CompaniesCompanyIdContractorsPaymentDetailsResponse getV1CompaniesCompanyIdContractorsPaymentDetails(String companyId) { + return getV1CompaniesCompanyIdContractorsPaymentDetails(Optional.empty(), companyId, Optional.empty(), + Optional.empty()); + } + + /** + * List contractor payment details + * + *

    Get payment details for contractors in a company. This endpoint returns a list of all contractors + * associated with the specified company, including their payment methods and bank account details + * if they are paid via direct deposit. + * + *

    For contractors paid by direct deposit, the response includes their bank account information + * with sensitive data masked for security. The payment details also include information about + * how their payments are split if they have multiple bank accounts configured. + * + *

    For contractors paid by check, only the basic payment method information is returned. + * + *

    ### Response Details + * - For direct deposit contractors: + * - Bank account details (masked) + * - Payment splits configuration + * - Routing numbers + * - Account types + * - For check payments: + * - Basic payment method designation + * + *

    ### Common Use Cases + * - Fetching contractor payment information for payroll processing + * - Verifying contractor payment methods + * - Reviewing payment split configurations + * + *

    `encrypted_account_number` is available only with the additional scope + * `contractor_payment_methods:read:account_numbers`. + * + *

    scope: `contractor_payment_methods:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param contractorUuid The UUID of the contractor + * @param companyId The UUID of the company. This identifies the company whose contractor payment details you want to retrieve. + * @param contractorUuid Optional filter to get payment details for a specific contractor. When provided, the response will only include payment details for this contractor. + * @param contractorPaymentGroupUuid 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. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public DeleteV1ContractorsContractorUuidResponse delete(Optional xGustoAPIVersion, String contractorUuid) { - DeleteV1ContractorsContractorUuidRequest request = - DeleteV1ContractorsContractorUuidRequest + public GetV1CompaniesCompanyIdContractorsPaymentDetailsResponse getV1CompaniesCompanyIdContractorsPaymentDetails( + Optional xGustoAPIVersion, String companyId, + Optional contractorUuid, Optional contractorPaymentGroupUuid) { + GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest request = + GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) .contractorUuid(contractorUuid) + .contractorPaymentGroupUuid(contractorPaymentGroupUuid) .build(); - RequestOperation operation - = new DeleteV1ContractorsContractorUuid.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new GetV1CompaniesCompanyIdContractorsPaymentDetails.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Get the contractor's onboarding status - * - *

    Retrieves a contractor's onboarding status. The data returned helps inform the required onboarding - * steps and respective completion status. - * - *

    ## onboarding_status - * - *

    ### Admin-facilitated onboarding - * | onboarding_status | Description | - * |:------------------|------------:| - * | `admin_onboarding_incomplete` | Admin needs to enter basic information about the contractor. | - * | `admin_onboarding_review` | All information has been completed and admin needs to confirm - * onboarding. | - * | `onboarding_completed` | Contractor has been fully onboarded and verified. | - * - *

    ### Contractor self-onboarding + * Schedule a contractor rehire * - *

    | onboarding_status | Description | - * | --- | ----------- | - * | `admin_onboarding_incomplete` | Admin needs to enter basic information about the contractor. | - * | `self_onboarding_not_invited` | Admin has the intention to invite the contractor to self-onboard - * (e.g., marking a checkbox), but the system has not yet sent the invitation. | - * | `self_onboarding_invited` | Contractor has been sent an invitation to self-onboard. | - * | `self_onboarding_started` | Contractor has started the self-onboarding process. | - * | `self_onboarding_review` | Admin needs to review contractors's entered information and confirm - * onboarding. | - * | `onboarding_completed` | Contractor has been fully onboarded and verified. | + *

    ## Purpose + * Schedules a contractor rehire for a given date. Creates a new employment record for the contractor. * - *

    ## onboarding_steps + *

    ## Prerequisites + * Before calling this endpoint: + * 1. The contractor must be inactive (previously dismissed) + * 2. The contractor must not already have an upcoming employment * - *

    | onboarding_steps | Requirement(s) to be completed | - * |:-----------------|-------------------------------:| - * | `basic_details` | Add individual contractor's first name, last name, social security number or - * Business name and EIN depending on the contractor type | - * | `add_address` | Add contractor address. | - * | `compensation_details` | Add contractor compensation. | - * | `payment_details` | (optional) Set up contractor's direct deposit or set to check. | - * | `sign_documents` | Contractor forms (e.g., W9) are generated & signed. | - * | `file_new_hire_report` | Contractor new hire report is generated. | + *

    ## Related webhooks + * - `contractor.reactivated`: Fires when the contractor becomes active again (on or after start_date) * - *

    scope: `contractors:read` + *

    scope: `contractors:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public GetV1ContractorsContractorUuidOnboardingStatusRequestBuilder getOnboardingStatus() { - return new GetV1ContractorsContractorUuidOnboardingStatusRequestBuilder(sdkConfiguration); + public PostV1ContractorsContractorUuidRehireRequestBuilder postV1ContractorsContractorUuidRehire() { + return new PostV1ContractorsContractorUuidRehireRequestBuilder(sdkConfiguration); } /** - * Get the contractor's onboarding status + * Schedule a contractor rehire * - *

    Retrieves a contractor's onboarding status. The data returned helps inform the required onboarding - * steps and respective completion status. + *

    ## Purpose + * Schedules a contractor rehire for a given date. Creates a new employment record for the contractor. * - *

    ## onboarding_status + *

    ## Prerequisites + * Before calling this endpoint: + * 1. The contractor must be inactive (previously dismissed) + * 2. The contractor must not already have an upcoming employment * - *

    ### Admin-facilitated onboarding - * | onboarding_status | Description | - * |:------------------|------------:| - * | `admin_onboarding_incomplete` | Admin needs to enter basic information about the contractor. | - * | `admin_onboarding_review` | All information has been completed and admin needs to confirm - * onboarding. | - * | `onboarding_completed` | Contractor has been fully onboarded and verified. | + *

    ## Related webhooks + * - `contractor.reactivated`: Fires when the contractor becomes active again (on or after start_date) * - *

    ### Contractor self-onboarding + *

    scope: `contractors:write` * - *

    | onboarding_status | Description | - * | --- | ----------- | - * | `admin_onboarding_incomplete` | Admin needs to enter basic information about the contractor. | - * | `self_onboarding_not_invited` | Admin has the intention to invite the contractor to self-onboard - * (e.g., marking a checkbox), but the system has not yet sent the invitation. | - * | `self_onboarding_invited` | Contractor has been sent an invitation to self-onboard. | - * | `self_onboarding_started` | Contractor has started the self-onboarding process. | - * | `self_onboarding_review` | Admin needs to review contractors's entered information and confirm - * onboarding. | - * | `onboarding_completed` | Contractor has been fully onboarded and verified. | + *

    If set, this operation will use Security#companyAccessAuth from the global security. * - *

    ## onboarding_steps + * @param contractorUuid The UUID of the contractor + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public PostV1ContractorsContractorUuidRehireResponse postV1ContractorsContractorUuidRehire(String contractorUuid) { + return postV1ContractorsContractorUuidRehire(Optional.empty(), contractorUuid, Optional.empty()); + } + + /** + * Schedule a contractor rehire * - *

    | onboarding_steps | Requirement(s) to be completed | - * |:-----------------|-------------------------------:| - * | `basic_details` | Add individual contractor's first name, last name, social security number or - * Business name and EIN depending on the contractor type | - * | `add_address` | Add contractor address. | - * | `compensation_details` | Add contractor compensation. | - * | `payment_details` | (optional) Set up contractor's direct deposit or set to check. | - * | `sign_documents` | Contractor forms (e.g., W9) are generated & signed. | - * | `file_new_hire_report` | Contractor new hire report is generated. | + *

    ## Purpose + * Schedules a contractor rehire for a given date. Creates a new employment record for the contractor. * - *

    scope: `contractors:read` + *

    ## Prerequisites + * Before calling this endpoint: + * 1. The contractor must be inactive (previously dismissed) + * 2. The contractor must not already have an upcoming employment + * + *

    ## Related webhooks + * - `contractor.reactivated`: Fires when the contractor becomes active again (on or after start_date) + * + *

    scope: `contractors:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param contractorUuid The UUID of the contractor + * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1ContractorsContractorUuidOnboardingStatusResponse getOnboardingStatus(String contractorUuid) { - return getOnboardingStatus(Optional.empty(), contractorUuid); + public PostV1ContractorsContractorUuidRehireResponse postV1ContractorsContractorUuidRehire( + Optional xGustoAPIVersion, String contractorUuid, + Optional requestBody) { + PostV1ContractorsContractorUuidRehireRequest request = + PostV1ContractorsContractorUuidRehireRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .contractorUuid(contractorUuid) + .requestBody(requestBody) + .build(); + RequestOperation operation + = new PostV1ContractorsContractorUuidRehire.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); } /** - * Get the contractor's onboarding status + * Cancel a pending contractor rehire * - *

    Retrieves a contractor's onboarding status. The data returned helps inform the required onboarding - * steps and respective completion status. + *

    ## Purpose + * Cancels a pending contractor rehire. For future-dated rehires, cancellation is available anytime + * before the date. + * For past-dated rehires, cancellation is only available within the 2-day grace period. * - *

    ## onboarding_status + *

    ## Prerequisites + * Before calling this endpoint: + * - The contractor must have a pending rehire (upcoming employment) * - *

    ### Admin-facilitated onboarding - * | onboarding_status | Description | - * |:------------------|------------:| - * | `admin_onboarding_incomplete` | Admin needs to enter basic information about the contractor. | - * | `admin_onboarding_review` | All information has been completed and admin needs to confirm - * onboarding. | - * | `onboarding_completed` | Contractor has been fully onboarded and verified. | + *

    ## Related webhooks + * - `contractor.deactivated`: Fires when the contractor returns to inactive state after cancellation * - *

    ### Contractor self-onboarding + *

    scope: `contractors:write` * - *

    | onboarding_status | Description | - * | --- | ----------- | - * | `admin_onboarding_incomplete` | Admin needs to enter basic information about the contractor. | - * | `self_onboarding_not_invited` | Admin has the intention to invite the contractor to self-onboard - * (e.g., marking a checkbox), but the system has not yet sent the invitation. | - * | `self_onboarding_invited` | Contractor has been sent an invitation to self-onboard. | - * | `self_onboarding_started` | Contractor has started the self-onboarding process. | - * | `self_onboarding_review` | Admin needs to review contractors's entered information and confirm - * onboarding. | - * | `onboarding_completed` | Contractor has been fully onboarded and verified. | + *

    If set, this operation will use Security#companyAccessAuth from the global security. * - *

    ## onboarding_steps + * @return The call builder + */ + public DeleteV1ContractorsContractorUuidRehireRequestBuilder deleteV1ContractorsContractorUuidRehire() { + return new DeleteV1ContractorsContractorUuidRehireRequestBuilder(sdkConfiguration); + } + + /** + * Cancel a pending contractor rehire * - *

    | onboarding_steps | Requirement(s) to be completed | - * |:-----------------|-------------------------------:| - * | `basic_details` | Add individual contractor's first name, last name, social security number or - * Business name and EIN depending on the contractor type | - * | `add_address` | Add contractor address. | - * | `compensation_details` | Add contractor compensation. | - * | `payment_details` | (optional) Set up contractor's direct deposit or set to check. | - * | `sign_documents` | Contractor forms (e.g., W9) are generated & signed. | - * | `file_new_hire_report` | Contractor new hire report is generated. | + *

    ## Purpose + * Cancels a pending contractor rehire. For future-dated rehires, cancellation is available anytime + * before the date. + * For past-dated rehires, cancellation is only available within the 2-day grace period. * - *

    scope: `contractors:read` + *

    ## Prerequisites + * Before calling this endpoint: + * - The contractor must have a pending rehire (upcoming employment) + * + *

    ## Related webhooks + * - `contractor.deactivated`: Fires when the contractor returns to inactive state after cancellation + * + *

    scope: `contractors:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param contractorUuid The UUID of the contractor + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public DeleteV1ContractorsContractorUuidRehireResponse deleteV1ContractorsContractorUuidRehire(String contractorUuid) { + return deleteV1ContractorsContractorUuidRehire(Optional.empty(), contractorUuid); + } + + /** + * Cancel a pending contractor rehire + * + *

    ## Purpose + * Cancels a pending contractor rehire. For future-dated rehires, cancellation is available anytime + * before the date. + * For past-dated rehires, cancellation is only available within the 2-day grace period. + * + *

    ## Prerequisites + * Before calling this endpoint: + * - The contractor must have a pending rehire (upcoming employment) + * + *

    ## Related webhooks + * - `contractor.deactivated`: Fires when the contractor returns to inactive state after cancellation + * + *

    scope: `contractors:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * @@ -558,37 +553,32 @@ public GetV1ContractorsContractorUuidOnboardingStatusResponse getOnboardingStatu * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1ContractorsContractorUuidOnboardingStatusResponse getOnboardingStatus(Optional xGustoAPIVersion, String contractorUuid) { - GetV1ContractorsContractorUuidOnboardingStatusRequest request = - GetV1ContractorsContractorUuidOnboardingStatusRequest + public DeleteV1ContractorsContractorUuidRehireResponse deleteV1ContractorsContractorUuidRehire(Optional xGustoAPIVersion, String contractorUuid) { + DeleteV1ContractorsContractorUuidRehireRequest request = + DeleteV1ContractorsContractorUuidRehireRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .contractorUuid(contractorUuid) .build(); - RequestOperation operation - = new GetV1ContractorsContractorUuidOnboardingStatus.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new DeleteV1ContractorsContractorUuidRehire.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Change the contractor's onboarding status + * Schedule a contractor termination * - *

    Updates a contractor's onboarding status. + *

    ## Purpose + * Schedules a contractor dismissal for a given date. Supports both immediate (past dates) and + * future-dated dismissals. * - *

    Below is a list of valid onboarding status changes depending on the intended action to be performed - * on behalf of the contractor. + *

    ## Prerequisites + * Before calling this endpoint: + * 1. The contractor must be active (no existing pending dismissal) + * 2. The contractor must have a current employment * - *

    | Action | current onboarding_status | new onboarding_status | - * |:------------------|:------------:|----------:| - * | Mark a contractor as self-onboarding | `admin_onboarding_incomplete` | - * `self_onboarding_not_invited` | - * | Invite a contractor to self-onboard | `admin_onboarding_incomplete` or - * `self_onboarding_not_invited` | `self_onboarding_invited` | - * | Cancel a contractor's self-onboarding | `self_onboarding_invited` or `self_onboarding_not_invited` - * | `admin_onboarding_incomplete` | - * | Review a contractor's self-onboarded info | `self_onboarding_started` | `self_onboarding_review` | - * | Finish a contractor's onboarding | `admin_onboarding_review` or `self_onboarding_review` | - * `onboarding_completed` | + *

    ## Related webhooks + * - `contractor.deactivated`: Fires when the contractor becomes inactive (on or after end_date) * *

    scope: `contractors:write` * @@ -596,62 +586,51 @@ public GetV1ContractorsContractorUuidOnboardingStatusResponse getOnboardingStatu * * @return The call builder */ - public PutV1ContractorsContractorUuidOnboardingStatusRequestBuilder updateOnboardingStatus() { - return new PutV1ContractorsContractorUuidOnboardingStatusRequestBuilder(sdkConfiguration); + public PostV1ContractorsContractorUuidTerminationRequestBuilder postV1ContractorsContractorUuidTermination() { + return new PostV1ContractorsContractorUuidTerminationRequestBuilder(sdkConfiguration); } /** - * Change the contractor's onboarding status - * - *

    Updates a contractor's onboarding status. - * - *

    Below is a list of valid onboarding status changes depending on the intended action to be performed - * on behalf of the contractor. - * - *

    | Action | current onboarding_status | new onboarding_status | - * |:------------------|:------------:|----------:| - * | Mark a contractor as self-onboarding | `admin_onboarding_incomplete` | - * `self_onboarding_not_invited` | - * | Invite a contractor to self-onboard | `admin_onboarding_incomplete` or - * `self_onboarding_not_invited` | `self_onboarding_invited` | - * | Cancel a contractor's self-onboarding | `self_onboarding_invited` or `self_onboarding_not_invited` - * | `admin_onboarding_incomplete` | - * | Review a contractor's self-onboarded info | `self_onboarding_started` | `self_onboarding_review` | - * | Finish a contractor's onboarding | `admin_onboarding_review` or `self_onboarding_review` | - * `onboarding_completed` | + * Schedule a contractor termination + * + *

    ## Purpose + * Schedules a contractor dismissal for a given date. Supports both immediate (past dates) and + * future-dated dismissals. + * + *

    ## Prerequisites + * Before calling this endpoint: + * 1. The contractor must be active (no existing pending dismissal) + * 2. The contractor must have a current employment + * + *

    ## Related webhooks + * - `contractor.deactivated`: Fires when the contractor becomes inactive (on or after end_date) * *

    scope: `contractors:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param contractorUuid The UUID of the contractor - * @param contractorOnboardingStatusUpdateRequestBody Request body for updating a contractor's onboarding status. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1ContractorsContractorUuidOnboardingStatusResponse updateOnboardingStatus(String contractorUuid, ContractorOnboardingStatusUpdateRequestBody contractorOnboardingStatusUpdateRequestBody) { - return updateOnboardingStatus(Optional.empty(), contractorUuid, contractorOnboardingStatusUpdateRequestBody); + public PostV1ContractorsContractorUuidTerminationResponse postV1ContractorsContractorUuidTermination(String contractorUuid) { + return postV1ContractorsContractorUuidTermination(Optional.empty(), contractorUuid, Optional.empty()); } /** - * Change the contractor's onboarding status + * Schedule a contractor termination * - *

    Updates a contractor's onboarding status. + *

    ## Purpose + * Schedules a contractor dismissal for a given date. Supports both immediate (past dates) and + * future-dated dismissals. * - *

    Below is a list of valid onboarding status changes depending on the intended action to be performed - * on behalf of the contractor. + *

    ## Prerequisites + * Before calling this endpoint: + * 1. The contractor must be active (no existing pending dismissal) + * 2. The contractor must have a current employment * - *

    | Action | current onboarding_status | new onboarding_status | - * |:------------------|:------------:|----------:| - * | Mark a contractor as self-onboarding | `admin_onboarding_incomplete` | - * `self_onboarding_not_invited` | - * | Invite a contractor to self-onboard | `admin_onboarding_incomplete` or - * `self_onboarding_not_invited` | `self_onboarding_invited` | - * | Cancel a contractor's self-onboarding | `self_onboarding_invited` or `self_onboarding_not_invited` - * | `admin_onboarding_incomplete` | - * | Review a contractor's self-onboarded info | `self_onboarding_started` | `self_onboarding_review` | - * | Finish a contractor's onboarding | `admin_onboarding_review` or `self_onboarding_review` | - * `onboarding_completed` | + *

    ## Related webhooks + * - `contractor.deactivated`: Fires when the contractor becomes inactive (on or after end_date) * *

    scope: `contractors:write` * @@ -659,48 +638,66 @@ public PutV1ContractorsContractorUuidOnboardingStatusResponse updateOnboardingSt * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param contractorUuid The UUID of the contractor - * @param contractorOnboardingStatusUpdateRequestBody Request body for updating a contractor's onboarding status. + * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1ContractorsContractorUuidOnboardingStatusResponse updateOnboardingStatus( - Optional xGustoAPIVersion, String contractorUuid, - ContractorOnboardingStatusUpdateRequestBody contractorOnboardingStatusUpdateRequestBody) { - PutV1ContractorsContractorUuidOnboardingStatusRequest request = - PutV1ContractorsContractorUuidOnboardingStatusRequest + public PostV1ContractorsContractorUuidTerminationResponse postV1ContractorsContractorUuidTermination( + Optional xGustoAPIVersion, String contractorUuid, + Optional requestBody) { + PostV1ContractorsContractorUuidTerminationRequest request = + PostV1ContractorsContractorUuidTerminationRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .contractorUuid(contractorUuid) - .contractorOnboardingStatusUpdateRequestBody(contractorOnboardingStatusUpdateRequestBody) + .requestBody(requestBody) .build(); - RequestOperation operation - = new PutV1ContractorsContractorUuidOnboardingStatus.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PostV1ContractorsContractorUuidTermination.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Get a contractor address + * Cancel a pending contractor termination * - *

    The address of a contractor is used to determine certain tax information about them. Addresses are - * geocoded on create and update to ensure validity. + *

    ## Purpose + * Cancels a pending contractor dismissal. For future-dated dismissals, cancellation is available + * anytime before the date. + * For past-dated dismissals, cancellation is only available within the 2-day grace period. * - *

    scope: `contractors:read` + *

    ## Prerequisites + * Before calling this endpoint: + * - The contractor must have a pending dismissal (scheduled or within the grace period) + * + *

    ## Related webhooks + * - `contractor.reactivated`: Fires when the contractor becomes active again after cancellation + * + *

    scope: `contractors:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public GetV1ContractorsContractorUuidAddressRequestBuilder getAddress() { - return new GetV1ContractorsContractorUuidAddressRequestBuilder(sdkConfiguration); + public DeleteV1ContractorsContractorUuidTerminationRequestBuilder deleteV1ContractorsContractorUuidTermination() { + return new DeleteV1ContractorsContractorUuidTerminationRequestBuilder(sdkConfiguration); } /** - * Get a contractor address + * Cancel a pending contractor termination * - *

    The address of a contractor is used to determine certain tax information about them. Addresses are - * geocoded on create and update to ensure validity. + *

    ## Purpose + * Cancels a pending contractor dismissal. For future-dated dismissals, cancellation is available + * anytime before the date. + * For past-dated dismissals, cancellation is only available within the 2-day grace period. * - *

    scope: `contractors:read` + *

    ## Prerequisites + * Before calling this endpoint: + * - The contractor must have a pending dismissal (scheduled or within the grace period) + * + *

    ## Related webhooks + * - `contractor.reactivated`: Fires when the contractor becomes active again after cancellation + * + *

    scope: `contractors:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * @@ -708,17 +705,26 @@ public GetV1ContractorsContractorUuidAddressRequestBuilder getAddress() { * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1ContractorsContractorUuidAddressResponse getAddress(String contractorUuid) { - return getAddress(Optional.empty(), contractorUuid); + public DeleteV1ContractorsContractorUuidTerminationResponse deleteV1ContractorsContractorUuidTermination(String contractorUuid) { + return deleteV1ContractorsContractorUuidTermination(Optional.empty(), contractorUuid); } /** - * Get a contractor address + * Cancel a pending contractor termination * - *

    The address of a contractor is used to determine certain tax information about them. Addresses are - * geocoded on create and update to ensure validity. + *

    ## Purpose + * Cancels a pending contractor dismissal. For future-dated dismissals, cancellation is available + * anytime before the date. + * For past-dated dismissals, cancellation is only available within the 2-day grace period. * - *

    scope: `contractors:read` + *

    ## Prerequisites + * Before calling this endpoint: + * - The contractor must have a pending dismissal (scheduled or within the grace period) + * + *

    ## Related webhooks + * - `contractor.reactivated`: Fires when the contractor becomes active again after cancellation + * + *

    scope: `contractors:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * @@ -727,278 +733,182 @@ public GetV1ContractorsContractorUuidAddressResponse getAddress(String contracto * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1ContractorsContractorUuidAddressResponse getAddress(Optional xGustoAPIVersion, String contractorUuid) { - GetV1ContractorsContractorUuidAddressRequest request = - GetV1ContractorsContractorUuidAddressRequest + public DeleteV1ContractorsContractorUuidTerminationResponse deleteV1ContractorsContractorUuidTermination(Optional xGustoAPIVersion, String contractorUuid) { + DeleteV1ContractorsContractorUuidTerminationRequest request = + DeleteV1ContractorsContractorUuidTerminationRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .contractorUuid(contractorUuid) .build(); - RequestOperation operation - = new GetV1ContractorsContractorUuidAddress.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new DeleteV1ContractorsContractorUuidTermination.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Create or update a contractor's address - * - *

    The address of a contractor is used to determine certain tax information about them. Addresses are - * geocoded on create and update to ensure validity. + * Get a contractor * - *

    > 🚧 Contractors can only have one address. - * > - * > When a contractor is created, an address is created for them by default. Updating the address - * will replace the existing address. + *

    Get a contractor. * - *

    scope: `contractors:write` + *

    scope: `contractors:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public PutV1ContractorsContractorUuidAddressRequestBuilder updateAddress() { - return new PutV1ContractorsContractorUuidAddressRequestBuilder(sdkConfiguration); + public GetV1ContractorsContractorUuidRequestBuilder get() { + return new GetV1ContractorsContractorUuidRequestBuilder(sdkConfiguration); } /** - * Create or update a contractor's address - * - *

    The address of a contractor is used to determine certain tax information about them. Addresses are - * geocoded on create and update to ensure validity. + * Get a contractor * - *

    > 🚧 Contractors can only have one address. - * > - * > When a contractor is created, an address is created for them by default. Updating the address - * will replace the existing address. + *

    Get a contractor. * - *

    scope: `contractors:write` + *

    scope: `contractors:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param contractorUuid The UUID of the contractor - * @param contractorAddressUpdateBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1ContractorsContractorUuidAddressResponse updateAddress(String contractorUuid, ContractorAddressUpdateBody contractorAddressUpdateBody) { - return updateAddress(Optional.empty(), contractorUuid, contractorAddressUpdateBody); + public GetV1ContractorsContractorUuidResponse get(String contractorUuid) { + return get(Optional.empty(), contractorUuid, Optional.empty()); } /** - * Create or update a contractor's address - * - *

    The address of a contractor is used to determine certain tax information about them. Addresses are - * geocoded on create and update to ensure validity. + * Get a contractor * - *

    > 🚧 Contractors can only have one address. - * > - * > When a contractor is created, an address is created for them by default. Updating the address - * will replace the existing address. + *

    Get a contractor. * - *

    scope: `contractors:write` + *

    scope: `contractors:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param contractorUuid The UUID of the contractor - * @param contractorAddressUpdateBody + * @param include Include the requested attribute(s) in each contractor response. Multiple options are comma separated. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1ContractorsContractorUuidAddressResponse updateAddress( - Optional xGustoAPIVersion, String contractorUuid, - ContractorAddressUpdateBody contractorAddressUpdateBody) { - PutV1ContractorsContractorUuidAddressRequest request = - PutV1ContractorsContractorUuidAddressRequest + public GetV1ContractorsContractorUuidResponse get( + Optional xGustoAPIVersion, String contractorUuid, + Optional> include) { + GetV1ContractorsContractorUuidRequest request = + GetV1ContractorsContractorUuidRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .contractorUuid(contractorUuid) - .contractorAddressUpdateBody(contractorAddressUpdateBody) + .include(include) .build(); - RequestOperation operation - = new PutV1ContractorsContractorUuidAddress.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new GetV1ContractorsContractorUuid.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * List contractor payment details - * - *

    Get payment details for contractors in a company. This endpoint returns a list of all contractors - * associated with the specified company, including their payment methods and bank account details - * if they are paid via direct deposit. - * - *

    For contractors paid by direct deposit, the response includes their bank account information - * with sensitive data masked for security. The payment details also include information about - * how their payments are split if they have multiple bank accounts configured. - * - *

    For contractors paid by check, only the basic payment method information is returned. - * - *

    ### Response Details - * - For direct deposit contractors: - * - Bank account details (masked) - * - Payment splits configuration - * - Routing numbers - * - Account types - * - For check payments: - * - Basic payment method designation + * Update a contractor * - *

    ### Common Use Cases - * - Fetching contractor payment information for payroll processing - * - Verifying contractor payment methods - * - Reviewing payment split configurations + *

    Update a contractor. * - *

    `encrypted_account_number` is available only with the additional scope - * `contractor_payment_methods:read:account_numbers`. + *

    > 🚧 Warning + * > + * > Watch out when changing a contractor's type (when the contractor is finished onboarding). + * Specifically, changing contractor type can be dangerous since Gusto won't recognize and file two + * separate 1099s if they simply change from business to individual * - *

    scope: `contractor_payment_methods:read` + *

    scope: `contractors:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder getV1CompaniesCompanyIdContractorsPaymentDetails() { - return new GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder(sdkConfiguration); + public PutV1ContractorsContractorUuidRequestBuilder update() { + return new PutV1ContractorsContractorUuidRequestBuilder(sdkConfiguration); } /** - * List contractor payment details - * - *

    Get payment details for contractors in a company. This endpoint returns a list of all contractors - * associated with the specified company, including their payment methods and bank account details - * if they are paid via direct deposit. - * - *

    For contractors paid by direct deposit, the response includes their bank account information - * with sensitive data masked for security. The payment details also include information about - * how their payments are split if they have multiple bank accounts configured. - * - *

    For contractors paid by check, only the basic payment method information is returned. - * - *

    ### Response Details - * - For direct deposit contractors: - * - Bank account details (masked) - * - Payment splits configuration - * - Routing numbers - * - Account types - * - For check payments: - * - Basic payment method designation - * - *

    ### Common Use Cases - * - Fetching contractor payment information for payroll processing - * - Verifying contractor payment methods - * - Reviewing payment split configurations + * Update a contractor * - *

    `encrypted_account_number` is available only with the additional scope - * `contractor_payment_methods:read:account_numbers`. + *

    Update a contractor. * - *

    scope: `contractor_payment_methods:read` + *

    > 🚧 Warning + * > + * > Watch out when changing a contractor's type (when the contractor is finished onboarding). + * Specifically, changing contractor type can be dangerous since Gusto won't recognize and file two + * separate 1099s if they simply change from business to individual + * + *

    scope: `contractors:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company. This identifies the company whose contractor payment details you want to retrieve. + * @param contractorUuid The UUID of the contractor + * @param contractorUpdateRequestBody Request body for updating a contractor. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1CompaniesCompanyIdContractorsPaymentDetailsResponse getV1CompaniesCompanyIdContractorsPaymentDetails(String companyId) { - return getV1CompaniesCompanyIdContractorsPaymentDetails(companyId, Optional.empty(), Optional.empty(), - Optional.empty()); + public PutV1ContractorsContractorUuidResponse update(String contractorUuid, ContractorUpdateRequestBody contractorUpdateRequestBody) { + return update(Optional.empty(), contractorUuid, contractorUpdateRequestBody); } /** - * List contractor payment details - * - *

    Get payment details for contractors in a company. This endpoint returns a list of all contractors - * associated with the specified company, including their payment methods and bank account details - * if they are paid via direct deposit. - * - *

    For contractors paid by direct deposit, the response includes their bank account information - * with sensitive data masked for security. The payment details also include information about - * how their payments are split if they have multiple bank accounts configured. - * - *

    For contractors paid by check, only the basic payment method information is returned. - * - *

    ### Response Details - * - For direct deposit contractors: - * - Bank account details (masked) - * - Payment splits configuration - * - Routing numbers - * - Account types - * - For check payments: - * - Basic payment method designation + * Update a contractor * - *

    ### Common Use Cases - * - Fetching contractor payment information for payroll processing - * - Verifying contractor payment methods - * - Reviewing payment split configurations + *

    Update a contractor. * - *

    `encrypted_account_number` is available only with the additional scope - * `contractor_payment_methods:read:account_numbers`. + *

    > 🚧 Warning + * > + * > Watch out when changing a contractor's type (when the contractor is finished onboarding). + * Specifically, changing contractor type can be dangerous since Gusto won't recognize and file two + * separate 1099s if they simply change from business to individual * - *

    scope: `contractor_payment_methods:read` + *

    scope: `contractors:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company. This identifies the company whose contractor payment details you want to retrieve. - * @param contractorUuid Optional filter to get payment details for a specific contractor. When provided, the response will only include payment details for this contractor. - * @param contractorPaymentGroupUuid 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. * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param contractorUuid The UUID of the contractor + * @param contractorUpdateRequestBody Request body for updating a contractor. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1CompaniesCompanyIdContractorsPaymentDetailsResponse getV1CompaniesCompanyIdContractorsPaymentDetails( - String companyId, Optional contractorUuid, - Optional contractorPaymentGroupUuid, Optional xGustoAPIVersion) { - GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest request = - GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest + public PutV1ContractorsContractorUuidResponse update( + Optional xGustoAPIVersion, String contractorUuid, + ContractorUpdateRequestBody contractorUpdateRequestBody) { + PutV1ContractorsContractorUuidRequest request = + PutV1ContractorsContractorUuidRequest .builder() - .companyId(companyId) - .contractorUuid(contractorUuid) - .contractorPaymentGroupUuid(contractorPaymentGroupUuid) .xGustoAPIVersion(xGustoAPIVersion) + .contractorUuid(contractorUuid) + .contractorUpdateRequestBody(contractorUpdateRequestBody) .build(); - RequestOperation operation - = new GetV1CompaniesCompanyIdContractorsPaymentDetails.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PutV1ContractorsContractorUuid.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Schedule a contractor rehire - * - *

    ## Purpose - * Schedules a contractor rehire for a given date. Creates a new employment record for the contractor. - * - *

    ## Prerequisites - * Before calling this endpoint: - * 1. The contractor must be inactive (previously dismissed) - * 2. The contractor must not already have an upcoming employment + * Delete a contractor * - *

    ## Related webhooks - * - `contractor.reactivated`: Fires when the contractor becomes active again (on or after start_date) + *

    A contractor can only be deleted when there are no contractor payments. * - *

    scope: `contractors:write` + *

    scope: `contractors:manage` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public PostV1ContractorsContractorUuidRehireRequestBuilder postV1ContractorsContractorUuidRehire() { - return new PostV1ContractorsContractorUuidRehireRequestBuilder(sdkConfiguration); + public DeleteV1ContractorsContractorUuidRequestBuilder delete() { + return new DeleteV1ContractorsContractorUuidRequestBuilder(sdkConfiguration); } /** - * Schedule a contractor rehire - * - *

    ## Purpose - * Schedules a contractor rehire for a given date. Creates a new employment record for the contractor. - * - *

    ## Prerequisites - * Before calling this endpoint: - * 1. The contractor must be inactive (previously dismissed) - * 2. The contractor must not already have an upcoming employment + * Delete a contractor * - *

    ## Related webhooks - * - `contractor.reactivated`: Fires when the contractor becomes active again (on or after start_date) + *

    A contractor can only be deleted when there are no contractor payments. * - *

    scope: `contractors:write` + *

    scope: `contractors:manage` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * @@ -1006,178 +916,226 @@ public PostV1ContractorsContractorUuidRehireRequestBuilder postV1ContractorsCont * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostV1ContractorsContractorUuidRehireResponse postV1ContractorsContractorUuidRehire(String contractorUuid) { - return postV1ContractorsContractorUuidRehire(contractorUuid, Optional.empty(), Optional.empty()); + public DeleteV1ContractorsContractorUuidResponse delete(String contractorUuid) { + return delete(Optional.empty(), contractorUuid); } /** - * Schedule a contractor rehire - * - *

    ## Purpose - * Schedules a contractor rehire for a given date. Creates a new employment record for the contractor. - * - *

    ## Prerequisites - * Before calling this endpoint: - * 1. The contractor must be inactive (previously dismissed) - * 2. The contractor must not already have an upcoming employment + * Delete a contractor * - *

    ## Related webhooks - * - `contractor.reactivated`: Fires when the contractor becomes active again (on or after start_date) + *

    A contractor can only be deleted when there are no contractor payments. * - *

    scope: `contractors:write` + *

    scope: `contractors:manage` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param contractorUuid The UUID of the contractor * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param requestBody + * @param contractorUuid The UUID of the contractor * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostV1ContractorsContractorUuidRehireResponse postV1ContractorsContractorUuidRehire( - String contractorUuid, Optional xGustoAPIVersion, - Optional requestBody) { - PostV1ContractorsContractorUuidRehireRequest request = - PostV1ContractorsContractorUuidRehireRequest + public DeleteV1ContractorsContractorUuidResponse delete(Optional xGustoAPIVersion, String contractorUuid) { + DeleteV1ContractorsContractorUuidRequest request = + DeleteV1ContractorsContractorUuidRequest .builder() - .contractorUuid(contractorUuid) .xGustoAPIVersion(xGustoAPIVersion) - .requestBody(requestBody) + .contractorUuid(contractorUuid) .build(); - RequestOperation operation - = new PostV1ContractorsContractorUuidRehire.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new DeleteV1ContractorsContractorUuid.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Cancel a pending contractor rehire + * Get contractors of a company * - *

    ## Purpose - * Cancels a pending contractor rehire. For future-dated rehires, cancellation is available anytime - * before the date. - * For past-dated rehires, cancellation is only available within the 2-day grace period. + *

    Get all contractors, active and inactive, individual and business, for a company. * - *

    ## Prerequisites - * Before calling this endpoint: - * - The contractor must have a pending rehire (upcoming employment) + *

    scope: `contractors:read` * - *

    ## Related webhooks - * - `contractor.deactivated`: Fires when the contractor returns to inactive state after cancellation + *

    If set, this operation will use Security#companyAccessAuth from the global security. * - *

    scope: `contractors:write` + * @return The call builder + */ + public GetV1CompaniesCompanyUuidContractorsRequestBuilder list() { + return new GetV1CompaniesCompanyUuidContractorsRequestBuilder(sdkConfiguration); + } + + /** + * Get contractors of a company + * + *

    Get all contractors, active and inactive, individual and business, for a company. + * + *

    scope: `contractors:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @return The call builder + * @param request The request object containing all the parameters for the API call. + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails */ - public DeleteV1ContractorsContractorUuidRehireRequestBuilder deleteV1ContractorsContractorUuidRehire() { - return new DeleteV1ContractorsContractorUuidRehireRequestBuilder(sdkConfiguration); + public GetV1CompaniesCompanyUuidContractorsResponse list(GetV1CompaniesCompanyUuidContractorsRequest request) { + RequestOperation operation + = new GetV1CompaniesCompanyUuidContractors.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); } /** - * Cancel a pending contractor rehire + * Create a contractor * - *

    ## Purpose - * Cancels a pending contractor rehire. For future-dated rehires, cancellation is available anytime - * before the date. - * For past-dated rehires, cancellation is only available within the 2-day grace period. + *

    Create an individual or business contractor. * - *

    ## Prerequisites - * Before calling this endpoint: - * - The contractor must have a pending rehire (upcoming employment) + *

    scope: `contractors:manage` * - *

    ## Related webhooks - * - `contractor.deactivated`: Fires when the contractor returns to inactive state after cancellation + *

    If set, this operation will use Security#companyAccessAuth from the global security. * - *

    scope: `contractors:write` + * @return The call builder + */ + public PostV1CompaniesCompanyUuidContractorsRequestBuilder create() { + return new PostV1CompaniesCompanyUuidContractorsRequestBuilder(sdkConfiguration); + } + + /** + * Create a contractor + * + *

    Create an individual or business contractor. + * + *

    scope: `contractors:manage` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param contractorUuid The UUID of the contractor + * @param companyUuid The UUID of the company + * @param contractorCreateRequestBody Request body for creating a contractor. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public DeleteV1ContractorsContractorUuidRehireResponse deleteV1ContractorsContractorUuidRehire(String contractorUuid) { - return deleteV1ContractorsContractorUuidRehire(contractorUuid, Optional.empty()); + public PostV1CompaniesCompanyUuidContractorsResponse create(String companyUuid, ContractorCreateRequestBody contractorCreateRequestBody) { + return create(Optional.empty(), companyUuid, contractorCreateRequestBody); } /** - * Cancel a pending contractor rehire - * - *

    ## Purpose - * Cancels a pending contractor rehire. For future-dated rehires, cancellation is available anytime - * before the date. - * For past-dated rehires, cancellation is only available within the 2-day grace period. - * - *

    ## Prerequisites - * Before calling this endpoint: - * - The contractor must have a pending rehire (upcoming employment) + * Create a contractor * - *

    ## Related webhooks - * - `contractor.deactivated`: Fires when the contractor returns to inactive state after cancellation + *

    Create an individual or business contractor. * - *

    scope: `contractors:write` + *

    scope: `contractors:manage` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param contractorUuid The UUID of the contractor * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company + * @param contractorCreateRequestBody Request body for creating a contractor. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public DeleteV1ContractorsContractorUuidRehireResponse deleteV1ContractorsContractorUuidRehire(String contractorUuid, Optional xGustoAPIVersion) { - DeleteV1ContractorsContractorUuidRehireRequest request = - DeleteV1ContractorsContractorUuidRehireRequest + public PostV1CompaniesCompanyUuidContractorsResponse create( + Optional xGustoAPIVersion, String companyUuid, + ContractorCreateRequestBody contractorCreateRequestBody) { + PostV1CompaniesCompanyUuidContractorsRequest request = + PostV1CompaniesCompanyUuidContractorsRequest .builder() - .contractorUuid(contractorUuid) .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) + .contractorCreateRequestBody(contractorCreateRequestBody) .build(); - RequestOperation operation - = new DeleteV1ContractorsContractorUuidRehire.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PostV1CompaniesCompanyUuidContractors.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Schedule a contractor termination + * Get the contractor's onboarding status + * + *

    Retrieves a contractor's onboarding status. The data returned helps inform the required onboarding + * steps and respective completion status. + * + *

    ## onboarding_status + * + *

    ### Admin-facilitated onboarding + * | onboarding_status | Description | + * |:------------------|------------:| + * | `admin_onboarding_incomplete` | Admin needs to enter basic information about the contractor. | + * | `admin_onboarding_review` | All information has been completed and admin needs to confirm + * onboarding. | + * | `onboarding_completed` | Contractor has been fully onboarded and verified. | * - *

    ## Purpose - * Schedules a contractor dismissal for a given date. Supports both immediate (past dates) and - * future-dated dismissals. + *

    ### Contractor self-onboarding * - *

    ## Prerequisites - * Before calling this endpoint: - * 1. The contractor must be active (no existing pending dismissal) - * 2. The contractor must have a current employment + *

    | onboarding_status | Description | + * | --- | ----------- | + * | `admin_onboarding_incomplete` | Admin needs to enter basic information about the contractor. | + * | `self_onboarding_not_invited` | Admin has the intention to invite the contractor to self-onboard + * (e.g., marking a checkbox), but the system has not yet sent the invitation. | + * | `self_onboarding_invited` | Contractor has been sent an invitation to self-onboard. | + * | `self_onboarding_started` | Contractor has started the self-onboarding process. | + * | `self_onboarding_review` | Admin needs to review contractors's entered information and confirm + * onboarding. | + * | `onboarding_completed` | Contractor has been fully onboarded and verified. | * - *

    ## Related webhooks - * - `contractor.deactivated`: Fires when the contractor becomes inactive (on or after end_date) + *

    ## onboarding_steps * - *

    scope: `contractors:write` + *

    | onboarding_steps | Requirement(s) to be completed | + * |:-----------------|-------------------------------:| + * | `basic_details` | Add individual contractor's first name, last name, social security number or + * Business name and EIN depending on the contractor type | + * | `add_address` | Add contractor address. | + * | `compensation_details` | Add contractor compensation. | + * | `payment_details` | (optional) Set up contractor's direct deposit or set to check. | + * | `sign_documents` | Contractor forms (e.g., W9) are generated & signed. | + * | `file_new_hire_report` | Contractor new hire report is generated. | + * + *

    scope: `contractors:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public PostV1ContractorsContractorUuidTerminationRequestBuilder postV1ContractorsContractorUuidTermination() { - return new PostV1ContractorsContractorUuidTerminationRequestBuilder(sdkConfiguration); + public GetV1ContractorsContractorUuidOnboardingStatusRequestBuilder getOnboardingStatus() { + return new GetV1ContractorsContractorUuidOnboardingStatusRequestBuilder(sdkConfiguration); } /** - * Schedule a contractor termination + * Get the contractor's onboarding status * - *

    ## Purpose - * Schedules a contractor dismissal for a given date. Supports both immediate (past dates) and - * future-dated dismissals. + *

    Retrieves a contractor's onboarding status. The data returned helps inform the required onboarding + * steps and respective completion status. * - *

    ## Prerequisites - * Before calling this endpoint: - * 1. The contractor must be active (no existing pending dismissal) - * 2. The contractor must have a current employment + *

    ## onboarding_status * - *

    ## Related webhooks - * - `contractor.deactivated`: Fires when the contractor becomes inactive (on or after end_date) + *

    ### Admin-facilitated onboarding + * | onboarding_status | Description | + * |:------------------|------------:| + * | `admin_onboarding_incomplete` | Admin needs to enter basic information about the contractor. | + * | `admin_onboarding_review` | All information has been completed and admin needs to confirm + * onboarding. | + * | `onboarding_completed` | Contractor has been fully onboarded and verified. | * - *

    scope: `contractors:write` + *

    ### Contractor self-onboarding + * + *

    | onboarding_status | Description | + * | --- | ----------- | + * | `admin_onboarding_incomplete` | Admin needs to enter basic information about the contractor. | + * | `self_onboarding_not_invited` | Admin has the intention to invite the contractor to self-onboard + * (e.g., marking a checkbox), but the system has not yet sent the invitation. | + * | `self_onboarding_invited` | Contractor has been sent an invitation to self-onboard. | + * | `self_onboarding_started` | Contractor has started the self-onboarding process. | + * | `self_onboarding_review` | Admin needs to review contractors's entered information and confirm + * onboarding. | + * | `onboarding_completed` | Contractor has been fully onboarded and verified. | + * + *

    ## onboarding_steps + * + *

    | onboarding_steps | Requirement(s) to be completed | + * |:-----------------|-------------------------------:| + * | `basic_details` | Add individual contractor's first name, last name, social security number or + * Business name and EIN depending on the contractor type | + * | `add_address` | Add contractor address. | + * | `compensation_details` | Add contractor compensation. | + * | `payment_details` | (optional) Set up contractor's direct deposit or set to check. | + * | `sign_documents` | Contractor forms (e.g., W9) are generated & signed. | + * | `file_new_hire_report` | Contractor new hire report is generated. | + * + *

    scope: `contractors:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * @@ -1185,64 +1143,91 @@ public PostV1ContractorsContractorUuidTerminationRequestBuilder postV1Contractor * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostV1ContractorsContractorUuidTerminationResponse postV1ContractorsContractorUuidTermination(String contractorUuid) { - return postV1ContractorsContractorUuidTermination(contractorUuid, Optional.empty(), Optional.empty()); + public GetV1ContractorsContractorUuidOnboardingStatusResponse getOnboardingStatus(String contractorUuid) { + return getOnboardingStatus(Optional.empty(), contractorUuid); } /** - * Schedule a contractor termination + * Get the contractor's onboarding status * - *

    ## Purpose - * Schedules a contractor dismissal for a given date. Supports both immediate (past dates) and - * future-dated dismissals. + *

    Retrieves a contractor's onboarding status. The data returned helps inform the required onboarding + * steps and respective completion status. * - *

    ## Prerequisites - * Before calling this endpoint: - * 1. The contractor must be active (no existing pending dismissal) - * 2. The contractor must have a current employment + *

    ## onboarding_status * - *

    ## Related webhooks - * - `contractor.deactivated`: Fires when the contractor becomes inactive (on or after end_date) + *

    ### Admin-facilitated onboarding + * | onboarding_status | Description | + * |:------------------|------------:| + * | `admin_onboarding_incomplete` | Admin needs to enter basic information about the contractor. | + * | `admin_onboarding_review` | All information has been completed and admin needs to confirm + * onboarding. | + * | `onboarding_completed` | Contractor has been fully onboarded and verified. | * - *

    scope: `contractors:write` + *

    ### Contractor self-onboarding + * + *

    | onboarding_status | Description | + * | --- | ----------- | + * | `admin_onboarding_incomplete` | Admin needs to enter basic information about the contractor. | + * | `self_onboarding_not_invited` | Admin has the intention to invite the contractor to self-onboard + * (e.g., marking a checkbox), but the system has not yet sent the invitation. | + * | `self_onboarding_invited` | Contractor has been sent an invitation to self-onboard. | + * | `self_onboarding_started` | Contractor has started the self-onboarding process. | + * | `self_onboarding_review` | Admin needs to review contractors's entered information and confirm + * onboarding. | + * | `onboarding_completed` | Contractor has been fully onboarded and verified. | + * + *

    ## onboarding_steps + * + *

    | onboarding_steps | Requirement(s) to be completed | + * |:-----------------|-------------------------------:| + * | `basic_details` | Add individual contractor's first name, last name, social security number or + * Business name and EIN depending on the contractor type | + * | `add_address` | Add contractor address. | + * | `compensation_details` | Add contractor compensation. | + * | `payment_details` | (optional) Set up contractor's direct deposit or set to check. | + * | `sign_documents` | Contractor forms (e.g., W9) are generated & signed. | + * | `file_new_hire_report` | Contractor new hire report is generated. | + * + *

    scope: `contractors:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param contractorUuid The UUID of the contractor * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param requestBody + * @param contractorUuid The UUID of the contractor * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostV1ContractorsContractorUuidTerminationResponse postV1ContractorsContractorUuidTermination( - String contractorUuid, Optional xGustoAPIVersion, - Optional requestBody) { - PostV1ContractorsContractorUuidTerminationRequest request = - PostV1ContractorsContractorUuidTerminationRequest + public GetV1ContractorsContractorUuidOnboardingStatusResponse getOnboardingStatus(Optional xGustoAPIVersion, String contractorUuid) { + GetV1ContractorsContractorUuidOnboardingStatusRequest request = + GetV1ContractorsContractorUuidOnboardingStatusRequest .builder() - .contractorUuid(contractorUuid) .xGustoAPIVersion(xGustoAPIVersion) - .requestBody(requestBody) + .contractorUuid(contractorUuid) .build(); - RequestOperation operation - = new PostV1ContractorsContractorUuidTermination.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new GetV1ContractorsContractorUuidOnboardingStatus.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Cancel a pending contractor termination + * Change the contractor's onboarding status * - *

    ## Purpose - * Cancels a pending contractor dismissal. For future-dated dismissals, cancellation is available - * anytime before the date. - * For past-dated dismissals, cancellation is only available within the 2-day grace period. + *

    Updates a contractor's onboarding status. * - *

    ## Prerequisites - * Before calling this endpoint: - * - The contractor must have a pending dismissal (scheduled or within the grace period) + *

    Below is a list of valid onboarding status changes depending on the intended action to be performed + * on behalf of the contractor. * - *

    ## Related webhooks - * - `contractor.reactivated`: Fires when the contractor becomes active again after cancellation + *

    | Action | current onboarding_status | new onboarding_status | + * |:------------------|:------------:|----------:| + * | Mark a contractor as self-onboarding | `admin_onboarding_incomplete` | + * `self_onboarding_not_invited` | + * | Invite a contractor to self-onboard | `admin_onboarding_incomplete` or + * `self_onboarding_not_invited` | `self_onboarding_invited` | + * | Cancel a contractor's self-onboarding | `self_onboarding_invited` or `self_onboarding_not_invited` + * | `admin_onboarding_incomplete` | + * | Review a contractor's self-onboarded info | `self_onboarding_started` | `self_onboarding_review` | + * | Finish a contractor's onboarding | `admin_onboarding_review` or `self_onboarding_review` | + * `onboarding_completed` | * *

    scope: `contractors:write` * @@ -1250,70 +1235,85 @@ public PostV1ContractorsContractorUuidTerminationResponse postV1ContractorsContr * * @return The call builder */ - public DeleteV1ContractorsContractorUuidTerminationRequestBuilder deleteV1ContractorsContractorUuidTermination() { - return new DeleteV1ContractorsContractorUuidTerminationRequestBuilder(sdkConfiguration); + public PutV1ContractorsContractorUuidOnboardingStatusRequestBuilder updateOnboardingStatus() { + return new PutV1ContractorsContractorUuidOnboardingStatusRequestBuilder(sdkConfiguration); } /** - * Cancel a pending contractor termination + * Change the contractor's onboarding status * - *

    ## Purpose - * Cancels a pending contractor dismissal. For future-dated dismissals, cancellation is available - * anytime before the date. - * For past-dated dismissals, cancellation is only available within the 2-day grace period. + *

    Updates a contractor's onboarding status. * - *

    ## Prerequisites - * Before calling this endpoint: - * - The contractor must have a pending dismissal (scheduled or within the grace period) + *

    Below is a list of valid onboarding status changes depending on the intended action to be performed + * on behalf of the contractor. * - *

    ## Related webhooks - * - `contractor.reactivated`: Fires when the contractor becomes active again after cancellation + *

    | Action | current onboarding_status | new onboarding_status | + * |:------------------|:------------:|----------:| + * | Mark a contractor as self-onboarding | `admin_onboarding_incomplete` | + * `self_onboarding_not_invited` | + * | Invite a contractor to self-onboard | `admin_onboarding_incomplete` or + * `self_onboarding_not_invited` | `self_onboarding_invited` | + * | Cancel a contractor's self-onboarding | `self_onboarding_invited` or `self_onboarding_not_invited` + * | `admin_onboarding_incomplete` | + * | Review a contractor's self-onboarded info | `self_onboarding_started` | `self_onboarding_review` | + * | Finish a contractor's onboarding | `admin_onboarding_review` or `self_onboarding_review` | + * `onboarding_completed` | * *

    scope: `contractors:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param contractorUuid The UUID of the contractor + * @param contractorOnboardingStatusUpdateRequestBody Request body for updating a contractor's onboarding status. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public DeleteV1ContractorsContractorUuidTerminationResponse deleteV1ContractorsContractorUuidTermination(String contractorUuid) { - return deleteV1ContractorsContractorUuidTermination(contractorUuid, Optional.empty()); + public PutV1ContractorsContractorUuidOnboardingStatusResponse updateOnboardingStatus(String contractorUuid, ContractorOnboardingStatusUpdateRequestBody contractorOnboardingStatusUpdateRequestBody) { + return updateOnboardingStatus(Optional.empty(), contractorUuid, contractorOnboardingStatusUpdateRequestBody); } /** - * Cancel a pending contractor termination + * Change the contractor's onboarding status * - *

    ## Purpose - * Cancels a pending contractor dismissal. For future-dated dismissals, cancellation is available - * anytime before the date. - * For past-dated dismissals, cancellation is only available within the 2-day grace period. + *

    Updates a contractor's onboarding status. * - *

    ## Prerequisites - * Before calling this endpoint: - * - The contractor must have a pending dismissal (scheduled or within the grace period) + *

    Below is a list of valid onboarding status changes depending on the intended action to be performed + * on behalf of the contractor. * - *

    ## Related webhooks - * - `contractor.reactivated`: Fires when the contractor becomes active again after cancellation + *

    | Action | current onboarding_status | new onboarding_status | + * |:------------------|:------------:|----------:| + * | Mark a contractor as self-onboarding | `admin_onboarding_incomplete` | + * `self_onboarding_not_invited` | + * | Invite a contractor to self-onboard | `admin_onboarding_incomplete` or + * `self_onboarding_not_invited` | `self_onboarding_invited` | + * | Cancel a contractor's self-onboarding | `self_onboarding_invited` or `self_onboarding_not_invited` + * | `admin_onboarding_incomplete` | + * | Review a contractor's self-onboarded info | `self_onboarding_started` | `self_onboarding_review` | + * | Finish a contractor's onboarding | `admin_onboarding_review` or `self_onboarding_review` | + * `onboarding_completed` | * *

    scope: `contractors:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param contractorUuid The UUID of the contractor * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param contractorUuid The UUID of the contractor + * @param contractorOnboardingStatusUpdateRequestBody Request body for updating a contractor's onboarding status. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public DeleteV1ContractorsContractorUuidTerminationResponse deleteV1ContractorsContractorUuidTermination(String contractorUuid, Optional xGustoAPIVersion) { - DeleteV1ContractorsContractorUuidTerminationRequest request = - DeleteV1ContractorsContractorUuidTerminationRequest + public PutV1ContractorsContractorUuidOnboardingStatusResponse updateOnboardingStatus( + Optional xGustoAPIVersion, String contractorUuid, + ContractorOnboardingStatusUpdateRequestBody contractorOnboardingStatusUpdateRequestBody) { + PutV1ContractorsContractorUuidOnboardingStatusRequest request = + PutV1ContractorsContractorUuidOnboardingStatusRequest .builder() - .contractorUuid(contractorUuid) .xGustoAPIVersion(xGustoAPIVersion) + .contractorUuid(contractorUuid) + .contractorOnboardingStatusUpdateRequestBody(contractorOnboardingStatusUpdateRequestBody) .build(); - RequestOperation operation - = new DeleteV1ContractorsContractorUuidTermination.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PutV1ContractorsContractorUuidOnboardingStatus.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/Departments.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/Departments.java index bc6a50625..5dd042eed 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/Departments.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/Departments.java @@ -67,130 +67,6 @@ public AsyncDepartments async() { return asyncSDK; } - /** - * Get all departments of a company - * - *

    Get all of the departments for a given company with the employees and contractors assigned to that - * department. - * - *

    scope: `departments:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The call builder - */ - public GetCompaniesDepartmentsRequestBuilder getAll() { - return new GetCompaniesDepartmentsRequestBuilder(sdkConfiguration); - } - - /** - * Get all departments of a company - * - *

    Get all of the departments for a given company with the employees and contractors assigned to that - * department. - * - *

    scope: `departments:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param companyUuid The UUID of the company - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public GetCompaniesDepartmentsResponse getAll(String companyUuid) { - return getAll(companyUuid, Optional.empty()); - } - - /** - * Get all departments of a company - * - *

    Get all of the departments for a given company with the employees and contractors assigned to that - * department. - * - *

    scope: `departments:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param companyUuid The UUID of the company - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public GetCompaniesDepartmentsResponse getAll(String companyUuid, Optional xGustoAPIVersion) { - GetCompaniesDepartmentsRequest request = - GetCompaniesDepartmentsRequest - .builder() - .companyUuid(companyUuid) - .xGustoAPIVersion(xGustoAPIVersion) - .build(); - RequestOperation operation - = new GetCompaniesDepartments.Sync(sdkConfiguration, _headers); - return operation.handleResponse(operation.doRequest(request)); - } - - /** - * Create a department - * - *

    Create a department - * - *

    scope: `departments:write` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The call builder - */ - public PostDepartmentsRequestBuilder create() { - return new PostDepartmentsRequestBuilder(sdkConfiguration); - } - - /** - * Create a department - * - *

    Create a department - * - *

    scope: `departments:write` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param companyUuid The UUID of the company - * @param departmentCreateRequestBody - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public PostDepartmentsResponse create(String companyUuid, DepartmentCreateRequestBody departmentCreateRequestBody) { - return create(companyUuid, Optional.empty(), departmentCreateRequestBody); - } - - /** - * Create a department - * - *

    Create a department - * - *

    scope: `departments:write` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param companyUuid The UUID of the company - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param departmentCreateRequestBody - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public PostDepartmentsResponse create( - String companyUuid, Optional xGustoAPIVersion, - DepartmentCreateRequestBody departmentCreateRequestBody) { - PostDepartmentsRequest request = - PostDepartmentsRequest - .builder() - .companyUuid(companyUuid) - .xGustoAPIVersion(xGustoAPIVersion) - .departmentCreateRequestBody(departmentCreateRequestBody) - .build(); - RequestOperation operation - = new PostDepartments.Sync(sdkConfiguration, _headers); - return operation.handleResponse(operation.doRequest(request)); - } - /** * Get a department * @@ -220,7 +96,7 @@ public GetDepartmentRequestBuilder get() { * @throws RuntimeException subclass if the API call fails */ public GetDepartmentResponse get(String departmentUuid) { - return get(departmentUuid, Optional.empty()); + return get(Optional.empty(), departmentUuid); } /** @@ -232,17 +108,17 @@ public GetDepartmentResponse get(String departmentUuid) { * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param departmentUuid The UUID of the department * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param departmentUuid The UUID of the department * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetDepartmentResponse get(String departmentUuid, Optional xGustoAPIVersion) { + public GetDepartmentResponse get(Optional xGustoAPIVersion, String departmentUuid) { GetDepartmentRequest request = GetDepartmentRequest .builder() - .departmentUuid(departmentUuid) .xGustoAPIVersion(xGustoAPIVersion) + .departmentUuid(departmentUuid) .build(); RequestOperation operation = new GetDepartment.Sync(sdkConfiguration, _headers); @@ -279,7 +155,7 @@ public PutDepartmentsRequestBuilder update() { * @throws RuntimeException subclass if the API call fails */ public PutDepartmentsResponse update(String departmentUuid, DepartmentUpdateRequestBody departmentUpdateRequestBody) { - return update(departmentUuid, Optional.empty(), departmentUpdateRequestBody); + return update(Optional.empty(), departmentUuid, departmentUpdateRequestBody); } /** @@ -291,20 +167,20 @@ public PutDepartmentsResponse update(String departmentUuid, DepartmentUpdateRequ * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param departmentUuid The UUID of the department * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param departmentUuid The UUID of the department * @param departmentUpdateRequestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PutDepartmentsResponse update( - String departmentUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String departmentUuid, DepartmentUpdateRequestBody departmentUpdateRequestBody) { PutDepartmentsRequest request = PutDepartmentsRequest .builder() - .departmentUuid(departmentUuid) .xGustoAPIVersion(xGustoAPIVersion) + .departmentUuid(departmentUuid) .departmentUpdateRequestBody(departmentUpdateRequestBody) .build(); RequestOperation operation @@ -343,7 +219,7 @@ public DeleteDepartmentRequestBuilder delete() { * @throws RuntimeException subclass if the API call fails */ public DeleteDepartmentResponse delete(String departmentUuid) { - return delete(departmentUuid, Optional.empty()); + return delete(Optional.empty(), departmentUuid); } /** @@ -356,17 +232,17 @@ public DeleteDepartmentResponse delete(String departmentUuid) { * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param departmentUuid The UUID of the department * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param departmentUuid The UUID of the department * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public DeleteDepartmentResponse delete(String departmentUuid, Optional xGustoAPIVersion) { + public DeleteDepartmentResponse delete(Optional xGustoAPIVersion, String departmentUuid) { DeleteDepartmentRequest request = DeleteDepartmentRequest .builder() - .departmentUuid(departmentUuid) .xGustoAPIVersion(xGustoAPIVersion) + .departmentUuid(departmentUuid) .build(); RequestOperation operation = new DeleteDepartment.Sync(sdkConfiguration, _headers); @@ -403,7 +279,7 @@ public PutAddPeopleToDepartmentRequestBuilder addPeople() { * @throws RuntimeException subclass if the API call fails */ public PutAddPeopleToDepartmentResponse addPeople(String departmentUuid, DepartmentPeopleRequestBody departmentPeopleRequestBody) { - return addPeople(departmentUuid, Optional.empty(), departmentPeopleRequestBody); + return addPeople(Optional.empty(), departmentUuid, departmentPeopleRequestBody); } /** @@ -415,20 +291,20 @@ public PutAddPeopleToDepartmentResponse addPeople(String departmentUuid, Departm * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param departmentUuid The UUID of the department * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param departmentUuid The UUID of the department * @param departmentPeopleRequestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PutAddPeopleToDepartmentResponse addPeople( - String departmentUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String departmentUuid, DepartmentPeopleRequestBody departmentPeopleRequestBody) { PutAddPeopleToDepartmentRequest request = PutAddPeopleToDepartmentRequest .builder() - .departmentUuid(departmentUuid) .xGustoAPIVersion(xGustoAPIVersion) + .departmentUuid(departmentUuid) .departmentPeopleRequestBody(departmentPeopleRequestBody) .build(); RequestOperation operation @@ -466,7 +342,7 @@ public PutRemovePeopleFromDepartmentRequestBuilder removePeople() { * @throws RuntimeException subclass if the API call fails */ public PutRemovePeopleFromDepartmentResponse removePeople(String departmentUuid, DepartmentPeopleRequestBody departmentPeopleRequestBody) { - return removePeople(departmentUuid, Optional.empty(), departmentPeopleRequestBody); + return removePeople(Optional.empty(), departmentUuid, departmentPeopleRequestBody); } /** @@ -478,20 +354,20 @@ public PutRemovePeopleFromDepartmentResponse removePeople(String departmentUuid, * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param departmentUuid The UUID of the department * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param departmentUuid The UUID of the department * @param departmentPeopleRequestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PutRemovePeopleFromDepartmentResponse removePeople( - String departmentUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String departmentUuid, DepartmentPeopleRequestBody departmentPeopleRequestBody) { PutRemovePeopleFromDepartmentRequest request = PutRemovePeopleFromDepartmentRequest .builder() - .departmentUuid(departmentUuid) .xGustoAPIVersion(xGustoAPIVersion) + .departmentUuid(departmentUuid) .departmentPeopleRequestBody(departmentPeopleRequestBody) .build(); RequestOperation operation @@ -499,4 +375,128 @@ public PutRemovePeopleFromDepartmentResponse removePeople( return operation.handleResponse(operation.doRequest(request)); } + /** + * Get all departments of a company + * + *

    Get all of the departments for a given company with the employees and contractors assigned to that + * department. + * + *

    scope: `departments:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public GetCompaniesDepartmentsRequestBuilder getAll() { + return new GetCompaniesDepartmentsRequestBuilder(sdkConfiguration); + } + + /** + * Get all departments of a company + * + *

    Get all of the departments for a given company with the employees and contractors assigned to that + * department. + * + *

    scope: `departments:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param companyUuid The UUID of the company + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetCompaniesDepartmentsResponse getAll(String companyUuid) { + return getAll(Optional.empty(), companyUuid); + } + + /** + * Get all departments of a company + * + *

    Get all of the departments for a given company with the employees and contractors assigned to that + * department. + * + *

    scope: `departments:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetCompaniesDepartmentsResponse getAll(Optional xGustoAPIVersion, String companyUuid) { + GetCompaniesDepartmentsRequest request = + GetCompaniesDepartmentsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) + .build(); + RequestOperation operation + = new GetCompaniesDepartments.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + + /** + * Create a department + * + *

    Create a department + * + *

    scope: `departments:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public PostDepartmentsRequestBuilder create() { + return new PostDepartmentsRequestBuilder(sdkConfiguration); + } + + /** + * Create a department + * + *

    Create a department + * + *

    scope: `departments:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param companyUuid The UUID of the company + * @param departmentCreateRequestBody + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public PostDepartmentsResponse create(String companyUuid, DepartmentCreateRequestBody departmentCreateRequestBody) { + return create(Optional.empty(), companyUuid, departmentCreateRequestBody); + } + + /** + * Create a department + * + *

    Create a department + * + *

    scope: `departments:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company + * @param departmentCreateRequestBody + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public PostDepartmentsResponse create( + Optional xGustoAPIVersion, String companyUuid, + DepartmentCreateRequestBody departmentCreateRequestBody) { + PostDepartmentsRequest request = + PostDepartmentsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) + .departmentCreateRequestBody(departmentCreateRequestBody) + .build(); + RequestOperation operation + = new PostDepartments.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/EmployeeAddresses.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/EmployeeAddresses.java index 9bcaa7669..94aa99e35 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/EmployeeAddresses.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/EmployeeAddresses.java @@ -118,7 +118,7 @@ public GetV1EmployeesEmployeeIdHomeAddressesRequestBuilder get() { * @throws RuntimeException subclass if the API call fails */ public GetV1EmployeesEmployeeIdHomeAddressesResponse get(String employeeId) { - return get(employeeId, Optional.empty()); + return get(Optional.empty(), employeeId); } /** @@ -133,17 +133,17 @@ public GetV1EmployeesEmployeeIdHomeAddressesResponse get(String employeeId) { * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param employeeId The UUID of the employee * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param employeeId The UUID of the employee * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1EmployeesEmployeeIdHomeAddressesResponse get(String employeeId, Optional xGustoAPIVersion) { + public GetV1EmployeesEmployeeIdHomeAddressesResponse get(Optional xGustoAPIVersion, String employeeId) { GetV1EmployeesEmployeeIdHomeAddressesRequest request = GetV1EmployeesEmployeeIdHomeAddressesRequest .builder() - .employeeId(employeeId) .xGustoAPIVersion(xGustoAPIVersion) + .employeeId(employeeId) .build(); RequestOperation operation = new GetV1EmployeesEmployeeIdHomeAddresses.Sync(sdkConfiguration, _headers); @@ -186,7 +186,7 @@ public PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder create() { * @throws RuntimeException subclass if the API call fails */ public PostV1EmployeesEmployeeIdHomeAddressesResponse create(String employeeId, PostV1EmployeesEmployeeIdHomeAddressesRequestBody requestBody) { - return create(employeeId, Optional.empty(), requestBody); + return create(Optional.empty(), employeeId, requestBody); } /** @@ -201,20 +201,20 @@ public PostV1EmployeesEmployeeIdHomeAddressesResponse create(String employeeId, * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param employeeId The UUID of the employee * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param employeeId The UUID of the employee * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PostV1EmployeesEmployeeIdHomeAddressesResponse create( - String employeeId, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String employeeId, PostV1EmployeesEmployeeIdHomeAddressesRequestBody requestBody) { PostV1EmployeesEmployeeIdHomeAddressesRequest request = PostV1EmployeesEmployeeIdHomeAddressesRequest .builder() - .employeeId(employeeId) .xGustoAPIVersion(xGustoAPIVersion) + .employeeId(employeeId) .requestBody(requestBody) .build(); RequestOperation operation @@ -257,7 +257,7 @@ public GetV1HomeAddressesHomeAddressUuidRequestBuilder retrieveHomeAddress() { * @throws RuntimeException subclass if the API call fails */ public GetV1HomeAddressesHomeAddressUuidResponse retrieveHomeAddress(String homeAddressUuid) { - return retrieveHomeAddress(homeAddressUuid, Optional.empty()); + return retrieveHomeAddress(Optional.empty(), homeAddressUuid); } /** @@ -272,17 +272,17 @@ public GetV1HomeAddressesHomeAddressUuidResponse retrieveHomeAddress(String home * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param homeAddressUuid The UUID of the home address * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param homeAddressUuid The UUID of the home address * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1HomeAddressesHomeAddressUuidResponse retrieveHomeAddress(String homeAddressUuid, Optional xGustoAPIVersion) { + public GetV1HomeAddressesHomeAddressUuidResponse retrieveHomeAddress(Optional xGustoAPIVersion, String homeAddressUuid) { GetV1HomeAddressesHomeAddressUuidRequest request = GetV1HomeAddressesHomeAddressUuidRequest .builder() - .homeAddressUuid(homeAddressUuid) .xGustoAPIVersion(xGustoAPIVersion) + .homeAddressUuid(homeAddressUuid) .build(); RequestOperation operation = new GetV1HomeAddressesHomeAddressUuid.Sync(sdkConfiguration, _headers); @@ -450,7 +450,7 @@ public GetV1EmployeesEmployeeIdWorkAddressesRequestBuilder getWorkAddresses() { * @throws RuntimeException subclass if the API call fails */ public GetV1EmployeesEmployeeIdWorkAddressesResponse getWorkAddresses(String employeeId) { - return getWorkAddresses(employeeId, Optional.empty()); + return getWorkAddresses(Optional.empty(), employeeId); } /** @@ -463,17 +463,17 @@ public GetV1EmployeesEmployeeIdWorkAddressesResponse getWorkAddresses(String emp * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param employeeId The UUID of the employee * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param employeeId The UUID of the employee * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1EmployeesEmployeeIdWorkAddressesResponse getWorkAddresses(String employeeId, Optional xGustoAPIVersion) { + public GetV1EmployeesEmployeeIdWorkAddressesResponse getWorkAddresses(Optional xGustoAPIVersion, String employeeId) { GetV1EmployeesEmployeeIdWorkAddressesRequest request = GetV1EmployeesEmployeeIdWorkAddressesRequest .builder() - .employeeId(employeeId) .xGustoAPIVersion(xGustoAPIVersion) + .employeeId(employeeId) .build(); RequestOperation operation = new GetV1EmployeesEmployeeIdWorkAddresses.Sync(sdkConfiguration, _headers); @@ -512,7 +512,7 @@ public PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder createWorkAddress() * @throws RuntimeException subclass if the API call fails */ public PostV1EmployeesEmployeeIdWorkAddressesResponse createWorkAddress(String employeeId, PostV1EmployeesEmployeeIdWorkAddressesRequestBody requestBody) { - return createWorkAddress(employeeId, Optional.empty(), requestBody); + return createWorkAddress(Optional.empty(), employeeId, requestBody); } /** @@ -525,20 +525,20 @@ public PostV1EmployeesEmployeeIdWorkAddressesResponse createWorkAddress(String e * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param employeeId The UUID of the employee * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param employeeId The UUID of the employee * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PostV1EmployeesEmployeeIdWorkAddressesResponse createWorkAddress( - String employeeId, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String employeeId, PostV1EmployeesEmployeeIdWorkAddressesRequestBody requestBody) { PostV1EmployeesEmployeeIdWorkAddressesRequest request = PostV1EmployeesEmployeeIdWorkAddressesRequest .builder() - .employeeId(employeeId) .xGustoAPIVersion(xGustoAPIVersion) + .employeeId(employeeId) .requestBody(requestBody) .build(); RequestOperation operation @@ -575,7 +575,7 @@ public GetV1WorkAddressesWorkAddressUuidRequestBuilder retrieveWorkAddress() { * @throws RuntimeException subclass if the API call fails */ public GetV1WorkAddressesWorkAddressUuidResponse retrieveWorkAddress(String workAddressUuid) { - return retrieveWorkAddress(workAddressUuid, Optional.empty()); + return retrieveWorkAddress(Optional.empty(), workAddressUuid); } /** @@ -587,17 +587,17 @@ public GetV1WorkAddressesWorkAddressUuidResponse retrieveWorkAddress(String work * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param workAddressUuid The UUID of the work address * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param workAddressUuid The UUID of the work address * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1WorkAddressesWorkAddressUuidResponse retrieveWorkAddress(String workAddressUuid, Optional xGustoAPIVersion) { + public GetV1WorkAddressesWorkAddressUuidResponse retrieveWorkAddress(Optional xGustoAPIVersion, String workAddressUuid) { GetV1WorkAddressesWorkAddressUuidRequest request = GetV1WorkAddressesWorkAddressUuidRequest .builder() - .workAddressUuid(workAddressUuid) .xGustoAPIVersion(xGustoAPIVersion) + .workAddressUuid(workAddressUuid) .build(); RequestOperation operation = new GetV1WorkAddressesWorkAddressUuid.Sync(sdkConfiguration, _headers); @@ -634,7 +634,7 @@ public PutV1WorkAddressesWorkAddressUuidRequestBuilder updateWorkAddress() { * @throws RuntimeException subclass if the API call fails */ public PutV1WorkAddressesWorkAddressUuidResponse updateWorkAddress(String workAddressUuid, PutV1WorkAddressesWorkAddressUuidRequestBody requestBody) { - return updateWorkAddress(workAddressUuid, Optional.empty(), requestBody); + return updateWorkAddress(Optional.empty(), workAddressUuid, requestBody); } /** @@ -646,20 +646,20 @@ public PutV1WorkAddressesWorkAddressUuidResponse updateWorkAddress(String workAd * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param workAddressUuid The UUID of the work address * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param workAddressUuid The UUID of the work address * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PutV1WorkAddressesWorkAddressUuidResponse updateWorkAddress( - String workAddressUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String workAddressUuid, PutV1WorkAddressesWorkAddressUuidRequestBody requestBody) { PutV1WorkAddressesWorkAddressUuidRequest request = PutV1WorkAddressesWorkAddressUuidRequest .builder() - .workAddressUuid(workAddressUuid) .xGustoAPIVersion(xGustoAPIVersion) + .workAddressUuid(workAddressUuid) .requestBody(requestBody) .build(); RequestOperation operation @@ -696,7 +696,7 @@ public DeleteV1WorkAddressesWorkAddressUuidRequestBuilder deleteWorkAddress() { * @throws RuntimeException subclass if the API call fails */ public DeleteV1WorkAddressesWorkAddressUuidResponse deleteWorkAddress(String workAddressUuid) { - return deleteWorkAddress(workAddressUuid, Optional.empty()); + return deleteWorkAddress(Optional.empty(), workAddressUuid); } /** @@ -708,17 +708,17 @@ public DeleteV1WorkAddressesWorkAddressUuidResponse deleteWorkAddress(String wor * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param workAddressUuid The UUID of the work address * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param workAddressUuid The UUID of the work address * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public DeleteV1WorkAddressesWorkAddressUuidResponse deleteWorkAddress(String workAddressUuid, Optional xGustoAPIVersion) { + public DeleteV1WorkAddressesWorkAddressUuidResponse deleteWorkAddress(Optional xGustoAPIVersion, String workAddressUuid) { DeleteV1WorkAddressesWorkAddressUuidRequest request = DeleteV1WorkAddressesWorkAddressUuidRequest .builder() - .workAddressUuid(workAddressUuid) .xGustoAPIVersion(xGustoAPIVersion) + .workAddressUuid(workAddressUuid) .build(); RequestOperation operation = new DeleteV1WorkAddressesWorkAddressUuid.Sync(sdkConfiguration, _headers); diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/EmployeeBenefits.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/EmployeeBenefits.java index ca34ac910..bd70db2eb 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/EmployeeBenefits.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/EmployeeBenefits.java @@ -622,7 +622,7 @@ public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder getV * @throws RuntimeException subclass if the API call fails */ public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesResponse getV1EmployeesEmployeeUuidSection603HighEarnerStatuses(String employeeUuid) { - return getV1EmployeesEmployeeUuidSection603HighEarnerStatuses(employeeUuid, Optional.empty()); + return getV1EmployeesEmployeeUuidSection603HighEarnerStatuses(Optional.empty(), employeeUuid); } /** @@ -639,17 +639,17 @@ public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesResponse getV1Emplo * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param employeeUuid The UUID of the employee * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param employeeUuid The UUID of the employee * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesResponse getV1EmployeesEmployeeUuidSection603HighEarnerStatuses(String employeeUuid, Optional xGustoAPIVersion) { + public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesResponse getV1EmployeesEmployeeUuidSection603HighEarnerStatuses(Optional xGustoAPIVersion, String employeeUuid) { GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest request = GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest .builder() - .employeeUuid(employeeUuid) .xGustoAPIVersion(xGustoAPIVersion) + .employeeUuid(employeeUuid) .build(); RequestOperation operation = new GetV1EmployeesEmployeeUuidSection603HighEarnerStatuses.Sync(sdkConfiguration, _headers); @@ -696,7 +696,7 @@ public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder pos * @throws RuntimeException subclass if the API call fails */ public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesResponse postV1EmployeesEmployeeUuidSection603HighEarnerStatuses(String employeeUuid, EmployeeSection603HighEarnerStatusCreateRequest employeeSection603HighEarnerStatusCreateRequest) { - return postV1EmployeesEmployeeUuidSection603HighEarnerStatuses(employeeUuid, Optional.empty(), employeeSection603HighEarnerStatusCreateRequest); + return postV1EmployeesEmployeeUuidSection603HighEarnerStatuses(Optional.empty(), employeeUuid, employeeSection603HighEarnerStatusCreateRequest); } /** @@ -713,20 +713,20 @@ public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesResponse postV1Emp * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param employeeUuid The UUID of the employee * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param employeeUuid The UUID of the employee * @param employeeSection603HighEarnerStatusCreateRequest Request body for creating an employee's Section 603 high earner status * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesResponse postV1EmployeesEmployeeUuidSection603HighEarnerStatuses( - String employeeUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String employeeUuid, EmployeeSection603HighEarnerStatusCreateRequest employeeSection603HighEarnerStatusCreateRequest) { PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest request = PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest .builder() - .employeeUuid(employeeUuid) .xGustoAPIVersion(xGustoAPIVersion) + .employeeUuid(employeeUuid) .employeeSection603HighEarnerStatusCreateRequest(employeeSection603HighEarnerStatusCreateRequest) .build(); RequestOperation operation @@ -774,7 +774,7 @@ public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearReques * @throws RuntimeException subclass if the API call fails */ public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearResponse getV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYear(String employeeUuid, long effectiveYear) { - return getV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYear(employeeUuid, effectiveYear, Optional.empty()); + return getV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYear(Optional.empty(), employeeUuid, effectiveYear); } /** @@ -791,21 +791,21 @@ public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRespon * *

    If set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param employeeUuid The UUID of the employee * @param effectiveYear The effective year for the Section 603 status - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearResponse getV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYear( - String employeeUuid, long effectiveYear, - Optional xGustoAPIVersion) { + Optional xGustoAPIVersion, String employeeUuid, + long effectiveYear) { GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest request = GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest .builder() + .xGustoAPIVersion(xGustoAPIVersion) .employeeUuid(employeeUuid) .effectiveYear(effectiveYear) - .xGustoAPIVersion(xGustoAPIVersion) .build(); RequestOperation operation = new GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYear.Sync(sdkConfiguration, _headers); @@ -855,7 +855,7 @@ public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequ public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearResponse patchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYear( String employeeUuid, long effectiveYear, EmployeeSection603HighEarnerStatusUpdateRequest employeeSection603HighEarnerStatusUpdateRequest) { - return patchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYear(employeeUuid, effectiveYear, Optional.empty(), + return patchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYear(Optional.empty(), employeeUuid, effectiveYear, employeeSection603HighEarnerStatusUpdateRequest); } @@ -873,22 +873,22 @@ public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearResp * *

    If set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param employeeUuid The UUID of the employee * @param effectiveYear The effective year for the Section 603 status - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param employeeSection603HighEarnerStatusUpdateRequest Request body for updating an employee's Section 603 high earner status * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearResponse patchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYear( - String employeeUuid, long effectiveYear, - Optional xGustoAPIVersion, EmployeeSection603HighEarnerStatusUpdateRequest employeeSection603HighEarnerStatusUpdateRequest) { + Optional xGustoAPIVersion, String employeeUuid, + long effectiveYear, EmployeeSection603HighEarnerStatusUpdateRequest employeeSection603HighEarnerStatusUpdateRequest) { PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest request = PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest .builder() + .xGustoAPIVersion(xGustoAPIVersion) .employeeUuid(employeeUuid) .effectiveYear(effectiveYear) - .xGustoAPIVersion(xGustoAPIVersion) .employeeSection603HighEarnerStatusUpdateRequest(employeeSection603HighEarnerStatusUpdateRequest) .build(); RequestOperation operation diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/EmployeeEmployments.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/EmployeeEmployments.java index b452f2c97..95935f082 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/EmployeeEmployments.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/EmployeeEmployments.java @@ -84,14 +84,9 @@ public AsyncEmployeeEmployments async() { } /** - * Get terminations for an employee - * - *

    Terminations are created whenever an employee is scheduled to leave the company. The only things - * required are an effective date (their last day of work) and whether they should receive their wages - * in a one-off termination payroll or with the rest of the company. + * Get an employee rehire * - *

    Note that some states require employees to receive their final wages within 24 hours (unless they - * consent otherwise,) in which case running a one-off payroll may be the only option. + *

    Retrieve an employee's rehire, which contains information on when the employee returns to work. * *

    scope: `employments:read` * @@ -99,19 +94,14 @@ public AsyncEmployeeEmployments async() { * * @return The call builder */ - public GetV1EmployeesEmployeeIdTerminationsRequestBuilder getTerminations() { - return new GetV1EmployeesEmployeeIdTerminationsRequestBuilder(sdkConfiguration); + public GetV1EmployeesEmployeeIdRehireRequestBuilder getRehire() { + return new GetV1EmployeesEmployeeIdRehireRequestBuilder(sdkConfiguration); } /** - * Get terminations for an employee - * - *

    Terminations are created whenever an employee is scheduled to leave the company. The only things - * required are an effective date (their last day of work) and whether they should receive their wages - * in a one-off termination payroll or with the rest of the company. + * Get an employee rehire * - *

    Note that some states require employees to receive their final wages within 24 hours (unless they - * consent otherwise,) in which case running a one-off payroll may be the only option. + *

    Retrieve an employee's rehire, which contains information on when the employee returns to work. * *

    scope: `employments:read` * @@ -121,19 +111,14 @@ public GetV1EmployeesEmployeeIdTerminationsRequestBuilder getTerminations() { * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1EmployeesEmployeeIdTerminationsResponse getTerminations(String employeeId) { - return getTerminations(Optional.empty(), employeeId); + public GetV1EmployeesEmployeeIdRehireResponse getRehire(String employeeId) { + return getRehire(Optional.empty(), employeeId); } /** - * Get terminations for an employee - * - *

    Terminations are created whenever an employee is scheduled to leave the company. The only things - * required are an effective date (their last day of work) and whether they should receive their wages - * in a one-off termination payroll or with the rest of the company. + * Get an employee rehire * - *

    Note that some states require employees to receive their final wages within 24 hours (unless they - * consent otherwise,) in which case running a one-off payroll may be the only option. + *

    Retrieve an employee's rehire, which contains information on when the employee returns to work. * *

    scope: `employments:read` * @@ -144,27 +129,22 @@ public GetV1EmployeesEmployeeIdTerminationsResponse getTerminations(String emplo * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1EmployeesEmployeeIdTerminationsResponse getTerminations(Optional xGustoAPIVersion, String employeeId) { - GetV1EmployeesEmployeeIdTerminationsRequest request = - GetV1EmployeesEmployeeIdTerminationsRequest + public GetV1EmployeesEmployeeIdRehireResponse getRehire(Optional xGustoAPIVersion, String employeeId) { + GetV1EmployeesEmployeeIdRehireRequest request = + GetV1EmployeesEmployeeIdRehireRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .employeeId(employeeId) .build(); - RequestOperation operation - = new GetV1EmployeesEmployeeIdTerminations.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new GetV1EmployeesEmployeeIdRehire.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Create an employee termination - * - *

    Create a termination for an employee. The only things required are an effective date (their last day - * of work) and whether they should receive their wages in a one-off termination payroll or with the - * rest of the company. + * Create an employee rehire * - *

    Note that some states require employees to receive their final wages within 24 hours (unless they - * consent otherwise,) in which case running a one-off payroll may be the only option. + *

    Rehire is created whenever an employee is scheduled to return to the company. * *

    scope: `employments:write` * @@ -172,42 +152,32 @@ public GetV1EmployeesEmployeeIdTerminationsResponse getTerminations(OptionalCreate a termination for an employee. The only things required are an effective date (their last day - * of work) and whether they should receive their wages in a one-off termination payroll or with the - * rest of the company. + * Create an employee rehire * - *

    Note that some states require employees to receive their final wages within 24 hours (unless they - * consent otherwise,) in which case running a one-off payroll may be the only option. + *

    Rehire is created whenever an employee is scheduled to return to the company. * *

    scope: `employments:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param employeeId The UUID of the employee - * @param requestBody + * @param rehireBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostV1EmployeesEmployeeIdTerminationsResponse createTermination(String employeeId, PostV1EmployeesEmployeeIdTerminationsRequestBody requestBody) { - return createTermination(Optional.empty(), employeeId, requestBody); + public PostV1EmployeesEmployeeIdRehireResponse createRehire(String employeeId, RehireBody rehireBody) { + return createRehire(Optional.empty(), employeeId, rehireBody); } /** - * Create an employee termination - * - *

    Create a termination for an employee. The only things required are an effective date (their last day - * of work) and whether they should receive their wages in a one-off termination payroll or with the - * rest of the company. + * Create an employee rehire * - *

    Note that some states require employees to receive their final wages within 24 hours (unless they - * consent otherwise,) in which case running a one-off payroll may be the only option. + *

    Rehire is created whenever an employee is scheduled to return to the company. * *

    scope: `employments:write` * @@ -215,29 +185,29 @@ public PostV1EmployeesEmployeeIdTerminationsResponse createTermination(String em * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param employeeId The UUID of the employee - * @param requestBody + * @param rehireBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostV1EmployeesEmployeeIdTerminationsResponse createTermination( - Optional xGustoAPIVersion, String employeeId, - PostV1EmployeesEmployeeIdTerminationsRequestBody requestBody) { - PostV1EmployeesEmployeeIdTerminationsRequest request = - PostV1EmployeesEmployeeIdTerminationsRequest + public PostV1EmployeesEmployeeIdRehireResponse createRehire( + Optional xGustoAPIVersion, String employeeId, + RehireBody rehireBody) { + PostV1EmployeesEmployeeIdRehireRequest request = + PostV1EmployeesEmployeeIdRehireRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .employeeId(employeeId) - .requestBody(requestBody) + .rehireBody(rehireBody) .build(); - RequestOperation operation - = new PostV1EmployeesEmployeeIdTerminations.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PostV1EmployeesEmployeeIdRehire.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Delete an employee termination + * Update an employee rehire * - *

    Delete an employee termination. + *

    Update an employee's rehire. * *

    scope: `employments:write` * @@ -245,31 +215,32 @@ public PostV1EmployeesEmployeeIdTerminationsResponse createTermination( * * @return The call builder */ - public DeleteV1EmployeesEmployeeIdTerminationsRequestBuilder deleteTermination() { - return new DeleteV1EmployeesEmployeeIdTerminationsRequestBuilder(sdkConfiguration); + public PutV1EmployeesEmployeeIdRehireRequestBuilder rehire() { + return new PutV1EmployeesEmployeeIdRehireRequestBuilder(sdkConfiguration); } /** - * Delete an employee termination + * Update an employee rehire * - *

    Delete an employee termination. + *

    Update an employee's rehire. * *

    scope: `employments:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param employeeId The UUID of the employee + * @param rehireUpdateRequestBody Request body for updating an employee rehire. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public DeleteV1EmployeesEmployeeIdTerminationsResponse deleteTermination(String employeeId) { - return deleteTermination(Optional.empty(), employeeId); + public PutV1EmployeesEmployeeIdRehireResponse rehire(String employeeId, RehireUpdateRequestBody rehireUpdateRequestBody) { + return rehire(Optional.empty(), employeeId, rehireUpdateRequestBody); } /** - * Delete an employee termination + * Update an employee rehire * - *

    Delete an employee termination. + *

    Update an employee's rehire. * *

    scope: `employments:write` * @@ -277,30 +248,30 @@ public DeleteV1EmployeesEmployeeIdTerminationsResponse deleteTermination(String * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param employeeId The UUID of the employee + * @param rehireUpdateRequestBody Request body for updating an employee rehire. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public DeleteV1EmployeesEmployeeIdTerminationsResponse deleteTermination(Optional xGustoAPIVersion, String employeeId) { - DeleteV1EmployeesEmployeeIdTerminationsRequest request = - DeleteV1EmployeesEmployeeIdTerminationsRequest + public PutV1EmployeesEmployeeIdRehireResponse rehire( + Optional xGustoAPIVersion, String employeeId, + RehireUpdateRequestBody rehireUpdateRequestBody) { + PutV1EmployeesEmployeeIdRehireRequest request = + PutV1EmployeesEmployeeIdRehireRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .employeeId(employeeId) + .rehireUpdateRequestBody(rehireUpdateRequestBody) .build(); - RequestOperation operation - = new DeleteV1EmployeesEmployeeIdTerminations.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PutV1EmployeesEmployeeIdRehire.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Update an employee termination - * - *

    Terminations are created whenever an employee is scheduled to leave the company. The only things - * required are an effective date (their last day of work) and whether they should receive their wages - * in a one-off termination payroll or with the rest of the company. + * Delete an employee rehire * - *

    Note that some states require employees to receive their final wages within 24 hours (unless they - * consent otherwise,) in which case running a one-off payroll may be the only option. + *

    Delete an employee rehire. An employee rehire cannot be deleted if it's active (past effective + * date). * *

    scope: `employments:write` * @@ -308,42 +279,33 @@ public DeleteV1EmployeesEmployeeIdTerminationsResponse deleteTermination(Optiona * * @return The call builder */ - public PutV1TerminationsEmployeeIdRequestBuilder updateTermination() { - return new PutV1TerminationsEmployeeIdRequestBuilder(sdkConfiguration); + public DeleteV1EmployeesEmployeeIdRehireRequestBuilder deleteRehire() { + return new DeleteV1EmployeesEmployeeIdRehireRequestBuilder(sdkConfiguration); } /** - * Update an employee termination - * - *

    Terminations are created whenever an employee is scheduled to leave the company. The only things - * required are an effective date (their last day of work) and whether they should receive their wages - * in a one-off termination payroll or with the rest of the company. + * Delete an employee rehire * - *

    Note that some states require employees to receive their final wages within 24 hours (unless they - * consent otherwise,) in which case running a one-off payroll may be the only option. + *

    Delete an employee rehire. An employee rehire cannot be deleted if it's active (past effective + * date). * *

    scope: `employments:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param employeeId The UUID of the employee - * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1TerminationsEmployeeIdResponse updateTermination(String employeeId, PutV1TerminationsEmployeeIdRequestBody requestBody) { - return updateTermination(Optional.empty(), employeeId, requestBody); + public DeleteV1EmployeesEmployeeIdRehireResponse deleteRehire(String employeeId) { + return deleteRehire(Optional.empty(), employeeId); } /** - * Update an employee termination - * - *

    Terminations are created whenever an employee is scheduled to leave the company. The only things - * required are an effective date (their last day of work) and whether they should receive their wages - * in a one-off termination payroll or with the rest of the company. + * Delete an employee rehire * - *

    Note that some states require employees to receive their final wages within 24 hours (unless they - * consent otherwise,) in which case running a one-off payroll may be the only option. + *

    Delete an employee rehire. An employee rehire cannot be deleted if it's active (past effective + * date). * *

    scope: `employments:write` * @@ -351,29 +313,25 @@ public PutV1TerminationsEmployeeIdResponse updateTermination(String employeeId, * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param employeeId The UUID of the employee - * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1TerminationsEmployeeIdResponse updateTermination( - Optional xGustoAPIVersion, String employeeId, - PutV1TerminationsEmployeeIdRequestBody requestBody) { - PutV1TerminationsEmployeeIdRequest request = - PutV1TerminationsEmployeeIdRequest + public DeleteV1EmployeesEmployeeIdRehireResponse deleteRehire(Optional xGustoAPIVersion, String employeeId) { + DeleteV1EmployeesEmployeeIdRehireRequest request = + DeleteV1EmployeesEmployeeIdRehireRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .employeeId(employeeId) - .requestBody(requestBody) .build(); - RequestOperation operation - = new PutV1TerminationsEmployeeId.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new DeleteV1EmployeesEmployeeIdRehire.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Get an employee rehire + * Get employment history for an employee * - *

    Retrieve an employee's rehire, which contains information on when the employee returns to work. + *

    Retrieve the employment history for a given employee, which includes termination and rehire. * *

    scope: `employments:read` * @@ -381,14 +339,14 @@ public PutV1TerminationsEmployeeIdResponse updateTermination( * * @return The call builder */ - public GetV1EmployeesEmployeeIdRehireRequestBuilder getRehire() { - return new GetV1EmployeesEmployeeIdRehireRequestBuilder(sdkConfiguration); + public GetV1EmployeesEmployeeIdEmploymentHistoryRequestBuilder getHistory() { + return new GetV1EmployeesEmployeeIdEmploymentHistoryRequestBuilder(sdkConfiguration); } /** - * Get an employee rehire + * Get employment history for an employee * - *

    Retrieve an employee's rehire, which contains information on when the employee returns to work. + *

    Retrieve the employment history for a given employee, which includes termination and rehire. * *

    scope: `employments:read` * @@ -398,14 +356,14 @@ public GetV1EmployeesEmployeeIdRehireRequestBuilder getRehire() { * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1EmployeesEmployeeIdRehireResponse getRehire(String employeeId) { - return getRehire(Optional.empty(), employeeId); + public GetV1EmployeesEmployeeIdEmploymentHistoryResponse getHistory(String employeeId) { + return getHistory(Optional.empty(), employeeId); } /** - * Get an employee rehire + * Get employment history for an employee * - *

    Retrieve an employee's rehire, which contains information on when the employee returns to work. + *

    Retrieve the employment history for a given employee, which includes termination and rehire. * *

    scope: `employments:read` * @@ -416,85 +374,100 @@ public GetV1EmployeesEmployeeIdRehireResponse getRehire(String employeeId) { * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1EmployeesEmployeeIdRehireResponse getRehire(Optional xGustoAPIVersion, String employeeId) { - GetV1EmployeesEmployeeIdRehireRequest request = - GetV1EmployeesEmployeeIdRehireRequest + public GetV1EmployeesEmployeeIdEmploymentHistoryResponse getHistory(Optional xGustoAPIVersion, String employeeId) { + GetV1EmployeesEmployeeIdEmploymentHistoryRequest request = + GetV1EmployeesEmployeeIdEmploymentHistoryRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .employeeId(employeeId) .build(); - RequestOperation operation - = new GetV1EmployeesEmployeeIdRehire.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new GetV1EmployeesEmployeeIdEmploymentHistory.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Create an employee rehire + * Get terminations for an employee * - *

    Rehire is created whenever an employee is scheduled to return to the company. + *

    Terminations are created whenever an employee is scheduled to leave the company. The only things + * required are an effective date (their last day of work) and whether they should receive their wages + * in a one-off termination payroll or with the rest of the company. * - *

    scope: `employments:write` + *

    Note that some states require employees to receive their final wages within 24 hours (unless they + * consent otherwise,) in which case running a one-off payroll may be the only option. + * + *

    scope: `employments:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public PostV1EmployeesEmployeeIdRehireRequestBuilder createRehire() { - return new PostV1EmployeesEmployeeIdRehireRequestBuilder(sdkConfiguration); + public GetV1EmployeesEmployeeIdTerminationsRequestBuilder getTerminations() { + return new GetV1EmployeesEmployeeIdTerminationsRequestBuilder(sdkConfiguration); } /** - * Create an employee rehire + * Get terminations for an employee * - *

    Rehire is created whenever an employee is scheduled to return to the company. + *

    Terminations are created whenever an employee is scheduled to leave the company. The only things + * required are an effective date (their last day of work) and whether they should receive their wages + * in a one-off termination payroll or with the rest of the company. * - *

    scope: `employments:write` + *

    Note that some states require employees to receive their final wages within 24 hours (unless they + * consent otherwise,) in which case running a one-off payroll may be the only option. + * + *

    scope: `employments:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param employeeId The UUID of the employee - * @param rehireBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostV1EmployeesEmployeeIdRehireResponse createRehire(String employeeId, RehireBody rehireBody) { - return createRehire(Optional.empty(), employeeId, rehireBody); + public GetV1EmployeesEmployeeIdTerminationsResponse getTerminations(String employeeId) { + return getTerminations(Optional.empty(), employeeId); } /** - * Create an employee rehire + * Get terminations for an employee * - *

    Rehire is created whenever an employee is scheduled to return to the company. + *

    Terminations are created whenever an employee is scheduled to leave the company. The only things + * required are an effective date (their last day of work) and whether they should receive their wages + * in a one-off termination payroll or with the rest of the company. * - *

    scope: `employments:write` + *

    Note that some states require employees to receive their final wages within 24 hours (unless they + * consent otherwise,) in which case running a one-off payroll may be the only option. + * + *

    scope: `employments:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param employeeId The UUID of the employee - * @param rehireBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostV1EmployeesEmployeeIdRehireResponse createRehire( - Optional xGustoAPIVersion, String employeeId, - RehireBody rehireBody) { - PostV1EmployeesEmployeeIdRehireRequest request = - PostV1EmployeesEmployeeIdRehireRequest + public GetV1EmployeesEmployeeIdTerminationsResponse getTerminations(Optional xGustoAPIVersion, String employeeId) { + GetV1EmployeesEmployeeIdTerminationsRequest request = + GetV1EmployeesEmployeeIdTerminationsRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .employeeId(employeeId) - .rehireBody(rehireBody) .build(); - RequestOperation operation - = new PostV1EmployeesEmployeeIdRehire.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new GetV1EmployeesEmployeeIdTerminations.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Update an employee rehire + * Create an employee termination * - *

    Update an employee's rehire. + *

    Create a termination for an employee. The only things required are an effective date (their last day + * of work) and whether they should receive their wages in a one-off termination payroll or with the + * rest of the company. + * + *

    Note that some states require employees to receive their final wages within 24 hours (unless they + * consent otherwise,) in which case running a one-off payroll may be the only option. * *

    scope: `employments:write` * @@ -502,32 +475,42 @@ public PostV1EmployeesEmployeeIdRehireResponse createRehire( * * @return The call builder */ - public PutV1EmployeesEmployeeIdRehireRequestBuilder rehire() { - return new PutV1EmployeesEmployeeIdRehireRequestBuilder(sdkConfiguration); + public PostV1EmployeesEmployeeIdTerminationsRequestBuilder createTermination() { + return new PostV1EmployeesEmployeeIdTerminationsRequestBuilder(sdkConfiguration); } /** - * Update an employee rehire + * Create an employee termination * - *

    Update an employee's rehire. + *

    Create a termination for an employee. The only things required are an effective date (their last day + * of work) and whether they should receive their wages in a one-off termination payroll or with the + * rest of the company. + * + *

    Note that some states require employees to receive their final wages within 24 hours (unless they + * consent otherwise,) in which case running a one-off payroll may be the only option. * *

    scope: `employments:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param employeeId The UUID of the employee - * @param rehireUpdateRequestBody Request body for updating an employee rehire. + * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1EmployeesEmployeeIdRehireResponse rehire(String employeeId, RehireUpdateRequestBody rehireUpdateRequestBody) { - return rehire(Optional.empty(), employeeId, rehireUpdateRequestBody); + public PostV1EmployeesEmployeeIdTerminationsResponse createTermination(String employeeId, PostV1EmployeesEmployeeIdTerminationsRequestBody requestBody) { + return createTermination(Optional.empty(), employeeId, requestBody); } /** - * Update an employee rehire + * Create an employee termination * - *

    Update an employee's rehire. + *

    Create a termination for an employee. The only things required are an effective date (their last day + * of work) and whether they should receive their wages in a one-off termination payroll or with the + * rest of the company. + * + *

    Note that some states require employees to receive their final wages within 24 hours (unless they + * consent otherwise,) in which case running a one-off payroll may be the only option. * *

    scope: `employments:write` * @@ -535,30 +518,29 @@ public PutV1EmployeesEmployeeIdRehireResponse rehire(String employeeId, RehireUp * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param employeeId The UUID of the employee - * @param rehireUpdateRequestBody Request body for updating an employee rehire. + * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1EmployeesEmployeeIdRehireResponse rehire( - Optional xGustoAPIVersion, String employeeId, - RehireUpdateRequestBody rehireUpdateRequestBody) { - PutV1EmployeesEmployeeIdRehireRequest request = - PutV1EmployeesEmployeeIdRehireRequest + public PostV1EmployeesEmployeeIdTerminationsResponse createTermination( + Optional xGustoAPIVersion, String employeeId, + PostV1EmployeesEmployeeIdTerminationsRequestBody requestBody) { + PostV1EmployeesEmployeeIdTerminationsRequest request = + PostV1EmployeesEmployeeIdTerminationsRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .employeeId(employeeId) - .rehireUpdateRequestBody(rehireUpdateRequestBody) + .requestBody(requestBody) .build(); - RequestOperation operation - = new PutV1EmployeesEmployeeIdRehire.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PostV1EmployeesEmployeeIdTerminations.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Delete an employee rehire + * Delete an employee termination * - *

    Delete an employee rehire. An employee rehire cannot be deleted if it's active (past effective - * date). + *

    Delete an employee termination. * *

    scope: `employments:write` * @@ -566,15 +548,14 @@ public PutV1EmployeesEmployeeIdRehireResponse rehire( * * @return The call builder */ - public DeleteV1EmployeesEmployeeIdRehireRequestBuilder deleteRehire() { - return new DeleteV1EmployeesEmployeeIdRehireRequestBuilder(sdkConfiguration); + public DeleteV1EmployeesEmployeeIdTerminationsRequestBuilder deleteTermination() { + return new DeleteV1EmployeesEmployeeIdTerminationsRequestBuilder(sdkConfiguration); } /** - * Delete an employee rehire + * Delete an employee termination * - *

    Delete an employee rehire. An employee rehire cannot be deleted if it's active (past effective - * date). + *

    Delete an employee termination. * *

    scope: `employments:write` * @@ -584,15 +565,14 @@ public DeleteV1EmployeesEmployeeIdRehireRequestBuilder deleteRehire() { * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public DeleteV1EmployeesEmployeeIdRehireResponse deleteRehire(String employeeId) { - return deleteRehire(Optional.empty(), employeeId); + public DeleteV1EmployeesEmployeeIdTerminationsResponse deleteTermination(String employeeId) { + return deleteTermination(Optional.empty(), employeeId); } /** - * Delete an employee rehire + * Delete an employee termination * - *

    Delete an employee rehire. An employee rehire cannot be deleted if it's active (past effective - * date). + *

    Delete an employee termination. * *

    scope: `employments:write` * @@ -603,73 +583,93 @@ public DeleteV1EmployeesEmployeeIdRehireResponse deleteRehire(String employeeId) * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public DeleteV1EmployeesEmployeeIdRehireResponse deleteRehire(Optional xGustoAPIVersion, String employeeId) { - DeleteV1EmployeesEmployeeIdRehireRequest request = - DeleteV1EmployeesEmployeeIdRehireRequest + public DeleteV1EmployeesEmployeeIdTerminationsResponse deleteTermination(Optional xGustoAPIVersion, String employeeId) { + DeleteV1EmployeesEmployeeIdTerminationsRequest request = + DeleteV1EmployeesEmployeeIdTerminationsRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .employeeId(employeeId) .build(); - RequestOperation operation - = new DeleteV1EmployeesEmployeeIdRehire.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new DeleteV1EmployeesEmployeeIdTerminations.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Get employment history for an employee + * Update an employee termination * - *

    Retrieve the employment history for a given employee, which includes termination and rehire. + *

    Terminations are created whenever an employee is scheduled to leave the company. The only things + * required are an effective date (their last day of work) and whether they should receive their wages + * in a one-off termination payroll or with the rest of the company. * - *

    scope: `employments:read` + *

    Note that some states require employees to receive their final wages within 24 hours (unless they + * consent otherwise,) in which case running a one-off payroll may be the only option. + * + *

    scope: `employments:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public GetV1EmployeesEmployeeIdEmploymentHistoryRequestBuilder getHistory() { - return new GetV1EmployeesEmployeeIdEmploymentHistoryRequestBuilder(sdkConfiguration); + public PutV1TerminationsEmployeeIdRequestBuilder updateTermination() { + return new PutV1TerminationsEmployeeIdRequestBuilder(sdkConfiguration); } /** - * Get employment history for an employee + * Update an employee termination * - *

    Retrieve the employment history for a given employee, which includes termination and rehire. + *

    Terminations are created whenever an employee is scheduled to leave the company. The only things + * required are an effective date (their last day of work) and whether they should receive their wages + * in a one-off termination payroll or with the rest of the company. * - *

    scope: `employments:read` + *

    Note that some states require employees to receive their final wages within 24 hours (unless they + * consent otherwise,) in which case running a one-off payroll may be the only option. + * + *

    scope: `employments:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param employeeId The UUID of the employee + * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1EmployeesEmployeeIdEmploymentHistoryResponse getHistory(String employeeId) { - return getHistory(Optional.empty(), employeeId); + public PutV1TerminationsEmployeeIdResponse updateTermination(String employeeId, PutV1TerminationsEmployeeIdRequestBody requestBody) { + return updateTermination(Optional.empty(), employeeId, requestBody); } /** - * Get employment history for an employee + * Update an employee termination * - *

    Retrieve the employment history for a given employee, which includes termination and rehire. + *

    Terminations are created whenever an employee is scheduled to leave the company. The only things + * required are an effective date (their last day of work) and whether they should receive their wages + * in a one-off termination payroll or with the rest of the company. * - *

    scope: `employments:read` + *

    Note that some states require employees to receive their final wages within 24 hours (unless they + * consent otherwise,) in which case running a one-off payroll may be the only option. + * + *

    scope: `employments:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param employeeId The UUID of the employee + * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1EmployeesEmployeeIdEmploymentHistoryResponse getHistory(Optional xGustoAPIVersion, String employeeId) { - GetV1EmployeesEmployeeIdEmploymentHistoryRequest request = - GetV1EmployeesEmployeeIdEmploymentHistoryRequest + public PutV1TerminationsEmployeeIdResponse updateTermination( + Optional xGustoAPIVersion, String employeeId, + PutV1TerminationsEmployeeIdRequestBody requestBody) { + PutV1TerminationsEmployeeIdRequest request = + PutV1TerminationsEmployeeIdRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .employeeId(employeeId) + .requestBody(requestBody) .build(); - RequestOperation operation - = new GetV1EmployeesEmployeeIdEmploymentHistory.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PutV1TerminationsEmployeeId.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/EmployeeForms.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/EmployeeForms.java index f117f0468..3c0421a7c 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/EmployeeForms.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/EmployeeForms.java @@ -54,76 +54,6 @@ public AsyncEmployeeForms async() { return asyncSDK; } - /** - * Generate a W2 form [DEMO] - * - *

    > 🚧 Demo action - * > - * > This action is only available in the Demo environment - * - *

    Generates a W2 document for testing purposes. - * - *

    scope: `employees:write` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The call builder - */ - public PostV1SandboxGenerateW2RequestBuilder generateW2() { - return new PostV1SandboxGenerateW2RequestBuilder(sdkConfiguration); - } - - /** - * Generate a W2 form [DEMO] - * - *

    > 🚧 Demo action - * > - * > This action is only available in the Demo environment - * - *

    Generates a W2 document for testing purposes. - * - *

    scope: `employees:write` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param requestBody - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public PostV1SandboxGenerateW2Response generateW2(PostV1SandboxGenerateW2RequestBody requestBody) { - return generateW2(Optional.empty(), requestBody); - } - - /** - * Generate a W2 form [DEMO] - * - *

    > 🚧 Demo action - * > - * > This action is only available in the Demo environment - * - *

    Generates a W2 document for testing purposes. - * - *

    scope: `employees:write` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param requestBody - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public PostV1SandboxGenerateW2Response generateW2(Optional xGustoAPIVersion, PostV1SandboxGenerateW2RequestBody requestBody) { - PostV1SandboxGenerateW2Request request = - PostV1SandboxGenerateW2Request - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .requestBody(requestBody) - .build(); - RequestOperation operation - = new PostV1SandboxGenerateW2.Sync(sdkConfiguration, _headers); - return operation.handleResponse(operation.doRequest(request)); - } - /** * Get all employee forms * @@ -348,4 +278,74 @@ public PutV1EmployeeFormSignResponse sign(PutV1EmployeeFormSignRequest request) return operation.handleResponse(operation.doRequest(request)); } + /** + * Generate a W2 form [DEMO] + * + *

    > 🚧 Demo action + * > + * > This action is only available in the Demo environment + * + *

    Generates a W2 document for testing purposes. + * + *

    scope: `employees:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public PostV1SandboxGenerateW2RequestBuilder generateW2() { + return new PostV1SandboxGenerateW2RequestBuilder(sdkConfiguration); + } + + /** + * Generate a W2 form [DEMO] + * + *

    > 🚧 Demo action + * > + * > This action is only available in the Demo environment + * + *

    Generates a W2 document for testing purposes. + * + *

    scope: `employees:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param requestBody + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public PostV1SandboxGenerateW2Response generateW2(PostV1SandboxGenerateW2RequestBody requestBody) { + return generateW2(Optional.empty(), requestBody); + } + + /** + * Generate a W2 form [DEMO] + * + *

    > 🚧 Demo action + * > + * > This action is only available in the Demo environment + * + *

    Generates a W2 document for testing purposes. + * + *

    scope: `employees:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param requestBody + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public PostV1SandboxGenerateW2Response generateW2(Optional xGustoAPIVersion, PostV1SandboxGenerateW2RequestBody requestBody) { + PostV1SandboxGenerateW2Request request = + PostV1SandboxGenerateW2Request + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .requestBody(requestBody) + .build(); + RequestOperation operation + = new PostV1SandboxGenerateW2.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/Employees.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/Employees.java index eb519c87c..498e2a417 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/Employees.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/Employees.java @@ -26,6 +26,7 @@ import com.gusto.embedded_api.models.operations.GetV1EmployeesEmployeeIdOnboardingStatusRequestBuilder; import com.gusto.embedded_api.models.operations.GetV1EmployeesEmployeeIdOnboardingStatusResponse; import com.gusto.embedded_api.models.operations.GetV1EmployeesHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetV1EmployeesQueryParamInclude; import com.gusto.embedded_api.models.operations.GetV1EmployeesRequest; import com.gusto.embedded_api.models.operations.GetV1EmployeesRequestBuilder; import com.gusto.embedded_api.models.operations.GetV1EmployeesResponse; @@ -56,7 +57,6 @@ import com.gusto.embedded_api.models.operations.PutV1EmployeesRequestBody; import com.gusto.embedded_api.models.operations.PutV1EmployeesRequestBuilder; import com.gusto.embedded_api.models.operations.PutV1EmployeesResponse; -import com.gusto.embedded_api.models.operations.QueryParamInclude; import com.gusto.embedded_api.operations.DeleteV1Employee; import com.gusto.embedded_api.operations.GetV1CompaniesCompanyIdEmployees; import com.gusto.embedded_api.operations.GetV1CompaniesCompanyIdEmployeesPaymentDetails; @@ -96,14 +96,9 @@ public AsyncEmployees async() { } /** - * Get employees of a company - * - *

    Get all of the employees, onboarding, active and terminated, for a given company. + * Get an employee's custom fields * - *

    Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee - * pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, - * `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope - * is included. This allows you to access employee and job metadata without exposing pay rates. + *

    Returns a list of the employee's custom fields. * *

    scope: `employees:read` * @@ -111,93 +106,57 @@ public AsyncEmployees async() { * * @return The call builder */ - public GetV1CompaniesCompanyIdEmployeesRequestBuilder list() { - return new GetV1CompaniesCompanyIdEmployeesRequestBuilder(sdkConfiguration); + public GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder getCustomFields() { + return new GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder(sdkConfiguration); } /** - * Get employees of a company - * - *

    Get all of the employees, onboarding, active and terminated, for a given company. + * Get an employee's custom fields * - *

    Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee - * pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, - * `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope - * is included. This allows you to access employee and job metadata without exposing pay rates. + *

    Returns a list of the employee's custom fields. * *

    scope: `employees:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param request The request object containing all the parameters for the API call. - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public GetV1CompaniesCompanyIdEmployeesResponse list(GetV1CompaniesCompanyIdEmployeesRequest request) { - RequestOperation operation - = new GetV1CompaniesCompanyIdEmployees.Sync(sdkConfiguration, _headers); - return operation.handleResponse(operation.doRequest(request)); - } - - /** - * Create an employee - * - *

    Create an employee. - * - *

    scope: `employees:manage` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The call builder - */ - public PostV1EmployeesRequestBuilder create() { - return new PostV1EmployeesRequestBuilder(sdkConfiguration); - } - - /** - * Create an employee - * - *

    Create an employee. - * - *

    scope: `employees:manage` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param companyId Company ID + * @param employeeId The UUID of the employee * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostV1EmployeesResponse create(String companyId) { - return create(Optional.empty(), companyId, Optional.empty()); + public GetV1EmployeesEmployeeIdCustomFieldsResponse getCustomFields(String employeeId) { + return getCustomFields(Optional.empty(), employeeId, Optional.empty(), + Optional.empty()); } /** - * Create an employee + * Get an employee's custom fields * - *

    Create an employee. + *

    Returns a list of the employee's custom fields. * - *

    scope: `employees:manage` + *

    scope: `employees:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyId Company ID - * @param requestBody + * @param employeeId The UUID of the employee + * @param page The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + * @param per Number of objects per page. For majority of endpoints will default to 25 * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostV1EmployeesResponse create( - Optional xGustoAPIVersion, String companyId, - Optional requestBody) { - PostV1EmployeesRequest request = - PostV1EmployeesRequest + public GetV1EmployeesEmployeeIdCustomFieldsResponse getCustomFields( + Optional xGustoAPIVersion, String employeeId, + Optional page, Optional per) { + GetV1EmployeesEmployeeIdCustomFieldsRequest request = + GetV1EmployeesEmployeeIdCustomFieldsRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .companyId(companyId) - .requestBody(requestBody) + .employeeId(employeeId) + .page(page) + .per(per) .build(); - RequestOperation operation - = new PostV1Employees.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new GetV1EmployeesEmployeeIdCustomFields.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } @@ -254,74 +213,65 @@ public GetV1CompaniesCompanyIdEmployeesPaymentDetailsResponse getV1CompaniesComp } /** - * Create a historical employee + * Get employee time off activities * - *

    Create a historical employee, an employee that was previously dismissed from the company in the - * current year. + *

    Get employee time off activities. * - *

    scope: `employees:manage` + *

    scope: `employee_time_off_activities:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public PostV1HistoricalEmployeesRequestBuilder createHistorical() { - return new PostV1HistoricalEmployeesRequestBuilder(sdkConfiguration); + public GetVersionEmployeesTimeOffActivitiesRequestBuilder getTimeOffActivities() { + return new GetVersionEmployeesTimeOffActivitiesRequestBuilder(sdkConfiguration); } /** - * Create a historical employee + * Get employee time off activities * - *

    Create a historical employee, an employee that was previously dismissed from the company in the - * current year. + *

    Get employee time off activities. * - *

    scope: `employees:manage` + *

    scope: `employee_time_off_activities:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company that will employ this historical record. - * @param historicalEmployeeBody Request body for creating or updating a **historical employee**—someone who already separated from the company and must appear on year-to-date or tax filings without receiving ongoing payroll. - * - * Send this object under the JSON root key `employee`. All dates are ISO 8601 (`YYYY-MM-DD`). Use a `work_address.location_uuid` returned from your company locations API for an active work site. - * + * @param employeeUuid The UUID of the employee + * @param timeOffType The time off type name you want to query data for. ex: 'sick' or 'vacation' * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostV1HistoricalEmployeesResponse createHistorical(String companyUuid, HistoricalEmployeeBody historicalEmployeeBody) { - return createHistorical(Optional.empty(), companyUuid, historicalEmployeeBody); + public GetVersionEmployeesTimeOffActivitiesResponse getTimeOffActivities(String employeeUuid, String timeOffType) { + return getTimeOffActivities(Optional.empty(), employeeUuid, timeOffType); } /** - * Create a historical employee + * Get employee time off activities * - *

    Create a historical employee, an employee that was previously dismissed from the company in the - * current year. + *

    Get employee time off activities. * - *

    scope: `employees:manage` + *

    scope: `employee_time_off_activities:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyUuid The UUID of the company that will employ this historical record. - * @param historicalEmployeeBody Request body for creating or updating a **historical employee**—someone who already separated from the company and must appear on year-to-date or tax filings without receiving ongoing payroll. - * - * Send this object under the JSON root key `employee`. All dates are ISO 8601 (`YYYY-MM-DD`). Use a `work_address.location_uuid` returned from your company locations API for an active work site. - * + * @param employeeUuid The UUID of the employee + * @param timeOffType The time off type name you want to query data for. ex: 'sick' or 'vacation' * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostV1HistoricalEmployeesResponse createHistorical( - Optional xGustoAPIVersion, String companyUuid, - HistoricalEmployeeBody historicalEmployeeBody) { - PostV1HistoricalEmployeesRequest request = - PostV1HistoricalEmployeesRequest + public GetVersionEmployeesTimeOffActivitiesResponse getTimeOffActivities( + Optional xGustoAPIVersion, String employeeUuid, + String timeOffType) { + GetVersionEmployeesTimeOffActivitiesRequest request = + GetVersionEmployeesTimeOffActivitiesRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .companyUuid(companyUuid) - .historicalEmployeeBody(historicalEmployeeBody) + .employeeUuid(employeeUuid) + .timeOffType(timeOffType) .build(); - RequestOperation operation - = new PostV1HistoricalEmployees.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new GetVersionEmployeesTimeOffActivities.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } @@ -389,7 +339,7 @@ public GetV1EmployeesResponse get(String employeeId) { */ public GetV1EmployeesResponse get( Optional xGustoAPIVersion, String employeeId, - Optional> include) { + Optional> include) { GetV1EmployeesRequest request = GetV1EmployeesRequest .builder() @@ -533,9 +483,14 @@ public DeleteV1EmployeeResponse delete(OptionalReturns a list of the employee's custom fields. + *

    Get all of the employees, onboarding, active and terminated, for a given company. + * + *

    Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee + * pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, + * `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope + * is included. This allows you to access employee and job metadata without exposing pay rates. * *

    scope: `employees:read` * @@ -543,68 +498,38 @@ public DeleteV1EmployeeResponse delete(OptionalReturns a list of the employee's custom fields. - * - *

    scope: `employees:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. + * Get employees of a company * - * @param employeeId The UUID of the employee - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public GetV1EmployeesEmployeeIdCustomFieldsResponse getCustomFields(String employeeId) { - return getCustomFields(employeeId, Optional.empty(), Optional.empty(), - Optional.empty()); - } - - /** - * Get an employee's custom fields + *

    Get all of the employees, onboarding, active and terminated, for a given company. * - *

    Returns a list of the employee's custom fields. + *

    Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee + * pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, + * `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope + * is included. This allows you to access employee and job metadata without exposing pay rates. * *

    scope: `employees:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param employeeId The UUID of the employee - * @param page The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - * @param per Number of objects per page. For majority of endpoints will default to 25 - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param request The request object containing all the parameters for the API call. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1EmployeesEmployeeIdCustomFieldsResponse getCustomFields( - String employeeId, Optional page, - Optional per, Optional xGustoAPIVersion) { - GetV1EmployeesEmployeeIdCustomFieldsRequest request = - GetV1EmployeesEmployeeIdCustomFieldsRequest - .builder() - .employeeId(employeeId) - .page(page) - .per(per) - .xGustoAPIVersion(xGustoAPIVersion) - .build(); - RequestOperation operation - = new GetV1EmployeesEmployeeIdCustomFields.Sync(sdkConfiguration, _headers); + public GetV1CompaniesCompanyIdEmployeesResponse list(GetV1CompaniesCompanyIdEmployeesRequest request) { + RequestOperation operation + = new GetV1CompaniesCompanyIdEmployees.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Update employee onboarding documents config - * - *

    Indicate whether to include the Form I-9 for an employee during the onboarding process. - * If included, the employee will be prompted to complete Form I-9 as part of their onboarding. + * Create an employee * - *

    ## Related guides - * - [Employee onboarding](doc:employee-onboarding) + *

    Create an employee. * *

    scope: `employees:manage` * @@ -612,62 +537,54 @@ public GetV1EmployeesEmployeeIdCustomFieldsResponse getCustomFields( * * @return The call builder */ - public PutV1EmployeesEmployeeIdOnboardingDocumentsConfigRequestBuilder updateOnboardingDocumentsConfig() { - return new PutV1EmployeesEmployeeIdOnboardingDocumentsConfigRequestBuilder(sdkConfiguration); + public PostV1EmployeesRequestBuilder create() { + return new PostV1EmployeesRequestBuilder(sdkConfiguration); } /** - * Update employee onboarding documents config - * - *

    Indicate whether to include the Form I-9 for an employee during the onboarding process. - * If included, the employee will be prompted to complete Form I-9 as part of their onboarding. + * Create an employee * - *

    ## Related guides - * - [Employee onboarding](doc:employee-onboarding) + *

    Create an employee. * *

    scope: `employees:manage` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param employeeId The UUID of the employee + * @param companyId Company ID * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1EmployeesEmployeeIdOnboardingDocumentsConfigResponse updateOnboardingDocumentsConfig(String employeeId) { - return updateOnboardingDocumentsConfig(Optional.empty(), employeeId, Optional.empty()); + public PostV1EmployeesResponse create(String companyId) { + return create(Optional.empty(), companyId, Optional.empty()); } /** - * Update employee onboarding documents config - * - *

    Indicate whether to include the Form I-9 for an employee during the onboarding process. - * If included, the employee will be prompted to complete Form I-9 as part of their onboarding. + * Create an employee * - *

    ## Related guides - * - [Employee onboarding](doc:employee-onboarding) + *

    Create an employee. * *

    scope: `employees:manage` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param employeeId The UUID of the employee - * @param employeeOnboardingDocumentsConfigRequest Request body for updating an employee's onboarding documents configuration. + * @param companyId Company ID + * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1EmployeesEmployeeIdOnboardingDocumentsConfigResponse updateOnboardingDocumentsConfig( - Optional xGustoAPIVersion, String employeeId, - Optional employeeOnboardingDocumentsConfigRequest) { - PutV1EmployeesEmployeeIdOnboardingDocumentsConfigRequest request = - PutV1EmployeesEmployeeIdOnboardingDocumentsConfigRequest + public PostV1EmployeesResponse create( + Optional xGustoAPIVersion, String companyId, + Optional requestBody) { + PostV1EmployeesRequest request = + PostV1EmployeesRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .employeeId(employeeId) - .employeeOnboardingDocumentsConfigRequest(employeeOnboardingDocumentsConfigRequest) + .companyId(companyId) + .requestBody(requestBody) .build(); - RequestOperation operation - = new PutV1EmployeesEmployeeIdOnboardingDocumentsConfig.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PostV1Employees.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } @@ -973,65 +890,148 @@ public PutV1EmployeesEmployeeIdOnboardingStatusResponse updateOnboardingStatus( } /** - * Get employee time off activities + * Update employee onboarding documents config * - *

    Get employee time off activities. + *

    Indicate whether to include the Form I-9 for an employee during the onboarding process. + * If included, the employee will be prompted to complete Form I-9 as part of their onboarding. * - *

    scope: `employee_time_off_activities:read` + *

    ## Related guides + * - [Employee onboarding](doc:employee-onboarding) + * + *

    scope: `employees:manage` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public GetVersionEmployeesTimeOffActivitiesRequestBuilder getTimeOffActivities() { - return new GetVersionEmployeesTimeOffActivitiesRequestBuilder(sdkConfiguration); + public PutV1EmployeesEmployeeIdOnboardingDocumentsConfigRequestBuilder updateOnboardingDocumentsConfig() { + return new PutV1EmployeesEmployeeIdOnboardingDocumentsConfigRequestBuilder(sdkConfiguration); } /** - * Get employee time off activities + * Update employee onboarding documents config * - *

    Get employee time off activities. + *

    Indicate whether to include the Form I-9 for an employee during the onboarding process. + * If included, the employee will be prompted to complete Form I-9 as part of their onboarding. * - *

    scope: `employee_time_off_activities:read` + *

    ## Related guides + * - [Employee onboarding](doc:employee-onboarding) + * + *

    scope: `employees:manage` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param employeeUuid The UUID of the employee - * @param timeOffType The time off type name you want to query data for. ex: 'sick' or 'vacation' + * @param employeeId The UUID of the employee * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetVersionEmployeesTimeOffActivitiesResponse getTimeOffActivities(String employeeUuid, String timeOffType) { - return getTimeOffActivities(Optional.empty(), employeeUuid, timeOffType); + public PutV1EmployeesEmployeeIdOnboardingDocumentsConfigResponse updateOnboardingDocumentsConfig(String employeeId) { + return updateOnboardingDocumentsConfig(Optional.empty(), employeeId, Optional.empty()); } /** - * Get employee time off activities + * Update employee onboarding documents config * - *

    Get employee time off activities. + *

    Indicate whether to include the Form I-9 for an employee during the onboarding process. + * If included, the employee will be prompted to complete Form I-9 as part of their onboarding. * - *

    scope: `employee_time_off_activities:read` + *

    ## Related guides + * - [Employee onboarding](doc:employee-onboarding) + * + *

    scope: `employees:manage` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param employeeUuid The UUID of the employee - * @param timeOffType The time off type name you want to query data for. ex: 'sick' or 'vacation' + * @param employeeId The UUID of the employee + * @param employeeOnboardingDocumentsConfigRequest Request body for updating an employee's onboarding documents configuration. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetVersionEmployeesTimeOffActivitiesResponse getTimeOffActivities( - Optional xGustoAPIVersion, String employeeUuid, - String timeOffType) { - GetVersionEmployeesTimeOffActivitiesRequest request = - GetVersionEmployeesTimeOffActivitiesRequest + public PutV1EmployeesEmployeeIdOnboardingDocumentsConfigResponse updateOnboardingDocumentsConfig( + Optional xGustoAPIVersion, String employeeId, + Optional employeeOnboardingDocumentsConfigRequest) { + PutV1EmployeesEmployeeIdOnboardingDocumentsConfigRequest request = + PutV1EmployeesEmployeeIdOnboardingDocumentsConfigRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .employeeUuid(employeeUuid) - .timeOffType(timeOffType) + .employeeId(employeeId) + .employeeOnboardingDocumentsConfigRequest(employeeOnboardingDocumentsConfigRequest) .build(); - RequestOperation operation - = new GetVersionEmployeesTimeOffActivities.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PutV1EmployeesEmployeeIdOnboardingDocumentsConfig.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + + /** + * Create a historical employee + * + *

    Create a historical employee, an employee that was previously dismissed from the company in the + * current year. + * + *

    scope: `employees:manage` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public PostV1HistoricalEmployeesRequestBuilder createHistorical() { + return new PostV1HistoricalEmployeesRequestBuilder(sdkConfiguration); + } + + /** + * Create a historical employee + * + *

    Create a historical employee, an employee that was previously dismissed from the company in the + * current year. + * + *

    scope: `employees:manage` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param companyUuid The UUID of the company that will employ this historical record. + * @param historicalEmployeeBody Request body for creating or updating a **historical employee**—someone who already separated from the company and must appear on year-to-date or tax filings without receiving ongoing payroll. + * + * Send this object under the JSON root key `employee`. All dates are ISO 8601 (`YYYY-MM-DD`). Use a `work_address.location_uuid` returned from your company locations API for an active work site. + * + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public PostV1HistoricalEmployeesResponse createHistorical(String companyUuid, HistoricalEmployeeBody historicalEmployeeBody) { + return createHistorical(Optional.empty(), companyUuid, historicalEmployeeBody); + } + + /** + * Create a historical employee + * + *

    Create a historical employee, an employee that was previously dismissed from the company in the + * current year. + * + *

    scope: `employees:manage` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company that will employ this historical record. + * @param historicalEmployeeBody Request body for creating or updating a **historical employee**—someone who already separated from the company and must appear on year-to-date or tax filings without receiving ongoing payroll. + * + * Send this object under the JSON root key `employee`. All dates are ISO 8601 (`YYYY-MM-DD`). Use a `work_address.location_uuid` returned from your company locations API for an active work site. + * + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public PostV1HistoricalEmployeesResponse createHistorical( + Optional xGustoAPIVersion, String companyUuid, + HistoricalEmployeeBody historicalEmployeeBody) { + PostV1HistoricalEmployeesRequest request = + PostV1HistoricalEmployeesRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) + .historicalEmployeeBody(historicalEmployeeBody) + .build(); + RequestOperation operation + = new PostV1HistoricalEmployees.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/ExternalPayrolls.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/ExternalPayrolls.java index a4188f5a0..525f13f70 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/ExternalPayrolls.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/ExternalPayrolls.java @@ -207,9 +207,9 @@ public PostV1ExternalPayrollResponse create( } /** - * Get an external payroll + * Get tax liabilities * - *

    Get an external payroll for a given company. + *

    Get tax liabilities from aggregate external payrolls for a company. * *

    scope: `external_payrolls:read` * @@ -217,32 +217,31 @@ public PostV1ExternalPayrollResponse create( * * @return The call builder */ - public GetV1ExternalPayrollRequestBuilder retrieve() { - return new GetV1ExternalPayrollRequestBuilder(sdkConfiguration); + public GetV1TaxLiabilitiesRequestBuilder listTaxLiabilities() { + return new GetV1TaxLiabilitiesRequestBuilder(sdkConfiguration); } /** - * Get an external payroll + * Get tax liabilities * - *

    Get an external payroll for a given company. + *

    Get tax liabilities from aggregate external payrolls for a company. * *

    scope: `external_payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param companyUuid The UUID of the company - * @param externalPayrollId The UUID of the external payroll * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1ExternalPayrollResponse retrieve(String companyUuid, String externalPayrollId) { - return retrieve(Optional.empty(), companyUuid, externalPayrollId); + public GetV1TaxLiabilitiesResponse listTaxLiabilities(String companyUuid) { + return listTaxLiabilities(Optional.empty(), companyUuid); } /** - * Get an external payroll + * Get tax liabilities * - *

    Get an external payroll for a given company. + *

    Get tax liabilities from aggregate external payrolls for a company. * *

    scope: `external_payrolls:read` * @@ -250,29 +249,25 @@ public GetV1ExternalPayrollResponse retrieve(String companyUuid, String external * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyUuid The UUID of the company - * @param externalPayrollId The UUID of the external payroll * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1ExternalPayrollResponse retrieve( - Optional xGustoAPIVersion, String companyUuid, - String externalPayrollId) { - GetV1ExternalPayrollRequest request = - GetV1ExternalPayrollRequest + public GetV1TaxLiabilitiesResponse listTaxLiabilities(Optional xGustoAPIVersion, String companyUuid) { + GetV1TaxLiabilitiesRequest request = + GetV1TaxLiabilitiesRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .companyUuid(companyUuid) - .externalPayrollId(externalPayrollId) .build(); - RequestOperation operation - = new GetV1ExternalPayroll.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new GetV1TaxLiabilities.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Update an external payroll + * Update tax liabilities * - *

    Update an external payroll with a list of external payroll items. + *

    Update tax liabilities for a company. * *

    scope: `external_payrolls:write` * @@ -280,36 +275,32 @@ public GetV1ExternalPayrollResponse retrieve( * * @return The call builder */ - public PutV1ExternalPayrollRequestBuilder update() { - return new PutV1ExternalPayrollRequestBuilder(sdkConfiguration); + public PutV1TaxLiabilitiesRequestBuilder updateTaxLiabilities() { + return new PutV1TaxLiabilitiesRequestBuilder(sdkConfiguration); } /** - * Update an external payroll + * Update tax liabilities * - *

    Update an external payroll with a list of external payroll items. + *

    Update tax liabilities for a company. * *

    scope: `external_payrolls:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param companyUuid The UUID of the company - * @param externalPayrollId The UUID of the external payroll - * @param externalPayrollUpdateRequest The request body for updating an external payroll with employee payroll items. + * @param taxLiabilitySelectionsRequest The request body for updating tax liability selections. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1ExternalPayrollResponse update( - String companyUuid, String externalPayrollId, - ExternalPayrollUpdateRequest externalPayrollUpdateRequest) { - return update(Optional.empty(), companyUuid, externalPayrollId, - externalPayrollUpdateRequest); + public PutV1TaxLiabilitiesResponse updateTaxLiabilities(String companyUuid, TaxLiabilitySelectionsRequest taxLiabilitySelectionsRequest) { + return updateTaxLiabilities(Optional.empty(), companyUuid, taxLiabilitySelectionsRequest); } /** - * Update an external payroll + * Update tax liabilities * - *

    Update an external payroll with a list of external payroll items. + *

    Update tax liabilities for a company. * *

    scope: `external_payrolls:write` * @@ -317,31 +308,33 @@ public PutV1ExternalPayrollResponse update( * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyUuid The UUID of the company - * @param externalPayrollId The UUID of the external payroll - * @param externalPayrollUpdateRequest The request body for updating an external payroll with employee payroll items. + * @param taxLiabilitySelectionsRequest The request body for updating tax liability selections. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1ExternalPayrollResponse update( - Optional xGustoAPIVersion, String companyUuid, - String externalPayrollId, ExternalPayrollUpdateRequest externalPayrollUpdateRequest) { - PutV1ExternalPayrollRequest request = - PutV1ExternalPayrollRequest + public PutV1TaxLiabilitiesResponse updateTaxLiabilities( + Optional xGustoAPIVersion, String companyUuid, + TaxLiabilitySelectionsRequest taxLiabilitySelectionsRequest) { + PutV1TaxLiabilitiesRequest request = + PutV1TaxLiabilitiesRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .companyUuid(companyUuid) - .externalPayrollId(externalPayrollId) - .externalPayrollUpdateRequest(externalPayrollUpdateRequest) + .taxLiabilitySelectionsRequest(taxLiabilitySelectionsRequest) .build(); - RequestOperation operation - = new PutV1ExternalPayroll.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PutV1TaxLiabilities.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Delete an external payroll + * Finalize tax liabilities options and convert into processed payrolls * - *

    Delete an external payroll. + *

    Finalizes tax liabilities for a company. All external payrolls edit action will be disabled. + * + *

    ### Asynchronous processing + * This endpoint triggers an asynchronous operation. The external payrolls will be processed in the + * background after finalization. * *

    scope: `external_payrolls:write` * @@ -349,32 +342,39 @@ public PutV1ExternalPayrollResponse update( * * @return The call builder */ - public DeleteV1ExternalPayrollRequestBuilder delete() { - return new DeleteV1ExternalPayrollRequestBuilder(sdkConfiguration); + public PutV1TaxLiabilitiesFinishRequestBuilder finalizeTaxLiabilities() { + return new PutV1TaxLiabilitiesFinishRequestBuilder(sdkConfiguration); } /** - * Delete an external payroll + * Finalize tax liabilities options and convert into processed payrolls * - *

    Delete an external payroll. + *

    Finalizes tax liabilities for a company. All external payrolls edit action will be disabled. + * + *

    ### Asynchronous processing + * This endpoint triggers an asynchronous operation. The external payrolls will be processed in the + * background after finalization. * *

    scope: `external_payrolls:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param companyUuid The UUID of the company - * @param externalPayrollId The UUID of the external payroll * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public DeleteV1ExternalPayrollResponse delete(String companyUuid, String externalPayrollId) { - return delete(Optional.empty(), companyUuid, externalPayrollId); + public PutV1TaxLiabilitiesFinishResponse finalizeTaxLiabilities(String companyUuid) { + return finalizeTaxLiabilities(Optional.empty(), companyUuid); } /** - * Delete an external payroll + * Finalize tax liabilities options and convert into processed payrolls * - *

    Delete an external payroll. + *

    Finalizes tax liabilities for a company. All external payrolls edit action will be disabled. + * + *

    ### Asynchronous processing + * This endpoint triggers an asynchronous operation. The external payrolls will be processed in the + * background after finalization. * *

    scope: `external_payrolls:write` * @@ -382,30 +382,25 @@ public DeleteV1ExternalPayrollResponse delete(String companyUuid, String externa * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyUuid The UUID of the company - * @param externalPayrollId The UUID of the external payroll * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public DeleteV1ExternalPayrollResponse delete( - Optional xGustoAPIVersion, String companyUuid, - String externalPayrollId) { - DeleteV1ExternalPayrollRequest request = - DeleteV1ExternalPayrollRequest + public PutV1TaxLiabilitiesFinishResponse finalizeTaxLiabilities(Optional xGustoAPIVersion, String companyUuid) { + PutV1TaxLiabilitiesFinishRequest request = + PutV1TaxLiabilitiesFinishRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .companyUuid(companyUuid) - .externalPayrollId(externalPayrollId) .build(); - RequestOperation operation - = new DeleteV1ExternalPayroll.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PutV1TaxLiabilitiesFinish.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Get tax suggestions for an external payroll + * Get an external payroll * - *

    Get tax suggestions for an external payroll. Earnings and/or benefits data must be saved prior to - * the calculation in order to retrieve accurate tax calculation. + *

    Get an external payroll for a given company. * *

    scope: `external_payrolls:read` * @@ -413,15 +408,14 @@ public DeleteV1ExternalPayrollResponse delete( * * @return The call builder */ - public GetV1ExternalPayrollCalculateTaxesRequestBuilder calculateTaxes() { - return new GetV1ExternalPayrollCalculateTaxesRequestBuilder(sdkConfiguration); + public GetV1ExternalPayrollRequestBuilder retrieve() { + return new GetV1ExternalPayrollRequestBuilder(sdkConfiguration); } /** - * Get tax suggestions for an external payroll + * Get an external payroll * - *

    Get tax suggestions for an external payroll. Earnings and/or benefits data must be saved prior to - * the calculation in order to retrieve accurate tax calculation. + *

    Get an external payroll for a given company. * *

    scope: `external_payrolls:read` * @@ -432,15 +426,14 @@ public GetV1ExternalPayrollCalculateTaxesRequestBuilder calculateTaxes() { * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1ExternalPayrollCalculateTaxesResponse calculateTaxes(String companyUuid, String externalPayrollId) { - return calculateTaxes(Optional.empty(), companyUuid, externalPayrollId); + public GetV1ExternalPayrollResponse retrieve(String companyUuid, String externalPayrollId) { + return retrieve(Optional.empty(), companyUuid, externalPayrollId); } /** - * Get tax suggestions for an external payroll + * Get an external payroll * - *

    Get tax suggestions for an external payroll. Earnings and/or benefits data must be saved prior to - * the calculation in order to retrieve accurate tax calculation. + *

    Get an external payroll for a given company. * *

    scope: `external_payrolls:read` * @@ -452,83 +445,94 @@ public GetV1ExternalPayrollCalculateTaxesResponse calculateTaxes(String companyU * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1ExternalPayrollCalculateTaxesResponse calculateTaxes( - Optional xGustoAPIVersion, String companyUuid, + public GetV1ExternalPayrollResponse retrieve( + Optional xGustoAPIVersion, String companyUuid, String externalPayrollId) { - GetV1ExternalPayrollCalculateTaxesRequest request = - GetV1ExternalPayrollCalculateTaxesRequest + GetV1ExternalPayrollRequest request = + GetV1ExternalPayrollRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .companyUuid(companyUuid) .externalPayrollId(externalPayrollId) .build(); - RequestOperation operation - = new GetV1ExternalPayrollCalculateTaxes.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new GetV1ExternalPayroll.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Get tax liabilities + * Update an external payroll * - *

    Get tax liabilities from aggregate external payrolls for a company. + *

    Update an external payroll with a list of external payroll items. * - *

    scope: `external_payrolls:read` + *

    scope: `external_payrolls:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public GetV1TaxLiabilitiesRequestBuilder listTaxLiabilities() { - return new GetV1TaxLiabilitiesRequestBuilder(sdkConfiguration); + public PutV1ExternalPayrollRequestBuilder update() { + return new PutV1ExternalPayrollRequestBuilder(sdkConfiguration); } /** - * Get tax liabilities + * Update an external payroll * - *

    Get tax liabilities from aggregate external payrolls for a company. + *

    Update an external payroll with a list of external payroll items. * - *

    scope: `external_payrolls:read` + *

    scope: `external_payrolls:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param companyUuid The UUID of the company + * @param externalPayrollId The UUID of the external payroll + * @param externalPayrollUpdateRequest The request body for updating an external payroll with employee payroll items. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1TaxLiabilitiesResponse listTaxLiabilities(String companyUuid) { - return listTaxLiabilities(Optional.empty(), companyUuid); + public PutV1ExternalPayrollResponse update( + String companyUuid, String externalPayrollId, + ExternalPayrollUpdateRequest externalPayrollUpdateRequest) { + return update(Optional.empty(), companyUuid, externalPayrollId, + externalPayrollUpdateRequest); } /** - * Get tax liabilities + * Update an external payroll * - *

    Get tax liabilities from aggregate external payrolls for a company. + *

    Update an external payroll with a list of external payroll items. * - *

    scope: `external_payrolls:read` + *

    scope: `external_payrolls:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyUuid The UUID of the company + * @param externalPayrollId The UUID of the external payroll + * @param externalPayrollUpdateRequest The request body for updating an external payroll with employee payroll items. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1TaxLiabilitiesResponse listTaxLiabilities(Optional xGustoAPIVersion, String companyUuid) { - GetV1TaxLiabilitiesRequest request = - GetV1TaxLiabilitiesRequest + public PutV1ExternalPayrollResponse update( + Optional xGustoAPIVersion, String companyUuid, + String externalPayrollId, ExternalPayrollUpdateRequest externalPayrollUpdateRequest) { + PutV1ExternalPayrollRequest request = + PutV1ExternalPayrollRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .companyUuid(companyUuid) + .externalPayrollId(externalPayrollId) + .externalPayrollUpdateRequest(externalPayrollUpdateRequest) .build(); - RequestOperation operation - = new GetV1TaxLiabilities.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PutV1ExternalPayroll.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Update tax liabilities + * Delete an external payroll * - *

    Update tax liabilities for a company. + *

    Delete an external payroll. * *

    scope: `external_payrolls:write` * @@ -536,32 +540,32 @@ public GetV1TaxLiabilitiesResponse listTaxLiabilities(OptionalUpdate tax liabilities for a company. + *

    Delete an external payroll. * *

    scope: `external_payrolls:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param companyUuid The UUID of the company - * @param taxLiabilitySelectionsRequest The request body for updating tax liability selections. + * @param externalPayrollId The UUID of the external payroll * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1TaxLiabilitiesResponse updateTaxLiabilities(String companyUuid, TaxLiabilitySelectionsRequest taxLiabilitySelectionsRequest) { - return updateTaxLiabilities(Optional.empty(), companyUuid, taxLiabilitySelectionsRequest); + public DeleteV1ExternalPayrollResponse delete(String companyUuid, String externalPayrollId) { + return delete(Optional.empty(), companyUuid, externalPayrollId); } /** - * Update tax liabilities + * Delete an external payroll * - *

    Update tax liabilities for a company. + *

    Delete an external payroll. * *

    scope: `external_payrolls:write` * @@ -569,92 +573,88 @@ public PutV1TaxLiabilitiesResponse updateTaxLiabilities(String companyUuid, TaxL * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyUuid The UUID of the company - * @param taxLiabilitySelectionsRequest The request body for updating tax liability selections. + * @param externalPayrollId The UUID of the external payroll * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1TaxLiabilitiesResponse updateTaxLiabilities( - Optional xGustoAPIVersion, String companyUuid, - TaxLiabilitySelectionsRequest taxLiabilitySelectionsRequest) { - PutV1TaxLiabilitiesRequest request = - PutV1TaxLiabilitiesRequest + public DeleteV1ExternalPayrollResponse delete( + Optional xGustoAPIVersion, String companyUuid, + String externalPayrollId) { + DeleteV1ExternalPayrollRequest request = + DeleteV1ExternalPayrollRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .companyUuid(companyUuid) - .taxLiabilitySelectionsRequest(taxLiabilitySelectionsRequest) + .externalPayrollId(externalPayrollId) .build(); - RequestOperation operation - = new PutV1TaxLiabilities.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new DeleteV1ExternalPayroll.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Finalize tax liabilities options and convert into processed payrolls - * - *

    Finalizes tax liabilities for a company. All external payrolls edit action will be disabled. + * Get tax suggestions for an external payroll * - *

    ### Asynchronous processing - * This endpoint triggers an asynchronous operation. The external payrolls will be processed in the - * background after finalization. + *

    Get tax suggestions for an external payroll. Earnings and/or benefits data must be saved prior to + * the calculation in order to retrieve accurate tax calculation. * - *

    scope: `external_payrolls:write` + *

    scope: `external_payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public PutV1TaxLiabilitiesFinishRequestBuilder finalizeTaxLiabilities() { - return new PutV1TaxLiabilitiesFinishRequestBuilder(sdkConfiguration); + public GetV1ExternalPayrollCalculateTaxesRequestBuilder calculateTaxes() { + return new GetV1ExternalPayrollCalculateTaxesRequestBuilder(sdkConfiguration); } /** - * Finalize tax liabilities options and convert into processed payrolls - * - *

    Finalizes tax liabilities for a company. All external payrolls edit action will be disabled. + * Get tax suggestions for an external payroll * - *

    ### Asynchronous processing - * This endpoint triggers an asynchronous operation. The external payrolls will be processed in the - * background after finalization. + *

    Get tax suggestions for an external payroll. Earnings and/or benefits data must be saved prior to + * the calculation in order to retrieve accurate tax calculation. * - *

    scope: `external_payrolls:write` + *

    scope: `external_payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param companyUuid The UUID of the company + * @param externalPayrollId The UUID of the external payroll * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1TaxLiabilitiesFinishResponse finalizeTaxLiabilities(String companyUuid) { - return finalizeTaxLiabilities(Optional.empty(), companyUuid); + public GetV1ExternalPayrollCalculateTaxesResponse calculateTaxes(String companyUuid, String externalPayrollId) { + return calculateTaxes(Optional.empty(), companyUuid, externalPayrollId); } /** - * Finalize tax liabilities options and convert into processed payrolls - * - *

    Finalizes tax liabilities for a company. All external payrolls edit action will be disabled. + * Get tax suggestions for an external payroll * - *

    ### Asynchronous processing - * This endpoint triggers an asynchronous operation. The external payrolls will be processed in the - * background after finalization. + *

    Get tax suggestions for an external payroll. Earnings and/or benefits data must be saved prior to + * the calculation in order to retrieve accurate tax calculation. * - *

    scope: `external_payrolls:write` + *

    scope: `external_payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyUuid The UUID of the company + * @param externalPayrollId The UUID of the external payroll * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1TaxLiabilitiesFinishResponse finalizeTaxLiabilities(Optional xGustoAPIVersion, String companyUuid) { - PutV1TaxLiabilitiesFinishRequest request = - PutV1TaxLiabilitiesFinishRequest + public GetV1ExternalPayrollCalculateTaxesResponse calculateTaxes( + Optional xGustoAPIVersion, String companyUuid, + String externalPayrollId) { + GetV1ExternalPayrollCalculateTaxesRequest request = + GetV1ExternalPayrollCalculateTaxesRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .companyUuid(companyUuid) + .externalPayrollId(externalPayrollId) .build(); - RequestOperation operation - = new PutV1TaxLiabilitiesFinish.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new GetV1ExternalPayrollCalculateTaxes.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/FederalTaxDetails.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/FederalTaxDetails.java index 40ddc1aeb..b39877dff 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/FederalTaxDetails.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/FederalTaxDetails.java @@ -71,7 +71,7 @@ public GetV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder get() { * @throws RuntimeException subclass if the API call fails */ public GetV1CompaniesCompanyIdFederalTaxDetailsResponse get(String companyId) { - return get(companyId, Optional.empty()); + return get(Optional.empty(), companyId); } /** @@ -84,17 +84,17 @@ public GetV1CompaniesCompanyIdFederalTaxDetailsResponse get(String companyId) { * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1CompaniesCompanyIdFederalTaxDetailsResponse get(String companyId, Optional xGustoAPIVersion) { + public GetV1CompaniesCompanyIdFederalTaxDetailsResponse get(Optional xGustoAPIVersion, String companyId) { GetV1CompaniesCompanyIdFederalTaxDetailsRequest request = GetV1CompaniesCompanyIdFederalTaxDetailsRequest .builder() - .companyId(companyId) .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) .build(); RequestOperation operation = new GetV1CompaniesCompanyIdFederalTaxDetails.Sync(sdkConfiguration, _headers); @@ -157,7 +157,7 @@ public PutV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder update() { * @throws RuntimeException subclass if the API call fails */ public PutV1CompaniesCompanyIdFederalTaxDetailsResponse update(String companyId, FederalTaxDetailsUpdate federalTaxDetailsUpdate) { - return update(companyId, Optional.empty(), federalTaxDetailsUpdate); + return update(Optional.empty(), companyId, federalTaxDetailsUpdate); } /** @@ -182,20 +182,20 @@ public PutV1CompaniesCompanyIdFederalTaxDetailsResponse update(String companyId, * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company * @param federalTaxDetailsUpdate * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PutV1CompaniesCompanyIdFederalTaxDetailsResponse update( - String companyId, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String companyId, FederalTaxDetailsUpdate federalTaxDetailsUpdate) { PutV1CompaniesCompanyIdFederalTaxDetailsRequest request = PutV1CompaniesCompanyIdFederalTaxDetailsRequest .builder() - .companyId(companyId) .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) .federalTaxDetailsUpdate(federalTaxDetailsUpdate) .build(); RequestOperation operation diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/Garnishments.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/Garnishments.java index 274791e12..9eea72b98 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/Garnishments.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/Garnishments.java @@ -215,6 +215,61 @@ public PostV1EmployeesEmployeeIdGarnishmentsResponse create( return operation.handleResponse(operation.doRequest(request)); } + /** + * Get child support garnishment data + * + *

    Agency data and requirements to be used for creating child support garnishments + * + *

    scope: `garnishments:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public GetV1GarnishmentsChildSupportRequestBuilder getChildSupportData() { + return new GetV1GarnishmentsChildSupportRequestBuilder(sdkConfiguration); + } + + /** + * Get child support garnishment data + * + *

    Agency data and requirements to be used for creating child support garnishments + * + *

    scope: `garnishments:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1GarnishmentsChildSupportResponse getChildSupportDataDirect() { + return getChildSupportData(Optional.empty()); + } + + /** + * Get child support garnishment data + * + *

    Agency data and requirements to be used for creating child support garnishments + * + *

    scope: `garnishments:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1GarnishmentsChildSupportResponse getChildSupportData(Optional xGustoAPIVersion) { + GetV1GarnishmentsChildSupportRequest request = + GetV1GarnishmentsChildSupportRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .build(); + RequestOperation operation + = new GetV1GarnishmentsChildSupport.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + /** * Get a garnishment * @@ -366,59 +421,4 @@ public PutV1GarnishmentsGarnishmentIdResponse update( return operation.handleResponse(operation.doRequest(request)); } - /** - * Get child support garnishment data - * - *

    Agency data and requirements to be used for creating child support garnishments - * - *

    scope: `garnishments:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The call builder - */ - public GetV1GarnishmentsChildSupportRequestBuilder getChildSupportData() { - return new GetV1GarnishmentsChildSupportRequestBuilder(sdkConfiguration); - } - - /** - * Get child support garnishment data - * - *

    Agency data and requirements to be used for creating child support garnishments - * - *

    scope: `garnishments:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public GetV1GarnishmentsChildSupportResponse getChildSupportDataDirect() { - return getChildSupportData(Optional.empty()); - } - - /** - * Get child support garnishment data - * - *

    Agency data and requirements to be used for creating child support garnishments - * - *

    scope: `garnishments:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public GetV1GarnishmentsChildSupportResponse getChildSupportData(Optional xGustoAPIVersion) { - GetV1GarnishmentsChildSupportRequest request = - GetV1GarnishmentsChildSupportRequest - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .build(); - RequestOperation operation - = new GetV1GarnishmentsChildSupport.Sync(sdkConfiguration, _headers); - return operation.handleResponse(operation.doRequest(request)); - } - } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/GeneratedDocuments.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/GeneratedDocuments.java index 40912324a..8cbe9edec 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/GeneratedDocuments.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/GeneratedDocuments.java @@ -5,8 +5,8 @@ import static com.gusto.embedded_api.operations.Operations.RequestOperation; -import com.gusto.embedded_api.models.components.VersionHeader; import com.gusto.embedded_api.models.operations.DocumentType; +import com.gusto.embedded_api.models.operations.GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion; import com.gusto.embedded_api.models.operations.GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest; import com.gusto.embedded_api.models.operations.GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder; import com.gusto.embedded_api.models.operations.GetV1GeneratedDocumentsDocumentTypeRequestUuidResponse; @@ -67,7 +67,7 @@ public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder get() { * @throws RuntimeException subclass if the API call fails */ public GetV1GeneratedDocumentsDocumentTypeRequestUuidResponse get(DocumentType documentType, String requestUuid) { - return get(documentType, requestUuid, Optional.empty()); + return get(Optional.empty(), documentType, requestUuid); } /** @@ -80,21 +80,21 @@ public GetV1GeneratedDocumentsDocumentTypeRequestUuidResponse get(DocumentType d * *

    If set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param documentType The type of document being generated * @param requestUuid The UUID of the request to generate a document. Generate document endpoints return request_uuids to be used with the GET generated document endpoint. - * @param xGustoAPIVersion * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public GetV1GeneratedDocumentsDocumentTypeRequestUuidResponse get( - DocumentType documentType, String requestUuid, - Optional xGustoAPIVersion) { + Optional xGustoAPIVersion, DocumentType documentType, + String requestUuid) { GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest request = GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest .builder() + .xGustoAPIVersion(xGustoAPIVersion) .documentType(documentType) .requestUuid(requestUuid) - .xGustoAPIVersion(xGustoAPIVersion) .build(); RequestOperation operation = new GetV1GeneratedDocumentsDocumentTypeRequestUuid.Sync(sdkConfiguration, _headers); diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/GustoEmbedded.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/GustoEmbedded.java index d9a70f72b..0bb56bea5 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/GustoEmbedded.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/GustoEmbedded.java @@ -61,13 +61,16 @@ public String server() { }}; - private final Introspection introspection; + private final AchTransactions achTransactions; private final Companies companies; - private final Invoices invoices; + private final CompanyBenefits companyBenefits; + + + private final Reports reports; private final CompanyAttachments companyAttachments; @@ -76,49 +79,55 @@ public String server() { private final CompanyAttachment companyAttachment; - private final FederalTaxDetails federalTaxDetails; + private final BankAccounts bankAccounts; + + + private final CompanyForms companyForms; private final IndustrySelection industrySelection; - private final Signatories signatories; + private final Notifications notifications; - private final Flows flows; + private final PaymentConfigs paymentConfigs; - private final Locations locations; + private final TaxRequirements taxRequirements; - private final BankAccounts bankAccounts; + private final FederalTaxDetails federalTaxDetails; - private final ExternalPayrolls externalPayrolls; + private final JobsAndCompensations jobsAndCompensations; - private final PaymentConfigs paymentConfigs; + private final ContractorPaymentMethod contractorPaymentMethod; - private final PaySchedules paySchedules; + private final ContractorPaymentMethods contractorPaymentMethods; - private final Employees employees; + private final ContractorForms contractorForms; - private final HistoricalEmployees historicalEmployees; + private final Contractors contractors; - private final Departments departments; + private final ContractorPaymentGroups contractorPaymentGroups; - private final EmployeeEmployments employeeEmployments; + private final ContractorPayments contractorPayments; - private final EmployeeAddresses employeeAddresses; + private final Departments departments; - private final EmployeeTaxSetup employeeTaxSetup; + private final ContractorDocuments contractorDocuments; + + + private final EarningTypes earningTypes; private final EmployeePaymentMethods employeePaymentMethods; @@ -127,107 +136,110 @@ public String server() { private final EmployeePaymentMethod employeePaymentMethod; - private final JobsAndCompensations jobsAndCompensations; + private final EmployeeBenefits employeeBenefits; - private final EarningTypes earningTypes; + private final Employees employees; - private final Contractors contractors; + private final EmployeeTaxSetup employeeTaxSetup; - private final ContractorPaymentMethod contractorPaymentMethod; + private final EmployeeForms employeeForms; - private final ContractorPaymentMethods contractorPaymentMethods; + private final EmployeeEmployments employeeEmployments; - private final Webhooks webhooks; + private final Events events; - private final ContractorForms contractorForms; + private final ExternalPayrolls externalPayrolls; - private final ContractorDocuments contractorDocuments; + private final Flows flows; - private final EmployeeForms employeeForms; + private final Garnishments garnishments; private final Payrolls payrolls; - private final TimeOffPolicies timeOffPolicies; - - - private final ContractorPayments contractorPayments; + private final GeneratedDocuments generatedDocuments; - private final ContractorPaymentGroups contractorPaymentGroups; + private final HistoricalEmployees historicalEmployees; - private final CompanyForms companyForms; + private final HolidayPayPolicies holidayPayPolicies; - private final GeneratedDocuments generatedDocuments; + private final EmployeeAddresses employeeAddresses; - private final Reports reports; + private final I9Verification i9Verification; - private final CompanyBenefits companyBenefits; + private final InformationRequests informationRequests; - private final EmployeeBenefits employeeBenefits; + private final Invoices invoices; - private final Garnishments garnishments; + private final Locations locations; - private final I9Verification i9Verification; + private final MemberPortalInvitations memberPortalInvitations; - private final TaxRequirements taxRequirements; + private final PaySchedules paySchedules; - private final HolidayPayPolicies holidayPayPolicies; + private final PayrollCancellations payrollCancellations; - private final Notifications notifications; + private final PayrollDigests payrollDigests; - private final Events events; + private final TimeOffPolicies timeOffPolicies; - private final InformationRequests informationRequests; + private final PeopleBatches peopleBatches; private final RecoveryCases recoveryCases; - private final AchTransactions achTransactions; + private final Reimbursements reimbursements; - private final WireInRequests wireInRequests; + private final ReverseWireTransactions reverseWireTransactions; private final SalaryEstimates salaryEstimates; - private final Reimbursements reimbursements; + private final Signatories signatories; - private final PeopleBatches peopleBatches; + private final TaxPayments taxPayments; private final TimeOffRequests timeOffRequests; - private final PayrollDigests payrollDigests; + private final Introspection introspection; - public Introspection introspection() { - return introspection; + private final Webhooks webhooks; + + + private final WireInRequests wireInRequests; + + + public AchTransactions achTransactions() { + return achTransactions; } @@ -236,8 +248,13 @@ public Companies companies() { } - public Invoices invoices() { - return invoices; + public CompanyBenefits companyBenefits() { + return companyBenefits; + } + + + public Reports reports() { + return reports; } @@ -251,8 +268,13 @@ public CompanyAttachment companyAttachment() { } - public FederalTaxDetails federalTaxDetails() { - return federalTaxDetails; + public BankAccounts bankAccounts() { + return bankAccounts; + } + + + public CompanyForms companyForms() { + return companyForms; } @@ -261,68 +283,73 @@ public IndustrySelection industrySelection() { } - public Signatories signatories() { - return signatories; + public Notifications notifications() { + return notifications; } - public Flows flows() { - return flows; + public PaymentConfigs paymentConfigs() { + return paymentConfigs; } - public Locations locations() { - return locations; + public TaxRequirements taxRequirements() { + return taxRequirements; } - public BankAccounts bankAccounts() { - return bankAccounts; + public FederalTaxDetails federalTaxDetails() { + return federalTaxDetails; } - public ExternalPayrolls externalPayrolls() { - return externalPayrolls; + public JobsAndCompensations jobsAndCompensations() { + return jobsAndCompensations; } - public PaymentConfigs paymentConfigs() { - return paymentConfigs; + public ContractorPaymentMethod contractorPaymentMethod() { + return contractorPaymentMethod; } - public PaySchedules paySchedules() { - return paySchedules; + public ContractorPaymentMethods contractorPaymentMethods() { + return contractorPaymentMethods; } - public Employees employees() { - return employees; + public ContractorForms contractorForms() { + return contractorForms; } - public HistoricalEmployees historicalEmployees() { - return historicalEmployees; + public Contractors contractors() { + return contractors; } - public Departments departments() { - return departments; + public ContractorPaymentGroups contractorPaymentGroups() { + return contractorPaymentGroups; } - public EmployeeEmployments employeeEmployments() { - return employeeEmployments; + public ContractorPayments contractorPayments() { + return contractorPayments; } - public EmployeeAddresses employeeAddresses() { - return employeeAddresses; + public Departments departments() { + return departments; } - public EmployeeTaxSetup employeeTaxSetup() { - return employeeTaxSetup; + public ContractorDocuments contractorDocuments() { + return contractorDocuments; + } + + + public EarningTypes earningTypes() { + return earningTypes; } @@ -336,48 +363,48 @@ public EmployeePaymentMethod employeePaymentMethod() { } - public JobsAndCompensations jobsAndCompensations() { - return jobsAndCompensations; + public EmployeeBenefits employeeBenefits() { + return employeeBenefits; } - public EarningTypes earningTypes() { - return earningTypes; + public Employees employees() { + return employees; } - public Contractors contractors() { - return contractors; + public EmployeeTaxSetup employeeTaxSetup() { + return employeeTaxSetup; } - public ContractorPaymentMethod contractorPaymentMethod() { - return contractorPaymentMethod; + public EmployeeForms employeeForms() { + return employeeForms; } - public ContractorPaymentMethods contractorPaymentMethods() { - return contractorPaymentMethods; + public EmployeeEmployments employeeEmployments() { + return employeeEmployments; } - public Webhooks webhooks() { - return webhooks; + public Events events() { + return events; } - public ContractorForms contractorForms() { - return contractorForms; + public ExternalPayrolls externalPayrolls() { + return externalPayrolls; } - public ContractorDocuments contractorDocuments() { - return contractorDocuments; + public Flows flows() { + return flows; } - public EmployeeForms employeeForms() { - return employeeForms; + public Garnishments garnishments() { + return garnishments; } @@ -386,78 +413,73 @@ public Payrolls payrolls() { } - public TimeOffPolicies timeOffPolicies() { - return timeOffPolicies; - } - - - public ContractorPayments contractorPayments() { - return contractorPayments; + public GeneratedDocuments generatedDocuments() { + return generatedDocuments; } - public ContractorPaymentGroups contractorPaymentGroups() { - return contractorPaymentGroups; + public HistoricalEmployees historicalEmployees() { + return historicalEmployees; } - public CompanyForms companyForms() { - return companyForms; + public HolidayPayPolicies holidayPayPolicies() { + return holidayPayPolicies; } - public GeneratedDocuments generatedDocuments() { - return generatedDocuments; + public EmployeeAddresses employeeAddresses() { + return employeeAddresses; } - public Reports reports() { - return reports; + public I9Verification i9Verification() { + return i9Verification; } - public CompanyBenefits companyBenefits() { - return companyBenefits; + public InformationRequests informationRequests() { + return informationRequests; } - public EmployeeBenefits employeeBenefits() { - return employeeBenefits; + public Invoices invoices() { + return invoices; } - public Garnishments garnishments() { - return garnishments; + public Locations locations() { + return locations; } - public I9Verification i9Verification() { - return i9Verification; + public MemberPortalInvitations memberPortalInvitations() { + return memberPortalInvitations; } - public TaxRequirements taxRequirements() { - return taxRequirements; + public PaySchedules paySchedules() { + return paySchedules; } - public HolidayPayPolicies holidayPayPolicies() { - return holidayPayPolicies; + public PayrollCancellations payrollCancellations() { + return payrollCancellations; } - public Notifications notifications() { - return notifications; + public PayrollDigests payrollDigests() { + return payrollDigests; } - public Events events() { - return events; + public TimeOffPolicies timeOffPolicies() { + return timeOffPolicies; } - public InformationRequests informationRequests() { - return informationRequests; + public PeopleBatches peopleBatches() { + return peopleBatches; } @@ -466,13 +488,13 @@ public RecoveryCases recoveryCases() { } - public AchTransactions achTransactions() { - return achTransactions; + public Reimbursements reimbursements() { + return reimbursements; } - public WireInRequests wireInRequests() { - return wireInRequests; + public ReverseWireTransactions reverseWireTransactions() { + return reverseWireTransactions; } @@ -481,13 +503,13 @@ public SalaryEstimates salaryEstimates() { } - public Reimbursements reimbursements() { - return reimbursements; + public Signatories signatories() { + return signatories; } - public PeopleBatches peopleBatches() { - return peopleBatches; + public TaxPayments taxPayments() { + return taxPayments; } @@ -496,8 +518,18 @@ public TimeOffRequests timeOffRequests() { } - public PayrollDigests payrollDigests() { - return payrollDigests; + public Introspection introspection() { + return introspection; + } + + + public Webhooks webhooks() { + return webhooks; + } + + + public WireInRequests wireInRequests() { + return wireInRequests; } private final AsyncGustoEmbedded asyncSDK; @@ -650,63 +682,67 @@ public static Builder builder() { return new Builder(); } - public GustoEmbedded(SDKConfiguration sdkConfiguration) { + private GustoEmbedded(SDKConfiguration sdkConfiguration) { sdkConfiguration.initialize(); - this.introspection = new Introspection(sdkConfiguration); + this.achTransactions = new AchTransactions(sdkConfiguration); this.companies = new Companies(sdkConfiguration); - this.invoices = new Invoices(sdkConfiguration); + this.companyBenefits = new CompanyBenefits(sdkConfiguration); + this.reports = new Reports(sdkConfiguration); this.companyAttachments = new CompanyAttachments(sdkConfiguration); this.companyAttachment = new CompanyAttachment(sdkConfiguration); - this.federalTaxDetails = new FederalTaxDetails(sdkConfiguration); - this.industrySelection = new IndustrySelection(sdkConfiguration); - this.signatories = new Signatories(sdkConfiguration); - this.flows = new Flows(sdkConfiguration); - this.locations = new Locations(sdkConfiguration); this.bankAccounts = new BankAccounts(sdkConfiguration); - this.externalPayrolls = new ExternalPayrolls(sdkConfiguration); + this.companyForms = new CompanyForms(sdkConfiguration); + this.industrySelection = new IndustrySelection(sdkConfiguration); + this.notifications = new Notifications(sdkConfiguration); this.paymentConfigs = new PaymentConfigs(sdkConfiguration); - this.paySchedules = new PaySchedules(sdkConfiguration); - this.employees = new Employees(sdkConfiguration); - this.historicalEmployees = new HistoricalEmployees(sdkConfiguration); - this.departments = new Departments(sdkConfiguration); - this.employeeEmployments = new EmployeeEmployments(sdkConfiguration); - this.employeeAddresses = new EmployeeAddresses(sdkConfiguration); - this.employeeTaxSetup = new EmployeeTaxSetup(sdkConfiguration); - this.employeePaymentMethods = new EmployeePaymentMethods(sdkConfiguration); - this.employeePaymentMethod = new EmployeePaymentMethod(sdkConfiguration); + this.taxRequirements = new TaxRequirements(sdkConfiguration); + this.federalTaxDetails = new FederalTaxDetails(sdkConfiguration); this.jobsAndCompensations = new JobsAndCompensations(sdkConfiguration); - this.earningTypes = new EarningTypes(sdkConfiguration); - this.contractors = new Contractors(sdkConfiguration); this.contractorPaymentMethod = new ContractorPaymentMethod(sdkConfiguration); this.contractorPaymentMethods = new ContractorPaymentMethods(sdkConfiguration); - this.webhooks = new Webhooks(sdkConfiguration); this.contractorForms = new ContractorForms(sdkConfiguration); + this.contractors = new Contractors(sdkConfiguration); + this.contractorPaymentGroups = new ContractorPaymentGroups(sdkConfiguration); + this.contractorPayments = new ContractorPayments(sdkConfiguration); + this.departments = new Departments(sdkConfiguration); this.contractorDocuments = new ContractorDocuments(sdkConfiguration); + this.earningTypes = new EarningTypes(sdkConfiguration); + this.employeePaymentMethods = new EmployeePaymentMethods(sdkConfiguration); + this.employeePaymentMethod = new EmployeePaymentMethod(sdkConfiguration); + this.employeeBenefits = new EmployeeBenefits(sdkConfiguration); + this.employees = new Employees(sdkConfiguration); + this.employeeTaxSetup = new EmployeeTaxSetup(sdkConfiguration); this.employeeForms = new EmployeeForms(sdkConfiguration); + this.employeeEmployments = new EmployeeEmployments(sdkConfiguration); + this.events = new Events(sdkConfiguration); + this.externalPayrolls = new ExternalPayrolls(sdkConfiguration); + this.flows = new Flows(sdkConfiguration); + this.garnishments = new Garnishments(sdkConfiguration); this.payrolls = new Payrolls(sdkConfiguration); - this.timeOffPolicies = new TimeOffPolicies(sdkConfiguration); - this.contractorPayments = new ContractorPayments(sdkConfiguration); - this.contractorPaymentGroups = new ContractorPaymentGroups(sdkConfiguration); - this.companyForms = new CompanyForms(sdkConfiguration); this.generatedDocuments = new GeneratedDocuments(sdkConfiguration); - this.reports = new Reports(sdkConfiguration); - this.companyBenefits = new CompanyBenefits(sdkConfiguration); - this.employeeBenefits = new EmployeeBenefits(sdkConfiguration); - this.garnishments = new Garnishments(sdkConfiguration); - this.i9Verification = new I9Verification(sdkConfiguration); - this.taxRequirements = new TaxRequirements(sdkConfiguration); + this.historicalEmployees = new HistoricalEmployees(sdkConfiguration); this.holidayPayPolicies = new HolidayPayPolicies(sdkConfiguration); - this.notifications = new Notifications(sdkConfiguration); - this.events = new Events(sdkConfiguration); + this.employeeAddresses = new EmployeeAddresses(sdkConfiguration); + this.i9Verification = new I9Verification(sdkConfiguration); this.informationRequests = new InformationRequests(sdkConfiguration); + this.invoices = new Invoices(sdkConfiguration); + this.locations = new Locations(sdkConfiguration); + this.memberPortalInvitations = new MemberPortalInvitations(sdkConfiguration); + this.paySchedules = new PaySchedules(sdkConfiguration); + this.payrollCancellations = new PayrollCancellations(sdkConfiguration); + this.payrollDigests = new PayrollDigests(sdkConfiguration); + this.timeOffPolicies = new TimeOffPolicies(sdkConfiguration); + this.peopleBatches = new PeopleBatches(sdkConfiguration); this.recoveryCases = new RecoveryCases(sdkConfiguration); - this.achTransactions = new AchTransactions(sdkConfiguration); - this.wireInRequests = new WireInRequests(sdkConfiguration); - this.salaryEstimates = new SalaryEstimates(sdkConfiguration); this.reimbursements = new Reimbursements(sdkConfiguration); - this.peopleBatches = new PeopleBatches(sdkConfiguration); + this.reverseWireTransactions = new ReverseWireTransactions(sdkConfiguration); + this.salaryEstimates = new SalaryEstimates(sdkConfiguration); + this.signatories = new Signatories(sdkConfiguration); + this.taxPayments = new TaxPayments(sdkConfiguration); this.timeOffRequests = new TimeOffRequests(sdkConfiguration); - this.payrollDigests = new PayrollDigests(sdkConfiguration); + this.introspection = new Introspection(sdkConfiguration); + this.webhooks = new Webhooks(sdkConfiguration); + this.wireInRequests = new WireInRequests(sdkConfiguration); SdkInitData data = sdkConfiguration.hooks().sdkInit( new SdkInitData( sdkConfiguration.resolvedServerUrl(), diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/IndustrySelection.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/IndustrySelection.java index 6e44cf3de..7b6bd5c7b 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/IndustrySelection.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/IndustrySelection.java @@ -71,7 +71,7 @@ public GetV1CompanyIndustryRequestBuilder get() { * @throws RuntimeException subclass if the API call fails */ public GetV1CompanyIndustryResponse get(String companyId) { - return get(companyId, Optional.empty()); + return get(Optional.empty(), companyId); } /** @@ -84,17 +84,17 @@ public GetV1CompanyIndustryResponse get(String companyId) { * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1CompanyIndustryResponse get(String companyId, Optional xGustoAPIVersion) { + public GetV1CompanyIndustryResponse get(Optional xGustoAPIVersion, String companyId) { GetV1CompanyIndustryRequest request = GetV1CompanyIndustryRequest .builder() - .companyId(companyId) .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) .build(); RequestOperation operation = new GetV1CompanyIndustry.Sync(sdkConfiguration, _headers); @@ -149,7 +149,7 @@ public PutV1CompanyIndustryRequestBuilder update() { * @throws RuntimeException subclass if the API call fails */ public PutV1CompanyIndustryResponse update(String companyId, CompanyIndustrySelectionRequiredBody companyIndustrySelectionRequiredBody) { - return update(companyId, Optional.empty(), companyIndustrySelectionRequiredBody); + return update(Optional.empty(), companyId, companyIndustrySelectionRequiredBody); } /** @@ -170,20 +170,20 @@ public PutV1CompanyIndustryResponse update(String companyId, CompanyIndustrySele * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company * @param companyIndustrySelectionRequiredBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PutV1CompanyIndustryResponse update( - String companyId, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String companyId, CompanyIndustrySelectionRequiredBody companyIndustrySelectionRequiredBody) { PutV1CompanyIndustryRequest request = PutV1CompanyIndustryRequest .builder() - .companyId(companyId) .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) .companyIndustrySelectionRequiredBody(companyIndustrySelectionRequiredBody) .build(); RequestOperation operation diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/Introspection.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/Introspection.java index 003fb2334..abc86d57c 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/Introspection.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/Introspection.java @@ -5,15 +5,15 @@ import static com.gusto.embedded_api.operations.Operations.RequestOperation; +import com.gusto.embedded_api.models.operations.GetV1TokenInfoHeaderXGustoAPIVersion; import com.gusto.embedded_api.models.operations.GetV1TokenInfoRequest; import com.gusto.embedded_api.models.operations.GetV1TokenInfoRequestBuilder; import com.gusto.embedded_api.models.operations.GetV1TokenInfoResponse; -import com.gusto.embedded_api.models.operations.HeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.OauthAccessTokenHeaderXGustoAPIVersion; import com.gusto.embedded_api.models.operations.OauthAccessTokenRequest; import com.gusto.embedded_api.models.operations.OauthAccessTokenRequestBody; import com.gusto.embedded_api.models.operations.OauthAccessTokenRequestBuilder; import com.gusto.embedded_api.models.operations.OauthAccessTokenResponse; -import com.gusto.embedded_api.models.operations.XGustoAPIVersion; import com.gusto.embedded_api.operations.GetV1TokenInfo; import com.gusto.embedded_api.operations.OauthAccessToken; import com.gusto.embedded_api.utils.Headers; @@ -39,6 +39,52 @@ public AsyncIntrospection async() { return asyncSDK; } + /** + * Create a System Access Token or Refresh an Access Token + * + *

    Creates a system access token or refreshes an oauth access token + * + * @return The call builder + */ + public OauthAccessTokenRequestBuilder oauthAccessToken() { + return new OauthAccessTokenRequestBuilder(sdkConfiguration); + } + + /** + * Create a System Access Token or Refresh an Access Token + * + *

    Creates a system access token or refreshes an oauth access token + * + * @param requestBody + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public OauthAccessTokenResponse oauthAccessToken(OauthAccessTokenRequestBody requestBody) { + return oauthAccessToken(Optional.empty(), requestBody); + } + + /** + * Create a System Access Token or Refresh an Access Token + * + *

    Creates a system access token or refreshes an oauth access token + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param requestBody + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public OauthAccessTokenResponse oauthAccessToken(Optional xGustoAPIVersion, OauthAccessTokenRequestBody requestBody) { + OauthAccessTokenRequest request = + OauthAccessTokenRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .requestBody(requestBody) + .build(); + RequestOperation operation + = new OauthAccessToken.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + /** * Get info about the current access token * @@ -86,7 +132,7 @@ public GetV1TokenInfoResponse getInfoDirect() { * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1TokenInfoResponse getInfo(Optional xGustoAPIVersion) { + public GetV1TokenInfoResponse getInfo(Optional xGustoAPIVersion) { GetV1TokenInfoRequest request = GetV1TokenInfoRequest .builder() @@ -97,50 +143,4 @@ public GetV1TokenInfoResponse getInfo(Optional xGust return operation.handleResponse(operation.doRequest(request)); } - /** - * Create a System Access Token or Refresh an Access Token - * - *

    Creates a system access token or refreshes an oauth access token - * - * @return The call builder - */ - public OauthAccessTokenRequestBuilder oauthAccessToken() { - return new OauthAccessTokenRequestBuilder(sdkConfiguration); - } - - /** - * Create a System Access Token or Refresh an Access Token - * - *

    Creates a system access token or refreshes an oauth access token - * - * @param requestBody - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public OauthAccessTokenResponse oauthAccessToken(OauthAccessTokenRequestBody requestBody) { - return oauthAccessToken(Optional.empty(), requestBody); - } - - /** - * Create a System Access Token or Refresh an Access Token - * - *

    Creates a system access token or refreshes an oauth access token - * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param requestBody - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public OauthAccessTokenResponse oauthAccessToken(Optional xGustoAPIVersion, OauthAccessTokenRequestBody requestBody) { - OauthAccessTokenRequest request = - OauthAccessTokenRequest - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .requestBody(requestBody) - .build(); - RequestOperation operation - = new OauthAccessToken.Sync(sdkConfiguration, _headers); - return operation.handleResponse(operation.doRequest(request)); - } - } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/JobsAndCompensations.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/JobsAndCompensations.java index fbff180a3..4bbf82b24 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/JobsAndCompensations.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/JobsAndCompensations.java @@ -83,680 +83,680 @@ public AsyncJobsAndCompensations async() { } /** - * Get jobs for an employee - * - *

    Get all of the jobs that an employee holds. - * Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee - * pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, - * `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope - * is included. This allows you to access employee and job metadata without exposing pay rates. - * - *

    Compensation data in the response requires the `compensations:read` scope. - * - *

    scope: `jobs:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The call builder - */ - public GetV1EmployeesEmployeeIdJobsRequestBuilder getJobs() { - return new GetV1EmployeesEmployeeIdJobsRequestBuilder(sdkConfiguration); - } - - /** - * Get jobs for an employee - * - *

    Get all of the jobs that an employee holds. - * Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee - * pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, - * `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope - * is included. This allows you to access employee and job metadata without exposing pay rates. - * - *

    Compensation data in the response requires the `compensations:read` scope. - * - *

    scope: `jobs:read` + * Get compensations for a job * - *

    If set, this operation will use Security#companyAccessAuth from the global security. + *

    Compensations contain information on how much is paid out for a job. Jobs may have many + * compensations, but only one that is active. The current compensation is the one with the most recent + * `effective_date`. * - * @param request The request object containing all the parameters for the API call. - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public GetV1EmployeesEmployeeIdJobsResponse getJobs(GetV1EmployeesEmployeeIdJobsRequest request) { - RequestOperation operation - = new GetV1EmployeesEmployeeIdJobs.Sync(sdkConfiguration, _headers); - return operation.handleResponse(operation.doRequest(request)); - } - - /** - * Create a job + *

    *Note: Currently the API does not support creating multiple compensations per job - creating a + * compensation with the same job_uuid as another will fail with a relevant error.* * - *

    Create a job. + *

    Use `flsa_status` to determine if an employee is eligible for overtime + * By default the API returns only the current compensation - use the `include` parameter to return all + * compensations. * - *

    scope: `jobs:write` + *

    scope: `compensations:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public PostV1EmployeesEmployeeIdJobsRequestBuilder createJob() { - return new PostV1EmployeesEmployeeIdJobsRequestBuilder(sdkConfiguration); + public GetV1JobsJobIdCompensationsRequestBuilder getCompensations() { + return new GetV1JobsJobIdCompensationsRequestBuilder(sdkConfiguration); } /** - * Create a job - * - *

    Create a job. - * - *

    scope: `jobs:write` + * Get compensations for a job * - *

    If set, this operation will use Security#companyAccessAuth from the global security. + *

    Compensations contain information on how much is paid out for a job. Jobs may have many + * compensations, but only one that is active. The current compensation is the one with the most recent + * `effective_date`. * - * @param employeeId The UUID of the employee - * @param jobsCreateRequestBody Request body for creating a job. - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public PostV1EmployeesEmployeeIdJobsResponse createJob(String employeeId, JobsCreateRequestBody jobsCreateRequestBody) { - return createJob(employeeId, Optional.empty(), jobsCreateRequestBody); - } - - /** - * Create a job + *

    *Note: Currently the API does not support creating multiple compensations per job - creating a + * compensation with the same job_uuid as another will fail with a relevant error.* * - *

    Create a job. + *

    Use `flsa_status` to determine if an employee is eligible for overtime + * By default the API returns only the current compensation - use the `include` parameter to return all + * compensations. * - *

    scope: `jobs:write` + *

    scope: `compensations:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param employeeId The UUID of the employee - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param jobsCreateRequestBody Request body for creating a job. + * @param request The request object containing all the parameters for the API call. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostV1EmployeesEmployeeIdJobsResponse createJob( - String employeeId, Optional xGustoAPIVersion, - JobsCreateRequestBody jobsCreateRequestBody) { - PostV1EmployeesEmployeeIdJobsRequest request = - PostV1EmployeesEmployeeIdJobsRequest - .builder() - .employeeId(employeeId) - .xGustoAPIVersion(xGustoAPIVersion) - .jobsCreateRequestBody(jobsCreateRequestBody) - .build(); - RequestOperation operation - = new PostV1EmployeesEmployeeIdJobs.Sync(sdkConfiguration, _headers); + public GetV1JobsJobIdCompensationsResponse getCompensations(GetV1JobsJobIdCompensationsRequest request) { + RequestOperation operation + = new GetV1JobsJobIdCompensations.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Get a job + * Create a compensation * - *

    Get a job. + *

    Compensations contain information on how much is paid out for a job. Jobs may have many + * compensations, but only one that is active. The current compensation is the one with the most recent + * `effective_date`. * - *

    Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee - * pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, - * `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope - * is included. This allows you to access employee and job metadata without exposing pay rates. + *

    ### Prerequisites + * Before calling this endpoint: + * 1. A [job](ref:post-v1-jobs-job_id) must exist for the employee * - *

    Compensation data in the response requires the `compensations:read` scope. + *

    ### Webhooks + * - `employee_job_compensation.created`: Fires when a compensation is successfully created * - *

    scope: `jobs:read` + *

    scope: `compensations:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public GetV1JobsJobIdRequestBuilder getJob() { - return new GetV1JobsJobIdRequestBuilder(sdkConfiguration); + public PostV1CompensationsCompensationIdRequestBuilder createCompensation() { + return new PostV1CompensationsCompensationIdRequestBuilder(sdkConfiguration); } /** - * Get a job + * Create a compensation * - *

    Get a job. + *

    Compensations contain information on how much is paid out for a job. Jobs may have many + * compensations, but only one that is active. The current compensation is the one with the most recent + * `effective_date`. * - *

    Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee - * pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, - * `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope - * is included. This allows you to access employee and job metadata without exposing pay rates. + *

    ### Prerequisites + * Before calling this endpoint: + * 1. A [job](ref:post-v1-jobs-job_id) must exist for the employee * - *

    Compensation data in the response requires the `compensations:read` scope. + *

    ### Webhooks + * - `employee_job_compensation.created`: Fires when a compensation is successfully created * - *

    scope: `jobs:read` + *

    scope: `compensations:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param jobId The UUID of the job + * @param compensationsRequestBody Request body for creating a compensation. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1JobsJobIdResponse getJob(String jobId) { - return getJob(jobId, Optional.empty(), Optional.empty()); + public PostV1CompensationsCompensationIdResponse createCompensation(String jobId, CompensationsRequestBody compensationsRequestBody) { + return createCompensation(Optional.empty(), jobId, compensationsRequestBody); } /** - * Get a job + * Create a compensation * - *

    Get a job. + *

    Compensations contain information on how much is paid out for a job. Jobs may have many + * compensations, but only one that is active. The current compensation is the one with the most recent + * `effective_date`. * - *

    Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee - * pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, - * `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope - * is included. This allows you to access employee and job metadata without exposing pay rates. + *

    ### Prerequisites + * Before calling this endpoint: + * 1. A [job](ref:post-v1-jobs-job_id) must exist for the employee * - *

    Compensation data in the response requires the `compensations:read` scope. + *

    ### Webhooks + * - `employee_job_compensation.created`: Fires when a compensation is successfully created * - *

    scope: `jobs:read` + *

    scope: `compensations:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param jobId The UUID of the job - * @param include Available options: - * - all_compensations: Include all effective dated compensations for each job instead of only the current compensation - * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param jobId The UUID of the job + * @param compensationsRequestBody Request body for creating a compensation. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1JobsJobIdResponse getJob( - String jobId, Optional include, - Optional xGustoAPIVersion) { - GetV1JobsJobIdRequest request = - GetV1JobsJobIdRequest + public PostV1CompensationsCompensationIdResponse createCompensation( + Optional xGustoAPIVersion, String jobId, + CompensationsRequestBody compensationsRequestBody) { + PostV1CompensationsCompensationIdRequest request = + PostV1CompensationsCompensationIdRequest .builder() - .jobId(jobId) - .include(include) .xGustoAPIVersion(xGustoAPIVersion) + .jobId(jobId) + .compensationsRequestBody(compensationsRequestBody) .build(); - RequestOperation operation - = new GetV1JobsJobId.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PostV1CompensationsCompensationId.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Update a job + * Get a compensation * - *

    Update a job. + *

    Compensations contain information on how much is paid out for a job. Jobs may have many + * compensations, but only one that is active. The current compensation is the one with the most recent + * `effective_date`. * - *

    scope: `jobs:write` + *

    scope: `compensations:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public PutV1JobsJobIdRequestBuilder update() { - return new PutV1JobsJobIdRequestBuilder(sdkConfiguration); + public GetV1CompensationsCompensationIdRequestBuilder getCompensation() { + return new GetV1CompensationsCompensationIdRequestBuilder(sdkConfiguration); } /** - * Update a job + * Get a compensation * - *

    Update a job. + *

    Compensations contain information on how much is paid out for a job. Jobs may have many + * compensations, but only one that is active. The current compensation is the one with the most recent + * `effective_date`. * - *

    scope: `jobs:write` + *

    scope: `compensations:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param jobId The UUID of the job - * @param jobsUpdateRequestBody Request body for updating a job. + * @param compensationId The UUID of the compensation * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1JobsJobIdResponse update(String jobId, JobsUpdateRequestBody jobsUpdateRequestBody) { - return update(jobId, Optional.empty(), jobsUpdateRequestBody); + public GetV1CompensationsCompensationIdResponse getCompensation(String compensationId) { + return getCompensation(Optional.empty(), compensationId); } /** - * Update a job + * Get a compensation * - *

    Update a job. + *

    Compensations contain information on how much is paid out for a job. Jobs may have many + * compensations, but only one that is active. The current compensation is the one with the most recent + * `effective_date`. * - *

    scope: `jobs:write` + *

    scope: `compensations:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param jobId The UUID of the job * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param jobsUpdateRequestBody Request body for updating a job. + * @param compensationId The UUID of the compensation * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1JobsJobIdResponse update( - String jobId, Optional xGustoAPIVersion, - JobsUpdateRequestBody jobsUpdateRequestBody) { - PutV1JobsJobIdRequest request = - PutV1JobsJobIdRequest + public GetV1CompensationsCompensationIdResponse getCompensation(Optional xGustoAPIVersion, String compensationId) { + GetV1CompensationsCompensationIdRequest request = + GetV1CompensationsCompensationIdRequest .builder() - .jobId(jobId) .xGustoAPIVersion(xGustoAPIVersion) - .jobsUpdateRequestBody(jobsUpdateRequestBody) + .compensationId(compensationId) .build(); - RequestOperation operation - = new PutV1JobsJobId.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new GetV1CompensationsCompensationId.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Delete an individual job + * Update a compensation * - *

    Deletes a specific job that an employee holds. + *

    Compensations contain information on how much is paid out for a job. Jobs may have many + * compensations, but only one that is active. The current compensation is the one with the most recent + * `effective_date`. * - *

    scope: `jobs:write` + *

    ### Webhooks + * - `employee_job_compensation.updated`: Fires when a compensation is successfully updated + * + *

    scope: `compensations:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public DeleteV1JobsJobIdRequestBuilder delete() { - return new DeleteV1JobsJobIdRequestBuilder(sdkConfiguration); + public PutV1CompensationsCompensationIdRequestBuilder updateCompensation() { + return new PutV1CompensationsCompensationIdRequestBuilder(sdkConfiguration); } /** - * Delete an individual job + * Update a compensation * - *

    Deletes a specific job that an employee holds. + *

    Compensations contain information on how much is paid out for a job. Jobs may have many + * compensations, but only one that is active. The current compensation is the one with the most recent + * `effective_date`. * - *

    scope: `jobs:write` + *

    ### Webhooks + * - `employee_job_compensation.updated`: Fires when a compensation is successfully updated + * + *

    scope: `compensations:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param jobId The UUID of the job + * @param compensationId The UUID of the compensation + * @param compensationsUpdateRequestBody Request body for updating a compensation. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public DeleteV1JobsJobIdResponse delete(String jobId) { - return delete(jobId, Optional.empty()); + public PutV1CompensationsCompensationIdResponse updateCompensation(String compensationId, CompensationsUpdateRequestBody compensationsUpdateRequestBody) { + return updateCompensation(Optional.empty(), compensationId, compensationsUpdateRequestBody); } /** - * Delete an individual job + * Update a compensation * - *

    Deletes a specific job that an employee holds. + *

    Compensations contain information on how much is paid out for a job. Jobs may have many + * compensations, but only one that is active. The current compensation is the one with the most recent + * `effective_date`. * - *

    scope: `jobs:write` + *

    ### Webhooks + * - `employee_job_compensation.updated`: Fires when a compensation is successfully updated + * + *

    scope: `compensations:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param jobId The UUID of the job * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param compensationId The UUID of the compensation + * @param compensationsUpdateRequestBody Request body for updating a compensation. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public DeleteV1JobsJobIdResponse delete(String jobId, Optional xGustoAPIVersion) { - DeleteV1JobsJobIdRequest request = - DeleteV1JobsJobIdRequest + public PutV1CompensationsCompensationIdResponse updateCompensation( + Optional xGustoAPIVersion, String compensationId, + CompensationsUpdateRequestBody compensationsUpdateRequestBody) { + PutV1CompensationsCompensationIdRequest request = + PutV1CompensationsCompensationIdRequest .builder() - .jobId(jobId) .xGustoAPIVersion(xGustoAPIVersion) + .compensationId(compensationId) + .compensationsUpdateRequestBody(compensationsUpdateRequestBody) .build(); - RequestOperation operation - = new DeleteV1JobsJobId.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PutV1CompensationsCompensationId.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Get compensations for a job + * Delete a compensation * *

    Compensations contain information on how much is paid out for a job. Jobs may have many * compensations, but only one that is active. The current compensation is the one with the most recent * `effective_date`. * - *

    *Note: Currently the API does not support creating multiple compensations per job - creating a - * compensation with the same job_uuid as another will fail with a relevant error.* + *

    This endpoint deletes a compensation for a job that hasn't been processed on payroll. * - *

    Use `flsa_status` to determine if an employee is eligible for overtime - * By default the API returns only the current compensation - use the `include` parameter to return all - * compensations. + *

    ### Webhooks + * - `employee_job_compensation.destroyed`: Fires when a compensation is successfully deleted * - *

    scope: `compensations:read` + *

    scope: `compensations:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public GetV1JobsJobIdCompensationsRequestBuilder getCompensations() { - return new GetV1JobsJobIdCompensationsRequestBuilder(sdkConfiguration); + public DeleteV1CompensationsCompensationIdRequestBuilder deleteCompensation() { + return new DeleteV1CompensationsCompensationIdRequestBuilder(sdkConfiguration); } /** - * Get compensations for a job + * Delete a compensation * *

    Compensations contain information on how much is paid out for a job. Jobs may have many * compensations, but only one that is active. The current compensation is the one with the most recent * `effective_date`. * - *

    *Note: Currently the API does not support creating multiple compensations per job - creating a - * compensation with the same job_uuid as another will fail with a relevant error.* + *

    This endpoint deletes a compensation for a job that hasn't been processed on payroll. * - *

    Use `flsa_status` to determine if an employee is eligible for overtime - * By default the API returns only the current compensation - use the `include` parameter to return all - * compensations. + *

    ### Webhooks + * - `employee_job_compensation.destroyed`: Fires when a compensation is successfully deleted * - *

    scope: `compensations:read` + *

    scope: `compensations:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param request The request object containing all the parameters for the API call. + * @param compensationId The UUID of the compensation * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1JobsJobIdCompensationsResponse getCompensations(GetV1JobsJobIdCompensationsRequest request) { - RequestOperation operation - = new GetV1JobsJobIdCompensations.Sync(sdkConfiguration, _headers); - return operation.handleResponse(operation.doRequest(request)); + public DeleteV1CompensationsCompensationIdResponse deleteCompensation(String compensationId) { + return deleteCompensation(Optional.empty(), compensationId); } /** - * Create a compensation + * Delete a compensation * *

    Compensations contain information on how much is paid out for a job. Jobs may have many * compensations, but only one that is active. The current compensation is the one with the most recent * `effective_date`. * - *

    ### Prerequisites - * Before calling this endpoint: - * 1. A [job](ref:post-v1-jobs-job_id) must exist for the employee + *

    This endpoint deletes a compensation for a job that hasn't been processed on payroll. * *

    ### Webhooks - * - `employee_job_compensation.created`: Fires when a compensation is successfully created + * - `employee_job_compensation.destroyed`: Fires when a compensation is successfully deleted * *

    scope: `compensations:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param compensationId The UUID of the compensation + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public DeleteV1CompensationsCompensationIdResponse deleteCompensation(Optional xGustoAPIVersion, String compensationId) { + DeleteV1CompensationsCompensationIdRequest request = + DeleteV1CompensationsCompensationIdRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .compensationId(compensationId) + .build(); + RequestOperation operation + = new DeleteV1CompensationsCompensationId.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + + /** + * Get a job + * + *

    Get a job. + * + *

    Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee + * pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, + * `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope + * is included. This allows you to access employee and job metadata without exposing pay rates. + * + *

    Compensation data in the response requires the `compensations:read` scope. + * + *

    scope: `jobs:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * * @return The call builder */ - public PostV1CompensationsCompensationIdRequestBuilder createCompensation() { - return new PostV1CompensationsCompensationIdRequestBuilder(sdkConfiguration); + public GetV1JobsJobIdRequestBuilder getJob() { + return new GetV1JobsJobIdRequestBuilder(sdkConfiguration); } /** - * Create a compensation + * Get a job * - *

    Compensations contain information on how much is paid out for a job. Jobs may have many - * compensations, but only one that is active. The current compensation is the one with the most recent - * `effective_date`. + *

    Get a job. * - *

    ### Prerequisites - * Before calling this endpoint: - * 1. A [job](ref:post-v1-jobs-job_id) must exist for the employee + *

    Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee + * pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, + * `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope + * is included. This allows you to access employee and job metadata without exposing pay rates. * - *

    ### Webhooks - * - `employee_job_compensation.created`: Fires when a compensation is successfully created + *

    Compensation data in the response requires the `compensations:read` scope. * - *

    scope: `compensations:write` + *

    scope: `jobs:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param jobId The UUID of the job - * @param compensationsRequestBody Request body for creating a compensation. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostV1CompensationsCompensationIdResponse createCompensation(String jobId, CompensationsRequestBody compensationsRequestBody) { - return createCompensation(Optional.empty(), jobId, compensationsRequestBody); + public GetV1JobsJobIdResponse getJob(String jobId) { + return getJob(Optional.empty(), jobId, Optional.empty()); } /** - * Create a compensation + * Get a job * - *

    Compensations contain information on how much is paid out for a job. Jobs may have many - * compensations, but only one that is active. The current compensation is the one with the most recent - * `effective_date`. + *

    Get a job. * - *

    ### Prerequisites - * Before calling this endpoint: - * 1. A [job](ref:post-v1-jobs-job_id) must exist for the employee + *

    Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee + * pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, + * `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope + * is included. This allows you to access employee and job metadata without exposing pay rates. * - *

    ### Webhooks - * - `employee_job_compensation.created`: Fires when a compensation is successfully created + *

    Compensation data in the response requires the `compensations:read` scope. * - *

    scope: `compensations:write` + *

    scope: `jobs:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param jobId The UUID of the job - * @param compensationsRequestBody Request body for creating a compensation. + * @param include Available options: + * - all_compensations: Include all effective dated compensations for each job instead of only the current compensation + * * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostV1CompensationsCompensationIdResponse createCompensation( - Optional xGustoAPIVersion, String jobId, - CompensationsRequestBody compensationsRequestBody) { - PostV1CompensationsCompensationIdRequest request = - PostV1CompensationsCompensationIdRequest + public GetV1JobsJobIdResponse getJob( + Optional xGustoAPIVersion, String jobId, + Optional include) { + GetV1JobsJobIdRequest request = + GetV1JobsJobIdRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .jobId(jobId) - .compensationsRequestBody(compensationsRequestBody) + .include(include) .build(); - RequestOperation operation - = new PostV1CompensationsCompensationId.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new GetV1JobsJobId.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Get a compensation + * Update a job * - *

    Compensations contain information on how much is paid out for a job. Jobs may have many - * compensations, but only one that is active. The current compensation is the one with the most recent - * `effective_date`. + *

    Update a job. * - *

    scope: `compensations:read` + *

    scope: `jobs:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public GetV1CompensationsCompensationIdRequestBuilder getCompensation() { - return new GetV1CompensationsCompensationIdRequestBuilder(sdkConfiguration); + public PutV1JobsJobIdRequestBuilder update() { + return new PutV1JobsJobIdRequestBuilder(sdkConfiguration); } /** - * Get a compensation + * Update a job * - *

    Compensations contain information on how much is paid out for a job. Jobs may have many - * compensations, but only one that is active. The current compensation is the one with the most recent - * `effective_date`. + *

    Update a job. * - *

    scope: `compensations:read` + *

    scope: `jobs:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param compensationId The UUID of the compensation + * @param jobId The UUID of the job + * @param jobsUpdateRequestBody Request body for updating a job. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1CompensationsCompensationIdResponse getCompensation(String compensationId) { - return getCompensation(Optional.empty(), compensationId); + public PutV1JobsJobIdResponse update(String jobId, JobsUpdateRequestBody jobsUpdateRequestBody) { + return update(Optional.empty(), jobId, jobsUpdateRequestBody); } /** - * Get a compensation + * Update a job * - *

    Compensations contain information on how much is paid out for a job. Jobs may have many - * compensations, but only one that is active. The current compensation is the one with the most recent - * `effective_date`. + *

    Update a job. * - *

    scope: `compensations:read` + *

    scope: `jobs:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param compensationId The UUID of the compensation + * @param jobId The UUID of the job + * @param jobsUpdateRequestBody Request body for updating a job. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1CompensationsCompensationIdResponse getCompensation(Optional xGustoAPIVersion, String compensationId) { - GetV1CompensationsCompensationIdRequest request = - GetV1CompensationsCompensationIdRequest + public PutV1JobsJobIdResponse update( + Optional xGustoAPIVersion, String jobId, + JobsUpdateRequestBody jobsUpdateRequestBody) { + PutV1JobsJobIdRequest request = + PutV1JobsJobIdRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .compensationId(compensationId) + .jobId(jobId) + .jobsUpdateRequestBody(jobsUpdateRequestBody) .build(); - RequestOperation operation - = new GetV1CompensationsCompensationId.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PutV1JobsJobId.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Update a compensation - * - *

    Compensations contain information on how much is paid out for a job. Jobs may have many - * compensations, but only one that is active. The current compensation is the one with the most recent - * `effective_date`. + * Delete an individual job * - *

    ### Webhooks - * - `employee_job_compensation.updated`: Fires when a compensation is successfully updated + *

    Deletes a specific job that an employee holds. * - *

    scope: `compensations:write` + *

    scope: `jobs:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public PutV1CompensationsCompensationIdRequestBuilder updateCompensation() { - return new PutV1CompensationsCompensationIdRequestBuilder(sdkConfiguration); + public DeleteV1JobsJobIdRequestBuilder delete() { + return new DeleteV1JobsJobIdRequestBuilder(sdkConfiguration); } /** - * Update a compensation - * - *

    Compensations contain information on how much is paid out for a job. Jobs may have many - * compensations, but only one that is active. The current compensation is the one with the most recent - * `effective_date`. + * Delete an individual job * - *

    ### Webhooks - * - `employee_job_compensation.updated`: Fires when a compensation is successfully updated + *

    Deletes a specific job that an employee holds. * - *

    scope: `compensations:write` + *

    scope: `jobs:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param compensationId The UUID of the compensation - * @param compensationsUpdateRequestBody Request body for updating a compensation. + * @param jobId The UUID of the job * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1CompensationsCompensationIdResponse updateCompensation(String compensationId, CompensationsUpdateRequestBody compensationsUpdateRequestBody) { - return updateCompensation(Optional.empty(), compensationId, compensationsUpdateRequestBody); + public DeleteV1JobsJobIdResponse delete(String jobId) { + return delete(Optional.empty(), jobId); } /** - * Update a compensation - * - *

    Compensations contain information on how much is paid out for a job. Jobs may have many - * compensations, but only one that is active. The current compensation is the one with the most recent - * `effective_date`. + * Delete an individual job * - *

    ### Webhooks - * - `employee_job_compensation.updated`: Fires when a compensation is successfully updated + *

    Deletes a specific job that an employee holds. * - *

    scope: `compensations:write` + *

    scope: `jobs:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param compensationId The UUID of the compensation - * @param compensationsUpdateRequestBody Request body for updating a compensation. + * @param jobId The UUID of the job * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1CompensationsCompensationIdResponse updateCompensation( - Optional xGustoAPIVersion, String compensationId, - CompensationsUpdateRequestBody compensationsUpdateRequestBody) { - PutV1CompensationsCompensationIdRequest request = - PutV1CompensationsCompensationIdRequest + public DeleteV1JobsJobIdResponse delete(Optional xGustoAPIVersion, String jobId) { + DeleteV1JobsJobIdRequest request = + DeleteV1JobsJobIdRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .compensationId(compensationId) - .compensationsUpdateRequestBody(compensationsUpdateRequestBody) + .jobId(jobId) .build(); - RequestOperation operation - = new PutV1CompensationsCompensationId.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new DeleteV1JobsJobId.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Delete a compensation - * - *

    Compensations contain information on how much is paid out for a job. Jobs may have many - * compensations, but only one that is active. The current compensation is the one with the most recent - * `effective_date`. + * Get jobs for an employee * - *

    This endpoint deletes a compensation for a job that hasn't been processed on payroll. + *

    Get all of the jobs that an employee holds. + * Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee + * pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, + * `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope + * is included. This allows you to access employee and job metadata without exposing pay rates. * - *

    ### Webhooks - * - `employee_job_compensation.destroyed`: Fires when a compensation is successfully deleted + *

    Compensation data in the response requires the `compensations:read` scope. * - *

    scope: `compensations:write` + *

    scope: `jobs:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public DeleteV1CompensationsCompensationIdRequestBuilder deleteCompensation() { - return new DeleteV1CompensationsCompensationIdRequestBuilder(sdkConfiguration); + public GetV1EmployeesEmployeeIdJobsRequestBuilder getJobs() { + return new GetV1EmployeesEmployeeIdJobsRequestBuilder(sdkConfiguration); } /** - * Delete a compensation - * - *

    Compensations contain information on how much is paid out for a job. Jobs may have many - * compensations, but only one that is active. The current compensation is the one with the most recent - * `effective_date`. + * Get jobs for an employee * - *

    This endpoint deletes a compensation for a job that hasn't been processed on payroll. + *

    Get all of the jobs that an employee holds. + * Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee + * pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, + * `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope + * is included. This allows you to access employee and job metadata without exposing pay rates. * - *

    ### Webhooks - * - `employee_job_compensation.destroyed`: Fires when a compensation is successfully deleted + *

    Compensation data in the response requires the `compensations:read` scope. * - *

    scope: `compensations:write` + *

    scope: `jobs:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param compensationId The UUID of the compensation + * @param request The request object containing all the parameters for the API call. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public DeleteV1CompensationsCompensationIdResponse deleteCompensation(String compensationId) { - return deleteCompensation(Optional.empty(), compensationId); + public GetV1EmployeesEmployeeIdJobsResponse getJobs(GetV1EmployeesEmployeeIdJobsRequest request) { + RequestOperation operation + = new GetV1EmployeesEmployeeIdJobs.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); } /** - * Delete a compensation + * Create a job * - *

    Compensations contain information on how much is paid out for a job. Jobs may have many - * compensations, but only one that is active. The current compensation is the one with the most recent - * `effective_date`. + *

    Create a job. * - *

    This endpoint deletes a compensation for a job that hasn't been processed on payroll. + *

    scope: `jobs:write` * - *

    ### Webhooks - * - `employee_job_compensation.destroyed`: Fires when a compensation is successfully deleted + *

    If set, this operation will use Security#companyAccessAuth from the global security. * - *

    scope: `compensations:write` + * @return The call builder + */ + public PostV1EmployeesEmployeeIdJobsRequestBuilder createJob() { + return new PostV1EmployeesEmployeeIdJobsRequestBuilder(sdkConfiguration); + } + + /** + * Create a job + * + *

    Create a job. + * + *

    scope: `jobs:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param employeeId The UUID of the employee + * @param jobsCreateRequestBody Request body for creating a job. + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public PostV1EmployeesEmployeeIdJobsResponse createJob(String employeeId, JobsCreateRequestBody jobsCreateRequestBody) { + return createJob(Optional.empty(), employeeId, jobsCreateRequestBody); + } + + /** + * Create a job + * + *

    Create a job. + * + *

    scope: `jobs:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param compensationId The UUID of the compensation + * @param employeeId The UUID of the employee + * @param jobsCreateRequestBody Request body for creating a job. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public DeleteV1CompensationsCompensationIdResponse deleteCompensation(Optional xGustoAPIVersion, String compensationId) { - DeleteV1CompensationsCompensationIdRequest request = - DeleteV1CompensationsCompensationIdRequest + public PostV1EmployeesEmployeeIdJobsResponse createJob( + Optional xGustoAPIVersion, String employeeId, + JobsCreateRequestBody jobsCreateRequestBody) { + PostV1EmployeesEmployeeIdJobsRequest request = + PostV1EmployeesEmployeeIdJobsRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .compensationId(compensationId) + .employeeId(employeeId) + .jobsCreateRequestBody(jobsCreateRequestBody) .build(); - RequestOperation operation - = new DeleteV1CompensationsCompensationId.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PostV1EmployeesEmployeeIdJobs.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/Locations.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/Locations.java index e46b30ae5..9d206f75c 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/Locations.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/Locations.java @@ -58,14 +58,9 @@ public AsyncLocations async() { } /** - * Get all company locations - * - *

    Retrieves all company locations (addresses) associated with a company: mailing addresses, filing - * addresses, or work locations. A single address may serve multiple, or all, purposes. + * Get minimum wages for a location * - *

    Since all company locations are subsets of locations, use the Locations endpoints to - * [get](ref:get-v1-locations-location_id) or [update](ref:put-v1-locations-location_id) an individual - * record. + *

    Get minimum wages for a location * *

    scope: `companies:read` * @@ -73,148 +68,54 @@ public AsyncLocations async() { * * @return The call builder */ - public GetV1CompaniesCompanyIdLocationsRequestBuilder get() { - return new GetV1CompaniesCompanyIdLocationsRequestBuilder(sdkConfiguration); + public GetV1LocationsLocationUuidMinimumWagesRequestBuilder getMinimumWages() { + return new GetV1LocationsLocationUuidMinimumWagesRequestBuilder(sdkConfiguration); } /** - * Get all company locations - * - *

    Retrieves all company locations (addresses) associated with a company: mailing addresses, filing - * addresses, or work locations. A single address may serve multiple, or all, purposes. + * Get minimum wages for a location * - *

    Since all company locations are subsets of locations, use the Locations endpoints to - * [get](ref:get-v1-locations-location_id) or [update](ref:put-v1-locations-location_id) an individual - * record. + *

    Get minimum wages for a location * *

    scope: `companies:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company + * @param locationUuid The UUID of the location * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1CompaniesCompanyIdLocationsResponse get(String companyId) { - return get(Optional.empty(), companyId, Optional.empty(), - Optional.empty()); + public GetV1LocationsLocationUuidMinimumWagesResponse getMinimumWages(String locationUuid) { + return getMinimumWages(Optional.empty(), locationUuid, Optional.empty()); } /** - * Get all company locations - * - *

    Retrieves all company locations (addresses) associated with a company: mailing addresses, filing - * addresses, or work locations. A single address may serve multiple, or all, purposes. + * Get minimum wages for a location * - *

    Since all company locations are subsets of locations, use the Locations endpoints to - * [get](ref:get-v1-locations-location_id) or [update](ref:put-v1-locations-location_id) an individual - * record. + *

    Get minimum wages for a location * *

    scope: `companies:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyId The UUID of the company - * @param page The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - * @param per Number of objects per page. For majority of endpoints will default to 25 - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public GetV1CompaniesCompanyIdLocationsResponse get( - Optional xGustoAPIVersion, String companyId, - Optional page, Optional per) { - GetV1CompaniesCompanyIdLocationsRequest request = - GetV1CompaniesCompanyIdLocationsRequest - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .companyId(companyId) - .page(page) - .per(per) - .build(); - RequestOperation operation - = new GetV1CompaniesCompanyIdLocations.Sync(sdkConfiguration, _headers); - return operation.handleResponse(operation.doRequest(request)); - } - - /** - * Create a company location - * - *

    Create a company location, which represents any address associated with a company: mailing - * addresses, filing addresses, or work locations. A single address may serve multiple, or all, - * purposes. - * - *

    Since all company locations are subsets of locations, use the Locations endpoints to - * [get](ref:get-v1-locations-location_id) or [update](ref:put-v1-locations-location_id) an individual - * record. - * - *

    scope: `companies:write` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The call builder - */ - public PostV1CompaniesCompanyIdLocationsRequestBuilder create() { - return new PostV1CompaniesCompanyIdLocationsRequestBuilder(sdkConfiguration); - } - - /** - * Create a company location - * - *

    Create a company location, which represents any address associated with a company: mailing - * addresses, filing addresses, or work locations. A single address may serve multiple, or all, - * purposes. - * - *

    Since all company locations are subsets of locations, use the Locations endpoints to - * [get](ref:get-v1-locations-location_id) or [update](ref:put-v1-locations-location_id) an individual - * record. - * - *

    scope: `companies:write` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param companyId The UUID of the company - * @param companyLocationRequest Request body for creating a company location (company address). - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public PostV1CompaniesCompanyIdLocationsResponse create(String companyId, CompanyLocationRequest companyLocationRequest) { - return create(Optional.empty(), companyId, companyLocationRequest); - } - - /** - * Create a company location - * - *

    Create a company location, which represents any address associated with a company: mailing - * addresses, filing addresses, or work locations. A single address may serve multiple, or all, - * purposes. - * - *

    Since all company locations are subsets of locations, use the Locations endpoints to - * [get](ref:get-v1-locations-location_id) or [update](ref:put-v1-locations-location_id) an individual - * record. - * - *

    scope: `companies:write` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyId The UUID of the company - * @param companyLocationRequest Request body for creating a company location (company address). + * @param locationUuid The UUID of the location + * @param effectiveDate * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostV1CompaniesCompanyIdLocationsResponse create( - Optional xGustoAPIVersion, String companyId, - CompanyLocationRequest companyLocationRequest) { - PostV1CompaniesCompanyIdLocationsRequest request = - PostV1CompaniesCompanyIdLocationsRequest + public GetV1LocationsLocationUuidMinimumWagesResponse getMinimumWages( + Optional xGustoAPIVersion, String locationUuid, + Optional effectiveDate) { + GetV1LocationsLocationUuidMinimumWagesRequest request = + GetV1LocationsLocationUuidMinimumWagesRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .companyId(companyId) - .companyLocationRequest(companyLocationRequest) + .locationUuid(locationUuid) + .effectiveDate(effectiveDate) .build(); - RequestOperation operation - = new PostV1CompaniesCompanyIdLocations.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new GetV1LocationsLocationUuidMinimumWages.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } @@ -340,9 +241,14 @@ public PutV1LocationsLocationIdResponse update( } /** - * Get minimum wages for a location + * Get all company locations * - *

    Get minimum wages for a location + *

    Retrieves all company locations (addresses) associated with a company: mailing addresses, filing + * addresses, or work locations. A single address may serve multiple, or all, purposes. + * + *

    Since all company locations are subsets of locations, use the Locations endpoints to + * [get](ref:get-v1-locations-location_id) or [update](ref:put-v1-locations-location_id) an individual + * record. * *

    scope: `companies:read` * @@ -350,54 +256,148 @@ public PutV1LocationsLocationIdResponse update( * * @return The call builder */ - public GetV1LocationsLocationUuidMinimumWagesRequestBuilder getMinimumWages() { - return new GetV1LocationsLocationUuidMinimumWagesRequestBuilder(sdkConfiguration); + public GetV1CompaniesCompanyIdLocationsRequestBuilder get() { + return new GetV1CompaniesCompanyIdLocationsRequestBuilder(sdkConfiguration); } /** - * Get minimum wages for a location + * Get all company locations * - *

    Get minimum wages for a location + *

    Retrieves all company locations (addresses) associated with a company: mailing addresses, filing + * addresses, or work locations. A single address may serve multiple, or all, purposes. + * + *

    Since all company locations are subsets of locations, use the Locations endpoints to + * [get](ref:get-v1-locations-location_id) or [update](ref:put-v1-locations-location_id) an individual + * record. * *

    scope: `companies:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param locationUuid The UUID of the location + * @param companyId The UUID of the company * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1LocationsLocationUuidMinimumWagesResponse getMinimumWages(String locationUuid) { - return getMinimumWages(locationUuid, Optional.empty(), Optional.empty()); + public GetV1CompaniesCompanyIdLocationsResponse get(String companyId) { + return get(Optional.empty(), companyId, Optional.empty(), + Optional.empty()); } /** - * Get minimum wages for a location + * Get all company locations * - *

    Get minimum wages for a location + *

    Retrieves all company locations (addresses) associated with a company: mailing addresses, filing + * addresses, or work locations. A single address may serve multiple, or all, purposes. + * + *

    Since all company locations are subsets of locations, use the Locations endpoints to + * [get](ref:get-v1-locations-location_id) or [update](ref:put-v1-locations-location_id) an individual + * record. * *

    scope: `companies:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param locationUuid The UUID of the location * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param effectiveDate + * @param companyId The UUID of the company + * @param page The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + * @param per Number of objects per page. For majority of endpoints will default to 25 * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1LocationsLocationUuidMinimumWagesResponse getMinimumWages( - String locationUuid, Optional xGustoAPIVersion, - Optional effectiveDate) { - GetV1LocationsLocationUuidMinimumWagesRequest request = - GetV1LocationsLocationUuidMinimumWagesRequest + public GetV1CompaniesCompanyIdLocationsResponse get( + Optional xGustoAPIVersion, String companyId, + Optional page, Optional per) { + GetV1CompaniesCompanyIdLocationsRequest request = + GetV1CompaniesCompanyIdLocationsRequest .builder() - .locationUuid(locationUuid) .xGustoAPIVersion(xGustoAPIVersion) - .effectiveDate(effectiveDate) + .companyId(companyId) + .page(page) + .per(per) .build(); - RequestOperation operation - = new GetV1LocationsLocationUuidMinimumWages.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new GetV1CompaniesCompanyIdLocations.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + + /** + * Create a company location + * + *

    Create a company location, which represents any address associated with a company: mailing + * addresses, filing addresses, or work locations. A single address may serve multiple, or all, + * purposes. + * + *

    Since all company locations are subsets of locations, use the Locations endpoints to + * [get](ref:get-v1-locations-location_id) or [update](ref:put-v1-locations-location_id) an individual + * record. + * + *

    scope: `companies:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public PostV1CompaniesCompanyIdLocationsRequestBuilder create() { + return new PostV1CompaniesCompanyIdLocationsRequestBuilder(sdkConfiguration); + } + + /** + * Create a company location + * + *

    Create a company location, which represents any address associated with a company: mailing + * addresses, filing addresses, or work locations. A single address may serve multiple, or all, + * purposes. + * + *

    Since all company locations are subsets of locations, use the Locations endpoints to + * [get](ref:get-v1-locations-location_id) or [update](ref:put-v1-locations-location_id) an individual + * record. + * + *

    scope: `companies:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param companyId The UUID of the company + * @param companyLocationRequest Request body for creating a company location (company address). + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public PostV1CompaniesCompanyIdLocationsResponse create(String companyId, CompanyLocationRequest companyLocationRequest) { + return create(Optional.empty(), companyId, companyLocationRequest); + } + + /** + * Create a company location + * + *

    Create a company location, which represents any address associated with a company: mailing + * addresses, filing addresses, or work locations. A single address may serve multiple, or all, + * purposes. + * + *

    Since all company locations are subsets of locations, use the Locations endpoints to + * [get](ref:get-v1-locations-location_id) or [update](ref:put-v1-locations-location_id) an individual + * record. + * + *

    scope: `companies:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company + * @param companyLocationRequest Request body for creating a company location (company address). + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public PostV1CompaniesCompanyIdLocationsResponse create( + Optional xGustoAPIVersion, String companyId, + CompanyLocationRequest companyLocationRequest) { + PostV1CompaniesCompanyIdLocationsRequest request = + PostV1CompaniesCompanyIdLocationsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) + .companyLocationRequest(companyLocationRequest) + .build(); + RequestOperation operation + = new PostV1CompaniesCompanyIdLocations.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/MemberPortalInvitations.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/MemberPortalInvitations.java new file mode 100644 index 000000000..d0300f90c --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/MemberPortalInvitations.java @@ -0,0 +1,452 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api; + +import static com.gusto.embedded_api.operations.Operations.RequestOperation; + +import com.gusto.embedded_api.models.operations.DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest; +import com.gusto.embedded_api.models.operations.DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder; +import com.gusto.embedded_api.models.operations.DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse; +import com.gusto.embedded_api.models.operations.DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest; +import com.gusto.embedded_api.models.operations.DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder; +import com.gusto.embedded_api.models.operations.DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse; +import com.gusto.embedded_api.models.operations.GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetV1ContractorsContractorUuidMemberPortalInvitationsRequest; +import com.gusto.embedded_api.models.operations.GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder; +import com.gusto.embedded_api.models.operations.GetV1ContractorsContractorUuidMemberPortalInvitationsResponse; +import com.gusto.embedded_api.models.operations.GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest; +import com.gusto.embedded_api.models.operations.GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder; +import com.gusto.embedded_api.models.operations.GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse; +import com.gusto.embedded_api.models.operations.PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PostV1ContractorsContractorUuidMemberPortalInvitationsRequest; +import com.gusto.embedded_api.models.operations.PostV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder; +import com.gusto.embedded_api.models.operations.PostV1ContractorsContractorUuidMemberPortalInvitationsResponse; +import com.gusto.embedded_api.models.operations.PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest; +import com.gusto.embedded_api.models.operations.PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder; +import com.gusto.embedded_api.models.operations.PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse; +import com.gusto.embedded_api.operations.DeleteV1ContractorsContractorUuidMemberPortalInvitations; +import com.gusto.embedded_api.operations.DeleteV1EmployeesEmployeeIdMemberPortalInvitations; +import com.gusto.embedded_api.operations.GetV1ContractorsContractorUuidMemberPortalInvitations; +import com.gusto.embedded_api.operations.GetV1EmployeesEmployeeIdMemberPortalInvitations; +import com.gusto.embedded_api.operations.PostV1ContractorsContractorUuidMemberPortalInvitations; +import com.gusto.embedded_api.operations.PostV1EmployeesEmployeeIdMemberPortalInvitations; +import com.gusto.embedded_api.utils.Headers; +import java.lang.String; +import java.util.Optional; + + +public class MemberPortalInvitations { + private static final Headers _headers = Headers.EMPTY; + private final SDKConfiguration sdkConfiguration; + private final AsyncMemberPortalInvitations asyncSDK; + + MemberPortalInvitations(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + this.asyncSDK = new AsyncMemberPortalInvitations(this, sdkConfiguration); + } + + /** + * Switches to the async SDK. + * + * @return The async SDK + */ + public AsyncMemberPortalInvitations async() { + return asyncSDK; + } + + /** + * Create an employee member portal invitation + * + *

    Generates a member portal invitation for the specified employee. If the employee already has an + * invitation and its token has expired, calling this endpoint regenerates the invitation and overrides + * the prior token. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder postV1EmployeesEmployeeIdMemberPortalInvitations() { + return new PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder(sdkConfiguration); + } + + /** + * Create an employee member portal invitation + * + *

    Generates a member portal invitation for the specified employee. If the employee already has an + * invitation and its token has expired, calling this endpoint regenerates the invitation and overrides + * the prior token. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param employeeId The UUID of the employee + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse postV1EmployeesEmployeeIdMemberPortalInvitations(String employeeId) { + return postV1EmployeesEmployeeIdMemberPortalInvitations(Optional.empty(), employeeId); + } + + /** + * Create an employee member portal invitation + * + *

    Generates a member portal invitation for the specified employee. If the employee already has an + * invitation and its token has expired, calling this endpoint regenerates the invitation and overrides + * the prior token. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param employeeId The UUID of the employee + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse postV1EmployeesEmployeeIdMemberPortalInvitations(Optional xGustoAPIVersion, String employeeId) { + PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest request = + PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .employeeId(employeeId) + .build(); + RequestOperation operation + = new PostV1EmployeesEmployeeIdMemberPortalInvitations.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + + /** + * Get an employee member portal invitation + * + *

    Returns the current status of an employee's member portal invitation (`pending`, `sent`, `verified`, + * `complete`, or `cancelled`) along with an `expired` flag indicating whether the invitation can still + * be acted on by the employee. + * + *

    scope: `member_portal_invitation:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder getV1EmployeesEmployeeIdMemberPortalInvitations() { + return new GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder(sdkConfiguration); + } + + /** + * Get an employee member portal invitation + * + *

    Returns the current status of an employee's member portal invitation (`pending`, `sent`, `verified`, + * `complete`, or `cancelled`) along with an `expired` flag indicating whether the invitation can still + * be acted on by the employee. + * + *

    scope: `member_portal_invitation:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param employeeId The UUID of the employee + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse getV1EmployeesEmployeeIdMemberPortalInvitations(String employeeId) { + return getV1EmployeesEmployeeIdMemberPortalInvitations(Optional.empty(), employeeId); + } + + /** + * Get an employee member portal invitation + * + *

    Returns the current status of an employee's member portal invitation (`pending`, `sent`, `verified`, + * `complete`, or `cancelled`) along with an `expired` flag indicating whether the invitation can still + * be acted on by the employee. + * + *

    scope: `member_portal_invitation:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param employeeId The UUID of the employee + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse getV1EmployeesEmployeeIdMemberPortalInvitations(Optional xGustoAPIVersion, String employeeId) { + GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest request = + GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .employeeId(employeeId) + .build(); + RequestOperation operation + = new GetV1EmployeesEmployeeIdMemberPortalInvitations.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + + /** + * Cancel an employee member portal invitation + * + *

    Cancels the member portal invitation for the specified employee. + * + *

    Note: this endpoint does not cancel the employee's self-onboarding flow. If you want the company + * admin to take full control of onboarding the employee, cancel the self-onboarding request instead. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder deleteV1EmployeesEmployeeIdMemberPortalInvitations() { + return new DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder(sdkConfiguration); + } + + /** + * Cancel an employee member portal invitation + * + *

    Cancels the member portal invitation for the specified employee. + * + *

    Note: this endpoint does not cancel the employee's self-onboarding flow. If you want the company + * admin to take full control of onboarding the employee, cancel the self-onboarding request instead. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param employeeId The UUID of the employee + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse deleteV1EmployeesEmployeeIdMemberPortalInvitations(String employeeId) { + return deleteV1EmployeesEmployeeIdMemberPortalInvitations(Optional.empty(), employeeId); + } + + /** + * Cancel an employee member portal invitation + * + *

    Cancels the member portal invitation for the specified employee. + * + *

    Note: this endpoint does not cancel the employee's self-onboarding flow. If you want the company + * admin to take full control of onboarding the employee, cancel the self-onboarding request instead. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param employeeId The UUID of the employee + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse deleteV1EmployeesEmployeeIdMemberPortalInvitations(Optional xGustoAPIVersion, String employeeId) { + DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest request = + DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .employeeId(employeeId) + .build(); + RequestOperation operation + = new DeleteV1EmployeesEmployeeIdMemberPortalInvitations.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + + /** + * Create a contractor member portal invitation + * + *

    Generates a member portal invitation for the specified contractor. If the contractor already has an + * invitation and its token has expired, calling this endpoint regenerates the invitation and overrides + * the prior token. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public PostV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder postV1ContractorsContractorUuidMemberPortalInvitations() { + return new PostV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder(sdkConfiguration); + } + + /** + * Create a contractor member portal invitation + * + *

    Generates a member portal invitation for the specified contractor. If the contractor already has an + * invitation and its token has expired, calling this endpoint regenerates the invitation and overrides + * the prior token. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param contractorUuid The UUID of the contractor + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public PostV1ContractorsContractorUuidMemberPortalInvitationsResponse postV1ContractorsContractorUuidMemberPortalInvitations(String contractorUuid) { + return postV1ContractorsContractorUuidMemberPortalInvitations(Optional.empty(), contractorUuid); + } + + /** + * Create a contractor member portal invitation + * + *

    Generates a member portal invitation for the specified contractor. If the contractor already has an + * invitation and its token has expired, calling this endpoint regenerates the invitation and overrides + * the prior token. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param contractorUuid The UUID of the contractor + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public PostV1ContractorsContractorUuidMemberPortalInvitationsResponse postV1ContractorsContractorUuidMemberPortalInvitations(Optional xGustoAPIVersion, String contractorUuid) { + PostV1ContractorsContractorUuidMemberPortalInvitationsRequest request = + PostV1ContractorsContractorUuidMemberPortalInvitationsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .contractorUuid(contractorUuid) + .build(); + RequestOperation operation + = new PostV1ContractorsContractorUuidMemberPortalInvitations.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + + /** + * Get a contractor member portal invitation + * + *

    Returns the current status of a contractor's member portal invitation (`pending`, `sent`, + * `verified`, `complete`, or `cancelled`) along with an `expired` flag indicating whether the + * invitation can still be acted on by the contractor. + * + *

    scope: `member_portal_invitation:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder getV1ContractorsContractorUuidMemberPortalInvitations() { + return new GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder(sdkConfiguration); + } + + /** + * Get a contractor member portal invitation + * + *

    Returns the current status of a contractor's member portal invitation (`pending`, `sent`, + * `verified`, `complete`, or `cancelled`) along with an `expired` flag indicating whether the + * invitation can still be acted on by the contractor. + * + *

    scope: `member_portal_invitation:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param contractorUuid The UUID of the contractor + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1ContractorsContractorUuidMemberPortalInvitationsResponse getV1ContractorsContractorUuidMemberPortalInvitations(String contractorUuid) { + return getV1ContractorsContractorUuidMemberPortalInvitations(Optional.empty(), contractorUuid); + } + + /** + * Get a contractor member portal invitation + * + *

    Returns the current status of a contractor's member portal invitation (`pending`, `sent`, + * `verified`, `complete`, or `cancelled`) along with an `expired` flag indicating whether the + * invitation can still be acted on by the contractor. + * + *

    scope: `member_portal_invitation:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param contractorUuid The UUID of the contractor + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1ContractorsContractorUuidMemberPortalInvitationsResponse getV1ContractorsContractorUuidMemberPortalInvitations(Optional xGustoAPIVersion, String contractorUuid) { + GetV1ContractorsContractorUuidMemberPortalInvitationsRequest request = + GetV1ContractorsContractorUuidMemberPortalInvitationsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .contractorUuid(contractorUuid) + .build(); + RequestOperation operation + = new GetV1ContractorsContractorUuidMemberPortalInvitations.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + + /** + * Cancel a contractor member portal invitation + * + *

    Cancels the member portal invitation for the specified contractor. + * + *

    Note: this endpoint does not cancel the contractor's self-onboarding flow. If you want the company + * admin to take full control of onboarding the contractor, cancel the self-onboarding request instead. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder deleteV1ContractorsContractorUuidMemberPortalInvitations() { + return new DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder(sdkConfiguration); + } + + /** + * Cancel a contractor member portal invitation + * + *

    Cancels the member portal invitation for the specified contractor. + * + *

    Note: this endpoint does not cancel the contractor's self-onboarding flow. If you want the company + * admin to take full control of onboarding the contractor, cancel the self-onboarding request instead. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param contractorUuid The UUID of the contractor + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse deleteV1ContractorsContractorUuidMemberPortalInvitations(String contractorUuid) { + return deleteV1ContractorsContractorUuidMemberPortalInvitations(Optional.empty(), contractorUuid); + } + + /** + * Cancel a contractor member portal invitation + * + *

    Cancels the member portal invitation for the specified contractor. + * + *

    Note: this endpoint does not cancel the contractor's self-onboarding flow. If you want the company + * admin to take full control of onboarding the contractor, cancel the self-onboarding request instead. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param contractorUuid The UUID of the contractor + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse deleteV1ContractorsContractorUuidMemberPortalInvitations(Optional xGustoAPIVersion, String contractorUuid) { + DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest request = + DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .contractorUuid(contractorUuid) + .build(); + RequestOperation operation + = new DeleteV1ContractorsContractorUuidMemberPortalInvitations.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/Notifications.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/Notifications.java index 9c943654b..2a26fb025 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/Notifications.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/Notifications.java @@ -38,6 +38,40 @@ public AsyncNotifications async() { return asyncSDK; } + /** + * Get notifications for company + * + *

    Returns all notifications relevant for the given company. + * + *

    scope: `notifications:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public GetCompanyNotificationsRequestBuilder getCompanyNotifications() { + return new GetCompanyNotificationsRequestBuilder(sdkConfiguration); + } + + /** + * Get notifications for company + * + *

    Returns all notifications relevant for the given company. + * + *

    scope: `notifications:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param request The request object containing all the parameters for the API call. + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetCompanyNotificationsResponse getCompanyNotifications(GetCompanyNotificationsRequest request) { + RequestOperation operation + = new GetCompanyNotifications.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + /** * Get a notification's details * @@ -85,7 +119,7 @@ public GetNotificationsNotificationUuidRequestBuilder getDetails() { * @throws RuntimeException subclass if the API call fails */ public GetNotificationsNotificationUuidResponse getDetails(String notificationUuid) { - return getDetails(notificationUuid, Optional.empty()); + return getDetails(Optional.empty(), notificationUuid); } /** @@ -106,55 +140,21 @@ public GetNotificationsNotificationUuidResponse getDetails(String notificationUu * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param notificationUuid The notification entity_uuid * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param notificationUuid The notification entity_uuid * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetNotificationsNotificationUuidResponse getDetails(String notificationUuid, Optional xGustoAPIVersion) { + public GetNotificationsNotificationUuidResponse getDetails(Optional xGustoAPIVersion, String notificationUuid) { GetNotificationsNotificationUuidRequest request = GetNotificationsNotificationUuidRequest .builder() - .notificationUuid(notificationUuid) .xGustoAPIVersion(xGustoAPIVersion) + .notificationUuid(notificationUuid) .build(); RequestOperation operation = new GetNotificationsNotificationUuid.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } - /** - * Get notifications for company - * - *

    Returns all notifications relevant for the given company. - * - *

    scope: `notifications:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The call builder - */ - public GetCompanyNotificationsRequestBuilder getCompanyNotifications() { - return new GetCompanyNotificationsRequestBuilder(sdkConfiguration); - } - - /** - * Get notifications for company - * - *

    Returns all notifications relevant for the given company. - * - *

    scope: `notifications:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param request The request object containing all the parameters for the API call. - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public GetCompanyNotificationsResponse getCompanyNotifications(GetCompanyNotificationsRequest request) { - RequestOperation operation - = new GetCompanyNotifications.Sync(sdkConfiguration, _headers); - return operation.handleResponse(operation.doRequest(request)); - } - } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/PaySchedules.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/PaySchedules.java index d405c4fc9..e21553204 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/PaySchedules.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/PaySchedules.java @@ -81,6 +81,136 @@ public AsyncPaySchedules async() { return asyncSDK; } + /** + * Get pay periods for a company + * + *

    Pay periods are the foundation of payroll. Compensation, time & attendance, taxes, and expense + * reports all rely on when they happened. + * + *

    To begin submitting information for a given payroll, we need to agree on the time period. + * + *

    By default, this endpoint returns pay periods starting from 6 months ago to the date today. Use the + * `start_date` and `end_date` parameters to change the scope of the response. End dates can be up to 3 + * months in the future and there is no limit on start dates. + * + *

    Starting in version 2023-04-01, the `eligible_employees` attribute was removed from the response. + * The eligible employees for a payroll are determined by the employee_compensations returned from the + * [PUT + * /v1/companies/{company_id}/payrolls/{payroll_id}/prepare](ref:put-v1-companies-company_id-payrolls-payroll_id-prepare) + * endpoint. + * + *

    scope: `payrolls:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public GetV1CompaniesCompanyIdPayPeriodsRequestBuilder getPayPeriods() { + return new GetV1CompaniesCompanyIdPayPeriodsRequestBuilder(sdkConfiguration); + } + + /** + * Get pay periods for a company + * + *

    Pay periods are the foundation of payroll. Compensation, time & attendance, taxes, and expense + * reports all rely on when they happened. + * + *

    To begin submitting information for a given payroll, we need to agree on the time period. + * + *

    By default, this endpoint returns pay periods starting from 6 months ago to the date today. Use the + * `start_date` and `end_date` parameters to change the scope of the response. End dates can be up to 3 + * months in the future and there is no limit on start dates. + * + *

    Starting in version 2023-04-01, the `eligible_employees` attribute was removed from the response. + * The eligible employees for a payroll are determined by the employee_compensations returned from the + * [PUT + * /v1/companies/{company_id}/payrolls/{payroll_id}/prepare](ref:put-v1-companies-company_id-payrolls-payroll_id-prepare) + * endpoint. + * + *

    scope: `payrolls:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param request The request object containing all the parameters for the API call. + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1CompaniesCompanyIdPayPeriodsResponse getPayPeriods(GetV1CompaniesCompanyIdPayPeriodsRequest request) { + RequestOperation operation + = new GetV1CompaniesCompanyIdPayPeriods.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + + /** + * Get termination pay periods for a company + * + *

    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. + * + *

    This endpoint returns the unprocessed pay periods for past and future terminated employees in a + * given company. + * + *

    scope: `payrolls:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsRequestBuilder getUnprocessedTerminationPeriods() { + return new GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsRequestBuilder(sdkConfiguration); + } + + /** + * Get termination pay periods for a company + * + *

    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. + * + *

    This endpoint returns the unprocessed pay periods for past and future terminated employees in a + * given company. + * + *

    scope: `payrolls:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param companyId The UUID of the company + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsResponse getUnprocessedTerminationPeriods(String companyId) { + return getUnprocessedTerminationPeriods(Optional.empty(), companyId); + } + + /** + * Get termination pay periods for a company + * + *

    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. + * + *

    This endpoint returns the unprocessed pay periods for past and future terminated employees in a + * given company. + * + *

    scope: `payrolls:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsResponse getUnprocessedTerminationPeriods(Optional xGustoAPIVersion, String companyId) { + GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsRequest request = + GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) + .build(); + RequestOperation operation + = new GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriods.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + /** * Get the pay schedules for a company * @@ -503,197 +633,6 @@ public PutV1CompaniesCompanyIdPaySchedulesPayScheduleIdResponse update( return operation.handleResponse(operation.doRequest(request)); } - /** - * Get pay periods for a company - * - *

    Pay periods are the foundation of payroll. Compensation, time & attendance, taxes, and expense - * reports all rely on when they happened. - * - *

    To begin submitting information for a given payroll, we need to agree on the time period. - * - *

    By default, this endpoint returns pay periods starting from 6 months ago to the date today. Use the - * `start_date` and `end_date` parameters to change the scope of the response. End dates can be up to 3 - * months in the future and there is no limit on start dates. - * - *

    Starting in version 2023-04-01, the `eligible_employees` attribute was removed from the response. - * The eligible employees for a payroll are determined by the employee_compensations returned from the - * [PUT - * /v1/companies/{company_id}/payrolls/{payroll_id}/prepare](ref:put-v1-companies-company_id-payrolls-payroll_id-prepare) - * endpoint. - * - *

    scope: `payrolls:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The call builder - */ - public GetV1CompaniesCompanyIdPayPeriodsRequestBuilder getPayPeriods() { - return new GetV1CompaniesCompanyIdPayPeriodsRequestBuilder(sdkConfiguration); - } - - /** - * Get pay periods for a company - * - *

    Pay periods are the foundation of payroll. Compensation, time & attendance, taxes, and expense - * reports all rely on when they happened. - * - *

    To begin submitting information for a given payroll, we need to agree on the time period. - * - *

    By default, this endpoint returns pay periods starting from 6 months ago to the date today. Use the - * `start_date` and `end_date` parameters to change the scope of the response. End dates can be up to 3 - * months in the future and there is no limit on start dates. - * - *

    Starting in version 2023-04-01, the `eligible_employees` attribute was removed from the response. - * The eligible employees for a payroll are determined by the employee_compensations returned from the - * [PUT - * /v1/companies/{company_id}/payrolls/{payroll_id}/prepare](ref:put-v1-companies-company_id-payrolls-payroll_id-prepare) - * endpoint. - * - *

    scope: `payrolls:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param request The request object containing all the parameters for the API call. - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public GetV1CompaniesCompanyIdPayPeriodsResponse getPayPeriods(GetV1CompaniesCompanyIdPayPeriodsRequest request) { - RequestOperation operation - = new GetV1CompaniesCompanyIdPayPeriods.Sync(sdkConfiguration, _headers); - return operation.handleResponse(operation.doRequest(request)); - } - - /** - * Get termination pay periods for a company - * - *

    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. - * - *

    This endpoint returns the unprocessed pay periods for past and future terminated employees in a - * given company. - * - *

    scope: `payrolls:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The call builder - */ - public GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsRequestBuilder getUnprocessedTerminationPeriods() { - return new GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsRequestBuilder(sdkConfiguration); - } - - /** - * Get termination pay periods for a company - * - *

    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. - * - *

    This endpoint returns the unprocessed pay periods for past and future terminated employees in a - * given company. - * - *

    scope: `payrolls:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param companyId The UUID of the company - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsResponse getUnprocessedTerminationPeriods(String companyId) { - return getUnprocessedTerminationPeriods(Optional.empty(), companyId); - } - - /** - * Get termination pay periods for a company - * - *

    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. - * - *

    This endpoint returns the unprocessed pay periods for past and future terminated employees in a - * given company. - * - *

    scope: `payrolls:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyId The UUID of the company - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsResponse getUnprocessedTerminationPeriods(Optional xGustoAPIVersion, String companyId) { - GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsRequest request = - GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsRequest - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .companyId(companyId) - .build(); - RequestOperation operation - = new GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriods.Sync(sdkConfiguration, _headers); - return operation.handleResponse(operation.doRequest(request)); - } - - /** - * Get pay schedule assignments for a company - * - *

    This endpoint returns the current pay schedule assignment for a company, with pay schedule and - * employee/department mappings depending on the pay schedule type. - * - *

    scope: `pay_schedules:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The call builder - */ - public GetV1CompaniesCompanyIdPaySchedulesAssignmentsRequestBuilder getAssignments() { - return new GetV1CompaniesCompanyIdPaySchedulesAssignmentsRequestBuilder(sdkConfiguration); - } - - /** - * Get pay schedule assignments for a company - * - *

    This endpoint returns the current pay schedule assignment for a company, with pay schedule and - * employee/department mappings depending on the pay schedule type. - * - *

    scope: `pay_schedules:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param companyId The UUID of the company - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public GetV1CompaniesCompanyIdPaySchedulesAssignmentsResponse getAssignments(String companyId) { - return getAssignments(Optional.empty(), companyId); - } - - /** - * Get pay schedule assignments for a company - * - *

    This endpoint returns the current pay schedule assignment for a company, with pay schedule and - * employee/department mappings depending on the pay schedule type. - * - *

    scope: `pay_schedules:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyId The UUID of the company - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public GetV1CompaniesCompanyIdPaySchedulesAssignmentsResponse getAssignments(Optional xGustoAPIVersion, String companyId) { - GetV1CompaniesCompanyIdPaySchedulesAssignmentsRequest request = - GetV1CompaniesCompanyIdPaySchedulesAssignmentsRequest - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .companyId(companyId) - .build(); - RequestOperation operation - = new GetV1CompaniesCompanyIdPaySchedulesAssignments.Sync(sdkConfiguration, _headers); - return operation.handleResponse(operation.doRequest(request)); - } - /** * Preview pay schedule assignments for a company * @@ -832,4 +771,65 @@ public PostV1CompaniesCompanyIdPaySchedulesAssignResponse assign( return operation.handleResponse(operation.doRequest(request)); } + /** + * Get pay schedule assignments for a company + * + *

    This endpoint returns the current pay schedule assignment for a company, with pay schedule and + * employee/department mappings depending on the pay schedule type. + * + *

    scope: `pay_schedules:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public GetV1CompaniesCompanyIdPaySchedulesAssignmentsRequestBuilder getAssignments() { + return new GetV1CompaniesCompanyIdPaySchedulesAssignmentsRequestBuilder(sdkConfiguration); + } + + /** + * Get pay schedule assignments for a company + * + *

    This endpoint returns the current pay schedule assignment for a company, with pay schedule and + * employee/department mappings depending on the pay schedule type. + * + *

    scope: `pay_schedules:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param companyId The UUID of the company + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1CompaniesCompanyIdPaySchedulesAssignmentsResponse getAssignments(String companyId) { + return getAssignments(Optional.empty(), companyId); + } + + /** + * Get pay schedule assignments for a company + * + *

    This endpoint returns the current pay schedule assignment for a company, with pay schedule and + * employee/department mappings depending on the pay schedule type. + * + *

    scope: `pay_schedules:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1CompaniesCompanyIdPaySchedulesAssignmentsResponse getAssignments(Optional xGustoAPIVersion, String companyId) { + GetV1CompaniesCompanyIdPaySchedulesAssignmentsRequest request = + GetV1CompaniesCompanyIdPaySchedulesAssignmentsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) + .build(); + RequestOperation operation + = new GetV1CompaniesCompanyIdPaySchedulesAssignments.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/PayrollCancellations.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/PayrollCancellations.java new file mode 100644 index 000000000..37f5c8d65 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/PayrollCancellations.java @@ -0,0 +1,259 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api; + +import static com.gusto.embedded_api.operations.Operations.RequestOperation; + +import com.gusto.embedded_api.models.operations.GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetV1PayrollBatchesPayrollBatchUuidRequest; +import com.gusto.embedded_api.models.operations.GetV1PayrollBatchesPayrollBatchUuidRequestBuilder; +import com.gusto.embedded_api.models.operations.GetV1PayrollBatchesPayrollBatchUuidResponse; +import com.gusto.embedded_api.models.operations.GetV1PayrollBatchesPayrollBatchUuidSecurity; +import com.gusto.embedded_api.models.operations.PostV1PayrollBatchesHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PostV1PayrollBatchesRequest; +import com.gusto.embedded_api.models.operations.PostV1PayrollBatchesRequestBody; +import com.gusto.embedded_api.models.operations.PostV1PayrollBatchesRequestBuilder; +import com.gusto.embedded_api.models.operations.PostV1PayrollBatchesResponse; +import com.gusto.embedded_api.models.operations.PostV1PayrollBatchesSecurity; +import com.gusto.embedded_api.operations.GetV1PayrollBatchesPayrollBatchUuid; +import com.gusto.embedded_api.operations.PostV1PayrollBatches; +import com.gusto.embedded_api.utils.Headers; +import java.lang.String; +import java.util.Optional; + + +public class PayrollCancellations { + private static final Headers _headers = Headers.EMPTY; + private final SDKConfiguration sdkConfiguration; + private final AsyncPayrollCancellations asyncSDK; + + PayrollCancellations(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + this.asyncSDK = new AsyncPayrollCancellations(this, sdkConfiguration); + } + + /** + * Switches to the async SDK. + * + * @return The async SDK + */ + public AsyncPayrollCancellations async() { + return asyncSDK; + } + + /** + * Create a payroll cancellation batch + * + *

    Cancels up to 100 payrolls across one or more companies the partner is mapped to, asynchronously. + * + *

    The batch is processed asynchronously. Use the returned batch UUID to poll `GET + * /v1/payroll_batches/{payroll_batch_uuid}` for status and per-payroll results. + * + *

    Each item carries the payroll `uuid` and the `company_uuid` that owns it. A payroll whose company is + * not mapped to the partner — or that doesn't exist — is recorded as a `not_found` exclusion rather + * than a hard error, so every requested UUID lands in either `results` or `exclusions`. + * + *

    Idempotency is scoped per `(partner, idempotency_key)`. A duplicate POST with the same + * `idempotency_key` returns a 409 Conflict referencing the existing batch UUID — no duplicate + * processing occurs. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `payroll_batches:write` + * + * @return The call builder + */ + public PostV1PayrollBatchesRequestBuilder postV1PayrollBatches() { + return new PostV1PayrollBatchesRequestBuilder(sdkConfiguration); + } + + /** + * Create a payroll cancellation batch + * + *

    Cancels up to 100 payrolls across one or more companies the partner is mapped to, asynchronously. + * + *

    The batch is processed asynchronously. Use the returned batch UUID to poll `GET + * /v1/payroll_batches/{payroll_batch_uuid}` for status and per-payroll results. + * + *

    Each item carries the payroll `uuid` and the `company_uuid` that owns it. A payroll whose company is + * not mapped to the partner — or that doesn't exist — is recorded as a `not_found` exclusion rather + * than a hard error, so every requested UUID lands in either `results` or `exclusions`. + * + *

    Idempotency is scoped per `(partner, idempotency_key)`. A duplicate POST with the same + * `idempotency_key` returns a 409 Conflict referencing the existing batch UUID — no duplicate + * processing occurs. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `payroll_batches:write` + * + * @param security The security details to use for authentication. + * @param requestBody + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public PostV1PayrollBatchesResponse postV1PayrollBatches(PostV1PayrollBatchesSecurity security, PostV1PayrollBatchesRequestBody requestBody) { + return postV1PayrollBatches(security, Optional.empty(), requestBody); + } + + /** + * Create a payroll cancellation batch + * + *

    Cancels up to 100 payrolls across one or more companies the partner is mapped to, asynchronously. + * + *

    The batch is processed asynchronously. Use the returned batch UUID to poll `GET + * /v1/payroll_batches/{payroll_batch_uuid}` for status and per-payroll results. + * + *

    Each item carries the payroll `uuid` and the `company_uuid` that owns it. A payroll whose company is + * not mapped to the partner — or that doesn't exist — is recorded as a `not_found` exclusion rather + * than a hard error, so every requested UUID lands in either `results` or `exclusions`. + * + *

    Idempotency is scoped per `(partner, idempotency_key)`. A duplicate POST with the same + * `idempotency_key` returns a 409 Conflict referencing the existing batch UUID — no duplicate + * processing occurs. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `payroll_batches:write` + * + * @param security The security details to use for authentication. + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param requestBody + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public PostV1PayrollBatchesResponse postV1PayrollBatches( + PostV1PayrollBatchesSecurity security, Optional xGustoAPIVersion, + PostV1PayrollBatchesRequestBody requestBody) { + PostV1PayrollBatchesRequest request = + PostV1PayrollBatchesRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .requestBody(requestBody) + .build(); + RequestOperation operation + = new PostV1PayrollBatches.Sync(sdkConfiguration, security, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + + /** + * Get a payroll cancellation batch + * + *

    Returns the status and per-payroll results of a payroll cancellation batch. + * + *

    Poll this endpoint until the batch `status` reaches a terminal value (`completed` or `failed`). Once + * terminal, the response includes the `results` array (one entry per authorized payroll, each with its + * own per-payroll `status` — `success` or `failed`) and the `exclusions` array (one entry per payroll + * that could not be processed). A cancel is atomic, so a per-payroll result is only ever `success` or + * `failed` — never `partial_success`. + * + *

    Note that the top-level batch `status` (`pending` / `processing` / `completed` / `failed`) is the + * request lifecycle, distinct from the per-payroll `status` inside `results[]`. A `completed` batch + * does not imply every payroll was cancelled — inspect the array for per-payroll outcomes. + * + *

    Results are stored in Redis with a limited TTL after completion. If the partner polls after results + * have expired, this endpoint returns 410 Gone — partners should re-submit a new batch. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `payroll_batches:read` + * + * @return The call builder + */ + public GetV1PayrollBatchesPayrollBatchUuidRequestBuilder getV1PayrollBatchesPayrollBatchUuid() { + return new GetV1PayrollBatchesPayrollBatchUuidRequestBuilder(sdkConfiguration); + } + + /** + * Get a payroll cancellation batch + * + *

    Returns the status and per-payroll results of a payroll cancellation batch. + * + *

    Poll this endpoint until the batch `status` reaches a terminal value (`completed` or `failed`). Once + * terminal, the response includes the `results` array (one entry per authorized payroll, each with its + * own per-payroll `status` — `success` or `failed`) and the `exclusions` array (one entry per payroll + * that could not be processed). A cancel is atomic, so a per-payroll result is only ever `success` or + * `failed` — never `partial_success`. + * + *

    Note that the top-level batch `status` (`pending` / `processing` / `completed` / `failed`) is the + * request lifecycle, distinct from the per-payroll `status` inside `results[]`. A `completed` batch + * does not imply every payroll was cancelled — inspect the array for per-payroll outcomes. + * + *

    Results are stored in Redis with a limited TTL after completion. If the partner polls after results + * have expired, this endpoint returns 410 Gone — partners should re-submit a new batch. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `payroll_batches:read` + * + * @param security The security details to use for authentication. + * @param payrollBatchUuid The UUID of the payroll cancellation batch returned by `POST /v1/payroll_batches`. + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1PayrollBatchesPayrollBatchUuidResponse getV1PayrollBatchesPayrollBatchUuid(GetV1PayrollBatchesPayrollBatchUuidSecurity security, String payrollBatchUuid) { + return getV1PayrollBatchesPayrollBatchUuid(security, Optional.empty(), payrollBatchUuid); + } + + /** + * Get a payroll cancellation batch + * + *

    Returns the status and per-payroll results of a payroll cancellation batch. + * + *

    Poll this endpoint until the batch `status` reaches a terminal value (`completed` or `failed`). Once + * terminal, the response includes the `results` array (one entry per authorized payroll, each with its + * own per-payroll `status` — `success` or `failed`) and the `exclusions` array (one entry per payroll + * that could not be processed). A cancel is atomic, so a per-payroll result is only ever `success` or + * `failed` — never `partial_success`. + * + *

    Note that the top-level batch `status` (`pending` / `processing` / `completed` / `failed`) is the + * request lifecycle, distinct from the per-payroll `status` inside `results[]`. A `completed` batch + * does not imply every payroll was cancelled — inspect the array for per-payroll outcomes. + * + *

    Results are stored in Redis with a limited TTL after completion. If the partner polls after results + * have expired, this endpoint returns 410 Gone — partners should re-submit a new batch. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `payroll_batches:read` + * + * @param security The security details to use for authentication. + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param payrollBatchUuid The UUID of the payroll cancellation batch returned by `POST /v1/payroll_batches`. + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1PayrollBatchesPayrollBatchUuidResponse getV1PayrollBatchesPayrollBatchUuid( + GetV1PayrollBatchesPayrollBatchUuidSecurity security, Optional xGustoAPIVersion, + String payrollBatchUuid) { + GetV1PayrollBatchesPayrollBatchUuidRequest request = + GetV1PayrollBatchesPayrollBatchUuidRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .payrollBatchUuid(payrollBatchUuid) + .build(); + RequestOperation operation + = new GetV1PayrollBatchesPayrollBatchUuid.Sync(sdkConfiguration, security, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/PayrollDigests.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/PayrollDigests.java index 94524d2b2..eb3ac1efd 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/PayrollDigests.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/PayrollDigests.java @@ -199,7 +199,7 @@ public GetV1PayrollDigestsPayrollDigestUuidRequestBuilder getV1PayrollDigestsPay * @throws RuntimeException subclass if the API call fails */ public GetV1PayrollDigestsPayrollDigestUuidResponse getV1PayrollDigestsPayrollDigestUuid(GetV1PayrollDigestsPayrollDigestUuidSecurity security, String payrollDigestUuid) { - return getV1PayrollDigestsPayrollDigestUuid(security, payrollDigestUuid, Optional.empty()); + return getV1PayrollDigestsPayrollDigestUuid(security, Optional.empty(), payrollDigestUuid); } /** @@ -228,19 +228,19 @@ public GetV1PayrollDigestsPayrollDigestUuidResponse getV1PayrollDigestsPayrollDi *

    scope: `payroll_digests:read` * * @param security The security details to use for authentication. - * @param payrollDigestUuid The UUID of the payroll digest batch returned by `POST /v1/payroll_digests`. * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param payrollDigestUuid The UUID of the payroll digest batch returned by `POST /v1/payroll_digests`. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public GetV1PayrollDigestsPayrollDigestUuidResponse getV1PayrollDigestsPayrollDigestUuid( - GetV1PayrollDigestsPayrollDigestUuidSecurity security, String payrollDigestUuid, - Optional xGustoAPIVersion) { + GetV1PayrollDigestsPayrollDigestUuidSecurity security, Optional xGustoAPIVersion, + String payrollDigestUuid) { GetV1PayrollDigestsPayrollDigestUuidRequest request = GetV1PayrollDigestsPayrollDigestUuidRequest .builder() - .payrollDigestUuid(payrollDigestUuid) .xGustoAPIVersion(xGustoAPIVersion) + .payrollDigestUuid(payrollDigestUuid) .build(); RequestOperation operation = new GetV1PayrollDigestsPayrollDigestUuid.Sync(sdkConfiguration, security, _headers); diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/Payrolls.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/Payrolls.java index abeaae73a..7dcf81869 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/Payrolls.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/Payrolls.java @@ -8,11 +8,11 @@ import com.gusto.embedded_api.models.components.PayrollGrossUpRequest; import com.gusto.embedded_api.models.components.PayrollUpdate; import com.gusto.embedded_api.models.components.PrintablePayrollChecksBody; -import com.gusto.embedded_api.models.components.VersionHeader; import com.gusto.embedded_api.models.operations.DeleteV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion; import com.gusto.embedded_api.models.operations.DeleteV1CompaniesCompanyIdPayrollsRequest; import com.gusto.embedded_api.models.operations.DeleteV1CompaniesCompanyIdPayrollsRequestBuilder; import com.gusto.embedded_api.models.operations.DeleteV1CompaniesCompanyIdPayrollsResponse; +import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion; import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdPayrollReversalsRequest; import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder; import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdPayrollReversalsResponse; @@ -131,658 +131,571 @@ public AsyncPayrolls async() { } /** - * Get all payrolls for a company - * - *

    Returns a list of payrolls for a company. You can change the payrolls returned by updating the - * processing_status, payroll_types, start_date, & end_date params. - * - *

    By default, will return processed, regular payrolls for the past 6 months. - * - *

    Notes: - * * Dollar amounts are returned as string representations of numeric decimals, are represented to the - * cent. - * * end_date can be at most 3 months in the future and start_date and end_date can't be more than 1 - * year apart. - * * Results are paginated. Maximum page size is 100 payrolls per request; the default page size is 25. - * - *

    scope: `payrolls:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The call builder - */ - public GetV1CompaniesCompanyIdPayrollsRequestBuilder list() { - return new GetV1CompaniesCompanyIdPayrollsRequestBuilder(sdkConfiguration); - } - - /** - * Get all payrolls for a company - * - *

    Returns a list of payrolls for a company. You can change the payrolls returned by updating the - * processing_status, payroll_types, start_date, & end_date params. - * - *

    By default, will return processed, regular payrolls for the past 6 months. - * - *

    Notes: - * * Dollar amounts are returned as string representations of numeric decimals, are represented to the - * cent. - * * end_date can be at most 3 months in the future and start_date and end_date can't be more than 1 - * year apart. - * * Results are paginated. Maximum page size is 100 payrolls per request; the default page size is 25. - * - *

    scope: `payrolls:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param request The request object containing all the parameters for the API call. - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public GetV1CompaniesCompanyIdPayrollsResponse list(GetV1CompaniesCompanyIdPayrollsRequest request) { - RequestOperation operation - = new GetV1CompaniesCompanyIdPayrolls.Sync(sdkConfiguration, _headers); - return operation.handleResponse(operation.doRequest(request)); - } - - /** - * Create an off-cycle payroll - * - *

    Creates a new, unprocessed, off-cycle payroll. - * - *

    ## `off_cycle_reason` - * By default: - * - External benefits and deductions will be included when the `off_cycle_reason` is set to - * `Correction`. - * - All benefits and deductions are blocked when the `off_cycle_reason` is set to `Bonus`. + * Generate printable payroll checks (pdf) * - *

    These elections can be overridden with the `skip_regular_deductions` boolean. + *

    This endpoint initiates the generation of employee checks for the payroll specified by payroll_uuid. + * A generation status and corresponding request_uuid will be returned. Use the generated document GET + * endpoint with document_type: `printable_payroll_checks` and request_uuid to poll the check + * generation process and retrieve the generated check URL upon completion. * - *

    scope: `payrolls:run` + *

    scope: `generated_documents:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public PostV1CompaniesCompanyIdPayrollsRequestBuilder createOffCycle() { - return new PostV1CompaniesCompanyIdPayrollsRequestBuilder(sdkConfiguration); + public PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksRequestBuilder generatePrintableChecks() { + return new PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksRequestBuilder(sdkConfiguration); } /** - * Create an off-cycle payroll - * - *

    Creates a new, unprocessed, off-cycle payroll. - * - *

    ## `off_cycle_reason` - * By default: - * - External benefits and deductions will be included when the `off_cycle_reason` is set to - * `Correction`. - * - All benefits and deductions are blocked when the `off_cycle_reason` is set to `Bonus`. + * Generate printable payroll checks (pdf) * - *

    These elections can be overridden with the `skip_regular_deductions` boolean. + *

    This endpoint initiates the generation of employee checks for the payroll specified by payroll_uuid. + * A generation status and corresponding request_uuid will be returned. Use the generated document GET + * endpoint with document_type: `printable_payroll_checks` and request_uuid to poll the check + * generation process and retrieve the generated check URL upon completion. * - *

    scope: `payrolls:run` + *

    scope: `generated_documents:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company + * @param payrollUuid The UUID of the payroll + * @param printablePayrollChecksBody Request body for generating printable payroll checks. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostV1CompaniesCompanyIdPayrollsResponse createOffCycle(String companyId) { - return createOffCycle(Optional.empty(), companyId, Optional.empty()); + public PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksResponse generatePrintableChecks(String payrollUuid, PrintablePayrollChecksBody printablePayrollChecksBody) { + return generatePrintableChecks(Optional.empty(), payrollUuid, printablePayrollChecksBody); } /** - * Create an off-cycle payroll - * - *

    Creates a new, unprocessed, off-cycle payroll. - * - *

    ## `off_cycle_reason` - * By default: - * - External benefits and deductions will be included when the `off_cycle_reason` is set to - * `Correction`. - * - All benefits and deductions are blocked when the `off_cycle_reason` is set to `Bonus`. + * Generate printable payroll checks (pdf) * - *

    These elections can be overridden with the `skip_regular_deductions` boolean. + *

    This endpoint initiates the generation of employee checks for the payroll specified by payroll_uuid. + * A generation status and corresponding request_uuid will be returned. Use the generated document GET + * endpoint with document_type: `printable_payroll_checks` and request_uuid to poll the check + * generation process and retrieve the generated check URL upon completion. * - *

    scope: `payrolls:run` + *

    scope: `generated_documents:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyId The UUID of the company - * @param requestBody + * @param payrollUuid The UUID of the payroll + * @param printablePayrollChecksBody Request body for generating printable payroll checks. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostV1CompaniesCompanyIdPayrollsResponse createOffCycle( - Optional xGustoAPIVersion, String companyId, - Optional requestBody) { - PostV1CompaniesCompanyIdPayrollsRequest request = - PostV1CompaniesCompanyIdPayrollsRequest + public PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksResponse generatePrintableChecks( + Optional xGustoAPIVersion, String payrollUuid, + PrintablePayrollChecksBody printablePayrollChecksBody) { + PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksRequest request = + PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .companyId(companyId) - .requestBody(requestBody) + .payrollUuid(payrollUuid) + .printablePayrollChecksBody(printablePayrollChecksBody) .build(); - RequestOperation operation - = new PostV1CompaniesCompanyIdPayrolls.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecks.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Get approved payroll reversals + * Get an employee's pay stubs * - *

    Returns all approved Payroll Reversals for a Company. + *

    Get an employee's pay stubs. * - *

    scope: `payrolls:read` + *

    Results are returned in reverse chronological order (newest first). + * + *

    scope: `pay_stubs:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder getApprovedReversals() { - return new GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder(sdkConfiguration); + public GetV1EmployeesEmployeeUuidPayStubsRequestBuilder getPayStubs() { + return new GetV1EmployeesEmployeeUuidPayStubsRequestBuilder(sdkConfiguration); } /** - * Get approved payroll reversals + * Get an employee's pay stubs * - *

    Returns all approved Payroll Reversals for a Company. + *

    Get an employee's pay stubs. * - *

    scope: `payrolls:read` + *

    Results are returned in reverse chronological order (newest first). + * + *

    scope: `pay_stubs:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company + * @param employeeId The UUID of the employee * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1CompaniesCompanyIdPayrollReversalsResponse getApprovedReversals(String companyId) { - return getApprovedReversals(companyId, Optional.empty(), Optional.empty(), + public GetV1EmployeesEmployeeUuidPayStubsResponse getPayStubs(String employeeId) { + return getPayStubs(Optional.empty(), employeeId, Optional.empty(), Optional.empty()); } /** - * Get approved payroll reversals + * Get an employee's pay stubs * - *

    Returns all approved Payroll Reversals for a Company. + *

    Get an employee's pay stubs. * - *

    scope: `payrolls:read` + *

    Results are returned in reverse chronological order (newest first). + * + *

    scope: `pay_stubs:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param employeeId The UUID of the employee * @param page The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. * @param per Number of objects per page. For majority of endpoints will default to 25 - * @param xGustoAPIVersion * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1CompaniesCompanyIdPayrollReversalsResponse getApprovedReversals( - String companyId, Optional page, - Optional per, Optional xGustoAPIVersion) { - GetV1CompaniesCompanyIdPayrollReversalsRequest request = - GetV1CompaniesCompanyIdPayrollReversalsRequest + public GetV1EmployeesEmployeeUuidPayStubsResponse getPayStubs( + Optional xGustoAPIVersion, String employeeId, + Optional page, Optional per) { + GetV1EmployeesEmployeeUuidPayStubsRequest request = + GetV1EmployeesEmployeeUuidPayStubsRequest .builder() - .companyId(companyId) + .xGustoAPIVersion(xGustoAPIVersion) + .employeeId(employeeId) .page(page) .per(per) - .xGustoAPIVersion(xGustoAPIVersion) .build(); - RequestOperation operation - = new GetV1CompaniesCompanyIdPayrollReversals.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new GetV1EmployeesEmployeeUuidPayStubs.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Get a single payroll - * - *

    Returns a payroll. If payroll is calculated or processed, will return employee_compensations and - * totals. - * - *

    Results are paginated, with a maximum page size of 100 employee_compensations. + * Get an employee pay stub (pdf) * - *

    Notes: - * * Hour and dollar amounts are returned as string representations of numeric decimals. - * * Hours are represented to the thousands place; dollar amounts are represented to the cent. - * * Every eligible compensation is returned for each employee. If no data has yet be inserted for a - * given field, it defaults to "0.00" (for fixed amounts) or "0.000" (for hours ). - * * When include parameter with benefits value is passed, employee_benefits:read scope is required to - * return benefits - * * Benefits containing PHI are only visible with the `employee_benefits:read:phi` scope + *

    Get an employee's pay stub for the specified payroll. By default, an application/pdf response will + * be returned. No other content types are currently supported, but may be supported in the future. * - *

    scope: `payrolls:read` + *

    scope: `pay_stubs:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public GetV1CompaniesCompanyIdPayrollsPayrollIdRequestBuilder get() { - return new GetV1CompaniesCompanyIdPayrollsPayrollIdRequestBuilder(sdkConfiguration); + public GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubRequestBuilder getPayStub() { + return new GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubRequestBuilder(sdkConfiguration); } /** - * Get a single payroll + * Get an employee pay stub (pdf) * - *

    Returns a payroll. If payroll is calculated or processed, will return employee_compensations and - * totals. + *

    Get an employee's pay stub for the specified payroll. By default, an application/pdf response will + * be returned. No other content types are currently supported, but may be supported in the future. * - *

    Results are paginated, with a maximum page size of 100 employee_compensations. + *

    scope: `pay_stubs:read` * - *

    Notes: - * * Hour and dollar amounts are returned as string representations of numeric decimals. - * * Hours are represented to the thousands place; dollar amounts are represented to the cent. - * * Every eligible compensation is returned for each employee. If no data has yet be inserted for a - * given field, it defaults to "0.00" (for fixed amounts) or "0.000" (for hours ). - * * When include parameter with benefits value is passed, employee_benefits:read scope is required to - * return benefits - * * Benefits containing PHI are only visible with the `employee_benefits:read:phi` scope + *

    If set, this operation will use Security#companyAccessAuth from the global security. * - *

    scope: `payrolls:read` + * @param payrollId The UUID of the payroll + * @param employeeId The UUID of the employee + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubResponse getPayStub(String payrollId, String employeeId) { + return getPayStub(Optional.empty(), payrollId, employeeId); + } + + /** + * Get an employee pay stub (pdf) + * + *

    Get an employee's pay stub for the specified payroll. By default, an application/pdf response will + * be returned. No other content types are currently supported, but may be supported in the future. + * + *

    scope: `pay_stubs:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param request The request object containing all the parameters for the API call. + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param payrollId The UUID of the payroll + * @param employeeId The UUID of the employee * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1CompaniesCompanyIdPayrollsPayrollIdResponse get(GetV1CompaniesCompanyIdPayrollsPayrollIdRequest request) { - RequestOperation operation - = new GetV1CompaniesCompanyIdPayrollsPayrollId.Sync(sdkConfiguration, _headers); + public GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubResponse getPayStub( + Optional xGustoAPIVersion, String payrollId, + String employeeId) { + GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubRequest request = + GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .payrollId(payrollId) + .employeeId(employeeId) + .build(); + RequestOperation operation + = new GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStub.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Update a payroll by ID + * Get partner disbursements for a payroll * - *

    This endpoint allows you to update information for one or more employees for a specific - * **unprocessed** payroll. You can think of the **unprocessed** - * payroll object as a template of fields that you can update. You cannot modify the structure of the - * payroll object through this endpoint, only values - * of the fields included in the payroll. If you do not include specific employee compensations, - * fixed/hourly compensations, or deductions in your request body, they - * will not be removed from the payroll. A maximum of 100 employee_compensations can be updated at a - * time. Only the employee compensation objects that were - * inputted will be returned. + *

    Get partner disbursements for a specific payroll. * - *

    scope: `payrolls:write` + *

    scope: `partner_disbursements:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public PutV1CompaniesCompanyIdPayrollsRequestBuilder update() { - return new PutV1CompaniesCompanyIdPayrollsRequestBuilder(sdkConfiguration); + public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder getV1CompaniesCompanyIdPayrollsIdPartnerDisbursements() { + return new GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder(sdkConfiguration); } /** - * Update a payroll by ID + * Get partner disbursements for a payroll * - *

    This endpoint allows you to update information for one or more employees for a specific - * **unprocessed** payroll. You can think of the **unprocessed** - * payroll object as a template of fields that you can update. You cannot modify the structure of the - * payroll object through this endpoint, only values - * of the fields included in the payroll. If you do not include specific employee compensations, - * fixed/hourly compensations, or deductions in your request body, they - * will not be removed from the payroll. A maximum of 100 employee_compensations can be updated at a - * time. Only the employee compensation objects that were - * inputted will be returned. + *

    Get partner disbursements for a specific payroll. * - *

    scope: `payrolls:write` + *

    scope: `partner_disbursements:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param companyId The UUID of the company - * @param payrollId The UUID of the payroll - * @param payrollUpdate + * @param id The UUID of the payroll * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1CompaniesCompanyIdPayrollsResponse update( - String companyId, String payrollId, - PayrollUpdate payrollUpdate) { - return update(Optional.empty(), companyId, payrollId, - payrollUpdate); + public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsResponse getV1CompaniesCompanyIdPayrollsIdPartnerDisbursements(String companyId, String id) { + return getV1CompaniesCompanyIdPayrollsIdPartnerDisbursements(Optional.empty(), companyId, id); } /** - * Update a payroll by ID + * Get partner disbursements for a payroll * - *

    This endpoint allows you to update information for one or more employees for a specific - * **unprocessed** payroll. You can think of the **unprocessed** - * payroll object as a template of fields that you can update. You cannot modify the structure of the - * payroll object through this endpoint, only values - * of the fields included in the payroll. If you do not include specific employee compensations, - * fixed/hourly compensations, or deductions in your request body, they - * will not be removed from the payroll. A maximum of 100 employee_compensations can be updated at a - * time. Only the employee compensation objects that were - * inputted will be returned. + *

    Get partner disbursements for a specific payroll. * - *

    scope: `payrolls:write` + *

    scope: `partner_disbursements:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyId The UUID of the company - * @param payrollId The UUID of the payroll - * @param payrollUpdate + * @param id The UUID of the payroll * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1CompaniesCompanyIdPayrollsResponse update( - Optional xGustoAPIVersion, String companyId, - String payrollId, PayrollUpdate payrollUpdate) { - PutV1CompaniesCompanyIdPayrollsRequest request = - PutV1CompaniesCompanyIdPayrollsRequest + public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsResponse getV1CompaniesCompanyIdPayrollsIdPartnerDisbursements( + Optional xGustoAPIVersion, String companyId, + String id) { + GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest request = + GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .companyId(companyId) - .payrollId(payrollId) - .payrollUpdate(payrollUpdate) + .id(id) .build(); - RequestOperation operation - = new PutV1CompaniesCompanyIdPayrolls.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursements.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Delete a payroll - * - *

    This endpoint allows you to delete an **unprocessed** payroll. - * - *

    By default the payroll and associated data is deleted synchronously. To request an asynchronous - * delete, use the `async=true` query parameter. In both cases validation of ability to delete will be - * performed and an Unprocessable Entity error will be returned if the payroll is not able to be - * deleted. + * Update partner disbursements for a payroll * - *

    A successful synchronous delete will return `204/No Content`. When a payroll has been enqueued for - * asynchronous deletion, `202/Accepted` will be returned. + *

    Update partner disbursements for a specific payroll. * - *

    scope: `payrolls:run` + *

    scope: `partner_disbursements:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public DeleteV1CompaniesCompanyIdPayrollsRequestBuilder delete() { - return new DeleteV1CompaniesCompanyIdPayrollsRequestBuilder(sdkConfiguration); + public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder patchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements() { + return new PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder(sdkConfiguration); } /** - * Delete a payroll - * - *

    This endpoint allows you to delete an **unprocessed** payroll. - * - *

    By default the payroll and associated data is deleted synchronously. To request an asynchronous - * delete, use the `async=true` query parameter. In both cases validation of ability to delete will be - * performed and an Unprocessable Entity error will be returned if the payroll is not able to be - * deleted. + * Update partner disbursements for a payroll * - *

    A successful synchronous delete will return `204/No Content`. When a payroll has been enqueued for - * asynchronous deletion, `202/Accepted` will be returned. + *

    Update partner disbursements for a specific payroll. * - *

    scope: `payrolls:run` + *

    scope: `partner_disbursements:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param companyId The UUID of the company - * @param payrollId The UUID of the payroll + * @param id The UUID of the payroll * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public DeleteV1CompaniesCompanyIdPayrollsResponse delete(String companyId, String payrollId) { - return delete(companyId, payrollId, Optional.empty(), + public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsResponse patchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements(String companyId, String id) { + return patchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements(Optional.empty(), companyId, id, Optional.empty()); } /** - * Delete a payroll - * - *

    This endpoint allows you to delete an **unprocessed** payroll. - * - *

    By default the payroll and associated data is deleted synchronously. To request an asynchronous - * delete, use the `async=true` query parameter. In both cases validation of ability to delete will be - * performed and an Unprocessable Entity error will be returned if the payroll is not able to be - * deleted. + * Update partner disbursements for a payroll * - *

    A successful synchronous delete will return `204/No Content`. When a payroll has been enqueued for - * asynchronous deletion, `202/Accepted` will be returned. + *

    Update partner disbursements for a specific payroll. * - *

    scope: `payrolls:run` + *

    scope: `partner_disbursements:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company - * @param payrollId The UUID of the payroll - * @param async When true, request an asynchronous delete of the payroll. * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company + * @param id The UUID of the payroll + * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public DeleteV1CompaniesCompanyIdPayrollsResponse delete( - String companyId, String payrollId, - Optional async, Optional xGustoAPIVersion) { - DeleteV1CompaniesCompanyIdPayrollsRequest request = - DeleteV1CompaniesCompanyIdPayrollsRequest + public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsResponse patchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements( + Optional xGustoAPIVersion, String companyId, + String id, Optional requestBody) { + PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest request = + PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest .builder() - .companyId(companyId) - .payrollId(payrollId) - .async(async) .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) + .id(id) + .requestBody(requestBody) .build(); - RequestOperation operation - = new DeleteV1CompaniesCompanyIdPayrolls.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Prepare a payroll for update - * - *

    Prepares an unprocessed payroll for update, including: adding or removing eligible employees from - * the payroll, - * and updating `check_date`, `payroll_deadline`, and `payroll_status_meta` dates and times. - * - *

    Use this endpoint before calling [PUT - * /v1/companies/{company_id}/payrolls/{payroll_id}](ref:put-v1-companies-company_id-payrolls). - * - *

    ### Notes + * Get approved payroll reversals * - *

    * Nullifies `calculated_at` and `totals` if the payroll was previously calculated - * * Returns the `version` parameter required for [updating the - * payroll](ref:put-v1-companies-company_id-payrolls) - * * `employees:read` scope is required to include employee compensations data in the response. - * * Results are paginated, with a maximum page size of 100 employee compensations. + *

    Returns all approved Payroll Reversals for a Company. * - *

    scope: `payrolls:write employees:read` + *

    scope: `payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBuilder prepare() { - return new PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBuilder(sdkConfiguration); + public GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder getApprovedReversals() { + return new GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder(sdkConfiguration); } /** - * Prepare a payroll for update - * - *

    Prepares an unprocessed payroll for update, including: adding or removing eligible employees from - * the payroll, - * and updating `check_date`, `payroll_deadline`, and `payroll_status_meta` dates and times. - * - *

    Use this endpoint before calling [PUT - * /v1/companies/{company_id}/payrolls/{payroll_id}](ref:put-v1-companies-company_id-payrolls). - * - *

    ### Notes + * Get approved payroll reversals * - *

    * Nullifies `calculated_at` and `totals` if the payroll was previously calculated - * * Returns the `version` parameter required for [updating the - * payroll](ref:put-v1-companies-company_id-payrolls) - * * `employees:read` scope is required to include employee compensations data in the response. - * * Results are paginated, with a maximum page size of 100 employee compensations. + *

    Returns all approved Payroll Reversals for a Company. * - *

    scope: `payrolls:write employees:read` + *

    scope: `payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param request The request object containing all the parameters for the API call. + * @param companyId The UUID of the company * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareResponse prepare(PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequest request) { - RequestOperation operation - = new PutV1CompaniesCompanyIdPayrollsPayrollIdPrepare.Sync(sdkConfiguration, _headers); - return operation.handleResponse(operation.doRequest(request)); + public GetV1CompaniesCompanyIdPayrollReversalsResponse getApprovedReversals(String companyId) { + return getApprovedReversals(Optional.empty(), companyId, Optional.empty(), + Optional.empty()); } /** - * Get a single payroll receipt - * - *

    Returns a payroll receipt. + * Get approved payroll reversals * - *

    Notes: - * * Hour and dollar amounts are returned as string representations of numeric decimals. - * * Dollar amounts are represented to the cent. - * * If no data has yet be inserted for a given field, it defaults to "0.00" (for fixed amounts). + *

    Returns all approved Payroll Reversals for a Company. * *

    scope: `payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @return The call builder + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company + * @param page The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + * @param per Number of objects per page. For majority of endpoints will default to 25 + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails */ - public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder getReceipt() { - return new GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder(sdkConfiguration); + public GetV1CompaniesCompanyIdPayrollReversalsResponse getApprovedReversals( + Optional xGustoAPIVersion, String companyId, + Optional page, Optional per) { + GetV1CompaniesCompanyIdPayrollReversalsRequest request = + GetV1CompaniesCompanyIdPayrollReversalsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) + .page(page) + .per(per) + .build(); + RequestOperation operation + = new GetV1CompaniesCompanyIdPayrollReversals.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); } /** - * Get a single payroll receipt + * Get a single payroll * - *

    Returns a payroll receipt. + *

    Returns a payroll. If payroll is calculated or processed, will return employee_compensations and + * totals. + * + *

    Results are paginated, with a maximum page size of 100 employee_compensations. * *

    Notes: * * Hour and dollar amounts are returned as string representations of numeric decimals. - * * Dollar amounts are represented to the cent. - * * If no data has yet be inserted for a given field, it defaults to "0.00" (for fixed amounts). + * * Hours are represented to the thousands place; dollar amounts are represented to the cent. + * * Every eligible compensation is returned for each employee. If no data has yet be inserted for a + * given field, it defaults to "0.00" (for fixed amounts) or "0.000" (for hours ). + * * When include parameter with benefits value is passed, employee_benefits:read scope is required to + * return benefits + * * Benefits containing PHI are only visible with the `employee_benefits:read:phi` scope * *

    scope: `payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param payrollUuid The UUID of the payroll - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails + * @return The call builder */ - public GetV1PaymentReceiptsPayrollsPayrollUuidResponse getReceipt(String payrollUuid) { - return getReceipt(payrollUuid, Optional.empty()); + public GetV1CompaniesCompanyIdPayrollsPayrollIdRequestBuilder get() { + return new GetV1CompaniesCompanyIdPayrollsPayrollIdRequestBuilder(sdkConfiguration); } /** - * Get a single payroll receipt + * Get a single payroll * - *

    Returns a payroll receipt. + *

    Returns a payroll. If payroll is calculated or processed, will return employee_compensations and + * totals. + * + *

    Results are paginated, with a maximum page size of 100 employee_compensations. * *

    Notes: * * Hour and dollar amounts are returned as string representations of numeric decimals. - * * Dollar amounts are represented to the cent. - * * If no data has yet be inserted for a given field, it defaults to "0.00" (for fixed amounts). + * * Hours are represented to the thousands place; dollar amounts are represented to the cent. + * * Every eligible compensation is returned for each employee. If no data has yet be inserted for a + * given field, it defaults to "0.00" (for fixed amounts) or "0.000" (for hours ). + * * When include parameter with benefits value is passed, employee_benefits:read scope is required to + * return benefits + * * Benefits containing PHI are only visible with the `employee_benefits:read:phi` scope * *

    scope: `payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param payrollUuid The UUID of the payroll - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param request The request object containing all the parameters for the API call. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1PaymentReceiptsPayrollsPayrollUuidResponse getReceipt(String payrollUuid, Optional xGustoAPIVersion) { - GetV1PaymentReceiptsPayrollsPayrollUuidRequest request = - GetV1PaymentReceiptsPayrollsPayrollUuidRequest - .builder() - .payrollUuid(payrollUuid) - .xGustoAPIVersion(xGustoAPIVersion) - .build(); - RequestOperation operation - = new GetV1PaymentReceiptsPayrollsPayrollUuid.Sync(sdkConfiguration, _headers); + public GetV1CompaniesCompanyIdPayrollsPayrollIdResponse get(GetV1CompaniesCompanyIdPayrollsPayrollIdRequest request) { + RequestOperation operation + = new GetV1CompaniesCompanyIdPayrollsPayrollId.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Get all payroll blockers for a company + * Update a payroll by ID * - *

    Returns a list of reasons that prevent the company from running payrolls. See the [Payroll Blockers - * guide](doc:payroll-blockers) for a complete list of reasons. The list is empty if there are no - * payroll blockers. + *

    This endpoint allows you to update information for one or more employees for a specific + * **unprocessed** payroll. You can think of the **unprocessed** + * payroll object as a template of fields that you can update. You cannot modify the structure of the + * payroll object through this endpoint, only values + * of the fields included in the payroll. If you do not include specific employee compensations, + * fixed/hourly compensations, or deductions in your request body, they + * will not be removed from the payroll. A maximum of 100 employee_compensations can be updated at a + * time. Only the employee compensation objects that were + * inputted will be returned. * - *

    scope: `payrolls:run` + *

    scope: `payrolls:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public GetV1CompaniesPayrollBlockersCompanyUuidRequestBuilder getBlockers() { - return new GetV1CompaniesPayrollBlockersCompanyUuidRequestBuilder(sdkConfiguration); + public PutV1CompaniesCompanyIdPayrollsRequestBuilder update() { + return new PutV1CompaniesCompanyIdPayrollsRequestBuilder(sdkConfiguration); } /** - * Get all payroll blockers for a company + * Update a payroll by ID * - *

    Returns a list of reasons that prevent the company from running payrolls. See the [Payroll Blockers - * guide](doc:payroll-blockers) for a complete list of reasons. The list is empty if there are no - * payroll blockers. + *

    This endpoint allows you to update information for one or more employees for a specific + * **unprocessed** payroll. You can think of the **unprocessed** + * payroll object as a template of fields that you can update. You cannot modify the structure of the + * payroll object through this endpoint, only values + * of the fields included in the payroll. If you do not include specific employee compensations, + * fixed/hourly compensations, or deductions in your request body, they + * will not be removed from the payroll. A maximum of 100 employee_compensations can be updated at a + * time. Only the employee compensation objects that were + * inputted will be returned. * - *

    scope: `payrolls:run` + *

    scope: `payrolls:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company + * @param companyId The UUID of the company + * @param payrollId The UUID of the payroll + * @param payrollUpdate * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1CompaniesPayrollBlockersCompanyUuidResponse getBlockers(String companyUuid) { - return getBlockers(Optional.empty(), companyUuid); + public PutV1CompaniesCompanyIdPayrollsResponse update( + String companyId, String payrollId, + PayrollUpdate payrollUpdate) { + return update(Optional.empty(), companyId, payrollId, + payrollUpdate); } /** - * Get all payroll blockers for a company + * Update a payroll by ID * - *

    Returns a list of reasons that prevent the company from running payrolls. See the [Payroll Blockers - * guide](doc:payroll-blockers) for a complete list of reasons. The list is empty if there are no - * payroll blockers. + *

    This endpoint allows you to update information for one or more employees for a specific + * **unprocessed** payroll. You can think of the **unprocessed** + * payroll object as a template of fields that you can update. You cannot modify the structure of the + * payroll object through this endpoint, only values + * of the fields included in the payroll. If you do not include specific employee compensations, + * fixed/hourly compensations, or deductions in your request body, they + * will not be removed from the payroll. A maximum of 100 employee_compensations can be updated at a + * time. Only the employee compensation objects that were + * inputted will be returned. * - *

    scope: `payrolls:run` + *

    scope: `payrolls:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyUuid The UUID of the company + * @param companyId The UUID of the company + * @param payrollId The UUID of the payroll + * @param payrollUpdate * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1CompaniesPayrollBlockersCompanyUuidResponse getBlockers(Optional xGustoAPIVersion, String companyUuid) { - GetV1CompaniesPayrollBlockersCompanyUuidRequest request = - GetV1CompaniesPayrollBlockersCompanyUuidRequest + public PutV1CompaniesCompanyIdPayrollsResponse update( + Optional xGustoAPIVersion, String companyId, + String payrollId, PayrollUpdate payrollUpdate) { + PutV1CompaniesCompanyIdPayrollsRequest request = + PutV1CompaniesCompanyIdPayrollsRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .companyUuid(companyUuid) + .companyId(companyId) + .payrollId(payrollId) + .payrollUpdate(payrollUpdate) .build(); - RequestOperation operation - = new GetV1CompaniesPayrollBlockersCompanyUuid.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PutV1CompaniesCompanyIdPayrolls.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Skip a payroll + * Delete a payroll * - *

    Submits a $0 payroll for employees associated with the pay schedule to skip payroll. This submission - * is asynchronous and a successful request responds with a 202 HTTP status. Upon success, the payroll - * is transitioned to the `processed` state. + *

    This endpoint allows you to delete an **unprocessed** payroll. * - *

    If the company is blocked from running payroll due to issues like incomplete setup, missing - * information or other compliance issues, the response will be 422 Unprocessable Entity with a - * categorization of the blockers as described in the error responses. + *

    By default the payroll and associated data is deleted synchronously. To request an asynchronous + * delete, use the `async=true` query parameter. In both cases validation of ability to delete will be + * performed and an Unprocessable Entity error will be returned if the payroll is not able to be + * deleted. + * + *

    A successful synchronous delete will return `204/No Content`. When a payroll has been enqueued for + * asynchronous deletion, `202/Accepted` will be returned. * *

    scope: `payrolls:run` * @@ -790,161 +703,143 @@ public GetV1CompaniesPayrollBlockersCompanyUuidResponse getBlockers(OptionalSubmits a $0 payroll for employees associated with the pay schedule to skip payroll. This submission - * is asynchronous and a successful request responds with a 202 HTTP status. Upon success, the payroll - * is transitioned to the `processed` state. + *

    This endpoint allows you to delete an **unprocessed** payroll. * - *

    If the company is blocked from running payroll due to issues like incomplete setup, missing - * information or other compliance issues, the response will be 422 Unprocessable Entity with a - * categorization of the blockers as described in the error responses. + *

    By default the payroll and associated data is deleted synchronously. To request an asynchronous + * delete, use the `async=true` query parameter. In both cases validation of ability to delete will be + * performed and an Unprocessable Entity error will be returned if the payroll is not able to be + * deleted. + * + *

    A successful synchronous delete will return `204/No Content`. When a payroll has been enqueued for + * asynchronous deletion, `202/Accepted` will be returned. * *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company - * @param requestBody + * @param companyId The UUID of the company + * @param payrollId The UUID of the payroll * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostCompaniesPayrollSkipCompanyUuidResponse skip(String companyUuid, PostCompaniesPayrollSkipCompanyUuidRequestBody requestBody) { - return skip(Optional.empty(), companyUuid, requestBody); + public DeleteV1CompaniesCompanyIdPayrollsResponse delete(String companyId, String payrollId) { + return delete(Optional.empty(), companyId, payrollId, + Optional.empty()); } /** - * Skip a payroll + * Delete a payroll * - *

    Submits a $0 payroll for employees associated with the pay schedule to skip payroll. This submission - * is asynchronous and a successful request responds with a 202 HTTP status. Upon success, the payroll - * is transitioned to the `processed` state. + *

    This endpoint allows you to delete an **unprocessed** payroll. * - *

    If the company is blocked from running payroll due to issues like incomplete setup, missing - * information or other compliance issues, the response will be 422 Unprocessable Entity with a - * categorization of the blockers as described in the error responses. + *

    By default the payroll and associated data is deleted synchronously. To request an asynchronous + * delete, use the `async=true` query parameter. In both cases validation of ability to delete will be + * performed and an Unprocessable Entity error will be returned if the payroll is not able to be + * deleted. + * + *

    A successful synchronous delete will return `204/No Content`. When a payroll has been enqueued for + * asynchronous deletion, `202/Accepted` will be returned. * *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyUuid The UUID of the company - * @param requestBody + * @param companyId The UUID of the company + * @param payrollId The UUID of the payroll + * @param async When true, request an asynchronous delete of the payroll. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostCompaniesPayrollSkipCompanyUuidResponse skip( - Optional xGustoAPIVersion, String companyUuid, - PostCompaniesPayrollSkipCompanyUuidRequestBody requestBody) { - PostCompaniesPayrollSkipCompanyUuidRequest request = - PostCompaniesPayrollSkipCompanyUuidRequest + public DeleteV1CompaniesCompanyIdPayrollsResponse delete( + Optional xGustoAPIVersion, String companyId, + String payrollId, Optional async) { + DeleteV1CompaniesCompanyIdPayrollsRequest request = + DeleteV1CompaniesCompanyIdPayrollsRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .companyUuid(companyUuid) - .requestBody(requestBody) + .companyId(companyId) + .payrollId(payrollId) + .async(async) .build(); - RequestOperation operation - = new PostCompaniesPayrollSkipCompanyUuid.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new DeleteV1CompaniesCompanyIdPayrolls.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Calculate gross up for a payroll + * Get all payrolls for a company * - *

    Calculates gross up earnings for an employee's payroll, given net earnings. This endpoint is only - * applicable to off-cycle unprocessed payrolls. + *

    Returns a list of payrolls for a company. You can change the payrolls returned by updating the + * processing_status, payroll_types, start_date, & end_date params. * - *

    The gross up amount must then be mapped to the corresponding fixed compensation earning type to get - * the correct payroll amount. For example, for bonus off-cycles, the gross up amount should be set - * with the Bonus earning type in the payroll `fixed_compensations` field. + *

    By default, will return processed, regular payrolls for the past 6 months. * - *

    scope: `payrolls:run` + *

    Notes: + * * Dollar amounts are returned as string representations of numeric decimals, are represented to the + * cent. + * * end_date can be at most 3 months in the future and start_date and end_date can't be more than 1 + * year apart. + * * Results are paginated. Maximum page size is 100 payrolls per request; the default page size is 25. + * + *

    scope: `payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public PostPayrollsGrossUpPayrollUuidRequestBuilder calculateGrossUp() { - return new PostPayrollsGrossUpPayrollUuidRequestBuilder(sdkConfiguration); + public GetV1CompaniesCompanyIdPayrollsRequestBuilder list() { + return new GetV1CompaniesCompanyIdPayrollsRequestBuilder(sdkConfiguration); } /** - * Calculate gross up for a payroll - * - *

    Calculates gross up earnings for an employee's payroll, given net earnings. This endpoint is only - * applicable to off-cycle unprocessed payrolls. - * - *

    The gross up amount must then be mapped to the corresponding fixed compensation earning type to get - * the correct payroll amount. For example, for bonus off-cycles, the gross up amount should be set - * with the Bonus earning type in the payroll `fixed_compensations` field. - * - *

    scope: `payrolls:run` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. + * Get all payrolls for a company * - * @param payrollUuid The UUID of the payroll - * @param payrollGrossUpRequest Request body for calculating gross up amount - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public PostPayrollsGrossUpPayrollUuidResponse calculateGrossUp(String payrollUuid, PayrollGrossUpRequest payrollGrossUpRequest) { - return calculateGrossUp(Optional.empty(), payrollUuid, payrollGrossUpRequest); - } - - /** - * Calculate gross up for a payroll + *

    Returns a list of payrolls for a company. You can change the payrolls returned by updating the + * processing_status, payroll_types, start_date, & end_date params. * - *

    Calculates gross up earnings for an employee's payroll, given net earnings. This endpoint is only - * applicable to off-cycle unprocessed payrolls. + *

    By default, will return processed, regular payrolls for the past 6 months. * - *

    The gross up amount must then be mapped to the corresponding fixed compensation earning type to get - * the correct payroll amount. For example, for bonus off-cycles, the gross up amount should be set - * with the Bonus earning type in the payroll `fixed_compensations` field. + *

    Notes: + * * Dollar amounts are returned as string representations of numeric decimals, are represented to the + * cent. + * * end_date can be at most 3 months in the future and start_date and end_date can't be more than 1 + * year apart. + * * Results are paginated. Maximum page size is 100 payrolls per request; the default page size is 25. * - *

    scope: `payrolls:run` + *

    scope: `payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param payrollUuid The UUID of the payroll - * @param payrollGrossUpRequest Request body for calculating gross up amount + * @param request The request object containing all the parameters for the API call. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostPayrollsGrossUpPayrollUuidResponse calculateGrossUp( - Optional xGustoAPIVersion, String payrollUuid, - PayrollGrossUpRequest payrollGrossUpRequest) { - PostPayrollsGrossUpPayrollUuidRequest request = - PostPayrollsGrossUpPayrollUuidRequest - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .payrollUuid(payrollUuid) - .payrollGrossUpRequest(payrollGrossUpRequest) - .build(); - RequestOperation operation - = new PostPayrollsGrossUpPayrollUuid.Sync(sdkConfiguration, _headers); + public GetV1CompaniesCompanyIdPayrollsResponse list(GetV1CompaniesCompanyIdPayrollsRequest request) { + RequestOperation operation + = new GetV1CompaniesCompanyIdPayrolls.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Calculate a payroll + * Create an off-cycle payroll * - *

    Performs calculations for taxes, benefits, and deductions for an unprocessed payroll. The calculated - * payroll details provide a preview of the actual values that will be used when the payroll is run. + *

    Creates a new, unprocessed, off-cycle payroll. * - *

    This calculation is asynchronous and a successful request responds with a 202 HTTP status. To view - * the details of the calculated payroll, use the GET /v1/companies/{company_id}/payrolls/{payroll_id} - * endpoint with *include=taxes,benefits,deductions* params. + *

    ## `off_cycle_reason` + * By default: + * - External benefits and deductions will be included when the `off_cycle_reason` is set to + * `Correction`. + * - All benefits and deductions are blocked when the `off_cycle_reason` is set to `Bonus`. * - *

    If the company is blocked from running payroll due to issues like incomplete setup, missing - * information or other compliance issues, the response will be 422 Unprocessable Entity with a - * categorization of the blockers as described in the error responses. + *

    These elections can be overridden with the `skip_regular_deductions` boolean. * *

    scope: `payrolls:run` * @@ -952,50 +847,47 @@ public PostPayrollsGrossUpPayrollUuidResponse calculateGrossUp( * * @return The call builder */ - public PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateRequestBuilder calculate() { - return new PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateRequestBuilder(sdkConfiguration); + public PostV1CompaniesCompanyIdPayrollsRequestBuilder createOffCycle() { + return new PostV1CompaniesCompanyIdPayrollsRequestBuilder(sdkConfiguration); } /** - * Calculate a payroll + * Create an off-cycle payroll * - *

    Performs calculations for taxes, benefits, and deductions for an unprocessed payroll. The calculated - * payroll details provide a preview of the actual values that will be used when the payroll is run. + *

    Creates a new, unprocessed, off-cycle payroll. * - *

    This calculation is asynchronous and a successful request responds with a 202 HTTP status. To view - * the details of the calculated payroll, use the GET /v1/companies/{company_id}/payrolls/{payroll_id} - * endpoint with *include=taxes,benefits,deductions* params. + *

    ## `off_cycle_reason` + * By default: + * - External benefits and deductions will be included when the `off_cycle_reason` is set to + * `Correction`. + * - All benefits and deductions are blocked when the `off_cycle_reason` is set to `Bonus`. * - *

    If the company is blocked from running payroll due to issues like incomplete setup, missing - * information or other compliance issues, the response will be 422 Unprocessable Entity with a - * categorization of the blockers as described in the error responses. + *

    These elections can be overridden with the `skip_regular_deductions` boolean. * *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param companyId The UUID of the company - * @param payrollId The UUID of the payroll * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateResponse calculate(String companyId, String payrollId) { - return calculate(Optional.empty(), companyId, payrollId); + public PostV1CompaniesCompanyIdPayrollsResponse createOffCycle(String companyId) { + return createOffCycle(Optional.empty(), companyId, Optional.empty()); } /** - * Calculate a payroll + * Create an off-cycle payroll * - *

    Performs calculations for taxes, benefits, and deductions for an unprocessed payroll. The calculated - * payroll details provide a preview of the actual values that will be used when the payroll is run. + *

    Creates a new, unprocessed, off-cycle payroll. * - *

    This calculation is asynchronous and a successful request responds with a 202 HTTP status. To view - * the details of the calculated payroll, use the GET /v1/companies/{company_id}/payrolls/{payroll_id} - * endpoint with *include=taxes,benefits,deductions* params. + *

    ## `off_cycle_reason` + * By default: + * - External benefits and deductions will be included when the `off_cycle_reason` is set to + * `Correction`. + * - All benefits and deductions are blocked when the `off_cycle_reason` is set to `Bonus`. * - *

    If the company is blocked from running payroll due to issues like incomplete setup, missing - * information or other compliance issues, the response will be 422 Unprocessable Entity with a - * categorization of the blockers as described in the error responses. + *

    These elections can be overridden with the `skip_regular_deductions` boolean. * *

    scope: `payrolls:run` * @@ -1003,115 +895,117 @@ public PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateResponse calculate(Strin * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyId The UUID of the company - * @param payrollId The UUID of the payroll + * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateResponse calculate( - Optional xGustoAPIVersion, String companyId, - String payrollId) { - PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateRequest request = - PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateRequest + public PostV1CompaniesCompanyIdPayrollsResponse createOffCycle( + Optional xGustoAPIVersion, String companyId, + Optional requestBody) { + PostV1CompaniesCompanyIdPayrollsRequest request = + PostV1CompaniesCompanyIdPayrollsRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .companyId(companyId) - .payrollId(payrollId) + .requestBody(requestBody) .build(); - RequestOperation operation - = new PutV1CompaniesCompanyIdPayrollsPayrollIdCalculate.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PostV1CompaniesCompanyIdPayrolls.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Submit payroll - * - *

    Submits an unprocessed payroll to be calculated and run. This submission is asynchronous and a - * successful request responds with a 202 HTTP status. Upon success, transitions the payroll to the - * `processed` state. + * Get a single payroll receipt * - *

    You should poll to ensure that payroll is processed successfully, as async errors only occur after - * async processing is complete. + *

    Returns a payroll receipt. * - *

    If the company is blocked from running payroll due to issues like incomplete setup, missing - * information or other compliance issues, the response will be 422 Unprocessable Entity with a - * categorization of the blockers as described in the error responses. + *

    Notes: + * * Hour and dollar amounts are returned as string representations of numeric decimals. + * * Dollar amounts are represented to the cent. + * * If no data has yet be inserted for a given field, it defaults to "0.00" (for fixed amounts). + * * Pagination is optional. Supplying `page` and/or `per` returns only the requested page of employee + * compensations and includes the `X-Page`, `X-Total-Count`, `X-Total-Pages`, and `X-Per-Page` response + * headers. Without either parameter, all employee compensations are returned without pagination + * headers. + * * Maximum page size is 100 employee compensations per request. * - *

    scope: `payrolls:run` + *

    scope: `payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitRequestBuilder submit() { - return new PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitRequestBuilder(sdkConfiguration); + public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder getReceipt() { + return new GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder(sdkConfiguration); } /** - * Submit payroll - * - *

    Submits an unprocessed payroll to be calculated and run. This submission is asynchronous and a - * successful request responds with a 202 HTTP status. Upon success, transitions the payroll to the - * `processed` state. + * Get a single payroll receipt * - *

    You should poll to ensure that payroll is processed successfully, as async errors only occur after - * async processing is complete. + *

    Returns a payroll receipt. * - *

    If the company is blocked from running payroll due to issues like incomplete setup, missing - * information or other compliance issues, the response will be 422 Unprocessable Entity with a - * categorization of the blockers as described in the error responses. + *

    Notes: + * * Hour and dollar amounts are returned as string representations of numeric decimals. + * * Dollar amounts are represented to the cent. + * * If no data has yet be inserted for a given field, it defaults to "0.00" (for fixed amounts). + * * Pagination is optional. Supplying `page` and/or `per` returns only the requested page of employee + * compensations and includes the `X-Page`, `X-Total-Count`, `X-Total-Pages`, and `X-Per-Page` response + * headers. Without either parameter, all employee compensations are returned without pagination + * headers. + * * Maximum page size is 100 employee compensations per request. * - *

    scope: `payrolls:run` + *

    scope: `payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company - * @param payrollId The UUID of the payroll + * @param payrollUuid The UUID of the payroll * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitResponse submit(String companyId, String payrollId) { - return submit(Optional.empty(), companyId, payrollId, + public GetV1PaymentReceiptsPayrollsPayrollUuidResponse getReceipt(String payrollUuid) { + return getReceipt(Optional.empty(), payrollUuid, Optional.empty(), Optional.empty()); } /** - * Submit payroll - * - *

    Submits an unprocessed payroll to be calculated and run. This submission is asynchronous and a - * successful request responds with a 202 HTTP status. Upon success, transitions the payroll to the - * `processed` state. + * Get a single payroll receipt * - *

    You should poll to ensure that payroll is processed successfully, as async errors only occur after - * async processing is complete. + *

    Returns a payroll receipt. * - *

    If the company is blocked from running payroll due to issues like incomplete setup, missing - * information or other compliance issues, the response will be 422 Unprocessable Entity with a - * categorization of the blockers as described in the error responses. + *

    Notes: + * * Hour and dollar amounts are returned as string representations of numeric decimals. + * * Dollar amounts are represented to the cent. + * * If no data has yet be inserted for a given field, it defaults to "0.00" (for fixed amounts). + * * Pagination is optional. Supplying `page` and/or `per` returns only the requested page of employee + * compensations and includes the `X-Page`, `X-Total-Count`, `X-Total-Pages`, and `X-Per-Page` response + * headers. Without either parameter, all employee compensations are returned without pagination + * headers. + * * Maximum page size is 100 employee compensations per request. * - *

    scope: `payrolls:run` + *

    scope: `payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyId The UUID of the company - * @param payrollId The UUID of the payroll - * @param requestBody + * @param payrollUuid The UUID of the payroll + * @param page The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + * @param per Number of objects per page. For majority of endpoints will default to 25 * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitResponse submit( - Optional xGustoAPIVersion, String companyId, - String payrollId, Optional requestBody) { - PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitRequest request = - PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitRequest + public GetV1PaymentReceiptsPayrollsPayrollUuidResponse getReceipt( + Optional xGustoAPIVersion, String payrollUuid, + Optional page, Optional per) { + GetV1PaymentReceiptsPayrollsPayrollUuidRequest request = + GetV1PaymentReceiptsPayrollsPayrollUuidRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .companyId(companyId) - .payrollId(payrollId) - .requestBody(requestBody) + .payrollUuid(payrollUuid) + .page(page) + .per(per) .build(); - RequestOperation operation - = new PutV1CompaniesCompanyIdPayrollsPayrollIdSubmit.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new GetV1PaymentReceiptsPayrollsPayrollUuid.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } @@ -1191,340 +1085,468 @@ public PutApiV1CompaniesCompanyIdPayrollsPayrollIdCancelResponse cancel( } /** - * Get an employee pay stub (pdf) + * Prepare a payroll for update * - *

    Get an employee's pay stub for the specified payroll. By default, an application/pdf response will - * be returned. No other content types are currently supported, but may be supported in the future. + *

    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_date`, `payroll_deadline`, and `payroll_status_meta` dates and times. * - *

    scope: `pay_stubs:read` + *

    Use this endpoint before calling [PUT + * /v1/companies/{company_id}/payrolls/{payroll_id}](ref:put-v1-companies-company_id-payrolls). + * + *

    ### Notes + * + *

    * Nullifies `calculated_at` and `totals` if the payroll was previously calculated + * * Returns the `version` parameter required for [updating the + * payroll](ref:put-v1-companies-company_id-payrolls) + * * `employees:read` scope is required to include employee compensations data in the response. + * * Results are paginated, with a maximum page size of 100 employee compensations. + * + *

    scope: `payrolls:write employees:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubRequestBuilder getPayStub() { - return new GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubRequestBuilder(sdkConfiguration); + public PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBuilder prepare() { + return new PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBuilder(sdkConfiguration); } /** - * Get an employee pay stub (pdf) + * Prepare a payroll for update * - *

    Get an employee's pay stub for the specified payroll. By default, an application/pdf response will - * be returned. No other content types are currently supported, but may be supported in the future. + *

    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_date`, `payroll_deadline`, and `payroll_status_meta` dates and times. * - *

    scope: `pay_stubs:read` + *

    Use this endpoint before calling [PUT + * /v1/companies/{company_id}/payrolls/{payroll_id}](ref:put-v1-companies-company_id-payrolls). + * + *

    ### Notes + * + *

    * Nullifies `calculated_at` and `totals` if the payroll was previously calculated + * * Returns the `version` parameter required for [updating the + * payroll](ref:put-v1-companies-company_id-payrolls) + * * `employees:read` scope is required to include employee compensations data in the response. + * * Results are paginated, with a maximum page size of 100 employee compensations. + * + *

    scope: `payrolls:write employees:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param request The request object containing all the parameters for the API call. + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareResponse prepare(PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequest request) { + RequestOperation operation + = new PutV1CompaniesCompanyIdPayrollsPayrollIdPrepare.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + + /** + * Calculate a payroll + * + *

    Performs calculations for taxes, benefits, and deductions for an unprocessed payroll. The calculated + * payroll details provide a preview of the actual values that will be used when the payroll is run. + * + *

    This calculation is asynchronous and a successful request responds with a 202 HTTP status. To view + * the details of the calculated payroll, use the GET /v1/companies/{company_id}/payrolls/{payroll_id} + * endpoint with *include=taxes,benefits,deductions* params. + * + *

    If the company is blocked from running payroll due to issues like incomplete setup, missing + * information or other compliance issues, the response will be 422 Unprocessable Entity with a + * categorization of the blockers as described in the error responses. + * + *

    scope: `payrolls:run` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateRequestBuilder calculate() { + return new PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateRequestBuilder(sdkConfiguration); + } + + /** + * Calculate a payroll + * + *

    Performs calculations for taxes, benefits, and deductions for an unprocessed payroll. The calculated + * payroll details provide a preview of the actual values that will be used when the payroll is run. + * + *

    This calculation is asynchronous and a successful request responds with a 202 HTTP status. To view + * the details of the calculated payroll, use the GET /v1/companies/{company_id}/payrolls/{payroll_id} + * endpoint with *include=taxes,benefits,deductions* params. + * + *

    If the company is blocked from running payroll due to issues like incomplete setup, missing + * information or other compliance issues, the response will be 422 Unprocessable Entity with a + * categorization of the blockers as described in the error responses. + * + *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * + * @param companyId The UUID of the company * @param payrollId The UUID of the payroll - * @param employeeId The UUID of the employee * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubResponse getPayStub(String payrollId, String employeeId) { - return getPayStub(Optional.empty(), payrollId, employeeId); + public PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateResponse calculate(String companyId, String payrollId) { + return calculate(Optional.empty(), companyId, payrollId); } /** - * Get an employee pay stub (pdf) + * Calculate a payroll * - *

    Get an employee's pay stub for the specified payroll. By default, an application/pdf response will - * be returned. No other content types are currently supported, but may be supported in the future. + *

    Performs calculations for taxes, benefits, and deductions for an unprocessed payroll. The calculated + * payroll details provide a preview of the actual values that will be used when the payroll is run. * - *

    scope: `pay_stubs:read` + *

    This calculation is asynchronous and a successful request responds with a 202 HTTP status. To view + * the details of the calculated payroll, use the GET /v1/companies/{company_id}/payrolls/{payroll_id} + * endpoint with *include=taxes,benefits,deductions* params. + * + *

    If the company is blocked from running payroll due to issues like incomplete setup, missing + * information or other compliance issues, the response will be 422 Unprocessable Entity with a + * categorization of the blockers as described in the error responses. + * + *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company * @param payrollId The UUID of the payroll - * @param employeeId The UUID of the employee * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubResponse getPayStub( - Optional xGustoAPIVersion, String payrollId, - String employeeId) { - GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubRequest request = - GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubRequest + public PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateResponse calculate( + Optional xGustoAPIVersion, String companyId, + String payrollId) { + PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateRequest request = + PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) .payrollId(payrollId) - .employeeId(employeeId) .build(); - RequestOperation operation - = new GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStub.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PutV1CompaniesCompanyIdPayrollsPayrollIdCalculate.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Get an employee's pay stubs - * - *

    Get an employee's pay stubs. + * Get all payroll blockers for a company * - *

    Results are returned in reverse chronological order (newest first). + *

    Returns a list of reasons that prevent the company from running payrolls. See the [Payroll Blockers + * guide](doc:payroll-blockers) for a complete list of reasons. The list is empty if there are no + * payroll blockers. * - *

    scope: `pay_stubs:read` + *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public GetV1EmployeesEmployeeUuidPayStubsRequestBuilder getPayStubs() { - return new GetV1EmployeesEmployeeUuidPayStubsRequestBuilder(sdkConfiguration); + public GetV1CompaniesPayrollBlockersCompanyUuidRequestBuilder getBlockers() { + return new GetV1CompaniesPayrollBlockersCompanyUuidRequestBuilder(sdkConfiguration); } /** - * Get an employee's pay stubs - * - *

    Get an employee's pay stubs. + * Get all payroll blockers for a company * - *

    Results are returned in reverse chronological order (newest first). + *

    Returns a list of reasons that prevent the company from running payrolls. See the [Payroll Blockers + * guide](doc:payroll-blockers) for a complete list of reasons. The list is empty if there are no + * payroll blockers. * - *

    scope: `pay_stubs:read` + *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param employeeId The UUID of the employee + * @param companyUuid The UUID of the company * @return The response from the API call * @throws RuntimeException subclass if the API call fails - */ - public GetV1EmployeesEmployeeUuidPayStubsResponse getPayStubs(String employeeId) { - return getPayStubs(Optional.empty(), employeeId, Optional.empty(), - Optional.empty()); + */ + public GetV1CompaniesPayrollBlockersCompanyUuidResponse getBlockers(String companyUuid) { + return getBlockers(Optional.empty(), companyUuid); } /** - * Get an employee's pay stubs - * - *

    Get an employee's pay stubs. + * Get all payroll blockers for a company * - *

    Results are returned in reverse chronological order (newest first). + *

    Returns a list of reasons that prevent the company from running payrolls. See the [Payroll Blockers + * guide](doc:payroll-blockers) for a complete list of reasons. The list is empty if there are no + * payroll blockers. * - *

    scope: `pay_stubs:read` + *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param employeeId The UUID of the employee - * @param page The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - * @param per Number of objects per page. For majority of endpoints will default to 25 + * @param companyUuid The UUID of the company * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1EmployeesEmployeeUuidPayStubsResponse getPayStubs( - Optional xGustoAPIVersion, String employeeId, - Optional page, Optional per) { - GetV1EmployeesEmployeeUuidPayStubsRequest request = - GetV1EmployeesEmployeeUuidPayStubsRequest + public GetV1CompaniesPayrollBlockersCompanyUuidResponse getBlockers(Optional xGustoAPIVersion, String companyUuid) { + GetV1CompaniesPayrollBlockersCompanyUuidRequest request = + GetV1CompaniesPayrollBlockersCompanyUuidRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .employeeId(employeeId) - .page(page) - .per(per) + .companyUuid(companyUuid) .build(); - RequestOperation operation - = new GetV1EmployeesEmployeeUuidPayStubs.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new GetV1CompaniesPayrollBlockersCompanyUuid.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Generate printable payroll checks (pdf) + * Skip a payroll * - *

    This endpoint initiates the generation of employee checks for the payroll specified by payroll_uuid. - * A generation status and corresponding request_uuid will be returned. Use the generated document GET - * endpoint with document_type: `printable_payroll_checks` and request_uuid to poll the check - * generation process and retrieve the generated check URL upon completion. + *

    Submits a $0 payroll for employees associated with the pay schedule to skip payroll. This submission + * is asynchronous and a successful request responds with a 202 HTTP status. Upon success, the payroll + * is transitioned to the `processed` state. * - *

    scope: `generated_documents:write` + *

    If the company is blocked from running payroll due to issues like incomplete setup, missing + * information or other compliance issues, the response will be 422 Unprocessable Entity with a + * categorization of the blockers as described in the error responses. + * + *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksRequestBuilder generatePrintableChecks() { - return new PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksRequestBuilder(sdkConfiguration); + public PostCompaniesPayrollSkipCompanyUuidRequestBuilder skip() { + return new PostCompaniesPayrollSkipCompanyUuidRequestBuilder(sdkConfiguration); } /** - * Generate printable payroll checks (pdf) + * Skip a payroll * - *

    This endpoint initiates the generation of employee checks for the payroll specified by payroll_uuid. - * A generation status and corresponding request_uuid will be returned. Use the generated document GET - * endpoint with document_type: `printable_payroll_checks` and request_uuid to poll the check - * generation process and retrieve the generated check URL upon completion. + *

    Submits a $0 payroll for employees associated with the pay schedule to skip payroll. This submission + * is asynchronous and a successful request responds with a 202 HTTP status. Upon success, the payroll + * is transitioned to the `processed` state. * - *

    scope: `generated_documents:write` + *

    If the company is blocked from running payroll due to issues like incomplete setup, missing + * information or other compliance issues, the response will be 422 Unprocessable Entity with a + * categorization of the blockers as described in the error responses. + * + *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param payrollUuid The UUID of the payroll - * @param printablePayrollChecksBody Request body for generating printable payroll checks. + * @param companyUuid The UUID of the company + * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksResponse generatePrintableChecks(String payrollUuid, PrintablePayrollChecksBody printablePayrollChecksBody) { - return generatePrintableChecks(Optional.empty(), payrollUuid, printablePayrollChecksBody); + public PostCompaniesPayrollSkipCompanyUuidResponse skip(String companyUuid, PostCompaniesPayrollSkipCompanyUuidRequestBody requestBody) { + return skip(Optional.empty(), companyUuid, requestBody); } /** - * Generate printable payroll checks (pdf) + * Skip a payroll * - *

    This endpoint initiates the generation of employee checks for the payroll specified by payroll_uuid. - * A generation status and corresponding request_uuid will be returned. Use the generated document GET - * endpoint with document_type: `printable_payroll_checks` and request_uuid to poll the check - * generation process and retrieve the generated check URL upon completion. + *

    Submits a $0 payroll for employees associated with the pay schedule to skip payroll. This submission + * is asynchronous and a successful request responds with a 202 HTTP status. Upon success, the payroll + * is transitioned to the `processed` state. * - *

    scope: `generated_documents:write` + *

    If the company is blocked from running payroll due to issues like incomplete setup, missing + * information or other compliance issues, the response will be 422 Unprocessable Entity with a + * categorization of the blockers as described in the error responses. + * + *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param payrollUuid The UUID of the payroll - * @param printablePayrollChecksBody Request body for generating printable payroll checks. + * @param companyUuid The UUID of the company + * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksResponse generatePrintableChecks( - Optional xGustoAPIVersion, String payrollUuid, - PrintablePayrollChecksBody printablePayrollChecksBody) { - PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksRequest request = - PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksRequest + public PostCompaniesPayrollSkipCompanyUuidResponse skip( + Optional xGustoAPIVersion, String companyUuid, + PostCompaniesPayrollSkipCompanyUuidRequestBody requestBody) { + PostCompaniesPayrollSkipCompanyUuidRequest request = + PostCompaniesPayrollSkipCompanyUuidRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .payrollUuid(payrollUuid) - .printablePayrollChecksBody(printablePayrollChecksBody) + .companyUuid(companyUuid) + .requestBody(requestBody) .build(); - RequestOperation operation - = new PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecks.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PostCompaniesPayrollSkipCompanyUuid.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Get partner disbursements for a payroll + * Submit payroll * - *

    Get partner disbursements for a specific payroll. + *

    Submits an unprocessed payroll to be calculated and run. This submission is asynchronous and a + * successful request responds with a 202 HTTP status. Upon success, transitions the payroll to the + * `processed` state. * - *

    scope: `partner_disbursements:read` + *

    You should poll to ensure that payroll is processed successfully, as async errors only occur after + * async processing is complete. + * + *

    If the company is blocked from running payroll due to issues like incomplete setup, missing + * information or other compliance issues, the response will be 422 Unprocessable Entity with a + * categorization of the blockers as described in the error responses. + * + *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder getV1CompaniesCompanyIdPayrollsIdPartnerDisbursements() { - return new GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder(sdkConfiguration); + public PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitRequestBuilder submit() { + return new PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitRequestBuilder(sdkConfiguration); } /** - * Get partner disbursements for a payroll + * Submit payroll * - *

    Get partner disbursements for a specific payroll. + *

    Submits an unprocessed payroll to be calculated and run. This submission is asynchronous and a + * successful request responds with a 202 HTTP status. Upon success, transitions the payroll to the + * `processed` state. * - *

    scope: `partner_disbursements:read` + *

    You should poll to ensure that payroll is processed successfully, as async errors only occur after + * async processing is complete. + * + *

    If the company is blocked from running payroll due to issues like incomplete setup, missing + * information or other compliance issues, the response will be 422 Unprocessable Entity with a + * categorization of the blockers as described in the error responses. + * + *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param companyId The UUID of the company - * @param id The UUID of the payroll + * @param payrollId The UUID of the payroll * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsResponse getV1CompaniesCompanyIdPayrollsIdPartnerDisbursements(String companyId, String id) { - return getV1CompaniesCompanyIdPayrollsIdPartnerDisbursements(companyId, id, Optional.empty()); + public PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitResponse submit(String companyId, String payrollId) { + return submit(Optional.empty(), companyId, payrollId, + Optional.empty()); } /** - * Get partner disbursements for a payroll + * Submit payroll * - *

    Get partner disbursements for a specific payroll. + *

    Submits an unprocessed payroll to be calculated and run. This submission is asynchronous and a + * successful request responds with a 202 HTTP status. Upon success, transitions the payroll to the + * `processed` state. * - *

    scope: `partner_disbursements:read` + *

    You should poll to ensure that payroll is processed successfully, as async errors only occur after + * async processing is complete. + * + *

    If the company is blocked from running payroll due to issues like incomplete setup, missing + * information or other compliance issues, the response will be 422 Unprocessable Entity with a + * categorization of the blockers as described in the error responses. + * + *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company - * @param id The UUID of the payroll * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company + * @param payrollId The UUID of the payroll + * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsResponse getV1CompaniesCompanyIdPayrollsIdPartnerDisbursements( - String companyId, String id, - Optional xGustoAPIVersion) { - GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest request = - GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest + public PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitResponse submit( + Optional xGustoAPIVersion, String companyId, + String payrollId, Optional requestBody) { + PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitRequest request = + PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitRequest .builder() - .companyId(companyId) - .id(id) .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) + .payrollId(payrollId) + .requestBody(requestBody) .build(); - RequestOperation operation - = new GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursements.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PutV1CompaniesCompanyIdPayrollsPayrollIdSubmit.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Update partner disbursements for a payroll + * Calculate gross up for a payroll * - *

    Update partner disbursements for a specific payroll. + *

    Calculates gross up earnings for an employee's payroll, given net earnings. This endpoint is only + * applicable to off-cycle unprocessed payrolls. * - *

    scope: `partner_disbursements:write` + *

    The gross up amount must then be mapped to the corresponding fixed compensation earning type to get + * the correct payroll amount. For example, for bonus off-cycles, the gross up amount should be set + * with the Bonus earning type in the payroll `fixed_compensations` field. + * + *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder patchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements() { - return new PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder(sdkConfiguration); + public PostPayrollsGrossUpPayrollUuidRequestBuilder calculateGrossUp() { + return new PostPayrollsGrossUpPayrollUuidRequestBuilder(sdkConfiguration); } /** - * Update partner disbursements for a payroll + * Calculate gross up for a payroll * - *

    Update partner disbursements for a specific payroll. + *

    Calculates gross up earnings for an employee's payroll, given net earnings. This endpoint is only + * applicable to off-cycle unprocessed payrolls. * - *

    scope: `partner_disbursements:write` + *

    The gross up amount must then be mapped to the corresponding fixed compensation earning type to get + * the correct payroll amount. For example, for bonus off-cycles, the gross up amount should be set + * with the Bonus earning type in the payroll `fixed_compensations` field. + * + *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company - * @param id The UUID of the payroll + * @param payrollUuid The UUID of the payroll + * @param payrollGrossUpRequest Request body for calculating gross up amount * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsResponse patchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements(String companyId, String id) { - return patchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements(companyId, id, Optional.empty(), - Optional.empty()); + public PostPayrollsGrossUpPayrollUuidResponse calculateGrossUp(String payrollUuid, PayrollGrossUpRequest payrollGrossUpRequest) { + return calculateGrossUp(Optional.empty(), payrollUuid, payrollGrossUpRequest); } /** - * Update partner disbursements for a payroll + * Calculate gross up for a payroll * - *

    Update partner disbursements for a specific payroll. + *

    Calculates gross up earnings for an employee's payroll, given net earnings. This endpoint is only + * applicable to off-cycle unprocessed payrolls. * - *

    scope: `partner_disbursements:write` + *

    The gross up amount must then be mapped to the corresponding fixed compensation earning type to get + * the correct payroll amount. For example, for bonus off-cycles, the gross up amount should be set + * with the Bonus earning type in the payroll `fixed_compensations` field. + * + *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company - * @param id The UUID of the payroll * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param requestBody + * @param payrollUuid The UUID of the payroll + * @param payrollGrossUpRequest Request body for calculating gross up amount * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsResponse patchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements( - String companyId, String id, - Optional xGustoAPIVersion, Optional requestBody) { - PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest request = - PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest + public PostPayrollsGrossUpPayrollUuidResponse calculateGrossUp( + Optional xGustoAPIVersion, String payrollUuid, + PayrollGrossUpRequest payrollGrossUpRequest) { + PostPayrollsGrossUpPayrollUuidRequest request = + PostPayrollsGrossUpPayrollUuidRequest .builder() - .companyId(companyId) - .id(id) .xGustoAPIVersion(xGustoAPIVersion) - .requestBody(requestBody) + .payrollUuid(payrollUuid) + .payrollGrossUpRequest(payrollGrossUpRequest) .build(); - RequestOperation operation - = new PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PostPayrollsGrossUpPayrollUuid.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/PeopleBatches.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/PeopleBatches.java index 8d2f287c0..f27ef1875 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/PeopleBatches.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/PeopleBatches.java @@ -74,7 +74,7 @@ public PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder postV1CompaniesCompan * @throws RuntimeException subclass if the API call fails */ public PostV1CompaniesCompanyIdPeopleBatchesResponse postV1CompaniesCompanyIdPeopleBatches(String companyId, PostV1CompaniesCompanyIdPeopleBatchesRequestBody requestBody) { - return postV1CompaniesCompanyIdPeopleBatches(companyId, Optional.empty(), requestBody); + return postV1CompaniesCompanyIdPeopleBatches(Optional.empty(), companyId, requestBody); } /** @@ -88,20 +88,20 @@ public PostV1CompaniesCompanyIdPeopleBatchesResponse postV1CompaniesCompanyIdPeo * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PostV1CompaniesCompanyIdPeopleBatchesResponse postV1CompaniesCompanyIdPeopleBatches( - String companyId, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String companyId, PostV1CompaniesCompanyIdPeopleBatchesRequestBody requestBody) { PostV1CompaniesCompanyIdPeopleBatchesRequest request = PostV1CompaniesCompanyIdPeopleBatchesRequest .builder() - .companyId(companyId) .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) .requestBody(requestBody) .build(); RequestOperation operation @@ -142,7 +142,7 @@ public GetV1PeopleBatchesPeopleBatchUuidRequestBuilder getV1PeopleBatchesPeopleB * @throws RuntimeException subclass if the API call fails */ public GetV1PeopleBatchesPeopleBatchUuidResponse getV1PeopleBatchesPeopleBatchUuid(String peopleBatchUuid) { - return getV1PeopleBatchesPeopleBatchUuid(peopleBatchUuid, Optional.empty()); + return getV1PeopleBatchesPeopleBatchUuid(Optional.empty(), peopleBatchUuid); } /** @@ -156,17 +156,17 @@ public GetV1PeopleBatchesPeopleBatchUuidResponse getV1PeopleBatchesPeopleBatchUu * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param peopleBatchUuid The UUID of the people batch * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param peopleBatchUuid The UUID of the people batch * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1PeopleBatchesPeopleBatchUuidResponse getV1PeopleBatchesPeopleBatchUuid(String peopleBatchUuid, Optional xGustoAPIVersion) { + public GetV1PeopleBatchesPeopleBatchUuidResponse getV1PeopleBatchesPeopleBatchUuid(Optional xGustoAPIVersion, String peopleBatchUuid) { GetV1PeopleBatchesPeopleBatchUuidRequest request = GetV1PeopleBatchesPeopleBatchUuidRequest .builder() - .peopleBatchUuid(peopleBatchUuid) .xGustoAPIVersion(xGustoAPIVersion) + .peopleBatchUuid(peopleBatchUuid) .build(); RequestOperation operation = new GetV1PeopleBatchesPeopleBatchUuid.Sync(sdkConfiguration, _headers); diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/Reports.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/Reports.java index 7e3ef2aea..021bf36d5 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/Reports.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/Reports.java @@ -5,6 +5,7 @@ import static com.gusto.embedded_api.operations.Operations.RequestOperation; +import com.gusto.embedded_api.models.components.BulkReportBody; import com.gusto.embedded_api.models.components.CreateReportBody; import com.gusto.embedded_api.models.components.GeneralLedgerReportBody; import com.gusto.embedded_api.models.operations.GetCompaniesCompanyUuidReportTemplatesReportTypeHeaderXGustoAPIVersion; @@ -15,6 +16,11 @@ import com.gusto.embedded_api.models.operations.GetReportsRequestUuidRequest; import com.gusto.embedded_api.models.operations.GetReportsRequestUuidRequestBuilder; import com.gusto.embedded_api.models.operations.GetReportsRequestUuidResponse; +import com.gusto.embedded_api.models.operations.GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetV1BulkReportsRequestUuidRequest; +import com.gusto.embedded_api.models.operations.GetV1BulkReportsRequestUuidRequestBuilder; +import com.gusto.embedded_api.models.operations.GetV1BulkReportsRequestUuidResponse; +import com.gusto.embedded_api.models.operations.GetV1BulkReportsRequestUuidSecurity; import com.gusto.embedded_api.models.operations.PostCompaniesCompanyUuidReportsHeaderXGustoAPIVersion; import com.gusto.embedded_api.models.operations.PostCompaniesCompanyUuidReportsRequest; import com.gusto.embedded_api.models.operations.PostCompaniesCompanyUuidReportsRequestBuilder; @@ -23,6 +29,11 @@ import com.gusto.embedded_api.models.operations.PostPayrollsPayrollUuidReportsGeneralLedgerRequest; import com.gusto.embedded_api.models.operations.PostPayrollsPayrollUuidReportsGeneralLedgerRequestBuilder; import com.gusto.embedded_api.models.operations.PostPayrollsPayrollUuidReportsGeneralLedgerResponse; +import com.gusto.embedded_api.models.operations.PostV1BulkReportsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PostV1BulkReportsRequest; +import com.gusto.embedded_api.models.operations.PostV1BulkReportsRequestBuilder; +import com.gusto.embedded_api.models.operations.PostV1BulkReportsResponse; +import com.gusto.embedded_api.models.operations.PostV1BulkReportsSecurity; import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageHeaderXGustoAPIVersion; import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequest; import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequestBody; @@ -30,8 +41,10 @@ import com.gusto.embedded_api.models.operations.PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageResponse; import com.gusto.embedded_api.operations.GetCompaniesCompanyUuidReportTemplatesReportType; import com.gusto.embedded_api.operations.GetReportsRequestUuid; +import com.gusto.embedded_api.operations.GetV1BulkReportsRequestUuid; import com.gusto.embedded_api.operations.PostCompaniesCompanyUuidReports; import com.gusto.embedded_api.operations.PostPayrollsPayrollUuidReportsGeneralLedger; +import com.gusto.embedded_api.operations.PostV1BulkReports; import com.gusto.embedded_api.operations.PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage; import com.gusto.embedded_api.utils.Headers; import java.lang.String; @@ -57,6 +70,280 @@ public AsyncReports async() { return asyncSDK; } + /** + * Create a bulk report batch + * + *

    Triggers asynchronous generation of up to 25 reports across companies the partner is mapped to. Each + * `batch` item is a `custom_report` (same parameters as [create a custom + * report](https://docs.gusto.com/embedded-payroll/reference/post-companies-company_uuid-reports)) or a + * `general_ledger` report (same parameters as [create a general ledger + * report](https://docs.gusto.com/embedded-payroll/reference/post-payrolls-payroll_uuid-reports-general_ledger)), + * keyed by `company_uuid` and `report_type`. Items are validated synchronously; if any is invalid, the + * entire batch is rejected. + * + *

    Poll the [bulk report GET + * endpoint](https://docs.gusto.com/embedded-payroll/reference/get-v1-bulk_reports-request_uuid) with + * the returned `uuid` for status and the report URL, which is valid for 10 minutes. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `company_reports:write` + * + * @return The call builder + */ + public PostV1BulkReportsRequestBuilder postV1BulkReports() { + return new PostV1BulkReportsRequestBuilder(sdkConfiguration); + } + + /** + * Create a bulk report batch + * + *

    Triggers asynchronous generation of up to 25 reports across companies the partner is mapped to. Each + * `batch` item is a `custom_report` (same parameters as [create a custom + * report](https://docs.gusto.com/embedded-payroll/reference/post-companies-company_uuid-reports)) or a + * `general_ledger` report (same parameters as [create a general ledger + * report](https://docs.gusto.com/embedded-payroll/reference/post-payrolls-payroll_uuid-reports-general_ledger)), + * keyed by `company_uuid` and `report_type`. Items are validated synchronously; if any is invalid, the + * entire batch is rejected. + * + *

    Poll the [bulk report GET + * endpoint](https://docs.gusto.com/embedded-payroll/reference/get-v1-bulk_reports-request_uuid) with + * the returned `uuid` for status and the report URL, which is valid for 10 minutes. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `company_reports:write` + * + * @param security The security details to use for authentication. + * @param bulkReportBody Each `batch` item is a `custom_report` or a `general_ledger` report. + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public PostV1BulkReportsResponse postV1BulkReports(PostV1BulkReportsSecurity security, BulkReportBody bulkReportBody) { + return postV1BulkReports(security, Optional.empty(), bulkReportBody); + } + + /** + * Create a bulk report batch + * + *

    Triggers asynchronous generation of up to 25 reports across companies the partner is mapped to. Each + * `batch` item is a `custom_report` (same parameters as [create a custom + * report](https://docs.gusto.com/embedded-payroll/reference/post-companies-company_uuid-reports)) or a + * `general_ledger` report (same parameters as [create a general ledger + * report](https://docs.gusto.com/embedded-payroll/reference/post-payrolls-payroll_uuid-reports-general_ledger)), + * keyed by `company_uuid` and `report_type`. Items are validated synchronously; if any is invalid, the + * entire batch is rejected. + * + *

    Poll the [bulk report GET + * endpoint](https://docs.gusto.com/embedded-payroll/reference/get-v1-bulk_reports-request_uuid) with + * the returned `uuid` for status and the report URL, which is valid for 10 minutes. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `company_reports:write` + * + * @param security The security details to use for authentication. + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param bulkReportBody Each `batch` item is a `custom_report` or a `general_ledger` report. + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public PostV1BulkReportsResponse postV1BulkReports( + PostV1BulkReportsSecurity security, Optional xGustoAPIVersion, + BulkReportBody bulkReportBody) { + PostV1BulkReportsRequest request = + PostV1BulkReportsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .bulkReportBody(bulkReportBody) + .build(); + RequestOperation operation + = new PostV1BulkReports.Sync(sdkConfiguration, security, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + + /** + * Get a bulk report batch + * + *

    Get a bulk report batch's status and results given the `request_uuid`. While in progress, only batch + * metadata is returned; once complete, it also includes a signed `report_url` (a zip of all generated + * reports, valid for 10 minutes) and a per-company breakdown. + * + *

    Reports containing PHI are inaccessible with `company_reports:read:tier_2_only` data scope. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `company_reports:read` + * + * @return The call builder + */ + public GetV1BulkReportsRequestUuidRequestBuilder getV1BulkReportsRequestUuid() { + return new GetV1BulkReportsRequestUuidRequestBuilder(sdkConfiguration); + } + + /** + * Get a bulk report batch + * + *

    Get a bulk report batch's status and results given the `request_uuid`. While in progress, only batch + * metadata is returned; once complete, it also includes a signed `report_url` (a zip of all generated + * reports, valid for 10 minutes) and a per-company breakdown. + * + *

    Reports containing PHI are inaccessible with `company_reports:read:tier_2_only` data scope. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `company_reports:read` + * + * @param security The security details to use for authentication. + * @param requestUuid The UUID of the bulk report batch. + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1BulkReportsRequestUuidResponse getV1BulkReportsRequestUuid(GetV1BulkReportsRequestUuidSecurity security, String requestUuid) { + return getV1BulkReportsRequestUuid(security, Optional.empty(), requestUuid); + } + + /** + * Get a bulk report batch + * + *

    Get a bulk report batch's status and results given the `request_uuid`. While in progress, only batch + * metadata is returned; once complete, it also includes a signed `report_url` (a zip of all generated + * reports, valid for 10 minutes) and a per-company breakdown. + * + *

    Reports containing PHI are inaccessible with `company_reports:read:tier_2_only` data scope. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `company_reports:read` + * + * @param security The security details to use for authentication. + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param requestUuid The UUID of the bulk report batch. + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1BulkReportsRequestUuidResponse getV1BulkReportsRequestUuid( + GetV1BulkReportsRequestUuidSecurity security, Optional xGustoAPIVersion, + String requestUuid) { + GetV1BulkReportsRequestUuidRequest request = + GetV1BulkReportsRequestUuidRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .requestUuid(requestUuid) + .build(); + RequestOperation operation + = new GetV1BulkReportsRequestUuid.Sync(sdkConfiguration, security, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + + /** + * Create an employees annual FICA wage report + * + *

    Generates a report containing annual FICA (Federal Insurance Contributions Act) wage data for all + * employees in a company over a specified year range. + * + *

    This report provides detailed wage information subject to Social Security and Medicare taxes, useful + * for benefits integrations that need to verify employee earnings for compliance and benefit + * calculations. + * + *

    The report is generated asynchronously. After making this request, you will receive a `request_uuid` + * which can be used to poll the [Get a report](ref:get-v1-reports-request_uuid) endpoint to check the + * status and retrieve the report when complete. + * + *

    scope: `company_reports:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequestBuilder postV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage() { + return new PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequestBuilder(sdkConfiguration); + } + + /** + * Create an employees annual FICA wage report + * + *

    Generates a report containing annual FICA (Federal Insurance Contributions Act) wage data for all + * employees in a company over a specified year range. + * + *

    This report provides detailed wage information subject to Social Security and Medicare taxes, useful + * for benefits integrations that need to verify employee earnings for compliance and benefit + * calculations. + * + *

    The report is generated asynchronously. After making this request, you will receive a `request_uuid` + * which can be used to poll the [Get a report](ref:get-v1-reports-request_uuid) endpoint to check the + * status and retrieve the report when complete. + * + *

    scope: `company_reports:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param companyId The UUID of the company + * @param requestBody + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageResponse postV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage(String companyId, PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequestBody requestBody) { + return postV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage(Optional.empty(), companyId, requestBody); + } + + /** + * Create an employees annual FICA wage report + * + *

    Generates a report containing annual FICA (Federal Insurance Contributions Act) wage data for all + * employees in a company over a specified year range. + * + *

    This report provides detailed wage information subject to Social Security and Medicare taxes, useful + * for benefits integrations that need to verify employee earnings for compliance and benefit + * calculations. + * + *

    The report is generated asynchronously. After making this request, you will receive a `request_uuid` + * which can be used to poll the [Get a report](ref:get-v1-reports-request_uuid) endpoint to check the + * status and retrieve the report when complete. + * + *

    scope: `company_reports:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company + * @param requestBody + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageResponse postV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage( + Optional xGustoAPIVersion, String companyId, + PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequestBody requestBody) { + PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequest request = + PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) + .requestBody(requestBody) + .build(); + RequestOperation operation + = new PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + /** * Create a custom report * @@ -349,94 +636,4 @@ public GetCompaniesCompanyUuidReportTemplatesReportTypeResponse getTemplate( return operation.handleResponse(operation.doRequest(request)); } - /** - * Create an employees annual FICA wage report - * - *

    Generates a report containing annual FICA (Federal Insurance Contributions Act) wage data for all - * employees in a company over a specified year range. - * - *

    This report provides detailed wage information subject to Social Security and Medicare taxes, useful - * for benefits integrations that need to verify employee earnings for compliance and benefit - * calculations. - * - *

    The report is generated asynchronously. After making this request, you will receive a `request_uuid` - * which can be used to poll the [Get a report](ref:get-v1-reports-request_uuid) endpoint to check the - * status and retrieve the report when complete. - * - *

    scope: `company_reports:write` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The call builder - */ - public PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequestBuilder postV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage() { - return new PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequestBuilder(sdkConfiguration); - } - - /** - * Create an employees annual FICA wage report - * - *

    Generates a report containing annual FICA (Federal Insurance Contributions Act) wage data for all - * employees in a company over a specified year range. - * - *

    This report provides detailed wage information subject to Social Security and Medicare taxes, useful - * for benefits integrations that need to verify employee earnings for compliance and benefit - * calculations. - * - *

    The report is generated asynchronously. After making this request, you will receive a `request_uuid` - * which can be used to poll the [Get a report](ref:get-v1-reports-request_uuid) endpoint to check the - * status and retrieve the report when complete. - * - *

    scope: `company_reports:write` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param companyId The UUID of the company - * @param requestBody - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageResponse postV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage(String companyId, PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequestBody requestBody) { - return postV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage(Optional.empty(), companyId, requestBody); - } - - /** - * Create an employees annual FICA wage report - * - *

    Generates a report containing annual FICA (Federal Insurance Contributions Act) wage data for all - * employees in a company over a specified year range. - * - *

    This report provides detailed wage information subject to Social Security and Medicare taxes, useful - * for benefits integrations that need to verify employee earnings for compliance and benefit - * calculations. - * - *

    The report is generated asynchronously. After making this request, you will receive a `request_uuid` - * which can be used to poll the [Get a report](ref:get-v1-reports-request_uuid) endpoint to check the - * status and retrieve the report when complete. - * - *

    scope: `company_reports:write` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyId The UUID of the company - * @param requestBody - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageResponse postV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage( - Optional xGustoAPIVersion, String companyId, - PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequestBody requestBody) { - PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequest request = - PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequest - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .companyId(companyId) - .requestBody(requestBody) - .build(); - RequestOperation operation - = new PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage.Sync(sdkConfiguration, _headers); - return operation.handleResponse(operation.doRequest(request)); - } - } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/ReverseWireTransactions.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/ReverseWireTransactions.java new file mode 100644 index 000000000..7deb64903 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/ReverseWireTransactions.java @@ -0,0 +1,74 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api; + +import static com.gusto.embedded_api.operations.Operations.RequestOperation; + +import com.gusto.embedded_api.models.operations.GetReverseWireTransactionsRequest; +import com.gusto.embedded_api.models.operations.GetReverseWireTransactionsRequestBuilder; +import com.gusto.embedded_api.models.operations.GetReverseWireTransactionsResponse; +import com.gusto.embedded_api.operations.GetReverseWireTransactions; +import com.gusto.embedded_api.utils.Headers; + + +public class ReverseWireTransactions { + private static final Headers _headers = Headers.EMPTY; + private final SDKConfiguration sdkConfiguration; + private final AsyncReverseWireTransactions asyncSDK; + + ReverseWireTransactions(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + this.asyncSDK = new AsyncReverseWireTransactions(this, sdkConfiguration); + } + + /** + * Switches to the async SDK. + * + * @return The async SDK + */ + public AsyncReverseWireTransactions async() { + return asyncSDK; + } + + /** + * Get all reverse wire transactions for a company + * + *

    Returns a paginated list of reverse wire (drawdown) transactions for a company. Reverse wires are + * debit transactions initiated by Gusto to pull funds from a partner's bank account to cover payroll + * or contractor payment obligations. Pagination is returned via the `x-page`, `x-per-page`, + * `x-total-count`, and `x-total-pages` response headers. + * + *

    scope: `reverse_wire_transactions:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public GetReverseWireTransactionsRequestBuilder getReverseWireTransactions() { + return new GetReverseWireTransactionsRequestBuilder(sdkConfiguration); + } + + /** + * Get all reverse wire transactions for a company + * + *

    Returns a paginated list of reverse wire (drawdown) transactions for a company. Reverse wires are + * debit transactions initiated by Gusto to pull funds from a partner's bank account to cover payroll + * or contractor payment obligations. Pagination is returned via the `x-page`, `x-per-page`, + * `x-total-count`, and `x-total-pages` response headers. + * + *

    scope: `reverse_wire_transactions:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param request The request object containing all the parameters for the API call. + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetReverseWireTransactionsResponse getReverseWireTransactions(GetReverseWireTransactionsRequest request) { + RequestOperation operation + = new GetReverseWireTransactions.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/SDKConfiguration.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/SDKConfiguration.java index dc606fef7..acbb809ba 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/SDKConfiguration.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/SDKConfiguration.java @@ -19,8 +19,8 @@ public class SDKConfiguration { private static final String LANGUAGE = "java"; public static final String OPENAPI_DOC_VERSION = "2025-06-15"; - public static final String SDK_VERSION = "0.3.4"; - public static final String GEN_VERSION = "2.889.1"; + public static final String SDK_VERSION = "0.4.0"; + public static final String GEN_VERSION = "2.935.1"; private static final String BASE_PACKAGE = "com.gusto.embedded_api"; public static final String USER_AGENT = String.format("speakeasy-sdk/%s %s %s %s %s", diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/Signatories.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/Signatories.java index 48646707e..5ff6452f5 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/Signatories.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/Signatories.java @@ -92,7 +92,7 @@ public GetV1CompaniesCompanyUuidSignatoriesRequestBuilder list() { * @throws RuntimeException subclass if the API call fails */ public GetV1CompaniesCompanyUuidSignatoriesResponse list(String companyUuid) { - return list(companyUuid, Optional.empty()); + return list(Optional.empty(), companyUuid); } /** @@ -107,17 +107,17 @@ public GetV1CompaniesCompanyUuidSignatoriesResponse list(String companyUuid) { * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1CompaniesCompanyUuidSignatoriesResponse list(String companyUuid, Optional xGustoAPIVersion) { + public GetV1CompaniesCompanyUuidSignatoriesResponse list(Optional xGustoAPIVersion, String companyUuid) { GetV1CompaniesCompanyUuidSignatoriesRequest request = GetV1CompaniesCompanyUuidSignatoriesRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) .build(); RequestOperation operation = new GetV1CompaniesCompanyUuidSignatories.Sync(sdkConfiguration, _headers); @@ -182,7 +182,7 @@ public PostV1CompanySignatoriesRequestBuilder create() { * @throws RuntimeException subclass if the API call fails */ public PostV1CompanySignatoriesResponse create(String companyUuid, SignatoryCreateRequest signatoryCreateRequest) { - return create(companyUuid, Optional.empty(), signatoryCreateRequest); + return create(Optional.empty(), companyUuid, signatoryCreateRequest); } /** @@ -208,20 +208,20 @@ public PostV1CompanySignatoriesResponse create(String companyUuid, SignatoryCrea * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company * @param signatoryCreateRequest Request body for creating a signatory with complete information. All listed required fields must be provided. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PostV1CompanySignatoriesResponse create( - String companyUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String companyUuid, SignatoryCreateRequest signatoryCreateRequest) { PostV1CompanySignatoriesRequest request = PostV1CompanySignatoriesRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) .signatoryCreateRequest(signatoryCreateRequest) .build(); RequestOperation operation @@ -271,7 +271,7 @@ public PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder invite() { * @throws RuntimeException subclass if the API call fails */ public PostV1CompaniesCompanyUuidSignatoriesInviteResponse invite(String companyUuid, SignatoryInviteRequest signatoryInviteRequest) { - return invite(companyUuid, Optional.empty(), signatoryInviteRequest); + return invite(Optional.empty(), companyUuid, signatoryInviteRequest); } /** @@ -289,20 +289,20 @@ public PostV1CompaniesCompanyUuidSignatoriesInviteResponse invite(String company * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company * @param signatoryInviteRequest Request body for inviting a signatory. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PostV1CompaniesCompanyUuidSignatoriesInviteResponse invite( - String companyUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String companyUuid, SignatoryInviteRequest signatoryInviteRequest) { PostV1CompaniesCompanyUuidSignatoriesInviteRequest request = PostV1CompaniesCompanyUuidSignatoriesInviteRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) .signatoryInviteRequest(signatoryInviteRequest) .build(); RequestOperation operation @@ -357,7 +357,7 @@ public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder update() public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidResponse update( String companyUuid, String signatoryUuid, SignatoryUpdateRequest signatoryUpdateRequest) { - return update(companyUuid, signatoryUuid, Optional.empty(), + return update(Optional.empty(), companyUuid, signatoryUuid, signatoryUpdateRequest); } @@ -377,22 +377,22 @@ public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidResponse update( * *

    If set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyUuid The UUID of the company * @param signatoryUuid The UUID of the signatory - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param signatoryUpdateRequest Request body for updating a signatory. Email cannot be updated. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidResponse update( - String companyUuid, String signatoryUuid, - Optional xGustoAPIVersion, SignatoryUpdateRequest signatoryUpdateRequest) { + Optional xGustoAPIVersion, String companyUuid, + String signatoryUuid, SignatoryUpdateRequest signatoryUpdateRequest) { PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest request = PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest .builder() + .xGustoAPIVersion(xGustoAPIVersion) .companyUuid(companyUuid) .signatoryUuid(signatoryUuid) - .xGustoAPIVersion(xGustoAPIVersion) .signatoryUpdateRequest(signatoryUpdateRequest) .build(); RequestOperation operation @@ -436,7 +436,7 @@ public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder delete * @throws RuntimeException subclass if the API call fails */ public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidResponse delete(String companyUuid, String signatoryUuid) { - return delete(companyUuid, signatoryUuid, Optional.empty()); + return delete(Optional.empty(), companyUuid, signatoryUuid); } /** @@ -451,21 +451,21 @@ public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidResponse delete(Strin * *

    If set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyUuid The UUID of the company * @param signatoryUuid The UUID of the signatory - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidResponse delete( - String companyUuid, String signatoryUuid, - Optional xGustoAPIVersion) { + Optional xGustoAPIVersion, String companyUuid, + String signatoryUuid) { DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest request = DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest .builder() + .xGustoAPIVersion(xGustoAPIVersion) .companyUuid(companyUuid) .signatoryUuid(signatoryUuid) - .xGustoAPIVersion(xGustoAPIVersion) .build(); RequestOperation operation = new DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuid.Sync(sdkConfiguration, _headers); diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/TaxPayments.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/TaxPayments.java new file mode 100644 index 000000000..267c96356 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/TaxPayments.java @@ -0,0 +1,141 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api; + +import static com.gusto.embedded_api.operations.Operations.RequestOperation; + +import com.gusto.embedded_api.models.operations.GetTaxPaymentHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetTaxPaymentRequest; +import com.gusto.embedded_api.models.operations.GetTaxPaymentRequestBuilder; +import com.gusto.embedded_api.models.operations.GetTaxPaymentResponse; +import com.gusto.embedded_api.models.operations.GetTaxPaymentsRequest; +import com.gusto.embedded_api.models.operations.GetTaxPaymentsRequestBuilder; +import com.gusto.embedded_api.models.operations.GetTaxPaymentsResponse; +import com.gusto.embedded_api.operations.GetTaxPayment; +import com.gusto.embedded_api.operations.GetTaxPayments; +import com.gusto.embedded_api.utils.Headers; +import java.lang.String; +import java.util.Optional; + + +public class TaxPayments { + private static final Headers _headers = Headers.EMPTY; + private final SDKConfiguration sdkConfiguration; + private final AsyncTaxPayments asyncSDK; + + TaxPayments(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + this.asyncSDK = new AsyncTaxPayments(this, sdkConfiguration); + } + + /** + * Switches to the async SDK. + * + * @return The async SDK + */ + public AsyncTaxPayments async() { + return asyncSDK; + } + + /** + * Get all tax payments for a company + * + *

    Fetches all tax payments Gusto has made (or scheduled) to tax agencies on behalf of a company. + * + *

    scope: `tax_payments:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public GetTaxPaymentsRequestBuilder getTaxPayments() { + return new GetTaxPaymentsRequestBuilder(sdkConfiguration); + } + + /** + * Get all tax payments for a company + * + *

    Fetches all tax payments Gusto has made (or scheduled) to tax agencies on behalf of a company. + * + *

    scope: `tax_payments:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param request The request object containing all the parameters for the API call. + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetTaxPaymentsResponse getTaxPayments(GetTaxPaymentsRequest request) { + RequestOperation operation + = new GetTaxPayments.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + + /** + * Get a tax payment for a company + * + *

    Fetches a single tax payment by UUID, including the payroll tax liabilities that make up the + * payment. + * + *

    scope: `tax_payments:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public GetTaxPaymentRequestBuilder getTaxPayment() { + return new GetTaxPaymentRequestBuilder(sdkConfiguration); + } + + /** + * Get a tax payment for a company + * + *

    Fetches a single tax payment by UUID, including the payroll tax liabilities that make up the + * payment. + * + *

    scope: `tax_payments:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param companyUuid The UUID of the company + * @param uuid The UUID of the tax payment + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetTaxPaymentResponse getTaxPayment(String companyUuid, String uuid) { + return getTaxPayment(Optional.empty(), companyUuid, uuid); + } + + /** + * Get a tax payment for a company + * + *

    Fetches a single tax payment by UUID, including the payroll tax liabilities that make up the + * payment. + * + *

    scope: `tax_payments:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company + * @param uuid The UUID of the tax payment + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetTaxPaymentResponse getTaxPayment( + Optional xGustoAPIVersion, String companyUuid, + String uuid) { + GetTaxPaymentRequest request = + GetTaxPaymentRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) + .uuid(uuid) + .build(); + RequestOperation operation + = new GetTaxPayment.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/TaxRequirements.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/TaxRequirements.java index 8a4460eda..26f771ce2 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/TaxRequirements.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/TaxRequirements.java @@ -46,6 +46,73 @@ public AsyncTaxRequirements async() { return asyncSDK; } + /** + * Get all tax requirements for a company + * + *

    Retrieves all states for which a company has tax requirements, along with a boolean indicating + * whether tax setup + * is complete for each state. Use this to determine which states still need tax setup during company + * onboarding. + * + *

    scope: `company_tax_requirements:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder getAll() { + return new GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder(sdkConfiguration); + } + + /** + * Get all tax requirements for a company + * + *

    Retrieves all states for which a company has tax requirements, along with a boolean indicating + * whether tax setup + * is complete for each state. Use this to determine which states still need tax setup during company + * onboarding. + * + *

    scope: `company_tax_requirements:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param companyUuid The UUID of the company + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1CompaniesCompanyUuidTaxRequirementsResponse getAll(String companyUuid) { + return getAll(Optional.empty(), companyUuid); + } + + /** + * Get all tax requirements for a company + * + *

    Retrieves all states for which a company has tax requirements, along with a boolean indicating + * whether tax setup + * is complete for each state. Use this to determine which states still need tax setup during company + * onboarding. + * + *

    scope: `company_tax_requirements:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1CompaniesCompanyUuidTaxRequirementsResponse getAll(Optional xGustoAPIVersion, String companyUuid) { + GetV1CompaniesCompanyUuidTaxRequirementsRequest request = + GetV1CompaniesCompanyUuidTaxRequirementsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) + .build(); + RequestOperation operation + = new GetV1CompaniesCompanyUuidTaxRequirements.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + /** * Get tax requirements for a state * @@ -88,7 +155,7 @@ public GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder get() { * @throws RuntimeException subclass if the API call fails */ public GetV1CompaniesCompanyUuidTaxRequirementsStateResponse get(String companyUuid, String state) { - return get(companyUuid, state, Optional.empty(), + return get(Optional.empty(), companyUuid, state, Optional.empty()); } @@ -107,22 +174,22 @@ public GetV1CompaniesCompanyUuidTaxRequirementsStateResponse get(String companyU * *

    If set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyUuid The UUID of the company * @param state The two-letter state abbreviation - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param scheduling When true, return "new" requirement sets with valid `effective_from` dates that are available to save new effective-dated values. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public GetV1CompaniesCompanyUuidTaxRequirementsStateResponse get( - String companyUuid, String state, - Optional xGustoAPIVersion, Optional scheduling) { + Optional xGustoAPIVersion, String companyUuid, + String state, Optional scheduling) { GetV1CompaniesCompanyUuidTaxRequirementsStateRequest request = GetV1CompaniesCompanyUuidTaxRequirementsStateRequest .builder() + .xGustoAPIVersion(xGustoAPIVersion) .companyUuid(companyUuid) .state(state) - .xGustoAPIVersion(xGustoAPIVersion) .scheduling(scheduling) .build(); RequestOperation operation @@ -183,7 +250,7 @@ public PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder updateState() public PutV1CompaniesCompanyUuidTaxRequirementsStateResponse updateState( String companyUuid, String state, PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody requestBody) { - return updateState(companyUuid, state, Optional.empty(), + return updateState(Optional.empty(), companyUuid, state, requestBody); } @@ -206,22 +273,22 @@ public PutV1CompaniesCompanyUuidTaxRequirementsStateResponse updateState( * *

    If set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyUuid The UUID of the company * @param state The two-letter state abbreviation - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PutV1CompaniesCompanyUuidTaxRequirementsStateResponse updateState( - String companyUuid, String state, - Optional xGustoAPIVersion, PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody requestBody) { + Optional xGustoAPIVersion, String companyUuid, + String state, PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody requestBody) { PutV1CompaniesCompanyUuidTaxRequirementsStateRequest request = PutV1CompaniesCompanyUuidTaxRequirementsStateRequest .builder() + .xGustoAPIVersion(xGustoAPIVersion) .companyUuid(companyUuid) .state(state) - .xGustoAPIVersion(xGustoAPIVersion) .requestBody(requestBody) .build(); RequestOperation operation @@ -229,71 +296,4 @@ public PutV1CompaniesCompanyUuidTaxRequirementsStateResponse updateState( return operation.handleResponse(operation.doRequest(request)); } - /** - * Get all tax requirements for a company - * - *

    Retrieves all states for which a company has tax requirements, along with a boolean indicating - * whether tax setup - * is complete for each state. Use this to determine which states still need tax setup during company - * onboarding. - * - *

    scope: `company_tax_requirements:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The call builder - */ - public GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder getAll() { - return new GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder(sdkConfiguration); - } - - /** - * Get all tax requirements for a company - * - *

    Retrieves all states for which a company has tax requirements, along with a boolean indicating - * whether tax setup - * is complete for each state. Use this to determine which states still need tax setup during company - * onboarding. - * - *

    scope: `company_tax_requirements:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param companyUuid The UUID of the company - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public GetV1CompaniesCompanyUuidTaxRequirementsResponse getAll(String companyUuid) { - return getAll(companyUuid, Optional.empty()); - } - - /** - * Get all tax requirements for a company - * - *

    Retrieves all states for which a company has tax requirements, along with a boolean indicating - * whether tax setup - * is complete for each state. Use this to determine which states still need tax setup during company - * onboarding. - * - *

    scope: `company_tax_requirements:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param companyUuid The UUID of the company - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public GetV1CompaniesCompanyUuidTaxRequirementsResponse getAll(String companyUuid, Optional xGustoAPIVersion) { - GetV1CompaniesCompanyUuidTaxRequirementsRequest request = - GetV1CompaniesCompanyUuidTaxRequirementsRequest - .builder() - .companyUuid(companyUuid) - .xGustoAPIVersion(xGustoAPIVersion) - .build(); - RequestOperation operation - = new GetV1CompaniesCompanyUuidTaxRequirements.Sync(sdkConfiguration, _headers); - return operation.handleResponse(operation.doRequest(request)); - } - } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/TimeOffPolicies.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/TimeOffPolicies.java index aefd958f8..d245c6f47 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/TimeOffPolicies.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/TimeOffPolicies.java @@ -176,6 +176,127 @@ public PostV1PayrollsPayrollIdCalculateAccruingTimeOffHoursResponse calculateAcc return operation.handleResponse(operation.doRequest(request)); } + /** + * Get all time off policies for a company + * + *

    Get all time off policies for a company + * + *

    scope: `time_off_policies:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public GetV1CompaniesCompanyUuidTimeOffPoliciesRequestBuilder getAll() { + return new GetV1CompaniesCompanyUuidTimeOffPoliciesRequestBuilder(sdkConfiguration); + } + + /** + * Get all time off policies for a company + * + *

    Get all time off policies for a company + * + *

    scope: `time_off_policies:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param companyUuid The UUID of the company + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1CompaniesCompanyUuidTimeOffPoliciesResponse getAll(String companyUuid) { + return getAll(Optional.empty(), companyUuid); + } + + /** + * Get all time off policies for a company + * + *

    Get all time off policies for a company + * + *

    scope: `time_off_policies:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1CompaniesCompanyUuidTimeOffPoliciesResponse getAll(Optional xGustoAPIVersion, String companyUuid) { + GetV1CompaniesCompanyUuidTimeOffPoliciesRequest request = + GetV1CompaniesCompanyUuidTimeOffPoliciesRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) + .build(); + RequestOperation operation + = new GetV1CompaniesCompanyUuidTimeOffPolicies.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + + /** + * Create a time off policy + * + *

    Create a time off policy + * + *

    scope: `time_off_policies:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public PostV1CompaniesCompanyUuidTimeOffPoliciesRequestBuilder create() { + return new PostV1CompaniesCompanyUuidTimeOffPoliciesRequestBuilder(sdkConfiguration); + } + + /** + * Create a time off policy + * + *

    Create a time off policy + * + *

    scope: `time_off_policies:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param companyUuid The UUID of the company + * @param timeOffPolicyRequest Request body for creating a time off policy + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public PostV1CompaniesCompanyUuidTimeOffPoliciesResponse create(String companyUuid, TimeOffPolicyRequest timeOffPolicyRequest) { + return create(Optional.empty(), companyUuid, timeOffPolicyRequest); + } + + /** + * Create a time off policy + * + *

    Create a time off policy + * + *

    scope: `time_off_policies:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company + * @param timeOffPolicyRequest Request body for creating a time off policy + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public PostV1CompaniesCompanyUuidTimeOffPoliciesResponse create( + Optional xGustoAPIVersion, String companyUuid, + TimeOffPolicyRequest timeOffPolicyRequest) { + PostV1CompaniesCompanyUuidTimeOffPoliciesRequest request = + PostV1CompaniesCompanyUuidTimeOffPoliciesRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) + .timeOffPolicyRequest(timeOffPolicyRequest) + .build(); + RequestOperation operation + = new PostV1CompaniesCompanyUuidTimeOffPolicies.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + /** * Get a time off policy * @@ -298,67 +419,9 @@ public PutV1TimeOffPoliciesTimeOffPolicyUuidResponse update( } /** - * Get all time off policies for a company - * - *

    Get all time off policies for a company - * - *

    scope: `time_off_policies:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The call builder - */ - public GetV1CompaniesCompanyUuidTimeOffPoliciesRequestBuilder getAll() { - return new GetV1CompaniesCompanyUuidTimeOffPoliciesRequestBuilder(sdkConfiguration); - } - - /** - * Get all time off policies for a company - * - *

    Get all time off policies for a company - * - *

    scope: `time_off_policies:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param companyUuid The UUID of the company - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public GetV1CompaniesCompanyUuidTimeOffPoliciesResponse getAll(String companyUuid) { - return getAll(Optional.empty(), companyUuid); - } - - /** - * Get all time off policies for a company - * - *

    Get all time off policies for a company - * - *

    scope: `time_off_policies:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyUuid The UUID of the company - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public GetV1CompaniesCompanyUuidTimeOffPoliciesResponse getAll(Optional xGustoAPIVersion, String companyUuid) { - GetV1CompaniesCompanyUuidTimeOffPoliciesRequest request = - GetV1CompaniesCompanyUuidTimeOffPoliciesRequest - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .companyUuid(companyUuid) - .build(); - RequestOperation operation - = new GetV1CompaniesCompanyUuidTimeOffPolicies.Sync(sdkConfiguration, _headers); - return operation.handleResponse(operation.doRequest(request)); - } - - /** - * Create a time off policy + * Deactivate a time off policy * - *

    Create a time off policy + *

    Deactivate a time off policy * *

    scope: `time_off_policies:write` * @@ -366,55 +429,50 @@ public GetV1CompaniesCompanyUuidTimeOffPoliciesResponse getAll(OptionalCreate a time off policy + *

    Deactivate a time off policy * *

    scope: `time_off_policies:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company - * @param timeOffPolicyRequest Request body for creating a time off policy + * @param timeOffPolicyUuid The UUID of the time off policy * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostV1CompaniesCompanyUuidTimeOffPoliciesResponse create(String companyUuid, TimeOffPolicyRequest timeOffPolicyRequest) { - return create(Optional.empty(), companyUuid, timeOffPolicyRequest); + public PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateResponse deactivate(String timeOffPolicyUuid) { + return deactivate(Optional.empty(), timeOffPolicyUuid); } /** - * Create a time off policy + * Deactivate a time off policy * - *

    Create a time off policy + *

    Deactivate a time off policy * *

    scope: `time_off_policies:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyUuid The UUID of the company - * @param timeOffPolicyRequest Request body for creating a time off policy + * @param timeOffPolicyUuid The UUID of the time off policy * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostV1CompaniesCompanyUuidTimeOffPoliciesResponse create( - Optional xGustoAPIVersion, String companyUuid, - TimeOffPolicyRequest timeOffPolicyRequest) { - PostV1CompaniesCompanyUuidTimeOffPoliciesRequest request = - PostV1CompaniesCompanyUuidTimeOffPoliciesRequest + public PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateResponse deactivate(Optional xGustoAPIVersion, String timeOffPolicyUuid) { + PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateRequest request = + PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .companyUuid(companyUuid) - .timeOffPolicyRequest(timeOffPolicyRequest) + .timeOffPolicyUuid(timeOffPolicyUuid) .build(); - RequestOperation operation - = new PostV1CompaniesCompanyUuidTimeOffPolicies.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivate.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } @@ -610,62 +668,4 @@ public PutV1TimeOffPoliciesTimeOffPolicyUuidBalanceResponse updateBalance( return operation.handleResponse(operation.doRequest(request)); } - /** - * Deactivate a time off policy - * - *

    Deactivate a time off policy - * - *

    scope: `time_off_policies:write` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The call builder - */ - public PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateRequestBuilder deactivate() { - return new PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateRequestBuilder(sdkConfiguration); - } - - /** - * Deactivate a time off policy - * - *

    Deactivate a time off policy - * - *

    scope: `time_off_policies:write` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param timeOffPolicyUuid The UUID of the time off policy - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateResponse deactivate(String timeOffPolicyUuid) { - return deactivate(Optional.empty(), timeOffPolicyUuid); - } - - /** - * Deactivate a time off policy - * - *

    Deactivate a time off policy - * - *

    scope: `time_off_policies:write` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param timeOffPolicyUuid The UUID of the time off policy - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateResponse deactivate(Optional xGustoAPIVersion, String timeOffPolicyUuid) { - PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateRequest request = - PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateRequest - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .timeOffPolicyUuid(timeOffPolicyUuid) - .build(); - RequestOperation operation - = new PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivate.Sync(sdkConfiguration, _headers); - return operation.handleResponse(operation.doRequest(request)); - } - } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/Webhooks.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/Webhooks.java index 1b4e6a83d..0b7032cf2 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/Webhooks.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/Webhooks.java @@ -256,7 +256,7 @@ public GetV1WebhookSubscriptionUuidRequestBuilder getSubscription() { * @throws RuntimeException subclass if the API call fails */ public GetV1WebhookSubscriptionUuidResponse getSubscription(GetV1WebhookSubscriptionUuidSecurity security, String webhookSubscriptionUuid) { - return getSubscription(security, webhookSubscriptionUuid, Optional.empty()); + return getSubscription(security, Optional.empty(), webhookSubscriptionUuid); } /** @@ -272,19 +272,19 @@ public GetV1WebhookSubscriptionUuidResponse getSubscription(GetV1WebhookSubscrip *

    scope: `webhook_subscriptions:read` * * @param security The security details to use for authentication. - * @param webhookSubscriptionUuid The webhook subscription UUID. * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param webhookSubscriptionUuid The webhook subscription UUID. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public GetV1WebhookSubscriptionUuidResponse getSubscription( - GetV1WebhookSubscriptionUuidSecurity security, String webhookSubscriptionUuid, - Optional xGustoAPIVersion) { + GetV1WebhookSubscriptionUuidSecurity security, Optional xGustoAPIVersion, + String webhookSubscriptionUuid) { GetV1WebhookSubscriptionUuidRequest request = GetV1WebhookSubscriptionUuidRequest .builder() - .webhookSubscriptionUuid(webhookSubscriptionUuid) .xGustoAPIVersion(xGustoAPIVersion) + .webhookSubscriptionUuid(webhookSubscriptionUuid) .build(); RequestOperation operation = new GetV1WebhookSubscriptionUuid.Sync(sdkConfiguration, security, _headers); @@ -330,7 +330,7 @@ public PutV1WebhookSubscriptionUuidRequestBuilder updateSubscription() { public PutV1WebhookSubscriptionUuidResponse updateSubscription( PutV1WebhookSubscriptionUuidSecurity security, String webhookSubscriptionUuid, PutV1WebhookSubscriptionUuidRequestBody requestBody) { - return updateSubscription(security, webhookSubscriptionUuid, Optional.empty(), + return updateSubscription(security, Optional.empty(), webhookSubscriptionUuid, requestBody); } @@ -347,20 +347,20 @@ public PutV1WebhookSubscriptionUuidResponse updateSubscription( *

    scope: `webhook_subscriptions:write` * * @param security The security details to use for authentication. - * @param webhookSubscriptionUuid The webhook subscription UUID. * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param webhookSubscriptionUuid The webhook subscription UUID. * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PutV1WebhookSubscriptionUuidResponse updateSubscription( - PutV1WebhookSubscriptionUuidSecurity security, String webhookSubscriptionUuid, - Optional xGustoAPIVersion, PutV1WebhookSubscriptionUuidRequestBody requestBody) { + PutV1WebhookSubscriptionUuidSecurity security, Optional xGustoAPIVersion, + String webhookSubscriptionUuid, PutV1WebhookSubscriptionUuidRequestBody requestBody) { PutV1WebhookSubscriptionUuidRequest request = PutV1WebhookSubscriptionUuidRequest .builder() - .webhookSubscriptionUuid(webhookSubscriptionUuid) .xGustoAPIVersion(xGustoAPIVersion) + .webhookSubscriptionUuid(webhookSubscriptionUuid) .requestBody(requestBody) .build(); RequestOperation operation @@ -404,7 +404,7 @@ public DeleteV1WebhookSubscriptionUuidRequestBuilder deleteSubscription() { * @throws RuntimeException subclass if the API call fails */ public DeleteV1WebhookSubscriptionUuidResponse deleteSubscription(DeleteV1WebhookSubscriptionUuidSecurity security, String webhookSubscriptionUuid) { - return deleteSubscription(security, webhookSubscriptionUuid, Optional.empty()); + return deleteSubscription(security, Optional.empty(), webhookSubscriptionUuid); } /** @@ -420,19 +420,19 @@ public DeleteV1WebhookSubscriptionUuidResponse deleteSubscription(DeleteV1Webhoo *

    scope: `webhook_subscriptions:write` * * @param security The security details to use for authentication. - * @param webhookSubscriptionUuid The webhook subscription UUID. * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param webhookSubscriptionUuid The webhook subscription UUID. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public DeleteV1WebhookSubscriptionUuidResponse deleteSubscription( - DeleteV1WebhookSubscriptionUuidSecurity security, String webhookSubscriptionUuid, - Optional xGustoAPIVersion) { + DeleteV1WebhookSubscriptionUuidSecurity security, Optional xGustoAPIVersion, + String webhookSubscriptionUuid) { DeleteV1WebhookSubscriptionUuidRequest request = DeleteV1WebhookSubscriptionUuidRequest .builder() - .webhookSubscriptionUuid(webhookSubscriptionUuid) .xGustoAPIVersion(xGustoAPIVersion) + .webhookSubscriptionUuid(webhookSubscriptionUuid) .build(); RequestOperation operation = new DeleteV1WebhookSubscriptionUuid.Sync(sdkConfiguration, security, _headers); @@ -440,165 +440,165 @@ public DeleteV1WebhookSubscriptionUuidResponse deleteSubscription( } /** - * Verify a webhook subscription - * - *

    When a webhook subscription is created, a `verification_token` is POSTed to the registered webhook - * subscription URL. This `verify` endpoint needs to be called with `verification_token` before webhook - * events can be sent to the registered webhook URL. + * Request a verification token for a webhook subscription * - *

    Use the /v1/webhook_subscriptions/{webhook_subscription_uuid}/request_verification_token API to - * resend the `verification_token` to the Subscriber. + *

    Request that the webhook subscription `verification_token` be POSTed to the Subscription URL. * *

    📘 System Access Authentication * *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) * - *

    scope: `webhook_subscriptions:write` + *

    scope: `webhook_subscriptions:read` * * @return The call builder */ - public PutV1VerifyWebhookSubscriptionUuidRequestBuilder verify() { - return new PutV1VerifyWebhookSubscriptionUuidRequestBuilder(sdkConfiguration); + public GetV1WebhookSubscriptionVerificationTokenUuidRequestBuilder requestVerificationToken() { + return new GetV1WebhookSubscriptionVerificationTokenUuidRequestBuilder(sdkConfiguration); } /** - * Verify a webhook subscription - * - *

    When a webhook subscription is created, a `verification_token` is POSTed to the registered webhook - * subscription URL. This `verify` endpoint needs to be called with `verification_token` before webhook - * events can be sent to the registered webhook URL. + * Request a verification token for a webhook subscription * - *

    Use the /v1/webhook_subscriptions/{webhook_subscription_uuid}/request_verification_token API to - * resend the `verification_token` to the Subscriber. + *

    Request that the webhook subscription `verification_token` be POSTed to the Subscription URL. * *

    📘 System Access Authentication * *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) * - *

    scope: `webhook_subscriptions:write` + *

    scope: `webhook_subscriptions:read` * * @param security The security details to use for authentication. * @param webhookSubscriptionUuid The webhook subscription UUID. - * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1VerifyWebhookSubscriptionUuidResponse verify( - PutV1VerifyWebhookSubscriptionUuidSecurity security, String webhookSubscriptionUuid, - PutV1VerifyWebhookSubscriptionUuidRequestBody requestBody) { - return verify(security, webhookSubscriptionUuid, Optional.empty(), - requestBody); + public GetV1WebhookSubscriptionVerificationTokenUuidResponse requestVerificationToken(GetV1WebhookSubscriptionVerificationTokenUuidSecurity security, String webhookSubscriptionUuid) { + return requestVerificationToken(security, Optional.empty(), webhookSubscriptionUuid); } /** - * Verify a webhook subscription - * - *

    When a webhook subscription is created, a `verification_token` is POSTed to the registered webhook - * subscription URL. This `verify` endpoint needs to be called with `verification_token` before webhook - * events can be sent to the registered webhook URL. + * Request a verification token for a webhook subscription * - *

    Use the /v1/webhook_subscriptions/{webhook_subscription_uuid}/request_verification_token API to - * resend the `verification_token` to the Subscriber. + *

    Request that the webhook subscription `verification_token` be POSTed to the Subscription URL. * *

    📘 System Access Authentication * *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) * - *

    scope: `webhook_subscriptions:write` + *

    scope: `webhook_subscriptions:read` * * @param security The security details to use for authentication. - * @param webhookSubscriptionUuid The webhook subscription UUID. * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param requestBody + * @param webhookSubscriptionUuid The webhook subscription UUID. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1VerifyWebhookSubscriptionUuidResponse verify( - PutV1VerifyWebhookSubscriptionUuidSecurity security, String webhookSubscriptionUuid, - Optional xGustoAPIVersion, PutV1VerifyWebhookSubscriptionUuidRequestBody requestBody) { - PutV1VerifyWebhookSubscriptionUuidRequest request = - PutV1VerifyWebhookSubscriptionUuidRequest + public GetV1WebhookSubscriptionVerificationTokenUuidResponse requestVerificationToken( + GetV1WebhookSubscriptionVerificationTokenUuidSecurity security, Optional xGustoAPIVersion, + String webhookSubscriptionUuid) { + GetV1WebhookSubscriptionVerificationTokenUuidRequest request = + GetV1WebhookSubscriptionVerificationTokenUuidRequest .builder() - .webhookSubscriptionUuid(webhookSubscriptionUuid) .xGustoAPIVersion(xGustoAPIVersion) - .requestBody(requestBody) + .webhookSubscriptionUuid(webhookSubscriptionUuid) .build(); - RequestOperation operation - = new PutV1VerifyWebhookSubscriptionUuid.Sync(sdkConfiguration, security, _headers); + RequestOperation operation + = new GetV1WebhookSubscriptionVerificationTokenUuid.Sync(sdkConfiguration, security, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Request a verification token for a webhook subscription + * Verify a webhook subscription * - *

    Request that the webhook subscription `verification_token` be POSTed to the Subscription URL. + *

    When a webhook subscription is created, a `verification_token` is POSTed to the registered webhook + * subscription URL. This `verify` endpoint needs to be called with `verification_token` before webhook + * events can be sent to the registered webhook URL. + * + *

    Use the /v1/webhook_subscriptions/{webhook_subscription_uuid}/request_verification_token API to + * resend the `verification_token` to the Subscriber. * *

    📘 System Access Authentication * *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) * - *

    scope: `webhook_subscriptions:read` + *

    scope: `webhook_subscriptions:write` * * @return The call builder */ - public GetV1WebhookSubscriptionVerificationTokenUuidRequestBuilder requestVerificationToken() { - return new GetV1WebhookSubscriptionVerificationTokenUuidRequestBuilder(sdkConfiguration); + public PutV1VerifyWebhookSubscriptionUuidRequestBuilder verify() { + return new PutV1VerifyWebhookSubscriptionUuidRequestBuilder(sdkConfiguration); } /** - * Request a verification token for a webhook subscription + * Verify a webhook subscription * - *

    Request that the webhook subscription `verification_token` be POSTed to the Subscription URL. + *

    When a webhook subscription is created, a `verification_token` is POSTed to the registered webhook + * subscription URL. This `verify` endpoint needs to be called with `verification_token` before webhook + * events can be sent to the registered webhook URL. + * + *

    Use the /v1/webhook_subscriptions/{webhook_subscription_uuid}/request_verification_token API to + * resend the `verification_token` to the Subscriber. * *

    📘 System Access Authentication * *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) * - *

    scope: `webhook_subscriptions:read` + *

    scope: `webhook_subscriptions:write` * * @param security The security details to use for authentication. * @param webhookSubscriptionUuid The webhook subscription UUID. + * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1WebhookSubscriptionVerificationTokenUuidResponse requestVerificationToken(GetV1WebhookSubscriptionVerificationTokenUuidSecurity security, String webhookSubscriptionUuid) { - return requestVerificationToken(security, webhookSubscriptionUuid, Optional.empty()); + public PutV1VerifyWebhookSubscriptionUuidResponse verify( + PutV1VerifyWebhookSubscriptionUuidSecurity security, String webhookSubscriptionUuid, + PutV1VerifyWebhookSubscriptionUuidRequestBody requestBody) { + return verify(security, Optional.empty(), webhookSubscriptionUuid, + requestBody); } /** - * Request a verification token for a webhook subscription + * Verify a webhook subscription * - *

    Request that the webhook subscription `verification_token` be POSTed to the Subscription URL. + *

    When a webhook subscription is created, a `verification_token` is POSTed to the registered webhook + * subscription URL. This `verify` endpoint needs to be called with `verification_token` before webhook + * events can be sent to the registered webhook URL. + * + *

    Use the /v1/webhook_subscriptions/{webhook_subscription_uuid}/request_verification_token API to + * resend the `verification_token` to the Subscriber. * *

    📘 System Access Authentication * *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) * - *

    scope: `webhook_subscriptions:read` + *

    scope: `webhook_subscriptions:write` * * @param security The security details to use for authentication. - * @param webhookSubscriptionUuid The webhook subscription UUID. * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param webhookSubscriptionUuid The webhook subscription UUID. + * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1WebhookSubscriptionVerificationTokenUuidResponse requestVerificationToken( - GetV1WebhookSubscriptionVerificationTokenUuidSecurity security, String webhookSubscriptionUuid, - Optional xGustoAPIVersion) { - GetV1WebhookSubscriptionVerificationTokenUuidRequest request = - GetV1WebhookSubscriptionVerificationTokenUuidRequest + public PutV1VerifyWebhookSubscriptionUuidResponse verify( + PutV1VerifyWebhookSubscriptionUuidSecurity security, Optional xGustoAPIVersion, + String webhookSubscriptionUuid, PutV1VerifyWebhookSubscriptionUuidRequestBody requestBody) { + PutV1VerifyWebhookSubscriptionUuidRequest request = + PutV1VerifyWebhookSubscriptionUuidRequest .builder() - .webhookSubscriptionUuid(webhookSubscriptionUuid) .xGustoAPIVersion(xGustoAPIVersion) + .webhookSubscriptionUuid(webhookSubscriptionUuid) + .requestBody(requestBody) .build(); - RequestOperation operation - = new GetV1WebhookSubscriptionVerificationTokenUuid.Sync(sdkConfiguration, security, _headers); + RequestOperation operation + = new PutV1VerifyWebhookSubscriptionUuid.Sync(sdkConfiguration, security, _headers); return operation.handleResponse(operation.doRequest(request)); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/WireInRequests.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/WireInRequests.java index d9751a69a..b5e842bca 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/WireInRequests.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/WireInRequests.java @@ -75,7 +75,7 @@ public GetWireInRequestsWireInRequestUuidRequestBuilder get() { * @throws RuntimeException subclass if the API call fails */ public GetWireInRequestsWireInRequestUuidResponse get(String wireInRequestUuid) { - return get(wireInRequestUuid, Optional.empty()); + return get(Optional.empty(), wireInRequestUuid); } /** @@ -87,17 +87,17 @@ public GetWireInRequestsWireInRequestUuidResponse get(String wireInRequestUuid) * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param wireInRequestUuid The UUID of the Wire In Request * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param wireInRequestUuid The UUID of the Wire In Request * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetWireInRequestsWireInRequestUuidResponse get(String wireInRequestUuid, Optional xGustoAPIVersion) { + public GetWireInRequestsWireInRequestUuidResponse get(Optional xGustoAPIVersion, String wireInRequestUuid) { GetWireInRequestsWireInRequestUuidRequest request = GetWireInRequestsWireInRequestUuidRequest .builder() - .wireInRequestUuid(wireInRequestUuid) .xGustoAPIVersion(xGustoAPIVersion) + .wireInRequestUuid(wireInRequestUuid) .build(); RequestOperation operation = new GetWireInRequestsWireInRequestUuid.Sync(sdkConfiguration, _headers); @@ -134,7 +134,7 @@ public PutWireInRequestsWireInRequestUuidRequestBuilder submit() { * @throws RuntimeException subclass if the API call fails */ public PutWireInRequestsWireInRequestUuidResponse submit(String wireInRequestUuid, WireInRequestUpdateRequestBody wireInRequestUpdateRequestBody) { - return submit(wireInRequestUuid, Optional.empty(), wireInRequestUpdateRequestBody); + return submit(Optional.empty(), wireInRequestUuid, wireInRequestUpdateRequestBody); } /** @@ -146,20 +146,20 @@ public PutWireInRequestsWireInRequestUuidResponse submit(String wireInRequestUui * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param wireInRequestUuid The UUID of the Wire In Request * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param wireInRequestUuid The UUID of the Wire In Request * @param wireInRequestUpdateRequestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PutWireInRequestsWireInRequestUuidResponse submit( - String wireInRequestUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String wireInRequestUuid, WireInRequestUpdateRequestBody wireInRequestUpdateRequestBody) { PutWireInRequestsWireInRequestUuidRequest request = PutWireInRequestsWireInRequestUuidRequest .builder() - .wireInRequestUuid(wireInRequestUuid) .xGustoAPIVersion(xGustoAPIVersion) + .wireInRequestUuid(wireInRequestUuid) .wireInRequestUpdateRequestBody(wireInRequestUpdateRequestBody) .build(); RequestOperation operation @@ -196,7 +196,7 @@ public GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder list() { * @throws RuntimeException subclass if the API call fails */ public GetCompaniesCompanyUuidWireInRequestUuidResponse list(String companyUuid) { - return list(companyUuid, Optional.empty(), Optional.empty(), + return list(Optional.empty(), companyUuid, Optional.empty(), Optional.empty()); } @@ -209,21 +209,21 @@ public GetCompaniesCompanyUuidWireInRequestUuidResponse list(String companyUuid) * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company * @param page The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. * @param per Number of objects per page. For majority of endpoints will default to 25 * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public GetCompaniesCompanyUuidWireInRequestUuidResponse list( - String companyUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String companyUuid, Optional page, Optional per) { GetCompaniesCompanyUuidWireInRequestUuidRequest request = GetCompaniesCompanyUuidWireInRequestUuidRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) .page(page) .per(per) .build(); diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/AchTransaction.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/AchTransaction.java index b5ab54317..5ab6291da 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/AchTransaction.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/AchTransaction.java @@ -53,7 +53,7 @@ public class AchTransaction { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("recipient_type") - private JsonNullable recipientType; + private JsonNullable recipientType; /** * Unique identifier for the recipient associated with the ACH transaction @@ -128,7 +128,7 @@ public AchTransaction( @JsonProperty("company_uuid") Optional companyUuid, @JsonProperty("payment_event_type") Optional paymentEventType, @JsonProperty("payment_event_uuid") Optional paymentEventUuid, - @JsonProperty("recipient_type") JsonNullable recipientType, + @JsonProperty("recipient_type") JsonNullable recipientType, @JsonProperty("recipient_uuid") Optional recipientUuid, @JsonProperty("error_code") JsonNullable errorCode, @JsonProperty("transaction_type") Optional transactionType, @@ -215,8 +215,8 @@ public Optional paymentEventUuid() { */ @SuppressWarnings("unchecked") @JsonIgnore - public JsonNullable recipientType() { - return (JsonNullable) recipientType; + public JsonNullable recipientType() { + return (JsonNullable) recipientType; } /** @@ -371,7 +371,7 @@ public AchTransaction withPaymentEventUuid(Optional paymentEventUuid) { /** * The type of recipient associated with the ACH transaction */ - public AchTransaction withRecipientType(AchTransactionRecipientType recipientType) { + public AchTransaction withRecipientType(RecipientType recipientType) { Utils.checkNotNull(recipientType, "recipientType"); this.recipientType = JsonNullable.of(recipientType); return this; @@ -380,7 +380,7 @@ public AchTransaction withRecipientType(AchTransactionRecipientType recipientTyp /** * The type of recipient associated with the ACH transaction */ - public AchTransaction withRecipientType(JsonNullable recipientType) { + public AchTransaction withRecipientType(JsonNullable recipientType) { Utils.checkNotNull(recipientType, "recipientType"); this.recipientType = recipientType; return this; @@ -630,7 +630,7 @@ public final static class Builder { private Optional paymentEventUuid = Optional.empty(); - private JsonNullable recipientType = JsonNullable.undefined(); + private JsonNullable recipientType = JsonNullable.undefined(); private Optional recipientUuid = Optional.empty(); @@ -725,7 +725,7 @@ public Builder paymentEventUuid(Optional paymentEventUuid) { /** * The type of recipient associated with the ACH transaction */ - public Builder recipientType(AchTransactionRecipientType recipientType) { + public Builder recipientType(RecipientType recipientType) { Utils.checkNotNull(recipientType, "recipientType"); this.recipientType = JsonNullable.of(recipientType); return this; @@ -734,7 +734,7 @@ public Builder recipientType(AchTransactionRecipientType recipientType) { /** * The type of recipient associated with the ACH transaction */ - public Builder recipientType(JsonNullable recipientType) { + public Builder recipientType(JsonNullable recipientType) { Utils.checkNotNull(recipientType, "recipientType"); this.recipientType = recipientType; return this; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Aggregation.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Aggregation.java index 30e6213f9..4f2861fa8 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Aggregation.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Aggregation.java @@ -11,7 +11,7 @@ /** * Aggregation * - *

    The breakdown of the report. Use 'default' for no split. + *

    The breakdown of the report. Use `default` for no split. */ public enum Aggregation { DEFAULT("default"), diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/BatchAction.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/BatchAction.java index 0b377492c..d359d345b 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/BatchAction.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/BatchAction.java @@ -14,7 +14,7 @@ *

    The action being performed on the batch. */ public enum BatchAction { - CREATE("create"); + CANCEL("cancel"); @JsonValue private final String value; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/BenefitSummary.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/BenefitSummary.java index 9a4514741..d6cce8a41 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/BenefitSummary.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/BenefitSummary.java @@ -57,7 +57,7 @@ public class BenefitSummary { @JsonInclude(Include.NON_ABSENT) @JsonProperty("employees") - private Optional> employees; + private Optional> employees; @JsonCreator public BenefitSummary( @@ -66,7 +66,7 @@ public BenefitSummary( @JsonProperty("description") Optional description, @JsonProperty("company_benefit_deduction") Optional companyBenefitDeduction, @JsonProperty("company_benefit_contribution") Optional companyBenefitContribution, - @JsonProperty("employees") Optional> employees) { + @JsonProperty("employees") Optional> employees) { Utils.checkNotNull(startDate, "startDate"); Utils.checkNotNull(endDate, "endDate"); Utils.checkNotNull(description, "description"); @@ -130,8 +130,8 @@ public Optional companyBenefitContribution() { @SuppressWarnings("unchecked") @JsonIgnore - public Optional> employees() { - return (Optional>) employees; + public Optional> employees() { + return (Optional>) employees; } public static Builder builder() { @@ -238,14 +238,14 @@ public BenefitSummary withCompanyBenefitContribution(Optional companyBen return this; } - public BenefitSummary withEmployees(List employees) { + public BenefitSummary withEmployees(List employees) { Utils.checkNotNull(employees, "employees"); this.employees = Optional.ofNullable(employees); return this; } - public BenefitSummary withEmployees(Optional> employees) { + public BenefitSummary withEmployees(Optional> employees) { Utils.checkNotNull(employees, "employees"); this.employees = employees; return this; @@ -300,7 +300,7 @@ public final static class Builder { private Optional companyBenefitContribution = Optional.empty(); - private Optional> employees = Optional.empty(); + private Optional> employees = Optional.empty(); private Builder() { // force use of static builder() method @@ -406,13 +406,13 @@ public Builder companyBenefitContribution(Optional companyBenefitContrib } - public Builder employees(List employees) { + public Builder employees(List employees) { Utils.checkNotNull(employees, "employees"); this.employees = Optional.ofNullable(employees); return this; } - public Builder employees(Optional> employees) { + public Builder employees(Optional> employees) { Utils.checkNotNull(employees, "employees"); this.employees = employees; return this; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/BenefitSummaryEmployees.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/BenefitSummaryEmployees.java deleted file mode 100644 index d75631258..000000000 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/BenefitSummaryEmployees.java +++ /dev/null @@ -1,558 +0,0 @@ -/* - * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - */ -package com.gusto.embedded_api.models.components; - -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonIgnore; -import com.fasterxml.jackson.annotation.JsonInclude.Include; -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.gusto.embedded_api.utils.Utils; -import java.lang.Override; -import java.lang.String; -import java.lang.SuppressWarnings; -import java.util.List; -import java.util.Optional; - - -public class BenefitSummaryEmployees { - /** - * The UUID of the employee - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("uuid") - private Optional uuid; - - /** - * The sum of employee deduction for this employee given the period of time and the specific company - * benefit. - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("company_benefit_deduction") - private Optional companyBenefitDeduction; - - /** - * The sum of company contribution for this employee given the period of time and the specific company - * benefit. - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("company_benefit_contribution") - private Optional companyBenefitContribution; - - /** - * The sum of employee benefit deduction for this employee given the period of time and the benefit - * type. - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("benefit_deduction") - private Optional benefitDeduction; - - /** - * The sum of company contribution for this employee given the period of time and the benefit type. - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("benefit_contribution") - private Optional benefitContribution; - - /** - * Gross pay for this employee given the period of time. - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("gross_pay") - private Optional grossPay; - - /** - * Total imputed pay for this employee given the period of time (not scoped to a benefit type). - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("imputed_pay") - private Optional imputedPay; - - - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("payroll_benefits") - private Optional> payrollBenefits; - - @JsonCreator - public BenefitSummaryEmployees( - @JsonProperty("uuid") Optional uuid, - @JsonProperty("company_benefit_deduction") Optional companyBenefitDeduction, - @JsonProperty("company_benefit_contribution") Optional companyBenefitContribution, - @JsonProperty("benefit_deduction") Optional benefitDeduction, - @JsonProperty("benefit_contribution") Optional benefitContribution, - @JsonProperty("gross_pay") Optional grossPay, - @JsonProperty("imputed_pay") Optional imputedPay, - @JsonProperty("payroll_benefits") Optional> payrollBenefits) { - Utils.checkNotNull(uuid, "uuid"); - Utils.checkNotNull(companyBenefitDeduction, "companyBenefitDeduction"); - Utils.checkNotNull(companyBenefitContribution, "companyBenefitContribution"); - Utils.checkNotNull(benefitDeduction, "benefitDeduction"); - Utils.checkNotNull(benefitContribution, "benefitContribution"); - Utils.checkNotNull(grossPay, "grossPay"); - Utils.checkNotNull(imputedPay, "imputedPay"); - Utils.checkNotNull(payrollBenefits, "payrollBenefits"); - this.uuid = uuid; - this.companyBenefitDeduction = companyBenefitDeduction; - this.companyBenefitContribution = companyBenefitContribution; - this.benefitDeduction = benefitDeduction; - this.benefitContribution = benefitContribution; - this.grossPay = grossPay; - this.imputedPay = imputedPay; - this.payrollBenefits = payrollBenefits; - } - - public BenefitSummaryEmployees() { - this(Optional.empty(), Optional.empty(), Optional.empty(), - Optional.empty(), Optional.empty(), Optional.empty(), - Optional.empty(), Optional.empty()); - } - - /** - * The UUID of the employee - */ - @JsonIgnore - public Optional uuid() { - return uuid; - } - - /** - * The sum of employee deduction for this employee given the period of time and the specific company - * benefit. - */ - @JsonIgnore - public Optional companyBenefitDeduction() { - return companyBenefitDeduction; - } - - /** - * The sum of company contribution for this employee given the period of time and the specific company - * benefit. - */ - @JsonIgnore - public Optional companyBenefitContribution() { - return companyBenefitContribution; - } - - /** - * The sum of employee benefit deduction for this employee given the period of time and the benefit - * type. - */ - @JsonIgnore - public Optional benefitDeduction() { - return benefitDeduction; - } - - /** - * The sum of company contribution for this employee given the period of time and the benefit type. - */ - @JsonIgnore - public Optional benefitContribution() { - return benefitContribution; - } - - /** - * Gross pay for this employee given the period of time. - */ - @JsonIgnore - public Optional grossPay() { - return grossPay; - } - - /** - * Total imputed pay for this employee given the period of time (not scoped to a benefit type). - */ - @JsonIgnore - public Optional imputedPay() { - return imputedPay; - } - - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional> payrollBenefits() { - return (Optional>) payrollBenefits; - } - - public static Builder builder() { - return new Builder(); - } - - - /** - * The UUID of the employee - */ - public BenefitSummaryEmployees withUuid(String uuid) { - Utils.checkNotNull(uuid, "uuid"); - this.uuid = Optional.ofNullable(uuid); - return this; - } - - - /** - * The UUID of the employee - */ - public BenefitSummaryEmployees withUuid(Optional uuid) { - Utils.checkNotNull(uuid, "uuid"); - this.uuid = uuid; - return this; - } - - /** - * The sum of employee deduction for this employee given the period of time and the specific company - * benefit. - */ - public BenefitSummaryEmployees withCompanyBenefitDeduction(String companyBenefitDeduction) { - Utils.checkNotNull(companyBenefitDeduction, "companyBenefitDeduction"); - this.companyBenefitDeduction = Optional.ofNullable(companyBenefitDeduction); - return this; - } - - - /** - * The sum of employee deduction for this employee given the period of time and the specific company - * benefit. - */ - public BenefitSummaryEmployees withCompanyBenefitDeduction(Optional companyBenefitDeduction) { - Utils.checkNotNull(companyBenefitDeduction, "companyBenefitDeduction"); - this.companyBenefitDeduction = companyBenefitDeduction; - return this; - } - - /** - * The sum of company contribution for this employee given the period of time and the specific company - * benefit. - */ - public BenefitSummaryEmployees withCompanyBenefitContribution(String companyBenefitContribution) { - Utils.checkNotNull(companyBenefitContribution, "companyBenefitContribution"); - this.companyBenefitContribution = Optional.ofNullable(companyBenefitContribution); - return this; - } - - - /** - * The sum of company contribution for this employee given the period of time and the specific company - * benefit. - */ - public BenefitSummaryEmployees withCompanyBenefitContribution(Optional companyBenefitContribution) { - Utils.checkNotNull(companyBenefitContribution, "companyBenefitContribution"); - this.companyBenefitContribution = companyBenefitContribution; - return this; - } - - /** - * The sum of employee benefit deduction for this employee given the period of time and the benefit - * type. - */ - public BenefitSummaryEmployees withBenefitDeduction(String benefitDeduction) { - Utils.checkNotNull(benefitDeduction, "benefitDeduction"); - this.benefitDeduction = Optional.ofNullable(benefitDeduction); - return this; - } - - - /** - * The sum of employee benefit deduction for this employee given the period of time and the benefit - * type. - */ - public BenefitSummaryEmployees withBenefitDeduction(Optional benefitDeduction) { - Utils.checkNotNull(benefitDeduction, "benefitDeduction"); - this.benefitDeduction = benefitDeduction; - return this; - } - - /** - * The sum of company contribution for this employee given the period of time and the benefit type. - */ - public BenefitSummaryEmployees withBenefitContribution(String benefitContribution) { - Utils.checkNotNull(benefitContribution, "benefitContribution"); - this.benefitContribution = Optional.ofNullable(benefitContribution); - return this; - } - - - /** - * The sum of company contribution for this employee given the period of time and the benefit type. - */ - public BenefitSummaryEmployees withBenefitContribution(Optional benefitContribution) { - Utils.checkNotNull(benefitContribution, "benefitContribution"); - this.benefitContribution = benefitContribution; - return this; - } - - /** - * Gross pay for this employee given the period of time. - */ - public BenefitSummaryEmployees withGrossPay(String grossPay) { - Utils.checkNotNull(grossPay, "grossPay"); - this.grossPay = Optional.ofNullable(grossPay); - return this; - } - - - /** - * Gross pay for this employee given the period of time. - */ - public BenefitSummaryEmployees withGrossPay(Optional grossPay) { - Utils.checkNotNull(grossPay, "grossPay"); - this.grossPay = grossPay; - return this; - } - - /** - * Total imputed pay for this employee given the period of time (not scoped to a benefit type). - */ - public BenefitSummaryEmployees withImputedPay(String imputedPay) { - Utils.checkNotNull(imputedPay, "imputedPay"); - this.imputedPay = Optional.ofNullable(imputedPay); - return this; - } - - - /** - * Total imputed pay for this employee given the period of time (not scoped to a benefit type). - */ - public BenefitSummaryEmployees withImputedPay(Optional imputedPay) { - Utils.checkNotNull(imputedPay, "imputedPay"); - this.imputedPay = imputedPay; - return this; - } - - public BenefitSummaryEmployees withPayrollBenefits(List payrollBenefits) { - Utils.checkNotNull(payrollBenefits, "payrollBenefits"); - this.payrollBenefits = Optional.ofNullable(payrollBenefits); - return this; - } - - - public BenefitSummaryEmployees withPayrollBenefits(Optional> payrollBenefits) { - Utils.checkNotNull(payrollBenefits, "payrollBenefits"); - this.payrollBenefits = payrollBenefits; - return this; - } - - @Override - public boolean equals(java.lang.Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - BenefitSummaryEmployees other = (BenefitSummaryEmployees) o; - return - Utils.enhancedDeepEquals(this.uuid, other.uuid) && - Utils.enhancedDeepEquals(this.companyBenefitDeduction, other.companyBenefitDeduction) && - Utils.enhancedDeepEquals(this.companyBenefitContribution, other.companyBenefitContribution) && - Utils.enhancedDeepEquals(this.benefitDeduction, other.benefitDeduction) && - Utils.enhancedDeepEquals(this.benefitContribution, other.benefitContribution) && - Utils.enhancedDeepEquals(this.grossPay, other.grossPay) && - Utils.enhancedDeepEquals(this.imputedPay, other.imputedPay) && - Utils.enhancedDeepEquals(this.payrollBenefits, other.payrollBenefits); - } - - @Override - public int hashCode() { - return Utils.enhancedHash( - uuid, companyBenefitDeduction, companyBenefitContribution, - benefitDeduction, benefitContribution, grossPay, - imputedPay, payrollBenefits); - } - - @Override - public String toString() { - return Utils.toString(BenefitSummaryEmployees.class, - "uuid", uuid, - "companyBenefitDeduction", companyBenefitDeduction, - "companyBenefitContribution", companyBenefitContribution, - "benefitDeduction", benefitDeduction, - "benefitContribution", benefitContribution, - "grossPay", grossPay, - "imputedPay", imputedPay, - "payrollBenefits", payrollBenefits); - } - - @SuppressWarnings("UnusedReturnValue") - public final static class Builder { - - private Optional uuid = Optional.empty(); - - private Optional companyBenefitDeduction = Optional.empty(); - - private Optional companyBenefitContribution = Optional.empty(); - - private Optional benefitDeduction = Optional.empty(); - - private Optional benefitContribution = Optional.empty(); - - private Optional grossPay = Optional.empty(); - - private Optional imputedPay = Optional.empty(); - - private Optional> payrollBenefits = Optional.empty(); - - private Builder() { - // force use of static builder() method - } - - - /** - * The UUID of the employee - */ - public Builder uuid(String uuid) { - Utils.checkNotNull(uuid, "uuid"); - this.uuid = Optional.ofNullable(uuid); - return this; - } - - /** - * The UUID of the employee - */ - public Builder uuid(Optional uuid) { - Utils.checkNotNull(uuid, "uuid"); - this.uuid = uuid; - return this; - } - - - /** - * The sum of employee deduction for this employee given the period of time and the specific company - * benefit. - */ - public Builder companyBenefitDeduction(String companyBenefitDeduction) { - Utils.checkNotNull(companyBenefitDeduction, "companyBenefitDeduction"); - this.companyBenefitDeduction = Optional.ofNullable(companyBenefitDeduction); - return this; - } - - /** - * The sum of employee deduction for this employee given the period of time and the specific company - * benefit. - */ - public Builder companyBenefitDeduction(Optional companyBenefitDeduction) { - Utils.checkNotNull(companyBenefitDeduction, "companyBenefitDeduction"); - this.companyBenefitDeduction = companyBenefitDeduction; - return this; - } - - - /** - * The sum of company contribution for this employee given the period of time and the specific company - * benefit. - */ - public Builder companyBenefitContribution(String companyBenefitContribution) { - Utils.checkNotNull(companyBenefitContribution, "companyBenefitContribution"); - this.companyBenefitContribution = Optional.ofNullable(companyBenefitContribution); - return this; - } - - /** - * The sum of company contribution for this employee given the period of time and the specific company - * benefit. - */ - public Builder companyBenefitContribution(Optional companyBenefitContribution) { - Utils.checkNotNull(companyBenefitContribution, "companyBenefitContribution"); - this.companyBenefitContribution = companyBenefitContribution; - return this; - } - - - /** - * The sum of employee benefit deduction for this employee given the period of time and the benefit - * type. - */ - public Builder benefitDeduction(String benefitDeduction) { - Utils.checkNotNull(benefitDeduction, "benefitDeduction"); - this.benefitDeduction = Optional.ofNullable(benefitDeduction); - return this; - } - - /** - * The sum of employee benefit deduction for this employee given the period of time and the benefit - * type. - */ - public Builder benefitDeduction(Optional benefitDeduction) { - Utils.checkNotNull(benefitDeduction, "benefitDeduction"); - this.benefitDeduction = benefitDeduction; - return this; - } - - - /** - * The sum of company contribution for this employee given the period of time and the benefit type. - */ - public Builder benefitContribution(String benefitContribution) { - Utils.checkNotNull(benefitContribution, "benefitContribution"); - this.benefitContribution = Optional.ofNullable(benefitContribution); - return this; - } - - /** - * The sum of company contribution for this employee given the period of time and the benefit type. - */ - public Builder benefitContribution(Optional benefitContribution) { - Utils.checkNotNull(benefitContribution, "benefitContribution"); - this.benefitContribution = benefitContribution; - return this; - } - - - /** - * Gross pay for this employee given the period of time. - */ - public Builder grossPay(String grossPay) { - Utils.checkNotNull(grossPay, "grossPay"); - this.grossPay = Optional.ofNullable(grossPay); - return this; - } - - /** - * Gross pay for this employee given the period of time. - */ - public Builder grossPay(Optional grossPay) { - Utils.checkNotNull(grossPay, "grossPay"); - this.grossPay = grossPay; - return this; - } - - - /** - * Total imputed pay for this employee given the period of time (not scoped to a benefit type). - */ - public Builder imputedPay(String imputedPay) { - Utils.checkNotNull(imputedPay, "imputedPay"); - this.imputedPay = Optional.ofNullable(imputedPay); - return this; - } - - /** - * Total imputed pay for this employee given the period of time (not scoped to a benefit type). - */ - public Builder imputedPay(Optional imputedPay) { - Utils.checkNotNull(imputedPay, "imputedPay"); - this.imputedPay = imputedPay; - return this; - } - - - public Builder payrollBenefits(List payrollBenefits) { - Utils.checkNotNull(payrollBenefits, "payrollBenefits"); - this.payrollBenefits = Optional.ofNullable(payrollBenefits); - return this; - } - - public Builder payrollBenefits(Optional> payrollBenefits) { - Utils.checkNotNull(payrollBenefits, "payrollBenefits"); - this.payrollBenefits = payrollBenefits; - return this; - } - - public BenefitSummaryEmployees build() { - - return new BenefitSummaryEmployees( - uuid, companyBenefitDeduction, companyBenefitContribution, - benefitDeduction, benefitContribution, grossPay, - imputedPay, payrollBenefits); - } - - } -} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/BenefitTypeRequirements.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/BenefitTypeRequirements.java index 793f0836b..d376003cd 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/BenefitTypeRequirements.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/BenefitTypeRequirements.java @@ -28,7 +28,7 @@ public class BenefitTypeRequirements { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("contribution") - private Optional contribution; + private Optional contribution; /** * Whether the employee deduction amount should be treated as a percentage to be deducted from each @@ -82,7 +82,7 @@ public class BenefitTypeRequirements { @JsonCreator public BenefitTypeRequirements( @JsonProperty("employee_deduction") Optional employeeDeduction, - @JsonProperty("contribution") Optional contribution, + @JsonProperty("contribution") Optional contribution, @JsonProperty("deduct_as_percentage") Optional deductAsPercentage, @JsonProperty("catch_up") Optional catchUp, @JsonProperty("limit_option") Optional limitOption, @@ -127,8 +127,8 @@ public Optional employeeDeduction() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional contribution() { - return (Optional) contribution; + public Optional contribution() { + return (Optional) contribution; } /** @@ -219,7 +219,7 @@ public BenefitTypeRequirements withEmployeeDeduction(Optional contribution) { + public BenefitTypeRequirements withContribution(Optional contribution) { Utils.checkNotNull(contribution, "contribution"); this.contribution = contribution; return this; @@ -409,7 +409,7 @@ public final static class Builder { private Optional employeeDeduction = Optional.empty(); - private Optional contribution = Optional.empty(); + private Optional contribution = Optional.empty(); private Optional deductAsPercentage = Optional.empty(); @@ -450,7 +450,7 @@ public Builder employeeDeduction(Optional employeeD /** * An object representing the type and value of the company contribution. */ - public Builder contribution(BenefitTypeRequirementsContribution contribution) { + public Builder contribution(Contribution contribution) { Utils.checkNotNull(contribution, "contribution"); this.contribution = Optional.ofNullable(contribution); return this; @@ -459,7 +459,7 @@ public Builder contribution(BenefitTypeRequirementsContribution contribution) { /** * An object representing the type and value of the company contribution. */ - public Builder contribution(Optional contribution) { + public Builder contribution(Optional contribution) { Utils.checkNotNull(contribution, "contribution"); this.contribution = contribution; return this; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/BenefitTypeRequirementsContribution.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/BenefitTypeRequirementsContribution.java deleted file mode 100644 index 870c92c20..000000000 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/BenefitTypeRequirementsContribution.java +++ /dev/null @@ -1,251 +0,0 @@ -/* - * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - */ -package com.gusto.embedded_api.models.components; - -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonIgnore; -import com.fasterxml.jackson.annotation.JsonInclude.Include; -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.gusto.embedded_api.utils.Utils; -import java.lang.Boolean; -import java.lang.Override; -import java.lang.String; -import java.lang.SuppressWarnings; -import java.util.List; -import java.util.Optional; -import org.openapitools.jackson.nullable.JsonNullable; - -/** - * BenefitTypeRequirementsContribution - * - *

    An object representing the type and value of the company contribution. - */ -public class BenefitTypeRequirementsContribution { - - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("required") - private Optional required; - - - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("editable") - private Optional editable; - - - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("default_value") - private JsonNullable defaultValue; - - - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("choices") - private JsonNullable> choices; - - @JsonCreator - public BenefitTypeRequirementsContribution( - @JsonProperty("required") Optional required, - @JsonProperty("editable") Optional editable, - @JsonProperty("default_value") JsonNullable defaultValue, - @JsonProperty("choices") JsonNullable> choices) { - Utils.checkNotNull(required, "required"); - Utils.checkNotNull(editable, "editable"); - Utils.checkNotNull(defaultValue, "defaultValue"); - Utils.checkNotNull(choices, "choices"); - this.required = required; - this.editable = editable; - this.defaultValue = defaultValue; - this.choices = choices; - } - - public BenefitTypeRequirementsContribution() { - this(Optional.empty(), Optional.empty(), JsonNullable.undefined(), - JsonNullable.undefined()); - } - - @JsonIgnore - public Optional required() { - return required; - } - - @JsonIgnore - public Optional editable() { - return editable; - } - - @SuppressWarnings("unchecked") - @JsonIgnore - public JsonNullable defaultValue() { - return (JsonNullable) defaultValue; - } - - @SuppressWarnings("unchecked") - @JsonIgnore - public JsonNullable> choices() { - return (JsonNullable>) choices; - } - - public static Builder builder() { - return new Builder(); - } - - - public BenefitTypeRequirementsContribution withRequired(boolean required) { - Utils.checkNotNull(required, "required"); - this.required = Optional.ofNullable(required); - return this; - } - - - public BenefitTypeRequirementsContribution withRequired(Optional required) { - Utils.checkNotNull(required, "required"); - this.required = required; - return this; - } - - public BenefitTypeRequirementsContribution withEditable(boolean editable) { - Utils.checkNotNull(editable, "editable"); - this.editable = Optional.ofNullable(editable); - return this; - } - - - public BenefitTypeRequirementsContribution withEditable(Optional editable) { - Utils.checkNotNull(editable, "editable"); - this.editable = editable; - return this; - } - - public BenefitTypeRequirementsContribution withDefaultValue(BenefitTypeRequirementsDefaultValue defaultValue) { - Utils.checkNotNull(defaultValue, "defaultValue"); - this.defaultValue = JsonNullable.of(defaultValue); - return this; - } - - public BenefitTypeRequirementsContribution withDefaultValue(JsonNullable defaultValue) { - Utils.checkNotNull(defaultValue, "defaultValue"); - this.defaultValue = defaultValue; - return this; - } - - public BenefitTypeRequirementsContribution withChoices(List choices) { - Utils.checkNotNull(choices, "choices"); - this.choices = JsonNullable.of(choices); - return this; - } - - public BenefitTypeRequirementsContribution withChoices(JsonNullable> choices) { - Utils.checkNotNull(choices, "choices"); - this.choices = choices; - return this; - } - - @Override - public boolean equals(java.lang.Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - BenefitTypeRequirementsContribution other = (BenefitTypeRequirementsContribution) o; - return - Utils.enhancedDeepEquals(this.required, other.required) && - Utils.enhancedDeepEquals(this.editable, other.editable) && - Utils.enhancedDeepEquals(this.defaultValue, other.defaultValue) && - Utils.enhancedDeepEquals(this.choices, other.choices); - } - - @Override - public int hashCode() { - return Utils.enhancedHash( - required, editable, defaultValue, - choices); - } - - @Override - public String toString() { - return Utils.toString(BenefitTypeRequirementsContribution.class, - "required", required, - "editable", editable, - "defaultValue", defaultValue, - "choices", choices); - } - - @SuppressWarnings("UnusedReturnValue") - public final static class Builder { - - private Optional required = Optional.empty(); - - private Optional editable = Optional.empty(); - - private JsonNullable defaultValue = JsonNullable.undefined(); - - private JsonNullable> choices = JsonNullable.undefined(); - - private Builder() { - // force use of static builder() method - } - - - public Builder required(boolean required) { - Utils.checkNotNull(required, "required"); - this.required = Optional.ofNullable(required); - return this; - } - - public Builder required(Optional required) { - Utils.checkNotNull(required, "required"); - this.required = required; - return this; - } - - - public Builder editable(boolean editable) { - Utils.checkNotNull(editable, "editable"); - this.editable = Optional.ofNullable(editable); - return this; - } - - public Builder editable(Optional editable) { - Utils.checkNotNull(editable, "editable"); - this.editable = editable; - return this; - } - - - public Builder defaultValue(BenefitTypeRequirementsDefaultValue defaultValue) { - Utils.checkNotNull(defaultValue, "defaultValue"); - this.defaultValue = JsonNullable.of(defaultValue); - return this; - } - - public Builder defaultValue(JsonNullable defaultValue) { - Utils.checkNotNull(defaultValue, "defaultValue"); - this.defaultValue = defaultValue; - return this; - } - - - public Builder choices(List choices) { - Utils.checkNotNull(choices, "choices"); - this.choices = JsonNullable.of(choices); - return this; - } - - public Builder choices(JsonNullable> choices) { - Utils.checkNotNull(choices, "choices"); - this.choices = choices; - return this; - } - - public BenefitTypeRequirementsContribution build() { - - return new BenefitTypeRequirementsContribution( - required, editable, defaultValue, - choices); - } - - } -} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Blockers.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Blockers.java index 495d759a5..8ceb4c840 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Blockers.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Blockers.java @@ -11,52 +11,73 @@ import com.gusto.embedded_api.utils.Utils; import java.lang.Override; import java.lang.String; +import java.lang.SuppressWarnings; import java.util.Optional; public class Blockers { /** - * A machine-readable blocker key (e.g. `missing_bank_account`). + * The employee field affected. */ @JsonInclude(Include.NON_ABSENT) - @JsonProperty("type") - private Optional type; + @JsonProperty("field") + private Optional field; + + /** + * Category of the blocker. See the array-level description for resolution guidance. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("category") + private Optional category; /** * Human-readable description of the blocker. */ @JsonInclude(Include.NON_ABSENT) - @JsonProperty("description") - private Optional description; + @JsonProperty("message") + private Optional message; @JsonCreator public Blockers( - @JsonProperty("type") Optional type, - @JsonProperty("description") Optional description) { - Utils.checkNotNull(type, "type"); - Utils.checkNotNull(description, "description"); - this.type = type; - this.description = description; + @JsonProperty("field") Optional field, + @JsonProperty("category") Optional category, + @JsonProperty("message") Optional message) { + Utils.checkNotNull(field, "field"); + Utils.checkNotNull(category, "category"); + Utils.checkNotNull(message, "message"); + this.field = field; + this.category = category; + this.message = message; } public Blockers() { - this(Optional.empty(), Optional.empty()); + this(Optional.empty(), Optional.empty(), Optional.empty()); + } + + /** + * The employee field affected. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional field() { + return (Optional) field; } /** - * A machine-readable blocker key (e.g. `missing_bank_account`). + * Category of the blocker. See the array-level description for resolution guidance. */ + @SuppressWarnings("unchecked") @JsonIgnore - public Optional type() { - return type; + public Optional category() { + return (Optional) category; } /** * Human-readable description of the blocker. */ @JsonIgnore - public Optional description() { - return description; + public Optional message() { + return message; } public static Builder builder() { @@ -65,30 +86,49 @@ public static Builder builder() { /** - * A machine-readable blocker key (e.g. `missing_bank_account`). + * The employee field affected. + */ + public Blockers withField(Field field) { + Utils.checkNotNull(field, "field"); + this.field = Optional.ofNullable(field); + return this; + } + + + /** + * The employee field affected. + */ + public Blockers withField(Optional field) { + Utils.checkNotNull(field, "field"); + this.field = field; + return this; + } + + /** + * Category of the blocker. See the array-level description for resolution guidance. */ - public Blockers withType(String type) { - Utils.checkNotNull(type, "type"); - this.type = Optional.ofNullable(type); + public Blockers withCategory(EmployeeOnboardingStatusCategory category) { + Utils.checkNotNull(category, "category"); + this.category = Optional.ofNullable(category); return this; } /** - * A machine-readable blocker key (e.g. `missing_bank_account`). + * Category of the blocker. See the array-level description for resolution guidance. */ - public Blockers withType(Optional type) { - Utils.checkNotNull(type, "type"); - this.type = type; + public Blockers withCategory(Optional category) { + Utils.checkNotNull(category, "category"); + this.category = category; return this; } /** * Human-readable description of the blocker. */ - public Blockers withDescription(String description) { - Utils.checkNotNull(description, "description"); - this.description = Optional.ofNullable(description); + public Blockers withMessage(String message) { + Utils.checkNotNull(message, "message"); + this.message = Optional.ofNullable(message); return this; } @@ -96,9 +136,9 @@ public Blockers withDescription(String description) { /** * Human-readable description of the blocker. */ - public Blockers withDescription(Optional description) { - Utils.checkNotNull(description, "description"); - this.description = description; + public Blockers withMessage(Optional message) { + Utils.checkNotNull(message, "message"); + this.message = message; return this; } @@ -112,29 +152,33 @@ public boolean equals(java.lang.Object o) { } Blockers other = (Blockers) o; return - Utils.enhancedDeepEquals(this.type, other.type) && - Utils.enhancedDeepEquals(this.description, other.description); + Utils.enhancedDeepEquals(this.field, other.field) && + Utils.enhancedDeepEquals(this.category, other.category) && + Utils.enhancedDeepEquals(this.message, other.message); } @Override public int hashCode() { return Utils.enhancedHash( - type, description); + field, category, message); } @Override public String toString() { return Utils.toString(Blockers.class, - "type", type, - "description", description); + "field", field, + "category", category, + "message", message); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private Optional type = Optional.empty(); + private Optional field = Optional.empty(); - private Optional description = Optional.empty(); + private Optional category = Optional.empty(); + + private Optional message = Optional.empty(); private Builder() { // force use of static builder() method @@ -142,20 +186,39 @@ private Builder() { /** - * A machine-readable blocker key (e.g. `missing_bank_account`). + * The employee field affected. + */ + public Builder field(Field field) { + Utils.checkNotNull(field, "field"); + this.field = Optional.ofNullable(field); + return this; + } + + /** + * The employee field affected. + */ + public Builder field(Optional field) { + Utils.checkNotNull(field, "field"); + this.field = field; + return this; + } + + + /** + * Category of the blocker. See the array-level description for resolution guidance. */ - public Builder type(String type) { - Utils.checkNotNull(type, "type"); - this.type = Optional.ofNullable(type); + public Builder category(EmployeeOnboardingStatusCategory category) { + Utils.checkNotNull(category, "category"); + this.category = Optional.ofNullable(category); return this; } /** - * A machine-readable blocker key (e.g. `missing_bank_account`). + * Category of the blocker. See the array-level description for resolution guidance. */ - public Builder type(Optional type) { - Utils.checkNotNull(type, "type"); - this.type = type; + public Builder category(Optional category) { + Utils.checkNotNull(category, "category"); + this.category = category; return this; } @@ -163,25 +226,25 @@ public Builder type(Optional type) { /** * Human-readable description of the blocker. */ - public Builder description(String description) { - Utils.checkNotNull(description, "description"); - this.description = Optional.ofNullable(description); + public Builder message(String message) { + Utils.checkNotNull(message, "message"); + this.message = Optional.ofNullable(message); return this; } /** * Human-readable description of the blocker. */ - public Builder description(Optional description) { - Utils.checkNotNull(description, "description"); - this.description = description; + public Builder message(Optional message) { + Utils.checkNotNull(message, "message"); + this.message = message; return this; } public Blockers build() { return new Blockers( - type, description); + field, category, message); } } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/BulkReport.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/BulkReport.java new file mode 100644 index 000000000..19ed8ca6e --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/BulkReport.java @@ -0,0 +1,559 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Long; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.time.OffsetDateTime; +import java.util.List; +import java.util.Optional; +import org.openapitools.jackson.nullable.JsonNullable; + + +public class BulkReport { + /** + * Unique identifier of the bulk report batch. + */ + @JsonProperty("uuid") + private String uuid; + + /** + * Overall batch status. `pending`/`processing` while in progress; once finished, `success` (all + * reports succeeded), `partial_success` (some succeeded, some failed), or `failed` (none succeeded). + */ + @JsonProperty("status") + private BulkReportStatus status; + + /** + * When the batch was accepted. + */ + @JsonProperty("submitted_at") + private OffsetDateTime submittedAt; + + /** + * When the batch reached a terminal state. Null while non-terminal. + */ + @JsonInclude(Include.ALWAYS) + @JsonProperty("completed_at") + private Optional completedAt; + + /** + * How many reports the partner asked for in this batch. + */ + @JsonProperty("submitted_items") + private long submittedItems; + + /** + * UUID of the partner that owns this batch. Returned only once the batch has finished; omitted while + * in progress. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("partner_uuid") + private Optional partnerUuid; + + /** + * How many reports succeeded. Returned only once the batch has finished; omitted while in progress. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("processed_items") + private Optional processedItems; + + /** + * Signed S3 URL to a zip containing every successfully-generated report, valid for 10 minutes. + * Returned only once the batch has finished; omitted while in progress. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("report_url") + private JsonNullable reportUrl; + + /** + * Per-company breakdown. Returned only once the batch has finished; omitted while in progress. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("companies") + private Optional> companies; + + @JsonCreator + public BulkReport( + @JsonProperty("uuid") String uuid, + @JsonProperty("status") BulkReportStatus status, + @JsonProperty("submitted_at") OffsetDateTime submittedAt, + @JsonProperty("completed_at") Optional completedAt, + @JsonProperty("submitted_items") long submittedItems, + @JsonProperty("partner_uuid") Optional partnerUuid, + @JsonProperty("processed_items") Optional processedItems, + @JsonProperty("report_url") JsonNullable reportUrl, + @JsonProperty("companies") Optional> companies) { + Utils.checkNotNull(uuid, "uuid"); + Utils.checkNotNull(status, "status"); + Utils.checkNotNull(submittedAt, "submittedAt"); + Utils.checkNotNull(completedAt, "completedAt"); + Utils.checkNotNull(submittedItems, "submittedItems"); + Utils.checkNotNull(partnerUuid, "partnerUuid"); + Utils.checkNotNull(processedItems, "processedItems"); + Utils.checkNotNull(reportUrl, "reportUrl"); + Utils.checkNotNull(companies, "companies"); + this.uuid = uuid; + this.status = status; + this.submittedAt = submittedAt; + this.completedAt = completedAt; + this.submittedItems = submittedItems; + this.partnerUuid = partnerUuid; + this.processedItems = processedItems; + this.reportUrl = reportUrl; + this.companies = companies; + } + + public BulkReport( + String uuid, + BulkReportStatus status, + OffsetDateTime submittedAt, + long submittedItems) { + this(uuid, status, submittedAt, + Optional.empty(), submittedItems, Optional.empty(), + Optional.empty(), JsonNullable.undefined(), Optional.empty()); + } + + /** + * Unique identifier of the bulk report batch. + */ + @JsonIgnore + public String uuid() { + return uuid; + } + + /** + * Overall batch status. `pending`/`processing` while in progress; once finished, `success` (all + * reports succeeded), `partial_success` (some succeeded, some failed), or `failed` (none succeeded). + */ + @JsonIgnore + public BulkReportStatus status() { + return status; + } + + /** + * When the batch was accepted. + */ + @JsonIgnore + public OffsetDateTime submittedAt() { + return submittedAt; + } + + /** + * When the batch reached a terminal state. Null while non-terminal. + */ + @JsonIgnore + public Optional completedAt() { + return completedAt; + } + + /** + * How many reports the partner asked for in this batch. + */ + @JsonIgnore + public long submittedItems() { + return submittedItems; + } + + /** + * UUID of the partner that owns this batch. Returned only once the batch has finished; omitted while + * in progress. + */ + @JsonIgnore + public Optional partnerUuid() { + return partnerUuid; + } + + /** + * How many reports succeeded. Returned only once the batch has finished; omitted while in progress. + */ + @JsonIgnore + public Optional processedItems() { + return processedItems; + } + + /** + * Signed S3 URL to a zip containing every successfully-generated report, valid for 10 minutes. + * Returned only once the batch has finished; omitted while in progress. + */ + @JsonIgnore + public JsonNullable reportUrl() { + return reportUrl; + } + + /** + * Per-company breakdown. Returned only once the batch has finished; omitted while in progress. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> companies() { + return (Optional>) companies; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Unique identifier of the bulk report batch. + */ + public BulkReport withUuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + /** + * Overall batch status. `pending`/`processing` while in progress; once finished, `success` (all + * reports succeeded), `partial_success` (some succeeded, some failed), or `failed` (none succeeded). + */ + public BulkReport withStatus(BulkReportStatus status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + /** + * When the batch was accepted. + */ + public BulkReport withSubmittedAt(OffsetDateTime submittedAt) { + Utils.checkNotNull(submittedAt, "submittedAt"); + this.submittedAt = submittedAt; + return this; + } + + /** + * When the batch reached a terminal state. Null while non-terminal. + */ + public BulkReport withCompletedAt(OffsetDateTime completedAt) { + Utils.checkNotNull(completedAt, "completedAt"); + this.completedAt = Optional.ofNullable(completedAt); + return this; + } + + + /** + * When the batch reached a terminal state. Null while non-terminal. + */ + public BulkReport withCompletedAt(Optional completedAt) { + Utils.checkNotNull(completedAt, "completedAt"); + this.completedAt = completedAt; + return this; + } + + /** + * How many reports the partner asked for in this batch. + */ + public BulkReport withSubmittedItems(long submittedItems) { + Utils.checkNotNull(submittedItems, "submittedItems"); + this.submittedItems = submittedItems; + return this; + } + + /** + * UUID of the partner that owns this batch. Returned only once the batch has finished; omitted while + * in progress. + */ + public BulkReport withPartnerUuid(String partnerUuid) { + Utils.checkNotNull(partnerUuid, "partnerUuid"); + this.partnerUuid = Optional.ofNullable(partnerUuid); + return this; + } + + + /** + * UUID of the partner that owns this batch. Returned only once the batch has finished; omitted while + * in progress. + */ + public BulkReport withPartnerUuid(Optional partnerUuid) { + Utils.checkNotNull(partnerUuid, "partnerUuid"); + this.partnerUuid = partnerUuid; + return this; + } + + /** + * How many reports succeeded. Returned only once the batch has finished; omitted while in progress. + */ + public BulkReport withProcessedItems(long processedItems) { + Utils.checkNotNull(processedItems, "processedItems"); + this.processedItems = Optional.ofNullable(processedItems); + return this; + } + + + /** + * How many reports succeeded. Returned only once the batch has finished; omitted while in progress. + */ + public BulkReport withProcessedItems(Optional processedItems) { + Utils.checkNotNull(processedItems, "processedItems"); + this.processedItems = processedItems; + return this; + } + + /** + * Signed S3 URL to a zip containing every successfully-generated report, valid for 10 minutes. + * Returned only once the batch has finished; omitted while in progress. + */ + public BulkReport withReportUrl(String reportUrl) { + Utils.checkNotNull(reportUrl, "reportUrl"); + this.reportUrl = JsonNullable.of(reportUrl); + return this; + } + + /** + * Signed S3 URL to a zip containing every successfully-generated report, valid for 10 minutes. + * Returned only once the batch has finished; omitted while in progress. + */ + public BulkReport withReportUrl(JsonNullable reportUrl) { + Utils.checkNotNull(reportUrl, "reportUrl"); + this.reportUrl = reportUrl; + return this; + } + + /** + * Per-company breakdown. Returned only once the batch has finished; omitted while in progress. + */ + public BulkReport withCompanies(List companies) { + Utils.checkNotNull(companies, "companies"); + this.companies = Optional.ofNullable(companies); + return this; + } + + + /** + * Per-company breakdown. Returned only once the batch has finished; omitted while in progress. + */ + public BulkReport withCompanies(Optional> companies) { + Utils.checkNotNull(companies, "companies"); + this.companies = companies; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + BulkReport other = (BulkReport) o; + return + Utils.enhancedDeepEquals(this.uuid, other.uuid) && + Utils.enhancedDeepEquals(this.status, other.status) && + Utils.enhancedDeepEquals(this.submittedAt, other.submittedAt) && + Utils.enhancedDeepEquals(this.completedAt, other.completedAt) && + Utils.enhancedDeepEquals(this.submittedItems, other.submittedItems) && + Utils.enhancedDeepEquals(this.partnerUuid, other.partnerUuid) && + Utils.enhancedDeepEquals(this.processedItems, other.processedItems) && + Utils.enhancedDeepEquals(this.reportUrl, other.reportUrl) && + Utils.enhancedDeepEquals(this.companies, other.companies); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + uuid, status, submittedAt, + completedAt, submittedItems, partnerUuid, + processedItems, reportUrl, companies); + } + + @Override + public String toString() { + return Utils.toString(BulkReport.class, + "uuid", uuid, + "status", status, + "submittedAt", submittedAt, + "completedAt", completedAt, + "submittedItems", submittedItems, + "partnerUuid", partnerUuid, + "processedItems", processedItems, + "reportUrl", reportUrl, + "companies", companies); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String uuid; + + private BulkReportStatus status; + + private OffsetDateTime submittedAt; + + private Optional completedAt = Optional.empty(); + + private Long submittedItems; + + private Optional partnerUuid = Optional.empty(); + + private Optional processedItems = Optional.empty(); + + private JsonNullable reportUrl = JsonNullable.undefined(); + + private Optional> companies = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * Unique identifier of the bulk report batch. + */ + public Builder uuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + + /** + * Overall batch status. `pending`/`processing` while in progress; once finished, `success` (all + * reports succeeded), `partial_success` (some succeeded, some failed), or `failed` (none succeeded). + */ + public Builder status(BulkReportStatus status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + + /** + * When the batch was accepted. + */ + public Builder submittedAt(OffsetDateTime submittedAt) { + Utils.checkNotNull(submittedAt, "submittedAt"); + this.submittedAt = submittedAt; + return this; + } + + + /** + * When the batch reached a terminal state. Null while non-terminal. + */ + public Builder completedAt(OffsetDateTime completedAt) { + Utils.checkNotNull(completedAt, "completedAt"); + this.completedAt = Optional.ofNullable(completedAt); + return this; + } + + /** + * When the batch reached a terminal state. Null while non-terminal. + */ + public Builder completedAt(Optional completedAt) { + Utils.checkNotNull(completedAt, "completedAt"); + this.completedAt = completedAt; + return this; + } + + + /** + * How many reports the partner asked for in this batch. + */ + public Builder submittedItems(long submittedItems) { + Utils.checkNotNull(submittedItems, "submittedItems"); + this.submittedItems = submittedItems; + return this; + } + + + /** + * UUID of the partner that owns this batch. Returned only once the batch has finished; omitted while + * in progress. + */ + public Builder partnerUuid(String partnerUuid) { + Utils.checkNotNull(partnerUuid, "partnerUuid"); + this.partnerUuid = Optional.ofNullable(partnerUuid); + return this; + } + + /** + * UUID of the partner that owns this batch. Returned only once the batch has finished; omitted while + * in progress. + */ + public Builder partnerUuid(Optional partnerUuid) { + Utils.checkNotNull(partnerUuid, "partnerUuid"); + this.partnerUuid = partnerUuid; + return this; + } + + + /** + * How many reports succeeded. Returned only once the batch has finished; omitted while in progress. + */ + public Builder processedItems(long processedItems) { + Utils.checkNotNull(processedItems, "processedItems"); + this.processedItems = Optional.ofNullable(processedItems); + return this; + } + + /** + * How many reports succeeded. Returned only once the batch has finished; omitted while in progress. + */ + public Builder processedItems(Optional processedItems) { + Utils.checkNotNull(processedItems, "processedItems"); + this.processedItems = processedItems; + return this; + } + + + /** + * Signed S3 URL to a zip containing every successfully-generated report, valid for 10 minutes. + * Returned only once the batch has finished; omitted while in progress. + */ + public Builder reportUrl(String reportUrl) { + Utils.checkNotNull(reportUrl, "reportUrl"); + this.reportUrl = JsonNullable.of(reportUrl); + return this; + } + + /** + * Signed S3 URL to a zip containing every successfully-generated report, valid for 10 minutes. + * Returned only once the batch has finished; omitted while in progress. + */ + public Builder reportUrl(JsonNullable reportUrl) { + Utils.checkNotNull(reportUrl, "reportUrl"); + this.reportUrl = reportUrl; + return this; + } + + + /** + * Per-company breakdown. Returned only once the batch has finished; omitted while in progress. + */ + public Builder companies(List companies) { + Utils.checkNotNull(companies, "companies"); + this.companies = Optional.ofNullable(companies); + return this; + } + + /** + * Per-company breakdown. Returned only once the batch has finished; omitted while in progress. + */ + public Builder companies(Optional> companies) { + Utils.checkNotNull(companies, "companies"); + this.companies = companies; + return this; + } + + public BulkReport build() { + + return new BulkReport( + uuid, status, submittedAt, + completedAt, submittedItems, partnerUuid, + processedItems, reportUrl, companies); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/BulkReportBody.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/BulkReportBody.java new file mode 100644 index 000000000..0d2bfc642 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/BulkReportBody.java @@ -0,0 +1,110 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.util.List; + +/** + * BulkReportBody + * + *

    Each `batch` item is a `custom_report` or a `general_ledger` report. + */ +public class BulkReportBody { + /** + * One report per item. Up to 25 items per batch, across any combination of companies the partner is + * mapped to. + */ + @JsonProperty("batch") + private List batch; + + @JsonCreator + public BulkReportBody( + @JsonProperty("batch") List batch) { + Utils.checkNotNull(batch, "batch"); + this.batch = batch; + } + + /** + * One report per item. Up to 25 items per batch, across any combination of companies the partner is + * mapped to. + */ + @JsonIgnore + public List batch() { + return batch; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * One report per item. Up to 25 items per batch, across any combination of companies the partner is + * mapped to. + */ + public BulkReportBody withBatch(List batch) { + Utils.checkNotNull(batch, "batch"); + this.batch = batch; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + BulkReportBody other = (BulkReportBody) o; + return + Utils.enhancedDeepEquals(this.batch, other.batch); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + batch); + } + + @Override + public String toString() { + return Utils.toString(BulkReportBody.class, + "batch", batch); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private List batch; + + private Builder() { + // force use of static builder() method + } + + + /** + * One report per item. Up to 25 items per batch, across any combination of companies the partner is + * mapped to. + */ + public Builder batch(List batch) { + Utils.checkNotNull(batch, "batch"); + this.batch = batch; + return this; + } + + public BulkReportBody build() { + + return new BulkReportBody( + batch); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/BulkReportCompany.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/BulkReportCompany.java new file mode 100644 index 000000000..9ed26081b --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/BulkReportCompany.java @@ -0,0 +1,191 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.util.List; + +/** + * BulkReportCompany + * + *

    Results for a single company in a bulk report batch. + */ +public class BulkReportCompany { + /** + * UUID of the company. + */ + @JsonProperty("company_uuid") + private String companyUuid; + + /** + * This company's overall status across its `reports`: + * - `success`: every report succeeded + * - `partial_success`: some succeeded, some failed + * - `failed`: every report failed + * - `pending`: at least one report is still being generated + */ + @JsonProperty("status") + private BulkReportCompanyStatus status; + + + @JsonProperty("reports") + private List reports; + + @JsonCreator + public BulkReportCompany( + @JsonProperty("company_uuid") String companyUuid, + @JsonProperty("status") BulkReportCompanyStatus status, + @JsonProperty("reports") List reports) { + Utils.checkNotNull(companyUuid, "companyUuid"); + Utils.checkNotNull(status, "status"); + Utils.checkNotNull(reports, "reports"); + this.companyUuid = companyUuid; + this.status = status; + this.reports = reports; + } + + /** + * UUID of the company. + */ + @JsonIgnore + public String companyUuid() { + return companyUuid; + } + + /** + * This company's overall status across its `reports`: + * - `success`: every report succeeded + * - `partial_success`: some succeeded, some failed + * - `failed`: every report failed + * - `pending`: at least one report is still being generated + */ + @JsonIgnore + public BulkReportCompanyStatus status() { + return status; + } + + @JsonIgnore + public List reports() { + return reports; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * UUID of the company. + */ + public BulkReportCompany withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + /** + * This company's overall status across its `reports`: + * - `success`: every report succeeded + * - `partial_success`: some succeeded, some failed + * - `failed`: every report failed + * - `pending`: at least one report is still being generated + */ + public BulkReportCompany withStatus(BulkReportCompanyStatus status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + public BulkReportCompany withReports(List reports) { + Utils.checkNotNull(reports, "reports"); + this.reports = reports; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + BulkReportCompany other = (BulkReportCompany) o; + return + Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && + Utils.enhancedDeepEquals(this.status, other.status) && + Utils.enhancedDeepEquals(this.reports, other.reports); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + companyUuid, status, reports); + } + + @Override + public String toString() { + return Utils.toString(BulkReportCompany.class, + "companyUuid", companyUuid, + "status", status, + "reports", reports); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String companyUuid; + + private BulkReportCompanyStatus status; + + private List reports; + + private Builder() { + // force use of static builder() method + } + + + /** + * UUID of the company. + */ + public Builder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + + /** + * This company's overall status across its `reports`: + * - `success`: every report succeeded + * - `partial_success`: some succeeded, some failed + * - `failed`: every report failed + * - `pending`: at least one report is still being generated + */ + public Builder status(BulkReportCompanyStatus status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + + public Builder reports(List reports) { + Utils.checkNotNull(reports, "reports"); + this.reports = reports; + return this; + } + + public BulkReportCompany build() { + + return new BulkReportCompany( + companyUuid, status, reports); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/BulkReportCompanyStatus.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/BulkReportCompanyStatus.java new file mode 100644 index 000000000..e41171a05 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/BulkReportCompanyStatus.java @@ -0,0 +1,46 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * BulkReportCompanyStatus + * + *

    This company's overall status across its `reports`: + * - `success`: every report succeeded + * - `partial_success`: some succeeded, some failed + * - `failed`: every report failed + * - `pending`: at least one report is still being generated + */ +public enum BulkReportCompanyStatus { + PENDING("pending"), + SUCCESS("success"), + PARTIAL_SUCCESS("partial_success"), + FAILED("failed"); + + @JsonValue + private final String value; + + BulkReportCompanyStatus(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (BulkReportCompanyStatus o: BulkReportCompanyStatus.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/BulkReportCustomReportItem.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/BulkReportCustomReportItem.java new file mode 100644 index 000000000..079e7d8e2 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/BulkReportCustomReportItem.java @@ -0,0 +1,1004 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api.utils.LazySingletonValue; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Boolean; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.time.LocalDate; +import java.util.List; +import java.util.Optional; +import org.openapitools.jackson.nullable.JsonNullable; + +/** + * BulkReportCustomReportItem + * + *

    A custom report entry in a bulk batch. + */ +public class BulkReportCustomReportItem implements BulkReportItem { + /** + * UUID of the company to generate the report for. The partner must be mapped to this company. + */ + @JsonProperty("company_uuid") + private String companyUuid; + + /** + * Identifies this batch item as a custom report. + */ + @JsonProperty("report_type") + private ReportType reportType; + + /** + * Columns to include in the report. + */ + @JsonProperty("columns") + private List columns; + + /** + * How to group the report. If omitted, defaults are derived from the requested `columns`. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("groupings") + private Optional> groupings; + + /** + * The type of file to generate. + */ + @JsonProperty("file_type") + private FileType fileType; + + /** + * Display name for the report. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("custom_name") + private Optional customName; + + /** + * Whether to include subtotals and grand totals. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("with_totals") + private Optional withTotals; + + /** + * Which payroll date `start_date` and `end_date` filter against. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("date_filter_type") + private Optional dateFilterType; + + /** + * Start date of data to filter by. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("start_date") + private Optional startDate; + + /** + * End date of data to filter by. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("end_date") + private Optional endDate; + + /** + * Payment method to filter by. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("payment_method") + private Optional paymentMethod; + + /** + * Employee employment type to filter by. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("employment_type") + private Optional employmentType; + + /** + * Employee employment status to filter by. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("employment_status") + private Optional employmentStatus; + + /** + * Employees to filter by. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("employee_uuids") + private JsonNullable> employeeUuids; + + /** + * Departments to filter by. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("department_uuids") + private Optional> departmentUuids; + + /** + * Work addresses to filter by. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("work_address_uuids") + private Optional> workAddressUuids; + + @JsonCreator + public BulkReportCustomReportItem( + @JsonProperty("company_uuid") String companyUuid, + @JsonProperty("report_type") ReportType reportType, + @JsonProperty("columns") List columns, + @JsonProperty("groupings") Optional> groupings, + @JsonProperty("file_type") FileType fileType, + @JsonProperty("custom_name") Optional customName, + @JsonProperty("with_totals") Optional withTotals, + @JsonProperty("date_filter_type") Optional dateFilterType, + @JsonProperty("start_date") Optional startDate, + @JsonProperty("end_date") Optional endDate, + @JsonProperty("payment_method") Optional paymentMethod, + @JsonProperty("employment_type") Optional employmentType, + @JsonProperty("employment_status") Optional employmentStatus, + @JsonProperty("employee_uuids") JsonNullable> employeeUuids, + @JsonProperty("department_uuids") Optional> departmentUuids, + @JsonProperty("work_address_uuids") Optional> workAddressUuids) { + Utils.checkNotNull(companyUuid, "companyUuid"); + Utils.checkNotNull(reportType, "reportType"); + Utils.checkNotNull(columns, "columns"); + Utils.checkNotNull(groupings, "groupings"); + Utils.checkNotNull(fileType, "fileType"); + Utils.checkNotNull(customName, "customName"); + Utils.checkNotNull(withTotals, "withTotals"); + Utils.checkNotNull(dateFilterType, "dateFilterType"); + Utils.checkNotNull(startDate, "startDate"); + Utils.checkNotNull(endDate, "endDate"); + Utils.checkNotNull(paymentMethod, "paymentMethod"); + Utils.checkNotNull(employmentType, "employmentType"); + Utils.checkNotNull(employmentStatus, "employmentStatus"); + Utils.checkNotNull(employeeUuids, "employeeUuids"); + Utils.checkNotNull(departmentUuids, "departmentUuids"); + Utils.checkNotNull(workAddressUuids, "workAddressUuids"); + this.companyUuid = companyUuid; + this.reportType = reportType; + this.columns = columns; + this.groupings = groupings; + this.fileType = fileType; + this.customName = customName; + this.withTotals = withTotals; + this.dateFilterType = dateFilterType; + this.startDate = startDate; + this.endDate = endDate; + this.paymentMethod = paymentMethod; + this.employmentType = employmentType; + this.employmentStatus = employmentStatus; + this.employeeUuids = employeeUuids; + this.departmentUuids = departmentUuids; + this.workAddressUuids = workAddressUuids; + } + + public BulkReportCustomReportItem( + String companyUuid, + ReportType reportType, + List columns, + FileType fileType) { + this(companyUuid, reportType, columns, + Optional.empty(), fileType, Optional.empty(), + Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty(), JsonNullable.undefined(), Optional.empty(), + Optional.empty()); + } + + /** + * UUID of the company to generate the report for. The partner must be mapped to this company. + */ + @JsonIgnore + public String companyUuid() { + return companyUuid; + } + + /** + * Identifies this batch item as a custom report. + */ + @JsonIgnore + @Override + public String reportType() { + return Utils.discriminatorToString(reportType); + } + + /** + * Columns to include in the report. + */ + @JsonIgnore + public List columns() { + return columns; + } + + /** + * How to group the report. If omitted, defaults are derived from the requested `columns`. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> groupings() { + return (Optional>) groupings; + } + + /** + * The type of file to generate. + */ + @JsonIgnore + public FileType fileType() { + return fileType; + } + + /** + * Display name for the report. + */ + @JsonIgnore + public Optional customName() { + return customName; + } + + /** + * Whether to include subtotals and grand totals. + */ + @JsonIgnore + public Optional withTotals() { + return withTotals; + } + + /** + * Which payroll date `start_date` and `end_date` filter against. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional dateFilterType() { + return (Optional) dateFilterType; + } + + /** + * Start date of data to filter by. + */ + @JsonIgnore + public Optional startDate() { + return startDate; + } + + /** + * End date of data to filter by. + */ + @JsonIgnore + public Optional endDate() { + return endDate; + } + + /** + * Payment method to filter by. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional paymentMethod() { + return (Optional) paymentMethod; + } + + /** + * Employee employment type to filter by. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional employmentType() { + return (Optional) employmentType; + } + + /** + * Employee employment status to filter by. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional employmentStatus() { + return (Optional) employmentStatus; + } + + /** + * Employees to filter by. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public JsonNullable> employeeUuids() { + return (JsonNullable>) employeeUuids; + } + + /** + * Departments to filter by. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> departmentUuids() { + return (Optional>) departmentUuids; + } + + /** + * Work addresses to filter by. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> workAddressUuids() { + return (Optional>) workAddressUuids; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * UUID of the company to generate the report for. The partner must be mapped to this company. + */ + public BulkReportCustomReportItem withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + /** + * Identifies this batch item as a custom report. + */ + public BulkReportCustomReportItem withReportType(ReportType reportType) { + Utils.checkNotNull(reportType, "reportType"); + this.reportType = reportType; + return this; + } + + /** + * Columns to include in the report. + */ + public BulkReportCustomReportItem withColumns(List columns) { + Utils.checkNotNull(columns, "columns"); + this.columns = columns; + return this; + } + + /** + * How to group the report. If omitted, defaults are derived from the requested `columns`. + */ + public BulkReportCustomReportItem withGroupings(List groupings) { + Utils.checkNotNull(groupings, "groupings"); + this.groupings = Optional.ofNullable(groupings); + return this; + } + + + /** + * How to group the report. If omitted, defaults are derived from the requested `columns`. + */ + public BulkReportCustomReportItem withGroupings(Optional> groupings) { + Utils.checkNotNull(groupings, "groupings"); + this.groupings = groupings; + return this; + } + + /** + * The type of file to generate. + */ + public BulkReportCustomReportItem withFileType(FileType fileType) { + Utils.checkNotNull(fileType, "fileType"); + this.fileType = fileType; + return this; + } + + /** + * Display name for the report. + */ + public BulkReportCustomReportItem withCustomName(String customName) { + Utils.checkNotNull(customName, "customName"); + this.customName = Optional.ofNullable(customName); + return this; + } + + + /** + * Display name for the report. + */ + public BulkReportCustomReportItem withCustomName(Optional customName) { + Utils.checkNotNull(customName, "customName"); + this.customName = customName; + return this; + } + + /** + * Whether to include subtotals and grand totals. + */ + public BulkReportCustomReportItem withWithTotals(boolean withTotals) { + Utils.checkNotNull(withTotals, "withTotals"); + this.withTotals = Optional.ofNullable(withTotals); + return this; + } + + + /** + * Whether to include subtotals and grand totals. + */ + public BulkReportCustomReportItem withWithTotals(Optional withTotals) { + Utils.checkNotNull(withTotals, "withTotals"); + this.withTotals = withTotals; + return this; + } + + /** + * Which payroll date `start_date` and `end_date` filter against. + */ + public BulkReportCustomReportItem withDateFilterType(DateFilterType dateFilterType) { + Utils.checkNotNull(dateFilterType, "dateFilterType"); + this.dateFilterType = Optional.ofNullable(dateFilterType); + return this; + } + + + /** + * Which payroll date `start_date` and `end_date` filter against. + */ + public BulkReportCustomReportItem withDateFilterType(Optional dateFilterType) { + Utils.checkNotNull(dateFilterType, "dateFilterType"); + this.dateFilterType = dateFilterType; + return this; + } + + /** + * Start date of data to filter by. + */ + public BulkReportCustomReportItem withStartDate(LocalDate startDate) { + Utils.checkNotNull(startDate, "startDate"); + this.startDate = Optional.ofNullable(startDate); + return this; + } + + + /** + * Start date of data to filter by. + */ + public BulkReportCustomReportItem withStartDate(Optional startDate) { + Utils.checkNotNull(startDate, "startDate"); + this.startDate = startDate; + return this; + } + + /** + * End date of data to filter by. + */ + public BulkReportCustomReportItem withEndDate(LocalDate endDate) { + Utils.checkNotNull(endDate, "endDate"); + this.endDate = Optional.ofNullable(endDate); + return this; + } + + + /** + * End date of data to filter by. + */ + public BulkReportCustomReportItem withEndDate(Optional endDate) { + Utils.checkNotNull(endDate, "endDate"); + this.endDate = endDate; + return this; + } + + /** + * Payment method to filter by. + */ + public BulkReportCustomReportItem withPaymentMethod(PaymentMethod paymentMethod) { + Utils.checkNotNull(paymentMethod, "paymentMethod"); + this.paymentMethod = Optional.ofNullable(paymentMethod); + return this; + } + + + /** + * Payment method to filter by. + */ + public BulkReportCustomReportItem withPaymentMethod(Optional paymentMethod) { + Utils.checkNotNull(paymentMethod, "paymentMethod"); + this.paymentMethod = paymentMethod; + return this; + } + + /** + * Employee employment type to filter by. + */ + public BulkReportCustomReportItem withEmploymentType(EmploymentType employmentType) { + Utils.checkNotNull(employmentType, "employmentType"); + this.employmentType = Optional.ofNullable(employmentType); + return this; + } + + + /** + * Employee employment type to filter by. + */ + public BulkReportCustomReportItem withEmploymentType(Optional employmentType) { + Utils.checkNotNull(employmentType, "employmentType"); + this.employmentType = employmentType; + return this; + } + + /** + * Employee employment status to filter by. + */ + public BulkReportCustomReportItem withEmploymentStatus(EmploymentStatus employmentStatus) { + Utils.checkNotNull(employmentStatus, "employmentStatus"); + this.employmentStatus = Optional.ofNullable(employmentStatus); + return this; + } + + + /** + * Employee employment status to filter by. + */ + public BulkReportCustomReportItem withEmploymentStatus(Optional employmentStatus) { + Utils.checkNotNull(employmentStatus, "employmentStatus"); + this.employmentStatus = employmentStatus; + return this; + } + + /** + * Employees to filter by. + */ + public BulkReportCustomReportItem withEmployeeUuids(List employeeUuids) { + Utils.checkNotNull(employeeUuids, "employeeUuids"); + this.employeeUuids = JsonNullable.of(employeeUuids); + return this; + } + + /** + * Employees to filter by. + */ + public BulkReportCustomReportItem withEmployeeUuids(JsonNullable> employeeUuids) { + Utils.checkNotNull(employeeUuids, "employeeUuids"); + this.employeeUuids = employeeUuids; + return this; + } + + /** + * Departments to filter by. + */ + public BulkReportCustomReportItem withDepartmentUuids(List departmentUuids) { + Utils.checkNotNull(departmentUuids, "departmentUuids"); + this.departmentUuids = Optional.ofNullable(departmentUuids); + return this; + } + + + /** + * Departments to filter by. + */ + public BulkReportCustomReportItem withDepartmentUuids(Optional> departmentUuids) { + Utils.checkNotNull(departmentUuids, "departmentUuids"); + this.departmentUuids = departmentUuids; + return this; + } + + /** + * Work addresses to filter by. + */ + public BulkReportCustomReportItem withWorkAddressUuids(List workAddressUuids) { + Utils.checkNotNull(workAddressUuids, "workAddressUuids"); + this.workAddressUuids = Optional.ofNullable(workAddressUuids); + return this; + } + + + /** + * Work addresses to filter by. + */ + public BulkReportCustomReportItem withWorkAddressUuids(Optional> workAddressUuids) { + Utils.checkNotNull(workAddressUuids, "workAddressUuids"); + this.workAddressUuids = workAddressUuids; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + BulkReportCustomReportItem other = (BulkReportCustomReportItem) o; + return + Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && + Utils.enhancedDeepEquals(this.reportType, other.reportType) && + Utils.enhancedDeepEquals(this.columns, other.columns) && + Utils.enhancedDeepEquals(this.groupings, other.groupings) && + Utils.enhancedDeepEquals(this.fileType, other.fileType) && + Utils.enhancedDeepEquals(this.customName, other.customName) && + Utils.enhancedDeepEquals(this.withTotals, other.withTotals) && + Utils.enhancedDeepEquals(this.dateFilterType, other.dateFilterType) && + Utils.enhancedDeepEquals(this.startDate, other.startDate) && + Utils.enhancedDeepEquals(this.endDate, other.endDate) && + Utils.enhancedDeepEquals(this.paymentMethod, other.paymentMethod) && + Utils.enhancedDeepEquals(this.employmentType, other.employmentType) && + Utils.enhancedDeepEquals(this.employmentStatus, other.employmentStatus) && + Utils.enhancedDeepEquals(this.employeeUuids, other.employeeUuids) && + Utils.enhancedDeepEquals(this.departmentUuids, other.departmentUuids) && + Utils.enhancedDeepEquals(this.workAddressUuids, other.workAddressUuids); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + companyUuid, reportType, columns, + groupings, fileType, customName, + withTotals, dateFilterType, startDate, + endDate, paymentMethod, employmentType, + employmentStatus, employeeUuids, departmentUuids, + workAddressUuids); + } + + @Override + public String toString() { + return Utils.toString(BulkReportCustomReportItem.class, + "companyUuid", companyUuid, + "reportType", reportType, + "columns", columns, + "groupings", groupings, + "fileType", fileType, + "customName", customName, + "withTotals", withTotals, + "dateFilterType", dateFilterType, + "startDate", startDate, + "endDate", endDate, + "paymentMethod", paymentMethod, + "employmentType", employmentType, + "employmentStatus", employmentStatus, + "employeeUuids", employeeUuids, + "departmentUuids", departmentUuids, + "workAddressUuids", workAddressUuids); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String companyUuid; + + private ReportType reportType; + + private List columns; + + private Optional> groupings = Optional.empty(); + + private FileType fileType; + + private Optional customName = Optional.empty(); + + private Optional withTotals; + + private Optional dateFilterType; + + private Optional startDate = Optional.empty(); + + private Optional endDate = Optional.empty(); + + private Optional paymentMethod = Optional.empty(); + + private Optional employmentType = Optional.empty(); + + private Optional employmentStatus = Optional.empty(); + + private JsonNullable> employeeUuids = JsonNullable.undefined(); + + private Optional> departmentUuids = Optional.empty(); + + private Optional> workAddressUuids = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * UUID of the company to generate the report for. The partner must be mapped to this company. + */ + public Builder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + + /** + * Identifies this batch item as a custom report. + */ + public Builder reportType(ReportType reportType) { + Utils.checkNotNull(reportType, "reportType"); + this.reportType = reportType; + return this; + } + + + /** + * Columns to include in the report. + */ + public Builder columns(List columns) { + Utils.checkNotNull(columns, "columns"); + this.columns = columns; + return this; + } + + + /** + * How to group the report. If omitted, defaults are derived from the requested `columns`. + */ + public Builder groupings(List groupings) { + Utils.checkNotNull(groupings, "groupings"); + this.groupings = Optional.ofNullable(groupings); + return this; + } + + /** + * How to group the report. If omitted, defaults are derived from the requested `columns`. + */ + public Builder groupings(Optional> groupings) { + Utils.checkNotNull(groupings, "groupings"); + this.groupings = groupings; + return this; + } + + + /** + * The type of file to generate. + */ + public Builder fileType(FileType fileType) { + Utils.checkNotNull(fileType, "fileType"); + this.fileType = fileType; + return this; + } + + + /** + * Display name for the report. + */ + public Builder customName(String customName) { + Utils.checkNotNull(customName, "customName"); + this.customName = Optional.ofNullable(customName); + return this; + } + + /** + * Display name for the report. + */ + public Builder customName(Optional customName) { + Utils.checkNotNull(customName, "customName"); + this.customName = customName; + return this; + } + + + /** + * Whether to include subtotals and grand totals. + */ + public Builder withTotals(boolean withTotals) { + Utils.checkNotNull(withTotals, "withTotals"); + this.withTotals = Optional.ofNullable(withTotals); + return this; + } + + /** + * Whether to include subtotals and grand totals. + */ + public Builder withTotals(Optional withTotals) { + Utils.checkNotNull(withTotals, "withTotals"); + this.withTotals = withTotals; + return this; + } + + + /** + * Which payroll date `start_date` and `end_date` filter against. + */ + public Builder dateFilterType(DateFilterType dateFilterType) { + Utils.checkNotNull(dateFilterType, "dateFilterType"); + this.dateFilterType = Optional.ofNullable(dateFilterType); + return this; + } + + /** + * Which payroll date `start_date` and `end_date` filter against. + */ + public Builder dateFilterType(Optional dateFilterType) { + Utils.checkNotNull(dateFilterType, "dateFilterType"); + this.dateFilterType = dateFilterType; + return this; + } + + + /** + * Start date of data to filter by. + */ + public Builder startDate(LocalDate startDate) { + Utils.checkNotNull(startDate, "startDate"); + this.startDate = Optional.ofNullable(startDate); + return this; + } + + /** + * Start date of data to filter by. + */ + public Builder startDate(Optional startDate) { + Utils.checkNotNull(startDate, "startDate"); + this.startDate = startDate; + return this; + } + + + /** + * End date of data to filter by. + */ + public Builder endDate(LocalDate endDate) { + Utils.checkNotNull(endDate, "endDate"); + this.endDate = Optional.ofNullable(endDate); + return this; + } + + /** + * End date of data to filter by. + */ + public Builder endDate(Optional endDate) { + Utils.checkNotNull(endDate, "endDate"); + this.endDate = endDate; + return this; + } + + + /** + * Payment method to filter by. + */ + public Builder paymentMethod(PaymentMethod paymentMethod) { + Utils.checkNotNull(paymentMethod, "paymentMethod"); + this.paymentMethod = Optional.ofNullable(paymentMethod); + return this; + } + + /** + * Payment method to filter by. + */ + public Builder paymentMethod(Optional paymentMethod) { + Utils.checkNotNull(paymentMethod, "paymentMethod"); + this.paymentMethod = paymentMethod; + return this; + } + + + /** + * Employee employment type to filter by. + */ + public Builder employmentType(EmploymentType employmentType) { + Utils.checkNotNull(employmentType, "employmentType"); + this.employmentType = Optional.ofNullable(employmentType); + return this; + } + + /** + * Employee employment type to filter by. + */ + public Builder employmentType(Optional employmentType) { + Utils.checkNotNull(employmentType, "employmentType"); + this.employmentType = employmentType; + return this; + } + + + /** + * Employee employment status to filter by. + */ + public Builder employmentStatus(EmploymentStatus employmentStatus) { + Utils.checkNotNull(employmentStatus, "employmentStatus"); + this.employmentStatus = Optional.ofNullable(employmentStatus); + return this; + } + + /** + * Employee employment status to filter by. + */ + public Builder employmentStatus(Optional employmentStatus) { + Utils.checkNotNull(employmentStatus, "employmentStatus"); + this.employmentStatus = employmentStatus; + return this; + } + + + /** + * Employees to filter by. + */ + public Builder employeeUuids(List employeeUuids) { + Utils.checkNotNull(employeeUuids, "employeeUuids"); + this.employeeUuids = JsonNullable.of(employeeUuids); + return this; + } + + /** + * Employees to filter by. + */ + public Builder employeeUuids(JsonNullable> employeeUuids) { + Utils.checkNotNull(employeeUuids, "employeeUuids"); + this.employeeUuids = employeeUuids; + return this; + } + + + /** + * Departments to filter by. + */ + public Builder departmentUuids(List departmentUuids) { + Utils.checkNotNull(departmentUuids, "departmentUuids"); + this.departmentUuids = Optional.ofNullable(departmentUuids); + return this; + } + + /** + * Departments to filter by. + */ + public Builder departmentUuids(Optional> departmentUuids) { + Utils.checkNotNull(departmentUuids, "departmentUuids"); + this.departmentUuids = departmentUuids; + return this; + } + + + /** + * Work addresses to filter by. + */ + public Builder workAddressUuids(List workAddressUuids) { + Utils.checkNotNull(workAddressUuids, "workAddressUuids"); + this.workAddressUuids = Optional.ofNullable(workAddressUuids); + return this; + } + + /** + * Work addresses to filter by. + */ + public Builder workAddressUuids(Optional> workAddressUuids) { + Utils.checkNotNull(workAddressUuids, "workAddressUuids"); + this.workAddressUuids = workAddressUuids; + return this; + } + + public BulkReportCustomReportItem build() { + if (withTotals == null) { + withTotals = _SINGLETON_VALUE_WithTotals.value(); + } + if (dateFilterType == null) { + dateFilterType = _SINGLETON_VALUE_DateFilterType.value(); + } + + return new BulkReportCustomReportItem( + companyUuid, reportType, columns, + groupings, fileType, customName, + withTotals, dateFilterType, startDate, + endDate, paymentMethod, employmentType, + employmentStatus, employeeUuids, departmentUuids, + workAddressUuids); + } + + + private static final LazySingletonValue> _SINGLETON_VALUE_WithTotals = + new LazySingletonValue<>( + "with_totals", + "false", + new TypeReference>() {}); + + private static final LazySingletonValue> _SINGLETON_VALUE_DateFilterType = + new LazySingletonValue<>( + "date_filter_type", + "\"period_end_date\"", + new TypeReference>() {}); + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/BulkReportGeneralLedgerItem.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/BulkReportGeneralLedgerItem.java new file mode 100644 index 000000000..33f8cbcdd --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/BulkReportGeneralLedgerItem.java @@ -0,0 +1,305 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Override; +import java.lang.String; +import org.openapitools.jackson.nullable.JsonNullable; + +/** + * BulkReportGeneralLedgerItem + * + *

    A general ledger report entry in a bulk batch. + */ +public class BulkReportGeneralLedgerItem implements BulkReportItem { + /** + * UUID of the company to generate the report for. The partner must be mapped to this company. + */ + @JsonProperty("company_uuid") + private String companyUuid; + + /** + * Identifies this batch item as a general ledger report. + */ + @JsonProperty("report_type") + private BulkReportGeneralLedgerItemReportType reportType; + + /** + * The UUID of the payroll to generate the general ledger for. + */ + @JsonProperty("payroll_uuid") + private String payrollUuid; + + /** + * The breakdown of the report. Use `default` for no split. + */ + @JsonProperty("aggregation") + private Aggregation aggregation; + + /** + * The kind of integration set up for the company. Required when `aggregation` is `integration`; must + * be null otherwise. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("integration_type") + private JsonNullable integrationType; + + @JsonCreator + public BulkReportGeneralLedgerItem( + @JsonProperty("company_uuid") String companyUuid, + @JsonProperty("report_type") BulkReportGeneralLedgerItemReportType reportType, + @JsonProperty("payroll_uuid") String payrollUuid, + @JsonProperty("aggregation") Aggregation aggregation, + @JsonProperty("integration_type") JsonNullable integrationType) { + Utils.checkNotNull(companyUuid, "companyUuid"); + Utils.checkNotNull(reportType, "reportType"); + Utils.checkNotNull(payrollUuid, "payrollUuid"); + Utils.checkNotNull(aggregation, "aggregation"); + Utils.checkNotNull(integrationType, "integrationType"); + this.companyUuid = companyUuid; + this.reportType = reportType; + this.payrollUuid = payrollUuid; + this.aggregation = aggregation; + this.integrationType = integrationType; + } + + public BulkReportGeneralLedgerItem( + String companyUuid, + BulkReportGeneralLedgerItemReportType reportType, + String payrollUuid, + Aggregation aggregation) { + this(companyUuid, reportType, payrollUuid, + aggregation, JsonNullable.undefined()); + } + + /** + * UUID of the company to generate the report for. The partner must be mapped to this company. + */ + @JsonIgnore + public String companyUuid() { + return companyUuid; + } + + /** + * Identifies this batch item as a general ledger report. + */ + @JsonIgnore + @Override + public String reportType() { + return Utils.discriminatorToString(reportType); + } + + /** + * The UUID of the payroll to generate the general ledger for. + */ + @JsonIgnore + public String payrollUuid() { + return payrollUuid; + } + + /** + * The breakdown of the report. Use `default` for no split. + */ + @JsonIgnore + public Aggregation aggregation() { + return aggregation; + } + + /** + * The kind of integration set up for the company. Required when `aggregation` is `integration`; must + * be null otherwise. + */ + @JsonIgnore + public JsonNullable integrationType() { + return integrationType; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * UUID of the company to generate the report for. The partner must be mapped to this company. + */ + public BulkReportGeneralLedgerItem withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + /** + * Identifies this batch item as a general ledger report. + */ + public BulkReportGeneralLedgerItem withReportType(BulkReportGeneralLedgerItemReportType reportType) { + Utils.checkNotNull(reportType, "reportType"); + this.reportType = reportType; + return this; + } + + /** + * The UUID of the payroll to generate the general ledger for. + */ + public BulkReportGeneralLedgerItem withPayrollUuid(String payrollUuid) { + Utils.checkNotNull(payrollUuid, "payrollUuid"); + this.payrollUuid = payrollUuid; + return this; + } + + /** + * The breakdown of the report. Use `default` for no split. + */ + public BulkReportGeneralLedgerItem withAggregation(Aggregation aggregation) { + Utils.checkNotNull(aggregation, "aggregation"); + this.aggregation = aggregation; + return this; + } + + /** + * The kind of integration set up for the company. Required when `aggregation` is `integration`; must + * be null otherwise. + */ + public BulkReportGeneralLedgerItem withIntegrationType(String integrationType) { + Utils.checkNotNull(integrationType, "integrationType"); + this.integrationType = JsonNullable.of(integrationType); + return this; + } + + /** + * The kind of integration set up for the company. Required when `aggregation` is `integration`; must + * be null otherwise. + */ + public BulkReportGeneralLedgerItem withIntegrationType(JsonNullable integrationType) { + Utils.checkNotNull(integrationType, "integrationType"); + this.integrationType = integrationType; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + BulkReportGeneralLedgerItem other = (BulkReportGeneralLedgerItem) o; + return + Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && + Utils.enhancedDeepEquals(this.reportType, other.reportType) && + Utils.enhancedDeepEquals(this.payrollUuid, other.payrollUuid) && + Utils.enhancedDeepEquals(this.aggregation, other.aggregation) && + Utils.enhancedDeepEquals(this.integrationType, other.integrationType); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + companyUuid, reportType, payrollUuid, + aggregation, integrationType); + } + + @Override + public String toString() { + return Utils.toString(BulkReportGeneralLedgerItem.class, + "companyUuid", companyUuid, + "reportType", reportType, + "payrollUuid", payrollUuid, + "aggregation", aggregation, + "integrationType", integrationType); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String companyUuid; + + private BulkReportGeneralLedgerItemReportType reportType; + + private String payrollUuid; + + private Aggregation aggregation; + + private JsonNullable integrationType = JsonNullable.undefined(); + + private Builder() { + // force use of static builder() method + } + + + /** + * UUID of the company to generate the report for. The partner must be mapped to this company. + */ + public Builder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + + /** + * Identifies this batch item as a general ledger report. + */ + public Builder reportType(BulkReportGeneralLedgerItemReportType reportType) { + Utils.checkNotNull(reportType, "reportType"); + this.reportType = reportType; + return this; + } + + + /** + * The UUID of the payroll to generate the general ledger for. + */ + public Builder payrollUuid(String payrollUuid) { + Utils.checkNotNull(payrollUuid, "payrollUuid"); + this.payrollUuid = payrollUuid; + return this; + } + + + /** + * The breakdown of the report. Use `default` for no split. + */ + public Builder aggregation(Aggregation aggregation) { + Utils.checkNotNull(aggregation, "aggregation"); + this.aggregation = aggregation; + return this; + } + + + /** + * The kind of integration set up for the company. Required when `aggregation` is `integration`; must + * be null otherwise. + */ + public Builder integrationType(String integrationType) { + Utils.checkNotNull(integrationType, "integrationType"); + this.integrationType = JsonNullable.of(integrationType); + return this; + } + + /** + * The kind of integration set up for the company. Required when `aggregation` is `integration`; must + * be null otherwise. + */ + public Builder integrationType(JsonNullable integrationType) { + Utils.checkNotNull(integrationType, "integrationType"); + this.integrationType = integrationType; + return this; + } + + public BulkReportGeneralLedgerItem build() { + + return new BulkReportGeneralLedgerItem( + companyUuid, reportType, payrollUuid, + aggregation, integrationType); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/BulkReportGeneralLedgerItemReportType.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/BulkReportGeneralLedgerItemReportType.java new file mode 100644 index 000000000..8770e0cc4 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/BulkReportGeneralLedgerItemReportType.java @@ -0,0 +1,39 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * BulkReportGeneralLedgerItemReportType + * + *

    Identifies this batch item as a general ledger report. + */ +public enum BulkReportGeneralLedgerItemReportType { + GENERAL_LEDGER("general_ledger"); + + @JsonValue + private final String value; + + BulkReportGeneralLedgerItemReportType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (BulkReportGeneralLedgerItemReportType o: BulkReportGeneralLedgerItemReportType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/BulkReportItem.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/BulkReportItem.java new file mode 100644 index 000000000..64784f37a --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/BulkReportItem.java @@ -0,0 +1,31 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonTypeInfo.As; +import com.fasterxml.jackson.annotation.JsonTypeInfo.Id; +import com.fasterxml.jackson.annotation.JsonTypeInfo; +import com.fasterxml.jackson.databind.annotation.JsonTypeIdResolver; +import java.lang.String; + +/** + * BulkReportItem + * + *

    A single report inside a bulk batch. Required fields depend on `report_type`: `custom_report` + * requires `columns` and `file_type`; `general_ledger` requires `payroll_uuid` and `aggregation`. + */ +@JsonTypeInfo( + use = Id.CUSTOM, + property = "report_type", + include = As.EXISTING_PROPERTY, + visible = true, + defaultImpl = UnknownBulkReportItem.class +) +@JsonTypeIdResolver(BulkReportItemTypeIdResolver.class) +public interface BulkReportItem { + + String reportType(); + +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/BulkReportItemResult.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/BulkReportItemResult.java new file mode 100644 index 000000000..e87dc67e3 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/BulkReportItemResult.java @@ -0,0 +1,258 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.util.Optional; + +/** + * BulkReportItemResult + * + *

    A single report's outcome. + */ +public class BulkReportItemResult { + /** + * Which report this entry refers to. + */ + @JsonProperty("report_type") + private BulkReportItemResultReportType reportType; + + /** + * The report's output file type. + */ + @JsonProperty("file_type") + private String fileType; + + /** + * The terminal state for this individual report. + */ + @JsonProperty("status") + private BulkReportItemResultStatus status; + + /** + * A user-facing error message when status is `failed`. Null on success. + */ + @JsonInclude(Include.ALWAYS) + @JsonProperty("error") + private Optional error; + + @JsonCreator + public BulkReportItemResult( + @JsonProperty("report_type") BulkReportItemResultReportType reportType, + @JsonProperty("file_type") String fileType, + @JsonProperty("status") BulkReportItemResultStatus status, + @JsonProperty("error") Optional error) { + Utils.checkNotNull(reportType, "reportType"); + Utils.checkNotNull(fileType, "fileType"); + Utils.checkNotNull(status, "status"); + Utils.checkNotNull(error, "error"); + this.reportType = reportType; + this.fileType = fileType; + this.status = status; + this.error = error; + } + + public BulkReportItemResult( + BulkReportItemResultReportType reportType, + String fileType, + BulkReportItemResultStatus status) { + this(reportType, fileType, status, + Optional.empty()); + } + + /** + * Which report this entry refers to. + */ + @JsonIgnore + public BulkReportItemResultReportType reportType() { + return reportType; + } + + /** + * The report's output file type. + */ + @JsonIgnore + public String fileType() { + return fileType; + } + + /** + * The terminal state for this individual report. + */ + @JsonIgnore + public BulkReportItemResultStatus status() { + return status; + } + + /** + * A user-facing error message when status is `failed`. Null on success. + */ + @JsonIgnore + public Optional error() { + return error; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Which report this entry refers to. + */ + public BulkReportItemResult withReportType(BulkReportItemResultReportType reportType) { + Utils.checkNotNull(reportType, "reportType"); + this.reportType = reportType; + return this; + } + + /** + * The report's output file type. + */ + public BulkReportItemResult withFileType(String fileType) { + Utils.checkNotNull(fileType, "fileType"); + this.fileType = fileType; + return this; + } + + /** + * The terminal state for this individual report. + */ + public BulkReportItemResult withStatus(BulkReportItemResultStatus status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + /** + * A user-facing error message when status is `failed`. Null on success. + */ + public BulkReportItemResult withError(String error) { + Utils.checkNotNull(error, "error"); + this.error = Optional.ofNullable(error); + return this; + } + + + /** + * A user-facing error message when status is `failed`. Null on success. + */ + public BulkReportItemResult withError(Optional error) { + Utils.checkNotNull(error, "error"); + this.error = error; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + BulkReportItemResult other = (BulkReportItemResult) o; + return + Utils.enhancedDeepEquals(this.reportType, other.reportType) && + Utils.enhancedDeepEquals(this.fileType, other.fileType) && + Utils.enhancedDeepEquals(this.status, other.status) && + Utils.enhancedDeepEquals(this.error, other.error); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + reportType, fileType, status, + error); + } + + @Override + public String toString() { + return Utils.toString(BulkReportItemResult.class, + "reportType", reportType, + "fileType", fileType, + "status", status, + "error", error); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private BulkReportItemResultReportType reportType; + + private String fileType; + + private BulkReportItemResultStatus status; + + private Optional error = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * Which report this entry refers to. + */ + public Builder reportType(BulkReportItemResultReportType reportType) { + Utils.checkNotNull(reportType, "reportType"); + this.reportType = reportType; + return this; + } + + + /** + * The report's output file type. + */ + public Builder fileType(String fileType) { + Utils.checkNotNull(fileType, "fileType"); + this.fileType = fileType; + return this; + } + + + /** + * The terminal state for this individual report. + */ + public Builder status(BulkReportItemResultStatus status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + + /** + * A user-facing error message when status is `failed`. Null on success. + */ + public Builder error(String error) { + Utils.checkNotNull(error, "error"); + this.error = Optional.ofNullable(error); + return this; + } + + /** + * A user-facing error message when status is `failed`. Null on success. + */ + public Builder error(Optional error) { + Utils.checkNotNull(error, "error"); + this.error = error; + return this; + } + + public BulkReportItemResult build() { + + return new BulkReportItemResult( + reportType, fileType, status, + error); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/TaxRequirementMetadataValidationType.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/BulkReportItemResultReportType.java similarity index 56% rename from gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/TaxRequirementMetadataValidationType.java rename to gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/BulkReportItemResultReportType.java index 565b78da7..555909569 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/TaxRequirementMetadataValidationType.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/BulkReportItemResultReportType.java @@ -9,18 +9,18 @@ import java.util.Optional; /** - * TaxRequirementMetadataValidationType + * BulkReportItemResultReportType * - *

    Describes the type of tax_rate validation rule + *

    Which report this entry refers to. */ -public enum TaxRequirementMetadataValidationType { - ONE_OF("one_of"), - MIN_MAX("min_max"); +public enum BulkReportItemResultReportType { + CUSTOM_REPORT("custom_report"), + GENERAL_LEDGER("general_ledger"); @JsonValue private final String value; - TaxRequirementMetadataValidationType(String value) { + BulkReportItemResultReportType(String value) { this.value = value; } @@ -28,8 +28,8 @@ public String value() { return value; } - public static Optional fromValue(String value) { - for (TaxRequirementMetadataValidationType o: TaxRequirementMetadataValidationType.values()) { + public static Optional fromValue(String value) { + for (BulkReportItemResultReportType o: BulkReportItemResultReportType.values()) { if (Objects.deepEquals(o.value, value)) { return Optional.of(o); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/BulkReportItemResultStatus.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/BulkReportItemResultStatus.java new file mode 100644 index 000000000..18e908bad --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/BulkReportItemResultStatus.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * BulkReportItemResultStatus + * + *

    The terminal state for this individual report. + */ +public enum BulkReportItemResultStatus { + PENDING("pending"), + SUCCESS("success"), + FAILED("failed"); + + @JsonValue + private final String value; + + BulkReportItemResultStatus(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (BulkReportItemResultStatus o: BulkReportItemResultStatus.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/BulkReportItemTypeIdResolver.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/BulkReportItemTypeIdResolver.java new file mode 100644 index 000000000..00c93b353 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/BulkReportItemTypeIdResolver.java @@ -0,0 +1,52 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +package com.gusto.embedded_api.models.components; + +import com.gusto.embedded_api.utils.GenericTypeIdResolver; +import java.lang.IllegalArgumentException; +import java.lang.Object; +import java.lang.Override; +import java.lang.String; + + +/** + * BulkReportItemTypeIdResolver + * + *

    A single report inside a bulk batch. Required fields depend on `report_type`: `custom_report` + * requires `columns` and `file_type`; `general_ledger` requires `payroll_uuid` and `aggregation`. + */ +public class BulkReportItemTypeIdResolver extends GenericTypeIdResolver { + + public BulkReportItemTypeIdResolver() { + super(UnknownBulkReportItem.class); + initializeTypeMap(); + } + + private void initializeTypeMap() { + registerType("custom_report", BulkReportCustomReportItem.class); + registerType("general_ledger", BulkReportGeneralLedgerItem.class); + } + + @Override + public String idFromValue(Object value) { + if (value == null) { + return null; + } + + // Handle known types by checking if they implement the discriminator method + if (value instanceof BulkReportItem) { + BulkReportItem discriminated = (BulkReportItem) value; + return discriminated.reportType(); + } + + throw new IllegalArgumentException("Unknown value type: " + value.getClass().getName()); + } + + @Override + public String getDescForKnownTypeIds() { + return "BulkReportItem type resolver"; + } + +} \ No newline at end of file diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/BulkReportStatus.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/BulkReportStatus.java new file mode 100644 index 000000000..ccc4f4a90 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/BulkReportStatus.java @@ -0,0 +1,44 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * BulkReportStatus + * + *

    Overall batch status. `pending`/`processing` while in progress; once finished, `success` (all + * reports succeeded), `partial_success` (some succeeded, some failed), or `failed` (none succeeded). + */ +public enum BulkReportStatus { + PENDING("pending"), + PROCESSING("processing"), + SUCCESS("success"), + PARTIAL_SUCCESS("partial_success"), + FAILED("failed"); + + @JsonValue + private final String value; + + BulkReportStatus(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (BulkReportStatus o: BulkReportStatus.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Columns.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Columns.java index 02a86d6f0..398a15a0f 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Columns.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Columns.java @@ -9,6 +9,7 @@ import java.util.Optional; public enum Columns { + ADDITIONAL_EARNINGS("additional_earnings"), BANK_ACCOUNT_ACCOUNT_NUMBER("bank_account_account_number"), BANK_ACCOUNT_ROUTING_NUMBER("bank_account_routing_number"), BANK_ACCOUNT_TYPE("bank_account_type"), @@ -38,6 +39,7 @@ public enum Columns { EMPLOYEE_MEDICARE_TAX("employee_medicare_tax"), EMPLOYEE_PHONE_NUMBER("employee_phone_number"), EMPLOYEE_SOCIAL_SECURITY_TAX("employee_social_security_tax"), + EMPLOYEE_STATE_INCOME_TAX("employee_state_income_tax"), EMPLOYEE_TAXES("employee_taxes"), EMPLOYEE_UUID("employee_uuid"), EMPLOYEE_WORK_EMAIL("employee_work_email"), diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Contractor.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Contractor.java index 2113d068c..8708333d1 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Contractor.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Contractor.java @@ -42,7 +42,7 @@ public class Contractor { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("wage_type") - private Optional wageType; + private Optional wageType; /** * The status of the contractor with the company. @@ -122,6 +122,16 @@ public class Contractor { @JsonProperty("email") private JsonNullable email; + /** + * The work email address of the contractor. This is provided to support syncing users between our + * system and yours. You may not use this email address for any other purpose (e.g. + * + *

    marketing). + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("work_email") + private JsonNullable workEmail; + /** * The contractor's start date. */ @@ -170,7 +180,7 @@ public class Contractor { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("onboarding_status") - private Optional onboardingStatus; + private Optional onboardingStatus; /** * The contractor's payment method. @@ -241,7 +251,7 @@ public class Contractor { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("member_portal_invitation_status") - private JsonNullable memberPortalInvitationStatus; + private JsonNullable memberPortalInvitationStatus; /** * Whether an external partner portal invitation webhook has been sent for this contractor. Only @@ -255,7 +265,7 @@ public class Contractor { public Contractor( @JsonProperty("uuid") String uuid, @JsonProperty("company_uuid") Optional companyUuid, - @JsonProperty("wage_type") Optional wageType, + @JsonProperty("wage_type") Optional wageType, @JsonProperty("is_active") Optional isActive, @JsonProperty("version") Optional version, @JsonProperty("type") Optional type, @@ -266,13 +276,14 @@ public Contractor( @JsonProperty("ein") JsonNullable ein, @JsonProperty("has_ein") JsonNullable hasEin, @JsonProperty("email") JsonNullable email, + @JsonProperty("work_email") JsonNullable workEmail, @JsonProperty("start_date") Optional startDate, @JsonProperty("address") JsonNullable address, @JsonProperty("hourly_rate") Optional hourlyRate, @JsonProperty("file_new_hire_report") JsonNullable fileNewHireReport, @JsonProperty("work_state") JsonNullable workState, @JsonProperty("onboarded") Optional onboarded, - @JsonProperty("onboarding_status") Optional onboardingStatus, + @JsonProperty("onboarding_status") Optional onboardingStatus, @JsonProperty("payment_method") JsonNullable paymentMethod, @JsonProperty("has_ssn") Optional hasSsn, @JsonProperty("department_uuid") JsonNullable departmentUuid, @@ -282,7 +293,7 @@ public Contractor( @JsonProperty("upcoming_employment") JsonNullable upcomingEmployment, @JsonProperty("dismissal_cancellation_eligible") Optional dismissalCancellationEligible, @JsonProperty("rehire_cancellation_eligible") Optional rehireCancellationEligible, - @JsonProperty("member_portal_invitation_status") JsonNullable memberPortalInvitationStatus, + @JsonProperty("member_portal_invitation_status") JsonNullable memberPortalInvitationStatus, @JsonProperty("partner_portal_invitation_sent") JsonNullable partnerPortalInvitationSent) { Utils.checkNotNull(uuid, "uuid"); Utils.checkNotNull(companyUuid, "companyUuid"); @@ -297,6 +308,7 @@ public Contractor( Utils.checkNotNull(ein, "ein"); Utils.checkNotNull(hasEin, "hasEin"); Utils.checkNotNull(email, "email"); + Utils.checkNotNull(workEmail, "workEmail"); Utils.checkNotNull(startDate, "startDate"); Utils.checkNotNull(address, "address"); Utils.checkNotNull(hourlyRate, "hourlyRate"); @@ -328,6 +340,7 @@ public Contractor( this.ein = ein; this.hasEin = hasEin; this.email = email; + this.workEmail = workEmail; this.startDate = startDate; this.address = address; this.hourlyRate = hourlyRate; @@ -354,13 +367,13 @@ public Contractor( Optional.empty(), Optional.empty(), Optional.empty(), JsonNullable.undefined(), JsonNullable.undefined(), JsonNullable.undefined(), JsonNullable.undefined(), JsonNullable.undefined(), JsonNullable.undefined(), + JsonNullable.undefined(), JsonNullable.undefined(), Optional.empty(), + JsonNullable.undefined(), Optional.empty(), JsonNullable.undefined(), + JsonNullable.undefined(), Optional.empty(), Optional.empty(), JsonNullable.undefined(), Optional.empty(), JsonNullable.undefined(), - Optional.empty(), JsonNullable.undefined(), JsonNullable.undefined(), - Optional.empty(), Optional.empty(), JsonNullable.undefined(), - Optional.empty(), JsonNullable.undefined(), JsonNullable.undefined(), JsonNullable.undefined(), JsonNullable.undefined(), JsonNullable.undefined(), - Optional.empty(), Optional.empty(), JsonNullable.undefined(), - JsonNullable.undefined()); + JsonNullable.undefined(), Optional.empty(), Optional.empty(), + JsonNullable.undefined(), JsonNullable.undefined()); } /** @@ -384,8 +397,8 @@ public Optional companyUuid() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional wageType() { - return (Optional) wageType; + public Optional wageType() { + return (Optional) wageType; } /** @@ -477,6 +490,17 @@ public JsonNullable email() { return email; } + /** + * The work email address of the contractor. This is provided to support syncing users between our + * system and yours. You may not use this email address for any other purpose (e.g. + * + *

    marketing). + */ + @JsonIgnore + public JsonNullable workEmail() { + return workEmail; + } + /** * The contractor's start date. */ @@ -532,8 +556,8 @@ public Optional onboarded() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional onboardingStatus() { - return (Optional) onboardingStatus; + public Optional onboardingStatus() { + return (Optional) onboardingStatus; } /** @@ -616,8 +640,8 @@ public Optional rehireCancellationEligible() { */ @SuppressWarnings("unchecked") @JsonIgnore - public JsonNullable memberPortalInvitationStatus() { - return (JsonNullable) memberPortalInvitationStatus; + public JsonNullable memberPortalInvitationStatus() { + return (JsonNullable) memberPortalInvitationStatus; } /** @@ -665,7 +689,7 @@ public Contractor withCompanyUuid(Optional companyUuid) { /** * The contractor's wage type, either "Fixed" or "Hourly". */ - public Contractor withWageType(WageType wageType) { + public Contractor withWageType(ContractorWageType wageType) { Utils.checkNotNull(wageType, "wageType"); this.wageType = Optional.ofNullable(wageType); return this; @@ -675,7 +699,7 @@ public Contractor withWageType(WageType wageType) { /** * The contractor's wage type, either "Fixed" or "Hourly". */ - public Contractor withWageType(Optional wageType) { + public Contractor withWageType(Optional wageType) { Utils.checkNotNull(wageType, "wageType"); this.wageType = wageType; return this; @@ -880,6 +904,30 @@ public Contractor withEmail(JsonNullable email) { return this; } + /** + * The work email address of the contractor. This is provided to support syncing users between our + * system and yours. You may not use this email address for any other purpose (e.g. + * + *

    marketing). + */ + public Contractor withWorkEmail(String workEmail) { + Utils.checkNotNull(workEmail, "workEmail"); + this.workEmail = JsonNullable.of(workEmail); + return this; + } + + /** + * The work email address of the contractor. This is provided to support syncing users between our + * system and yours. You may not use this email address for any other purpose (e.g. + * + *

    marketing). + */ + public Contractor withWorkEmail(JsonNullable workEmail) { + Utils.checkNotNull(workEmail, "workEmail"); + this.workEmail = workEmail; + return this; + } + /** * The contractor's start date. */ @@ -996,7 +1044,7 @@ public Contractor withOnboarded(Optional onboarded) { /** * One of the "onboarding_status" enum values. */ - public Contractor withOnboardingStatus(ContractorOnboardingStatus1 onboardingStatus) { + public Contractor withOnboardingStatus(OnboardingStatus onboardingStatus) { Utils.checkNotNull(onboardingStatus, "onboardingStatus"); this.onboardingStatus = Optional.ofNullable(onboardingStatus); return this; @@ -1006,7 +1054,7 @@ public Contractor withOnboardingStatus(ContractorOnboardingStatus1 onboardingSta /** * One of the "onboarding_status" enum values. */ - public Contractor withOnboardingStatus(Optional onboardingStatus) { + public Contractor withOnboardingStatus(Optional onboardingStatus) { Utils.checkNotNull(onboardingStatus, "onboardingStatus"); this.onboardingStatus = onboardingStatus; return this; @@ -1181,7 +1229,7 @@ public Contractor withRehireCancellationEligible(Optional rehireCancell * Member portal invitation status information. Only included when the include param has the * portal_invitations value set. */ - public Contractor withMemberPortalInvitationStatus(ContractorMemberPortalInvitationStatus memberPortalInvitationStatus) { + public Contractor withMemberPortalInvitationStatus(MemberPortalInvitationStatus memberPortalInvitationStatus) { Utils.checkNotNull(memberPortalInvitationStatus, "memberPortalInvitationStatus"); this.memberPortalInvitationStatus = JsonNullable.of(memberPortalInvitationStatus); return this; @@ -1191,7 +1239,7 @@ public Contractor withMemberPortalInvitationStatus(ContractorMemberPortalInvitat * Member portal invitation status information. Only included when the include param has the * portal_invitations value set. */ - public Contractor withMemberPortalInvitationStatus(JsonNullable memberPortalInvitationStatus) { + public Contractor withMemberPortalInvitationStatus(JsonNullable memberPortalInvitationStatus) { Utils.checkNotNull(memberPortalInvitationStatus, "memberPortalInvitationStatus"); this.memberPortalInvitationStatus = memberPortalInvitationStatus; return this; @@ -1240,6 +1288,7 @@ public boolean equals(java.lang.Object o) { Utils.enhancedDeepEquals(this.ein, other.ein) && Utils.enhancedDeepEquals(this.hasEin, other.hasEin) && Utils.enhancedDeepEquals(this.email, other.email) && + Utils.enhancedDeepEquals(this.workEmail, other.workEmail) && Utils.enhancedDeepEquals(this.startDate, other.startDate) && Utils.enhancedDeepEquals(this.address, other.address) && Utils.enhancedDeepEquals(this.hourlyRate, other.hourlyRate) && @@ -1267,13 +1316,13 @@ public int hashCode() { isActive, version, type, firstName, lastName, middleInitial, businessName, ein, hasEin, - email, startDate, address, - hourlyRate, fileNewHireReport, workState, - onboarded, onboardingStatus, paymentMethod, - hasSsn, departmentUuid, department, - departmentTitle, dismissalDate, upcomingEmployment, - dismissalCancellationEligible, rehireCancellationEligible, memberPortalInvitationStatus, - partnerPortalInvitationSent); + email, workEmail, startDate, + address, hourlyRate, fileNewHireReport, + workState, onboarded, onboardingStatus, + paymentMethod, hasSsn, departmentUuid, + department, departmentTitle, dismissalDate, + upcomingEmployment, dismissalCancellationEligible, rehireCancellationEligible, + memberPortalInvitationStatus, partnerPortalInvitationSent); } @Override @@ -1292,6 +1341,7 @@ public String toString() { "ein", ein, "hasEin", hasEin, "email", email, + "workEmail", workEmail, "startDate", startDate, "address", address, "hourlyRate", hourlyRate, @@ -1319,7 +1369,7 @@ public final static class Builder { private Optional companyUuid = Optional.empty(); - private Optional wageType = Optional.empty(); + private Optional wageType = Optional.empty(); private Optional isActive; @@ -1341,6 +1391,8 @@ public final static class Builder { private JsonNullable email = JsonNullable.undefined(); + private JsonNullable workEmail = JsonNullable.undefined(); + private Optional startDate = Optional.empty(); private JsonNullable address = JsonNullable.undefined(); @@ -1353,7 +1405,7 @@ public final static class Builder { private Optional onboarded = Optional.empty(); - private Optional onboardingStatus = Optional.empty(); + private Optional onboardingStatus = Optional.empty(); private JsonNullable paymentMethod = JsonNullable.undefined(); @@ -1373,7 +1425,7 @@ public final static class Builder { private Optional rehireCancellationEligible = Optional.empty(); - private JsonNullable memberPortalInvitationStatus = JsonNullable.undefined(); + private JsonNullable memberPortalInvitationStatus = JsonNullable.undefined(); private JsonNullable partnerPortalInvitationSent = JsonNullable.undefined(); @@ -1414,7 +1466,7 @@ public Builder companyUuid(Optional companyUuid) { /** * The contractor's wage type, either "Fixed" or "Hourly". */ - public Builder wageType(WageType wageType) { + public Builder wageType(ContractorWageType wageType) { Utils.checkNotNull(wageType, "wageType"); this.wageType = Optional.ofNullable(wageType); return this; @@ -1423,7 +1475,7 @@ public Builder wageType(WageType wageType) { /** * The contractor's wage type, either "Fixed" or "Hourly". */ - public Builder wageType(Optional wageType) { + public Builder wageType(Optional wageType) { Utils.checkNotNull(wageType, "wageType"); this.wageType = wageType; return this; @@ -1636,6 +1688,31 @@ public Builder email(JsonNullable email) { } + /** + * The work email address of the contractor. This is provided to support syncing users between our + * system and yours. You may not use this email address for any other purpose (e.g. + * + *

    marketing). + */ + public Builder workEmail(String workEmail) { + Utils.checkNotNull(workEmail, "workEmail"); + this.workEmail = JsonNullable.of(workEmail); + return this; + } + + /** + * The work email address of the contractor. This is provided to support syncing users between our + * system and yours. You may not use this email address for any other purpose (e.g. + * + *

    marketing). + */ + public Builder workEmail(JsonNullable workEmail) { + Utils.checkNotNull(workEmail, "workEmail"); + this.workEmail = workEmail; + return this; + } + + /** * The contractor's start date. */ @@ -1755,7 +1832,7 @@ public Builder onboarded(Optional onboarded) { /** * One of the "onboarding_status" enum values. */ - public Builder onboardingStatus(ContractorOnboardingStatus1 onboardingStatus) { + public Builder onboardingStatus(OnboardingStatus onboardingStatus) { Utils.checkNotNull(onboardingStatus, "onboardingStatus"); this.onboardingStatus = Optional.ofNullable(onboardingStatus); return this; @@ -1764,7 +1841,7 @@ public Builder onboardingStatus(ContractorOnboardingStatus1 onboardingStatus) { /** * One of the "onboarding_status" enum values. */ - public Builder onboardingStatus(Optional onboardingStatus) { + public Builder onboardingStatus(Optional onboardingStatus) { Utils.checkNotNull(onboardingStatus, "onboardingStatus"); this.onboardingStatus = onboardingStatus; return this; @@ -1946,7 +2023,7 @@ public Builder rehireCancellationEligible(Optional rehireCancellationEl * Member portal invitation status information. Only included when the include param has the * portal_invitations value set. */ - public Builder memberPortalInvitationStatus(ContractorMemberPortalInvitationStatus memberPortalInvitationStatus) { + public Builder memberPortalInvitationStatus(MemberPortalInvitationStatus memberPortalInvitationStatus) { Utils.checkNotNull(memberPortalInvitationStatus, "memberPortalInvitationStatus"); this.memberPortalInvitationStatus = JsonNullable.of(memberPortalInvitationStatus); return this; @@ -1956,7 +2033,7 @@ public Builder memberPortalInvitationStatus(ContractorMemberPortalInvitationStat * Member portal invitation status information. Only included when the include param has the * portal_invitations value set. */ - public Builder memberPortalInvitationStatus(JsonNullable memberPortalInvitationStatus) { + public Builder memberPortalInvitationStatus(JsonNullable memberPortalInvitationStatus) { Utils.checkNotNull(memberPortalInvitationStatus, "memberPortalInvitationStatus"); this.memberPortalInvitationStatus = memberPortalInvitationStatus; return this; @@ -1993,13 +2070,13 @@ public Contractor build() { isActive, version, type, firstName, lastName, middleInitial, businessName, ein, hasEin, - email, startDate, address, - hourlyRate, fileNewHireReport, workState, - onboarded, onboardingStatus, paymentMethod, - hasSsn, departmentUuid, department, - departmentTitle, dismissalDate, upcomingEmployment, - dismissalCancellationEligible, rehireCancellationEligible, memberPortalInvitationStatus, - partnerPortalInvitationSent); + email, workEmail, startDate, + address, hourlyRate, fileNewHireReport, + workState, onboarded, onboardingStatus, + paymentMethod, hasSsn, departmentUuid, + department, departmentTitle, dismissalDate, + upcomingEmployment, dismissalCancellationEligible, rehireCancellationEligible, + memberPortalInvitationStatus, partnerPortalInvitationSent); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorAddress.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorAddress.java index 1fa7b24a6..3ee66f3b7 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorAddress.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorAddress.java @@ -14,6 +14,8 @@ import java.lang.Boolean; import java.lang.Override; import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.List; import java.util.Optional; import org.openapitools.jackson.nullable.JsonNullable; @@ -73,6 +75,14 @@ public class ContractorAddress { @JsonProperty("version") private Optional version; + /** + * An array of warning objects that provide additional information about the address. Warnings do not + * prevent the address from being saved. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("warnings") + private Optional> warnings; + @JsonCreator public ContractorAddress( @JsonProperty("contractor_uuid") Optional contractorUuid, @@ -83,7 +93,8 @@ public ContractorAddress( @JsonProperty("zip") JsonNullable zip, @JsonProperty("country") JsonNullable country, @JsonProperty("active") Optional active, - @JsonProperty("version") Optional version) { + @JsonProperty("version") Optional version, + @JsonProperty("warnings") Optional> warnings) { Utils.checkNotNull(contractorUuid, "contractorUuid"); Utils.checkNotNull(street1, "street1"); Utils.checkNotNull(street2, "street2"); @@ -93,6 +104,7 @@ public ContractorAddress( Utils.checkNotNull(country, "country"); Utils.checkNotNull(active, "active"); Utils.checkNotNull(version, "version"); + Utils.checkNotNull(warnings, "warnings"); this.contractorUuid = contractorUuid; this.street1 = street1; this.street2 = street2; @@ -102,12 +114,14 @@ public ContractorAddress( this.country = country; this.active = active; this.version = version; + this.warnings = warnings; } public ContractorAddress() { this(Optional.empty(), JsonNullable.undefined(), JsonNullable.undefined(), JsonNullable.undefined(), JsonNullable.undefined(), JsonNullable.undefined(), - JsonNullable.undefined(), Optional.empty(), Optional.empty()); + JsonNullable.undefined(), Optional.empty(), Optional.empty(), + Optional.empty()); } /** @@ -167,6 +181,16 @@ public Optional version() { return version; } + /** + * An array of warning objects that provide additional information about the address. Warnings do not + * prevent the address from being saved. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> warnings() { + return (Optional>) warnings; + } + public static Builder builder() { return new Builder(); } @@ -307,6 +331,27 @@ public ContractorAddress withVersion(Optional version) { return this; } + /** + * An array of warning objects that provide additional information about the address. Warnings do not + * prevent the address from being saved. + */ + public ContractorAddress withWarnings(List warnings) { + Utils.checkNotNull(warnings, "warnings"); + this.warnings = Optional.ofNullable(warnings); + return this; + } + + + /** + * An array of warning objects that provide additional information about the address. Warnings do not + * prevent the address from being saved. + */ + public ContractorAddress withWarnings(Optional> warnings) { + Utils.checkNotNull(warnings, "warnings"); + this.warnings = warnings; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -325,7 +370,8 @@ public boolean equals(java.lang.Object o) { Utils.enhancedDeepEquals(this.zip, other.zip) && Utils.enhancedDeepEquals(this.country, other.country) && Utils.enhancedDeepEquals(this.active, other.active) && - Utils.enhancedDeepEquals(this.version, other.version); + Utils.enhancedDeepEquals(this.version, other.version) && + Utils.enhancedDeepEquals(this.warnings, other.warnings); } @Override @@ -333,7 +379,8 @@ public int hashCode() { return Utils.enhancedHash( contractorUuid, street1, street2, city, state, zip, - country, active, version); + country, active, version, + warnings); } @Override @@ -347,7 +394,8 @@ public String toString() { "zip", zip, "country", country, "active", active, - "version", version); + "version", version, + "warnings", warnings); } @SuppressWarnings("UnusedReturnValue") @@ -371,6 +419,8 @@ public final static class Builder { private Optional version = Optional.empty(); + private Optional> warnings = Optional.empty(); + private Builder() { // force use of static builder() method } @@ -516,6 +566,27 @@ public Builder version(Optional version) { return this; } + + /** + * An array of warning objects that provide additional information about the address. Warnings do not + * prevent the address from being saved. + */ + public Builder warnings(List warnings) { + Utils.checkNotNull(warnings, "warnings"); + this.warnings = Optional.ofNullable(warnings); + return this; + } + + /** + * An array of warning objects that provide additional information about the address. Warnings do not + * prevent the address from being saved. + */ + public Builder warnings(Optional> warnings) { + Utils.checkNotNull(warnings, "warnings"); + this.warnings = warnings; + return this; + } + public ContractorAddress build() { if (country == null) { country = _SINGLETON_VALUE_Country.value(); @@ -524,7 +595,8 @@ public ContractorAddress build() { return new ContractorAddress( contractorUuid, street1, street2, city, state, zip, - country, active, version); + country, active, version, + warnings); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorCreateRequestBody.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorCreateRequestBody.java index f135124f4..802f8eb11 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorCreateRequestBody.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorCreateRequestBody.java @@ -66,6 +66,16 @@ public class ContractorCreateRequestBody { @JsonProperty("email") private Optional email; + /** + * The work email address of the contractor. This is provided to support syncing users between our + * system and yours. You may not use this email address for any other purpose (e.g. + * + *

    marketing). + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("work_email") + private Optional workEmail; + /** * The contractor’s first name. * This attribute is required for `Individual` contractors and will be ignored for `Business` @@ -158,6 +168,7 @@ public ContractorCreateRequestBody( @JsonProperty("hourly_rate") Optional hourlyRate, @JsonProperty("self_onboarding") Optional selfOnboarding, @JsonProperty("email") Optional email, + @JsonProperty("work_email") Optional workEmail, @JsonProperty("first_name") Optional firstName, @JsonProperty("last_name") Optional lastName, @JsonProperty("middle_initial") Optional middleInitial, @@ -173,6 +184,7 @@ public ContractorCreateRequestBody( Utils.checkNotNull(hourlyRate, "hourlyRate"); Utils.checkNotNull(selfOnboarding, "selfOnboarding"); Utils.checkNotNull(email, "email"); + Utils.checkNotNull(workEmail, "workEmail"); Utils.checkNotNull(firstName, "firstName"); Utils.checkNotNull(lastName, "lastName"); Utils.checkNotNull(middleInitial, "middleInitial"); @@ -188,6 +200,7 @@ public ContractorCreateRequestBody( this.hourlyRate = hourlyRate; this.selfOnboarding = selfOnboarding; this.email = email; + this.workEmail = workEmail; this.firstName = firstName; this.lastName = lastName; this.middleInitial = middleInitial; @@ -205,8 +218,9 @@ public ContractorCreateRequestBody( this(Optional.empty(), wageType, startDate, Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), - Optional.empty(), JsonNullable.undefined(), Optional.empty(), - Optional.empty(), Optional.empty(), Optional.empty()); + Optional.empty(), Optional.empty(), JsonNullable.undefined(), + Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty()); } /** @@ -260,6 +274,17 @@ public Optional email() { return email; } + /** + * The work email address of the contractor. This is provided to support syncing users between our + * system and yours. You may not use this email address for any other purpose (e.g. + * + *

    marketing). + */ + @JsonIgnore + public Optional workEmail() { + return workEmail; + } + /** * The contractor’s first name. * This attribute is required for `Individual` contractors and will be ignored for `Business` @@ -456,6 +481,31 @@ public ContractorCreateRequestBody withEmail(Optional email) { return this; } + /** + * The work email address of the contractor. This is provided to support syncing users between our + * system and yours. You may not use this email address for any other purpose (e.g. + * + *

    marketing). + */ + public ContractorCreateRequestBody withWorkEmail(String workEmail) { + Utils.checkNotNull(workEmail, "workEmail"); + this.workEmail = Optional.ofNullable(workEmail); + return this; + } + + + /** + * The work email address of the contractor. This is provided to support syncing users between our + * system and yours. You may not use this email address for any other purpose (e.g. + * + *

    marketing). + */ + public ContractorCreateRequestBody withWorkEmail(Optional workEmail) { + Utils.checkNotNull(workEmail, "workEmail"); + this.workEmail = workEmail; + return this; + } + /** * The contractor’s first name. * This attribute is required for `Individual` contractors and will be ignored for `Business` @@ -684,6 +734,7 @@ public boolean equals(java.lang.Object o) { Utils.enhancedDeepEquals(this.hourlyRate, other.hourlyRate) && Utils.enhancedDeepEquals(this.selfOnboarding, other.selfOnboarding) && Utils.enhancedDeepEquals(this.email, other.email) && + Utils.enhancedDeepEquals(this.workEmail, other.workEmail) && Utils.enhancedDeepEquals(this.firstName, other.firstName) && Utils.enhancedDeepEquals(this.lastName, other.lastName) && Utils.enhancedDeepEquals(this.middleInitial, other.middleInitial) && @@ -700,9 +751,10 @@ public int hashCode() { return Utils.enhancedHash( type, wageType, startDate, hourlyRate, selfOnboarding, email, - firstName, lastName, middleInitial, - fileNewHireReport, workState, ssn, - businessName, ein, isActive); + workEmail, firstName, lastName, + middleInitial, fileNewHireReport, workState, + ssn, businessName, ein, + isActive); } @Override @@ -714,6 +766,7 @@ public String toString() { "hourlyRate", hourlyRate, "selfOnboarding", selfOnboarding, "email", email, + "workEmail", workEmail, "firstName", firstName, "lastName", lastName, "middleInitial", middleInitial, @@ -740,6 +793,8 @@ public final static class Builder { private Optional email = Optional.empty(); + private Optional workEmail = Optional.empty(); + private Optional firstName = Optional.empty(); private Optional lastName = Optional.empty(); @@ -863,6 +918,31 @@ public Builder email(Optional email) { } + /** + * The work email address of the contractor. This is provided to support syncing users between our + * system and yours. You may not use this email address for any other purpose (e.g. + * + *

    marketing). + */ + public Builder workEmail(String workEmail) { + Utils.checkNotNull(workEmail, "workEmail"); + this.workEmail = Optional.ofNullable(workEmail); + return this; + } + + /** + * The work email address of the contractor. This is provided to support syncing users between our + * system and yours. You may not use this email address for any other purpose (e.g. + * + *

    marketing). + */ + public Builder workEmail(Optional workEmail) { + Utils.checkNotNull(workEmail, "workEmail"); + this.workEmail = workEmail; + return this; + } + + /** * The contractor’s first name. * This attribute is required for `Individual` contractors and will be ignored for `Business` @@ -1089,9 +1169,10 @@ public ContractorCreateRequestBody build() { return new ContractorCreateRequestBody( type, wageType, startDate, hourlyRate, selfOnboarding, email, - firstName, lastName, middleInitial, - fileNewHireReport, workState, ssn, - businessName, ein, isActive); + workEmail, firstName, lastName, + middleInitial, fileNewHireReport, workState, + ssn, businessName, ein, + isActive); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorOnboardingStatus1.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorOnboardingStatus1.java deleted file mode 100644 index f4f438449..000000000 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorOnboardingStatus1.java +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - */ -package com.gusto.embedded_api.models.components; - -import com.fasterxml.jackson.annotation.JsonValue; -import java.lang.String; -import java.util.Objects; -import java.util.Optional; - -/** - * ContractorOnboardingStatus1 - * - *

    One of the "onboarding_status" enum values. - */ -public enum ContractorOnboardingStatus1 { - ADMIN_ONBOARDING_INCOMPLETE("admin_onboarding_incomplete"), - ADMIN_ONBOARDING_REVIEW("admin_onboarding_review"), - SELF_ONBOARDING_NOT_INVITED("self_onboarding_not_invited"), - SELF_ONBOARDING_INVITED("self_onboarding_invited"), - SELF_ONBOARDING_STARTED("self_onboarding_started"), - SELF_ONBOARDING_REVIEW("self_onboarding_review"), - ONBOARDING_COMPLETED("onboarding_completed"); - - @JsonValue - private final String value; - - ContractorOnboardingStatus1(String value) { - this.value = value; - } - - public String value() { - return value; - } - - public static Optional fromValue(String value) { - for (ContractorOnboardingStatus1 o: ContractorOnboardingStatus1.values()) { - if (Objects.deepEquals(o.value, value)) { - return Optional.of(o); - } - } - return Optional.empty(); - } -} - diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentDetailsList.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentDetailsList.java index 752ec3dc8..a4974e256 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentDetailsList.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentDetailsList.java @@ -45,12 +45,12 @@ public class ContractorPaymentDetailsList { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("split_by") - private JsonNullable splitBy; + private JsonNullable splitBy; @JsonInclude(Include.NON_ABSENT) @JsonProperty("splits") - private JsonNullable> splits; + private JsonNullable> splits; @JsonCreator public ContractorPaymentDetailsList( @@ -58,8 +58,8 @@ public ContractorPaymentDetailsList( @JsonProperty("payment_method") Optional paymentMethod, @JsonProperty("first_name") Optional firstName, @JsonProperty("last_name") Optional lastName, - @JsonProperty("split_by") JsonNullable splitBy, - @JsonProperty("splits") JsonNullable> splits) { + @JsonProperty("split_by") JsonNullable splitBy, + @JsonProperty("splits") JsonNullable> splits) { Utils.checkNotNull(contractorUuid, "contractorUuid"); Utils.checkNotNull(paymentMethod, "paymentMethod"); Utils.checkNotNull(firstName, "firstName"); @@ -107,14 +107,14 @@ public Optional lastName() { */ @SuppressWarnings("unchecked") @JsonIgnore - public JsonNullable splitBy() { - return (JsonNullable) splitBy; + public JsonNullable splitBy() { + return (JsonNullable) splitBy; } @SuppressWarnings("unchecked") @JsonIgnore - public JsonNullable> splits() { - return (JsonNullable>) splits; + public JsonNullable> splits() { + return (JsonNullable>) splits; } public static Builder builder() { @@ -179,7 +179,7 @@ public ContractorPaymentDetailsList withLastName(Optional lastName) { * up to exactly 100. If split_by is Amount, then the amount represents cents and the last split amount * must be `null` to capture the remainder. */ - public ContractorPaymentDetailsList withSplitBy(ContractorPaymentDetailsListSplitBy splitBy) { + public ContractorPaymentDetailsList withSplitBy(SplitBy splitBy) { Utils.checkNotNull(splitBy, "splitBy"); this.splitBy = JsonNullable.of(splitBy); return this; @@ -190,19 +190,19 @@ public ContractorPaymentDetailsList withSplitBy(ContractorPaymentDetailsListSpli * up to exactly 100. If split_by is Amount, then the amount represents cents and the last split amount * must be `null` to capture the remainder. */ - public ContractorPaymentDetailsList withSplitBy(JsonNullable splitBy) { + public ContractorPaymentDetailsList withSplitBy(JsonNullable splitBy) { Utils.checkNotNull(splitBy, "splitBy"); this.splitBy = splitBy; return this; } - public ContractorPaymentDetailsList withSplits(List splits) { + public ContractorPaymentDetailsList withSplits(List splits) { Utils.checkNotNull(splits, "splits"); this.splits = JsonNullable.of(splits); return this; } - public ContractorPaymentDetailsList withSplits(JsonNullable> splits) { + public ContractorPaymentDetailsList withSplits(JsonNullable> splits) { Utils.checkNotNull(splits, "splits"); this.splits = splits; return this; @@ -255,9 +255,9 @@ public final static class Builder { private Optional lastName = Optional.empty(); - private JsonNullable splitBy = JsonNullable.undefined(); + private JsonNullable splitBy = JsonNullable.undefined(); - private JsonNullable> splits = JsonNullable.undefined(); + private JsonNullable> splits = JsonNullable.undefined(); private Builder() { // force use of static builder() method @@ -321,7 +321,7 @@ public Builder lastName(Optional lastName) { * up to exactly 100. If split_by is Amount, then the amount represents cents and the last split amount * must be `null` to capture the remainder. */ - public Builder splitBy(ContractorPaymentDetailsListSplitBy splitBy) { + public Builder splitBy(SplitBy splitBy) { Utils.checkNotNull(splitBy, "splitBy"); this.splitBy = JsonNullable.of(splitBy); return this; @@ -332,20 +332,20 @@ public Builder splitBy(ContractorPaymentDetailsListSplitBy splitBy) { * up to exactly 100. If split_by is Amount, then the amount represents cents and the last split amount * must be `null` to capture the remainder. */ - public Builder splitBy(JsonNullable splitBy) { + public Builder splitBy(JsonNullable splitBy) { Utils.checkNotNull(splitBy, "splitBy"); this.splitBy = splitBy; return this; } - public Builder splits(List splits) { + public Builder splits(List splits) { Utils.checkNotNull(splits, "splits"); this.splits = JsonNullable.of(splits); return this; } - public Builder splits(JsonNullable> splits) { + public Builder splits(JsonNullable> splits) { Utils.checkNotNull(splits, "splits"); this.splits = splits; return this; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentForGroupPreview.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentForGroupPreview.java index 9748a9cb3..0c74590d9 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentForGroupPreview.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentForGroupPreview.java @@ -100,7 +100,7 @@ public class ContractorPaymentForGroupPreview { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("wage_type") - private Optional wageType; + private Optional wageType; /** * (hours * hourly_rate) + wage + bonus @@ -121,7 +121,7 @@ public ContractorPaymentForGroupPreview( @JsonProperty("hourly_rate") Optional hourlyRate, @JsonProperty("may_cancel") Optional mayCancel, @JsonProperty("wage") Optional wage, - @JsonProperty("wage_type") Optional wageType, + @JsonProperty("wage_type") Optional wageType, @JsonProperty("wage_total") Optional wageTotal) { Utils.checkNotNull(uuid, "uuid"); Utils.checkNotNull(contractorUuid, "contractorUuid"); @@ -246,8 +246,8 @@ public Optional wage() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional wageType() { - return (Optional) wageType; + public Optional wageType() { + return (Optional) wageType; } /** @@ -461,7 +461,7 @@ public ContractorPaymentForGroupPreview withWage(Optional wage) { /** * The wage type for the payment. */ - public ContractorPaymentForGroupPreview withWageType(ContractorPaymentForGroupPreviewWageType wageType) { + public ContractorPaymentForGroupPreview withWageType(WageType wageType) { Utils.checkNotNull(wageType, "wageType"); this.wageType = Optional.ofNullable(wageType); return this; @@ -471,7 +471,7 @@ public ContractorPaymentForGroupPreview withWageType(ContractorPaymentForGroupPr /** * The wage type for the payment. */ - public ContractorPaymentForGroupPreview withWageType(Optional wageType) { + public ContractorPaymentForGroupPreview withWageType(Optional wageType) { Utils.checkNotNull(wageType, "wageType"); this.wageType = wageType; return this; @@ -569,7 +569,7 @@ public final static class Builder { private Optional wage = Optional.empty(); - private Optional wageType = Optional.empty(); + private Optional wageType = Optional.empty(); private Optional wageTotal = Optional.empty(); @@ -777,7 +777,7 @@ public Builder wage(Optional wage) { /** * The wage type for the payment. */ - public Builder wageType(ContractorPaymentForGroupPreviewWageType wageType) { + public Builder wageType(WageType wageType) { Utils.checkNotNull(wageType, "wageType"); this.wageType = Optional.ofNullable(wageType); return this; @@ -786,7 +786,7 @@ public Builder wageType(ContractorPaymentForGroupPreviewWageType wageType) { /** * The wage type for the payment. */ - public Builder wageType(Optional wageType) { + public Builder wageType(Optional wageType) { Utils.checkNotNull(wageType, "wageType"); this.wageType = wageType; return this; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentGroupPreview.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentGroupPreview.java index fba7fc82f..f729e4b45 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentGroupPreview.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentGroupPreview.java @@ -94,7 +94,7 @@ public class ContractorPaymentGroupPreview { @JsonInclude(Include.NON_ABSENT) @JsonProperty("totals") - private Optional totals; + private Optional totals; @JsonInclude(Include.NON_ABSENT) @@ -112,7 +112,7 @@ public ContractorPaymentGroupPreview( @JsonProperty("partner_owned_disbursement") JsonNullable partnerOwnedDisbursement, @JsonProperty("submission_blockers") Optional> submissionBlockers, @JsonProperty("credit_blockers") Optional> creditBlockers, - @JsonProperty("totals") Optional totals, + @JsonProperty("totals") Optional totals, @JsonProperty("contractor_payments") Optional> contractorPayments) { Utils.checkNotNull(uuid, "uuid"); Utils.checkNotNull(companyUuid, "companyUuid"); @@ -227,8 +227,8 @@ public Optional> creditBlockers() { @SuppressWarnings("unchecked") @JsonIgnore - public Optional totals() { - return (Optional) totals; + public Optional totals() { + return (Optional) totals; } @SuppressWarnings("unchecked") @@ -420,14 +420,14 @@ public ContractorPaymentGroupPreview withCreditBlockers(Optional totals) { + public ContractorPaymentGroupPreview withTotals(Optional totals) { Utils.checkNotNull(totals, "totals"); this.totals = totals; return this; @@ -515,7 +515,7 @@ public final static class Builder { private Optional> creditBlockers = Optional.empty(); - private Optional totals = Optional.empty(); + private Optional totals = Optional.empty(); private Optional> contractorPayments = Optional.empty(); @@ -705,13 +705,13 @@ public Builder creditBlockers(Optional> } - public Builder totals(ContractorPaymentGroupPreviewTotals totals) { + public Builder totals(Totals totals) { Utils.checkNotNull(totals, "totals"); this.totals = Optional.ofNullable(totals); return this; } - public Builder totals(Optional totals) { + public Builder totals(Optional totals) { Utils.checkNotNull(totals, "totals"); this.totals = totals; return this; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentGroupPreviewTotals.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentGroupPreviewTotals.java deleted file mode 100644 index d1b503439..000000000 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentGroupPreviewTotals.java +++ /dev/null @@ -1,371 +0,0 @@ -/* - * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - */ -package com.gusto.embedded_api.models.components; - -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonIgnore; -import com.fasterxml.jackson.annotation.JsonInclude.Include; -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.gusto.embedded_api.utils.Utils; -import java.lang.Override; -import java.lang.String; -import java.util.Optional; - - -public class ContractorPaymentGroupPreviewTotals { - /** - * The total amount for the group of contractor payments. - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("amount") - private Optional amount; - - /** - * The total debit amount for the group of contractor payments. Sum of wage & reimbursement amount. - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("debit_amount") - private Optional debitAmount; - - /** - * The total wage amount for the group of contractor payments. - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("wage_amount") - private Optional wageAmount; - - /** - * The total reimbursement amount for the group of contractor payments. - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("reimbursement_amount") - private Optional reimbursementAmount; - - /** - * The total check amount for the group of contractor payments. - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("check_amount") - private Optional checkAmount; - - @JsonCreator - public ContractorPaymentGroupPreviewTotals( - @JsonProperty("amount") Optional amount, - @JsonProperty("debit_amount") Optional debitAmount, - @JsonProperty("wage_amount") Optional wageAmount, - @JsonProperty("reimbursement_amount") Optional reimbursementAmount, - @JsonProperty("check_amount") Optional checkAmount) { - Utils.checkNotNull(amount, "amount"); - Utils.checkNotNull(debitAmount, "debitAmount"); - Utils.checkNotNull(wageAmount, "wageAmount"); - Utils.checkNotNull(reimbursementAmount, "reimbursementAmount"); - Utils.checkNotNull(checkAmount, "checkAmount"); - this.amount = amount; - this.debitAmount = debitAmount; - this.wageAmount = wageAmount; - this.reimbursementAmount = reimbursementAmount; - this.checkAmount = checkAmount; - } - - public ContractorPaymentGroupPreviewTotals() { - this(Optional.empty(), Optional.empty(), Optional.empty(), - Optional.empty(), Optional.empty()); - } - - /** - * The total amount for the group of contractor payments. - */ - @JsonIgnore - public Optional amount() { - return amount; - } - - /** - * The total debit amount for the group of contractor payments. Sum of wage & reimbursement amount. - */ - @JsonIgnore - public Optional debitAmount() { - return debitAmount; - } - - /** - * The total wage amount for the group of contractor payments. - */ - @JsonIgnore - public Optional wageAmount() { - return wageAmount; - } - - /** - * The total reimbursement amount for the group of contractor payments. - */ - @JsonIgnore - public Optional reimbursementAmount() { - return reimbursementAmount; - } - - /** - * The total check amount for the group of contractor payments. - */ - @JsonIgnore - public Optional checkAmount() { - return checkAmount; - } - - public static Builder builder() { - return new Builder(); - } - - - /** - * The total amount for the group of contractor payments. - */ - public ContractorPaymentGroupPreviewTotals withAmount(String amount) { - Utils.checkNotNull(amount, "amount"); - this.amount = Optional.ofNullable(amount); - return this; - } - - - /** - * The total amount for the group of contractor payments. - */ - public ContractorPaymentGroupPreviewTotals withAmount(Optional amount) { - Utils.checkNotNull(amount, "amount"); - this.amount = amount; - return this; - } - - /** - * The total debit amount for the group of contractor payments. Sum of wage & reimbursement amount. - */ - public ContractorPaymentGroupPreviewTotals withDebitAmount(String debitAmount) { - Utils.checkNotNull(debitAmount, "debitAmount"); - this.debitAmount = Optional.ofNullable(debitAmount); - return this; - } - - - /** - * The total debit amount for the group of contractor payments. Sum of wage & reimbursement amount. - */ - public ContractorPaymentGroupPreviewTotals withDebitAmount(Optional debitAmount) { - Utils.checkNotNull(debitAmount, "debitAmount"); - this.debitAmount = debitAmount; - return this; - } - - /** - * The total wage amount for the group of contractor payments. - */ - public ContractorPaymentGroupPreviewTotals withWageAmount(String wageAmount) { - Utils.checkNotNull(wageAmount, "wageAmount"); - this.wageAmount = Optional.ofNullable(wageAmount); - return this; - } - - - /** - * The total wage amount for the group of contractor payments. - */ - public ContractorPaymentGroupPreviewTotals withWageAmount(Optional wageAmount) { - Utils.checkNotNull(wageAmount, "wageAmount"); - this.wageAmount = wageAmount; - return this; - } - - /** - * The total reimbursement amount for the group of contractor payments. - */ - public ContractorPaymentGroupPreviewTotals withReimbursementAmount(String reimbursementAmount) { - Utils.checkNotNull(reimbursementAmount, "reimbursementAmount"); - this.reimbursementAmount = Optional.ofNullable(reimbursementAmount); - return this; - } - - - /** - * The total reimbursement amount for the group of contractor payments. - */ - public ContractorPaymentGroupPreviewTotals withReimbursementAmount(Optional reimbursementAmount) { - Utils.checkNotNull(reimbursementAmount, "reimbursementAmount"); - this.reimbursementAmount = reimbursementAmount; - return this; - } - - /** - * The total check amount for the group of contractor payments. - */ - public ContractorPaymentGroupPreviewTotals withCheckAmount(String checkAmount) { - Utils.checkNotNull(checkAmount, "checkAmount"); - this.checkAmount = Optional.ofNullable(checkAmount); - return this; - } - - - /** - * The total check amount for the group of contractor payments. - */ - public ContractorPaymentGroupPreviewTotals withCheckAmount(Optional checkAmount) { - Utils.checkNotNull(checkAmount, "checkAmount"); - this.checkAmount = checkAmount; - return this; - } - - @Override - public boolean equals(java.lang.Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - ContractorPaymentGroupPreviewTotals other = (ContractorPaymentGroupPreviewTotals) o; - return - Utils.enhancedDeepEquals(this.amount, other.amount) && - Utils.enhancedDeepEquals(this.debitAmount, other.debitAmount) && - Utils.enhancedDeepEquals(this.wageAmount, other.wageAmount) && - Utils.enhancedDeepEquals(this.reimbursementAmount, other.reimbursementAmount) && - Utils.enhancedDeepEquals(this.checkAmount, other.checkAmount); - } - - @Override - public int hashCode() { - return Utils.enhancedHash( - amount, debitAmount, wageAmount, - reimbursementAmount, checkAmount); - } - - @Override - public String toString() { - return Utils.toString(ContractorPaymentGroupPreviewTotals.class, - "amount", amount, - "debitAmount", debitAmount, - "wageAmount", wageAmount, - "reimbursementAmount", reimbursementAmount, - "checkAmount", checkAmount); - } - - @SuppressWarnings("UnusedReturnValue") - public final static class Builder { - - private Optional amount = Optional.empty(); - - private Optional debitAmount = Optional.empty(); - - private Optional wageAmount = Optional.empty(); - - private Optional reimbursementAmount = Optional.empty(); - - private Optional checkAmount = Optional.empty(); - - private Builder() { - // force use of static builder() method - } - - - /** - * The total amount for the group of contractor payments. - */ - public Builder amount(String amount) { - Utils.checkNotNull(amount, "amount"); - this.amount = Optional.ofNullable(amount); - return this; - } - - /** - * The total amount for the group of contractor payments. - */ - public Builder amount(Optional amount) { - Utils.checkNotNull(amount, "amount"); - this.amount = amount; - return this; - } - - - /** - * The total debit amount for the group of contractor payments. Sum of wage & reimbursement amount. - */ - public Builder debitAmount(String debitAmount) { - Utils.checkNotNull(debitAmount, "debitAmount"); - this.debitAmount = Optional.ofNullable(debitAmount); - return this; - } - - /** - * The total debit amount for the group of contractor payments. Sum of wage & reimbursement amount. - */ - public Builder debitAmount(Optional debitAmount) { - Utils.checkNotNull(debitAmount, "debitAmount"); - this.debitAmount = debitAmount; - return this; - } - - - /** - * The total wage amount for the group of contractor payments. - */ - public Builder wageAmount(String wageAmount) { - Utils.checkNotNull(wageAmount, "wageAmount"); - this.wageAmount = Optional.ofNullable(wageAmount); - return this; - } - - /** - * The total wage amount for the group of contractor payments. - */ - public Builder wageAmount(Optional wageAmount) { - Utils.checkNotNull(wageAmount, "wageAmount"); - this.wageAmount = wageAmount; - return this; - } - - - /** - * The total reimbursement amount for the group of contractor payments. - */ - public Builder reimbursementAmount(String reimbursementAmount) { - Utils.checkNotNull(reimbursementAmount, "reimbursementAmount"); - this.reimbursementAmount = Optional.ofNullable(reimbursementAmount); - return this; - } - - /** - * The total reimbursement amount for the group of contractor payments. - */ - public Builder reimbursementAmount(Optional reimbursementAmount) { - Utils.checkNotNull(reimbursementAmount, "reimbursementAmount"); - this.reimbursementAmount = reimbursementAmount; - return this; - } - - - /** - * The total check amount for the group of contractor payments. - */ - public Builder checkAmount(String checkAmount) { - Utils.checkNotNull(checkAmount, "checkAmount"); - this.checkAmount = Optional.ofNullable(checkAmount); - return this; - } - - /** - * The total check amount for the group of contractor payments. - */ - public Builder checkAmount(Optional checkAmount) { - Utils.checkNotNull(checkAmount, "checkAmount"); - this.checkAmount = checkAmount; - return this; - } - - public ContractorPaymentGroupPreviewTotals build() { - - return new ContractorPaymentGroupPreviewTotals( - amount, debitAmount, wageAmount, - reimbursementAmount, checkAmount); - } - - } -} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentListing.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentListing.java new file mode 100644 index 000000000..60be8c429 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentListing.java @@ -0,0 +1,727 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.time.LocalDate; +import java.util.Optional; + +/** + * ContractorPaymentListing + * + *

    The representation of a contractor payment as it appears in a contractor's payment history. + */ +public class ContractorPaymentListing { + /** + * The unique identifier of the contractor payment in Gusto. + */ + @JsonProperty("uuid") + private String uuid; + + /** + * The check date for the payment. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("check_date") + private Optional checkDate; + + /** + * The bonus amount in the payment. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("bonus") + private Optional bonus; + + /** + * The number of hours worked for the payment. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("hours") + private Optional hours; + + /** + * The rate per hour worked for the payment. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("hourly_rate") + private Optional hourlyRate; + + /** + * The payment method. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("payment_method") + private Optional paymentMethod; + + /** + * The reimbursement amount in the payment. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("reimbursement") + private Optional reimbursement; + + /** + * Contractor payment status + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("status") + private Optional status; + + /** + * The fixed wage of the payment, regardless of hours worked. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("wage") + private Optional wage; + + /** + * The wage type for the payment. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("wage_type") + private Optional wageType; + + /** + * (hours * hourly_rate) + wage + bonus + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("wage_total") + private Optional wageTotal; + + @JsonCreator + public ContractorPaymentListing( + @JsonProperty("uuid") String uuid, + @JsonProperty("check_date") Optional checkDate, + @JsonProperty("bonus") Optional bonus, + @JsonProperty("hours") Optional hours, + @JsonProperty("hourly_rate") Optional hourlyRate, + @JsonProperty("payment_method") Optional paymentMethod, + @JsonProperty("reimbursement") Optional reimbursement, + @JsonProperty("status") Optional status, + @JsonProperty("wage") Optional wage, + @JsonProperty("wage_type") Optional wageType, + @JsonProperty("wage_total") Optional wageTotal) { + Utils.checkNotNull(uuid, "uuid"); + Utils.checkNotNull(checkDate, "checkDate"); + Utils.checkNotNull(bonus, "bonus"); + Utils.checkNotNull(hours, "hours"); + Utils.checkNotNull(hourlyRate, "hourlyRate"); + Utils.checkNotNull(paymentMethod, "paymentMethod"); + Utils.checkNotNull(reimbursement, "reimbursement"); + Utils.checkNotNull(status, "status"); + Utils.checkNotNull(wage, "wage"); + Utils.checkNotNull(wageType, "wageType"); + Utils.checkNotNull(wageTotal, "wageTotal"); + this.uuid = uuid; + this.checkDate = checkDate; + this.bonus = bonus; + this.hours = hours; + this.hourlyRate = hourlyRate; + this.paymentMethod = paymentMethod; + this.reimbursement = reimbursement; + this.status = status; + this.wage = wage; + this.wageType = wageType; + this.wageTotal = wageTotal; + } + + public ContractorPaymentListing( + String uuid) { + this(uuid, Optional.empty(), Optional.empty(), + Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty(), Optional.empty()); + } + + /** + * The unique identifier of the contractor payment in Gusto. + */ + @JsonIgnore + public String uuid() { + return uuid; + } + + /** + * The check date for the payment. + */ + @JsonIgnore + public Optional checkDate() { + return checkDate; + } + + /** + * The bonus amount in the payment. + */ + @JsonIgnore + public Optional bonus() { + return bonus; + } + + /** + * The number of hours worked for the payment. + */ + @JsonIgnore + public Optional hours() { + return hours; + } + + /** + * The rate per hour worked for the payment. + */ + @JsonIgnore + public Optional hourlyRate() { + return hourlyRate; + } + + /** + * The payment method. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional paymentMethod() { + return (Optional) paymentMethod; + } + + /** + * The reimbursement amount in the payment. + */ + @JsonIgnore + public Optional reimbursement() { + return reimbursement; + } + + /** + * Contractor payment status + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional status() { + return (Optional) status; + } + + /** + * The fixed wage of the payment, regardless of hours worked. + */ + @JsonIgnore + public Optional wage() { + return wage; + } + + /** + * The wage type for the payment. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional wageType() { + return (Optional) wageType; + } + + /** + * (hours * hourly_rate) + wage + bonus + */ + @JsonIgnore + public Optional wageTotal() { + return wageTotal; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * The unique identifier of the contractor payment in Gusto. + */ + public ContractorPaymentListing withUuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + /** + * The check date for the payment. + */ + public ContractorPaymentListing withCheckDate(LocalDate checkDate) { + Utils.checkNotNull(checkDate, "checkDate"); + this.checkDate = Optional.ofNullable(checkDate); + return this; + } + + + /** + * The check date for the payment. + */ + public ContractorPaymentListing withCheckDate(Optional checkDate) { + Utils.checkNotNull(checkDate, "checkDate"); + this.checkDate = checkDate; + return this; + } + + /** + * The bonus amount in the payment. + */ + public ContractorPaymentListing withBonus(String bonus) { + Utils.checkNotNull(bonus, "bonus"); + this.bonus = Optional.ofNullable(bonus); + return this; + } + + + /** + * The bonus amount in the payment. + */ + public ContractorPaymentListing withBonus(Optional bonus) { + Utils.checkNotNull(bonus, "bonus"); + this.bonus = bonus; + return this; + } + + /** + * The number of hours worked for the payment. + */ + public ContractorPaymentListing withHours(String hours) { + Utils.checkNotNull(hours, "hours"); + this.hours = Optional.ofNullable(hours); + return this; + } + + + /** + * The number of hours worked for the payment. + */ + public ContractorPaymentListing withHours(Optional hours) { + Utils.checkNotNull(hours, "hours"); + this.hours = hours; + return this; + } + + /** + * The rate per hour worked for the payment. + */ + public ContractorPaymentListing withHourlyRate(String hourlyRate) { + Utils.checkNotNull(hourlyRate, "hourlyRate"); + this.hourlyRate = Optional.ofNullable(hourlyRate); + return this; + } + + + /** + * The rate per hour worked for the payment. + */ + public ContractorPaymentListing withHourlyRate(Optional hourlyRate) { + Utils.checkNotNull(hourlyRate, "hourlyRate"); + this.hourlyRate = hourlyRate; + return this; + } + + /** + * The payment method. + */ + public ContractorPaymentListing withPaymentMethod(ContractorPaymentListingPaymentMethod paymentMethod) { + Utils.checkNotNull(paymentMethod, "paymentMethod"); + this.paymentMethod = Optional.ofNullable(paymentMethod); + return this; + } + + + /** + * The payment method. + */ + public ContractorPaymentListing withPaymentMethod(Optional paymentMethod) { + Utils.checkNotNull(paymentMethod, "paymentMethod"); + this.paymentMethod = paymentMethod; + return this; + } + + /** + * The reimbursement amount in the payment. + */ + public ContractorPaymentListing withReimbursement(String reimbursement) { + Utils.checkNotNull(reimbursement, "reimbursement"); + this.reimbursement = Optional.ofNullable(reimbursement); + return this; + } + + + /** + * The reimbursement amount in the payment. + */ + public ContractorPaymentListing withReimbursement(Optional reimbursement) { + Utils.checkNotNull(reimbursement, "reimbursement"); + this.reimbursement = reimbursement; + return this; + } + + /** + * Contractor payment status + */ + public ContractorPaymentListing withStatus(ContractorPaymentListingStatus status) { + Utils.checkNotNull(status, "status"); + this.status = Optional.ofNullable(status); + return this; + } + + + /** + * Contractor payment status + */ + public ContractorPaymentListing withStatus(Optional status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + /** + * The fixed wage of the payment, regardless of hours worked. + */ + public ContractorPaymentListing withWage(String wage) { + Utils.checkNotNull(wage, "wage"); + this.wage = Optional.ofNullable(wage); + return this; + } + + + /** + * The fixed wage of the payment, regardless of hours worked. + */ + public ContractorPaymentListing withWage(Optional wage) { + Utils.checkNotNull(wage, "wage"); + this.wage = wage; + return this; + } + + /** + * The wage type for the payment. + */ + public ContractorPaymentListing withWageType(ContractorPaymentListingWageType wageType) { + Utils.checkNotNull(wageType, "wageType"); + this.wageType = Optional.ofNullable(wageType); + return this; + } + + + /** + * The wage type for the payment. + */ + public ContractorPaymentListing withWageType(Optional wageType) { + Utils.checkNotNull(wageType, "wageType"); + this.wageType = wageType; + return this; + } + + /** + * (hours * hourly_rate) + wage + bonus + */ + public ContractorPaymentListing withWageTotal(String wageTotal) { + Utils.checkNotNull(wageTotal, "wageTotal"); + this.wageTotal = Optional.ofNullable(wageTotal); + return this; + } + + + /** + * (hours * hourly_rate) + wage + bonus + */ + public ContractorPaymentListing withWageTotal(Optional wageTotal) { + Utils.checkNotNull(wageTotal, "wageTotal"); + this.wageTotal = wageTotal; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + ContractorPaymentListing other = (ContractorPaymentListing) o; + return + Utils.enhancedDeepEquals(this.uuid, other.uuid) && + Utils.enhancedDeepEquals(this.checkDate, other.checkDate) && + Utils.enhancedDeepEquals(this.bonus, other.bonus) && + Utils.enhancedDeepEquals(this.hours, other.hours) && + Utils.enhancedDeepEquals(this.hourlyRate, other.hourlyRate) && + Utils.enhancedDeepEquals(this.paymentMethod, other.paymentMethod) && + Utils.enhancedDeepEquals(this.reimbursement, other.reimbursement) && + Utils.enhancedDeepEquals(this.status, other.status) && + Utils.enhancedDeepEquals(this.wage, other.wage) && + Utils.enhancedDeepEquals(this.wageType, other.wageType) && + Utils.enhancedDeepEquals(this.wageTotal, other.wageTotal); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + uuid, checkDate, bonus, + hours, hourlyRate, paymentMethod, + reimbursement, status, wage, + wageType, wageTotal); + } + + @Override + public String toString() { + return Utils.toString(ContractorPaymentListing.class, + "uuid", uuid, + "checkDate", checkDate, + "bonus", bonus, + "hours", hours, + "hourlyRate", hourlyRate, + "paymentMethod", paymentMethod, + "reimbursement", reimbursement, + "status", status, + "wage", wage, + "wageType", wageType, + "wageTotal", wageTotal); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String uuid; + + private Optional checkDate = Optional.empty(); + + private Optional bonus = Optional.empty(); + + private Optional hours = Optional.empty(); + + private Optional hourlyRate = Optional.empty(); + + private Optional paymentMethod = Optional.empty(); + + private Optional reimbursement = Optional.empty(); + + private Optional status = Optional.empty(); + + private Optional wage = Optional.empty(); + + private Optional wageType = Optional.empty(); + + private Optional wageTotal = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * The unique identifier of the contractor payment in Gusto. + */ + public Builder uuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + + /** + * The check date for the payment. + */ + public Builder checkDate(LocalDate checkDate) { + Utils.checkNotNull(checkDate, "checkDate"); + this.checkDate = Optional.ofNullable(checkDate); + return this; + } + + /** + * The check date for the payment. + */ + public Builder checkDate(Optional checkDate) { + Utils.checkNotNull(checkDate, "checkDate"); + this.checkDate = checkDate; + return this; + } + + + /** + * The bonus amount in the payment. + */ + public Builder bonus(String bonus) { + Utils.checkNotNull(bonus, "bonus"); + this.bonus = Optional.ofNullable(bonus); + return this; + } + + /** + * The bonus amount in the payment. + */ + public Builder bonus(Optional bonus) { + Utils.checkNotNull(bonus, "bonus"); + this.bonus = bonus; + return this; + } + + + /** + * The number of hours worked for the payment. + */ + public Builder hours(String hours) { + Utils.checkNotNull(hours, "hours"); + this.hours = Optional.ofNullable(hours); + return this; + } + + /** + * The number of hours worked for the payment. + */ + public Builder hours(Optional hours) { + Utils.checkNotNull(hours, "hours"); + this.hours = hours; + return this; + } + + + /** + * The rate per hour worked for the payment. + */ + public Builder hourlyRate(String hourlyRate) { + Utils.checkNotNull(hourlyRate, "hourlyRate"); + this.hourlyRate = Optional.ofNullable(hourlyRate); + return this; + } + + /** + * The rate per hour worked for the payment. + */ + public Builder hourlyRate(Optional hourlyRate) { + Utils.checkNotNull(hourlyRate, "hourlyRate"); + this.hourlyRate = hourlyRate; + return this; + } + + + /** + * The payment method. + */ + public Builder paymentMethod(ContractorPaymentListingPaymentMethod paymentMethod) { + Utils.checkNotNull(paymentMethod, "paymentMethod"); + this.paymentMethod = Optional.ofNullable(paymentMethod); + return this; + } + + /** + * The payment method. + */ + public Builder paymentMethod(Optional paymentMethod) { + Utils.checkNotNull(paymentMethod, "paymentMethod"); + this.paymentMethod = paymentMethod; + return this; + } + + + /** + * The reimbursement amount in the payment. + */ + public Builder reimbursement(String reimbursement) { + Utils.checkNotNull(reimbursement, "reimbursement"); + this.reimbursement = Optional.ofNullable(reimbursement); + return this; + } + + /** + * The reimbursement amount in the payment. + */ + public Builder reimbursement(Optional reimbursement) { + Utils.checkNotNull(reimbursement, "reimbursement"); + this.reimbursement = reimbursement; + return this; + } + + + /** + * Contractor payment status + */ + public Builder status(ContractorPaymentListingStatus status) { + Utils.checkNotNull(status, "status"); + this.status = Optional.ofNullable(status); + return this; + } + + /** + * Contractor payment status + */ + public Builder status(Optional status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + + /** + * The fixed wage of the payment, regardless of hours worked. + */ + public Builder wage(String wage) { + Utils.checkNotNull(wage, "wage"); + this.wage = Optional.ofNullable(wage); + return this; + } + + /** + * The fixed wage of the payment, regardless of hours worked. + */ + public Builder wage(Optional wage) { + Utils.checkNotNull(wage, "wage"); + this.wage = wage; + return this; + } + + + /** + * The wage type for the payment. + */ + public Builder wageType(ContractorPaymentListingWageType wageType) { + Utils.checkNotNull(wageType, "wageType"); + this.wageType = Optional.ofNullable(wageType); + return this; + } + + /** + * The wage type for the payment. + */ + public Builder wageType(Optional wageType) { + Utils.checkNotNull(wageType, "wageType"); + this.wageType = wageType; + return this; + } + + + /** + * (hours * hourly_rate) + wage + bonus + */ + public Builder wageTotal(String wageTotal) { + Utils.checkNotNull(wageTotal, "wageTotal"); + this.wageTotal = Optional.ofNullable(wageTotal); + return this; + } + + /** + * (hours * hourly_rate) + wage + bonus + */ + public Builder wageTotal(Optional wageTotal) { + Utils.checkNotNull(wageTotal, "wageTotal"); + this.wageTotal = wageTotal; + return this; + } + + public ContractorPaymentListing build() { + + return new ContractorPaymentListing( + uuid, checkDate, bonus, + hours, hourlyRate, paymentMethod, + reimbursement, status, wage, + wageType, wageTotal); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentListingPaymentMethod.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentListingPaymentMethod.java new file mode 100644 index 000000000..7ee16b4da --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentListingPaymentMethod.java @@ -0,0 +1,42 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * ContractorPaymentListingPaymentMethod + * + *

    The payment method. + */ +public enum ContractorPaymentListingPaymentMethod { + DIRECT_DEPOSIT("Direct Deposit"), + CHECK("Check"), + HISTORICAL_PAYMENT("Historical Payment"), + CORRECTION_PAYMENT("Correction Payment"); + + @JsonValue + private final String value; + + ContractorPaymentListingPaymentMethod(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (ContractorPaymentListingPaymentMethod o: ContractorPaymentListingPaymentMethod.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentListingStatus.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentListingStatus.java new file mode 100644 index 000000000..878ee006a --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentListingStatus.java @@ -0,0 +1,40 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * ContractorPaymentListingStatus + * + *

    Contractor payment status + */ +public enum ContractorPaymentListingStatus { + FUNDED("Funded"), + UNFUNDED("Unfunded"); + + @JsonValue + private final String value; + + ContractorPaymentListingStatus(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (ContractorPaymentListingStatus o: ContractorPaymentListingStatus.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentForGroupPreviewWageType.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentListingWageType.java similarity index 64% rename from gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentForGroupPreviewWageType.java rename to gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentListingWageType.java index 4dc79d75a..d27c59534 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentForGroupPreviewWageType.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentListingWageType.java @@ -9,18 +9,18 @@ import java.util.Optional; /** - * ContractorPaymentForGroupPreviewWageType + * ContractorPaymentListingWageType * *

    The wage type for the payment. */ -public enum ContractorPaymentForGroupPreviewWageType { +public enum ContractorPaymentListingWageType { HOURLY("Hourly"), FIXED("Fixed"); @JsonValue private final String value; - ContractorPaymentForGroupPreviewWageType(String value) { + ContractorPaymentListingWageType(String value) { this.value = value; } @@ -28,8 +28,8 @@ public String value() { return value; } - public static Optional fromValue(String value) { - for (ContractorPaymentForGroupPreviewWageType o: ContractorPaymentForGroupPreviewWageType.values()) { + public static Optional fromValue(String value) { + for (ContractorPaymentListingWageType o: ContractorPaymentListingWageType.values()) { if (Objects.deepEquals(o.value, value)) { return Optional.of(o); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentReceipt.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentReceipt.java index ddeccf454..0f744f875 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentReceipt.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentReceipt.java @@ -99,14 +99,14 @@ public class ContractorPaymentReceipt { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("contractor_payments") - private Optional> contractorPayments; + private Optional> contractorPayments; /** * The licensed payroll processor */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("licensee") - private Optional licensee; + private Optional licensee; @JsonCreator public ContractorPaymentReceipt( @@ -120,8 +120,8 @@ public ContractorPaymentReceipt( @JsonProperty("right_to_refund") Optional rightToRefund, @JsonProperty("liability_of_licensee") Optional liabilityOfLicensee, @JsonProperty("totals") Optional totals, - @JsonProperty("contractor_payments") Optional> contractorPayments, - @JsonProperty("licensee") Optional licensee) { + @JsonProperty("contractor_payments") Optional> contractorPayments, + @JsonProperty("licensee") Optional licensee) { Utils.checkNotNull(contractorPaymentUuid, "contractorPaymentUuid"); Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(nameOfSender, "nameOfSender"); @@ -247,8 +247,8 @@ public Optional totals() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional> contractorPayments() { - return (Optional>) contractorPayments; + public Optional> contractorPayments() { + return (Optional>) contractorPayments; } /** @@ -256,8 +256,8 @@ public Optional> contractorPayments() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional licensee() { - return (Optional) licensee; + public Optional licensee() { + return (Optional) licensee; } public static Builder builder() { @@ -470,7 +470,7 @@ public ContractorPaymentReceipt withTotals(Optional contractorPayments) { + public ContractorPaymentReceipt withContractorPayments(List contractorPayments) { Utils.checkNotNull(contractorPayments, "contractorPayments"); this.contractorPayments = Optional.ofNullable(contractorPayments); return this; @@ -480,7 +480,7 @@ public ContractorPaymentReceipt withContractorPayments(List /** * An array of contractor payments for this contractor payment. */ - public ContractorPaymentReceipt withContractorPayments(Optional> contractorPayments) { + public ContractorPaymentReceipt withContractorPayments(Optional> contractorPayments) { Utils.checkNotNull(contractorPayments, "contractorPayments"); this.contractorPayments = contractorPayments; return this; @@ -489,7 +489,7 @@ public ContractorPaymentReceipt withContractorPayments(Optional licensee) { + public ContractorPaymentReceipt withLicensee(Optional licensee) { Utils.checkNotNull(licensee, "licensee"); this.licensee = licensee; return this; @@ -578,9 +578,9 @@ public final static class Builder { private Optional totals = Optional.empty(); - private Optional> contractorPayments = Optional.empty(); + private Optional> contractorPayments = Optional.empty(); - private Optional licensee = Optional.empty(); + private Optional licensee = Optional.empty(); private Builder() { // force use of static builder() method @@ -792,7 +792,7 @@ public Builder totals(Optional totals) /** * An array of contractor payments for this contractor payment. */ - public Builder contractorPayments(List contractorPayments) { + public Builder contractorPayments(List contractorPayments) { Utils.checkNotNull(contractorPayments, "contractorPayments"); this.contractorPayments = Optional.ofNullable(contractorPayments); return this; @@ -801,7 +801,7 @@ public Builder contractorPayments(List contractorPayments) { /** * An array of contractor payments for this contractor payment. */ - public Builder contractorPayments(Optional> contractorPayments) { + public Builder contractorPayments(Optional> contractorPayments) { Utils.checkNotNull(contractorPayments, "contractorPayments"); this.contractorPayments = contractorPayments; return this; @@ -811,7 +811,7 @@ public Builder contractorPayments(Optional> c /** * The licensed payroll processor */ - public Builder licensee(ContractorPaymentReceiptLicensee licensee) { + public Builder licensee(Licensee licensee) { Utils.checkNotNull(licensee, "licensee"); this.licensee = Optional.ofNullable(licensee); return this; @@ -820,7 +820,7 @@ public Builder licensee(ContractorPaymentReceiptLicensee licensee) { /** * The licensed payroll processor */ - public Builder licensee(Optional licensee) { + public Builder licensee(Optional licensee) { Utils.checkNotNull(licensee, "licensee"); this.licensee = licensee; return this; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentReceiptContractorPayments.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentReceiptContractorPayments.java new file mode 100644 index 000000000..b77b969df --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentReceiptContractorPayments.java @@ -0,0 +1,628 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class ContractorPaymentReceiptContractorPayments { + /** + * The UUID of the contractor. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("contractor_uuid") + private Optional contractorUuid; + + /** + * The first name of the contractor. Applies when `contractor_type` is `Individual`. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("contractor_first_name") + private Optional contractorFirstName; + + /** + * The last name of the contractor. Applies when `contractor_type` is `Individual`. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("contractor_last_name") + private Optional contractorLastName; + + /** + * The business name of the contractor. Applies when `contractor_type` is `Business`. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("contractor_business_name") + private Optional contractorBusinessName; + + /** + * The type of contractor. + * + *

    `Individual` `Business` + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("contractor_type") + private Optional contractorType; + + /** + * The payment method. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("payment_method") + private Optional paymentMethod; + + /** + * The fixed wage of the payment, regardless of hours worked. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("wage") + private Optional wage; + + /** + * The bonus amount in the payment. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("bonus") + private Optional bonus; + + /** + * The reimbursement amount in the payment. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("reimbursement") + private Optional reimbursement; + + @JsonCreator + public ContractorPaymentReceiptContractorPayments( + @JsonProperty("contractor_uuid") Optional contractorUuid, + @JsonProperty("contractor_first_name") Optional contractorFirstName, + @JsonProperty("contractor_last_name") Optional contractorLastName, + @JsonProperty("contractor_business_name") Optional contractorBusinessName, + @JsonProperty("contractor_type") Optional contractorType, + @JsonProperty("payment_method") Optional paymentMethod, + @JsonProperty("wage") Optional wage, + @JsonProperty("bonus") Optional bonus, + @JsonProperty("reimbursement") Optional reimbursement) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + Utils.checkNotNull(contractorFirstName, "contractorFirstName"); + Utils.checkNotNull(contractorLastName, "contractorLastName"); + Utils.checkNotNull(contractorBusinessName, "contractorBusinessName"); + Utils.checkNotNull(contractorType, "contractorType"); + Utils.checkNotNull(paymentMethod, "paymentMethod"); + Utils.checkNotNull(wage, "wage"); + Utils.checkNotNull(bonus, "bonus"); + Utils.checkNotNull(reimbursement, "reimbursement"); + this.contractorUuid = contractorUuid; + this.contractorFirstName = contractorFirstName; + this.contractorLastName = contractorLastName; + this.contractorBusinessName = contractorBusinessName; + this.contractorType = contractorType; + this.paymentMethod = paymentMethod; + this.wage = wage; + this.bonus = bonus; + this.reimbursement = reimbursement; + } + + public ContractorPaymentReceiptContractorPayments() { + this(Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty(), Optional.empty(), Optional.empty()); + } + + /** + * The UUID of the contractor. + */ + @JsonIgnore + public Optional contractorUuid() { + return contractorUuid; + } + + /** + * The first name of the contractor. Applies when `contractor_type` is `Individual`. + */ + @JsonIgnore + public Optional contractorFirstName() { + return contractorFirstName; + } + + /** + * The last name of the contractor. Applies when `contractor_type` is `Individual`. + */ + @JsonIgnore + public Optional contractorLastName() { + return contractorLastName; + } + + /** + * The business name of the contractor. Applies when `contractor_type` is `Business`. + */ + @JsonIgnore + public Optional contractorBusinessName() { + return contractorBusinessName; + } + + /** + * The type of contractor. + * + *

    `Individual` `Business` + */ + @JsonIgnore + public Optional contractorType() { + return contractorType; + } + + /** + * The payment method. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional paymentMethod() { + return (Optional) paymentMethod; + } + + /** + * The fixed wage of the payment, regardless of hours worked. + */ + @JsonIgnore + public Optional wage() { + return wage; + } + + /** + * The bonus amount in the payment. + */ + @JsonIgnore + public Optional bonus() { + return bonus; + } + + /** + * The reimbursement amount in the payment. + */ + @JsonIgnore + public Optional reimbursement() { + return reimbursement; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * The UUID of the contractor. + */ + public ContractorPaymentReceiptContractorPayments withContractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = Optional.ofNullable(contractorUuid); + return this; + } + + + /** + * The UUID of the contractor. + */ + public ContractorPaymentReceiptContractorPayments withContractorUuid(Optional contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + + /** + * The first name of the contractor. Applies when `contractor_type` is `Individual`. + */ + public ContractorPaymentReceiptContractorPayments withContractorFirstName(String contractorFirstName) { + Utils.checkNotNull(contractorFirstName, "contractorFirstName"); + this.contractorFirstName = Optional.ofNullable(contractorFirstName); + return this; + } + + + /** + * The first name of the contractor. Applies when `contractor_type` is `Individual`. + */ + public ContractorPaymentReceiptContractorPayments withContractorFirstName(Optional contractorFirstName) { + Utils.checkNotNull(contractorFirstName, "contractorFirstName"); + this.contractorFirstName = contractorFirstName; + return this; + } + + /** + * The last name of the contractor. Applies when `contractor_type` is `Individual`. + */ + public ContractorPaymentReceiptContractorPayments withContractorLastName(String contractorLastName) { + Utils.checkNotNull(contractorLastName, "contractorLastName"); + this.contractorLastName = Optional.ofNullable(contractorLastName); + return this; + } + + + /** + * The last name of the contractor. Applies when `contractor_type` is `Individual`. + */ + public ContractorPaymentReceiptContractorPayments withContractorLastName(Optional contractorLastName) { + Utils.checkNotNull(contractorLastName, "contractorLastName"); + this.contractorLastName = contractorLastName; + return this; + } + + /** + * The business name of the contractor. Applies when `contractor_type` is `Business`. + */ + public ContractorPaymentReceiptContractorPayments withContractorBusinessName(String contractorBusinessName) { + Utils.checkNotNull(contractorBusinessName, "contractorBusinessName"); + this.contractorBusinessName = Optional.ofNullable(contractorBusinessName); + return this; + } + + + /** + * The business name of the contractor. Applies when `contractor_type` is `Business`. + */ + public ContractorPaymentReceiptContractorPayments withContractorBusinessName(Optional contractorBusinessName) { + Utils.checkNotNull(contractorBusinessName, "contractorBusinessName"); + this.contractorBusinessName = contractorBusinessName; + return this; + } + + /** + * The type of contractor. + * + *

    `Individual` `Business` + */ + public ContractorPaymentReceiptContractorPayments withContractorType(String contractorType) { + Utils.checkNotNull(contractorType, "contractorType"); + this.contractorType = Optional.ofNullable(contractorType); + return this; + } + + + /** + * The type of contractor. + * + *

    `Individual` `Business` + */ + public ContractorPaymentReceiptContractorPayments withContractorType(Optional contractorType) { + Utils.checkNotNull(contractorType, "contractorType"); + this.contractorType = contractorType; + return this; + } + + /** + * The payment method. + */ + public ContractorPaymentReceiptContractorPayments withPaymentMethod(ContractorPaymentReceiptPaymentMethod paymentMethod) { + Utils.checkNotNull(paymentMethod, "paymentMethod"); + this.paymentMethod = Optional.ofNullable(paymentMethod); + return this; + } + + + /** + * The payment method. + */ + public ContractorPaymentReceiptContractorPayments withPaymentMethod(Optional paymentMethod) { + Utils.checkNotNull(paymentMethod, "paymentMethod"); + this.paymentMethod = paymentMethod; + return this; + } + + /** + * The fixed wage of the payment, regardless of hours worked. + */ + public ContractorPaymentReceiptContractorPayments withWage(String wage) { + Utils.checkNotNull(wage, "wage"); + this.wage = Optional.ofNullable(wage); + return this; + } + + + /** + * The fixed wage of the payment, regardless of hours worked. + */ + public ContractorPaymentReceiptContractorPayments withWage(Optional wage) { + Utils.checkNotNull(wage, "wage"); + this.wage = wage; + return this; + } + + /** + * The bonus amount in the payment. + */ + public ContractorPaymentReceiptContractorPayments withBonus(String bonus) { + Utils.checkNotNull(bonus, "bonus"); + this.bonus = Optional.ofNullable(bonus); + return this; + } + + + /** + * The bonus amount in the payment. + */ + public ContractorPaymentReceiptContractorPayments withBonus(Optional bonus) { + Utils.checkNotNull(bonus, "bonus"); + this.bonus = bonus; + return this; + } + + /** + * The reimbursement amount in the payment. + */ + public ContractorPaymentReceiptContractorPayments withReimbursement(String reimbursement) { + Utils.checkNotNull(reimbursement, "reimbursement"); + this.reimbursement = Optional.ofNullable(reimbursement); + return this; + } + + + /** + * The reimbursement amount in the payment. + */ + public ContractorPaymentReceiptContractorPayments withReimbursement(Optional reimbursement) { + Utils.checkNotNull(reimbursement, "reimbursement"); + this.reimbursement = reimbursement; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + ContractorPaymentReceiptContractorPayments other = (ContractorPaymentReceiptContractorPayments) o; + return + Utils.enhancedDeepEquals(this.contractorUuid, other.contractorUuid) && + Utils.enhancedDeepEquals(this.contractorFirstName, other.contractorFirstName) && + Utils.enhancedDeepEquals(this.contractorLastName, other.contractorLastName) && + Utils.enhancedDeepEquals(this.contractorBusinessName, other.contractorBusinessName) && + Utils.enhancedDeepEquals(this.contractorType, other.contractorType) && + Utils.enhancedDeepEquals(this.paymentMethod, other.paymentMethod) && + Utils.enhancedDeepEquals(this.wage, other.wage) && + Utils.enhancedDeepEquals(this.bonus, other.bonus) && + Utils.enhancedDeepEquals(this.reimbursement, other.reimbursement); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contractorUuid, contractorFirstName, contractorLastName, + contractorBusinessName, contractorType, paymentMethod, + wage, bonus, reimbursement); + } + + @Override + public String toString() { + return Utils.toString(ContractorPaymentReceiptContractorPayments.class, + "contractorUuid", contractorUuid, + "contractorFirstName", contractorFirstName, + "contractorLastName", contractorLastName, + "contractorBusinessName", contractorBusinessName, + "contractorType", contractorType, + "paymentMethod", paymentMethod, + "wage", wage, + "bonus", bonus, + "reimbursement", reimbursement); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional contractorUuid = Optional.empty(); + + private Optional contractorFirstName = Optional.empty(); + + private Optional contractorLastName = Optional.empty(); + + private Optional contractorBusinessName = Optional.empty(); + + private Optional contractorType = Optional.empty(); + + private Optional paymentMethod = Optional.empty(); + + private Optional wage = Optional.empty(); + + private Optional bonus = Optional.empty(); + + private Optional reimbursement = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * The UUID of the contractor. + */ + public Builder contractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = Optional.ofNullable(contractorUuid); + return this; + } + + /** + * The UUID of the contractor. + */ + public Builder contractorUuid(Optional contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + + + /** + * The first name of the contractor. Applies when `contractor_type` is `Individual`. + */ + public Builder contractorFirstName(String contractorFirstName) { + Utils.checkNotNull(contractorFirstName, "contractorFirstName"); + this.contractorFirstName = Optional.ofNullable(contractorFirstName); + return this; + } + + /** + * The first name of the contractor. Applies when `contractor_type` is `Individual`. + */ + public Builder contractorFirstName(Optional contractorFirstName) { + Utils.checkNotNull(contractorFirstName, "contractorFirstName"); + this.contractorFirstName = contractorFirstName; + return this; + } + + + /** + * The last name of the contractor. Applies when `contractor_type` is `Individual`. + */ + public Builder contractorLastName(String contractorLastName) { + Utils.checkNotNull(contractorLastName, "contractorLastName"); + this.contractorLastName = Optional.ofNullable(contractorLastName); + return this; + } + + /** + * The last name of the contractor. Applies when `contractor_type` is `Individual`. + */ + public Builder contractorLastName(Optional contractorLastName) { + Utils.checkNotNull(contractorLastName, "contractorLastName"); + this.contractorLastName = contractorLastName; + return this; + } + + + /** + * The business name of the contractor. Applies when `contractor_type` is `Business`. + */ + public Builder contractorBusinessName(String contractorBusinessName) { + Utils.checkNotNull(contractorBusinessName, "contractorBusinessName"); + this.contractorBusinessName = Optional.ofNullable(contractorBusinessName); + return this; + } + + /** + * The business name of the contractor. Applies when `contractor_type` is `Business`. + */ + public Builder contractorBusinessName(Optional contractorBusinessName) { + Utils.checkNotNull(contractorBusinessName, "contractorBusinessName"); + this.contractorBusinessName = contractorBusinessName; + return this; + } + + + /** + * The type of contractor. + * + *

    `Individual` `Business` + */ + public Builder contractorType(String contractorType) { + Utils.checkNotNull(contractorType, "contractorType"); + this.contractorType = Optional.ofNullable(contractorType); + return this; + } + + /** + * The type of contractor. + * + *

    `Individual` `Business` + */ + public Builder contractorType(Optional contractorType) { + Utils.checkNotNull(contractorType, "contractorType"); + this.contractorType = contractorType; + return this; + } + + + /** + * The payment method. + */ + public Builder paymentMethod(ContractorPaymentReceiptPaymentMethod paymentMethod) { + Utils.checkNotNull(paymentMethod, "paymentMethod"); + this.paymentMethod = Optional.ofNullable(paymentMethod); + return this; + } + + /** + * The payment method. + */ + public Builder paymentMethod(Optional paymentMethod) { + Utils.checkNotNull(paymentMethod, "paymentMethod"); + this.paymentMethod = paymentMethod; + return this; + } + + + /** + * The fixed wage of the payment, regardless of hours worked. + */ + public Builder wage(String wage) { + Utils.checkNotNull(wage, "wage"); + this.wage = Optional.ofNullable(wage); + return this; + } + + /** + * The fixed wage of the payment, regardless of hours worked. + */ + public Builder wage(Optional wage) { + Utils.checkNotNull(wage, "wage"); + this.wage = wage; + return this; + } + + + /** + * The bonus amount in the payment. + */ + public Builder bonus(String bonus) { + Utils.checkNotNull(bonus, "bonus"); + this.bonus = Optional.ofNullable(bonus); + return this; + } + + /** + * The bonus amount in the payment. + */ + public Builder bonus(Optional bonus) { + Utils.checkNotNull(bonus, "bonus"); + this.bonus = bonus; + return this; + } + + + /** + * The reimbursement amount in the payment. + */ + public Builder reimbursement(String reimbursement) { + Utils.checkNotNull(reimbursement, "reimbursement"); + this.reimbursement = Optional.ofNullable(reimbursement); + return this; + } + + /** + * The reimbursement amount in the payment. + */ + public Builder reimbursement(Optional reimbursement) { + Utils.checkNotNull(reimbursement, "reimbursement"); + this.reimbursement = reimbursement; + return this; + } + + public ContractorPaymentReceiptContractorPayments build() { + + return new ContractorPaymentReceiptContractorPayments( + contractorUuid, contractorFirstName, contractorLastName, + contractorBusinessName, contractorType, paymentMethod, + wage, bonus, reimbursement); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentSummary.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentSummary.java index 99f55d152..0f1929ec9 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentSummary.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentSummary.java @@ -33,12 +33,12 @@ public class ContractorPaymentSummary { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("contractor_payments") - private Optional> contractorPayments; + private Optional> contractorPayments; @JsonCreator public ContractorPaymentSummary( @JsonProperty("total") Optional total, - @JsonProperty("contractor_payments") Optional> contractorPayments) { + @JsonProperty("contractor_payments") Optional> contractorPayments) { Utils.checkNotNull(total, "total"); Utils.checkNotNull(contractorPayments, "contractorPayments"); this.total = total; @@ -63,8 +63,8 @@ public Optional total() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional> contractorPayments() { - return (Optional>) contractorPayments; + public Optional> contractorPayments() { + return (Optional>) contractorPayments; } public static Builder builder() { @@ -94,7 +94,7 @@ public ContractorPaymentSummary withTotal(Optional total) { /** * The individual contractor payments, within a given time period, grouped by contractor. */ - public ContractorPaymentSummary withContractorPayments(List contractorPayments) { + public ContractorPaymentSummary withContractorPayments(List contractorPayments) { Utils.checkNotNull(contractorPayments, "contractorPayments"); this.contractorPayments = Optional.ofNullable(contractorPayments); return this; @@ -104,7 +104,7 @@ public ContractorPaymentSummary withContractorPayments(List> contractorPayments) { + public ContractorPaymentSummary withContractorPayments(Optional> contractorPayments) { Utils.checkNotNull(contractorPayments, "contractorPayments"); this.contractorPayments = contractorPayments; return this; @@ -142,7 +142,7 @@ public final static class Builder { private Optional total = Optional.empty(); - private Optional> contractorPayments = Optional.empty(); + private Optional> contractorPayments = Optional.empty(); private Builder() { // force use of static builder() method @@ -171,7 +171,7 @@ public Builder total(Optional total) { /** * The individual contractor payments, within a given time period, grouped by contractor. */ - public Builder contractorPayments(List contractorPayments) { + public Builder contractorPayments(List contractorPayments) { Utils.checkNotNull(contractorPayments, "contractorPayments"); this.contractorPayments = Optional.ofNullable(contractorPayments); return this; @@ -180,7 +180,7 @@ public Builder contractorPayments(List> contractorPayments) { + public Builder contractorPayments(Optional> contractorPayments) { Utils.checkNotNull(contractorPayments, "contractorPayments"); this.contractorPayments = contractorPayments; return this; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentSummaryContractorPayments.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentSummaryContractorPayments.java deleted file mode 100644 index 58ef9eb8b..000000000 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentSummaryContractorPayments.java +++ /dev/null @@ -1,315 +0,0 @@ -/* - * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - */ -package com.gusto.embedded_api.models.components; - -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonIgnore; -import com.fasterxml.jackson.annotation.JsonInclude.Include; -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.gusto.embedded_api.utils.Utils; -import java.lang.Double; -import java.lang.Override; -import java.lang.String; -import java.lang.SuppressWarnings; -import java.util.List; -import java.util.Optional; - - -public class ContractorPaymentSummaryContractorPayments { - /** - * The UUID of the contractor. - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("contractor_uuid") - private Optional contractorUuid; - - /** - * The total reimbursements for the contractor within a given time period. - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("reimbursement_total") - private Optional reimbursementTotal; - - /** - * The total wages for the contractor within a given time period. - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("wage_total") - private Optional wageTotal; - - /** - * The contractor's payments within a given time period. - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("payments") - private Optional> payments; - - @JsonCreator - public ContractorPaymentSummaryContractorPayments( - @JsonProperty("contractor_uuid") Optional contractorUuid, - @JsonProperty("reimbursement_total") Optional reimbursementTotal, - @JsonProperty("wage_total") Optional wageTotal, - @JsonProperty("payments") Optional> payments) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); - Utils.checkNotNull(reimbursementTotal, "reimbursementTotal"); - Utils.checkNotNull(wageTotal, "wageTotal"); - Utils.checkNotNull(payments, "payments"); - this.contractorUuid = contractorUuid; - this.reimbursementTotal = reimbursementTotal; - this.wageTotal = wageTotal; - this.payments = payments; - } - - public ContractorPaymentSummaryContractorPayments() { - this(Optional.empty(), Optional.empty(), Optional.empty(), - Optional.empty()); - } - - /** - * The UUID of the contractor. - */ - @JsonIgnore - public Optional contractorUuid() { - return contractorUuid; - } - - /** - * The total reimbursements for the contractor within a given time period. - */ - @JsonIgnore - public Optional reimbursementTotal() { - return reimbursementTotal; - } - - /** - * The total wages for the contractor within a given time period. - */ - @JsonIgnore - public Optional wageTotal() { - return wageTotal; - } - - /** - * The contractor's payments within a given time period. - */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional> payments() { - return (Optional>) payments; - } - - public static Builder builder() { - return new Builder(); - } - - - /** - * The UUID of the contractor. - */ - public ContractorPaymentSummaryContractorPayments withContractorUuid(double contractorUuid) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); - this.contractorUuid = Optional.ofNullable(contractorUuid); - return this; - } - - - /** - * The UUID of the contractor. - */ - public ContractorPaymentSummaryContractorPayments withContractorUuid(Optional contractorUuid) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); - this.contractorUuid = contractorUuid; - return this; - } - - /** - * The total reimbursements for the contractor within a given time period. - */ - public ContractorPaymentSummaryContractorPayments withReimbursementTotal(String reimbursementTotal) { - Utils.checkNotNull(reimbursementTotal, "reimbursementTotal"); - this.reimbursementTotal = Optional.ofNullable(reimbursementTotal); - return this; - } - - - /** - * The total reimbursements for the contractor within a given time period. - */ - public ContractorPaymentSummaryContractorPayments withReimbursementTotal(Optional reimbursementTotal) { - Utils.checkNotNull(reimbursementTotal, "reimbursementTotal"); - this.reimbursementTotal = reimbursementTotal; - return this; - } - - /** - * The total wages for the contractor within a given time period. - */ - public ContractorPaymentSummaryContractorPayments withWageTotal(String wageTotal) { - Utils.checkNotNull(wageTotal, "wageTotal"); - this.wageTotal = Optional.ofNullable(wageTotal); - return this; - } - - - /** - * The total wages for the contractor within a given time period. - */ - public ContractorPaymentSummaryContractorPayments withWageTotal(Optional wageTotal) { - Utils.checkNotNull(wageTotal, "wageTotal"); - this.wageTotal = wageTotal; - return this; - } - - /** - * The contractor's payments within a given time period. - */ - public ContractorPaymentSummaryContractorPayments withPayments(List payments) { - Utils.checkNotNull(payments, "payments"); - this.payments = Optional.ofNullable(payments); - return this; - } - - - /** - * The contractor's payments within a given time period. - */ - public ContractorPaymentSummaryContractorPayments withPayments(Optional> payments) { - Utils.checkNotNull(payments, "payments"); - this.payments = payments; - return this; - } - - @Override - public boolean equals(java.lang.Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - ContractorPaymentSummaryContractorPayments other = (ContractorPaymentSummaryContractorPayments) o; - return - Utils.enhancedDeepEquals(this.contractorUuid, other.contractorUuid) && - Utils.enhancedDeepEquals(this.reimbursementTotal, other.reimbursementTotal) && - Utils.enhancedDeepEquals(this.wageTotal, other.wageTotal) && - Utils.enhancedDeepEquals(this.payments, other.payments); - } - - @Override - public int hashCode() { - return Utils.enhancedHash( - contractorUuid, reimbursementTotal, wageTotal, - payments); - } - - @Override - public String toString() { - return Utils.toString(ContractorPaymentSummaryContractorPayments.class, - "contractorUuid", contractorUuid, - "reimbursementTotal", reimbursementTotal, - "wageTotal", wageTotal, - "payments", payments); - } - - @SuppressWarnings("UnusedReturnValue") - public final static class Builder { - - private Optional contractorUuid = Optional.empty(); - - private Optional reimbursementTotal = Optional.empty(); - - private Optional wageTotal = Optional.empty(); - - private Optional> payments = Optional.empty(); - - private Builder() { - // force use of static builder() method - } - - - /** - * The UUID of the contractor. - */ - public Builder contractorUuid(double contractorUuid) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); - this.contractorUuid = Optional.ofNullable(contractorUuid); - return this; - } - - /** - * The UUID of the contractor. - */ - public Builder contractorUuid(Optional contractorUuid) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); - this.contractorUuid = contractorUuid; - return this; - } - - - /** - * The total reimbursements for the contractor within a given time period. - */ - public Builder reimbursementTotal(String reimbursementTotal) { - Utils.checkNotNull(reimbursementTotal, "reimbursementTotal"); - this.reimbursementTotal = Optional.ofNullable(reimbursementTotal); - return this; - } - - /** - * The total reimbursements for the contractor within a given time period. - */ - public Builder reimbursementTotal(Optional reimbursementTotal) { - Utils.checkNotNull(reimbursementTotal, "reimbursementTotal"); - this.reimbursementTotal = reimbursementTotal; - return this; - } - - - /** - * The total wages for the contractor within a given time period. - */ - public Builder wageTotal(String wageTotal) { - Utils.checkNotNull(wageTotal, "wageTotal"); - this.wageTotal = Optional.ofNullable(wageTotal); - return this; - } - - /** - * The total wages for the contractor within a given time period. - */ - public Builder wageTotal(Optional wageTotal) { - Utils.checkNotNull(wageTotal, "wageTotal"); - this.wageTotal = wageTotal; - return this; - } - - - /** - * The contractor's payments within a given time period. - */ - public Builder payments(List payments) { - Utils.checkNotNull(payments, "payments"); - this.payments = Optional.ofNullable(payments); - return this; - } - - /** - * The contractor's payments within a given time period. - */ - public Builder payments(Optional> payments) { - Utils.checkNotNull(payments, "payments"); - this.payments = payments; - return this; - } - - public ContractorPaymentSummaryContractorPayments build() { - - return new ContractorPaymentSummaryContractorPayments( - contractorUuid, reimbursementTotal, wageTotal, - payments); - } - - } -} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorPayments.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorPayments.java index 3f4960b97..db7c962e4 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorPayments.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorPayments.java @@ -9,9 +9,11 @@ import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.annotation.JsonProperty; import com.gusto.embedded_api.utils.Utils; +import java.lang.Double; import java.lang.Override; import java.lang.String; import java.lang.SuppressWarnings; +import java.util.List; import java.util.Optional; @@ -21,176 +23,81 @@ public class ContractorPayments { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("contractor_uuid") - private Optional contractorUuid; + private Optional contractorUuid; /** - * The first name of the contractor. Applies when `contractor_type` is `Individual`. + * The total reimbursements for the contractor within a given time period. */ @JsonInclude(Include.NON_ABSENT) - @JsonProperty("contractor_first_name") - private Optional contractorFirstName; + @JsonProperty("reimbursement_total") + private Optional reimbursementTotal; /** - * The last name of the contractor. Applies when `contractor_type` is `Individual`. + * The total wages for the contractor within a given time period. */ @JsonInclude(Include.NON_ABSENT) - @JsonProperty("contractor_last_name") - private Optional contractorLastName; + @JsonProperty("wage_total") + private Optional wageTotal; /** - * The business name of the contractor. Applies when `contractor_type` is `Business`. + * The contractor's payments within a given time period. */ @JsonInclude(Include.NON_ABSENT) - @JsonProperty("contractor_business_name") - private Optional contractorBusinessName; - - /** - * The type of contractor. - * - *

    `Individual` `Business` - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("contractor_type") - private Optional contractorType; - - /** - * The payment method. - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("payment_method") - private Optional paymentMethod; - - /** - * The fixed wage of the payment, regardless of hours worked. - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("wage") - private Optional wage; - - /** - * The bonus amount in the payment. - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("bonus") - private Optional bonus; - - /** - * The reimbursement amount in the payment. - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("reimbursement") - private Optional reimbursement; + @JsonProperty("payments") + private Optional> payments; @JsonCreator public ContractorPayments( - @JsonProperty("contractor_uuid") Optional contractorUuid, - @JsonProperty("contractor_first_name") Optional contractorFirstName, - @JsonProperty("contractor_last_name") Optional contractorLastName, - @JsonProperty("contractor_business_name") Optional contractorBusinessName, - @JsonProperty("contractor_type") Optional contractorType, - @JsonProperty("payment_method") Optional paymentMethod, - @JsonProperty("wage") Optional wage, - @JsonProperty("bonus") Optional bonus, - @JsonProperty("reimbursement") Optional reimbursement) { + @JsonProperty("contractor_uuid") Optional contractorUuid, + @JsonProperty("reimbursement_total") Optional reimbursementTotal, + @JsonProperty("wage_total") Optional wageTotal, + @JsonProperty("payments") Optional> payments) { Utils.checkNotNull(contractorUuid, "contractorUuid"); - Utils.checkNotNull(contractorFirstName, "contractorFirstName"); - Utils.checkNotNull(contractorLastName, "contractorLastName"); - Utils.checkNotNull(contractorBusinessName, "contractorBusinessName"); - Utils.checkNotNull(contractorType, "contractorType"); - Utils.checkNotNull(paymentMethod, "paymentMethod"); - Utils.checkNotNull(wage, "wage"); - Utils.checkNotNull(bonus, "bonus"); - Utils.checkNotNull(reimbursement, "reimbursement"); + Utils.checkNotNull(reimbursementTotal, "reimbursementTotal"); + Utils.checkNotNull(wageTotal, "wageTotal"); + Utils.checkNotNull(payments, "payments"); this.contractorUuid = contractorUuid; - this.contractorFirstName = contractorFirstName; - this.contractorLastName = contractorLastName; - this.contractorBusinessName = contractorBusinessName; - this.contractorType = contractorType; - this.paymentMethod = paymentMethod; - this.wage = wage; - this.bonus = bonus; - this.reimbursement = reimbursement; + this.reimbursementTotal = reimbursementTotal; + this.wageTotal = wageTotal; + this.payments = payments; } public ContractorPayments() { this(Optional.empty(), Optional.empty(), Optional.empty(), - Optional.empty(), Optional.empty(), Optional.empty(), - Optional.empty(), Optional.empty(), Optional.empty()); + Optional.empty()); } /** * The UUID of the contractor. */ @JsonIgnore - public Optional contractorUuid() { + public Optional contractorUuid() { return contractorUuid; } /** - * The first name of the contractor. Applies when `contractor_type` is `Individual`. + * The total reimbursements for the contractor within a given time period. */ @JsonIgnore - public Optional contractorFirstName() { - return contractorFirstName; + public Optional reimbursementTotal() { + return reimbursementTotal; } /** - * The last name of the contractor. Applies when `contractor_type` is `Individual`. + * The total wages for the contractor within a given time period. */ @JsonIgnore - public Optional contractorLastName() { - return contractorLastName; + public Optional wageTotal() { + return wageTotal; } /** - * The business name of the contractor. Applies when `contractor_type` is `Business`. - */ - @JsonIgnore - public Optional contractorBusinessName() { - return contractorBusinessName; - } - - /** - * The type of contractor. - * - *

    `Individual` `Business` - */ - @JsonIgnore - public Optional contractorType() { - return contractorType; - } - - /** - * The payment method. + * The contractor's payments within a given time period. */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional paymentMethod() { - return (Optional) paymentMethod; - } - - /** - * The fixed wage of the payment, regardless of hours worked. - */ - @JsonIgnore - public Optional wage() { - return wage; - } - - /** - * The bonus amount in the payment. - */ - @JsonIgnore - public Optional bonus() { - return bonus; - } - - /** - * The reimbursement amount in the payment. - */ - @JsonIgnore - public Optional reimbursement() { - return reimbursement; + public Optional> payments() { + return (Optional>) payments; } public static Builder builder() { @@ -201,7 +108,7 @@ public static Builder builder() { /** * The UUID of the contractor. */ - public ContractorPayments withContractorUuid(String contractorUuid) { + public ContractorPayments withContractorUuid(double contractorUuid) { Utils.checkNotNull(contractorUuid, "contractorUuid"); this.contractorUuid = Optional.ofNullable(contractorUuid); return this; @@ -211,165 +118,66 @@ public ContractorPayments withContractorUuid(String contractorUuid) { /** * The UUID of the contractor. */ - public ContractorPayments withContractorUuid(Optional contractorUuid) { + public ContractorPayments withContractorUuid(Optional contractorUuid) { Utils.checkNotNull(contractorUuid, "contractorUuid"); this.contractorUuid = contractorUuid; return this; } /** - * The first name of the contractor. Applies when `contractor_type` is `Individual`. - */ - public ContractorPayments withContractorFirstName(String contractorFirstName) { - Utils.checkNotNull(contractorFirstName, "contractorFirstName"); - this.contractorFirstName = Optional.ofNullable(contractorFirstName); - return this; - } - - - /** - * The first name of the contractor. Applies when `contractor_type` is `Individual`. - */ - public ContractorPayments withContractorFirstName(Optional contractorFirstName) { - Utils.checkNotNull(contractorFirstName, "contractorFirstName"); - this.contractorFirstName = contractorFirstName; - return this; - } - - /** - * The last name of the contractor. Applies when `contractor_type` is `Individual`. - */ - public ContractorPayments withContractorLastName(String contractorLastName) { - Utils.checkNotNull(contractorLastName, "contractorLastName"); - this.contractorLastName = Optional.ofNullable(contractorLastName); - return this; - } - - - /** - * The last name of the contractor. Applies when `contractor_type` is `Individual`. - */ - public ContractorPayments withContractorLastName(Optional contractorLastName) { - Utils.checkNotNull(contractorLastName, "contractorLastName"); - this.contractorLastName = contractorLastName; - return this; - } - - /** - * The business name of the contractor. Applies when `contractor_type` is `Business`. - */ - public ContractorPayments withContractorBusinessName(String contractorBusinessName) { - Utils.checkNotNull(contractorBusinessName, "contractorBusinessName"); - this.contractorBusinessName = Optional.ofNullable(contractorBusinessName); - return this; - } - - - /** - * The business name of the contractor. Applies when `contractor_type` is `Business`. - */ - public ContractorPayments withContractorBusinessName(Optional contractorBusinessName) { - Utils.checkNotNull(contractorBusinessName, "contractorBusinessName"); - this.contractorBusinessName = contractorBusinessName; - return this; - } - - /** - * The type of contractor. - * - *

    `Individual` `Business` - */ - public ContractorPayments withContractorType(String contractorType) { - Utils.checkNotNull(contractorType, "contractorType"); - this.contractorType = Optional.ofNullable(contractorType); - return this; - } - - - /** - * The type of contractor. - * - *

    `Individual` `Business` - */ - public ContractorPayments withContractorType(Optional contractorType) { - Utils.checkNotNull(contractorType, "contractorType"); - this.contractorType = contractorType; - return this; - } - - /** - * The payment method. - */ - public ContractorPayments withPaymentMethod(ContractorPaymentReceiptPaymentMethod paymentMethod) { - Utils.checkNotNull(paymentMethod, "paymentMethod"); - this.paymentMethod = Optional.ofNullable(paymentMethod); - return this; - } - - - /** - * The payment method. - */ - public ContractorPayments withPaymentMethod(Optional paymentMethod) { - Utils.checkNotNull(paymentMethod, "paymentMethod"); - this.paymentMethod = paymentMethod; - return this; - } - - /** - * The fixed wage of the payment, regardless of hours worked. + * The total reimbursements for the contractor within a given time period. */ - public ContractorPayments withWage(String wage) { - Utils.checkNotNull(wage, "wage"); - this.wage = Optional.ofNullable(wage); + public ContractorPayments withReimbursementTotal(String reimbursementTotal) { + Utils.checkNotNull(reimbursementTotal, "reimbursementTotal"); + this.reimbursementTotal = Optional.ofNullable(reimbursementTotal); return this; } /** - * The fixed wage of the payment, regardless of hours worked. + * The total reimbursements for the contractor within a given time period. */ - public ContractorPayments withWage(Optional wage) { - Utils.checkNotNull(wage, "wage"); - this.wage = wage; + public ContractorPayments withReimbursementTotal(Optional reimbursementTotal) { + Utils.checkNotNull(reimbursementTotal, "reimbursementTotal"); + this.reimbursementTotal = reimbursementTotal; return this; } /** - * The bonus amount in the payment. + * The total wages for the contractor within a given time period. */ - public ContractorPayments withBonus(String bonus) { - Utils.checkNotNull(bonus, "bonus"); - this.bonus = Optional.ofNullable(bonus); + public ContractorPayments withWageTotal(String wageTotal) { + Utils.checkNotNull(wageTotal, "wageTotal"); + this.wageTotal = Optional.ofNullable(wageTotal); return this; } /** - * The bonus amount in the payment. + * The total wages for the contractor within a given time period. */ - public ContractorPayments withBonus(Optional bonus) { - Utils.checkNotNull(bonus, "bonus"); - this.bonus = bonus; + public ContractorPayments withWageTotal(Optional wageTotal) { + Utils.checkNotNull(wageTotal, "wageTotal"); + this.wageTotal = wageTotal; return this; } /** - * The reimbursement amount in the payment. + * The contractor's payments within a given time period. */ - public ContractorPayments withReimbursement(String reimbursement) { - Utils.checkNotNull(reimbursement, "reimbursement"); - this.reimbursement = Optional.ofNullable(reimbursement); + public ContractorPayments withPayments(List payments) { + Utils.checkNotNull(payments, "payments"); + this.payments = Optional.ofNullable(payments); return this; } /** - * The reimbursement amount in the payment. + * The contractor's payments within a given time period. */ - public ContractorPayments withReimbursement(Optional reimbursement) { - Utils.checkNotNull(reimbursement, "reimbursement"); - this.reimbursement = reimbursement; + public ContractorPayments withPayments(Optional> payments) { + Utils.checkNotNull(payments, "payments"); + this.payments = payments; return this; } @@ -384,58 +192,37 @@ public boolean equals(java.lang.Object o) { ContractorPayments other = (ContractorPayments) o; return Utils.enhancedDeepEquals(this.contractorUuid, other.contractorUuid) && - Utils.enhancedDeepEquals(this.contractorFirstName, other.contractorFirstName) && - Utils.enhancedDeepEquals(this.contractorLastName, other.contractorLastName) && - Utils.enhancedDeepEquals(this.contractorBusinessName, other.contractorBusinessName) && - Utils.enhancedDeepEquals(this.contractorType, other.contractorType) && - Utils.enhancedDeepEquals(this.paymentMethod, other.paymentMethod) && - Utils.enhancedDeepEquals(this.wage, other.wage) && - Utils.enhancedDeepEquals(this.bonus, other.bonus) && - Utils.enhancedDeepEquals(this.reimbursement, other.reimbursement); + Utils.enhancedDeepEquals(this.reimbursementTotal, other.reimbursementTotal) && + Utils.enhancedDeepEquals(this.wageTotal, other.wageTotal) && + Utils.enhancedDeepEquals(this.payments, other.payments); } @Override public int hashCode() { return Utils.enhancedHash( - contractorUuid, contractorFirstName, contractorLastName, - contractorBusinessName, contractorType, paymentMethod, - wage, bonus, reimbursement); + contractorUuid, reimbursementTotal, wageTotal, + payments); } @Override public String toString() { return Utils.toString(ContractorPayments.class, "contractorUuid", contractorUuid, - "contractorFirstName", contractorFirstName, - "contractorLastName", contractorLastName, - "contractorBusinessName", contractorBusinessName, - "contractorType", contractorType, - "paymentMethod", paymentMethod, - "wage", wage, - "bonus", bonus, - "reimbursement", reimbursement); + "reimbursementTotal", reimbursementTotal, + "wageTotal", wageTotal, + "payments", payments); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private Optional contractorUuid = Optional.empty(); + private Optional contractorUuid = Optional.empty(); - private Optional contractorFirstName = Optional.empty(); + private Optional reimbursementTotal = Optional.empty(); - private Optional contractorLastName = Optional.empty(); + private Optional wageTotal = Optional.empty(); - private Optional contractorBusinessName = Optional.empty(); - - private Optional contractorType = Optional.empty(); - - private Optional paymentMethod = Optional.empty(); - - private Optional wage = Optional.empty(); - - private Optional bonus = Optional.empty(); - - private Optional reimbursement = Optional.empty(); + private Optional> payments = Optional.empty(); private Builder() { // force use of static builder() method @@ -445,7 +232,7 @@ private Builder() { /** * The UUID of the contractor. */ - public Builder contractorUuid(String contractorUuid) { + public Builder contractorUuid(double contractorUuid) { Utils.checkNotNull(contractorUuid, "contractorUuid"); this.contractorUuid = Optional.ofNullable(contractorUuid); return this; @@ -454,7 +241,7 @@ public Builder contractorUuid(String contractorUuid) { /** * The UUID of the contractor. */ - public Builder contractorUuid(Optional contractorUuid) { + public Builder contractorUuid(Optional contractorUuid) { Utils.checkNotNull(contractorUuid, "contractorUuid"); this.contractorUuid = contractorUuid; return this; @@ -462,166 +249,66 @@ public Builder contractorUuid(Optional contractorUuid) { /** - * The first name of the contractor. Applies when `contractor_type` is `Individual`. - */ - public Builder contractorFirstName(String contractorFirstName) { - Utils.checkNotNull(contractorFirstName, "contractorFirstName"); - this.contractorFirstName = Optional.ofNullable(contractorFirstName); - return this; - } - - /** - * The first name of the contractor. Applies when `contractor_type` is `Individual`. - */ - public Builder contractorFirstName(Optional contractorFirstName) { - Utils.checkNotNull(contractorFirstName, "contractorFirstName"); - this.contractorFirstName = contractorFirstName; - return this; - } - - - /** - * The last name of the contractor. Applies when `contractor_type` is `Individual`. - */ - public Builder contractorLastName(String contractorLastName) { - Utils.checkNotNull(contractorLastName, "contractorLastName"); - this.contractorLastName = Optional.ofNullable(contractorLastName); - return this; - } - - /** - * The last name of the contractor. Applies when `contractor_type` is `Individual`. - */ - public Builder contractorLastName(Optional contractorLastName) { - Utils.checkNotNull(contractorLastName, "contractorLastName"); - this.contractorLastName = contractorLastName; - return this; - } - - - /** - * The business name of the contractor. Applies when `contractor_type` is `Business`. - */ - public Builder contractorBusinessName(String contractorBusinessName) { - Utils.checkNotNull(contractorBusinessName, "contractorBusinessName"); - this.contractorBusinessName = Optional.ofNullable(contractorBusinessName); - return this; - } - - /** - * The business name of the contractor. Applies when `contractor_type` is `Business`. - */ - public Builder contractorBusinessName(Optional contractorBusinessName) { - Utils.checkNotNull(contractorBusinessName, "contractorBusinessName"); - this.contractorBusinessName = contractorBusinessName; - return this; - } - - - /** - * The type of contractor. - * - *

    `Individual` `Business` - */ - public Builder contractorType(String contractorType) { - Utils.checkNotNull(contractorType, "contractorType"); - this.contractorType = Optional.ofNullable(contractorType); - return this; - } - - /** - * The type of contractor. - * - *

    `Individual` `Business` - */ - public Builder contractorType(Optional contractorType) { - Utils.checkNotNull(contractorType, "contractorType"); - this.contractorType = contractorType; - return this; - } - - - /** - * The payment method. - */ - public Builder paymentMethod(ContractorPaymentReceiptPaymentMethod paymentMethod) { - Utils.checkNotNull(paymentMethod, "paymentMethod"); - this.paymentMethod = Optional.ofNullable(paymentMethod); - return this; - } - - /** - * The payment method. - */ - public Builder paymentMethod(Optional paymentMethod) { - Utils.checkNotNull(paymentMethod, "paymentMethod"); - this.paymentMethod = paymentMethod; - return this; - } - - - /** - * The fixed wage of the payment, regardless of hours worked. + * The total reimbursements for the contractor within a given time period. */ - public Builder wage(String wage) { - Utils.checkNotNull(wage, "wage"); - this.wage = Optional.ofNullable(wage); + public Builder reimbursementTotal(String reimbursementTotal) { + Utils.checkNotNull(reimbursementTotal, "reimbursementTotal"); + this.reimbursementTotal = Optional.ofNullable(reimbursementTotal); return this; } /** - * The fixed wage of the payment, regardless of hours worked. + * The total reimbursements for the contractor within a given time period. */ - public Builder wage(Optional wage) { - Utils.checkNotNull(wage, "wage"); - this.wage = wage; + public Builder reimbursementTotal(Optional reimbursementTotal) { + Utils.checkNotNull(reimbursementTotal, "reimbursementTotal"); + this.reimbursementTotal = reimbursementTotal; return this; } /** - * The bonus amount in the payment. + * The total wages for the contractor within a given time period. */ - public Builder bonus(String bonus) { - Utils.checkNotNull(bonus, "bonus"); - this.bonus = Optional.ofNullable(bonus); + public Builder wageTotal(String wageTotal) { + Utils.checkNotNull(wageTotal, "wageTotal"); + this.wageTotal = Optional.ofNullable(wageTotal); return this; } /** - * The bonus amount in the payment. + * The total wages for the contractor within a given time period. */ - public Builder bonus(Optional bonus) { - Utils.checkNotNull(bonus, "bonus"); - this.bonus = bonus; + public Builder wageTotal(Optional wageTotal) { + Utils.checkNotNull(wageTotal, "wageTotal"); + this.wageTotal = wageTotal; return this; } /** - * The reimbursement amount in the payment. + * The contractor's payments within a given time period. */ - public Builder reimbursement(String reimbursement) { - Utils.checkNotNull(reimbursement, "reimbursement"); - this.reimbursement = Optional.ofNullable(reimbursement); + public Builder payments(List payments) { + Utils.checkNotNull(payments, "payments"); + this.payments = Optional.ofNullable(payments); return this; } /** - * The reimbursement amount in the payment. + * The contractor's payments within a given time period. */ - public Builder reimbursement(Optional reimbursement) { - Utils.checkNotNull(reimbursement, "reimbursement"); - this.reimbursement = reimbursement; + public Builder payments(Optional> payments) { + Utils.checkNotNull(payments, "payments"); + this.payments = payments; return this; } public ContractorPayments build() { return new ContractorPayments( - contractorUuid, contractorFirstName, contractorLastName, - contractorBusinessName, contractorType, paymentMethod, - wage, bonus, reimbursement); + contractorUuid, reimbursementTotal, wageTotal, + payments); } } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorUpdateRequestBody.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorUpdateRequestBody.java index c136203ea..121c74ee1 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorUpdateRequestBody.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorUpdateRequestBody.java @@ -76,6 +76,16 @@ public class ContractorUpdateRequestBody { @JsonProperty("email") private Optional email; + /** + * The work email address of the contractor. This is provided to support syncing users between our + * system and yours. You may not use this email address for any other purpose (e.g. + * + *

    marketing). + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("work_email") + private Optional workEmail; + /** * The contractor’s first name. * This attribute is required for `Individual` contractors and will be ignored for `Business` @@ -169,6 +179,7 @@ public ContractorUpdateRequestBody( @JsonProperty("hourly_rate") Optional hourlyRate, @JsonProperty("self_onboarding") Optional selfOnboarding, @JsonProperty("email") Optional email, + @JsonProperty("work_email") Optional workEmail, @JsonProperty("first_name") Optional firstName, @JsonProperty("last_name") Optional lastName, @JsonProperty("middle_initial") Optional middleInitial, @@ -185,6 +196,7 @@ public ContractorUpdateRequestBody( Utils.checkNotNull(hourlyRate, "hourlyRate"); Utils.checkNotNull(selfOnboarding, "selfOnboarding"); Utils.checkNotNull(email, "email"); + Utils.checkNotNull(workEmail, "workEmail"); Utils.checkNotNull(firstName, "firstName"); Utils.checkNotNull(lastName, "lastName"); Utils.checkNotNull(middleInitial, "middleInitial"); @@ -201,6 +213,7 @@ public ContractorUpdateRequestBody( this.hourlyRate = hourlyRate; this.selfOnboarding = selfOnboarding; this.email = email; + this.workEmail = workEmail; this.firstName = firstName; this.lastName = lastName; this.middleInitial = middleInitial; @@ -217,9 +230,9 @@ public ContractorUpdateRequestBody( this(version, Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), - Optional.empty(), Optional.empty(), JsonNullable.undefined(), Optional.empty(), Optional.empty(), Optional.empty(), - Optional.empty()); + JsonNullable.undefined(), Optional.empty(), Optional.empty(), + Optional.empty(), Optional.empty()); } /** @@ -284,6 +297,17 @@ public Optional email() { return email; } + /** + * The work email address of the contractor. This is provided to support syncing users between our + * system and yours. You may not use this email address for any other purpose (e.g. + * + *

    marketing). + */ + @JsonIgnore + public Optional workEmail() { + return workEmail; + } + /** * The contractor’s first name. * This attribute is required for `Individual` contractors and will be ignored for `Business` @@ -511,6 +535,31 @@ public ContractorUpdateRequestBody withEmail(Optional email) { return this; } + /** + * The work email address of the contractor. This is provided to support syncing users between our + * system and yours. You may not use this email address for any other purpose (e.g. + * + *

    marketing). + */ + public ContractorUpdateRequestBody withWorkEmail(String workEmail) { + Utils.checkNotNull(workEmail, "workEmail"); + this.workEmail = Optional.ofNullable(workEmail); + return this; + } + + + /** + * The work email address of the contractor. This is provided to support syncing users between our + * system and yours. You may not use this email address for any other purpose (e.g. + * + *

    marketing). + */ + public ContractorUpdateRequestBody withWorkEmail(Optional workEmail) { + Utils.checkNotNull(workEmail, "workEmail"); + this.workEmail = workEmail; + return this; + } + /** * The contractor’s first name. * This attribute is required for `Individual` contractors and will be ignored for `Business` @@ -740,6 +789,7 @@ public boolean equals(java.lang.Object o) { Utils.enhancedDeepEquals(this.hourlyRate, other.hourlyRate) && Utils.enhancedDeepEquals(this.selfOnboarding, other.selfOnboarding) && Utils.enhancedDeepEquals(this.email, other.email) && + Utils.enhancedDeepEquals(this.workEmail, other.workEmail) && Utils.enhancedDeepEquals(this.firstName, other.firstName) && Utils.enhancedDeepEquals(this.lastName, other.lastName) && Utils.enhancedDeepEquals(this.middleInitial, other.middleInitial) && @@ -756,10 +806,10 @@ public int hashCode() { return Utils.enhancedHash( version, type, wageType, startDate, hourlyRate, selfOnboarding, - email, firstName, lastName, - middleInitial, fileNewHireReport, workState, - ssn, businessName, ein, - isActive); + email, workEmail, firstName, + lastName, middleInitial, fileNewHireReport, + workState, ssn, businessName, + ein, isActive); } @Override @@ -772,6 +822,7 @@ public String toString() { "hourlyRate", hourlyRate, "selfOnboarding", selfOnboarding, "email", email, + "workEmail", workEmail, "firstName", firstName, "lastName", lastName, "middleInitial", middleInitial, @@ -800,6 +851,8 @@ public final static class Builder { private Optional email = Optional.empty(); + private Optional workEmail = Optional.empty(); + private Optional firstName = Optional.empty(); private Optional lastName = Optional.empty(); @@ -953,6 +1006,31 @@ public Builder email(Optional email) { } + /** + * The work email address of the contractor. This is provided to support syncing users between our + * system and yours. You may not use this email address for any other purpose (e.g. + * + *

    marketing). + */ + public Builder workEmail(String workEmail) { + Utils.checkNotNull(workEmail, "workEmail"); + this.workEmail = Optional.ofNullable(workEmail); + return this; + } + + /** + * The work email address of the contractor. This is provided to support syncing users between our + * system and yours. You may not use this email address for any other purpose (e.g. + * + *

    marketing). + */ + public Builder workEmail(Optional workEmail) { + Utils.checkNotNull(workEmail, "workEmail"); + this.workEmail = workEmail; + return this; + } + + /** * The contractor’s first name. * This attribute is required for `Individual` contractors and will be ignored for `Business` @@ -1179,10 +1257,10 @@ public ContractorUpdateRequestBody build() { return new ContractorUpdateRequestBody( version, type, wageType, startDate, hourlyRate, selfOnboarding, - email, firstName, lastName, - middleInitial, fileNewHireReport, workState, - ssn, businessName, ein, - isActive); + email, workEmail, firstName, + lastName, middleInitial, fileNewHireReport, + workState, ssn, businessName, + ein, isActive); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorWageType.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorWageType.java new file mode 100644 index 000000000..9f72f1602 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorWageType.java @@ -0,0 +1,40 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * ContractorWageType + * + *

    The contractor's wage type, either "Fixed" or "Hourly". + */ +public enum ContractorWageType { + FIXED("Fixed"), + HOURLY("Hourly"); + + @JsonValue + private final String value; + + ContractorWageType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (ContractorWageType o: ContractorWageType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Contribution.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Contribution.java index b065dad58..796417830 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Contribution.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Contribution.java @@ -9,10 +9,13 @@ import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.annotation.JsonProperty; import com.gusto.embedded_api.utils.Utils; +import java.lang.Boolean; import java.lang.Override; import java.lang.String; import java.lang.SuppressWarnings; +import java.util.List; import java.util.Optional; +import org.openapitools.jackson.nullable.JsonNullable; /** * Contribution @@ -20,71 +23,67 @@ *

    An object representing the type and value of the company contribution. */ public class Contribution { - /** - * The company contribution scheme. - * - *

    "amount": The company contributes a fixed amount per payroll. If elective is true, the contribution - * is matching, dollar-for-dollar. - * - *

    "percentage": The company contributes a percentage of the payroll amount per payroll period. If - * elective is true, the contribution is matching, dollar-for-dollar. - * - *

    "tiered": The company contribution varies according to the size of the employee deduction. - */ + + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("required") + private Optional required; + + @JsonInclude(Include.NON_ABSENT) - @JsonProperty("type") - private Optional type; - - /** - * For the `amount` and `percentage` contribution types, the value of the corresponding amount or - * percentage. - * - *

    For the `tiered` contribution type, an array of tiers. - */ + @JsonProperty("editable") + private Optional editable; + + @JsonInclude(Include.NON_ABSENT) - @JsonProperty("value") - private Optional value; + @JsonProperty("default_value") + private JsonNullable defaultValue; + + + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("choices") + private JsonNullable> choices; @JsonCreator public Contribution( - @JsonProperty("type") Optional type, - @JsonProperty("value") Optional value) { - Utils.checkNotNull(type, "type"); - Utils.checkNotNull(value, "value"); - this.type = type; - this.value = value; + @JsonProperty("required") Optional required, + @JsonProperty("editable") Optional editable, + @JsonProperty("default_value") JsonNullable defaultValue, + @JsonProperty("choices") JsonNullable> choices) { + Utils.checkNotNull(required, "required"); + Utils.checkNotNull(editable, "editable"); + Utils.checkNotNull(defaultValue, "defaultValue"); + Utils.checkNotNull(choices, "choices"); + this.required = required; + this.editable = editable; + this.defaultValue = defaultValue; + this.choices = choices; } public Contribution() { - this(Optional.empty(), Optional.empty()); + this(Optional.empty(), Optional.empty(), JsonNullable.undefined(), + JsonNullable.undefined()); + } + + @JsonIgnore + public Optional required() { + return required; + } + + @JsonIgnore + public Optional editable() { + return editable; } - /** - * The company contribution scheme. - * - *

    "amount": The company contributes a fixed amount per payroll. If elective is true, the contribution - * is matching, dollar-for-dollar. - * - *

    "percentage": The company contributes a percentage of the payroll amount per payroll period. If - * elective is true, the contribution is matching, dollar-for-dollar. - * - *

    "tiered": The company contribution varies according to the size of the employee deduction. - */ + @SuppressWarnings("unchecked") @JsonIgnore - public Optional type() { - return type; + public JsonNullable defaultValue() { + return (JsonNullable) defaultValue; } - /** - * For the `amount` and `percentage` contribution types, the value of the corresponding amount or - * percentage. - * - *

    For the `tiered` contribution type, an array of tiers. - */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional value() { - return (Optional) value; + public JsonNullable> choices() { + return (JsonNullable>) choices; } public static Builder builder() { @@ -92,63 +91,53 @@ public static Builder builder() { } - /** - * The company contribution scheme. - * - *

    "amount": The company contributes a fixed amount per payroll. If elective is true, the contribution - * is matching, dollar-for-dollar. - * - *

    "percentage": The company contributes a percentage of the payroll amount per payroll period. If - * elective is true, the contribution is matching, dollar-for-dollar. - * - *

    "tiered": The company contribution varies according to the size of the employee deduction. - */ - public Contribution withType(String type) { - Utils.checkNotNull(type, "type"); - this.type = Optional.ofNullable(type); + public Contribution withRequired(boolean required) { + Utils.checkNotNull(required, "required"); + this.required = Optional.ofNullable(required); + return this; + } + + + public Contribution withRequired(Optional required) { + Utils.checkNotNull(required, "required"); + this.required = required; + return this; + } + + public Contribution withEditable(boolean editable) { + Utils.checkNotNull(editable, "editable"); + this.editable = Optional.ofNullable(editable); return this; } - /** - * The company contribution scheme. - * - *

    "amount": The company contributes a fixed amount per payroll. If elective is true, the contribution - * is matching, dollar-for-dollar. - * - *

    "percentage": The company contributes a percentage of the payroll amount per payroll period. If - * elective is true, the contribution is matching, dollar-for-dollar. - * - *

    "tiered": The company contribution varies according to the size of the employee deduction. - */ - public Contribution withType(Optional type) { - Utils.checkNotNull(type, "type"); - this.type = type; + public Contribution withEditable(Optional editable) { + Utils.checkNotNull(editable, "editable"); + this.editable = editable; + return this; + } + + public Contribution withDefaultValue(BenefitTypeRequirementsDefaultValue defaultValue) { + Utils.checkNotNull(defaultValue, "defaultValue"); + this.defaultValue = JsonNullable.of(defaultValue); return this; } - /** - * For the `amount` and `percentage` contribution types, the value of the corresponding amount or - * percentage. - * - *

    For the `tiered` contribution type, an array of tiers. - */ - public Contribution withValue(EmployeeBenefitValue value) { - Utils.checkNotNull(value, "value"); - this.value = Optional.ofNullable(value); + public Contribution withDefaultValue(JsonNullable defaultValue) { + Utils.checkNotNull(defaultValue, "defaultValue"); + this.defaultValue = defaultValue; return this; } + public Contribution withChoices(List choices) { + Utils.checkNotNull(choices, "choices"); + this.choices = JsonNullable.of(choices); + return this; + } - /** - * For the `amount` and `percentage` contribution types, the value of the corresponding amount or - * percentage. - * - *

    For the `tiered` contribution type, an array of tiers. - */ - public Contribution withValue(Optional value) { - Utils.checkNotNull(value, "value"); - this.value = value; + public Contribution withChoices(JsonNullable> choices) { + Utils.checkNotNull(choices, "choices"); + this.choices = choices; return this; } @@ -162,98 +151,100 @@ public boolean equals(java.lang.Object o) { } Contribution other = (Contribution) o; return - Utils.enhancedDeepEquals(this.type, other.type) && - Utils.enhancedDeepEquals(this.value, other.value); + Utils.enhancedDeepEquals(this.required, other.required) && + Utils.enhancedDeepEquals(this.editable, other.editable) && + Utils.enhancedDeepEquals(this.defaultValue, other.defaultValue) && + Utils.enhancedDeepEquals(this.choices, other.choices); } @Override public int hashCode() { return Utils.enhancedHash( - type, value); + required, editable, defaultValue, + choices); } @Override public String toString() { return Utils.toString(Contribution.class, - "type", type, - "value", value); + "required", required, + "editable", editable, + "defaultValue", defaultValue, + "choices", choices); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private Optional type = Optional.empty(); + private Optional required = Optional.empty(); - private Optional value = Optional.empty(); + private Optional editable = Optional.empty(); + + private JsonNullable defaultValue = JsonNullable.undefined(); + + private JsonNullable> choices = JsonNullable.undefined(); private Builder() { // force use of static builder() method } - /** - * The company contribution scheme. - * - *

    "amount": The company contributes a fixed amount per payroll. If elective is true, the contribution - * is matching, dollar-for-dollar. - * - *

    "percentage": The company contributes a percentage of the payroll amount per payroll period. If - * elective is true, the contribution is matching, dollar-for-dollar. - * - *

    "tiered": The company contribution varies according to the size of the employee deduction. - */ - public Builder type(String type) { - Utils.checkNotNull(type, "type"); - this.type = Optional.ofNullable(type); + public Builder required(boolean required) { + Utils.checkNotNull(required, "required"); + this.required = Optional.ofNullable(required); + return this; + } + + public Builder required(Optional required) { + Utils.checkNotNull(required, "required"); + this.required = required; + return this; + } + + + public Builder editable(boolean editable) { + Utils.checkNotNull(editable, "editable"); + this.editable = Optional.ofNullable(editable); + return this; + } + + public Builder editable(Optional editable) { + Utils.checkNotNull(editable, "editable"); + this.editable = editable; + return this; + } + + + public Builder defaultValue(BenefitTypeRequirementsDefaultValue defaultValue) { + Utils.checkNotNull(defaultValue, "defaultValue"); + this.defaultValue = JsonNullable.of(defaultValue); return this; } - /** - * The company contribution scheme. - * - *

    "amount": The company contributes a fixed amount per payroll. If elective is true, the contribution - * is matching, dollar-for-dollar. - * - *

    "percentage": The company contributes a percentage of the payroll amount per payroll period. If - * elective is true, the contribution is matching, dollar-for-dollar. - * - *

    "tiered": The company contribution varies according to the size of the employee deduction. - */ - public Builder type(Optional type) { - Utils.checkNotNull(type, "type"); - this.type = type; + public Builder defaultValue(JsonNullable defaultValue) { + Utils.checkNotNull(defaultValue, "defaultValue"); + this.defaultValue = defaultValue; return this; } - /** - * For the `amount` and `percentage` contribution types, the value of the corresponding amount or - * percentage. - * - *

    For the `tiered` contribution type, an array of tiers. - */ - public Builder value(EmployeeBenefitValue value) { - Utils.checkNotNull(value, "value"); - this.value = Optional.ofNullable(value); + public Builder choices(List choices) { + Utils.checkNotNull(choices, "choices"); + this.choices = JsonNullable.of(choices); return this; } - /** - * For the `amount` and `percentage` contribution types, the value of the corresponding amount or - * percentage. - * - *

    For the `tiered` contribution type, an array of tiers. - */ - public Builder value(Optional value) { - Utils.checkNotNull(value, "value"); - this.value = value; + public Builder choices(JsonNullable> choices) { + Utils.checkNotNull(choices, "choices"); + this.choices = choices; return this; } public Contribution build() { return new Contribution( - type, value); + required, editable, defaultValue, + choices); } } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/CreateBulkReport.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/CreateBulkReport.java new file mode 100644 index 000000000..c31e38b19 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/CreateBulkReport.java @@ -0,0 +1,157 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Override; +import java.lang.String; + + +public class CreateBulkReport { + /** + * Unique identifier of the bulk report batch. + */ + @JsonProperty("uuid") + private String uuid; + + /** + * The batch's processing state. + * - `pending`: accepted, not yet started + * - `processing`: reports are being generated + * - `completed`: all reports finished + * - `failed`: the batch failed before completing + */ + @JsonProperty("status") + private Status status; + + @JsonCreator + public CreateBulkReport( + @JsonProperty("uuid") String uuid, + @JsonProperty("status") Status status) { + Utils.checkNotNull(uuid, "uuid"); + Utils.checkNotNull(status, "status"); + this.uuid = uuid; + this.status = status; + } + + /** + * Unique identifier of the bulk report batch. + */ + @JsonIgnore + public String uuid() { + return uuid; + } + + /** + * The batch's processing state. + * - `pending`: accepted, not yet started + * - `processing`: reports are being generated + * - `completed`: all reports finished + * - `failed`: the batch failed before completing + */ + @JsonIgnore + public Status status() { + return status; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Unique identifier of the bulk report batch. + */ + public CreateBulkReport withUuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + /** + * The batch's processing state. + * - `pending`: accepted, not yet started + * - `processing`: reports are being generated + * - `completed`: all reports finished + * - `failed`: the batch failed before completing + */ + public CreateBulkReport withStatus(Status status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + CreateBulkReport other = (CreateBulkReport) o; + return + Utils.enhancedDeepEquals(this.uuid, other.uuid) && + Utils.enhancedDeepEquals(this.status, other.status); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + uuid, status); + } + + @Override + public String toString() { + return Utils.toString(CreateBulkReport.class, + "uuid", uuid, + "status", status); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String uuid; + + private Status status; + + private Builder() { + // force use of static builder() method + } + + + /** + * Unique identifier of the bulk report batch. + */ + public Builder uuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + + /** + * The batch's processing state. + * - `pending`: accepted, not yet started + * - `processing`: reports are being generated + * - `completed`: all reports finished + * - `failed`: the batch failed before completing + */ + public Builder status(Status status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + public CreateBulkReport build() { + + return new CreateBulkReport( + uuid, status); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/CreateReportBody.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/CreateReportBody.java index 5ebbf0fe4..a5f18d15e 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/CreateReportBody.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/CreateReportBody.java @@ -30,13 +30,15 @@ public class CreateReportBody { * Columns to include in the report */ @JsonProperty("columns") - private List columns; + private List columns; /** - * How to group the report + * Optional. How to group the report. If omitted, sensible defaults are derived from the `columns` + * requested. */ + @JsonInclude(Include.NON_ABSENT) @JsonProperty("groupings") - private List groupings; + private Optional> groupings; /** * The title of the report @@ -49,7 +51,7 @@ public class CreateReportBody { * The type of file to generate */ @JsonProperty("file_type") - private FileType fileType; + private CreateReportBodyFileType fileType; /** * Whether to include subtotals and grand totals in the report @@ -58,6 +60,13 @@ public class CreateReportBody { @JsonProperty("with_totals") private Optional withTotals; + /** + * Which payroll date `start_date` and `end_date` filter against. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("date_filter_type") + private Optional dateFilterType; + /** * Start date of data to filter by */ @@ -98,7 +107,7 @@ public class CreateReportBody { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("employment_type") - private Optional employmentType; + private Optional employmentType; /** * Employee employment status to filter by @@ -130,17 +139,18 @@ public class CreateReportBody { @JsonCreator public CreateReportBody( - @JsonProperty("columns") List columns, - @JsonProperty("groupings") List groupings, + @JsonProperty("columns") List columns, + @JsonProperty("groupings") Optional> groupings, @JsonProperty("custom_name") Optional customName, - @JsonProperty("file_type") FileType fileType, + @JsonProperty("file_type") CreateReportBodyFileType fileType, @JsonProperty("with_totals") Optional withTotals, + @JsonProperty("date_filter_type") Optional dateFilterType, @JsonProperty("start_date") Optional startDate, @JsonProperty("end_date") Optional endDate, @JsonProperty("dismissed_start_date") Optional dismissedStartDate, @JsonProperty("dismissed_end_date") Optional dismissedEndDate, @JsonProperty("payment_method") Optional paymentMethod, - @JsonProperty("employment_type") Optional employmentType, + @JsonProperty("employment_type") Optional employmentType, @JsonProperty("employment_status") Optional employmentStatus, @JsonProperty("employee_uuids") JsonNullable> employeeUuids, @JsonProperty("department_uuids") Optional> departmentUuids, @@ -150,6 +160,7 @@ public CreateReportBody( Utils.checkNotNull(customName, "customName"); Utils.checkNotNull(fileType, "fileType"); Utils.checkNotNull(withTotals, "withTotals"); + Utils.checkNotNull(dateFilterType, "dateFilterType"); Utils.checkNotNull(startDate, "startDate"); Utils.checkNotNull(endDate, "endDate"); Utils.checkNotNull(dismissedStartDate, "dismissedStartDate"); @@ -165,6 +176,7 @@ public CreateReportBody( this.customName = customName; this.fileType = fileType; this.withTotals = withTotals; + this.dateFilterType = dateFilterType; this.startDate = startDate; this.endDate = endDate; this.dismissedStartDate = dismissedStartDate; @@ -178,30 +190,32 @@ public CreateReportBody( } public CreateReportBody( - List columns, - List groupings, - FileType fileType) { - this(columns, groupings, Optional.empty(), + List columns, + CreateReportBodyFileType fileType) { + this(columns, Optional.empty(), Optional.empty(), fileType, Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), - JsonNullable.undefined(), Optional.empty(), Optional.empty()); + Optional.empty(), JsonNullable.undefined(), Optional.empty(), + Optional.empty()); } /** * Columns to include in the report */ @JsonIgnore - public List columns() { + public List columns() { return columns; } /** - * How to group the report + * Optional. How to group the report. If omitted, sensible defaults are derived from the `columns` + * requested. */ + @SuppressWarnings("unchecked") @JsonIgnore - public List groupings() { - return groupings; + public Optional> groupings() { + return (Optional>) groupings; } /** @@ -216,7 +230,7 @@ public Optional customName() { * The type of file to generate */ @JsonIgnore - public FileType fileType() { + public CreateReportBodyFileType fileType() { return fileType; } @@ -228,6 +242,15 @@ public Optional withTotals() { return withTotals; } + /** + * Which payroll date `start_date` and `end_date` filter against. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional dateFilterType() { + return (Optional) dateFilterType; + } + /** * Start date of data to filter by */ @@ -274,8 +297,8 @@ public Optional paymentMethod() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional employmentType() { - return (Optional) employmentType; + public Optional employmentType() { + return (Optional) employmentType; } /** @@ -322,16 +345,28 @@ public static Builder builder() { /** * Columns to include in the report */ - public CreateReportBody withColumns(List columns) { + public CreateReportBody withColumns(List columns) { Utils.checkNotNull(columns, "columns"); this.columns = columns; return this; } /** - * How to group the report + * Optional. How to group the report. If omitted, sensible defaults are derived from the `columns` + * requested. + */ + public CreateReportBody withGroupings(List groupings) { + Utils.checkNotNull(groupings, "groupings"); + this.groupings = Optional.ofNullable(groupings); + return this; + } + + + /** + * Optional. How to group the report. If omitted, sensible defaults are derived from the `columns` + * requested. */ - public CreateReportBody withGroupings(List groupings) { + public CreateReportBody withGroupings(Optional> groupings) { Utils.checkNotNull(groupings, "groupings"); this.groupings = groupings; return this; @@ -359,7 +394,7 @@ public CreateReportBody withCustomName(Optional customName) { /** * The type of file to generate */ - public CreateReportBody withFileType(FileType fileType) { + public CreateReportBody withFileType(CreateReportBodyFileType fileType) { Utils.checkNotNull(fileType, "fileType"); this.fileType = fileType; return this; @@ -384,6 +419,25 @@ public CreateReportBody withWithTotals(Optional withTotals) { return this; } + /** + * Which payroll date `start_date` and `end_date` filter against. + */ + public CreateReportBody withDateFilterType(CreateReportBodyDateFilterType dateFilterType) { + Utils.checkNotNull(dateFilterType, "dateFilterType"); + this.dateFilterType = Optional.ofNullable(dateFilterType); + return this; + } + + + /** + * Which payroll date `start_date` and `end_date` filter against. + */ + public CreateReportBody withDateFilterType(Optional dateFilterType) { + Utils.checkNotNull(dateFilterType, "dateFilterType"); + this.dateFilterType = dateFilterType; + return this; + } + /** * Start date of data to filter by */ @@ -482,7 +536,7 @@ public CreateReportBody withPaymentMethod(Optional employmentType) { + public CreateReportBody withEmploymentType(Optional employmentType) { Utils.checkNotNull(employmentType, "employmentType"); this.employmentType = employmentType; return this; @@ -588,6 +642,7 @@ public boolean equals(java.lang.Object o) { Utils.enhancedDeepEquals(this.customName, other.customName) && Utils.enhancedDeepEquals(this.fileType, other.fileType) && Utils.enhancedDeepEquals(this.withTotals, other.withTotals) && + Utils.enhancedDeepEquals(this.dateFilterType, other.dateFilterType) && Utils.enhancedDeepEquals(this.startDate, other.startDate) && Utils.enhancedDeepEquals(this.endDate, other.endDate) && Utils.enhancedDeepEquals(this.dismissedStartDate, other.dismissedStartDate) && @@ -604,10 +659,11 @@ public boolean equals(java.lang.Object o) { public int hashCode() { return Utils.enhancedHash( columns, groupings, customName, - fileType, withTotals, startDate, - endDate, dismissedStartDate, dismissedEndDate, - paymentMethod, employmentType, employmentStatus, - employeeUuids, departmentUuids, workAddressUuids); + fileType, withTotals, dateFilterType, + startDate, endDate, dismissedStartDate, + dismissedEndDate, paymentMethod, employmentType, + employmentStatus, employeeUuids, departmentUuids, + workAddressUuids); } @Override @@ -618,6 +674,7 @@ public String toString() { "customName", customName, "fileType", fileType, "withTotals", withTotals, + "dateFilterType", dateFilterType, "startDate", startDate, "endDate", endDate, "dismissedStartDate", dismissedStartDate, @@ -633,16 +690,18 @@ public String toString() { @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private List columns; + private List columns; - private List groupings; + private Optional> groupings = Optional.empty(); private Optional customName = Optional.empty(); - private FileType fileType; + private CreateReportBodyFileType fileType; private Optional withTotals; + private Optional dateFilterType; + private Optional startDate = Optional.empty(); private Optional endDate = Optional.empty(); @@ -653,7 +712,7 @@ public final static class Builder { private Optional paymentMethod = Optional.empty(); - private Optional employmentType = Optional.empty(); + private Optional employmentType = Optional.empty(); private Optional employmentStatus = Optional.empty(); @@ -671,7 +730,7 @@ private Builder() { /** * Columns to include in the report */ - public Builder columns(List columns) { + public Builder columns(List columns) { Utils.checkNotNull(columns, "columns"); this.columns = columns; return this; @@ -679,9 +738,20 @@ public Builder columns(List columns) { /** - * How to group the report + * Optional. How to group the report. If omitted, sensible defaults are derived from the `columns` + * requested. */ - public Builder groupings(List groupings) { + public Builder groupings(List groupings) { + Utils.checkNotNull(groupings, "groupings"); + this.groupings = Optional.ofNullable(groupings); + return this; + } + + /** + * Optional. How to group the report. If omitted, sensible defaults are derived from the `columns` + * requested. + */ + public Builder groupings(Optional> groupings) { Utils.checkNotNull(groupings, "groupings"); this.groupings = groupings; return this; @@ -710,7 +780,7 @@ public Builder customName(Optional customName) { /** * The type of file to generate */ - public Builder fileType(FileType fileType) { + public Builder fileType(CreateReportBodyFileType fileType) { Utils.checkNotNull(fileType, "fileType"); this.fileType = fileType; return this; @@ -736,6 +806,25 @@ public Builder withTotals(Optional withTotals) { } + /** + * Which payroll date `start_date` and `end_date` filter against. + */ + public Builder dateFilterType(CreateReportBodyDateFilterType dateFilterType) { + Utils.checkNotNull(dateFilterType, "dateFilterType"); + this.dateFilterType = Optional.ofNullable(dateFilterType); + return this; + } + + /** + * Which payroll date `start_date` and `end_date` filter against. + */ + public Builder dateFilterType(Optional dateFilterType) { + Utils.checkNotNull(dateFilterType, "dateFilterType"); + this.dateFilterType = dateFilterType; + return this; + } + + /** * Start date of data to filter by */ @@ -834,7 +923,7 @@ public Builder paymentMethod(Optional p /** * Employee employment type to filter by */ - public Builder employmentType(EmploymentType employmentType) { + public Builder employmentType(CreateReportBodyEmploymentType employmentType) { Utils.checkNotNull(employmentType, "employmentType"); this.employmentType = Optional.ofNullable(employmentType); return this; @@ -843,7 +932,7 @@ public Builder employmentType(EmploymentType employmentType) { /** * Employee employment type to filter by */ - public Builder employmentType(Optional employmentType) { + public Builder employmentType(Optional employmentType) { Utils.checkNotNull(employmentType, "employmentType"); this.employmentType = employmentType; return this; @@ -929,13 +1018,17 @@ public CreateReportBody build() { if (withTotals == null) { withTotals = _SINGLETON_VALUE_WithTotals.value(); } + if (dateFilterType == null) { + dateFilterType = _SINGLETON_VALUE_DateFilterType.value(); + } return new CreateReportBody( columns, groupings, customName, - fileType, withTotals, startDate, - endDate, dismissedStartDate, dismissedEndDate, - paymentMethod, employmentType, employmentStatus, - employeeUuids, departmentUuids, workAddressUuids); + fileType, withTotals, dateFilterType, + startDate, endDate, dismissedStartDate, + dismissedEndDate, paymentMethod, employmentType, + employmentStatus, employeeUuids, departmentUuids, + workAddressUuids); } @@ -944,5 +1037,11 @@ public CreateReportBody build() { "with_totals", "false", new TypeReference>() {}); + + private static final LazySingletonValue> _SINGLETON_VALUE_DateFilterType = + new LazySingletonValue<>( + "date_filter_type", + "\"period_end_date\"", + new TypeReference>() {}); } } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/CreateReportBodyColumns.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/CreateReportBodyColumns.java new file mode 100644 index 000000000..f134890fb --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/CreateReportBodyColumns.java @@ -0,0 +1,119 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +public enum CreateReportBodyColumns { + ADDITIONAL_EARNINGS("additional_earnings"), + BANK_ACCOUNT_ACCOUNT_NUMBER("bank_account_account_number"), + BANK_ACCOUNT_ROUTING_NUMBER("bank_account_routing_number"), + BANK_ACCOUNT_TYPE("bank_account_type"), + BANK_ACCOUNT("bank_account"), + BONUS("bonus"), + CASH_TIPS("cash_tips"), + CHECK_AMOUNT("check_amount"), + CHECK_DATE("check_date"), + COMMISSION("commission"), + DATE_OF_BIRTH("date_of_birth"), + DOUBLE_OVERTIME_EARNINGS("double_overtime_earnings"), + DOUBLE_OVERTIME_HOURS("double_overtime_hours"), + DOUBLE_OVERTIME_RATE("double_overtime_rate"), + EMPLOYEE_ADDITIONAL_TAXES("employee_additional_taxes"), + EMPLOYEE_BENEFIT_CONTRIBUTIONS("employee_benefit_contributions"), + EMPLOYEE_COMPENSATION_TIME_PERIOD("employee_compensation_time_period"), + EMPLOYEE_COMPENSATION("employee_compensation"), + EMPLOYEE_DEDUCTIONS("employee_deductions"), + EMPLOYEE_DEPARTMENT("employee_department"), + EMPLOYEE_EMAIL("employee_email"), + EMPLOYEE_DONATIONS("employee_donations"), + EMPLOYEE_FEDERAL_INCOME_TAX("employee_federal_income_tax"), + EMPLOYEE_FIRST_NAME("employee_first_name"), + EMPLOYEE_LAST_NAME("employee_last_name"), + EMPLOYEE_MIDDLE_INITIAL("employee_middle_initial"), + EMPLOYEE_MEDICARE_ADDITIONAL_TAX("employee_medicare_additional_tax"), + EMPLOYEE_MEDICARE_TAX("employee_medicare_tax"), + EMPLOYEE_PHONE_NUMBER("employee_phone_number"), + EMPLOYEE_SOCIAL_SECURITY_TAX("employee_social_security_tax"), + EMPLOYEE_STATE_INCOME_TAX("employee_state_income_tax"), + EMPLOYEE_TAXES("employee_taxes"), + EMPLOYEE_UUID("employee_uuid"), + EMPLOYEE_WORK_EMAIL("employee_work_email"), + EMPLOYER_ADDITIONAL_TAXES("employer_additional_taxes"), + EMPLOYER_BENEFIT_CONTRIBUTIONS("employer_benefit_contributions"), + EMPLOYER_COST("employer_cost"), + EMPLOYER_FUTA_TAX("employer_futa_tax"), + EMPLOYER_MEDICARE_TAX("employer_medicare_tax"), + EMPLOYER_SOCIAL_SECURITY_TAX("employer_social_security_tax"), + EMPLOYER_SUTA_TAX("employer_suta_tax"), + EMPLOYER_TAXES("employer_taxes"), + EMPLOYMENT_TYPE("employment_type"), + EMPLOYMENT("employment"), + END_DATE("end_date"), + GARNISHMENTS("garnishments"), + GROSS_EARNINGS("gross_earnings"), + HOLIDAY_EARNINGS("holiday_earnings"), + HOLIDAY_HOURS("holiday_hours"), + HOME_ADDRESS_CITY("home_address_city"), + HOME_ADDRESS_STATE("home_address_state"), + HOME_ADDRESS_STREET("home_address_street"), + HOME_ADDRESS_ZIP("home_address_zip"), + HOME_ADDRESS("home_address"), + JOB_TITLE("job_title"), + NET_PAY("net_pay"), + ONE_TIME_REIMBURSEMENTS("one_time_reimbursements"), + OVERTIME_EARNINGS("overtime_earnings"), + OVERTIME_HOURS("overtime_hours"), + OVERTIME_RATE("overtime_rate"), + PAID_TIME_OFF_EARNINGS("paid_time_off_earnings"), + PAID_TIME_OFF_HOURS("paid_time_off_hours"), + PAID_TIME_OFF_RATE("paid_time_off_rate"), + PAY_PERIOD_END("pay_period_end"), + PAY_PERIOD_START("pay_period_start"), + PAYCHECK_TIPS("paycheck_tips"), + PAYMENT_METHOD("payment_method"), + PAYROLL_TYPE("payroll_type"), + PAYROLL_UUID("payroll_uuid"), + PREFERRED_FIRST_NAME("preferred_first_name"), + RECURRING_REIMBURSEMENTS("recurring_reimbursements"), + REGULAR_EARNINGS("regular_earnings"), + REGULAR_HOURS("regular_hours"), + REGULAR_RATE("regular_rate"), + REIMBURSEMENTS("reimbursements"), + RISK_CLASS_CODE("risk_class_code"), + SICK_RATE("sick_rate"), + SICK_TIME_OFF_EARNINGS("sick_time_off_earnings"), + SICK_TIME_OFF_HOURS("sick_time_off_hours"), + START_DATE("start_date"), + TOTAL_EMPLOYER_BENEFIT_CONTRIBUTIONS("total_employer_benefit_contributions"), + TOTAL_TIME_OFF_EARNINGS("total_time_off_earnings"), + TOTAL_TIME_OFF_HOURS("total_time_off_hours"), + WORK_ADDRESS_CITY("work_address_city"), + WORK_ADDRESS_STREET("work_address_street"), + WORK_ADDRESS_ZIP("work_address_zip"); + + @JsonValue + private final String value; + + CreateReportBodyColumns(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (CreateReportBodyColumns o: CreateReportBodyColumns.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/CreateReportBodyDateFilterType.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/CreateReportBodyDateFilterType.java new file mode 100644 index 000000000..21d30423d --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/CreateReportBodyDateFilterType.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * CreateReportBodyDateFilterType + * + *

    Which payroll date `start_date` and `end_date` filter against. + */ +public enum CreateReportBodyDateFilterType { + PERIOD_END_DATE("period_end_date"), + PERIOD_START_DATE("period_start_date"), + CHECK_DATE("check_date"); + + @JsonValue + private final String value; + + CreateReportBodyDateFilterType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (CreateReportBodyDateFilterType o: CreateReportBodyDateFilterType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/CreateReportBodyEmploymentType.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/CreateReportBodyEmploymentType.java new file mode 100644 index 000000000..2124e6197 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/CreateReportBodyEmploymentType.java @@ -0,0 +1,43 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * CreateReportBodyEmploymentType + * + *

    Employee employment type to filter by + */ +public enum CreateReportBodyEmploymentType { + EXEMPT("exempt"), + SALARIED_NONEXEMPT("salaried_nonexempt"), + NONEXEMPT("nonexempt"), + COMMISSION_ONLY_EXEMPT("commission_only_exempt"), + COMMISSION_ONLY_NONEXEMPT("commission_only_nonexempt"); + + @JsonValue + private final String value; + + CreateReportBodyEmploymentType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (CreateReportBodyEmploymentType o: CreateReportBodyEmploymentType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/CreateReportBodyFileType.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/CreateReportBodyFileType.java new file mode 100644 index 000000000..859574050 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/CreateReportBodyFileType.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * CreateReportBodyFileType + * + *

    The type of file to generate + */ +public enum CreateReportBodyFileType { + CSV("csv"), + JSON("json"), + PDF("pdf"); + + @JsonValue + private final String value; + + CreateReportBodyFileType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (CreateReportBodyFileType o: CreateReportBodyFileType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/CreateReportBodyGroupings.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/CreateReportBodyGroupings.java new file mode 100644 index 000000000..90f0a00cf --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/CreateReportBodyGroupings.java @@ -0,0 +1,37 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +public enum CreateReportBodyGroupings { + PAYROLL("payroll"), + EMPLOYEE("employee"), + WORK_ADDRESS("work_address"), + WORK_ADDRESS_STATE("work_address_state"); + + @JsonValue + private final String value; + + CreateReportBodyGroupings(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (CreateReportBodyGroupings o: CreateReportBodyGroupings.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/CustomWithholdings.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/CustomWithholdings.java new file mode 100644 index 000000000..d75daa3df --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/CustomWithholdings.java @@ -0,0 +1,198 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.List; +import java.util.Optional; +import org.openapitools.jackson.nullable.JsonNullable; + +/** + * CustomWithholdings + * + *

    The one-time custom withholding overrides applied to this payroll for this employee. + * `federal` is null when no federal one-time override is set; `state` is an empty + * array when no state one-time overrides are set. + */ +public class CustomWithholdings { + /** + * Federal one-time custom withholding override applied to this payroll. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("federal") + private JsonNullable federal; + + /** + * State one-time custom withholding overrides applied to this payroll, one entry per state field. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("state") + private Optional> state; + + @JsonCreator + public CustomWithholdings( + @JsonProperty("federal") JsonNullable federal, + @JsonProperty("state") Optional> state) { + Utils.checkNotNull(federal, "federal"); + Utils.checkNotNull(state, "state"); + this.federal = federal; + this.state = state; + } + + public CustomWithholdings() { + this(JsonNullable.undefined(), Optional.empty()); + } + + /** + * Federal one-time custom withholding override applied to this payroll. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public JsonNullable federal() { + return (JsonNullable) federal; + } + + /** + * State one-time custom withholding overrides applied to this payroll, one entry per state field. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> state() { + return (Optional>) state; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Federal one-time custom withholding override applied to this payroll. + */ + public CustomWithholdings withFederal(Federal federal) { + Utils.checkNotNull(federal, "federal"); + this.federal = JsonNullable.of(federal); + return this; + } + + /** + * Federal one-time custom withholding override applied to this payroll. + */ + public CustomWithholdings withFederal(JsonNullable federal) { + Utils.checkNotNull(federal, "federal"); + this.federal = federal; + return this; + } + + /** + * State one-time custom withholding overrides applied to this payroll, one entry per state field. + */ + public CustomWithholdings withState(List state) { + Utils.checkNotNull(state, "state"); + this.state = Optional.ofNullable(state); + return this; + } + + + /** + * State one-time custom withholding overrides applied to this payroll, one entry per state field. + */ + public CustomWithholdings withState(Optional> state) { + Utils.checkNotNull(state, "state"); + this.state = state; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + CustomWithholdings other = (CustomWithholdings) o; + return + Utils.enhancedDeepEquals(this.federal, other.federal) && + Utils.enhancedDeepEquals(this.state, other.state); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + federal, state); + } + + @Override + public String toString() { + return Utils.toString(CustomWithholdings.class, + "federal", federal, + "state", state); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private JsonNullable federal = JsonNullable.undefined(); + + private Optional> state = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * Federal one-time custom withholding override applied to this payroll. + */ + public Builder federal(Federal federal) { + Utils.checkNotNull(federal, "federal"); + this.federal = JsonNullable.of(federal); + return this; + } + + /** + * Federal one-time custom withholding override applied to this payroll. + */ + public Builder federal(JsonNullable federal) { + Utils.checkNotNull(federal, "federal"); + this.federal = federal; + return this; + } + + + /** + * State one-time custom withholding overrides applied to this payroll, one entry per state field. + */ + public Builder state(List state) { + Utils.checkNotNull(state, "state"); + this.state = Optional.ofNullable(state); + return this; + } + + /** + * State one-time custom withholding overrides applied to this payroll, one entry per state field. + */ + public Builder state(Optional> state) { + Utils.checkNotNull(state, "state"); + this.state = state; + return this; + } + + public CustomWithholdings build() { + + return new CustomWithholdings( + federal, state); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/DateFilterType.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/DateFilterType.java new file mode 100644 index 000000000..7798a4e72 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/DateFilterType.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * DateFilterType + * + *

    Which payroll date `start_date` and `end_date` filter against. + */ +public enum DateFilterType { + PERIOD_END_DATE("period_end_date"), + PERIOD_START_DATE("period_start_date"), + CHECK_DATE("check_date"); + + @JsonValue + private final String value; + + DateFilterType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (DateFilterType o: DateFilterType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Document.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Document.java index ba5e77b78..aa30bfee5 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Document.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Document.java @@ -46,7 +46,7 @@ public class Document { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("recipient_type") - private Optional recipientType; + private Optional recipientType; /** * Unique identifier for the recipient associated with the document @@ -120,7 +120,7 @@ public Document( @JsonProperty("uuid") Optional uuid, @JsonProperty("title") Optional title, @JsonProperty("name") Optional name, - @JsonProperty("recipient_type") Optional recipientType, + @JsonProperty("recipient_type") Optional recipientType, @JsonProperty("recipient_uuid") Optional recipientUuid, @JsonProperty("pages") Optional> pages, @JsonProperty("fields") Optional> fields, @@ -195,8 +195,8 @@ public Optional name() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional recipientType() { - return (Optional) recipientType; + public Optional recipientType() { + return (Optional) recipientType; } /** @@ -342,7 +342,7 @@ public Document withName(Optional name) { /** * The type of recipient associated with the document (will be `Contractor` for Contractor Documents) */ - public Document withRecipientType(RecipientType recipientType) { + public Document withRecipientType(DocumentRecipientType recipientType) { Utils.checkNotNull(recipientType, "recipientType"); this.recipientType = Optional.ofNullable(recipientType); return this; @@ -352,7 +352,7 @@ public Document withRecipientType(RecipientType recipientType) { /** * The type of recipient associated with the document (will be `Contractor` for Contractor Documents) */ - public Document withRecipientType(Optional recipientType) { + public Document withRecipientType(Optional recipientType) { Utils.checkNotNull(recipientType, "recipientType"); this.recipientType = recipientType; return this; @@ -596,7 +596,7 @@ public final static class Builder { private Optional name = Optional.empty(); - private Optional recipientType = Optional.empty(); + private Optional recipientType = Optional.empty(); private Optional recipientUuid = Optional.empty(); @@ -681,7 +681,7 @@ public Builder name(Optional name) { /** * The type of recipient associated with the document (will be `Contractor` for Contractor Documents) */ - public Builder recipientType(RecipientType recipientType) { + public Builder recipientType(DocumentRecipientType recipientType) { Utils.checkNotNull(recipientType, "recipientType"); this.recipientType = Optional.ofNullable(recipientType); return this; @@ -690,7 +690,7 @@ public Builder recipientType(RecipientType recipientType) { /** * The type of recipient associated with the document (will be `Contractor` for Contractor Documents) */ - public Builder recipientType(Optional recipientType) { + public Builder recipientType(Optional recipientType) { Utils.checkNotNull(recipientType, "recipientType"); this.recipientType = recipientType; return this; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/DocumentRecipientType.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/DocumentRecipientType.java new file mode 100644 index 000000000..3fe64097b --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/DocumentRecipientType.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * DocumentRecipientType + * + *

    The type of recipient associated with the document (will be `Contractor` for Contractor Documents) + */ +public enum DocumentRecipientType { + COMPANY("Company"), + EMPLOYEE("Employee"), + CONTRACTOR("Contractor"); + + @JsonValue + private final String value; + + DocumentRecipientType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (DocumentRecipientType o: DocumentRecipientType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Employee.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Employee.java index a857a20c3..646d2a303 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Employee.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Employee.java @@ -130,7 +130,7 @@ public class Employee { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("onboarding_documents_config") - private Optional onboardingDocumentsConfig; + private Optional onboardingDocumentsConfig; @JsonInclude(Include.NON_ABSENT) @@ -206,7 +206,7 @@ public class Employee { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("current_employment_status") - private JsonNullable currentEmploymentStatus; + private JsonNullable currentEmploymentStatus; @JsonInclude(Include.NON_ABSENT) @@ -297,7 +297,7 @@ public Employee( @JsonProperty("work_email") JsonNullable workEmail, @JsonProperty("onboarded") Optional onboarded, @JsonProperty("onboarding_status") JsonNullable onboardingStatus, - @JsonProperty("onboarding_documents_config") Optional onboardingDocumentsConfig, + @JsonProperty("onboarding_documents_config") Optional onboardingDocumentsConfig, @JsonProperty("jobs") Optional> jobs, @JsonProperty("eligible_paid_time_off") Optional> eligiblePaidTimeOff, @JsonProperty("terminations") Optional> terminations, @@ -309,7 +309,7 @@ public Employee( @JsonProperty("phone") JsonNullable phone, @JsonProperty("preferred_first_name") JsonNullable preferredFirstName, @JsonProperty("payment_method") Optional paymentMethod, - @JsonProperty("current_employment_status") JsonNullable currentEmploymentStatus, + @JsonProperty("current_employment_status") JsonNullable currentEmploymentStatus, @JsonProperty("historical") Optional historical, @JsonProperty("employee_code") Optional employeeCode, @JsonProperty("department_uuid") JsonNullable departmentUuid, @@ -533,8 +533,8 @@ public JsonNullable onboardingStatus() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional onboardingDocumentsConfig() { - return (Optional) onboardingDocumentsConfig; + public Optional onboardingDocumentsConfig() { + return (Optional) onboardingDocumentsConfig; } @SuppressWarnings("unchecked") @@ -621,8 +621,8 @@ public Optional paymentMethod() { */ @SuppressWarnings("unchecked") @JsonIgnore - public JsonNullable currentEmploymentStatus() { - return (JsonNullable) currentEmploymentStatus; + public JsonNullable currentEmploymentStatus() { + return (JsonNullable) currentEmploymentStatus; } @JsonIgnore @@ -950,7 +950,7 @@ public Employee withOnboardingStatus(JsonNullable onboardingDocumentsConfig) { + public Employee withOnboardingDocumentsConfig(Optional onboardingDocumentsConfig) { Utils.checkNotNull(onboardingDocumentsConfig, "onboardingDocumentsConfig"); this.onboardingDocumentsConfig = onboardingDocumentsConfig; return this; @@ -1140,7 +1140,7 @@ public Employee withPaymentMethod(Optional pay *

    Variable employees have hours that vary each week. Seasonal employees are hired for 6 months of the * year or less. */ - public Employee withCurrentEmploymentStatus(EmployeeCurrentEmploymentStatus currentEmploymentStatus) { + public Employee withCurrentEmploymentStatus(CurrentEmploymentStatus currentEmploymentStatus) { Utils.checkNotNull(currentEmploymentStatus, "currentEmploymentStatus"); this.currentEmploymentStatus = JsonNullable.of(currentEmploymentStatus); return this; @@ -1154,7 +1154,7 @@ public Employee withCurrentEmploymentStatus(EmployeeCurrentEmploymentStatus curr *

    Variable employees have hours that vary each week. Seasonal employees are hired for 6 months of the * year or less. */ - public Employee withCurrentEmploymentStatus(JsonNullable currentEmploymentStatus) { + public Employee withCurrentEmploymentStatus(JsonNullable currentEmploymentStatus) { Utils.checkNotNull(currentEmploymentStatus, "currentEmploymentStatus"); this.currentEmploymentStatus = currentEmploymentStatus; return this; @@ -1485,7 +1485,7 @@ public final static class Builder { private JsonNullable onboardingStatus = JsonNullable.undefined(); - private Optional onboardingDocumentsConfig = Optional.empty(); + private Optional onboardingDocumentsConfig = Optional.empty(); private Optional> jobs = Optional.empty(); @@ -1509,7 +1509,7 @@ public final static class Builder { private Optional paymentMethod; - private JsonNullable currentEmploymentStatus = JsonNullable.undefined(); + private JsonNullable currentEmploymentStatus = JsonNullable.undefined(); private Optional historical = Optional.empty(); @@ -1784,7 +1784,7 @@ public Builder onboardingStatus(JsonNullable onboardingDocumentsConfig) { + public Builder onboardingDocumentsConfig(Optional onboardingDocumentsConfig) { Utils.checkNotNull(onboardingDocumentsConfig, "onboardingDocumentsConfig"); this.onboardingDocumentsConfig = onboardingDocumentsConfig; return this; @@ -1977,7 +1977,7 @@ public Builder paymentMethod(Optional paymentM *

    Variable employees have hours that vary each week. Seasonal employees are hired for 6 months of the * year or less. */ - public Builder currentEmploymentStatus(EmployeeCurrentEmploymentStatus currentEmploymentStatus) { + public Builder currentEmploymentStatus(CurrentEmploymentStatus currentEmploymentStatus) { Utils.checkNotNull(currentEmploymentStatus, "currentEmploymentStatus"); this.currentEmploymentStatus = JsonNullable.of(currentEmploymentStatus); return this; @@ -1991,7 +1991,7 @@ public Builder currentEmploymentStatus(EmployeeCurrentEmploymentStatus currentEm *

    Variable employees have hours that vary each week. Seasonal employees are hired for 6 months of the * year or less. */ - public Builder currentEmploymentStatus(JsonNullable currentEmploymentStatus) { + public Builder currentEmploymentStatus(JsonNullable currentEmploymentStatus) { Utils.checkNotNull(currentEmploymentStatus, "currentEmploymentStatus"); this.currentEmploymentStatus = currentEmploymentStatus; return this; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/EmployeeAddress.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/EmployeeAddress.java index 98a00f21e..27006cece 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/EmployeeAddress.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/EmployeeAddress.java @@ -14,7 +14,9 @@ import java.lang.Boolean; import java.lang.Override; import java.lang.String; +import java.lang.SuppressWarnings; import java.time.LocalDate; +import java.util.List; import java.util.Optional; import org.openapitools.jackson.nullable.JsonNullable; @@ -93,6 +95,14 @@ public class EmployeeAddress { @JsonProperty("version") private String version; + /** + * An array of warning objects that provide additional information about the address. Warnings do not + * prevent the address from being saved. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("warnings") + private Optional> warnings; + @JsonCreator public EmployeeAddress( @JsonProperty("uuid") String uuid, @@ -106,7 +116,8 @@ public EmployeeAddress( @JsonProperty("zip") Optional zip, @JsonProperty("country") Optional country, @JsonProperty("active") Optional active, - @JsonProperty("version") String version) { + @JsonProperty("version") String version, + @JsonProperty("warnings") Optional> warnings) { Utils.checkNotNull(uuid, "uuid"); Utils.checkNotNull(employeeUuid, "employeeUuid"); Utils.checkNotNull(effectiveDate, "effectiveDate"); @@ -119,6 +130,7 @@ public EmployeeAddress( Utils.checkNotNull(country, "country"); Utils.checkNotNull(active, "active"); Utils.checkNotNull(version, "version"); + Utils.checkNotNull(warnings, "warnings"); this.uuid = uuid; this.employeeUuid = employeeUuid; this.effectiveDate = effectiveDate; @@ -131,6 +143,7 @@ public EmployeeAddress( this.country = country; this.active = active; this.version = version; + this.warnings = warnings; } public EmployeeAddress( @@ -139,7 +152,8 @@ public EmployeeAddress( this(uuid, Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), JsonNullable.undefined(), Optional.empty(), Optional.empty(), Optional.empty(), - Optional.empty(), Optional.empty(), version); + Optional.empty(), Optional.empty(), version, + Optional.empty()); } /** @@ -223,6 +237,16 @@ public String version() { return version; } + /** + * An array of warning objects that provide additional information about the address. Warnings do not + * prevent the address from being saved. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> warnings() { + return (Optional>) warnings; + } + public static Builder builder() { return new Builder(); } @@ -403,6 +427,27 @@ public EmployeeAddress withVersion(String version) { return this; } + /** + * An array of warning objects that provide additional information about the address. Warnings do not + * prevent the address from being saved. + */ + public EmployeeAddress withWarnings(List warnings) { + Utils.checkNotNull(warnings, "warnings"); + this.warnings = Optional.ofNullable(warnings); + return this; + } + + + /** + * An array of warning objects that provide additional information about the address. Warnings do not + * prevent the address from being saved. + */ + public EmployeeAddress withWarnings(Optional> warnings) { + Utils.checkNotNull(warnings, "warnings"); + this.warnings = warnings; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -424,7 +469,8 @@ public boolean equals(java.lang.Object o) { Utils.enhancedDeepEquals(this.zip, other.zip) && Utils.enhancedDeepEquals(this.country, other.country) && Utils.enhancedDeepEquals(this.active, other.active) && - Utils.enhancedDeepEquals(this.version, other.version); + Utils.enhancedDeepEquals(this.version, other.version) && + Utils.enhancedDeepEquals(this.warnings, other.warnings); } @Override @@ -433,7 +479,8 @@ public int hashCode() { uuid, employeeUuid, effectiveDate, courtesyWithholding, street1, street2, city, state, zip, - country, active, version); + country, active, version, + warnings); } @Override @@ -450,7 +497,8 @@ public String toString() { "zip", zip, "country", country, "active", active, - "version", version); + "version", version, + "warnings", warnings); } @SuppressWarnings("UnusedReturnValue") @@ -480,6 +528,8 @@ public final static class Builder { private String version; + private Optional> warnings = Optional.empty(); + private Builder() { // force use of static builder() method } @@ -662,6 +712,27 @@ public Builder version(String version) { return this; } + + /** + * An array of warning objects that provide additional information about the address. Warnings do not + * prevent the address from being saved. + */ + public Builder warnings(List warnings) { + Utils.checkNotNull(warnings, "warnings"); + this.warnings = Optional.ofNullable(warnings); + return this; + } + + /** + * An array of warning objects that provide additional information about the address. Warnings do not + * prevent the address from being saved. + */ + public Builder warnings(Optional> warnings) { + Utils.checkNotNull(warnings, "warnings"); + this.warnings = warnings; + return this; + } + public EmployeeAddress build() { if (country == null) { country = _SINGLETON_VALUE_Country.value(); @@ -671,7 +742,8 @@ public EmployeeAddress build() { uuid, employeeUuid, effectiveDate, courtesyWithholding, street1, street2, city, state, zip, - country, active, version); + country, active, version, + warnings); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/EmployeeBenefit.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/EmployeeBenefit.java index c3b0338b4..e1881fcfc 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/EmployeeBenefit.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/EmployeeBenefit.java @@ -74,7 +74,7 @@ public class EmployeeBenefit { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("contribution") - private Optional contribution; + private Optional contribution; /** * Whether the company contribution is elective (aka matching). For "tiered" contribution types, this @@ -210,7 +210,7 @@ public EmployeeBenefit( @JsonProperty("employee_deduction") Optional employeeDeduction, @JsonProperty("deduct_as_percentage") Optional deductAsPercentage, @JsonProperty("employee_deduction_annual_maximum") JsonNullable employeeDeductionAnnualMaximum, - @JsonProperty("contribution") Optional contribution, + @JsonProperty("contribution") Optional contribution, @JsonProperty("elective") Optional elective, @JsonProperty("company_contribution_annual_maximum") JsonNullable companyContributionAnnualMaximum, @JsonProperty("limit_option") JsonNullable limitOption, @@ -330,8 +330,8 @@ public JsonNullable employeeDeductionAnnualMaximum() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional contribution() { - return (Optional) contribution; + public Optional contribution() { + return (Optional) contribution; } /** @@ -587,7 +587,7 @@ public EmployeeBenefit withEmployeeDeductionAnnualMaximum(JsonNullable e /** * An object representing the type and value of the company contribution. */ - public EmployeeBenefit withContribution(Contribution contribution) { + public EmployeeBenefit withContribution(EmployeeBenefitContribution contribution) { Utils.checkNotNull(contribution, "contribution"); this.contribution = Optional.ofNullable(contribution); return this; @@ -597,7 +597,7 @@ public EmployeeBenefit withContribution(Contribution contribution) { /** * An object representing the type and value of the company contribution. */ - public EmployeeBenefit withContribution(Optional contribution) { + public EmployeeBenefit withContribution(Optional contribution) { Utils.checkNotNull(contribution, "contribution"); this.contribution = contribution; return this; @@ -1008,7 +1008,7 @@ public final static class Builder { private JsonNullable employeeDeductionAnnualMaximum = JsonNullable.undefined(); - private Optional contribution = Optional.empty(); + private Optional contribution = Optional.empty(); private Optional elective; @@ -1153,7 +1153,7 @@ public Builder employeeDeductionAnnualMaximum(JsonNullable employeeDeduc /** * An object representing the type and value of the company contribution. */ - public Builder contribution(Contribution contribution) { + public Builder contribution(EmployeeBenefitContribution contribution) { Utils.checkNotNull(contribution, "contribution"); this.contribution = Optional.ofNullable(contribution); return this; @@ -1162,7 +1162,7 @@ public Builder contribution(Contribution contribution) { /** * An object representing the type and value of the company contribution. */ - public Builder contribution(Optional contribution) { + public Builder contribution(Optional contribution) { Utils.checkNotNull(contribution, "contribution"); this.contribution = contribution; return this; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/EmployeeBenefitContribution.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/EmployeeBenefitContribution.java new file mode 100644 index 000000000..f899daec1 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/EmployeeBenefitContribution.java @@ -0,0 +1,260 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + +/** + * EmployeeBenefitContribution + * + *

    An object representing the type and value of the company contribution. + */ +public class EmployeeBenefitContribution { + /** + * The company contribution scheme. + * + *

    "amount": The company contributes a fixed amount per payroll. If elective is true, the contribution + * is matching, dollar-for-dollar. + * + *

    "percentage": The company contributes a percentage of the payroll amount per payroll period. If + * elective is true, the contribution is matching, dollar-for-dollar. + * + *

    "tiered": The company contribution varies according to the size of the employee deduction. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("type") + private Optional type; + + /** + * For the `amount` and `percentage` contribution types, the value of the corresponding amount or + * percentage. + * + *

    For the `tiered` contribution type, an array of tiers. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("value") + private Optional value; + + @JsonCreator + public EmployeeBenefitContribution( + @JsonProperty("type") Optional type, + @JsonProperty("value") Optional value) { + Utils.checkNotNull(type, "type"); + Utils.checkNotNull(value, "value"); + this.type = type; + this.value = value; + } + + public EmployeeBenefitContribution() { + this(Optional.empty(), Optional.empty()); + } + + /** + * The company contribution scheme. + * + *

    "amount": The company contributes a fixed amount per payroll. If elective is true, the contribution + * is matching, dollar-for-dollar. + * + *

    "percentage": The company contributes a percentage of the payroll amount per payroll period. If + * elective is true, the contribution is matching, dollar-for-dollar. + * + *

    "tiered": The company contribution varies according to the size of the employee deduction. + */ + @JsonIgnore + public Optional type() { + return type; + } + + /** + * For the `amount` and `percentage` contribution types, the value of the corresponding amount or + * percentage. + * + *

    For the `tiered` contribution type, an array of tiers. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional value() { + return (Optional) value; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * The company contribution scheme. + * + *

    "amount": The company contributes a fixed amount per payroll. If elective is true, the contribution + * is matching, dollar-for-dollar. + * + *

    "percentage": The company contributes a percentage of the payroll amount per payroll period. If + * elective is true, the contribution is matching, dollar-for-dollar. + * + *

    "tiered": The company contribution varies according to the size of the employee deduction. + */ + public EmployeeBenefitContribution withType(String type) { + Utils.checkNotNull(type, "type"); + this.type = Optional.ofNullable(type); + return this; + } + + + /** + * The company contribution scheme. + * + *

    "amount": The company contributes a fixed amount per payroll. If elective is true, the contribution + * is matching, dollar-for-dollar. + * + *

    "percentage": The company contributes a percentage of the payroll amount per payroll period. If + * elective is true, the contribution is matching, dollar-for-dollar. + * + *

    "tiered": The company contribution varies according to the size of the employee deduction. + */ + public EmployeeBenefitContribution withType(Optional type) { + Utils.checkNotNull(type, "type"); + this.type = type; + return this; + } + + /** + * For the `amount` and `percentage` contribution types, the value of the corresponding amount or + * percentage. + * + *

    For the `tiered` contribution type, an array of tiers. + */ + public EmployeeBenefitContribution withValue(EmployeeBenefitValue value) { + Utils.checkNotNull(value, "value"); + this.value = Optional.ofNullable(value); + return this; + } + + + /** + * For the `amount` and `percentage` contribution types, the value of the corresponding amount or + * percentage. + * + *

    For the `tiered` contribution type, an array of tiers. + */ + public EmployeeBenefitContribution withValue(Optional value) { + Utils.checkNotNull(value, "value"); + this.value = value; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + EmployeeBenefitContribution other = (EmployeeBenefitContribution) o; + return + Utils.enhancedDeepEquals(this.type, other.type) && + Utils.enhancedDeepEquals(this.value, other.value); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + type, value); + } + + @Override + public String toString() { + return Utils.toString(EmployeeBenefitContribution.class, + "type", type, + "value", value); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional type = Optional.empty(); + + private Optional value = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * The company contribution scheme. + * + *

    "amount": The company contributes a fixed amount per payroll. If elective is true, the contribution + * is matching, dollar-for-dollar. + * + *

    "percentage": The company contributes a percentage of the payroll amount per payroll period. If + * elective is true, the contribution is matching, dollar-for-dollar. + * + *

    "tiered": The company contribution varies according to the size of the employee deduction. + */ + public Builder type(String type) { + Utils.checkNotNull(type, "type"); + this.type = Optional.ofNullable(type); + return this; + } + + /** + * The company contribution scheme. + * + *

    "amount": The company contributes a fixed amount per payroll. If elective is true, the contribution + * is matching, dollar-for-dollar. + * + *

    "percentage": The company contributes a percentage of the payroll amount per payroll period. If + * elective is true, the contribution is matching, dollar-for-dollar. + * + *

    "tiered": The company contribution varies according to the size of the employee deduction. + */ + public Builder type(Optional type) { + Utils.checkNotNull(type, "type"); + this.type = type; + return this; + } + + + /** + * For the `amount` and `percentage` contribution types, the value of the corresponding amount or + * percentage. + * + *

    For the `tiered` contribution type, an array of tiers. + */ + public Builder value(EmployeeBenefitValue value) { + Utils.checkNotNull(value, "value"); + this.value = Optional.ofNullable(value); + return this; + } + + /** + * For the `amount` and `percentage` contribution types, the value of the corresponding amount or + * percentage. + * + *

    For the `tiered` contribution type, an array of tiers. + */ + public Builder value(Optional value) { + Utils.checkNotNull(value, "value"); + this.value = value; + return this; + } + + public EmployeeBenefitContribution build() { + + return new EmployeeBenefitContribution( + type, value); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/EmployeeCompensations.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/EmployeeCompensations.java index 9d5f0d2ee..ecf3f5558 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/EmployeeCompensations.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/EmployeeCompensations.java @@ -136,6 +136,15 @@ public class EmployeeCompensations { @JsonProperty("reimbursements") private Optional> reimbursements; + /** + * The one-time custom withholding overrides applied to this payroll for this employee. + * `federal` is null when no federal one-time override is set; `state` is an empty + * array when no state one-time overrides are set. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("custom_withholdings") + private Optional customWithholdings; + /** * The current version of this employee compensation. This field is only available for prepared * payrolls. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for @@ -189,6 +198,7 @@ public EmployeeCompensations( @JsonProperty("hourly_compensations") Optional> hourlyCompensations, @JsonProperty("paid_time_off") Optional> paidTimeOff, @JsonProperty("reimbursements") Optional> reimbursements, + @JsonProperty("custom_withholdings") Optional customWithholdings, @JsonProperty("version") Optional version, @JsonProperty("deductions") Optional> deductions, @JsonProperty("taxes") Optional> taxes, @@ -207,6 +217,7 @@ public EmployeeCompensations( Utils.checkNotNull(hourlyCompensations, "hourlyCompensations"); Utils.checkNotNull(paidTimeOff, "paidTimeOff"); Utils.checkNotNull(reimbursements, "reimbursements"); + Utils.checkNotNull(customWithholdings, "customWithholdings"); Utils.checkNotNull(version, "version"); Utils.checkNotNull(deductions, "deductions"); Utils.checkNotNull(taxes, "taxes"); @@ -225,6 +236,7 @@ public EmployeeCompensations( this.hourlyCompensations = hourlyCompensations; this.paidTimeOff = paidTimeOff; this.reimbursements = reimbursements; + this.customWithholdings = customWithholdings; this.version = version; this.deductions = deductions; this.taxes = taxes; @@ -238,7 +250,8 @@ public EmployeeCompensations() { JsonNullable.undefined(), JsonNullable.undefined(), JsonNullable.undefined(), JsonNullable.undefined(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), - Optional.empty(), Optional.empty(), Optional.empty()); + Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty()); } /** @@ -371,6 +384,17 @@ public Optional> reimbursements() { return (Optional>) reimbursements; } + /** + * The one-time custom withholding overrides applied to this payroll for this employee. + * `federal` is null when no federal one-time override is set; `state` is an empty + * array when no state one-time overrides are set. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional customWithholdings() { + return (Optional) customWithholdings; + } + /** * The current version of this employee compensation. This field is only available for prepared * payrolls. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for @@ -706,6 +730,29 @@ public EmployeeCompensations withReimbursements(Optional customWithholdings) { + Utils.checkNotNull(customWithholdings, "customWithholdings"); + this.customWithholdings = customWithholdings; + return this; + } + /** * The current version of this employee compensation. This field is only available for prepared * payrolls. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for @@ -829,6 +876,7 @@ public boolean equals(java.lang.Object o) { Utils.enhancedDeepEquals(this.hourlyCompensations, other.hourlyCompensations) && Utils.enhancedDeepEquals(this.paidTimeOff, other.paidTimeOff) && Utils.enhancedDeepEquals(this.reimbursements, other.reimbursements) && + Utils.enhancedDeepEquals(this.customWithholdings, other.customWithholdings) && Utils.enhancedDeepEquals(this.version, other.version) && Utils.enhancedDeepEquals(this.deductions, other.deductions) && Utils.enhancedDeepEquals(this.taxes, other.taxes) && @@ -843,9 +891,9 @@ public int hashCode() { preferredFirstName, lastName, grossPay, netPay, checkAmount, paymentMethod, memo, fixedCompensations, hourlyCompensations, - paidTimeOff, reimbursements, version, - deductions, taxes, benefits, - additionalProperties); + paidTimeOff, reimbursements, customWithholdings, + version, deductions, taxes, + benefits, additionalProperties); } @Override @@ -865,6 +913,7 @@ public String toString() { "hourlyCompensations", hourlyCompensations, "paidTimeOff", paidTimeOff, "reimbursements", reimbursements, + "customWithholdings", customWithholdings, "version", version, "deductions", deductions, "taxes", taxes, @@ -903,6 +952,8 @@ public final static class Builder { private Optional> reimbursements = Optional.empty(); + private Optional customWithholdings = Optional.empty(); + private Optional version = Optional.empty(); private Optional> deductions = Optional.empty(); @@ -1210,6 +1261,29 @@ public Builder reimbursements(Optional } + /** + * The one-time custom withholding overrides applied to this payroll for this employee. + * `federal` is null when no federal one-time override is set; `state` is an empty + * array when no state one-time overrides are set. + */ + public Builder customWithholdings(PayrollShowCustomWithholdings customWithholdings) { + Utils.checkNotNull(customWithholdings, "customWithholdings"); + this.customWithholdings = Optional.ofNullable(customWithholdings); + return this; + } + + /** + * The one-time custom withholding overrides applied to this payroll for this employee. + * `federal` is null when no federal one-time override is set; `state` is an empty + * array when no state one-time overrides are set. + */ + public Builder customWithholdings(Optional customWithholdings) { + Utils.checkNotNull(customWithholdings, "customWithholdings"); + this.customWithholdings = customWithholdings; + return this; + } + + /** * The current version of this employee compensation. This field is only available for prepared * payrolls. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for @@ -1318,8 +1392,9 @@ public EmployeeCompensations build() { preferredFirstName, lastName, grossPay, netPay, checkAmount, paymentMethod, memo, fixedCompensations, hourlyCompensations, - paidTimeOff, reimbursements, version, - deductions, taxes, benefits) + paidTimeOff, reimbursements, customWithholdings, + version, deductions, taxes, + benefits) .withAdditionalProperties(additionalProperties); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/EmployeeOnboardingStatus.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/EmployeeOnboardingStatus.java index e7aa89cab..b33c6bedd 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/EmployeeOnboardingStatus.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/EmployeeOnboardingStatus.java @@ -41,22 +41,43 @@ public class EmployeeOnboardingStatus { @JsonProperty("onboarding_steps") private Optional> onboardingSteps; + /** + * Validation issues that should be resolved before this employee's onboarding is complete. Each entry + * identifies an affected field, a category describing the type of problem, and a human-readable + * message. + * + *

    Supported categories: + * + *

    - `duplicate_value`: Another employee in the same company already has this value. To resolve, cancel + * this onboarding and initiate a rehire if it's a returning employee, or contact support to + * investigate the conflict. + * + *

    This list may grow over time as new validation rules are added. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("blockers") + private Optional> blockers; + @JsonCreator public EmployeeOnboardingStatus( @JsonProperty("uuid") String uuid, @JsonProperty("onboarding_status") Optional onboardingStatus, - @JsonProperty("onboarding_steps") Optional> onboardingSteps) { + @JsonProperty("onboarding_steps") Optional> onboardingSteps, + @JsonProperty("blockers") Optional> blockers) { Utils.checkNotNull(uuid, "uuid"); Utils.checkNotNull(onboardingStatus, "onboardingStatus"); Utils.checkNotNull(onboardingSteps, "onboardingSteps"); + Utils.checkNotNull(blockers, "blockers"); this.uuid = uuid; this.onboardingStatus = onboardingStatus; this.onboardingSteps = onboardingSteps; + this.blockers = blockers; } public EmployeeOnboardingStatus( String uuid) { - this(uuid, Optional.empty(), Optional.empty()); + this(uuid, Optional.empty(), Optional.empty(), + Optional.empty()); } /** @@ -84,6 +105,25 @@ public Optional> onboardingSteps() return (Optional>) onboardingSteps; } + /** + * Validation issues that should be resolved before this employee's onboarding is complete. Each entry + * identifies an affected field, a category describing the type of problem, and a human-readable + * message. + * + *

    Supported categories: + * + *

    - `duplicate_value`: Another employee in the same company already has this value. To resolve, cancel + * this onboarding and initiate a rehire if it's a returning employee, or contact support to + * investigate the conflict. + * + *

    This list may grow over time as new validation rules are added. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> blockers() { + return (Optional>) blockers; + } + public static Builder builder() { return new Builder(); } @@ -136,6 +176,45 @@ public EmployeeOnboardingStatus withOnboardingSteps(OptionalSupported categories: + * + *

    - `duplicate_value`: Another employee in the same company already has this value. To resolve, cancel + * this onboarding and initiate a rehire if it's a returning employee, or contact support to + * investigate the conflict. + * + *

    This list may grow over time as new validation rules are added. + */ + public EmployeeOnboardingStatus withBlockers(List blockers) { + Utils.checkNotNull(blockers, "blockers"); + this.blockers = Optional.ofNullable(blockers); + return this; + } + + + /** + * Validation issues that should be resolved before this employee's onboarding is complete. Each entry + * identifies an affected field, a category describing the type of problem, and a human-readable + * message. + * + *

    Supported categories: + * + *

    - `duplicate_value`: Another employee in the same company already has this value. To resolve, cancel + * this onboarding and initiate a rehire if it's a returning employee, or contact support to + * investigate the conflict. + * + *

    This list may grow over time as new validation rules are added. + */ + public EmployeeOnboardingStatus withBlockers(Optional> blockers) { + Utils.checkNotNull(blockers, "blockers"); + this.blockers = blockers; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -148,13 +227,15 @@ public boolean equals(java.lang.Object o) { return Utils.enhancedDeepEquals(this.uuid, other.uuid) && Utils.enhancedDeepEquals(this.onboardingStatus, other.onboardingStatus) && - Utils.enhancedDeepEquals(this.onboardingSteps, other.onboardingSteps); + Utils.enhancedDeepEquals(this.onboardingSteps, other.onboardingSteps) && + Utils.enhancedDeepEquals(this.blockers, other.blockers); } @Override public int hashCode() { return Utils.enhancedHash( - uuid, onboardingStatus, onboardingSteps); + uuid, onboardingStatus, onboardingSteps, + blockers); } @Override @@ -162,7 +243,8 @@ public String toString() { return Utils.toString(EmployeeOnboardingStatus.class, "uuid", uuid, "onboardingStatus", onboardingStatus, - "onboardingSteps", onboardingSteps); + "onboardingSteps", onboardingSteps, + "blockers", blockers); } @SuppressWarnings("UnusedReturnValue") @@ -174,6 +256,8 @@ public final static class Builder { private Optional> onboardingSteps = Optional.empty(); + private Optional> blockers = Optional.empty(); + private Builder() { // force use of static builder() method } @@ -226,10 +310,50 @@ public Builder onboardingSteps(OptionalSupported categories: + * + *

    - `duplicate_value`: Another employee in the same company already has this value. To resolve, cancel + * this onboarding and initiate a rehire if it's a returning employee, or contact support to + * investigate the conflict. + * + *

    This list may grow over time as new validation rules are added. + */ + public Builder blockers(List blockers) { + Utils.checkNotNull(blockers, "blockers"); + this.blockers = Optional.ofNullable(blockers); + return this; + } + + /** + * Validation issues that should be resolved before this employee's onboarding is complete. Each entry + * identifies an affected field, a category describing the type of problem, and a human-readable + * message. + * + *

    Supported categories: + * + *

    - `duplicate_value`: Another employee in the same company already has this value. To resolve, cancel + * this onboarding and initiate a rehire if it's a returning employee, or contact support to + * investigate the conflict. + * + *

    This list may grow over time as new validation rules are added. + */ + public Builder blockers(Optional> blockers) { + Utils.checkNotNull(blockers, "blockers"); + this.blockers = blockers; + return this; + } + public EmployeeOnboardingStatus build() { return new EmployeeOnboardingStatus( - uuid, onboardingStatus, onboardingSteps); + uuid, onboardingStatus, onboardingSteps, + blockers); } } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/EmployeeOnboardingStatusCategory.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/EmployeeOnboardingStatusCategory.java new file mode 100644 index 000000000..e203d6f41 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/EmployeeOnboardingStatusCategory.java @@ -0,0 +1,39 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * EmployeeOnboardingStatusCategory + * + *

    Category of the blocker. See the array-level description for resolution guidance. + */ +public enum EmployeeOnboardingStatusCategory { + DUPLICATE_VALUE("duplicate_value"); + + @JsonValue + private final String value; + + EmployeeOnboardingStatusCategory(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (EmployeeOnboardingStatusCategory o: EmployeeOnboardingStatusCategory.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/EmployeePaymentDetailsList.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/EmployeePaymentDetailsList.java index 14d8b6518..7d5ad9d35 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/EmployeePaymentDetailsList.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/EmployeePaymentDetailsList.java @@ -54,14 +54,14 @@ public class EmployeePaymentDetailsList { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("split_by") - private JsonNullable splitBy; + private JsonNullable splitBy; /** * An array of payment splits. This field is applicable when `payment_method` is "Direct Deposit". */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("splits") - private JsonNullable> splits; + private JsonNullable> splits; @JsonCreator public EmployeePaymentDetailsList( @@ -69,8 +69,8 @@ public EmployeePaymentDetailsList( @JsonProperty("first_name") Optional firstName, @JsonProperty("last_name") Optional lastName, @JsonProperty("payment_method") Optional paymentMethod, - @JsonProperty("split_by") JsonNullable splitBy, - @JsonProperty("splits") JsonNullable> splits) { + @JsonProperty("split_by") JsonNullable splitBy, + @JsonProperty("splits") JsonNullable> splits) { Utils.checkNotNull(employeeUuid, "employeeUuid"); Utils.checkNotNull(firstName, "firstName"); Utils.checkNotNull(lastName, "lastName"); @@ -131,8 +131,8 @@ public Optional paymentMethod() { */ @SuppressWarnings("unchecked") @JsonIgnore - public JsonNullable splitBy() { - return (JsonNullable) splitBy; + public JsonNullable splitBy() { + return (JsonNullable) splitBy; } /** @@ -140,8 +140,8 @@ public JsonNullable splitBy() { */ @SuppressWarnings("unchecked") @JsonIgnore - public JsonNullable> splits() { - return (JsonNullable>) splits; + public JsonNullable> splits() { + return (JsonNullable>) splits; } public static Builder builder() { @@ -231,7 +231,7 @@ public EmployeePaymentDetailsList withPaymentMethod(OptionalIf `split_by` is Amount, the last split amount must be `null` to capture the remainder. */ - public EmployeePaymentDetailsList withSplitBy(SplitBy splitBy) { + public EmployeePaymentDetailsList withSplitBy(EmployeePaymentDetailsListSplitBy splitBy) { Utils.checkNotNull(splitBy, "splitBy"); this.splitBy = JsonNullable.of(splitBy); return this; @@ -243,7 +243,7 @@ public EmployeePaymentDetailsList withSplitBy(SplitBy splitBy) { * *

    If `split_by` is Amount, the last split amount must be `null` to capture the remainder. */ - public EmployeePaymentDetailsList withSplitBy(JsonNullable splitBy) { + public EmployeePaymentDetailsList withSplitBy(JsonNullable splitBy) { Utils.checkNotNull(splitBy, "splitBy"); this.splitBy = splitBy; return this; @@ -252,7 +252,7 @@ public EmployeePaymentDetailsList withSplitBy(JsonNullable sp /** * An array of payment splits. This field is applicable when `payment_method` is "Direct Deposit". */ - public EmployeePaymentDetailsList withSplits(List splits) { + public EmployeePaymentDetailsList withSplits(List splits) { Utils.checkNotNull(splits, "splits"); this.splits = JsonNullable.of(splits); return this; @@ -261,7 +261,7 @@ public EmployeePaymentDetailsList withSplits(List splits) { /** * An array of payment splits. This field is applicable when `payment_method` is "Direct Deposit". */ - public EmployeePaymentDetailsList withSplits(JsonNullable> splits) { + public EmployeePaymentDetailsList withSplits(JsonNullable> splits) { Utils.checkNotNull(splits, "splits"); this.splits = splits; return this; @@ -314,9 +314,9 @@ public final static class Builder { private Optional paymentMethod = Optional.empty(); - private JsonNullable splitBy = JsonNullable.undefined(); + private JsonNullable splitBy = JsonNullable.undefined(); - private JsonNullable> splits = JsonNullable.undefined(); + private JsonNullable> splits = JsonNullable.undefined(); private Builder() { // force use of static builder() method @@ -405,7 +405,7 @@ public Builder paymentMethod(OptionalIf `split_by` is Amount, the last split amount must be `null` to capture the remainder. */ - public Builder splitBy(SplitBy splitBy) { + public Builder splitBy(EmployeePaymentDetailsListSplitBy splitBy) { Utils.checkNotNull(splitBy, "splitBy"); this.splitBy = JsonNullable.of(splitBy); return this; @@ -417,7 +417,7 @@ public Builder splitBy(SplitBy splitBy) { * *

    If `split_by` is Amount, the last split amount must be `null` to capture the remainder. */ - public Builder splitBy(JsonNullable splitBy) { + public Builder splitBy(JsonNullable splitBy) { Utils.checkNotNull(splitBy, "splitBy"); this.splitBy = splitBy; return this; @@ -427,7 +427,7 @@ public Builder splitBy(JsonNullable splitBy) { /** * An array of payment splits. This field is applicable when `payment_method` is "Direct Deposit". */ - public Builder splits(List splits) { + public Builder splits(List splits) { Utils.checkNotNull(splits, "splits"); this.splits = JsonNullable.of(splits); return this; @@ -436,7 +436,7 @@ public Builder splits(List splits) { /** * An array of payment splits. This field is applicable when `payment_method` is "Direct Deposit". */ - public Builder splits(JsonNullable> splits) { + public Builder splits(JsonNullable> splits) { Utils.checkNotNull(splits, "splits"); this.splits = splits; return this; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentDetailsListSplitBy.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/EmployeePaymentDetailsListSplitBy.java similarity index 67% rename from gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentDetailsListSplitBy.java rename to gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/EmployeePaymentDetailsListSplitBy.java index 89693fd8a..bd142eba4 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentDetailsListSplitBy.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/EmployeePaymentDetailsListSplitBy.java @@ -8,14 +8,14 @@ import java.util.Objects; import java.util.Optional; -public enum ContractorPaymentDetailsListSplitBy { +public enum EmployeePaymentDetailsListSplitBy { AMOUNT("Amount"), PERCENTAGE("Percentage"); @JsonValue private final String value; - ContractorPaymentDetailsListSplitBy(String value) { + EmployeePaymentDetailsListSplitBy(String value) { this.value = value; } @@ -23,8 +23,8 @@ public String value() { return value; } - public static Optional fromValue(String value) { - for (ContractorPaymentDetailsListSplitBy o: ContractorPaymentDetailsListSplitBy.values()) { + public static Optional fromValue(String value) { + for (EmployeePaymentDetailsListSplitBy o: EmployeePaymentDetailsListSplitBy.values()) { if (Objects.deepEquals(o.value, value)) { return Optional.of(o); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentDetailsListSplits.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/EmployeePaymentDetailsListSplits.java similarity index 78% rename from gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentDetailsListSplits.java rename to gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/EmployeePaymentDetailsListSplits.java index 4b9b78451..d452ae1db 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentDetailsListSplits.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/EmployeePaymentDetailsListSplits.java @@ -17,13 +17,17 @@ import org.openapitools.jackson.nullable.JsonNullable; -public class ContractorPaymentDetailsListSplits { - +public class EmployeePaymentDetailsListSplits { + /** + * The UUID of the bank account. + */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("bank_account_uuid") private Optional bankAccountUuid; - + /** + * The name of the bank account. + */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("name") private Optional name; @@ -37,17 +41,26 @@ public class ContractorPaymentDetailsListSplits { /** * Ciphertext containing the full bank account number, which must be decrypted using a key provided by - * Gusto. Only visible with the `contractor_payment_methods:read:account_number` scope. + * Gusto. Only visible with the `employee_payment_methods:read:account_number` scope. */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("encrypted_account_number") private JsonNullable encryptedAccountNumber; - + /** + * The routing number of the bank account. + */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("routing_number") private Optional routingNumber; + /** + * The bank account type (e.g., "Checking" or "Savings"). + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("account_type") + private Optional accountType; + /** * The order of priority for each payment split, with priority 1 being the first bank account paid. * Priority must be unique and sequential. @@ -65,50 +78,51 @@ public class ContractorPaymentDetailsListSplits { @JsonProperty("split_amount") private JsonNullable splitAmount; - - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("account_type") - private Optional accountType; - @JsonCreator - public ContractorPaymentDetailsListSplits( + public EmployeePaymentDetailsListSplits( @JsonProperty("bank_account_uuid") Optional bankAccountUuid, @JsonProperty("name") Optional name, @JsonProperty("hidden_account_number") Optional hiddenAccountNumber, @JsonProperty("encrypted_account_number") JsonNullable encryptedAccountNumber, @JsonProperty("routing_number") Optional routingNumber, + @JsonProperty("account_type") Optional accountType, @JsonProperty("priority") Optional priority, - @JsonProperty("split_amount") JsonNullable splitAmount, - @JsonProperty("account_type") Optional accountType) { + @JsonProperty("split_amount") JsonNullable splitAmount) { Utils.checkNotNull(bankAccountUuid, "bankAccountUuid"); Utils.checkNotNull(name, "name"); Utils.checkNotNull(hiddenAccountNumber, "hiddenAccountNumber"); Utils.checkNotNull(encryptedAccountNumber, "encryptedAccountNumber"); Utils.checkNotNull(routingNumber, "routingNumber"); + Utils.checkNotNull(accountType, "accountType"); Utils.checkNotNull(priority, "priority"); Utils.checkNotNull(splitAmount, "splitAmount"); - Utils.checkNotNull(accountType, "accountType"); this.bankAccountUuid = bankAccountUuid; this.name = name; this.hiddenAccountNumber = hiddenAccountNumber; this.encryptedAccountNumber = encryptedAccountNumber; this.routingNumber = routingNumber; + this.accountType = accountType; this.priority = priority; this.splitAmount = splitAmount; - this.accountType = accountType; } - public ContractorPaymentDetailsListSplits() { + public EmployeePaymentDetailsListSplits() { this(Optional.empty(), Optional.empty(), Optional.empty(), JsonNullable.undefined(), Optional.empty(), Optional.empty(), - JsonNullable.undefined(), Optional.empty()); + Optional.empty(), JsonNullable.undefined()); } + /** + * The UUID of the bank account. + */ @JsonIgnore public Optional bankAccountUuid() { return bankAccountUuid; } + /** + * The name of the bank account. + */ @JsonIgnore public Optional name() { return name; @@ -124,18 +138,29 @@ public Optional hiddenAccountNumber() { /** * Ciphertext containing the full bank account number, which must be decrypted using a key provided by - * Gusto. Only visible with the `contractor_payment_methods:read:account_number` scope. + * Gusto. Only visible with the `employee_payment_methods:read:account_number` scope. */ @JsonIgnore public JsonNullable encryptedAccountNumber() { return encryptedAccountNumber; } + /** + * The routing number of the bank account. + */ @JsonIgnore public Optional routingNumber() { return routingNumber; } + /** + * The bank account type (e.g., "Checking" or "Savings"). + */ + @JsonIgnore + public Optional accountType() { + return accountType; + } + /** * The order of priority for each payment split, with priority 1 being the first bank account paid. * Priority must be unique and sequential. @@ -155,37 +180,44 @@ public JsonNullable splitAmount() { return splitAmount; } - @JsonIgnore - public Optional accountType() { - return accountType; - } - public static Builder builder() { return new Builder(); } - public ContractorPaymentDetailsListSplits withBankAccountUuid(String bankAccountUuid) { + /** + * The UUID of the bank account. + */ + public EmployeePaymentDetailsListSplits withBankAccountUuid(String bankAccountUuid) { Utils.checkNotNull(bankAccountUuid, "bankAccountUuid"); this.bankAccountUuid = Optional.ofNullable(bankAccountUuid); return this; } - public ContractorPaymentDetailsListSplits withBankAccountUuid(Optional bankAccountUuid) { + /** + * The UUID of the bank account. + */ + public EmployeePaymentDetailsListSplits withBankAccountUuid(Optional bankAccountUuid) { Utils.checkNotNull(bankAccountUuid, "bankAccountUuid"); this.bankAccountUuid = bankAccountUuid; return this; } - public ContractorPaymentDetailsListSplits withName(String name) { + /** + * The name of the bank account. + */ + public EmployeePaymentDetailsListSplits withName(String name) { Utils.checkNotNull(name, "name"); this.name = Optional.ofNullable(name); return this; } - public ContractorPaymentDetailsListSplits withName(Optional name) { + /** + * The name of the bank account. + */ + public EmployeePaymentDetailsListSplits withName(Optional name) { Utils.checkNotNull(name, "name"); this.name = name; return this; @@ -194,7 +226,7 @@ public ContractorPaymentDetailsListSplits withName(Optional name) { /** * An obfuscated version of the account number which can be used for display purposes. */ - public ContractorPaymentDetailsListSplits withHiddenAccountNumber(String hiddenAccountNumber) { + public EmployeePaymentDetailsListSplits withHiddenAccountNumber(String hiddenAccountNumber) { Utils.checkNotNull(hiddenAccountNumber, "hiddenAccountNumber"); this.hiddenAccountNumber = Optional.ofNullable(hiddenAccountNumber); return this; @@ -204,7 +236,7 @@ public ContractorPaymentDetailsListSplits withHiddenAccountNumber(String hiddenA /** * An obfuscated version of the account number which can be used for display purposes. */ - public ContractorPaymentDetailsListSplits withHiddenAccountNumber(Optional hiddenAccountNumber) { + public EmployeePaymentDetailsListSplits withHiddenAccountNumber(Optional hiddenAccountNumber) { Utils.checkNotNull(hiddenAccountNumber, "hiddenAccountNumber"); this.hiddenAccountNumber = hiddenAccountNumber; return this; @@ -212,9 +244,9 @@ public ContractorPaymentDetailsListSplits withHiddenAccountNumber(Optional encryptedAccountNumber) { + public EmployeePaymentDetailsListSplits withEncryptedAccountNumber(JsonNullable encryptedAccountNumber) { Utils.checkNotNull(encryptedAccountNumber, "encryptedAccountNumber"); this.encryptedAccountNumber = encryptedAccountNumber; return this; } - public ContractorPaymentDetailsListSplits withRoutingNumber(String routingNumber) { + /** + * The routing number of the bank account. + */ + public EmployeePaymentDetailsListSplits withRoutingNumber(String routingNumber) { Utils.checkNotNull(routingNumber, "routingNumber"); this.routingNumber = Optional.ofNullable(routingNumber); return this; } - public ContractorPaymentDetailsListSplits withRoutingNumber(Optional routingNumber) { + /** + * The routing number of the bank account. + */ + public EmployeePaymentDetailsListSplits withRoutingNumber(Optional routingNumber) { Utils.checkNotNull(routingNumber, "routingNumber"); this.routingNumber = routingNumber; return this; } + /** + * The bank account type (e.g., "Checking" or "Savings"). + */ + public EmployeePaymentDetailsListSplits withAccountType(String accountType) { + Utils.checkNotNull(accountType, "accountType"); + this.accountType = Optional.ofNullable(accountType); + return this; + } + + + /** + * The bank account type (e.g., "Checking" or "Savings"). + */ + public EmployeePaymentDetailsListSplits withAccountType(Optional accountType) { + Utils.checkNotNull(accountType, "accountType"); + this.accountType = accountType; + return this; + } + /** * The order of priority for each payment split, with priority 1 being the first bank account paid. * Priority must be unique and sequential. */ - public ContractorPaymentDetailsListSplits withPriority(long priority) { + public EmployeePaymentDetailsListSplits withPriority(long priority) { Utils.checkNotNull(priority, "priority"); this.priority = Optional.ofNullable(priority); return this; @@ -258,7 +315,7 @@ public ContractorPaymentDetailsListSplits withPriority(long priority) { * The order of priority for each payment split, with priority 1 being the first bank account paid. * Priority must be unique and sequential. */ - public ContractorPaymentDetailsListSplits withPriority(Optional priority) { + public EmployeePaymentDetailsListSplits withPriority(Optional priority) { Utils.checkNotNull(priority, "priority"); this.priority = priority; return this; @@ -269,7 +326,7 @@ public ContractorPaymentDetailsListSplits withPriority(Optional priority) * a `split_amount` of `null` to capture the remainder. If `split_by` is 'Percentage', this is the * percentage value (e.g., 60 for 60%). */ - public ContractorPaymentDetailsListSplits withSplitAmount(double splitAmount) { + public EmployeePaymentDetailsListSplits withSplitAmount(double splitAmount) { Utils.checkNotNull(splitAmount, "splitAmount"); this.splitAmount = JsonNullable.of(splitAmount); return this; @@ -280,25 +337,12 @@ public ContractorPaymentDetailsListSplits withSplitAmount(double splitAmount) { * a `split_amount` of `null` to capture the remainder. If `split_by` is 'Percentage', this is the * percentage value (e.g., 60 for 60%). */ - public ContractorPaymentDetailsListSplits withSplitAmount(JsonNullable splitAmount) { + public EmployeePaymentDetailsListSplits withSplitAmount(JsonNullable splitAmount) { Utils.checkNotNull(splitAmount, "splitAmount"); this.splitAmount = splitAmount; return this; } - public ContractorPaymentDetailsListSplits withAccountType(String accountType) { - Utils.checkNotNull(accountType, "accountType"); - this.accountType = Optional.ofNullable(accountType); - return this; - } - - - public ContractorPaymentDetailsListSplits withAccountType(Optional accountType) { - Utils.checkNotNull(accountType, "accountType"); - this.accountType = accountType; - return this; - } - @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -307,37 +351,37 @@ public boolean equals(java.lang.Object o) { if (o == null || getClass() != o.getClass()) { return false; } - ContractorPaymentDetailsListSplits other = (ContractorPaymentDetailsListSplits) o; + EmployeePaymentDetailsListSplits other = (EmployeePaymentDetailsListSplits) o; return Utils.enhancedDeepEquals(this.bankAccountUuid, other.bankAccountUuid) && Utils.enhancedDeepEquals(this.name, other.name) && Utils.enhancedDeepEquals(this.hiddenAccountNumber, other.hiddenAccountNumber) && Utils.enhancedDeepEquals(this.encryptedAccountNumber, other.encryptedAccountNumber) && Utils.enhancedDeepEquals(this.routingNumber, other.routingNumber) && + Utils.enhancedDeepEquals(this.accountType, other.accountType) && Utils.enhancedDeepEquals(this.priority, other.priority) && - Utils.enhancedDeepEquals(this.splitAmount, other.splitAmount) && - Utils.enhancedDeepEquals(this.accountType, other.accountType); + Utils.enhancedDeepEquals(this.splitAmount, other.splitAmount); } @Override public int hashCode() { return Utils.enhancedHash( bankAccountUuid, name, hiddenAccountNumber, - encryptedAccountNumber, routingNumber, priority, - splitAmount, accountType); + encryptedAccountNumber, routingNumber, accountType, + priority, splitAmount); } @Override public String toString() { - return Utils.toString(ContractorPaymentDetailsListSplits.class, + return Utils.toString(EmployeePaymentDetailsListSplits.class, "bankAccountUuid", bankAccountUuid, "name", name, "hiddenAccountNumber", hiddenAccountNumber, "encryptedAccountNumber", encryptedAccountNumber, "routingNumber", routingNumber, + "accountType", accountType, "priority", priority, - "splitAmount", splitAmount, - "accountType", accountType); + "splitAmount", splitAmount); } @SuppressWarnings("UnusedReturnValue") @@ -353,23 +397,29 @@ public final static class Builder { private Optional routingNumber = Optional.empty(); + private Optional accountType = Optional.empty(); + private Optional priority = Optional.empty(); private JsonNullable splitAmount = JsonNullable.undefined(); - private Optional accountType = Optional.empty(); - private Builder() { // force use of static builder() method } + /** + * The UUID of the bank account. + */ public Builder bankAccountUuid(String bankAccountUuid) { Utils.checkNotNull(bankAccountUuid, "bankAccountUuid"); this.bankAccountUuid = Optional.ofNullable(bankAccountUuid); return this; } + /** + * The UUID of the bank account. + */ public Builder bankAccountUuid(Optional bankAccountUuid) { Utils.checkNotNull(bankAccountUuid, "bankAccountUuid"); this.bankAccountUuid = bankAccountUuid; @@ -377,12 +427,18 @@ public Builder bankAccountUuid(Optional bankAccountUuid) { } + /** + * The name of the bank account. + */ public Builder name(String name) { Utils.checkNotNull(name, "name"); this.name = Optional.ofNullable(name); return this; } + /** + * The name of the bank account. + */ public Builder name(Optional name) { Utils.checkNotNull(name, "name"); this.name = name; @@ -411,7 +467,7 @@ public Builder hiddenAccountNumber(Optional hiddenAccountNumber) { /** * Ciphertext containing the full bank account number, which must be decrypted using a key provided by - * Gusto. Only visible with the `contractor_payment_methods:read:account_number` scope. + * Gusto. Only visible with the `employee_payment_methods:read:account_number` scope. */ public Builder encryptedAccountNumber(String encryptedAccountNumber) { Utils.checkNotNull(encryptedAccountNumber, "encryptedAccountNumber"); @@ -421,7 +477,7 @@ public Builder encryptedAccountNumber(String encryptedAccountNumber) { /** * Ciphertext containing the full bank account number, which must be decrypted using a key provided by - * Gusto. Only visible with the `contractor_payment_methods:read:account_number` scope. + * Gusto. Only visible with the `employee_payment_methods:read:account_number` scope. */ public Builder encryptedAccountNumber(JsonNullable encryptedAccountNumber) { Utils.checkNotNull(encryptedAccountNumber, "encryptedAccountNumber"); @@ -430,12 +486,18 @@ public Builder encryptedAccountNumber(JsonNullable encryptedAccountNumbe } + /** + * The routing number of the bank account. + */ public Builder routingNumber(String routingNumber) { Utils.checkNotNull(routingNumber, "routingNumber"); this.routingNumber = Optional.ofNullable(routingNumber); return this; } + /** + * The routing number of the bank account. + */ public Builder routingNumber(Optional routingNumber) { Utils.checkNotNull(routingNumber, "routingNumber"); this.routingNumber = routingNumber; @@ -443,6 +505,25 @@ public Builder routingNumber(Optional routingNumber) { } + /** + * The bank account type (e.g., "Checking" or "Savings"). + */ + public Builder accountType(String accountType) { + Utils.checkNotNull(accountType, "accountType"); + this.accountType = Optional.ofNullable(accountType); + return this; + } + + /** + * The bank account type (e.g., "Checking" or "Savings"). + */ + public Builder accountType(Optional accountType) { + Utils.checkNotNull(accountType, "accountType"); + this.accountType = accountType; + return this; + } + + /** * The order of priority for each payment split, with priority 1 being the first bank account paid. * Priority must be unique and sequential. @@ -486,25 +567,12 @@ public Builder splitAmount(JsonNullable splitAmount) { return this; } + public EmployeePaymentDetailsListSplits build() { - public Builder accountType(String accountType) { - Utils.checkNotNull(accountType, "accountType"); - this.accountType = Optional.ofNullable(accountType); - return this; - } - - public Builder accountType(Optional accountType) { - Utils.checkNotNull(accountType, "accountType"); - this.accountType = accountType; - return this; - } - - public ContractorPaymentDetailsListSplits build() { - - return new ContractorPaymentDetailsListSplits( + return new EmployeePaymentDetailsListSplits( bankAccountUuid, name, hiddenAccountNumber, - encryptedAccountNumber, routingNumber, priority, - splitAmount, accountType); + encryptedAccountNumber, routingNumber, accountType, + priority, splitAmount); } } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/EmployeeStateTaxInputQuestionFormat.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/EmployeeStateTaxInputQuestionFormat.java index 36e686ef3..e35242030 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/EmployeeStateTaxInputQuestionFormat.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/EmployeeStateTaxInputQuestionFormat.java @@ -28,12 +28,12 @@ public class EmployeeStateTaxInputQuestionFormat { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("options") - private Optional> options; + private Optional> options; @JsonCreator public EmployeeStateTaxInputQuestionFormat( @JsonProperty("type") String type, - @JsonProperty("options") Optional> options) { + @JsonProperty("options") Optional> options) { Utils.checkNotNull(type, "type"); Utils.checkNotNull(options, "options"); this.type = type; @@ -58,8 +58,8 @@ public String type() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional> options() { - return (Optional>) options; + public Optional> options() { + return (Optional>) options; } public static Builder builder() { @@ -79,7 +79,7 @@ public EmployeeStateTaxInputQuestionFormat withType(String type) { /** * For "Select" type questions, the allowed values and display labels. */ - public EmployeeStateTaxInputQuestionFormat withOptions(List options) { + public EmployeeStateTaxInputQuestionFormat withOptions(List options) { Utils.checkNotNull(options, "options"); this.options = Optional.ofNullable(options); return this; @@ -89,7 +89,7 @@ public EmployeeStateTaxInputQuestionFormat withOptions(List options) { /** * For "Select" type questions, the allowed values and display labels. */ - public EmployeeStateTaxInputQuestionFormat withOptions(Optional> options) { + public EmployeeStateTaxInputQuestionFormat withOptions(Optional> options) { Utils.checkNotNull(options, "options"); this.options = options; return this; @@ -127,7 +127,7 @@ public final static class Builder { private String type; - private Optional> options = Optional.empty(); + private Optional> options = Optional.empty(); private Builder() { // force use of static builder() method @@ -147,7 +147,7 @@ public Builder type(String type) { /** * For "Select" type questions, the allowed values and display labels. */ - public Builder options(List options) { + public Builder options(List options) { Utils.checkNotNull(options, "options"); this.options = Optional.ofNullable(options); return this; @@ -156,7 +156,7 @@ public Builder options(List options) { /** * For "Select" type questions, the allowed values and display labels. */ - public Builder options(Optional> options) { + public Builder options(Optional> options) { Utils.checkNotNull(options, "options"); this.options = options; return this; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/EmployeeStateTaxInputQuestionFormatOptions.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/EmployeeStateTaxInputQuestionFormatOptions.java new file mode 100644 index 000000000..c4629c011 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/EmployeeStateTaxInputQuestionFormatOptions.java @@ -0,0 +1,171 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class EmployeeStateTaxInputQuestionFormatOptions { + /** + * An allowed value to answer the question + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("value") + private Optional value; + + /** + * A display label that corresponds to the answer value + */ + @JsonProperty("label") + private String label; + + @JsonCreator + public EmployeeStateTaxInputQuestionFormatOptions( + @JsonProperty("value") Optional value, + @JsonProperty("label") String label) { + Utils.checkNotNull(value, "value"); + Utils.checkNotNull(label, "label"); + this.value = value; + this.label = label; + } + + public EmployeeStateTaxInputQuestionFormatOptions( + String label) { + this(Optional.empty(), label); + } + + /** + * An allowed value to answer the question + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional value() { + return (Optional) value; + } + + /** + * A display label that corresponds to the answer value + */ + @JsonIgnore + public String label() { + return label; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * An allowed value to answer the question + */ + public EmployeeStateTaxInputQuestionFormatOptions withValue(EmployeeStateTaxInputQuestionFormatValue value) { + Utils.checkNotNull(value, "value"); + this.value = Optional.ofNullable(value); + return this; + } + + + /** + * An allowed value to answer the question + */ + public EmployeeStateTaxInputQuestionFormatOptions withValue(Optional value) { + Utils.checkNotNull(value, "value"); + this.value = value; + return this; + } + + /** + * A display label that corresponds to the answer value + */ + public EmployeeStateTaxInputQuestionFormatOptions withLabel(String label) { + Utils.checkNotNull(label, "label"); + this.label = label; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + EmployeeStateTaxInputQuestionFormatOptions other = (EmployeeStateTaxInputQuestionFormatOptions) o; + return + Utils.enhancedDeepEquals(this.value, other.value) && + Utils.enhancedDeepEquals(this.label, other.label); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + value, label); + } + + @Override + public String toString() { + return Utils.toString(EmployeeStateTaxInputQuestionFormatOptions.class, + "value", value, + "label", label); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional value = Optional.empty(); + + private String label; + + private Builder() { + // force use of static builder() method + } + + + /** + * An allowed value to answer the question + */ + public Builder value(EmployeeStateTaxInputQuestionFormatValue value) { + Utils.checkNotNull(value, "value"); + this.value = Optional.ofNullable(value); + return this; + } + + /** + * An allowed value to answer the question + */ + public Builder value(Optional value) { + Utils.checkNotNull(value, "value"); + this.value = value; + return this; + } + + + /** + * A display label that corresponds to the answer value + */ + public Builder label(String label) { + Utils.checkNotNull(label, "label"); + this.label = label; + return this; + } + + public EmployeeStateTaxInputQuestionFormatOptions build() { + + return new EmployeeStateTaxInputQuestionFormatOptions( + value, label); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Employees.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Employees.java index 4410fd374..74f70f1b3 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Employees.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Employees.java @@ -11,52 +11,166 @@ import com.gusto.embedded_api.utils.Utils; import java.lang.Override; import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.List; import java.util.Optional; public class Employees { /** - * Employee UUID + * The UUID of the employee */ @JsonInclude(Include.NON_ABSENT) - @JsonProperty("employee_uuid") - private Optional employeeUuid; + @JsonProperty("uuid") + private Optional uuid; /** - * Pay schedule UUID + * The sum of employee deduction for this employee given the period of time and the specific company + * benefit. */ @JsonInclude(Include.NON_ABSENT) - @JsonProperty("pay_schedule_uuid") - private Optional payScheduleUuid; + @JsonProperty("company_benefit_deduction") + private Optional companyBenefitDeduction; + + /** + * The sum of company contribution for this employee given the period of time and the specific company + * benefit. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("company_benefit_contribution") + private Optional companyBenefitContribution; + + /** + * The sum of employee benefit deduction for this employee given the period of time and the benefit + * type. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("benefit_deduction") + private Optional benefitDeduction; + + /** + * The sum of company contribution for this employee given the period of time and the benefit type. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("benefit_contribution") + private Optional benefitContribution; + + /** + * Gross pay for this employee given the period of time. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("gross_pay") + private Optional grossPay; + + /** + * Total imputed pay for this employee given the period of time (not scoped to a benefit type). + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("imputed_pay") + private Optional imputedPay; + + + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("payroll_benefits") + private Optional> payrollBenefits; @JsonCreator public Employees( - @JsonProperty("employee_uuid") Optional employeeUuid, - @JsonProperty("pay_schedule_uuid") Optional payScheduleUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - Utils.checkNotNull(payScheduleUuid, "payScheduleUuid"); - this.employeeUuid = employeeUuid; - this.payScheduleUuid = payScheduleUuid; + @JsonProperty("uuid") Optional uuid, + @JsonProperty("company_benefit_deduction") Optional companyBenefitDeduction, + @JsonProperty("company_benefit_contribution") Optional companyBenefitContribution, + @JsonProperty("benefit_deduction") Optional benefitDeduction, + @JsonProperty("benefit_contribution") Optional benefitContribution, + @JsonProperty("gross_pay") Optional grossPay, + @JsonProperty("imputed_pay") Optional imputedPay, + @JsonProperty("payroll_benefits") Optional> payrollBenefits) { + Utils.checkNotNull(uuid, "uuid"); + Utils.checkNotNull(companyBenefitDeduction, "companyBenefitDeduction"); + Utils.checkNotNull(companyBenefitContribution, "companyBenefitContribution"); + Utils.checkNotNull(benefitDeduction, "benefitDeduction"); + Utils.checkNotNull(benefitContribution, "benefitContribution"); + Utils.checkNotNull(grossPay, "grossPay"); + Utils.checkNotNull(imputedPay, "imputedPay"); + Utils.checkNotNull(payrollBenefits, "payrollBenefits"); + this.uuid = uuid; + this.companyBenefitDeduction = companyBenefitDeduction; + this.companyBenefitContribution = companyBenefitContribution; + this.benefitDeduction = benefitDeduction; + this.benefitContribution = benefitContribution; + this.grossPay = grossPay; + this.imputedPay = imputedPay; + this.payrollBenefits = payrollBenefits; } public Employees() { - this(Optional.empty(), Optional.empty()); + this(Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty(), Optional.empty()); } /** - * Employee UUID + * The UUID of the employee */ @JsonIgnore - public Optional employeeUuid() { - return employeeUuid; + public Optional uuid() { + return uuid; } /** - * Pay schedule UUID + * The sum of employee deduction for this employee given the period of time and the specific company + * benefit. */ @JsonIgnore - public Optional payScheduleUuid() { - return payScheduleUuid; + public Optional companyBenefitDeduction() { + return companyBenefitDeduction; + } + + /** + * The sum of company contribution for this employee given the period of time and the specific company + * benefit. + */ + @JsonIgnore + public Optional companyBenefitContribution() { + return companyBenefitContribution; + } + + /** + * The sum of employee benefit deduction for this employee given the period of time and the benefit + * type. + */ + @JsonIgnore + public Optional benefitDeduction() { + return benefitDeduction; + } + + /** + * The sum of company contribution for this employee given the period of time and the benefit type. + */ + @JsonIgnore + public Optional benefitContribution() { + return benefitContribution; + } + + /** + * Gross pay for this employee given the period of time. + */ + @JsonIgnore + public Optional grossPay() { + return grossPay; + } + + /** + * Total imputed pay for this employee given the period of time (not scoped to a benefit type). + */ + @JsonIgnore + public Optional imputedPay() { + return imputedPay; + } + + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> payrollBenefits() { + return (Optional>) payrollBenefits; } public static Builder builder() { @@ -65,40 +179,154 @@ public static Builder builder() { /** - * Employee UUID + * The UUID of the employee */ - public Employees withEmployeeUuid(String employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = Optional.ofNullable(employeeUuid); + public Employees withUuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = Optional.ofNullable(uuid); return this; } /** - * Employee UUID + * The UUID of the employee */ - public Employees withEmployeeUuid(Optional employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = employeeUuid; + public Employees withUuid(Optional uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; return this; } /** - * Pay schedule UUID + * The sum of employee deduction for this employee given the period of time and the specific company + * benefit. */ - public Employees withPayScheduleUuid(String payScheduleUuid) { - Utils.checkNotNull(payScheduleUuid, "payScheduleUuid"); - this.payScheduleUuid = Optional.ofNullable(payScheduleUuid); + public Employees withCompanyBenefitDeduction(String companyBenefitDeduction) { + Utils.checkNotNull(companyBenefitDeduction, "companyBenefitDeduction"); + this.companyBenefitDeduction = Optional.ofNullable(companyBenefitDeduction); return this; } /** - * Pay schedule UUID + * The sum of employee deduction for this employee given the period of time and the specific company + * benefit. + */ + public Employees withCompanyBenefitDeduction(Optional companyBenefitDeduction) { + Utils.checkNotNull(companyBenefitDeduction, "companyBenefitDeduction"); + this.companyBenefitDeduction = companyBenefitDeduction; + return this; + } + + /** + * The sum of company contribution for this employee given the period of time and the specific company + * benefit. */ - public Employees withPayScheduleUuid(Optional payScheduleUuid) { - Utils.checkNotNull(payScheduleUuid, "payScheduleUuid"); - this.payScheduleUuid = payScheduleUuid; + public Employees withCompanyBenefitContribution(String companyBenefitContribution) { + Utils.checkNotNull(companyBenefitContribution, "companyBenefitContribution"); + this.companyBenefitContribution = Optional.ofNullable(companyBenefitContribution); + return this; + } + + + /** + * The sum of company contribution for this employee given the period of time and the specific company + * benefit. + */ + public Employees withCompanyBenefitContribution(Optional companyBenefitContribution) { + Utils.checkNotNull(companyBenefitContribution, "companyBenefitContribution"); + this.companyBenefitContribution = companyBenefitContribution; + return this; + } + + /** + * The sum of employee benefit deduction for this employee given the period of time and the benefit + * type. + */ + public Employees withBenefitDeduction(String benefitDeduction) { + Utils.checkNotNull(benefitDeduction, "benefitDeduction"); + this.benefitDeduction = Optional.ofNullable(benefitDeduction); + return this; + } + + + /** + * The sum of employee benefit deduction for this employee given the period of time and the benefit + * type. + */ + public Employees withBenefitDeduction(Optional benefitDeduction) { + Utils.checkNotNull(benefitDeduction, "benefitDeduction"); + this.benefitDeduction = benefitDeduction; + return this; + } + + /** + * The sum of company contribution for this employee given the period of time and the benefit type. + */ + public Employees withBenefitContribution(String benefitContribution) { + Utils.checkNotNull(benefitContribution, "benefitContribution"); + this.benefitContribution = Optional.ofNullable(benefitContribution); + return this; + } + + + /** + * The sum of company contribution for this employee given the period of time and the benefit type. + */ + public Employees withBenefitContribution(Optional benefitContribution) { + Utils.checkNotNull(benefitContribution, "benefitContribution"); + this.benefitContribution = benefitContribution; + return this; + } + + /** + * Gross pay for this employee given the period of time. + */ + public Employees withGrossPay(String grossPay) { + Utils.checkNotNull(grossPay, "grossPay"); + this.grossPay = Optional.ofNullable(grossPay); + return this; + } + + + /** + * Gross pay for this employee given the period of time. + */ + public Employees withGrossPay(Optional grossPay) { + Utils.checkNotNull(grossPay, "grossPay"); + this.grossPay = grossPay; + return this; + } + + /** + * Total imputed pay for this employee given the period of time (not scoped to a benefit type). + */ + public Employees withImputedPay(String imputedPay) { + Utils.checkNotNull(imputedPay, "imputedPay"); + this.imputedPay = Optional.ofNullable(imputedPay); + return this; + } + + + /** + * Total imputed pay for this employee given the period of time (not scoped to a benefit type). + */ + public Employees withImputedPay(Optional imputedPay) { + Utils.checkNotNull(imputedPay, "imputedPay"); + this.imputedPay = imputedPay; + return this; + } + + public Employees withPayrollBenefits(List payrollBenefits) { + Utils.checkNotNull(payrollBenefits, "payrollBenefits"); + this.payrollBenefits = Optional.ofNullable(payrollBenefits); + return this; + } + + + public Employees withPayrollBenefits(Optional> payrollBenefits) { + Utils.checkNotNull(payrollBenefits, "payrollBenefits"); + this.payrollBenefits = payrollBenefits; return this; } @@ -112,29 +340,55 @@ public boolean equals(java.lang.Object o) { } Employees other = (Employees) o; return - Utils.enhancedDeepEquals(this.employeeUuid, other.employeeUuid) && - Utils.enhancedDeepEquals(this.payScheduleUuid, other.payScheduleUuid); + Utils.enhancedDeepEquals(this.uuid, other.uuid) && + Utils.enhancedDeepEquals(this.companyBenefitDeduction, other.companyBenefitDeduction) && + Utils.enhancedDeepEquals(this.companyBenefitContribution, other.companyBenefitContribution) && + Utils.enhancedDeepEquals(this.benefitDeduction, other.benefitDeduction) && + Utils.enhancedDeepEquals(this.benefitContribution, other.benefitContribution) && + Utils.enhancedDeepEquals(this.grossPay, other.grossPay) && + Utils.enhancedDeepEquals(this.imputedPay, other.imputedPay) && + Utils.enhancedDeepEquals(this.payrollBenefits, other.payrollBenefits); } @Override public int hashCode() { return Utils.enhancedHash( - employeeUuid, payScheduleUuid); + uuid, companyBenefitDeduction, companyBenefitContribution, + benefitDeduction, benefitContribution, grossPay, + imputedPay, payrollBenefits); } @Override public String toString() { return Utils.toString(Employees.class, - "employeeUuid", employeeUuid, - "payScheduleUuid", payScheduleUuid); + "uuid", uuid, + "companyBenefitDeduction", companyBenefitDeduction, + "companyBenefitContribution", companyBenefitContribution, + "benefitDeduction", benefitDeduction, + "benefitContribution", benefitContribution, + "grossPay", grossPay, + "imputedPay", imputedPay, + "payrollBenefits", payrollBenefits); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private Optional employeeUuid = Optional.empty(); + private Optional uuid = Optional.empty(); + + private Optional companyBenefitDeduction = Optional.empty(); - private Optional payScheduleUuid = Optional.empty(); + private Optional companyBenefitContribution = Optional.empty(); + + private Optional benefitDeduction = Optional.empty(); + + private Optional benefitContribution = Optional.empty(); + + private Optional grossPay = Optional.empty(); + + private Optional imputedPay = Optional.empty(); + + private Optional> payrollBenefits = Optional.empty(); private Builder() { // force use of static builder() method @@ -142,46 +396,162 @@ private Builder() { /** - * Employee UUID + * The UUID of the employee + */ + public Builder uuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = Optional.ofNullable(uuid); + return this; + } + + /** + * The UUID of the employee + */ + public Builder uuid(Optional uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + + /** + * The sum of employee deduction for this employee given the period of time and the specific company + * benefit. + */ + public Builder companyBenefitDeduction(String companyBenefitDeduction) { + Utils.checkNotNull(companyBenefitDeduction, "companyBenefitDeduction"); + this.companyBenefitDeduction = Optional.ofNullable(companyBenefitDeduction); + return this; + } + + /** + * The sum of employee deduction for this employee given the period of time and the specific company + * benefit. + */ + public Builder companyBenefitDeduction(Optional companyBenefitDeduction) { + Utils.checkNotNull(companyBenefitDeduction, "companyBenefitDeduction"); + this.companyBenefitDeduction = companyBenefitDeduction; + return this; + } + + + /** + * The sum of company contribution for this employee given the period of time and the specific company + * benefit. */ - public Builder employeeUuid(String employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = Optional.ofNullable(employeeUuid); + public Builder companyBenefitContribution(String companyBenefitContribution) { + Utils.checkNotNull(companyBenefitContribution, "companyBenefitContribution"); + this.companyBenefitContribution = Optional.ofNullable(companyBenefitContribution); return this; } /** - * Employee UUID + * The sum of company contribution for this employee given the period of time and the specific company + * benefit. */ - public Builder employeeUuid(Optional employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = employeeUuid; + public Builder companyBenefitContribution(Optional companyBenefitContribution) { + Utils.checkNotNull(companyBenefitContribution, "companyBenefitContribution"); + this.companyBenefitContribution = companyBenefitContribution; return this; } /** - * Pay schedule UUID + * The sum of employee benefit deduction for this employee given the period of time and the benefit + * type. + */ + public Builder benefitDeduction(String benefitDeduction) { + Utils.checkNotNull(benefitDeduction, "benefitDeduction"); + this.benefitDeduction = Optional.ofNullable(benefitDeduction); + return this; + } + + /** + * The sum of employee benefit deduction for this employee given the period of time and the benefit + * type. */ - public Builder payScheduleUuid(String payScheduleUuid) { - Utils.checkNotNull(payScheduleUuid, "payScheduleUuid"); - this.payScheduleUuid = Optional.ofNullable(payScheduleUuid); + public Builder benefitDeduction(Optional benefitDeduction) { + Utils.checkNotNull(benefitDeduction, "benefitDeduction"); + this.benefitDeduction = benefitDeduction; return this; } + /** - * Pay schedule UUID + * The sum of company contribution for this employee given the period of time and the benefit type. */ - public Builder payScheduleUuid(Optional payScheduleUuid) { - Utils.checkNotNull(payScheduleUuid, "payScheduleUuid"); - this.payScheduleUuid = payScheduleUuid; + public Builder benefitContribution(String benefitContribution) { + Utils.checkNotNull(benefitContribution, "benefitContribution"); + this.benefitContribution = Optional.ofNullable(benefitContribution); + return this; + } + + /** + * The sum of company contribution for this employee given the period of time and the benefit type. + */ + public Builder benefitContribution(Optional benefitContribution) { + Utils.checkNotNull(benefitContribution, "benefitContribution"); + this.benefitContribution = benefitContribution; + return this; + } + + + /** + * Gross pay for this employee given the period of time. + */ + public Builder grossPay(String grossPay) { + Utils.checkNotNull(grossPay, "grossPay"); + this.grossPay = Optional.ofNullable(grossPay); + return this; + } + + /** + * Gross pay for this employee given the period of time. + */ + public Builder grossPay(Optional grossPay) { + Utils.checkNotNull(grossPay, "grossPay"); + this.grossPay = grossPay; + return this; + } + + + /** + * Total imputed pay for this employee given the period of time (not scoped to a benefit type). + */ + public Builder imputedPay(String imputedPay) { + Utils.checkNotNull(imputedPay, "imputedPay"); + this.imputedPay = Optional.ofNullable(imputedPay); + return this; + } + + /** + * Total imputed pay for this employee given the period of time (not scoped to a benefit type). + */ + public Builder imputedPay(Optional imputedPay) { + Utils.checkNotNull(imputedPay, "imputedPay"); + this.imputedPay = imputedPay; + return this; + } + + + public Builder payrollBenefits(List payrollBenefits) { + Utils.checkNotNull(payrollBenefits, "payrollBenefits"); + this.payrollBenefits = Optional.ofNullable(payrollBenefits); + return this; + } + + public Builder payrollBenefits(Optional> payrollBenefits) { + Utils.checkNotNull(payrollBenefits, "payrollBenefits"); + this.payrollBenefits = payrollBenefits; return this; } public Employees build() { return new Employees( - employeeUuid, payScheduleUuid); + uuid, companyBenefitDeduction, companyBenefitContribution, + benefitDeduction, benefitContribution, grossPay, + imputedPay, payrollBenefits); } } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/EmploymentStatus.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/EmploymentStatus.java index d6cf5f447..9888a6170 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/EmploymentStatus.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/EmploymentStatus.java @@ -11,16 +11,16 @@ /** * EmploymentStatus * - *

    The employee's employment status. Supplying an invalid option will set the employment_status to - * *not_set*. + *

    Employee employment status to filter by. */ public enum EmploymentStatus { - PART_TIME("part_time"), - FULL_TIME("full_time"), - PART_TIME_ELIGIBLE("part_time_eligible"), - VARIABLE("variable"), - SEASONAL("seasonal"), - NOT_SET("not_set"); + ACTIVE_FULL_TIME("active_full_time"), + ACTIVE_PART_TIME("active_part_time"), + ACTIVE_PART_TIME_ELIGIBLE("active_part_time_eligible"), + ACTIVE_VARIABLE("active_variable"), + ACTIVE_SEASONAL("active_seasonal"), + ACTIVE("active"), + DISMISSED("dismissed"); @JsonValue private final String value; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/EmploymentType.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/EmploymentType.java index 938e067c7..38513e7f2 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/EmploymentType.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/EmploymentType.java @@ -11,7 +11,7 @@ /** * EmploymentType * - *

    Employee employment type to filter by + *

    Employee employment type to filter by. */ public enum EmploymentType { EXEMPT("exempt"), diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Exclusions.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Exclusions.java index 217dfc9e8..d241366f4 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Exclusions.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Exclusions.java @@ -12,89 +12,156 @@ import java.lang.Long; import java.lang.Override; import java.lang.String; +import java.lang.SuppressWarnings; import java.util.Optional; public class Exclusions { /** - * The external ID of the excluded item(s). + * The index of this payroll in the original POST batch array. */ @JsonInclude(Include.NON_ABSENT) - @JsonProperty("external_id") - private Optional externalId; + @JsonProperty("idx") + private Optional idx; /** - * The exclusion category. + * The type of entity this exclusion represents. */ @JsonInclude(Include.NON_ABSENT) - @JsonProperty("category") - private Optional category; + @JsonProperty("entity_type") + private Optional entityType; /** - * Human-readable explanation for exclusion. + * The UUID of the excluded payroll. */ @JsonInclude(Include.NON_ABSENT) - @JsonProperty("message") - private Optional message; + @JsonProperty("uuid") + private Optional uuid; + + /** + * The UUID of the company asserted to own the payroll. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("company_uuid") + private Optional companyUuid; /** - * Number of items affected by this exclusion. + * Always `failed` for an excluded payroll. */ @JsonInclude(Include.NON_ABSENT) - @JsonProperty("item_count") - private Optional itemCount; + @JsonProperty("status") + private Optional status; + + /** + * Machine-readable category for why the payroll was excluded. + * - `not_found`: the payroll does not exist, or is not associated with a company the partner is mapped + * to + * - `duplicate_operation`: the same payroll UUID appeared more than once in the request; only the + * first occurrence is processed + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("category") + private Optional category; + + /** + * Human-readable explanation for the exclusion. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("message") + private Optional message; @JsonCreator public Exclusions( - @JsonProperty("external_id") Optional externalId, - @JsonProperty("category") Optional category, - @JsonProperty("message") Optional message, - @JsonProperty("item_count") Optional itemCount) { - Utils.checkNotNull(externalId, "externalId"); + @JsonProperty("idx") Optional idx, + @JsonProperty("entity_type") Optional entityType, + @JsonProperty("uuid") Optional uuid, + @JsonProperty("company_uuid") Optional companyUuid, + @JsonProperty("status") Optional status, + @JsonProperty("category") Optional category, + @JsonProperty("message") Optional message) { + Utils.checkNotNull(idx, "idx"); + Utils.checkNotNull(entityType, "entityType"); + Utils.checkNotNull(uuid, "uuid"); + Utils.checkNotNull(companyUuid, "companyUuid"); + Utils.checkNotNull(status, "status"); Utils.checkNotNull(category, "category"); Utils.checkNotNull(message, "message"); - Utils.checkNotNull(itemCount, "itemCount"); - this.externalId = externalId; + this.idx = idx; + this.entityType = entityType; + this.uuid = uuid; + this.companyUuid = companyUuid; + this.status = status; this.category = category; this.message = message; - this.itemCount = itemCount; } public Exclusions() { this(Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty()); } /** - * The external ID of the excluded item(s). + * The index of this payroll in the original POST batch array. */ @JsonIgnore - public Optional externalId() { - return externalId; + public Optional idx() { + return idx; } /** - * The exclusion category. + * The type of entity this exclusion represents. */ + @SuppressWarnings("unchecked") @JsonIgnore - public Optional category() { - return category; + public Optional entityType() { + return (Optional) entityType; } /** - * Human-readable explanation for exclusion. + * The UUID of the excluded payroll. */ @JsonIgnore - public Optional message() { - return message; + public Optional uuid() { + return uuid; + } + + /** + * The UUID of the company asserted to own the payroll. + */ + @JsonIgnore + public Optional companyUuid() { + return companyUuid; + } + + /** + * Always `failed` for an excluded payroll. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional status() { + return (Optional) status; } /** - * Number of items affected by this exclusion. + * Machine-readable category for why the payroll was excluded. + * - `not_found`: the payroll does not exist, or is not associated with a company the partner is mapped + * to + * - `duplicate_operation`: the same payroll UUID appeared more than once in the request; only the + * first occurrence is processed */ + @SuppressWarnings("unchecked") @JsonIgnore - public Optional itemCount() { - return itemCount; + public Optional category() { + return (Optional) category; + } + + /** + * Human-readable explanation for the exclusion. + */ + @JsonIgnore + public Optional message() { + return message; } public static Builder builder() { @@ -103,78 +170,143 @@ public static Builder builder() { /** - * The external ID of the excluded item(s). + * The index of this payroll in the original POST batch array. */ - public Exclusions withExternalId(String externalId) { - Utils.checkNotNull(externalId, "externalId"); - this.externalId = Optional.ofNullable(externalId); + public Exclusions withIdx(long idx) { + Utils.checkNotNull(idx, "idx"); + this.idx = Optional.ofNullable(idx); return this; } /** - * The external ID of the excluded item(s). + * The index of this payroll in the original POST batch array. */ - public Exclusions withExternalId(Optional externalId) { - Utils.checkNotNull(externalId, "externalId"); - this.externalId = externalId; + public Exclusions withIdx(Optional idx) { + Utils.checkNotNull(idx, "idx"); + this.idx = idx; return this; } /** - * The exclusion category. + * The type of entity this exclusion represents. */ - public Exclusions withCategory(String category) { - Utils.checkNotNull(category, "category"); - this.category = Optional.ofNullable(category); + public Exclusions withEntityType(PayrollBatchResultsEntityType entityType) { + Utils.checkNotNull(entityType, "entityType"); + this.entityType = Optional.ofNullable(entityType); return this; } /** - * The exclusion category. + * The type of entity this exclusion represents. */ - public Exclusions withCategory(Optional category) { - Utils.checkNotNull(category, "category"); - this.category = category; + public Exclusions withEntityType(Optional entityType) { + Utils.checkNotNull(entityType, "entityType"); + this.entityType = entityType; return this; } /** - * Human-readable explanation for exclusion. + * The UUID of the excluded payroll. */ - public Exclusions withMessage(String message) { - Utils.checkNotNull(message, "message"); - this.message = Optional.ofNullable(message); + public Exclusions withUuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = Optional.ofNullable(uuid); return this; } /** - * Human-readable explanation for exclusion. + * The UUID of the excluded payroll. */ - public Exclusions withMessage(Optional message) { - Utils.checkNotNull(message, "message"); - this.message = message; + public Exclusions withUuid(Optional uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + /** + * The UUID of the company asserted to own the payroll. + */ + public Exclusions withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = Optional.ofNullable(companyUuid); + return this; + } + + + /** + * The UUID of the company asserted to own the payroll. + */ + public Exclusions withCompanyUuid(Optional companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + /** + * Always `failed` for an excluded payroll. + */ + public Exclusions withStatus(PayrollBatchResultsExclusionsStatus status) { + Utils.checkNotNull(status, "status"); + this.status = Optional.ofNullable(status); + return this; + } + + + /** + * Always `failed` for an excluded payroll. + */ + public Exclusions withStatus(Optional status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + /** + * Machine-readable category for why the payroll was excluded. + * - `not_found`: the payroll does not exist, or is not associated with a company the partner is mapped + * to + * - `duplicate_operation`: the same payroll UUID appeared more than once in the request; only the + * first occurrence is processed + */ + public Exclusions withCategory(PayrollBatchResultsCategory category) { + Utils.checkNotNull(category, "category"); + this.category = Optional.ofNullable(category); return this; } + /** - * Number of items affected by this exclusion. + * Machine-readable category for why the payroll was excluded. + * - `not_found`: the payroll does not exist, or is not associated with a company the partner is mapped + * to + * - `duplicate_operation`: the same payroll UUID appeared more than once in the request; only the + * first occurrence is processed */ - public Exclusions withItemCount(long itemCount) { - Utils.checkNotNull(itemCount, "itemCount"); - this.itemCount = Optional.ofNullable(itemCount); + public Exclusions withCategory(Optional category) { + Utils.checkNotNull(category, "category"); + this.category = category; + return this; + } + + /** + * Human-readable explanation for the exclusion. + */ + public Exclusions withMessage(String message) { + Utils.checkNotNull(message, "message"); + this.message = Optional.ofNullable(message); return this; } /** - * Number of items affected by this exclusion. + * Human-readable explanation for the exclusion. */ - public Exclusions withItemCount(Optional itemCount) { - Utils.checkNotNull(itemCount, "itemCount"); - this.itemCount = itemCount; + public Exclusions withMessage(Optional message) { + Utils.checkNotNull(message, "message"); + this.message = message; return this; } @@ -188,38 +320,51 @@ public boolean equals(java.lang.Object o) { } Exclusions other = (Exclusions) o; return - Utils.enhancedDeepEquals(this.externalId, other.externalId) && + Utils.enhancedDeepEquals(this.idx, other.idx) && + Utils.enhancedDeepEquals(this.entityType, other.entityType) && + Utils.enhancedDeepEquals(this.uuid, other.uuid) && + Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && + Utils.enhancedDeepEquals(this.status, other.status) && Utils.enhancedDeepEquals(this.category, other.category) && - Utils.enhancedDeepEquals(this.message, other.message) && - Utils.enhancedDeepEquals(this.itemCount, other.itemCount); + Utils.enhancedDeepEquals(this.message, other.message); } @Override public int hashCode() { return Utils.enhancedHash( - externalId, category, message, - itemCount); + idx, entityType, uuid, + companyUuid, status, category, + message); } @Override public String toString() { return Utils.toString(Exclusions.class, - "externalId", externalId, + "idx", idx, + "entityType", entityType, + "uuid", uuid, + "companyUuid", companyUuid, + "status", status, "category", category, - "message", message, - "itemCount", itemCount); + "message", message); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private Optional externalId = Optional.empty(); + private Optional idx = Optional.empty(); - private Optional category = Optional.empty(); + private Optional entityType = Optional.empty(); - private Optional message = Optional.empty(); + private Optional uuid = Optional.empty(); + + private Optional companyUuid = Optional.empty(); + + private Optional status = Optional.empty(); - private Optional itemCount = Optional.empty(); + private Optional category = Optional.empty(); + + private Optional message = Optional.empty(); private Builder() { // force use of static builder() method @@ -227,85 +372,151 @@ private Builder() { /** - * The external ID of the excluded item(s). + * The index of this payroll in the original POST batch array. */ - public Builder externalId(String externalId) { - Utils.checkNotNull(externalId, "externalId"); - this.externalId = Optional.ofNullable(externalId); + public Builder idx(long idx) { + Utils.checkNotNull(idx, "idx"); + this.idx = Optional.ofNullable(idx); return this; } /** - * The external ID of the excluded item(s). + * The index of this payroll in the original POST batch array. */ - public Builder externalId(Optional externalId) { - Utils.checkNotNull(externalId, "externalId"); - this.externalId = externalId; + public Builder idx(Optional idx) { + Utils.checkNotNull(idx, "idx"); + this.idx = idx; return this; } /** - * The exclusion category. + * The type of entity this exclusion represents. */ - public Builder category(String category) { - Utils.checkNotNull(category, "category"); - this.category = Optional.ofNullable(category); + public Builder entityType(PayrollBatchResultsEntityType entityType) { + Utils.checkNotNull(entityType, "entityType"); + this.entityType = Optional.ofNullable(entityType); return this; } /** - * The exclusion category. + * The type of entity this exclusion represents. */ - public Builder category(Optional category) { - Utils.checkNotNull(category, "category"); - this.category = category; + public Builder entityType(Optional entityType) { + Utils.checkNotNull(entityType, "entityType"); + this.entityType = entityType; return this; } /** - * Human-readable explanation for exclusion. + * The UUID of the excluded payroll. */ - public Builder message(String message) { - Utils.checkNotNull(message, "message"); - this.message = Optional.ofNullable(message); + public Builder uuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = Optional.ofNullable(uuid); return this; } /** - * Human-readable explanation for exclusion. + * The UUID of the excluded payroll. */ - public Builder message(Optional message) { - Utils.checkNotNull(message, "message"); - this.message = message; + public Builder uuid(Optional uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + + /** + * The UUID of the company asserted to own the payroll. + */ + public Builder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = Optional.ofNullable(companyUuid); + return this; + } + + /** + * The UUID of the company asserted to own the payroll. + */ + public Builder companyUuid(Optional companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; return this; } /** - * Number of items affected by this exclusion. + * Always `failed` for an excluded payroll. */ - public Builder itemCount(long itemCount) { - Utils.checkNotNull(itemCount, "itemCount"); - this.itemCount = Optional.ofNullable(itemCount); + public Builder status(PayrollBatchResultsExclusionsStatus status) { + Utils.checkNotNull(status, "status"); + this.status = Optional.ofNullable(status); return this; } /** - * Number of items affected by this exclusion. + * Always `failed` for an excluded payroll. */ - public Builder itemCount(Optional itemCount) { - Utils.checkNotNull(itemCount, "itemCount"); - this.itemCount = itemCount; + public Builder status(Optional status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + + /** + * Machine-readable category for why the payroll was excluded. + * - `not_found`: the payroll does not exist, or is not associated with a company the partner is mapped + * to + * - `duplicate_operation`: the same payroll UUID appeared more than once in the request; only the + * first occurrence is processed + */ + public Builder category(PayrollBatchResultsCategory category) { + Utils.checkNotNull(category, "category"); + this.category = Optional.ofNullable(category); + return this; + } + + /** + * Machine-readable category for why the payroll was excluded. + * - `not_found`: the payroll does not exist, or is not associated with a company the partner is mapped + * to + * - `duplicate_operation`: the same payroll UUID appeared more than once in the request; only the + * first occurrence is processed + */ + public Builder category(Optional category) { + Utils.checkNotNull(category, "category"); + this.category = category; + return this; + } + + + /** + * Human-readable explanation for the exclusion. + */ + public Builder message(String message) { + Utils.checkNotNull(message, "message"); + this.message = Optional.ofNullable(message); + return this; + } + + /** + * Human-readable explanation for the exclusion. + */ + public Builder message(Optional message) { + Utils.checkNotNull(message, "message"); + this.message = message; return this; } public Exclusions build() { return new Exclusions( - externalId, category, message, - itemCount); + idx, entityType, uuid, + companyUuid, status, category, + message); } } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ExternalPayrollBasic.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ExternalPayrollBasic.java index 5800356a3..eb68c032c 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ExternalPayrollBasic.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ExternalPayrollBasic.java @@ -61,7 +61,7 @@ public class ExternalPayrollBasic { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("status") - private Optional status; + private Optional status; @JsonCreator public ExternalPayrollBasic( @@ -70,7 +70,7 @@ public ExternalPayrollBasic( @JsonProperty("check_date") Optional checkDate, @JsonProperty("payment_period_start_date") Optional paymentPeriodStartDate, @JsonProperty("payment_period_end_date") Optional paymentPeriodEndDate, - @JsonProperty("status") Optional status) { + @JsonProperty("status") Optional status) { Utils.checkNotNull(uuid, "uuid"); Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(checkDate, "checkDate"); @@ -138,8 +138,8 @@ public Optional paymentPeriodEndDate() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional status() { - return (Optional) status; + public Optional status() { + return (Optional) status; } public static Builder builder() { @@ -237,7 +237,7 @@ public ExternalPayrollBasic withPaymentPeriodEndDate(Optional paymentPer * created and transition to `processed` once tax liabilities are entered and finalized. Once in the * `processed` status all actions that can edit an external payroll will be disabled. */ - public ExternalPayrollBasic withStatus(Status status) { + public ExternalPayrollBasic withStatus(ExternalPayrollBasicStatus status) { Utils.checkNotNull(status, "status"); this.status = Optional.ofNullable(status); return this; @@ -249,7 +249,7 @@ public ExternalPayrollBasic withStatus(Status status) { * created and transition to `processed` once tax liabilities are entered and finalized. Once in the * `processed` status all actions that can edit an external payroll will be disabled. */ - public ExternalPayrollBasic withStatus(Optional status) { + public ExternalPayrollBasic withStatus(Optional status) { Utils.checkNotNull(status, "status"); this.status = status; return this; @@ -304,7 +304,7 @@ public final static class Builder { private Optional paymentPeriodEndDate = Optional.empty(); - private Optional status = Optional.empty(); + private Optional status = Optional.empty(); private Builder() { // force use of static builder() method @@ -402,7 +402,7 @@ public Builder paymentPeriodEndDate(Optional paymentPeriodEndDate) { * created and transition to `processed` once tax liabilities are entered and finalized. Once in the * `processed` status all actions that can edit an external payroll will be disabled. */ - public Builder status(Status status) { + public Builder status(ExternalPayrollBasicStatus status) { Utils.checkNotNull(status, "status"); this.status = Optional.ofNullable(status); return this; @@ -413,7 +413,7 @@ public Builder status(Status status) { * created and transition to `processed` once tax liabilities are entered and finalized. Once in the * `processed` status all actions that can edit an external payroll will be disabled. */ - public Builder status(Optional status) { + public Builder status(Optional status) { Utils.checkNotNull(status, "status"); this.status = status; return this; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ExternalPayrollBasicStatus.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ExternalPayrollBasicStatus.java new file mode 100644 index 000000000..89b763541 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ExternalPayrollBasicStatus.java @@ -0,0 +1,42 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * ExternalPayrollBasicStatus + * + *

    The status of the external payroll. The status will be `unprocessed` when the external payroll is + * created and transition to `processed` once tax liabilities are entered and finalized. Once in the + * `processed` status all actions that can edit an external payroll will be disabled. + */ +public enum ExternalPayrollBasicStatus { + UNPROCESSED("unprocessed"), + PROCESSED("processed"); + + @JsonValue + private final String value; + + ExternalPayrollBasicStatus(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (ExternalPayrollBasicStatus o: ExternalPayrollBasicStatus.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Federal.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Federal.java new file mode 100644 index 000000000..4c205de56 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Federal.java @@ -0,0 +1,255 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + +/** + * Federal + * + *

    Federal one-time custom withholding override applied to this payroll. + */ +public class Federal { + /** + * Override mode. Only `one_time` is currently exposed. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("override_type") + private Optional overrideType; + + /** + * The amount that was withheld for this payroll. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("amount") + private Optional amount; + + /** + * How to interpret the amount. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("amount_type") + private Optional amountType; + + @JsonCreator + public Federal( + @JsonProperty("override_type") Optional overrideType, + @JsonProperty("amount") Optional amount, + @JsonProperty("amount_type") Optional amountType) { + Utils.checkNotNull(overrideType, "overrideType"); + Utils.checkNotNull(amount, "amount"); + Utils.checkNotNull(amountType, "amountType"); + this.overrideType = overrideType; + this.amount = amount; + this.amountType = amountType; + } + + public Federal() { + this(Optional.empty(), Optional.empty(), Optional.empty()); + } + + /** + * Override mode. Only `one_time` is currently exposed. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional overrideType() { + return (Optional) overrideType; + } + + /** + * The amount that was withheld for this payroll. + */ + @JsonIgnore + public Optional amount() { + return amount; + } + + /** + * How to interpret the amount. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional amountType() { + return (Optional) amountType; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public Federal withOverrideType(OverrideType overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = Optional.ofNullable(overrideType); + return this; + } + + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public Federal withOverrideType(Optional overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = overrideType; + return this; + } + + /** + * The amount that was withheld for this payroll. + */ + public Federal withAmount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = Optional.ofNullable(amount); + return this; + } + + + /** + * The amount that was withheld for this payroll. + */ + public Federal withAmount(Optional amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + /** + * How to interpret the amount. + */ + public Federal withAmountType(PayrollEmployeeCompensationsTypeAmountType amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = Optional.ofNullable(amountType); + return this; + } + + + /** + * How to interpret the amount. + */ + public Federal withAmountType(Optional amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = amountType; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + Federal other = (Federal) o; + return + Utils.enhancedDeepEquals(this.overrideType, other.overrideType) && + Utils.enhancedDeepEquals(this.amount, other.amount) && + Utils.enhancedDeepEquals(this.amountType, other.amountType); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + overrideType, amount, amountType); + } + + @Override + public String toString() { + return Utils.toString(Federal.class, + "overrideType", overrideType, + "amount", amount, + "amountType", amountType); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional overrideType = Optional.empty(); + + private Optional amount = Optional.empty(); + + private Optional amountType = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public Builder overrideType(OverrideType overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = Optional.ofNullable(overrideType); + return this; + } + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public Builder overrideType(Optional overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = overrideType; + return this; + } + + + /** + * The amount that was withheld for this payroll. + */ + public Builder amount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = Optional.ofNullable(amount); + return this; + } + + /** + * The amount that was withheld for this payroll. + */ + public Builder amount(Optional amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + + /** + * How to interpret the amount. + */ + public Builder amountType(PayrollEmployeeCompensationsTypeAmountType amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = Optional.ofNullable(amountType); + return this; + } + + /** + * How to interpret the amount. + */ + public Builder amountType(Optional amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = amountType; + return this; + } + + public Federal build() { + + return new Federal( + overrideType, amount, amountType); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/VersionHeader.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Field.java similarity index 69% rename from gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/VersionHeader.java rename to gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Field.java index 10029bfb5..0e2fb949c 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/VersionHeader.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Field.java @@ -8,13 +8,18 @@ import java.util.Objects; import java.util.Optional; -public enum VersionHeader { - TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15("2025-06-15"); +/** + * Field + * + *

    The employee field affected. + */ +public enum Field { + SSN("ssn"); @JsonValue private final String value; - VersionHeader(String value) { + Field(String value) { this.value = value; } @@ -22,8 +27,8 @@ public String value() { return value; } - public static Optional fromValue(String value) { - for (VersionHeader o: VersionHeader.values()) { + public static Optional fromValue(String value) { + for (Field o: Field.values()) { if (Objects.deepEquals(o.value, value)) { return Optional.of(o); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/FileType.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/FileType.java index 1050eed06..07ce3b749 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/FileType.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/FileType.java @@ -11,7 +11,7 @@ /** * FileType * - *

    The type of file to generate + *

    The type of file to generate. */ public enum FileType { CSV("csv"), diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/GeneralLedgerReportBody.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/GeneralLedgerReportBody.java index 442fb10bd..d017395c4 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/GeneralLedgerReportBody.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/GeneralLedgerReportBody.java @@ -25,7 +25,7 @@ public class GeneralLedgerReportBody { * The breakdown of the report. Use 'default' for no split. */ @JsonProperty("aggregation") - private Aggregation aggregation; + private GeneralLedgerReportBodyAggregation aggregation; /** * The kind of integration set up for the company. Required when `aggregation` is 'integration'. Must @@ -37,7 +37,7 @@ public class GeneralLedgerReportBody { @JsonCreator public GeneralLedgerReportBody( - @JsonProperty("aggregation") Aggregation aggregation, + @JsonProperty("aggregation") GeneralLedgerReportBodyAggregation aggregation, @JsonProperty("integration_type") JsonNullable integrationType) { Utils.checkNotNull(aggregation, "aggregation"); Utils.checkNotNull(integrationType, "integrationType"); @@ -46,7 +46,7 @@ public GeneralLedgerReportBody( } public GeneralLedgerReportBody( - Aggregation aggregation) { + GeneralLedgerReportBodyAggregation aggregation) { this(aggregation, JsonNullable.undefined()); } @@ -54,7 +54,7 @@ public GeneralLedgerReportBody( * The breakdown of the report. Use 'default' for no split. */ @JsonIgnore - public Aggregation aggregation() { + public GeneralLedgerReportBodyAggregation aggregation() { return aggregation; } @@ -76,7 +76,7 @@ public static Builder builder() { /** * The breakdown of the report. Use 'default' for no split. */ - public GeneralLedgerReportBody withAggregation(Aggregation aggregation) { + public GeneralLedgerReportBody withAggregation(GeneralLedgerReportBodyAggregation aggregation) { Utils.checkNotNull(aggregation, "aggregation"); this.aggregation = aggregation; return this; @@ -132,7 +132,7 @@ public String toString() { @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private Aggregation aggregation; + private GeneralLedgerReportBodyAggregation aggregation; private JsonNullable integrationType = JsonNullable.undefined(); @@ -144,7 +144,7 @@ private Builder() { /** * The breakdown of the report. Use 'default' for no split. */ - public Builder aggregation(Aggregation aggregation) { + public Builder aggregation(GeneralLedgerReportBodyAggregation aggregation) { Utils.checkNotNull(aggregation, "aggregation"); this.aggregation = aggregation; return this; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/GeneralLedgerReportBodyAggregation.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/GeneralLedgerReportBodyAggregation.java new file mode 100644 index 000000000..27b395092 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/GeneralLedgerReportBodyAggregation.java @@ -0,0 +1,42 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * GeneralLedgerReportBodyAggregation + * + *

    The breakdown of the report. Use 'default' for no split. + */ +public enum GeneralLedgerReportBodyAggregation { + DEFAULT("default"), + JOB("job"), + DEPARTMENT("department"), + INTEGRATION("integration"); + + @JsonValue + private final String value; + + GeneralLedgerReportBodyAggregation(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (GeneralLedgerReportBodyAggregation o: GeneralLedgerReportBodyAggregation.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/HistoricalEmployeeBody.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/HistoricalEmployeeBody.java index 0163491c3..0b456ff57 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/HistoricalEmployeeBody.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/HistoricalEmployeeBody.java @@ -74,7 +74,7 @@ public class HistoricalEmployeeBody { * Residential address on file for tax withholding and compliance mail. */ @JsonProperty("home_address") - private HistoricalEmployeeBodyHomeAddress homeAddress; + private HomeAddress homeAddress; /** * End of the historical employment period. @@ -112,7 +112,7 @@ public HistoricalEmployeeBody( @JsonProperty("date_of_birth") LocalDate dateOfBirth, @JsonProperty("ssn") String ssn, @JsonProperty("work_address") WorkAddress workAddress, - @JsonProperty("home_address") HistoricalEmployeeBodyHomeAddress homeAddress, + @JsonProperty("home_address") HomeAddress homeAddress, @JsonProperty("termination") HistoricalEmployeeBodyTermination termination, @JsonProperty("email") Optional email, @JsonProperty("job") HistoricalEmployeeBodyJob job, @@ -149,7 +149,7 @@ public HistoricalEmployeeBody( LocalDate dateOfBirth, String ssn, WorkAddress workAddress, - HistoricalEmployeeBodyHomeAddress homeAddress, + HomeAddress homeAddress, HistoricalEmployeeBodyTermination termination, HistoricalEmployeeBodyJob job) { this(firstName, Optional.empty(), lastName, @@ -219,7 +219,7 @@ public WorkAddress workAddress() { * Residential address on file for tax withholding and compliance mail. */ @JsonIgnore - public HistoricalEmployeeBodyHomeAddress homeAddress() { + public HomeAddress homeAddress() { return homeAddress; } @@ -349,7 +349,7 @@ public HistoricalEmployeeBody withWorkAddress(WorkAddress workAddress) { /** * Residential address on file for tax withholding and compliance mail. */ - public HistoricalEmployeeBody withHomeAddress(HistoricalEmployeeBodyHomeAddress homeAddress) { + public HistoricalEmployeeBody withHomeAddress(HomeAddress homeAddress) { Utils.checkNotNull(homeAddress, "homeAddress"); this.homeAddress = homeAddress; return this; @@ -480,7 +480,7 @@ public final static class Builder { private WorkAddress workAddress; - private HistoricalEmployeeBodyHomeAddress homeAddress; + private HomeAddress homeAddress; private HistoricalEmployeeBodyTermination termination; @@ -587,7 +587,7 @@ public Builder workAddress(WorkAddress workAddress) { /** * Residential address on file for tax withholding and compliance mail. */ - public Builder homeAddress(HistoricalEmployeeBodyHomeAddress homeAddress) { + public Builder homeAddress(HomeAddress homeAddress) { Utils.checkNotNull(homeAddress, "homeAddress"); this.homeAddress = homeAddress; return this; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/HistoricalEmployeeBodyHomeAddress.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/HistoricalEmployeeBodyHomeAddress.java deleted file mode 100644 index e95386f92..000000000 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/HistoricalEmployeeBodyHomeAddress.java +++ /dev/null @@ -1,298 +0,0 @@ -/* - * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - */ -package com.gusto.embedded_api.models.components; - -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonIgnore; -import com.fasterxml.jackson.annotation.JsonInclude.Include; -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.gusto.embedded_api.utils.Utils; -import java.lang.Override; -import java.lang.String; -import org.openapitools.jackson.nullable.JsonNullable; - -/** - * HistoricalEmployeeBodyHomeAddress - * - *

    Residential address on file for tax withholding and compliance mail. - */ -public class HistoricalEmployeeBodyHomeAddress { - /** - * Street address line 1. - */ - @JsonProperty("street_1") - private String street1; - - /** - * Apartment, suite, unit, or building (optional). - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("street_2") - private JsonNullable street2; - - /** - * City. - */ - @JsonProperty("city") - private String city; - - /** - * Two-letter U.S. state or territory postal abbreviation. - */ - @JsonProperty("state") - private String state; - - /** - * ZIP or ZIP+4. - */ - @JsonProperty("zip") - private String zip; - - @JsonCreator - public HistoricalEmployeeBodyHomeAddress( - @JsonProperty("street_1") String street1, - @JsonProperty("street_2") JsonNullable street2, - @JsonProperty("city") String city, - @JsonProperty("state") String state, - @JsonProperty("zip") String zip) { - Utils.checkNotNull(street1, "street1"); - Utils.checkNotNull(street2, "street2"); - Utils.checkNotNull(city, "city"); - Utils.checkNotNull(state, "state"); - Utils.checkNotNull(zip, "zip"); - this.street1 = street1; - this.street2 = street2; - this.city = city; - this.state = state; - this.zip = zip; - } - - public HistoricalEmployeeBodyHomeAddress( - String street1, - String city, - String state, - String zip) { - this(street1, JsonNullable.undefined(), city, - state, zip); - } - - /** - * Street address line 1. - */ - @JsonIgnore - public String street1() { - return street1; - } - - /** - * Apartment, suite, unit, or building (optional). - */ - @JsonIgnore - public JsonNullable street2() { - return street2; - } - - /** - * City. - */ - @JsonIgnore - public String city() { - return city; - } - - /** - * Two-letter U.S. state or territory postal abbreviation. - */ - @JsonIgnore - public String state() { - return state; - } - - /** - * ZIP or ZIP+4. - */ - @JsonIgnore - public String zip() { - return zip; - } - - public static Builder builder() { - return new Builder(); - } - - - /** - * Street address line 1. - */ - public HistoricalEmployeeBodyHomeAddress withStreet1(String street1) { - Utils.checkNotNull(street1, "street1"); - this.street1 = street1; - return this; - } - - /** - * Apartment, suite, unit, or building (optional). - */ - public HistoricalEmployeeBodyHomeAddress withStreet2(String street2) { - Utils.checkNotNull(street2, "street2"); - this.street2 = JsonNullable.of(street2); - return this; - } - - /** - * Apartment, suite, unit, or building (optional). - */ - public HistoricalEmployeeBodyHomeAddress withStreet2(JsonNullable street2) { - Utils.checkNotNull(street2, "street2"); - this.street2 = street2; - return this; - } - - /** - * City. - */ - public HistoricalEmployeeBodyHomeAddress withCity(String city) { - Utils.checkNotNull(city, "city"); - this.city = city; - return this; - } - - /** - * Two-letter U.S. state or territory postal abbreviation. - */ - public HistoricalEmployeeBodyHomeAddress withState(String state) { - Utils.checkNotNull(state, "state"); - this.state = state; - return this; - } - - /** - * ZIP or ZIP+4. - */ - public HistoricalEmployeeBodyHomeAddress withZip(String zip) { - Utils.checkNotNull(zip, "zip"); - this.zip = zip; - return this; - } - - @Override - public boolean equals(java.lang.Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - HistoricalEmployeeBodyHomeAddress other = (HistoricalEmployeeBodyHomeAddress) o; - return - Utils.enhancedDeepEquals(this.street1, other.street1) && - Utils.enhancedDeepEquals(this.street2, other.street2) && - Utils.enhancedDeepEquals(this.city, other.city) && - Utils.enhancedDeepEquals(this.state, other.state) && - Utils.enhancedDeepEquals(this.zip, other.zip); - } - - @Override - public int hashCode() { - return Utils.enhancedHash( - street1, street2, city, - state, zip); - } - - @Override - public String toString() { - return Utils.toString(HistoricalEmployeeBodyHomeAddress.class, - "street1", street1, - "street2", street2, - "city", city, - "state", state, - "zip", zip); - } - - @SuppressWarnings("UnusedReturnValue") - public final static class Builder { - - private String street1; - - private JsonNullable street2 = JsonNullable.undefined(); - - private String city; - - private String state; - - private String zip; - - private Builder() { - // force use of static builder() method - } - - - /** - * Street address line 1. - */ - public Builder street1(String street1) { - Utils.checkNotNull(street1, "street1"); - this.street1 = street1; - return this; - } - - - /** - * Apartment, suite, unit, or building (optional). - */ - public Builder street2(String street2) { - Utils.checkNotNull(street2, "street2"); - this.street2 = JsonNullable.of(street2); - return this; - } - - /** - * Apartment, suite, unit, or building (optional). - */ - public Builder street2(JsonNullable street2) { - Utils.checkNotNull(street2, "street2"); - this.street2 = street2; - return this; - } - - - /** - * City. - */ - public Builder city(String city) { - Utils.checkNotNull(city, "city"); - this.city = city; - return this; - } - - - /** - * Two-letter U.S. state or territory postal abbreviation. - */ - public Builder state(String state) { - Utils.checkNotNull(state, "state"); - this.state = state; - return this; - } - - - /** - * ZIP or ZIP+4. - */ - public Builder zip(String zip) { - Utils.checkNotNull(zip, "zip"); - this.zip = zip; - return this; - } - - public HistoricalEmployeeBodyHomeAddress build() { - - return new HistoricalEmployeeBodyHomeAddress( - street1, street2, city, - state, zip); - } - - } -} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/HomeAddress.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/HomeAddress.java index 53e3c2a08..111160153 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/HomeAddress.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/HomeAddress.java @@ -8,185 +8,175 @@ import com.fasterxml.jackson.annotation.JsonInclude.Include; import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.core.type.TypeReference; -import com.gusto.embedded_api.utils.LazySingletonValue; import com.gusto.embedded_api.utils.Utils; import java.lang.Override; import java.lang.String; -import java.util.Optional; - +import org.openapitools.jackson.nullable.JsonNullable; +/** + * HomeAddress + * + *

    Residential address on file for tax withholding and compliance mail. + */ public class HomeAddress { - - @JsonInclude(Include.NON_ABSENT) + /** + * Street address line 1. + */ @JsonProperty("street_1") - private Optional street1; - + private String street1; + /** + * Apartment, suite, unit, or building (optional). + */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("street_2") - private Optional street2; + private JsonNullable street2; - - @JsonInclude(Include.NON_ABSENT) + /** + * City. + */ @JsonProperty("city") - private Optional city; + private String city; - - @JsonInclude(Include.NON_ABSENT) + /** + * Two-letter U.S. state or territory postal abbreviation. + */ @JsonProperty("state") - private Optional state; + private String state; - - @JsonInclude(Include.NON_ABSENT) + /** + * ZIP or ZIP+4. + */ @JsonProperty("zip") - private Optional zip; - - - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("country") - private Optional country; + private String zip; @JsonCreator public HomeAddress( - @JsonProperty("street_1") Optional street1, - @JsonProperty("street_2") Optional street2, - @JsonProperty("city") Optional city, - @JsonProperty("state") Optional state, - @JsonProperty("zip") Optional zip, - @JsonProperty("country") Optional country) { + @JsonProperty("street_1") String street1, + @JsonProperty("street_2") JsonNullable street2, + @JsonProperty("city") String city, + @JsonProperty("state") String state, + @JsonProperty("zip") String zip) { Utils.checkNotNull(street1, "street1"); Utils.checkNotNull(street2, "street2"); Utils.checkNotNull(city, "city"); Utils.checkNotNull(state, "state"); Utils.checkNotNull(zip, "zip"); - Utils.checkNotNull(country, "country"); this.street1 = street1; this.street2 = street2; this.city = city; this.state = state; this.zip = zip; - this.country = country; } - public HomeAddress() { - this(Optional.empty(), Optional.empty(), Optional.empty(), - Optional.empty(), Optional.empty(), Optional.empty()); + public HomeAddress( + String street1, + String city, + String state, + String zip) { + this(street1, JsonNullable.undefined(), city, + state, zip); } + /** + * Street address line 1. + */ @JsonIgnore - public Optional street1() { + public String street1() { return street1; } + /** + * Apartment, suite, unit, or building (optional). + */ @JsonIgnore - public Optional street2() { + public JsonNullable street2() { return street2; } + /** + * City. + */ @JsonIgnore - public Optional city() { + public String city() { return city; } + /** + * Two-letter U.S. state or territory postal abbreviation. + */ @JsonIgnore - public Optional state() { + public String state() { return state; } + /** + * ZIP or ZIP+4. + */ @JsonIgnore - public Optional zip() { + public String zip() { return zip; } - @JsonIgnore - public Optional country() { - return country; - } - public static Builder builder() { return new Builder(); } + /** + * Street address line 1. + */ public HomeAddress withStreet1(String street1) { - Utils.checkNotNull(street1, "street1"); - this.street1 = Optional.ofNullable(street1); - return this; - } - - - public HomeAddress withStreet1(Optional street1) { Utils.checkNotNull(street1, "street1"); this.street1 = street1; return this; } + /** + * Apartment, suite, unit, or building (optional). + */ public HomeAddress withStreet2(String street2) { Utils.checkNotNull(street2, "street2"); - this.street2 = Optional.ofNullable(street2); + this.street2 = JsonNullable.of(street2); return this; } - - public HomeAddress withStreet2(Optional street2) { + /** + * Apartment, suite, unit, or building (optional). + */ + public HomeAddress withStreet2(JsonNullable street2) { Utils.checkNotNull(street2, "street2"); this.street2 = street2; return this; } + /** + * City. + */ public HomeAddress withCity(String city) { - Utils.checkNotNull(city, "city"); - this.city = Optional.ofNullable(city); - return this; - } - - - public HomeAddress withCity(Optional city) { Utils.checkNotNull(city, "city"); this.city = city; return this; } + /** + * Two-letter U.S. state or territory postal abbreviation. + */ public HomeAddress withState(String state) { - Utils.checkNotNull(state, "state"); - this.state = Optional.ofNullable(state); - return this; - } - - - public HomeAddress withState(Optional state) { Utils.checkNotNull(state, "state"); this.state = state; return this; } + /** + * ZIP or ZIP+4. + */ public HomeAddress withZip(String zip) { - Utils.checkNotNull(zip, "zip"); - this.zip = Optional.ofNullable(zip); - return this; - } - - - public HomeAddress withZip(Optional zip) { Utils.checkNotNull(zip, "zip"); this.zip = zip; return this; } - public HomeAddress withCountry(String country) { - Utils.checkNotNull(country, "country"); - this.country = Optional.ofNullable(country); - return this; - } - - - public HomeAddress withCountry(Optional country) { - Utils.checkNotNull(country, "country"); - this.country = country; - return this; - } - @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -201,15 +191,14 @@ public boolean equals(java.lang.Object o) { Utils.enhancedDeepEquals(this.street2, other.street2) && Utils.enhancedDeepEquals(this.city, other.city) && Utils.enhancedDeepEquals(this.state, other.state) && - Utils.enhancedDeepEquals(this.zip, other.zip) && - Utils.enhancedDeepEquals(this.country, other.country); + Utils.enhancedDeepEquals(this.zip, other.zip); } @Override public int hashCode() { return Utils.enhancedHash( street1, street2, city, - state, zip, country); + state, zip); } @Override @@ -219,122 +208,91 @@ public String toString() { "street2", street2, "city", city, "state", state, - "zip", zip, - "country", country); + "zip", zip); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private Optional street1 = Optional.empty(); - - private Optional street2 = Optional.empty(); + private String street1; - private Optional city = Optional.empty(); + private JsonNullable street2 = JsonNullable.undefined(); - private Optional state = Optional.empty(); + private String city; - private Optional zip = Optional.empty(); + private String state; - private Optional country; + private String zip; private Builder() { // force use of static builder() method } + /** + * Street address line 1. + */ public Builder street1(String street1) { - Utils.checkNotNull(street1, "street1"); - this.street1 = Optional.ofNullable(street1); - return this; - } - - public Builder street1(Optional street1) { Utils.checkNotNull(street1, "street1"); this.street1 = street1; return this; } + /** + * Apartment, suite, unit, or building (optional). + */ public Builder street2(String street2) { Utils.checkNotNull(street2, "street2"); - this.street2 = Optional.ofNullable(street2); + this.street2 = JsonNullable.of(street2); return this; } - public Builder street2(Optional street2) { + /** + * Apartment, suite, unit, or building (optional). + */ + public Builder street2(JsonNullable street2) { Utils.checkNotNull(street2, "street2"); this.street2 = street2; return this; } + /** + * City. + */ public Builder city(String city) { - Utils.checkNotNull(city, "city"); - this.city = Optional.ofNullable(city); - return this; - } - - public Builder city(Optional city) { Utils.checkNotNull(city, "city"); this.city = city; return this; } + /** + * Two-letter U.S. state or territory postal abbreviation. + */ public Builder state(String state) { - Utils.checkNotNull(state, "state"); - this.state = Optional.ofNullable(state); - return this; - } - - public Builder state(Optional state) { Utils.checkNotNull(state, "state"); this.state = state; return this; } + /** + * ZIP or ZIP+4. + */ public Builder zip(String zip) { - Utils.checkNotNull(zip, "zip"); - this.zip = Optional.ofNullable(zip); - return this; - } - - public Builder zip(Optional zip) { Utils.checkNotNull(zip, "zip"); this.zip = zip; return this; } - - public Builder country(String country) { - Utils.checkNotNull(country, "country"); - this.country = Optional.ofNullable(country); - return this; - } - - public Builder country(Optional country) { - Utils.checkNotNull(country, "country"); - this.country = country; - return this; - } - public HomeAddress build() { - if (country == null) { - country = _SINGLETON_VALUE_Country.value(); - } return new HomeAddress( street1, street2, city, - state, zip, country); + state, zip); } - - private static final LazySingletonValue> _SINGLETON_VALUE_Country = - new LazySingletonValue<>( - "country", - "\"USA\"", - new TypeReference>() {}); } } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Location.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Location.java index 543412f9a..5e65a4a09 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Location.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Location.java @@ -14,6 +14,8 @@ import java.lang.Boolean; import java.lang.Override; import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.List; import java.util.Optional; import org.openapitools.jackson.nullable.JsonNullable; @@ -129,6 +131,14 @@ public class Location { @JsonProperty("inactive") private Optional inactive; + /** + * An array of warning objects that provide additional information about the address. Warnings do not + * prevent the address from being saved. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("warnings") + private Optional> warnings; + @JsonCreator public Location( @JsonProperty("uuid") String uuid, @@ -146,7 +156,8 @@ public Location( @JsonProperty("created_at") Optional createdAt, @JsonProperty("updated_at") Optional updatedAt, @JsonProperty("active") Optional active, - @JsonProperty("inactive") Optional inactive) { + @JsonProperty("inactive") Optional inactive, + @JsonProperty("warnings") Optional> warnings) { Utils.checkNotNull(uuid, "uuid"); Utils.checkNotNull(version, "version"); Utils.checkNotNull(companyUuid, "companyUuid"); @@ -163,6 +174,7 @@ public Location( Utils.checkNotNull(updatedAt, "updatedAt"); Utils.checkNotNull(active, "active"); Utils.checkNotNull(inactive, "inactive"); + Utils.checkNotNull(warnings, "warnings"); this.uuid = uuid; this.version = version; this.companyUuid = companyUuid; @@ -179,6 +191,7 @@ public Location( this.updatedAt = updatedAt; this.active = active; this.inactive = inactive; + this.warnings = warnings; } public Location( @@ -188,7 +201,7 @@ public Location( Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), - Optional.empty()); + Optional.empty(), Optional.empty()); } /** @@ -308,6 +321,16 @@ public Optional inactive() { return inactive; } + /** + * An array of warning objects that provide additional information about the address. Warnings do not + * prevent the address from being saved. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> warnings() { + return (Optional>) warnings; + } + public static Builder builder() { return new Builder(); } @@ -584,6 +607,27 @@ public Location withInactive(Optional inactive) { return this; } + /** + * An array of warning objects that provide additional information about the address. Warnings do not + * prevent the address from being saved. + */ + public Location withWarnings(List warnings) { + Utils.checkNotNull(warnings, "warnings"); + this.warnings = Optional.ofNullable(warnings); + return this; + } + + + /** + * An array of warning objects that provide additional information about the address. Warnings do not + * prevent the address from being saved. + */ + public Location withWarnings(Optional> warnings) { + Utils.checkNotNull(warnings, "warnings"); + this.warnings = warnings; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -609,7 +653,8 @@ public boolean equals(java.lang.Object o) { Utils.enhancedDeepEquals(this.createdAt, other.createdAt) && Utils.enhancedDeepEquals(this.updatedAt, other.updatedAt) && Utils.enhancedDeepEquals(this.active, other.active) && - Utils.enhancedDeepEquals(this.inactive, other.inactive); + Utils.enhancedDeepEquals(this.inactive, other.inactive) && + Utils.enhancedDeepEquals(this.warnings, other.warnings); } @Override @@ -620,7 +665,7 @@ public int hashCode() { city, state, zip, country, mailingAddress, filingAddress, createdAt, updatedAt, active, - inactive); + inactive, warnings); } @Override @@ -641,7 +686,8 @@ public String toString() { "createdAt", createdAt, "updatedAt", updatedAt, "active", active, - "inactive", inactive); + "inactive", inactive, + "warnings", warnings); } @SuppressWarnings("UnusedReturnValue") @@ -679,6 +725,8 @@ public final static class Builder { private Optional inactive = Optional.empty(); + private Optional> warnings = Optional.empty(); + private Builder() { // force use of static builder() method } @@ -956,6 +1004,27 @@ public Builder inactive(Optional inactive) { return this; } + + /** + * An array of warning objects that provide additional information about the address. Warnings do not + * prevent the address from being saved. + */ + public Builder warnings(List warnings) { + Utils.checkNotNull(warnings, "warnings"); + this.warnings = Optional.ofNullable(warnings); + return this; + } + + /** + * An array of warning objects that provide additional information about the address. Warnings do not + * prevent the address from being saved. + */ + public Builder warnings(Optional> warnings) { + Utils.checkNotNull(warnings, "warnings"); + this.warnings = warnings; + return this; + } + public Location build() { if (country == null) { country = _SINGLETON_VALUE_Country.value(); @@ -967,7 +1036,7 @@ public Location build() { city, state, zip, country, mailingAddress, filingAddress, createdAt, updatedAt, active, - inactive); + inactive, warnings); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/MemberPortalInvitation.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/MemberPortalInvitation.java new file mode 100644 index 000000000..6af1765dd --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/MemberPortalInvitation.java @@ -0,0 +1,184 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Boolean; +import java.lang.Override; +import java.lang.String; + +/** + * MemberPortalInvitation + * + *

    The status of a member portal invitation for an employee or contractor. Returned by `GET + * /v1/employees/{employee_id}/member_portal_invitations` and `GET + * /v1/contractors/{contractor_uuid}/member_portal_invitations`. + */ +public class MemberPortalInvitation { + /** + * Current status of the member portal invitation. + * - `pending`: The invitation record has been created but the invitation email has not yet been + * delivered. + * - `sent`: The invitation email has been delivered to the member. + * - `verified`: The member has been verified by the member portal partner. + * - `complete`: The member has fully completed their member portal registration. + * - `cancelled`: The invitation has been cancelled, either via `DELETE` on this endpoint or because it + * was superseded. + */ + @JsonProperty("status") + private MemberPortalInvitationStatus1 status; + + /** + * Whether the invitation can no longer be acted on by the member. Returns `true` when the invitation + * token has expired or when the invitation has been `cancelled`. To reissue an expired invitation, + * call `POST` on this endpoint again — a new token will be generated and will override the prior one. + */ + @JsonProperty("expired") + private boolean expired; + + @JsonCreator + public MemberPortalInvitation( + @JsonProperty("status") MemberPortalInvitationStatus1 status, + @JsonProperty("expired") boolean expired) { + Utils.checkNotNull(status, "status"); + Utils.checkNotNull(expired, "expired"); + this.status = status; + this.expired = expired; + } + + /** + * Current status of the member portal invitation. + * - `pending`: The invitation record has been created but the invitation email has not yet been + * delivered. + * - `sent`: The invitation email has been delivered to the member. + * - `verified`: The member has been verified by the member portal partner. + * - `complete`: The member has fully completed their member portal registration. + * - `cancelled`: The invitation has been cancelled, either via `DELETE` on this endpoint or because it + * was superseded. + */ + @JsonIgnore + public MemberPortalInvitationStatus1 status() { + return status; + } + + /** + * Whether the invitation can no longer be acted on by the member. Returns `true` when the invitation + * token has expired or when the invitation has been `cancelled`. To reissue an expired invitation, + * call `POST` on this endpoint again — a new token will be generated and will override the prior one. + */ + @JsonIgnore + public boolean expired() { + return expired; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Current status of the member portal invitation. + * - `pending`: The invitation record has been created but the invitation email has not yet been + * delivered. + * - `sent`: The invitation email has been delivered to the member. + * - `verified`: The member has been verified by the member portal partner. + * - `complete`: The member has fully completed their member portal registration. + * - `cancelled`: The invitation has been cancelled, either via `DELETE` on this endpoint or because it + * was superseded. + */ + public MemberPortalInvitation withStatus(MemberPortalInvitationStatus1 status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + /** + * Whether the invitation can no longer be acted on by the member. Returns `true` when the invitation + * token has expired or when the invitation has been `cancelled`. To reissue an expired invitation, + * call `POST` on this endpoint again — a new token will be generated and will override the prior one. + */ + public MemberPortalInvitation withExpired(boolean expired) { + Utils.checkNotNull(expired, "expired"); + this.expired = expired; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + MemberPortalInvitation other = (MemberPortalInvitation) o; + return + Utils.enhancedDeepEquals(this.status, other.status) && + Utils.enhancedDeepEquals(this.expired, other.expired); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + status, expired); + } + + @Override + public String toString() { + return Utils.toString(MemberPortalInvitation.class, + "status", status, + "expired", expired); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private MemberPortalInvitationStatus1 status; + + private Boolean expired; + + private Builder() { + // force use of static builder() method + } + + + /** + * Current status of the member portal invitation. + * - `pending`: The invitation record has been created but the invitation email has not yet been + * delivered. + * - `sent`: The invitation email has been delivered to the member. + * - `verified`: The member has been verified by the member portal partner. + * - `complete`: The member has fully completed their member portal registration. + * - `cancelled`: The invitation has been cancelled, either via `DELETE` on this endpoint or because it + * was superseded. + */ + public Builder status(MemberPortalInvitationStatus1 status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + + /** + * Whether the invitation can no longer be acted on by the member. Returns `true` when the invitation + * token has expired or when the invitation has been `cancelled`. To reissue an expired invitation, + * call `POST` on this endpoint again — a new token will be generated and will override the prior one. + */ + public Builder expired(boolean expired) { + Utils.checkNotNull(expired, "expired"); + this.expired = expired; + return this; + } + + public MemberPortalInvitation build() { + + return new MemberPortalInvitation( + status, expired); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/MemberPortalInvitationStatus.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/MemberPortalInvitationStatus.java index 1a8cd372e..f1356c5c3 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/MemberPortalInvitationStatus.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/MemberPortalInvitationStatus.java @@ -29,7 +29,7 @@ public class MemberPortalInvitationStatus { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("status") - private Optional status; + private Optional status; /** * Whether the invitation token has expired. @@ -54,7 +54,7 @@ public class MemberPortalInvitationStatus { @JsonCreator public MemberPortalInvitationStatus( - @JsonProperty("status") Optional status, + @JsonProperty("status") Optional status, @JsonProperty("token_expired") JsonNullable tokenExpired, @JsonProperty("welcome_email_sent_at") JsonNullable welcomeEmailSentAt, @JsonProperty("last_password_resent_at") JsonNullable lastPasswordResentAt) { @@ -78,8 +78,8 @@ public MemberPortalInvitationStatus() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional status() { - return (Optional) status; + public Optional status() { + return (Optional) status; } /** @@ -114,7 +114,7 @@ public static Builder builder() { /** * The current status of the member portal invitation. */ - public MemberPortalInvitationStatus withStatus(ShowEmployeesStatus status) { + public MemberPortalInvitationStatus withStatus(ContractorStatus status) { Utils.checkNotNull(status, "status"); this.status = Optional.ofNullable(status); return this; @@ -124,7 +124,7 @@ public MemberPortalInvitationStatus withStatus(ShowEmployeesStatus status) { /** * The current status of the member portal invitation. */ - public MemberPortalInvitationStatus withStatus(Optional status) { + public MemberPortalInvitationStatus withStatus(Optional status) { Utils.checkNotNull(status, "status"); this.status = status; return this; @@ -219,7 +219,7 @@ public String toString() { @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private Optional status = Optional.empty(); + private Optional status = Optional.empty(); private JsonNullable tokenExpired = JsonNullable.undefined(); @@ -235,7 +235,7 @@ private Builder() { /** * The current status of the member portal invitation. */ - public Builder status(ShowEmployeesStatus status) { + public Builder status(ContractorStatus status) { Utils.checkNotNull(status, "status"); this.status = Optional.ofNullable(status); return this; @@ -244,7 +244,7 @@ public Builder status(ShowEmployeesStatus status) { /** * The current status of the member portal invitation. */ - public Builder status(Optional status) { + public Builder status(Optional status) { Utils.checkNotNull(status, "status"); this.status = status; return this; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/MemberPortalInvitationStatus1.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/MemberPortalInvitationStatus1.java new file mode 100644 index 000000000..97b76ffe2 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/MemberPortalInvitationStatus1.java @@ -0,0 +1,50 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * MemberPortalInvitationStatus1 + * + *

    Current status of the member portal invitation. + * - `pending`: The invitation record has been created but the invitation email has not yet been + * delivered. + * - `sent`: The invitation email has been delivered to the member. + * - `verified`: The member has been verified by the member portal partner. + * - `complete`: The member has fully completed their member portal registration. + * - `cancelled`: The invitation has been cancelled, either via `DELETE` on this endpoint or because it + * was superseded. + */ +public enum MemberPortalInvitationStatus1 { + PENDING("pending"), + SENT("sent"), + VERIFIED("verified"), + COMPLETE("complete"), + CANCELLED("cancelled"); + + @JsonValue + private final String value; + + MemberPortalInvitationStatus1(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (MemberPortalInvitationStatus1 o: MemberPortalInvitationStatus1.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/OnboardingStatus.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/OnboardingStatus.java index 3b1d19318..5b079e0d0 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/OnboardingStatus.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/OnboardingStatus.java @@ -8,15 +8,19 @@ import java.util.Objects; import java.util.Optional; +/** + * OnboardingStatus + * + *

    One of the "onboarding_status" enum values. + */ public enum OnboardingStatus { - ONBOARDING_COMPLETED("onboarding_completed"), ADMIN_ONBOARDING_INCOMPLETE("admin_onboarding_incomplete"), - SELF_ONBOARDING_PENDING_INVITE("self_onboarding_pending_invite"), + ADMIN_ONBOARDING_REVIEW("admin_onboarding_review"), + SELF_ONBOARDING_NOT_INVITED("self_onboarding_not_invited"), SELF_ONBOARDING_INVITED("self_onboarding_invited"), - SELF_ONBOARDING_INVITED_STARTED("self_onboarding_invited_started"), - SELF_ONBOARDING_INVITED_OVERDUE("self_onboarding_invited_overdue"), - SELF_ONBOARDING_COMPLETED_BY_EMPLOYEE("self_onboarding_completed_by_employee"), - SELF_ONBOARDING_AWAITING_ADMIN_REVIEW("self_onboarding_awaiting_admin_review"); + SELF_ONBOARDING_STARTED("self_onboarding_started"), + SELF_ONBOARDING_REVIEW("self_onboarding_review"), + ONBOARDING_COMPLETED("onboarding_completed"); @JsonValue private final String value; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Options.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Options.java index f9d3aa908..ca5b7457d 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Options.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Options.java @@ -11,54 +11,70 @@ import com.gusto.embedded_api.utils.Utils; import java.lang.Override; import java.lang.String; -import java.lang.SuppressWarnings; -import java.util.Optional; +import org.openapitools.jackson.nullable.JsonNullable; public class Options { /** - * An allowed value to answer the question + * A customer facing label for the answer + */ + @JsonProperty("label") + private String label; + + /** + * The actual value to be submitted */ - @JsonInclude(Include.NON_ABSENT) @JsonProperty("value") - private Optional value; + private TaxRequirementMetadataValue value; /** - * A display label that corresponds to the answer value + * A less verbose label that may sometimes be available */ - @JsonProperty("label") - private String label; + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("short_label") + private JsonNullable shortLabel; @JsonCreator public Options( - @JsonProperty("value") Optional value, - @JsonProperty("label") String label) { - Utils.checkNotNull(value, "value"); + @JsonProperty("label") String label, + @JsonProperty("value") TaxRequirementMetadataValue value, + @JsonProperty("short_label") JsonNullable shortLabel) { Utils.checkNotNull(label, "label"); - this.value = value; + Utils.checkNotNull(value, "value"); + Utils.checkNotNull(shortLabel, "shortLabel"); this.label = label; + this.value = value; + this.shortLabel = shortLabel; } public Options( - String label) { - this(Optional.empty(), label); + String label, + TaxRequirementMetadataValue value) { + this(label, value, JsonNullable.undefined()); } /** - * An allowed value to answer the question + * A customer facing label for the answer */ - @SuppressWarnings("unchecked") @JsonIgnore - public Optional value() { - return (Optional) value; + public String label() { + return label; } /** - * A display label that corresponds to the answer value + * The actual value to be submitted */ @JsonIgnore - public String label() { - return label; + public TaxRequirementMetadataValue value() { + return value; + } + + /** + * A less verbose label that may sometimes be available + */ + @JsonIgnore + public JsonNullable shortLabel() { + return shortLabel; } public static Builder builder() { @@ -67,30 +83,38 @@ public static Builder builder() { /** - * An allowed value to answer the question + * A customer facing label for the answer */ - public Options withValue(EmployeeStateTaxInputQuestionFormatValue value) { - Utils.checkNotNull(value, "value"); - this.value = Optional.ofNullable(value); + public Options withLabel(String label) { + Utils.checkNotNull(label, "label"); + this.label = label; return this; } - /** - * An allowed value to answer the question + * The actual value to be submitted */ - public Options withValue(Optional value) { + public Options withValue(TaxRequirementMetadataValue value) { Utils.checkNotNull(value, "value"); this.value = value; return this; } /** - * A display label that corresponds to the answer value + * A less verbose label that may sometimes be available */ - public Options withLabel(String label) { - Utils.checkNotNull(label, "label"); - this.label = label; + public Options withShortLabel(String shortLabel) { + Utils.checkNotNull(shortLabel, "shortLabel"); + this.shortLabel = JsonNullable.of(shortLabel); + return this; + } + + /** + * A less verbose label that may sometimes be available + */ + public Options withShortLabel(JsonNullable shortLabel) { + Utils.checkNotNull(shortLabel, "shortLabel"); + this.shortLabel = shortLabel; return this; } @@ -104,48 +128,53 @@ public boolean equals(java.lang.Object o) { } Options other = (Options) o; return + Utils.enhancedDeepEquals(this.label, other.label) && Utils.enhancedDeepEquals(this.value, other.value) && - Utils.enhancedDeepEquals(this.label, other.label); + Utils.enhancedDeepEquals(this.shortLabel, other.shortLabel); } @Override public int hashCode() { return Utils.enhancedHash( - value, label); + label, value, shortLabel); } @Override public String toString() { return Utils.toString(Options.class, + "label", label, "value", value, - "label", label); + "shortLabel", shortLabel); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private Optional value = Optional.empty(); - private String label; + private TaxRequirementMetadataValue value; + + private JsonNullable shortLabel = JsonNullable.undefined(); + private Builder() { // force use of static builder() method } /** - * An allowed value to answer the question + * A customer facing label for the answer */ - public Builder value(EmployeeStateTaxInputQuestionFormatValue value) { - Utils.checkNotNull(value, "value"); - this.value = Optional.ofNullable(value); + public Builder label(String label) { + Utils.checkNotNull(label, "label"); + this.label = label; return this; } + /** - * An allowed value to answer the question + * The actual value to be submitted */ - public Builder value(Optional value) { + public Builder value(TaxRequirementMetadataValue value) { Utils.checkNotNull(value, "value"); this.value = value; return this; @@ -153,18 +182,27 @@ public Builder value(Optional shortLabel) { + Utils.checkNotNull(shortLabel, "shortLabel"); + this.shortLabel = shortLabel; return this; } public Options build() { return new Options( - value, label); + label, value, shortLabel); } } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/AchTransactionRecipientType.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/OverrideType.java similarity index 64% rename from gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/AchTransactionRecipientType.java rename to gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/OverrideType.java index 02e057440..d8636958a 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/AchTransactionRecipientType.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/OverrideType.java @@ -8,14 +8,18 @@ import java.util.Objects; import java.util.Optional; -public enum AchTransactionRecipientType { - EMPLOYEE("Employee"), - CONTRACTOR("Contractor"); +/** + * OverrideType + * + *

    Override mode. Only `one_time` is currently exposed. + */ +public enum OverrideType { + ONE_TIME("one_time"); @JsonValue private final String value; - AchTransactionRecipientType(String value) { + OverrideType(String value) { this.value = value; } @@ -23,8 +27,8 @@ public String value() { return value; } - public static Optional fromValue(String value) { - for (AchTransactionRecipientType o: AchTransactionRecipientType.values()) { + public static Optional fromValue(String value) { + for (OverrideType o: OverrideType.values()) { if (Objects.deepEquals(o.value, value)) { return Optional.of(o); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PartnerManagedCompanyDisassociateResponse.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PartnerManagedCompanyDisassociateResponse.java new file mode 100644 index 000000000..0c3c819af --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PartnerManagedCompanyDisassociateResponse.java @@ -0,0 +1,145 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Override; +import java.lang.String; + +/** + * PartnerManagedCompanyDisassociateResponse + * + *

    The company that was disassociated from the partner's embedded payroll product. + */ +public class PartnerManagedCompanyDisassociateResponse { + /** + * The UUID of the disassociated company. + */ + @JsonProperty("company_uuid") + private String companyUuid; + + /** + * The name of the disassociated company. + */ + @JsonProperty("company_name") + private String companyName; + + @JsonCreator + public PartnerManagedCompanyDisassociateResponse( + @JsonProperty("company_uuid") String companyUuid, + @JsonProperty("company_name") String companyName) { + Utils.checkNotNull(companyUuid, "companyUuid"); + Utils.checkNotNull(companyName, "companyName"); + this.companyUuid = companyUuid; + this.companyName = companyName; + } + + /** + * The UUID of the disassociated company. + */ + @JsonIgnore + public String companyUuid() { + return companyUuid; + } + + /** + * The name of the disassociated company. + */ + @JsonIgnore + public String companyName() { + return companyName; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * The UUID of the disassociated company. + */ + public PartnerManagedCompanyDisassociateResponse withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + /** + * The name of the disassociated company. + */ + public PartnerManagedCompanyDisassociateResponse withCompanyName(String companyName) { + Utils.checkNotNull(companyName, "companyName"); + this.companyName = companyName; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PartnerManagedCompanyDisassociateResponse other = (PartnerManagedCompanyDisassociateResponse) o; + return + Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && + Utils.enhancedDeepEquals(this.companyName, other.companyName); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + companyUuid, companyName); + } + + @Override + public String toString() { + return Utils.toString(PartnerManagedCompanyDisassociateResponse.class, + "companyUuid", companyUuid, + "companyName", companyName); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String companyUuid; + + private String companyName; + + private Builder() { + // force use of static builder() method + } + + + /** + * The UUID of the disassociated company. + */ + public Builder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + + /** + * The name of the disassociated company. + */ + public Builder companyName(String companyName) { + Utils.checkNotNull(companyName, "companyName"); + this.companyName = companyName; + return this; + } + + public PartnerManagedCompanyDisassociateResponse build() { + + return new PartnerManagedCompanyDisassociateResponse( + companyUuid, companyName); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayScheduleAssignment.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayScheduleAssignment.java index 5b44aeba2..af03d5c1c 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayScheduleAssignment.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayScheduleAssignment.java @@ -26,7 +26,7 @@ public class PayScheduleAssignment { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("type") - private JsonNullable type; + private JsonNullable type; /** * Pay schedule for hourly employees. @@ -65,7 +65,7 @@ public class PayScheduleAssignment { @JsonCreator public PayScheduleAssignment( - @JsonProperty("type") JsonNullable type, + @JsonProperty("type") JsonNullable type, @JsonProperty("hourly_pay_schedule_uuid") JsonNullable hourlyPayScheduleUuid, @JsonProperty("salaried_pay_schedule_uuid") JsonNullable salariedPayScheduleUuid, @JsonProperty("default_pay_schedule_uuid") JsonNullable defaultPayScheduleUuid, @@ -95,8 +95,8 @@ public PayScheduleAssignment() { */ @SuppressWarnings("unchecked") @JsonIgnore - public JsonNullable type() { - return (JsonNullable) type; + public JsonNullable type() { + return (JsonNullable) type; } /** @@ -149,7 +149,7 @@ public static Builder builder() { /** * The pay schedule assignment type. */ - public PayScheduleAssignment withType(Type type) { + public PayScheduleAssignment withType(PayScheduleAssignmentType type) { Utils.checkNotNull(type, "type"); this.type = JsonNullable.of(type); return this; @@ -158,7 +158,7 @@ public PayScheduleAssignment withType(Type type) { /** * The pay schedule assignment type. */ - public PayScheduleAssignment withType(JsonNullable type) { + public PayScheduleAssignment withType(JsonNullable type) { Utils.checkNotNull(type, "type"); this.type = type; return this; @@ -293,7 +293,7 @@ public String toString() { @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private JsonNullable type = JsonNullable.undefined(); + private JsonNullable type = JsonNullable.undefined(); private JsonNullable hourlyPayScheduleUuid = JsonNullable.undefined(); @@ -313,7 +313,7 @@ private Builder() { /** * The pay schedule assignment type. */ - public Builder type(Type type) { + public Builder type(PayScheduleAssignmentType type) { Utils.checkNotNull(type, "type"); this.type = JsonNullable.of(type); return this; @@ -322,7 +322,7 @@ public Builder type(Type type) { /** * The pay schedule assignment type. */ - public Builder type(JsonNullable type) { + public Builder type(JsonNullable type) { Utils.checkNotNull(type, "type"); this.type = type; return this; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayScheduleAssignmentBody.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayScheduleAssignmentBody.java index 9e3ea9407..11f818c4f 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayScheduleAssignmentBody.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayScheduleAssignmentBody.java @@ -59,7 +59,7 @@ public class PayScheduleAssignmentBody { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("employees") - private Optional> employees; + private Optional> employees; /** * List of departments and their pay schedules. @@ -75,7 +75,7 @@ public PayScheduleAssignmentBody( @JsonProperty("salaried_pay_schedule_uuid") Optional salariedPayScheduleUuid, @JsonProperty("default_pay_schedule_uuid") Optional defaultPayScheduleUuid, @JsonProperty("partial_assignment") Optional partialAssignment, - @JsonProperty("employees") Optional> employees, + @JsonProperty("employees") Optional> employees, @JsonProperty("departments") Optional> departments) { Utils.checkNotNull(type, "type"); Utils.checkNotNull(hourlyPayScheduleUuid, "hourlyPayScheduleUuid"); @@ -146,8 +146,8 @@ public Optional partialAssignment() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional> employees() { - return (Optional>) employees; + public Optional> employees() { + return (Optional>) employees; } /** @@ -264,7 +264,7 @@ public PayScheduleAssignmentBody withPartialAssignment(Optional partial /** * List of employees and their pay schedules. */ - public PayScheduleAssignmentBody withEmployees(List employees) { + public PayScheduleAssignmentBody withEmployees(List employees) { Utils.checkNotNull(employees, "employees"); this.employees = Optional.ofNullable(employees); return this; @@ -274,7 +274,7 @@ public PayScheduleAssignmentBody withEmployees(List employees) { /** * List of employees and their pay schedules. */ - public PayScheduleAssignmentBody withEmployees(Optional> employees) { + public PayScheduleAssignmentBody withEmployees(Optional> employees) { Utils.checkNotNull(employees, "employees"); this.employees = employees; return this; @@ -351,7 +351,7 @@ public final static class Builder { private Optional partialAssignment = Optional.empty(); - private Optional> employees = Optional.empty(); + private Optional> employees = Optional.empty(); private Optional> departments = Optional.empty(); @@ -460,7 +460,7 @@ public Builder partialAssignment(Optional partialAssignment) { /** * List of employees and their pay schedules. */ - public Builder employees(List employees) { + public Builder employees(List employees) { Utils.checkNotNull(employees, "employees"); this.employees = Optional.ofNullable(employees); return this; @@ -469,7 +469,7 @@ public Builder employees(List employees) { /** * List of employees and their pay schedules. */ - public Builder employees(Optional> employees) { + public Builder employees(Optional> employees) { Utils.checkNotNull(employees, "employees"); this.employees = employees; return this; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayScheduleAssignmentBodyEmployees.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayScheduleAssignmentBodyEmployees.java new file mode 100644 index 000000000..de90067c7 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayScheduleAssignmentBodyEmployees.java @@ -0,0 +1,188 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.util.Optional; + + +public class PayScheduleAssignmentBodyEmployees { + /** + * Employee UUID + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("employee_uuid") + private Optional employeeUuid; + + /** + * Pay schedule UUID + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("pay_schedule_uuid") + private Optional payScheduleUuid; + + @JsonCreator + public PayScheduleAssignmentBodyEmployees( + @JsonProperty("employee_uuid") Optional employeeUuid, + @JsonProperty("pay_schedule_uuid") Optional payScheduleUuid) { + Utils.checkNotNull(employeeUuid, "employeeUuid"); + Utils.checkNotNull(payScheduleUuid, "payScheduleUuid"); + this.employeeUuid = employeeUuid; + this.payScheduleUuid = payScheduleUuid; + } + + public PayScheduleAssignmentBodyEmployees() { + this(Optional.empty(), Optional.empty()); + } + + /** + * Employee UUID + */ + @JsonIgnore + public Optional employeeUuid() { + return employeeUuid; + } + + /** + * Pay schedule UUID + */ + @JsonIgnore + public Optional payScheduleUuid() { + return payScheduleUuid; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Employee UUID + */ + public PayScheduleAssignmentBodyEmployees withEmployeeUuid(String employeeUuid) { + Utils.checkNotNull(employeeUuid, "employeeUuid"); + this.employeeUuid = Optional.ofNullable(employeeUuid); + return this; + } + + + /** + * Employee UUID + */ + public PayScheduleAssignmentBodyEmployees withEmployeeUuid(Optional employeeUuid) { + Utils.checkNotNull(employeeUuid, "employeeUuid"); + this.employeeUuid = employeeUuid; + return this; + } + + /** + * Pay schedule UUID + */ + public PayScheduleAssignmentBodyEmployees withPayScheduleUuid(String payScheduleUuid) { + Utils.checkNotNull(payScheduleUuid, "payScheduleUuid"); + this.payScheduleUuid = Optional.ofNullable(payScheduleUuid); + return this; + } + + + /** + * Pay schedule UUID + */ + public PayScheduleAssignmentBodyEmployees withPayScheduleUuid(Optional payScheduleUuid) { + Utils.checkNotNull(payScheduleUuid, "payScheduleUuid"); + this.payScheduleUuid = payScheduleUuid; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PayScheduleAssignmentBodyEmployees other = (PayScheduleAssignmentBodyEmployees) o; + return + Utils.enhancedDeepEquals(this.employeeUuid, other.employeeUuid) && + Utils.enhancedDeepEquals(this.payScheduleUuid, other.payScheduleUuid); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + employeeUuid, payScheduleUuid); + } + + @Override + public String toString() { + return Utils.toString(PayScheduleAssignmentBodyEmployees.class, + "employeeUuid", employeeUuid, + "payScheduleUuid", payScheduleUuid); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional employeeUuid = Optional.empty(); + + private Optional payScheduleUuid = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * Employee UUID + */ + public Builder employeeUuid(String employeeUuid) { + Utils.checkNotNull(employeeUuid, "employeeUuid"); + this.employeeUuid = Optional.ofNullable(employeeUuid); + return this; + } + + /** + * Employee UUID + */ + public Builder employeeUuid(Optional employeeUuid) { + Utils.checkNotNull(employeeUuid, "employeeUuid"); + this.employeeUuid = employeeUuid; + return this; + } + + + /** + * Pay schedule UUID + */ + public Builder payScheduleUuid(String payScheduleUuid) { + Utils.checkNotNull(payScheduleUuid, "payScheduleUuid"); + this.payScheduleUuid = Optional.ofNullable(payScheduleUuid); + return this; + } + + /** + * Pay schedule UUID + */ + public Builder payScheduleUuid(Optional payScheduleUuid) { + Utils.checkNotNull(payScheduleUuid, "payScheduleUuid"); + this.payScheduleUuid = payScheduleUuid; + return this; + } + + public PayScheduleAssignmentBodyEmployees build() { + + return new PayScheduleAssignmentBodyEmployees( + employeeUuid, payScheduleUuid); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayScheduleAssignmentType.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayScheduleAssignmentType.java new file mode 100644 index 000000000..692793911 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayScheduleAssignmentType.java @@ -0,0 +1,37 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +public enum PayScheduleAssignmentType { + SINGLE("single"), + HOURLY_SALARIED("hourly_salaried"), + BY_EMPLOYEE("by_employee"), + BY_DEPARTMENT("by_department"); + + @JsonValue + private final String value; + + PayScheduleAssignmentType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayScheduleAssignmentType o: PayScheduleAssignmentType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayScheduleAutoPayrollEnablementBlocker.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayScheduleAutoPayrollEnablementBlocker.java index 1cdead7df..260ff5bab 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayScheduleAutoPayrollEnablementBlocker.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayScheduleAutoPayrollEnablementBlocker.java @@ -21,9 +21,9 @@ */ public class PayScheduleAutoPayrollEnablementBlocker { /** - * The blocker type (e.g. employees_not_on_direct_deposit, employees_not_salaried, - * missing_funding_method, missing_state_tax_requirements, one_day_ach_speed_not_supported, - * company_suspended, earned_fast_ach_not_met). + * The blocker type. Possible values: employees_not_on_direct_deposit, employees_not_salaried, + * missing_state_tax_requirements, missing_funding_method, one_day_ach_speed_not_supported, + * company_suspended, earned_fast_ach_not_met, hourly_employees_missing_default_hours. */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("key") @@ -51,9 +51,9 @@ public PayScheduleAutoPayrollEnablementBlocker() { } /** - * The blocker type (e.g. employees_not_on_direct_deposit, employees_not_salaried, - * missing_funding_method, missing_state_tax_requirements, one_day_ach_speed_not_supported, - * company_suspended, earned_fast_ach_not_met). + * The blocker type. Possible values: employees_not_on_direct_deposit, employees_not_salaried, + * missing_state_tax_requirements, missing_funding_method, one_day_ach_speed_not_supported, + * company_suspended, earned_fast_ach_not_met, hourly_employees_missing_default_hours. */ @JsonIgnore public Optional key() { @@ -75,9 +75,9 @@ public static Builder builder() { /** - * The blocker type (e.g. employees_not_on_direct_deposit, employees_not_salaried, - * missing_funding_method, missing_state_tax_requirements, one_day_ach_speed_not_supported, - * company_suspended, earned_fast_ach_not_met). + * The blocker type. Possible values: employees_not_on_direct_deposit, employees_not_salaried, + * missing_state_tax_requirements, missing_funding_method, one_day_ach_speed_not_supported, + * company_suspended, earned_fast_ach_not_met, hourly_employees_missing_default_hours. */ public PayScheduleAutoPayrollEnablementBlocker withKey(String key) { Utils.checkNotNull(key, "key"); @@ -87,9 +87,9 @@ public PayScheduleAutoPayrollEnablementBlocker withKey(String key) { /** - * The blocker type (e.g. employees_not_on_direct_deposit, employees_not_salaried, - * missing_funding_method, missing_state_tax_requirements, one_day_ach_speed_not_supported, - * company_suspended, earned_fast_ach_not_met). + * The blocker type. Possible values: employees_not_on_direct_deposit, employees_not_salaried, + * missing_state_tax_requirements, missing_funding_method, one_day_ach_speed_not_supported, + * company_suspended, earned_fast_ach_not_met, hourly_employees_missing_default_hours. */ public PayScheduleAutoPayrollEnablementBlocker withKey(Optional key) { Utils.checkNotNull(key, "key"); @@ -156,9 +156,9 @@ private Builder() { /** - * The blocker type (e.g. employees_not_on_direct_deposit, employees_not_salaried, - * missing_funding_method, missing_state_tax_requirements, one_day_ach_speed_not_supported, - * company_suspended, earned_fast_ach_not_met). + * The blocker type. Possible values: employees_not_on_direct_deposit, employees_not_salaried, + * missing_state_tax_requirements, missing_funding_method, one_day_ach_speed_not_supported, + * company_suspended, earned_fast_ach_not_met, hourly_employees_missing_default_hours. */ public Builder key(String key) { Utils.checkNotNull(key, "key"); @@ -167,9 +167,9 @@ public Builder key(String key) { } /** - * The blocker type (e.g. employees_not_on_direct_deposit, employees_not_salaried, - * missing_funding_method, missing_state_tax_requirements, one_day_ach_speed_not_supported, - * company_suspended, earned_fast_ach_not_met). + * The blocker type. Possible values: employees_not_on_direct_deposit, employees_not_salaried, + * missing_state_tax_requirements, missing_funding_method, one_day_ach_speed_not_supported, + * company_suspended, earned_fast_ach_not_met, hourly_employees_missing_default_hours. */ public Builder key(Optional key) { Utils.checkNotNull(key, "key"); diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PaymentMethod.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PaymentMethod.java index fa1cfcc09..be45b3da7 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PaymentMethod.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PaymentMethod.java @@ -11,11 +11,11 @@ /** * PaymentMethod * - *

    The employee's payment method + *

    Payment method to filter by. */ public enum PaymentMethod { - DIRECT_DEPOSIT("Direct Deposit"), - CHECK("Check"); + CHECK("check"), + DIRECT_DEPOSIT("direct_deposit"); @JsonValue private final String value; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollBatch.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollBatch.java new file mode 100644 index 000000000..774a8187c --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollBatch.java @@ -0,0 +1,247 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Override; +import java.lang.String; + +/** + * PayrollBatch + * + *

    A payroll cancellation batch request. + */ +public class PayrollBatch { + /** + * The unique identifier of the payroll cancellation batch. + */ + @JsonProperty("uuid") + private String uuid; + + /** + * The idempotency key provided when creating the batch. + */ + @JsonProperty("idempotency_key") + private String idempotencyKey; + + /** + * The action being performed on the batch. + */ + @JsonProperty("batch_action") + private BatchAction batchAction; + + /** + * The lifecycle status of the batch request itself. Terminal values are `completed` (processing + * finished — inspect `results` and `exclusions` for per-payroll outcomes) and `failed` (the batch + * crashed at the system level; can be retried). This is distinct from the per-payroll `status` + * returned inside `results[]`. + * + *

    A `completed` batch does not imply every payroll was cancelled. + */ + @JsonProperty("status") + private PayrollBatchStatus status; + + @JsonCreator + public PayrollBatch( + @JsonProperty("uuid") String uuid, + @JsonProperty("idempotency_key") String idempotencyKey, + @JsonProperty("batch_action") BatchAction batchAction, + @JsonProperty("status") PayrollBatchStatus status) { + Utils.checkNotNull(uuid, "uuid"); + Utils.checkNotNull(idempotencyKey, "idempotencyKey"); + Utils.checkNotNull(batchAction, "batchAction"); + Utils.checkNotNull(status, "status"); + this.uuid = uuid; + this.idempotencyKey = idempotencyKey; + this.batchAction = batchAction; + this.status = status; + } + + /** + * The unique identifier of the payroll cancellation batch. + */ + @JsonIgnore + public String uuid() { + return uuid; + } + + /** + * The idempotency key provided when creating the batch. + */ + @JsonIgnore + public String idempotencyKey() { + return idempotencyKey; + } + + /** + * The action being performed on the batch. + */ + @JsonIgnore + public BatchAction batchAction() { + return batchAction; + } + + /** + * The lifecycle status of the batch request itself. Terminal values are `completed` (processing + * finished — inspect `results` and `exclusions` for per-payroll outcomes) and `failed` (the batch + * crashed at the system level; can be retried). This is distinct from the per-payroll `status` + * returned inside `results[]`. + * + *

    A `completed` batch does not imply every payroll was cancelled. + */ + @JsonIgnore + public PayrollBatchStatus status() { + return status; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * The unique identifier of the payroll cancellation batch. + */ + public PayrollBatch withUuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + /** + * The idempotency key provided when creating the batch. + */ + public PayrollBatch withIdempotencyKey(String idempotencyKey) { + Utils.checkNotNull(idempotencyKey, "idempotencyKey"); + this.idempotencyKey = idempotencyKey; + return this; + } + + /** + * The action being performed on the batch. + */ + public PayrollBatch withBatchAction(BatchAction batchAction) { + Utils.checkNotNull(batchAction, "batchAction"); + this.batchAction = batchAction; + return this; + } + + /** + * The lifecycle status of the batch request itself. Terminal values are `completed` (processing + * finished — inspect `results` and `exclusions` for per-payroll outcomes) and `failed` (the batch + * crashed at the system level; can be retried). This is distinct from the per-payroll `status` + * returned inside `results[]`. + * + *

    A `completed` batch does not imply every payroll was cancelled. + */ + public PayrollBatch withStatus(PayrollBatchStatus status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PayrollBatch other = (PayrollBatch) o; + return + Utils.enhancedDeepEquals(this.uuid, other.uuid) && + Utils.enhancedDeepEquals(this.idempotencyKey, other.idempotencyKey) && + Utils.enhancedDeepEquals(this.batchAction, other.batchAction) && + Utils.enhancedDeepEquals(this.status, other.status); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + uuid, idempotencyKey, batchAction, + status); + } + + @Override + public String toString() { + return Utils.toString(PayrollBatch.class, + "uuid", uuid, + "idempotencyKey", idempotencyKey, + "batchAction", batchAction, + "status", status); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String uuid; + + private String idempotencyKey; + + private BatchAction batchAction; + + private PayrollBatchStatus status; + + private Builder() { + // force use of static builder() method + } + + + /** + * The unique identifier of the payroll cancellation batch. + */ + public Builder uuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + + /** + * The idempotency key provided when creating the batch. + */ + public Builder idempotencyKey(String idempotencyKey) { + Utils.checkNotNull(idempotencyKey, "idempotencyKey"); + this.idempotencyKey = idempotencyKey; + return this; + } + + + /** + * The action being performed on the batch. + */ + public Builder batchAction(BatchAction batchAction) { + Utils.checkNotNull(batchAction, "batchAction"); + this.batchAction = batchAction; + return this; + } + + + /** + * The lifecycle status of the batch request itself. Terminal values are `completed` (processing + * finished — inspect `results` and `exclusions` for per-payroll outcomes) and `failed` (the batch + * crashed at the system level; can be retried). This is distinct from the per-payroll `status` + * returned inside `results[]`. + * + *

    A `completed` batch does not imply every payroll was cancelled. + */ + public Builder status(PayrollBatchStatus status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + public PayrollBatch build() { + + return new PayrollBatch( + uuid, idempotencyKey, batchAction, + status); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollBatchResults.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollBatchResults.java new file mode 100644 index 000000000..ef54e1b39 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollBatchResults.java @@ -0,0 +1,660 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Long; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.time.OffsetDateTime; +import java.util.List; +import java.util.Optional; +import org.openapitools.jackson.nullable.JsonNullable; + +/** + * PayrollBatchResults + * + *

    A payroll cancellation batch with per-payroll results. + */ +public class PayrollBatchResults { + /** + * The unique identifier of the payroll cancellation batch. + */ + @JsonProperty("uuid") + private String uuid; + + /** + * The idempotency key provided when creating the batch. + */ + @JsonProperty("idempotency_key") + private String idempotencyKey; + + /** + * The lifecycle status of the batch request itself. Terminal values are `completed` (processing + * finished — inspect `results` and `exclusions` for per-payroll outcomes) and `failed` (the batch + * crashed at the system level; can be retried). This is distinct from the per-payroll `status` + * returned inside `results[]`. + * + *

    A `completed` batch does not imply every payroll was cancelled. + */ + @JsonProperty("status") + private PayrollBatchResultsStatus status; + + /** + * The timestamp when the batch was submitted. + */ + @JsonProperty("submitted_at") + private OffsetDateTime submittedAt; + + /** + * The timestamp when the batch processing completed. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("completed_at") + private JsonNullable completedAt; + + /** + * The number of payrolls submitted in the batch. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("submitted_items") + private JsonNullable submittedItems; + + /** + * The number of payrolls processed (cancelled or attempted). Only present once the batch reaches a + * terminal status. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("processed_items") + private Optional processedItems; + + /** + * The number of payrolls excluded from processing. Only present once the batch reaches a terminal + * status. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("excluded_items") + private Optional excludedItems; + + /** + * Per-payroll cancellation results. Only present once the batch reaches a terminal status. One entry + * per authorized payroll. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("results") + private Optional> results; + + /** + * Payrolls that could not be processed, determined at submission time. Only present once the batch + * reaches a terminal status. Every UUID submitted in the POST batch appears in exactly one of + * `results` or `exclusions`. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("exclusions") + private Optional> exclusions; + + @JsonCreator + public PayrollBatchResults( + @JsonProperty("uuid") String uuid, + @JsonProperty("idempotency_key") String idempotencyKey, + @JsonProperty("status") PayrollBatchResultsStatus status, + @JsonProperty("submitted_at") OffsetDateTime submittedAt, + @JsonProperty("completed_at") JsonNullable completedAt, + @JsonProperty("submitted_items") JsonNullable submittedItems, + @JsonProperty("processed_items") Optional processedItems, + @JsonProperty("excluded_items") Optional excludedItems, + @JsonProperty("results") Optional> results, + @JsonProperty("exclusions") Optional> exclusions) { + Utils.checkNotNull(uuid, "uuid"); + Utils.checkNotNull(idempotencyKey, "idempotencyKey"); + Utils.checkNotNull(status, "status"); + Utils.checkNotNull(submittedAt, "submittedAt"); + Utils.checkNotNull(completedAt, "completedAt"); + Utils.checkNotNull(submittedItems, "submittedItems"); + Utils.checkNotNull(processedItems, "processedItems"); + Utils.checkNotNull(excludedItems, "excludedItems"); + Utils.checkNotNull(results, "results"); + Utils.checkNotNull(exclusions, "exclusions"); + this.uuid = uuid; + this.idempotencyKey = idempotencyKey; + this.status = status; + this.submittedAt = submittedAt; + this.completedAt = completedAt; + this.submittedItems = submittedItems; + this.processedItems = processedItems; + this.excludedItems = excludedItems; + this.results = results; + this.exclusions = exclusions; + } + + public PayrollBatchResults( + String uuid, + String idempotencyKey, + PayrollBatchResultsStatus status, + OffsetDateTime submittedAt) { + this(uuid, idempotencyKey, status, + submittedAt, JsonNullable.undefined(), JsonNullable.undefined(), + Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty()); + } + + /** + * The unique identifier of the payroll cancellation batch. + */ + @JsonIgnore + public String uuid() { + return uuid; + } + + /** + * The idempotency key provided when creating the batch. + */ + @JsonIgnore + public String idempotencyKey() { + return idempotencyKey; + } + + /** + * The lifecycle status of the batch request itself. Terminal values are `completed` (processing + * finished — inspect `results` and `exclusions` for per-payroll outcomes) and `failed` (the batch + * crashed at the system level; can be retried). This is distinct from the per-payroll `status` + * returned inside `results[]`. + * + *

    A `completed` batch does not imply every payroll was cancelled. + */ + @JsonIgnore + public PayrollBatchResultsStatus status() { + return status; + } + + /** + * The timestamp when the batch was submitted. + */ + @JsonIgnore + public OffsetDateTime submittedAt() { + return submittedAt; + } + + /** + * The timestamp when the batch processing completed. + */ + @JsonIgnore + public JsonNullable completedAt() { + return completedAt; + } + + /** + * The number of payrolls submitted in the batch. + */ + @JsonIgnore + public JsonNullable submittedItems() { + return submittedItems; + } + + /** + * The number of payrolls processed (cancelled or attempted). Only present once the batch reaches a + * terminal status. + */ + @JsonIgnore + public Optional processedItems() { + return processedItems; + } + + /** + * The number of payrolls excluded from processing. Only present once the batch reaches a terminal + * status. + */ + @JsonIgnore + public Optional excludedItems() { + return excludedItems; + } + + /** + * Per-payroll cancellation results. Only present once the batch reaches a terminal status. One entry + * per authorized payroll. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> results() { + return (Optional>) results; + } + + /** + * Payrolls that could not be processed, determined at submission time. Only present once the batch + * reaches a terminal status. Every UUID submitted in the POST batch appears in exactly one of + * `results` or `exclusions`. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> exclusions() { + return (Optional>) exclusions; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * The unique identifier of the payroll cancellation batch. + */ + public PayrollBatchResults withUuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + /** + * The idempotency key provided when creating the batch. + */ + public PayrollBatchResults withIdempotencyKey(String idempotencyKey) { + Utils.checkNotNull(idempotencyKey, "idempotencyKey"); + this.idempotencyKey = idempotencyKey; + return this; + } + + /** + * The lifecycle status of the batch request itself. Terminal values are `completed` (processing + * finished — inspect `results` and `exclusions` for per-payroll outcomes) and `failed` (the batch + * crashed at the system level; can be retried). This is distinct from the per-payroll `status` + * returned inside `results[]`. + * + *

    A `completed` batch does not imply every payroll was cancelled. + */ + public PayrollBatchResults withStatus(PayrollBatchResultsStatus status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + /** + * The timestamp when the batch was submitted. + */ + public PayrollBatchResults withSubmittedAt(OffsetDateTime submittedAt) { + Utils.checkNotNull(submittedAt, "submittedAt"); + this.submittedAt = submittedAt; + return this; + } + + /** + * The timestamp when the batch processing completed. + */ + public PayrollBatchResults withCompletedAt(OffsetDateTime completedAt) { + Utils.checkNotNull(completedAt, "completedAt"); + this.completedAt = JsonNullable.of(completedAt); + return this; + } + + /** + * The timestamp when the batch processing completed. + */ + public PayrollBatchResults withCompletedAt(JsonNullable completedAt) { + Utils.checkNotNull(completedAt, "completedAt"); + this.completedAt = completedAt; + return this; + } + + /** + * The number of payrolls submitted in the batch. + */ + public PayrollBatchResults withSubmittedItems(long submittedItems) { + Utils.checkNotNull(submittedItems, "submittedItems"); + this.submittedItems = JsonNullable.of(submittedItems); + return this; + } + + /** + * The number of payrolls submitted in the batch. + */ + public PayrollBatchResults withSubmittedItems(JsonNullable submittedItems) { + Utils.checkNotNull(submittedItems, "submittedItems"); + this.submittedItems = submittedItems; + return this; + } + + /** + * The number of payrolls processed (cancelled or attempted). Only present once the batch reaches a + * terminal status. + */ + public PayrollBatchResults withProcessedItems(long processedItems) { + Utils.checkNotNull(processedItems, "processedItems"); + this.processedItems = Optional.ofNullable(processedItems); + return this; + } + + + /** + * The number of payrolls processed (cancelled or attempted). Only present once the batch reaches a + * terminal status. + */ + public PayrollBatchResults withProcessedItems(Optional processedItems) { + Utils.checkNotNull(processedItems, "processedItems"); + this.processedItems = processedItems; + return this; + } + + /** + * The number of payrolls excluded from processing. Only present once the batch reaches a terminal + * status. + */ + public PayrollBatchResults withExcludedItems(long excludedItems) { + Utils.checkNotNull(excludedItems, "excludedItems"); + this.excludedItems = Optional.ofNullable(excludedItems); + return this; + } + + + /** + * The number of payrolls excluded from processing. Only present once the batch reaches a terminal + * status. + */ + public PayrollBatchResults withExcludedItems(Optional excludedItems) { + Utils.checkNotNull(excludedItems, "excludedItems"); + this.excludedItems = excludedItems; + return this; + } + + /** + * Per-payroll cancellation results. Only present once the batch reaches a terminal status. One entry + * per authorized payroll. + */ + public PayrollBatchResults withResults(List results) { + Utils.checkNotNull(results, "results"); + this.results = Optional.ofNullable(results); + return this; + } + + + /** + * Per-payroll cancellation results. Only present once the batch reaches a terminal status. One entry + * per authorized payroll. + */ + public PayrollBatchResults withResults(Optional> results) { + Utils.checkNotNull(results, "results"); + this.results = results; + return this; + } + + /** + * Payrolls that could not be processed, determined at submission time. Only present once the batch + * reaches a terminal status. Every UUID submitted in the POST batch appears in exactly one of + * `results` or `exclusions`. + */ + public PayrollBatchResults withExclusions(List exclusions) { + Utils.checkNotNull(exclusions, "exclusions"); + this.exclusions = Optional.ofNullable(exclusions); + return this; + } + + + /** + * Payrolls that could not be processed, determined at submission time. Only present once the batch + * reaches a terminal status. Every UUID submitted in the POST batch appears in exactly one of + * `results` or `exclusions`. + */ + public PayrollBatchResults withExclusions(Optional> exclusions) { + Utils.checkNotNull(exclusions, "exclusions"); + this.exclusions = exclusions; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PayrollBatchResults other = (PayrollBatchResults) o; + return + Utils.enhancedDeepEquals(this.uuid, other.uuid) && + Utils.enhancedDeepEquals(this.idempotencyKey, other.idempotencyKey) && + Utils.enhancedDeepEquals(this.status, other.status) && + Utils.enhancedDeepEquals(this.submittedAt, other.submittedAt) && + Utils.enhancedDeepEquals(this.completedAt, other.completedAt) && + Utils.enhancedDeepEquals(this.submittedItems, other.submittedItems) && + Utils.enhancedDeepEquals(this.processedItems, other.processedItems) && + Utils.enhancedDeepEquals(this.excludedItems, other.excludedItems) && + Utils.enhancedDeepEquals(this.results, other.results) && + Utils.enhancedDeepEquals(this.exclusions, other.exclusions); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + uuid, idempotencyKey, status, + submittedAt, completedAt, submittedItems, + processedItems, excludedItems, results, + exclusions); + } + + @Override + public String toString() { + return Utils.toString(PayrollBatchResults.class, + "uuid", uuid, + "idempotencyKey", idempotencyKey, + "status", status, + "submittedAt", submittedAt, + "completedAt", completedAt, + "submittedItems", submittedItems, + "processedItems", processedItems, + "excludedItems", excludedItems, + "results", results, + "exclusions", exclusions); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String uuid; + + private String idempotencyKey; + + private PayrollBatchResultsStatus status; + + private OffsetDateTime submittedAt; + + private JsonNullable completedAt = JsonNullable.undefined(); + + private JsonNullable submittedItems = JsonNullable.undefined(); + + private Optional processedItems = Optional.empty(); + + private Optional excludedItems = Optional.empty(); + + private Optional> results = Optional.empty(); + + private Optional> exclusions = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * The unique identifier of the payroll cancellation batch. + */ + public Builder uuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + + /** + * The idempotency key provided when creating the batch. + */ + public Builder idempotencyKey(String idempotencyKey) { + Utils.checkNotNull(idempotencyKey, "idempotencyKey"); + this.idempotencyKey = idempotencyKey; + return this; + } + + + /** + * The lifecycle status of the batch request itself. Terminal values are `completed` (processing + * finished — inspect `results` and `exclusions` for per-payroll outcomes) and `failed` (the batch + * crashed at the system level; can be retried). This is distinct from the per-payroll `status` + * returned inside `results[]`. + * + *

    A `completed` batch does not imply every payroll was cancelled. + */ + public Builder status(PayrollBatchResultsStatus status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + + /** + * The timestamp when the batch was submitted. + */ + public Builder submittedAt(OffsetDateTime submittedAt) { + Utils.checkNotNull(submittedAt, "submittedAt"); + this.submittedAt = submittedAt; + return this; + } + + + /** + * The timestamp when the batch processing completed. + */ + public Builder completedAt(OffsetDateTime completedAt) { + Utils.checkNotNull(completedAt, "completedAt"); + this.completedAt = JsonNullable.of(completedAt); + return this; + } + + /** + * The timestamp when the batch processing completed. + */ + public Builder completedAt(JsonNullable completedAt) { + Utils.checkNotNull(completedAt, "completedAt"); + this.completedAt = completedAt; + return this; + } + + + /** + * The number of payrolls submitted in the batch. + */ + public Builder submittedItems(long submittedItems) { + Utils.checkNotNull(submittedItems, "submittedItems"); + this.submittedItems = JsonNullable.of(submittedItems); + return this; + } + + /** + * The number of payrolls submitted in the batch. + */ + public Builder submittedItems(JsonNullable submittedItems) { + Utils.checkNotNull(submittedItems, "submittedItems"); + this.submittedItems = submittedItems; + return this; + } + + + /** + * The number of payrolls processed (cancelled or attempted). Only present once the batch reaches a + * terminal status. + */ + public Builder processedItems(long processedItems) { + Utils.checkNotNull(processedItems, "processedItems"); + this.processedItems = Optional.ofNullable(processedItems); + return this; + } + + /** + * The number of payrolls processed (cancelled or attempted). Only present once the batch reaches a + * terminal status. + */ + public Builder processedItems(Optional processedItems) { + Utils.checkNotNull(processedItems, "processedItems"); + this.processedItems = processedItems; + return this; + } + + + /** + * The number of payrolls excluded from processing. Only present once the batch reaches a terminal + * status. + */ + public Builder excludedItems(long excludedItems) { + Utils.checkNotNull(excludedItems, "excludedItems"); + this.excludedItems = Optional.ofNullable(excludedItems); + return this; + } + + /** + * The number of payrolls excluded from processing. Only present once the batch reaches a terminal + * status. + */ + public Builder excludedItems(Optional excludedItems) { + Utils.checkNotNull(excludedItems, "excludedItems"); + this.excludedItems = excludedItems; + return this; + } + + + /** + * Per-payroll cancellation results. Only present once the batch reaches a terminal status. One entry + * per authorized payroll. + */ + public Builder results(List results) { + Utils.checkNotNull(results, "results"); + this.results = Optional.ofNullable(results); + return this; + } + + /** + * Per-payroll cancellation results. Only present once the batch reaches a terminal status. One entry + * per authorized payroll. + */ + public Builder results(Optional> results) { + Utils.checkNotNull(results, "results"); + this.results = results; + return this; + } + + + /** + * Payrolls that could not be processed, determined at submission time. Only present once the batch + * reaches a terminal status. Every UUID submitted in the POST batch appears in exactly one of + * `results` or `exclusions`. + */ + public Builder exclusions(List exclusions) { + Utils.checkNotNull(exclusions, "exclusions"); + this.exclusions = Optional.ofNullable(exclusions); + return this; + } + + /** + * Payrolls that could not be processed, determined at submission time. Only present once the batch + * reaches a terminal status. Every UUID submitted in the POST batch appears in exactly one of + * `results` or `exclusions`. + */ + public Builder exclusions(Optional> exclusions) { + Utils.checkNotNull(exclusions, "exclusions"); + this.exclusions = exclusions; + return this; + } + + public PayrollBatchResults build() { + + return new PayrollBatchResults( + uuid, idempotencyKey, status, + submittedAt, completedAt, submittedItems, + processedItems, excludedItems, results, + exclusions); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollBatchResultsCategory.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollBatchResultsCategory.java new file mode 100644 index 000000000..74e1ca157 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollBatchResultsCategory.java @@ -0,0 +1,44 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollBatchResultsCategory + * + *

    Machine-readable category for why the payroll was excluded. + * - `not_found`: the payroll does not exist, or is not associated with a company the partner is mapped + * to + * - `duplicate_operation`: the same payroll UUID appeared more than once in the request; only the + * first occurrence is processed + */ +public enum PayrollBatchResultsCategory { + NOT_FOUND("not_found"), + DUPLICATE_OPERATION("duplicate_operation"); + + @JsonValue + private final String value; + + PayrollBatchResultsCategory(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollBatchResultsCategory o: PayrollBatchResultsCategory.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollBatchResultsEntityType.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollBatchResultsEntityType.java new file mode 100644 index 000000000..036c72b86 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollBatchResultsEntityType.java @@ -0,0 +1,39 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollBatchResultsEntityType + * + *

    The type of entity this exclusion represents. + */ +public enum PayrollBatchResultsEntityType { + PAYROLL("payroll"); + + @JsonValue + private final String value; + + PayrollBatchResultsEntityType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollBatchResultsEntityType o: PayrollBatchResultsEntityType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollBatchResultsErrors.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollBatchResultsErrors.java new file mode 100644 index 000000000..80f8f84e8 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollBatchResultsErrors.java @@ -0,0 +1,262 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class PayrollBatchResultsErrors { + /** + * The key identifying the error source. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("error_key") + private Optional errorKey; + + /** + * Machine-readable reason the cancellation failed. + * - `not_cancellable`: the payroll is past the point where it can be cancelled + * - `internal_error`: an unexpected error occurred; the request can be retried + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("category") + private Optional category; + + /** + * Human-readable explanation of the failure. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("message") + private Optional message; + + @JsonCreator + public PayrollBatchResultsErrors( + @JsonProperty("error_key") Optional errorKey, + @JsonProperty("category") Optional category, + @JsonProperty("message") Optional message) { + Utils.checkNotNull(errorKey, "errorKey"); + Utils.checkNotNull(category, "category"); + Utils.checkNotNull(message, "message"); + this.errorKey = errorKey; + this.category = category; + this.message = message; + } + + public PayrollBatchResultsErrors() { + this(Optional.empty(), Optional.empty(), Optional.empty()); + } + + /** + * The key identifying the error source. + */ + @JsonIgnore + public Optional errorKey() { + return errorKey; + } + + /** + * Machine-readable reason the cancellation failed. + * - `not_cancellable`: the payroll is past the point where it can be cancelled + * - `internal_error`: an unexpected error occurred; the request can be retried + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional category() { + return (Optional) category; + } + + /** + * Human-readable explanation of the failure. + */ + @JsonIgnore + public Optional message() { + return message; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * The key identifying the error source. + */ + public PayrollBatchResultsErrors withErrorKey(String errorKey) { + Utils.checkNotNull(errorKey, "errorKey"); + this.errorKey = Optional.ofNullable(errorKey); + return this; + } + + + /** + * The key identifying the error source. + */ + public PayrollBatchResultsErrors withErrorKey(Optional errorKey) { + Utils.checkNotNull(errorKey, "errorKey"); + this.errorKey = errorKey; + return this; + } + + /** + * Machine-readable reason the cancellation failed. + * - `not_cancellable`: the payroll is past the point where it can be cancelled + * - `internal_error`: an unexpected error occurred; the request can be retried + */ + public PayrollBatchResultsErrors withCategory(PayrollBatchResultsResultsCategory category) { + Utils.checkNotNull(category, "category"); + this.category = Optional.ofNullable(category); + return this; + } + + + /** + * Machine-readable reason the cancellation failed. + * - `not_cancellable`: the payroll is past the point where it can be cancelled + * - `internal_error`: an unexpected error occurred; the request can be retried + */ + public PayrollBatchResultsErrors withCategory(Optional category) { + Utils.checkNotNull(category, "category"); + this.category = category; + return this; + } + + /** + * Human-readable explanation of the failure. + */ + public PayrollBatchResultsErrors withMessage(String message) { + Utils.checkNotNull(message, "message"); + this.message = Optional.ofNullable(message); + return this; + } + + + /** + * Human-readable explanation of the failure. + */ + public PayrollBatchResultsErrors withMessage(Optional message) { + Utils.checkNotNull(message, "message"); + this.message = message; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PayrollBatchResultsErrors other = (PayrollBatchResultsErrors) o; + return + Utils.enhancedDeepEquals(this.errorKey, other.errorKey) && + Utils.enhancedDeepEquals(this.category, other.category) && + Utils.enhancedDeepEquals(this.message, other.message); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + errorKey, category, message); + } + + @Override + public String toString() { + return Utils.toString(PayrollBatchResultsErrors.class, + "errorKey", errorKey, + "category", category, + "message", message); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional errorKey = Optional.empty(); + + private Optional category = Optional.empty(); + + private Optional message = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * The key identifying the error source. + */ + public Builder errorKey(String errorKey) { + Utils.checkNotNull(errorKey, "errorKey"); + this.errorKey = Optional.ofNullable(errorKey); + return this; + } + + /** + * The key identifying the error source. + */ + public Builder errorKey(Optional errorKey) { + Utils.checkNotNull(errorKey, "errorKey"); + this.errorKey = errorKey; + return this; + } + + + /** + * Machine-readable reason the cancellation failed. + * - `not_cancellable`: the payroll is past the point where it can be cancelled + * - `internal_error`: an unexpected error occurred; the request can be retried + */ + public Builder category(PayrollBatchResultsResultsCategory category) { + Utils.checkNotNull(category, "category"); + this.category = Optional.ofNullable(category); + return this; + } + + /** + * Machine-readable reason the cancellation failed. + * - `not_cancellable`: the payroll is past the point where it can be cancelled + * - `internal_error`: an unexpected error occurred; the request can be retried + */ + public Builder category(Optional category) { + Utils.checkNotNull(category, "category"); + this.category = category; + return this; + } + + + /** + * Human-readable explanation of the failure. + */ + public Builder message(String message) { + Utils.checkNotNull(message, "message"); + this.message = Optional.ofNullable(message); + return this; + } + + /** + * Human-readable explanation of the failure. + */ + public Builder message(Optional message) { + Utils.checkNotNull(message, "message"); + this.message = message; + return this; + } + + public PayrollBatchResultsErrors build() { + + return new PayrollBatchResultsErrors( + errorKey, category, message); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollBatchResultsExclusionsStatus.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollBatchResultsExclusionsStatus.java new file mode 100644 index 000000000..deb957d6c --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollBatchResultsExclusionsStatus.java @@ -0,0 +1,39 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollBatchResultsExclusionsStatus + * + *

    Always `failed` for an excluded payroll. + */ +public enum PayrollBatchResultsExclusionsStatus { + FAILED("failed"); + + @JsonValue + private final String value; + + PayrollBatchResultsExclusionsStatus(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollBatchResultsExclusionsStatus o: PayrollBatchResultsExclusionsStatus.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollBatchResultsResultsCategory.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollBatchResultsResultsCategory.java new file mode 100644 index 000000000..4a88569f7 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollBatchResultsResultsCategory.java @@ -0,0 +1,42 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollBatchResultsResultsCategory + * + *

    Machine-readable reason the cancellation failed. + * - `not_cancellable`: the payroll is past the point where it can be cancelled + * - `internal_error`: an unexpected error occurred; the request can be retried + */ +public enum PayrollBatchResultsResultsCategory { + NOT_CANCELLABLE("not_cancellable"), + INTERNAL_ERROR("internal_error"); + + @JsonValue + private final String value; + + PayrollBatchResultsResultsCategory(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollBatchResultsResultsCategory o: PayrollBatchResultsResultsCategory.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollBatchResultsResultsStatus.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollBatchResultsResultsStatus.java new file mode 100644 index 000000000..abf975fc2 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollBatchResultsResultsStatus.java @@ -0,0 +1,43 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollBatchResultsResultsStatus + * + *

    The outcome of cancelling this payroll. A cancel is atomic — there is no per-payroll + * `partial_success`. + * - `success`: the payroll was cancelled, or required no action (already cancelled / never run) + * - `failed`: the payroll could not be cancelled; see `errors` + */ +public enum PayrollBatchResultsResultsStatus { + SUCCESS("success"), + FAILED("failed"); + + @JsonValue + private final String value; + + PayrollBatchResultsResultsStatus(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollBatchResultsResultsStatus o: PayrollBatchResultsResultsStatus.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollBatchResultsStatus.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollBatchResultsStatus.java new file mode 100644 index 000000000..0fccd6e25 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollBatchResultsStatus.java @@ -0,0 +1,47 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollBatchResultsStatus + * + *

    The lifecycle status of the batch request itself. Terminal values are `completed` (processing + * finished — inspect `results` and `exclusions` for per-payroll outcomes) and `failed` (the batch + * crashed at the system level; can be retried). This is distinct from the per-payroll `status` + * returned inside `results[]`. + * + *

    A `completed` batch does not imply every payroll was cancelled. + */ +public enum PayrollBatchResultsStatus { + PENDING("pending"), + PROCESSING("processing"), + COMPLETED("completed"), + FAILED("failed"); + + @JsonValue + private final String value; + + PayrollBatchResultsStatus(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollBatchResultsStatus o: PayrollBatchResultsStatus.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollBatchStatus.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollBatchStatus.java new file mode 100644 index 000000000..a66d6342e --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollBatchStatus.java @@ -0,0 +1,47 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollBatchStatus + * + *

    The lifecycle status of the batch request itself. Terminal values are `completed` (processing + * finished — inspect `results` and `exclusions` for per-payroll outcomes) and `failed` (the batch + * crashed at the system level; can be retried). This is distinct from the per-payroll `status` + * returned inside `results[]`. + * + *

    A `completed` batch does not imply every payroll was cancelled. + */ +public enum PayrollBatchStatus { + PENDING("pending"), + PROCESSING("processing"), + COMPLETED("completed"), + FAILED("failed"); + + @JsonValue + private final String value; + + PayrollBatchStatus(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollBatchStatus o: PayrollBatchStatus.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollDigest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollDigest.java index 1be82c093..129bc8d74 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollDigest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollDigest.java @@ -32,7 +32,7 @@ public class PayrollDigest { * The action being performed on the batch. */ @JsonProperty("batch_action") - private BatchAction batchAction; + private PayrollDigestBatchAction batchAction; /** * The lifecycle status of the batch request itself. Terminal values are `completed` (processing @@ -47,7 +47,7 @@ public class PayrollDigest { public PayrollDigest( @JsonProperty("uuid") String uuid, @JsonProperty("idempotency_key") String idempotencyKey, - @JsonProperty("batch_action") BatchAction batchAction, + @JsonProperty("batch_action") PayrollDigestBatchAction batchAction, @JsonProperty("status") PayrollDigestStatus status) { Utils.checkNotNull(uuid, "uuid"); Utils.checkNotNull(idempotencyKey, "idempotencyKey"); @@ -79,7 +79,7 @@ public String idempotencyKey() { * The action being performed on the batch. */ @JsonIgnore - public BatchAction batchAction() { + public PayrollDigestBatchAction batchAction() { return batchAction; } @@ -120,7 +120,7 @@ public PayrollDigest withIdempotencyKey(String idempotencyKey) { /** * The action being performed on the batch. */ - public PayrollDigest withBatchAction(BatchAction batchAction) { + public PayrollDigest withBatchAction(PayrollDigestBatchAction batchAction) { Utils.checkNotNull(batchAction, "batchAction"); this.batchAction = batchAction; return this; @@ -177,7 +177,7 @@ public final static class Builder { private String idempotencyKey; - private BatchAction batchAction; + private PayrollDigestBatchAction batchAction; private PayrollDigestStatus status; @@ -209,7 +209,7 @@ public Builder idempotencyKey(String idempotencyKey) { /** * The action being performed on the batch. */ - public Builder batchAction(BatchAction batchAction) { + public Builder batchAction(PayrollDigestBatchAction batchAction) { Utils.checkNotNull(batchAction, "batchAction"); this.batchAction = batchAction; return this; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollDigestBatchAction.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollDigestBatchAction.java new file mode 100644 index 000000000..84e419027 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollDigestBatchAction.java @@ -0,0 +1,39 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollDigestBatchAction + * + *

    The action being performed on the batch. + */ +public enum PayrollDigestBatchAction { + CREATE("create"); + + @JsonValue + private final String value; + + PayrollDigestBatchAction(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollDigestBatchAction o: PayrollDigestBatchAction.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollDigestResultsBlockers.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollDigestResultsBlockers.java new file mode 100644 index 000000000..2a4eb8fdd --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollDigestResultsBlockers.java @@ -0,0 +1,188 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.util.Optional; + + +public class PayrollDigestResultsBlockers { + /** + * A machine-readable blocker key (e.g. `missing_bank_account`). + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("type") + private Optional type; + + /** + * Human-readable description of the blocker. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("description") + private Optional description; + + @JsonCreator + public PayrollDigestResultsBlockers( + @JsonProperty("type") Optional type, + @JsonProperty("description") Optional description) { + Utils.checkNotNull(type, "type"); + Utils.checkNotNull(description, "description"); + this.type = type; + this.description = description; + } + + public PayrollDigestResultsBlockers() { + this(Optional.empty(), Optional.empty()); + } + + /** + * A machine-readable blocker key (e.g. `missing_bank_account`). + */ + @JsonIgnore + public Optional type() { + return type; + } + + /** + * Human-readable description of the blocker. + */ + @JsonIgnore + public Optional description() { + return description; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * A machine-readable blocker key (e.g. `missing_bank_account`). + */ + public PayrollDigestResultsBlockers withType(String type) { + Utils.checkNotNull(type, "type"); + this.type = Optional.ofNullable(type); + return this; + } + + + /** + * A machine-readable blocker key (e.g. `missing_bank_account`). + */ + public PayrollDigestResultsBlockers withType(Optional type) { + Utils.checkNotNull(type, "type"); + this.type = type; + return this; + } + + /** + * Human-readable description of the blocker. + */ + public PayrollDigestResultsBlockers withDescription(String description) { + Utils.checkNotNull(description, "description"); + this.description = Optional.ofNullable(description); + return this; + } + + + /** + * Human-readable description of the blocker. + */ + public PayrollDigestResultsBlockers withDescription(Optional description) { + Utils.checkNotNull(description, "description"); + this.description = description; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PayrollDigestResultsBlockers other = (PayrollDigestResultsBlockers) o; + return + Utils.enhancedDeepEquals(this.type, other.type) && + Utils.enhancedDeepEquals(this.description, other.description); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + type, description); + } + + @Override + public String toString() { + return Utils.toString(PayrollDigestResultsBlockers.class, + "type", type, + "description", description); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional type = Optional.empty(); + + private Optional description = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * A machine-readable blocker key (e.g. `missing_bank_account`). + */ + public Builder type(String type) { + Utils.checkNotNull(type, "type"); + this.type = Optional.ofNullable(type); + return this; + } + + /** + * A machine-readable blocker key (e.g. `missing_bank_account`). + */ + public Builder type(Optional type) { + Utils.checkNotNull(type, "type"); + this.type = type; + return this; + } + + + /** + * Human-readable description of the blocker. + */ + public Builder description(String description) { + Utils.checkNotNull(description, "description"); + this.description = Optional.ofNullable(description); + return this; + } + + /** + * Human-readable description of the blocker. + */ + public Builder description(Optional description) { + Utils.checkNotNull(description, "description"); + this.description = description; + return this; + } + + public PayrollDigestResultsBlockers build() { + + return new PayrollDigestResultsBlockers( + type, description); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollDigestResultsResults.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollDigestResultsResults.java index a8c412d76..156db7952 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollDigestResultsResults.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollDigestResultsResults.java @@ -60,7 +60,7 @@ public class PayrollDigestResultsResults { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("blockers") - private Optional> blockers; + private Optional> blockers; /** * Payrolls for this company within the digest date window (7 days past, 30–60 days future). May be @@ -77,7 +77,7 @@ public PayrollDigestResultsResults( @JsonProperty("uuid") Optional uuid, @JsonProperty("name") Optional name, @JsonProperty("status") Optional status, - @JsonProperty("blockers") Optional> blockers, + @JsonProperty("blockers") Optional> blockers, @JsonProperty("payrolls") Optional> payrolls) { Utils.checkNotNull(idx, "idx"); Utils.checkNotNull(entityType, "entityType"); @@ -150,8 +150,8 @@ public Optional status() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional> blockers() { - return (Optional>) blockers; + public Optional> blockers() { + return (Optional>) blockers; } /** @@ -269,7 +269,7 @@ public PayrollDigestResultsResults withStatus(Optional blockers) { + public PayrollDigestResultsResults withBlockers(List blockers) { Utils.checkNotNull(blockers, "blockers"); this.blockers = Optional.ofNullable(blockers); return this; @@ -281,7 +281,7 @@ public PayrollDigestResultsResults withBlockers(List blockers) { * `payrolls` array — blockers are evaluated at the company level, not per payroll. Empty when there * are no blockers. */ - public PayrollDigestResultsResults withBlockers(Optional> blockers) { + public PayrollDigestResultsResults withBlockers(Optional> blockers) { Utils.checkNotNull(blockers, "blockers"); this.blockers = blockers; return this; @@ -360,7 +360,7 @@ public final static class Builder { private Optional status = Optional.empty(); - private Optional> blockers = Optional.empty(); + private Optional> blockers = Optional.empty(); private Optional> payrolls = Optional.empty(); @@ -469,7 +469,7 @@ public Builder status(Optional stat * `payrolls` array — blockers are evaluated at the company level, not per payroll. Empty when there * are no blockers. */ - public Builder blockers(List blockers) { + public Builder blockers(List blockers) { Utils.checkNotNull(blockers, "blockers"); this.blockers = Optional.ofNullable(blockers); return this; @@ -480,7 +480,7 @@ public Builder blockers(List blockers) { * `payrolls` array — blockers are evaluated at the company level, not per payroll. Empty when there * are no blockers. */ - public Builder blockers(Optional> blockers) { + public Builder blockers(Optional> blockers) { Utils.checkNotNull(blockers, "blockers"); this.blockers = blockers; return this; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollEmployeeCompensationsType.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollEmployeeCompensationsType.java index b47c6816b..bdf7ab8f1 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollEmployeeCompensationsType.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollEmployeeCompensationsType.java @@ -105,7 +105,7 @@ public class PayrollEmployeeCompensationsType { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("fixed_compensations") - private Optional> fixedCompensations; + private Optional> fixedCompensations; /** * An array of hourly compensations for the employee. Hourly compensations include regular, overtime, @@ -116,7 +116,7 @@ public class PayrollEmployeeCompensationsType { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("hourly_compensations") - private Optional> hourlyCompensations; + private Optional> hourlyCompensations; /** * An array of all paid time off the employee is eligible for this pay period. @@ -130,7 +130,16 @@ public class PayrollEmployeeCompensationsType { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("reimbursements") - private Optional> reimbursements; + private Optional> reimbursements; + + /** + * The one-time custom withholding overrides applied to this payroll for this employee. + * `federal` is null when no federal one-time override is set; `state` is an empty + * array when no state one-time overrides are set. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("custom_withholdings") + private Optional customWithholdings; /** * The current version of this employee compensation. This field is only available for prepared @@ -161,10 +170,11 @@ public PayrollEmployeeCompensationsType( @JsonProperty("check_amount") JsonNullable checkAmount, @JsonProperty("payment_method") JsonNullable paymentMethod, @JsonProperty("memo") JsonNullable memo, - @JsonProperty("fixed_compensations") Optional> fixedCompensations, - @JsonProperty("hourly_compensations") Optional> hourlyCompensations, + @JsonProperty("fixed_compensations") Optional> fixedCompensations, + @JsonProperty("hourly_compensations") Optional> hourlyCompensations, @JsonProperty("paid_time_off") Optional> paidTimeOff, - @JsonProperty("reimbursements") Optional> reimbursements, + @JsonProperty("reimbursements") Optional> reimbursements, + @JsonProperty("custom_withholdings") Optional customWithholdings, @JsonProperty("version") Optional version, @JsonProperty("deductions") Optional> deductions) { Utils.checkNotNull(employeeUuid, "employeeUuid"); @@ -181,6 +191,7 @@ public PayrollEmployeeCompensationsType( Utils.checkNotNull(hourlyCompensations, "hourlyCompensations"); Utils.checkNotNull(paidTimeOff, "paidTimeOff"); Utils.checkNotNull(reimbursements, "reimbursements"); + Utils.checkNotNull(customWithholdings, "customWithholdings"); Utils.checkNotNull(version, "version"); Utils.checkNotNull(deductions, "deductions"); this.employeeUuid = employeeUuid; @@ -197,6 +208,7 @@ public PayrollEmployeeCompensationsType( this.hourlyCompensations = hourlyCompensations; this.paidTimeOff = paidTimeOff; this.reimbursements = reimbursements; + this.customWithholdings = customWithholdings; this.version = version; this.deductions = deductions; } @@ -207,7 +219,7 @@ public PayrollEmployeeCompensationsType() { JsonNullable.undefined(), JsonNullable.undefined(), JsonNullable.undefined(), JsonNullable.undefined(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), - Optional.empty()); + Optional.empty(), Optional.empty()); } /** @@ -305,8 +317,8 @@ public JsonNullable memo() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional> fixedCompensations() { - return (Optional>) fixedCompensations; + public Optional> fixedCompensations() { + return (Optional>) fixedCompensations; } /** @@ -318,8 +330,8 @@ public Optional> fixedC */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional> hourlyCompensations() { - return (Optional>) hourlyCompensations; + public Optional> hourlyCompensations() { + return (Optional>) hourlyCompensations; } /** @@ -336,8 +348,19 @@ public Optional> paidTimeOff() */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional> reimbursements() { - return (Optional>) reimbursements; + public Optional> reimbursements() { + return (Optional>) reimbursements; + } + + /** + * The one-time custom withholding overrides applied to this payroll for this employee. + * `federal` is null when no federal one-time override is set; `state` is an empty + * array when no state one-time overrides are set. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional customWithholdings() { + return (Optional) customWithholdings; } /** @@ -565,7 +588,7 @@ public PayrollEmployeeCompensationsType withMemo(JsonNullable memo) { * *

    For an unprocessed payroll, all active fixed compensations are returned. */ - public PayrollEmployeeCompensationsType withFixedCompensations(List fixedCompensations) { + public PayrollEmployeeCompensationsType withFixedCompensations(List fixedCompensations) { Utils.checkNotNull(fixedCompensations, "fixedCompensations"); this.fixedCompensations = Optional.ofNullable(fixedCompensations); return this; @@ -579,7 +602,7 @@ public PayrollEmployeeCompensationsType withFixedCompensations(ListFor an unprocessed payroll, all active fixed compensations are returned. */ - public PayrollEmployeeCompensationsType withFixedCompensations(Optional> fixedCompensations) { + public PayrollEmployeeCompensationsType withFixedCompensations(Optional> fixedCompensations) { Utils.checkNotNull(fixedCompensations, "fixedCompensations"); this.fixedCompensations = fixedCompensations; return this; @@ -592,7 +615,7 @@ public PayrollEmployeeCompensationsType withFixedCompensations(OptionalFor an unprocessed payroll, all active hourly compensations are returned. */ - public PayrollEmployeeCompensationsType withHourlyCompensations(List hourlyCompensations) { + public PayrollEmployeeCompensationsType withHourlyCompensations(List hourlyCompensations) { Utils.checkNotNull(hourlyCompensations, "hourlyCompensations"); this.hourlyCompensations = Optional.ofNullable(hourlyCompensations); return this; @@ -606,7 +629,7 @@ public PayrollEmployeeCompensationsType withHourlyCompensations(ListFor an unprocessed payroll, all active hourly compensations are returned. */ - public PayrollEmployeeCompensationsType withHourlyCompensations(Optional> hourlyCompensations) { + public PayrollEmployeeCompensationsType withHourlyCompensations(Optional> hourlyCompensations) { Utils.checkNotNull(hourlyCompensations, "hourlyCompensations"); this.hourlyCompensations = hourlyCompensations; return this; @@ -634,7 +657,7 @@ public PayrollEmployeeCompensationsType withPaidTimeOff(Optional reimbursements) { + public PayrollEmployeeCompensationsType withReimbursements(List reimbursements) { Utils.checkNotNull(reimbursements, "reimbursements"); this.reimbursements = Optional.ofNullable(reimbursements); return this; @@ -644,12 +667,35 @@ public PayrollEmployeeCompensationsType withReimbursements(List> reimbursements) { + public PayrollEmployeeCompensationsType withReimbursements(Optional> reimbursements) { Utils.checkNotNull(reimbursements, "reimbursements"); this.reimbursements = reimbursements; return this; } + /** + * The one-time custom withholding overrides applied to this payroll for this employee. + * `federal` is null when no federal one-time override is set; `state` is an empty + * array when no state one-time overrides are set. + */ + public PayrollEmployeeCompensationsType withCustomWithholdings(CustomWithholdings customWithholdings) { + Utils.checkNotNull(customWithholdings, "customWithholdings"); + this.customWithholdings = Optional.ofNullable(customWithholdings); + return this; + } + + + /** + * The one-time custom withholding overrides applied to this payroll for this employee. + * `federal` is null when no federal one-time override is set; `state` is an empty + * array when no state one-time overrides are set. + */ + public PayrollEmployeeCompensationsType withCustomWithholdings(Optional customWithholdings) { + Utils.checkNotNull(customWithholdings, "customWithholdings"); + this.customWithholdings = customWithholdings; + return this; + } + /** * The current version of this employee compensation. This field is only available for prepared * payrolls. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for @@ -718,6 +764,7 @@ public boolean equals(java.lang.Object o) { Utils.enhancedDeepEquals(this.hourlyCompensations, other.hourlyCompensations) && Utils.enhancedDeepEquals(this.paidTimeOff, other.paidTimeOff) && Utils.enhancedDeepEquals(this.reimbursements, other.reimbursements) && + Utils.enhancedDeepEquals(this.customWithholdings, other.customWithholdings) && Utils.enhancedDeepEquals(this.version, other.version) && Utils.enhancedDeepEquals(this.deductions, other.deductions); } @@ -729,8 +776,8 @@ public int hashCode() { preferredFirstName, lastName, grossPay, netPay, checkAmount, paymentMethod, memo, fixedCompensations, hourlyCompensations, - paidTimeOff, reimbursements, version, - deductions); + paidTimeOff, reimbursements, customWithholdings, + version, deductions); } @Override @@ -750,6 +797,7 @@ public String toString() { "hourlyCompensations", hourlyCompensations, "paidTimeOff", paidTimeOff, "reimbursements", reimbursements, + "customWithholdings", customWithholdings, "version", version, "deductions", deductions); } @@ -777,13 +825,15 @@ public final static class Builder { private JsonNullable memo = JsonNullable.undefined(); - private Optional> fixedCompensations = Optional.empty(); + private Optional> fixedCompensations = Optional.empty(); - private Optional> hourlyCompensations = Optional.empty(); + private Optional> hourlyCompensations = Optional.empty(); private Optional> paidTimeOff = Optional.empty(); - private Optional> reimbursements = Optional.empty(); + private Optional> reimbursements = Optional.empty(); + + private Optional customWithholdings = Optional.empty(); private Optional version = Optional.empty(); @@ -1001,7 +1051,7 @@ public Builder memo(JsonNullable memo) { * *

    For an unprocessed payroll, all active fixed compensations are returned. */ - public Builder fixedCompensations(List fixedCompensations) { + public Builder fixedCompensations(List fixedCompensations) { Utils.checkNotNull(fixedCompensations, "fixedCompensations"); this.fixedCompensations = Optional.ofNullable(fixedCompensations); return this; @@ -1014,7 +1064,7 @@ public Builder fixedCompensations(ListFor an unprocessed payroll, all active fixed compensations are returned. */ - public Builder fixedCompensations(Optional> fixedCompensations) { + public Builder fixedCompensations(Optional> fixedCompensations) { Utils.checkNotNull(fixedCompensations, "fixedCompensations"); this.fixedCompensations = fixedCompensations; return this; @@ -1028,7 +1078,7 @@ public Builder fixedCompensations(OptionalFor an unprocessed payroll, all active hourly compensations are returned. */ - public Builder hourlyCompensations(List hourlyCompensations) { + public Builder hourlyCompensations(List hourlyCompensations) { Utils.checkNotNull(hourlyCompensations, "hourlyCompensations"); this.hourlyCompensations = Optional.ofNullable(hourlyCompensations); return this; @@ -1041,7 +1091,7 @@ public Builder hourlyCompensations(ListFor an unprocessed payroll, all active hourly compensations are returned. */ - public Builder hourlyCompensations(Optional> hourlyCompensations) { + public Builder hourlyCompensations(Optional> hourlyCompensations) { Utils.checkNotNull(hourlyCompensations, "hourlyCompensations"); this.hourlyCompensations = hourlyCompensations; return this; @@ -1070,7 +1120,7 @@ public Builder paidTimeOff(Optional reimbursements) { + public Builder reimbursements(List reimbursements) { Utils.checkNotNull(reimbursements, "reimbursements"); this.reimbursements = Optional.ofNullable(reimbursements); return this; @@ -1079,13 +1129,36 @@ public Builder reimbursements(List> reimbursements) { + public Builder reimbursements(Optional> reimbursements) { Utils.checkNotNull(reimbursements, "reimbursements"); this.reimbursements = reimbursements; return this; } + /** + * The one-time custom withholding overrides applied to this payroll for this employee. + * `federal` is null when no federal one-time override is set; `state` is an empty + * array when no state one-time overrides are set. + */ + public Builder customWithholdings(CustomWithholdings customWithholdings) { + Utils.checkNotNull(customWithholdings, "customWithholdings"); + this.customWithholdings = Optional.ofNullable(customWithholdings); + return this; + } + + /** + * The one-time custom withholding overrides applied to this payroll for this employee. + * `federal` is null when no federal one-time override is set; `state` is an empty + * array when no state one-time overrides are set. + */ + public Builder customWithholdings(Optional customWithholdings) { + Utils.checkNotNull(customWithholdings, "customWithholdings"); + this.customWithholdings = customWithholdings; + return this; + } + + /** * The current version of this employee compensation. This field is only available for prepared * payrolls. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for @@ -1136,8 +1209,8 @@ public PayrollEmployeeCompensationsType build() { preferredFirstName, lastName, grossPay, netPay, checkAmount, paymentMethod, memo, fixedCompensations, hourlyCompensations, - paidTimeOff, reimbursements, version, - deductions); + paidTimeOff, reimbursements, customWithholdings, + version, deductions); } } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollEmployeeCompensationsTypeAmountType.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollEmployeeCompensationsTypeAmountType.java new file mode 100644 index 000000000..796da52a4 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollEmployeeCompensationsTypeAmountType.java @@ -0,0 +1,40 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollEmployeeCompensationsTypeAmountType + * + *

    How to interpret the amount. + */ +public enum PayrollEmployeeCompensationsTypeAmountType { + FIXED("fixed"), + PERCENT("percent"); + + @JsonValue + private final String value; + + PayrollEmployeeCompensationsTypeAmountType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollEmployeeCompensationsTypeAmountType o: PayrollEmployeeCompensationsTypeAmountType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollEmployeeCompensationsTypeCustomWithholdingsAmountType.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollEmployeeCompensationsTypeCustomWithholdingsAmountType.java new file mode 100644 index 000000000..a06e4a85b --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollEmployeeCompensationsTypeCustomWithholdingsAmountType.java @@ -0,0 +1,40 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollEmployeeCompensationsTypeCustomWithholdingsAmountType + * + *

    How to interpret the amount. + */ +public enum PayrollEmployeeCompensationsTypeCustomWithholdingsAmountType { + FIXED("fixed"), + PERCENT("percent"); + + @JsonValue + private final String value; + + PayrollEmployeeCompensationsTypeCustomWithholdingsAmountType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollEmployeeCompensationsTypeCustomWithholdingsAmountType o: PayrollEmployeeCompensationsTypeCustomWithholdingsAmountType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollEmployeeCompensationsTypeOverrideType.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollEmployeeCompensationsTypeOverrideType.java new file mode 100644 index 000000000..ba846e211 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollEmployeeCompensationsTypeOverrideType.java @@ -0,0 +1,39 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollEmployeeCompensationsTypeOverrideType + * + *

    Override mode. Only `one_time` is currently exposed. + */ +public enum PayrollEmployeeCompensationsTypeOverrideType { + ONE_TIME("one_time"); + + @JsonValue + private final String value; + + PayrollEmployeeCompensationsTypeOverrideType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollEmployeeCompensationsTypeOverrideType o: PayrollEmployeeCompensationsTypeOverrideType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollReceipt.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollReceipt.java index 5feb25621..dd5903295 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollReceipt.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollReceipt.java @@ -92,7 +92,7 @@ public class PayrollReceipt { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("totals") - private Optional totals; + private Optional totals; /** * An array of totaled employer and employee taxes for the pay period. @@ -113,7 +113,7 @@ public class PayrollReceipt { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("licensee") - private Optional licensee; + private Optional licensee; @JsonCreator public PayrollReceipt( @@ -127,10 +127,10 @@ public PayrollReceipt( @JsonProperty("license_uri") Optional licenseUri, @JsonProperty("right_to_refund") Optional rightToRefund, @JsonProperty("liability_of_licensee") Optional liabilityOfLicensee, - @JsonProperty("totals") Optional totals, + @JsonProperty("totals") Optional totals, @JsonProperty("taxes") Optional> taxes, @JsonProperty("employee_compensations") Optional> employeeCompensations, - @JsonProperty("licensee") Optional licensee) { + @JsonProperty("licensee") Optional licensee) { Utils.checkNotNull(payrollUuid, "payrollUuid"); Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(nameOfSender, "nameOfSender"); @@ -252,8 +252,8 @@ public Optional liabilityOfLicensee() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional totals() { - return (Optional) totals; + public Optional totals() { + return (Optional) totals; } /** @@ -279,8 +279,8 @@ public Optional> employeeCompensations */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional licensee() { - return (Optional) licensee; + public Optional licensee() { + return (Optional) licensee; } public static Builder builder() { @@ -477,7 +477,7 @@ public PayrollReceipt withLiabilityOfLicensee(Optional liabilityOfLicens /** * The subtotals for the payroll. */ - public PayrollReceipt withTotals(Totals totals) { + public PayrollReceipt withTotals(PayrollReceiptTotals totals) { Utils.checkNotNull(totals, "totals"); this.totals = Optional.ofNullable(totals); return this; @@ -487,7 +487,7 @@ public PayrollReceipt withTotals(Totals totals) { /** * The subtotals for the payroll. */ - public PayrollReceipt withTotals(Optional totals) { + public PayrollReceipt withTotals(Optional totals) { Utils.checkNotNull(totals, "totals"); this.totals = totals; return this; @@ -534,7 +534,7 @@ public PayrollReceipt withEmployeeCompensations(Optional licensee) { + public PayrollReceipt withLicensee(Optional licensee) { Utils.checkNotNull(licensee, "licensee"); this.licensee = licensee; return this; @@ -628,13 +628,13 @@ public final static class Builder { private Optional liabilityOfLicensee = Optional.empty(); - private Optional totals = Optional.empty(); + private Optional totals = Optional.empty(); private Optional> taxes = Optional.empty(); private Optional> employeeCompensations = Optional.empty(); - private Optional licensee = Optional.empty(); + private Optional licensee = Optional.empty(); private Builder() { // force use of static builder() method @@ -830,7 +830,7 @@ public Builder liabilityOfLicensee(Optional liabilityOfLicensee) { /** * The subtotals for the payroll. */ - public Builder totals(Totals totals) { + public Builder totals(PayrollReceiptTotals totals) { Utils.checkNotNull(totals, "totals"); this.totals = Optional.ofNullable(totals); return this; @@ -839,7 +839,7 @@ public Builder totals(Totals totals) { /** * The subtotals for the payroll. */ - public Builder totals(Optional totals) { + public Builder totals(Optional totals) { Utils.checkNotNull(totals, "totals"); this.totals = totals; return this; @@ -887,7 +887,7 @@ public Builder employeeCompensations(Optional licensee) { + public Builder licensee(Optional licensee) { Utils.checkNotNull(licensee, "licensee"); this.licensee = licensee; return this; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentReceiptLicensee.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollReceiptLicensee.java similarity index 88% rename from gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentReceiptLicensee.java rename to gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollReceiptLicensee.java index 01871ee33..2ab89cac5 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorPaymentReceiptLicensee.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollReceiptLicensee.java @@ -14,11 +14,11 @@ import java.util.Optional; /** - * ContractorPaymentReceiptLicensee + * PayrollReceiptLicensee * *

    The licensed payroll processor */ -public class ContractorPaymentReceiptLicensee { +public class PayrollReceiptLicensee { /** * Always the fixed string "Gusto, Zenpayroll Inc." */ @@ -62,7 +62,7 @@ public class ContractorPaymentReceiptLicensee { private Optional phoneNumber; @JsonCreator - public ContractorPaymentReceiptLicensee( + public PayrollReceiptLicensee( @JsonProperty("name") Optional name, @JsonProperty("address") Optional address, @JsonProperty("city") Optional city, @@ -83,7 +83,7 @@ public ContractorPaymentReceiptLicensee( this.phoneNumber = phoneNumber; } - public ContractorPaymentReceiptLicensee() { + public PayrollReceiptLicensee() { this(Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty()); } @@ -144,7 +144,7 @@ public static Builder builder() { /** * Always the fixed string "Gusto, Zenpayroll Inc." */ - public ContractorPaymentReceiptLicensee withName(String name) { + public PayrollReceiptLicensee withName(String name) { Utils.checkNotNull(name, "name"); this.name = Optional.ofNullable(name); return this; @@ -154,7 +154,7 @@ public ContractorPaymentReceiptLicensee withName(String name) { /** * Always the fixed string "Gusto, Zenpayroll Inc." */ - public ContractorPaymentReceiptLicensee withName(Optional name) { + public PayrollReceiptLicensee withName(Optional name) { Utils.checkNotNull(name, "name"); this.name = name; return this; @@ -163,7 +163,7 @@ public ContractorPaymentReceiptLicensee withName(Optional name) { /** * Always the fixed string "525 20th St" */ - public ContractorPaymentReceiptLicensee withAddress(String address) { + public PayrollReceiptLicensee withAddress(String address) { Utils.checkNotNull(address, "address"); this.address = Optional.ofNullable(address); return this; @@ -173,7 +173,7 @@ public ContractorPaymentReceiptLicensee withAddress(String address) { /** * Always the fixed string "525 20th St" */ - public ContractorPaymentReceiptLicensee withAddress(Optional address) { + public PayrollReceiptLicensee withAddress(Optional address) { Utils.checkNotNull(address, "address"); this.address = address; return this; @@ -182,7 +182,7 @@ public ContractorPaymentReceiptLicensee withAddress(Optional address) { /** * Always the fixed string "San Francisco" */ - public ContractorPaymentReceiptLicensee withCity(String city) { + public PayrollReceiptLicensee withCity(String city) { Utils.checkNotNull(city, "city"); this.city = Optional.ofNullable(city); return this; @@ -192,7 +192,7 @@ public ContractorPaymentReceiptLicensee withCity(String city) { /** * Always the fixed string "San Francisco" */ - public ContractorPaymentReceiptLicensee withCity(Optional city) { + public PayrollReceiptLicensee withCity(Optional city) { Utils.checkNotNull(city, "city"); this.city = city; return this; @@ -201,7 +201,7 @@ public ContractorPaymentReceiptLicensee withCity(Optional city) { /** * Always the fixed string "CA" */ - public ContractorPaymentReceiptLicensee withState(String state) { + public PayrollReceiptLicensee withState(String state) { Utils.checkNotNull(state, "state"); this.state = Optional.ofNullable(state); return this; @@ -211,7 +211,7 @@ public ContractorPaymentReceiptLicensee withState(String state) { /** * Always the fixed string "CA" */ - public ContractorPaymentReceiptLicensee withState(Optional state) { + public PayrollReceiptLicensee withState(Optional state) { Utils.checkNotNull(state, "state"); this.state = state; return this; @@ -220,7 +220,7 @@ public ContractorPaymentReceiptLicensee withState(Optional state) { /** * Always the fixed string "94107" */ - public ContractorPaymentReceiptLicensee withPostalCode(String postalCode) { + public PayrollReceiptLicensee withPostalCode(String postalCode) { Utils.checkNotNull(postalCode, "postalCode"); this.postalCode = Optional.ofNullable(postalCode); return this; @@ -230,7 +230,7 @@ public ContractorPaymentReceiptLicensee withPostalCode(String postalCode) { /** * Always the fixed string "94107" */ - public ContractorPaymentReceiptLicensee withPostalCode(Optional postalCode) { + public PayrollReceiptLicensee withPostalCode(Optional postalCode) { Utils.checkNotNull(postalCode, "postalCode"); this.postalCode = postalCode; return this; @@ -239,7 +239,7 @@ public ContractorPaymentReceiptLicensee withPostalCode(Optional postalCo /** * Always the fixed string "4157778888" */ - public ContractorPaymentReceiptLicensee withPhoneNumber(String phoneNumber) { + public PayrollReceiptLicensee withPhoneNumber(String phoneNumber) { Utils.checkNotNull(phoneNumber, "phoneNumber"); this.phoneNumber = Optional.ofNullable(phoneNumber); return this; @@ -249,7 +249,7 @@ public ContractorPaymentReceiptLicensee withPhoneNumber(String phoneNumber) { /** * Always the fixed string "4157778888" */ - public ContractorPaymentReceiptLicensee withPhoneNumber(Optional phoneNumber) { + public PayrollReceiptLicensee withPhoneNumber(Optional phoneNumber) { Utils.checkNotNull(phoneNumber, "phoneNumber"); this.phoneNumber = phoneNumber; return this; @@ -263,7 +263,7 @@ public boolean equals(java.lang.Object o) { if (o == null || getClass() != o.getClass()) { return false; } - ContractorPaymentReceiptLicensee other = (ContractorPaymentReceiptLicensee) o; + PayrollReceiptLicensee other = (PayrollReceiptLicensee) o; return Utils.enhancedDeepEquals(this.name, other.name) && Utils.enhancedDeepEquals(this.address, other.address) && @@ -282,7 +282,7 @@ public int hashCode() { @Override public String toString() { - return Utils.toString(ContractorPaymentReceiptLicensee.class, + return Utils.toString(PayrollReceiptLicensee.class, "name", name, "address", address, "city", city, @@ -424,9 +424,9 @@ public Builder phoneNumber(Optional phoneNumber) { return this; } - public ContractorPaymentReceiptLicensee build() { + public PayrollReceiptLicensee build() { - return new ContractorPaymentReceiptLicensee( + return new PayrollReceiptLicensee( name, address, city, state, postalCode, phoneNumber); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollReceiptTotals.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollReceiptTotals.java new file mode 100644 index 000000000..fded66521 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollReceiptTotals.java @@ -0,0 +1,375 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.util.Optional; + +/** + * PayrollReceiptTotals + * + *

    The subtotals for the payroll. + */ +public class PayrollReceiptTotals { + /** + * The total company debit for the payroll. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("company_debit") + private Optional companyDebit; + + /** + * The total company net pay for the payroll. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("net_pay_debit") + private Optional netPayDebit; + + /** + * The total child support debit for the payroll. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("child_support_debit") + private Optional childSupportDebit; + + /** + * The total reimbursements for the payroll. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("reimbursement_debit") + private Optional reimbursementDebit; + + /** + * The total tax debit for the payroll. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("tax_debit") + private Optional taxDebit; + + @JsonCreator + public PayrollReceiptTotals( + @JsonProperty("company_debit") Optional companyDebit, + @JsonProperty("net_pay_debit") Optional netPayDebit, + @JsonProperty("child_support_debit") Optional childSupportDebit, + @JsonProperty("reimbursement_debit") Optional reimbursementDebit, + @JsonProperty("tax_debit") Optional taxDebit) { + Utils.checkNotNull(companyDebit, "companyDebit"); + Utils.checkNotNull(netPayDebit, "netPayDebit"); + Utils.checkNotNull(childSupportDebit, "childSupportDebit"); + Utils.checkNotNull(reimbursementDebit, "reimbursementDebit"); + Utils.checkNotNull(taxDebit, "taxDebit"); + this.companyDebit = companyDebit; + this.netPayDebit = netPayDebit; + this.childSupportDebit = childSupportDebit; + this.reimbursementDebit = reimbursementDebit; + this.taxDebit = taxDebit; + } + + public PayrollReceiptTotals() { + this(Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty(), Optional.empty()); + } + + /** + * The total company debit for the payroll. + */ + @JsonIgnore + public Optional companyDebit() { + return companyDebit; + } + + /** + * The total company net pay for the payroll. + */ + @JsonIgnore + public Optional netPayDebit() { + return netPayDebit; + } + + /** + * The total child support debit for the payroll. + */ + @JsonIgnore + public Optional childSupportDebit() { + return childSupportDebit; + } + + /** + * The total reimbursements for the payroll. + */ + @JsonIgnore + public Optional reimbursementDebit() { + return reimbursementDebit; + } + + /** + * The total tax debit for the payroll. + */ + @JsonIgnore + public Optional taxDebit() { + return taxDebit; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * The total company debit for the payroll. + */ + public PayrollReceiptTotals withCompanyDebit(String companyDebit) { + Utils.checkNotNull(companyDebit, "companyDebit"); + this.companyDebit = Optional.ofNullable(companyDebit); + return this; + } + + + /** + * The total company debit for the payroll. + */ + public PayrollReceiptTotals withCompanyDebit(Optional companyDebit) { + Utils.checkNotNull(companyDebit, "companyDebit"); + this.companyDebit = companyDebit; + return this; + } + + /** + * The total company net pay for the payroll. + */ + public PayrollReceiptTotals withNetPayDebit(String netPayDebit) { + Utils.checkNotNull(netPayDebit, "netPayDebit"); + this.netPayDebit = Optional.ofNullable(netPayDebit); + return this; + } + + + /** + * The total company net pay for the payroll. + */ + public PayrollReceiptTotals withNetPayDebit(Optional netPayDebit) { + Utils.checkNotNull(netPayDebit, "netPayDebit"); + this.netPayDebit = netPayDebit; + return this; + } + + /** + * The total child support debit for the payroll. + */ + public PayrollReceiptTotals withChildSupportDebit(String childSupportDebit) { + Utils.checkNotNull(childSupportDebit, "childSupportDebit"); + this.childSupportDebit = Optional.ofNullable(childSupportDebit); + return this; + } + + + /** + * The total child support debit for the payroll. + */ + public PayrollReceiptTotals withChildSupportDebit(Optional childSupportDebit) { + Utils.checkNotNull(childSupportDebit, "childSupportDebit"); + this.childSupportDebit = childSupportDebit; + return this; + } + + /** + * The total reimbursements for the payroll. + */ + public PayrollReceiptTotals withReimbursementDebit(String reimbursementDebit) { + Utils.checkNotNull(reimbursementDebit, "reimbursementDebit"); + this.reimbursementDebit = Optional.ofNullable(reimbursementDebit); + return this; + } + + + /** + * The total reimbursements for the payroll. + */ + public PayrollReceiptTotals withReimbursementDebit(Optional reimbursementDebit) { + Utils.checkNotNull(reimbursementDebit, "reimbursementDebit"); + this.reimbursementDebit = reimbursementDebit; + return this; + } + + /** + * The total tax debit for the payroll. + */ + public PayrollReceiptTotals withTaxDebit(String taxDebit) { + Utils.checkNotNull(taxDebit, "taxDebit"); + this.taxDebit = Optional.ofNullable(taxDebit); + return this; + } + + + /** + * The total tax debit for the payroll. + */ + public PayrollReceiptTotals withTaxDebit(Optional taxDebit) { + Utils.checkNotNull(taxDebit, "taxDebit"); + this.taxDebit = taxDebit; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PayrollReceiptTotals other = (PayrollReceiptTotals) o; + return + Utils.enhancedDeepEquals(this.companyDebit, other.companyDebit) && + Utils.enhancedDeepEquals(this.netPayDebit, other.netPayDebit) && + Utils.enhancedDeepEquals(this.childSupportDebit, other.childSupportDebit) && + Utils.enhancedDeepEquals(this.reimbursementDebit, other.reimbursementDebit) && + Utils.enhancedDeepEquals(this.taxDebit, other.taxDebit); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + companyDebit, netPayDebit, childSupportDebit, + reimbursementDebit, taxDebit); + } + + @Override + public String toString() { + return Utils.toString(PayrollReceiptTotals.class, + "companyDebit", companyDebit, + "netPayDebit", netPayDebit, + "childSupportDebit", childSupportDebit, + "reimbursementDebit", reimbursementDebit, + "taxDebit", taxDebit); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional companyDebit = Optional.empty(); + + private Optional netPayDebit = Optional.empty(); + + private Optional childSupportDebit = Optional.empty(); + + private Optional reimbursementDebit = Optional.empty(); + + private Optional taxDebit = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * The total company debit for the payroll. + */ + public Builder companyDebit(String companyDebit) { + Utils.checkNotNull(companyDebit, "companyDebit"); + this.companyDebit = Optional.ofNullable(companyDebit); + return this; + } + + /** + * The total company debit for the payroll. + */ + public Builder companyDebit(Optional companyDebit) { + Utils.checkNotNull(companyDebit, "companyDebit"); + this.companyDebit = companyDebit; + return this; + } + + + /** + * The total company net pay for the payroll. + */ + public Builder netPayDebit(String netPayDebit) { + Utils.checkNotNull(netPayDebit, "netPayDebit"); + this.netPayDebit = Optional.ofNullable(netPayDebit); + return this; + } + + /** + * The total company net pay for the payroll. + */ + public Builder netPayDebit(Optional netPayDebit) { + Utils.checkNotNull(netPayDebit, "netPayDebit"); + this.netPayDebit = netPayDebit; + return this; + } + + + /** + * The total child support debit for the payroll. + */ + public Builder childSupportDebit(String childSupportDebit) { + Utils.checkNotNull(childSupportDebit, "childSupportDebit"); + this.childSupportDebit = Optional.ofNullable(childSupportDebit); + return this; + } + + /** + * The total child support debit for the payroll. + */ + public Builder childSupportDebit(Optional childSupportDebit) { + Utils.checkNotNull(childSupportDebit, "childSupportDebit"); + this.childSupportDebit = childSupportDebit; + return this; + } + + + /** + * The total reimbursements for the payroll. + */ + public Builder reimbursementDebit(String reimbursementDebit) { + Utils.checkNotNull(reimbursementDebit, "reimbursementDebit"); + this.reimbursementDebit = Optional.ofNullable(reimbursementDebit); + return this; + } + + /** + * The total reimbursements for the payroll. + */ + public Builder reimbursementDebit(Optional reimbursementDebit) { + Utils.checkNotNull(reimbursementDebit, "reimbursementDebit"); + this.reimbursementDebit = reimbursementDebit; + return this; + } + + + /** + * The total tax debit for the payroll. + */ + public Builder taxDebit(String taxDebit) { + Utils.checkNotNull(taxDebit, "taxDebit"); + this.taxDebit = Optional.ofNullable(taxDebit); + return this; + } + + /** + * The total tax debit for the payroll. + */ + public Builder taxDebit(Optional taxDebit) { + Utils.checkNotNull(taxDebit, "taxDebit"); + this.taxDebit = taxDebit; + return this; + } + + public PayrollReceiptTotals build() { + + return new PayrollReceiptTotals( + companyDebit, netPayDebit, childSupportDebit, + reimbursementDebit, taxDebit); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollShowCustomWithholdings.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollShowCustomWithholdings.java new file mode 100644 index 000000000..bd1e67131 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollShowCustomWithholdings.java @@ -0,0 +1,198 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.List; +import java.util.Optional; +import org.openapitools.jackson.nullable.JsonNullable; + +/** + * PayrollShowCustomWithholdings + * + *

    The one-time custom withholding overrides applied to this payroll for this employee. + * `federal` is null when no federal one-time override is set; `state` is an empty + * array when no state one-time overrides are set. + */ +public class PayrollShowCustomWithholdings { + /** + * Federal one-time custom withholding override applied to this payroll. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("federal") + private JsonNullable federal; + + /** + * State one-time custom withholding overrides applied to this payroll, one entry per state field. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("state") + private Optional> state; + + @JsonCreator + public PayrollShowCustomWithholdings( + @JsonProperty("federal") JsonNullable federal, + @JsonProperty("state") Optional> state) { + Utils.checkNotNull(federal, "federal"); + Utils.checkNotNull(state, "state"); + this.federal = federal; + this.state = state; + } + + public PayrollShowCustomWithholdings() { + this(JsonNullable.undefined(), Optional.empty()); + } + + /** + * Federal one-time custom withholding override applied to this payroll. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public JsonNullable federal() { + return (JsonNullable) federal; + } + + /** + * State one-time custom withholding overrides applied to this payroll, one entry per state field. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> state() { + return (Optional>) state; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Federal one-time custom withholding override applied to this payroll. + */ + public PayrollShowCustomWithholdings withFederal(PayrollShowFederal federal) { + Utils.checkNotNull(federal, "federal"); + this.federal = JsonNullable.of(federal); + return this; + } + + /** + * Federal one-time custom withholding override applied to this payroll. + */ + public PayrollShowCustomWithholdings withFederal(JsonNullable federal) { + Utils.checkNotNull(federal, "federal"); + this.federal = federal; + return this; + } + + /** + * State one-time custom withholding overrides applied to this payroll, one entry per state field. + */ + public PayrollShowCustomWithholdings withState(List state) { + Utils.checkNotNull(state, "state"); + this.state = Optional.ofNullable(state); + return this; + } + + + /** + * State one-time custom withholding overrides applied to this payroll, one entry per state field. + */ + public PayrollShowCustomWithholdings withState(Optional> state) { + Utils.checkNotNull(state, "state"); + this.state = state; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PayrollShowCustomWithholdings other = (PayrollShowCustomWithholdings) o; + return + Utils.enhancedDeepEquals(this.federal, other.federal) && + Utils.enhancedDeepEquals(this.state, other.state); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + federal, state); + } + + @Override + public String toString() { + return Utils.toString(PayrollShowCustomWithholdings.class, + "federal", federal, + "state", state); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private JsonNullable federal = JsonNullable.undefined(); + + private Optional> state = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * Federal one-time custom withholding override applied to this payroll. + */ + public Builder federal(PayrollShowFederal federal) { + Utils.checkNotNull(federal, "federal"); + this.federal = JsonNullable.of(federal); + return this; + } + + /** + * Federal one-time custom withholding override applied to this payroll. + */ + public Builder federal(JsonNullable federal) { + Utils.checkNotNull(federal, "federal"); + this.federal = federal; + return this; + } + + + /** + * State one-time custom withholding overrides applied to this payroll, one entry per state field. + */ + public Builder state(List state) { + Utils.checkNotNull(state, "state"); + this.state = Optional.ofNullable(state); + return this; + } + + /** + * State one-time custom withholding overrides applied to this payroll, one entry per state field. + */ + public Builder state(Optional> state) { + Utils.checkNotNull(state, "state"); + this.state = state; + return this; + } + + public PayrollShowCustomWithholdings build() { + + return new PayrollShowCustomWithholdings( + federal, state); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollShowEmployeeCompensationsAmountType.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollShowEmployeeCompensationsAmountType.java new file mode 100644 index 000000000..70b7ee97e --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollShowEmployeeCompensationsAmountType.java @@ -0,0 +1,40 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollShowEmployeeCompensationsAmountType + * + *

    How to interpret the amount. + */ +public enum PayrollShowEmployeeCompensationsAmountType { + FIXED("fixed"), + PERCENT("percent"); + + @JsonValue + private final String value; + + PayrollShowEmployeeCompensationsAmountType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollShowEmployeeCompensationsAmountType o: PayrollShowEmployeeCompensationsAmountType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollShowEmployeeCompensationsCustomWithholdingsAmountType.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollShowEmployeeCompensationsCustomWithholdingsAmountType.java new file mode 100644 index 000000000..2ed99aa81 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollShowEmployeeCompensationsCustomWithholdingsAmountType.java @@ -0,0 +1,40 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollShowEmployeeCompensationsCustomWithholdingsAmountType + * + *

    How to interpret the amount. + */ +public enum PayrollShowEmployeeCompensationsCustomWithholdingsAmountType { + FIXED("fixed"), + PERCENT("percent"); + + @JsonValue + private final String value; + + PayrollShowEmployeeCompensationsCustomWithholdingsAmountType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollShowEmployeeCompensationsCustomWithholdingsAmountType o: PayrollShowEmployeeCompensationsCustomWithholdingsAmountType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollShowEmployeeCompensationsOverrideType.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollShowEmployeeCompensationsOverrideType.java new file mode 100644 index 000000000..7c194b7b2 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollShowEmployeeCompensationsOverrideType.java @@ -0,0 +1,39 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollShowEmployeeCompensationsOverrideType + * + *

    Override mode. Only `one_time` is currently exposed. + */ +public enum PayrollShowEmployeeCompensationsOverrideType { + ONE_TIME("one_time"); + + @JsonValue + private final String value; + + PayrollShowEmployeeCompensationsOverrideType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollShowEmployeeCompensationsOverrideType o: PayrollShowEmployeeCompensationsOverrideType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollShowFederal.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollShowFederal.java new file mode 100644 index 000000000..db9a99b7a --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollShowFederal.java @@ -0,0 +1,255 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + +/** + * PayrollShowFederal + * + *

    Federal one-time custom withholding override applied to this payroll. + */ +public class PayrollShowFederal { + /** + * Override mode. Only `one_time` is currently exposed. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("override_type") + private Optional overrideType; + + /** + * The amount that was withheld for this payroll. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("amount") + private Optional amount; + + /** + * How to interpret the amount. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("amount_type") + private Optional amountType; + + @JsonCreator + public PayrollShowFederal( + @JsonProperty("override_type") Optional overrideType, + @JsonProperty("amount") Optional amount, + @JsonProperty("amount_type") Optional amountType) { + Utils.checkNotNull(overrideType, "overrideType"); + Utils.checkNotNull(amount, "amount"); + Utils.checkNotNull(amountType, "amountType"); + this.overrideType = overrideType; + this.amount = amount; + this.amountType = amountType; + } + + public PayrollShowFederal() { + this(Optional.empty(), Optional.empty(), Optional.empty()); + } + + /** + * Override mode. Only `one_time` is currently exposed. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional overrideType() { + return (Optional) overrideType; + } + + /** + * The amount that was withheld for this payroll. + */ + @JsonIgnore + public Optional amount() { + return amount; + } + + /** + * How to interpret the amount. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional amountType() { + return (Optional) amountType; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public PayrollShowFederal withOverrideType(PayrollShowEmployeeCompensationsOverrideType overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = Optional.ofNullable(overrideType); + return this; + } + + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public PayrollShowFederal withOverrideType(Optional overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = overrideType; + return this; + } + + /** + * The amount that was withheld for this payroll. + */ + public PayrollShowFederal withAmount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = Optional.ofNullable(amount); + return this; + } + + + /** + * The amount that was withheld for this payroll. + */ + public PayrollShowFederal withAmount(Optional amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + /** + * How to interpret the amount. + */ + public PayrollShowFederal withAmountType(PayrollShowEmployeeCompensationsAmountType amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = Optional.ofNullable(amountType); + return this; + } + + + /** + * How to interpret the amount. + */ + public PayrollShowFederal withAmountType(Optional amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = amountType; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PayrollShowFederal other = (PayrollShowFederal) o; + return + Utils.enhancedDeepEquals(this.overrideType, other.overrideType) && + Utils.enhancedDeepEquals(this.amount, other.amount) && + Utils.enhancedDeepEquals(this.amountType, other.amountType); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + overrideType, amount, amountType); + } + + @Override + public String toString() { + return Utils.toString(PayrollShowFederal.class, + "overrideType", overrideType, + "amount", amount, + "amountType", amountType); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional overrideType = Optional.empty(); + + private Optional amount = Optional.empty(); + + private Optional amountType = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public Builder overrideType(PayrollShowEmployeeCompensationsOverrideType overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = Optional.ofNullable(overrideType); + return this; + } + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public Builder overrideType(Optional overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = overrideType; + return this; + } + + + /** + * The amount that was withheld for this payroll. + */ + public Builder amount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = Optional.ofNullable(amount); + return this; + } + + /** + * The amount that was withheld for this payroll. + */ + public Builder amount(Optional amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + + /** + * How to interpret the amount. + */ + public Builder amountType(PayrollShowEmployeeCompensationsAmountType amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = Optional.ofNullable(amountType); + return this; + } + + /** + * How to interpret the amount. + */ + public Builder amountType(Optional amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = amountType; + return this; + } + + public PayrollShowFederal build() { + + return new PayrollShowFederal( + overrideType, amount, amountType); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollShowOverrideType.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollShowOverrideType.java new file mode 100644 index 000000000..806c3b37e --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollShowOverrideType.java @@ -0,0 +1,39 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollShowOverrideType + * + *

    Override mode. Only `one_time` is currently exposed. + */ +public enum PayrollShowOverrideType { + ONE_TIME("one_time"); + + @JsonValue + private final String value; + + PayrollShowOverrideType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollShowOverrideType o: PayrollShowOverrideType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollShowState.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollShowState.java new file mode 100644 index 000000000..84b3e4583 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollShowState.java @@ -0,0 +1,314 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class PayrollShowState { + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("employee_state_field_uuid") + private Optional employeeStateFieldUuid; + + /** + * Override mode. Only `one_time` is currently exposed. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("override_type") + private Optional overrideType; + + /** + * The amount that was withheld for this payroll. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("amount") + private Optional amount; + + /** + * How to interpret the amount. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("amount_type") + private Optional amountType; + + @JsonCreator + public PayrollShowState( + @JsonProperty("employee_state_field_uuid") Optional employeeStateFieldUuid, + @JsonProperty("override_type") Optional overrideType, + @JsonProperty("amount") Optional amount, + @JsonProperty("amount_type") Optional amountType) { + Utils.checkNotNull(employeeStateFieldUuid, "employeeStateFieldUuid"); + Utils.checkNotNull(overrideType, "overrideType"); + Utils.checkNotNull(amount, "amount"); + Utils.checkNotNull(amountType, "amountType"); + this.employeeStateFieldUuid = employeeStateFieldUuid; + this.overrideType = overrideType; + this.amount = amount; + this.amountType = amountType; + } + + public PayrollShowState() { + this(Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty()); + } + + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + @JsonIgnore + public Optional employeeStateFieldUuid() { + return employeeStateFieldUuid; + } + + /** + * Override mode. Only `one_time` is currently exposed. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional overrideType() { + return (Optional) overrideType; + } + + /** + * The amount that was withheld for this payroll. + */ + @JsonIgnore + public Optional amount() { + return amount; + } + + /** + * How to interpret the amount. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional amountType() { + return (Optional) amountType; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + public PayrollShowState withEmployeeStateFieldUuid(String employeeStateFieldUuid) { + Utils.checkNotNull(employeeStateFieldUuid, "employeeStateFieldUuid"); + this.employeeStateFieldUuid = Optional.ofNullable(employeeStateFieldUuid); + return this; + } + + + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + public PayrollShowState withEmployeeStateFieldUuid(Optional employeeStateFieldUuid) { + Utils.checkNotNull(employeeStateFieldUuid, "employeeStateFieldUuid"); + this.employeeStateFieldUuid = employeeStateFieldUuid; + return this; + } + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public PayrollShowState withOverrideType(PayrollShowOverrideType overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = Optional.ofNullable(overrideType); + return this; + } + + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public PayrollShowState withOverrideType(Optional overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = overrideType; + return this; + } + + /** + * The amount that was withheld for this payroll. + */ + public PayrollShowState withAmount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = Optional.ofNullable(amount); + return this; + } + + + /** + * The amount that was withheld for this payroll. + */ + public PayrollShowState withAmount(Optional amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + /** + * How to interpret the amount. + */ + public PayrollShowState withAmountType(PayrollShowEmployeeCompensationsCustomWithholdingsAmountType amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = Optional.ofNullable(amountType); + return this; + } + + + /** + * How to interpret the amount. + */ + public PayrollShowState withAmountType(Optional amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = amountType; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PayrollShowState other = (PayrollShowState) o; + return + Utils.enhancedDeepEquals(this.employeeStateFieldUuid, other.employeeStateFieldUuid) && + Utils.enhancedDeepEquals(this.overrideType, other.overrideType) && + Utils.enhancedDeepEquals(this.amount, other.amount) && + Utils.enhancedDeepEquals(this.amountType, other.amountType); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + employeeStateFieldUuid, overrideType, amount, + amountType); + } + + @Override + public String toString() { + return Utils.toString(PayrollShowState.class, + "employeeStateFieldUuid", employeeStateFieldUuid, + "overrideType", overrideType, + "amount", amount, + "amountType", amountType); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional employeeStateFieldUuid = Optional.empty(); + + private Optional overrideType = Optional.empty(); + + private Optional amount = Optional.empty(); + + private Optional amountType = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + public Builder employeeStateFieldUuid(String employeeStateFieldUuid) { + Utils.checkNotNull(employeeStateFieldUuid, "employeeStateFieldUuid"); + this.employeeStateFieldUuid = Optional.ofNullable(employeeStateFieldUuid); + return this; + } + + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + public Builder employeeStateFieldUuid(Optional employeeStateFieldUuid) { + Utils.checkNotNull(employeeStateFieldUuid, "employeeStateFieldUuid"); + this.employeeStateFieldUuid = employeeStateFieldUuid; + return this; + } + + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public Builder overrideType(PayrollShowOverrideType overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = Optional.ofNullable(overrideType); + return this; + } + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public Builder overrideType(Optional overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = overrideType; + return this; + } + + + /** + * The amount that was withheld for this payroll. + */ + public Builder amount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = Optional.ofNullable(amount); + return this; + } + + /** + * The amount that was withheld for this payroll. + */ + public Builder amount(Optional amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + + /** + * How to interpret the amount. + */ + public Builder amountType(PayrollShowEmployeeCompensationsCustomWithholdingsAmountType amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = Optional.ofNullable(amountType); + return this; + } + + /** + * How to interpret the amount. + */ + public Builder amountType(Optional amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = amountType; + return this; + } + + public PayrollShowState build() { + + return new PayrollShowState( + employeeStateFieldUuid, overrideType, amount, + amountType); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollUnprocessedEmployeeCompensationsType.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollUnprocessedEmployeeCompensationsType.java index c1b6880b8..926815428 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollUnprocessedEmployeeCompensationsType.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollUnprocessedEmployeeCompensationsType.java @@ -105,7 +105,7 @@ public class PayrollUnprocessedEmployeeCompensationsType { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("fixed_compensations") - private Optional> fixedCompensations; + private Optional> fixedCompensations; /** * An array of hourly compensations for the employee. Hourly compensations include regular, overtime, @@ -116,7 +116,7 @@ public class PayrollUnprocessedEmployeeCompensationsType { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("hourly_compensations") - private Optional> hourlyCompensations; + private Optional> hourlyCompensations; /** * An array of all paid time off the employee is eligible for this pay period. @@ -130,7 +130,16 @@ public class PayrollUnprocessedEmployeeCompensationsType { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("reimbursements") - private Optional> reimbursements; + private Optional> reimbursements; + + /** + * The one-time custom withholding overrides applied to this payroll for this employee. + * `federal` is null when no federal one-time override is set; `state` is an empty + * array when no state one-time overrides are set. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("custom_withholdings") + private Optional customWithholdings; /** * The current version of this employee compensation. This field is only available for prepared @@ -154,10 +163,11 @@ public PayrollUnprocessedEmployeeCompensationsType( @JsonProperty("check_amount") JsonNullable checkAmount, @JsonProperty("payment_method") JsonNullable paymentMethod, @JsonProperty("memo") JsonNullable memo, - @JsonProperty("fixed_compensations") Optional> fixedCompensations, - @JsonProperty("hourly_compensations") Optional> hourlyCompensations, + @JsonProperty("fixed_compensations") Optional> fixedCompensations, + @JsonProperty("hourly_compensations") Optional> hourlyCompensations, @JsonProperty("paid_time_off") Optional> paidTimeOff, - @JsonProperty("reimbursements") Optional> reimbursements, + @JsonProperty("reimbursements") Optional> reimbursements, + @JsonProperty("custom_withholdings") Optional customWithholdings, @JsonProperty("version") Optional version) { Utils.checkNotNull(employeeUuid, "employeeUuid"); Utils.checkNotNull(excluded, "excluded"); @@ -173,6 +183,7 @@ public PayrollUnprocessedEmployeeCompensationsType( Utils.checkNotNull(hourlyCompensations, "hourlyCompensations"); Utils.checkNotNull(paidTimeOff, "paidTimeOff"); Utils.checkNotNull(reimbursements, "reimbursements"); + Utils.checkNotNull(customWithholdings, "customWithholdings"); Utils.checkNotNull(version, "version"); this.employeeUuid = employeeUuid; this.excluded = excluded; @@ -188,6 +199,7 @@ public PayrollUnprocessedEmployeeCompensationsType( this.hourlyCompensations = hourlyCompensations; this.paidTimeOff = paidTimeOff; this.reimbursements = reimbursements; + this.customWithholdings = customWithholdings; this.version = version; } @@ -196,7 +208,8 @@ public PayrollUnprocessedEmployeeCompensationsType() { JsonNullable.undefined(), JsonNullable.undefined(), JsonNullable.undefined(), JsonNullable.undefined(), JsonNullable.undefined(), JsonNullable.undefined(), JsonNullable.undefined(), Optional.empty(), Optional.empty(), - Optional.empty(), Optional.empty(), Optional.empty()); + Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty()); } /** @@ -294,8 +307,8 @@ public JsonNullable memo() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional> fixedCompensations() { - return (Optional>) fixedCompensations; + public Optional> fixedCompensations() { + return (Optional>) fixedCompensations; } /** @@ -307,8 +320,8 @@ public Optional> fixedCompensations() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional> hourlyCompensations() { - return (Optional>) hourlyCompensations; + public Optional> hourlyCompensations() { + return (Optional>) hourlyCompensations; } /** @@ -325,8 +338,19 @@ public Optional> pa */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional> reimbursements() { - return (Optional>) reimbursements; + public Optional> reimbursements() { + return (Optional>) reimbursements; + } + + /** + * The one-time custom withholding overrides applied to this payroll for this employee. + * `federal` is null when no federal one-time override is set; `state` is an empty + * array when no state one-time overrides are set. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional customWithholdings() { + return (Optional) customWithholdings; } /** @@ -545,7 +569,7 @@ public PayrollUnprocessedEmployeeCompensationsType withMemo(JsonNullable * *

    For an unprocessed payroll, all active fixed compensations are returned. */ - public PayrollUnprocessedEmployeeCompensationsType withFixedCompensations(List fixedCompensations) { + public PayrollUnprocessedEmployeeCompensationsType withFixedCompensations(List fixedCompensations) { Utils.checkNotNull(fixedCompensations, "fixedCompensations"); this.fixedCompensations = Optional.ofNullable(fixedCompensations); return this; @@ -559,7 +583,7 @@ public PayrollUnprocessedEmployeeCompensationsType withFixedCompensations(ListFor an unprocessed payroll, all active fixed compensations are returned. */ - public PayrollUnprocessedEmployeeCompensationsType withFixedCompensations(Optional> fixedCompensations) { + public PayrollUnprocessedEmployeeCompensationsType withFixedCompensations(Optional> fixedCompensations) { Utils.checkNotNull(fixedCompensations, "fixedCompensations"); this.fixedCompensations = fixedCompensations; return this; @@ -572,7 +596,7 @@ public PayrollUnprocessedEmployeeCompensationsType withFixedCompensations(Option * *

    For an unprocessed payroll, all active hourly compensations are returned. */ - public PayrollUnprocessedEmployeeCompensationsType withHourlyCompensations(List hourlyCompensations) { + public PayrollUnprocessedEmployeeCompensationsType withHourlyCompensations(List hourlyCompensations) { Utils.checkNotNull(hourlyCompensations, "hourlyCompensations"); this.hourlyCompensations = Optional.ofNullable(hourlyCompensations); return this; @@ -586,7 +610,7 @@ public PayrollUnprocessedEmployeeCompensationsType withHourlyCompensations(List< * *

    For an unprocessed payroll, all active hourly compensations are returned. */ - public PayrollUnprocessedEmployeeCompensationsType withHourlyCompensations(Optional> hourlyCompensations) { + public PayrollUnprocessedEmployeeCompensationsType withHourlyCompensations(Optional> hourlyCompensations) { Utils.checkNotNull(hourlyCompensations, "hourlyCompensations"); this.hourlyCompensations = hourlyCompensations; return this; @@ -614,7 +638,7 @@ public PayrollUnprocessedEmployeeCompensationsType withPaidTimeOff(Optional reimbursements) { + public PayrollUnprocessedEmployeeCompensationsType withReimbursements(List reimbursements) { Utils.checkNotNull(reimbursements, "reimbursements"); this.reimbursements = Optional.ofNullable(reimbursements); return this; @@ -624,12 +648,35 @@ public PayrollUnprocessedEmployeeCompensationsType withReimbursements(List> reimbursements) { + public PayrollUnprocessedEmployeeCompensationsType withReimbursements(Optional> reimbursements) { Utils.checkNotNull(reimbursements, "reimbursements"); this.reimbursements = reimbursements; return this; } + /** + * The one-time custom withholding overrides applied to this payroll for this employee. + * `federal` is null when no federal one-time override is set; `state` is an empty + * array when no state one-time overrides are set. + */ + public PayrollUnprocessedEmployeeCompensationsType withCustomWithholdings(PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings customWithholdings) { + Utils.checkNotNull(customWithholdings, "customWithholdings"); + this.customWithholdings = Optional.ofNullable(customWithholdings); + return this; + } + + + /** + * The one-time custom withholding overrides applied to this payroll for this employee. + * `federal` is null when no federal one-time override is set; `state` is an empty + * array when no state one-time overrides are set. + */ + public PayrollUnprocessedEmployeeCompensationsType withCustomWithholdings(Optional customWithholdings) { + Utils.checkNotNull(customWithholdings, "customWithholdings"); + this.customWithholdings = customWithholdings; + return this; + } + /** * The current version of this employee compensation. This field is only available for prepared * payrolls. See the [versioning @@ -679,6 +726,7 @@ public boolean equals(java.lang.Object o) { Utils.enhancedDeepEquals(this.hourlyCompensations, other.hourlyCompensations) && Utils.enhancedDeepEquals(this.paidTimeOff, other.paidTimeOff) && Utils.enhancedDeepEquals(this.reimbursements, other.reimbursements) && + Utils.enhancedDeepEquals(this.customWithholdings, other.customWithholdings) && Utils.enhancedDeepEquals(this.version, other.version); } @@ -689,7 +737,8 @@ public int hashCode() { preferredFirstName, lastName, grossPay, netPay, checkAmount, paymentMethod, memo, fixedCompensations, hourlyCompensations, - paidTimeOff, reimbursements, version); + paidTimeOff, reimbursements, customWithholdings, + version); } @Override @@ -709,6 +758,7 @@ public String toString() { "hourlyCompensations", hourlyCompensations, "paidTimeOff", paidTimeOff, "reimbursements", reimbursements, + "customWithholdings", customWithholdings, "version", version); } @@ -735,13 +785,15 @@ public final static class Builder { private JsonNullable memo = JsonNullable.undefined(); - private Optional> fixedCompensations = Optional.empty(); + private Optional> fixedCompensations = Optional.empty(); - private Optional> hourlyCompensations = Optional.empty(); + private Optional> hourlyCompensations = Optional.empty(); private Optional> paidTimeOff = Optional.empty(); - private Optional> reimbursements = Optional.empty(); + private Optional> reimbursements = Optional.empty(); + + private Optional customWithholdings = Optional.empty(); private Optional version = Optional.empty(); @@ -957,7 +1009,7 @@ public Builder memo(JsonNullable memo) { * *

    For an unprocessed payroll, all active fixed compensations are returned. */ - public Builder fixedCompensations(List fixedCompensations) { + public Builder fixedCompensations(List fixedCompensations) { Utils.checkNotNull(fixedCompensations, "fixedCompensations"); this.fixedCompensations = Optional.ofNullable(fixedCompensations); return this; @@ -970,7 +1022,7 @@ public Builder fixedCompensations(List fixedCompensations) { * *

    For an unprocessed payroll, all active fixed compensations are returned. */ - public Builder fixedCompensations(Optional> fixedCompensations) { + public Builder fixedCompensations(Optional> fixedCompensations) { Utils.checkNotNull(fixedCompensations, "fixedCompensations"); this.fixedCompensations = fixedCompensations; return this; @@ -984,7 +1036,7 @@ public Builder fixedCompensations(Optional> f * *

    For an unprocessed payroll, all active hourly compensations are returned. */ - public Builder hourlyCompensations(List hourlyCompensations) { + public Builder hourlyCompensations(List hourlyCompensations) { Utils.checkNotNull(hourlyCompensations, "hourlyCompensations"); this.hourlyCompensations = Optional.ofNullable(hourlyCompensations); return this; @@ -997,7 +1049,7 @@ public Builder hourlyCompensations(List hourlyCompensations * *

    For an unprocessed payroll, all active hourly compensations are returned. */ - public Builder hourlyCompensations(Optional> hourlyCompensations) { + public Builder hourlyCompensations(Optional> hourlyCompensations) { Utils.checkNotNull(hourlyCompensations, "hourlyCompensations"); this.hourlyCompensations = hourlyCompensations; return this; @@ -1026,7 +1078,7 @@ public Builder paidTimeOff(Optional reimbursements) { + public Builder reimbursements(List reimbursements) { Utils.checkNotNull(reimbursements, "reimbursements"); this.reimbursements = Optional.ofNullable(reimbursements); return this; @@ -1035,13 +1087,36 @@ public Builder reimbursements(List reimbursements) { /** * An array of reimbursements for the employee. */ - public Builder reimbursements(Optional> reimbursements) { + public Builder reimbursements(Optional> reimbursements) { Utils.checkNotNull(reimbursements, "reimbursements"); this.reimbursements = reimbursements; return this; } + /** + * The one-time custom withholding overrides applied to this payroll for this employee. + * `federal` is null when no federal one-time override is set; `state` is an empty + * array when no state one-time overrides are set. + */ + public Builder customWithholdings(PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings customWithholdings) { + Utils.checkNotNull(customWithholdings, "customWithholdings"); + this.customWithholdings = Optional.ofNullable(customWithholdings); + return this; + } + + /** + * The one-time custom withholding overrides applied to this payroll for this employee. + * `federal` is null when no federal one-time override is set; `state` is an empty + * array when no state one-time overrides are set. + */ + public Builder customWithholdings(Optional customWithholdings) { + Utils.checkNotNull(customWithholdings, "customWithholdings"); + this.customWithholdings = customWithholdings; + return this; + } + + /** * The current version of this employee compensation. This field is only available for prepared * payrolls. See the [versioning @@ -1073,7 +1148,8 @@ public PayrollUnprocessedEmployeeCompensationsType build() { preferredFirstName, lastName, grossPay, netPay, checkAmount, paymentMethod, memo, fixedCompensations, hourlyCompensations, - paidTimeOff, reimbursements, version); + paidTimeOff, reimbursements, customWithholdings, + version); } } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollUnprocessedEmployeeCompensationsTypeAmountType.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollUnprocessedEmployeeCompensationsTypeAmountType.java new file mode 100644 index 000000000..48137a94b --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollUnprocessedEmployeeCompensationsTypeAmountType.java @@ -0,0 +1,40 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollUnprocessedEmployeeCompensationsTypeAmountType + * + *

    How to interpret the amount. + */ +public enum PayrollUnprocessedEmployeeCompensationsTypeAmountType { + FIXED("fixed"), + PERCENT("percent"); + + @JsonValue + private final String value; + + PayrollUnprocessedEmployeeCompensationsTypeAmountType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollUnprocessedEmployeeCompensationsTypeAmountType o: PayrollUnprocessedEmployeeCompensationsTypeAmountType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings.java new file mode 100644 index 000000000..322940978 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings.java @@ -0,0 +1,198 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.List; +import java.util.Optional; +import org.openapitools.jackson.nullable.JsonNullable; + +/** + * PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings + * + *

    The one-time custom withholding overrides applied to this payroll for this employee. + * `federal` is null when no federal one-time override is set; `state` is an empty + * array when no state one-time overrides are set. + */ +public class PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings { + /** + * Federal one-time custom withholding override applied to this payroll. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("federal") + private JsonNullable federal; + + /** + * State one-time custom withholding overrides applied to this payroll, one entry per state field. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("state") + private Optional> state; + + @JsonCreator + public PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings( + @JsonProperty("federal") JsonNullable federal, + @JsonProperty("state") Optional> state) { + Utils.checkNotNull(federal, "federal"); + Utils.checkNotNull(state, "state"); + this.federal = federal; + this.state = state; + } + + public PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings() { + this(JsonNullable.undefined(), Optional.empty()); + } + + /** + * Federal one-time custom withholding override applied to this payroll. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public JsonNullable federal() { + return (JsonNullable) federal; + } + + /** + * State one-time custom withholding overrides applied to this payroll, one entry per state field. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> state() { + return (Optional>) state; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Federal one-time custom withholding override applied to this payroll. + */ + public PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings withFederal(PayrollUnprocessedEmployeeCompensationsTypeFederal federal) { + Utils.checkNotNull(federal, "federal"); + this.federal = JsonNullable.of(federal); + return this; + } + + /** + * Federal one-time custom withholding override applied to this payroll. + */ + public PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings withFederal(JsonNullable federal) { + Utils.checkNotNull(federal, "federal"); + this.federal = federal; + return this; + } + + /** + * State one-time custom withholding overrides applied to this payroll, one entry per state field. + */ + public PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings withState(List state) { + Utils.checkNotNull(state, "state"); + this.state = Optional.ofNullable(state); + return this; + } + + + /** + * State one-time custom withholding overrides applied to this payroll, one entry per state field. + */ + public PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings withState(Optional> state) { + Utils.checkNotNull(state, "state"); + this.state = state; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings other = (PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings) o; + return + Utils.enhancedDeepEquals(this.federal, other.federal) && + Utils.enhancedDeepEquals(this.state, other.state); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + federal, state); + } + + @Override + public String toString() { + return Utils.toString(PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings.class, + "federal", federal, + "state", state); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private JsonNullable federal = JsonNullable.undefined(); + + private Optional> state = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * Federal one-time custom withholding override applied to this payroll. + */ + public Builder federal(PayrollUnprocessedEmployeeCompensationsTypeFederal federal) { + Utils.checkNotNull(federal, "federal"); + this.federal = JsonNullable.of(federal); + return this; + } + + /** + * Federal one-time custom withholding override applied to this payroll. + */ + public Builder federal(JsonNullable federal) { + Utils.checkNotNull(federal, "federal"); + this.federal = federal; + return this; + } + + + /** + * State one-time custom withholding overrides applied to this payroll, one entry per state field. + */ + public Builder state(List state) { + Utils.checkNotNull(state, "state"); + this.state = Optional.ofNullable(state); + return this; + } + + /** + * State one-time custom withholding overrides applied to this payroll, one entry per state field. + */ + public Builder state(Optional> state) { + Utils.checkNotNull(state, "state"); + this.state = state; + return this; + } + + public PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings build() { + + return new PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings( + federal, state); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsAmountType.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsAmountType.java new file mode 100644 index 000000000..b79d20608 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsAmountType.java @@ -0,0 +1,40 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsAmountType + * + *

    How to interpret the amount. + */ +public enum PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsAmountType { + FIXED("fixed"), + PERCENT("percent"); + + @JsonValue + private final String value; + + PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsAmountType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsAmountType o: PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsAmountType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsOverrideType.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsOverrideType.java new file mode 100644 index 000000000..86896ca41 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsOverrideType.java @@ -0,0 +1,39 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsOverrideType + * + *

    Override mode. Only `one_time` is currently exposed. + */ +public enum PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsOverrideType { + ONE_TIME("one_time"); + + @JsonValue + private final String value; + + PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsOverrideType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsOverrideType o: PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsOverrideType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollUnprocessedEmployeeCompensationsTypeFederal.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollUnprocessedEmployeeCompensationsTypeFederal.java new file mode 100644 index 000000000..e1e1822e5 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollUnprocessedEmployeeCompensationsTypeFederal.java @@ -0,0 +1,255 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + +/** + * PayrollUnprocessedEmployeeCompensationsTypeFederal + * + *

    Federal one-time custom withholding override applied to this payroll. + */ +public class PayrollUnprocessedEmployeeCompensationsTypeFederal { + /** + * Override mode. Only `one_time` is currently exposed. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("override_type") + private Optional overrideType; + + /** + * The amount that was withheld for this payroll. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("amount") + private Optional amount; + + /** + * How to interpret the amount. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("amount_type") + private Optional amountType; + + @JsonCreator + public PayrollUnprocessedEmployeeCompensationsTypeFederal( + @JsonProperty("override_type") Optional overrideType, + @JsonProperty("amount") Optional amount, + @JsonProperty("amount_type") Optional amountType) { + Utils.checkNotNull(overrideType, "overrideType"); + Utils.checkNotNull(amount, "amount"); + Utils.checkNotNull(amountType, "amountType"); + this.overrideType = overrideType; + this.amount = amount; + this.amountType = amountType; + } + + public PayrollUnprocessedEmployeeCompensationsTypeFederal() { + this(Optional.empty(), Optional.empty(), Optional.empty()); + } + + /** + * Override mode. Only `one_time` is currently exposed. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional overrideType() { + return (Optional) overrideType; + } + + /** + * The amount that was withheld for this payroll. + */ + @JsonIgnore + public Optional amount() { + return amount; + } + + /** + * How to interpret the amount. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional amountType() { + return (Optional) amountType; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public PayrollUnprocessedEmployeeCompensationsTypeFederal withOverrideType(PayrollUnprocessedEmployeeCompensationsTypeOverrideType overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = Optional.ofNullable(overrideType); + return this; + } + + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public PayrollUnprocessedEmployeeCompensationsTypeFederal withOverrideType(Optional overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = overrideType; + return this; + } + + /** + * The amount that was withheld for this payroll. + */ + public PayrollUnprocessedEmployeeCompensationsTypeFederal withAmount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = Optional.ofNullable(amount); + return this; + } + + + /** + * The amount that was withheld for this payroll. + */ + public PayrollUnprocessedEmployeeCompensationsTypeFederal withAmount(Optional amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + /** + * How to interpret the amount. + */ + public PayrollUnprocessedEmployeeCompensationsTypeFederal withAmountType(PayrollUnprocessedEmployeeCompensationsTypeAmountType amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = Optional.ofNullable(amountType); + return this; + } + + + /** + * How to interpret the amount. + */ + public PayrollUnprocessedEmployeeCompensationsTypeFederal withAmountType(Optional amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = amountType; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PayrollUnprocessedEmployeeCompensationsTypeFederal other = (PayrollUnprocessedEmployeeCompensationsTypeFederal) o; + return + Utils.enhancedDeepEquals(this.overrideType, other.overrideType) && + Utils.enhancedDeepEquals(this.amount, other.amount) && + Utils.enhancedDeepEquals(this.amountType, other.amountType); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + overrideType, amount, amountType); + } + + @Override + public String toString() { + return Utils.toString(PayrollUnprocessedEmployeeCompensationsTypeFederal.class, + "overrideType", overrideType, + "amount", amount, + "amountType", amountType); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional overrideType = Optional.empty(); + + private Optional amount = Optional.empty(); + + private Optional amountType = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public Builder overrideType(PayrollUnprocessedEmployeeCompensationsTypeOverrideType overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = Optional.ofNullable(overrideType); + return this; + } + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public Builder overrideType(Optional overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = overrideType; + return this; + } + + + /** + * The amount that was withheld for this payroll. + */ + public Builder amount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = Optional.ofNullable(amount); + return this; + } + + /** + * The amount that was withheld for this payroll. + */ + public Builder amount(Optional amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + + /** + * How to interpret the amount. + */ + public Builder amountType(PayrollUnprocessedEmployeeCompensationsTypeAmountType amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = Optional.ofNullable(amountType); + return this; + } + + /** + * How to interpret the amount. + */ + public Builder amountType(Optional amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = amountType; + return this; + } + + public PayrollUnprocessedEmployeeCompensationsTypeFederal build() { + + return new PayrollUnprocessedEmployeeCompensationsTypeFederal( + overrideType, amount, amountType); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollEmployeeCompensationsTypeFixedCompensations.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollUnprocessedEmployeeCompensationsTypeFixedCompensations.java similarity index 83% rename from gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollEmployeeCompensationsTypeFixedCompensations.java rename to gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollUnprocessedEmployeeCompensationsTypeFixedCompensations.java index d634354f0..5301d1394 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollEmployeeCompensationsTypeFixedCompensations.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollUnprocessedEmployeeCompensationsTypeFixedCompensations.java @@ -14,7 +14,7 @@ import java.util.Optional; -public class PayrollEmployeeCompensationsTypeFixedCompensations { +public class PayrollUnprocessedEmployeeCompensationsTypeFixedCompensations { /** * The name of the compensation. This also serves as the unique, immutable identifier for this * compensation. @@ -38,7 +38,7 @@ public class PayrollEmployeeCompensationsTypeFixedCompensations { private Optional jobUuid; @JsonCreator - public PayrollEmployeeCompensationsTypeFixedCompensations( + public PayrollUnprocessedEmployeeCompensationsTypeFixedCompensations( @JsonProperty("name") Optional name, @JsonProperty("amount") Optional amount, @JsonProperty("job_uuid") Optional jobUuid) { @@ -50,7 +50,7 @@ public PayrollEmployeeCompensationsTypeFixedCompensations( this.jobUuid = jobUuid; } - public PayrollEmployeeCompensationsTypeFixedCompensations() { + public PayrollUnprocessedEmployeeCompensationsTypeFixedCompensations() { this(Optional.empty(), Optional.empty(), Optional.empty()); } @@ -88,7 +88,7 @@ public static Builder builder() { * The name of the compensation. This also serves as the unique, immutable identifier for this * compensation. */ - public PayrollEmployeeCompensationsTypeFixedCompensations withName(String name) { + public PayrollUnprocessedEmployeeCompensationsTypeFixedCompensations withName(String name) { Utils.checkNotNull(name, "name"); this.name = Optional.ofNullable(name); return this; @@ -99,7 +99,7 @@ public PayrollEmployeeCompensationsTypeFixedCompensations withName(String name) * The name of the compensation. This also serves as the unique, immutable identifier for this * compensation. */ - public PayrollEmployeeCompensationsTypeFixedCompensations withName(Optional name) { + public PayrollUnprocessedEmployeeCompensationsTypeFixedCompensations withName(Optional name) { Utils.checkNotNull(name, "name"); this.name = name; return this; @@ -108,7 +108,7 @@ public PayrollEmployeeCompensationsTypeFixedCompensations withName(Optional amount) { + public PayrollUnprocessedEmployeeCompensationsTypeFixedCompensations withAmount(Optional amount) { Utils.checkNotNull(amount, "amount"); this.amount = amount; return this; @@ -127,7 +127,7 @@ public PayrollEmployeeCompensationsTypeFixedCompensations withAmount(Optional jobUuid) { + public PayrollUnprocessedEmployeeCompensationsTypeFixedCompensations withJobUuid(Optional jobUuid) { Utils.checkNotNull(jobUuid, "jobUuid"); this.jobUuid = jobUuid; return this; @@ -151,7 +151,7 @@ public boolean equals(java.lang.Object o) { if (o == null || getClass() != o.getClass()) { return false; } - PayrollEmployeeCompensationsTypeFixedCompensations other = (PayrollEmployeeCompensationsTypeFixedCompensations) o; + PayrollUnprocessedEmployeeCompensationsTypeFixedCompensations other = (PayrollUnprocessedEmployeeCompensationsTypeFixedCompensations) o; return Utils.enhancedDeepEquals(this.name, other.name) && Utils.enhancedDeepEquals(this.amount, other.amount) && @@ -166,7 +166,7 @@ public int hashCode() { @Override public String toString() { - return Utils.toString(PayrollEmployeeCompensationsTypeFixedCompensations.class, + return Utils.toString(PayrollUnprocessedEmployeeCompensationsTypeFixedCompensations.class, "name", name, "amount", amount, "jobUuid", jobUuid); @@ -244,9 +244,9 @@ public Builder jobUuid(Optional jobUuid) { return this; } - public PayrollEmployeeCompensationsTypeFixedCompensations build() { + public PayrollUnprocessedEmployeeCompensationsTypeFixedCompensations build() { - return new PayrollEmployeeCompensationsTypeFixedCompensations( + return new PayrollUnprocessedEmployeeCompensationsTypeFixedCompensations( name, amount, jobUuid); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollEmployeeCompensationsTypeHourlyCompensations.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollUnprocessedEmployeeCompensationsTypeHourlyCompensations.java similarity index 86% rename from gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollEmployeeCompensationsTypeHourlyCompensations.java rename to gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollUnprocessedEmployeeCompensationsTypeHourlyCompensations.java index 24b878e2a..df8ae4497 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollEmployeeCompensationsTypeHourlyCompensations.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollUnprocessedEmployeeCompensationsTypeHourlyCompensations.java @@ -15,7 +15,7 @@ import java.util.Optional; -public class PayrollEmployeeCompensationsTypeHourlyCompensations { +public class PayrollUnprocessedEmployeeCompensationsTypeHourlyCompensations { /** * The name of the compensation. This also serves as the unique, immutable identifier for this * compensation. @@ -61,7 +61,7 @@ public class PayrollEmployeeCompensationsTypeHourlyCompensations { private Optional flsaStatus; @JsonCreator - public PayrollEmployeeCompensationsTypeHourlyCompensations( + public PayrollUnprocessedEmployeeCompensationsTypeHourlyCompensations( @JsonProperty("name") Optional name, @JsonProperty("hours") Optional hours, @JsonProperty("amount") Optional amount, @@ -82,7 +82,7 @@ public PayrollEmployeeCompensationsTypeHourlyCompensations( this.flsaStatus = flsaStatus; } - public PayrollEmployeeCompensationsTypeHourlyCompensations() { + public PayrollUnprocessedEmployeeCompensationsTypeHourlyCompensations() { this(Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty()); } @@ -146,7 +146,7 @@ public static Builder builder() { * The name of the compensation. This also serves as the unique, immutable identifier for this * compensation. */ - public PayrollEmployeeCompensationsTypeHourlyCompensations withName(String name) { + public PayrollUnprocessedEmployeeCompensationsTypeHourlyCompensations withName(String name) { Utils.checkNotNull(name, "name"); this.name = Optional.ofNullable(name); return this; @@ -157,7 +157,7 @@ public PayrollEmployeeCompensationsTypeHourlyCompensations withName(String name) * The name of the compensation. This also serves as the unique, immutable identifier for this * compensation. */ - public PayrollEmployeeCompensationsTypeHourlyCompensations withName(Optional name) { + public PayrollUnprocessedEmployeeCompensationsTypeHourlyCompensations withName(Optional name) { Utils.checkNotNull(name, "name"); this.name = name; return this; @@ -166,7 +166,7 @@ public PayrollEmployeeCompensationsTypeHourlyCompensations withName(Optional hours) { + public PayrollUnprocessedEmployeeCompensationsTypeHourlyCompensations withHours(Optional hours) { Utils.checkNotNull(hours, "hours"); this.hours = hours; return this; @@ -186,7 +186,7 @@ public PayrollEmployeeCompensationsTypeHourlyCompensations withHours(Optional amount) { + public PayrollUnprocessedEmployeeCompensationsTypeHourlyCompensations withAmount(Optional amount) { Utils.checkNotNull(amount, "amount"); this.amount = amount; return this; @@ -206,7 +206,7 @@ public PayrollEmployeeCompensationsTypeHourlyCompensations withAmount(Optional jobUuid) { + public PayrollUnprocessedEmployeeCompensationsTypeHourlyCompensations withJobUuid(Optional jobUuid) { Utils.checkNotNull(jobUuid, "jobUuid"); this.jobUuid = jobUuid; return this; @@ -225,7 +225,7 @@ public PayrollEmployeeCompensationsTypeHourlyCompensations withJobUuid(Optional< /** * The amount multiplied by the base rate to calculate total compensation per hour worked. */ - public PayrollEmployeeCompensationsTypeHourlyCompensations withCompensationMultiplier(double compensationMultiplier) { + public PayrollUnprocessedEmployeeCompensationsTypeHourlyCompensations withCompensationMultiplier(double compensationMultiplier) { Utils.checkNotNull(compensationMultiplier, "compensationMultiplier"); this.compensationMultiplier = Optional.ofNullable(compensationMultiplier); return this; @@ -235,7 +235,7 @@ public PayrollEmployeeCompensationsTypeHourlyCompensations withCompensationMulti /** * The amount multiplied by the base rate to calculate total compensation per hour worked. */ - public PayrollEmployeeCompensationsTypeHourlyCompensations withCompensationMultiplier(Optional compensationMultiplier) { + public PayrollUnprocessedEmployeeCompensationsTypeHourlyCompensations withCompensationMultiplier(Optional compensationMultiplier) { Utils.checkNotNull(compensationMultiplier, "compensationMultiplier"); this.compensationMultiplier = compensationMultiplier; return this; @@ -244,7 +244,7 @@ public PayrollEmployeeCompensationsTypeHourlyCompensations withCompensationMulti /** * The FLSA Status of the employee's primary job compensation */ - public PayrollEmployeeCompensationsTypeHourlyCompensations withFlsaStatus(String flsaStatus) { + public PayrollUnprocessedEmployeeCompensationsTypeHourlyCompensations withFlsaStatus(String flsaStatus) { Utils.checkNotNull(flsaStatus, "flsaStatus"); this.flsaStatus = Optional.ofNullable(flsaStatus); return this; @@ -254,7 +254,7 @@ public PayrollEmployeeCompensationsTypeHourlyCompensations withFlsaStatus(String /** * The FLSA Status of the employee's primary job compensation */ - public PayrollEmployeeCompensationsTypeHourlyCompensations withFlsaStatus(Optional flsaStatus) { + public PayrollUnprocessedEmployeeCompensationsTypeHourlyCompensations withFlsaStatus(Optional flsaStatus) { Utils.checkNotNull(flsaStatus, "flsaStatus"); this.flsaStatus = flsaStatus; return this; @@ -268,7 +268,7 @@ public boolean equals(java.lang.Object o) { if (o == null || getClass() != o.getClass()) { return false; } - PayrollEmployeeCompensationsTypeHourlyCompensations other = (PayrollEmployeeCompensationsTypeHourlyCompensations) o; + PayrollUnprocessedEmployeeCompensationsTypeHourlyCompensations other = (PayrollUnprocessedEmployeeCompensationsTypeHourlyCompensations) o; return Utils.enhancedDeepEquals(this.name, other.name) && Utils.enhancedDeepEquals(this.hours, other.hours) && @@ -287,7 +287,7 @@ public int hashCode() { @Override public String toString() { - return Utils.toString(PayrollEmployeeCompensationsTypeHourlyCompensations.class, + return Utils.toString(PayrollUnprocessedEmployeeCompensationsTypeHourlyCompensations.class, "name", name, "hours", hours, "amount", amount, @@ -433,9 +433,9 @@ public Builder flsaStatus(Optional flsaStatus) { return this; } - public PayrollEmployeeCompensationsTypeHourlyCompensations build() { + public PayrollUnprocessedEmployeeCompensationsTypeHourlyCompensations build() { - return new PayrollEmployeeCompensationsTypeHourlyCompensations( + return new PayrollUnprocessedEmployeeCompensationsTypeHourlyCompensations( name, hours, amount, jobUuid, compensationMultiplier, flsaStatus); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollUnprocessedEmployeeCompensationsTypeOverrideType.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollUnprocessedEmployeeCompensationsTypeOverrideType.java new file mode 100644 index 000000000..69660bf61 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollUnprocessedEmployeeCompensationsTypeOverrideType.java @@ -0,0 +1,39 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollUnprocessedEmployeeCompensationsTypeOverrideType + * + *

    Override mode. Only `one_time` is currently exposed. + */ +public enum PayrollUnprocessedEmployeeCompensationsTypeOverrideType { + ONE_TIME("one_time"); + + @JsonValue + private final String value; + + PayrollUnprocessedEmployeeCompensationsTypeOverrideType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollUnprocessedEmployeeCompensationsTypeOverrideType o: PayrollUnprocessedEmployeeCompensationsTypeOverrideType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollEmployeeCompensationsTypeReimbursements.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollUnprocessedEmployeeCompensationsTypeReimbursements.java similarity index 85% rename from gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollEmployeeCompensationsTypeReimbursements.java rename to gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollUnprocessedEmployeeCompensationsTypeReimbursements.java index 5e4bd7c34..11d0e8532 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollEmployeeCompensationsTypeReimbursements.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollUnprocessedEmployeeCompensationsTypeReimbursements.java @@ -16,7 +16,7 @@ import org.openapitools.jackson.nullable.JsonNullable; -public class PayrollEmployeeCompensationsTypeReimbursements { +public class PayrollUnprocessedEmployeeCompensationsTypeReimbursements { /** * The dollar amount of the reimbursement for the pay period. */ @@ -46,7 +46,7 @@ public class PayrollEmployeeCompensationsTypeReimbursements { private Optional recurring; @JsonCreator - public PayrollEmployeeCompensationsTypeReimbursements( + public PayrollUnprocessedEmployeeCompensationsTypeReimbursements( @JsonProperty("amount") String amount, @JsonProperty("description") Optional description, @JsonProperty("uuid") JsonNullable uuid, @@ -61,7 +61,7 @@ public PayrollEmployeeCompensationsTypeReimbursements( this.recurring = recurring; } - public PayrollEmployeeCompensationsTypeReimbursements( + public PayrollUnprocessedEmployeeCompensationsTypeReimbursements( String amount) { this(amount, Optional.empty(), JsonNullable.undefined(), Optional.empty()); @@ -108,7 +108,7 @@ public static Builder builder() { /** * The dollar amount of the reimbursement for the pay period. */ - public PayrollEmployeeCompensationsTypeReimbursements withAmount(String amount) { + public PayrollUnprocessedEmployeeCompensationsTypeReimbursements withAmount(String amount) { Utils.checkNotNull(amount, "amount"); this.amount = amount; return this; @@ -117,7 +117,7 @@ public PayrollEmployeeCompensationsTypeReimbursements withAmount(String amount) /** * The description of the reimbursement. Null for unnamed reimbursements. */ - public PayrollEmployeeCompensationsTypeReimbursements withDescription(String description) { + public PayrollUnprocessedEmployeeCompensationsTypeReimbursements withDescription(String description) { Utils.checkNotNull(description, "description"); this.description = Optional.ofNullable(description); return this; @@ -127,7 +127,7 @@ public PayrollEmployeeCompensationsTypeReimbursements withDescription(String des /** * The description of the reimbursement. Null for unnamed reimbursements. */ - public PayrollEmployeeCompensationsTypeReimbursements withDescription(Optional description) { + public PayrollUnprocessedEmployeeCompensationsTypeReimbursements withDescription(Optional description) { Utils.checkNotNull(description, "description"); this.description = description; return this; @@ -137,7 +137,7 @@ public PayrollEmployeeCompensationsTypeReimbursements withDescription(Optional uuid) { + public PayrollUnprocessedEmployeeCompensationsTypeReimbursements withUuid(JsonNullable uuid) { Utils.checkNotNull(uuid, "uuid"); this.uuid = uuid; return this; @@ -156,7 +156,7 @@ public PayrollEmployeeCompensationsTypeReimbursements withUuid(JsonNullable recurring) { + public PayrollUnprocessedEmployeeCompensationsTypeReimbursements withRecurring(Optional recurring) { Utils.checkNotNull(recurring, "recurring"); this.recurring = recurring; return this; @@ -180,7 +180,7 @@ public boolean equals(java.lang.Object o) { if (o == null || getClass() != o.getClass()) { return false; } - PayrollEmployeeCompensationsTypeReimbursements other = (PayrollEmployeeCompensationsTypeReimbursements) o; + PayrollUnprocessedEmployeeCompensationsTypeReimbursements other = (PayrollUnprocessedEmployeeCompensationsTypeReimbursements) o; return Utils.enhancedDeepEquals(this.amount, other.amount) && Utils.enhancedDeepEquals(this.description, other.description) && @@ -197,7 +197,7 @@ public int hashCode() { @Override public String toString() { - return Utils.toString(PayrollEmployeeCompensationsTypeReimbursements.class, + return Utils.toString(PayrollUnprocessedEmployeeCompensationsTypeReimbursements.class, "amount", amount, "description", description, "uuid", uuid, @@ -288,9 +288,9 @@ public Builder recurring(Optional recurring) { return this; } - public PayrollEmployeeCompensationsTypeReimbursements build() { + public PayrollUnprocessedEmployeeCompensationsTypeReimbursements build() { - return new PayrollEmployeeCompensationsTypeReimbursements( + return new PayrollUnprocessedEmployeeCompensationsTypeReimbursements( amount, description, uuid, recurring); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollUnprocessedEmployeeCompensationsTypeState.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollUnprocessedEmployeeCompensationsTypeState.java new file mode 100644 index 000000000..fb018c26b --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollUnprocessedEmployeeCompensationsTypeState.java @@ -0,0 +1,314 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class PayrollUnprocessedEmployeeCompensationsTypeState { + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("employee_state_field_uuid") + private Optional employeeStateFieldUuid; + + /** + * Override mode. Only `one_time` is currently exposed. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("override_type") + private Optional overrideType; + + /** + * The amount that was withheld for this payroll. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("amount") + private Optional amount; + + /** + * How to interpret the amount. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("amount_type") + private Optional amountType; + + @JsonCreator + public PayrollUnprocessedEmployeeCompensationsTypeState( + @JsonProperty("employee_state_field_uuid") Optional employeeStateFieldUuid, + @JsonProperty("override_type") Optional overrideType, + @JsonProperty("amount") Optional amount, + @JsonProperty("amount_type") Optional amountType) { + Utils.checkNotNull(employeeStateFieldUuid, "employeeStateFieldUuid"); + Utils.checkNotNull(overrideType, "overrideType"); + Utils.checkNotNull(amount, "amount"); + Utils.checkNotNull(amountType, "amountType"); + this.employeeStateFieldUuid = employeeStateFieldUuid; + this.overrideType = overrideType; + this.amount = amount; + this.amountType = amountType; + } + + public PayrollUnprocessedEmployeeCompensationsTypeState() { + this(Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty()); + } + + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + @JsonIgnore + public Optional employeeStateFieldUuid() { + return employeeStateFieldUuid; + } + + /** + * Override mode. Only `one_time` is currently exposed. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional overrideType() { + return (Optional) overrideType; + } + + /** + * The amount that was withheld for this payroll. + */ + @JsonIgnore + public Optional amount() { + return amount; + } + + /** + * How to interpret the amount. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional amountType() { + return (Optional) amountType; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + public PayrollUnprocessedEmployeeCompensationsTypeState withEmployeeStateFieldUuid(String employeeStateFieldUuid) { + Utils.checkNotNull(employeeStateFieldUuid, "employeeStateFieldUuid"); + this.employeeStateFieldUuid = Optional.ofNullable(employeeStateFieldUuid); + return this; + } + + + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + public PayrollUnprocessedEmployeeCompensationsTypeState withEmployeeStateFieldUuid(Optional employeeStateFieldUuid) { + Utils.checkNotNull(employeeStateFieldUuid, "employeeStateFieldUuid"); + this.employeeStateFieldUuid = employeeStateFieldUuid; + return this; + } + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public PayrollUnprocessedEmployeeCompensationsTypeState withOverrideType(PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsOverrideType overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = Optional.ofNullable(overrideType); + return this; + } + + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public PayrollUnprocessedEmployeeCompensationsTypeState withOverrideType(Optional overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = overrideType; + return this; + } + + /** + * The amount that was withheld for this payroll. + */ + public PayrollUnprocessedEmployeeCompensationsTypeState withAmount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = Optional.ofNullable(amount); + return this; + } + + + /** + * The amount that was withheld for this payroll. + */ + public PayrollUnprocessedEmployeeCompensationsTypeState withAmount(Optional amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + /** + * How to interpret the amount. + */ + public PayrollUnprocessedEmployeeCompensationsTypeState withAmountType(PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsAmountType amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = Optional.ofNullable(amountType); + return this; + } + + + /** + * How to interpret the amount. + */ + public PayrollUnprocessedEmployeeCompensationsTypeState withAmountType(Optional amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = amountType; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PayrollUnprocessedEmployeeCompensationsTypeState other = (PayrollUnprocessedEmployeeCompensationsTypeState) o; + return + Utils.enhancedDeepEquals(this.employeeStateFieldUuid, other.employeeStateFieldUuid) && + Utils.enhancedDeepEquals(this.overrideType, other.overrideType) && + Utils.enhancedDeepEquals(this.amount, other.amount) && + Utils.enhancedDeepEquals(this.amountType, other.amountType); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + employeeStateFieldUuid, overrideType, amount, + amountType); + } + + @Override + public String toString() { + return Utils.toString(PayrollUnprocessedEmployeeCompensationsTypeState.class, + "employeeStateFieldUuid", employeeStateFieldUuid, + "overrideType", overrideType, + "amount", amount, + "amountType", amountType); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional employeeStateFieldUuid = Optional.empty(); + + private Optional overrideType = Optional.empty(); + + private Optional amount = Optional.empty(); + + private Optional amountType = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + public Builder employeeStateFieldUuid(String employeeStateFieldUuid) { + Utils.checkNotNull(employeeStateFieldUuid, "employeeStateFieldUuid"); + this.employeeStateFieldUuid = Optional.ofNullable(employeeStateFieldUuid); + return this; + } + + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + public Builder employeeStateFieldUuid(Optional employeeStateFieldUuid) { + Utils.checkNotNull(employeeStateFieldUuid, "employeeStateFieldUuid"); + this.employeeStateFieldUuid = employeeStateFieldUuid; + return this; + } + + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public Builder overrideType(PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsOverrideType overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = Optional.ofNullable(overrideType); + return this; + } + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public Builder overrideType(Optional overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = overrideType; + return this; + } + + + /** + * The amount that was withheld for this payroll. + */ + public Builder amount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = Optional.ofNullable(amount); + return this; + } + + /** + * The amount that was withheld for this payroll. + */ + public Builder amount(Optional amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + + /** + * How to interpret the amount. + */ + public Builder amountType(PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsAmountType amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = Optional.ofNullable(amountType); + return this; + } + + /** + * How to interpret the amount. + */ + public Builder amountType(Optional amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = amountType; + return this; + } + + public PayrollUnprocessedEmployeeCompensationsTypeState build() { + + return new PayrollUnprocessedEmployeeCompensationsTypeState( + employeeStateFieldUuid, overrideType, amount, + amountType); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollUpdateCustomWithholdings.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollUpdateCustomWithholdings.java new file mode 100644 index 000000000..c1289a075 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollUpdateCustomWithholdings.java @@ -0,0 +1,200 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.List; +import java.util.Optional; + +/** + * PayrollUpdateCustomWithholdings + * + *

    Optional per-payroll one-time custom withholdings for federal and/or state income tax. + * When provided, the supplied override takes precedence over any persistent withholding schedule for + * this run. + * This field is in limited release; if your application does not have access, requests including it + * are silently ignored. + */ +public class PayrollUpdateCustomWithholdings { + /** + * Federal one-time custom withholding override. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("federal") + private Optional federal; + + /** + * State one-time custom withholding overrides, one entry per state field. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("state") + private Optional> state; + + @JsonCreator + public PayrollUpdateCustomWithholdings( + @JsonProperty("federal") Optional federal, + @JsonProperty("state") Optional> state) { + Utils.checkNotNull(federal, "federal"); + Utils.checkNotNull(state, "state"); + this.federal = federal; + this.state = state; + } + + public PayrollUpdateCustomWithholdings() { + this(Optional.empty(), Optional.empty()); + } + + /** + * Federal one-time custom withholding override. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional federal() { + return (Optional) federal; + } + + /** + * State one-time custom withholding overrides, one entry per state field. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> state() { + return (Optional>) state; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Federal one-time custom withholding override. + */ + public PayrollUpdateCustomWithholdings withFederal(PayrollUpdateFederal federal) { + Utils.checkNotNull(federal, "federal"); + this.federal = Optional.ofNullable(federal); + return this; + } + + + /** + * Federal one-time custom withholding override. + */ + public PayrollUpdateCustomWithholdings withFederal(Optional federal) { + Utils.checkNotNull(federal, "federal"); + this.federal = federal; + return this; + } + + /** + * State one-time custom withholding overrides, one entry per state field. + */ + public PayrollUpdateCustomWithholdings withState(List state) { + Utils.checkNotNull(state, "state"); + this.state = Optional.ofNullable(state); + return this; + } + + + /** + * State one-time custom withholding overrides, one entry per state field. + */ + public PayrollUpdateCustomWithholdings withState(Optional> state) { + Utils.checkNotNull(state, "state"); + this.state = state; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PayrollUpdateCustomWithholdings other = (PayrollUpdateCustomWithholdings) o; + return + Utils.enhancedDeepEquals(this.federal, other.federal) && + Utils.enhancedDeepEquals(this.state, other.state); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + federal, state); + } + + @Override + public String toString() { + return Utils.toString(PayrollUpdateCustomWithholdings.class, + "federal", federal, + "state", state); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional federal = Optional.empty(); + + private Optional> state = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * Federal one-time custom withholding override. + */ + public Builder federal(PayrollUpdateFederal federal) { + Utils.checkNotNull(federal, "federal"); + this.federal = Optional.ofNullable(federal); + return this; + } + + /** + * Federal one-time custom withholding override. + */ + public Builder federal(Optional federal) { + Utils.checkNotNull(federal, "federal"); + this.federal = federal; + return this; + } + + + /** + * State one-time custom withholding overrides, one entry per state field. + */ + public Builder state(List state) { + Utils.checkNotNull(state, "state"); + this.state = Optional.ofNullable(state); + return this; + } + + /** + * State one-time custom withholding overrides, one entry per state field. + */ + public Builder state(Optional> state) { + Utils.checkNotNull(state, "state"); + this.state = state; + return this; + } + + public PayrollUpdateCustomWithholdings build() { + + return new PayrollUpdateCustomWithholdings( + federal, state); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollUpdateEmployeeCompensations.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollUpdateEmployeeCompensations.java index 7f8192b24..52b0b6db4 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollUpdateEmployeeCompensations.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollUpdateEmployeeCompensations.java @@ -70,6 +70,17 @@ public class PayrollUpdateEmployeeCompensations { @JsonProperty("deductions") private Optional> deductions; + /** + * Optional per-payroll one-time custom withholdings for federal and/or state income tax. + * When provided, the supplied override takes precedence over any persistent withholding schedule for + * this run. + * This field is in limited release; if your application does not have access, requests including it + * are silently ignored. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("custom_withholdings") + private Optional customWithholdings; + /** * An array of all paid time off the employee is eligible for this pay period. Each paid time off * object can be the name or the specific policy_uuid. @@ -95,6 +106,7 @@ public PayrollUpdateEmployeeCompensations( @JsonProperty("fixed_compensations") Optional> fixedCompensations, @JsonProperty("hourly_compensations") Optional> hourlyCompensations, @JsonProperty("deductions") Optional> deductions, + @JsonProperty("custom_withholdings") Optional customWithholdings, @JsonProperty("paid_time_off") Optional> paidTimeOff, @JsonProperty("reimbursements") Optional> reimbursements) { Utils.checkNotNull(employeeUuid, "employeeUuid"); @@ -105,6 +117,7 @@ public PayrollUpdateEmployeeCompensations( Utils.checkNotNull(fixedCompensations, "fixedCompensations"); Utils.checkNotNull(hourlyCompensations, "hourlyCompensations"); Utils.checkNotNull(deductions, "deductions"); + Utils.checkNotNull(customWithholdings, "customWithholdings"); Utils.checkNotNull(paidTimeOff, "paidTimeOff"); Utils.checkNotNull(reimbursements, "reimbursements"); this.employeeUuid = employeeUuid; @@ -115,6 +128,7 @@ public PayrollUpdateEmployeeCompensations( this.fixedCompensations = fixedCompensations; this.hourlyCompensations = hourlyCompensations; this.deductions = deductions; + this.customWithholdings = customWithholdings; this.paidTimeOff = paidTimeOff; this.reimbursements = reimbursements; } @@ -123,7 +137,7 @@ public PayrollUpdateEmployeeCompensations() { this(Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), - Optional.empty()); + Optional.empty(), Optional.empty()); } /** @@ -187,6 +201,19 @@ public Optional> deductions() { return (Optional>) deductions; } + /** + * Optional per-payroll one-time custom withholdings for federal and/or state income tax. + * When provided, the supplied override takes precedence over any persistent withholding schedule for + * this run. + * This field is in limited release; if your application does not have access, requests including it + * are silently ignored. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional customWithholdings() { + return (Optional) customWithholdings; + } + /** * An array of all paid time off the employee is eligible for this pay period. Each paid time off * object can be the name or the specific policy_uuid. @@ -349,6 +376,33 @@ public PayrollUpdateEmployeeCompensations withDeductions(Optional customWithholdings) { + Utils.checkNotNull(customWithholdings, "customWithholdings"); + this.customWithholdings = customWithholdings; + return this; + } + /** * An array of all paid time off the employee is eligible for this pay period. Each paid time off * object can be the name or the specific policy_uuid. @@ -407,6 +461,7 @@ public boolean equals(java.lang.Object o) { Utils.enhancedDeepEquals(this.fixedCompensations, other.fixedCompensations) && Utils.enhancedDeepEquals(this.hourlyCompensations, other.hourlyCompensations) && Utils.enhancedDeepEquals(this.deductions, other.deductions) && + Utils.enhancedDeepEquals(this.customWithholdings, other.customWithholdings) && Utils.enhancedDeepEquals(this.paidTimeOff, other.paidTimeOff) && Utils.enhancedDeepEquals(this.reimbursements, other.reimbursements); } @@ -416,8 +471,8 @@ public int hashCode() { return Utils.enhancedHash( employeeUuid, version, excluded, paymentMethod, memo, fixedCompensations, - hourlyCompensations, deductions, paidTimeOff, - reimbursements); + hourlyCompensations, deductions, customWithholdings, + paidTimeOff, reimbursements); } @Override @@ -431,6 +486,7 @@ public String toString() { "fixedCompensations", fixedCompensations, "hourlyCompensations", hourlyCompensations, "deductions", deductions, + "customWithholdings", customWithholdings, "paidTimeOff", paidTimeOff, "reimbursements", reimbursements); } @@ -454,6 +510,8 @@ public final static class Builder { private Optional> deductions = Optional.empty(); + private Optional customWithholdings = Optional.empty(); + private Optional> paidTimeOff = Optional.empty(); private Optional> reimbursements = Optional.empty(); @@ -601,6 +659,33 @@ public Builder deductions(Optional> dedu } + /** + * Optional per-payroll one-time custom withholdings for federal and/or state income tax. + * When provided, the supplied override takes precedence over any persistent withholding schedule for + * this run. + * This field is in limited release; if your application does not have access, requests including it + * are silently ignored. + */ + public Builder customWithholdings(PayrollUpdateCustomWithholdings customWithholdings) { + Utils.checkNotNull(customWithholdings, "customWithholdings"); + this.customWithholdings = Optional.ofNullable(customWithholdings); + return this; + } + + /** + * Optional per-payroll one-time custom withholdings for federal and/or state income tax. + * When provided, the supplied override takes precedence over any persistent withholding schedule for + * this run. + * This field is in limited release; if your application does not have access, requests including it + * are silently ignored. + */ + public Builder customWithholdings(Optional customWithholdings) { + Utils.checkNotNull(customWithholdings, "customWithholdings"); + this.customWithholdings = customWithholdings; + return this; + } + + /** * An array of all paid time off the employee is eligible for this pay period. Each paid time off * object can be the name or the specific policy_uuid. @@ -645,8 +730,8 @@ public PayrollUpdateEmployeeCompensations build() { return new PayrollUpdateEmployeeCompensations( employeeUuid, version, excluded, paymentMethod, memo, fixedCompensations, - hourlyCompensations, deductions, paidTimeOff, - reimbursements); + hourlyCompensations, deductions, customWithholdings, + paidTimeOff, reimbursements); } } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollUpdateEmployeeCompensationsAmountType.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollUpdateEmployeeCompensationsAmountType.java new file mode 100644 index 000000000..b1de3dcd3 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollUpdateEmployeeCompensationsAmountType.java @@ -0,0 +1,40 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollUpdateEmployeeCompensationsAmountType + * + *

    How to interpret the amount. + */ +public enum PayrollUpdateEmployeeCompensationsAmountType { + FIXED("fixed"), + PERCENT("percent"); + + @JsonValue + private final String value; + + PayrollUpdateEmployeeCompensationsAmountType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollUpdateEmployeeCompensationsAmountType o: PayrollUpdateEmployeeCompensationsAmountType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollUpdateEmployeeCompensationsCustomWithholdingsAmountType.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollUpdateEmployeeCompensationsCustomWithholdingsAmountType.java new file mode 100644 index 000000000..ff80369d7 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollUpdateEmployeeCompensationsCustomWithholdingsAmountType.java @@ -0,0 +1,40 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollUpdateEmployeeCompensationsCustomWithholdingsAmountType + * + *

    How to interpret the amount. + */ +public enum PayrollUpdateEmployeeCompensationsCustomWithholdingsAmountType { + FIXED("fixed"), + PERCENT("percent"); + + @JsonValue + private final String value; + + PayrollUpdateEmployeeCompensationsCustomWithholdingsAmountType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollUpdateEmployeeCompensationsCustomWithholdingsAmountType o: PayrollUpdateEmployeeCompensationsCustomWithholdingsAmountType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollUpdateEmployeeCompensationsOverrideType.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollUpdateEmployeeCompensationsOverrideType.java new file mode 100644 index 000000000..ecc4df308 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollUpdateEmployeeCompensationsOverrideType.java @@ -0,0 +1,39 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollUpdateEmployeeCompensationsOverrideType + * + *

    Override mode. Only `one_time` is currently supported. + */ +public enum PayrollUpdateEmployeeCompensationsOverrideType { + ONE_TIME("one_time"); + + @JsonValue + private final String value; + + PayrollUpdateEmployeeCompensationsOverrideType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollUpdateEmployeeCompensationsOverrideType o: PayrollUpdateEmployeeCompensationsOverrideType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollUpdateFederal.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollUpdateFederal.java new file mode 100644 index 000000000..279a5aad0 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollUpdateFederal.java @@ -0,0 +1,255 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + +/** + * PayrollUpdateFederal + * + *

    Federal one-time custom withholding override. + */ +public class PayrollUpdateFederal { + /** + * Override mode. Only `one_time` is currently supported. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("override_type") + private Optional overrideType; + + /** + * The amount to be withheld for this payroll. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("amount") + private Optional amount; + + /** + * How to interpret the amount. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("amount_type") + private Optional amountType; + + @JsonCreator + public PayrollUpdateFederal( + @JsonProperty("override_type") Optional overrideType, + @JsonProperty("amount") Optional amount, + @JsonProperty("amount_type") Optional amountType) { + Utils.checkNotNull(overrideType, "overrideType"); + Utils.checkNotNull(amount, "amount"); + Utils.checkNotNull(amountType, "amountType"); + this.overrideType = overrideType; + this.amount = amount; + this.amountType = amountType; + } + + public PayrollUpdateFederal() { + this(Optional.empty(), Optional.empty(), Optional.empty()); + } + + /** + * Override mode. Only `one_time` is currently supported. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional overrideType() { + return (Optional) overrideType; + } + + /** + * The amount to be withheld for this payroll. + */ + @JsonIgnore + public Optional amount() { + return amount; + } + + /** + * How to interpret the amount. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional amountType() { + return (Optional) amountType; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Override mode. Only `one_time` is currently supported. + */ + public PayrollUpdateFederal withOverrideType(PayrollUpdateOverrideType overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = Optional.ofNullable(overrideType); + return this; + } + + + /** + * Override mode. Only `one_time` is currently supported. + */ + public PayrollUpdateFederal withOverrideType(Optional overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = overrideType; + return this; + } + + /** + * The amount to be withheld for this payroll. + */ + public PayrollUpdateFederal withAmount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = Optional.ofNullable(amount); + return this; + } + + + /** + * The amount to be withheld for this payroll. + */ + public PayrollUpdateFederal withAmount(Optional amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + /** + * How to interpret the amount. + */ + public PayrollUpdateFederal withAmountType(PayrollUpdateEmployeeCompensationsAmountType amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = Optional.ofNullable(amountType); + return this; + } + + + /** + * How to interpret the amount. + */ + public PayrollUpdateFederal withAmountType(Optional amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = amountType; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PayrollUpdateFederal other = (PayrollUpdateFederal) o; + return + Utils.enhancedDeepEquals(this.overrideType, other.overrideType) && + Utils.enhancedDeepEquals(this.amount, other.amount) && + Utils.enhancedDeepEquals(this.amountType, other.amountType); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + overrideType, amount, amountType); + } + + @Override + public String toString() { + return Utils.toString(PayrollUpdateFederal.class, + "overrideType", overrideType, + "amount", amount, + "amountType", amountType); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional overrideType = Optional.empty(); + + private Optional amount = Optional.empty(); + + private Optional amountType = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * Override mode. Only `one_time` is currently supported. + */ + public Builder overrideType(PayrollUpdateOverrideType overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = Optional.ofNullable(overrideType); + return this; + } + + /** + * Override mode. Only `one_time` is currently supported. + */ + public Builder overrideType(Optional overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = overrideType; + return this; + } + + + /** + * The amount to be withheld for this payroll. + */ + public Builder amount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = Optional.ofNullable(amount); + return this; + } + + /** + * The amount to be withheld for this payroll. + */ + public Builder amount(Optional amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + + /** + * How to interpret the amount. + */ + public Builder amountType(PayrollUpdateEmployeeCompensationsAmountType amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = Optional.ofNullable(amountType); + return this; + } + + /** + * How to interpret the amount. + */ + public Builder amountType(Optional amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = amountType; + return this; + } + + public PayrollUpdateFederal build() { + + return new PayrollUpdateFederal( + overrideType, amount, amountType); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollUpdateOverrideType.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollUpdateOverrideType.java new file mode 100644 index 000000000..f4878acc9 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollUpdateOverrideType.java @@ -0,0 +1,39 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollUpdateOverrideType + * + *

    Override mode. Only `one_time` is currently supported. + */ +public enum PayrollUpdateOverrideType { + ONE_TIME("one_time"); + + @JsonValue + private final String value; + + PayrollUpdateOverrideType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollUpdateOverrideType o: PayrollUpdateOverrideType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollUpdateState.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollUpdateState.java new file mode 100644 index 000000000..4591f65ef --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PayrollUpdateState.java @@ -0,0 +1,314 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class PayrollUpdateState { + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("employee_state_field_uuid") + private Optional employeeStateFieldUuid; + + /** + * Override mode. Only `one_time` is currently supported. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("override_type") + private Optional overrideType; + + /** + * The amount to be withheld for this payroll. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("amount") + private Optional amount; + + /** + * How to interpret the amount. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("amount_type") + private Optional amountType; + + @JsonCreator + public PayrollUpdateState( + @JsonProperty("employee_state_field_uuid") Optional employeeStateFieldUuid, + @JsonProperty("override_type") Optional overrideType, + @JsonProperty("amount") Optional amount, + @JsonProperty("amount_type") Optional amountType) { + Utils.checkNotNull(employeeStateFieldUuid, "employeeStateFieldUuid"); + Utils.checkNotNull(overrideType, "overrideType"); + Utils.checkNotNull(amount, "amount"); + Utils.checkNotNull(amountType, "amountType"); + this.employeeStateFieldUuid = employeeStateFieldUuid; + this.overrideType = overrideType; + this.amount = amount; + this.amountType = amountType; + } + + public PayrollUpdateState() { + this(Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty()); + } + + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + @JsonIgnore + public Optional employeeStateFieldUuid() { + return employeeStateFieldUuid; + } + + /** + * Override mode. Only `one_time` is currently supported. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional overrideType() { + return (Optional) overrideType; + } + + /** + * The amount to be withheld for this payroll. + */ + @JsonIgnore + public Optional amount() { + return amount; + } + + /** + * How to interpret the amount. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional amountType() { + return (Optional) amountType; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + public PayrollUpdateState withEmployeeStateFieldUuid(String employeeStateFieldUuid) { + Utils.checkNotNull(employeeStateFieldUuid, "employeeStateFieldUuid"); + this.employeeStateFieldUuid = Optional.ofNullable(employeeStateFieldUuid); + return this; + } + + + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + public PayrollUpdateState withEmployeeStateFieldUuid(Optional employeeStateFieldUuid) { + Utils.checkNotNull(employeeStateFieldUuid, "employeeStateFieldUuid"); + this.employeeStateFieldUuid = employeeStateFieldUuid; + return this; + } + + /** + * Override mode. Only `one_time` is currently supported. + */ + public PayrollUpdateState withOverrideType(PayrollUpdateEmployeeCompensationsOverrideType overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = Optional.ofNullable(overrideType); + return this; + } + + + /** + * Override mode. Only `one_time` is currently supported. + */ + public PayrollUpdateState withOverrideType(Optional overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = overrideType; + return this; + } + + /** + * The amount to be withheld for this payroll. + */ + public PayrollUpdateState withAmount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = Optional.ofNullable(amount); + return this; + } + + + /** + * The amount to be withheld for this payroll. + */ + public PayrollUpdateState withAmount(Optional amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + /** + * How to interpret the amount. + */ + public PayrollUpdateState withAmountType(PayrollUpdateEmployeeCompensationsCustomWithholdingsAmountType amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = Optional.ofNullable(amountType); + return this; + } + + + /** + * How to interpret the amount. + */ + public PayrollUpdateState withAmountType(Optional amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = amountType; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PayrollUpdateState other = (PayrollUpdateState) o; + return + Utils.enhancedDeepEquals(this.employeeStateFieldUuid, other.employeeStateFieldUuid) && + Utils.enhancedDeepEquals(this.overrideType, other.overrideType) && + Utils.enhancedDeepEquals(this.amount, other.amount) && + Utils.enhancedDeepEquals(this.amountType, other.amountType); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + employeeStateFieldUuid, overrideType, amount, + amountType); + } + + @Override + public String toString() { + return Utils.toString(PayrollUpdateState.class, + "employeeStateFieldUuid", employeeStateFieldUuid, + "overrideType", overrideType, + "amount", amount, + "amountType", amountType); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional employeeStateFieldUuid = Optional.empty(); + + private Optional overrideType = Optional.empty(); + + private Optional amount = Optional.empty(); + + private Optional amountType = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + public Builder employeeStateFieldUuid(String employeeStateFieldUuid) { + Utils.checkNotNull(employeeStateFieldUuid, "employeeStateFieldUuid"); + this.employeeStateFieldUuid = Optional.ofNullable(employeeStateFieldUuid); + return this; + } + + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + public Builder employeeStateFieldUuid(Optional employeeStateFieldUuid) { + Utils.checkNotNull(employeeStateFieldUuid, "employeeStateFieldUuid"); + this.employeeStateFieldUuid = employeeStateFieldUuid; + return this; + } + + + /** + * Override mode. Only `one_time` is currently supported. + */ + public Builder overrideType(PayrollUpdateEmployeeCompensationsOverrideType overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = Optional.ofNullable(overrideType); + return this; + } + + /** + * Override mode. Only `one_time` is currently supported. + */ + public Builder overrideType(Optional overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = overrideType; + return this; + } + + + /** + * The amount to be withheld for this payroll. + */ + public Builder amount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = Optional.ofNullable(amount); + return this; + } + + /** + * The amount to be withheld for this payroll. + */ + public Builder amount(Optional amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + + /** + * How to interpret the amount. + */ + public Builder amountType(PayrollUpdateEmployeeCompensationsCustomWithholdingsAmountType amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = Optional.ofNullable(amountType); + return this; + } + + /** + * How to interpret the amount. + */ + public Builder amountType(Optional amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = amountType; + return this; + } + + public PayrollUpdateState build() { + + return new PayrollUpdateState( + employeeStateFieldUuid, overrideType, amount, + amountType); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PeopleBatchResults.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PeopleBatchResults.java index 90bec4fec..518b468b3 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PeopleBatchResults.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PeopleBatchResults.java @@ -82,14 +82,14 @@ public class PeopleBatchResults { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("results") - private Optional> results; + private Optional> results; /** * Items excluded from processing due to validation errors. */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("exclusions") - private JsonNullable> exclusions; + private JsonNullable> exclusions; @JsonCreator public PeopleBatchResults( @@ -101,8 +101,8 @@ public PeopleBatchResults( @JsonProperty("submitted_items") JsonNullable submittedItems, @JsonProperty("processed_items") Optional processedItems, @JsonProperty("excluded_items") Optional excludedItems, - @JsonProperty("results") Optional> results, - @JsonProperty("exclusions") JsonNullable> exclusions) { + @JsonProperty("results") Optional> results, + @JsonProperty("exclusions") JsonNullable> exclusions) { Utils.checkNotNull(uuid, "uuid"); Utils.checkNotNull(idempotencyKey, "idempotencyKey"); Utils.checkNotNull(status, "status"); @@ -204,8 +204,8 @@ public Optional excludedItems() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional> results() { - return (Optional>) results; + public Optional> results() { + return (Optional>) results; } /** @@ -213,8 +213,8 @@ public Optional> results() { */ @SuppressWarnings("unchecked") @JsonIgnore - public JsonNullable> exclusions() { - return (JsonNullable>) exclusions; + public JsonNullable> exclusions() { + return (JsonNullable>) exclusions; } public static Builder builder() { @@ -345,7 +345,7 @@ public PeopleBatchResults withExcludedItems(Optional excludedItems) { /** * The results for each batch item. */ - public PeopleBatchResults withResults(List results) { + public PeopleBatchResults withResults(List results) { Utils.checkNotNull(results, "results"); this.results = Optional.ofNullable(results); return this; @@ -355,7 +355,7 @@ public PeopleBatchResults withResults(List results) { /** * The results for each batch item. */ - public PeopleBatchResults withResults(Optional> results) { + public PeopleBatchResults withResults(Optional> results) { Utils.checkNotNull(results, "results"); this.results = results; return this; @@ -364,7 +364,7 @@ public PeopleBatchResults withResults(Optional> results) /** * Items excluded from processing due to validation errors. */ - public PeopleBatchResults withExclusions(List exclusions) { + public PeopleBatchResults withExclusions(List exclusions) { Utils.checkNotNull(exclusions, "exclusions"); this.exclusions = JsonNullable.of(exclusions); return this; @@ -373,7 +373,7 @@ public PeopleBatchResults withExclusions(List exclusions) { /** * Items excluded from processing due to validation errors. */ - public PeopleBatchResults withExclusions(JsonNullable> exclusions) { + public PeopleBatchResults withExclusions(JsonNullable> exclusions) { Utils.checkNotNull(exclusions, "exclusions"); this.exclusions = exclusions; return this; @@ -444,9 +444,9 @@ public final static class Builder { private Optional excludedItems = Optional.empty(); - private Optional> results = Optional.empty(); + private Optional> results = Optional.empty(); - private JsonNullable> exclusions = JsonNullable.undefined(); + private JsonNullable> exclusions = JsonNullable.undefined(); private Builder() { // force use of static builder() method @@ -581,7 +581,7 @@ public Builder excludedItems(Optional excludedItems) { /** * The results for each batch item. */ - public Builder results(List results) { + public Builder results(List results) { Utils.checkNotNull(results, "results"); this.results = Optional.ofNullable(results); return this; @@ -590,7 +590,7 @@ public Builder results(List results) { /** * The results for each batch item. */ - public Builder results(Optional> results) { + public Builder results(Optional> results) { Utils.checkNotNull(results, "results"); this.results = results; return this; @@ -600,7 +600,7 @@ public Builder results(Optional> results) { /** * Items excluded from processing due to validation errors. */ - public Builder exclusions(List exclusions) { + public Builder exclusions(List exclusions) { Utils.checkNotNull(exclusions, "exclusions"); this.exclusions = JsonNullable.of(exclusions); return this; @@ -609,7 +609,7 @@ public Builder exclusions(List exclusions) { /** * Items excluded from processing due to validation errors. */ - public Builder exclusions(JsonNullable> exclusions) { + public Builder exclusions(JsonNullable> exclusions) { Utils.checkNotNull(exclusions, "exclusions"); this.exclusions = exclusions; return this; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PeopleBatchResultsExclusions.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PeopleBatchResultsExclusions.java new file mode 100644 index 000000000..1cd0b23a8 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PeopleBatchResultsExclusions.java @@ -0,0 +1,312 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Long; +import java.lang.Override; +import java.lang.String; +import java.util.Optional; + + +public class PeopleBatchResultsExclusions { + /** + * The external ID of the excluded item(s). + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("external_id") + private Optional externalId; + + /** + * The exclusion category. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("category") + private Optional category; + + /** + * Human-readable explanation for exclusion. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("message") + private Optional message; + + /** + * Number of items affected by this exclusion. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("item_count") + private Optional itemCount; + + @JsonCreator + public PeopleBatchResultsExclusions( + @JsonProperty("external_id") Optional externalId, + @JsonProperty("category") Optional category, + @JsonProperty("message") Optional message, + @JsonProperty("item_count") Optional itemCount) { + Utils.checkNotNull(externalId, "externalId"); + Utils.checkNotNull(category, "category"); + Utils.checkNotNull(message, "message"); + Utils.checkNotNull(itemCount, "itemCount"); + this.externalId = externalId; + this.category = category; + this.message = message; + this.itemCount = itemCount; + } + + public PeopleBatchResultsExclusions() { + this(Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty()); + } + + /** + * The external ID of the excluded item(s). + */ + @JsonIgnore + public Optional externalId() { + return externalId; + } + + /** + * The exclusion category. + */ + @JsonIgnore + public Optional category() { + return category; + } + + /** + * Human-readable explanation for exclusion. + */ + @JsonIgnore + public Optional message() { + return message; + } + + /** + * Number of items affected by this exclusion. + */ + @JsonIgnore + public Optional itemCount() { + return itemCount; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * The external ID of the excluded item(s). + */ + public PeopleBatchResultsExclusions withExternalId(String externalId) { + Utils.checkNotNull(externalId, "externalId"); + this.externalId = Optional.ofNullable(externalId); + return this; + } + + + /** + * The external ID of the excluded item(s). + */ + public PeopleBatchResultsExclusions withExternalId(Optional externalId) { + Utils.checkNotNull(externalId, "externalId"); + this.externalId = externalId; + return this; + } + + /** + * The exclusion category. + */ + public PeopleBatchResultsExclusions withCategory(String category) { + Utils.checkNotNull(category, "category"); + this.category = Optional.ofNullable(category); + return this; + } + + + /** + * The exclusion category. + */ + public PeopleBatchResultsExclusions withCategory(Optional category) { + Utils.checkNotNull(category, "category"); + this.category = category; + return this; + } + + /** + * Human-readable explanation for exclusion. + */ + public PeopleBatchResultsExclusions withMessage(String message) { + Utils.checkNotNull(message, "message"); + this.message = Optional.ofNullable(message); + return this; + } + + + /** + * Human-readable explanation for exclusion. + */ + public PeopleBatchResultsExclusions withMessage(Optional message) { + Utils.checkNotNull(message, "message"); + this.message = message; + return this; + } + + /** + * Number of items affected by this exclusion. + */ + public PeopleBatchResultsExclusions withItemCount(long itemCount) { + Utils.checkNotNull(itemCount, "itemCount"); + this.itemCount = Optional.ofNullable(itemCount); + return this; + } + + + /** + * Number of items affected by this exclusion. + */ + public PeopleBatchResultsExclusions withItemCount(Optional itemCount) { + Utils.checkNotNull(itemCount, "itemCount"); + this.itemCount = itemCount; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PeopleBatchResultsExclusions other = (PeopleBatchResultsExclusions) o; + return + Utils.enhancedDeepEquals(this.externalId, other.externalId) && + Utils.enhancedDeepEquals(this.category, other.category) && + Utils.enhancedDeepEquals(this.message, other.message) && + Utils.enhancedDeepEquals(this.itemCount, other.itemCount); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + externalId, category, message, + itemCount); + } + + @Override + public String toString() { + return Utils.toString(PeopleBatchResultsExclusions.class, + "externalId", externalId, + "category", category, + "message", message, + "itemCount", itemCount); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional externalId = Optional.empty(); + + private Optional category = Optional.empty(); + + private Optional message = Optional.empty(); + + private Optional itemCount = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * The external ID of the excluded item(s). + */ + public Builder externalId(String externalId) { + Utils.checkNotNull(externalId, "externalId"); + this.externalId = Optional.ofNullable(externalId); + return this; + } + + /** + * The external ID of the excluded item(s). + */ + public Builder externalId(Optional externalId) { + Utils.checkNotNull(externalId, "externalId"); + this.externalId = externalId; + return this; + } + + + /** + * The exclusion category. + */ + public Builder category(String category) { + Utils.checkNotNull(category, "category"); + this.category = Optional.ofNullable(category); + return this; + } + + /** + * The exclusion category. + */ + public Builder category(Optional category) { + Utils.checkNotNull(category, "category"); + this.category = category; + return this; + } + + + /** + * Human-readable explanation for exclusion. + */ + public Builder message(String message) { + Utils.checkNotNull(message, "message"); + this.message = Optional.ofNullable(message); + return this; + } + + /** + * Human-readable explanation for exclusion. + */ + public Builder message(Optional message) { + Utils.checkNotNull(message, "message"); + this.message = message; + return this; + } + + + /** + * Number of items affected by this exclusion. + */ + public Builder itemCount(long itemCount) { + Utils.checkNotNull(itemCount, "itemCount"); + this.itemCount = Optional.ofNullable(itemCount); + return this; + } + + /** + * Number of items affected by this exclusion. + */ + public Builder itemCount(Optional itemCount) { + Utils.checkNotNull(itemCount, "itemCount"); + this.itemCount = itemCount; + return this; + } + + public PeopleBatchResultsExclusions build() { + + return new PeopleBatchResultsExclusions( + externalId, category, message, + itemCount); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PeopleBatchResultsResults.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PeopleBatchResultsResults.java new file mode 100644 index 000000000..25ef93818 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/PeopleBatchResultsResults.java @@ -0,0 +1,500 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Long; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.List; +import java.util.Optional; +import org.openapitools.jackson.nullable.JsonNullable; + + +public class PeopleBatchResultsResults { + /** + * The external ID provided in the batch request. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("external_id") + private Optional externalId; + + /** + * The type of person created. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("role") + private Optional role; + + /** + * The status of this batch item. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("status") + private Optional status; + + /** + * The index of this item in the original batch request. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("idx") + private Optional idx; + + /** + * The UUID of the created person. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("uuid") + private Optional uuid; + + /** + * The UUID of the created employee (if role is employee). + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("employee_uuid") + private Optional employeeUuid; + + /** + * Errors encountered while processing this batch item. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("errors") + private JsonNullable> errors; + + @JsonCreator + public PeopleBatchResultsResults( + @JsonProperty("external_id") Optional externalId, + @JsonProperty("role") Optional role, + @JsonProperty("status") Optional status, + @JsonProperty("idx") Optional idx, + @JsonProperty("uuid") Optional uuid, + @JsonProperty("employee_uuid") Optional employeeUuid, + @JsonProperty("errors") JsonNullable> errors) { + Utils.checkNotNull(externalId, "externalId"); + Utils.checkNotNull(role, "role"); + Utils.checkNotNull(status, "status"); + Utils.checkNotNull(idx, "idx"); + Utils.checkNotNull(uuid, "uuid"); + Utils.checkNotNull(employeeUuid, "employeeUuid"); + Utils.checkNotNull(errors, "errors"); + this.externalId = externalId; + this.role = role; + this.status = status; + this.idx = idx; + this.uuid = uuid; + this.employeeUuid = employeeUuid; + this.errors = errors; + } + + public PeopleBatchResultsResults() { + this(Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty(), Optional.empty(), Optional.empty(), + JsonNullable.undefined()); + } + + /** + * The external ID provided in the batch request. + */ + @JsonIgnore + public Optional externalId() { + return externalId; + } + + /** + * The type of person created. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional role() { + return (Optional) role; + } + + /** + * The status of this batch item. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional status() { + return (Optional) status; + } + + /** + * The index of this item in the original batch request. + */ + @JsonIgnore + public Optional idx() { + return idx; + } + + /** + * The UUID of the created person. + */ + @JsonIgnore + public Optional uuid() { + return uuid; + } + + /** + * The UUID of the created employee (if role is employee). + */ + @JsonIgnore + public Optional employeeUuid() { + return employeeUuid; + } + + /** + * Errors encountered while processing this batch item. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public JsonNullable> errors() { + return (JsonNullable>) errors; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * The external ID provided in the batch request. + */ + public PeopleBatchResultsResults withExternalId(String externalId) { + Utils.checkNotNull(externalId, "externalId"); + this.externalId = Optional.ofNullable(externalId); + return this; + } + + + /** + * The external ID provided in the batch request. + */ + public PeopleBatchResultsResults withExternalId(Optional externalId) { + Utils.checkNotNull(externalId, "externalId"); + this.externalId = externalId; + return this; + } + + /** + * The type of person created. + */ + public PeopleBatchResultsResults withRole(Role role) { + Utils.checkNotNull(role, "role"); + this.role = Optional.ofNullable(role); + return this; + } + + + /** + * The type of person created. + */ + public PeopleBatchResultsResults withRole(Optional role) { + Utils.checkNotNull(role, "role"); + this.role = role; + return this; + } + + /** + * The status of this batch item. + */ + public PeopleBatchResultsResults withStatus(PeopleBatchResultsResultsStatus status) { + Utils.checkNotNull(status, "status"); + this.status = Optional.ofNullable(status); + return this; + } + + + /** + * The status of this batch item. + */ + public PeopleBatchResultsResults withStatus(Optional status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + /** + * The index of this item in the original batch request. + */ + public PeopleBatchResultsResults withIdx(long idx) { + Utils.checkNotNull(idx, "idx"); + this.idx = Optional.ofNullable(idx); + return this; + } + + + /** + * The index of this item in the original batch request. + */ + public PeopleBatchResultsResults withIdx(Optional idx) { + Utils.checkNotNull(idx, "idx"); + this.idx = idx; + return this; + } + + /** + * The UUID of the created person. + */ + public PeopleBatchResultsResults withUuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = Optional.ofNullable(uuid); + return this; + } + + + /** + * The UUID of the created person. + */ + public PeopleBatchResultsResults withUuid(Optional uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + /** + * The UUID of the created employee (if role is employee). + */ + public PeopleBatchResultsResults withEmployeeUuid(String employeeUuid) { + Utils.checkNotNull(employeeUuid, "employeeUuid"); + this.employeeUuid = Optional.ofNullable(employeeUuid); + return this; + } + + + /** + * The UUID of the created employee (if role is employee). + */ + public PeopleBatchResultsResults withEmployeeUuid(Optional employeeUuid) { + Utils.checkNotNull(employeeUuid, "employeeUuid"); + this.employeeUuid = employeeUuid; + return this; + } + + /** + * Errors encountered while processing this batch item. + */ + public PeopleBatchResultsResults withErrors(List errors) { + Utils.checkNotNull(errors, "errors"); + this.errors = JsonNullable.of(errors); + return this; + } + + /** + * Errors encountered while processing this batch item. + */ + public PeopleBatchResultsResults withErrors(JsonNullable> errors) { + Utils.checkNotNull(errors, "errors"); + this.errors = errors; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PeopleBatchResultsResults other = (PeopleBatchResultsResults) o; + return + Utils.enhancedDeepEquals(this.externalId, other.externalId) && + Utils.enhancedDeepEquals(this.role, other.role) && + Utils.enhancedDeepEquals(this.status, other.status) && + Utils.enhancedDeepEquals(this.idx, other.idx) && + Utils.enhancedDeepEquals(this.uuid, other.uuid) && + Utils.enhancedDeepEquals(this.employeeUuid, other.employeeUuid) && + Utils.enhancedDeepEquals(this.errors, other.errors); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + externalId, role, status, + idx, uuid, employeeUuid, + errors); + } + + @Override + public String toString() { + return Utils.toString(PeopleBatchResultsResults.class, + "externalId", externalId, + "role", role, + "status", status, + "idx", idx, + "uuid", uuid, + "employeeUuid", employeeUuid, + "errors", errors); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional externalId = Optional.empty(); + + private Optional role = Optional.empty(); + + private Optional status = Optional.empty(); + + private Optional idx = Optional.empty(); + + private Optional uuid = Optional.empty(); + + private Optional employeeUuid = Optional.empty(); + + private JsonNullable> errors = JsonNullable.undefined(); + + private Builder() { + // force use of static builder() method + } + + + /** + * The external ID provided in the batch request. + */ + public Builder externalId(String externalId) { + Utils.checkNotNull(externalId, "externalId"); + this.externalId = Optional.ofNullable(externalId); + return this; + } + + /** + * The external ID provided in the batch request. + */ + public Builder externalId(Optional externalId) { + Utils.checkNotNull(externalId, "externalId"); + this.externalId = externalId; + return this; + } + + + /** + * The type of person created. + */ + public Builder role(Role role) { + Utils.checkNotNull(role, "role"); + this.role = Optional.ofNullable(role); + return this; + } + + /** + * The type of person created. + */ + public Builder role(Optional role) { + Utils.checkNotNull(role, "role"); + this.role = role; + return this; + } + + + /** + * The status of this batch item. + */ + public Builder status(PeopleBatchResultsResultsStatus status) { + Utils.checkNotNull(status, "status"); + this.status = Optional.ofNullable(status); + return this; + } + + /** + * The status of this batch item. + */ + public Builder status(Optional status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + + /** + * The index of this item in the original batch request. + */ + public Builder idx(long idx) { + Utils.checkNotNull(idx, "idx"); + this.idx = Optional.ofNullable(idx); + return this; + } + + /** + * The index of this item in the original batch request. + */ + public Builder idx(Optional idx) { + Utils.checkNotNull(idx, "idx"); + this.idx = idx; + return this; + } + + + /** + * The UUID of the created person. + */ + public Builder uuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = Optional.ofNullable(uuid); + return this; + } + + /** + * The UUID of the created person. + */ + public Builder uuid(Optional uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + + /** + * The UUID of the created employee (if role is employee). + */ + public Builder employeeUuid(String employeeUuid) { + Utils.checkNotNull(employeeUuid, "employeeUuid"); + this.employeeUuid = Optional.ofNullable(employeeUuid); + return this; + } + + /** + * The UUID of the created employee (if role is employee). + */ + public Builder employeeUuid(Optional employeeUuid) { + Utils.checkNotNull(employeeUuid, "employeeUuid"); + this.employeeUuid = employeeUuid; + return this; + } + + + /** + * Errors encountered while processing this batch item. + */ + public Builder errors(List errors) { + Utils.checkNotNull(errors, "errors"); + this.errors = JsonNullable.of(errors); + return this; + } + + /** + * Errors encountered while processing this batch item. + */ + public Builder errors(JsonNullable> errors) { + Utils.checkNotNull(errors, "errors"); + this.errors = errors; + return this; + } + + public PeopleBatchResultsResults build() { + + return new PeopleBatchResultsResults( + externalId, role, status, + idx, uuid, employeeUuid, + errors); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/RecipientType.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/RecipientType.java index 87c0bd731..432c1a8ce 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/RecipientType.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/RecipientType.java @@ -8,13 +8,7 @@ import java.util.Objects; import java.util.Optional; -/** - * RecipientType - * - *

    The type of recipient associated with the document (will be `Contractor` for Contractor Documents) - */ public enum RecipientType { - COMPANY("Company"), EMPLOYEE("Employee"), CONTRACTOR("Contractor"); diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Rehire.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Rehire.java index 1be53dac4..01f94d776 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Rehire.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Rehire.java @@ -53,7 +53,7 @@ public class Rehire { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("employment_status") - private Optional employmentStatus; + private Optional employmentStatus; /** * Whether the employee is a two percent shareholder of the company. This field only applies to @@ -83,7 +83,7 @@ public Rehire( @JsonProperty("effective_date") Optional effectiveDate, @JsonProperty("file_new_hire_report") Optional fileNewHireReport, @JsonProperty("work_location_uuid") Optional workLocationUuid, - @JsonProperty("employment_status") Optional employmentStatus, + @JsonProperty("employment_status") Optional employmentStatus, @JsonProperty("two_percent_shareholder") Optional twoPercentShareholder, @JsonProperty("employee_uuid") Optional employeeUuid, @JsonProperty("active") Optional active) { @@ -151,8 +151,8 @@ public Optional workLocationUuid() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional employmentStatus() { - return (Optional) employmentStatus; + public Optional employmentStatus() { + return (Optional) employmentStatus; } /** @@ -269,7 +269,7 @@ public Rehire withWorkLocationUuid(Optional workLocationUuid) { * The employee's employment status. Supplying an invalid option will set the employment_status to * *not_set*. */ - public Rehire withEmploymentStatus(EmploymentStatus employmentStatus) { + public Rehire withEmploymentStatus(RehireEmploymentStatus employmentStatus) { Utils.checkNotNull(employmentStatus, "employmentStatus"); this.employmentStatus = Optional.ofNullable(employmentStatus); return this; @@ -280,7 +280,7 @@ public Rehire withEmploymentStatus(EmploymentStatus employmentStatus) { * The employee's employment status. Supplying an invalid option will set the employment_status to * *not_set*. */ - public Rehire withEmploymentStatus(Optional employmentStatus) { + public Rehire withEmploymentStatus(Optional employmentStatus) { Utils.checkNotNull(employmentStatus, "employmentStatus"); this.employmentStatus = employmentStatus; return this; @@ -397,7 +397,7 @@ public final static class Builder { private Optional workLocationUuid = Optional.empty(); - private Optional employmentStatus = Optional.empty(); + private Optional employmentStatus = Optional.empty(); private Optional twoPercentShareholder = Optional.empty(); @@ -494,7 +494,7 @@ public Builder workLocationUuid(Optional workLocationUuid) { * The employee's employment status. Supplying an invalid option will set the employment_status to * *not_set*. */ - public Builder employmentStatus(EmploymentStatus employmentStatus) { + public Builder employmentStatus(RehireEmploymentStatus employmentStatus) { Utils.checkNotNull(employmentStatus, "employmentStatus"); this.employmentStatus = Optional.ofNullable(employmentStatus); return this; @@ -504,7 +504,7 @@ public Builder employmentStatus(EmploymentStatus employmentStatus) { * The employee's employment status. Supplying an invalid option will set the employment_status to * *not_set*. */ - public Builder employmentStatus(Optional employmentStatus) { + public Builder employmentStatus(Optional employmentStatus) { Utils.checkNotNull(employmentStatus, "employmentStatus"); this.employmentStatus = employmentStatus; return this; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/RehireEmploymentStatus.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/RehireEmploymentStatus.java new file mode 100644 index 000000000..d1503b651 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/RehireEmploymentStatus.java @@ -0,0 +1,45 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * RehireEmploymentStatus + * + *

    The employee's employment status. Supplying an invalid option will set the employment_status to + * *not_set*. + */ +public enum RehireEmploymentStatus { + PART_TIME("part_time"), + FULL_TIME("full_time"), + PART_TIME_ELIGIBLE("part_time_eligible"), + VARIABLE("variable"), + SEASONAL("seasonal"), + NOT_SET("not_set"); + + @JsonValue + private final String value; + + RehireEmploymentStatus(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (RehireEmploymentStatus o: RehireEmploymentStatus.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ReportType.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ReportType.java new file mode 100644 index 000000000..788b6ed31 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ReportType.java @@ -0,0 +1,39 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * ReportType + * + *

    Identifies this batch item as a custom report. + */ +public enum ReportType { + CUSTOM_REPORT("custom_report"); + + @JsonValue + private final String value; + + ReportType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (ReportType o: ReportType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Results.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Results.java index 2ceaac961..e3682a25b 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Results.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Results.java @@ -15,118 +15,64 @@ import java.lang.SuppressWarnings; import java.util.List; import java.util.Optional; -import org.openapitools.jackson.nullable.JsonNullable; public class Results { /** - * The external ID provided in the batch request. - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("external_id") - private Optional externalId; - - /** - * The type of person created. - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("role") - private Optional role; - - /** - * The status of this batch item. - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("status") - private Optional status; - - /** - * The index of this item in the original batch request. + * The index of this payroll in the original POST batch array. */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("idx") private Optional idx; /** - * The UUID of the created person. + * The UUID of the payroll. */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("uuid") private Optional uuid; /** - * The UUID of the created employee (if role is employee). + * The outcome of cancelling this payroll. A cancel is atomic — there is no per-payroll + * `partial_success`. + * - `success`: the payroll was cancelled, or required no action (already cancelled / never run) + * - `failed`: the payroll could not be cancelled; see `errors` */ @JsonInclude(Include.NON_ABSENT) - @JsonProperty("employee_uuid") - private Optional employeeUuid; + @JsonProperty("status") + private Optional status; /** - * Errors encountered while processing this batch item. + * Present only when `status` is `failed`. A cancel is a single atomic operation, so this is a flat + * array with exactly one error. */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("errors") - private JsonNullable> errors; + private Optional> errors; @JsonCreator public Results( - @JsonProperty("external_id") Optional externalId, - @JsonProperty("role") Optional role, - @JsonProperty("status") Optional status, @JsonProperty("idx") Optional idx, @JsonProperty("uuid") Optional uuid, - @JsonProperty("employee_uuid") Optional employeeUuid, - @JsonProperty("errors") JsonNullable> errors) { - Utils.checkNotNull(externalId, "externalId"); - Utils.checkNotNull(role, "role"); - Utils.checkNotNull(status, "status"); + @JsonProperty("status") Optional status, + @JsonProperty("errors") Optional> errors) { Utils.checkNotNull(idx, "idx"); Utils.checkNotNull(uuid, "uuid"); - Utils.checkNotNull(employeeUuid, "employeeUuid"); + Utils.checkNotNull(status, "status"); Utils.checkNotNull(errors, "errors"); - this.externalId = externalId; - this.role = role; - this.status = status; this.idx = idx; this.uuid = uuid; - this.employeeUuid = employeeUuid; + this.status = status; this.errors = errors; } public Results() { this(Optional.empty(), Optional.empty(), Optional.empty(), - Optional.empty(), Optional.empty(), Optional.empty(), - JsonNullable.undefined()); - } - - /** - * The external ID provided in the batch request. - */ - @JsonIgnore - public Optional externalId() { - return externalId; - } - - /** - * The type of person created. - */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional role() { - return (Optional) role; + Optional.empty()); } /** - * The status of this batch item. - */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional status() { - return (Optional) status; - } - - /** - * The index of this item in the original batch request. + * The index of this payroll in the original POST batch array. */ @JsonIgnore public Optional idx() { @@ -134,7 +80,7 @@ public Optional idx() { } /** - * The UUID of the created person. + * The UUID of the payroll. */ @JsonIgnore public Optional uuid() { @@ -142,20 +88,25 @@ public Optional uuid() { } /** - * The UUID of the created employee (if role is employee). + * The outcome of cancelling this payroll. A cancel is atomic — there is no per-payroll + * `partial_success`. + * - `success`: the payroll was cancelled, or required no action (already cancelled / never run) + * - `failed`: the payroll could not be cancelled; see `errors` */ + @SuppressWarnings("unchecked") @JsonIgnore - public Optional employeeUuid() { - return employeeUuid; + public Optional status() { + return (Optional) status; } /** - * Errors encountered while processing this batch item. + * Present only when `status` is `failed`. A cancel is a single atomic operation, so this is a flat + * array with exactly one error. */ @SuppressWarnings("unchecked") @JsonIgnore - public JsonNullable> errors() { - return (JsonNullable>) errors; + public Optional> errors() { + return (Optional>) errors; } public static Builder builder() { @@ -164,64 +115,7 @@ public static Builder builder() { /** - * The external ID provided in the batch request. - */ - public Results withExternalId(String externalId) { - Utils.checkNotNull(externalId, "externalId"); - this.externalId = Optional.ofNullable(externalId); - return this; - } - - - /** - * The external ID provided in the batch request. - */ - public Results withExternalId(Optional externalId) { - Utils.checkNotNull(externalId, "externalId"); - this.externalId = externalId; - return this; - } - - /** - * The type of person created. - */ - public Results withRole(Role role) { - Utils.checkNotNull(role, "role"); - this.role = Optional.ofNullable(role); - return this; - } - - - /** - * The type of person created. - */ - public Results withRole(Optional role) { - Utils.checkNotNull(role, "role"); - this.role = role; - return this; - } - - /** - * The status of this batch item. - */ - public Results withStatus(PeopleBatchResultsResultsStatus status) { - Utils.checkNotNull(status, "status"); - this.status = Optional.ofNullable(status); - return this; - } - - - /** - * The status of this batch item. - */ - public Results withStatus(Optional status) { - Utils.checkNotNull(status, "status"); - this.status = status; - return this; - } - - /** - * The index of this item in the original batch request. + * The index of this payroll in the original POST batch array. */ public Results withIdx(long idx) { Utils.checkNotNull(idx, "idx"); @@ -231,7 +125,7 @@ public Results withIdx(long idx) { /** - * The index of this item in the original batch request. + * The index of this payroll in the original POST batch array. */ public Results withIdx(Optional idx) { Utils.checkNotNull(idx, "idx"); @@ -240,7 +134,7 @@ public Results withIdx(Optional idx) { } /** - * The UUID of the created person. + * The UUID of the payroll. */ public Results withUuid(String uuid) { Utils.checkNotNull(uuid, "uuid"); @@ -250,7 +144,7 @@ public Results withUuid(String uuid) { /** - * The UUID of the created person. + * The UUID of the payroll. */ public Results withUuid(Optional uuid) { Utils.checkNotNull(uuid, "uuid"); @@ -259,37 +153,46 @@ public Results withUuid(Optional uuid) { } /** - * The UUID of the created employee (if role is employee). + * The outcome of cancelling this payroll. A cancel is atomic — there is no per-payroll + * `partial_success`. + * - `success`: the payroll was cancelled, or required no action (already cancelled / never run) + * - `failed`: the payroll could not be cancelled; see `errors` */ - public Results withEmployeeUuid(String employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = Optional.ofNullable(employeeUuid); + public Results withStatus(PayrollBatchResultsResultsStatus status) { + Utils.checkNotNull(status, "status"); + this.status = Optional.ofNullable(status); return this; } /** - * The UUID of the created employee (if role is employee). + * The outcome of cancelling this payroll. A cancel is atomic — there is no per-payroll + * `partial_success`. + * - `success`: the payroll was cancelled, or required no action (already cancelled / never run) + * - `failed`: the payroll could not be cancelled; see `errors` */ - public Results withEmployeeUuid(Optional employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = employeeUuid; + public Results withStatus(Optional status) { + Utils.checkNotNull(status, "status"); + this.status = status; return this; } /** - * Errors encountered while processing this batch item. + * Present only when `status` is `failed`. A cancel is a single atomic operation, so this is a flat + * array with exactly one error. */ - public Results withErrors(List errors) { + public Results withErrors(List errors) { Utils.checkNotNull(errors, "errors"); - this.errors = JsonNullable.of(errors); + this.errors = Optional.ofNullable(errors); return this; } + /** - * Errors encountered while processing this batch item. + * Present only when `status` is `failed`. A cancel is a single atomic operation, so this is a flat + * array with exactly one error. */ - public Results withErrors(JsonNullable> errors) { + public Results withErrors(Optional> errors) { Utils.checkNotNull(errors, "errors"); this.errors = errors; return this; @@ -305,51 +208,38 @@ public boolean equals(java.lang.Object o) { } Results other = (Results) o; return - Utils.enhancedDeepEquals(this.externalId, other.externalId) && - Utils.enhancedDeepEquals(this.role, other.role) && - Utils.enhancedDeepEquals(this.status, other.status) && Utils.enhancedDeepEquals(this.idx, other.idx) && Utils.enhancedDeepEquals(this.uuid, other.uuid) && - Utils.enhancedDeepEquals(this.employeeUuid, other.employeeUuid) && + Utils.enhancedDeepEquals(this.status, other.status) && Utils.enhancedDeepEquals(this.errors, other.errors); } @Override public int hashCode() { return Utils.enhancedHash( - externalId, role, status, - idx, uuid, employeeUuid, + idx, uuid, status, errors); } @Override public String toString() { return Utils.toString(Results.class, - "externalId", externalId, - "role", role, - "status", status, "idx", idx, "uuid", uuid, - "employeeUuid", employeeUuid, + "status", status, "errors", errors); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private Optional externalId = Optional.empty(); - - private Optional role = Optional.empty(); - - private Optional status = Optional.empty(); - private Optional idx = Optional.empty(); private Optional uuid = Optional.empty(); - private Optional employeeUuid = Optional.empty(); + private Optional status = Optional.empty(); - private JsonNullable> errors = JsonNullable.undefined(); + private Optional> errors = Optional.empty(); private Builder() { // force use of static builder() method @@ -357,64 +247,7 @@ private Builder() { /** - * The external ID provided in the batch request. - */ - public Builder externalId(String externalId) { - Utils.checkNotNull(externalId, "externalId"); - this.externalId = Optional.ofNullable(externalId); - return this; - } - - /** - * The external ID provided in the batch request. - */ - public Builder externalId(Optional externalId) { - Utils.checkNotNull(externalId, "externalId"); - this.externalId = externalId; - return this; - } - - - /** - * The type of person created. - */ - public Builder role(Role role) { - Utils.checkNotNull(role, "role"); - this.role = Optional.ofNullable(role); - return this; - } - - /** - * The type of person created. - */ - public Builder role(Optional role) { - Utils.checkNotNull(role, "role"); - this.role = role; - return this; - } - - - /** - * The status of this batch item. - */ - public Builder status(PeopleBatchResultsResultsStatus status) { - Utils.checkNotNull(status, "status"); - this.status = Optional.ofNullable(status); - return this; - } - - /** - * The status of this batch item. - */ - public Builder status(Optional status) { - Utils.checkNotNull(status, "status"); - this.status = status; - return this; - } - - - /** - * The index of this item in the original batch request. + * The index of this payroll in the original POST batch array. */ public Builder idx(long idx) { Utils.checkNotNull(idx, "idx"); @@ -423,7 +256,7 @@ public Builder idx(long idx) { } /** - * The index of this item in the original batch request. + * The index of this payroll in the original POST batch array. */ public Builder idx(Optional idx) { Utils.checkNotNull(idx, "idx"); @@ -433,7 +266,7 @@ public Builder idx(Optional idx) { /** - * The UUID of the created person. + * The UUID of the payroll. */ public Builder uuid(String uuid) { Utils.checkNotNull(uuid, "uuid"); @@ -442,7 +275,7 @@ public Builder uuid(String uuid) { } /** - * The UUID of the created person. + * The UUID of the payroll. */ public Builder uuid(Optional uuid) { Utils.checkNotNull(uuid, "uuid"); @@ -452,37 +285,45 @@ public Builder uuid(Optional uuid) { /** - * The UUID of the created employee (if role is employee). + * The outcome of cancelling this payroll. A cancel is atomic — there is no per-payroll + * `partial_success`. + * - `success`: the payroll was cancelled, or required no action (already cancelled / never run) + * - `failed`: the payroll could not be cancelled; see `errors` */ - public Builder employeeUuid(String employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = Optional.ofNullable(employeeUuid); + public Builder status(PayrollBatchResultsResultsStatus status) { + Utils.checkNotNull(status, "status"); + this.status = Optional.ofNullable(status); return this; } /** - * The UUID of the created employee (if role is employee). + * The outcome of cancelling this payroll. A cancel is atomic — there is no per-payroll + * `partial_success`. + * - `success`: the payroll was cancelled, or required no action (already cancelled / never run) + * - `failed`: the payroll could not be cancelled; see `errors` */ - public Builder employeeUuid(Optional employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = employeeUuid; + public Builder status(Optional status) { + Utils.checkNotNull(status, "status"); + this.status = status; return this; } /** - * Errors encountered while processing this batch item. + * Present only when `status` is `failed`. A cancel is a single atomic operation, so this is a flat + * array with exactly one error. */ - public Builder errors(List errors) { + public Builder errors(List errors) { Utils.checkNotNull(errors, "errors"); - this.errors = JsonNullable.of(errors); + this.errors = Optional.ofNullable(errors); return this; } /** - * Errors encountered while processing this batch item. + * Present only when `status` is `failed`. A cancel is a single atomic operation, so this is a flat + * array with exactly one error. */ - public Builder errors(JsonNullable> errors) { + public Builder errors(Optional> errors) { Utils.checkNotNull(errors, "errors"); this.errors = errors; return this; @@ -491,8 +332,7 @@ public Builder errors(JsonNullable> err public Results build() { return new Results( - externalId, role, status, - idx, uuid, employeeUuid, + idx, uuid, status, errors); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ReverseWireTransaction.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ReverseWireTransaction.java new file mode 100644 index 000000000..8e5f82390 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ReverseWireTransaction.java @@ -0,0 +1,559 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import org.openapitools.jackson.nullable.JsonNullable; + +/** + * ReverseWireTransaction + * + *

    Representation of a reverse wire (drawdown) transaction. Reverse wires are debit transactions + * initiated by Gusto to pull funds from a partner's bank account to cover payroll or contractor + * payment obligations. + */ +public class ReverseWireTransaction { + /** + * Unique identifier of the company the reverse wire transaction belongs to + */ + @JsonProperty("company_uuid") + private String companyUuid; + + /** + * The amount of money moved by the reverse wire, as a decimal string. Always non-negative. + */ + @JsonProperty("amount") + private String amount; + + /** + * Current status of the reverse wire transaction. + * - `pending_processing`: The reverse wire has been initiated and is awaiting processing by the + * banking network. + * - `processed`: The reverse wire was successfully settled and funds have been received. + * - `rejected`: The reverse wire was rejected by the receiving bank (e.g. invalid account, + * insufficient funds). + * - `failed`: The reverse wire failed during processing due to a system or network error. + */ + @JsonProperty("status") + private ReverseWireTransactionStatus status; + + /** + * The direction of the payment. Reverse wires are always debits from the company's account. + */ + @JsonProperty("payment_direction") + private ReverseWireTransactionPaymentDirection paymentDirection; + + /** + * Name of the receiving bank. Null when the bank is not known. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("bank_name") + private JsonNullable bankName; + + /** + * The type of payment event this reverse wire is associated with. Null when the wire is not linked to + * a payroll or contractor payment. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("payment_event_type") + private JsonNullable paymentEventType; + + /** + * Unique identifier of the associated payroll or contractor payment. Null when the wire is not linked + * to a payment event. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("payment_event_uuid") + private JsonNullable paymentEventUuid; + + /** + * The check date of the associated payment event. Null when the wire is not linked to a payment event. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("payment_event_check_date") + private JsonNullable paymentEventCheckDate; + + /** + * The date the reverse wire record was created. + */ + @JsonProperty("created_at") + private String createdAt; + + @JsonCreator + public ReverseWireTransaction( + @JsonProperty("company_uuid") String companyUuid, + @JsonProperty("amount") String amount, + @JsonProperty("status") ReverseWireTransactionStatus status, + @JsonProperty("payment_direction") ReverseWireTransactionPaymentDirection paymentDirection, + @JsonProperty("bank_name") JsonNullable bankName, + @JsonProperty("payment_event_type") JsonNullable paymentEventType, + @JsonProperty("payment_event_uuid") JsonNullable paymentEventUuid, + @JsonProperty("payment_event_check_date") JsonNullable paymentEventCheckDate, + @JsonProperty("created_at") String createdAt) { + Utils.checkNotNull(companyUuid, "companyUuid"); + Utils.checkNotNull(amount, "amount"); + Utils.checkNotNull(status, "status"); + Utils.checkNotNull(paymentDirection, "paymentDirection"); + Utils.checkNotNull(bankName, "bankName"); + Utils.checkNotNull(paymentEventType, "paymentEventType"); + Utils.checkNotNull(paymentEventUuid, "paymentEventUuid"); + Utils.checkNotNull(paymentEventCheckDate, "paymentEventCheckDate"); + Utils.checkNotNull(createdAt, "createdAt"); + this.companyUuid = companyUuid; + this.amount = amount; + this.status = status; + this.paymentDirection = paymentDirection; + this.bankName = bankName; + this.paymentEventType = paymentEventType; + this.paymentEventUuid = paymentEventUuid; + this.paymentEventCheckDate = paymentEventCheckDate; + this.createdAt = createdAt; + } + + public ReverseWireTransaction( + String companyUuid, + String amount, + ReverseWireTransactionStatus status, + ReverseWireTransactionPaymentDirection paymentDirection, + String createdAt) { + this(companyUuid, amount, status, + paymentDirection, JsonNullable.undefined(), JsonNullable.undefined(), + JsonNullable.undefined(), JsonNullable.undefined(), createdAt); + } + + /** + * Unique identifier of the company the reverse wire transaction belongs to + */ + @JsonIgnore + public String companyUuid() { + return companyUuid; + } + + /** + * The amount of money moved by the reverse wire, as a decimal string. Always non-negative. + */ + @JsonIgnore + public String amount() { + return amount; + } + + /** + * Current status of the reverse wire transaction. + * - `pending_processing`: The reverse wire has been initiated and is awaiting processing by the + * banking network. + * - `processed`: The reverse wire was successfully settled and funds have been received. + * - `rejected`: The reverse wire was rejected by the receiving bank (e.g. invalid account, + * insufficient funds). + * - `failed`: The reverse wire failed during processing due to a system or network error. + */ + @JsonIgnore + public ReverseWireTransactionStatus status() { + return status; + } + + /** + * The direction of the payment. Reverse wires are always debits from the company's account. + */ + @JsonIgnore + public ReverseWireTransactionPaymentDirection paymentDirection() { + return paymentDirection; + } + + /** + * Name of the receiving bank. Null when the bank is not known. + */ + @JsonIgnore + public JsonNullable bankName() { + return bankName; + } + + /** + * The type of payment event this reverse wire is associated with. Null when the wire is not linked to + * a payroll or contractor payment. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public JsonNullable paymentEventType() { + return (JsonNullable) paymentEventType; + } + + /** + * Unique identifier of the associated payroll or contractor payment. Null when the wire is not linked + * to a payment event. + */ + @JsonIgnore + public JsonNullable paymentEventUuid() { + return paymentEventUuid; + } + + /** + * The check date of the associated payment event. Null when the wire is not linked to a payment event. + */ + @JsonIgnore + public JsonNullable paymentEventCheckDate() { + return paymentEventCheckDate; + } + + /** + * The date the reverse wire record was created. + */ + @JsonIgnore + public String createdAt() { + return createdAt; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Unique identifier of the company the reverse wire transaction belongs to + */ + public ReverseWireTransaction withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + /** + * The amount of money moved by the reverse wire, as a decimal string. Always non-negative. + */ + public ReverseWireTransaction withAmount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + /** + * Current status of the reverse wire transaction. + * - `pending_processing`: The reverse wire has been initiated and is awaiting processing by the + * banking network. + * - `processed`: The reverse wire was successfully settled and funds have been received. + * - `rejected`: The reverse wire was rejected by the receiving bank (e.g. invalid account, + * insufficient funds). + * - `failed`: The reverse wire failed during processing due to a system or network error. + */ + public ReverseWireTransaction withStatus(ReverseWireTransactionStatus status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + /** + * The direction of the payment. Reverse wires are always debits from the company's account. + */ + public ReverseWireTransaction withPaymentDirection(ReverseWireTransactionPaymentDirection paymentDirection) { + Utils.checkNotNull(paymentDirection, "paymentDirection"); + this.paymentDirection = paymentDirection; + return this; + } + + /** + * Name of the receiving bank. Null when the bank is not known. + */ + public ReverseWireTransaction withBankName(String bankName) { + Utils.checkNotNull(bankName, "bankName"); + this.bankName = JsonNullable.of(bankName); + return this; + } + + /** + * Name of the receiving bank. Null when the bank is not known. + */ + public ReverseWireTransaction withBankName(JsonNullable bankName) { + Utils.checkNotNull(bankName, "bankName"); + this.bankName = bankName; + return this; + } + + /** + * The type of payment event this reverse wire is associated with. Null when the wire is not linked to + * a payroll or contractor payment. + */ + public ReverseWireTransaction withPaymentEventType(ReverseWireTransactionPaymentEventType paymentEventType) { + Utils.checkNotNull(paymentEventType, "paymentEventType"); + this.paymentEventType = JsonNullable.of(paymentEventType); + return this; + } + + /** + * The type of payment event this reverse wire is associated with. Null when the wire is not linked to + * a payroll or contractor payment. + */ + public ReverseWireTransaction withPaymentEventType(JsonNullable paymentEventType) { + Utils.checkNotNull(paymentEventType, "paymentEventType"); + this.paymentEventType = paymentEventType; + return this; + } + + /** + * Unique identifier of the associated payroll or contractor payment. Null when the wire is not linked + * to a payment event. + */ + public ReverseWireTransaction withPaymentEventUuid(String paymentEventUuid) { + Utils.checkNotNull(paymentEventUuid, "paymentEventUuid"); + this.paymentEventUuid = JsonNullable.of(paymentEventUuid); + return this; + } + + /** + * Unique identifier of the associated payroll or contractor payment. Null when the wire is not linked + * to a payment event. + */ + public ReverseWireTransaction withPaymentEventUuid(JsonNullable paymentEventUuid) { + Utils.checkNotNull(paymentEventUuid, "paymentEventUuid"); + this.paymentEventUuid = paymentEventUuid; + return this; + } + + /** + * The check date of the associated payment event. Null when the wire is not linked to a payment event. + */ + public ReverseWireTransaction withPaymentEventCheckDate(String paymentEventCheckDate) { + Utils.checkNotNull(paymentEventCheckDate, "paymentEventCheckDate"); + this.paymentEventCheckDate = JsonNullable.of(paymentEventCheckDate); + return this; + } + + /** + * The check date of the associated payment event. Null when the wire is not linked to a payment event. + */ + public ReverseWireTransaction withPaymentEventCheckDate(JsonNullable paymentEventCheckDate) { + Utils.checkNotNull(paymentEventCheckDate, "paymentEventCheckDate"); + this.paymentEventCheckDate = paymentEventCheckDate; + return this; + } + + /** + * The date the reverse wire record was created. + */ + public ReverseWireTransaction withCreatedAt(String createdAt) { + Utils.checkNotNull(createdAt, "createdAt"); + this.createdAt = createdAt; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + ReverseWireTransaction other = (ReverseWireTransaction) o; + return + Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && + Utils.enhancedDeepEquals(this.amount, other.amount) && + Utils.enhancedDeepEquals(this.status, other.status) && + Utils.enhancedDeepEquals(this.paymentDirection, other.paymentDirection) && + Utils.enhancedDeepEquals(this.bankName, other.bankName) && + Utils.enhancedDeepEquals(this.paymentEventType, other.paymentEventType) && + Utils.enhancedDeepEquals(this.paymentEventUuid, other.paymentEventUuid) && + Utils.enhancedDeepEquals(this.paymentEventCheckDate, other.paymentEventCheckDate) && + Utils.enhancedDeepEquals(this.createdAt, other.createdAt); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + companyUuid, amount, status, + paymentDirection, bankName, paymentEventType, + paymentEventUuid, paymentEventCheckDate, createdAt); + } + + @Override + public String toString() { + return Utils.toString(ReverseWireTransaction.class, + "companyUuid", companyUuid, + "amount", amount, + "status", status, + "paymentDirection", paymentDirection, + "bankName", bankName, + "paymentEventType", paymentEventType, + "paymentEventUuid", paymentEventUuid, + "paymentEventCheckDate", paymentEventCheckDate, + "createdAt", createdAt); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String companyUuid; + + private String amount; + + private ReverseWireTransactionStatus status; + + private ReverseWireTransactionPaymentDirection paymentDirection; + + private JsonNullable bankName = JsonNullable.undefined(); + + private JsonNullable paymentEventType = JsonNullable.undefined(); + + private JsonNullable paymentEventUuid = JsonNullable.undefined(); + + private JsonNullable paymentEventCheckDate = JsonNullable.undefined(); + + private String createdAt; + + private Builder() { + // force use of static builder() method + } + + + /** + * Unique identifier of the company the reverse wire transaction belongs to + */ + public Builder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + + /** + * The amount of money moved by the reverse wire, as a decimal string. Always non-negative. + */ + public Builder amount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + + /** + * Current status of the reverse wire transaction. + * - `pending_processing`: The reverse wire has been initiated and is awaiting processing by the + * banking network. + * - `processed`: The reverse wire was successfully settled and funds have been received. + * - `rejected`: The reverse wire was rejected by the receiving bank (e.g. invalid account, + * insufficient funds). + * - `failed`: The reverse wire failed during processing due to a system or network error. + */ + public Builder status(ReverseWireTransactionStatus status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + + /** + * The direction of the payment. Reverse wires are always debits from the company's account. + */ + public Builder paymentDirection(ReverseWireTransactionPaymentDirection paymentDirection) { + Utils.checkNotNull(paymentDirection, "paymentDirection"); + this.paymentDirection = paymentDirection; + return this; + } + + + /** + * Name of the receiving bank. Null when the bank is not known. + */ + public Builder bankName(String bankName) { + Utils.checkNotNull(bankName, "bankName"); + this.bankName = JsonNullable.of(bankName); + return this; + } + + /** + * Name of the receiving bank. Null when the bank is not known. + */ + public Builder bankName(JsonNullable bankName) { + Utils.checkNotNull(bankName, "bankName"); + this.bankName = bankName; + return this; + } + + + /** + * The type of payment event this reverse wire is associated with. Null when the wire is not linked to + * a payroll or contractor payment. + */ + public Builder paymentEventType(ReverseWireTransactionPaymentEventType paymentEventType) { + Utils.checkNotNull(paymentEventType, "paymentEventType"); + this.paymentEventType = JsonNullable.of(paymentEventType); + return this; + } + + /** + * The type of payment event this reverse wire is associated with. Null when the wire is not linked to + * a payroll or contractor payment. + */ + public Builder paymentEventType(JsonNullable paymentEventType) { + Utils.checkNotNull(paymentEventType, "paymentEventType"); + this.paymentEventType = paymentEventType; + return this; + } + + + /** + * Unique identifier of the associated payroll or contractor payment. Null when the wire is not linked + * to a payment event. + */ + public Builder paymentEventUuid(String paymentEventUuid) { + Utils.checkNotNull(paymentEventUuid, "paymentEventUuid"); + this.paymentEventUuid = JsonNullable.of(paymentEventUuid); + return this; + } + + /** + * Unique identifier of the associated payroll or contractor payment. Null when the wire is not linked + * to a payment event. + */ + public Builder paymentEventUuid(JsonNullable paymentEventUuid) { + Utils.checkNotNull(paymentEventUuid, "paymentEventUuid"); + this.paymentEventUuid = paymentEventUuid; + return this; + } + + + /** + * The check date of the associated payment event. Null when the wire is not linked to a payment event. + */ + public Builder paymentEventCheckDate(String paymentEventCheckDate) { + Utils.checkNotNull(paymentEventCheckDate, "paymentEventCheckDate"); + this.paymentEventCheckDate = JsonNullable.of(paymentEventCheckDate); + return this; + } + + /** + * The check date of the associated payment event. Null when the wire is not linked to a payment event. + */ + public Builder paymentEventCheckDate(JsonNullable paymentEventCheckDate) { + Utils.checkNotNull(paymentEventCheckDate, "paymentEventCheckDate"); + this.paymentEventCheckDate = paymentEventCheckDate; + return this; + } + + + /** + * The date the reverse wire record was created. + */ + public Builder createdAt(String createdAt) { + Utils.checkNotNull(createdAt, "createdAt"); + this.createdAt = createdAt; + return this; + } + + public ReverseWireTransaction build() { + + return new ReverseWireTransaction( + companyUuid, amount, status, + paymentDirection, bankName, paymentEventType, + paymentEventUuid, paymentEventCheckDate, createdAt); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ReverseWireTransactionPaymentDirection.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ReverseWireTransactionPaymentDirection.java new file mode 100644 index 000000000..2a9a7a940 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ReverseWireTransactionPaymentDirection.java @@ -0,0 +1,39 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * ReverseWireTransactionPaymentDirection + * + *

    The direction of the payment. Reverse wires are always debits from the company's account. + */ +public enum ReverseWireTransactionPaymentDirection { + DEBIT("debit"); + + @JsonValue + private final String value; + + ReverseWireTransactionPaymentDirection(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (ReverseWireTransactionPaymentDirection o: ReverseWireTransactionPaymentDirection.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ReverseWireTransactionPaymentEventType.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ReverseWireTransactionPaymentEventType.java new file mode 100644 index 000000000..21f45ff2e --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ReverseWireTransactionPaymentEventType.java @@ -0,0 +1,35 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +public enum ReverseWireTransactionPaymentEventType { + PAYROLL("Payroll"), + CONTRACTOR_PAYMENT("ContractorPayment"); + + @JsonValue + private final String value; + + ReverseWireTransactionPaymentEventType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (ReverseWireTransactionPaymentEventType o: ReverseWireTransactionPaymentEventType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ReverseWireTransactionStatus.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ReverseWireTransactionStatus.java new file mode 100644 index 000000000..b465e18ee --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ReverseWireTransactionStatus.java @@ -0,0 +1,48 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * ReverseWireTransactionStatus + * + *

    Current status of the reverse wire transaction. + * - `pending_processing`: The reverse wire has been initiated and is awaiting processing by the + * banking network. + * - `processed`: The reverse wire was successfully settled and funds have been received. + * - `rejected`: The reverse wire was rejected by the receiving bank (e.g. invalid account, + * insufficient funds). + * - `failed`: The reverse wire failed during processing due to a system or network error. + */ +public enum ReverseWireTransactionStatus { + PENDING_PROCESSING("pending_processing"), + PROCESSED("processed"), + REJECTED("rejected"), + FAILED("failed"); + + @JsonValue + private final String value; + + ReverseWireTransactionStatus(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (ReverseWireTransactionStatus o: ReverseWireTransactionStatus.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ShowEmployees.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ShowEmployees.java index 04d789ae7..5abbb5bcb 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ShowEmployees.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ShowEmployees.java @@ -128,14 +128,14 @@ public class ShowEmployees { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("onboarding_status") - private JsonNullable onboardingStatus; + private JsonNullable onboardingStatus; /** * Configuration for an employee onboarding documents during onboarding */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("onboarding_documents_config") - private Optional onboardingDocumentsConfig; + private Optional onboardingDocumentsConfig; @JsonInclude(Include.NON_ABSENT) @@ -199,7 +199,7 @@ public class ShowEmployees { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("payment_method") - private Optional paymentMethod; + private Optional paymentMethod; /** * The current employment status of the employee. Full-time employees work 30+ hours per week. @@ -211,7 +211,7 @@ public class ShowEmployees { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("current_employment_status") - private JsonNullable currentEmploymentStatus; + private JsonNullable currentEmploymentStatus; @JsonInclude(Include.NON_ABSENT) @@ -276,7 +276,7 @@ public class ShowEmployees { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("member_portal_invitation_status") - private JsonNullable memberPortalInvitationStatus; + private JsonNullable memberPortalInvitationStatus; /** * Whether an external partner portal invitation webhook has been sent for this employee. Only included @@ -315,8 +315,8 @@ public ShowEmployees( @JsonProperty("two_percent_shareholder") JsonNullable twoPercentShareholder, @JsonProperty("work_email") JsonNullable workEmail, @JsonProperty("onboarded") Optional onboarded, - @JsonProperty("onboarding_status") JsonNullable onboardingStatus, - @JsonProperty("onboarding_documents_config") Optional onboardingDocumentsConfig, + @JsonProperty("onboarding_status") JsonNullable onboardingStatus, + @JsonProperty("onboarding_documents_config") Optional onboardingDocumentsConfig, @JsonProperty("jobs") Optional> jobs, @JsonProperty("eligible_paid_time_off") Optional> eligiblePaidTimeOff, @JsonProperty("terminations") Optional> terminations, @@ -327,8 +327,8 @@ public ShowEmployees( @JsonProperty("ssn") Optional ssn, @JsonProperty("phone") JsonNullable phone, @JsonProperty("preferred_first_name") JsonNullable preferredFirstName, - @JsonProperty("payment_method") Optional paymentMethod, - @JsonProperty("current_employment_status") JsonNullable currentEmploymentStatus, + @JsonProperty("payment_method") Optional paymentMethod, + @JsonProperty("current_employment_status") JsonNullable currentEmploymentStatus, @JsonProperty("historical") Optional historical, @JsonProperty("employee_code") Optional employeeCode, @JsonProperty("department_uuid") JsonNullable departmentUuid, @@ -337,7 +337,7 @@ public ShowEmployees( @JsonProperty("hidden_ssn") Optional hiddenSsn, @JsonProperty("flsa_status") Optional flsaStatus, @JsonProperty("applicable_tax_ids") Optional> applicableTaxIds, - @JsonProperty("member_portal_invitation_status") JsonNullable memberPortalInvitationStatus, + @JsonProperty("member_portal_invitation_status") JsonNullable memberPortalInvitationStatus, @JsonProperty("partner_portal_invitation_sent") JsonNullable partnerPortalInvitationSent, @JsonProperty("current_home_address") Optional currentHomeAddress, @JsonProperty("all_home_addresses") Optional> allHomeAddresses) { @@ -550,8 +550,8 @@ public Optional onboarded() { */ @SuppressWarnings("unchecked") @JsonIgnore - public JsonNullable onboardingStatus() { - return (JsonNullable) onboardingStatus; + public JsonNullable onboardingStatus() { + return (JsonNullable) onboardingStatus; } /** @@ -559,8 +559,8 @@ public JsonNullable onboardingStatus() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional onboardingDocumentsConfig() { - return (Optional) onboardingDocumentsConfig; + public Optional onboardingDocumentsConfig() { + return (Optional) onboardingDocumentsConfig; } @SuppressWarnings("unchecked") @@ -633,8 +633,8 @@ public JsonNullable preferredFirstName() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional paymentMethod() { - return (Optional) paymentMethod; + public Optional paymentMethod() { + return (Optional) paymentMethod; } /** @@ -647,8 +647,8 @@ public Optional paymentMethod() { */ @SuppressWarnings("unchecked") @JsonIgnore - public JsonNullable currentEmploymentStatus() { - return (JsonNullable) currentEmploymentStatus; + public JsonNullable currentEmploymentStatus() { + return (JsonNullable) currentEmploymentStatus; } @JsonIgnore @@ -720,8 +720,8 @@ public Optional> applicableTaxIds() { */ @SuppressWarnings("unchecked") @JsonIgnore - public JsonNullable memberPortalInvitationStatus() { - return (JsonNullable) memberPortalInvitationStatus; + public JsonNullable memberPortalInvitationStatus() { + return (JsonNullable) memberPortalInvitationStatus; } /** @@ -975,7 +975,7 @@ public ShowEmployees withOnboarded(Optional onboarded) { /** * The current onboarding status of the employee */ - public ShowEmployees withOnboardingStatus(OnboardingStatus onboardingStatus) { + public ShowEmployees withOnboardingStatus(ShowEmployeesOnboardingStatus onboardingStatus) { Utils.checkNotNull(onboardingStatus, "onboardingStatus"); this.onboardingStatus = JsonNullable.of(onboardingStatus); return this; @@ -984,7 +984,7 @@ public ShowEmployees withOnboardingStatus(OnboardingStatus onboardingStatus) { /** * The current onboarding status of the employee */ - public ShowEmployees withOnboardingStatus(JsonNullable onboardingStatus) { + public ShowEmployees withOnboardingStatus(JsonNullable onboardingStatus) { Utils.checkNotNull(onboardingStatus, "onboardingStatus"); this.onboardingStatus = onboardingStatus; return this; @@ -993,7 +993,7 @@ public ShowEmployees withOnboardingStatus(JsonNullable onboardingDocumentsConfig) { + public ShowEmployees withOnboardingDocumentsConfig(Optional onboardingDocumentsConfig) { Utils.checkNotNull(onboardingDocumentsConfig, "onboardingDocumentsConfig"); this.onboardingDocumentsConfig = onboardingDocumentsConfig; return this; @@ -1159,7 +1159,7 @@ public ShowEmployees withPreferredFirstName(JsonNullable preferredFirstN /** * The employee's payment method */ - public ShowEmployees withPaymentMethod(PaymentMethod paymentMethod) { + public ShowEmployees withPaymentMethod(ShowEmployeesPaymentMethod paymentMethod) { Utils.checkNotNull(paymentMethod, "paymentMethod"); this.paymentMethod = Optional.ofNullable(paymentMethod); return this; @@ -1169,7 +1169,7 @@ public ShowEmployees withPaymentMethod(PaymentMethod paymentMethod) { /** * The employee's payment method */ - public ShowEmployees withPaymentMethod(Optional paymentMethod) { + public ShowEmployees withPaymentMethod(Optional paymentMethod) { Utils.checkNotNull(paymentMethod, "paymentMethod"); this.paymentMethod = paymentMethod; return this; @@ -1183,7 +1183,7 @@ public ShowEmployees withPaymentMethod(Optional payment *

    Variable employees have hours that vary each week. Seasonal employees are hired for 6 months of the * year or less. */ - public ShowEmployees withCurrentEmploymentStatus(CurrentEmploymentStatus currentEmploymentStatus) { + public ShowEmployees withCurrentEmploymentStatus(ShowEmployeesCurrentEmploymentStatus currentEmploymentStatus) { Utils.checkNotNull(currentEmploymentStatus, "currentEmploymentStatus"); this.currentEmploymentStatus = JsonNullable.of(currentEmploymentStatus); return this; @@ -1197,7 +1197,7 @@ public ShowEmployees withCurrentEmploymentStatus(CurrentEmploymentStatus current *

    Variable employees have hours that vary each week. Seasonal employees are hired for 6 months of the * year or less. */ - public ShowEmployees withCurrentEmploymentStatus(JsonNullable currentEmploymentStatus) { + public ShowEmployees withCurrentEmploymentStatus(JsonNullable currentEmploymentStatus) { Utils.checkNotNull(currentEmploymentStatus, "currentEmploymentStatus"); this.currentEmploymentStatus = currentEmploymentStatus; return this; @@ -1352,7 +1352,7 @@ public ShowEmployees withApplicableTaxIds(Optional> appli * Member portal invitation status information. Only included when the include param has the * portal_invitations value set. */ - public ShowEmployees withMemberPortalInvitationStatus(MemberPortalInvitationStatus memberPortalInvitationStatus) { + public ShowEmployees withMemberPortalInvitationStatus(ShowEmployeesMemberPortalInvitationStatus memberPortalInvitationStatus) { Utils.checkNotNull(memberPortalInvitationStatus, "memberPortalInvitationStatus"); this.memberPortalInvitationStatus = JsonNullable.of(memberPortalInvitationStatus); return this; @@ -1362,7 +1362,7 @@ public ShowEmployees withMemberPortalInvitationStatus(MemberPortalInvitationStat * Member portal invitation status information. Only included when the include param has the * portal_invitations value set. */ - public ShowEmployees withMemberPortalInvitationStatus(JsonNullable memberPortalInvitationStatus) { + public ShowEmployees withMemberPortalInvitationStatus(JsonNullable memberPortalInvitationStatus) { Utils.checkNotNull(memberPortalInvitationStatus, "memberPortalInvitationStatus"); this.memberPortalInvitationStatus = memberPortalInvitationStatus; return this; @@ -1572,9 +1572,9 @@ public final static class Builder { private Optional onboarded = Optional.empty(); - private JsonNullable onboardingStatus = JsonNullable.undefined(); + private JsonNullable onboardingStatus = JsonNullable.undefined(); - private Optional onboardingDocumentsConfig = Optional.empty(); + private Optional onboardingDocumentsConfig = Optional.empty(); private Optional> jobs = Optional.empty(); @@ -1596,9 +1596,9 @@ public final static class Builder { private JsonNullable preferredFirstName = JsonNullable.undefined(); - private Optional paymentMethod; + private Optional paymentMethod; - private JsonNullable currentEmploymentStatus = JsonNullable.undefined(); + private JsonNullable currentEmploymentStatus = JsonNullable.undefined(); private Optional historical = Optional.empty(); @@ -1616,7 +1616,7 @@ public final static class Builder { private Optional> applicableTaxIds = Optional.empty(); - private JsonNullable memberPortalInvitationStatus = JsonNullable.undefined(); + private JsonNullable memberPortalInvitationStatus = JsonNullable.undefined(); private JsonNullable partnerPortalInvitationSent = JsonNullable.undefined(); @@ -1860,7 +1860,7 @@ public Builder onboarded(Optional onboarded) { /** * The current onboarding status of the employee */ - public Builder onboardingStatus(OnboardingStatus onboardingStatus) { + public Builder onboardingStatus(ShowEmployeesOnboardingStatus onboardingStatus) { Utils.checkNotNull(onboardingStatus, "onboardingStatus"); this.onboardingStatus = JsonNullable.of(onboardingStatus); return this; @@ -1869,7 +1869,7 @@ public Builder onboardingStatus(OnboardingStatus onboardingStatus) { /** * The current onboarding status of the employee */ - public Builder onboardingStatus(JsonNullable onboardingStatus) { + public Builder onboardingStatus(JsonNullable onboardingStatus) { Utils.checkNotNull(onboardingStatus, "onboardingStatus"); this.onboardingStatus = onboardingStatus; return this; @@ -1879,7 +1879,7 @@ public Builder onboardingStatus(JsonNullable onboard /** * Configuration for an employee onboarding documents during onboarding */ - public Builder onboardingDocumentsConfig(OnboardingDocumentsConfig onboardingDocumentsConfig) { + public Builder onboardingDocumentsConfig(ShowEmployeesOnboardingDocumentsConfig onboardingDocumentsConfig) { Utils.checkNotNull(onboardingDocumentsConfig, "onboardingDocumentsConfig"); this.onboardingDocumentsConfig = Optional.ofNullable(onboardingDocumentsConfig); return this; @@ -1888,7 +1888,7 @@ public Builder onboardingDocumentsConfig(OnboardingDocumentsConfig onboardingDoc /** * Configuration for an employee onboarding documents during onboarding */ - public Builder onboardingDocumentsConfig(Optional onboardingDocumentsConfig) { + public Builder onboardingDocumentsConfig(Optional onboardingDocumentsConfig) { Utils.checkNotNull(onboardingDocumentsConfig, "onboardingDocumentsConfig"); this.onboardingDocumentsConfig = onboardingDocumentsConfig; return this; @@ -2048,7 +2048,7 @@ public Builder preferredFirstName(JsonNullable preferredFirstName) { /** * The employee's payment method */ - public Builder paymentMethod(PaymentMethod paymentMethod) { + public Builder paymentMethod(ShowEmployeesPaymentMethod paymentMethod) { Utils.checkNotNull(paymentMethod, "paymentMethod"); this.paymentMethod = Optional.ofNullable(paymentMethod); return this; @@ -2057,7 +2057,7 @@ public Builder paymentMethod(PaymentMethod paymentMethod) { /** * The employee's payment method */ - public Builder paymentMethod(Optional paymentMethod) { + public Builder paymentMethod(Optional paymentMethod) { Utils.checkNotNull(paymentMethod, "paymentMethod"); this.paymentMethod = paymentMethod; return this; @@ -2072,7 +2072,7 @@ public Builder paymentMethod(Optional paymentMethod) { *

    Variable employees have hours that vary each week. Seasonal employees are hired for 6 months of the * year or less. */ - public Builder currentEmploymentStatus(CurrentEmploymentStatus currentEmploymentStatus) { + public Builder currentEmploymentStatus(ShowEmployeesCurrentEmploymentStatus currentEmploymentStatus) { Utils.checkNotNull(currentEmploymentStatus, "currentEmploymentStatus"); this.currentEmploymentStatus = JsonNullable.of(currentEmploymentStatus); return this; @@ -2086,7 +2086,7 @@ public Builder currentEmploymentStatus(CurrentEmploymentStatus currentEmployment *

    Variable employees have hours that vary each week. Seasonal employees are hired for 6 months of the * year or less. */ - public Builder currentEmploymentStatus(JsonNullable currentEmploymentStatus) { + public Builder currentEmploymentStatus(JsonNullable currentEmploymentStatus) { Utils.checkNotNull(currentEmploymentStatus, "currentEmploymentStatus"); this.currentEmploymentStatus = currentEmploymentStatus; return this; @@ -2243,7 +2243,7 @@ public Builder applicableTaxIds(Optional> applicableTaxId * Member portal invitation status information. Only included when the include param has the * portal_invitations value set. */ - public Builder memberPortalInvitationStatus(MemberPortalInvitationStatus memberPortalInvitationStatus) { + public Builder memberPortalInvitationStatus(ShowEmployeesMemberPortalInvitationStatus memberPortalInvitationStatus) { Utils.checkNotNull(memberPortalInvitationStatus, "memberPortalInvitationStatus"); this.memberPortalInvitationStatus = JsonNullable.of(memberPortalInvitationStatus); return this; @@ -2253,7 +2253,7 @@ public Builder memberPortalInvitationStatus(MemberPortalInvitationStatus memberP * Member portal invitation status information. Only included when the include param has the * portal_invitations value set. */ - public Builder memberPortalInvitationStatus(JsonNullable memberPortalInvitationStatus) { + public Builder memberPortalInvitationStatus(JsonNullable memberPortalInvitationStatus) { Utils.checkNotNull(memberPortalInvitationStatus, "memberPortalInvitationStatus"); this.memberPortalInvitationStatus = memberPortalInvitationStatus; return this; @@ -2345,10 +2345,10 @@ public ShowEmployees build() { } - private static final LazySingletonValue> _SINGLETON_VALUE_PaymentMethod = + private static final LazySingletonValue> _SINGLETON_VALUE_PaymentMethod = new LazySingletonValue<>( "payment_method", "\"Check\"", - new TypeReference>() {}); + new TypeReference>() {}); } } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/EmployeeCurrentEmploymentStatus.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ShowEmployeesCurrentEmploymentStatus.java similarity index 72% rename from gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/EmployeeCurrentEmploymentStatus.java rename to gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ShowEmployeesCurrentEmploymentStatus.java index aa4227d5a..bbf230f2e 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/EmployeeCurrentEmploymentStatus.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ShowEmployeesCurrentEmploymentStatus.java @@ -8,7 +8,7 @@ import java.util.Objects; import java.util.Optional; -public enum EmployeeCurrentEmploymentStatus { +public enum ShowEmployeesCurrentEmploymentStatus { FULL_TIME("full_time"), PART_TIME_UNDER_TWENTY_HOURS("part_time_under_twenty_hours"), PART_TIME_TWENTY_PLUS_HOURS("part_time_twenty_plus_hours"), @@ -18,7 +18,7 @@ public enum EmployeeCurrentEmploymentStatus { @JsonValue private final String value; - EmployeeCurrentEmploymentStatus(String value) { + ShowEmployeesCurrentEmploymentStatus(String value) { this.value = value; } @@ -26,8 +26,8 @@ public String value() { return value; } - public static Optional fromValue(String value) { - for (EmployeeCurrentEmploymentStatus o: EmployeeCurrentEmploymentStatus.values()) { + public static Optional fromValue(String value) { + for (ShowEmployeesCurrentEmploymentStatus o: ShowEmployeesCurrentEmploymentStatus.values()) { if (Objects.deepEquals(o.value, value)) { return Optional.of(o); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorMemberPortalInvitationStatus.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ShowEmployeesMemberPortalInvitationStatus.java similarity index 82% rename from gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorMemberPortalInvitationStatus.java rename to gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ShowEmployeesMemberPortalInvitationStatus.java index b4b6f0ee8..938ea68bb 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ContractorMemberPortalInvitationStatus.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ShowEmployeesMemberPortalInvitationStatus.java @@ -18,18 +18,18 @@ import org.openapitools.jackson.nullable.JsonNullable; /** - * ContractorMemberPortalInvitationStatus + * ShowEmployeesMemberPortalInvitationStatus * *

    Member portal invitation status information. Only included when the include param has the * portal_invitations value set. */ -public class ContractorMemberPortalInvitationStatus { +public class ShowEmployeesMemberPortalInvitationStatus { /** * The current status of the member portal invitation. */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("status") - private Optional status; + private Optional status; /** * Whether the invitation token has expired. @@ -53,8 +53,8 @@ public class ContractorMemberPortalInvitationStatus { private JsonNullable lastPasswordResentAt; @JsonCreator - public ContractorMemberPortalInvitationStatus( - @JsonProperty("status") Optional status, + public ShowEmployeesMemberPortalInvitationStatus( + @JsonProperty("status") Optional status, @JsonProperty("token_expired") JsonNullable tokenExpired, @JsonProperty("welcome_email_sent_at") JsonNullable welcomeEmailSentAt, @JsonProperty("last_password_resent_at") JsonNullable lastPasswordResentAt) { @@ -68,7 +68,7 @@ public ContractorMemberPortalInvitationStatus( this.lastPasswordResentAt = lastPasswordResentAt; } - public ContractorMemberPortalInvitationStatus() { + public ShowEmployeesMemberPortalInvitationStatus() { this(Optional.empty(), JsonNullable.undefined(), JsonNullable.undefined(), JsonNullable.undefined()); } @@ -78,8 +78,8 @@ public ContractorMemberPortalInvitationStatus() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional status() { - return (Optional) status; + public Optional status() { + return (Optional) status; } /** @@ -114,7 +114,7 @@ public static Builder builder() { /** * The current status of the member portal invitation. */ - public ContractorMemberPortalInvitationStatus withStatus(ContractorStatus status) { + public ShowEmployeesMemberPortalInvitationStatus withStatus(ShowEmployeesStatus status) { Utils.checkNotNull(status, "status"); this.status = Optional.ofNullable(status); return this; @@ -124,7 +124,7 @@ public ContractorMemberPortalInvitationStatus withStatus(ContractorStatus status /** * The current status of the member portal invitation. */ - public ContractorMemberPortalInvitationStatus withStatus(Optional status) { + public ShowEmployeesMemberPortalInvitationStatus withStatus(Optional status) { Utils.checkNotNull(status, "status"); this.status = status; return this; @@ -133,7 +133,7 @@ public ContractorMemberPortalInvitationStatus withStatus(Optional tokenExpired) { + public ShowEmployeesMemberPortalInvitationStatus withTokenExpired(JsonNullable tokenExpired) { Utils.checkNotNull(tokenExpired, "tokenExpired"); this.tokenExpired = tokenExpired; return this; @@ -151,7 +151,7 @@ public ContractorMemberPortalInvitationStatus withTokenExpired(JsonNullable welcomeEmailSentAt) { + public ShowEmployeesMemberPortalInvitationStatus withWelcomeEmailSentAt(JsonNullable welcomeEmailSentAt) { Utils.checkNotNull(welcomeEmailSentAt, "welcomeEmailSentAt"); this.welcomeEmailSentAt = welcomeEmailSentAt; return this; @@ -169,7 +169,7 @@ public ContractorMemberPortalInvitationStatus withWelcomeEmailSentAt(JsonNullabl /** * The date and time when the password reset was last resent. */ - public ContractorMemberPortalInvitationStatus withLastPasswordResentAt(OffsetDateTime lastPasswordResentAt) { + public ShowEmployeesMemberPortalInvitationStatus withLastPasswordResentAt(OffsetDateTime lastPasswordResentAt) { Utils.checkNotNull(lastPasswordResentAt, "lastPasswordResentAt"); this.lastPasswordResentAt = JsonNullable.of(lastPasswordResentAt); return this; @@ -178,7 +178,7 @@ public ContractorMemberPortalInvitationStatus withLastPasswordResentAt(OffsetDat /** * The date and time when the password reset was last resent. */ - public ContractorMemberPortalInvitationStatus withLastPasswordResentAt(JsonNullable lastPasswordResentAt) { + public ShowEmployeesMemberPortalInvitationStatus withLastPasswordResentAt(JsonNullable lastPasswordResentAt) { Utils.checkNotNull(lastPasswordResentAt, "lastPasswordResentAt"); this.lastPasswordResentAt = lastPasswordResentAt; return this; @@ -192,7 +192,7 @@ public boolean equals(java.lang.Object o) { if (o == null || getClass() != o.getClass()) { return false; } - ContractorMemberPortalInvitationStatus other = (ContractorMemberPortalInvitationStatus) o; + ShowEmployeesMemberPortalInvitationStatus other = (ShowEmployeesMemberPortalInvitationStatus) o; return Utils.enhancedDeepEquals(this.status, other.status) && Utils.enhancedDeepEquals(this.tokenExpired, other.tokenExpired) && @@ -209,7 +209,7 @@ public int hashCode() { @Override public String toString() { - return Utils.toString(ContractorMemberPortalInvitationStatus.class, + return Utils.toString(ShowEmployeesMemberPortalInvitationStatus.class, "status", status, "tokenExpired", tokenExpired, "welcomeEmailSentAt", welcomeEmailSentAt, @@ -219,7 +219,7 @@ public String toString() { @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private Optional status = Optional.empty(); + private Optional status = Optional.empty(); private JsonNullable tokenExpired = JsonNullable.undefined(); @@ -235,7 +235,7 @@ private Builder() { /** * The current status of the member portal invitation. */ - public Builder status(ContractorStatus status) { + public Builder status(ShowEmployeesStatus status) { Utils.checkNotNull(status, "status"); this.status = Optional.ofNullable(status); return this; @@ -244,7 +244,7 @@ public Builder status(ContractorStatus status) { /** * The current status of the member portal invitation. */ - public Builder status(Optional status) { + public Builder status(Optional status) { Utils.checkNotNull(status, "status"); this.status = status; return this; @@ -307,9 +307,9 @@ public Builder lastPasswordResentAt(JsonNullable lastPasswordRes return this; } - public ContractorMemberPortalInvitationStatus build() { + public ShowEmployeesMemberPortalInvitationStatus build() { - return new ContractorMemberPortalInvitationStatus( + return new ShowEmployeesMemberPortalInvitationStatus( status, tokenExpired, welcomeEmailSentAt, lastPasswordResentAt); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/EmployeeOnboardingDocumentsConfig.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ShowEmployeesOnboardingDocumentsConfig.java similarity index 84% rename from gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/EmployeeOnboardingDocumentsConfig.java rename to gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ShowEmployeesOnboardingDocumentsConfig.java index 67f49fd22..c2e379b98 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/EmployeeOnboardingDocumentsConfig.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ShowEmployeesOnboardingDocumentsConfig.java @@ -16,11 +16,11 @@ import org.openapitools.jackson.nullable.JsonNullable; /** - * EmployeeOnboardingDocumentsConfig + * ShowEmployeesOnboardingDocumentsConfig * *

    Configuration for an employee onboarding documents during onboarding */ -public class EmployeeOnboardingDocumentsConfig { +public class ShowEmployeesOnboardingDocumentsConfig { /** * The UUID of the onboarding documents config */ @@ -36,7 +36,7 @@ public class EmployeeOnboardingDocumentsConfig { private Optional i9Document; @JsonCreator - public EmployeeOnboardingDocumentsConfig( + public ShowEmployeesOnboardingDocumentsConfig( @JsonProperty("uuid") JsonNullable uuid, @JsonProperty("i9_document") Optional i9Document) { Utils.checkNotNull(uuid, "uuid"); @@ -45,7 +45,7 @@ public EmployeeOnboardingDocumentsConfig( this.i9Document = i9Document; } - public EmployeeOnboardingDocumentsConfig() { + public ShowEmployeesOnboardingDocumentsConfig() { this(JsonNullable.undefined(), Optional.empty()); } @@ -73,7 +73,7 @@ public static Builder builder() { /** * The UUID of the onboarding documents config */ - public EmployeeOnboardingDocumentsConfig withUuid(String uuid) { + public ShowEmployeesOnboardingDocumentsConfig withUuid(String uuid) { Utils.checkNotNull(uuid, "uuid"); this.uuid = JsonNullable.of(uuid); return this; @@ -82,7 +82,7 @@ public EmployeeOnboardingDocumentsConfig withUuid(String uuid) { /** * The UUID of the onboarding documents config */ - public EmployeeOnboardingDocumentsConfig withUuid(JsonNullable uuid) { + public ShowEmployeesOnboardingDocumentsConfig withUuid(JsonNullable uuid) { Utils.checkNotNull(uuid, "uuid"); this.uuid = uuid; return this; @@ -91,7 +91,7 @@ public EmployeeOnboardingDocumentsConfig withUuid(JsonNullable uuid) { /** * Whether to include Form I-9 for an employee during onboarding */ - public EmployeeOnboardingDocumentsConfig withI9Document(boolean i9Document) { + public ShowEmployeesOnboardingDocumentsConfig withI9Document(boolean i9Document) { Utils.checkNotNull(i9Document, "i9Document"); this.i9Document = Optional.ofNullable(i9Document); return this; @@ -101,7 +101,7 @@ public EmployeeOnboardingDocumentsConfig withI9Document(boolean i9Document) { /** * Whether to include Form I-9 for an employee during onboarding */ - public EmployeeOnboardingDocumentsConfig withI9Document(Optional i9Document) { + public ShowEmployeesOnboardingDocumentsConfig withI9Document(Optional i9Document) { Utils.checkNotNull(i9Document, "i9Document"); this.i9Document = i9Document; return this; @@ -115,7 +115,7 @@ public boolean equals(java.lang.Object o) { if (o == null || getClass() != o.getClass()) { return false; } - EmployeeOnboardingDocumentsConfig other = (EmployeeOnboardingDocumentsConfig) o; + ShowEmployeesOnboardingDocumentsConfig other = (ShowEmployeesOnboardingDocumentsConfig) o; return Utils.enhancedDeepEquals(this.uuid, other.uuid) && Utils.enhancedDeepEquals(this.i9Document, other.i9Document); @@ -129,7 +129,7 @@ public int hashCode() { @Override public String toString() { - return Utils.toString(EmployeeOnboardingDocumentsConfig.class, + return Utils.toString(ShowEmployeesOnboardingDocumentsConfig.class, "uuid", uuid, "i9Document", i9Document); } @@ -183,9 +183,9 @@ public Builder i9Document(Optional i9Document) { return this; } - public EmployeeOnboardingDocumentsConfig build() { + public ShowEmployeesOnboardingDocumentsConfig build() { - return new EmployeeOnboardingDocumentsConfig( + return new ShowEmployeesOnboardingDocumentsConfig( uuid, i9Document); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ShowEmployeesOnboardingStatus.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ShowEmployeesOnboardingStatus.java new file mode 100644 index 000000000..b383000ed --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ShowEmployeesOnboardingStatus.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +public enum ShowEmployeesOnboardingStatus { + ONBOARDING_COMPLETED("onboarding_completed"), + ADMIN_ONBOARDING_INCOMPLETE("admin_onboarding_incomplete"), + SELF_ONBOARDING_PENDING_INVITE("self_onboarding_pending_invite"), + SELF_ONBOARDING_INVITED("self_onboarding_invited"), + SELF_ONBOARDING_INVITED_STARTED("self_onboarding_invited_started"), + SELF_ONBOARDING_INVITED_OVERDUE("self_onboarding_invited_overdue"), + SELF_ONBOARDING_COMPLETED_BY_EMPLOYEE("self_onboarding_completed_by_employee"), + SELF_ONBOARDING_AWAITING_ADMIN_REVIEW("self_onboarding_awaiting_admin_review"); + + @JsonValue + private final String value; + + ShowEmployeesOnboardingStatus(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (ShowEmployeesOnboardingStatus o: ShowEmployeesOnboardingStatus.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ShowEmployeesPaymentMethod.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ShowEmployeesPaymentMethod.java new file mode 100644 index 000000000..704af23ca --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/ShowEmployeesPaymentMethod.java @@ -0,0 +1,40 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * ShowEmployeesPaymentMethod + * + *

    The employee's payment method + */ +public enum ShowEmployeesPaymentMethod { + DIRECT_DEPOSIT("Direct Deposit"), + CHECK("Check"); + + @JsonValue + private final String value; + + ShowEmployeesPaymentMethod(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (ShowEmployeesPaymentMethod o: ShowEmployeesPaymentMethod.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Signatory.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Signatory.java index c02cf6bad..f2d651ff1 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Signatory.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Signatory.java @@ -95,7 +95,7 @@ public class Signatory { @JsonInclude(Include.NON_ABSENT) @JsonProperty("home_address") - private JsonNullable homeAddress; + private JsonNullable homeAddress; @JsonCreator public Signatory( @@ -110,7 +110,7 @@ public Signatory( @JsonProperty("has_ssn") Optional hasSsn, @JsonProperty("version") Optional version, @JsonProperty("identity_verification_status") JsonNullable identityVerificationStatus, - @JsonProperty("home_address") JsonNullable homeAddress) { + @JsonProperty("home_address") JsonNullable homeAddress) { Utils.checkNotNull(uuid, "uuid"); Utils.checkNotNull(firstName, "firstName"); Utils.checkNotNull(lastName, "lastName"); @@ -223,8 +223,8 @@ public JsonNullable identityVerificationStatus() { @SuppressWarnings("unchecked") @JsonIgnore - public JsonNullable homeAddress() { - return (JsonNullable) homeAddress; + public JsonNullable homeAddress() { + return (JsonNullable) homeAddress; } public static Builder builder() { @@ -402,13 +402,13 @@ public Signatory withIdentityVerificationStatus(JsonNullable homeAddress) { + public Signatory withHomeAddress(JsonNullable homeAddress) { Utils.checkNotNull(homeAddress, "homeAddress"); this.homeAddress = homeAddress; return this; @@ -489,7 +489,7 @@ public final static class Builder { private JsonNullable identityVerificationStatus = JsonNullable.undefined(); - private JsonNullable homeAddress = JsonNullable.undefined(); + private JsonNullable homeAddress = JsonNullable.undefined(); private Builder() { // force use of static builder() method @@ -673,13 +673,13 @@ public Builder identityVerificationStatus(JsonNullable homeAddress) { + public Builder homeAddress(JsonNullable homeAddress) { Utils.checkNotNull(homeAddress, "homeAddress"); this.homeAddress = homeAddress; return this; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/SignatoryHomeAddress.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/SignatoryHomeAddress.java new file mode 100644 index 000000000..90e12e205 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/SignatoryHomeAddress.java @@ -0,0 +1,340 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api.utils.LazySingletonValue; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.util.Optional; + + +public class SignatoryHomeAddress { + + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("street_1") + private Optional street1; + + + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("street_2") + private Optional street2; + + + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("city") + private Optional city; + + + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("state") + private Optional state; + + + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("zip") + private Optional zip; + + + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("country") + private Optional country; + + @JsonCreator + public SignatoryHomeAddress( + @JsonProperty("street_1") Optional street1, + @JsonProperty("street_2") Optional street2, + @JsonProperty("city") Optional city, + @JsonProperty("state") Optional state, + @JsonProperty("zip") Optional zip, + @JsonProperty("country") Optional country) { + Utils.checkNotNull(street1, "street1"); + Utils.checkNotNull(street2, "street2"); + Utils.checkNotNull(city, "city"); + Utils.checkNotNull(state, "state"); + Utils.checkNotNull(zip, "zip"); + Utils.checkNotNull(country, "country"); + this.street1 = street1; + this.street2 = street2; + this.city = city; + this.state = state; + this.zip = zip; + this.country = country; + } + + public SignatoryHomeAddress() { + this(Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty(), Optional.empty(), Optional.empty()); + } + + @JsonIgnore + public Optional street1() { + return street1; + } + + @JsonIgnore + public Optional street2() { + return street2; + } + + @JsonIgnore + public Optional city() { + return city; + } + + @JsonIgnore + public Optional state() { + return state; + } + + @JsonIgnore + public Optional zip() { + return zip; + } + + @JsonIgnore + public Optional country() { + return country; + } + + public static Builder builder() { + return new Builder(); + } + + + public SignatoryHomeAddress withStreet1(String street1) { + Utils.checkNotNull(street1, "street1"); + this.street1 = Optional.ofNullable(street1); + return this; + } + + + public SignatoryHomeAddress withStreet1(Optional street1) { + Utils.checkNotNull(street1, "street1"); + this.street1 = street1; + return this; + } + + public SignatoryHomeAddress withStreet2(String street2) { + Utils.checkNotNull(street2, "street2"); + this.street2 = Optional.ofNullable(street2); + return this; + } + + + public SignatoryHomeAddress withStreet2(Optional street2) { + Utils.checkNotNull(street2, "street2"); + this.street2 = street2; + return this; + } + + public SignatoryHomeAddress withCity(String city) { + Utils.checkNotNull(city, "city"); + this.city = Optional.ofNullable(city); + return this; + } + + + public SignatoryHomeAddress withCity(Optional city) { + Utils.checkNotNull(city, "city"); + this.city = city; + return this; + } + + public SignatoryHomeAddress withState(String state) { + Utils.checkNotNull(state, "state"); + this.state = Optional.ofNullable(state); + return this; + } + + + public SignatoryHomeAddress withState(Optional state) { + Utils.checkNotNull(state, "state"); + this.state = state; + return this; + } + + public SignatoryHomeAddress withZip(String zip) { + Utils.checkNotNull(zip, "zip"); + this.zip = Optional.ofNullable(zip); + return this; + } + + + public SignatoryHomeAddress withZip(Optional zip) { + Utils.checkNotNull(zip, "zip"); + this.zip = zip; + return this; + } + + public SignatoryHomeAddress withCountry(String country) { + Utils.checkNotNull(country, "country"); + this.country = Optional.ofNullable(country); + return this; + } + + + public SignatoryHomeAddress withCountry(Optional country) { + Utils.checkNotNull(country, "country"); + this.country = country; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + SignatoryHomeAddress other = (SignatoryHomeAddress) o; + return + Utils.enhancedDeepEquals(this.street1, other.street1) && + Utils.enhancedDeepEquals(this.street2, other.street2) && + Utils.enhancedDeepEquals(this.city, other.city) && + Utils.enhancedDeepEquals(this.state, other.state) && + Utils.enhancedDeepEquals(this.zip, other.zip) && + Utils.enhancedDeepEquals(this.country, other.country); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + street1, street2, city, + state, zip, country); + } + + @Override + public String toString() { + return Utils.toString(SignatoryHomeAddress.class, + "street1", street1, + "street2", street2, + "city", city, + "state", state, + "zip", zip, + "country", country); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional street1 = Optional.empty(); + + private Optional street2 = Optional.empty(); + + private Optional city = Optional.empty(); + + private Optional state = Optional.empty(); + + private Optional zip = Optional.empty(); + + private Optional country; + + private Builder() { + // force use of static builder() method + } + + + public Builder street1(String street1) { + Utils.checkNotNull(street1, "street1"); + this.street1 = Optional.ofNullable(street1); + return this; + } + + public Builder street1(Optional street1) { + Utils.checkNotNull(street1, "street1"); + this.street1 = street1; + return this; + } + + + public Builder street2(String street2) { + Utils.checkNotNull(street2, "street2"); + this.street2 = Optional.ofNullable(street2); + return this; + } + + public Builder street2(Optional street2) { + Utils.checkNotNull(street2, "street2"); + this.street2 = street2; + return this; + } + + + public Builder city(String city) { + Utils.checkNotNull(city, "city"); + this.city = Optional.ofNullable(city); + return this; + } + + public Builder city(Optional city) { + Utils.checkNotNull(city, "city"); + this.city = city; + return this; + } + + + public Builder state(String state) { + Utils.checkNotNull(state, "state"); + this.state = Optional.ofNullable(state); + return this; + } + + public Builder state(Optional state) { + Utils.checkNotNull(state, "state"); + this.state = state; + return this; + } + + + public Builder zip(String zip) { + Utils.checkNotNull(zip, "zip"); + this.zip = Optional.ofNullable(zip); + return this; + } + + public Builder zip(Optional zip) { + Utils.checkNotNull(zip, "zip"); + this.zip = zip; + return this; + } + + + public Builder country(String country) { + Utils.checkNotNull(country, "country"); + this.country = Optional.ofNullable(country); + return this; + } + + public Builder country(Optional country) { + Utils.checkNotNull(country, "country"); + this.country = country; + return this; + } + + public SignatoryHomeAddress build() { + if (country == null) { + country = _SINGLETON_VALUE_Country.value(); + } + + return new SignatoryHomeAddress( + street1, street2, city, + state, zip, country); + } + + + private static final LazySingletonValue> _SINGLETON_VALUE_Country = + new LazySingletonValue<>( + "country", + "\"USA\"", + new TypeReference>() {}); + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Splits.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Splits.java index 801907878..843c910da 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Splits.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Splits.java @@ -18,16 +18,12 @@ public class Splits { - /** - * The UUID of the bank account. - */ + @JsonInclude(Include.NON_ABSENT) @JsonProperty("bank_account_uuid") private Optional bankAccountUuid; - /** - * The name of the bank account. - */ + @JsonInclude(Include.NON_ABSENT) @JsonProperty("name") private Optional name; @@ -41,26 +37,17 @@ public class Splits { /** * Ciphertext containing the full bank account number, which must be decrypted using a key provided by - * Gusto. Only visible with the `employee_payment_methods:read:account_number` scope. + * Gusto. Only visible with the `contractor_payment_methods:read:account_number` scope. */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("encrypted_account_number") private JsonNullable encryptedAccountNumber; - /** - * The routing number of the bank account. - */ + @JsonInclude(Include.NON_ABSENT) @JsonProperty("routing_number") private Optional routingNumber; - /** - * The bank account type (e.g., "Checking" or "Savings"). - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("account_type") - private Optional accountType; - /** * The order of priority for each payment split, with priority 1 being the first bank account paid. * Priority must be unique and sequential. @@ -78,6 +65,11 @@ public class Splits { @JsonProperty("split_amount") private JsonNullable splitAmount; + + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("account_type") + private Optional accountType; + @JsonCreator public Splits( @JsonProperty("bank_account_uuid") Optional bankAccountUuid, @@ -85,44 +77,38 @@ public Splits( @JsonProperty("hidden_account_number") Optional hiddenAccountNumber, @JsonProperty("encrypted_account_number") JsonNullable encryptedAccountNumber, @JsonProperty("routing_number") Optional routingNumber, - @JsonProperty("account_type") Optional accountType, @JsonProperty("priority") Optional priority, - @JsonProperty("split_amount") JsonNullable splitAmount) { + @JsonProperty("split_amount") JsonNullable splitAmount, + @JsonProperty("account_type") Optional accountType) { Utils.checkNotNull(bankAccountUuid, "bankAccountUuid"); Utils.checkNotNull(name, "name"); Utils.checkNotNull(hiddenAccountNumber, "hiddenAccountNumber"); Utils.checkNotNull(encryptedAccountNumber, "encryptedAccountNumber"); Utils.checkNotNull(routingNumber, "routingNumber"); - Utils.checkNotNull(accountType, "accountType"); Utils.checkNotNull(priority, "priority"); Utils.checkNotNull(splitAmount, "splitAmount"); + Utils.checkNotNull(accountType, "accountType"); this.bankAccountUuid = bankAccountUuid; this.name = name; this.hiddenAccountNumber = hiddenAccountNumber; this.encryptedAccountNumber = encryptedAccountNumber; this.routingNumber = routingNumber; - this.accountType = accountType; this.priority = priority; this.splitAmount = splitAmount; + this.accountType = accountType; } public Splits() { this(Optional.empty(), Optional.empty(), Optional.empty(), JsonNullable.undefined(), Optional.empty(), Optional.empty(), - Optional.empty(), JsonNullable.undefined()); + JsonNullable.undefined(), Optional.empty()); } - /** - * The UUID of the bank account. - */ @JsonIgnore public Optional bankAccountUuid() { return bankAccountUuid; } - /** - * The name of the bank account. - */ @JsonIgnore public Optional name() { return name; @@ -138,29 +124,18 @@ public Optional hiddenAccountNumber() { /** * Ciphertext containing the full bank account number, which must be decrypted using a key provided by - * Gusto. Only visible with the `employee_payment_methods:read:account_number` scope. + * Gusto. Only visible with the `contractor_payment_methods:read:account_number` scope. */ @JsonIgnore public JsonNullable encryptedAccountNumber() { return encryptedAccountNumber; } - /** - * The routing number of the bank account. - */ @JsonIgnore public Optional routingNumber() { return routingNumber; } - /** - * The bank account type (e.g., "Checking" or "Savings"). - */ - @JsonIgnore - public Optional accountType() { - return accountType; - } - /** * The order of priority for each payment split, with priority 1 being the first bank account paid. * Priority must be unique and sequential. @@ -180,14 +155,16 @@ public JsonNullable splitAmount() { return splitAmount; } + @JsonIgnore + public Optional accountType() { + return accountType; + } + public static Builder builder() { return new Builder(); } - /** - * The UUID of the bank account. - */ public Splits withBankAccountUuid(String bankAccountUuid) { Utils.checkNotNull(bankAccountUuid, "bankAccountUuid"); this.bankAccountUuid = Optional.ofNullable(bankAccountUuid); @@ -195,18 +172,12 @@ public Splits withBankAccountUuid(String bankAccountUuid) { } - /** - * The UUID of the bank account. - */ public Splits withBankAccountUuid(Optional bankAccountUuid) { Utils.checkNotNull(bankAccountUuid, "bankAccountUuid"); this.bankAccountUuid = bankAccountUuid; return this; } - /** - * The name of the bank account. - */ public Splits withName(String name) { Utils.checkNotNull(name, "name"); this.name = Optional.ofNullable(name); @@ -214,9 +185,6 @@ public Splits withName(String name) { } - /** - * The name of the bank account. - */ public Splits withName(Optional name) { Utils.checkNotNull(name, "name"); this.name = name; @@ -244,7 +212,7 @@ public Splits withHiddenAccountNumber(Optional hiddenAccountNumber) { /** * Ciphertext containing the full bank account number, which must be decrypted using a key provided by - * Gusto. Only visible with the `employee_payment_methods:read:account_number` scope. + * Gusto. Only visible with the `contractor_payment_methods:read:account_number` scope. */ public Splits withEncryptedAccountNumber(String encryptedAccountNumber) { Utils.checkNotNull(encryptedAccountNumber, "encryptedAccountNumber"); @@ -254,7 +222,7 @@ public Splits withEncryptedAccountNumber(String encryptedAccountNumber) { /** * Ciphertext containing the full bank account number, which must be decrypted using a key provided by - * Gusto. Only visible with the `employee_payment_methods:read:account_number` scope. + * Gusto. Only visible with the `contractor_payment_methods:read:account_number` scope. */ public Splits withEncryptedAccountNumber(JsonNullable encryptedAccountNumber) { Utils.checkNotNull(encryptedAccountNumber, "encryptedAccountNumber"); @@ -262,9 +230,6 @@ public Splits withEncryptedAccountNumber(JsonNullable encryptedAccountNu return this; } - /** - * The routing number of the bank account. - */ public Splits withRoutingNumber(String routingNumber) { Utils.checkNotNull(routingNumber, "routingNumber"); this.routingNumber = Optional.ofNullable(routingNumber); @@ -272,34 +237,12 @@ public Splits withRoutingNumber(String routingNumber) { } - /** - * The routing number of the bank account. - */ public Splits withRoutingNumber(Optional routingNumber) { Utils.checkNotNull(routingNumber, "routingNumber"); this.routingNumber = routingNumber; return this; } - /** - * The bank account type (e.g., "Checking" or "Savings"). - */ - public Splits withAccountType(String accountType) { - Utils.checkNotNull(accountType, "accountType"); - this.accountType = Optional.ofNullable(accountType); - return this; - } - - - /** - * The bank account type (e.g., "Checking" or "Savings"). - */ - public Splits withAccountType(Optional accountType) { - Utils.checkNotNull(accountType, "accountType"); - this.accountType = accountType; - return this; - } - /** * The order of priority for each payment split, with priority 1 being the first bank account paid. * Priority must be unique and sequential. @@ -343,6 +286,19 @@ public Splits withSplitAmount(JsonNullable splitAmount) { return this; } + public Splits withAccountType(String accountType) { + Utils.checkNotNull(accountType, "accountType"); + this.accountType = Optional.ofNullable(accountType); + return this; + } + + + public Splits withAccountType(Optional accountType) { + Utils.checkNotNull(accountType, "accountType"); + this.accountType = accountType; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -358,17 +314,17 @@ public boolean equals(java.lang.Object o) { Utils.enhancedDeepEquals(this.hiddenAccountNumber, other.hiddenAccountNumber) && Utils.enhancedDeepEquals(this.encryptedAccountNumber, other.encryptedAccountNumber) && Utils.enhancedDeepEquals(this.routingNumber, other.routingNumber) && - Utils.enhancedDeepEquals(this.accountType, other.accountType) && Utils.enhancedDeepEquals(this.priority, other.priority) && - Utils.enhancedDeepEquals(this.splitAmount, other.splitAmount); + Utils.enhancedDeepEquals(this.splitAmount, other.splitAmount) && + Utils.enhancedDeepEquals(this.accountType, other.accountType); } @Override public int hashCode() { return Utils.enhancedHash( bankAccountUuid, name, hiddenAccountNumber, - encryptedAccountNumber, routingNumber, accountType, - priority, splitAmount); + encryptedAccountNumber, routingNumber, priority, + splitAmount, accountType); } @Override @@ -379,9 +335,9 @@ public String toString() { "hiddenAccountNumber", hiddenAccountNumber, "encryptedAccountNumber", encryptedAccountNumber, "routingNumber", routingNumber, - "accountType", accountType, "priority", priority, - "splitAmount", splitAmount); + "splitAmount", splitAmount, + "accountType", accountType); } @SuppressWarnings("UnusedReturnValue") @@ -397,29 +353,23 @@ public final static class Builder { private Optional routingNumber = Optional.empty(); - private Optional accountType = Optional.empty(); - private Optional priority = Optional.empty(); private JsonNullable splitAmount = JsonNullable.undefined(); + private Optional accountType = Optional.empty(); + private Builder() { // force use of static builder() method } - /** - * The UUID of the bank account. - */ public Builder bankAccountUuid(String bankAccountUuid) { Utils.checkNotNull(bankAccountUuid, "bankAccountUuid"); this.bankAccountUuid = Optional.ofNullable(bankAccountUuid); return this; } - /** - * The UUID of the bank account. - */ public Builder bankAccountUuid(Optional bankAccountUuid) { Utils.checkNotNull(bankAccountUuid, "bankAccountUuid"); this.bankAccountUuid = bankAccountUuid; @@ -427,18 +377,12 @@ public Builder bankAccountUuid(Optional bankAccountUuid) { } - /** - * The name of the bank account. - */ public Builder name(String name) { Utils.checkNotNull(name, "name"); this.name = Optional.ofNullable(name); return this; } - /** - * The name of the bank account. - */ public Builder name(Optional name) { Utils.checkNotNull(name, "name"); this.name = name; @@ -467,7 +411,7 @@ public Builder hiddenAccountNumber(Optional hiddenAccountNumber) { /** * Ciphertext containing the full bank account number, which must be decrypted using a key provided by - * Gusto. Only visible with the `employee_payment_methods:read:account_number` scope. + * Gusto. Only visible with the `contractor_payment_methods:read:account_number` scope. */ public Builder encryptedAccountNumber(String encryptedAccountNumber) { Utils.checkNotNull(encryptedAccountNumber, "encryptedAccountNumber"); @@ -477,7 +421,7 @@ public Builder encryptedAccountNumber(String encryptedAccountNumber) { /** * Ciphertext containing the full bank account number, which must be decrypted using a key provided by - * Gusto. Only visible with the `employee_payment_methods:read:account_number` scope. + * Gusto. Only visible with the `contractor_payment_methods:read:account_number` scope. */ public Builder encryptedAccountNumber(JsonNullable encryptedAccountNumber) { Utils.checkNotNull(encryptedAccountNumber, "encryptedAccountNumber"); @@ -486,18 +430,12 @@ public Builder encryptedAccountNumber(JsonNullable encryptedAccountNumbe } - /** - * The routing number of the bank account. - */ public Builder routingNumber(String routingNumber) { Utils.checkNotNull(routingNumber, "routingNumber"); this.routingNumber = Optional.ofNullable(routingNumber); return this; } - /** - * The routing number of the bank account. - */ public Builder routingNumber(Optional routingNumber) { Utils.checkNotNull(routingNumber, "routingNumber"); this.routingNumber = routingNumber; @@ -505,25 +443,6 @@ public Builder routingNumber(Optional routingNumber) { } - /** - * The bank account type (e.g., "Checking" or "Savings"). - */ - public Builder accountType(String accountType) { - Utils.checkNotNull(accountType, "accountType"); - this.accountType = Optional.ofNullable(accountType); - return this; - } - - /** - * The bank account type (e.g., "Checking" or "Savings"). - */ - public Builder accountType(Optional accountType) { - Utils.checkNotNull(accountType, "accountType"); - this.accountType = accountType; - return this; - } - - /** * The order of priority for each payment split, with priority 1 being the first bank account paid. * Priority must be unique and sequential. @@ -567,12 +486,25 @@ public Builder splitAmount(JsonNullable splitAmount) { return this; } + + public Builder accountType(String accountType) { + Utils.checkNotNull(accountType, "accountType"); + this.accountType = Optional.ofNullable(accountType); + return this; + } + + public Builder accountType(Optional accountType) { + Utils.checkNotNull(accountType, "accountType"); + this.accountType = accountType; + return this; + } + public Splits build() { return new Splits( bankAccountUuid, name, hiddenAccountNumber, - encryptedAccountNumber, routingNumber, accountType, - priority, splitAmount); + encryptedAccountNumber, routingNumber, priority, + splitAmount, accountType); } } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/State.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/State.java new file mode 100644 index 000000000..de06908c7 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/State.java @@ -0,0 +1,314 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class State { + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("employee_state_field_uuid") + private Optional employeeStateFieldUuid; + + /** + * Override mode. Only `one_time` is currently exposed. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("override_type") + private Optional overrideType; + + /** + * The amount that was withheld for this payroll. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("amount") + private Optional amount; + + /** + * How to interpret the amount. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("amount_type") + private Optional amountType; + + @JsonCreator + public State( + @JsonProperty("employee_state_field_uuid") Optional employeeStateFieldUuid, + @JsonProperty("override_type") Optional overrideType, + @JsonProperty("amount") Optional amount, + @JsonProperty("amount_type") Optional amountType) { + Utils.checkNotNull(employeeStateFieldUuid, "employeeStateFieldUuid"); + Utils.checkNotNull(overrideType, "overrideType"); + Utils.checkNotNull(amount, "amount"); + Utils.checkNotNull(amountType, "amountType"); + this.employeeStateFieldUuid = employeeStateFieldUuid; + this.overrideType = overrideType; + this.amount = amount; + this.amountType = amountType; + } + + public State() { + this(Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty()); + } + + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + @JsonIgnore + public Optional employeeStateFieldUuid() { + return employeeStateFieldUuid; + } + + /** + * Override mode. Only `one_time` is currently exposed. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional overrideType() { + return (Optional) overrideType; + } + + /** + * The amount that was withheld for this payroll. + */ + @JsonIgnore + public Optional amount() { + return amount; + } + + /** + * How to interpret the amount. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional amountType() { + return (Optional) amountType; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + public State withEmployeeStateFieldUuid(String employeeStateFieldUuid) { + Utils.checkNotNull(employeeStateFieldUuid, "employeeStateFieldUuid"); + this.employeeStateFieldUuid = Optional.ofNullable(employeeStateFieldUuid); + return this; + } + + + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + public State withEmployeeStateFieldUuid(Optional employeeStateFieldUuid) { + Utils.checkNotNull(employeeStateFieldUuid, "employeeStateFieldUuid"); + this.employeeStateFieldUuid = employeeStateFieldUuid; + return this; + } + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public State withOverrideType(PayrollEmployeeCompensationsTypeOverrideType overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = Optional.ofNullable(overrideType); + return this; + } + + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public State withOverrideType(Optional overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = overrideType; + return this; + } + + /** + * The amount that was withheld for this payroll. + */ + public State withAmount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = Optional.ofNullable(amount); + return this; + } + + + /** + * The amount that was withheld for this payroll. + */ + public State withAmount(Optional amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + /** + * How to interpret the amount. + */ + public State withAmountType(PayrollEmployeeCompensationsTypeCustomWithholdingsAmountType amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = Optional.ofNullable(amountType); + return this; + } + + + /** + * How to interpret the amount. + */ + public State withAmountType(Optional amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = amountType; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + State other = (State) o; + return + Utils.enhancedDeepEquals(this.employeeStateFieldUuid, other.employeeStateFieldUuid) && + Utils.enhancedDeepEquals(this.overrideType, other.overrideType) && + Utils.enhancedDeepEquals(this.amount, other.amount) && + Utils.enhancedDeepEquals(this.amountType, other.amountType); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + employeeStateFieldUuid, overrideType, amount, + amountType); + } + + @Override + public String toString() { + return Utils.toString(State.class, + "employeeStateFieldUuid", employeeStateFieldUuid, + "overrideType", overrideType, + "amount", amount, + "amountType", amountType); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional employeeStateFieldUuid = Optional.empty(); + + private Optional overrideType = Optional.empty(); + + private Optional amount = Optional.empty(); + + private Optional amountType = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + public Builder employeeStateFieldUuid(String employeeStateFieldUuid) { + Utils.checkNotNull(employeeStateFieldUuid, "employeeStateFieldUuid"); + this.employeeStateFieldUuid = Optional.ofNullable(employeeStateFieldUuid); + return this; + } + + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + public Builder employeeStateFieldUuid(Optional employeeStateFieldUuid) { + Utils.checkNotNull(employeeStateFieldUuid, "employeeStateFieldUuid"); + this.employeeStateFieldUuid = employeeStateFieldUuid; + return this; + } + + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public Builder overrideType(PayrollEmployeeCompensationsTypeOverrideType overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = Optional.ofNullable(overrideType); + return this; + } + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public Builder overrideType(Optional overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = overrideType; + return this; + } + + + /** + * The amount that was withheld for this payroll. + */ + public Builder amount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = Optional.ofNullable(amount); + return this; + } + + /** + * The amount that was withheld for this payroll. + */ + public Builder amount(Optional amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + + /** + * How to interpret the amount. + */ + public Builder amountType(PayrollEmployeeCompensationsTypeCustomWithholdingsAmountType amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = Optional.ofNullable(amountType); + return this; + } + + /** + * How to interpret the amount. + */ + public Builder amountType(Optional amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = amountType; + return this; + } + + public State build() { + + return new State( + employeeStateFieldUuid, overrideType, amount, + amountType); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Status.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Status.java index 68a360ee2..57d618a99 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Status.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Status.java @@ -11,13 +11,17 @@ /** * Status * - *

    The status of the external payroll. The status will be `unprocessed` when the external payroll is - * created and transition to `processed` once tax liabilities are entered and finalized. Once in the - * `processed` status all actions that can edit an external payroll will be disabled. + *

    The batch's processing state. + * - `pending`: accepted, not yet started + * - `processing`: reports are being generated + * - `completed`: all reports finished + * - `failed`: the batch failed before completing */ public enum Status { - UNPROCESSED("unprocessed"), - PROCESSED("processed"); + PENDING("pending"), + PROCESSING("processing"), + COMPLETED("completed"), + FAILED("failed"); @JsonValue private final String value; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/SubscriptionTypes.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/SubscriptionTypes.java index 5933348a1..c8bd9d8ba 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/SubscriptionTypes.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/SubscriptionTypes.java @@ -24,7 +24,8 @@ public enum SubscriptionTypes { PAYROLL("Payroll"), PAYROLL_SYNC("PayrollSync"), PAY_SCHEDULE("PaySchedule"), - SIGNATORY("Signatory"); + SIGNATORY("Signatory"), + TIME_OFF_REQUEST("TimeOffRequest"); @JsonValue private final String value; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/TaxPayment.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/TaxPayment.java new file mode 100644 index 000000000..f5be4fcf7 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/TaxPayment.java @@ -0,0 +1,608 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.time.LocalDate; +import java.util.List; +import java.util.Optional; +import org.openapitools.jackson.nullable.JsonNullable; + +/** + * TaxPayment + * + *

    Representation of a tax payment made by Gusto to a tax agency on behalf of a company + */ +public class TaxPayment { + /** + * Unique identifier of the tax payment + */ + @JsonProperty("uuid") + private String uuid; + + /** + * Unique identifier of the company to which the tax payment belongs + */ + @JsonProperty("company_uuid") + private String companyUuid; + + /** + * The name of the tax agency this payment is submitted to + */ + @JsonProperty("agency_name") + private String agencyName; + + /** + * The tax jurisdiction this payment is for. A two-letter state code, or US for federal. + */ + @JsonProperty("jurisdiction") + private String jurisdiction; + + /** + * The start date of the period this payment covers + */ + @JsonProperty("period_start") + private LocalDate periodStart; + + /** + * The end date of the period this payment covers + */ + @JsonProperty("period_end") + private LocalDate periodEnd; + + /** + * The date this payment is due + */ + @JsonProperty("due_date") + private LocalDate dueDate; + + /** + * The date Gusto submitted this payment to the tax agency. It is null until submitted, and also if the + * payment is returned or cancelled after being sent. It is not guaranteed to stay set once populated. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("payment_sent_on") + private JsonNullable paymentSentOn; + + /** + * Total amount owed for this tax payment. Can be negative for corrections, refunds, or credits. + */ + @JsonProperty("amount") + private String amount; + + /** + * Amount paid toward this tax payment so far, sourced from the payment's running balance. "0.00" until + * paid; equal to `amount` once fully paid. + */ + @JsonProperty("amount_paid") + private String amountPaid; + + /** + * The payroll tax liabilities that make up this payment. Empty array when the payment has no + * associated payroll taxes. Only included in the response of GET + * /v1/companies/{company_uuid}/tax_payments/{uuid}. + * + *

    It is omitted from the list endpoint response. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("line_items") + private Optional> lineItems; + + @JsonCreator + public TaxPayment( + @JsonProperty("uuid") String uuid, + @JsonProperty("company_uuid") String companyUuid, + @JsonProperty("agency_name") String agencyName, + @JsonProperty("jurisdiction") String jurisdiction, + @JsonProperty("period_start") LocalDate periodStart, + @JsonProperty("period_end") LocalDate periodEnd, + @JsonProperty("due_date") LocalDate dueDate, + @JsonProperty("payment_sent_on") JsonNullable paymentSentOn, + @JsonProperty("amount") String amount, + @JsonProperty("amount_paid") String amountPaid, + @JsonProperty("line_items") Optional> lineItems) { + Utils.checkNotNull(uuid, "uuid"); + Utils.checkNotNull(companyUuid, "companyUuid"); + Utils.checkNotNull(agencyName, "agencyName"); + Utils.checkNotNull(jurisdiction, "jurisdiction"); + Utils.checkNotNull(periodStart, "periodStart"); + Utils.checkNotNull(periodEnd, "periodEnd"); + Utils.checkNotNull(dueDate, "dueDate"); + Utils.checkNotNull(paymentSentOn, "paymentSentOn"); + Utils.checkNotNull(amount, "amount"); + Utils.checkNotNull(amountPaid, "amountPaid"); + Utils.checkNotNull(lineItems, "lineItems"); + this.uuid = uuid; + this.companyUuid = companyUuid; + this.agencyName = agencyName; + this.jurisdiction = jurisdiction; + this.periodStart = periodStart; + this.periodEnd = periodEnd; + this.dueDate = dueDate; + this.paymentSentOn = paymentSentOn; + this.amount = amount; + this.amountPaid = amountPaid; + this.lineItems = lineItems; + } + + public TaxPayment( + String uuid, + String companyUuid, + String agencyName, + String jurisdiction, + LocalDate periodStart, + LocalDate periodEnd, + LocalDate dueDate, + String amount, + String amountPaid) { + this(uuid, companyUuid, agencyName, + jurisdiction, periodStart, periodEnd, + dueDate, JsonNullable.undefined(), amount, + amountPaid, Optional.empty()); + } + + /** + * Unique identifier of the tax payment + */ + @JsonIgnore + public String uuid() { + return uuid; + } + + /** + * Unique identifier of the company to which the tax payment belongs + */ + @JsonIgnore + public String companyUuid() { + return companyUuid; + } + + /** + * The name of the tax agency this payment is submitted to + */ + @JsonIgnore + public String agencyName() { + return agencyName; + } + + /** + * The tax jurisdiction this payment is for. A two-letter state code, or US for federal. + */ + @JsonIgnore + public String jurisdiction() { + return jurisdiction; + } + + /** + * The start date of the period this payment covers + */ + @JsonIgnore + public LocalDate periodStart() { + return periodStart; + } + + /** + * The end date of the period this payment covers + */ + @JsonIgnore + public LocalDate periodEnd() { + return periodEnd; + } + + /** + * The date this payment is due + */ + @JsonIgnore + public LocalDate dueDate() { + return dueDate; + } + + /** + * The date Gusto submitted this payment to the tax agency. It is null until submitted, and also if the + * payment is returned or cancelled after being sent. It is not guaranteed to stay set once populated. + */ + @JsonIgnore + public JsonNullable paymentSentOn() { + return paymentSentOn; + } + + /** + * Total amount owed for this tax payment. Can be negative for corrections, refunds, or credits. + */ + @JsonIgnore + public String amount() { + return amount; + } + + /** + * Amount paid toward this tax payment so far, sourced from the payment's running balance. "0.00" until + * paid; equal to `amount` once fully paid. + */ + @JsonIgnore + public String amountPaid() { + return amountPaid; + } + + /** + * The payroll tax liabilities that make up this payment. Empty array when the payment has no + * associated payroll taxes. Only included in the response of GET + * /v1/companies/{company_uuid}/tax_payments/{uuid}. + * + *

    It is omitted from the list endpoint response. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> lineItems() { + return (Optional>) lineItems; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Unique identifier of the tax payment + */ + public TaxPayment withUuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + /** + * Unique identifier of the company to which the tax payment belongs + */ + public TaxPayment withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + /** + * The name of the tax agency this payment is submitted to + */ + public TaxPayment withAgencyName(String agencyName) { + Utils.checkNotNull(agencyName, "agencyName"); + this.agencyName = agencyName; + return this; + } + + /** + * The tax jurisdiction this payment is for. A two-letter state code, or US for federal. + */ + public TaxPayment withJurisdiction(String jurisdiction) { + Utils.checkNotNull(jurisdiction, "jurisdiction"); + this.jurisdiction = jurisdiction; + return this; + } + + /** + * The start date of the period this payment covers + */ + public TaxPayment withPeriodStart(LocalDate periodStart) { + Utils.checkNotNull(periodStart, "periodStart"); + this.periodStart = periodStart; + return this; + } + + /** + * The end date of the period this payment covers + */ + public TaxPayment withPeriodEnd(LocalDate periodEnd) { + Utils.checkNotNull(periodEnd, "periodEnd"); + this.periodEnd = periodEnd; + return this; + } + + /** + * The date this payment is due + */ + public TaxPayment withDueDate(LocalDate dueDate) { + Utils.checkNotNull(dueDate, "dueDate"); + this.dueDate = dueDate; + return this; + } + + /** + * The date Gusto submitted this payment to the tax agency. It is null until submitted, and also if the + * payment is returned or cancelled after being sent. It is not guaranteed to stay set once populated. + */ + public TaxPayment withPaymentSentOn(LocalDate paymentSentOn) { + Utils.checkNotNull(paymentSentOn, "paymentSentOn"); + this.paymentSentOn = JsonNullable.of(paymentSentOn); + return this; + } + + /** + * The date Gusto submitted this payment to the tax agency. It is null until submitted, and also if the + * payment is returned or cancelled after being sent. It is not guaranteed to stay set once populated. + */ + public TaxPayment withPaymentSentOn(JsonNullable paymentSentOn) { + Utils.checkNotNull(paymentSentOn, "paymentSentOn"); + this.paymentSentOn = paymentSentOn; + return this; + } + + /** + * Total amount owed for this tax payment. Can be negative for corrections, refunds, or credits. + */ + public TaxPayment withAmount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + /** + * Amount paid toward this tax payment so far, sourced from the payment's running balance. "0.00" until + * paid; equal to `amount` once fully paid. + */ + public TaxPayment withAmountPaid(String amountPaid) { + Utils.checkNotNull(amountPaid, "amountPaid"); + this.amountPaid = amountPaid; + return this; + } + + /** + * The payroll tax liabilities that make up this payment. Empty array when the payment has no + * associated payroll taxes. Only included in the response of GET + * /v1/companies/{company_uuid}/tax_payments/{uuid}. + * + *

    It is omitted from the list endpoint response. + */ + public TaxPayment withLineItems(List lineItems) { + Utils.checkNotNull(lineItems, "lineItems"); + this.lineItems = Optional.ofNullable(lineItems); + return this; + } + + + /** + * The payroll tax liabilities that make up this payment. Empty array when the payment has no + * associated payroll taxes. Only included in the response of GET + * /v1/companies/{company_uuid}/tax_payments/{uuid}. + * + *

    It is omitted from the list endpoint response. + */ + public TaxPayment withLineItems(Optional> lineItems) { + Utils.checkNotNull(lineItems, "lineItems"); + this.lineItems = lineItems; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + TaxPayment other = (TaxPayment) o; + return + Utils.enhancedDeepEquals(this.uuid, other.uuid) && + Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && + Utils.enhancedDeepEquals(this.agencyName, other.agencyName) && + Utils.enhancedDeepEquals(this.jurisdiction, other.jurisdiction) && + Utils.enhancedDeepEquals(this.periodStart, other.periodStart) && + Utils.enhancedDeepEquals(this.periodEnd, other.periodEnd) && + Utils.enhancedDeepEquals(this.dueDate, other.dueDate) && + Utils.enhancedDeepEquals(this.paymentSentOn, other.paymentSentOn) && + Utils.enhancedDeepEquals(this.amount, other.amount) && + Utils.enhancedDeepEquals(this.amountPaid, other.amountPaid) && + Utils.enhancedDeepEquals(this.lineItems, other.lineItems); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + uuid, companyUuid, agencyName, + jurisdiction, periodStart, periodEnd, + dueDate, paymentSentOn, amount, + amountPaid, lineItems); + } + + @Override + public String toString() { + return Utils.toString(TaxPayment.class, + "uuid", uuid, + "companyUuid", companyUuid, + "agencyName", agencyName, + "jurisdiction", jurisdiction, + "periodStart", periodStart, + "periodEnd", periodEnd, + "dueDate", dueDate, + "paymentSentOn", paymentSentOn, + "amount", amount, + "amountPaid", amountPaid, + "lineItems", lineItems); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String uuid; + + private String companyUuid; + + private String agencyName; + + private String jurisdiction; + + private LocalDate periodStart; + + private LocalDate periodEnd; + + private LocalDate dueDate; + + private JsonNullable paymentSentOn = JsonNullable.undefined(); + + private String amount; + + private String amountPaid; + + private Optional> lineItems = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * Unique identifier of the tax payment + */ + public Builder uuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + + /** + * Unique identifier of the company to which the tax payment belongs + */ + public Builder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + + /** + * The name of the tax agency this payment is submitted to + */ + public Builder agencyName(String agencyName) { + Utils.checkNotNull(agencyName, "agencyName"); + this.agencyName = agencyName; + return this; + } + + + /** + * The tax jurisdiction this payment is for. A two-letter state code, or US for federal. + */ + public Builder jurisdiction(String jurisdiction) { + Utils.checkNotNull(jurisdiction, "jurisdiction"); + this.jurisdiction = jurisdiction; + return this; + } + + + /** + * The start date of the period this payment covers + */ + public Builder periodStart(LocalDate periodStart) { + Utils.checkNotNull(periodStart, "periodStart"); + this.periodStart = periodStart; + return this; + } + + + /** + * The end date of the period this payment covers + */ + public Builder periodEnd(LocalDate periodEnd) { + Utils.checkNotNull(periodEnd, "periodEnd"); + this.periodEnd = periodEnd; + return this; + } + + + /** + * The date this payment is due + */ + public Builder dueDate(LocalDate dueDate) { + Utils.checkNotNull(dueDate, "dueDate"); + this.dueDate = dueDate; + return this; + } + + + /** + * The date Gusto submitted this payment to the tax agency. It is null until submitted, and also if the + * payment is returned or cancelled after being sent. It is not guaranteed to stay set once populated. + */ + public Builder paymentSentOn(LocalDate paymentSentOn) { + Utils.checkNotNull(paymentSentOn, "paymentSentOn"); + this.paymentSentOn = JsonNullable.of(paymentSentOn); + return this; + } + + /** + * The date Gusto submitted this payment to the tax agency. It is null until submitted, and also if the + * payment is returned or cancelled after being sent. It is not guaranteed to stay set once populated. + */ + public Builder paymentSentOn(JsonNullable paymentSentOn) { + Utils.checkNotNull(paymentSentOn, "paymentSentOn"); + this.paymentSentOn = paymentSentOn; + return this; + } + + + /** + * Total amount owed for this tax payment. Can be negative for corrections, refunds, or credits. + */ + public Builder amount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + + /** + * Amount paid toward this tax payment so far, sourced from the payment's running balance. "0.00" until + * paid; equal to `amount` once fully paid. + */ + public Builder amountPaid(String amountPaid) { + Utils.checkNotNull(amountPaid, "amountPaid"); + this.amountPaid = amountPaid; + return this; + } + + + /** + * The payroll tax liabilities that make up this payment. Empty array when the payment has no + * associated payroll taxes. Only included in the response of GET + * /v1/companies/{company_uuid}/tax_payments/{uuid}. + * + *

    It is omitted from the list endpoint response. + */ + public Builder lineItems(List lineItems) { + Utils.checkNotNull(lineItems, "lineItems"); + this.lineItems = Optional.ofNullable(lineItems); + return this; + } + + /** + * The payroll tax liabilities that make up this payment. Empty array when the payment has no + * associated payroll taxes. Only included in the response of GET + * /v1/companies/{company_uuid}/tax_payments/{uuid}. + * + *

    It is omitted from the list endpoint response. + */ + public Builder lineItems(Optional> lineItems) { + Utils.checkNotNull(lineItems, "lineItems"); + this.lineItems = lineItems; + return this; + } + + public TaxPayment build() { + + return new TaxPayment( + uuid, companyUuid, agencyName, + jurisdiction, periodStart, periodEnd, + dueDate, paymentSentOn, amount, + amountPaid, lineItems); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/TaxPaymentLineItem.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/TaxPaymentLineItem.java new file mode 100644 index 000000000..df456edfb --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/TaxPaymentLineItem.java @@ -0,0 +1,185 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Override; +import java.lang.String; + +/** + * TaxPaymentLineItem + * + *

    A single payroll tax liability rolled up into a tax payment + */ +public class TaxPaymentLineItem { + /** + * Unique identifier of the payroll this liability came from + */ + @JsonProperty("payroll_uuid") + private String payrollUuid; + + /** + * Unique identifier of the tax type this liability is for + */ + @JsonProperty("unique_tax_id") + private String uniqueTaxId; + + /** + * The amount of this liability included in the tax payment + */ + @JsonProperty("amount") + private String amount; + + @JsonCreator + public TaxPaymentLineItem( + @JsonProperty("payroll_uuid") String payrollUuid, + @JsonProperty("unique_tax_id") String uniqueTaxId, + @JsonProperty("amount") String amount) { + Utils.checkNotNull(payrollUuid, "payrollUuid"); + Utils.checkNotNull(uniqueTaxId, "uniqueTaxId"); + Utils.checkNotNull(amount, "amount"); + this.payrollUuid = payrollUuid; + this.uniqueTaxId = uniqueTaxId; + this.amount = amount; + } + + /** + * Unique identifier of the payroll this liability came from + */ + @JsonIgnore + public String payrollUuid() { + return payrollUuid; + } + + /** + * Unique identifier of the tax type this liability is for + */ + @JsonIgnore + public String uniqueTaxId() { + return uniqueTaxId; + } + + /** + * The amount of this liability included in the tax payment + */ + @JsonIgnore + public String amount() { + return amount; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Unique identifier of the payroll this liability came from + */ + public TaxPaymentLineItem withPayrollUuid(String payrollUuid) { + Utils.checkNotNull(payrollUuid, "payrollUuid"); + this.payrollUuid = payrollUuid; + return this; + } + + /** + * Unique identifier of the tax type this liability is for + */ + public TaxPaymentLineItem withUniqueTaxId(String uniqueTaxId) { + Utils.checkNotNull(uniqueTaxId, "uniqueTaxId"); + this.uniqueTaxId = uniqueTaxId; + return this; + } + + /** + * The amount of this liability included in the tax payment + */ + public TaxPaymentLineItem withAmount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + TaxPaymentLineItem other = (TaxPaymentLineItem) o; + return + Utils.enhancedDeepEquals(this.payrollUuid, other.payrollUuid) && + Utils.enhancedDeepEquals(this.uniqueTaxId, other.uniqueTaxId) && + Utils.enhancedDeepEquals(this.amount, other.amount); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + payrollUuid, uniqueTaxId, amount); + } + + @Override + public String toString() { + return Utils.toString(TaxPaymentLineItem.class, + "payrollUuid", payrollUuid, + "uniqueTaxId", uniqueTaxId, + "amount", amount); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String payrollUuid; + + private String uniqueTaxId; + + private String amount; + + private Builder() { + // force use of static builder() method + } + + + /** + * Unique identifier of the payroll this liability came from + */ + public Builder payrollUuid(String payrollUuid) { + Utils.checkNotNull(payrollUuid, "payrollUuid"); + this.payrollUuid = payrollUuid; + return this; + } + + + /** + * Unique identifier of the tax type this liability is for + */ + public Builder uniqueTaxId(String uniqueTaxId) { + Utils.checkNotNull(uniqueTaxId, "uniqueTaxId"); + this.uniqueTaxId = uniqueTaxId; + return this; + } + + + /** + * The amount of this liability included in the tax payment + */ + public Builder amount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + public TaxPaymentLineItem build() { + + return new TaxPaymentLineItem( + payrollUuid, uniqueTaxId, amount); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/TaxRequirement.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/TaxRequirement.java index 3cc561c74..078888079 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/TaxRequirement.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/TaxRequirement.java @@ -74,6 +74,22 @@ public class TaxRequirement { @JsonProperty("editable") private Optional editable; + /** + * Whether this requirement, when blank, would block payroll processing for the company in this state. + * Stable across changes to the field's value: a `payroll_blocking: true` field reports `true` whether + * currently empty or populated. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("payroll_blocking") + private Optional payrollBlocking; + + /** + * Whether the current `value` is a default rather than an explicitly set one. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("default_value_applied") + private Optional defaultValueApplied; + @JsonCreator public TaxRequirement( @JsonProperty("key") Optional key, @@ -82,7 +98,9 @@ public TaxRequirement( @JsonProperty("description") JsonNullable description, @JsonProperty("value") JsonNullable value, @JsonProperty("metadata") Optional metadata, - @JsonProperty("editable") Optional editable) { + @JsonProperty("editable") Optional editable, + @JsonProperty("payroll_blocking") Optional payrollBlocking, + @JsonProperty("default_value_applied") Optional defaultValueApplied) { Utils.checkNotNull(key, "key"); Utils.checkNotNull(applicableIf, "applicableIf"); Utils.checkNotNull(label, "label"); @@ -90,6 +108,8 @@ public TaxRequirement( Utils.checkNotNull(value, "value"); Utils.checkNotNull(metadata, "metadata"); Utils.checkNotNull(editable, "editable"); + Utils.checkNotNull(payrollBlocking, "payrollBlocking"); + Utils.checkNotNull(defaultValueApplied, "defaultValueApplied"); this.key = key; this.applicableIf = applicableIf; this.label = label; @@ -97,12 +117,14 @@ public TaxRequirement( this.value = value; this.metadata = metadata; this.editable = editable; + this.payrollBlocking = payrollBlocking; + this.defaultValueApplied = defaultValueApplied; } public TaxRequirement() { this(Optional.empty(), Optional.empty(), Optional.empty(), JsonNullable.undefined(), JsonNullable.undefined(), Optional.empty(), - Optional.empty()); + Optional.empty(), Optional.empty(), Optional.empty()); } /** @@ -169,6 +191,24 @@ public Optional editable() { return editable; } + /** + * Whether this requirement, when blank, would block payroll processing for the company in this state. + * Stable across changes to the field's value: a `payroll_blocking: true` field reports `true` whether + * currently empty or populated. + */ + @JsonIgnore + public Optional payrollBlocking() { + return payrollBlocking; + } + + /** + * Whether the current `value` is a default rather than an explicitly set one. + */ + @JsonIgnore + public Optional defaultValueApplied() { + return defaultValueApplied; + } + public static Builder builder() { return new Builder(); } @@ -315,6 +355,48 @@ public TaxRequirement withEditable(Optional editable) { return this; } + /** + * Whether this requirement, when blank, would block payroll processing for the company in this state. + * Stable across changes to the field's value: a `payroll_blocking: true` field reports `true` whether + * currently empty or populated. + */ + public TaxRequirement withPayrollBlocking(boolean payrollBlocking) { + Utils.checkNotNull(payrollBlocking, "payrollBlocking"); + this.payrollBlocking = Optional.ofNullable(payrollBlocking); + return this; + } + + + /** + * Whether this requirement, when blank, would block payroll processing for the company in this state. + * Stable across changes to the field's value: a `payroll_blocking: true` field reports `true` whether + * currently empty or populated. + */ + public TaxRequirement withPayrollBlocking(Optional payrollBlocking) { + Utils.checkNotNull(payrollBlocking, "payrollBlocking"); + this.payrollBlocking = payrollBlocking; + return this; + } + + /** + * Whether the current `value` is a default rather than an explicitly set one. + */ + public TaxRequirement withDefaultValueApplied(boolean defaultValueApplied) { + Utils.checkNotNull(defaultValueApplied, "defaultValueApplied"); + this.defaultValueApplied = Optional.ofNullable(defaultValueApplied); + return this; + } + + + /** + * Whether the current `value` is a default rather than an explicitly set one. + */ + public TaxRequirement withDefaultValueApplied(Optional defaultValueApplied) { + Utils.checkNotNull(defaultValueApplied, "defaultValueApplied"); + this.defaultValueApplied = defaultValueApplied; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -331,7 +413,9 @@ public boolean equals(java.lang.Object o) { Utils.enhancedDeepEquals(this.description, other.description) && Utils.enhancedDeepEquals(this.value, other.value) && Utils.enhancedDeepEquals(this.metadata, other.metadata) && - Utils.enhancedDeepEquals(this.editable, other.editable); + Utils.enhancedDeepEquals(this.editable, other.editable) && + Utils.enhancedDeepEquals(this.payrollBlocking, other.payrollBlocking) && + Utils.enhancedDeepEquals(this.defaultValueApplied, other.defaultValueApplied); } @Override @@ -339,7 +423,7 @@ public int hashCode() { return Utils.enhancedHash( key, applicableIf, label, description, value, metadata, - editable); + editable, payrollBlocking, defaultValueApplied); } @Override @@ -351,7 +435,9 @@ public String toString() { "description", description, "value", value, "metadata", metadata, - "editable", editable); + "editable", editable, + "payrollBlocking", payrollBlocking, + "defaultValueApplied", defaultValueApplied); } @SuppressWarnings("UnusedReturnValue") @@ -371,6 +457,10 @@ public final static class Builder { private Optional editable = Optional.empty(); + private Optional payrollBlocking = Optional.empty(); + + private Optional defaultValueApplied = Optional.empty(); + private Builder() { // force use of static builder() method } @@ -518,12 +608,54 @@ public Builder editable(Optional editable) { return this; } + + /** + * Whether this requirement, when blank, would block payroll processing for the company in this state. + * Stable across changes to the field's value: a `payroll_blocking: true` field reports `true` whether + * currently empty or populated. + */ + public Builder payrollBlocking(boolean payrollBlocking) { + Utils.checkNotNull(payrollBlocking, "payrollBlocking"); + this.payrollBlocking = Optional.ofNullable(payrollBlocking); + return this; + } + + /** + * Whether this requirement, when blank, would block payroll processing for the company in this state. + * Stable across changes to the field's value: a `payroll_blocking: true` field reports `true` whether + * currently empty or populated. + */ + public Builder payrollBlocking(Optional payrollBlocking) { + Utils.checkNotNull(payrollBlocking, "payrollBlocking"); + this.payrollBlocking = payrollBlocking; + return this; + } + + + /** + * Whether the current `value` is a default rather than an explicitly set one. + */ + public Builder defaultValueApplied(boolean defaultValueApplied) { + Utils.checkNotNull(defaultValueApplied, "defaultValueApplied"); + this.defaultValueApplied = Optional.ofNullable(defaultValueApplied); + return this; + } + + /** + * Whether the current `value` is a default rather than an explicitly set one. + */ + public Builder defaultValueApplied(Optional defaultValueApplied) { + Utils.checkNotNull(defaultValueApplied, "defaultValueApplied"); + this.defaultValueApplied = defaultValueApplied; + return this; + } + public TaxRequirement build() { return new TaxRequirement( key, applicableIf, label, description, value, metadata, - editable); + editable, payrollBlocking, defaultValueApplied); } } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/TaxRequirementMetadata.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/TaxRequirementMetadata.java index f265bae1c..fdaa73522 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/TaxRequirementMetadata.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/TaxRequirementMetadata.java @@ -35,14 +35,14 @@ public class TaxRequirementMetadata { * `risk_class_description`, and `rate_type` */ @JsonProperty("type") - private TaxRequirementMetadataType type; + private Type type; /** * [for `select` or `radio`] An array of objects describing the possible values. */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("options") - private Optional> options; + private Optional> options; /** * [for `workers_compensation_rate`] The industry risk class code for the rate being requested @@ -107,8 +107,8 @@ public class TaxRequirementMetadata { @JsonCreator public TaxRequirementMetadata( - @JsonProperty("type") TaxRequirementMetadataType type, - @JsonProperty("options") Optional> options, + @JsonProperty("type") Type type, + @JsonProperty("options") Optional> options, @JsonProperty("risk_class_code") Optional riskClassCode, @JsonProperty("risk_class_description") Optional riskClassDescription, @JsonProperty("rate_type") Optional rateType, @@ -134,7 +134,7 @@ public TaxRequirementMetadata( } public TaxRequirementMetadata( - TaxRequirementMetadataType type) { + Type type) { this(type, Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), JsonNullable.undefined(), JsonNullable.undefined(), Optional.empty()); @@ -157,7 +157,7 @@ public TaxRequirementMetadata( * `risk_class_description`, and `rate_type` */ @JsonIgnore - public TaxRequirementMetadataType type() { + public Type type() { return type; } @@ -166,8 +166,8 @@ public TaxRequirementMetadataType type() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional> options() { - return (Optional>) options; + public Optional> options() { + return (Optional>) options; } /** @@ -260,7 +260,7 @@ public static Builder builder() { * - `workers_compensation_rate`: A decimal value representing a percentage, see `risk_class_code`, * `risk_class_description`, and `rate_type` */ - public TaxRequirementMetadata withType(TaxRequirementMetadataType type) { + public TaxRequirementMetadata withType(Type type) { Utils.checkNotNull(type, "type"); this.type = type; return this; @@ -269,7 +269,7 @@ public TaxRequirementMetadata withType(TaxRequirementMetadataType type) { /** * [for `select` or `radio`] An array of objects describing the possible values. */ - public TaxRequirementMetadata withOptions(List options) { + public TaxRequirementMetadata withOptions(List options) { Utils.checkNotNull(options, "options"); this.options = Optional.ofNullable(options); return this; @@ -279,7 +279,7 @@ public TaxRequirementMetadata withOptions(List op /** * [for `select` or `radio`] An array of objects describing the possible values. */ - public TaxRequirementMetadata withOptions(Optional> options) { + public TaxRequirementMetadata withOptions(Optional> options) { Utils.checkNotNull(options, "options"); this.options = options; return this; @@ -479,9 +479,9 @@ public String toString() { @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private TaxRequirementMetadataType type; + private Type type; - private Optional> options = Optional.empty(); + private Optional> options = Optional.empty(); private Optional riskClassCode = Optional.empty(); @@ -516,7 +516,7 @@ private Builder() { * - `workers_compensation_rate`: A decimal value representing a percentage, see `risk_class_code`, * `risk_class_description`, and `rate_type` */ - public Builder type(TaxRequirementMetadataType type) { + public Builder type(Type type) { Utils.checkNotNull(type, "type"); this.type = type; return this; @@ -526,7 +526,7 @@ public Builder type(TaxRequirementMetadataType type) { /** * [for `select` or `radio`] An array of objects describing the possible values. */ - public Builder options(List options) { + public Builder options(List options) { Utils.checkNotNull(options, "options"); this.options = Optional.ofNullable(options); return this; @@ -535,7 +535,7 @@ public Builder options(List options) { /** * [for `select` or `radio`] An array of objects describing the possible values. */ - public Builder options(Optional> options) { + public Builder options(Optional> options) { Utils.checkNotNull(options, "options"); this.options = options; return this; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/TaxRequirementMetadataOptions.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/TaxRequirementMetadataOptions.java deleted file mode 100644 index 11f27781f..000000000 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/TaxRequirementMetadataOptions.java +++ /dev/null @@ -1,209 +0,0 @@ -/* - * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - */ -package com.gusto.embedded_api.models.components; - -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonIgnore; -import com.fasterxml.jackson.annotation.JsonInclude.Include; -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.gusto.embedded_api.utils.Utils; -import java.lang.Override; -import java.lang.String; -import org.openapitools.jackson.nullable.JsonNullable; - - -public class TaxRequirementMetadataOptions { - /** - * A customer facing label for the answer - */ - @JsonProperty("label") - private String label; - - /** - * The actual value to be submitted - */ - @JsonProperty("value") - private TaxRequirementMetadataValue value; - - /** - * A less verbose label that may sometimes be available - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("short_label") - private JsonNullable shortLabel; - - @JsonCreator - public TaxRequirementMetadataOptions( - @JsonProperty("label") String label, - @JsonProperty("value") TaxRequirementMetadataValue value, - @JsonProperty("short_label") JsonNullable shortLabel) { - Utils.checkNotNull(label, "label"); - Utils.checkNotNull(value, "value"); - Utils.checkNotNull(shortLabel, "shortLabel"); - this.label = label; - this.value = value; - this.shortLabel = shortLabel; - } - - public TaxRequirementMetadataOptions( - String label, - TaxRequirementMetadataValue value) { - this(label, value, JsonNullable.undefined()); - } - - /** - * A customer facing label for the answer - */ - @JsonIgnore - public String label() { - return label; - } - - /** - * The actual value to be submitted - */ - @JsonIgnore - public TaxRequirementMetadataValue value() { - return value; - } - - /** - * A less verbose label that may sometimes be available - */ - @JsonIgnore - public JsonNullable shortLabel() { - return shortLabel; - } - - public static Builder builder() { - return new Builder(); - } - - - /** - * A customer facing label for the answer - */ - public TaxRequirementMetadataOptions withLabel(String label) { - Utils.checkNotNull(label, "label"); - this.label = label; - return this; - } - - /** - * The actual value to be submitted - */ - public TaxRequirementMetadataOptions withValue(TaxRequirementMetadataValue value) { - Utils.checkNotNull(value, "value"); - this.value = value; - return this; - } - - /** - * A less verbose label that may sometimes be available - */ - public TaxRequirementMetadataOptions withShortLabel(String shortLabel) { - Utils.checkNotNull(shortLabel, "shortLabel"); - this.shortLabel = JsonNullable.of(shortLabel); - return this; - } - - /** - * A less verbose label that may sometimes be available - */ - public TaxRequirementMetadataOptions withShortLabel(JsonNullable shortLabel) { - Utils.checkNotNull(shortLabel, "shortLabel"); - this.shortLabel = shortLabel; - return this; - } - - @Override - public boolean equals(java.lang.Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - TaxRequirementMetadataOptions other = (TaxRequirementMetadataOptions) o; - return - Utils.enhancedDeepEquals(this.label, other.label) && - Utils.enhancedDeepEquals(this.value, other.value) && - Utils.enhancedDeepEquals(this.shortLabel, other.shortLabel); - } - - @Override - public int hashCode() { - return Utils.enhancedHash( - label, value, shortLabel); - } - - @Override - public String toString() { - return Utils.toString(TaxRequirementMetadataOptions.class, - "label", label, - "value", value, - "shortLabel", shortLabel); - } - - @SuppressWarnings("UnusedReturnValue") - public final static class Builder { - - private String label; - - private TaxRequirementMetadataValue value; - - private JsonNullable shortLabel = JsonNullable.undefined(); - - private Builder() { - // force use of static builder() method - } - - - /** - * A customer facing label for the answer - */ - public Builder label(String label) { - Utils.checkNotNull(label, "label"); - this.label = label; - return this; - } - - - /** - * The actual value to be submitted - */ - public Builder value(TaxRequirementMetadataValue value) { - Utils.checkNotNull(value, "value"); - this.value = value; - return this; - } - - - /** - * A less verbose label that may sometimes be available - */ - public Builder shortLabel(String shortLabel) { - Utils.checkNotNull(shortLabel, "shortLabel"); - this.shortLabel = JsonNullable.of(shortLabel); - return this; - } - - /** - * A less verbose label that may sometimes be available - */ - public Builder shortLabel(JsonNullable shortLabel) { - Utils.checkNotNull(shortLabel, "shortLabel"); - this.shortLabel = shortLabel; - return this; - } - - public TaxRequirementMetadataOptions build() { - - return new TaxRequirementMetadataOptions( - label, value, shortLabel); - } - - } -} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/TaxRequirementMetadataType.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/TaxRequirementMetadataType.java index ff394df15..255853690 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/TaxRequirementMetadataType.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/TaxRequirementMetadataType.java @@ -11,30 +11,11 @@ /** * TaxRequirementMetadataType * - *

    Describes the type of requirement - each type may have additional metadata properties to describe - * possible values, formats, etc. - * - *

    - `text`: free-text input, no additional requirements - * - `currency`: a value representing a dollar amount, e.g. `374.55` representing `$374.55` - * - `radio`: choose one of options provided, see `options` - * - `select`: choose one of options provided, see `options` - * - `percent`: A decimal value representing a percentage, e.g. `0.034` representing `3.4%` - * - `account_number`: An account number for a tax agency, more information provided by `mask` and - * `prefix` - * - `tax_rate`: A decimal value representing a tax rate, e.g. `0.034` representing a tax rate of - * `3.4%`, see `validation` for additional validation guidance - * - `workers_compensation_rate`: A decimal value representing a percentage, see `risk_class_code`, - * `risk_class_description`, and `rate_type` + *

    Describes the type of tax_rate validation rule */ public enum TaxRequirementMetadataType { - TEXT("text"), - CURRENCY("currency"), - RADIO("radio"), - SELECT("select"), - PERCENT("percent"), - ACCOUNT_NUMBER("account_number"), - TAX_RATE("tax_rate"), - WORKERS_COMPENSATION_RATE("workers_compensation_rate"); + ONE_OF("one_of"), + MIN_MAX("min_max"); @JsonValue private final String value; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Totals.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Totals.java index 4629a6762..00e8dc476 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Totals.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Totals.java @@ -13,64 +13,60 @@ import java.lang.String; import java.util.Optional; -/** - * Totals - * - *

    The subtotals for the payroll. - */ + public class Totals { /** - * The total company debit for the payroll. + * The total amount for the group of contractor payments. */ @JsonInclude(Include.NON_ABSENT) - @JsonProperty("company_debit") - private Optional companyDebit; + @JsonProperty("amount") + private Optional amount; /** - * The total company net pay for the payroll. + * The total debit amount for the group of contractor payments. Sum of wage & reimbursement amount. */ @JsonInclude(Include.NON_ABSENT) - @JsonProperty("net_pay_debit") - private Optional netPayDebit; + @JsonProperty("debit_amount") + private Optional debitAmount; /** - * The total child support debit for the payroll. + * The total wage amount for the group of contractor payments. */ @JsonInclude(Include.NON_ABSENT) - @JsonProperty("child_support_debit") - private Optional childSupportDebit; + @JsonProperty("wage_amount") + private Optional wageAmount; /** - * The total reimbursements for the payroll. + * The total reimbursement amount for the group of contractor payments. */ @JsonInclude(Include.NON_ABSENT) - @JsonProperty("reimbursement_debit") - private Optional reimbursementDebit; + @JsonProperty("reimbursement_amount") + private Optional reimbursementAmount; /** - * The total tax debit for the payroll. + * The total check amount for the group of contractor payments. */ @JsonInclude(Include.NON_ABSENT) - @JsonProperty("tax_debit") - private Optional taxDebit; + @JsonProperty("check_amount") + private Optional checkAmount; @JsonCreator public Totals( - @JsonProperty("company_debit") Optional companyDebit, - @JsonProperty("net_pay_debit") Optional netPayDebit, - @JsonProperty("child_support_debit") Optional childSupportDebit, - @JsonProperty("reimbursement_debit") Optional reimbursementDebit, - @JsonProperty("tax_debit") Optional taxDebit) { - Utils.checkNotNull(companyDebit, "companyDebit"); - Utils.checkNotNull(netPayDebit, "netPayDebit"); - Utils.checkNotNull(childSupportDebit, "childSupportDebit"); - Utils.checkNotNull(reimbursementDebit, "reimbursementDebit"); - Utils.checkNotNull(taxDebit, "taxDebit"); - this.companyDebit = companyDebit; - this.netPayDebit = netPayDebit; - this.childSupportDebit = childSupportDebit; - this.reimbursementDebit = reimbursementDebit; - this.taxDebit = taxDebit; + @JsonProperty("amount") Optional amount, + @JsonProperty("debit_amount") Optional debitAmount, + @JsonProperty("wage_amount") Optional wageAmount, + @JsonProperty("reimbursement_amount") Optional reimbursementAmount, + @JsonProperty("check_amount") Optional checkAmount) { + Utils.checkNotNull(amount, "amount"); + Utils.checkNotNull(debitAmount, "debitAmount"); + Utils.checkNotNull(wageAmount, "wageAmount"); + Utils.checkNotNull(reimbursementAmount, "reimbursementAmount"); + Utils.checkNotNull(checkAmount, "checkAmount"); + this.amount = amount; + this.debitAmount = debitAmount; + this.wageAmount = wageAmount; + this.reimbursementAmount = reimbursementAmount; + this.checkAmount = checkAmount; } public Totals() { @@ -79,43 +75,43 @@ public Totals() { } /** - * The total company debit for the payroll. + * The total amount for the group of contractor payments. */ @JsonIgnore - public Optional companyDebit() { - return companyDebit; + public Optional amount() { + return amount; } /** - * The total company net pay for the payroll. + * The total debit amount for the group of contractor payments. Sum of wage & reimbursement amount. */ @JsonIgnore - public Optional netPayDebit() { - return netPayDebit; + public Optional debitAmount() { + return debitAmount; } /** - * The total child support debit for the payroll. + * The total wage amount for the group of contractor payments. */ @JsonIgnore - public Optional childSupportDebit() { - return childSupportDebit; + public Optional wageAmount() { + return wageAmount; } /** - * The total reimbursements for the payroll. + * The total reimbursement amount for the group of contractor payments. */ @JsonIgnore - public Optional reimbursementDebit() { - return reimbursementDebit; + public Optional reimbursementAmount() { + return reimbursementAmount; } /** - * The total tax debit for the payroll. + * The total check amount for the group of contractor payments. */ @JsonIgnore - public Optional taxDebit() { - return taxDebit; + public Optional checkAmount() { + return checkAmount; } public static Builder builder() { @@ -124,97 +120,97 @@ public static Builder builder() { /** - * The total company debit for the payroll. + * The total amount for the group of contractor payments. */ - public Totals withCompanyDebit(String companyDebit) { - Utils.checkNotNull(companyDebit, "companyDebit"); - this.companyDebit = Optional.ofNullable(companyDebit); + public Totals withAmount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = Optional.ofNullable(amount); return this; } /** - * The total company debit for the payroll. + * The total amount for the group of contractor payments. */ - public Totals withCompanyDebit(Optional companyDebit) { - Utils.checkNotNull(companyDebit, "companyDebit"); - this.companyDebit = companyDebit; + public Totals withAmount(Optional amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; return this; } /** - * The total company net pay for the payroll. + * The total debit amount for the group of contractor payments. Sum of wage & reimbursement amount. */ - public Totals withNetPayDebit(String netPayDebit) { - Utils.checkNotNull(netPayDebit, "netPayDebit"); - this.netPayDebit = Optional.ofNullable(netPayDebit); + public Totals withDebitAmount(String debitAmount) { + Utils.checkNotNull(debitAmount, "debitAmount"); + this.debitAmount = Optional.ofNullable(debitAmount); return this; } /** - * The total company net pay for the payroll. + * The total debit amount for the group of contractor payments. Sum of wage & reimbursement amount. */ - public Totals withNetPayDebit(Optional netPayDebit) { - Utils.checkNotNull(netPayDebit, "netPayDebit"); - this.netPayDebit = netPayDebit; + public Totals withDebitAmount(Optional debitAmount) { + Utils.checkNotNull(debitAmount, "debitAmount"); + this.debitAmount = debitAmount; return this; } /** - * The total child support debit for the payroll. + * The total wage amount for the group of contractor payments. */ - public Totals withChildSupportDebit(String childSupportDebit) { - Utils.checkNotNull(childSupportDebit, "childSupportDebit"); - this.childSupportDebit = Optional.ofNullable(childSupportDebit); + public Totals withWageAmount(String wageAmount) { + Utils.checkNotNull(wageAmount, "wageAmount"); + this.wageAmount = Optional.ofNullable(wageAmount); return this; } /** - * The total child support debit for the payroll. + * The total wage amount for the group of contractor payments. */ - public Totals withChildSupportDebit(Optional childSupportDebit) { - Utils.checkNotNull(childSupportDebit, "childSupportDebit"); - this.childSupportDebit = childSupportDebit; + public Totals withWageAmount(Optional wageAmount) { + Utils.checkNotNull(wageAmount, "wageAmount"); + this.wageAmount = wageAmount; return this; } /** - * The total reimbursements for the payroll. + * The total reimbursement amount for the group of contractor payments. */ - public Totals withReimbursementDebit(String reimbursementDebit) { - Utils.checkNotNull(reimbursementDebit, "reimbursementDebit"); - this.reimbursementDebit = Optional.ofNullable(reimbursementDebit); + public Totals withReimbursementAmount(String reimbursementAmount) { + Utils.checkNotNull(reimbursementAmount, "reimbursementAmount"); + this.reimbursementAmount = Optional.ofNullable(reimbursementAmount); return this; } /** - * The total reimbursements for the payroll. + * The total reimbursement amount for the group of contractor payments. */ - public Totals withReimbursementDebit(Optional reimbursementDebit) { - Utils.checkNotNull(reimbursementDebit, "reimbursementDebit"); - this.reimbursementDebit = reimbursementDebit; + public Totals withReimbursementAmount(Optional reimbursementAmount) { + Utils.checkNotNull(reimbursementAmount, "reimbursementAmount"); + this.reimbursementAmount = reimbursementAmount; return this; } /** - * The total tax debit for the payroll. + * The total check amount for the group of contractor payments. */ - public Totals withTaxDebit(String taxDebit) { - Utils.checkNotNull(taxDebit, "taxDebit"); - this.taxDebit = Optional.ofNullable(taxDebit); + public Totals withCheckAmount(String checkAmount) { + Utils.checkNotNull(checkAmount, "checkAmount"); + this.checkAmount = Optional.ofNullable(checkAmount); return this; } /** - * The total tax debit for the payroll. + * The total check amount for the group of contractor payments. */ - public Totals withTaxDebit(Optional taxDebit) { - Utils.checkNotNull(taxDebit, "taxDebit"); - this.taxDebit = taxDebit; + public Totals withCheckAmount(Optional checkAmount) { + Utils.checkNotNull(checkAmount, "checkAmount"); + this.checkAmount = checkAmount; return this; } @@ -228,42 +224,42 @@ public boolean equals(java.lang.Object o) { } Totals other = (Totals) o; return - Utils.enhancedDeepEquals(this.companyDebit, other.companyDebit) && - Utils.enhancedDeepEquals(this.netPayDebit, other.netPayDebit) && - Utils.enhancedDeepEquals(this.childSupportDebit, other.childSupportDebit) && - Utils.enhancedDeepEquals(this.reimbursementDebit, other.reimbursementDebit) && - Utils.enhancedDeepEquals(this.taxDebit, other.taxDebit); + Utils.enhancedDeepEquals(this.amount, other.amount) && + Utils.enhancedDeepEquals(this.debitAmount, other.debitAmount) && + Utils.enhancedDeepEquals(this.wageAmount, other.wageAmount) && + Utils.enhancedDeepEquals(this.reimbursementAmount, other.reimbursementAmount) && + Utils.enhancedDeepEquals(this.checkAmount, other.checkAmount); } @Override public int hashCode() { return Utils.enhancedHash( - companyDebit, netPayDebit, childSupportDebit, - reimbursementDebit, taxDebit); + amount, debitAmount, wageAmount, + reimbursementAmount, checkAmount); } @Override public String toString() { return Utils.toString(Totals.class, - "companyDebit", companyDebit, - "netPayDebit", netPayDebit, - "childSupportDebit", childSupportDebit, - "reimbursementDebit", reimbursementDebit, - "taxDebit", taxDebit); + "amount", amount, + "debitAmount", debitAmount, + "wageAmount", wageAmount, + "reimbursementAmount", reimbursementAmount, + "checkAmount", checkAmount); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private Optional companyDebit = Optional.empty(); + private Optional amount = Optional.empty(); - private Optional netPayDebit = Optional.empty(); + private Optional debitAmount = Optional.empty(); - private Optional childSupportDebit = Optional.empty(); + private Optional wageAmount = Optional.empty(); - private Optional reimbursementDebit = Optional.empty(); + private Optional reimbursementAmount = Optional.empty(); - private Optional taxDebit = Optional.empty(); + private Optional checkAmount = Optional.empty(); private Builder() { // force use of static builder() method @@ -271,104 +267,104 @@ private Builder() { /** - * The total company debit for the payroll. + * The total amount for the group of contractor payments. */ - public Builder companyDebit(String companyDebit) { - Utils.checkNotNull(companyDebit, "companyDebit"); - this.companyDebit = Optional.ofNullable(companyDebit); + public Builder amount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = Optional.ofNullable(amount); return this; } /** - * The total company debit for the payroll. + * The total amount for the group of contractor payments. */ - public Builder companyDebit(Optional companyDebit) { - Utils.checkNotNull(companyDebit, "companyDebit"); - this.companyDebit = companyDebit; + public Builder amount(Optional amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; return this; } /** - * The total company net pay for the payroll. + * The total debit amount for the group of contractor payments. Sum of wage & reimbursement amount. */ - public Builder netPayDebit(String netPayDebit) { - Utils.checkNotNull(netPayDebit, "netPayDebit"); - this.netPayDebit = Optional.ofNullable(netPayDebit); + public Builder debitAmount(String debitAmount) { + Utils.checkNotNull(debitAmount, "debitAmount"); + this.debitAmount = Optional.ofNullable(debitAmount); return this; } /** - * The total company net pay for the payroll. + * The total debit amount for the group of contractor payments. Sum of wage & reimbursement amount. */ - public Builder netPayDebit(Optional netPayDebit) { - Utils.checkNotNull(netPayDebit, "netPayDebit"); - this.netPayDebit = netPayDebit; + public Builder debitAmount(Optional debitAmount) { + Utils.checkNotNull(debitAmount, "debitAmount"); + this.debitAmount = debitAmount; return this; } /** - * The total child support debit for the payroll. + * The total wage amount for the group of contractor payments. */ - public Builder childSupportDebit(String childSupportDebit) { - Utils.checkNotNull(childSupportDebit, "childSupportDebit"); - this.childSupportDebit = Optional.ofNullable(childSupportDebit); + public Builder wageAmount(String wageAmount) { + Utils.checkNotNull(wageAmount, "wageAmount"); + this.wageAmount = Optional.ofNullable(wageAmount); return this; } /** - * The total child support debit for the payroll. + * The total wage amount for the group of contractor payments. */ - public Builder childSupportDebit(Optional childSupportDebit) { - Utils.checkNotNull(childSupportDebit, "childSupportDebit"); - this.childSupportDebit = childSupportDebit; + public Builder wageAmount(Optional wageAmount) { + Utils.checkNotNull(wageAmount, "wageAmount"); + this.wageAmount = wageAmount; return this; } /** - * The total reimbursements for the payroll. + * The total reimbursement amount for the group of contractor payments. */ - public Builder reimbursementDebit(String reimbursementDebit) { - Utils.checkNotNull(reimbursementDebit, "reimbursementDebit"); - this.reimbursementDebit = Optional.ofNullable(reimbursementDebit); + public Builder reimbursementAmount(String reimbursementAmount) { + Utils.checkNotNull(reimbursementAmount, "reimbursementAmount"); + this.reimbursementAmount = Optional.ofNullable(reimbursementAmount); return this; } /** - * The total reimbursements for the payroll. + * The total reimbursement amount for the group of contractor payments. */ - public Builder reimbursementDebit(Optional reimbursementDebit) { - Utils.checkNotNull(reimbursementDebit, "reimbursementDebit"); - this.reimbursementDebit = reimbursementDebit; + public Builder reimbursementAmount(Optional reimbursementAmount) { + Utils.checkNotNull(reimbursementAmount, "reimbursementAmount"); + this.reimbursementAmount = reimbursementAmount; return this; } /** - * The total tax debit for the payroll. + * The total check amount for the group of contractor payments. */ - public Builder taxDebit(String taxDebit) { - Utils.checkNotNull(taxDebit, "taxDebit"); - this.taxDebit = Optional.ofNullable(taxDebit); + public Builder checkAmount(String checkAmount) { + Utils.checkNotNull(checkAmount, "checkAmount"); + this.checkAmount = Optional.ofNullable(checkAmount); return this; } /** - * The total tax debit for the payroll. + * The total check amount for the group of contractor payments. */ - public Builder taxDebit(Optional taxDebit) { - Utils.checkNotNull(taxDebit, "taxDebit"); - this.taxDebit = taxDebit; + public Builder checkAmount(Optional checkAmount) { + Utils.checkNotNull(checkAmount, "checkAmount"); + this.checkAmount = checkAmount; return this; } public Totals build() { return new Totals( - companyDebit, netPayDebit, childSupportDebit, - reimbursementDebit, taxDebit); + amount, debitAmount, wageAmount, + reimbursementAmount, checkAmount); } } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Type.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Type.java index ebca79b07..9b072173d 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Type.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Type.java @@ -8,11 +8,33 @@ import java.util.Objects; import java.util.Optional; +/** + * Type + * + *

    Describes the type of requirement - each type may have additional metadata properties to describe + * possible values, formats, etc. + * + *

    - `text`: free-text input, no additional requirements + * - `currency`: a value representing a dollar amount, e.g. `374.55` representing `$374.55` + * - `radio`: choose one of options provided, see `options` + * - `select`: choose one of options provided, see `options` + * - `percent`: A decimal value representing a percentage, e.g. `0.034` representing `3.4%` + * - `account_number`: An account number for a tax agency, more information provided by `mask` and + * `prefix` + * - `tax_rate`: A decimal value representing a tax rate, e.g. `0.034` representing a tax rate of + * `3.4%`, see `validation` for additional validation guidance + * - `workers_compensation_rate`: A decimal value representing a percentage, see `risk_class_code`, + * `risk_class_description`, and `rate_type` + */ public enum Type { - SINGLE("single"), - HOURLY_SALARIED("hourly_salaried"), - BY_EMPLOYEE("by_employee"), - BY_DEPARTMENT("by_department"); + TEXT("text"), + CURRENCY("currency"), + RADIO("radio"), + SELECT("select"), + PERCENT("percent"), + ACCOUNT_NUMBER("account_number"), + TAX_RATE("tax_rate"), + WORKERS_COMPENSATION_RATE("workers_compensation_rate"); @JsonValue private final String value; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/UnknownBulkReportItem.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/UnknownBulkReportItem.java new file mode 100644 index 000000000..a3ff04082 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/UnknownBulkReportItem.java @@ -0,0 +1,32 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.databind.JsonNode; +import com.gusto.embedded_api.utils.UnknownType; +import java.lang.Override; +import java.lang.String; + + +/** + * UnknownBulkReportItem + * + *

    A single report inside a bulk batch. Required fields depend on `report_type`: `custom_report` + * requires `columns` and `file_type`; `general_ledger` requires `payroll_uuid` and `aggregation`. + */ +public class UnknownBulkReportItem extends UnknownType implements BulkReportItem { + + @JsonCreator + public UnknownBulkReportItem(JsonNode rawNode) { + super(rawNode); + } + + @Override + public String reportType() { + return extractDiscriminator("report_type").orElse("UNKNOWN"); + } + +} \ No newline at end of file diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Validation.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Validation.java index e2557aa40..c0183a6c1 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Validation.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/Validation.java @@ -25,7 +25,7 @@ public class Validation { * Describes the type of tax_rate validation rule */ @JsonProperty("type") - private TaxRequirementMetadataValidationType type; + private TaxRequirementMetadataType type; /** * [for `min_max`] The inclusive lower bound of the tax rate @@ -51,7 +51,7 @@ public class Validation { @JsonCreator public Validation( - @JsonProperty("type") TaxRequirementMetadataValidationType type, + @JsonProperty("type") TaxRequirementMetadataType type, @JsonProperty("min") Optional min, @JsonProperty("max") Optional max, @JsonProperty("rates") Optional> rates) { @@ -66,7 +66,7 @@ public Validation( } public Validation( - TaxRequirementMetadataValidationType type) { + TaxRequirementMetadataType type) { this(type, Optional.empty(), Optional.empty(), Optional.empty()); } @@ -75,7 +75,7 @@ public Validation( * Describes the type of tax_rate validation rule */ @JsonIgnore - public TaxRequirementMetadataValidationType type() { + public TaxRequirementMetadataType type() { return type; } @@ -113,7 +113,7 @@ public static Builder builder() { /** * Describes the type of tax_rate validation rule */ - public Validation withType(TaxRequirementMetadataValidationType type) { + public Validation withType(TaxRequirementMetadataType type) { Utils.checkNotNull(type, "type"); this.type = type; return this; @@ -213,7 +213,7 @@ public String toString() { @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private TaxRequirementMetadataValidationType type; + private TaxRequirementMetadataType type; private Optional min = Optional.empty(); @@ -229,7 +229,7 @@ private Builder() { /** * Describes the type of tax_rate validation rule */ - public Builder type(TaxRequirementMetadataValidationType type) { + public Builder type(TaxRequirementMetadataType type) { Utils.checkNotNull(type, "type"); this.type = type; return this; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/WageType.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/WageType.java index e3bf07431..4e0ccab8b 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/WageType.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/WageType.java @@ -11,11 +11,11 @@ /** * WageType * - *

    The contractor's wage type, either "Fixed" or "Hourly". + *

    The wage type for the payment. */ public enum WageType { - FIXED("Fixed"), - HOURLY("Hourly"); + HOURLY("Hourly"), + FIXED("Fixed"); @JsonValue private final String value; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/WarningObject.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/WarningObject.java new file mode 100644 index 000000000..d5bc65392 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/components/WarningObject.java @@ -0,0 +1,254 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.util.Optional; + + +public class WarningObject { + /** + * Specifies where the warning occurs. Typically identifies the attribute or parameter related to the + * warning. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("error_key") + private Optional errorKey; + + /** + * Specifies the type of warning. Can be used to build custom warning handling. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("category") + private Optional category; + + /** + * Provides details about the warning. The message can be surfaced directly to the end user. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("message") + private Optional message; + + @JsonCreator + public WarningObject( + @JsonProperty("error_key") Optional errorKey, + @JsonProperty("category") Optional category, + @JsonProperty("message") Optional message) { + Utils.checkNotNull(errorKey, "errorKey"); + Utils.checkNotNull(category, "category"); + Utils.checkNotNull(message, "message"); + this.errorKey = errorKey; + this.category = category; + this.message = message; + } + + public WarningObject() { + this(Optional.empty(), Optional.empty(), Optional.empty()); + } + + /** + * Specifies where the warning occurs. Typically identifies the attribute or parameter related to the + * warning. + */ + @JsonIgnore + public Optional errorKey() { + return errorKey; + } + + /** + * Specifies the type of warning. Can be used to build custom warning handling. + */ + @JsonIgnore + public Optional category() { + return category; + } + + /** + * Provides details about the warning. The message can be surfaced directly to the end user. + */ + @JsonIgnore + public Optional message() { + return message; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Specifies where the warning occurs. Typically identifies the attribute or parameter related to the + * warning. + */ + public WarningObject withErrorKey(String errorKey) { + Utils.checkNotNull(errorKey, "errorKey"); + this.errorKey = Optional.ofNullable(errorKey); + return this; + } + + + /** + * Specifies where the warning occurs. Typically identifies the attribute or parameter related to the + * warning. + */ + public WarningObject withErrorKey(Optional errorKey) { + Utils.checkNotNull(errorKey, "errorKey"); + this.errorKey = errorKey; + return this; + } + + /** + * Specifies the type of warning. Can be used to build custom warning handling. + */ + public WarningObject withCategory(String category) { + Utils.checkNotNull(category, "category"); + this.category = Optional.ofNullable(category); + return this; + } + + + /** + * Specifies the type of warning. Can be used to build custom warning handling. + */ + public WarningObject withCategory(Optional category) { + Utils.checkNotNull(category, "category"); + this.category = category; + return this; + } + + /** + * Provides details about the warning. The message can be surfaced directly to the end user. + */ + public WarningObject withMessage(String message) { + Utils.checkNotNull(message, "message"); + this.message = Optional.ofNullable(message); + return this; + } + + + /** + * Provides details about the warning. The message can be surfaced directly to the end user. + */ + public WarningObject withMessage(Optional message) { + Utils.checkNotNull(message, "message"); + this.message = message; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + WarningObject other = (WarningObject) o; + return + Utils.enhancedDeepEquals(this.errorKey, other.errorKey) && + Utils.enhancedDeepEquals(this.category, other.category) && + Utils.enhancedDeepEquals(this.message, other.message); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + errorKey, category, message); + } + + @Override + public String toString() { + return Utils.toString(WarningObject.class, + "errorKey", errorKey, + "category", category, + "message", message); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional errorKey = Optional.empty(); + + private Optional category = Optional.empty(); + + private Optional message = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * Specifies where the warning occurs. Typically identifies the attribute or parameter related to the + * warning. + */ + public Builder errorKey(String errorKey) { + Utils.checkNotNull(errorKey, "errorKey"); + this.errorKey = Optional.ofNullable(errorKey); + return this; + } + + /** + * Specifies where the warning occurs. Typically identifies the attribute or parameter related to the + * warning. + */ + public Builder errorKey(Optional errorKey) { + Utils.checkNotNull(errorKey, "errorKey"); + this.errorKey = errorKey; + return this; + } + + + /** + * Specifies the type of warning. Can be used to build custom warning handling. + */ + public Builder category(String category) { + Utils.checkNotNull(category, "category"); + this.category = Optional.ofNullable(category); + return this; + } + + /** + * Specifies the type of warning. Can be used to build custom warning handling. + */ + public Builder category(Optional category) { + Utils.checkNotNull(category, "category"); + this.category = category; + return this; + } + + + /** + * Provides details about the warning. The message can be surfaced directly to the end user. + */ + public Builder message(String message) { + Utils.checkNotNull(message, "message"); + this.message = Optional.ofNullable(message); + return this; + } + + /** + * Provides details about the warning. The message can be surfaced directly to the end user. + */ + public Builder message(Optional message) { + Utils.checkNotNull(message, "message"); + this.message = message; + return this; + } + + public WarningObject build() { + + return new WarningObject( + errorKey, category, message); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/errors/ConflictErrorObject.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/errors/ConflictErrorObject.java index 940e50aff..57cca7b70 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/errors/ConflictErrorObject.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/errors/ConflictErrorObject.java @@ -115,8 +115,10 @@ public Optional deserializationException() { * *

    Conflict * - *

    This error occurs when the resource version provided does not match the current version. Retrieve - * the latest version and retry. + *

    This may happen when the resource version provided does not match the current version — retrieve the + * latest version and retry — or when the request conflicts with another in-progress operation on the + * same resource. See the [Errors + * Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. */ public static class Data { diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/errors/ForbiddenErrorObject.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/errors/ForbiddenErrorObject.java new file mode 100644 index 000000000..2470aff7a --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/errors/ForbiddenErrorObject.java @@ -0,0 +1,201 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.errors; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api.models.components.EntityErrorObject; +import com.gusto.embedded_api.utils.Blob; +import com.gusto.embedded_api.utils.Utils; +import jakarta.annotation.Nullable; +import java.io.InputStream; +import java.lang.Deprecated; +import java.lang.Exception; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.lang.Throwable; +import java.net.http.HttpResponse; +import java.util.List; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; + +@SuppressWarnings("serial") +public class ForbiddenErrorObject extends GustoEmbeddedException { + + @Nullable + private final Data data; + + @Nullable + private final Throwable deserializationException; + + public ForbiddenErrorObject( + int code, + byte[] body, + HttpResponse rawResponse, + @Nullable Data data, + @Nullable Throwable deserializationException) { + super("API error occurred", code, body, rawResponse, null); + this.data = data; + this.deserializationException = deserializationException; + } + + /** + * Parse a response into an instance of ForbiddenErrorObject. If deserialization of the response body fails, + * the resulting ForbiddenErrorObject instance will have a null data() value and a non-null deserializationException(). + */ + public static ForbiddenErrorObject from(HttpResponse response) { + try { + byte[] bytes = Utils.extractByteArrayFromBody(response); + Data data = Utils.mapper().readValue(bytes, Data.class); + return new ForbiddenErrorObject(response.statusCode(), bytes, response, data, null); + } catch (Exception e) { + return new ForbiddenErrorObject(response.statusCode(), null, response, null, e); + } + } + + /** + * Parse a response into an instance of ForbiddenErrorObject asynchronously. If deserialization of the response body fails, + * the resulting ForbiddenErrorObject instance will have a null data() value and a non-null deserializationException(). + */ + public static CompletableFuture fromAsync(HttpResponse response) { + return response.body() + .toByteArray() + .handle((bytes, err) -> { + // if a body read error occurs, we want to transform the exception + if (err != null) { + throw new AsyncAPIException( + "Error reading response body: " + err.getMessage(), + response.statusCode(), + null, + response, + err); + } + + try { + return new ForbiddenErrorObject( + response.statusCode(), + bytes, + response, + Utils.mapper().readValue( + bytes, + new TypeReference() { + }), + null); + } catch (Exception e) { + return new ForbiddenErrorObject( + response.statusCode(), + bytes, + response, + null, + e); + } + }); + } + + @Deprecated + public Optional> errors() { + return data().map(Data::errors); + } + + public Optional data() { + return Optional.ofNullable(data); + } + + /** + * Returns the exception if an error occurs while deserializing the response body. + */ + public Optional deserializationException() { + return Optional.ofNullable(deserializationException); + } + /** + * Data + * + *

    Forbidden + * + *

    The targeted company has been archived because its EIN was reassigned to a replacement company. Use + * the replacement company referenced in the error metadata. + */ + public static class Data { + + @JsonProperty("errors") + private List errors; + + @JsonCreator + public Data( + @JsonProperty("errors") List errors) { + Utils.checkNotNull(errors, "errors"); + this.errors = errors; + } + + @JsonIgnore + public List errors() { + return errors; + } + + public static Builder builder() { + return new Builder(); + } + + + public Data withErrors(List errors) { + Utils.checkNotNull(errors, "errors"); + this.errors = errors; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + Data other = (Data) o; + return + Utils.enhancedDeepEquals(this.errors, other.errors); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + errors); + } + + @Override + public String toString() { + return Utils.toString(Data.class, + "errors", errors); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private List errors; + + private Builder() { + // force use of static builder() method + } + + + public Builder errors(List errors) { + Utils.checkNotNull(errors, "errors"); + this.errors = errors; + return this; + } + + public Data build() { + + return new Data( + errors); + } + + } + } + +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/errors/Metadata.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/errors/Metadata.java index b5ecf4fba..2c7369cce 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/errors/Metadata.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/errors/Metadata.java @@ -16,17 +16,17 @@ public class Metadata { /** - * A categorization of the payroll blocker, e.g. "geocode_error" + * The UUID of the existing payroll cancellation batch that already used this idempotency key. */ @JsonInclude(Include.NON_ABSENT) - @JsonProperty("key") - private Optional key; + @JsonProperty("request_uuid") + private Optional requestUuid; @JsonCreator public Metadata( - @JsonProperty("key") Optional key) { - Utils.checkNotNull(key, "key"); - this.key = key; + @JsonProperty("request_uuid") Optional requestUuid) { + Utils.checkNotNull(requestUuid, "requestUuid"); + this.requestUuid = requestUuid; } public Metadata() { @@ -34,11 +34,11 @@ public Metadata() { } /** - * A categorization of the payroll blocker, e.g. "geocode_error" + * The UUID of the existing payroll cancellation batch that already used this idempotency key. */ @JsonIgnore - public Optional key() { - return key; + public Optional requestUuid() { + return requestUuid; } public static Builder builder() { @@ -47,21 +47,21 @@ public static Builder builder() { /** - * A categorization of the payroll blocker, e.g. "geocode_error" + * The UUID of the existing payroll cancellation batch that already used this idempotency key. */ - public Metadata withKey(String key) { - Utils.checkNotNull(key, "key"); - this.key = Optional.ofNullable(key); + public Metadata withRequestUuid(String requestUuid) { + Utils.checkNotNull(requestUuid, "requestUuid"); + this.requestUuid = Optional.ofNullable(requestUuid); return this; } /** - * A categorization of the payroll blocker, e.g. "geocode_error" + * The UUID of the existing payroll cancellation batch that already used this idempotency key. */ - public Metadata withKey(Optional key) { - Utils.checkNotNull(key, "key"); - this.key = key; + public Metadata withRequestUuid(Optional requestUuid) { + Utils.checkNotNull(requestUuid, "requestUuid"); + this.requestUuid = requestUuid; return this; } @@ -75,25 +75,25 @@ public boolean equals(java.lang.Object o) { } Metadata other = (Metadata) o; return - Utils.enhancedDeepEquals(this.key, other.key); + Utils.enhancedDeepEquals(this.requestUuid, other.requestUuid); } @Override public int hashCode() { return Utils.enhancedHash( - key); + requestUuid); } @Override public String toString() { return Utils.toString(Metadata.class, - "key", key); + "requestUuid", requestUuid); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private Optional key = Optional.empty(); + private Optional requestUuid = Optional.empty(); private Builder() { // force use of static builder() method @@ -101,27 +101,27 @@ private Builder() { /** - * A categorization of the payroll blocker, e.g. "geocode_error" + * The UUID of the existing payroll cancellation batch that already used this idempotency key. */ - public Builder key(String key) { - Utils.checkNotNull(key, "key"); - this.key = Optional.ofNullable(key); + public Builder requestUuid(String requestUuid) { + Utils.checkNotNull(requestUuid, "requestUuid"); + this.requestUuid = Optional.ofNullable(requestUuid); return this; } /** - * A categorization of the payroll blocker, e.g. "geocode_error" + * The UUID of the existing payroll cancellation batch that already used this idempotency key. */ - public Builder key(Optional key) { - Utils.checkNotNull(key, "key"); - this.key = key; + public Builder requestUuid(Optional requestUuid) { + Utils.checkNotNull(requestUuid, "requestUuid"); + this.requestUuid = requestUuid; return this; } public Metadata build() { return new Metadata( - key); + requestUuid); } } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/errors/PayrollBatchConflictError.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/errors/PayrollBatchConflictError.java new file mode 100644 index 000000000..8077b6271 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/errors/PayrollBatchConflictError.java @@ -0,0 +1,219 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.errors; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api.utils.Blob; +import com.gusto.embedded_api.utils.Utils; +import jakarta.annotation.Nullable; +import java.io.InputStream; +import java.lang.Deprecated; +import java.lang.Exception; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.lang.Throwable; +import java.net.http.HttpResponse; +import java.util.List; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; + +@SuppressWarnings("serial") +public class PayrollBatchConflictError extends GustoEmbeddedException { + + @Nullable + private final Data data; + + @Nullable + private final Throwable deserializationException; + + public PayrollBatchConflictError( + int code, + byte[] body, + HttpResponse rawResponse, + @Nullable Data data, + @Nullable Throwable deserializationException) { + super("API error occurred", code, body, rawResponse, null); + this.data = data; + this.deserializationException = deserializationException; + } + + /** + * Parse a response into an instance of PayrollBatchConflictError. If deserialization of the response body fails, + * the resulting PayrollBatchConflictError instance will have a null data() value and a non-null deserializationException(). + */ + public static PayrollBatchConflictError from(HttpResponse response) { + try { + byte[] bytes = Utils.extractByteArrayFromBody(response); + Data data = Utils.mapper().readValue(bytes, Data.class); + return new PayrollBatchConflictError(response.statusCode(), bytes, response, data, null); + } catch (Exception e) { + return new PayrollBatchConflictError(response.statusCode(), null, response, null, e); + } + } + + /** + * Parse a response into an instance of PayrollBatchConflictError asynchronously. If deserialization of the response body fails, + * the resulting PayrollBatchConflictError instance will have a null data() value and a non-null deserializationException(). + */ + public static CompletableFuture fromAsync(HttpResponse response) { + return response.body() + .toByteArray() + .handle((bytes, err) -> { + // if a body read error occurs, we want to transform the exception + if (err != null) { + throw new AsyncAPIException( + "Error reading response body: " + err.getMessage(), + response.statusCode(), + null, + response, + err); + } + + try { + return new PayrollBatchConflictError( + response.statusCode(), + bytes, + response, + Utils.mapper().readValue( + bytes, + new TypeReference() { + }), + null); + } catch (Exception e) { + return new PayrollBatchConflictError( + response.statusCode(), + bytes, + response, + null, + e); + } + }); + } + + @Deprecated + public Optional> errors() { + return data().flatMap(Data::errors); + } + + public Optional data() { + return Optional.ofNullable(data); + } + + /** + * Returns the exception if an error occurs while deserializing the response body. + */ + public Optional deserializationException() { + return Optional.ofNullable(deserializationException); + } + /** + * Data + * + *

    Error response when a payroll cancellation idempotency key has already been used by the same + * partner. + */ + public static class Data { + + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("errors") + private Optional> errors; + + @JsonCreator + public Data( + @JsonProperty("errors") Optional> errors) { + Utils.checkNotNull(errors, "errors"); + this.errors = errors; + } + + public Data() { + this(Optional.empty()); + } + + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> errors() { + return (Optional>) errors; + } + + public static Builder builder() { + return new Builder(); + } + + + public Data withErrors(List errors) { + Utils.checkNotNull(errors, "errors"); + this.errors = Optional.ofNullable(errors); + return this; + } + + + public Data withErrors(Optional> errors) { + Utils.checkNotNull(errors, "errors"); + this.errors = errors; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + Data other = (Data) o; + return + Utils.enhancedDeepEquals(this.errors, other.errors); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + errors); + } + + @Override + public String toString() { + return Utils.toString(Data.class, + "errors", errors); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional> errors = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + public Builder errors(List errors) { + Utils.checkNotNull(errors, "errors"); + this.errors = Optional.ofNullable(errors); + return this; + } + + public Builder errors(Optional> errors) { + Utils.checkNotNull(errors, "errors"); + this.errors = errors; + return this; + } + + public Data build() { + + return new Data( + errors); + } + + } + } + +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/errors/PayrollBatchConflictErrorErrors.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/errors/PayrollBatchConflictErrorErrors.java new file mode 100644 index 000000000..20806e874 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/errors/PayrollBatchConflictErrorErrors.java @@ -0,0 +1,296 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.errors; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class PayrollBatchConflictErrorErrors { + /** + * The key identifying the error source. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("error_key") + private Optional errorKey; + + /** + * The error category. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("category") + private Optional category; + + /** + * Human-readable error message. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("message") + private Optional message; + + + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("metadata") + private Optional metadata; + + @JsonCreator + public PayrollBatchConflictErrorErrors( + @JsonProperty("error_key") Optional errorKey, + @JsonProperty("category") Optional category, + @JsonProperty("message") Optional message, + @JsonProperty("metadata") Optional metadata) { + Utils.checkNotNull(errorKey, "errorKey"); + Utils.checkNotNull(category, "category"); + Utils.checkNotNull(message, "message"); + Utils.checkNotNull(metadata, "metadata"); + this.errorKey = errorKey; + this.category = category; + this.message = message; + this.metadata = metadata; + } + + public PayrollBatchConflictErrorErrors() { + this(Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty()); + } + + /** + * The key identifying the error source. + */ + @JsonIgnore + public Optional errorKey() { + return errorKey; + } + + /** + * The error category. + */ + @JsonIgnore + public Optional category() { + return category; + } + + /** + * Human-readable error message. + */ + @JsonIgnore + public Optional message() { + return message; + } + + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional metadata() { + return (Optional) metadata; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * The key identifying the error source. + */ + public PayrollBatchConflictErrorErrors withErrorKey(String errorKey) { + Utils.checkNotNull(errorKey, "errorKey"); + this.errorKey = Optional.ofNullable(errorKey); + return this; + } + + + /** + * The key identifying the error source. + */ + public PayrollBatchConflictErrorErrors withErrorKey(Optional errorKey) { + Utils.checkNotNull(errorKey, "errorKey"); + this.errorKey = errorKey; + return this; + } + + /** + * The error category. + */ + public PayrollBatchConflictErrorErrors withCategory(String category) { + Utils.checkNotNull(category, "category"); + this.category = Optional.ofNullable(category); + return this; + } + + + /** + * The error category. + */ + public PayrollBatchConflictErrorErrors withCategory(Optional category) { + Utils.checkNotNull(category, "category"); + this.category = category; + return this; + } + + /** + * Human-readable error message. + */ + public PayrollBatchConflictErrorErrors withMessage(String message) { + Utils.checkNotNull(message, "message"); + this.message = Optional.ofNullable(message); + return this; + } + + + /** + * Human-readable error message. + */ + public PayrollBatchConflictErrorErrors withMessage(Optional message) { + Utils.checkNotNull(message, "message"); + this.message = message; + return this; + } + + public PayrollBatchConflictErrorErrors withMetadata(Metadata metadata) { + Utils.checkNotNull(metadata, "metadata"); + this.metadata = Optional.ofNullable(metadata); + return this; + } + + + public PayrollBatchConflictErrorErrors withMetadata(Optional metadata) { + Utils.checkNotNull(metadata, "metadata"); + this.metadata = metadata; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PayrollBatchConflictErrorErrors other = (PayrollBatchConflictErrorErrors) o; + return + Utils.enhancedDeepEquals(this.errorKey, other.errorKey) && + Utils.enhancedDeepEquals(this.category, other.category) && + Utils.enhancedDeepEquals(this.message, other.message) && + Utils.enhancedDeepEquals(this.metadata, other.metadata); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + errorKey, category, message, + metadata); + } + + @Override + public String toString() { + return Utils.toString(PayrollBatchConflictErrorErrors.class, + "errorKey", errorKey, + "category", category, + "message", message, + "metadata", metadata); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional errorKey = Optional.empty(); + + private Optional category = Optional.empty(); + + private Optional message = Optional.empty(); + + private Optional metadata = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * The key identifying the error source. + */ + public Builder errorKey(String errorKey) { + Utils.checkNotNull(errorKey, "errorKey"); + this.errorKey = Optional.ofNullable(errorKey); + return this; + } + + /** + * The key identifying the error source. + */ + public Builder errorKey(Optional errorKey) { + Utils.checkNotNull(errorKey, "errorKey"); + this.errorKey = errorKey; + return this; + } + + + /** + * The error category. + */ + public Builder category(String category) { + Utils.checkNotNull(category, "category"); + this.category = Optional.ofNullable(category); + return this; + } + + /** + * The error category. + */ + public Builder category(Optional category) { + Utils.checkNotNull(category, "category"); + this.category = category; + return this; + } + + + /** + * Human-readable error message. + */ + public Builder message(String message) { + Utils.checkNotNull(message, "message"); + this.message = Optional.ofNullable(message); + return this; + } + + /** + * Human-readable error message. + */ + public Builder message(Optional message) { + Utils.checkNotNull(message, "message"); + this.message = message; + return this; + } + + + public Builder metadata(Metadata metadata) { + Utils.checkNotNull(metadata, "metadata"); + this.metadata = Optional.ofNullable(metadata); + return this; + } + + public Builder metadata(Optional metadata) { + Utils.checkNotNull(metadata, "metadata"); + this.metadata = metadata; + return this; + } + + public PayrollBatchConflictErrorErrors build() { + + return new PayrollBatchConflictErrorErrors( + errorKey, category, message, + metadata); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/errors/PayrollBlockersErrorErrors.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/errors/PayrollBlockersErrorErrors.java index b6a7dde80..d4f1c5340 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/errors/PayrollBlockersErrorErrors.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/errors/PayrollBlockersErrorErrors.java @@ -40,14 +40,14 @@ public class PayrollBlockersErrorErrors { @JsonInclude(Include.NON_ABSENT) @JsonProperty("metadata") - private Optional metadata; + private Optional metadata; @JsonCreator public PayrollBlockersErrorErrors( @JsonProperty("error_key") Optional errorKey, @JsonProperty("category") Optional category, @JsonProperty("message") Optional message, - @JsonProperty("metadata") Optional metadata) { + @JsonProperty("metadata") Optional metadata) { Utils.checkNotNull(errorKey, "errorKey"); Utils.checkNotNull(category, "category"); Utils.checkNotNull(message, "message"); @@ -89,8 +89,8 @@ public Optional message() { @SuppressWarnings("unchecked") @JsonIgnore - public Optional metadata() { - return (Optional) metadata; + public Optional metadata() { + return (Optional) metadata; } public static Builder builder() { @@ -155,14 +155,14 @@ public PayrollBlockersErrorErrors withMessage(Optional message) { return this; } - public PayrollBlockersErrorErrors withMetadata(Metadata metadata) { + public PayrollBlockersErrorErrors withMetadata(PayrollBlockersErrorMetadata metadata) { Utils.checkNotNull(metadata, "metadata"); this.metadata = Optional.ofNullable(metadata); return this; } - public PayrollBlockersErrorErrors withMetadata(Optional metadata) { + public PayrollBlockersErrorErrors withMetadata(Optional metadata) { Utils.checkNotNull(metadata, "metadata"); this.metadata = metadata; return this; @@ -209,7 +209,7 @@ public final static class Builder { private Optional message = Optional.empty(); - private Optional metadata = Optional.empty(); + private Optional metadata = Optional.empty(); private Builder() { // force use of static builder() method @@ -273,13 +273,13 @@ public Builder message(Optional message) { } - public Builder metadata(Metadata metadata) { + public Builder metadata(PayrollBlockersErrorMetadata metadata) { Utils.checkNotNull(metadata, "metadata"); this.metadata = Optional.ofNullable(metadata); return this; } - public Builder metadata(Optional metadata) { + public Builder metadata(Optional metadata) { Utils.checkNotNull(metadata, "metadata"); this.metadata = metadata; return this; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/errors/PayrollBlockersErrorMetadata.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/errors/PayrollBlockersErrorMetadata.java new file mode 100644 index 000000000..ee94f633d --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/errors/PayrollBlockersErrorMetadata.java @@ -0,0 +1,128 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.errors; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.util.Optional; + + +public class PayrollBlockersErrorMetadata { + /** + * A categorization of the payroll blocker, e.g. "geocode_error" + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("key") + private Optional key; + + @JsonCreator + public PayrollBlockersErrorMetadata( + @JsonProperty("key") Optional key) { + Utils.checkNotNull(key, "key"); + this.key = key; + } + + public PayrollBlockersErrorMetadata() { + this(Optional.empty()); + } + + /** + * A categorization of the payroll blocker, e.g. "geocode_error" + */ + @JsonIgnore + public Optional key() { + return key; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * A categorization of the payroll blocker, e.g. "geocode_error" + */ + public PayrollBlockersErrorMetadata withKey(String key) { + Utils.checkNotNull(key, "key"); + this.key = Optional.ofNullable(key); + return this; + } + + + /** + * A categorization of the payroll blocker, e.g. "geocode_error" + */ + public PayrollBlockersErrorMetadata withKey(Optional key) { + Utils.checkNotNull(key, "key"); + this.key = key; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PayrollBlockersErrorMetadata other = (PayrollBlockersErrorMetadata) o; + return + Utils.enhancedDeepEquals(this.key, other.key); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + key); + } + + @Override + public String toString() { + return Utils.toString(PayrollBlockersErrorMetadata.class, + "key", key); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional key = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * A categorization of the payroll blocker, e.g. "geocode_error" + */ + public Builder key(String key) { + Utils.checkNotNull(key, "key"); + this.key = Optional.ofNullable(key); + return this; + } + + /** + * A categorization of the payroll blocker, e.g. "geocode_error" + */ + public Builder key(Optional key) { + Utils.checkNotNull(key, "key"); + this.key = key; + return this; + } + + public PayrollBlockersErrorMetadata build() { + + return new PayrollBlockersErrorMetadata( + key); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/Batch.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/Batch.java index ea4cec9c5..8ec1f4e4a 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/Batch.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/Batch.java @@ -5,181 +5,68 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonIgnore; -import com.fasterxml.jackson.annotation.JsonInclude.Include; -import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.annotation.JsonProperty; import com.gusto.embedded_api.utils.Utils; import java.lang.Override; import java.lang.String; -import java.lang.SuppressWarnings; -import java.util.List; -import java.util.Optional; public class Batch { /** - * The type of entity to create + * The type of entity to act on. */ @JsonProperty("entity_type") private EntityType entityType; - - @JsonProperty("person") - private Person person; - - /** - * Home address for the employee - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("home_address") - private Optional homeAddress; - - /** - * Specify the company work location for the employee - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("work_address") - private Optional workAddress; - - /** - * Job details for the employee (required if compensation is provided) - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("job") - private Optional job; - /** - * Department details for the employee + * The UUID of the payroll to cancel. Payrolls the partner is not authorized to access, or that do not + * exist, appear in the response's `exclusions` array. */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("department") - private Optional department; + @JsonProperty("uuid") + private String uuid; /** - * Compensation details for the employee (requires job to be provided) + * The UUID of the company that owns the payroll. The partner must be mapped to this company. */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("compensation") - private Optional compensation; - - /** - * Creates employee bank account(s) and payment method(s) for direct deposit. Payments can be split - * across accounts by Percentage or by Amount. If splitting payments by `Percentage`, all splits must - * have a `split_amount` and the percentages must add up to `100`. - * If splitting payments by `Amount`, the priority is set based on the order of the bank accounts in - * the array and the last bank account is the remainder account (should have `split_amount` set to - * `null`). - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("bank_accounts") - private Optional> bankAccounts; + @JsonProperty("company_uuid") + private String companyUuid; @JsonCreator public Batch( @JsonProperty("entity_type") EntityType entityType, - @JsonProperty("person") Person person, - @JsonProperty("home_address") Optional homeAddress, - @JsonProperty("work_address") Optional workAddress, - @JsonProperty("job") Optional job, - @JsonProperty("department") Optional department, - @JsonProperty("compensation") Optional compensation, - @JsonProperty("bank_accounts") Optional> bankAccounts) { + @JsonProperty("uuid") String uuid, + @JsonProperty("company_uuid") String companyUuid) { Utils.checkNotNull(entityType, "entityType"); - Utils.checkNotNull(person, "person"); - Utils.checkNotNull(homeAddress, "homeAddress"); - Utils.checkNotNull(workAddress, "workAddress"); - Utils.checkNotNull(job, "job"); - Utils.checkNotNull(department, "department"); - Utils.checkNotNull(compensation, "compensation"); - Utils.checkNotNull(bankAccounts, "bankAccounts"); + Utils.checkNotNull(uuid, "uuid"); + Utils.checkNotNull(companyUuid, "companyUuid"); this.entityType = entityType; - this.person = person; - this.homeAddress = homeAddress; - this.workAddress = workAddress; - this.job = job; - this.department = department; - this.compensation = compensation; - this.bankAccounts = bankAccounts; - } - - public Batch( - EntityType entityType, - Person person) { - this(entityType, person, Optional.empty(), - Optional.empty(), Optional.empty(), Optional.empty(), - Optional.empty(), Optional.empty()); + this.uuid = uuid; + this.companyUuid = companyUuid; } /** - * The type of entity to create + * The type of entity to act on. */ @JsonIgnore public EntityType entityType() { return entityType; } - @JsonIgnore - public Person person() { - return person; - } - /** - * Home address for the employee + * The UUID of the payroll to cancel. Payrolls the partner is not authorized to access, or that do not + * exist, appear in the response's `exclusions` array. */ - @SuppressWarnings("unchecked") @JsonIgnore - public Optional homeAddress() { - return (Optional) homeAddress; + public String uuid() { + return uuid; } /** - * Specify the company work location for the employee + * The UUID of the company that owns the payroll. The partner must be mapped to this company. */ - @SuppressWarnings("unchecked") @JsonIgnore - public Optional workAddress() { - return (Optional) workAddress; - } - - /** - * Job details for the employee (required if compensation is provided) - */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional job() { - return (Optional) job; - } - - /** - * Department details for the employee - */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional department() { - return (Optional) department; - } - - /** - * Compensation details for the employee (requires job to be provided) - */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional compensation() { - return (Optional) compensation; - } - - /** - * Creates employee bank account(s) and payment method(s) for direct deposit. Payments can be split - * across accounts by Percentage or by Amount. If splitting payments by `Percentage`, all splits must - * have a `split_amount` and the percentages must add up to `100`. - * If splitting payments by `Amount`, the priority is set based on the order of the bank accounts in - * the array and the last bank account is the remainder account (should have `split_amount` set to - * `null`). - */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional> bankAccounts() { - return (Optional>) bankAccounts; + public String companyUuid() { + return companyUuid; } public static Builder builder() { @@ -188,7 +75,7 @@ public static Builder builder() { /** - * The type of entity to create + * The type of entity to act on. */ public Batch withEntityType(EntityType entityType) { Utils.checkNotNull(entityType, "entityType"); @@ -196,133 +83,22 @@ public Batch withEntityType(EntityType entityType) { return this; } - public Batch withPerson(Person person) { - Utils.checkNotNull(person, "person"); - this.person = person; - return this; - } - - /** - * Home address for the employee - */ - public Batch withHomeAddress(PostV1CompaniesCompanyIdPeopleBatchesHomeAddress homeAddress) { - Utils.checkNotNull(homeAddress, "homeAddress"); - this.homeAddress = Optional.ofNullable(homeAddress); - return this; - } - - - /** - * Home address for the employee - */ - public Batch withHomeAddress(Optional homeAddress) { - Utils.checkNotNull(homeAddress, "homeAddress"); - this.homeAddress = homeAddress; - return this; - } - - /** - * Specify the company work location for the employee - */ - public Batch withWorkAddress(PostV1CompaniesCompanyIdPeopleBatchesWorkAddress workAddress) { - Utils.checkNotNull(workAddress, "workAddress"); - this.workAddress = Optional.ofNullable(workAddress); - return this; - } - - - /** - * Specify the company work location for the employee - */ - public Batch withWorkAddress(Optional workAddress) { - Utils.checkNotNull(workAddress, "workAddress"); - this.workAddress = workAddress; - return this; - } - - /** - * Job details for the employee (required if compensation is provided) - */ - public Batch withJob(PostV1CompaniesCompanyIdPeopleBatchesJob job) { - Utils.checkNotNull(job, "job"); - this.job = Optional.ofNullable(job); - return this; - } - - - /** - * Job details for the employee (required if compensation is provided) - */ - public Batch withJob(Optional job) { - Utils.checkNotNull(job, "job"); - this.job = job; - return this; - } - - /** - * Department details for the employee - */ - public Batch withDepartment(Department department) { - Utils.checkNotNull(department, "department"); - this.department = Optional.ofNullable(department); - return this; - } - - /** - * Department details for the employee + * The UUID of the payroll to cancel. Payrolls the partner is not authorized to access, or that do not + * exist, appear in the response's `exclusions` array. */ - public Batch withDepartment(Optional department) { - Utils.checkNotNull(department, "department"); - this.department = department; + public Batch withUuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; return this; } /** - * Compensation details for the employee (requires job to be provided) + * The UUID of the company that owns the payroll. The partner must be mapped to this company. */ - public Batch withCompensation(Compensation compensation) { - Utils.checkNotNull(compensation, "compensation"); - this.compensation = Optional.ofNullable(compensation); - return this; - } - - - /** - * Compensation details for the employee (requires job to be provided) - */ - public Batch withCompensation(Optional compensation) { - Utils.checkNotNull(compensation, "compensation"); - this.compensation = compensation; - return this; - } - - /** - * Creates employee bank account(s) and payment method(s) for direct deposit. Payments can be split - * across accounts by Percentage or by Amount. If splitting payments by `Percentage`, all splits must - * have a `split_amount` and the percentages must add up to `100`. - * If splitting payments by `Amount`, the priority is set based on the order of the bank accounts in - * the array and the last bank account is the remainder account (should have `split_amount` set to - * `null`). - */ - public Batch withBankAccounts(List bankAccounts) { - Utils.checkNotNull(bankAccounts, "bankAccounts"); - this.bankAccounts = Optional.ofNullable(bankAccounts); - return this; - } - - - /** - * Creates employee bank account(s) and payment method(s) for direct deposit. Payments can be split - * across accounts by Percentage or by Amount. If splitting payments by `Percentage`, all splits must - * have a `split_amount` and the percentages must add up to `100`. - * If splitting payments by `Amount`, the priority is set based on the order of the bank accounts in - * the array and the last bank account is the remainder account (should have `split_amount` set to - * `null`). - */ - public Batch withBankAccounts(Optional> bankAccounts) { - Utils.checkNotNull(bankAccounts, "bankAccounts"); - this.bankAccounts = bankAccounts; + public Batch withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; return this; } @@ -337,34 +113,22 @@ public boolean equals(java.lang.Object o) { Batch other = (Batch) o; return Utils.enhancedDeepEquals(this.entityType, other.entityType) && - Utils.enhancedDeepEquals(this.person, other.person) && - Utils.enhancedDeepEquals(this.homeAddress, other.homeAddress) && - Utils.enhancedDeepEquals(this.workAddress, other.workAddress) && - Utils.enhancedDeepEquals(this.job, other.job) && - Utils.enhancedDeepEquals(this.department, other.department) && - Utils.enhancedDeepEquals(this.compensation, other.compensation) && - Utils.enhancedDeepEquals(this.bankAccounts, other.bankAccounts); + Utils.enhancedDeepEquals(this.uuid, other.uuid) && + Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid); } @Override public int hashCode() { return Utils.enhancedHash( - entityType, person, homeAddress, - workAddress, job, department, - compensation, bankAccounts); + entityType, uuid, companyUuid); } @Override public String toString() { return Utils.toString(Batch.class, "entityType", entityType, - "person", person, - "homeAddress", homeAddress, - "workAddress", workAddress, - "job", job, - "department", department, - "compensation", compensation, - "bankAccounts", bankAccounts); + "uuid", uuid, + "companyUuid", companyUuid); } @SuppressWarnings("UnusedReturnValue") @@ -372,19 +136,9 @@ public final static class Builder { private EntityType entityType; - private Person person; - - private Optional homeAddress = Optional.empty(); - - private Optional workAddress = Optional.empty(); - - private Optional job = Optional.empty(); + private String uuid; - private Optional department = Optional.empty(); - - private Optional compensation = Optional.empty(); - - private Optional> bankAccounts = Optional.empty(); + private String companyUuid; private Builder() { // force use of static builder() method @@ -392,7 +146,7 @@ private Builder() { /** - * The type of entity to create + * The type of entity to act on. */ public Builder entityType(EntityType entityType) { Utils.checkNotNull(entityType, "entityType"); @@ -401,142 +155,30 @@ public Builder entityType(EntityType entityType) { } - public Builder person(Person person) { - Utils.checkNotNull(person, "person"); - this.person = person; - return this; - } - - - /** - * Home address for the employee - */ - public Builder homeAddress(PostV1CompaniesCompanyIdPeopleBatchesHomeAddress homeAddress) { - Utils.checkNotNull(homeAddress, "homeAddress"); - this.homeAddress = Optional.ofNullable(homeAddress); - return this; - } - - /** - * Home address for the employee - */ - public Builder homeAddress(Optional homeAddress) { - Utils.checkNotNull(homeAddress, "homeAddress"); - this.homeAddress = homeAddress; - return this; - } - - /** - * Specify the company work location for the employee + * The UUID of the payroll to cancel. Payrolls the partner is not authorized to access, or that do not + * exist, appear in the response's `exclusions` array. */ - public Builder workAddress(PostV1CompaniesCompanyIdPeopleBatchesWorkAddress workAddress) { - Utils.checkNotNull(workAddress, "workAddress"); - this.workAddress = Optional.ofNullable(workAddress); + public Builder uuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; return this; } - /** - * Specify the company work location for the employee - */ - public Builder workAddress(Optional workAddress) { - Utils.checkNotNull(workAddress, "workAddress"); - this.workAddress = workAddress; - return this; - } - - - /** - * Job details for the employee (required if compensation is provided) - */ - public Builder job(PostV1CompaniesCompanyIdPeopleBatchesJob job) { - Utils.checkNotNull(job, "job"); - this.job = Optional.ofNullable(job); - return this; - } - - /** - * Job details for the employee (required if compensation is provided) - */ - public Builder job(Optional job) { - Utils.checkNotNull(job, "job"); - this.job = job; - return this; - } - - - /** - * Department details for the employee - */ - public Builder department(Department department) { - Utils.checkNotNull(department, "department"); - this.department = Optional.ofNullable(department); - return this; - } - - /** - * Department details for the employee - */ - public Builder department(Optional department) { - Utils.checkNotNull(department, "department"); - this.department = department; - return this; - } - - - /** - * Compensation details for the employee (requires job to be provided) - */ - public Builder compensation(Compensation compensation) { - Utils.checkNotNull(compensation, "compensation"); - this.compensation = Optional.ofNullable(compensation); - return this; - } - - /** - * Compensation details for the employee (requires job to be provided) - */ - public Builder compensation(Optional compensation) { - Utils.checkNotNull(compensation, "compensation"); - this.compensation = compensation; - return this; - } - - - /** - * Creates employee bank account(s) and payment method(s) for direct deposit. Payments can be split - * across accounts by Percentage or by Amount. If splitting payments by `Percentage`, all splits must - * have a `split_amount` and the percentages must add up to `100`. - * If splitting payments by `Amount`, the priority is set based on the order of the bank accounts in - * the array and the last bank account is the remainder account (should have `split_amount` set to - * `null`). - */ - public Builder bankAccounts(List bankAccounts) { - Utils.checkNotNull(bankAccounts, "bankAccounts"); - this.bankAccounts = Optional.ofNullable(bankAccounts); - return this; - } /** - * Creates employee bank account(s) and payment method(s) for direct deposit. Payments can be split - * across accounts by Percentage or by Amount. If splitting payments by `Percentage`, all splits must - * have a `split_amount` and the percentages must add up to `100`. - * If splitting payments by `Amount`, the priority is set based on the order of the bank accounts in - * the array and the last bank account is the remainder account (should have `split_amount` set to - * `null`). + * The UUID of the company that owns the payroll. The partner must be mapped to this company. */ - public Builder bankAccounts(Optional> bankAccounts) { - Utils.checkNotNull(bankAccounts, "bankAccounts"); - this.bankAccounts = bankAccounts; + public Builder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; return this; } public Batch build() { return new Batch( - entityType, person, homeAddress, - workAddress, job, department, - compensation, bankAccounts); + entityType, uuid, companyUuid); } } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/BatchAction.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/BatchAction.java index 77e1d5b27..a0b7e2226 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/BatchAction.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/BatchAction.java @@ -11,10 +11,10 @@ /** * BatchAction * - *

    The action to perform on the batch + *

    The action to perform on the batch. Only `cancel` is supported. */ public enum BatchAction { - CREATE("create"); + CANCEL("cancel"); @JsonValue private final String value; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/DeleteDepartmentRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/DeleteDepartmentRequest.java index 7a2597a09..bd2e9d103 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/DeleteDepartmentRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/DeleteDepartmentRequest.java @@ -16,12 +16,6 @@ public class DeleteDepartmentRequest { - /** - * The UUID of the department - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=department_uuid") - private String departmentUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class DeleteDepartmentRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the department + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=department_uuid") + private String departmentUuid; + @JsonCreator public DeleteDepartmentRequest( - String departmentUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); + Optional xGustoAPIVersion, + String departmentUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.departmentUuid = departmentUuid; + Utils.checkNotNull(departmentUuid, "departmentUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.departmentUuid = departmentUuid; } public DeleteDepartmentRequest( String departmentUuid) { - this(departmentUuid, Optional.empty()); - } - - /** - * The UUID of the department - */ - @JsonIgnore - public String departmentUuid() { - return departmentUuid; + this(Optional.empty(), departmentUuid); } /** @@ -64,20 +56,19 @@ public Optional xGustoAPIVersion() { return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the department */ - public DeleteDepartmentRequest withDepartmentUuid(String departmentUuid) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); - this.departmentUuid = departmentUuid; - return this; + @JsonIgnore + public String departmentUuid() { + return departmentUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public DeleteDepartmentRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String departmentUuid; + private Builder() { // force use of static builder() method } - /** - * The UUID of the department - */ - public Builder departmentUuid(String departmentUuid) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); - this.departmentUuid = departmentUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String departmentUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public DeleteDepartmentRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public DeleteDepartmentRequestBuilder departmentUuid(String departmentUuid) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); - this.departmentUuid = departmentUuid; - return this; - } public DeleteDepartmentRequestBuilder xGustoAPIVersion(DeleteDepartmentHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public DeleteDepartmentRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion; + /** * The UUID of the company */ @@ -35,37 +43,40 @@ public class DeleteV1CompaniesCompanyIdPayrollsRequest { @SpeakeasyMetadata("queryParam:style=form,explode=true,name=async") private Optional async; - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; - @JsonCreator public DeleteV1CompaniesCompanyIdPayrollsRequest( + Optional xGustoAPIVersion, String companyId, String payrollId, - Optional async, - Optional xGustoAPIVersion) { + Optional async) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(companyId, "companyId"); Utils.checkNotNull(payrollId, "payrollId"); Utils.checkNotNull(async, "async"); - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; this.companyId = companyId; this.payrollId = payrollId; this.async = async; - this.xGustoAPIVersion = xGustoAPIVersion; } public DeleteV1CompaniesCompanyIdPayrollsRequest( String companyId, String payrollId) { - this(companyId, payrollId, Optional.empty(), + this(Optional.empty(), companyId, payrollId, Optional.empty()); } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + /** * The UUID of the company */ @@ -90,21 +101,33 @@ public Optional async() { return async; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional xGustoAPIVersion() { - return (Optional) xGustoAPIVersion; + public DeleteV1CompaniesCompanyIdPayrollsRequest withXGustoAPIVersion(DeleteV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; } - public static Builder builder() { - return new Builder(); - } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public DeleteV1CompaniesCompanyIdPayrollsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } /** * The UUID of the company @@ -143,29 +166,6 @@ public DeleteV1CompaniesCompanyIdPayrollsRequest withAsync(Optional asy return this; } - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public DeleteV1CompaniesCompanyIdPayrollsRequest withXGustoAPIVersion(DeleteV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); - return this; - } - - - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public DeleteV1CompaniesCompanyIdPayrollsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } - @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -176,44 +176,67 @@ public boolean equals(java.lang.Object o) { } DeleteV1CompaniesCompanyIdPayrollsRequest other = (DeleteV1CompaniesCompanyIdPayrollsRequest) o; return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.companyId, other.companyId) && Utils.enhancedDeepEquals(this.payrollId, other.payrollId) && - Utils.enhancedDeepEquals(this.async, other.async) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.async, other.async); } @Override public int hashCode() { return Utils.enhancedHash( - companyId, payrollId, async, - xGustoAPIVersion); + xGustoAPIVersion, companyId, payrollId, + async); } @Override public String toString() { return Utils.toString(DeleteV1CompaniesCompanyIdPayrollsRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, "companyId", companyId, "payrollId", payrollId, - "async", async, - "xGustoAPIVersion", xGustoAPIVersion); + "async", async); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { + private Optional xGustoAPIVersion; + private String companyId; private String payrollId; private Optional async = Optional.empty(); - private Optional xGustoAPIVersion; - private Builder() { // force use of static builder() method } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(DeleteV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + /** * The UUID of the company */ @@ -252,37 +275,14 @@ public Builder async(Optional async) { return this; } - - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public Builder xGustoAPIVersion(DeleteV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); - return this; - } - - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } - public DeleteV1CompaniesCompanyIdPayrollsRequest build() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } return new DeleteV1CompaniesCompanyIdPayrollsRequest( - companyId, payrollId, async, - xGustoAPIVersion); + xGustoAPIVersion, companyId, payrollId, + async); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/DeleteV1CompaniesCompanyIdPayrollsRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/DeleteV1CompaniesCompanyIdPayrollsRequestBuilder.java index 9279b7e8b..8040d37d0 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/DeleteV1CompaniesCompanyIdPayrollsRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/DeleteV1CompaniesCompanyIdPayrollsRequestBuilder.java @@ -17,19 +17,31 @@ public class DeleteV1CompaniesCompanyIdPayrollsRequestBuilder { - private String companyId; - private String payrollId; - private Optional async = Optional.empty(); private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String companyId; + private String payrollId; + private Optional async = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public DeleteV1CompaniesCompanyIdPayrollsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } + + public DeleteV1CompaniesCompanyIdPayrollsRequestBuilder xGustoAPIVersion(DeleteV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public DeleteV1CompaniesCompanyIdPayrollsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } public DeleteV1CompaniesCompanyIdPayrollsRequestBuilder companyId(String companyId) { Utils.checkNotNull(companyId, "companyId"); @@ -54,18 +66,6 @@ public DeleteV1CompaniesCompanyIdPayrollsRequestBuilder async(Optional this.async = async; return this; } - - public DeleteV1CompaniesCompanyIdPayrollsRequestBuilder xGustoAPIVersion(DeleteV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); - return this; - } - - public DeleteV1CompaniesCompanyIdPayrollsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } private DeleteV1CompaniesCompanyIdPayrollsRequest buildRequest() { @@ -73,10 +73,10 @@ private DeleteV1CompaniesCompanyIdPayrollsRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - DeleteV1CompaniesCompanyIdPayrollsRequest request = new DeleteV1CompaniesCompanyIdPayrollsRequest(companyId, + DeleteV1CompaniesCompanyIdPayrollsRequest request = new DeleteV1CompaniesCompanyIdPayrollsRequest(xGustoAPIVersion, + companyId, payrollId, - async, - xGustoAPIVersion); + async); return request; } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.java index bec877d97..d2af334af 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.java @@ -16,6 +16,14 @@ public class DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + /** * The UUID of the company */ @@ -28,47 +36,23 @@ public class DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest { @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=signatory_uuid") private String signatoryUuid; - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; - @JsonCreator public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest( + Optional xGustoAPIVersion, String companyUuid, - String signatoryUuid, - Optional xGustoAPIVersion) { + String signatoryUuid) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(signatoryUuid, "signatoryUuid"); - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; this.companyUuid = companyUuid; this.signatoryUuid = signatoryUuid; - this.xGustoAPIVersion = xGustoAPIVersion; } public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest( String companyUuid, String signatoryUuid) { - this(companyUuid, signatoryUuid, Optional.empty()); - } - - /** - * The UUID of the company - */ - @JsonIgnore - public String companyUuid() { - return companyUuid; - } - - /** - * The UUID of the signatory - */ - @JsonIgnore - public String signatoryUuid() { - return signatoryUuid; + this(Optional.empty(), companyUuid, signatoryUuid); } /** @@ -82,29 +66,27 @@ public Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the company */ - public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest withCompanyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; + @JsonIgnore + public String companyUuid() { + return companyUuid; } /** * The UUID of the signatory */ - public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest withSignatoryUuid(String signatoryUuid) { - Utils.checkNotNull(signatoryUuid, "signatoryUuid"); - this.signatoryUuid = signatoryUuid; - return this; + @JsonIgnore + public String signatoryUuid() { + return signatoryUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -128,6 +110,24 @@ public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest withXGustoAPI return this; } + /** + * The UUID of the company + */ + public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + /** + * The UUID of the signatory + */ + public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest withSignatoryUuid(String signatoryUuid) { + Utils.checkNotNull(signatoryUuid, "signatoryUuid"); + this.signatoryUuid = signatoryUuid; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -138,59 +138,39 @@ public boolean equals(java.lang.Object o) { } DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest other = (DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest) o; return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && - Utils.enhancedDeepEquals(this.signatoryUuid, other.signatoryUuid) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.signatoryUuid, other.signatoryUuid); } @Override public int hashCode() { return Utils.enhancedHash( - companyUuid, signatoryUuid, xGustoAPIVersion); + xGustoAPIVersion, companyUuid, signatoryUuid); } @Override public String toString() { return Utils.toString(DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, "companyUuid", companyUuid, - "signatoryUuid", signatoryUuid, - "xGustoAPIVersion", xGustoAPIVersion); + "signatoryUuid", signatoryUuid); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { + private Optional xGustoAPIVersion; + private String companyUuid; private String signatoryUuid; - private Optional xGustoAPIVersion; - private Builder() { // force use of static builder() method } - /** - * The UUID of the company - */ - public Builder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - - /** - * The UUID of the signatory - */ - public Builder signatoryUuid(String signatoryUuid) { - Utils.checkNotNull(signatoryUuid, "signatoryUuid"); - this.signatoryUuid = signatoryUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -213,13 +193,33 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String companyUuid; + private String signatoryUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder signatoryUuid(String signatoryUuid) { - Utils.checkNotNull(signatoryUuid, "signatoryUuid"); - this.signatoryUuid = signatoryUuid; - return this; - } public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder xGustoAPIVersion(DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -53,15 +41,27 @@ public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder xGusto return this; } + public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder signatoryUuid(String signatoryUuid) { + Utils.checkNotNull(signatoryUuid, "signatoryUuid"); + this.signatoryUuid = signatoryUuid; + return this; + } + private DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest request = new DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest(companyUuid, - signatoryUuid, - xGustoAPIVersion); + DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest request = new DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest(xGustoAPIVersion, + companyUuid, + signatoryUuid); return request; } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.java index adda4f050..f603bdf19 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.java @@ -16,12 +16,6 @@ public class DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest { - /** - * The UUID of the contractor payment group - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=contractor_payment_group_uuid") - private String contractorPaymentGroupUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the contractor payment group + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=contractor_payment_group_uuid") + private String contractorPaymentGroupUuid; + @JsonCreator public DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest( - String contractorPaymentGroupUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); + Optional xGustoAPIVersion, + String contractorPaymentGroupUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; + Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; } public DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest( String contractorPaymentGroupUuid) { - this(contractorPaymentGroupUuid, Optional.empty()); - } - - /** - * The UUID of the contractor payment group - */ - @JsonIgnore - public String contractorPaymentGroupUuid() { - return contractorPaymentGroupUuid; + this(Optional.empty(), contractorPaymentGroupUuid); } /** @@ -64,20 +56,19 @@ public Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the contractor payment group */ - public DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest withContractorPaymentGroupUuid(String contractorPaymentGroupUuid) { - Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); - this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; - return this; + @JsonIgnore + public String contractorPaymentGroupUuid() { + return contractorPaymentGroupUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest withXGusto return this; } + /** + * The UUID of the contractor payment group + */ + public DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest withContractorPaymentGroupUuid(String contractorPaymentGroupUuid) { + Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); + this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -111,45 +111,35 @@ public boolean equals(java.lang.Object o) { } DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest other = (DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest) o; return - Utils.enhancedDeepEquals(this.contractorPaymentGroupUuid, other.contractorPaymentGroupUuid) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.contractorPaymentGroupUuid, other.contractorPaymentGroupUuid); } @Override public int hashCode() { return Utils.enhancedHash( - contractorPaymentGroupUuid, xGustoAPIVersion); + xGustoAPIVersion, contractorPaymentGroupUuid); } @Override public String toString() { return Utils.toString(DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.class, - "contractorPaymentGroupUuid", contractorPaymentGroupUuid, - "xGustoAPIVersion", xGustoAPIVersion); + "xGustoAPIVersion", xGustoAPIVersion, + "contractorPaymentGroupUuid", contractorPaymentGroupUuid); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String contractorPaymentGroupUuid; - private Optional xGustoAPIVersion; + private String contractorPaymentGroupUuid; + private Builder() { // force use of static builder() method } - /** - * The UUID of the contractor payment group - */ - public Builder contractorPaymentGroupUuid(String contractorPaymentGroupUuid) { - Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); - this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String contractorPaymentGroupUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder contractorPaymentGroupUuid(String contractorPaymentGroupUuid) { - Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); - this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; - return this; - } public DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder xGustoAPIVersion(DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder xGu return this; } + public DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder contractorPaymentGroupUuid(String contractorPaymentGroupUuid) { + Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); + this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; + return this; + } + private DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest request = new DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest(contractorPaymentGroupUuid, - xGustoAPIVersion); + DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest request = new DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest(xGustoAPIVersion, + contractorPaymentGroupUuid); return request; } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.java new file mode 100644 index 000000000..0da87495d --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion + * + *

    Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ +public enum DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion { + TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15("2025-06-15"); + + @JsonValue + private final String value; + + DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion o: DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest.java new file mode 100644 index 000000000..ad2b52b84 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest.java @@ -0,0 +1,191 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api.utils.LazySingletonValue; +import com.gusto.embedded_api.utils.SpeakeasyMetadata; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + + /** + * The UUID of the contractor + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=contractor_uuid") + private String contractorUuid; + + @JsonCreator + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest( + Optional xGustoAPIVersion, + String contractorUuid) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.xGustoAPIVersion = xGustoAPIVersion; + this.contractorUuid = contractorUuid; + } + + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest( + String contractorUuid) { + this(Optional.empty(), contractorUuid); + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + + /** + * The UUID of the contractor + */ + @JsonIgnore + public String contractorUuid() { + return contractorUuid; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest withXGustoAPIVersion(DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + /** + * The UUID of the contractor + */ + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest withContractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest other = (DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest) o; + return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.contractorUuid, other.contractorUuid); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + xGustoAPIVersion, contractorUuid); + } + + @Override + public String toString() { + return Utils.toString(DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, + "contractorUuid", contractorUuid); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional xGustoAPIVersion; + + private String contractorUuid; + + private Builder() { + // force use of static builder() method + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + + /** + * The UUID of the contractor + */ + public Builder contractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest build() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + return new DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest( + xGustoAPIVersion, contractorUuid); + } + + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "X-Gusto-API-Version", + "\"2025-06-15\"", + new TypeReference>() {}); + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder.java new file mode 100644 index 000000000..3fb6675d4 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder.java @@ -0,0 +1,75 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import static com.gusto.embedded_api.operations.Operations.RequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api.SDKConfiguration; +import com.gusto.embedded_api.operations.DeleteV1ContractorsContractorUuidMemberPortalInvitations; +import com.gusto.embedded_api.utils.Headers; +import com.gusto.embedded_api.utils.LazySingletonValue; +import com.gusto.embedded_api.utils.Utils; +import java.lang.String; +import java.util.Optional; + +public class DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder { + + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2025-06-15\"", + new TypeReference>() {}); + private String contractorUuid; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder xGustoAPIVersion(DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder contractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + + + private DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest request = new DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest(xGustoAPIVersion, + contractorUuid); + + return request; + } + + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse call() { + + RequestOperation operation + = new DeleteV1ContractorsContractorUuidMemberPortalInvitations.Sync(sdkConfiguration, _headers); + DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest request = buildRequest(); + + return operation.handleResponse(operation.doRequest(request)); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2025-06-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse.java new file mode 100644 index 000000000..d98f1eccb --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse.java @@ -0,0 +1,181 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api.utils.Response; +import com.gusto.embedded_api.utils.Utils; +import java.io.InputStream; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.net.http.HttpResponse; + + +public class DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse implements Response { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + @JsonCreator + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse other = (DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse); + } + + @Override + public String toString() { + return Utils.toString(DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse build() { + + return new DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse( + contentType, statusCode, rawResponse); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/DeleteV1ContractorsContractorUuidRehireRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/DeleteV1ContractorsContractorUuidRehireRequest.java index 2a1f38a9a..a4c166f34 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/DeleteV1ContractorsContractorUuidRehireRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/DeleteV1ContractorsContractorUuidRehireRequest.java @@ -16,12 +16,6 @@ public class DeleteV1ContractorsContractorUuidRehireRequest { - /** - * The UUID of the contractor - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=contractor_uuid") - private String contractorUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class DeleteV1ContractorsContractorUuidRehireRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the contractor + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=contractor_uuid") + private String contractorUuid; + @JsonCreator public DeleteV1ContractorsContractorUuidRehireRequest( - String contractorUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); + Optional xGustoAPIVersion, + String contractorUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.contractorUuid = contractorUuid; + Utils.checkNotNull(contractorUuid, "contractorUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.contractorUuid = contractorUuid; } public DeleteV1ContractorsContractorUuidRehireRequest( String contractorUuid) { - this(contractorUuid, Optional.empty()); - } - - /** - * The UUID of the contractor - */ - @JsonIgnore - public String contractorUuid() { - return contractorUuid; + this(Optional.empty(), contractorUuid); } /** @@ -64,20 +56,19 @@ public Optional x return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the contractor */ - public DeleteV1ContractorsContractorUuidRehireRequest withContractorUuid(String contractorUuid) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); - this.contractorUuid = contractorUuid; - return this; + @JsonIgnore + public String contractorUuid() { + return contractorUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public DeleteV1ContractorsContractorUuidRehireRequest withXGustoAPIVersion(Optio return this; } + /** + * The UUID of the contractor + */ + public DeleteV1ContractorsContractorUuidRehireRequest withContractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -111,45 +111,35 @@ public boolean equals(java.lang.Object o) { } DeleteV1ContractorsContractorUuidRehireRequest other = (DeleteV1ContractorsContractorUuidRehireRequest) o; return - Utils.enhancedDeepEquals(this.contractorUuid, other.contractorUuid) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.contractorUuid, other.contractorUuid); } @Override public int hashCode() { return Utils.enhancedHash( - contractorUuid, xGustoAPIVersion); + xGustoAPIVersion, contractorUuid); } @Override public String toString() { return Utils.toString(DeleteV1ContractorsContractorUuidRehireRequest.class, - "contractorUuid", contractorUuid, - "xGustoAPIVersion", xGustoAPIVersion); + "xGustoAPIVersion", xGustoAPIVersion, + "contractorUuid", contractorUuid); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String contractorUuid; - private Optional xGustoAPIVersion; + private String contractorUuid; + private Builder() { // force use of static builder() method } - /** - * The UUID of the contractor - */ - public Builder contractorUuid(String contractorUuid) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); - this.contractorUuid = contractorUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String contractorUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public DeleteV1ContractorsContractorUuidRehireRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public DeleteV1ContractorsContractorUuidRehireRequestBuilder contractorUuid(String contractorUuid) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); - this.contractorUuid = contractorUuid; - return this; - } public DeleteV1ContractorsContractorUuidRehireRequestBuilder xGustoAPIVersion(DeleteV1ContractorsContractorUuidRehireHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public DeleteV1ContractorsContractorUuidRehireRequestBuilder xGustoAPIVersion(Op return this; } + public DeleteV1ContractorsContractorUuidRehireRequestBuilder contractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + private DeleteV1ContractorsContractorUuidRehireRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - DeleteV1ContractorsContractorUuidRehireRequest request = new DeleteV1ContractorsContractorUuidRehireRequest(contractorUuid, - xGustoAPIVersion); + DeleteV1ContractorsContractorUuidRehireRequest request = new DeleteV1ContractorsContractorUuidRehireRequest(xGustoAPIVersion, + contractorUuid); return request; } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/DeleteV1ContractorsContractorUuidTerminationRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/DeleteV1ContractorsContractorUuidTerminationRequest.java index ad98d04ec..34d875859 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/DeleteV1ContractorsContractorUuidTerminationRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/DeleteV1ContractorsContractorUuidTerminationRequest.java @@ -16,12 +16,6 @@ public class DeleteV1ContractorsContractorUuidTerminationRequest { - /** - * The UUID of the contractor - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=contractor_uuid") - private String contractorUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class DeleteV1ContractorsContractorUuidTerminationRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the contractor + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=contractor_uuid") + private String contractorUuid; + @JsonCreator public DeleteV1ContractorsContractorUuidTerminationRequest( - String contractorUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); + Optional xGustoAPIVersion, + String contractorUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.contractorUuid = contractorUuid; + Utils.checkNotNull(contractorUuid, "contractorUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.contractorUuid = contractorUuid; } public DeleteV1ContractorsContractorUuidTerminationRequest( String contractorUuid) { - this(contractorUuid, Optional.empty()); - } - - /** - * The UUID of the contractor - */ - @JsonIgnore - public String contractorUuid() { - return contractorUuid; + this(Optional.empty(), contractorUuid); } /** @@ -64,20 +56,19 @@ public Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the contractor */ - public DeleteV1ContractorsContractorUuidTerminationRequest withContractorUuid(String contractorUuid) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); - this.contractorUuid = contractorUuid; - return this; + @JsonIgnore + public String contractorUuid() { + return contractorUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public DeleteV1ContractorsContractorUuidTerminationRequest withXGustoAPIVersion( return this; } + /** + * The UUID of the contractor + */ + public DeleteV1ContractorsContractorUuidTerminationRequest withContractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -111,45 +111,35 @@ public boolean equals(java.lang.Object o) { } DeleteV1ContractorsContractorUuidTerminationRequest other = (DeleteV1ContractorsContractorUuidTerminationRequest) o; return - Utils.enhancedDeepEquals(this.contractorUuid, other.contractorUuid) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.contractorUuid, other.contractorUuid); } @Override public int hashCode() { return Utils.enhancedHash( - contractorUuid, xGustoAPIVersion); + xGustoAPIVersion, contractorUuid); } @Override public String toString() { return Utils.toString(DeleteV1ContractorsContractorUuidTerminationRequest.class, - "contractorUuid", contractorUuid, - "xGustoAPIVersion", xGustoAPIVersion); + "xGustoAPIVersion", xGustoAPIVersion, + "contractorUuid", contractorUuid); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String contractorUuid; - private Optional xGustoAPIVersion; + private String contractorUuid; + private Builder() { // force use of static builder() method } - /** - * The UUID of the contractor - */ - public Builder contractorUuid(String contractorUuid) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); - this.contractorUuid = contractorUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String contractorUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public DeleteV1ContractorsContractorUuidTerminationRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public DeleteV1ContractorsContractorUuidTerminationRequestBuilder contractorUuid(String contractorUuid) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); - this.contractorUuid = contractorUuid; - return this; - } public DeleteV1ContractorsContractorUuidTerminationRequestBuilder xGustoAPIVersion(DeleteV1ContractorsContractorUuidTerminationHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public DeleteV1ContractorsContractorUuidTerminationRequestBuilder xGustoAPIVersi return this; } + public DeleteV1ContractorsContractorUuidTerminationRequestBuilder contractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + private DeleteV1ContractorsContractorUuidTerminationRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - DeleteV1ContractorsContractorUuidTerminationRequest request = new DeleteV1ContractorsContractorUuidTerminationRequest(contractorUuid, - xGustoAPIVersion); + DeleteV1ContractorsContractorUuidTerminationRequest request = new DeleteV1ContractorsContractorUuidTerminationRequest(xGustoAPIVersion, + contractorUuid); return request; } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.java new file mode 100644 index 000000000..eaaaf535c --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion + * + *

    Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ +public enum DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion { + TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15("2025-06-15"); + + @JsonValue + private final String value; + + DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion o: DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest.java new file mode 100644 index 000000000..3f136722b --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest.java @@ -0,0 +1,191 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api.utils.LazySingletonValue; +import com.gusto.embedded_api.utils.SpeakeasyMetadata; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + + /** + * The UUID of the employee + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=employee_id") + private String employeeId; + + @JsonCreator + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest( + Optional xGustoAPIVersion, + String employeeId) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(employeeId, "employeeId"); + this.xGustoAPIVersion = xGustoAPIVersion; + this.employeeId = employeeId; + } + + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest( + String employeeId) { + this(Optional.empty(), employeeId); + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + + /** + * The UUID of the employee + */ + @JsonIgnore + public String employeeId() { + return employeeId; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest withXGustoAPIVersion(DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + /** + * The UUID of the employee + */ + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest withEmployeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest other = (DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest) o; + return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.employeeId, other.employeeId); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + xGustoAPIVersion, employeeId); + } + + @Override + public String toString() { + return Utils.toString(DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, + "employeeId", employeeId); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional xGustoAPIVersion; + + private String employeeId; + + private Builder() { + // force use of static builder() method + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + + /** + * The UUID of the employee + */ + public Builder employeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest build() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + return new DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest( + xGustoAPIVersion, employeeId); + } + + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "X-Gusto-API-Version", + "\"2025-06-15\"", + new TypeReference>() {}); + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java new file mode 100644 index 000000000..edd1b97a8 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java @@ -0,0 +1,75 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import static com.gusto.embedded_api.operations.Operations.RequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api.SDKConfiguration; +import com.gusto.embedded_api.operations.DeleteV1EmployeesEmployeeIdMemberPortalInvitations; +import com.gusto.embedded_api.utils.Headers; +import com.gusto.embedded_api.utils.LazySingletonValue; +import com.gusto.embedded_api.utils.Utils; +import java.lang.String; +import java.util.Optional; + +public class DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder { + + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2025-06-15\"", + new TypeReference>() {}); + private String employeeId; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder xGustoAPIVersion(DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder employeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + + + private DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest request = new DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest(xGustoAPIVersion, + employeeId); + + return request; + } + + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse call() { + + RequestOperation operation + = new DeleteV1EmployeesEmployeeIdMemberPortalInvitations.Sync(sdkConfiguration, _headers); + DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest request = buildRequest(); + + return operation.handleResponse(operation.doRequest(request)); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2025-06-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java new file mode 100644 index 000000000..f75fef693 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java @@ -0,0 +1,181 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api.utils.Response; +import com.gusto.embedded_api.utils.Utils; +import java.io.InputStream; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.net.http.HttpResponse; + + +public class DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse implements Response { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + @JsonCreator + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse other = (DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse); + } + + @Override + public String toString() { + return Utils.toString(DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse build() { + + return new DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse( + contentType, statusCode, rawResponse); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/DeleteV1JobsJobIdRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/DeleteV1JobsJobIdRequest.java index 49953a3d6..8275b2d56 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/DeleteV1JobsJobIdRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/DeleteV1JobsJobIdRequest.java @@ -16,12 +16,6 @@ public class DeleteV1JobsJobIdRequest { - /** - * The UUID of the job - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=job_id") - private String jobId; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class DeleteV1JobsJobIdRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the job + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=job_id") + private String jobId; + @JsonCreator public DeleteV1JobsJobIdRequest( - String jobId, - Optional xGustoAPIVersion) { - Utils.checkNotNull(jobId, "jobId"); + Optional xGustoAPIVersion, + String jobId) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.jobId = jobId; + Utils.checkNotNull(jobId, "jobId"); this.xGustoAPIVersion = xGustoAPIVersion; + this.jobId = jobId; } public DeleteV1JobsJobIdRequest( String jobId) { - this(jobId, Optional.empty()); - } - - /** - * The UUID of the job - */ - @JsonIgnore - public String jobId() { - return jobId; + this(Optional.empty(), jobId); } /** @@ -64,20 +56,19 @@ public Optional xGustoAPIVersion() { return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the job */ - public DeleteV1JobsJobIdRequest withJobId(String jobId) { - Utils.checkNotNull(jobId, "jobId"); - this.jobId = jobId; - return this; + @JsonIgnore + public String jobId() { + return jobId; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public DeleteV1JobsJobIdRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String jobId; + private Builder() { // force use of static builder() method } - /** - * The UUID of the job - */ - public Builder jobId(String jobId) { - Utils.checkNotNull(jobId, "jobId"); - this.jobId = jobId; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String jobId; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public DeleteV1JobsJobIdRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public DeleteV1JobsJobIdRequestBuilder jobId(String jobId) { - Utils.checkNotNull(jobId, "jobId"); - this.jobId = jobId; - return this; - } public DeleteV1JobsJobIdRequestBuilder xGustoAPIVersion(DeleteV1JobsJobIdHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public DeleteV1JobsJobIdRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion; + /** + * The webhook subscription UUID. + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=webhook_subscription_uuid") + private String webhookSubscriptionUuid; + @JsonCreator public DeleteV1WebhookSubscriptionUuidRequest( - String webhookSubscriptionUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); + Optional xGustoAPIVersion, + String webhookSubscriptionUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; + Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.webhookSubscriptionUuid = webhookSubscriptionUuid; } public DeleteV1WebhookSubscriptionUuidRequest( String webhookSubscriptionUuid) { - this(webhookSubscriptionUuid, Optional.empty()); - } - - /** - * The webhook subscription UUID. - */ - @JsonIgnore - public String webhookSubscriptionUuid() { - return webhookSubscriptionUuid; + this(Optional.empty(), webhookSubscriptionUuid); } /** @@ -64,20 +56,19 @@ public Optional xGustoAPI return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The webhook subscription UUID. */ - public DeleteV1WebhookSubscriptionUuidRequest withWebhookSubscriptionUuid(String webhookSubscriptionUuid) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; - return this; + @JsonIgnore + public String webhookSubscriptionUuid() { + return webhookSubscriptionUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public DeleteV1WebhookSubscriptionUuidRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String webhookSubscriptionUuid; + private Builder() { // force use of static builder() method } - /** - * The webhook subscription UUID. - */ - public Builder webhookSubscriptionUuid(String webhookSubscriptionUuid) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String webhookSubscriptionUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -34,12 +34,6 @@ public DeleteV1WebhookSubscriptionUuidRequestBuilder security(DeleteV1WebhookSub this.security = security; return this; } - - public DeleteV1WebhookSubscriptionUuidRequestBuilder webhookSubscriptionUuid(String webhookSubscriptionUuid) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; - return this; - } public DeleteV1WebhookSubscriptionUuidRequestBuilder xGustoAPIVersion(DeleteV1WebhookSubscriptionUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -53,14 +47,20 @@ public DeleteV1WebhookSubscriptionUuidRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion; + /** + * The UUID of the work address + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=work_address_uuid") + private String workAddressUuid; + @JsonCreator public DeleteV1WorkAddressesWorkAddressUuidRequest( - String workAddressUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(workAddressUuid, "workAddressUuid"); + Optional xGustoAPIVersion, + String workAddressUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.workAddressUuid = workAddressUuid; + Utils.checkNotNull(workAddressUuid, "workAddressUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.workAddressUuid = workAddressUuid; } public DeleteV1WorkAddressesWorkAddressUuidRequest( String workAddressUuid) { - this(workAddressUuid, Optional.empty()); - } - - /** - * The UUID of the work address - */ - @JsonIgnore - public String workAddressUuid() { - return workAddressUuid; + this(Optional.empty(), workAddressUuid); } /** @@ -64,20 +56,19 @@ public Optional xGus return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the work address */ - public DeleteV1WorkAddressesWorkAddressUuidRequest withWorkAddressUuid(String workAddressUuid) { - Utils.checkNotNull(workAddressUuid, "workAddressUuid"); - this.workAddressUuid = workAddressUuid; - return this; + @JsonIgnore + public String workAddressUuid() { + return workAddressUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public DeleteV1WorkAddressesWorkAddressUuidRequest withXGustoAPIVersion(Optional return this; } + /** + * The UUID of the work address + */ + public DeleteV1WorkAddressesWorkAddressUuidRequest withWorkAddressUuid(String workAddressUuid) { + Utils.checkNotNull(workAddressUuid, "workAddressUuid"); + this.workAddressUuid = workAddressUuid; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -111,45 +111,35 @@ public boolean equals(java.lang.Object o) { } DeleteV1WorkAddressesWorkAddressUuidRequest other = (DeleteV1WorkAddressesWorkAddressUuidRequest) o; return - Utils.enhancedDeepEquals(this.workAddressUuid, other.workAddressUuid) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.workAddressUuid, other.workAddressUuid); } @Override public int hashCode() { return Utils.enhancedHash( - workAddressUuid, xGustoAPIVersion); + xGustoAPIVersion, workAddressUuid); } @Override public String toString() { return Utils.toString(DeleteV1WorkAddressesWorkAddressUuidRequest.class, - "workAddressUuid", workAddressUuid, - "xGustoAPIVersion", xGustoAPIVersion); + "xGustoAPIVersion", xGustoAPIVersion, + "workAddressUuid", workAddressUuid); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String workAddressUuid; - private Optional xGustoAPIVersion; + private String workAddressUuid; + private Builder() { // force use of static builder() method } - /** - * The UUID of the work address - */ - public Builder workAddressUuid(String workAddressUuid) { - Utils.checkNotNull(workAddressUuid, "workAddressUuid"); - this.workAddressUuid = workAddressUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String workAddressUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public DeleteV1WorkAddressesWorkAddressUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public DeleteV1WorkAddressesWorkAddressUuidRequestBuilder workAddressUuid(String workAddressUuid) { - Utils.checkNotNull(workAddressUuid, "workAddressUuid"); - this.workAddressUuid = workAddressUuid; - return this; - } public DeleteV1WorkAddressesWorkAddressUuidRequestBuilder xGustoAPIVersion(DeleteV1WorkAddressesWorkAddressUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public DeleteV1WorkAddressesWorkAddressUuidRequestBuilder xGustoAPIVersion(Optio return this; } + public DeleteV1WorkAddressesWorkAddressUuidRequestBuilder workAddressUuid(String workAddressUuid) { + Utils.checkNotNull(workAddressUuid, "workAddressUuid"); + this.workAddressUuid = workAddressUuid; + return this; + } + private DeleteV1WorkAddressesWorkAddressUuidRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - DeleteV1WorkAddressesWorkAddressUuidRequest request = new DeleteV1WorkAddressesWorkAddressUuidRequest(workAddressUuid, - xGustoAPIVersion); + DeleteV1WorkAddressesWorkAddressUuidRequest request = new DeleteV1WorkAddressesWorkAddressUuidRequest(xGustoAPIVersion, + workAddressUuid); return request; } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/Employees.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/Employees.java index bfa627cb9..dbe053324 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/Employees.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/Employees.java @@ -11,83 +11,46 @@ import com.gusto.embedded_api.utils.Utils; import java.lang.Override; import java.lang.String; -import org.openapitools.jackson.nullable.JsonNullable; +import java.util.Optional; public class Employees { - /** - * The UUID of the employee - */ - @JsonProperty("uuid") - private String uuid; - /** - * The starting balance for the employee - */ @JsonInclude(Include.NON_ABSENT) - @JsonProperty("balance") - private JsonNullable balance; + @JsonProperty("uuid") + private Optional uuid; @JsonCreator public Employees( - @JsonProperty("uuid") String uuid, - @JsonProperty("balance") JsonNullable balance) { + @JsonProperty("uuid") Optional uuid) { Utils.checkNotNull(uuid, "uuid"); - Utils.checkNotNull(balance, "balance"); this.uuid = uuid; - this.balance = balance; } - public Employees( - String uuid) { - this(uuid, JsonNullable.undefined()); + public Employees() { + this(Optional.empty()); } - /** - * The UUID of the employee - */ @JsonIgnore - public String uuid() { + public Optional uuid() { return uuid; } - /** - * The starting balance for the employee - */ - @JsonIgnore - public JsonNullable balance() { - return balance; - } - public static Builder builder() { return new Builder(); } - /** - * The UUID of the employee - */ public Employees withUuid(String uuid) { Utils.checkNotNull(uuid, "uuid"); - this.uuid = uuid; + this.uuid = Optional.ofNullable(uuid); return this; } - /** - * The starting balance for the employee - */ - public Employees withBalance(String balance) { - Utils.checkNotNull(balance, "balance"); - this.balance = JsonNullable.of(balance); - return this; - } - /** - * The starting balance for the employee - */ - public Employees withBalance(JsonNullable balance) { - Utils.checkNotNull(balance, "balance"); - this.balance = balance; + public Employees withUuid(Optional uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; return this; } @@ -101,67 +64,47 @@ public boolean equals(java.lang.Object o) { } Employees other = (Employees) o; return - Utils.enhancedDeepEquals(this.uuid, other.uuid) && - Utils.enhancedDeepEquals(this.balance, other.balance); + Utils.enhancedDeepEquals(this.uuid, other.uuid); } @Override public int hashCode() { return Utils.enhancedHash( - uuid, balance); + uuid); } @Override public String toString() { return Utils.toString(Employees.class, - "uuid", uuid, - "balance", balance); + "uuid", uuid); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String uuid; - - private JsonNullable balance = JsonNullable.undefined(); + private Optional uuid = Optional.empty(); private Builder() { // force use of static builder() method } - /** - * The UUID of the employee - */ public Builder uuid(String uuid) { Utils.checkNotNull(uuid, "uuid"); - this.uuid = uuid; + this.uuid = Optional.ofNullable(uuid); return this; } - - /** - * The starting balance for the employee - */ - public Builder balance(String balance) { - Utils.checkNotNull(balance, "balance"); - this.balance = JsonNullable.of(balance); - return this; - } - - /** - * The starting balance for the employee - */ - public Builder balance(JsonNullable balance) { - Utils.checkNotNull(balance, "balance"); - this.balance = balance; + public Builder uuid(Optional uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; return this; } public Employees build() { return new Employees( - uuid, balance); + uuid); } } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/EntityType.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/EntityType.java index f36fc9987..8f73ee66d 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/EntityType.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/EntityType.java @@ -11,10 +11,10 @@ /** * EntityType * - *

    The type of entity to create + *

    The type of entity to act on. */ public enum EntityType { - EMPLOYEE("employee"); + PAYROLL("payroll"); @JsonValue private final String value; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetAchTransactionsRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetAchTransactionsRequest.java index abcebbfe9..0a0b50977 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetAchTransactionsRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetAchTransactionsRequest.java @@ -23,7 +23,7 @@ public class GetAchTransactionsRequest { * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; + private Optional xGustoAPIVersion; /** * The UUID of the company @@ -72,7 +72,7 @@ public class GetAchTransactionsRequest { @JsonCreator public GetAchTransactionsRequest( - Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String companyUuid, Optional contractorPaymentUuid, Optional payrollUuid, @@ -112,8 +112,8 @@ public GetAchTransactionsRequest( */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional xGustoAPIVersion() { - return (Optional) xGustoAPIVersion; + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; } /** @@ -185,7 +185,7 @@ public static Builder builder() { * application's [minimum API * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - public GetAchTransactionsRequest withXGustoAPIVersion(GetAchTransactionsHeaderXGustoAPIVersion xGustoAPIVersion) { + public GetAchTransactionsRequest withXGustoAPIVersion(XGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); return this; @@ -197,7 +197,7 @@ public GetAchTransactionsRequest withXGustoAPIVersion(GetAchTransactionsHeaderXG * application's [minimum API * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - public GetAchTransactionsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + public GetAchTransactionsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); this.xGustoAPIVersion = xGustoAPIVersion; return this; @@ -376,7 +376,7 @@ public String toString() { @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private Optional xGustoAPIVersion; + private Optional xGustoAPIVersion; private String companyUuid; @@ -402,7 +402,7 @@ private Builder() { * application's [minimum API * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - public Builder xGustoAPIVersion(GetAchTransactionsHeaderXGustoAPIVersion xGustoAPIVersion) { + public Builder xGustoAPIVersion(XGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); return this; @@ -413,7 +413,7 @@ public Builder xGustoAPIVersion(GetAchTransactionsHeaderXGustoAPIVersion xGustoA * application's [minimum API * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); this.xGustoAPIVersion = xGustoAPIVersion; return this; @@ -561,10 +561,10 @@ public GetAchTransactionsRequest build() { } - private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = new LazySingletonValue<>( "X-Gusto-API-Version", "\"2025-06-15\"", - new TypeReference>() {}); + new TypeReference>() {}); } } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetCompaniesCompanyUuidWireInRequestUuidRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetCompaniesCompanyUuidWireInRequestUuidRequest.java index a19655488..0e38bf0c0 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetCompaniesCompanyUuidWireInRequestUuidRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetCompaniesCompanyUuidWireInRequestUuidRequest.java @@ -17,12 +17,6 @@ public class GetCompaniesCompanyUuidWireInRequestUuidRequest { - /** - * The UUID of the company - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") - private String companyUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -31,6 +25,12 @@ public class GetCompaniesCompanyUuidWireInRequestUuidRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") + private String companyUuid; + /** * The page that is requested. When unspecified, will load all objects unless endpoint forces * pagination. @@ -46,34 +46,26 @@ public class GetCompaniesCompanyUuidWireInRequestUuidRequest { @JsonCreator public GetCompaniesCompanyUuidWireInRequestUuidRequest( - String companyUuid, Optional xGustoAPIVersion, + String companyUuid, Optional page, Optional per) { - Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(page, "page"); Utils.checkNotNull(per, "per"); - this.companyUuid = companyUuid; this.xGustoAPIVersion = xGustoAPIVersion; + this.companyUuid = companyUuid; this.page = page; this.per = per; } public GetCompaniesCompanyUuidWireInRequestUuidRequest( String companyUuid) { - this(companyUuid, Optional.empty(), Optional.empty(), + this(Optional.empty(), companyUuid, Optional.empty(), Optional.empty()); } - /** - * The UUID of the company - */ - @JsonIgnore - public String companyUuid() { - return companyUuid; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -85,6 +77,14 @@ public Optional return (Optional) xGustoAPIVersion; } + /** + * The UUID of the company + */ + @JsonIgnore + public String companyUuid() { + return companyUuid; + } + /** * The page that is requested. When unspecified, will load all objects unless endpoint forces * pagination. @@ -107,15 +107,6 @@ public static Builder builder() { } - /** - * The UUID of the company - */ - public GetCompaniesCompanyUuidWireInRequestUuidRequest withCompanyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -139,6 +130,15 @@ public GetCompaniesCompanyUuidWireInRequestUuidRequest withXGustoAPIVersion(Opti return this; } + /** + * The UUID of the company + */ + public GetCompaniesCompanyUuidWireInRequestUuidRequest withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + /** * The page that is requested. When unspecified, will load all objects unless endpoint forces * pagination. @@ -189,8 +189,8 @@ public boolean equals(java.lang.Object o) { } GetCompaniesCompanyUuidWireInRequestUuidRequest other = (GetCompaniesCompanyUuidWireInRequestUuidRequest) o; return - Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && Utils.enhancedDeepEquals(this.page, other.page) && Utils.enhancedDeepEquals(this.per, other.per); } @@ -198,15 +198,15 @@ public boolean equals(java.lang.Object o) { @Override public int hashCode() { return Utils.enhancedHash( - companyUuid, xGustoAPIVersion, page, + xGustoAPIVersion, companyUuid, page, per); } @Override public String toString() { return Utils.toString(GetCompaniesCompanyUuidWireInRequestUuidRequest.class, - "companyUuid", companyUuid, "xGustoAPIVersion", xGustoAPIVersion, + "companyUuid", companyUuid, "page", page, "per", per); } @@ -214,10 +214,10 @@ public String toString() { @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String companyUuid; - private Optional xGustoAPIVersion; + private String companyUuid; + private Optional page = Optional.empty(); private Optional per = Optional.empty(); @@ -227,16 +227,6 @@ private Builder() { } - /** - * The UUID of the company - */ - public Builder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -260,6 +250,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String companyUuid; private Optional page = Optional.empty(); private Optional per = Optional.empty(); private final SDKConfiguration sdkConfiguration; @@ -30,12 +30,6 @@ public class GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder { public GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder xGustoAPIVersion(GetCompaniesCompanyUuidWireInRequestUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -48,6 +42,12 @@ public GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder xGustoAPIVersion(O this.xGustoAPIVersion = xGustoAPIVersion; return this; } + + public GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } public GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder page(long page) { Utils.checkNotNull(page, "page"); @@ -79,8 +79,8 @@ private GetCompaniesCompanyUuidWireInRequestUuidRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetCompaniesCompanyUuidWireInRequestUuidRequest request = new GetCompaniesCompanyUuidWireInRequestUuidRequest(companyUuid, - xGustoAPIVersion, + GetCompaniesCompanyUuidWireInRequestUuidRequest request = new GetCompaniesCompanyUuidWireInRequestUuidRequest(xGustoAPIVersion, + companyUuid, page, per); diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetCompaniesDepartmentsRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetCompaniesDepartmentsRequest.java index 953f89145..0f94673a9 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetCompaniesDepartmentsRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetCompaniesDepartmentsRequest.java @@ -16,12 +16,6 @@ public class GetCompaniesDepartmentsRequest { - /** - * The UUID of the company - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") - private String companyUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class GetCompaniesDepartmentsRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") + private String companyUuid; + @JsonCreator public GetCompaniesDepartmentsRequest( - String companyUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(companyUuid, "companyUuid"); + Optional xGustoAPIVersion, + String companyUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.companyUuid = companyUuid; + Utils.checkNotNull(companyUuid, "companyUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.companyUuid = companyUuid; } public GetCompaniesDepartmentsRequest( String companyUuid) { - this(companyUuid, Optional.empty()); - } - - /** - * The UUID of the company - */ - @JsonIgnore - public String companyUuid() { - return companyUuid; + this(Optional.empty(), companyUuid); } /** @@ -64,20 +56,19 @@ public Optional xGustoAPIVersion( return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the company */ - public GetCompaniesDepartmentsRequest withCompanyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; + @JsonIgnore + public String companyUuid() { + return companyUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetCompaniesDepartmentsRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String companyUuid; + private Builder() { // force use of static builder() method } - /** - * The UUID of the company - */ - public Builder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String companyUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetCompaniesDepartmentsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetCompaniesDepartmentsRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public GetCompaniesDepartmentsRequestBuilder xGustoAPIVersion(GetCompaniesDepartmentsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public GetCompaniesDepartmentsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion; + /** * The UUID of the company for which you would like to return notifications */ @@ -27,14 +35,6 @@ public class GetCompanyNotificationsRequest { @SpeakeasyMetadata("queryParam:style=form,explode=true,name=status") private Optional status; - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; - /** * The page that is requested. When unspecified, will load all objects unless endpoint forces * pagination. @@ -50,29 +50,40 @@ public class GetCompanyNotificationsRequest { @JsonCreator public GetCompanyNotificationsRequest( + Optional xGustoAPIVersion, String companyUuid, Optional status, - Optional xGustoAPIVersion, Optional page, Optional per) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(status, "status"); - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(page, "page"); Utils.checkNotNull(per, "per"); + this.xGustoAPIVersion = xGustoAPIVersion; this.companyUuid = companyUuid; this.status = status; - this.xGustoAPIVersion = xGustoAPIVersion; this.page = page; this.per = per; } public GetCompanyNotificationsRequest( String companyUuid) { - this(companyUuid, Optional.empty(), Optional.empty(), + this(Optional.empty(), companyUuid, Optional.empty(), Optional.empty(), Optional.empty()); } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + /** * The UUID of the company for which you would like to return notifications */ @@ -87,17 +98,6 @@ public Optional status() { return (Optional) status; } - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional xGustoAPIVersion() { - return (Optional) xGustoAPIVersion; - } - /** * The page that is requested. When unspecified, will load all objects unless endpoint forces * pagination. @@ -120,28 +120,6 @@ public static Builder builder() { } - /** - * The UUID of the company for which you would like to return notifications - */ - public GetCompanyNotificationsRequest withCompanyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - public GetCompanyNotificationsRequest withStatus(Status status) { - Utils.checkNotNull(status, "status"); - this.status = Optional.ofNullable(status); - return this; - } - - - public GetCompanyNotificationsRequest withStatus(Optional status) { - Utils.checkNotNull(status, "status"); - this.status = status; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -165,6 +143,28 @@ public GetCompanyNotificationsRequest withXGustoAPIVersion(Optional status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + /** * The page that is requested. When unspecified, will load all objects unless endpoint forces * pagination. @@ -215,9 +215,9 @@ public boolean equals(java.lang.Object o) { } GetCompanyNotificationsRequest other = (GetCompanyNotificationsRequest) o; return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && Utils.enhancedDeepEquals(this.status, other.status) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.page, other.page) && Utils.enhancedDeepEquals(this.per, other.per); } @@ -225,16 +225,16 @@ public boolean equals(java.lang.Object o) { @Override public int hashCode() { return Utils.enhancedHash( - companyUuid, status, xGustoAPIVersion, + xGustoAPIVersion, companyUuid, status, page, per); } @Override public String toString() { return Utils.toString(GetCompanyNotificationsRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, "companyUuid", companyUuid, "status", status, - "xGustoAPIVersion", xGustoAPIVersion, "page", page, "per", per); } @@ -242,12 +242,12 @@ public String toString() { @SuppressWarnings("UnusedReturnValue") public final static class Builder { + private Optional xGustoAPIVersion; + private String companyUuid; private Optional status = Optional.empty(); - private Optional xGustoAPIVersion; - private Optional page = Optional.empty(); private Optional per = Optional.empty(); @@ -257,29 +257,6 @@ private Builder() { } - /** - * The UUID of the company for which you would like to return notifications - */ - public Builder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - - public Builder status(Status status) { - Utils.checkNotNull(status, "status"); - this.status = Optional.ofNullable(status); - return this; - } - - public Builder status(Optional status) { - Utils.checkNotNull(status, "status"); - this.status = status; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -303,6 +280,29 @@ public Builder xGustoAPIVersion(Optional status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + /** * The page that is requested. When unspecified, will load all objects unless endpoint forces * pagination. @@ -348,7 +348,7 @@ public GetCompanyNotificationsRequest build() { } return new GetCompanyNotificationsRequest( - companyUuid, status, xGustoAPIVersion, + xGustoAPIVersion, companyUuid, status, page, per); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetDepartmentRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetDepartmentRequest.java index befd731bb..925ec4c75 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetDepartmentRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetDepartmentRequest.java @@ -16,12 +16,6 @@ public class GetDepartmentRequest { - /** - * The UUID of the department - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=department_uuid") - private String departmentUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class GetDepartmentRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the department + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=department_uuid") + private String departmentUuid; + @JsonCreator public GetDepartmentRequest( - String departmentUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); + Optional xGustoAPIVersion, + String departmentUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.departmentUuid = departmentUuid; + Utils.checkNotNull(departmentUuid, "departmentUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.departmentUuid = departmentUuid; } public GetDepartmentRequest( String departmentUuid) { - this(departmentUuid, Optional.empty()); - } - - /** - * The UUID of the department - */ - @JsonIgnore - public String departmentUuid() { - return departmentUuid; + this(Optional.empty(), departmentUuid); } /** @@ -64,20 +56,19 @@ public Optional xGustoAPIVersion() { return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the department */ - public GetDepartmentRequest withDepartmentUuid(String departmentUuid) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); - this.departmentUuid = departmentUuid; - return this; + @JsonIgnore + public String departmentUuid() { + return departmentUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetDepartmentRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String departmentUuid; + private Builder() { // force use of static builder() method } - /** - * The UUID of the department - */ - public Builder departmentUuid(String departmentUuid) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); - this.departmentUuid = departmentUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String departmentUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetDepartmentRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetDepartmentRequestBuilder departmentUuid(String departmentUuid) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); - this.departmentUuid = departmentUuid; - return this; - } public GetDepartmentRequestBuilder xGustoAPIVersion(GetDepartmentHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public GetDepartmentRequestBuilder xGustoAPIVersion(Optional sortOrder; + private Optional sortOrder; @JsonCreator public GetEventsRequest( @@ -64,7 +64,7 @@ public GetEventsRequest( Optional resourceUuid, Optional limit, Optional eventType, - Optional sortOrder) { + Optional sortOrder) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(startingAfterUuid, "startingAfterUuid"); Utils.checkNotNull(resourceUuid, "resourceUuid"); @@ -135,8 +135,8 @@ public Optional eventType() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional sortOrder() { - return (Optional) sortOrder; + public Optional sortOrder() { + return (Optional) sortOrder; } public static Builder builder() { @@ -251,7 +251,7 @@ public GetEventsRequest withEventType(Optional eventType) { * A string indicating whether to sort resulting events in ascending (asc) or descending (desc) * chronological order. Events are sorted by their `timestamp`. Defaults to asc if left empty. */ - public GetEventsRequest withSortOrder(QueryParamSortOrder sortOrder) { + public GetEventsRequest withSortOrder(SortOrder sortOrder) { Utils.checkNotNull(sortOrder, "sortOrder"); this.sortOrder = Optional.ofNullable(sortOrder); return this; @@ -262,7 +262,7 @@ public GetEventsRequest withSortOrder(QueryParamSortOrder sortOrder) { * A string indicating whether to sort resulting events in ascending (asc) or descending (desc) * chronological order. Events are sorted by their `timestamp`. Defaults to asc if left empty. */ - public GetEventsRequest withSortOrder(Optional sortOrder) { + public GetEventsRequest withSortOrder(Optional sortOrder) { Utils.checkNotNull(sortOrder, "sortOrder"); this.sortOrder = sortOrder; return this; @@ -317,7 +317,7 @@ public final static class Builder { private Optional eventType = Optional.empty(); - private Optional sortOrder = Optional.empty(); + private Optional sortOrder = Optional.empty(); private Builder() { // force use of static builder() method @@ -431,7 +431,7 @@ public Builder eventType(Optional eventType) { * A string indicating whether to sort resulting events in ascending (asc) or descending (desc) * chronological order. Events are sorted by their `timestamp`. Defaults to asc if left empty. */ - public Builder sortOrder(QueryParamSortOrder sortOrder) { + public Builder sortOrder(SortOrder sortOrder) { Utils.checkNotNull(sortOrder, "sortOrder"); this.sortOrder = Optional.ofNullable(sortOrder); return this; @@ -441,7 +441,7 @@ public Builder sortOrder(QueryParamSortOrder sortOrder) { * A string indicating whether to sort resulting events in ascending (asc) or descending (desc) * chronological order. Events are sorted by their `timestamp`. Defaults to asc if left empty. */ - public Builder sortOrder(Optional sortOrder) { + public Builder sortOrder(Optional sortOrder) { Utils.checkNotNull(sortOrder, "sortOrder"); this.sortOrder = sortOrder; return this; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetNotificationsNotificationUuidRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetNotificationsNotificationUuidRequest.java index 19a4fbc15..78abd4865 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetNotificationsNotificationUuidRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetNotificationsNotificationUuidRequest.java @@ -16,12 +16,6 @@ public class GetNotificationsNotificationUuidRequest { - /** - * The notification entity_uuid - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=notification_uuid") - private String notificationUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class GetNotificationsNotificationUuidRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The notification entity_uuid + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=notification_uuid") + private String notificationUuid; + @JsonCreator public GetNotificationsNotificationUuidRequest( - String notificationUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(notificationUuid, "notificationUuid"); + Optional xGustoAPIVersion, + String notificationUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.notificationUuid = notificationUuid; + Utils.checkNotNull(notificationUuid, "notificationUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.notificationUuid = notificationUuid; } public GetNotificationsNotificationUuidRequest( String notificationUuid) { - this(notificationUuid, Optional.empty()); - } - - /** - * The notification entity_uuid - */ - @JsonIgnore - public String notificationUuid() { - return notificationUuid; + this(Optional.empty(), notificationUuid); } /** @@ -64,20 +56,19 @@ public Optional xGustoAP return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The notification entity_uuid */ - public GetNotificationsNotificationUuidRequest withNotificationUuid(String notificationUuid) { - Utils.checkNotNull(notificationUuid, "notificationUuid"); - this.notificationUuid = notificationUuid; - return this; + @JsonIgnore + public String notificationUuid() { + return notificationUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetNotificationsNotificationUuidRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String notificationUuid; + private Builder() { // force use of static builder() method } - /** - * The notification entity_uuid - */ - public Builder notificationUuid(String notificationUuid) { - Utils.checkNotNull(notificationUuid, "notificationUuid"); - this.notificationUuid = notificationUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String notificationUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetNotificationsNotificationUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetNotificationsNotificationUuidRequestBuilder notificationUuid(String notificationUuid) { - Utils.checkNotNull(notificationUuid, "notificationUuid"); - this.notificationUuid = notificationUuid; - return this; - } public GetNotificationsNotificationUuidRequestBuilder xGustoAPIVersion(GetNotificationsNotificationUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public GetNotificationsNotificationUuidRequestBuilder xGustoAPIVersion(Optional< return this; } + public GetNotificationsNotificationUuidRequestBuilder notificationUuid(String notificationUuid) { + Utils.checkNotNull(notificationUuid, "notificationUuid"); + this.notificationUuid = notificationUuid; + return this; + } + private GetNotificationsNotificationUuidRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetNotificationsNotificationUuidRequest request = new GetNotificationsNotificationUuidRequest(notificationUuid, - xGustoAPIVersion); + GetNotificationsNotificationUuidRequest request = new GetNotificationsNotificationUuidRequest(xGustoAPIVersion, + notificationUuid); return request; } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetReverseWireTransactionsHeaderXGustoAPIVersion.java similarity index 66% rename from gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion.java rename to gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetReverseWireTransactionsHeaderXGustoAPIVersion.java index c68e02e20..d857f5af0 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetReverseWireTransactionsHeaderXGustoAPIVersion.java @@ -9,19 +9,19 @@ import java.util.Optional; /** - * GetV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion + * GetReverseWireTransactionsHeaderXGustoAPIVersion * *

    Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ -public enum GetV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion { +public enum GetReverseWireTransactionsHeaderXGustoAPIVersion { TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15("2025-06-15"); @JsonValue private final String value; - GetV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion(String value) { + GetReverseWireTransactionsHeaderXGustoAPIVersion(String value) { this.value = value; } @@ -29,8 +29,8 @@ public String value() { return value; } - public static Optional fromValue(String value) { - for (GetV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion o: GetV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion.values()) { + public static Optional fromValue(String value) { + for (GetReverseWireTransactionsHeaderXGustoAPIVersion o: GetReverseWireTransactionsHeaderXGustoAPIVersion.values()) { if (Objects.deepEquals(o.value, value)) { return Optional.of(o); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetReverseWireTransactionsRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetReverseWireTransactionsRequest.java new file mode 100644 index 000000000..c5a661bef --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetReverseWireTransactionsRequest.java @@ -0,0 +1,378 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api.utils.LazySingletonValue; +import com.gusto.embedded_api.utils.SpeakeasyMetadata; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Long; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class GetReverseWireTransactionsRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") + private String companyUuid; + + /** + * Filter results to reverse wires associated with a specific payroll + */ + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=payroll_uuid") + private Optional payrollUuid; + + /** + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. + */ + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=page") + private Optional page; + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=per") + private Optional per; + + @JsonCreator + public GetReverseWireTransactionsRequest( + Optional xGustoAPIVersion, + String companyUuid, + Optional payrollUuid, + Optional page, + Optional per) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(companyUuid, "companyUuid"); + Utils.checkNotNull(payrollUuid, "payrollUuid"); + Utils.checkNotNull(page, "page"); + Utils.checkNotNull(per, "per"); + this.xGustoAPIVersion = xGustoAPIVersion; + this.companyUuid = companyUuid; + this.payrollUuid = payrollUuid; + this.page = page; + this.per = per; + } + + public GetReverseWireTransactionsRequest( + String companyUuid) { + this(Optional.empty(), companyUuid, Optional.empty(), + Optional.empty(), Optional.empty()); + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + + /** + * The UUID of the company + */ + @JsonIgnore + public String companyUuid() { + return companyUuid; + } + + /** + * Filter results to reverse wires associated with a specific payroll + */ + @JsonIgnore + public Optional payrollUuid() { + return payrollUuid; + } + + /** + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. + */ + @JsonIgnore + public Optional page() { + return page; + } + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + @JsonIgnore + public Optional per() { + return per; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetReverseWireTransactionsRequest withXGustoAPIVersion(GetReverseWireTransactionsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetReverseWireTransactionsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + /** + * The UUID of the company + */ + public GetReverseWireTransactionsRequest withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + /** + * Filter results to reverse wires associated with a specific payroll + */ + public GetReverseWireTransactionsRequest withPayrollUuid(String payrollUuid) { + Utils.checkNotNull(payrollUuid, "payrollUuid"); + this.payrollUuid = Optional.ofNullable(payrollUuid); + return this; + } + + + /** + * Filter results to reverse wires associated with a specific payroll + */ + public GetReverseWireTransactionsRequest withPayrollUuid(Optional payrollUuid) { + Utils.checkNotNull(payrollUuid, "payrollUuid"); + this.payrollUuid = payrollUuid; + return this; + } + + /** + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. + */ + public GetReverseWireTransactionsRequest withPage(long page) { + Utils.checkNotNull(page, "page"); + this.page = Optional.ofNullable(page); + return this; + } + + + /** + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. + */ + public GetReverseWireTransactionsRequest withPage(Optional page) { + Utils.checkNotNull(page, "page"); + this.page = page; + return this; + } + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + public GetReverseWireTransactionsRequest withPer(long per) { + Utils.checkNotNull(per, "per"); + this.per = Optional.ofNullable(per); + return this; + } + + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + public GetReverseWireTransactionsRequest withPer(Optional per) { + Utils.checkNotNull(per, "per"); + this.per = per; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetReverseWireTransactionsRequest other = (GetReverseWireTransactionsRequest) o; + return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && + Utils.enhancedDeepEquals(this.payrollUuid, other.payrollUuid) && + Utils.enhancedDeepEquals(this.page, other.page) && + Utils.enhancedDeepEquals(this.per, other.per); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + xGustoAPIVersion, companyUuid, payrollUuid, + page, per); + } + + @Override + public String toString() { + return Utils.toString(GetReverseWireTransactionsRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, + "companyUuid", companyUuid, + "payrollUuid", payrollUuid, + "page", page, + "per", per); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional xGustoAPIVersion; + + private String companyUuid; + + private Optional payrollUuid = Optional.empty(); + + private Optional page = Optional.empty(); + + private Optional per = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(GetReverseWireTransactionsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + + /** + * The UUID of the company + */ + public Builder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + + /** + * Filter results to reverse wires associated with a specific payroll + */ + public Builder payrollUuid(String payrollUuid) { + Utils.checkNotNull(payrollUuid, "payrollUuid"); + this.payrollUuid = Optional.ofNullable(payrollUuid); + return this; + } + + /** + * Filter results to reverse wires associated with a specific payroll + */ + public Builder payrollUuid(Optional payrollUuid) { + Utils.checkNotNull(payrollUuid, "payrollUuid"); + this.payrollUuid = payrollUuid; + return this; + } + + + /** + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. + */ + public Builder page(long page) { + Utils.checkNotNull(page, "page"); + this.page = Optional.ofNullable(page); + return this; + } + + /** + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. + */ + public Builder page(Optional page) { + Utils.checkNotNull(page, "page"); + this.page = page; + return this; + } + + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + public Builder per(long per) { + Utils.checkNotNull(per, "per"); + this.per = Optional.ofNullable(per); + return this; + } + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + public Builder per(Optional per) { + Utils.checkNotNull(per, "per"); + this.per = per; + return this; + } + + public GetReverseWireTransactionsRequest build() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + return new GetReverseWireTransactionsRequest( + xGustoAPIVersion, companyUuid, payrollUuid, + page, per); + } + + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "X-Gusto-API-Version", + "\"2025-06-15\"", + new TypeReference>() {}); + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetReverseWireTransactionsRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetReverseWireTransactionsRequestBuilder.java new file mode 100644 index 000000000..45193d424 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetReverseWireTransactionsRequestBuilder.java @@ -0,0 +1,36 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import static com.gusto.embedded_api.operations.Operations.RequestOperation; + +import com.gusto.embedded_api.SDKConfiguration; +import com.gusto.embedded_api.operations.GetReverseWireTransactions; +import com.gusto.embedded_api.utils.Headers; +import com.gusto.embedded_api.utils.Utils; + +public class GetReverseWireTransactionsRequestBuilder { + + private GetReverseWireTransactionsRequest request; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public GetReverseWireTransactionsRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public GetReverseWireTransactionsRequestBuilder request(GetReverseWireTransactionsRequest request) { + Utils.checkNotNull(request, "request"); + this.request = request; + return this; + } + + public GetReverseWireTransactionsResponse call() { + + RequestOperation operation + = new GetReverseWireTransactions.Sync(sdkConfiguration, _headers); + + return operation.handleResponse(operation.doRequest(request)); + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetReverseWireTransactionsResponse.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetReverseWireTransactionsResponse.java new file mode 100644 index 000000000..605025dff --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetReverseWireTransactionsResponse.java @@ -0,0 +1,254 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api.models.components.ReverseWireTransaction; +import com.gusto.embedded_api.utils.Response; +import com.gusto.embedded_api.utils.Utils; +import java.io.InputStream; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.List; +import java.util.Optional; + + +public class GetReverseWireTransactionsResponse implements Response { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * Example response + */ + private Optional> reverseWireTransactionList; + + @JsonCreator + public GetReverseWireTransactionsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional> reverseWireTransactionList) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(reverseWireTransactionList, "reverseWireTransactionList"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.reverseWireTransactionList = reverseWireTransactionList; + } + + public GetReverseWireTransactionsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * Example response + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> reverseWireTransactionList() { + return (Optional>) reverseWireTransactionList; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public GetReverseWireTransactionsResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public GetReverseWireTransactionsResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public GetReverseWireTransactionsResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * Example response + */ + public GetReverseWireTransactionsResponse withReverseWireTransactionList(List reverseWireTransactionList) { + Utils.checkNotNull(reverseWireTransactionList, "reverseWireTransactionList"); + this.reverseWireTransactionList = Optional.ofNullable(reverseWireTransactionList); + return this; + } + + + /** + * Example response + */ + public GetReverseWireTransactionsResponse withReverseWireTransactionList(Optional> reverseWireTransactionList) { + Utils.checkNotNull(reverseWireTransactionList, "reverseWireTransactionList"); + this.reverseWireTransactionList = reverseWireTransactionList; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetReverseWireTransactionsResponse other = (GetReverseWireTransactionsResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.reverseWireTransactionList, other.reverseWireTransactionList); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + reverseWireTransactionList); + } + + @Override + public String toString() { + return Utils.toString(GetReverseWireTransactionsResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "reverseWireTransactionList", reverseWireTransactionList); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional> reverseWireTransactionList = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * Example response + */ + public Builder reverseWireTransactionList(List reverseWireTransactionList) { + Utils.checkNotNull(reverseWireTransactionList, "reverseWireTransactionList"); + this.reverseWireTransactionList = Optional.ofNullable(reverseWireTransactionList); + return this; + } + + /** + * Example response + */ + public Builder reverseWireTransactionList(Optional> reverseWireTransactionList) { + Utils.checkNotNull(reverseWireTransactionList, "reverseWireTransactionList"); + this.reverseWireTransactionList = reverseWireTransactionList; + return this; + } + + public GetReverseWireTransactionsResponse build() { + + return new GetReverseWireTransactionsResponse( + contentType, statusCode, rawResponse, + reverseWireTransactionList); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetAchTransactionsHeaderXGustoAPIVersion.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetTaxPaymentHeaderXGustoAPIVersion.java similarity index 70% rename from gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetAchTransactionsHeaderXGustoAPIVersion.java rename to gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetTaxPaymentHeaderXGustoAPIVersion.java index 1792b2a47..c5ac876d0 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetAchTransactionsHeaderXGustoAPIVersion.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetTaxPaymentHeaderXGustoAPIVersion.java @@ -9,19 +9,19 @@ import java.util.Optional; /** - * GetAchTransactionsHeaderXGustoAPIVersion + * GetTaxPaymentHeaderXGustoAPIVersion * *

    Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ -public enum GetAchTransactionsHeaderXGustoAPIVersion { +public enum GetTaxPaymentHeaderXGustoAPIVersion { TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15("2025-06-15"); @JsonValue private final String value; - GetAchTransactionsHeaderXGustoAPIVersion(String value) { + GetTaxPaymentHeaderXGustoAPIVersion(String value) { this.value = value; } @@ -29,8 +29,8 @@ public String value() { return value; } - public static Optional fromValue(String value) { - for (GetAchTransactionsHeaderXGustoAPIVersion o: GetAchTransactionsHeaderXGustoAPIVersion.values()) { + public static Optional fromValue(String value) { + for (GetTaxPaymentHeaderXGustoAPIVersion o: GetTaxPaymentHeaderXGustoAPIVersion.values()) { if (Objects.deepEquals(o.value, value)) { return Optional.of(o); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetTaxPaymentRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetTaxPaymentRequest.java new file mode 100644 index 000000000..3e5f6f32d --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetTaxPaymentRequest.java @@ -0,0 +1,232 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api.utils.LazySingletonValue; +import com.gusto.embedded_api.utils.SpeakeasyMetadata; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class GetTaxPaymentRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") + private String companyUuid; + + /** + * The UUID of the tax payment + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=uuid") + private String uuid; + + @JsonCreator + public GetTaxPaymentRequest( + Optional xGustoAPIVersion, + String companyUuid, + String uuid) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(companyUuid, "companyUuid"); + Utils.checkNotNull(uuid, "uuid"); + this.xGustoAPIVersion = xGustoAPIVersion; + this.companyUuid = companyUuid; + this.uuid = uuid; + } + + public GetTaxPaymentRequest( + String companyUuid, + String uuid) { + this(Optional.empty(), companyUuid, uuid); + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + + /** + * The UUID of the company + */ + @JsonIgnore + public String companyUuid() { + return companyUuid; + } + + /** + * The UUID of the tax payment + */ + @JsonIgnore + public String uuid() { + return uuid; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetTaxPaymentRequest withXGustoAPIVersion(GetTaxPaymentHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetTaxPaymentRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + /** + * The UUID of the company + */ + public GetTaxPaymentRequest withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + /** + * The UUID of the tax payment + */ + public GetTaxPaymentRequest withUuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetTaxPaymentRequest other = (GetTaxPaymentRequest) o; + return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && + Utils.enhancedDeepEquals(this.uuid, other.uuid); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + xGustoAPIVersion, companyUuid, uuid); + } + + @Override + public String toString() { + return Utils.toString(GetTaxPaymentRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, + "companyUuid", companyUuid, + "uuid", uuid); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional xGustoAPIVersion; + + private String companyUuid; + + private String uuid; + + private Builder() { + // force use of static builder() method + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(GetTaxPaymentHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + + /** + * The UUID of the company + */ + public Builder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + + /** + * The UUID of the tax payment + */ + public Builder uuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + public GetTaxPaymentRequest build() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + return new GetTaxPaymentRequest( + xGustoAPIVersion, companyUuid, uuid); + } + + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "X-Gusto-API-Version", + "\"2025-06-15\"", + new TypeReference>() {}); + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetTaxPaymentRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetTaxPaymentRequestBuilder.java new file mode 100644 index 000000000..643b6c46e --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetTaxPaymentRequestBuilder.java @@ -0,0 +1,83 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import static com.gusto.embedded_api.operations.Operations.RequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api.SDKConfiguration; +import com.gusto.embedded_api.operations.GetTaxPayment; +import com.gusto.embedded_api.utils.Headers; +import com.gusto.embedded_api.utils.LazySingletonValue; +import com.gusto.embedded_api.utils.Utils; +import java.lang.String; +import java.util.Optional; + +public class GetTaxPaymentRequestBuilder { + + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2025-06-15\"", + new TypeReference>() {}); + private String companyUuid; + private String uuid; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public GetTaxPaymentRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public GetTaxPaymentRequestBuilder xGustoAPIVersion(GetTaxPaymentHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetTaxPaymentRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public GetTaxPaymentRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + public GetTaxPaymentRequestBuilder uuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + + private GetTaxPaymentRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + GetTaxPaymentRequest request = new GetTaxPaymentRequest(xGustoAPIVersion, + companyUuid, + uuid); + + return request; + } + + public GetTaxPaymentResponse call() { + + RequestOperation operation + = new GetTaxPayment.Sync(sdkConfiguration, _headers); + GetTaxPaymentRequest request = buildRequest(); + + return operation.handleResponse(operation.doRequest(request)); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2025-06-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetTaxPaymentResponse.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetTaxPaymentResponse.java new file mode 100644 index 000000000..2c3254537 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetTaxPaymentResponse.java @@ -0,0 +1,253 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api.models.components.TaxPayment; +import com.gusto.embedded_api.utils.Response; +import com.gusto.embedded_api.utils.Utils; +import java.io.InputStream; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.Optional; + + +public class GetTaxPaymentResponse implements Response { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * Success + */ + private Optional taxPayment; + + @JsonCreator + public GetTaxPaymentResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional taxPayment) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(taxPayment, "taxPayment"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.taxPayment = taxPayment; + } + + public GetTaxPaymentResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * Success + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional taxPayment() { + return (Optional) taxPayment; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public GetTaxPaymentResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public GetTaxPaymentResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public GetTaxPaymentResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * Success + */ + public GetTaxPaymentResponse withTaxPayment(TaxPayment taxPayment) { + Utils.checkNotNull(taxPayment, "taxPayment"); + this.taxPayment = Optional.ofNullable(taxPayment); + return this; + } + + + /** + * Success + */ + public GetTaxPaymentResponse withTaxPayment(Optional taxPayment) { + Utils.checkNotNull(taxPayment, "taxPayment"); + this.taxPayment = taxPayment; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetTaxPaymentResponse other = (GetTaxPaymentResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.taxPayment, other.taxPayment); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + taxPayment); + } + + @Override + public String toString() { + return Utils.toString(GetTaxPaymentResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "taxPayment", taxPayment); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional taxPayment = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * Success + */ + public Builder taxPayment(TaxPayment taxPayment) { + Utils.checkNotNull(taxPayment, "taxPayment"); + this.taxPayment = Optional.ofNullable(taxPayment); + return this; + } + + /** + * Success + */ + public Builder taxPayment(Optional taxPayment) { + Utils.checkNotNull(taxPayment, "taxPayment"); + this.taxPayment = taxPayment; + return this; + } + + public GetTaxPaymentResponse build() { + + return new GetTaxPaymentResponse( + contentType, statusCode, rawResponse, + taxPayment); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetTaxPaymentsHeaderXGustoAPIVersion.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetTaxPaymentsHeaderXGustoAPIVersion.java new file mode 100644 index 000000000..150f4d2a5 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetTaxPaymentsHeaderXGustoAPIVersion.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * GetTaxPaymentsHeaderXGustoAPIVersion + * + *

    Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ +public enum GetTaxPaymentsHeaderXGustoAPIVersion { + TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15("2025-06-15"); + + @JsonValue + private final String value; + + GetTaxPaymentsHeaderXGustoAPIVersion(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (GetTaxPaymentsHeaderXGustoAPIVersion o: GetTaxPaymentsHeaderXGustoAPIVersion.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetTaxPaymentsRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetTaxPaymentsRequest.java new file mode 100644 index 000000000..964517716 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetTaxPaymentsRequest.java @@ -0,0 +1,1145 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api.utils.LazySingletonValue; +import com.gusto.embedded_api.utils.SpeakeasyMetadata; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Float; +import java.lang.Long; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.time.LocalDate; +import java.util.List; +import java.util.Optional; + + +public class GetTaxPaymentsRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") + private String companyUuid; + + /** + * Filter by tax jurisdiction. Accepts one or more two-letter state codes, or `US` for federal, as a + * comma-separated list (e.g. `IL,CA`). + * + *

    Codes are case-insensitive. + */ + @SpeakeasyMetadata("queryParam:style=form,explode=false,name=jurisdiction") + private Optional> jurisdiction; + + /** + * Filter to tax payments associated with one or more payrolls, given as a comma-separated list of + * payroll UUIDs. + */ + @SpeakeasyMetadata("queryParam:style=form,explode=false,name=payroll_uuids") + private Optional> payrollUuids; + + /** + * Lower-bound (inclusive) date filter on due_date. + */ + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=due_date_from") + private Optional dueDateFrom; + + /** + * Upper-bound (inclusive) date filter on due_date. + */ + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=due_date_to") + private Optional dueDateTo; + + /** + * Lower-bound (inclusive) date filter on payment_sent_on. + */ + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=payment_sent_on_from") + private Optional paymentSentOnFrom; + + /** + * Upper-bound (inclusive) date filter on payment_sent_on. + */ + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=payment_sent_on_to") + private Optional paymentSentOnTo; + + /** + * Lower-bound (inclusive) date filter on period_start. + */ + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=period_start_from") + private Optional periodStartFrom; + + /** + * Upper-bound (inclusive) date filter on period_start. + */ + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=period_start_to") + private Optional periodStartTo; + + /** + * Lower-bound (inclusive) date filter on period_end. + */ + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=period_end_from") + private Optional periodEndFrom; + + /** + * Upper-bound (inclusive) date filter on period_end. + */ + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=period_end_to") + private Optional periodEndTo; + + /** + * Lower-bound (inclusive) filter on amount. + */ + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=amount_min") + private Optional amountMin; + + /** + * Upper-bound (inclusive) filter on amount. + */ + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=amount_max") + private Optional amountMax; + + /** + * Sort by one or more fields. Options: amount, due_date, payment_sent_on, period_end, period_start. + * Append `:asc` or `:desc` to specify direction (e.g., `amount:asc`). + * + *

    Defaults to ascending. + */ + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=sort_by") + private Optional sortBy; + + /** + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. + */ + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=page") + private Optional page; + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=per") + private Optional per; + + @JsonCreator + public GetTaxPaymentsRequest( + Optional xGustoAPIVersion, + String companyUuid, + Optional> jurisdiction, + Optional> payrollUuids, + Optional dueDateFrom, + Optional dueDateTo, + Optional paymentSentOnFrom, + Optional paymentSentOnTo, + Optional periodStartFrom, + Optional periodStartTo, + Optional periodEndFrom, + Optional periodEndTo, + Optional amountMin, + Optional amountMax, + Optional sortBy, + Optional page, + Optional per) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(companyUuid, "companyUuid"); + Utils.checkNotNull(jurisdiction, "jurisdiction"); + Utils.checkNotNull(payrollUuids, "payrollUuids"); + Utils.checkNotNull(dueDateFrom, "dueDateFrom"); + Utils.checkNotNull(dueDateTo, "dueDateTo"); + Utils.checkNotNull(paymentSentOnFrom, "paymentSentOnFrom"); + Utils.checkNotNull(paymentSentOnTo, "paymentSentOnTo"); + Utils.checkNotNull(periodStartFrom, "periodStartFrom"); + Utils.checkNotNull(periodStartTo, "periodStartTo"); + Utils.checkNotNull(periodEndFrom, "periodEndFrom"); + Utils.checkNotNull(periodEndTo, "periodEndTo"); + Utils.checkNotNull(amountMin, "amountMin"); + Utils.checkNotNull(amountMax, "amountMax"); + Utils.checkNotNull(sortBy, "sortBy"); + Utils.checkNotNull(page, "page"); + Utils.checkNotNull(per, "per"); + this.xGustoAPIVersion = xGustoAPIVersion; + this.companyUuid = companyUuid; + this.jurisdiction = jurisdiction; + this.payrollUuids = payrollUuids; + this.dueDateFrom = dueDateFrom; + this.dueDateTo = dueDateTo; + this.paymentSentOnFrom = paymentSentOnFrom; + this.paymentSentOnTo = paymentSentOnTo; + this.periodStartFrom = periodStartFrom; + this.periodStartTo = periodStartTo; + this.periodEndFrom = periodEndFrom; + this.periodEndTo = periodEndTo; + this.amountMin = amountMin; + this.amountMax = amountMax; + this.sortBy = sortBy; + this.page = page; + this.per = per; + } + + public GetTaxPaymentsRequest( + String companyUuid) { + this(Optional.empty(), companyUuid, Optional.empty(), + Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty(), Optional.empty()); + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + + /** + * The UUID of the company + */ + @JsonIgnore + public String companyUuid() { + return companyUuid; + } + + /** + * Filter by tax jurisdiction. Accepts one or more two-letter state codes, or `US` for federal, as a + * comma-separated list (e.g. `IL,CA`). + * + *

    Codes are case-insensitive. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> jurisdiction() { + return (Optional>) jurisdiction; + } + + /** + * Filter to tax payments associated with one or more payrolls, given as a comma-separated list of + * payroll UUIDs. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> payrollUuids() { + return (Optional>) payrollUuids; + } + + /** + * Lower-bound (inclusive) date filter on due_date. + */ + @JsonIgnore + public Optional dueDateFrom() { + return dueDateFrom; + } + + /** + * Upper-bound (inclusive) date filter on due_date. + */ + @JsonIgnore + public Optional dueDateTo() { + return dueDateTo; + } + + /** + * Lower-bound (inclusive) date filter on payment_sent_on. + */ + @JsonIgnore + public Optional paymentSentOnFrom() { + return paymentSentOnFrom; + } + + /** + * Upper-bound (inclusive) date filter on payment_sent_on. + */ + @JsonIgnore + public Optional paymentSentOnTo() { + return paymentSentOnTo; + } + + /** + * Lower-bound (inclusive) date filter on period_start. + */ + @JsonIgnore + public Optional periodStartFrom() { + return periodStartFrom; + } + + /** + * Upper-bound (inclusive) date filter on period_start. + */ + @JsonIgnore + public Optional periodStartTo() { + return periodStartTo; + } + + /** + * Lower-bound (inclusive) date filter on period_end. + */ + @JsonIgnore + public Optional periodEndFrom() { + return periodEndFrom; + } + + /** + * Upper-bound (inclusive) date filter on period_end. + */ + @JsonIgnore + public Optional periodEndTo() { + return periodEndTo; + } + + /** + * Lower-bound (inclusive) filter on amount. + */ + @JsonIgnore + public Optional amountMin() { + return amountMin; + } + + /** + * Upper-bound (inclusive) filter on amount. + */ + @JsonIgnore + public Optional amountMax() { + return amountMax; + } + + /** + * Sort by one or more fields. Options: amount, due_date, payment_sent_on, period_end, period_start. + * Append `:asc` or `:desc` to specify direction (e.g., `amount:asc`). + * + *

    Defaults to ascending. + */ + @JsonIgnore + public Optional sortBy() { + return sortBy; + } + + /** + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. + */ + @JsonIgnore + public Optional page() { + return page; + } + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + @JsonIgnore + public Optional per() { + return per; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetTaxPaymentsRequest withXGustoAPIVersion(GetTaxPaymentsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetTaxPaymentsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + /** + * The UUID of the company + */ + public GetTaxPaymentsRequest withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + /** + * Filter by tax jurisdiction. Accepts one or more two-letter state codes, or `US` for federal, as a + * comma-separated list (e.g. `IL,CA`). + * + *

    Codes are case-insensitive. + */ + public GetTaxPaymentsRequest withJurisdiction(List jurisdiction) { + Utils.checkNotNull(jurisdiction, "jurisdiction"); + this.jurisdiction = Optional.ofNullable(jurisdiction); + return this; + } + + + /** + * Filter by tax jurisdiction. Accepts one or more two-letter state codes, or `US` for federal, as a + * comma-separated list (e.g. `IL,CA`). + * + *

    Codes are case-insensitive. + */ + public GetTaxPaymentsRequest withJurisdiction(Optional> jurisdiction) { + Utils.checkNotNull(jurisdiction, "jurisdiction"); + this.jurisdiction = jurisdiction; + return this; + } + + /** + * Filter to tax payments associated with one or more payrolls, given as a comma-separated list of + * payroll UUIDs. + */ + public GetTaxPaymentsRequest withPayrollUuids(List payrollUuids) { + Utils.checkNotNull(payrollUuids, "payrollUuids"); + this.payrollUuids = Optional.ofNullable(payrollUuids); + return this; + } + + + /** + * Filter to tax payments associated with one or more payrolls, given as a comma-separated list of + * payroll UUIDs. + */ + public GetTaxPaymentsRequest withPayrollUuids(Optional> payrollUuids) { + Utils.checkNotNull(payrollUuids, "payrollUuids"); + this.payrollUuids = payrollUuids; + return this; + } + + /** + * Lower-bound (inclusive) date filter on due_date. + */ + public GetTaxPaymentsRequest withDueDateFrom(LocalDate dueDateFrom) { + Utils.checkNotNull(dueDateFrom, "dueDateFrom"); + this.dueDateFrom = Optional.ofNullable(dueDateFrom); + return this; + } + + + /** + * Lower-bound (inclusive) date filter on due_date. + */ + public GetTaxPaymentsRequest withDueDateFrom(Optional dueDateFrom) { + Utils.checkNotNull(dueDateFrom, "dueDateFrom"); + this.dueDateFrom = dueDateFrom; + return this; + } + + /** + * Upper-bound (inclusive) date filter on due_date. + */ + public GetTaxPaymentsRequest withDueDateTo(LocalDate dueDateTo) { + Utils.checkNotNull(dueDateTo, "dueDateTo"); + this.dueDateTo = Optional.ofNullable(dueDateTo); + return this; + } + + + /** + * Upper-bound (inclusive) date filter on due_date. + */ + public GetTaxPaymentsRequest withDueDateTo(Optional dueDateTo) { + Utils.checkNotNull(dueDateTo, "dueDateTo"); + this.dueDateTo = dueDateTo; + return this; + } + + /** + * Lower-bound (inclusive) date filter on payment_sent_on. + */ + public GetTaxPaymentsRequest withPaymentSentOnFrom(LocalDate paymentSentOnFrom) { + Utils.checkNotNull(paymentSentOnFrom, "paymentSentOnFrom"); + this.paymentSentOnFrom = Optional.ofNullable(paymentSentOnFrom); + return this; + } + + + /** + * Lower-bound (inclusive) date filter on payment_sent_on. + */ + public GetTaxPaymentsRequest withPaymentSentOnFrom(Optional paymentSentOnFrom) { + Utils.checkNotNull(paymentSentOnFrom, "paymentSentOnFrom"); + this.paymentSentOnFrom = paymentSentOnFrom; + return this; + } + + /** + * Upper-bound (inclusive) date filter on payment_sent_on. + */ + public GetTaxPaymentsRequest withPaymentSentOnTo(LocalDate paymentSentOnTo) { + Utils.checkNotNull(paymentSentOnTo, "paymentSentOnTo"); + this.paymentSentOnTo = Optional.ofNullable(paymentSentOnTo); + return this; + } + + + /** + * Upper-bound (inclusive) date filter on payment_sent_on. + */ + public GetTaxPaymentsRequest withPaymentSentOnTo(Optional paymentSentOnTo) { + Utils.checkNotNull(paymentSentOnTo, "paymentSentOnTo"); + this.paymentSentOnTo = paymentSentOnTo; + return this; + } + + /** + * Lower-bound (inclusive) date filter on period_start. + */ + public GetTaxPaymentsRequest withPeriodStartFrom(LocalDate periodStartFrom) { + Utils.checkNotNull(periodStartFrom, "periodStartFrom"); + this.periodStartFrom = Optional.ofNullable(periodStartFrom); + return this; + } + + + /** + * Lower-bound (inclusive) date filter on period_start. + */ + public GetTaxPaymentsRequest withPeriodStartFrom(Optional periodStartFrom) { + Utils.checkNotNull(periodStartFrom, "periodStartFrom"); + this.periodStartFrom = periodStartFrom; + return this; + } + + /** + * Upper-bound (inclusive) date filter on period_start. + */ + public GetTaxPaymentsRequest withPeriodStartTo(LocalDate periodStartTo) { + Utils.checkNotNull(periodStartTo, "periodStartTo"); + this.periodStartTo = Optional.ofNullable(periodStartTo); + return this; + } + + + /** + * Upper-bound (inclusive) date filter on period_start. + */ + public GetTaxPaymentsRequest withPeriodStartTo(Optional periodStartTo) { + Utils.checkNotNull(periodStartTo, "periodStartTo"); + this.periodStartTo = periodStartTo; + return this; + } + + /** + * Lower-bound (inclusive) date filter on period_end. + */ + public GetTaxPaymentsRequest withPeriodEndFrom(LocalDate periodEndFrom) { + Utils.checkNotNull(periodEndFrom, "periodEndFrom"); + this.periodEndFrom = Optional.ofNullable(periodEndFrom); + return this; + } + + + /** + * Lower-bound (inclusive) date filter on period_end. + */ + public GetTaxPaymentsRequest withPeriodEndFrom(Optional periodEndFrom) { + Utils.checkNotNull(periodEndFrom, "periodEndFrom"); + this.periodEndFrom = periodEndFrom; + return this; + } + + /** + * Upper-bound (inclusive) date filter on period_end. + */ + public GetTaxPaymentsRequest withPeriodEndTo(LocalDate periodEndTo) { + Utils.checkNotNull(periodEndTo, "periodEndTo"); + this.periodEndTo = Optional.ofNullable(periodEndTo); + return this; + } + + + /** + * Upper-bound (inclusive) date filter on period_end. + */ + public GetTaxPaymentsRequest withPeriodEndTo(Optional periodEndTo) { + Utils.checkNotNull(periodEndTo, "periodEndTo"); + this.periodEndTo = periodEndTo; + return this; + } + + /** + * Lower-bound (inclusive) filter on amount. + */ + public GetTaxPaymentsRequest withAmountMin(float amountMin) { + Utils.checkNotNull(amountMin, "amountMin"); + this.amountMin = Optional.ofNullable(amountMin); + return this; + } + + + /** + * Lower-bound (inclusive) filter on amount. + */ + public GetTaxPaymentsRequest withAmountMin(Optional amountMin) { + Utils.checkNotNull(amountMin, "amountMin"); + this.amountMin = amountMin; + return this; + } + + /** + * Upper-bound (inclusive) filter on amount. + */ + public GetTaxPaymentsRequest withAmountMax(float amountMax) { + Utils.checkNotNull(amountMax, "amountMax"); + this.amountMax = Optional.ofNullable(amountMax); + return this; + } + + + /** + * Upper-bound (inclusive) filter on amount. + */ + public GetTaxPaymentsRequest withAmountMax(Optional amountMax) { + Utils.checkNotNull(amountMax, "amountMax"); + this.amountMax = amountMax; + return this; + } + + /** + * Sort by one or more fields. Options: amount, due_date, payment_sent_on, period_end, period_start. + * Append `:asc` or `:desc` to specify direction (e.g., `amount:asc`). + * + *

    Defaults to ascending. + */ + public GetTaxPaymentsRequest withSortBy(String sortBy) { + Utils.checkNotNull(sortBy, "sortBy"); + this.sortBy = Optional.ofNullable(sortBy); + return this; + } + + + /** + * Sort by one or more fields. Options: amount, due_date, payment_sent_on, period_end, period_start. + * Append `:asc` or `:desc` to specify direction (e.g., `amount:asc`). + * + *

    Defaults to ascending. + */ + public GetTaxPaymentsRequest withSortBy(Optional sortBy) { + Utils.checkNotNull(sortBy, "sortBy"); + this.sortBy = sortBy; + return this; + } + + /** + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. + */ + public GetTaxPaymentsRequest withPage(long page) { + Utils.checkNotNull(page, "page"); + this.page = Optional.ofNullable(page); + return this; + } + + + /** + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. + */ + public GetTaxPaymentsRequest withPage(Optional page) { + Utils.checkNotNull(page, "page"); + this.page = page; + return this; + } + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + public GetTaxPaymentsRequest withPer(long per) { + Utils.checkNotNull(per, "per"); + this.per = Optional.ofNullable(per); + return this; + } + + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + public GetTaxPaymentsRequest withPer(Optional per) { + Utils.checkNotNull(per, "per"); + this.per = per; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetTaxPaymentsRequest other = (GetTaxPaymentsRequest) o; + return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && + Utils.enhancedDeepEquals(this.jurisdiction, other.jurisdiction) && + Utils.enhancedDeepEquals(this.payrollUuids, other.payrollUuids) && + Utils.enhancedDeepEquals(this.dueDateFrom, other.dueDateFrom) && + Utils.enhancedDeepEquals(this.dueDateTo, other.dueDateTo) && + Utils.enhancedDeepEquals(this.paymentSentOnFrom, other.paymentSentOnFrom) && + Utils.enhancedDeepEquals(this.paymentSentOnTo, other.paymentSentOnTo) && + Utils.enhancedDeepEquals(this.periodStartFrom, other.periodStartFrom) && + Utils.enhancedDeepEquals(this.periodStartTo, other.periodStartTo) && + Utils.enhancedDeepEquals(this.periodEndFrom, other.periodEndFrom) && + Utils.enhancedDeepEquals(this.periodEndTo, other.periodEndTo) && + Utils.enhancedDeepEquals(this.amountMin, other.amountMin) && + Utils.enhancedDeepEquals(this.amountMax, other.amountMax) && + Utils.enhancedDeepEquals(this.sortBy, other.sortBy) && + Utils.enhancedDeepEquals(this.page, other.page) && + Utils.enhancedDeepEquals(this.per, other.per); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + xGustoAPIVersion, companyUuid, jurisdiction, + payrollUuids, dueDateFrom, dueDateTo, + paymentSentOnFrom, paymentSentOnTo, periodStartFrom, + periodStartTo, periodEndFrom, periodEndTo, + amountMin, amountMax, sortBy, + page, per); + } + + @Override + public String toString() { + return Utils.toString(GetTaxPaymentsRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, + "companyUuid", companyUuid, + "jurisdiction", jurisdiction, + "payrollUuids", payrollUuids, + "dueDateFrom", dueDateFrom, + "dueDateTo", dueDateTo, + "paymentSentOnFrom", paymentSentOnFrom, + "paymentSentOnTo", paymentSentOnTo, + "periodStartFrom", periodStartFrom, + "periodStartTo", periodStartTo, + "periodEndFrom", periodEndFrom, + "periodEndTo", periodEndTo, + "amountMin", amountMin, + "amountMax", amountMax, + "sortBy", sortBy, + "page", page, + "per", per); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional xGustoAPIVersion; + + private String companyUuid; + + private Optional> jurisdiction = Optional.empty(); + + private Optional> payrollUuids = Optional.empty(); + + private Optional dueDateFrom = Optional.empty(); + + private Optional dueDateTo = Optional.empty(); + + private Optional paymentSentOnFrom = Optional.empty(); + + private Optional paymentSentOnTo = Optional.empty(); + + private Optional periodStartFrom = Optional.empty(); + + private Optional periodStartTo = Optional.empty(); + + private Optional periodEndFrom = Optional.empty(); + + private Optional periodEndTo = Optional.empty(); + + private Optional amountMin = Optional.empty(); + + private Optional amountMax = Optional.empty(); + + private Optional sortBy = Optional.empty(); + + private Optional page = Optional.empty(); + + private Optional per = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(GetTaxPaymentsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + + /** + * The UUID of the company + */ + public Builder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + + /** + * Filter by tax jurisdiction. Accepts one or more two-letter state codes, or `US` for federal, as a + * comma-separated list (e.g. `IL,CA`). + * + *

    Codes are case-insensitive. + */ + public Builder jurisdiction(List jurisdiction) { + Utils.checkNotNull(jurisdiction, "jurisdiction"); + this.jurisdiction = Optional.ofNullable(jurisdiction); + return this; + } + + /** + * Filter by tax jurisdiction. Accepts one or more two-letter state codes, or `US` for federal, as a + * comma-separated list (e.g. `IL,CA`). + * + *

    Codes are case-insensitive. + */ + public Builder jurisdiction(Optional> jurisdiction) { + Utils.checkNotNull(jurisdiction, "jurisdiction"); + this.jurisdiction = jurisdiction; + return this; + } + + + /** + * Filter to tax payments associated with one or more payrolls, given as a comma-separated list of + * payroll UUIDs. + */ + public Builder payrollUuids(List payrollUuids) { + Utils.checkNotNull(payrollUuids, "payrollUuids"); + this.payrollUuids = Optional.ofNullable(payrollUuids); + return this; + } + + /** + * Filter to tax payments associated with one or more payrolls, given as a comma-separated list of + * payroll UUIDs. + */ + public Builder payrollUuids(Optional> payrollUuids) { + Utils.checkNotNull(payrollUuids, "payrollUuids"); + this.payrollUuids = payrollUuids; + return this; + } + + + /** + * Lower-bound (inclusive) date filter on due_date. + */ + public Builder dueDateFrom(LocalDate dueDateFrom) { + Utils.checkNotNull(dueDateFrom, "dueDateFrom"); + this.dueDateFrom = Optional.ofNullable(dueDateFrom); + return this; + } + + /** + * Lower-bound (inclusive) date filter on due_date. + */ + public Builder dueDateFrom(Optional dueDateFrom) { + Utils.checkNotNull(dueDateFrom, "dueDateFrom"); + this.dueDateFrom = dueDateFrom; + return this; + } + + + /** + * Upper-bound (inclusive) date filter on due_date. + */ + public Builder dueDateTo(LocalDate dueDateTo) { + Utils.checkNotNull(dueDateTo, "dueDateTo"); + this.dueDateTo = Optional.ofNullable(dueDateTo); + return this; + } + + /** + * Upper-bound (inclusive) date filter on due_date. + */ + public Builder dueDateTo(Optional dueDateTo) { + Utils.checkNotNull(dueDateTo, "dueDateTo"); + this.dueDateTo = dueDateTo; + return this; + } + + + /** + * Lower-bound (inclusive) date filter on payment_sent_on. + */ + public Builder paymentSentOnFrom(LocalDate paymentSentOnFrom) { + Utils.checkNotNull(paymentSentOnFrom, "paymentSentOnFrom"); + this.paymentSentOnFrom = Optional.ofNullable(paymentSentOnFrom); + return this; + } + + /** + * Lower-bound (inclusive) date filter on payment_sent_on. + */ + public Builder paymentSentOnFrom(Optional paymentSentOnFrom) { + Utils.checkNotNull(paymentSentOnFrom, "paymentSentOnFrom"); + this.paymentSentOnFrom = paymentSentOnFrom; + return this; + } + + + /** + * Upper-bound (inclusive) date filter on payment_sent_on. + */ + public Builder paymentSentOnTo(LocalDate paymentSentOnTo) { + Utils.checkNotNull(paymentSentOnTo, "paymentSentOnTo"); + this.paymentSentOnTo = Optional.ofNullable(paymentSentOnTo); + return this; + } + + /** + * Upper-bound (inclusive) date filter on payment_sent_on. + */ + public Builder paymentSentOnTo(Optional paymentSentOnTo) { + Utils.checkNotNull(paymentSentOnTo, "paymentSentOnTo"); + this.paymentSentOnTo = paymentSentOnTo; + return this; + } + + + /** + * Lower-bound (inclusive) date filter on period_start. + */ + public Builder periodStartFrom(LocalDate periodStartFrom) { + Utils.checkNotNull(periodStartFrom, "periodStartFrom"); + this.periodStartFrom = Optional.ofNullable(periodStartFrom); + return this; + } + + /** + * Lower-bound (inclusive) date filter on period_start. + */ + public Builder periodStartFrom(Optional periodStartFrom) { + Utils.checkNotNull(periodStartFrom, "periodStartFrom"); + this.periodStartFrom = periodStartFrom; + return this; + } + + + /** + * Upper-bound (inclusive) date filter on period_start. + */ + public Builder periodStartTo(LocalDate periodStartTo) { + Utils.checkNotNull(periodStartTo, "periodStartTo"); + this.periodStartTo = Optional.ofNullable(periodStartTo); + return this; + } + + /** + * Upper-bound (inclusive) date filter on period_start. + */ + public Builder periodStartTo(Optional periodStartTo) { + Utils.checkNotNull(periodStartTo, "periodStartTo"); + this.periodStartTo = periodStartTo; + return this; + } + + + /** + * Lower-bound (inclusive) date filter on period_end. + */ + public Builder periodEndFrom(LocalDate periodEndFrom) { + Utils.checkNotNull(periodEndFrom, "periodEndFrom"); + this.periodEndFrom = Optional.ofNullable(periodEndFrom); + return this; + } + + /** + * Lower-bound (inclusive) date filter on period_end. + */ + public Builder periodEndFrom(Optional periodEndFrom) { + Utils.checkNotNull(periodEndFrom, "periodEndFrom"); + this.periodEndFrom = periodEndFrom; + return this; + } + + + /** + * Upper-bound (inclusive) date filter on period_end. + */ + public Builder periodEndTo(LocalDate periodEndTo) { + Utils.checkNotNull(periodEndTo, "periodEndTo"); + this.periodEndTo = Optional.ofNullable(periodEndTo); + return this; + } + + /** + * Upper-bound (inclusive) date filter on period_end. + */ + public Builder periodEndTo(Optional periodEndTo) { + Utils.checkNotNull(periodEndTo, "periodEndTo"); + this.periodEndTo = periodEndTo; + return this; + } + + + /** + * Lower-bound (inclusive) filter on amount. + */ + public Builder amountMin(float amountMin) { + Utils.checkNotNull(amountMin, "amountMin"); + this.amountMin = Optional.ofNullable(amountMin); + return this; + } + + /** + * Lower-bound (inclusive) filter on amount. + */ + public Builder amountMin(Optional amountMin) { + Utils.checkNotNull(amountMin, "amountMin"); + this.amountMin = amountMin; + return this; + } + + + /** + * Upper-bound (inclusive) filter on amount. + */ + public Builder amountMax(float amountMax) { + Utils.checkNotNull(amountMax, "amountMax"); + this.amountMax = Optional.ofNullable(amountMax); + return this; + } + + /** + * Upper-bound (inclusive) filter on amount. + */ + public Builder amountMax(Optional amountMax) { + Utils.checkNotNull(amountMax, "amountMax"); + this.amountMax = amountMax; + return this; + } + + + /** + * Sort by one or more fields. Options: amount, due_date, payment_sent_on, period_end, period_start. + * Append `:asc` or `:desc` to specify direction (e.g., `amount:asc`). + * + *

    Defaults to ascending. + */ + public Builder sortBy(String sortBy) { + Utils.checkNotNull(sortBy, "sortBy"); + this.sortBy = Optional.ofNullable(sortBy); + return this; + } + + /** + * Sort by one or more fields. Options: amount, due_date, payment_sent_on, period_end, period_start. + * Append `:asc` or `:desc` to specify direction (e.g., `amount:asc`). + * + *

    Defaults to ascending. + */ + public Builder sortBy(Optional sortBy) { + Utils.checkNotNull(sortBy, "sortBy"); + this.sortBy = sortBy; + return this; + } + + + /** + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. + */ + public Builder page(long page) { + Utils.checkNotNull(page, "page"); + this.page = Optional.ofNullable(page); + return this; + } + + /** + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. + */ + public Builder page(Optional page) { + Utils.checkNotNull(page, "page"); + this.page = page; + return this; + } + + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + public Builder per(long per) { + Utils.checkNotNull(per, "per"); + this.per = Optional.ofNullable(per); + return this; + } + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + public Builder per(Optional per) { + Utils.checkNotNull(per, "per"); + this.per = per; + return this; + } + + public GetTaxPaymentsRequest build() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + return new GetTaxPaymentsRequest( + xGustoAPIVersion, companyUuid, jurisdiction, + payrollUuids, dueDateFrom, dueDateTo, + paymentSentOnFrom, paymentSentOnTo, periodStartFrom, + periodStartTo, periodEndFrom, periodEndTo, + amountMin, amountMax, sortBy, + page, per); + } + + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "X-Gusto-API-Version", + "\"2025-06-15\"", + new TypeReference>() {}); + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetTaxPaymentsRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetTaxPaymentsRequestBuilder.java new file mode 100644 index 000000000..d1f20d0e9 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetTaxPaymentsRequestBuilder.java @@ -0,0 +1,36 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import static com.gusto.embedded_api.operations.Operations.RequestOperation; + +import com.gusto.embedded_api.SDKConfiguration; +import com.gusto.embedded_api.operations.GetTaxPayments; +import com.gusto.embedded_api.utils.Headers; +import com.gusto.embedded_api.utils.Utils; + +public class GetTaxPaymentsRequestBuilder { + + private GetTaxPaymentsRequest request; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public GetTaxPaymentsRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public GetTaxPaymentsRequestBuilder request(GetTaxPaymentsRequest request) { + Utils.checkNotNull(request, "request"); + this.request = request; + return this; + } + + public GetTaxPaymentsResponse call() { + + RequestOperation operation + = new GetTaxPayments.Sync(sdkConfiguration, _headers); + + return operation.handleResponse(operation.doRequest(request)); + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetTaxPaymentsResponse.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetTaxPaymentsResponse.java new file mode 100644 index 000000000..0bf459902 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetTaxPaymentsResponse.java @@ -0,0 +1,254 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api.models.components.TaxPayment; +import com.gusto.embedded_api.utils.Response; +import com.gusto.embedded_api.utils.Utils; +import java.io.InputStream; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.List; +import java.util.Optional; + + +public class GetTaxPaymentsResponse implements Response { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * Success + */ + private Optional> taxPaymentList; + + @JsonCreator + public GetTaxPaymentsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional> taxPaymentList) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(taxPaymentList, "taxPaymentList"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.taxPaymentList = taxPaymentList; + } + + public GetTaxPaymentsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * Success + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> taxPaymentList() { + return (Optional>) taxPaymentList; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public GetTaxPaymentsResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public GetTaxPaymentsResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public GetTaxPaymentsResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * Success + */ + public GetTaxPaymentsResponse withTaxPaymentList(List taxPaymentList) { + Utils.checkNotNull(taxPaymentList, "taxPaymentList"); + this.taxPaymentList = Optional.ofNullable(taxPaymentList); + return this; + } + + + /** + * Success + */ + public GetTaxPaymentsResponse withTaxPaymentList(Optional> taxPaymentList) { + Utils.checkNotNull(taxPaymentList, "taxPaymentList"); + this.taxPaymentList = taxPaymentList; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetTaxPaymentsResponse other = (GetTaxPaymentsResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.taxPaymentList, other.taxPaymentList); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + taxPaymentList); + } + + @Override + public String toString() { + return Utils.toString(GetTaxPaymentsResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "taxPaymentList", taxPaymentList); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional> taxPaymentList = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * Success + */ + public Builder taxPaymentList(List taxPaymentList) { + Utils.checkNotNull(taxPaymentList, "taxPaymentList"); + this.taxPaymentList = Optional.ofNullable(taxPaymentList); + return this; + } + + /** + * Success + */ + public Builder taxPaymentList(Optional> taxPaymentList) { + Utils.checkNotNull(taxPaymentList, "taxPaymentList"); + this.taxPaymentList = taxPaymentList; + return this; + } + + public GetTaxPaymentsResponse build() { + + return new GetTaxPaymentsResponse( + contentType, statusCode, rawResponse, + taxPaymentList); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1BenefitsResponse.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1BenefitsResponse.java index 0cdbf6ceb..8ab5924fd 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1BenefitsResponse.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1BenefitsResponse.java @@ -37,22 +37,22 @@ public class GetV1BenefitsResponse implements Response { /** * Successful */ - private Optional> supportedBenefits; + private Optional> supportedBenefitList; @JsonCreator public GetV1BenefitsResponse( String contentType, int statusCode, HttpResponse rawResponse, - Optional> supportedBenefits) { + Optional> supportedBenefitList) { Utils.checkNotNull(contentType, "contentType"); Utils.checkNotNull(statusCode, "statusCode"); Utils.checkNotNull(rawResponse, "rawResponse"); - Utils.checkNotNull(supportedBenefits, "supportedBenefits"); + Utils.checkNotNull(supportedBenefitList, "supportedBenefitList"); this.contentType = contentType; this.statusCode = statusCode; this.rawResponse = rawResponse; - this.supportedBenefits = supportedBenefits; + this.supportedBenefitList = supportedBenefitList; } public GetV1BenefitsResponse( @@ -92,8 +92,8 @@ public HttpResponse rawResponse() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional> supportedBenefits() { - return (Optional>) supportedBenefits; + public Optional> supportedBenefitList() { + return (Optional>) supportedBenefitList; } public static Builder builder() { @@ -131,9 +131,9 @@ public GetV1BenefitsResponse withRawResponse(HttpResponse rawRespon /** * Successful */ - public GetV1BenefitsResponse withSupportedBenefits(List supportedBenefits) { - Utils.checkNotNull(supportedBenefits, "supportedBenefits"); - this.supportedBenefits = Optional.ofNullable(supportedBenefits); + public GetV1BenefitsResponse withSupportedBenefitList(List supportedBenefitList) { + Utils.checkNotNull(supportedBenefitList, "supportedBenefitList"); + this.supportedBenefitList = Optional.ofNullable(supportedBenefitList); return this; } @@ -141,9 +141,9 @@ public GetV1BenefitsResponse withSupportedBenefits(List suppor /** * Successful */ - public GetV1BenefitsResponse withSupportedBenefits(Optional> supportedBenefits) { - Utils.checkNotNull(supportedBenefits, "supportedBenefits"); - this.supportedBenefits = supportedBenefits; + public GetV1BenefitsResponse withSupportedBenefitList(Optional> supportedBenefitList) { + Utils.checkNotNull(supportedBenefitList, "supportedBenefitList"); + this.supportedBenefitList = supportedBenefitList; return this; } @@ -160,14 +160,14 @@ public boolean equals(java.lang.Object o) { Utils.enhancedDeepEquals(this.contentType, other.contentType) && Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && - Utils.enhancedDeepEquals(this.supportedBenefits, other.supportedBenefits); + Utils.enhancedDeepEquals(this.supportedBenefitList, other.supportedBenefitList); } @Override public int hashCode() { return Utils.enhancedHash( contentType, statusCode, rawResponse, - supportedBenefits); + supportedBenefitList); } @Override @@ -176,7 +176,7 @@ public String toString() { "contentType", contentType, "statusCode", statusCode, "rawResponse", rawResponse, - "supportedBenefits", supportedBenefits); + "supportedBenefitList", supportedBenefitList); } @SuppressWarnings("UnusedReturnValue") @@ -188,7 +188,7 @@ public final static class Builder { private HttpResponse rawResponse; - private Optional> supportedBenefits = Optional.empty(); + private Optional> supportedBenefitList = Optional.empty(); private Builder() { // force use of static builder() method @@ -228,18 +228,18 @@ public Builder rawResponse(HttpResponse rawResponse) { /** * Successful */ - public Builder supportedBenefits(List supportedBenefits) { - Utils.checkNotNull(supportedBenefits, "supportedBenefits"); - this.supportedBenefits = Optional.ofNullable(supportedBenefits); + public Builder supportedBenefitList(List supportedBenefitList) { + Utils.checkNotNull(supportedBenefitList, "supportedBenefitList"); + this.supportedBenefitList = Optional.ofNullable(supportedBenefitList); return this; } /** * Successful */ - public Builder supportedBenefits(Optional> supportedBenefits) { - Utils.checkNotNull(supportedBenefits, "supportedBenefits"); - this.supportedBenefits = supportedBenefits; + public Builder supportedBenefitList(Optional> supportedBenefitList) { + Utils.checkNotNull(supportedBenefitList, "supportedBenefitList"); + this.supportedBenefitList = supportedBenefitList; return this; } @@ -247,7 +247,7 @@ public GetV1BenefitsResponse build() { return new GetV1BenefitsResponse( contentType, statusCode, rawResponse, - supportedBenefits); + supportedBenefitList); } } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion.java new file mode 100644 index 000000000..70d83e1e4 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion + * + *

    Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ +public enum GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion { + TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15("2025-06-15"); + + @JsonValue + private final String value; + + GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion o: GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1BulkReportsRequestUuidRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1BulkReportsRequestUuidRequest.java new file mode 100644 index 000000000..539162521 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1BulkReportsRequestUuidRequest.java @@ -0,0 +1,191 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api.utils.LazySingletonValue; +import com.gusto.embedded_api.utils.SpeakeasyMetadata; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class GetV1BulkReportsRequestUuidRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + + /** + * The UUID of the bulk report batch. + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=request_uuid") + private String requestUuid; + + @JsonCreator + public GetV1BulkReportsRequestUuidRequest( + Optional xGustoAPIVersion, + String requestUuid) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(requestUuid, "requestUuid"); + this.xGustoAPIVersion = xGustoAPIVersion; + this.requestUuid = requestUuid; + } + + public GetV1BulkReportsRequestUuidRequest( + String requestUuid) { + this(Optional.empty(), requestUuid); + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + + /** + * The UUID of the bulk report batch. + */ + @JsonIgnore + public String requestUuid() { + return requestUuid; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetV1BulkReportsRequestUuidRequest withXGustoAPIVersion(GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetV1BulkReportsRequestUuidRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + /** + * The UUID of the bulk report batch. + */ + public GetV1BulkReportsRequestUuidRequest withRequestUuid(String requestUuid) { + Utils.checkNotNull(requestUuid, "requestUuid"); + this.requestUuid = requestUuid; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetV1BulkReportsRequestUuidRequest other = (GetV1BulkReportsRequestUuidRequest) o; + return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.requestUuid, other.requestUuid); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + xGustoAPIVersion, requestUuid); + } + + @Override + public String toString() { + return Utils.toString(GetV1BulkReportsRequestUuidRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, + "requestUuid", requestUuid); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional xGustoAPIVersion; + + private String requestUuid; + + private Builder() { + // force use of static builder() method + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + + /** + * The UUID of the bulk report batch. + */ + public Builder requestUuid(String requestUuid) { + Utils.checkNotNull(requestUuid, "requestUuid"); + this.requestUuid = requestUuid; + return this; + } + + public GetV1BulkReportsRequestUuidRequest build() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + return new GetV1BulkReportsRequestUuidRequest( + xGustoAPIVersion, requestUuid); + } + + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "X-Gusto-API-Version", + "\"2025-06-15\"", + new TypeReference>() {}); + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1BulkReportsRequestUuidRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1BulkReportsRequestUuidRequestBuilder.java new file mode 100644 index 000000000..5427a2cfd --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1BulkReportsRequestUuidRequestBuilder.java @@ -0,0 +1,82 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import static com.gusto.embedded_api.operations.Operations.RequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api.SDKConfiguration; +import com.gusto.embedded_api.operations.GetV1BulkReportsRequestUuid; +import com.gusto.embedded_api.utils.Headers; +import com.gusto.embedded_api.utils.LazySingletonValue; +import com.gusto.embedded_api.utils.Utils; +import java.lang.String; +import java.util.Optional; + +public class GetV1BulkReportsRequestUuidRequestBuilder { + + private GetV1BulkReportsRequestUuidSecurity security; + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2025-06-15\"", + new TypeReference>() {}); + private String requestUuid; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public GetV1BulkReportsRequestUuidRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public GetV1BulkReportsRequestUuidRequestBuilder security(GetV1BulkReportsRequestUuidSecurity security) { + Utils.checkNotNull(security, "security"); + this.security = security; + return this; + } + + public GetV1BulkReportsRequestUuidRequestBuilder xGustoAPIVersion(GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetV1BulkReportsRequestUuidRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public GetV1BulkReportsRequestUuidRequestBuilder requestUuid(String requestUuid) { + Utils.checkNotNull(requestUuid, "requestUuid"); + this.requestUuid = requestUuid; + return this; + } + + + private GetV1BulkReportsRequestUuidRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + GetV1BulkReportsRequestUuidRequest request = new GetV1BulkReportsRequestUuidRequest(xGustoAPIVersion, + requestUuid); + + return request; + } + + public GetV1BulkReportsRequestUuidResponse call() { + + RequestOperation operation + = new GetV1BulkReportsRequestUuid.Sync(sdkConfiguration, security, _headers); + GetV1BulkReportsRequestUuidRequest request = buildRequest(); + + return operation.handleResponse(operation.doRequest(request)); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2025-06-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1BulkReportsRequestUuidResponse.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1BulkReportsRequestUuidResponse.java new file mode 100644 index 000000000..2b531f1ad --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1BulkReportsRequestUuidResponse.java @@ -0,0 +1,253 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api.models.components.BulkReport; +import com.gusto.embedded_api.utils.Response; +import com.gusto.embedded_api.utils.Utils; +import java.io.InputStream; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.Optional; + + +public class GetV1BulkReportsRequestUuidResponse implements Response { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * OK + */ + private Optional bulkReport; + + @JsonCreator + public GetV1BulkReportsRequestUuidResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional bulkReport) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(bulkReport, "bulkReport"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.bulkReport = bulkReport; + } + + public GetV1BulkReportsRequestUuidResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * OK + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional bulkReport() { + return (Optional) bulkReport; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public GetV1BulkReportsRequestUuidResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public GetV1BulkReportsRequestUuidResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public GetV1BulkReportsRequestUuidResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * OK + */ + public GetV1BulkReportsRequestUuidResponse withBulkReport(BulkReport bulkReport) { + Utils.checkNotNull(bulkReport, "bulkReport"); + this.bulkReport = Optional.ofNullable(bulkReport); + return this; + } + + + /** + * OK + */ + public GetV1BulkReportsRequestUuidResponse withBulkReport(Optional bulkReport) { + Utils.checkNotNull(bulkReport, "bulkReport"); + this.bulkReport = bulkReport; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetV1BulkReportsRequestUuidResponse other = (GetV1BulkReportsRequestUuidResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.bulkReport, other.bulkReport); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + bulkReport); + } + + @Override + public String toString() { + return Utils.toString(GetV1BulkReportsRequestUuidResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "bulkReport", bulkReport); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional bulkReport = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * OK + */ + public Builder bulkReport(BulkReport bulkReport) { + Utils.checkNotNull(bulkReport, "bulkReport"); + this.bulkReport = Optional.ofNullable(bulkReport); + return this; + } + + /** + * OK + */ + public Builder bulkReport(Optional bulkReport) { + Utils.checkNotNull(bulkReport, "bulkReport"); + this.bulkReport = bulkReport; + return this; + } + + public GetV1BulkReportsRequestUuidResponse build() { + + return new GetV1BulkReportsRequestUuidResponse( + contentType, statusCode, rawResponse, + bulkReport); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1BulkReportsRequestUuidSecurity.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1BulkReportsRequestUuidSecurity.java new file mode 100644 index 000000000..dece3bc67 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1BulkReportsRequestUuidSecurity.java @@ -0,0 +1,91 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api.utils.HasSecurity; +import com.gusto.embedded_api.utils.SpeakeasyMetadata; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Override; +import java.lang.String; + + +public class GetV1BulkReportsRequestUuidSecurity implements HasSecurity { + + @SpeakeasyMetadata("security:scheme=true,type=http,subtype=bearer,name=Authorization") + private String systemAccessAuth; + + @JsonCreator + public GetV1BulkReportsRequestUuidSecurity( + String systemAccessAuth) { + Utils.checkNotNull(systemAccessAuth, "systemAccessAuth"); + this.systemAccessAuth = systemAccessAuth; + } + + @JsonIgnore + public String systemAccessAuth() { + return systemAccessAuth; + } + + public static Builder builder() { + return new Builder(); + } + + + public GetV1BulkReportsRequestUuidSecurity withSystemAccessAuth(String systemAccessAuth) { + Utils.checkNotNull(systemAccessAuth, "systemAccessAuth"); + this.systemAccessAuth = systemAccessAuth; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetV1BulkReportsRequestUuidSecurity other = (GetV1BulkReportsRequestUuidSecurity) o; + return + Utils.enhancedDeepEquals(this.systemAccessAuth, other.systemAccessAuth); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + systemAccessAuth); + } + + @Override + public String toString() { + return Utils.toString(GetV1BulkReportsRequestUuidSecurity.class, + "systemAccessAuth", systemAccessAuth); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String systemAccessAuth; + + private Builder() { + // force use of static builder() method + } + + + public Builder systemAccessAuth(String systemAccessAuth) { + Utils.checkNotNull(systemAccessAuth, "systemAccessAuth"); + this.systemAccessAuth = systemAccessAuth; + return this; + } + + public GetV1BulkReportsRequestUuidSecurity build() { + + return new GetV1BulkReportsRequestUuidSecurity( + systemAccessAuth); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdAdminsRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdAdminsRequest.java index 589c65cb6..331cc6f91 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdAdminsRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdAdminsRequest.java @@ -23,7 +23,7 @@ public class GetV1CompaniesCompanyIdAdminsRequest { * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; + private Optional xGustoAPIVersion; /** * The UUID of the company @@ -46,7 +46,7 @@ public class GetV1CompaniesCompanyIdAdminsRequest { @JsonCreator public GetV1CompaniesCompanyIdAdminsRequest( - Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String companyId, Optional page, Optional per) { @@ -73,8 +73,8 @@ public GetV1CompaniesCompanyIdAdminsRequest( */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional xGustoAPIVersion() { - return (Optional) xGustoAPIVersion; + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; } /** @@ -112,7 +112,7 @@ public static Builder builder() { * application's [minimum API * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - public GetV1CompaniesCompanyIdAdminsRequest withXGustoAPIVersion(GetV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion xGustoAPIVersion) { + public GetV1CompaniesCompanyIdAdminsRequest withXGustoAPIVersion(HeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); return this; @@ -124,7 +124,7 @@ public GetV1CompaniesCompanyIdAdminsRequest withXGustoAPIVersion(GetV1CompaniesC * application's [minimum API * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - public GetV1CompaniesCompanyIdAdminsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + public GetV1CompaniesCompanyIdAdminsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); this.xGustoAPIVersion = xGustoAPIVersion; return this; @@ -214,7 +214,7 @@ public String toString() { @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private Optional xGustoAPIVersion; + private Optional xGustoAPIVersion; private String companyId; @@ -232,7 +232,7 @@ private Builder() { * application's [minimum API * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - public Builder xGustoAPIVersion(GetV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion xGustoAPIVersion) { + public Builder xGustoAPIVersion(HeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); return this; @@ -243,7 +243,7 @@ public Builder xGustoAPIVersion(GetV1CompaniesCompanyIdAdminsHeaderXGustoAPIVers * application's [minimum API * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); this.xGustoAPIVersion = xGustoAPIVersion; return this; @@ -310,10 +310,10 @@ public GetV1CompaniesCompanyIdAdminsRequest build() { } - private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = new LazySingletonValue<>( "X-Gusto-API-Version", "\"2025-06-15\"", - new TypeReference>() {}); + new TypeReference>() {}); } } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdAdminsRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdAdminsRequestBuilder.java index bbc0ad06f..f03f58559 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdAdminsRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdAdminsRequestBuilder.java @@ -17,10 +17,10 @@ public class GetV1CompaniesCompanyIdAdminsRequestBuilder { - private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", - new TypeReference>() {}); + new TypeReference>() {}); private String companyId; private Optional page = Optional.empty(); private Optional per = Optional.empty(); @@ -31,13 +31,13 @@ public GetV1CompaniesCompanyIdAdminsRequestBuilder(SDKConfiguration sdkConfigura this.sdkConfiguration = sdkConfiguration; } - public GetV1CompaniesCompanyIdAdminsRequestBuilder xGustoAPIVersion(GetV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion xGustoAPIVersion) { + public GetV1CompaniesCompanyIdAdminsRequestBuilder xGustoAPIVersion(HeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); return this; } - public GetV1CompaniesCompanyIdAdminsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + public GetV1CompaniesCompanyIdAdminsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); this.xGustoAPIVersion = xGustoAPIVersion; return this; @@ -96,9 +96,9 @@ public GetV1CompaniesCompanyIdAdminsResponse call() { return operation.handleResponse(operation.doRequest(request)); } - private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = new LazySingletonValue<>( "xGustoAPIVersion", "\"2025-06-15\"", - new TypeReference>() {}); + new TypeReference>() {}); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdContractorPaymentGroupsRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdContractorPaymentGroupsRequest.java index b0021e68f..89a5b73b8 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdContractorPaymentGroupsRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdContractorPaymentGroupsRequest.java @@ -17,6 +17,14 @@ public class GetV1CompaniesCompanyIdContractorPaymentGroupsRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + /** * The UUID of the company */ @@ -48,42 +56,45 @@ public class GetV1CompaniesCompanyIdContractorPaymentGroupsRequest { @SpeakeasyMetadata("queryParam:style=form,explode=true,name=per") private Optional per; - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; - @JsonCreator public GetV1CompaniesCompanyIdContractorPaymentGroupsRequest( + Optional xGustoAPIVersion, String companyId, Optional startDate, Optional endDate, Optional page, - Optional per, - Optional xGustoAPIVersion) { + Optional per) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(companyId, "companyId"); Utils.checkNotNull(startDate, "startDate"); Utils.checkNotNull(endDate, "endDate"); Utils.checkNotNull(page, "page"); Utils.checkNotNull(per, "per"); - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; this.companyId = companyId; this.startDate = startDate; this.endDate = endDate; this.page = page; this.per = per; - this.xGustoAPIVersion = xGustoAPIVersion; } public GetV1CompaniesCompanyIdContractorPaymentGroupsRequest( String companyId) { - this(companyId, Optional.empty(), Optional.empty(), + this(Optional.empty(), companyId, Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty()); } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + /** * The UUID of the company */ @@ -125,21 +136,33 @@ public Optional per() { return per; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional xGustoAPIVersion() { - return (Optional) xGustoAPIVersion; + public GetV1CompaniesCompanyIdContractorPaymentGroupsRequest withXGustoAPIVersion(GetV1CompaniesCompanyIdContractorPaymentGroupsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; } - public static Builder builder() { - return new Builder(); - } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetV1CompaniesCompanyIdContractorPaymentGroupsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } /** * The UUID of the company @@ -228,29 +251,6 @@ public GetV1CompaniesCompanyIdContractorPaymentGroupsRequest withPer(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } - @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -261,35 +261,37 @@ public boolean equals(java.lang.Object o) { } GetV1CompaniesCompanyIdContractorPaymentGroupsRequest other = (GetV1CompaniesCompanyIdContractorPaymentGroupsRequest) o; return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.companyId, other.companyId) && Utils.enhancedDeepEquals(this.startDate, other.startDate) && Utils.enhancedDeepEquals(this.endDate, other.endDate) && Utils.enhancedDeepEquals(this.page, other.page) && - Utils.enhancedDeepEquals(this.per, other.per) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.per, other.per); } @Override public int hashCode() { return Utils.enhancedHash( - companyId, startDate, endDate, - page, per, xGustoAPIVersion); + xGustoAPIVersion, companyId, startDate, + endDate, page, per); } @Override public String toString() { return Utils.toString(GetV1CompaniesCompanyIdContractorPaymentGroupsRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, "companyId", companyId, "startDate", startDate, "endDate", endDate, "page", page, - "per", per, - "xGustoAPIVersion", xGustoAPIVersion); + "per", per); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { + private Optional xGustoAPIVersion; + private String companyId; private Optional startDate = Optional.empty(); @@ -300,13 +302,34 @@ public final static class Builder { private Optional per = Optional.empty(); - private Optional xGustoAPIVersion; - private Builder() { // force use of static builder() method } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(GetV1CompaniesCompanyIdContractorPaymentGroupsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + /** * The UUID of the company */ @@ -394,37 +417,14 @@ public Builder per(Optional per) { return this; } - - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public Builder xGustoAPIVersion(GetV1CompaniesCompanyIdContractorPaymentGroupsHeaderXGustoAPIVersion xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); - return this; - } - - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } - public GetV1CompaniesCompanyIdContractorPaymentGroupsRequest build() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } return new GetV1CompaniesCompanyIdContractorPaymentGroupsRequest( - companyId, startDate, endDate, - page, per, xGustoAPIVersion); + xGustoAPIVersion, companyId, startDate, + endDate, page, per); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest.java index 0d1e053e3..1c77262a0 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest.java @@ -16,6 +16,14 @@ public class GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + /** * The UUID of the company. This identifies the company whose contractor payment details you want to * retrieve. @@ -37,36 +45,39 @@ public class GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest { @SpeakeasyMetadata("queryParam:style=form,explode=true,name=contractor_payment_group_uuid") private Optional contractorPaymentGroupUuid; - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; - @JsonCreator public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest( + Optional xGustoAPIVersion, String companyId, Optional contractorUuid, - Optional contractorPaymentGroupUuid, - Optional xGustoAPIVersion) { + Optional contractorPaymentGroupUuid) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(companyId, "companyId"); Utils.checkNotNull(contractorUuid, "contractorUuid"); Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; this.companyId = companyId; this.contractorUuid = contractorUuid; this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; - this.xGustoAPIVersion = xGustoAPIVersion; } public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest( String companyId) { - this(companyId, Optional.empty(), Optional.empty(), + this(Optional.empty(), companyId, Optional.empty(), Optional.empty()); } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + /** * The UUID of the company. This identifies the company whose contractor payment details you want to * retrieve. @@ -94,21 +105,33 @@ public Optional contractorPaymentGroupUuid() { return contractorPaymentGroupUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional xGustoAPIVersion() { - return (Optional) xGustoAPIVersion; + public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest withXGustoAPIVersion(GetV1CompaniesCompanyIdContractorsPaymentDetailsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; } - public static Builder builder() { - return new Builder(); - } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } /** * The UUID of the company. This identifies the company whose contractor payment details you want to @@ -162,29 +185,6 @@ public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest withContractorPay return this; } - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest withXGustoAPIVersion(GetV1CompaniesCompanyIdContractorsPaymentDetailsHeaderXGustoAPIVersion xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); - return this; - } - - - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } - @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -195,44 +195,67 @@ public boolean equals(java.lang.Object o) { } GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest other = (GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest) o; return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.companyId, other.companyId) && Utils.enhancedDeepEquals(this.contractorUuid, other.contractorUuid) && - Utils.enhancedDeepEquals(this.contractorPaymentGroupUuid, other.contractorPaymentGroupUuid) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.contractorPaymentGroupUuid, other.contractorPaymentGroupUuid); } @Override public int hashCode() { return Utils.enhancedHash( - companyId, contractorUuid, contractorPaymentGroupUuid, - xGustoAPIVersion); + xGustoAPIVersion, companyId, contractorUuid, + contractorPaymentGroupUuid); } @Override public String toString() { return Utils.toString(GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, "companyId", companyId, "contractorUuid", contractorUuid, - "contractorPaymentGroupUuid", contractorPaymentGroupUuid, - "xGustoAPIVersion", xGustoAPIVersion); + "contractorPaymentGroupUuid", contractorPaymentGroupUuid); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { + private Optional xGustoAPIVersion; + private String companyId; private Optional contractorUuid = Optional.empty(); private Optional contractorPaymentGroupUuid = Optional.empty(); - private Optional xGustoAPIVersion; - private Builder() { // force use of static builder() method } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(GetV1CompaniesCompanyIdContractorsPaymentDetailsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + /** * The UUID of the company. This identifies the company whose contractor payment details you want to * retrieve. @@ -285,37 +308,14 @@ public Builder contractorPaymentGroupUuid(Optional contractorPaymentGrou return this; } - - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public Builder xGustoAPIVersion(GetV1CompaniesCompanyIdContractorsPaymentDetailsHeaderXGustoAPIVersion xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); - return this; - } - - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } - public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest build() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } return new GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest( - companyId, contractorUuid, contractorPaymentGroupUuid, - xGustoAPIVersion); + xGustoAPIVersion, companyId, contractorUuid, + contractorPaymentGroupUuid); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder.java index d098f649c..97ec8a2c6 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder.java @@ -16,19 +16,31 @@ public class GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder { - private String companyId; - private Optional contractorUuid = Optional.empty(); - private Optional contractorPaymentGroupUuid = Optional.empty(); private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String companyId; + private Optional contractorUuid = Optional.empty(); + private Optional contractorPaymentGroupUuid = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } + + public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder xGustoAPIVersion(GetV1CompaniesCompanyIdContractorsPaymentDetailsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder companyId(String companyId) { Utils.checkNotNull(companyId, "companyId"); @@ -59,18 +71,6 @@ public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder contractor this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; return this; } - - public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder xGustoAPIVersion(GetV1CompaniesCompanyIdContractorsPaymentDetailsHeaderXGustoAPIVersion xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); - return this; - } - - public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } private GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest buildRequest() { @@ -78,10 +78,10 @@ private GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest request = new GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest(companyId, + GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest request = new GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest(xGustoAPIVersion, + companyId, contractorUuid, - contractorPaymentGroupUuid, - xGustoAPIVersion); + contractorPaymentGroupUuid); return request; } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdEmployeesQueryParamInclude.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdEmployeesQueryParamInclude.java new file mode 100644 index 000000000..74580726d --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdEmployeesQueryParamInclude.java @@ -0,0 +1,39 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +public enum GetV1CompaniesCompanyIdEmployeesQueryParamInclude { + ALL_COMPENSATIONS("all_compensations"), + ALL_HOME_ADDRESSES("all_home_addresses"), + COMPANY_NAME("company_name"), + CURRENT_HOME_ADDRESS("current_home_address"), + CUSTOM_FIELDS("custom_fields"), + PORTAL_INVITATIONS("portal_invitations"); + + @JsonValue + private final String value; + + GetV1CompaniesCompanyIdEmployeesQueryParamInclude(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (GetV1CompaniesCompanyIdEmployeesQueryParamInclude o: GetV1CompaniesCompanyIdEmployeesQueryParamInclude.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdEmployeesRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdEmployeesRequest.java index 98ab9b269..0a4670de4 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdEmployeesRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdEmployeesRequest.java @@ -64,7 +64,7 @@ public class GetV1CompaniesCompanyIdEmployeesRequest { * Include the requested attribute(s) in each employee response. Multiple options are comma separated. */ @SpeakeasyMetadata("queryParam:style=form,explode=false,name=include") - private Optional> include; + private Optional> include; /** * Filters employees by those who have completed onboarding @@ -118,7 +118,7 @@ public GetV1CompaniesCompanyIdEmployeesRequest( Optional payrollUuid, Optional searchTerm, Optional sortBy, - Optional> include, + Optional> include, Optional onboarded, Optional onboardedActive, Optional terminated, @@ -224,8 +224,8 @@ public Optional sortBy() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional> include() { - return (Optional>) include; + public Optional> include() { + return (Optional>) include; } /** @@ -409,7 +409,7 @@ public GetV1CompaniesCompanyIdEmployeesRequest withSortBy(Optional sortB /** * Include the requested attribute(s) in each employee response. Multiple options are comma separated. */ - public GetV1CompaniesCompanyIdEmployeesRequest withInclude(List include) { + public GetV1CompaniesCompanyIdEmployeesRequest withInclude(List include) { Utils.checkNotNull(include, "include"); this.include = Optional.ofNullable(include); return this; @@ -419,7 +419,7 @@ public GetV1CompaniesCompanyIdEmployeesRequest withInclude(List include /** * Include the requested attribute(s) in each employee response. Multiple options are comma separated. */ - public GetV1CompaniesCompanyIdEmployeesRequest withInclude(Optional> include) { + public GetV1CompaniesCompanyIdEmployeesRequest withInclude(Optional> include) { Utils.checkNotNull(include, "include"); this.include = include; return this; @@ -632,7 +632,7 @@ public final static class Builder { private Optional sortBy = Optional.empty(); - private Optional> include = Optional.empty(); + private Optional> include = Optional.empty(); private Optional onboarded = Optional.empty(); @@ -771,7 +771,7 @@ public Builder sortBy(Optional sortBy) { /** * Include the requested attribute(s) in each employee response. Multiple options are comma separated. */ - public Builder include(List include) { + public Builder include(List include) { Utils.checkNotNull(include, "include"); this.include = Optional.ofNullable(include); return this; @@ -780,7 +780,7 @@ public Builder include(List include) { /** * Include the requested attribute(s) in each employee response. Multiple options are comma separated. */ - public Builder include(Optional> include) { + public Builder include(Optional> include) { Utils.checkNotNull(include, "include"); this.include = include; return this; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdFederalTaxDetailsRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdFederalTaxDetailsRequest.java index 851f8af2d..dd97e5460 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdFederalTaxDetailsRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdFederalTaxDetailsRequest.java @@ -16,12 +16,6 @@ public class GetV1CompaniesCompanyIdFederalTaxDetailsRequest { - /** - * The UUID of the company - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_id") - private String companyId; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class GetV1CompaniesCompanyIdFederalTaxDetailsRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_id") + private String companyId; + @JsonCreator public GetV1CompaniesCompanyIdFederalTaxDetailsRequest( - String companyId, - Optional xGustoAPIVersion) { - Utils.checkNotNull(companyId, "companyId"); + Optional xGustoAPIVersion, + String companyId) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.companyId = companyId; + Utils.checkNotNull(companyId, "companyId"); this.xGustoAPIVersion = xGustoAPIVersion; + this.companyId = companyId; } public GetV1CompaniesCompanyIdFederalTaxDetailsRequest( String companyId) { - this(companyId, Optional.empty()); - } - - /** - * The UUID of the company - */ - @JsonIgnore - public String companyId() { - return companyId; + this(Optional.empty(), companyId); } /** @@ -64,20 +56,19 @@ public Optional return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the company */ - public GetV1CompaniesCompanyIdFederalTaxDetailsRequest withCompanyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; + @JsonIgnore + public String companyId() { + return companyId; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetV1CompaniesCompanyIdFederalTaxDetailsRequest withXGustoAPIVersion(Opti return this; } + /** + * The UUID of the company + */ + public GetV1CompaniesCompanyIdFederalTaxDetailsRequest withCompanyId(String companyId) { + Utils.checkNotNull(companyId, "companyId"); + this.companyId = companyId; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -111,45 +111,35 @@ public boolean equals(java.lang.Object o) { } GetV1CompaniesCompanyIdFederalTaxDetailsRequest other = (GetV1CompaniesCompanyIdFederalTaxDetailsRequest) o; return - Utils.enhancedDeepEquals(this.companyId, other.companyId) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.companyId, other.companyId); } @Override public int hashCode() { return Utils.enhancedHash( - companyId, xGustoAPIVersion); + xGustoAPIVersion, companyId); } @Override public String toString() { return Utils.toString(GetV1CompaniesCompanyIdFederalTaxDetailsRequest.class, - "companyId", companyId, - "xGustoAPIVersion", xGustoAPIVersion); + "xGustoAPIVersion", xGustoAPIVersion, + "companyId", companyId); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String companyId; - private Optional xGustoAPIVersion; + private String companyId; + private Builder() { // force use of static builder() method } - /** - * The UUID of the company - */ - public Builder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String companyId; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } public GetV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder xGustoAPIVersion(GetV1CompaniesCompanyIdFederalTaxDetailsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public GetV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder xGustoAPIVersion(O return this; } + public GetV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder companyId(String companyId) { + Utils.checkNotNull(companyId, "companyId"); + this.companyId = companyId; + return this; + } + private GetV1CompaniesCompanyIdFederalTaxDetailsRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1CompaniesCompanyIdFederalTaxDetailsRequest request = new GetV1CompaniesCompanyIdFederalTaxDetailsRequest(companyId, - xGustoAPIVersion); + GetV1CompaniesCompanyIdFederalTaxDetailsRequest request = new GetV1CompaniesCompanyIdFederalTaxDetailsRequest(xGustoAPIVersion, + companyId); return request; } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdPaySchedulesPreviewRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdPaySchedulesPreviewRequest.java index cc66a049f..8e30cfd38 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdPaySchedulesPreviewRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdPaySchedulesPreviewRequest.java @@ -76,6 +76,15 @@ public class GetV1CompaniesCompanyIdPaySchedulesPreviewRequest { @SpeakeasyMetadata("queryParam:style=form,explode=true,name=end_date") private Optional endDate; + /** + * Optional UUID of an existing pay schedule. When supplied, the preview is seeded from the persisted + * schedule — including internal flags (such as arrears handling) that affect period boundaries but are + * not exposed as request parameters. Any other query parameters override individual attributes on top + * of the loaded schedule. + */ + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=pay_schedule_uuid") + private Optional payScheduleUuid; + @JsonCreator public GetV1CompaniesCompanyIdPaySchedulesPreviewRequest( Optional xGustoAPIVersion, @@ -85,7 +94,8 @@ public GetV1CompaniesCompanyIdPaySchedulesPreviewRequest( LocalDate anchorEndOfPayPeriod, Optional day1, Optional day2, - Optional endDate) { + Optional endDate, + Optional payScheduleUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(companyId, "companyId"); Utils.checkNotNull(frequency, "frequency"); @@ -94,6 +104,7 @@ public GetV1CompaniesCompanyIdPaySchedulesPreviewRequest( Utils.checkNotNull(day1, "day1"); Utils.checkNotNull(day2, "day2"); Utils.checkNotNull(endDate, "endDate"); + Utils.checkNotNull(payScheduleUuid, "payScheduleUuid"); this.xGustoAPIVersion = xGustoAPIVersion; this.companyId = companyId; this.frequency = frequency; @@ -102,6 +113,7 @@ public GetV1CompaniesCompanyIdPaySchedulesPreviewRequest( this.day1 = day1; this.day2 = day2; this.endDate = endDate; + this.payScheduleUuid = payScheduleUuid; } public GetV1CompaniesCompanyIdPaySchedulesPreviewRequest( @@ -111,7 +123,7 @@ public GetV1CompaniesCompanyIdPaySchedulesPreviewRequest( LocalDate anchorEndOfPayPeriod) { this(Optional.empty(), companyId, frequency, anchorPayDate, anchorEndOfPayPeriod, Optional.empty(), - Optional.empty(), Optional.empty()); + Optional.empty(), Optional.empty(), Optional.empty()); } /** @@ -189,6 +201,17 @@ public Optional endDate() { return endDate; } + /** + * Optional UUID of an existing pay schedule. When supplied, the preview is seeded from the persisted + * schedule — including internal flags (such as arrears handling) that affect period boundaries but are + * not exposed as request parameters. Any other query parameters override individual attributes on top + * of the loaded schedule. + */ + @JsonIgnore + public Optional payScheduleUuid() { + return payScheduleUuid; + } + public static Builder builder() { return new Builder(); } @@ -326,6 +349,31 @@ public GetV1CompaniesCompanyIdPaySchedulesPreviewRequest withEndDate(Optional payScheduleUuid) { + Utils.checkNotNull(payScheduleUuid, "payScheduleUuid"); + this.payScheduleUuid = payScheduleUuid; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -343,7 +391,8 @@ public boolean equals(java.lang.Object o) { Utils.enhancedDeepEquals(this.anchorEndOfPayPeriod, other.anchorEndOfPayPeriod) && Utils.enhancedDeepEquals(this.day1, other.day1) && Utils.enhancedDeepEquals(this.day2, other.day2) && - Utils.enhancedDeepEquals(this.endDate, other.endDate); + Utils.enhancedDeepEquals(this.endDate, other.endDate) && + Utils.enhancedDeepEquals(this.payScheduleUuid, other.payScheduleUuid); } @Override @@ -351,7 +400,7 @@ public int hashCode() { return Utils.enhancedHash( xGustoAPIVersion, companyId, frequency, anchorPayDate, anchorEndOfPayPeriod, day1, - day2, endDate); + day2, endDate, payScheduleUuid); } @Override @@ -364,7 +413,8 @@ public String toString() { "anchorEndOfPayPeriod", anchorEndOfPayPeriod, "day1", day1, "day2", day2, - "endDate", endDate); + "endDate", endDate, + "payScheduleUuid", payScheduleUuid); } @SuppressWarnings("UnusedReturnValue") @@ -386,6 +436,8 @@ public final static class Builder { private Optional endDate = Optional.empty(); + private Optional payScheduleUuid = Optional.empty(); + private Builder() { // force use of static builder() method } @@ -526,6 +578,31 @@ public Builder endDate(Optional endDate) { return this; } + + /** + * Optional UUID of an existing pay schedule. When supplied, the preview is seeded from the persisted + * schedule — including internal flags (such as arrears handling) that affect period boundaries but are + * not exposed as request parameters. Any other query parameters override individual attributes on top + * of the loaded schedule. + */ + public Builder payScheduleUuid(String payScheduleUuid) { + Utils.checkNotNull(payScheduleUuid, "payScheduleUuid"); + this.payScheduleUuid = Optional.ofNullable(payScheduleUuid); + return this; + } + + /** + * Optional UUID of an existing pay schedule. When supplied, the preview is seeded from the persisted + * schedule — including internal flags (such as arrears handling) that affect period boundaries but are + * not exposed as request parameters. Any other query parameters override individual attributes on top + * of the loaded schedule. + */ + public Builder payScheduleUuid(Optional payScheduleUuid) { + Utils.checkNotNull(payScheduleUuid, "payScheduleUuid"); + this.payScheduleUuid = payScheduleUuid; + return this; + } + public GetV1CompaniesCompanyIdPaySchedulesPreviewRequest build() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); @@ -534,7 +611,7 @@ public GetV1CompaniesCompanyIdPaySchedulesPreviewRequest build() { return new GetV1CompaniesCompanyIdPaySchedulesPreviewRequest( xGustoAPIVersion, companyId, frequency, anchorPayDate, anchorEndOfPayPeriod, day1, - day2, endDate); + day2, endDate, payScheduleUuid); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion.java new file mode 100644 index 000000000..e7c2aa1f1 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion + * + *

    Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ +public enum GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion { + TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15("2025-06-15"); + + @JsonValue + private final String value; + + GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion o: GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdPayrollReversalsRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdPayrollReversalsRequest.java index c03f25b1a..6c68f3a97 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdPayrollReversalsRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdPayrollReversalsRequest.java @@ -6,7 +6,6 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.core.type.TypeReference; -import com.gusto.embedded_api.models.components.VersionHeader; import com.gusto.embedded_api.utils.LazySingletonValue; import com.gusto.embedded_api.utils.SpeakeasyMetadata; import com.gusto.embedded_api.utils.Utils; @@ -18,6 +17,14 @@ public class GetV1CompaniesCompanyIdPayrollReversalsRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + /** * The UUID of the company */ @@ -37,36 +44,39 @@ public class GetV1CompaniesCompanyIdPayrollReversalsRequest { @SpeakeasyMetadata("queryParam:style=form,explode=true,name=per") private Optional per; - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; - @JsonCreator public GetV1CompaniesCompanyIdPayrollReversalsRequest( + Optional xGustoAPIVersion, String companyId, Optional page, - Optional per, - Optional xGustoAPIVersion) { + Optional per) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(companyId, "companyId"); Utils.checkNotNull(page, "page"); Utils.checkNotNull(per, "per"); - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; this.companyId = companyId; this.page = page; this.per = per; - this.xGustoAPIVersion = xGustoAPIVersion; } public GetV1CompaniesCompanyIdPayrollReversalsRequest( String companyId) { - this(companyId, Optional.empty(), Optional.empty(), + this(Optional.empty(), companyId, Optional.empty(), Optional.empty()); } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + /** * The UUID of the company */ @@ -92,21 +102,33 @@ public Optional per() { return per; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional xGustoAPIVersion() { - return (Optional) xGustoAPIVersion; + public GetV1CompaniesCompanyIdPayrollReversalsRequest withXGustoAPIVersion(GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; } - public static Builder builder() { - return new Builder(); - } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetV1CompaniesCompanyIdPayrollReversalsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } /** * The UUID of the company @@ -157,29 +179,6 @@ public GetV1CompaniesCompanyIdPayrollReversalsRequest withPer(Optional per return this; } - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public GetV1CompaniesCompanyIdPayrollReversalsRequest withXGustoAPIVersion(VersionHeader xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); - return this; - } - - - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public GetV1CompaniesCompanyIdPayrollReversalsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } - @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -190,44 +189,67 @@ public boolean equals(java.lang.Object o) { } GetV1CompaniesCompanyIdPayrollReversalsRequest other = (GetV1CompaniesCompanyIdPayrollReversalsRequest) o; return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.companyId, other.companyId) && Utils.enhancedDeepEquals(this.page, other.page) && - Utils.enhancedDeepEquals(this.per, other.per) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.per, other.per); } @Override public int hashCode() { return Utils.enhancedHash( - companyId, page, per, - xGustoAPIVersion); + xGustoAPIVersion, companyId, page, + per); } @Override public String toString() { return Utils.toString(GetV1CompaniesCompanyIdPayrollReversalsRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, "companyId", companyId, "page", page, - "per", per, - "xGustoAPIVersion", xGustoAPIVersion); + "per", per); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { + private Optional xGustoAPIVersion; + private String companyId; private Optional page = Optional.empty(); private Optional per = Optional.empty(); - private Optional xGustoAPIVersion; - private Builder() { // force use of static builder() method } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + /** * The UUID of the company */ @@ -277,44 +299,21 @@ public Builder per(Optional per) { return this; } - - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public Builder xGustoAPIVersion(VersionHeader xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); - return this; - } - - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } - public GetV1CompaniesCompanyIdPayrollReversalsRequest build() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } return new GetV1CompaniesCompanyIdPayrollReversalsRequest( - companyId, page, per, - xGustoAPIVersion); + xGustoAPIVersion, companyId, page, + per); } - private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = new LazySingletonValue<>( "X-Gusto-API-Version", "\"2025-06-15\"", - new TypeReference>() {}); + new TypeReference>() {}); } } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder.java index ba53163dc..45b7491b5 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder.java @@ -7,7 +7,6 @@ import com.fasterxml.jackson.core.type.TypeReference; import com.gusto.embedded_api.SDKConfiguration; -import com.gusto.embedded_api.models.components.VersionHeader; import com.gusto.embedded_api.operations.GetV1CompaniesCompanyIdPayrollReversals; import com.gusto.embedded_api.utils.Headers; import com.gusto.embedded_api.utils.LazySingletonValue; @@ -18,19 +17,31 @@ public class GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder { + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2025-06-15\"", + new TypeReference>() {}); private String companyId; private Optional page = Optional.empty(); private Optional per = Optional.empty(); - private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( - "xGustoAPIVersion", - "\"2025-06-15\"", - new TypeReference>() {}); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } + + public GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder xGustoAPIVersion(GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } public GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder companyId(String companyId) { Utils.checkNotNull(companyId, "companyId"); @@ -61,18 +72,6 @@ public GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder per(Optional this.per = per; return this; } - - public GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder xGustoAPIVersion(VersionHeader xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); - return this; - } - - public GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } private GetV1CompaniesCompanyIdPayrollReversalsRequest buildRequest() { @@ -80,10 +79,10 @@ private GetV1CompaniesCompanyIdPayrollReversalsRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1CompaniesCompanyIdPayrollReversalsRequest request = new GetV1CompaniesCompanyIdPayrollReversalsRequest(companyId, + GetV1CompaniesCompanyIdPayrollReversalsRequest request = new GetV1CompaniesCompanyIdPayrollReversalsRequest(xGustoAPIVersion, + companyId, page, - per, - xGustoAPIVersion); + per); return request; } @@ -97,9 +96,9 @@ public GetV1CompaniesCompanyIdPayrollReversalsResponse call() { return operation.handleResponse(operation.doRequest(request)); } - private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = new LazySingletonValue<>( "xGustoAPIVersion", "\"2025-06-15\"", - new TypeReference>() {}); + new TypeReference>() {}); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.java index 6acc1cb5d..28451d910 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.java @@ -16,6 +16,14 @@ public class GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + /** * The UUID of the company */ @@ -28,47 +36,23 @@ public class GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest { @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=id") private String id; - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; - @JsonCreator public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest( + Optional xGustoAPIVersion, String companyId, - String id, - Optional xGustoAPIVersion) { + String id) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(companyId, "companyId"); Utils.checkNotNull(id, "id"); - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; this.companyId = companyId; this.id = id; - this.xGustoAPIVersion = xGustoAPIVersion; } public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest( String companyId, String id) { - this(companyId, id, Optional.empty()); - } - - /** - * The UUID of the company - */ - @JsonIgnore - public String companyId() { - return companyId; - } - - /** - * The UUID of the payroll - */ - @JsonIgnore - public String id() { - return id; + this(Optional.empty(), companyId, id); } /** @@ -82,29 +66,27 @@ public Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the company */ - public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest withCompanyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; + @JsonIgnore + public String companyId() { + return companyId; } /** * The UUID of the payroll */ - public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest withId(String id) { - Utils.checkNotNull(id, "id"); - this.id = id; - return this; + @JsonIgnore + public String id() { + return id; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -128,6 +110,24 @@ public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest withXGustoAP return this; } + /** + * The UUID of the company + */ + public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest withCompanyId(String companyId) { + Utils.checkNotNull(companyId, "companyId"); + this.companyId = companyId; + return this; + } + + /** + * The UUID of the payroll + */ + public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest withId(String id) { + Utils.checkNotNull(id, "id"); + this.id = id; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -138,59 +138,39 @@ public boolean equals(java.lang.Object o) { } GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest other = (GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest) o; return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.companyId, other.companyId) && - Utils.enhancedDeepEquals(this.id, other.id) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.id, other.id); } @Override public int hashCode() { return Utils.enhancedHash( - companyId, id, xGustoAPIVersion); + xGustoAPIVersion, companyId, id); } @Override public String toString() { return Utils.toString(GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, "companyId", companyId, - "id", id, - "xGustoAPIVersion", xGustoAPIVersion); + "id", id); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { + private Optional xGustoAPIVersion; + private String companyId; private String id; - private Optional xGustoAPIVersion; - private Builder() { // force use of static builder() method } - /** - * The UUID of the company - */ - public Builder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - - - /** - * The UUID of the payroll - */ - public Builder id(String id) { - Utils.checkNotNull(id, "id"); - this.id = id; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -213,13 +193,33 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String companyId; + private String id; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - - public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder id(String id) { - Utils.checkNotNull(id, "id"); - this.id = id; - return this; - } public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder xGustoAPIVersion(GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -53,15 +41,27 @@ public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder xGust return this; } + public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder companyId(String companyId) { + Utils.checkNotNull(companyId, "companyId"); + this.companyId = companyId; + return this; + } + + public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder id(String id) { + Utils.checkNotNull(id, "id"); + this.id = id; + return this; + } + private GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest request = new GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest(companyId, - id, - xGustoAPIVersion); + GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest request = new GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest(xGustoAPIVersion, + companyId, + id); return request; } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdPayrollsPayrollIdRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdPayrollsPayrollIdRequest.java index 127e52b5c..8acd15613 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdPayrollsPayrollIdRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyIdPayrollsPayrollIdRequest.java @@ -18,6 +18,14 @@ public class GetV1CompaniesCompanyIdPayrollsPayrollIdRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + /** * The UUID of the company */ @@ -30,14 +38,6 @@ public class GetV1CompaniesCompanyIdPayrollsPayrollIdRequest { @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=payroll_id") private String payrollId; - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; - /** * Include the requested attribute in the response, for multiple attributes comma separate the values, * i.e. `?include=benefits,deductions,taxes` @@ -69,23 +69,23 @@ public class GetV1CompaniesCompanyIdPayrollsPayrollIdRequest { @JsonCreator public GetV1CompaniesCompanyIdPayrollsPayrollIdRequest( + Optional xGustoAPIVersion, String companyId, String payrollId, - Optional xGustoAPIVersion, Optional> include, Optional page, Optional per, Optional sortBy) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(companyId, "companyId"); Utils.checkNotNull(payrollId, "payrollId"); - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(include, "include"); Utils.checkNotNull(page, "page"); Utils.checkNotNull(per, "per"); Utils.checkNotNull(sortBy, "sortBy"); + this.xGustoAPIVersion = xGustoAPIVersion; this.companyId = companyId; this.payrollId = payrollId; - this.xGustoAPIVersion = xGustoAPIVersion; this.include = include; this.page = page; this.per = per; @@ -95,11 +95,22 @@ public GetV1CompaniesCompanyIdPayrollsPayrollIdRequest( public GetV1CompaniesCompanyIdPayrollsPayrollIdRequest( String companyId, String payrollId) { - this(companyId, payrollId, Optional.empty(), + this(Optional.empty(), companyId, payrollId, Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty()); } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + /** * The UUID of the company */ @@ -116,17 +127,6 @@ public String payrollId() { return payrollId; } - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional xGustoAPIVersion() { - return (Optional) xGustoAPIVersion; - } - /** * Include the requested attribute in the response, for multiple attributes comma separate the values, * i.e. `?include=benefits,deductions,taxes` @@ -170,24 +170,6 @@ public static Builder builder() { } - /** - * The UUID of the company - */ - public GetV1CompaniesCompanyIdPayrollsPayrollIdRequest withCompanyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - - /** - * The UUID of the payroll - */ - public GetV1CompaniesCompanyIdPayrollsPayrollIdRequest withPayrollId(String payrollId) { - Utils.checkNotNull(payrollId, "payrollId"); - this.payrollId = payrollId; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -211,6 +193,24 @@ public GetV1CompaniesCompanyIdPayrollsPayrollIdRequest withXGustoAPIVersion(Opti return this; } + /** + * The UUID of the company + */ + public GetV1CompaniesCompanyIdPayrollsPayrollIdRequest withCompanyId(String companyId) { + Utils.checkNotNull(companyId, "companyId"); + this.companyId = companyId; + return this; + } + + /** + * The UUID of the payroll + */ + public GetV1CompaniesCompanyIdPayrollsPayrollIdRequest withPayrollId(String payrollId) { + Utils.checkNotNull(payrollId, "payrollId"); + this.payrollId = payrollId; + return this; + } + /** * Include the requested attribute in the response, for multiple attributes comma separate the values, * i.e. `?include=benefits,deductions,taxes` @@ -307,9 +307,9 @@ public boolean equals(java.lang.Object o) { } GetV1CompaniesCompanyIdPayrollsPayrollIdRequest other = (GetV1CompaniesCompanyIdPayrollsPayrollIdRequest) o; return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.companyId, other.companyId) && Utils.enhancedDeepEquals(this.payrollId, other.payrollId) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.include, other.include) && Utils.enhancedDeepEquals(this.page, other.page) && Utils.enhancedDeepEquals(this.per, other.per) && @@ -319,7 +319,7 @@ public boolean equals(java.lang.Object o) { @Override public int hashCode() { return Utils.enhancedHash( - companyId, payrollId, xGustoAPIVersion, + xGustoAPIVersion, companyId, payrollId, include, page, per, sortBy); } @@ -327,9 +327,9 @@ public int hashCode() { @Override public String toString() { return Utils.toString(GetV1CompaniesCompanyIdPayrollsPayrollIdRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, "companyId", companyId, "payrollId", payrollId, - "xGustoAPIVersion", xGustoAPIVersion, "include", include, "page", page, "per", per, @@ -339,12 +339,12 @@ public String toString() { @SuppressWarnings("UnusedReturnValue") public final static class Builder { + private Optional xGustoAPIVersion; + private String companyId; private String payrollId; - private Optional xGustoAPIVersion; - private Optional> include = Optional.empty(); private Optional page = Optional.empty(); @@ -358,26 +358,6 @@ private Builder() { } - /** - * The UUID of the company - */ - public Builder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - - - /** - * The UUID of the payroll - */ - public Builder payrollId(String payrollId) { - Utils.checkNotNull(payrollId, "payrollId"); - this.payrollId = payrollId; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -401,6 +381,26 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion; + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_id") + private String companyId; + /** * Whether to include processed and/or unprocessed payrolls in the response, defaults to processed, for * multiple attributes comma separate the values, i.e. `?processing_statuses=processed,unprocessed` @@ -103,12 +103,12 @@ public class GetV1CompaniesCompanyIdPayrollsRequest { * chronological order. Events are sorted by their `timestamp`. Defaults to asc if left empty. */ @SpeakeasyMetadata("queryParam:style=form,explode=true,name=sort_order") - private Optional sortOrder; + private Optional sortOrder; @JsonCreator public GetV1CompaniesCompanyIdPayrollsRequest( - String companyId, Optional xGustoAPIVersion, + String companyId, Optional> processingStatuses, Optional> payrollTypes, Optional processed, @@ -119,9 +119,9 @@ public GetV1CompaniesCompanyIdPayrollsRequest( Optional dateFilterBy, Optional page, Optional per, - Optional sortOrder) { - Utils.checkNotNull(companyId, "companyId"); + Optional sortOrder) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(companyId, "companyId"); Utils.checkNotNull(processingStatuses, "processingStatuses"); Utils.checkNotNull(payrollTypes, "payrollTypes"); Utils.checkNotNull(processed, "processed"); @@ -133,8 +133,8 @@ public GetV1CompaniesCompanyIdPayrollsRequest( Utils.checkNotNull(page, "page"); Utils.checkNotNull(per, "per"); Utils.checkNotNull(sortOrder, "sortOrder"); - this.companyId = companyId; this.xGustoAPIVersion = xGustoAPIVersion; + this.companyId = companyId; this.processingStatuses = processingStatuses; this.payrollTypes = payrollTypes; this.processed = processed; @@ -150,21 +150,13 @@ public GetV1CompaniesCompanyIdPayrollsRequest( public GetV1CompaniesCompanyIdPayrollsRequest( String companyId) { - this(companyId, Optional.empty(), Optional.empty(), + this(Optional.empty(), companyId, Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty()); } - /** - * The UUID of the company - */ - @JsonIgnore - public String companyId() { - return companyId; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -176,6 +168,14 @@ public Optional xGustoAPI return (Optional) xGustoAPIVersion; } + /** + * The UUID of the company + */ + @JsonIgnore + public String companyId() { + return companyId; + } + /** * Whether to include processed and/or unprocessed payrolls in the response, defaults to processed, for * multiple attributes comma separate the values, i.e. `?processing_statuses=processed,unprocessed` @@ -271,8 +271,8 @@ public Optional per() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional sortOrder() { - return (Optional) sortOrder; + public Optional sortOrder() { + return (Optional) sortOrder; } public static Builder builder() { @@ -280,15 +280,6 @@ public static Builder builder() { } - /** - * The UUID of the company - */ - public GetV1CompaniesCompanyIdPayrollsRequest withCompanyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -312,6 +303,15 @@ public GetV1CompaniesCompanyIdPayrollsRequest withXGustoAPIVersion(Optional per) { * A string indicating whether to sort resulting events in ascending (asc) or descending (desc) * chronological order. Events are sorted by their `timestamp`. Defaults to asc if left empty. */ - public GetV1CompaniesCompanyIdPayrollsRequest withSortOrder(SortOrder sortOrder) { + public GetV1CompaniesCompanyIdPayrollsRequest withSortOrder(QueryParamSortOrder sortOrder) { Utils.checkNotNull(sortOrder, "sortOrder"); this.sortOrder = Optional.ofNullable(sortOrder); return this; @@ -527,7 +527,7 @@ public GetV1CompaniesCompanyIdPayrollsRequest withSortOrder(SortOrder sortOrder) * A string indicating whether to sort resulting events in ascending (asc) or descending (desc) * chronological order. Events are sorted by their `timestamp`. Defaults to asc if left empty. */ - public GetV1CompaniesCompanyIdPayrollsRequest withSortOrder(Optional sortOrder) { + public GetV1CompaniesCompanyIdPayrollsRequest withSortOrder(Optional sortOrder) { Utils.checkNotNull(sortOrder, "sortOrder"); this.sortOrder = sortOrder; return this; @@ -543,8 +543,8 @@ public boolean equals(java.lang.Object o) { } GetV1CompaniesCompanyIdPayrollsRequest other = (GetV1CompaniesCompanyIdPayrollsRequest) o; return - Utils.enhancedDeepEquals(this.companyId, other.companyId) && Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.companyId, other.companyId) && Utils.enhancedDeepEquals(this.processingStatuses, other.processingStatuses) && Utils.enhancedDeepEquals(this.payrollTypes, other.payrollTypes) && Utils.enhancedDeepEquals(this.processed, other.processed) && @@ -561,7 +561,7 @@ public boolean equals(java.lang.Object o) { @Override public int hashCode() { return Utils.enhancedHash( - companyId, xGustoAPIVersion, processingStatuses, + xGustoAPIVersion, companyId, processingStatuses, payrollTypes, processed, includeOffCycle, include, startDate, endDate, dateFilterBy, page, per, @@ -571,8 +571,8 @@ public int hashCode() { @Override public String toString() { return Utils.toString(GetV1CompaniesCompanyIdPayrollsRequest.class, - "companyId", companyId, "xGustoAPIVersion", xGustoAPIVersion, + "companyId", companyId, "processingStatuses", processingStatuses, "payrollTypes", payrollTypes, "processed", processed, @@ -589,10 +589,10 @@ public String toString() { @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String companyId; - private Optional xGustoAPIVersion; + private String companyId; + private Optional> processingStatuses = Optional.empty(); private Optional> payrollTypes = Optional.empty(); @@ -613,23 +613,13 @@ public final static class Builder { private Optional per = Optional.empty(); - private Optional sortOrder = Optional.empty(); + private Optional sortOrder = Optional.empty(); private Builder() { // force use of static builder() method } - /** - * The UUID of the company - */ - public Builder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -653,6 +643,16 @@ public Builder xGustoAPIVersion(Optional per) { * A string indicating whether to sort resulting events in ascending (asc) or descending (desc) * chronological order. Events are sorted by their `timestamp`. Defaults to asc if left empty. */ - public Builder sortOrder(SortOrder sortOrder) { + public Builder sortOrder(QueryParamSortOrder sortOrder) { Utils.checkNotNull(sortOrder, "sortOrder"); this.sortOrder = Optional.ofNullable(sortOrder); return this; @@ -867,7 +867,7 @@ public Builder sortOrder(SortOrder sortOrder) { * A string indicating whether to sort resulting events in ascending (asc) or descending (desc) * chronological order. Events are sorted by their `timestamp`. Defaults to asc if left empty. */ - public Builder sortOrder(Optional sortOrder) { + public Builder sortOrder(Optional sortOrder) { Utils.checkNotNull(sortOrder, "sortOrder"); this.sortOrder = sortOrder; return this; @@ -879,7 +879,7 @@ public GetV1CompaniesCompanyIdPayrollsRequest build() { } return new GetV1CompaniesCompanyIdPayrollsRequest( - companyId, xGustoAPIVersion, processingStatuses, + xGustoAPIVersion, companyId, processingStatuses, payrollTypes, processed, includeOffCycle, include, startDate, endDate, dateFilterBy, page, per, diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyUuidSignatoriesRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyUuidSignatoriesRequest.java index 8525f2874..5e67e861a 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyUuidSignatoriesRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyUuidSignatoriesRequest.java @@ -16,12 +16,6 @@ public class GetV1CompaniesCompanyUuidSignatoriesRequest { - /** - * The UUID of the company - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") - private String companyUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class GetV1CompaniesCompanyUuidSignatoriesRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") + private String companyUuid; + @JsonCreator public GetV1CompaniesCompanyUuidSignatoriesRequest( - String companyUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(companyUuid, "companyUuid"); + Optional xGustoAPIVersion, + String companyUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.companyUuid = companyUuid; + Utils.checkNotNull(companyUuid, "companyUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.companyUuid = companyUuid; } public GetV1CompaniesCompanyUuidSignatoriesRequest( String companyUuid) { - this(companyUuid, Optional.empty()); - } - - /** - * The UUID of the company - */ - @JsonIgnore - public String companyUuid() { - return companyUuid; + this(Optional.empty(), companyUuid); } /** @@ -64,20 +56,19 @@ public Optional xGus return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the company */ - public GetV1CompaniesCompanyUuidSignatoriesRequest withCompanyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; + @JsonIgnore + public String companyUuid() { + return companyUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetV1CompaniesCompanyUuidSignatoriesRequest withXGustoAPIVersion(Optional return this; } + /** + * The UUID of the company + */ + public GetV1CompaniesCompanyUuidSignatoriesRequest withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -111,45 +111,35 @@ public boolean equals(java.lang.Object o) { } GetV1CompaniesCompanyUuidSignatoriesRequest other = (GetV1CompaniesCompanyUuidSignatoriesRequest) o; return - Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid); } @Override public int hashCode() { return Utils.enhancedHash( - companyUuid, xGustoAPIVersion); + xGustoAPIVersion, companyUuid); } @Override public String toString() { return Utils.toString(GetV1CompaniesCompanyUuidSignatoriesRequest.class, - "companyUuid", companyUuid, - "xGustoAPIVersion", xGustoAPIVersion); + "xGustoAPIVersion", xGustoAPIVersion, + "companyUuid", companyUuid); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String companyUuid; - private Optional xGustoAPIVersion; + private String companyUuid; + private Builder() { // force use of static builder() method } - /** - * The UUID of the company - */ - public Builder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String companyUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1CompaniesCompanyUuidSignatoriesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1CompaniesCompanyUuidSignatoriesRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public GetV1CompaniesCompanyUuidSignatoriesRequestBuilder xGustoAPIVersion(GetV1CompaniesCompanyUuidSignatoriesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public GetV1CompaniesCompanyUuidSignatoriesRequestBuilder xGustoAPIVersion(Optio return this; } + public GetV1CompaniesCompanyUuidSignatoriesRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + private GetV1CompaniesCompanyUuidSignatoriesRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1CompaniesCompanyUuidSignatoriesRequest request = new GetV1CompaniesCompanyUuidSignatoriesRequest(companyUuid, - xGustoAPIVersion); + GetV1CompaniesCompanyUuidSignatoriesRequest request = new GetV1CompaniesCompanyUuidSignatoriesRequest(xGustoAPIVersion, + companyUuid); return request; } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsRequest.java index 2317fecd5..c48f4eb2f 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsRequest.java @@ -16,12 +16,6 @@ public class GetV1CompaniesCompanyUuidTaxRequirementsRequest { - /** - * The UUID of the company - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") - private String companyUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class GetV1CompaniesCompanyUuidTaxRequirementsRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") + private String companyUuid; + @JsonCreator public GetV1CompaniesCompanyUuidTaxRequirementsRequest( - String companyUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(companyUuid, "companyUuid"); + Optional xGustoAPIVersion, + String companyUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.companyUuid = companyUuid; + Utils.checkNotNull(companyUuid, "companyUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.companyUuid = companyUuid; } public GetV1CompaniesCompanyUuidTaxRequirementsRequest( String companyUuid) { - this(companyUuid, Optional.empty()); - } - - /** - * The UUID of the company - */ - @JsonIgnore - public String companyUuid() { - return companyUuid; + this(Optional.empty(), companyUuid); } /** @@ -64,20 +56,19 @@ public Optional return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the company */ - public GetV1CompaniesCompanyUuidTaxRequirementsRequest withCompanyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; + @JsonIgnore + public String companyUuid() { + return companyUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetV1CompaniesCompanyUuidTaxRequirementsRequest withXGustoAPIVersion(Opti return this; } + /** + * The UUID of the company + */ + public GetV1CompaniesCompanyUuidTaxRequirementsRequest withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -111,45 +111,35 @@ public boolean equals(java.lang.Object o) { } GetV1CompaniesCompanyUuidTaxRequirementsRequest other = (GetV1CompaniesCompanyUuidTaxRequirementsRequest) o; return - Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid); } @Override public int hashCode() { return Utils.enhancedHash( - companyUuid, xGustoAPIVersion); + xGustoAPIVersion, companyUuid); } @Override public String toString() { return Utils.toString(GetV1CompaniesCompanyUuidTaxRequirementsRequest.class, - "companyUuid", companyUuid, - "xGustoAPIVersion", xGustoAPIVersion); + "xGustoAPIVersion", xGustoAPIVersion, + "companyUuid", companyUuid); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String companyUuid; - private Optional xGustoAPIVersion; + private String companyUuid; + private Builder() { // force use of static builder() method } - /** - * The UUID of the company - */ - public Builder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String companyUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder xGustoAPIVersion(GetV1CompaniesCompanyUuidTaxRequirementsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder xGustoAPIVersion(O return this; } + public GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + private GetV1CompaniesCompanyUuidTaxRequirementsRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1CompaniesCompanyUuidTaxRequirementsRequest request = new GetV1CompaniesCompanyUuidTaxRequirementsRequest(companyUuid, - xGustoAPIVersion); + GetV1CompaniesCompanyUuidTaxRequirementsRequest request = new GetV1CompaniesCompanyUuidTaxRequirementsRequest(xGustoAPIVersion, + companyUuid); return request; } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsStateRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsStateRequest.java index 2b2f978c5..ed858e37a 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsStateRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsStateRequest.java @@ -17,6 +17,14 @@ public class GetV1CompaniesCompanyUuidTaxRequirementsStateRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + /** * The UUID of the company */ @@ -29,14 +37,6 @@ public class GetV1CompaniesCompanyUuidTaxRequirementsStateRequest { @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=state") private String state; - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; - /** * When true, return "new" requirement sets with valid `effective_from` dates that are available to * save new effective-dated values. @@ -46,27 +46,38 @@ public class GetV1CompaniesCompanyUuidTaxRequirementsStateRequest { @JsonCreator public GetV1CompaniesCompanyUuidTaxRequirementsStateRequest( + Optional xGustoAPIVersion, String companyUuid, String state, - Optional xGustoAPIVersion, Optional scheduling) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(state, "state"); - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(scheduling, "scheduling"); + this.xGustoAPIVersion = xGustoAPIVersion; this.companyUuid = companyUuid; this.state = state; - this.xGustoAPIVersion = xGustoAPIVersion; this.scheduling = scheduling; } public GetV1CompaniesCompanyUuidTaxRequirementsStateRequest( String companyUuid, String state) { - this(companyUuid, state, Optional.empty(), + this(Optional.empty(), companyUuid, state, Optional.empty()); } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + /** * The UUID of the company */ @@ -83,17 +94,6 @@ public String state() { return state; } - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional xGustoAPIVersion() { - return (Optional) xGustoAPIVersion; - } - /** * When true, return "new" requirement sets with valid `effective_from` dates that are available to * save new effective-dated values. @@ -108,24 +108,6 @@ public static Builder builder() { } - /** - * The UUID of the company - */ - public GetV1CompaniesCompanyUuidTaxRequirementsStateRequest withCompanyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - /** - * The two-letter state abbreviation - */ - public GetV1CompaniesCompanyUuidTaxRequirementsStateRequest withState(String state) { - Utils.checkNotNull(state, "state"); - this.state = state; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -149,6 +131,24 @@ public GetV1CompaniesCompanyUuidTaxRequirementsStateRequest withXGustoAPIVersion return this; } + /** + * The UUID of the company + */ + public GetV1CompaniesCompanyUuidTaxRequirementsStateRequest withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + /** + * The two-letter state abbreviation + */ + public GetV1CompaniesCompanyUuidTaxRequirementsStateRequest withState(String state) { + Utils.checkNotNull(state, "state"); + this.state = state; + return this; + } + /** * When true, return "new" requirement sets with valid `effective_from` dates that are available to * save new effective-dated values. @@ -180,37 +180,37 @@ public boolean equals(java.lang.Object o) { } GetV1CompaniesCompanyUuidTaxRequirementsStateRequest other = (GetV1CompaniesCompanyUuidTaxRequirementsStateRequest) o; return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && Utils.enhancedDeepEquals(this.state, other.state) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.scheduling, other.scheduling); } @Override public int hashCode() { return Utils.enhancedHash( - companyUuid, state, xGustoAPIVersion, + xGustoAPIVersion, companyUuid, state, scheduling); } @Override public String toString() { return Utils.toString(GetV1CompaniesCompanyUuidTaxRequirementsStateRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, "companyUuid", companyUuid, "state", state, - "xGustoAPIVersion", xGustoAPIVersion, "scheduling", scheduling); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { + private Optional xGustoAPIVersion; + private String companyUuid; private String state; - private Optional xGustoAPIVersion; - private Optional scheduling = Optional.empty(); private Builder() { @@ -218,26 +218,6 @@ private Builder() { } - /** - * The UUID of the company - */ - public Builder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - - /** - * The two-letter state abbreviation - */ - public Builder state(String state) { - Utils.checkNotNull(state, "state"); - this.state = state; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -261,6 +241,26 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String companyUuid; + private String state; private Optional scheduling = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -30,18 +30,6 @@ public class GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder { public GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - public GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder state(String state) { - Utils.checkNotNull(state, "state"); - this.state = state; - return this; - } public GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder xGustoAPIVersion(GetV1CompaniesCompanyUuidTaxRequirementsStateHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -54,6 +42,18 @@ public GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder xGustoAPIVers this.xGustoAPIVersion = xGustoAPIVersion; return this; } + + public GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + public GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder state(String state) { + Utils.checkNotNull(state, "state"); + this.state = state; + return this; + } public GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder scheduling(boolean scheduling) { Utils.checkNotNull(scheduling, "scheduling"); @@ -73,9 +73,9 @@ private GetV1CompaniesCompanyUuidTaxRequirementsStateRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1CompaniesCompanyUuidTaxRequirementsStateRequest request = new GetV1CompaniesCompanyUuidTaxRequirementsStateRequest(companyUuid, + GetV1CompaniesCompanyUuidTaxRequirementsStateRequest request = new GetV1CompaniesCompanyUuidTaxRequirementsStateRequest(xGustoAPIVersion, + companyUuid, state, - xGustoAPIVersion, scheduling); return request; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesRequest.java index 0d404e63f..7a2449c14 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompaniesRequest.java @@ -16,12 +16,6 @@ public class GetV1CompaniesRequest { - /** - * The UUID of the company - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_id") - private String companyId; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class GetV1CompaniesRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_id") + private String companyId; + @JsonCreator public GetV1CompaniesRequest( - String companyId, - Optional xGustoAPIVersion) { - Utils.checkNotNull(companyId, "companyId"); + Optional xGustoAPIVersion, + String companyId) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.companyId = companyId; + Utils.checkNotNull(companyId, "companyId"); this.xGustoAPIVersion = xGustoAPIVersion; + this.companyId = companyId; } public GetV1CompaniesRequest( String companyId) { - this(companyId, Optional.empty()); - } - - /** - * The UUID of the company - */ - @JsonIgnore - public String companyId() { - return companyId; + this(Optional.empty(), companyId); } /** @@ -64,20 +56,19 @@ public Optional xGustoAPIVersion() { return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the company */ - public GetV1CompaniesRequest withCompanyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; + @JsonIgnore + public String companyId() { + return companyId; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetV1CompaniesRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String companyId; + private Builder() { // force use of static builder() method } - /** - * The UUID of the company - */ - public Builder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String companyId; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1CompaniesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1CompaniesRequestBuilder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } public GetV1CompaniesRequestBuilder xGustoAPIVersion(GetV1CompaniesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public GetV1CompaniesRequestBuilder xGustoAPIVersion(OptionalAvailable options: - * - all_benefits: Include all effective dated benefits for each employee instead of only the current - * benefits. - */ -public enum GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsQueryParamInclude { - ALL_BENEFITS("all_benefits"); - - @JsonValue - private final String value; - - GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsQueryParamInclude(String value) { - this.value = value; - } - - public String value() { - return value; - } - - public static Optional fromValue(String value) { - for (GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsQueryParamInclude o: GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsQueryParamInclude.values()) { - if (Objects.deepEquals(o.value, value)) { - return Optional.of(o); - } - } - return Optional.empty(); - } -} - diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsRequest.java index 4203f7d49..abc97365c 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsRequest.java @@ -50,7 +50,7 @@ public class GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsRequest { * benefits. */ @SpeakeasyMetadata("queryParam:style=form,explode=true,name=include") - private Optional include; + private Optional include; @JsonCreator public GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsRequest( @@ -58,7 +58,7 @@ public GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsRequest( String companyBenefitId, Optional page, Optional per, - Optional include) { + Optional include) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(companyBenefitId, "companyBenefitId"); Utils.checkNotNull(page, "page"); @@ -120,8 +120,8 @@ public Optional per() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional include() { - return (Optional) include; + public Optional include() { + return (Optional) include; } public static Builder builder() { @@ -206,7 +206,7 @@ public GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsRequest withPer(Optio * - all_benefits: Include all effective dated benefits for each employee instead of only the current * benefits. */ - public GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsRequest withInclude(GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsQueryParamInclude include) { + public GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsRequest withInclude(QueryParamInclude include) { Utils.checkNotNull(include, "include"); this.include = Optional.ofNullable(include); return this; @@ -218,7 +218,7 @@ public GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsRequest withInclude(G * - all_benefits: Include all effective dated benefits for each employee instead of only the current * benefits. */ - public GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsRequest withInclude(Optional include) { + public GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsRequest withInclude(Optional include) { Utils.checkNotNull(include, "include"); this.include = include; return this; @@ -269,7 +269,7 @@ public final static class Builder { private Optional per = Optional.empty(); - private Optional include = Optional.empty(); + private Optional include = Optional.empty(); private Builder() { // force use of static builder() method @@ -354,7 +354,7 @@ public Builder per(Optional per) { * - all_benefits: Include all effective dated benefits for each employee instead of only the current * benefits. */ - public Builder include(GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsQueryParamInclude include) { + public Builder include(QueryParamInclude include) { Utils.checkNotNull(include, "include"); this.include = Optional.ofNullable(include); return this; @@ -365,7 +365,7 @@ public Builder include(GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsQuery * - all_benefits: Include all effective dated benefits for each employee instead of only the current * benefits. */ - public Builder include(Optional include) { + public Builder include(Optional include) { Utils.checkNotNull(include, "include"); this.include = include; return this; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompanyBenefitsCompanyBenefitIdQueryParamInclude.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompanyBenefitsCompanyBenefitIdQueryParamInclude.java deleted file mode 100644 index 829ad9fc5..000000000 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompanyBenefitsCompanyBenefitIdQueryParamInclude.java +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - */ -package com.gusto.embedded_api.models.operations; - -import com.fasterxml.jackson.annotation.JsonValue; -import java.lang.String; -import java.util.Objects; -import java.util.Optional; - -/** - * GetV1CompanyBenefitsCompanyBenefitIdQueryParamInclude - * - *

    Available options: - * - all_benefits: If with_employee_benefits=true, include all effective dated benefits for each - * employee instead of only the current benefits. - */ -public enum GetV1CompanyBenefitsCompanyBenefitIdQueryParamInclude { - ALL_BENEFITS("all_benefits"); - - @JsonValue - private final String value; - - GetV1CompanyBenefitsCompanyBenefitIdQueryParamInclude(String value) { - this.value = value; - } - - public String value() { - return value; - } - - public static Optional fromValue(String value) { - for (GetV1CompanyBenefitsCompanyBenefitIdQueryParamInclude o: GetV1CompanyBenefitsCompanyBenefitIdQueryParamInclude.values()) { - if (Objects.deepEquals(o.value, value)) { - return Optional.of(o); - } - } - return Optional.empty(); - } -} - diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompanyBenefitsCompanyBenefitIdRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompanyBenefitsCompanyBenefitIdRequest.java index 912fd26e5..8d81e64a9 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompanyBenefitsCompanyBenefitIdRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompanyBenefitsCompanyBenefitIdRequest.java @@ -43,14 +43,14 @@ public class GetV1CompanyBenefitsCompanyBenefitIdRequest { * employee instead of only the current benefits. */ @SpeakeasyMetadata("queryParam:style=form,explode=true,name=include") - private Optional include; + private Optional include; @JsonCreator public GetV1CompanyBenefitsCompanyBenefitIdRequest( Optional xGustoAPIVersion, String companyBenefitId, Optional withEmployeeBenefits, - Optional include) { + Optional include) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(companyBenefitId, "companyBenefitId"); Utils.checkNotNull(withEmployeeBenefits, "withEmployeeBenefits"); @@ -101,8 +101,8 @@ public Optional withEmployeeBenefits() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional include() { - return (Optional) include; + public Optional include() { + return (Optional) include; } public static Builder builder() { @@ -166,7 +166,7 @@ public GetV1CompanyBenefitsCompanyBenefitIdRequest withWithEmployeeBenefits(Opti * - all_benefits: If with_employee_benefits=true, include all effective dated benefits for each * employee instead of only the current benefits. */ - public GetV1CompanyBenefitsCompanyBenefitIdRequest withInclude(GetV1CompanyBenefitsCompanyBenefitIdQueryParamInclude include) { + public GetV1CompanyBenefitsCompanyBenefitIdRequest withInclude(Include include) { Utils.checkNotNull(include, "include"); this.include = Optional.ofNullable(include); return this; @@ -178,7 +178,7 @@ public GetV1CompanyBenefitsCompanyBenefitIdRequest withInclude(GetV1CompanyBenef * - all_benefits: If with_employee_benefits=true, include all effective dated benefits for each * employee instead of only the current benefits. */ - public GetV1CompanyBenefitsCompanyBenefitIdRequest withInclude(Optional include) { + public GetV1CompanyBenefitsCompanyBenefitIdRequest withInclude(Optional include) { Utils.checkNotNull(include, "include"); this.include = include; return this; @@ -225,7 +225,7 @@ public final static class Builder { private Optional withEmployeeBenefits = Optional.empty(); - private Optional include = Optional.empty(); + private Optional include = Optional.empty(); private Builder() { // force use of static builder() method @@ -289,7 +289,7 @@ public Builder withEmployeeBenefits(Optional withEmployeeBenefits) { * - all_benefits: If with_employee_benefits=true, include all effective dated benefits for each * employee instead of only the current benefits. */ - public Builder include(GetV1CompanyBenefitsCompanyBenefitIdQueryParamInclude include) { + public Builder include(Include include) { Utils.checkNotNull(include, "include"); this.include = Optional.ofNullable(include); return this; @@ -300,7 +300,7 @@ public Builder include(GetV1CompanyBenefitsCompanyBenefitIdQueryParamInclude inc * - all_benefits: If with_employee_benefits=true, include all effective dated benefits for each * employee instead of only the current benefits. */ - public Builder include(Optional include) { + public Builder include(Optional include) { Utils.checkNotNull(include, "include"); this.include = include; return this; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompanyBenefitsCompanyBenefitIdRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompanyBenefitsCompanyBenefitIdRequestBuilder.java index 84dee698f..d5a5cf7eb 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompanyBenefitsCompanyBenefitIdRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompanyBenefitsCompanyBenefitIdRequestBuilder.java @@ -23,7 +23,7 @@ public class GetV1CompanyBenefitsCompanyBenefitIdRequestBuilder { new TypeReference>() {}); private String companyBenefitId; private Optional withEmployeeBenefits = Optional.empty(); - private Optional include = Optional.empty(); + private Optional include = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -61,13 +61,13 @@ public GetV1CompanyBenefitsCompanyBenefitIdRequestBuilder withEmployeeBenefits(O return this; } - public GetV1CompanyBenefitsCompanyBenefitIdRequestBuilder include(GetV1CompanyBenefitsCompanyBenefitIdQueryParamInclude include) { + public GetV1CompanyBenefitsCompanyBenefitIdRequestBuilder include(Include include) { Utils.checkNotNull(include, "include"); this.include = Optional.of(include); return this; } - public GetV1CompanyBenefitsCompanyBenefitIdRequestBuilder include(Optional include) { + public GetV1CompanyBenefitsCompanyBenefitIdRequestBuilder include(Optional include) { Utils.checkNotNull(include, "include"); this.include = include; return this; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompanyFinishOnboardingRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompanyFinishOnboardingRequest.java index a1dd3af3a..53d6df4d2 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompanyFinishOnboardingRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompanyFinishOnboardingRequest.java @@ -16,12 +16,6 @@ public class GetV1CompanyFinishOnboardingRequest { - /** - * The UUID of the company - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") - private String companyUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class GetV1CompanyFinishOnboardingRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") + private String companyUuid; + @JsonCreator public GetV1CompanyFinishOnboardingRequest( - String companyUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(companyUuid, "companyUuid"); + Optional xGustoAPIVersion, + String companyUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.companyUuid = companyUuid; + Utils.checkNotNull(companyUuid, "companyUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.companyUuid = companyUuid; } public GetV1CompanyFinishOnboardingRequest( String companyUuid) { - this(companyUuid, Optional.empty()); - } - - /** - * The UUID of the company - */ - @JsonIgnore - public String companyUuid() { - return companyUuid; + this(Optional.empty(), companyUuid); } /** @@ -64,20 +56,19 @@ public Optional xGustoAPIVer return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the company */ - public GetV1CompanyFinishOnboardingRequest withCompanyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; + @JsonIgnore + public String companyUuid() { + return companyUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetV1CompanyFinishOnboardingRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String companyUuid; + private Builder() { // force use of static builder() method } - /** - * The UUID of the company - */ - public Builder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String companyUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1CompanyFinishOnboardingRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1CompanyFinishOnboardingRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public GetV1CompanyFinishOnboardingRequestBuilder xGustoAPIVersion(GetV1CompanyFinishOnboardingHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public GetV1CompanyFinishOnboardingRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion; + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_id") + private String companyId; + @JsonCreator public GetV1CompanyIndustryRequest( - String companyId, - Optional xGustoAPIVersion) { - Utils.checkNotNull(companyId, "companyId"); + Optional xGustoAPIVersion, + String companyId) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.companyId = companyId; + Utils.checkNotNull(companyId, "companyId"); this.xGustoAPIVersion = xGustoAPIVersion; + this.companyId = companyId; } public GetV1CompanyIndustryRequest( String companyId) { - this(companyId, Optional.empty()); - } - - /** - * The UUID of the company - */ - @JsonIgnore - public String companyId() { - return companyId; + this(Optional.empty(), companyId); } /** @@ -64,20 +56,19 @@ public Optional xGustoAPIVersion() { return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the company */ - public GetV1CompanyIndustryRequest withCompanyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; + @JsonIgnore + public String companyId() { + return companyId; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetV1CompanyIndustryRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String companyId; + private Builder() { // force use of static builder() method } - /** - * The UUID of the company - */ - public Builder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String companyId; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1CompanyIndustryRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1CompanyIndustryRequestBuilder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } public GetV1CompanyIndustryRequestBuilder xGustoAPIVersion(GetV1CompanyIndustryHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public GetV1CompanyIndustryRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion; + /** * The UUID of the company */ @@ -29,30 +37,33 @@ public class GetV1CompanyOnboardingStatusRequest { @SpeakeasyMetadata("queryParam:style=form,explode=true,name=additional_steps") private Optional additionalSteps; - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; - @JsonCreator public GetV1CompanyOnboardingStatusRequest( + Optional xGustoAPIVersion, String companyUuid, - Optional additionalSteps, - Optional xGustoAPIVersion) { + Optional additionalSteps) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(additionalSteps, "additionalSteps"); - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; this.companyUuid = companyUuid; this.additionalSteps = additionalSteps; - this.xGustoAPIVersion = xGustoAPIVersion; } public GetV1CompanyOnboardingStatusRequest( String companyUuid) { - this(companyUuid, Optional.empty(), Optional.empty()); + this(Optional.empty(), companyUuid, Optional.empty()); + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; } /** @@ -72,21 +83,33 @@ public Optional additionalSteps() { return additionalSteps; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional xGustoAPIVersion() { - return (Optional) xGustoAPIVersion; + public GetV1CompanyOnboardingStatusRequest withXGustoAPIVersion(GetV1CompanyOnboardingStatusHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; } - public static Builder builder() { - return new Builder(); - } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetV1CompanyOnboardingStatusRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } /** * The UUID of the company @@ -118,29 +141,6 @@ public GetV1CompanyOnboardingStatusRequest withAdditionalSteps(Optional return this; } - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public GetV1CompanyOnboardingStatusRequest withXGustoAPIVersion(GetV1CompanyOnboardingStatusHeaderXGustoAPIVersion xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); - return this; - } - - - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public GetV1CompanyOnboardingStatusRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } - @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -151,39 +151,62 @@ public boolean equals(java.lang.Object o) { } GetV1CompanyOnboardingStatusRequest other = (GetV1CompanyOnboardingStatusRequest) o; return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && - Utils.enhancedDeepEquals(this.additionalSteps, other.additionalSteps) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.additionalSteps, other.additionalSteps); } @Override public int hashCode() { return Utils.enhancedHash( - companyUuid, additionalSteps, xGustoAPIVersion); + xGustoAPIVersion, companyUuid, additionalSteps); } @Override public String toString() { return Utils.toString(GetV1CompanyOnboardingStatusRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, "companyUuid", companyUuid, - "additionalSteps", additionalSteps, - "xGustoAPIVersion", xGustoAPIVersion); + "additionalSteps", additionalSteps); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { + private Optional xGustoAPIVersion; + private String companyUuid; private Optional additionalSteps = Optional.empty(); - private Optional xGustoAPIVersion; - private Builder() { // force use of static builder() method } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(GetV1CompanyOnboardingStatusHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + /** * The UUID of the company */ @@ -214,36 +237,13 @@ public Builder additionalSteps(Optional additionalSteps) { return this; } - - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public Builder xGustoAPIVersion(GetV1CompanyOnboardingStatusHeaderXGustoAPIVersion xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); - return this; - } - - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } - public GetV1CompanyOnboardingStatusRequest build() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } return new GetV1CompanyOnboardingStatusRequest( - companyUuid, additionalSteps, xGustoAPIVersion); + xGustoAPIVersion, companyUuid, additionalSteps); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompanyOnboardingStatusRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompanyOnboardingStatusRequestBuilder.java index e9839f877..45db3ff30 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompanyOnboardingStatusRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1CompanyOnboardingStatusRequestBuilder.java @@ -16,18 +16,30 @@ public class GetV1CompanyOnboardingStatusRequestBuilder { - private String companyUuid; - private Optional additionalSteps = Optional.empty(); private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String companyUuid; + private Optional additionalSteps = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1CompanyOnboardingStatusRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } + + public GetV1CompanyOnboardingStatusRequestBuilder xGustoAPIVersion(GetV1CompanyOnboardingStatusHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetV1CompanyOnboardingStatusRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } public GetV1CompanyOnboardingStatusRequestBuilder companyUuid(String companyUuid) { Utils.checkNotNull(companyUuid, "companyUuid"); @@ -46,18 +58,6 @@ public GetV1CompanyOnboardingStatusRequestBuilder additionalSteps(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } private GetV1CompanyOnboardingStatusRequest buildRequest() { @@ -65,9 +65,9 @@ private GetV1CompanyOnboardingStatusRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1CompanyOnboardingStatusRequest request = new GetV1CompanyOnboardingStatusRequest(companyUuid, - additionalSteps, - xGustoAPIVersion); + GetV1CompanyOnboardingStatusRequest request = new GetV1CompanyOnboardingStatusRequest(xGustoAPIVersion, + companyUuid, + additionalSteps); return request; } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.java index e1bbe92d3..9a90e80be 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.java @@ -16,12 +16,6 @@ public class GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest { - /** - * The UUID of the contractor payment group - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=contractor_payment_group_uuid") - private String contractorPaymentGroupUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the contractor payment group + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=contractor_payment_group_uuid") + private String contractorPaymentGroupUuid; + @JsonCreator public GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest( - String contractorPaymentGroupUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); + Optional xGustoAPIVersion, + String contractorPaymentGroupUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; + Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; } public GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest( String contractorPaymentGroupUuid) { - this(contractorPaymentGroupUuid, Optional.empty()); - } - - /** - * The UUID of the contractor payment group - */ - @JsonIgnore - public String contractorPaymentGroupUuid() { - return contractorPaymentGroupUuid; + this(Optional.empty(), contractorPaymentGroupUuid); } /** @@ -64,20 +56,19 @@ public Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the contractor payment group */ - public GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest withContractorPaymentGroupUuid(String contractorPaymentGroupUuid) { - Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); - this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; - return this; + @JsonIgnore + public String contractorPaymentGroupUuid() { + return contractorPaymentGroupUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest withXGustoAPI return this; } + /** + * The UUID of the contractor payment group + */ + public GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest withContractorPaymentGroupUuid(String contractorPaymentGroupUuid) { + Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); + this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -111,45 +111,35 @@ public boolean equals(java.lang.Object o) { } GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest other = (GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest) o; return - Utils.enhancedDeepEquals(this.contractorPaymentGroupUuid, other.contractorPaymentGroupUuid) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.contractorPaymentGroupUuid, other.contractorPaymentGroupUuid); } @Override public int hashCode() { return Utils.enhancedHash( - contractorPaymentGroupUuid, xGustoAPIVersion); + xGustoAPIVersion, contractorPaymentGroupUuid); } @Override public String toString() { return Utils.toString(GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.class, - "contractorPaymentGroupUuid", contractorPaymentGroupUuid, - "xGustoAPIVersion", xGustoAPIVersion); + "xGustoAPIVersion", xGustoAPIVersion, + "contractorPaymentGroupUuid", contractorPaymentGroupUuid); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String contractorPaymentGroupUuid; - private Optional xGustoAPIVersion; + private String contractorPaymentGroupUuid; + private Builder() { // force use of static builder() method } - /** - * The UUID of the contractor payment group - */ - public Builder contractorPaymentGroupUuid(String contractorPaymentGroupUuid) { - Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); - this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String contractorPaymentGroupUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder contractorPaymentGroupUuid(String contractorPaymentGroupUuid) { - Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); - this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; - return this; - } public GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder xGustoAPIVersion(GetV1ContractorPaymentGroupsContractorPaymentGroupIdHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder xGusto return this; } + public GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder contractorPaymentGroupUuid(String contractorPaymentGroupUuid) { + Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); + this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; + return this; + } + private GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest request = new GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest(contractorPaymentGroupUuid, - xGustoAPIVersion); + GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest request = new GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest(xGustoAPIVersion, + contractorPaymentGroupUuid); return request; } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.java index 6d3f0fe12..bb00a5a8f 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.java @@ -16,12 +16,6 @@ public class GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest { - /** - * The UUID of the contractor payment group - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=id") - private String id; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the contractor payment group + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=id") + private String id; + @JsonCreator public GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest( - String id, - Optional xGustoAPIVersion) { - Utils.checkNotNull(id, "id"); + Optional xGustoAPIVersion, + String id) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.id = id; + Utils.checkNotNull(id, "id"); this.xGustoAPIVersion = xGustoAPIVersion; + this.id = id; } public GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest( String id) { - this(id, Optional.empty()); - } - - /** - * The UUID of the contractor payment group - */ - @JsonIgnore - public String id() { - return id; + this(Optional.empty(), id); } /** @@ -64,20 +56,19 @@ public Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the contractor payment group */ - public GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest withId(String id) { - Utils.checkNotNull(id, "id"); - this.id = id; - return this; + @JsonIgnore + public String id() { + return id; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest withXGustoAPIVe return this; } + /** + * The UUID of the contractor payment group + */ + public GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest withId(String id) { + Utils.checkNotNull(id, "id"); + this.id = id; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -111,45 +111,35 @@ public boolean equals(java.lang.Object o) { } GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest other = (GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest) o; return - Utils.enhancedDeepEquals(this.id, other.id) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.id, other.id); } @Override public int hashCode() { return Utils.enhancedHash( - id, xGustoAPIVersion); + xGustoAPIVersion, id); } @Override public String toString() { return Utils.toString(GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.class, - "id", id, - "xGustoAPIVersion", xGustoAPIVersion); + "xGustoAPIVersion", xGustoAPIVersion, + "id", id); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String id; - private Optional xGustoAPIVersion; + private String id; + private Builder() { // force use of static builder() method } - /** - * The UUID of the contractor payment group - */ - public Builder id(String id) { - Utils.checkNotNull(id, "id"); - this.id = id; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String id; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder id(String id) { - Utils.checkNotNull(id, "id"); - this.id = id; - return this; - } public GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder xGustoAPIVersion(GetV1ContractorPaymentGroupsIdPartnerDisbursementsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder xGustoAP return this; } + public GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder id(String id) { + Utils.checkNotNull(id, "id"); + this.id = id; + return this; + } + private GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest request = new GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest(id, - xGustoAPIVersion); + GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest request = new GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest(xGustoAPIVersion, + id); return request; } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.java new file mode 100644 index 000000000..9367676ab --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion + * + *

    Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ +public enum GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion { + TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15("2025-06-15"); + + @JsonValue + private final String value; + + GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion o: GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsRequest.java new file mode 100644 index 000000000..83c90fa5f --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsRequest.java @@ -0,0 +1,191 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api.utils.LazySingletonValue; +import com.gusto.embedded_api.utils.SpeakeasyMetadata; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class GetV1ContractorsContractorUuidMemberPortalInvitationsRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + + /** + * The UUID of the contractor + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=contractor_uuid") + private String contractorUuid; + + @JsonCreator + public GetV1ContractorsContractorUuidMemberPortalInvitationsRequest( + Optional xGustoAPIVersion, + String contractorUuid) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.xGustoAPIVersion = xGustoAPIVersion; + this.contractorUuid = contractorUuid; + } + + public GetV1ContractorsContractorUuidMemberPortalInvitationsRequest( + String contractorUuid) { + this(Optional.empty(), contractorUuid); + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + + /** + * The UUID of the contractor + */ + @JsonIgnore + public String contractorUuid() { + return contractorUuid; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetV1ContractorsContractorUuidMemberPortalInvitationsRequest withXGustoAPIVersion(GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetV1ContractorsContractorUuidMemberPortalInvitationsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + /** + * The UUID of the contractor + */ + public GetV1ContractorsContractorUuidMemberPortalInvitationsRequest withContractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetV1ContractorsContractorUuidMemberPortalInvitationsRequest other = (GetV1ContractorsContractorUuidMemberPortalInvitationsRequest) o; + return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.contractorUuid, other.contractorUuid); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + xGustoAPIVersion, contractorUuid); + } + + @Override + public String toString() { + return Utils.toString(GetV1ContractorsContractorUuidMemberPortalInvitationsRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, + "contractorUuid", contractorUuid); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional xGustoAPIVersion; + + private String contractorUuid; + + private Builder() { + // force use of static builder() method + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + + /** + * The UUID of the contractor + */ + public Builder contractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + + public GetV1ContractorsContractorUuidMemberPortalInvitationsRequest build() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + return new GetV1ContractorsContractorUuidMemberPortalInvitationsRequest( + xGustoAPIVersion, contractorUuid); + } + + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "X-Gusto-API-Version", + "\"2025-06-15\"", + new TypeReference>() {}); + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder.java new file mode 100644 index 000000000..6ebef1015 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder.java @@ -0,0 +1,75 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import static com.gusto.embedded_api.operations.Operations.RequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api.SDKConfiguration; +import com.gusto.embedded_api.operations.GetV1ContractorsContractorUuidMemberPortalInvitations; +import com.gusto.embedded_api.utils.Headers; +import com.gusto.embedded_api.utils.LazySingletonValue; +import com.gusto.embedded_api.utils.Utils; +import java.lang.String; +import java.util.Optional; + +public class GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder { + + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2025-06-15\"", + new TypeReference>() {}); + private String contractorUuid; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder xGustoAPIVersion(GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder contractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + + + private GetV1ContractorsContractorUuidMemberPortalInvitationsRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + GetV1ContractorsContractorUuidMemberPortalInvitationsRequest request = new GetV1ContractorsContractorUuidMemberPortalInvitationsRequest(xGustoAPIVersion, + contractorUuid); + + return request; + } + + public GetV1ContractorsContractorUuidMemberPortalInvitationsResponse call() { + + RequestOperation operation + = new GetV1ContractorsContractorUuidMemberPortalInvitations.Sync(sdkConfiguration, _headers); + GetV1ContractorsContractorUuidMemberPortalInvitationsRequest request = buildRequest(); + + return operation.handleResponse(operation.doRequest(request)); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2025-06-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsResponse.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsResponse.java new file mode 100644 index 000000000..22f494f9b --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsResponse.java @@ -0,0 +1,253 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api.models.components.MemberPortalInvitation; +import com.gusto.embedded_api.utils.Response; +import com.gusto.embedded_api.utils.Utils; +import java.io.InputStream; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.Optional; + + +public class GetV1ContractorsContractorUuidMemberPortalInvitationsResponse implements Response { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * Success + */ + private Optional memberPortalInvitation; + + @JsonCreator + public GetV1ContractorsContractorUuidMemberPortalInvitationsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional memberPortalInvitation) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(memberPortalInvitation, "memberPortalInvitation"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.memberPortalInvitation = memberPortalInvitation; + } + + public GetV1ContractorsContractorUuidMemberPortalInvitationsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * Success + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional memberPortalInvitation() { + return (Optional) memberPortalInvitation; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public GetV1ContractorsContractorUuidMemberPortalInvitationsResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public GetV1ContractorsContractorUuidMemberPortalInvitationsResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public GetV1ContractorsContractorUuidMemberPortalInvitationsResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * Success + */ + public GetV1ContractorsContractorUuidMemberPortalInvitationsResponse withMemberPortalInvitation(MemberPortalInvitation memberPortalInvitation) { + Utils.checkNotNull(memberPortalInvitation, "memberPortalInvitation"); + this.memberPortalInvitation = Optional.ofNullable(memberPortalInvitation); + return this; + } + + + /** + * Success + */ + public GetV1ContractorsContractorUuidMemberPortalInvitationsResponse withMemberPortalInvitation(Optional memberPortalInvitation) { + Utils.checkNotNull(memberPortalInvitation, "memberPortalInvitation"); + this.memberPortalInvitation = memberPortalInvitation; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetV1ContractorsContractorUuidMemberPortalInvitationsResponse other = (GetV1ContractorsContractorUuidMemberPortalInvitationsResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.memberPortalInvitation, other.memberPortalInvitation); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + memberPortalInvitation); + } + + @Override + public String toString() { + return Utils.toString(GetV1ContractorsContractorUuidMemberPortalInvitationsResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "memberPortalInvitation", memberPortalInvitation); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional memberPortalInvitation = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * Success + */ + public Builder memberPortalInvitation(MemberPortalInvitation memberPortalInvitation) { + Utils.checkNotNull(memberPortalInvitation, "memberPortalInvitation"); + this.memberPortalInvitation = Optional.ofNullable(memberPortalInvitation); + return this; + } + + /** + * Success + */ + public Builder memberPortalInvitation(Optional memberPortalInvitation) { + Utils.checkNotNull(memberPortalInvitation, "memberPortalInvitation"); + this.memberPortalInvitation = memberPortalInvitation; + return this; + } + + public GetV1ContractorsContractorUuidMemberPortalInvitationsResponse build() { + + return new GetV1ContractorsContractorUuidMemberPortalInvitationsResponse( + contentType, statusCode, rawResponse, + memberPortalInvitation); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1ContractorsContractorUuidPaymentsHeaderXGustoAPIVersion.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1ContractorsContractorUuidPaymentsHeaderXGustoAPIVersion.java new file mode 100644 index 000000000..25e825110 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1ContractorsContractorUuidPaymentsHeaderXGustoAPIVersion.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * GetV1ContractorsContractorUuidPaymentsHeaderXGustoAPIVersion + * + *

    Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ +public enum GetV1ContractorsContractorUuidPaymentsHeaderXGustoAPIVersion { + TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15("2025-06-15"); + + @JsonValue + private final String value; + + GetV1ContractorsContractorUuidPaymentsHeaderXGustoAPIVersion(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (GetV1ContractorsContractorUuidPaymentsHeaderXGustoAPIVersion o: GetV1ContractorsContractorUuidPaymentsHeaderXGustoAPIVersion.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1ContractorsContractorUuidPaymentsRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1ContractorsContractorUuidPaymentsRequest.java new file mode 100644 index 000000000..3e55384af --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1ContractorsContractorUuidPaymentsRequest.java @@ -0,0 +1,384 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api.utils.LazySingletonValue; +import com.gusto.embedded_api.utils.SpeakeasyMetadata; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Long; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class GetV1ContractorsContractorUuidPaymentsRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + + /** + * The UUID of the contractor + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=contractor_uuid") + private String contractorUuid; + + /** + * Sort the results. Format: `field` or `field:direction` where `field` is `check_date` or `created_at` + * and `direction` is `asc` or `desc`. + */ + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=sort_by") + private Optional sortBy; + + /** + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. + */ + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=page") + private Optional page; + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=per") + private Optional per; + + @JsonCreator + public GetV1ContractorsContractorUuidPaymentsRequest( + Optional xGustoAPIVersion, + String contractorUuid, + Optional sortBy, + Optional page, + Optional per) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(contractorUuid, "contractorUuid"); + Utils.checkNotNull(sortBy, "sortBy"); + Utils.checkNotNull(page, "page"); + Utils.checkNotNull(per, "per"); + this.xGustoAPIVersion = xGustoAPIVersion; + this.contractorUuid = contractorUuid; + this.sortBy = sortBy; + this.page = page; + this.per = per; + } + + public GetV1ContractorsContractorUuidPaymentsRequest( + String contractorUuid) { + this(Optional.empty(), contractorUuid, Optional.empty(), + Optional.empty(), Optional.empty()); + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + + /** + * The UUID of the contractor + */ + @JsonIgnore + public String contractorUuid() { + return contractorUuid; + } + + /** + * Sort the results. Format: `field` or `field:direction` where `field` is `check_date` or `created_at` + * and `direction` is `asc` or `desc`. + */ + @JsonIgnore + public Optional sortBy() { + return sortBy; + } + + /** + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. + */ + @JsonIgnore + public Optional page() { + return page; + } + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + @JsonIgnore + public Optional per() { + return per; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetV1ContractorsContractorUuidPaymentsRequest withXGustoAPIVersion(GetV1ContractorsContractorUuidPaymentsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetV1ContractorsContractorUuidPaymentsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + /** + * The UUID of the contractor + */ + public GetV1ContractorsContractorUuidPaymentsRequest withContractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + + /** + * Sort the results. Format: `field` or `field:direction` where `field` is `check_date` or `created_at` + * and `direction` is `asc` or `desc`. + */ + public GetV1ContractorsContractorUuidPaymentsRequest withSortBy(String sortBy) { + Utils.checkNotNull(sortBy, "sortBy"); + this.sortBy = Optional.ofNullable(sortBy); + return this; + } + + + /** + * Sort the results. Format: `field` or `field:direction` where `field` is `check_date` or `created_at` + * and `direction` is `asc` or `desc`. + */ + public GetV1ContractorsContractorUuidPaymentsRequest withSortBy(Optional sortBy) { + Utils.checkNotNull(sortBy, "sortBy"); + this.sortBy = sortBy; + return this; + } + + /** + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. + */ + public GetV1ContractorsContractorUuidPaymentsRequest withPage(long page) { + Utils.checkNotNull(page, "page"); + this.page = Optional.ofNullable(page); + return this; + } + + + /** + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. + */ + public GetV1ContractorsContractorUuidPaymentsRequest withPage(Optional page) { + Utils.checkNotNull(page, "page"); + this.page = page; + return this; + } + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + public GetV1ContractorsContractorUuidPaymentsRequest withPer(long per) { + Utils.checkNotNull(per, "per"); + this.per = Optional.ofNullable(per); + return this; + } + + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + public GetV1ContractorsContractorUuidPaymentsRequest withPer(Optional per) { + Utils.checkNotNull(per, "per"); + this.per = per; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetV1ContractorsContractorUuidPaymentsRequest other = (GetV1ContractorsContractorUuidPaymentsRequest) o; + return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.contractorUuid, other.contractorUuid) && + Utils.enhancedDeepEquals(this.sortBy, other.sortBy) && + Utils.enhancedDeepEquals(this.page, other.page) && + Utils.enhancedDeepEquals(this.per, other.per); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + xGustoAPIVersion, contractorUuid, sortBy, + page, per); + } + + @Override + public String toString() { + return Utils.toString(GetV1ContractorsContractorUuidPaymentsRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, + "contractorUuid", contractorUuid, + "sortBy", sortBy, + "page", page, + "per", per); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional xGustoAPIVersion; + + private String contractorUuid; + + private Optional sortBy = Optional.empty(); + + private Optional page = Optional.empty(); + + private Optional per = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(GetV1ContractorsContractorUuidPaymentsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + + /** + * The UUID of the contractor + */ + public Builder contractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + + + /** + * Sort the results. Format: `field` or `field:direction` where `field` is `check_date` or `created_at` + * and `direction` is `asc` or `desc`. + */ + public Builder sortBy(String sortBy) { + Utils.checkNotNull(sortBy, "sortBy"); + this.sortBy = Optional.ofNullable(sortBy); + return this; + } + + /** + * Sort the results. Format: `field` or `field:direction` where `field` is `check_date` or `created_at` + * and `direction` is `asc` or `desc`. + */ + public Builder sortBy(Optional sortBy) { + Utils.checkNotNull(sortBy, "sortBy"); + this.sortBy = sortBy; + return this; + } + + + /** + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. + */ + public Builder page(long page) { + Utils.checkNotNull(page, "page"); + this.page = Optional.ofNullable(page); + return this; + } + + /** + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. + */ + public Builder page(Optional page) { + Utils.checkNotNull(page, "page"); + this.page = page; + return this; + } + + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + public Builder per(long per) { + Utils.checkNotNull(per, "per"); + this.per = Optional.ofNullable(per); + return this; + } + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + public Builder per(Optional per) { + Utils.checkNotNull(per, "per"); + this.per = per; + return this; + } + + public GetV1ContractorsContractorUuidPaymentsRequest build() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + return new GetV1ContractorsContractorUuidPaymentsRequest( + xGustoAPIVersion, contractorUuid, sortBy, + page, per); + } + + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "X-Gusto-API-Version", + "\"2025-06-15\"", + new TypeReference>() {}); + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1ContractorsContractorUuidPaymentsRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1ContractorsContractorUuidPaymentsRequestBuilder.java new file mode 100644 index 000000000..fbd442876 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1ContractorsContractorUuidPaymentsRequestBuilder.java @@ -0,0 +1,36 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import static com.gusto.embedded_api.operations.Operations.RequestOperation; + +import com.gusto.embedded_api.SDKConfiguration; +import com.gusto.embedded_api.operations.GetV1ContractorsContractorUuidPayments; +import com.gusto.embedded_api.utils.Headers; +import com.gusto.embedded_api.utils.Utils; + +public class GetV1ContractorsContractorUuidPaymentsRequestBuilder { + + private GetV1ContractorsContractorUuidPaymentsRequest request; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public GetV1ContractorsContractorUuidPaymentsRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public GetV1ContractorsContractorUuidPaymentsRequestBuilder request(GetV1ContractorsContractorUuidPaymentsRequest request) { + Utils.checkNotNull(request, "request"); + this.request = request; + return this; + } + + public GetV1ContractorsContractorUuidPaymentsResponse call() { + + RequestOperation operation + = new GetV1ContractorsContractorUuidPayments.Sync(sdkConfiguration, _headers); + + return operation.handleResponse(operation.doRequest(request)); + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1ContractorsContractorUuidPaymentsResponse.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1ContractorsContractorUuidPaymentsResponse.java new file mode 100644 index 000000000..3d3b287e0 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1ContractorsContractorUuidPaymentsResponse.java @@ -0,0 +1,254 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api.models.components.ContractorPaymentListing; +import com.gusto.embedded_api.utils.Response; +import com.gusto.embedded_api.utils.Utils; +import java.io.InputStream; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.List; +import java.util.Optional; + + +public class GetV1ContractorsContractorUuidPaymentsResponse implements Response { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * A JSON array of contractor payments + */ + private Optional> contractorPaymentListings; + + @JsonCreator + public GetV1ContractorsContractorUuidPaymentsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional> contractorPaymentListings) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(contractorPaymentListings, "contractorPaymentListings"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.contractorPaymentListings = contractorPaymentListings; + } + + public GetV1ContractorsContractorUuidPaymentsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * A JSON array of contractor payments + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> contractorPaymentListings() { + return (Optional>) contractorPaymentListings; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public GetV1ContractorsContractorUuidPaymentsResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public GetV1ContractorsContractorUuidPaymentsResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public GetV1ContractorsContractorUuidPaymentsResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * A JSON array of contractor payments + */ + public GetV1ContractorsContractorUuidPaymentsResponse withContractorPaymentListings(List contractorPaymentListings) { + Utils.checkNotNull(contractorPaymentListings, "contractorPaymentListings"); + this.contractorPaymentListings = Optional.ofNullable(contractorPaymentListings); + return this; + } + + + /** + * A JSON array of contractor payments + */ + public GetV1ContractorsContractorUuidPaymentsResponse withContractorPaymentListings(Optional> contractorPaymentListings) { + Utils.checkNotNull(contractorPaymentListings, "contractorPaymentListings"); + this.contractorPaymentListings = contractorPaymentListings; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetV1ContractorsContractorUuidPaymentsResponse other = (GetV1ContractorsContractorUuidPaymentsResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.contractorPaymentListings, other.contractorPaymentListings); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + contractorPaymentListings); + } + + @Override + public String toString() { + return Utils.toString(GetV1ContractorsContractorUuidPaymentsResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "contractorPaymentListings", contractorPaymentListings); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional> contractorPaymentListings = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * A JSON array of contractor payments + */ + public Builder contractorPaymentListings(List contractorPaymentListings) { + Utils.checkNotNull(contractorPaymentListings, "contractorPaymentListings"); + this.contractorPaymentListings = Optional.ofNullable(contractorPaymentListings); + return this; + } + + /** + * A JSON array of contractor payments + */ + public Builder contractorPaymentListings(Optional> contractorPaymentListings) { + Utils.checkNotNull(contractorPaymentListings, "contractorPaymentListings"); + this.contractorPaymentListings = contractorPaymentListings; + return this; + } + + public GetV1ContractorsContractorUuidPaymentsResponse build() { + + return new GetV1ContractorsContractorUuidPaymentsResponse( + contentType, statusCode, rawResponse, + contractorPaymentListings); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesEmployeeIdCustomFieldsRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesEmployeeIdCustomFieldsRequest.java index cfa35a56f..8c065539a 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesEmployeeIdCustomFieldsRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesEmployeeIdCustomFieldsRequest.java @@ -17,6 +17,14 @@ public class GetV1EmployeesEmployeeIdCustomFieldsRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + /** * The UUID of the employee */ @@ -36,36 +44,39 @@ public class GetV1EmployeesEmployeeIdCustomFieldsRequest { @SpeakeasyMetadata("queryParam:style=form,explode=true,name=per") private Optional per; - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; - @JsonCreator public GetV1EmployeesEmployeeIdCustomFieldsRequest( + Optional xGustoAPIVersion, String employeeId, Optional page, - Optional per, - Optional xGustoAPIVersion) { + Optional per) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(employeeId, "employeeId"); Utils.checkNotNull(page, "page"); Utils.checkNotNull(per, "per"); - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; this.employeeId = employeeId; this.page = page; this.per = per; - this.xGustoAPIVersion = xGustoAPIVersion; } public GetV1EmployeesEmployeeIdCustomFieldsRequest( String employeeId) { - this(employeeId, Optional.empty(), Optional.empty(), + this(Optional.empty(), employeeId, Optional.empty(), Optional.empty()); } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + /** * The UUID of the employee */ @@ -91,21 +102,33 @@ public Optional per() { return per; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional xGustoAPIVersion() { - return (Optional) xGustoAPIVersion; + public GetV1EmployeesEmployeeIdCustomFieldsRequest withXGustoAPIVersion(GetV1EmployeesEmployeeIdCustomFieldsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; } - public static Builder builder() { - return new Builder(); - } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetV1EmployeesEmployeeIdCustomFieldsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } /** * The UUID of the employee @@ -156,29 +179,6 @@ public GetV1EmployeesEmployeeIdCustomFieldsRequest withPer(Optional per) { return this; } - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public GetV1EmployeesEmployeeIdCustomFieldsRequest withXGustoAPIVersion(GetV1EmployeesEmployeeIdCustomFieldsHeaderXGustoAPIVersion xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); - return this; - } - - - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public GetV1EmployeesEmployeeIdCustomFieldsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } - @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -189,44 +189,67 @@ public boolean equals(java.lang.Object o) { } GetV1EmployeesEmployeeIdCustomFieldsRequest other = (GetV1EmployeesEmployeeIdCustomFieldsRequest) o; return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.employeeId, other.employeeId) && Utils.enhancedDeepEquals(this.page, other.page) && - Utils.enhancedDeepEquals(this.per, other.per) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.per, other.per); } @Override public int hashCode() { return Utils.enhancedHash( - employeeId, page, per, - xGustoAPIVersion); + xGustoAPIVersion, employeeId, page, + per); } @Override public String toString() { return Utils.toString(GetV1EmployeesEmployeeIdCustomFieldsRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, "employeeId", employeeId, "page", page, - "per", per, - "xGustoAPIVersion", xGustoAPIVersion); + "per", per); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { + private Optional xGustoAPIVersion; + private String employeeId; private Optional page = Optional.empty(); private Optional per = Optional.empty(); - private Optional xGustoAPIVersion; - private Builder() { // force use of static builder() method } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(GetV1EmployeesEmployeeIdCustomFieldsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + /** * The UUID of the employee */ @@ -276,37 +299,14 @@ public Builder per(Optional per) { return this; } - - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public Builder xGustoAPIVersion(GetV1EmployeesEmployeeIdCustomFieldsHeaderXGustoAPIVersion xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); - return this; - } - - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } - public GetV1EmployeesEmployeeIdCustomFieldsRequest build() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } return new GetV1EmployeesEmployeeIdCustomFieldsRequest( - employeeId, page, per, - xGustoAPIVersion); + xGustoAPIVersion, employeeId, page, + per); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder.java index b894fed7f..70848270a 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder.java @@ -17,19 +17,31 @@ public class GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder { - private String employeeId; - private Optional page = Optional.empty(); - private Optional per = Optional.empty(); private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String employeeId; + private Optional page = Optional.empty(); + private Optional per = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } + + public GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder xGustoAPIVersion(GetV1EmployeesEmployeeIdCustomFieldsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } public GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder employeeId(String employeeId) { Utils.checkNotNull(employeeId, "employeeId"); @@ -60,18 +72,6 @@ public GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder per(Optional per this.per = per; return this; } - - public GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder xGustoAPIVersion(GetV1EmployeesEmployeeIdCustomFieldsHeaderXGustoAPIVersion xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); - return this; - } - - public GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } private GetV1EmployeesEmployeeIdCustomFieldsRequest buildRequest() { @@ -79,10 +79,10 @@ private GetV1EmployeesEmployeeIdCustomFieldsRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1EmployeesEmployeeIdCustomFieldsRequest request = new GetV1EmployeesEmployeeIdCustomFieldsRequest(employeeId, + GetV1EmployeesEmployeeIdCustomFieldsRequest request = new GetV1EmployeesEmployeeIdCustomFieldsRequest(xGustoAPIVersion, + employeeId, page, - per, - xGustoAPIVersion); + per); return request; } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesEmployeeIdHomeAddressesRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesEmployeeIdHomeAddressesRequest.java index 5ccbd8e45..a535e9565 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesEmployeeIdHomeAddressesRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesEmployeeIdHomeAddressesRequest.java @@ -16,12 +16,6 @@ public class GetV1EmployeesEmployeeIdHomeAddressesRequest { - /** - * The UUID of the employee - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=employee_id") - private String employeeId; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class GetV1EmployeesEmployeeIdHomeAddressesRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the employee + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=employee_id") + private String employeeId; + @JsonCreator public GetV1EmployeesEmployeeIdHomeAddressesRequest( - String employeeId, - Optional xGustoAPIVersion) { - Utils.checkNotNull(employeeId, "employeeId"); + Optional xGustoAPIVersion, + String employeeId) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.employeeId = employeeId; + Utils.checkNotNull(employeeId, "employeeId"); this.xGustoAPIVersion = xGustoAPIVersion; + this.employeeId = employeeId; } public GetV1EmployeesEmployeeIdHomeAddressesRequest( String employeeId) { - this(employeeId, Optional.empty()); - } - - /** - * The UUID of the employee - */ - @JsonIgnore - public String employeeId() { - return employeeId; + this(Optional.empty(), employeeId); } /** @@ -64,20 +56,19 @@ public Optional xGu return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the employee */ - public GetV1EmployeesEmployeeIdHomeAddressesRequest withEmployeeId(String employeeId) { - Utils.checkNotNull(employeeId, "employeeId"); - this.employeeId = employeeId; - return this; + @JsonIgnore + public String employeeId() { + return employeeId; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetV1EmployeesEmployeeIdHomeAddressesRequest withXGustoAPIVersion(Optiona return this; } + /** + * The UUID of the employee + */ + public GetV1EmployeesEmployeeIdHomeAddressesRequest withEmployeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -111,45 +111,35 @@ public boolean equals(java.lang.Object o) { } GetV1EmployeesEmployeeIdHomeAddressesRequest other = (GetV1EmployeesEmployeeIdHomeAddressesRequest) o; return - Utils.enhancedDeepEquals(this.employeeId, other.employeeId) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.employeeId, other.employeeId); } @Override public int hashCode() { return Utils.enhancedHash( - employeeId, xGustoAPIVersion); + xGustoAPIVersion, employeeId); } @Override public String toString() { return Utils.toString(GetV1EmployeesEmployeeIdHomeAddressesRequest.class, - "employeeId", employeeId, - "xGustoAPIVersion", xGustoAPIVersion); + "xGustoAPIVersion", xGustoAPIVersion, + "employeeId", employeeId); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String employeeId; - private Optional xGustoAPIVersion; + private String employeeId; + private Builder() { // force use of static builder() method } - /** - * The UUID of the employee - */ - public Builder employeeId(String employeeId) { - Utils.checkNotNull(employeeId, "employeeId"); - this.employeeId = employeeId; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String employeeId; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1EmployeesEmployeeIdHomeAddressesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1EmployeesEmployeeIdHomeAddressesRequestBuilder employeeId(String employeeId) { - Utils.checkNotNull(employeeId, "employeeId"); - this.employeeId = employeeId; - return this; - } public GetV1EmployeesEmployeeIdHomeAddressesRequestBuilder xGustoAPIVersion(GetV1EmployeesEmployeeIdHomeAddressesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public GetV1EmployeesEmployeeIdHomeAddressesRequestBuilder xGustoAPIVersion(Opti return this; } + public GetV1EmployeesEmployeeIdHomeAddressesRequestBuilder employeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + private GetV1EmployeesEmployeeIdHomeAddressesRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1EmployeesEmployeeIdHomeAddressesRequest request = new GetV1EmployeesEmployeeIdHomeAddressesRequest(employeeId, - xGustoAPIVersion); + GetV1EmployeesEmployeeIdHomeAddressesRequest request = new GetV1EmployeesEmployeeIdHomeAddressesRequest(xGustoAPIVersion, + employeeId); return request; } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesEmployeeIdJobsRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesEmployeeIdJobsRequest.java index 901ece2fb..5c24bc47c 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesEmployeeIdJobsRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesEmployeeIdJobsRequest.java @@ -17,6 +17,14 @@ public class GetV1EmployeesEmployeeIdJobsRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + /** * The UUID of the employee */ @@ -44,39 +52,42 @@ public class GetV1EmployeesEmployeeIdJobsRequest { @SpeakeasyMetadata("queryParam:style=form,explode=true,name=include") private Optional include; - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; - @JsonCreator public GetV1EmployeesEmployeeIdJobsRequest( + Optional xGustoAPIVersion, String employeeId, Optional page, Optional per, - Optional include, - Optional xGustoAPIVersion) { + Optional include) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(employeeId, "employeeId"); Utils.checkNotNull(page, "page"); Utils.checkNotNull(per, "per"); Utils.checkNotNull(include, "include"); - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; this.employeeId = employeeId; this.page = page; this.per = per; this.include = include; - this.xGustoAPIVersion = xGustoAPIVersion; } public GetV1EmployeesEmployeeIdJobsRequest( String employeeId) { - this(employeeId, Optional.empty(), Optional.empty(), + this(Optional.empty(), employeeId, Optional.empty(), Optional.empty(), Optional.empty()); } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + /** * The UUID of the employee */ @@ -113,21 +124,33 @@ public Optional include() { return (Optional) include; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional xGustoAPIVersion() { - return (Optional) xGustoAPIVersion; + public GetV1EmployeesEmployeeIdJobsRequest withXGustoAPIVersion(GetV1EmployeesEmployeeIdJobsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; } - public static Builder builder() { - return new Builder(); - } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetV1EmployeesEmployeeIdJobsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } /** * The UUID of the employee @@ -201,29 +224,6 @@ public GetV1EmployeesEmployeeIdJobsRequest withInclude(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } - @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -234,33 +234,35 @@ public boolean equals(java.lang.Object o) { } GetV1EmployeesEmployeeIdJobsRequest other = (GetV1EmployeesEmployeeIdJobsRequest) o; return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.employeeId, other.employeeId) && Utils.enhancedDeepEquals(this.page, other.page) && Utils.enhancedDeepEquals(this.per, other.per) && - Utils.enhancedDeepEquals(this.include, other.include) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.include, other.include); } @Override public int hashCode() { return Utils.enhancedHash( - employeeId, page, per, - include, xGustoAPIVersion); + xGustoAPIVersion, employeeId, page, + per, include); } @Override public String toString() { return Utils.toString(GetV1EmployeesEmployeeIdJobsRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, "employeeId", employeeId, "page", page, "per", per, - "include", include, - "xGustoAPIVersion", xGustoAPIVersion); + "include", include); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { + private Optional xGustoAPIVersion; + private String employeeId; private Optional page = Optional.empty(); @@ -269,13 +271,34 @@ public final static class Builder { private Optional include = Optional.empty(); - private Optional xGustoAPIVersion; - private Builder() { // force use of static builder() method } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(GetV1EmployeesEmployeeIdJobsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + /** * The UUID of the employee */ @@ -348,37 +371,14 @@ public Builder include(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } - public GetV1EmployeesEmployeeIdJobsRequest build() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } return new GetV1EmployeesEmployeeIdJobsRequest( - employeeId, page, per, - include, xGustoAPIVersion); + xGustoAPIVersion, employeeId, page, + per, include); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.java new file mode 100644 index 000000000..fb921860d --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion + * + *

    Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ +public enum GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion { + TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15("2025-06-15"); + + @JsonValue + private final String value; + + GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion o: GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest.java new file mode 100644 index 000000000..0769c315f --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest.java @@ -0,0 +1,191 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api.utils.LazySingletonValue; +import com.gusto.embedded_api.utils.SpeakeasyMetadata; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + + /** + * The UUID of the employee + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=employee_id") + private String employeeId; + + @JsonCreator + public GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest( + Optional xGustoAPIVersion, + String employeeId) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(employeeId, "employeeId"); + this.xGustoAPIVersion = xGustoAPIVersion; + this.employeeId = employeeId; + } + + public GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest( + String employeeId) { + this(Optional.empty(), employeeId); + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + + /** + * The UUID of the employee + */ + @JsonIgnore + public String employeeId() { + return employeeId; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest withXGustoAPIVersion(GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + /** + * The UUID of the employee + */ + public GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest withEmployeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest other = (GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest) o; + return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.employeeId, other.employeeId); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + xGustoAPIVersion, employeeId); + } + + @Override + public String toString() { + return Utils.toString(GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, + "employeeId", employeeId); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional xGustoAPIVersion; + + private String employeeId; + + private Builder() { + // force use of static builder() method + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + + /** + * The UUID of the employee + */ + public Builder employeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + + public GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest build() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + return new GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest( + xGustoAPIVersion, employeeId); + } + + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "X-Gusto-API-Version", + "\"2025-06-15\"", + new TypeReference>() {}); + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java new file mode 100644 index 000000000..87ae08ff3 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java @@ -0,0 +1,75 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import static com.gusto.embedded_api.operations.Operations.RequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api.SDKConfiguration; +import com.gusto.embedded_api.operations.GetV1EmployeesEmployeeIdMemberPortalInvitations; +import com.gusto.embedded_api.utils.Headers; +import com.gusto.embedded_api.utils.LazySingletonValue; +import com.gusto.embedded_api.utils.Utils; +import java.lang.String; +import java.util.Optional; + +public class GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder { + + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2025-06-15\"", + new TypeReference>() {}); + private String employeeId; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder xGustoAPIVersion(GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder employeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + + + private GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest request = new GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest(xGustoAPIVersion, + employeeId); + + return request; + } + + public GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse call() { + + RequestOperation operation + = new GetV1EmployeesEmployeeIdMemberPortalInvitations.Sync(sdkConfiguration, _headers); + GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest request = buildRequest(); + + return operation.handleResponse(operation.doRequest(request)); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2025-06-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java new file mode 100644 index 000000000..fa7eedce6 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java @@ -0,0 +1,253 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api.models.components.MemberPortalInvitation; +import com.gusto.embedded_api.utils.Response; +import com.gusto.embedded_api.utils.Utils; +import java.io.InputStream; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.Optional; + + +public class GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse implements Response { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * Success + */ + private Optional memberPortalInvitation; + + @JsonCreator + public GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional memberPortalInvitation) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(memberPortalInvitation, "memberPortalInvitation"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.memberPortalInvitation = memberPortalInvitation; + } + + public GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * Success + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional memberPortalInvitation() { + return (Optional) memberPortalInvitation; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * Success + */ + public GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse withMemberPortalInvitation(MemberPortalInvitation memberPortalInvitation) { + Utils.checkNotNull(memberPortalInvitation, "memberPortalInvitation"); + this.memberPortalInvitation = Optional.ofNullable(memberPortalInvitation); + return this; + } + + + /** + * Success + */ + public GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse withMemberPortalInvitation(Optional memberPortalInvitation) { + Utils.checkNotNull(memberPortalInvitation, "memberPortalInvitation"); + this.memberPortalInvitation = memberPortalInvitation; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse other = (GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.memberPortalInvitation, other.memberPortalInvitation); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + memberPortalInvitation); + } + + @Override + public String toString() { + return Utils.toString(GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "memberPortalInvitation", memberPortalInvitation); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional memberPortalInvitation = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * Success + */ + public Builder memberPortalInvitation(MemberPortalInvitation memberPortalInvitation) { + Utils.checkNotNull(memberPortalInvitation, "memberPortalInvitation"); + this.memberPortalInvitation = Optional.ofNullable(memberPortalInvitation); + return this; + } + + /** + * Success + */ + public Builder memberPortalInvitation(Optional memberPortalInvitation) { + Utils.checkNotNull(memberPortalInvitation, "memberPortalInvitation"); + this.memberPortalInvitation = memberPortalInvitation; + return this; + } + + public GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse build() { + + return new GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse( + contentType, statusCode, rawResponse, + memberPortalInvitation); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesEmployeeIdWorkAddressesRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesEmployeeIdWorkAddressesRequest.java index 8b4d99661..43f24efb8 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesEmployeeIdWorkAddressesRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesEmployeeIdWorkAddressesRequest.java @@ -16,12 +16,6 @@ public class GetV1EmployeesEmployeeIdWorkAddressesRequest { - /** - * The UUID of the employee - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=employee_id") - private String employeeId; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class GetV1EmployeesEmployeeIdWorkAddressesRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the employee + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=employee_id") + private String employeeId; + @JsonCreator public GetV1EmployeesEmployeeIdWorkAddressesRequest( - String employeeId, - Optional xGustoAPIVersion) { - Utils.checkNotNull(employeeId, "employeeId"); + Optional xGustoAPIVersion, + String employeeId) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.employeeId = employeeId; + Utils.checkNotNull(employeeId, "employeeId"); this.xGustoAPIVersion = xGustoAPIVersion; + this.employeeId = employeeId; } public GetV1EmployeesEmployeeIdWorkAddressesRequest( String employeeId) { - this(employeeId, Optional.empty()); - } - - /** - * The UUID of the employee - */ - @JsonIgnore - public String employeeId() { - return employeeId; + this(Optional.empty(), employeeId); } /** @@ -64,20 +56,19 @@ public Optional xGu return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the employee */ - public GetV1EmployeesEmployeeIdWorkAddressesRequest withEmployeeId(String employeeId) { - Utils.checkNotNull(employeeId, "employeeId"); - this.employeeId = employeeId; - return this; + @JsonIgnore + public String employeeId() { + return employeeId; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetV1EmployeesEmployeeIdWorkAddressesRequest withXGustoAPIVersion(Optiona return this; } + /** + * The UUID of the employee + */ + public GetV1EmployeesEmployeeIdWorkAddressesRequest withEmployeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -111,45 +111,35 @@ public boolean equals(java.lang.Object o) { } GetV1EmployeesEmployeeIdWorkAddressesRequest other = (GetV1EmployeesEmployeeIdWorkAddressesRequest) o; return - Utils.enhancedDeepEquals(this.employeeId, other.employeeId) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.employeeId, other.employeeId); } @Override public int hashCode() { return Utils.enhancedHash( - employeeId, xGustoAPIVersion); + xGustoAPIVersion, employeeId); } @Override public String toString() { return Utils.toString(GetV1EmployeesEmployeeIdWorkAddressesRequest.class, - "employeeId", employeeId, - "xGustoAPIVersion", xGustoAPIVersion); + "xGustoAPIVersion", xGustoAPIVersion, + "employeeId", employeeId); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String employeeId; - private Optional xGustoAPIVersion; + private String employeeId; + private Builder() { // force use of static builder() method } - /** - * The UUID of the employee - */ - public Builder employeeId(String employeeId) { - Utils.checkNotNull(employeeId, "employeeId"); - this.employeeId = employeeId; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String employeeId; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1EmployeesEmployeeIdWorkAddressesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1EmployeesEmployeeIdWorkAddressesRequestBuilder employeeId(String employeeId) { - Utils.checkNotNull(employeeId, "employeeId"); - this.employeeId = employeeId; - return this; - } public GetV1EmployeesEmployeeIdWorkAddressesRequestBuilder xGustoAPIVersion(GetV1EmployeesEmployeeIdWorkAddressesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public GetV1EmployeesEmployeeIdWorkAddressesRequestBuilder xGustoAPIVersion(Opti return this; } + public GetV1EmployeesEmployeeIdWorkAddressesRequestBuilder employeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + private GetV1EmployeesEmployeeIdWorkAddressesRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1EmployeesEmployeeIdWorkAddressesRequest request = new GetV1EmployeesEmployeeIdWorkAddressesRequest(employeeId, - xGustoAPIVersion); + GetV1EmployeesEmployeeIdWorkAddressesRequest request = new GetV1EmployeesEmployeeIdWorkAddressesRequest(xGustoAPIVersion, + employeeId); return request; } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.java index 4e9a78b2d..fc409bb62 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.java @@ -17,6 +17,14 @@ public class GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + /** * The UUID of the employee */ @@ -29,47 +37,23 @@ public class GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYear @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=effective_year") private long effectiveYear; - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; - @JsonCreator public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest( + Optional xGustoAPIVersion, String employeeUuid, - long effectiveYear, - Optional xGustoAPIVersion) { + long effectiveYear) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(employeeUuid, "employeeUuid"); Utils.checkNotNull(effectiveYear, "effectiveYear"); - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; this.employeeUuid = employeeUuid; this.effectiveYear = effectiveYear; - this.xGustoAPIVersion = xGustoAPIVersion; } public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest( String employeeUuid, long effectiveYear) { - this(employeeUuid, effectiveYear, Optional.empty()); - } - - /** - * The UUID of the employee - */ - @JsonIgnore - public String employeeUuid() { - return employeeUuid; - } - - /** - * The effective year for the Section 603 status - */ - @JsonIgnore - public long effectiveYear() { - return effectiveYear; + this(Optional.empty(), employeeUuid, effectiveYear); } /** @@ -83,29 +67,27 @@ public Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the employee */ - public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest withEmployeeUuid(String employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = employeeUuid; - return this; + @JsonIgnore + public String employeeUuid() { + return employeeUuid; } /** * The effective year for the Section 603 status */ - public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest withEffectiveYear(long effectiveYear) { - Utils.checkNotNull(effectiveYear, "effectiveYear"); - this.effectiveYear = effectiveYear; - return this; + @JsonIgnore + public long effectiveYear() { + return effectiveYear; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -129,6 +111,24 @@ public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearReques return this; } + /** + * The UUID of the employee + */ + public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest withEmployeeUuid(String employeeUuid) { + Utils.checkNotNull(employeeUuid, "employeeUuid"); + this.employeeUuid = employeeUuid; + return this; + } + + /** + * The effective year for the Section 603 status + */ + public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest withEffectiveYear(long effectiveYear) { + Utils.checkNotNull(effectiveYear, "effectiveYear"); + this.effectiveYear = effectiveYear; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -139,59 +139,39 @@ public boolean equals(java.lang.Object o) { } GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest other = (GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest) o; return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.employeeUuid, other.employeeUuid) && - Utils.enhancedDeepEquals(this.effectiveYear, other.effectiveYear) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.effectiveYear, other.effectiveYear); } @Override public int hashCode() { return Utils.enhancedHash( - employeeUuid, effectiveYear, xGustoAPIVersion); + xGustoAPIVersion, employeeUuid, effectiveYear); } @Override public String toString() { return Utils.toString(GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, "employeeUuid", employeeUuid, - "effectiveYear", effectiveYear, - "xGustoAPIVersion", xGustoAPIVersion); + "effectiveYear", effectiveYear); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { + private Optional xGustoAPIVersion; + private String employeeUuid; private Long effectiveYear; - private Optional xGustoAPIVersion; - private Builder() { // force use of static builder() method } - /** - * The UUID of the employee - */ - public Builder employeeUuid(String employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = employeeUuid; - return this; - } - - - /** - * The effective year for the Section 603 status - */ - public Builder effectiveYear(long effectiveYear) { - Utils.checkNotNull(effectiveYear, "effectiveYear"); - this.effectiveYear = effectiveYear; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -214,13 +194,33 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String employeeUuid; + private Long effectiveYear; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder employeeUuid(String employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = employeeUuid; - return this; - } - - public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder effectiveYear(long effectiveYear) { - Utils.checkNotNull(effectiveYear, "effectiveYear"); - this.effectiveYear = effectiveYear; - return this; - } public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder xGustoAPIVersion(GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -54,15 +42,27 @@ public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearReques return this; } + public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder employeeUuid(String employeeUuid) { + Utils.checkNotNull(employeeUuid, "employeeUuid"); + this.employeeUuid = employeeUuid; + return this; + } + + public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder effectiveYear(long effectiveYear) { + Utils.checkNotNull(effectiveYear, "effectiveYear"); + this.effectiveYear = effectiveYear; + return this; + } + private GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest request = new GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest(employeeUuid, - effectiveYear, - xGustoAPIVersion); + GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest request = new GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest(xGustoAPIVersion, + employeeUuid, + effectiveYear); return request; } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.java index 1426c7d22..b931896d6 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.java @@ -16,12 +16,6 @@ public class GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest { - /** - * The UUID of the employee - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=employee_uuid") - private String employeeUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the employee + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=employee_uuid") + private String employeeUuid; + @JsonCreator public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest( - String employeeUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); + Optional xGustoAPIVersion, + String employeeUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.employeeUuid = employeeUuid; + Utils.checkNotNull(employeeUuid, "employeeUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.employeeUuid = employeeUuid; } public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest( String employeeUuid) { - this(employeeUuid, Optional.empty()); - } - - /** - * The UUID of the employee - */ - @JsonIgnore - public String employeeUuid() { - return employeeUuid; + this(Optional.empty(), employeeUuid); } /** @@ -64,20 +56,19 @@ public Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the employee */ - public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest withEmployeeUuid(String employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = employeeUuid; - return this; + @JsonIgnore + public String employeeUuid() { + return employeeUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest withXGustoA return this; } + /** + * The UUID of the employee + */ + public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest withEmployeeUuid(String employeeUuid) { + Utils.checkNotNull(employeeUuid, "employeeUuid"); + this.employeeUuid = employeeUuid; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -111,45 +111,35 @@ public boolean equals(java.lang.Object o) { } GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest other = (GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest) o; return - Utils.enhancedDeepEquals(this.employeeUuid, other.employeeUuid) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.employeeUuid, other.employeeUuid); } @Override public int hashCode() { return Utils.enhancedHash( - employeeUuid, xGustoAPIVersion); + xGustoAPIVersion, employeeUuid); } @Override public String toString() { return Utils.toString(GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.class, - "employeeUuid", employeeUuid, - "xGustoAPIVersion", xGustoAPIVersion); + "xGustoAPIVersion", xGustoAPIVersion, + "employeeUuid", employeeUuid); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String employeeUuid; - private Optional xGustoAPIVersion; + private String employeeUuid; + private Builder() { // force use of static builder() method } - /** - * The UUID of the employee - */ - public Builder employeeUuid(String employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = employeeUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String employeeUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder employeeUuid(String employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = employeeUuid; - return this; - } public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder xGustoAPIVersion(GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder xGus return this; } + public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder employeeUuid(String employeeUuid) { + Utils.checkNotNull(employeeUuid, "employeeUuid"); + this.employeeUuid = employeeUuid; + return this; + } + private GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest request = new GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest(employeeUuid, - xGustoAPIVersion); + GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest request = new GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest(xGustoAPIVersion, + employeeUuid); return request; } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesQueryParamInclude.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesQueryParamInclude.java new file mode 100644 index 000000000..07174f066 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesQueryParamInclude.java @@ -0,0 +1,39 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +public enum GetV1EmployeesQueryParamInclude { + ALL_COMPENSATIONS("all_compensations"), + ALL_HOME_ADDRESSES("all_home_addresses"), + COMPANY_NAME("company_name"), + CURRENT_HOME_ADDRESS("current_home_address"), + CUSTOM_FIELDS("custom_fields"), + PORTAL_INVITATIONS("portal_invitations"); + + @JsonValue + private final String value; + + GetV1EmployeesQueryParamInclude(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (GetV1EmployeesQueryParamInclude o: GetV1EmployeesQueryParamInclude.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesRequest.java index 6bd943caa..415cf952c 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesRequest.java @@ -35,13 +35,13 @@ public class GetV1EmployeesRequest { * Include the requested attribute(s) in each employee response. Multiple options are comma separated. */ @SpeakeasyMetadata("queryParam:style=form,explode=false,name=include") - private Optional> include; + private Optional> include; @JsonCreator public GetV1EmployeesRequest( Optional xGustoAPIVersion, String employeeId, - Optional> include) { + Optional> include) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(employeeId, "employeeId"); Utils.checkNotNull(include, "include"); @@ -79,8 +79,8 @@ public String employeeId() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional> include() { - return (Optional>) include; + public Optional> include() { + return (Optional>) include; } public static Builder builder() { @@ -123,7 +123,7 @@ public GetV1EmployeesRequest withEmployeeId(String employeeId) { /** * Include the requested attribute(s) in each employee response. Multiple options are comma separated. */ - public GetV1EmployeesRequest withInclude(List include) { + public GetV1EmployeesRequest withInclude(List include) { Utils.checkNotNull(include, "include"); this.include = Optional.ofNullable(include); return this; @@ -133,7 +133,7 @@ public GetV1EmployeesRequest withInclude(List include) { /** * Include the requested attribute(s) in each employee response. Multiple options are comma separated. */ - public GetV1EmployeesRequest withInclude(Optional> include) { + public GetV1EmployeesRequest withInclude(Optional> include) { Utils.checkNotNull(include, "include"); this.include = include; return this; @@ -175,7 +175,7 @@ public final static class Builder { private String employeeId; - private Optional> include = Optional.empty(); + private Optional> include = Optional.empty(); private Builder() { // force use of static builder() method @@ -218,7 +218,7 @@ public Builder employeeId(String employeeId) { /** * Include the requested attribute(s) in each employee response. Multiple options are comma separated. */ - public Builder include(List include) { + public Builder include(List include) { Utils.checkNotNull(include, "include"); this.include = Optional.ofNullable(include); return this; @@ -227,7 +227,7 @@ public Builder include(List include) { /** * Include the requested attribute(s) in each employee response. Multiple options are comma separated. */ - public Builder include(Optional> include) { + public Builder include(Optional> include) { Utils.checkNotNull(include, "include"); this.include = include; return this; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesRequestBuilder.java index 404d28cd2..1286352ae 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1EmployeesRequestBuilder.java @@ -22,7 +22,7 @@ public class GetV1EmployeesRequestBuilder { "\"2025-06-15\"", new TypeReference>() {}); private String employeeId; - private Optional> include = Optional.empty(); + private Optional> include = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -48,13 +48,13 @@ public GetV1EmployeesRequestBuilder employeeId(String employeeId) { return this; } - public GetV1EmployeesRequestBuilder include(List include) { + public GetV1EmployeesRequestBuilder include(List include) { Utils.checkNotNull(include, "include"); this.include = Optional.of(include); return this; } - public GetV1EmployeesRequestBuilder include(Optional> include) { + public GetV1EmployeesRequestBuilder include(Optional> include) { Utils.checkNotNull(include, "include"); this.include = include; return this; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion.java new file mode 100644 index 000000000..f3143b086 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion + * + *

    Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ +public enum GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion { + TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15("2025-06-15"); + + @JsonValue + private final String value; + + GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion o: GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest.java index 201cc1191..b00fdebdf 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest.java @@ -6,7 +6,6 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.core.type.TypeReference; -import com.gusto.embedded_api.models.components.VersionHeader; import com.gusto.embedded_api.utils.LazySingletonValue; import com.gusto.embedded_api.utils.SpeakeasyMetadata; import com.gusto.embedded_api.utils.Utils; @@ -17,6 +16,14 @@ public class GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + /** * The type of document being generated */ @@ -30,31 +37,34 @@ public class GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest { @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=request_uuid") private String requestUuid; - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; - @JsonCreator public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest( + Optional xGustoAPIVersion, DocumentType documentType, - String requestUuid, - Optional xGustoAPIVersion) { + String requestUuid) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(documentType, "documentType"); Utils.checkNotNull(requestUuid, "requestUuid"); - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; this.documentType = documentType; this.requestUuid = requestUuid; - this.xGustoAPIVersion = xGustoAPIVersion; } public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest( DocumentType documentType, String requestUuid) { - this(documentType, requestUuid, Optional.empty()); + this(Optional.empty(), documentType, requestUuid); + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; } /** @@ -74,21 +84,33 @@ public String requestUuid() { return requestUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional xGustoAPIVersion() { - return (Optional) xGustoAPIVersion; + public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest withXGustoAPIVersion(GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; } - public static Builder builder() { - return new Builder(); - } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } /** * The type of document being generated @@ -109,29 +131,6 @@ public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest withRequestUuid(Str return this; } - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest withXGustoAPIVersion(VersionHeader xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); - return this; - } - - - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } - @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -142,79 +141,79 @@ public boolean equals(java.lang.Object o) { } GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest other = (GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest) o; return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.documentType, other.documentType) && - Utils.enhancedDeepEquals(this.requestUuid, other.requestUuid) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.requestUuid, other.requestUuid); } @Override public int hashCode() { return Utils.enhancedHash( - documentType, requestUuid, xGustoAPIVersion); + xGustoAPIVersion, documentType, requestUuid); } @Override public String toString() { return Utils.toString(GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, "documentType", documentType, - "requestUuid", requestUuid, - "xGustoAPIVersion", xGustoAPIVersion); + "requestUuid", requestUuid); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { + private Optional xGustoAPIVersion; + private DocumentType documentType; private String requestUuid; - private Optional xGustoAPIVersion; - private Builder() { // force use of static builder() method } /** - * The type of document being generated + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - public Builder documentType(DocumentType documentType) { - Utils.checkNotNull(documentType, "documentType"); - this.documentType = documentType; + public Builder xGustoAPIVersion(GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); return this; } - /** - * The UUID of the request to generate a document. Generate document endpoints return request_uuids to - * be used with the GET generated document endpoint. + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - public Builder requestUuid(String requestUuid) { - Utils.checkNotNull(requestUuid, "requestUuid"); - this.requestUuid = requestUuid; + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; return this; } /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * The type of document being generated */ - public Builder xGustoAPIVersion(VersionHeader xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + public Builder documentType(DocumentType documentType) { + Utils.checkNotNull(documentType, "documentType"); + this.documentType = documentType; return this; } + /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * The UUID of the request to generate a document. Generate document endpoints return request_uuids to + * be used with the GET generated document endpoint. */ - public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; + public Builder requestUuid(String requestUuid) { + Utils.checkNotNull(requestUuid, "requestUuid"); + this.requestUuid = requestUuid; return this; } @@ -224,14 +223,14 @@ public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest build() { } return new GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest( - documentType, requestUuid, xGustoAPIVersion); + xGustoAPIVersion, documentType, requestUuid); } - private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = new LazySingletonValue<>( "X-Gusto-API-Version", "\"2025-06-15\"", - new TypeReference>() {}); + new TypeReference>() {}); } } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder.java index 2ccf9b6cd..f214712fc 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder.java @@ -7,7 +7,6 @@ import com.fasterxml.jackson.core.type.TypeReference; import com.gusto.embedded_api.SDKConfiguration; -import com.gusto.embedded_api.models.components.VersionHeader; import com.gusto.embedded_api.operations.GetV1GeneratedDocumentsDocumentTypeRequestUuid; import com.gusto.embedded_api.utils.Headers; import com.gusto.embedded_api.utils.LazySingletonValue; @@ -17,18 +16,30 @@ public class GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder { - private DocumentType documentType; - private String requestUuid; - private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", - new TypeReference>() {}); + new TypeReference>() {}); + private DocumentType documentType; + private String requestUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } + + public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder xGustoAPIVersion(GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder documentType(DocumentType documentType) { Utils.checkNotNull(documentType, "documentType"); @@ -41,18 +52,6 @@ public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder requestUuid( this.requestUuid = requestUuid; return this; } - - public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder xGustoAPIVersion(VersionHeader xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); - return this; - } - - public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } private GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest buildRequest() { @@ -60,9 +59,9 @@ private GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest request = new GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest(documentType, - requestUuid, - xGustoAPIVersion); + GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest request = new GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest(xGustoAPIVersion, + documentType, + requestUuid); return request; } @@ -76,9 +75,9 @@ public GetV1GeneratedDocumentsDocumentTypeRequestUuidResponse call() { return operation.handleResponse(operation.doRequest(request)); } - private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = new LazySingletonValue<>( "xGustoAPIVersion", "\"2025-06-15\"", - new TypeReference>() {}); + new TypeReference>() {}); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1HomeAddressesHomeAddressUuidRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1HomeAddressesHomeAddressUuidRequest.java index 506c9b41f..e1cb9498e 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1HomeAddressesHomeAddressUuidRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1HomeAddressesHomeAddressUuidRequest.java @@ -16,12 +16,6 @@ public class GetV1HomeAddressesHomeAddressUuidRequest { - /** - * The UUID of the home address - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=home_address_uuid") - private String homeAddressUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class GetV1HomeAddressesHomeAddressUuidRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the home address + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=home_address_uuid") + private String homeAddressUuid; + @JsonCreator public GetV1HomeAddressesHomeAddressUuidRequest( - String homeAddressUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(homeAddressUuid, "homeAddressUuid"); + Optional xGustoAPIVersion, + String homeAddressUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.homeAddressUuid = homeAddressUuid; + Utils.checkNotNull(homeAddressUuid, "homeAddressUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.homeAddressUuid = homeAddressUuid; } public GetV1HomeAddressesHomeAddressUuidRequest( String homeAddressUuid) { - this(homeAddressUuid, Optional.empty()); - } - - /** - * The UUID of the home address - */ - @JsonIgnore - public String homeAddressUuid() { - return homeAddressUuid; + this(Optional.empty(), homeAddressUuid); } /** @@ -64,20 +56,19 @@ public Optional xGustoA return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the home address */ - public GetV1HomeAddressesHomeAddressUuidRequest withHomeAddressUuid(String homeAddressUuid) { - Utils.checkNotNull(homeAddressUuid, "homeAddressUuid"); - this.homeAddressUuid = homeAddressUuid; - return this; + @JsonIgnore + public String homeAddressUuid() { + return homeAddressUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetV1HomeAddressesHomeAddressUuidRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String homeAddressUuid; + private Builder() { // force use of static builder() method } - /** - * The UUID of the home address - */ - public Builder homeAddressUuid(String homeAddressUuid) { - Utils.checkNotNull(homeAddressUuid, "homeAddressUuid"); - this.homeAddressUuid = homeAddressUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String homeAddressUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1HomeAddressesHomeAddressUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1HomeAddressesHomeAddressUuidRequestBuilder homeAddressUuid(String homeAddressUuid) { - Utils.checkNotNull(homeAddressUuid, "homeAddressUuid"); - this.homeAddressUuid = homeAddressUuid; - return this; - } public GetV1HomeAddressesHomeAddressUuidRequestBuilder xGustoAPIVersion(GetV1HomeAddressesHomeAddressUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public GetV1HomeAddressesHomeAddressUuidRequestBuilder xGustoAPIVersion(Optional return this; } + public GetV1HomeAddressesHomeAddressUuidRequestBuilder homeAddressUuid(String homeAddressUuid) { + Utils.checkNotNull(homeAddressUuid, "homeAddressUuid"); + this.homeAddressUuid = homeAddressUuid; + return this; + } + private GetV1HomeAddressesHomeAddressUuidRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1HomeAddressesHomeAddressUuidRequest request = new GetV1HomeAddressesHomeAddressUuidRequest(homeAddressUuid, - xGustoAPIVersion); + GetV1HomeAddressesHomeAddressUuidRequest request = new GetV1HomeAddressesHomeAddressUuidRequest(xGustoAPIVersion, + homeAddressUuid); return request; } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1JobsJobIdRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1JobsJobIdRequest.java index 3e272fbff..08d88218a 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1JobsJobIdRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1JobsJobIdRequest.java @@ -16,6 +16,14 @@ public class GetV1JobsJobIdRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + /** * The UUID of the job */ @@ -30,30 +38,33 @@ public class GetV1JobsJobIdRequest { @SpeakeasyMetadata("queryParam:style=form,explode=true,name=include") private Optional include; - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; - @JsonCreator public GetV1JobsJobIdRequest( + Optional xGustoAPIVersion, String jobId, - Optional include, - Optional xGustoAPIVersion) { + Optional include) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(jobId, "jobId"); Utils.checkNotNull(include, "include"); - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; this.jobId = jobId; this.include = include; - this.xGustoAPIVersion = xGustoAPIVersion; } public GetV1JobsJobIdRequest( String jobId) { - this(jobId, Optional.empty(), Optional.empty()); + this(Optional.empty(), jobId, Optional.empty()); + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; } /** @@ -75,21 +86,33 @@ public Optional include() { return (Optional) include; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional xGustoAPIVersion() { - return (Optional) xGustoAPIVersion; + public GetV1JobsJobIdRequest withXGustoAPIVersion(GetV1JobsJobIdHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; } - public static Builder builder() { - return new Builder(); - } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetV1JobsJobIdRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } /** * The UUID of the job @@ -123,29 +146,6 @@ public GetV1JobsJobIdRequest withInclude(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } - @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -156,39 +156,62 @@ public boolean equals(java.lang.Object o) { } GetV1JobsJobIdRequest other = (GetV1JobsJobIdRequest) o; return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.jobId, other.jobId) && - Utils.enhancedDeepEquals(this.include, other.include) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.include, other.include); } @Override public int hashCode() { return Utils.enhancedHash( - jobId, include, xGustoAPIVersion); + xGustoAPIVersion, jobId, include); } @Override public String toString() { return Utils.toString(GetV1JobsJobIdRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, "jobId", jobId, - "include", include, - "xGustoAPIVersion", xGustoAPIVersion); + "include", include); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { + private Optional xGustoAPIVersion; + private String jobId; private Optional include = Optional.empty(); - private Optional xGustoAPIVersion; - private Builder() { // force use of static builder() method } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(GetV1JobsJobIdHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + /** * The UUID of the job */ @@ -221,36 +244,13 @@ public Builder include(Optional inclu return this; } - - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public Builder xGustoAPIVersion(GetV1JobsJobIdHeaderXGustoAPIVersion xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); - return this; - } - - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } - public GetV1JobsJobIdRequest build() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } return new GetV1JobsJobIdRequest( - jobId, include, xGustoAPIVersion); + xGustoAPIVersion, jobId, include); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1JobsJobIdRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1JobsJobIdRequestBuilder.java index 90d3bb55b..7dd9d4eec 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1JobsJobIdRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1JobsJobIdRequestBuilder.java @@ -16,18 +16,30 @@ public class GetV1JobsJobIdRequestBuilder { - private String jobId; - private Optional include = Optional.empty(); private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String jobId; + private Optional include = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1JobsJobIdRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } + + public GetV1JobsJobIdRequestBuilder xGustoAPIVersion(GetV1JobsJobIdHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetV1JobsJobIdRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } public GetV1JobsJobIdRequestBuilder jobId(String jobId) { Utils.checkNotNull(jobId, "jobId"); @@ -46,18 +58,6 @@ public GetV1JobsJobIdRequestBuilder include(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } private GetV1JobsJobIdRequest buildRequest() { @@ -65,9 +65,9 @@ private GetV1JobsJobIdRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1JobsJobIdRequest request = new GetV1JobsJobIdRequest(jobId, - include, - xGustoAPIVersion); + GetV1JobsJobIdRequest request = new GetV1JobsJobIdRequest(xGustoAPIVersion, + jobId, + include); return request; } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1LocationsLocationUuidMinimumWagesRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1LocationsLocationUuidMinimumWagesRequest.java index 7b1b49e66..6841e311a 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1LocationsLocationUuidMinimumWagesRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1LocationsLocationUuidMinimumWagesRequest.java @@ -16,12 +16,6 @@ public class GetV1LocationsLocationUuidMinimumWagesRequest { - /** - * The UUID of the location - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=location_uuid") - private String locationUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,34 +24,32 @@ public class GetV1LocationsLocationUuidMinimumWagesRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the location + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=location_uuid") + private String locationUuid; + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=effective_date") private Optional effectiveDate; @JsonCreator public GetV1LocationsLocationUuidMinimumWagesRequest( - String locationUuid, Optional xGustoAPIVersion, + String locationUuid, Optional effectiveDate) { - Utils.checkNotNull(locationUuid, "locationUuid"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(locationUuid, "locationUuid"); Utils.checkNotNull(effectiveDate, "effectiveDate"); - this.locationUuid = locationUuid; this.xGustoAPIVersion = xGustoAPIVersion; + this.locationUuid = locationUuid; this.effectiveDate = effectiveDate; } public GetV1LocationsLocationUuidMinimumWagesRequest( String locationUuid) { - this(locationUuid, Optional.empty(), Optional.empty()); - } - - /** - * The UUID of the location - */ - @JsonIgnore - public String locationUuid() { - return locationUuid; + this(Optional.empty(), locationUuid, Optional.empty()); } /** @@ -71,6 +63,14 @@ public Optional xG return (Optional) xGustoAPIVersion; } + /** + * The UUID of the location + */ + @JsonIgnore + public String locationUuid() { + return locationUuid; + } + @JsonIgnore public Optional effectiveDate() { return effectiveDate; @@ -81,15 +81,6 @@ public static Builder builder() { } - /** - * The UUID of the location - */ - public GetV1LocationsLocationUuidMinimumWagesRequest withLocationUuid(String locationUuid) { - Utils.checkNotNull(locationUuid, "locationUuid"); - this.locationUuid = locationUuid; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -113,6 +104,15 @@ public GetV1LocationsLocationUuidMinimumWagesRequest withXGustoAPIVersion(Option return this; } + /** + * The UUID of the location + */ + public GetV1LocationsLocationUuidMinimumWagesRequest withLocationUuid(String locationUuid) { + Utils.checkNotNull(locationUuid, "locationUuid"); + this.locationUuid = locationUuid; + return this; + } + public GetV1LocationsLocationUuidMinimumWagesRequest withEffectiveDate(String effectiveDate) { Utils.checkNotNull(effectiveDate, "effectiveDate"); this.effectiveDate = Optional.ofNullable(effectiveDate); @@ -136,32 +136,32 @@ public boolean equals(java.lang.Object o) { } GetV1LocationsLocationUuidMinimumWagesRequest other = (GetV1LocationsLocationUuidMinimumWagesRequest) o; return - Utils.enhancedDeepEquals(this.locationUuid, other.locationUuid) && Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.locationUuid, other.locationUuid) && Utils.enhancedDeepEquals(this.effectiveDate, other.effectiveDate); } @Override public int hashCode() { return Utils.enhancedHash( - locationUuid, xGustoAPIVersion, effectiveDate); + xGustoAPIVersion, locationUuid, effectiveDate); } @Override public String toString() { return Utils.toString(GetV1LocationsLocationUuidMinimumWagesRequest.class, - "locationUuid", locationUuid, "xGustoAPIVersion", xGustoAPIVersion, + "locationUuid", locationUuid, "effectiveDate", effectiveDate); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String locationUuid; - private Optional xGustoAPIVersion; + private String locationUuid; + private Optional effectiveDate = Optional.empty(); private Builder() { @@ -169,16 +169,6 @@ private Builder() { } - /** - * The UUID of the location - */ - public Builder locationUuid(String locationUuid) { - Utils.checkNotNull(locationUuid, "locationUuid"); - this.locationUuid = locationUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -202,6 +192,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String locationUuid; private Optional effectiveDate = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -28,12 +28,6 @@ public class GetV1LocationsLocationUuidMinimumWagesRequestBuilder { public GetV1LocationsLocationUuidMinimumWagesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1LocationsLocationUuidMinimumWagesRequestBuilder locationUuid(String locationUuid) { - Utils.checkNotNull(locationUuid, "locationUuid"); - this.locationUuid = locationUuid; - return this; - } public GetV1LocationsLocationUuidMinimumWagesRequestBuilder xGustoAPIVersion(GetV1LocationsLocationUuidMinimumWagesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,6 +40,12 @@ public GetV1LocationsLocationUuidMinimumWagesRequestBuilder xGustoAPIVersion(Opt this.xGustoAPIVersion = xGustoAPIVersion; return this; } + + public GetV1LocationsLocationUuidMinimumWagesRequestBuilder locationUuid(String locationUuid) { + Utils.checkNotNull(locationUuid, "locationUuid"); + this.locationUuid = locationUuid; + return this; + } public GetV1LocationsLocationUuidMinimumWagesRequestBuilder effectiveDate(String effectiveDate) { Utils.checkNotNull(effectiveDate, "effectiveDate"); @@ -65,8 +65,8 @@ private GetV1LocationsLocationUuidMinimumWagesRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1LocationsLocationUuidMinimumWagesRequest request = new GetV1LocationsLocationUuidMinimumWagesRequest(locationUuid, - xGustoAPIVersion, + GetV1LocationsLocationUuidMinimumWagesRequest request = new GetV1LocationsLocationUuidMinimumWagesRequest(xGustoAPIVersion, + locationUuid, effectiveDate); return request; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest.java index d57dcf627..c51465db9 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest.java @@ -16,12 +16,6 @@ public class GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest { - /** - * The UUID of the company - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") - private String companyUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") + private String companyUuid; + @JsonCreator public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest( - String companyUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(companyUuid, "companyUuid"); + Optional xGustoAPIVersion, + String companyUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.companyUuid = companyUuid; + Utils.checkNotNull(companyUuid, "companyUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.companyUuid = companyUuid; } public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest( String companyUuid) { - this(companyUuid, Optional.empty()); - } - - /** - * The UUID of the company - */ - @JsonIgnore - public String companyUuid() { - return companyUuid; + this(Optional.empty(), companyUuid); } /** @@ -64,20 +56,19 @@ public Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the company */ - public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest withCompanyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; + @JsonIgnore + public String companyUuid() { + return companyUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest withXGus return this; } + /** + * The UUID of the company + */ + public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -111,45 +111,35 @@ public boolean equals(java.lang.Object o) { } GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest other = (GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest) o; return - Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid); } @Override public int hashCode() { return Utils.enhancedHash( - companyUuid, xGustoAPIVersion); + xGustoAPIVersion, companyUuid); } @Override public String toString() { return Utils.toString(GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest.class, - "companyUuid", companyUuid, - "xGustoAPIVersion", xGustoAPIVersion); + "xGustoAPIVersion", xGustoAPIVersion, + "companyUuid", companyUuid); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String companyUuid; - private Optional xGustoAPIVersion; + private String companyUuid; + private Builder() { // force use of static builder() method } - /** - * The UUID of the company - */ - public Builder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String companyUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder xGustoAPIVersion(GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder x return this; } + public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + private GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest request = new GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest(companyUuid, - xGustoAPIVersion); + GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest request = new GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest(xGustoAPIVersion, + companyUuid); return request; } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidRequest.java index 96929b148..6a7da7912 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidRequest.java @@ -9,6 +9,7 @@ import com.gusto.embedded_api.utils.LazySingletonValue; import com.gusto.embedded_api.utils.SpeakeasyMetadata; import com.gusto.embedded_api.utils.Utils; +import java.lang.Long; import java.lang.Override; import java.lang.String; import java.lang.SuppressWarnings; @@ -16,6 +17,14 @@ public class GetV1PaymentReceiptsPayrollsPayrollUuidRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + /** * The UUID of the payroll */ @@ -23,34 +32,38 @@ public class GetV1PaymentReceiptsPayrollsPayrollUuidRequest { private String payrollUuid; /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. */ - @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=page") + private Optional page; + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=per") + private Optional per; @JsonCreator public GetV1PaymentReceiptsPayrollsPayrollUuidRequest( + Optional xGustoAPIVersion, String payrollUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(payrollUuid, "payrollUuid"); + Optional page, + Optional per) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.payrollUuid = payrollUuid; + Utils.checkNotNull(payrollUuid, "payrollUuid"); + Utils.checkNotNull(page, "page"); + Utils.checkNotNull(per, "per"); this.xGustoAPIVersion = xGustoAPIVersion; + this.payrollUuid = payrollUuid; + this.page = page; + this.per = per; } public GetV1PaymentReceiptsPayrollsPayrollUuidRequest( String payrollUuid) { - this(payrollUuid, Optional.empty()); - } - - /** - * The UUID of the payroll - */ - @JsonIgnore - public String payrollUuid() { - return payrollUuid; + this(Optional.empty(), payrollUuid, Optional.empty(), + Optional.empty()); } /** @@ -64,20 +77,36 @@ public Optional x return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); + /** + * The UUID of the payroll + */ + @JsonIgnore + public String payrollUuid() { + return payrollUuid; } + /** + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. + */ + @JsonIgnore + public Optional page() { + return page; + } /** - * The UUID of the payroll + * Number of objects per page. For majority of endpoints will default to 25 */ - public GetV1PaymentReceiptsPayrollsPayrollUuidRequest withPayrollUuid(String payrollUuid) { - Utils.checkNotNull(payrollUuid, "payrollUuid"); - this.payrollUuid = payrollUuid; - return this; + @JsonIgnore + public Optional per() { + return per; + } + + public static Builder builder() { + return new Builder(); } + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +130,55 @@ public GetV1PaymentReceiptsPayrollsPayrollUuidRequest withXGustoAPIVersion(Optio return this; } + /** + * The UUID of the payroll + */ + public GetV1PaymentReceiptsPayrollsPayrollUuidRequest withPayrollUuid(String payrollUuid) { + Utils.checkNotNull(payrollUuid, "payrollUuid"); + this.payrollUuid = payrollUuid; + return this; + } + + /** + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. + */ + public GetV1PaymentReceiptsPayrollsPayrollUuidRequest withPage(long page) { + Utils.checkNotNull(page, "page"); + this.page = Optional.ofNullable(page); + return this; + } + + + /** + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. + */ + public GetV1PaymentReceiptsPayrollsPayrollUuidRequest withPage(Optional page) { + Utils.checkNotNull(page, "page"); + this.page = page; + return this; + } + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + public GetV1PaymentReceiptsPayrollsPayrollUuidRequest withPer(long per) { + Utils.checkNotNull(per, "per"); + this.per = Optional.ofNullable(per); + return this; + } + + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + public GetV1PaymentReceiptsPayrollsPayrollUuidRequest withPer(Optional per) { + Utils.checkNotNull(per, "per"); + this.per = per; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -111,45 +189,44 @@ public boolean equals(java.lang.Object o) { } GetV1PaymentReceiptsPayrollsPayrollUuidRequest other = (GetV1PaymentReceiptsPayrollsPayrollUuidRequest) o; return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.payrollUuid, other.payrollUuid) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.page, other.page) && + Utils.enhancedDeepEquals(this.per, other.per); } @Override public int hashCode() { return Utils.enhancedHash( - payrollUuid, xGustoAPIVersion); + xGustoAPIVersion, payrollUuid, page, + per); } @Override public String toString() { return Utils.toString(GetV1PaymentReceiptsPayrollsPayrollUuidRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, "payrollUuid", payrollUuid, - "xGustoAPIVersion", xGustoAPIVersion); + "page", page, + "per", per); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { + private Optional xGustoAPIVersion; + private String payrollUuid; - private Optional xGustoAPIVersion; + private Optional page = Optional.empty(); + + private Optional per = Optional.empty(); private Builder() { // force use of static builder() method } - /** - * The UUID of the payroll - */ - public Builder payrollUuid(String payrollUuid) { - Utils.checkNotNull(payrollUuid, "payrollUuid"); - this.payrollUuid = payrollUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +249,64 @@ public Builder xGustoAPIVersion(Optional page) { + Utils.checkNotNull(page, "page"); + this.page = page; + return this; + } + + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + public Builder per(long per) { + Utils.checkNotNull(per, "per"); + this.per = Optional.ofNullable(per); + return this; + } + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + public Builder per(Optional per) { + Utils.checkNotNull(per, "per"); + this.per = per; + return this; + } + public GetV1PaymentReceiptsPayrollsPayrollUuidRequest build() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } return new GetV1PaymentReceiptsPayrollsPayrollUuidRequest( - payrollUuid, xGustoAPIVersion); + xGustoAPIVersion, payrollUuid, page, + per); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder.java index f2c489dff..c1f7b4ccc 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder.java @@ -11,28 +11,25 @@ import com.gusto.embedded_api.utils.Headers; import com.gusto.embedded_api.utils.LazySingletonValue; import com.gusto.embedded_api.utils.Utils; +import java.lang.Long; import java.lang.String; import java.util.Optional; public class GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder { - private String payrollUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String payrollUuid; + private Optional page = Optional.empty(); + private Optional per = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder payrollUuid(String payrollUuid) { - Utils.checkNotNull(payrollUuid, "payrollUuid"); - this.payrollUuid = payrollUuid; - return this; - } public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder xGustoAPIVersion(GetV1PaymentReceiptsPayrollsPayrollUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +43,46 @@ public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder xGustoAPIVersion(Op return this; } + public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder payrollUuid(String payrollUuid) { + Utils.checkNotNull(payrollUuid, "payrollUuid"); + this.payrollUuid = payrollUuid; + return this; + } + + public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder page(long page) { + Utils.checkNotNull(page, "page"); + this.page = Optional.of(page); + return this; + } + + public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder page(Optional page) { + Utils.checkNotNull(page, "page"); + this.page = page; + return this; + } + + public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder per(long per) { + Utils.checkNotNull(per, "per"); + this.per = Optional.of(per); + return this; + } + + public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder per(Optional per) { + Utils.checkNotNull(per, "per"); + this.per = per; + return this; + } + private GetV1PaymentReceiptsPayrollsPayrollUuidRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1PaymentReceiptsPayrollsPayrollUuidRequest request = new GetV1PaymentReceiptsPayrollsPayrollUuidRequest(payrollUuid, - xGustoAPIVersion); + GetV1PaymentReceiptsPayrollsPayrollUuidRequest request = new GetV1PaymentReceiptsPayrollsPayrollUuidRequest(xGustoAPIVersion, + payrollUuid, + page, + per); return request; } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion.java new file mode 100644 index 000000000..3d92510d7 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion + * + *

    Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ +public enum GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion { + TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15("2025-06-15"); + + @JsonValue + private final String value; + + GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion o: GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1PayrollBatchesPayrollBatchUuidRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1PayrollBatchesPayrollBatchUuidRequest.java new file mode 100644 index 000000000..5ce51edcd --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1PayrollBatchesPayrollBatchUuidRequest.java @@ -0,0 +1,191 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api.utils.LazySingletonValue; +import com.gusto.embedded_api.utils.SpeakeasyMetadata; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class GetV1PayrollBatchesPayrollBatchUuidRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + + /** + * The UUID of the payroll cancellation batch returned by `POST /v1/payroll_batches`. + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=payroll_batch_uuid") + private String payrollBatchUuid; + + @JsonCreator + public GetV1PayrollBatchesPayrollBatchUuidRequest( + Optional xGustoAPIVersion, + String payrollBatchUuid) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(payrollBatchUuid, "payrollBatchUuid"); + this.xGustoAPIVersion = xGustoAPIVersion; + this.payrollBatchUuid = payrollBatchUuid; + } + + public GetV1PayrollBatchesPayrollBatchUuidRequest( + String payrollBatchUuid) { + this(Optional.empty(), payrollBatchUuid); + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + + /** + * The UUID of the payroll cancellation batch returned by `POST /v1/payroll_batches`. + */ + @JsonIgnore + public String payrollBatchUuid() { + return payrollBatchUuid; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetV1PayrollBatchesPayrollBatchUuidRequest withXGustoAPIVersion(GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetV1PayrollBatchesPayrollBatchUuidRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + /** + * The UUID of the payroll cancellation batch returned by `POST /v1/payroll_batches`. + */ + public GetV1PayrollBatchesPayrollBatchUuidRequest withPayrollBatchUuid(String payrollBatchUuid) { + Utils.checkNotNull(payrollBatchUuid, "payrollBatchUuid"); + this.payrollBatchUuid = payrollBatchUuid; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetV1PayrollBatchesPayrollBatchUuidRequest other = (GetV1PayrollBatchesPayrollBatchUuidRequest) o; + return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.payrollBatchUuid, other.payrollBatchUuid); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + xGustoAPIVersion, payrollBatchUuid); + } + + @Override + public String toString() { + return Utils.toString(GetV1PayrollBatchesPayrollBatchUuidRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, + "payrollBatchUuid", payrollBatchUuid); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional xGustoAPIVersion; + + private String payrollBatchUuid; + + private Builder() { + // force use of static builder() method + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + + /** + * The UUID of the payroll cancellation batch returned by `POST /v1/payroll_batches`. + */ + public Builder payrollBatchUuid(String payrollBatchUuid) { + Utils.checkNotNull(payrollBatchUuid, "payrollBatchUuid"); + this.payrollBatchUuid = payrollBatchUuid; + return this; + } + + public GetV1PayrollBatchesPayrollBatchUuidRequest build() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + return new GetV1PayrollBatchesPayrollBatchUuidRequest( + xGustoAPIVersion, payrollBatchUuid); + } + + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "X-Gusto-API-Version", + "\"2025-06-15\"", + new TypeReference>() {}); + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1PayrollBatchesPayrollBatchUuidRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1PayrollBatchesPayrollBatchUuidRequestBuilder.java new file mode 100644 index 000000000..e3010fe16 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1PayrollBatchesPayrollBatchUuidRequestBuilder.java @@ -0,0 +1,82 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import static com.gusto.embedded_api.operations.Operations.RequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api.SDKConfiguration; +import com.gusto.embedded_api.operations.GetV1PayrollBatchesPayrollBatchUuid; +import com.gusto.embedded_api.utils.Headers; +import com.gusto.embedded_api.utils.LazySingletonValue; +import com.gusto.embedded_api.utils.Utils; +import java.lang.String; +import java.util.Optional; + +public class GetV1PayrollBatchesPayrollBatchUuidRequestBuilder { + + private GetV1PayrollBatchesPayrollBatchUuidSecurity security; + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2025-06-15\"", + new TypeReference>() {}); + private String payrollBatchUuid; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public GetV1PayrollBatchesPayrollBatchUuidRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public GetV1PayrollBatchesPayrollBatchUuidRequestBuilder security(GetV1PayrollBatchesPayrollBatchUuidSecurity security) { + Utils.checkNotNull(security, "security"); + this.security = security; + return this; + } + + public GetV1PayrollBatchesPayrollBatchUuidRequestBuilder xGustoAPIVersion(GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetV1PayrollBatchesPayrollBatchUuidRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public GetV1PayrollBatchesPayrollBatchUuidRequestBuilder payrollBatchUuid(String payrollBatchUuid) { + Utils.checkNotNull(payrollBatchUuid, "payrollBatchUuid"); + this.payrollBatchUuid = payrollBatchUuid; + return this; + } + + + private GetV1PayrollBatchesPayrollBatchUuidRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + GetV1PayrollBatchesPayrollBatchUuidRequest request = new GetV1PayrollBatchesPayrollBatchUuidRequest(xGustoAPIVersion, + payrollBatchUuid); + + return request; + } + + public GetV1PayrollBatchesPayrollBatchUuidResponse call() { + + RequestOperation operation + = new GetV1PayrollBatchesPayrollBatchUuid.Sync(sdkConfiguration, security, _headers); + GetV1PayrollBatchesPayrollBatchUuidRequest request = buildRequest(); + + return operation.handleResponse(operation.doRequest(request)); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2025-06-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1PayrollBatchesPayrollBatchUuidResponse.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1PayrollBatchesPayrollBatchUuidResponse.java new file mode 100644 index 000000000..e5deae8ce --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1PayrollBatchesPayrollBatchUuidResponse.java @@ -0,0 +1,253 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api.models.components.PayrollBatchResults; +import com.gusto.embedded_api.utils.Response; +import com.gusto.embedded_api.utils.Utils; +import java.io.InputStream; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.Optional; + + +public class GetV1PayrollBatchesPayrollBatchUuidResponse implements Response { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * successful + */ + private Optional payrollBatchResults; + + @JsonCreator + public GetV1PayrollBatchesPayrollBatchUuidResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional payrollBatchResults) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(payrollBatchResults, "payrollBatchResults"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.payrollBatchResults = payrollBatchResults; + } + + public GetV1PayrollBatchesPayrollBatchUuidResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * successful + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional payrollBatchResults() { + return (Optional) payrollBatchResults; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public GetV1PayrollBatchesPayrollBatchUuidResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public GetV1PayrollBatchesPayrollBatchUuidResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public GetV1PayrollBatchesPayrollBatchUuidResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * successful + */ + public GetV1PayrollBatchesPayrollBatchUuidResponse withPayrollBatchResults(PayrollBatchResults payrollBatchResults) { + Utils.checkNotNull(payrollBatchResults, "payrollBatchResults"); + this.payrollBatchResults = Optional.ofNullable(payrollBatchResults); + return this; + } + + + /** + * successful + */ + public GetV1PayrollBatchesPayrollBatchUuidResponse withPayrollBatchResults(Optional payrollBatchResults) { + Utils.checkNotNull(payrollBatchResults, "payrollBatchResults"); + this.payrollBatchResults = payrollBatchResults; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetV1PayrollBatchesPayrollBatchUuidResponse other = (GetV1PayrollBatchesPayrollBatchUuidResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.payrollBatchResults, other.payrollBatchResults); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + payrollBatchResults); + } + + @Override + public String toString() { + return Utils.toString(GetV1PayrollBatchesPayrollBatchUuidResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "payrollBatchResults", payrollBatchResults); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional payrollBatchResults = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * successful + */ + public Builder payrollBatchResults(PayrollBatchResults payrollBatchResults) { + Utils.checkNotNull(payrollBatchResults, "payrollBatchResults"); + this.payrollBatchResults = Optional.ofNullable(payrollBatchResults); + return this; + } + + /** + * successful + */ + public Builder payrollBatchResults(Optional payrollBatchResults) { + Utils.checkNotNull(payrollBatchResults, "payrollBatchResults"); + this.payrollBatchResults = payrollBatchResults; + return this; + } + + public GetV1PayrollBatchesPayrollBatchUuidResponse build() { + + return new GetV1PayrollBatchesPayrollBatchUuidResponse( + contentType, statusCode, rawResponse, + payrollBatchResults); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1PayrollBatchesPayrollBatchUuidSecurity.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1PayrollBatchesPayrollBatchUuidSecurity.java new file mode 100644 index 000000000..e94f693dd --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1PayrollBatchesPayrollBatchUuidSecurity.java @@ -0,0 +1,91 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api.utils.HasSecurity; +import com.gusto.embedded_api.utils.SpeakeasyMetadata; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Override; +import java.lang.String; + + +public class GetV1PayrollBatchesPayrollBatchUuidSecurity implements HasSecurity { + + @SpeakeasyMetadata("security:scheme=true,type=http,subtype=bearer,name=Authorization") + private String systemAccessAuth; + + @JsonCreator + public GetV1PayrollBatchesPayrollBatchUuidSecurity( + String systemAccessAuth) { + Utils.checkNotNull(systemAccessAuth, "systemAccessAuth"); + this.systemAccessAuth = systemAccessAuth; + } + + @JsonIgnore + public String systemAccessAuth() { + return systemAccessAuth; + } + + public static Builder builder() { + return new Builder(); + } + + + public GetV1PayrollBatchesPayrollBatchUuidSecurity withSystemAccessAuth(String systemAccessAuth) { + Utils.checkNotNull(systemAccessAuth, "systemAccessAuth"); + this.systemAccessAuth = systemAccessAuth; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetV1PayrollBatchesPayrollBatchUuidSecurity other = (GetV1PayrollBatchesPayrollBatchUuidSecurity) o; + return + Utils.enhancedDeepEquals(this.systemAccessAuth, other.systemAccessAuth); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + systemAccessAuth); + } + + @Override + public String toString() { + return Utils.toString(GetV1PayrollBatchesPayrollBatchUuidSecurity.class, + "systemAccessAuth", systemAccessAuth); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String systemAccessAuth; + + private Builder() { + // force use of static builder() method + } + + + public Builder systemAccessAuth(String systemAccessAuth) { + Utils.checkNotNull(systemAccessAuth, "systemAccessAuth"); + this.systemAccessAuth = systemAccessAuth; + return this; + } + + public GetV1PayrollBatchesPayrollBatchUuidSecurity build() { + + return new GetV1PayrollBatchesPayrollBatchUuidSecurity( + systemAccessAuth); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1PayrollDigestsPayrollDigestUuidRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1PayrollDigestsPayrollDigestUuidRequest.java index f9578c3a3..4b4f6976e 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1PayrollDigestsPayrollDigestUuidRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1PayrollDigestsPayrollDigestUuidRequest.java @@ -16,12 +16,6 @@ public class GetV1PayrollDigestsPayrollDigestUuidRequest { - /** - * The UUID of the payroll digest batch returned by `POST /v1/payroll_digests`. - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=payroll_digest_uuid") - private String payrollDigestUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class GetV1PayrollDigestsPayrollDigestUuidRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the payroll digest batch returned by `POST /v1/payroll_digests`. + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=payroll_digest_uuid") + private String payrollDigestUuid; + @JsonCreator public GetV1PayrollDigestsPayrollDigestUuidRequest( - String payrollDigestUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(payrollDigestUuid, "payrollDigestUuid"); + Optional xGustoAPIVersion, + String payrollDigestUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.payrollDigestUuid = payrollDigestUuid; + Utils.checkNotNull(payrollDigestUuid, "payrollDigestUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.payrollDigestUuid = payrollDigestUuid; } public GetV1PayrollDigestsPayrollDigestUuidRequest( String payrollDigestUuid) { - this(payrollDigestUuid, Optional.empty()); - } - - /** - * The UUID of the payroll digest batch returned by `POST /v1/payroll_digests`. - */ - @JsonIgnore - public String payrollDigestUuid() { - return payrollDigestUuid; + this(Optional.empty(), payrollDigestUuid); } /** @@ -64,20 +56,19 @@ public Optional xGus return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the payroll digest batch returned by `POST /v1/payroll_digests`. */ - public GetV1PayrollDigestsPayrollDigestUuidRequest withPayrollDigestUuid(String payrollDigestUuid) { - Utils.checkNotNull(payrollDigestUuid, "payrollDigestUuid"); - this.payrollDigestUuid = payrollDigestUuid; - return this; + @JsonIgnore + public String payrollDigestUuid() { + return payrollDigestUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetV1PayrollDigestsPayrollDigestUuidRequest withXGustoAPIVersion(Optional return this; } + /** + * The UUID of the payroll digest batch returned by `POST /v1/payroll_digests`. + */ + public GetV1PayrollDigestsPayrollDigestUuidRequest withPayrollDigestUuid(String payrollDigestUuid) { + Utils.checkNotNull(payrollDigestUuid, "payrollDigestUuid"); + this.payrollDigestUuid = payrollDigestUuid; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -111,45 +111,35 @@ public boolean equals(java.lang.Object o) { } GetV1PayrollDigestsPayrollDigestUuidRequest other = (GetV1PayrollDigestsPayrollDigestUuidRequest) o; return - Utils.enhancedDeepEquals(this.payrollDigestUuid, other.payrollDigestUuid) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.payrollDigestUuid, other.payrollDigestUuid); } @Override public int hashCode() { return Utils.enhancedHash( - payrollDigestUuid, xGustoAPIVersion); + xGustoAPIVersion, payrollDigestUuid); } @Override public String toString() { return Utils.toString(GetV1PayrollDigestsPayrollDigestUuidRequest.class, - "payrollDigestUuid", payrollDigestUuid, - "xGustoAPIVersion", xGustoAPIVersion); + "xGustoAPIVersion", xGustoAPIVersion, + "payrollDigestUuid", payrollDigestUuid); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String payrollDigestUuid; - private Optional xGustoAPIVersion; + private String payrollDigestUuid; + private Builder() { // force use of static builder() method } - /** - * The UUID of the payroll digest batch returned by `POST /v1/payroll_digests`. - */ - public Builder payrollDigestUuid(String payrollDigestUuid) { - Utils.checkNotNull(payrollDigestUuid, "payrollDigestUuid"); - this.payrollDigestUuid = payrollDigestUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String payrollDigestUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -34,12 +34,6 @@ public GetV1PayrollDigestsPayrollDigestUuidRequestBuilder security(GetV1PayrollD this.security = security; return this; } - - public GetV1PayrollDigestsPayrollDigestUuidRequestBuilder payrollDigestUuid(String payrollDigestUuid) { - Utils.checkNotNull(payrollDigestUuid, "payrollDigestUuid"); - this.payrollDigestUuid = payrollDigestUuid; - return this; - } public GetV1PayrollDigestsPayrollDigestUuidRequestBuilder xGustoAPIVersion(GetV1PayrollDigestsPayrollDigestUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -53,14 +47,20 @@ public GetV1PayrollDigestsPayrollDigestUuidRequestBuilder xGustoAPIVersion(Optio return this; } + public GetV1PayrollDigestsPayrollDigestUuidRequestBuilder payrollDigestUuid(String payrollDigestUuid) { + Utils.checkNotNull(payrollDigestUuid, "payrollDigestUuid"); + this.payrollDigestUuid = payrollDigestUuid; + return this; + } + private GetV1PayrollDigestsPayrollDigestUuidRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1PayrollDigestsPayrollDigestUuidRequest request = new GetV1PayrollDigestsPayrollDigestUuidRequest(payrollDigestUuid, - xGustoAPIVersion); + GetV1PayrollDigestsPayrollDigestUuidRequest request = new GetV1PayrollDigestsPayrollDigestUuidRequest(xGustoAPIVersion, + payrollDigestUuid); return request; } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1PeopleBatchesPeopleBatchUuidRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1PeopleBatchesPeopleBatchUuidRequest.java index 5c7dfe959..f4ae45441 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1PeopleBatchesPeopleBatchUuidRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1PeopleBatchesPeopleBatchUuidRequest.java @@ -16,12 +16,6 @@ public class GetV1PeopleBatchesPeopleBatchUuidRequest { - /** - * The UUID of the people batch - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=people_batch_uuid") - private String peopleBatchUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class GetV1PeopleBatchesPeopleBatchUuidRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the people batch + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=people_batch_uuid") + private String peopleBatchUuid; + @JsonCreator public GetV1PeopleBatchesPeopleBatchUuidRequest( - String peopleBatchUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(peopleBatchUuid, "peopleBatchUuid"); + Optional xGustoAPIVersion, + String peopleBatchUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.peopleBatchUuid = peopleBatchUuid; + Utils.checkNotNull(peopleBatchUuid, "peopleBatchUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.peopleBatchUuid = peopleBatchUuid; } public GetV1PeopleBatchesPeopleBatchUuidRequest( String peopleBatchUuid) { - this(peopleBatchUuid, Optional.empty()); - } - - /** - * The UUID of the people batch - */ - @JsonIgnore - public String peopleBatchUuid() { - return peopleBatchUuid; + this(Optional.empty(), peopleBatchUuid); } /** @@ -64,20 +56,19 @@ public Optional xGustoA return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the people batch */ - public GetV1PeopleBatchesPeopleBatchUuidRequest withPeopleBatchUuid(String peopleBatchUuid) { - Utils.checkNotNull(peopleBatchUuid, "peopleBatchUuid"); - this.peopleBatchUuid = peopleBatchUuid; - return this; + @JsonIgnore + public String peopleBatchUuid() { + return peopleBatchUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetV1PeopleBatchesPeopleBatchUuidRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String peopleBatchUuid; + private Builder() { // force use of static builder() method } - /** - * The UUID of the people batch - */ - public Builder peopleBatchUuid(String peopleBatchUuid) { - Utils.checkNotNull(peopleBatchUuid, "peopleBatchUuid"); - this.peopleBatchUuid = peopleBatchUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String peopleBatchUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1PeopleBatchesPeopleBatchUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1PeopleBatchesPeopleBatchUuidRequestBuilder peopleBatchUuid(String peopleBatchUuid) { - Utils.checkNotNull(peopleBatchUuid, "peopleBatchUuid"); - this.peopleBatchUuid = peopleBatchUuid; - return this; - } public GetV1PeopleBatchesPeopleBatchUuidRequestBuilder xGustoAPIVersion(GetV1PeopleBatchesPeopleBatchUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public GetV1PeopleBatchesPeopleBatchUuidRequestBuilder xGustoAPIVersion(Optional return this; } + public GetV1PeopleBatchesPeopleBatchUuidRequestBuilder peopleBatchUuid(String peopleBatchUuid) { + Utils.checkNotNull(peopleBatchUuid, "peopleBatchUuid"); + this.peopleBatchUuid = peopleBatchUuid; + return this; + } + private GetV1PeopleBatchesPeopleBatchUuidRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1PeopleBatchesPeopleBatchUuidRequest request = new GetV1PeopleBatchesPeopleBatchUuidRequest(peopleBatchUuid, - xGustoAPIVersion); + GetV1PeopleBatchesPeopleBatchUuidRequest request = new GetV1PeopleBatchesPeopleBatchUuidRequest(xGustoAPIVersion, + peopleBatchUuid); return request; } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1TokenInfoHeaderXGustoAPIVersion.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1TokenInfoHeaderXGustoAPIVersion.java new file mode 100644 index 000000000..301c2b8c9 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1TokenInfoHeaderXGustoAPIVersion.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * GetV1TokenInfoHeaderXGustoAPIVersion + * + *

    Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ +public enum GetV1TokenInfoHeaderXGustoAPIVersion { + TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15("2025-06-15"); + + @JsonValue + private final String value; + + GetV1TokenInfoHeaderXGustoAPIVersion(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (GetV1TokenInfoHeaderXGustoAPIVersion o: GetV1TokenInfoHeaderXGustoAPIVersion.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1TokenInfoRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1TokenInfoRequest.java index 70a8ca091..1e0704233 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1TokenInfoRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1TokenInfoRequest.java @@ -22,11 +22,11 @@ public class GetV1TokenInfoRequest { * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; + private Optional xGustoAPIVersion; @JsonCreator public GetV1TokenInfoRequest( - Optional xGustoAPIVersion) { + Optional xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); this.xGustoAPIVersion = xGustoAPIVersion; } @@ -42,8 +42,8 @@ public GetV1TokenInfoRequest() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional xGustoAPIVersion() { - return (Optional) xGustoAPIVersion; + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; } public static Builder builder() { @@ -56,7 +56,7 @@ public static Builder builder() { * application's [minimum API * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - public GetV1TokenInfoRequest withXGustoAPIVersion(XGustoAPIVersion xGustoAPIVersion) { + public GetV1TokenInfoRequest withXGustoAPIVersion(GetV1TokenInfoHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); return this; @@ -68,7 +68,7 @@ public GetV1TokenInfoRequest withXGustoAPIVersion(XGustoAPIVersion xGustoAPIVers * application's [minimum API * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - public GetV1TokenInfoRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + public GetV1TokenInfoRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); this.xGustoAPIVersion = xGustoAPIVersion; return this; @@ -102,7 +102,7 @@ public String toString() { @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private Optional xGustoAPIVersion; + private Optional xGustoAPIVersion; private Builder() { // force use of static builder() method @@ -114,7 +114,7 @@ private Builder() { * application's [minimum API * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - public Builder xGustoAPIVersion(XGustoAPIVersion xGustoAPIVersion) { + public Builder xGustoAPIVersion(GetV1TokenInfoHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); return this; @@ -125,7 +125,7 @@ public Builder xGustoAPIVersion(XGustoAPIVersion xGustoAPIVersion) { * application's [minimum API * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); this.xGustoAPIVersion = xGustoAPIVersion; return this; @@ -141,10 +141,10 @@ public GetV1TokenInfoRequest build() { } - private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = new LazySingletonValue<>( "X-Gusto-API-Version", "\"2025-06-15\"", - new TypeReference>() {}); + new TypeReference>() {}); } } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1TokenInfoRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1TokenInfoRequestBuilder.java index a4fc4c168..62dca7d17 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1TokenInfoRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1TokenInfoRequestBuilder.java @@ -15,10 +15,10 @@ public class GetV1TokenInfoRequestBuilder { - private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", - new TypeReference>() {}); + new TypeReference>() {}); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -26,13 +26,13 @@ public GetV1TokenInfoRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - public GetV1TokenInfoRequestBuilder xGustoAPIVersion(XGustoAPIVersion xGustoAPIVersion) { + public GetV1TokenInfoRequestBuilder xGustoAPIVersion(GetV1TokenInfoHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); return this; } - public GetV1TokenInfoRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + public GetV1TokenInfoRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); this.xGustoAPIVersion = xGustoAPIVersion; return this; @@ -58,9 +58,9 @@ public GetV1TokenInfoResponse call() { return operation.handleResponse(operation.doRequest(request)); } - private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = new LazySingletonValue<>( "xGustoAPIVersion", "\"2025-06-15\"", - new TypeReference>() {}); + new TypeReference>() {}); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1WebhookSubscriptionUuidRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1WebhookSubscriptionUuidRequest.java index 8518be38a..3378ff184 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1WebhookSubscriptionUuidRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1WebhookSubscriptionUuidRequest.java @@ -16,12 +16,6 @@ public class GetV1WebhookSubscriptionUuidRequest { - /** - * The webhook subscription UUID. - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=webhook_subscription_uuid") - private String webhookSubscriptionUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class GetV1WebhookSubscriptionUuidRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The webhook subscription UUID. + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=webhook_subscription_uuid") + private String webhookSubscriptionUuid; + @JsonCreator public GetV1WebhookSubscriptionUuidRequest( - String webhookSubscriptionUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); + Optional xGustoAPIVersion, + String webhookSubscriptionUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; + Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.webhookSubscriptionUuid = webhookSubscriptionUuid; } public GetV1WebhookSubscriptionUuidRequest( String webhookSubscriptionUuid) { - this(webhookSubscriptionUuid, Optional.empty()); - } - - /** - * The webhook subscription UUID. - */ - @JsonIgnore - public String webhookSubscriptionUuid() { - return webhookSubscriptionUuid; + this(Optional.empty(), webhookSubscriptionUuid); } /** @@ -64,20 +56,19 @@ public Optional xGustoAPIVer return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The webhook subscription UUID. */ - public GetV1WebhookSubscriptionUuidRequest withWebhookSubscriptionUuid(String webhookSubscriptionUuid) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; - return this; + @JsonIgnore + public String webhookSubscriptionUuid() { + return webhookSubscriptionUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetV1WebhookSubscriptionUuidRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String webhookSubscriptionUuid; + private Builder() { // force use of static builder() method } - /** - * The webhook subscription UUID. - */ - public Builder webhookSubscriptionUuid(String webhookSubscriptionUuid) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String webhookSubscriptionUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -34,12 +34,6 @@ public GetV1WebhookSubscriptionUuidRequestBuilder security(GetV1WebhookSubscript this.security = security; return this; } - - public GetV1WebhookSubscriptionUuidRequestBuilder webhookSubscriptionUuid(String webhookSubscriptionUuid) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; - return this; - } public GetV1WebhookSubscriptionUuidRequestBuilder xGustoAPIVersion(GetV1WebhookSubscriptionUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -53,14 +47,20 @@ public GetV1WebhookSubscriptionUuidRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion; + /** + * The webhook subscription UUID. + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=webhook_subscription_uuid") + private String webhookSubscriptionUuid; + @JsonCreator public GetV1WebhookSubscriptionVerificationTokenUuidRequest( - String webhookSubscriptionUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); + Optional xGustoAPIVersion, + String webhookSubscriptionUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; + Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.webhookSubscriptionUuid = webhookSubscriptionUuid; } public GetV1WebhookSubscriptionVerificationTokenUuidRequest( String webhookSubscriptionUuid) { - this(webhookSubscriptionUuid, Optional.empty()); - } - - /** - * The webhook subscription UUID. - */ - @JsonIgnore - public String webhookSubscriptionUuid() { - return webhookSubscriptionUuid; + this(Optional.empty(), webhookSubscriptionUuid); } /** @@ -64,20 +56,19 @@ public Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The webhook subscription UUID. */ - public GetV1WebhookSubscriptionVerificationTokenUuidRequest withWebhookSubscriptionUuid(String webhookSubscriptionUuid) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; - return this; + @JsonIgnore + public String webhookSubscriptionUuid() { + return webhookSubscriptionUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetV1WebhookSubscriptionVerificationTokenUuidRequest withXGustoAPIVersion return this; } + /** + * The webhook subscription UUID. + */ + public GetV1WebhookSubscriptionVerificationTokenUuidRequest withWebhookSubscriptionUuid(String webhookSubscriptionUuid) { + Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); + this.webhookSubscriptionUuid = webhookSubscriptionUuid; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -111,45 +111,35 @@ public boolean equals(java.lang.Object o) { } GetV1WebhookSubscriptionVerificationTokenUuidRequest other = (GetV1WebhookSubscriptionVerificationTokenUuidRequest) o; return - Utils.enhancedDeepEquals(this.webhookSubscriptionUuid, other.webhookSubscriptionUuid) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.webhookSubscriptionUuid, other.webhookSubscriptionUuid); } @Override public int hashCode() { return Utils.enhancedHash( - webhookSubscriptionUuid, xGustoAPIVersion); + xGustoAPIVersion, webhookSubscriptionUuid); } @Override public String toString() { return Utils.toString(GetV1WebhookSubscriptionVerificationTokenUuidRequest.class, - "webhookSubscriptionUuid", webhookSubscriptionUuid, - "xGustoAPIVersion", xGustoAPIVersion); + "xGustoAPIVersion", xGustoAPIVersion, + "webhookSubscriptionUuid", webhookSubscriptionUuid); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String webhookSubscriptionUuid; - private Optional xGustoAPIVersion; + private String webhookSubscriptionUuid; + private Builder() { // force use of static builder() method } - /** - * The webhook subscription UUID. - */ - public Builder webhookSubscriptionUuid(String webhookSubscriptionUuid) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String webhookSubscriptionUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -34,12 +34,6 @@ public GetV1WebhookSubscriptionVerificationTokenUuidRequestBuilder security(GetV this.security = security; return this; } - - public GetV1WebhookSubscriptionVerificationTokenUuidRequestBuilder webhookSubscriptionUuid(String webhookSubscriptionUuid) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; - return this; - } public GetV1WebhookSubscriptionVerificationTokenUuidRequestBuilder xGustoAPIVersion(GetV1WebhookSubscriptionVerificationTokenUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -53,14 +47,20 @@ public GetV1WebhookSubscriptionVerificationTokenUuidRequestBuilder xGustoAPIVers return this; } + public GetV1WebhookSubscriptionVerificationTokenUuidRequestBuilder webhookSubscriptionUuid(String webhookSubscriptionUuid) { + Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); + this.webhookSubscriptionUuid = webhookSubscriptionUuid; + return this; + } + private GetV1WebhookSubscriptionVerificationTokenUuidRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1WebhookSubscriptionVerificationTokenUuidRequest request = new GetV1WebhookSubscriptionVerificationTokenUuidRequest(webhookSubscriptionUuid, - xGustoAPIVersion); + GetV1WebhookSubscriptionVerificationTokenUuidRequest request = new GetV1WebhookSubscriptionVerificationTokenUuidRequest(xGustoAPIVersion, + webhookSubscriptionUuid); return request; } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1WorkAddressesWorkAddressUuidRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1WorkAddressesWorkAddressUuidRequest.java index dd5b5834e..f92d7baf1 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1WorkAddressesWorkAddressUuidRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetV1WorkAddressesWorkAddressUuidRequest.java @@ -16,12 +16,6 @@ public class GetV1WorkAddressesWorkAddressUuidRequest { - /** - * The UUID of the work address - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=work_address_uuid") - private String workAddressUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class GetV1WorkAddressesWorkAddressUuidRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the work address + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=work_address_uuid") + private String workAddressUuid; + @JsonCreator public GetV1WorkAddressesWorkAddressUuidRequest( - String workAddressUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(workAddressUuid, "workAddressUuid"); + Optional xGustoAPIVersion, + String workAddressUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.workAddressUuid = workAddressUuid; + Utils.checkNotNull(workAddressUuid, "workAddressUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.workAddressUuid = workAddressUuid; } public GetV1WorkAddressesWorkAddressUuidRequest( String workAddressUuid) { - this(workAddressUuid, Optional.empty()); - } - - /** - * The UUID of the work address - */ - @JsonIgnore - public String workAddressUuid() { - return workAddressUuid; + this(Optional.empty(), workAddressUuid); } /** @@ -64,20 +56,19 @@ public Optional xGustoA return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the work address */ - public GetV1WorkAddressesWorkAddressUuidRequest withWorkAddressUuid(String workAddressUuid) { - Utils.checkNotNull(workAddressUuid, "workAddressUuid"); - this.workAddressUuid = workAddressUuid; - return this; + @JsonIgnore + public String workAddressUuid() { + return workAddressUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetV1WorkAddressesWorkAddressUuidRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String workAddressUuid; + private Builder() { // force use of static builder() method } - /** - * The UUID of the work address - */ - public Builder workAddressUuid(String workAddressUuid) { - Utils.checkNotNull(workAddressUuid, "workAddressUuid"); - this.workAddressUuid = workAddressUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String workAddressUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1WorkAddressesWorkAddressUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1WorkAddressesWorkAddressUuidRequestBuilder workAddressUuid(String workAddressUuid) { - Utils.checkNotNull(workAddressUuid, "workAddressUuid"); - this.workAddressUuid = workAddressUuid; - return this; - } public GetV1WorkAddressesWorkAddressUuidRequestBuilder xGustoAPIVersion(GetV1WorkAddressesWorkAddressUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public GetV1WorkAddressesWorkAddressUuidRequestBuilder xGustoAPIVersion(Optional return this; } + public GetV1WorkAddressesWorkAddressUuidRequestBuilder workAddressUuid(String workAddressUuid) { + Utils.checkNotNull(workAddressUuid, "workAddressUuid"); + this.workAddressUuid = workAddressUuid; + return this; + } + private GetV1WorkAddressesWorkAddressUuidRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1WorkAddressesWorkAddressUuidRequest request = new GetV1WorkAddressesWorkAddressUuidRequest(workAddressUuid, - xGustoAPIVersion); + GetV1WorkAddressesWorkAddressUuidRequest request = new GetV1WorkAddressesWorkAddressUuidRequest(xGustoAPIVersion, + workAddressUuid); return request; } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetWireInRequestsWireInRequestUuidRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetWireInRequestsWireInRequestUuidRequest.java index 29b6f6cec..f98835222 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetWireInRequestsWireInRequestUuidRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/GetWireInRequestsWireInRequestUuidRequest.java @@ -16,12 +16,6 @@ public class GetWireInRequestsWireInRequestUuidRequest { - /** - * The UUID of the Wire In Request - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=wire_in_request_uuid") - private String wireInRequestUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class GetWireInRequestsWireInRequestUuidRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the Wire In Request + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=wire_in_request_uuid") + private String wireInRequestUuid; + @JsonCreator public GetWireInRequestsWireInRequestUuidRequest( - String wireInRequestUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(wireInRequestUuid, "wireInRequestUuid"); + Optional xGustoAPIVersion, + String wireInRequestUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.wireInRequestUuid = wireInRequestUuid; + Utils.checkNotNull(wireInRequestUuid, "wireInRequestUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.wireInRequestUuid = wireInRequestUuid; } public GetWireInRequestsWireInRequestUuidRequest( String wireInRequestUuid) { - this(wireInRequestUuid, Optional.empty()); - } - - /** - * The UUID of the Wire In Request - */ - @JsonIgnore - public String wireInRequestUuid() { - return wireInRequestUuid; + this(Optional.empty(), wireInRequestUuid); } /** @@ -64,20 +56,19 @@ public Optional xGusto return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the Wire In Request */ - public GetWireInRequestsWireInRequestUuidRequest withWireInRequestUuid(String wireInRequestUuid) { - Utils.checkNotNull(wireInRequestUuid, "wireInRequestUuid"); - this.wireInRequestUuid = wireInRequestUuid; - return this; + @JsonIgnore + public String wireInRequestUuid() { + return wireInRequestUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetWireInRequestsWireInRequestUuidRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String wireInRequestUuid; + private Builder() { // force use of static builder() method } - /** - * The UUID of the Wire In Request - */ - public Builder wireInRequestUuid(String wireInRequestUuid) { - Utils.checkNotNull(wireInRequestUuid, "wireInRequestUuid"); - this.wireInRequestUuid = wireInRequestUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String wireInRequestUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetWireInRequestsWireInRequestUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetWireInRequestsWireInRequestUuidRequestBuilder wireInRequestUuid(String wireInRequestUuid) { - Utils.checkNotNull(wireInRequestUuid, "wireInRequestUuid"); - this.wireInRequestUuid = wireInRequestUuid; - return this; - } public GetWireInRequestsWireInRequestUuidRequestBuilder xGustoAPIVersion(GetWireInRequestsWireInRequestUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public GetWireInRequestsWireInRequestUuidRequestBuilder xGustoAPIVersion(Optiona return this; } + public GetWireInRequestsWireInRequestUuidRequestBuilder wireInRequestUuid(String wireInRequestUuid) { + Utils.checkNotNull(wireInRequestUuid, "wireInRequestUuid"); + this.wireInRequestUuid = wireInRequestUuid; + return this; + } + private GetWireInRequestsWireInRequestUuidRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetWireInRequestsWireInRequestUuidRequest request = new GetWireInRequestsWireInRequestUuidRequest(wireInRequestUuid, - xGustoAPIVersion); + GetWireInRequestsWireInRequestUuidRequest request = new GetWireInRequestsWireInRequestUuidRequest(xGustoAPIVersion, + wireInRequestUuid); return request; } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/Include.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/Include.java index 7bf7d9abe..e4368923e 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/Include.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/Include.java @@ -8,13 +8,15 @@ import java.util.Objects; import java.util.Optional; +/** + * Include + * + *

    Available options: + * - all_benefits: If with_employee_benefits=true, include all effective dated benefits for each + * employee instead of only the current benefits. + */ public enum Include { - ALL_COMPENSATIONS("all_compensations"), - ALL_HOME_ADDRESSES("all_home_addresses"), - COMPANY_NAME("company_name"), - CURRENT_HOME_ADDRESS("current_home_address"), - CUSTOM_FIELDS("custom_fields"), - PORTAL_INVITATIONS("portal_invitations"); + ALL_BENEFITS("all_benefits"); @JsonValue private final String value; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/LeavingFor.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/LeavingFor.java index e0010bb80..597650f02 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/LeavingFor.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/LeavingFor.java @@ -34,6 +34,7 @@ public enum LeavingFor { NAMELY("namely"), ONPAY("onpay"), OTHER("other"), + OTHER_PEO("other_peo"), OYSTER("oyster"), PATRIOT("patriot"), PAYCHEX("paychex"), @@ -43,6 +44,7 @@ public enum LeavingFor { RIPPLING("rippling"), SQUARE("square"), SUREPAYROLL("surepayroll"), + TOAST("toast"), TRINET("trinet"), VELOCITY_GLOBAL("velocity_global"), ZENEFITS("zenefits"); diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/OauthAccessTokenHeaderXGustoAPIVersion.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/OauthAccessTokenHeaderXGustoAPIVersion.java new file mode 100644 index 000000000..002cac198 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/OauthAccessTokenHeaderXGustoAPIVersion.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * OauthAccessTokenHeaderXGustoAPIVersion + * + *

    Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ +public enum OauthAccessTokenHeaderXGustoAPIVersion { + TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15("2025-06-15"); + + @JsonValue + private final String value; + + OauthAccessTokenHeaderXGustoAPIVersion(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (OauthAccessTokenHeaderXGustoAPIVersion o: OauthAccessTokenHeaderXGustoAPIVersion.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/OauthAccessTokenRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/OauthAccessTokenRequest.java index edb6fdcb3..60940ce8a 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/OauthAccessTokenRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/OauthAccessTokenRequest.java @@ -22,7 +22,7 @@ public class OauthAccessTokenRequest { * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; + private Optional xGustoAPIVersion; @SpeakeasyMetadata("request:mediaType=application/json") @@ -30,7 +30,7 @@ public class OauthAccessTokenRequest { @JsonCreator public OauthAccessTokenRequest( - Optional xGustoAPIVersion, + Optional xGustoAPIVersion, OauthAccessTokenRequestBody requestBody) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(requestBody, "requestBody"); @@ -50,8 +50,8 @@ public OauthAccessTokenRequest( */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional xGustoAPIVersion() { - return (Optional) xGustoAPIVersion; + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; } @JsonIgnore @@ -69,7 +69,7 @@ public static Builder builder() { * application's [minimum API * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - public OauthAccessTokenRequest withXGustoAPIVersion(HeaderXGustoAPIVersion xGustoAPIVersion) { + public OauthAccessTokenRequest withXGustoAPIVersion(OauthAccessTokenHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); return this; @@ -81,7 +81,7 @@ public OauthAccessTokenRequest withXGustoAPIVersion(HeaderXGustoAPIVersion xGust * application's [minimum API * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - public OauthAccessTokenRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + public OauthAccessTokenRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); this.xGustoAPIVersion = xGustoAPIVersion; return this; @@ -123,7 +123,7 @@ public String toString() { @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private Optional xGustoAPIVersion; + private Optional xGustoAPIVersion; private OauthAccessTokenRequestBody requestBody; @@ -137,7 +137,7 @@ private Builder() { * application's [minimum API * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - public Builder xGustoAPIVersion(HeaderXGustoAPIVersion xGustoAPIVersion) { + public Builder xGustoAPIVersion(OauthAccessTokenHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); return this; @@ -148,7 +148,7 @@ public Builder xGustoAPIVersion(HeaderXGustoAPIVersion xGustoAPIVersion) { * application's [minimum API * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); this.xGustoAPIVersion = xGustoAPIVersion; return this; @@ -171,10 +171,10 @@ public OauthAccessTokenRequest build() { } - private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = new LazySingletonValue<>( "X-Gusto-API-Version", "\"2025-06-15\"", - new TypeReference>() {}); + new TypeReference>() {}); } } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/OauthAccessTokenRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/OauthAccessTokenRequestBuilder.java index 72b017c40..11b34d768 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/OauthAccessTokenRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/OauthAccessTokenRequestBuilder.java @@ -15,10 +15,10 @@ public class OauthAccessTokenRequestBuilder { - private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", - new TypeReference>() {}); + new TypeReference>() {}); private OauthAccessTokenRequestBody requestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -27,13 +27,13 @@ public OauthAccessTokenRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - public OauthAccessTokenRequestBuilder xGustoAPIVersion(HeaderXGustoAPIVersion xGustoAPIVersion) { + public OauthAccessTokenRequestBuilder xGustoAPIVersion(OauthAccessTokenHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); return this; } - public OauthAccessTokenRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + public OauthAccessTokenRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); this.xGustoAPIVersion = xGustoAPIVersion; return this; @@ -66,9 +66,9 @@ public OauthAccessTokenResponse call() { return operation.handleResponse(operation.doRequest(request)); } - private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = new LazySingletonValue<>( "xGustoAPIVersion", "\"2025-06-15\"", - new TypeReference>() {}); + new TypeReference>() {}); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.java index 26fb9d692..0da17b75d 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.java @@ -16,6 +16,14 @@ public class PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + /** * The UUID of the company */ @@ -28,41 +36,44 @@ public class PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest { @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=id") private String id; - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; - @SpeakeasyMetadata("request:mediaType=application/json") private Optional requestBody; @JsonCreator public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest( + Optional xGustoAPIVersion, String companyId, String id, - Optional xGustoAPIVersion, Optional requestBody) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(companyId, "companyId"); Utils.checkNotNull(id, "id"); - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(requestBody, "requestBody"); + this.xGustoAPIVersion = xGustoAPIVersion; this.companyId = companyId; this.id = id; - this.xGustoAPIVersion = xGustoAPIVersion; this.requestBody = requestBody; } public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest( String companyId, String id) { - this(companyId, id, Optional.empty(), + this(Optional.empty(), companyId, id, Optional.empty()); } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + /** * The UUID of the company */ @@ -79,17 +90,6 @@ public String id() { return id; } - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional xGustoAPIVersion() { - return (Optional) xGustoAPIVersion; - } - @SuppressWarnings("unchecked") @JsonIgnore public Optional requestBody() { @@ -101,24 +101,6 @@ public static Builder builder() { } - /** - * The UUID of the company - */ - public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest withCompanyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - - /** - * The UUID of the payroll - */ - public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest withId(String id) { - Utils.checkNotNull(id, "id"); - this.id = id; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -142,6 +124,24 @@ public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest withXGusto return this; } + /** + * The UUID of the company + */ + public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest withCompanyId(String companyId) { + Utils.checkNotNull(companyId, "companyId"); + this.companyId = companyId; + return this; + } + + /** + * The UUID of the payroll + */ + public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest withId(String id) { + Utils.checkNotNull(id, "id"); + this.id = id; + return this; + } + public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest withRequestBody(PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); this.requestBody = Optional.ofNullable(requestBody); @@ -165,37 +165,37 @@ public boolean equals(java.lang.Object o) { } PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest other = (PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest) o; return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.companyId, other.companyId) && Utils.enhancedDeepEquals(this.id, other.id) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.requestBody, other.requestBody); } @Override public int hashCode() { return Utils.enhancedHash( - companyId, id, xGustoAPIVersion, + xGustoAPIVersion, companyId, id, requestBody); } @Override public String toString() { return Utils.toString(PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, "companyId", companyId, "id", id, - "xGustoAPIVersion", xGustoAPIVersion, "requestBody", requestBody); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { + private Optional xGustoAPIVersion; + private String companyId; private String id; - private Optional xGustoAPIVersion; - private Optional requestBody = Optional.empty(); private Builder() { @@ -203,26 +203,6 @@ private Builder() { } - /** - * The UUID of the company - */ - public Builder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - - - /** - * The UUID of the payroll - */ - public Builder id(String id) { - Utils.checkNotNull(id, "id"); - this.id = id; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -246,6 +226,26 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String companyId; + private String id; private Optional requestBody = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -29,18 +29,6 @@ public class PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuild public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - - public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder id(String id) { - Utils.checkNotNull(id, "id"); - this.id = id; - return this; - } public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder xGustoAPIVersion(PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -53,6 +41,18 @@ public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder xGu this.xGustoAPIVersion = xGustoAPIVersion; return this; } + + public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder companyId(String companyId) { + Utils.checkNotNull(companyId, "companyId"); + this.companyId = companyId; + return this; + } + + public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder id(String id) { + Utils.checkNotNull(id, "id"); + this.id = id; + return this; + } public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder requestBody(PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); @@ -72,9 +72,9 @@ private PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest buildRequ xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest request = new PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest(companyId, + PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest request = new PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest(xGustoAPIVersion, + companyId, id, - xGustoAPIVersion, requestBody); return request; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsPaymentMethod.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsPaymentMethod.java index 9146b747f..f0b161531 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsPaymentMethod.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsPaymentMethod.java @@ -15,7 +15,9 @@ */ public enum PatchV1ContractorPaymentGroupsIdPartnerDisbursementsPaymentMethod { DIRECT_DEPOSIT("Direct Deposit"), - CHECK("Check"); + CHECK("Check"), + HISTORICAL_PAYMENT("Historical Payment"), + CORRECTION_PAYMENT("Correction Payment"); @JsonValue private final String value; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.java index 659c78389..ce724b633 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.java @@ -16,12 +16,6 @@ public class PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest { - /** - * The UUID of the contractor payment group - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=id") - private String id; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,34 +24,32 @@ public class PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the contractor payment group + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=id") + private String id; + @SpeakeasyMetadata("request:mediaType=application/json") private Optional requestBody; @JsonCreator public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest( - String id, Optional xGustoAPIVersion, + String id, Optional requestBody) { - Utils.checkNotNull(id, "id"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(id, "id"); Utils.checkNotNull(requestBody, "requestBody"); - this.id = id; this.xGustoAPIVersion = xGustoAPIVersion; + this.id = id; this.requestBody = requestBody; } public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest( String id) { - this(id, Optional.empty(), Optional.empty()); - } - - /** - * The UUID of the contractor payment group - */ - @JsonIgnore - public String id() { - return id; + this(Optional.empty(), id, Optional.empty()); } /** @@ -71,6 +63,14 @@ public Optional) xGustoAPIVersion; } + /** + * The UUID of the contractor payment group + */ + @JsonIgnore + public String id() { + return id; + } + @SuppressWarnings("unchecked") @JsonIgnore public Optional requestBody() { @@ -82,15 +82,6 @@ public static Builder builder() { } - /** - * The UUID of the contractor payment group - */ - public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest withId(String id) { - Utils.checkNotNull(id, "id"); - this.id = id; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -114,6 +105,15 @@ public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest withXGustoAPI return this; } + /** + * The UUID of the contractor payment group + */ + public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest withId(String id) { + Utils.checkNotNull(id, "id"); + this.id = id; + return this; + } + public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest withRequestBody(PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); this.requestBody = Optional.ofNullable(requestBody); @@ -137,32 +137,32 @@ public boolean equals(java.lang.Object o) { } PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest other = (PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest) o; return - Utils.enhancedDeepEquals(this.id, other.id) && Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.id, other.id) && Utils.enhancedDeepEquals(this.requestBody, other.requestBody); } @Override public int hashCode() { return Utils.enhancedHash( - id, xGustoAPIVersion, requestBody); + xGustoAPIVersion, id, requestBody); } @Override public String toString() { return Utils.toString(PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.class, - "id", id, "xGustoAPIVersion", xGustoAPIVersion, + "id", id, "requestBody", requestBody); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String id; - private Optional xGustoAPIVersion; + private String id; + private Optional requestBody = Optional.empty(); private Builder() { @@ -170,16 +170,6 @@ private Builder() { } - /** - * The UUID of the contractor payment group - */ - public Builder id(String id) { - Utils.checkNotNull(id, "id"); - this.id = id; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -203,6 +193,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String id; private Optional requestBody = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -28,12 +28,6 @@ public class PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder id(String id) { - Utils.checkNotNull(id, "id"); - this.id = id; - return this; - } public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder xGustoAPIVersion(PatchV1ContractorPaymentGroupsIdPartnerDisbursementsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,6 +40,12 @@ public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder xGusto this.xGustoAPIVersion = xGustoAPIVersion; return this; } + + public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder id(String id) { + Utils.checkNotNull(id, "id"); + this.id = id; + return this; + } public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder requestBody(PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); @@ -65,8 +65,8 @@ private PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest buildRequest xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest request = new PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest(id, - xGustoAPIVersion, + PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest request = new PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest(xGustoAPIVersion, + id, requestBody); return request; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.java index f6968a35a..0ef262f5d 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.java @@ -18,6 +18,14 @@ public class PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + /** * The UUID of the employee */ @@ -30,31 +38,23 @@ public class PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYe @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=effective_year") private long effectiveYear; - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; - @SpeakeasyMetadata("request:mediaType=application/json") private EmployeeSection603HighEarnerStatusUpdateRequest employeeSection603HighEarnerStatusUpdateRequest; @JsonCreator public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest( + Optional xGustoAPIVersion, String employeeUuid, long effectiveYear, - Optional xGustoAPIVersion, EmployeeSection603HighEarnerStatusUpdateRequest employeeSection603HighEarnerStatusUpdateRequest) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(employeeUuid, "employeeUuid"); Utils.checkNotNull(effectiveYear, "effectiveYear"); - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(employeeSection603HighEarnerStatusUpdateRequest, "employeeSection603HighEarnerStatusUpdateRequest"); + this.xGustoAPIVersion = xGustoAPIVersion; this.employeeUuid = employeeUuid; this.effectiveYear = effectiveYear; - this.xGustoAPIVersion = xGustoAPIVersion; this.employeeSection603HighEarnerStatusUpdateRequest = employeeSection603HighEarnerStatusUpdateRequest; } @@ -62,10 +62,21 @@ public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequ String employeeUuid, long effectiveYear, EmployeeSection603HighEarnerStatusUpdateRequest employeeSection603HighEarnerStatusUpdateRequest) { - this(employeeUuid, effectiveYear, Optional.empty(), + this(Optional.empty(), employeeUuid, effectiveYear, employeeSection603HighEarnerStatusUpdateRequest); } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + /** * The UUID of the employee */ @@ -82,17 +93,6 @@ public long effectiveYear() { return effectiveYear; } - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional xGustoAPIVersion() { - return (Optional) xGustoAPIVersion; - } - @JsonIgnore public EmployeeSection603HighEarnerStatusUpdateRequest employeeSection603HighEarnerStatusUpdateRequest() { return employeeSection603HighEarnerStatusUpdateRequest; @@ -103,24 +103,6 @@ public static Builder builder() { } - /** - * The UUID of the employee - */ - public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest withEmployeeUuid(String employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = employeeUuid; - return this; - } - - /** - * The effective year for the Section 603 status - */ - public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest withEffectiveYear(long effectiveYear) { - Utils.checkNotNull(effectiveYear, "effectiveYear"); - this.effectiveYear = effectiveYear; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -144,6 +126,24 @@ public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequ return this; } + /** + * The UUID of the employee + */ + public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest withEmployeeUuid(String employeeUuid) { + Utils.checkNotNull(employeeUuid, "employeeUuid"); + this.employeeUuid = employeeUuid; + return this; + } + + /** + * The effective year for the Section 603 status + */ + public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest withEffectiveYear(long effectiveYear) { + Utils.checkNotNull(effectiveYear, "effectiveYear"); + this.effectiveYear = effectiveYear; + return this; + } + public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest withEmployeeSection603HighEarnerStatusUpdateRequest(EmployeeSection603HighEarnerStatusUpdateRequest employeeSection603HighEarnerStatusUpdateRequest) { Utils.checkNotNull(employeeSection603HighEarnerStatusUpdateRequest, "employeeSection603HighEarnerStatusUpdateRequest"); this.employeeSection603HighEarnerStatusUpdateRequest = employeeSection603HighEarnerStatusUpdateRequest; @@ -160,37 +160,37 @@ public boolean equals(java.lang.Object o) { } PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest other = (PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest) o; return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.employeeUuid, other.employeeUuid) && Utils.enhancedDeepEquals(this.effectiveYear, other.effectiveYear) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.employeeSection603HighEarnerStatusUpdateRequest, other.employeeSection603HighEarnerStatusUpdateRequest); } @Override public int hashCode() { return Utils.enhancedHash( - employeeUuid, effectiveYear, xGustoAPIVersion, + xGustoAPIVersion, employeeUuid, effectiveYear, employeeSection603HighEarnerStatusUpdateRequest); } @Override public String toString() { return Utils.toString(PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, "employeeUuid", employeeUuid, "effectiveYear", effectiveYear, - "xGustoAPIVersion", xGustoAPIVersion, "employeeSection603HighEarnerStatusUpdateRequest", employeeSection603HighEarnerStatusUpdateRequest); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { + private Optional xGustoAPIVersion; + private String employeeUuid; private Long effectiveYear; - private Optional xGustoAPIVersion; - private EmployeeSection603HighEarnerStatusUpdateRequest employeeSection603HighEarnerStatusUpdateRequest; private Builder() { @@ -198,26 +198,6 @@ private Builder() { } - /** - * The UUID of the employee - */ - public Builder employeeUuid(String employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = employeeUuid; - return this; - } - - - /** - * The effective year for the Section 603 status - */ - public Builder effectiveYear(long effectiveYear) { - Utils.checkNotNull(effectiveYear, "effectiveYear"); - this.effectiveYear = effectiveYear; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -241,6 +221,26 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String employeeUuid; + private Long effectiveYear; private EmployeeSection603HighEarnerStatusUpdateRequest employeeSection603HighEarnerStatusUpdateRequest; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -31,18 +31,6 @@ public class PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYe public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder employeeUuid(String employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = employeeUuid; - return this; - } - - public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder effectiveYear(long effectiveYear) { - Utils.checkNotNull(effectiveYear, "effectiveYear"); - this.effectiveYear = effectiveYear; - return this; - } public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder xGustoAPIVersion(PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -56,6 +44,18 @@ public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequ return this; } + public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder employeeUuid(String employeeUuid) { + Utils.checkNotNull(employeeUuid, "employeeUuid"); + this.employeeUuid = employeeUuid; + return this; + } + + public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder effectiveYear(long effectiveYear) { + Utils.checkNotNull(effectiveYear, "effectiveYear"); + this.effectiveYear = effectiveYear; + return this; + } + public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder employeeSection603HighEarnerStatusUpdateRequest(EmployeeSection603HighEarnerStatusUpdateRequest employeeSection603HighEarnerStatusUpdateRequest) { Utils.checkNotNull(employeeSection603HighEarnerStatusUpdateRequest, "employeeSection603HighEarnerStatusUpdateRequest"); this.employeeSection603HighEarnerStatusUpdateRequest = employeeSection603HighEarnerStatusUpdateRequest; @@ -68,9 +68,9 @@ private PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearReq xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest request = new PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest(employeeUuid, + PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest request = new PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest(xGustoAPIVersion, + employeeUuid, effectiveYear, - xGustoAPIVersion, employeeSection603HighEarnerStatusUpdateRequest); return request; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostDepartmentsRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostDepartmentsRequest.java index 8fcf3599f..55ad224b2 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostDepartmentsRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostDepartmentsRequest.java @@ -17,12 +17,6 @@ public class PostDepartmentsRequest { - /** - * The UUID of the company - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") - private String companyUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -31,35 +25,33 @@ public class PostDepartmentsRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") + private String companyUuid; + @SpeakeasyMetadata("request:mediaType=application/json") private DepartmentCreateRequestBody departmentCreateRequestBody; @JsonCreator public PostDepartmentsRequest( - String companyUuid, Optional xGustoAPIVersion, + String companyUuid, DepartmentCreateRequestBody departmentCreateRequestBody) { - Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(departmentCreateRequestBody, "departmentCreateRequestBody"); - this.companyUuid = companyUuid; this.xGustoAPIVersion = xGustoAPIVersion; + this.companyUuid = companyUuid; this.departmentCreateRequestBody = departmentCreateRequestBody; } public PostDepartmentsRequest( String companyUuid, DepartmentCreateRequestBody departmentCreateRequestBody) { - this(companyUuid, Optional.empty(), departmentCreateRequestBody); - } - - /** - * The UUID of the company - */ - @JsonIgnore - public String companyUuid() { - return companyUuid; + this(Optional.empty(), companyUuid, departmentCreateRequestBody); } /** @@ -73,6 +65,14 @@ public Optional xGustoAPIVersion() { return (Optional) xGustoAPIVersion; } + /** + * The UUID of the company + */ + @JsonIgnore + public String companyUuid() { + return companyUuid; + } + @JsonIgnore public DepartmentCreateRequestBody departmentCreateRequestBody() { return departmentCreateRequestBody; @@ -83,15 +83,6 @@ public static Builder builder() { } - /** - * The UUID of the company - */ - public PostDepartmentsRequest withCompanyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -115,6 +106,15 @@ public PostDepartmentsRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String companyUuid; + private DepartmentCreateRequestBody departmentCreateRequestBody; private Builder() { @@ -164,16 +164,6 @@ private Builder() { } - /** - * The UUID of the company - */ - public Builder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -197,6 +187,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String companyUuid; private DepartmentCreateRequestBody departmentCreateRequestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -29,12 +29,6 @@ public class PostDepartmentsRequestBuilder { public PostDepartmentsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostDepartmentsRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public PostDepartmentsRequestBuilder xGustoAPIVersion(PostDepartmentsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -48,6 +42,12 @@ public PostDepartmentsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion; + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") + private String companyUuid; + @SpeakeasyMetadata("request:mediaType=application/json") private PartnerManagedCompanyAcceptTermsOfServiceRequest partnerManagedCompanyAcceptTermsOfServiceRequest; @JsonCreator public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest( - String companyUuid, Optional xGustoAPIVersion, + String companyUuid, PartnerManagedCompanyAcceptTermsOfServiceRequest partnerManagedCompanyAcceptTermsOfServiceRequest) { - Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(partnerManagedCompanyAcceptTermsOfServiceRequest, "partnerManagedCompanyAcceptTermsOfServiceRequest"); - this.companyUuid = companyUuid; this.xGustoAPIVersion = xGustoAPIVersion; + this.companyUuid = companyUuid; this.partnerManagedCompanyAcceptTermsOfServiceRequest = partnerManagedCompanyAcceptTermsOfServiceRequest; } public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest( String companyUuid, PartnerManagedCompanyAcceptTermsOfServiceRequest partnerManagedCompanyAcceptTermsOfServiceRequest) { - this(companyUuid, Optional.empty(), partnerManagedCompanyAcceptTermsOfServiceRequest); - } - - /** - * The UUID of the company - */ - @JsonIgnore - public String companyUuid() { - return companyUuid; + this(Optional.empty(), companyUuid, partnerManagedCompanyAcceptTermsOfServiceRequest); } /** @@ -73,6 +65,14 @@ public Optional) xGustoAPIVersion; } + /** + * The UUID of the company + */ + @JsonIgnore + public String companyUuid() { + return companyUuid; + } + @JsonIgnore public PartnerManagedCompanyAcceptTermsOfServiceRequest partnerManagedCompanyAcceptTermsOfServiceRequest() { return partnerManagedCompanyAcceptTermsOfServiceRequest; @@ -83,15 +83,6 @@ public static Builder builder() { } - /** - * The UUID of the company - */ - public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest withCompanyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -115,6 +106,15 @@ public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest withXGu return this; } + /** + * The UUID of the company + */ + public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest withPartnerManagedCompanyAcceptTermsOfServiceRequest(PartnerManagedCompanyAcceptTermsOfServiceRequest partnerManagedCompanyAcceptTermsOfServiceRequest) { Utils.checkNotNull(partnerManagedCompanyAcceptTermsOfServiceRequest, "partnerManagedCompanyAcceptTermsOfServiceRequest"); this.partnerManagedCompanyAcceptTermsOfServiceRequest = partnerManagedCompanyAcceptTermsOfServiceRequest; @@ -131,32 +131,32 @@ public boolean equals(java.lang.Object o) { } PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest other = (PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest) o; return - Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && Utils.enhancedDeepEquals(this.partnerManagedCompanyAcceptTermsOfServiceRequest, other.partnerManagedCompanyAcceptTermsOfServiceRequest); } @Override public int hashCode() { return Utils.enhancedHash( - companyUuid, xGustoAPIVersion, partnerManagedCompanyAcceptTermsOfServiceRequest); + xGustoAPIVersion, companyUuid, partnerManagedCompanyAcceptTermsOfServiceRequest); } @Override public String toString() { return Utils.toString(PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest.class, - "companyUuid", companyUuid, "xGustoAPIVersion", xGustoAPIVersion, + "companyUuid", companyUuid, "partnerManagedCompanyAcceptTermsOfServiceRequest", partnerManagedCompanyAcceptTermsOfServiceRequest); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String companyUuid; - private Optional xGustoAPIVersion; + private String companyUuid; + private PartnerManagedCompanyAcceptTermsOfServiceRequest partnerManagedCompanyAcceptTermsOfServiceRequest; private Builder() { @@ -164,16 +164,6 @@ private Builder() { } - /** - * The UUID of the company - */ - public Builder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -197,6 +187,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String companyUuid; private PartnerManagedCompanyAcceptTermsOfServiceRequest partnerManagedCompanyAcceptTermsOfServiceRequest; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -29,12 +29,6 @@ public class PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBu public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBuilder xGustoAPIVersion(PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -48,6 +42,12 @@ public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBuilder return this; } + public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBuilder partnerManagedCompanyAcceptTermsOfServiceRequest(PartnerManagedCompanyAcceptTermsOfServiceRequest partnerManagedCompanyAcceptTermsOfServiceRequest) { Utils.checkNotNull(partnerManagedCompanyAcceptTermsOfServiceRequest, "partnerManagedCompanyAcceptTermsOfServiceRequest"); this.partnerManagedCompanyAcceptTermsOfServiceRequest = partnerManagedCompanyAcceptTermsOfServiceRequest; @@ -60,8 +60,8 @@ private PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest buildR xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest request = new PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest(companyUuid, - xGustoAPIVersion, + PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest request = new PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest(xGustoAPIVersion, + companyUuid, partnerManagedCompanyAcceptTermsOfServiceRequest); return request; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest.java index e480f74b5..f47db37e2 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest.java @@ -17,12 +17,6 @@ public class PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest { - /** - * The UUID of the company - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") - private String companyUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -31,35 +25,33 @@ public class PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") + private String companyUuid; + @SpeakeasyMetadata("request:mediaType=application/json") private PartnerManagedCompanyRetrieveTermsOfServiceRequest partnerManagedCompanyRetrieveTermsOfServiceRequest; @JsonCreator public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest( - String companyUuid, Optional xGustoAPIVersion, + String companyUuid, PartnerManagedCompanyRetrieveTermsOfServiceRequest partnerManagedCompanyRetrieveTermsOfServiceRequest) { - Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(partnerManagedCompanyRetrieveTermsOfServiceRequest, "partnerManagedCompanyRetrieveTermsOfServiceRequest"); - this.companyUuid = companyUuid; this.xGustoAPIVersion = xGustoAPIVersion; + this.companyUuid = companyUuid; this.partnerManagedCompanyRetrieveTermsOfServiceRequest = partnerManagedCompanyRetrieveTermsOfServiceRequest; } public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest( String companyUuid, PartnerManagedCompanyRetrieveTermsOfServiceRequest partnerManagedCompanyRetrieveTermsOfServiceRequest) { - this(companyUuid, Optional.empty(), partnerManagedCompanyRetrieveTermsOfServiceRequest); - } - - /** - * The UUID of the company - */ - @JsonIgnore - public String companyUuid() { - return companyUuid; + this(Optional.empty(), companyUuid, partnerManagedCompanyRetrieveTermsOfServiceRequest); } /** @@ -73,6 +65,14 @@ public Optional) xGustoAPIVersion; } + /** + * The UUID of the company + */ + @JsonIgnore + public String companyUuid() { + return companyUuid; + } + @JsonIgnore public PartnerManagedCompanyRetrieveTermsOfServiceRequest partnerManagedCompanyRetrieveTermsOfServiceRequest() { return partnerManagedCompanyRetrieveTermsOfServiceRequest; @@ -83,15 +83,6 @@ public static Builder builder() { } - /** - * The UUID of the company - */ - public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest withCompanyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -115,6 +106,15 @@ public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest withX return this; } + /** + * The UUID of the company + */ + public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest withPartnerManagedCompanyRetrieveTermsOfServiceRequest(PartnerManagedCompanyRetrieveTermsOfServiceRequest partnerManagedCompanyRetrieveTermsOfServiceRequest) { Utils.checkNotNull(partnerManagedCompanyRetrieveTermsOfServiceRequest, "partnerManagedCompanyRetrieveTermsOfServiceRequest"); this.partnerManagedCompanyRetrieveTermsOfServiceRequest = partnerManagedCompanyRetrieveTermsOfServiceRequest; @@ -131,32 +131,32 @@ public boolean equals(java.lang.Object o) { } PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest other = (PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest) o; return - Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && Utils.enhancedDeepEquals(this.partnerManagedCompanyRetrieveTermsOfServiceRequest, other.partnerManagedCompanyRetrieveTermsOfServiceRequest); } @Override public int hashCode() { return Utils.enhancedHash( - companyUuid, xGustoAPIVersion, partnerManagedCompanyRetrieveTermsOfServiceRequest); + xGustoAPIVersion, companyUuid, partnerManagedCompanyRetrieveTermsOfServiceRequest); } @Override public String toString() { return Utils.toString(PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest.class, - "companyUuid", companyUuid, "xGustoAPIVersion", xGustoAPIVersion, + "companyUuid", companyUuid, "partnerManagedCompanyRetrieveTermsOfServiceRequest", partnerManagedCompanyRetrieveTermsOfServiceRequest); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String companyUuid; - private Optional xGustoAPIVersion; + private String companyUuid; + private PartnerManagedCompanyRetrieveTermsOfServiceRequest partnerManagedCompanyRetrieveTermsOfServiceRequest; private Builder() { @@ -164,16 +164,6 @@ private Builder() { } - /** - * The UUID of the company - */ - public Builder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -197,6 +187,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String companyUuid; private PartnerManagedCompanyRetrieveTermsOfServiceRequest partnerManagedCompanyRetrieveTermsOfServiceRequest; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -29,12 +29,6 @@ public class PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder xGustoAPIVersion(PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -48,6 +42,12 @@ public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilde return this; } + public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder partnerManagedCompanyRetrieveTermsOfServiceRequest(PartnerManagedCompanyRetrieveTermsOfServiceRequest partnerManagedCompanyRetrieveTermsOfServiceRequest) { Utils.checkNotNull(partnerManagedCompanyRetrieveTermsOfServiceRequest, "partnerManagedCompanyRetrieveTermsOfServiceRequest"); this.partnerManagedCompanyRetrieveTermsOfServiceRequest = partnerManagedCompanyRetrieveTermsOfServiceRequest; @@ -60,8 +60,8 @@ private PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest buil xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest request = new PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest(companyUuid, - xGustoAPIVersion, + PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest request = new PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest(xGustoAPIVersion, + companyUuid, partnerManagedCompanyRetrieveTermsOfServiceRequest); return request; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1BulkReportsHeaderXGustoAPIVersion.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1BulkReportsHeaderXGustoAPIVersion.java new file mode 100644 index 000000000..e0910f957 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1BulkReportsHeaderXGustoAPIVersion.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PostV1BulkReportsHeaderXGustoAPIVersion + * + *

    Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ +public enum PostV1BulkReportsHeaderXGustoAPIVersion { + TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15("2025-06-15"); + + @JsonValue + private final String value; + + PostV1BulkReportsHeaderXGustoAPIVersion(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PostV1BulkReportsHeaderXGustoAPIVersion o: PostV1BulkReportsHeaderXGustoAPIVersion.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1BulkReportsRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1BulkReportsRequest.java new file mode 100644 index 000000000..138609abe --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1BulkReportsRequest.java @@ -0,0 +1,181 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api.models.components.BulkReportBody; +import com.gusto.embedded_api.utils.LazySingletonValue; +import com.gusto.embedded_api.utils.SpeakeasyMetadata; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class PostV1BulkReportsRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + + + @SpeakeasyMetadata("request:mediaType=application/json") + private BulkReportBody bulkReportBody; + + @JsonCreator + public PostV1BulkReportsRequest( + Optional xGustoAPIVersion, + BulkReportBody bulkReportBody) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(bulkReportBody, "bulkReportBody"); + this.xGustoAPIVersion = xGustoAPIVersion; + this.bulkReportBody = bulkReportBody; + } + + public PostV1BulkReportsRequest( + BulkReportBody bulkReportBody) { + this(Optional.empty(), bulkReportBody); + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + + @JsonIgnore + public BulkReportBody bulkReportBody() { + return bulkReportBody; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public PostV1BulkReportsRequest withXGustoAPIVersion(PostV1BulkReportsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public PostV1BulkReportsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public PostV1BulkReportsRequest withBulkReportBody(BulkReportBody bulkReportBody) { + Utils.checkNotNull(bulkReportBody, "bulkReportBody"); + this.bulkReportBody = bulkReportBody; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PostV1BulkReportsRequest other = (PostV1BulkReportsRequest) o; + return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.bulkReportBody, other.bulkReportBody); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + xGustoAPIVersion, bulkReportBody); + } + + @Override + public String toString() { + return Utils.toString(PostV1BulkReportsRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, + "bulkReportBody", bulkReportBody); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional xGustoAPIVersion; + + private BulkReportBody bulkReportBody; + + private Builder() { + // force use of static builder() method + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(PostV1BulkReportsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + + public Builder bulkReportBody(BulkReportBody bulkReportBody) { + Utils.checkNotNull(bulkReportBody, "bulkReportBody"); + this.bulkReportBody = bulkReportBody; + return this; + } + + public PostV1BulkReportsRequest build() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + return new PostV1BulkReportsRequest( + xGustoAPIVersion, bulkReportBody); + } + + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "X-Gusto-API-Version", + "\"2025-06-15\"", + new TypeReference>() {}); + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1BulkReportsRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1BulkReportsRequestBuilder.java new file mode 100644 index 000000000..f9a7a7056 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1BulkReportsRequestBuilder.java @@ -0,0 +1,82 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import static com.gusto.embedded_api.operations.Operations.RequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api.SDKConfiguration; +import com.gusto.embedded_api.models.components.BulkReportBody; +import com.gusto.embedded_api.operations.PostV1BulkReports; +import com.gusto.embedded_api.utils.Headers; +import com.gusto.embedded_api.utils.LazySingletonValue; +import com.gusto.embedded_api.utils.Utils; +import java.util.Optional; + +public class PostV1BulkReportsRequestBuilder { + + private PostV1BulkReportsSecurity security; + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2025-06-15\"", + new TypeReference>() {}); + private BulkReportBody bulkReportBody; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public PostV1BulkReportsRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public PostV1BulkReportsRequestBuilder security(PostV1BulkReportsSecurity security) { + Utils.checkNotNull(security, "security"); + this.security = security; + return this; + } + + public PostV1BulkReportsRequestBuilder xGustoAPIVersion(PostV1BulkReportsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public PostV1BulkReportsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public PostV1BulkReportsRequestBuilder bulkReportBody(BulkReportBody bulkReportBody) { + Utils.checkNotNull(bulkReportBody, "bulkReportBody"); + this.bulkReportBody = bulkReportBody; + return this; + } + + + private PostV1BulkReportsRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + PostV1BulkReportsRequest request = new PostV1BulkReportsRequest(xGustoAPIVersion, + bulkReportBody); + + return request; + } + + public PostV1BulkReportsResponse call() { + + RequestOperation operation + = new PostV1BulkReports.Sync(sdkConfiguration, security, _headers); + PostV1BulkReportsRequest request = buildRequest(); + + return operation.handleResponse(operation.doRequest(request)); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2025-06-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1BulkReportsResponse.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1BulkReportsResponse.java new file mode 100644 index 000000000..e81ad4957 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1BulkReportsResponse.java @@ -0,0 +1,253 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api.models.components.CreateBulkReport; +import com.gusto.embedded_api.utils.Response; +import com.gusto.embedded_api.utils.Utils; +import java.io.InputStream; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.Optional; + + +public class PostV1BulkReportsResponse implements Response { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * Created + */ + private Optional createBulkReport; + + @JsonCreator + public PostV1BulkReportsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional createBulkReport) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(createBulkReport, "createBulkReport"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.createBulkReport = createBulkReport; + } + + public PostV1BulkReportsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * Created + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional createBulkReport() { + return (Optional) createBulkReport; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public PostV1BulkReportsResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public PostV1BulkReportsResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public PostV1BulkReportsResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * Created + */ + public PostV1BulkReportsResponse withCreateBulkReport(CreateBulkReport createBulkReport) { + Utils.checkNotNull(createBulkReport, "createBulkReport"); + this.createBulkReport = Optional.ofNullable(createBulkReport); + return this; + } + + + /** + * Created + */ + public PostV1BulkReportsResponse withCreateBulkReport(Optional createBulkReport) { + Utils.checkNotNull(createBulkReport, "createBulkReport"); + this.createBulkReport = createBulkReport; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PostV1BulkReportsResponse other = (PostV1BulkReportsResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.createBulkReport, other.createBulkReport); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + createBulkReport); + } + + @Override + public String toString() { + return Utils.toString(PostV1BulkReportsResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "createBulkReport", createBulkReport); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional createBulkReport = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * Created + */ + public Builder createBulkReport(CreateBulkReport createBulkReport) { + Utils.checkNotNull(createBulkReport, "createBulkReport"); + this.createBulkReport = Optional.ofNullable(createBulkReport); + return this; + } + + /** + * Created + */ + public Builder createBulkReport(Optional createBulkReport) { + Utils.checkNotNull(createBulkReport, "createBulkReport"); + this.createBulkReport = createBulkReport; + return this; + } + + public PostV1BulkReportsResponse build() { + + return new PostV1BulkReportsResponse( + contentType, statusCode, rawResponse, + createBulkReport); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1BulkReportsSecurity.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1BulkReportsSecurity.java new file mode 100644 index 000000000..8cbbcdace --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1BulkReportsSecurity.java @@ -0,0 +1,91 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api.utils.HasSecurity; +import com.gusto.embedded_api.utils.SpeakeasyMetadata; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Override; +import java.lang.String; + + +public class PostV1BulkReportsSecurity implements HasSecurity { + + @SpeakeasyMetadata("security:scheme=true,type=http,subtype=bearer,name=Authorization") + private String systemAccessAuth; + + @JsonCreator + public PostV1BulkReportsSecurity( + String systemAccessAuth) { + Utils.checkNotNull(systemAccessAuth, "systemAccessAuth"); + this.systemAccessAuth = systemAccessAuth; + } + + @JsonIgnore + public String systemAccessAuth() { + return systemAccessAuth; + } + + public static Builder builder() { + return new Builder(); + } + + + public PostV1BulkReportsSecurity withSystemAccessAuth(String systemAccessAuth) { + Utils.checkNotNull(systemAccessAuth, "systemAccessAuth"); + this.systemAccessAuth = systemAccessAuth; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PostV1BulkReportsSecurity other = (PostV1BulkReportsSecurity) o; + return + Utils.enhancedDeepEquals(this.systemAccessAuth, other.systemAccessAuth); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + systemAccessAuth); + } + + @Override + public String toString() { + return Utils.toString(PostV1BulkReportsSecurity.class, + "systemAccessAuth", systemAccessAuth); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String systemAccessAuth; + + private Builder() { + // force use of static builder() method + } + + + public Builder systemAccessAuth(String systemAccessAuth) { + Utils.checkNotNull(systemAccessAuth, "systemAccessAuth"); + this.systemAccessAuth = systemAccessAuth; + return this; + } + + public PostV1BulkReportsSecurity build() { + + return new PostV1BulkReportsSecurity( + systemAccessAuth); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsContractorPayments.java similarity index 81% rename from gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments.java rename to gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsContractorPayments.java index 019f573ed..31e474746 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsContractorPayments.java @@ -17,7 +17,7 @@ import java.util.Optional; -public class PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments { +public class PostV1CompaniesCompanyIdContractorPaymentGroupsContractorPayments { /** * The contractor receiving the payment */ @@ -28,7 +28,7 @@ public class PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPay @JsonInclude(Include.NON_ABSENT) @JsonProperty("payment_method") - private Optional paymentMethod; + private Optional paymentMethod; /** * If the contractor is on a fixed wage, this is the fixed wage payment for the contractor, regardless @@ -61,9 +61,9 @@ public class PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPay private Optional reimbursement; @JsonCreator - public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments( + public PostV1CompaniesCompanyIdContractorPaymentGroupsContractorPayments( @JsonProperty("contractor_uuid") Optional contractorUuid, - @JsonProperty("payment_method") Optional paymentMethod, + @JsonProperty("payment_method") Optional paymentMethod, @JsonProperty("wage") Optional wage, @JsonProperty("hours") Optional hours, @JsonProperty("bonus") Optional bonus, @@ -82,7 +82,7 @@ public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments( this.reimbursement = reimbursement; } - public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments() { + public PostV1CompaniesCompanyIdContractorPaymentGroupsContractorPayments() { this(Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty()); } @@ -97,8 +97,8 @@ public Optional contractorUuid() { @SuppressWarnings("unchecked") @JsonIgnore - public Optional paymentMethod() { - return (Optional) paymentMethod; + public Optional paymentMethod() { + return (Optional) paymentMethod; } /** @@ -143,7 +143,7 @@ public static Builder builder() { /** * The contractor receiving the payment */ - public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments withContractorUuid(String contractorUuid) { + public PostV1CompaniesCompanyIdContractorPaymentGroupsContractorPayments withContractorUuid(String contractorUuid) { Utils.checkNotNull(contractorUuid, "contractorUuid"); this.contractorUuid = Optional.ofNullable(contractorUuid); return this; @@ -153,20 +153,20 @@ public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments /** * The contractor receiving the payment */ - public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments withContractorUuid(Optional contractorUuid) { + public PostV1CompaniesCompanyIdContractorPaymentGroupsContractorPayments withContractorUuid(Optional contractorUuid) { Utils.checkNotNull(contractorUuid, "contractorUuid"); this.contractorUuid = contractorUuid; return this; } - public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments withPaymentMethod(PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewPaymentMethod paymentMethod) { + public PostV1CompaniesCompanyIdContractorPaymentGroupsContractorPayments withPaymentMethod(PostV1CompaniesCompanyIdContractorPaymentGroupsPaymentMethod paymentMethod) { Utils.checkNotNull(paymentMethod, "paymentMethod"); this.paymentMethod = Optional.ofNullable(paymentMethod); return this; } - public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments withPaymentMethod(Optional paymentMethod) { + public PostV1CompaniesCompanyIdContractorPaymentGroupsContractorPayments withPaymentMethod(Optional paymentMethod) { Utils.checkNotNull(paymentMethod, "paymentMethod"); this.paymentMethod = paymentMethod; return this; @@ -176,7 +176,7 @@ public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments * If the contractor is on a fixed wage, this is the fixed wage payment for the contractor, regardless * of hours worked */ - public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments withWage(String wage) { + public PostV1CompaniesCompanyIdContractorPaymentGroupsContractorPayments withWage(String wage) { Utils.checkNotNull(wage, "wage"); this.wage = Optional.ofNullable(wage); return this; @@ -187,7 +187,7 @@ public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments * If the contractor is on a fixed wage, this is the fixed wage payment for the contractor, regardless * of hours worked */ - public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments withWage(Optional wage) { + public PostV1CompaniesCompanyIdContractorPaymentGroupsContractorPayments withWage(Optional wage) { Utils.checkNotNull(wage, "wage"); this.wage = wage; return this; @@ -197,7 +197,7 @@ public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments * If the contractor is on an hourly wage, this is the number of hours that the contractor worked for * the payment */ - public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments withHours(String hours) { + public PostV1CompaniesCompanyIdContractorPaymentGroupsContractorPayments withHours(String hours) { Utils.checkNotNull(hours, "hours"); this.hours = Optional.ofNullable(hours); return this; @@ -208,7 +208,7 @@ public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments * If the contractor is on an hourly wage, this is the number of hours that the contractor worked for * the payment */ - public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments withHours(Optional hours) { + public PostV1CompaniesCompanyIdContractorPaymentGroupsContractorPayments withHours(Optional hours) { Utils.checkNotNull(hours, "hours"); this.hours = hours; return this; @@ -217,7 +217,7 @@ public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments /** * If the contractor is on an hourly wage, this is the bonus the contractor earned */ - public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments withBonus(String bonus) { + public PostV1CompaniesCompanyIdContractorPaymentGroupsContractorPayments withBonus(String bonus) { Utils.checkNotNull(bonus, "bonus"); this.bonus = Optional.ofNullable(bonus); return this; @@ -227,7 +227,7 @@ public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments /** * If the contractor is on an hourly wage, this is the bonus the contractor earned */ - public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments withBonus(Optional bonus) { + public PostV1CompaniesCompanyIdContractorPaymentGroupsContractorPayments withBonus(Optional bonus) { Utils.checkNotNull(bonus, "bonus"); this.bonus = bonus; return this; @@ -236,7 +236,7 @@ public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments /** * Reimbursed wages for the contractor */ - public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments withReimbursement(String reimbursement) { + public PostV1CompaniesCompanyIdContractorPaymentGroupsContractorPayments withReimbursement(String reimbursement) { Utils.checkNotNull(reimbursement, "reimbursement"); this.reimbursement = Optional.ofNullable(reimbursement); return this; @@ -246,7 +246,7 @@ public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments /** * Reimbursed wages for the contractor */ - public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments withReimbursement(Optional reimbursement) { + public PostV1CompaniesCompanyIdContractorPaymentGroupsContractorPayments withReimbursement(Optional reimbursement) { Utils.checkNotNull(reimbursement, "reimbursement"); this.reimbursement = reimbursement; return this; @@ -260,7 +260,7 @@ public boolean equals(java.lang.Object o) { if (o == null || getClass() != o.getClass()) { return false; } - PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments other = (PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments) o; + PostV1CompaniesCompanyIdContractorPaymentGroupsContractorPayments other = (PostV1CompaniesCompanyIdContractorPaymentGroupsContractorPayments) o; return Utils.enhancedDeepEquals(this.contractorUuid, other.contractorUuid) && Utils.enhancedDeepEquals(this.paymentMethod, other.paymentMethod) && @@ -279,7 +279,7 @@ public int hashCode() { @Override public String toString() { - return Utils.toString(PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments.class, + return Utils.toString(PostV1CompaniesCompanyIdContractorPaymentGroupsContractorPayments.class, "contractorUuid", contractorUuid, "paymentMethod", paymentMethod, "wage", wage, @@ -293,7 +293,7 @@ public final static class Builder { private Optional contractorUuid = Optional.empty(); - private Optional paymentMethod; + private Optional paymentMethod; private Optional wage = Optional.empty(); @@ -327,13 +327,13 @@ public Builder contractorUuid(Optional contractorUuid) { } - public Builder paymentMethod(PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewPaymentMethod paymentMethod) { + public Builder paymentMethod(PostV1CompaniesCompanyIdContractorPaymentGroupsPaymentMethod paymentMethod) { Utils.checkNotNull(paymentMethod, "paymentMethod"); this.paymentMethod = Optional.ofNullable(paymentMethod); return this; } - public Builder paymentMethod(Optional paymentMethod) { + public Builder paymentMethod(Optional paymentMethod) { Utils.checkNotNull(paymentMethod, "paymentMethod"); this.paymentMethod = paymentMethod; return this; @@ -419,21 +419,21 @@ public Builder reimbursement(Optional reimbursement) { return this; } - public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments build() { + public PostV1CompaniesCompanyIdContractorPaymentGroupsContractorPayments build() { if (paymentMethod == null) { paymentMethod = _SINGLETON_VALUE_PaymentMethod.value(); } - return new PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments( + return new PostV1CompaniesCompanyIdContractorPaymentGroupsContractorPayments( contractorUuid, paymentMethod, wage, hours, bonus, reimbursement); } - private static final LazySingletonValue> _SINGLETON_VALUE_PaymentMethod = + private static final LazySingletonValue> _SINGLETON_VALUE_PaymentMethod = new LazySingletonValue<>( "payment_method", "\"Direct Deposit\"", - new TypeReference>() {}); + new TypeReference>() {}); } } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewPaymentMethod.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPaymentMethod.java similarity index 65% rename from gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewPaymentMethod.java rename to gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPaymentMethod.java index f9ca21b74..f51ae2090 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewPaymentMethod.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPaymentMethod.java @@ -8,7 +8,7 @@ import java.util.Objects; import java.util.Optional; -public enum PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewPaymentMethod { +public enum PostV1CompaniesCompanyIdContractorPaymentGroupsPaymentMethod { DIRECT_DEPOSIT("Direct Deposit"), CHECK("Check"), HISTORICAL_PAYMENT("Historical Payment"); @@ -16,7 +16,7 @@ public enum PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewPaymentMethod @JsonValue private final String value; - PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewPaymentMethod(String value) { + PostV1CompaniesCompanyIdContractorPaymentGroupsPaymentMethod(String value) { this.value = value; } @@ -24,8 +24,8 @@ public String value() { return value; } - public static Optional fromValue(String value) { - for (PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewPaymentMethod o: PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewPaymentMethod.values()) { + public static Optional fromValue(String value) { + for (PostV1CompaniesCompanyIdContractorPaymentGroupsPaymentMethod o: PostV1CompaniesCompanyIdContractorPaymentGroupsPaymentMethod.values()) { if (Objects.deepEquals(o.value, value)) { return Optional.of(o); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBody.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBody.java index d731bbaa5..a6ea6bf85 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBody.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBody.java @@ -19,7 +19,7 @@ public class PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBody { @JsonProperty("contractor_payments") - private List contractorPayments; + private List contractorPayments; /** * Date when payments should be processed @@ -30,7 +30,7 @@ public class PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBody { @JsonCreator public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBody( - @JsonProperty("contractor_payments") List contractorPayments, + @JsonProperty("contractor_payments") List contractorPayments, @JsonProperty("check_date") Optional checkDate) { Utils.checkNotNull(contractorPayments, "contractorPayments"); Utils.checkNotNull(checkDate, "checkDate"); @@ -39,12 +39,12 @@ public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBody( } public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBody( - List contractorPayments) { + List contractorPayments) { this(contractorPayments, Optional.empty()); } @JsonIgnore - public List contractorPayments() { + public List contractorPayments() { return contractorPayments; } @@ -61,7 +61,7 @@ public static Builder builder() { } - public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBody withContractorPayments(List contractorPayments) { + public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBody withContractorPayments(List contractorPayments) { Utils.checkNotNull(contractorPayments, "contractorPayments"); this.contractorPayments = contractorPayments; return this; @@ -116,7 +116,7 @@ public String toString() { @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private List contractorPayments; + private List contractorPayments; private Optional checkDate = Optional.empty(); @@ -125,7 +125,7 @@ private Builder() { } - public Builder contractorPayments(List contractorPayments) { + public Builder contractorPayments(List contractorPayments) { Utils.checkNotNull(contractorPayments, "contractorPayments"); this.contractorPayments = contractorPayments; return this; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBody.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBody.java index c9e7e8973..81f42baca 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBody.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBody.java @@ -41,14 +41,14 @@ public class PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBody { @JsonProperty("contractor_payments") - private List contractorPayments; + private List contractorPayments; @JsonCreator public PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBody( @JsonProperty("check_date") LocalDate checkDate, @JsonProperty("creation_token") String creationToken, @JsonProperty("submission_blockers") Optional> submissionBlockers, - @JsonProperty("contractor_payments") List contractorPayments) { + @JsonProperty("contractor_payments") List contractorPayments) { Utils.checkNotNull(checkDate, "checkDate"); Utils.checkNotNull(creationToken, "creationToken"); Utils.checkNotNull(submissionBlockers, "submissionBlockers"); @@ -62,7 +62,7 @@ public PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBody( public PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBody( LocalDate checkDate, String creationToken, - List contractorPayments) { + List contractorPayments) { this(checkDate, creationToken, Optional.empty(), contractorPayments); } @@ -95,7 +95,7 @@ public Optional> submissionBlockers() { } @JsonIgnore - public List contractorPayments() { + public List contractorPayments() { return contractorPayments; } @@ -144,7 +144,7 @@ public PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBody withSubmission return this; } - public PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBody withContractorPayments(List contractorPayments) { + public PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBody withContractorPayments(List contractorPayments) { Utils.checkNotNull(contractorPayments, "contractorPayments"); this.contractorPayments = contractorPayments; return this; @@ -191,7 +191,7 @@ public final static class Builder { private Optional> submissionBlockers = Optional.empty(); - private List contractorPayments; + private List contractorPayments; private Builder() { // force use of static builder() method @@ -240,7 +240,7 @@ public Builder submissionBlockers(Optional> s } - public Builder contractorPayments(List contractorPayments) { + public Builder contractorPayments(List contractorPayments) { Utils.checkNotNull(contractorPayments, "contractorPayments"); this.contractorPayments = contractorPayments; return this; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1CompaniesCompanyIdPeopleBatchesBatch.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1CompaniesCompanyIdPeopleBatchesBatch.java new file mode 100644 index 000000000..cea03c289 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1CompaniesCompanyIdPeopleBatchesBatch.java @@ -0,0 +1,543 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.List; +import java.util.Optional; + + +public class PostV1CompaniesCompanyIdPeopleBatchesBatch { + /** + * The type of entity to create + */ + @JsonProperty("entity_type") + private PostV1CompaniesCompanyIdPeopleBatchesEntityType entityType; + + + @JsonProperty("person") + private Person person; + + /** + * Home address for the employee + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("home_address") + private Optional homeAddress; + + /** + * Specify the company work location for the employee + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("work_address") + private Optional workAddress; + + /** + * Job details for the employee (required if compensation is provided) + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("job") + private Optional job; + + /** + * Department details for the employee + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("department") + private Optional department; + + /** + * Compensation details for the employee (requires job to be provided) + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("compensation") + private Optional compensation; + + /** + * Creates employee bank account(s) and payment method(s) for direct deposit. Payments can be split + * across accounts by Percentage or by Amount. If splitting payments by `Percentage`, all splits must + * have a `split_amount` and the percentages must add up to `100`. + * If splitting payments by `Amount`, the priority is set based on the order of the bank accounts in + * the array and the last bank account is the remainder account (should have `split_amount` set to + * `null`). + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("bank_accounts") + private Optional> bankAccounts; + + @JsonCreator + public PostV1CompaniesCompanyIdPeopleBatchesBatch( + @JsonProperty("entity_type") PostV1CompaniesCompanyIdPeopleBatchesEntityType entityType, + @JsonProperty("person") Person person, + @JsonProperty("home_address") Optional homeAddress, + @JsonProperty("work_address") Optional workAddress, + @JsonProperty("job") Optional job, + @JsonProperty("department") Optional department, + @JsonProperty("compensation") Optional compensation, + @JsonProperty("bank_accounts") Optional> bankAccounts) { + Utils.checkNotNull(entityType, "entityType"); + Utils.checkNotNull(person, "person"); + Utils.checkNotNull(homeAddress, "homeAddress"); + Utils.checkNotNull(workAddress, "workAddress"); + Utils.checkNotNull(job, "job"); + Utils.checkNotNull(department, "department"); + Utils.checkNotNull(compensation, "compensation"); + Utils.checkNotNull(bankAccounts, "bankAccounts"); + this.entityType = entityType; + this.person = person; + this.homeAddress = homeAddress; + this.workAddress = workAddress; + this.job = job; + this.department = department; + this.compensation = compensation; + this.bankAccounts = bankAccounts; + } + + public PostV1CompaniesCompanyIdPeopleBatchesBatch( + PostV1CompaniesCompanyIdPeopleBatchesEntityType entityType, + Person person) { + this(entityType, person, Optional.empty(), + Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty(), Optional.empty()); + } + + /** + * The type of entity to create + */ + @JsonIgnore + public PostV1CompaniesCompanyIdPeopleBatchesEntityType entityType() { + return entityType; + } + + @JsonIgnore + public Person person() { + return person; + } + + /** + * Home address for the employee + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional homeAddress() { + return (Optional) homeAddress; + } + + /** + * Specify the company work location for the employee + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional workAddress() { + return (Optional) workAddress; + } + + /** + * Job details for the employee (required if compensation is provided) + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional job() { + return (Optional) job; + } + + /** + * Department details for the employee + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional department() { + return (Optional) department; + } + + /** + * Compensation details for the employee (requires job to be provided) + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional compensation() { + return (Optional) compensation; + } + + /** + * Creates employee bank account(s) and payment method(s) for direct deposit. Payments can be split + * across accounts by Percentage or by Amount. If splitting payments by `Percentage`, all splits must + * have a `split_amount` and the percentages must add up to `100`. + * If splitting payments by `Amount`, the priority is set based on the order of the bank accounts in + * the array and the last bank account is the remainder account (should have `split_amount` set to + * `null`). + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> bankAccounts() { + return (Optional>) bankAccounts; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * The type of entity to create + */ + public PostV1CompaniesCompanyIdPeopleBatchesBatch withEntityType(PostV1CompaniesCompanyIdPeopleBatchesEntityType entityType) { + Utils.checkNotNull(entityType, "entityType"); + this.entityType = entityType; + return this; + } + + public PostV1CompaniesCompanyIdPeopleBatchesBatch withPerson(Person person) { + Utils.checkNotNull(person, "person"); + this.person = person; + return this; + } + + /** + * Home address for the employee + */ + public PostV1CompaniesCompanyIdPeopleBatchesBatch withHomeAddress(PostV1CompaniesCompanyIdPeopleBatchesHomeAddress homeAddress) { + Utils.checkNotNull(homeAddress, "homeAddress"); + this.homeAddress = Optional.ofNullable(homeAddress); + return this; + } + + + /** + * Home address for the employee + */ + public PostV1CompaniesCompanyIdPeopleBatchesBatch withHomeAddress(Optional homeAddress) { + Utils.checkNotNull(homeAddress, "homeAddress"); + this.homeAddress = homeAddress; + return this; + } + + /** + * Specify the company work location for the employee + */ + public PostV1CompaniesCompanyIdPeopleBatchesBatch withWorkAddress(PostV1CompaniesCompanyIdPeopleBatchesWorkAddress workAddress) { + Utils.checkNotNull(workAddress, "workAddress"); + this.workAddress = Optional.ofNullable(workAddress); + return this; + } + + + /** + * Specify the company work location for the employee + */ + public PostV1CompaniesCompanyIdPeopleBatchesBatch withWorkAddress(Optional workAddress) { + Utils.checkNotNull(workAddress, "workAddress"); + this.workAddress = workAddress; + return this; + } + + /** + * Job details for the employee (required if compensation is provided) + */ + public PostV1CompaniesCompanyIdPeopleBatchesBatch withJob(PostV1CompaniesCompanyIdPeopleBatchesJob job) { + Utils.checkNotNull(job, "job"); + this.job = Optional.ofNullable(job); + return this; + } + + + /** + * Job details for the employee (required if compensation is provided) + */ + public PostV1CompaniesCompanyIdPeopleBatchesBatch withJob(Optional job) { + Utils.checkNotNull(job, "job"); + this.job = job; + return this; + } + + /** + * Department details for the employee + */ + public PostV1CompaniesCompanyIdPeopleBatchesBatch withDepartment(Department department) { + Utils.checkNotNull(department, "department"); + this.department = Optional.ofNullable(department); + return this; + } + + + /** + * Department details for the employee + */ + public PostV1CompaniesCompanyIdPeopleBatchesBatch withDepartment(Optional department) { + Utils.checkNotNull(department, "department"); + this.department = department; + return this; + } + + /** + * Compensation details for the employee (requires job to be provided) + */ + public PostV1CompaniesCompanyIdPeopleBatchesBatch withCompensation(Compensation compensation) { + Utils.checkNotNull(compensation, "compensation"); + this.compensation = Optional.ofNullable(compensation); + return this; + } + + + /** + * Compensation details for the employee (requires job to be provided) + */ + public PostV1CompaniesCompanyIdPeopleBatchesBatch withCompensation(Optional compensation) { + Utils.checkNotNull(compensation, "compensation"); + this.compensation = compensation; + return this; + } + + /** + * Creates employee bank account(s) and payment method(s) for direct deposit. Payments can be split + * across accounts by Percentage or by Amount. If splitting payments by `Percentage`, all splits must + * have a `split_amount` and the percentages must add up to `100`. + * If splitting payments by `Amount`, the priority is set based on the order of the bank accounts in + * the array and the last bank account is the remainder account (should have `split_amount` set to + * `null`). + */ + public PostV1CompaniesCompanyIdPeopleBatchesBatch withBankAccounts(List bankAccounts) { + Utils.checkNotNull(bankAccounts, "bankAccounts"); + this.bankAccounts = Optional.ofNullable(bankAccounts); + return this; + } + + + /** + * Creates employee bank account(s) and payment method(s) for direct deposit. Payments can be split + * across accounts by Percentage or by Amount. If splitting payments by `Percentage`, all splits must + * have a `split_amount` and the percentages must add up to `100`. + * If splitting payments by `Amount`, the priority is set based on the order of the bank accounts in + * the array and the last bank account is the remainder account (should have `split_amount` set to + * `null`). + */ + public PostV1CompaniesCompanyIdPeopleBatchesBatch withBankAccounts(Optional> bankAccounts) { + Utils.checkNotNull(bankAccounts, "bankAccounts"); + this.bankAccounts = bankAccounts; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PostV1CompaniesCompanyIdPeopleBatchesBatch other = (PostV1CompaniesCompanyIdPeopleBatchesBatch) o; + return + Utils.enhancedDeepEquals(this.entityType, other.entityType) && + Utils.enhancedDeepEquals(this.person, other.person) && + Utils.enhancedDeepEquals(this.homeAddress, other.homeAddress) && + Utils.enhancedDeepEquals(this.workAddress, other.workAddress) && + Utils.enhancedDeepEquals(this.job, other.job) && + Utils.enhancedDeepEquals(this.department, other.department) && + Utils.enhancedDeepEquals(this.compensation, other.compensation) && + Utils.enhancedDeepEquals(this.bankAccounts, other.bankAccounts); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + entityType, person, homeAddress, + workAddress, job, department, + compensation, bankAccounts); + } + + @Override + public String toString() { + return Utils.toString(PostV1CompaniesCompanyIdPeopleBatchesBatch.class, + "entityType", entityType, + "person", person, + "homeAddress", homeAddress, + "workAddress", workAddress, + "job", job, + "department", department, + "compensation", compensation, + "bankAccounts", bankAccounts); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private PostV1CompaniesCompanyIdPeopleBatchesEntityType entityType; + + private Person person; + + private Optional homeAddress = Optional.empty(); + + private Optional workAddress = Optional.empty(); + + private Optional job = Optional.empty(); + + private Optional department = Optional.empty(); + + private Optional compensation = Optional.empty(); + + private Optional> bankAccounts = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * The type of entity to create + */ + public Builder entityType(PostV1CompaniesCompanyIdPeopleBatchesEntityType entityType) { + Utils.checkNotNull(entityType, "entityType"); + this.entityType = entityType; + return this; + } + + + public Builder person(Person person) { + Utils.checkNotNull(person, "person"); + this.person = person; + return this; + } + + + /** + * Home address for the employee + */ + public Builder homeAddress(PostV1CompaniesCompanyIdPeopleBatchesHomeAddress homeAddress) { + Utils.checkNotNull(homeAddress, "homeAddress"); + this.homeAddress = Optional.ofNullable(homeAddress); + return this; + } + + /** + * Home address for the employee + */ + public Builder homeAddress(Optional homeAddress) { + Utils.checkNotNull(homeAddress, "homeAddress"); + this.homeAddress = homeAddress; + return this; + } + + + /** + * Specify the company work location for the employee + */ + public Builder workAddress(PostV1CompaniesCompanyIdPeopleBatchesWorkAddress workAddress) { + Utils.checkNotNull(workAddress, "workAddress"); + this.workAddress = Optional.ofNullable(workAddress); + return this; + } + + /** + * Specify the company work location for the employee + */ + public Builder workAddress(Optional workAddress) { + Utils.checkNotNull(workAddress, "workAddress"); + this.workAddress = workAddress; + return this; + } + + + /** + * Job details for the employee (required if compensation is provided) + */ + public Builder job(PostV1CompaniesCompanyIdPeopleBatchesJob job) { + Utils.checkNotNull(job, "job"); + this.job = Optional.ofNullable(job); + return this; + } + + /** + * Job details for the employee (required if compensation is provided) + */ + public Builder job(Optional job) { + Utils.checkNotNull(job, "job"); + this.job = job; + return this; + } + + + /** + * Department details for the employee + */ + public Builder department(Department department) { + Utils.checkNotNull(department, "department"); + this.department = Optional.ofNullable(department); + return this; + } + + /** + * Department details for the employee + */ + public Builder department(Optional department) { + Utils.checkNotNull(department, "department"); + this.department = department; + return this; + } + + + /** + * Compensation details for the employee (requires job to be provided) + */ + public Builder compensation(Compensation compensation) { + Utils.checkNotNull(compensation, "compensation"); + this.compensation = Optional.ofNullable(compensation); + return this; + } + + /** + * Compensation details for the employee (requires job to be provided) + */ + public Builder compensation(Optional compensation) { + Utils.checkNotNull(compensation, "compensation"); + this.compensation = compensation; + return this; + } + + + /** + * Creates employee bank account(s) and payment method(s) for direct deposit. Payments can be split + * across accounts by Percentage or by Amount. If splitting payments by `Percentage`, all splits must + * have a `split_amount` and the percentages must add up to `100`. + * If splitting payments by `Amount`, the priority is set based on the order of the bank accounts in + * the array and the last bank account is the remainder account (should have `split_amount` set to + * `null`). + */ + public Builder bankAccounts(List bankAccounts) { + Utils.checkNotNull(bankAccounts, "bankAccounts"); + this.bankAccounts = Optional.ofNullable(bankAccounts); + return this; + } + + /** + * Creates employee bank account(s) and payment method(s) for direct deposit. Payments can be split + * across accounts by Percentage or by Amount. If splitting payments by `Percentage`, all splits must + * have a `split_amount` and the percentages must add up to `100`. + * If splitting payments by `Amount`, the priority is set based on the order of the bank accounts in + * the array and the last bank account is the remainder account (should have `split_amount` set to + * `null`). + */ + public Builder bankAccounts(Optional> bankAccounts) { + Utils.checkNotNull(bankAccounts, "bankAccounts"); + this.bankAccounts = bankAccounts; + return this; + } + + public PostV1CompaniesCompanyIdPeopleBatchesBatch build() { + + return new PostV1CompaniesCompanyIdPeopleBatchesBatch( + entityType, person, homeAddress, + workAddress, job, department, + compensation, bankAccounts); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1CompaniesCompanyIdPeopleBatchesBatchAction.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1CompaniesCompanyIdPeopleBatchesBatchAction.java new file mode 100644 index 000000000..291a722d6 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1CompaniesCompanyIdPeopleBatchesBatchAction.java @@ -0,0 +1,39 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PostV1CompaniesCompanyIdPeopleBatchesBatchAction + * + *

    The action to perform on the batch + */ +public enum PostV1CompaniesCompanyIdPeopleBatchesBatchAction { + CREATE("create"); + + @JsonValue + private final String value; + + PostV1CompaniesCompanyIdPeopleBatchesBatchAction(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PostV1CompaniesCompanyIdPeopleBatchesBatchAction o: PostV1CompaniesCompanyIdPeopleBatchesBatchAction.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1CompaniesCompanyIdPeopleBatchesEntityType.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1CompaniesCompanyIdPeopleBatchesEntityType.java new file mode 100644 index 000000000..e22023a3c --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1CompaniesCompanyIdPeopleBatchesEntityType.java @@ -0,0 +1,39 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PostV1CompaniesCompanyIdPeopleBatchesEntityType + * + *

    The type of entity to create + */ +public enum PostV1CompaniesCompanyIdPeopleBatchesEntityType { + EMPLOYEE("employee"); + + @JsonValue + private final String value; + + PostV1CompaniesCompanyIdPeopleBatchesEntityType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PostV1CompaniesCompanyIdPeopleBatchesEntityType o: PostV1CompaniesCompanyIdPeopleBatchesEntityType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequest.java index 36b0bdd75..5861a968d 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequest.java @@ -16,12 +16,6 @@ public class PostV1CompaniesCompanyIdPeopleBatchesRequest { - /** - * The UUID of the company - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_id") - private String companyId; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,35 +24,33 @@ public class PostV1CompaniesCompanyIdPeopleBatchesRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_id") + private String companyId; + @SpeakeasyMetadata("request:mediaType=application/json") private PostV1CompaniesCompanyIdPeopleBatchesRequestBody requestBody; @JsonCreator public PostV1CompaniesCompanyIdPeopleBatchesRequest( - String companyId, Optional xGustoAPIVersion, + String companyId, PostV1CompaniesCompanyIdPeopleBatchesRequestBody requestBody) { - Utils.checkNotNull(companyId, "companyId"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(companyId, "companyId"); Utils.checkNotNull(requestBody, "requestBody"); - this.companyId = companyId; this.xGustoAPIVersion = xGustoAPIVersion; + this.companyId = companyId; this.requestBody = requestBody; } public PostV1CompaniesCompanyIdPeopleBatchesRequest( String companyId, PostV1CompaniesCompanyIdPeopleBatchesRequestBody requestBody) { - this(companyId, Optional.empty(), requestBody); - } - - /** - * The UUID of the company - */ - @JsonIgnore - public String companyId() { - return companyId; + this(Optional.empty(), companyId, requestBody); } /** @@ -72,6 +64,14 @@ public Optional xGu return (Optional) xGustoAPIVersion; } + /** + * The UUID of the company + */ + @JsonIgnore + public String companyId() { + return companyId; + } + @JsonIgnore public PostV1CompaniesCompanyIdPeopleBatchesRequestBody requestBody() { return requestBody; @@ -82,15 +82,6 @@ public static Builder builder() { } - /** - * The UUID of the company - */ - public PostV1CompaniesCompanyIdPeopleBatchesRequest withCompanyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -114,6 +105,15 @@ public PostV1CompaniesCompanyIdPeopleBatchesRequest withXGustoAPIVersion(Optiona return this; } + /** + * The UUID of the company + */ + public PostV1CompaniesCompanyIdPeopleBatchesRequest withCompanyId(String companyId) { + Utils.checkNotNull(companyId, "companyId"); + this.companyId = companyId; + return this; + } + public PostV1CompaniesCompanyIdPeopleBatchesRequest withRequestBody(PostV1CompaniesCompanyIdPeopleBatchesRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); this.requestBody = requestBody; @@ -130,32 +130,32 @@ public boolean equals(java.lang.Object o) { } PostV1CompaniesCompanyIdPeopleBatchesRequest other = (PostV1CompaniesCompanyIdPeopleBatchesRequest) o; return - Utils.enhancedDeepEquals(this.companyId, other.companyId) && Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.companyId, other.companyId) && Utils.enhancedDeepEquals(this.requestBody, other.requestBody); } @Override public int hashCode() { return Utils.enhancedHash( - companyId, xGustoAPIVersion, requestBody); + xGustoAPIVersion, companyId, requestBody); } @Override public String toString() { return Utils.toString(PostV1CompaniesCompanyIdPeopleBatchesRequest.class, - "companyId", companyId, "xGustoAPIVersion", xGustoAPIVersion, + "companyId", companyId, "requestBody", requestBody); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String companyId; - private Optional xGustoAPIVersion; + private String companyId; + private PostV1CompaniesCompanyIdPeopleBatchesRequestBody requestBody; private Builder() { @@ -163,16 +163,6 @@ private Builder() { } - /** - * The UUID of the company - */ - public Builder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -196,6 +186,16 @@ public Builder xGustoAPIVersion(Optional batch; + private List batch; @JsonCreator public PostV1CompaniesCompanyIdPeopleBatchesRequestBody( @JsonProperty("idempotency_key") String idempotencyKey, - @JsonProperty("batch_action") BatchAction batchAction, - @JsonProperty("batch") List batch) { + @JsonProperty("batch_action") PostV1CompaniesCompanyIdPeopleBatchesBatchAction batchAction, + @JsonProperty("batch") List batch) { Utils.checkNotNull(idempotencyKey, "idempotencyKey"); Utils.checkNotNull(batchAction, "batchAction"); Utils.checkNotNull(batch, "batch"); @@ -56,7 +56,7 @@ public String idempotencyKey() { * The action to perform on the batch */ @JsonIgnore - public BatchAction batchAction() { + public PostV1CompaniesCompanyIdPeopleBatchesBatchAction batchAction() { return batchAction; } @@ -64,7 +64,7 @@ public BatchAction batchAction() { * Array of people to create */ @JsonIgnore - public List batch() { + public List batch() { return batch; } @@ -85,7 +85,7 @@ public PostV1CompaniesCompanyIdPeopleBatchesRequestBody withIdempotencyKey(Strin /** * The action to perform on the batch */ - public PostV1CompaniesCompanyIdPeopleBatchesRequestBody withBatchAction(BatchAction batchAction) { + public PostV1CompaniesCompanyIdPeopleBatchesRequestBody withBatchAction(PostV1CompaniesCompanyIdPeopleBatchesBatchAction batchAction) { Utils.checkNotNull(batchAction, "batchAction"); this.batchAction = batchAction; return this; @@ -94,7 +94,7 @@ public PostV1CompaniesCompanyIdPeopleBatchesRequestBody withBatchAction(BatchAct /** * Array of people to create */ - public PostV1CompaniesCompanyIdPeopleBatchesRequestBody withBatch(List batch) { + public PostV1CompaniesCompanyIdPeopleBatchesRequestBody withBatch(List batch) { Utils.checkNotNull(batch, "batch"); this.batch = batch; return this; @@ -134,9 +134,9 @@ public final static class Builder { private String idempotencyKey; - private BatchAction batchAction; + private PostV1CompaniesCompanyIdPeopleBatchesBatchAction batchAction; - private List batch; + private List batch; private Builder() { // force use of static builder() method @@ -156,7 +156,7 @@ public Builder idempotencyKey(String idempotencyKey) { /** * The action to perform on the batch */ - public Builder batchAction(BatchAction batchAction) { + public Builder batchAction(PostV1CompaniesCompanyIdPeopleBatchesBatchAction batchAction) { Utils.checkNotNull(batchAction, "batchAction"); this.batchAction = batchAction; return this; @@ -166,7 +166,7 @@ public Builder batchAction(BatchAction batchAction) { /** * Array of people to create */ - public Builder batch(List batch) { + public Builder batch(List batch) { Utils.checkNotNull(batch, "batch"); this.batch = batch; return this; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder.java index 88cb5ba3e..02885d2e7 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder.java @@ -16,11 +16,11 @@ public class PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder { - private String companyId; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String companyId; private PostV1CompaniesCompanyIdPeopleBatchesRequestBody requestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -28,12 +28,6 @@ public class PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder { public PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } public PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder xGustoAPIVersion(PostV1CompaniesCompanyIdPeopleBatchesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -47,6 +41,12 @@ public PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder xGustoAPIVersion(Opti return this; } + public PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder companyId(String companyId) { + Utils.checkNotNull(companyId, "companyId"); + this.companyId = companyId; + return this; + } + public PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder requestBody(PostV1CompaniesCompanyIdPeopleBatchesRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); this.requestBody = requestBody; @@ -59,8 +59,8 @@ private PostV1CompaniesCompanyIdPeopleBatchesRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PostV1CompaniesCompanyIdPeopleBatchesRequest request = new PostV1CompaniesCompanyIdPeopleBatchesRequest(companyId, - xGustoAPIVersion, + PostV1CompaniesCompanyIdPeopleBatchesRequest request = new PostV1CompaniesCompanyIdPeopleBatchesRequest(xGustoAPIVersion, + companyId, requestBody); return request; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1CompaniesCompanyUuidSignatoriesInviteRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1CompaniesCompanyUuidSignatoriesInviteRequest.java index b2d634d01..38c923eec 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1CompaniesCompanyUuidSignatoriesInviteRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1CompaniesCompanyUuidSignatoriesInviteRequest.java @@ -17,12 +17,6 @@ public class PostV1CompaniesCompanyUuidSignatoriesInviteRequest { - /** - * The UUID of the company - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") - private String companyUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -31,35 +25,33 @@ public class PostV1CompaniesCompanyUuidSignatoriesInviteRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") + private String companyUuid; + @SpeakeasyMetadata("request:mediaType=application/json") private SignatoryInviteRequest signatoryInviteRequest; @JsonCreator public PostV1CompaniesCompanyUuidSignatoriesInviteRequest( - String companyUuid, Optional xGustoAPIVersion, + String companyUuid, SignatoryInviteRequest signatoryInviteRequest) { - Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(signatoryInviteRequest, "signatoryInviteRequest"); - this.companyUuid = companyUuid; this.xGustoAPIVersion = xGustoAPIVersion; + this.companyUuid = companyUuid; this.signatoryInviteRequest = signatoryInviteRequest; } public PostV1CompaniesCompanyUuidSignatoriesInviteRequest( String companyUuid, SignatoryInviteRequest signatoryInviteRequest) { - this(companyUuid, Optional.empty(), signatoryInviteRequest); - } - - /** - * The UUID of the company - */ - @JsonIgnore - public String companyUuid() { - return companyUuid; + this(Optional.empty(), companyUuid, signatoryInviteRequest); } /** @@ -73,6 +65,14 @@ public Optional) xGustoAPIVersion; } + /** + * The UUID of the company + */ + @JsonIgnore + public String companyUuid() { + return companyUuid; + } + @JsonIgnore public SignatoryInviteRequest signatoryInviteRequest() { return signatoryInviteRequest; @@ -83,15 +83,6 @@ public static Builder builder() { } - /** - * The UUID of the company - */ - public PostV1CompaniesCompanyUuidSignatoriesInviteRequest withCompanyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -115,6 +106,15 @@ public PostV1CompaniesCompanyUuidSignatoriesInviteRequest withXGustoAPIVersion(O return this; } + /** + * The UUID of the company + */ + public PostV1CompaniesCompanyUuidSignatoriesInviteRequest withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + public PostV1CompaniesCompanyUuidSignatoriesInviteRequest withSignatoryInviteRequest(SignatoryInviteRequest signatoryInviteRequest) { Utils.checkNotNull(signatoryInviteRequest, "signatoryInviteRequest"); this.signatoryInviteRequest = signatoryInviteRequest; @@ -131,32 +131,32 @@ public boolean equals(java.lang.Object o) { } PostV1CompaniesCompanyUuidSignatoriesInviteRequest other = (PostV1CompaniesCompanyUuidSignatoriesInviteRequest) o; return - Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && Utils.enhancedDeepEquals(this.signatoryInviteRequest, other.signatoryInviteRequest); } @Override public int hashCode() { return Utils.enhancedHash( - companyUuid, xGustoAPIVersion, signatoryInviteRequest); + xGustoAPIVersion, companyUuid, signatoryInviteRequest); } @Override public String toString() { return Utils.toString(PostV1CompaniesCompanyUuidSignatoriesInviteRequest.class, - "companyUuid", companyUuid, "xGustoAPIVersion", xGustoAPIVersion, + "companyUuid", companyUuid, "signatoryInviteRequest", signatoryInviteRequest); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String companyUuid; - private Optional xGustoAPIVersion; + private String companyUuid; + private SignatoryInviteRequest signatoryInviteRequest; private Builder() { @@ -164,16 +164,6 @@ private Builder() { } - /** - * The UUID of the company - */ - public Builder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -197,6 +187,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String companyUuid; private SignatoryInviteRequest signatoryInviteRequest; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -29,12 +29,6 @@ public class PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder { public PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder xGustoAPIVersion(PostV1CompaniesCompanyUuidSignatoriesInviteHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -48,6 +42,12 @@ public PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder xGustoAPIVersio return this; } + public PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + public PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder signatoryInviteRequest(SignatoryInviteRequest signatoryInviteRequest) { Utils.checkNotNull(signatoryInviteRequest, "signatoryInviteRequest"); this.signatoryInviteRequest = signatoryInviteRequest; @@ -60,8 +60,8 @@ private PostV1CompaniesCompanyUuidSignatoriesInviteRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PostV1CompaniesCompanyUuidSignatoriesInviteRequest request = new PostV1CompaniesCompanyUuidSignatoriesInviteRequest(companyUuid, - xGustoAPIVersion, + PostV1CompaniesCompanyUuidSignatoriesInviteRequest request = new PostV1CompaniesCompanyUuidSignatoriesInviteRequest(xGustoAPIVersion, + companyUuid, signatoryInviteRequest); return request; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1CompanySignatoriesRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1CompanySignatoriesRequest.java index 2270cdcdd..1d1485c1c 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1CompanySignatoriesRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1CompanySignatoriesRequest.java @@ -17,12 +17,6 @@ public class PostV1CompanySignatoriesRequest { - /** - * The UUID of the company - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") - private String companyUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -31,35 +25,33 @@ public class PostV1CompanySignatoriesRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") + private String companyUuid; + @SpeakeasyMetadata("request:mediaType=application/json") private SignatoryCreateRequest signatoryCreateRequest; @JsonCreator public PostV1CompanySignatoriesRequest( - String companyUuid, Optional xGustoAPIVersion, + String companyUuid, SignatoryCreateRequest signatoryCreateRequest) { - Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(signatoryCreateRequest, "signatoryCreateRequest"); - this.companyUuid = companyUuid; this.xGustoAPIVersion = xGustoAPIVersion; + this.companyUuid = companyUuid; this.signatoryCreateRequest = signatoryCreateRequest; } public PostV1CompanySignatoriesRequest( String companyUuid, SignatoryCreateRequest signatoryCreateRequest) { - this(companyUuid, Optional.empty(), signatoryCreateRequest); - } - - /** - * The UUID of the company - */ - @JsonIgnore - public String companyUuid() { - return companyUuid; + this(Optional.empty(), companyUuid, signatoryCreateRequest); } /** @@ -73,6 +65,14 @@ public Optional xGustoAPIVersion return (Optional) xGustoAPIVersion; } + /** + * The UUID of the company + */ + @JsonIgnore + public String companyUuid() { + return companyUuid; + } + @JsonIgnore public SignatoryCreateRequest signatoryCreateRequest() { return signatoryCreateRequest; @@ -83,15 +83,6 @@ public static Builder builder() { } - /** - * The UUID of the company - */ - public PostV1CompanySignatoriesRequest withCompanyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -115,6 +106,15 @@ public PostV1CompanySignatoriesRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String companyUuid; + private SignatoryCreateRequest signatoryCreateRequest; private Builder() { @@ -164,16 +164,6 @@ private Builder() { } - /** - * The UUID of the company - */ - public Builder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -197,6 +187,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String companyUuid; private SignatoryCreateRequest signatoryCreateRequest; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -29,12 +29,6 @@ public class PostV1CompanySignatoriesRequestBuilder { public PostV1CompanySignatoriesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostV1CompanySignatoriesRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public PostV1CompanySignatoriesRequestBuilder xGustoAPIVersion(PostV1CompanySignatoriesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -48,6 +42,12 @@ public PostV1CompanySignatoriesRequestBuilder xGustoAPIVersion(OptionalDetermines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ +public enum PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion { + TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15("2025-06-15"); + + @JsonValue + private final String value; + + PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion o: PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsRequest.java new file mode 100644 index 000000000..d2b35690f --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsRequest.java @@ -0,0 +1,191 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api.utils.LazySingletonValue; +import com.gusto.embedded_api.utils.SpeakeasyMetadata; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class PostV1ContractorsContractorUuidMemberPortalInvitationsRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + + /** + * The UUID of the contractor + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=contractor_uuid") + private String contractorUuid; + + @JsonCreator + public PostV1ContractorsContractorUuidMemberPortalInvitationsRequest( + Optional xGustoAPIVersion, + String contractorUuid) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.xGustoAPIVersion = xGustoAPIVersion; + this.contractorUuid = contractorUuid; + } + + public PostV1ContractorsContractorUuidMemberPortalInvitationsRequest( + String contractorUuid) { + this(Optional.empty(), contractorUuid); + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + + /** + * The UUID of the contractor + */ + @JsonIgnore + public String contractorUuid() { + return contractorUuid; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public PostV1ContractorsContractorUuidMemberPortalInvitationsRequest withXGustoAPIVersion(PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public PostV1ContractorsContractorUuidMemberPortalInvitationsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + /** + * The UUID of the contractor + */ + public PostV1ContractorsContractorUuidMemberPortalInvitationsRequest withContractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PostV1ContractorsContractorUuidMemberPortalInvitationsRequest other = (PostV1ContractorsContractorUuidMemberPortalInvitationsRequest) o; + return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.contractorUuid, other.contractorUuid); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + xGustoAPIVersion, contractorUuid); + } + + @Override + public String toString() { + return Utils.toString(PostV1ContractorsContractorUuidMemberPortalInvitationsRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, + "contractorUuid", contractorUuid); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional xGustoAPIVersion; + + private String contractorUuid; + + private Builder() { + // force use of static builder() method + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + + /** + * The UUID of the contractor + */ + public Builder contractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + + public PostV1ContractorsContractorUuidMemberPortalInvitationsRequest build() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + return new PostV1ContractorsContractorUuidMemberPortalInvitationsRequest( + xGustoAPIVersion, contractorUuid); + } + + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "X-Gusto-API-Version", + "\"2025-06-15\"", + new TypeReference>() {}); + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder.java new file mode 100644 index 000000000..c29ad53d1 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder.java @@ -0,0 +1,75 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import static com.gusto.embedded_api.operations.Operations.RequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api.SDKConfiguration; +import com.gusto.embedded_api.operations.PostV1ContractorsContractorUuidMemberPortalInvitations; +import com.gusto.embedded_api.utils.Headers; +import com.gusto.embedded_api.utils.LazySingletonValue; +import com.gusto.embedded_api.utils.Utils; +import java.lang.String; +import java.util.Optional; + +public class PostV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder { + + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2025-06-15\"", + new TypeReference>() {}); + private String contractorUuid; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public PostV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public PostV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder xGustoAPIVersion(PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public PostV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public PostV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder contractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + + + private PostV1ContractorsContractorUuidMemberPortalInvitationsRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + PostV1ContractorsContractorUuidMemberPortalInvitationsRequest request = new PostV1ContractorsContractorUuidMemberPortalInvitationsRequest(xGustoAPIVersion, + contractorUuid); + + return request; + } + + public PostV1ContractorsContractorUuidMemberPortalInvitationsResponse call() { + + RequestOperation operation + = new PostV1ContractorsContractorUuidMemberPortalInvitations.Sync(sdkConfiguration, _headers); + PostV1ContractorsContractorUuidMemberPortalInvitationsRequest request = buildRequest(); + + return operation.handleResponse(operation.doRequest(request)); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2025-06-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsResponse.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsResponse.java new file mode 100644 index 000000000..aa00bfe0d --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsResponse.java @@ -0,0 +1,181 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api.utils.Response; +import com.gusto.embedded_api.utils.Utils; +import java.io.InputStream; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.net.http.HttpResponse; + + +public class PostV1ContractorsContractorUuidMemberPortalInvitationsResponse implements Response { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + @JsonCreator + public PostV1ContractorsContractorUuidMemberPortalInvitationsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public PostV1ContractorsContractorUuidMemberPortalInvitationsResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public PostV1ContractorsContractorUuidMemberPortalInvitationsResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public PostV1ContractorsContractorUuidMemberPortalInvitationsResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PostV1ContractorsContractorUuidMemberPortalInvitationsResponse other = (PostV1ContractorsContractorUuidMemberPortalInvitationsResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse); + } + + @Override + public String toString() { + return Utils.toString(PostV1ContractorsContractorUuidMemberPortalInvitationsResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + public PostV1ContractorsContractorUuidMemberPortalInvitationsResponse build() { + + return new PostV1ContractorsContractorUuidMemberPortalInvitationsResponse( + contentType, statusCode, rawResponse); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1ContractorsContractorUuidRehireRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1ContractorsContractorUuidRehireRequest.java index 52dfd9bf6..b50580fb6 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1ContractorsContractorUuidRehireRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1ContractorsContractorUuidRehireRequest.java @@ -16,12 +16,6 @@ public class PostV1ContractorsContractorUuidRehireRequest { - /** - * The UUID of the contractor - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=contractor_uuid") - private String contractorUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,34 +24,32 @@ public class PostV1ContractorsContractorUuidRehireRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the contractor + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=contractor_uuid") + private String contractorUuid; + @SpeakeasyMetadata("request:mediaType=application/json") private Optional requestBody; @JsonCreator public PostV1ContractorsContractorUuidRehireRequest( - String contractorUuid, Optional xGustoAPIVersion, + String contractorUuid, Optional requestBody) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(contractorUuid, "contractorUuid"); Utils.checkNotNull(requestBody, "requestBody"); - this.contractorUuid = contractorUuid; this.xGustoAPIVersion = xGustoAPIVersion; + this.contractorUuid = contractorUuid; this.requestBody = requestBody; } public PostV1ContractorsContractorUuidRehireRequest( String contractorUuid) { - this(contractorUuid, Optional.empty(), Optional.empty()); - } - - /** - * The UUID of the contractor - */ - @JsonIgnore - public String contractorUuid() { - return contractorUuid; + this(Optional.empty(), contractorUuid, Optional.empty()); } /** @@ -71,6 +63,14 @@ public Optional xGu return (Optional) xGustoAPIVersion; } + /** + * The UUID of the contractor + */ + @JsonIgnore + public String contractorUuid() { + return contractorUuid; + } + @SuppressWarnings("unchecked") @JsonIgnore public Optional requestBody() { @@ -82,15 +82,6 @@ public static Builder builder() { } - /** - * The UUID of the contractor - */ - public PostV1ContractorsContractorUuidRehireRequest withContractorUuid(String contractorUuid) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); - this.contractorUuid = contractorUuid; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -114,6 +105,15 @@ public PostV1ContractorsContractorUuidRehireRequest withXGustoAPIVersion(Optiona return this; } + /** + * The UUID of the contractor + */ + public PostV1ContractorsContractorUuidRehireRequest withContractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + public PostV1ContractorsContractorUuidRehireRequest withRequestBody(PostV1ContractorsContractorUuidRehireRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); this.requestBody = Optional.ofNullable(requestBody); @@ -137,32 +137,32 @@ public boolean equals(java.lang.Object o) { } PostV1ContractorsContractorUuidRehireRequest other = (PostV1ContractorsContractorUuidRehireRequest) o; return - Utils.enhancedDeepEquals(this.contractorUuid, other.contractorUuid) && Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.contractorUuid, other.contractorUuid) && Utils.enhancedDeepEquals(this.requestBody, other.requestBody); } @Override public int hashCode() { return Utils.enhancedHash( - contractorUuid, xGustoAPIVersion, requestBody); + xGustoAPIVersion, contractorUuid, requestBody); } @Override public String toString() { return Utils.toString(PostV1ContractorsContractorUuidRehireRequest.class, - "contractorUuid", contractorUuid, "xGustoAPIVersion", xGustoAPIVersion, + "contractorUuid", contractorUuid, "requestBody", requestBody); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String contractorUuid; - private Optional xGustoAPIVersion; + private String contractorUuid; + private Optional requestBody = Optional.empty(); private Builder() { @@ -170,16 +170,6 @@ private Builder() { } - /** - * The UUID of the contractor - */ - public Builder contractorUuid(String contractorUuid) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); - this.contractorUuid = contractorUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -203,6 +193,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String contractorUuid; private Optional requestBody = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -28,12 +28,6 @@ public class PostV1ContractorsContractorUuidRehireRequestBuilder { public PostV1ContractorsContractorUuidRehireRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostV1ContractorsContractorUuidRehireRequestBuilder contractorUuid(String contractorUuid) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); - this.contractorUuid = contractorUuid; - return this; - } public PostV1ContractorsContractorUuidRehireRequestBuilder xGustoAPIVersion(PostV1ContractorsContractorUuidRehireHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,6 +40,12 @@ public PostV1ContractorsContractorUuidRehireRequestBuilder xGustoAPIVersion(Opti this.xGustoAPIVersion = xGustoAPIVersion; return this; } + + public PostV1ContractorsContractorUuidRehireRequestBuilder contractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } public PostV1ContractorsContractorUuidRehireRequestBuilder requestBody(PostV1ContractorsContractorUuidRehireRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); @@ -65,8 +65,8 @@ private PostV1ContractorsContractorUuidRehireRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PostV1ContractorsContractorUuidRehireRequest request = new PostV1ContractorsContractorUuidRehireRequest(contractorUuid, - xGustoAPIVersion, + PostV1ContractorsContractorUuidRehireRequest request = new PostV1ContractorsContractorUuidRehireRequest(xGustoAPIVersion, + contractorUuid, requestBody); return request; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1ContractorsContractorUuidTerminationRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1ContractorsContractorUuidTerminationRequest.java index f6c9a357b..546b3ffe6 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1ContractorsContractorUuidTerminationRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1ContractorsContractorUuidTerminationRequest.java @@ -16,12 +16,6 @@ public class PostV1ContractorsContractorUuidTerminationRequest { - /** - * The UUID of the contractor - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=contractor_uuid") - private String contractorUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,34 +24,32 @@ public class PostV1ContractorsContractorUuidTerminationRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the contractor + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=contractor_uuid") + private String contractorUuid; + @SpeakeasyMetadata("request:mediaType=application/json") private Optional requestBody; @JsonCreator public PostV1ContractorsContractorUuidTerminationRequest( - String contractorUuid, Optional xGustoAPIVersion, + String contractorUuid, Optional requestBody) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(contractorUuid, "contractorUuid"); Utils.checkNotNull(requestBody, "requestBody"); - this.contractorUuid = contractorUuid; this.xGustoAPIVersion = xGustoAPIVersion; + this.contractorUuid = contractorUuid; this.requestBody = requestBody; } public PostV1ContractorsContractorUuidTerminationRequest( String contractorUuid) { - this(contractorUuid, Optional.empty(), Optional.empty()); - } - - /** - * The UUID of the contractor - */ - @JsonIgnore - public String contractorUuid() { - return contractorUuid; + this(Optional.empty(), contractorUuid, Optional.empty()); } /** @@ -71,6 +63,14 @@ public Optional) xGustoAPIVersion; } + /** + * The UUID of the contractor + */ + @JsonIgnore + public String contractorUuid() { + return contractorUuid; + } + @SuppressWarnings("unchecked") @JsonIgnore public Optional requestBody() { @@ -82,15 +82,6 @@ public static Builder builder() { } - /** - * The UUID of the contractor - */ - public PostV1ContractorsContractorUuidTerminationRequest withContractorUuid(String contractorUuid) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); - this.contractorUuid = contractorUuid; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -114,6 +105,15 @@ public PostV1ContractorsContractorUuidTerminationRequest withXGustoAPIVersion(Op return this; } + /** + * The UUID of the contractor + */ + public PostV1ContractorsContractorUuidTerminationRequest withContractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + public PostV1ContractorsContractorUuidTerminationRequest withRequestBody(PostV1ContractorsContractorUuidTerminationRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); this.requestBody = Optional.ofNullable(requestBody); @@ -137,32 +137,32 @@ public boolean equals(java.lang.Object o) { } PostV1ContractorsContractorUuidTerminationRequest other = (PostV1ContractorsContractorUuidTerminationRequest) o; return - Utils.enhancedDeepEquals(this.contractorUuid, other.contractorUuid) && Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.contractorUuid, other.contractorUuid) && Utils.enhancedDeepEquals(this.requestBody, other.requestBody); } @Override public int hashCode() { return Utils.enhancedHash( - contractorUuid, xGustoAPIVersion, requestBody); + xGustoAPIVersion, contractorUuid, requestBody); } @Override public String toString() { return Utils.toString(PostV1ContractorsContractorUuidTerminationRequest.class, - "contractorUuid", contractorUuid, "xGustoAPIVersion", xGustoAPIVersion, + "contractorUuid", contractorUuid, "requestBody", requestBody); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String contractorUuid; - private Optional xGustoAPIVersion; + private String contractorUuid; + private Optional requestBody = Optional.empty(); private Builder() { @@ -170,16 +170,6 @@ private Builder() { } - /** - * The UUID of the contractor - */ - public Builder contractorUuid(String contractorUuid) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); - this.contractorUuid = contractorUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -203,6 +193,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String contractorUuid; private Optional requestBody = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -28,12 +28,6 @@ public class PostV1ContractorsContractorUuidTerminationRequestBuilder { public PostV1ContractorsContractorUuidTerminationRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostV1ContractorsContractorUuidTerminationRequestBuilder contractorUuid(String contractorUuid) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); - this.contractorUuid = contractorUuid; - return this; - } public PostV1ContractorsContractorUuidTerminationRequestBuilder xGustoAPIVersion(PostV1ContractorsContractorUuidTerminationHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,6 +40,12 @@ public PostV1ContractorsContractorUuidTerminationRequestBuilder xGustoAPIVersion this.xGustoAPIVersion = xGustoAPIVersion; return this; } + + public PostV1ContractorsContractorUuidTerminationRequestBuilder contractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } public PostV1ContractorsContractorUuidTerminationRequestBuilder requestBody(PostV1ContractorsContractorUuidTerminationRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); @@ -65,8 +65,8 @@ private PostV1ContractorsContractorUuidTerminationRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PostV1ContractorsContractorUuidTerminationRequest request = new PostV1ContractorsContractorUuidTerminationRequest(contractorUuid, - xGustoAPIVersion, + PostV1ContractorsContractorUuidTerminationRequest request = new PostV1ContractorsContractorUuidTerminationRequest(xGustoAPIVersion, + contractorUuid, requestBody); return request; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1EmployeesEmployeeIdHomeAddressesRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1EmployeesEmployeeIdHomeAddressesRequest.java index 31b0eb659..ac629a9f9 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1EmployeesEmployeeIdHomeAddressesRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1EmployeesEmployeeIdHomeAddressesRequest.java @@ -16,12 +16,6 @@ public class PostV1EmployeesEmployeeIdHomeAddressesRequest { - /** - * The UUID of the employee - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=employee_id") - private String employeeId; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,35 +24,33 @@ public class PostV1EmployeesEmployeeIdHomeAddressesRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the employee + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=employee_id") + private String employeeId; + @SpeakeasyMetadata("request:mediaType=application/json") private PostV1EmployeesEmployeeIdHomeAddressesRequestBody requestBody; @JsonCreator public PostV1EmployeesEmployeeIdHomeAddressesRequest( - String employeeId, Optional xGustoAPIVersion, + String employeeId, PostV1EmployeesEmployeeIdHomeAddressesRequestBody requestBody) { - Utils.checkNotNull(employeeId, "employeeId"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(employeeId, "employeeId"); Utils.checkNotNull(requestBody, "requestBody"); - this.employeeId = employeeId; this.xGustoAPIVersion = xGustoAPIVersion; + this.employeeId = employeeId; this.requestBody = requestBody; } public PostV1EmployeesEmployeeIdHomeAddressesRequest( String employeeId, PostV1EmployeesEmployeeIdHomeAddressesRequestBody requestBody) { - this(employeeId, Optional.empty(), requestBody); - } - - /** - * The UUID of the employee - */ - @JsonIgnore - public String employeeId() { - return employeeId; + this(Optional.empty(), employeeId, requestBody); } /** @@ -72,6 +64,14 @@ public Optional xG return (Optional) xGustoAPIVersion; } + /** + * The UUID of the employee + */ + @JsonIgnore + public String employeeId() { + return employeeId; + } + @JsonIgnore public PostV1EmployeesEmployeeIdHomeAddressesRequestBody requestBody() { return requestBody; @@ -82,15 +82,6 @@ public static Builder builder() { } - /** - * The UUID of the employee - */ - public PostV1EmployeesEmployeeIdHomeAddressesRequest withEmployeeId(String employeeId) { - Utils.checkNotNull(employeeId, "employeeId"); - this.employeeId = employeeId; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -114,6 +105,15 @@ public PostV1EmployeesEmployeeIdHomeAddressesRequest withXGustoAPIVersion(Option return this; } + /** + * The UUID of the employee + */ + public PostV1EmployeesEmployeeIdHomeAddressesRequest withEmployeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + public PostV1EmployeesEmployeeIdHomeAddressesRequest withRequestBody(PostV1EmployeesEmployeeIdHomeAddressesRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); this.requestBody = requestBody; @@ -130,32 +130,32 @@ public boolean equals(java.lang.Object o) { } PostV1EmployeesEmployeeIdHomeAddressesRequest other = (PostV1EmployeesEmployeeIdHomeAddressesRequest) o; return - Utils.enhancedDeepEquals(this.employeeId, other.employeeId) && Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.employeeId, other.employeeId) && Utils.enhancedDeepEquals(this.requestBody, other.requestBody); } @Override public int hashCode() { return Utils.enhancedHash( - employeeId, xGustoAPIVersion, requestBody); + xGustoAPIVersion, employeeId, requestBody); } @Override public String toString() { return Utils.toString(PostV1EmployeesEmployeeIdHomeAddressesRequest.class, - "employeeId", employeeId, "xGustoAPIVersion", xGustoAPIVersion, + "employeeId", employeeId, "requestBody", requestBody); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String employeeId; - private Optional xGustoAPIVersion; + private String employeeId; + private PostV1EmployeesEmployeeIdHomeAddressesRequestBody requestBody; private Builder() { @@ -163,16 +163,6 @@ private Builder() { } - /** - * The UUID of the employee - */ - public Builder employeeId(String employeeId) { - Utils.checkNotNull(employeeId, "employeeId"); - this.employeeId = employeeId; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -196,6 +186,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String employeeId; private PostV1EmployeesEmployeeIdHomeAddressesRequestBody requestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -28,12 +28,6 @@ public class PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder { public PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder employeeId(String employeeId) { - Utils.checkNotNull(employeeId, "employeeId"); - this.employeeId = employeeId; - return this; - } public PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder xGustoAPIVersion(PostV1EmployeesEmployeeIdHomeAddressesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -47,6 +41,12 @@ public PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder xGustoAPIVersion(Opt return this; } + public PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder employeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + public PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder requestBody(PostV1EmployeesEmployeeIdHomeAddressesRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); this.requestBody = requestBody; @@ -59,8 +59,8 @@ private PostV1EmployeesEmployeeIdHomeAddressesRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PostV1EmployeesEmployeeIdHomeAddressesRequest request = new PostV1EmployeesEmployeeIdHomeAddressesRequest(employeeId, - xGustoAPIVersion, + PostV1EmployeesEmployeeIdHomeAddressesRequest request = new PostV1EmployeesEmployeeIdHomeAddressesRequest(xGustoAPIVersion, + employeeId, requestBody); return request; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1EmployeesEmployeeIdJobsRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1EmployeesEmployeeIdJobsRequest.java index 26c81336d..d0db23a4a 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1EmployeesEmployeeIdJobsRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1EmployeesEmployeeIdJobsRequest.java @@ -17,12 +17,6 @@ public class PostV1EmployeesEmployeeIdJobsRequest { - /** - * The UUID of the employee - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=employee_id") - private String employeeId; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -31,35 +25,33 @@ public class PostV1EmployeesEmployeeIdJobsRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the employee + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=employee_id") + private String employeeId; + @SpeakeasyMetadata("request:mediaType=application/json") private JobsCreateRequestBody jobsCreateRequestBody; @JsonCreator public PostV1EmployeesEmployeeIdJobsRequest( - String employeeId, Optional xGustoAPIVersion, + String employeeId, JobsCreateRequestBody jobsCreateRequestBody) { - Utils.checkNotNull(employeeId, "employeeId"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(employeeId, "employeeId"); Utils.checkNotNull(jobsCreateRequestBody, "jobsCreateRequestBody"); - this.employeeId = employeeId; this.xGustoAPIVersion = xGustoAPIVersion; + this.employeeId = employeeId; this.jobsCreateRequestBody = jobsCreateRequestBody; } public PostV1EmployeesEmployeeIdJobsRequest( String employeeId, JobsCreateRequestBody jobsCreateRequestBody) { - this(employeeId, Optional.empty(), jobsCreateRequestBody); - } - - /** - * The UUID of the employee - */ - @JsonIgnore - public String employeeId() { - return employeeId; + this(Optional.empty(), employeeId, jobsCreateRequestBody); } /** @@ -73,6 +65,14 @@ public Optional xGustoAPIVe return (Optional) xGustoAPIVersion; } + /** + * The UUID of the employee + */ + @JsonIgnore + public String employeeId() { + return employeeId; + } + @JsonIgnore public JobsCreateRequestBody jobsCreateRequestBody() { return jobsCreateRequestBody; @@ -83,15 +83,6 @@ public static Builder builder() { } - /** - * The UUID of the employee - */ - public PostV1EmployeesEmployeeIdJobsRequest withEmployeeId(String employeeId) { - Utils.checkNotNull(employeeId, "employeeId"); - this.employeeId = employeeId; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -115,6 +106,15 @@ public PostV1EmployeesEmployeeIdJobsRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String employeeId; + private JobsCreateRequestBody jobsCreateRequestBody; private Builder() { @@ -164,16 +164,6 @@ private Builder() { } - /** - * The UUID of the employee - */ - public Builder employeeId(String employeeId) { - Utils.checkNotNull(employeeId, "employeeId"); - this.employeeId = employeeId; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -197,6 +187,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String employeeId; private JobsCreateRequestBody jobsCreateRequestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -29,12 +29,6 @@ public class PostV1EmployeesEmployeeIdJobsRequestBuilder { public PostV1EmployeesEmployeeIdJobsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostV1EmployeesEmployeeIdJobsRequestBuilder employeeId(String employeeId) { - Utils.checkNotNull(employeeId, "employeeId"); - this.employeeId = employeeId; - return this; - } public PostV1EmployeesEmployeeIdJobsRequestBuilder xGustoAPIVersion(PostV1EmployeesEmployeeIdJobsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -48,6 +42,12 @@ public PostV1EmployeesEmployeeIdJobsRequestBuilder xGustoAPIVersion(Optional rawResponse; /** - * created + * created a primary job with a null title */ private Optional job; @@ -87,7 +87,7 @@ public HttpResponse rawResponse() { } /** - * created + * created a primary job with a null title */ @SuppressWarnings("unchecked") @JsonIgnore @@ -128,7 +128,7 @@ public PostV1EmployeesEmployeeIdJobsResponse withRawResponse(HttpResponse job) { Utils.checkNotNull(job, "job"); @@ -225,7 +225,7 @@ public Builder rawResponse(HttpResponse rawResponse) { /** - * created + * created a primary job with a null title */ public Builder job(Job job) { Utils.checkNotNull(job, "job"); @@ -234,7 +234,7 @@ public Builder job(Job job) { } /** - * created + * created a primary job with a null title */ public Builder job(Optional job) { Utils.checkNotNull(job, "job"); diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.java new file mode 100644 index 000000000..6674d8d00 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion + * + *

    Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ +public enum PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion { + TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15("2025-06-15"); + + @JsonValue + private final String value; + + PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion o: PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest.java new file mode 100644 index 000000000..2c3be2e81 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest.java @@ -0,0 +1,191 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api.utils.LazySingletonValue; +import com.gusto.embedded_api.utils.SpeakeasyMetadata; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + + /** + * The UUID of the employee + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=employee_id") + private String employeeId; + + @JsonCreator + public PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest( + Optional xGustoAPIVersion, + String employeeId) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(employeeId, "employeeId"); + this.xGustoAPIVersion = xGustoAPIVersion; + this.employeeId = employeeId; + } + + public PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest( + String employeeId) { + this(Optional.empty(), employeeId); + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + + /** + * The UUID of the employee + */ + @JsonIgnore + public String employeeId() { + return employeeId; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest withXGustoAPIVersion(PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + /** + * The UUID of the employee + */ + public PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest withEmployeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest other = (PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest) o; + return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.employeeId, other.employeeId); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + xGustoAPIVersion, employeeId); + } + + @Override + public String toString() { + return Utils.toString(PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, + "employeeId", employeeId); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional xGustoAPIVersion; + + private String employeeId; + + private Builder() { + // force use of static builder() method + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + + /** + * The UUID of the employee + */ + public Builder employeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + + public PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest build() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + return new PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest( + xGustoAPIVersion, employeeId); + } + + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "X-Gusto-API-Version", + "\"2025-06-15\"", + new TypeReference>() {}); + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java new file mode 100644 index 000000000..cecdf3f82 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java @@ -0,0 +1,75 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import static com.gusto.embedded_api.operations.Operations.RequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api.SDKConfiguration; +import com.gusto.embedded_api.operations.PostV1EmployeesEmployeeIdMemberPortalInvitations; +import com.gusto.embedded_api.utils.Headers; +import com.gusto.embedded_api.utils.LazySingletonValue; +import com.gusto.embedded_api.utils.Utils; +import java.lang.String; +import java.util.Optional; + +public class PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder { + + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2025-06-15\"", + new TypeReference>() {}); + private String employeeId; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder xGustoAPIVersion(PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder employeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + + + private PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest request = new PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest(xGustoAPIVersion, + employeeId); + + return request; + } + + public PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse call() { + + RequestOperation operation + = new PostV1EmployeesEmployeeIdMemberPortalInvitations.Sync(sdkConfiguration, _headers); + PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest request = buildRequest(); + + return operation.handleResponse(operation.doRequest(request)); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2025-06-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java new file mode 100644 index 000000000..42bdf0330 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java @@ -0,0 +1,181 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api.utils.Response; +import com.gusto.embedded_api.utils.Utils; +import java.io.InputStream; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.net.http.HttpResponse; + + +public class PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse implements Response { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + @JsonCreator + public PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse other = (PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse); + } + + @Override + public String toString() { + return Utils.toString(PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + public PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse build() { + + return new PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse( + contentType, statusCode, rawResponse); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1EmployeesEmployeeIdWorkAddressesRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1EmployeesEmployeeIdWorkAddressesRequest.java index 2be423506..508978629 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1EmployeesEmployeeIdWorkAddressesRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1EmployeesEmployeeIdWorkAddressesRequest.java @@ -16,12 +16,6 @@ public class PostV1EmployeesEmployeeIdWorkAddressesRequest { - /** - * The UUID of the employee - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=employee_id") - private String employeeId; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,35 +24,33 @@ public class PostV1EmployeesEmployeeIdWorkAddressesRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the employee + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=employee_id") + private String employeeId; + @SpeakeasyMetadata("request:mediaType=application/json") private PostV1EmployeesEmployeeIdWorkAddressesRequestBody requestBody; @JsonCreator public PostV1EmployeesEmployeeIdWorkAddressesRequest( - String employeeId, Optional xGustoAPIVersion, + String employeeId, PostV1EmployeesEmployeeIdWorkAddressesRequestBody requestBody) { - Utils.checkNotNull(employeeId, "employeeId"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(employeeId, "employeeId"); Utils.checkNotNull(requestBody, "requestBody"); - this.employeeId = employeeId; this.xGustoAPIVersion = xGustoAPIVersion; + this.employeeId = employeeId; this.requestBody = requestBody; } public PostV1EmployeesEmployeeIdWorkAddressesRequest( String employeeId, PostV1EmployeesEmployeeIdWorkAddressesRequestBody requestBody) { - this(employeeId, Optional.empty(), requestBody); - } - - /** - * The UUID of the employee - */ - @JsonIgnore - public String employeeId() { - return employeeId; + this(Optional.empty(), employeeId, requestBody); } /** @@ -72,6 +64,14 @@ public Optional xG return (Optional) xGustoAPIVersion; } + /** + * The UUID of the employee + */ + @JsonIgnore + public String employeeId() { + return employeeId; + } + @JsonIgnore public PostV1EmployeesEmployeeIdWorkAddressesRequestBody requestBody() { return requestBody; @@ -82,15 +82,6 @@ public static Builder builder() { } - /** - * The UUID of the employee - */ - public PostV1EmployeesEmployeeIdWorkAddressesRequest withEmployeeId(String employeeId) { - Utils.checkNotNull(employeeId, "employeeId"); - this.employeeId = employeeId; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -114,6 +105,15 @@ public PostV1EmployeesEmployeeIdWorkAddressesRequest withXGustoAPIVersion(Option return this; } + /** + * The UUID of the employee + */ + public PostV1EmployeesEmployeeIdWorkAddressesRequest withEmployeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + public PostV1EmployeesEmployeeIdWorkAddressesRequest withRequestBody(PostV1EmployeesEmployeeIdWorkAddressesRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); this.requestBody = requestBody; @@ -130,32 +130,32 @@ public boolean equals(java.lang.Object o) { } PostV1EmployeesEmployeeIdWorkAddressesRequest other = (PostV1EmployeesEmployeeIdWorkAddressesRequest) o; return - Utils.enhancedDeepEquals(this.employeeId, other.employeeId) && Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.employeeId, other.employeeId) && Utils.enhancedDeepEquals(this.requestBody, other.requestBody); } @Override public int hashCode() { return Utils.enhancedHash( - employeeId, xGustoAPIVersion, requestBody); + xGustoAPIVersion, employeeId, requestBody); } @Override public String toString() { return Utils.toString(PostV1EmployeesEmployeeIdWorkAddressesRequest.class, - "employeeId", employeeId, "xGustoAPIVersion", xGustoAPIVersion, + "employeeId", employeeId, "requestBody", requestBody); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String employeeId; - private Optional xGustoAPIVersion; + private String employeeId; + private PostV1EmployeesEmployeeIdWorkAddressesRequestBody requestBody; private Builder() { @@ -163,16 +163,6 @@ private Builder() { } - /** - * The UUID of the employee - */ - public Builder employeeId(String employeeId) { - Utils.checkNotNull(employeeId, "employeeId"); - this.employeeId = employeeId; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -196,6 +186,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String employeeId; private PostV1EmployeesEmployeeIdWorkAddressesRequestBody requestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -28,12 +28,6 @@ public class PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder { public PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder employeeId(String employeeId) { - Utils.checkNotNull(employeeId, "employeeId"); - this.employeeId = employeeId; - return this; - } public PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder xGustoAPIVersion(PostV1EmployeesEmployeeIdWorkAddressesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -47,6 +41,12 @@ public PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder xGustoAPIVersion(Opt return this; } + public PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder employeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + public PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder requestBody(PostV1EmployeesEmployeeIdWorkAddressesRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); this.requestBody = requestBody; @@ -59,8 +59,8 @@ private PostV1EmployeesEmployeeIdWorkAddressesRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PostV1EmployeesEmployeeIdWorkAddressesRequest request = new PostV1EmployeesEmployeeIdWorkAddressesRequest(employeeId, - xGustoAPIVersion, + PostV1EmployeesEmployeeIdWorkAddressesRequest request = new PostV1EmployeesEmployeeIdWorkAddressesRequest(xGustoAPIVersion, + employeeId, requestBody); return request; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.java index ae0a26ccd..9287671bb 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.java @@ -17,12 +17,6 @@ public class PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest { - /** - * The UUID of the employee - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=employee_uuid") - private String employeeUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -31,35 +25,33 @@ public class PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the employee + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=employee_uuid") + private String employeeUuid; + @SpeakeasyMetadata("request:mediaType=application/json") private EmployeeSection603HighEarnerStatusCreateRequest employeeSection603HighEarnerStatusCreateRequest; @JsonCreator public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest( - String employeeUuid, Optional xGustoAPIVersion, + String employeeUuid, EmployeeSection603HighEarnerStatusCreateRequest employeeSection603HighEarnerStatusCreateRequest) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(employeeUuid, "employeeUuid"); Utils.checkNotNull(employeeSection603HighEarnerStatusCreateRequest, "employeeSection603HighEarnerStatusCreateRequest"); - this.employeeUuid = employeeUuid; this.xGustoAPIVersion = xGustoAPIVersion; + this.employeeUuid = employeeUuid; this.employeeSection603HighEarnerStatusCreateRequest = employeeSection603HighEarnerStatusCreateRequest; } public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest( String employeeUuid, EmployeeSection603HighEarnerStatusCreateRequest employeeSection603HighEarnerStatusCreateRequest) { - this(employeeUuid, Optional.empty(), employeeSection603HighEarnerStatusCreateRequest); - } - - /** - * The UUID of the employee - */ - @JsonIgnore - public String employeeUuid() { - return employeeUuid; + this(Optional.empty(), employeeUuid, employeeSection603HighEarnerStatusCreateRequest); } /** @@ -73,6 +65,14 @@ public Optional) xGustoAPIVersion; } + /** + * The UUID of the employee + */ + @JsonIgnore + public String employeeUuid() { + return employeeUuid; + } + @JsonIgnore public EmployeeSection603HighEarnerStatusCreateRequest employeeSection603HighEarnerStatusCreateRequest() { return employeeSection603HighEarnerStatusCreateRequest; @@ -83,15 +83,6 @@ public static Builder builder() { } - /** - * The UUID of the employee - */ - public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest withEmployeeUuid(String employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = employeeUuid; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -115,6 +106,15 @@ public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest withXGusto return this; } + /** + * The UUID of the employee + */ + public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest withEmployeeUuid(String employeeUuid) { + Utils.checkNotNull(employeeUuid, "employeeUuid"); + this.employeeUuid = employeeUuid; + return this; + } + public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest withEmployeeSection603HighEarnerStatusCreateRequest(EmployeeSection603HighEarnerStatusCreateRequest employeeSection603HighEarnerStatusCreateRequest) { Utils.checkNotNull(employeeSection603HighEarnerStatusCreateRequest, "employeeSection603HighEarnerStatusCreateRequest"); this.employeeSection603HighEarnerStatusCreateRequest = employeeSection603HighEarnerStatusCreateRequest; @@ -131,32 +131,32 @@ public boolean equals(java.lang.Object o) { } PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest other = (PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest) o; return - Utils.enhancedDeepEquals(this.employeeUuid, other.employeeUuid) && Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.employeeUuid, other.employeeUuid) && Utils.enhancedDeepEquals(this.employeeSection603HighEarnerStatusCreateRequest, other.employeeSection603HighEarnerStatusCreateRequest); } @Override public int hashCode() { return Utils.enhancedHash( - employeeUuid, xGustoAPIVersion, employeeSection603HighEarnerStatusCreateRequest); + xGustoAPIVersion, employeeUuid, employeeSection603HighEarnerStatusCreateRequest); } @Override public String toString() { return Utils.toString(PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.class, - "employeeUuid", employeeUuid, "xGustoAPIVersion", xGustoAPIVersion, + "employeeUuid", employeeUuid, "employeeSection603HighEarnerStatusCreateRequest", employeeSection603HighEarnerStatusCreateRequest); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String employeeUuid; - private Optional xGustoAPIVersion; + private String employeeUuid; + private EmployeeSection603HighEarnerStatusCreateRequest employeeSection603HighEarnerStatusCreateRequest; private Builder() { @@ -164,16 +164,6 @@ private Builder() { } - /** - * The UUID of the employee - */ - public Builder employeeUuid(String employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = employeeUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -197,6 +187,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String employeeUuid; private EmployeeSection603HighEarnerStatusCreateRequest employeeSection603HighEarnerStatusCreateRequest; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -29,12 +29,6 @@ public class PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuild public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder employeeUuid(String employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = employeeUuid; - return this; - } public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder xGustoAPIVersion(PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -48,6 +42,12 @@ public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder xGu return this; } + public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder employeeUuid(String employeeUuid) { + Utils.checkNotNull(employeeUuid, "employeeUuid"); + this.employeeUuid = employeeUuid; + return this; + } + public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder employeeSection603HighEarnerStatusCreateRequest(EmployeeSection603HighEarnerStatusCreateRequest employeeSection603HighEarnerStatusCreateRequest) { Utils.checkNotNull(employeeSection603HighEarnerStatusCreateRequest, "employeeSection603HighEarnerStatusCreateRequest"); this.employeeSection603HighEarnerStatusCreateRequest = employeeSection603HighEarnerStatusCreateRequest; @@ -60,8 +60,8 @@ private PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest buildRequ xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest request = new PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest(employeeUuid, - xGustoAPIVersion, + PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest request = new PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest(xGustoAPIVersion, + employeeUuid, employeeSection603HighEarnerStatusCreateRequest); return request; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1PayrollBatchesHeaderXGustoAPIVersion.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1PayrollBatchesHeaderXGustoAPIVersion.java new file mode 100644 index 000000000..f362104c4 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1PayrollBatchesHeaderXGustoAPIVersion.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PostV1PayrollBatchesHeaderXGustoAPIVersion + * + *

    Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ +public enum PostV1PayrollBatchesHeaderXGustoAPIVersion { + TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15("2025-06-15"); + + @JsonValue + private final String value; + + PostV1PayrollBatchesHeaderXGustoAPIVersion(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PostV1PayrollBatchesHeaderXGustoAPIVersion o: PostV1PayrollBatchesHeaderXGustoAPIVersion.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1PayrollBatchesRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1PayrollBatchesRequest.java new file mode 100644 index 000000000..8fdf9a5da --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1PayrollBatchesRequest.java @@ -0,0 +1,180 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api.utils.LazySingletonValue; +import com.gusto.embedded_api.utils.SpeakeasyMetadata; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class PostV1PayrollBatchesRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + + + @SpeakeasyMetadata("request:mediaType=application/json") + private PostV1PayrollBatchesRequestBody requestBody; + + @JsonCreator + public PostV1PayrollBatchesRequest( + Optional xGustoAPIVersion, + PostV1PayrollBatchesRequestBody requestBody) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(requestBody, "requestBody"); + this.xGustoAPIVersion = xGustoAPIVersion; + this.requestBody = requestBody; + } + + public PostV1PayrollBatchesRequest( + PostV1PayrollBatchesRequestBody requestBody) { + this(Optional.empty(), requestBody); + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + + @JsonIgnore + public PostV1PayrollBatchesRequestBody requestBody() { + return requestBody; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public PostV1PayrollBatchesRequest withXGustoAPIVersion(PostV1PayrollBatchesHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public PostV1PayrollBatchesRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public PostV1PayrollBatchesRequest withRequestBody(PostV1PayrollBatchesRequestBody requestBody) { + Utils.checkNotNull(requestBody, "requestBody"); + this.requestBody = requestBody; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PostV1PayrollBatchesRequest other = (PostV1PayrollBatchesRequest) o; + return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.requestBody, other.requestBody); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + xGustoAPIVersion, requestBody); + } + + @Override + public String toString() { + return Utils.toString(PostV1PayrollBatchesRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, + "requestBody", requestBody); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional xGustoAPIVersion; + + private PostV1PayrollBatchesRequestBody requestBody; + + private Builder() { + // force use of static builder() method + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(PostV1PayrollBatchesHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + + public Builder requestBody(PostV1PayrollBatchesRequestBody requestBody) { + Utils.checkNotNull(requestBody, "requestBody"); + this.requestBody = requestBody; + return this; + } + + public PostV1PayrollBatchesRequest build() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + return new PostV1PayrollBatchesRequest( + xGustoAPIVersion, requestBody); + } + + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "X-Gusto-API-Version", + "\"2025-06-15\"", + new TypeReference>() {}); + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1PayrollBatchesRequestBody.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1PayrollBatchesRequestBody.java new file mode 100644 index 000000000..555de7e4b --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1PayrollBatchesRequestBody.java @@ -0,0 +1,186 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.util.List; + + +public class PostV1PayrollBatchesRequestBody { + /** + * A partner-generated unique identifier to ensure idempotency of the batch request. Scoped per + * partner. + */ + @JsonProperty("idempotency_key") + private String idempotencyKey; + + /** + * The action to perform on the batch. Only `cancel` is supported. + */ + @JsonProperty("batch_action") + private BatchAction batchAction; + + /** + * Array of payrolls to cancel. Maximum 100 payrolls per request. + */ + @JsonProperty("batch") + private List batch; + + @JsonCreator + public PostV1PayrollBatchesRequestBody( + @JsonProperty("idempotency_key") String idempotencyKey, + @JsonProperty("batch_action") BatchAction batchAction, + @JsonProperty("batch") List batch) { + Utils.checkNotNull(idempotencyKey, "idempotencyKey"); + Utils.checkNotNull(batchAction, "batchAction"); + Utils.checkNotNull(batch, "batch"); + this.idempotencyKey = idempotencyKey; + this.batchAction = batchAction; + this.batch = batch; + } + + /** + * A partner-generated unique identifier to ensure idempotency of the batch request. Scoped per + * partner. + */ + @JsonIgnore + public String idempotencyKey() { + return idempotencyKey; + } + + /** + * The action to perform on the batch. Only `cancel` is supported. + */ + @JsonIgnore + public BatchAction batchAction() { + return batchAction; + } + + /** + * Array of payrolls to cancel. Maximum 100 payrolls per request. + */ + @JsonIgnore + public List batch() { + return batch; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * A partner-generated unique identifier to ensure idempotency of the batch request. Scoped per + * partner. + */ + public PostV1PayrollBatchesRequestBody withIdempotencyKey(String idempotencyKey) { + Utils.checkNotNull(idempotencyKey, "idempotencyKey"); + this.idempotencyKey = idempotencyKey; + return this; + } + + /** + * The action to perform on the batch. Only `cancel` is supported. + */ + public PostV1PayrollBatchesRequestBody withBatchAction(BatchAction batchAction) { + Utils.checkNotNull(batchAction, "batchAction"); + this.batchAction = batchAction; + return this; + } + + /** + * Array of payrolls to cancel. Maximum 100 payrolls per request. + */ + public PostV1PayrollBatchesRequestBody withBatch(List batch) { + Utils.checkNotNull(batch, "batch"); + this.batch = batch; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PostV1PayrollBatchesRequestBody other = (PostV1PayrollBatchesRequestBody) o; + return + Utils.enhancedDeepEquals(this.idempotencyKey, other.idempotencyKey) && + Utils.enhancedDeepEquals(this.batchAction, other.batchAction) && + Utils.enhancedDeepEquals(this.batch, other.batch); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + idempotencyKey, batchAction, batch); + } + + @Override + public String toString() { + return Utils.toString(PostV1PayrollBatchesRequestBody.class, + "idempotencyKey", idempotencyKey, + "batchAction", batchAction, + "batch", batch); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String idempotencyKey; + + private BatchAction batchAction; + + private List batch; + + private Builder() { + // force use of static builder() method + } + + + /** + * A partner-generated unique identifier to ensure idempotency of the batch request. Scoped per + * partner. + */ + public Builder idempotencyKey(String idempotencyKey) { + Utils.checkNotNull(idempotencyKey, "idempotencyKey"); + this.idempotencyKey = idempotencyKey; + return this; + } + + + /** + * The action to perform on the batch. Only `cancel` is supported. + */ + public Builder batchAction(BatchAction batchAction) { + Utils.checkNotNull(batchAction, "batchAction"); + this.batchAction = batchAction; + return this; + } + + + /** + * Array of payrolls to cancel. Maximum 100 payrolls per request. + */ + public Builder batch(List batch) { + Utils.checkNotNull(batch, "batch"); + this.batch = batch; + return this; + } + + public PostV1PayrollBatchesRequestBody build() { + + return new PostV1PayrollBatchesRequestBody( + idempotencyKey, batchAction, batch); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1PayrollBatchesRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1PayrollBatchesRequestBuilder.java new file mode 100644 index 000000000..d53b6c188 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1PayrollBatchesRequestBuilder.java @@ -0,0 +1,81 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import static com.gusto.embedded_api.operations.Operations.RequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api.SDKConfiguration; +import com.gusto.embedded_api.operations.PostV1PayrollBatches; +import com.gusto.embedded_api.utils.Headers; +import com.gusto.embedded_api.utils.LazySingletonValue; +import com.gusto.embedded_api.utils.Utils; +import java.util.Optional; + +public class PostV1PayrollBatchesRequestBuilder { + + private PostV1PayrollBatchesSecurity security; + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2025-06-15\"", + new TypeReference>() {}); + private PostV1PayrollBatchesRequestBody requestBody; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public PostV1PayrollBatchesRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public PostV1PayrollBatchesRequestBuilder security(PostV1PayrollBatchesSecurity security) { + Utils.checkNotNull(security, "security"); + this.security = security; + return this; + } + + public PostV1PayrollBatchesRequestBuilder xGustoAPIVersion(PostV1PayrollBatchesHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public PostV1PayrollBatchesRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public PostV1PayrollBatchesRequestBuilder requestBody(PostV1PayrollBatchesRequestBody requestBody) { + Utils.checkNotNull(requestBody, "requestBody"); + this.requestBody = requestBody; + return this; + } + + + private PostV1PayrollBatchesRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + PostV1PayrollBatchesRequest request = new PostV1PayrollBatchesRequest(xGustoAPIVersion, + requestBody); + + return request; + } + + public PostV1PayrollBatchesResponse call() { + + RequestOperation operation + = new PostV1PayrollBatches.Sync(sdkConfiguration, security, _headers); + PostV1PayrollBatchesRequest request = buildRequest(); + + return operation.handleResponse(operation.doRequest(request)); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2025-06-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1PayrollBatchesResponse.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1PayrollBatchesResponse.java new file mode 100644 index 000000000..6065172f3 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1PayrollBatchesResponse.java @@ -0,0 +1,253 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api.models.components.PayrollBatch; +import com.gusto.embedded_api.utils.Response; +import com.gusto.embedded_api.utils.Utils; +import java.io.InputStream; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.Optional; + + +public class PostV1PayrollBatchesResponse implements Response { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * created + */ + private Optional payrollBatch; + + @JsonCreator + public PostV1PayrollBatchesResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional payrollBatch) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(payrollBatch, "payrollBatch"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.payrollBatch = payrollBatch; + } + + public PostV1PayrollBatchesResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * created + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional payrollBatch() { + return (Optional) payrollBatch; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public PostV1PayrollBatchesResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public PostV1PayrollBatchesResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public PostV1PayrollBatchesResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * created + */ + public PostV1PayrollBatchesResponse withPayrollBatch(PayrollBatch payrollBatch) { + Utils.checkNotNull(payrollBatch, "payrollBatch"); + this.payrollBatch = Optional.ofNullable(payrollBatch); + return this; + } + + + /** + * created + */ + public PostV1PayrollBatchesResponse withPayrollBatch(Optional payrollBatch) { + Utils.checkNotNull(payrollBatch, "payrollBatch"); + this.payrollBatch = payrollBatch; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PostV1PayrollBatchesResponse other = (PostV1PayrollBatchesResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.payrollBatch, other.payrollBatch); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + payrollBatch); + } + + @Override + public String toString() { + return Utils.toString(PostV1PayrollBatchesResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "payrollBatch", payrollBatch); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional payrollBatch = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * created + */ + public Builder payrollBatch(PayrollBatch payrollBatch) { + Utils.checkNotNull(payrollBatch, "payrollBatch"); + this.payrollBatch = Optional.ofNullable(payrollBatch); + return this; + } + + /** + * created + */ + public Builder payrollBatch(Optional payrollBatch) { + Utils.checkNotNull(payrollBatch, "payrollBatch"); + this.payrollBatch = payrollBatch; + return this; + } + + public PostV1PayrollBatchesResponse build() { + + return new PostV1PayrollBatchesResponse( + contentType, statusCode, rawResponse, + payrollBatch); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1PayrollBatchesSecurity.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1PayrollBatchesSecurity.java new file mode 100644 index 000000000..b6be50a67 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PostV1PayrollBatchesSecurity.java @@ -0,0 +1,91 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api.utils.HasSecurity; +import com.gusto.embedded_api.utils.SpeakeasyMetadata; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Override; +import java.lang.String; + + +public class PostV1PayrollBatchesSecurity implements HasSecurity { + + @SpeakeasyMetadata("security:scheme=true,type=http,subtype=bearer,name=Authorization") + private String systemAccessAuth; + + @JsonCreator + public PostV1PayrollBatchesSecurity( + String systemAccessAuth) { + Utils.checkNotNull(systemAccessAuth, "systemAccessAuth"); + this.systemAccessAuth = systemAccessAuth; + } + + @JsonIgnore + public String systemAccessAuth() { + return systemAccessAuth; + } + + public static Builder builder() { + return new Builder(); + } + + + public PostV1PayrollBatchesSecurity withSystemAccessAuth(String systemAccessAuth) { + Utils.checkNotNull(systemAccessAuth, "systemAccessAuth"); + this.systemAccessAuth = systemAccessAuth; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PostV1PayrollBatchesSecurity other = (PostV1PayrollBatchesSecurity) o; + return + Utils.enhancedDeepEquals(this.systemAccessAuth, other.systemAccessAuth); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + systemAccessAuth); + } + + @Override + public String toString() { + return Utils.toString(PostV1PayrollBatchesSecurity.class, + "systemAccessAuth", systemAccessAuth); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String systemAccessAuth; + + private Builder() { + // force use of static builder() method + } + + + public Builder systemAccessAuth(String systemAccessAuth) { + Utils.checkNotNull(systemAccessAuth, "systemAccessAuth"); + this.systemAccessAuth = systemAccessAuth; + return this; + } + + public PostV1PayrollBatchesSecurity build() { + + return new PostV1PayrollBatchesSecurity( + systemAccessAuth); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutAddPeopleToDepartmentRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutAddPeopleToDepartmentRequest.java index 1510e586f..39046d13f 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutAddPeopleToDepartmentRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutAddPeopleToDepartmentRequest.java @@ -17,12 +17,6 @@ public class PutAddPeopleToDepartmentRequest { - /** - * The UUID of the department - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=department_uuid") - private String departmentUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -31,35 +25,33 @@ public class PutAddPeopleToDepartmentRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the department + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=department_uuid") + private String departmentUuid; + @SpeakeasyMetadata("request:mediaType=application/json") private DepartmentPeopleRequestBody departmentPeopleRequestBody; @JsonCreator public PutAddPeopleToDepartmentRequest( - String departmentUuid, Optional xGustoAPIVersion, + String departmentUuid, DepartmentPeopleRequestBody departmentPeopleRequestBody) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(departmentUuid, "departmentUuid"); Utils.checkNotNull(departmentPeopleRequestBody, "departmentPeopleRequestBody"); - this.departmentUuid = departmentUuid; this.xGustoAPIVersion = xGustoAPIVersion; + this.departmentUuid = departmentUuid; this.departmentPeopleRequestBody = departmentPeopleRequestBody; } public PutAddPeopleToDepartmentRequest( String departmentUuid, DepartmentPeopleRequestBody departmentPeopleRequestBody) { - this(departmentUuid, Optional.empty(), departmentPeopleRequestBody); - } - - /** - * The UUID of the department - */ - @JsonIgnore - public String departmentUuid() { - return departmentUuid; + this(Optional.empty(), departmentUuid, departmentPeopleRequestBody); } /** @@ -73,6 +65,14 @@ public Optional xGustoAPIVersion return (Optional) xGustoAPIVersion; } + /** + * The UUID of the department + */ + @JsonIgnore + public String departmentUuid() { + return departmentUuid; + } + @JsonIgnore public DepartmentPeopleRequestBody departmentPeopleRequestBody() { return departmentPeopleRequestBody; @@ -83,15 +83,6 @@ public static Builder builder() { } - /** - * The UUID of the department - */ - public PutAddPeopleToDepartmentRequest withDepartmentUuid(String departmentUuid) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); - this.departmentUuid = departmentUuid; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -115,6 +106,15 @@ public PutAddPeopleToDepartmentRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String departmentUuid; + private DepartmentPeopleRequestBody departmentPeopleRequestBody; private Builder() { @@ -164,16 +164,6 @@ private Builder() { } - /** - * The UUID of the department - */ - public Builder departmentUuid(String departmentUuid) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); - this.departmentUuid = departmentUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -197,6 +187,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String departmentUuid; private DepartmentPeopleRequestBody departmentPeopleRequestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -29,12 +29,6 @@ public class PutAddPeopleToDepartmentRequestBuilder { public PutAddPeopleToDepartmentRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutAddPeopleToDepartmentRequestBuilder departmentUuid(String departmentUuid) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); - this.departmentUuid = departmentUuid; - return this; - } public PutAddPeopleToDepartmentRequestBuilder xGustoAPIVersion(PutAddPeopleToDepartmentHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -48,6 +42,12 @@ public PutAddPeopleToDepartmentRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion; + /** + * The UUID of the department + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=department_uuid") + private String departmentUuid; + @SpeakeasyMetadata("request:mediaType=application/json") private DepartmentUpdateRequestBody departmentUpdateRequestBody; @JsonCreator public PutDepartmentsRequest( - String departmentUuid, Optional xGustoAPIVersion, + String departmentUuid, DepartmentUpdateRequestBody departmentUpdateRequestBody) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(departmentUuid, "departmentUuid"); Utils.checkNotNull(departmentUpdateRequestBody, "departmentUpdateRequestBody"); - this.departmentUuid = departmentUuid; this.xGustoAPIVersion = xGustoAPIVersion; + this.departmentUuid = departmentUuid; this.departmentUpdateRequestBody = departmentUpdateRequestBody; } public PutDepartmentsRequest( String departmentUuid, DepartmentUpdateRequestBody departmentUpdateRequestBody) { - this(departmentUuid, Optional.empty(), departmentUpdateRequestBody); - } - - /** - * The UUID of the department - */ - @JsonIgnore - public String departmentUuid() { - return departmentUuid; + this(Optional.empty(), departmentUuid, departmentUpdateRequestBody); } /** @@ -73,6 +65,14 @@ public Optional xGustoAPIVersion() { return (Optional) xGustoAPIVersion; } + /** + * The UUID of the department + */ + @JsonIgnore + public String departmentUuid() { + return departmentUuid; + } + @JsonIgnore public DepartmentUpdateRequestBody departmentUpdateRequestBody() { return departmentUpdateRequestBody; @@ -83,15 +83,6 @@ public static Builder builder() { } - /** - * The UUID of the department - */ - public PutDepartmentsRequest withDepartmentUuid(String departmentUuid) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); - this.departmentUuid = departmentUuid; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -115,6 +106,15 @@ public PutDepartmentsRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String departmentUuid; + private DepartmentUpdateRequestBody departmentUpdateRequestBody; private Builder() { @@ -164,16 +164,6 @@ private Builder() { } - /** - * The UUID of the department - */ - public Builder departmentUuid(String departmentUuid) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); - this.departmentUuid = departmentUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -197,6 +187,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String departmentUuid; private DepartmentUpdateRequestBody departmentUpdateRequestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -29,12 +29,6 @@ public class PutDepartmentsRequestBuilder { public PutDepartmentsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutDepartmentsRequestBuilder departmentUuid(String departmentUuid) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); - this.departmentUuid = departmentUuid; - return this; - } public PutDepartmentsRequestBuilder xGustoAPIVersion(PutDepartmentsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -48,6 +42,12 @@ public PutDepartmentsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion; + /** + * The UUID of the department + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=department_uuid") + private String departmentUuid; + @SpeakeasyMetadata("request:mediaType=application/json") private DepartmentPeopleRequestBody departmentPeopleRequestBody; @JsonCreator public PutRemovePeopleFromDepartmentRequest( - String departmentUuid, Optional xGustoAPIVersion, + String departmentUuid, DepartmentPeopleRequestBody departmentPeopleRequestBody) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(departmentUuid, "departmentUuid"); Utils.checkNotNull(departmentPeopleRequestBody, "departmentPeopleRequestBody"); - this.departmentUuid = departmentUuid; this.xGustoAPIVersion = xGustoAPIVersion; + this.departmentUuid = departmentUuid; this.departmentPeopleRequestBody = departmentPeopleRequestBody; } public PutRemovePeopleFromDepartmentRequest( String departmentUuid, DepartmentPeopleRequestBody departmentPeopleRequestBody) { - this(departmentUuid, Optional.empty(), departmentPeopleRequestBody); - } - - /** - * The UUID of the department - */ - @JsonIgnore - public String departmentUuid() { - return departmentUuid; + this(Optional.empty(), departmentUuid, departmentPeopleRequestBody); } /** @@ -73,6 +65,14 @@ public Optional xGustoAPIVe return (Optional) xGustoAPIVersion; } + /** + * The UUID of the department + */ + @JsonIgnore + public String departmentUuid() { + return departmentUuid; + } + @JsonIgnore public DepartmentPeopleRequestBody departmentPeopleRequestBody() { return departmentPeopleRequestBody; @@ -83,15 +83,6 @@ public static Builder builder() { } - /** - * The UUID of the department - */ - public PutRemovePeopleFromDepartmentRequest withDepartmentUuid(String departmentUuid) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); - this.departmentUuid = departmentUuid; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -115,6 +106,15 @@ public PutRemovePeopleFromDepartmentRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String departmentUuid; + private DepartmentPeopleRequestBody departmentPeopleRequestBody; private Builder() { @@ -164,16 +164,6 @@ private Builder() { } - /** - * The UUID of the department - */ - public Builder departmentUuid(String departmentUuid) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); - this.departmentUuid = departmentUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -197,6 +187,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String departmentUuid; private DepartmentPeopleRequestBody departmentPeopleRequestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -29,12 +29,6 @@ public class PutRemovePeopleFromDepartmentRequestBuilder { public PutRemovePeopleFromDepartmentRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutRemovePeopleFromDepartmentRequestBuilder departmentUuid(String departmentUuid) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); - this.departmentUuid = departmentUuid; - return this; - } public PutRemovePeopleFromDepartmentRequestBuilder xGustoAPIVersion(PutRemovePeopleFromDepartmentHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -48,6 +42,12 @@ public PutRemovePeopleFromDepartmentRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion; + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_id") + private String companyId; + @SpeakeasyMetadata("request:mediaType=application/json") private FederalTaxDetailsUpdate federalTaxDetailsUpdate; @JsonCreator public PutV1CompaniesCompanyIdFederalTaxDetailsRequest( - String companyId, Optional xGustoAPIVersion, + String companyId, FederalTaxDetailsUpdate federalTaxDetailsUpdate) { - Utils.checkNotNull(companyId, "companyId"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(companyId, "companyId"); Utils.checkNotNull(federalTaxDetailsUpdate, "federalTaxDetailsUpdate"); - this.companyId = companyId; this.xGustoAPIVersion = xGustoAPIVersion; + this.companyId = companyId; this.federalTaxDetailsUpdate = federalTaxDetailsUpdate; } public PutV1CompaniesCompanyIdFederalTaxDetailsRequest( String companyId, FederalTaxDetailsUpdate federalTaxDetailsUpdate) { - this(companyId, Optional.empty(), federalTaxDetailsUpdate); - } - - /** - * The UUID of the company - */ - @JsonIgnore - public String companyId() { - return companyId; + this(Optional.empty(), companyId, federalTaxDetailsUpdate); } /** @@ -73,6 +65,14 @@ public Optional return (Optional) xGustoAPIVersion; } + /** + * The UUID of the company + */ + @JsonIgnore + public String companyId() { + return companyId; + } + @JsonIgnore public FederalTaxDetailsUpdate federalTaxDetailsUpdate() { return federalTaxDetailsUpdate; @@ -83,15 +83,6 @@ public static Builder builder() { } - /** - * The UUID of the company - */ - public PutV1CompaniesCompanyIdFederalTaxDetailsRequest withCompanyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -115,6 +106,15 @@ public PutV1CompaniesCompanyIdFederalTaxDetailsRequest withXGustoAPIVersion(Opti return this; } + /** + * The UUID of the company + */ + public PutV1CompaniesCompanyIdFederalTaxDetailsRequest withCompanyId(String companyId) { + Utils.checkNotNull(companyId, "companyId"); + this.companyId = companyId; + return this; + } + public PutV1CompaniesCompanyIdFederalTaxDetailsRequest withFederalTaxDetailsUpdate(FederalTaxDetailsUpdate federalTaxDetailsUpdate) { Utils.checkNotNull(federalTaxDetailsUpdate, "federalTaxDetailsUpdate"); this.federalTaxDetailsUpdate = federalTaxDetailsUpdate; @@ -131,32 +131,32 @@ public boolean equals(java.lang.Object o) { } PutV1CompaniesCompanyIdFederalTaxDetailsRequest other = (PutV1CompaniesCompanyIdFederalTaxDetailsRequest) o; return - Utils.enhancedDeepEquals(this.companyId, other.companyId) && Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.companyId, other.companyId) && Utils.enhancedDeepEquals(this.federalTaxDetailsUpdate, other.federalTaxDetailsUpdate); } @Override public int hashCode() { return Utils.enhancedHash( - companyId, xGustoAPIVersion, federalTaxDetailsUpdate); + xGustoAPIVersion, companyId, federalTaxDetailsUpdate); } @Override public String toString() { return Utils.toString(PutV1CompaniesCompanyIdFederalTaxDetailsRequest.class, - "companyId", companyId, "xGustoAPIVersion", xGustoAPIVersion, + "companyId", companyId, "federalTaxDetailsUpdate", federalTaxDetailsUpdate); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String companyId; - private Optional xGustoAPIVersion; + private String companyId; + private FederalTaxDetailsUpdate federalTaxDetailsUpdate; private Builder() { @@ -164,16 +164,6 @@ private Builder() { } - /** - * The UUID of the company - */ - public Builder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -197,6 +187,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String companyId; private FederalTaxDetailsUpdate federalTaxDetailsUpdate; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -29,12 +29,6 @@ public class PutV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder { public PutV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } public PutV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder xGustoAPIVersion(PutV1CompaniesCompanyIdFederalTaxDetailsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -48,6 +42,12 @@ public PutV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder xGustoAPIVersion(O return this; } + public PutV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder companyId(String companyId) { + Utils.checkNotNull(companyId, "companyId"); + this.companyId = companyId; + return this; + } + public PutV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder federalTaxDetailsUpdate(FederalTaxDetailsUpdate federalTaxDetailsUpdate) { Utils.checkNotNull(federalTaxDetailsUpdate, "federalTaxDetailsUpdate"); this.federalTaxDetailsUpdate = federalTaxDetailsUpdate; @@ -60,8 +60,8 @@ private PutV1CompaniesCompanyIdFederalTaxDetailsRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PutV1CompaniesCompanyIdFederalTaxDetailsRequest request = new PutV1CompaniesCompanyIdFederalTaxDetailsRequest(companyId, - xGustoAPIVersion, + PutV1CompaniesCompanyIdFederalTaxDetailsRequest request = new PutV1CompaniesCompanyIdFederalTaxDetailsRequest(xGustoAPIVersion, + companyId, federalTaxDetailsUpdate); return request; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBody.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBody.java index a70a6817a..0b7ae084b 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBody.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBody.java @@ -18,7 +18,17 @@ public class PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBody { /** - * An array of employee UUIDs. If passed, only those employees payroll items will be prepared. + * The employees to prepare, identified by UUID. If omitted, every employee currently on the payroll is + * prepared. + * + *

    **Off-cycle payrolls that support multiple employees (`Bonus`, `Correction`, `Adhoc`):** passing + * `employee_uuids` also adds eligible employees who aren't yet on the payroll - a listed employee not + * on the payroll is added, while one already on it is simply prepared. A request may include up to 100 + * UUIDs, of which at most 25 may be employees not already on the payroll; an ineligible or unknown + * UUID, or more than 25 new employees, is rejected with a 422. + * + *

    **All other payrolls:** `employee_uuids` selects which of the payroll's existing employees to + * prepare; a UUID for an employee not on the payroll is rejected with a 422. */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("employee_uuids") @@ -36,7 +46,17 @@ public PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBody() { } /** - * An array of employee UUIDs. If passed, only those employees payroll items will be prepared. + * The employees to prepare, identified by UUID. If omitted, every employee currently on the payroll is + * prepared. + * + *

    **Off-cycle payrolls that support multiple employees (`Bonus`, `Correction`, `Adhoc`):** passing + * `employee_uuids` also adds eligible employees who aren't yet on the payroll - a listed employee not + * on the payroll is added, while one already on it is simply prepared. A request may include up to 100 + * UUIDs, of which at most 25 may be employees not already on the payroll; an ineligible or unknown + * UUID, or more than 25 new employees, is rejected with a 422. + * + *

    **All other payrolls:** `employee_uuids` selects which of the payroll's existing employees to + * prepare; a UUID for an employee not on the payroll is rejected with a 422. */ @SuppressWarnings("unchecked") @JsonIgnore @@ -50,7 +70,17 @@ public static Builder builder() { /** - * An array of employee UUIDs. If passed, only those employees payroll items will be prepared. + * The employees to prepare, identified by UUID. If omitted, every employee currently on the payroll is + * prepared. + * + *

    **Off-cycle payrolls that support multiple employees (`Bonus`, `Correction`, `Adhoc`):** passing + * `employee_uuids` also adds eligible employees who aren't yet on the payroll - a listed employee not + * on the payroll is added, while one already on it is simply prepared. A request may include up to 100 + * UUIDs, of which at most 25 may be employees not already on the payroll; an ineligible or unknown + * UUID, or more than 25 new employees, is rejected with a 422. + * + *

    **All other payrolls:** `employee_uuids` selects which of the payroll's existing employees to + * prepare; a UUID for an employee not on the payroll is rejected with a 422. */ public PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBody withEmployeeUuids(List employeeUuids) { Utils.checkNotNull(employeeUuids, "employeeUuids"); @@ -59,7 +89,17 @@ public PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBody withEmployeeUu } /** - * An array of employee UUIDs. If passed, only those employees payroll items will be prepared. + * The employees to prepare, identified by UUID. If omitted, every employee currently on the payroll is + * prepared. + * + *

    **Off-cycle payrolls that support multiple employees (`Bonus`, `Correction`, `Adhoc`):** passing + * `employee_uuids` also adds eligible employees who aren't yet on the payroll - a listed employee not + * on the payroll is added, while one already on it is simply prepared. A request may include up to 100 + * UUIDs, of which at most 25 may be employees not already on the payroll; an ineligible or unknown + * UUID, or more than 25 new employees, is rejected with a 422. + * + *

    **All other payrolls:** `employee_uuids` selects which of the payroll's existing employees to + * prepare; a UUID for an employee not on the payroll is rejected with a 422. */ public PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBody withEmployeeUuids(JsonNullable> employeeUuids) { Utils.checkNotNull(employeeUuids, "employeeUuids"); @@ -103,7 +143,17 @@ private Builder() { /** - * An array of employee UUIDs. If passed, only those employees payroll items will be prepared. + * The employees to prepare, identified by UUID. If omitted, every employee currently on the payroll is + * prepared. + * + *

    **Off-cycle payrolls that support multiple employees (`Bonus`, `Correction`, `Adhoc`):** passing + * `employee_uuids` also adds eligible employees who aren't yet on the payroll - a listed employee not + * on the payroll is added, while one already on it is simply prepared. A request may include up to 100 + * UUIDs, of which at most 25 may be employees not already on the payroll; an ineligible or unknown + * UUID, or more than 25 new employees, is rejected with a 422. + * + *

    **All other payrolls:** `employee_uuids` selects which of the payroll's existing employees to + * prepare; a UUID for an employee not on the payroll is rejected with a 422. */ public Builder employeeUuids(List employeeUuids) { Utils.checkNotNull(employeeUuids, "employeeUuids"); @@ -112,7 +162,17 @@ public Builder employeeUuids(List employeeUuids) { } /** - * An array of employee UUIDs. If passed, only those employees payroll items will be prepared. + * The employees to prepare, identified by UUID. If omitted, every employee currently on the payroll is + * prepared. + * + *

    **Off-cycle payrolls that support multiple employees (`Bonus`, `Correction`, `Adhoc`):** passing + * `employee_uuids` also adds eligible employees who aren't yet on the payroll - a listed employee not + * on the payroll is added, while one already on it is simply prepared. A request may include up to 100 + * UUIDs, of which at most 25 may be employees not already on the payroll; an ineligible or unknown + * UUID, or more than 25 new employees, is rejected with a 422. + * + *

    **All other payrolls:** `employee_uuids` selects which of the payroll's existing employees to + * prepare; a UUID for an employee not on the payroll is rejected with a 422. */ public Builder employeeUuids(JsonNullable> employeeUuids) { Utils.checkNotNull(employeeUuids, "employeeUuids"); diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1CompaniesCompanyUuidHolidayPayPolicyAddEmployees.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1CompaniesCompanyUuidHolidayPayPolicyAddEmployees.java deleted file mode 100644 index d50eae90e..000000000 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1CompaniesCompanyUuidHolidayPayPolicyAddEmployees.java +++ /dev/null @@ -1,111 +0,0 @@ -/* - * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - */ -package com.gusto.embedded_api.models.operations; - -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonIgnore; -import com.fasterxml.jackson.annotation.JsonInclude.Include; -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.gusto.embedded_api.utils.Utils; -import java.lang.Override; -import java.lang.String; -import java.util.Optional; - - -public class PutV1CompaniesCompanyUuidHolidayPayPolicyAddEmployees { - - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("uuid") - private Optional uuid; - - @JsonCreator - public PutV1CompaniesCompanyUuidHolidayPayPolicyAddEmployees( - @JsonProperty("uuid") Optional uuid) { - Utils.checkNotNull(uuid, "uuid"); - this.uuid = uuid; - } - - public PutV1CompaniesCompanyUuidHolidayPayPolicyAddEmployees() { - this(Optional.empty()); - } - - @JsonIgnore - public Optional uuid() { - return uuid; - } - - public static Builder builder() { - return new Builder(); - } - - - public PutV1CompaniesCompanyUuidHolidayPayPolicyAddEmployees withUuid(String uuid) { - Utils.checkNotNull(uuid, "uuid"); - this.uuid = Optional.ofNullable(uuid); - return this; - } - - - public PutV1CompaniesCompanyUuidHolidayPayPolicyAddEmployees withUuid(Optional uuid) { - Utils.checkNotNull(uuid, "uuid"); - this.uuid = uuid; - return this; - } - - @Override - public boolean equals(java.lang.Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - PutV1CompaniesCompanyUuidHolidayPayPolicyAddEmployees other = (PutV1CompaniesCompanyUuidHolidayPayPolicyAddEmployees) o; - return - Utils.enhancedDeepEquals(this.uuid, other.uuid); - } - - @Override - public int hashCode() { - return Utils.enhancedHash( - uuid); - } - - @Override - public String toString() { - return Utils.toString(PutV1CompaniesCompanyUuidHolidayPayPolicyAddEmployees.class, - "uuid", uuid); - } - - @SuppressWarnings("UnusedReturnValue") - public final static class Builder { - - private Optional uuid = Optional.empty(); - - private Builder() { - // force use of static builder() method - } - - - public Builder uuid(String uuid) { - Utils.checkNotNull(uuid, "uuid"); - this.uuid = Optional.ofNullable(uuid); - return this; - } - - public Builder uuid(Optional uuid) { - Utils.checkNotNull(uuid, "uuid"); - this.uuid = uuid; - return this; - } - - public PutV1CompaniesCompanyUuidHolidayPayPolicyAddEmployees build() { - - return new PutV1CompaniesCompanyUuidHolidayPayPolicyAddEmployees( - uuid); - } - - } -} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1CompaniesCompanyUuidHolidayPayPolicyAddRequestBody.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1CompaniesCompanyUuidHolidayPayPolicyAddRequestBody.java index fa68ce89d..049c7f0f4 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1CompaniesCompanyUuidHolidayPayPolicyAddRequestBody.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1CompaniesCompanyUuidHolidayPayPolicyAddRequestBody.java @@ -25,12 +25,12 @@ public class PutV1CompaniesCompanyUuidHolidayPayPolicyAddRequestBody { * An array of employee objects, each containing an employee_uuid. */ @JsonProperty("employees") - private List employees; + private List employees; @JsonCreator public PutV1CompaniesCompanyUuidHolidayPayPolicyAddRequestBody( @JsonProperty("version") String version, - @JsonProperty("employees") List employees) { + @JsonProperty("employees") List employees) { Utils.checkNotNull(version, "version"); Utils.checkNotNull(employees, "employees"); this.version = version; @@ -51,7 +51,7 @@ public String version() { * An array of employee objects, each containing an employee_uuid. */ @JsonIgnore - public List employees() { + public List employees() { return employees; } @@ -74,7 +74,7 @@ public PutV1CompaniesCompanyUuidHolidayPayPolicyAddRequestBody withVersion(Strin /** * An array of employee objects, each containing an employee_uuid. */ - public PutV1CompaniesCompanyUuidHolidayPayPolicyAddRequestBody withEmployees(List employees) { + public PutV1CompaniesCompanyUuidHolidayPayPolicyAddRequestBody withEmployees(List employees) { Utils.checkNotNull(employees, "employees"); this.employees = employees; return this; @@ -112,7 +112,7 @@ public final static class Builder { private String version; - private List employees; + private List employees; private Builder() { // force use of static builder() method @@ -134,7 +134,7 @@ public Builder version(String version) { /** * An array of employee objects, each containing an employee_uuid. */ - public Builder employees(List employees) { + public Builder employees(List employees) { Utils.checkNotNull(employees, "employees"); this.employees = employees; return this; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.java index 9d8a55ed4..b06623006 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.java @@ -17,6 +17,14 @@ public class PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + /** * The UUID of the company */ @@ -29,31 +37,23 @@ public class PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest { @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=signatory_uuid") private String signatoryUuid; - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; - @SpeakeasyMetadata("request:mediaType=application/json") private SignatoryUpdateRequest signatoryUpdateRequest; @JsonCreator public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest( + Optional xGustoAPIVersion, String companyUuid, String signatoryUuid, - Optional xGustoAPIVersion, SignatoryUpdateRequest signatoryUpdateRequest) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(signatoryUuid, "signatoryUuid"); - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(signatoryUpdateRequest, "signatoryUpdateRequest"); + this.xGustoAPIVersion = xGustoAPIVersion; this.companyUuid = companyUuid; this.signatoryUuid = signatoryUuid; - this.xGustoAPIVersion = xGustoAPIVersion; this.signatoryUpdateRequest = signatoryUpdateRequest; } @@ -61,10 +61,21 @@ public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest( String companyUuid, String signatoryUuid, SignatoryUpdateRequest signatoryUpdateRequest) { - this(companyUuid, signatoryUuid, Optional.empty(), + this(Optional.empty(), companyUuid, signatoryUuid, signatoryUpdateRequest); } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + /** * The UUID of the company */ @@ -81,17 +92,6 @@ public String signatoryUuid() { return signatoryUuid; } - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional xGustoAPIVersion() { - return (Optional) xGustoAPIVersion; - } - @JsonIgnore public SignatoryUpdateRequest signatoryUpdateRequest() { return signatoryUpdateRequest; @@ -102,24 +102,6 @@ public static Builder builder() { } - /** - * The UUID of the company - */ - public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest withCompanyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - /** - * The UUID of the signatory - */ - public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest withSignatoryUuid(String signatoryUuid) { - Utils.checkNotNull(signatoryUuid, "signatoryUuid"); - this.signatoryUuid = signatoryUuid; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -143,6 +125,24 @@ public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest withXGustoAPIVer return this; } + /** + * The UUID of the company + */ + public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + /** + * The UUID of the signatory + */ + public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest withSignatoryUuid(String signatoryUuid) { + Utils.checkNotNull(signatoryUuid, "signatoryUuid"); + this.signatoryUuid = signatoryUuid; + return this; + } + public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest withSignatoryUpdateRequest(SignatoryUpdateRequest signatoryUpdateRequest) { Utils.checkNotNull(signatoryUpdateRequest, "signatoryUpdateRequest"); this.signatoryUpdateRequest = signatoryUpdateRequest; @@ -159,37 +159,37 @@ public boolean equals(java.lang.Object o) { } PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest other = (PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest) o; return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && Utils.enhancedDeepEquals(this.signatoryUuid, other.signatoryUuid) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.signatoryUpdateRequest, other.signatoryUpdateRequest); } @Override public int hashCode() { return Utils.enhancedHash( - companyUuid, signatoryUuid, xGustoAPIVersion, + xGustoAPIVersion, companyUuid, signatoryUuid, signatoryUpdateRequest); } @Override public String toString() { return Utils.toString(PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, "companyUuid", companyUuid, "signatoryUuid", signatoryUuid, - "xGustoAPIVersion", xGustoAPIVersion, "signatoryUpdateRequest", signatoryUpdateRequest); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { + private Optional xGustoAPIVersion; + private String companyUuid; private String signatoryUuid; - private Optional xGustoAPIVersion; - private SignatoryUpdateRequest signatoryUpdateRequest; private Builder() { @@ -197,26 +197,6 @@ private Builder() { } - /** - * The UUID of the company - */ - public Builder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - - /** - * The UUID of the signatory - */ - public Builder signatoryUuid(String signatoryUuid) { - Utils.checkNotNull(signatoryUuid, "signatoryUuid"); - this.signatoryUuid = signatoryUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -240,6 +220,26 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String companyUuid; + private String signatoryUuid; private SignatoryUpdateRequest signatoryUpdateRequest; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -30,18 +30,6 @@ public class PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder { public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder signatoryUuid(String signatoryUuid) { - Utils.checkNotNull(signatoryUuid, "signatoryUuid"); - this.signatoryUuid = signatoryUuid; - return this; - } public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder xGustoAPIVersion(PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -55,6 +43,18 @@ public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder xGustoAPI return this; } + public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder signatoryUuid(String signatoryUuid) { + Utils.checkNotNull(signatoryUuid, "signatoryUuid"); + this.signatoryUuid = signatoryUuid; + return this; + } + public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder signatoryUpdateRequest(SignatoryUpdateRequest signatoryUpdateRequest) { Utils.checkNotNull(signatoryUpdateRequest, "signatoryUpdateRequest"); this.signatoryUpdateRequest = signatoryUpdateRequest; @@ -67,9 +67,9 @@ private PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest buildRequest() xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest request = new PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest(companyUuid, + PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest request = new PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest(xGustoAPIVersion, + companyUuid, signatoryUuid, - xGustoAPIVersion, signatoryUpdateRequest); return request; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1CompaniesCompanyUuidTaxRequirementsStateRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1CompaniesCompanyUuidTaxRequirementsStateRequest.java index 8713692a8..9df3ab217 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1CompaniesCompanyUuidTaxRequirementsStateRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1CompaniesCompanyUuidTaxRequirementsStateRequest.java @@ -16,6 +16,14 @@ public class PutV1CompaniesCompanyUuidTaxRequirementsStateRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + /** * The UUID of the company */ @@ -28,31 +36,23 @@ public class PutV1CompaniesCompanyUuidTaxRequirementsStateRequest { @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=state") private String state; - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; - @SpeakeasyMetadata("request:mediaType=application/json") private PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody requestBody; @JsonCreator public PutV1CompaniesCompanyUuidTaxRequirementsStateRequest( + Optional xGustoAPIVersion, String companyUuid, String state, - Optional xGustoAPIVersion, PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody requestBody) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(state, "state"); - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(requestBody, "requestBody"); + this.xGustoAPIVersion = xGustoAPIVersion; this.companyUuid = companyUuid; this.state = state; - this.xGustoAPIVersion = xGustoAPIVersion; this.requestBody = requestBody; } @@ -60,10 +60,21 @@ public PutV1CompaniesCompanyUuidTaxRequirementsStateRequest( String companyUuid, String state, PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody requestBody) { - this(companyUuid, state, Optional.empty(), + this(Optional.empty(), companyUuid, state, requestBody); } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + /** * The UUID of the company */ @@ -80,17 +91,6 @@ public String state() { return state; } - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional xGustoAPIVersion() { - return (Optional) xGustoAPIVersion; - } - @JsonIgnore public PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody requestBody() { return requestBody; @@ -101,24 +101,6 @@ public static Builder builder() { } - /** - * The UUID of the company - */ - public PutV1CompaniesCompanyUuidTaxRequirementsStateRequest withCompanyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - /** - * The two-letter state abbreviation - */ - public PutV1CompaniesCompanyUuidTaxRequirementsStateRequest withState(String state) { - Utils.checkNotNull(state, "state"); - this.state = state; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -142,6 +124,24 @@ public PutV1CompaniesCompanyUuidTaxRequirementsStateRequest withXGustoAPIVersion return this; } + /** + * The UUID of the company + */ + public PutV1CompaniesCompanyUuidTaxRequirementsStateRequest withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + /** + * The two-letter state abbreviation + */ + public PutV1CompaniesCompanyUuidTaxRequirementsStateRequest withState(String state) { + Utils.checkNotNull(state, "state"); + this.state = state; + return this; + } + public PutV1CompaniesCompanyUuidTaxRequirementsStateRequest withRequestBody(PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); this.requestBody = requestBody; @@ -158,37 +158,37 @@ public boolean equals(java.lang.Object o) { } PutV1CompaniesCompanyUuidTaxRequirementsStateRequest other = (PutV1CompaniesCompanyUuidTaxRequirementsStateRequest) o; return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && Utils.enhancedDeepEquals(this.state, other.state) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.requestBody, other.requestBody); } @Override public int hashCode() { return Utils.enhancedHash( - companyUuid, state, xGustoAPIVersion, + xGustoAPIVersion, companyUuid, state, requestBody); } @Override public String toString() { return Utils.toString(PutV1CompaniesCompanyUuidTaxRequirementsStateRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, "companyUuid", companyUuid, "state", state, - "xGustoAPIVersion", xGustoAPIVersion, "requestBody", requestBody); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { + private Optional xGustoAPIVersion; + private String companyUuid; private String state; - private Optional xGustoAPIVersion; - private PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody requestBody; private Builder() { @@ -196,26 +196,6 @@ private Builder() { } - /** - * The UUID of the company - */ - public Builder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - - /** - * The two-letter state abbreviation - */ - public Builder state(String state) { - Utils.checkNotNull(state, "state"); - this.state = state; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -239,6 +219,26 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String companyUuid; + private String state; private PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody requestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -29,18 +29,6 @@ public class PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder { public PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - public PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder state(String state) { - Utils.checkNotNull(state, "state"); - this.state = state; - return this; - } public PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder xGustoAPIVersion(PutV1CompaniesCompanyUuidTaxRequirementsStateHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -54,6 +42,18 @@ public PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder xGustoAPIVers return this; } + public PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + public PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder state(String state) { + Utils.checkNotNull(state, "state"); + this.state = state; + return this; + } + public PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder requestBody(PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); this.requestBody = requestBody; @@ -66,9 +66,9 @@ private PutV1CompaniesCompanyUuidTaxRequirementsStateRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PutV1CompaniesCompanyUuidTaxRequirementsStateRequest request = new PutV1CompaniesCompanyUuidTaxRequirementsStateRequest(companyUuid, + PutV1CompaniesCompanyUuidTaxRequirementsStateRequest request = new PutV1CompaniesCompanyUuidTaxRequirementsStateRequest(xGustoAPIVersion, + companyUuid, state, - xGustoAPIVersion, requestBody); return request; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1CompaniesRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1CompaniesRequest.java index 90bb281c2..91c58722c 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1CompaniesRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1CompaniesRequest.java @@ -16,12 +16,6 @@ public class PutV1CompaniesRequest { - /** - * The UUID of the company - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_id") - private String companyId; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,35 +24,33 @@ public class PutV1CompaniesRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_id") + private String companyId; + @SpeakeasyMetadata("request:mediaType=application/json") private PutV1CompaniesRequestBody requestBody; @JsonCreator public PutV1CompaniesRequest( - String companyId, Optional xGustoAPIVersion, + String companyId, PutV1CompaniesRequestBody requestBody) { - Utils.checkNotNull(companyId, "companyId"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(companyId, "companyId"); Utils.checkNotNull(requestBody, "requestBody"); - this.companyId = companyId; this.xGustoAPIVersion = xGustoAPIVersion; + this.companyId = companyId; this.requestBody = requestBody; } public PutV1CompaniesRequest( String companyId, PutV1CompaniesRequestBody requestBody) { - this(companyId, Optional.empty(), requestBody); - } - - /** - * The UUID of the company - */ - @JsonIgnore - public String companyId() { - return companyId; + this(Optional.empty(), companyId, requestBody); } /** @@ -72,6 +64,14 @@ public Optional xGustoAPIVersion() { return (Optional) xGustoAPIVersion; } + /** + * The UUID of the company + */ + @JsonIgnore + public String companyId() { + return companyId; + } + @JsonIgnore public PutV1CompaniesRequestBody requestBody() { return requestBody; @@ -82,15 +82,6 @@ public static Builder builder() { } - /** - * The UUID of the company - */ - public PutV1CompaniesRequest withCompanyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -114,6 +105,15 @@ public PutV1CompaniesRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String companyId; + private PutV1CompaniesRequestBody requestBody; private Builder() { @@ -163,16 +163,6 @@ private Builder() { } - /** - * The UUID of the company - */ - public Builder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -196,6 +186,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String companyId; private PutV1CompaniesRequestBody requestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -28,12 +28,6 @@ public class PutV1CompaniesRequestBuilder { public PutV1CompaniesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutV1CompaniesRequestBuilder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } public PutV1CompaniesRequestBuilder xGustoAPIVersion(PutV1CompaniesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -47,6 +41,12 @@ public PutV1CompaniesRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion; + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_id") + private String companyId; + @SpeakeasyMetadata("request:mediaType=application/json") private CompanyIndustrySelectionRequiredBody companyIndustrySelectionRequiredBody; @JsonCreator public PutV1CompanyIndustryRequest( - String companyId, Optional xGustoAPIVersion, + String companyId, CompanyIndustrySelectionRequiredBody companyIndustrySelectionRequiredBody) { - Utils.checkNotNull(companyId, "companyId"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(companyId, "companyId"); Utils.checkNotNull(companyIndustrySelectionRequiredBody, "companyIndustrySelectionRequiredBody"); - this.companyId = companyId; this.xGustoAPIVersion = xGustoAPIVersion; + this.companyId = companyId; this.companyIndustrySelectionRequiredBody = companyIndustrySelectionRequiredBody; } public PutV1CompanyIndustryRequest( String companyId, CompanyIndustrySelectionRequiredBody companyIndustrySelectionRequiredBody) { - this(companyId, Optional.empty(), companyIndustrySelectionRequiredBody); - } - - /** - * The UUID of the company - */ - @JsonIgnore - public String companyId() { - return companyId; + this(Optional.empty(), companyId, companyIndustrySelectionRequiredBody); } /** @@ -73,6 +65,14 @@ public Optional xGustoAPIVersion() { return (Optional) xGustoAPIVersion; } + /** + * The UUID of the company + */ + @JsonIgnore + public String companyId() { + return companyId; + } + @JsonIgnore public CompanyIndustrySelectionRequiredBody companyIndustrySelectionRequiredBody() { return companyIndustrySelectionRequiredBody; @@ -83,15 +83,6 @@ public static Builder builder() { } - /** - * The UUID of the company - */ - public PutV1CompanyIndustryRequest withCompanyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -115,6 +106,15 @@ public PutV1CompanyIndustryRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String companyId; + private CompanyIndustrySelectionRequiredBody companyIndustrySelectionRequiredBody; private Builder() { @@ -164,16 +164,6 @@ private Builder() { } - /** - * The UUID of the company - */ - public Builder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -197,6 +187,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String companyId; private CompanyIndustrySelectionRequiredBody companyIndustrySelectionRequiredBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -29,12 +29,6 @@ public class PutV1CompanyIndustryRequestBuilder { public PutV1CompanyIndustryRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutV1CompanyIndustryRequestBuilder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } public PutV1CompanyIndustryRequestBuilder xGustoAPIVersion(PutV1CompanyIndustryHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -48,6 +42,12 @@ public PutV1CompanyIndustryRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion; + /** + * The UUID of the contractor payment group + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=contractor_payment_group_uuid") + private String contractorPaymentGroupUuid; + @JsonCreator public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest( - String contractorPaymentGroupUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); + Optional xGustoAPIVersion, + String contractorPaymentGroupUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; + Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; } public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest( String contractorPaymentGroupUuid) { - this(contractorPaymentGroupUuid, Optional.empty()); - } - - /** - * The UUID of the contractor payment group - */ - @JsonIgnore - public String contractorPaymentGroupUuid() { - return contractorPaymentGroupUuid; + this(Optional.empty(), contractorPaymentGroupUuid); } /** @@ -64,20 +56,19 @@ public Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the contractor payment group */ - public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest withContractorPaymentGroupUuid(String contractorPaymentGroupUuid) { - Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); - this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; - return this; + @JsonIgnore + public String contractorPaymentGroupUuid() { + return contractorPaymentGroupUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest withXGust return this; } + /** + * The UUID of the contractor payment group + */ + public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest withContractorPaymentGroupUuid(String contractorPaymentGroupUuid) { + Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); + this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -111,45 +111,35 @@ public boolean equals(java.lang.Object o) { } PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest other = (PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest) o; return - Utils.enhancedDeepEquals(this.contractorPaymentGroupUuid, other.contractorPaymentGroupUuid) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.contractorPaymentGroupUuid, other.contractorPaymentGroupUuid); } @Override public int hashCode() { return Utils.enhancedHash( - contractorPaymentGroupUuid, xGustoAPIVersion); + xGustoAPIVersion, contractorPaymentGroupUuid); } @Override public String toString() { return Utils.toString(PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest.class, - "contractorPaymentGroupUuid", contractorPaymentGroupUuid, - "xGustoAPIVersion", xGustoAPIVersion); + "xGustoAPIVersion", xGustoAPIVersion, + "contractorPaymentGroupUuid", contractorPaymentGroupUuid); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String contractorPaymentGroupUuid; - private Optional xGustoAPIVersion; + private String contractorPaymentGroupUuid; + private Builder() { // force use of static builder() method } - /** - * The UUID of the contractor payment group - */ - public Builder contractorPaymentGroupUuid(String contractorPaymentGroupUuid) { - Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); - this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String contractorPaymentGroupUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequestBuilder contractorPaymentGroupUuid(String contractorPaymentGroupUuid) { - Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); - this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; - return this; - } public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequestBuilder xGustoAPIVersion(PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequestBuilder xG return this; } + public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequestBuilder contractorPaymentGroupUuid(String contractorPaymentGroupUuid) { + Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); + this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; + return this; + } + private PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest request = new PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest(contractorPaymentGroupUuid, - xGustoAPIVersion); + PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest request = new PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest(xGustoAPIVersion, + contractorPaymentGroupUuid); return request; } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1ContractorsContractorIdPaymentMethodRequestBody.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1ContractorsContractorIdPaymentMethodRequestBody.java index 278d6bd22..9d8932b9c 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1ContractorsContractorIdPaymentMethodRequestBody.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1ContractorsContractorIdPaymentMethodRequestBody.java @@ -25,12 +25,12 @@ public class PutV1ContractorsContractorIdPaymentMethodRequestBody { * account. See [Bank account endpoint](./post-v1-contractors-contractor_uuid-bank_accounts). */ @JsonProperty("type") - private PutV1ContractorsContractorIdPaymentMethodType type; + private Type type; @JsonCreator public PutV1ContractorsContractorIdPaymentMethodRequestBody( @JsonProperty("version") String version, - @JsonProperty("type") PutV1ContractorsContractorIdPaymentMethodType type) { + @JsonProperty("type") Type type) { Utils.checkNotNull(version, "version"); Utils.checkNotNull(type, "type"); this.version = version; @@ -52,7 +52,7 @@ public String version() { * account. See [Bank account endpoint](./post-v1-contractors-contractor_uuid-bank_accounts). */ @JsonIgnore - public PutV1ContractorsContractorIdPaymentMethodType type() { + public Type type() { return type; } @@ -76,7 +76,7 @@ public PutV1ContractorsContractorIdPaymentMethodRequestBody withVersion(String v * The payment method type. If type is Direct Deposit, the contractor is required to have a bank * account. See [Bank account endpoint](./post-v1-contractors-contractor_uuid-bank_accounts). */ - public PutV1ContractorsContractorIdPaymentMethodRequestBody withType(PutV1ContractorsContractorIdPaymentMethodType type) { + public PutV1ContractorsContractorIdPaymentMethodRequestBody withType(Type type) { Utils.checkNotNull(type, "type"); this.type = type; return this; @@ -114,7 +114,7 @@ public final static class Builder { private String version; - private PutV1ContractorsContractorIdPaymentMethodType type; + private Type type; private Builder() { // force use of static builder() method @@ -137,7 +137,7 @@ public Builder version(String version) { * The payment method type. If type is Direct Deposit, the contractor is required to have a bank * account. See [Bank account endpoint](./post-v1-contractors-contractor_uuid-bank_accounts). */ - public Builder type(PutV1ContractorsContractorIdPaymentMethodType type) { + public Builder type(Type type) { Utils.checkNotNull(type, "type"); this.type = type; return this; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1ContractorsContractorIdPaymentMethodType.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1ContractorsContractorIdPaymentMethodType.java deleted file mode 100644 index 60454f13c..000000000 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1ContractorsContractorIdPaymentMethodType.java +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - */ -package com.gusto.embedded_api.models.operations; - -import com.fasterxml.jackson.annotation.JsonValue; -import java.lang.String; -import java.util.Objects; -import java.util.Optional; - -/** - * PutV1ContractorsContractorIdPaymentMethodType - * - *

    The payment method type. If type is Direct Deposit, the contractor is required to have a bank - * account. See [Bank account endpoint](./post-v1-contractors-contractor_uuid-bank_accounts). - */ -public enum PutV1ContractorsContractorIdPaymentMethodType { - DIRECT_DEPOSIT("Direct Deposit"), - CHECK("Check"); - - @JsonValue - private final String value; - - PutV1ContractorsContractorIdPaymentMethodType(String value) { - this.value = value; - } - - public String value() { - return value; - } - - public static Optional fromValue(String value) { - for (PutV1ContractorsContractorIdPaymentMethodType o: PutV1ContractorsContractorIdPaymentMethodType.values()) { - if (Objects.deepEquals(o.value, value)) { - return Optional.of(o); - } - } - return Optional.empty(); - } -} - diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1EmployeesEmployeeIdPaymentMethodRequestBody.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1EmployeesEmployeeIdPaymentMethodRequestBody.java index a00df76c0..36bd61e0b 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1EmployeesEmployeeIdPaymentMethodRequestBody.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1EmployeesEmployeeIdPaymentMethodRequestBody.java @@ -30,7 +30,7 @@ public class PutV1EmployeesEmployeeIdPaymentMethodRequestBody { * is Direct Deposit, split_by and splits are required. */ @JsonProperty("type") - private Type type; + private PutV1EmployeesEmployeeIdPaymentMethodType type; /** * How the payment will be split. If Percentage, split amounts must add up to exactly 100. If Amount, @@ -50,7 +50,7 @@ public class PutV1EmployeesEmployeeIdPaymentMethodRequestBody { @JsonCreator public PutV1EmployeesEmployeeIdPaymentMethodRequestBody( @JsonProperty("version") String version, - @JsonProperty("type") Type type, + @JsonProperty("type") PutV1EmployeesEmployeeIdPaymentMethodType type, @JsonProperty("split_by") JsonNullable splitBy, @JsonProperty("splits") JsonNullable> splits) { Utils.checkNotNull(version, "version"); @@ -65,7 +65,7 @@ public PutV1EmployeesEmployeeIdPaymentMethodRequestBody( public PutV1EmployeesEmployeeIdPaymentMethodRequestBody( String version, - Type type) { + PutV1EmployeesEmployeeIdPaymentMethodType type) { this(version, type, JsonNullable.undefined(), JsonNullable.undefined()); } @@ -85,7 +85,7 @@ public String version() { * is Direct Deposit, split_by and splits are required. */ @JsonIgnore - public Type type() { + public PutV1EmployeesEmployeeIdPaymentMethodType type() { return type; } @@ -128,7 +128,7 @@ public PutV1EmployeesEmployeeIdPaymentMethodRequestBody withVersion(String versi * The payment method type. If type is Check, split_by and splits do not need to be populated. If type * is Direct Deposit, split_by and splits are required. */ - public PutV1EmployeesEmployeeIdPaymentMethodRequestBody withType(Type type) { + public PutV1EmployeesEmployeeIdPaymentMethodRequestBody withType(PutV1EmployeesEmployeeIdPaymentMethodType type) { Utils.checkNotNull(type, "type"); this.type = type; return this; @@ -209,7 +209,7 @@ public final static class Builder { private String version; - private Type type; + private PutV1EmployeesEmployeeIdPaymentMethodType type; private JsonNullable splitBy = JsonNullable.undefined(); @@ -236,7 +236,7 @@ public Builder version(String version) { * The payment method type. If type is Check, split_by and splits do not need to be populated. If type * is Direct Deposit, split_by and splits are required. */ - public Builder type(Type type) { + public Builder type(PutV1EmployeesEmployeeIdPaymentMethodType type) { Utils.checkNotNull(type, "type"); this.type = type; return this; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1EmployeesEmployeeIdPaymentMethodType.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1EmployeesEmployeeIdPaymentMethodType.java new file mode 100644 index 000000000..1b9be134f --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1EmployeesEmployeeIdPaymentMethodType.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PutV1EmployeesEmployeeIdPaymentMethodType + * + *

    The payment method type. If type is Check, split_by and splits do not need to be populated. If type + * is Direct Deposit, split_by and splits are required. + */ +public enum PutV1EmployeesEmployeeIdPaymentMethodType { + CHECK("Check"), + DIRECT_DEPOSIT("Direct Deposit"); + + @JsonValue + private final String value; + + PutV1EmployeesEmployeeIdPaymentMethodType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PutV1EmployeesEmployeeIdPaymentMethodType o: PutV1EmployeesEmployeeIdPaymentMethodType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1JobsJobIdRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1JobsJobIdRequest.java index 2a03deddf..43135237c 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1JobsJobIdRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1JobsJobIdRequest.java @@ -17,12 +17,6 @@ public class PutV1JobsJobIdRequest { - /** - * The UUID of the job - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=job_id") - private String jobId; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -31,35 +25,33 @@ public class PutV1JobsJobIdRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the job + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=job_id") + private String jobId; + @SpeakeasyMetadata("request:mediaType=application/json") private JobsUpdateRequestBody jobsUpdateRequestBody; @JsonCreator public PutV1JobsJobIdRequest( - String jobId, Optional xGustoAPIVersion, + String jobId, JobsUpdateRequestBody jobsUpdateRequestBody) { - Utils.checkNotNull(jobId, "jobId"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(jobId, "jobId"); Utils.checkNotNull(jobsUpdateRequestBody, "jobsUpdateRequestBody"); - this.jobId = jobId; this.xGustoAPIVersion = xGustoAPIVersion; + this.jobId = jobId; this.jobsUpdateRequestBody = jobsUpdateRequestBody; } public PutV1JobsJobIdRequest( String jobId, JobsUpdateRequestBody jobsUpdateRequestBody) { - this(jobId, Optional.empty(), jobsUpdateRequestBody); - } - - /** - * The UUID of the job - */ - @JsonIgnore - public String jobId() { - return jobId; + this(Optional.empty(), jobId, jobsUpdateRequestBody); } /** @@ -73,6 +65,14 @@ public Optional xGustoAPIVersion() { return (Optional) xGustoAPIVersion; } + /** + * The UUID of the job + */ + @JsonIgnore + public String jobId() { + return jobId; + } + @JsonIgnore public JobsUpdateRequestBody jobsUpdateRequestBody() { return jobsUpdateRequestBody; @@ -83,15 +83,6 @@ public static Builder builder() { } - /** - * The UUID of the job - */ - public PutV1JobsJobIdRequest withJobId(String jobId) { - Utils.checkNotNull(jobId, "jobId"); - this.jobId = jobId; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -115,6 +106,15 @@ public PutV1JobsJobIdRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String jobId; + private JobsUpdateRequestBody jobsUpdateRequestBody; private Builder() { @@ -164,16 +164,6 @@ private Builder() { } - /** - * The UUID of the job - */ - public Builder jobId(String jobId) { - Utils.checkNotNull(jobId, "jobId"); - this.jobId = jobId; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -197,6 +187,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String jobId; private JobsUpdateRequestBody jobsUpdateRequestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -29,12 +29,6 @@ public class PutV1JobsJobIdRequestBuilder { public PutV1JobsJobIdRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutV1JobsJobIdRequestBuilder jobId(String jobId) { - Utils.checkNotNull(jobId, "jobId"); - this.jobId = jobId; - return this; - } public PutV1JobsJobIdRequestBuilder xGustoAPIVersion(PutV1JobsJobIdHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -48,6 +42,12 @@ public PutV1JobsJobIdRequestBuilder xGustoAPIVersion(Optional rawResponse; /** - * successful + * successful blank title on a non-primary active job */ private Optional job; @@ -87,7 +87,7 @@ public HttpResponse rawResponse() { } /** - * successful + * successful blank title on a non-primary active job */ @SuppressWarnings("unchecked") @JsonIgnore @@ -128,7 +128,7 @@ public PutV1JobsJobIdResponse withRawResponse(HttpResponse rawRespo } /** - * successful + * successful blank title on a non-primary active job */ public PutV1JobsJobIdResponse withJob(Job job) { Utils.checkNotNull(job, "job"); @@ -138,7 +138,7 @@ public PutV1JobsJobIdResponse withJob(Job job) { /** - * successful + * successful blank title on a non-primary active job */ public PutV1JobsJobIdResponse withJob(Optional job) { Utils.checkNotNull(job, "job"); @@ -225,7 +225,7 @@ public Builder rawResponse(HttpResponse rawResponse) { /** - * successful + * successful blank title on a non-primary active job */ public Builder job(Job job) { Utils.checkNotNull(job, "job"); @@ -234,7 +234,7 @@ public Builder job(Job job) { } /** - * successful + * successful blank title on a non-primary active job */ public Builder job(Optional job) { Utils.checkNotNull(job, "job"); diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion.java new file mode 100644 index 000000000..39963ea61 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion + * + *

    Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ +public enum PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion { + TWO_THOUSAND_AND_TWENTY_FIVE_MINUS06_MINUS15("2025-06-15"); + + @JsonValue + private final String value; + + PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion o: PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest.java new file mode 100644 index 000000000..bca0a6cfa --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest.java @@ -0,0 +1,191 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api.utils.LazySingletonValue; +import com.gusto.embedded_api.utils.SpeakeasyMetadata; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") + private String companyUuid; + + @JsonCreator + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest( + Optional xGustoAPIVersion, + String companyUuid) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(companyUuid, "companyUuid"); + this.xGustoAPIVersion = xGustoAPIVersion; + this.companyUuid = companyUuid; + } + + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest( + String companyUuid) { + this(Optional.empty(), companyUuid); + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + + /** + * The UUID of the company + */ + @JsonIgnore + public String companyUuid() { + return companyUuid; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest withXGustoAPIVersion(PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + /** + * The UUID of the company + */ + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest other = (PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest) o; + return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + xGustoAPIVersion, companyUuid); + } + + @Override + public String toString() { + return Utils.toString(PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, + "companyUuid", companyUuid); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional xGustoAPIVersion; + + private String companyUuid; + + private Builder() { + // force use of static builder() method + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + + /** + * The UUID of the company + */ + public Builder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest build() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + return new PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest( + xGustoAPIVersion, companyUuid); + } + + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "X-Gusto-API-Version", + "\"2025-06-15\"", + new TypeReference>() {}); + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder.java new file mode 100644 index 000000000..635899651 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder.java @@ -0,0 +1,82 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import static com.gusto.embedded_api.operations.Operations.RequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api.SDKConfiguration; +import com.gusto.embedded_api.operations.PutV1PartnerManagedCompaniesCompanyUuidDisassociate; +import com.gusto.embedded_api.utils.Headers; +import com.gusto.embedded_api.utils.LazySingletonValue; +import com.gusto.embedded_api.utils.Utils; +import java.lang.String; +import java.util.Optional; + +public class PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder { + + private PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity security; + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2025-06-15\"", + new TypeReference>() {}); + private String companyUuid; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder security(PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity security) { + Utils.checkNotNull(security, "security"); + this.security = security; + return this; + } + + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder xGustoAPIVersion(PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + + private PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest request = new PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest(xGustoAPIVersion, + companyUuid); + + return request; + } + + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse call() { + + RequestOperation operation + = new PutV1PartnerManagedCompaniesCompanyUuidDisassociate.Sync(sdkConfiguration, security, _headers); + PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest request = buildRequest(); + + return operation.handleResponse(operation.doRequest(request)); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2025-06-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse.java new file mode 100644 index 000000000..e92641e2b --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse.java @@ -0,0 +1,253 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api.models.components.PartnerManagedCompanyDisassociateResponse; +import com.gusto.embedded_api.utils.Response; +import com.gusto.embedded_api.utils.Utils; +import java.io.InputStream; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.Optional; + + +public class PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse implements Response { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * OK + */ + private Optional partnerManagedCompanyDisassociateResponse; + + @JsonCreator + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional partnerManagedCompanyDisassociateResponse) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(partnerManagedCompanyDisassociateResponse, "partnerManagedCompanyDisassociateResponse"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.partnerManagedCompanyDisassociateResponse = partnerManagedCompanyDisassociateResponse; + } + + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * OK + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional partnerManagedCompanyDisassociateResponse() { + return (Optional) partnerManagedCompanyDisassociateResponse; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * OK + */ + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse withPartnerManagedCompanyDisassociateResponse(PartnerManagedCompanyDisassociateResponse partnerManagedCompanyDisassociateResponse) { + Utils.checkNotNull(partnerManagedCompanyDisassociateResponse, "partnerManagedCompanyDisassociateResponse"); + this.partnerManagedCompanyDisassociateResponse = Optional.ofNullable(partnerManagedCompanyDisassociateResponse); + return this; + } + + + /** + * OK + */ + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse withPartnerManagedCompanyDisassociateResponse(Optional partnerManagedCompanyDisassociateResponse) { + Utils.checkNotNull(partnerManagedCompanyDisassociateResponse, "partnerManagedCompanyDisassociateResponse"); + this.partnerManagedCompanyDisassociateResponse = partnerManagedCompanyDisassociateResponse; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse other = (PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.partnerManagedCompanyDisassociateResponse, other.partnerManagedCompanyDisassociateResponse); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + partnerManagedCompanyDisassociateResponse); + } + + @Override + public String toString() { + return Utils.toString(PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "partnerManagedCompanyDisassociateResponse", partnerManagedCompanyDisassociateResponse); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional partnerManagedCompanyDisassociateResponse = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * OK + */ + public Builder partnerManagedCompanyDisassociateResponse(PartnerManagedCompanyDisassociateResponse partnerManagedCompanyDisassociateResponse) { + Utils.checkNotNull(partnerManagedCompanyDisassociateResponse, "partnerManagedCompanyDisassociateResponse"); + this.partnerManagedCompanyDisassociateResponse = Optional.ofNullable(partnerManagedCompanyDisassociateResponse); + return this; + } + + /** + * OK + */ + public Builder partnerManagedCompanyDisassociateResponse(Optional partnerManagedCompanyDisassociateResponse) { + Utils.checkNotNull(partnerManagedCompanyDisassociateResponse, "partnerManagedCompanyDisassociateResponse"); + this.partnerManagedCompanyDisassociateResponse = partnerManagedCompanyDisassociateResponse; + return this; + } + + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse build() { + + return new PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse( + contentType, statusCode, rawResponse, + partnerManagedCompanyDisassociateResponse); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity.java new file mode 100644 index 000000000..82a71b0b8 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity.java @@ -0,0 +1,91 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api.utils.HasSecurity; +import com.gusto.embedded_api.utils.SpeakeasyMetadata; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Override; +import java.lang.String; + + +public class PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity implements HasSecurity { + + @SpeakeasyMetadata("security:scheme=true,type=http,subtype=bearer,name=Authorization") + private String systemAccessAuth; + + @JsonCreator + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity( + String systemAccessAuth) { + Utils.checkNotNull(systemAccessAuth, "systemAccessAuth"); + this.systemAccessAuth = systemAccessAuth; + } + + @JsonIgnore + public String systemAccessAuth() { + return systemAccessAuth; + } + + public static Builder builder() { + return new Builder(); + } + + + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity withSystemAccessAuth(String systemAccessAuth) { + Utils.checkNotNull(systemAccessAuth, "systemAccessAuth"); + this.systemAccessAuth = systemAccessAuth; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity other = (PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity) o; + return + Utils.enhancedDeepEquals(this.systemAccessAuth, other.systemAccessAuth); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + systemAccessAuth); + } + + @Override + public String toString() { + return Utils.toString(PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity.class, + "systemAccessAuth", systemAccessAuth); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String systemAccessAuth; + + private Builder() { + // force use of static builder() method + } + + + public Builder systemAccessAuth(String systemAccessAuth) { + Utils.checkNotNull(systemAccessAuth, "systemAccessAuth"); + this.systemAccessAuth = systemAccessAuth; + return this; + } + + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity build() { + + return new PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity( + systemAccessAuth); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest.java index 294204b12..4392c8c89 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest.java @@ -17,12 +17,6 @@ public class PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest { - /** - * The UUID of the company - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") - private String companyUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -31,35 +25,33 @@ public class PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") + private String companyUuid; + @SpeakeasyMetadata("request:mediaType=application/json") private PartnerManagedCompanyMigrateRequest partnerManagedCompanyMigrateRequest; @JsonCreator public PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest( - String companyUuid, Optional xGustoAPIVersion, + String companyUuid, PartnerManagedCompanyMigrateRequest partnerManagedCompanyMigrateRequest) { - Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(partnerManagedCompanyMigrateRequest, "partnerManagedCompanyMigrateRequest"); - this.companyUuid = companyUuid; this.xGustoAPIVersion = xGustoAPIVersion; + this.companyUuid = companyUuid; this.partnerManagedCompanyMigrateRequest = partnerManagedCompanyMigrateRequest; } public PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest( String companyUuid, PartnerManagedCompanyMigrateRequest partnerManagedCompanyMigrateRequest) { - this(companyUuid, Optional.empty(), partnerManagedCompanyMigrateRequest); - } - - /** - * The UUID of the company - */ - @JsonIgnore - public String companyUuid() { - return companyUuid; + this(Optional.empty(), companyUuid, partnerManagedCompanyMigrateRequest); } /** @@ -73,6 +65,14 @@ public Optional) xGustoAPIVersion; } + /** + * The UUID of the company + */ + @JsonIgnore + public String companyUuid() { + return companyUuid; + } + @JsonIgnore public PartnerManagedCompanyMigrateRequest partnerManagedCompanyMigrateRequest() { return partnerManagedCompanyMigrateRequest; @@ -83,15 +83,6 @@ public static Builder builder() { } - /** - * The UUID of the company - */ - public PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest withCompanyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -115,6 +106,15 @@ public PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest withXGustoAPIVersio return this; } + /** + * The UUID of the company + */ + public PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + public PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest withPartnerManagedCompanyMigrateRequest(PartnerManagedCompanyMigrateRequest partnerManagedCompanyMigrateRequest) { Utils.checkNotNull(partnerManagedCompanyMigrateRequest, "partnerManagedCompanyMigrateRequest"); this.partnerManagedCompanyMigrateRequest = partnerManagedCompanyMigrateRequest; @@ -131,32 +131,32 @@ public boolean equals(java.lang.Object o) { } PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest other = (PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest) o; return - Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && Utils.enhancedDeepEquals(this.partnerManagedCompanyMigrateRequest, other.partnerManagedCompanyMigrateRequest); } @Override public int hashCode() { return Utils.enhancedHash( - companyUuid, xGustoAPIVersion, partnerManagedCompanyMigrateRequest); + xGustoAPIVersion, companyUuid, partnerManagedCompanyMigrateRequest); } @Override public String toString() { return Utils.toString(PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest.class, - "companyUuid", companyUuid, "xGustoAPIVersion", xGustoAPIVersion, + "companyUuid", companyUuid, "partnerManagedCompanyMigrateRequest", partnerManagedCompanyMigrateRequest); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String companyUuid; - private Optional xGustoAPIVersion; + private String companyUuid; + private PartnerManagedCompanyMigrateRequest partnerManagedCompanyMigrateRequest; private Builder() { @@ -164,16 +164,6 @@ private Builder() { } - /** - * The UUID of the company - */ - public Builder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -197,6 +187,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String companyUuid; private PartnerManagedCompanyMigrateRequest partnerManagedCompanyMigrateRequest; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -29,12 +29,6 @@ public class PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder { public PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder xGustoAPIVersion(PutV1PartnerManagedCompaniesCompanyUuidMigrateHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -48,6 +42,12 @@ public PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder xGustoAPIVer return this; } + public PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + public PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder partnerManagedCompanyMigrateRequest(PartnerManagedCompanyMigrateRequest partnerManagedCompanyMigrateRequest) { Utils.checkNotNull(partnerManagedCompanyMigrateRequest, "partnerManagedCompanyMigrateRequest"); this.partnerManagedCompanyMigrateRequest = partnerManagedCompanyMigrateRequest; @@ -60,8 +60,8 @@ private PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest request = new PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest(companyUuid, - xGustoAPIVersion, + PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest request = new PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest(xGustoAPIVersion, + companyUuid, partnerManagedCompanyMigrateRequest); return request; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesEmployees.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesEmployees.java new file mode 100644 index 000000000..8658440c9 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesEmployees.java @@ -0,0 +1,168 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Override; +import java.lang.String; +import org.openapitools.jackson.nullable.JsonNullable; + + +public class PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesEmployees { + /** + * The UUID of the employee + */ + @JsonProperty("uuid") + private String uuid; + + /** + * The starting balance for the employee + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("balance") + private JsonNullable balance; + + @JsonCreator + public PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesEmployees( + @JsonProperty("uuid") String uuid, + @JsonProperty("balance") JsonNullable balance) { + Utils.checkNotNull(uuid, "uuid"); + Utils.checkNotNull(balance, "balance"); + this.uuid = uuid; + this.balance = balance; + } + + public PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesEmployees( + String uuid) { + this(uuid, JsonNullable.undefined()); + } + + /** + * The UUID of the employee + */ + @JsonIgnore + public String uuid() { + return uuid; + } + + /** + * The starting balance for the employee + */ + @JsonIgnore + public JsonNullable balance() { + return balance; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * The UUID of the employee + */ + public PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesEmployees withUuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + /** + * The starting balance for the employee + */ + public PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesEmployees withBalance(String balance) { + Utils.checkNotNull(balance, "balance"); + this.balance = JsonNullable.of(balance); + return this; + } + + /** + * The starting balance for the employee + */ + public PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesEmployees withBalance(JsonNullable balance) { + Utils.checkNotNull(balance, "balance"); + this.balance = balance; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesEmployees other = (PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesEmployees) o; + return + Utils.enhancedDeepEquals(this.uuid, other.uuid) && + Utils.enhancedDeepEquals(this.balance, other.balance); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + uuid, balance); + } + + @Override + public String toString() { + return Utils.toString(PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesEmployees.class, + "uuid", uuid, + "balance", balance); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String uuid; + + private JsonNullable balance = JsonNullable.undefined(); + + private Builder() { + // force use of static builder() method + } + + + /** + * The UUID of the employee + */ + public Builder uuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + + /** + * The starting balance for the employee + */ + public Builder balance(String balance) { + Utils.checkNotNull(balance, "balance"); + this.balance = JsonNullable.of(balance); + return this; + } + + /** + * The starting balance for the employee + */ + public Builder balance(JsonNullable balance) { + Utils.checkNotNull(balance, "balance"); + this.balance = balance; + return this; + } + + public PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesEmployees build() { + + return new PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesEmployees( + uuid, balance); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesRequestBody.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesRequestBody.java index e8771cddc..e66899b4f 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesRequestBody.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesRequestBody.java @@ -15,17 +15,17 @@ public class PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesRequestBody { @JsonProperty("employees") - private List employees; + private List employees; @JsonCreator public PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesRequestBody( - @JsonProperty("employees") List employees) { + @JsonProperty("employees") List employees) { Utils.checkNotNull(employees, "employees"); this.employees = employees; } @JsonIgnore - public List employees() { + public List employees() { return employees; } @@ -34,7 +34,7 @@ public static Builder builder() { } - public PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesRequestBody withEmployees(List employees) { + public PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesRequestBody withEmployees(List employees) { Utils.checkNotNull(employees, "employees"); this.employees = employees; return this; @@ -68,14 +68,14 @@ public String toString() { @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private List employees; + private List employees; private Builder() { // force use of static builder() method } - public Builder employees(List employees) { + public Builder employees(List employees) { Utils.checkNotNull(employees, "employees"); this.employees = employees; return this; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1VerifyWebhookSubscriptionUuidRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1VerifyWebhookSubscriptionUuidRequest.java index bf075061c..2c9c2ba2f 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1VerifyWebhookSubscriptionUuidRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1VerifyWebhookSubscriptionUuidRequest.java @@ -16,12 +16,6 @@ public class PutV1VerifyWebhookSubscriptionUuidRequest { - /** - * The webhook subscription UUID. - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=webhook_subscription_uuid") - private String webhookSubscriptionUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,35 +24,33 @@ public class PutV1VerifyWebhookSubscriptionUuidRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The webhook subscription UUID. + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=webhook_subscription_uuid") + private String webhookSubscriptionUuid; + @SpeakeasyMetadata("request:mediaType=application/json") private PutV1VerifyWebhookSubscriptionUuidRequestBody requestBody; @JsonCreator public PutV1VerifyWebhookSubscriptionUuidRequest( - String webhookSubscriptionUuid, Optional xGustoAPIVersion, + String webhookSubscriptionUuid, PutV1VerifyWebhookSubscriptionUuidRequestBody requestBody) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); Utils.checkNotNull(requestBody, "requestBody"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; this.xGustoAPIVersion = xGustoAPIVersion; + this.webhookSubscriptionUuid = webhookSubscriptionUuid; this.requestBody = requestBody; } public PutV1VerifyWebhookSubscriptionUuidRequest( String webhookSubscriptionUuid, PutV1VerifyWebhookSubscriptionUuidRequestBody requestBody) { - this(webhookSubscriptionUuid, Optional.empty(), requestBody); - } - - /** - * The webhook subscription UUID. - */ - @JsonIgnore - public String webhookSubscriptionUuid() { - return webhookSubscriptionUuid; + this(Optional.empty(), webhookSubscriptionUuid, requestBody); } /** @@ -72,6 +64,14 @@ public Optional xGusto return (Optional) xGustoAPIVersion; } + /** + * The webhook subscription UUID. + */ + @JsonIgnore + public String webhookSubscriptionUuid() { + return webhookSubscriptionUuid; + } + @JsonIgnore public PutV1VerifyWebhookSubscriptionUuidRequestBody requestBody() { return requestBody; @@ -82,15 +82,6 @@ public static Builder builder() { } - /** - * The webhook subscription UUID. - */ - public PutV1VerifyWebhookSubscriptionUuidRequest withWebhookSubscriptionUuid(String webhookSubscriptionUuid) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -114,6 +105,15 @@ public PutV1VerifyWebhookSubscriptionUuidRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String webhookSubscriptionUuid; + private PutV1VerifyWebhookSubscriptionUuidRequestBody requestBody; private Builder() { @@ -163,16 +163,6 @@ private Builder() { } - /** - * The webhook subscription UUID. - */ - public Builder webhookSubscriptionUuid(String webhookSubscriptionUuid) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -196,6 +186,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String webhookSubscriptionUuid; private PutV1VerifyWebhookSubscriptionUuidRequestBody requestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -35,12 +35,6 @@ public PutV1VerifyWebhookSubscriptionUuidRequestBuilder security(PutV1VerifyWebh this.security = security; return this; } - - public PutV1VerifyWebhookSubscriptionUuidRequestBuilder webhookSubscriptionUuid(String webhookSubscriptionUuid) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; - return this; - } public PutV1VerifyWebhookSubscriptionUuidRequestBuilder xGustoAPIVersion(PutV1VerifyWebhookSubscriptionUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -54,6 +48,12 @@ public PutV1VerifyWebhookSubscriptionUuidRequestBuilder xGustoAPIVersion(Optiona return this; } + public PutV1VerifyWebhookSubscriptionUuidRequestBuilder webhookSubscriptionUuid(String webhookSubscriptionUuid) { + Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); + this.webhookSubscriptionUuid = webhookSubscriptionUuid; + return this; + } + public PutV1VerifyWebhookSubscriptionUuidRequestBuilder requestBody(PutV1VerifyWebhookSubscriptionUuidRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); this.requestBody = requestBody; @@ -66,8 +66,8 @@ private PutV1VerifyWebhookSubscriptionUuidRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PutV1VerifyWebhookSubscriptionUuidRequest request = new PutV1VerifyWebhookSubscriptionUuidRequest(webhookSubscriptionUuid, - xGustoAPIVersion, + PutV1VerifyWebhookSubscriptionUuidRequest request = new PutV1VerifyWebhookSubscriptionUuidRequest(xGustoAPIVersion, + webhookSubscriptionUuid, requestBody); return request; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1WebhookSubscriptionUuidRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1WebhookSubscriptionUuidRequest.java index d35c65f07..320f05f98 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1WebhookSubscriptionUuidRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutV1WebhookSubscriptionUuidRequest.java @@ -16,12 +16,6 @@ public class PutV1WebhookSubscriptionUuidRequest { - /** - * The webhook subscription UUID. - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=webhook_subscription_uuid") - private String webhookSubscriptionUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,35 +24,33 @@ public class PutV1WebhookSubscriptionUuidRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The webhook subscription UUID. + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=webhook_subscription_uuid") + private String webhookSubscriptionUuid; + @SpeakeasyMetadata("request:mediaType=application/json") private PutV1WebhookSubscriptionUuidRequestBody requestBody; @JsonCreator public PutV1WebhookSubscriptionUuidRequest( - String webhookSubscriptionUuid, Optional xGustoAPIVersion, + String webhookSubscriptionUuid, PutV1WebhookSubscriptionUuidRequestBody requestBody) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); Utils.checkNotNull(requestBody, "requestBody"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; this.xGustoAPIVersion = xGustoAPIVersion; + this.webhookSubscriptionUuid = webhookSubscriptionUuid; this.requestBody = requestBody; } public PutV1WebhookSubscriptionUuidRequest( String webhookSubscriptionUuid, PutV1WebhookSubscriptionUuidRequestBody requestBody) { - this(webhookSubscriptionUuid, Optional.empty(), requestBody); - } - - /** - * The webhook subscription UUID. - */ - @JsonIgnore - public String webhookSubscriptionUuid() { - return webhookSubscriptionUuid; + this(Optional.empty(), webhookSubscriptionUuid, requestBody); } /** @@ -72,6 +64,14 @@ public Optional xGustoAPIVer return (Optional) xGustoAPIVersion; } + /** + * The webhook subscription UUID. + */ + @JsonIgnore + public String webhookSubscriptionUuid() { + return webhookSubscriptionUuid; + } + @JsonIgnore public PutV1WebhookSubscriptionUuidRequestBody requestBody() { return requestBody; @@ -82,15 +82,6 @@ public static Builder builder() { } - /** - * The webhook subscription UUID. - */ - public PutV1WebhookSubscriptionUuidRequest withWebhookSubscriptionUuid(String webhookSubscriptionUuid) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -114,6 +105,15 @@ public PutV1WebhookSubscriptionUuidRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String webhookSubscriptionUuid; + private PutV1WebhookSubscriptionUuidRequestBody requestBody; private Builder() { @@ -163,16 +163,6 @@ private Builder() { } - /** - * The webhook subscription UUID. - */ - public Builder webhookSubscriptionUuid(String webhookSubscriptionUuid) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -196,6 +186,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String webhookSubscriptionUuid; private PutV1WebhookSubscriptionUuidRequestBody requestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -35,12 +35,6 @@ public PutV1WebhookSubscriptionUuidRequestBuilder security(PutV1WebhookSubscript this.security = security; return this; } - - public PutV1WebhookSubscriptionUuidRequestBuilder webhookSubscriptionUuid(String webhookSubscriptionUuid) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; - return this; - } public PutV1WebhookSubscriptionUuidRequestBuilder xGustoAPIVersion(PutV1WebhookSubscriptionUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -54,6 +48,12 @@ public PutV1WebhookSubscriptionUuidRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion; + /** + * The UUID of the work address + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=work_address_uuid") + private String workAddressUuid; + @SpeakeasyMetadata("request:mediaType=application/json") private PutV1WorkAddressesWorkAddressUuidRequestBody requestBody; @JsonCreator public PutV1WorkAddressesWorkAddressUuidRequest( - String workAddressUuid, Optional xGustoAPIVersion, + String workAddressUuid, PutV1WorkAddressesWorkAddressUuidRequestBody requestBody) { - Utils.checkNotNull(workAddressUuid, "workAddressUuid"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(workAddressUuid, "workAddressUuid"); Utils.checkNotNull(requestBody, "requestBody"); - this.workAddressUuid = workAddressUuid; this.xGustoAPIVersion = xGustoAPIVersion; + this.workAddressUuid = workAddressUuid; this.requestBody = requestBody; } public PutV1WorkAddressesWorkAddressUuidRequest( String workAddressUuid, PutV1WorkAddressesWorkAddressUuidRequestBody requestBody) { - this(workAddressUuid, Optional.empty(), requestBody); - } - - /** - * The UUID of the work address - */ - @JsonIgnore - public String workAddressUuid() { - return workAddressUuid; + this(Optional.empty(), workAddressUuid, requestBody); } /** @@ -72,6 +64,14 @@ public Optional xGustoA return (Optional) xGustoAPIVersion; } + /** + * The UUID of the work address + */ + @JsonIgnore + public String workAddressUuid() { + return workAddressUuid; + } + @JsonIgnore public PutV1WorkAddressesWorkAddressUuidRequestBody requestBody() { return requestBody; @@ -82,15 +82,6 @@ public static Builder builder() { } - /** - * The UUID of the work address - */ - public PutV1WorkAddressesWorkAddressUuidRequest withWorkAddressUuid(String workAddressUuid) { - Utils.checkNotNull(workAddressUuid, "workAddressUuid"); - this.workAddressUuid = workAddressUuid; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -114,6 +105,15 @@ public PutV1WorkAddressesWorkAddressUuidRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String workAddressUuid; + private PutV1WorkAddressesWorkAddressUuidRequestBody requestBody; private Builder() { @@ -163,16 +163,6 @@ private Builder() { } - /** - * The UUID of the work address - */ - public Builder workAddressUuid(String workAddressUuid) { - Utils.checkNotNull(workAddressUuid, "workAddressUuid"); - this.workAddressUuid = workAddressUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -196,6 +186,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String workAddressUuid; private PutV1WorkAddressesWorkAddressUuidRequestBody requestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -28,12 +28,6 @@ public class PutV1WorkAddressesWorkAddressUuidRequestBuilder { public PutV1WorkAddressesWorkAddressUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutV1WorkAddressesWorkAddressUuidRequestBuilder workAddressUuid(String workAddressUuid) { - Utils.checkNotNull(workAddressUuid, "workAddressUuid"); - this.workAddressUuid = workAddressUuid; - return this; - } public PutV1WorkAddressesWorkAddressUuidRequestBuilder xGustoAPIVersion(PutV1WorkAddressesWorkAddressUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -47,6 +41,12 @@ public PutV1WorkAddressesWorkAddressUuidRequestBuilder xGustoAPIVersion(Optional return this; } + public PutV1WorkAddressesWorkAddressUuidRequestBuilder workAddressUuid(String workAddressUuid) { + Utils.checkNotNull(workAddressUuid, "workAddressUuid"); + this.workAddressUuid = workAddressUuid; + return this; + } + public PutV1WorkAddressesWorkAddressUuidRequestBuilder requestBody(PutV1WorkAddressesWorkAddressUuidRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); this.requestBody = requestBody; @@ -59,8 +59,8 @@ private PutV1WorkAddressesWorkAddressUuidRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PutV1WorkAddressesWorkAddressUuidRequest request = new PutV1WorkAddressesWorkAddressUuidRequest(workAddressUuid, - xGustoAPIVersion, + PutV1WorkAddressesWorkAddressUuidRequest request = new PutV1WorkAddressesWorkAddressUuidRequest(xGustoAPIVersion, + workAddressUuid, requestBody); return request; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutWireInRequestsWireInRequestUuidRequest.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutWireInRequestsWireInRequestUuidRequest.java index 7055d8adb..c2d58ddbb 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutWireInRequestsWireInRequestUuidRequest.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/PutWireInRequestsWireInRequestUuidRequest.java @@ -17,12 +17,6 @@ public class PutWireInRequestsWireInRequestUuidRequest { - /** - * The UUID of the Wire In Request - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=wire_in_request_uuid") - private String wireInRequestUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -31,35 +25,33 @@ public class PutWireInRequestsWireInRequestUuidRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the Wire In Request + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=wire_in_request_uuid") + private String wireInRequestUuid; + @SpeakeasyMetadata("request:mediaType=application/json") private WireInRequestUpdateRequestBody wireInRequestUpdateRequestBody; @JsonCreator public PutWireInRequestsWireInRequestUuidRequest( - String wireInRequestUuid, Optional xGustoAPIVersion, + String wireInRequestUuid, WireInRequestUpdateRequestBody wireInRequestUpdateRequestBody) { - Utils.checkNotNull(wireInRequestUuid, "wireInRequestUuid"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(wireInRequestUuid, "wireInRequestUuid"); Utils.checkNotNull(wireInRequestUpdateRequestBody, "wireInRequestUpdateRequestBody"); - this.wireInRequestUuid = wireInRequestUuid; this.xGustoAPIVersion = xGustoAPIVersion; + this.wireInRequestUuid = wireInRequestUuid; this.wireInRequestUpdateRequestBody = wireInRequestUpdateRequestBody; } public PutWireInRequestsWireInRequestUuidRequest( String wireInRequestUuid, WireInRequestUpdateRequestBody wireInRequestUpdateRequestBody) { - this(wireInRequestUuid, Optional.empty(), wireInRequestUpdateRequestBody); - } - - /** - * The UUID of the Wire In Request - */ - @JsonIgnore - public String wireInRequestUuid() { - return wireInRequestUuid; + this(Optional.empty(), wireInRequestUuid, wireInRequestUpdateRequestBody); } /** @@ -73,6 +65,14 @@ public Optional xGusto return (Optional) xGustoAPIVersion; } + /** + * The UUID of the Wire In Request + */ + @JsonIgnore + public String wireInRequestUuid() { + return wireInRequestUuid; + } + @JsonIgnore public WireInRequestUpdateRequestBody wireInRequestUpdateRequestBody() { return wireInRequestUpdateRequestBody; @@ -83,15 +83,6 @@ public static Builder builder() { } - /** - * The UUID of the Wire In Request - */ - public PutWireInRequestsWireInRequestUuidRequest withWireInRequestUuid(String wireInRequestUuid) { - Utils.checkNotNull(wireInRequestUuid, "wireInRequestUuid"); - this.wireInRequestUuid = wireInRequestUuid; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -115,6 +106,15 @@ public PutWireInRequestsWireInRequestUuidRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String wireInRequestUuid; + private WireInRequestUpdateRequestBody wireInRequestUpdateRequestBody; private Builder() { @@ -164,16 +164,6 @@ private Builder() { } - /** - * The UUID of the Wire In Request - */ - public Builder wireInRequestUuid(String wireInRequestUuid) { - Utils.checkNotNull(wireInRequestUuid, "wireInRequestUuid"); - this.wireInRequestUuid = wireInRequestUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -197,6 +187,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String wireInRequestUuid; private WireInRequestUpdateRequestBody wireInRequestUpdateRequestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -29,12 +29,6 @@ public class PutWireInRequestsWireInRequestUuidRequestBuilder { public PutWireInRequestsWireInRequestUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutWireInRequestsWireInRequestUuidRequestBuilder wireInRequestUuid(String wireInRequestUuid) { - Utils.checkNotNull(wireInRequestUuid, "wireInRequestUuid"); - this.wireInRequestUuid = wireInRequestUuid; - return this; - } public PutWireInRequestsWireInRequestUuidRequestBuilder xGustoAPIVersion(PutWireInRequestsWireInRequestUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -48,6 +42,12 @@ public PutWireInRequestsWireInRequestUuidRequestBuilder xGustoAPIVersion(Optiona return this; } + public PutWireInRequestsWireInRequestUuidRequestBuilder wireInRequestUuid(String wireInRequestUuid) { + Utils.checkNotNull(wireInRequestUuid, "wireInRequestUuid"); + this.wireInRequestUuid = wireInRequestUuid; + return this; + } + public PutWireInRequestsWireInRequestUuidRequestBuilder wireInRequestUpdateRequestBody(WireInRequestUpdateRequestBody wireInRequestUpdateRequestBody) { Utils.checkNotNull(wireInRequestUpdateRequestBody, "wireInRequestUpdateRequestBody"); this.wireInRequestUpdateRequestBody = wireInRequestUpdateRequestBody; @@ -60,8 +60,8 @@ private PutWireInRequestsWireInRequestUuidRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PutWireInRequestsWireInRequestUuidRequest request = new PutWireInRequestsWireInRequestUuidRequest(wireInRequestUuid, - xGustoAPIVersion, + PutWireInRequestsWireInRequestUuidRequest request = new PutWireInRequestsWireInRequestUuidRequest(xGustoAPIVersion, + wireInRequestUuid, wireInRequestUpdateRequestBody); return request; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/QueryParamInclude.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/QueryParamInclude.java index f8408cec4..ed8fe6e11 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/QueryParamInclude.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/QueryParamInclude.java @@ -8,13 +8,15 @@ import java.util.Objects; import java.util.Optional; +/** + * QueryParamInclude + * + *

    Available options: + * - all_benefits: Include all effective dated benefits for each employee instead of only the current + * benefits. + */ public enum QueryParamInclude { - ALL_COMPENSATIONS("all_compensations"), - ALL_HOME_ADDRESSES("all_home_addresses"), - COMPANY_NAME("company_name"), - CURRENT_HOME_ADDRESS("current_home_address"), - CUSTOM_FIELDS("custom_fields"), - PORTAL_INVITATIONS("portal_invitations"); + ALL_BENEFITS("all_benefits"); @JsonValue private final String value; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/SubscriptionTypes.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/SubscriptionTypes.java index d699ab691..357a4147d 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/SubscriptionTypes.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/SubscriptionTypes.java @@ -25,7 +25,8 @@ public enum SubscriptionTypes { PAYROLL_SYNC("PayrollSync"), PAY_SCHEDULE("PaySchedule"), PEOPLE_BATCH("PeopleBatch"), - SIGNATORY("Signatory"); + SIGNATORY("Signatory"), + TIME_OFF_REQUEST("TimeOffRequest"); @JsonValue private final String value; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/Type.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/Type.java index fd43cfb69..cb5805d92 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/Type.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/Type.java @@ -11,12 +11,12 @@ /** * Type * - *

    The payment method type. If type is Check, split_by and splits do not need to be populated. If type - * is Direct Deposit, split_by and splits are required. + *

    The payment method type. If type is Direct Deposit, the contractor is required to have a bank + * account. See [Bank account endpoint](./post-v1-contractors-contractor_uuid-bank_accounts). */ public enum Type { - CHECK("Check"), - DIRECT_DEPOSIT("Direct Deposit"); + DIRECT_DEPOSIT("Direct Deposit"), + CHECK("Check"); @JsonValue private final String value; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/DeleteDepartmentRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/DeleteDepartmentRequestBuilder.java index 23b4c93b7..7b47e4df3 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/DeleteDepartmentRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/DeleteDepartmentRequestBuilder.java @@ -19,23 +19,17 @@ public class DeleteDepartmentRequestBuilder { - private String departmentUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String departmentUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public DeleteDepartmentRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public DeleteDepartmentRequestBuilder departmentUuid(String departmentUuid) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); - this.departmentUuid = departmentUuid; - return this; - } public DeleteDepartmentRequestBuilder xGustoAPIVersion(DeleteDepartmentHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public DeleteDepartmentRequestBuilder xGustoAPIVersion(Optional async = Optional.empty(); private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String companyId; + private String payrollId; + private Optional async = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public DeleteV1CompaniesCompanyIdPayrollsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } + + public DeleteV1CompaniesCompanyIdPayrollsRequestBuilder xGustoAPIVersion(DeleteV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public DeleteV1CompaniesCompanyIdPayrollsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } public DeleteV1CompaniesCompanyIdPayrollsRequestBuilder companyId(String companyId) { Utils.checkNotNull(companyId, "companyId"); @@ -57,18 +69,6 @@ public DeleteV1CompaniesCompanyIdPayrollsRequestBuilder async(Optional this.async = async; return this; } - - public DeleteV1CompaniesCompanyIdPayrollsRequestBuilder xGustoAPIVersion(DeleteV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); - return this; - } - - public DeleteV1CompaniesCompanyIdPayrollsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } private DeleteV1CompaniesCompanyIdPayrollsRequest buildRequest() { @@ -76,10 +76,10 @@ private DeleteV1CompaniesCompanyIdPayrollsRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - DeleteV1CompaniesCompanyIdPayrollsRequest request = new DeleteV1CompaniesCompanyIdPayrollsRequest(companyId, + DeleteV1CompaniesCompanyIdPayrollsRequest request = new DeleteV1CompaniesCompanyIdPayrollsRequest(xGustoAPIVersion, + companyId, payrollId, - async, - xGustoAPIVersion); + async); return request; } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder.java index 1fd41340c..b6a81d43d 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder.java @@ -19,30 +19,18 @@ public class DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder { - private String companyUuid; - private String signatoryUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String companyUuid; + private String signatoryUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder signatoryUuid(String signatoryUuid) { - Utils.checkNotNull(signatoryUuid, "signatoryUuid"); - this.signatoryUuid = signatoryUuid; - return this; - } public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder xGustoAPIVersion(DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -56,15 +44,27 @@ public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder xGusto return this; } + public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder signatoryUuid(String signatoryUuid) { + Utils.checkNotNull(signatoryUuid, "signatoryUuid"); + this.signatoryUuid = signatoryUuid; + return this; + } + private DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest request = new DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest(companyUuid, - signatoryUuid, - xGustoAPIVersion); + DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest request = new DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest(xGustoAPIVersion, + companyUuid, + signatoryUuid); return request; } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder.java index 61038fe8a..fee9bdaa0 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder.java @@ -19,23 +19,17 @@ public class DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder { - private String contractorPaymentGroupUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String contractorPaymentGroupUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder contractorPaymentGroupUuid(String contractorPaymentGroupUuid) { - Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); - this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; - return this; - } public DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder xGustoAPIVersion(DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder xGu return this; } + public DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder contractorPaymentGroupUuid(String contractorPaymentGroupUuid) { + Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); + this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; + return this; + } + private DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest request = new DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest(contractorPaymentGroupUuid, - xGustoAPIVersion); + DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest request = new DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest(xGustoAPIVersion, + contractorPaymentGroupUuid); return request; } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder.java new file mode 100644 index 000000000..078d7c2dd --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder.java @@ -0,0 +1,79 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations.async; + +import static com.gusto.embedded_api.operations.Operations.AsyncRequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api.SDKConfiguration; +import com.gusto.embedded_api.models.operations.DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest; +import com.gusto.embedded_api.operations.DeleteV1ContractorsContractorUuidMemberPortalInvitations; +import com.gusto.embedded_api.utils.Headers; +import com.gusto.embedded_api.utils.LazySingletonValue; +import com.gusto.embedded_api.utils.Utils; +import java.lang.String; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; + +public class DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder { + + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2025-06-15\"", + new TypeReference>() {}); + private String contractorUuid; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder xGustoAPIVersion(DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder contractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + + + private DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest request = new DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest(xGustoAPIVersion, + contractorUuid); + + return request; + } + + public CompletableFuture call() { + + AsyncRequestOperation operation + = new DeleteV1ContractorsContractorUuidMemberPortalInvitations.Async(sdkConfiguration, _headers); + DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest request = buildRequest(); + + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2025-06-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse.java new file mode 100644 index 000000000..222c02c69 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse.java @@ -0,0 +1,181 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations.async; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api.utils.AsyncResponse; +import com.gusto.embedded_api.utils.Blob; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.net.http.HttpResponse; + + +public class DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse implements AsyncResponse { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + @JsonCreator + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse other = (DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse); + } + + @Override + public String toString() { + return Utils.toString(DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse build() { + + return new DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse( + contentType, statusCode, rawResponse); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/DeleteV1ContractorsContractorUuidRehireRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/DeleteV1ContractorsContractorUuidRehireRequestBuilder.java index 2234853c9..b46fa9dc6 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/DeleteV1ContractorsContractorUuidRehireRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/DeleteV1ContractorsContractorUuidRehireRequestBuilder.java @@ -19,23 +19,17 @@ public class DeleteV1ContractorsContractorUuidRehireRequestBuilder { - private String contractorUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String contractorUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public DeleteV1ContractorsContractorUuidRehireRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public DeleteV1ContractorsContractorUuidRehireRequestBuilder contractorUuid(String contractorUuid) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); - this.contractorUuid = contractorUuid; - return this; - } public DeleteV1ContractorsContractorUuidRehireRequestBuilder xGustoAPIVersion(DeleteV1ContractorsContractorUuidRehireHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public DeleteV1ContractorsContractorUuidRehireRequestBuilder xGustoAPIVersion(Op return this; } + public DeleteV1ContractorsContractorUuidRehireRequestBuilder contractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + private DeleteV1ContractorsContractorUuidRehireRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - DeleteV1ContractorsContractorUuidRehireRequest request = new DeleteV1ContractorsContractorUuidRehireRequest(contractorUuid, - xGustoAPIVersion); + DeleteV1ContractorsContractorUuidRehireRequest request = new DeleteV1ContractorsContractorUuidRehireRequest(xGustoAPIVersion, + contractorUuid); return request; } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/DeleteV1ContractorsContractorUuidTerminationRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/DeleteV1ContractorsContractorUuidTerminationRequestBuilder.java index 73d5beddc..1b345ef9f 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/DeleteV1ContractorsContractorUuidTerminationRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/DeleteV1ContractorsContractorUuidTerminationRequestBuilder.java @@ -19,23 +19,17 @@ public class DeleteV1ContractorsContractorUuidTerminationRequestBuilder { - private String contractorUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String contractorUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public DeleteV1ContractorsContractorUuidTerminationRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public DeleteV1ContractorsContractorUuidTerminationRequestBuilder contractorUuid(String contractorUuid) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); - this.contractorUuid = contractorUuid; - return this; - } public DeleteV1ContractorsContractorUuidTerminationRequestBuilder xGustoAPIVersion(DeleteV1ContractorsContractorUuidTerminationHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public DeleteV1ContractorsContractorUuidTerminationRequestBuilder xGustoAPIVersi return this; } + public DeleteV1ContractorsContractorUuidTerminationRequestBuilder contractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + private DeleteV1ContractorsContractorUuidTerminationRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - DeleteV1ContractorsContractorUuidTerminationRequest request = new DeleteV1ContractorsContractorUuidTerminationRequest(contractorUuid, - xGustoAPIVersion); + DeleteV1ContractorsContractorUuidTerminationRequest request = new DeleteV1ContractorsContractorUuidTerminationRequest(xGustoAPIVersion, + contractorUuid); return request; } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java new file mode 100644 index 000000000..651e537e6 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java @@ -0,0 +1,79 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations.async; + +import static com.gusto.embedded_api.operations.Operations.AsyncRequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api.SDKConfiguration; +import com.gusto.embedded_api.models.operations.DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest; +import com.gusto.embedded_api.operations.DeleteV1EmployeesEmployeeIdMemberPortalInvitations; +import com.gusto.embedded_api.utils.Headers; +import com.gusto.embedded_api.utils.LazySingletonValue; +import com.gusto.embedded_api.utils.Utils; +import java.lang.String; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; + +public class DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder { + + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2025-06-15\"", + new TypeReference>() {}); + private String employeeId; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder xGustoAPIVersion(DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder employeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + + + private DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest request = new DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest(xGustoAPIVersion, + employeeId); + + return request; + } + + public CompletableFuture call() { + + AsyncRequestOperation operation + = new DeleteV1EmployeesEmployeeIdMemberPortalInvitations.Async(sdkConfiguration, _headers); + DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest request = buildRequest(); + + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2025-06-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java new file mode 100644 index 000000000..4687a588d --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java @@ -0,0 +1,181 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations.async; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api.utils.AsyncResponse; +import com.gusto.embedded_api.utils.Blob; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.net.http.HttpResponse; + + +public class DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse implements AsyncResponse { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + @JsonCreator + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse other = (DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse); + } + + @Override + public String toString() { + return Utils.toString(DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse build() { + + return new DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse( + contentType, statusCode, rawResponse); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/DeleteV1JobsJobIdRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/DeleteV1JobsJobIdRequestBuilder.java index f922c7847..e8960b19e 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/DeleteV1JobsJobIdRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/DeleteV1JobsJobIdRequestBuilder.java @@ -19,23 +19,17 @@ public class DeleteV1JobsJobIdRequestBuilder { - private String jobId; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String jobId; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public DeleteV1JobsJobIdRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public DeleteV1JobsJobIdRequestBuilder jobId(String jobId) { - Utils.checkNotNull(jobId, "jobId"); - this.jobId = jobId; - return this; - } public DeleteV1JobsJobIdRequestBuilder xGustoAPIVersion(DeleteV1JobsJobIdHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public DeleteV1JobsJobIdRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String webhookSubscriptionUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -38,12 +38,6 @@ public DeleteV1WebhookSubscriptionUuidRequestBuilder security(DeleteV1WebhookSub this.security = security; return this; } - - public DeleteV1WebhookSubscriptionUuidRequestBuilder webhookSubscriptionUuid(String webhookSubscriptionUuid) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; - return this; - } public DeleteV1WebhookSubscriptionUuidRequestBuilder xGustoAPIVersion(DeleteV1WebhookSubscriptionUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -57,14 +51,20 @@ public DeleteV1WebhookSubscriptionUuidRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String workAddressUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public DeleteV1WorkAddressesWorkAddressUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public DeleteV1WorkAddressesWorkAddressUuidRequestBuilder workAddressUuid(String workAddressUuid) { - Utils.checkNotNull(workAddressUuid, "workAddressUuid"); - this.workAddressUuid = workAddressUuid; - return this; - } public DeleteV1WorkAddressesWorkAddressUuidRequestBuilder xGustoAPIVersion(DeleteV1WorkAddressesWorkAddressUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public DeleteV1WorkAddressesWorkAddressUuidRequestBuilder xGustoAPIVersion(Optio return this; } + public DeleteV1WorkAddressesWorkAddressUuidRequestBuilder workAddressUuid(String workAddressUuid) { + Utils.checkNotNull(workAddressUuid, "workAddressUuid"); + this.workAddressUuid = workAddressUuid; + return this; + } + private DeleteV1WorkAddressesWorkAddressUuidRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - DeleteV1WorkAddressesWorkAddressUuidRequest request = new DeleteV1WorkAddressesWorkAddressUuidRequest(workAddressUuid, - xGustoAPIVersion); + DeleteV1WorkAddressesWorkAddressUuidRequest request = new DeleteV1WorkAddressesWorkAddressUuidRequest(xGustoAPIVersion, + workAddressUuid); return request; } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder.java index 3607bf350..2e5bb8133 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder.java @@ -20,11 +20,11 @@ public class GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder { - private String companyUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String companyUuid; private Optional page = Optional.empty(); private Optional per = Optional.empty(); private final SDKConfiguration sdkConfiguration; @@ -33,12 +33,6 @@ public class GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder { public GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder xGustoAPIVersion(GetCompaniesCompanyUuidWireInRequestUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder xGustoAPIVersion(O this.xGustoAPIVersion = xGustoAPIVersion; return this; } + + public GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } public GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder page(long page) { Utils.checkNotNull(page, "page"); @@ -82,8 +82,8 @@ private GetCompaniesCompanyUuidWireInRequestUuidRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetCompaniesCompanyUuidWireInRequestUuidRequest request = new GetCompaniesCompanyUuidWireInRequestUuidRequest(companyUuid, - xGustoAPIVersion, + GetCompaniesCompanyUuidWireInRequestUuidRequest request = new GetCompaniesCompanyUuidWireInRequestUuidRequest(xGustoAPIVersion, + companyUuid, page, per); diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetCompaniesDepartmentsRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetCompaniesDepartmentsRequestBuilder.java index 510a2525b..9f6e31108 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetCompaniesDepartmentsRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetCompaniesDepartmentsRequestBuilder.java @@ -19,23 +19,17 @@ public class GetCompaniesDepartmentsRequestBuilder { - private String companyUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String companyUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetCompaniesDepartmentsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetCompaniesDepartmentsRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public GetCompaniesDepartmentsRequestBuilder xGustoAPIVersion(GetCompaniesDepartmentsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public GetCompaniesDepartmentsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String departmentUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetDepartmentRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetDepartmentRequestBuilder departmentUuid(String departmentUuid) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); - this.departmentUuid = departmentUuid; - return this; - } public GetDepartmentRequestBuilder xGustoAPIVersion(GetDepartmentHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public GetDepartmentRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String notificationUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetNotificationsNotificationUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetNotificationsNotificationUuidRequestBuilder notificationUuid(String notificationUuid) { - Utils.checkNotNull(notificationUuid, "notificationUuid"); - this.notificationUuid = notificationUuid; - return this; - } public GetNotificationsNotificationUuidRequestBuilder xGustoAPIVersion(GetNotificationsNotificationUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public GetNotificationsNotificationUuidRequestBuilder xGustoAPIVersion(Optional< return this; } + public GetNotificationsNotificationUuidRequestBuilder notificationUuid(String notificationUuid) { + Utils.checkNotNull(notificationUuid, "notificationUuid"); + this.notificationUuid = notificationUuid; + return this; + } + private GetNotificationsNotificationUuidRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetNotificationsNotificationUuidRequest request = new GetNotificationsNotificationUuidRequest(notificationUuid, - xGustoAPIVersion); + GetNotificationsNotificationUuidRequest request = new GetNotificationsNotificationUuidRequest(xGustoAPIVersion, + notificationUuid); return request; } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetReverseWireTransactionsRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetReverseWireTransactionsRequestBuilder.java new file mode 100644 index 000000000..e38ee2c71 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetReverseWireTransactionsRequestBuilder.java @@ -0,0 +1,39 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations.async; + +import static com.gusto.embedded_api.operations.Operations.AsyncRequestOperation; + +import com.gusto.embedded_api.SDKConfiguration; +import com.gusto.embedded_api.models.operations.GetReverseWireTransactionsRequest; +import com.gusto.embedded_api.operations.GetReverseWireTransactions; +import com.gusto.embedded_api.utils.Headers; +import com.gusto.embedded_api.utils.Utils; +import java.util.concurrent.CompletableFuture; + +public class GetReverseWireTransactionsRequestBuilder { + + private GetReverseWireTransactionsRequest request; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public GetReverseWireTransactionsRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public GetReverseWireTransactionsRequestBuilder request(GetReverseWireTransactionsRequest request) { + Utils.checkNotNull(request, "request"); + this.request = request; + return this; + } + + public CompletableFuture call() { + + AsyncRequestOperation operation + = new GetReverseWireTransactions.Async(sdkConfiguration, _headers); + + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetReverseWireTransactionsResponse.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetReverseWireTransactionsResponse.java new file mode 100644 index 000000000..7ed4dd756 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetReverseWireTransactionsResponse.java @@ -0,0 +1,254 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations.async; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api.models.components.ReverseWireTransaction; +import com.gusto.embedded_api.utils.AsyncResponse; +import com.gusto.embedded_api.utils.Blob; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.List; +import java.util.Optional; + + +public class GetReverseWireTransactionsResponse implements AsyncResponse { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * Example response + */ + private Optional> reverseWireTransactionList; + + @JsonCreator + public GetReverseWireTransactionsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional> reverseWireTransactionList) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(reverseWireTransactionList, "reverseWireTransactionList"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.reverseWireTransactionList = reverseWireTransactionList; + } + + public GetReverseWireTransactionsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * Example response + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> reverseWireTransactionList() { + return (Optional>) reverseWireTransactionList; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public GetReverseWireTransactionsResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public GetReverseWireTransactionsResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public GetReverseWireTransactionsResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * Example response + */ + public GetReverseWireTransactionsResponse withReverseWireTransactionList(List reverseWireTransactionList) { + Utils.checkNotNull(reverseWireTransactionList, "reverseWireTransactionList"); + this.reverseWireTransactionList = Optional.ofNullable(reverseWireTransactionList); + return this; + } + + + /** + * Example response + */ + public GetReverseWireTransactionsResponse withReverseWireTransactionList(Optional> reverseWireTransactionList) { + Utils.checkNotNull(reverseWireTransactionList, "reverseWireTransactionList"); + this.reverseWireTransactionList = reverseWireTransactionList; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetReverseWireTransactionsResponse other = (GetReverseWireTransactionsResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.reverseWireTransactionList, other.reverseWireTransactionList); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + reverseWireTransactionList); + } + + @Override + public String toString() { + return Utils.toString(GetReverseWireTransactionsResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "reverseWireTransactionList", reverseWireTransactionList); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional> reverseWireTransactionList = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * Example response + */ + public Builder reverseWireTransactionList(List reverseWireTransactionList) { + Utils.checkNotNull(reverseWireTransactionList, "reverseWireTransactionList"); + this.reverseWireTransactionList = Optional.ofNullable(reverseWireTransactionList); + return this; + } + + /** + * Example response + */ + public Builder reverseWireTransactionList(Optional> reverseWireTransactionList) { + Utils.checkNotNull(reverseWireTransactionList, "reverseWireTransactionList"); + this.reverseWireTransactionList = reverseWireTransactionList; + return this; + } + + public GetReverseWireTransactionsResponse build() { + + return new GetReverseWireTransactionsResponse( + contentType, statusCode, rawResponse, + reverseWireTransactionList); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetTaxPaymentRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetTaxPaymentRequestBuilder.java new file mode 100644 index 000000000..2dd216307 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetTaxPaymentRequestBuilder.java @@ -0,0 +1,87 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations.async; + +import static com.gusto.embedded_api.operations.Operations.AsyncRequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api.SDKConfiguration; +import com.gusto.embedded_api.models.operations.GetTaxPaymentHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetTaxPaymentRequest; +import com.gusto.embedded_api.operations.GetTaxPayment; +import com.gusto.embedded_api.utils.Headers; +import com.gusto.embedded_api.utils.LazySingletonValue; +import com.gusto.embedded_api.utils.Utils; +import java.lang.String; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; + +public class GetTaxPaymentRequestBuilder { + + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2025-06-15\"", + new TypeReference>() {}); + private String companyUuid; + private String uuid; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public GetTaxPaymentRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public GetTaxPaymentRequestBuilder xGustoAPIVersion(GetTaxPaymentHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetTaxPaymentRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public GetTaxPaymentRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + public GetTaxPaymentRequestBuilder uuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + + private GetTaxPaymentRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + GetTaxPaymentRequest request = new GetTaxPaymentRequest(xGustoAPIVersion, + companyUuid, + uuid); + + return request; + } + + public CompletableFuture call() { + + AsyncRequestOperation operation + = new GetTaxPayment.Async(sdkConfiguration, _headers); + GetTaxPaymentRequest request = buildRequest(); + + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2025-06-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetTaxPaymentResponse.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetTaxPaymentResponse.java new file mode 100644 index 000000000..fa150168b --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetTaxPaymentResponse.java @@ -0,0 +1,253 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations.async; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api.models.components.TaxPayment; +import com.gusto.embedded_api.utils.AsyncResponse; +import com.gusto.embedded_api.utils.Blob; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.Optional; + + +public class GetTaxPaymentResponse implements AsyncResponse { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * Success + */ + private Optional taxPayment; + + @JsonCreator + public GetTaxPaymentResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional taxPayment) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(taxPayment, "taxPayment"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.taxPayment = taxPayment; + } + + public GetTaxPaymentResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * Success + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional taxPayment() { + return (Optional) taxPayment; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public GetTaxPaymentResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public GetTaxPaymentResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public GetTaxPaymentResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * Success + */ + public GetTaxPaymentResponse withTaxPayment(TaxPayment taxPayment) { + Utils.checkNotNull(taxPayment, "taxPayment"); + this.taxPayment = Optional.ofNullable(taxPayment); + return this; + } + + + /** + * Success + */ + public GetTaxPaymentResponse withTaxPayment(Optional taxPayment) { + Utils.checkNotNull(taxPayment, "taxPayment"); + this.taxPayment = taxPayment; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetTaxPaymentResponse other = (GetTaxPaymentResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.taxPayment, other.taxPayment); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + taxPayment); + } + + @Override + public String toString() { + return Utils.toString(GetTaxPaymentResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "taxPayment", taxPayment); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional taxPayment = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * Success + */ + public Builder taxPayment(TaxPayment taxPayment) { + Utils.checkNotNull(taxPayment, "taxPayment"); + this.taxPayment = Optional.ofNullable(taxPayment); + return this; + } + + /** + * Success + */ + public Builder taxPayment(Optional taxPayment) { + Utils.checkNotNull(taxPayment, "taxPayment"); + this.taxPayment = taxPayment; + return this; + } + + public GetTaxPaymentResponse build() { + + return new GetTaxPaymentResponse( + contentType, statusCode, rawResponse, + taxPayment); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetTaxPaymentsRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetTaxPaymentsRequestBuilder.java new file mode 100644 index 000000000..e24653b86 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetTaxPaymentsRequestBuilder.java @@ -0,0 +1,39 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations.async; + +import static com.gusto.embedded_api.operations.Operations.AsyncRequestOperation; + +import com.gusto.embedded_api.SDKConfiguration; +import com.gusto.embedded_api.models.operations.GetTaxPaymentsRequest; +import com.gusto.embedded_api.operations.GetTaxPayments; +import com.gusto.embedded_api.utils.Headers; +import com.gusto.embedded_api.utils.Utils; +import java.util.concurrent.CompletableFuture; + +public class GetTaxPaymentsRequestBuilder { + + private GetTaxPaymentsRequest request; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public GetTaxPaymentsRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public GetTaxPaymentsRequestBuilder request(GetTaxPaymentsRequest request) { + Utils.checkNotNull(request, "request"); + this.request = request; + return this; + } + + public CompletableFuture call() { + + AsyncRequestOperation operation + = new GetTaxPayments.Async(sdkConfiguration, _headers); + + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetTaxPaymentsResponse.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetTaxPaymentsResponse.java new file mode 100644 index 000000000..aff18d816 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetTaxPaymentsResponse.java @@ -0,0 +1,254 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations.async; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api.models.components.TaxPayment; +import com.gusto.embedded_api.utils.AsyncResponse; +import com.gusto.embedded_api.utils.Blob; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.List; +import java.util.Optional; + + +public class GetTaxPaymentsResponse implements AsyncResponse { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * Success + */ + private Optional> taxPaymentList; + + @JsonCreator + public GetTaxPaymentsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional> taxPaymentList) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(taxPaymentList, "taxPaymentList"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.taxPaymentList = taxPaymentList; + } + + public GetTaxPaymentsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * Success + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> taxPaymentList() { + return (Optional>) taxPaymentList; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public GetTaxPaymentsResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public GetTaxPaymentsResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public GetTaxPaymentsResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * Success + */ + public GetTaxPaymentsResponse withTaxPaymentList(List taxPaymentList) { + Utils.checkNotNull(taxPaymentList, "taxPaymentList"); + this.taxPaymentList = Optional.ofNullable(taxPaymentList); + return this; + } + + + /** + * Success + */ + public GetTaxPaymentsResponse withTaxPaymentList(Optional> taxPaymentList) { + Utils.checkNotNull(taxPaymentList, "taxPaymentList"); + this.taxPaymentList = taxPaymentList; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetTaxPaymentsResponse other = (GetTaxPaymentsResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.taxPaymentList, other.taxPaymentList); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + taxPaymentList); + } + + @Override + public String toString() { + return Utils.toString(GetTaxPaymentsResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "taxPaymentList", taxPaymentList); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional> taxPaymentList = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * Success + */ + public Builder taxPaymentList(List taxPaymentList) { + Utils.checkNotNull(taxPaymentList, "taxPaymentList"); + this.taxPaymentList = Optional.ofNullable(taxPaymentList); + return this; + } + + /** + * Success + */ + public Builder taxPaymentList(Optional> taxPaymentList) { + Utils.checkNotNull(taxPaymentList, "taxPaymentList"); + this.taxPaymentList = taxPaymentList; + return this; + } + + public GetTaxPaymentsResponse build() { + + return new GetTaxPaymentsResponse( + contentType, statusCode, rawResponse, + taxPaymentList); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1BenefitsResponse.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1BenefitsResponse.java index d693a123d..83438c108 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1BenefitsResponse.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1BenefitsResponse.java @@ -37,22 +37,22 @@ public class GetV1BenefitsResponse implements AsyncResponse { /** * Successful */ - private Optional> supportedBenefits; + private Optional> supportedBenefitList; @JsonCreator public GetV1BenefitsResponse( String contentType, int statusCode, HttpResponse rawResponse, - Optional> supportedBenefits) { + Optional> supportedBenefitList) { Utils.checkNotNull(contentType, "contentType"); Utils.checkNotNull(statusCode, "statusCode"); Utils.checkNotNull(rawResponse, "rawResponse"); - Utils.checkNotNull(supportedBenefits, "supportedBenefits"); + Utils.checkNotNull(supportedBenefitList, "supportedBenefitList"); this.contentType = contentType; this.statusCode = statusCode; this.rawResponse = rawResponse; - this.supportedBenefits = supportedBenefits; + this.supportedBenefitList = supportedBenefitList; } public GetV1BenefitsResponse( @@ -92,8 +92,8 @@ public HttpResponse rawResponse() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional> supportedBenefits() { - return (Optional>) supportedBenefits; + public Optional> supportedBenefitList() { + return (Optional>) supportedBenefitList; } public static Builder builder() { @@ -131,9 +131,9 @@ public GetV1BenefitsResponse withRawResponse(HttpResponse rawResponse) { /** * Successful */ - public GetV1BenefitsResponse withSupportedBenefits(List supportedBenefits) { - Utils.checkNotNull(supportedBenefits, "supportedBenefits"); - this.supportedBenefits = Optional.ofNullable(supportedBenefits); + public GetV1BenefitsResponse withSupportedBenefitList(List supportedBenefitList) { + Utils.checkNotNull(supportedBenefitList, "supportedBenefitList"); + this.supportedBenefitList = Optional.ofNullable(supportedBenefitList); return this; } @@ -141,9 +141,9 @@ public GetV1BenefitsResponse withSupportedBenefits(List suppor /** * Successful */ - public GetV1BenefitsResponse withSupportedBenefits(Optional> supportedBenefits) { - Utils.checkNotNull(supportedBenefits, "supportedBenefits"); - this.supportedBenefits = supportedBenefits; + public GetV1BenefitsResponse withSupportedBenefitList(Optional> supportedBenefitList) { + Utils.checkNotNull(supportedBenefitList, "supportedBenefitList"); + this.supportedBenefitList = supportedBenefitList; return this; } @@ -160,14 +160,14 @@ public boolean equals(java.lang.Object o) { Utils.enhancedDeepEquals(this.contentType, other.contentType) && Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && - Utils.enhancedDeepEquals(this.supportedBenefits, other.supportedBenefits); + Utils.enhancedDeepEquals(this.supportedBenefitList, other.supportedBenefitList); } @Override public int hashCode() { return Utils.enhancedHash( contentType, statusCode, rawResponse, - supportedBenefits); + supportedBenefitList); } @Override @@ -176,7 +176,7 @@ public String toString() { "contentType", contentType, "statusCode", statusCode, "rawResponse", rawResponse, - "supportedBenefits", supportedBenefits); + "supportedBenefitList", supportedBenefitList); } @SuppressWarnings("UnusedReturnValue") @@ -188,7 +188,7 @@ public final static class Builder { private HttpResponse rawResponse; - private Optional> supportedBenefits = Optional.empty(); + private Optional> supportedBenefitList = Optional.empty(); private Builder() { // force use of static builder() method @@ -228,18 +228,18 @@ public Builder rawResponse(HttpResponse rawResponse) { /** * Successful */ - public Builder supportedBenefits(List supportedBenefits) { - Utils.checkNotNull(supportedBenefits, "supportedBenefits"); - this.supportedBenefits = Optional.ofNullable(supportedBenefits); + public Builder supportedBenefitList(List supportedBenefitList) { + Utils.checkNotNull(supportedBenefitList, "supportedBenefitList"); + this.supportedBenefitList = Optional.ofNullable(supportedBenefitList); return this; } /** * Successful */ - public Builder supportedBenefits(Optional> supportedBenefits) { - Utils.checkNotNull(supportedBenefits, "supportedBenefits"); - this.supportedBenefits = supportedBenefits; + public Builder supportedBenefitList(Optional> supportedBenefitList) { + Utils.checkNotNull(supportedBenefitList, "supportedBenefitList"); + this.supportedBenefitList = supportedBenefitList; return this; } @@ -247,7 +247,7 @@ public GetV1BenefitsResponse build() { return new GetV1BenefitsResponse( contentType, statusCode, rawResponse, - supportedBenefits); + supportedBenefitList); } } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1BulkReportsRequestUuidRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1BulkReportsRequestUuidRequestBuilder.java new file mode 100644 index 000000000..6aa5e0cb5 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1BulkReportsRequestUuidRequestBuilder.java @@ -0,0 +1,87 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations.async; + +import static com.gusto.embedded_api.operations.Operations.AsyncRequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api.SDKConfiguration; +import com.gusto.embedded_api.models.operations.GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetV1BulkReportsRequestUuidRequest; +import com.gusto.embedded_api.models.operations.GetV1BulkReportsRequestUuidSecurity; +import com.gusto.embedded_api.operations.GetV1BulkReportsRequestUuid; +import com.gusto.embedded_api.utils.Headers; +import com.gusto.embedded_api.utils.LazySingletonValue; +import com.gusto.embedded_api.utils.Utils; +import java.lang.String; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; + +public class GetV1BulkReportsRequestUuidRequestBuilder { + + private GetV1BulkReportsRequestUuidSecurity security; + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2025-06-15\"", + new TypeReference>() {}); + private String requestUuid; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public GetV1BulkReportsRequestUuidRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public GetV1BulkReportsRequestUuidRequestBuilder security(GetV1BulkReportsRequestUuidSecurity security) { + Utils.checkNotNull(security, "security"); + this.security = security; + return this; + } + + public GetV1BulkReportsRequestUuidRequestBuilder xGustoAPIVersion(GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetV1BulkReportsRequestUuidRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public GetV1BulkReportsRequestUuidRequestBuilder requestUuid(String requestUuid) { + Utils.checkNotNull(requestUuid, "requestUuid"); + this.requestUuid = requestUuid; + return this; + } + + + private GetV1BulkReportsRequestUuidRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + GetV1BulkReportsRequestUuidRequest request = new GetV1BulkReportsRequestUuidRequest(xGustoAPIVersion, + requestUuid); + + return request; + } + + public CompletableFuture call() { + + AsyncRequestOperation operation + = new GetV1BulkReportsRequestUuid.Async(sdkConfiguration, security, _headers); + GetV1BulkReportsRequestUuidRequest request = buildRequest(); + + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2025-06-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1BulkReportsRequestUuidResponse.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1BulkReportsRequestUuidResponse.java new file mode 100644 index 000000000..320e6fe03 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1BulkReportsRequestUuidResponse.java @@ -0,0 +1,253 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations.async; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api.models.components.BulkReport; +import com.gusto.embedded_api.utils.AsyncResponse; +import com.gusto.embedded_api.utils.Blob; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.Optional; + + +public class GetV1BulkReportsRequestUuidResponse implements AsyncResponse { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * OK + */ + private Optional bulkReport; + + @JsonCreator + public GetV1BulkReportsRequestUuidResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional bulkReport) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(bulkReport, "bulkReport"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.bulkReport = bulkReport; + } + + public GetV1BulkReportsRequestUuidResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * OK + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional bulkReport() { + return (Optional) bulkReport; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public GetV1BulkReportsRequestUuidResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public GetV1BulkReportsRequestUuidResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public GetV1BulkReportsRequestUuidResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * OK + */ + public GetV1BulkReportsRequestUuidResponse withBulkReport(BulkReport bulkReport) { + Utils.checkNotNull(bulkReport, "bulkReport"); + this.bulkReport = Optional.ofNullable(bulkReport); + return this; + } + + + /** + * OK + */ + public GetV1BulkReportsRequestUuidResponse withBulkReport(Optional bulkReport) { + Utils.checkNotNull(bulkReport, "bulkReport"); + this.bulkReport = bulkReport; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetV1BulkReportsRequestUuidResponse other = (GetV1BulkReportsRequestUuidResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.bulkReport, other.bulkReport); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + bulkReport); + } + + @Override + public String toString() { + return Utils.toString(GetV1BulkReportsRequestUuidResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "bulkReport", bulkReport); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional bulkReport = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * OK + */ + public Builder bulkReport(BulkReport bulkReport) { + Utils.checkNotNull(bulkReport, "bulkReport"); + this.bulkReport = Optional.ofNullable(bulkReport); + return this; + } + + /** + * OK + */ + public Builder bulkReport(Optional bulkReport) { + Utils.checkNotNull(bulkReport, "bulkReport"); + this.bulkReport = bulkReport; + return this; + } + + public GetV1BulkReportsRequestUuidResponse build() { + + return new GetV1BulkReportsRequestUuidResponse( + contentType, statusCode, rawResponse, + bulkReport); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1CompaniesCompanyIdAdminsRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1CompaniesCompanyIdAdminsRequestBuilder.java index a01010320..b3809a10d 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1CompaniesCompanyIdAdminsRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1CompaniesCompanyIdAdminsRequestBuilder.java @@ -7,8 +7,8 @@ import com.fasterxml.jackson.core.type.TypeReference; import com.gusto.embedded_api.SDKConfiguration; -import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion; import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdAdminsRequest; +import com.gusto.embedded_api.models.operations.HeaderXGustoAPIVersion; import com.gusto.embedded_api.operations.GetV1CompaniesCompanyIdAdmins; import com.gusto.embedded_api.utils.Headers; import com.gusto.embedded_api.utils.LazySingletonValue; @@ -20,10 +20,10 @@ public class GetV1CompaniesCompanyIdAdminsRequestBuilder { - private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", - new TypeReference>() {}); + new TypeReference>() {}); private String companyId; private Optional page = Optional.empty(); private Optional per = Optional.empty(); @@ -34,13 +34,13 @@ public GetV1CompaniesCompanyIdAdminsRequestBuilder(SDKConfiguration sdkConfigura this.sdkConfiguration = sdkConfiguration; } - public GetV1CompaniesCompanyIdAdminsRequestBuilder xGustoAPIVersion(GetV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion xGustoAPIVersion) { + public GetV1CompaniesCompanyIdAdminsRequestBuilder xGustoAPIVersion(HeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); return this; } - public GetV1CompaniesCompanyIdAdminsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + public GetV1CompaniesCompanyIdAdminsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); this.xGustoAPIVersion = xGustoAPIVersion; return this; @@ -100,9 +100,9 @@ public CompletableFuture call() { .thenCompose(operation::handleResponse); } - private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = new LazySingletonValue<>( "xGustoAPIVersion", "\"2025-06-15\"", - new TypeReference>() {}); + new TypeReference>() {}); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder.java index a3edc0953..14a0e3923 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder.java @@ -19,19 +19,31 @@ public class GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder { - private String companyId; - private Optional contractorUuid = Optional.empty(); - private Optional contractorPaymentGroupUuid = Optional.empty(); private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String companyId; + private Optional contractorUuid = Optional.empty(); + private Optional contractorPaymentGroupUuid = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } + + public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder xGustoAPIVersion(GetV1CompaniesCompanyIdContractorsPaymentDetailsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder companyId(String companyId) { Utils.checkNotNull(companyId, "companyId"); @@ -62,18 +74,6 @@ public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder contractor this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; return this; } - - public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder xGustoAPIVersion(GetV1CompaniesCompanyIdContractorsPaymentDetailsHeaderXGustoAPIVersion xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); - return this; - } - - public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } private GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest buildRequest() { @@ -81,10 +81,10 @@ private GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest request = new GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest(companyId, + GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest request = new GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest(xGustoAPIVersion, + companyId, contractorUuid, - contractorPaymentGroupUuid, - xGustoAPIVersion); + contractorPaymentGroupUuid); return request; } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder.java index eb92e1e78..ad7a97fa4 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder.java @@ -19,23 +19,17 @@ public class GetV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder { - private String companyId; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String companyId; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } public GetV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder xGustoAPIVersion(GetV1CompaniesCompanyIdFederalTaxDetailsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public GetV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder xGustoAPIVersion(O return this; } + public GetV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder companyId(String companyId) { + Utils.checkNotNull(companyId, "companyId"); + this.companyId = companyId; + return this; + } + private GetV1CompaniesCompanyIdFederalTaxDetailsRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1CompaniesCompanyIdFederalTaxDetailsRequest request = new GetV1CompaniesCompanyIdFederalTaxDetailsRequest(companyId, - xGustoAPIVersion); + GetV1CompaniesCompanyIdFederalTaxDetailsRequest request = new GetV1CompaniesCompanyIdFederalTaxDetailsRequest(xGustoAPIVersion, + companyId); return request; } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder.java index 4740d9c7c..7e2ba8c3f 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder.java @@ -7,7 +7,7 @@ import com.fasterxml.jackson.core.type.TypeReference; import com.gusto.embedded_api.SDKConfiguration; -import com.gusto.embedded_api.models.components.VersionHeader; +import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion; import com.gusto.embedded_api.models.operations.GetV1CompaniesCompanyIdPayrollReversalsRequest; import com.gusto.embedded_api.operations.GetV1CompaniesCompanyIdPayrollReversals; import com.gusto.embedded_api.utils.Headers; @@ -20,19 +20,31 @@ public class GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder { + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2025-06-15\"", + new TypeReference>() {}); private String companyId; private Optional page = Optional.empty(); private Optional per = Optional.empty(); - private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( - "xGustoAPIVersion", - "\"2025-06-15\"", - new TypeReference>() {}); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } + + public GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder xGustoAPIVersion(GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } public GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder companyId(String companyId) { Utils.checkNotNull(companyId, "companyId"); @@ -63,18 +75,6 @@ public GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder per(Optional this.per = per; return this; } - - public GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder xGustoAPIVersion(VersionHeader xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); - return this; - } - - public GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } private GetV1CompaniesCompanyIdPayrollReversalsRequest buildRequest() { @@ -82,10 +82,10 @@ private GetV1CompaniesCompanyIdPayrollReversalsRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1CompaniesCompanyIdPayrollReversalsRequest request = new GetV1CompaniesCompanyIdPayrollReversalsRequest(companyId, + GetV1CompaniesCompanyIdPayrollReversalsRequest request = new GetV1CompaniesCompanyIdPayrollReversalsRequest(xGustoAPIVersion, + companyId, page, - per, - xGustoAPIVersion); + per); return request; } @@ -100,9 +100,9 @@ public CompletableFuture call() .thenCompose(operation::handleResponse); } - private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = new LazySingletonValue<>( "xGustoAPIVersion", "\"2025-06-15\"", - new TypeReference>() {}); + new TypeReference>() {}); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder.java index 0399d4b20..39f557844 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder.java @@ -19,30 +19,18 @@ public class GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder { - private String companyId; - private String id; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String companyId; + private String id; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - - public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder id(String id) { - Utils.checkNotNull(id, "id"); - this.id = id; - return this; - } public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder xGustoAPIVersion(GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -56,15 +44,27 @@ public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder xGust return this; } + public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder companyId(String companyId) { + Utils.checkNotNull(companyId, "companyId"); + this.companyId = companyId; + return this; + } + + public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder id(String id) { + Utils.checkNotNull(id, "id"); + this.id = id; + return this; + } + private GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest request = new GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest(companyId, - id, - xGustoAPIVersion); + GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest request = new GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest(xGustoAPIVersion, + companyId, + id); return request; } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1CompaniesCompanyUuidSignatoriesRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1CompaniesCompanyUuidSignatoriesRequestBuilder.java index 65b728104..c1f9c194e 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1CompaniesCompanyUuidSignatoriesRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1CompaniesCompanyUuidSignatoriesRequestBuilder.java @@ -19,23 +19,17 @@ public class GetV1CompaniesCompanyUuidSignatoriesRequestBuilder { - private String companyUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String companyUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1CompaniesCompanyUuidSignatoriesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1CompaniesCompanyUuidSignatoriesRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public GetV1CompaniesCompanyUuidSignatoriesRequestBuilder xGustoAPIVersion(GetV1CompaniesCompanyUuidSignatoriesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public GetV1CompaniesCompanyUuidSignatoriesRequestBuilder xGustoAPIVersion(Optio return this; } + public GetV1CompaniesCompanyUuidSignatoriesRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + private GetV1CompaniesCompanyUuidSignatoriesRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1CompaniesCompanyUuidSignatoriesRequest request = new GetV1CompaniesCompanyUuidSignatoriesRequest(companyUuid, - xGustoAPIVersion); + GetV1CompaniesCompanyUuidSignatoriesRequest request = new GetV1CompaniesCompanyUuidSignatoriesRequest(xGustoAPIVersion, + companyUuid); return request; } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder.java index e8053ac48..e763e92f3 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder.java @@ -19,23 +19,17 @@ public class GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder { - private String companyUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String companyUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder xGustoAPIVersion(GetV1CompaniesCompanyUuidTaxRequirementsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder xGustoAPIVersion(O return this; } + public GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + private GetV1CompaniesCompanyUuidTaxRequirementsRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1CompaniesCompanyUuidTaxRequirementsRequest request = new GetV1CompaniesCompanyUuidTaxRequirementsRequest(companyUuid, - xGustoAPIVersion); + GetV1CompaniesCompanyUuidTaxRequirementsRequest request = new GetV1CompaniesCompanyUuidTaxRequirementsRequest(xGustoAPIVersion, + companyUuid); return request; } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder.java index 05fcc96ff..d9f303c5a 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder.java @@ -20,12 +20,12 @@ public class GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder { - private String companyUuid; - private String state; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String companyUuid; + private String state; private Optional scheduling = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -33,18 +33,6 @@ public class GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder { public GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - public GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder state(String state) { - Utils.checkNotNull(state, "state"); - this.state = state; - return this; - } public GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder xGustoAPIVersion(GetV1CompaniesCompanyUuidTaxRequirementsStateHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -57,6 +45,18 @@ public GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder xGustoAPIVers this.xGustoAPIVersion = xGustoAPIVersion; return this; } + + public GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + public GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder state(String state) { + Utils.checkNotNull(state, "state"); + this.state = state; + return this; + } public GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder scheduling(boolean scheduling) { Utils.checkNotNull(scheduling, "scheduling"); @@ -76,9 +76,9 @@ private GetV1CompaniesCompanyUuidTaxRequirementsStateRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1CompaniesCompanyUuidTaxRequirementsStateRequest request = new GetV1CompaniesCompanyUuidTaxRequirementsStateRequest(companyUuid, + GetV1CompaniesCompanyUuidTaxRequirementsStateRequest request = new GetV1CompaniesCompanyUuidTaxRequirementsStateRequest(xGustoAPIVersion, + companyUuid, state, - xGustoAPIVersion, scheduling); return request; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1CompaniesRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1CompaniesRequestBuilder.java index 5004937dd..23104d5b7 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1CompaniesRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1CompaniesRequestBuilder.java @@ -19,23 +19,17 @@ public class GetV1CompaniesRequestBuilder { - private String companyId; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String companyId; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1CompaniesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1CompaniesRequestBuilder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } public GetV1CompaniesRequestBuilder xGustoAPIVersion(GetV1CompaniesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public GetV1CompaniesRequestBuilder xGustoAPIVersion(Optional>() {}); private String companyBenefitId; private Optional withEmployeeBenefits = Optional.empty(); - private Optional include = Optional.empty(); + private Optional include = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -65,13 +65,13 @@ public GetV1CompanyBenefitsCompanyBenefitIdRequestBuilder withEmployeeBenefits(O return this; } - public GetV1CompanyBenefitsCompanyBenefitIdRequestBuilder include(GetV1CompanyBenefitsCompanyBenefitIdQueryParamInclude include) { + public GetV1CompanyBenefitsCompanyBenefitIdRequestBuilder include(Include include) { Utils.checkNotNull(include, "include"); this.include = Optional.of(include); return this; } - public GetV1CompanyBenefitsCompanyBenefitIdRequestBuilder include(Optional include) { + public GetV1CompanyBenefitsCompanyBenefitIdRequestBuilder include(Optional include) { Utils.checkNotNull(include, "include"); this.include = include; return this; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1CompanyFinishOnboardingRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1CompanyFinishOnboardingRequestBuilder.java index 936771fa9..0924d5ade 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1CompanyFinishOnboardingRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1CompanyFinishOnboardingRequestBuilder.java @@ -19,23 +19,17 @@ public class GetV1CompanyFinishOnboardingRequestBuilder { - private String companyUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String companyUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1CompanyFinishOnboardingRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1CompanyFinishOnboardingRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public GetV1CompanyFinishOnboardingRequestBuilder xGustoAPIVersion(GetV1CompanyFinishOnboardingHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public GetV1CompanyFinishOnboardingRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String companyId; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1CompanyIndustryRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1CompanyIndustryRequestBuilder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } public GetV1CompanyIndustryRequestBuilder xGustoAPIVersion(GetV1CompanyIndustryHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public GetV1CompanyIndustryRequestBuilder xGustoAPIVersion(Optional additionalSteps = Optional.empty(); private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String companyUuid; + private Optional additionalSteps = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1CompanyOnboardingStatusRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } + + public GetV1CompanyOnboardingStatusRequestBuilder xGustoAPIVersion(GetV1CompanyOnboardingStatusHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetV1CompanyOnboardingStatusRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } public GetV1CompanyOnboardingStatusRequestBuilder companyUuid(String companyUuid) { Utils.checkNotNull(companyUuid, "companyUuid"); @@ -49,18 +61,6 @@ public GetV1CompanyOnboardingStatusRequestBuilder additionalSteps(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } private GetV1CompanyOnboardingStatusRequest buildRequest() { @@ -68,9 +68,9 @@ private GetV1CompanyOnboardingStatusRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1CompanyOnboardingStatusRequest request = new GetV1CompanyOnboardingStatusRequest(companyUuid, - additionalSteps, - xGustoAPIVersion); + GetV1CompanyOnboardingStatusRequest request = new GetV1CompanyOnboardingStatusRequest(xGustoAPIVersion, + companyUuid, + additionalSteps); return request; } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder.java index 272d4c4b2..a29f5bf1f 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder.java @@ -19,23 +19,17 @@ public class GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder { - private String contractorPaymentGroupUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String contractorPaymentGroupUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder contractorPaymentGroupUuid(String contractorPaymentGroupUuid) { - Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); - this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; - return this; - } public GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder xGustoAPIVersion(GetV1ContractorPaymentGroupsContractorPaymentGroupIdHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder xGusto return this; } + public GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder contractorPaymentGroupUuid(String contractorPaymentGroupUuid) { + Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); + this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; + return this; + } + private GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest request = new GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest(contractorPaymentGroupUuid, - xGustoAPIVersion); + GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest request = new GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest(xGustoAPIVersion, + contractorPaymentGroupUuid); return request; } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder.java index fade5ff4b..42b3189c1 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder.java @@ -19,23 +19,17 @@ public class GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder { - private String id; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String id; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder id(String id) { - Utils.checkNotNull(id, "id"); - this.id = id; - return this; - } public GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder xGustoAPIVersion(GetV1ContractorPaymentGroupsIdPartnerDisbursementsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder xGustoAP return this; } + public GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder id(String id) { + Utils.checkNotNull(id, "id"); + this.id = id; + return this; + } + private GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest request = new GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest(id, - xGustoAPIVersion); + GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest request = new GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest(xGustoAPIVersion, + id); return request; } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder.java new file mode 100644 index 000000000..418540c5c --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder.java @@ -0,0 +1,79 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations.async; + +import static com.gusto.embedded_api.operations.Operations.AsyncRequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api.SDKConfiguration; +import com.gusto.embedded_api.models.operations.GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetV1ContractorsContractorUuidMemberPortalInvitationsRequest; +import com.gusto.embedded_api.operations.GetV1ContractorsContractorUuidMemberPortalInvitations; +import com.gusto.embedded_api.utils.Headers; +import com.gusto.embedded_api.utils.LazySingletonValue; +import com.gusto.embedded_api.utils.Utils; +import java.lang.String; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; + +public class GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder { + + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2025-06-15\"", + new TypeReference>() {}); + private String contractorUuid; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder xGustoAPIVersion(GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder contractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + + + private GetV1ContractorsContractorUuidMemberPortalInvitationsRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + GetV1ContractorsContractorUuidMemberPortalInvitationsRequest request = new GetV1ContractorsContractorUuidMemberPortalInvitationsRequest(xGustoAPIVersion, + contractorUuid); + + return request; + } + + public CompletableFuture call() { + + AsyncRequestOperation operation + = new GetV1ContractorsContractorUuidMemberPortalInvitations.Async(sdkConfiguration, _headers); + GetV1ContractorsContractorUuidMemberPortalInvitationsRequest request = buildRequest(); + + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2025-06-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1ContractorsContractorUuidMemberPortalInvitationsResponse.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1ContractorsContractorUuidMemberPortalInvitationsResponse.java new file mode 100644 index 000000000..9ee8a2355 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1ContractorsContractorUuidMemberPortalInvitationsResponse.java @@ -0,0 +1,253 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations.async; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api.models.components.MemberPortalInvitation; +import com.gusto.embedded_api.utils.AsyncResponse; +import com.gusto.embedded_api.utils.Blob; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.Optional; + + +public class GetV1ContractorsContractorUuidMemberPortalInvitationsResponse implements AsyncResponse { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * Success + */ + private Optional memberPortalInvitation; + + @JsonCreator + public GetV1ContractorsContractorUuidMemberPortalInvitationsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional memberPortalInvitation) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(memberPortalInvitation, "memberPortalInvitation"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.memberPortalInvitation = memberPortalInvitation; + } + + public GetV1ContractorsContractorUuidMemberPortalInvitationsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * Success + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional memberPortalInvitation() { + return (Optional) memberPortalInvitation; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public GetV1ContractorsContractorUuidMemberPortalInvitationsResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public GetV1ContractorsContractorUuidMemberPortalInvitationsResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public GetV1ContractorsContractorUuidMemberPortalInvitationsResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * Success + */ + public GetV1ContractorsContractorUuidMemberPortalInvitationsResponse withMemberPortalInvitation(MemberPortalInvitation memberPortalInvitation) { + Utils.checkNotNull(memberPortalInvitation, "memberPortalInvitation"); + this.memberPortalInvitation = Optional.ofNullable(memberPortalInvitation); + return this; + } + + + /** + * Success + */ + public GetV1ContractorsContractorUuidMemberPortalInvitationsResponse withMemberPortalInvitation(Optional memberPortalInvitation) { + Utils.checkNotNull(memberPortalInvitation, "memberPortalInvitation"); + this.memberPortalInvitation = memberPortalInvitation; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetV1ContractorsContractorUuidMemberPortalInvitationsResponse other = (GetV1ContractorsContractorUuidMemberPortalInvitationsResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.memberPortalInvitation, other.memberPortalInvitation); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + memberPortalInvitation); + } + + @Override + public String toString() { + return Utils.toString(GetV1ContractorsContractorUuidMemberPortalInvitationsResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "memberPortalInvitation", memberPortalInvitation); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional memberPortalInvitation = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * Success + */ + public Builder memberPortalInvitation(MemberPortalInvitation memberPortalInvitation) { + Utils.checkNotNull(memberPortalInvitation, "memberPortalInvitation"); + this.memberPortalInvitation = Optional.ofNullable(memberPortalInvitation); + return this; + } + + /** + * Success + */ + public Builder memberPortalInvitation(Optional memberPortalInvitation) { + Utils.checkNotNull(memberPortalInvitation, "memberPortalInvitation"); + this.memberPortalInvitation = memberPortalInvitation; + return this; + } + + public GetV1ContractorsContractorUuidMemberPortalInvitationsResponse build() { + + return new GetV1ContractorsContractorUuidMemberPortalInvitationsResponse( + contentType, statusCode, rawResponse, + memberPortalInvitation); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1ContractorsContractorUuidPaymentsRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1ContractorsContractorUuidPaymentsRequestBuilder.java new file mode 100644 index 000000000..a9f8a53c4 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1ContractorsContractorUuidPaymentsRequestBuilder.java @@ -0,0 +1,39 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations.async; + +import static com.gusto.embedded_api.operations.Operations.AsyncRequestOperation; + +import com.gusto.embedded_api.SDKConfiguration; +import com.gusto.embedded_api.models.operations.GetV1ContractorsContractorUuidPaymentsRequest; +import com.gusto.embedded_api.operations.GetV1ContractorsContractorUuidPayments; +import com.gusto.embedded_api.utils.Headers; +import com.gusto.embedded_api.utils.Utils; +import java.util.concurrent.CompletableFuture; + +public class GetV1ContractorsContractorUuidPaymentsRequestBuilder { + + private GetV1ContractorsContractorUuidPaymentsRequest request; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public GetV1ContractorsContractorUuidPaymentsRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public GetV1ContractorsContractorUuidPaymentsRequestBuilder request(GetV1ContractorsContractorUuidPaymentsRequest request) { + Utils.checkNotNull(request, "request"); + this.request = request; + return this; + } + + public CompletableFuture call() { + + AsyncRequestOperation operation + = new GetV1ContractorsContractorUuidPayments.Async(sdkConfiguration, _headers); + + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1ContractorsContractorUuidPaymentsResponse.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1ContractorsContractorUuidPaymentsResponse.java new file mode 100644 index 000000000..62c61c872 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1ContractorsContractorUuidPaymentsResponse.java @@ -0,0 +1,254 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations.async; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api.models.components.ContractorPaymentListing; +import com.gusto.embedded_api.utils.AsyncResponse; +import com.gusto.embedded_api.utils.Blob; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.List; +import java.util.Optional; + + +public class GetV1ContractorsContractorUuidPaymentsResponse implements AsyncResponse { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * A JSON array of contractor payments + */ + private Optional> contractorPaymentListings; + + @JsonCreator + public GetV1ContractorsContractorUuidPaymentsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional> contractorPaymentListings) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(contractorPaymentListings, "contractorPaymentListings"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.contractorPaymentListings = contractorPaymentListings; + } + + public GetV1ContractorsContractorUuidPaymentsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * A JSON array of contractor payments + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> contractorPaymentListings() { + return (Optional>) contractorPaymentListings; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public GetV1ContractorsContractorUuidPaymentsResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public GetV1ContractorsContractorUuidPaymentsResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public GetV1ContractorsContractorUuidPaymentsResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * A JSON array of contractor payments + */ + public GetV1ContractorsContractorUuidPaymentsResponse withContractorPaymentListings(List contractorPaymentListings) { + Utils.checkNotNull(contractorPaymentListings, "contractorPaymentListings"); + this.contractorPaymentListings = Optional.ofNullable(contractorPaymentListings); + return this; + } + + + /** + * A JSON array of contractor payments + */ + public GetV1ContractorsContractorUuidPaymentsResponse withContractorPaymentListings(Optional> contractorPaymentListings) { + Utils.checkNotNull(contractorPaymentListings, "contractorPaymentListings"); + this.contractorPaymentListings = contractorPaymentListings; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetV1ContractorsContractorUuidPaymentsResponse other = (GetV1ContractorsContractorUuidPaymentsResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.contractorPaymentListings, other.contractorPaymentListings); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + contractorPaymentListings); + } + + @Override + public String toString() { + return Utils.toString(GetV1ContractorsContractorUuidPaymentsResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "contractorPaymentListings", contractorPaymentListings); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional> contractorPaymentListings = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * A JSON array of contractor payments + */ + public Builder contractorPaymentListings(List contractorPaymentListings) { + Utils.checkNotNull(contractorPaymentListings, "contractorPaymentListings"); + this.contractorPaymentListings = Optional.ofNullable(contractorPaymentListings); + return this; + } + + /** + * A JSON array of contractor payments + */ + public Builder contractorPaymentListings(Optional> contractorPaymentListings) { + Utils.checkNotNull(contractorPaymentListings, "contractorPaymentListings"); + this.contractorPaymentListings = contractorPaymentListings; + return this; + } + + public GetV1ContractorsContractorUuidPaymentsResponse build() { + + return new GetV1ContractorsContractorUuidPaymentsResponse( + contentType, statusCode, rawResponse, + contractorPaymentListings); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder.java index 4dc6187f0..ce8552fd0 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder.java @@ -20,19 +20,31 @@ public class GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder { - private String employeeId; - private Optional page = Optional.empty(); - private Optional per = Optional.empty(); private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String employeeId; + private Optional page = Optional.empty(); + private Optional per = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } + + public GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder xGustoAPIVersion(GetV1EmployeesEmployeeIdCustomFieldsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } public GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder employeeId(String employeeId) { Utils.checkNotNull(employeeId, "employeeId"); @@ -63,18 +75,6 @@ public GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder per(Optional per this.per = per; return this; } - - public GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder xGustoAPIVersion(GetV1EmployeesEmployeeIdCustomFieldsHeaderXGustoAPIVersion xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); - return this; - } - - public GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } private GetV1EmployeesEmployeeIdCustomFieldsRequest buildRequest() { @@ -82,10 +82,10 @@ private GetV1EmployeesEmployeeIdCustomFieldsRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1EmployeesEmployeeIdCustomFieldsRequest request = new GetV1EmployeesEmployeeIdCustomFieldsRequest(employeeId, + GetV1EmployeesEmployeeIdCustomFieldsRequest request = new GetV1EmployeesEmployeeIdCustomFieldsRequest(xGustoAPIVersion, + employeeId, page, - per, - xGustoAPIVersion); + per); return request; } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1EmployeesEmployeeIdHomeAddressesRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1EmployeesEmployeeIdHomeAddressesRequestBuilder.java index a66d92f45..817e3c513 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1EmployeesEmployeeIdHomeAddressesRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1EmployeesEmployeeIdHomeAddressesRequestBuilder.java @@ -19,23 +19,17 @@ public class GetV1EmployeesEmployeeIdHomeAddressesRequestBuilder { - private String employeeId; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String employeeId; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1EmployeesEmployeeIdHomeAddressesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1EmployeesEmployeeIdHomeAddressesRequestBuilder employeeId(String employeeId) { - Utils.checkNotNull(employeeId, "employeeId"); - this.employeeId = employeeId; - return this; - } public GetV1EmployeesEmployeeIdHomeAddressesRequestBuilder xGustoAPIVersion(GetV1EmployeesEmployeeIdHomeAddressesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public GetV1EmployeesEmployeeIdHomeAddressesRequestBuilder xGustoAPIVersion(Opti return this; } + public GetV1EmployeesEmployeeIdHomeAddressesRequestBuilder employeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + private GetV1EmployeesEmployeeIdHomeAddressesRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1EmployeesEmployeeIdHomeAddressesRequest request = new GetV1EmployeesEmployeeIdHomeAddressesRequest(employeeId, - xGustoAPIVersion); + GetV1EmployeesEmployeeIdHomeAddressesRequest request = new GetV1EmployeesEmployeeIdHomeAddressesRequest(xGustoAPIVersion, + employeeId); return request; } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java new file mode 100644 index 000000000..5bd3a7d25 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java @@ -0,0 +1,79 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations.async; + +import static com.gusto.embedded_api.operations.Operations.AsyncRequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api.SDKConfiguration; +import com.gusto.embedded_api.models.operations.GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest; +import com.gusto.embedded_api.operations.GetV1EmployeesEmployeeIdMemberPortalInvitations; +import com.gusto.embedded_api.utils.Headers; +import com.gusto.embedded_api.utils.LazySingletonValue; +import com.gusto.embedded_api.utils.Utils; +import java.lang.String; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; + +public class GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder { + + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2025-06-15\"", + new TypeReference>() {}); + private String employeeId; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder xGustoAPIVersion(GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder employeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + + + private GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest request = new GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest(xGustoAPIVersion, + employeeId); + + return request; + } + + public CompletableFuture call() { + + AsyncRequestOperation operation + = new GetV1EmployeesEmployeeIdMemberPortalInvitations.Async(sdkConfiguration, _headers); + GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest request = buildRequest(); + + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2025-06-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java new file mode 100644 index 000000000..1a50d4fbf --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java @@ -0,0 +1,253 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations.async; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api.models.components.MemberPortalInvitation; +import com.gusto.embedded_api.utils.AsyncResponse; +import com.gusto.embedded_api.utils.Blob; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.Optional; + + +public class GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse implements AsyncResponse { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * Success + */ + private Optional memberPortalInvitation; + + @JsonCreator + public GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional memberPortalInvitation) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(memberPortalInvitation, "memberPortalInvitation"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.memberPortalInvitation = memberPortalInvitation; + } + + public GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * Success + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional memberPortalInvitation() { + return (Optional) memberPortalInvitation; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * Success + */ + public GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse withMemberPortalInvitation(MemberPortalInvitation memberPortalInvitation) { + Utils.checkNotNull(memberPortalInvitation, "memberPortalInvitation"); + this.memberPortalInvitation = Optional.ofNullable(memberPortalInvitation); + return this; + } + + + /** + * Success + */ + public GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse withMemberPortalInvitation(Optional memberPortalInvitation) { + Utils.checkNotNull(memberPortalInvitation, "memberPortalInvitation"); + this.memberPortalInvitation = memberPortalInvitation; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse other = (GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.memberPortalInvitation, other.memberPortalInvitation); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + memberPortalInvitation); + } + + @Override + public String toString() { + return Utils.toString(GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "memberPortalInvitation", memberPortalInvitation); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional memberPortalInvitation = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * Success + */ + public Builder memberPortalInvitation(MemberPortalInvitation memberPortalInvitation) { + Utils.checkNotNull(memberPortalInvitation, "memberPortalInvitation"); + this.memberPortalInvitation = Optional.ofNullable(memberPortalInvitation); + return this; + } + + /** + * Success + */ + public Builder memberPortalInvitation(Optional memberPortalInvitation) { + Utils.checkNotNull(memberPortalInvitation, "memberPortalInvitation"); + this.memberPortalInvitation = memberPortalInvitation; + return this; + } + + public GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse build() { + + return new GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse( + contentType, statusCode, rawResponse, + memberPortalInvitation); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1EmployeesEmployeeIdWorkAddressesRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1EmployeesEmployeeIdWorkAddressesRequestBuilder.java index aa260ce30..36d2f1995 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1EmployeesEmployeeIdWorkAddressesRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1EmployeesEmployeeIdWorkAddressesRequestBuilder.java @@ -19,23 +19,17 @@ public class GetV1EmployeesEmployeeIdWorkAddressesRequestBuilder { - private String employeeId; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String employeeId; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1EmployeesEmployeeIdWorkAddressesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1EmployeesEmployeeIdWorkAddressesRequestBuilder employeeId(String employeeId) { - Utils.checkNotNull(employeeId, "employeeId"); - this.employeeId = employeeId; - return this; - } public GetV1EmployeesEmployeeIdWorkAddressesRequestBuilder xGustoAPIVersion(GetV1EmployeesEmployeeIdWorkAddressesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public GetV1EmployeesEmployeeIdWorkAddressesRequestBuilder xGustoAPIVersion(Opti return this; } + public GetV1EmployeesEmployeeIdWorkAddressesRequestBuilder employeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + private GetV1EmployeesEmployeeIdWorkAddressesRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1EmployeesEmployeeIdWorkAddressesRequest request = new GetV1EmployeesEmployeeIdWorkAddressesRequest(employeeId, - xGustoAPIVersion); + GetV1EmployeesEmployeeIdWorkAddressesRequest request = new GetV1EmployeesEmployeeIdWorkAddressesRequest(xGustoAPIVersion, + employeeId); return request; } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder.java index e9dff2e9a..d0deea3e8 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder.java @@ -20,30 +20,18 @@ public class GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder { - private String employeeUuid; - private Long effectiveYear; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String employeeUuid; + private Long effectiveYear; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder employeeUuid(String employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = employeeUuid; - return this; - } - - public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder effectiveYear(long effectiveYear) { - Utils.checkNotNull(effectiveYear, "effectiveYear"); - this.effectiveYear = effectiveYear; - return this; - } public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder xGustoAPIVersion(GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -57,15 +45,27 @@ public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearReques return this; } + public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder employeeUuid(String employeeUuid) { + Utils.checkNotNull(employeeUuid, "employeeUuid"); + this.employeeUuid = employeeUuid; + return this; + } + + public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder effectiveYear(long effectiveYear) { + Utils.checkNotNull(effectiveYear, "effectiveYear"); + this.effectiveYear = effectiveYear; + return this; + } + private GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest request = new GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest(employeeUuid, - effectiveYear, - xGustoAPIVersion); + GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest request = new GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest(xGustoAPIVersion, + employeeUuid, + effectiveYear); return request; } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder.java index bc248ad5e..8c9130c9f 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder.java @@ -19,23 +19,17 @@ public class GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder { - private String employeeUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String employeeUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder employeeUuid(String employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = employeeUuid; - return this; - } public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder xGustoAPIVersion(GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder xGus return this; } + public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder employeeUuid(String employeeUuid) { + Utils.checkNotNull(employeeUuid, "employeeUuid"); + this.employeeUuid = employeeUuid; + return this; + } + private GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest request = new GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest(employeeUuid, - xGustoAPIVersion); + GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest request = new GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest(xGustoAPIVersion, + employeeUuid); return request; } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1EmployeesRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1EmployeesRequestBuilder.java index b3cfd4ce6..9b3cf317c 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1EmployeesRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1EmployeesRequestBuilder.java @@ -8,8 +8,8 @@ import com.fasterxml.jackson.core.type.TypeReference; import com.gusto.embedded_api.SDKConfiguration; import com.gusto.embedded_api.models.operations.GetV1EmployeesHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetV1EmployeesQueryParamInclude; import com.gusto.embedded_api.models.operations.GetV1EmployeesRequest; -import com.gusto.embedded_api.models.operations.QueryParamInclude; import com.gusto.embedded_api.operations.GetV1Employees; import com.gusto.embedded_api.utils.Headers; import com.gusto.embedded_api.utils.LazySingletonValue; @@ -26,7 +26,7 @@ public class GetV1EmployeesRequestBuilder { "\"2025-06-15\"", new TypeReference>() {}); private String employeeId; - private Optional> include = Optional.empty(); + private Optional> include = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -52,13 +52,13 @@ public GetV1EmployeesRequestBuilder employeeId(String employeeId) { return this; } - public GetV1EmployeesRequestBuilder include(List include) { + public GetV1EmployeesRequestBuilder include(List include) { Utils.checkNotNull(include, "include"); this.include = Optional.of(include); return this; } - public GetV1EmployeesRequestBuilder include(Optional> include) { + public GetV1EmployeesRequestBuilder include(Optional> include) { Utils.checkNotNull(include, "include"); this.include = include; return this; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder.java index 48488bc12..4f4ce8c65 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder.java @@ -7,8 +7,8 @@ import com.fasterxml.jackson.core.type.TypeReference; import com.gusto.embedded_api.SDKConfiguration; -import com.gusto.embedded_api.models.components.VersionHeader; import com.gusto.embedded_api.models.operations.DocumentType; +import com.gusto.embedded_api.models.operations.GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion; import com.gusto.embedded_api.models.operations.GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest; import com.gusto.embedded_api.operations.GetV1GeneratedDocumentsDocumentTypeRequestUuid; import com.gusto.embedded_api.utils.Headers; @@ -20,18 +20,30 @@ public class GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder { - private DocumentType documentType; - private String requestUuid; - private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", - new TypeReference>() {}); + new TypeReference>() {}); + private DocumentType documentType; + private String requestUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } + + public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder xGustoAPIVersion(GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder documentType(DocumentType documentType) { Utils.checkNotNull(documentType, "documentType"); @@ -44,18 +56,6 @@ public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder requestUuid( this.requestUuid = requestUuid; return this; } - - public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder xGustoAPIVersion(VersionHeader xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); - return this; - } - - public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } private GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest buildRequest() { @@ -63,9 +63,9 @@ private GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest request = new GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest(documentType, - requestUuid, - xGustoAPIVersion); + GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest request = new GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest(xGustoAPIVersion, + documentType, + requestUuid); return request; } @@ -80,9 +80,9 @@ public CompletableFuture .thenCompose(operation::handleResponse); } - private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = new LazySingletonValue<>( "xGustoAPIVersion", "\"2025-06-15\"", - new TypeReference>() {}); + new TypeReference>() {}); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1HomeAddressesHomeAddressUuidRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1HomeAddressesHomeAddressUuidRequestBuilder.java index 50c2244be..4a70fc9e8 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1HomeAddressesHomeAddressUuidRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1HomeAddressesHomeAddressUuidRequestBuilder.java @@ -19,23 +19,17 @@ public class GetV1HomeAddressesHomeAddressUuidRequestBuilder { - private String homeAddressUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String homeAddressUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1HomeAddressesHomeAddressUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1HomeAddressesHomeAddressUuidRequestBuilder homeAddressUuid(String homeAddressUuid) { - Utils.checkNotNull(homeAddressUuid, "homeAddressUuid"); - this.homeAddressUuid = homeAddressUuid; - return this; - } public GetV1HomeAddressesHomeAddressUuidRequestBuilder xGustoAPIVersion(GetV1HomeAddressesHomeAddressUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public GetV1HomeAddressesHomeAddressUuidRequestBuilder xGustoAPIVersion(Optional return this; } + public GetV1HomeAddressesHomeAddressUuidRequestBuilder homeAddressUuid(String homeAddressUuid) { + Utils.checkNotNull(homeAddressUuid, "homeAddressUuid"); + this.homeAddressUuid = homeAddressUuid; + return this; + } + private GetV1HomeAddressesHomeAddressUuidRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1HomeAddressesHomeAddressUuidRequest request = new GetV1HomeAddressesHomeAddressUuidRequest(homeAddressUuid, - xGustoAPIVersion); + GetV1HomeAddressesHomeAddressUuidRequest request = new GetV1HomeAddressesHomeAddressUuidRequest(xGustoAPIVersion, + homeAddressUuid); return request; } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1JobsJobIdRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1JobsJobIdRequestBuilder.java index 559cf029d..2ba00f5de 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1JobsJobIdRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1JobsJobIdRequestBuilder.java @@ -20,18 +20,30 @@ public class GetV1JobsJobIdRequestBuilder { - private String jobId; - private Optional include = Optional.empty(); private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String jobId; + private Optional include = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1JobsJobIdRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } + + public GetV1JobsJobIdRequestBuilder xGustoAPIVersion(GetV1JobsJobIdHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetV1JobsJobIdRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } public GetV1JobsJobIdRequestBuilder jobId(String jobId) { Utils.checkNotNull(jobId, "jobId"); @@ -50,18 +62,6 @@ public GetV1JobsJobIdRequestBuilder include(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } private GetV1JobsJobIdRequest buildRequest() { @@ -69,9 +69,9 @@ private GetV1JobsJobIdRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1JobsJobIdRequest request = new GetV1JobsJobIdRequest(jobId, - include, - xGustoAPIVersion); + GetV1JobsJobIdRequest request = new GetV1JobsJobIdRequest(xGustoAPIVersion, + jobId, + include); return request; } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1LocationsLocationUuidMinimumWagesRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1LocationsLocationUuidMinimumWagesRequestBuilder.java index e9f9aedc0..c45505e69 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1LocationsLocationUuidMinimumWagesRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1LocationsLocationUuidMinimumWagesRequestBuilder.java @@ -19,11 +19,11 @@ public class GetV1LocationsLocationUuidMinimumWagesRequestBuilder { - private String locationUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String locationUuid; private Optional effectiveDate = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -31,12 +31,6 @@ public class GetV1LocationsLocationUuidMinimumWagesRequestBuilder { public GetV1LocationsLocationUuidMinimumWagesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1LocationsLocationUuidMinimumWagesRequestBuilder locationUuid(String locationUuid) { - Utils.checkNotNull(locationUuid, "locationUuid"); - this.locationUuid = locationUuid; - return this; - } public GetV1LocationsLocationUuidMinimumWagesRequestBuilder xGustoAPIVersion(GetV1LocationsLocationUuidMinimumWagesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,6 +43,12 @@ public GetV1LocationsLocationUuidMinimumWagesRequestBuilder xGustoAPIVersion(Opt this.xGustoAPIVersion = xGustoAPIVersion; return this; } + + public GetV1LocationsLocationUuidMinimumWagesRequestBuilder locationUuid(String locationUuid) { + Utils.checkNotNull(locationUuid, "locationUuid"); + this.locationUuid = locationUuid; + return this; + } public GetV1LocationsLocationUuidMinimumWagesRequestBuilder effectiveDate(String effectiveDate) { Utils.checkNotNull(effectiveDate, "effectiveDate"); @@ -68,8 +68,8 @@ private GetV1LocationsLocationUuidMinimumWagesRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1LocationsLocationUuidMinimumWagesRequest request = new GetV1LocationsLocationUuidMinimumWagesRequest(locationUuid, - xGustoAPIVersion, + GetV1LocationsLocationUuidMinimumWagesRequest request = new GetV1LocationsLocationUuidMinimumWagesRequest(xGustoAPIVersion, + locationUuid, effectiveDate); return request; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder.java index d97c801bf..32808a414 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder.java @@ -19,23 +19,17 @@ public class GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder { - private String companyUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String companyUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder xGustoAPIVersion(GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder x return this; } + public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + private GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest request = new GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest(companyUuid, - xGustoAPIVersion); + GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest request = new GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest(xGustoAPIVersion, + companyUuid); return request; } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder.java index f99c5239a..3145455f4 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder.java @@ -13,29 +13,26 @@ import com.gusto.embedded_api.utils.Headers; import com.gusto.embedded_api.utils.LazySingletonValue; import com.gusto.embedded_api.utils.Utils; +import java.lang.Long; import java.lang.String; import java.util.Optional; import java.util.concurrent.CompletableFuture; public class GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder { - private String payrollUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String payrollUuid; + private Optional page = Optional.empty(); + private Optional per = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder payrollUuid(String payrollUuid) { - Utils.checkNotNull(payrollUuid, "payrollUuid"); - this.payrollUuid = payrollUuid; - return this; - } public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder xGustoAPIVersion(GetV1PaymentReceiptsPayrollsPayrollUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +46,46 @@ public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder xGustoAPIVersion(Op return this; } + public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder payrollUuid(String payrollUuid) { + Utils.checkNotNull(payrollUuid, "payrollUuid"); + this.payrollUuid = payrollUuid; + return this; + } + + public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder page(long page) { + Utils.checkNotNull(page, "page"); + this.page = Optional.of(page); + return this; + } + + public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder page(Optional page) { + Utils.checkNotNull(page, "page"); + this.page = page; + return this; + } + + public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder per(long per) { + Utils.checkNotNull(per, "per"); + this.per = Optional.of(per); + return this; + } + + public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder per(Optional per) { + Utils.checkNotNull(per, "per"); + this.per = per; + return this; + } + private GetV1PaymentReceiptsPayrollsPayrollUuidRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1PaymentReceiptsPayrollsPayrollUuidRequest request = new GetV1PaymentReceiptsPayrollsPayrollUuidRequest(payrollUuid, - xGustoAPIVersion); + GetV1PaymentReceiptsPayrollsPayrollUuidRequest request = new GetV1PaymentReceiptsPayrollsPayrollUuidRequest(xGustoAPIVersion, + payrollUuid, + page, + per); return request; } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1PayrollBatchesPayrollBatchUuidRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1PayrollBatchesPayrollBatchUuidRequestBuilder.java new file mode 100644 index 000000000..31d9d08eb --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1PayrollBatchesPayrollBatchUuidRequestBuilder.java @@ -0,0 +1,87 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations.async; + +import static com.gusto.embedded_api.operations.Operations.AsyncRequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api.SDKConfiguration; +import com.gusto.embedded_api.models.operations.GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.GetV1PayrollBatchesPayrollBatchUuidRequest; +import com.gusto.embedded_api.models.operations.GetV1PayrollBatchesPayrollBatchUuidSecurity; +import com.gusto.embedded_api.operations.GetV1PayrollBatchesPayrollBatchUuid; +import com.gusto.embedded_api.utils.Headers; +import com.gusto.embedded_api.utils.LazySingletonValue; +import com.gusto.embedded_api.utils.Utils; +import java.lang.String; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; + +public class GetV1PayrollBatchesPayrollBatchUuidRequestBuilder { + + private GetV1PayrollBatchesPayrollBatchUuidSecurity security; + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2025-06-15\"", + new TypeReference>() {}); + private String payrollBatchUuid; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public GetV1PayrollBatchesPayrollBatchUuidRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public GetV1PayrollBatchesPayrollBatchUuidRequestBuilder security(GetV1PayrollBatchesPayrollBatchUuidSecurity security) { + Utils.checkNotNull(security, "security"); + this.security = security; + return this; + } + + public GetV1PayrollBatchesPayrollBatchUuidRequestBuilder xGustoAPIVersion(GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetV1PayrollBatchesPayrollBatchUuidRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public GetV1PayrollBatchesPayrollBatchUuidRequestBuilder payrollBatchUuid(String payrollBatchUuid) { + Utils.checkNotNull(payrollBatchUuid, "payrollBatchUuid"); + this.payrollBatchUuid = payrollBatchUuid; + return this; + } + + + private GetV1PayrollBatchesPayrollBatchUuidRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + GetV1PayrollBatchesPayrollBatchUuidRequest request = new GetV1PayrollBatchesPayrollBatchUuidRequest(xGustoAPIVersion, + payrollBatchUuid); + + return request; + } + + public CompletableFuture call() { + + AsyncRequestOperation operation + = new GetV1PayrollBatchesPayrollBatchUuid.Async(sdkConfiguration, security, _headers); + GetV1PayrollBatchesPayrollBatchUuidRequest request = buildRequest(); + + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2025-06-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1PayrollBatchesPayrollBatchUuidResponse.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1PayrollBatchesPayrollBatchUuidResponse.java new file mode 100644 index 000000000..da7ab9afb --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1PayrollBatchesPayrollBatchUuidResponse.java @@ -0,0 +1,253 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations.async; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api.models.components.PayrollBatchResults; +import com.gusto.embedded_api.utils.AsyncResponse; +import com.gusto.embedded_api.utils.Blob; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.Optional; + + +public class GetV1PayrollBatchesPayrollBatchUuidResponse implements AsyncResponse { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * successful + */ + private Optional payrollBatchResults; + + @JsonCreator + public GetV1PayrollBatchesPayrollBatchUuidResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional payrollBatchResults) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(payrollBatchResults, "payrollBatchResults"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.payrollBatchResults = payrollBatchResults; + } + + public GetV1PayrollBatchesPayrollBatchUuidResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * successful + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional payrollBatchResults() { + return (Optional) payrollBatchResults; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public GetV1PayrollBatchesPayrollBatchUuidResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public GetV1PayrollBatchesPayrollBatchUuidResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public GetV1PayrollBatchesPayrollBatchUuidResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * successful + */ + public GetV1PayrollBatchesPayrollBatchUuidResponse withPayrollBatchResults(PayrollBatchResults payrollBatchResults) { + Utils.checkNotNull(payrollBatchResults, "payrollBatchResults"); + this.payrollBatchResults = Optional.ofNullable(payrollBatchResults); + return this; + } + + + /** + * successful + */ + public GetV1PayrollBatchesPayrollBatchUuidResponse withPayrollBatchResults(Optional payrollBatchResults) { + Utils.checkNotNull(payrollBatchResults, "payrollBatchResults"); + this.payrollBatchResults = payrollBatchResults; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetV1PayrollBatchesPayrollBatchUuidResponse other = (GetV1PayrollBatchesPayrollBatchUuidResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.payrollBatchResults, other.payrollBatchResults); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + payrollBatchResults); + } + + @Override + public String toString() { + return Utils.toString(GetV1PayrollBatchesPayrollBatchUuidResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "payrollBatchResults", payrollBatchResults); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional payrollBatchResults = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * successful + */ + public Builder payrollBatchResults(PayrollBatchResults payrollBatchResults) { + Utils.checkNotNull(payrollBatchResults, "payrollBatchResults"); + this.payrollBatchResults = Optional.ofNullable(payrollBatchResults); + return this; + } + + /** + * successful + */ + public Builder payrollBatchResults(Optional payrollBatchResults) { + Utils.checkNotNull(payrollBatchResults, "payrollBatchResults"); + this.payrollBatchResults = payrollBatchResults; + return this; + } + + public GetV1PayrollBatchesPayrollBatchUuidResponse build() { + + return new GetV1PayrollBatchesPayrollBatchUuidResponse( + contentType, statusCode, rawResponse, + payrollBatchResults); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1PayrollDigestsPayrollDigestUuidRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1PayrollDigestsPayrollDigestUuidRequestBuilder.java index 3f0de855f..a9f4040d1 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1PayrollDigestsPayrollDigestUuidRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1PayrollDigestsPayrollDigestUuidRequestBuilder.java @@ -21,11 +21,11 @@ public class GetV1PayrollDigestsPayrollDigestUuidRequestBuilder { private GetV1PayrollDigestsPayrollDigestUuidSecurity security; - private String payrollDigestUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String payrollDigestUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -38,12 +38,6 @@ public GetV1PayrollDigestsPayrollDigestUuidRequestBuilder security(GetV1PayrollD this.security = security; return this; } - - public GetV1PayrollDigestsPayrollDigestUuidRequestBuilder payrollDigestUuid(String payrollDigestUuid) { - Utils.checkNotNull(payrollDigestUuid, "payrollDigestUuid"); - this.payrollDigestUuid = payrollDigestUuid; - return this; - } public GetV1PayrollDigestsPayrollDigestUuidRequestBuilder xGustoAPIVersion(GetV1PayrollDigestsPayrollDigestUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -57,14 +51,20 @@ public GetV1PayrollDigestsPayrollDigestUuidRequestBuilder xGustoAPIVersion(Optio return this; } + public GetV1PayrollDigestsPayrollDigestUuidRequestBuilder payrollDigestUuid(String payrollDigestUuid) { + Utils.checkNotNull(payrollDigestUuid, "payrollDigestUuid"); + this.payrollDigestUuid = payrollDigestUuid; + return this; + } + private GetV1PayrollDigestsPayrollDigestUuidRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1PayrollDigestsPayrollDigestUuidRequest request = new GetV1PayrollDigestsPayrollDigestUuidRequest(payrollDigestUuid, - xGustoAPIVersion); + GetV1PayrollDigestsPayrollDigestUuidRequest request = new GetV1PayrollDigestsPayrollDigestUuidRequest(xGustoAPIVersion, + payrollDigestUuid); return request; } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1PeopleBatchesPeopleBatchUuidRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1PeopleBatchesPeopleBatchUuidRequestBuilder.java index 76cb1b6a9..9753f3918 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1PeopleBatchesPeopleBatchUuidRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1PeopleBatchesPeopleBatchUuidRequestBuilder.java @@ -19,23 +19,17 @@ public class GetV1PeopleBatchesPeopleBatchUuidRequestBuilder { - private String peopleBatchUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String peopleBatchUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1PeopleBatchesPeopleBatchUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1PeopleBatchesPeopleBatchUuidRequestBuilder peopleBatchUuid(String peopleBatchUuid) { - Utils.checkNotNull(peopleBatchUuid, "peopleBatchUuid"); - this.peopleBatchUuid = peopleBatchUuid; - return this; - } public GetV1PeopleBatchesPeopleBatchUuidRequestBuilder xGustoAPIVersion(GetV1PeopleBatchesPeopleBatchUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public GetV1PeopleBatchesPeopleBatchUuidRequestBuilder xGustoAPIVersion(Optional return this; } + public GetV1PeopleBatchesPeopleBatchUuidRequestBuilder peopleBatchUuid(String peopleBatchUuid) { + Utils.checkNotNull(peopleBatchUuid, "peopleBatchUuid"); + this.peopleBatchUuid = peopleBatchUuid; + return this; + } + private GetV1PeopleBatchesPeopleBatchUuidRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1PeopleBatchesPeopleBatchUuidRequest request = new GetV1PeopleBatchesPeopleBatchUuidRequest(peopleBatchUuid, - xGustoAPIVersion); + GetV1PeopleBatchesPeopleBatchUuidRequest request = new GetV1PeopleBatchesPeopleBatchUuidRequest(xGustoAPIVersion, + peopleBatchUuid); return request; } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1TokenInfoRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1TokenInfoRequestBuilder.java index 4ce7210ac..78f47cec6 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1TokenInfoRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1TokenInfoRequestBuilder.java @@ -7,8 +7,8 @@ import com.fasterxml.jackson.core.type.TypeReference; import com.gusto.embedded_api.SDKConfiguration; +import com.gusto.embedded_api.models.operations.GetV1TokenInfoHeaderXGustoAPIVersion; import com.gusto.embedded_api.models.operations.GetV1TokenInfoRequest; -import com.gusto.embedded_api.models.operations.XGustoAPIVersion; import com.gusto.embedded_api.operations.GetV1TokenInfo; import com.gusto.embedded_api.utils.Headers; import com.gusto.embedded_api.utils.LazySingletonValue; @@ -18,10 +18,10 @@ public class GetV1TokenInfoRequestBuilder { - private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", - new TypeReference>() {}); + new TypeReference>() {}); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -29,13 +29,13 @@ public GetV1TokenInfoRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - public GetV1TokenInfoRequestBuilder xGustoAPIVersion(XGustoAPIVersion xGustoAPIVersion) { + public GetV1TokenInfoRequestBuilder xGustoAPIVersion(GetV1TokenInfoHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); return this; } - public GetV1TokenInfoRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + public GetV1TokenInfoRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); this.xGustoAPIVersion = xGustoAPIVersion; return this; @@ -62,9 +62,9 @@ public CompletableFuture call() { .thenCompose(operation::handleResponse); } - private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = new LazySingletonValue<>( "xGustoAPIVersion", "\"2025-06-15\"", - new TypeReference>() {}); + new TypeReference>() {}); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1WebhookSubscriptionUuidRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1WebhookSubscriptionUuidRequestBuilder.java index 2902b51ec..729f293b5 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1WebhookSubscriptionUuidRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1WebhookSubscriptionUuidRequestBuilder.java @@ -21,11 +21,11 @@ public class GetV1WebhookSubscriptionUuidRequestBuilder { private GetV1WebhookSubscriptionUuidSecurity security; - private String webhookSubscriptionUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String webhookSubscriptionUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -38,12 +38,6 @@ public GetV1WebhookSubscriptionUuidRequestBuilder security(GetV1WebhookSubscript this.security = security; return this; } - - public GetV1WebhookSubscriptionUuidRequestBuilder webhookSubscriptionUuid(String webhookSubscriptionUuid) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; - return this; - } public GetV1WebhookSubscriptionUuidRequestBuilder xGustoAPIVersion(GetV1WebhookSubscriptionUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -57,14 +51,20 @@ public GetV1WebhookSubscriptionUuidRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String webhookSubscriptionUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -38,12 +38,6 @@ public GetV1WebhookSubscriptionVerificationTokenUuidRequestBuilder security(GetV this.security = security; return this; } - - public GetV1WebhookSubscriptionVerificationTokenUuidRequestBuilder webhookSubscriptionUuid(String webhookSubscriptionUuid) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; - return this; - } public GetV1WebhookSubscriptionVerificationTokenUuidRequestBuilder xGustoAPIVersion(GetV1WebhookSubscriptionVerificationTokenUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -57,14 +51,20 @@ public GetV1WebhookSubscriptionVerificationTokenUuidRequestBuilder xGustoAPIVers return this; } + public GetV1WebhookSubscriptionVerificationTokenUuidRequestBuilder webhookSubscriptionUuid(String webhookSubscriptionUuid) { + Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); + this.webhookSubscriptionUuid = webhookSubscriptionUuid; + return this; + } + private GetV1WebhookSubscriptionVerificationTokenUuidRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1WebhookSubscriptionVerificationTokenUuidRequest request = new GetV1WebhookSubscriptionVerificationTokenUuidRequest(webhookSubscriptionUuid, - xGustoAPIVersion); + GetV1WebhookSubscriptionVerificationTokenUuidRequest request = new GetV1WebhookSubscriptionVerificationTokenUuidRequest(xGustoAPIVersion, + webhookSubscriptionUuid); return request; } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1WorkAddressesWorkAddressUuidRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1WorkAddressesWorkAddressUuidRequestBuilder.java index cc75cc377..cd6b880c7 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1WorkAddressesWorkAddressUuidRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetV1WorkAddressesWorkAddressUuidRequestBuilder.java @@ -19,23 +19,17 @@ public class GetV1WorkAddressesWorkAddressUuidRequestBuilder { - private String workAddressUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String workAddressUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1WorkAddressesWorkAddressUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1WorkAddressesWorkAddressUuidRequestBuilder workAddressUuid(String workAddressUuid) { - Utils.checkNotNull(workAddressUuid, "workAddressUuid"); - this.workAddressUuid = workAddressUuid; - return this; - } public GetV1WorkAddressesWorkAddressUuidRequestBuilder xGustoAPIVersion(GetV1WorkAddressesWorkAddressUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public GetV1WorkAddressesWorkAddressUuidRequestBuilder xGustoAPIVersion(Optional return this; } + public GetV1WorkAddressesWorkAddressUuidRequestBuilder workAddressUuid(String workAddressUuid) { + Utils.checkNotNull(workAddressUuid, "workAddressUuid"); + this.workAddressUuid = workAddressUuid; + return this; + } + private GetV1WorkAddressesWorkAddressUuidRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1WorkAddressesWorkAddressUuidRequest request = new GetV1WorkAddressesWorkAddressUuidRequest(workAddressUuid, - xGustoAPIVersion); + GetV1WorkAddressesWorkAddressUuidRequest request = new GetV1WorkAddressesWorkAddressUuidRequest(xGustoAPIVersion, + workAddressUuid); return request; } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetWireInRequestsWireInRequestUuidRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetWireInRequestsWireInRequestUuidRequestBuilder.java index fbe4d881b..160cfa0b0 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetWireInRequestsWireInRequestUuidRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/GetWireInRequestsWireInRequestUuidRequestBuilder.java @@ -19,23 +19,17 @@ public class GetWireInRequestsWireInRequestUuidRequestBuilder { - private String wireInRequestUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String wireInRequestUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetWireInRequestsWireInRequestUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetWireInRequestsWireInRequestUuidRequestBuilder wireInRequestUuid(String wireInRequestUuid) { - Utils.checkNotNull(wireInRequestUuid, "wireInRequestUuid"); - this.wireInRequestUuid = wireInRequestUuid; - return this; - } public GetWireInRequestsWireInRequestUuidRequestBuilder xGustoAPIVersion(GetWireInRequestsWireInRequestUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public GetWireInRequestsWireInRequestUuidRequestBuilder xGustoAPIVersion(Optiona return this; } + public GetWireInRequestsWireInRequestUuidRequestBuilder wireInRequestUuid(String wireInRequestUuid) { + Utils.checkNotNull(wireInRequestUuid, "wireInRequestUuid"); + this.wireInRequestUuid = wireInRequestUuid; + return this; + } + private GetWireInRequestsWireInRequestUuidRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetWireInRequestsWireInRequestUuidRequest request = new GetWireInRequestsWireInRequestUuidRequest(wireInRequestUuid, - xGustoAPIVersion); + GetWireInRequestsWireInRequestUuidRequest request = new GetWireInRequestsWireInRequestUuidRequest(xGustoAPIVersion, + wireInRequestUuid); return request; } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/OauthAccessTokenRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/OauthAccessTokenRequestBuilder.java index 38e5dcb99..674505c31 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/OauthAccessTokenRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/OauthAccessTokenRequestBuilder.java @@ -7,7 +7,7 @@ import com.fasterxml.jackson.core.type.TypeReference; import com.gusto.embedded_api.SDKConfiguration; -import com.gusto.embedded_api.models.operations.HeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.OauthAccessTokenHeaderXGustoAPIVersion; import com.gusto.embedded_api.models.operations.OauthAccessTokenRequest; import com.gusto.embedded_api.models.operations.OauthAccessTokenRequestBody; import com.gusto.embedded_api.operations.OauthAccessToken; @@ -19,10 +19,10 @@ public class OauthAccessTokenRequestBuilder { - private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", - new TypeReference>() {}); + new TypeReference>() {}); private OauthAccessTokenRequestBody requestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -31,13 +31,13 @@ public OauthAccessTokenRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - public OauthAccessTokenRequestBuilder xGustoAPIVersion(HeaderXGustoAPIVersion xGustoAPIVersion) { + public OauthAccessTokenRequestBuilder xGustoAPIVersion(OauthAccessTokenHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); return this; } - public OauthAccessTokenRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + public OauthAccessTokenRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); this.xGustoAPIVersion = xGustoAPIVersion; return this; @@ -71,9 +71,9 @@ public CompletableFuture call() { .thenCompose(operation::handleResponse); } - private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = new LazySingletonValue<>( "xGustoAPIVersion", "\"2025-06-15\"", - new TypeReference>() {}); + new TypeReference>() {}); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder.java index bc1dd2f05..7aa1ed6ff 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder.java @@ -20,12 +20,12 @@ public class PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder { - private String companyId; - private String id; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String companyId; + private String id; private Optional requestBody = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -33,18 +33,6 @@ public class PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuild public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - - public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder id(String id) { - Utils.checkNotNull(id, "id"); - this.id = id; - return this; - } public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder xGustoAPIVersion(PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -57,6 +45,18 @@ public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder xGu this.xGustoAPIVersion = xGustoAPIVersion; return this; } + + public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder companyId(String companyId) { + Utils.checkNotNull(companyId, "companyId"); + this.companyId = companyId; + return this; + } + + public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder id(String id) { + Utils.checkNotNull(id, "id"); + this.id = id; + return this; + } public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder requestBody(PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); @@ -76,9 +76,9 @@ private PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest buildRequ xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest request = new PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest(companyId, + PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest request = new PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest(xGustoAPIVersion, + companyId, id, - xGustoAPIVersion, requestBody); return request; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder.java index 2bad060fb..1f542ed68 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder.java @@ -20,11 +20,11 @@ public class PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder { - private String id; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String id; private Optional requestBody = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder id(String id) { - Utils.checkNotNull(id, "id"); - this.id = id; - return this; - } public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder xGustoAPIVersion(PatchV1ContractorPaymentGroupsIdPartnerDisbursementsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -50,6 +44,12 @@ public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder xGusto this.xGustoAPIVersion = xGustoAPIVersion; return this; } + + public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder id(String id) { + Utils.checkNotNull(id, "id"); + this.id = id; + return this; + } public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder requestBody(PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); @@ -69,8 +69,8 @@ private PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest buildRequest xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest request = new PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest(id, - xGustoAPIVersion, + PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest request = new PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest(xGustoAPIVersion, + id, requestBody); return request; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder.java index bc4c08ef5..c3e4e132e 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder.java @@ -21,12 +21,12 @@ public class PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder { - private String employeeUuid; - private Long effectiveYear; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String employeeUuid; + private Long effectiveYear; private EmployeeSection603HighEarnerStatusUpdateRequest employeeSection603HighEarnerStatusUpdateRequest; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -34,18 +34,6 @@ public class PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYe public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder employeeUuid(String employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = employeeUuid; - return this; - } - - public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder effectiveYear(long effectiveYear) { - Utils.checkNotNull(effectiveYear, "effectiveYear"); - this.effectiveYear = effectiveYear; - return this; - } public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder xGustoAPIVersion(PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -59,6 +47,18 @@ public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequ return this; } + public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder employeeUuid(String employeeUuid) { + Utils.checkNotNull(employeeUuid, "employeeUuid"); + this.employeeUuid = employeeUuid; + return this; + } + + public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder effectiveYear(long effectiveYear) { + Utils.checkNotNull(effectiveYear, "effectiveYear"); + this.effectiveYear = effectiveYear; + return this; + } + public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder employeeSection603HighEarnerStatusUpdateRequest(EmployeeSection603HighEarnerStatusUpdateRequest employeeSection603HighEarnerStatusUpdateRequest) { Utils.checkNotNull(employeeSection603HighEarnerStatusUpdateRequest, "employeeSection603HighEarnerStatusUpdateRequest"); this.employeeSection603HighEarnerStatusUpdateRequest = employeeSection603HighEarnerStatusUpdateRequest; @@ -71,9 +71,9 @@ private PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearReq xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest request = new PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest(employeeUuid, + PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest request = new PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest(xGustoAPIVersion, + employeeUuid, effectiveYear, - xGustoAPIVersion, employeeSection603HighEarnerStatusUpdateRequest); return request; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostDepartmentsRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostDepartmentsRequestBuilder.java index 3df29b325..646be4bdf 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostDepartmentsRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostDepartmentsRequestBuilder.java @@ -20,11 +20,11 @@ public class PostDepartmentsRequestBuilder { - private String companyUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String companyUuid; private DepartmentCreateRequestBody departmentCreateRequestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PostDepartmentsRequestBuilder { public PostDepartmentsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostDepartmentsRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public PostDepartmentsRequestBuilder xGustoAPIVersion(PostDepartmentsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public PostDepartmentsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String companyUuid; private PartnerManagedCompanyAcceptTermsOfServiceRequest partnerManagedCompanyAcceptTermsOfServiceRequest; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBu public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBuilder xGustoAPIVersion(PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBuilder return this; } + public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBuilder partnerManagedCompanyAcceptTermsOfServiceRequest(PartnerManagedCompanyAcceptTermsOfServiceRequest partnerManagedCompanyAcceptTermsOfServiceRequest) { Utils.checkNotNull(partnerManagedCompanyAcceptTermsOfServiceRequest, "partnerManagedCompanyAcceptTermsOfServiceRequest"); this.partnerManagedCompanyAcceptTermsOfServiceRequest = partnerManagedCompanyAcceptTermsOfServiceRequest; @@ -63,8 +63,8 @@ private PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest buildR xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest request = new PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest(companyUuid, - xGustoAPIVersion, + PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest request = new PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest(xGustoAPIVersion, + companyUuid, partnerManagedCompanyAcceptTermsOfServiceRequest); return request; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder.java index 64859af08..a11f0750d 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder.java @@ -20,11 +20,11 @@ public class PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder { - private String companyUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String companyUuid; private PartnerManagedCompanyRetrieveTermsOfServiceRequest partnerManagedCompanyRetrieveTermsOfServiceRequest; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder xGustoAPIVersion(PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilde return this; } + public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder partnerManagedCompanyRetrieveTermsOfServiceRequest(PartnerManagedCompanyRetrieveTermsOfServiceRequest partnerManagedCompanyRetrieveTermsOfServiceRequest) { Utils.checkNotNull(partnerManagedCompanyRetrieveTermsOfServiceRequest, "partnerManagedCompanyRetrieveTermsOfServiceRequest"); this.partnerManagedCompanyRetrieveTermsOfServiceRequest = partnerManagedCompanyRetrieveTermsOfServiceRequest; @@ -63,8 +63,8 @@ private PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest buil xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest request = new PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest(companyUuid, - xGustoAPIVersion, + PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest request = new PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest(xGustoAPIVersion, + companyUuid, partnerManagedCompanyRetrieveTermsOfServiceRequest); return request; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostV1BulkReportsRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostV1BulkReportsRequestBuilder.java new file mode 100644 index 000000000..686d48bce --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostV1BulkReportsRequestBuilder.java @@ -0,0 +1,87 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations.async; + +import static com.gusto.embedded_api.operations.Operations.AsyncRequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api.SDKConfiguration; +import com.gusto.embedded_api.models.components.BulkReportBody; +import com.gusto.embedded_api.models.operations.PostV1BulkReportsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PostV1BulkReportsRequest; +import com.gusto.embedded_api.models.operations.PostV1BulkReportsSecurity; +import com.gusto.embedded_api.operations.PostV1BulkReports; +import com.gusto.embedded_api.utils.Headers; +import com.gusto.embedded_api.utils.LazySingletonValue; +import com.gusto.embedded_api.utils.Utils; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; + +public class PostV1BulkReportsRequestBuilder { + + private PostV1BulkReportsSecurity security; + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2025-06-15\"", + new TypeReference>() {}); + private BulkReportBody bulkReportBody; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public PostV1BulkReportsRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public PostV1BulkReportsRequestBuilder security(PostV1BulkReportsSecurity security) { + Utils.checkNotNull(security, "security"); + this.security = security; + return this; + } + + public PostV1BulkReportsRequestBuilder xGustoAPIVersion(PostV1BulkReportsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public PostV1BulkReportsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public PostV1BulkReportsRequestBuilder bulkReportBody(BulkReportBody bulkReportBody) { + Utils.checkNotNull(bulkReportBody, "bulkReportBody"); + this.bulkReportBody = bulkReportBody; + return this; + } + + + private PostV1BulkReportsRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + PostV1BulkReportsRequest request = new PostV1BulkReportsRequest(xGustoAPIVersion, + bulkReportBody); + + return request; + } + + public CompletableFuture call() { + + AsyncRequestOperation operation + = new PostV1BulkReports.Async(sdkConfiguration, security, _headers); + PostV1BulkReportsRequest request = buildRequest(); + + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2025-06-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostV1BulkReportsResponse.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostV1BulkReportsResponse.java new file mode 100644 index 000000000..46db6d81f --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostV1BulkReportsResponse.java @@ -0,0 +1,253 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations.async; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api.models.components.CreateBulkReport; +import com.gusto.embedded_api.utils.AsyncResponse; +import com.gusto.embedded_api.utils.Blob; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.Optional; + + +public class PostV1BulkReportsResponse implements AsyncResponse { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * Created + */ + private Optional createBulkReport; + + @JsonCreator + public PostV1BulkReportsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional createBulkReport) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(createBulkReport, "createBulkReport"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.createBulkReport = createBulkReport; + } + + public PostV1BulkReportsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * Created + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional createBulkReport() { + return (Optional) createBulkReport; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public PostV1BulkReportsResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public PostV1BulkReportsResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public PostV1BulkReportsResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * Created + */ + public PostV1BulkReportsResponse withCreateBulkReport(CreateBulkReport createBulkReport) { + Utils.checkNotNull(createBulkReport, "createBulkReport"); + this.createBulkReport = Optional.ofNullable(createBulkReport); + return this; + } + + + /** + * Created + */ + public PostV1BulkReportsResponse withCreateBulkReport(Optional createBulkReport) { + Utils.checkNotNull(createBulkReport, "createBulkReport"); + this.createBulkReport = createBulkReport; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PostV1BulkReportsResponse other = (PostV1BulkReportsResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.createBulkReport, other.createBulkReport); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + createBulkReport); + } + + @Override + public String toString() { + return Utils.toString(PostV1BulkReportsResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "createBulkReport", createBulkReport); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional createBulkReport = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * Created + */ + public Builder createBulkReport(CreateBulkReport createBulkReport) { + Utils.checkNotNull(createBulkReport, "createBulkReport"); + this.createBulkReport = Optional.ofNullable(createBulkReport); + return this; + } + + /** + * Created + */ + public Builder createBulkReport(Optional createBulkReport) { + Utils.checkNotNull(createBulkReport, "createBulkReport"); + this.createBulkReport = createBulkReport; + return this; + } + + public PostV1BulkReportsResponse build() { + + return new PostV1BulkReportsResponse( + contentType, statusCode, rawResponse, + createBulkReport); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder.java index 890862887..394dc4439 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder.java @@ -20,11 +20,11 @@ public class PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder { - private String companyId; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String companyId; private PostV1CompaniesCompanyIdPeopleBatchesRequestBody requestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder { public PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } public PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder xGustoAPIVersion(PostV1CompaniesCompanyIdPeopleBatchesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder xGustoAPIVersion(Opti return this; } + public PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder companyId(String companyId) { + Utils.checkNotNull(companyId, "companyId"); + this.companyId = companyId; + return this; + } + public PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder requestBody(PostV1CompaniesCompanyIdPeopleBatchesRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); this.requestBody = requestBody; @@ -63,8 +63,8 @@ private PostV1CompaniesCompanyIdPeopleBatchesRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PostV1CompaniesCompanyIdPeopleBatchesRequest request = new PostV1CompaniesCompanyIdPeopleBatchesRequest(companyId, - xGustoAPIVersion, + PostV1CompaniesCompanyIdPeopleBatchesRequest request = new PostV1CompaniesCompanyIdPeopleBatchesRequest(xGustoAPIVersion, + companyId, requestBody); return request; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder.java index 272a5323d..4d8aea959 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder.java @@ -20,11 +20,11 @@ public class PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder { - private String companyUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String companyUuid; private SignatoryInviteRequest signatoryInviteRequest; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder { public PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder xGustoAPIVersion(PostV1CompaniesCompanyUuidSignatoriesInviteHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder xGustoAPIVersio return this; } + public PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + public PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder signatoryInviteRequest(SignatoryInviteRequest signatoryInviteRequest) { Utils.checkNotNull(signatoryInviteRequest, "signatoryInviteRequest"); this.signatoryInviteRequest = signatoryInviteRequest; @@ -63,8 +63,8 @@ private PostV1CompaniesCompanyUuidSignatoriesInviteRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PostV1CompaniesCompanyUuidSignatoriesInviteRequest request = new PostV1CompaniesCompanyUuidSignatoriesInviteRequest(companyUuid, - xGustoAPIVersion, + PostV1CompaniesCompanyUuidSignatoriesInviteRequest request = new PostV1CompaniesCompanyUuidSignatoriesInviteRequest(xGustoAPIVersion, + companyUuid, signatoryInviteRequest); return request; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostV1CompanySignatoriesRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostV1CompanySignatoriesRequestBuilder.java index 14aeae353..d146ef4ac 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostV1CompanySignatoriesRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostV1CompanySignatoriesRequestBuilder.java @@ -20,11 +20,11 @@ public class PostV1CompanySignatoriesRequestBuilder { - private String companyUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String companyUuid; private SignatoryCreateRequest signatoryCreateRequest; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PostV1CompanySignatoriesRequestBuilder { public PostV1CompanySignatoriesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostV1CompanySignatoriesRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public PostV1CompanySignatoriesRequestBuilder xGustoAPIVersion(PostV1CompanySignatoriesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public PostV1CompanySignatoriesRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2025-06-15\"", + new TypeReference>() {}); + private String contractorUuid; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public PostV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public PostV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder xGustoAPIVersion(PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public PostV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public PostV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder contractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + + + private PostV1ContractorsContractorUuidMemberPortalInvitationsRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + PostV1ContractorsContractorUuidMemberPortalInvitationsRequest request = new PostV1ContractorsContractorUuidMemberPortalInvitationsRequest(xGustoAPIVersion, + contractorUuid); + + return request; + } + + public CompletableFuture call() { + + AsyncRequestOperation operation + = new PostV1ContractorsContractorUuidMemberPortalInvitations.Async(sdkConfiguration, _headers); + PostV1ContractorsContractorUuidMemberPortalInvitationsRequest request = buildRequest(); + + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2025-06-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostV1ContractorsContractorUuidMemberPortalInvitationsResponse.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostV1ContractorsContractorUuidMemberPortalInvitationsResponse.java new file mode 100644 index 000000000..587006eb3 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostV1ContractorsContractorUuidMemberPortalInvitationsResponse.java @@ -0,0 +1,181 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations.async; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api.utils.AsyncResponse; +import com.gusto.embedded_api.utils.Blob; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.net.http.HttpResponse; + + +public class PostV1ContractorsContractorUuidMemberPortalInvitationsResponse implements AsyncResponse { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + @JsonCreator + public PostV1ContractorsContractorUuidMemberPortalInvitationsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public PostV1ContractorsContractorUuidMemberPortalInvitationsResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public PostV1ContractorsContractorUuidMemberPortalInvitationsResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public PostV1ContractorsContractorUuidMemberPortalInvitationsResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PostV1ContractorsContractorUuidMemberPortalInvitationsResponse other = (PostV1ContractorsContractorUuidMemberPortalInvitationsResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse); + } + + @Override + public String toString() { + return Utils.toString(PostV1ContractorsContractorUuidMemberPortalInvitationsResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + public PostV1ContractorsContractorUuidMemberPortalInvitationsResponse build() { + + return new PostV1ContractorsContractorUuidMemberPortalInvitationsResponse( + contentType, statusCode, rawResponse); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostV1ContractorsContractorUuidRehireRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostV1ContractorsContractorUuidRehireRequestBuilder.java index ee0cf39bb..58053a723 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostV1ContractorsContractorUuidRehireRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostV1ContractorsContractorUuidRehireRequestBuilder.java @@ -20,11 +20,11 @@ public class PostV1ContractorsContractorUuidRehireRequestBuilder { - private String contractorUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String contractorUuid; private Optional requestBody = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PostV1ContractorsContractorUuidRehireRequestBuilder { public PostV1ContractorsContractorUuidRehireRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostV1ContractorsContractorUuidRehireRequestBuilder contractorUuid(String contractorUuid) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); - this.contractorUuid = contractorUuid; - return this; - } public PostV1ContractorsContractorUuidRehireRequestBuilder xGustoAPIVersion(PostV1ContractorsContractorUuidRehireHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -50,6 +44,12 @@ public PostV1ContractorsContractorUuidRehireRequestBuilder xGustoAPIVersion(Opti this.xGustoAPIVersion = xGustoAPIVersion; return this; } + + public PostV1ContractorsContractorUuidRehireRequestBuilder contractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } public PostV1ContractorsContractorUuidRehireRequestBuilder requestBody(PostV1ContractorsContractorUuidRehireRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); @@ -69,8 +69,8 @@ private PostV1ContractorsContractorUuidRehireRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PostV1ContractorsContractorUuidRehireRequest request = new PostV1ContractorsContractorUuidRehireRequest(contractorUuid, - xGustoAPIVersion, + PostV1ContractorsContractorUuidRehireRequest request = new PostV1ContractorsContractorUuidRehireRequest(xGustoAPIVersion, + contractorUuid, requestBody); return request; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostV1ContractorsContractorUuidTerminationRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostV1ContractorsContractorUuidTerminationRequestBuilder.java index 1517b0e9a..05a8f0e23 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostV1ContractorsContractorUuidTerminationRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostV1ContractorsContractorUuidTerminationRequestBuilder.java @@ -20,11 +20,11 @@ public class PostV1ContractorsContractorUuidTerminationRequestBuilder { - private String contractorUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String contractorUuid; private Optional requestBody = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PostV1ContractorsContractorUuidTerminationRequestBuilder { public PostV1ContractorsContractorUuidTerminationRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostV1ContractorsContractorUuidTerminationRequestBuilder contractorUuid(String contractorUuid) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); - this.contractorUuid = contractorUuid; - return this; - } public PostV1ContractorsContractorUuidTerminationRequestBuilder xGustoAPIVersion(PostV1ContractorsContractorUuidTerminationHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -50,6 +44,12 @@ public PostV1ContractorsContractorUuidTerminationRequestBuilder xGustoAPIVersion this.xGustoAPIVersion = xGustoAPIVersion; return this; } + + public PostV1ContractorsContractorUuidTerminationRequestBuilder contractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } public PostV1ContractorsContractorUuidTerminationRequestBuilder requestBody(PostV1ContractorsContractorUuidTerminationRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); @@ -69,8 +69,8 @@ private PostV1ContractorsContractorUuidTerminationRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PostV1ContractorsContractorUuidTerminationRequest request = new PostV1ContractorsContractorUuidTerminationRequest(contractorUuid, - xGustoAPIVersion, + PostV1ContractorsContractorUuidTerminationRequest request = new PostV1ContractorsContractorUuidTerminationRequest(xGustoAPIVersion, + contractorUuid, requestBody); return request; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder.java index 4d0d48a3d..81f0f1a2f 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder.java @@ -20,11 +20,11 @@ public class PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder { - private String employeeId; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String employeeId; private PostV1EmployeesEmployeeIdHomeAddressesRequestBody requestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder { public PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder employeeId(String employeeId) { - Utils.checkNotNull(employeeId, "employeeId"); - this.employeeId = employeeId; - return this; - } public PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder xGustoAPIVersion(PostV1EmployeesEmployeeIdHomeAddressesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder xGustoAPIVersion(Opt return this; } + public PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder employeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + public PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder requestBody(PostV1EmployeesEmployeeIdHomeAddressesRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); this.requestBody = requestBody; @@ -63,8 +63,8 @@ private PostV1EmployeesEmployeeIdHomeAddressesRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PostV1EmployeesEmployeeIdHomeAddressesRequest request = new PostV1EmployeesEmployeeIdHomeAddressesRequest(employeeId, - xGustoAPIVersion, + PostV1EmployeesEmployeeIdHomeAddressesRequest request = new PostV1EmployeesEmployeeIdHomeAddressesRequest(xGustoAPIVersion, + employeeId, requestBody); return request; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostV1EmployeesEmployeeIdJobsRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostV1EmployeesEmployeeIdJobsRequestBuilder.java index 7c8e8386f..93efd2e25 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostV1EmployeesEmployeeIdJobsRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostV1EmployeesEmployeeIdJobsRequestBuilder.java @@ -20,11 +20,11 @@ public class PostV1EmployeesEmployeeIdJobsRequestBuilder { - private String employeeId; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String employeeId; private JobsCreateRequestBody jobsCreateRequestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PostV1EmployeesEmployeeIdJobsRequestBuilder { public PostV1EmployeesEmployeeIdJobsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostV1EmployeesEmployeeIdJobsRequestBuilder employeeId(String employeeId) { - Utils.checkNotNull(employeeId, "employeeId"); - this.employeeId = employeeId; - return this; - } public PostV1EmployeesEmployeeIdJobsRequestBuilder xGustoAPIVersion(PostV1EmployeesEmployeeIdJobsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public PostV1EmployeesEmployeeIdJobsRequestBuilder xGustoAPIVersion(Optional rawResponse; /** - * created + * created a primary job with a null title */ private Optional job; @@ -87,7 +87,7 @@ public HttpResponse rawResponse() { } /** - * created + * created a primary job with a null title */ @SuppressWarnings("unchecked") @JsonIgnore @@ -128,7 +128,7 @@ public PostV1EmployeesEmployeeIdJobsResponse withRawResponse(HttpResponse } /** - * created + * created a primary job with a null title */ public PostV1EmployeesEmployeeIdJobsResponse withJob(Job job) { Utils.checkNotNull(job, "job"); @@ -138,7 +138,7 @@ public PostV1EmployeesEmployeeIdJobsResponse withJob(Job job) { /** - * created + * created a primary job with a null title */ public PostV1EmployeesEmployeeIdJobsResponse withJob(Optional job) { Utils.checkNotNull(job, "job"); @@ -225,7 +225,7 @@ public Builder rawResponse(HttpResponse rawResponse) { /** - * created + * created a primary job with a null title */ public Builder job(Job job) { Utils.checkNotNull(job, "job"); @@ -234,7 +234,7 @@ public Builder job(Job job) { } /** - * created + * created a primary job with a null title */ public Builder job(Optional job) { Utils.checkNotNull(job, "job"); diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java new file mode 100644 index 000000000..a72272973 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java @@ -0,0 +1,79 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations.async; + +import static com.gusto.embedded_api.operations.Operations.AsyncRequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api.SDKConfiguration; +import com.gusto.embedded_api.models.operations.PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest; +import com.gusto.embedded_api.operations.PostV1EmployeesEmployeeIdMemberPortalInvitations; +import com.gusto.embedded_api.utils.Headers; +import com.gusto.embedded_api.utils.LazySingletonValue; +import com.gusto.embedded_api.utils.Utils; +import java.lang.String; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; + +public class PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder { + + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2025-06-15\"", + new TypeReference>() {}); + private String employeeId; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder xGustoAPIVersion(PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder employeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + + + private PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest request = new PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest(xGustoAPIVersion, + employeeId); + + return request; + } + + public CompletableFuture call() { + + AsyncRequestOperation operation + = new PostV1EmployeesEmployeeIdMemberPortalInvitations.Async(sdkConfiguration, _headers); + PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest request = buildRequest(); + + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2025-06-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java new file mode 100644 index 000000000..d2b00aa0b --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java @@ -0,0 +1,181 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations.async; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api.utils.AsyncResponse; +import com.gusto.embedded_api.utils.Blob; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.net.http.HttpResponse; + + +public class PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse implements AsyncResponse { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + @JsonCreator + public PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse other = (PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse); + } + + @Override + public String toString() { + return Utils.toString(PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + public PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse build() { + + return new PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse( + contentType, statusCode, rawResponse); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder.java index ca0be70e7..9e5b4631e 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder.java @@ -20,11 +20,11 @@ public class PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder { - private String employeeId; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String employeeId; private PostV1EmployeesEmployeeIdWorkAddressesRequestBody requestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder { public PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder employeeId(String employeeId) { - Utils.checkNotNull(employeeId, "employeeId"); - this.employeeId = employeeId; - return this; - } public PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder xGustoAPIVersion(PostV1EmployeesEmployeeIdWorkAddressesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder xGustoAPIVersion(Opt return this; } + public PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder employeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + public PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder requestBody(PostV1EmployeesEmployeeIdWorkAddressesRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); this.requestBody = requestBody; @@ -63,8 +63,8 @@ private PostV1EmployeesEmployeeIdWorkAddressesRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PostV1EmployeesEmployeeIdWorkAddressesRequest request = new PostV1EmployeesEmployeeIdWorkAddressesRequest(employeeId, - xGustoAPIVersion, + PostV1EmployeesEmployeeIdWorkAddressesRequest request = new PostV1EmployeesEmployeeIdWorkAddressesRequest(xGustoAPIVersion, + employeeId, requestBody); return request; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder.java index a5d797ad5..881ba08cc 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder.java @@ -20,11 +20,11 @@ public class PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder { - private String employeeUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String employeeUuid; private EmployeeSection603HighEarnerStatusCreateRequest employeeSection603HighEarnerStatusCreateRequest; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuild public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder employeeUuid(String employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = employeeUuid; - return this; - } public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder xGustoAPIVersion(PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder xGu return this; } + public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder employeeUuid(String employeeUuid) { + Utils.checkNotNull(employeeUuid, "employeeUuid"); + this.employeeUuid = employeeUuid; + return this; + } + public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder employeeSection603HighEarnerStatusCreateRequest(EmployeeSection603HighEarnerStatusCreateRequest employeeSection603HighEarnerStatusCreateRequest) { Utils.checkNotNull(employeeSection603HighEarnerStatusCreateRequest, "employeeSection603HighEarnerStatusCreateRequest"); this.employeeSection603HighEarnerStatusCreateRequest = employeeSection603HighEarnerStatusCreateRequest; @@ -63,8 +63,8 @@ private PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest buildRequ xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest request = new PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest(employeeUuid, - xGustoAPIVersion, + PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest request = new PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest(xGustoAPIVersion, + employeeUuid, employeeSection603HighEarnerStatusCreateRequest); return request; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostV1PayrollBatchesRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostV1PayrollBatchesRequestBuilder.java new file mode 100644 index 000000000..0dfbd567a --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostV1PayrollBatchesRequestBuilder.java @@ -0,0 +1,87 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations.async; + +import static com.gusto.embedded_api.operations.Operations.AsyncRequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api.SDKConfiguration; +import com.gusto.embedded_api.models.operations.PostV1PayrollBatchesHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PostV1PayrollBatchesRequest; +import com.gusto.embedded_api.models.operations.PostV1PayrollBatchesRequestBody; +import com.gusto.embedded_api.models.operations.PostV1PayrollBatchesSecurity; +import com.gusto.embedded_api.operations.PostV1PayrollBatches; +import com.gusto.embedded_api.utils.Headers; +import com.gusto.embedded_api.utils.LazySingletonValue; +import com.gusto.embedded_api.utils.Utils; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; + +public class PostV1PayrollBatchesRequestBuilder { + + private PostV1PayrollBatchesSecurity security; + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2025-06-15\"", + new TypeReference>() {}); + private PostV1PayrollBatchesRequestBody requestBody; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public PostV1PayrollBatchesRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public PostV1PayrollBatchesRequestBuilder security(PostV1PayrollBatchesSecurity security) { + Utils.checkNotNull(security, "security"); + this.security = security; + return this; + } + + public PostV1PayrollBatchesRequestBuilder xGustoAPIVersion(PostV1PayrollBatchesHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public PostV1PayrollBatchesRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public PostV1PayrollBatchesRequestBuilder requestBody(PostV1PayrollBatchesRequestBody requestBody) { + Utils.checkNotNull(requestBody, "requestBody"); + this.requestBody = requestBody; + return this; + } + + + private PostV1PayrollBatchesRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + PostV1PayrollBatchesRequest request = new PostV1PayrollBatchesRequest(xGustoAPIVersion, + requestBody); + + return request; + } + + public CompletableFuture call() { + + AsyncRequestOperation operation + = new PostV1PayrollBatches.Async(sdkConfiguration, security, _headers); + PostV1PayrollBatchesRequest request = buildRequest(); + + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2025-06-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostV1PayrollBatchesResponse.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostV1PayrollBatchesResponse.java new file mode 100644 index 000000000..6d1273c38 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PostV1PayrollBatchesResponse.java @@ -0,0 +1,253 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations.async; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api.models.components.PayrollBatch; +import com.gusto.embedded_api.utils.AsyncResponse; +import com.gusto.embedded_api.utils.Blob; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.Optional; + + +public class PostV1PayrollBatchesResponse implements AsyncResponse { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * created + */ + private Optional payrollBatch; + + @JsonCreator + public PostV1PayrollBatchesResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional payrollBatch) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(payrollBatch, "payrollBatch"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.payrollBatch = payrollBatch; + } + + public PostV1PayrollBatchesResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * created + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional payrollBatch() { + return (Optional) payrollBatch; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public PostV1PayrollBatchesResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public PostV1PayrollBatchesResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public PostV1PayrollBatchesResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * created + */ + public PostV1PayrollBatchesResponse withPayrollBatch(PayrollBatch payrollBatch) { + Utils.checkNotNull(payrollBatch, "payrollBatch"); + this.payrollBatch = Optional.ofNullable(payrollBatch); + return this; + } + + + /** + * created + */ + public PostV1PayrollBatchesResponse withPayrollBatch(Optional payrollBatch) { + Utils.checkNotNull(payrollBatch, "payrollBatch"); + this.payrollBatch = payrollBatch; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PostV1PayrollBatchesResponse other = (PostV1PayrollBatchesResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.payrollBatch, other.payrollBatch); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + payrollBatch); + } + + @Override + public String toString() { + return Utils.toString(PostV1PayrollBatchesResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "payrollBatch", payrollBatch); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional payrollBatch = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * created + */ + public Builder payrollBatch(PayrollBatch payrollBatch) { + Utils.checkNotNull(payrollBatch, "payrollBatch"); + this.payrollBatch = Optional.ofNullable(payrollBatch); + return this; + } + + /** + * created + */ + public Builder payrollBatch(Optional payrollBatch) { + Utils.checkNotNull(payrollBatch, "payrollBatch"); + this.payrollBatch = payrollBatch; + return this; + } + + public PostV1PayrollBatchesResponse build() { + + return new PostV1PayrollBatchesResponse( + contentType, statusCode, rawResponse, + payrollBatch); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PutAddPeopleToDepartmentRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PutAddPeopleToDepartmentRequestBuilder.java index bde7e7318..e0d339c00 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PutAddPeopleToDepartmentRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PutAddPeopleToDepartmentRequestBuilder.java @@ -20,11 +20,11 @@ public class PutAddPeopleToDepartmentRequestBuilder { - private String departmentUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String departmentUuid; private DepartmentPeopleRequestBody departmentPeopleRequestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PutAddPeopleToDepartmentRequestBuilder { public PutAddPeopleToDepartmentRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutAddPeopleToDepartmentRequestBuilder departmentUuid(String departmentUuid) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); - this.departmentUuid = departmentUuid; - return this; - } public PutAddPeopleToDepartmentRequestBuilder xGustoAPIVersion(PutAddPeopleToDepartmentHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public PutAddPeopleToDepartmentRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String departmentUuid; private DepartmentUpdateRequestBody departmentUpdateRequestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PutDepartmentsRequestBuilder { public PutDepartmentsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutDepartmentsRequestBuilder departmentUuid(String departmentUuid) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); - this.departmentUuid = departmentUuid; - return this; - } public PutDepartmentsRequestBuilder xGustoAPIVersion(PutDepartmentsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public PutDepartmentsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String departmentUuid; private DepartmentPeopleRequestBody departmentPeopleRequestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PutRemovePeopleFromDepartmentRequestBuilder { public PutRemovePeopleFromDepartmentRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutRemovePeopleFromDepartmentRequestBuilder departmentUuid(String departmentUuid) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); - this.departmentUuid = departmentUuid; - return this; - } public PutRemovePeopleFromDepartmentRequestBuilder xGustoAPIVersion(PutRemovePeopleFromDepartmentHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public PutRemovePeopleFromDepartmentRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String companyId; private FederalTaxDetailsUpdate federalTaxDetailsUpdate; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PutV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder { public PutV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } public PutV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder xGustoAPIVersion(PutV1CompaniesCompanyIdFederalTaxDetailsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public PutV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder xGustoAPIVersion(O return this; } + public PutV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder companyId(String companyId) { + Utils.checkNotNull(companyId, "companyId"); + this.companyId = companyId; + return this; + } + public PutV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder federalTaxDetailsUpdate(FederalTaxDetailsUpdate federalTaxDetailsUpdate) { Utils.checkNotNull(federalTaxDetailsUpdate, "federalTaxDetailsUpdate"); this.federalTaxDetailsUpdate = federalTaxDetailsUpdate; @@ -63,8 +63,8 @@ private PutV1CompaniesCompanyIdFederalTaxDetailsRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PutV1CompaniesCompanyIdFederalTaxDetailsRequest request = new PutV1CompaniesCompanyIdFederalTaxDetailsRequest(companyId, - xGustoAPIVersion, + PutV1CompaniesCompanyIdFederalTaxDetailsRequest request = new PutV1CompaniesCompanyIdFederalTaxDetailsRequest(xGustoAPIVersion, + companyId, federalTaxDetailsUpdate); return request; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder.java index 922e27399..d8fa575c9 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder.java @@ -20,12 +20,12 @@ public class PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder { - private String companyUuid; - private String signatoryUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String companyUuid; + private String signatoryUuid; private SignatoryUpdateRequest signatoryUpdateRequest; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -33,18 +33,6 @@ public class PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder { public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder signatoryUuid(String signatoryUuid) { - Utils.checkNotNull(signatoryUuid, "signatoryUuid"); - this.signatoryUuid = signatoryUuid; - return this; - } public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder xGustoAPIVersion(PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -58,6 +46,18 @@ public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder xGustoAPI return this; } + public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder signatoryUuid(String signatoryUuid) { + Utils.checkNotNull(signatoryUuid, "signatoryUuid"); + this.signatoryUuid = signatoryUuid; + return this; + } + public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder signatoryUpdateRequest(SignatoryUpdateRequest signatoryUpdateRequest) { Utils.checkNotNull(signatoryUpdateRequest, "signatoryUpdateRequest"); this.signatoryUpdateRequest = signatoryUpdateRequest; @@ -70,9 +70,9 @@ private PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest buildRequest() xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest request = new PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest(companyUuid, + PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest request = new PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest(xGustoAPIVersion, + companyUuid, signatoryUuid, - xGustoAPIVersion, signatoryUpdateRequest); return request; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder.java index 004af5c90..97c39fa81 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder.java @@ -20,12 +20,12 @@ public class PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder { - private String companyUuid; - private String state; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String companyUuid; + private String state; private PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody requestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -33,18 +33,6 @@ public class PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder { public PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - public PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder state(String state) { - Utils.checkNotNull(state, "state"); - this.state = state; - return this; - } public PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder xGustoAPIVersion(PutV1CompaniesCompanyUuidTaxRequirementsStateHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -58,6 +46,18 @@ public PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder xGustoAPIVers return this; } + public PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + public PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder state(String state) { + Utils.checkNotNull(state, "state"); + this.state = state; + return this; + } + public PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder requestBody(PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); this.requestBody = requestBody; @@ -70,9 +70,9 @@ private PutV1CompaniesCompanyUuidTaxRequirementsStateRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PutV1CompaniesCompanyUuidTaxRequirementsStateRequest request = new PutV1CompaniesCompanyUuidTaxRequirementsStateRequest(companyUuid, + PutV1CompaniesCompanyUuidTaxRequirementsStateRequest request = new PutV1CompaniesCompanyUuidTaxRequirementsStateRequest(xGustoAPIVersion, + companyUuid, state, - xGustoAPIVersion, requestBody); return request; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PutV1CompaniesRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PutV1CompaniesRequestBuilder.java index b0cae2b5f..6cb6631de 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PutV1CompaniesRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PutV1CompaniesRequestBuilder.java @@ -20,11 +20,11 @@ public class PutV1CompaniesRequestBuilder { - private String companyId; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String companyId; private PutV1CompaniesRequestBody requestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PutV1CompaniesRequestBuilder { public PutV1CompaniesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutV1CompaniesRequestBuilder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } public PutV1CompaniesRequestBuilder xGustoAPIVersion(PutV1CompaniesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public PutV1CompaniesRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String companyId; private CompanyIndustrySelectionRequiredBody companyIndustrySelectionRequiredBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PutV1CompanyIndustryRequestBuilder { public PutV1CompanyIndustryRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutV1CompanyIndustryRequestBuilder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } public PutV1CompanyIndustryRequestBuilder xGustoAPIVersion(PutV1CompanyIndustryHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public PutV1CompanyIndustryRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String contractorPaymentGroupUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequestBuilder contractorPaymentGroupUuid(String contractorPaymentGroupUuid) { - Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); - this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; - return this; - } public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequestBuilder xGustoAPIVersion(PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequestBuilder xG return this; } + public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequestBuilder contractorPaymentGroupUuid(String contractorPaymentGroupUuid) { + Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); + this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; + return this; + } + private PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest request = new PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest(contractorPaymentGroupUuid, - xGustoAPIVersion); + PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest request = new PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest(xGustoAPIVersion, + contractorPaymentGroupUuid); return request; } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PutV1JobsJobIdRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PutV1JobsJobIdRequestBuilder.java index 465a6a885..dafcb3d71 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PutV1JobsJobIdRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PutV1JobsJobIdRequestBuilder.java @@ -20,11 +20,11 @@ public class PutV1JobsJobIdRequestBuilder { - private String jobId; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String jobId; private JobsUpdateRequestBody jobsUpdateRequestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PutV1JobsJobIdRequestBuilder { public PutV1JobsJobIdRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutV1JobsJobIdRequestBuilder jobId(String jobId) { - Utils.checkNotNull(jobId, "jobId"); - this.jobId = jobId; - return this; - } public PutV1JobsJobIdRequestBuilder xGustoAPIVersion(PutV1JobsJobIdHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public PutV1JobsJobIdRequestBuilder xGustoAPIVersion(Optional rawResponse; /** - * successful + * successful blank title on a non-primary active job */ private Optional job; @@ -87,7 +87,7 @@ public HttpResponse rawResponse() { } /** - * successful + * successful blank title on a non-primary active job */ @SuppressWarnings("unchecked") @JsonIgnore @@ -128,7 +128,7 @@ public PutV1JobsJobIdResponse withRawResponse(HttpResponse rawResponse) { } /** - * successful + * successful blank title on a non-primary active job */ public PutV1JobsJobIdResponse withJob(Job job) { Utils.checkNotNull(job, "job"); @@ -138,7 +138,7 @@ public PutV1JobsJobIdResponse withJob(Job job) { /** - * successful + * successful blank title on a non-primary active job */ public PutV1JobsJobIdResponse withJob(Optional job) { Utils.checkNotNull(job, "job"); @@ -225,7 +225,7 @@ public Builder rawResponse(HttpResponse rawResponse) { /** - * successful + * successful blank title on a non-primary active job */ public Builder job(Job job) { Utils.checkNotNull(job, "job"); @@ -234,7 +234,7 @@ public Builder job(Job job) { } /** - * successful + * successful blank title on a non-primary active job */ public Builder job(Optional job) { Utils.checkNotNull(job, "job"); diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder.java new file mode 100644 index 000000000..aa027a1a8 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder.java @@ -0,0 +1,87 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations.async; + +import static com.gusto.embedded_api.operations.Operations.AsyncRequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api.SDKConfiguration; +import com.gusto.embedded_api.models.operations.PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion; +import com.gusto.embedded_api.models.operations.PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest; +import com.gusto.embedded_api.models.operations.PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity; +import com.gusto.embedded_api.operations.PutV1PartnerManagedCompaniesCompanyUuidDisassociate; +import com.gusto.embedded_api.utils.Headers; +import com.gusto.embedded_api.utils.LazySingletonValue; +import com.gusto.embedded_api.utils.Utils; +import java.lang.String; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; + +public class PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder { + + private PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity security; + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2025-06-15\"", + new TypeReference>() {}); + private String companyUuid; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder security(PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity security) { + Utils.checkNotNull(security, "security"); + this.security = security; + return this; + } + + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder xGustoAPIVersion(PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + + private PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest request = new PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest(xGustoAPIVersion, + companyUuid); + + return request; + } + + public CompletableFuture call() { + + AsyncRequestOperation operation + = new PutV1PartnerManagedCompaniesCompanyUuidDisassociate.Async(sdkConfiguration, security, _headers); + PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest request = buildRequest(); + + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2025-06-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse.java new file mode 100644 index 000000000..31c06970e --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse.java @@ -0,0 +1,253 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.models.operations.async; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api.models.components.PartnerManagedCompanyDisassociateResponse; +import com.gusto.embedded_api.utils.AsyncResponse; +import com.gusto.embedded_api.utils.Blob; +import com.gusto.embedded_api.utils.Utils; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.Optional; + + +public class PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse implements AsyncResponse { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * OK + */ + private Optional partnerManagedCompanyDisassociateResponse; + + @JsonCreator + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional partnerManagedCompanyDisassociateResponse) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(partnerManagedCompanyDisassociateResponse, "partnerManagedCompanyDisassociateResponse"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.partnerManagedCompanyDisassociateResponse = partnerManagedCompanyDisassociateResponse; + } + + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * OK + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional partnerManagedCompanyDisassociateResponse() { + return (Optional) partnerManagedCompanyDisassociateResponse; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * OK + */ + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse withPartnerManagedCompanyDisassociateResponse(PartnerManagedCompanyDisassociateResponse partnerManagedCompanyDisassociateResponse) { + Utils.checkNotNull(partnerManagedCompanyDisassociateResponse, "partnerManagedCompanyDisassociateResponse"); + this.partnerManagedCompanyDisassociateResponse = Optional.ofNullable(partnerManagedCompanyDisassociateResponse); + return this; + } + + + /** + * OK + */ + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse withPartnerManagedCompanyDisassociateResponse(Optional partnerManagedCompanyDisassociateResponse) { + Utils.checkNotNull(partnerManagedCompanyDisassociateResponse, "partnerManagedCompanyDisassociateResponse"); + this.partnerManagedCompanyDisassociateResponse = partnerManagedCompanyDisassociateResponse; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse other = (PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.partnerManagedCompanyDisassociateResponse, other.partnerManagedCompanyDisassociateResponse); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + partnerManagedCompanyDisassociateResponse); + } + + @Override + public String toString() { + return Utils.toString(PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "partnerManagedCompanyDisassociateResponse", partnerManagedCompanyDisassociateResponse); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional partnerManagedCompanyDisassociateResponse = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * OK + */ + public Builder partnerManagedCompanyDisassociateResponse(PartnerManagedCompanyDisassociateResponse partnerManagedCompanyDisassociateResponse) { + Utils.checkNotNull(partnerManagedCompanyDisassociateResponse, "partnerManagedCompanyDisassociateResponse"); + this.partnerManagedCompanyDisassociateResponse = Optional.ofNullable(partnerManagedCompanyDisassociateResponse); + return this; + } + + /** + * OK + */ + public Builder partnerManagedCompanyDisassociateResponse(Optional partnerManagedCompanyDisassociateResponse) { + Utils.checkNotNull(partnerManagedCompanyDisassociateResponse, "partnerManagedCompanyDisassociateResponse"); + this.partnerManagedCompanyDisassociateResponse = partnerManagedCompanyDisassociateResponse; + return this; + } + + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse build() { + + return new PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse( + contentType, statusCode, rawResponse, + partnerManagedCompanyDisassociateResponse); + } + + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder.java index 5b691c52a..5a8025a4b 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder.java @@ -20,11 +20,11 @@ public class PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder { - private String companyUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String companyUuid; private PartnerManagedCompanyMigrateRequest partnerManagedCompanyMigrateRequest; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder { public PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder xGustoAPIVersion(PutV1PartnerManagedCompaniesCompanyUuidMigrateHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder xGustoAPIVer return this; } + public PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + public PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder partnerManagedCompanyMigrateRequest(PartnerManagedCompanyMigrateRequest partnerManagedCompanyMigrateRequest) { Utils.checkNotNull(partnerManagedCompanyMigrateRequest, "partnerManagedCompanyMigrateRequest"); this.partnerManagedCompanyMigrateRequest = partnerManagedCompanyMigrateRequest; @@ -63,8 +63,8 @@ private PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest request = new PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest(companyUuid, - xGustoAPIVersion, + PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest request = new PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest(xGustoAPIVersion, + companyUuid, partnerManagedCompanyMigrateRequest); return request; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PutV1VerifyWebhookSubscriptionUuidRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PutV1VerifyWebhookSubscriptionUuidRequestBuilder.java index 6a1c1d6f0..f3e5a6910 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PutV1VerifyWebhookSubscriptionUuidRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PutV1VerifyWebhookSubscriptionUuidRequestBuilder.java @@ -22,11 +22,11 @@ public class PutV1VerifyWebhookSubscriptionUuidRequestBuilder { private PutV1VerifyWebhookSubscriptionUuidSecurity security; - private String webhookSubscriptionUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String webhookSubscriptionUuid; private PutV1VerifyWebhookSubscriptionUuidRequestBody requestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -40,12 +40,6 @@ public PutV1VerifyWebhookSubscriptionUuidRequestBuilder security(PutV1VerifyWebh this.security = security; return this; } - - public PutV1VerifyWebhookSubscriptionUuidRequestBuilder webhookSubscriptionUuid(String webhookSubscriptionUuid) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; - return this; - } public PutV1VerifyWebhookSubscriptionUuidRequestBuilder xGustoAPIVersion(PutV1VerifyWebhookSubscriptionUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -59,6 +53,12 @@ public PutV1VerifyWebhookSubscriptionUuidRequestBuilder xGustoAPIVersion(Optiona return this; } + public PutV1VerifyWebhookSubscriptionUuidRequestBuilder webhookSubscriptionUuid(String webhookSubscriptionUuid) { + Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); + this.webhookSubscriptionUuid = webhookSubscriptionUuid; + return this; + } + public PutV1VerifyWebhookSubscriptionUuidRequestBuilder requestBody(PutV1VerifyWebhookSubscriptionUuidRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); this.requestBody = requestBody; @@ -71,8 +71,8 @@ private PutV1VerifyWebhookSubscriptionUuidRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PutV1VerifyWebhookSubscriptionUuidRequest request = new PutV1VerifyWebhookSubscriptionUuidRequest(webhookSubscriptionUuid, - xGustoAPIVersion, + PutV1VerifyWebhookSubscriptionUuidRequest request = new PutV1VerifyWebhookSubscriptionUuidRequest(xGustoAPIVersion, + webhookSubscriptionUuid, requestBody); return request; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PutV1WebhookSubscriptionUuidRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PutV1WebhookSubscriptionUuidRequestBuilder.java index 0cabd144e..8827bd2cd 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PutV1WebhookSubscriptionUuidRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PutV1WebhookSubscriptionUuidRequestBuilder.java @@ -22,11 +22,11 @@ public class PutV1WebhookSubscriptionUuidRequestBuilder { private PutV1WebhookSubscriptionUuidSecurity security; - private String webhookSubscriptionUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String webhookSubscriptionUuid; private PutV1WebhookSubscriptionUuidRequestBody requestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -40,12 +40,6 @@ public PutV1WebhookSubscriptionUuidRequestBuilder security(PutV1WebhookSubscript this.security = security; return this; } - - public PutV1WebhookSubscriptionUuidRequestBuilder webhookSubscriptionUuid(String webhookSubscriptionUuid) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; - return this; - } public PutV1WebhookSubscriptionUuidRequestBuilder xGustoAPIVersion(PutV1WebhookSubscriptionUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -59,6 +53,12 @@ public PutV1WebhookSubscriptionUuidRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String workAddressUuid; private PutV1WorkAddressesWorkAddressUuidRequestBody requestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PutV1WorkAddressesWorkAddressUuidRequestBuilder { public PutV1WorkAddressesWorkAddressUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutV1WorkAddressesWorkAddressUuidRequestBuilder workAddressUuid(String workAddressUuid) { - Utils.checkNotNull(workAddressUuid, "workAddressUuid"); - this.workAddressUuid = workAddressUuid; - return this; - } public PutV1WorkAddressesWorkAddressUuidRequestBuilder xGustoAPIVersion(PutV1WorkAddressesWorkAddressUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public PutV1WorkAddressesWorkAddressUuidRequestBuilder xGustoAPIVersion(Optional return this; } + public PutV1WorkAddressesWorkAddressUuidRequestBuilder workAddressUuid(String workAddressUuid) { + Utils.checkNotNull(workAddressUuid, "workAddressUuid"); + this.workAddressUuid = workAddressUuid; + return this; + } + public PutV1WorkAddressesWorkAddressUuidRequestBuilder requestBody(PutV1WorkAddressesWorkAddressUuidRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); this.requestBody = requestBody; @@ -63,8 +63,8 @@ private PutV1WorkAddressesWorkAddressUuidRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PutV1WorkAddressesWorkAddressUuidRequest request = new PutV1WorkAddressesWorkAddressUuidRequest(workAddressUuid, - xGustoAPIVersion, + PutV1WorkAddressesWorkAddressUuidRequest request = new PutV1WorkAddressesWorkAddressUuidRequest(xGustoAPIVersion, + workAddressUuid, requestBody); return request; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PutWireInRequestsWireInRequestUuidRequestBuilder.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PutWireInRequestsWireInRequestUuidRequestBuilder.java index a0f913368..ab13834b3 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PutWireInRequestsWireInRequestUuidRequestBuilder.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/models/operations/async/PutWireInRequestsWireInRequestUuidRequestBuilder.java @@ -20,11 +20,11 @@ public class PutWireInRequestsWireInRequestUuidRequestBuilder { - private String wireInRequestUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-06-15\"", new TypeReference>() {}); + private String wireInRequestUuid; private WireInRequestUpdateRequestBody wireInRequestUpdateRequestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PutWireInRequestsWireInRequestUuidRequestBuilder { public PutWireInRequestsWireInRequestUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutWireInRequestsWireInRequestUuidRequestBuilder wireInRequestUuid(String wireInRequestUuid) { - Utils.checkNotNull(wireInRequestUuid, "wireInRequestUuid"); - this.wireInRequestUuid = wireInRequestUuid; - return this; - } public PutWireInRequestsWireInRequestUuidRequestBuilder xGustoAPIVersion(PutWireInRequestsWireInRequestUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public PutWireInRequestsWireInRequestUuidRequestBuilder xGustoAPIVersion(Optiona return this; } + public PutWireInRequestsWireInRequestUuidRequestBuilder wireInRequestUuid(String wireInRequestUuid) { + Utils.checkNotNull(wireInRequestUuid, "wireInRequestUuid"); + this.wireInRequestUuid = wireInRequestUuid; + return this; + } + public PutWireInRequestsWireInRequestUuidRequestBuilder wireInRequestUpdateRequestBody(WireInRequestUpdateRequestBody wireInRequestUpdateRequestBody) { Utils.checkNotNull(wireInRequestUpdateRequestBody, "wireInRequestUpdateRequestBody"); this.wireInRequestUpdateRequestBody = wireInRequestUpdateRequestBody; @@ -63,8 +63,8 @@ private PutWireInRequestsWireInRequestUuidRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PutWireInRequestsWireInRequestUuidRequest request = new PutWireInRequestsWireInRequestUuidRequest(wireInRequestUuid, - xGustoAPIVersion, + PutWireInRequestsWireInRequestUuidRequest request = new PutWireInRequestsWireInRequestUuidRequest(xGustoAPIVersion, + wireInRequestUuid, wireInRequestUpdateRequestBody); return request; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitations.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitations.java new file mode 100644 index 000000000..5d5328848 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitations.java @@ -0,0 +1,268 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.operations; + +import static com.gusto.embedded_api.operations.Operations.RequestOperation; +import static com.gusto.embedded_api.utils.Exceptions.unchecked; +import static com.gusto.embedded_api.operations.Operations.AsyncRequestOperation; + +import com.gusto.embedded_api.SDKConfiguration; +import com.gusto.embedded_api.SecuritySource; +import com.gusto.embedded_api.models.errors.APIException; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.operations.DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest; +import com.gusto.embedded_api.models.operations.DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse; +import com.gusto.embedded_api.utils.Blob; +import com.gusto.embedded_api.utils.HTTPClient; +import com.gusto.embedded_api.utils.HTTPRequest; +import com.gusto.embedded_api.utils.Headers; +import com.gusto.embedded_api.utils.Hook.AfterErrorContextImpl; +import com.gusto.embedded_api.utils.Hook.AfterSuccessContextImpl; +import com.gusto.embedded_api.utils.Hook.BeforeRequestContextImpl; +import com.gusto.embedded_api.utils.Utils; +import java.io.InputStream; +import java.lang.Exception; +import java.lang.String; +import java.lang.Throwable; +import java.net.http.HttpRequest; +import java.net.http.HttpResponse; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; +import java.util.function.Function; + + +public class DeleteV1ContractorsContractorUuidMemberPortalInvitations { + + static abstract class Base { + final SDKConfiguration sdkConfiguration; + final String baseUrl; + final SecuritySource securitySource; + final HTTPClient client; + final Headers _headers; + + public Base(SDKConfiguration sdkConfiguration, Headers _headers) { + this.sdkConfiguration = sdkConfiguration; + this._headers =_headers; + this.baseUrl = this.sdkConfiguration.serverUrl(); + this.securitySource = this.sdkConfiguration.securitySource(); + this.client = this.sdkConfiguration.client(); + } + + Optional securitySource() { + return Optional.ofNullable(this.securitySource); + } + + BeforeRequestContextImpl createBeforeRequestContext() { + return new BeforeRequestContextImpl( + this.sdkConfiguration, + this.baseUrl, + "delete-v1-contractors-contractor_uuid-member_portal_invitations", + java.util.Optional.empty(), + securitySource()); + } + + AfterSuccessContextImpl createAfterSuccessContext() { + return new AfterSuccessContextImpl( + this.sdkConfiguration, + this.baseUrl, + "delete-v1-contractors-contractor_uuid-member_portal_invitations", + java.util.Optional.empty(), + securitySource()); + } + + AfterErrorContextImpl createAfterErrorContext() { + return new AfterErrorContextImpl( + this.sdkConfiguration, + this.baseUrl, + "delete-v1-contractors-contractor_uuid-member_portal_invitations", + java.util.Optional.empty(), + securitySource()); + } + HttpRequest buildRequest(T request, Class klass) throws Exception { + String url = Utils.generateURL( + klass, + this.baseUrl, + "/v1/contractors/{contractor_uuid}/member_portal_invitations", + request, null); + HTTPRequest req = new HTTPRequest(url, "DELETE"); + req.addHeader("Accept", "application/json") + .addHeader("user-agent", SDKConfiguration.USER_AGENT); + _headers.forEach((k, list) -> list.forEach(v -> req.addHeader(k, v))); + req.addHeaders(Utils.getHeadersFromMetadata(request, null)); + Utils.configureSecurity(req, this.sdkConfiguration.securitySource().getSecurity(), "companyAccessAuth"); + + return req.build(); + } + } + + public static class Sync extends Base + implements RequestOperation { + public Sync(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private HttpRequest onBuildRequest(DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest request) throws Exception { + HttpRequest req = buildRequest(request, DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest.class); + return sdkConfiguration.hooks().beforeRequest(createBeforeRequestContext(), req); + } + + private HttpResponse onError(HttpResponse response, Exception error) throws Exception { + return sdkConfiguration.hooks().afterError( + createAfterErrorContext(), + Optional.ofNullable(response), + Optional.ofNullable(error)); + } + + private HttpResponse onSuccess(HttpResponse response) throws Exception { + return sdkConfiguration.hooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public HttpResponse doRequest(DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest request) { + HttpRequest r = unchecked(() -> onBuildRequest(request)).get(); + HttpResponse httpRes; + try { + httpRes = client.send(r); + if (Utils.statusCodeMatches(httpRes.statusCode(), "4XX", "5XX")) { + httpRes = onError(httpRes, null); + } else { + httpRes = onSuccess(httpRes); + } + } catch (Exception e) { + httpRes = unchecked(() -> onError(null, e)).get(); + } + + return httpRes; + } + + + @Override + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse handleResponse(HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse.Builder resBuilder = + DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "204")) { + // no content + return res; + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw NotFoundErrorObject.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw UnprocessableEntityError.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + throw APIException.from("API error occurred", response); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + throw APIException.from("API error occurred", response); + } + throw APIException.from("Unexpected status code received: " + response.statusCode(), response); + } + } + public static class Async extends Base + implements AsyncRequestOperation { + + public Async(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private CompletableFuture onBuildRequest(DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest request) throws Exception { + HttpRequest req = buildRequest(request, DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest.class); + return this.sdkConfiguration.asyncHooks().beforeRequest(createBeforeRequestContext(), req); + } + + private CompletableFuture> onError(HttpResponse response, Throwable error) { + return this.sdkConfiguration.asyncHooks().afterError(createAfterErrorContext(), response, error); + } + + private CompletableFuture> onSuccess(HttpResponse response) { + return this.sdkConfiguration.asyncHooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public CompletableFuture> doRequest(DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest request) { + return unchecked(() -> onBuildRequest(request)).get().thenCompose(client::sendAsync) + .handle((resp, err) -> { + if (err != null) { + return onError(null, err); + } + if (Utils.statusCodeMatches(resp.statusCode(), "4XX", "5XX")) { + return onError(resp, null); + } + return CompletableFuture.completedFuture(resp); + }) + .thenCompose(Function.identity()) + .thenCompose(this::onSuccess); + } + + @Override + public CompletableFuture handleResponse( + HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + com.gusto.embedded_api.models.operations.async.DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse.Builder resBuilder = + com.gusto.embedded_api.models.operations.async.DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + com.gusto.embedded_api.models.operations.async.DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "204")) { + // no content + return CompletableFuture.completedFuture(res); + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return NotFoundErrorObject.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return UnprocessableEntityError.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + return Utils.createAsyncApiError(response, "Unexpected status code received: " + response.statusCode()); + } + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/operations/DeleteV1ContractorsContractorUuidRehire.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/operations/DeleteV1ContractorsContractorUuidRehire.java index 2a570888b..798e2d475 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/operations/DeleteV1ContractorsContractorUuidRehire.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/operations/DeleteV1ContractorsContractorUuidRehire.java @@ -10,6 +10,7 @@ import com.gusto.embedded_api.SDKConfiguration; import com.gusto.embedded_api.SecuritySource; import com.gusto.embedded_api.models.errors.APIException; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; import com.gusto.embedded_api.models.operations.DeleteV1ContractorsContractorUuidRehireRequest; import com.gusto.embedded_api.models.operations.DeleteV1ContractorsContractorUuidRehireResponse; import com.gusto.embedded_api.utils.Blob; @@ -85,7 +86,7 @@ HttpRequest buildRequest(T request, Class klass) throws Exception { "/v1/contractors/{contractor_uuid}/rehire", request, null); HTTPRequest req = new HTTPRequest(url, "DELETE"); - req.addHeader("Accept", "*/*") + req.addHeader("Accept", "application/json") .addHeader("user-agent", SDKConfiguration.USER_AGENT); _headers.forEach((k, list) -> list.forEach(v -> req.addHeader(k, v))); req.addHeaders(Utils.getHeadersFromMetadata(request, null)); @@ -155,7 +156,14 @@ public DeleteV1ContractorsContractorUuidRehireResponse handleResponse(HttpRespon // no content return res; } - if (Utils.statusCodeMatches(response.statusCode(), "422", "4XX")) { + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw UnprocessableEntityError.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { // no content throw APIException.from("API error occurred", response); } @@ -222,7 +230,15 @@ public CompletableFutureHttpRequest buildRequest(T request, Class klass) throws Exception { "/v1/contractors/{contractor_uuid}/termination", request, null); HTTPRequest req = new HTTPRequest(url, "DELETE"); - req.addHeader("Accept", "*/*") + req.addHeader("Accept", "application/json") .addHeader("user-agent", SDKConfiguration.USER_AGENT); _headers.forEach((k, list) -> list.forEach(v -> req.addHeader(k, v))); req.addHeaders(Utils.getHeadersFromMetadata(request, null)); @@ -155,7 +156,14 @@ public DeleteV1ContractorsContractorUuidTerminationResponse handleResponse(HttpR // no content return res; } - if (Utils.statusCodeMatches(response.statusCode(), "422", "4XX")) { + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw UnprocessableEntityError.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { // no content throw APIException.from("API error occurred", response); } @@ -222,7 +230,15 @@ public CompletableFuture securitySource() { + return Optional.ofNullable(this.securitySource); + } + + BeforeRequestContextImpl createBeforeRequestContext() { + return new BeforeRequestContextImpl( + this.sdkConfiguration, + this.baseUrl, + "delete-v1-employees-employee_id-member_portal_invitations", + java.util.Optional.empty(), + securitySource()); + } + + AfterSuccessContextImpl createAfterSuccessContext() { + return new AfterSuccessContextImpl( + this.sdkConfiguration, + this.baseUrl, + "delete-v1-employees-employee_id-member_portal_invitations", + java.util.Optional.empty(), + securitySource()); + } + + AfterErrorContextImpl createAfterErrorContext() { + return new AfterErrorContextImpl( + this.sdkConfiguration, + this.baseUrl, + "delete-v1-employees-employee_id-member_portal_invitations", + java.util.Optional.empty(), + securitySource()); + } + HttpRequest buildRequest(T request, Class klass) throws Exception { + String url = Utils.generateURL( + klass, + this.baseUrl, + "/v1/employees/{employee_id}/member_portal_invitations", + request, null); + HTTPRequest req = new HTTPRequest(url, "DELETE"); + req.addHeader("Accept", "application/json") + .addHeader("user-agent", SDKConfiguration.USER_AGENT); + _headers.forEach((k, list) -> list.forEach(v -> req.addHeader(k, v))); + req.addHeaders(Utils.getHeadersFromMetadata(request, null)); + Utils.configureSecurity(req, this.sdkConfiguration.securitySource().getSecurity(), "companyAccessAuth"); + + return req.build(); + } + } + + public static class Sync extends Base + implements RequestOperation { + public Sync(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private HttpRequest onBuildRequest(DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest request) throws Exception { + HttpRequest req = buildRequest(request, DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest.class); + return sdkConfiguration.hooks().beforeRequest(createBeforeRequestContext(), req); + } + + private HttpResponse onError(HttpResponse response, Exception error) throws Exception { + return sdkConfiguration.hooks().afterError( + createAfterErrorContext(), + Optional.ofNullable(response), + Optional.ofNullable(error)); + } + + private HttpResponse onSuccess(HttpResponse response) throws Exception { + return sdkConfiguration.hooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public HttpResponse doRequest(DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest request) { + HttpRequest r = unchecked(() -> onBuildRequest(request)).get(); + HttpResponse httpRes; + try { + httpRes = client.send(r); + if (Utils.statusCodeMatches(httpRes.statusCode(), "4XX", "5XX")) { + httpRes = onError(httpRes, null); + } else { + httpRes = onSuccess(httpRes); + } + } catch (Exception e) { + httpRes = unchecked(() -> onError(null, e)).get(); + } + + return httpRes; + } + + + @Override + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse handleResponse(HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse.Builder resBuilder = + DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "204")) { + // no content + return res; + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw NotFoundErrorObject.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw UnprocessableEntityError.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + throw APIException.from("API error occurred", response); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + throw APIException.from("API error occurred", response); + } + throw APIException.from("Unexpected status code received: " + response.statusCode(), response); + } + } + public static class Async extends Base + implements AsyncRequestOperation { + + public Async(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private CompletableFuture onBuildRequest(DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest request) throws Exception { + HttpRequest req = buildRequest(request, DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest.class); + return this.sdkConfiguration.asyncHooks().beforeRequest(createBeforeRequestContext(), req); + } + + private CompletableFuture> onError(HttpResponse response, Throwable error) { + return this.sdkConfiguration.asyncHooks().afterError(createAfterErrorContext(), response, error); + } + + private CompletableFuture> onSuccess(HttpResponse response) { + return this.sdkConfiguration.asyncHooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public CompletableFuture> doRequest(DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest request) { + return unchecked(() -> onBuildRequest(request)).get().thenCompose(client::sendAsync) + .handle((resp, err) -> { + if (err != null) { + return onError(null, err); + } + if (Utils.statusCodeMatches(resp.statusCode(), "4XX", "5XX")) { + return onError(resp, null); + } + return CompletableFuture.completedFuture(resp); + }) + .thenCompose(Function.identity()) + .thenCompose(this::onSuccess); + } + + @Override + public CompletableFuture handleResponse( + HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + com.gusto.embedded_api.models.operations.async.DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse.Builder resBuilder = + com.gusto.embedded_api.models.operations.async.DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + com.gusto.embedded_api.models.operations.async.DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "204")) { + // no content + return CompletableFuture.completedFuture(res); + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return NotFoundErrorObject.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return UnprocessableEntityError.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + return Utils.createAsyncApiError(response, "Unexpected status code received: " + response.statusCode()); + } + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/operations/GetReverseWireTransactions.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/operations/GetReverseWireTransactions.java new file mode 100644 index 000000000..9596c0560 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/operations/GetReverseWireTransactions.java @@ -0,0 +1,267 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.operations; + +import static com.gusto.embedded_api.operations.Operations.RequestOperation; +import static com.gusto.embedded_api.utils.Exceptions.unchecked; +import static com.gusto.embedded_api.operations.Operations.AsyncRequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api.SDKConfiguration; +import com.gusto.embedded_api.SecuritySource; +import com.gusto.embedded_api.models.components.ReverseWireTransaction; +import com.gusto.embedded_api.models.errors.APIException; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.operations.GetReverseWireTransactionsRequest; +import com.gusto.embedded_api.models.operations.GetReverseWireTransactionsResponse; +import com.gusto.embedded_api.utils.Blob; +import com.gusto.embedded_api.utils.HTTPClient; +import com.gusto.embedded_api.utils.HTTPRequest; +import com.gusto.embedded_api.utils.Headers; +import com.gusto.embedded_api.utils.Hook.AfterErrorContextImpl; +import com.gusto.embedded_api.utils.Hook.AfterSuccessContextImpl; +import com.gusto.embedded_api.utils.Hook.BeforeRequestContextImpl; +import com.gusto.embedded_api.utils.Utils; +import java.io.InputStream; +import java.lang.Exception; +import java.lang.String; +import java.lang.Throwable; +import java.net.http.HttpRequest; +import java.net.http.HttpResponse; +import java.util.List; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; +import java.util.function.Function; + + +public class GetReverseWireTransactions { + + static abstract class Base { + final SDKConfiguration sdkConfiguration; + final String baseUrl; + final SecuritySource securitySource; + final HTTPClient client; + final Headers _headers; + + public Base(SDKConfiguration sdkConfiguration, Headers _headers) { + this.sdkConfiguration = sdkConfiguration; + this._headers =_headers; + this.baseUrl = this.sdkConfiguration.serverUrl(); + this.securitySource = this.sdkConfiguration.securitySource(); + this.client = this.sdkConfiguration.client(); + } + + Optional securitySource() { + return Optional.ofNullable(this.securitySource); + } + + BeforeRequestContextImpl createBeforeRequestContext() { + return new BeforeRequestContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-reverse-wire-transactions", + java.util.Optional.empty(), + securitySource()); + } + + AfterSuccessContextImpl createAfterSuccessContext() { + return new AfterSuccessContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-reverse-wire-transactions", + java.util.Optional.empty(), + securitySource()); + } + + AfterErrorContextImpl createAfterErrorContext() { + return new AfterErrorContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-reverse-wire-transactions", + java.util.Optional.empty(), + securitySource()); + } + HttpRequest buildRequest(T request, Class klass) throws Exception { + String url = Utils.generateURL( + klass, + this.baseUrl, + "/v1/companies/{company_uuid}/reverse_wire_transactions", + request, null); + HTTPRequest req = new HTTPRequest(url, "GET"); + req.addHeader("Accept", "application/json") + .addHeader("user-agent", SDKConfiguration.USER_AGENT); + _headers.forEach((k, list) -> list.forEach(v -> req.addHeader(k, v))); + + req.addQueryParams(Utils.getQueryParams( + klass, + request, + null)); + req.addHeaders(Utils.getHeadersFromMetadata(request, null)); + Utils.configureSecurity(req, this.sdkConfiguration.securitySource().getSecurity(), "companyAccessAuth"); + + return req.build(); + } + } + + public static class Sync extends Base + implements RequestOperation { + public Sync(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private HttpRequest onBuildRequest(GetReverseWireTransactionsRequest request) throws Exception { + HttpRequest req = buildRequest(request, GetReverseWireTransactionsRequest.class); + return sdkConfiguration.hooks().beforeRequest(createBeforeRequestContext(), req); + } + + private HttpResponse onError(HttpResponse response, Exception error) throws Exception { + return sdkConfiguration.hooks().afterError( + createAfterErrorContext(), + Optional.ofNullable(response), + Optional.ofNullable(error)); + } + + private HttpResponse onSuccess(HttpResponse response) throws Exception { + return sdkConfiguration.hooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public HttpResponse doRequest(GetReverseWireTransactionsRequest request) { + HttpRequest r = unchecked(() -> onBuildRequest(request)).get(); + HttpResponse httpRes; + try { + httpRes = client.send(r); + if (Utils.statusCodeMatches(httpRes.statusCode(), "4XX", "5XX")) { + httpRes = onError(httpRes, null); + } else { + httpRes = onSuccess(httpRes); + } + } catch (Exception e) { + httpRes = unchecked(() -> onError(null, e)).get(); + } + + return httpRes; + } + + + @Override + public GetReverseWireTransactionsResponse handleResponse(HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + GetReverseWireTransactionsResponse.Builder resBuilder = + GetReverseWireTransactionsResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + GetReverseWireTransactionsResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "200")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return res.withReverseWireTransactionList(Utils.unmarshal(response, new TypeReference>() {})); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw NotFoundErrorObject.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + throw APIException.from("API error occurred", response); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + throw APIException.from("API error occurred", response); + } + throw APIException.from("Unexpected status code received: " + response.statusCode(), response); + } + } + public static class Async extends Base + implements AsyncRequestOperation { + + public Async(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private CompletableFuture onBuildRequest(GetReverseWireTransactionsRequest request) throws Exception { + HttpRequest req = buildRequest(request, GetReverseWireTransactionsRequest.class); + return this.sdkConfiguration.asyncHooks().beforeRequest(createBeforeRequestContext(), req); + } + + private CompletableFuture> onError(HttpResponse response, Throwable error) { + return this.sdkConfiguration.asyncHooks().afterError(createAfterErrorContext(), response, error); + } + + private CompletableFuture> onSuccess(HttpResponse response) { + return this.sdkConfiguration.asyncHooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public CompletableFuture> doRequest(GetReverseWireTransactionsRequest request) { + return unchecked(() -> onBuildRequest(request)).get().thenCompose(client::sendAsync) + .handle((resp, err) -> { + if (err != null) { + return onError(null, err); + } + if (Utils.statusCodeMatches(resp.statusCode(), "4XX", "5XX")) { + return onError(resp, null); + } + return CompletableFuture.completedFuture(resp); + }) + .thenCompose(Function.identity()) + .thenCompose(this::onSuccess); + } + + @Override + public CompletableFuture handleResponse( + HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + com.gusto.embedded_api.models.operations.async.GetReverseWireTransactionsResponse.Builder resBuilder = + com.gusto.embedded_api.models.operations.async.GetReverseWireTransactionsResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + com.gusto.embedded_api.models.operations.async.GetReverseWireTransactionsResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "200")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return Utils.unmarshalAsync(response, new TypeReference>() {}) + .thenApply(res::withReverseWireTransactionList); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return NotFoundErrorObject.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + return Utils.createAsyncApiError(response, "Unexpected status code received: " + response.statusCode()); + } + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/operations/GetTaxPayment.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/operations/GetTaxPayment.java new file mode 100644 index 000000000..7e3cf9f24 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/operations/GetTaxPayment.java @@ -0,0 +1,261 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.operations; + +import static com.gusto.embedded_api.operations.Operations.RequestOperation; +import static com.gusto.embedded_api.utils.Exceptions.unchecked; +import static com.gusto.embedded_api.operations.Operations.AsyncRequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api.SDKConfiguration; +import com.gusto.embedded_api.SecuritySource; +import com.gusto.embedded_api.models.components.TaxPayment; +import com.gusto.embedded_api.models.errors.APIException; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.operations.GetTaxPaymentRequest; +import com.gusto.embedded_api.models.operations.GetTaxPaymentResponse; +import com.gusto.embedded_api.utils.Blob; +import com.gusto.embedded_api.utils.HTTPClient; +import com.gusto.embedded_api.utils.HTTPRequest; +import com.gusto.embedded_api.utils.Headers; +import com.gusto.embedded_api.utils.Hook.AfterErrorContextImpl; +import com.gusto.embedded_api.utils.Hook.AfterSuccessContextImpl; +import com.gusto.embedded_api.utils.Hook.BeforeRequestContextImpl; +import com.gusto.embedded_api.utils.Utils; +import java.io.InputStream; +import java.lang.Exception; +import java.lang.String; +import java.lang.Throwable; +import java.net.http.HttpRequest; +import java.net.http.HttpResponse; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; +import java.util.function.Function; + + +public class GetTaxPayment { + + static abstract class Base { + final SDKConfiguration sdkConfiguration; + final String baseUrl; + final SecuritySource securitySource; + final HTTPClient client; + final Headers _headers; + + public Base(SDKConfiguration sdkConfiguration, Headers _headers) { + this.sdkConfiguration = sdkConfiguration; + this._headers =_headers; + this.baseUrl = this.sdkConfiguration.serverUrl(); + this.securitySource = this.sdkConfiguration.securitySource(); + this.client = this.sdkConfiguration.client(); + } + + Optional securitySource() { + return Optional.ofNullable(this.securitySource); + } + + BeforeRequestContextImpl createBeforeRequestContext() { + return new BeforeRequestContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-tax-payment", + java.util.Optional.empty(), + securitySource()); + } + + AfterSuccessContextImpl createAfterSuccessContext() { + return new AfterSuccessContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-tax-payment", + java.util.Optional.empty(), + securitySource()); + } + + AfterErrorContextImpl createAfterErrorContext() { + return new AfterErrorContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-tax-payment", + java.util.Optional.empty(), + securitySource()); + } + HttpRequest buildRequest(T request, Class klass) throws Exception { + String url = Utils.generateURL( + klass, + this.baseUrl, + "/v1/companies/{company_uuid}/tax_payments/{uuid}", + request, null); + HTTPRequest req = new HTTPRequest(url, "GET"); + req.addHeader("Accept", "application/json") + .addHeader("user-agent", SDKConfiguration.USER_AGENT); + _headers.forEach((k, list) -> list.forEach(v -> req.addHeader(k, v))); + req.addHeaders(Utils.getHeadersFromMetadata(request, null)); + Utils.configureSecurity(req, this.sdkConfiguration.securitySource().getSecurity(), "companyAccessAuth"); + + return req.build(); + } + } + + public static class Sync extends Base + implements RequestOperation { + public Sync(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private HttpRequest onBuildRequest(GetTaxPaymentRequest request) throws Exception { + HttpRequest req = buildRequest(request, GetTaxPaymentRequest.class); + return sdkConfiguration.hooks().beforeRequest(createBeforeRequestContext(), req); + } + + private HttpResponse onError(HttpResponse response, Exception error) throws Exception { + return sdkConfiguration.hooks().afterError( + createAfterErrorContext(), + Optional.ofNullable(response), + Optional.ofNullable(error)); + } + + private HttpResponse onSuccess(HttpResponse response) throws Exception { + return sdkConfiguration.hooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public HttpResponse doRequest(GetTaxPaymentRequest request) { + HttpRequest r = unchecked(() -> onBuildRequest(request)).get(); + HttpResponse httpRes; + try { + httpRes = client.send(r); + if (Utils.statusCodeMatches(httpRes.statusCode(), "4XX", "5XX")) { + httpRes = onError(httpRes, null); + } else { + httpRes = onSuccess(httpRes); + } + } catch (Exception e) { + httpRes = unchecked(() -> onError(null, e)).get(); + } + + return httpRes; + } + + + @Override + public GetTaxPaymentResponse handleResponse(HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + GetTaxPaymentResponse.Builder resBuilder = + GetTaxPaymentResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + GetTaxPaymentResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "200")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return res.withTaxPayment(Utils.unmarshal(response, new TypeReference() {})); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw NotFoundErrorObject.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + throw APIException.from("API error occurred", response); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + throw APIException.from("API error occurred", response); + } + throw APIException.from("Unexpected status code received: " + response.statusCode(), response); + } + } + public static class Async extends Base + implements AsyncRequestOperation { + + public Async(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private CompletableFuture onBuildRequest(GetTaxPaymentRequest request) throws Exception { + HttpRequest req = buildRequest(request, GetTaxPaymentRequest.class); + return this.sdkConfiguration.asyncHooks().beforeRequest(createBeforeRequestContext(), req); + } + + private CompletableFuture> onError(HttpResponse response, Throwable error) { + return this.sdkConfiguration.asyncHooks().afterError(createAfterErrorContext(), response, error); + } + + private CompletableFuture> onSuccess(HttpResponse response) { + return this.sdkConfiguration.asyncHooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public CompletableFuture> doRequest(GetTaxPaymentRequest request) { + return unchecked(() -> onBuildRequest(request)).get().thenCompose(client::sendAsync) + .handle((resp, err) -> { + if (err != null) { + return onError(null, err); + } + if (Utils.statusCodeMatches(resp.statusCode(), "4XX", "5XX")) { + return onError(resp, null); + } + return CompletableFuture.completedFuture(resp); + }) + .thenCompose(Function.identity()) + .thenCompose(this::onSuccess); + } + + @Override + public CompletableFuture handleResponse( + HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + com.gusto.embedded_api.models.operations.async.GetTaxPaymentResponse.Builder resBuilder = + com.gusto.embedded_api.models.operations.async.GetTaxPaymentResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + com.gusto.embedded_api.models.operations.async.GetTaxPaymentResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "200")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return Utils.unmarshalAsync(response, new TypeReference() {}) + .thenApply(res::withTaxPayment); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return NotFoundErrorObject.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + return Utils.createAsyncApiError(response, "Unexpected status code received: " + response.statusCode()); + } + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/operations/GetTaxPayments.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/operations/GetTaxPayments.java new file mode 100644 index 000000000..7ce705476 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/operations/GetTaxPayments.java @@ -0,0 +1,283 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.operations; + +import static com.gusto.embedded_api.operations.Operations.RequestOperation; +import static com.gusto.embedded_api.utils.Exceptions.unchecked; +import static com.gusto.embedded_api.operations.Operations.AsyncRequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api.SDKConfiguration; +import com.gusto.embedded_api.SecuritySource; +import com.gusto.embedded_api.models.components.TaxPayment; +import com.gusto.embedded_api.models.errors.APIException; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.operations.GetTaxPaymentsRequest; +import com.gusto.embedded_api.models.operations.GetTaxPaymentsResponse; +import com.gusto.embedded_api.utils.Blob; +import com.gusto.embedded_api.utils.HTTPClient; +import com.gusto.embedded_api.utils.HTTPRequest; +import com.gusto.embedded_api.utils.Headers; +import com.gusto.embedded_api.utils.Hook.AfterErrorContextImpl; +import com.gusto.embedded_api.utils.Hook.AfterSuccessContextImpl; +import com.gusto.embedded_api.utils.Hook.BeforeRequestContextImpl; +import com.gusto.embedded_api.utils.Utils; +import java.io.InputStream; +import java.lang.Exception; +import java.lang.String; +import java.lang.Throwable; +import java.net.http.HttpRequest; +import java.net.http.HttpResponse; +import java.util.List; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; +import java.util.function.Function; + + +public class GetTaxPayments { + + static abstract class Base { + final SDKConfiguration sdkConfiguration; + final String baseUrl; + final SecuritySource securitySource; + final HTTPClient client; + final Headers _headers; + + public Base(SDKConfiguration sdkConfiguration, Headers _headers) { + this.sdkConfiguration = sdkConfiguration; + this._headers =_headers; + this.baseUrl = this.sdkConfiguration.serverUrl(); + this.securitySource = this.sdkConfiguration.securitySource(); + this.client = this.sdkConfiguration.client(); + } + + Optional securitySource() { + return Optional.ofNullable(this.securitySource); + } + + BeforeRequestContextImpl createBeforeRequestContext() { + return new BeforeRequestContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-tax-payments", + java.util.Optional.empty(), + securitySource()); + } + + AfterSuccessContextImpl createAfterSuccessContext() { + return new AfterSuccessContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-tax-payments", + java.util.Optional.empty(), + securitySource()); + } + + AfterErrorContextImpl createAfterErrorContext() { + return new AfterErrorContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-tax-payments", + java.util.Optional.empty(), + securitySource()); + } + HttpRequest buildRequest(T request, Class klass) throws Exception { + String url = Utils.generateURL( + klass, + this.baseUrl, + "/v1/companies/{company_uuid}/tax_payments", + request, null); + HTTPRequest req = new HTTPRequest(url, "GET"); + req.addHeader("Accept", "application/json") + .addHeader("user-agent", SDKConfiguration.USER_AGENT); + _headers.forEach((k, list) -> list.forEach(v -> req.addHeader(k, v))); + + req.addQueryParams(Utils.getQueryParams( + klass, + request, + null)); + req.addHeaders(Utils.getHeadersFromMetadata(request, null)); + Utils.configureSecurity(req, this.sdkConfiguration.securitySource().getSecurity(), "companyAccessAuth"); + + return req.build(); + } + } + + public static class Sync extends Base + implements RequestOperation { + public Sync(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private HttpRequest onBuildRequest(GetTaxPaymentsRequest request) throws Exception { + HttpRequest req = buildRequest(request, GetTaxPaymentsRequest.class); + return sdkConfiguration.hooks().beforeRequest(createBeforeRequestContext(), req); + } + + private HttpResponse onError(HttpResponse response, Exception error) throws Exception { + return sdkConfiguration.hooks().afterError( + createAfterErrorContext(), + Optional.ofNullable(response), + Optional.ofNullable(error)); + } + + private HttpResponse onSuccess(HttpResponse response) throws Exception { + return sdkConfiguration.hooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public HttpResponse doRequest(GetTaxPaymentsRequest request) { + HttpRequest r = unchecked(() -> onBuildRequest(request)).get(); + HttpResponse httpRes; + try { + httpRes = client.send(r); + if (Utils.statusCodeMatches(httpRes.statusCode(), "4XX", "5XX")) { + httpRes = onError(httpRes, null); + } else { + httpRes = onSuccess(httpRes); + } + } catch (Exception e) { + httpRes = unchecked(() -> onError(null, e)).get(); + } + + return httpRes; + } + + + @Override + public GetTaxPaymentsResponse handleResponse(HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + GetTaxPaymentsResponse.Builder resBuilder = + GetTaxPaymentsResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + GetTaxPaymentsResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "200")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return res.withTaxPaymentList(Utils.unmarshal(response, new TypeReference>() {})); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw NotFoundErrorObject.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw UnprocessableEntityError.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + throw APIException.from("API error occurred", response); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + throw APIException.from("API error occurred", response); + } + throw APIException.from("Unexpected status code received: " + response.statusCode(), response); + } + } + public static class Async extends Base + implements AsyncRequestOperation { + + public Async(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private CompletableFuture onBuildRequest(GetTaxPaymentsRequest request) throws Exception { + HttpRequest req = buildRequest(request, GetTaxPaymentsRequest.class); + return this.sdkConfiguration.asyncHooks().beforeRequest(createBeforeRequestContext(), req); + } + + private CompletableFuture> onError(HttpResponse response, Throwable error) { + return this.sdkConfiguration.asyncHooks().afterError(createAfterErrorContext(), response, error); + } + + private CompletableFuture> onSuccess(HttpResponse response) { + return this.sdkConfiguration.asyncHooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public CompletableFuture> doRequest(GetTaxPaymentsRequest request) { + return unchecked(() -> onBuildRequest(request)).get().thenCompose(client::sendAsync) + .handle((resp, err) -> { + if (err != null) { + return onError(null, err); + } + if (Utils.statusCodeMatches(resp.statusCode(), "4XX", "5XX")) { + return onError(resp, null); + } + return CompletableFuture.completedFuture(resp); + }) + .thenCompose(Function.identity()) + .thenCompose(this::onSuccess); + } + + @Override + public CompletableFuture handleResponse( + HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + com.gusto.embedded_api.models.operations.async.GetTaxPaymentsResponse.Builder resBuilder = + com.gusto.embedded_api.models.operations.async.GetTaxPaymentsResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + com.gusto.embedded_api.models.operations.async.GetTaxPaymentsResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "200")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return Utils.unmarshalAsync(response, new TypeReference>() {}) + .thenApply(res::withTaxPaymentList); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return NotFoundErrorObject.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return UnprocessableEntityError.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + return Utils.createAsyncApiError(response, "Unexpected status code received: " + response.statusCode()); + } + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/operations/GetV1Benefits.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/operations/GetV1Benefits.java index 39956b249..9e7f17273 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/operations/GetV1Benefits.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/operations/GetV1Benefits.java @@ -154,7 +154,7 @@ public GetV1BenefitsResponse handleResponse(HttpResponse response) if (Utils.statusCodeMatches(response.statusCode(), "200")) { if (Utils.contentTypeMatches(contentType, "application/json")) { - return res.withSupportedBenefits(Utils.unmarshal(response, new TypeReference>() {})); + return res.withSupportedBenefitList(Utils.unmarshal(response, new TypeReference>() {})); } else { throw APIException.from("Unexpected content-type received: " + contentType, response); } @@ -225,7 +225,7 @@ public CompletableFuture>() {}) - .thenApply(res::withSupportedBenefits); + .thenApply(res::withSupportedBenefitList); } else { return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/operations/GetV1BulkReportsRequestUuid.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/operations/GetV1BulkReportsRequestUuid.java new file mode 100644 index 000000000..cf79e9bbb --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/operations/GetV1BulkReportsRequestUuid.java @@ -0,0 +1,275 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.operations; + +import static com.gusto.embedded_api.operations.Operations.RequestOperation; +import static com.gusto.embedded_api.utils.Exceptions.unchecked; +import static com.gusto.embedded_api.operations.Operations.AsyncRequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api.SDKConfiguration; +import com.gusto.embedded_api.SecuritySource; +import com.gusto.embedded_api.models.components.BulkReport; +import com.gusto.embedded_api.models.errors.APIException; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.operations.GetV1BulkReportsRequestUuidRequest; +import com.gusto.embedded_api.models.operations.GetV1BulkReportsRequestUuidResponse; +import com.gusto.embedded_api.models.operations.GetV1BulkReportsRequestUuidSecurity; +import com.gusto.embedded_api.utils.Blob; +import com.gusto.embedded_api.utils.HTTPClient; +import com.gusto.embedded_api.utils.HTTPRequest; +import com.gusto.embedded_api.utils.Headers; +import com.gusto.embedded_api.utils.Hook.AfterErrorContextImpl; +import com.gusto.embedded_api.utils.Hook.AfterSuccessContextImpl; +import com.gusto.embedded_api.utils.Hook.BeforeRequestContextImpl; +import com.gusto.embedded_api.utils.Utils; +import java.io.InputStream; +import java.lang.Exception; +import java.lang.String; +import java.lang.Throwable; +import java.net.http.HttpRequest; +import java.net.http.HttpResponse; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; +import java.util.function.Function; + + +public class GetV1BulkReportsRequestUuid { + + static abstract class Base { + final SDKConfiguration sdkConfiguration; + final String baseUrl; + final GetV1BulkReportsRequestUuidSecurity security; + final SecuritySource securitySource; + final HTTPClient client; + final Headers _headers; + + public Base( + SDKConfiguration sdkConfiguration, GetV1BulkReportsRequestUuidSecurity security, + Headers _headers) { + this.sdkConfiguration = sdkConfiguration; + this._headers =_headers; + this.baseUrl = this.sdkConfiguration.serverUrl(); + this.security = security; + // hooks will be passed method level security only + this.securitySource = SecuritySource.of(security); + this.client = this.sdkConfiguration.client(); + } + + Optional securitySource() { + return Optional.ofNullable(this.securitySource); + } + + BeforeRequestContextImpl createBeforeRequestContext() { + return new BeforeRequestContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-v1-bulk_reports-request_uuid", + java.util.Optional.empty(), + securitySource()); + } + + AfterSuccessContextImpl createAfterSuccessContext() { + return new AfterSuccessContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-v1-bulk_reports-request_uuid", + java.util.Optional.empty(), + securitySource()); + } + + AfterErrorContextImpl createAfterErrorContext() { + return new AfterErrorContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-v1-bulk_reports-request_uuid", + java.util.Optional.empty(), + securitySource()); + } + HttpRequest buildRequest(T request, Class klass) throws Exception { + String url = Utils.generateURL( + klass, + this.baseUrl, + "/v1/bulk_reports/{request_uuid}", + request, null); + HTTPRequest req = new HTTPRequest(url, "GET"); + req.addHeader("Accept", "application/json") + .addHeader("user-agent", SDKConfiguration.USER_AGENT); + _headers.forEach((k, list) -> list.forEach(v -> req.addHeader(k, v))); + req.addHeaders(Utils.getHeadersFromMetadata(request, null)); + Utils.configureSecurity(req, security); + + return req.build(); + } + } + + public static class Sync extends Base + implements RequestOperation { + public Sync( + SDKConfiguration sdkConfiguration, GetV1BulkReportsRequestUuidSecurity security, + Headers _headers) { + super( + sdkConfiguration, security, + _headers); + } + + private HttpRequest onBuildRequest(GetV1BulkReportsRequestUuidRequest request) throws Exception { + HttpRequest req = buildRequest(request, GetV1BulkReportsRequestUuidRequest.class); + return sdkConfiguration.hooks().beforeRequest(createBeforeRequestContext(), req); + } + + private HttpResponse onError(HttpResponse response, Exception error) throws Exception { + return sdkConfiguration.hooks().afterError( + createAfterErrorContext(), + Optional.ofNullable(response), + Optional.ofNullable(error)); + } + + private HttpResponse onSuccess(HttpResponse response) throws Exception { + return sdkConfiguration.hooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public HttpResponse doRequest(GetV1BulkReportsRequestUuidRequest request) { + HttpRequest r = unchecked(() -> onBuildRequest(request)).get(); + HttpResponse httpRes; + try { + httpRes = client.send(r); + if (Utils.statusCodeMatches(httpRes.statusCode(), "4XX", "5XX")) { + httpRes = onError(httpRes, null); + } else { + httpRes = onSuccess(httpRes); + } + } catch (Exception e) { + httpRes = unchecked(() -> onError(null, e)).get(); + } + + return httpRes; + } + + + @Override + public GetV1BulkReportsRequestUuidResponse handleResponse(HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + GetV1BulkReportsRequestUuidResponse.Builder resBuilder = + GetV1BulkReportsRequestUuidResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + GetV1BulkReportsRequestUuidResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "200")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return res.withBulkReport(Utils.unmarshal(response, new TypeReference() {})); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw NotFoundErrorObject.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + throw APIException.from("API error occurred", response); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + throw APIException.from("API error occurred", response); + } + throw APIException.from("Unexpected status code received: " + response.statusCode(), response); + } + } + public static class Async extends Base + implements AsyncRequestOperation { + + public Async( + SDKConfiguration sdkConfiguration, GetV1BulkReportsRequestUuidSecurity security, + Headers _headers) { + super( + sdkConfiguration, security, + _headers); + } + + private CompletableFuture onBuildRequest(GetV1BulkReportsRequestUuidRequest request) throws Exception { + HttpRequest req = buildRequest(request, GetV1BulkReportsRequestUuidRequest.class); + return this.sdkConfiguration.asyncHooks().beforeRequest(createBeforeRequestContext(), req); + } + + private CompletableFuture> onError(HttpResponse response, Throwable error) { + return this.sdkConfiguration.asyncHooks().afterError(createAfterErrorContext(), response, error); + } + + private CompletableFuture> onSuccess(HttpResponse response) { + return this.sdkConfiguration.asyncHooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public CompletableFuture> doRequest(GetV1BulkReportsRequestUuidRequest request) { + return unchecked(() -> onBuildRequest(request)).get().thenCompose(client::sendAsync) + .handle((resp, err) -> { + if (err != null) { + return onError(null, err); + } + if (Utils.statusCodeMatches(resp.statusCode(), "4XX", "5XX")) { + return onError(resp, null); + } + return CompletableFuture.completedFuture(resp); + }) + .thenCompose(Function.identity()) + .thenCompose(this::onSuccess); + } + + @Override + public CompletableFuture handleResponse( + HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + com.gusto.embedded_api.models.operations.async.GetV1BulkReportsRequestUuidResponse.Builder resBuilder = + com.gusto.embedded_api.models.operations.async.GetV1BulkReportsRequestUuidResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + com.gusto.embedded_api.models.operations.async.GetV1BulkReportsRequestUuidResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "200")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return Utils.unmarshalAsync(response, new TypeReference() {}) + .thenApply(res::withBulkReport); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return NotFoundErrorObject.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + return Utils.createAsyncApiError(response, "Unexpected status code received: " + response.statusCode()); + } + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/operations/GetV1ContractorsContractorUuidMemberPortalInvitations.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/operations/GetV1ContractorsContractorUuidMemberPortalInvitations.java new file mode 100644 index 000000000..a9ae3da5d --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/operations/GetV1ContractorsContractorUuidMemberPortalInvitations.java @@ -0,0 +1,261 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.operations; + +import static com.gusto.embedded_api.operations.Operations.RequestOperation; +import static com.gusto.embedded_api.utils.Exceptions.unchecked; +import static com.gusto.embedded_api.operations.Operations.AsyncRequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api.SDKConfiguration; +import com.gusto.embedded_api.SecuritySource; +import com.gusto.embedded_api.models.components.MemberPortalInvitation; +import com.gusto.embedded_api.models.errors.APIException; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.operations.GetV1ContractorsContractorUuidMemberPortalInvitationsRequest; +import com.gusto.embedded_api.models.operations.GetV1ContractorsContractorUuidMemberPortalInvitationsResponse; +import com.gusto.embedded_api.utils.Blob; +import com.gusto.embedded_api.utils.HTTPClient; +import com.gusto.embedded_api.utils.HTTPRequest; +import com.gusto.embedded_api.utils.Headers; +import com.gusto.embedded_api.utils.Hook.AfterErrorContextImpl; +import com.gusto.embedded_api.utils.Hook.AfterSuccessContextImpl; +import com.gusto.embedded_api.utils.Hook.BeforeRequestContextImpl; +import com.gusto.embedded_api.utils.Utils; +import java.io.InputStream; +import java.lang.Exception; +import java.lang.String; +import java.lang.Throwable; +import java.net.http.HttpRequest; +import java.net.http.HttpResponse; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; +import java.util.function.Function; + + +public class GetV1ContractorsContractorUuidMemberPortalInvitations { + + static abstract class Base { + final SDKConfiguration sdkConfiguration; + final String baseUrl; + final SecuritySource securitySource; + final HTTPClient client; + final Headers _headers; + + public Base(SDKConfiguration sdkConfiguration, Headers _headers) { + this.sdkConfiguration = sdkConfiguration; + this._headers =_headers; + this.baseUrl = this.sdkConfiguration.serverUrl(); + this.securitySource = this.sdkConfiguration.securitySource(); + this.client = this.sdkConfiguration.client(); + } + + Optional securitySource() { + return Optional.ofNullable(this.securitySource); + } + + BeforeRequestContextImpl createBeforeRequestContext() { + return new BeforeRequestContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-v1-contractors-contractor_uuid-member_portal_invitations", + java.util.Optional.empty(), + securitySource()); + } + + AfterSuccessContextImpl createAfterSuccessContext() { + return new AfterSuccessContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-v1-contractors-contractor_uuid-member_portal_invitations", + java.util.Optional.empty(), + securitySource()); + } + + AfterErrorContextImpl createAfterErrorContext() { + return new AfterErrorContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-v1-contractors-contractor_uuid-member_portal_invitations", + java.util.Optional.empty(), + securitySource()); + } + HttpRequest buildRequest(T request, Class klass) throws Exception { + String url = Utils.generateURL( + klass, + this.baseUrl, + "/v1/contractors/{contractor_uuid}/member_portal_invitations", + request, null); + HTTPRequest req = new HTTPRequest(url, "GET"); + req.addHeader("Accept", "application/json") + .addHeader("user-agent", SDKConfiguration.USER_AGENT); + _headers.forEach((k, list) -> list.forEach(v -> req.addHeader(k, v))); + req.addHeaders(Utils.getHeadersFromMetadata(request, null)); + Utils.configureSecurity(req, this.sdkConfiguration.securitySource().getSecurity(), "companyAccessAuth"); + + return req.build(); + } + } + + public static class Sync extends Base + implements RequestOperation { + public Sync(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private HttpRequest onBuildRequest(GetV1ContractorsContractorUuidMemberPortalInvitationsRequest request) throws Exception { + HttpRequest req = buildRequest(request, GetV1ContractorsContractorUuidMemberPortalInvitationsRequest.class); + return sdkConfiguration.hooks().beforeRequest(createBeforeRequestContext(), req); + } + + private HttpResponse onError(HttpResponse response, Exception error) throws Exception { + return sdkConfiguration.hooks().afterError( + createAfterErrorContext(), + Optional.ofNullable(response), + Optional.ofNullable(error)); + } + + private HttpResponse onSuccess(HttpResponse response) throws Exception { + return sdkConfiguration.hooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public HttpResponse doRequest(GetV1ContractorsContractorUuidMemberPortalInvitationsRequest request) { + HttpRequest r = unchecked(() -> onBuildRequest(request)).get(); + HttpResponse httpRes; + try { + httpRes = client.send(r); + if (Utils.statusCodeMatches(httpRes.statusCode(), "4XX", "5XX")) { + httpRes = onError(httpRes, null); + } else { + httpRes = onSuccess(httpRes); + } + } catch (Exception e) { + httpRes = unchecked(() -> onError(null, e)).get(); + } + + return httpRes; + } + + + @Override + public GetV1ContractorsContractorUuidMemberPortalInvitationsResponse handleResponse(HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + GetV1ContractorsContractorUuidMemberPortalInvitationsResponse.Builder resBuilder = + GetV1ContractorsContractorUuidMemberPortalInvitationsResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + GetV1ContractorsContractorUuidMemberPortalInvitationsResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "200")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return res.withMemberPortalInvitation(Utils.unmarshal(response, new TypeReference() {})); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw NotFoundErrorObject.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + throw APIException.from("API error occurred", response); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + throw APIException.from("API error occurred", response); + } + throw APIException.from("Unexpected status code received: " + response.statusCode(), response); + } + } + public static class Async extends Base + implements AsyncRequestOperation { + + public Async(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private CompletableFuture onBuildRequest(GetV1ContractorsContractorUuidMemberPortalInvitationsRequest request) throws Exception { + HttpRequest req = buildRequest(request, GetV1ContractorsContractorUuidMemberPortalInvitationsRequest.class); + return this.sdkConfiguration.asyncHooks().beforeRequest(createBeforeRequestContext(), req); + } + + private CompletableFuture> onError(HttpResponse response, Throwable error) { + return this.sdkConfiguration.asyncHooks().afterError(createAfterErrorContext(), response, error); + } + + private CompletableFuture> onSuccess(HttpResponse response) { + return this.sdkConfiguration.asyncHooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public CompletableFuture> doRequest(GetV1ContractorsContractorUuidMemberPortalInvitationsRequest request) { + return unchecked(() -> onBuildRequest(request)).get().thenCompose(client::sendAsync) + .handle((resp, err) -> { + if (err != null) { + return onError(null, err); + } + if (Utils.statusCodeMatches(resp.statusCode(), "4XX", "5XX")) { + return onError(resp, null); + } + return CompletableFuture.completedFuture(resp); + }) + .thenCompose(Function.identity()) + .thenCompose(this::onSuccess); + } + + @Override + public CompletableFuture handleResponse( + HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + com.gusto.embedded_api.models.operations.async.GetV1ContractorsContractorUuidMemberPortalInvitationsResponse.Builder resBuilder = + com.gusto.embedded_api.models.operations.async.GetV1ContractorsContractorUuidMemberPortalInvitationsResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + com.gusto.embedded_api.models.operations.async.GetV1ContractorsContractorUuidMemberPortalInvitationsResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "200")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return Utils.unmarshalAsync(response, new TypeReference() {}) + .thenApply(res::withMemberPortalInvitation); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return NotFoundErrorObject.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + return Utils.createAsyncApiError(response, "Unexpected status code received: " + response.statusCode()); + } + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/operations/GetV1ContractorsContractorUuidPayments.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/operations/GetV1ContractorsContractorUuidPayments.java new file mode 100644 index 000000000..d4a1a21d1 --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/operations/GetV1ContractorsContractorUuidPayments.java @@ -0,0 +1,283 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.operations; + +import static com.gusto.embedded_api.operations.Operations.RequestOperation; +import static com.gusto.embedded_api.utils.Exceptions.unchecked; +import static com.gusto.embedded_api.operations.Operations.AsyncRequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api.SDKConfiguration; +import com.gusto.embedded_api.SecuritySource; +import com.gusto.embedded_api.models.components.ContractorPaymentListing; +import com.gusto.embedded_api.models.errors.APIException; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.operations.GetV1ContractorsContractorUuidPaymentsRequest; +import com.gusto.embedded_api.models.operations.GetV1ContractorsContractorUuidPaymentsResponse; +import com.gusto.embedded_api.utils.Blob; +import com.gusto.embedded_api.utils.HTTPClient; +import com.gusto.embedded_api.utils.HTTPRequest; +import com.gusto.embedded_api.utils.Headers; +import com.gusto.embedded_api.utils.Hook.AfterErrorContextImpl; +import com.gusto.embedded_api.utils.Hook.AfterSuccessContextImpl; +import com.gusto.embedded_api.utils.Hook.BeforeRequestContextImpl; +import com.gusto.embedded_api.utils.Utils; +import java.io.InputStream; +import java.lang.Exception; +import java.lang.String; +import java.lang.Throwable; +import java.net.http.HttpRequest; +import java.net.http.HttpResponse; +import java.util.List; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; +import java.util.function.Function; + + +public class GetV1ContractorsContractorUuidPayments { + + static abstract class Base { + final SDKConfiguration sdkConfiguration; + final String baseUrl; + final SecuritySource securitySource; + final HTTPClient client; + final Headers _headers; + + public Base(SDKConfiguration sdkConfiguration, Headers _headers) { + this.sdkConfiguration = sdkConfiguration; + this._headers =_headers; + this.baseUrl = this.sdkConfiguration.serverUrl(); + this.securitySource = this.sdkConfiguration.securitySource(); + this.client = this.sdkConfiguration.client(); + } + + Optional securitySource() { + return Optional.ofNullable(this.securitySource); + } + + BeforeRequestContextImpl createBeforeRequestContext() { + return new BeforeRequestContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-v1-contractors-contractor_uuid-payments", + java.util.Optional.empty(), + securitySource()); + } + + AfterSuccessContextImpl createAfterSuccessContext() { + return new AfterSuccessContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-v1-contractors-contractor_uuid-payments", + java.util.Optional.empty(), + securitySource()); + } + + AfterErrorContextImpl createAfterErrorContext() { + return new AfterErrorContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-v1-contractors-contractor_uuid-payments", + java.util.Optional.empty(), + securitySource()); + } + HttpRequest buildRequest(T request, Class klass) throws Exception { + String url = Utils.generateURL( + klass, + this.baseUrl, + "/v1/contractors/{contractor_uuid}/payments", + request, null); + HTTPRequest req = new HTTPRequest(url, "GET"); + req.addHeader("Accept", "application/json") + .addHeader("user-agent", SDKConfiguration.USER_AGENT); + _headers.forEach((k, list) -> list.forEach(v -> req.addHeader(k, v))); + + req.addQueryParams(Utils.getQueryParams( + klass, + request, + null)); + req.addHeaders(Utils.getHeadersFromMetadata(request, null)); + Utils.configureSecurity(req, this.sdkConfiguration.securitySource().getSecurity(), "companyAccessAuth"); + + return req.build(); + } + } + + public static class Sync extends Base + implements RequestOperation { + public Sync(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private HttpRequest onBuildRequest(GetV1ContractorsContractorUuidPaymentsRequest request) throws Exception { + HttpRequest req = buildRequest(request, GetV1ContractorsContractorUuidPaymentsRequest.class); + return sdkConfiguration.hooks().beforeRequest(createBeforeRequestContext(), req); + } + + private HttpResponse onError(HttpResponse response, Exception error) throws Exception { + return sdkConfiguration.hooks().afterError( + createAfterErrorContext(), + Optional.ofNullable(response), + Optional.ofNullable(error)); + } + + private HttpResponse onSuccess(HttpResponse response) throws Exception { + return sdkConfiguration.hooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public HttpResponse doRequest(GetV1ContractorsContractorUuidPaymentsRequest request) { + HttpRequest r = unchecked(() -> onBuildRequest(request)).get(); + HttpResponse httpRes; + try { + httpRes = client.send(r); + if (Utils.statusCodeMatches(httpRes.statusCode(), "4XX", "5XX")) { + httpRes = onError(httpRes, null); + } else { + httpRes = onSuccess(httpRes); + } + } catch (Exception e) { + httpRes = unchecked(() -> onError(null, e)).get(); + } + + return httpRes; + } + + + @Override + public GetV1ContractorsContractorUuidPaymentsResponse handleResponse(HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + GetV1ContractorsContractorUuidPaymentsResponse.Builder resBuilder = + GetV1ContractorsContractorUuidPaymentsResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + GetV1ContractorsContractorUuidPaymentsResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "200")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return res.withContractorPaymentListings(Utils.unmarshal(response, new TypeReference>() {})); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw NotFoundErrorObject.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw UnprocessableEntityError.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + throw APIException.from("API error occurred", response); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + throw APIException.from("API error occurred", response); + } + throw APIException.from("Unexpected status code received: " + response.statusCode(), response); + } + } + public static class Async extends Base + implements AsyncRequestOperation { + + public Async(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private CompletableFuture onBuildRequest(GetV1ContractorsContractorUuidPaymentsRequest request) throws Exception { + HttpRequest req = buildRequest(request, GetV1ContractorsContractorUuidPaymentsRequest.class); + return this.sdkConfiguration.asyncHooks().beforeRequest(createBeforeRequestContext(), req); + } + + private CompletableFuture> onError(HttpResponse response, Throwable error) { + return this.sdkConfiguration.asyncHooks().afterError(createAfterErrorContext(), response, error); + } + + private CompletableFuture> onSuccess(HttpResponse response) { + return this.sdkConfiguration.asyncHooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public CompletableFuture> doRequest(GetV1ContractorsContractorUuidPaymentsRequest request) { + return unchecked(() -> onBuildRequest(request)).get().thenCompose(client::sendAsync) + .handle((resp, err) -> { + if (err != null) { + return onError(null, err); + } + if (Utils.statusCodeMatches(resp.statusCode(), "4XX", "5XX")) { + return onError(resp, null); + } + return CompletableFuture.completedFuture(resp); + }) + .thenCompose(Function.identity()) + .thenCompose(this::onSuccess); + } + + @Override + public CompletableFuture handleResponse( + HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + com.gusto.embedded_api.models.operations.async.GetV1ContractorsContractorUuidPaymentsResponse.Builder resBuilder = + com.gusto.embedded_api.models.operations.async.GetV1ContractorsContractorUuidPaymentsResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + com.gusto.embedded_api.models.operations.async.GetV1ContractorsContractorUuidPaymentsResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "200")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return Utils.unmarshalAsync(response, new TypeReference>() {}) + .thenApply(res::withContractorPaymentListings); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return NotFoundErrorObject.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return UnprocessableEntityError.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + return Utils.createAsyncApiError(response, "Unexpected status code received: " + response.statusCode()); + } + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/operations/GetV1EmployeesEmployeeIdMemberPortalInvitations.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/operations/GetV1EmployeesEmployeeIdMemberPortalInvitations.java new file mode 100644 index 000000000..1d88ff5af --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/operations/GetV1EmployeesEmployeeIdMemberPortalInvitations.java @@ -0,0 +1,261 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.operations; + +import static com.gusto.embedded_api.operations.Operations.RequestOperation; +import static com.gusto.embedded_api.utils.Exceptions.unchecked; +import static com.gusto.embedded_api.operations.Operations.AsyncRequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api.SDKConfiguration; +import com.gusto.embedded_api.SecuritySource; +import com.gusto.embedded_api.models.components.MemberPortalInvitation; +import com.gusto.embedded_api.models.errors.APIException; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.operations.GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest; +import com.gusto.embedded_api.models.operations.GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse; +import com.gusto.embedded_api.utils.Blob; +import com.gusto.embedded_api.utils.HTTPClient; +import com.gusto.embedded_api.utils.HTTPRequest; +import com.gusto.embedded_api.utils.Headers; +import com.gusto.embedded_api.utils.Hook.AfterErrorContextImpl; +import com.gusto.embedded_api.utils.Hook.AfterSuccessContextImpl; +import com.gusto.embedded_api.utils.Hook.BeforeRequestContextImpl; +import com.gusto.embedded_api.utils.Utils; +import java.io.InputStream; +import java.lang.Exception; +import java.lang.String; +import java.lang.Throwable; +import java.net.http.HttpRequest; +import java.net.http.HttpResponse; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; +import java.util.function.Function; + + +public class GetV1EmployeesEmployeeIdMemberPortalInvitations { + + static abstract class Base { + final SDKConfiguration sdkConfiguration; + final String baseUrl; + final SecuritySource securitySource; + final HTTPClient client; + final Headers _headers; + + public Base(SDKConfiguration sdkConfiguration, Headers _headers) { + this.sdkConfiguration = sdkConfiguration; + this._headers =_headers; + this.baseUrl = this.sdkConfiguration.serverUrl(); + this.securitySource = this.sdkConfiguration.securitySource(); + this.client = this.sdkConfiguration.client(); + } + + Optional securitySource() { + return Optional.ofNullable(this.securitySource); + } + + BeforeRequestContextImpl createBeforeRequestContext() { + return new BeforeRequestContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-v1-employees-employee_id-member_portal_invitations", + java.util.Optional.empty(), + securitySource()); + } + + AfterSuccessContextImpl createAfterSuccessContext() { + return new AfterSuccessContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-v1-employees-employee_id-member_portal_invitations", + java.util.Optional.empty(), + securitySource()); + } + + AfterErrorContextImpl createAfterErrorContext() { + return new AfterErrorContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-v1-employees-employee_id-member_portal_invitations", + java.util.Optional.empty(), + securitySource()); + } + HttpRequest buildRequest(T request, Class klass) throws Exception { + String url = Utils.generateURL( + klass, + this.baseUrl, + "/v1/employees/{employee_id}/member_portal_invitations", + request, null); + HTTPRequest req = new HTTPRequest(url, "GET"); + req.addHeader("Accept", "application/json") + .addHeader("user-agent", SDKConfiguration.USER_AGENT); + _headers.forEach((k, list) -> list.forEach(v -> req.addHeader(k, v))); + req.addHeaders(Utils.getHeadersFromMetadata(request, null)); + Utils.configureSecurity(req, this.sdkConfiguration.securitySource().getSecurity(), "companyAccessAuth"); + + return req.build(); + } + } + + public static class Sync extends Base + implements RequestOperation { + public Sync(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private HttpRequest onBuildRequest(GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest request) throws Exception { + HttpRequest req = buildRequest(request, GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest.class); + return sdkConfiguration.hooks().beforeRequest(createBeforeRequestContext(), req); + } + + private HttpResponse onError(HttpResponse response, Exception error) throws Exception { + return sdkConfiguration.hooks().afterError( + createAfterErrorContext(), + Optional.ofNullable(response), + Optional.ofNullable(error)); + } + + private HttpResponse onSuccess(HttpResponse response) throws Exception { + return sdkConfiguration.hooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public HttpResponse doRequest(GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest request) { + HttpRequest r = unchecked(() -> onBuildRequest(request)).get(); + HttpResponse httpRes; + try { + httpRes = client.send(r); + if (Utils.statusCodeMatches(httpRes.statusCode(), "4XX", "5XX")) { + httpRes = onError(httpRes, null); + } else { + httpRes = onSuccess(httpRes); + } + } catch (Exception e) { + httpRes = unchecked(() -> onError(null, e)).get(); + } + + return httpRes; + } + + + @Override + public GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse handleResponse(HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse.Builder resBuilder = + GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "200")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return res.withMemberPortalInvitation(Utils.unmarshal(response, new TypeReference() {})); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw NotFoundErrorObject.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + throw APIException.from("API error occurred", response); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + throw APIException.from("API error occurred", response); + } + throw APIException.from("Unexpected status code received: " + response.statusCode(), response); + } + } + public static class Async extends Base + implements AsyncRequestOperation { + + public Async(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private CompletableFuture onBuildRequest(GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest request) throws Exception { + HttpRequest req = buildRequest(request, GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest.class); + return this.sdkConfiguration.asyncHooks().beforeRequest(createBeforeRequestContext(), req); + } + + private CompletableFuture> onError(HttpResponse response, Throwable error) { + return this.sdkConfiguration.asyncHooks().afterError(createAfterErrorContext(), response, error); + } + + private CompletableFuture> onSuccess(HttpResponse response) { + return this.sdkConfiguration.asyncHooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public CompletableFuture> doRequest(GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest request) { + return unchecked(() -> onBuildRequest(request)).get().thenCompose(client::sendAsync) + .handle((resp, err) -> { + if (err != null) { + return onError(null, err); + } + if (Utils.statusCodeMatches(resp.statusCode(), "4XX", "5XX")) { + return onError(resp, null); + } + return CompletableFuture.completedFuture(resp); + }) + .thenCompose(Function.identity()) + .thenCompose(this::onSuccess); + } + + @Override + public CompletableFuture handleResponse( + HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + com.gusto.embedded_api.models.operations.async.GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse.Builder resBuilder = + com.gusto.embedded_api.models.operations.async.GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + com.gusto.embedded_api.models.operations.async.GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "200")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return Utils.unmarshalAsync(response, new TypeReference() {}) + .thenApply(res::withMemberPortalInvitation); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return NotFoundErrorObject.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + return Utils.createAsyncApiError(response, "Unexpected status code received: " + response.statusCode()); + } + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/operations/GetV1PaymentReceiptsPayrollsPayrollUuid.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/operations/GetV1PaymentReceiptsPayrollsPayrollUuid.java index d6f14a4a7..f841e0d36 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/operations/GetV1PaymentReceiptsPayrollsPayrollUuid.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/operations/GetV1PaymentReceiptsPayrollsPayrollUuid.java @@ -91,6 +91,11 @@ HttpRequest buildRequest(T request, Class klass) throws Exception { req.addHeader("Accept", "application/json") .addHeader("user-agent", SDKConfiguration.USER_AGENT); _headers.forEach((k, list) -> list.forEach(v -> req.addHeader(k, v))); + + req.addQueryParams(Utils.getQueryParams( + klass, + request, + null)); req.addHeaders(Utils.getHeadersFromMetadata(request, null)); Utils.configureSecurity(req, this.sdkConfiguration.securitySource().getSecurity(), "companyAccessAuth"); diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/operations/GetV1PayrollBatchesPayrollBatchUuid.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/operations/GetV1PayrollBatchesPayrollBatchUuid.java new file mode 100644 index 000000000..f02c7554b --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/operations/GetV1PayrollBatchesPayrollBatchUuid.java @@ -0,0 +1,275 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.operations; + +import static com.gusto.embedded_api.operations.Operations.RequestOperation; +import static com.gusto.embedded_api.utils.Exceptions.unchecked; +import static com.gusto.embedded_api.operations.Operations.AsyncRequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api.SDKConfiguration; +import com.gusto.embedded_api.SecuritySource; +import com.gusto.embedded_api.models.components.PayrollBatchResults; +import com.gusto.embedded_api.models.errors.APIException; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.operations.GetV1PayrollBatchesPayrollBatchUuidRequest; +import com.gusto.embedded_api.models.operations.GetV1PayrollBatchesPayrollBatchUuidResponse; +import com.gusto.embedded_api.models.operations.GetV1PayrollBatchesPayrollBatchUuidSecurity; +import com.gusto.embedded_api.utils.Blob; +import com.gusto.embedded_api.utils.HTTPClient; +import com.gusto.embedded_api.utils.HTTPRequest; +import com.gusto.embedded_api.utils.Headers; +import com.gusto.embedded_api.utils.Hook.AfterErrorContextImpl; +import com.gusto.embedded_api.utils.Hook.AfterSuccessContextImpl; +import com.gusto.embedded_api.utils.Hook.BeforeRequestContextImpl; +import com.gusto.embedded_api.utils.Utils; +import java.io.InputStream; +import java.lang.Exception; +import java.lang.String; +import java.lang.Throwable; +import java.net.http.HttpRequest; +import java.net.http.HttpResponse; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; +import java.util.function.Function; + + +public class GetV1PayrollBatchesPayrollBatchUuid { + + static abstract class Base { + final SDKConfiguration sdkConfiguration; + final String baseUrl; + final GetV1PayrollBatchesPayrollBatchUuidSecurity security; + final SecuritySource securitySource; + final HTTPClient client; + final Headers _headers; + + public Base( + SDKConfiguration sdkConfiguration, GetV1PayrollBatchesPayrollBatchUuidSecurity security, + Headers _headers) { + this.sdkConfiguration = sdkConfiguration; + this._headers =_headers; + this.baseUrl = this.sdkConfiguration.serverUrl(); + this.security = security; + // hooks will be passed method level security only + this.securitySource = SecuritySource.of(security); + this.client = this.sdkConfiguration.client(); + } + + Optional securitySource() { + return Optional.ofNullable(this.securitySource); + } + + BeforeRequestContextImpl createBeforeRequestContext() { + return new BeforeRequestContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-v1-payroll_batches-payroll_batch_uuid", + java.util.Optional.empty(), + securitySource()); + } + + AfterSuccessContextImpl createAfterSuccessContext() { + return new AfterSuccessContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-v1-payroll_batches-payroll_batch_uuid", + java.util.Optional.empty(), + securitySource()); + } + + AfterErrorContextImpl createAfterErrorContext() { + return new AfterErrorContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-v1-payroll_batches-payroll_batch_uuid", + java.util.Optional.empty(), + securitySource()); + } + HttpRequest buildRequest(T request, Class klass) throws Exception { + String url = Utils.generateURL( + klass, + this.baseUrl, + "/v1/payroll_batches/{payroll_batch_uuid}", + request, null); + HTTPRequest req = new HTTPRequest(url, "GET"); + req.addHeader("Accept", "application/json") + .addHeader("user-agent", SDKConfiguration.USER_AGENT); + _headers.forEach((k, list) -> list.forEach(v -> req.addHeader(k, v))); + req.addHeaders(Utils.getHeadersFromMetadata(request, null)); + Utils.configureSecurity(req, security); + + return req.build(); + } + } + + public static class Sync extends Base + implements RequestOperation { + public Sync( + SDKConfiguration sdkConfiguration, GetV1PayrollBatchesPayrollBatchUuidSecurity security, + Headers _headers) { + super( + sdkConfiguration, security, + _headers); + } + + private HttpRequest onBuildRequest(GetV1PayrollBatchesPayrollBatchUuidRequest request) throws Exception { + HttpRequest req = buildRequest(request, GetV1PayrollBatchesPayrollBatchUuidRequest.class); + return sdkConfiguration.hooks().beforeRequest(createBeforeRequestContext(), req); + } + + private HttpResponse onError(HttpResponse response, Exception error) throws Exception { + return sdkConfiguration.hooks().afterError( + createAfterErrorContext(), + Optional.ofNullable(response), + Optional.ofNullable(error)); + } + + private HttpResponse onSuccess(HttpResponse response) throws Exception { + return sdkConfiguration.hooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public HttpResponse doRequest(GetV1PayrollBatchesPayrollBatchUuidRequest request) { + HttpRequest r = unchecked(() -> onBuildRequest(request)).get(); + HttpResponse httpRes; + try { + httpRes = client.send(r); + if (Utils.statusCodeMatches(httpRes.statusCode(), "4XX", "5XX")) { + httpRes = onError(httpRes, null); + } else { + httpRes = onSuccess(httpRes); + } + } catch (Exception e) { + httpRes = unchecked(() -> onError(null, e)).get(); + } + + return httpRes; + } + + + @Override + public GetV1PayrollBatchesPayrollBatchUuidResponse handleResponse(HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + GetV1PayrollBatchesPayrollBatchUuidResponse.Builder resBuilder = + GetV1PayrollBatchesPayrollBatchUuidResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + GetV1PayrollBatchesPayrollBatchUuidResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "200")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return res.withPayrollBatchResults(Utils.unmarshal(response, new TypeReference() {})); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "404", "410")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw NotFoundErrorObject.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + throw APIException.from("API error occurred", response); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + throw APIException.from("API error occurred", response); + } + throw APIException.from("Unexpected status code received: " + response.statusCode(), response); + } + } + public static class Async extends Base + implements AsyncRequestOperation { + + public Async( + SDKConfiguration sdkConfiguration, GetV1PayrollBatchesPayrollBatchUuidSecurity security, + Headers _headers) { + super( + sdkConfiguration, security, + _headers); + } + + private CompletableFuture onBuildRequest(GetV1PayrollBatchesPayrollBatchUuidRequest request) throws Exception { + HttpRequest req = buildRequest(request, GetV1PayrollBatchesPayrollBatchUuidRequest.class); + return this.sdkConfiguration.asyncHooks().beforeRequest(createBeforeRequestContext(), req); + } + + private CompletableFuture> onError(HttpResponse response, Throwable error) { + return this.sdkConfiguration.asyncHooks().afterError(createAfterErrorContext(), response, error); + } + + private CompletableFuture> onSuccess(HttpResponse response) { + return this.sdkConfiguration.asyncHooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public CompletableFuture> doRequest(GetV1PayrollBatchesPayrollBatchUuidRequest request) { + return unchecked(() -> onBuildRequest(request)).get().thenCompose(client::sendAsync) + .handle((resp, err) -> { + if (err != null) { + return onError(null, err); + } + if (Utils.statusCodeMatches(resp.statusCode(), "4XX", "5XX")) { + return onError(resp, null); + } + return CompletableFuture.completedFuture(resp); + }) + .thenCompose(Function.identity()) + .thenCompose(this::onSuccess); + } + + @Override + public CompletableFuture handleResponse( + HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + com.gusto.embedded_api.models.operations.async.GetV1PayrollBatchesPayrollBatchUuidResponse.Builder resBuilder = + com.gusto.embedded_api.models.operations.async.GetV1PayrollBatchesPayrollBatchUuidResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + com.gusto.embedded_api.models.operations.async.GetV1PayrollBatchesPayrollBatchUuidResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "200")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return Utils.unmarshalAsync(response, new TypeReference() {}) + .thenApply(res::withPayrollBatchResults); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "404", "410")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return NotFoundErrorObject.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + return Utils.createAsyncApiError(response, "Unexpected status code received: " + response.statusCode()); + } + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/operations/PostCompaniesPayrollSkipCompanyUuid.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/operations/PostCompaniesPayrollSkipCompanyUuid.java index 170f6be91..6ae758c40 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/operations/PostCompaniesPayrollSkipCompanyUuid.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/operations/PostCompaniesPayrollSkipCompanyUuid.java @@ -11,6 +11,7 @@ import com.gusto.embedded_api.SDKConfiguration; import com.gusto.embedded_api.SecuritySource; import com.gusto.embedded_api.models.errors.APIException; +import com.gusto.embedded_api.models.errors.ConflictErrorObject; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.PayrollBlockersError; import com.gusto.embedded_api.models.operations.PostCompaniesPayrollSkipCompanyUuidRequest; @@ -182,6 +183,13 @@ public PostCompaniesPayrollSkipCompanyUuidResponse handleResponse(HttpResponse securitySource() { + return Optional.ofNullable(this.securitySource); + } + + BeforeRequestContextImpl createBeforeRequestContext() { + return new BeforeRequestContextImpl( + this.sdkConfiguration, + this.baseUrl, + "post-v1-bulk_reports", + java.util.Optional.empty(), + securitySource()); + } + + AfterSuccessContextImpl createAfterSuccessContext() { + return new AfterSuccessContextImpl( + this.sdkConfiguration, + this.baseUrl, + "post-v1-bulk_reports", + java.util.Optional.empty(), + securitySource()); + } + + AfterErrorContextImpl createAfterErrorContext() { + return new AfterErrorContextImpl( + this.sdkConfiguration, + this.baseUrl, + "post-v1-bulk_reports", + java.util.Optional.empty(), + securitySource()); + } + HttpRequest buildRequest(T request, TypeReference typeReference) throws Exception { + String url = Utils.generateURL( + this.baseUrl, + "/v1/bulk_reports"); + HTTPRequest req = new HTTPRequest(url, "POST"); + Object convertedRequest = Utils.convertToShape( + request, + JsonShape.DEFAULT, + typeReference); + SerializedBody serializedRequestBody = Utils.serializeRequestBody( + convertedRequest, + "bulkReportBody", + "json", + false); + if (serializedRequestBody == null) { + throw new IllegalArgumentException("Request body is required"); + } + req.setBody(Optional.ofNullable(serializedRequestBody)); + req.addHeader("Accept", "application/json") + .addHeader("user-agent", SDKConfiguration.USER_AGENT); + _headers.forEach((k, list) -> list.forEach(v -> req.addHeader(k, v))); + req.addHeaders(Utils.getHeadersFromMetadata(request, null)); + Utils.configureSecurity(req, security); + + return req.build(); + } + } + + public static class Sync extends Base + implements RequestOperation { + public Sync( + SDKConfiguration sdkConfiguration, PostV1BulkReportsSecurity security, + Headers _headers) { + super( + sdkConfiguration, security, + _headers); + } + + private HttpRequest onBuildRequest(PostV1BulkReportsRequest request) throws Exception { + HttpRequest req = buildRequest(request, new TypeReference() {}); + return sdkConfiguration.hooks().beforeRequest(createBeforeRequestContext(), req); + } + + private HttpResponse onError(HttpResponse response, Exception error) throws Exception { + return sdkConfiguration.hooks().afterError( + createAfterErrorContext(), + Optional.ofNullable(response), + Optional.ofNullable(error)); + } + + private HttpResponse onSuccess(HttpResponse response) throws Exception { + return sdkConfiguration.hooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public HttpResponse doRequest(PostV1BulkReportsRequest request) { + HttpRequest r = unchecked(() -> onBuildRequest(request)).get(); + HttpResponse httpRes; + try { + httpRes = client.send(r); + if (Utils.statusCodeMatches(httpRes.statusCode(), "4XX", "5XX")) { + httpRes = onError(httpRes, null); + } else { + httpRes = onSuccess(httpRes); + } + } catch (Exception e) { + httpRes = unchecked(() -> onError(null, e)).get(); + } + + return httpRes; + } + + + @Override + public PostV1BulkReportsResponse handleResponse(HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + PostV1BulkReportsResponse.Builder resBuilder = + PostV1BulkReportsResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + PostV1BulkReportsResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "201")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return res.withCreateBulkReport(Utils.unmarshal(response, new TypeReference() {})); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw UnprocessableEntityError.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + throw APIException.from("API error occurred", response); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + throw APIException.from("API error occurred", response); + } + throw APIException.from("Unexpected status code received: " + response.statusCode(), response); + } + } + public static class Async extends Base + implements AsyncRequestOperation { + + public Async( + SDKConfiguration sdkConfiguration, PostV1BulkReportsSecurity security, + Headers _headers) { + super( + sdkConfiguration, security, + _headers); + } + + private CompletableFuture onBuildRequest(PostV1BulkReportsRequest request) throws Exception { + HttpRequest req = buildRequest(request, new TypeReference() {}); + return this.sdkConfiguration.asyncHooks().beforeRequest(createBeforeRequestContext(), req); + } + + private CompletableFuture> onError(HttpResponse response, Throwable error) { + return this.sdkConfiguration.asyncHooks().afterError(createAfterErrorContext(), response, error); + } + + private CompletableFuture> onSuccess(HttpResponse response) { + return this.sdkConfiguration.asyncHooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public CompletableFuture> doRequest(PostV1BulkReportsRequest request) { + return unchecked(() -> onBuildRequest(request)).get().thenCompose(client::sendAsync) + .handle((resp, err) -> { + if (err != null) { + return onError(null, err); + } + if (Utils.statusCodeMatches(resp.statusCode(), "4XX", "5XX")) { + return onError(resp, null); + } + return CompletableFuture.completedFuture(resp); + }) + .thenCompose(Function.identity()) + .thenCompose(this::onSuccess); + } + + @Override + public CompletableFuture handleResponse( + HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + com.gusto.embedded_api.models.operations.async.PostV1BulkReportsResponse.Builder resBuilder = + com.gusto.embedded_api.models.operations.async.PostV1BulkReportsResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + com.gusto.embedded_api.models.operations.async.PostV1BulkReportsResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "201")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return Utils.unmarshalAsync(response, new TypeReference() {}) + .thenApply(res::withCreateBulkReport); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return UnprocessableEntityError.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + return Utils.createAsyncApiError(response, "Unexpected status code received: " + response.statusCode()); + } + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/operations/PostV1ContractorsContractorUuidMemberPortalInvitations.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/operations/PostV1ContractorsContractorUuidMemberPortalInvitations.java new file mode 100644 index 000000000..a25270dbf --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/operations/PostV1ContractorsContractorUuidMemberPortalInvitations.java @@ -0,0 +1,268 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.operations; + +import static com.gusto.embedded_api.operations.Operations.RequestOperation; +import static com.gusto.embedded_api.utils.Exceptions.unchecked; +import static com.gusto.embedded_api.operations.Operations.AsyncRequestOperation; + +import com.gusto.embedded_api.SDKConfiguration; +import com.gusto.embedded_api.SecuritySource; +import com.gusto.embedded_api.models.errors.APIException; +import com.gusto.embedded_api.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.operations.PostV1ContractorsContractorUuidMemberPortalInvitationsRequest; +import com.gusto.embedded_api.models.operations.PostV1ContractorsContractorUuidMemberPortalInvitationsResponse; +import com.gusto.embedded_api.utils.Blob; +import com.gusto.embedded_api.utils.HTTPClient; +import com.gusto.embedded_api.utils.HTTPRequest; +import com.gusto.embedded_api.utils.Headers; +import com.gusto.embedded_api.utils.Hook.AfterErrorContextImpl; +import com.gusto.embedded_api.utils.Hook.AfterSuccessContextImpl; +import com.gusto.embedded_api.utils.Hook.BeforeRequestContextImpl; +import com.gusto.embedded_api.utils.Utils; +import java.io.InputStream; +import java.lang.Exception; +import java.lang.String; +import java.lang.Throwable; +import java.net.http.HttpRequest; +import java.net.http.HttpResponse; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; +import java.util.function.Function; + + +public class PostV1ContractorsContractorUuidMemberPortalInvitations { + + static abstract class Base { + final SDKConfiguration sdkConfiguration; + final String baseUrl; + final SecuritySource securitySource; + final HTTPClient client; + final Headers _headers; + + public Base(SDKConfiguration sdkConfiguration, Headers _headers) { + this.sdkConfiguration = sdkConfiguration; + this._headers =_headers; + this.baseUrl = this.sdkConfiguration.serverUrl(); + this.securitySource = this.sdkConfiguration.securitySource(); + this.client = this.sdkConfiguration.client(); + } + + Optional securitySource() { + return Optional.ofNullable(this.securitySource); + } + + BeforeRequestContextImpl createBeforeRequestContext() { + return new BeforeRequestContextImpl( + this.sdkConfiguration, + this.baseUrl, + "post-v1-contractors-contractor_uuid-member_portal_invitations", + java.util.Optional.empty(), + securitySource()); + } + + AfterSuccessContextImpl createAfterSuccessContext() { + return new AfterSuccessContextImpl( + this.sdkConfiguration, + this.baseUrl, + "post-v1-contractors-contractor_uuid-member_portal_invitations", + java.util.Optional.empty(), + securitySource()); + } + + AfterErrorContextImpl createAfterErrorContext() { + return new AfterErrorContextImpl( + this.sdkConfiguration, + this.baseUrl, + "post-v1-contractors-contractor_uuid-member_portal_invitations", + java.util.Optional.empty(), + securitySource()); + } + HttpRequest buildRequest(T request, Class klass) throws Exception { + String url = Utils.generateURL( + klass, + this.baseUrl, + "/v1/contractors/{contractor_uuid}/member_portal_invitations", + request, null); + HTTPRequest req = new HTTPRequest(url, "POST"); + req.addHeader("Accept", "application/json") + .addHeader("user-agent", SDKConfiguration.USER_AGENT); + _headers.forEach((k, list) -> list.forEach(v -> req.addHeader(k, v))); + req.addHeaders(Utils.getHeadersFromMetadata(request, null)); + Utils.configureSecurity(req, this.sdkConfiguration.securitySource().getSecurity(), "companyAccessAuth"); + + return req.build(); + } + } + + public static class Sync extends Base + implements RequestOperation { + public Sync(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private HttpRequest onBuildRequest(PostV1ContractorsContractorUuidMemberPortalInvitationsRequest request) throws Exception { + HttpRequest req = buildRequest(request, PostV1ContractorsContractorUuidMemberPortalInvitationsRequest.class); + return sdkConfiguration.hooks().beforeRequest(createBeforeRequestContext(), req); + } + + private HttpResponse onError(HttpResponse response, Exception error) throws Exception { + return sdkConfiguration.hooks().afterError( + createAfterErrorContext(), + Optional.ofNullable(response), + Optional.ofNullable(error)); + } + + private HttpResponse onSuccess(HttpResponse response) throws Exception { + return sdkConfiguration.hooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public HttpResponse doRequest(PostV1ContractorsContractorUuidMemberPortalInvitationsRequest request) { + HttpRequest r = unchecked(() -> onBuildRequest(request)).get(); + HttpResponse httpRes; + try { + httpRes = client.send(r); + if (Utils.statusCodeMatches(httpRes.statusCode(), "4XX", "5XX")) { + httpRes = onError(httpRes, null); + } else { + httpRes = onSuccess(httpRes); + } + } catch (Exception e) { + httpRes = unchecked(() -> onError(null, e)).get(); + } + + return httpRes; + } + + + @Override + public PostV1ContractorsContractorUuidMemberPortalInvitationsResponse handleResponse(HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + PostV1ContractorsContractorUuidMemberPortalInvitationsResponse.Builder resBuilder = + PostV1ContractorsContractorUuidMemberPortalInvitationsResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + PostV1ContractorsContractorUuidMemberPortalInvitationsResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "201")) { + // no content + return res; + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw NotFoundErrorObject.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw UnprocessableEntityError.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + throw APIException.from("API error occurred", response); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + throw APIException.from("API error occurred", response); + } + throw APIException.from("Unexpected status code received: " + response.statusCode(), response); + } + } + public static class Async extends Base + implements AsyncRequestOperation { + + public Async(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private CompletableFuture onBuildRequest(PostV1ContractorsContractorUuidMemberPortalInvitationsRequest request) throws Exception { + HttpRequest req = buildRequest(request, PostV1ContractorsContractorUuidMemberPortalInvitationsRequest.class); + return this.sdkConfiguration.asyncHooks().beforeRequest(createBeforeRequestContext(), req); + } + + private CompletableFuture> onError(HttpResponse response, Throwable error) { + return this.sdkConfiguration.asyncHooks().afterError(createAfterErrorContext(), response, error); + } + + private CompletableFuture> onSuccess(HttpResponse response) { + return this.sdkConfiguration.asyncHooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public CompletableFuture> doRequest(PostV1ContractorsContractorUuidMemberPortalInvitationsRequest request) { + return unchecked(() -> onBuildRequest(request)).get().thenCompose(client::sendAsync) + .handle((resp, err) -> { + if (err != null) { + return onError(null, err); + } + if (Utils.statusCodeMatches(resp.statusCode(), "4XX", "5XX")) { + return onError(resp, null); + } + return CompletableFuture.completedFuture(resp); + }) + .thenCompose(Function.identity()) + .thenCompose(this::onSuccess); + } + + @Override + public CompletableFuture handleResponse( + HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + com.gusto.embedded_api.models.operations.async.PostV1ContractorsContractorUuidMemberPortalInvitationsResponse.Builder resBuilder = + com.gusto.embedded_api.models.operations.async.PostV1ContractorsContractorUuidMemberPortalInvitationsResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + com.gusto.embedded_api.models.operations.async.PostV1ContractorsContractorUuidMemberPortalInvitationsResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "201")) { + // no content + return CompletableFuture.completedFuture(res); + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return NotFoundErrorObject.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return UnprocessableEntityError.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + return Utils.createAsyncApiError(response, "Unexpected status code received: " + response.statusCode()); + } + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/operations/PostV1ContractorsContractorUuidRehire.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/operations/PostV1ContractorsContractorUuidRehire.java index 8c8c5f4db..a0296bfaa 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/operations/PostV1ContractorsContractorUuidRehire.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/operations/PostV1ContractorsContractorUuidRehire.java @@ -11,6 +11,7 @@ import com.gusto.embedded_api.SDKConfiguration; import com.gusto.embedded_api.SecuritySource; import com.gusto.embedded_api.models.errors.APIException; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; import com.gusto.embedded_api.models.operations.PostV1ContractorsContractorUuidRehireRequest; import com.gusto.embedded_api.models.operations.PostV1ContractorsContractorUuidRehireResponse; import com.gusto.embedded_api.utils.Blob; @@ -99,7 +100,7 @@ HttpRequest buildRequest(T request, Class klass, TypeReference typeR "json", false); req.setBody(Optional.ofNullable(serializedRequestBody)); - req.addHeader("Accept", "*/*") + req.addHeader("Accept", "application/json") .addHeader("user-agent", SDKConfiguration.USER_AGENT); _headers.forEach((k, list) -> list.forEach(v -> req.addHeader(k, v))); req.addHeaders(Utils.getHeadersFromMetadata(request, null)); @@ -169,7 +170,14 @@ public PostV1ContractorsContractorUuidRehireResponse handleResponse(HttpResponse // no content return res; } - if (Utils.statusCodeMatches(response.statusCode(), "422", "4XX")) { + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw UnprocessableEntityError.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { // no content throw APIException.from("API error occurred", response); } @@ -236,7 +244,15 @@ public CompletableFutureHttpRequest buildRequest(T request, Class klass, TypeReference typeR "json", false); req.setBody(Optional.ofNullable(serializedRequestBody)); - req.addHeader("Accept", "*/*") + req.addHeader("Accept", "application/json") .addHeader("user-agent", SDKConfiguration.USER_AGENT); _headers.forEach((k, list) -> list.forEach(v -> req.addHeader(k, v))); req.addHeaders(Utils.getHeadersFromMetadata(request, null)); @@ -169,7 +170,14 @@ public PostV1ContractorsContractorUuidTerminationResponse handleResponse(HttpRes // no content return res; } - if (Utils.statusCodeMatches(response.statusCode(), "422", "4XX")) { + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw UnprocessableEntityError.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { // no content throw APIException.from("API error occurred", response); } @@ -236,7 +244,15 @@ public CompletableFuture securitySource() { + return Optional.ofNullable(this.securitySource); + } + + BeforeRequestContextImpl createBeforeRequestContext() { + return new BeforeRequestContextImpl( + this.sdkConfiguration, + this.baseUrl, + "post-v1-employees-employee_id-member_portal_invitations", + java.util.Optional.empty(), + securitySource()); + } + + AfterSuccessContextImpl createAfterSuccessContext() { + return new AfterSuccessContextImpl( + this.sdkConfiguration, + this.baseUrl, + "post-v1-employees-employee_id-member_portal_invitations", + java.util.Optional.empty(), + securitySource()); + } + + AfterErrorContextImpl createAfterErrorContext() { + return new AfterErrorContextImpl( + this.sdkConfiguration, + this.baseUrl, + "post-v1-employees-employee_id-member_portal_invitations", + java.util.Optional.empty(), + securitySource()); + } + HttpRequest buildRequest(T request, Class klass) throws Exception { + String url = Utils.generateURL( + klass, + this.baseUrl, + "/v1/employees/{employee_id}/member_portal_invitations", + request, null); + HTTPRequest req = new HTTPRequest(url, "POST"); + req.addHeader("Accept", "application/json") + .addHeader("user-agent", SDKConfiguration.USER_AGENT); + _headers.forEach((k, list) -> list.forEach(v -> req.addHeader(k, v))); + req.addHeaders(Utils.getHeadersFromMetadata(request, null)); + Utils.configureSecurity(req, this.sdkConfiguration.securitySource().getSecurity(), "companyAccessAuth"); + + return req.build(); + } + } + + public static class Sync extends Base + implements RequestOperation { + public Sync(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private HttpRequest onBuildRequest(PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest request) throws Exception { + HttpRequest req = buildRequest(request, PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest.class); + return sdkConfiguration.hooks().beforeRequest(createBeforeRequestContext(), req); + } + + private HttpResponse onError(HttpResponse response, Exception error) throws Exception { + return sdkConfiguration.hooks().afterError( + createAfterErrorContext(), + Optional.ofNullable(response), + Optional.ofNullable(error)); + } + + private HttpResponse onSuccess(HttpResponse response) throws Exception { + return sdkConfiguration.hooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public HttpResponse doRequest(PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest request) { + HttpRequest r = unchecked(() -> onBuildRequest(request)).get(); + HttpResponse httpRes; + try { + httpRes = client.send(r); + if (Utils.statusCodeMatches(httpRes.statusCode(), "4XX", "5XX")) { + httpRes = onError(httpRes, null); + } else { + httpRes = onSuccess(httpRes); + } + } catch (Exception e) { + httpRes = unchecked(() -> onError(null, e)).get(); + } + + return httpRes; + } + + + @Override + public PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse handleResponse(HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse.Builder resBuilder = + PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "201")) { + // no content + return res; + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw NotFoundErrorObject.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw UnprocessableEntityError.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + throw APIException.from("API error occurred", response); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + throw APIException.from("API error occurred", response); + } + throw APIException.from("Unexpected status code received: " + response.statusCode(), response); + } + } + public static class Async extends Base + implements AsyncRequestOperation { + + public Async(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private CompletableFuture onBuildRequest(PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest request) throws Exception { + HttpRequest req = buildRequest(request, PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest.class); + return this.sdkConfiguration.asyncHooks().beforeRequest(createBeforeRequestContext(), req); + } + + private CompletableFuture> onError(HttpResponse response, Throwable error) { + return this.sdkConfiguration.asyncHooks().afterError(createAfterErrorContext(), response, error); + } + + private CompletableFuture> onSuccess(HttpResponse response) { + return this.sdkConfiguration.asyncHooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public CompletableFuture> doRequest(PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest request) { + return unchecked(() -> onBuildRequest(request)).get().thenCompose(client::sendAsync) + .handle((resp, err) -> { + if (err != null) { + return onError(null, err); + } + if (Utils.statusCodeMatches(resp.statusCode(), "4XX", "5XX")) { + return onError(resp, null); + } + return CompletableFuture.completedFuture(resp); + }) + .thenCompose(Function.identity()) + .thenCompose(this::onSuccess); + } + + @Override + public CompletableFuture handleResponse( + HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + com.gusto.embedded_api.models.operations.async.PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse.Builder resBuilder = + com.gusto.embedded_api.models.operations.async.PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + com.gusto.embedded_api.models.operations.async.PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "201")) { + // no content + return CompletableFuture.completedFuture(res); + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return NotFoundErrorObject.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return UnprocessableEntityError.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + return Utils.createAsyncApiError(response, "Unexpected status code received: " + response.statusCode()); + } + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/operations/PostV1PayrollBatches.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/operations/PostV1PayrollBatches.java new file mode 100644 index 000000000..d9551984c --- /dev/null +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/operations/PostV1PayrollBatches.java @@ -0,0 +1,306 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api.operations; + +import static com.gusto.embedded_api.operations.Operations.RequestOperation; +import static com.gusto.embedded_api.utils.Exceptions.unchecked; +import static com.gusto.embedded_api.operations.Operations.AsyncRequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api.SDKConfiguration; +import com.gusto.embedded_api.SecuritySource; +import com.gusto.embedded_api.models.components.PayrollBatch; +import com.gusto.embedded_api.models.errors.APIException; +import com.gusto.embedded_api.models.errors.PayrollBatchConflictError; +import com.gusto.embedded_api.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api.models.operations.PostV1PayrollBatchesRequest; +import com.gusto.embedded_api.models.operations.PostV1PayrollBatchesResponse; +import com.gusto.embedded_api.models.operations.PostV1PayrollBatchesSecurity; +import com.gusto.embedded_api.utils.Blob; +import com.gusto.embedded_api.utils.HTTPClient; +import com.gusto.embedded_api.utils.HTTPRequest; +import com.gusto.embedded_api.utils.Headers; +import com.gusto.embedded_api.utils.Hook.AfterErrorContextImpl; +import com.gusto.embedded_api.utils.Hook.AfterSuccessContextImpl; +import com.gusto.embedded_api.utils.Hook.BeforeRequestContextImpl; +import com.gusto.embedded_api.utils.SerializedBody; +import com.gusto.embedded_api.utils.Utils.JsonShape; +import com.gusto.embedded_api.utils.Utils; +import java.io.InputStream; +import java.lang.Exception; +import java.lang.IllegalArgumentException; +import java.lang.Object; +import java.lang.String; +import java.lang.Throwable; +import java.net.http.HttpRequest; +import java.net.http.HttpResponse; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; +import java.util.function.Function; + + +public class PostV1PayrollBatches { + + static abstract class Base { + final SDKConfiguration sdkConfiguration; + final String baseUrl; + final PostV1PayrollBatchesSecurity security; + final SecuritySource securitySource; + final HTTPClient client; + final Headers _headers; + + public Base( + SDKConfiguration sdkConfiguration, PostV1PayrollBatchesSecurity security, + Headers _headers) { + this.sdkConfiguration = sdkConfiguration; + this._headers =_headers; + this.baseUrl = this.sdkConfiguration.serverUrl(); + this.security = security; + // hooks will be passed method level security only + this.securitySource = SecuritySource.of(security); + this.client = this.sdkConfiguration.client(); + } + + Optional securitySource() { + return Optional.ofNullable(this.securitySource); + } + + BeforeRequestContextImpl createBeforeRequestContext() { + return new BeforeRequestContextImpl( + this.sdkConfiguration, + this.baseUrl, + "post-v1-payroll_batches", + java.util.Optional.empty(), + securitySource()); + } + + AfterSuccessContextImpl createAfterSuccessContext() { + return new AfterSuccessContextImpl( + this.sdkConfiguration, + this.baseUrl, + "post-v1-payroll_batches", + java.util.Optional.empty(), + securitySource()); + } + + AfterErrorContextImpl createAfterErrorContext() { + return new AfterErrorContextImpl( + this.sdkConfiguration, + this.baseUrl, + "post-v1-payroll_batches", + java.util.Optional.empty(), + securitySource()); + } + HttpRequest buildRequest(T request, TypeReference typeReference) throws Exception { + String url = Utils.generateURL( + this.baseUrl, + "/v1/payroll_batches"); + HTTPRequest req = new HTTPRequest(url, "POST"); + Object convertedRequest = Utils.convertToShape( + request, + JsonShape.DEFAULT, + typeReference); + SerializedBody serializedRequestBody = Utils.serializeRequestBody( + convertedRequest, + "requestBody", + "json", + false); + if (serializedRequestBody == null) { + throw new IllegalArgumentException("Request body is required"); + } + req.setBody(Optional.ofNullable(serializedRequestBody)); + req.addHeader("Accept", "application/json") + .addHeader("user-agent", SDKConfiguration.USER_AGENT); + _headers.forEach((k, list) -> list.forEach(v -> req.addHeader(k, v))); + req.addHeaders(Utils.getHeadersFromMetadata(request, null)); + Utils.configureSecurity(req, security); + + return req.build(); + } + } + + public static class Sync extends Base + implements RequestOperation { + public Sync( + SDKConfiguration sdkConfiguration, PostV1PayrollBatchesSecurity security, + Headers _headers) { + super( + sdkConfiguration, security, + _headers); + } + + private HttpRequest onBuildRequest(PostV1PayrollBatchesRequest request) throws Exception { + HttpRequest req = buildRequest(request, new TypeReference() {}); + return sdkConfiguration.hooks().beforeRequest(createBeforeRequestContext(), req); + } + + private HttpResponse onError(HttpResponse response, Exception error) throws Exception { + return sdkConfiguration.hooks().afterError( + createAfterErrorContext(), + Optional.ofNullable(response), + Optional.ofNullable(error)); + } + + private HttpResponse onSuccess(HttpResponse response) throws Exception { + return sdkConfiguration.hooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public HttpResponse doRequest(PostV1PayrollBatchesRequest request) { + HttpRequest r = unchecked(() -> onBuildRequest(request)).get(); + HttpResponse httpRes; + try { + httpRes = client.send(r); + if (Utils.statusCodeMatches(httpRes.statusCode(), "4XX", "5XX")) { + httpRes = onError(httpRes, null); + } else { + httpRes = onSuccess(httpRes); + } + } catch (Exception e) { + httpRes = unchecked(() -> onError(null, e)).get(); + } + + return httpRes; + } + + + @Override + public PostV1PayrollBatchesResponse handleResponse(HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + PostV1PayrollBatchesResponse.Builder resBuilder = + PostV1PayrollBatchesResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + PostV1PayrollBatchesResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "201")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return res.withPayrollBatch(Utils.unmarshal(response, new TypeReference() {})); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "409")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw PayrollBatchConflictError.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw UnprocessableEntityError.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + throw APIException.from("API error occurred", response); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + throw APIException.from("API error occurred", response); + } + throw APIException.from("Unexpected status code received: " + response.statusCode(), response); + } + } + public static class Async extends Base + implements AsyncRequestOperation { + + public Async( + SDKConfiguration sdkConfiguration, PostV1PayrollBatchesSecurity security, + Headers _headers) { + super( + sdkConfiguration, security, + _headers); + } + + private CompletableFuture onBuildRequest(PostV1PayrollBatchesRequest request) throws Exception { + HttpRequest req = buildRequest(request, new TypeReference() {}); + return this.sdkConfiguration.asyncHooks().beforeRequest(createBeforeRequestContext(), req); + } + + private CompletableFuture> onError(HttpResponse response, Throwable error) { + return this.sdkConfiguration.asyncHooks().afterError(createAfterErrorContext(), response, error); + } + + private CompletableFuture> onSuccess(HttpResponse response) { + return this.sdkConfiguration.asyncHooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public CompletableFuture> doRequest(PostV1PayrollBatchesRequest request) { + return unchecked(() -> onBuildRequest(request)).get().thenCompose(client::sendAsync) + .handle((resp, err) -> { + if (err != null) { + return onError(null, err); + } + if (Utils.statusCodeMatches(resp.statusCode(), "4XX", "5XX")) { + return onError(resp, null); + } + return CompletableFuture.completedFuture(resp); + }) + .thenCompose(Function.identity()) + .thenCompose(this::onSuccess); + } + + @Override + public CompletableFuture handleResponse( + HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + com.gusto.embedded_api.models.operations.async.PostV1PayrollBatchesResponse.Builder resBuilder = + com.gusto.embedded_api.models.operations.async.PostV1PayrollBatchesResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + com.gusto.embedded_api.models.operations.async.PostV1PayrollBatchesResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "201")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return Utils.unmarshalAsync(response, new TypeReference() {}) + .thenApply(res::withPayrollBatch); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "409")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return PayrollBatchConflictError.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return UnprocessableEntityError.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + return Utils.createAsyncApiError(response, "Unexpected status code received: " + response.statusCode()); + } + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/operations/PutV1CompaniesCompanyIdFederalTaxDetails.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/operations/PutV1CompaniesCompanyIdFederalTaxDetails.java index 97429ba9b..bf6590826 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/operations/PutV1CompaniesCompanyIdFederalTaxDetails.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/operations/PutV1CompaniesCompanyIdFederalTaxDetails.java @@ -12,6 +12,7 @@ import com.gusto.embedded_api.SecuritySource; import com.gusto.embedded_api.models.components.FederalTaxDetails; import com.gusto.embedded_api.models.errors.APIException; +import com.gusto.embedded_api.models.errors.ForbiddenErrorObject; import com.gusto.embedded_api.models.errors.NotFoundErrorObject; import com.gusto.embedded_api.models.errors.UnprocessableEntityError; import com.gusto.embedded_api.models.operations.PutV1CompaniesCompanyIdFederalTaxDetailsRequest; @@ -179,6 +180,13 @@ public PutV1CompaniesCompanyIdFederalTaxDetailsResponse handleResponse(HttpRespo throw APIException.from("Unexpected content-type received: " + contentType, response); } } + if (Utils.statusCodeMatches(response.statusCode(), "403")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw ForbiddenErrorObject.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } if (Utils.statusCodeMatches(response.statusCode(), "404")) { if (Utils.contentTypeMatches(contentType, "application/json")) { throw NotFoundErrorObject.from(response); @@ -264,6 +272,14 @@ public CompletableFuture securitySource() { + return Optional.ofNullable(this.securitySource); + } + + BeforeRequestContextImpl createBeforeRequestContext() { + return new BeforeRequestContextImpl( + this.sdkConfiguration, + this.baseUrl, + "put-v1-partner-managed-companies-company-uuid-disassociate", + java.util.Optional.empty(), + securitySource()); + } + + AfterSuccessContextImpl createAfterSuccessContext() { + return new AfterSuccessContextImpl( + this.sdkConfiguration, + this.baseUrl, + "put-v1-partner-managed-companies-company-uuid-disassociate", + java.util.Optional.empty(), + securitySource()); + } + + AfterErrorContextImpl createAfterErrorContext() { + return new AfterErrorContextImpl( + this.sdkConfiguration, + this.baseUrl, + "put-v1-partner-managed-companies-company-uuid-disassociate", + java.util.Optional.empty(), + securitySource()); + } + HttpRequest buildRequest(T request, Class klass) throws Exception { + String url = Utils.generateURL( + klass, + this.baseUrl, + "/v1/partner_managed_companies/{company_uuid}/disassociate", + request, null); + HTTPRequest req = new HTTPRequest(url, "PUT"); + req.addHeader("Accept", "application/json") + .addHeader("user-agent", SDKConfiguration.USER_AGENT); + _headers.forEach((k, list) -> list.forEach(v -> req.addHeader(k, v))); + req.addHeaders(Utils.getHeadersFromMetadata(request, null)); + Utils.configureSecurity(req, security); + + return req.build(); + } + } + + public static class Sync extends Base + implements RequestOperation { + public Sync( + SDKConfiguration sdkConfiguration, PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity security, + Headers _headers) { + super( + sdkConfiguration, security, + _headers); + } + + private HttpRequest onBuildRequest(PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest request) throws Exception { + HttpRequest req = buildRequest(request, PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest.class); + return sdkConfiguration.hooks().beforeRequest(createBeforeRequestContext(), req); + } + + private HttpResponse onError(HttpResponse response, Exception error) throws Exception { + return sdkConfiguration.hooks().afterError( + createAfterErrorContext(), + Optional.ofNullable(response), + Optional.ofNullable(error)); + } + + private HttpResponse onSuccess(HttpResponse response) throws Exception { + return sdkConfiguration.hooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public HttpResponse doRequest(PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest request) { + HttpRequest r = unchecked(() -> onBuildRequest(request)).get(); + HttpResponse httpRes; + try { + httpRes = client.send(r); + if (Utils.statusCodeMatches(httpRes.statusCode(), "4XX", "5XX")) { + httpRes = onError(httpRes, null); + } else { + httpRes = onSuccess(httpRes); + } + } catch (Exception e) { + httpRes = unchecked(() -> onError(null, e)).get(); + } + + return httpRes; + } + + + @Override + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse handleResponse(HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse.Builder resBuilder = + PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "200")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return res.withPartnerManagedCompanyDisassociateResponse(Utils.unmarshal(response, new TypeReference() {})); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw NotFoundErrorObject.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw UnprocessableEntityError.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + throw APIException.from("API error occurred", response); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + throw APIException.from("API error occurred", response); + } + throw APIException.from("Unexpected status code received: " + response.statusCode(), response); + } + } + public static class Async extends Base + implements AsyncRequestOperation { + + public Async( + SDKConfiguration sdkConfiguration, PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity security, + Headers _headers) { + super( + sdkConfiguration, security, + _headers); + } + + private CompletableFuture onBuildRequest(PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest request) throws Exception { + HttpRequest req = buildRequest(request, PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest.class); + return this.sdkConfiguration.asyncHooks().beforeRequest(createBeforeRequestContext(), req); + } + + private CompletableFuture> onError(HttpResponse response, Throwable error) { + return this.sdkConfiguration.asyncHooks().afterError(createAfterErrorContext(), response, error); + } + + private CompletableFuture> onSuccess(HttpResponse response) { + return this.sdkConfiguration.asyncHooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public CompletableFuture> doRequest(PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest request) { + return unchecked(() -> onBuildRequest(request)).get().thenCompose(client::sendAsync) + .handle((resp, err) -> { + if (err != null) { + return onError(null, err); + } + if (Utils.statusCodeMatches(resp.statusCode(), "4XX", "5XX")) { + return onError(resp, null); + } + return CompletableFuture.completedFuture(resp); + }) + .thenCompose(Function.identity()) + .thenCompose(this::onSuccess); + } + + @Override + public CompletableFuture handleResponse( + HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + com.gusto.embedded_api.models.operations.async.PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse.Builder resBuilder = + com.gusto.embedded_api.models.operations.async.PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + com.gusto.embedded_api.models.operations.async.PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "200")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return Utils.unmarshalAsync(response, new TypeReference() {}) + .thenApply(res::withPartnerManagedCompanyDisassociateResponse); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return NotFoundErrorObject.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return UnprocessableEntityError.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + return Utils.createAsyncApiError(response, "Unexpected status code received: " + response.statusCode()); + } + } +} diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/utils/AsyncRetries.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/utils/AsyncRetries.java index 39e2c224e..e5b7cb284 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/utils/AsyncRetries.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/utils/AsyncRetries.java @@ -98,6 +98,15 @@ private boolean shouldRetryIOException(Throwable e, BackoffStrategy backoff) { } private static long retryAfterMs(HttpResponse response) { + String retryAfterMs = response.headers().firstValue("retry-after-ms").orElse(null); + if (retryAfterMs != null && !retryAfterMs.isEmpty()) { + try { + long milliseconds = Long.parseLong(retryAfterMs); + return milliseconds < 0 ? 0 : milliseconds; + } catch (NumberFormatException ignored) { + } + } + String retryAfter = response.headers().firstValue("retry-after").orElse(null); if (retryAfter == null || retryAfter.isEmpty()) { return 0; @@ -152,7 +161,7 @@ private void maybeRetry(Supplier>> task, String reason = e instanceof AsyncRetryableException ? "status " + ((AsyncRetryableException) e).response().statusCode() : e.getClass().getSimpleName(); - logger.trace("Async retrying due to {} - waiting {}ms before attempt {}", intervalMs, state.count() + 1); + logger.trace("Async retrying due to {} - waiting {}ms before attempt {}", reason, intervalMs, state.count() + 1); } scheduler.schedule( diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/utils/Multipart.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/utils/Multipart.java index 12e748114..aba4d02c2 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/utils/Multipart.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/utils/Multipart.java @@ -123,7 +123,7 @@ static final class FormField implements Part { FormField(String name, String value, String contentType) { this.name = name; this.value = value; - this.contentType = contentType != null ? contentType : "text/plain; charset=UTF-8"; + this.contentType = stripCrlf(contentType != null ? contentType : "text/plain; charset=UTF-8"); } @Override @@ -153,7 +153,7 @@ static final class FilePart implements Part { FilePart(String name, Blob blob, String filename, String contentType) { this.name = name; this.filename = filename; - this.contentType = contentType != null ? contentType : DEFAULT_FILE_CT; + this.contentType = stripCrlf(contentType != null ? contentType : DEFAULT_FILE_CT); this.blob = blob; } @@ -188,6 +188,12 @@ private static String escapeQuoted(String s) { return out.toString(); } + private static String stripCrlf(String s) { + if (s == null) return null; + if (s.indexOf('\r') < 0 && s.indexOf('\n') < 0) return s; + return s.replace("\r", "").replace("\n", ""); + } + /** * RFC 5987 filename* with ASCII fallback. */ diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/utils/Retries.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/utils/Retries.java index d12de6840..61619d51f 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/utils/Retries.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/utils/Retries.java @@ -99,6 +99,15 @@ private HttpResponse getResponse(boolean retryConnectError, boolean } private static long retryAfterMs(HttpResponse response) { + String retryAfterMs = response.headers().firstValue("retry-after-ms").orElse(null); + if (retryAfterMs != null && !retryAfterMs.isEmpty()) { + try { + long milliseconds = Long.parseLong(retryAfterMs); + return milliseconds < 0 ? 0 : milliseconds; + } catch (NumberFormatException ignored) { + } + } + String retryAfter = response.headers().firstValue("retry-after").orElse(null); if (retryAfter == null || retryAfter.isEmpty()) { return 0; diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/utils/SpeakeasyHTTPClient.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/utils/SpeakeasyHTTPClient.java index f64093add..2abe3eada 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/utils/SpeakeasyHTTPClient.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/utils/SpeakeasyHTTPClient.java @@ -38,6 +38,15 @@ public class SpeakeasyHTTPClient implements HTTPClient { private final HttpClient client = HttpClient.newHttpClient(); + private static final Set STREAMING_MEDIA_TYPES = + Set.of("text/event-stream", "application/x-ndjson", "application/jsonl"); + + private static boolean isStreamingMediaType(String value) { + int paramsIndex = value.indexOf(';'); + String mediaType = paramsIndex == -1 ? value : value.substring(0, paramsIndex); + return STREAMING_MEDIA_TYPES.contains(mediaType.trim().toLowerCase(Locale.ENGLISH)); + } + /** * Sets debug logging on or off for requests and responses including bodies for JSON content. *

    @@ -162,7 +171,7 @@ private static HttpResponse logResponse(HttpResponse r log("Response headers: " + redactHeaders(response.headers())); // skip caching for streaming responses - they may hang - if (contentType.startsWith("text/event-stream") || contentType.startsWith("application/x-ndjson")) { + if (isStreamingMediaType(contentType)) { return response; } diff --git a/gusto_embedded/src/main/java/com/gusto/embedded_api/utils/StreamingParser.java b/gusto_embedded/src/main/java/com/gusto/embedded_api/utils/StreamingParser.java index c61e65636..0cc745f44 100644 --- a/gusto_embedded/src/main/java/com/gusto/embedded_api/utils/StreamingParser.java +++ b/gusto_embedded/src/main/java/com/gusto/embedded_api/utils/StreamingParser.java @@ -176,18 +176,25 @@ private static class JsonLContentProcessor implements StreamContentProcessor eventId = Optional.empty(); + // Scan state preserved across reads; offsets stay valid because the + // parser compacts and resets this state after each boundary. + private int scanPos = 0; + private int lineStart = 0; + // A trailing CR may complete to CRLF on the next read; in that case + // the LF belongs to the same line ending, not a new empty line. + private boolean pendingCRLF = false; + @Override public BoundaryInfo findBoundary(byte[] data, int limit) { - int lineStart = 0, i = lineStart; + int i = scanPos; + if (pendingCRLF) { + pendingCRLF = false; + if (i < limit && data[i] == LF && i == lineStart) { + lineStart = i + 1; + i = i + 1; + } + } while (i < limit) { for (byte[] pattern : BOUNDARY_PATTERNS) { if (matchesPattern(data, i, limit, pattern)) { @@ -229,8 +251,14 @@ public BoundaryInfo findBoundary(byte[] data, int limit) { boundStart--; } int boundLength = (lineStart - boundStart) + pattern.length; + scanPos = 0; + lineStart = 0; + pendingCRLF = false; return new BoundaryInfo(boundStart, boundLength); } + if (pattern.length == 1 && data[i] == CR && i == limit - 1) { + pendingCRLF = true; + } lineStart = i + pattern.length; i = lineStart - 1; break; @@ -238,6 +266,7 @@ public BoundaryInfo findBoundary(byte[] data, int limit) { } i++; } + scanPos = i; return new BoundaryInfo(-1, 0); } diff --git a/gusto_embedded_v_2025_11_15/.speakeasy/gen.lock b/gusto_embedded_v_2025_11_15/.speakeasy/gen.lock index 0894181c4..be7f0fa06 100644 --- a/gusto_embedded_v_2025_11_15/.speakeasy/gen.lock +++ b/gusto_embedded_v_2025_11_15/.speakeasy/gen.lock @@ -1,25 +1,25 @@ lockVersion: 2.0.0 id: 42ebb971-732f-4894-ae20-8842c657b4c9 management: - docChecksum: 50e50d4f39851f91a76d544dc10b3c50 + docChecksum: a7b8226a5fbe7bc35f35a453c74916e6 docVersion: "2025-11-15" - speakeasyVersion: 1.768.2 - generationVersion: 2.889.1 - releaseVersion: 0.0.2 - configChecksum: 59848e240d8a9f29c817b887a1944c58 + speakeasyVersion: 1.796.4 + generationVersion: 2.935.1 + releaseVersion: 0.1.0 + configChecksum: 18fd8ba3d0aeb0c8862c4a3e44178958 repoURL: https://github.com/Gusto/gusto-java-client.git repoSubDirectory: gusto_embedded_v_2025_11_15 installationURL: https://github.com/Gusto/gusto-java-client persistentEdits: - generation_id: 56621e24-a272-49db-8330-df14fc8485a0 - pristine_commit_hash: 3273cf4c9522c9b1b0dfb8d69af8538088f22173 - pristine_tree_hash: 1ca26428f0c67dc79081e636d6e33c4b29f5e922 + generation_id: 77a6e4ce-ce96-4c3c-97f5-5d22ad0e4952 + pristine_commit_hash: bf3739bd0b26d60b637df1c182df71176cedb2c4 + pristine_tree_hash: dacc5f7e6afd22b636fc3fa3a50eb1bff93dc6f7 features: java: additionalDependencies: 0.1.0 - additionalProperties: 0.0.1 + additionalProperties: 0.0.2 constsAndDefaults: 0.1.3 - core: 3.55.26 + core: 3.57.2 deprecations: 2.81.2 downloadStreams: 0.1.1 flattening: 2.81.1 @@ -32,10 +32,10 @@ features: inputOutputModels: 2.83.0 methodSecurity: 2.82.4 nameOverrides: 2.81.5 - nullables: 0.1.0 + nullables: 0.1.1 sdkHooks: 1.2.0 serverIDs: 2.81.1 - unions: 0.3.6 + unions: 0.3.8 uploadStreams: 0.1.0 trackedFiles: .gitattributes: @@ -44,12 +44,12 @@ trackedFiles: pristine_git_object: 8f8da085659bbf87d293b49b4593e43137a4acb0 USAGE.md: id: 3aed33ce6e6f - last_write_checksum: sha1:e57f19fc76c5f0fcf3d1b153e2527ef870d01578 - pristine_git_object: 34158a53f63ed474fcd076cda24d0e7876763333 + last_write_checksum: sha1:94644a6b62bb8f326fda58f3c77ef847f2f31a7b + pristine_git_object: e9a5e30f78a21230ca5aba0659f7176c69e317c9 build.gradle: id: f07866736216 - last_write_checksum: sha1:629dedb57966a0ed5b8c7cdfd9e3426a50ce2b18 - pristine_git_object: 7d5c0bd772abaa070c96b326694d79cee5b9851f + last_write_checksum: sha1:f6dbc8273b8f83755a33dd9b4725b4a762d9f7c8 + pristine_git_object: 5c766502965e03fdb49d39d2f6ca9d337ca61d29 docs/models/components/AccountType.md: id: 32b5b4e60da5 last_write_checksum: sha1:136fed57d75ed47a1e013a8bfea1f97beb20c313 @@ -60,12 +60,8 @@ trackedFiles: pristine_git_object: f5b7cfd28505cd952e37734c708b429b54cb0940 docs/models/components/AchTransaction.md: id: c49ada058827 - last_write_checksum: sha1:939c24dd6fb6293759b8778126975c7a737afb7f - pristine_git_object: b3783352c3e5aee1507ae64ca94c0cf8abd25884 - docs/models/components/AchTransactionRecipientType.md: - id: 29d384f9a03f - last_write_checksum: sha1:4215cda6d08f678598c3c6f9197650a01b24c89f - pristine_git_object: 46c4f670bdf0b891cd28f064939dd109fd13d04d + last_write_checksum: sha1:33ab87089c8f7b839d308a8f68b56faa8aa83e99 + pristine_git_object: f5c0589dcb254082cffcac9e9a8a970428769934 docs/models/components/Action.md: id: 45f4a6205564 last_write_checksum: sha1:a9e32fa377c416567d295913a4d43e7ab2eb0d93 @@ -92,8 +88,8 @@ trackedFiles: pristine_git_object: a8deac80b4f101043b4c0e8f6e7ba2a6e6d9fb8c docs/models/components/Aggregation.md: id: e5d63019622a - last_write_checksum: sha1:be7b4f43d9031c604376d5fd015e31388c6ea5e1 - pristine_git_object: 7f05a765cb5e3268ff8f47e58f2c697c9b9eeab3 + last_write_checksum: sha1:0a5111378cb82e3e48ef7747987a3ff8455464a4 + pristine_git_object: 51a221d52f97f51a18b5e09a4c87138fc505dc04 docs/models/components/AmountType.md: id: 663939309beb last_write_checksum: sha1:782a2b9cc308d490fd46747797a33de5822dac16 @@ -140,24 +136,20 @@ trackedFiles: pristine_git_object: f1e7b78532bd5e7f2ddad60282481ec907142c51 docs/models/components/BatchAction.md: id: ddc06cdc93b6 - last_write_checksum: sha1:9c62de03ec8fe4f5ba479881030467d3afa6b1c5 - pristine_git_object: a2e2913ede8fcdac482bc135110bf30269a4f0da + last_write_checksum: sha1:9cadd8d249f9f3c4a55218e61c9a5ba471410d73 + pristine_git_object: 4849122d64d4a68407fdedc12f7570c411e175d8 docs/models/components/BenefitSummary.md: id: c5490be656b5 - last_write_checksum: sha1:8a0329c5bc402cd5da16b85fd648881f9cbfc930 - pristine_git_object: 1b77eb091a13d992af741c956ceacfdd6656e3ab - docs/models/components/BenefitSummaryEmployees.md: - id: f6a84fcf342c - last_write_checksum: sha1:351c5f9fc87b1a1e9e5565e2c2e03ab13f36f851 - pristine_git_object: 04409f20793e969537696eaf8811d1e273c352cc + last_write_checksum: sha1:760a6f470506e435577a75fb05ad32c6c0533cce + pristine_git_object: 039a753cc54bcc46f205509ceadb26645a782563 docs/models/components/BenefitSummaryPayPeriod.md: id: 18e7cd0a560f last_write_checksum: sha1:a845aae220af9821e52179b9b5f6da3bdbb15750 pristine_git_object: b18fb3329ec844e28727c4bb0ee24d4c164042db docs/models/components/BenefitTypeRequirements.md: id: 6fbbf940f96b - last_write_checksum: sha1:10a789304ba3315603ee079dcc271e1c0338aea0 - pristine_git_object: 605be56204ca00aa3e8efd28004a968bfd194174 + last_write_checksum: sha1:20fd2bcd7a34e50ca58e57e6d0c7bb024eda23c3 + pristine_git_object: 8ab0f5e7b99e2412b34f28f05e3630a9f0ca671d docs/models/components/BenefitTypeRequirementsCatchUpDefaultValue.md: id: 83a058b41ac1 last_write_checksum: sha1:bec87202b30d242cee29406db62f6d00b4530ebd @@ -166,10 +158,6 @@ trackedFiles: id: 82037000a66c last_write_checksum: sha1:39cbc56bbab8a58c90cbc68d347a79dab64b0c90 pristine_git_object: 16a2879833f7e82af30bee1319fbe36e0ebf2244 - docs/models/components/BenefitTypeRequirementsContribution.md: - id: 6b2c86311d6c - last_write_checksum: sha1:84b2d6b4aa1e15d4ab533334b0394bad85b3a464 - pristine_git_object: 02b99f614d534d8b809e9931d9472a225b9c22dd docs/models/components/BenefitTypeRequirementsCoverageAmountDefaultValue.md: id: 487b96b0e224 last_write_checksum: sha1:1f30be4cb612a58bcb7c70efa16913ae3a9f5f9c @@ -200,8 +188,56 @@ trackedFiles: pristine_git_object: 237e60bf05ed5662709f719e349d9c84045838f9 docs/models/components/Blockers.md: id: 5a96143923fd - last_write_checksum: sha1:8c32d09c90f329f6ecaf6e0f0b9474ae280d971a - pristine_git_object: a9c5d26fdb797d2aa0ebdd0707326abe4a97f232 + last_write_checksum: sha1:f59a22b61a811345cecc10ebf23ce4405acf1cd9 + pristine_git_object: 3f3950886ce1dc651b1d83c939520cd71fb17869 + docs/models/components/BulkReport.md: + id: 72c5edae0d6c + last_write_checksum: sha1:4db6bf11bd83ec9c1653364686dfc244ad843c66 + pristine_git_object: f74c41ef5f3bce048304242ec7eb4cbfa935b8a4 + docs/models/components/BulkReportBody.md: + id: 5456d4b00a13 + last_write_checksum: sha1:065a9f701fa120828d66bc4b9441094c44c9526e + pristine_git_object: a492fe670a908de273a0d46095561554a7cd0e2d + docs/models/components/BulkReportCompany.md: + id: b74200873d5a + last_write_checksum: sha1:9060cbfddd5705eda765eaca15b5d8d7fa247191 + pristine_git_object: 403c6549099b45c49728e26d70d66195f397fc38 + docs/models/components/BulkReportCompanyStatus.md: + id: 0320128bc4dd + last_write_checksum: sha1:08139e604cb0a4cd2f48649048c01cd008893b71 + pristine_git_object: c829e3ddafc5ee7fd5cc6122c9804bfe2875b115 + docs/models/components/BulkReportCustomReportItem.md: + id: 1357328d5841 + last_write_checksum: sha1:075640b9f30744fa01221e33ffc2719e84bd7931 + pristine_git_object: 60c0cbc47c2ef50f3848747c1bba8f0bcf581289 + docs/models/components/BulkReportGeneralLedgerItem.md: + id: b9b8fe1d0284 + last_write_checksum: sha1:90a0eacd63291ea506235931941955d10d1802a6 + pristine_git_object: c2b22186bcc5e2d5a454f8871284598afeb0cde4 + docs/models/components/BulkReportGeneralLedgerItemReportType.md: + id: 6cbd2e830f8c + last_write_checksum: sha1:9d49351a0e41876f93112d6301762b006263b71e + pristine_git_object: 20127f889d18cbc9772fc936c8598f56df33fd99 + docs/models/components/BulkReportItem.md: + id: b26e1dfbcbc7 + last_write_checksum: sha1:5f7ce5ccf97e79a6454c761b161c2a2b8df78745 + pristine_git_object: 822bc679de20e53aacfa75c0483dd5dd2b2568a9 + docs/models/components/BulkReportItemResult.md: + id: c22991b3fae2 + last_write_checksum: sha1:832b06c0f81a7ee828d822ef6a1b6efa73e3d81e + pristine_git_object: 035a9001d7ffa6d1d1463ec500aee95aacfd9b5c + docs/models/components/BulkReportItemResultReportType.md: + id: f6058cdad26b + last_write_checksum: sha1:6f1b71dff5b6090f48b8a60511d6414b54a6a7b7 + pristine_git_object: 0c1de1bead48115a76b49655a4ddff10779d7155 + docs/models/components/BulkReportItemResultStatus.md: + id: 72898a8deda7 + last_write_checksum: sha1:ec288bee43429cf574f6d28b38e8318cbd7abd50 + pristine_git_object: 7ae0b8c20771ace0475e9729511737e5580050c2 + docs/models/components/BulkReportStatus.md: + id: bcdde57b8dba + last_write_checksum: sha1:ee5d351065e5fccbf4b45b72691cb86e3848e66b + pristine_git_object: 28e05905b5f923af4cfde5d7208e0af598c46a75 docs/models/components/CatchUp.md: id: 75e0752e3b9d last_write_checksum: sha1:408fcb57b5bb0609dc60b24f397db3189fc54c83 @@ -232,8 +268,8 @@ trackedFiles: pristine_git_object: 2f0d92ede7ce8f75b2f5ba30268162a440a16989 docs/models/components/Columns.md: id: 2c0ae85d9402 - last_write_checksum: sha1:7cc1519e273f4671001f239528e5afec4ee4ccd6 - pristine_git_object: 419664f0d6af9c451c2319c3e448e5e45e807d39 + last_write_checksum: sha1:168765d09f9b5244913efa88a7a7217250a7f1c7 + pristine_git_object: f5e1d9ed399fe7c75677f02d049116e880567225 docs/models/components/Company.md: id: a50352948c02 last_write_checksum: sha1:c2ab1a6c1b7efaaa928a44f6993c65d625ede642 @@ -404,12 +440,12 @@ trackedFiles: pristine_git_object: b432375dc6fd2a9a449be803240cf2cc7926c5ef docs/models/components/Contractor.md: id: 1920d517318b - last_write_checksum: sha1:c22099280f39d0b22bc2e6bb679cbaa41bf43f38 - pristine_git_object: e9f68045bdf0260520e11ceff3f6791d92845e47 + last_write_checksum: sha1:3e5916a700abd7446c9ae2d58f80d4a09b536217 + pristine_git_object: 78bd8a45268e5715395969d1970b964f9359b21d docs/models/components/ContractorAddress.md: id: 6e7add70317c - last_write_checksum: sha1:1d517bbca73d42565872162908d8e0a877bc19ba - pristine_git_object: 782ff1953563bf0db4097216dd2118a5123a8735 + last_write_checksum: sha1:c6b6d5cafabfec07e90591acb95720de6ccd3bfb + pristine_git_object: 9927dcc3a4d81469ccb45540534b59cc6e009003 docs/models/components/ContractorAddressUpdateBody.md: id: c41c79d09142 last_write_checksum: sha1:5814f6c0a4e8c4ca19d4f69f9e152632dfdbc3ef @@ -432,8 +468,8 @@ trackedFiles: pristine_git_object: d271b78b54be53a87bc401ceda76efdd4286130c docs/models/components/ContractorCreateRequestBody.md: id: ee6e4128485c - last_write_checksum: sha1:9542498db6005a3d3c86ae8bf2c18176bf9d2038 - pristine_git_object: 9507c9ce25a51d2296d6f8bbc7116ed4a6d40fe8 + last_write_checksum: sha1:d485cce2a48fac03eaef2cf3b8197cc6d59baed3 + pristine_git_object: 9c18cf5c1ba8f4b98333bd4b74355dc0115b50c5 docs/models/components/ContractorCreateRequestBodyType.md: id: 5b55ad3dc1ec last_write_checksum: sha1:b99174823da0e4b95ddcd7abc138e004774763e8 @@ -442,18 +478,10 @@ trackedFiles: id: 9093052f54c5 last_write_checksum: sha1:a114f81a505093bd899fcb14824b8b637199d97a pristine_git_object: 9634170c6c3c81bad8c67f0669ec550fcce68e7a - docs/models/components/ContractorMemberPortalInvitationStatus.md: - id: 64e0e7b7efb5 - last_write_checksum: sha1:fb4865f78b87db13fecad2b9d05b8f7acbc6ac81 - pristine_git_object: 88a4a9ba616efd725d1dbef3934c2916a84c8d74 docs/models/components/ContractorOnboardingStatus.md: id: c306bc054c2a last_write_checksum: sha1:24b923fabf9ae55d38162de2965d892fdd999b98 pristine_git_object: 07dd219462278f2d07aa0f8d8e257b93517b2554 - docs/models/components/ContractorOnboardingStatus1.md: - id: df90c6ab9d9a - last_write_checksum: sha1:fe2a7e0a2e0288a1b592f4a632204dad46cb8528 - pristine_git_object: 012f0e095ec48ad37f6fa6cf1da92cfd15c6415e docs/models/components/ContractorOnboardingStatusOnboardingStatus.md: id: a96d4a36ea23 last_write_checksum: sha1:a0e4c51ed558b5f4f9e0bd6f5560a6277ad1b96b @@ -484,20 +512,12 @@ trackedFiles: pristine_git_object: c27992505c23163bf1532027513f18004099c49d docs/models/components/ContractorPaymentDetailsList.md: id: 05a6d3271b00 - last_write_checksum: sha1:901deddf7ed8f8b32074e15dede2f4b22badca56 - pristine_git_object: a393d2b51cd2c44f12d69167951a8438e2cc1281 + last_write_checksum: sha1:bf4187f87f088bd43f43abe05831a81d5392cc04 + pristine_git_object: db2d5093b391f262d66aaced1392669f9a61b267 docs/models/components/ContractorPaymentDetailsListPaymentMethod.md: id: a05648d10967 last_write_checksum: sha1:e4b96c0a798bc72f171565b468b5e8ab9eb072ba pristine_git_object: 62587fa9072fbfd45f562ac63ac21db227cf24de - docs/models/components/ContractorPaymentDetailsListSplitBy.md: - id: b5f97cf3c40b - last_write_checksum: sha1:d18a203059c13b4d471803cc46232afee34c812b - pristine_git_object: 3270f3db2f28d1309f66c1f9555339f1a461f980 - docs/models/components/ContractorPaymentDetailsListSplits.md: - id: 22ab2f5f3e1f - last_write_checksum: sha1:e6a393c4f09bd581f8a44ce20449f2d40fd34fe6 - pristine_git_object: 89d0bc39dab7046e5092b874ad5822f9c2169e28 docs/models/components/ContractorPaymentForGroup.md: id: e008571f2391 last_write_checksum: sha1:f686e34304e836599ef4e4c83f4bde8b033409f4 @@ -508,8 +528,8 @@ trackedFiles: pristine_git_object: 86f54701daf9892a648e2e3ad7614bea7946302c docs/models/components/ContractorPaymentForGroupPreview.md: id: f97b69bed015 - last_write_checksum: sha1:ea75a4a97299dd1a0a23ce05d8e4ed00af8eaa06 - pristine_git_object: 3692137c4272fb25dc79e67f5de351dd1a534092 + last_write_checksum: sha1:6cea8966d8e1bf06a08c1c365a24ff7632c8d282 + pristine_git_object: ff0dddb1f402edfe02a047bbb302c866e58be36b docs/models/components/ContractorPaymentForGroupPreviewPaymentMethod.md: id: 9ae712d92f35 last_write_checksum: sha1:1369664ebc8ac87794d8906d8d43b82225c53f0c @@ -518,10 +538,6 @@ trackedFiles: id: 7db296ff554e last_write_checksum: sha1:22742eec4ba2205d300292fdbc9c09f0ef516afc pristine_git_object: 66983273c066734317f2a7bc31dc1b32c80b0bb7 - docs/models/components/ContractorPaymentForGroupPreviewWageType.md: - id: 1d1887b54b00 - last_write_checksum: sha1:8d221452ee9ff6c0e71832f0d30ef8dd112bb9e5 - pristine_git_object: aec52c87816e32a3080ec6163f58c3d38e3000f0 docs/models/components/ContractorPaymentForGroupStatus.md: id: c2349f6e3976 last_write_checksum: sha1:d603228f83b65f25f14a18155996014d67939820 @@ -548,16 +564,12 @@ trackedFiles: pristine_git_object: f6651bf542e727f99ed1b30cddbc4eaac2b578e2 docs/models/components/ContractorPaymentGroupPreview.md: id: 67cf3509a6eb - last_write_checksum: sha1:1788ff25019d22d4ac7bd653f06fcc0681e07834 - pristine_git_object: 3783123f764f3dda950d96bb4a78a84a61ec12fc + last_write_checksum: sha1:1cd98804a9289678b8a9bdddd1d8cbe02d084e62 + pristine_git_object: bf2893ac1d9b4933edba6752ba6f9afddfe21f8a docs/models/components/ContractorPaymentGroupPreviewStatus.md: id: b7e4e82369a4 last_write_checksum: sha1:1b0cbe8c50f4cc28a0445ce54573f68efd1048bc pristine_git_object: 70800c3288269f058b5ad82e51052e100ec96ac0 - docs/models/components/ContractorPaymentGroupPreviewTotals.md: - id: 92b24d10edaa - last_write_checksum: sha1:c3d67d0ac2ab9c7d334717b6221949a637a5ca93 - pristine_git_object: 99c1c6ceaace3d490d3137e882ed52094ae78baa docs/models/components/ContractorPaymentGroupStatus.md: id: 73671f7c5629 last_write_checksum: sha1:12e3a93b66bd6457890a7c1d91f784d9c74b01d2 @@ -578,6 +590,22 @@ trackedFiles: id: c9289cc61b3b last_write_checksum: sha1:e8486803edc4a43235044125f7d2adf27bde177c pristine_git_object: 4388b6c92539ca4643854c944c6776c9e2c05ba5 + docs/models/components/ContractorPaymentListing.md: + id: 4b6ffe99500c + last_write_checksum: sha1:66eac01194216f16aafa370f5086fb86cdcf73ea + pristine_git_object: be5d0c0234560fe9d3b6f75b86996387c4c302f9 + docs/models/components/ContractorPaymentListingPaymentMethod.md: + id: "744218089439" + last_write_checksum: sha1:26134b77dce85434e609e3500eed7cb045da652a + pristine_git_object: bfa46a930bd03d42d34dbc4dfbeb273128fd5293 + docs/models/components/ContractorPaymentListingStatus.md: + id: 1717d98c291c + last_write_checksum: sha1:2b8b0aede6cc5b9cf07ea7d88e33b0578b097e86 + pristine_git_object: 8fa54ac309e14c10dc1b2cb55a3a2a8de0618bd1 + docs/models/components/ContractorPaymentListingWageType.md: + id: f0624ce91793 + last_write_checksum: sha1:4e561dfb18290a826b7ab5f53a4b18ad9163fb39 + pristine_git_object: f8b638b081ad56b10f48279b09ec152b2192c804 docs/models/components/ContractorPaymentMethod.md: id: b1de3b896787 last_write_checksum: sha1:4f69bd45acfe350f44958118aea4612f63114102 @@ -600,12 +628,12 @@ trackedFiles: pristine_git_object: 8aa4f83334d8f00eb8c575a8ccb651033b34bc3a docs/models/components/ContractorPaymentReceipt.md: id: bc8aad722e24 - last_write_checksum: sha1:dce0f49192b9635beef89274116793d0d57c5f2b - pristine_git_object: 52b5de482f04fb9582e06dea4ead2fec827a6bba - docs/models/components/ContractorPaymentReceiptLicensee.md: - id: 8274d2aacec3 - last_write_checksum: sha1:f5eef038ae99bab3c5ba3f51009bb27028da10aa - pristine_git_object: b0731de4a0ff6ca1ae3b01ec13d835433f6cd2ab + last_write_checksum: sha1:f030c26803492cce8da8e786d9a71f25a006ac4a + pristine_git_object: f2fd2d6c0e19e761ae4a74aa8535d810dba13f69 + docs/models/components/ContractorPaymentReceiptContractorPayments.md: + id: 88f22d09783e + last_write_checksum: sha1:6e72e09920fd946ec2fc2ddfe71f7c48f631e950 + pristine_git_object: c2b4897c07c7a25a888e02292aa147d60cf8c987 docs/models/components/ContractorPaymentReceiptPaymentMethod.md: id: 9d6ca11aed19 last_write_checksum: sha1:aade35268f4169e27f3c8a597a8f1cd0a3621089 @@ -620,8 +648,8 @@ trackedFiles: pristine_git_object: 4d5d082728f299dff5fa73bb6cd273972709f2ee docs/models/components/ContractorPaymentSummary.md: id: 63fe2e442467 - last_write_checksum: sha1:cf55960b1e01a38c39367571d5062196ec2a5400 - pristine_git_object: 60f4326a58241b92a6519f6af4d45349d80fd399 + last_write_checksum: sha1:c3d8c1ab28e3d5cb9fafe91ffd7840c7db07c2f2 + pristine_git_object: c3777cb7f8e7bfb1bd2f73c40daf65c674127eb2 docs/models/components/ContractorPaymentSummaryByDates.md: id: 27094f498a71 last_write_checksum: sha1:1991066ca0a4bda6e708267c4b2c4ff905b0a439 @@ -634,18 +662,14 @@ trackedFiles: id: 895f4b7c1b2c last_write_checksum: sha1:1a0af244dc71013ec2f15318eb48489dbabae808 pristine_git_object: 61230941a8c002099449bf04887bcb7f5d44f9c3 - docs/models/components/ContractorPaymentSummaryContractorPayments.md: - id: 166d2a3cb65a - last_write_checksum: sha1:c0f1361d888de6a8f51fd312892d8097f98de9da - pristine_git_object: 24e1c0548324ccad771e5939bae9010101a55a76 docs/models/components/ContractorPaymentWageType.md: id: 499bee63481b last_write_checksum: sha1:b08556b8d45d78ab10d15fbd970ea7a507c21eff pristine_git_object: dd90d5ac74f43d3c85ba805374c6871591c00545 docs/models/components/ContractorPayments.md: id: eb57e3c43cbe - last_write_checksum: sha1:671fdeacb4de1342457989ab8867e0da396f72eb - pristine_git_object: e474adff9b306fb131ecc5dbb71c1dd5495c0cd5 + last_write_checksum: sha1:e7afe357710e348e20d946ebaac1794c9129b67b + pristine_git_object: bda0472aeacec4d1319df443288990aef6b836aa docs/models/components/ContractorPaymentsPreview.md: id: ec07b87aaaf7 last_write_checksum: sha1:69cf3dc15ea241e4667b7d987e08f4187c651dbf @@ -672,8 +696,8 @@ trackedFiles: pristine_git_object: 922608c169cb8d3b2e34076784a440a7e2927f12 docs/models/components/ContractorUpdateRequestBody.md: id: 5da71416e591 - last_write_checksum: sha1:7a8ddad8ff3965f4a3a8488ac8ad64f82b225fea - pristine_git_object: aafda5b8808df2353bc931eda3414ebb96b63f02 + last_write_checksum: sha1:a6939fb3a5d95149b782cc567aef2c087988ade9 + pristine_git_object: b4cf16a094d5f1f0452b16b3582f5c901a3a732d docs/models/components/ContractorUpdateRequestBodyType.md: id: 74afb8e29b3d last_write_checksum: sha1:890c9a4c4bf3a0013b6598c3a61e4f9b22b097a0 @@ -682,14 +706,18 @@ trackedFiles: id: 15e3ac5dda07 last_write_checksum: sha1:227cec26ba2f9d355a5b1552e28445f193c6bdb4 pristine_git_object: f89e770dc16e94da7c1d8c5caa70704159f47aa0 + docs/models/components/ContractorWageType.md: + id: 489fc035761c + last_write_checksum: sha1:0b5577bca0a3f97729bdb43293b7942f2f6ce46a + pristine_git_object: 05fb8093f0d45ada38d03d4ba015dddbcf8dbaf5 docs/models/components/Contractors.md: id: c4b207ef8d50 last_write_checksum: sha1:b6510b9cabbf2f3a33eb37f4e18cbb6a9effc7c1 pristine_git_object: d838ba611c786d95f14ead12157a35dfbf8ed4b0 docs/models/components/Contribution.md: id: 6292eec0ae66 - last_write_checksum: sha1:ec4cddfd512f945362306f57eda2aad99214b832 - pristine_git_object: 775293e49ebfbeb50c2f374ad60bd9972865e7b9 + last_write_checksum: sha1:caa6b61d832581a5d15dd54b9ce0edff908bafd6 + pristine_git_object: cd61e24a186f49915d460ac687dd04477fd8fac9 docs/models/components/ContributionExclusion.md: id: 7e9794cf4bc8 last_write_checksum: sha1:10c46711d614c301b1163efcb5cd254e184c5d12 @@ -706,6 +734,10 @@ trackedFiles: id: c7661e55985e last_write_checksum: sha1:524dfb65f93668fb147b0fee60bee086a6f4fd06 pristine_git_object: 564e608eeebf523d48889d28b44c59cc1768081a + docs/models/components/CreateBulkReport.md: + id: 0b2ef9f71f5f + last_write_checksum: sha1:9ecf3d08e9b7acdbaf5cfeaf74525716cf53f48c + pristine_git_object: c8188d84e028cdd4bf3352781aaa6754a424f51f docs/models/components/CreateFlowRequest.md: id: f27f7c3e28f6 last_write_checksum: sha1:d81988a7e2fa69d59684b89a2ea050fe7d471fe8 @@ -720,12 +752,32 @@ trackedFiles: pristine_git_object: 7a9a7e693fc4db4de1e05d8df5ce2db9427a9de8 docs/models/components/CreateReportBody.md: id: ee976281d7d5 - last_write_checksum: sha1:80ffa85c01e20a0a2f77549e28c8e9b05e0bbba5 - pristine_git_object: 9ff6e15d552cb45443e029043470de25cc20015b + last_write_checksum: sha1:65c7a28d19acdd51451ae4cfe81e7848bd0739c0 + pristine_git_object: 769de027894b444dbf8889d50bf13078f17aa78a + docs/models/components/CreateReportBodyColumns.md: + id: 95cc7cf16507 + last_write_checksum: sha1:40f1b00576b436000c39c46539cf511473e96650 + pristine_git_object: 1ead94efd1b32b2ae02dc9f8dd509737b1332b15 + docs/models/components/CreateReportBodyDateFilterType.md: + id: 8ac0abd54b2d + last_write_checksum: sha1:78d54d5722d9e570e70f3cb2341f161f02eb4130 + pristine_git_object: 96750b27eda6e4d38282bfcc9b60ade24508927a docs/models/components/CreateReportBodyEmploymentStatus.md: id: 3eb48637df01 last_write_checksum: sha1:cc877c4526646b09b063d1df4ff7c56e2830e686 pristine_git_object: 851fecd9b662bc9d6fff2d1328b17417fe7a377e + docs/models/components/CreateReportBodyEmploymentType.md: + id: 231577f6858a + last_write_checksum: sha1:5210c86c795d8e87eb809895c4c47af5df72f9f1 + pristine_git_object: 4946abb1d33bca53e695f2c40ddffbe6d4091dd0 + docs/models/components/CreateReportBodyFileType.md: + id: f7552e3af460 + last_write_checksum: sha1:d6cc949fbf243df25e6b19e4ea372e7b4e678aea + pristine_git_object: bbdd364453937a05a52faea7cd5bc292868167aa + docs/models/components/CreateReportBodyGroupings.md: + id: ad245e00e685 + last_write_checksum: sha1:b27dffd3c4ee034e6b29fdd5a5416452b319e153 + pristine_git_object: 0a543b0ae6194203864402d225bc8dd546362c04 docs/models/components/CreateReportBodyPaymentMethod.md: id: aff867236d8e last_write_checksum: sha1:fa1fcefb30001144b552f76beaecb582fa87f137 @@ -742,6 +794,14 @@ trackedFiles: id: 167a6296115c last_write_checksum: sha1:dcda4fc9800daf5464206f41132d512892591f4b pristine_git_object: 7153aa95314f55b930d840819264cca553298d24 + docs/models/components/CustomWithholdings.md: + id: aceb94ead24f + last_write_checksum: sha1:024956520c149a2236ba278c79b727ceb8f6360f + pristine_git_object: 21feb111f94dfae1afc82aca5c6f1e0ef22ad454 + docs/models/components/DateFilterType.md: + id: 4b508df148cb + last_write_checksum: sha1:bf0886e224a2761b26b6f17b2d9d5861803f909f + pristine_git_object: 0e71b5ff003096829ef3669e4dd6f0ce81220af3 docs/models/components/DeductAsPercentage.md: id: a6071fb8b05c last_write_checksum: sha1:a28a7c955fa62ae3e772870a4be603fac4e4506e @@ -796,12 +856,16 @@ trackedFiles: pristine_git_object: 825ad728398d38fa114be22287a46d419ca65d9b docs/models/components/Document.md: id: 1a57b1271a67 - last_write_checksum: sha1:ae30d5a55725263250b17b0ee1eb353e4df8d75b - pristine_git_object: 2e4cd21a29ae63013ba3e943179960a4a2efd9e4 + last_write_checksum: sha1:7f513eb81cd2f5e20b40030e4b77ebbe243c35c4 + pristine_git_object: 660fc8a6047332897efe38788e994acd55afef3c docs/models/components/DocumentPdf.md: id: 38fa3d6e93cd last_write_checksum: sha1:14b5e46b4c895e421ff1748d0e1a462f12971ef5 pristine_git_object: 09078f9e4eea2016ff8ffcdcf0ac9f6d4020da2b + docs/models/components/DocumentRecipientType.md: + id: 9b7889fddb08 + last_write_checksum: sha1:f9fe4f627c5d303dd9c97dc859c95bedee6ce1b7 + pristine_git_object: c39474b1b2bd629f6ad278f25133be77eb07e112 docs/models/components/DocumentSigned.md: id: 4f5124beb261 last_write_checksum: sha1:168572792c935ccf9e96bce2599ff82ca32d8614 @@ -868,12 +932,12 @@ trackedFiles: pristine_git_object: acdf382d8bb308b945503700b37157894e95da93 docs/models/components/Employee.md: id: 3dd8f21466f2 - last_write_checksum: sha1:0a93d09719f97f8e32d6d2f8a90251c7345b19cb - pristine_git_object: 97c30cf44cdd29ca0795e233563b34610d855a8d + last_write_checksum: sha1:1fa3522e1861082ecd7839cc77cb7fa34e3a4c73 + pristine_git_object: df027f92099a91353b5914e40460996c130edce0 docs/models/components/EmployeeAddress.md: id: 7a8cdf9537c6 - last_write_checksum: sha1:8c5c661ef34e2efddf41e21a99338af3f8d12db7 - pristine_git_object: fb7413252c37a396a1e03ef9bc037a724b898409 + last_write_checksum: sha1:c695b8c192e66c54ce1a2df637f3e85da401ddc5 + pristine_git_object: a3a5fb43d30f233c4643715a682524f29977c3d5 docs/models/components/EmployeeBankAccount.md: id: 83df104f98bb last_write_checksum: sha1:bea3e0ae36b0515a75c28803d2b1d40629729b80 @@ -892,12 +956,16 @@ trackedFiles: pristine_git_object: 7c032e60726f72223a7d88290befce8967674df0 docs/models/components/EmployeeBenefit.md: id: a4e381075da7 - last_write_checksum: sha1:cd87c293ef2c14c3c43e1cfd9c982ec32aef0bea - pristine_git_object: 46d870734f2ef753a1fb9a103d20701def7e1758 + last_write_checksum: sha1:e3804bd6bf104ed540a53fdb084b88a27ff8ad12 + pristine_git_object: 20a86ea09e52048369c3c07db3efa52f686b0116 docs/models/components/EmployeeBenefitBulkUpdateRequest.md: id: b2090e2e151c last_write_checksum: sha1:e553704ec2fdca08c8ad14924ab1c6bde28b5030 pristine_git_object: c08547eae72c9d3f1c2826655776e646cd4684c1 + docs/models/components/EmployeeBenefitContribution.md: + id: 8401acee0dbb + last_write_checksum: sha1:20ae7364993c150fa78879a349597c3280484bea + pristine_git_object: 60d082742b82be306d53b24602553e33fda79153 docs/models/components/EmployeeBenefitCreateRequest.md: id: 5abd9d86c462 last_write_checksum: sha1:d691a445192fe3e207460c75951daed85fc0a940 @@ -984,12 +1052,8 @@ trackedFiles: pristine_git_object: 0cddc21f2f557b797d4328cc5ff3b8318723fc38 docs/models/components/EmployeeCompensations.md: id: 6819a79517c5 - last_write_checksum: sha1:a05fbd01b3009a030a1ff63e8294f5c43968087f - pristine_git_object: 010678ff2ebbae0928ec84eee003b9417b05ccc5 - docs/models/components/EmployeeCurrentEmploymentStatus.md: - id: 2f375e797a0f - last_write_checksum: sha1:1d7847cef78c67636d9cf8cdb3ae728fa0d14b42 - pristine_git_object: db8aa5758028677c77c92fe19ac88261f8867d1b + last_write_checksum: sha1:f73a8e656402486866c5706b262c662cf3362533 + pristine_git_object: 340eb475e7f05dda8e10fb7d604d2e2c14da7eac docs/models/components/EmployeeCustomField.md: id: e57ca94db19e last_write_checksum: sha1:8d4101e6b10d32f7db58b6d5fc00b850b73b7b19 @@ -1034,22 +1098,22 @@ trackedFiles: id: f88a5c3812b0 last_write_checksum: sha1:fb432469b940ef6b757b332b3384dc3a47bf5ffa pristine_git_object: f32acf0c989fd67487288f2aedf186d5a46def57 - docs/models/components/EmployeeOnboardingDocumentsConfig.md: - id: e88a30f8bbc5 - last_write_checksum: sha1:d36741e4539145a03ba6c821cd0334cc117bec13 - pristine_git_object: 9f937d820c51d59e1c86e435c57af1427591b7e2 docs/models/components/EmployeeOnboardingDocumentsConfigRequest.md: id: 1b241c82d0ad last_write_checksum: sha1:4400364b358bbc5534ba89c3085cbc836e61b8b6 pristine_git_object: 2ad69f6f195260ef44657c6d061c9c7f7feed72a docs/models/components/EmployeeOnboardingStatus.md: id: 60902bb5f747 - last_write_checksum: sha1:3782dad967a2782a22f1ab36d78231513f1cd8eb - pristine_git_object: 75686cf105d8952edea3234c6cec04e7ac542278 + last_write_checksum: sha1:d424327a16d52979d35da44f6792deae88965d1d + pristine_git_object: e7d8f695fd3a8b871035b389e940b803b1fa66dd docs/models/components/EmployeeOnboardingStatus1.md: id: a17d7e9198af last_write_checksum: sha1:04df77f6ebbdea2eead8feda51bed46297308dec pristine_git_object: 23b20d94423c37313f6b8e148712259b52bb469b + docs/models/components/EmployeeOnboardingStatusCategory.md: + id: 286a2d1e42bc + last_write_checksum: sha1:17e63afe87c83e28406a218523351a5d8d7f2bc9 + pristine_git_object: 2f25663f928c5f9e1e6ac31cde39bd5331208d4a docs/models/components/EmployeeOnboardingStatusOnboardingStep.md: id: edb79f2cb32d last_write_checksum: sha1:0294bb77a1838eabe1d4d061e6384c1b19f5ca2b @@ -1064,12 +1128,20 @@ trackedFiles: pristine_git_object: 72de94ac4c1d42972d2bb6dedf0778c5cb6e8b25 docs/models/components/EmployeePaymentDetailsList.md: id: aa2c0c8d52b6 - last_write_checksum: sha1:3b7dbc83d11c9233d138956d795ea5203d34215b - pristine_git_object: 219154844a00aff48373e5cb3af86de1a9b32828 + last_write_checksum: sha1:072b797be566b3f7838c2850328ff07f65e20a1c + pristine_git_object: 43ed177429532b1eaf8c69af4c692d6f288eb90d docs/models/components/EmployeePaymentDetailsListPaymentMethod.md: id: 608ed4d2b6a8 last_write_checksum: sha1:0ff79d7e13c948cfedf18ca0d2d1e919ce8770c7 pristine_git_object: be90ac4beb00e38fed70d3a0679782e2728ced16 + docs/models/components/EmployeePaymentDetailsListSplitBy.md: + id: 0223e9a45334 + last_write_checksum: sha1:2e7f8c493876974a97cb09fd06fb75849a89517f + pristine_git_object: ab54a53eb5b3c79437eb5fab28624508c21226cf + docs/models/components/EmployeePaymentDetailsListSplits.md: + id: aed4e12b9bf2 + last_write_checksum: sha1:2714b63df2b71327b826b52f92caffda4ae30e00 + pristine_git_object: c75cf86694750c6c5b9c4c5f32462b161fe7d34d docs/models/components/EmployeePaymentMethod.md: id: eb15f80af445 last_write_checksum: sha1:876e2c54d596ddc89a0def568df35788f5b9ffce @@ -1104,8 +1176,12 @@ trackedFiles: pristine_git_object: 871b6ebc0082bec87ba71c562c716130eccd2710 docs/models/components/EmployeeStateTaxInputQuestionFormat.md: id: a17d8bad920b - last_write_checksum: sha1:04ea59c96c8bc13ae68f00a5be18130636bc4fa0 - pristine_git_object: 8ca576818a22caf6ae961b21e4e4d82bbd87f592 + last_write_checksum: sha1:16c88555c1d6153ef9967621ea9825958fb1e633 + pristine_git_object: a130f0b8fe9fd6bbe90a79e4135a49d1c912e2e1 + docs/models/components/EmployeeStateTaxInputQuestionFormatOptions.md: + id: 1c0e1a198782 + last_write_checksum: sha1:8bc32e47a37945cd7e569b2c17ddff0db4ef6a1d + pristine_git_object: 88f3ba6af2a5c73bba2f72b153e844ff4b63135e docs/models/components/EmployeeStateTaxInputQuestionFormatValue.md: id: 01f8b53d14b7 last_write_checksum: sha1:5631fc59b8d97ed5b4e4088463d957c586b260b1 @@ -1140,8 +1216,8 @@ trackedFiles: pristine_git_object: 0c56035c9f4fc52d574e4a7fd65e53eda1e53926 docs/models/components/Employees.md: id: d545edec452d - last_write_checksum: sha1:f7aafb55068b66a9f3432665ae782f26273f231c - pristine_git_object: f809dff54d42d9a9341a33524ec0b9d13f64eab6 + last_write_checksum: sha1:bf2a77990cd76f6454ee0bfb2d27c3f0ca4d285d + pristine_git_object: 729a5ce41d19211e06972f695ede9db7c4704c3a docs/models/components/EmployeesAnnualFicaWageReportAcceptance.md: id: ea3e5e36d262 last_write_checksum: sha1:868ca49c29fd2d7ccfd89d2806d94c3deb2378ba @@ -1156,12 +1232,12 @@ trackedFiles: pristine_git_object: 65a64d64914ee5ff9e293b9dee12c2863dd9ad8e docs/models/components/EmploymentStatus.md: id: ce77cdbe50a3 - last_write_checksum: sha1:f8ea5646c695c5e3e4353460a78985ad470db407 - pristine_git_object: e2c0f540fc76810450db0c33c3db97b24b6104e5 + last_write_checksum: sha1:5ff8ead5d605ad84385ba059b42de58731b25180 + pristine_git_object: b44636c3daecf2b2b2d502e48fa54d24894b861b docs/models/components/EmploymentType.md: id: 3756d9f9106d - last_write_checksum: sha1:1ccb0457aa01065ff975adca7d5b0191401af8ce - pristine_git_object: 9b8db15a1b31f109ef914aa8200eab5ea844e61a + last_write_checksum: sha1:53f6091c64c867dcc8cf2cd9b584d0c77da18641 + pristine_git_object: 608587eb7d1214363d68c024be39b0858ac91e18 docs/models/components/EntityErrorObject.md: id: 5dd1d4dfcf55 last_write_checksum: sha1:7f2733a4ca492029ac9876620c715a923e699e0e @@ -1180,8 +1256,8 @@ trackedFiles: pristine_git_object: 8efa51b28f66dafa1ebb031a21905137e625b36f docs/models/components/Exclusions.md: id: 40623fc4f64c - last_write_checksum: sha1:f56e4ce537aa48e0813e9e321a0dbe1b1363b521 - pristine_git_object: 8284107204740b8573151aa6fb2f3bd7161925bf + last_write_checksum: sha1:2be67048385adbd70e7c3c40ef4d7d4e4daf05fb + pristine_git_object: 1a6c3b2e695731c6bf99be3c148c623c5d508e19 docs/models/components/ExperienceLevel.md: id: 9278dff1da72 last_write_checksum: sha1:462584d3db2742cfb44e2dd13df6bd5832830c1c @@ -1192,8 +1268,12 @@ trackedFiles: pristine_git_object: 21278651661a1316d08a294e453f2f3077897c09 docs/models/components/ExternalPayrollBasic.md: id: 2f13884154bb - last_write_checksum: sha1:89930594cd442985037ac6aa1c16c40ee9d8e955 - pristine_git_object: b907ed57549f3881330d54570d9ea47a609b8415 + last_write_checksum: sha1:b1749cb41a7f64c4439431d661c6f30c33f4b9fc + pristine_git_object: 008fcfd6b272d9a311b51440ea5170a24c639ac1 + docs/models/components/ExternalPayrollBasicStatus.md: + id: 41985d32bad3 + last_write_checksum: sha1:2cf73a9405483a34302ced5d1beb30eefff26d5f + pristine_git_object: 6b9c128a1c2d931823eb48b638d014da3bef117e docs/models/components/ExternalPayrollCreateRequest.md: id: d86e4a5628f4 last_write_checksum: sha1:1221486fbf3ab4307044e41c667052e67761ab6c @@ -1242,6 +1322,10 @@ trackedFiles: id: a0455a5a2b50 last_write_checksum: sha1:4541b1d548efb9ddfd7394a218427e79d24109a5 pristine_git_object: cab3b0fd8367f3540675adaa0c1af2c14714a44c + docs/models/components/Federal.md: + id: dce43892c19c + last_write_checksum: sha1:ead0fe6450c17654e3a69cdcd7190206b5298788 + pristine_git_object: 12c04e7361294c9e471878eff02937fbab58fde4 docs/models/components/FederalHolidays.md: id: f8409ad07138 last_write_checksum: sha1:4a3fe9c86f7f0faee23315866f3768814868c80a @@ -1266,14 +1350,18 @@ trackedFiles: id: 8cfc69d4ddb9 last_write_checksum: sha1:ad37b8787c433b2771ea41e4369aa3446d7039a6 pristine_git_object: 014c4ead209ff47e24462ff26795ee8e8a0bb0d5 + docs/models/components/Field.md: + id: aee8d71308a6 + last_write_checksum: sha1:17c4db39c7fdf843f2d5590fe836d20867a3fa2e + pristine_git_object: 4431704535b94ca8b4afdb0874cfc3a75412c068 docs/models/components/Fields.md: id: 7d2684d56319 last_write_checksum: sha1:263dce987e603869bd919173b7f8f827b80029c1 pristine_git_object: 5553538da7bb981c0d2d5985ca121abb019681b4 docs/models/components/FileType.md: id: 74cd4c306ec9 - last_write_checksum: sha1:dd846e8e2238a46a0775edd29b1b93fec5a4f948 - pristine_git_object: d587035576e414d3d54d9e7f11f5623be1fe5d22 + last_write_checksum: sha1:4215cbf96caaaf12bfb2e5fb3751bc2b3b076639 + pristine_git_object: cf1de884828e2eb0903038d8827f46fa705154cc docs/models/components/FilingForm.md: id: ef2df346c7e5 last_write_checksum: sha1:9724b615581f53347954be3828e64b2e11fb0de5 @@ -1348,8 +1436,12 @@ trackedFiles: pristine_git_object: d0e27554f374ead6be1ee70365b915025dd7e165 docs/models/components/GeneralLedgerReportBody.md: id: ac3d76b538ca - last_write_checksum: sha1:7f3543461cb7826824bf96be372f1598cbebf285 - pristine_git_object: fad04b537cf606ddea225e7d58ac5d053f742922 + last_write_checksum: sha1:6abe1192bbf9fdf9636ecf36c50c96c6826cf2f0 + pristine_git_object: 99fa0a43cdb784748393831862ff57c55a22c073 + docs/models/components/GeneralLedgerReportBodyAggregation.md: + id: edc5a6460875 + last_write_checksum: sha1:8baa6af45ddd0282bde0ec9069b401a2316e729f + pristine_git_object: b79aac01bed67a31344cd8dd02408d9fac30bdb0 docs/models/components/GeneratedDocument.md: id: 801a45cb3afc last_write_checksum: sha1:838c962604c29e2902e1e94ecfe56e14e3008583 @@ -1364,12 +1456,8 @@ trackedFiles: pristine_git_object: 7cc07830b5a640013c144cb15bf39bae04094756 docs/models/components/HistoricalEmployeeBody.md: id: 22a9ae47117a - last_write_checksum: sha1:8477424075ccc58499b6ac61d8e684cae1805b6c - pristine_git_object: db95952e469bb818ae8f93a96d30ecfd5dc5334a - docs/models/components/HistoricalEmployeeBodyHomeAddress.md: - id: c03af5e569e6 - last_write_checksum: sha1:b39d8e807a60faa8ec98a61ae9b6bcbcbe2b2489 - pristine_git_object: 768c8f45326b200b43576b1e9afbb055a66e458c + last_write_checksum: sha1:0cb88b97e01edb4446f63e0216b888a5611ea1ff + pristine_git_object: a892c89ca0f3e630e481eca8740fcdd03ef37cd6 docs/models/components/HistoricalEmployeeBodyJob.md: id: 734e2e45148d last_write_checksum: sha1:d3a629123a10c088bd84bfcc3378ec584cc2eeed @@ -1440,8 +1528,8 @@ trackedFiles: pristine_git_object: 1160075611195525c477e68b405c755aa90c4e66 docs/models/components/HomeAddress.md: id: 27a386629905 - last_write_checksum: sha1:2ab3cde14a1add231d34ed7a45b6e7f25d0b8aa2 - pristine_git_object: a35071d04565e0df75aba024f7b08a0c5ba9e003 + last_write_checksum: sha1:10171976ede8a99d6092b6cd974048159cf316cd + pristine_git_object: 01694e0331e3a2c943cff95664796018aa41393d docs/models/components/Hourly.md: id: 7023361a6f67 last_write_checksum: sha1:f8415b126212f33ed2ff5ba065aa3cb04c5a1d9d @@ -1564,12 +1652,20 @@ trackedFiles: pristine_git_object: c7d1dc1cb1ea796741418d4ed7b7cb17de4d85c3 docs/models/components/Location.md: id: cc158a8d9f37 - last_write_checksum: sha1:2a66f032246c128f23aa6dafa39a6c251bbae915 - pristine_git_object: 56a22e02c6b1cc24927a3bbe747517073f2ecfa2 + last_write_checksum: sha1:3b0ed6cda3e0664b885cc513402a54ecce520dd9 + pristine_git_object: bf6907034ede2744ca8c2cd146828d9b845a67bc + docs/models/components/MemberPortalInvitation.md: + id: a15928befa1e + last_write_checksum: sha1:eb4d7f2f5c667a17a4becb12375d4f90778c4fab + pristine_git_object: 588490e35a4da4c06f37125a2fcaef867a5bddaa docs/models/components/MemberPortalInvitationStatus.md: id: ac58ee3ed737 - last_write_checksum: sha1:17defe6f14b16eb0ed1e2a8965811fcada466533 - pristine_git_object: 9f4f500a086d5c718fcc25906c2748181b0d0f53 + last_write_checksum: sha1:607a2d4e7ea7e6a15f2b9879b3a7654fb10c1b69 + pristine_git_object: 5f221901b876ccaea30d1b5b80a5df2284e562b6 + docs/models/components/MemberPortalInvitationStatus1.md: + id: 8ef1027a02a4 + last_write_checksum: sha1:981d48be143e29920c00dcced904fa028a6a932d + pristine_git_object: 191d69132bae72c4942168191dd65bc5a3a2353f docs/models/components/MemorialDay.md: id: b1ef8b2c1756 last_write_checksum: sha1:e510f200cb248fe7a3fc15b9df1a94fc257943ef @@ -1636,16 +1732,20 @@ trackedFiles: pristine_git_object: d47a2b4b9aeb3117ef26fbbe0c5264ea254f002f docs/models/components/OnboardingStatus.md: id: 991770e866a2 - last_write_checksum: sha1:d5748c237a4825eb8bcddfbd42f5c7c250397554 - pristine_git_object: ae8429dde4e9a9605431ed204dcb473d5bbafa42 + last_write_checksum: sha1:43a9bec102b46e4584fbca8d532a318154835fa6 + pristine_git_object: cf14d86280f9d9815c7cae19a418e3633126a5c3 docs/models/components/OnboardingStep.md: id: e664633073d3 last_write_checksum: sha1:e1a13ed0bd5238242ab860c9f036826a74c92ed8 pristine_git_object: e5fb285e2aba19c4f556cde7150a0b9b58288b4d docs/models/components/Options.md: id: 4c216ddf3b3d - last_write_checksum: sha1:10c355093d27bd72d2135d08d375e607c1fee36e - pristine_git_object: df1a11cd0c9debf5481b8eb300b950c6120b3abe + last_write_checksum: sha1:dd85fc723d1589e817b6a0ae051b33bb2e1fb2cc + pristine_git_object: 87fc6e78505353fa2f8ab24cfce94a027ef6f4b9 + docs/models/components/OverrideType.md: + id: 1980f4ade097 + last_write_checksum: sha1:22c7f88ac20f05d3644d8b14688fa0faf22586a7 + pristine_git_object: 304111773c2b19eca283a51e057b0c17e78464f4 docs/models/components/OwnerType.md: id: fb590f6731b3 last_write_checksum: sha1:9461a94c56b51f59415e1795a75ed30e7e48ce3a @@ -1678,6 +1778,10 @@ trackedFiles: id: 654d132fd234 last_write_checksum: sha1:2515439de8bf7d9169909d1680f34ede2bbed922 pristine_git_object: 8c27c3463f9d54e0fcaec3b02b38e8841c4185b0 + docs/models/components/PartnerManagedCompanyDisassociateResponse.md: + id: be4b99e7209e + last_write_checksum: sha1:36c54e114556811b38e3fdea2e86bbb4f62291f5 + pristine_git_object: 72338ea6ca4355337de795d755a79999536deef5 docs/models/components/PartnerManagedCompanyMigrateRequest.md: id: 22c973027506 last_write_checksum: sha1:50c053c3d687b2cd52a494c296d58edc7159f95d @@ -1720,12 +1824,16 @@ trackedFiles: pristine_git_object: 972eeadb0529f7f4f5ef0487bb0f0ebdeab032a3 docs/models/components/PayScheduleAssignment.md: id: 81151504d731 - last_write_checksum: sha1:209f6bd89e6e82301e68eb258977339de1b822b1 - pristine_git_object: 28a0e0f02171e925a2e513faa7384b9b2c540c6a + last_write_checksum: sha1:03d0357fd0bc4dedaeaebb4259374dd8fc0f6425 + pristine_git_object: 4cfde5f04a91184e43f4b6c5fe6ed9d32a0ded1a docs/models/components/PayScheduleAssignmentBody.md: id: 49b464347fcb - last_write_checksum: sha1:e0c9c17f769fe57ebdd3c1158172993ad91f083c - pristine_git_object: 44af68c52d11ae8f0c20bd4df634ae3dc12b4ecc + last_write_checksum: sha1:fc1ec6402c4d4b321ee8281500f420bd87e1ceae + pristine_git_object: d1ca8d3c8270b7ddd38653e368b5993bbbe60b1c + docs/models/components/PayScheduleAssignmentBodyEmployees.md: + id: 441e547b5d80 + last_write_checksum: sha1:85bef9a0fb1a5d84b453c92cc72ce4c1514d8eda + pristine_git_object: 626f7b928bdaf73a564dcf486d181ddc35ed4a07 docs/models/components/PayScheduleAssignmentBodyType.md: id: 18032cb63895 last_write_checksum: sha1:e7f482e028a24fb370a46ea8a65c5cadbfe63ab7 @@ -1758,10 +1866,14 @@ trackedFiles: id: 5a76ae1c7e0f last_write_checksum: sha1:8ebd94b63f41d469c979ba8b7f9b6df5a478f167 pristine_git_object: 96b66d83bc2db4f2207a52aba08f01e999731e02 + docs/models/components/PayScheduleAssignmentType.md: + id: 5c89256f2743 + last_write_checksum: sha1:032a41a8180d4cbb649e62978859be97a04f80b0 + pristine_git_object: 0cfc8ad981f6657639e53863ecf91996f631eb28 docs/models/components/PayScheduleAutoPayrollEnablementBlocker.md: id: c0f3a76f0e90 - last_write_checksum: sha1:96829203777389bf1b8dd9c577f3c3abeac719eb - pristine_git_object: ba659d09faea1689fd8c5cf6282e9cd3a920f8a5 + last_write_checksum: sha1:44c2de769b3e99f8d9ff6504bfadf33e689ed54f + pristine_git_object: 3f81e58622bccdc14182e1db8be521731b2fabb8 docs/models/components/PayScheduleAutoPayrollEnablementBlockerMetadata.md: id: ffdc9b1a9801 last_write_checksum: sha1:bea258766300ffc574f5f6571068634c3467fce6 @@ -1824,8 +1936,8 @@ trackedFiles: pristine_git_object: 9bec137dc5a9d0e98af089b7bab1f5117863463c docs/models/components/PaymentMethod.md: id: 1b54b132ff41 - last_write_checksum: sha1:4de4ff3667e0feacb0b5cd5904a3e4772253c149 - pristine_git_object: 5fc9eec24b6e701c24fa01533016da8004adf6fd + last_write_checksum: sha1:728475b01d981291abde0c6407691169b0831617 + pristine_git_object: 7bdc0c571a869e2b3adf9d68dd777f46169d5f3b docs/models/components/PaymentMethodBankAccount.md: id: 3e0f4e30abac last_write_checksum: sha1:718c3a58ad65e5b3a0dba93269145404fa026ef7 @@ -1854,6 +1966,46 @@ trackedFiles: id: 4fa486c1417a last_write_checksum: sha1:b26b0a663c87328bcd00b919506995aa286af266 pristine_git_object: bd43d4e2a239caae3980c77dae57ec9a431be988 + docs/models/components/PayrollBatch.md: + id: aa379ae74487 + last_write_checksum: sha1:639a6f14faf9a44a75f0f1b6288d02cdd7186a6b + pristine_git_object: 0ef0a9c6f19c1d7a1a2a015d81979d6ec947e4ea + docs/models/components/PayrollBatchResults.md: + id: 098f60e665e1 + last_write_checksum: sha1:5fc5700ad07078c32451316462fd96ad953103ee + pristine_git_object: 35d1b086db5e2f909c1f3c19c5bdc7fadf45c5e7 + docs/models/components/PayrollBatchResultsCategory.md: + id: 833ccbedcd94 + last_write_checksum: sha1:87575617bb7d7c4c4e0d5a86f739b9682289b22c + pristine_git_object: ac6e95e516dba722b19092a14fc675b883119232 + docs/models/components/PayrollBatchResultsEntityType.md: + id: 543e0adb6d11 + last_write_checksum: sha1:d95492b00a868e1976c2b23f01aae94cffba02c7 + pristine_git_object: 738a8fcfc67350f98c4212c3a4d9bb2576091d89 + docs/models/components/PayrollBatchResultsErrors.md: + id: d9d6034410c0 + last_write_checksum: sha1:b9c09d7a955a8a335597ea4cd7f0359bc3ef241f + pristine_git_object: 2923fe2760eb6f28bbe26df5e830b15e41e19b4d + docs/models/components/PayrollBatchResultsExclusionsStatus.md: + id: e9f94cba753e + last_write_checksum: sha1:52df7a0219886f6804b12657aafc5fa0d14e13ff + pristine_git_object: 43a02373f048cb24e3d37ad307eca321f88d4aaf + docs/models/components/PayrollBatchResultsResultsCategory.md: + id: f543792db812 + last_write_checksum: sha1:309e98b4ea5b5c57402b93f612bdbba0326ff38f + pristine_git_object: 2e5e5253450a75d335993641872b84c517fb318e + docs/models/components/PayrollBatchResultsResultsStatus.md: + id: fbf4a75f229e + last_write_checksum: sha1:cf4fd763e5d91a5c4135022ed06b91ae7ecd6fdf + pristine_git_object: 7182a95da24c5fba9a1ca7092e2bd6f22353434a + docs/models/components/PayrollBatchResultsStatus.md: + id: e381f28c0708 + last_write_checksum: sha1:bc4243715646883b69a77d704105337787fa5dd2 + pristine_git_object: fe77eacfd47b005cfcd453a13ecf0ab8a021516b + docs/models/components/PayrollBatchStatus.md: + id: 5cfe77d913ce + last_write_checksum: sha1:02bbcf9cb11814ccebd3da262014b7095aefd5d2 + pristine_git_object: c62084f1712d505725dfbd9213c2aadb7d6988d0 docs/models/components/PayrollBenefits.md: id: 6272f369fea6 last_write_checksum: sha1:6ebc0b9c32b506836852515c74ecedec22584d58 @@ -1936,12 +2088,20 @@ trackedFiles: pristine_git_object: 8e04ddf8452aebbba79b96245974b1f96ae9a013 docs/models/components/PayrollDigest.md: id: bad4af67bf40 - last_write_checksum: sha1:58da5557d492389ba4d71bb6e97bba6054e15262 - pristine_git_object: 0322bb856262d0f7ae3ea95e1d48036bbf5096df + last_write_checksum: sha1:1925d2c7a157ad8c6786852b101063659694fb3e + pristine_git_object: 053c53bd266b46db660ae277af61e7fb8e52e26a + docs/models/components/PayrollDigestBatchAction.md: + id: ed15e77a4eb0 + last_write_checksum: sha1:1c053d7b4b8b18900d99bdf0bf31228409eabb62 + pristine_git_object: cdd8eaad5b20d81481fae8215e496dff9e41a7c0 docs/models/components/PayrollDigestResults.md: id: 5c926153f262 last_write_checksum: sha1:652e70d893806d647da334973e8a3b25e3e98ff1 pristine_git_object: de2f608698fec77393afb45a687d44c09a1b03f0 + docs/models/components/PayrollDigestResultsBlockers.md: + id: 3e3f481078bd + last_write_checksum: sha1:28bc04757a62d0b7c0aa614f57f529321e97929c + pristine_git_object: 0e66251ca74eb2041fc7a70f274fa6c361c7e72d docs/models/components/PayrollDigestResultsCategory.md: id: 6adf604cb4f7 last_write_checksum: sha1:3988f37bc1af242edb33c313acb1c131488603bf @@ -1968,8 +2128,8 @@ trackedFiles: pristine_git_object: 377e7bc67358a5d1e2e2570ff409438a8e1e45a1 docs/models/components/PayrollDigestResultsResults.md: id: f94d2703fee7 - last_write_checksum: sha1:a9177c7dc02ad8ec4b3ec8d8957f1325dae695f8 - pristine_git_object: 3b98f1941e0270cd8953bb9a34e951db07e82561 + last_write_checksum: sha1:276a7147579b0d18b1de3a85c9addb0a37e53620 + pristine_git_object: dd80d9d7c798241a5ca0dab67c3fa37081edc867 docs/models/components/PayrollDigestResultsResultsStatus.md: id: dc8b8812d32f last_write_checksum: sha1:fdcb710d0babb070d822bd9d77f1477b16423f62 @@ -1988,16 +2148,20 @@ trackedFiles: pristine_git_object: efbdcbe85672d5d07292c18fb6e8cdbf07b7c063 docs/models/components/PayrollEmployeeCompensationsType.md: id: be4c680f6697 - last_write_checksum: sha1:0f4953434f28497b409e18b2382f6cc733167d02 - pristine_git_object: 3d03e72a66b6289180ff1e330707a2b2fe49a93d - docs/models/components/PayrollEmployeeCompensationsTypeFixedCompensations.md: - id: 48d8a817e979 - last_write_checksum: sha1:f763abc85ccff7352f73e2f292877ebc3823d5bd - pristine_git_object: 631946a82bc650831066f1646d94f357514ca22a - docs/models/components/PayrollEmployeeCompensationsTypeHourlyCompensations.md: - id: e874fb06c090 - last_write_checksum: sha1:1abe9a40b6d67d1445079202d04250c4b4a3efff - pristine_git_object: cf0b473d7bdedb89cece05ec90e52bd13a2cfde9 + last_write_checksum: sha1:78d80b61bf43e80a360cd5e274c8608c73637c34 + pristine_git_object: 84593d3bf534f71046a1dab7a57234640cf061e4 + docs/models/components/PayrollEmployeeCompensationsTypeAmountType.md: + id: 8ce326416971 + last_write_checksum: sha1:4125896c2e9c99e5a3897749b952e93113682935 + pristine_git_object: 9bdbd69508bd9ef71ca73cd2ebfaee41eb0d8388 + docs/models/components/PayrollEmployeeCompensationsTypeCustomWithholdingsAmountType.md: + id: 783c11f0e1c8 + last_write_checksum: sha1:6a57ec71cd70550064f65c458d7845de11a17ef3 + pristine_git_object: 04f38582049bea7593d64cdefd7a82f0c45876af + docs/models/components/PayrollEmployeeCompensationsTypeOverrideType.md: + id: f4bc702e32a8 + last_write_checksum: sha1:ce8628f1fb31c918a25df7b81bd3980e920a0d79 + pristine_git_object: 68027332ab58686216b930e9ca9dbbad817b06fe docs/models/components/PayrollEmployeeCompensationsTypePaidTimeOff.md: id: c18ebc92a47a last_write_checksum: sha1:d59c12c2a95bffe3e9878782af384e931477d4a1 @@ -2006,10 +2170,6 @@ trackedFiles: id: a5ad40ccd570 last_write_checksum: sha1:f5cf050dfdcd47d4d14a4e792307e5461fabbe1c pristine_git_object: 231ada2ae1afa3f538a57cd772bb5919d10c496a - docs/models/components/PayrollEmployeeCompensationsTypeReimbursements.md: - id: db897da1d796 - last_write_checksum: sha1:a1535c91e360a4dfc13486fa62ff74a14845abd6 - pristine_git_object: c6b17aa06c86c4ce017190ba008bed614f99a970 docs/models/components/PayrollFixedCompensationTypesType.md: id: f0144f0ddb81 last_write_checksum: sha1:a89c0be09f2a3251c943503e66be1faedf4662d0 @@ -2064,16 +2224,24 @@ trackedFiles: pristine_git_object: 050010bbca9c34631664090fb817616b3a1cb282 docs/models/components/PayrollReceipt.md: id: bc8b694da3f3 - last_write_checksum: sha1:3cdb3310ee8c3bdf54cf1d9f4dc3973f069a5f0c - pristine_git_object: 1cfc2175327245984b123ed95f30ff6c400a79e8 + last_write_checksum: sha1:bb816f0022564cc6e2d6fa286de45267d716be00 + pristine_git_object: 4d8db7dedd8b359afc5161f6f6d9005811ef37e6 docs/models/components/PayrollReceiptEmployeeCompensations.md: id: 9cb787b381a0 last_write_checksum: sha1:a5dc79380c4c7a5c67176a1b0db2d98077735d04 pristine_git_object: 8152d0a41569a823d0f5ee0b8e9aaeece9f2b2f3 + docs/models/components/PayrollReceiptLicensee.md: + id: fbad3838f68c + last_write_checksum: sha1:5f2ec3e579586078ebc6a0cde5e4f27863be0913 + pristine_git_object: b9d850a105cdd42c4e33af554c52d14e81500cca docs/models/components/PayrollReceiptPaymentMethod.md: id: b2ff9c2dcea9 last_write_checksum: sha1:5f98c630d95f8c5c43d47cf1042381b8be45dfab pristine_git_object: 255528f3e3fb43ab5133f849f83df0522323940d + docs/models/components/PayrollReceiptTotals.md: + id: c4f979d31d5c + last_write_checksum: sha1:c3122e7196918cd8301372cf1c16f5e78e449409 + pristine_git_object: dd8d4da2aa99a723309cb957fbeb5fc892baa9bd docs/models/components/PayrollReversal.md: id: e37d94f01d36 last_write_checksum: sha1:4d02af277175766bcda8de5141c74639ab68eba4 @@ -2090,10 +2258,30 @@ trackedFiles: id: 10eebfca6377 last_write_checksum: sha1:bb8dd69bb6b76644f58b701bb869c6ed8e68a2d6 pristine_git_object: 2eb21a6cd6b638ba86128a32857bdc8079e30a15 + docs/models/components/PayrollShowCustomWithholdings.md: + id: 7380eda0703b + last_write_checksum: sha1:bf1821fab078d782dc33cba4c3780baa87381667 + pristine_git_object: 2d3858464ddac8b4d2a7248650e79a08800b7def docs/models/components/PayrollShowDeductions.md: id: 0871b8250a52 last_write_checksum: sha1:f0ec977285c6d5a5d3e187690ea8651b82f37453 pristine_git_object: 213639757138a63ecf80e933d63e24163a041304 + docs/models/components/PayrollShowEmployeeCompensationsAmountType.md: + id: d98a1482a9fc + last_write_checksum: sha1:e251e494f1e925b57137e2ca72df9e3dabdaac7c + pristine_git_object: ed76f1e51b51a6410ce6e742af568300bc15d2a7 + docs/models/components/PayrollShowEmployeeCompensationsCustomWithholdingsAmountType.md: + id: 4b4e00b2513c + last_write_checksum: sha1:c3528c734c1f56d091e0b7386aa23f38c8ef0c42 + pristine_git_object: 83bd4163b9d6b10249f764f7818fa4750ed9aed3 + docs/models/components/PayrollShowEmployeeCompensationsOverrideType.md: + id: 29c8204a6f36 + last_write_checksum: sha1:c0714762e0d5f56bb42e38cd28ea5fcf23c6c1c1 + pristine_git_object: b0f5b6459521768e25716e5a3d8ecedb2afa4349 + docs/models/components/PayrollShowFederal.md: + id: d5069af306f1 + last_write_checksum: sha1:59511677d3496405d5f1b3fdf34b6ea3d9e80506 + pristine_git_object: bbf1e61158145e15196c1d27676faef1fab461f5 docs/models/components/PayrollShowFixedCompensations.md: id: 6831dec3ae52 last_write_checksum: sha1:af9bb58a56e81fe4673ca44a2b77a56b9422201f @@ -2102,6 +2290,10 @@ trackedFiles: id: 21eb04e12ef9 last_write_checksum: sha1:8e530178e64df579ee3af3d7743d45e9adbe69eb pristine_git_object: 01342eeb7c48636faf9c000687231a8acd0bbe6b + docs/models/components/PayrollShowOverrideType.md: + id: 305c8262bd19 + last_write_checksum: sha1:16c68cf12bccfcefe86d47cdfff74865e5521d12 + pristine_git_object: 759a74593c8d952e42db9cec2eab05b751a98192 docs/models/components/PayrollShowPaidTimeOff.md: id: d444bbcd3049 last_write_checksum: sha1:55f1e610c75887ba0148ea83b65bf684136bd7df @@ -2114,6 +2306,10 @@ trackedFiles: id: 8b674ae511bf last_write_checksum: sha1:3e0071ceae31e9672729bde69c551910293a1d7b pristine_git_object: ec9d3862049972a155ee1efc6859c9e385627d88 + docs/models/components/PayrollShowState.md: + id: 6c26fdd2c4e7 + last_write_checksum: sha1:b6745147067885a3e4515c47991851facd8ef0b8 + pristine_git_object: 4b83ec0bd585f82e02c67bc65f1e2bcc555f4ba3 docs/models/components/PayrollShowTaxes.md: id: ce867da55c07 last_write_checksum: sha1:a05b50206cd160d90e878c01b019953d8b86201a @@ -2148,8 +2344,40 @@ trackedFiles: pristine_git_object: 32fd1b7e20dda1d195495f59db87aee6cbd57200 docs/models/components/PayrollUnprocessedEmployeeCompensationsType.md: id: 12faf57e77a6 - last_write_checksum: sha1:86b5017a71b74c86fa577172e6893158d12de9a5 - pristine_git_object: 8dc5537b968a27f59d6941bdc6616e0698e0ecd6 + last_write_checksum: sha1:dd296b8b09e379522f15deff528e51fe504c4632 + pristine_git_object: d096cc5ce3bc0b80b24fc08714ebccf91d1c0c2c + docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeAmountType.md: + id: df816249dab3 + last_write_checksum: sha1:608951fe3de686e28345acf6dc79fd184a52fa0c + pristine_git_object: d7b77fa30dc62907ac0fb6a2c8c766420b8d9f1c + docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings.md: + id: e8587d7c644f + last_write_checksum: sha1:1ca8284acd8e0ff8681fcb464aa730ef40e4637c + pristine_git_object: c90466649a59b7334959baec83f7f3a9d2d93788 + docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsAmountType.md: + id: 9820098ae632 + last_write_checksum: sha1:ad2b5bdbd5a052145d9827aaaa09a37fa9c3bdd9 + pristine_git_object: 649ae196a09fb651582fd48ee729e74a7b388ec4 + docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsOverrideType.md: + id: ebcff5b5416c + last_write_checksum: sha1:9fbddf1604da45e8a515a68a5d45f6895282125f + pristine_git_object: 87f31e39fb6646dc478667ca04089724d933b8f8 + docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeFederal.md: + id: d03c0b6e559a + last_write_checksum: sha1:62aa84c1ef6951243d06180caadcdb08884b3343 + pristine_git_object: 29df2d93aeaf5c3b1cca6005a8face7126c7baef + docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeFixedCompensations.md: + id: 9ce856dd8266 + last_write_checksum: sha1:b63b053feeaec50329ef4caf332dce2c10662344 + pristine_git_object: 5296b2d38748e8f8b9e58419298044c989bc28ab + docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeHourlyCompensations.md: + id: 31da53840c25 + last_write_checksum: sha1:c1fef032ac08ae19d221d8bcaa1299cc029c38e8 + pristine_git_object: 6c039e58f68d149167e28fe6751856c34ab40f95 + docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeOverrideType.md: + id: b3acd35aa153 + last_write_checksum: sha1:ee7008980d40b32ec13e4c542773a85b6e07d54c + pristine_git_object: e7349acc4f0ad1caa74b1730358412440b33275e docs/models/components/PayrollUnprocessedEmployeeCompensationsTypePaidTimeOff.md: id: 026d1745e945 last_write_checksum: sha1:feb019f0b17f1f3414c92e6853dedfe949a99ea6 @@ -2158,6 +2386,14 @@ trackedFiles: id: cf8c3a1562f3 last_write_checksum: sha1:98091e06ba5ab25a71564d0ad3fa7e9af07e1642 pristine_git_object: e1bc6024cbca88c0186b7c782a207e319ac6f991 + docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeReimbursements.md: + id: 3e2ead6833e4 + last_write_checksum: sha1:09869862f666ec6fb4afac0c0839a5a15943fc2c + pristine_git_object: 4f08ee2bb35deb7fc60f2cc8cf335b6881143a5d + docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeState.md: + id: 3e7d97bb91ba + last_write_checksum: sha1:cb65e580c1992765bd4773c6dcb31d9d5114d4a2 + pristine_git_object: 8af5caa60b3796c391de58cac4ca43f264840d71 docs/models/components/PayrollUpdate.md: id: 8e2688800bcd last_write_checksum: sha1:8d4a9c237dd1507da92fb4c42045854612cfe8f0 @@ -2166,14 +2402,34 @@ trackedFiles: id: e0586e313149 last_write_checksum: sha1:6f3c53f2833458dc673439985c12a65da05cbbed pristine_git_object: 8442024e9667edf36b986da0bad29192efc7dac9 + docs/models/components/PayrollUpdateCustomWithholdings.md: + id: 69dd85dce0c9 + last_write_checksum: sha1:646e76332d9c30da66e0a4b3eac0231949ff2818 + pristine_git_object: 663fa43ab16359120642e1bb9c5cdc3537cd8a7c docs/models/components/PayrollUpdateDeductions.md: id: 7ddee42b04ea last_write_checksum: sha1:75f3070e514a301daf2366ff3afb207a12255e5b pristine_git_object: a3ed7482f3dbe73cb424431533eaf82cb3cd83fd docs/models/components/PayrollUpdateEmployeeCompensations.md: id: d36f03c59ff0 - last_write_checksum: sha1:f75ce168b3670c8bbda39b7a5aacaa7cf5cb113e - pristine_git_object: aca72c1b650394d4eed4582a4a79d541c5f3cc99 + last_write_checksum: sha1:3f05d23ab2b7b9bada6007acf7b7a82375f33792 + pristine_git_object: 3d8bf7689ec114bdc461ae6d3845c69ec94b5b2d + docs/models/components/PayrollUpdateEmployeeCompensationsAmountType.md: + id: 9732cd16ed30 + last_write_checksum: sha1:5a5afd94d244c683e77c2b6d41f83b438ecc7004 + pristine_git_object: dbcb7b64f89b49ef44f52f779bf1ec0c8c218ada + docs/models/components/PayrollUpdateEmployeeCompensationsCustomWithholdingsAmountType.md: + id: 95e41bbf35d8 + last_write_checksum: sha1:3be8ba756667456c19ede25ef18994ea27455a9f + pristine_git_object: 57b3ff0f1342d7000d7bf612dc5303b75304e4a2 + docs/models/components/PayrollUpdateEmployeeCompensationsOverrideType.md: + id: c7552c95b9af + last_write_checksum: sha1:d14b7d617e2b16e1d40d8ee9848e22a2d4efe8e5 + pristine_git_object: 9611feb5fe9e8062cd95d7e594d1ac114a00dbe0 + docs/models/components/PayrollUpdateFederal.md: + id: b7a7750a60ee + last_write_checksum: sha1:c5ee034d99470c44636745445800129f1719fdbf + pristine_git_object: 009ecf2d1d6e92f5dc1293b3ffbbc4501149426c docs/models/components/PayrollUpdateFixedCompensations.md: id: b80e7f9e1bab last_write_checksum: sha1:540d5942bdb229327033fc80a46fb2a489352eec @@ -2182,6 +2438,10 @@ trackedFiles: id: 24b14d627aaf last_write_checksum: sha1:48e33fd48482e67f32b710d383fcdf3f2fee5cab pristine_git_object: 95ffe176a5aaf032fb55165b7c571f91e1881789 + docs/models/components/PayrollUpdateOverrideType.md: + id: 25faeb199073 + last_write_checksum: sha1:5962c751366aac764ce8cc03343c30d5cb339298 + pristine_git_object: c4cc3bcf9b7a30a4c60ab7d5a13a3a0d4eba5337 docs/models/components/PayrollUpdatePaidTimeOff.md: id: 0c1798874b93 last_write_checksum: sha1:f1bb4e10c83dbdb2c6086ca7960a2dd4e41d73e0 @@ -2194,6 +2454,10 @@ trackedFiles: id: c8928c5a8280 last_write_checksum: sha1:757cd2d5c9198af30c1be53e6d54252bcee84f98 pristine_git_object: d3f6d0d05817dd893d6f64fc9e57ae77eb3e5620 + docs/models/components/PayrollUpdateState.md: + id: d57eae94f563 + last_write_checksum: sha1:d1cf6367cf8fd795966466de5152713def5a1448 + pristine_git_object: 2d38a6401f467eaa0f1266cf29025e89e09e02a6 docs/models/components/PayrollWithholdingPayPeriodType.md: id: b768dbd78092 last_write_checksum: sha1:2fd9b4bd6ebb7de4ac3a589ecea55194b10af078 @@ -2208,12 +2472,20 @@ trackedFiles: pristine_git_object: 5621d3f319e2e4ba4dc01b457a87c330e7e5a25b docs/models/components/PeopleBatchResults.md: id: e2e042b339fa - last_write_checksum: sha1:204c17bf44cb2089bdbaf50c3b7db75e69286cf6 - pristine_git_object: 2002eb602e967ca1e625c6c400c659aea81527d6 + last_write_checksum: sha1:a7560b61726d7d8284e22a16182c0abe55cfe8e1 + pristine_git_object: 0feaa44a4d8966ae05ab7ba943f868377b91e1dc docs/models/components/PeopleBatchResultsErrors.md: id: 56004f6492cf last_write_checksum: sha1:1859e61136a846604a90527dc14c210d4abb0049 pristine_git_object: 8067200cdd2ab4ed2e677b29d179928d2c9fd7f2 + docs/models/components/PeopleBatchResultsExclusions.md: + id: c7e9e8821f24 + last_write_checksum: sha1:cf8d1e38cb08b0e824163d52909e86ecb90514ff + pristine_git_object: a060cc6f695356a4673baa106975e7295a32468e + docs/models/components/PeopleBatchResultsResults.md: + id: 5c0cdd98b702 + last_write_checksum: sha1:2deffc7c4e259e8151de4a45096f05433f5a5ade + pristine_git_object: 117463dc28633a20491c4bd73671e1ceba8c4613 docs/models/components/PeopleBatchResultsResultsErrors.md: id: 194377318a00 last_write_checksum: sha1:ef76f6a24fb3c10d97d777ebb336b7a289c06582 @@ -2276,8 +2548,8 @@ trackedFiles: pristine_git_object: fc86763ad42a5031288e6adb1fdd35918d36bcf5 docs/models/components/RecipientType.md: id: 8fe24b71cad1 - last_write_checksum: sha1:edec69a1b993f74582a2f171d8159554ffce0f74 - pristine_git_object: d43e99864d34629079446426b19628c5513b442b + last_write_checksum: sha1:dddb4b055b99a622b0d2f8c37c0455eafeb3594d + pristine_git_object: 81e7e19af9a0bdf3a2e6b196eae29f56765cc9e8 docs/models/components/ReconcileTaxMethod.md: id: 64d843ce1128 last_write_checksum: sha1:4a5d0a8175b703d1c3433cd84c24c5410b1cafd8 @@ -2300,8 +2572,8 @@ trackedFiles: pristine_git_object: dba1a815ec819a8c6fd4e1d739a0cbc2661bad9e docs/models/components/Rehire.md: id: fe3b9b67a0c8 - last_write_checksum: sha1:5f2983cd7d6b6fab4c50400a5afdb4c4b7517251 - pristine_git_object: fd2baae624f7fbe45d83a4b40c8904b382d7f2b7 + last_write_checksum: sha1:9ce8cacd19a7321a8d35deae63cea2404eef617b + pristine_git_object: ed57665f6ab66a554194bbfb30330104df18ba03 docs/models/components/RehireBody.md: id: b1a9e45d5161 last_write_checksum: sha1:781e548831c4a9e26bbc4be72253037ab9177330 @@ -2310,6 +2582,10 @@ trackedFiles: id: 064b7f8a880a last_write_checksum: sha1:667041f6ec3f79e3535cdf82ba57284e5b1d9d82 pristine_git_object: 8fc85cedd6e65442bdb14c1da40e359cdea0ca11 + docs/models/components/RehireEmploymentStatus.md: + id: bcfe5ddcf68c + last_write_checksum: sha1:333e6b4f9dedb4d9c365fd1338f8c52c7a38125b + pristine_git_object: 88da1dff85df69a7b10a3f798e7ab4b63288af53 docs/models/components/RehireUpdateRequestBody.md: id: 63668e49baeb last_write_checksum: sha1:79c51df018a666890bc0a07ee85d0a15925d8acd @@ -2330,6 +2606,10 @@ trackedFiles: id: 9b0071ddccd9 last_write_checksum: sha1:00d068ba0ce990a48a8c4c4bd844998715e7065a pristine_git_object: 06684bd6a239772fef644645cc3ca143ac83804e + docs/models/components/ReportType.md: + id: 34d55ac7dd96 + last_write_checksum: sha1:b5443a610dbf5782bc6bc2536a18a3b2f17b9a79 + pristine_git_object: b61b15d60150734f2e9c5dbc0f82321eaedeeffb docs/models/components/RequiredAttributes.md: id: 5a3341555761 last_write_checksum: sha1:c3da23b44cf58c5e98b06f98599f81fdf53f3935 @@ -2364,8 +2644,24 @@ trackedFiles: pristine_git_object: a07e94b4760ad5ee5bd41eab6408ec770045e8ee docs/models/components/Results.md: id: 1a859def686b - last_write_checksum: sha1:fd708580cddc4edf1e18d51bbaebe3fc95e8e852 - pristine_git_object: 48e2f05cd6db21eeb06ebdd28f02ae2dded1a8b3 + last_write_checksum: sha1:48f3158827df46ddde2e7b4e6342096fdd25778c + pristine_git_object: 51744c248b6f683a55213714b4b46e7f29ceadc3 + docs/models/components/ReverseWireTransaction.md: + id: 361f3522d68d + last_write_checksum: sha1:b4d6a36fab182c2198f9fab7cd3aa8eec7b7a4d9 + pristine_git_object: 23b632d125d8ba2460bc19d649b3d660281e487a + docs/models/components/ReverseWireTransactionPaymentDirection.md: + id: ef848726e3d2 + last_write_checksum: sha1:f8ce799838f84245019f8c70d5495e255648f520 + pristine_git_object: 180200a05f2178090793c95212a1f84c8197b807 + docs/models/components/ReverseWireTransactionPaymentEventType.md: + id: 15dc6be3a2a8 + last_write_checksum: sha1:93efe37094b10f496ff1180fe0086f7d4db4a0f3 + pristine_git_object: d6c6e668cf9d174f6edd2ff3762b94d67f4c8491 + docs/models/components/ReverseWireTransactionStatus.md: + id: 941dad71301a + last_write_checksum: sha1:ced417636dddd7b3b6cffce85693b261cb9c3b65 + pristine_git_object: 0b5b313663f3ee425d8a3598a9ea237b0a9b86c0 docs/models/components/Role.md: id: c89eff3746a7 last_write_checksum: sha1:6b0644cb941693fe00d5549a70b8ee1ed38c743a @@ -2388,16 +2684,36 @@ trackedFiles: pristine_git_object: 841ba97f65ad348409d78f6fc91aba2e95227a67 docs/models/components/ShowEmployees.md: id: 200257b3b2a2 - last_write_checksum: sha1:af082b1ea22af6026a9d774e15f6cbc95493882b - pristine_git_object: 1d7ad6fd63c66fb745810543a50a48a190960a4b + last_write_checksum: sha1:f7cafce0252745b3787deb978b74596e91eda1b3 + pristine_git_object: 8d60a8097e91ee9e81ccbbf35d61d9603e13a36c + docs/models/components/ShowEmployeesCurrentEmploymentStatus.md: + id: a46f25d8b0b8 + last_write_checksum: sha1:5079ac90d172d04813779ec55a79860189598e0e + pristine_git_object: 916f7c85a0ccb1b7fc2e4c828bb4e50d24c5b509 + docs/models/components/ShowEmployeesMemberPortalInvitationStatus.md: + id: a60542e83289 + last_write_checksum: sha1:2e5e6da02e3d69fad0cdb6bb7729c104f36803bf + pristine_git_object: f58e21a59158e7a72322128479263e22bf1d63df + docs/models/components/ShowEmployeesOnboardingDocumentsConfig.md: + id: 7680f311089c + last_write_checksum: sha1:4cc59cfaf9fb728e9d129f7dc21dfcfb63f486d0 + pristine_git_object: aaa90973af21c3bced75c92df71ebb0bb4694347 + docs/models/components/ShowEmployeesOnboardingStatus.md: + id: 159385d156eb + last_write_checksum: sha1:7cdc9653a48571fa92682448f4c3fc4113614fb8 + pristine_git_object: ed627c71a5324787cee2449b89935af01406eed9 + docs/models/components/ShowEmployeesPaymentMethod.md: + id: ef2c9ff0707e + last_write_checksum: sha1:b89f8940366768e3a77e4a28211656e47196ecf6 + pristine_git_object: 9a68fd24c8fe56dc6e8d7d93643c4582fdb64ce1 docs/models/components/ShowEmployeesStatus.md: id: a72b2b5b5aa9 last_write_checksum: sha1:a0b486fae752e7e3a35d5150f93b901340e4d65f pristine_git_object: 5dd396b473a3b569e58f5a2aa2169938fc501221 docs/models/components/Signatory.md: id: b69c25b1bd12 - last_write_checksum: sha1:6d1cf40515b397d9d89784a84215c687b96f3066 - pristine_git_object: 40961c9e78614449daf533660e72e25ed25db7df + last_write_checksum: sha1:3089fb5f7d3af3bea85cd537bcd5b7849d2fdd5b + pristine_git_object: 4d79198390ec9b916e8dae46f54352b0a0205c6f docs/models/components/SignatoryCreateRequest.md: id: f56ce1c4b674 last_write_checksum: sha1:42c3470746922d357c1d915e8f9ba81618c14de7 @@ -2406,6 +2722,10 @@ trackedFiles: id: e5cf3f075f75 last_write_checksum: sha1:224cf6eeccebaace8e5d54c1d105723d2ad7c467 pristine_git_object: fa1f497dafbd2f314a1a284b791d6b982947b150 + docs/models/components/SignatoryHomeAddress.md: + id: da545e067198 + last_write_checksum: sha1:e463f6089438b2a678b5a4f1356bcde0ee4f6717 + pristine_git_object: b3cf894696b7b83aded9ea3f4a216a470c767bd8 docs/models/components/SignatoryInviteRequest.md: id: 34e3131bd6af last_write_checksum: sha1:616b87e51ed15c4e295c8fdd670c7260c62cf0ab @@ -2432,20 +2752,24 @@ trackedFiles: pristine_git_object: 0b4e7fecc5741d1596631d6a40366905c69be57b docs/models/components/Splits.md: id: 550db2269fbd - last_write_checksum: sha1:93dfba876aee5dee3ba096013b470211119d1fa2 - pristine_git_object: 1547cc064a95362d4bc5f82034f5269983d406fc + last_write_checksum: sha1:3e75aa61b73e2b2d6d1f1965ac0921a33038d7c0 + pristine_git_object: d1f404ebd5668f9726911e50ad5894a460d4ec90 + docs/models/components/State.md: + id: 43ba85dae5e2 + last_write_checksum: sha1:bcfe9990249c4b26e295731bf6f306a1355b6774 + pristine_git_object: cef1936bd2ddec2425ca5a7d8b5d3b2207385976 docs/models/components/States.md: id: 6d1630f1842d last_write_checksum: sha1:a00c925e8012ad81808efede6a56ed68689f869c pristine_git_object: e3b3ba515434bd5d564c3c81dbbbf484ba859f4d docs/models/components/Status.md: id: dd05f949cb61 - last_write_checksum: sha1:401ee9dadc8d4c25c0631d04db92f2ccd57c4b8e - pristine_git_object: db1f1eb73c1f99ade81f6c494f88dd2f974ad264 + last_write_checksum: sha1:f02ab2abf500d72fb4d70f1d4cd5db51b1678cbf + pristine_git_object: 8cc3a3fdc0b4edf9850a6759880e544647acf77b docs/models/components/SubscriptionTypes.md: id: 1b70918affab - last_write_checksum: sha1:81a27badbf2b34970af7340d95d84a8969b08924 - pristine_git_object: 56755c2f7ba84e87d63f488066e4555ccdd63d5b + last_write_checksum: sha1:ec43ca3298315fcb91bc711f857ee13beb8c8a2f + pristine_git_object: 0af99d9cb914be7f870bab11f53a6d4069023e27 docs/models/components/SupportedBenefit.md: id: 5a54fc450697 last_write_checksum: sha1:e47fbc2f8dae270afeb96895007edd8b46f4e8bf @@ -2462,30 +2786,30 @@ trackedFiles: id: 91872fabfcbe last_write_checksum: sha1:00b6c7d5079ddd8babdd57d13c8ce2c9f0b0edd3 pristine_git_object: 09a1846b4c109ed0c495b1372b6e93df4a4b0c86 + docs/models/components/TaxPayment.md: + id: fa9fa9a32254 + last_write_checksum: sha1:36035c24a05e9c95e9e0959b4c5b13039849f05b + pristine_git_object: 417720f9b78e57578fcec33c2bb6cdfcec2c7b58 + docs/models/components/TaxPaymentLineItem.md: + id: 4297fdd79618 + last_write_checksum: sha1:602b2da44c4e0de8623dff7a386e2ec5f79d56f3 + pristine_git_object: 813912882921a4b4a96dc495ac524779c80ed4af docs/models/components/TaxRefunds.md: id: 52eb6abeb81a last_write_checksum: sha1:9acd5216bfbaf7e196e9eca31010415e4b51b15e pristine_git_object: 5b5a1417d0ed4caa82be7f6cc29e976c3ab2fae4 docs/models/components/TaxRequirement.md: id: 485b5784a8d6 - last_write_checksum: sha1:210cc5cb58fc130377713755333c3f9b009c48f1 - pristine_git_object: 8e31bfbeb7cb16e6e45cc83491a22341243efc34 + last_write_checksum: sha1:feb7e9ea3576c19b706fb4f82194343c4f3c9e9f + pristine_git_object: e03bc29024625fc1301e274941ab3fb74cfef680 docs/models/components/TaxRequirementMetadata.md: id: 02d22c41e7e3 - last_write_checksum: sha1:9dfc1a40f6a375a9822ab43bbef8f3f6e2282053 - pristine_git_object: c6c204ac8efcff02f33616c11ccc86b9dd707695 - docs/models/components/TaxRequirementMetadataOptions.md: - id: d8a581f1d9a5 - last_write_checksum: sha1:8fb3a3c2d7069868cf5a3bc61eec02c70c2be41a - pristine_git_object: 3e78bf332c3388a4deedf86dcfa9e6186acdf844 + last_write_checksum: sha1:fe07173e1c2a74beff7f9f1626eb888f108862cd + pristine_git_object: bb98431749b4f36fbef20405082b315b15b71e35 docs/models/components/TaxRequirementMetadataType.md: id: 3700c55f678d - last_write_checksum: sha1:b6e033935f3070bd34067528e5e85197e4105b23 - pristine_git_object: 02f059cd01dfea57f3715b8dc99256fd3aa5b864 - docs/models/components/TaxRequirementMetadataValidationType.md: - id: 408228c09cda - last_write_checksum: sha1:b7b044a3c1a9f8e8fffe8b4ab0a648868763a55c - pristine_git_object: 437fa339671af4bdda13d664a5bfb86a24ce102a + last_write_checksum: sha1:0194176eff11db1bbeaf93ee9def9c03bf08d080 + pristine_git_object: 5114a131247864f0fcaaabb253d01ae3442a5036 docs/models/components/TaxRequirementMetadataValue.md: id: 61fb3b23d321 last_write_checksum: sha1:96960cb2a7cf971c20e749ffd5de3eb97d757f5c @@ -2576,16 +2900,16 @@ trackedFiles: pristine_git_object: 5c2b9d35796320026a405823e994a4ae51c99161 docs/models/components/Totals.md: id: d837cc2544f0 - last_write_checksum: sha1:6576ca386fb7c5d2b913ae26e43c306807bf2f5e - pristine_git_object: 96143d9517b7bf7ccf3075a689ad4ae4d9fc315b + last_write_checksum: sha1:b1bc305497660cae0df4ce4ef5a72a2cb1e8ab05 + pristine_git_object: 79bd07d3a430bb10113e9d2682d2c5c1883b2753 docs/models/components/Two.md: id: d40a2aa6dcb3 last_write_checksum: sha1:9955b5141f96f7d954a59663f609286ed5df5bae pristine_git_object: 07ff479d3d44790bbf4e1ff29706928886d87e46 docs/models/components/Type.md: id: 8c0a5144d92e - last_write_checksum: sha1:b36d9d0b7cea7f1259196ac3e4d924c051af2c3e - pristine_git_object: 75103137c43def806e7e48f46341270cc1d8f15f + last_write_checksum: sha1:fbb69efb4ac7326682977846872d33fc9410afa6 + pristine_git_object: c4bd25a747c8068d723b9d939358aa8be7b640ac docs/models/components/UnblockOptions.md: id: 4db5714d9d73 last_write_checksum: sha1:20d77f76e4af75c1521955b7ac2d93c8e8ac1686 @@ -2620,8 +2944,8 @@ trackedFiles: pristine_git_object: 25c386347a5aa1cdabb26c213c5767a4fccf753d docs/models/components/Validation.md: id: 7df579e163f7 - last_write_checksum: sha1:4b1f7bbaefce7dc745739a8fbe5a223424d440bd - pristine_git_object: ce347f32dba28637fc8f322a7c6946cb7ca87d33 + last_write_checksum: sha1:8a6a576b4bd6cfead479a6721003ebbe8f1585b8 + pristine_git_object: 14a176ce8075f933e9a2dac94022eb68a6ec7514 docs/models/components/Value.md: id: 298b43471825 last_write_checksum: sha1:7cf36d454160dcd639f9afdff5d0a068244b0142 @@ -2642,10 +2966,6 @@ trackedFiles: id: 752770a96807 last_write_checksum: sha1:0d8f8bc2410cc935c713b2ae926a06e98c351848 pristine_git_object: f8f1bbf515206a24dfb4a3e6002c313135673081 - docs/models/components/VersionHeader.md: - id: 7c4f94fa7e65 - last_write_checksum: sha1:6e7a32d1c6e8a8db3fb0e1103167e6a41acefda7 - pristine_git_object: dfab4dbde3aa50478fe7e7f05685f56ca7ee903d docs/models/components/VeteransDay.md: id: 974931980e5a last_write_checksum: sha1:73d3d96fb7c9c816147d21ace1db262f400be08d @@ -2656,8 +2976,12 @@ trackedFiles: pristine_git_object: aceac0a81a4fd13ddda0b94919b022673d4b0df6 docs/models/components/WageType.md: id: ae6c7aa17a55 - last_write_checksum: sha1:77f2e83ff709cac538aab06c6d7b33039d958cce - pristine_git_object: 234aa74e3b7e1af5e5fa0a3a5addc14d0a3e12b6 + last_write_checksum: sha1:83c9c8c3f735ff2be6a9be9387d8032603a67a31 + pristine_git_object: 7073814755470caed7ab475c5f1d486cc21b8d65 + docs/models/components/WarningObject.md: + id: 77231dc5d962 + last_write_checksum: sha1:946160dc7a32d7b8572684864c141ca41265e2d7 + pristine_git_object: 7db41084f3a89f4ec3519bd400b7bad42a13c57a docs/models/components/Warnings.md: id: 1133aa133ae1 last_write_checksum: sha1:3dc6289d6b5d2aacf472b6dc4d77ed2dc4062b55 @@ -2712,8 +3036,8 @@ trackedFiles: pristine_git_object: 41813e2dd6c133693e51138aeff5130bd38f0cf0 docs/models/errors/ConflictErrorObject.md: id: a9577e85192e - last_write_checksum: sha1:8f3087b520cd14b48b7aae7911756f89282fdaf9 - pristine_git_object: 46ec3c2fbd9a3b41cd649cc318052ee6eef410f3 + last_write_checksum: sha1:b89f2c283e26f9329a4164bfb75fd33e4d392506 + pristine_git_object: bc5326f19de847ab9ef764405cfdffc4db0407ba docs/models/errors/ConflictErrorObjectErrors.md: id: e4a113f06902 last_write_checksum: sha1:7d0e54fd6134937c0284262284c4720ba22c19a9 @@ -2722,22 +3046,38 @@ trackedFiles: id: 607310e85338 last_write_checksum: sha1:d109e36aced698732ee63f0c1b269e398a594c2a pristine_git_object: b0d0a11f57ecf5d93c2b43f18820523f826b0c14 + docs/models/errors/ForbiddenErrorObject.md: + id: d1222a77cd9f + last_write_checksum: sha1:3f69533faf341477c38ff2ae91dd28f964bab7bc + pristine_git_object: 4cfa4c14ecb2d75995bb3a9d507b6013f920a8c0 docs/models/errors/Metadata.md: id: da0ca4518929 - last_write_checksum: sha1:dec6775cd0e0abcb27a0d2dc49a6f161a8601f44 - pristine_git_object: 9e479ea35cc7d75205465758b9d8e24ce8733617 + last_write_checksum: sha1:bdc0f3642423a269beb168b2ffd3050b9c5350b9 + pristine_git_object: 74f2b9e371228a11b9a538deb3ac5d48536fe514 docs/models/errors/NotFoundErrorObject.md: id: 85bd5de8b5dd last_write_checksum: sha1:eb8d94dbce552d0b050e8bc221a84aca25beb527 pristine_git_object: 32a21dea9066d4af0c515f490cf8165d276d3060 + docs/models/errors/PayrollBatchConflictError.md: + id: 79eea272248c + last_write_checksum: sha1:f422481488238f7609e6ef86704d636f70a0472c + pristine_git_object: c8c98a8a00bb45e7756da169db0c8dff1c745597 + docs/models/errors/PayrollBatchConflictErrorErrors.md: + id: "334408287786" + last_write_checksum: sha1:9349d3aeea2a89816cca28a10a6d575093c926ab + pristine_git_object: 89ca96f7ff801cc633d5f2f159ba7421fcf24056 docs/models/errors/PayrollBlockersError.md: id: 74a3d8802ae4 last_write_checksum: sha1:717ff65befc340841871fbf4e09f1b79b63c8a57 pristine_git_object: 46ebb71b8138d434af5f0690d149f8ab01502b58 docs/models/errors/PayrollBlockersErrorErrors.md: id: 9b10ecfafce5 - last_write_checksum: sha1:fe54d3dfe44707e6e3a6a47e2d1dc114cf9c8829 - pristine_git_object: 38137ce81d903b2af4e6fd502f9b2430789dd211 + last_write_checksum: sha1:7d9bd8407b6c06292c01dbe64af9b3f487854804 + pristine_git_object: 00687e96454805abd085d76d49303da6cf0e0ed7 + docs/models/errors/PayrollBlockersErrorMetadata.md: + id: 1a7043c0cda4 + last_write_checksum: sha1:d74cdd1e0eaa559f53254cdaa0dea8fe361a51e3 + pristine_git_object: 2dc76c4cba1cb5fc70d0433fe820ad0d7df8c094 docs/models/errors/PayrollDigestConflictError.md: id: 19fcf70a863c last_write_checksum: sha1:40b47c2058d51d13de9b4817a1ef8989e65d0a9e @@ -2780,12 +3120,12 @@ trackedFiles: pristine_git_object: d9bfcf90ebe8dcfe126d51c05a5c03be1843ce04 docs/models/operations/Batch.md: id: fb70d60a5d4a - last_write_checksum: sha1:e08ca08b023066a98b0631dd7b716b76581fd811 - pristine_git_object: 2da5e31d31c2a0d293e5b8ccb6868f7e71b1b13b + last_write_checksum: sha1:2396c62450508b9d36e63149cf64f98575a29b58 + pristine_git_object: 7cef8eb513e3c2d03245cc8d0ae084242923468b docs/models/operations/BatchAction.md: id: 71466b7fca28 - last_write_checksum: sha1:39a5c93b5702d4844e9acbae6727dfd5e774ba7a - pristine_git_object: 65388cb9d338620dd88148f3bd231a8787761ac3 + last_write_checksum: sha1:045fc4f71de37f7923a470dc5331690708a0c1d0 + pristine_git_object: a2908b932f46bb5b5de8d66e83a43a8764708db1 docs/models/operations/ChristmasDay.md: id: 2b33b0dc8037 last_write_checksum: sha1:a068692813599ef7b1c9e8037038ea50ced28ee2 @@ -2812,8 +3152,8 @@ trackedFiles: pristine_git_object: 37be890a1e9338262bb9e26696df3fd8d51ef66e docs/models/operations/DeleteDepartmentRequest.md: id: 225a5dd67efa - last_write_checksum: sha1:79e8d70884ee6133d0a6b241d20aa496d13837f6 - pristine_git_object: ad8e37b720dd9ae3097c38a1f7af51a88c7dfe50 + last_write_checksum: sha1:6239c4ee59b8c6d435bdf89ac3d9c947785bd1aa + pristine_git_object: 84240d2140e46eee9e0accf6dcc70f7518db2b00 docs/models/operations/DeleteDepartmentResponse.md: id: 2b626e6f6ad2 last_write_checksum: sha1:051eafc691ca6154adb724524000bfc821049543 @@ -2860,8 +3200,8 @@ trackedFiles: pristine_git_object: fe4c37a3488d6c4e09887414391bb569ba1df451 docs/models/operations/DeleteV1CompaniesCompanyIdPayrollsRequest.md: id: 80c761a49606 - last_write_checksum: sha1:4ce4b13596097118d1f02def9f5c8459df26d22e - pristine_git_object: d8039e22bed7b2682c9e7035f6ed2da7bfa9e19f + last_write_checksum: sha1:762e2019ce9dce66d7e13accb59d8dc16dbb08ed + pristine_git_object: daefaf7e56afb23bab121f5541802d049408e8a1 docs/models/operations/DeleteV1CompaniesCompanyIdPayrollsResponse.md: id: 8bb31ac92f37 last_write_checksum: sha1:d4526f6c3be516844a1d637f3743dd1afcdc3746 @@ -2884,8 +3224,8 @@ trackedFiles: pristine_git_object: 2c1399ea007d0cabe6e585e16b472a0ceb052ca5 docs/models/operations/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.md: id: 5042a285b865 - last_write_checksum: sha1:be5f53912018c06fdb18bd5c72de24cb57d29ad5 - pristine_git_object: db63e0d6a22ceb9882c3ce5134188c90ad8b1271 + last_write_checksum: sha1:31a52934eb17f1c8df5006f11de536abe28d674f + pristine_git_object: 74bbfc77bbb18758ad24c39151b50de1c50dac98 docs/models/operations/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidResponse.md: id: 5ff7408c87c0 last_write_checksum: sha1:0fce22d35e827da13bc4e64a24cbbec718e0996d @@ -2920,8 +3260,8 @@ trackedFiles: pristine_git_object: ac29cded1ed06b922707690ebb75080493396b6d docs/models/operations/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.md: id: c7fe8e2c439f - last_write_checksum: sha1:c0cb6a895830b2120d433d9d571b8885daa43cf2 - pristine_git_object: 36464b1f65ffd7a30bde283a3403a551e39896ab + last_write_checksum: sha1:5cdc963d5b10ca5070998ab3641da65d6c1935e8 + pristine_git_object: ca5eb9eb8bd8d1b7870b6dd0113b88344df792df docs/models/operations/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdResponse.md: id: 8e24b36765e5 last_write_checksum: sha1:74e61c4178574e1aff44fea1cbf5691ed99d55e6 @@ -2930,14 +3270,26 @@ trackedFiles: id: b6f9ca421cc3 last_write_checksum: sha1:1bc36eb651fa53154a723bce53af3bbcaa2a9617 pristine_git_object: 9d11bc2fdabf155f5b0568c95e4a7b5e2382cd13 + docs/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.md: + id: 2ef252ab6a94 + last_write_checksum: sha1:ac8bed77019b51144ecc263f0964973a95f76c71 + pristine_git_object: 9820718891c4519c8ab9eee9078a2a62c9f0e6f8 + docs/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest.md: + id: fcc734224303 + last_write_checksum: sha1:28d9929cc1357d2d728b2bec3945c85716cf38f9 + pristine_git_object: 68a9f1e2938914b58654fb542c3b14d1d3ca6cf6 + docs/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse.md: + id: 8eb1513c5464 + last_write_checksum: sha1:dc8ac65a7acef9721697e4db00688ff20778eb1d + pristine_git_object: 3e71f42e1e6f757ced5c72720eff9d582a4fa8e5 docs/models/operations/DeleteV1ContractorsContractorUuidRehireHeaderXGustoAPIVersion.md: id: ecf3b6007f4a last_write_checksum: sha1:d65fb06cd92280436dbca141b0e012803ffcdfa6 pristine_git_object: c1260e74c6f064063a325968af8b79816e1b500c docs/models/operations/DeleteV1ContractorsContractorUuidRehireRequest.md: id: b10f5b915de8 - last_write_checksum: sha1:f010d8c4f9293e58f29eab6bd873f86382e39e50 - pristine_git_object: a23be06397a07b007e4b508bf03117173d6a9ad2 + last_write_checksum: sha1:523e52a569da242b0099c1819dc855ed2b710420 + pristine_git_object: 5d967bc218c594d4c8d711e1dff574390e225701 docs/models/operations/DeleteV1ContractorsContractorUuidRehireResponse.md: id: 3cfb7f7ed748 last_write_checksum: sha1:c56c8350ee2f8e4b973f32718d8cc4595a796322 @@ -2956,8 +3308,8 @@ trackedFiles: pristine_git_object: b4e54868fc0f29ec721615cc2b3cfdc892ff9742 docs/models/operations/DeleteV1ContractorsContractorUuidTerminationRequest.md: id: 80b1a809b5a7 - last_write_checksum: sha1:654410417de10082757f28af4781ecb6c171d11d - pristine_git_object: 63ffc2dbafcf4b27905205b44d5bfd141121e62e + last_write_checksum: sha1:377115640b2a5ac5c7b85bf0993ea852e7164a88 + pristine_git_object: 8c9b110d6bfb352ed59a96d59e6d23e300c1ce63 docs/models/operations/DeleteV1ContractorsContractorUuidTerminationResponse.md: id: 226160638aaf last_write_checksum: sha1:6e87bbc129271e303f864bc07b36fd0100177f2b @@ -3010,6 +3362,18 @@ trackedFiles: id: 2dd8d1625f13 last_write_checksum: sha1:7c47ae6566e47b06514706717f822a9353c8c9f8 pristine_git_object: 8342fb0f40822d312a3f517f7870d6916df37e70 + docs/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.md: + id: e0c30f9f9cc7 + last_write_checksum: sha1:ebab2e6599e01e1b89320d48c8c83a9a1e562ed5 + pristine_git_object: 695baaf4c25cbb754369709e6d7753b65529d5a1 + docs/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest.md: + id: 90d3b4b03ed2 + last_write_checksum: sha1:2ba324c90e3666d5f583a9165c058757f7fd237d + pristine_git_object: c75ec42f6ee215822e3bb0f8203e9d57707cbb64 + docs/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse.md: + id: 57b99e51a48a + last_write_checksum: sha1:9dd5452adafe28e961da177ed8d636232826e17b + pristine_git_object: eb01e4ce801c1c547549c7eb9cf594e9faa295ab docs/models/operations/DeleteV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion.md: id: 9688b8813591 last_write_checksum: sha1:cd1c984deb21c2e159a96b1b114670637079b721 @@ -3064,8 +3428,8 @@ trackedFiles: pristine_git_object: 24a516a2e9d577a424c22a8867311d37ff6e5e7c docs/models/operations/DeleteV1JobsJobIdRequest.md: id: 5a550369e634 - last_write_checksum: sha1:da9794499da6e0a9ec8b57c118e80af54edab48a - pristine_git_object: 08467b97a4f15a4522261ecbd0902eee04adc0f7 + last_write_checksum: sha1:39fe0cf9d67288a5491e37f702c19f39c3a7f0a2 + pristine_git_object: ae69845c26df09bd6e744480674aac85dab1effe docs/models/operations/DeleteV1JobsJobIdResponse.md: id: 614e61aa2780 last_write_checksum: sha1:b3c5bbdf54917224f4659135d89b69ef20aa801a @@ -3100,8 +3464,8 @@ trackedFiles: pristine_git_object: 124bc62fca51a449c3651477f615fd16847adaad docs/models/operations/DeleteV1WebhookSubscriptionUuidRequest.md: id: d3f9ac164fdf - last_write_checksum: sha1:8b9ef9db6eb779459a7789736c460f0c250caaf8 - pristine_git_object: 1f6589f3c0bc4b92a3657423d74d3e5f56906aa6 + last_write_checksum: sha1:ac77406cfac3a27805f0b15cb7823fbcd837375d + pristine_git_object: 1329055416b1b743b8bb730d61096d8f4de7ac4c docs/models/operations/DeleteV1WebhookSubscriptionUuidResponse.md: id: 909d6928a576 last_write_checksum: sha1:bf707016103169d746fd1cee178b148fea9028fd @@ -3116,8 +3480,8 @@ trackedFiles: pristine_git_object: 53c708ca974e3ea88d185124ac19d0d162eb74d5 docs/models/operations/DeleteV1WorkAddressesWorkAddressUuidRequest.md: id: bf8280ddebb8 - last_write_checksum: sha1:ea734fd63382917371d946b22876b26a6917da3d - pristine_git_object: 540e7dccaf69665d80e57fcc2ee7d3dc80a5c146 + last_write_checksum: sha1:07c835fe10b2000e0cf6102260583ad9ef252d57 + pristine_git_object: 390a7dff392bf91af7bcceda427132e29aa831fe docs/models/operations/DeleteV1WorkAddressesWorkAddressUuidResponse.md: id: 491b43ae722d last_write_checksum: sha1:7452fbbb183bea20cf025de424b35b07ee01261f @@ -3140,12 +3504,12 @@ trackedFiles: pristine_git_object: 3cb7924b4fd0cd61415341a6261f2598736eaee0 docs/models/operations/Employees.md: id: ccf160984904 - last_write_checksum: sha1:5f382e4550c4ba6ed7ceec7f0494fcaa7c6126a5 - pristine_git_object: 186f9b8de9ad2dc085ee6a621ab2fc61df44b030 + last_write_checksum: sha1:a5c8a4e7cdc7f8206aef77b1a2d3f9e9c511f2c7 + pristine_git_object: d8aa07ecca142e276010fb7eae132e54c0bf9b5d docs/models/operations/EntityType.md: id: 8a8fa61053f4 - last_write_checksum: sha1:1bd19d74c88b1b7a97e5823d0aafe40e818beb09 - pristine_git_object: 764b7a3305f8272738d0a58539b9ad387db249f3 + last_write_checksum: sha1:0de79c64e41f9b49f7a64f61194abc362de33f6a + pristine_git_object: 31e37c3fbc4c2f3e9fc12df3156feba0a0af0fcd docs/models/operations/ExperienceLevel.md: id: 4076fb44469f last_write_checksum: sha1:c253711304ef6a21678aa760bddbce048fb62ee6 @@ -3170,14 +3534,10 @@ trackedFiles: id: 5516f4fa7be4 last_write_checksum: sha1:b579735bfa0670b894ce2c45875a8149254f95f8 pristine_git_object: a0d77b372340d4c9937f8a235d7647b0bcaf78f5 - docs/models/operations/GetAchTransactionsHeaderXGustoAPIVersion.md: - id: 20ae160f59b3 - last_write_checksum: sha1:e015ac7b3d1ce261f11f4b785a9af1849616b2df - pristine_git_object: bf341b009cf993629199a3a70da26ac11f81f02d docs/models/operations/GetAchTransactionsRequest.md: id: 0aa2de4a2f19 - last_write_checksum: sha1:0903b1b98c6b4d75cbaf48a60aff1a99b03ed3f4 - pristine_git_object: ed5fd80f6b7f541d09b04fcc3ebb86b167db3605 + last_write_checksum: sha1:0620f5ce276378f8aa52e7a21b3fee9f267e44a9 + pristine_git_object: 8e1b7d90cd18b33f25f617fc6850960b3a0bdc80 docs/models/operations/GetAchTransactionsResponse.md: id: 616accc1a0d5 last_write_checksum: sha1:0acd42899ddbae3f355003211a2550319c5ffbf7 @@ -3236,8 +3596,8 @@ trackedFiles: pristine_git_object: 676ea69c01c8ac931398552e87ba40a9e4f7a49e docs/models/operations/GetCompaniesCompanyUuidWireInRequestUuidRequest.md: id: 952d0a7be074 - last_write_checksum: sha1:c019f1ddd35f8e6c2c12da706cafaa809a192281 - pristine_git_object: 49727cf55ca254530176edcbe7136ae1141719b4 + last_write_checksum: sha1:2ae6f44516173c92c3c083b2c8ea1697f0929bc6 + pristine_git_object: 92dad002952cec6798ee09fe34f855f119c0cfca docs/models/operations/GetCompaniesCompanyUuidWireInRequestUuidResponse.md: id: b75910218858 last_write_checksum: sha1:3d6ec06c599c2922d4c2a96bc69152ffad07cd71 @@ -3248,8 +3608,8 @@ trackedFiles: pristine_git_object: 15898222044550dbfab5ea10e125a677176240b3 docs/models/operations/GetCompaniesDepartmentsRequest.md: id: 9bfd8d20f253 - last_write_checksum: sha1:79f9b8f4c1628b1c58a23619147eeed3e0c256a4 - pristine_git_object: d3edad26d584c2ca7d7480a99df77ac101c3363b + last_write_checksum: sha1:19143a48d938883a242e2c6a04ef7bc76bc6b9bc + pristine_git_object: 75f56a515e32a444bf798d3acf2b93aa1c8dd866 docs/models/operations/GetCompaniesDepartmentsResponse.md: id: 5a076da15005 last_write_checksum: sha1:90a71aeb005564acf517306dc6a3054a055bf0d7 @@ -3260,8 +3620,8 @@ trackedFiles: pristine_git_object: 346d05d6923736d83fc4fef66553c6e0a5a8ddd4 docs/models/operations/GetCompanyNotificationsRequest.md: id: ee6e9c165a35 - last_write_checksum: sha1:537bad789e259ef5f7fa17ef62dc1d0a4f402c7a - pristine_git_object: 5a9e7cbebfcd5eee58998e84930e028c39598337 + last_write_checksum: sha1:18a1ee3e3fcb32ac84e514144ccf6dcb0f773ed4 + pristine_git_object: 0f95439098fea89355c64cb0481e0ad00f033cc6 docs/models/operations/GetCompanyNotificationsResponse.md: id: 3133971fba0c last_write_checksum: sha1:7c1f03fbef40dcb42d13dbc3192178f350721160 @@ -3272,8 +3632,8 @@ trackedFiles: pristine_git_object: 6b56b973acf82a49a69229bc787de81c3c232785 docs/models/operations/GetDepartmentRequest.md: id: 9d220094095c - last_write_checksum: sha1:14ad08a50829552a7aa36b5143549d9e5da49ed3 - pristine_git_object: 967af39fb2e0a93edf201380d66ffcc4d2cefd48 + last_write_checksum: sha1:5cd5287409611628e98f869418efc2e471597179 + pristine_git_object: c2cb710fceb97d04a8a1815695365645440838cd docs/models/operations/GetDepartmentResponse.md: id: c2054fd8315c last_write_checksum: sha1:41927991f85b8446a592720ce2c20ebe187b235d @@ -3296,8 +3656,8 @@ trackedFiles: pristine_git_object: 2c73eeff6baf4d62bc9032bb64ffa405b274308a docs/models/operations/GetEventsRequest.md: id: e6280d90fe7c - last_write_checksum: sha1:5cf910538b333719eb130fce563f6811a2c00beb - pristine_git_object: aa7a6c30ebcbd0fd7251f62bd1a02fae8d712f8d + last_write_checksum: sha1:0246a87d539dd39797beb8fcb7038a53eb740853 + pristine_git_object: 7172c6eb46aeea3876f4f748e5de2f60d3eab57a docs/models/operations/GetEventsResponse.md: id: c441cfe55d03 last_write_checksum: sha1:9b2a27d4eafc55cb85fe9401717b248bbe1fbb96 @@ -3340,8 +3700,8 @@ trackedFiles: pristine_git_object: 48e1b7173a503543666c5be71d8008c66f9e685c docs/models/operations/GetNotificationsNotificationUuidRequest.md: id: 801ae55c9bae - last_write_checksum: sha1:9c46f4e220e6ca7b8f19b46fbd093245031429d8 - pristine_git_object: cc03e18ffc72242cdca742af74f67126bc2e43d8 + last_write_checksum: sha1:4858ec292f2edf8ddd960319ffae526f66e8a579 + pristine_git_object: 51e4b61d1ea08bff3bfd5727a1b6ea883199c524 docs/models/operations/GetNotificationsNotificationUuidResponse.md: id: 4d787ea80190 last_write_checksum: sha1:ec4c3c37a6196cf965ca582c39eb2ed40cec9cd5 @@ -3370,6 +3730,42 @@ trackedFiles: id: 889a0b4abd90 last_write_checksum: sha1:0be831bcbdc3545254de7248610f0ba02da99e78 pristine_git_object: 6dfc672aa3e9ee421ecbd2d5de601897c08adf98 + docs/models/operations/GetReverseWireTransactionsHeaderXGustoAPIVersion.md: + id: fb794000ec85 + last_write_checksum: sha1:b14c5414571c399472a64dacf6f70fcc40017aa2 + pristine_git_object: daf163ffbaf953a1be1521feabfe407dd3b8f5c2 + docs/models/operations/GetReverseWireTransactionsRequest.md: + id: ccdeec6e01e8 + last_write_checksum: sha1:20891854e5a1428af058d19843a6ab356b20d301 + pristine_git_object: 3bdd174decb8b81db2c76e55b58ccaac5ce62296 + docs/models/operations/GetReverseWireTransactionsResponse.md: + id: 3a0d4f66c984 + last_write_checksum: sha1:878a6a6df08b0d9573d93e3e10fe53a5769e3827 + pristine_git_object: 54edb09579a4711475638b631377bd1e437c8dad + docs/models/operations/GetTaxPaymentHeaderXGustoAPIVersion.md: + id: 83a2323624a8 + last_write_checksum: sha1:6befdb28281e56d69d8a8d53a07edd116a6305a9 + pristine_git_object: fdc19e811dd2fb4c90f17cb7aa148af536975dc2 + docs/models/operations/GetTaxPaymentRequest.md: + id: 498fe3e9f0ef + last_write_checksum: sha1:18bcff9b5595f93630b008942ffd88422ea2aa3e + pristine_git_object: 27124ac9363a54c11743bb9e840f7537d7536aeb + docs/models/operations/GetTaxPaymentResponse.md: + id: 0128dfbc4ae5 + last_write_checksum: sha1:88666ad39eac88106a9453806fc85438dfa96bd5 + pristine_git_object: 5d78fdd78f5aaf1eb1998fced751dfe3ab6ca1f9 + docs/models/operations/GetTaxPaymentsHeaderXGustoAPIVersion.md: + id: 29261b0a5463 + last_write_checksum: sha1:1496a6bc7c039e5855ed58c6dfcf4ceb1a6dc650 + pristine_git_object: 7e3630907e2500fbfaaa7f3408fafecf6296aa03 + docs/models/operations/GetTaxPaymentsRequest.md: + id: 9211f174ce0a + last_write_checksum: sha1:4a795cebed11aa6c976378bc708903cc509aed1e + pristine_git_object: ceee8ed55306f0fb258b9622cc7c3d8a8bf7201c + docs/models/operations/GetTaxPaymentsResponse.md: + id: 9e9e580ff785 + last_write_checksum: sha1:7e63630a633d078024a375c6c80900ec49fe5563 + pristine_git_object: 9e06ceeae81c96a25f42957c504c5086f535dac4 docs/models/operations/GetV1BenefitsBenefitIdHeaderXGustoAPIVersion.md: id: f247a64c47af last_write_checksum: sha1:f1803b4cd1560b4a3ef1d29ba6ee73c41f282d13 @@ -3416,8 +3812,24 @@ trackedFiles: pristine_git_object: 95e2b3895147603941a000329d50bc38a10d68b2 docs/models/operations/GetV1BenefitsResponse.md: id: 257d0090ff83 - last_write_checksum: sha1:35c05b5f2c1b9244df460e9b3ec9f822b5e72f24 - pristine_git_object: 38d1b7a14bc81466ef579f0aaf05c0b0680d9cbe + last_write_checksum: sha1:11567c87b6c02a4b99a4910d26360a16024773d0 + pristine_git_object: c636016d6f7d4006346f6650a575e77da13acd6b + docs/models/operations/GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion.md: + id: ff041859b83d + last_write_checksum: sha1:cd3f4d28e60212469cb0e125cded9f9390074727 + pristine_git_object: 242b02b53ade27e69efa167f5f2af633f673d5ed + docs/models/operations/GetV1BulkReportsRequestUuidRequest.md: + id: ab8e1edc4091 + last_write_checksum: sha1:69005726412d0becbd5607fb8a3d9a58e6b78659 + pristine_git_object: 455e7dd033efee9c28745ac4e46dc67816f096db + docs/models/operations/GetV1BulkReportsRequestUuidResponse.md: + id: 19ba6bb99aaf + last_write_checksum: sha1:038367edf0731b6f4527d2dd6777e0f7364b7a51 + pristine_git_object: 308f4e425a395272618ecd94ef728e346f6a66a8 + docs/models/operations/GetV1BulkReportsRequestUuidSecurity.md: + id: 4a0c01780680 + last_write_checksum: sha1:ed7e2b5d63ac663194bbec432efb8e3835beb2bc + pristine_git_object: ad43655f1131c8347238ca0199cadaca5fa5f550 docs/models/operations/GetV1CompaniesAttachmentHeaderXGustoAPIVersion.md: id: 046b7fdb9d06 last_write_checksum: sha1:d4186db09481a0b64dc4eaf36eccc63d2d45f6f9 @@ -3454,14 +3866,10 @@ trackedFiles: id: 6f2f23af171c last_write_checksum: sha1:ac9fc5377dfcdf013faadea3cea4bbee9640c2b8 pristine_git_object: fbdb71ff21f3473f885a6046d96244942cdb81a5 - docs/models/operations/GetV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion.md: - id: 6bfec9e77440 - last_write_checksum: sha1:27695212cc042fe64986d1139cb7ba5a024ad07c - pristine_git_object: 4b216c69ed7bf726751258d8b9661a5083fad7bf docs/models/operations/GetV1CompaniesCompanyIdAdminsRequest.md: id: 05542e452c30 - last_write_checksum: sha1:283b2cab39f459e03828b46e12bef2e1a4439354 - pristine_git_object: d31ca9aecc82c1d700a6c3aadac50d1c76e34d82 + last_write_checksum: sha1:403e8c1ab50b07abcd240a54c90013d61367d02d + pristine_git_object: cdf8eb2e8c2ca3e64c83a92c3a4564fa355753bb docs/models/operations/GetV1CompaniesCompanyIdAdminsResponse.md: id: 137d6d6a175e last_write_checksum: sha1:0e9a390110928574eeca3dbbbfeccd8e3488368f @@ -3508,8 +3916,8 @@ trackedFiles: pristine_git_object: 127df3f2cb792277fc8b5f753977391ea37aa302 docs/models/operations/GetV1CompaniesCompanyIdContractorPaymentGroupsRequest.md: id: 75b0550b74c1 - last_write_checksum: sha1:bbd88beb414a98c02c23669ae2a2a1c809185be3 - pristine_git_object: c6048a25c46b36b2fe5f4fcefef433b13c2e40b2 + last_write_checksum: sha1:3d3b394edafc8fa036d44c47c16401ed1eed0baf + pristine_git_object: 5393f11c62f1f634c472c672fd415c0ea25d9ec3 docs/models/operations/GetV1CompaniesCompanyIdContractorPaymentGroupsResponse.md: id: 8a810e763279 last_write_checksum: sha1:d61be1e197fe5f6c884cd4f66f72623d2df1a78a @@ -3536,8 +3944,8 @@ trackedFiles: pristine_git_object: 9b369a35f825332f1f78d24e4ae42d2e7af76bf9 docs/models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest.md: id: 0f4c000da73b - last_write_checksum: sha1:3ba7bf4bd4917eebcca647ae8b16c3a7d3b013fd - pristine_git_object: b2b1058ad5c548da40869a8b6e5c96176749f2e1 + last_write_checksum: sha1:ed706b89d7d551f4cedb1c09c96f7c12563ffe3d + pristine_git_object: b49fbb0fa4cbb93537dfbff31b2d4599342916cf docs/models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsResponse.md: id: e3da32bf63d7 last_write_checksum: sha1:6744dafd956eb6567149e63d194a82ab30ac4b97 @@ -3582,10 +3990,14 @@ trackedFiles: id: fe375e79fd4a last_write_checksum: sha1:4d760a0bed80bae4abf8d5b546a68198fa454286 pristine_git_object: cee20405e0a91aed26fe3bf9e154bfaae5736e0c + docs/models/operations/GetV1CompaniesCompanyIdEmployeesQueryParamInclude.md: + id: 6f46fdc98f40 + last_write_checksum: sha1:6dbfe520326af990a2f7e3775307b3d64cf360d6 + pristine_git_object: 42c04fac12738e16112fe75986fae21b5d44c630 docs/models/operations/GetV1CompaniesCompanyIdEmployeesRequest.md: id: f37cf221e405 - last_write_checksum: sha1:b5e56402eb6d4b624a0111d14bd3227f00879e38 - pristine_git_object: b1338ec65e89a205daf9e288157dc554f7763f0f + last_write_checksum: sha1:02ae2c6211087cc4d0a38219f82fadc655533127 + pristine_git_object: 959151d9553a3f4f384984934253cf4db3b0e4f2 docs/models/operations/GetV1CompaniesCompanyIdEmployeesResponse.md: id: 10658dbf4ba2 last_write_checksum: sha1:745cb7c527b8e0493783d460580fa0ebac05d096 @@ -3596,8 +4008,8 @@ trackedFiles: pristine_git_object: 97e19fe4fa46f48e3eb505f82bc8fd05b96b4c6e docs/models/operations/GetV1CompaniesCompanyIdFederalTaxDetailsRequest.md: id: 3bd78defc737 - last_write_checksum: sha1:49acea9323549bbdf7957d72f1746e734c5a3491 - pristine_git_object: 3d1f819c956df0b4c5f1646b74167a1c1de24cf2 + last_write_checksum: sha1:c3376d6791c1103ecb488126abcb0484d67237da + pristine_git_object: b8135170ede7c4ced4430a11a674faf319ff952d docs/models/operations/GetV1CompaniesCompanyIdFederalTaxDetailsResponse.md: id: 31144abce6ec last_write_checksum: sha1:54f4236686240194ef2738617a3061c78c3459cc @@ -3660,8 +4072,8 @@ trackedFiles: pristine_git_object: ba27b47e4bee1eb4fa027e14c07888aa5d19a73f docs/models/operations/GetV1CompaniesCompanyIdPaySchedulesPreviewRequest.md: id: 30f0114598e4 - last_write_checksum: sha1:54382a3f01189774377eb66c08b4781afadc0bb2 - pristine_git_object: 912c535a031f333a827ea54b5eb1031c3e51424b + last_write_checksum: sha1:2fae53b80aadfe10139f75a312e6e1b9d5197915 + pristine_git_object: cfb82250ac6817d5a27dc5711a53477471ff4873 docs/models/operations/GetV1CompaniesCompanyIdPaySchedulesPreviewResponse.md: id: 1554fe3909c9 last_write_checksum: sha1:17d4c361f1b3a3dbeda348d19ff9e0fa13023166 @@ -3674,10 +4086,14 @@ trackedFiles: id: adee5caaa2ba last_write_checksum: sha1:8574576c917d28fec7624cb13ec15a41c50a3fa6 pristine_git_object: 788494a81f7fb68c7a2963d7e754ce3c452fd10a + docs/models/operations/GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion.md: + id: e39ee821cac9 + last_write_checksum: sha1:e922dc67980eb69d5da542fe79f71ffa041f218a + pristine_git_object: d58fce9d8d87c20901e05fb8b8cf4fbbd43f1980 docs/models/operations/GetV1CompaniesCompanyIdPayrollReversalsRequest.md: id: bb087fdd3ff8 - last_write_checksum: sha1:c951e4e466bd96e36f908e0c17b4d6030e46ed80 - pristine_git_object: 29e8e3fb17248e6fb775359600e12ab349246a76 + last_write_checksum: sha1:4c7f6323d62b9e935a73033ffed98bd5fbfccc4c + pristine_git_object: f828b2823a85bfa802445e14b6ba925a55dbc6d7 docs/models/operations/GetV1CompaniesCompanyIdPayrollReversalsResponse.md: id: c186454b7f29 last_write_checksum: sha1:98bfcad8acd7eb93f31a7d4e3472c25ab9d499c7 @@ -3692,8 +4108,8 @@ trackedFiles: pristine_git_object: fa5a0ca9aeea19f4a4172467aa2a5e79b95ef0d9 docs/models/operations/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.md: id: 46107c379f6c - last_write_checksum: sha1:f2b5cb0e28998546d2a118dd55af0e5b579a8bbb - pristine_git_object: e8abe53dba08f1990fb00dea036149d9c99ed72e + last_write_checksum: sha1:afe99067f14ea21d61b0ae4c8115eee85f352a9f + pristine_git_object: ff9d1d05c6373f41054537e8a7a8426da2f306d1 docs/models/operations/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsResponse.md: id: 7ca07686a3ee last_write_checksum: sha1:a2d9949bed72d87d49eefa76bae08ff02da10467 @@ -3708,8 +4124,8 @@ trackedFiles: pristine_git_object: d0ab9d949c010e2b777bcbc0721aec054fa5080c docs/models/operations/GetV1CompaniesCompanyIdPayrollsPayrollIdRequest.md: id: e1853df6e4ed - last_write_checksum: sha1:ffaf2f0d7ede3246669e64a8d2bd6498f2d18d20 - pristine_git_object: 3f6e266a20ad9302595d7fcda183fc42bcd15aa5 + last_write_checksum: sha1:c8a67a820884296118a352fc7e97ed2b6129231f + pristine_git_object: 2ddcfd247b21b407a8bef7b656a6a3450af4c0d8 docs/models/operations/GetV1CompaniesCompanyIdPayrollsPayrollIdResponse.md: id: 39087f41d949 last_write_checksum: sha1:2f1dee6fb18ecd19695f3376f476cbc850663754 @@ -3720,8 +4136,8 @@ trackedFiles: pristine_git_object: 1c856db4938c6a269edc2259b4c1ce78f6e0ebf0 docs/models/operations/GetV1CompaniesCompanyIdPayrollsRequest.md: id: 82e5a165e4cd - last_write_checksum: sha1:80b59fedce34d71b78b8af5b917aff60cb9cc353 - pristine_git_object: 7fb68723fcf98673337243307dd498adeb52cc56 + last_write_checksum: sha1:eef12db31edf1d00e265e2b5fa5ef1ecb5372bce + pristine_git_object: d7c533615a47ab87b3f62a7024d6a79da8cb6301 docs/models/operations/GetV1CompaniesCompanyIdPayrollsResponse.md: id: 9919e264e26d last_write_checksum: sha1:7a067abd64be01479b4ac917faa441cfaa421540 @@ -3772,8 +4188,8 @@ trackedFiles: pristine_git_object: 7f65391ea2ce409357a1f0426a8efb420f9337de docs/models/operations/GetV1CompaniesCompanyUuidSignatoriesRequest.md: id: 99a788e4745d - last_write_checksum: sha1:e59e641f53a05f212253561f0ef56c589394e38a - pristine_git_object: d663e119ca91bd3faec3dd0c784f277a2b30dc8b + last_write_checksum: sha1:5cdafa66d6cb676db978990fc45c6aa629733e95 + pristine_git_object: 0582dd5b433698fa97728c919bb9aec129c1b156 docs/models/operations/GetV1CompaniesCompanyUuidSignatoriesResponse.md: id: 6f324970bfae last_write_checksum: sha1:7c292dffbf17ed17021b5f3e3a3891de28c779e1 @@ -3784,8 +4200,8 @@ trackedFiles: pristine_git_object: 0d067f9a874add8e93fc59598e10e4e00d62381e docs/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsRequest.md: id: 80204602e739 - last_write_checksum: sha1:5dd49ad65fc0704eb7329d415fbe7a03963179bc - pristine_git_object: e045197b316bc52a491429d754995762f55205af + last_write_checksum: sha1:a63fbdaf00cc53ab4d5af8501a35a6d023629415 + pristine_git_object: dc8ac0a768a300b4b2e1629a77c6bf5526fefd07 docs/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsResponse.md: id: 531d7e728e74 last_write_checksum: sha1:263b0337b6f5bd9ef748de426d7076426c098ba0 @@ -3796,8 +4212,8 @@ trackedFiles: pristine_git_object: 33778ec504a9b66127855d51f6e917b81054bd15 docs/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsStateRequest.md: id: 018b9158ccf8 - last_write_checksum: sha1:24cbc873e2b71de0b8a2f1ffc50cc4f5d59e00db - pristine_git_object: 8ab8c17eb37d00e652126957fa8b2a4c382e7249 + last_write_checksum: sha1:592601823e24cb6c3e830345e9c0c77127fd8df5 + pristine_git_object: 30fdff1b12cfc8fe8c0168ac440199ea8ca49121 docs/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsStateResponse.md: id: 8c35f2bd3de2 last_write_checksum: sha1:a9a0e63c8f3d027b54c4b15f4b969be0949f5996 @@ -3856,8 +4272,8 @@ trackedFiles: pristine_git_object: 9a2b4720439666117663762665c928d162bec579 docs/models/operations/GetV1CompaniesRequest.md: id: 6415242b650e - last_write_checksum: sha1:e2c9c6a104c64b8b27d4c0ec89792346a0dca32a - pristine_git_object: 6e2ad32276a44899c2518bb2c19dad6dd596ce38 + last_write_checksum: sha1:973e6a2ec30218ce9c2a3aec5e77c517d29833b1 + pristine_git_object: 67d84a95664de05d76f130bf1caa6b84b5bc36b1 docs/models/operations/GetV1CompaniesResponse.md: id: 3af5aadb9476 last_write_checksum: sha1:363fef63d6b2b38ccb4ca9a2912140caccafa316 @@ -3878,14 +4294,10 @@ trackedFiles: id: 11305afcfcab last_write_checksum: sha1:bc92810d9c756052bbc89f6e1aea24dc07d793d4 pristine_git_object: d03dfe80e2d17b4211b6fd7c07c2f1e162ad550d - docs/models/operations/GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsQueryParamInclude.md: - id: 555a99b96903 - last_write_checksum: sha1:e39b17c0d5078e7ffe6a49d1e1de72a10e13743f - pristine_git_object: a7e739a33739c9d9722c0ccf0b1b7e863106d0fc docs/models/operations/GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsRequest.md: id: 7128800f1a6f - last_write_checksum: sha1:c49ba574fa2cf1b0b41bcc439c809f4c1509284a - pristine_git_object: 0a21e174aaa3ba84fddae31c62ed704436185114 + last_write_checksum: sha1:9bab5eceb11c9bc75a972c8a99c149b72fbb43eb + pristine_git_object: d5aaf5ac46bbcf155dacd2040b3a843b60d5d5eb docs/models/operations/GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsResponse.md: id: ae33bd0aac10 last_write_checksum: sha1:ee3e4d7a776148fe070d2ff695888a4fcec0bdd4 @@ -3894,14 +4306,10 @@ trackedFiles: id: 03fd0836c6e0 last_write_checksum: sha1:a8befe88adbe98107dfbbeee68781cba599cc7e6 pristine_git_object: ac4c16c5b8952a84ce420dd424bc124b23fbca48 - docs/models/operations/GetV1CompanyBenefitsCompanyBenefitIdQueryParamInclude.md: - id: a3cdb2d2265b - last_write_checksum: sha1:a7345d77f4297ebe016e8f3926feabaf66bf6665 - pristine_git_object: e543336aa2cde546662ab558d6506d53fec867ea docs/models/operations/GetV1CompanyBenefitsCompanyBenefitIdRequest.md: id: 7a402d542126 - last_write_checksum: sha1:6dbe1b00edd62b61d78866e967eac7cd930a8592 - pristine_git_object: ff4093df883074e9033e8baf3b096f81fc19a329 + last_write_checksum: sha1:2dad26693367d23b42a32f407b6f1d81d99d12c6 + pristine_git_object: 1d0a4b9b5e2876e68884cc3e4606678b8013c6db docs/models/operations/GetV1CompanyBenefitsCompanyBenefitIdResponse.md: id: 122e37b5ce63 last_write_checksum: sha1:d0c05783ac11b51e28186c10bfc75cb3387d9f15 @@ -3924,8 +4332,8 @@ trackedFiles: pristine_git_object: 922e24b9278f6fa30de0932311e86869fa77aede docs/models/operations/GetV1CompanyFinishOnboardingRequest.md: id: ddebb45f22a9 - last_write_checksum: sha1:284ffbed5beffc0674fc8d68b6040f91fe2f5073 - pristine_git_object: 387d5e5827ed4a1af453947a65a9b7814581a55e + last_write_checksum: sha1:7a66e1e35b879e8d1ff5515e327ca40f062b9c50 + pristine_git_object: cd74288a130b2a695458ecce26098acb852a15ea docs/models/operations/GetV1CompanyFinishOnboardingResponse.md: id: 3f52377acc70 last_write_checksum: sha1:ee2b4481e01439c5dba861c830ea1cdaf5357a91 @@ -3972,8 +4380,8 @@ trackedFiles: pristine_git_object: 16c32f2bf918aca1d68e4a00e92b03b74a395dd1 docs/models/operations/GetV1CompanyIndustryRequest.md: id: 7f19e772f30d - last_write_checksum: sha1:39169952b430f42c3f18dca11e9fdb2596a70c24 - pristine_git_object: b6a7b04f592d62ab2fca8dcb65287b00f3951a7c + last_write_checksum: sha1:644b8af9f463deafeed7a9a9533f4d38f8a36cea + pristine_git_object: 789bd7642472d7f60a46430061a8569b439bcf72 docs/models/operations/GetV1CompanyIndustryResponse.md: id: 724db0239d57 last_write_checksum: sha1:45d96531329d75de9ff32d1b0efc9c6342a35139 @@ -3984,8 +4392,8 @@ trackedFiles: pristine_git_object: 45f73814ef0843de38116b7bb8a1a12af4a3c936 docs/models/operations/GetV1CompanyOnboardingStatusRequest.md: id: 85feafbfed12 - last_write_checksum: sha1:71b5190a2e7302f895a3dabe2262328a46aa9944 - pristine_git_object: 3292469c35aaf76b948d5edaf781111bc352ef90 + last_write_checksum: sha1:f4f56dd665671cdcf55cd1d31c188ddb137df94d + pristine_git_object: 4b1732f8870b96bcef8fa18f46dde911226bf97c docs/models/operations/GetV1CompanyOnboardingStatusResponse.md: id: d6eb5cb8dc0d last_write_checksum: sha1:ba0004687693db506d5bd47fc1fe99db3f6b8bfa @@ -4092,8 +4500,8 @@ trackedFiles: pristine_git_object: 7f4cd670bcf49ad2e4dbabbc4b41fa23a848319d docs/models/operations/GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.md: id: 65524fd5dfcf - last_write_checksum: sha1:23901a013f7e4fa9170b87395889acfbb41bedfd - pristine_git_object: 472134e8aefca0dc9317fee0c24819905a071df6 + last_write_checksum: sha1:dfccbdf6b5fdb4aab984f8fcfde17bc7d4081b83 + pristine_git_object: 468079c7292f65b5bbfee2af3eaced98eec96447 docs/models/operations/GetV1ContractorPaymentGroupsContractorPaymentGroupIdResponse.md: id: 28ceb1cf3821 last_write_checksum: sha1:e9fff99ac6c3c3068311a859d5a58bacd30b8cfc @@ -4104,8 +4512,8 @@ trackedFiles: pristine_git_object: 42bde47442c57fceda57198ed70893f0fe2cb240 docs/models/operations/GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.md: id: cfc94efa23b1 - last_write_checksum: sha1:34053502e7ec7a07fd8c7a12c31809e7700493f1 - pristine_git_object: 5faa3bac3f4a6507f1d7fa4c7bc6b5dcbb920e0e + last_write_checksum: sha1:9e9b6c99a993df3fb331b5df91a9dcc92b3283f0 + pristine_git_object: 8dc42357aabe07a5003725d44f8a9601a2115d72 docs/models/operations/GetV1ContractorPaymentGroupsIdPartnerDisbursementsResponse.md: id: c5d15b11462a last_write_checksum: sha1:870c5afa506a2f70d5905df86c9fc8bec831ed57 @@ -4174,6 +4582,18 @@ trackedFiles: id: a6a7a0e5f9fe last_write_checksum: sha1:9b5b4b42d3fc3c06d149d34bf2e74c409e557cf0 pristine_git_object: aaeaace937ff118d3d8a0b1f4d1f56982f1791fa + docs/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.md: + id: 5ee617705af5 + last_write_checksum: sha1:58bc9b1fe7c858105505d4c959e0109c17618ea3 + pristine_git_object: 68dc89089b0b977fa32f2f25e3351f2462231f2d + docs/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsRequest.md: + id: ede3f62d86ee + last_write_checksum: sha1:73247888317c4deadb9b9b8789426f8021226d47 + pristine_git_object: 93ce3684cde213f8ed5f2141819460256365e393 + docs/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsResponse.md: + id: b194ff25688f + last_write_checksum: sha1:2829d8e5aa3c941f1c873418e88d5a009805ef2f + pristine_git_object: 130dc68ec59248d7fd5df1d6fcd6935477ea9d3b docs/models/operations/GetV1ContractorsContractorUuidOnboardingStatusHeaderXGustoAPIVersion.md: id: 5629f61a0768 last_write_checksum: sha1:315aa1873effbd57a5ee65c4d563d2d572b3722d @@ -4198,6 +4618,18 @@ trackedFiles: id: 90c201e43f98 last_write_checksum: sha1:d7e5fdc3a06bdbd2e5059e5e55c7222c7fc1074e pristine_git_object: f2047935f35d394ddf88fd0fcc6f2bfbc21755f1 + docs/models/operations/GetV1ContractorsContractorUuidPaymentsHeaderXGustoAPIVersion.md: + id: fa15b1194a0d + last_write_checksum: sha1:fc78a2c55a87d79c2c2bf662682ff772b070a455 + pristine_git_object: 53196acce55862d4eb17b2383d97dc65af27e228 + docs/models/operations/GetV1ContractorsContractorUuidPaymentsRequest.md: + id: 9d59e6796fd3 + last_write_checksum: sha1:0a5bfa638150670cd40a1d7b2686d9b5b78e4eb5 + pristine_git_object: 8aa624653b1b1e99baaec9a3517b2f3ef9f8c2e2 + docs/models/operations/GetV1ContractorsContractorUuidPaymentsResponse.md: + id: 8c70ef3ae3de + last_write_checksum: sha1:b0525a5c6d37569b35d47e9ae5aa3032c79dae2b + pristine_git_object: 2a76072a62ca839737f2f3c064187c9a9f12c750 docs/models/operations/GetV1ContractorsContractorUuidQueryParamInclude.md: id: 0b8a5ba3b801 last_write_checksum: sha1:c55213e5301281da519fdc85da74651e9d4753e1 @@ -4276,8 +4708,8 @@ trackedFiles: pristine_git_object: 89fefd11072ddb533b350079a4da6b8c4db055d7 docs/models/operations/GetV1EmployeesEmployeeIdCustomFieldsRequest.md: id: c81651503583 - last_write_checksum: sha1:334151890b5b9d93ed6c4add239d8c8b3feb47d0 - pristine_git_object: 293792d1631413aa4d9ef4361efd509d2041c47a + last_write_checksum: sha1:8c4dd34a687738b2fe96d4bcc71d7cfdbaf22f68 + pristine_git_object: f5f22f6f1f2b0ecbf20e8da1ecbf89be94a1b0d3 docs/models/operations/GetV1EmployeesEmployeeIdCustomFieldsResponse.md: id: 2b4578aa79d6 last_write_checksum: sha1:f86baf17b677e8eaf3787bb5b7633df33fd540fb @@ -4340,8 +4772,8 @@ trackedFiles: pristine_git_object: 06526aa95043e0257ccba7c5ac03bd0e53df349d docs/models/operations/GetV1EmployeesEmployeeIdHomeAddressesRequest.md: id: 0157cd814280 - last_write_checksum: sha1:c1f6816c975e492a01891a561c42269ca142e274 - pristine_git_object: 6aebafe066c6cbd3dad6ef7d9ebff651e236838d + last_write_checksum: sha1:4521cbe7442d95fbd71e14a361eaea9253b8f799 + pristine_git_object: 76ab936a3f5e9869c0c11ad65e3140546cc63f96 docs/models/operations/GetV1EmployeesEmployeeIdHomeAddressesResponse.md: id: c0feb32cfe5a last_write_checksum: sha1:de8392f952ba13b5972fef7a7bd89a72f883fed4 @@ -4392,12 +4824,24 @@ trackedFiles: pristine_git_object: 4af3ea860b47449c15499a86dc95671e2b85c018 docs/models/operations/GetV1EmployeesEmployeeIdJobsRequest.md: id: 4ccb7ce0653f - last_write_checksum: sha1:68977d423f670afcf0193b0c2b50165aedaffa08 - pristine_git_object: cf7a66074f13d11791fc391ed48c008eff5ae4b4 + last_write_checksum: sha1:bc51fcfe17dc0b26650793477fd9112ff531980e + pristine_git_object: 3fc632e2980fa3f9d56068833c294659de53394d docs/models/operations/GetV1EmployeesEmployeeIdJobsResponse.md: id: 986bfdb6fd1c last_write_checksum: sha1:be913e275fbbe58f3228884e3aa6f7b5dfa41eca pristine_git_object: 62aeb35c642b9c828235cc6ea4afe4206dcc866e + docs/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.md: + id: be566dcb4469 + last_write_checksum: sha1:3ad5456f0bce1de7c990b4bf5c07fc1009d65f1d + pristine_git_object: c7bcd75d80ca1fe78daff7fb74fb43a75fa6cf5b + docs/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest.md: + id: c5e1730042e0 + last_write_checksum: sha1:2a5768505eac78981e810ec3bfd1e9f73693fc34 + pristine_git_object: 1b278bbe8f03ee69fc38b5ac207e8ca1cacb41be + docs/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse.md: + id: 9c962b8ea95f + last_write_checksum: sha1:fd63b97af949caf5e577d8059f5d4af5bf8a4f3c + pristine_git_object: f3813fbd51762818f9bb3738db7129b94612948c docs/models/operations/GetV1EmployeesEmployeeIdOnboardingStatusHeaderXGustoAPIVersion.md: id: 7a275ff6ae99 last_write_checksum: sha1:1c857932c242a60a87a668368d37788e133a5987 @@ -4476,8 +4920,8 @@ trackedFiles: pristine_git_object: 62e5bd428f9b4cee270e13aba2de752e7c475f53 docs/models/operations/GetV1EmployeesEmployeeIdWorkAddressesRequest.md: id: ea939daf6cdd - last_write_checksum: sha1:25d8afcf27cd3bb059dd0477e5561fd60c8165f0 - pristine_git_object: d19a627b609c95eda74703ad49ec1be4ea6524f8 + last_write_checksum: sha1:4c3b83dd2b2db1798b77a76b69d99d780e4f8e67 + pristine_git_object: 50040c09ed9935d8acf594aa2948cb6bc70f36c0 docs/models/operations/GetV1EmployeesEmployeeIdWorkAddressesResponse.md: id: fa514d9e0ddc last_write_checksum: sha1:436894ebb86d8261245556d67d3add1127793c07 @@ -4500,8 +4944,8 @@ trackedFiles: pristine_git_object: 23754c993fb8e7018bba273d0d09008e467dda4a docs/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.md: id: c84fdaf66194 - last_write_checksum: sha1:7cf9f987eb11ebfe6b5f13b61ef59059f4301266 - pristine_git_object: d65f1161d2acd2889bc1c07be64e6f5cd7808e76 + last_write_checksum: sha1:fc84d12d0ec6c02930789210c3fc50483ed63b91 + pristine_git_object: 5126079832a55ca676713e1fd3c4c58770eb7857 docs/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearResponse.md: id: c997434b07b4 last_write_checksum: sha1:4cfc3562a7aa7bae2cf5b39f791f19938397848f @@ -4512,8 +4956,8 @@ trackedFiles: pristine_git_object: a625ee0925980a5aa5f550f4042f2515a560f8ea docs/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.md: id: 6fec461c7a29 - last_write_checksum: sha1:13ddf94127332657e90805d68df873312a1deac0 - pristine_git_object: 80afc7e835e21eb7d4d3ae3effb253dbe0b6fab5 + last_write_checksum: sha1:63032732b09bb3d14381452fbdb385dbeafdd259 + pristine_git_object: e9a06200c65cb243ce3a4bc831a21ccbae2e09d5 docs/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesResponse.md: id: 98154fb9b5c9 last_write_checksum: sha1:1284eab5465afb16a4204829c902bbbd0107ca3b @@ -4522,10 +4966,14 @@ trackedFiles: id: 854609ca3aa1 last_write_checksum: sha1:057b47a2ec5d40e092738bc88eeaa315d61aac1b pristine_git_object: 18a376f20f1c6aac698ac9a88815391e1a9375b3 + docs/models/operations/GetV1EmployeesQueryParamInclude.md: + id: dc07cd39f7e6 + last_write_checksum: sha1:fd64bb47862059f6ebd884416884e8bad72122af + pristine_git_object: 6c278da24541755177a6bbf55fa8e89b7beb1d1f docs/models/operations/GetV1EmployeesRequest.md: id: 223f04be7236 - last_write_checksum: sha1:add7b9f8902062aa7f9b0242233699cda171e1c4 - pristine_git_object: 565b2b40f44a4215631fe9e4a9f2cf22af1d1326 + last_write_checksum: sha1:aea832b218f7214287eafb2efcbcf1e8b77cff6e + pristine_git_object: 047635b759a498a0187588249d0592a914232838 docs/models/operations/GetV1EmployeesResponse.md: id: 853bdf44cd6b last_write_checksum: sha1:cea45369bf1e2a5641c3f0d24875dd9ab3ab939c @@ -4578,10 +5026,14 @@ trackedFiles: id: 1f1f6ba87132 last_write_checksum: sha1:971fb72535c33d57704da5a6622aad500c80a176 pristine_git_object: ef6a3466d9a0fadbf40e41c612b8d56faf0d24ed + docs/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion.md: + id: c4da4d9984e4 + last_write_checksum: sha1:fb094efd2f9672fe9d3ebbf0f688c63c7cd527ce + pristine_git_object: bbfe69baf83f7681651e0cda3cfeed4b81a289f9 docs/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest.md: id: 613fd414b5a7 - last_write_checksum: sha1:f513b2c8597aa2933dcdb6a4c4b478bc0754e763 - pristine_git_object: 5f54a4af001f65857a808844921cd4662ab5cd26 + last_write_checksum: sha1:1dfaebe742676623e6185b213c90cad9ebcbbc19 + pristine_git_object: eb0ec75b979911fe0f509a778191db9e1cba1d7e docs/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidResponse.md: id: 3f4898bf1463 last_write_checksum: sha1:7a275e95ac461fd7d8e743996f767ebfadf9ad53 @@ -4592,8 +5044,8 @@ trackedFiles: pristine_git_object: 9816de1f4352c0467b33a10e763568df996d115d docs/models/operations/GetV1HomeAddressesHomeAddressUuidRequest.md: id: a588fb324a01 - last_write_checksum: sha1:fb49c506a1134ba759654c764f553c30d768d780 - pristine_git_object: a64d26076329bbe232e761d823f1697078bf53e6 + last_write_checksum: sha1:82857314368f21b4d5d2a3bdc1ed772a7c9209d0 + pristine_git_object: c0c0df377c9a432d09a0a051d1f8ae343363b76b docs/models/operations/GetV1HomeAddressesHomeAddressUuidResponse.md: id: c9252a2ac245 last_write_checksum: sha1:4524ee2005826acd98cca68acc4b8d540da85098 @@ -4624,8 +5076,8 @@ trackedFiles: pristine_git_object: 0d766780104b330e60e86b3e83ca322f3d70bd18 docs/models/operations/GetV1JobsJobIdRequest.md: id: bc457dd1c163 - last_write_checksum: sha1:b462e71300da97b17a09d2d7b17b8df0c87dc3f3 - pristine_git_object: 87c2fabaaeac2b469bb28d422a16e52d63b372d5 + last_write_checksum: sha1:b0baa81190ae003251bd5b817ff84f97a74a5b4d + pristine_git_object: 586a46dd88dd1ac4944d2108c0cc803fe8f7b61b docs/models/operations/GetV1JobsJobIdResponse.md: id: 574495194c85 last_write_checksum: sha1:2f324c66561481bd15f5b8bfa0114ebfb51b7897 @@ -4648,8 +5100,8 @@ trackedFiles: pristine_git_object: ec0343b0458e82885e8e884b8dd0cefc18275263 docs/models/operations/GetV1LocationsLocationUuidMinimumWagesRequest.md: id: 718a87d3c1d5 - last_write_checksum: sha1:cc359d7503916f0e0d7e447974d5d17a2a4a5a92 - pristine_git_object: b5c4959daf60a1582280edcb3a2249c8e5fdd686 + last_write_checksum: sha1:6e7efc92b8ef515249c26c594eb790e4b4a85f1d + pristine_git_object: 395a3c3794c9416b9afb205e52d9ffd009d4bff9 docs/models/operations/GetV1LocationsLocationUuidMinimumWagesResponse.md: id: 7e7e378145d3 last_write_checksum: sha1:dc30b3d7e7f84315677bead0a0583727ecc82765 @@ -4660,8 +5112,8 @@ trackedFiles: pristine_git_object: 4e0ee0f39114bfcf96d3c476c97f9825d8a51a36 docs/models/operations/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest.md: id: c6dc994bc139 - last_write_checksum: sha1:8957db3add843e0be385e5efab7cbb413bfeb3ac - pristine_git_object: 465361c16d863800a1d07ff77827f0b205149839 + last_write_checksum: sha1:1fb3b42e5e4b43e348d6e6a5a4527114cf76b897 + pristine_git_object: 7745ffd4af6ca1889d17e68c73a50c492337eba3 docs/models/operations/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessResponse.md: id: 47955a2e8280 last_write_checksum: sha1:6735abdbfb4fba20334f87ec10781cd1955864a6 @@ -4672,20 +5124,36 @@ trackedFiles: pristine_git_object: 418a669c0f51b0b8204f6c483293a4e0e173868d docs/models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidRequest.md: id: 6e06e82f2048 - last_write_checksum: sha1:4a96318945cb8c3733b89e7f58e4dd11a8fb2518 - pristine_git_object: 6dbb99dc3179371dcc0aec62551c6fa761cc91b5 + last_write_checksum: sha1:2b22eafc5c78a329c3caf86bf3c03571f963ecc0 + pristine_git_object: 2a52e8262838855e8a57eaf4b7d7edea0c6164bf docs/models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidResponse.md: id: 62ff13fc9167 last_write_checksum: sha1:114113a4ff89bba647b47a1f556470e8641bfe83 pristine_git_object: 832b1b98bcec2df013d782772d5bde2cd0742011 + docs/models/operations/GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion.md: + id: ad4790a65201 + last_write_checksum: sha1:017d21724845efa77cb0ab8a4b8dc9c6dac86f12 + pristine_git_object: c2ff7ac988fcd75e8a4648398dac3f381722b920 + docs/models/operations/GetV1PayrollBatchesPayrollBatchUuidRequest.md: + id: 8463db0a5cac + last_write_checksum: sha1:07a36708773047af5f402254d5fad6a98716ec8b + pristine_git_object: 9e4304a5f7ae954652cffc9fcc6f38a5a298da72 + docs/models/operations/GetV1PayrollBatchesPayrollBatchUuidResponse.md: + id: 21416aec9c4b + last_write_checksum: sha1:235dd9e01ad1c2d5c7e4dd41251fb5198fdbd330 + pristine_git_object: ada4d02fe9937197b4dcdf3e388475690da1accf + docs/models/operations/GetV1PayrollBatchesPayrollBatchUuidSecurity.md: + id: 337528e29daa + last_write_checksum: sha1:074e7f5ddc006affe73cf9a622d67657eaf70c62 + pristine_git_object: 06c6b17ca1ff615df6f4c6372f33d211a884ac46 docs/models/operations/GetV1PayrollDigestsPayrollDigestUuidHeaderXGustoAPIVersion.md: id: bef6d14bb6a0 last_write_checksum: sha1:650be95a9e84ce0dcabe5208cd4fc31f8f1af704 pristine_git_object: d51681a3041b2342929cd2eb62e23a00141e520b docs/models/operations/GetV1PayrollDigestsPayrollDigestUuidRequest.md: id: c873a93995ff - last_write_checksum: sha1:7c7ca1a1d63ebc095e8404c00a507efcb4248aba - pristine_git_object: 94932ddab94097b2850419575428a638327a5bef + last_write_checksum: sha1:63cb1fd927dcde23fd41e09c9a9613210d646db6 + pristine_git_object: e1a2f32f400524d741e57c30c096edd8bc7c7365 docs/models/operations/GetV1PayrollDigestsPayrollDigestUuidResponse.md: id: 145a9fa7b8ca last_write_checksum: sha1:27a703d5f65f8a8df4bb7c096e3556989c786acd @@ -4712,8 +5180,8 @@ trackedFiles: pristine_git_object: 19bab5e5deefba9bf9afd20ca7cacf9e45c7f754 docs/models/operations/GetV1PeopleBatchesPeopleBatchUuidRequest.md: id: 60f403a9fb05 - last_write_checksum: sha1:c70b2ff33b369c9f81bd5c8dbcecae9dffca9cc7 - pristine_git_object: 8c0c6537d840cdf480a43c79553d54ba4c75d56c + last_write_checksum: sha1:dce6419cb7cb50a3adcc905f88e30d629a5f7800 + pristine_git_object: 300509ccb4f191f84c4941f01efd5f57da41234e docs/models/operations/GetV1PeopleBatchesPeopleBatchUuidResponse.md: id: f2cd611363cb last_write_checksum: sha1:2158b4d17cb331da9c2009e5cfcc032daada4175 @@ -4806,10 +5274,14 @@ trackedFiles: id: 054b103294a3 last_write_checksum: sha1:0c2cc7ad8b4d71255801bfd7ba4cc14ddab85bfe pristine_git_object: 7fadf721d9661749c79ee462bff19f3129b39ee4 + docs/models/operations/GetV1TokenInfoHeaderXGustoAPIVersion.md: + id: 7029efdce779 + last_write_checksum: sha1:b32e5f4adf9c0f3dc7318a9cc35953dfc4ed2905 + pristine_git_object: 684a82638132d5e90d5d0682d65dc099b0c61cc9 docs/models/operations/GetV1TokenInfoRequest.md: id: c32d316bb9fa - last_write_checksum: sha1:3822cebca8058a6619703bd043698215ed95ff5b - pristine_git_object: 6bd0fb01076177cb85b076482c9fdc6fff1b920f + last_write_checksum: sha1:64dffb2a100616fb263cf96a8ca5740142594327 + pristine_git_object: 718672757728878f9aca5d5859e19bb55347673a docs/models/operations/GetV1TokenInfoResponse.md: id: 9237706ba00d last_write_checksum: sha1:af559ce2221cc2acbee3fbf0c2559ed46e9fcd63 @@ -4820,8 +5292,8 @@ trackedFiles: pristine_git_object: 9575e86c1bf34fc23d22f82b765d6b439f1f8a4f docs/models/operations/GetV1WebhookSubscriptionUuidRequest.md: id: b69fa09d793a - last_write_checksum: sha1:7ccf04df63c4a2310d1ecdfc0095bfb9a344239d - pristine_git_object: f375788c185f5bb9673ae1e718712db2c20e17ec + last_write_checksum: sha1:afeaba0ee632abc4d3d5a977a316fe52ffdb6f86 + pristine_git_object: bb801890452822ad206cdfcd08a0883127dea785 docs/models/operations/GetV1WebhookSubscriptionUuidResponse.md: id: aa4b74cfea80 last_write_checksum: sha1:678723b2584fb57e3f4b3c435e02b4c28bbd05ba @@ -4836,8 +5308,8 @@ trackedFiles: pristine_git_object: 6dc835091a03ae54cbcfd7f71934b16d9573ef66 docs/models/operations/GetV1WebhookSubscriptionVerificationTokenUuidRequest.md: id: dd81b5658304 - last_write_checksum: sha1:3fdae414e3919f3e2187c60a643b70499599799f - pristine_git_object: 8d407e95db64c02e45fa5742fedb3a747f52af62 + last_write_checksum: sha1:2cd56342056b4331c03912ff1f3106202a4e0341 + pristine_git_object: fd4a311e8b4a5e6a5f0a3bfe55e793f828a0e3f0 docs/models/operations/GetV1WebhookSubscriptionVerificationTokenUuidResponse.md: id: cfd1c8a3d41a last_write_checksum: sha1:0f30b2d6fa70d8807f46cdd673498af2440c5b82 @@ -4884,8 +5356,8 @@ trackedFiles: pristine_git_object: 481dbc1cf1ec673e124fe86db381e6751ebed476 docs/models/operations/GetV1WorkAddressesWorkAddressUuidRequest.md: id: 095d69f139bc - last_write_checksum: sha1:24dfa29a86bdefb8249d7c491c99036a0c32ae25 - pristine_git_object: 55cbdc9b086451cbaba3277922b62d553a9f0e5a + last_write_checksum: sha1:3d9ec610e9d15e15807b60d15127b9ca5451e323 + pristine_git_object: 0be33d2ce4359464ba28b7ff3aeec9b1bf513e73 docs/models/operations/GetV1WorkAddressesWorkAddressUuidResponse.md: id: 85a9306a1b87 last_write_checksum: sha1:0789f470fb0e2fd21c61f3a5e90a56fe8a023777 @@ -4908,8 +5380,8 @@ trackedFiles: pristine_git_object: 90c2a49f89b71f1cf254f75d356d0450c93d0fea docs/models/operations/GetWireInRequestsWireInRequestUuidRequest.md: id: b89154a3fa0e - last_write_checksum: sha1:42815a5b6bad0b8612ee96b7f835325dea3fd07a - pristine_git_object: 88549dd5cf1f71115fee12e26bc4f08f4881ff90 + last_write_checksum: sha1:764eb6b5aa998a21e6013cb1f864723ba1d0f7e4 + pristine_git_object: 7b5ec66a0dfb7d988433ae74037c032c0f624cce docs/models/operations/GetWireInRequestsWireInRequestUuidResponse.md: id: 190ff496c05d last_write_checksum: sha1:4b55d1ebca49a45988dbd52b32cdd52ce398615e @@ -4928,8 +5400,8 @@ trackedFiles: pristine_git_object: 01694e0331e3a2c943cff95664796018aa41393d docs/models/operations/Include.md: id: 323eb1b543b1 - last_write_checksum: sha1:62378af20054fd7d520aa03ec6b51beb086a56ea - pristine_git_object: af13432942de63d9027baeaa582e9ba71145f167 + last_write_checksum: sha1:0679933f918a0de0e88eeccc845f7a29d7d34409 + pristine_git_object: a56373421c0c9da35bee4e8bc1b1232c36a5c5ec docs/models/operations/IndependenceDay.md: id: 30e5759a1ae4 last_write_checksum: sha1:75b27e4c8d9474e37a0d803c8d1ced751d839ad4 @@ -4948,8 +5420,8 @@ trackedFiles: pristine_git_object: e019802e31233ff14a36924881392289f4f45dd6 docs/models/operations/LeavingFor.md: id: c618c6365ad0 - last_write_checksum: sha1:b10251699c6433a585c029ecd3ce6806b7be0f46 - pristine_git_object: d836a6efbea317c6a1c24f69203069d5abf34daa + last_write_checksum: sha1:20f8d6972fa42146f03d31db805d6b9eabb27430 + pristine_git_object: b0b3e366512e4a6ba7ac9da882c61fe4698df4ae docs/models/operations/MemorialDay.md: id: d09755b914b3 last_write_checksum: sha1:df85d934c3453b8b54c6c38fd13b634296dd9c0d @@ -4962,10 +5434,14 @@ trackedFiles: id: a607b01e33a9 last_write_checksum: sha1:faba128507fac5f145db5692b1eb558e59991125 pristine_git_object: e6e277bdefdb364f618d68743470034b7ed063e9 + docs/models/operations/OauthAccessTokenHeaderXGustoAPIVersion.md: + id: 55107db3b1e6 + last_write_checksum: sha1:a743b772e2aa9ffd653e41767f3a59363cf0609a + pristine_git_object: 730199c65b58a8a26667d262baabda08aa0a7f97 docs/models/operations/OauthAccessTokenRequest.md: id: b5c3c4554e95 - last_write_checksum: sha1:48ec73723630e512d490a53da014d44e84920dac - pristine_git_object: 8a4e9f658bed1b45ea1ffc4d0a210e5306c91621 + last_write_checksum: sha1:06053986a030814050d5e340ae404adc1e32f135 + pristine_git_object: 87d3e0a1854fdd64310caee8bad8baca01de79ef docs/models/operations/OauthAccessTokenRequestBody.md: id: b31223a28af3 last_write_checksum: sha1:78249604e7ea7d07502bae337288b9170032bf05 @@ -5008,8 +5484,8 @@ trackedFiles: pristine_git_object: 75724f7b00f68892e533e6faf29eafe85af4c1cc docs/models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.md: id: eb0b6aae5434 - last_write_checksum: sha1:1066181ef7235abe3f20a298baf2cd690d354c1a - pristine_git_object: 76cdb0c80725b39f9628e73319fbdbd8d25533b7 + last_write_checksum: sha1:f4c202431a1b3a1e7a6355415825ce18b9ea559d + pristine_git_object: 2ce283bded33a2b1ef030cd7f20575396a050e3f docs/models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBody.md: id: ccae975a5ddb last_write_checksum: sha1:450220997d267e283f4b3ca805892bea70b3aa9f @@ -5024,12 +5500,12 @@ trackedFiles: pristine_git_object: 7f9f7bc68af539ccc5935f5ce7d23ff43080bbf3 docs/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsPaymentMethod.md: id: 041d5a811531 - last_write_checksum: sha1:74087dcbdc389ac2b918a68d62262bc8b612e56b - pristine_git_object: d74e32a3bb0af5099562daacfa5f53e682f26eb6 + last_write_checksum: sha1:44f86a7b2112208b1f0834ee010b9a59c99ba682 + pristine_git_object: ab9eb965162dcc30c3a2e84d454730ea3c6d27fc docs/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.md: id: 0a87e49ab660 - last_write_checksum: sha1:b5d2efe002ccc9749fafb3a9090423782c8e7921 - pristine_git_object: 46f310e3bb1cd6ad69b4eb211e466f0890a38c6b + last_write_checksum: sha1:25e8bdda83cbe0aaa17f092b1cda7fcc63d62152 + pristine_git_object: bb75e1de4ffe2523343a66412bccf2adb711e10a docs/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBody.md: id: b2d7123a94c1 last_write_checksum: sha1:a38844ba10e0d5eef70805e1c3a2057258d4f098 @@ -5044,8 +5520,8 @@ trackedFiles: pristine_git_object: d4ebeffb9cce4965a38d6ef618702946b007e803 docs/models/operations/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.md: id: cfa9e00db0ed - last_write_checksum: sha1:ab28e41d2765e669c208bd58a71b83a19ab62832 - pristine_git_object: f93a2192cc40e12f0ddc359fd1e364a31143fb24 + last_write_checksum: sha1:44aa6dd890f78f5f932dd73a8cccd3443bc9e416 + pristine_git_object: 62aba45bc2bb5a3f8b0775aa9dceac756c9847ee docs/models/operations/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearResponse.md: id: 91294fa2115b last_write_checksum: sha1:0029726021b5c71128ac6d9a8c34c1e9223cf707 @@ -5128,8 +5604,8 @@ trackedFiles: pristine_git_object: fa8b32ebfc56e15dd140b87f6929761859944927 docs/models/operations/PostDepartmentsRequest.md: id: 860182a3b064 - last_write_checksum: sha1:7c7516442c403bc7d52d2be4314384dc56f543ee - pristine_git_object: a0ac021705d4cce7beadcd7e95c6e20459a83568 + last_write_checksum: sha1:3044d948d43ceaf62e4bd7b6d1284bdda47ea1c6 + pristine_git_object: 52954e667d68c6040304f4f9889b60d59ec02dcd docs/models/operations/PostDepartmentsResponse.md: id: aaf1e1c08996 last_write_checksum: sha1:0963b94872aa9939fc84656a1c02c838b73edc1d @@ -5152,8 +5628,8 @@ trackedFiles: pristine_git_object: 0c925c591b8797eef0f6d130748ea57b52fa09a7 docs/models/operations/PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest.md: id: 783fe6e92bf7 - last_write_checksum: sha1:03624968a24030b63073a70fb36a5b94967f10ae - pristine_git_object: 4f2143bdeaeee704e101351b66cfd4266da44a1d + last_write_checksum: sha1:32209fc8c520f234b73246ef44dc005e023e2c33 + pristine_git_object: aa464e21f853f3c06489c84c0cce6bf16b2b8652 docs/models/operations/PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceResponse.md: id: 66a21230b63d last_write_checksum: sha1:94ad92e245e29863fcd980bb26ac6217cf2fedce @@ -5164,8 +5640,8 @@ trackedFiles: pristine_git_object: 8fd0e3b3a33310706e25764b55a0534f5244c887 docs/models/operations/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest.md: id: 0e3bd2025cd6 - last_write_checksum: sha1:fa2f307872fcbb4c4d43223b177ff47f3c29cf91 - pristine_git_object: af85fbf8cacb3f6fe54a0abba4f664717b03cffd + last_write_checksum: sha1:bbe185e8ab2011ad6ca6ce409d95dd44a6ba864b + pristine_git_object: 86c040233e44016c9f5dac4a72ab975ce277f61c docs/models/operations/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceResponse.md: id: bdb1b3bf4585 last_write_checksum: sha1:49233dadb4ca9922570530f7210c01a4b54e197b @@ -5194,6 +5670,22 @@ trackedFiles: id: def2ecde26dd last_write_checksum: sha1:1080d498506c065a1a143e76a3d66bfef678b408 pristine_git_object: 3f958930597e58cc3603ae12585760684189e8e5 + docs/models/operations/PostV1BulkReportsHeaderXGustoAPIVersion.md: + id: 240913639bfb + last_write_checksum: sha1:8eb0479718a7e15637a45317703f7ba36bb04cbd + pristine_git_object: 968bb69a33fcdb0a4ba6722ae83080eb2aafff65 + docs/models/operations/PostV1BulkReportsRequest.md: + id: 5944f0ba4d38 + last_write_checksum: sha1:6818cfa9703770c8b31eee81a74e8f8e8347b8db + pristine_git_object: 9e340b0982fccc10edbd564bc6a72d89aef02dad + docs/models/operations/PostV1BulkReportsResponse.md: + id: df09ed78df51 + last_write_checksum: sha1:925b7e0661e79caaaf4777b9a82ce288e6682273 + pristine_git_object: ff0e1b271a2f1c951bef8f6e3d09169453a8cedf + docs/models/operations/PostV1BulkReportsSecurity.md: + id: 54892097a73a + last_write_checksum: sha1:7ecf355359e1a75fa22beaba37a03d99c5a9f2c5 + pristine_git_object: ae57a7bec8590a0f0bb35d5e4a8bd1526f1245e5 docs/models/operations/PostV1CompaniesAttachmentHeaderXGustoAPIVersion.md: id: 59da96fbaad4 last_write_checksum: sha1:e18ba8c89664b70bdd3b524072847e6cf1a22109 @@ -5242,30 +5734,30 @@ trackedFiles: id: ece1c151ffda last_write_checksum: sha1:69ffbc1542799e88e0dc742168b59e4c3859e238 pristine_git_object: 4709a8c2dfb4b2c6b051f3381a3a69625f186430 + docs/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsContractorPayments.md: + id: b2a0fa95ebc9 + last_write_checksum: sha1:2a5ec83a0ade2729869fc0de30c60bd4545acdc0 + pristine_git_object: cd7ba289dd802918f56dfedd02b3d7f03a45908f docs/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsHeaderXGustoAPIVersion.md: id: 1593717bf416 last_write_checksum: sha1:1deac71a5c7561baa136a417c92d8263128e4e8f pristine_git_object: 6c13778b4bc8e1bb06a0764c9e706b1f831fa04a - docs/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments.md: - id: 6b61e470f4e7 - last_write_checksum: sha1:dc2ca501981550eec3dd056e34130d432d688e5e - pristine_git_object: 118c7022049d8871c7bcd94acc54857f7b9a1165 + docs/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPaymentMethod.md: + id: b7606f14e9b9 + last_write_checksum: sha1:60ab38f6313b2613361c0f2673fa26a2c130172b + pristine_git_object: 4a3071f5028121bf1430a115ac67c45e8149deed docs/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewHeaderXGustoAPIVersion.md: id: a368eac1eaec last_write_checksum: sha1:40b904d6946a51d753d57ad1cdb66d9f1094ba20 pristine_git_object: 23483363b6edc1b6494724e1ea7fb0e5effcca96 - docs/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewPaymentMethod.md: - id: a37aef74f713 - last_write_checksum: sha1:2ae1f6ad414f03608b2aae7a3682aa5e353b08d3 - pristine_git_object: 09730d8f73deab6c997d9370605ff8a11e8362f1 docs/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequest.md: id: 1883487b0640 last_write_checksum: sha1:74ccb1394dce1f89b7369933713cebe8a18e0f15 pristine_git_object: fb9ed03939a4e41d77c95f3ecc35709bdac8e709 docs/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBody.md: id: 4d4e32190f2d - last_write_checksum: sha1:4a171c34fd92314e53c565ed30cf55312d1fafd5 - pristine_git_object: 9188cfdae8d23200018d694da9fdc5207ade67ce + last_write_checksum: sha1:e2c3965656d1cf51f41639070b2b376098fd1b13 + pristine_git_object: f9e2b8f502d19f4d19be96b202ca9b9eca8f7f9f docs/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewResponse.md: id: 276b3428b1df last_write_checksum: sha1:fbac6b94e543b7ca949ee31f93074b4a50e4077f @@ -5276,8 +5768,8 @@ trackedFiles: pristine_git_object: 3a323aa09f4a699cd7df472cffee13d56816d297 docs/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBody.md: id: ef06a3f9b0aa - last_write_checksum: sha1:3a617657d3c46ed3a956f02be03f8758ef0dd019 - pristine_git_object: 9fb4cffca5609e562f1d78cd513ebc15007087c9 + last_write_checksum: sha1:4e2eae02634343c93343c86cfec53eb70edab461 + pristine_git_object: a14caa125eca53bc7a03d91ebfa0c735cdce8545 docs/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsResponse.md: id: 835554da692c last_write_checksum: sha1:1e050b52fe4cb1cc843a987825130c760431d1c8 @@ -5374,6 +5866,18 @@ trackedFiles: id: fe7fa931c9b7 last_write_checksum: sha1:83c0498d9cd17c772a3d6e4af2b535ec94d4fa0c pristine_git_object: 215698bb64e042835142bc81509ba966b32c11cd + docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesBatch.md: + id: 23925e688c68 + last_write_checksum: sha1:e98062355c9555f2ba0038648d0a2898c5bcf835 + pristine_git_object: 715af28ada254d95936ed337fa977e150ce556c8 + docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesBatchAction.md: + id: 26148add4c4c + last_write_checksum: sha1:12ae0d92c0b0bf3ec7f93a6081716b41dd62c8b8 + pristine_git_object: 45fc598c6682c744c070a1aa9a0905c5e085989d + docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesEntityType.md: + id: c020774b6877 + last_write_checksum: sha1:823be260141012df8fd3383da165486685dda5ee + pristine_git_object: fca9141f62d0f96d299c8ff4f859824f44e7c56b docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesHeaderXGustoAPIVersion.md: id: 2b0bbc48cdf6 last_write_checksum: sha1:0a37209ab4261e8b2a5cacc1f84e2a8fa41cc1f7 @@ -5388,12 +5892,12 @@ trackedFiles: pristine_git_object: 5e857913102acc87994cd537e2828e66abdb6026 docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequest.md: id: 5b1c63c0c0cc - last_write_checksum: sha1:79e8c2eefea91cb41d3cefcf499ae1745d24a231 - pristine_git_object: 8e61170ff2c32a4a6b02c11269ae77db38bd47f8 + last_write_checksum: sha1:d5089935c120affdeeeb305977effbc47a6afe31 + pristine_git_object: 39900e87ae513bdace98416c98fde7b8e2e5c807 docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequestBody.md: id: 71a2fc2d48ee - last_write_checksum: sha1:12b003ce8bbeb5f1a9d077d6fe5361c237586783 - pristine_git_object: 08dc4bd9d48c9e84eab6c3cfeb31566f85eeb3b4 + last_write_checksum: sha1:4d28c76ae0ca4b1b1736009688101d9c9d9b6fdf + pristine_git_object: 934a967138e87d5ab7e9ab4c91125d7c358fdb82 docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesResponse.md: id: 9271271dbbc1 last_write_checksum: sha1:47dfc433a2ed10ecca44d21f3a2623bb056b9122 @@ -5456,8 +5960,8 @@ trackedFiles: pristine_git_object: ea1cd0bf967e1cd70b16f65524870040625236f8 docs/models/operations/PostV1CompaniesCompanyUuidSignatoriesInviteRequest.md: id: f3b2383e7446 - last_write_checksum: sha1:a6ca2528e20076e469badb0390f4f2c5d0290c4b - pristine_git_object: 8790dab06e358009ccbafcbf0e827e377621377f + last_write_checksum: sha1:fb4aaef33e5bbebe2ef7372de28b5ef4dff29810 + pristine_git_object: 43d8574c2428c48f862b4e28d421ec67c125eab0 docs/models/operations/PostV1CompaniesCompanyUuidSignatoriesInviteResponse.md: id: f1444bdf53b5 last_write_checksum: sha1:06397041a1836b910b0d221c56c1c79ff39ad982 @@ -5540,8 +6044,8 @@ trackedFiles: pristine_git_object: 09fdb1805966ce0760d6b1dda5675cb8043650e1 docs/models/operations/PostV1CompanySignatoriesRequest.md: id: 99b80c3073ec - last_write_checksum: sha1:d3d4ce7399a80aa1eb0c12b1bf2a78d48f510bca - pristine_git_object: 9a5dd743ac40ac5ef3c7111d3998ba4fc0913691 + last_write_checksum: sha1:b485e2bc18acb632481de07805922197fd0b5b9e + pristine_git_object: a06b649507f2a29d4da5e12f1c446ec9fc5a09fe docs/models/operations/PostV1CompanySignatoriesResponse.md: id: f0abb6e36894 last_write_checksum: sha1:d81d3292392004758f0bc20d8a99304ec2cc6581 @@ -5570,14 +6074,26 @@ trackedFiles: id: b194333bb6fc last_write_checksum: sha1:f37a4cfc070587157eb947495a407961c238f5a7 pristine_git_object: 819e8a8b4be2d9f869797707d1f8ed096351874f + docs/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.md: + id: be5324664465 + last_write_checksum: sha1:5265c775c5a9c7f1d6d9d2d94143bd0c24af0567 + pristine_git_object: 50459362f2278ed90d1e8b6e35e7cf47601bc8ac + docs/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsRequest.md: + id: 33e93d055df5 + last_write_checksum: sha1:4d819d46cc452f33f508b4254459cc4a7fea0fd9 + pristine_git_object: 966121990053c91c945fec68f48694f13a2f3718 + docs/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsResponse.md: + id: 73c759a35611 + last_write_checksum: sha1:a69df221fa76ffefe5a5c1dbfca38fda6cc02a9e + pristine_git_object: 481a117a09511fa0ac49581566441cfda3dd79e7 docs/models/operations/PostV1ContractorsContractorUuidRehireHeaderXGustoAPIVersion.md: id: 4183a4e0bf08 last_write_checksum: sha1:9272cc4b443c4898cfbef3c9147cb4834c72acbc pristine_git_object: 6135c2e4a837a7cba203b4b18d18cde1ba550410 docs/models/operations/PostV1ContractorsContractorUuidRehireRequest.md: id: 86ac708d314b - last_write_checksum: sha1:f6dbd70cde0aabfa0581aae36b0e484f7282d58d - pristine_git_object: 97ec33c6e2a594233df92ee1f1256fb024da715b + last_write_checksum: sha1:626c4bc845501780a76f4c9bac2d358465881792 + pristine_git_object: 6598bac8cd3524b5155c5cba21daa3068812abb8 docs/models/operations/PostV1ContractorsContractorUuidRehireRequestBody.md: id: e509ee7c46be last_write_checksum: sha1:80e65add58ff75ad5c372fa23fff13e6ec997ce2 @@ -5592,8 +6108,8 @@ trackedFiles: pristine_git_object: 3e6022cb734e7f05594511f43b47e03c1efcbe1e docs/models/operations/PostV1ContractorsContractorUuidTerminationRequest.md: id: b0098e8b13df - last_write_checksum: sha1:f1643ddfe7c4c4b3971dec538963f9e160e4a3f8 - pristine_git_object: 2a911bb23351cd90132c3a76f8ba91a7d192b1e8 + last_write_checksum: sha1:0cfb4a5ceebab82c51568bc16377ef629e3a97f1 + pristine_git_object: deea204260574ffdd81969817c8cfdf17ee6c82a docs/models/operations/PostV1ContractorsContractorUuidTerminationRequestBody.md: id: 64e4d241e7c1 last_write_checksum: sha1:589618ecf99f7295edf7a5527ea1f49e76486b38 @@ -5644,8 +6160,8 @@ trackedFiles: pristine_git_object: 98db706b597fb8ca71e3d51f1027dd35e6545854 docs/models/operations/PostV1EmployeesEmployeeIdHomeAddressesRequest.md: id: 57ddfcc7561a - last_write_checksum: sha1:b94fd46e398143b32b1ea53abc88ab589c135750 - pristine_git_object: 8e8b602784096bef2d5b7bd61587e0d0108c209a + last_write_checksum: sha1:1a97864cf984651fd5c638cba711daa8af7bbf08 + pristine_git_object: ea4752ef34c052766d8d1cb500c4db6eba10d6d3 docs/models/operations/PostV1EmployeesEmployeeIdHomeAddressesRequestBody.md: id: e1bd4fa1e3e5 last_write_checksum: sha1:425ad27e7ed9d3f2304f5fd33b10357c511bbcca @@ -5660,12 +6176,24 @@ trackedFiles: pristine_git_object: 7f4ba567635b86cff990f50b72e34d5ae23ab6d3 docs/models/operations/PostV1EmployeesEmployeeIdJobsRequest.md: id: 3144c05ff3ec - last_write_checksum: sha1:af85eac4ea7fd0bbe77055f5df76e57c80ff533b - pristine_git_object: c66ac8cd1df07ff9ff3e9da652db730f35bec247 + last_write_checksum: sha1:e70b5eb7c3f4b2557e6c1f9f6a7a0816523824b3 + pristine_git_object: 8227a3f151ef0a860f904691187d42bc82f2075a docs/models/operations/PostV1EmployeesEmployeeIdJobsResponse.md: id: d033e6a66b8a - last_write_checksum: sha1:02f6d10e191b1afd165f6aa90db2ac289f0bb68f - pristine_git_object: 4347a1f9cd75371b3a904c442d07dbceffe0ae0e + last_write_checksum: sha1:c0dada7407079f2a34ce6868c12093bbb563a450 + pristine_git_object: 78c50467ba31b9c86a4a5c310145800e2786b2eb + docs/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.md: + id: 32c79bed0f4c + last_write_checksum: sha1:f595f0ea56eaaec9a9d9e5bf1b2a7e073a758ae4 + pristine_git_object: c0e20362d4f177c5c3d3c6b82f65ab23c8a10192 + docs/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest.md: + id: dfe69490a4d6 + last_write_checksum: sha1:b8f51696ed102c5d3747a7799be794df67a66458 + pristine_git_object: e59810e0f4e1d5386e4d51ca00bc7a4e606e554b + docs/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse.md: + id: 0bfcd7a61c82 + last_write_checksum: sha1:42ed29804ff44943d01b5910bb1b08f2eb67befb + pristine_git_object: ab7f01e3715aacdcec9da2eaea2c727ec8f30d5e docs/models/operations/PostV1EmployeesEmployeeIdRecurringReimbursementsHeaderXGustoAPIVersion.md: id: f45d0ce7022d last_write_checksum: sha1:a3476d79b27a3dae83ff647542645401da48534e @@ -5732,8 +6260,8 @@ trackedFiles: pristine_git_object: 8afc04301e6f296496b46b2dd921545ea4c2c8e8 docs/models/operations/PostV1EmployeesEmployeeIdWorkAddressesRequest.md: id: 2642f48d6bb3 - last_write_checksum: sha1:25952ea526ca4cc063b10b3ea6fc98b485f983dd - pristine_git_object: c94f3722d5e26b1a25243ca9b5982435c5d165b8 + last_write_checksum: sha1:43677566519db1cc8ea3787951e5215ec293fdaf + pristine_git_object: 39eb4db576e3f090d92fc8e3a6bd7a55f91b2e98 docs/models/operations/PostV1EmployeesEmployeeIdWorkAddressesRequestBody.md: id: 4f9800256295 last_write_checksum: sha1:42277b94c1426f5980a1d9ce0547cd95c709242b @@ -5748,8 +6276,8 @@ trackedFiles: pristine_git_object: 3026f150262c4b2301f660f1e652a04635e629b3 docs/models/operations/PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.md: id: edf077bfc210 - last_write_checksum: sha1:c705bdd3c39aa12a2f137b14892d5fc716c12771 - pristine_git_object: b427efdbf0f23ea5da16254886db64b3251402b4 + last_write_checksum: sha1:4f2007e126f82939004faf2645ee7415515a0720 + pristine_git_object: a39f3225dda5eb97845c75c35aef6a728421b8f9 docs/models/operations/PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesResponse.md: id: 6f48cec38118 last_write_checksum: sha1:6ccb96dc481c096c876acfd419249572af855d7c @@ -5810,6 +6338,26 @@ trackedFiles: id: 6fa91b563914 last_write_checksum: sha1:fc767ac3a6a2808b2277da4ad4b3c81aeb7765a0 pristine_git_object: 4cd14e4a1ff448b00d37afd3d4347707c49ad948 + docs/models/operations/PostV1PayrollBatchesHeaderXGustoAPIVersion.md: + id: f1961b1c380a + last_write_checksum: sha1:d29b85ae2d045308c6f76e70a1eb115d8b0a2ed6 + pristine_git_object: 41cd440049487c6f27fe63b1f4e6940271c51faa + docs/models/operations/PostV1PayrollBatchesRequest.md: + id: 9fdb57f5297c + last_write_checksum: sha1:0e417655b0fabe759dc9201ae04c3e1321431f36 + pristine_git_object: e44ed5f4a895589a770819c3025fb93cd4105549 + docs/models/operations/PostV1PayrollBatchesRequestBody.md: + id: a84b6ce96b36 + last_write_checksum: sha1:c4c00383e7c26dd79d527cabdaa922373543b0b1 + pristine_git_object: 14a2ebbbf7cc69802f284be8750f1a3699599e85 + docs/models/operations/PostV1PayrollBatchesResponse.md: + id: 9f7a422b228a + last_write_checksum: sha1:40f97b50900b3abac60b971566752e9c0520e31d + pristine_git_object: 7a82db52f982d747c1c861e4b2a9aaddbfcf9925 + docs/models/operations/PostV1PayrollBatchesSecurity.md: + id: de9aa374bb99 + last_write_checksum: sha1:fac2bab10284573cee219c6add0690b7577740d4 + pristine_git_object: c89721adbda473b494ab3b7dc8595addd711707b docs/models/operations/PostV1PayrollDigestsBatch.md: id: c71a8d2294e4 last_write_checksum: sha1:ee6ac9de031c4cf34c38b34859d08ad2cf6e592b @@ -5960,8 +6508,8 @@ trackedFiles: pristine_git_object: c1da9102ed515cce05ad1bad63eba859c741a03c docs/models/operations/PutAddPeopleToDepartmentRequest.md: id: 2b9a863c52a7 - last_write_checksum: sha1:634c47b5dab282acf8e4fdd6a1c35424de671ef7 - pristine_git_object: d7876c7e20385150087d6ece0b81ed3d7248fce2 + last_write_checksum: sha1:b778f97ec8217694df28d0bef107a8f5f5a955ca + pristine_git_object: aa61e40bb6dcbf2763bc5d3084117c1ba51a5bed docs/models/operations/PutAddPeopleToDepartmentResponse.md: id: b7d404099b57 last_write_checksum: sha1:099ae4134b67c7891ddd04e2031244dbf7de6e0d @@ -5984,8 +6532,8 @@ trackedFiles: pristine_git_object: d68b3bcfd21de2f7f7d24798249e32d8c1da02e5 docs/models/operations/PutDepartmentsRequest.md: id: 047a12ea6e5e - last_write_checksum: sha1:4f17796a63ccc30a542d979cb9c070b8ffb8c944 - pristine_git_object: 0e429b407100ea74e9b5b1279a2c47801c6a60cf + last_write_checksum: sha1:119197632c88b8f0fa8de8e29958643692c1dd85 + pristine_git_object: 6a6d7b03750f5f4ce11c1a2c3b10b1df62a3b875 docs/models/operations/PutDepartmentsResponse.md: id: 88bd7859f294 last_write_checksum: sha1:10288af362764465de9aae08790fbc505b83d749 @@ -5996,8 +6544,8 @@ trackedFiles: pristine_git_object: d33f92b2b911731a8803c4b695c454de5cd59f90 docs/models/operations/PutRemovePeopleFromDepartmentRequest.md: id: 48c532707498 - last_write_checksum: sha1:2eab9f37449b76f967ca0039374e13d0e1fff418 - pristine_git_object: f6db8e85c3f737e3d49220d81f5fb2359ac15a0f + last_write_checksum: sha1:825872ee67b2900f3de2900b2f77912f503aa58c + pristine_git_object: 16ea106aa7ca40e686b7c68d55f32936f7233e3f docs/models/operations/PutRemovePeopleFromDepartmentResponse.md: id: 372bfef4cccd last_write_checksum: sha1:1e9d94702e89fa7dcf009de96ad5dd6ad526cc0f @@ -6036,8 +6584,8 @@ trackedFiles: pristine_git_object: 9e8762d1877f2f9775d92241cf3f64140d0b467c docs/models/operations/PutV1CompaniesCompanyIdFederalTaxDetailsRequest.md: id: b5f68ecab8bf - last_write_checksum: sha1:81b7282cacf28be287c9c6bc119b512fada73872 - pristine_git_object: 98aef451c37a2d8b354960d919bee78d98cd6730 + last_write_checksum: sha1:f005c4caf5749562c3e25f183bb1b89c18b51eb7 + pristine_git_object: 621b3bb8dc96c63c25ca119d335a0393ae0d3e23 docs/models/operations/PutV1CompaniesCompanyIdFederalTaxDetailsResponse.md: id: f2ac895b8625 last_write_checksum: sha1:dc9233fc0c2904aa5a58604fa288855ec001216f @@ -6080,8 +6628,8 @@ trackedFiles: pristine_git_object: 6c219fdb1123ecde04cf115658e4a38fc23c0989 docs/models/operations/PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBody.md: id: ebab6168954a - last_write_checksum: sha1:b21f363b9b8fe4c2dc743b936de9aff9475be958 - pristine_git_object: 1193dc0ac2fceb7a4c7fc1dc1fab8b60cc965eef + last_write_checksum: sha1:cebe826bac65176c83a2330fbd4c5f2936b2090f + pristine_git_object: 5f5ba18b3e92449a277bb2776b589ac51678c5ae docs/models/operations/PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareResponse.md: id: 5346d9650ca3 last_write_checksum: sha1:39fb2e43f5f0ebd2dd4e47534d13f207f72a7445 @@ -6110,10 +6658,6 @@ trackedFiles: id: 2ec78cb49edb last_write_checksum: sha1:d3ec3eb720a50f35eaaa187acefeae14f7aae0a8 pristine_git_object: c610add97a4394620d9ad21ce596a678fb775956 - docs/models/operations/PutV1CompaniesCompanyUuidHolidayPayPolicyAddEmployees.md: - id: 2ff2166d21d2 - last_write_checksum: sha1:e5027daaabe7369dcb5935ce6cc0f70a00ab836c - pristine_git_object: 430b8afc1df5a537f0d0bb27e2dda40bc2b90e72 docs/models/operations/PutV1CompaniesCompanyUuidHolidayPayPolicyAddHeaderXGustoAPIVersion.md: id: e36fcab485fc last_write_checksum: sha1:9b0f0b54b830cf121f5281b0410fc88a4375799b @@ -6124,8 +6668,8 @@ trackedFiles: pristine_git_object: 36806f50d609ebcd1f272b285ec8494e5104d4b3 docs/models/operations/PutV1CompaniesCompanyUuidHolidayPayPolicyAddRequestBody.md: id: d9e9ab27c42e - last_write_checksum: sha1:f7a7ae294b7e9e2ca495f9198e6327b9dcaefb3e - pristine_git_object: 53ce7df40940a2475a0c67b29083c59ce7037c05 + last_write_checksum: sha1:16b94cc2f2323388085ac9880c6224a25d88f8c2 + pristine_git_object: f66e3700d653b0b55f1c90bda108997dadcc26c4 docs/models/operations/PutV1CompaniesCompanyUuidHolidayPayPolicyAddResponse.md: id: 5c6ea002006a last_write_checksum: sha1:29c58016cbe424d31f812d456e70bf50d82e09c9 @@ -6172,8 +6716,8 @@ trackedFiles: pristine_git_object: 5c606502c4085fb9c2b4999c859e2687adfe176a docs/models/operations/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.md: id: be4f2d3b4736 - last_write_checksum: sha1:78848c5bc56a1f1a315e17f2429bd16a081dea4e - pristine_git_object: 3b1edb2ee6dddb0fd5afa98918353595d30f2996 + last_write_checksum: sha1:676d852fe883847c8a538c3de961bb92d3b976f8 + pristine_git_object: 355dc82edb02261ec0a18e437b8008da5d9add80 docs/models/operations/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidResponse.md: id: f22fc9eda580 last_write_checksum: sha1:7593654de722ba27d78ad0e579f4a4e54d72b68a @@ -6184,8 +6728,8 @@ trackedFiles: pristine_git_object: 4d703c7687ed629189f768f7a98f2a97374cdf2b docs/models/operations/PutV1CompaniesCompanyUuidTaxRequirementsStateRequest.md: id: 68bca344ef9e - last_write_checksum: sha1:e472250b3accbdb523ea6733e8f7b57e0681989d - pristine_git_object: 8e8c65dd6b85589392eb7a6e5c6d2b280f23b72f + last_write_checksum: sha1:5e0c67fb5db45fc26dc57bc4859065eb7a1f754e + pristine_git_object: 59917c760d78e2790951dfe8eeac6aa1ab01c9ce docs/models/operations/PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody.md: id: 19aa8826d69f last_write_checksum: sha1:ffdfe6d0821ec5a0183133817d2cb6a765173f6e @@ -6200,8 +6744,8 @@ trackedFiles: pristine_git_object: 88bd5adc2b92d05fe8b3d3c12f1b443df36a6a0d docs/models/operations/PutV1CompaniesRequest.md: id: 8796725e157d - last_write_checksum: sha1:6919f370334159e470d08e8d61e4a9864dd852d6 - pristine_git_object: 92dfc34fd05b4cd38a0249f05de369181f3f48df + last_write_checksum: sha1:e1373deab8409297b72722c188508cc6d35c4960 + pristine_git_object: 159c8a9535ea8fca8ed12b1afeac92a3bfba017d docs/models/operations/PutV1CompaniesRequestBody.md: id: 7711e9fd7f78 last_write_checksum: sha1:e296b498a1e2acbf75323733c68bc00bcbd29302 @@ -6268,8 +6812,8 @@ trackedFiles: pristine_git_object: 14768a05b5f47266c912119b3c84ae2cc1b83d40 docs/models/operations/PutV1CompanyIndustryRequest.md: id: 04eebd165cbd - last_write_checksum: sha1:468e314c9d7a458dd469e2ac425b9269125bd9e6 - pristine_git_object: e9f2a20539f9a6fc666d3fe3922fdbbf0d5baeca + last_write_checksum: sha1:eb8502c992b65c733033cfbbf771ea90c5014ac8 + pristine_git_object: 5982a88b7dad99c6038fe62140d1a58a8ec80ba3 docs/models/operations/PutV1CompanyIndustryResponse.md: id: 5ab14ee20311 last_write_checksum: sha1:de7f76f5dbd5ea42056386d38c71299fe2423848 @@ -6320,8 +6864,8 @@ trackedFiles: pristine_git_object: 032abd0f482cfd5604dfd3d3dfffdd9cc217c3f0 docs/models/operations/PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest.md: id: 20932d8ecf0d - last_write_checksum: sha1:5354be3a9842db37d6130c5ac5553dad6064be9d - pristine_git_object: 101d5ceaded848fa2f9917ebb54f48c14fdf9b6d + last_write_checksum: sha1:c700323a74ab72d3a79b6a282f164820643034f0 + pristine_git_object: ff81244f2a9e02cc3b7610b8b8734802c5d81e72 docs/models/operations/PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundResponse.md: id: e4baa219029f last_write_checksum: sha1:0ae316e3a0357cc3fc6f73586677aae1cd9bc4ae @@ -6336,16 +6880,12 @@ trackedFiles: pristine_git_object: 8cd34a9f81d72a0ad79d19f7b1280bbd45aa2c48 docs/models/operations/PutV1ContractorsContractorIdPaymentMethodRequestBody.md: id: d9a3f81e773d - last_write_checksum: sha1:730fe66f8c8d601a0b95b41928e6cc447754aeb5 - pristine_git_object: 2ec71523972aea126d9a14356de36ab4a12ccbc8 + last_write_checksum: sha1:019fb05a126aa20a1df027c64ed9b29f2d0e9231 + pristine_git_object: ba3e7c7a49a35a90f8831a005bfa504a588e12fe docs/models/operations/PutV1ContractorsContractorIdPaymentMethodResponse.md: id: 1fd5280c9486 last_write_checksum: sha1:007abf5fb2c74115e195cf22e543c33343cdc393 pristine_git_object: cd3e1ec368350a8f865e5a96bfc2d3695624132c - docs/models/operations/PutV1ContractorsContractorIdPaymentMethodType.md: - id: e967c464ee54 - last_write_checksum: sha1:3fcf597e8aa757177bd78a0fcf09a2409174e3a8 - pristine_git_object: 7f73212fdf81826371e1c6104115cb81e3d03756 docs/models/operations/PutV1ContractorsContractorUuidAddressHeaderXGustoAPIVersion.md: id: 31589fa0c88c last_write_checksum: sha1:fa8ce08b077890b96d0f37a492864cb661d107d9 @@ -6512,12 +7052,16 @@ trackedFiles: pristine_git_object: 305b3708ddbca01654c03322bf657fe9a5b9e74d docs/models/operations/PutV1EmployeesEmployeeIdPaymentMethodRequestBody.md: id: 78b24ad35d94 - last_write_checksum: sha1:c60c92facc7ed14f65fc70c1bf2a9eeed1a9a644 - pristine_git_object: 8bf62c46fcf6c58342c7eb0e8985172ec40ce9a4 + last_write_checksum: sha1:61c586d109229d9702aa0d8dbb68b04ebb13ad1f + pristine_git_object: 6a195fecaec19176a7bf09410436d56926fb6c4d docs/models/operations/PutV1EmployeesEmployeeIdPaymentMethodResponse.md: id: aa2612ebfc90 last_write_checksum: sha1:4ba3d6ad95e3136b7ae82eddcf787fe65ff1ccdc pristine_git_object: 2fc662b2c645a14fa3d18a82671e6450e6f6cd47 + docs/models/operations/PutV1EmployeesEmployeeIdPaymentMethodType.md: + id: d0d5994cd78d + last_write_checksum: sha1:57f48177aa4f179814338121f02584441b2099d2 + pristine_git_object: ea2bb01c173ec0429b3384a9f39683665faabd63 docs/models/operations/PutV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion.md: id: 4d57522e2deb last_write_checksum: sha1:398c17aca8ef0c81a3e93f9c34cdd39e3e56dc1c @@ -6620,12 +7164,12 @@ trackedFiles: pristine_git_object: 385aac873ad3f69b37c16e92dc013d489f88339d docs/models/operations/PutV1JobsJobIdRequest.md: id: 6ea87f7b4cda - last_write_checksum: sha1:f24a491a291aa2245510bd2a536bea80f3714455 - pristine_git_object: 5693ace76c03b0bb03099996d42d6d09a5ec9079 + last_write_checksum: sha1:84375e27111e748c775baa5b0dedafbae479d8ae + pristine_git_object: e592dadba2d455c248c72b842121b0d7e2f142cd docs/models/operations/PutV1JobsJobIdResponse.md: id: 6225478952be - last_write_checksum: sha1:cf143b12b8c5922ff91224448669f491914fb589 - pristine_git_object: 382e72363ae49e350c21dc27a21c5a09de0f5684 + last_write_checksum: sha1:ca3fbcb6cd8469650f3b7c36da0b255c3cf94cae + pristine_git_object: bb4b0f4e4008f6905526e15c02f34ad17ede77a3 docs/models/operations/PutV1LocationsLocationIdHeaderXGustoAPIVersion.md: id: c4f3095c1323 last_write_checksum: sha1:0a0694b40fc568d319f377adcaa9794bf070197b @@ -6642,14 +7186,30 @@ trackedFiles: id: 773f6f2381dc last_write_checksum: sha1:f1ebbd523b3a80a4eacda7d0e70ce0282173b6b1 pristine_git_object: 44c7258e465c3cf176e7bf4de338feeffb5299b4 + docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion.md: + id: 736d24de7ad3 + last_write_checksum: sha1:0113c10375fbd9a9492e898f26726042fcce8b7d + pristine_git_object: ba8a05656f2bdea69a8b8eee9ce8cc422a4ac013 + docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest.md: + id: 7b47e23e4b44 + last_write_checksum: sha1:5d7ca17535188255248b166dd870440526ff16be + pristine_git_object: 45b4b9023eba0d3745cebe07f3720d895cbfba35 + docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse.md: + id: 2d2102067629 + last_write_checksum: sha1:2b5802af12df7fb9130a7534d9b842efa0404694 + pristine_git_object: 1c7129d6e34429e03574c4513d94e4b875f88223 + docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity.md: + id: 55b140d1bfb2 + last_write_checksum: sha1:75fd1437b3fe6b5a201c8109687b71b66d5bad59 + pristine_git_object: d4704fc62a718049e24dc1fd0e21cdd88e5f7b40 docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidMigrateHeaderXGustoAPIVersion.md: id: 37e8218bde18 last_write_checksum: sha1:55c8ec9b0f00d3ef7f8299e769ae6b7bdee7bbfb pristine_git_object: f8ce03083b02c53ba175799a0bb7f16e422b8da7 docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest.md: id: a3fe2c6ab1fa - last_write_checksum: sha1:6d738ec17f4ee556d9a17312e0194cccf1018f8b - pristine_git_object: 7a3caec0d4f3a51f5fbce23895c04134a0b7b7c7 + last_write_checksum: sha1:21a1ae1d87ab0a2ca63e7a023df2d4a500c1a9b1 + pristine_git_object: b5bf48b8d3f0c67a2cc6dd56b30e5e79da37353e docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidMigrateResponse.md: id: 90d8e80f4a7f last_write_checksum: sha1:39cb27c2848f3610983839dc295342bccf409c0b @@ -6734,6 +7294,10 @@ trackedFiles: id: cd317a9cf2de last_write_checksum: sha1:cdda9c707ae3b49306a3a7efadd76acd98865cf3 pristine_git_object: 14fa5e1cecf3a77a7c09ac7a2cd0a15a3155fa0c + docs/models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesEmployees.md: + id: 4d589d686329 + last_write_checksum: sha1:22f49bc3b48325d6ac4c1a129b509e25dbae8a23 + pristine_git_object: 8a23a01fe9256ea24a82b3cd419f54795952bdc9 docs/models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesHeaderXGustoAPIVersion.md: id: a9a1d1cbc4fa last_write_checksum: sha1:d9d0eb321e79433470340d7702081ff5f5096868 @@ -6744,8 +7308,8 @@ trackedFiles: pristine_git_object: 649bf6e90b4aa7c87e75289cdec1cc8769665a6c docs/models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesRequestBody.md: id: 5beddaf3bd0d - last_write_checksum: sha1:6fac44a1d965214ddb18e1e16506c1ed57a35d96 - pristine_git_object: 18e2c7ae0a2e6574f04842858c3ece7775ed327c + last_write_checksum: sha1:740fe2660181ae3f7466d88f8050ac82ca76b541 + pristine_git_object: e0c34a4ea5bc52b51822f836da46b3e77d7ecf4f docs/models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesResponse.md: id: dc83f39ec347 last_write_checksum: sha1:712d3ea031e0493ebe04a965f5df66d2ba93a1cb @@ -6856,8 +7420,8 @@ trackedFiles: pristine_git_object: fe8847e64cc49dc49f4506265df330cb1567b71e docs/models/operations/PutV1VerifyWebhookSubscriptionUuidRequest.md: id: 0a7078df388f - last_write_checksum: sha1:4e31614d88633569ed2018883c4503c818edf320 - pristine_git_object: 6e933d7e90d3efcc5b07072e48202afd46861d80 + last_write_checksum: sha1:ab68ab23c7a220aea902913d8819de3c8a3504ce + pristine_git_object: 4c3b9b24be7b9ca095a98113523e9b1453da5be4 docs/models/operations/PutV1VerifyWebhookSubscriptionUuidRequestBody.md: id: 951a817c1e3a last_write_checksum: sha1:106ee914e9b16b2b55a4781b01abf3dead6a4159 @@ -6876,8 +7440,8 @@ trackedFiles: pristine_git_object: 5b9a138b7509f079b0845a1d9918250d2c9ac900 docs/models/operations/PutV1WebhookSubscriptionUuidRequest.md: id: 758f39661a53 - last_write_checksum: sha1:4a7c01a1e2ff9a39b19d5e9b2da1499891dbff6a - pristine_git_object: b9f66c8ca569de934da8783d8aac32a04871fb46 + last_write_checksum: sha1:6178b1ed0eeb8a676bab517575989c75c0a6dc0d + pristine_git_object: 7ce624932f982ebcf16d3acd3ce8f72b821ec258 docs/models/operations/PutV1WebhookSubscriptionUuidRequestBody.md: id: 1dc43ddeceb1 last_write_checksum: sha1:177a500da25ec8f4d1c1c91d408a26323597b5a8 @@ -6892,16 +7456,16 @@ trackedFiles: pristine_git_object: 4d8d8da8ad725b7d31738ce440147d214cabc181 docs/models/operations/PutV1WebhookSubscriptionUuidSubscriptionTypes.md: id: e9d54b239864 - last_write_checksum: sha1:1ce0b456d9580b22bcf55931a5d27281491f3893 - pristine_git_object: 7c7232cc6d1605f099e53f4ed311141600bdceaf + last_write_checksum: sha1:c3b889a07eb1e8f66d91305efaf1fde14de75ca7 + pristine_git_object: 48681a28f1e72dd7a8cbf13938745a382f0fd52d docs/models/operations/PutV1WorkAddressesWorkAddressUuidHeaderXGustoAPIVersion.md: id: 3df3bcb6dee7 last_write_checksum: sha1:cb385adf84fed12a8e74a85fe7e811557a1753eb pristine_git_object: 974cd516a6d4632b7428e048edb1049241b5eb8f docs/models/operations/PutV1WorkAddressesWorkAddressUuidRequest.md: id: b014f5af1b21 - last_write_checksum: sha1:69d1322e559d75fa3ede60cc9c0ca035407142db - pristine_git_object: 7a7d25b3197b88c7c4a7dcd74e0dc0f4440206ab + last_write_checksum: sha1:152bb4974ac37584589c849c8fedfc29fd5e85c1 + pristine_git_object: 9a0ff43310d711dcb4e1296b1891d1f64b2b45d3 docs/models/operations/PutV1WorkAddressesWorkAddressUuidRequestBody.md: id: ed8eb9dae3dd last_write_checksum: sha1:1d4aa78eb7bc6e338c7c2939441c9967301ab0c9 @@ -6916,16 +7480,16 @@ trackedFiles: pristine_git_object: 6ea100d6791bcf87864cf70dab56b6c8e7cc1c1b docs/models/operations/PutWireInRequestsWireInRequestUuidRequest.md: id: 508c4f66a20d - last_write_checksum: sha1:c043aa9bcf507047d4e3e62d0634ca0e88a3f033 - pristine_git_object: 35548bea31ddd7c08c4d25fa663ff2015a64ce9c + last_write_checksum: sha1:3fe167bebd257b3a0164ad8295c7e44fb2ba2423 + pristine_git_object: 13faf2ee8c70a48aa82cc3625e0328ea1f758306 docs/models/operations/PutWireInRequestsWireInRequestUuidResponse.md: id: 42d7e1705bac last_write_checksum: sha1:894bf21457c0c75427cf4829ea3926f0f472fa81 pristine_git_object: 6d14586edb079166a0367b39007735979af87a3a docs/models/operations/QueryParamInclude.md: id: 98e9203d317e - last_write_checksum: sha1:eaf4621e4da435781766b624e30b179a91787fce - pristine_git_object: 009ac9ce3cc4a5f2c5692aff08d46ec9120bef47 + last_write_checksum: sha1:6b3c4891025e94ab516e16f03e923a83ac24c22e + pristine_git_object: 478f52f8f13fcbd15408609469c97dfad8236cab docs/models/operations/QueryParamPayrollTypes.md: id: c9d44e722c3f last_write_checksum: sha1:a894bbceded74627ce789dfce5608237fbad54db @@ -7004,8 +7568,8 @@ trackedFiles: pristine_git_object: d609733ca94981ecd583cf04ea5bdb28986ea922 docs/models/operations/SubscriptionTypes.md: id: f7fa74935662 - last_write_checksum: sha1:fc64731ed4f1efceea04d3685687f8f7c27ae479 - pristine_git_object: 92f4b1658fed22c32f84c1e13f3c943e38a6ab2d + last_write_checksum: sha1:b6a8e46331cc371497d1738f2adcb58af167dac3 + pristine_git_object: 1865fa2d0a207484d72e195baeed9d05ed159e72 docs/models/operations/SystemAccessTokenRequest.md: id: 11a6e4bf3a9a last_write_checksum: sha1:49ea0cd266f24538f6d73c7fa667f723d1741804 @@ -7020,8 +7584,8 @@ trackedFiles: pristine_git_object: 1e54bfae80ab5a68ab213dfbe3074b746e40946e docs/models/operations/Type.md: id: b7dc6280f202 - last_write_checksum: sha1:2bb7b5e078480b08883173a0af33776f05641f59 - pristine_git_object: 2f387c494bf3ad9a8b28734193c912e9b8c10ed7 + last_write_checksum: sha1:18fb0928f7842258a61db91b2d58a27271294bb7 + pristine_git_object: d1376a778520a87fff5e4efd8d6e6bb222faea31 docs/models/operations/VeteransDay.md: id: 1224301ff362 last_write_checksum: sha1:5a4736026a7a9a1b5ff58a61a8af936019872569 @@ -7052,20 +7616,20 @@ trackedFiles: pristine_git_object: b6cede00ad632945b79ecc04b5099facf29a955c docs/sdks/companies/README.md: id: 67e8a49afa67 - last_write_checksum: sha1:5543928d6d0e7065dc6cd136a09bd45789d02d74 - pristine_git_object: bfd59511ef117416e14b79b777211045a1e27f77 + last_write_checksum: sha1:e1b2b5c925c5b095026b64826c7540f49e4f00db + pristine_git_object: 20f5fa404757ee0910dcfa50af0539ae8eafc342 docs/sdks/companyattachment/README.md: id: 49c4e919caa2 last_write_checksum: sha1:60968207f38a44d6b98a349d7996a5b5d7687c2f pristine_git_object: 20a9415773a32c6e0523361a254741592313f3c2 docs/sdks/companyattachments/README.md: id: 105a968c3402 - last_write_checksum: sha1:80c23b9b74e0ab08ec7ae3726c7371f4ee48fc7d - pristine_git_object: 6595d9f94711be71f2190623e4e7d15c5fc6a034 + last_write_checksum: sha1:074f2ec008efb77d651e4a56debcc8fb6fce5952 + pristine_git_object: 0e4c262e00fec74fd17f72b9616903c289f1d6f6 docs/sdks/companybenefits/README.md: id: 68640bb09ef2 - last_write_checksum: sha1:a321976560c7d9d526c1f49bc012d50bed9ad83b - pristine_git_object: 8e3fd4a731b468909f21da068f4e52072ef2846b + last_write_checksum: sha1:5807f7b4abc741f89c82d0439a3c0b3a4b2dce82 + pristine_git_object: 1cb9a82d796f5fbc8af4d5b0014f7d2950826ce8 docs/sdks/companyforms/README.md: id: 950fa696807e last_write_checksum: sha1:a88d48cb1c22392ee10b51bb844b94cf06d20c40 @@ -7080,60 +7644,60 @@ trackedFiles: pristine_git_object: b6db53216c012de7e531dbd5388987315b0a5480 docs/sdks/contractorpaymentgroups/README.md: id: 827b7ed15692 - last_write_checksum: sha1:6263df401f8e28aa2930e1398736a8ce4d1a6983 - pristine_git_object: acddedc5aaad52270b6bdca2b77c53d9d2b7fe3a + last_write_checksum: sha1:f5457a6c60e1b58c4c3bc8af7a32f054be6ee1e7 + pristine_git_object: df11c4133dac6678c45bb005920f5674fff59336 docs/sdks/contractorpaymentmethod/README.md: id: 6d90189ab4bc - last_write_checksum: sha1:821521ed2e7b5e8175f626711a373bedc6663125 - pristine_git_object: 724de7d5882003ec10b130b646680c2a0aef0fa2 + last_write_checksum: sha1:ae3f1286a62947ca57d58d7b02470ce7db4ed05e + pristine_git_object: 1ad5b25b398627083fc87cb0ec7cb97da55b314c docs/sdks/contractorpaymentmethods/README.md: id: 8e60120cdd11 last_write_checksum: sha1:0178d4b824309e9a931945274feaba2ed30b17d8 pristine_git_object: a757a2a1be488ca32a1f039022a93da07a783493 docs/sdks/contractorpayments/README.md: id: 2636bdbff20f - last_write_checksum: sha1:324852dfece2212d1ea0084f272dd235c9251e82 - pristine_git_object: 88982ca96c8b86b93c988e240061ecb8c2e95942 + last_write_checksum: sha1:a96a24c7e6f21760a8fb3f962f639eef3791f7a9 + pristine_git_object: 4a7064e28e995b350c415ab218eb9a83f4ddcb81 docs/sdks/contractors/README.md: id: e5de017cf9e6 - last_write_checksum: sha1:1611382bd4bf5895936edf801b2c0b521bce06ac - pristine_git_object: a91ce9d82854cf256ae2941941d482b20014c698 + last_write_checksum: sha1:1819acdeb4d0d422bf398bea4ab50e33dcf24f26 + pristine_git_object: 527a5292e62232b2f0006b70af6d76f039d73836 docs/sdks/departments/README.md: id: 12342c54f2cb - last_write_checksum: sha1:50dd9dc9d4b12bd5354f3c39fe1074c409581009 - pristine_git_object: c5ac70320c364cb90cc96077d38812b2827f3410 + last_write_checksum: sha1:bbfeddf35b3a8e977dd62f7eb3bb393789d580a9 + pristine_git_object: e705bc4fc764a26767bc0fc36e272a0880d7296c docs/sdks/earningtypes/README.md: id: 8fdb58368538 last_write_checksum: sha1:9c53f8ec1ab981df8f40adf2c9dabe56065681f2 pristine_git_object: c22ccb2f22e80b94b51339f40833ceccc95dedb6 docs/sdks/employeeaddresses/README.md: id: 9dcdcfde936a - last_write_checksum: sha1:d12452b2c5273d338a4131a257a53eaf0f003d07 - pristine_git_object: c966212dce1dda770fb31644d85a00055c800f2f + last_write_checksum: sha1:366e7e7e7ee82efd410993085656c8b7b0244d1e + pristine_git_object: 3449ee7204cdd847e632a097f2ef1d4df1cb7c95 docs/sdks/employeebenefits/README.md: id: d8dae69d12b6 - last_write_checksum: sha1:0f662c622882fc57b23028bf6cd3d15652d55e7c - pristine_git_object: 6159e89b2d1a390ae32f4acc00a5583cbb4c4f0b + last_write_checksum: sha1:0e302b8a7308dfa2b19ecd2d1f27783710597e6f + pristine_git_object: 8b137ae587014cd5ea62dfceaabfd2e92fd26486 docs/sdks/employeeemployments/README.md: id: a5c0a62c8948 - last_write_checksum: sha1:e590f386970dcbf7461d705bdc3af5bf824ac73b - pristine_git_object: 4d7b1be79c6566f6f3d74aa64d36f0ffc942f433 + last_write_checksum: sha1:97ca2ae9268258ffa2036c8d0e41bc107a0b0646 + pristine_git_object: 388474e58ac63026e723bd29caeb098427e34592 docs/sdks/employeeforms/README.md: id: 6e8cbb9eb9f8 - last_write_checksum: sha1:5cd034c30d700bb5514d5e6448783a463619d520 - pristine_git_object: 863326ea6a8036b8ec744045961c8a9908fab4c8 + last_write_checksum: sha1:6192568750235162cb49ece1efc5c251962d49d9 + pristine_git_object: 0f3f9186b225c5288933539f28e51f70caa1d4fe docs/sdks/employeepaymentmethod/README.md: id: 3d8a3fd0cae6 - last_write_checksum: sha1:d577d0c80be6bdaf7cee1418deb2b08a79e43fc4 - pristine_git_object: 3def0a211b3c5e9e9ddbde48f5b30839e5d3d55e + last_write_checksum: sha1:c1acb73f017a372e8f2a21c11f367a19a52e4b31 + pristine_git_object: 86a91b3211b5ea77cf71a1dfe0a16d934f35cb83 docs/sdks/employeepaymentmethods/README.md: id: 805c32ccd865 last_write_checksum: sha1:972caad4613ff01812ddf8e3aaf2c1b307855ad2 pristine_git_object: 7f36f6e164dc283be73a7a1e217150aec19b8890 docs/sdks/employees/README.md: id: 3adbd327ce9d - last_write_checksum: sha1:35c029a2af3494ccf482c748498079bc82768465 - pristine_git_object: c6904038e1855bf84789032d1a37ce686d4eeaea + last_write_checksum: sha1:9154eb4dc4bb2cf28897729005b70935426b3876 + pristine_git_object: 85a96ffd13e4888aff7ce3cfe812b2b0c018cab8 docs/sdks/employeetaxsetup/README.md: id: 65804e377e2e last_write_checksum: sha1:4e2f04e154738a094a1d7976518ad84f054cad5e @@ -7144,24 +7708,24 @@ trackedFiles: pristine_git_object: d35ccebe3ac1043895c4f5f3e72d1f419935e657 docs/sdks/externalpayrolls/README.md: id: 3ef919744e64 - last_write_checksum: sha1:71df79ca13fa79ac3c3101b72fb03e8f9d678871 - pristine_git_object: d73f6792785ea66de5d6faf01542e2c3c0414b9f + last_write_checksum: sha1:440a52a36a28a57a05652471949b575813f8a15a + pristine_git_object: 41d2299844813c0da2945bd28ade5a8e221c44d6 docs/sdks/federaltaxdetails/README.md: id: d3272089b17e - last_write_checksum: sha1:aa9357ca78937e32cd61e0a223277d3ce21a494e - pristine_git_object: f9cfb9987836b8bf54b4a031baad68fc1750ac47 + last_write_checksum: sha1:1691d91692825b09f8b6ff56e774bb297b760398 + pristine_git_object: f97b691aa343a8ec29b81d933e83b445732fc44c docs/sdks/flows/README.md: id: 1e486772e924 last_write_checksum: sha1:28c15dc470f71286357a3f4d75d1893746898214 pristine_git_object: 94ef0715ecb3a982fc717d673ecb6678a84201cc docs/sdks/garnishments/README.md: id: 6758c2e254f5 - last_write_checksum: sha1:8e52f0e3aafcac099926c0552711b2d363772f12 - pristine_git_object: ce932814fe7676299b6c90dcb7d90e00357ad811 + last_write_checksum: sha1:3dc272278271ac38703c93fb3899fae54e9616c3 + pristine_git_object: bca3fe26a37d6a4acd880292982aab8ef1e2c4be docs/sdks/generateddocuments/README.md: id: 5072871eb0eb - last_write_checksum: sha1:a31ae8eb1337f9420f36811b0b1f36fe8cbb18da - pristine_git_object: cca180ab562c6e750cb9c77dc7daf66fed86db86 + last_write_checksum: sha1:8c08561976ee2a752cebebbcf4caf761be95efdf + pristine_git_object: a8a97bc01ffbf83abbfede24272a32c1a8d1d342 docs/sdks/historicalemployees/README.md: id: 38adbb7622ee last_write_checksum: sha1:16199540a86a638675cb10392143a9b314f5001f @@ -7176,52 +7740,60 @@ trackedFiles: pristine_git_object: 6fcb6577baf72df3bcb4498b6fbaba843b90cffe docs/sdks/industryselection/README.md: id: 6633a8a37ae7 - last_write_checksum: sha1:21afe203f85b4b4b17e5af5233277a6b697917ee - pristine_git_object: 4228d4e144810d3077c478bba1154779a2bc2a59 + last_write_checksum: sha1:0474da258c87e2c0d1b4e78851788f2298258aee + pristine_git_object: fa3a8d4fb656568df4dc3d57c04b997cccb69fea docs/sdks/informationrequests/README.md: id: e176ae9536c5 last_write_checksum: sha1:d6e60a2f5329e822f2ae2c45619b1eb25985dab2 pristine_git_object: f0b3830038bb556d7ef7e6719b0aabae095f1245 docs/sdks/introspection/README.md: id: 9f867af7c1f3 - last_write_checksum: sha1:1936ca058a770e23c0d0b886187edfb0e6b85bb3 - pristine_git_object: 4f7b6d216c245b22143c1ff5aa3ae1168507e5d1 + last_write_checksum: sha1:467ba159abdbd977cbb23004ed5f8a6fd66b5498 + pristine_git_object: e8848fc059157d7c12c2d5e7ab641e5c656ba7a2 docs/sdks/invoices/README.md: id: a3f76a06eded last_write_checksum: sha1:81be7fe78077330d44b8b34ce6a9aa95930d8e86 pristine_git_object: 03c9e9d6ba55de39a844445a422e873334045f57 docs/sdks/jobsandcompensations/README.md: id: f262ef7b4c37 - last_write_checksum: sha1:7687c472fed1c459b712f44348e924ec5e1dea50 - pristine_git_object: 3e90253d5010945cc9b6b965fc40c7c0f72097c1 + last_write_checksum: sha1:259d539d63438054d4c87ed7e1894ba94144a49e + pristine_git_object: 2ae6a5fce22a41d9b64b38063b95621420537491 docs/sdks/locations/README.md: id: 18f4bc68d8e9 - last_write_checksum: sha1:eea04dc896d412dbe97a4f133dfad9636d9b6136 - pristine_git_object: 1377c4461758638ab26e8ffc014b2500fbc0aeff + last_write_checksum: sha1:0627b770fa7cd7c3b664bbf237c378ef5767a5db + pristine_git_object: 4eea2550209a8cb541206d67adbfc8f1aa53baad + docs/sdks/memberportalinvitations/README.md: + id: 633e8eb21d54 + last_write_checksum: sha1:a5d7fe861367af8d4c11c192b949be00f949cb94 + pristine_git_object: 9d1a5f52afff61e540cff6fd924bef16219d4f44 docs/sdks/notifications/README.md: id: 271bac956045 - last_write_checksum: sha1:f704edd966c10db9fdc3e504cb97c7b528b0dff0 - pristine_git_object: 8859af988a224f1f58602fced074c121a6a2d283 + last_write_checksum: sha1:a09738e7380313e0a9cbb90a4164da307eb1de2c + pristine_git_object: b42ee067e14c609337ea5b422bcc1707430ccedf docs/sdks/paymentconfigs/README.md: id: a5944d10a31f last_write_checksum: sha1:4fd8bfba4c2c87eac29ee4cfba6a01d5844063b2 pristine_git_object: d2a73082f49604212684d527f6cbcc7958ec8f55 + docs/sdks/payrollcancellations/README.md: + id: 7eaeae3e2673 + last_write_checksum: sha1:32f80babd595dea529181f44f445bc3dfb07f2cf + pristine_git_object: ab4e6b161486cdebccdbeab029b860ba27662e0f docs/sdks/payrolldigests/README.md: id: 0f533581818e - last_write_checksum: sha1:c75abacd42b5d03295a24d2eb2a611149e88823b - pristine_git_object: cdd90a5c08fcff3c061b8b580d3e93fe6ca269d5 + last_write_checksum: sha1:17545d1a177ba003211e6c03b71d37d9065570de + pristine_git_object: 1b09969747b317d8c3811f10cfd241a04cbdcc4d docs/sdks/payrolls/README.md: id: f6fb115a2746 - last_write_checksum: sha1:3a7827e87ac0097b618133b660d955c4a1c90041 - pristine_git_object: 534b6bf3d1436d75c76e046fe34880a177e3f199 + last_write_checksum: sha1:b45a99173544c092f2afb5fe94439a8b24b8b1ae + pristine_git_object: 4eab7d260cb01d7ea9df7e52298b3e257d2c1cb3 docs/sdks/payschedules/README.md: id: c0aa724eca5e - last_write_checksum: sha1:2692915f752e5292adb6a48f382c88edc0a09d7c - pristine_git_object: 103e2884acdfa78192ddd95e8ce102ae53009ff3 + last_write_checksum: sha1:05adc671936ef2a1ec5f92788d55509e2814764e + pristine_git_object: 1a051c6ed76f11569a03bcd5115dc0ad885029d6 docs/sdks/peoplebatches/README.md: id: 9ac77915c062 - last_write_checksum: sha1:727653553616acd56994a987b9558ede61f95e80 - pristine_git_object: efac83a12dac0f16999dd85bc208d6e583db97e5 + last_write_checksum: sha1:7d7d131767f58d8227a7f2928e30eb555b795baa + pristine_git_object: ab2587e7f896430f783266136ba05b3345b759ad docs/sdks/recoverycases/README.md: id: 31e46e1efeef last_write_checksum: sha1:f74ef795aeda2549f3dfe9fa1b2551a1d5561b79 @@ -7232,48 +7804,56 @@ trackedFiles: pristine_git_object: d8d83d9661fc08609799bae9efce884541826502 docs/sdks/reports/README.md: id: 66bfd66f1efc - last_write_checksum: sha1:38ea6c657301c0f463aa1f6876a4c634fd6bfb5f - pristine_git_object: d54e908607f02d0c7a2af63a33b4beda5ebc0ca6 + last_write_checksum: sha1:498831764294d8a2f36f214326659ab834662f6f + pristine_git_object: 156ab9299eb32cfcd39feb7f4ed441bbd854d672 + docs/sdks/reversewiretransactions/README.md: + id: f7259ae5df40 + last_write_checksum: sha1:bc3804e35a5d3cd304e5841e1947bde10e2202b2 + pristine_git_object: b54789533eda0e8b5d715c8e60b6ad664001917a docs/sdks/salaryestimates/README.md: id: 6793d2b9fcf5 last_write_checksum: sha1:f2aa9e1d49c4a627183cd65dc9ce5f95561dab54 pristine_git_object: a796f5e81e51430d50a577e691e26645c59ef1f7 docs/sdks/signatories/README.md: id: 70a385fb9412 - last_write_checksum: sha1:9b368d1df2db4c5a840784feb8294937a00e13ec - pristine_git_object: 07ae945349f9248b607565a92de0d21078b81c0e + last_write_checksum: sha1:5e65ae8d111669f34b3d92bdc5cd07579c3a35c7 + pristine_git_object: 4d48eefd67c8a20c9625ab569cbe3d56015b2fee docs/sdks/suspensions/README.md: id: f304a2d5ba91 last_write_checksum: sha1:e454e1218d97907c0ae1485139672eec1fdc062a pristine_git_object: d0bd3e31c9751a44d117cf2579865dfa3b0011cc + docs/sdks/taxpayments/README.md: + id: 973352999eca + last_write_checksum: sha1:9e7aeeab589d2231764b3f2937578809c400b71f + pristine_git_object: 9e8fff3754623c84f31e6f2e885d542564bc4e8c docs/sdks/taxrequirements/README.md: id: f686b8175c1a - last_write_checksum: sha1:5d9c84ff4a5f36d65cd332100ea0c51be2cd35bf - pristine_git_object: 75383c5764befad5a30c71ff2566bb8fdc2fed84 + last_write_checksum: sha1:a1a2875689d28068c7174b02c275cb5de22c4836 + pristine_git_object: f1d8fc402eba1219c447892c2358a5baa996a824 docs/sdks/timeoffpolicies/README.md: id: 8b8852bbde37 - last_write_checksum: sha1:c1efba179cc01dabf02b1d476d2b4f0e2affacac - pristine_git_object: 0a0185d35d013dc917b51eca281f46ea02e9a10a + last_write_checksum: sha1:7a365f6fd3a48275002615e4e3753e29b7c4b918 + pristine_git_object: bf9023d636bc987733a098a5b555259ba5c244be docs/sdks/timeoffrequests/README.md: id: e94091d49fcb last_write_checksum: sha1:daa1cefb396b2037078365a266df3446e0b7440a pristine_git_object: f17654c24fbf6555e43b2eb98a3a87054d140406 docs/sdks/webhooks/README.md: id: e21b32d786a4 - last_write_checksum: sha1:eefa7c5ac44cc045aa1258b22cc3b808fc6f6b5c - pristine_git_object: ee2a7c3d046295c57ff2fcd2edd4bf8ad45bca87 + last_write_checksum: sha1:0e0a97d81daefc2f354ebdc3830c4a08c8578a48 + pristine_git_object: aff618f6c0ea33d2d000b25606188a9df5f1ffcc docs/sdks/wireinrequests/README.md: id: fb21b6718da2 - last_write_checksum: sha1:d3011c3a72f61b75f14297af3ebf9cb433774169 - pristine_git_object: ff5dd58aef78c91719940930467e1e6e0460eaaf + last_write_checksum: sha1:2a7b8e5df742413dd643dd77447dc61673c6a310 + pristine_git_object: 281007dc4e09235faffe9dd87f6025fa01a71cdb docs/utils/Blob.md: id: 3d9a7c4ad67a last_write_checksum: sha1:9104bf7334d79efb70f997e23c30eeca224a9623 pristine_git_object: 2555371fde40499ff8bb02f1f314dc4992389e95 gradle.properties: id: 2afbb999f001 - last_write_checksum: sha1:4806e331a7447559d21bde59f8a71272699d95f2 - pristine_git_object: ce86ac24c6f57ceffcefc81df2facb13375335ed + last_write_checksum: sha1:eb0fed2d53d63ff9d917ecd34308ec51b9fb43dd + pristine_git_object: 5afb2c6c0d3f2920805e3582b177841615c76b25 gradle/wrapper/gradle-wrapper.jar: id: ec27dae6e852 last_write_checksum: sha1:f725fb1467084142d74fd7cd8eab691ab3442611 @@ -7296,36 +7876,8 @@ trackedFiles: pristine_git_object: 47f489c8a4744ab4f795e7aa28bb8ad0b0f865d3 settings.gradle: id: 05efc8b16577 - last_write_checksum: sha1:b6694294e108cd46bf53b1b107a7285cf269f734 - pristine_git_object: 9362b0593441eb7e395a244c3440a90942354428 - spring/GustoEmbedded-spring-boot-autoconfigure/build.gradle: - id: 76ca39958f8a - last_write_checksum: sha1:799f092cd17f3623e82f882c4ec6f3e7b9a2e993 - pristine_git_object: e5032894762089308ac30bd2414c6690d5121b7e - ? spring/GustoEmbedded-spring-boot-autoconfigure/src/main/java/com/gusto/embedded_api_v_2025_11_15/ConditionalOnPropertyPrefix.java - : id: 2c7a220f6e64 - last_write_checksum: sha1:e15e5d19f688c8f4e90369f585de60ffcf789f41 - pristine_git_object: fef725dd4da4bd33a425f335c88bade5d585b18b - spring/GustoEmbedded-spring-boot-autoconfigure/src/main/java/com/gusto/embedded_api_v_2025_11_15/GustoEmbeddedAutoConfig.java: - id: ffa78da17a3f - last_write_checksum: sha1:575219159cbb9af488beaef1146aadd867a7c789 - pristine_git_object: af10becfb64223355e0b809ab70370d45bf0703f - ? spring/GustoEmbedded-spring-boot-autoconfigure/src/main/java/com/gusto/embedded_api_v_2025_11_15/GustoEmbeddedAutoConfigProperties.java - : id: 92a224373ae5 - last_write_checksum: sha1:9a51126064df93a35797a8b4ba5676ef239aca44 - pristine_git_object: dcdcd4fce17a8486ea2995fdd359cb984313be8f - spring/GustoEmbedded-spring-boot-autoconfigure/src/main/java/com/gusto/embedded_api_v_2025_11_15/OnPropertyPrefixCondition.java: - id: bbd5ce425573 - last_write_checksum: sha1:2706c8c85d31d63fd26b79d65f133771e1f8499d - pristine_git_object: 58257a39fb96fccb4589f101935378719ed79bb8 - ? spring/GustoEmbedded-spring-boot-autoconfigure/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports - : id: 496839c32c94 - last_write_checksum: sha1:d0ba4b316b3023c2fc451a939cb88a39d32df99b - pristine_git_object: 627143490b27f81d8280fd84be3c46c681493ac9 - spring/GustoEmbedded-spring-boot-starter/build.gradle: - id: 9a7dfcb4d70f - last_write_checksum: sha1:de3eb2e85d672b39be14d7c80886f985fe27bd1f - pristine_git_object: 2111bc5aa6da87c1e20da23cb980efaef7fae3be + last_write_checksum: sha1:2f838e8bf1b604a51492d9e16f70df055cf22c78 + pristine_git_object: 02d3671b1cb25e791435ee6fba474b88e4d9ee9e src/main/java/com/gusto/embedded_api_v_2025_11_15/AchTransactions.java: id: 61f1f2d19733 last_write_checksum: sha1:ffb72c7d5de296b18c0c92efb6060508a0b58175 @@ -7340,20 +7892,20 @@ trackedFiles: pristine_git_object: eda53cb27280865d7a08d5edf5bb03e977d3fbea src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncCompanies.java: id: b580e6a6dccc - last_write_checksum: sha1:527c429198586a2ab861ceff5632b5a83d3b437f - pristine_git_object: 04c71745588364d0746082f1cad0d6b8988d493d + last_write_checksum: sha1:1192f801664f335a59f8b1262777e53b9c90a66d + pristine_git_object: aab8a60d009651e3ed641e9a738e70f7629c0489 src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncCompanyAttachment.java: id: 3ac7473dbaaa last_write_checksum: sha1:07a7b3929b29afae3826d5c97f95b2e7480a3b75 pristine_git_object: 75ede5069b4a587253eb8d18fd5cb29fe39fa34b src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncCompanyAttachments.java: id: cdf6f6b32eca - last_write_checksum: sha1:7b01542e05e1a68772b780ec25decc435aa44519 - pristine_git_object: 390eca7b0b21da270838205a86d3a4531f812c1a + last_write_checksum: sha1:853195b28c980b6772969f98797c9b31c75dd480 + pristine_git_object: 43c3b41027c7155b080012af9fb1b70d5d78900d src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncCompanyBenefits.java: id: 3d21dd8d7750 - last_write_checksum: sha1:6f3a8859ca049fcd6b1dbe9e1ab84373620aaf96 - pristine_git_object: 74aa75355c54270a4bbfadce43023ee01aa1bb31 + last_write_checksum: sha1:2902c47fd275a39849a16d064d327707a12f331b + pristine_git_object: 199b3f6a45f67b494d3740368e2fdac542d99755 src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncCompanyForms.java: id: ec75112f7679 last_write_checksum: sha1:0d6eb92120a8465a10ba51f3895bb3f415b3029e @@ -7368,8 +7920,8 @@ trackedFiles: pristine_git_object: 5966d14994f690cb01b94228f5e218c06c4bcd8d src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncContractorPaymentGroups.java: id: 25dcca20c80c - last_write_checksum: sha1:6d98227a77918a2d9f48ab6fcea13efdfc2a3bfb - pristine_git_object: 36bf15e98c1e98cbc91af497524f555b20de9929 + last_write_checksum: sha1:045c6d3eb65991a1d4b8cce791b3f92f027af4ce + pristine_git_object: d32839bb9fcb00210c31ddd179a21a757e81f833 src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncContractorPaymentMethod.java: id: 67d1761d4ff0 last_write_checksum: sha1:91ab490fe5ba2f3998c536aba595e293936d4516 @@ -7380,36 +7932,36 @@ trackedFiles: pristine_git_object: 6228e85ba7642ebae639d18a5aa5c3bcd9231d10 src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncContractorPayments.java: id: 0150cf99b1c8 - last_write_checksum: sha1:29fd3021accb3319bfee6a1ace94355465c000b5 - pristine_git_object: 8556a87207796871c03b9b67221a5295d4b51816 + last_write_checksum: sha1:838d1dbed8dec7e08bda6ed037efeeacb8b9364d + pristine_git_object: 8da34f0732ba4254df4d030921cccf0adaec02f8 src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncContractors.java: id: 99fd0b91ee07 - last_write_checksum: sha1:995507ced9d773ce8d22bcdba2541d31e10eaa4e - pristine_git_object: aebf19aeaf54461364746c4a2318677ff6cc539b + last_write_checksum: sha1:6a748822b7c4a62471903e7447cab22f0c4a95d6 + pristine_git_object: 0ad705d2fb4c104ab2828068746aad5957d17ff0 src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncDepartments.java: id: 89374866abf0 - last_write_checksum: sha1:b3b79023bf589113290b0f1f36c174729f2e30b7 - pristine_git_object: 68837a5376197057ae4f68618e3578e6b24a2cd1 + last_write_checksum: sha1:2e9e1a9efe0a6c164f83e87803d46d24dba3c168 + pristine_git_object: bb22424ee7ec95581300d3fdbe3215e34a9b3d48 src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncEarningTypes.java: id: e03995eae9c7 last_write_checksum: sha1:fa9f3da36d7d35c005374793188bb7136c5f7d05 pristine_git_object: fe20a7d7551a46058978ba2508dd77ec4cd1c271 src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncEmployeeAddresses.java: id: 6850d6ce0876 - last_write_checksum: sha1:67a9fa40952548f9c38a23ecf4d63c5b939e521d - pristine_git_object: c0fadac15d3a08eeaa8105538716fecbd42a9df6 + last_write_checksum: sha1:b7a0f81853dae49b868d7e695cd5dabf8b0fcdff + pristine_git_object: 9fb26dba12f3841cd2d33b238980389d3338f99c src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncEmployeeBenefits.java: id: d54c30c1cba0 - last_write_checksum: sha1:106e7fbe6f4fd805c93651ad4c55a187c2f113cf - pristine_git_object: fc0db4c5821f01011f0c0ded55a789dd9dc85c48 + last_write_checksum: sha1:a7b32b5d08f0004c4e90221038bf46745bb5d962 + pristine_git_object: ba607804d8a2c19887f7fb80467af33977e214c7 src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncEmployeeEmployments.java: id: e694ad83c499 - last_write_checksum: sha1:82746f9d7e050e8f42a3e4b1f96f9c3507e27c20 - pristine_git_object: caaac212029cc85868925ea767357c8ba811422e + last_write_checksum: sha1:370f27aa86167651f7006318d5b8ce10437b73d7 + pristine_git_object: 91387bc2247aee0f72377d94cc0728d1c76c7a5c src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncEmployeeForms.java: id: 87c1ed621daa - last_write_checksum: sha1:3feb7c9a47a021cf4ee664ef2119f3c0059f3199 - pristine_git_object: 1baa425027ab1cb39dd4a6d7004275a3f6f73967 + last_write_checksum: sha1:c0c61a01e89a1e329c04710b8f945146f34e1401 + pristine_git_object: d838cd23b17a8c4e752a4252ac3854b1f6203548 src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncEmployeePaymentMethod.java: id: 65532f87ce1e last_write_checksum: sha1:3242e6612d2c1b046de85daf4eb34c391b552c83 @@ -7424,36 +7976,36 @@ trackedFiles: pristine_git_object: 6cb6f3b11df1531dca11bfeb7eda1dd71565717a src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncEmployees.java: id: 758367ce14be - last_write_checksum: sha1:6407fc994bef2f6a639a2b477a793cbf64dde24e - pristine_git_object: 70e37e8178fc92585b4ff2bf09b47b89c6a2765c + last_write_checksum: sha1:8368852df6db08254b779ef8d8b3bba45d77c040 + pristine_git_object: a00645764bc8f714c0fe204d28d29f022127e293 src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncEvents.java: id: 0c1ba30e59ca last_write_checksum: sha1:ac6810c2d5ce29244ab47ba99395cf1a710321c6 pristine_git_object: 79f1458926a73bda96f02c62df4e87c19baf2932 src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncExternalPayrolls.java: id: 98993b3b102c - last_write_checksum: sha1:23c2b8ac745eb859d26ad2beb1882aab91ae3fcc - pristine_git_object: f2a1ae1984182e3f357d5dba494bf1acf134798b + last_write_checksum: sha1:c097af97c3bba1669efa5dfe20d88f9baf224a91 + pristine_git_object: 082f5c126a5ab10dc29661df5182a516a4ddbc5f src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncFederalTaxDetails.java: id: b995e9164112 - last_write_checksum: sha1:0356485ed5b2c24ef4e4616db391eb2ebc00c0ae - pristine_git_object: 75da6835a24841b57a6b7d401cca04d729d21f06 + last_write_checksum: sha1:6b9452606550a92254ad7702042cda5634c63c7c + pristine_git_object: 7c978787e5cbec0992ba1317b1c2d9b7574b4467 src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncFlows.java: id: 8a31ef66fdfc last_write_checksum: sha1:eeb5ca1249ad1a0a837743488168ba16ebbe1156 pristine_git_object: e3b61eae6c377720ab2d10952ca9a5d63762ce1a src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncGarnishments.java: id: a37c05ac5f2d - last_write_checksum: sha1:7a40d542aa530fbe22f3655e14e8a2f4c8feaf35 - pristine_git_object: 318bb963d3f843122d9bfdf7b12a1f4b90932ed9 + last_write_checksum: sha1:309f0e164863f878ccad199d57807d6efdd59ea3 + pristine_git_object: 04a7f803c8a3a5e302731c57c750b6f9a3b651a5 src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncGeneratedDocuments.java: id: 6e1bce66d986 - last_write_checksum: sha1:c9709ae380cee08345cf35b8f01e938e870fbf58 - pristine_git_object: 27197984cdcfceabdd3a04d4535a6b5257423ca7 + last_write_checksum: sha1:d0afcb4612c7b0902f3385be59c6cb3e208e4c6a + pristine_git_object: e22cd5924807ff7f37d481ce2fb6a16c7964b4d5 src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncGustoEmbedded.java: id: 7141b8be742a - last_write_checksum: sha1:9e8db036b5e135c75146081d681e232ad9724750 - pristine_git_object: af3462fdac19eed3d4dd55fb04cd06dd6f4b7be1 + last_write_checksum: sha1:730679e58d3bd3002ec633d1af331ef42b564bcd + pristine_git_object: f62bcda9e19a461fc9827446b5c369feb5ebaba3 src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncHistoricalEmployees.java: id: 53f0697e8a56 last_write_checksum: sha1:c1679b3cf6a120e528401d9d85bce07936ec5e03 @@ -7468,52 +8020,60 @@ trackedFiles: pristine_git_object: 5cf05fa7428348e3688714f69ae4919acdb563bc src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncIndustrySelection.java: id: 5dde4c1ddbaf - last_write_checksum: sha1:052cbf2eeeb569f01ba3f53301d974f3242749e5 - pristine_git_object: 6bd6bf701aa1360cb6e250c69e67c88bb52ddd68 + last_write_checksum: sha1:65c0b99d814bfe064c00bcffdf559e021e23f62f + pristine_git_object: 0bfbe6d957629c5722058324bacf0382ec1f5620 src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncInformationRequests.java: id: 2a8361a0c20f last_write_checksum: sha1:0ba1727b51c7cf9f854abd5a3960fd7577abee76 pristine_git_object: 7a8ad669861c4938c53fc211ebd969e9571b2bea src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncIntrospection.java: id: 5937a0d76d2c - last_write_checksum: sha1:c8203dedfebb9df8aabafa8c2d799483e87b4bd0 - pristine_git_object: e65d3b6ef69918f7d576920ff4adf9de582f0c1f + last_write_checksum: sha1:e5618dc59231dc8bf0d3acc714b042c462889bd4 + pristine_git_object: d1de277911fc25b9835d33d107d1d870cd178d39 src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncInvoices.java: id: bdb32068587e last_write_checksum: sha1:58bb0e00fa0529d4e25e6af1127a6a105e9851e8 pristine_git_object: b22ddec005d54c89d28f3ae85c75a2188a02089c src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncJobsAndCompensations.java: id: e0e5fa04d389 - last_write_checksum: sha1:58380dda2696038b65b7c4e8002e8778f20153bd - pristine_git_object: 07525437dd535f5b1fee9e40320dfb6bbd1b2597 + last_write_checksum: sha1:a9ebff9490e9f9f11e9baff3114eb47fdd4334eb + pristine_git_object: 3d81d0d2ae980818cbaa974a941b8540be4e2a9d src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncLocations.java: id: 03bba1e48de7 - last_write_checksum: sha1:0d439643785037d302b132112b5b03b786ed4ba8 - pristine_git_object: 41bf2a50ab7b61fde9eee062fd8665e944be1dae + last_write_checksum: sha1:65596ad4dbadfa3b0b04c633fc4f520b01cfebc9 + pristine_git_object: d3a7be740cb1b154f0b370650185f72ab1e03984 + src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncMemberPortalInvitations.java: + id: 436ed07df9d5 + last_write_checksum: sha1:f5aa02d4fd15701a771eea2206a1fcd7056a4b03 + pristine_git_object: e40a7b1c79acef46370de68f841b52ad3c557d0e src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncNotifications.java: id: c55bde2f21f4 - last_write_checksum: sha1:0754ea5bf240df4207848fb28996adfbc28796c7 - pristine_git_object: 54c5fc2481df2660883af9b3cd408c368a5d740e + last_write_checksum: sha1:446588a37488583c340d305c50d33a3ced4254bf + pristine_git_object: 312c8dcd5e9d5d2b1d7e3d605e87c1e01053cab0 src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncPaySchedules.java: id: 5ac6905464e4 - last_write_checksum: sha1:036871b31e855f3a7c611fb3ee9d920b3fcc5532 - pristine_git_object: c25250675f05eb31e556b7ff3c53e5c6031e37f2 + last_write_checksum: sha1:70497818b8bb190bbe18e097dd89c344ed25a531 + pristine_git_object: 0dd9a7b1f74fe1b307184afc51299d8a25cb50ec src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncPaymentConfigs.java: id: 2ad4262fd0a9 last_write_checksum: sha1:e708c718ec12f5c220e60ab0f354a9961758a413 pristine_git_object: c7f61ebee003a89f6168e4442d7aa1b6406c4431 + src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncPayrollCancellations.java: + id: dc51449f3ecf + last_write_checksum: sha1:738b9db0b0dd93d3db5ab3c0d1215aa7a0dc5f0b + pristine_git_object: 27c4b9963535a5c594205b3c5309531d14986c02 src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncPayrollDigests.java: id: 50fdde3dda9c - last_write_checksum: sha1:987cb1e10ec8ce79cb2ed4047e34da00bbbb07b2 - pristine_git_object: bac0384df921f9a89546138e031a47e9b7e067af + last_write_checksum: sha1:7a04582afcb8b53cd9dbad9c3f8610216cfdf9e3 + pristine_git_object: 96e4017b210c5028380da04b45297e3834369df8 src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncPayrolls.java: id: 824c5bf84d9a - last_write_checksum: sha1:b905261e69d634231359cab622b5ccb9bfe16edd - pristine_git_object: 554df8eefb2acddf4ee80dd1ef251bc55d68d40b + last_write_checksum: sha1:a9fc3915d3c4b2f452aba2b58f1d70a01bf3b321 + pristine_git_object: 3eb5cbd677c179d2b1a03f55e725fd15e4563800 src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncPeopleBatches.java: id: 89bbf73d06bc - last_write_checksum: sha1:a54af6a7a8e28f2f6af9c27a80ed3cc21f6e8e54 - pristine_git_object: b0b6569c4c8be427d773e1c3c95649939a852ccd + last_write_checksum: sha1:d96e1655a65cd0415440763c8b19781872a3c584 + pristine_git_object: f17f1c6424fb3657a57b0ebf9327a1efba5aa62e src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncRecoveryCases.java: id: 4c80e605739d last_write_checksum: sha1:249d36e68272fabf6f4ddedf54cb0de224077766 @@ -7524,60 +8084,68 @@ trackedFiles: pristine_git_object: 7590afffc0c4201b604e1eea77b6217afc9f4854 src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncReports.java: id: 6097558acdc5 - last_write_checksum: sha1:1818be5b6ad3aa2271cf7fb3224a64e8063fb626 - pristine_git_object: 7c738a6e533e67abbb451ae0a3fe344317f1ec71 + last_write_checksum: sha1:4b3a2f9f2e3fe5ba3b78ceec71d1f86f2445939b + pristine_git_object: 00599d322dc990d5429188b222f0db7615e84b4a + src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncReverseWireTransactions.java: + id: d2001b2a2f3a + last_write_checksum: sha1:6ca69db9644d32b4b9f0c65debdb96eca3e7c972 + pristine_git_object: 3ba1cfb1cb63b20fcf1ecacfa7d1d4bcbade6023 src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncSalaryEstimates.java: id: da671890188c last_write_checksum: sha1:9f7294a966432a5fc62d99d2a6cba9262ecee421 pristine_git_object: 51527bd049fa729f533ac2820a20d7d25859c008 src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncSignatories.java: id: ef1322312ea5 - last_write_checksum: sha1:a2615c9c4c30aea8817b1ec2c195805e453b5dae - pristine_git_object: 88595d8deff6b9e77af192b4f86ca934487bce94 + last_write_checksum: sha1:bacc152981f9fff0bf17c0c94e627c3b2e998475 + pristine_git_object: 7e5f0e63713252dbd29efd7b71e691beb31d0034 src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncSuspensions.java: id: 44f4b230f40b last_write_checksum: sha1:dc3158ee20a1dc0a7694973dc8e61092f60ec9dd pristine_git_object: 50fe0251e6d1f266844e685d29e6aee436fff728 + src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncTaxPayments.java: + id: 7647d2164b80 + last_write_checksum: sha1:6dbd5e8b77f0f07af8c676a60a9fb14027f2a360 + pristine_git_object: 8c16395ff38d900beacddfe8ccbf84646be0debd src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncTaxRequirements.java: id: 4ad03d73ec38 - last_write_checksum: sha1:972540fcef49a5153952a3e62d391ddf4e6df281 - pristine_git_object: 750a1973a51aed9f2e66160a7604bae9f1145ede + last_write_checksum: sha1:c2cb0306639d12bc78657223cf659f65f724c0ae + pristine_git_object: 1e4737a1467f33181d66706708ffb6ba74135acf src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncTimeOffPolicies.java: id: 6ef902efdc57 - last_write_checksum: sha1:655f458c3a60997a4d3077e230e5165771cd9cf8 - pristine_git_object: 65721c4ec796376163b8ddd4266e4b07c3710348 + last_write_checksum: sha1:5db88f613ee33ee508f6f08997a1b1801117ae1e + pristine_git_object: 9b88efef94da68fe7446ae92e65d12c219ee4c45 src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncTimeOffRequests.java: id: 1d5660ac2eef last_write_checksum: sha1:b91f8f87f81f9545f73c695c1112c7c8dee5e121 pristine_git_object: f3670360341c734eaaf4df609191bb1f05d74d25 src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncWebhooks.java: id: 105c128e7f58 - last_write_checksum: sha1:c93b119046818025ec0a9486605b80e80bf658e6 - pristine_git_object: 048baf509dd24c5addd7e36988f7fd8880402ef7 + last_write_checksum: sha1:a15e6d55300a3eeb74357800591bdf9e3e30e6ab + pristine_git_object: fd554eef9c77927942d5c98d96cd486aa93141b6 src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncWireInRequests.java: id: 8ecc030f2a38 - last_write_checksum: sha1:eb78c1588f9bacf328faf3b6395bfd206eb7f0f4 - pristine_git_object: e2d176ddbff1140b074f6b592ff37e7bda1f3a1c + last_write_checksum: sha1:c5769c385491a24f31023173bafcb9feb34d1bf2 + pristine_git_object: c85ffafa0225e4e40ad17a53413b1333854db635 src/main/java/com/gusto/embedded_api_v_2025_11_15/BankAccounts.java: id: 60c36c719396 last_write_checksum: sha1:b7beb5682c187fff498bdac76d00893ea12fa7e2 pristine_git_object: 03ebc47c328deafd92bdec35e720da6ff5e38394 src/main/java/com/gusto/embedded_api_v_2025_11_15/Companies.java: id: 736f2be7141f - last_write_checksum: sha1:d6d5e355eddf2e7761a626e107ff7d698b521f82 - pristine_git_object: ced1578a76051b63b034d5c5f7730d4681ed7912 + last_write_checksum: sha1:60828f0b6b34f19928f5d2f860a066bc5f06e717 + pristine_git_object: b9b5cb60fca77cf2a993f40da4cb06ce564b649d src/main/java/com/gusto/embedded_api_v_2025_11_15/CompanyAttachment.java: id: 7909c16baa45 last_write_checksum: sha1:15c8f7a475afb9fc2513c85548d1e3cf7cb1cb2e pristine_git_object: de6cbc9a6a6da982fe5c5155ba798d337aefda4e src/main/java/com/gusto/embedded_api_v_2025_11_15/CompanyAttachments.java: id: e64fe2916040 - last_write_checksum: sha1:5119662f5d91c5ef10ae477de316648b2123f4bc - pristine_git_object: 779cb43f2b558be0d06784d9b2ebf7e68813e534 + last_write_checksum: sha1:798342a52d7f04efc2a62b57b12da12a8a457e95 + pristine_git_object: 9c2ffa6855b352cb17c8351ca8b6954b6ff0b740 src/main/java/com/gusto/embedded_api_v_2025_11_15/CompanyBenefits.java: id: eca43064c133 - last_write_checksum: sha1:24d2dc016f708fcbfbe02bf6e21ed2647ca4d66c - pristine_git_object: e02465e5b76379f5ab25b698b3f580854c9175df + last_write_checksum: sha1:ba7ec773992eaaf71d2dd0afd246b756057fa13d + pristine_git_object: 93be690995b1307c55bde3917cf2ee1191b087df src/main/java/com/gusto/embedded_api_v_2025_11_15/CompanyForms.java: id: 49d73ed898d1 last_write_checksum: sha1:9a5afe974d564ed96ca669194ed87100fd4a1394 @@ -7592,8 +8160,8 @@ trackedFiles: pristine_git_object: f41f6536404df3ba4fc445079465970e3710b649 src/main/java/com/gusto/embedded_api_v_2025_11_15/ContractorPaymentGroups.java: id: 84cc785edf05 - last_write_checksum: sha1:e71794fd02020ee31c4613c2e5dd15c47a6ff546 - pristine_git_object: 4b51c1388f3f67c93b1a87255d4f05e1d28d65dc + last_write_checksum: sha1:ed454c5a29fc46b26e58507836dcb5b9eb25f9dc + pristine_git_object: cca348c726584cf75433cda58ccded2de5ac35bf src/main/java/com/gusto/embedded_api_v_2025_11_15/ContractorPaymentMethod.java: id: c2cb81c409db last_write_checksum: sha1:3f0ed9cb8410964d27c65313e28e8c23171b86ff @@ -7604,36 +8172,36 @@ trackedFiles: pristine_git_object: b02ef883dae66e6a651af101fdeeeeb0123bb7d3 src/main/java/com/gusto/embedded_api_v_2025_11_15/ContractorPayments.java: id: f262ec5ca05e - last_write_checksum: sha1:f793cbbede3289918fbdb8442e6b7c89a4655da0 - pristine_git_object: 5b3617ec9909d7ce5addd8ba4c19c4399273178b + last_write_checksum: sha1:8b961144297c69fe5bf1a018e4a9d937faa29c11 + pristine_git_object: f432d9a44dde3b5e785cec58846f46a335edd0fd src/main/java/com/gusto/embedded_api_v_2025_11_15/Contractors.java: id: 2c6427cd3186 - last_write_checksum: sha1:4137969e839b74a941990b6c6057b8bdce0e55e8 - pristine_git_object: c5074171e1fa19ce19803e6c6fe40e9e7ddfafcb + last_write_checksum: sha1:befff3eb7020baf9d2588e4db96eacaee5bc7014 + pristine_git_object: e09d80d5fe04a9a3967700e6f9492b28050dde98 src/main/java/com/gusto/embedded_api_v_2025_11_15/Departments.java: id: 5ae04bfb8c61 - last_write_checksum: sha1:a9652b1b01baeb2e8de0a0642b35d4270c919088 - pristine_git_object: d16c3af99dd4ab089e14f09dc405a7d2cc87fb1e + last_write_checksum: sha1:2521eb4877d90c7b4972476fa17fb90e57fe820d + pristine_git_object: 44f355d6bcf972d2872d060860d96f9a19f5a588 src/main/java/com/gusto/embedded_api_v_2025_11_15/EarningTypes.java: id: 76e15bd5ee51 last_write_checksum: sha1:e98c59af9003a50ba6f7d39149ed3360a0e20668 pristine_git_object: dde439c8474a28ae0ae9459387a9927c67264303 src/main/java/com/gusto/embedded_api_v_2025_11_15/EmployeeAddresses.java: id: d1d73af6c973 - last_write_checksum: sha1:b1d705544df7b1c0f92cde2f67d747c955735127 - pristine_git_object: 997ce8fc7f4dd314ddde056ff2b50019a269dc8e + last_write_checksum: sha1:21c0b2e18389f020d43220c9a9c1cc418ae5f718 + pristine_git_object: 6b56d6934aa89c9f2b3df9cd25f66d3f91f724f3 src/main/java/com/gusto/embedded_api_v_2025_11_15/EmployeeBenefits.java: id: bf3d50789825 - last_write_checksum: sha1:83043af53e5b258a3561dac55398b9fcf6335609 - pristine_git_object: 5c8679a6ff4bf5f8c4ee785d20c1970544c1874a + last_write_checksum: sha1:8a8b5ae65e498782f7af665757f3afc3ac86a366 + pristine_git_object: b5397ac565d098a304dcda396df823a425a23f2b src/main/java/com/gusto/embedded_api_v_2025_11_15/EmployeeEmployments.java: id: fd1fe6de63fe - last_write_checksum: sha1:b8a09dcc9cff6fc9c086af9148eb35a9f3a65bf8 - pristine_git_object: 468b331de1010f586eae6efcc20b770980b607c8 + last_write_checksum: sha1:70d8ec782db53c2d0b5aeafc5aeb5d6d877c501a + pristine_git_object: d26017fc3ab926c8244efbb5b3194c043b94fe2a src/main/java/com/gusto/embedded_api_v_2025_11_15/EmployeeForms.java: id: 29869def45cc - last_write_checksum: sha1:fa36a509b08f9212ae696f29471725d9df54f6e1 - pristine_git_object: 3d76fddb2fff76e2f3765ecbe4928dbd085c2f5e + last_write_checksum: sha1:3ba01c76012379a402e17aeee2a0399cef7356b3 + pristine_git_object: a4c03979edcf6c1a40fe0c1d76581925a85f49b8 src/main/java/com/gusto/embedded_api_v_2025_11_15/EmployeePaymentMethod.java: id: d000b72451ab last_write_checksum: sha1:c605de5c9c5b3efdb9e131ee537f146b291de91a @@ -7648,36 +8216,36 @@ trackedFiles: pristine_git_object: c62659506897f4b73541f9313393a47ec600103a src/main/java/com/gusto/embedded_api_v_2025_11_15/Employees.java: id: fa9c4e3b0473 - last_write_checksum: sha1:df25828b008bdc36ccf9c82db6f151013de5fd84 - pristine_git_object: 1ceb8f3145fa80148bbf94fa8d6c3549447534f3 + last_write_checksum: sha1:5dc4d661c021a7c602f766b156d65712f1b93108 + pristine_git_object: ae3e69d97c64529b46460be4020134b4357d7017 src/main/java/com/gusto/embedded_api_v_2025_11_15/Events.java: id: 14572cad0e81 last_write_checksum: sha1:90d35be29023f0689a20fc2f57a9ed7fc069c756 pristine_git_object: cde75a53c5d8594ebe727b0bb2d6d8a58adda2b1 src/main/java/com/gusto/embedded_api_v_2025_11_15/ExternalPayrolls.java: id: 22b47e1c95fa - last_write_checksum: sha1:ffdf92ea0c159dd7b784a2b05a963471d068fd30 - pristine_git_object: 9b2e4b6022ddb8e5faba9b43f6ac086743cfc24f + last_write_checksum: sha1:bd471d2fb08967b9319272337352dc59e9867adc + pristine_git_object: 07b5e065e549fed7e7c610e215b9e38fd1fe362d src/main/java/com/gusto/embedded_api_v_2025_11_15/FederalTaxDetails.java: id: 4b0820fd9afd - last_write_checksum: sha1:e52fe3c4244da96f59505b25b284dec381627cb4 - pristine_git_object: e546c3c938629746ce267f620cba6505e3712d05 + last_write_checksum: sha1:6c6f807826b82c715ae2a533897ef0142a4bda43 + pristine_git_object: 0003244d56152456fc38a8d8978cd887d18fa71f src/main/java/com/gusto/embedded_api_v_2025_11_15/Flows.java: id: dcf1d5d2db84 last_write_checksum: sha1:3752d9ad55b59e35ee8edf2d847729c3ead7f710 pristine_git_object: 29e3ae138277ce6461737a5c99408458fcbfb6ae src/main/java/com/gusto/embedded_api_v_2025_11_15/Garnishments.java: id: c62424bb979b - last_write_checksum: sha1:71e4284fb54c2ec59cf9597202abb94d6f30d95e - pristine_git_object: 2809337fa91e72e11b3a8962b8464ee7fd80bd7d + last_write_checksum: sha1:4d5d235f6cae1935cec3feb03acfadc0992fa80d + pristine_git_object: 268d816e7c7d73e1e95eeddf4ecfd4514fd2601f src/main/java/com/gusto/embedded_api_v_2025_11_15/GeneratedDocuments.java: id: 8bc4736a5553 - last_write_checksum: sha1:22266672814df97a3b2ed12d5ecfe82d2309c51e - pristine_git_object: 7504d8383216ab5aa76715330f6e5546560c0f1a + last_write_checksum: sha1:6cb72e7973fb6b1c708d1a6c4eca5870e8198897 + pristine_git_object: 9dbe558fb6d7aab65c032c0448d8bdb798f72a55 src/main/java/com/gusto/embedded_api_v_2025_11_15/GustoEmbedded.java: id: 13ac7d48b2a6 - last_write_checksum: sha1:001dfa9ad74b38cd3f648c2cb37046b93fc94b08 - pristine_git_object: b33dea1887a490fe2e8e959ba13f8b3d169a43ac + last_write_checksum: sha1:0fdae17c49c1d780589f72c53223c47b1ee6279a + pristine_git_object: 5c8525c8fa79e17dc217e07a91919a75227a1d8b src/main/java/com/gusto/embedded_api_v_2025_11_15/HistoricalEmployees.java: id: 09b15e264609 last_write_checksum: sha1:7f0d1529de0638a8d72fc1a6324093dcf4c94c20 @@ -7692,52 +8260,60 @@ trackedFiles: pristine_git_object: 7bb5f36872230fe8b35027be06776ea65a8f5169 src/main/java/com/gusto/embedded_api_v_2025_11_15/IndustrySelection.java: id: 129b90347776 - last_write_checksum: sha1:db14b2e78b018b6c9ceff874d68e3ac80b4b99e4 - pristine_git_object: d13a6a9e6b7d60fadc67cf7d55e51d96b4c444f4 + last_write_checksum: sha1:8e48621439c7dd181dff4011a8db6b1cc7b84ab9 + pristine_git_object: a89c5fe16440ce782a92ad69ac627904f6a0f329 src/main/java/com/gusto/embedded_api_v_2025_11_15/InformationRequests.java: id: a0ee42070767 last_write_checksum: sha1:f21afd78610bcdec68ce69d2a4f3b118fc3ccd09 pristine_git_object: f5a9dd130a091d9bc3253b54a51635677bdc50a9 src/main/java/com/gusto/embedded_api_v_2025_11_15/Introspection.java: id: 53fac7325ae5 - last_write_checksum: sha1:9dd8b8570850e65607149962d02fbb11e6b6cd26 - pristine_git_object: a4ad9767b2bc11d40f271766a7567beb72f08b3a + last_write_checksum: sha1:6b3034d4b9df655b9a32d9009ae9cf35f4774d8f + pristine_git_object: 2525b005968a6929556cf0c7eb40ceec1da2a053 src/main/java/com/gusto/embedded_api_v_2025_11_15/Invoices.java: id: 6b05fee7465a last_write_checksum: sha1:37f58c4cb10a6fd808a4b00e0784dadd34e29344 pristine_git_object: 2895e37c1fd6d8a0e3494a80ca5d178c3f32ec23 src/main/java/com/gusto/embedded_api_v_2025_11_15/JobsAndCompensations.java: id: 122749dc2340 - last_write_checksum: sha1:d2a98274a27a9dbd6e5469b3708886a3d8b30705 - pristine_git_object: 199d4af092840f7f4001b9b7bdb4a6d990579fe1 + last_write_checksum: sha1:79efd50a59da31b40e6022ca592cec435b00f74d + pristine_git_object: 3dcb64686613bd327ecc9bfc0ce211931671a146 src/main/java/com/gusto/embedded_api_v_2025_11_15/Locations.java: id: 238ed9f8f48a - last_write_checksum: sha1:97f3b20b83020a1252c2c751e567af4a9da33aa0 - pristine_git_object: 51dc8ac8ec1abf568c0449b3cb45493d5c49022f + last_write_checksum: sha1:64e8f8c124dde56a7236310f5b2ad7b04a31a632 + pristine_git_object: 27a67277b7ae3ab700225cb4f25123dcac01c955 + src/main/java/com/gusto/embedded_api_v_2025_11_15/MemberPortalInvitations.java: + id: 61283d19abb3 + last_write_checksum: sha1:c500a42b367a5298c449afbb769879c911824e77 + pristine_git_object: 0014219d167284f7d3aff32aba60b61c82a0b0ed src/main/java/com/gusto/embedded_api_v_2025_11_15/Notifications.java: id: 9aea0e5e65cc - last_write_checksum: sha1:2d6f673d41c9adb505197ae8ab1d9bcc86319726 - pristine_git_object: ed9ba6ceb0ecc701055874ced88b26c08b8bd988 + last_write_checksum: sha1:1f487d3e0caa0d12c3d655b33fde92c7bbad1246 + pristine_git_object: 146b6d76f8d998c70511bd3062602fd9e75917b1 src/main/java/com/gusto/embedded_api_v_2025_11_15/PaySchedules.java: id: 97a9caf155f8 - last_write_checksum: sha1:9abb1bb2f26543af7807a2930740658180839331 - pristine_git_object: f96f11866177bf1dc5bd9687d6e3a83ed63e21e4 + last_write_checksum: sha1:b67c685eec81da7230ba45fb22fbf0ec1f49b3cc + pristine_git_object: d813bf18a363fe7e73b99733e28743967ec2d810 src/main/java/com/gusto/embedded_api_v_2025_11_15/PaymentConfigs.java: id: d42ceaccb4d3 last_write_checksum: sha1:f052322a18c1d902b968671f0150bccc0d93dc70 pristine_git_object: 7faa1f3f08705cce170bf354a3d265818f1ecced + src/main/java/com/gusto/embedded_api_v_2025_11_15/PayrollCancellations.java: + id: 4573468978b0 + last_write_checksum: sha1:3b4c2e8dff72c52425ae25d5e9751f3711543970 + pristine_git_object: c215fdfd54ba81c22370f0a00c4ed2ea7c6b2e83 src/main/java/com/gusto/embedded_api_v_2025_11_15/PayrollDigests.java: id: 8eb7fc0bf171 - last_write_checksum: sha1:4081cd905d3147b6ee3c73b949d83bfa2d50a576 - pristine_git_object: f1a2c7257ac499ca2e162d97520421d64f751dda + last_write_checksum: sha1:8ce749a80554e34ad203f1990a8344f703f720f3 + pristine_git_object: bdf331dc1bcee4299de745a40429ce08d9436045 src/main/java/com/gusto/embedded_api_v_2025_11_15/Payrolls.java: id: 5923acf216f5 - last_write_checksum: sha1:eb9e1b87179f1c0b5c224c103b5da4ae49b04d52 - pristine_git_object: 824c6f26d899b9739d9b6a02c7c71497eaafd0ee + last_write_checksum: sha1:fc2f559cc6fce950097e8d50405b22e4c3f8a649 + pristine_git_object: 581ca7d6fcfae5b9946745dbb10847db40efb56e src/main/java/com/gusto/embedded_api_v_2025_11_15/PeopleBatches.java: id: bad4c0b10da2 - last_write_checksum: sha1:07165999d2cab23f36e79efbbf20f45571703992 - pristine_git_object: 16cea78f02510769134dd38044b99bd372c0580f + last_write_checksum: sha1:ee122bdecb50b4469692059d88e8bce0a20c001a + pristine_git_object: f5f88585aeff6b0b9b90bef6692da90210730253 src/main/java/com/gusto/embedded_api_v_2025_11_15/RecoveryCases.java: id: 10dfba13bed4 last_write_checksum: sha1:4320c0cf8fd566066691ddb42d89747e9d880bc3 @@ -7748,12 +8324,16 @@ trackedFiles: pristine_git_object: 4756b96770d065d73e99d00ddd29870407abdc3a src/main/java/com/gusto/embedded_api_v_2025_11_15/Reports.java: id: 8713365795ed - last_write_checksum: sha1:fe1b000973cc80563323d657318cb5d0177e8fc4 - pristine_git_object: 100b1dc17b5ce51aaea91fb8cbedaccc494f20ad + last_write_checksum: sha1:fc05294342dd89e2d92dc822efbf2cbf995efd01 + pristine_git_object: 03286ad68ab1da4f4620ee4c097c3ab5a6595e55 + src/main/java/com/gusto/embedded_api_v_2025_11_15/ReverseWireTransactions.java: + id: db42b0a9d1d4 + last_write_checksum: sha1:5a6f47771adb6ec79de6f56d6ebdce666ac75cf2 + pristine_git_object: ca4965ebd64f603d188284a25f1f95ceb6e2806f src/main/java/com/gusto/embedded_api_v_2025_11_15/SDKConfiguration.java: id: 77bc8e7950ed - last_write_checksum: sha1:5887de1753dddd1059ff199d7997ef5b37df0d13 - pristine_git_object: 1f5002dc16ff20c3a8084e11b401a16f8d617823 + last_write_checksum: sha1:966e40d904783cc631811ffc4725bf7e57becc70 + pristine_git_object: 159da15d712b83a8870686c56d52b2e8f466656d src/main/java/com/gusto/embedded_api_v_2025_11_15/SalaryEstimates.java: id: 7db7cde524f5 last_write_checksum: sha1:4082fb6f77f0af57ec4055365dd91d0905ca1c30 @@ -7764,32 +8344,36 @@ trackedFiles: pristine_git_object: 4c50daea9bf0a648d01087dcecf8cdc173ad3363 src/main/java/com/gusto/embedded_api_v_2025_11_15/Signatories.java: id: 00d97912f1fe - last_write_checksum: sha1:4b1f4ef63feb3d92d919881e4daf5bb074262236 - pristine_git_object: 35722047f1afdcc0b3c4662a96add557f2cc348c + last_write_checksum: sha1:fe1633781b7073f899ac7dbc867c9ace5ae867e8 + pristine_git_object: 614ff8fe3ed1f32cfd9f596f7699288b7987d9c8 src/main/java/com/gusto/embedded_api_v_2025_11_15/Suspensions.java: id: d58e66acb2b4 last_write_checksum: sha1:d3d55c791cdd9030465f12800c565867e124248d pristine_git_object: 296cd24be545bec071a5231dd23140906c482285 + src/main/java/com/gusto/embedded_api_v_2025_11_15/TaxPayments.java: + id: 69bfebbc20dc + last_write_checksum: sha1:07df9bf6c6e07fd4e35cdb1c7931f9c56f4ae582 + pristine_git_object: 59cc96ad5bd2e0158ad7dda6c7d8798c74a36974 src/main/java/com/gusto/embedded_api_v_2025_11_15/TaxRequirements.java: id: 0522ff849fed - last_write_checksum: sha1:51e0ed869127083464b82044d674129c0358c9ad - pristine_git_object: 87e128702484d5a2ba09962947c46da4f7807bf7 + last_write_checksum: sha1:1a03de47822fb5950126927d34262fc0d64f1bf5 + pristine_git_object: 40f47fcf0509cc889a2902030df674134facca3b src/main/java/com/gusto/embedded_api_v_2025_11_15/TimeOffPolicies.java: id: ab6a2b930e85 - last_write_checksum: sha1:d6f5c2bc5afe9be3d80c8ee59dd432c8b77cd61a - pristine_git_object: 6463c6b7605837d1c7315f6e11c920a5237340d4 + last_write_checksum: sha1:4747bbcd1fdd1677a74c2a110cb90cda928d7374 + pristine_git_object: 05c27599d636b9ea587aec171c9eca4963340f8d src/main/java/com/gusto/embedded_api_v_2025_11_15/TimeOffRequests.java: id: fc0987c43da7 last_write_checksum: sha1:1d346134eb6603292e40782004e79feb0eff5967 pristine_git_object: fc428b79fdcb6ac929aa34603069bafdc80f5853 src/main/java/com/gusto/embedded_api_v_2025_11_15/Webhooks.java: id: 4abfb723d380 - last_write_checksum: sha1:d7351c46280be68399f56600504d59cbaca34aa3 - pristine_git_object: 259d7e2f436320f7ee5bb9c162f293005d0876b4 + last_write_checksum: sha1:efe95d8bdcadeb7bfeb402c415daa667a688bb17 + pristine_git_object: 99bb65d25343af05fbf536c0c277d80d54dc4a8b src/main/java/com/gusto/embedded_api_v_2025_11_15/WireInRequests.java: id: ce916c8455dc - last_write_checksum: sha1:f955924bcb06d81b8a96df8d3498f7142a34535d - pristine_git_object: cdd38190abbe9b8fffd3216404498764aef30b4d + last_write_checksum: sha1:939e0de9d8387b970cae2bd164a1123dbe4d7aee + pristine_git_object: e1e475ad903efeb56dc4a47d31eb49fbde724886 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/AccountType.java: id: b9a8869fb067 last_write_checksum: sha1:d83b5448d8c1906cbd64baa5ba2d11e19448f7bc @@ -7800,12 +8384,8 @@ trackedFiles: pristine_git_object: 4b3bffee14da6d095b4dd208ac872b8da6214f39 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/AchTransaction.java: id: f39c86b2f92b - last_write_checksum: sha1:939a0ab0e3d752592b76583ddbdbbe6a00632371 - pristine_git_object: f5a2ff3a65e6ff1fa3fa12c65bb61b61ae52a357 - src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/AchTransactionRecipientType.java: - id: a9c1b0e66d9e - last_write_checksum: sha1:47c0d64f6d5847164a5df5736484bb0941c54763 - pristine_git_object: 7dbc29650aeb18a38e50b1d956d0c9572301864a + last_write_checksum: sha1:2450d64177d09c40bc2037619fa43ebea164d13b + pristine_git_object: 7f94cf52e42bea14c62b7cbcda96e01099d8ce5f src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Action.java: id: 6cfde1da5505 last_write_checksum: sha1:e11c971c411578c6daa11f0d2394bf2859bdef91 @@ -7832,8 +8412,8 @@ trackedFiles: pristine_git_object: 05a1b878c97257dc08faab1df0f14634879a69f0 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Aggregation.java: id: d9b65f59f915 - last_write_checksum: sha1:eab856b1dae8c73c3e8808c9e670fb3d66cdd38d - pristine_git_object: e78d304e5c0157b0f6a228ef046ee59c01807b40 + last_write_checksum: sha1:34c4cb2d0fde24dfb751725d3bff197290e6c847 + pristine_git_object: 22dbcab126b4fef0d1167350fd17f89dc85cfbad src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/AmountType.java: id: d06af136812d last_write_checksum: sha1:cba6716da486e8d52e9eacdb09eaa078f03f6459 @@ -7880,24 +8460,20 @@ trackedFiles: pristine_git_object: 13a269e8da53fd4f38b05403da9327f10c2f9c10 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BatchAction.java: id: 4a62c76f35f8 - last_write_checksum: sha1:8df53dbed0274cc92a25c03480bcd7973edcd316 - pristine_git_object: 668a16265a8747b8ea3574df82a486b4608ee661 + last_write_checksum: sha1:73677b2e0bfbbfa5c6c84f62c65c9955ffb6981f + pristine_git_object: 4c58f2f6a4079ba945377989c15b7786cd4bb4c4 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BenefitSummary.java: id: f7ec131a34ef - last_write_checksum: sha1:aa1011a1fe61d4465b9346a441f98c912e2a5fdd - pristine_git_object: 06d08bc0ee8d03b54a925a4a33e756527ad8405e - src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BenefitSummaryEmployees.java: - id: 8ff0ca2b4e82 - last_write_checksum: sha1:84a135e0c076758d28fde12c856276ce42102017 - pristine_git_object: 0582d9233b0bef688b3bd7c5598407b6c178ea10 + last_write_checksum: sha1:363fd0de4121d776c0a64356c6613609d2c93325 + pristine_git_object: 13e66efbf1fec3dc4ceeb52fabfab27e59c6fe72 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BenefitSummaryPayPeriod.java: id: 91fbb2ba3f65 last_write_checksum: sha1:8d889b6d38fa3fb84b2ccec9724172dc2b67a655 pristine_git_object: 9b113669fa60282668c5b409a51270dd4859cd8b src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BenefitTypeRequirements.java: id: ffc165fb1d29 - last_write_checksum: sha1:1acc44221c79d255cc83c67fba11be8768e15b10 - pristine_git_object: e22a013de940c39dc9254d4c9ee96560bd5bb266 + last_write_checksum: sha1:4d7bd5e41acfc992838af61b31dfeb070d6d8195 + pristine_git_object: e26f8952f8f7d6802ef6075477236d174ce3016e src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BenefitTypeRequirementsCatchUpDefaultValue.java: id: caab1fc1084c last_write_checksum: sha1:45ec66c5bb0378b2f353ad17fb00c5431020ebb2 @@ -7906,10 +8482,6 @@ trackedFiles: : id: f70e121d1147 last_write_checksum: sha1:e1d32f6a72a81b094dee886c86afc5e59cebe923 pristine_git_object: f858c223ee0d52c19f5168cfb92cd667097a5088 - src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BenefitTypeRequirementsContribution.java: - id: 13cd73143818 - last_write_checksum: sha1:9e565fca60c7a88ba8b72eecd4b6f60c170bff9b - pristine_git_object: 7d9a79ec6e4267789506aa489d6a30544dfe73bf src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BenefitTypeRequirementsCoverageAmountDefaultValue.java: id: 8e6e764eacb1 last_write_checksum: sha1:b127389dec8fdf73fb650243af70ef491eb4688d @@ -7940,8 +8512,60 @@ trackedFiles: pristine_git_object: 384ef9905f96a32d5df1750ef640c4dd6129c341 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Blockers.java: id: 78157270bb0b - last_write_checksum: sha1:20b81aba9c99fc6c89d9633cfcdd0d46020284d9 - pristine_git_object: 8a5738ff1e01718053a5b172da5cc7d38fb7f9eb + last_write_checksum: sha1:4f05bc46e5c1396acb59e7988ca4f82916883b10 + pristine_git_object: 149b4ab1656d170d3af5f8702f9033e0a61f31de + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BulkReport.java: + id: 3ecf11c5121d + last_write_checksum: sha1:136287bb907275cd1977aa3952394e0635e9efde + pristine_git_object: 5efd9865cc4534f89f3094dd9f147b7ae652e3f2 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BulkReportBody.java: + id: fe77b12e6a31 + last_write_checksum: sha1:b4fed29ab908942fecf90689b0164d2d502dd292 + pristine_git_object: 8690affbcd3fc177e20fb5f17314e1b46aed1689 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BulkReportCompany.java: + id: fac14257e419 + last_write_checksum: sha1:c501841cd0ac70cd21a4ad4e37ffe1f860597e2a + pristine_git_object: 09477ce031fab668e104d7bba53bc0f950d87747 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BulkReportCompanyStatus.java: + id: 31520e248c31 + last_write_checksum: sha1:5c05a18167cc8dec10563200e46f5d0a60e4d7a6 + pristine_git_object: 55689618860ec4748fd89d98ec00b6d488329486 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BulkReportCustomReportItem.java: + id: 677d5c6e8ff2 + last_write_checksum: sha1:2c6841e3fc83373b72023304c396bcac9b8cbd8a + pristine_git_object: f2b5e67057cb5dcccb340d6b038eb9439925ad31 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BulkReportGeneralLedgerItem.java: + id: 40135e7d803f + last_write_checksum: sha1:3262576349466b045e38f08bf1beb9a96c9b1e33 + pristine_git_object: 221ec04a224671d8d683ebfb70131addfe53b099 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BulkReportGeneralLedgerItemReportType.java: + id: a81c28a02693 + last_write_checksum: sha1:6305b291d584e196576cfb8b96bdb44e4843c531 + pristine_git_object: adb50a27f072dc62c64f40f15691bc936fad5bdb + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BulkReportItem.java: + id: d3ddfef30d0a + last_write_checksum: sha1:a359b1e2658682d6cd07a06b5c59adbf2b0dab9e + pristine_git_object: eddfe6c2c90979448d48eade58aa806209d58003 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BulkReportItemResult.java: + id: 810e23da739f + last_write_checksum: sha1:32b4c8e3261ff214e7d5c3e550c27305aadd9044 + pristine_git_object: 4cc26e947031c4e64670facaff2493da11e61198 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BulkReportItemResultReportType.java: + id: 5fd8092cb4b8 + last_write_checksum: sha1:0c13bd1b2587a6c1dbf3c63856f3ad870c7ce990 + pristine_git_object: db7ab8f5ab1024b1559f524114d56d852e0651b1 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BulkReportItemResultStatus.java: + id: 9e2dfb4adb59 + last_write_checksum: sha1:ae79372f3e7945981685f8606e03f56ee8666bd4 + pristine_git_object: 04d72ad63d1448f1ad27b7b4f360f1c0b109f9b6 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BulkReportItemTypeIdResolver.java: + id: ac59d4020d09 + last_write_checksum: sha1:d757e484cf49025f9e4ec8d04df6e91fdc03fbbb + pristine_git_object: 3a674d5dd9542ae56a6d45595722529bd355e67f + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BulkReportStatus.java: + id: 46af59fe08de + last_write_checksum: sha1:1c77e0611195400a795335bd7294091d23b4c15a + pristine_git_object: 2034fc2c1a2aaeddcfb6a95fb64b77c068efc8a7 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/CatchUp.java: id: ae08a456670e last_write_checksum: sha1:1a3891d609e45b8b672eed6685f7c6751ff9aab3 @@ -7972,8 +8596,8 @@ trackedFiles: pristine_git_object: c62d3a6b20ddc522b753dda64a6c7f4e32b70c6a src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Columns.java: id: 10faab344e31 - last_write_checksum: sha1:c243c62916394f3ef6adebe30be00fb7a83eee8b - pristine_git_object: 400e70b7ff06a6db2aea81a070762d945d124e9c + last_write_checksum: sha1:7e91b3140c72f9250d5ea11214af1c72f19af444 + pristine_git_object: 400dcaad5a1cbd563df46bed9602416530da5ff9 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Company.java: id: 89ac372b9dbb last_write_checksum: sha1:1b15e2e3ac17ddd33ca96d0bafe303c2957f32e4 @@ -8144,12 +8768,12 @@ trackedFiles: pristine_git_object: 450272b2523351297d4a49c94fb0479598318f1f src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Contractor.java: id: 567596fc099b - last_write_checksum: sha1:c7bf7b3dc4c8e5bc5e841dd73917a527e97a7684 - pristine_git_object: ae8dfd9ecee500eefd25500d2db48d74915b349f + last_write_checksum: sha1:56928a22362a216589aacb0ec9161c988dbc354c + pristine_git_object: d66f2b626b5373fa80b1e4b566a31c03bd7c8a33 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorAddress.java: id: 11186fef6ade - last_write_checksum: sha1:142844cfc4d7424e1196ea85b64bbc5e963225df - pristine_git_object: fb69d438ea66f4cc84f1c6eaacdc8cd8c1d9725b + last_write_checksum: sha1:1ff376212479e2b0e8fa0e3d8a3a181f68e63218 + pristine_git_object: bb621591e7a4ead2058f7c55c5c77aca5ff0472c src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorAddressUpdateBody.java: id: 36a9d11f6306 last_write_checksum: sha1:8be1aeb3c4e9f542dff3b7986d6a3a0a769f9582 @@ -8172,8 +8796,8 @@ trackedFiles: pristine_git_object: 46e08115de12799e0b874b144b666967a06bb22f src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorCreateRequestBody.java: id: 9a7381739b28 - last_write_checksum: sha1:30c4aeaffd500320d3431bacb081b7acbf38f667 - pristine_git_object: 96a62513e088c912458b2378368bf0c99a3c6a0f + last_write_checksum: sha1:b59b4916d0939589ff9bb29f66506a22ca10bf64 + pristine_git_object: 1f25ee6681fa5ce98dcb699d3d29613345b8184b src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorCreateRequestBodyType.java: id: 8c0b56eccf1f last_write_checksum: sha1:150cbcf61a79d80910340c4cca5ebe3f238e7004 @@ -8182,18 +8806,10 @@ trackedFiles: id: a81de2e2512b last_write_checksum: sha1:ae7cae3758529331022067fd634721a88949cbc4 pristine_git_object: 02cefb3e9f89948d206137990c491513e75b04af - src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorMemberPortalInvitationStatus.java: - id: fcaf09cc37a4 - last_write_checksum: sha1:0aaf32e1f395ea3869fa4c9927dc70870ef83012 - pristine_git_object: 56dee6bb28f078ea9a1bce2403d52bbba3302f28 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorOnboardingStatus.java: id: c069637e209d last_write_checksum: sha1:7f1294496879bba11a7ba08fcef02827b1ca6d73 pristine_git_object: d4874c4ba8788cccb76d38cb60f633b6d5a2cf99 - src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorOnboardingStatus1.java: - id: a78b588af635 - last_write_checksum: sha1:346030eead56c5da5b2fde744f1a1ab9ed5a02f4 - pristine_git_object: b120b75992bdaa5299cfc5db86cd1b879a4e90c3 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorOnboardingStatusOnboardingStatus.java: id: 794a9bc959aa last_write_checksum: sha1:c149cd78ec01b1645891556a9a0c417d93242783 @@ -8224,20 +8840,12 @@ trackedFiles: pristine_git_object: c7b8b9470cb691e41a13dcc829c9c2743bb07b1d src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentDetailsList.java: id: 570bcfa0346c - last_write_checksum: sha1:6c077a894f7fd6927391a28865ab3994d540c613 - pristine_git_object: abf3d0b449d158d970c34bced4cb3f1ffdcbde8b + last_write_checksum: sha1:9ca14d6328b38153838e200efb6d894882ad96af + pristine_git_object: 6d79298b818a20d7b06c97ee00435db97943006c src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentDetailsListPaymentMethod.java: id: 2050cf71d558 last_write_checksum: sha1:af4047a76e625cbd471f32452baacccf6006d31f pristine_git_object: 84993fb699fd703bf16f2a3a2bda2af7bf83de4b - src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentDetailsListSplitBy.java: - id: 661e6d05bf6f - last_write_checksum: sha1:19b7dc8faf92a85b2f6f9218cfee838ab83147a8 - pristine_git_object: 1fe218ceddc01f3e5cc8ac3d0031428d433f22ee - src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentDetailsListSplits.java: - id: 9ceacedca7a0 - last_write_checksum: sha1:769bcaf75e1c27517c7ee1db09bf5e2e8de4c085 - pristine_git_object: 9ecb8de5c949324a1319df45b1cab3ebb9491e86 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentForGroup.java: id: 2488fbf00a92 last_write_checksum: sha1:4d1d8c161eb85db23ec8010b4cce54e8e11f782b @@ -8248,8 +8856,8 @@ trackedFiles: pristine_git_object: 7664804fe5c0961f74b69dececbcd75ecc7aa237 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentForGroupPreview.java: id: a9fea7003e8a - last_write_checksum: sha1:577fcb58b9b4dde94087cb985bf8f17bfcedd7a2 - pristine_git_object: 7a9fa83d3bb62fd3625449ec0f68e8be295e83eb + last_write_checksum: sha1:f0be122bff958747772f9fef7c4f8de15826480f + pristine_git_object: d6ec10f8bc98be68d9fb78350977efea6dad5ddb src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentForGroupPreviewPaymentMethod.java: id: 3f7b6f7e36b7 last_write_checksum: sha1:c32de7b871e387bd125ad42549efbe594a4710ee @@ -8258,10 +8866,6 @@ trackedFiles: id: af513a82f771 last_write_checksum: sha1:b10bfe59b4adb5b48b55c40a557c48803cb8862f pristine_git_object: f2d6dde3b0dd5004f934af2488c856c775107f99 - src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentForGroupPreviewWageType.java: - id: 98fcccecda6a - last_write_checksum: sha1:8366434a918f3dbd353ef3e265bfdc911046e720 - pristine_git_object: 2b38a855219088716cac209738d365d05f74e83e src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentForGroupStatus.java: id: c22ad593def8 last_write_checksum: sha1:3b6441f80dc23fe6d6e05c92777a831f293f3634 @@ -8288,16 +8892,12 @@ trackedFiles: pristine_git_object: c257aa2e6b20b88a7b8fbdec3a60aa2fe68a6dc1 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentGroupPreview.java: id: 09e7458bb354 - last_write_checksum: sha1:f32e44463abe1de4ad0514bfdffd88359ae76dcb - pristine_git_object: cd4bcb5d7e7ecb454ff72d1d673f914c75c8994d + last_write_checksum: sha1:9f6849497b4cf96f6c9e6ce71dbe709b81b80165 + pristine_git_object: b1d6960e6c3e9cf5c125738c5a7d8adcb7ba5e2e src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentGroupPreviewStatus.java: id: 35ea22a63a3f last_write_checksum: sha1:d1899ceb03955ea65c81e3ddaf344a502ec0a189 pristine_git_object: b0de6bd4d72314e6fe7f901cd46dacbb9616e341 - src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentGroupPreviewTotals.java: - id: c430a0ebcfd5 - last_write_checksum: sha1:0856ce713a01fe37257aeba2f68b21342a58b3d6 - pristine_git_object: 0cb8561f126d7fa2964006a08c52dbbe536001b7 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentGroupStatus.java: id: 557991a6e4a4 last_write_checksum: sha1:bf7edb5a3e0f970264e5b449dfa4eaa40c58db4a @@ -8318,6 +8918,22 @@ trackedFiles: id: 63b40804bf6c last_write_checksum: sha1:0aeebd65fe61d88558cdce5c48e59889a4483e93 pristine_git_object: 152ebe6fd06b3a1b3a1c2b62a2d3f1dee91cca89 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentListing.java: + id: 12f8a1e5fc29 + last_write_checksum: sha1:ee05ec32fe9409c7fea2a53061a00d10999ec074 + pristine_git_object: b7725d963205f6f3031d389412027b7af2bafefa + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentListingPaymentMethod.java: + id: 80e6fda020c6 + last_write_checksum: sha1:8086604b9739ad04c48d7c9f2a160647e7800d92 + pristine_git_object: a7fdd2a339038e9b82fcdfc3e9afd09d63448102 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentListingStatus.java: + id: 35d9eb48d596 + last_write_checksum: sha1:453228a45a96d89bbb01d61a53c6da0e0e2ce6fe + pristine_git_object: e10b88a3e4eeff5ab04cb8e82d0a1f97bf184035 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentListingWageType.java: + id: 208e4f1e80ed + last_write_checksum: sha1:415b2fe7b8aa18d2e8d9a729e63a7e7ac8283147 + pristine_git_object: d4b1a23051107b6615395ba67e39c2dd3229f758 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentMethod.java: id: 1ff812b83917 last_write_checksum: sha1:30ac06015da2aa42f523cedac980891d49d29783 @@ -8340,12 +8956,12 @@ trackedFiles: pristine_git_object: b0c7c89434bd9d7a8538b564f38d4d004f61bf5a src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentReceipt.java: id: 6cc3b30953f4 - last_write_checksum: sha1:d70672dea89be7fd33243a7528536d69255d04b6 - pristine_git_object: 6e75f1a2bdf51ee4cda9ad1ff6ecc4e78ed80d4e - src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentReceiptLicensee.java: - id: e924a85fb771 - last_write_checksum: sha1:e4489e79aacc117ce0de5d824ac41da77de11c5d - pristine_git_object: cb637e551010acce9e6c3a2b79e35f00dddcd7c4 + last_write_checksum: sha1:c15d6b57b1d8552b9250418ffd6fa97ca2ba0315 + pristine_git_object: 7353e3c0a61034d6751bbeed66618d96b303c93c + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentReceiptContractorPayments.java: + id: ae8b355562d8 + last_write_checksum: sha1:0744ac0e3d0884ccd384a9924431ae1775bcfe67 + pristine_git_object: 1255ac55e273146bd93bf4d6ecfe44885fd8a826 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentReceiptPaymentMethod.java: id: 66523d29cfdd last_write_checksum: sha1:2ae138c1e6d9bcd38b1eae7964119409268c1211 @@ -8360,8 +8976,8 @@ trackedFiles: pristine_git_object: e0e7c3311a3d72894941888bd8cbf635a5ab53fe src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentSummary.java: id: 8f907e4673d4 - last_write_checksum: sha1:3fd494423d26d9d6993333fe2f867dbe16a05f38 - pristine_git_object: c0910fe5e74012e1fc0a3785596f59a7134b5945 + last_write_checksum: sha1:4ce94a8af8a391960ee65e7174f32c6bdb54ba9b + pristine_git_object: 495a6d7baa1e295a69a4968e32c112c0a01d706d src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentSummaryByDates.java: id: ada21b50ab8e last_write_checksum: sha1:5723e2be8187c25827b93806cb13ff871c9c8c53 @@ -8374,18 +8990,14 @@ trackedFiles: id: c72b072d1a80 last_write_checksum: sha1:3b85e14c2340b6ededd43b5e8481669900735765 pristine_git_object: dadaa84cd43acc5839290e9f3d1e663e8cf3e124 - src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentSummaryContractorPayments.java: - id: 9f07f9af08c4 - last_write_checksum: sha1:80563316fd793cc05a766998500fea229126d236 - pristine_git_object: b568e01461bd1477d99e1b39eadde2adf786d1c2 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentWageType.java: id: c7d6a620004f last_write_checksum: sha1:921a30b393d94a46b66290066d3b566c35f502ca pristine_git_object: 665d1422728ef2d84855f977ee00819c61adbb99 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPayments.java: id: 46ba4ee28f29 - last_write_checksum: sha1:59357a3cc0596359bbb4001a25a07c6d57b5c07e - pristine_git_object: 440c3e15face8fa7793f95ac81bb37de60a33134 + last_write_checksum: sha1:986663bace371a7c37b54dcac8d3f70e80b4d9f5 + pristine_git_object: e995f699dc1288efa594b8adb5b49cd28d5df6a7 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentsPreview.java: id: "289961661e06" last_write_checksum: sha1:077e520af55070945c00d341a49fc436991e0deb @@ -8412,8 +9024,8 @@ trackedFiles: pristine_git_object: de19d7c6a2d7ff18bda735fe8fb5380eec0d7fa2 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorUpdateRequestBody.java: id: 261218f9bb60 - last_write_checksum: sha1:02abee953d3196b4fbd8cfcd11a7c5a8195aad80 - pristine_git_object: 93f25643eed2abf6f8e9f9356aa31875fe3bb7c1 + last_write_checksum: sha1:cdac380157ad827277758bcc73852546428309d8 + pristine_git_object: 8fc4cdd7c4d9af6ddc948748d6d07b4f01013d26 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorUpdateRequestBodyType.java: id: 9fd8cc3ee3b9 last_write_checksum: sha1:73278757765819d7c600fd114d76a673363c0df8 @@ -8422,14 +9034,18 @@ trackedFiles: id: d2dda1f0021d last_write_checksum: sha1:a05fdbcdb5a21901f7741a4ead68f063aaf99845 pristine_git_object: 3e2bb03d3966026b2453a4ffa18a5e12548bafa8 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorWageType.java: + id: ff5f54fee699 + last_write_checksum: sha1:cff15878c99a9fd82cde56c193689d9aac5532ab + pristine_git_object: 7573713e253175e3c07a81f34882ac70317f78d6 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Contractors.java: id: e009a16659e4 last_write_checksum: sha1:3e440dc0e16619ad72439ffdca4d91b982068337 pristine_git_object: ee63ee52733b534b2e4da5e4ec2ac7c461c77eb7 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Contribution.java: id: af8f30ab244e - last_write_checksum: sha1:88179fd3c3d336c2db9aca01c582c6a69380f28b - pristine_git_object: 31d0f40aa7a113a3b5ee7e1743e15580a482deb6 + last_write_checksum: sha1:45439cd28c7abfc0ca8f697bd8e6722923d3218a + pristine_git_object: 40f607c2281fd808462e3040b6c486ed775f48bd src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContributionExclusion.java: id: 863ca0e35d8a last_write_checksum: sha1:a0bd5bbda98cf353b226e1dd48eadd7ab226fd73 @@ -8446,6 +9062,10 @@ trackedFiles: id: adf5496c32dd last_write_checksum: sha1:966c68fb3184bb0170135de915e69f10c386b047 pristine_git_object: 1c09551da36cdf115b484c242921408ab9c4398a + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/CreateBulkReport.java: + id: 52aa307a7b0e + last_write_checksum: sha1:d3a951c45065225faab4bb5bb651976181db3f7a + pristine_git_object: 039ad8756de8c7bfdde7b5508eab13c1af25aab6 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/CreateFlowRequest.java: id: 94bcf7b66907 last_write_checksum: sha1:4b9c7d23d5bb86cb6e116b1d33b0efc9e652bf1c @@ -8460,12 +9080,32 @@ trackedFiles: pristine_git_object: 085795e2873308b159facedde1b0989fb95270b7 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/CreateReportBody.java: id: 1a0d09a73225 - last_write_checksum: sha1:d13f648b57ff220623160ea202669f795c96f805 - pristine_git_object: 10882ef02b9b38169600ae24a344fa7c65ec0a22 + last_write_checksum: sha1:5905b85919457ab707cf85916c5099d9f50c8b9a + pristine_git_object: 776bb07c1358f44e10d57512b5ff5bcb57441560 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/CreateReportBodyColumns.java: + id: 1c6777ac041d + last_write_checksum: sha1:7df7e253daed5ba15653e3cb6b9b8e8adc238a73 + pristine_git_object: 7e6d2c3828a5c655e721843e118b8675586fb292 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/CreateReportBodyDateFilterType.java: + id: 5140c4c9723d + last_write_checksum: sha1:989af7c6bdaa06d015846bca2480ad5e2079b77d + pristine_git_object: a2a1180e0642226a590613eb9919428f2cd6a0b8 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/CreateReportBodyEmploymentStatus.java: id: e1e65a7b12a5 last_write_checksum: sha1:3c85478f18702a9f78aa552f37df21f7f38a5790 pristine_git_object: 22b428dfee9580b7f03101ab3517321a68e31b3b + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/CreateReportBodyEmploymentType.java: + id: 1754d6c9aeff + last_write_checksum: sha1:2de2014cc0cfd9a426242891b4f096ab238f2541 + pristine_git_object: e6ff32d6bb7b7b59bcb590db00f187fa55b2a880 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/CreateReportBodyFileType.java: + id: ea0d38857cb5 + last_write_checksum: sha1:13275bba306e0c5f35cbf872e7f155593b45ef38 + pristine_git_object: 4e28aa1624a64136e9d9ab824e2c9c3df1624452 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/CreateReportBodyGroupings.java: + id: 7846122b962b + last_write_checksum: sha1:154a823c3891c42df730b8cb887b9e0c3f4c6ed1 + pristine_git_object: a54f70f1827f96b74e2c28c7647e5d786a37ab4f src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/CreateReportBodyPaymentMethod.java: id: 1bce29a63a46 last_write_checksum: sha1:96de484fb5c8820ad7ba96738bcfec136950bf39 @@ -8482,6 +9122,14 @@ trackedFiles: id: adaf987765c5 last_write_checksum: sha1:55b53a74bdf3780d4f0df7050ba40ee2b2b62475 pristine_git_object: ff16324cbcb63beec32bb379d2bc7f99a0a8d215 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/CustomWithholdings.java: + id: b36e64c79262 + last_write_checksum: sha1:4dedffd0ed4b8461eed0c5965b5eccc41df5edbe + pristine_git_object: 8fbbeb771fa80d67ae9aeabbd825dc20aa58bfd5 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/DateFilterType.java: + id: dacdf516b506 + last_write_checksum: sha1:6d6ab2097dc0c646804f4fb42f1e1beed9cca8e5 + pristine_git_object: 3c3be384b8632545578e37b8b1b8d671543859de src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/DeductAsPercentage.java: id: c9d0129671bd last_write_checksum: sha1:3638805c25e36dd0d2f35fe7d133ab19b587f74c @@ -8536,12 +9184,16 @@ trackedFiles: pristine_git_object: b989c1b72609361dff88b250245dff65c9c2965d src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Document.java: id: 42d843dfe36a - last_write_checksum: sha1:9301a37b820ea7067c16d20d742aca0312c57bb5 - pristine_git_object: 6d1009da957c08a687b0d578a1807fa7545091c6 + last_write_checksum: sha1:f8c2526b437a5bef1ce1d241f312822c56fac72c + pristine_git_object: 983cc9d114a1364fafbfb9db7c40dba945fad803 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/DocumentPdf.java: id: 11c51aacb09c last_write_checksum: sha1:1362a79b0dc1a2e52b3403da93695804ffdc19ef pristine_git_object: f597af477ada84649894b5b5cdf263bb5ee475be + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/DocumentRecipientType.java: + id: bf95dd40e581 + last_write_checksum: sha1:57306981641f23d6aa5cb60ba28fa4f77e008331 + pristine_git_object: e7038ae2a3cf0e91a26036fe1b09fd3040e72acd src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/DocumentSigned.java: id: 05266fc8323c last_write_checksum: sha1:e2694c93898446a3ced140127af6a7f492b97502 @@ -8608,12 +9260,12 @@ trackedFiles: pristine_git_object: 899f9b66db55ad57367acd1f471e523a6ee390d1 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Employee.java: id: 24279fb38eb3 - last_write_checksum: sha1:5888c02ede022d6a818d502b983ae09f9a4960c4 - pristine_git_object: c66fb9b233159a0f1dfa7add6ceb8844fc85c74e + last_write_checksum: sha1:3e74d8b43cf3751a1267a8202ed0f790503d42be + pristine_git_object: e4fe976bbf2f6bd47ce467dfe3a25d24dc15f79b src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeeAddress.java: id: d3f0b50c4076 - last_write_checksum: sha1:bb01f316e5b58e3bb80daff9cf2c8bdaef48c3ba - pristine_git_object: 599c2ebac763e07542ee39f03c01ed70ec8e2172 + last_write_checksum: sha1:d3fb776c85fd1bb89ad7b87fa84206c9b920ee76 + pristine_git_object: 8a0e6533203f5f3f357f261365e6f6ab6b144b1e src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeeBankAccount.java: id: bb82792f8c40 last_write_checksum: sha1:191f6027c3b102908e75f7ecc55658472aaa8d01 @@ -8632,12 +9284,16 @@ trackedFiles: pristine_git_object: 389e1bc16616b9f5f943301693edd9c7d1c1f62d src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeeBenefit.java: id: 0faa40a15cac - last_write_checksum: sha1:421a9374e267c5c7c2c169cc55c562ce29da0e16 - pristine_git_object: c662577c01b317e328eb768434610136abf4e250 + last_write_checksum: sha1:fd715159fdfa21c60758ff2813443bd2dfca25cf + pristine_git_object: fa5b3b37e250d193905a85539c41b7b6fc8b7649 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeeBenefitBulkUpdateRequest.java: id: c0edae142dc4 last_write_checksum: sha1:e5e7026ef0d024d7b97833f6b3cb1f0643ce3787 pristine_git_object: 8d1d75038bd4e1a97ae932fca9c649c61d8aae55 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeeBenefitContribution.java: + id: 77c2310be504 + last_write_checksum: sha1:92b2935a7895feb4bb8ee3e0a863821cac3663c0 + pristine_git_object: 029521ba0ffd189e836f319ca54ea3e1cc629398 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeeBenefitCreateRequest.java: id: 67341323c632 last_write_checksum: sha1:a21f60af0ff6eeffe7cbd875bf64c4745cecb695 @@ -8724,12 +9380,8 @@ trackedFiles: pristine_git_object: a0e1d725baecc6d0b5a5b65d5e247edd2badf162 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeeCompensations.java: id: e4771129c226 - last_write_checksum: sha1:ba0badaba81fc7f031300e9b1f528b7f8e68594e - pristine_git_object: 28380fade55ecfffc9b9b4bbe9e94726bd8fe618 - src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeeCurrentEmploymentStatus.java: - id: 87c2f765451e - last_write_checksum: sha1:5e0b08a3f5c7be79e595ba89608cafdc46d73ba7 - pristine_git_object: 330ad86bce882719031173e43649895eb29b6cb5 + last_write_checksum: sha1:84ce75d3a2f61ef0fd5411f67f6e88fb6ca81d5e + pristine_git_object: 657cb067a5f7c2d25b70567001c62d66b62dd6c1 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeeCustomField.java: id: 83a50decb67a last_write_checksum: sha1:fe707fb7a5e4154263189ef3cec7d90a8b8cfa68 @@ -8778,22 +9430,22 @@ trackedFiles: id: 975815921eb2 last_write_checksum: sha1:71559602f29ea8f8d8131e30d3bff73e2e6ca5bb pristine_git_object: 168adf29c9620056c8bf874eba04e723b9e12ca2 - src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeeOnboardingDocumentsConfig.java: - id: 279019bed43f - last_write_checksum: sha1:d3a2f264b5de4e4d979caa16d3cd130562a64e7d - pristine_git_object: 1f97596daa2d9bbfe920f4117c14ed76a05c7186 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeeOnboardingDocumentsConfigRequest.java: id: f13619478a27 last_write_checksum: sha1:27bc883f7a6501dc5d7fbb61417b7ef6a7d9fe42 pristine_git_object: 3fe387642267102486fe6033d4120ccabccc2296 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeeOnboardingStatus.java: id: 035c50df22e2 - last_write_checksum: sha1:355d86e31a9b337d2d41a3f17e1a43699e8701f6 - pristine_git_object: 991ca324b7a49e2b05dc09ff33c8b25cacd0ee9b + last_write_checksum: sha1:863136f202903f74d24449a94e9d819c0573e094 + pristine_git_object: 3bb107704eb8f12591e249174846cd010ef2d471 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeeOnboardingStatus1.java: id: 796ed72285f2 last_write_checksum: sha1:93ff42909cb00e20ae2c5f7d7196716b85d13cd2 pristine_git_object: f01d07e2e75438b389f8227851dd7ba2ff446313 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeeOnboardingStatusCategory.java: + id: e177fdbe1208 + last_write_checksum: sha1:18533fdeb3a6f9fe0a983ff537f9f62b67f1d555 + pristine_git_object: 95b795f636027426182fcf59977b02bbd1e07893 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeeOnboardingStatusOnboardingStep.java: id: ed2ce3c6ca0b last_write_checksum: sha1:ed740a2e67846141a251401d227b336870300541 @@ -8808,12 +9460,20 @@ trackedFiles: pristine_git_object: b1457e0f22e3e53f2c55a87de978245785eb3b7d src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeePaymentDetailsList.java: id: ea48d8710a30 - last_write_checksum: sha1:a768d1e6aba60b87dee094f25a0158bfdd94dcc0 - pristine_git_object: 790b20f006a02953b0a48cbb8f356339c307e613 + last_write_checksum: sha1:c6b06781fa6afc31c906f5605b17ca931f5769e6 + pristine_git_object: fc25af95da6c4ee7b2314fc96121e966198d3338 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeePaymentDetailsListPaymentMethod.java: id: b5d7b1aa21fb last_write_checksum: sha1:40b6c62c1149bfdb49881d8ece7b4f358cdc7121 pristine_git_object: a68f8988b84700187e2662c54b71aabd4cdcf648 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeePaymentDetailsListSplitBy.java: + id: 5341d600c87d + last_write_checksum: sha1:bbcc711e8167df4f1ffaa6966aae639fbe873c3f + pristine_git_object: 95801fbe01c8c841c24b2870fe3129b581f884d2 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeePaymentDetailsListSplits.java: + id: 81370c44251a + last_write_checksum: sha1:dc50b8f29aa36e71485df9b32c63549182f3e13a + pristine_git_object: 5973800cf6038e40fe3cb5182ae81f1ecb0bf154 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeePaymentMethod.java: id: b4175df57976 last_write_checksum: sha1:4d8f3ce24ad48d959b2811d33390ee1a63fe8206 @@ -8848,8 +9508,12 @@ trackedFiles: pristine_git_object: 14fc6d652da1a7f89087802cf32142091a42c13b src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeeStateTaxInputQuestionFormat.java: id: d12be08dd5d1 - last_write_checksum: sha1:7383222d89ca89a958909dcd775f57ea352db122 - pristine_git_object: 227a3591b62a07d9b50f9bb898422e7d218cc56d + last_write_checksum: sha1:3c87e125a62a18f75009226ea2f20262df271c89 + pristine_git_object: 29f32bccc85b49943b654894710e3d4d392c24f1 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeeStateTaxInputQuestionFormatOptions.java: + id: 5440ae1cd33b + last_write_checksum: sha1:4d0fba4afff72cd3e2af47512c3f796e35a7d031 + pristine_git_object: ae2e1ae4236444019cadb8fad4cf19ef9f930900 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeeStateTaxInputQuestionFormatValue.java: id: 8d38e215a978 last_write_checksum: sha1:217364b8f9d7b81af2b25c38f8cc1657f302a94c @@ -8884,8 +9548,8 @@ trackedFiles: pristine_git_object: 7c84d962be78062218bb11f14f49f298cbb8e0d3 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Employees.java: id: b0e9776af088 - last_write_checksum: sha1:49f53193de6a5e84d0466eac85459ec928071b9a - pristine_git_object: 4e147cbb1df6fc0d0a447ba5ff84ab545064f94f + last_write_checksum: sha1:1bd19939040b3fc8f74e3725f2ea50ac90d7e2c2 + pristine_git_object: 20165ea7ae060ca21b4c71b3a17ef35598fcc17d src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeesAnnualFicaWageReportAcceptance.java: id: 75de7b8d256a last_write_checksum: sha1:d21cace9cc0c9c48b31d6bac11c4bdaf5a97e784 @@ -8900,12 +9564,12 @@ trackedFiles: pristine_git_object: e96b04e44a304e652200b36c745b2cf0c0471c2d src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmploymentStatus.java: id: 5e5596bfb637 - last_write_checksum: sha1:276b6f4a683fbb96e8a00788d240b337fbe0092d - pristine_git_object: 1f1b0b4bb7f8201a44a417506401999a029b74f1 + last_write_checksum: sha1:d5ab4905a1202b7a5c2e9b4d4ed193759b4a5465 + pristine_git_object: 2a517b684c6946e5d246cc5b443e495a7b8b2f55 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmploymentType.java: id: 23437cea27a6 - last_write_checksum: sha1:b920d323d56d148d1963248581680b9f80d56ccb - pristine_git_object: ad1a1bc68d2978479b4887abb06e7070ce62fcd2 + last_write_checksum: sha1:94c4555df58493e3fc0ad6883b1811fe53546ceb + pristine_git_object: db9e3f28aec40545b1618e7e7cca84d556e299d4 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EntityErrorObject.java: id: e798c604b846 last_write_checksum: sha1:70abe218495aef135920a347630bf625e183cf24 @@ -8924,8 +9588,8 @@ trackedFiles: pristine_git_object: b88fd4b59d0312c1e3e5cd749dce74f1bd0e07df src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Exclusions.java: id: 7e0c0328a5db - last_write_checksum: sha1:7834e469be45228e2d81a940846e0dbbb9e059f9 - pristine_git_object: 31056f1456ee4e70ff84e8e4766a00b6dc274c02 + last_write_checksum: sha1:ded9d7dc652bc44ba6f4f4000febf4e84ad65575 + pristine_git_object: 65e6886497749d6bb82f7d568515515d327d1a1c src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ExperienceLevel.java: id: 003563dfceb2 last_write_checksum: sha1:db6408934964d47e6412e7e683aa0d7339455728 @@ -8936,8 +9600,12 @@ trackedFiles: pristine_git_object: f3ace4b5341725b5bf15a07a13fb0593f3ca7d63 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ExternalPayrollBasic.java: id: 0023d6014b87 - last_write_checksum: sha1:edd9f3a3b37809bcb0de6442cfb6f5262e73832e - pristine_git_object: dfa538c5daa16c9fd124eb6eae0ff944b41bdcdf + last_write_checksum: sha1:f859a659eecfb38402aa0634a0ffdaca7fd9a857 + pristine_git_object: 83e25bb34e8075341021a10d3981fd0fcc86cf52 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ExternalPayrollBasicStatus.java: + id: 10ef57ce93e8 + last_write_checksum: sha1:138e70fb658ff73b0c0db188dcf4218e8c4185fe + pristine_git_object: 524521f9428d729f3d95ec5f5a619951bab7e731 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ExternalPayrollCreateRequest.java: id: e9c85a75d502 last_write_checksum: sha1:eed3a0528418e8ac8b44063e890d70f38cefe927 @@ -8986,6 +9654,10 @@ trackedFiles: id: bd228dad7b8a last_write_checksum: sha1:f72e14fec351c1d39127e85fcdbad9d84a823440 pristine_git_object: 86d0f3b3e9becd6ce394595ba13022d4e34185f0 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Federal.java: + id: e8fb23ae6ba0 + last_write_checksum: sha1:0b4c4ecb495af5819438c75f2e933b82c3f4aef5 + pristine_git_object: 3d11d0641923bb3bcab4de091eed60b0ab5a3047 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/FederalHolidays.java: id: b997769fc721 last_write_checksum: sha1:361fd5b4f90a15dc39bb1013fd1365977f48d5a5 @@ -9010,14 +9682,18 @@ trackedFiles: id: cbca535350ec last_write_checksum: sha1:52cf7a16e894d43e9002393d39ffd7950d1ba1fb pristine_git_object: 9c0c70100de2e1ef90f3170c25a76ea89159baa0 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Field.java: + id: d5301695b394 + last_write_checksum: sha1:966ed9590fb60d32b13147c3614c20956f6dc00b + pristine_git_object: 336975abdadf5397396adff26813a841eb615e81 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Fields.java: id: b8756d4f2aff last_write_checksum: sha1:e64d09be1f6f47e9d7ec47599d551968e7884cfc pristine_git_object: 5d71c4a78c32e315ecd195f8878bab263c4a712d src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/FileType.java: id: 7181138dbc52 - last_write_checksum: sha1:c04696c18f944a54ff821dace746a0e35fdb01e6 - pristine_git_object: 8f880f01944272ccb1eda4feb513f47fc6b722bd + last_write_checksum: sha1:7fb8bacf4f312470e672eb3ba57fb1628621deeb + pristine_git_object: 5e5846f09f6cdd93994ba23a227c433212196a19 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/FilingForm.java: id: 99d07e7daa87 last_write_checksum: sha1:4b1dde8bc9251c774d06faf711d510e99c91c602 @@ -9092,8 +9768,12 @@ trackedFiles: pristine_git_object: 1015a0e83e2f53dfac4779b8ee0bdbc3426a625c src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/GeneralLedgerReportBody.java: id: 3737b0259d02 - last_write_checksum: sha1:55ad9da4f6c5349efe27c54d701d23012b566c71 - pristine_git_object: 96e860f43f529807eb9d57b08e8ad9310c57f8e7 + last_write_checksum: sha1:7753b52204cf234000df60b2ae971f49a4e86e97 + pristine_git_object: 1d82b1ccf1624dc7037c2ce4467865e6449094f2 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/GeneralLedgerReportBodyAggregation.java: + id: da8d2ed5dbd9 + last_write_checksum: sha1:910c3de3d2156894f818ce35c4ada87777e53255 + pristine_git_object: edb4047dbed5054ecbfa67c18c573c8485d87e8b src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/GeneratedDocument.java: id: 1b890a147c91 last_write_checksum: sha1:de5f6f69e601189b0c9833e394051bd9d3fb1497 @@ -9108,12 +9788,8 @@ trackedFiles: pristine_git_object: 094184906b55b160bb84bf14bd096bf972f8741e src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/HistoricalEmployeeBody.java: id: d65b8d04a660 - last_write_checksum: sha1:28263e3d122ea824f2aaab5dda044730f8ebe057 - pristine_git_object: 94c37a421fd30566ccd77bf75209968c62bc65fa - src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/HistoricalEmployeeBodyHomeAddress.java: - id: 178d6cc266e6 - last_write_checksum: sha1:cbfe26da2ad96deaca098bdadbded008ddc55aeb - pristine_git_object: ee28e504c42a00e025744399f7e0b4ba08bbc2a1 + last_write_checksum: sha1:f1a59ed9e4a668048cd6c2f5a3f0c570de1f7db2 + pristine_git_object: 2a17e7a51d1e2a77899b7eff234c6165f2a5ce2a src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/HistoricalEmployeeBodyJob.java: id: f163f489617e last_write_checksum: sha1:2fecc52a36b0c90160b831262a14f4a60acdb3fc @@ -9184,8 +9860,8 @@ trackedFiles: pristine_git_object: 93222caa3f270f2c8a822a1f7c42a215cb239704 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/HomeAddress.java: id: 2dcfb7d6d0e1 - last_write_checksum: sha1:7cd43eb8b9e41194b7f04939ad96b1f377abe415 - pristine_git_object: 2a42e0f9d225948cf66a263507be33af63af997c + last_write_checksum: sha1:dc6fae48d79d73cb1947f84645f23052088c495a + pristine_git_object: 4c6071000fa890702bc842d0025489d28e36dd41 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Hourly.java: id: 74b6724fb627 last_write_checksum: sha1:6842295feda7ccd7b7bf5164ac8732ba31d23fef @@ -9308,12 +9984,20 @@ trackedFiles: pristine_git_object: c3edb938960a0327f91e71df5e8bb299c29520e1 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Location.java: id: 841a862ee331 - last_write_checksum: sha1:97202cd6e97d10d581c5d4a7464f26f3bdb97e30 - pristine_git_object: 0459ed21926becf6f2d0d2883efdd41865f652de + last_write_checksum: sha1:43601ea1e4de0c1bb232f58b48f0ca22598d3bd8 + pristine_git_object: 336bc6ac6d6ed31ce868fc94833cf5ba900c73da + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/MemberPortalInvitation.java: + id: 389fdbc434eb + last_write_checksum: sha1:14e45180782ce9f8c77ba9c1ed48ef0bb8050ff0 + pristine_git_object: d7370e8918d640f5868e645842243c80c173098a src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/MemberPortalInvitationStatus.java: id: c19abf954891 - last_write_checksum: sha1:ff35ed32cbf38c67deb9849023bfaa50f6ae70ef - pristine_git_object: 3e6e596fde404cf7bbdc885b49eaf4499bfe52fd + last_write_checksum: sha1:1a78d3010ffacd0b061e357447f48fefc96cc4e0 + pristine_git_object: c1d43577522f7450c4f493ba09d23341add44356 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/MemberPortalInvitationStatus1.java: + id: 302bd1f3d7be + last_write_checksum: sha1:730f43bc8011c3fb0e7c11f20c1d2b1a681f0dfe + pristine_git_object: f5cd1a9813151a488e81c6895cbb42d6db265655 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/MemorialDay.java: id: 58a948dba171 last_write_checksum: sha1:e6a48c167322c73f900141afc319dea4bf9bc3fb @@ -9380,16 +10064,20 @@ trackedFiles: pristine_git_object: ce95c6e0cbbeeb6a2fb8338f94db629d4918a9af src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/OnboardingStatus.java: id: 6f60868d69b6 - last_write_checksum: sha1:f93600d92ab366609be50840de230954e366e1b2 - pristine_git_object: 0ce0b81f1c24b88e1f5a558608dbe280ce989a14 + last_write_checksum: sha1:6ef8bfc2c8df71ae6d73d92f5bda3fe4b9a6c0ac + pristine_git_object: cdd8410fb7b991242035c8ac7c4fd9bf6cac893c src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/OnboardingStep.java: id: 46d0f8c7b809 last_write_checksum: sha1:853c715273f4fbb8649a5086935ed88912d6ddb6 pristine_git_object: e0f2469a40e2fd0a7452cd24a0ac0dd7eb841583 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Options.java: id: 9d6876f241ae - last_write_checksum: sha1:bd166c8ec238b396b4f35e65df8965be1db79135 - pristine_git_object: 39e77ae62f1d43ac74e4dc10fed9825b680bb518 + last_write_checksum: sha1:9e2c8e38356c5f5b75323fd58b62b07e1ded32f4 + pristine_git_object: e39d5ff5fa16dac4df1f695c7aa07429dd117bfb + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/OverrideType.java: + id: a20bd4e81616 + last_write_checksum: sha1:ebf5bf503d09ed183820e518fa073b7eb9256142 + pristine_git_object: 23c28acebd63f77b18be61d905958b32dd4cfa5c src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/OwnerType.java: id: 43811e33e2bd last_write_checksum: sha1:27e9bcf61543a480f3604fd0b5366b93651a6d5f @@ -9422,6 +10110,10 @@ trackedFiles: id: bada9cdce395 last_write_checksum: sha1:6b9dab61fea9f6bdfee0f07abff00f7948f458ee pristine_git_object: ecc8ba9ad58396f0852fb70ad1229f98a68709c7 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PartnerManagedCompanyDisassociateResponse.java: + id: 35fa6b0ab041 + last_write_checksum: sha1:e73856ab272d5d924f2edec503efcaaab754df6a + pristine_git_object: b8238a3186389ddfebcb9628f9708e2301d5371b src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PartnerManagedCompanyMigrateRequest.java: id: 7db7b8a45f38 last_write_checksum: sha1:73f204bec41fb2af57be49bb10e4381bd6f6f364 @@ -9464,12 +10156,16 @@ trackedFiles: pristine_git_object: 3fe4e703484eed983538805f08439ff9e6cd5d07 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayScheduleAssignment.java: id: 3eb8b07ae0bb - last_write_checksum: sha1:69afed41e9aae8c2d9ffee1aa57f6fe0a4b4cf04 - pristine_git_object: 62fbf5f0c67d39b7c07fd71044963c119bc46337 + last_write_checksum: sha1:093f59bb790b0b89b4ac950b5545bdcab105fecc + pristine_git_object: fc4ec2e5758690c772250faaa11a0c85eb1ef4b0 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayScheduleAssignmentBody.java: id: e6f53f52ebc4 - last_write_checksum: sha1:28e5a48b511212f16c5db66f9b98f9e4af02fe5e - pristine_git_object: b73382d259097f510f7a83f7d5e8cbc16ae192f7 + last_write_checksum: sha1:f3ff61afb263b1539d7b1303246b777548948a77 + pristine_git_object: b3d13566a416da0eea88e80df9ece157d56b4039 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayScheduleAssignmentBodyEmployees.java: + id: e3f5101d1fea + last_write_checksum: sha1:568b7307a887febe4ff7f8c83111b4e631053624 + pristine_git_object: 801b46c47ecade429fd8a63c10e7b36de57a04bc src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayScheduleAssignmentBodyType.java: id: 269d6bb6a1f9 last_write_checksum: sha1:966dbaf0a837dc4f153fb6388273a0d48fc4ef14 @@ -9502,10 +10198,14 @@ trackedFiles: id: 8cf8b33571ba last_write_checksum: sha1:274d9460bd839ecc7a866aef0df752e561d3023d pristine_git_object: 89e8603e97d2370b287ec5ff990789fd3d8e9a2d + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayScheduleAssignmentType.java: + id: 17703c836b4a + last_write_checksum: sha1:88c89978d6fdeddecba5b817520d7a24abcb0665 + pristine_git_object: 7c038b4a31d0f1a4e2e7e021daafff0b1829572a src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayScheduleAutoPayrollEnablementBlocker.java: id: 9c74657886f1 - last_write_checksum: sha1:f5ee83b9e8c6c04f95479e6cd5cf688ad4e42fbb - pristine_git_object: ba9f7171771bfc1cf8d37a014b101d3cc49b9440 + last_write_checksum: sha1:21f294af25b8e96048758d258d45a6a127d1a826 + pristine_git_object: dde2e86b2b2047768a9d836898ef3f52ccd18c1f src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayScheduleAutoPayrollEnablementBlockerMetadata.java: id: 228be845fa5c last_write_checksum: sha1:83cea90f861439e22eb66bb8a56b94ea0f664fbf @@ -9568,8 +10268,8 @@ trackedFiles: pristine_git_object: e068478f540f0856f71da0c01210ed8fe3b69d89 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PaymentMethod.java: id: 079e7013744f - last_write_checksum: sha1:c554e23cc469192660e2af3eea4d1448faa16737 - pristine_git_object: f01cab13f6c0983dae0351bb7cc2931a20dce71f + last_write_checksum: sha1:1d474656054a553cd823b86079614860785663d9 + pristine_git_object: ddcf9b4092196403b46d7fe8fc953fc217e78b08 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PaymentMethodBankAccount.java: id: "527339563826" last_write_checksum: sha1:072a68f14e8a8801b5ba67cab22beb9918ff49b3 @@ -9598,6 +10298,46 @@ trackedFiles: id: 6b1f12359a05 last_write_checksum: sha1:2d045cfc9cff6fbfdcf5c311f49c52c94955c70c pristine_git_object: e1d43379ac02dd07c60a98cfd3585529ff44ae43 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollBatch.java: + id: e72159ba4546 + last_write_checksum: sha1:def91d0ef82cbeed5b9bc6917a1135ab48864c43 + pristine_git_object: e940c490d1b34c07413b0bbb4710a9d3da5b42c3 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollBatchResults.java: + id: 0d6333f37171 + last_write_checksum: sha1:e161ea3ab58c7c08e84695af8d581a7a8b47455c + pristine_git_object: 284915fa2ff2272e62ce277eddf9ac3f613f532e + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollBatchResultsCategory.java: + id: 4213424e038d + last_write_checksum: sha1:c89c71b7b751dfc641268f95349254671dd2fee3 + pristine_git_object: cf68e19f9240d5e575aafcde20e0e880c5b1eff3 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollBatchResultsEntityType.java: + id: 9802a38dcf11 + last_write_checksum: sha1:feecfa9ff96018c4e5ff1095d4caa1c4b2e6d2b8 + pristine_git_object: a3654ea416ca2616b4a78eb0b31ff4db2b3880e7 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollBatchResultsErrors.java: + id: bbe4850e19cd + last_write_checksum: sha1:da680a8c818197c073d2d9b511df7869d7cde70c + pristine_git_object: 4031e16a7360237c465b95be0a93118c75628d32 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollBatchResultsExclusionsStatus.java: + id: 5bcc8c88ada8 + last_write_checksum: sha1:cdecd0cc5dd61dcfabd2fac09fdc08b9fd15830f + pristine_git_object: d1a749932b39ad3192cacec69f78b20489c32d90 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollBatchResultsResultsCategory.java: + id: 40dd4829b703 + last_write_checksum: sha1:b7b12a9d10fdee3ff3b8179af7b546a4f9059609 + pristine_git_object: cd05663f03c2d8102f5a9bb094bed15a8336ed0c + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollBatchResultsResultsStatus.java: + id: 5f9789b52a4b + last_write_checksum: sha1:0bc0fb033ba9e6a20cd05f668c1a7b0bda5cd818 + pristine_git_object: c712fdde299b02a3ec97270f626edda5f48927dc + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollBatchResultsStatus.java: + id: c66cd2976138 + last_write_checksum: sha1:8de122ba7b5bc6a2bda4f2afca87d65ceca92466 + pristine_git_object: 9dfa7db2b3707f0b20a05e722acd69b46f66ffe2 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollBatchStatus.java: + id: 1020b71aca16 + last_write_checksum: sha1:ae20cf5cd25f77f99cd8dd9db816caacaecd6bc4 + pristine_git_object: cdfcfb4bd0ab96e3b6bcf0b72db13afad357278a src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollBenefits.java: id: dddde4b4f886 last_write_checksum: sha1:0702b64aef724ea760711a6e5d8efd508cb9541f @@ -9684,12 +10424,20 @@ trackedFiles: pristine_git_object: bc93dcca2b84296bbf18658fefa506771c795110 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollDigest.java: id: c497dad63a80 - last_write_checksum: sha1:39a620be54d332092b8b8ed24ffbccc68de18dbf - pristine_git_object: 44917f8bb4e32ba159940d5638f4d136cde72cbe + last_write_checksum: sha1:13710d1ef42d656ec13631120e87202613d68b65 + pristine_git_object: 99b5a9c1a9bc72796bed99591b128859dcbfc024 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollDigestBatchAction.java: + id: 656a590215ab + last_write_checksum: sha1:c1a5ae56fc26ed12cd471699d3d6caa618051721 + pristine_git_object: dc715c67e615c871abcdf5cec3064686abedd5ec src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollDigestResults.java: id: 4b86a19a89c5 last_write_checksum: sha1:8af406b239b6359664bd0ac14db516181e1fc1ef pristine_git_object: bcc63e2acdce556023b7dc3d3c52977300488ae2 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollDigestResultsBlockers.java: + id: 15b455b92a3f + last_write_checksum: sha1:3372ad18fe7732a766a7b779a5b126fb275f80ad + pristine_git_object: 327447225ca6ea7fd8d3a8084f3d96686204322f src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollDigestResultsCategory.java: id: e83a812f328f last_write_checksum: sha1:5d80ce3bfd41b8fb0eb51f104855e0715e947320 @@ -9716,8 +10464,8 @@ trackedFiles: pristine_git_object: 06b14c08c0ce91e09dfd8503f37f83ffdd62f2d0 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollDigestResultsResults.java: id: 722f28102497 - last_write_checksum: sha1:6bc853d1bdd388a2da7e559b4a62507f80aca8cd - pristine_git_object: 5497b3d4395106fd6e1de7f2af6708aa04ed6f6e + last_write_checksum: sha1:7a7b464fccb6cced6c9f01fccb9c7f8aca81ddfa + pristine_git_object: dd49088c10cd913b6014e8f39d19feff68f3135f src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollDigestResultsResultsStatus.java: id: f9f62c214420 last_write_checksum: sha1:fae8b3577d7a4fbbdb59888f7679a6b06e109f1b @@ -9736,16 +10484,20 @@ trackedFiles: pristine_git_object: 04294ea3c932a3f78e6fbf87add97b10d755303a src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollEmployeeCompensationsType.java: id: e242268b98b2 - last_write_checksum: sha1:c23412c9af02af6c23e9c12aceceb895bffa016a - pristine_git_object: 781831dbf6f7123d1f52e1d01154d38d5ca398dc - src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollEmployeeCompensationsTypeFixedCompensations.java: - id: e35f7441542a - last_write_checksum: sha1:c4636474f42fa095c8f7e6827eaa2d03007bbb4c - pristine_git_object: ee7fd87dc9dfa7505398d9214bac7521bbfaa8c4 - src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollEmployeeCompensationsTypeHourlyCompensations.java: - id: 56bb3aceb777 - last_write_checksum: sha1:dd08474f55797bdd74d1125f13f68c9efcaa923e - pristine_git_object: fc0389fee1493bdd3f6454e34447000b5d0e319d + last_write_checksum: sha1:92864f63a5748a04ff6318786afaf397ffa5c794 + pristine_git_object: ed703694b0142753ff7370c8953384b14720c4a5 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollEmployeeCompensationsTypeAmountType.java: + id: 77a6e2be30eb + last_write_checksum: sha1:29e873cceac297e72735e855f17139e9b9a686ed + pristine_git_object: 765a1d5b821ecca9d79f50a0c90662a09014d5a9 + ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollEmployeeCompensationsTypeCustomWithholdingsAmountType.java + : id: 7b6c936fb98b + last_write_checksum: sha1:ed199062d55f4475604ef16427cfd101c9fcdc0c + pristine_git_object: 76a1fa6e64e3ab58872b00bc7dde831e16b324b1 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollEmployeeCompensationsTypeOverrideType.java: + id: ff65a7fb22ff + last_write_checksum: sha1:ef4de47f38c841009f7c036501f4665968b56579 + pristine_git_object: 5c75838e5679e3879ae49442cd940ea21c01dbf0 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollEmployeeCompensationsTypePaidTimeOff.java: id: 0c803109dfc1 last_write_checksum: sha1:810820aa995aeb008837a0e7f6f05fb26cb09b4a @@ -9754,10 +10506,6 @@ trackedFiles: id: cdf99c5cd1e0 last_write_checksum: sha1:e0f7d43fd00dfdc6ced7add73dbcf98166087901 pristine_git_object: 708ad5da422f9544a014291c26a3fd2f51926490 - src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollEmployeeCompensationsTypeReimbursements.java: - id: 280b4199da5f - last_write_checksum: sha1:2c440670af4a174cced2a8ace0938ab676ab83af - pristine_git_object: 85f31f65c2f92a92b7d8b0f205ae3d3697457984 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollFixedCompensationTypesType.java: id: b635b6d14c29 last_write_checksum: sha1:c9f5acf2865f4d1045e96a76052a902a9fcc8381 @@ -9812,16 +10560,24 @@ trackedFiles: pristine_git_object: 9c5ba324edc5b1d0cc1bbd3fbe2671a69ce1382a src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollReceipt.java: id: 5d90e91fa98e - last_write_checksum: sha1:315246508f171abd0140cd51b18586368e307d5c - pristine_git_object: e7537d64f2596c265f53e3cca370ff36cbde0d17 + last_write_checksum: sha1:5bac6f0d471349f2969105c47ab98a57b69b36f0 + pristine_git_object: 2b8450c2ae92774037f0903c03f86d2be7d05596 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollReceiptEmployeeCompensations.java: id: 7ac94cadd9c0 last_write_checksum: sha1:45e9cf8642d737d84157b2b300fdd0da786a1b8c pristine_git_object: 4f84a169a3c42f3d8508612f121819082c0a3b22 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollReceiptLicensee.java: + id: f56da7058909 + last_write_checksum: sha1:a83274dc2550febf26d050ac69f89a0c560b68ee + pristine_git_object: 0379b1ee29f2a84ac7c83dc4da4ee393aafb36c7 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollReceiptPaymentMethod.java: id: b69970d92d5c last_write_checksum: sha1:5cb7af4fe2d1749cde4a9e168476ec283a556cb9 pristine_git_object: 610cb986a3b80e8e6b4d9ed8f08cb3521eb12e0f + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollReceiptTotals.java: + id: 3406669b7e72 + last_write_checksum: sha1:aca3e8edfc70180ff36d9000f2c274cfb9111381 + pristine_git_object: 9c8caf7ce0407aa4646ebff2b7f5fa4ef9661e23 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollReversal.java: id: 6aac8adfe08f last_write_checksum: sha1:2078ed98134dc7460481609e1cb897d14b7fec76 @@ -9838,10 +10594,30 @@ trackedFiles: id: 45fd4acf35ed last_write_checksum: sha1:fac9a8f36128bc7351a254ad4dfc495bf4e61f6f pristine_git_object: 2629e98cd6c6cde8046133b1b69a74e848f22b97 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollShowCustomWithholdings.java: + id: 45eea1c04885 + last_write_checksum: sha1:5b7512e5b5246473246d114b57780df02a7ed742 + pristine_git_object: 6e29b66ed8c684f6a346074bc91dde4698942687 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollShowDeductions.java: id: e6b311a46a37 last_write_checksum: sha1:7879314310e049e2840839103755385088525af9 pristine_git_object: 4c25c225d15e64217f799bb3764652dc79ba3175 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollShowEmployeeCompensationsAmountType.java: + id: 654c52d37c11 + last_write_checksum: sha1:5769c2ae97ef1c5fdadee26493021acc02b676cf + pristine_git_object: 19eb4ece4ec7c663c05fb750afe6818b89e9f0d4 + ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollShowEmployeeCompensationsCustomWithholdingsAmountType.java + : id: e34888856cc0 + last_write_checksum: sha1:6ba6cea51c890f68b1bd2e5a083bc4d0666e5413 + pristine_git_object: f87e1a45161542670265506e365abebfb0abccdd + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollShowEmployeeCompensationsOverrideType.java: + id: 5261e35935b6 + last_write_checksum: sha1:9fa50cdd560cdd9ad2d44e6804dc9cd083569825 + pristine_git_object: 81e927e56314d9a511c0470176c5b585ce0ddb32 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollShowFederal.java: + id: 0faa41d6b91b + last_write_checksum: sha1:e054d17be380079e461b371ed041cde1a7ed3b5c + pristine_git_object: 084f606af27822f863740de74dddc6fb54642845 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollShowFixedCompensations.java: id: c4d195789953 last_write_checksum: sha1:440df3c6f2bbb1fecdbbf374b14e6db7de1a1f9a @@ -9850,6 +10626,10 @@ trackedFiles: id: be36c2110d2f last_write_checksum: sha1:a5819f2f77f5694f376acc8809243f0edac345fb pristine_git_object: 54136f87260a0978cb95633fa1bf7622d205d19d + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollShowOverrideType.java: + id: 26aaaebad308 + last_write_checksum: sha1:a26f14341ef2fb3ce38a7a5d9d189bedd37d2546 + pristine_git_object: 657a612e64c9983f970fa98f25f673c3538d2504 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollShowPaidTimeOff.java: id: dbb6283949e3 last_write_checksum: sha1:bbe0fabfac4d077f2a7d4b94e6310afe2158e15c @@ -9862,6 +10642,10 @@ trackedFiles: id: fd716669733b last_write_checksum: sha1:d2364a0362f733d63de8948c3bfaab52b339d12a pristine_git_object: 59a4e4e827c5d4f79429d5e2107b56fe8916d7ff + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollShowState.java: + id: 260ae290fd72 + last_write_checksum: sha1:0d64dd16d55f099faa83bbdef46317b34f7bd403 + pristine_git_object: 2184a7ee24fe924b03cc5c5307b6b1428798203c src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollShowTaxes.java: id: 4e0033c5f2dd last_write_checksum: sha1:a10d2f6ea031fc127e525f9b78f472fc29440cd8 @@ -9896,8 +10680,40 @@ trackedFiles: pristine_git_object: 252f4e21db99c23d2002152cf13b6ac80b38314c src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUnprocessedEmployeeCompensationsType.java: id: 803c9718342e - last_write_checksum: sha1:6aef2531b5a713bbf43f96ea1fa529d90e5c803b - pristine_git_object: 34ca04466acd0bc1e08d2884fc66298c11372db2 + last_write_checksum: sha1:26e7f7f584fe1e9d6e9497c3cbb1fcb1fcdb272d + pristine_git_object: e3b0a8e629dfa330d55d7f479730b5241132d379 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeAmountType.java: + id: 3c635225dbd1 + last_write_checksum: sha1:17898ec5e39e3c71b07b43576297ecfd4324d025 + pristine_git_object: a5863545bc6e4b317ebdfbe78a4ead86b66c89ed + ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings.java + : id: 8b0809011469 + last_write_checksum: sha1:5dfcd8daa0307d104aa96b535e4bed0b8084f040 + pristine_git_object: be0e095c953e7bf94f9336bc627a067da3f8c6f1 + ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsAmountType.java + : id: f1f461b788f3 + last_write_checksum: sha1:86b6fdbf070f8fa1b42b0963b6e7ff769319edd7 + pristine_git_object: a834f05a9880ecc2d0ca231676345154ece165a7 + ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsOverrideType.java + : id: 68be4a54906d + last_write_checksum: sha1:31f7985e0090ad218c2068a23533a08d8152596b + pristine_git_object: 3eae7556a48c6caae318f55a727c352d52c3f93d + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeFederal.java: + id: 9b4b7c87f3c6 + last_write_checksum: sha1:7fbfb9c01e18909f10be61256c395dd4758d0718 + pristine_git_object: 6d27ea32b749fe847d52155eb5e351d6ae38a6da + ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeFixedCompensations.java + : id: e0b398c1b803 + last_write_checksum: sha1:40cc919ca71f2c03bd8c4d7ed4dbb84dc53bcd6d + pristine_git_object: 02e9b6b203540f850c949bdc981bec0dcf7ebb86 + ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeHourlyCompensations.java + : id: 0d6ce082ead1 + last_write_checksum: sha1:a31ae7e94e96c20f55d0f2c05cc18013b2a6ea08 + pristine_git_object: 081b5a4d7f3db1f088ee211b1080f2dee634728d + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeOverrideType.java: + id: dba03176dbe8 + last_write_checksum: sha1:374201feaccf1cc94237ed261e1b5e6019c6d828 + pristine_git_object: 78c685ad4a71d33ba92c64a45cc6af5a7ce7fc50 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUnprocessedEmployeeCompensationsTypePaidTimeOff.java: id: f0d2fedd40b4 last_write_checksum: sha1:6d35e03e372681e983b7e200663377e6731ba25f @@ -9906,6 +10722,14 @@ trackedFiles: : id: 0932c3b4acc5 last_write_checksum: sha1:465b062ea5527a2521f9724000ab5e282d1a1e36 pristine_git_object: 3b7147054d3e7fe0be45e5c5ae86265189ac10ac + ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeReimbursements.java + : id: b61d8c4954f1 + last_write_checksum: sha1:174cf5a7a42209b659d5a7e6a630f36194f78810 + pristine_git_object: fe81ef960afa04e0cc87994fc70016192c7c7a44 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeState.java: + id: 188c037c1c06 + last_write_checksum: sha1:ebca69ba7303f71fbb415b0fc11abc8fce240bbb + pristine_git_object: 432e4dcec42ac1a140ccc3ec9bf6e54d4f6506bc src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUpdate.java: id: 30102b7e41de last_write_checksum: sha1:d99bbfebe936d84710139924b89591085ecfe3a0 @@ -9914,14 +10738,34 @@ trackedFiles: id: 0be33705fcad last_write_checksum: sha1:576c581fb05d22673bc8bd5ca09e68f774bc98c4 pristine_git_object: 6e68469bb913f6e5bebe17625890303f3abf6c14 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUpdateCustomWithholdings.java: + id: cb36be759453 + last_write_checksum: sha1:997730738e14e6bf4fdaefbf463f6a717b667ab4 + pristine_git_object: 250cda7d3f5c0647907e045e66008ce080e6b2e9 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUpdateDeductions.java: id: 3fb1f0dfb530 last_write_checksum: sha1:12a60d4a6bd5519f6c1fd539b87c2c2bdebee3af pristine_git_object: f57c12550e7ff6c6971032ee984c0f3852dc1717 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUpdateEmployeeCompensations.java: id: dcb5e436865c - last_write_checksum: sha1:66de3e685d59ca54ad6dfbd522127c662c47acac - pristine_git_object: f0c156940d5ebb69c2002a262ad3de4e532121ed + last_write_checksum: sha1:42f4256496df6ff3f095ee5f39564e7cd515a339 + pristine_git_object: d5bb82abb3242ab10e3882c52bfae83d0f7d9842 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUpdateEmployeeCompensationsAmountType.java: + id: 11d31922daf2 + last_write_checksum: sha1:d659a1cac878e3d5c08862a2cc1b85e27d9e565a + pristine_git_object: 7f43dc67eac9cd506e38a72cee03bba251f900e9 + ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUpdateEmployeeCompensationsCustomWithholdingsAmountType.java + : id: e764353eccbc + last_write_checksum: sha1:25c338fb77b70205d65671adda50aba341b79338 + pristine_git_object: 87ef61828aac8d504aff58d872ca04c4d7fb8007 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUpdateEmployeeCompensationsOverrideType.java: + id: 801a8e4f8604 + last_write_checksum: sha1:f952725a52dd359dcc07607bdcdc6b48536c2547 + pristine_git_object: 86b01e68ead5f95acddcdb9d6cbdafc3f8760d3c + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUpdateFederal.java: + id: ebdf09aaee32 + last_write_checksum: sha1:9b4de574d6916ec189995a6daf1c3735ab72f652 + pristine_git_object: bba0a47e9ab8f685bffdbb406536ea90facdcf54 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUpdateFixedCompensations.java: id: 0034a7974711 last_write_checksum: sha1:40352930372d26a8280e4cc8eaae37743af4c40a @@ -9930,6 +10774,10 @@ trackedFiles: id: ad8471cca649 last_write_checksum: sha1:a51fe0de53e23f943f21877a65615a28db13df31 pristine_git_object: 01be9a527de0ad106fec9269ba8289b8e45fceef + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUpdateOverrideType.java: + id: 030e15677c13 + last_write_checksum: sha1:96ee8827b79725fd3bebed964673a76c8e45e5d3 + pristine_git_object: 514a6e63e82c03f787abe5315b29f2e72ead3e9c src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUpdatePaidTimeOff.java: id: d64c2cb65f9c last_write_checksum: sha1:f14f3b33cd9daacd04d058cd008c669fe3fc68e9 @@ -9942,6 +10790,10 @@ trackedFiles: id: f562d300f6a3 last_write_checksum: sha1:9c5db7f3f1e6871f7c41165b430cf7610449e074 pristine_git_object: 8c59743c49899ab91152408b1112ba6ee9f6b998 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUpdateState.java: + id: fd2e3b84cc10 + last_write_checksum: sha1:27786b39c684f02992332e45d96d402e2a79d503 + pristine_git_object: df3659cc435c8229a3ab912e8607b965a8fe59a6 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollWithholdingPayPeriodType.java: id: f54abdd747ea last_write_checksum: sha1:c9886c24d4e5b523c0d6d48a156ab070d27cf26d @@ -9956,12 +10808,20 @@ trackedFiles: pristine_git_object: a13544dcc9b6fae06a0d67769149e8c3d41c6392 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PeopleBatchResults.java: id: 29c97e9b91d3 - last_write_checksum: sha1:157bfca1aeb4b17617a718fd93ef7a9219d8fc5a - pristine_git_object: 0af32112e0428af78b8ead2ac3e2158b60cabf31 + last_write_checksum: sha1:03ddf2d38a6848e00122bebc66590b09e5907c79 + pristine_git_object: f386212e3c6612bfc9bd599aaa4f80b8f2691656 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PeopleBatchResultsErrors.java: id: 6e77feb03bcf last_write_checksum: sha1:5adc7d31da62305f478c7413c622a93f2dc37bb2 pristine_git_object: 3b873fd380b579cfe6ddbde49b32b97644e06636 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PeopleBatchResultsExclusions.java: + id: efe1ec25976f + last_write_checksum: sha1:548f4617ddf7c0bc2ad9657f77514741f134c05d + pristine_git_object: a3eb95f3a8b370c665c9367fa2d77e9d491ba617 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PeopleBatchResultsResults.java: + id: f4591e5b8fb5 + last_write_checksum: sha1:84ff34ca96e15b3fdadc198bb4c099670b37ad16 + pristine_git_object: e5ad90f0091921f8f7ef1a511735621960e78592 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PeopleBatchResultsResultsErrors.java: id: 4c7e8dc641b3 last_write_checksum: sha1:82a456f598631efb70df229e1868af37f0b15d0a @@ -10024,8 +10884,8 @@ trackedFiles: pristine_git_object: 51674625095bee536c3bd762b46698a69a0213f0 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/RecipientType.java: id: d73577c35c61 - last_write_checksum: sha1:6925088ea20d6c287609e51d345cb50a073364d1 - pristine_git_object: e359c112603471be10c5ee13c81a9fc255fbeb2b + last_write_checksum: sha1:cdbf56b9644ff856032e28ba1b926e7113cefa70 + pristine_git_object: e054dfa74f3d3792732abc60ebf20d8148290aa9 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ReconcileTaxMethod.java: id: 58809aadec40 last_write_checksum: sha1:e4bd97a824858e9b22477b608e4e3f89e060e2de @@ -10048,8 +10908,8 @@ trackedFiles: pristine_git_object: e4a957dcf4e744cbeafa850c1d90b242e31f3550 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Rehire.java: id: 3aaa3867234d - last_write_checksum: sha1:8db52206558f73b37c1d8963df5b12504153657f - pristine_git_object: 3c170d0c1d68ef61b33584c9e9a20fef845bd47f + last_write_checksum: sha1:c083f3d74b2e776077a12d72b4bcf82e08d4f681 + pristine_git_object: 9d91ee1ed7193066a89d6f50027e158dfc844de2 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/RehireBody.java: id: dbfef5bad47f last_write_checksum: sha1:e2f3052c676019b93fb3c90655ffeb59f8c71864 @@ -10058,6 +10918,10 @@ trackedFiles: id: 8e7805f19891 last_write_checksum: sha1:0232df49356363db077b7e4aa33a91413cc1e80a pristine_git_object: 30f64ec322321ab5441673a9fa63af188565b180 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/RehireEmploymentStatus.java: + id: 605e19f0dff3 + last_write_checksum: sha1:5127c6795b47370093f9caddcde4a8a96329f189 + pristine_git_object: 2e18b9cc516a786cad14cbfebe43c2347166720e src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/RehireUpdateRequestBody.java: id: d81be37e7a28 last_write_checksum: sha1:a9014da01210ade791b419f0944d3a6e75a038cd @@ -10078,6 +10942,10 @@ trackedFiles: id: edc576838a08 last_write_checksum: sha1:af4cdd6a47fb83f3382f913ee6cefc40df7947a6 pristine_git_object: 87ec7ad25543fbc498ec935850ae1a051c4d69c6 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ReportType.java: + id: b16b27e80d0d + last_write_checksum: sha1:42e735e26d397ab757ed3ee252a9b35eb28b5486 + pristine_git_object: 50eda590915312de5c3b3f225e2c59a682c5a8f1 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/RequiredAttributes.java: id: 3c025c309660 last_write_checksum: sha1:6ac69dadbef59d1528b24b45ca1145825d4aa933 @@ -10112,8 +10980,24 @@ trackedFiles: pristine_git_object: b547bada937478e6beea6ae1f7084c9099d3e112 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Results.java: id: 3cfee98dfe0f - last_write_checksum: sha1:40a0c15d5823b4968dde41c1732ddbd7f3f326d7 - pristine_git_object: a0b1ec5bb8fb383cb7b714cc835ca113449dee87 + last_write_checksum: sha1:6e0b641ea522c6aca0cd3dae2a4e7e36ecf35e79 + pristine_git_object: 00687ca4e7ab05b22b7229d06f73f03f57ff6662 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ReverseWireTransaction.java: + id: 864c772f90fd + last_write_checksum: sha1:d29b47fc2a6b8aae2325eab6d7e88112dcd61c64 + pristine_git_object: 5eb4b6e5b55846484cf85e554649d306c9b42534 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ReverseWireTransactionPaymentDirection.java: + id: 0e6cef5ea3fc + last_write_checksum: sha1:b8fc8e2a0b75a75b0643d32a62d8aa3ddcac9913 + pristine_git_object: 04cbd9510f07b61d61b2b612ffaf2bf9d9eda1db + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ReverseWireTransactionPaymentEventType.java: + id: 3d95a87336cd + last_write_checksum: sha1:71f3ba7de8f23255e5b6969b4b5253af576e4ce5 + pristine_git_object: 5210cfc24c68a58ba32c32649fdb5a295e885312 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ReverseWireTransactionStatus.java: + id: 84d7a8061c99 + last_write_checksum: sha1:ad84456b0e3d9c7b3f92335bff72177e1716d687 + pristine_git_object: 41b12a849de6e1d4acf4188e4bf994b71ec9d29e src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Role.java: id: 013e4b9a9ec5 last_write_checksum: sha1:d966999e2f3f1a88a527fef4a4c3ea44acceac7e @@ -10136,16 +11020,36 @@ trackedFiles: pristine_git_object: 5eca32419e7444309257834e1b499bd640998023 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ShowEmployees.java: id: 0c84e7d7d7e0 - last_write_checksum: sha1:4fdb708ce9bbdeab6c4abc0621cf750893e3d411 - pristine_git_object: 667dc4ac44e69a41afe1683bf6db0d6721c573ec + last_write_checksum: sha1:397b0406623c73303c62cbe7fcafadc7b97740d1 + pristine_git_object: a747330eb432432ec9cf4ab66dc3d74a7099edef + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ShowEmployeesCurrentEmploymentStatus.java: + id: 5c44807c2f22 + last_write_checksum: sha1:9d2d47b3024a1f5be80f74ef3ed833ebacc3bd21 + pristine_git_object: 9f14449850439f1467b456eab09c643e66359962 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ShowEmployeesMemberPortalInvitationStatus.java: + id: 5cc4d07986b3 + last_write_checksum: sha1:1f7cb80b449ab9a1d90ffa35a9bf17953bb0a13a + pristine_git_object: a75f798775aed91a819ce55bcd2388e622941b87 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ShowEmployeesOnboardingDocumentsConfig.java: + id: 335ac6cd6836 + last_write_checksum: sha1:41e35675fc15830efd6409b48ee07dc91b55c770 + pristine_git_object: a191415a5aa94401b3fdc0a2bd3cb3cb56ccb316 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ShowEmployeesOnboardingStatus.java: + id: 778811bc9b63 + last_write_checksum: sha1:91cfe8fd192cad002e04e2b2075432ba516b4799 + pristine_git_object: 7b40c0babc343b8cf4fa05b0f42943aefa7841be + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ShowEmployeesPaymentMethod.java: + id: 5be3e3a069cb + last_write_checksum: sha1:157847eaab2d387bcd06c9478c7750712670bddd + pristine_git_object: 8686ef373c39a56d95a3c268308d41a3395e0368 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ShowEmployeesStatus.java: id: 6a2c59de36ee last_write_checksum: sha1:83a164a69a6d799319abb7ec2a9cef98ebcb861a pristine_git_object: 40856bb8ccb134cfff61e115f0436e93c672d57e src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Signatory.java: id: 606b31b21e93 - last_write_checksum: sha1:5bae6fe89f9f0d031eb887d1be584aa61a64bf57 - pristine_git_object: 345c0ac7e8f4a67c5e15c4ac878aa99ee5223b19 + last_write_checksum: sha1:87d405811cc257c851f25314dc65e87b1fbcf3fe + pristine_git_object: ab9938cd034484faf729eb92cba341e32af751e1 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/SignatoryCreateRequest.java: id: fe85abc7840f last_write_checksum: sha1:994d77f858fef5937acfcfad0a655ab8adeaa476 @@ -10154,6 +11058,10 @@ trackedFiles: id: e0d26c2b945c last_write_checksum: sha1:0be76da45cac5aeee87f0d6ae5cc061d78781f0c pristine_git_object: c2443a574ccd2f28c24b7840138546adcde6ec51 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/SignatoryHomeAddress.java: + id: eeb76bf2f442 + last_write_checksum: sha1:946fd41d06259ad2e72c269bd468cbe95beca618 + pristine_git_object: bfeaf7737af0fb511c8ab148d1b8a98629a54809 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/SignatoryInviteRequest.java: id: 4e80e8826518 last_write_checksum: sha1:8c32ac65236f9d5fb27863a8915905b22ff7512f @@ -10180,20 +11088,24 @@ trackedFiles: pristine_git_object: cd0d118f88494c2d95cfd4406fefc283e14a0368 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Splits.java: id: 0eed19d2fbc4 - last_write_checksum: sha1:39d536a3c5738f8c80c8525fbffe97accc06e37f - pristine_git_object: 7e7a3600f11cb6cf8722433f6cfa9c01d7c7e038 + last_write_checksum: sha1:5dd6c83488d2886631b94fa8cf338d103881f9b8 + pristine_git_object: 3b1f5d93e3266d07ae49d3fc0fcd9e1f5a2d5bd0 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/State.java: + id: 1632f15e09fb + last_write_checksum: sha1:1b9c2110154c2a2a9a5d3ad8ba50366f996ac324 + pristine_git_object: ccf9f8dd482078a465c4f860a541755c8be98c6a src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/States.java: id: da26c3b91db8 last_write_checksum: sha1:8d5fee78eccb80d586d43d05890be219fcba9ac1 pristine_git_object: 4881cf7684f38c1b141fc8ab7e8f94cb03fce4e0 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Status.java: id: fa07c6df7b39 - last_write_checksum: sha1:fa2037288be6eeec948367573286405a2a0d5df8 - pristine_git_object: ae33fc0927b6ca03846d6be1b0a100c4c4870acf + last_write_checksum: sha1:77b7e9831e131b73ecffc44ddbb30593a4bf3754 + pristine_git_object: 34d1f9d2f98ea271d9d258ea8ab52731541fb83a src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/SubscriptionTypes.java: id: 70a61e49bea3 - last_write_checksum: sha1:04847e9b9fa9f4c54de96dd8505d5a8416516fea - pristine_git_object: d960670fc3811ec3c3272b8aa4a192cb4e6fb595 + last_write_checksum: sha1:453e53d83a3f14563a0461547c5032707c132719 + pristine_git_object: 0219f4a0bed6c8378952022af38d549e1a14c6aa src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/SupportedBenefit.java: id: 9fad4432b9d5 last_write_checksum: sha1:b293ced6df1faa5eeecb72a148140f400dfdac5f @@ -10210,30 +11122,30 @@ trackedFiles: id: 8973091939c2 last_write_checksum: sha1:c261a0874ce93d3f86a89a9a6512ad9dc94bdede pristine_git_object: 1496e03498994ae8c6c154cf48ba28eba1b72d66 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/TaxPayment.java: + id: 9853a5d3ed1b + last_write_checksum: sha1:d3da1b34fd6a1689ae68989ad197333e4df2e539 + pristine_git_object: 2586ed40de01ca2fd0dacf3da05d216fa8b33b55 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/TaxPaymentLineItem.java: + id: f015bff68aa7 + last_write_checksum: sha1:78b7d792bb34d703f28d40bc13f72ac866fc8447 + pristine_git_object: 62ec254d6e89ecd14b0aa40cd1dafc41b8aae255 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/TaxRefunds.java: id: a75a0b1c5954 last_write_checksum: sha1:cb8e940afa4f15508d325b415ad8d0e749b9f705 pristine_git_object: 9e2c4c19afe27bf5cc1691a4f030e1d112bb2a20 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/TaxRequirement.java: id: d2fedf1c77a5 - last_write_checksum: sha1:e4ad7763413f52663b568af9f8bfd72188827202 - pristine_git_object: 265b2265852d01b917a4ea4a6a213d59f56c60ee + last_write_checksum: sha1:2bda41a0ba64b63eeda73c56cbfe96526c010da3 + pristine_git_object: f35928272d56d3b57d669f32b2e6a3f843cbd608 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/TaxRequirementMetadata.java: id: 0ddb6c86ba22 - last_write_checksum: sha1:748f4a0120cbf230c79582688dae1b355ecc258f - pristine_git_object: c08f3815cc356d3f3d8074a1c5d5053490c75020 - src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/TaxRequirementMetadataOptions.java: - id: 0d825adf377e - last_write_checksum: sha1:d374b2f98cbaf9b255e0257938faaff37bd26c3c - pristine_git_object: 1eabeda7aed6a627caa91bbd766c5bf3c305529e + last_write_checksum: sha1:9d25938072bb4933ddcfb0c8c935314f6206e191 + pristine_git_object: 452cd601791cbedd4f01c87bab3cf1f50bbce8f8 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/TaxRequirementMetadataType.java: id: fd296eacaa57 - last_write_checksum: sha1:8900a5fa9799a4a8f49ed95087245481bafe8c00 - pristine_git_object: 2cb9798927d5adee9167352d75725e2635227345 - src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/TaxRequirementMetadataValidationType.java: - id: 2da0590880c3 - last_write_checksum: sha1:1ef8678f513a117f2d1ac72807819a0661fb5930 - pristine_git_object: eb4f2fe6ad3739851cc669a9a14a594420687852 + last_write_checksum: sha1:9ce66f0a8ba754580ab236d03f788a0fb5a1b0a1 + pristine_git_object: eec68244f83403a8259448307f23f3a8ff30d97d src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/TaxRequirementMetadataValue.java: id: 513dafbc2418 last_write_checksum: sha1:628f3f64bc55828ef8ed631d46a29cac8d39487e @@ -10324,16 +11236,16 @@ trackedFiles: pristine_git_object: 0488cff02af233f74b680c194751a3e1919fd660 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Totals.java: id: 70b79b91bc1d - last_write_checksum: sha1:9cba53e9f489f0907158dbac90bbc7a1aea0d9de - pristine_git_object: f54ca3ba33f2b0d937dcf804f67a91dc234e2ee4 + last_write_checksum: sha1:9d9b32d7cd8eebacb832fec2c40642ebdec6698e + pristine_git_object: ad9c5fdcc21dc2b5620263e048237840c69487dc src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Two.java: id: 37d45967957b last_write_checksum: sha1:efa58e9dad30816980b6ea9fdaa0dc4d6ed5a44f pristine_git_object: fe85f38e0cb24f39f92880230b74d30095357a46 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Type.java: id: 54f378806aaa - last_write_checksum: sha1:0d44f130e0a7ee5ab9e711a6d33ce4f8c7cd446c - pristine_git_object: 0f52c0c4c51eeba4ca7dd44301c1590029536a30 + last_write_checksum: sha1:1b3841f2b7abf4fb37f28a2f96bb1b10754767aa + pristine_git_object: 0a94245e8d738964068883c3332a5e157b6dbdfe src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/UnblockOptions.java: id: c8e09fc048be last_write_checksum: sha1:5c89dd222edfefdaa04e02d6eb4b0312c9aaa996 @@ -10342,6 +11254,10 @@ trackedFiles: id: eaa7e082c7d8 last_write_checksum: sha1:48021275f3a86a1ff921e7b7a03c4577cff79264 pristine_git_object: 4027176ea3d665e912c4490c53a1309e4ffc14b2 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/UnknownBulkReportItem.java: + id: e7fb113be05b + last_write_checksum: sha1:3bd362fb88edd0915f3a17e9e9271fb627a43191 + pristine_git_object: e77d2e697dc322d6beb90abfb016b70d01c8a0b2 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/UnknownEmployeeFederalTax.java: id: d47c8d3795fe last_write_checksum: sha1:c19cb98ed19bff87fc4a64abdb3f19e31bb5862e @@ -10376,8 +11292,8 @@ trackedFiles: pristine_git_object: 9893ef7ce7aa1fe9f85017ff6074aadaa375d2b4 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Validation.java: id: bd838b446a35 - last_write_checksum: sha1:d9a766a57e6d6816b2ca8d55d7cba7dde923bb56 - pristine_git_object: 46e5815955149a51b20de09e8b5eb6a786071f76 + last_write_checksum: sha1:b0db4bf582bc0fa5c05d1292c1e50d1d3800718d + pristine_git_object: f2dd9b6e45574d9932c7a8c37093f1e375c4234c src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Value.java: id: 60118a544a5e last_write_checksum: sha1:6c44146940a4d71df57c3a3e7de7cd6647edf15c @@ -10398,10 +11314,6 @@ trackedFiles: id: 8c826900c4f4 last_write_checksum: sha1:6cb5e7fced27108a1b3db7c3daf9b016bde7172c pristine_git_object: d14c9027c10b81c2e4d9d950e8d68aa0a977ef6b - src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/VersionHeader.java: - id: 7faaf14a1576 - last_write_checksum: sha1:8aa7648fcf4f1be294149479349e3eb5c836bfb5 - pristine_git_object: 2dd4c4130a34411389bef6623ca67227c1e12f4e src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/VeteransDay.java: id: 260c746d4b3e last_write_checksum: sha1:0edb05f342ce507f2acabee404b65daf271bef82 @@ -10412,8 +11324,12 @@ trackedFiles: pristine_git_object: e78bf6dd6daaf1d79ea0cf1b892246483b221bd8 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/WageType.java: id: 653d02be6216 - last_write_checksum: sha1:69988dce3eb9a0cc1f9a5ca2bbc3b236a11bed92 - pristine_git_object: b14f25fdd09ecc50b3314eab3799f530bb0f2f37 + last_write_checksum: sha1:a6f76442c8849b00b985c9423acebc10cfb2d590 + pristine_git_object: 62a93b8fa69596155b440e459d1621f445ebf247 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/WarningObject.java: + id: ff594a16c36b + last_write_checksum: sha1:20fc1a007930a7c331dd73b024163675acd58008 + pristine_git_object: afdd77c68898c4dee2d566182c9ded8849ae592b src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Warnings.java: id: 850d8405fc74 last_write_checksum: sha1:5a2a749046f5d7077914bebbe342e99390601e24 @@ -10480,8 +11396,8 @@ trackedFiles: pristine_git_object: 4280bc29568d208de97c80366fe9cc40bdf8e212 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/errors/ConflictErrorObject.java: id: b7704efc40e3 - last_write_checksum: sha1:7148a04e401ef2e315a048aac094ca0f2030058d - pristine_git_object: 632000d2544985f100f350532ab19cb73663a51f + last_write_checksum: sha1:bcabb19e23430048cba233eb4ab49ceed45e7317 + pristine_git_object: d49fabe4985f21eecc14d41c4891014797cdc634 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/errors/ConflictErrorObjectErrors.java: id: f6b8834a4ab7 last_write_checksum: sha1:b9f725f36d2ac03abaec22a334c89576f5426bd4 @@ -10490,26 +11406,42 @@ trackedFiles: id: 2c9b1beff011 last_write_checksum: sha1:4b6b2bc1d442720cb1966fbdeac398f81b3941ba pristine_git_object: 5c64159819fa219b8f191a840f119fb2407272ae + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/errors/ForbiddenErrorObject.java: + id: 9390f064a2f6 + last_write_checksum: sha1:6def1449fa209c12729fbdcd05255c400e33aff4 + pristine_git_object: 6503cdfc9788dbbf5e9535da0988dcf68c6a2d72 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/errors/GustoEmbeddedException.java: id: 676bf0dd7350 last_write_checksum: sha1:933600235e4cbe84c9769e58b7874f3f69133514 pristine_git_object: 53aff56de3aa695074ba55686ee81d32f81718f3 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/errors/Metadata.java: id: 99fd616792be - last_write_checksum: sha1:2d94f402095ab03203416d4bd9da6730be447557 - pristine_git_object: 9deb9c0f6afc4ae1c7b2163b6cd4d4f6cca5a597 + last_write_checksum: sha1:b21afdcf2a4a27def348a6aa124a83e54e0f9c4b + pristine_git_object: d0df932529577c919ae65b76548c3d8b6bcd6f6d src/main/java/com/gusto/embedded_api_v_2025_11_15/models/errors/NotFoundErrorObject.java: id: 2ea1103a0d10 last_write_checksum: sha1:c5f15f9ca47cc9b7b9706fb3095423480f8a4cfa pristine_git_object: 59622ae297b94b3dcaa5cf41de70d49f19f23974 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/errors/PayrollBatchConflictError.java: + id: aacd83e08cac + last_write_checksum: sha1:93c62c10e265ba9ce194832473858b17805c8be6 + pristine_git_object: 905e95a3472da84c505303b10cfc40340ce7e8e4 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/errors/PayrollBatchConflictErrorErrors.java: + id: 11aedb935b9c + last_write_checksum: sha1:7dd8b8386530e7c60a13fde762a51c01e7451903 + pristine_git_object: e0d1ef0304f9e7c8b5baa0be709d03f58a13ee4a src/main/java/com/gusto/embedded_api_v_2025_11_15/models/errors/PayrollBlockersError.java: id: 3d1cc24f6d64 last_write_checksum: sha1:d0d5245024b92815cc14fcece6766c6fdab5ac6c pristine_git_object: 40c724e71e485e771f443e4644017dd7de1eb7d6 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/errors/PayrollBlockersErrorErrors.java: id: 97075159acf7 - last_write_checksum: sha1:e01d988b5c6eb1e39d16b61c634720027708a40e - pristine_git_object: 0a5a6ac1589a1acdd405f49275b47c213f5fc0fd + last_write_checksum: sha1:3c3dca5fb9e2fb1e8c3a8b805ebd4a02beb9bea9 + pristine_git_object: d9acbdc826c4a7e7da5796685a713077dced9b69 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/errors/PayrollBlockersErrorMetadata.java: + id: 7794333de8ee + last_write_checksum: sha1:4346205f174b51ff344b938e185f774f625a9eab + pristine_git_object: 918f4f38dd8c729310de8f72530f6f08056eba5f src/main/java/com/gusto/embedded_api_v_2025_11_15/models/errors/PayrollDigestConflictError.java: id: ac26512a1c7d last_write_checksum: sha1:141a7df9420251b32d9af972f2aa6717a16c2520 @@ -10540,8 +11472,8 @@ trackedFiles: pristine_git_object: dd6698160f8247533ee7c8b9937beb009937bc08 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/DeleteDepartmentRequestBuilder.java: id: 20364b88f338 - last_write_checksum: sha1:5120cb673dfcea56eab2ef6ccfe0d0dd9811ddb2 - pristine_git_object: 60c39a505e7118e202d18e1dda6d9a6b6ba566fd + last_write_checksum: sha1:37930d4d744d99f5ad28ca20ed169d09b99d1af7 + pristine_git_object: f7b374b2d6c454d0e0d13e0a5c37cedd6829ac57 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/DeleteV1CompaniesCompanyIdBankAccountsBankAccountIdRequestBuilder.java : id: eb6797e9d389 last_write_checksum: sha1:ee0bd89246e7258c2493d924c4863048cb586992 @@ -10556,16 +11488,16 @@ trackedFiles: pristine_git_object: 2b374ee7d807444198167ad017541d5e9323e071 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/DeleteV1CompaniesCompanyIdPayrollsRequestBuilder.java: id: 7148e7696be9 - last_write_checksum: sha1:56e50d131ff3fce2d80821963666d451503c5395 - pristine_git_object: a52b70048c5947a04b0f4d84b2495eed79a0ffa8 + last_write_checksum: sha1:3707468615f10ea1f1e1a7dcc730ecad8aff5171 + pristine_git_object: b29fe43a760d70d3687d43a894138ff96745075f ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/DeleteV1CompaniesCompanyUuidHolidayPayPolicyRequestBuilder.java : id: 6f7bcef3c1d8 last_write_checksum: sha1:f45a6acc3877fa5c705ac95cb0c4757fdf585ff7 pristine_git_object: 0172de14dcce273d72ea4b3a6009db9091e47e45 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder.java : id: bb2e0bb52ae0 - last_write_checksum: sha1:ed7f775529d57cf9ae28cc8d07e20a26e33cb958 - pristine_git_object: 4dda71811f02a49049ec40103891e0eae883dee3 + last_write_checksum: sha1:7fab6414fce033c26064630af56412428ce2ab08 + pristine_git_object: bb26285271d454cbb49482130c9f506a479a2887 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/DeleteV1CompanyBenefitsCompanyBenefitIdRequestBuilder.java : id: 5bcd644a9e69 last_write_checksum: sha1:c68f4b70ed454cee902b6ce7a6b6c9b9f2d141a1 @@ -10576,20 +11508,24 @@ trackedFiles: pristine_git_object: 916641c01016089887da86227cc6b75300a3fea1 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder.java : id: c77a1e5b405f - last_write_checksum: sha1:647445a6e3cefee48e66e89f1bcbf16048194f7c - pristine_git_object: 5fe33ebe564f8e4f04115415ee8eb8cc61d7c891 + last_write_checksum: sha1:1f87e311402a98b7077b8ca7a5fb621fe018865b + pristine_git_object: 7aadf43f6d0045c9a6d2457838881c66e4998ae5 + ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder.java + : id: eed6dc0f4e7c + last_write_checksum: sha1:566b6f68af5114e741001a075a4ebb447e292928 + pristine_git_object: 3744d7b1d5957c22696a63a11d0f78b8f4d382f3 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/DeleteV1ContractorsContractorUuidRehireRequestBuilder.java : id: f073146545c2 - last_write_checksum: sha1:1c21348f02c4edfa37e56e2a83562c8c109107a2 - pristine_git_object: b8df94ca72f7aa30d9a75a8b99022214a1f97132 + last_write_checksum: sha1:f1d200308387091238957d4a919ab4b4dce9bb7b + pristine_git_object: 7daa98af7fc01f3caf9602dee02d1c8c4f950d3a src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/DeleteV1ContractorsContractorUuidRequestBuilder.java: id: d35caa191738 last_write_checksum: sha1:4eedd395c0c0f7f6f0b6f54929ef5a1da55730f8 pristine_git_object: db96904743bf42013a39a10466d5143ca4fff311 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/DeleteV1ContractorsContractorUuidTerminationRequestBuilder.java : id: 900f403f16f8 - last_write_checksum: sha1:4af3468098f0de0b3f03d49a13c0eeb0700a72ea - pristine_git_object: 504676e26b808318abc7a29932e5ccb806a2a967 + last_write_checksum: sha1:ef77aed48aada7ae83ceebc5e0c3d5a2f0e352a6 + pristine_git_object: bc2339ea4a227c8b117cf2e16bcc219a338afc1b ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/DeleteV1EmployeeBenefitsEmployeeBenefitIdRequestBuilder.java : id: 8431da3091ad last_write_checksum: sha1:6157474ac51fb5ecf38958e4f365ae3c1adf2a80 @@ -10606,6 +11542,10 @@ trackedFiles: : id: f4d04721ffaf last_write_checksum: sha1:141f3b893eee3df14a52264c408960721b9ddc52 pristine_git_object: aec7d80d8dd5001b3fbb30e5ca34c23d36fadf61 + ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java + : id: 9a8d7d8c6108 + last_write_checksum: sha1:0b5e21edca4b11196bb3dd7221e14c26717ef8d3 + pristine_git_object: 3acb063afa0de0f6ea7dfe4a844674eb86b1940d src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/DeleteV1EmployeesEmployeeIdRehireRequestBuilder.java: id: a1601036dcf2 last_write_checksum: sha1:548e3fa6c74ddc31a5d18df48293a5d01dffe148 @@ -10624,8 +11564,8 @@ trackedFiles: pristine_git_object: 48e56dc082e0c72bd4fe9343674b74b26bab05c0 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/DeleteV1JobsJobIdRequestBuilder.java: id: ac40afaf41b8 - last_write_checksum: sha1:86688e0e5b7f3d19e3bb8616bb69e5039677a055 - pristine_git_object: ed5075fc8a88255240f58c268c88908acbf7944a + last_write_checksum: sha1:0b4dd0d5230df7322624118ba0a6af3268d1179e + pristine_git_object: 011e61713054015f32c5bd0276313f7341b23d1c src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/DeleteV1RecurringReimbursementsRequestBuilder.java: id: 7589730b3fb8 last_write_checksum: sha1:bcfb15776b9aa1097016f014b55736c9b7836c00 @@ -10636,12 +11576,12 @@ trackedFiles: pristine_git_object: 557cc8acdf2932e6e0b1ebe525408faddbd73b12 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/DeleteV1WebhookSubscriptionUuidRequestBuilder.java: id: e34219c757fd - last_write_checksum: sha1:5c3474ea69e6bb4d52e3263bda242828647a0343 - pristine_git_object: 8cf3d70ab9829cb296dd16e0210bdf6f31acc689 + last_write_checksum: sha1:1d6ae1e7fc6ed21d5d3f475e16e940ccc4b1408a + pristine_git_object: 38f0f031c9095a1c92d2236656a89dac9044ab0c ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/DeleteV1WorkAddressesWorkAddressUuidRequestBuilder.java : id: b0932b9b4ce7 - last_write_checksum: sha1:4390fe6aea775119ad726ea6580aba33a8dd9d16 - pristine_git_object: 9ed35d1ee850c27aaf03fc7d5cf102bb968c2eb4 + last_write_checksum: sha1:d94d2a8b3608dece563434a08279e8e3cab179f0 + pristine_git_object: 1c0878df19814dab3d3726055ecca7bfdc1af616 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetAchTransactionsRequestBuilder.java: id: da5477da7784 last_write_checksum: sha1:fa79862c1b602c0f1d3962fadd1f16e4e3f262f3 @@ -10664,20 +11604,20 @@ trackedFiles: pristine_git_object: 0070b2ebe9e3aa391ef5b8a2f098ef3034b95e09 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder.java : id: 9ce934a9ef06 - last_write_checksum: sha1:ed6eb1c565889eaa3fda4403bf3c4f5adc48f354 - pristine_git_object: ca3de49e64207b25ff3b3feeb8474ddd9222127d + last_write_checksum: sha1:d0b2556704aa9db38305883c0f7c40adebb51b06 + pristine_git_object: 9ac1faaa891ffbc1156029f9d79da323802b63cd src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetCompaniesDepartmentsRequestBuilder.java: id: 89da35c2b3e5 - last_write_checksum: sha1:9b2f26d1bd3dd088a52a9ae51bd6151db1e269bf - pristine_git_object: fbbedf5abd2e719eba48e53abd35871ee30614b6 + last_write_checksum: sha1:a31f3f09484918b0d4ffd1915a42ad34f47c9bd5 + pristine_git_object: 56378ffe1849c11f7b24d5625af1be12eb4ae616 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetCompanyNotificationsRequestBuilder.java: id: 11c038b5fd7a last_write_checksum: sha1:b1e7abb3325a6066ae02b46b7bb9b27853f1cd86 pristine_git_object: 165d86df1a83782450bbccbfa5e525c2fb46b390 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetDepartmentRequestBuilder.java: id: da481a7c03d6 - last_write_checksum: sha1:ea7a0ed20aecfa723a5a38811019a180f9c56195 - pristine_git_object: 878276a352b1b68c45ca8df20df511166bcf7a1a + last_write_checksum: sha1:dc6da240cc1efc892bef6e8e41e2e7e62055e8e7 + pristine_git_object: a3bd16b3f2085217620601f979dcd32f07000c3c ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetEmployeeYtdBenefitAmountsFromDifferentCompanyRequestBuilder.java : id: 9db84f76f5a8 last_write_checksum: sha1:e369a051dca5d3aec4588c451d47bccde72f0533 @@ -10696,8 +11636,8 @@ trackedFiles: pristine_git_object: 9b5e2adbe77e6ac5cdc27f97fce17a0daf8b2c6a src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetNotificationsNotificationUuidRequestBuilder.java: id: eb10f293d7f7 - last_write_checksum: sha1:5b57a7059b9d4b4c3296a3689527f72daeffcdc2 - pristine_git_object: f3a7672e4839914932aa9cb7d320d7fbbf4d8217 + last_write_checksum: sha1:812ac76faeffc18f31a089565c5730af5cda6fcb + pristine_git_object: 8954bb3aeed7b9dfb2646c275543732e52545672 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetRecoveryCasesRequestBuilder.java: id: 6c914fd6df56 last_write_checksum: sha1:f160c45fb44085ab7792dd4e9a9624a644bd8427 @@ -10706,6 +11646,18 @@ trackedFiles: id: 2ec504953ea5 last_write_checksum: sha1:ba5c035b6478a8856098458116117bf9985b62ca pristine_git_object: 7caa8148b49244cec7f535fc9fbefd96003b51b3 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetReverseWireTransactionsRequestBuilder.java: + id: ed87c2eb838e + last_write_checksum: sha1:b1e84df3b864c48d4bf6698890aa251f8e213df2 + pristine_git_object: 2c5613abfaac4fa4ce5af3d0893aa9d7a0c272fb + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetTaxPaymentRequestBuilder.java: + id: 01f307a4f8a7 + last_write_checksum: sha1:fe318b0529d9e8e349535732a5f3a59d4ffd51e5 + pristine_git_object: fb1e50a530e45bc7a429c463716fa0aa5485d7e6 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetTaxPaymentsRequestBuilder.java: + id: 346e8f0476d7 + last_write_checksum: sha1:a9a1cd2c9688c2690c26e21a21d5ed78c68c11b7 + pristine_git_object: be7f7969820893350ded33baa0a5b30ef4b0bdf0 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetV1BenefitsBenefitIdRequestBuilder.java: id: e21ebce00c48 last_write_checksum: sha1:11a43a15d5dbeb7f6b5d3314e4edb699bba2b728 @@ -10722,6 +11674,10 @@ trackedFiles: id: 34153dcd5860 last_write_checksum: sha1:23918c91ae39c542433df275ec78fedce8ef1d10 pristine_git_object: 17321dbc89733fabe9baa4b2f5368e60c96f5dba + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetV1BulkReportsRequestUuidRequestBuilder.java: + id: 4368ee142c29 + last_write_checksum: sha1:3e3341a634f9802ee7b6f860da0a02e22349f735 + pristine_git_object: 194502785982504131b2f6c9b880cfffa5b4d2b2 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetV1CompaniesAttachmentRequestBuilder.java: id: 88341ea0d443 last_write_checksum: sha1:f8b0e9e5b707b8dd1b23e5d0c2bccf533f1d3525 @@ -10736,8 +11692,8 @@ trackedFiles: pristine_git_object: 6f131975ea3bc6526bedaffc3d7d7e3820761e45 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetV1CompaniesCompanyIdAdminsRequestBuilder.java: id: e2c3118f54a3 - last_write_checksum: sha1:1e18955560bbbb78816219f2f9c62489942e5eeb - pristine_git_object: fb00417d8faec540848d306bfbc83bcbb628e99e + last_write_checksum: sha1:230e7c5aaf2b5ff729030366d69c360119ec633e + pristine_git_object: 2ad99692fafba827e51f897da2a4267cdebe02a1 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetV1CompaniesCompanyIdBankAccountsRequestBuilder.java : id: 5d585b404c2f last_write_checksum: sha1:33c4233872ca4f486449e2067dcf66ae2b996976 @@ -10760,8 +11716,8 @@ trackedFiles: pristine_git_object: e847bec7202c0bb0ca223a2b11dede0186eaa93f ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder.java : id: a06e28199c68 - last_write_checksum: sha1:2bc86f34037816c3b46b52873754f625f872f414 - pristine_git_object: 71fda972285794e0dc8a9a9c93e22f0f5a922d1b + last_write_checksum: sha1:64a8ed5b8b019a1ff7b705319bee252dae908950 + pristine_git_object: 0928d208f4ac6ce45cfa783b76002ce94687e724 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetV1CompaniesCompanyIdCustomFieldsRequestBuilder.java : id: 398f77be23ec last_write_checksum: sha1:8e932d4a41774b677a1cc5a233257b5629fdbcb5 @@ -10780,8 +11736,8 @@ trackedFiles: pristine_git_object: 59aa70e9c1e76450fbd58436a25cfcc482c6e370 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder.java : id: 818d2cd68bbf - last_write_checksum: sha1:88d0b5a5e940e3c4ac8bdea4c5359a9bf39e1aba - pristine_git_object: 80c7675bbfc47e76886cdf47ac70d0dc17c42a9f + last_write_checksum: sha1:2f3c1823f6c3a4774d2506bf7a04410f7bf50f10 + pristine_git_object: 1ebd1f531234363e65311c36c12a358cebbf8c86 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetV1CompaniesCompanyIdLocationsRequestBuilder.java: id: 38d28d55cc1a last_write_checksum: sha1:0166ea71dd44462c07789da7234d94d9803ed7ae @@ -10808,12 +11764,12 @@ trackedFiles: pristine_git_object: 55f6d447703cada8103212bba6d4648a60842c7a ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder.java : id: 772ac43ef2c9 - last_write_checksum: sha1:e423ba03f90fe2621e2649924e1b47254f5a32c9 - pristine_git_object: 85e7f4aa45c103750ee568911a27885e7cbc77b5 + last_write_checksum: sha1:2305462f35a6b982feec63f37599b730e963f8a2 + pristine_git_object: 8194d7515154370172e22c5f09f8b6c5925aad0d ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder.java : id: 55976d20465f - last_write_checksum: sha1:6dcc8bda722094b5038d5e3965232101211c3a0f - pristine_git_object: 6df7bbea03f898918e7a04008b1b39c6370956b2 + last_write_checksum: sha1:69c04edab5ca60987226b4ded5d916157e3e2c3c + pristine_git_object: b807529384fdf0e75b3ea4a0d466dd47320ef63d ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetV1CompaniesCompanyIdPayrollsPayrollIdRequestBuilder.java : id: 7b837c9613d8 last_write_checksum: sha1:32d567679934d2dc0f858ab2dd6ec211da523947 @@ -10836,16 +11792,16 @@ trackedFiles: pristine_git_object: 6c2e5303e43465df762b5dcc180a15c8e281a17b ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetV1CompaniesCompanyUuidSignatoriesRequestBuilder.java : id: bb53efb94d0f - last_write_checksum: sha1:2d798af21c231cd876dd8549963e66f2ebe21688 - pristine_git_object: 1d487eb5004299715781e94dc745a50bbf6f0bed + last_write_checksum: sha1:a24d862eb0b3da006867801a7efc01a4f1926ec0 + pristine_git_object: 7e7cc18afc96be57b599500e3e17936d23a81472 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder.java : id: 4b0e2591c659 - last_write_checksum: sha1:0d85459cad544adc6db1ccfcc3b21dcf1c550200 - pristine_git_object: b6db1b297049130243090c581adfdd67f4770ca9 + last_write_checksum: sha1:a7ab3a5ebb126b204991ea3e330b22bf5d03dec2 + pristine_git_object: 6c98b2d90a1d2bd8fb58c61cba4010f6e98605fd ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder.java : id: 4ff644965183 - last_write_checksum: sha1:97c8c6c8a9400ae9700ac8713ea8bac990f87a2e - pristine_git_object: f9fd0f9507662d7826a238b7d276513e5ad3ab42 + last_write_checksum: sha1:3394cf060253eb1af71bdf12ec15fca48a0c3c36 + pristine_git_object: f215f33b89e093ff1099a90ee6e72a2ab5dd1e7f ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetV1CompaniesCompanyUuidTimeOffBalancesRequestBuilder.java : id: 30f802076457 last_write_checksum: sha1:ba93fc35464e3d7abc09dd6ce6ed6ceb10603e1c @@ -10864,8 +11820,8 @@ trackedFiles: pristine_git_object: 3d81c6b66cbfe73c956b3c2132e824b1140de33f src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetV1CompaniesRequestBuilder.java: id: cfe981e3e037 - last_write_checksum: sha1:4e125ac944a3d4e9a2d680c9ca66fcec0cba4918 - pristine_git_object: bddce5e2267898c6fbd7a3a7daa6ce092c9a3595 + last_write_checksum: sha1:a669f517032b6f48f85e493965b14ce5b6f0198e + pristine_git_object: dbfd3322cc516c432736f7ae9009b2adc97c05ba ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetV1CompanyBenefitsCompanyBenefitIdContributionExclusionsRequestBuilder.java : id: 8a930733c6ef last_write_checksum: sha1:0f1e981be83ba0020ca5026d44ab8b1c3226fab9 @@ -10876,16 +11832,16 @@ trackedFiles: pristine_git_object: 2595248c2ac99fdedb151166ca207cd83778f286 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetV1CompanyBenefitsCompanyBenefitIdRequestBuilder.java : id: 3f8e19cf7627 - last_write_checksum: sha1:7515b95b39e059aad192f8b8bbea0c6e07d95f2b - pristine_git_object: 9edb1b6a29b72482cb29fceb7b7a608ee0fc3282 + last_write_checksum: sha1:efdd2a87b33ea20f98cec7d0257bfe8ebca5dee0 + pristine_git_object: 01af024923ab23c791e3e711723da74111115d2f src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetV1CompanyExternalPayrollsRequestBuilder.java: id: 10f5149fa5a7 last_write_checksum: sha1:8bff65fbd1c3ff8be322444f764a893aab52fc18 pristine_git_object: c750a21f6661f8b99dd4bd649e18637d4c9933ed src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetV1CompanyFinishOnboardingRequestBuilder.java: id: 31a652928a49 - last_write_checksum: sha1:841398623b955c0b2b08e24cd28372bbca1d6d4d - pristine_git_object: 8c8fa7959130a2873faee188d17fa9ce51a2dac1 + last_write_checksum: sha1:7347fc20796178517f325da536b83dd9c916577f + pristine_git_object: 71751ee9c4bb0c2b3afa623ed0610e13cadab154 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetV1CompanyFormPdfRequestBuilder.java: id: d5f1f9ae36e6 last_write_checksum: sha1:bd15a80a1152c13fffd276a1711dd4cdfe30383b @@ -10900,12 +11856,12 @@ trackedFiles: pristine_git_object: ebbe91f97c79a83ff3b942ac082686a861c550a4 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetV1CompanyIndustryRequestBuilder.java: id: dae7a7c3ef83 - last_write_checksum: sha1:b28e63b352c343c65551b974087f077b97aaab5a - pristine_git_object: e8d1f1e472720f3d291b2aec275614c732604c65 + last_write_checksum: sha1:2f4a2014c4e1322cd70236162560e2963a5c1f86 + pristine_git_object: 3570b29e758155291c6865f5d6392d8b4f38e185 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetV1CompanyOnboardingStatusRequestBuilder.java: id: 85c10d2024b6 - last_write_checksum: sha1:a711c5533c7dd64eb5555ef50deea4ce72eb3d83 - pristine_git_object: 7868dca4a3a86aea3cfa166b547d49c2f9109730 + last_write_checksum: sha1:b682f8a2b357eacce68f1a08d7e3b0826bfbddb1 + pristine_git_object: 429e4d9a8d65163f012b6a9adab9eecbf9d0ddeb src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetV1CompanyPaymentConfigsRequestBuilder.java: id: d6437f35a5a5 last_write_checksum: sha1:194410bc7dd5505b04104715e7ba5f47c05a1805 @@ -10940,12 +11896,12 @@ trackedFiles: pristine_git_object: ee8c59a7a2083ba29e0d7ffd26849187ab7a0548 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder.java : id: fff56cc67390 - last_write_checksum: sha1:d876ae80b5b7bc24d9f986977318eb982ddd1863 - pristine_git_object: 569dd857d436af37e954a0009a93f5d7ed885b41 + last_write_checksum: sha1:5ded11e9a28314b7e0af035be60311a204e73090 + pristine_git_object: e18f9aaa8646a3d83c0547e8d06ad7354c5448f2 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder.java : id: 21fde0215d8e - last_write_checksum: sha1:2d1a1736585034e1426ce6e4be07b3d595644986 - pristine_git_object: f3323c6fe8a55bc7e6ea72c7e8f341709260cfce + last_write_checksum: sha1:9bb37d57a93839c3b3ade4ac7240797f95f2a2a9 + pristine_git_object: c74d0845f9ece5f97ee4bebf0cbebec4681a3b87 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetV1ContractorPaymentsContractorPaymentIdPdfRequestBuilder.java : id: 12ecdbd80b8e last_write_checksum: sha1:c964971d05f44a2133bda4d90628a2e7ebbdd4ee @@ -10966,6 +11922,10 @@ trackedFiles: : id: eb973f1d8933 last_write_checksum: sha1:51e45ca978161458db875fd58ef785c6fa6e092a pristine_git_object: 34c21e6e785db76c489c789cc143b8afb17befe5 + ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder.java + : id: ac981be2fda3 + last_write_checksum: sha1:2a98e195e625396d33c19f5b991b3f1adb3b0b76 + pristine_git_object: c430e583512f2fdbb53a1a8c8cfa54c72fef43cd ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetV1ContractorsContractorUuidOnboardingStatusRequestBuilder.java : id: bfd5a46d4178 last_write_checksum: sha1:2ccbe5e25814fff40e2776d35673699b8f4f3d58 @@ -10974,6 +11934,10 @@ trackedFiles: : id: 23ab66a52e4c last_write_checksum: sha1:8073f1d446fe42bf1326d0250d639b8e1658f210 pristine_git_object: ad0714beb63a203f321b96e7a254f42b7b52f6a6 + ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetV1ContractorsContractorUuidPaymentsRequestBuilder.java + : id: 43c39c8e298f + last_write_checksum: sha1:daeed643d4b39ab1d400178e8542f2b2033eac6b + pristine_git_object: 3c81275d8ce05792e40c46a6a934dcf2769becad src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetV1ContractorsContractorUuidRequestBuilder.java: id: 4774f08d271a last_write_checksum: sha1:250a51399095eba081e6ebd56db7635886668b74 @@ -11000,8 +11964,8 @@ trackedFiles: pristine_git_object: e3024531d32307361a8ceed5c95aff2c8604bddc ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder.java : id: 7f23dcf48672 - last_write_checksum: sha1:9e0af844d8e0f3abf6a128dde7ea14de8aafd99b - pristine_git_object: 6b263f69ff55b30463216b49361db0061064178b + last_write_checksum: sha1:1f6eb57fe654880a4b50250d471734a70a376bf8 + pristine_git_object: 2ffb9505436386298cc703e01440ffb39302f3ff ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetV1EmployeesEmployeeIdEmployeeBenefitsRequestBuilder.java : id: c7a805ab3b2c last_write_checksum: sha1:f986f9e63791c8c4cbfb64df1d2df9c9ee5c6ad1 @@ -11020,8 +11984,8 @@ trackedFiles: pristine_git_object: 4ec73f8c431bdb2374b33274b89d362324ed80c8 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetV1EmployeesEmployeeIdHomeAddressesRequestBuilder.java : id: 9d0d8eb2db78 - last_write_checksum: sha1:99515621073b59d40a8a77c26ed1f8b955ceeb18 - pristine_git_object: 981e4c4ba836ae01f9b54465f40e3c55657ff925 + last_write_checksum: sha1:f2abdf7281646462df90935cd674dc4e6d00b80f + pristine_git_object: d521f0a672298a2da12211357608fdecb690e940 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetV1EmployeesEmployeeIdI9AuthorizationDocumentOptionsRequestBuilder.java : id: 19b2ff711f57 last_write_checksum: sha1:012d0d6ccdec2c6b43835fb3d70fb765c0b95b39 @@ -11038,6 +12002,10 @@ trackedFiles: id: 75eab714b50c last_write_checksum: sha1:a5e218c23e48e742c8f89acb782f07442189a079 pristine_git_object: 218985ad3715c4c7f386749ac99780c17e4b6a39 + ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java + : id: d0455e8cfadc + last_write_checksum: sha1:deba963379712a0c11860715a109c29e20c247c8 + pristine_git_object: 53f85c340c3e7ecaf3e6e1476e7501baef474426 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetV1EmployeesEmployeeIdOnboardingStatusRequestBuilder.java : id: ca5b27d483dc last_write_checksum: sha1:c6be900c6514f17fb53dc8c96c0a54a7af01f0e5 @@ -11064,24 +12032,24 @@ trackedFiles: pristine_git_object: 4a847846ab54ccd4a9c13a430130e2e871507308 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetV1EmployeesEmployeeIdWorkAddressesRequestBuilder.java : id: 393d86415d2c - last_write_checksum: sha1:35e0358231e14a1688a573e1d678f79c5261b0ca - pristine_git_object: a656c03e09134c6bb0421b65e3741e0588f36ecd + last_write_checksum: sha1:1bc27026df1a81a26ccc8e8aa458c43d81ac15c7 + pristine_git_object: eb88c2bad0079508b7551005ba2e0dec66709dca src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetV1EmployeesEmployeeUuidPayStubsRequestBuilder.java: id: 2573f0983238 last_write_checksum: sha1:95d9a244e57f642f87f3f56d560e9ab1e293f30f pristine_git_object: 9104e185621f7a39f81f2d4d04cdccc5b6d9ba70 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder.java : id: 815f4af22628 - last_write_checksum: sha1:138681e2e3db98dd1059cd636c0f7b8bd8ea98fe - pristine_git_object: f74cdd34ec159335ec49fef2051dedcc35e42195 + last_write_checksum: sha1:7656ca6b0fde69e959426f8c5d6fbbf7e5f93fa4 + pristine_git_object: 3aa0f7bcdfa5670f90db2e45b911f410096f332b ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder.java : id: 78028293a42c - last_write_checksum: sha1:27429613c9506ebb28e9d49d3deab56b377767f1 - pristine_git_object: 3f3ca30ecfb1f4fde096953b82ddad14dd65cfaa + last_write_checksum: sha1:a186237ed00e07545c6ddb1d0a9fd23c02fb85ed + pristine_git_object: 39c148db4eebdc98c0c8e71ea60cd7c8c34705f2 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetV1EmployeesRequestBuilder.java: id: 0507bd199306 - last_write_checksum: sha1:ad5dd44974e7045175d0ad84e8ebf85b9e644baa - pristine_git_object: f768fec9cc0ac9c2256b9da40149268600f79d96 + last_write_checksum: sha1:cf0d2549ff147b447e357fa47abbcdacb8304811 + pristine_git_object: 0e2c2eb03bc45839b6c0f330e44e2ae50200b78e src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetV1ExternalPayrollCalculateTaxesRequestBuilder.java: id: 7e4411f067ee last_write_checksum: sha1:52f4a576c7ac98a247a328585de1718e2f93bde1 @@ -11100,48 +12068,52 @@ trackedFiles: pristine_git_object: 217593fd6eed4837ca27c05470d4d83eb85a76a6 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder.java : id: 00715b1530ef - last_write_checksum: sha1:6b90ab563bf603f37cbb72b15b93f7b6cdb5055f - pristine_git_object: 700837f7c3d854b6392260d633afea5a366dd1d2 + last_write_checksum: sha1:afe3f592b673ea7f822eb93a60440ff9e27ca8d9 + pristine_git_object: 90859ec73855267ded2900d55b6bb241bd9dfc6c src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetV1HomeAddressesHomeAddressUuidRequestBuilder.java: id: f87f825f752a - last_write_checksum: sha1:5909760f7452550e51fd4f2051f74f732eee24e4 - pristine_git_object: 51ab202cd2198f0cc8215c1919613f88d1ecd800 + last_write_checksum: sha1:f05dc826c81ce6c86d433e326917c9fee3fd06a2 + pristine_git_object: f6dc9e8dcc6febd89e98fc3d121b09fba82f0078 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetV1JobsJobIdCompensationsRequestBuilder.java: id: 3fbb397635fd last_write_checksum: sha1:54689d4a9e2e384f77ae2d0b540868de31340e8e pristine_git_object: d001e8919fe846c9d4e865d677b861e0e6f57343 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetV1JobsJobIdRequestBuilder.java: id: 3ae72951c4aa - last_write_checksum: sha1:f943ab3d7794b1a1d85c8f214da39349e827ced9 - pristine_git_object: dec3ed078fb2c7e49dd8423609da17c0b8f4f7e1 + last_write_checksum: sha1:062e8d2ea0442d41131fe87225775fa7145ae15d + pristine_git_object: 07139d52891a1fd2fca4be4c6a3392b75a9444a4 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetV1LocationsLocationIdRequestBuilder.java: id: c36e0c001d8e last_write_checksum: sha1:b7c54f5e6d2e65067f2a0744750158a564178567 pristine_git_object: 64e789604ed698f586f14c75ada96822932a25c2 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetV1LocationsLocationUuidMinimumWagesRequestBuilder.java : id: 5bd3ba0b94b6 - last_write_checksum: sha1:33ab07a272393d91dedddb823294598b89737c19 - pristine_git_object: 6417f024402a9cc954af43a6a967929b8e329c85 + last_write_checksum: sha1:a5c24260407f8086f30d2f51e200c1818d038c0f + pristine_git_object: 0a85d35aebca67b60be01917abe83225f86bc48a ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder.java : id: d6c8af496c81 - last_write_checksum: sha1:2173af8cc4802c4c349f5812329445c8bb79eb43 - pristine_git_object: ebbcc1fb0dc69f80f28751cf978a3ac7899b8008 + last_write_checksum: sha1:9ccc30da4f259da7b4e85909de5d23b9111650dc + pristine_git_object: c8462a6e7261383237b0981de897acf75fb1da32 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder.java : id: c9a6f1405a66 - last_write_checksum: sha1:96c36c824034bf9b73c57581a986385721ac6540 - pristine_git_object: 40d19e2daee6a1e6ec935a5a1b5ea96eb524af07 + last_write_checksum: sha1:1cfe45bb22506a7a57d987491b5ee2eaca9d9384 + pristine_git_object: 23240a4462e82427251b563a0d78e554e66abee3 + ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetV1PayrollBatchesPayrollBatchUuidRequestBuilder.java + : id: 7f8b44017df0 + last_write_checksum: sha1:d890ee486ae7c26ed652a5ec28c8ce6d0ab6f6eb + pristine_git_object: 6424f3e3596db280253315cfeb3d69632c02c406 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetV1PayrollDigestsPayrollDigestUuidRequestBuilder.java : id: ff94e6137667 - last_write_checksum: sha1:eb7c584e8abf69127487eb8b57660a7f8b2e15b1 - pristine_git_object: 7298be218f955f6c2e6e6ed448e332b76e140b18 + last_write_checksum: sha1:ac951557a414ec5d32cede5b7f2ed0fbd3c2ad4c + pristine_git_object: dda4666cbe2174f3f3bc61d233fcd2e678cb23f1 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubRequestBuilder.java : id: 7b0a06139273 last_write_checksum: sha1:76119bfc928a551545e31aa067f093e40e34d932 pristine_git_object: 25ff8fff177515ddf887ae12986a7f92a12a42d8 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetV1PeopleBatchesPeopleBatchUuidRequestBuilder.java: id: 706e448fe49c - last_write_checksum: sha1:34f94b6920c09197816c610338d45c46aff129c8 - pristine_git_object: 0a178562862cf238d8ff8d8a7979e1bff7c1b5ab + last_write_checksum: sha1:b8c2ba48c1a3ca8744b2d311c72e5920dc76d01a + pristine_git_object: cc26aa4a1621d4bc6409e02720c62b60ea94afdc src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetV1RecurringReimbursementsRequestBuilder.java: id: cd179b6150d2 last_write_checksum: sha1:f30283f2f25c7b7e70d1f89dfbf225275104872e @@ -11172,16 +12144,16 @@ trackedFiles: pristine_git_object: d7b565954558922ec8915c64bd70214bbe97f4dd src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetV1TokenInfoRequestBuilder.java: id: 8e7918fc2b54 - last_write_checksum: sha1:ae200fcf82d1c5b215f6b706f8497ba5fe9d9380 - pristine_git_object: 25a369659edbbd44482e27cf07d048b753c887e4 + last_write_checksum: sha1:8f4d797f1b943c77849a87105b94e4b9b3d5a264 + pristine_git_object: 71aa5ab14a7c53c339e1f8296cf7c81a85b6c93c src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetV1WebhookSubscriptionUuidRequestBuilder.java: id: dab2a7dbbc3c - last_write_checksum: sha1:2329d37c732c0f5a1faf3aaa011da236903d2193 - pristine_git_object: 7685e0e980f5c793843e4e652cd17bc35841baa5 + last_write_checksum: sha1:54e351f12930259758e46101185b28715e4868ad + pristine_git_object: 520066da5b3640abba2165085cb84e8a3ea052f3 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetV1WebhookSubscriptionVerificationTokenUuidRequestBuilder.java : id: 0a0866d11f2c - last_write_checksum: sha1:037ede53571b4fa00f7a46078e2ce9a82540ab6a - pristine_git_object: b3fde8277154accd0372b05f4e340dce3ecd3432 + last_write_checksum: sha1:353c0f9c48ceaf8c603211a8a86b64874183a65b + pristine_git_object: 2b79fdf9aefdca85c40ed8a0db78082db7de15ed src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetV1WebhookSubscriptionsRequestBuilder.java: id: 9a4c242dfadc last_write_checksum: sha1:72d276973cc8c294a303cfe8fbdd4cf60da5591b @@ -11192,32 +12164,32 @@ trackedFiles: pristine_git_object: 858519c7814d733d579e0fbb9dfd65f87f9080d3 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetV1WorkAddressesWorkAddressUuidRequestBuilder.java: id: ffbde2916886 - last_write_checksum: sha1:b93e18c5b8017d9dcb3f1f4565cda3c608c4678f - pristine_git_object: 0d6362a50f608ac9df1831ab04ddc3cb27d51ae3 + last_write_checksum: sha1:c073ae08a52c1a703d7cacabe1f10eeba64c0498 + pristine_git_object: 453576bb9e3ceff149095eed27f9ce48d9a13e77 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetVersionEmployeesTimeOffActivitiesRequestBuilder.java : id: 7c0cafc6d89d last_write_checksum: sha1:4ff023b5d9370c81c17d24240f466b788d4dd00c pristine_git_object: 251784ff55ae24e0937c0d395dcb960f690fae52 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/GetWireInRequestsWireInRequestUuidRequestBuilder.java: id: 174d53e599d2 - last_write_checksum: sha1:ffcdef5d7bc209553b34eaf5f8b8d55c9f788aee - pristine_git_object: 4650d05955bb30b796f48676b760520910f37e60 + last_write_checksum: sha1:60cfc60b6226bdb14e2b3b5f891ba893fe7b2510 + pristine_git_object: 5f06cbaae70d94b56932410bafec5ec624feb9d7 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/OauthAccessTokenRequestBuilder.java: id: 66c8ba169c57 - last_write_checksum: sha1:0b824eec3bb442141b26d9588e80b28c4efe7bd3 - pristine_git_object: 8442a2e9705d21ed24f3bfda60254795797f604a + last_write_checksum: sha1:4819d7f4002bb7910f5723e9450bb2170aa45658 + pristine_git_object: 898b1d51d5273f222f512d83f20aabb2874b1d7f ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder.java : id: 416c8a184eaf - last_write_checksum: sha1:b788deb57bce38b7ae8d720f8042569ce847cad6 - pristine_git_object: 150aeac24b9b16e394a5c558c214732f25c1ab0c + last_write_checksum: sha1:ac90e518d423613cba6cd8c4ade9724146d8d8de + pristine_git_object: 474087b2a67422b26e013a218e416b74e106fbdd ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder.java : id: 62c81861d865 - last_write_checksum: sha1:c52537482fbefc6320463c589300fb36a27c5d1b - pristine_git_object: 2b3188f62defcfb26fdc39421632b73580e4c348 + last_write_checksum: sha1:27dedeec5fb8b23ba0dd032866ef431866e2de2c + pristine_git_object: adcf4c946884ef69da236817a9699e130389a9fd ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder.java : id: 39dfd75ac720 - last_write_checksum: sha1:becbc4c88386db1ba88a82415371c9996a72090b - pristine_git_object: f44888c6470a1e3477daa702f7d465bf06f3c179 + last_write_checksum: sha1:a1dfcf9781fd63e85a344422da45786d2380e750 + pristine_git_object: 3aea99807266c07f871b063fd71b69b665c81527 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/PostCompaniesCompanyUuidReportsRequestBuilder.java: id: 9ef1bedcc50d last_write_checksum: sha1:60d9571ec06d2cc8e11897d79320c893e8f0fa84 @@ -11232,20 +12204,20 @@ trackedFiles: pristine_git_object: 2ec24b2c7d823294e2d92afe122fb608d3ef635e src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/PostDepartmentsRequestBuilder.java: id: 6903d94d316c - last_write_checksum: sha1:8f7173729998cb0a5f0b329c6dd9bc23356cd2d0 - pristine_git_object: 622522fb4edf1080fbaf4374501511f5024743d8 + last_write_checksum: sha1:572e0039df0c20ad2d29b66c3e8d89a53db4af03 + pristine_git_object: 66b8eefbea85ad8fdaf6e91f7a98d1fde7a2c91a ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/PostEmployeeYtdBenefitAmountsFromDifferentCompanyRequestBuilder.java : id: 8f6320787cb6 last_write_checksum: sha1:c5cfa936cefe14ab4eb89262276d16e9df84597c pristine_git_object: 459c32d1a8bc2c78bb7d2a4fe9dae56d5dafca4d ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBuilder.java : id: 472ef9bf827c - last_write_checksum: sha1:70036ac10575a2551aa4d5605353cae7768318a1 - pristine_git_object: c664f34e799dc5e4b90770e8ed0b99e210d8a192 + last_write_checksum: sha1:de8ba488506a666e9bb152fc5394083cf4146287 + pristine_git_object: f4b7cc2eea64ebf9cac758714503933faac9e1e2 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder.java : id: eb3a37ce8449 - last_write_checksum: sha1:5837ae11a1ae2450299a577e5d9560428e8c4cd3 - pristine_git_object: 5491a9fefa2af0229a59d681eaa0fa810c0e29c7 + last_write_checksum: sha1:859ef042c93005a5c84855abc9867e85d10262ed + pristine_git_object: 0b0f0d0d213d8b3069dfde8521318e04a269b67e src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/PostPayrollsGrossUpPayrollUuidRequestBuilder.java: id: 92a634e78eec last_write_checksum: sha1:a14ad6dd6125ea734344c2062710323c088b04ad @@ -11254,6 +12226,10 @@ trackedFiles: : id: de7b8633fc7d last_write_checksum: sha1:155d402afa6b7b06ea860ce158b0921c22501b93 pristine_git_object: 7b297413ec92c1da403f59ae5d2b2ab24509b2f7 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/PostV1BulkReportsRequestBuilder.java: + id: dd8fc45e4ebf + last_write_checksum: sha1:9fdb85e6cb2f0e0285140b5207d71c9b3dd52e8f + pristine_git_object: 4a27aa60678727618930207c3aa72c0830a3708c src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/PostV1CompaniesAttachmentRequestBuilder.java: id: 2f7fe0c7550d last_write_checksum: sha1:50dac4cb2903817cd87f26eb8360b40f7a3a4af7 @@ -11308,8 +12284,8 @@ trackedFiles: pristine_git_object: 33e966c219011be4c1fd817f08c99835eb8cc768 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder.java : id: 202a546bcaa9 - last_write_checksum: sha1:21e3aec14c2cc449255e207c378c4b23c1bf6e99 - pristine_git_object: 3599f4f0eba56c633b59f7d3fe24ab5cb55d7cbe + last_write_checksum: sha1:429f8a15b47c1812fa0623a743535532a1f774b6 + pristine_git_object: 66d18c3aaaf57dda703b53a82b41e1b08b5a8831 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequestBuilder.java : id: c243936d8955 last_write_checksum: sha1:28a22e7728352a5abd97cebe822730436037f095 @@ -11324,8 +12300,8 @@ trackedFiles: pristine_git_object: 7af1b4eed1fa24f0987ea09cb8564a9687249ab5 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder.java : id: ad46552d4927 - last_write_checksum: sha1:cf50bbf099894fb617424d482a936b197e87ecd2 - pristine_git_object: 6d678af13d63ea6ff19a49493126a9733ade0429 + last_write_checksum: sha1:0f313050cb152b6248eb5ddaeddc65ab62669988 + pristine_git_object: 323bb6619fdc53e4dc0a37327fb1f27f40b8564f ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/PostV1CompaniesCompanyUuidTimeOffAdminApprovedRequestsRequestBuilder.java : id: "147351079287" last_write_checksum: sha1:801afe92333bea3db94cc085badd274da55a4416 @@ -11348,8 +12324,8 @@ trackedFiles: pristine_git_object: b54d5b6a7c567f192b2a0931a6c829e1e39093e4 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/PostV1CompanySignatoriesRequestBuilder.java: id: 929fafc74807 - last_write_checksum: sha1:c3ee03a1941d012f36edebe3bbae3f396accd421 - pristine_git_object: 90e819b3aeb89f428c007b3e846f4e88bfc54f4f + last_write_checksum: sha1:d947bf027599b0dad149e808005d81d05a6b3c5e + pristine_git_object: d61fb50dee39cd0fd39731584ce9b8660322f34f src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/PostV1CompensationsCompensationIdRequestBuilder.java: id: add59a1d82a7 last_write_checksum: sha1:450083590a7f324b89bde5e2acbf67722ab48bd2 @@ -11358,14 +12334,18 @@ trackedFiles: : id: b6e4c825dbf8 last_write_checksum: sha1:12f34fba5577ef95f987a5a63f1714120e8167f9 pristine_git_object: 2b7d188682f262a9025ef3b4d50d0adb9892cdb4 + ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/PostV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder.java + : id: c491e8f1696a + last_write_checksum: sha1:8027d50ead9d6047186031f4403d05e7562bb777 + pristine_git_object: e4e6dc56fb1d5257ae24db3142712fa33f67bc2d ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/PostV1ContractorsContractorUuidRehireRequestBuilder.java : id: 43ed99174093 - last_write_checksum: sha1:d77e0dd6aca48b504e84db9dee6f8a11c2139cf1 - pristine_git_object: c055b7487210e6d3895d188000f0e5ed7e608003 + last_write_checksum: sha1:259a0b0f2882c317629c14a293784b5f20b4c9ac + pristine_git_object: 8ee844cef8db2e9f4bfb4d39b00672857c112b2a ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/PostV1ContractorsContractorUuidTerminationRequestBuilder.java : id: 8e6e86f1e0fb - last_write_checksum: sha1:81ec0a7aa151235364636fffbdef49c23de124d0 - pristine_git_object: 45aee9085f371fc2d124c911f38f167b4a72c5dc + last_write_checksum: sha1:d7b28ce5552ab64fecf767a809c92aa83e5ac672 + pristine_git_object: 2c5c992b4112b4bd5db07242d4c7e74dffc867e8 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/PostV1EmployeesEmployeeIdBankAccountsRequestBuilder.java : id: 0a7f6865aa7f last_write_checksum: sha1:ceb9b9adefc86eaeed80e832c5652871ba27abe2 @@ -11380,12 +12360,16 @@ trackedFiles: pristine_git_object: 9409afceaff25ba08d0f6e58c68b6d5bca5381b7 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder.java : id: 818ef2589ce0 - last_write_checksum: sha1:4840f2212fb2d6f24abdb86be6027519b0252282 - pristine_git_object: 3e32ccf5e640e2670a6e995a0ed19bfeef3bb3a5 + last_write_checksum: sha1:5facb645da760f2459ca525943a5877a9249147c + pristine_git_object: e3aa95e4999dbc48260bced0b154de5056b7bd31 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/PostV1EmployeesEmployeeIdJobsRequestBuilder.java: id: edb8b1eced6f - last_write_checksum: sha1:bbd8e1193a56c3cfddf867974ed2510e91d3fbbe - pristine_git_object: 514972e0130d6c356df333f53fa8aa174f9b6ec5 + last_write_checksum: sha1:d7b3b623a9a8b2bc500954fb3788d2724b54ccdc + pristine_git_object: 22e2e3e27acf69056eca5a2be5d638dffbed7bca + ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java + : id: b08ac6d5ab42 + last_write_checksum: sha1:f893d8f40df097e5421edd7dc109b64d08775be3 + pristine_git_object: 03cfacfc903bb5731c999700e424489ee5b7516f ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/PostV1EmployeesEmployeeIdRecurringReimbursementsRequestBuilder.java : id: 31255e4aefc1 last_write_checksum: sha1:1eaa1aefcd69fc19d9d343ce4619da617b42f57c @@ -11404,12 +12388,12 @@ trackedFiles: pristine_git_object: a9f90819b5550ee56c0587d1a8d86debdbe52997 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder.java : id: 12ef474b6cff - last_write_checksum: sha1:5294ffaf84b9ac716f5e3f391aa91e19539ecae1 - pristine_git_object: 625f950a706c2a06f44e7bd88460b9c2127a1b1a + last_write_checksum: sha1:37aa774d603dfe790f637cba4ebc6c32e461e08a + pristine_git_object: 2d0467d1eea228e0d329284e44e50f197c695c79 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder.java : id: 3791aabe119e - last_write_checksum: sha1:528dc20e4ff7c7ba99c3589baa0c6adedaf7e9f4 - pristine_git_object: 682ab623bd8c3aee4b190cebf507d1706a64c1d4 + last_write_checksum: sha1:0fec5898dd8a8785b4085fb9d142b437bdd056f1 + pristine_git_object: 637cfa7a8492bdf19b5109e77f0b701253df6a46 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/PostV1EmployeesRequestBuilder.java: id: aad380ddb2f8 last_write_checksum: sha1:7093f361a35687010d386c60388d71a240d2d83b @@ -11426,6 +12410,10 @@ trackedFiles: id: d2f4b04aa6ce last_write_checksum: sha1:9a797a61ab44269bc4cfd92315cd3b115670f7d2 pristine_git_object: c3370b48ec72cf5a3c8f09058ce81aa6f3475a02 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/PostV1PayrollBatchesRequestBuilder.java: + id: 5a9bce296efb + last_write_checksum: sha1:b8808187651e0c9f7402ada81712b3eec6dee887 + pristine_git_object: ababbf74a05d6b1e2a839b9d833498b3633ff7df src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/PostV1PayrollDigestsRequestBuilder.java: id: 3080dfa3db3a last_write_checksum: sha1:ca1bd98928a8ef44fc5b542a35e9275e6bf57001 @@ -11460,20 +12448,20 @@ trackedFiles: pristine_git_object: 8e32ac9106fb1a1fda9239e4bad7bb912d7348af src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/PutAddPeopleToDepartmentRequestBuilder.java: id: b34d25d00dcf - last_write_checksum: sha1:2d8527fafe08578e809457a97f72433a15b566d1 - pristine_git_object: 1aae676cb12500a4b7e3a54fa73b794ce3c4ebf4 + last_write_checksum: sha1:506857a5014b08cbf9b78ea999dbcb52ea2c58fc + pristine_git_object: 4e7e6384766e0e8e30298d83adfc9e658d742960 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/PutApiV1CompaniesCompanyIdPayrollsPayrollIdCancelRequestBuilder.java : id: d772e93bd91e last_write_checksum: sha1:cb8667d24a671dee8cdebcd0107bb9d46de378fe pristine_git_object: 7f48fbc2992643b9096f0d005ff04817f34605b6 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/PutDepartmentsRequestBuilder.java: id: a499b7629d0d - last_write_checksum: sha1:bc01e67e7c95c5b066105d8017ad6f96ebc8d9fe - pristine_git_object: ca41db1453d99ebb968f02849ee168c577dd8f0c + last_write_checksum: sha1:9b9224500969fd76a0d555bc0edfa9cba57ac305 + pristine_git_object: 24201ad961bde2e98e15ac1a97778bebf1d84766 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/PutRemovePeopleFromDepartmentRequestBuilder.java: id: 52ee123cc10e - last_write_checksum: sha1:dde8bcb8ecdc8559ba38c8f55b37a2ca5329cd87 - pristine_git_object: 1084d7d1762eab4e22088531a305053741e73757 + last_write_checksum: sha1:84ea8d26a0440720abd495ccd6340ac3b1204e5c + pristine_git_object: 4562fca8bf550299e491c9e004363e9136773c9d ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/PutV1CompaniesCompanyIdBankAccountsVerifyRequestBuilder.java : id: eef99bca4929 last_write_checksum: sha1:de42078ba12e669a6c6f60632d77d024bc885ae6 @@ -11484,8 +12472,8 @@ trackedFiles: pristine_git_object: c9c2451ff7415a46b898eb5f520975efe0626213 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/PutV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder.java : id: 412a91cc2880 - last_write_checksum: sha1:3ade58c3e6af389c26702fb11e08645898f3d5e9 - pristine_git_object: 75a4f5b48f842c1ef94f30f100b2bd6e619a2d06 + last_write_checksum: sha1:9196344f19dd91b04288855517b64ad1d96dd467 + pristine_git_object: cc3d6d963f05fde361d203c6d830180e60ba4791 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/PutV1CompaniesCompanyIdPaySchedulesPayScheduleIdRequestBuilder.java : id: 7adf0392f007 last_write_checksum: sha1:02e866182a6b9c9858a278a04b438f54c873c545 @@ -11520,16 +12508,16 @@ trackedFiles: pristine_git_object: 993c6214baa1c2e7d7cd3d4fb2db9c9a63d02e37 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder.java : id: fd98c97c50b2 - last_write_checksum: sha1:54ac8f0dd07383d6aaf5778a5c1ed63ed5aef444 - pristine_git_object: 09e316ee4517252b0602232ee8ec52c06fb5e7d6 + last_write_checksum: sha1:e5707e8331815b53f34c523f052493ecb4b41e10 + pristine_git_object: 61d70177e7c06a1c53c58505a289abc5cbeb3b2d ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder.java : id: 69a95a04faae - last_write_checksum: sha1:afa8fe78d9aedb2d2f9a326324880fd98d6878b8 - pristine_git_object: b15a13b46dc31b31c3b09fd56ab6d6d2ffab046b + last_write_checksum: sha1:842427c84af7c08e82b6ff30634978d7376ecff3 + pristine_git_object: d754fba5967eda63a4d8de8c4f3d38843ca5ea07 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/PutV1CompaniesRequestBuilder.java: id: 2442312bf3b6 - last_write_checksum: sha1:2fbc7a3868dee265f9ee4f0b93e5039e256b5f45 - pristine_git_object: 91b852370c9bac7dc00df8e75880d3f255673ff9 + last_write_checksum: sha1:2d33c41ee6e359b81f26db27fb3b0290c731d66b + pristine_git_object: 6788fe4043342670a2aa56de9c8fca36812473dc ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/PutV1CompanyBenefitsCompanyBenefitIdContributionExclusionsRequestBuilder.java : id: cbde122009ae last_write_checksum: sha1:9d1b138805c275e07ab595998f1db3e675746639 @@ -11548,8 +12536,8 @@ trackedFiles: pristine_git_object: 62aa5d9932c069fd15f80a04ddcea0304b48f6fe src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/PutV1CompanyIndustryRequestBuilder.java: id: 7425c0c7f820 - last_write_checksum: sha1:7d595f414536fd0a91408b32ad23e5f9e1fdeeee - pristine_git_object: e1c7e19e53620001a15866453a7428257c49f179 + last_write_checksum: sha1:15312f14df38d73e743d9c55424da52a84600b09 + pristine_git_object: 2d609726290dfe646a9c1b55e56249f3b4137ca4 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/PutV1CompanyPaymentConfigsRequestBuilder.java: id: 4acf521a04b0 last_write_checksum: sha1:6ffbdbdba26a6a50c4a672b26e0bf59d0239b4d6 @@ -11564,8 +12552,8 @@ trackedFiles: pristine_git_object: 7ef6c4c026e532bfd362228869223606a7a6062a ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequestBuilder.java : id: 2e89d286c45f - last_write_checksum: sha1:753365e141fee056fc8a3f5b3cd2ede27cb5c655 - pristine_git_object: 73d8542897e3e834ab534581d6e24a75e2ebb2b2 + last_write_checksum: sha1:6c0ed86534d1d71afe7fcf17811e04d8af276a44 + pristine_git_object: c925616004dc10022fed315dc2c4809c8a0c9037 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/PutV1ContractorsContractorIdPaymentMethodRequestBuilder.java : id: 8fda221746a2 last_write_checksum: sha1:1c77a35cb3f104f4467fcaea656148517c9c4c1d @@ -11652,16 +12640,20 @@ trackedFiles: pristine_git_object: f9eb6a0bb5f3589416d11507bde8003744cfe3f2 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/PutV1JobsJobIdRequestBuilder.java: id: fcd1f62f2bf5 - last_write_checksum: sha1:f3746a79c355389e0a95eb357f48b1e05452348f - pristine_git_object: 2980f1b913e6138fa45a86e45e7717c51f6b01cf + last_write_checksum: sha1:75034278362b386dca28f2f0ba7f6bdd1fb16d2d + pristine_git_object: 7db685b0b04febf2a32d798840ab0ba134116459 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/PutV1LocationsLocationIdRequestBuilder.java: id: f4668fce7caf last_write_checksum: sha1:4812bd3032d6da8cf74069330349e3ea3de76b39 pristine_git_object: 7bcb6ff922b28fe17545b7ff07c9339131fb751d + ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder.java + : id: 2297181580ea + last_write_checksum: sha1:ab9c0602829649531728ab6ac3915e65f976f34e + pristine_git_object: cc1b2dd9c0a3bff1a98993aff9729d574434ca8f ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder.java : id: c1a9479fec1f - last_write_checksum: sha1:b4523434dcc6e592bae291413df62783d0e1d171 - pristine_git_object: 74d7a0c5af988922f9147da603358a0ec5bbf560 + last_write_checksum: sha1:57a0e4c1cfd4a6d479a32668d6f8f41c853e1dd0 + pristine_git_object: f37b42aa029f11132f5b5201e67b2c7922d02472 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/PutV1RecurringReimbursementsRequestBuilder.java: id: 7888e5082395 last_write_checksum: sha1:fb8c7fde00d9e3d1906c6274722b06dbed05eed4 @@ -11712,20 +12704,20 @@ trackedFiles: pristine_git_object: 95ab41b644a7942dccc7693f357db7e344b49ad0 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/PutV1VerifyWebhookSubscriptionUuidRequestBuilder.java: id: c0b5d02d8250 - last_write_checksum: sha1:ddbcf65a31cd1303f8a8cfa5d10574073beb0b22 - pristine_git_object: 0c43a36663434c48eaf3bc91e0c6c46b23581b7f + last_write_checksum: sha1:8365bde45ecfa385b6cf53365c9bcbef99a68559 + pristine_git_object: be57137b234986a36a1ac6b8256d7b6b80064fff src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/PutV1WebhookSubscriptionUuidRequestBuilder.java: id: 29198e6d9357 - last_write_checksum: sha1:93b6a222be38627065aa45d2ebcb55c53462355a - pristine_git_object: 6c0a173331971fce852c3b24925b135b5000b8eb + last_write_checksum: sha1:40009eb36d8cfd9853a8308d16802793e527fee0 + pristine_git_object: d3a0a850a67c288fc53f302a113cf6d6b13df3eb src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/PutV1WorkAddressesWorkAddressUuidRequestBuilder.java: id: 3addaa0996f2 - last_write_checksum: sha1:0c5e51040862947063325a3af970b7105286daf4 - pristine_git_object: 9292d272624d0900be4dd2ef74eeafeed1fa7ef6 + last_write_checksum: sha1:fd2bb2f74ffb6120c0b0a7f6505ccd41d3451769 + pristine_git_object: fcd92c4431a1d9a95b84d298b06a7a5909819b6f src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/PutWireInRequestsWireInRequestUuidRequestBuilder.java: id: 28b29a967b5a - last_write_checksum: sha1:31c4c2ecc77e4a3491dfa96ffd93ae9fad572acc - pristine_git_object: 9ef77ab2847c58d70d01bbfa5ee096def46c08cf + last_write_checksum: sha1:4b13e31c2d1df2ab01a8ba28fc168dd997b8dd17 + pristine_git_object: 9e258ee7877d8372258c27566d50fa67f31d3030 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations//async/RedebitRecoveryCaseRequestBuilder.java: id: 7b122ec330eb last_write_checksum: sha1:b26e2b632b030b229a70f3413522e49166a89cae @@ -11748,12 +12740,12 @@ trackedFiles: pristine_git_object: 6fcea20847927af81eadb6ee0c1e475ead9273e5 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/Batch.java: id: c152ebfa4932 - last_write_checksum: sha1:3a62ac8607f62a0772bf346864dfa2d508c306d0 - pristine_git_object: ef79874314b3a93710e4fb6931a8fc5dda59fe4d + last_write_checksum: sha1:3278d0af9e5713b794535be33e419a255a557a3f + pristine_git_object: 5d0aedc81ab580bebef86c517c99d2e994f71df1 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/BatchAction.java: id: 3f8afdccd926 - last_write_checksum: sha1:113a7a3e2580801101e7f2d50e36410ca7674d4a - pristine_git_object: d5c1b9c8eaa80e084a2fd725ff89944308852147 + last_write_checksum: sha1:2fae01006e0a792a4ed368d0f79fd11eebe735c5 + pristine_git_object: b63182b91310afe2959c3a2f6b79a33c7834d4f3 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/ChristmasDay.java: id: acc2c6f864b9 last_write_checksum: sha1:cc499b49087baec12b542dfa73245955087687e0 @@ -11780,12 +12772,12 @@ trackedFiles: pristine_git_object: df35d202fc0211f87a1ad0889c897bfcead92c5a src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteDepartmentRequest.java: id: 474fae3fee16 - last_write_checksum: sha1:d3a283a8c4e351ef1300bba9d5dba5e68cad4a06 - pristine_git_object: 8462456798bff9def891c3aead02d0e4929c75b5 + last_write_checksum: sha1:23cf3640b307998a7146a84f78d19990c445e9ec + pristine_git_object: 2196a69588010126fe14fbec2a32a0d5832c2f60 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteDepartmentRequestBuilder.java: id: 8de5fefee649 - last_write_checksum: sha1:def23299977cd6e12a92f2a79eac7558474665fd - pristine_git_object: f9c245476eb1267190e0deb962709b0ed913a6d9 + last_write_checksum: sha1:8182f2fe723537e6ea7acc0fc36baa2ed80e682c + pristine_git_object: 411e59deb88200b51a4dfb8d6cccdeda06eb9982 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteDepartmentResponse.java: id: bb3b29982c13 last_write_checksum: sha1:502be703af2098695a8291838595460e8af5620b @@ -11844,12 +12836,12 @@ trackedFiles: pristine_git_object: 713af94853c8c11c931a9382d3110a1a568ef6dc src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1CompaniesCompanyIdPayrollsRequest.java: id: 471b049b67cd - last_write_checksum: sha1:e6b95f7611320a16f5f4e94077a5d7e6be2b7939 - pristine_git_object: 1dd52c994119f29ea573963d206430fc588d50ab + last_write_checksum: sha1:2c8a34f900e4f40667e4f91203bfea7a6a8bffea + pristine_git_object: 8cac362d3e90fe0ec56533c52fb8f47e686b020f src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1CompaniesCompanyIdPayrollsRequestBuilder.java: id: 957537f9bdb5 - last_write_checksum: sha1:4661b0848cc8990898afa6b4b53e5268591f0273 - pristine_git_object: 6a53fd3b3d79737ea47ed796feda55a8c5f92dde + last_write_checksum: sha1:21fc66f0b61c408a95af8d682dac6462a532d2fb + pristine_git_object: bbb2695037c64b330a85e93ee0e2283681ce0355 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1CompaniesCompanyIdPayrollsResponse.java: id: ac538d197262 last_write_checksum: sha1:6b5b15893f85b4b06f6b0d06bdcf786689526158 @@ -11876,12 +12868,12 @@ trackedFiles: pristine_git_object: 728e328c43dea45376791c08c7a88fb368cb4f6b ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.java : id: b93acb1f773c - last_write_checksum: sha1:102e65bd115d654c9d7631c0259e740893c8dcb9 - pristine_git_object: 295e3ff43c04742ab540859a34a52c1f5338d940 + last_write_checksum: sha1:501e0b99b2938eea6b3ac19eb611208d08864eff + pristine_git_object: a4110e909a1c2fdfd8eb76f2bfd62f8544244bd3 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder.java : id: b34ed71f0a27 - last_write_checksum: sha1:a7c67af9a6ee702cf52b45537881695006fbe12b - pristine_git_object: 8c710cc0fc86995cee25024327100912f1b3351e + last_write_checksum: sha1:7285c8f2ae98ba09f065ccec04bdd8060db54c62 + pristine_git_object: 8768a61a9cb4e4d883b72acd66f480d6f4de1302 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidResponse.java : id: dbdc18a63a76 last_write_checksum: sha1:177299a6d4f5cee16172172a3733e66ae3cde0e3 @@ -11924,12 +12916,12 @@ trackedFiles: pristine_git_object: 9c780f4ec462ed60c1427e7c1cfbf7ef1384d9f5 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.java : id: 9ebe52ed9227 - last_write_checksum: sha1:9f132e8f0fcaf5d23b398ddbcf29b66b6f458b56 - pristine_git_object: 8ad753261e3ffede120bdb6f5c7e9ea1744141a4 + last_write_checksum: sha1:9e752da34557de729074d6181b1040bc137181d9 + pristine_git_object: 7f9c699c581c1b78a3877c9febaba52cfe2ce2d6 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder.java : id: 1df667b5fcd0 - last_write_checksum: sha1:01aed75edc360cd3a759a756992cca55bd8b4679 - pristine_git_object: 37223fbb1388601b3503f90de61af3c4f395ecd9 + last_write_checksum: sha1:72b4a561e3c127f385b20a1416ee67a05bbf39b3 + pristine_git_object: 5c0ddfe10a48a39f7bb3c9a3429055023c9319d7 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdResponse.java : id: 9fbff52a5680 last_write_checksum: sha1:cbb8f9479d04d9fd2ea4f52da9086285c9513b93 @@ -11938,18 +12930,34 @@ trackedFiles: id: 069e35e2dae1 last_write_checksum: sha1:1180f9f1046f50a61c0d6a4e0710569eaa565c52 pristine_git_object: 921ef3c95ec856d640b916c1eede42e06e98b2a4 + ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.java + : id: 3566b458e7e1 + last_write_checksum: sha1:2fe8424f745959824955c9faea4d38c4e6fc15fb + pristine_git_object: 9837fde580c70d69bac12e6ababc11047dc02ae0 + ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest.java + : id: 1f32b72ca00c + last_write_checksum: sha1:40d572d1e3d0a5ba3965fdad28f4265129c33ff2 + pristine_git_object: 6b2e244cd0accd3afa4451eda54683090c90ebd6 + ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder.java + : id: 35e356d9d2b3 + last_write_checksum: sha1:27a0b3197c4caddcc0d16f6f4a2b0335fffb76b8 + pristine_git_object: 5ede2663360a606b6967917995d59780d4730310 + ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse.java + : id: 8edc5a66e449 + last_write_checksum: sha1:f4a935a0faffffbab6acc97b65213f6bd779c49a + pristine_git_object: 6d65e1c64a6d1120fea346b7ef4794671bf3548f ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1ContractorsContractorUuidRehireHeaderXGustoAPIVersion.java : id: bac43cc0f4f0 last_write_checksum: sha1:657d22de14fd1fabd4b8ff3a7b039796b79c8cdf pristine_git_object: 628ee32f8c44e27c17f32607f8fee7399a43ae42 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1ContractorsContractorUuidRehireRequest.java: id: 848ddfa07ec0 - last_write_checksum: sha1:4ad32bf57d8a5921366cf6d54d625f8f03f9348e - pristine_git_object: e3ff53fdb320acd4cb85473126b4302292738177 + last_write_checksum: sha1:00c37bde9fc1bac507af6074c2ad40138b7bb4d4 + pristine_git_object: dd8567b25d45dc276a38c83c4887f0dbc79abc0e src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1ContractorsContractorUuidRehireRequestBuilder.java: id: 54ed98888c5d - last_write_checksum: sha1:42d045fd6397551839177f7220e74d60567aaa8e - pristine_git_object: bd8cd3be9a7d27af7b72a6da0651e22c66b0adee + last_write_checksum: sha1:f3241669bc7852969fa6a902b2bfbeeb989ade6e + pristine_git_object: 182640e1decd3ea0ffa9a270369fbc75b1849828 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1ContractorsContractorUuidRehireResponse.java: id: e26dc29daf6d last_write_checksum: sha1:da8d4877b6f062689d3020c3b1f7f6a27ee7c69c @@ -11972,12 +12980,12 @@ trackedFiles: pristine_git_object: 335c2420500f662aebb1cf6c3993501b38b58468 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1ContractorsContractorUuidTerminationRequest.java: id: a53c7f3c7f4d - last_write_checksum: sha1:36169708c3d9072aa13e75beeef75cf6c0cc0831 - pristine_git_object: 8fef115d0cf1475b7d17b13781c5db4adf57adbf + last_write_checksum: sha1:6574a12a632db2ad4533515c665a63979d106163 + pristine_git_object: 0a46958134c07694606559a08fab28bbe0596f0f ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1ContractorsContractorUuidTerminationRequestBuilder.java : id: 87e11129dd32 - last_write_checksum: sha1:ad155db7c9bd01c3e2a2f8b0850cc88757f96df3 - pristine_git_object: 14a351f8f13ef9ff5d5ab0a6db20d73d49810dea + last_write_checksum: sha1:73baf74a114cbb179618dace63a33b23c43fac29 + pristine_git_object: e00fb5ebf07520fb106f9d12594dde789e7199fb src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1ContractorsContractorUuidTerminationResponse.java: id: 547c5ce67b7d last_write_checksum: sha1:2a48dd004f49f5fa71d1a2ed611eda785a824134 @@ -12046,6 +13054,22 @@ trackedFiles: : id: "956029920511" last_write_checksum: sha1:f0b0d2f8bc799dd35223bfa64bf4458b34da9341 pristine_git_object: 4b9f6f9f70b35a5f0b486f95d56da66c515b66ba + ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.java + : id: af882082b9ca + last_write_checksum: sha1:271b89f60d76e6e2c896c11df2004e92a1a0a2d7 + pristine_git_object: 27c0bcba66985a59d9730311ab74590062ea9254 + ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest.java + : id: a2a7ed23e903 + last_write_checksum: sha1:55ec645fac2873766f8b68528fedb91e82654181 + pristine_git_object: 51219368a1ab692fdbfbf55cc043507007fd432f + ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java + : id: b46be42c709d + last_write_checksum: sha1:e1dd9c22cb5c8d26cbc641f9b51545db4be0c626 + pristine_git_object: eec5a984ee8b3353a46119b93ec4388827524e30 + ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java + : id: 750d2534ca02 + last_write_checksum: sha1:c7fcb329216f269e34a610c68bbce301f05ff8bd + pristine_git_object: 0f9963a77bf09c07efc3e7a9e9d0e613e03023c3 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion.java: id: 5a8b1cbbd0d4 last_write_checksum: sha1:95dbf6cbad1784809c8584c4f06d310f8b736795 @@ -12116,12 +13140,12 @@ trackedFiles: pristine_git_object: 48913a3c4b9ed3076ce69e50149e1869abfb7997 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1JobsJobIdRequest.java: id: e20397e61236 - last_write_checksum: sha1:57365d6034a57352a2e06b0457540697fb43c501 - pristine_git_object: 727aa2088895ba2a26062bb82214fc85e0d50678 + last_write_checksum: sha1:6a8b2a004f9dc18e4e25ea6e89dcbf628fa4d00e + pristine_git_object: 735de4cc8b5db38ec3d047c739af10c0ef081d0a src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1JobsJobIdRequestBuilder.java: id: 34013c39cfde - last_write_checksum: sha1:63a71307e2c49b07d8deb6f14a2a1b48a74749b4 - pristine_git_object: 413bb3182852b1250fecd4572efde4fd5f9398dd + last_write_checksum: sha1:f40d99c7a449e33564dd2c5ee7ecd81d5112da72 + pristine_git_object: d2dae6978d084aae25fe44f7d92699c40a0ee5f7 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1JobsJobIdResponse.java: id: a8ac76f70ed8 last_write_checksum: sha1:fcc41a00d5f4c451f8290da6006f1eaa022b5740 @@ -12164,12 +13188,12 @@ trackedFiles: pristine_git_object: 0ba308509ac6d0bc4c79757cd69534ddde9b055f src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1WebhookSubscriptionUuidRequest.java: id: 928986d4af69 - last_write_checksum: sha1:4bd0d52e5bfaa8d94caf03f231ab79f55fab634d - pristine_git_object: 6512a8af1a9d3ea7d482940d8c72dd2e6d966d4a + last_write_checksum: sha1:b92008344d67c20bb9233cb05129b76822f93a98 + pristine_git_object: de60f07f54edfedc0b1c18ae9ef8a33e18566132 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1WebhookSubscriptionUuidRequestBuilder.java: id: 08b433cb18b5 - last_write_checksum: sha1:bbc41f28af2e5137f7b1d97ad992c04b76424d6d - pristine_git_object: fcf96902be2e236374be4a81cba80847aba9f7e5 + last_write_checksum: sha1:f48aca15561327ce611da13c9ebdd52d307029b3 + pristine_git_object: ac15011628f4080dc161ebd5522db9576a1c5540 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1WebhookSubscriptionUuidResponse.java: id: 64652eafc0c7 last_write_checksum: sha1:f02b31431e507d526b5debc0373c9dd405f159aa @@ -12184,12 +13208,12 @@ trackedFiles: pristine_git_object: 7bee304e3266d8c75e6a10dffd0d887c26adf39f src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1WorkAddressesWorkAddressUuidRequest.java: id: f1f5450bd062 - last_write_checksum: sha1:3ead664550e4bf5ba2097b76a136b57eab24be93 - pristine_git_object: 4650bb637477f9a34251908a5e39c947260b357f + last_write_checksum: sha1:bb1d730b0f67658cf6008602f88fb1c3630a273b + pristine_git_object: 78492c2f96e5174c97434a252c3c94d7363765e4 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1WorkAddressesWorkAddressUuidRequestBuilder.java: id: b53ad871c420 - last_write_checksum: sha1:38c224c5394b97e0045e249ec4c751e85d44654a - pristine_git_object: 3079b03b704534fd81d7cd0500db815c74f26c47 + last_write_checksum: sha1:6574867a5aa23bd25784828eaa8a6731c7ee6937 + pristine_git_object: 95f07266e4aaa15abd0df53c6e06d5626776ab7e src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1WorkAddressesWorkAddressUuidResponse.java: id: 4da176fbf4d8 last_write_checksum: sha1:86ef993fd35d081c2e7c9ce0523274597a2fd889 @@ -12212,12 +13236,12 @@ trackedFiles: pristine_git_object: 631692e641c741c3cb3e72765b2903c880e082eb src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/Employees.java: id: 290f5b61460a - last_write_checksum: sha1:c26e2b23c849f44d022d3345fbac277d20be8c5e - pristine_git_object: d2451bf77b4557229290690a5c64f28df778a63b + last_write_checksum: sha1:c2060adfd927fc197df92d150e267e79cb5f9569 + pristine_git_object: c8bf74b0418b0cb18ec91e030f66982a6474e854 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/EntityType.java: id: ff9a787a9388 - last_write_checksum: sha1:2c828cfd80188f52e748da97042168d48fbb3111 - pristine_git_object: f3224136f0829e3127edd9123d1d5e42b397d7b2 + last_write_checksum: sha1:b900ebad39a506bd514e6897eb11b7c100f0922a + pristine_git_object: 8268331abeed61c01860a4d0bcd7c2ccf6a6dcb2 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/ExperienceLevel.java: id: 51158a2b9bb6 last_write_checksum: sha1:7fd01319dbcea05ee721879822d39a4456cc805e @@ -12242,14 +13266,10 @@ trackedFiles: id: 5d282bcbd158 last_write_checksum: sha1:b0fa28774c43c68625629ac6b5ec71f7d184cff2 pristine_git_object: 391fba2927578d56138dc0a2a3ff7f1ae7ee65ec - src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetAchTransactionsHeaderXGustoAPIVersion.java: - id: 56669b967f71 - last_write_checksum: sha1:2b0be19e96aaf9abc38fdd69d1ec53f07d408fdc - pristine_git_object: 923bc01e0bfbf94f8a382c788c77002977cf8859 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetAchTransactionsRequest.java: id: f7fa37cf8bf5 - last_write_checksum: sha1:db8e61ee142d22984ad013fa0f534e00d72dd762 - pristine_git_object: 063e87f89ad2ec622df30d519faf701708a7e400 + last_write_checksum: sha1:e02711e0bb5da823f24919cee0623375de54a839 + pristine_git_object: bef46f0e01c69d561d62dabc702002df2cb14b04 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetAchTransactionsRequestBuilder.java: id: fa8d1ba0ea8f last_write_checksum: sha1:4bae9677ef9b5cd7fc0c2def297333c3ade5192b @@ -12328,12 +13348,12 @@ trackedFiles: pristine_git_object: 3c48a1cf16dacdb6695001f3c72ee203a3af79b1 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetCompaniesCompanyUuidWireInRequestUuidRequest.java: id: a446c64f341c - last_write_checksum: sha1:22d1295e7d80b10669d996454ff311f16435e58a - pristine_git_object: b0c68d62596b9ab9c258fba4adf990b479208954 + last_write_checksum: sha1:828ac2b5a1c095697ce0d4f59c1bf2c2f1dc676b + pristine_git_object: 7ed0a5ebd23fd806af7ac69d96fd081a04ad810a src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder.java: id: ff1dbdcf6907 - last_write_checksum: sha1:844d87889880563751868664d6e9449e66543967 - pristine_git_object: ffceb4dfc855bdba49eb9644aa5fe77d0cf9f961 + last_write_checksum: sha1:598a6eecc3e588c7a891adfb0d24a04acc4cc763 + pristine_git_object: 70ba4b06d611cb75702d17c3a19093fffbfb42a5 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetCompaniesCompanyUuidWireInRequestUuidResponse.java: id: fa3baa44a21d last_write_checksum: sha1:d63740bbbbe502b80d93c9b638b4032605992006 @@ -12344,12 +13364,12 @@ trackedFiles: pristine_git_object: 274980b2a1a13443f5b0dc61a4d749518975e1f9 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetCompaniesDepartmentsRequest.java: id: 3a1da1e2373b - last_write_checksum: sha1:275507a682822869790b88d6ce1e2a50f030c81d - pristine_git_object: 21b685a03aeb5bdfc016ef21223ecdb1fc1f8494 + last_write_checksum: sha1:7b3f39b2a445744192b1b9fc7aac7774c153fe62 + pristine_git_object: c11ea9342056f0d45d07946ba004d68c8d9b0a95 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetCompaniesDepartmentsRequestBuilder.java: id: 34a1dbc9fcda - last_write_checksum: sha1:b7317fa5a6dfa3ae6e9c58bc7c5f9184539145f7 - pristine_git_object: f23c335f90708fc0fba35ef544908ecf6866f549 + last_write_checksum: sha1:fba919435cb8078bb10810d8e7657447ecd3ac32 + pristine_git_object: 69c6041de82746740ee50f802f5fc99142e0991e src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetCompaniesDepartmentsResponse.java: id: eb27c7500129 last_write_checksum: sha1:b66b54a9c21c1f4f531e8e8b0f89ef41cd8e0f3e @@ -12360,8 +13380,8 @@ trackedFiles: pristine_git_object: 496781f5f892fa9adbbba4919fdc54d1c262aaaf src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetCompanyNotificationsRequest.java: id: 44cae33f7072 - last_write_checksum: sha1:561dc42ab96ed6685c560cc415bb236fbe160632 - pristine_git_object: fc0b81717fe348fa40d3054db9a9713c7bb3fcd3 + last_write_checksum: sha1:541ea13e8da552457605bb6f31c8583b47baf27d + pristine_git_object: 4a2c22e5ca348ae6f0d33ee4a536b8e65e0a8bd4 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetCompanyNotificationsRequestBuilder.java: id: 1afdc3678bfd last_write_checksum: sha1:0e3c6916e5ed0dcc050810997378c2709f84bb72 @@ -12376,12 +13396,12 @@ trackedFiles: pristine_git_object: bc7088cf5c5c594e939257984829aa28a4c96613 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetDepartmentRequest.java: id: 0232bffe70a6 - last_write_checksum: sha1:a73467104d499e2a9f39dc2de91cf36ea877756f - pristine_git_object: b811ceccc8ea1c75be3d43baf5865be4c524aabe + last_write_checksum: sha1:926700680fbefe8610a2797d2115e91966124c7f + pristine_git_object: f0a8e14e83e93b6d88a0c286763bc0bdc2b04f7c src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetDepartmentRequestBuilder.java: id: 59352f043962 - last_write_checksum: sha1:a4137fad6877641ad6c2b0f298997bb368b2aa35 - pristine_git_object: c9e3aa7e1207e7f6412a6b1760344791d65d2085 + last_write_checksum: sha1:c35a2000d62d256a2d6056cad992ccc611b06ce8 + pristine_git_object: 2e34c1c961e16424a916cfbda60a95326f26f017 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetDepartmentResponse.java: id: 2aecfd8aea9c last_write_checksum: sha1:452841e201642ec6f486fda0f330e0f663eb6852 @@ -12408,8 +13428,8 @@ trackedFiles: pristine_git_object: 9c9b9e9f4ad738904550f43625bf16260d856648 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetEventsRequest.java: id: b17e12b3e74c - last_write_checksum: sha1:13eba29f942f34a51fbdba1077b9fff6685960ce - pristine_git_object: 3fd5c69be511dd1e38b56caf3839bdadf17145b3 + last_write_checksum: sha1:bbf0baeea7c2cb47ff727e470a40679a7cd169da + pristine_git_object: 69633e14b23a3ced8cb1ad2350d96c9ef36e50d1 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetEventsRequestBuilder.java: id: 29798ce47b04 last_write_checksum: sha1:0112db952012b16b8a780569c180b17995d0a466 @@ -12464,12 +13484,12 @@ trackedFiles: pristine_git_object: aecdab84f1ce05a143ef5da3609ebd2bd9e1b339 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetNotificationsNotificationUuidRequest.java: id: b168223b8d57 - last_write_checksum: sha1:14318ed6a608dab672dfcbd767836bff87af199e - pristine_git_object: 4b1f06af58b564da0960c305d81e3bf4858834d2 + last_write_checksum: sha1:9776f2a185d1a6998af496e94ac44dde012358b4 + pristine_git_object: e1f0d8027edec5e7d70b450724bda08c31b32e82 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetNotificationsNotificationUuidRequestBuilder.java: id: 9334084e5653 - last_write_checksum: sha1:527d6719fa43d0efd3adfa4f20538a2d87f94cb5 - pristine_git_object: 010d6fa608692a45602e00a06beadf3534ddc4ca + last_write_checksum: sha1:c9a94126e876ee7e2d357ef3ae047e9c8cde9905 + pristine_git_object: 536ac64e8bd8e2e2e62e1fe8030466a1c8f2b961 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetNotificationsNotificationUuidResponse.java: id: 3c3de60be5bb last_write_checksum: sha1:90fc26b19022c345427cd43811639eceb6b074b0 @@ -12506,6 +13526,54 @@ trackedFiles: id: 5b02421e1578 last_write_checksum: sha1:e77c843676cab5704e6cefad34b84eed00b1cdee pristine_git_object: b8e850c99a3de463eb0b9cb3d63979ca3a3cb5bd + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetReverseWireTransactionsHeaderXGustoAPIVersion.java: + id: 3dab253c476f + last_write_checksum: sha1:c966363317131cf186ec4913c901a7f1c12839f7 + pristine_git_object: a539e78f94127af6228d27edb9f54082a9650536 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetReverseWireTransactionsRequest.java: + id: d1ca75760806 + last_write_checksum: sha1:7663bc13cdb00d31c6275b9fa79e5f93810826a8 + pristine_git_object: 773a1d1080c80086c0bdfcd49e213b59344570f4 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetReverseWireTransactionsRequestBuilder.java: + id: 3b6cbdff15cd + last_write_checksum: sha1:7becd38fa847b988df7f276836e86c897202d96a + pristine_git_object: 3d44369321b857636d7cd693bc07a7726f453b9d + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetReverseWireTransactionsResponse.java: + id: 306984fe0349 + last_write_checksum: sha1:0bbf1f0e58b609833adcc7eb05e0fc0ee5d2eb91 + pristine_git_object: e57fd47d7edb6d14f7baaa89ee4b1dc0f8fa80fd + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetTaxPaymentHeaderXGustoAPIVersion.java: + id: ac6c8a0aeed1 + last_write_checksum: sha1:69da7a331904a05970ae75ee14124ebf4c148cc8 + pristine_git_object: 936fac32b087bb836d22e208e95a2f9e3a25487c + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetTaxPaymentRequest.java: + id: f46aaeaf1fe9 + last_write_checksum: sha1:82193573b5e3af8956259ecc4728bf775f796e3b + pristine_git_object: ead402ef0ffb5c2c43dde668f6e55c7d6e81c83b + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetTaxPaymentRequestBuilder.java: + id: 953d89ba9010 + last_write_checksum: sha1:ecd94e69aa7b26da5707ee0aa91dfe9f1f3c183b + pristine_git_object: fec7ce6eeb8d5a1bcd742d045d02d2f8d2e81f5c + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetTaxPaymentResponse.java: + id: 66e4d4689852 + last_write_checksum: sha1:e66b65efa27e881d0859e4ad393cc866fb7a9efc + pristine_git_object: 95bc0808b33524331db1e30fd1bb68ede8a5379f + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetTaxPaymentsHeaderXGustoAPIVersion.java: + id: b24d1959aba0 + last_write_checksum: sha1:eaf646be4c5b56d50ab61005e3f53c008eba3680 + pristine_git_object: 6fdc4eea5d225c760e818c6d9632a09b24009e79 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetTaxPaymentsRequest.java: + id: 844e93c8c4a9 + last_write_checksum: sha1:f9464941f4016ea5c7c083af5fe6d7c8bb8a2cd8 + pristine_git_object: e798cc896e682388bd9353255b16936721021087 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetTaxPaymentsRequestBuilder.java: + id: f7d977e58db3 + last_write_checksum: sha1:9404ed24a352b206c84ed760bf275a6bd900c768 + pristine_git_object: 1ea140d9e4318780472573426b9e50a7519d9ee3 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetTaxPaymentsResponse.java: + id: 796a37136765 + last_write_checksum: sha1:c3a3fee07b2cc86482d8b1bbe0b9d6187440a56c + pristine_git_object: 5480312535408f8eabad303ed0d22a830c571642 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1BenefitsBenefitIdHeaderXGustoAPIVersion.java: id: dfe32736bd2f last_write_checksum: sha1:796955149af66996926e2a03999bf852a33d49c9 @@ -12568,8 +13636,28 @@ trackedFiles: pristine_git_object: 99e204637b8d60272dfd7544467c2171a1f82e51 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1BenefitsResponse.java: id: 2b0c8dc87295 - last_write_checksum: sha1:f023a1bc5711d7b232093a6ae87ea2ea04157013 - pristine_git_object: 9c7ed838ad0b3d186811bfc2a3ee4637f3267a0d + last_write_checksum: sha1:da75777ff4ac1b2f4574471af541b35cc18d3d23 + pristine_git_object: 90f69315c4c4541619fa5c9f22fee0462f15023e + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion.java: + id: df1fe4e23043 + last_write_checksum: sha1:72eb7c87561caa2839e64f8c485521a6a6d56ce1 + pristine_git_object: 8f143a925a5c26ad996aced450fe84e76fbfc604 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1BulkReportsRequestUuidRequest.java: + id: 8485d3385584 + last_write_checksum: sha1:3984f42257cd13cd19070489100bc6393ac64d74 + pristine_git_object: b18d6f3522423ba71f1b6f10d6897a378a75cbec + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1BulkReportsRequestUuidRequestBuilder.java: + id: feab8c2ac077 + last_write_checksum: sha1:7888cfb4d8d7ddc3de2f33293bcc833d2cc2a5d8 + pristine_git_object: 018b963ffcf672daeea2cc5e1fa1aed5bc9857da + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1BulkReportsRequestUuidResponse.java: + id: 40e74d83e7ee + last_write_checksum: sha1:1bf81c79756d5a79e0c0be44a48a32d655bffbd8 + pristine_git_object: 190bbc64b67ba2661d86a169a90de22fe230769f + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1BulkReportsRequestUuidSecurity.java: + id: 82e0f1232770 + last_write_checksum: sha1:1e0cc7363b3980ec31d89dd3f32262b724f8d282 + pristine_git_object: 5baa355d2a77039af78e6e13d55347d2da41697f src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesAttachmentHeaderXGustoAPIVersion.java: id: aaf85eba6c96 last_write_checksum: sha1:9b9801cc214b0c94ad7baa7b49afce00ba776ac9 @@ -12618,18 +13706,14 @@ trackedFiles: id: dc0b6f6d3a93 last_write_checksum: sha1:c5766889a1062f9b86f488adde1957bf6f53402f pristine_git_object: 5c33edc0ab52c4f3a053ff0b032b539cbd178f0b - src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion.java: - id: d2042eb0b893 - last_write_checksum: sha1:cc233cbffa2ed43c2154f798f9a981c3806d5e2e - pristine_git_object: cf47f180b8099733537ca47b4dcbced38ddd958c src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdAdminsRequest.java: id: d097a9f32d4c - last_write_checksum: sha1:98653faead57a2cadb04341c7302abdcb67b8a1e - pristine_git_object: 2657d70d3c55fdf82270420c72f0505c73e3864d + last_write_checksum: sha1:902020d06e57ba85210ac5c800d3c9d018a41d28 + pristine_git_object: 7fc643e7b09e0c484de1cb2adfe525bac1a8ce50 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdAdminsRequestBuilder.java: id: 80c6ea36b039 - last_write_checksum: sha1:61e57db54abb80a5a189a5299438e52a8fa25ec0 - pristine_git_object: 011e8dc5cac5143bc99a2db23425a384f0a93089 + last_write_checksum: sha1:1c2f5dc49746b10ab4a8f5d1d89f728aea9949df + pristine_git_object: e440da949bc4242fd7c27842a39436615d4d0c1b src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdAdminsResponse.java: id: 3d9186372820 last_write_checksum: sha1:3eabef2729de8104d03b80bef30449d22870320d @@ -12688,8 +13772,8 @@ trackedFiles: pristine_git_object: 1d4c7c7c4d1c6bcd6160175ec0bfd6a44d7eea08 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdContractorPaymentGroupsRequest.java: id: ca5c1721a629 - last_write_checksum: sha1:f9cbf8f8e58dd892168b4694f11b0e9b29c9aa2f - pristine_git_object: be8c102ae94a8599e515d2129d70dd0d0c7f2219 + last_write_checksum: sha1:660782108925322786d01842e5ad987466f46936 + pristine_git_object: 37599f9c31ecd46ac19c18798da7819675258a94 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdContractorPaymentGroupsRequestBuilder.java : id: 7201f75575c8 last_write_checksum: sha1:4481469324e53449540e449aed8c440869296da2 @@ -12724,12 +13808,12 @@ trackedFiles: pristine_git_object: c0c9251989ca41e71bd49c57d94b1d0bfd257b21 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest.java: id: 468c20fcaf9d - last_write_checksum: sha1:e549cddc7ef54d1c9c4557cffa100cc5d8f9a559 - pristine_git_object: 3a243b5c435308dce5a33dce5e306834874977c8 + last_write_checksum: sha1:5e4bb86cd0e627808510484e7bf3f6dfd07aa567 + pristine_git_object: ce68bd45210cd3d84cd332be3de2da4b65baddab ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder.java : id: 8594d59d7a74 - last_write_checksum: sha1:f73377d496270eae744d6a9b14e7cedf65b12628 - pristine_git_object: 560acadf7a8c211a05b87fe70a085127304c7a7a + last_write_checksum: sha1:1ad2bd2647708754e7c77f0b040d130eaac285ea + pristine_git_object: 72ee1bc8f87eaaba729e54b1ec5ed38b7304b115 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsResponse.java : id: 021b378670e2 last_write_checksum: sha1:c8539b406f6e16a44b852234711ffd7d4bba3cf0 @@ -12786,10 +13870,14 @@ trackedFiles: id: 7bf840a1492a last_write_checksum: sha1:1fa35411fc99f2e9ea55448cc314c93f89d97a13 pristine_git_object: a1343ea4634c0efedc9f77c2b40180a34a14122a + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdEmployeesQueryParamInclude.java: + id: a324c90c05a4 + last_write_checksum: sha1:db903f3508293e1ec5956cc99ff8f5ac0741aeab + pristine_git_object: b3403881bb87931d7d8555c16bc6bb92f45cef09 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdEmployeesRequest.java: id: d1d654ef56bb - last_write_checksum: sha1:0de366ad0205f77c359a7fa2e10af24638883706 - pristine_git_object: 8dca18ae7d543336a3c18f0eb94ed1ac08392bc4 + last_write_checksum: sha1:03bd7989ce20cf284101088a32082435eb5e5c94 + pristine_git_object: 36f5511b672a78b256aa31ab267fdc1b9269dba2 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdEmployeesRequestBuilder.java: id: 9ff8d483cac9 last_write_checksum: sha1:effde284ac4cb035b3af9174adc8cc45e954fbcd @@ -12804,12 +13892,12 @@ trackedFiles: pristine_git_object: 14b9847300fa1a1ee6478242199aa7f8d584d432 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdFederalTaxDetailsRequest.java: id: a76adde53619 - last_write_checksum: sha1:9dab0f23ce318dea0dec785c959df8f11ccb70a1 - pristine_git_object: 243e8af0b4c6476b7d6eb5417d16bc63ea8f687a + last_write_checksum: sha1:630ef99f5c05239e358097dd2434ff4528ade5ed + pristine_git_object: 85d574bd6239107efdd2ba3ee035cf2ff8206275 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder.java: id: bebcace0e4f9 - last_write_checksum: sha1:cc82cfec29c54dd01d1f4b3732e5308b4bb2c7cc - pristine_git_object: 9321d90e722855e75dc7e8bcd5efb890f34d28d3 + last_write_checksum: sha1:5603cbaea3148e70ec39b542881bc15d8a22d328 + pristine_git_object: 6158c0c37e82aaea4902996c85910521898e2878 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdFederalTaxDetailsResponse.java: id: 82e05796ed12 last_write_checksum: sha1:6309fbd04f3ea37df9a93a38600c59da4521c759 @@ -12888,8 +13976,8 @@ trackedFiles: pristine_git_object: 04cf5e89b7912e0d2c5c5ac5191cf0b912a6e80d src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdPaySchedulesPreviewRequest.java: id: 4d98c8709b5a - last_write_checksum: sha1:6408b97210950f10d6101c9945a6c12f81cfabe8 - pristine_git_object: 6fa2067f8e46c27916af8396c562d12917da6994 + last_write_checksum: sha1:c1da64c9f49b9bbf79c2ed950da74195db1adf97 + pristine_git_object: 941ea8bdbd5250beaa2e15bce20d8d649d663ce8 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdPaySchedulesPreviewRequestBuilder.java : id: 5de382552e40 last_write_checksum: sha1:da091514c42de9146ef2dd17ad2d95885bc85d48 @@ -12910,14 +13998,18 @@ trackedFiles: id: c13ae03e8945 last_write_checksum: sha1:1c7aea4083fce4cd6bf289aa5920196f3ae0e687 pristine_git_object: 56bc10288c952e92773440990d58f86ffd1c9c02 + ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion.java + : id: c8583be3c9fc + last_write_checksum: sha1:e63ef61a72a9d2c89dcd0237be648ae93a7c33e9 + pristine_git_object: 6fd87ed342e7dc915bcde032042990bd8291f766 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdPayrollReversalsRequest.java: id: 941d14ac4e0f - last_write_checksum: sha1:1ec4b3d2f4b50232f5601d823134b6c99ba75151 - pristine_git_object: 6870aed55b1ab5b65409e0eb61234a1bba276d7f + last_write_checksum: sha1:8a3f905faecaa939a1b1b33bd68082870246b560 + pristine_git_object: d627cb1faf2ea9e3fa60b1fe4a93917577012484 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder.java: id: 17ab2d69b60e - last_write_checksum: sha1:8d00665950adb92e6b5c048951613adbd61a854a - pristine_git_object: b791f7d8fc89b88b0ba6e32135cafaa813bb4ade + last_write_checksum: sha1:cdc0e3c7c98d1fa19e7eb10fb53bc623ccb1367f + pristine_git_object: 902322d57903f5b052dea1646d41d690fe386b0c src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdPayrollReversalsResponse.java: id: 8e6c35f9ddf8 last_write_checksum: sha1:aaa967806dcc335f1b981810cc3b045014e10625 @@ -12932,12 +14024,12 @@ trackedFiles: pristine_git_object: b5b9a0ee00bbec517f11af1ece688736c7f96ce8 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.java : id: 92edeb6d9773 - last_write_checksum: sha1:617ebedf51651579ee10247a1e598222bb0069fe - pristine_git_object: b09541dfb89afe4f22c80d1d0938c82940f5dfcb + last_write_checksum: sha1:5a1700c4d1f8d5a4fd7b102d1559e645c8898900 + pristine_git_object: 2815a17689b0685d40c50f61345ca4e5b828743b ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder.java : id: 25285e3fc5cb - last_write_checksum: sha1:6e2e2051d4cfa2c20daac840827d1dd750c063c7 - pristine_git_object: 66bd38be0333561c84d89e5d805703c65d1f17b8 + last_write_checksum: sha1:cebd090948a2de0a868a4250a2ffd68ce25653ff + pristine_git_object: 03b3ebb1ae29e06d82e9d888785d5052147be529 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsResponse.java : id: 8d26620fc292 last_write_checksum: sha1:14a79d7a85792ee23202e6a3b8e2e7b8e593d82d @@ -12952,8 +14044,8 @@ trackedFiles: pristine_git_object: 169651deba5e7953624d32893bed46c30d4888b9 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdPayrollsPayrollIdRequest.java: id: 5b567dcc13de - last_write_checksum: sha1:4bb0f8654c6142390ecd3b0d7b0f5db87864dbd2 - pristine_git_object: d9068dbb26e6cd2926a375b29d30834b679a1d65 + last_write_checksum: sha1:7aebe33212a590ee810397cb681471d9157a1301 + pristine_git_object: dbe4d25753fad70dfd0fb0d426187bb0a8497b50 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdPayrollsPayrollIdRequestBuilder.java: id: d3accdce8df9 last_write_checksum: sha1:82528146f94bc972ef44d2f10071b9fa88318fa2 @@ -12968,8 +14060,8 @@ trackedFiles: pristine_git_object: f51dd675f5a2fb8ddce2a5bb311e4c4797bc01fb src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdPayrollsRequest.java: id: 4b10e1938115 - last_write_checksum: sha1:7bcf8fed96267345d2eaaa2a3d4619cfb7a28821 - pristine_git_object: 8cc3d7e0ae681aedfec728781205cb7b4b9f332d + last_write_checksum: sha1:223784a051301d142edf045957b333e29505e96a + pristine_git_object: acae6e56267ecf20251f111f1c54f292bd177c9d src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdPayrollsRequestBuilder.java: id: 9b37ea43ccd8 last_write_checksum: sha1:7e3f6154952cb0ead325fe1d092fdba75168c5bc @@ -13036,12 +14128,12 @@ trackedFiles: pristine_git_object: 39786dc474fb450fa26935ce980e00d12033f078 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyUuidSignatoriesRequest.java: id: 0a2bad68be6b - last_write_checksum: sha1:6ad48d075137264ebf6d2baa7e753759d5ebdfe4 - pristine_git_object: debf6a97d827db37c01eff8b798050bc306e3178 + last_write_checksum: sha1:772d3b1a9a8775d48a58dc7a86e33cc612e213c3 + pristine_git_object: c70b53f06b8960171785987748d591de3e14948c src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyUuidSignatoriesRequestBuilder.java: id: 34d0a8e30398 - last_write_checksum: sha1:a9605864180fe984d9688cff7e99ecf1e0638b83 - pristine_git_object: 5a9c32b5b9dad25b857d40a562b9bb1926dbc9d2 + last_write_checksum: sha1:4404f6b776f6c9f961488445752553ce64fa5cbb + pristine_git_object: 60e6db275699814f56e1ee6a1f5e13d196f9d20b src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyUuidSignatoriesResponse.java: id: 8d92eed2a1cf last_write_checksum: sha1:9a19c2c6f8ab314b53465eb447c0dbf816adf49b @@ -13052,12 +14144,12 @@ trackedFiles: pristine_git_object: 7265a652c96666db412dd67c65f3f1d48f515a67 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsRequest.java: id: bdb81e9c38c9 - last_write_checksum: sha1:40eeee66a65c6ec53381edebee88a0c73fffc67b - pristine_git_object: 230c17b3cfa58f62e2706ab381b581d5dba19ccd + last_write_checksum: sha1:13720f14aadc5ddf72b51bdc01116e2be83b4523 + pristine_git_object: 2cedc8654652bedc9e0e80ecf978697bc42afaa0 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder.java: id: e55a4e6840cf - last_write_checksum: sha1:b39baf259fa4a0ddd8bb0c176d3959887df06e4c - pristine_git_object: ac22a750b82c5c103a9ca4465a12522e5522253c + last_write_checksum: sha1:58ea97895b5696be818d824baf0e556154aa3107 + pristine_git_object: b595b9e6a39b103632204038723bb2d721c77b20 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsResponse.java: id: 9f014edd8bb5 last_write_checksum: sha1:176a07d00ab37cabe566bb61e4b6a7531ad9696d @@ -13068,12 +14160,12 @@ trackedFiles: pristine_git_object: f022d9ea55d64a73246f2e8c14cdace0e3c303b0 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsStateRequest.java: id: 6edccc3be262 - last_write_checksum: sha1:37a65f05761a3dcb8830600a364b582469cdc747 - pristine_git_object: fac9aec163ef1b0413df54b8d320cb905be39099 + last_write_checksum: sha1:767a898f40b5bec8e4cf1fb19038141665d12ec3 + pristine_git_object: 083505436281fcd7bcb45430c1263ec6cfff63ec ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder.java : id: 48e9dd32aae7 - last_write_checksum: sha1:4fb148da70a7ea4df9d2610d120eafe9b932eb39 - pristine_git_object: 7c8310fe35c3f1d1842c29adae632e1c752cc1fe + last_write_checksum: sha1:31ee56de48dfeaf2c794edab1bcd32787cea3cb5 + pristine_git_object: ddb691e2f041871cd00386029dab766b7b36f43c src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsStateResponse.java: id: 4add07774a57 last_write_checksum: sha1:6754fd85b167a3f5a3448ce56f6534cf276c7c69 @@ -13148,12 +14240,12 @@ trackedFiles: pristine_git_object: d80bafd0ec1e712087ae4733334762f7296c2b7f src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesRequest.java: id: 96b100058fa1 - last_write_checksum: sha1:7665628348a3c58bd5d787bd782a2b21ea4ae81e - pristine_git_object: 39e20b38005972a8c628f0c0211efe1a499e3686 + last_write_checksum: sha1:6c7ee38844208146165416c228b545ce5e6c42b1 + pristine_git_object: 71f4fdcd829b84db1511f639b1a6d79d9924f039 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesRequestBuilder.java: id: 5bd1e29353f6 - last_write_checksum: sha1:41f410c5fb5bc75d4ec495981e7c60ebc416ddca - pristine_git_object: 386df9ea9e65f47fcc791daa97e09e96baaf3185 + last_write_checksum: sha1:26e8e9f4979c2c85d9fff3124f99f06a93353c80 + pristine_git_object: acf5904813208239ec6457e3884c98ff4f612cd1 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesResponse.java: id: f999ef98f4ee last_write_checksum: sha1:8f7b62aee9bfd6ecfa2ae99d94bff54fd76334a0 @@ -13178,14 +14270,10 @@ trackedFiles: : id: 2254d1caf705 last_write_checksum: sha1:478dcc6ea45c2006916d1aa21c41f804ee4a284b pristine_git_object: e382af56b372e59c691b24ff8f4c7793fc1816a8 - ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsQueryParamInclude.java - : id: 630ae12d0753 - last_write_checksum: sha1:2f2853ac3dbd246cf257a6bb37893cff7e5ff1b4 - pristine_git_object: 874efae088ab76c388573f701f912b12c9255a66 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsRequest.java : id: 5a6f9ccd2a90 - last_write_checksum: sha1:38a4e7830161c8d76bcadb8a647134d7549a7cf8 - pristine_git_object: dd290ff4ab3af8393838eef06b87f39051ef2710 + last_write_checksum: sha1:bc6e3f8f3c7611edc82c77b51f1594ec36b2f643 + pristine_git_object: c7cccb7a521b02d0eae66617f7ef978c37700ba8 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsRequestBuilder.java : id: 77244c87b5cd last_write_checksum: sha1:083960af80f0b6e75e15a68d1b548d031f0a2378 @@ -13198,18 +14286,14 @@ trackedFiles: : id: e5fe20536ed5 last_write_checksum: sha1:7ef49bf5b5c7aac0805115137482d22a4d7279b0 pristine_git_object: 84123e47213a66c59da3690471b58e3a76764477 - src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompanyBenefitsCompanyBenefitIdQueryParamInclude.java: - id: 67d1b6ee30ec - last_write_checksum: sha1:69b029a4da3c42f0b5187193117201cd18c8789f - pristine_git_object: cccebe245154507185c8df50d40d21e1f736b332 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompanyBenefitsCompanyBenefitIdRequest.java: id: d2788722835c - last_write_checksum: sha1:ae182ef8cd74f04a5bc63812da33c5e858c77821 - pristine_git_object: 9bedf180f2edc23b982d4504a21d55f9397083f0 + last_write_checksum: sha1:85c87f2e49a3701c07f0e60ce236edf184cc9867 + pristine_git_object: f52ef9ba3ec86635c6339d54101cefe984030846 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompanyBenefitsCompanyBenefitIdRequestBuilder.java: id: 45d0957b197d - last_write_checksum: sha1:f45c4134c24f28201277e4a8121c353a5a7c0db3 - pristine_git_object: 1e0276751deaed732067215e24c65f0addd99abf + last_write_checksum: sha1:49fea0dbaa105337b14c271270f1b03c43dd2d71 + pristine_git_object: 2030e6cc23dd735b460c5c611b85c1f60f176081 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompanyBenefitsCompanyBenefitIdResponse.java: id: 85f13cf0f1b1 last_write_checksum: sha1:d74c9186fec78496d75d3ce2100e9139aec01488 @@ -13236,12 +14320,12 @@ trackedFiles: pristine_git_object: 59f985606514973d4bd41b206b379cc5634712af src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompanyFinishOnboardingRequest.java: id: a6769931539d - last_write_checksum: sha1:9d750ffa17e02621b7ba46c2b8353c7147501d76 - pristine_git_object: 6fc092536d951ca68460923187db5ce14dee532d + last_write_checksum: sha1:9c9a258dd0ec3da698d72679999f87b84911b1ad + pristine_git_object: 46df7bf6d5aef22c529303ba94f34c57af7fd8ec src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompanyFinishOnboardingRequestBuilder.java: id: 1f5e39c6d80a - last_write_checksum: sha1:f0eb3b46163924d4f4725810bd5aafd21267c7d9 - pristine_git_object: 702eb5d3ae9540e8fcd1f196ff889fed05f8fc1b + last_write_checksum: sha1:8f001faa7e6bb049b2b2d45891d814d9303d56c7 + pristine_git_object: 9a1b7eab65c5170bc51b90f38d8221940b68594d src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompanyFinishOnboardingResponse.java: id: e537b8d1cf96 last_write_checksum: sha1:e3fad5c9250188f936a3f8e24b1fd01a3507820c @@ -13300,12 +14384,12 @@ trackedFiles: pristine_git_object: 390c0c412deb2777479bee977b9d9c4b299facb0 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompanyIndustryRequest.java: id: dffb3003b420 - last_write_checksum: sha1:7f7181ba9054e64b75229cf72258ff2363d08f31 - pristine_git_object: 232dc183bd5d3146124412366cb1b91a08095453 + last_write_checksum: sha1:aa0634e4fd501fe03304e13371db498db63b6e4d + pristine_git_object: c3b2fe7a67c45dc7d2eb06f9de81120a45de17ba src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompanyIndustryRequestBuilder.java: id: 9e6629d10f64 - last_write_checksum: sha1:2d111c6f465b08a4b0f20081ca7c5538ae5ef115 - pristine_git_object: 0da9a1fe49c1a9fc3dc73128f2418b72561e35d0 + last_write_checksum: sha1:df4ee5fa0aa92e655f187da9a0340bdc331aa916 + pristine_git_object: eb95e2971d4bbba3839ffb57f7b385cc23b1a987 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompanyIndustryResponse.java: id: 68bc4fc5be64 last_write_checksum: sha1:ce2e044d9acaf39e3a4d2efa619b42b3305f4ec7 @@ -13316,12 +14400,12 @@ trackedFiles: pristine_git_object: ec48145f443ecf1c5c46cf8a1630384cc448e02b src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompanyOnboardingStatusRequest.java: id: f951b984a778 - last_write_checksum: sha1:299a1c1e2f3118d6a999027f35107b9e93d6d366 - pristine_git_object: c2741530ffe56d95770147752d5d8e24c5b91a2e + last_write_checksum: sha1:d5e7f27911d59b3b35456608037d77e2a93f008e + pristine_git_object: 1263d21a53ce4be5bd346097ed9602cbaf73ee46 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompanyOnboardingStatusRequestBuilder.java: id: 8fcc5baa5ac0 - last_write_checksum: sha1:e8daeb068b13f2a1cc011ff53efb28323b80eca1 - pristine_git_object: 43830c3f0915faca83792bf14e0a0383f0490d2a + last_write_checksum: sha1:11b45c341fc769a5b3b99be19d999e0997da8745 + pristine_git_object: f0caa55b472a25db9b3672d65b138151885fc1a0 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompanyOnboardingStatusResponse.java: id: 5864a5d6b8b8 last_write_checksum: sha1:0964902af3395cb000c7ab753088f78ec4c06890 @@ -13460,12 +14544,12 @@ trackedFiles: pristine_git_object: bbaeb30fcdd3f9f00974f27fe5d842d7bf10a1e0 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.java : id: da64f8ace133 - last_write_checksum: sha1:50d8e1bd6809387bdae10aabfdd3e415896b91dc - pristine_git_object: 1db7704bdd6fece1a79f4604ac91a9f62f8dc23c + last_write_checksum: sha1:89d660743aa14cbbbcd726e8714b67b3e0d90419 + pristine_git_object: 76dc48cb5a4f742d972a9f3a0804455226a6383e ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder.java : id: a1c65e2fc699 - last_write_checksum: sha1:f39f2c31c190353dd423a084eb046d10983470bc - pristine_git_object: a181817938af741427f93634abcee7d3aee58a76 + last_write_checksum: sha1:4caf31d693308826df2d759182a3d91e45efbef1 + pristine_git_object: f4f4512fd226b1d4a48a76c8e806c4b8a56ade79 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1ContractorPaymentGroupsContractorPaymentGroupIdResponse.java : id: 0db372a76698 last_write_checksum: sha1:b5b54a963bee81f3e9457d9c29ec4dc6e5bd0abb @@ -13476,12 +14560,12 @@ trackedFiles: pristine_git_object: 2d51a1b5c784b4296043951c04bbddf59bbd6682 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.java : id: 6080d6844bdd - last_write_checksum: sha1:c450c54fed1c261f148a285dba1c9e5e9311614e - pristine_git_object: c0014ab02b8f75e0cff518de0b38d480c55dd8c7 + last_write_checksum: sha1:4746a38933fd5ab8a0f997f36fe14f35eb916565 + pristine_git_object: f213da9da250db4e1946069bf335ad9ec9551ecc ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder.java : id: e186663fc0b7 - last_write_checksum: sha1:98b47ad5cdf9870fd6b7be2eb9be9e67196bdbcb - pristine_git_object: d5caacabcf6166376819d5baee92e9e62ffbffe7 + last_write_checksum: sha1:ecb8d49879401ca15032caa3c80fe206b888ff7a + pristine_git_object: 72fc56c61fadc0545a0e578241c1a7a7702c12b3 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1ContractorPaymentGroupsIdPartnerDisbursementsResponse.java : id: 8d5509249440 last_write_checksum: sha1:bdac3b9255520826989df0ec43ee019f47af4d47 @@ -13570,6 +14654,22 @@ trackedFiles: id: d0917aff08f4 last_write_checksum: sha1:a9ebdd328ed05affc20432c31283c25044ce27f5 pristine_git_object: 120143e37fec4f621bfb6d7c67d7751ee9f2f5cd + ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.java + : id: 3156fefef47a + last_write_checksum: sha1:cc6d9fe6f534d521f070e0c675258a2197b69531 + pristine_git_object: 84bb34b28af062b75729ce89d05c1d36165f8df6 + ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsRequest.java + : id: c10afa6541f2 + last_write_checksum: sha1:95803d7ab17eeb713d4eb2ff9b63c821d06b2e73 + pristine_git_object: 172b52e57ec860ff1a06b0f7748685faa2d39462 + ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder.java + : id: edcfb58ac21c + last_write_checksum: sha1:ca70300bc480987e60715a888192ee66a248d386 + pristine_git_object: 5a0c8ed468eea6d45a37632ee602597e1b5e60cf + ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsResponse.java + : id: 63f55b793ec3 + last_write_checksum: sha1:000e4505ed575dfc38ec0d1badb1d092cf01b95c + pristine_git_object: 856c1389a9cdbc039ac07251bb4bb2b140da545d ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1ContractorsContractorUuidOnboardingStatusHeaderXGustoAPIVersion.java : id: 3add94664595 last_write_checksum: sha1:5f69e593c020ea9d9db66789d7aa20a3d8676dfe @@ -13602,6 +14702,22 @@ trackedFiles: id: 16d422393e31 last_write_checksum: sha1:1cd1b7690543602f0758094615346fd9a854a9c6 pristine_git_object: 44844928042863cb7ccc2b7eb73382b14fbb63dc + ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1ContractorsContractorUuidPaymentsHeaderXGustoAPIVersion.java + : id: ff64ad2a5868 + last_write_checksum: sha1:fd079ec9369934f74499c6a3c762a62afeaf2377 + pristine_git_object: 10b72822d5af6cc6a3961d74a1df3c40b54cebbc + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1ContractorsContractorUuidPaymentsRequest.java: + id: c2e58637f187 + last_write_checksum: sha1:c6fe4ad0b183ce8828182185f219df0e8ebed4d2 + pristine_git_object: c50d2ea398fb76ddbff7d1b51e3106b3a6522de6 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1ContractorsContractorUuidPaymentsRequestBuilder.java: + id: a76ff9847738 + last_write_checksum: sha1:c401a5458f9c2acf4ac4c55a5c254abe8b4a7f70 + pristine_git_object: de93529569ff712cae5cb586b062a7551de476e4 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1ContractorsContractorUuidPaymentsResponse.java: + id: 6eea148a3445 + last_write_checksum: sha1:473c694b9aeebc9a1d90632c61fbaca4b94c2ed0 + pristine_git_object: c29ab969be27710c2d1bbb88637ba01ab0ee8443 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1ContractorsContractorUuidQueryParamInclude.java: id: d69d75c57a11 last_write_checksum: sha1:77741ac84d9e9e86d0dcc1ef4ec3d8db0d8fcdc0 @@ -13704,12 +14820,12 @@ trackedFiles: pristine_git_object: 2c5dc3528f5d231e43e5f3a639885db9f90fb5c5 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesEmployeeIdCustomFieldsRequest.java: id: 1a78e223caec - last_write_checksum: sha1:a90490bbaa45c24b9058ed30c1561bbfeca4d4bb - pristine_git_object: c4efd2fd1c8e909b5972c7775bc8415f6bb0da20 + last_write_checksum: sha1:72bbae76d4ebedacb66bd38b94e73ae7d83b4398 + pristine_git_object: 893923bf33e68a8495dd727c1a4e240da4b7894e src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder.java: id: f1e1e97c4945 - last_write_checksum: sha1:e81333ac245e9aba6cf9a380afff0f8685c4fa12 - pristine_git_object: e9dfb8fee75e68cc9a85be71cfe11762df5036e9 + last_write_checksum: sha1:e0160310f70f18340099e7562611fc21e35152e4 + pristine_git_object: 3fa3762b2683db0d99a76f53b4013fe1f5f5a851 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesEmployeeIdCustomFieldsResponse.java: id: d4a2bb5f22ea last_write_checksum: sha1:eb920527ba09eeed1b0ae91242295d7e99d21a15 @@ -13788,12 +14904,12 @@ trackedFiles: pristine_git_object: f665dc62d0f26e3831310d74160bfe7fe6030077 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesEmployeeIdHomeAddressesRequest.java: id: 5329b6d63b47 - last_write_checksum: sha1:3cc79c7fc42d328f0150c2412a0996a3625c6731 - pristine_git_object: f78e76f5418c682b892d0a8a14805c4e96041ec4 + last_write_checksum: sha1:76d73127fec230eba8cde06cf365d99492e886e0 + pristine_git_object: 27e68d7465f3bfa9ba7e4f54940ee4cf928f08fe src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesEmployeeIdHomeAddressesRequestBuilder.java: id: f73582a427d3 - last_write_checksum: sha1:8b9a868c7803ffd9ed9fab18b6d27bcaa8501045 - pristine_git_object: 4f28ec374e3b3c01cdf9b47e90cf964613c48ec8 + last_write_checksum: sha1:cfeeaa23123e563724d98a9443e24eb5424c8194 + pristine_git_object: 670241f7158c147e1243c52716e7f194c184ac3e src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesEmployeeIdHomeAddressesResponse.java: id: 55746d0936b8 last_write_checksum: sha1:0dc98099a1cec39e444b7a8dec3b5ddb6bf0344f @@ -13856,8 +14972,8 @@ trackedFiles: pristine_git_object: 1e506f4c297ba0b210ac4adad0e4107ba533611f src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesEmployeeIdJobsRequest.java: id: dd7d3aa92dfd - last_write_checksum: sha1:4a0feabd6fca846aed37f52782bb00479dc034e2 - pristine_git_object: 832624ca0ef67e657038d086e9ed11674242cf97 + last_write_checksum: sha1:980e4b6033b19525e7d39df93806e836f8c357cb + pristine_git_object: 97f9779aab2142ddb3c9c6a51f4ec9b27fee4a0f src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesEmployeeIdJobsRequestBuilder.java: id: 044840dc6857 last_write_checksum: sha1:ea1a60018bf93a00d9dd203024d6ceb60ab6bd22 @@ -13866,6 +14982,22 @@ trackedFiles: id: 98aad407adaa last_write_checksum: sha1:e4015f6d8098b2b7ba13135a1152e9c6fe897595 pristine_git_object: 8582eb7ec4cef991e33bb9065c9e26e65e86d5ec + ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.java + : id: 8398e3c0c1bc + last_write_checksum: sha1:3080c2339c6a354f47b01ef3aa821eef11f60463 + pristine_git_object: 50809b34239e9a41bd4f81add9b5d554396520ce + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest.java: + id: 357f4546773b + last_write_checksum: sha1:2f2e76220e556eedb8a8ec29998091347ec20df0 + pristine_git_object: 13372779d4b7b6d9b66f8333ed783c257a7f944a + ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java + : id: e58c3111858d + last_write_checksum: sha1:6f2d4b52b6698556fcf61385589a138edd689e73 + pristine_git_object: b960c9fd39d20974b37a8eabdbeeca78f1f685dc + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java: + id: a52976836e04 + last_write_checksum: sha1:623ace21218dbc246b3361872b665790b14b6263 + pristine_git_object: 08525461c7e4a15aeecdf4c4d360ca9cb3ff78be ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesEmployeeIdOnboardingStatusHeaderXGustoAPIVersion.java : id: 4428e2363e8a last_write_checksum: sha1:c24aec26ee51c01c590ccf210d9ebfcde22c227b @@ -13968,12 +15100,12 @@ trackedFiles: pristine_git_object: 2e29eddae30cf1b36eb7a2fc8a917d1ac8e98c4e src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesEmployeeIdWorkAddressesRequest.java: id: c1b4ea7b4427 - last_write_checksum: sha1:4c9921d6e559f99352b4795dc86e2d4bb973d8f0 - pristine_git_object: f642417abfcaa12925413df7b2ca20169e275dc2 + last_write_checksum: sha1:8f420db5a66be4829b86901daa02aca43f3c8c5b + pristine_git_object: 603637d7c8d011092d5ab7818859529e26bbe3bf src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesEmployeeIdWorkAddressesRequestBuilder.java: id: f53cb1618e99 - last_write_checksum: sha1:1a01bc39cb2ed7bd3c1a648fa721745e84bec433 - pristine_git_object: 35b044be279c20998034fe7781894e651159da1e + last_write_checksum: sha1:800283c88b8bc6053649bc55f1ad092ad9204a0f + pristine_git_object: 516a1f69e5fc5dd0788d54d15f7c9b277c66637a src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesEmployeeIdWorkAddressesResponse.java: id: 96da4a055cf3 last_write_checksum: sha1:2e04f7e8b871bc2ebea29db5ebdd37e86b5ae584 @@ -14000,12 +15132,12 @@ trackedFiles: pristine_git_object: 1c8456809522964a8898bdb36040858cd81c2dbb ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.java : id: 88a9e7cbbf90 - last_write_checksum: sha1:cdae9ef27ff0672cd8e82368a5e94938e8bbda03 - pristine_git_object: 3f2c7fde485edcdb8d4518489e82ccd3654ef16c + last_write_checksum: sha1:636b47f460f9a59219e2f7d3495635c8d120f38b + pristine_git_object: 41021f990b31edc9851dcc1af61d85f00e2e7c20 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder.java : id: 16d605f57199 - last_write_checksum: sha1:cfc09d2afcb64eeef7cba00e803cf9a002b2469f - pristine_git_object: d0f54663f6411afeeb0cb71c34aa864b5743e941 + last_write_checksum: sha1:21efdc87e800ac60ec310c367e803aae4725e395 + pristine_git_object: ddc3389da48ae1b70ca58a5e82df30f36dfa8668 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearResponse.java : id: 2c7e5754e679 last_write_checksum: sha1:25de05ddded2d121b62239e7b15899f50c17a27e @@ -14016,12 +15148,12 @@ trackedFiles: pristine_git_object: b001d46662656f6ee0a1247de716d67ae2b7fbbf ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.java : id: 7c68821483d3 - last_write_checksum: sha1:07d899d6f0c024e6271ef520f6a5d38dc7553663 - pristine_git_object: 105681d096c3786fffa99a6bb0c1ace15b1183a7 + last_write_checksum: sha1:64647c1fdb2ae11db61849e89934dd0dbd72dafa + pristine_git_object: 801e16fe4c055384e95dda522624d752b63688f8 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder.java : id: 231840f55341 - last_write_checksum: sha1:1da7ac30e867c67ae4892add67b923b32e6fcac2 - pristine_git_object: aebe7c7cef3daeb722c7a8ad335563363bdc28e1 + last_write_checksum: sha1:54db98163aa7310090887a2ecc29ed3431a4a164 + pristine_git_object: 5439f1a47b664dbeede17f43d2c517455c79b67e ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesResponse.java : id: 4a67598b3da7 last_write_checksum: sha1:0502d632a5ae8f200af5726152c37c2c4b6cad08 @@ -14030,14 +15162,18 @@ trackedFiles: id: b4a60952e646 last_write_checksum: sha1:59cf7baa86d8eaff7bfa7ef556190a1b11dc93bc pristine_git_object: 98645076605e44a8f60a62c928aef058f626ff54 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesQueryParamInclude.java: + id: 8f1cf7782dbe + last_write_checksum: sha1:351158049730686c742d19e9b02143d81dbb89f6 + pristine_git_object: 7c7684aa3de68d70cefb815c532f7a1f04796027 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesRequest.java: id: 3f1aa463d981 - last_write_checksum: sha1:bac7983f0b5f4bc64115addb58a4f2902af5b018 - pristine_git_object: 73b675f7a111114d24729c4c79e58325cd5e7265 + last_write_checksum: sha1:45a2b360b41b5660f493f0e0c549310f539f3cdd + pristine_git_object: c8d53722b7833fcb82cff6bf754afbbf894cd1ad src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesRequestBuilder.java: id: 885478d65bb9 - last_write_checksum: sha1:bd2808a763f402ce48ec16694b50982d0df7ad83 - pristine_git_object: c974749b9ef22544c90480b5139c6143456ef9bc + last_write_checksum: sha1:1ec20c6d72ae01faa01499db6b8f2b7a644a348a + pristine_git_object: 939135f66863a62a3079d996a42f540a86f22d87 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesResponse.java: id: daa7bb0bbfb8 last_write_checksum: sha1:150e790e1137ecb9d9b9efc8e28e433c84cbbc21 @@ -14106,14 +15242,18 @@ trackedFiles: id: 3101207a387e last_write_checksum: sha1:8f6b0cdd7e3a2b7e8cfad17fbf53187baa2e09e5 pristine_git_object: 5d22896b7e21662019f80d00bfc803d89707029a + ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion.java + : id: 58c041630acc + last_write_checksum: sha1:c3670c0d40f2c1f268eb82cf0a2ddca303f81555 + pristine_git_object: 7a7f7f098ed2bd8d06b4ae400b25e257425363b4 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest.java: id: 2169236a3b1d - last_write_checksum: sha1:b8ed32854f39d7d8820f293acd3d07e8d4a95fd2 - pristine_git_object: 2557dea857e615cfaf09798950048f408663b3b3 + last_write_checksum: sha1:8a9df1ec76e1acec1d7241d006ae2502b1726e0e + pristine_git_object: 9be0cbd6d50549af026340f5febd76dcb3d19307 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder.java : id: b3a2fabca002 - last_write_checksum: sha1:367f094c0493fbafab9db771f857ec2a98220eeb - pristine_git_object: 0d01ac3785356a6afc8f71fe7be281cf69bf5806 + last_write_checksum: sha1:d4da2e6fc1b5aa669648db39c9eed825b705ce9a + pristine_git_object: cd0d28b7517e426dd63fa2e96f91abd1ca01a886 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidResponse.java: id: ff4e8128e95c last_write_checksum: sha1:871fb1d662f8950130f1d0208c27539628f62bea @@ -14124,12 +15264,12 @@ trackedFiles: pristine_git_object: c40ff4ef58ca8af25e7a24a7bd59883b6d3303f3 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1HomeAddressesHomeAddressUuidRequest.java: id: fb8efc3bb994 - last_write_checksum: sha1:23e29024991d50a9bb7f43ee0fbf049f86a296e7 - pristine_git_object: 5df3b9d3a1f58649ac0a1ee5050cee630620b57e + last_write_checksum: sha1:adb738a5e71ed08991763943855c5ae700d20737 + pristine_git_object: 577e3f7e7ffbd9f248cc297988a531530621c16b src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1HomeAddressesHomeAddressUuidRequestBuilder.java: id: f2616466d4fb - last_write_checksum: sha1:dfba88acca0ba171afa200da81bdc4b9ed61aa04 - pristine_git_object: d99633b9728291d672466b2cf87203224992e40d + last_write_checksum: sha1:641a99b4c046f02059039e7e4e45ea8d979b521c + pristine_git_object: 90b4123b9433e7ff4ea8d3b3d1a39b31b572c560 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1HomeAddressesHomeAddressUuidResponse.java: id: 1b6304748e56 last_write_checksum: sha1:d75749241fb8170123e3ea176564885ba2ccff89 @@ -14164,12 +15304,12 @@ trackedFiles: pristine_git_object: 21c17421215753e499c386f99c4378bd1dcae33b src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1JobsJobIdRequest.java: id: e4ac721f79d0 - last_write_checksum: sha1:46d9e220156b862a557c070145585c77fe9ffb61 - pristine_git_object: 0bc740c2192514dc89c81bce596d494108857666 + last_write_checksum: sha1:b545ead25a5579922f6099493102e07dc9fedff6 + pristine_git_object: d4c162857cefe5c1253b234daeee07f37430d7fd src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1JobsJobIdRequestBuilder.java: id: 699feb0c4170 - last_write_checksum: sha1:2d574471db3dad51c5072d6036c4ffbaad0067d5 - pristine_git_object: 1e80a465643e1f51bf1eaaef27e8ee54ecd25ed1 + last_write_checksum: sha1:258dcb02b2d1c18b4d2d36f5ddcc89f7f4a9e803 + pristine_git_object: 43f0e23a311226a2a24777875d3fe02f84cfaef4 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1JobsJobIdResponse.java: id: 12e4b39c0ef4 last_write_checksum: sha1:17a1508fa8178d2e63fb34449cb1d220070e5b24 @@ -14196,12 +15336,12 @@ trackedFiles: pristine_git_object: 159ab5ce66a9b511379c72a17568a198f01cb2e0 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1LocationsLocationUuidMinimumWagesRequest.java: id: d6c1ddee524d - last_write_checksum: sha1:6982575ffe6761446fc380c411c5b71058801a0f - pristine_git_object: 30c2c42dc249a4c6a9553a919c478549ba2b0e5b + last_write_checksum: sha1:d09f650568f8746d4166366c8e1f2438c4a28730 + pristine_git_object: fc6d744c8a2b4ef17a82e1dbf47cdc40f09301e6 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1LocationsLocationUuidMinimumWagesRequestBuilder.java: id: 1a9548b0a259 - last_write_checksum: sha1:69f561a07d14442e9cdf684bc518c5e405743822 - pristine_git_object: 6107cf10d104731e1631fcf1105a20d0ef3e7ec7 + last_write_checksum: sha1:3337b048be125d43cf42db334c789c28c12714e5 + pristine_git_object: 17cabfeaade9f004e9e9cf668b0353d5b9be62aa src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1LocationsLocationUuidMinimumWagesResponse.java: id: 5555b59d5a79 last_write_checksum: sha1:1d96fce8ea027e3f61521af31fc2a96907407f7d @@ -14212,12 +15352,12 @@ trackedFiles: pristine_git_object: 1c8609eaff167117f30f6afb9a4b05a43160bc6f ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest.java : id: f4f3c7674bcd - last_write_checksum: sha1:3ed78be3b445c78925565d07f479d8c8a13662e5 - pristine_git_object: c9f4f0064415a08d74142307976ed6858fff4833 + last_write_checksum: sha1:24aafacc9438b51ccef8128cb30f05800aeccc42 + pristine_git_object: f6786bc5d40e57ba2955b06d48f22325ee74d2bc ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder.java : id: 0b130589e96a - last_write_checksum: sha1:6cea1e41d2955cc2129bb740737fa5f191cd5d27 - pristine_git_object: 152346cc92ae553d838b50fbaba5290fa7e7d90a + last_write_checksum: sha1:0b2678e8463b2da10f887a4b9f50009ab3d63a7e + pristine_git_object: 492764df71966e9bd5b12e9c8d45ca59b5475692 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessResponse.java : id: d4cda80fdee5 last_write_checksum: sha1:9275976f66ecc9e87161a667d7fd4c7f9f82731d @@ -14228,28 +15368,48 @@ trackedFiles: pristine_git_object: cc35876699b4ff756798b736c4317361a1171cf3 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidRequest.java: id: fb3bfa2a89c6 - last_write_checksum: sha1:4feda2069909b4caf63bcc9b0e22c44e4d8f3d84 - pristine_git_object: 7c52a21eb6c323e93c89e97fe37cc2944ae5ebe2 + last_write_checksum: sha1:33726f0e3f562600dcefa709c4a07930ed06c27e + pristine_git_object: e2b57d08df63018b0a8c7a25b3c271b1c639a2b3 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder.java: id: 0c979a57689a - last_write_checksum: sha1:f2f0c834a60726814e6458e4d5a9af74d7673f39 - pristine_git_object: 212173038e6aff3284e2a5ff09018ba6d8268637 + last_write_checksum: sha1:4c826a5190a9b976f34d7461ccc6b51c689db596 + pristine_git_object: 8a7605c442225514ac80f0217478c20475d3096d src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidResponse.java: id: 48289d6a1fe6 last_write_checksum: sha1:0ae589a18b1fd1f9ab382eed1f67a3e961fb840e pristine_git_object: ddf16f7c7ba4a2ca7d3baea007f26b1ab8fe250c + ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion.java + : id: 6141249c2385 + last_write_checksum: sha1:3390f572995c3ac23669a9e5a26c58c53f0a1a66 + pristine_git_object: 3d73d80bba767167f33aa34ce5131541508a3c04 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1PayrollBatchesPayrollBatchUuidRequest.java: + id: 98c09988caa1 + last_write_checksum: sha1:ac1ef4045c0e349c1eb98b019dc6233f81311e06 + pristine_git_object: 9c8dfcf984718b28d3088f5681fab50b195dcd5f + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1PayrollBatchesPayrollBatchUuidRequestBuilder.java: + id: 9cc93cf2fb28 + last_write_checksum: sha1:9b7bcf42c8222ce4f1690c683320045244d03744 + pristine_git_object: b0e60d373948a24b510d6c50f1271934d87df441 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1PayrollBatchesPayrollBatchUuidResponse.java: + id: 74952f6af7c5 + last_write_checksum: sha1:956029bcb7ffe866651a0641c2d0c23c7cdff938 + pristine_git_object: d360d31e41d3ff9871920b76c17443cce79e7d77 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1PayrollBatchesPayrollBatchUuidSecurity.java: + id: f0020210b00a + last_write_checksum: sha1:72aae6a9413f360d05b547004b82b454fef930fe + pristine_git_object: a168877b7a5a8619d08499f5f03ccc38f4eb7cc1 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1PayrollDigestsPayrollDigestUuidHeaderXGustoAPIVersion.java : id: 477bbf301c0f last_write_checksum: sha1:69a5bcd7f3b5d1be7f3e6d02aa9bcb483ea9a497 pristine_git_object: 906bf67306f746b9931ab52b30d4f44cb7b3e627 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1PayrollDigestsPayrollDigestUuidRequest.java: id: 3fc5ce6d9e8b - last_write_checksum: sha1:3d99a6c00c58daedf97c1d43b3965cdbb34040fe - pristine_git_object: b1ea7ae432c4868ff1b17531d6ad75a83330604c + last_write_checksum: sha1:83021692650a48ee375acd6cc644370b65c691d0 + pristine_git_object: 0573f56579219197190d71feb65c8e6936663d5a src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1PayrollDigestsPayrollDigestUuidRequestBuilder.java: id: 6e4866455c0c - last_write_checksum: sha1:cfd6589c4fa4ae8d6cb41e13316f748d9b9104d4 - pristine_git_object: de99523e52f16d5953073b3ff03e6600044bcb07 + last_write_checksum: sha1:18d577c1cba5a69d77ee38b8dce83b2fd96d1613 + pristine_git_object: 5aa2566df94fb158ff99cb57e26e61917fcff0bf src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1PayrollDigestsPayrollDigestUuidResponse.java: id: b0fa245ca442 last_write_checksum: sha1:57b72452e1240a7d3e6559541cfc79df7cc4e205 @@ -14280,12 +15440,12 @@ trackedFiles: pristine_git_object: 1c6e424a1066ea365a85faf44192975898b95b44 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1PeopleBatchesPeopleBatchUuidRequest.java: id: 8cdef9743c19 - last_write_checksum: sha1:a1e4325bd81294e9baf17a95d824ffa7ac0b8f17 - pristine_git_object: 96821d8f6c38ba0177ba7030884082a4f79bc90a + last_write_checksum: sha1:c1957f9f8f6a83148faffd3ff5c8234ae33be5ae + pristine_git_object: c94cbc76ef936c1bf1d6782b40be562f61d9929f src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1PeopleBatchesPeopleBatchUuidRequestBuilder.java: id: 7b377b8e0a99 - last_write_checksum: sha1:c20687859928e19eab44c4fb358332d8571e2e5e - pristine_git_object: 7b1cae8154ea476dd1510534c6c4f66401a071c5 + last_write_checksum: sha1:c5e4fa3025a7609b4427f0a823e5f543aea46f8f + pristine_git_object: 7d48a70affc52cba814c611a98bb796b936a37a8 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1PeopleBatchesPeopleBatchUuidResponse.java: id: 602a53d2e401 last_write_checksum: sha1:75205c75ce6dd28f44486d539e2539cdf51dd949 @@ -14406,14 +15566,18 @@ trackedFiles: id: 96c314aecdf3 last_write_checksum: sha1:c5a59d784c033a9080e97a94af34f675f81cb776 pristine_git_object: c728415267f6a8446942bb1fc044f037ee91be93 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1TokenInfoHeaderXGustoAPIVersion.java: + id: a99f0f6d612a + last_write_checksum: sha1:a940346cc295716679187c09d0a1116b6048d45d + pristine_git_object: 661c4c6941b304442bf98f3ed3c822d727b067c7 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1TokenInfoRequest.java: id: ac6287c3ae48 - last_write_checksum: sha1:7e273b358f302a31dd371f9b44b3c0915b9b1f42 - pristine_git_object: 0943324e39195ecac244e1590cce7ec9d20ec7b1 + last_write_checksum: sha1:4b76ad3efec89f599dddd082bd51ae834ece96ca + pristine_git_object: 4e0375717d320256bdfeeafac0ba8f9fab67a450 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1TokenInfoRequestBuilder.java: id: 1b186e809382 - last_write_checksum: sha1:be53ac573a222363abe320b48222e988a8a23ac0 - pristine_git_object: 5b646d27c72f387a21c62cd699fb08c7b3a7abcc + last_write_checksum: sha1:a4140d6d4b7355ac6fc9e77cc4c9facec9ec3d99 + pristine_git_object: b48c83a529bd9ee614ff539b7e42a54f13a40c01 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1TokenInfoResponse.java: id: 53283e2f5816 last_write_checksum: sha1:7adb7f8c9c089b9fb6b7cb862b850dec1ebe30b6 @@ -14424,12 +15588,12 @@ trackedFiles: pristine_git_object: 5e28362f1b523fe26b31afafc353a8a90e0afefb src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1WebhookSubscriptionUuidRequest.java: id: 89ca0c608c44 - last_write_checksum: sha1:4731a7863eb1e3bf756049238fdd2bbeec49f3f0 - pristine_git_object: 9b85eb347451056a9713e144e02a555156915a3d + last_write_checksum: sha1:f6f536fb76beb4e89b93675ba3c01f51d65e8369 + pristine_git_object: 3d83430dfecc44fc6f5e1046f321befb154046ec src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1WebhookSubscriptionUuidRequestBuilder.java: id: 3cb0678ceb40 - last_write_checksum: sha1:b8085b9d0ce2f72b0d524dde5fc40b95a04a9ba3 - pristine_git_object: 8101b05f1a16faa310cc0a034d0ed1c00567db3c + last_write_checksum: sha1:9474f912aa37f1efb1b4dd0581d3c1c64073487f + pristine_git_object: 1c6e9dfa23b7f0f479f67f6046dd7d815e800128 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1WebhookSubscriptionUuidResponse.java: id: c9a9c2e06706 last_write_checksum: sha1:db2c098723cf805caa6874c4c374e70396959c50 @@ -14444,12 +15608,12 @@ trackedFiles: pristine_git_object: 9377ca2aa9b5b39ea3cbee878394ff3e1db8eafe src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1WebhookSubscriptionVerificationTokenUuidRequest.java: id: 911a54ca3b53 - last_write_checksum: sha1:2ee9eb6ab040a67e95f83c26d6fff51baa2b9349 - pristine_git_object: fd2bc0a203069b50432e38678cb1808600d28df0 + last_write_checksum: sha1:6b14c0b86d22426fa8846b9c83859124d757a0e0 + pristine_git_object: 616adff740b3ecc6e3ccb45b4c455a8651d8a1d0 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1WebhookSubscriptionVerificationTokenUuidRequestBuilder.java : id: 9d2b2ae64b91 - last_write_checksum: sha1:0b959313d6119c5478319156eb6be7cdc8b115ac - pristine_git_object: 5456516b73ef84c7e85de62cd116d3fc88cff9df + last_write_checksum: sha1:a81cc57594017d4639655435c39b0b51700ea09f + pristine_git_object: 2fdc5196a7bdbac08e12ef6927933b2dffca69e5 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1WebhookSubscriptionVerificationTokenUuidResponse.java: id: 72f66c23b1bc last_write_checksum: sha1:e0727aba999726ee4ab2b5930e296147b6541d82 @@ -14504,12 +15668,12 @@ trackedFiles: pristine_git_object: a715affe01df2c4627779a06427d16388f2f95e7 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1WorkAddressesWorkAddressUuidRequest.java: id: a54b6f5ed6cf - last_write_checksum: sha1:b44ba9adc45e286729fdefe0de41e84bf6c0feb5 - pristine_git_object: 4bd47f42e80509a3e3010f02fbcf358bd4ab499b + last_write_checksum: sha1:1e5d908da9a075ef118b148f5999de2b0001d8cd + pristine_git_object: 102723f7ee1314569f1087c1cbbc65f00f04f4f5 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1WorkAddressesWorkAddressUuidRequestBuilder.java: id: a597ea678677 - last_write_checksum: sha1:942ec263cc0b78fa765a0f8cce28240c9224123d - pristine_git_object: f44a3060ab4eb041112b10d8a3065aba345040ca + last_write_checksum: sha1:4eb5a0798073161867e08dd33eb4ad573e6c0636 + pristine_git_object: c315f815f35f3154ccf8ac26d91e5f02ec119e0b src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1WorkAddressesWorkAddressUuidResponse.java: id: bd78f1a986c0 last_write_checksum: sha1:1f4ca93e416834b987bcb6a1c55707568fdd1549 @@ -14536,12 +15700,12 @@ trackedFiles: pristine_git_object: c524dd94324df6bd98cfa7fb29ef9bd35a05e648 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetWireInRequestsWireInRequestUuidRequest.java: id: 675b41891fd7 - last_write_checksum: sha1:6e7f729eaed3f8cda155ce9ebbb9d093c8231684 - pristine_git_object: 39603c569bf6167019591a01d784945d702a0b2c + last_write_checksum: sha1:1a8b05c5153a04021bba7caa03286da45d9a2ab4 + pristine_git_object: b1672a3c730c7da5ffb98649276c26cf18fd5f74 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetWireInRequestsWireInRequestUuidRequestBuilder.java: id: 9f87e712bc0a - last_write_checksum: sha1:9812ab9ecb572a4ddf07de03c11bc94f2980f590 - pristine_git_object: b7693cd7d4f7f3ce017e1418a86bb34e5459bef4 + last_write_checksum: sha1:551040e04d731410257bb3df1412a6f31874a370 + pristine_git_object: ab2660033fd1b1b1ed6ad86aee17bb66c3d66f53 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetWireInRequestsWireInRequestUuidResponse.java: id: 7dcde4fdfe22 last_write_checksum: sha1:3ed614aea9f134f57c6cbe4a3870b05f3c6e41aa @@ -14560,8 +15724,8 @@ trackedFiles: pristine_git_object: 829dc2276ba7ec223e6a399c7e884aa0bba0b93e src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/Include.java: id: 92606bbbb5fc - last_write_checksum: sha1:3b6d98f7e088df597d55e8dae834f8c669ecbc1a - pristine_git_object: 822f37347b7607efc2561d8c149573fb3ce60b7d + last_write_checksum: sha1:69364395042706c5e230e3ed4cfd72ef9df58e0e + pristine_git_object: daae3a7f7665236be41cceb416eb1aba91236bd9 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/IndependenceDay.java: id: 7c94f15b2ceb last_write_checksum: sha1:f1dba6b903814c3ddc4a0d63f0989b6060b25dfe @@ -14580,8 +15744,8 @@ trackedFiles: pristine_git_object: b2664abb49bc3584d3b3727e3056a3d88b1d7dc4 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/LeavingFor.java: id: 2b81a42865d9 - last_write_checksum: sha1:8fafb9f4b1e4d082d0413120cc77aaf6e633c542 - pristine_git_object: 02f60eba4de4006e9db9eb2c787b751b8d38bec1 + last_write_checksum: sha1:f70385f2285200231d6b37be3b1faf427e906633 + pristine_git_object: 270cfba5618c5c3ab1882ef5fe68ee1362763896 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/MemorialDay.java: id: a752f52996ac last_write_checksum: sha1:86fad62853fbaeaea1de3b74d2788911044c925b @@ -14594,18 +15758,22 @@ trackedFiles: id: f857d677fcff last_write_checksum: sha1:36ea4e70341b235a83dea90fcd0d894a28860531 pristine_git_object: 7e898374f7bdc2543255cf58deaf63a2fcdc75b9 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/OauthAccessTokenHeaderXGustoAPIVersion.java: + id: b7f4db92bcf5 + last_write_checksum: sha1:ba93f76cd8ddb3420a237046635a43831ad0965d + pristine_git_object: eb1d471dae749349150021ad868a1550c182d9ac src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/OauthAccessTokenRequest.java: id: 40fed39cf8f4 - last_write_checksum: sha1:f882cac0b36ef421f4b19243a3c3c2115e059aba - pristine_git_object: b1a7a7700f28b7e35a05629137a464698499e844 + last_write_checksum: sha1:f9d90d2bba2936abc07cfff5a71a8320e0693f6b + pristine_git_object: 04f9f447931715bcf51e7eebae71b427ca7eb6e7 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/OauthAccessTokenRequestBody.java: id: 837baba8e062 last_write_checksum: sha1:9e87b5e729f21e1f5a822a8ea215ee97f5746c0e pristine_git_object: f454a319201517055471894248bedde0ef57efd7 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/OauthAccessTokenRequestBuilder.java: id: 11d9d71a809a - last_write_checksum: sha1:c9dd3519c5f6f7c69d5dc51d3e82f127ae76f375 - pristine_git_object: a9c5f319abd810c549fd9c1cb2bee0953fa7a882 + last_write_checksum: sha1:f2d882f30e4d2a6b492757214876e453a4ad0a66 + pristine_git_object: 3e4180e34fe745d428fe21300b44dbfb23a145d8 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/OauthAccessTokenResponse.java: id: 66468d558de2 last_write_checksum: sha1:9a1c18c45c78699cb4fce907499e4cde01e42b8d @@ -14644,16 +15812,16 @@ trackedFiles: pristine_git_object: 07c02be7bf5c8692c1b6f7ab81a288cd1ba96442 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.java : id: 42a2a85b216c - last_write_checksum: sha1:2d23915683c3de09e7dc62c5aba2485663acdf3c - pristine_git_object: 023d94ca43581ec3a838cdc00c05d0d6f5622d45 + last_write_checksum: sha1:dfa10c76dd00a65961e1f0cd254aa7f35367a525 + pristine_git_object: 16215d8dfb3831b0161a6e9e8a74054a92345011 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBody.java : id: f41dc208e330 last_write_checksum: sha1:b9f3509ff46fa79b7007aef756270e6c873ac80e pristine_git_object: 77e86673cfa29a023e6ecbf8b231dd60394d79ba ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder.java : id: e08164b2c5eb - last_write_checksum: sha1:61ab824b142cd33e7b12848368878557a3cf053c - pristine_git_object: 750b43d449e3d0e94ccaaf275953adbaab6b9be7 + last_write_checksum: sha1:3cfca5295733970f3c2b438889d758bb2e9f0638 + pristine_git_object: a70901b2085ced854a79fb749f83c1da6a35bb35 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsResponse.java : id: c9faa928f210 last_write_checksum: sha1:dd1fe0fda2230c8c4ff9135adf979cf863071972 @@ -14664,20 +15832,20 @@ trackedFiles: pristine_git_object: 151bb4801e9631551e5e3f2c36f49329b01ff8f1 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsPaymentMethod.java : id: 52823812b156 - last_write_checksum: sha1:f71456c75fc2ae0032caaef1a91d3dfc64cab138 - pristine_git_object: 0562eb3a0bf04f3eb9973094d9e2176b219a636b + last_write_checksum: sha1:593ea8b45671cae324d0fc77b84db9223426a309 + pristine_git_object: 2a3ee39683bc004e824a59624a01624a0beef825 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.java : id: 41486a394640 - last_write_checksum: sha1:83f2af1dbe46f78d07153d49c10031c13c027ab1 - pristine_git_object: ebc71d8a7c838345696323065699e5be6c1e03e2 + last_write_checksum: sha1:84e2756bc3dd620b77d61a78214b9ae5e4490c5e + pristine_git_object: 19b53247bc25fc69c77a6259a91cd1ac0bd64f19 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBody.java : id: 1d7054f86fbd last_write_checksum: sha1:250bc60595b105b79ddf31984392c8e980d69436 pristine_git_object: 52a915f114b3c4aa95a02093860025fa702c098b ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder.java : id: 3455d2b6e910 - last_write_checksum: sha1:bdd2f85bc0ab86938cee6a675a10f9860a5e3666 - pristine_git_object: f4b2b9cce8ac8ce7946e9facb25f874277b4294a + last_write_checksum: sha1:a3d52219a6a13cb5ac4e078bea0c664bbd80610c + pristine_git_object: 3320e468b24dd6f6fac9a3213d7ffaa298afbb99 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsResponse.java : id: 095660557fca last_write_checksum: sha1:e9bd2bce1564af1bf0bf63be5678b42e303dbaaa @@ -14688,12 +15856,12 @@ trackedFiles: pristine_git_object: 31cea14a6a2033bd3ecd7e16154f6c313832dff7 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.java : id: b4a03034f20e - last_write_checksum: sha1:9217443c7a2ca46f660f6092c2230a179ee08b7d - pristine_git_object: 1a3b6cbfb3ede13585eadc805997fd6829105b04 + last_write_checksum: sha1:5853e708e0fe2024a1b89421690c984b2e08f2b6 + pristine_git_object: c0419ef0f9b53ffcbf24d3587c80419118fe19cd ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder.java : id: 299b5dfedf56 - last_write_checksum: sha1:79744e9a008722baf5bae317968a0afaaa87ec60 - pristine_git_object: ef70ca0adc57c0c9795fa0f8ad28e7bf94678285 + last_write_checksum: sha1:7b349365b4c7a43a62a664079826e9810918a8be + pristine_git_object: 3d4fb9c260249dd285524ebcb6fece577bae1bd3 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearResponse.java : id: fe2402872bf5 last_write_checksum: sha1:538a5a1a484b9cf701c3d0b20a3ac7c891eb6810 @@ -14788,12 +15956,12 @@ trackedFiles: pristine_git_object: 601ec731cceceab30d58d18e9e2a8bd09adcc725 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostDepartmentsRequest.java: id: 7be0d4c1adc0 - last_write_checksum: sha1:f5fc45d1a3e4663fd9f3d79f51a227ab4f59471b - pristine_git_object: ce4d543568137da23ec10f3b8790f32f60db6cd9 + last_write_checksum: sha1:afc9406ffd2f63af86d65a0ef60ce12e2b98ae58 + pristine_git_object: a0e46d5bc033701abda5a85508f53423d9053796 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostDepartmentsRequestBuilder.java: id: 447f60da48a1 - last_write_checksum: sha1:8ed916294679d660fae801f22ce3b578a6667f77 - pristine_git_object: 25153f1d90382e8c5258e90716bf93ddd1cfbb5e + last_write_checksum: sha1:ae7ebe3a91def815bb7d15b75cd27912c837d621 + pristine_git_object: 93420266c8bdc85f7ffe96f79c25ce7730e2c04c src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostDepartmentsResponse.java: id: 225fc4649825 last_write_checksum: sha1:3c3086ee79a1d01f5ed273e052ae6304d859f03f @@ -14820,12 +15988,12 @@ trackedFiles: pristine_git_object: 76f323d16ef281a50fa4eeb69546c75619f1c10e ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest.java : id: 9145900a3482 - last_write_checksum: sha1:f90fc4bd352701bbbc369006333f1c82c20d45b1 - pristine_git_object: 09d1a504c7f6a5d69b1110261778ebd7b59a93e9 + last_write_checksum: sha1:82adfc4d2a2793ef74e037e1a9ca4de8bd042ee9 + pristine_git_object: d4bebfdc58d154e041847e4ac13ca60e18739086 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBuilder.java : id: 48fb1cb4083e - last_write_checksum: sha1:6dcea0fd9689472b264bcec532410bbc05e926e1 - pristine_git_object: 209548d8139dcc18f1e90ea25e953111018f0238 + last_write_checksum: sha1:dee3c87bac6debcae141b83b2ff01bbeaea4e38d + pristine_git_object: b476f3f7b98254eb7e74504263d7f3aa06ae5a43 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceResponse.java : id: 74c4d8d8b564 last_write_checksum: sha1:8690ffc30bf1a0df258660e600f43c01ec486814 @@ -14836,12 +16004,12 @@ trackedFiles: pristine_git_object: fc780584e3281c6d825caba5f60b7a71a4e6ea83 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest.java : id: 186b44d08bc7 - last_write_checksum: sha1:2c87206ee03ecce48512a50742a6f185675aa675 - pristine_git_object: 68669ea5c100bbb90775bde1d3d2abf82146d5c3 + last_write_checksum: sha1:cf2da82fb9fba6b6e9c28d3059b88041ebedbe1d + pristine_git_object: a483b4111a161beb27360a40546be4afa215eaa3 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder.java : id: 18839b1ef305 - last_write_checksum: sha1:327da0a6ef0476884979132126e4ad1eabc60d65 - pristine_git_object: dc99794a07c85389cd83a5d054f8368cef7d07ca + last_write_checksum: sha1:bf9ab5c256d890c96ec460a3dc349ac73cd4c004 + pristine_git_object: 15e73870489e435d52f50ff225d5f2327856c532 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceResponse.java : id: d80e3f870b95 last_write_checksum: sha1:e5abd3ab2dee749c79d45417d4e45f027dda1bf4 @@ -14878,6 +16046,26 @@ trackedFiles: id: a2720e4f436d last_write_checksum: sha1:fd9d161dace7dbf51f5ef5f17e461a9a7e8199b4 pristine_git_object: f4b176e24962c4efcdb8b9c69adbd5b4df3d163c + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1BulkReportsHeaderXGustoAPIVersion.java: + id: f991df64272c + last_write_checksum: sha1:ed047d0c188a711e9321724dfa2022fe989ce7c3 + pristine_git_object: a5be4392366674df3762242b70d7048d3e6f4fa9 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1BulkReportsRequest.java: + id: c85c9866fe5b + last_write_checksum: sha1:1c872bf366fd09110627bf1749e3d67bffe180cb + pristine_git_object: 2eb9adfdc82fb40ce67408eaa7560ea35eaaae31 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1BulkReportsRequestBuilder.java: + id: b8f9e212a4c3 + last_write_checksum: sha1:a831ccb4a82ffb6eca8e6d0d06fc0544ef4dd069 + pristine_git_object: b56ffb24de720c967da42e0ca0afaddedc1ff03f + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1BulkReportsResponse.java: + id: 253f9e9f8bd0 + last_write_checksum: sha1:f853d69bca7f37711cbf59d1c57dae7ef9177bba + pristine_git_object: 7ee6194d7498b0682bdcf86309f6cf6cbf54eaf2 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1BulkReportsSecurity.java: + id: 29ae4fed79a9 + last_write_checksum: sha1:67273ff5824d8a11bed00ddb72a751de7a48309e + pristine_git_object: b03188d367685effc01513ade4f18bc16eab03a5 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompaniesAttachmentHeaderXGustoAPIVersion.java: id: ba95334bbd13 last_write_checksum: sha1:4ac2b452f5b042a1a8aaba3279960f39b23eece7 @@ -14942,30 +16130,30 @@ trackedFiles: id: 2bc21554223f last_write_checksum: sha1:d9f404c6470db5fad139129032c36cf3cd0f8f1f pristine_git_object: 1f9c862e674be32eb11b04446dc632e1489e26ad + ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsContractorPayments.java + : id: fa5442e4b94d + last_write_checksum: sha1:b5101f432bd963e36377fbf48d88119b0c0508ac + pristine_git_object: e9a6b36f9c52e0a1de310cf32e703509ff7a534d ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsHeaderXGustoAPIVersion.java : id: 5110328d3e35 last_write_checksum: sha1:ae32502967857beebd97dbb6f037a484b2b25127 pristine_git_object: 13b475e47744b3c8bcf801bb62e1629f99aeef32 - ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments.java - : id: a37b7ab7864b - last_write_checksum: sha1:ed0a264e881f220d78dec77aff4e264cfead1de5 - pristine_git_object: d0834d8956dcf8e99e52d713169ce770e2c95430 + ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPaymentMethod.java + : id: abd5fdc0927e + last_write_checksum: sha1:026bdb4fa89f2d40bab317a55e02463eff14aa09 + pristine_git_object: 57c3163b7a047e9acc801e4137ad7770091bd5a1 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewHeaderXGustoAPIVersion.java : id: 46cfe900c86e last_write_checksum: sha1:45b954ddc4f14c6a58faf8cea91f9ecf9b99f228 pristine_git_object: 7e9f342e122d2994f5c06b6e95b47f02328918c5 - ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewPaymentMethod.java - : id: 9438a931f2f7 - last_write_checksum: sha1:273e3346960aa76d458826f7cfd5edee86295da0 - pristine_git_object: 17790e002e5d52f53d86a550ce070a1cd3ec3a56 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequest.java : id: 85fec82c64ec last_write_checksum: sha1:4c55988c9c0b6ef92cb8400c4af326baf861fd2c pristine_git_object: b89f54b0c56f1f0078390eef327c355d9a36b463 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBody.java : id: 10c97bc2abde - last_write_checksum: sha1:bd35eb7b4278272414a836d7908e913fec55ec74 - pristine_git_object: 5e88fdbf79342a86cc48bb06f0cfdefba822b2c4 + last_write_checksum: sha1:1477c0ff39ca6848f6adba95af6f6ae44b5b4043 + pristine_git_object: e5048b59a188b259e8ae8a0d6cb29127b22a62a5 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBuilder.java : id: b11eb50fdce9 last_write_checksum: sha1:664119246a1c3c191d5e7bc41fbf7f0355f14ace @@ -14980,8 +16168,8 @@ trackedFiles: pristine_git_object: 468ad5db82961ab99feee2b6cfabcc8cf98a815f ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBody.java : id: e07726117236 - last_write_checksum: sha1:9f1fbb4b0bccb9a6797887e746d5260fada58a7c - pristine_git_object: cc8855a94dc85b6aa6b9200fbfdb62652de19112 + last_write_checksum: sha1:7ac920eb2ba3e85b18d4cfeb8c1322d036de3d0a + pristine_git_object: 165a88b547e0b26e4b2a69d59e91ca6acb948a4b ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBuilder.java : id: e3c79a39224d last_write_checksum: sha1:f0bbcfa6e5267b33e0c8d685c89f297717267c8e @@ -15110,6 +16298,18 @@ trackedFiles: id: f02578e007c6 last_write_checksum: sha1:aa5bed77996e5f4e586d7f936cfb8b110a42b81f pristine_git_object: 1ff31adfadcadc0d4877525386d601621f2cedc2 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompaniesCompanyIdPeopleBatchesBatch.java: + id: 5c03d89fbf3e + last_write_checksum: sha1:0fea66f4da0fa7e0cec4a4f3b1565bf1215928c1 + pristine_git_object: f8390c12207e53a3b2af76f009363da8769fb485 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompaniesCompanyIdPeopleBatchesBatchAction.java: + id: fe38622728c1 + last_write_checksum: sha1:8d84ead9d150bf1dc80290223fd1cc227ff2ca04 + pristine_git_object: abe4924655a0adb70033e0ba841079b8af225346 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompaniesCompanyIdPeopleBatchesEntityType.java: + id: e69c518ec718 + last_write_checksum: sha1:b545ecaed2f35e09edfb96be482e6a33a6600152 + pristine_git_object: 72872afdbc558d2da16d17f3496b27cda5e7f931 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompaniesCompanyIdPeopleBatchesHeaderXGustoAPIVersion.java : id: cceb05412cbd last_write_checksum: sha1:fbdd4c1e9615b269b6ff0191c148fd1ab9602f2a @@ -15124,16 +16324,16 @@ trackedFiles: pristine_git_object: 7cd9857435a39334c3b55d9ef4f9f9d4ef74800a src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequest.java: id: f71e684bb790 - last_write_checksum: sha1:d928afd94b01595f6fe54dae037e23be1aee5ffa - pristine_git_object: c70a2fce3ef88c403b855a1099819aed8300ca52 + last_write_checksum: sha1:fbd47fc8acc71359c46a705443490fc227f749de + pristine_git_object: 5b5047cdc594d78971d9291a5158226f912e2291 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequestBody.java: id: e42aab0e9a1f - last_write_checksum: sha1:42328cf143639b23833f0c989074634ff89d9255 - pristine_git_object: 88d7b97fb76aeef36f835572e70217fee1e3e754 + last_write_checksum: sha1:342cd3f200c2cd9a5b827d569bf6b528991b52ed + pristine_git_object: cbb39db9595f959841940fba248ad0debdc90e39 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder.java: id: 48f4bae3e8ea - last_write_checksum: sha1:5682b3c104bbb14900ff8a1a1454f628af42f450 - pristine_git_object: b03e985a4e57b0d0c209adfba5bab661a87a2cb2 + last_write_checksum: sha1:714f33b6ad037e2e4789acef6cc590a09f09a438 + pristine_git_object: 2779a2b86714d45dd3f64a26d70cd3bbf8101296 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompaniesCompanyIdPeopleBatchesResponse.java: id: 53a156bdef35 last_write_checksum: sha1:ee459f04878f0caca36d5baebd79cee93cf27b8f @@ -15208,12 +16408,12 @@ trackedFiles: pristine_git_object: 9cdda33ff81bac01ab0e87e340464a0f16415395 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompaniesCompanyUuidSignatoriesInviteRequest.java: id: 4b2b359c4011 - last_write_checksum: sha1:9d719672b7b70dde094b4de25b7dc9d568add44e - pristine_git_object: dd5acbf08b3c19caccd1ada8e16e04b58e05a868 + last_write_checksum: sha1:27cfaa0a06458300448ad3b821e1da018e480c94 + pristine_git_object: 35c470667e38dbe87d26a88a1875215aab822b42 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder.java : id: 70b619e39c10 - last_write_checksum: sha1:7f2aa808e426ebb9447aade06a3d090dd3aa83aa - pristine_git_object: 5f23229507812cf7af213f21aa09fc627fcb26df + last_write_checksum: sha1:b4a964081322a065e31f98936c9f8fe2fdcf0a06 + pristine_git_object: c23e6150fec74950a04b672f3686a8c6cbfeec87 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompaniesCompanyUuidSignatoriesInviteResponse.java: id: cf023f9294ac last_write_checksum: sha1:c33fa90deb2baaba1987370bec55c7f5c086ba04 @@ -15316,12 +16516,12 @@ trackedFiles: pristine_git_object: 23d47bf37062a8631e45d5e560b11d1c2e91bb5b src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompanySignatoriesRequest.java: id: f3b6dd535a72 - last_write_checksum: sha1:f970fc04c38738600e8556f3881909e334d5c143 - pristine_git_object: 1cee0c9efb9f07824c775e91cb3d2615d9699ff5 + last_write_checksum: sha1:35fd218f571baba23bfe14bbe5e394e4e3d3c786 + pristine_git_object: 4a492e9d3e5bb951a7a804f80b188970c9bae74a src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompanySignatoriesRequestBuilder.java: id: 9bbff3795122 - last_write_checksum: sha1:555da45fd1ee956ebec92be3fd3b151e8219abf9 - pristine_git_object: c59a009d6d0f2e54577354dff82421b3df66c8b8 + last_write_checksum: sha1:6ba9d09d2a75640d559265d1f72b481a59a3e768 + pristine_git_object: ac542be1f653a5d865ae3c9c7a0de3a72ccafca5 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompanySignatoriesResponse.java: id: b662c8415129 last_write_checksum: sha1:9366a97c1935d1d55522ce1c15389ccd124867a8 @@ -15358,22 +16558,38 @@ trackedFiles: id: dfdac4bd0966 last_write_checksum: sha1:3455f35cbf8d557d261001a6d70b70d47a5308ac pristine_git_object: 7f12d7aa8ce8d9e7816f87c0cf22ec645bc99931 + ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.java + : id: 9f109e352e8f + last_write_checksum: sha1:afff803001d30871ba22ee6da8a0fabc6ac93b99 + pristine_git_object: ae3ac762a41bb9fd119ad92e7deb633fcb7dcbc9 + ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsRequest.java + : id: 6cab049060be + last_write_checksum: sha1:afd5b2c37f9942d1db2ccd76c769acd59b2a3018 + pristine_git_object: 79271991c612ec735b9f454289a8aa842a2eb56c + ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder.java + : id: 3c60b1ff8494 + last_write_checksum: sha1:6deec5aa9be4ddf8080bfd85f12f0d89282d87d3 + pristine_git_object: 889ba621921b4805a8bf4c2226e49552c0cd1bc7 + ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsResponse.java + : id: 8747907ef1ec + last_write_checksum: sha1:5bc366a1ad95b211ae3c2575d86279bd6f1a8349 + pristine_git_object: b29a59fd05f6bfaec9100dd249309be4dd0e783c ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1ContractorsContractorUuidRehireHeaderXGustoAPIVersion.java : id: 2d230bb375b8 last_write_checksum: sha1:b98ef6b0079b7db6def837e0a808b994c56ad926 pristine_git_object: 14fda60e7259d474bf38f3dccd7f729526c5e2f8 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1ContractorsContractorUuidRehireRequest.java: id: 21d11ea36d52 - last_write_checksum: sha1:795935fb600c6e2118a7e1c4b7e8e7d1bd8c8947 - pristine_git_object: bdcf4768ab354eb8d051c9e19d56e6af5107f8e2 + last_write_checksum: sha1:3d3050460a348aa1d1d742db6d0ce1e1c187192c + pristine_git_object: 078e1884aedf065f342cac9453e174291001f831 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1ContractorsContractorUuidRehireRequestBody.java: id: e9175011bd8d last_write_checksum: sha1:a3a25c868c62baedbeb1bd7e936b6f2049991f6a pristine_git_object: 611e07828b5918bdf0ea28e44760088c8b219093 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1ContractorsContractorUuidRehireRequestBuilder.java: id: ef7e170ba986 - last_write_checksum: sha1:99c6e058b63f687cf79c90a05ba03989615463d9 - pristine_git_object: fb87cb886153316d9b211b7bf328fbd866eba837 + last_write_checksum: sha1:bd33633db166aeca8e3f446a343b8845faae43df + pristine_git_object: 923f7a650c11deb5d519dd9e7ec4e6f8570ff7b2 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1ContractorsContractorUuidRehireResponse.java: id: a3f6b07c6f4d last_write_checksum: sha1:f6deffaffbc80c8470687ce9cd37b9c5ddeacdce @@ -15384,16 +16600,16 @@ trackedFiles: pristine_git_object: 8f733b213cc90edc43d05903975f22ac63170a43 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1ContractorsContractorUuidTerminationRequest.java: id: 66b948a7b0a8 - last_write_checksum: sha1:bf9ce96187c91b2389d140d5aa8d2d04649f8a35 - pristine_git_object: 4f98c804f0b4952d6f50ebb204c465ef994e4e32 + last_write_checksum: sha1:f294de65e420cd2fb1bb055cf6c2bb0150d9c685 + pristine_git_object: 1462042ed6121ae9ad745614600a65b7f14228b0 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1ContractorsContractorUuidTerminationRequestBody.java: id: b20a03921bbf last_write_checksum: sha1:c583914331959565fa7c839ac9bba9821b687cdb pristine_git_object: f286290a1c8f3c12566305aec85345a330a81d18 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1ContractorsContractorUuidTerminationRequestBuilder.java : id: 0180255c30bd - last_write_checksum: sha1:e808e2041edcbe62ed39414178a49099a8cd15ea - pristine_git_object: 2495dc56a965eadb8b7077fdb331c667f01a4939 + last_write_checksum: sha1:e74c67a95f80e2efee9c01a6e34a331ecfa6b94a + pristine_git_object: b4dc326e44ca4568061159319864e45977ceb3de src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1ContractorsContractorUuidTerminationResponse.java: id: b04ab2fb5d05 last_write_checksum: sha1:d2ffd21d68e7b5120cafa9e3071d60fbeccf3a41 @@ -15452,16 +16668,16 @@ trackedFiles: pristine_git_object: 430ceab0f46f261def8acf1632950e08f4111d55 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1EmployeesEmployeeIdHomeAddressesRequest.java: id: 9771ac38aba8 - last_write_checksum: sha1:fb18ba9c5ce36dd9d565dd141f7212c2b20a222e - pristine_git_object: 54ec0974d7b4526b10f82a80cb27d5cf83e9da75 + last_write_checksum: sha1:8b1da0c6d24dcface240e5b0f2c0eeff341ebb86 + pristine_git_object: 2328418d783518e354e8e64c7fe2e01e4aca4160 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1EmployeesEmployeeIdHomeAddressesRequestBody.java: id: ac96fbf03961 last_write_checksum: sha1:243b5efe3d6291a9444f39ddc7cb76b2aaad5325 pristine_git_object: 35d1780bac2f4decbc77b441d2c7b93429ddfbac src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder.java: id: 74b8408984a9 - last_write_checksum: sha1:0b72c072607a78bd02ff7da0cf362ccf507d62d4 - pristine_git_object: bf7b40a2b7283d2a75c46e3cf8ef08bb6e32d747 + last_write_checksum: sha1:02e67931dabbba1fa80b30364819bf2917276926 + pristine_git_object: 8b6fa191247c23e6c5aea2d7d4841cfe92e7c83d src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1EmployeesEmployeeIdHomeAddressesResponse.java: id: 2dc6d70bdf57 last_write_checksum: sha1:0a551cc7e7a94e679a87cccdd8ddca825c0af2e2 @@ -15472,16 +16688,32 @@ trackedFiles: pristine_git_object: cb206aaccdae72ffbe86ce26ba7436cf40d45cb7 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1EmployeesEmployeeIdJobsRequest.java: id: e08c0d14b4ce - last_write_checksum: sha1:d5dcc684190563b207c7f9dafece98b03934150e - pristine_git_object: b9606f0536235bf8ba75c63a20542f03f88dd4b6 + last_write_checksum: sha1:6bbb90fdabadf944f87cf461be2860e55ab91390 + pristine_git_object: d84e90a65fb6b08b72d77e80e012cf85e4a3b26c src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1EmployeesEmployeeIdJobsRequestBuilder.java: id: 56de8f699103 - last_write_checksum: sha1:a24220ea4fd083b204d018ebab38d896c1f70221 - pristine_git_object: f837a24394c4405bea382b23b310519fef77659d + last_write_checksum: sha1:4d8aa95b4ea03a7ad698c44db25acd5e282090df + pristine_git_object: e4edafa5f26705bd7763530204447d6f445f7575 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1EmployeesEmployeeIdJobsResponse.java: id: 00ace1f4bdbb - last_write_checksum: sha1:3f06839eed54095cd93f8dea187df625e7ba5847 - pristine_git_object: 26883acaa27b37e41cdcf66493be4881435e2020 + last_write_checksum: sha1:1bb10014e7dcd106f3fe684327ede447b2ff03a5 + pristine_git_object: 2c5257e75789fa359ff92d9193f229ce55c61dd1 + ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.java + : id: f3d53581ed58 + last_write_checksum: sha1:b1613ce3c4a39e4781e2306da3e0f18a2f44fb45 + pristine_git_object: 4a5fc8c6567f820386c1fb975befa682558c50e0 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest.java: + id: e2727fa3c2ff + last_write_checksum: sha1:d95ae3fe51c227c55550052427275fd17150d958 + pristine_git_object: 780e6bf213dd0394c7393dd34d386e86f9ad50af + ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java + : id: 44bdc0aa1d01 + last_write_checksum: sha1:eb552dc52b2cfa96caa50e8fc974775ab6c59db4 + pristine_git_object: c547bffe0534d794673c127f603b952a84d32558 + ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java + : id: d125b8a0bdfe + last_write_checksum: sha1:a8b36d3b8ac821e0f6027c91ab10612b4ee5e0fa + pristine_git_object: feba1a3870922699559a04275c14c24d0ae73fe9 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1EmployeesEmployeeIdRecurringReimbursementsHeaderXGustoAPIVersion.java : id: 993f9036eb13 last_write_checksum: sha1:5e32acdea6e7ef79a31fc8b322ffc99398e7c0f0 @@ -15564,16 +16796,16 @@ trackedFiles: pristine_git_object: dd51239e3fc2dbfebe1e50010994e1eb417b7e03 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1EmployeesEmployeeIdWorkAddressesRequest.java: id: 2ac80e4b4fd1 - last_write_checksum: sha1:ea6120905cd9daabcc53d87cc16b669d5aa8d4dc - pristine_git_object: bbc259c05380bce7d608e46f5ac31a6ebb052741 + last_write_checksum: sha1:652e5923974a202baf430b1eb96e67c01ba3006a + pristine_git_object: 818380bc403394b033630b4d34b3f669769d8199 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1EmployeesEmployeeIdWorkAddressesRequestBody.java: id: ec69e91f96b6 last_write_checksum: sha1:c6a369a50e1d365a117bb13ea770f342afaa438f pristine_git_object: 3f8a4208b62b52f670b0600ed37162c1c7cdb0b0 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder.java: id: bd4b85d01c33 - last_write_checksum: sha1:125ad5430101790ef9060c734b3867c6d23cbd42 - pristine_git_object: e4764ec02e1754fd6e11b4927d4ef45e143a1e71 + last_write_checksum: sha1:8418d9b1eafef49a9fa66478efb282e18b12db4e + pristine_git_object: 0da9e22a3e543434c09934e847cc95f5962344f8 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1EmployeesEmployeeIdWorkAddressesResponse.java: id: 73b7d5ecd12a last_write_checksum: sha1:9154758edfaed1e0174c6c7ebb1e5bcdbcab6def @@ -15584,12 +16816,12 @@ trackedFiles: pristine_git_object: 7039b865d0f4e18111fe734e578f9461479e8158 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.java : id: 000983f8e349 - last_write_checksum: sha1:7b607af08307bfbb591496150256b174e94f910c - pristine_git_object: 266800ee8ad4f6b2abc23b7cc17d85f10fa8d3b8 + last_write_checksum: sha1:4a0b677cf79d434e909b82a9ece1b4444799c7b6 + pristine_git_object: 8b93a0591fa4b74044e7b689a299c90910c3c1cc ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder.java : id: c08db0da1977 - last_write_checksum: sha1:3d541d9d257a67a0d8cce53210a22ddd3477f12a - pristine_git_object: 57fd424d36a7d4bbcaa8acf21062f84e9213c2c7 + last_write_checksum: sha1:e8c10234af8b7100dbea5507d45232aa845629bc + pristine_git_object: 684d7d859871253e60f876fe27a09afceec22fcc ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesResponse.java : id: 5f996c38fad8 last_write_checksum: sha1:749b26cd0108a604b46bed0cfa66ea288120678c @@ -15666,6 +16898,30 @@ trackedFiles: id: 66e50a6cb8e5 last_write_checksum: sha1:62e953d5a16789ac771abae08adb9c3f14a662e4 pristine_git_object: 77f323f20adde317f30071253d95a8d8aaa92567 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1PayrollBatchesHeaderXGustoAPIVersion.java: + id: e57916000152 + last_write_checksum: sha1:39b1b95455b8c8d9488cf76f63f7f49ae385bf69 + pristine_git_object: 603f80d9e7630c43aeee986919c41e100672e69c + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1PayrollBatchesRequest.java: + id: 8d6361057009 + last_write_checksum: sha1:d96322787faef13161107d2d69dfe5d9dcf09517 + pristine_git_object: 4c00b3f67d89ae454a75c389c26cf23b7d5a9bce + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1PayrollBatchesRequestBody.java: + id: ef387abe3a29 + last_write_checksum: sha1:bbbcaeda6f0ddd09205823a1f7ecd530926f9f83 + pristine_git_object: 3ccc026e408d247db5d4c159b05a917e66358d15 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1PayrollBatchesRequestBuilder.java: + id: ae7f9afe3ab4 + last_write_checksum: sha1:84c99cc5e0ad26e4361109a35938858a0a535db7 + pristine_git_object: 53377a6588c6450af43a0109a9ea55e2a8f9d125 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1PayrollBatchesResponse.java: + id: f5fa928686ce + last_write_checksum: sha1:022ebac54a45cfa2f2c93a5ac1e9619e292577aa + pristine_git_object: 300def7d75561c0445f7c369c8b69530825af833 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1PayrollBatchesSecurity.java: + id: feef35be5d7b + last_write_checksum: sha1:21217eef9c6c52827f7b1703e143c0898d10ad1e + pristine_git_object: 2cc2ceff4480af3fc591f3c67073ca5c8f1c4e3f src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1PayrollDigestsBatch.java: id: eabf60f0d29c last_write_checksum: sha1:4f4a943beb36ea115f6e1ed2d4f65fcc300229fb @@ -15852,12 +17108,12 @@ trackedFiles: pristine_git_object: 794929846965e75f84d639e0ef084dcf56370b87 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutAddPeopleToDepartmentRequest.java: id: 4dd377ec1bcc - last_write_checksum: sha1:f9a7a7f08ed1ef53e27258ebe80961741cb1dae7 - pristine_git_object: 8e89317de36daa1c4848c3a969157fb28098d16e + last_write_checksum: sha1:16e7f71a5e1f597b061d1d65e53394b868802e5b + pristine_git_object: 2b25da6a9dbdb05157526b358763ea10b0ea77e7 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutAddPeopleToDepartmentRequestBuilder.java: id: 0402378c47ef - last_write_checksum: sha1:e7b4e42951d1c0c90729386d79609000f1e60f17 - pristine_git_object: 395b41f37b2e74ec386c4877d055980376e38f4f + last_write_checksum: sha1:4200375ab218c317f00df97c7a8e28fd1446af0c + pristine_git_object: 943e18a98fba47624f12a481386ecf3712382ebd src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutAddPeopleToDepartmentResponse.java: id: 1e177c46e5b2 last_write_checksum: sha1:2ab22f39df9e26ab3800bfc22418766ca1c28c93 @@ -15880,12 +17136,12 @@ trackedFiles: pristine_git_object: 3b21626875245142e404d380ca3a6915f7b36e83 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutDepartmentsRequest.java: id: 1a5c35413e7c - last_write_checksum: sha1:7eb2e5d3c719bacbbafa07293dc66867aa6ee975 - pristine_git_object: fdbd4b8d354059812c81fd9aa801651d680959b0 + last_write_checksum: sha1:1846e30c9c6b09a173277dff71e7dbe878395bf7 + pristine_git_object: c3c264d2fead5d2c0aebb7c914fae4c5cf09d940 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutDepartmentsRequestBuilder.java: id: 54d5a26b72bb - last_write_checksum: sha1:c106e1b6a8085bd227de068db496b8614dabe5f8 - pristine_git_object: 19e7068b6d9ce151f18f2329948b89998ecdb04c + last_write_checksum: sha1:a01bb29fa2cc607d2e0da86248148f806dd1ee18 + pristine_git_object: f4dfe40c8ffb122ace0d76c0cd2c996de14f82af src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutDepartmentsResponse.java: id: a94d4c710d51 last_write_checksum: sha1:9aab1a8e54020fa504f96172ff5cbe27b17ee26d @@ -15896,12 +17152,12 @@ trackedFiles: pristine_git_object: d4b5b93e82be06f181d5e02a08135c0fa186e3dc src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutRemovePeopleFromDepartmentRequest.java: id: 2ccf6eb575a7 - last_write_checksum: sha1:5f12d55dca349ebab4b2c386a90c63cada53f279 - pristine_git_object: 356eb719d2279add5b5649b236f51cda8e779a2e + last_write_checksum: sha1:5cc8cc657cc4e72b5ad379c0c659f7fb6f868277 + pristine_git_object: 3f1eaad048f84c82d71cf5490762505cb89cff72 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutRemovePeopleFromDepartmentRequestBuilder.java: id: 14ead770b06e - last_write_checksum: sha1:33cc8b359912d3bad30d748a59f1dac346976ee2 - pristine_git_object: ae443f9357e67b3574d3a83c5a601aad21413d71 + last_write_checksum: sha1:0376bfbee870cb34d730cc63016bf7d0cc2d5284 + pristine_git_object: d6c79929a261bc866f318c918f7f9306fd606f85 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutRemovePeopleFromDepartmentResponse.java: id: ddc29bb94b13 last_write_checksum: sha1:120054dfaf11c31baa960bb7d58032a7da371029 @@ -15948,12 +17204,12 @@ trackedFiles: pristine_git_object: 72d54eaf758513596cb216e83b83f4bea552e92a src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1CompaniesCompanyIdFederalTaxDetailsRequest.java: id: b8b56d124083 - last_write_checksum: sha1:8615d8557b678e61095e982e5298d8248a59c258 - pristine_git_object: 1f51bd2895a7a9a71b5a0dbc5faac622905f7223 + last_write_checksum: sha1:f69f6e2dc94b0d0aac9015da3babc5979fef49d3 + pristine_git_object: 53495a489f2f5ae642a35ba864b6482c01f4dc97 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder.java: id: 694ff0fa41c2 - last_write_checksum: sha1:864ede2db23811198c516e91e89f11e84102d253 - pristine_git_object: 63bf532834db8f5f9989123bcf37badf9cb48f74 + last_write_checksum: sha1:852dc9aa58440aaa2e77056d4213f312d97487da + pristine_git_object: 302f5949d890c8446753200c14e653408e8a9eb9 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1CompaniesCompanyIdFederalTaxDetailsResponse.java: id: 2f01a85205b8 last_write_checksum: sha1:ae6830b4899cba18c8cfe4141e2a05b9042f9a35 @@ -16004,8 +17260,8 @@ trackedFiles: pristine_git_object: cac2c6d63cc649189fb49383157e613b628599bf ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBody.java : id: 03b9adbe94b0 - last_write_checksum: sha1:9045a32fa080199e4daa3ecfb8155a16464b3566 - pristine_git_object: 614e2cde077c5b419e3de6ee21cedede18fbee07 + last_write_checksum: sha1:9fd05bc64c200051a54e28bb2cd1f3b5f6abadc8 + pristine_git_object: d41c9125e6be31985e038ea2dd40eecae3cdda69 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBuilder.java : id: 106e93ee286a last_write_checksum: sha1:2b6aedf7e2a40960d7741d60a802885128e22401 @@ -16046,10 +17302,6 @@ trackedFiles: id: 93336309bf7b last_write_checksum: sha1:76f8cbe572e994c9cfe8c86404b92234d8b22998 pristine_git_object: cfa011f9377afda984b3435020f1a2411ce86a0d - src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1CompaniesCompanyUuidHolidayPayPolicyAddEmployees.java: - id: 93c973096487 - last_write_checksum: sha1:d9394739f434837fe01b639038737b00b7c394e4 - pristine_git_object: a0b094e7b92d83aecdd92d78c41c2ebafa4dcd5b ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1CompaniesCompanyUuidHolidayPayPolicyAddHeaderXGustoAPIVersion.java : id: 96a507fe37b1 last_write_checksum: sha1:6d26bb22b1bffae63cc402636efe5085c72fce19 @@ -16060,8 +17312,8 @@ trackedFiles: pristine_git_object: dcacdfd3ca26d41ee4391262a855659419a4f2ed src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1CompaniesCompanyUuidHolidayPayPolicyAddRequestBody.java: id: 4707c48d69ae - last_write_checksum: sha1:8231010c269bb0752a0b4557f609673641e1fe7d - pristine_git_object: 4baa67bbe6f99411a33026aab09714291a64da85 + last_write_checksum: sha1:f908b016ad094bf4bd6748b96fdda251fb61b6ce + pristine_git_object: 89b912b2520f402d86a460e9bd505f06e8a31423 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1CompaniesCompanyUuidHolidayPayPolicyAddRequestBuilder.java : id: aa5906d85570 last_write_checksum: sha1:2044febdb3d45a8901078b143ed51fa9617fc4c8 @@ -16120,12 +17372,12 @@ trackedFiles: pristine_git_object: bba0aebeab37d7aaf6b02f513596d24d5607f858 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.java : id: a0dc4705fa27 - last_write_checksum: sha1:a87c00baa9dff6137f5475c57898eacdeb250db2 - pristine_git_object: 8bc1c55fe20e5193df9eb0d4e3fef31c89eb049c + last_write_checksum: sha1:1f7ad8ffb8fc5ccf90e13800f88f03bda65df526 + pristine_git_object: 6abdd276aa98ef3c8dcf664c4dda90ad9bc47d7d ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder.java : id: 49a9cd9861db - last_write_checksum: sha1:867ccd56455b260f106e9578b08a207d24611570 - pristine_git_object: 6321bb557827615a1f4e9a932f8c3c38e767edbf + last_write_checksum: sha1:c684bdceb9b9d7d91ab4068021ba2d6a96fedfa1 + pristine_git_object: 0cce389bb2befa675619eab32a0a9d9a9175e5bb ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidResponse.java : id: 5f084cd2ee67 last_write_checksum: sha1:31c8cd91d00661676e1504a1df6344d5511c6058 @@ -16136,16 +17388,16 @@ trackedFiles: pristine_git_object: a7cd54124cae3ed518b2efb22f83b6baf43d59ff src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1CompaniesCompanyUuidTaxRequirementsStateRequest.java: id: 27c70fe4c796 - last_write_checksum: sha1:c4c2bd5239365a8619a3e1949d63179633257134 - pristine_git_object: 28eb14b79a738e4a83a7f32333167fbc67a8e93b + last_write_checksum: sha1:45f314ec4cc15009f56fa013c25d8abf506b37a7 + pristine_git_object: 39de249eb8ca49ee6c4b1700855397796471a34f ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody.java : id: f0bc4fe02c15 last_write_checksum: sha1:b771932e1bcbd238425c3a9604d62e2de9048257 pristine_git_object: 8899c28904919bc039efe424e3f7e27d45f80aa7 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder.java : id: 69ee6e031365 - last_write_checksum: sha1:1b6019dce98c29b33d7f7b5d1f98c35af47e9a45 - pristine_git_object: 95641f284d21101b20c1341efe23d949b477032d + last_write_checksum: sha1:d0570e68cfcbbb9554663c8fade462bde00cde78 + pristine_git_object: 038bfdd2c143807533209314170cc65f1114054d src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1CompaniesCompanyUuidTaxRequirementsStateResponse.java: id: 8a6c4df678cc last_write_checksum: sha1:b785b7c71a7b1a88aafabcb2698ce059f6c37bfd @@ -16156,16 +17408,16 @@ trackedFiles: pristine_git_object: bac8cf0a019dd935d7b662e96aa5d2d625f657b6 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1CompaniesRequest.java: id: 29609e48e4db - last_write_checksum: sha1:7ccb5a158442d351f3a34cbc45a5b1d896dd469b - pristine_git_object: d1727c9744b56f201457798f0467f8d9f195cb6a + last_write_checksum: sha1:03183e2699586a7a3de27ae7bba8cfc644596320 + pristine_git_object: d34b888b5ec8167d5bcaf2c41d574755a29539db src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1CompaniesRequestBody.java: id: 1032435410df last_write_checksum: sha1:5ed3bfbeb0fb68d24d52fc1152074b17be2ea195 pristine_git_object: 540470561dcaf0a320e0fc2f497aa1d68bcda99d src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1CompaniesRequestBuilder.java: id: 589437952a4f - last_write_checksum: sha1:32449451f9e388041cc49b5d833e42c80315016d - pristine_git_object: 148843574c1b9695076b5ef27277c1140160ba42 + last_write_checksum: sha1:5d61c688a2e85f2d1fdac4a4185d260a0a16acb4 + pristine_git_object: 5ffd980f9c25384597b1367a049e4f39be328340 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1CompaniesResponse.java: id: 9351ff9f8142 last_write_checksum: sha1:70e12b5093adfbbf6c30858a08edde3c93624071 @@ -16244,12 +17496,12 @@ trackedFiles: pristine_git_object: b29290a3817eb078a25b0f7b394ed5b3c12e69f3 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1CompanyIndustryRequest.java: id: 8770d7c07db6 - last_write_checksum: sha1:4923b39a6befca9ca01fc47e3d7fc6ff83576043 - pristine_git_object: 02a45bf62cf3c6ce8c88bf9af29924fe99384605 + last_write_checksum: sha1:7c287a3fcdcc25e6780b63c0c0479cee32adbc5a + pristine_git_object: c7f8258a991745082d2459d78dbb182ff5409964 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1CompanyIndustryRequestBuilder.java: id: af43fb2ffc56 - last_write_checksum: sha1:4e8408a10c6f1ab7d7236017a2dacab19b2147fd - pristine_git_object: aec6034526198034001c725098218ecb7ef43f27 + last_write_checksum: sha1:38c27ce723122bbf7d932aad2e37b408efa9aeaa + pristine_git_object: 2b6edc899fd24d2dc4d59ef72fc4130264a1dcbd src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1CompanyIndustryResponse.java: id: 2344185308b4 last_write_checksum: sha1:81d2d22ae4fe24a27cb905014ef12bd1a9b03126 @@ -16312,12 +17564,12 @@ trackedFiles: pristine_git_object: f88bbdfcd1a60377e368a30ce8af159cf837a3ec ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest.java : id: dfd67309bf26 - last_write_checksum: sha1:b3ef08cf55bc262a01535dc481cc1ff9d2f14aa3 - pristine_git_object: eb72633d2ba2d7b2bff65ac62cc53557f92e7cf9 + last_write_checksum: sha1:1ea51ccd240d8bf854525e9127ac5851360f3a3f + pristine_git_object: c7f6c4b6ae825e62d2ac275aa619b9105cef6691 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequestBuilder.java : id: 74c3b1a8aa99 - last_write_checksum: sha1:1dee214c6a85edb6b8d3ba5480164f7c0faa8c97 - pristine_git_object: b108eae23f1683129b74c500400383a7fd27b812 + last_write_checksum: sha1:bc32e7c577650382491e8e25668ae8c97d9d7896 + pristine_git_object: 4c6b9e17d23ea9dbb8869dacd129515eb1917ae3 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundResponse.java : id: a33ac4c41ee0 last_write_checksum: sha1:3dcd87a1abf64db752d081bff597552a9f114447 @@ -16332,8 +17584,8 @@ trackedFiles: pristine_git_object: 9a1656169eb1d75ac69a5be47b58965fafd31849 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1ContractorsContractorIdPaymentMethodRequestBody.java: id: 00dde6422a70 - last_write_checksum: sha1:b113b0a4f3aa77f7dd9248a0e5dfdcd22dfc24c8 - pristine_git_object: 36ca779abaa4d7eaf04506b5ebbec9b00be45546 + last_write_checksum: sha1:762104a117bfb736ac2c0b5b2205de7650f4cdcb + pristine_git_object: 27e20cdb4435a2b118a159e4c0a79f659f4f434c src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1ContractorsContractorIdPaymentMethodRequestBuilder.java: id: c7211c28e589 last_write_checksum: sha1:df1abd2a58c91c6dcdbe0d9cdbf817092bccaff4 @@ -16342,10 +17594,6 @@ trackedFiles: id: 1775799ea87e last_write_checksum: sha1:4e97d23ab8044721766605dd936e734729de5d7c pristine_git_object: a8402f386ad47b59d3bb519741f9298932e13183 - src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1ContractorsContractorIdPaymentMethodType.java: - id: 0049a7255a78 - last_write_checksum: sha1:f90e4cca1ed42815704da0bceebedb2ae724ca72 - pristine_git_object: 90b9832c5d665fef444ff069c8574e199a2d3ea6 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1ContractorsContractorUuidAddressHeaderXGustoAPIVersion.java : id: 8a7b31643718 last_write_checksum: sha1:2af0850a2d21be5a2d5f01b5af63591711a05637 @@ -16560,8 +17808,8 @@ trackedFiles: pristine_git_object: c778b5095e42e1223556d63e1bbfeb7de6a90283 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1EmployeesEmployeeIdPaymentMethodRequestBody.java: id: 0fbee9c55a9b - last_write_checksum: sha1:def65b62896c23057a7a38b3fe44b3c154d7b252 - pristine_git_object: 16772431c401579d52a6d325aff29f3e7de1c547 + last_write_checksum: sha1:59157412e016e385bd053a06582934c9e33e6fe6 + pristine_git_object: 49145804103c5aa0239bfc60c383d949f6562dfc src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1EmployeesEmployeeIdPaymentMethodRequestBuilder.java: id: 890e1ede2645 last_write_checksum: sha1:e804d836ed5e798b5567ad82d6ab57055ada1c19 @@ -16570,6 +17818,10 @@ trackedFiles: id: 0f02531757fb last_write_checksum: sha1:5aafe7f990ad59372094acf30bf9d0af187a70cc pristine_git_object: ffd02a0a33f78a0c4abaeed0ac9898ee6a8accdc + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1EmployeesEmployeeIdPaymentMethodType.java: + id: 1a4810ce4c10 + last_write_checksum: sha1:3dafaebaf5004bda912e9103cd7053640c51001c + pristine_git_object: 0a3a6f3f306a34dd2d8d5ea251cffb831fb86179 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion.java: id: 78b9c651c5fb last_write_checksum: sha1:58163b9d20da8dd7d8d52d3e72904f6916dbc7be @@ -16700,16 +17952,16 @@ trackedFiles: pristine_git_object: e0f7e7042c75ef9d801144ae5f0b53530cb02f51 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1JobsJobIdRequest.java: id: fda71494d9e7 - last_write_checksum: sha1:df024bb1d08ab48a2cf88488ce4a4978d920fd5f - pristine_git_object: 72c9c2ad739485f05fe899ca06acf5518d33b186 + last_write_checksum: sha1:1cc5c91c3ff091b35843b77522e34ef5b8aaa10e + pristine_git_object: 38d527c2207848e7e648f6e8cd444811b633a4ac src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1JobsJobIdRequestBuilder.java: id: 664013b09206 - last_write_checksum: sha1:9d45fd352c7fa816b165f2c4cccd5bfe4119be58 - pristine_git_object: d4b4df046398b6df11268fa18f360d3d662362c0 + last_write_checksum: sha1:4ed544f4ffdeec3c20c46a223b1e1cd30a55ae65 + pristine_git_object: 474f7d44238b5834de2d2b927927eb8f07d7b139 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1JobsJobIdResponse.java: id: 24bfd091bbbe - last_write_checksum: sha1:0ab431a28708b9f4edcd96b933c790b35de28cca - pristine_git_object: 061c496e56c45429c915f65d218f62326422ca59 + last_write_checksum: sha1:15db92fb6a7acefc18a432409f40fab308bd8e07 + pristine_git_object: 85fb0e237d167ba863dc7bacc0d9451f068c10eb src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1LocationsLocationIdHeaderXGustoAPIVersion.java: id: c7c175f95f74 last_write_checksum: sha1:f7dbc653b490cdafaa788ff71e766206661048a4 @@ -16730,18 +17982,38 @@ trackedFiles: id: bb1d594184dd last_write_checksum: sha1:c5c71068d4ca3c47c1790832fba2d99ee8649212 pristine_git_object: 9ebb8448f05e32da8b5618f354daae3e70f8e6c2 + ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion.java + : id: 57f2cd4ad189 + last_write_checksum: sha1:68013c489cea3df8c0869414bf180b108f230193 + pristine_git_object: 5b036e6284db5226832955d5450e3fee71cd5d92 + ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest.java + : id: 7caa743d54b2 + last_write_checksum: sha1:7c23f22222682b6cfc52b6fd21367648cf2f53fe + pristine_git_object: 5150726926b19eec818bc17f17027958e08cea83 + ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder.java + : id: b59d61ea0c4b + last_write_checksum: sha1:6943117a2bb971d41985c5d415cd7c6d249e25d8 + pristine_git_object: a9b4c647b69ffaa8e55ed82e7eae47a1526ed50a + ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse.java + : id: 6abfd4dc0908 + last_write_checksum: sha1:f455da17292ac6b75a8b7695c63177cfe8d3603a + pristine_git_object: 2c0a6ffce49e99bed2461bd3bc385f342781c1dd + ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity.java + : id: e9968c0df598 + last_write_checksum: sha1:ac2684ecca2dd829da59fbab194ea9abe3c75245 + pristine_git_object: 28c70c92ef6c8d4b1276b48d569595b139551683 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1PartnerManagedCompaniesCompanyUuidMigrateHeaderXGustoAPIVersion.java : id: 32c6577c3cf8 last_write_checksum: sha1:c0f5fcf9587b997e7a6a6dd005f6457a6b24ef35 pristine_git_object: 7c7ebb29e6b99f3eed80f8715dd167da9a3fa6a4 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest.java: id: 46f0620ef4bf - last_write_checksum: sha1:74575d64872249eb1b8ef8a50a3279f595a060be - pristine_git_object: 9bf0546289347262ea70fbe0d07189ee5a916c31 + last_write_checksum: sha1:86bccd4df0415f5b365f05ba9c61cb1950343673 + pristine_git_object: 08d4b409fa67e4ddd9aa625321f81fc1e6ba2db0 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder.java : id: 132e60003080 - last_write_checksum: sha1:c76011991c6cfa1220c910a928de24ab5827d3bf - pristine_git_object: 6f376ad48df2d7120f96226673b48b90d5b49dfd + last_write_checksum: sha1:528646a1b373639dd4eb1d7c1b7752221793a290 + pristine_git_object: e2f5dd046ca25628abb79beaad922da7de9a47d4 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1PartnerManagedCompaniesCompanyUuidMigrateResponse.java: id: d61688bbb9d2 last_write_checksum: sha1:10d3a1a4ee194dbc6a94b15bfa724428b6a68b26 @@ -16846,6 +18118,10 @@ trackedFiles: id: 53d2b6c75a86 last_write_checksum: sha1:5cdee7961cd79986a9b87199fb596314d798c0ba pristine_git_object: a757137ee392f7ed7f2f5338744a412482bdf712 + ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesEmployees.java + : id: 763714e804bd + last_write_checksum: sha1:0047e84036217e332e36614574d530a65c76b99b + pristine_git_object: 5146f6ef59d6556e7f0392f21f048cf97d857e70 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesHeaderXGustoAPIVersion.java : id: 62e6e33876da last_write_checksum: sha1:e4559b995122830a28545bb6a80c36676b247913 @@ -16856,8 +18132,8 @@ trackedFiles: pristine_git_object: 1aa74de8033757f3c14cdf8e8adfd51268f50b21 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesRequestBody.java : id: 74df80ac68be - last_write_checksum: sha1:e3043b9a65aee142303f268530aca715ce45b5a6 - pristine_git_object: d370f2d4bba24fbcda51ef5431bf5722f90c6d8c + last_write_checksum: sha1:e3d375c1b0156c216863a91c4b43c09af8b532bd + pristine_git_object: 0e1fb12d9f0102cb4681324768236ef00c7a327a ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesRequestBuilder.java : id: bf4096f2b0bb last_write_checksum: sha1:0a66df6254f941fdf0744d1bce5ac5b2a8208bae @@ -16996,16 +18272,16 @@ trackedFiles: pristine_git_object: 8c115200f3a4ecc43935b4eece10456fd0123aef src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1VerifyWebhookSubscriptionUuidRequest.java: id: b4b5f13ee9a3 - last_write_checksum: sha1:bc7c79aa87d0d7a9ada5680a25ca608bbd035ff7 - pristine_git_object: e9c279c5a611d5a9e608fad70e12886264937963 + last_write_checksum: sha1:7f94cf6d8e361f7071e45ecf0c4bb46e1d3cfff1 + pristine_git_object: 8cf890aaa12538b9c12baac37a450a1b96191ec3 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1VerifyWebhookSubscriptionUuidRequestBody.java: id: d1cdc8e04f77 last_write_checksum: sha1:119a4f6c7f40d3a6f9fef64acc4c4c166ebc1296 pristine_git_object: f9242d52d81544a0c5f4f2c4a796e5a2eb09eaed src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1VerifyWebhookSubscriptionUuidRequestBuilder.java: id: e870b3c4846c - last_write_checksum: sha1:51494391cb89ec92acd0235bb61567f0cd25f637 - pristine_git_object: ce4fccd3c84a58fdfbae88b9491f89f2b9370214 + last_write_checksum: sha1:0c368bbf8e9f76d504df2eee2c39a34f2d28c656 + pristine_git_object: 5277fac6bc42e115946f9c51fcc52404e493e6d7 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1VerifyWebhookSubscriptionUuidResponse.java: id: "043008119815" last_write_checksum: sha1:33ecc09954818bc497d56525682fd64f96df08e9 @@ -17020,16 +18296,16 @@ trackedFiles: pristine_git_object: ceb629b0f5dd6779d256fa2160f972ba9f26a3fe src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1WebhookSubscriptionUuidRequest.java: id: a0423212a929 - last_write_checksum: sha1:e7ead5c3a03d6652aeae592d76feb9051f9f9923 - pristine_git_object: 876442f4a3814ef3f4b37af08421b2cc457e68cc + last_write_checksum: sha1:57e04647d911b85878b88da8b40786ccbb41bd91 + pristine_git_object: 9cbce8ad2d729fb07ec4ed40cb23e4b52b0c1c22 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1WebhookSubscriptionUuidRequestBody.java: id: be8f9fffab12 last_write_checksum: sha1:73f4cb246eed9f5fcc988aee1dcdb87730dbde50 pristine_git_object: a117ff6113e6473eb291f9a45a2904ccbcb259c7 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1WebhookSubscriptionUuidRequestBuilder.java: id: 5c2d8cf70406 - last_write_checksum: sha1:1ac794090d0283e7d828b31f366e066aa5b5eaa9 - pristine_git_object: 0187abceb66a5bbe6b5e89023b520c6dee30868e + last_write_checksum: sha1:4856fd996f1d26bd98ad8929161fbff48c456b22 + pristine_git_object: 9aea2d14f2cf324bc693b94811faad8450789155 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1WebhookSubscriptionUuidResponse.java: id: c318505bf6c3 last_write_checksum: sha1:f5d2fc536f250c8a4cc69493dbb0f57a6e7e3727 @@ -17040,24 +18316,24 @@ trackedFiles: pristine_git_object: dfa50e277074751c8116c8c5a870571d36d6a6a0 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1WebhookSubscriptionUuidSubscriptionTypes.java: id: 2eb8c35885fa - last_write_checksum: sha1:1302f758f47fb15969a5fe4656873551d7cc7b0d - pristine_git_object: 5a00ce74fc872f5fa44f77bf9497526bf1d913ac + last_write_checksum: sha1:8de070937574a58f291afadc8c0e848dc375970a + pristine_git_object: 4d2311015824c504fc4333b0427bf0015e7b6e24 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1WorkAddressesWorkAddressUuidHeaderXGustoAPIVersion.java: id: 89d982d001f6 last_write_checksum: sha1:c673d3c4ec8c5252e548f483b215ee931b5f7e12 pristine_git_object: deb691d385f37429ac8ea86ea7cab7b2cc62f61b src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1WorkAddressesWorkAddressUuidRequest.java: id: d2863c1bb0de - last_write_checksum: sha1:2186da397719a95f19a82b5cdad9d0999cd2540d - pristine_git_object: bd9c0f3eba7b4d6828d0cae6f8b2ea7adfb4c8ee + last_write_checksum: sha1:e353e031785af57a6cf8bed0005a47364d26dce0 + pristine_git_object: c54bf9ab2ab347db22fa3662f0f3e4d0a17e68b0 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1WorkAddressesWorkAddressUuidRequestBody.java: id: 5930fec2c8cf last_write_checksum: sha1:acdc560466a3ecfb1583c167f05987744af86bf4 pristine_git_object: 4f3b7d019a0a8335e6839c787242a4b59aff1676 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1WorkAddressesWorkAddressUuidRequestBuilder.java: id: b5bdaff70523 - last_write_checksum: sha1:342397eaa6eb7a907d8e26b829ad50c496f8e043 - pristine_git_object: a4aff9310062278f104de8fb22e1e355103811fb + last_write_checksum: sha1:c0fe6abef4867dae59ba4324fec7379ec3643574 + pristine_git_object: 2ce57f0b79faa10560bc741aff20fb9ff2528936 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1WorkAddressesWorkAddressUuidResponse.java: id: 7168cd18c021 last_write_checksum: sha1:58cc30d678f6aaca97c1841f722411f9e28c435e @@ -17068,20 +18344,20 @@ trackedFiles: pristine_git_object: 8dc32f9ecefd77cbad91596943bc9a7cbaf477b4 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutWireInRequestsWireInRequestUuidRequest.java: id: 23989d39aa21 - last_write_checksum: sha1:02e61dfa39db088e849cb4b0467419754ac66015 - pristine_git_object: 6a58207a043a89e05f177318448c03d148c35420 + last_write_checksum: sha1:dfcfb00703ed34d1ea6437e25424d4c4f602cab7 + pristine_git_object: c53aa4a06abb643e8000a42f38b96ebba4289e8e src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutWireInRequestsWireInRequestUuidRequestBuilder.java: id: 35059bfb8798 - last_write_checksum: sha1:994ba941c1df18290f4a3cbd41dcb18916929eb7 - pristine_git_object: 59cf723f769702c0f9b213d41a7a30d46fac18cf + last_write_checksum: sha1:622058159efcd2742094cbcfbf79789c960b9895 + pristine_git_object: c414df923655b6a1dea9fff37f4662fc9acd915c src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutWireInRequestsWireInRequestUuidResponse.java: id: c1830797025d last_write_checksum: sha1:97927a19798f5c9aeb4fb90646427326f3beab2d pristine_git_object: 1288ba4b7d47291c12e943cd2e87ddd1381d138b src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/QueryParamInclude.java: id: 3a81739219a0 - last_write_checksum: sha1:4c62f6408e0ed0c2da70d129505325e25281d1ae - pristine_git_object: c1a07fc2a8a82378a89176e325d1c7be014be757 + last_write_checksum: sha1:76211b954524e4a108b103c26f988cb5389270de + pristine_git_object: 887182aa38935427fe1f6cc91f1b46c5d9179916 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/QueryParamPayrollTypes.java: id: 1cb45083d2b7 last_write_checksum: sha1:0054ea42ad5ad3727a3eb48b0a6058f540b96ed5 @@ -17168,8 +18444,8 @@ trackedFiles: pristine_git_object: c9f8d14c148e48e1bdd01da4ef55976e7b35bff0 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/SubscriptionTypes.java: id: 03f821dca7ef - last_write_checksum: sha1:c34c4e7ecf955ccc60eff89e22685fa3bfa18bf2 - pristine_git_object: b1a36e8dac6c0a9bf96e263acee162a577867153 + last_write_checksum: sha1:1b87745c41701b3f9564e3dceaf3831efe0796f5 + pristine_git_object: 0d48e83ef1a09678218d2050dea7e154d73452cf src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/SystemAccessTokenRequest.java: id: b7a269770fc8 last_write_checksum: sha1:73eb188c7aa07a8b903f2e19ddfe5deba4d4f1cd @@ -17184,8 +18460,8 @@ trackedFiles: pristine_git_object: b6f41b7249136e419be2cc710bdd675d10a8ab6c src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/Type.java: id: bfca3d80ceb2 - last_write_checksum: sha1:93bff75d053599a46d912926cb606c8a5a7a1909 - pristine_git_object: 31b98f652ce554cb97ab9208964d88c73a42ebea + last_write_checksum: sha1:d1f800b24c60c09b42af07d5422a1ab3115b6278 + pristine_git_object: 48923486eea03840769e8a2ed0e907ddd1be69a4 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/VeteransDay.java: id: dda4abdc49cc last_write_checksum: sha1:ed3f7527f3921152a2241be591416dceb8671be9 @@ -17246,6 +18522,10 @@ trackedFiles: : id: d951695c2521 last_write_checksum: sha1:92804926094f4090167aa492e1ac90a584746f3d pristine_git_object: f8f6c6d00015ab051226ba75d63d0cbe0badc7d6 + ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse.java + : id: 9346d4a89dae + last_write_checksum: sha1:6292b3b55116037deb456c8e8f86b5919a53d044 + pristine_git_object: 2a258672229b22ffb9fd796ba71e63854aebd0b3 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/DeleteV1ContractorsContractorUuidRehireResponse.java: id: 1a26a79816ef last_write_checksum: sha1:921fbca7423cb15276ae1007da660760fe21e2ef @@ -17274,6 +18554,10 @@ trackedFiles: : id: f50141695ffe last_write_checksum: sha1:23778f4c51d2be4d444261b761216cc1516cbf77 pristine_git_object: dd560ea5e1008c0024d8028d6ab168e824df6034 + ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java + : id: 7dcba7f8b057 + last_write_checksum: sha1:efbd87a04be10cfafe9256ad4aa6d2056939635a + pristine_git_object: 0623552cc92d8b6b24cf0fd20e0875fab0ff198e src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/DeleteV1EmployeesEmployeeIdRehireResponse.java: id: 702b4433e4a4 last_write_checksum: sha1:dbb5eb6d7a4f8d928ce2f51faac70232dd49a8f4 @@ -17374,6 +18658,18 @@ trackedFiles: id: 9caed4392823 last_write_checksum: sha1:4615e4fab635a09b87d3a06b52161a62aba20fdb pristine_git_object: 3ddf3d0ddd556f5c0d82709d3f8a02392613574d + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetReverseWireTransactionsResponse.java: + id: bf0d1205fad4 + last_write_checksum: sha1:d2ca6dd22fd94fee577c8377ca415cb9cb90af1b + pristine_git_object: 24356aa98c4eb2a834fded834993453e2c4ad505 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetTaxPaymentResponse.java: + id: 7579804b655d + last_write_checksum: sha1:9d058302666d12561ed6fd62b90f7b9d0bc01523 + pristine_git_object: 5ff33257682313cbfc4304c04c2c341f671725a9 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetTaxPaymentsResponse.java: + id: 7c02ca3aac3f + last_write_checksum: sha1:13ca934636b5c728d23fa19be728bd360797bc59 + pristine_git_object: e9a1a5c6d80e4a22dba1f71e8ce78032d8e3882a src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1BenefitsBenefitIdResponse.java: id: 21ed84fb8aa6 last_write_checksum: sha1:e16023bc7c7aac87c3b87517a3f3a8b8b53086b9 @@ -17388,8 +18684,12 @@ trackedFiles: pristine_git_object: 52015baf9992ce5a7318e450939c394524e72ced src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1BenefitsResponse.java: id: 65ec8e0f6cad - last_write_checksum: sha1:202bf6376cab92b0a62d1d8cd65d9b7d3981cef5 - pristine_git_object: a5f6397900ea8aa5060b4fe5fd366a937bc1c03f + last_write_checksum: sha1:ab0c3a4cb3b645cd678dc59a830adb431209e0c7 + pristine_git_object: 1c943c8da5cff8bfa0f84d780e5461bf797f1dc5 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1BulkReportsRequestUuidResponse.java: + id: 19d5fdcf7d51 + last_write_checksum: sha1:ecb55ace23b424d636ea7bca57a13bfd5f8c8e8c + pristine_git_object: 06560c35d06fa524259b15f462d6ec2008a359d2 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1CompaniesAttachmentResponse.java: id: ea0b8f0f8559 last_write_checksum: sha1:fae5d5ca6c2a8ead45a9285a9107bfd0bdfdc4cb @@ -17634,6 +18934,10 @@ trackedFiles: : id: 8a55b4f4293c last_write_checksum: sha1:20aa7c6d44139b71d2081a8234a07b132325f1b3 pristine_git_object: 7985e22b67613b40fb03d19b3dc24bfbd012793c + ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1ContractorsContractorUuidMemberPortalInvitationsResponse.java + : id: c3f728f15060 + last_write_checksum: sha1:3c21c24e6c540275e90759818e1bcda7da134b4a + pristine_git_object: b7c5cf3a54aa62873ee18d041f9ade57d93e1b79 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1ContractorsContractorUuidOnboardingStatusResponse.java : id: 7c7e3de2737b last_write_checksum: sha1:9bd89a34e606b146bf84b32f4d84e02c923c73fa @@ -17642,6 +18946,10 @@ trackedFiles: : id: 03c56ca9fbb4 last_write_checksum: sha1:fd97e79b52d5be7839e9c171becff102f7ab73e1 pristine_git_object: b6f081196ee9797676d520783d48426128d55278 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1ContractorsContractorUuidPaymentsResponse.java: + id: 94e689c23246 + last_write_checksum: sha1:0036694d325a1cc7bfb713bf89049c93eb0d00e4 + pristine_git_object: 2177111580fea05a3eb45ef55c09279905583941 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1ContractorsContractorUuidResponse.java: id: 4e4c08ff294a last_write_checksum: sha1:2b28a3823f75fb7cdd39af4a0503cd3b66f73649 @@ -17706,6 +19014,10 @@ trackedFiles: id: 20c0cab278ba last_write_checksum: sha1:6939e8ef17481563d087ba471d319668f286e9d6 pristine_git_object: 2c24e7c719532108ed1ae298afebe4606cfd95aa + ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java + : id: 23adab6ff4cf + last_write_checksum: sha1:99fc00f6135433b395b7a80a7a86796f4be10da3 + pristine_git_object: 079e7f8aa1dafbf6ed210265c3bd2e512b37ed5a src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1EmployeesEmployeeIdOnboardingStatusResponse.java: id: 2590f694ffa7 last_write_checksum: sha1:df1323455b0207bbe9c2caadbacdb46b123e053c @@ -17798,6 +19110,10 @@ trackedFiles: id: f31c425b410c last_write_checksum: sha1:4be436d892676b0e4da7c408bd752862e104a84e pristine_git_object: 7c605edb84062aa646531408f578c3c868474d89 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1PayrollBatchesPayrollBatchUuidResponse.java: + id: d46ad7242a61 + last_write_checksum: sha1:9c66135154e1443d02e0179143801d4852ee8d57 + pristine_git_object: 7579c5b9d57f6d993ea1afa505258839414a56ed src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1PayrollDigestsPayrollDigestUuidResponse.java: id: 14648d025a05 last_write_checksum: sha1:875f4a4dfdbe971f8cfa5877a34505408ab5581d @@ -17922,6 +19238,10 @@ trackedFiles: : id: fbbdf8eebe27 last_write_checksum: sha1:62e073ad09e756e04822fbc7314668e985894ec8 pristine_git_object: 7d7565d4e1c39293ae2b67514dea634a299973c5 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1BulkReportsResponse.java: + id: 3cfb6acb18f5 + last_write_checksum: sha1:ce8a93e105e2c6a75d5a29eb1b69a121c760417c + pristine_git_object: 1283422969e8202726bdf8f9147bbb67ea56097a src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1CompaniesAttachmentResponse.java: id: 3daba07df177 last_write_checksum: sha1:970068417bcf288fbc99c7879baf4ec3684b4922 @@ -18026,6 +19346,10 @@ trackedFiles: : id: cfb6232ed931 last_write_checksum: sha1:97b2b1c507f9f7b2b26a102ce323a505c1201e12 pristine_git_object: 92b9bb3292aa4ffbd6ba7a31be3e322ae95df593 + ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1ContractorsContractorUuidMemberPortalInvitationsResponse.java + : id: ed7bd78c8d18 + last_write_checksum: sha1:e4c7a02b68917ca8e0a284f58fbb0cbe50d69075 + pristine_git_object: d5ca3a917f65f2d039c67eb223689ae283379bfe src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1ContractorsContractorUuidRehireResponse.java: id: e8545d059db4 last_write_checksum: sha1:f8ffd678f3f87505f8bf09bad6586864bc5a78c6 @@ -18052,8 +19376,12 @@ trackedFiles: pristine_git_object: 55365846687a171eef4b506d6e8382c98bae1030 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1EmployeesEmployeeIdJobsResponse.java: id: 24b6170a0940 - last_write_checksum: sha1:5fa50f1500de9a0caeb89f69db79e4c6fb60a198 - pristine_git_object: d9e2b9f3a90bda521b0aa84828a6e148d98ea2e7 + last_write_checksum: sha1:cd7f7a58b705141adaec2e916a5756b00029c1a8 + pristine_git_object: 82e03ebe643436b6471ee60331bc0fb8d5dfd4ab + ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java + : id: ee007672dca6 + last_write_checksum: sha1:dad0b6cdbd3faea3e3bdce701f341c444cca1a49 + pristine_git_object: 79fdac31f301f6f2596ef541aa8af004b5063eb5 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1EmployeesEmployeeIdRecurringReimbursementsResponse.java : id: b76b2b35e10b last_write_checksum: sha1:eaddd8caf49ed10770468482ae0e72f0c8f4be2d @@ -18094,6 +19422,10 @@ trackedFiles: id: 64f8e59b9c77 last_write_checksum: sha1:fc1c4ce7703056e414af44136f4df13def2da912 pristine_git_object: b8f2f7311e2d4af446fb506f03be3f58fa8ffe22 + src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1PayrollBatchesResponse.java: + id: a2f0375bf80d + last_write_checksum: sha1:51535752850a846bbe3dacc679fbc8adad1fe249 + pristine_git_object: 57dc7be3374b8e964512f65214c7c61f14e27267 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1PayrollDigestsResponse.java: id: 8898393eb6bc last_write_checksum: sha1:576c25ecdbc351552f6336b4253be50eacfd6280 @@ -18320,12 +19652,16 @@ trackedFiles: pristine_git_object: 41f7721a6ac8ae3cc73b648473dd73bca9d68793 src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PutV1JobsJobIdResponse.java: id: 3c401a1cf274 - last_write_checksum: sha1:396f7661dc45954bcf075e506f94a98445f422cd - pristine_git_object: 37d13f5dc54661542d271af5c3094cfa44607cfd + last_write_checksum: sha1:34109e810e9901a321738f0af1475da54710b94e + pristine_git_object: 23c878af5b3981a9aabb0c72e152c81b7e7e149e src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PutV1LocationsLocationIdResponse.java: id: 03cb14ead587 last_write_checksum: sha1:af9a60ebfb541499c56209cb47d8cce1c4ebc47f pristine_git_object: 275ee7188a9515da86a76a98d9a778a65567c414 + ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse.java + : id: 0977faa4d4de + last_write_checksum: sha1:b67fff08e1843024458302aa331dcb4560a7e0a2 + pristine_git_object: 934d35b20e47d3405cc847f13107cb8c63bfbae0 ? src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PutV1PartnerManagedCompaniesCompanyUuidMigrateResponse.java : id: aecf907327e0 last_write_checksum: sha1:449c93f5a9da6d92a25e6f16d066309a21a05d68 @@ -18446,14 +19782,18 @@ trackedFiles: id: ef3e79400b53 last_write_checksum: sha1:2ca2c6f85f9c65c5254dfbdf7b46bbd97dad2f8d pristine_git_object: 1923728d0c2d38f0b28a01aaafbdcb4c7738c7d5 + src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitations.java: + id: 701030e201d9 + last_write_checksum: sha1:8ab76c972e65d130844f923630201642fc45c32d + pristine_git_object: ea64da800c27a1144e0b6cb55c655d7274341a2e src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/DeleteV1ContractorsContractorUuidRehire.java: id: b0de21db9a08 - last_write_checksum: sha1:723a26b358557ec01610265c6ad38adcbf327281 - pristine_git_object: 95a3283dff0c29b54d7cb843f330932af1a6813b + last_write_checksum: sha1:18e3a4c0ab403b0cfa91b231e1627ec00cf5b263 + pristine_git_object: 785f0931c7b1fde2f9d2fbf142169ed6c7f3e684 src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/DeleteV1ContractorsContractorUuidTermination.java: id: 1ad2a10e90ef - last_write_checksum: sha1:8334bf4e097e513e947bd9e5fced5e0daed585a0 - pristine_git_object: aa513e33415d3449e1e45aaf44c04cbef0088883 + last_write_checksum: sha1:092df2e1bce58754a1fe83d04b749e42a00daabe + pristine_git_object: e3fc95841038295c83404590dc88349731d2995c src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/DeleteV1Employee.java: id: 916b666991ef last_write_checksum: sha1:f46ab56d6f94de07653f736f5435f65c6ad7e0d7 @@ -18470,6 +19810,10 @@ trackedFiles: id: 0811f5c0cbd1 last_write_checksum: sha1:dedca87220b2fd28185908910addd08f0c942e99 pristine_git_object: 3c369be89f8b7af2f6b811b37f05da280171c5d4 + src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitations.java: + id: 08b0287cd5c2 + last_write_checksum: sha1:bd5c4e48419560e058fe07d02c0ea23f35370545 + pristine_git_object: 4f08ad245aa7c3c09b20ad4fa58aebca1f405dbe src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/DeleteV1EmployeesEmployeeIdRehire.java: id: aa7c1519d2a1 last_write_checksum: sha1:533a3a73eec25412691af9af865274fe974e9256 @@ -18570,10 +19914,22 @@ trackedFiles: id: 537d2b27b131 last_write_checksum: sha1:0272a7f67dc306984f72f289f76346f66f2844ed pristine_git_object: 729f9b4ee8638d96553c32c39677230c4c710867 + src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/GetReverseWireTransactions.java: + id: df76649d5d92 + last_write_checksum: sha1:00754a0431d0affe3de669778b2a7b5f4d55328d + pristine_git_object: 150d7dd1c1c4936ae37b2247740f14759d410c5b + src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/GetTaxPayment.java: + id: 37751c05e06e + last_write_checksum: sha1:d4e7819ed21bcf61b3c5820ebda462c09a82b8f6 + pristine_git_object: fe2201899ba974166fea01d6f0e2b9db0f5c483f + src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/GetTaxPayments.java: + id: cdebabbf3df4 + last_write_checksum: sha1:8f2f47711155ccbe59c258e070d6385d2a36eed7 + pristine_git_object: f19694aea0e8844b79b2a63c078f5e12e5923de8 src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/GetV1Benefits.java: id: 7fc4afc71e86 - last_write_checksum: sha1:094fc8ce38337efbc4b0bca5e32e0aacbed67c02 - pristine_git_object: 1ca5e08a4210a2dfb99ca71404861e5d0c473ef8 + last_write_checksum: sha1:48433e6e40e5fb71dd55a5dc7c79fa1ed1690b0f + pristine_git_object: 9420dca50b50c682d514352fadedb9a665c7d90c src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/GetV1BenefitsBenefitId.java: id: 13546bff5b41 last_write_checksum: sha1:fb2c21811f447dcb94c9935978ec10eb2445f25c @@ -18586,6 +19942,10 @@ trackedFiles: id: 39541a5d592c last_write_checksum: sha1:f5f98aa70d377d157cec3b1d49f7f3dc0d153092 pristine_git_object: 692546bada017aee36728ac587221fc9b735c73f + src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/GetV1BulkReportsRequestUuid.java: + id: b9f5205a2498 + last_write_checksum: sha1:db319d46df7dee71e350c63f1d6d288eb95a8699 + pristine_git_object: 25c7432e8ea6c47c9b56ed98b16e3f02af4d707c src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/GetV1Companies.java: id: 6c05d32422a7 last_write_checksum: sha1:5b70914173263cd637361c03d9fa3df9220547fb @@ -18834,6 +20194,10 @@ trackedFiles: id: 7e8368d9a759 last_write_checksum: sha1:03901e9a6d189d711a1de2bf17a8076f20f305b1 pristine_git_object: b2f2f9501997b9180942b5ef1e4777e26ca48854 + src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/GetV1ContractorsContractorUuidMemberPortalInvitations.java: + id: 86bfa5554423 + last_write_checksum: sha1:492f5f61b4a2543aa39ad346cda1db8fbb2a2ea3 + pristine_git_object: 917aea3d200659abd84d10c0057f74671fd27788 src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/GetV1ContractorsContractorUuidOnboardingStatus.java: id: 748ec3b4b1ca last_write_checksum: sha1:de80fc80b44bd0c73473ae3f344cbc22baae9091 @@ -18842,6 +20206,10 @@ trackedFiles: id: dfaebf7487a5 last_write_checksum: sha1:c9aaad98c1a0833fbe8f519c4d4816e80b7bff81 pristine_git_object: 19d9838ff0b540bc883dc5a61e0dd40d17e49a55 + src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/GetV1ContractorsContractorUuidPayments.java: + id: e994832f3074 + last_write_checksum: sha1:fb3eb08c66c409d8f1b29e031f50b6858d65d589 + pristine_git_object: 7728e4c2e7f2368aa632ca7e1bae565fa924cb8f src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/GetV1EmployeeBenefitsEmployeeBenefitId.java: id: d6b72c83bc4c last_write_checksum: sha1:21513350ead8c8c628a7be0b78a095c206b92749 @@ -18906,6 +20274,10 @@ trackedFiles: id: 15af5b44bb99 last_write_checksum: sha1:841df842b966ae4c1792701837093831c93b9019 pristine_git_object: 940c41fba8a02bd6d3ee65eb0e784249ef8370be + src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/GetV1EmployeesEmployeeIdMemberPortalInvitations.java: + id: 340ad6b02772 + last_write_checksum: sha1:834c5e43e82d2e1866c585db32a4fcafbd05548d + pristine_git_object: 9eded228bff860c3c5298c0378dee3dba9597a6e src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/GetV1EmployeesEmployeeIdOnboardingStatus.java: id: 455322fd5b4c last_write_checksum: sha1:1af434af350b4c9feb216fbb5708b65bdd410484 @@ -18992,8 +20364,12 @@ trackedFiles: pristine_git_object: 016063b5f93ac8424e805377ee80139ea1695e9a src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/GetV1PaymentReceiptsPayrollsPayrollUuid.java: id: cea90bf2f2e9 - last_write_checksum: sha1:9bbe62ceee019396c21003ee125a6b4b827f49ff - pristine_git_object: 90d48814de266cfef47d72b988a345c4e991edcc + last_write_checksum: sha1:bf4cdfc817435d60b0bbdb162f9237fe9704e08a + pristine_git_object: 23ce2a78e4bf6f02c8f540f2ca6faa09bdabc21c + src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/GetV1PayrollBatchesPayrollBatchUuid.java: + id: cdcfa85b15c4 + last_write_checksum: sha1:732ab50a5665bc91ab8e6e84f79fd22f71ba23e8 + pristine_git_object: 798c3fb1bacd2e172a40eaff04d143c32ac71e7a src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/GetV1PayrollDigestsPayrollDigestUuid.java: id: 5a0e306b178a last_write_checksum: sha1:617774276da00ad5158eb391503d278eeeb557ca @@ -19096,8 +20472,8 @@ trackedFiles: pristine_git_object: 661bcb9917accbd4543a2b85e94d46b0014ccebe src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/PostCompaniesPayrollSkipCompanyUuid.java: id: 380b7cfbf186 - last_write_checksum: sha1:eb5519259190010375321a2ed0845916dd83cee7 - pristine_git_object: cb1dfe1a3ee1203c1d395fc51bda45a2265d02d6 + last_write_checksum: sha1:46aa097f05447cf5b38cbacd04a4a38a3fa81258 + pristine_git_object: fc78902e023f33965d885110fc3604c8f49ea427 src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/PostDepartments.java: id: ba29bc18c7cc last_write_checksum: sha1:bb0e2ebd8e319028585d2fde6e4f42e1be6453c5 @@ -19122,6 +20498,10 @@ trackedFiles: id: 1e4cb8476a49 last_write_checksum: sha1:5e6fb48a7304afd21dc3b09680a4ae6ce82051a0 pristine_git_object: 85b089fa4e9c50aa70f89e5ea793754edfcbedcb + src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/PostV1BulkReports.java: + id: 478c1816a62c + last_write_checksum: sha1:909099b28972105c1bb51a219a20444e56284151 + pristine_git_object: ed7e5ec45e0373ec4088e3e6a0b5a6e5f49ed92f src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/PostV1CompaniesAttachment.java: id: 6279e13c2bf0 last_write_checksum: sha1:8ecb0119ca7664b22ab74405dc91170fa5223278 @@ -19226,14 +20606,18 @@ trackedFiles: id: de9f042360ac last_write_checksum: sha1:76cbb1c99e18fbee8e3126d655dfa77e217d9681 pristine_git_object: 29ef9e39f8daf33e30e8f85883ff7e3365b81cb9 + src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/PostV1ContractorsContractorUuidMemberPortalInvitations.java: + id: d65798b34b68 + last_write_checksum: sha1:d4c80f18f9d91edfd847d94429c0a254cda7003d + pristine_git_object: 25e35b642d24860e62ffb9a7f750271244a8ddf4 src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/PostV1ContractorsContractorUuidRehire.java: id: b199fda0ae75 - last_write_checksum: sha1:63126433c224ea4008c5f4f1ad4950c3fab55356 - pristine_git_object: 45a8cf0c6b8e1e68b2ec9e2c8a2a109b55e7bc2f + last_write_checksum: sha1:d9fce6f8c2da59d972985c11d6fd92ea7f67ced5 + pristine_git_object: 6867148bae9fc905295ebc0196e7d7fe84fe50f1 src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/PostV1ContractorsContractorUuidTermination.java: id: 988c8f2008b3 - last_write_checksum: sha1:209f41e0bddf18f6be0ca9662127863231a7e993 - pristine_git_object: 7fbbd6c9b59a0094f2b6511a5d429c0a6adfeb11 + last_write_checksum: sha1:6a19ee25b2f8ecf4258a39eebfe948332de8d2b3 + pristine_git_object: 401a0be7821c7585493ec877dba8a0259a7c4581 src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/PostV1Employees.java: id: b50588fdbe2a last_write_checksum: sha1:026b5a8ddb7848ed8ec647e09bef389d465c1b60 @@ -19258,6 +20642,10 @@ trackedFiles: id: 6d4fb886b09d last_write_checksum: sha1:4671bfacc992a6d77433debe8e316b9449350383 pristine_git_object: 8996be69091c61dc884c72350b29f1d45265ee19 + src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/PostV1EmployeesEmployeeIdMemberPortalInvitations.java: + id: 31c15e7363a3 + last_write_checksum: sha1:89d6c32b0a4c372017e6165384347e059d2ebb96 + pristine_git_object: 7b2d0f085dcecdd4c5b05374a96b5d1570008a30 src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/PostV1EmployeesEmployeeIdRecurringReimbursements.java: id: 85dea5a88570 last_write_checksum: sha1:5965e942e05534146b0c33da9823e54e549bb6e3 @@ -19294,6 +20682,10 @@ trackedFiles: id: 5b1f52875c17 last_write_checksum: sha1:35bb3ff6464bc879bcef48302cf4e8d8f3fb96c4 pristine_git_object: b5857339061070484432a1da9a298dd5500cefdd + src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/PostV1PayrollBatches.java: + id: 257da8ac0935 + last_write_checksum: sha1:2c0665d5d54f09b1086835ea61642853a82478f8 + pristine_git_object: 0af21ea205119c6543d08d6f0c47d27ca07ebd99 src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/PostV1PayrollDigests.java: id: 9d3ad0b6c4d7 last_write_checksum: sha1:3885c5756d12a2b08ca2c8cfc6cdd916c9a05430 @@ -19356,8 +20748,8 @@ trackedFiles: pristine_git_object: f96347220ffcfc288c6a05bee3b9d242dc620a62 src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/PutV1CompaniesCompanyIdFederalTaxDetails.java: id: 0f40445a0eb4 - last_write_checksum: sha1:f120c92f307386a09797cacb3325a284aa6de765 - pristine_git_object: 17be68e44634af0ef5ee2078230c6eb814325361 + last_write_checksum: sha1:7d0646e58c247c73d6f9d95d1bdb97893feff84d + pristine_git_object: c1b7f239eba92cbbed7a5a4dd66b54fc1cf42e34 src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/PutV1CompaniesCompanyIdPaySchedulesPayScheduleId.java: id: ca56ab820e92 last_write_checksum: sha1:97128f4de23ae3fdc2f37b15a4b4609b89ccefa0 @@ -19526,6 +20918,10 @@ trackedFiles: id: 920f6ed2eb86 last_write_checksum: sha1:88bd02aec4c212cabf5dd4e810d1a2a1aed3e7a4 pristine_git_object: d7662d4c3e12d751a2e1873ba79e5040f3c7a5c5 + src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociate.java: + id: 7ef53411842d + last_write_checksum: sha1:5e53eaf1db674a8488895264c3d153a187f34a6e + pristine_git_object: df22020d50c0593d4b11e969fb2f55737402e29d src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/PutV1PartnerManagedCompaniesCompanyUuidMigrate.java: id: 9ef8a23cb8f1 last_write_checksum: sha1:9047e0a8c95c50b9a3a58386993aa4c1590d7861 @@ -19616,8 +21012,8 @@ trackedFiles: pristine_git_object: 8b8ce6b4f3585ad0eb39d8dcc585f177d803f84d src/main/java/com/gusto/embedded_api_v_2025_11_15/utils/AsyncRetries.java: id: c9874d23e91c - last_write_checksum: sha1:929400fbe6935ab72f8b2748a0456eb159c0e379 - pristine_git_object: 5a7692f2fcef2bc32abf576f0ad40f0cd6758b37 + last_write_checksum: sha1:b8e998e517accc614f151caea2b9e5ff2a9fe3d0 + pristine_git_object: 29c75273f1df7341e579cd97a741507eabecbfce src/main/java/com/gusto/embedded_api_v_2025_11_15/utils/AsyncRetryableException.java: id: 72b77c9e1280 last_write_checksum: sha1:d9654a643aae05467fa960b7ae27a50c07e6ac93 @@ -19732,8 +21128,8 @@ trackedFiles: pristine_git_object: 931d71c909bf1e632682138c7c89f5817be2e0d1 src/main/java/com/gusto/embedded_api_v_2025_11_15/utils/Multipart.java: id: c6803b1dd89f - last_write_checksum: sha1:ed3beef34eaf05603f918d063074e512ce3ff187 - pristine_git_object: bc96c994e49e7393905c614538e1a61177c21c0e + last_write_checksum: sha1:25bae6033201af79f053c37897b19bf33dbee715 + pristine_git_object: 7627855530b16c5b2165d074242ac721b8ec2312 src/main/java/com/gusto/embedded_api_v_2025_11_15/utils/MultipartFormMetadata.java: id: 0d8100bf0112 last_write_checksum: sha1:a6579995ee1c7b1ce83691912772a34a7b17296d @@ -19800,8 +21196,8 @@ trackedFiles: pristine_git_object: 5ee1da53fe3efdde33474cdd510658c4c3dc4f11 src/main/java/com/gusto/embedded_api_v_2025_11_15/utils/Retries.java: id: 6060453e38c6 - last_write_checksum: sha1:bbe837c8033fecc6b7b2a2879831e501f7cf35cf - pristine_git_object: a07262d629ea386680dd43b8fbd61636c15de4ab + last_write_checksum: sha1:39eb8da1d8bf9f273473d8a0e4c4f85d4ffb9326 + pristine_git_object: ecb85611216bde91bb075be255ea4c5b4712d5d3 src/main/java/com/gusto/embedded_api_v_2025_11_15/utils/RetryConfig.java: id: 8d7595bd9105 last_write_checksum: sha1:092a1306bc2d1123ad6941e6ec808e64c4f8c835 @@ -19828,8 +21224,8 @@ trackedFiles: pristine_git_object: 590f00748f1ed515f1113aeb354f6c2272585b59 src/main/java/com/gusto/embedded_api_v_2025_11_15/utils/SpeakeasyHTTPClient.java: id: c616ce2d748d - last_write_checksum: sha1:e5ecd85aff82c37e95d1db3087054cc6201091c5 - pristine_git_object: a1014f4bce2ad7e76d4711644dcf383d35f20959 + last_write_checksum: sha1:f4a0b7b61cf20bfb738fd0ce64c71110a96f6588 + pristine_git_object: b31e083146e6935feb56e6bcfa8a4ab0312db5d4 src/main/java/com/gusto/embedded_api_v_2025_11_15/utils/SpeakeasyLogger.java: id: 5c51218356aa last_write_checksum: sha1:64e73483577bf967f793bb35d3fd6a4b77b88de2 @@ -19840,8 +21236,8 @@ trackedFiles: pristine_git_object: 39259cd95531c8616953d7340040facb01682038 src/main/java/com/gusto/embedded_api_v_2025_11_15/utils/StreamingParser.java: id: 01c36db7eb75 - last_write_checksum: sha1:a26e0ff170354ecd553c8e0c41cbccd11c585e08 - pristine_git_object: 7b0d61df9bf5f9838163ea6d5819d85d48810949 + last_write_checksum: sha1:050ab52cd7f0df35faaa9ac4365d5e5c074017f6 + pristine_git_object: a613ce5a6b3925bcb866b0c9892a88d92a438415 src/main/java/com/gusto/embedded_api_v_2025_11_15/utils/TypedObject.java: id: 6456fe9aefab last_write_checksum: sha1:755e03ee7e894170b66d29d7ddadc4cadc517430 @@ -20177,6 +21573,8 @@ examples: application/json: {"errors": [{"error_key": "", "category": ""}]} "409": application/json: {"errors": []} + "403": + application/json: {"errors": [{"error_key": "", "category": ""}]} get-v1-company-industry: speakeasy-default-get-v1-company-industry: parameters: @@ -21771,6 +23169,9 @@ examples: X-Gusto-API-Version: "2025-11-15" requestBody: application/json: {"start_date": "2025-07-01"} + responses: + "422": + application/json: {"errors": [{"error_key": "", "category": ""}]} delete-v1-contractors-contractor_uuid-rehire: speakeasy-default-delete-v1-contractors-contractor-uuid-rehire: parameters: @@ -21778,6 +23179,9 @@ examples: contractor_uuid: "" header: X-Gusto-API-Version: "2025-11-15" + responses: + "422": + application/json: {"errors": []} post-v1-contractors-contractor_uuid-termination: speakeasy-default-post-v1-contractors-contractor-uuid-termination: parameters: @@ -21787,6 +23191,9 @@ examples: X-Gusto-API-Version: "2025-11-15" requestBody: application/json: {"end_date": "2025-06-15"} + responses: + "422": + application/json: {"errors": [{"error_key": "", "category": ""}]} delete-v1-contractors-contractor_uuid-termination: speakeasy-default-delete-v1-contractors-contractor-uuid-termination: parameters: @@ -21794,6 +23201,9 @@ examples: contractor_uuid: "" header: X-Gusto-API-Version: "2025-11-15" + responses: + "422": + application/json: {"errors": []} get-v1-contractors-contractor_uuid-bank_accounts: speakeasy-default-get-v1-contractors-contractor-uuid-bank-accounts: parameters: @@ -22264,6 +23674,8 @@ examples: application/json: {"errors": [{"error_key": "", "category": ""}]} "422": application/json: {} + "409": + application/json: {"errors": [{"error_key": "", "category": ""}]} post-payrolls-gross-up-payroll_uuid: speakeasy-default-post-payrolls-gross-up-payroll-uuid: parameters: @@ -22822,7 +24234,7 @@ examples: header: X-Gusto-API-Version: "2025-11-15" requestBody: - application/json: {"columns": ["total_time_off_earnings"], "groupings": [], "file_type": "json", "with_totals": false, "start_date": "2024-01-01", "end_date": "2024-04-01", "dismissed_start_date": "2024-01-01", "dismissed_end_date": "2024-04-01"} + application/json: {"columns": ["total_time_off_earnings"], "file_type": "json", "with_totals": false, "date_filter_type": "period_end_date", "start_date": "2024-01-01", "end_date": "2024-04-01", "dismissed_start_date": "2024-01-01", "dismissed_end_date": "2024-04-01"} responses: "201": application/json: {} @@ -23990,6 +25402,199 @@ examples: application/json: {"uuid": "1abe7289-f78c-4339-88a8-85081eccbe5e", "idempotency_key": "fe854863-de8e-4f8d-969c-e489e9c596f2", "status": "completed", "submitted_at": "2024-10-08T07:24:00.354Z"} "404": application/json: {"errors": [{"error_key": "", "category": ""}]} + put-v1-partner-managed-companies-company-uuid-disassociate: + speakeasy-default-put-v1-partner-managed-companies-company-uuid-disassociate: + parameters: + path: + company_uuid: "" + header: + X-Gusto-API-Version: "2025-11-15" + responses: + "200": + application/json: {"company_uuid": "509a4fda-2971-4edb-96da-5be5d1295f82", "company_name": "Runte, Parisian and Terry"} + "404": + application/json: {"errors": [{"error_key": "", "category": ""}]} + "422": + application/json: {"errors": []} + post-v1-bulk_reports: + speakeasy-default-post-v1-bulk-reports: + parameters: + header: + X-Gusto-API-Version: "2025-11-15" + requestBody: + application/json: {"batch": [{"company_uuid": "12345678-abcd-ef12-3456-7890abcdef12", "report_type": "custom_report", "columns": ["employee_first_name"], "groupings": ["employee"], "file_type": "csv", "custom_name": "Q1 Payroll Export", "with_totals": false, "date_filter_type": "check_date", "start_date": "2026-01-01", "end_date": "2026-03-31", "payment_method": "check", "employment_type": "exempt", "employment_status": "active_full_time"}, {"company_uuid": "12345678-abcd-ef12-3456-7890abcdef12", "report_type": "general_ledger", "payroll_uuid": "7b1d0df1-6403-4a06-8768-c1dd7d24d27a", "aggregation": "default"}]} + responses: + "201": + application/json: {"uuid": "57c90f01-b7ef-4831-bb62-f80c2ce1a69d", "status": "failed"} + "422": + application/json: {"errors": [{"error_key": "", "category": ""}]} + get-v1-bulk_reports-request_uuid: + speakeasy-default-get-v1-bulk-reports-request-uuid: + parameters: + path: + request_uuid: "" + header: + X-Gusto-API-Version: "2025-11-15" + responses: + "200": + application/json: {"uuid": "9ec387cc-e6b9-432e-9d7f-d588522b1b8b", "status": "pending", "submitted_at": "2026-03-16T03:33:23.733Z", "completed_at": null, "submitted_items": 5304} + "404": + application/json: {"errors": []} + get-v1-contractors-contractor_uuid-payments: + speakeasy-default-get-v1-contractors-contractor-uuid-payments: + parameters: + path: + contractor_uuid: "" + query: + sort_by: "check_date:desc" + header: + X-Gusto-API-Version: "2025-11-15" + responses: + "200": + application/json: [{"uuid": "4c253703-bc3f-484d-b971-5348e5a9a5d9"}] + "404": + application/json: {"errors": [{"error_key": "", "category": ""}]} + "422": + application/json: {"errors": [{"error_key": "", "category": ""}]} + post-v1-employees-employee_id-member_portal_invitations: + speakeasy-default-post-v1-employees-employee-id-member-portal-invitations: + parameters: + path: + employee_id: "" + header: + X-Gusto-API-Version: "2025-11-15" + responses: + "404": + application/json: {"errors": [{"error_key": "", "category": ""}]} + "422": + application/json: {"errors": [{"error_key": "", "category": ""}]} + get-v1-employees-employee_id-member_portal_invitations: + speakeasy-default-get-v1-employees-employee-id-member-portal-invitations: + parameters: + path: + employee_id: "" + header: + X-Gusto-API-Version: "2025-11-15" + responses: + "200": + application/json: {"status": "sent", "expired": false} + "404": + application/json: {"errors": [{"error_key": "", "category": ""}]} + delete-v1-employees-employee_id-member_portal_invitations: + speakeasy-default-delete-v1-employees-employee-id-member-portal-invitations: + parameters: + path: + employee_id: "" + header: + X-Gusto-API-Version: "2025-11-15" + responses: + "404": + application/json: {"errors": [{"error_key": "", "category": ""}]} + "422": + application/json: {"errors": []} + post-v1-contractors-contractor_uuid-member_portal_invitations: + speakeasy-default-post-v1-contractors-contractor-uuid-member-portal-invitations: + parameters: + path: + contractor_uuid: "" + header: + X-Gusto-API-Version: "2025-11-15" + responses: + "404": + application/json: {"errors": [{"error_key": "", "category": ""}]} + "422": + application/json: {"errors": []} + get-v1-contractors-contractor_uuid-member_portal_invitations: + speakeasy-default-get-v1-contractors-contractor-uuid-member-portal-invitations: + parameters: + path: + contractor_uuid: "" + header: + X-Gusto-API-Version: "2025-11-15" + responses: + "200": + application/json: {"status": "sent", "expired": false} + "404": + application/json: {"errors": []} + delete-v1-contractors-contractor_uuid-member_portal_invitations: + speakeasy-default-delete-v1-contractors-contractor-uuid-member-portal-invitations: + parameters: + path: + contractor_uuid: "" + header: + X-Gusto-API-Version: "2025-11-15" + responses: + "404": + application/json: {"errors": [{"error_key": "", "category": ""}]} + "422": + application/json: {"errors": []} + post-v1-payroll_batches: + speakeasy-default-post-v1-payroll-batches: + parameters: + header: + X-Gusto-API-Version: "2025-11-15" + requestBody: + application/json: {"idempotency_key": "80a74f8b-2c16-45e5-9038-aa108849c6e6", "batch_action": "cancel", "batch": [{"entity_type": "payroll", "uuid": "f5ac6d4e-8400-4a52-a5cf-dea57b2ee65a", "company_uuid": "7cd3f4a2-0bf9-485a-bbc0-f6adbdf0246b"}]} + responses: + "201": + application/json: {"uuid": "dbcadf09-f75f-48ee-b03c-1d7207e4ca21", "idempotency_key": "139ceb06-56d5-4d74-a1a2-d4b976a9e00f", "batch_action": "cancel", "status": "completed"} + "409": + application/json: {} + "422": + application/json: {"errors": [{"error_key": "", "category": ""}]} + get-v1-payroll_batches-payroll_batch_uuid: + speakeasy-default-get-v1-payroll-batches-payroll-batch-uuid: + parameters: + path: + payroll_batch_uuid: "" + header: + X-Gusto-API-Version: "2025-11-15" + responses: + "200": + application/json: {"uuid": "03a66cd2-126d-4e8f-a60f-122098226ea5", "idempotency_key": "beeda2f5-1ab7-4d71-bd9a-1cb9b8247468", "status": "failed", "submitted_at": "2026-05-02T17:33:16.380Z"} + "404": + application/json: {"errors": [{"error_key": "", "category": ""}]} + get-reverse-wire-transactions: + speakeasy-default-get-reverse-wire-transactions: + parameters: + path: + company_uuid: "" + header: + X-Gusto-API-Version: "2025-11-15" + responses: + "200": + application/json: [{"company_uuid": "", "amount": "", "status": "rejected", "payment_direction": "debit", "created_at": "1714750477797"}] + "404": + application/json: {"errors": [{"error_key": "", "category": ""}]} + get-tax-payments: + speakeasy-default-get-tax-payments: + parameters: + path: + company_uuid: "" + query: + sort_by: "amount:asc" + header: + X-Gusto-API-Version: "2025-11-15" + responses: + "200": + application/json: [{"uuid": "96b40a3b-720f-4338-94a2-75a39708a720", "company_uuid": "", "agency_name": "", "jurisdiction": "", "period_start": "2026-05-16", "period_end": "2024-07-16", "due_date": "2024-03-30", "amount": "", "amount_paid": ""}] + "404": + application/json: {"errors": []} + "422": + application/json: {"errors": [{"error_key": "", "category": ""}]} + get-tax-payment: + speakeasy-default-get-tax-payment: + parameters: + path: + company_uuid: "" + uuid: "7cdc7492-54c4-4684-9729-2c5da517245b" + header: + X-Gusto-API-Version: "2025-11-15" + responses: + "200": + application/json: {"uuid": "c8e53592-2f95-4477-8ecb-e5efae6f56b9", "company_uuid": "", "agency_name": "", "jurisdiction": "", "period_start": "2024-03-28", "period_end": "2024-07-11", "due_date": "2026-09-10", "amount": "", "amount_paid": ""} + "404": + application/json: {"errors": [{"error_key": "", "category": ""}]} examplesVersion: 1.0.2 generatedTests: {} -releaseNotes: "## Java SDK Changes:\n* `gustoembedded.payrolls.get()`: \n * `request.sortBy` **Changed** (Breaking ⚠️)\n* `gustoembedded.companyForms.getAll()`: \n * `request.sortBy` **Changed** (Breaking ⚠️)\n* `gustoembedded.companies.get()`: `response.fundingType` **Changed** (Breaking ⚠️)\n* `gustoembedded.companies.update()`: `response.fundingType` **Changed** (Breaking ⚠️)\n* `gustoembedded.payrolls.prepare()`: \n * `request.sortBy` **Changed** (Breaking ⚠️)\n* `gustoembedded.contractorPayments.getV1ContractorPaymentsContractorPaymentIdPdf()`: `error.status[404]` **Added**\n* `gustoembedded.reports.createCustom()`: \n * `request.createReportBody.columns[]` **Changed**\n* `gustoembedded.employeeTaxSetup.updateStateTaxes()`: `response.[].uuid` **Added**\n* `gustoembedded.employeePaymentMethod.deleteBankAccount()`: `error` **Changed**\n* `gustoembedded.earningTypes.delete()`: `error.status[404]` **Added**\n* `gustoembedded.externalPayrolls.finalizeTaxLiabilities()`: `error` **Changed**\n* `gustoembedded.externalPayrolls.delete()`: `error` **Changed**\n* `gustoembedded.payrollDigests.postV1PayrollDigests()`: **Added**\n* `gustoembedded.payrollDigests.getV1PayrollDigestsPayrollDigestUuid()`: **Added**\n* `gustoembedded.employeeTaxSetup.getStateTaxes()`: `response.[].uuid` **Added**\n* `gustoembedded.companyBenefits.delete()`: `error` **Changed**\n* `gustoembedded.companyBenefits.getEmployeeBenefits()`: `response.[].deductionReducesTaxableIncome` **Changed**\n* `gustoembedded.companyBenefits.updateEmployeeBenefits()`: \n * `request.employeeBenefitBulkUpdateRequest.employeeBenefits[].deductionReducesTaxableIncome` **Changed**\n * `response.[].deductionReducesTaxableIncome` **Changed**\n* `gustoembedded.employeeBenefits.get()`: `response.[].deductionReducesTaxableIncome` **Changed**\n* `gustoembedded.employeeBenefits.create()`: `response.deductionReducesTaxableIncome` **Changed**\n* `gustoembedded.employeeBenefits.retrieve()`: `response.deductionReducesTaxableIncome` **Changed**\n* `gustoembedded.employeeBenefits.update()`: \n * `request.employeeBenefitUpdateRequest.deductionReducesTaxableIncome` **Changed**\n * `response.deductionReducesTaxableIncome` **Changed**\n* `gustoembedded.employeeBenefits.delete()`: `error` **Changed**\n* `gustoembedded.informationRequests.getInformationRequests()`: `request.sortBy` **Added**\n* `gustoembedded.timeOffRequests.deleteV1TimeOffRequestsTimeOffRequestUuid()`: `error` **Changed**\n" +releaseNotes: "## Java SDK Changes:\n* `gustoembedded.webhooks.listSubscriptions()`: `response.[].subscriptionTypes[].enum(timeOffRequest)` **Added** (Breaking ⚠️)\n* `gustoembedded.webhooks.createSubscription()`: \n * `requestBody.subscriptionTypes[].enum(timeOffRequest)` **Added**\n * `response.subscriptionTypes[].enum(timeOffRequest)` **Added** (Breaking ⚠️)\n* `gustoembedded.webhooks.getSubscription()`: `response.subscriptionTypes[].enum(timeOffRequest)` **Added** (Breaking ⚠️)\n* `gustoembedded.webhooks.updateSubscription()`: \n * `requestBody.subscriptionTypes[].enum(timeOffRequest)` **Added**\n * `response.subscriptionTypes[].enum(timeOffRequest)` **Added** (Breaking ⚠️)\n* `gustoembedded.webhooks.verify()`: `response.subscriptionTypes[].enum(timeOffRequest)` **Added** (Breaking ⚠️)\n* `gustoembedded.locations.retrieve()`: `response.warnings` **Added**\n* `gustoembedded.employees.list()`: `response.[].jobs[].location.warnings` **Added**\n* `gustoembedded.reports.getV1BulkReportsRequestUuid()`: **Added**\n* `gustoembedded.contractorPayments.getV1ContractorsContractorUuidPayments()`: **Added**\n* `gustoembedded.contractorPayments.getV1ContractorPaymentsContractorPaymentIdPdf()`: **Added**\n* `gustoembedded.contractorPayments.list()`: **Added**\n* `gustoembedded.contractorPayments.create()`: **Added**\n* `gustoembedded.contractorPayments.get()`: **Added**\n* `gustoembedded.contractorPayments.delete()`: **Added**\n* `gustoembedded.contractorPayments.preview()`: **Added**\n* `gustoembedded.contractorPayments.getReceipt()`: **Added**\n* `gustoembedded.contractorPayments.fund()`: **Added**\n* `gustoembedded.memberPortalInvitations.postV1EmployeesEmployeeIdMemberPortalInvitations()`: **Added**\n* `gustoembedded.memberPortalInvitations.getV1EmployeesEmployeeIdMemberPortalInvitations()`: **Added**\n* `gustoembedded.memberPortalInvitations.deleteV1EmployeesEmployeeIdMemberPortalInvitations()`: **Added**\n* `gustoembedded.memberPortalInvitations.postV1ContractorsContractorUuidMemberPortalInvitations()`: **Added**\n* `gustoembedded.memberPortalInvitations.getV1ContractorsContractorUuidMemberPortalInvitations()`: **Added**\n* `gustoembedded.memberPortalInvitations.deleteV1ContractorsContractorUuidMemberPortalInvitations()`: **Added**\n* `gustoembedded.payrollCancellations.postV1PayrollBatches()`: **Added**\n* `gustoembedded.payrollCancellations.getV1PayrollBatchesPayrollBatchUuid()`: **Added**\n* `gustoembedded.reverseWireTransactions.getReverseWireTransactions()`: **Added**\n* `gustoembedded.taxPayments.getTaxPayments()`: **Added**\n* `gustoembedded.taxPayments.getTaxPayment()`: **Added**\n* `gustoembedded.contractorPayments.getReceipt()`: **Removed** (Breaking ⚠️)\n* `gustoembedded.contractorPayments.fund()`: **Removed** (Breaking ⚠️)\n* `gustoembedded.contractorPayments.list()`: **Removed** (Breaking ⚠️)\n* `gustoembedded.contractorPayments.create()`: **Removed** (Breaking ⚠️)\n* `gustoembedded.paySchedules.getPreview()`: \n * `request.payScheduleUuid` **Added**\n* `gustoembedded.contractorPayments.delete()`: **Removed** (Breaking ⚠️)\n* `gustoembedded.contractorPayments.preview()`: **Removed** (Breaking ⚠️)\n* `gustoembedded.contractorPayments.getV1ContractorPaymentsContractorPaymentIdPdf()`: **Removed** (Breaking ⚠️)\n* `gustoembedded.companies.suspensions.suspend()`: \n * `requestBody.leavingFor` **Changed**\n* `gustoembedded.federalTaxDetails.update()`: `error.status[403]` **Added**\n* `gustoembedded.locations.get()`: `response.[].warnings` **Added**\n* `gustoembedded.locations.create()`: `response.warnings` **Added**\n* `gustoembedded.companies.putV1PartnerManagedCompaniesCompanyUuidDisassociate()`: **Added**\n* `gustoembedded.reports.postV1BulkReports()`: **Added**\n* `gustoembedded.locations.update()`: `response.warnings` **Added**\n* `gustoembedded.contractorPayments.get()`: **Removed** (Breaking ⚠️)\n* `gustoembedded.employees.create()`: `response.jobs[].location.warnings` **Added**\n* `gustoembedded.employees.createHistorical()`: `response.jobs[].location.warnings` **Added**\n* `gustoembedded.employees.get()`: `response.jobs[].location.warnings` **Added**\n* `gustoembedded.employees.update()`: `response.jobs[].location.warnings` **Added**\n* `gustoembedded.employees.getOnboardingStatus()`: `response.blockers` **Added**\n* `gustoembedded.employees.updateOnboardingStatus()`: `response.blockers` **Added**\n* `gustoembedded.historicalEmployees.update()`: `response.jobs[].location.warnings` **Added**\n* `gustoembedded.employeeAddresses.get()`: `response.[].warnings` **Added**\n* `gustoembedded.employeeAddresses.create()`: `response.warnings` **Added**\n* `gustoembedded.employeeAddresses.retrieveHomeAddress()`: `response.warnings` **Added**\n* `gustoembedded.employeeAddresses.update()`: `response.warnings` **Added**\n* `gustoembedded.jobsAndCompensations.getJobs()`: `response.[].location.warnings` **Added**\n* `gustoembedded.jobsAndCompensations.createJob()`: `response.location.warnings` **Added**\n* `gustoembedded.jobsAndCompensations.getJob()`: `response.location.warnings` **Added**\n* `gustoembedded.jobsAndCompensations.update()`: `response.location.warnings` **Added**\n* `gustoembedded.contractors.list()`: `response.[].workEmail` **Added**\n* `gustoembedded.contractors.create()`: \n * `request.contractorCreateRequestBody.workEmail` **Added**\n * `response.workEmail` **Added**\n* `gustoembedded.contractors.get()`: `response.workEmail` **Added**\n* `gustoembedded.contractors.update()`: \n * `request.contractorUpdateRequestBody.workEmail` **Added**\n * `response.workEmail` **Added**\n* `gustoembedded.contractors.getAddress()`: `response.warnings` **Added**\n* `gustoembedded.contractors.updateAddress()`: `response.warnings` **Added**\n* `gustoembedded.contractors.postV1ContractorsContractorUuidRehire()`: `error.status[422]` **Added**\n* `gustoembedded.contractors.deleteV1ContractorsContractorUuidRehire()`: `error.status[422]` **Added**\n* `gustoembedded.contractors.postV1ContractorsContractorUuidTermination()`: `error.status[422]` **Added**\n* `gustoembedded.contractors.deleteV1ContractorsContractorUuidTermination()`: `error.status[422]` **Added**\n* `gustoembedded.payrolls.createOffCycle()`: `response.employeeCompensations[].customWithholdings` **Added**\n* `gustoembedded.payrolls.getApprovedReversals()`: `request.xGustoApiVersion` **Changed**\n* `gustoembedded.payrolls.get()`: `response.employeeCompensations[].customWithholdings` **Added**\n* `gustoembedded.payrolls.update()`: \n * `request.payrollUpdate.employeeCompensations[].customWithholdings` **Added**\n * `response.employeeCompensations[].customWithholdings` **Added**\n* `gustoembedded.payrolls.prepare()`: `response.employeeCompensations[].customWithholdings` **Added**\n* `gustoembedded.payrolls.getReceipt()`: `request` **Changed**\n* `gustoembedded.payrolls.skip()`: `error.status[409]` **Added**\n* `gustoembedded.contractorPaymentGroups.patchV1ContractorPaymentGroupsIdPartnerDisbursements()`: \n * `requestBody.disbursements[].paymentMethod` **Changed**\n* `gustoembedded.generatedDocuments.get()`: `request.xGustoApiVersion` **Changed**\n* `gustoembedded.reports.createCustom()`: `request.createReportBody` **Changed**\n* `gustoembedded.taxRequirements.get()`: `response.requirementSets[].requirements[]` **Changed**\n" diff --git a/gusto_embedded_v_2025_11_15/.speakeasy/gen.yaml b/gusto_embedded_v_2025_11_15/.speakeasy/gen.yaml index 0ce798124..5d14bd4cf 100644 --- a/gusto_embedded_v_2025_11_15/.speakeasy/gen.yaml +++ b/gusto_embedded_v_2025_11_15/.speakeasy/gen.yaml @@ -31,7 +31,7 @@ generation: generateNewTests: false skipResponseBodyAssertions: false java: - version: 0.0.2 + version: 0.1.0 additionalDependencies: [] additionalPlugins: [] artifactID: embedded-api-v-2025-11-15 @@ -49,12 +49,14 @@ java: explicitDocImports: false flattenGlobalSecurity: true forwardCompatibleEnumsByDefault: false - forwardCompatibleUnionsByDefault: "false" + forwardCompatibleUnionsByDefault: true generateOptionalUnionAccessors: false generateSpringBootStarter: true generateUnionDocs: false + getterStyle: presence-aware githubURL: github.com/Gusto/gusto-java-client groupID: com.gusto + httpClient: jdk imports: option: openapi paths: diff --git a/gusto_embedded_v_2025_11_15/README.md b/gusto_embedded_v_2025_11_15/README.md index 6541b14c0..e9d753455 100644 --- a/gusto_embedded_v_2025_11_15/README.md +++ b/gusto_embedded_v_2025_11_15/README.md @@ -47,7 +47,7 @@ The samples below show how a published SDK artifact is used: Gradle: ```groovy -implementation 'com.gusto:embedded-api-v-2025-11-15:0.0.2' +implementation 'com.gusto:embedded-api-v-2025-11-15:0.1.0' ``` Maven: @@ -55,7 +55,7 @@ Maven: com.gusto embedded-api-v-2025-11-15 - 0.0.2 + 0.1.0 ``` @@ -83,24 +83,29 @@ gradlew.bat publishToMavenLocal -Pskip.signing package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1TokenInfoResponse; -import com.gusto.embedded_api_v_2025_11_15.models.operations.XGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetAchTransactionsRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetAchTransactionsResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws Exception { + public static void main(String[] args) throws NotFoundErrorObject, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1TokenInfoResponse res = sdk.introspection().getInfo() - .xGustoAPIVersion(XGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + GetAchTransactionsRequest req = GetAchTransactionsRequest.builder() + .companyUuid("") + .build(); + + GetAchTransactionsResponse res = sdk.achTransactions().getAll() + .request(req) .call(); - if (res.tokenInfo().isPresent()) { - System.out.println(res.tokenInfo().get()); + if (res.achTransactionList().isPresent()) { + System.out.println(res.achTransactionList().get()); } } } @@ -112,8 +117,8 @@ package hello.world; import com.gusto.embedded_api_v_2025_11_15.AsyncGustoEmbedded; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; -import com.gusto.embedded_api_v_2025_11_15.models.operations.XGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.async.GetV1TokenInfoResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetAchTransactionsRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.async.GetAchTransactionsResponse; import java.util.concurrent.CompletableFuture; public class Application { @@ -125,13 +130,17 @@ public class Application { .build() .async(); - CompletableFuture resFut = sdk.introspection().getInfo() - .xGustoAPIVersion(XGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + GetAchTransactionsRequest req = GetAchTransactionsRequest.builder() + .companyUuid("") + .build(); + + CompletableFuture resFut = sdk.achTransactions().getAll() + .request(req) .call(); resFut.thenAccept(res -> { - if (res.tokenInfo().isPresent()) { - System.out.println(res.tokenInfo().get()); + if (res.achTransactionList().isPresent()) { + System.out.println(res.achTransactionList().get()); } }); } @@ -232,24 +241,29 @@ To authenticate with the API the `companyAccessAuth` parameter must be set when package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1TokenInfoResponse; -import com.gusto.embedded_api_v_2025_11_15.models.operations.XGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetAchTransactionsRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetAchTransactionsResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws Exception { + public static void main(String[] args) throws NotFoundErrorObject, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1TokenInfoResponse res = sdk.introspection().getInfo() - .xGustoAPIVersion(XGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + GetAchTransactionsRequest req = GetAchTransactionsRequest.builder() + .companyUuid("") + .build(); + + GetAchTransactionsResponse res = sdk.achTransactions().getAll() + .request(req) .call(); - if (res.tokenInfo().isPresent()) { - System.out.println(res.tokenInfo().get()); + if (res.achTransactionList().isPresent()) { + System.out.println(res.achTransactionList().get()); } } } @@ -262,37 +276,28 @@ Some operations in this SDK require the security scheme to be specified at the r package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; -import com.gusto.embedded_api_v_2025_11_15.models.components.*; +import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; import com.gusto.embedded_api_v_2025_11_15.models.operations.*; import java.lang.Exception; public class Application { - public static void main(String[] args) throws UnprocessableEntityError, Exception { + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .build(); - PostV1PartnerManagedCompaniesResponse res = sdk.companies().createPartnerManaged() - .security(PostV1PartnerManagedCompaniesSecurity.builder() + PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse res = sdk.companies().putV1PartnerManagedCompaniesCompanyUuidDisassociate() + .security(PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity.builder() .systemAccessAuth(System.getenv().getOrDefault("SYSTEM_ACCESS_AUTH", "")) .build()) - .xGustoAPIVersion(PostV1PartnerManagedCompaniesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) - .partnerManagedCompanyCreateRequest(PartnerManagedCompanyCreateRequest.builder() - .user(User.builder() - .firstName("Marco") - .lastName("Trantow") - .email("Jewell_Greenholt72@hotmail.com") - .build()) - .company(PartnerManagedCompanyCreateRequestCompany.builder() - .name("") - .build()) - .build()) + .xGustoAPIVersion(PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .companyUuid("") .call(); - if (res.partnerManagedCompany().isPresent()) { - System.out.println(res.partnerManagedCompany().get()); + if (res.partnerManagedCompanyDisassociateResponse().isPresent()) { + System.out.println(res.partnerManagedCompanyDisassociateResponse().get()); } } } @@ -319,18 +324,19 @@ public class Application { ### [Companies](docs/sdks/companies/README.md) -* [createPartnerManaged](docs/sdks/companies/README.md#createpartnermanaged) - Create a partner managed company +* [listAdmins](docs/sdks/companies/README.md#listadmins) - Get all the admins at a company +* [createAdmin](docs/sdks/companies/README.md#createadmin) - Create an admin for the company * [get](docs/sdks/companies/README.md#get) - Get a company * [update](docs/sdks/companies/README.md#update) - Update a company +* [getCustomFields](docs/sdks/companies/README.md#getcustomfields) - Get the custom fields of a company +* [getOnboardingStatus](docs/sdks/companies/README.md#getonboardingstatus) - Get company onboarding status +* [finishOnboarding](docs/sdks/companies/README.md#finishonboarding) - Finish company onboarding +* [putV1PartnerManagedCompaniesCompanyUuidDisassociate](docs/sdks/companies/README.md#putv1partnermanagedcompaniescompanyuuiddisassociate) - Disassociate a partner managed company * [migrate](docs/sdks/companies/README.md#migrate) - Migrate company to embedded payroll +* [createPartnerManaged](docs/sdks/companies/README.md#createpartnermanaged) - Create a partner managed company * [getV1PartnerManagedCompaniesCompanyUuidMigrationReadiness](docs/sdks/companies/README.md#getv1partnermanagedcompaniescompanyuuidmigrationreadiness) - Check company migration readiness * [acceptTermsOfService](docs/sdks/companies/README.md#accepttermsofservice) - Accept terms of service for a company user * [retrieveTermsOfService](docs/sdks/companies/README.md#retrievetermsofservice) - Retrieve terms of service status for a company user -* [listAdmins](docs/sdks/companies/README.md#listadmins) - Get all the admins at a company -* [createAdmin](docs/sdks/companies/README.md#createadmin) - Create an admin for the company -* [getOnboardingStatus](docs/sdks/companies/README.md#getonboardingstatus) - Get company onboarding status -* [finishOnboarding](docs/sdks/companies/README.md#finishonboarding) - Finish company onboarding -* [getCustomFields](docs/sdks/companies/README.md#getcustomfields) - Get the custom fields of a company ### [Companies.Suspensions](docs/sdks/suspensions/README.md) @@ -343,23 +349,23 @@ public class Application { ### [CompanyAttachments](docs/sdks/companyattachments/README.md) -* [getDetails](docs/sdks/companyattachments/README.md#getdetails) - Get Company Attachment Details * [getList](docs/sdks/companyattachments/README.md#getlist) - Get List of Company Attachments * [create](docs/sdks/companyattachments/README.md#create) - Create Company Attachment and Upload File +* [getDetails](docs/sdks/companyattachments/README.md#getdetails) - Get Company Attachment Details ### [CompanyBenefits](docs/sdks/companybenefits/README.md) +* [getAll](docs/sdks/companybenefits/README.md#getall) - Get all supported benefits +* [getSupported](docs/sdks/companybenefits/README.md#getsupported) - Get a supported benefit +* [getRequirements](docs/sdks/companybenefits/README.md#getrequirements) - Get benefit fields requirements by benefit type * [list](docs/sdks/companybenefits/README.md#list) - Get benefits for a company * [create](docs/sdks/companybenefits/README.md#create) - Create a company benefit * [get](docs/sdks/companybenefits/README.md#get) - Get a company benefit * [update](docs/sdks/companybenefits/README.md#update) - Update a company benefit * [delete](docs/sdks/companybenefits/README.md#delete) - Delete a company benefit -* [getAll](docs/sdks/companybenefits/README.md#getall) - Get all supported benefits -* [getSupported](docs/sdks/companybenefits/README.md#getsupported) - Get a supported benefit -* [getSummary](docs/sdks/companybenefits/README.md#getsummary) - Get company benefit summary by company benefit id. * [getEmployeeBenefits](docs/sdks/companybenefits/README.md#getemployeebenefits) - Get all employee benefits for a company benefit * [updateEmployeeBenefits](docs/sdks/companybenefits/README.md#updateemployeebenefits) - Bulk update employee benefits for a company benefit -* [getRequirements](docs/sdks/companybenefits/README.md#getrequirements) - Get benefit fields requirements by benefit type +* [getSummary](docs/sdks/companybenefits/README.md#getsummary) - Get company benefit summary by company benefit id. * [getV1CompanyBenefitsCompanyBenefitIdContributionExclusions](docs/sdks/companybenefits/README.md#getv1companybenefitscompanybenefitidcontributionexclusions) - Get contribution exclusions for a company benefit * [putV1CompanyBenefitsCompanyBenefitIdContributionExclusions](docs/sdks/companybenefits/README.md#putv1companybenefitscompanybenefitidcontributionexclusions) - Update contribution exclusions for a company benefit @@ -370,6 +376,18 @@ public class Application { * [getPdf](docs/sdks/companyforms/README.md#getpdf) - Get a company form pdf * [sign](docs/sdks/companyforms/README.md#sign) - Sign a company form +### [ContractorPayments](docs/sdks/contractorpayments/README.md) + +* [getV1ContractorsContractorUuidPayments](docs/sdks/contractorpayments/README.md#getv1contractorscontractoruuidpayments) - Get contractor payments +* [getV1ContractorPaymentsContractorPaymentIdPdf](docs/sdks/contractorpayments/README.md#getv1contractorpaymentscontractorpaymentidpdf) - Get a contractor payment PDF +* [list](docs/sdks/contractorpayments/README.md#list) - Get contractor payments for a company +* [create](docs/sdks/contractorpayments/README.md#create) - Create a contractor payment +* [get](docs/sdks/contractorpayments/README.md#get) - Get a single contractor payment +* [delete](docs/sdks/contractorpayments/README.md#delete) - Cancel a contractor payment +* [preview](docs/sdks/contractorpayments/README.md#preview) - Preview contractor payment debit date +* [getReceipt](docs/sdks/contractorpayments/README.md#getreceipt) - Get a single contractor payment receipt +* [fund](docs/sdks/contractorpayments/README.md#fund) - Fund a contractor payment [DEMO] + ### [ContractorDocuments](docs/sdks/contractordocuments/README.md) * [getAll](docs/sdks/contractordocuments/README.md#getall) - Get all contractor documents @@ -386,12 +404,12 @@ public class Application { ### [ContractorPaymentGroups](docs/sdks/contractorpaymentgroups/README.md) +* [preview](docs/sdks/contractorpaymentgroups/README.md#preview) - Preview a contractor payment group +* [fund](docs/sdks/contractorpaymentgroups/README.md#fund) - Fund a contractor payment group [DEMO] * [getList](docs/sdks/contractorpaymentgroups/README.md#getlist) - Get contractor payment groups for a company * [create](docs/sdks/contractorpaymentgroups/README.md#create) - Create a contractor payment group -* [preview](docs/sdks/contractorpaymentgroups/README.md#preview) - Preview a contractor payment group * [get](docs/sdks/contractorpaymentgroups/README.md#get) - Get a contractor payment group * [delete](docs/sdks/contractorpaymentgroups/README.md#delete) - Cancel a contractor payment group -* [fund](docs/sdks/contractorpaymentgroups/README.md#fund) - Fund a contractor payment group [DEMO] * [getV1ContractorPaymentGroupsIdPartnerDisbursements](docs/sdks/contractorpaymentgroups/README.md#getv1contractorpaymentgroupsidpartnerdisbursements) - Get partner disbursements for a contractor payment group * [patchV1ContractorPaymentGroupsIdPartnerDisbursements](docs/sdks/contractorpaymentgroups/README.md#patchv1contractorpaymentgroupsidpartnerdisbursements) - Update partner disbursements for a contractor payment group @@ -405,26 +423,8 @@ public class Application { * [createBankAccount](docs/sdks/contractorpaymentmethods/README.md#createbankaccount) - Create a contractor bank account -### [ContractorPayments](docs/sdks/contractorpayments/README.md) - -* [getReceipt](docs/sdks/contractorpayments/README.md#getreceipt) - Get a single contractor payment receipt -* [fund](docs/sdks/contractorpayments/README.md#fund) - Fund a contractor payment [DEMO] -* [list](docs/sdks/contractorpayments/README.md#list) - Get contractor payments for a company -* [create](docs/sdks/contractorpayments/README.md#create) - Create a contractor payment -* [get](docs/sdks/contractorpayments/README.md#get) - Get a single contractor payment -* [delete](docs/sdks/contractorpayments/README.md#delete) - Cancel a contractor payment -* [preview](docs/sdks/contractorpayments/README.md#preview) - Preview contractor payment debit date -* [getV1ContractorPaymentsContractorPaymentIdPdf](docs/sdks/contractorpayments/README.md#getv1contractorpaymentscontractorpaymentidpdf) - Get a contractor payment PDF - ### [Contractors](docs/sdks/contractors/README.md) -* [list](docs/sdks/contractors/README.md#list) - Get contractors of a company -* [create](docs/sdks/contractors/README.md#create) - Create a contractor -* [get](docs/sdks/contractors/README.md#get) - Get a contractor -* [update](docs/sdks/contractors/README.md#update) - Update a contractor -* [delete](docs/sdks/contractors/README.md#delete) - Delete a contractor -* [getOnboardingStatus](docs/sdks/contractors/README.md#getonboardingstatus) - Get the contractor's onboarding status -* [updateOnboardingStatus](docs/sdks/contractors/README.md#updateonboardingstatus) - Change the contractor's onboarding status * [getAddress](docs/sdks/contractors/README.md#getaddress) - Get a contractor address * [updateAddress](docs/sdks/contractors/README.md#updateaddress) - Create or update a contractor's address * [getV1CompaniesCompanyIdContractorsPaymentDetails](docs/sdks/contractors/README.md#getv1companiescompanyidcontractorspaymentdetails) - List contractor payment details @@ -432,16 +432,23 @@ public class Application { * [deleteV1ContractorsContractorUuidRehire](docs/sdks/contractors/README.md#deletev1contractorscontractoruuidrehire) - Cancel a pending contractor rehire * [postV1ContractorsContractorUuidTermination](docs/sdks/contractors/README.md#postv1contractorscontractoruuidtermination) - Schedule a contractor termination * [deleteV1ContractorsContractorUuidTermination](docs/sdks/contractors/README.md#deletev1contractorscontractoruuidtermination) - Cancel a pending contractor termination +* [get](docs/sdks/contractors/README.md#get) - Get a contractor +* [update](docs/sdks/contractors/README.md#update) - Update a contractor +* [delete](docs/sdks/contractors/README.md#delete) - Delete a contractor +* [list](docs/sdks/contractors/README.md#list) - Get contractors of a company +* [create](docs/sdks/contractors/README.md#create) - Create a contractor +* [getOnboardingStatus](docs/sdks/contractors/README.md#getonboardingstatus) - Get the contractor's onboarding status +* [updateOnboardingStatus](docs/sdks/contractors/README.md#updateonboardingstatus) - Change the contractor's onboarding status ### [Departments](docs/sdks/departments/README.md) -* [getAll](docs/sdks/departments/README.md#getall) - Get all departments of a company -* [create](docs/sdks/departments/README.md#create) - Create a department * [get](docs/sdks/departments/README.md#get) - Get a department * [update](docs/sdks/departments/README.md#update) - Update a department * [delete](docs/sdks/departments/README.md#delete) - Delete a department * [addPeople](docs/sdks/departments/README.md#addpeople) - Add people to a department * [removePeople](docs/sdks/departments/README.md#removepeople) - Remove people from a department +* [getAll](docs/sdks/departments/README.md#getall) - Get all departments of a company +* [create](docs/sdks/departments/README.md#create) - Create a department ### [EarningTypes](docs/sdks/earningtypes/README.md) @@ -479,24 +486,24 @@ public class Application { ### [EmployeeEmployments](docs/sdks/employeeemployments/README.md) -* [getTerminations](docs/sdks/employeeemployments/README.md#getterminations) - Get terminations for an employee -* [createTermination](docs/sdks/employeeemployments/README.md#createtermination) - Create an employee termination -* [deleteTermination](docs/sdks/employeeemployments/README.md#deletetermination) - Delete an employee termination -* [updateTermination](docs/sdks/employeeemployments/README.md#updatetermination) - Update an employee termination * [getRehire](docs/sdks/employeeemployments/README.md#getrehire) - Get an employee rehire * [createRehire](docs/sdks/employeeemployments/README.md#createrehire) - Create an employee rehire * [rehire](docs/sdks/employeeemployments/README.md#rehire) - Update an employee rehire * [deleteRehire](docs/sdks/employeeemployments/README.md#deleterehire) - Delete an employee rehire * [getHistory](docs/sdks/employeeemployments/README.md#gethistory) - Get employment history for an employee +* [getTerminations](docs/sdks/employeeemployments/README.md#getterminations) - Get terminations for an employee +* [createTermination](docs/sdks/employeeemployments/README.md#createtermination) - Create an employee termination +* [deleteTermination](docs/sdks/employeeemployments/README.md#deletetermination) - Delete an employee termination +* [updateTermination](docs/sdks/employeeemployments/README.md#updatetermination) - Update an employee termination * [getV1TerminationsEmployeeId](docs/sdks/employeeemployments/README.md#getv1terminationsemployeeid) - Get an employee termination ### [EmployeeForms](docs/sdks/employeeforms/README.md) -* [generateW2](docs/sdks/employeeforms/README.md#generatew2) - Generate a W2 form [DEMO] * [list](docs/sdks/employeeforms/README.md#list) - Get all employee forms * [get](docs/sdks/employeeforms/README.md#get) - Get an employee form * [getPdf](docs/sdks/employeeforms/README.md#getpdf) - Get the employee form pdf * [sign](docs/sdks/employeeforms/README.md#sign) - Sign an employee form +* [generateW2](docs/sdks/employeeforms/README.md#generatew2) - Generate a W2 form [DEMO] ### [EmployeePaymentMethod](docs/sdks/employeepaymentmethod/README.md) @@ -512,18 +519,18 @@ public class Application { ### [Employees](docs/sdks/employees/README.md) -* [list](docs/sdks/employees/README.md#list) - Get employees of a company -* [create](docs/sdks/employees/README.md#create) - Create an employee +* [getCustomFields](docs/sdks/employees/README.md#getcustomfields) - Get an employee's custom fields * [getV1CompaniesCompanyIdEmployeesPaymentDetails](docs/sdks/employees/README.md#getv1companiescompanyidemployeespaymentdetails) - Get employee payment details for a company -* [createHistorical](docs/sdks/employees/README.md#createhistorical) - Create a historical employee +* [getTimeOffActivities](docs/sdks/employees/README.md#gettimeoffactivities) - Get employee time off activities * [get](docs/sdks/employees/README.md#get) - Get an employee * [update](docs/sdks/employees/README.md#update) - Update an employee. * [delete](docs/sdks/employees/README.md#delete) - Delete an onboarding employee -* [getCustomFields](docs/sdks/employees/README.md#getcustomfields) - Get an employee's custom fields -* [updateOnboardingDocumentsConfig](docs/sdks/employees/README.md#updateonboardingdocumentsconfig) - Update employee onboarding documents config +* [list](docs/sdks/employees/README.md#list) - Get employees of a company +* [create](docs/sdks/employees/README.md#create) - Create an employee * [getOnboardingStatus](docs/sdks/employees/README.md#getonboardingstatus) - Get the employee's onboarding status * [updateOnboardingStatus](docs/sdks/employees/README.md#updateonboardingstatus) - Update the employee's onboarding status -* [getTimeOffActivities](docs/sdks/employees/README.md#gettimeoffactivities) - Get employee time off activities +* [updateOnboardingDocumentsConfig](docs/sdks/employees/README.md#updateonboardingdocumentsconfig) - Update employee onboarding documents config +* [createHistorical](docs/sdks/employees/README.md#createhistorical) - Create a historical employee ### [EmployeeTaxSetup](docs/sdks/employeetaxsetup/README.md) @@ -540,13 +547,13 @@ public class Application { * [get](docs/sdks/externalpayrolls/README.md#get) - Get external payrolls for a company * [create](docs/sdks/externalpayrolls/README.md#create) - Create an external payroll for a company +* [listTaxLiabilities](docs/sdks/externalpayrolls/README.md#listtaxliabilities) - Get tax liabilities +* [updateTaxLiabilities](docs/sdks/externalpayrolls/README.md#updatetaxliabilities) - Update tax liabilities +* [finalizeTaxLiabilities](docs/sdks/externalpayrolls/README.md#finalizetaxliabilities) - Finalize tax liabilities options and convert into processed payrolls * [retrieve](docs/sdks/externalpayrolls/README.md#retrieve) - Get an external payroll * [update](docs/sdks/externalpayrolls/README.md#update) - Update an external payroll * [delete](docs/sdks/externalpayrolls/README.md#delete) - Delete an external payroll * [calculateTaxes](docs/sdks/externalpayrolls/README.md#calculatetaxes) - Get tax suggestions for an external payroll -* [listTaxLiabilities](docs/sdks/externalpayrolls/README.md#listtaxliabilities) - Get tax liabilities -* [updateTaxLiabilities](docs/sdks/externalpayrolls/README.md#updatetaxliabilities) - Update tax liabilities -* [finalizeTaxLiabilities](docs/sdks/externalpayrolls/README.md#finalizetaxliabilities) - Finalize tax liabilities options and convert into processed payrolls ### [FederalTaxDetails](docs/sdks/federaltaxdetails/README.md) @@ -561,9 +568,9 @@ public class Application { * [list](docs/sdks/garnishments/README.md#list) - Get garnishments for an employee * [create](docs/sdks/garnishments/README.md#create) - Create a garnishment +* [getChildSupportData](docs/sdks/garnishments/README.md#getchildsupportdata) - Get child support garnishment data * [get](docs/sdks/garnishments/README.md#get) - Get a garnishment * [update](docs/sdks/garnishments/README.md#update) - Update a garnishment -* [getChildSupportData](docs/sdks/garnishments/README.md#getchildsupportdata) - Get child support garnishment data ### [GeneratedDocuments](docs/sdks/generateddocuments/README.md) @@ -605,8 +612,8 @@ public class Application { ### [Introspection](docs/sdks/introspection/README.md) -* [getInfo](docs/sdks/introspection/README.md#getinfo) - Get info about the current access token * [oauthAccessToken](docs/sdks/introspection/README.md#oauthaccesstoken) - Create a System Access Token or Refresh an Access Token +* [getInfo](docs/sdks/introspection/README.md#getinfo) - Get info about the current access token ### [Invoices](docs/sdks/invoices/README.md) @@ -614,35 +621,49 @@ public class Application { ### [JobsAndCompensations](docs/sdks/jobsandcompensations/README.md) -* [getJobs](docs/sdks/jobsandcompensations/README.md#getjobs) - Get jobs for an employee -* [createJob](docs/sdks/jobsandcompensations/README.md#createjob) - Create a job -* [getJob](docs/sdks/jobsandcompensations/README.md#getjob) - Get a job -* [update](docs/sdks/jobsandcompensations/README.md#update) - Update a job -* [delete](docs/sdks/jobsandcompensations/README.md#delete) - Delete an individual job * [getCompensations](docs/sdks/jobsandcompensations/README.md#getcompensations) - Get compensations for a job * [createCompensation](docs/sdks/jobsandcompensations/README.md#createcompensation) - Create a compensation * [getCompensation](docs/sdks/jobsandcompensations/README.md#getcompensation) - Get a compensation * [updateCompensation](docs/sdks/jobsandcompensations/README.md#updatecompensation) - Update a compensation * [deleteCompensation](docs/sdks/jobsandcompensations/README.md#deletecompensation) - Delete a compensation +* [getJob](docs/sdks/jobsandcompensations/README.md#getjob) - Get a job +* [update](docs/sdks/jobsandcompensations/README.md#update) - Update a job +* [delete](docs/sdks/jobsandcompensations/README.md#delete) - Delete an individual job +* [getJobs](docs/sdks/jobsandcompensations/README.md#getjobs) - Get jobs for an employee +* [createJob](docs/sdks/jobsandcompensations/README.md#createjob) - Create a job ### [Locations](docs/sdks/locations/README.md) -* [get](docs/sdks/locations/README.md#get) - Get all company locations -* [create](docs/sdks/locations/README.md#create) - Create a company location +* [getMinimumWages](docs/sdks/locations/README.md#getminimumwages) - Get minimum wages for a location * [retrieve](docs/sdks/locations/README.md#retrieve) - Get a location * [update](docs/sdks/locations/README.md#update) - Update a location -* [getMinimumWages](docs/sdks/locations/README.md#getminimumwages) - Get minimum wages for a location +* [get](docs/sdks/locations/README.md#get) - Get all company locations +* [create](docs/sdks/locations/README.md#create) - Create a company location + +### [MemberPortalInvitations](docs/sdks/memberportalinvitations/README.md) + +* [postV1EmployeesEmployeeIdMemberPortalInvitations](docs/sdks/memberportalinvitations/README.md#postv1employeesemployeeidmemberportalinvitations) - Create an employee member portal invitation +* [getV1EmployeesEmployeeIdMemberPortalInvitations](docs/sdks/memberportalinvitations/README.md#getv1employeesemployeeidmemberportalinvitations) - Get an employee member portal invitation +* [deleteV1EmployeesEmployeeIdMemberPortalInvitations](docs/sdks/memberportalinvitations/README.md#deletev1employeesemployeeidmemberportalinvitations) - Cancel an employee member portal invitation +* [postV1ContractorsContractorUuidMemberPortalInvitations](docs/sdks/memberportalinvitations/README.md#postv1contractorscontractoruuidmemberportalinvitations) - Create a contractor member portal invitation +* [getV1ContractorsContractorUuidMemberPortalInvitations](docs/sdks/memberportalinvitations/README.md#getv1contractorscontractoruuidmemberportalinvitations) - Get a contractor member portal invitation +* [deleteV1ContractorsContractorUuidMemberPortalInvitations](docs/sdks/memberportalinvitations/README.md#deletev1contractorscontractoruuidmemberportalinvitations) - Cancel a contractor member portal invitation ### [Notifications](docs/sdks/notifications/README.md) -* [getDetails](docs/sdks/notifications/README.md#getdetails) - Get a notification's details * [getCompanyNotifications](docs/sdks/notifications/README.md#getcompanynotifications) - Get notifications for company +* [getDetails](docs/sdks/notifications/README.md#getdetails) - Get a notification's details ### [PaymentConfigs](docs/sdks/paymentconfigs/README.md) * [get](docs/sdks/paymentconfigs/README.md#get) - Get a company's payment configs * [update](docs/sdks/paymentconfigs/README.md#update) - Update a company's payment configs +### [PayrollCancellations](docs/sdks/payrollcancellations/README.md) + +* [postV1PayrollBatches](docs/sdks/payrollcancellations/README.md#postv1payrollbatches) - Create a payroll cancellation batch +* [getV1PayrollBatchesPayrollBatchUuid](docs/sdks/payrollcancellations/README.md#getv1payrollbatchespayrollbatchuuid) - Get a payroll cancellation batch + ### [PayrollDigests](docs/sdks/payrolldigests/README.md) * [postV1PayrollDigests](docs/sdks/payrolldigests/README.md#postv1payrolldigests) - Create a payroll digest batch @@ -650,38 +671,38 @@ public class Application { ### [Payrolls](docs/sdks/payrolls/README.md) -* [list](docs/sdks/payrolls/README.md#list) - Get all payrolls for a company -* [createOffCycle](docs/sdks/payrolls/README.md#createoffcycle) - Create an off-cycle payroll +* [generatePrintableChecks](docs/sdks/payrolls/README.md#generateprintablechecks) - Generate printable payroll checks (pdf) +* [getPayStubs](docs/sdks/payrolls/README.md#getpaystubs) - Get an employee's pay stubs +* [getPayStub](docs/sdks/payrolls/README.md#getpaystub) - Get an employee pay stub (pdf) +* [getV1CompaniesCompanyIdPayrollsIdPartnerDisbursements](docs/sdks/payrolls/README.md#getv1companiescompanyidpayrollsidpartnerdisbursements) - Get partner disbursements for a payroll +* [patchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements](docs/sdks/payrolls/README.md#patchv1companiescompanyidpayrollsidpartnerdisbursements) - Update partner disbursements for a payroll * [getApprovedReversals](docs/sdks/payrolls/README.md#getapprovedreversals) - Get approved payroll reversals * [get](docs/sdks/payrolls/README.md#get) - Get a single payroll * [update](docs/sdks/payrolls/README.md#update) - Update a payroll by ID * [delete](docs/sdks/payrolls/README.md#delete) - Delete a payroll -* [prepare](docs/sdks/payrolls/README.md#prepare) - Prepare a payroll for update +* [list](docs/sdks/payrolls/README.md#list) - Get all payrolls for a company +* [createOffCycle](docs/sdks/payrolls/README.md#createoffcycle) - Create an off-cycle payroll * [getReceipt](docs/sdks/payrolls/README.md#getreceipt) - Get a single payroll receipt +* [cancel](docs/sdks/payrolls/README.md#cancel) - Cancel a payroll +* [prepare](docs/sdks/payrolls/README.md#prepare) - Prepare a payroll for update +* [calculate](docs/sdks/payrolls/README.md#calculate) - Calculate a payroll * [getBlockers](docs/sdks/payrolls/README.md#getblockers) - Get all payroll blockers for a company * [skip](docs/sdks/payrolls/README.md#skip) - Skip a payroll -* [calculateGrossUp](docs/sdks/payrolls/README.md#calculategrossup) - Calculate gross up for a payroll -* [calculate](docs/sdks/payrolls/README.md#calculate) - Calculate a payroll * [submit](docs/sdks/payrolls/README.md#submit) - Submit payroll -* [cancel](docs/sdks/payrolls/README.md#cancel) - Cancel a payroll -* [getPayStub](docs/sdks/payrolls/README.md#getpaystub) - Get an employee pay stub (pdf) -* [getPayStubs](docs/sdks/payrolls/README.md#getpaystubs) - Get an employee's pay stubs -* [generatePrintableChecks](docs/sdks/payrolls/README.md#generateprintablechecks) - Generate printable payroll checks (pdf) -* [getV1CompaniesCompanyIdPayrollsIdPartnerDisbursements](docs/sdks/payrolls/README.md#getv1companiescompanyidpayrollsidpartnerdisbursements) - Get partner disbursements for a payroll -* [patchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements](docs/sdks/payrolls/README.md#patchv1companiescompanyidpayrollsidpartnerdisbursements) - Update partner disbursements for a payroll +* [calculateGrossUp](docs/sdks/payrolls/README.md#calculategrossup) - Calculate gross up for a payroll ### [PaySchedules](docs/sdks/payschedules/README.md) +* [getPayPeriods](docs/sdks/payschedules/README.md#getpayperiods) - Get pay periods for a company +* [getUnprocessedTerminationPeriods](docs/sdks/payschedules/README.md#getunprocessedterminationperiods) - Get termination pay periods for a company * [getAll](docs/sdks/payschedules/README.md#getall) - Get the pay schedules for a company * [create](docs/sdks/payschedules/README.md#create) - Create a new pay schedule * [getPreview](docs/sdks/payschedules/README.md#getpreview) - Preview pay schedule dates * [get](docs/sdks/payschedules/README.md#get) - Get a pay schedule * [update](docs/sdks/payschedules/README.md#update) - Update a pay schedule -* [getPayPeriods](docs/sdks/payschedules/README.md#getpayperiods) - Get pay periods for a company -* [getUnprocessedTerminationPeriods](docs/sdks/payschedules/README.md#getunprocessedterminationperiods) - Get termination pay periods for a company -* [getAssignments](docs/sdks/payschedules/README.md#getassignments) - Get pay schedule assignments for a company * [previewAssignment](docs/sdks/payschedules/README.md#previewassignment) - Preview pay schedule assignments for a company * [assign](docs/sdks/payschedules/README.md#assign) - Assign pay schedules for a company +* [getAssignments](docs/sdks/payschedules/README.md#getassignments) - Get pay schedule assignments for a company ### [PeopleBatches](docs/sdks/peoplebatches/README.md) @@ -703,11 +724,17 @@ public class Application { ### [Reports](docs/sdks/reports/README.md) +* [postV1BulkReports](docs/sdks/reports/README.md#postv1bulkreports) - Create a bulk report batch +* [getV1BulkReportsRequestUuid](docs/sdks/reports/README.md#getv1bulkreportsrequestuuid) - Get a bulk report batch +* [postV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage](docs/sdks/reports/README.md#postv1companiescompanyidreportsemployeesannualficawage) - Create an employees annual FICA wage report * [createCustom](docs/sdks/reports/README.md#createcustom) - Create a custom report * [postPayrollsPayrollUuidReportsGeneralLedger](docs/sdks/reports/README.md#postpayrollspayrolluuidreportsgeneralledger) - Create a general ledger report * [getReportsRequestUuid](docs/sdks/reports/README.md#getreportsrequestuuid) - Get a report * [getTemplate](docs/sdks/reports/README.md#gettemplate) - Get a report template -* [postV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage](docs/sdks/reports/README.md#postv1companiescompanyidreportsemployeesannualficawage) - Create an employees annual FICA wage report + +### [ReverseWireTransactions](docs/sdks/reversewiretransactions/README.md) + +* [getReverseWireTransactions](docs/sdks/reversewiretransactions/README.md#getreversewiretransactions) - Get all reverse wire transactions for a company ### [SalaryEstimates](docs/sdks/salaryestimates/README.md) @@ -725,11 +752,16 @@ public class Application { * [update](docs/sdks/signatories/README.md#update) - Update a signatory * [delete](docs/sdks/signatories/README.md#delete) - Delete a signatory +### [TaxPayments](docs/sdks/taxpayments/README.md) + +* [getTaxPayments](docs/sdks/taxpayments/README.md#gettaxpayments) - Get all tax payments for a company +* [getTaxPayment](docs/sdks/taxpayments/README.md#gettaxpayment) - Get a tax payment for a company + ### [TaxRequirements](docs/sdks/taxrequirements/README.md) +* [getAll](docs/sdks/taxrequirements/README.md#getall) - Get all tax requirements for a company * [get](docs/sdks/taxrequirements/README.md#get) - Get tax requirements for a state * [updateState](docs/sdks/taxrequirements/README.md#updatestate) - Update tax requirements for a state -* [getAll](docs/sdks/taxrequirements/README.md#getall) - Get all tax requirements for a company ### [TimeOffRequests](docs/sdks/timeoffrequests/README.md) @@ -746,14 +778,14 @@ public class Application { ### [TimeOffPolicies](docs/sdks/timeoffpolicies/README.md) * [calculateAccruingTimeOffHours](docs/sdks/timeoffpolicies/README.md#calculateaccruingtimeoffhours) - Calculate accruing time off hours -* [get](docs/sdks/timeoffpolicies/README.md#get) - Get a time off policy -* [update](docs/sdks/timeoffpolicies/README.md#update) - Update a time off policy * [getAll](docs/sdks/timeoffpolicies/README.md#getall) - Get all time off policies for a company * [create](docs/sdks/timeoffpolicies/README.md#create) - Create a time off policy +* [get](docs/sdks/timeoffpolicies/README.md#get) - Get a time off policy +* [update](docs/sdks/timeoffpolicies/README.md#update) - Update a time off policy +* [deactivate](docs/sdks/timeoffpolicies/README.md#deactivate) - Deactivate a time off policy * [addEmployees](docs/sdks/timeoffpolicies/README.md#addemployees) - Add employees to a time off policy * [removeEmployees](docs/sdks/timeoffpolicies/README.md#removeemployees) - Remove employees from a time off policy * [updateBalance](docs/sdks/timeoffpolicies/README.md#updatebalance) - Update employee time off balances -* [deactivate](docs/sdks/timeoffpolicies/README.md#deactivate) - Deactivate a time off policy ### [Webhooks](docs/sdks/webhooks/README.md) @@ -762,8 +794,8 @@ public class Application { * [getSubscription](docs/sdks/webhooks/README.md#getsubscription) - Get a webhook subscription * [updateSubscription](docs/sdks/webhooks/README.md#updatesubscription) - Update a webhook subscription * [deleteSubscription](docs/sdks/webhooks/README.md#deletesubscription) - Delete a webhook subscription -* [verify](docs/sdks/webhooks/README.md#verify) - Verify a webhook subscription * [requestVerificationToken](docs/sdks/webhooks/README.md#requestverificationtoken) - Request a verification token for a webhook subscription +* [verify](docs/sdks/webhooks/README.md#verify) - Verify a webhook subscription * [getV1WebhooksHealthCheck](docs/sdks/webhooks/README.md#getv1webhookshealthcheck) - Get the webhooks health status ### [WireInRequests](docs/sdks/wireinrequests/README.md) @@ -797,10 +829,9 @@ Handling errors in this SDK should largely match your expectations. All operatio package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; -import com.gusto.embedded_api_v_2025_11_15.models.components.*; -import com.gusto.embedded_api_v_2025_11_15.models.errors.GustoEmbeddedException; -import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api_v_2025_11_15.models.operations.*; +import com.gusto.embedded_api_v_2025_11_15.models.errors.*; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetAchTransactionsRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetAchTransactionsResponse; import java.io.UncheckedIOException; import java.lang.Exception; import java.util.List; @@ -808,31 +839,23 @@ import java.util.Optional; public class Application { - public static void main(String[] args) throws UnprocessableEntityError, Exception { + public static void main(String[] args) throws NotFoundErrorObject, Exception { GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); try { - PostV1PartnerManagedCompaniesResponse res = sdk.companies().createPartnerManaged() - .security(PostV1PartnerManagedCompaniesSecurity.builder() - .systemAccessAuth(System.getenv().getOrDefault("SYSTEM_ACCESS_AUTH", "")) - .build()) - .xGustoAPIVersion(PostV1PartnerManagedCompaniesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) - .partnerManagedCompanyCreateRequest(PartnerManagedCompanyCreateRequest.builder() - .user(User.builder() - .firstName("Marco") - .lastName("Trantow") - .email("Jewell_Greenholt72@hotmail.com") - .build()) - .company(PartnerManagedCompanyCreateRequestCompany.builder() - .name("") - .build()) - .build()) + GetAchTransactionsRequest req = GetAchTransactionsRequest.builder() + .companyUuid("") + .build(); + + GetAchTransactionsResponse res = sdk.achTransactions().getAll() + .request(req) .call(); - if (res.partnerManagedCompany().isPresent()) { - System.out.println(res.partnerManagedCompany().get()); + if (res.achTransactionList().isPresent()) { + System.out.println(res.achTransactionList().get()); } } catch (GustoEmbeddedException ex) { // all SDK exceptions inherit from GustoEmbeddedException @@ -849,11 +872,11 @@ public class Application { // different error subclasses may be thrown // depending on the service call - if (ex instanceof UnprocessableEntityError) { - var e = (UnprocessableEntityError) ex; + if (ex instanceof NotFoundErrorObject) { + var e = (NotFoundErrorObject) ex; // Check error data fields e.data().ifPresent(payload -> { - List errors = payload.errors(); + List errors = payload.errors(); }); } @@ -874,7 +897,7 @@ public class Application { * [`GustoEmbeddedException`](./src/main/java/models/errors/GustoEmbeddedException.java): The base class for HTTP error responses. * [`com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject`](./src/main/java/models/errors/com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject.java): Not Found The requested resource does not exist. Make sure the provided ID/UUID is valid. * -

    Less common errors (11) +
    Less common errors (13)
    @@ -884,11 +907,13 @@ public class Application { many more subclasses in the JDK platform). **Inherit from [`GustoEmbeddedException`](./src/main/java/models/errors/GustoEmbeddedException.java)**: -* [`com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError`](./src/main/java/models/errors/com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError.java): Unprocessable Entity This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. Applicable to 159 of 299 methods.* -* [`com.gusto.embedded_api_v_2025_11_15.models.errors.ConflictErrorObject`](./src/main/java/models/errors/com.gusto.embedded_api_v_2025_11_15.models.errors.ConflictErrorObject.java): Conflict This error occurs when the resource version provided does not match the current version. Retrieve the latest version and retry. Status code `409`. Applicable to 2 of 299 methods.* -* [`com.gusto.embedded_api_v_2025_11_15.models.errors.PeopleBatchConflictError`](./src/main/java/models/errors/com.gusto.embedded_api_v_2025_11_15.models.errors.PeopleBatchConflictError.java): Error response when a people batch idempotency key conflict occurs. Status code `409`. Applicable to 1 of 299 methods.* -* [`com.gusto.embedded_api_v_2025_11_15.models.errors.PayrollDigestConflictError`](./src/main/java/models/errors/com.gusto.embedded_api_v_2025_11_15.models.errors.PayrollDigestConflictError.java): Error response when a payroll digest idempotency key has already been used by the same partner. Status code `409`. Applicable to 1 of 299 methods.* -* [`com.gusto.embedded_api_v_2025_11_15.models.errors.PayrollBlockersError`](./src/main/java/models/errors/com.gusto.embedded_api_v_2025_11_15.models.errors.PayrollBlockersError.java): Payroll Blockers Error For detailed information, see the [Payroll Blockers guide](https://docs.gusto.com/embedded-payroll/docs/payroll-blockers). Status code `422`. Applicable to 1 of 299 methods.* +* [`com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError`](./src/main/java/models/errors/com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError.java): Unprocessable Entity This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. Applicable to 172 of 314 methods.* +* [`com.gusto.embedded_api_v_2025_11_15.models.errors.ConflictErrorObject`](./src/main/java/models/errors/com.gusto.embedded_api_v_2025_11_15.models.errors.ConflictErrorObject.java): Conflict This may happen when the resource version provided does not match the current version — retrieve the latest version and retry — or when the request conflicts with another in-progress operation on the same resource. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. Status code `409`. Applicable to 3 of 314 methods.* +* [`com.gusto.embedded_api_v_2025_11_15.models.errors.ForbiddenErrorObject`](./src/main/java/models/errors/com.gusto.embedded_api_v_2025_11_15.models.errors.ForbiddenErrorObject.java): Forbidden The targeted company has been archived because its EIN was reassigned to a replacement company. Use the replacement company referenced in the error metadata. Status code `403`. Applicable to 1 of 314 methods.* +* [`com.gusto.embedded_api_v_2025_11_15.models.errors.PayrollBatchConflictError`](./src/main/java/models/errors/com.gusto.embedded_api_v_2025_11_15.models.errors.PayrollBatchConflictError.java): Error response when a payroll cancellation idempotency key has already been used by the same partner. Status code `409`. Applicable to 1 of 314 methods.* +* [`com.gusto.embedded_api_v_2025_11_15.models.errors.PayrollDigestConflictError`](./src/main/java/models/errors/com.gusto.embedded_api_v_2025_11_15.models.errors.PayrollDigestConflictError.java): Error response when a payroll digest idempotency key has already been used by the same partner. Status code `409`. Applicable to 1 of 314 methods.* +* [`com.gusto.embedded_api_v_2025_11_15.models.errors.PeopleBatchConflictError`](./src/main/java/models/errors/com.gusto.embedded_api_v_2025_11_15.models.errors.PeopleBatchConflictError.java): Error response when a people batch idempotency key conflict occurs. Status code `409`. Applicable to 1 of 314 methods.* +* [`com.gusto.embedded_api_v_2025_11_15.models.errors.PayrollBlockersError`](./src/main/java/models/errors/com.gusto.embedded_api_v_2025_11_15.models.errors.PayrollBlockersError.java): Payroll Blockers Error For detailed information, see the [Payroll Blockers guide](https://docs.gusto.com/embedded-payroll/docs/payroll-blockers). Status code `422`. Applicable to 1 of 314 methods.*
    @@ -914,25 +939,30 @@ You can override the default server globally using the `.server(AvailableServers package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1TokenInfoResponse; -import com.gusto.embedded_api_v_2025_11_15.models.operations.XGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetAchTransactionsRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetAchTransactionsResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws Exception { + public static void main(String[] args) throws NotFoundErrorObject, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .server(GustoEmbedded.AvailableServers.DEMO) .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1TokenInfoResponse res = sdk.introspection().getInfo() - .xGustoAPIVersion(XGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + GetAchTransactionsRequest req = GetAchTransactionsRequest.builder() + .companyUuid("") + .build(); + + GetAchTransactionsResponse res = sdk.achTransactions().getAll() + .request(req) .call(); - if (res.tokenInfo().isPresent()) { - System.out.println(res.tokenInfo().get()); + if (res.achTransactionList().isPresent()) { + System.out.println(res.achTransactionList().get()); } } } @@ -945,25 +975,30 @@ The default server can also be overridden globally using the `.serverURL(String package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1TokenInfoResponse; -import com.gusto.embedded_api_v_2025_11_15.models.operations.XGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetAchTransactionsRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetAchTransactionsResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws Exception { + public static void main(String[] args) throws NotFoundErrorObject, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .serverURL("https://api.gusto-demo.com") .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1TokenInfoResponse res = sdk.introspection().getInfo() - .xGustoAPIVersion(XGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + GetAchTransactionsRequest req = GetAchTransactionsRequest.builder() + .companyUuid("") + .build(); + + GetAchTransactionsResponse res = sdk.achTransactions().getAll() + .request(req) .call(); - if (res.tokenInfo().isPresent()) { - System.out.println(res.tokenInfo().get()); + if (res.achTransactionList().isPresent()) { + System.out.println(res.achTransactionList().get()); } } } diff --git a/gusto_embedded_v_2025_11_15/USAGE.md b/gusto_embedded_v_2025_11_15/USAGE.md index 34158a53f..e9a5e30f7 100644 --- a/gusto_embedded_v_2025_11_15/USAGE.md +++ b/gusto_embedded_v_2025_11_15/USAGE.md @@ -3,24 +3,29 @@ package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1TokenInfoResponse; -import com.gusto.embedded_api_v_2025_11_15.models.operations.XGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetAchTransactionsRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetAchTransactionsResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws Exception { + public static void main(String[] args) throws NotFoundErrorObject, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1TokenInfoResponse res = sdk.introspection().getInfo() - .xGustoAPIVersion(XGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + GetAchTransactionsRequest req = GetAchTransactionsRequest.builder() + .companyUuid("") + .build(); + + GetAchTransactionsResponse res = sdk.achTransactions().getAll() + .request(req) .call(); - if (res.tokenInfo().isPresent()) { - System.out.println(res.tokenInfo().get()); + if (res.achTransactionList().isPresent()) { + System.out.println(res.achTransactionList().get()); } } } diff --git a/gusto_embedded_v_2025_11_15/build.gradle b/gusto_embedded_v_2025_11_15/build.gradle index 7d5c0bd77..5c7665029 100644 --- a/gusto_embedded_v_2025_11_15/build.gradle +++ b/gusto_embedded_v_2025_11_15/build.gradle @@ -14,7 +14,6 @@ plugins { id 'java-library' id 'maven-publish' id 'signing' - id "io.spring.dependency-management" version "1.1.6" apply false } compileJava.options.encoding = "UTF-8" @@ -72,56 +71,16 @@ javadocJar { } dependencies { - api 'com.fasterxml.jackson.core:jackson-annotations:2.18.2' - implementation 'com.fasterxml.jackson.core:jackson-databind:2.18.2' - implementation 'com.fasterxml.jackson.datatype:jackson-datatype-jsr310:2.18.2' - implementation 'com.fasterxml.jackson.datatype:jackson-datatype-jdk8:2.18.2' + api 'com.fasterxml.jackson.core:jackson-annotations:2.22' + implementation 'com.fasterxml.jackson.core:jackson-databind:2.22.1' + implementation 'com.fasterxml.jackson.datatype:jackson-datatype-jsr310:2.22.0' + implementation 'com.fasterxml.jackson.datatype:jackson-datatype-jdk8:2.22.0' api('org.openapitools:jackson-databind-nullable:0.2.6') {exclude group: 'com.fasterxml.jackson.core', module: 'jackson-databind'} implementation 'commons-io:commons-io:2.18.0' implementation 'jakarta.annotation:jakarta.annotation-api:3.0.0' api 'org.reactivestreams:reactive-streams:1.0.4' } -ext { - springBootVersion = '2.7.18' -} - -subprojects { - if (name in [ - 'GustoEmbedded-spring-boot-autoconfigure', - 'GustoEmbedded-spring-boot-starter' - ]) { - // Ensure subprojects use the same group and version as root project - group = rootProject.group - version = rootProject.version - - apply { - plugin "java-library" - plugin "io.spring.dependency-management" - plugin "maven-publish" - plugin "signing" - } - dependencyManagement { - imports { - mavenBom "org.springframework.boot:spring-boot-dependencies:${rootProject.springBootVersion}" - } - } - repositories { - mavenCentral() - } - java { - withSourcesJar() - withJavadocJar() - } - tasks.withType(JavaCompile).configureEach { - options.release = 11 - } - - // Apply publishing configuration to all subprojects - they'll check for publishingConfig internally - apply from: rootProject.file('publishing.gradle') - } -} - ext { publishingConfig = [ groupId: group, diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/AchTransaction.md b/gusto_embedded_v_2025_11_15/docs/models/components/AchTransaction.md index b3783352c..f5c0589dc 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/AchTransaction.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/AchTransaction.md @@ -11,7 +11,7 @@ Representation of an ACH transaction | `companyUuid` | *Optional\* | :heavy_minus_sign: | Unique identifier of the company to which the ACH transaction belongs | | `paymentEventType` | [Optional\](../../models/components/PaymentEventType.md) | :heavy_minus_sign: | The type of payment event associated with the ACH transaction | | `paymentEventUuid` | *Optional\* | :heavy_minus_sign: | Unique identifier for the payment event associated with the ACH transaction | -| `recipientType` | [JsonNullable\](../../models/components/AchTransactionRecipientType.md) | :heavy_minus_sign: | The type of recipient associated with the ACH transaction | +| `recipientType` | [JsonNullable\](../../models/components/RecipientType.md) | :heavy_minus_sign: | The type of recipient associated with the ACH transaction | | `recipientUuid` | *Optional\* | :heavy_minus_sign: | Unique identifier for the recipient associated with the ACH transaction | | `errorCode` | *JsonNullable\* | :heavy_minus_sign: | The error code associated with the ACH transaction, if any. If there is no error on the ACH transaction, this field will be nil. See [this article](https://engineering.gusto.com/how-ach-works-a-developer-perspective-part-2/) for a complete list of ACH return codes. | | `transactionType` | *Optional\* | :heavy_minus_sign: | The type of transaction associated with the ACH transaction | diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/AchTransactionRecipientType.md b/gusto_embedded_v_2025_11_15/docs/models/components/AchTransactionRecipientType.md deleted file mode 100644 index 46c4f670b..000000000 --- a/gusto_embedded_v_2025_11_15/docs/models/components/AchTransactionRecipientType.md +++ /dev/null @@ -1,17 +0,0 @@ -# AchTransactionRecipientType - -## Example Usage - -```java -import com.gusto.embedded_api_v_2025_11_15.models.components.AchTransactionRecipientType; - -AchTransactionRecipientType value = AchTransactionRecipientType.EMPLOYEE; -``` - - -## Values - -| Name | Value | -| ------------ | ------------ | -| `EMPLOYEE` | Employee | -| `CONTRACTOR` | Contractor | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/Aggregation.md b/gusto_embedded_v_2025_11_15/docs/models/components/Aggregation.md index 7f05a765c..51a221d52 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/Aggregation.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/Aggregation.md @@ -1,6 +1,6 @@ # Aggregation -The breakdown of the report. Use 'default' for no split. +The breakdown of the report. Use `default` for no split. ## Example Usage diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/BatchAction.md b/gusto_embedded_v_2025_11_15/docs/models/components/BatchAction.md index a2e2913ed..4849122d6 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/BatchAction.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/BatchAction.md @@ -7,7 +7,7 @@ The action being performed on the batch. ```java import com.gusto.embedded_api_v_2025_11_15.models.components.BatchAction; -BatchAction value = BatchAction.CREATE; +BatchAction value = BatchAction.CANCEL; ``` @@ -15,4 +15,4 @@ BatchAction value = BatchAction.CREATE; | Name | Value | | -------- | -------- | -| `CREATE` | create | \ No newline at end of file +| `CANCEL` | cancel | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/BenefitSummary.md b/gusto_embedded_v_2025_11_15/docs/models/components/BenefitSummary.md index 1b77eb091..039a753cc 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/BenefitSummary.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/BenefitSummary.md @@ -10,4 +10,4 @@ | `description` | *Optional\* | :heavy_minus_sign: | Description of the benefit. | | `companyBenefitDeduction` | *Optional\* | :heavy_minus_sign: | The aggregate of employee deduction for all employees given the period of time and the specific company benefit. | | `companyBenefitContribution` | *Optional\* | :heavy_minus_sign: | The aggregate of company contribution for all employees given the period of time and the specific company benefit. | -| `employees` | List\<[BenefitSummaryEmployees](../../models/components/BenefitSummaryEmployees.md)> | :heavy_minus_sign: | N/A | \ No newline at end of file +| `employees` | List\<[Employees](../../models/components/Employees.md)> | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/BenefitSummaryEmployees.md b/gusto_embedded_v_2025_11_15/docs/models/components/BenefitSummaryEmployees.md deleted file mode 100644 index 04409f207..000000000 --- a/gusto_embedded_v_2025_11_15/docs/models/components/BenefitSummaryEmployees.md +++ /dev/null @@ -1,15 +0,0 @@ -# BenefitSummaryEmployees - - -## Fields - -| Field | Type | Required | Description | -| ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | -| `uuid` | *Optional\* | :heavy_minus_sign: | The UUID of the employee | -| `companyBenefitDeduction` | *Optional\* | :heavy_minus_sign: | The sum of employee deduction for this employee given the period of time and the specific company benefit. | -| `companyBenefitContribution` | *Optional\* | :heavy_minus_sign: | The sum of company contribution for this employee given the period of time and the specific company benefit. | -| `benefitDeduction` | *Optional\* | :heavy_minus_sign: | The sum of employee benefit deduction for this employee given the period of time and the benefit type. | -| `benefitContribution` | *Optional\* | :heavy_minus_sign: | The sum of company contribution for this employee given the period of time and the benefit type. | -| `grossPay` | *Optional\* | :heavy_minus_sign: | Gross pay for this employee given the period of time. | -| `imputedPay` | *Optional\* | :heavy_minus_sign: | Total imputed pay for this employee given the period of time (not scoped to a benefit type). | -| `payrollBenefits` | List\<[PayrollBenefits](../../models/components/PayrollBenefits.md)> | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/BenefitTypeRequirements.md b/gusto_embedded_v_2025_11_15/docs/models/components/BenefitTypeRequirements.md index 605be5620..8ab0f5e7b 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/BenefitTypeRequirements.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/BenefitTypeRequirements.md @@ -6,7 +6,7 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `employeeDeduction` | [Optional\](../../models/components/EmployeeDeduction.md) | :heavy_minus_sign: | The amount to be deducted, per pay period, from the employee's pay. | -| `contribution` | [Optional\](../../models/components/BenefitTypeRequirementsContribution.md) | :heavy_minus_sign: | An object representing the type and value of the company contribution. | +| `contribution` | [Optional\](../../models/components/Contribution.md) | :heavy_minus_sign: | An object representing the type and value of the company contribution. | | `deductAsPercentage` | [Optional\](../../models/components/DeductAsPercentage.md) | :heavy_minus_sign: | Whether the employee deduction amount should be treated as a percentage to be deducted from each payroll. | | `catchUp` | [Optional\](../../models/components/CatchUp.md) | :heavy_minus_sign: | Whether the employee should use a benefit’s 'catch up' rate. Only Roth 401k and 401k benefits use this value for employees over 50. | | `limitOption` | [Optional\](../../models/components/LimitOption.md) | :heavy_minus_sign: | Some benefits require additional information to determine their limit. For example, for an HSA benefit, the limit option should be either 'Family' or 'Individual'. For a Dependent Care FSA benefit, the limit option should be either 'Joint Filing or Single' or 'Married and Filing Separately'. | diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/BenefitTypeRequirementsContribution.md b/gusto_embedded_v_2025_11_15/docs/models/components/BenefitTypeRequirementsContribution.md deleted file mode 100644 index 02b99f614..000000000 --- a/gusto_embedded_v_2025_11_15/docs/models/components/BenefitTypeRequirementsContribution.md +++ /dev/null @@ -1,13 +0,0 @@ -# BenefitTypeRequirementsContribution - -An object representing the type and value of the company contribution. - - -## Fields - -| Field | Type | Required | Description | -| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -| `required` | *Optional\* | :heavy_minus_sign: | N/A | -| `editable` | *Optional\* | :heavy_minus_sign: | N/A | -| `defaultValue` | [JsonNullable\](../../models/components/BenefitTypeRequirementsDefaultValue.md) | :heavy_minus_sign: | N/A | -| `choices` | List\<*String*> | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/Blockers.md b/gusto_embedded_v_2025_11_15/docs/models/components/Blockers.md index a9c5d26fd..3f3950886 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/Blockers.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/Blockers.md @@ -3,7 +3,8 @@ ## Fields -| Field | Type | Required | Description | -| ------------------------------------------------------------- | ------------------------------------------------------------- | ------------------------------------------------------------- | ------------------------------------------------------------- | -| `type` | *Optional\* | :heavy_minus_sign: | A machine-readable blocker key (e.g. `missing_bank_account`). | -| `description` | *Optional\* | :heavy_minus_sign: | Human-readable description of the blocker. | \ No newline at end of file +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | +| `field` | [Optional\](../../models/components/Field.md) | :heavy_minus_sign: | The employee field affected. | +| `category` | [Optional\](../../models/components/EmployeeOnboardingStatusCategory.md) | :heavy_minus_sign: | Category of the blocker. See the array-level description for resolution guidance. | +| `message` | *Optional\* | :heavy_minus_sign: | Human-readable description of the blocker. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/BulkReport.md b/gusto_embedded_v_2025_11_15/docs/models/components/BulkReport.md new file mode 100644 index 000000000..f74c41ef5 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/BulkReport.md @@ -0,0 +1,16 @@ +# BulkReport + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| `uuid` | *String* | :heavy_check_mark: | Unique identifier of the bulk report batch. | +| `status` | [BulkReportStatus](../../models/components/BulkReportStatus.md) | :heavy_check_mark: | Overall batch status. `pending`/`processing` while in progress; once finished, `success` (all reports succeeded), `partial_success` (some succeeded, some failed), or `failed` (none succeeded). | +| `submittedAt` | [OffsetDateTime](https://docs.oracle.com/javase/8/docs/api/java/time/OffsetDateTime.html) | :heavy_check_mark: | When the batch was accepted. | +| `completedAt` | [OffsetDateTime](https://docs.oracle.com/javase/8/docs/api/java/time/OffsetDateTime.html) | :heavy_check_mark: | When the batch reached a terminal state. Null while non-terminal. | +| `submittedItems` | *long* | :heavy_check_mark: | How many reports the partner asked for in this batch. | +| `partnerUuid` | *Optional\* | :heavy_minus_sign: | UUID of the partner that owns this batch. Returned only once the batch has finished; omitted while in progress. | +| `processedItems` | *Optional\* | :heavy_minus_sign: | How many reports succeeded. Returned only once the batch has finished; omitted while in progress. | +| `reportUrl` | *JsonNullable\* | :heavy_minus_sign: | Signed S3 URL to a zip containing every successfully-generated report, valid for 10 minutes. Returned only once the batch has finished; omitted while in progress. | +| `companies` | List\<[BulkReportCompany](../../models/components/BulkReportCompany.md)> | :heavy_minus_sign: | Per-company breakdown. Returned only once the batch has finished; omitted while in progress. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/BulkReportBody.md b/gusto_embedded_v_2025_11_15/docs/models/components/BulkReportBody.md new file mode 100644 index 000000000..a492fe670 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/BulkReportBody.md @@ -0,0 +1,10 @@ +# BulkReportBody + +Each `batch` item is a `custom_report` or a `general_ledger` report. + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | +| `batch` | List\<[BulkReportItem](../../models/components/BulkReportItem.md)> | :heavy_check_mark: | One report per item. Up to 25 items per batch, across any combination of companies the partner is mapped to. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/BulkReportCompany.md b/gusto_embedded_v_2025_11_15/docs/models/components/BulkReportCompany.md new file mode 100644 index 000000000..403c65490 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/BulkReportCompany.md @@ -0,0 +1,12 @@ +# BulkReportCompany + +Results for a single company in a bulk report batch. + + +## Fields + +| Field | Type | Required | Description | +| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `companyUuid` | *String* | :heavy_check_mark: | UUID of the company. | +| `status` | [BulkReportCompanyStatus](../../models/components/BulkReportCompanyStatus.md) | :heavy_check_mark: | This company's overall status across its `reports`:
    - `success`: every report succeeded
    - `partial_success`: some succeeded, some failed
    - `failed`: every report failed
    - `pending`: at least one report is still being generated
    | +| `reports` | List\<[BulkReportItemResult](../../models/components/BulkReportItemResult.md)> | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/BulkReportCompanyStatus.md b/gusto_embedded_v_2025_11_15/docs/models/components/BulkReportCompanyStatus.md new file mode 100644 index 000000000..c829e3dda --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/BulkReportCompanyStatus.md @@ -0,0 +1,26 @@ +# BulkReportCompanyStatus + +This company's overall status across its `reports`: +- `success`: every report succeeded +- `partial_success`: some succeeded, some failed +- `failed`: every report failed +- `pending`: at least one report is still being generated + + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.components.BulkReportCompanyStatus; + +BulkReportCompanyStatus value = BulkReportCompanyStatus.PENDING; +``` + + +## Values + +| Name | Value | +| ----------------- | ----------------- | +| `PENDING` | pending | +| `SUCCESS` | success | +| `PARTIAL_SUCCESS` | partial_success | +| `FAILED` | failed | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/BulkReportCustomReportItem.md b/gusto_embedded_v_2025_11_15/docs/models/components/BulkReportCustomReportItem.md new file mode 100644 index 000000000..60c0cbc47 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/BulkReportCustomReportItem.md @@ -0,0 +1,25 @@ +# BulkReportCustomReportItem + +A custom report entry in a bulk batch. + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | +| `companyUuid` | *String* | :heavy_check_mark: | UUID of the company to generate the report for. The partner must be mapped to this company. | 12345678-abcd-ef12-3456-7890abcdef12 | +| `reportType` | [ReportType](../../models/components/ReportType.md) | :heavy_check_mark: | Identifies this batch item as a custom report. | custom_report | +| `columns` | List\<[Columns](../../models/components/Columns.md)> | :heavy_check_mark: | Columns to include in the report. | | +| `groupings` | List\<[Groupings](../../models/components/Groupings.md)> | :heavy_minus_sign: | How to group the report. If omitted, defaults are derived from the requested `columns`. | | +| `fileType` | [FileType](../../models/components/FileType.md) | :heavy_check_mark: | The type of file to generate. | | +| `customName` | *Optional\* | :heavy_minus_sign: | Display name for the report. | | +| `withTotals` | *Optional\* | :heavy_minus_sign: | Whether to include subtotals and grand totals. | | +| `dateFilterType` | [Optional\](../../models/components/DateFilterType.md) | :heavy_minus_sign: | Which payroll date `start_date` and `end_date` filter against. | | +| `startDate` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_minus_sign: | Start date of data to filter by. | 2026-01-01 | +| `endDate` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_minus_sign: | End date of data to filter by. | 2026-03-31 | +| `paymentMethod` | [Optional\](../../models/components/PaymentMethod.md) | :heavy_minus_sign: | Payment method to filter by. | | +| `employmentType` | [Optional\](../../models/components/EmploymentType.md) | :heavy_minus_sign: | Employee employment type to filter by. | | +| `employmentStatus` | [Optional\](../../models/components/EmploymentStatus.md) | :heavy_minus_sign: | Employee employment status to filter by. | | +| `employeeUuids` | List\<*String*> | :heavy_minus_sign: | Employees to filter by. | | +| `departmentUuids` | List\<*String*> | :heavy_minus_sign: | Departments to filter by. | | +| `workAddressUuids` | List\<*String*> | :heavy_minus_sign: | Work addresses to filter by. | | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/BulkReportGeneralLedgerItem.md b/gusto_embedded_v_2025_11_15/docs/models/components/BulkReportGeneralLedgerItem.md new file mode 100644 index 000000000..c2b22186b --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/BulkReportGeneralLedgerItem.md @@ -0,0 +1,14 @@ +# BulkReportGeneralLedgerItem + +A general ledger report entry in a bulk batch. + + +## Fields + +| Field | Type | Required | Description | Example | +| --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | +| `companyUuid` | *String* | :heavy_check_mark: | UUID of the company to generate the report for. The partner must be mapped to this company. | 12345678-abcd-ef12-3456-7890abcdef12 | +| `reportType` | [BulkReportGeneralLedgerItemReportType](../../models/components/BulkReportGeneralLedgerItemReportType.md) | :heavy_check_mark: | Identifies this batch item as a general ledger report. | general_ledger | +| `payrollUuid` | *String* | :heavy_check_mark: | The UUID of the payroll to generate the general ledger for. | | +| `aggregation` | [Aggregation](../../models/components/Aggregation.md) | :heavy_check_mark: | The breakdown of the report. Use `default` for no split. | | +| `integrationType` | *JsonNullable\* | :heavy_minus_sign: | The kind of integration set up for the company. Required when `aggregation` is `integration`; must be null otherwise. | | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/BulkReportGeneralLedgerItemReportType.md b/gusto_embedded_v_2025_11_15/docs/models/components/BulkReportGeneralLedgerItemReportType.md new file mode 100644 index 000000000..20127f889 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/BulkReportGeneralLedgerItemReportType.md @@ -0,0 +1,18 @@ +# BulkReportGeneralLedgerItemReportType + +Identifies this batch item as a general ledger report. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.components.BulkReportGeneralLedgerItemReportType; + +BulkReportGeneralLedgerItemReportType value = BulkReportGeneralLedgerItemReportType.GENERAL_LEDGER; +``` + + +## Values + +| Name | Value | +| ---------------- | ---------------- | +| `GENERAL_LEDGER` | general_ledger | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/BulkReportItem.md b/gusto_embedded_v_2025_11_15/docs/models/components/BulkReportItem.md new file mode 100644 index 000000000..822bc679d --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/BulkReportItem.md @@ -0,0 +1,4 @@ +# BulkReportItem + +A single report inside a bulk batch. Required fields depend on `report_type`: `custom_report` requires `columns` and `file_type`; `general_ledger` requires `payroll_uuid` and `aggregation`. + diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/BulkReportItemResult.md b/gusto_embedded_v_2025_11_15/docs/models/components/BulkReportItemResult.md new file mode 100644 index 000000000..035a9001d --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/BulkReportItemResult.md @@ -0,0 +1,13 @@ +# BulkReportItemResult + +A single report's outcome. + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | +| `reportType` | [BulkReportItemResultReportType](../../models/components/BulkReportItemResultReportType.md) | :heavy_check_mark: | Which report this entry refers to. | +| `fileType` | *String* | :heavy_check_mark: | The report's output file type. | +| `status` | [BulkReportItemResultStatus](../../models/components/BulkReportItemResultStatus.md) | :heavy_check_mark: | The terminal state for this individual report. | +| `error` | *Optional\* | :heavy_check_mark: | A user-facing error message when status is `failed`. Null on success. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/BulkReportItemResultReportType.md b/gusto_embedded_v_2025_11_15/docs/models/components/BulkReportItemResultReportType.md new file mode 100644 index 000000000..0c1de1bea --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/BulkReportItemResultReportType.md @@ -0,0 +1,19 @@ +# BulkReportItemResultReportType + +Which report this entry refers to. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.components.BulkReportItemResultReportType; + +BulkReportItemResultReportType value = BulkReportItemResultReportType.CUSTOM_REPORT; +``` + + +## Values + +| Name | Value | +| ---------------- | ---------------- | +| `CUSTOM_REPORT` | custom_report | +| `GENERAL_LEDGER` | general_ledger | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/BulkReportItemResultStatus.md b/gusto_embedded_v_2025_11_15/docs/models/components/BulkReportItemResultStatus.md new file mode 100644 index 000000000..7ae0b8c20 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/BulkReportItemResultStatus.md @@ -0,0 +1,20 @@ +# BulkReportItemResultStatus + +The terminal state for this individual report. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.components.BulkReportItemResultStatus; + +BulkReportItemResultStatus value = BulkReportItemResultStatus.PENDING; +``` + + +## Values + +| Name | Value | +| --------- | --------- | +| `PENDING` | pending | +| `SUCCESS` | success | +| `FAILED` | failed | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/BulkReportStatus.md b/gusto_embedded_v_2025_11_15/docs/models/components/BulkReportStatus.md new file mode 100644 index 000000000..28e05905b --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/BulkReportStatus.md @@ -0,0 +1,22 @@ +# BulkReportStatus + +Overall batch status. `pending`/`processing` while in progress; once finished, `success` (all reports succeeded), `partial_success` (some succeeded, some failed), or `failed` (none succeeded). + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.components.BulkReportStatus; + +BulkReportStatus value = BulkReportStatus.PENDING; +``` + + +## Values + +| Name | Value | +| ----------------- | ----------------- | +| `PENDING` | pending | +| `PROCESSING` | processing | +| `SUCCESS` | success | +| `PARTIAL_SUCCESS` | partial_success | +| `FAILED` | failed | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/Columns.md b/gusto_embedded_v_2025_11_15/docs/models/components/Columns.md index 419664f0d..f5e1d9ed3 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/Columns.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/Columns.md @@ -5,7 +5,7 @@ ```java import com.gusto.embedded_api_v_2025_11_15.models.components.Columns; -Columns value = Columns.BANK_ACCOUNT_ACCOUNT_NUMBER; +Columns value = Columns.ADDITIONAL_EARNINGS; ``` @@ -13,6 +13,7 @@ Columns value = Columns.BANK_ACCOUNT_ACCOUNT_NUMBER; | Name | Value | | -------------------------------------- | -------------------------------------- | +| `ADDITIONAL_EARNINGS` | additional_earnings | | `BANK_ACCOUNT_ACCOUNT_NUMBER` | bank_account_account_number | | `BANK_ACCOUNT_ROUTING_NUMBER` | bank_account_routing_number | | `BANK_ACCOUNT_TYPE` | bank_account_type | @@ -42,6 +43,7 @@ Columns value = Columns.BANK_ACCOUNT_ACCOUNT_NUMBER; | `EMPLOYEE_MEDICARE_TAX` | employee_medicare_tax | | `EMPLOYEE_PHONE_NUMBER` | employee_phone_number | | `EMPLOYEE_SOCIAL_SECURITY_TAX` | employee_social_security_tax | +| `EMPLOYEE_STATE_INCOME_TAX` | employee_state_income_tax | | `EMPLOYEE_TAXES` | employee_taxes | | `EMPLOYEE_UUID` | employee_uuid | | `EMPLOYEE_WORK_EMAIL` | employee_work_email | diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/Contractor.md b/gusto_embedded_v_2025_11_15/docs/models/components/Contractor.md index e9f68045b..78bd8a452 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/Contractor.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/Contractor.md @@ -5,36 +5,37 @@ The representation of a contractor (individual or business) in Gusto. ## Fields -| Field | Type | Required | Description | Example | -| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `uuid` | *String* | :heavy_check_mark: | The UUID of the contractor in Gusto. | | -| `companyUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the company the contractor is employed by. | | -| `wageType` | [Optional\](../../models/components/WageType.md) | :heavy_minus_sign: | The contractor's wage type, either "Fixed" or "Hourly". | | -| `isActive` | *Optional\* | :heavy_minus_sign: | The status of the contractor with the company. | | -| `version` | *Optional\* | :heavy_minus_sign: | The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. | | -| `type` | [Optional\](../../models/components/ContractorType.md) | :heavy_minus_sign: | The contractor's type, either "Individual" or "Business". | | -| `firstName` | *JsonNullable\* | :heavy_minus_sign: | The contractor’s first name. This attribute is required for “Individual” contractors and will be ignored for “Business” contractors. | | -| `lastName` | *JsonNullable\* | :heavy_minus_sign: | The contractor’s last name. This attribute is required for “Individual” contractors and will be ignored for “Business” contractors. | | -| `middleInitial` | *JsonNullable\* | :heavy_minus_sign: | The contractor’s middle initial. This attribute is optional for “Individual” contractors and will be ignored for “Business” contractors. | | -| `businessName` | *JsonNullable\* | :heavy_minus_sign: | The name of the contractor business. This attribute is required for “Business” contractors and will be ignored for “Individual” contractors. | | -| `ein` | *JsonNullable\* | :heavy_minus_sign: | The Federal Employer Identification Number of the contractor business. This attribute is optional for “Business” contractors and will be ignored for “Individual” contractors. | | -| `hasEin` | *JsonNullable\* | :heavy_minus_sign: | Whether company's Employer Identification Number (EIN) is present | | -| `email` | *JsonNullable\* | :heavy_minus_sign: | The contractor’s email address. This attribute is optional for “Individual” contractors and will be ignored for “Business” contractors. | | -| `startDate` | *Optional\* | :heavy_minus_sign: | The contractor's start date. | | -| `address` | [JsonNullable\
    ](../../models/components/Address.md) | :heavy_minus_sign: | The contractor’s home address. | | -| `hourlyRate` | *Optional\* | :heavy_minus_sign: | The contractor’s hourly rate. This attribute is required if the wage_type is “Hourly”. | 50.0 | -| `fileNewHireReport` | *JsonNullable\* | :heavy_minus_sign: | The boolean flag indicating whether Gusto will file a new hire report for the contractor | | -| `workState` | *JsonNullable\* | :heavy_minus_sign: | 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. | | -| `onboarded` | *Optional\* | :heavy_minus_sign: | The updated onboarding status for the contractor | | -| `onboardingStatus` | [Optional\](../../models/components/ContractorOnboardingStatus1.md) | :heavy_minus_sign: | One of the "onboarding_status" enum values. | | -| `paymentMethod` | [JsonNullable\](../../models/components/ContractorPaymentMethod1.md) | :heavy_minus_sign: | The contractor's payment method. | | -| `hasSsn` | *Optional\* | :heavy_minus_sign: | Indicates whether the contractor has an SSN in Gusto. | | -| `departmentUuid` | *JsonNullable\* | :heavy_minus_sign: | The UUID of the department the contractor is under | | -| `department` | *JsonNullable\* | :heavy_minus_sign: | The contractor's department in the company. | | -| `departmentTitle` | *JsonNullable\* | :heavy_minus_sign: | The title of the contractor's department. | | -| `dismissalDate` | *JsonNullable\* | :heavy_minus_sign: | The contractor's dismissal date. | | -| `upcomingEmployment` | [JsonNullable\](../../models/components/UpcomingEmployment.md) | :heavy_minus_sign: | The contractor's upcoming employment details, if a rehire is scheduled. | | -| `dismissalCancellationEligible` | *Optional\* | :heavy_minus_sign: | Whether the contractor's pending dismissal can be cancelled. | | -| `rehireCancellationEligible` | *Optional\* | :heavy_minus_sign: | Whether the contractor's pending rehire can be cancelled. | | -| `memberPortalInvitationStatus` | [JsonNullable\](../../models/components/ContractorMemberPortalInvitationStatus.md) | :heavy_minus_sign: | Member portal invitation status information. Only included when the include param has the portal_invitations value set. | | -| `partnerPortalInvitationSent` | *JsonNullable\* | :heavy_minus_sign: | Whether an external partner portal invitation webhook has been sent for this contractor. Only included when the include param has the portal_invitations value set. | | \ No newline at end of file +| Field | Type | Required | Description | Example | +| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `uuid` | *String* | :heavy_check_mark: | The UUID of the contractor in Gusto. | | +| `companyUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the company the contractor is employed by. | | +| `wageType` | [Optional\](../../models/components/ContractorWageType.md) | :heavy_minus_sign: | The contractor's wage type, either "Fixed" or "Hourly". | | +| `isActive` | *Optional\* | :heavy_minus_sign: | The status of the contractor with the company. | | +| `version` | *Optional\* | :heavy_minus_sign: | The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. | | +| `type` | [Optional\](../../models/components/ContractorType.md) | :heavy_minus_sign: | The contractor's type, either "Individual" or "Business". | | +| `firstName` | *JsonNullable\* | :heavy_minus_sign: | The contractor’s first name. This attribute is required for “Individual” contractors and will be ignored for “Business” contractors. | | +| `lastName` | *JsonNullable\* | :heavy_minus_sign: | The contractor’s last name. This attribute is required for “Individual” contractors and will be ignored for “Business” contractors. | | +| `middleInitial` | *JsonNullable\* | :heavy_minus_sign: | The contractor’s middle initial. This attribute is optional for “Individual” contractors and will be ignored for “Business” contractors. | | +| `businessName` | *JsonNullable\* | :heavy_minus_sign: | The name of the contractor business. This attribute is required for “Business” contractors and will be ignored for “Individual” contractors. | | +| `ein` | *JsonNullable\* | :heavy_minus_sign: | The Federal Employer Identification Number of the contractor business. This attribute is optional for “Business” contractors and will be ignored for “Individual” contractors. | | +| `hasEin` | *JsonNullable\* | :heavy_minus_sign: | Whether company's Employer Identification Number (EIN) is present | | +| `email` | *JsonNullable\* | :heavy_minus_sign: | The contractor’s email address. This attribute is optional for “Individual” contractors and will be ignored for “Business” contractors. | | +| `workEmail` | *JsonNullable\* | :heavy_minus_sign: | The work email address of the contractor. This is provided to support syncing users between our system and yours. You may not use this email address for any other purpose (e.g. marketing). | | +| `startDate` | *Optional\* | :heavy_minus_sign: | The contractor's start date. | | +| `address` | [JsonNullable\
    ](../../models/components/Address.md) | :heavy_minus_sign: | The contractor’s home address. | | +| `hourlyRate` | *Optional\* | :heavy_minus_sign: | The contractor’s hourly rate. This attribute is required if the wage_type is “Hourly”. | 50.0 | +| `fileNewHireReport` | *JsonNullable\* | :heavy_minus_sign: | The boolean flag indicating whether Gusto will file a new hire report for the contractor | | +| `workState` | *JsonNullable\* | :heavy_minus_sign: | 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. | | +| `onboarded` | *Optional\* | :heavy_minus_sign: | The updated onboarding status for the contractor | | +| `onboardingStatus` | [Optional\](../../models/components/OnboardingStatus.md) | :heavy_minus_sign: | One of the "onboarding_status" enum values. | | +| `paymentMethod` | [JsonNullable\](../../models/components/ContractorPaymentMethod1.md) | :heavy_minus_sign: | The contractor's payment method. | | +| `hasSsn` | *Optional\* | :heavy_minus_sign: | Indicates whether the contractor has an SSN in Gusto. | | +| `departmentUuid` | *JsonNullable\* | :heavy_minus_sign: | The UUID of the department the contractor is under | | +| `department` | *JsonNullable\* | :heavy_minus_sign: | The contractor's department in the company. | | +| `departmentTitle` | *JsonNullable\* | :heavy_minus_sign: | The title of the contractor's department. | | +| `dismissalDate` | *JsonNullable\* | :heavy_minus_sign: | The contractor's dismissal date. | | +| `upcomingEmployment` | [JsonNullable\](../../models/components/UpcomingEmployment.md) | :heavy_minus_sign: | The contractor's upcoming employment details, if a rehire is scheduled. | | +| `dismissalCancellationEligible` | *Optional\* | :heavy_minus_sign: | Whether the contractor's pending dismissal can be cancelled. | | +| `rehireCancellationEligible` | *Optional\* | :heavy_minus_sign: | Whether the contractor's pending rehire can be cancelled. | | +| `memberPortalInvitationStatus` | [JsonNullable\](../../models/components/MemberPortalInvitationStatus.md) | :heavy_minus_sign: | Member portal invitation status information. Only included when the include param has the portal_invitations value set. | | +| `partnerPortalInvitationSent` | *JsonNullable\* | :heavy_minus_sign: | Whether an external partner portal invitation webhook has been sent for this contractor. Only included when the include param has the portal_invitations value set. | | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/ContractorAddress.md b/gusto_embedded_v_2025_11_15/docs/models/components/ContractorAddress.md index 782ff1953..9927dcc3a 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/ContractorAddress.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/ContractorAddress.md @@ -13,4 +13,5 @@ | `zip` | *JsonNullable\* | :heavy_minus_sign: | N/A | | `country` | *JsonNullable\* | :heavy_minus_sign: | N/A | | `active` | *Optional\* | :heavy_minus_sign: | The status of the location. Inactive locations have been deleted, but may still have historical data associated with them. | -| `version` | *Optional\* | :heavy_minus_sign: | The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. | \ No newline at end of file +| `version` | *Optional\* | :heavy_minus_sign: | The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. | +| `warnings` | List\<[WarningObject](../../models/components/WarningObject.md)> | :heavy_minus_sign: | An array of warning objects that provide additional information about the address. Warnings do not prevent the address from being saved. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/ContractorCreateRequestBody.md b/gusto_embedded_v_2025_11_15/docs/models/components/ContractorCreateRequestBody.md index 9507c9ce2..9c18cf5c1 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/ContractorCreateRequestBody.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/ContractorCreateRequestBody.md @@ -13,6 +13,7 @@ Request body for creating a contractor. | `hourlyRate` | *Optional\* | :heavy_minus_sign: | The contractor’s hourly rate. This attribute is required if the wage_type is `Hourly`. | 40.0 | | `selfOnboarding` | *Optional\* | :heavy_minus_sign: | Whether the contractor or the payroll admin will complete onboarding in Gusto.
    Self-onboarding is recommended so that contractors receive Gusto accounts.
    If self_onboarding is true, then email is required. | | | `email` | *Optional\* | :heavy_minus_sign: | The contractor’s email address. | | +| `workEmail` | *Optional\* | :heavy_minus_sign: | The work email address of the contractor. This is provided to support syncing users between our system and yours. You may not use this email address for any other purpose (e.g. marketing). | | | `firstName` | *Optional\* | :heavy_minus_sign: | The contractor’s first name.
    This attribute is required for `Individual` contractors and will be ignored for `Business` contractors. | | | `lastName` | *Optional\* | :heavy_minus_sign: | The contractor’s last name.
    This attribute is required for `Individual` contractors and will be ignored for `Business` contractors. | | | `middleInitial` | *Optional\* | :heavy_minus_sign: | The contractor’s middle initial.
    This attribute is optional for `Individual` contractors and will be ignored for `Business` contractors. | | diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/ContractorOnboardingStatus1.md b/gusto_embedded_v_2025_11_15/docs/models/components/ContractorOnboardingStatus1.md deleted file mode 100644 index 012f0e095..000000000 --- a/gusto_embedded_v_2025_11_15/docs/models/components/ContractorOnboardingStatus1.md +++ /dev/null @@ -1,24 +0,0 @@ -# ContractorOnboardingStatus1 - -One of the "onboarding_status" enum values. - -## Example Usage - -```java -import com.gusto.embedded_api_v_2025_11_15.models.components.ContractorOnboardingStatus1; - -ContractorOnboardingStatus1 value = ContractorOnboardingStatus1.ADMIN_ONBOARDING_INCOMPLETE; -``` - - -## Values - -| Name | Value | -| ----------------------------- | ----------------------------- | -| `ADMIN_ONBOARDING_INCOMPLETE` | admin_onboarding_incomplete | -| `ADMIN_ONBOARDING_REVIEW` | admin_onboarding_review | -| `SELF_ONBOARDING_NOT_INVITED` | self_onboarding_not_invited | -| `SELF_ONBOARDING_INVITED` | self_onboarding_invited | -| `SELF_ONBOARDING_STARTED` | self_onboarding_started | -| `SELF_ONBOARDING_REVIEW` | self_onboarding_review | -| `ONBOARDING_COMPLETED` | onboarding_completed | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/ContractorPaymentDetailsList.md b/gusto_embedded_v_2025_11_15/docs/models/components/ContractorPaymentDetailsList.md index a393d2b51..db2d5093b 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/ContractorPaymentDetailsList.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/ContractorPaymentDetailsList.md @@ -9,5 +9,5 @@ | `paymentMethod` | [Optional\](../../models/components/ContractorPaymentDetailsListPaymentMethod.md) | :heavy_minus_sign: | N/A | | `firstName` | *Optional\* | :heavy_minus_sign: | N/A | | `lastName` | *Optional\* | :heavy_minus_sign: | N/A | -| `splitBy` | [JsonNullable\](../../models/components/ContractorPaymentDetailsListSplitBy.md) | :heavy_minus_sign: | Describes how the payment will be split. If split_by is Percentage, then the split amounts must add up to exactly 100. If split_by is Amount, then the amount represents cents and the last split amount must be `null` to capture the remainder. | -| `splits` | List\<[ContractorPaymentDetailsListSplits](../../models/components/ContractorPaymentDetailsListSplits.md)> | :heavy_minus_sign: | N/A | \ No newline at end of file +| `splitBy` | [JsonNullable\](../../models/components/SplitBy.md) | :heavy_minus_sign: | Describes how the payment will be split. If split_by is Percentage, then the split amounts must add up to exactly 100. If split_by is Amount, then the amount represents cents and the last split amount must be `null` to capture the remainder. | +| `splits` | List\<[Splits](../../models/components/Splits.md)> | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/ContractorPaymentDetailsListSplitBy.md b/gusto_embedded_v_2025_11_15/docs/models/components/ContractorPaymentDetailsListSplitBy.md deleted file mode 100644 index 3270f3db2..000000000 --- a/gusto_embedded_v_2025_11_15/docs/models/components/ContractorPaymentDetailsListSplitBy.md +++ /dev/null @@ -1,17 +0,0 @@ -# ContractorPaymentDetailsListSplitBy - -## Example Usage - -```java -import com.gusto.embedded_api_v_2025_11_15.models.components.ContractorPaymentDetailsListSplitBy; - -ContractorPaymentDetailsListSplitBy value = ContractorPaymentDetailsListSplitBy.AMOUNT; -``` - - -## Values - -| Name | Value | -| ------------ | ------------ | -| `AMOUNT` | Amount | -| `PERCENTAGE` | Percentage | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/ContractorPaymentForGroupPreview.md b/gusto_embedded_v_2025_11_15/docs/models/components/ContractorPaymentForGroupPreview.md index 3692137c4..ff0dddb1f 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/ContractorPaymentForGroupPreview.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/ContractorPaymentForGroupPreview.md @@ -17,5 +17,5 @@ Preview representation of a single contractor payment with nullable uuid. | `hourlyRate` | *Optional\* | :heavy_minus_sign: | The rate per hour worked for the payment. | | `mayCancel` | *Optional\* | :heavy_minus_sign: | Determine if the contractor payment can be cancelled. | | `wage` | *Optional\* | :heavy_minus_sign: | The fixed wage of the payment, regardless of hours worked. | -| `wageType` | [Optional\](../../models/components/ContractorPaymentForGroupPreviewWageType.md) | :heavy_minus_sign: | The wage type for the payment. | +| `wageType` | [Optional\](../../models/components/WageType.md) | :heavy_minus_sign: | The wage type for the payment. | | `wageTotal` | *Optional\* | :heavy_minus_sign: | (hours * hourly_rate) + wage + bonus | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/ContractorPaymentGroupPreview.md b/gusto_embedded_v_2025_11_15/docs/models/components/ContractorPaymentGroupPreview.md index 3783123f7..bf2893ac1 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/ContractorPaymentGroupPreview.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/ContractorPaymentGroupPreview.md @@ -16,5 +16,5 @@ Preview of a contractor payment group | `partnerOwnedDisbursement` | *JsonNullable\* | :heavy_minus_sign: | Whether the disbursement is partner owned. | | `submissionBlockers` | List\<[PayrollSubmissionBlockerType](../../models/components/PayrollSubmissionBlockerType.md)> | :heavy_minus_sign: | List of submission blockers for the contractor payment group. | | `creditBlockers` | List\<[PayrollCreditBlockerType](../../models/components/PayrollCreditBlockerType.md)> | :heavy_minus_sign: | List of credit blockers for the contractor payment group. | -| `totals` | [Optional\](../../models/components/ContractorPaymentGroupPreviewTotals.md) | :heavy_minus_sign: | N/A | +| `totals` | [Optional\](../../models/components/Totals.md) | :heavy_minus_sign: | N/A | | `contractorPayments` | List\<[ContractorPaymentForGroupPreview](../../models/components/ContractorPaymentForGroupPreview.md)> | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/ContractorPaymentGroupPreviewTotals.md b/gusto_embedded_v_2025_11_15/docs/models/components/ContractorPaymentGroupPreviewTotals.md deleted file mode 100644 index 99c1c6cea..000000000 --- a/gusto_embedded_v_2025_11_15/docs/models/components/ContractorPaymentGroupPreviewTotals.md +++ /dev/null @@ -1,12 +0,0 @@ -# ContractorPaymentGroupPreviewTotals - - -## Fields - -| Field | Type | Required | Description | -| ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | -| `amount` | *Optional\* | :heavy_minus_sign: | The total amount for the group of contractor payments. | -| `debitAmount` | *Optional\* | :heavy_minus_sign: | The total debit amount for the group of contractor payments. Sum of wage & reimbursement amount. | -| `wageAmount` | *Optional\* | :heavy_minus_sign: | The total wage amount for the group of contractor payments. | -| `reimbursementAmount` | *Optional\* | :heavy_minus_sign: | The total reimbursement amount for the group of contractor payments. | -| `checkAmount` | *Optional\* | :heavy_minus_sign: | The total check amount for the group of contractor payments. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/ContractorPaymentListing.md b/gusto_embedded_v_2025_11_15/docs/models/components/ContractorPaymentListing.md new file mode 100644 index 000000000..be5d0c023 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/ContractorPaymentListing.md @@ -0,0 +1,20 @@ +# ContractorPaymentListing + +The representation of a contractor payment as it appears in a contractor's payment history. + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | +| `uuid` | *String* | :heavy_check_mark: | The unique identifier of the contractor payment in Gusto. | +| `checkDate` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_minus_sign: | The check date for the payment. | +| `bonus` | *Optional\* | :heavy_minus_sign: | The bonus amount in the payment. | +| `hours` | *Optional\* | :heavy_minus_sign: | The number of hours worked for the payment. | +| `hourlyRate` | *Optional\* | :heavy_minus_sign: | The rate per hour worked for the payment. | +| `paymentMethod` | [Optional\](../../models/components/ContractorPaymentListingPaymentMethod.md) | :heavy_minus_sign: | The payment method. | +| `reimbursement` | *Optional\* | :heavy_minus_sign: | The reimbursement amount in the payment. | +| `status` | [Optional\](../../models/components/ContractorPaymentListingStatus.md) | :heavy_minus_sign: | Contractor payment status | +| `wage` | *Optional\* | :heavy_minus_sign: | The fixed wage of the payment, regardless of hours worked. | +| `wageType` | [Optional\](../../models/components/ContractorPaymentListingWageType.md) | :heavy_minus_sign: | The wage type for the payment. | +| `wageTotal` | *Optional\* | :heavy_minus_sign: | (hours * hourly_rate) + wage + bonus | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/ContractorPaymentListingPaymentMethod.md b/gusto_embedded_v_2025_11_15/docs/models/components/ContractorPaymentListingPaymentMethod.md new file mode 100644 index 000000000..bfa46a930 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/ContractorPaymentListingPaymentMethod.md @@ -0,0 +1,21 @@ +# ContractorPaymentListingPaymentMethod + +The payment method. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.components.ContractorPaymentListingPaymentMethod; + +ContractorPaymentListingPaymentMethod value = ContractorPaymentListingPaymentMethod.DIRECT_DEPOSIT; +``` + + +## Values + +| Name | Value | +| -------------------- | -------------------- | +| `DIRECT_DEPOSIT` | Direct Deposit | +| `CHECK` | Check | +| `HISTORICAL_PAYMENT` | Historical Payment | +| `CORRECTION_PAYMENT` | Correction Payment | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/ContractorPaymentListingStatus.md b/gusto_embedded_v_2025_11_15/docs/models/components/ContractorPaymentListingStatus.md new file mode 100644 index 000000000..8fa54ac30 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/ContractorPaymentListingStatus.md @@ -0,0 +1,19 @@ +# ContractorPaymentListingStatus + +Contractor payment status + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.components.ContractorPaymentListingStatus; + +ContractorPaymentListingStatus value = ContractorPaymentListingStatus.FUNDED; +``` + + +## Values + +| Name | Value | +| ---------- | ---------- | +| `FUNDED` | Funded | +| `UNFUNDED` | Unfunded | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/ContractorPaymentForGroupPreviewWageType.md b/gusto_embedded_v_2025_11_15/docs/models/components/ContractorPaymentListingWageType.md similarity index 56% rename from gusto_embedded_v_2025_11_15/docs/models/components/ContractorPaymentForGroupPreviewWageType.md rename to gusto_embedded_v_2025_11_15/docs/models/components/ContractorPaymentListingWageType.md index aec52c878..f8b638b08 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/ContractorPaymentForGroupPreviewWageType.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/ContractorPaymentListingWageType.md @@ -1,13 +1,13 @@ -# ContractorPaymentForGroupPreviewWageType +# ContractorPaymentListingWageType The wage type for the payment. ## Example Usage ```java -import com.gusto.embedded_api_v_2025_11_15.models.components.ContractorPaymentForGroupPreviewWageType; +import com.gusto.embedded_api_v_2025_11_15.models.components.ContractorPaymentListingWageType; -ContractorPaymentForGroupPreviewWageType value = ContractorPaymentForGroupPreviewWageType.HOURLY; +ContractorPaymentListingWageType value = ContractorPaymentListingWageType.HOURLY; ``` diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/ContractorPaymentReceipt.md b/gusto_embedded_v_2025_11_15/docs/models/components/ContractorPaymentReceipt.md index 52b5de482..f2fd2d6c0 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/ContractorPaymentReceipt.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/ContractorPaymentReceipt.md @@ -15,5 +15,5 @@ | `rightToRefund` | *Optional\* | :heavy_minus_sign: | URL for information related to right to refund. Always the fixed string "https://gusto.com/about/licenses" | | | `liabilityOfLicensee` | *Optional\* | :heavy_minus_sign: | URL for information related to right to liability of licensee. Always the fixed string "https://gusto.com/about/licenses" | | | `totals` | [Optional\](../../models/components/ContractorPaymentReceiptTotals.md) | :heavy_minus_sign: | The subtotals for the contractor payment. | | -| `contractorPayments` | List\<[ContractorPayments](../../models/components/ContractorPayments.md)> | :heavy_minus_sign: | An array of contractor payments for this contractor payment. | | -| `licensee` | [Optional\](../../models/components/ContractorPaymentReceiptLicensee.md) | :heavy_minus_sign: | The licensed payroll processor | | \ No newline at end of file +| `contractorPayments` | List\<[ContractorPaymentReceiptContractorPayments](../../models/components/ContractorPaymentReceiptContractorPayments.md)> | :heavy_minus_sign: | An array of contractor payments for this contractor payment. | | +| `licensee` | [Optional\](../../models/components/Licensee.md) | :heavy_minus_sign: | The licensed payroll processor | | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/ContractorPaymentReceiptContractorPayments.md b/gusto_embedded_v_2025_11_15/docs/models/components/ContractorPaymentReceiptContractorPayments.md new file mode 100644 index 000000000..c2b4897c0 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/ContractorPaymentReceiptContractorPayments.md @@ -0,0 +1,16 @@ +# ContractorPaymentReceiptContractorPayments + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | +| `contractorUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the contractor. | +| `contractorFirstName` | *Optional\* | :heavy_minus_sign: | The first name of the contractor. Applies when `contractor_type` is `Individual`. | +| `contractorLastName` | *Optional\* | :heavy_minus_sign: | The last name of the contractor. Applies when `contractor_type` is `Individual`. | +| `contractorBusinessName` | *Optional\* | :heavy_minus_sign: | The business name of the contractor. Applies when `contractor_type` is `Business`. | +| `contractorType` | *Optional\* | :heavy_minus_sign: | The type of contractor.

    `Individual` `Business` | +| `paymentMethod` | [Optional\](../../models/components/ContractorPaymentReceiptPaymentMethod.md) | :heavy_minus_sign: | The payment method. | +| `wage` | *Optional\* | :heavy_minus_sign: | The fixed wage of the payment, regardless of hours worked. | +| `bonus` | *Optional\* | :heavy_minus_sign: | The bonus amount in the payment. | +| `reimbursement` | *Optional\* | :heavy_minus_sign: | The reimbursement amount in the payment. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/ContractorPaymentSummary.md b/gusto_embedded_v_2025_11_15/docs/models/components/ContractorPaymentSummary.md index 60f4326a5..c3777cb7f 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/ContractorPaymentSummary.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/ContractorPaymentSummary.md @@ -5,7 +5,7 @@ The representation of the summary of contractor payments for a given company in ## Fields -| Field | Type | Required | Description | -| -------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | -| `total` | [Optional\](../../models/components/Total.md) | :heavy_minus_sign: | The wage and reimbursement totals for all contractor payments within a given time period. | -| `contractorPayments` | List\<[ContractorPaymentSummaryContractorPayments](../../models/components/ContractorPaymentSummaryContractorPayments.md)> | :heavy_minus_sign: | The individual contractor payments, within a given time period, grouped by contractor. | \ No newline at end of file +| Field | Type | Required | Description | +| ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | +| `total` | [Optional\](../../models/components/Total.md) | :heavy_minus_sign: | The wage and reimbursement totals for all contractor payments within a given time period. | +| `contractorPayments` | List\<[ContractorPayments](../../models/components/ContractorPayments.md)> | :heavy_minus_sign: | The individual contractor payments, within a given time period, grouped by contractor. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/ContractorPaymentSummaryContractorPayments.md b/gusto_embedded_v_2025_11_15/docs/models/components/ContractorPaymentSummaryContractorPayments.md deleted file mode 100644 index 24e1c0548..000000000 --- a/gusto_embedded_v_2025_11_15/docs/models/components/ContractorPaymentSummaryContractorPayments.md +++ /dev/null @@ -1,11 +0,0 @@ -# ContractorPaymentSummaryContractorPayments - - -## Fields - -| Field | Type | Required | Description | -| ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | -| `contractorUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the contractor. | -| `reimbursementTotal` | *Optional\* | :heavy_minus_sign: | The total reimbursements for the contractor within a given time period. | -| `wageTotal` | *Optional\* | :heavy_minus_sign: | The total wages for the contractor within a given time period. | -| `payments` | List\<[ContractorPayment](../../models/components/ContractorPayment.md)> | :heavy_minus_sign: | The contractor's payments within a given time period. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/ContractorPayments.md b/gusto_embedded_v_2025_11_15/docs/models/components/ContractorPayments.md index e474adff9..bda0472ae 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/ContractorPayments.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/ContractorPayments.md @@ -3,14 +3,9 @@ ## Fields -| Field | Type | Required | Description | -| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -| `contractorUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the contractor. | -| `contractorFirstName` | *Optional\* | :heavy_minus_sign: | The first name of the contractor. Applies when `contractor_type` is `Individual`. | -| `contractorLastName` | *Optional\* | :heavy_minus_sign: | The last name of the contractor. Applies when `contractor_type` is `Individual`. | -| `contractorBusinessName` | *Optional\* | :heavy_minus_sign: | The business name of the contractor. Applies when `contractor_type` is `Business`. | -| `contractorType` | *Optional\* | :heavy_minus_sign: | The type of contractor.

    `Individual` `Business` | -| `paymentMethod` | [Optional\](../../models/components/ContractorPaymentReceiptPaymentMethod.md) | :heavy_minus_sign: | The payment method. | -| `wage` | *Optional\* | :heavy_minus_sign: | The fixed wage of the payment, regardless of hours worked. | -| `bonus` | *Optional\* | :heavy_minus_sign: | The bonus amount in the payment. | -| `reimbursement` | *Optional\* | :heavy_minus_sign: | The reimbursement amount in the payment. | \ No newline at end of file +| Field | Type | Required | Description | +| ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | +| `contractorUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the contractor. | +| `reimbursementTotal` | *Optional\* | :heavy_minus_sign: | The total reimbursements for the contractor within a given time period. | +| `wageTotal` | *Optional\* | :heavy_minus_sign: | The total wages for the contractor within a given time period. | +| `payments` | List\<[ContractorPayment](../../models/components/ContractorPayment.md)> | :heavy_minus_sign: | The contractor's payments within a given time period. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/ContractorUpdateRequestBody.md b/gusto_embedded_v_2025_11_15/docs/models/components/ContractorUpdateRequestBody.md index aafda5b88..b4cf16a09 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/ContractorUpdateRequestBody.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/ContractorUpdateRequestBody.md @@ -14,6 +14,7 @@ Request body for updating a contractor. | `hourlyRate` | *Optional\* | :heavy_minus_sign: | The contractor’s hourly rate. This attribute is required if the wage_type is `Hourly`. | 40.0 | | `selfOnboarding` | *Optional\* | :heavy_minus_sign: | Whether the contractor or the payroll admin will complete onboarding in Gusto.
    Self-onboarding is recommended so that contractors receive Gusto accounts.
    If self_onboarding is true, then email is required. | | | `email` | *Optional\* | :heavy_minus_sign: | The contractor’s email address. | | +| `workEmail` | *Optional\* | :heavy_minus_sign: | The work email address of the contractor. This is provided to support syncing users between our system and yours. You may not use this email address for any other purpose (e.g. marketing). | | | `firstName` | *Optional\* | :heavy_minus_sign: | The contractor’s first name.
    This attribute is required for `Individual` contractors and will be ignored for `Business` contractors. | | | `lastName` | *Optional\* | :heavy_minus_sign: | The contractor’s last name.
    This attribute is required for `Individual` contractors and will be ignored for `Business` contractors. | | | `middleInitial` | *Optional\* | :heavy_minus_sign: | The contractor’s middle initial.
    This attribute is optional for `Individual` contractors and will be ignored for `Business` contractors. | | diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/ContractorWageType.md b/gusto_embedded_v_2025_11_15/docs/models/components/ContractorWageType.md new file mode 100644 index 000000000..05fb8093f --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/ContractorWageType.md @@ -0,0 +1,19 @@ +# ContractorWageType + +The contractor's wage type, either "Fixed" or "Hourly". + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.components.ContractorWageType; + +ContractorWageType value = ContractorWageType.FIXED; +``` + + +## Values + +| Name | Value | +| -------- | -------- | +| `FIXED` | Fixed | +| `HOURLY` | Hourly | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/Contribution.md b/gusto_embedded_v_2025_11_15/docs/models/components/Contribution.md index 775293e49..cd61e24a1 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/Contribution.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/Contribution.md @@ -5,7 +5,9 @@ An object representing the type and value of the company contribution. ## Fields -| Field | Type | Required | Description | -| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `type` | *Optional\* | :heavy_minus_sign: | The company contribution scheme.

    "amount": The company contributes a fixed amount per payroll. If elective is true, the contribution is matching, dollar-for-dollar.

    "percentage": The company contributes a percentage of the payroll amount per payroll period. If elective is true, the contribution is matching, dollar-for-dollar.

    "tiered": The company contribution varies according to the size of the employee deduction. | -| `value` | [Optional\](../../models/components/EmployeeBenefitValue.md) | :heavy_minus_sign: | For the `amount` and `percentage` contribution types, the value of the corresponding amount or percentage.

    For the `tiered` contribution type, an array of tiers. | \ No newline at end of file +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | +| `required` | *Optional\* | :heavy_minus_sign: | N/A | +| `editable` | *Optional\* | :heavy_minus_sign: | N/A | +| `defaultValue` | [JsonNullable\](../../models/components/BenefitTypeRequirementsDefaultValue.md) | :heavy_minus_sign: | N/A | +| `choices` | List\<*String*> | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/CreateBulkReport.md b/gusto_embedded_v_2025_11_15/docs/models/components/CreateBulkReport.md new file mode 100644 index 000000000..c8188d84e --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/CreateBulkReport.md @@ -0,0 +1,9 @@ +# CreateBulkReport + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `uuid` | *String* | :heavy_check_mark: | Unique identifier of the bulk report batch. | +| `status` | [Status](../../models/components/Status.md) | :heavy_check_mark: | The batch's processing state.
    - `pending`: accepted, not yet started
    - `processing`: reports are being generated
    - `completed`: all reports finished
    - `failed`: the batch failed before completing
    | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/CreateReportBody.md b/gusto_embedded_v_2025_11_15/docs/models/components/CreateReportBody.md index 9ff6e15d5..769de0278 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/CreateReportBody.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/CreateReportBody.md @@ -7,17 +7,18 @@ Request body for creating a custom report. | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | -| `columns` | List\<[Columns](../../models/components/Columns.md)> | :heavy_check_mark: | Columns to include in the report | | -| `groupings` | List\<[Groupings](../../models/components/Groupings.md)> | :heavy_check_mark: | How to group the report | | +| `columns` | List\<[CreateReportBodyColumns](../../models/components/CreateReportBodyColumns.md)> | :heavy_check_mark: | Columns to include in the report | | +| `groupings` | List\<[CreateReportBodyGroupings](../../models/components/CreateReportBodyGroupings.md)> | :heavy_minus_sign: | Optional. How to group the report. If omitted, sensible defaults are derived from the `columns` requested. | | | `customName` | *Optional\* | :heavy_minus_sign: | The title of the report | | -| `fileType` | [FileType](../../models/components/FileType.md) | :heavy_check_mark: | The type of file to generate | | +| `fileType` | [CreateReportBodyFileType](../../models/components/CreateReportBodyFileType.md) | :heavy_check_mark: | The type of file to generate | | | `withTotals` | *Optional\* | :heavy_minus_sign: | Whether to include subtotals and grand totals in the report | | +| `dateFilterType` | [Optional\](../../models/components/CreateReportBodyDateFilterType.md) | :heavy_minus_sign: | Which payroll date `start_date` and `end_date` filter against. | | | `startDate` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_minus_sign: | Start date of data to filter by | 2024-01-01 | | `endDate` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_minus_sign: | End date of data to filter by | 2024-04-01 | | `dismissedStartDate` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_minus_sign: | Dismissed start date of employees to filter by | 2024-01-01 | | `dismissedEndDate` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_minus_sign: | Dismissed end date of employees to filter by | 2024-04-01 | | `paymentMethod` | [Optional\](../../models/components/CreateReportBodyPaymentMethod.md) | :heavy_minus_sign: | Payment method to filter by | | -| `employmentType` | [Optional\](../../models/components/EmploymentType.md) | :heavy_minus_sign: | Employee employment type to filter by | | +| `employmentType` | [Optional\](../../models/components/CreateReportBodyEmploymentType.md) | :heavy_minus_sign: | Employee employment type to filter by | | | `employmentStatus` | [Optional\](../../models/components/CreateReportBodyEmploymentStatus.md) | :heavy_minus_sign: | Employee employment status to filter by | | | `employeeUuids` | List\<*String*> | :heavy_minus_sign: | Employees to filter by | | | `departmentUuids` | List\<*String*> | :heavy_minus_sign: | Departments to filter by | | diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/CreateReportBodyColumns.md b/gusto_embedded_v_2025_11_15/docs/models/components/CreateReportBodyColumns.md new file mode 100644 index 000000000..1ead94efd --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/CreateReportBodyColumns.md @@ -0,0 +1,101 @@ +# CreateReportBodyColumns + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.components.CreateReportBodyColumns; + +CreateReportBodyColumns value = CreateReportBodyColumns.ADDITIONAL_EARNINGS; +``` + + +## Values + +| Name | Value | +| -------------------------------------- | -------------------------------------- | +| `ADDITIONAL_EARNINGS` | additional_earnings | +| `BANK_ACCOUNT_ACCOUNT_NUMBER` | bank_account_account_number | +| `BANK_ACCOUNT_ROUTING_NUMBER` | bank_account_routing_number | +| `BANK_ACCOUNT_TYPE` | bank_account_type | +| `BANK_ACCOUNT` | bank_account | +| `BONUS` | bonus | +| `CASH_TIPS` | cash_tips | +| `CHECK_AMOUNT` | check_amount | +| `CHECK_DATE` | check_date | +| `COMMISSION` | commission | +| `DATE_OF_BIRTH` | date_of_birth | +| `DOUBLE_OVERTIME_EARNINGS` | double_overtime_earnings | +| `DOUBLE_OVERTIME_HOURS` | double_overtime_hours | +| `DOUBLE_OVERTIME_RATE` | double_overtime_rate | +| `EMPLOYEE_ADDITIONAL_TAXES` | employee_additional_taxes | +| `EMPLOYEE_BENEFIT_CONTRIBUTIONS` | employee_benefit_contributions | +| `EMPLOYEE_COMPENSATION_TIME_PERIOD` | employee_compensation_time_period | +| `EMPLOYEE_COMPENSATION` | employee_compensation | +| `EMPLOYEE_DEDUCTIONS` | employee_deductions | +| `EMPLOYEE_DEPARTMENT` | employee_department | +| `EMPLOYEE_EMAIL` | employee_email | +| `EMPLOYEE_DONATIONS` | employee_donations | +| `EMPLOYEE_FEDERAL_INCOME_TAX` | employee_federal_income_tax | +| `EMPLOYEE_FIRST_NAME` | employee_first_name | +| `EMPLOYEE_LAST_NAME` | employee_last_name | +| `EMPLOYEE_MIDDLE_INITIAL` | employee_middle_initial | +| `EMPLOYEE_MEDICARE_ADDITIONAL_TAX` | employee_medicare_additional_tax | +| `EMPLOYEE_MEDICARE_TAX` | employee_medicare_tax | +| `EMPLOYEE_PHONE_NUMBER` | employee_phone_number | +| `EMPLOYEE_SOCIAL_SECURITY_TAX` | employee_social_security_tax | +| `EMPLOYEE_STATE_INCOME_TAX` | employee_state_income_tax | +| `EMPLOYEE_TAXES` | employee_taxes | +| `EMPLOYEE_UUID` | employee_uuid | +| `EMPLOYEE_WORK_EMAIL` | employee_work_email | +| `EMPLOYER_ADDITIONAL_TAXES` | employer_additional_taxes | +| `EMPLOYER_BENEFIT_CONTRIBUTIONS` | employer_benefit_contributions | +| `EMPLOYER_COST` | employer_cost | +| `EMPLOYER_FUTA_TAX` | employer_futa_tax | +| `EMPLOYER_MEDICARE_TAX` | employer_medicare_tax | +| `EMPLOYER_SOCIAL_SECURITY_TAX` | employer_social_security_tax | +| `EMPLOYER_SUTA_TAX` | employer_suta_tax | +| `EMPLOYER_TAXES` | employer_taxes | +| `EMPLOYMENT_TYPE` | employment_type | +| `EMPLOYMENT` | employment | +| `END_DATE` | end_date | +| `GARNISHMENTS` | garnishments | +| `GROSS_EARNINGS` | gross_earnings | +| `HOLIDAY_EARNINGS` | holiday_earnings | +| `HOLIDAY_HOURS` | holiday_hours | +| `HOME_ADDRESS_CITY` | home_address_city | +| `HOME_ADDRESS_STATE` | home_address_state | +| `HOME_ADDRESS_STREET` | home_address_street | +| `HOME_ADDRESS_ZIP` | home_address_zip | +| `HOME_ADDRESS` | home_address | +| `JOB_TITLE` | job_title | +| `NET_PAY` | net_pay | +| `ONE_TIME_REIMBURSEMENTS` | one_time_reimbursements | +| `OVERTIME_EARNINGS` | overtime_earnings | +| `OVERTIME_HOURS` | overtime_hours | +| `OVERTIME_RATE` | overtime_rate | +| `PAID_TIME_OFF_EARNINGS` | paid_time_off_earnings | +| `PAID_TIME_OFF_HOURS` | paid_time_off_hours | +| `PAID_TIME_OFF_RATE` | paid_time_off_rate | +| `PAY_PERIOD_END` | pay_period_end | +| `PAY_PERIOD_START` | pay_period_start | +| `PAYCHECK_TIPS` | paycheck_tips | +| `PAYMENT_METHOD` | payment_method | +| `PAYROLL_TYPE` | payroll_type | +| `PAYROLL_UUID` | payroll_uuid | +| `PREFERRED_FIRST_NAME` | preferred_first_name | +| `RECURRING_REIMBURSEMENTS` | recurring_reimbursements | +| `REGULAR_EARNINGS` | regular_earnings | +| `REGULAR_HOURS` | regular_hours | +| `REGULAR_RATE` | regular_rate | +| `REIMBURSEMENTS` | reimbursements | +| `RISK_CLASS_CODE` | risk_class_code | +| `SICK_RATE` | sick_rate | +| `SICK_TIME_OFF_EARNINGS` | sick_time_off_earnings | +| `SICK_TIME_OFF_HOURS` | sick_time_off_hours | +| `START_DATE` | start_date | +| `TOTAL_EMPLOYER_BENEFIT_CONTRIBUTIONS` | total_employer_benefit_contributions | +| `TOTAL_TIME_OFF_EARNINGS` | total_time_off_earnings | +| `TOTAL_TIME_OFF_HOURS` | total_time_off_hours | +| `WORK_ADDRESS_CITY` | work_address_city | +| `WORK_ADDRESS_STREET` | work_address_street | +| `WORK_ADDRESS_ZIP` | work_address_zip | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/CreateReportBodyDateFilterType.md b/gusto_embedded_v_2025_11_15/docs/models/components/CreateReportBodyDateFilterType.md new file mode 100644 index 000000000..96750b27e --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/CreateReportBodyDateFilterType.md @@ -0,0 +1,20 @@ +# CreateReportBodyDateFilterType + +Which payroll date `start_date` and `end_date` filter against. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.components.CreateReportBodyDateFilterType; + +CreateReportBodyDateFilterType value = CreateReportBodyDateFilterType.PERIOD_END_DATE; +``` + + +## Values + +| Name | Value | +| ------------------- | ------------------- | +| `PERIOD_END_DATE` | period_end_date | +| `PERIOD_START_DATE` | period_start_date | +| `CHECK_DATE` | check_date | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/CreateReportBodyEmploymentType.md b/gusto_embedded_v_2025_11_15/docs/models/components/CreateReportBodyEmploymentType.md new file mode 100644 index 000000000..4946abb1d --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/CreateReportBodyEmploymentType.md @@ -0,0 +1,22 @@ +# CreateReportBodyEmploymentType + +Employee employment type to filter by + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.components.CreateReportBodyEmploymentType; + +CreateReportBodyEmploymentType value = CreateReportBodyEmploymentType.EXEMPT; +``` + + +## Values + +| Name | Value | +| --------------------------- | --------------------------- | +| `EXEMPT` | exempt | +| `SALARIED_NONEXEMPT` | salaried_nonexempt | +| `NONEXEMPT` | nonexempt | +| `COMMISSION_ONLY_EXEMPT` | commission_only_exempt | +| `COMMISSION_ONLY_NONEXEMPT` | commission_only_nonexempt | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/CreateReportBodyFileType.md b/gusto_embedded_v_2025_11_15/docs/models/components/CreateReportBodyFileType.md new file mode 100644 index 000000000..bbdd36445 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/CreateReportBodyFileType.md @@ -0,0 +1,20 @@ +# CreateReportBodyFileType + +The type of file to generate + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.components.CreateReportBodyFileType; + +CreateReportBodyFileType value = CreateReportBodyFileType.CSV; +``` + + +## Values + +| Name | Value | +| ------ | ------ | +| `CSV` | csv | +| `JSON` | json | +| `PDF` | pdf | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/CreateReportBodyGroupings.md b/gusto_embedded_v_2025_11_15/docs/models/components/CreateReportBodyGroupings.md new file mode 100644 index 000000000..0a543b0ae --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/CreateReportBodyGroupings.md @@ -0,0 +1,19 @@ +# CreateReportBodyGroupings + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.components.CreateReportBodyGroupings; + +CreateReportBodyGroupings value = CreateReportBodyGroupings.PAYROLL; +``` + + +## Values + +| Name | Value | +| -------------------- | -------------------- | +| `PAYROLL` | payroll | +| `EMPLOYEE` | employee | +| `WORK_ADDRESS` | work_address | +| `WORK_ADDRESS_STATE` | work_address_state | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/CustomWithholdings.md b/gusto_embedded_v_2025_11_15/docs/models/components/CustomWithholdings.md new file mode 100644 index 000000000..21feb111f --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/CustomWithholdings.md @@ -0,0 +1,14 @@ +# CustomWithholdings + +The one-time custom withholding overrides applied to this payroll for this employee. +`federal` is null when no federal one-time override is set; `state` is an empty +array when no state one-time overrides are set. + + + +## Fields + +| Field | Type | Required | Description | +| ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | +| `federal` | [JsonNullable\](../../models/components/Federal.md) | :heavy_minus_sign: | Federal one-time custom withholding override applied to this payroll. | +| `state` | List\<[State](../../models/components/State.md)> | :heavy_minus_sign: | State one-time custom withholding overrides applied to this payroll, one entry per state field. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/DateFilterType.md b/gusto_embedded_v_2025_11_15/docs/models/components/DateFilterType.md new file mode 100644 index 000000000..0e71b5ff0 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/DateFilterType.md @@ -0,0 +1,20 @@ +# DateFilterType + +Which payroll date `start_date` and `end_date` filter against. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.components.DateFilterType; + +DateFilterType value = DateFilterType.PERIOD_END_DATE; +``` + + +## Values + +| Name | Value | +| ------------------- | ------------------- | +| `PERIOD_END_DATE` | period_end_date | +| `PERIOD_START_DATE` | period_start_date | +| `CHECK_DATE` | check_date | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/Document.md b/gusto_embedded_v_2025_11_15/docs/models/components/Document.md index 2e4cd21a2..660fc8a60 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/Document.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/Document.md @@ -8,7 +8,7 @@ | `uuid` | *Optional\* | :heavy_minus_sign: | The UUID of the document | | `title` | *Optional\* | :heavy_minus_sign: | The title of the document | | `name` | *Optional\* | :heavy_minus_sign: | The type identifier of the document | -| `recipientType` | [Optional\](../../models/components/RecipientType.md) | :heavy_minus_sign: | The type of recipient associated with the document (will be `Contractor` for Contractor Documents) | +| `recipientType` | [Optional\](../../models/components/DocumentRecipientType.md) | :heavy_minus_sign: | The type of recipient associated with the document (will be `Contractor` for Contractor Documents) | | `recipientUuid` | *Optional\* | :heavy_minus_sign: | Unique identifier for the recipient associated with the document | | `pages` | List\<[Pages](../../models/components/Pages.md)> | :heavy_minus_sign: | List of the document's pages and associated image URLs. This is only returned for documents with `required_signing` = `true`, and can be used for signing preparation. | | `fields` | List\<[Fields](../../models/components/Fields.md)> | :heavy_minus_sign: | List of the document's fields and associated data. Values are set for auto-filled fields. This is only returned for documents with `required_signing` = `true`, and can be used for signing preparation. | diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/DocumentRecipientType.md b/gusto_embedded_v_2025_11_15/docs/models/components/DocumentRecipientType.md new file mode 100644 index 000000000..c39474b1b --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/DocumentRecipientType.md @@ -0,0 +1,20 @@ +# DocumentRecipientType + +The type of recipient associated with the document (will be `Contractor` for Contractor Documents) + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.components.DocumentRecipientType; + +DocumentRecipientType value = DocumentRecipientType.COMPANY; +``` + + +## Values + +| Name | Value | +| ------------ | ------------ | +| `COMPANY` | Company | +| `EMPLOYEE` | Employee | +| `CONTRACTOR` | Contractor | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/Employee.md b/gusto_embedded_v_2025_11_15/docs/models/components/Employee.md index 97c30cf44..df027f920 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/Employee.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/Employee.md @@ -21,7 +21,7 @@ The representation of an employee in Gusto. | `workEmail` | *JsonNullable\* | :heavy_minus_sign: | The work email address of the employee. This is provided to support syncing users between our system and yours. You may not use this email address for any other purpose (e.g. marketing). | | `onboarded` | *Optional\* | :heavy_minus_sign: | Whether the employee has completed onboarding. | | `onboardingStatus` | [JsonNullable\](../../models/components/EmployeeOnboardingStatus1.md) | :heavy_minus_sign: | The current onboarding status of the employee | -| `onboardingDocumentsConfig` | [Optional\](../../models/components/EmployeeOnboardingDocumentsConfig.md) | :heavy_minus_sign: | Configuration for an employee onboarding documents during onboarding | +| `onboardingDocumentsConfig` | [Optional\](../../models/components/OnboardingDocumentsConfig.md) | :heavy_minus_sign: | Configuration for an employee onboarding documents during onboarding | | `jobs` | List\<[Job](../../models/components/Job.md)> | :heavy_minus_sign: | N/A | | `eligiblePaidTimeOff` | List\<[PaidTimeOff](../../models/components/PaidTimeOff.md)> | :heavy_minus_sign: | N/A | | `terminations` | List\<[Termination](../../models/components/Termination.md)> | :heavy_minus_sign: | N/A | @@ -33,7 +33,7 @@ The representation of an employee in Gusto. | `phone` | *JsonNullable\* | :heavy_minus_sign: | N/A | | `preferredFirstName` | *JsonNullable\* | :heavy_minus_sign: | N/A | | `paymentMethod` | [Optional\](../../models/components/EmployeePaymentMethod1.md) | :heavy_minus_sign: | The employee's payment method | -| `currentEmploymentStatus` | [JsonNullable\](../../models/components/EmployeeCurrentEmploymentStatus.md) | :heavy_minus_sign: | The current employment status of the employee. Full-time employees work 30+ hours per week. Part-time employees are split into two groups: those that work 20-29 hours a week, and those that work under 20 hours a week. Variable employees have hours that vary each week. Seasonal employees are hired for 6 months of the year or less. | +| `currentEmploymentStatus` | [JsonNullable\](../../models/components/CurrentEmploymentStatus.md) | :heavy_minus_sign: | The current employment status of the employee. Full-time employees work 30+ hours per week. Part-time employees are split into two groups: those that work 20-29 hours a week, and those that work under 20 hours a week. Variable employees have hours that vary each week. Seasonal employees are hired for 6 months of the year or less. | | `historical` | *Optional\* | :heavy_minus_sign: | N/A | | `employeeCode` | *Optional\* | :heavy_minus_sign: | The short format code of the employee | | `departmentUuid` | *JsonNullable\* | :heavy_minus_sign: | The UUID of the department the employee is under | diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/EmployeeAddress.md b/gusto_embedded_v_2025_11_15/docs/models/components/EmployeeAddress.md index fb7413252..a3a5fb43d 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/EmployeeAddress.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/EmployeeAddress.md @@ -16,4 +16,5 @@ | `zip` | *Optional\* | :heavy_minus_sign: | N/A | | `country` | *Optional\* | :heavy_minus_sign: | N/A | | `active` | *Optional\* | :heavy_minus_sign: | The status of the location. Inactive locations have been deleted, but may still have historical data associated with them. | -| `version` | *String* | :heavy_check_mark: | The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. | \ No newline at end of file +| `version` | *String* | :heavy_check_mark: | The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. | +| `warnings` | List\<[WarningObject](../../models/components/WarningObject.md)> | :heavy_minus_sign: | An array of warning objects that provide additional information about the address. Warnings do not prevent the address from being saved. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/EmployeeBenefit.md b/gusto_embedded_v_2025_11_15/docs/models/components/EmployeeBenefit.md index 46d870734..20a86ea09 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/EmployeeBenefit.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/EmployeeBenefit.md @@ -12,7 +12,7 @@ The representation of an employee benefit. | `employeeDeduction` | *Optional\* | :heavy_minus_sign: | The amount to be deducted, per pay period, from the employee's pay. | | `deductAsPercentage` | *Optional\* | :heavy_minus_sign: | Whether the employee deduction amount should be treated as a percentage to be deducted from each payroll. | | `employeeDeductionAnnualMaximum` | *JsonNullable\* | :heavy_minus_sign: | The maximum employee deduction amount per year. A null value signifies no limit. | -| `contribution` | [Optional\](../../models/components/Contribution.md) | :heavy_minus_sign: | An object representing the type and value of the company contribution. | +| `contribution` | [Optional\](../../models/components/EmployeeBenefitContribution.md) | :heavy_minus_sign: | An object representing the type and value of the company contribution. | | `elective` | *Optional\* | :heavy_minus_sign: | Whether the company contribution is elective (aka matching). For "tiered" contribution types, this is always true. | | `companyContributionAnnualMaximum` | *JsonNullable\* | :heavy_minus_sign: | The maximum company contribution amount per year. A null value signifies no limit. | | `limitOption` | *JsonNullable\* | :heavy_minus_sign: | Some benefits require additional information to determine their limit.

    `Family` and `Individual` are applicable to HSA benefit.

    `Joint Filing or Single` and `Married and Filing Separately` are applicable to Dependent Care FSA benefit. | diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/EmployeeBenefitContribution.md b/gusto_embedded_v_2025_11_15/docs/models/components/EmployeeBenefitContribution.md new file mode 100644 index 000000000..60d082742 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/EmployeeBenefitContribution.md @@ -0,0 +1,11 @@ +# EmployeeBenefitContribution + +An object representing the type and value of the company contribution. + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `type` | *Optional\* | :heavy_minus_sign: | The company contribution scheme.

    "amount": The company contributes a fixed amount per payroll. If elective is true, the contribution is matching, dollar-for-dollar.

    "percentage": The company contributes a percentage of the payroll amount per payroll period. If elective is true, the contribution is matching, dollar-for-dollar.

    "tiered": The company contribution varies according to the size of the employee deduction. | +| `value` | [Optional\](../../models/components/EmployeeBenefitValue.md) | :heavy_minus_sign: | For the `amount` and `percentage` contribution types, the value of the corresponding amount or percentage.

    For the `tiered` contribution type, an array of tiers. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/EmployeeCompensations.md b/gusto_embedded_v_2025_11_15/docs/models/components/EmployeeCompensations.md index 010678ff2..340eb475e 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/EmployeeCompensations.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/EmployeeCompensations.md @@ -3,24 +3,25 @@ ## Fields -| Field | Type | Required | Description | -| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `employeeUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the employee. | -| `excluded` | *Optional\* | :heavy_minus_sign: | This employee will be excluded (skipped) from payroll calculation and will not be paid for the payroll. Cancelling a payroll would reset all employees' excluded back to false. | -| `firstName` | *JsonNullable\* | :heavy_minus_sign: | The first name of the employee. Requires `employees:read` scope. | -| `preferredFirstName` | *JsonNullable\* | :heavy_minus_sign: | The preferred first name of the employee. Requires `employees:read` scope. | -| `lastName` | *JsonNullable\* | :heavy_minus_sign: | The last name of the employee. Requires `employees:read` scope. | -| `grossPay` | *JsonNullable\* | :heavy_minus_sign: | The employee's gross pay, equal to regular wages + cash tips + payroll tips + any other additional earnings, excluding imputed income. This value is only available for processed payrolls. | -| `netPay` | *JsonNullable\* | :heavy_minus_sign: | The employee's net pay, equal to gross_pay - employee taxes - employee deductions or garnishments - cash tips. This value is only available for processed payrolls. | -| `checkAmount` | *JsonNullable\* | :heavy_minus_sign: | The employee's check amount, equal to net_pay + reimbursements. This value is only available for processed payrolls. | -| `paymentMethod` | [JsonNullable\](../../models/components/PayrollShowPaymentMethod.md) | :heavy_minus_sign: | The employee's compensation payment method. Is *only* `Historical` when retrieving external payrolls initially run outside of Gusto, then put into Gusto. | -| `memo` | *JsonNullable\* | :heavy_minus_sign: | Custom text that will be printed as a personal note to the employee on a paystub. | -| `fixedCompensations` | List\<[PayrollShowFixedCompensations](../../models/components/PayrollShowFixedCompensations.md)> | :heavy_minus_sign: | An array of fixed compensations for the employee. Fixed compensations include tips, bonuses, and one time reimbursements. If this payroll has been processed, only fixed compensations with a value greater than 0.00 are returned. For an unprocessed payroll, all active fixed compensations are returned. | -| `hourlyCompensations` | List\<[PayrollShowHourlyCompensations](../../models/components/PayrollShowHourlyCompensations.md)> | :heavy_minus_sign: | An array of hourly compensations for the employee. Hourly compensations include regular, overtime, and double overtime hours. If this payroll has been processed, only hourly compensations with a value greater than 0.00 are returned. For an unprocessed payroll, all active hourly compensations are returned. | -| `paidTimeOff` | List\<[PayrollShowPaidTimeOff](../../models/components/PayrollShowPaidTimeOff.md)> | :heavy_minus_sign: | An array of all paid time off the employee is eligible for this pay period. | -| `reimbursements` | List\<[PayrollShowReimbursements](../../models/components/PayrollShowReimbursements.md)> | :heavy_minus_sign: | An array of reimbursements for the employee. | -| `version` | *Optional\* | :heavy_minus_sign: | The current version of this employee compensation. This field is only available for prepared payrolls. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. | -| `deductions` | List\<[PayrollShowDeductions](../../models/components/PayrollShowDeductions.md)> | :heavy_minus_sign: | An array of employee deductions for the pay period. Only included when `deductions` is present in the `include` parameter. | -| `taxes` | List\<[PayrollShowTaxes](../../models/components/PayrollShowTaxes.md)> | :heavy_minus_sign: | An array of employer and employee taxes for the pay period. Only included for processed or calculated payrolls when `taxes` is present in the `include` parameter. | -| `benefits` | List\<[PayrollShowBenefits](../../models/components/PayrollShowBenefits.md)> | :heavy_minus_sign: | An array of employee benefits for the pay period. Benefits are only included for processed payroll when the include parameter is present. | -| `additionalProperties` | Map\ | :heavy_minus_sign: | N/A | \ No newline at end of file +| Field | Type | Required | Description | +| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `employeeUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the employee. | +| `excluded` | *Optional\* | :heavy_minus_sign: | This employee will be excluded (skipped) from payroll calculation and will not be paid for the payroll. Cancelling a payroll would reset all employees' excluded back to false. | +| `firstName` | *JsonNullable\* | :heavy_minus_sign: | The first name of the employee. Requires `employees:read` scope. | +| `preferredFirstName` | *JsonNullable\* | :heavy_minus_sign: | The preferred first name of the employee. Requires `employees:read` scope. | +| `lastName` | *JsonNullable\* | :heavy_minus_sign: | The last name of the employee. Requires `employees:read` scope. | +| `grossPay` | *JsonNullable\* | :heavy_minus_sign: | The employee's gross pay, equal to regular wages + cash tips + payroll tips + any other additional earnings, excluding imputed income. This value is only available for processed payrolls. | +| `netPay` | *JsonNullable\* | :heavy_minus_sign: | The employee's net pay, equal to gross_pay - employee taxes - employee deductions or garnishments - cash tips. This value is only available for processed payrolls. | +| `checkAmount` | *JsonNullable\* | :heavy_minus_sign: | The employee's check amount, equal to net_pay + reimbursements. This value is only available for processed payrolls. | +| `paymentMethod` | [JsonNullable\](../../models/components/PayrollShowPaymentMethod.md) | :heavy_minus_sign: | The employee's compensation payment method. Is *only* `Historical` when retrieving external payrolls initially run outside of Gusto, then put into Gusto. | +| `memo` | *JsonNullable\* | :heavy_minus_sign: | Custom text that will be printed as a personal note to the employee on a paystub. | +| `fixedCompensations` | List\<[PayrollShowFixedCompensations](../../models/components/PayrollShowFixedCompensations.md)> | :heavy_minus_sign: | An array of fixed compensations for the employee. Fixed compensations include tips and bonuses. On regular payrolls, reimbursements are sent via the dedicated `reimbursements` array instead. Off-cycle payrolls continue to include reimbursements in `fixed_compensations`. If this payroll has been processed, only fixed compensations with a value greater than 0.00 are returned. For an unprocessed payroll, all active fixed compensations are returned. | +| `hourlyCompensations` | List\<[PayrollShowHourlyCompensations](../../models/components/PayrollShowHourlyCompensations.md)> | :heavy_minus_sign: | An array of hourly compensations for the employee. Hourly compensations include regular, overtime, and double overtime hours. If this payroll has been processed, only hourly compensations with a value greater than 0.00 are returned. For an unprocessed payroll, all active hourly compensations are returned. | +| `paidTimeOff` | List\<[PayrollShowPaidTimeOff](../../models/components/PayrollShowPaidTimeOff.md)> | :heavy_minus_sign: | An array of all paid time off the employee is eligible for this pay period. | +| `reimbursements` | List\<[PayrollShowReimbursements](../../models/components/PayrollShowReimbursements.md)> | :heavy_minus_sign: | An array of reimbursements for the employee. | +| `customWithholdings` | [Optional\](../../models/components/PayrollShowCustomWithholdings.md) | :heavy_minus_sign: | The one-time custom withholding overrides applied to this payroll for this employee.
    `federal` is null when no federal one-time override is set; `state` is an empty
    array when no state one-time overrides are set.
    | +| `version` | *Optional\* | :heavy_minus_sign: | The current version of this employee compensation. This field is only available for prepared payrolls. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. | +| `deductions` | List\<[PayrollShowDeductions](../../models/components/PayrollShowDeductions.md)> | :heavy_minus_sign: | An array of employee deductions for the pay period. Only included when `deductions` is present in the `include` parameter. | +| `taxes` | List\<[PayrollShowTaxes](../../models/components/PayrollShowTaxes.md)> | :heavy_minus_sign: | An array of employer and employee taxes for the pay period. Only included for processed or calculated payrolls when `taxes` is present in the `include` parameter. | +| `benefits` | List\<[PayrollShowBenefits](../../models/components/PayrollShowBenefits.md)> | :heavy_minus_sign: | An array of employee benefits for the pay period. Benefits are only included for processed payroll when the include parameter is present. | +| `additionalProperties` | Map\ | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/EmployeeOnboardingStatus.md b/gusto_embedded_v_2025_11_15/docs/models/components/EmployeeOnboardingStatus.md index 75686cf10..e7d8f695f 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/EmployeeOnboardingStatus.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/EmployeeOnboardingStatus.md @@ -5,8 +5,9 @@ The representation of an employee's onboarding status. ## Fields -| Field | Type | Required | Description | -| ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | -| `uuid` | *String* | :heavy_check_mark: | Unique identifier for this employee. | -| `onboardingStatus` | *Optional\* | :heavy_minus_sign: | One of the "onboarding_status" enum values. | -| `onboardingSteps` | List\<[EmployeeOnboardingStatusOnboardingStep](../../models/components/EmployeeOnboardingStatusOnboardingStep.md)> | :heavy_minus_sign: | List of steps required to onboard an employee. | \ No newline at end of file +| Field | Type | Required | Description | +| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `uuid` | *String* | :heavy_check_mark: | Unique identifier for this employee. | +| `onboardingStatus` | *Optional\* | :heavy_minus_sign: | One of the "onboarding_status" enum values. | +| `onboardingSteps` | List\<[EmployeeOnboardingStatusOnboardingStep](../../models/components/EmployeeOnboardingStatusOnboardingStep.md)> | :heavy_minus_sign: | List of steps required to onboard an employee. | +| `blockers` | List\<[Blockers](../../models/components/Blockers.md)> | :heavy_minus_sign: | Validation issues that should be resolved before this employee's onboarding is complete. Each entry identifies an affected field, a category describing the type of problem, and a human-readable message.

    Supported categories:

    - `duplicate_value`: Another employee in the same company already has this value. To resolve, cancel this onboarding and initiate a rehire if it's a returning employee, or contact support to investigate the conflict.

    This list may grow over time as new validation rules are added.
    | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/EmployeeOnboardingStatusCategory.md b/gusto_embedded_v_2025_11_15/docs/models/components/EmployeeOnboardingStatusCategory.md new file mode 100644 index 000000000..2f25663f9 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/EmployeeOnboardingStatusCategory.md @@ -0,0 +1,18 @@ +# EmployeeOnboardingStatusCategory + +Category of the blocker. See the array-level description for resolution guidance. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.components.EmployeeOnboardingStatusCategory; + +EmployeeOnboardingStatusCategory value = EmployeeOnboardingStatusCategory.DUPLICATE_VALUE; +``` + + +## Values + +| Name | Value | +| ----------------- | ----------------- | +| `DUPLICATE_VALUE` | duplicate_value | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/EmployeePaymentDetailsList.md b/gusto_embedded_v_2025_11_15/docs/models/components/EmployeePaymentDetailsList.md index 219154844..43ed17742 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/EmployeePaymentDetailsList.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/EmployeePaymentDetailsList.md @@ -9,5 +9,5 @@ | `firstName` | *Optional\* | :heavy_minus_sign: | The legal first name of the employee. | | `lastName` | *Optional\* | :heavy_minus_sign: | The last name of the employee. | | `paymentMethod` | [Optional\](../../models/components/EmployeePaymentDetailsListPaymentMethod.md) | :heavy_minus_sign: | The type of payment method. | -| `splitBy` | [JsonNullable\](../../models/components/SplitBy.md) | :heavy_minus_sign: | How the payment is split. This field is applicable when `payment_method` is "Direct Deposit". If `split_by` is Percentage, then the split amounts must add up to exactly 100. If `split_by` is Amount, the last split amount must be `null` to capture the remainder. | -| `splits` | List\<[Splits](../../models/components/Splits.md)> | :heavy_minus_sign: | An array of payment splits. This field is applicable when `payment_method` is "Direct Deposit". | \ No newline at end of file +| `splitBy` | [JsonNullable\](../../models/components/EmployeePaymentDetailsListSplitBy.md) | :heavy_minus_sign: | How the payment is split. This field is applicable when `payment_method` is "Direct Deposit". If `split_by` is Percentage, then the split amounts must add up to exactly 100. If `split_by` is Amount, the last split amount must be `null` to capture the remainder. | +| `splits` | List\<[EmployeePaymentDetailsListSplits](../../models/components/EmployeePaymentDetailsListSplits.md)> | :heavy_minus_sign: | An array of payment splits. This field is applicable when `payment_method` is "Direct Deposit". | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/EmployeePaymentDetailsListSplitBy.md b/gusto_embedded_v_2025_11_15/docs/models/components/EmployeePaymentDetailsListSplitBy.md new file mode 100644 index 000000000..ab54a53eb --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/EmployeePaymentDetailsListSplitBy.md @@ -0,0 +1,17 @@ +# EmployeePaymentDetailsListSplitBy + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.components.EmployeePaymentDetailsListSplitBy; + +EmployeePaymentDetailsListSplitBy value = EmployeePaymentDetailsListSplitBy.AMOUNT; +``` + + +## Values + +| Name | Value | +| ------------ | ------------ | +| `AMOUNT` | Amount | +| `PERCENTAGE` | Percentage | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/ContractorPaymentDetailsListSplits.md b/gusto_embedded_v_2025_11_15/docs/models/components/EmployeePaymentDetailsListSplits.md similarity index 95% rename from gusto_embedded_v_2025_11_15/docs/models/components/ContractorPaymentDetailsListSplits.md rename to gusto_embedded_v_2025_11_15/docs/models/components/EmployeePaymentDetailsListSplits.md index 89d0bc39d..c75cf8669 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/ContractorPaymentDetailsListSplits.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/EmployeePaymentDetailsListSplits.md @@ -1,15 +1,15 @@ -# ContractorPaymentDetailsListSplits +# EmployeePaymentDetailsListSplits ## Fields | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `bankAccountUuid` | *Optional\* | :heavy_minus_sign: | N/A | -| `name` | *Optional\* | :heavy_minus_sign: | N/A | +| `bankAccountUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the bank account. | +| `name` | *Optional\* | :heavy_minus_sign: | The name of the bank account. | | `hiddenAccountNumber` | *Optional\* | :heavy_minus_sign: | An obfuscated version of the account number which can be used for display purposes. | -| `encryptedAccountNumber` | *JsonNullable\* | :heavy_minus_sign: | Ciphertext containing the full bank account number, which must be decrypted using a key provided by Gusto. Only visible with the `contractor_payment_methods:read:account_number` scope. | -| `routingNumber` | *Optional\* | :heavy_minus_sign: | N/A | +| `encryptedAccountNumber` | *JsonNullable\* | :heavy_minus_sign: | Ciphertext containing the full bank account number, which must be decrypted using a key provided by Gusto. Only visible with the `employee_payment_methods:read:account_number` scope. | +| `routingNumber` | *Optional\* | :heavy_minus_sign: | The routing number of the bank account. | +| `accountType` | *Optional\* | :heavy_minus_sign: | The bank account type (e.g., "Checking" or "Savings"). | | `priority` | *Optional\* | :heavy_minus_sign: | The order of priority for each payment split, with priority 1 being the first bank account paid. Priority must be unique and sequential. | -| `splitAmount` | *JsonNullable\* | :heavy_minus_sign: | If `split_by` is 'Amount', this is in cents (e.g., 500 for $5.00) and exactly one account must have a `split_amount` of `null` to capture the remainder. If `split_by` is 'Percentage', this is the percentage value (e.g., 60 for 60%). | -| `accountType` | *Optional\* | :heavy_minus_sign: | N/A | \ No newline at end of file +| `splitAmount` | *JsonNullable\* | :heavy_minus_sign: | If `split_by` is 'Amount', this is in cents (e.g., 500 for $5.00) and exactly one account must have a `split_amount` of `null` to capture the remainder. If `split_by` is 'Percentage', this is the percentage value (e.g., 60 for 60%). | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/EmployeeStateTaxInputQuestionFormat.md b/gusto_embedded_v_2025_11_15/docs/models/components/EmployeeStateTaxInputQuestionFormat.md index 8ca576818..a130f0b8f 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/EmployeeStateTaxInputQuestionFormat.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/EmployeeStateTaxInputQuestionFormat.md @@ -3,7 +3,7 @@ ## Fields -| Field | Type | Required | Description | -| --------------------------------------------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------- | --------------------------------------------------------------------- | -| `type` | *String* | :heavy_check_mark: | Describes the type of question - Text, Number, Select, Currency, Date | -| `options` | List\<[Options](../../models/components/Options.md)> | :heavy_minus_sign: | For "Select" type questions, the allowed values and display labels. | \ No newline at end of file +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | +| `type` | *String* | :heavy_check_mark: | Describes the type of question - Text, Number, Select, Currency, Date | +| `options` | List\<[EmployeeStateTaxInputQuestionFormatOptions](../../models/components/EmployeeStateTaxInputQuestionFormatOptions.md)> | :heavy_minus_sign: | For "Select" type questions, the allowed values and display labels. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/EmployeeStateTaxInputQuestionFormatOptions.md b/gusto_embedded_v_2025_11_15/docs/models/components/EmployeeStateTaxInputQuestionFormatOptions.md new file mode 100644 index 000000000..88f3ba6af --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/EmployeeStateTaxInputQuestionFormatOptions.md @@ -0,0 +1,9 @@ +# EmployeeStateTaxInputQuestionFormatOptions + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | +| `value` | [Optional\](../../models/components/EmployeeStateTaxInputQuestionFormatValue.md) | :heavy_minus_sign: | An allowed value to answer the question | +| `label` | *String* | :heavy_check_mark: | A display label that corresponds to the answer value | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/Employees.md b/gusto_embedded_v_2025_11_15/docs/models/components/Employees.md index f809dff54..729a5ce41 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/Employees.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/Employees.md @@ -3,7 +3,13 @@ ## Fields -| Field | Type | Required | Description | -| ------------------- | ------------------- | ------------------- | ------------------- | -| `employeeUuid` | *Optional\* | :heavy_minus_sign: | Employee UUID | -| `payScheduleUuid` | *Optional\* | :heavy_minus_sign: | Pay schedule UUID | \ No newline at end of file +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | +| `uuid` | *Optional\* | :heavy_minus_sign: | The UUID of the employee | +| `companyBenefitDeduction` | *Optional\* | :heavy_minus_sign: | The sum of employee deduction for this employee given the period of time and the specific company benefit. | +| `companyBenefitContribution` | *Optional\* | :heavy_minus_sign: | The sum of company contribution for this employee given the period of time and the specific company benefit. | +| `benefitDeduction` | *Optional\* | :heavy_minus_sign: | The sum of employee benefit deduction for this employee given the period of time and the benefit type. | +| `benefitContribution` | *Optional\* | :heavy_minus_sign: | The sum of company contribution for this employee given the period of time and the benefit type. | +| `grossPay` | *Optional\* | :heavy_minus_sign: | Gross pay for this employee given the period of time. | +| `imputedPay` | *Optional\* | :heavy_minus_sign: | Total imputed pay for this employee given the period of time (not scoped to a benefit type). | +| `payrollBenefits` | List\<[PayrollBenefits](../../models/components/PayrollBenefits.md)> | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/EmploymentStatus.md b/gusto_embedded_v_2025_11_15/docs/models/components/EmploymentStatus.md index e2c0f540f..b44636c3d 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/EmploymentStatus.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/EmploymentStatus.md @@ -1,23 +1,24 @@ # EmploymentStatus -The employee's employment status. Supplying an invalid option will set the employment_status to *not_set*. +Employee employment status to filter by. ## Example Usage ```java import com.gusto.embedded_api_v_2025_11_15.models.components.EmploymentStatus; -EmploymentStatus value = EmploymentStatus.PART_TIME; +EmploymentStatus value = EmploymentStatus.ACTIVE_FULL_TIME; ``` ## Values -| Name | Value | -| -------------------- | -------------------- | -| `PART_TIME` | part_time | -| `FULL_TIME` | full_time | -| `PART_TIME_ELIGIBLE` | part_time_eligible | -| `VARIABLE` | variable | -| `SEASONAL` | seasonal | -| `NOT_SET` | not_set | \ No newline at end of file +| Name | Value | +| --------------------------- | --------------------------- | +| `ACTIVE_FULL_TIME` | active_full_time | +| `ACTIVE_PART_TIME` | active_part_time | +| `ACTIVE_PART_TIME_ELIGIBLE` | active_part_time_eligible | +| `ACTIVE_VARIABLE` | active_variable | +| `ACTIVE_SEASONAL` | active_seasonal | +| `ACTIVE` | active | +| `DISMISSED` | dismissed | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/EmploymentType.md b/gusto_embedded_v_2025_11_15/docs/models/components/EmploymentType.md index 9b8db15a1..608587eb7 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/EmploymentType.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/EmploymentType.md @@ -1,6 +1,6 @@ # EmploymentType -Employee employment type to filter by +Employee employment type to filter by. ## Example Usage diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/Exclusions.md b/gusto_embedded_v_2025_11_15/docs/models/components/Exclusions.md index 828410720..1a6c3b2e6 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/Exclusions.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/Exclusions.md @@ -3,9 +3,12 @@ ## Fields -| Field | Type | Required | Description | -| ------------------------------------------- | ------------------------------------------- | ------------------------------------------- | ------------------------------------------- | -| `externalId` | *Optional\* | :heavy_minus_sign: | The external ID of the excluded item(s). | -| `category` | *Optional\* | :heavy_minus_sign: | The exclusion category. | -| `message` | *Optional\* | :heavy_minus_sign: | Human-readable explanation for exclusion. | -| `itemCount` | *Optional\* | :heavy_minus_sign: | Number of items affected by this exclusion. | \ No newline at end of file +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `idx` | *Optional\* | :heavy_minus_sign: | The index of this payroll in the original POST batch array. | +| `entityType` | [Optional\](../../models/components/PayrollBatchResultsEntityType.md) | :heavy_minus_sign: | The type of entity this exclusion represents. | +| `uuid` | *Optional\* | :heavy_minus_sign: | The UUID of the excluded payroll. | +| `companyUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the company asserted to own the payroll. | +| `status` | [Optional\](../../models/components/PayrollBatchResultsExclusionsStatus.md) | :heavy_minus_sign: | Always `failed` for an excluded payroll. | +| `category` | [Optional\](../../models/components/PayrollBatchResultsCategory.md) | :heavy_minus_sign: | Machine-readable category for why the payroll was excluded.
    - `not_found`: the payroll does not exist, or is not associated with a company the partner is mapped to
    - `duplicate_operation`: the same payroll UUID appeared more than once in the request; only the first occurrence is processed
    | +| `message` | *Optional\* | :heavy_minus_sign: | Human-readable explanation for the exclusion. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/ExternalPayrollBasic.md b/gusto_embedded_v_2025_11_15/docs/models/components/ExternalPayrollBasic.md index b907ed575..008fcfd6b 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/ExternalPayrollBasic.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/ExternalPayrollBasic.md @@ -12,4 +12,4 @@ The representation of an external payroll with minimal information. | `checkDate` | *Optional\* | :heavy_minus_sign: | External payroll's check date. | | `paymentPeriodStartDate` | *Optional\* | :heavy_minus_sign: | External payroll's pay period start date. | | `paymentPeriodEndDate` | *Optional\* | :heavy_minus_sign: | External payroll's pay period end date. | -| `status` | [Optional\](../../models/components/Status.md) | :heavy_minus_sign: | The status of the external payroll. The status will be `unprocessed` when the external payroll is created and transition to `processed` once tax liabilities are entered and finalized. Once in the `processed` status all actions that can edit an external payroll will be disabled. | \ No newline at end of file +| `status` | [Optional\](../../models/components/ExternalPayrollBasicStatus.md) | :heavy_minus_sign: | The status of the external payroll. The status will be `unprocessed` when the external payroll is created and transition to `processed` once tax liabilities are entered and finalized. Once in the `processed` status all actions that can edit an external payroll will be disabled. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/ExternalPayrollBasicStatus.md b/gusto_embedded_v_2025_11_15/docs/models/components/ExternalPayrollBasicStatus.md new file mode 100644 index 000000000..6b9c128a1 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/ExternalPayrollBasicStatus.md @@ -0,0 +1,19 @@ +# ExternalPayrollBasicStatus + +The status of the external payroll. The status will be `unprocessed` when the external payroll is created and transition to `processed` once tax liabilities are entered and finalized. Once in the `processed` status all actions that can edit an external payroll will be disabled. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.components.ExternalPayrollBasicStatus; + +ExternalPayrollBasicStatus value = ExternalPayrollBasicStatus.UNPROCESSED; +``` + + +## Values + +| Name | Value | +| ------------- | ------------- | +| `UNPROCESSED` | unprocessed | +| `PROCESSED` | processed | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/Federal.md b/gusto_embedded_v_2025_11_15/docs/models/components/Federal.md new file mode 100644 index 000000000..12c04e736 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/Federal.md @@ -0,0 +1,12 @@ +# Federal + +Federal one-time custom withholding override applied to this payroll. + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ | +| `overrideType` | [Optional\](../../models/components/OverrideType.md) | :heavy_minus_sign: | Override mode. Only `one_time` is currently exposed. | +| `amount` | *Optional\* | :heavy_minus_sign: | The amount that was withheld for this payroll. | +| `amountType` | [Optional\](../../models/components/PayrollEmployeeCompensationsTypeAmountType.md) | :heavy_minus_sign: | How to interpret the amount. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/Field.md b/gusto_embedded_v_2025_11_15/docs/models/components/Field.md new file mode 100644 index 000000000..443170453 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/Field.md @@ -0,0 +1,18 @@ +# Field + +The employee field affected. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.components.Field; + +Field value = Field.SSN; +``` + + +## Values + +| Name | Value | +| ----- | ----- | +| `SSN` | ssn | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/FileType.md b/gusto_embedded_v_2025_11_15/docs/models/components/FileType.md index d58703557..cf1de8848 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/FileType.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/FileType.md @@ -1,6 +1,6 @@ # FileType -The type of file to generate +The type of file to generate. ## Example Usage diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/GeneralLedgerReportBody.md b/gusto_embedded_v_2025_11_15/docs/models/components/GeneralLedgerReportBody.md index fad04b537..99fa0a43c 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/GeneralLedgerReportBody.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/GeneralLedgerReportBody.md @@ -7,5 +7,5 @@ Request body for generating a general ledger report. The report can be aggregate | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- | -| `aggregation` | [Aggregation](../../models/components/Aggregation.md) | :heavy_check_mark: | The breakdown of the report. Use 'default' for no split. | +| `aggregation` | [GeneralLedgerReportBodyAggregation](../../models/components/GeneralLedgerReportBodyAggregation.md) | :heavy_check_mark: | The breakdown of the report. Use 'default' for no split. | | `integrationType` | [JsonNullable\](../../models/components/IntegrationType.md) | :heavy_minus_sign: | The kind of integration set up for the company. Required when `aggregation` is 'integration'. Must be null if `aggregation` is not 'integration'. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/GeneralLedgerReportBodyAggregation.md b/gusto_embedded_v_2025_11_15/docs/models/components/GeneralLedgerReportBodyAggregation.md new file mode 100644 index 000000000..b79aac01b --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/GeneralLedgerReportBodyAggregation.md @@ -0,0 +1,21 @@ +# GeneralLedgerReportBodyAggregation + +The breakdown of the report. Use 'default' for no split. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.components.GeneralLedgerReportBodyAggregation; + +GeneralLedgerReportBodyAggregation value = GeneralLedgerReportBodyAggregation.DEFAULT; +``` + + +## Values + +| Name | Value | +| ------------- | ------------- | +| `DEFAULT` | default | +| `JOB` | job | +| `DEPARTMENT` | department | +| `INTEGRATION` | integration | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/HistoricalEmployeeBody.md b/gusto_embedded_v_2025_11_15/docs/models/components/HistoricalEmployeeBody.md index db95952e4..a892c89ca 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/HistoricalEmployeeBody.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/HistoricalEmployeeBody.md @@ -17,7 +17,7 @@ Send this object under the JSON root key `employee`. All dates are ISO 8601 (`YY | `dateOfBirth` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_check_mark: | Date of birth (YYYY-MM-DD). | 1995-05-05 | | `ssn` | *String* | :heavy_check_mark: | Nine-digit U.S. Social Security number **without** dashes or spaces. Must pass Gusto/SSA validation in production; use a valid test SSN in sandbox environments.
    | 123456294 | | `workAddress` | [WorkAddress](../../models/components/WorkAddress.md) | :heavy_check_mark: | Primary work location for this historical employment row. | | -| `homeAddress` | [HistoricalEmployeeBodyHomeAddress](../../models/components/HistoricalEmployeeBodyHomeAddress.md) | :heavy_check_mark: | Residential address on file for tax withholding and compliance mail. | | +| `homeAddress` | [HomeAddress](../../models/components/HomeAddress.md) | :heavy_check_mark: | Residential address on file for tax withholding and compliance mail. | | | `termination` | [HistoricalEmployeeBodyTermination](../../models/components/HistoricalEmployeeBodyTermination.md) | :heavy_check_mark: | End of the historical employment period. | | | `email` | *Optional\* | :heavy_minus_sign: | Optional. When provided, stored on the employee record for notifications and profile. | soren.kierkegaard@example.com | | `job` | [HistoricalEmployeeBodyJob](../../models/components/HistoricalEmployeeBodyJob.md) | :heavy_check_mark: | Hire date for the historical job used to build employments and filings. | | diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/HistoricalEmployeeBodyHomeAddress.md b/gusto_embedded_v_2025_11_15/docs/models/components/HistoricalEmployeeBodyHomeAddress.md deleted file mode 100644 index 768c8f453..000000000 --- a/gusto_embedded_v_2025_11_15/docs/models/components/HistoricalEmployeeBodyHomeAddress.md +++ /dev/null @@ -1,14 +0,0 @@ -# HistoricalEmployeeBodyHomeAddress - -Residential address on file for tax withholding and compliance mail. - - -## Fields - -| Field | Type | Required | Description | Example | -| ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | -| `street1` | *String* | :heavy_check_mark: | Street address line 1. | 55 Mission St | -| `street2` | *JsonNullable\* | :heavy_minus_sign: | Apartment, suite, unit, or building (optional). | Floor 3 | -| `city` | *String* | :heavy_check_mark: | City. | San Francisco | -| `state` | *String* | :heavy_check_mark: | Two-letter U.S. state or territory postal abbreviation. | CA | -| `zip` | *String* | :heavy_check_mark: | ZIP or ZIP+4. | 94105 | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/HomeAddress.md b/gusto_embedded_v_2025_11_15/docs/models/components/HomeAddress.md index a35071d04..01694e033 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/HomeAddress.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/HomeAddress.md @@ -1,13 +1,14 @@ # HomeAddress +Residential address on file for tax withholding and compliance mail. + ## Fields -| Field | Type | Required | Description | -| ------------------- | ------------------- | ------------------- | ------------------- | -| `street1` | *Optional\* | :heavy_minus_sign: | N/A | -| `street2` | *Optional\* | :heavy_minus_sign: | N/A | -| `city` | *Optional\* | :heavy_minus_sign: | N/A | -| `state` | *Optional\* | :heavy_minus_sign: | N/A | -| `zip` | *Optional\* | :heavy_minus_sign: | N/A | -| `country` | *Optional\* | :heavy_minus_sign: | N/A | \ No newline at end of file +| Field | Type | Required | Description | Example | +| ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | ------------------------------------------------------- | +| `street1` | *String* | :heavy_check_mark: | Street address line 1. | 55 Mission St | +| `street2` | *JsonNullable\* | :heavy_minus_sign: | Apartment, suite, unit, or building (optional). | Floor 3 | +| `city` | *String* | :heavy_check_mark: | City. | San Francisco | +| `state` | *String* | :heavy_check_mark: | Two-letter U.S. state or territory postal abbreviation. | CA | +| `zip` | *String* | :heavy_check_mark: | ZIP or ZIP+4. | 94105 | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/Location.md b/gusto_embedded_v_2025_11_15/docs/models/components/Location.md index 56a22e02c..bf6907034 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/Location.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/Location.md @@ -22,4 +22,5 @@ The representation of an address in Gusto. | `createdAt` | *Optional\* | :heavy_minus_sign: | Datetime for when location is created | | `updatedAt` | *Optional\* | :heavy_minus_sign: | Datetime for when location is updated | | `active` | *Optional\* | :heavy_minus_sign: | The status of the location. Inactive locations have been deleted, but may still have historical data associated with them. | -| `inactive` | *Optional\* | :heavy_minus_sign: | The status of the location. Inactive locations have been deleted, but may still have historical data associated with them. | \ No newline at end of file +| `inactive` | *Optional\* | :heavy_minus_sign: | The status of the location. Inactive locations have been deleted, but may still have historical data associated with them. | +| `warnings` | List\<[WarningObject](../../models/components/WarningObject.md)> | :heavy_minus_sign: | An array of warning objects that provide additional information about the address. Warnings do not prevent the address from being saved. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/MemberPortalInvitation.md b/gusto_embedded_v_2025_11_15/docs/models/components/MemberPortalInvitation.md new file mode 100644 index 000000000..588490e35 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/MemberPortalInvitation.md @@ -0,0 +1,12 @@ +# MemberPortalInvitation + +The status of a member portal invitation for an employee or contractor. Returned by `GET /v1/employees/{employee_id}/member_portal_invitations` and `GET /v1/contractors/{contractor_uuid}/member_portal_invitations`. + + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `status` | [MemberPortalInvitationStatus1](../../models/components/MemberPortalInvitationStatus1.md) | :heavy_check_mark: | Current status of the member portal invitation.
    - `pending`: The invitation record has been created but the invitation email has not yet been delivered.
    - `sent`: The invitation email has been delivered to the member.
    - `verified`: The member has been verified by the member portal partner.
    - `complete`: The member has fully completed their member portal registration.
    - `cancelled`: The invitation has been cancelled, either via `DELETE` on this endpoint or because it was superseded.
    | sent | +| `expired` | *boolean* | :heavy_check_mark: | Whether the invitation can no longer be acted on by the member. Returns `true` when the invitation token has expired or when the invitation has been `cancelled`. To reissue an expired invitation, call `POST` on this endpoint again — a new token will be generated and will override the prior one.
    | false | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/MemberPortalInvitationStatus.md b/gusto_embedded_v_2025_11_15/docs/models/components/MemberPortalInvitationStatus.md index 9f4f500a0..5f221901b 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/MemberPortalInvitationStatus.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/MemberPortalInvitationStatus.md @@ -7,7 +7,7 @@ Member portal invitation status information. Only included when the include para | Field | Type | Required | Description | | ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | -| `status` | [Optional\](../../models/components/ShowEmployeesStatus.md) | :heavy_minus_sign: | The current status of the member portal invitation. | +| `status` | [Optional\](../../models/components/ContractorStatus.md) | :heavy_minus_sign: | The current status of the member portal invitation. | | `tokenExpired` | *JsonNullable\* | :heavy_minus_sign: | Whether the invitation token has expired. | | `welcomeEmailSentAt` | [OffsetDateTime](https://docs.oracle.com/javase/8/docs/api/java/time/OffsetDateTime.html) | :heavy_minus_sign: | The date and time when the welcome email was sent. | | `lastPasswordResentAt` | [OffsetDateTime](https://docs.oracle.com/javase/8/docs/api/java/time/OffsetDateTime.html) | :heavy_minus_sign: | The date and time when the password reset was last resent. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/MemberPortalInvitationStatus1.md b/gusto_embedded_v_2025_11_15/docs/models/components/MemberPortalInvitationStatus1.md new file mode 100644 index 000000000..191d69132 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/MemberPortalInvitationStatus1.md @@ -0,0 +1,28 @@ +# MemberPortalInvitationStatus1 + +Current status of the member portal invitation. +- `pending`: The invitation record has been created but the invitation email has not yet been delivered. +- `sent`: The invitation email has been delivered to the member. +- `verified`: The member has been verified by the member portal partner. +- `complete`: The member has fully completed their member portal registration. +- `cancelled`: The invitation has been cancelled, either via `DELETE` on this endpoint or because it was superseded. + + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.components.MemberPortalInvitationStatus1; + +MemberPortalInvitationStatus1 value = MemberPortalInvitationStatus1.PENDING; +``` + + +## Values + +| Name | Value | +| ----------- | ----------- | +| `PENDING` | pending | +| `SENT` | sent | +| `VERIFIED` | verified | +| `COMPLETE` | complete | +| `CANCELLED` | cancelled | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/OnboardingStatus.md b/gusto_embedded_v_2025_11_15/docs/models/components/OnboardingStatus.md index ae8429dde..cf14d8628 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/OnboardingStatus.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/OnboardingStatus.md @@ -1,23 +1,24 @@ # OnboardingStatus +One of the "onboarding_status" enum values. + ## Example Usage ```java import com.gusto.embedded_api_v_2025_11_15.models.components.OnboardingStatus; -OnboardingStatus value = OnboardingStatus.ONBOARDING_COMPLETED; +OnboardingStatus value = OnboardingStatus.ADMIN_ONBOARDING_INCOMPLETE; ``` ## Values -| Name | Value | -| --------------------------------------- | --------------------------------------- | -| `ONBOARDING_COMPLETED` | onboarding_completed | -| `ADMIN_ONBOARDING_INCOMPLETE` | admin_onboarding_incomplete | -| `SELF_ONBOARDING_PENDING_INVITE` | self_onboarding_pending_invite | -| `SELF_ONBOARDING_INVITED` | self_onboarding_invited | -| `SELF_ONBOARDING_INVITED_STARTED` | self_onboarding_invited_started | -| `SELF_ONBOARDING_INVITED_OVERDUE` | self_onboarding_invited_overdue | -| `SELF_ONBOARDING_COMPLETED_BY_EMPLOYEE` | self_onboarding_completed_by_employee | -| `SELF_ONBOARDING_AWAITING_ADMIN_REVIEW` | self_onboarding_awaiting_admin_review | \ No newline at end of file +| Name | Value | +| ----------------------------- | ----------------------------- | +| `ADMIN_ONBOARDING_INCOMPLETE` | admin_onboarding_incomplete | +| `ADMIN_ONBOARDING_REVIEW` | admin_onboarding_review | +| `SELF_ONBOARDING_NOT_INVITED` | self_onboarding_not_invited | +| `SELF_ONBOARDING_INVITED` | self_onboarding_invited | +| `SELF_ONBOARDING_STARTED` | self_onboarding_started | +| `SELF_ONBOARDING_REVIEW` | self_onboarding_review | +| `ONBOARDING_COMPLETED` | onboarding_completed | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/Options.md b/gusto_embedded_v_2025_11_15/docs/models/components/Options.md index df1a11cd0..87fc6e785 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/Options.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/Options.md @@ -3,7 +3,8 @@ ## Fields -| Field | Type | Required | Description | -| -------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | -| `value` | [Optional\](../../models/components/EmployeeStateTaxInputQuestionFormatValue.md) | :heavy_minus_sign: | An allowed value to answer the question | -| `label` | *String* | :heavy_check_mark: | A display label that corresponds to the answer value | \ No newline at end of file +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | +| `label` | *String* | :heavy_check_mark: | A customer facing label for the answer | +| `value` | [TaxRequirementMetadataValue](../../models/components/TaxRequirementMetadataValue.md) | :heavy_check_mark: | The actual value to be submitted | +| `shortLabel` | *JsonNullable\* | :heavy_minus_sign: | A less verbose label that may sometimes be available | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/OverrideType.md b/gusto_embedded_v_2025_11_15/docs/models/components/OverrideType.md new file mode 100644 index 000000000..304111773 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/OverrideType.md @@ -0,0 +1,18 @@ +# OverrideType + +Override mode. Only `one_time` is currently exposed. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.components.OverrideType; + +OverrideType value = OverrideType.ONE_TIME; +``` + + +## Values + +| Name | Value | +| ---------- | ---------- | +| `ONE_TIME` | one_time | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/PartnerManagedCompanyDisassociateResponse.md b/gusto_embedded_v_2025_11_15/docs/models/components/PartnerManagedCompanyDisassociateResponse.md new file mode 100644 index 000000000..72338ea6c --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/PartnerManagedCompanyDisassociateResponse.md @@ -0,0 +1,11 @@ +# PartnerManagedCompanyDisassociateResponse + +The company that was disassociated from the partner's embedded payroll product. + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | -------------------------------------- | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the disassociated company. | +| `companyName` | *String* | :heavy_check_mark: | The name of the disassociated company. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/PayScheduleAssignment.md b/gusto_embedded_v_2025_11_15/docs/models/components/PayScheduleAssignment.md index 28a0e0f02..4cfde5f04 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/PayScheduleAssignment.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/PayScheduleAssignment.md @@ -7,7 +7,7 @@ The representation of a pay schedule assignment. | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------- | -| `type` | [JsonNullable\](../../models/components/Type.md) | :heavy_minus_sign: | The pay schedule assignment type. | +| `type` | [JsonNullable\](../../models/components/PayScheduleAssignmentType.md) | :heavy_minus_sign: | The pay schedule assignment type. | | `hourlyPayScheduleUuid` | *JsonNullable\* | :heavy_minus_sign: | Pay schedule for hourly employees. | | `salariedPayScheduleUuid` | *JsonNullable\* | :heavy_minus_sign: | Pay schedule for salaried employees. | | `defaultPayScheduleUuid` | *JsonNullable\* | :heavy_minus_sign: | Default pay schedule for employees. | diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/PayScheduleAssignmentBody.md b/gusto_embedded_v_2025_11_15/docs/models/components/PayScheduleAssignmentBody.md index 44af68c52..d1ca8d3c8 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/PayScheduleAssignmentBody.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/PayScheduleAssignmentBody.md @@ -10,5 +10,5 @@ | `salariedPayScheduleUuid` | *Optional\* | :heavy_minus_sign: | Pay schedule for salaried employees. | | `defaultPayScheduleUuid` | *Optional\* | :heavy_minus_sign: | Default pay schedule for employees. | | `partialAssignment` | *Optional\* | :heavy_minus_sign: | 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. | -| `employees` | List\<[Employees](../../models/components/Employees.md)> | :heavy_minus_sign: | List of employees and their pay schedules. | +| `employees` | List\<[PayScheduleAssignmentBodyEmployees](../../models/components/PayScheduleAssignmentBodyEmployees.md)> | :heavy_minus_sign: | List of employees and their pay schedules. | | `departments` | List\<[Departments](../../models/components/Departments.md)> | :heavy_minus_sign: | List of departments and their pay schedules. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/PayScheduleAssignmentBodyEmployees.md b/gusto_embedded_v_2025_11_15/docs/models/components/PayScheduleAssignmentBodyEmployees.md new file mode 100644 index 000000000..626f7b928 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/PayScheduleAssignmentBodyEmployees.md @@ -0,0 +1,9 @@ +# PayScheduleAssignmentBodyEmployees + + +## Fields + +| Field | Type | Required | Description | +| ------------------- | ------------------- | ------------------- | ------------------- | +| `employeeUuid` | *Optional\* | :heavy_minus_sign: | Employee UUID | +| `payScheduleUuid` | *Optional\* | :heavy_minus_sign: | Pay schedule UUID | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/PayScheduleAssignmentType.md b/gusto_embedded_v_2025_11_15/docs/models/components/PayScheduleAssignmentType.md new file mode 100644 index 000000000..0cfc8ad98 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/PayScheduleAssignmentType.md @@ -0,0 +1,19 @@ +# PayScheduleAssignmentType + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.components.PayScheduleAssignmentType; + +PayScheduleAssignmentType value = PayScheduleAssignmentType.SINGLE; +``` + + +## Values + +| Name | Value | +| ----------------- | ----------------- | +| `SINGLE` | single | +| `HOURLY_SALARIED` | hourly_salaried | +| `BY_EMPLOYEE` | by_employee | +| `BY_DEPARTMENT` | by_department | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/PayScheduleAutoPayrollEnablementBlocker.md b/gusto_embedded_v_2025_11_15/docs/models/components/PayScheduleAutoPayrollEnablementBlocker.md index ba659d09f..3f81e5862 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/PayScheduleAutoPayrollEnablementBlocker.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/PayScheduleAutoPayrollEnablementBlocker.md @@ -5,7 +5,7 @@ A single blocker preventing Autopayroll enablement. ## Fields -| Field | Type | Required | Description | -| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `key` | *Optional\* | :heavy_minus_sign: | The blocker type (e.g. employees_not_on_direct_deposit, employees_not_salaried, missing_funding_method, missing_state_tax_requirements, one_day_ach_speed_not_supported, company_suspended, earned_fast_ach_not_met). | -| `metadata` | [Optional\](../../models/components/PayScheduleAutoPayrollEnablementBlockerMetadata.md) | :heavy_minus_sign: | Blocker-specific metadata (e.g. employee_uuids, states). | \ No newline at end of file +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| `key` | *Optional\* | :heavy_minus_sign: | The blocker type. Possible values: employees_not_on_direct_deposit, employees_not_salaried, missing_state_tax_requirements, missing_funding_method, one_day_ach_speed_not_supported, company_suspended, earned_fast_ach_not_met, hourly_employees_missing_default_hours. | +| `metadata` | [Optional\](../../models/components/PayScheduleAutoPayrollEnablementBlockerMetadata.md) | :heavy_minus_sign: | Blocker-specific metadata (e.g. employee_uuids, states). | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/PaymentMethod.md b/gusto_embedded_v_2025_11_15/docs/models/components/PaymentMethod.md index 5fc9eec24..7bdc0c571 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/PaymentMethod.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/PaymentMethod.md @@ -1,13 +1,13 @@ # PaymentMethod -The employee's payment method +Payment method to filter by. ## Example Usage ```java import com.gusto.embedded_api_v_2025_11_15.models.components.PaymentMethod; -PaymentMethod value = PaymentMethod.DIRECT_DEPOSIT; +PaymentMethod value = PaymentMethod.CHECK; ``` @@ -15,5 +15,5 @@ PaymentMethod value = PaymentMethod.DIRECT_DEPOSIT; | Name | Value | | ---------------- | ---------------- | -| `DIRECT_DEPOSIT` | Direct Deposit | -| `CHECK` | Check | \ No newline at end of file +| `CHECK` | check | +| `DIRECT_DEPOSIT` | direct_deposit | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/PayrollBatch.md b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollBatch.md new file mode 100644 index 000000000..0ef0a9c6f --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollBatch.md @@ -0,0 +1,13 @@ +# PayrollBatch + +A payroll cancellation batch request. + + +## Fields + +| Field | Type | Required | Description | +| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `uuid` | *String* | :heavy_check_mark: | The unique identifier of the payroll cancellation batch. | +| `idempotencyKey` | *String* | :heavy_check_mark: | The idempotency key provided when creating the batch. | +| `batchAction` | [BatchAction](../../models/components/BatchAction.md) | :heavy_check_mark: | The action being performed on the batch. | +| `status` | [PayrollBatchStatus](../../models/components/PayrollBatchStatus.md) | :heavy_check_mark: | The lifecycle status of the batch request itself. Terminal values are `completed` (processing finished — inspect `results` and `exclusions` for per-payroll outcomes) and `failed` (the batch crashed at the system level; can be retried). This is distinct from the per-payroll `status` returned inside `results[]`. A `completed` batch does not imply every payroll was cancelled. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/PayrollBatchResults.md b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollBatchResults.md new file mode 100644 index 000000000..35d1b086d --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollBatchResults.md @@ -0,0 +1,19 @@ +# PayrollBatchResults + +A payroll cancellation batch with per-payroll results. + + +## Fields + +| Field | Type | Required | Description | +| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `uuid` | *String* | :heavy_check_mark: | The unique identifier of the payroll cancellation batch. | +| `idempotencyKey` | *String* | :heavy_check_mark: | The idempotency key provided when creating the batch. | +| `status` | [PayrollBatchResultsStatus](../../models/components/PayrollBatchResultsStatus.md) | :heavy_check_mark: | The lifecycle status of the batch request itself. Terminal values are `completed` (processing finished — inspect `results` and `exclusions` for per-payroll outcomes) and `failed` (the batch crashed at the system level; can be retried). This is distinct from the per-payroll `status` returned inside `results[]`. A `completed` batch does not imply every payroll was cancelled. | +| `submittedAt` | [OffsetDateTime](https://docs.oracle.com/javase/8/docs/api/java/time/OffsetDateTime.html) | :heavy_check_mark: | The timestamp when the batch was submitted. | +| `completedAt` | [OffsetDateTime](https://docs.oracle.com/javase/8/docs/api/java/time/OffsetDateTime.html) | :heavy_minus_sign: | The timestamp when the batch processing completed. | +| `submittedItems` | *JsonNullable\* | :heavy_minus_sign: | The number of payrolls submitted in the batch. | +| `processedItems` | *Optional\* | :heavy_minus_sign: | The number of payrolls processed (cancelled or attempted). Only present once the batch reaches a terminal status. | +| `excludedItems` | *Optional\* | :heavy_minus_sign: | The number of payrolls excluded from processing. Only present once the batch reaches a terminal status. | +| `results` | List\<[Results](../../models/components/Results.md)> | :heavy_minus_sign: | Per-payroll cancellation results. Only present once the batch reaches a terminal status. One entry per authorized payroll. | +| `exclusions` | List\<[Exclusions](../../models/components/Exclusions.md)> | :heavy_minus_sign: | Payrolls that could not be processed, determined at submission time. Only present once the batch reaches a terminal status. Every UUID submitted in the POST batch appears in exactly one of `results` or `exclusions`. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/PayrollBatchResultsCategory.md b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollBatchResultsCategory.md new file mode 100644 index 000000000..ac6e95e51 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollBatchResultsCategory.md @@ -0,0 +1,22 @@ +# PayrollBatchResultsCategory + +Machine-readable category for why the payroll was excluded. +- `not_found`: the payroll does not exist, or is not associated with a company the partner is mapped to +- `duplicate_operation`: the same payroll UUID appeared more than once in the request; only the first occurrence is processed + + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.components.PayrollBatchResultsCategory; + +PayrollBatchResultsCategory value = PayrollBatchResultsCategory.NOT_FOUND; +``` + + +## Values + +| Name | Value | +| --------------------- | --------------------- | +| `NOT_FOUND` | not_found | +| `DUPLICATE_OPERATION` | duplicate_operation | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/PayrollBatchResultsEntityType.md b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollBatchResultsEntityType.md new file mode 100644 index 000000000..738a8fcfc --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollBatchResultsEntityType.md @@ -0,0 +1,18 @@ +# PayrollBatchResultsEntityType + +The type of entity this exclusion represents. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.components.PayrollBatchResultsEntityType; + +PayrollBatchResultsEntityType value = PayrollBatchResultsEntityType.PAYROLL; +``` + + +## Values + +| Name | Value | +| --------- | --------- | +| `PAYROLL` | payroll | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/PayrollBatchResultsErrors.md b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollBatchResultsErrors.md new file mode 100644 index 000000000..2923fe276 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollBatchResultsErrors.md @@ -0,0 +1,10 @@ +# PayrollBatchResultsErrors + + +## Fields + +| Field | Type | Required | Description | +| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `errorKey` | *Optional\* | :heavy_minus_sign: | The key identifying the error source. | +| `category` | [Optional\](../../models/components/PayrollBatchResultsResultsCategory.md) | :heavy_minus_sign: | Machine-readable reason the cancellation failed.
    - `not_cancellable`: the payroll is past the point where it can be cancelled
    - `internal_error`: an unexpected error occurred; the request can be retried
    | +| `message` | *Optional\* | :heavy_minus_sign: | Human-readable explanation of the failure. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/PayrollBatchResultsExclusionsStatus.md b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollBatchResultsExclusionsStatus.md new file mode 100644 index 000000000..43a02373f --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollBatchResultsExclusionsStatus.md @@ -0,0 +1,18 @@ +# PayrollBatchResultsExclusionsStatus + +Always `failed` for an excluded payroll. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.components.PayrollBatchResultsExclusionsStatus; + +PayrollBatchResultsExclusionsStatus value = PayrollBatchResultsExclusionsStatus.FAILED; +``` + + +## Values + +| Name | Value | +| -------- | -------- | +| `FAILED` | failed | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/PayrollBatchResultsResultsCategory.md b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollBatchResultsResultsCategory.md new file mode 100644 index 000000000..2e5e52534 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollBatchResultsResultsCategory.md @@ -0,0 +1,22 @@ +# PayrollBatchResultsResultsCategory + +Machine-readable reason the cancellation failed. +- `not_cancellable`: the payroll is past the point where it can be cancelled +- `internal_error`: an unexpected error occurred; the request can be retried + + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.components.PayrollBatchResultsResultsCategory; + +PayrollBatchResultsResultsCategory value = PayrollBatchResultsResultsCategory.NOT_CANCELLABLE; +``` + + +## Values + +| Name | Value | +| ----------------- | ----------------- | +| `NOT_CANCELLABLE` | not_cancellable | +| `INTERNAL_ERROR` | internal_error | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/PayrollBatchResultsResultsStatus.md b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollBatchResultsResultsStatus.md new file mode 100644 index 000000000..7182a95da --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollBatchResultsResultsStatus.md @@ -0,0 +1,22 @@ +# PayrollBatchResultsResultsStatus + +The outcome of cancelling this payroll. A cancel is atomic — there is no per-payroll `partial_success`. +- `success`: the payroll was cancelled, or required no action (already cancelled / never run) +- `failed`: the payroll could not be cancelled; see `errors` + + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.components.PayrollBatchResultsResultsStatus; + +PayrollBatchResultsResultsStatus value = PayrollBatchResultsResultsStatus.SUCCESS; +``` + + +## Values + +| Name | Value | +| --------- | --------- | +| `SUCCESS` | success | +| `FAILED` | failed | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/PayrollBatchResultsStatus.md b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollBatchResultsStatus.md new file mode 100644 index 000000000..fe77eacfd --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollBatchResultsStatus.md @@ -0,0 +1,21 @@ +# PayrollBatchResultsStatus + +The lifecycle status of the batch request itself. Terminal values are `completed` (processing finished — inspect `results` and `exclusions` for per-payroll outcomes) and `failed` (the batch crashed at the system level; can be retried). This is distinct from the per-payroll `status` returned inside `results[]`. A `completed` batch does not imply every payroll was cancelled. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.components.PayrollBatchResultsStatus; + +PayrollBatchResultsStatus value = PayrollBatchResultsStatus.PENDING; +``` + + +## Values + +| Name | Value | +| ------------ | ------------ | +| `PENDING` | pending | +| `PROCESSING` | processing | +| `COMPLETED` | completed | +| `FAILED` | failed | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/PayrollBatchStatus.md b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollBatchStatus.md new file mode 100644 index 000000000..c62084f17 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollBatchStatus.md @@ -0,0 +1,21 @@ +# PayrollBatchStatus + +The lifecycle status of the batch request itself. Terminal values are `completed` (processing finished — inspect `results` and `exclusions` for per-payroll outcomes) and `failed` (the batch crashed at the system level; can be retried). This is distinct from the per-payroll `status` returned inside `results[]`. A `completed` batch does not imply every payroll was cancelled. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.components.PayrollBatchStatus; + +PayrollBatchStatus value = PayrollBatchStatus.PENDING; +``` + + +## Values + +| Name | Value | +| ------------ | ------------ | +| `PENDING` | pending | +| `PROCESSING` | processing | +| `COMPLETED` | completed | +| `FAILED` | failed | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/PayrollDigest.md b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollDigest.md index 0322bb856..053c53bd2 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/PayrollDigest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollDigest.md @@ -9,5 +9,5 @@ A payroll digest batch request. | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `uuid` | *String* | :heavy_check_mark: | The unique identifier of the payroll digest batch. | | `idempotencyKey` | *String* | :heavy_check_mark: | The idempotency key provided when creating the batch. | -| `batchAction` | [BatchAction](../../models/components/BatchAction.md) | :heavy_check_mark: | The action being performed on the batch. | +| `batchAction` | [PayrollDigestBatchAction](../../models/components/PayrollDigestBatchAction.md) | :heavy_check_mark: | The action being performed on the batch. | | `status` | [PayrollDigestStatus](../../models/components/PayrollDigestStatus.md) | :heavy_check_mark: | The lifecycle status of the batch request itself. Terminal values are `completed` (processing finished — inspect `results` and `exclusions` for per-company outcomes) and `failed` (request failed; can be retried). This is distinct from the per-company `status` returned inside `results[]` and `exclusions[]`. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/PayrollDigestBatchAction.md b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollDigestBatchAction.md new file mode 100644 index 000000000..cdd8eaad5 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollDigestBatchAction.md @@ -0,0 +1,18 @@ +# PayrollDigestBatchAction + +The action being performed on the batch. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.components.PayrollDigestBatchAction; + +PayrollDigestBatchAction value = PayrollDigestBatchAction.CREATE; +``` + + +## Values + +| Name | Value | +| -------- | -------- | +| `CREATE` | create | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/PayrollDigestResultsBlockers.md b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollDigestResultsBlockers.md new file mode 100644 index 000000000..0e66251ca --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollDigestResultsBlockers.md @@ -0,0 +1,9 @@ +# PayrollDigestResultsBlockers + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------------- | ------------------------------------------------------------- | ------------------------------------------------------------- | ------------------------------------------------------------- | +| `type` | *Optional\* | :heavy_minus_sign: | A machine-readable blocker key (e.g. `missing_bank_account`). | +| `description` | *Optional\* | :heavy_minus_sign: | Human-readable description of the blocker. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/PayrollDigestResultsResults.md b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollDigestResultsResults.md index 3b98f1941..dd80d9d7c 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/PayrollDigestResultsResults.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollDigestResultsResults.md @@ -10,5 +10,5 @@ | `uuid` | *Optional\* | :heavy_minus_sign: | The UUID of the company. | | `name` | *Optional\* | :heavy_minus_sign: | The legal/display name of the company. | | `status` | [Optional\](../../models/components/PayrollDigestResultsResultsStatus.md) | :heavy_minus_sign: | The status of this company's digest computation. | -| `blockers` | List\<[Blockers](../../models/components/Blockers.md)> | :heavy_minus_sign: | Reasons the company cannot currently run payroll. Applies to every payroll in this company's `payrolls` array — blockers are evaluated at the company level, not per payroll. Empty when there are no blockers. | +| `blockers` | List\<[PayrollDigestResultsBlockers](../../models/components/PayrollDigestResultsBlockers.md)> | :heavy_minus_sign: | Reasons the company cannot currently run payroll. Applies to every payroll in this company's `payrolls` array — blockers are evaluated at the company level, not per payroll. Empty when there are no blockers. | | `payrolls` | List\<[Payrolls](../../models/components/Payrolls.md)> | :heavy_minus_sign: | Payrolls for this company within the digest date window (7 days past, 30–60 days future). May be empty. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/PayrollEmployeeCompensationsType.md b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollEmployeeCompensationsType.md index 3d03e72a6..84593d3bf 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/PayrollEmployeeCompensationsType.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollEmployeeCompensationsType.md @@ -3,21 +3,22 @@ ## Fields -| Field | Type | Required | Description | -| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `employeeUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the employee. | -| `excluded` | *Optional\* | :heavy_minus_sign: | This employee will be excluded (skipped) from payroll calculation and will not be paid for the payroll. Cancelling a payroll would reset all employees' excluded back to false. | -| `firstName` | *JsonNullable\* | :heavy_minus_sign: | The first name of the employee. Requires `employees:read` scope. | -| `preferredFirstName` | *JsonNullable\* | :heavy_minus_sign: | The preferred first name of the employee. Requires `employees:read` scope. | -| `lastName` | *JsonNullable\* | :heavy_minus_sign: | The last name of the employee. Requires `employees:read` scope. | -| `grossPay` | *JsonNullable\* | :heavy_minus_sign: | The employee's gross pay, equal to regular wages + cash tips + payroll tips + any other additional earnings, excluding imputed income. This value is only available for processed payrolls. | -| `netPay` | *JsonNullable\* | :heavy_minus_sign: | The employee's net pay, equal to gross_pay - employee taxes - employee deductions or garnishments - cash tips. This value is only available for processed payrolls. | -| `checkAmount` | *JsonNullable\* | :heavy_minus_sign: | The employee's check amount, equal to net_pay + reimbursements. This value is only available for processed payrolls. | -| `paymentMethod` | [JsonNullable\](../../models/components/PayrollEmployeeCompensationsTypePaymentMethod.md) | :heavy_minus_sign: | The employee's compensation payment method. Is *only* `Historical` when retrieving external payrolls initially run outside of Gusto, then put into Gusto. | -| `memo` | *JsonNullable\* | :heavy_minus_sign: | Custom text that will be printed as a personal note to the employee on a paystub. | -| `fixedCompensations` | List\<[PayrollEmployeeCompensationsTypeFixedCompensations](../../models/components/PayrollEmployeeCompensationsTypeFixedCompensations.md)> | :heavy_minus_sign: | An array of fixed compensations for the employee. Fixed compensations include tips, bonuses, and one time reimbursements. If this payroll has been processed, only fixed compensations with a value greater than 0.00 are returned. For an unprocessed payroll, all active fixed compensations are returned. | -| `hourlyCompensations` | List\<[PayrollEmployeeCompensationsTypeHourlyCompensations](../../models/components/PayrollEmployeeCompensationsTypeHourlyCompensations.md)> | :heavy_minus_sign: | An array of hourly compensations for the employee. Hourly compensations include regular, overtime, and double overtime hours. If this payroll has been processed, only hourly compensations with a value greater than 0.00 are returned. For an unprocessed payroll, all active hourly compensations are returned. | -| `paidTimeOff` | List\<[PayrollEmployeeCompensationsTypePaidTimeOff](../../models/components/PayrollEmployeeCompensationsTypePaidTimeOff.md)> | :heavy_minus_sign: | An array of all paid time off the employee is eligible for this pay period. | -| `reimbursements` | List\<[PayrollEmployeeCompensationsTypeReimbursements](../../models/components/PayrollEmployeeCompensationsTypeReimbursements.md)> | :heavy_minus_sign: | An array of reimbursements for the employee. | -| `version` | *Optional\* | :heavy_minus_sign: | The current version of this employee compensation. This field is only available for prepared payrolls. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. | -| `deductions` | List\<[Deductions](../../models/components/Deductions.md)> | :heavy_minus_sign: | An array of deductions for the employee. This field is included by default for regular payrolls in version `v2025-06-15` and later. | \ No newline at end of file +| Field | Type | Required | Description | +| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `employeeUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the employee. | +| `excluded` | *Optional\* | :heavy_minus_sign: | This employee will be excluded (skipped) from payroll calculation and will not be paid for the payroll. Cancelling a payroll would reset all employees' excluded back to false. | +| `firstName` | *JsonNullable\* | :heavy_minus_sign: | The first name of the employee. Requires `employees:read` scope. | +| `preferredFirstName` | *JsonNullable\* | :heavy_minus_sign: | The preferred first name of the employee. Requires `employees:read` scope. | +| `lastName` | *JsonNullable\* | :heavy_minus_sign: | The last name of the employee. Requires `employees:read` scope. | +| `grossPay` | *JsonNullable\* | :heavy_minus_sign: | The employee's gross pay, equal to regular wages + cash tips + payroll tips + any other additional earnings, excluding imputed income. This value is only available for processed payrolls. | +| `netPay` | *JsonNullable\* | :heavy_minus_sign: | The employee's net pay, equal to gross_pay - employee taxes - employee deductions or garnishments - cash tips. This value is only available for processed payrolls. | +| `checkAmount` | *JsonNullable\* | :heavy_minus_sign: | The employee's check amount, equal to net_pay + reimbursements. This value is only available for processed payrolls. | +| `paymentMethod` | [JsonNullable\](../../models/components/PayrollEmployeeCompensationsTypePaymentMethod.md) | :heavy_minus_sign: | The employee's compensation payment method. Is *only* `Historical` when retrieving external payrolls initially run outside of Gusto, then put into Gusto. | +| `memo` | *JsonNullable\* | :heavy_minus_sign: | Custom text that will be printed as a personal note to the employee on a paystub. | +| `fixedCompensations` | List\<[FixedCompensations](../../models/components/FixedCompensations.md)> | :heavy_minus_sign: | An array of fixed compensations for the employee. Fixed compensations include tips and bonuses. On regular payrolls, reimbursements are sent via the dedicated `reimbursements` array instead. Off-cycle payrolls continue to include reimbursements in `fixed_compensations`. If this payroll has been processed, only fixed compensations with a value greater than 0.00 are returned. For an unprocessed payroll, all active fixed compensations are returned. | +| `hourlyCompensations` | List\<[HourlyCompensations](../../models/components/HourlyCompensations.md)> | :heavy_minus_sign: | An array of hourly compensations for the employee. Hourly compensations include regular, overtime, and double overtime hours. If this payroll has been processed, only hourly compensations with a value greater than 0.00 are returned. For an unprocessed payroll, all active hourly compensations are returned. | +| `paidTimeOff` | List\<[PayrollEmployeeCompensationsTypePaidTimeOff](../../models/components/PayrollEmployeeCompensationsTypePaidTimeOff.md)> | :heavy_minus_sign: | An array of all paid time off the employee is eligible for this pay period. | +| `reimbursements` | List\<[Reimbursements](../../models/components/Reimbursements.md)> | :heavy_minus_sign: | An array of reimbursements for the employee. | +| `customWithholdings` | [Optional\](../../models/components/CustomWithholdings.md) | :heavy_minus_sign: | The one-time custom withholding overrides applied to this payroll for this employee.
    `federal` is null when no federal one-time override is set; `state` is an empty
    array when no state one-time overrides are set.
    | +| `version` | *Optional\* | :heavy_minus_sign: | The current version of this employee compensation. This field is only available for prepared payrolls. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. | +| `deductions` | List\<[Deductions](../../models/components/Deductions.md)> | :heavy_minus_sign: | An array of deductions for the employee. This field is included by default for regular payrolls in version `v2025-06-15` and later. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/PayrollEmployeeCompensationsTypeAmountType.md b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollEmployeeCompensationsTypeAmountType.md new file mode 100644 index 000000000..9bdbd6950 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollEmployeeCompensationsTypeAmountType.md @@ -0,0 +1,19 @@ +# PayrollEmployeeCompensationsTypeAmountType + +How to interpret the amount. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.components.PayrollEmployeeCompensationsTypeAmountType; + +PayrollEmployeeCompensationsTypeAmountType value = PayrollEmployeeCompensationsTypeAmountType.FIXED; +``` + + +## Values + +| Name | Value | +| --------- | --------- | +| `FIXED` | fixed | +| `PERCENT` | percent | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/PayrollEmployeeCompensationsTypeCustomWithholdingsAmountType.md b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollEmployeeCompensationsTypeCustomWithholdingsAmountType.md new file mode 100644 index 000000000..04f385820 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollEmployeeCompensationsTypeCustomWithholdingsAmountType.md @@ -0,0 +1,19 @@ +# PayrollEmployeeCompensationsTypeCustomWithholdingsAmountType + +How to interpret the amount. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.components.PayrollEmployeeCompensationsTypeCustomWithholdingsAmountType; + +PayrollEmployeeCompensationsTypeCustomWithholdingsAmountType value = PayrollEmployeeCompensationsTypeCustomWithholdingsAmountType.FIXED; +``` + + +## Values + +| Name | Value | +| --------- | --------- | +| `FIXED` | fixed | +| `PERCENT` | percent | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/PayrollEmployeeCompensationsTypeOverrideType.md b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollEmployeeCompensationsTypeOverrideType.md new file mode 100644 index 000000000..68027332a --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollEmployeeCompensationsTypeOverrideType.md @@ -0,0 +1,18 @@ +# PayrollEmployeeCompensationsTypeOverrideType + +Override mode. Only `one_time` is currently exposed. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.components.PayrollEmployeeCompensationsTypeOverrideType; + +PayrollEmployeeCompensationsTypeOverrideType value = PayrollEmployeeCompensationsTypeOverrideType.ONE_TIME; +``` + + +## Values + +| Name | Value | +| ---------- | ---------- | +| `ONE_TIME` | one_time | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/PayrollReceipt.md b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollReceipt.md index 1cfc21753..4d8db7ded 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/PayrollReceipt.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollReceipt.md @@ -15,7 +15,7 @@ | `licenseUri` | *Optional\* | :heavy_minus_sign: | URL for the license information for the licensed payroll processor. Always the fixed string "https://gusto.com/about/licenses" | | `rightToRefund` | *Optional\* | :heavy_minus_sign: | N/A | | `liabilityOfLicensee` | *Optional\* | :heavy_minus_sign: | N/A | -| `totals` | [Optional\](../../models/components/Totals.md) | :heavy_minus_sign: | The subtotals for the payroll. | +| `totals` | [Optional\](../../models/components/PayrollReceiptTotals.md) | :heavy_minus_sign: | The subtotals for the payroll. | | `taxes` | List\<[Taxes](../../models/components/Taxes.md)> | :heavy_minus_sign: | An array of totaled employer and employee taxes for the pay period. | | `employeeCompensations` | List\<[PayrollReceiptEmployeeCompensations](../../models/components/PayrollReceiptEmployeeCompensations.md)> | :heavy_minus_sign: | An array of employee compensations and withholdings for this payroll | -| `licensee` | [Optional\](../../models/components/Licensee.md) | :heavy_minus_sign: | The licensed payroll processor | \ No newline at end of file +| `licensee` | [Optional\](../../models/components/PayrollReceiptLicensee.md) | :heavy_minus_sign: | The licensed payroll processor | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/ContractorPaymentReceiptLicensee.md b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollReceiptLicensee.md similarity index 97% rename from gusto_embedded_v_2025_11_15/docs/models/components/ContractorPaymentReceiptLicensee.md rename to gusto_embedded_v_2025_11_15/docs/models/components/PayrollReceiptLicensee.md index b0731de4a..b9d850a10 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/ContractorPaymentReceiptLicensee.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollReceiptLicensee.md @@ -1,4 +1,4 @@ -# ContractorPaymentReceiptLicensee +# PayrollReceiptLicensee The licensed payroll processor diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/PayrollReceiptTotals.md b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollReceiptTotals.md new file mode 100644 index 000000000..dd8d4da2a --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollReceiptTotals.md @@ -0,0 +1,14 @@ +# PayrollReceiptTotals + +The subtotals for the payroll. + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------- | ---------------------------------------------- | ---------------------------------------------- | ---------------------------------------------- | +| `companyDebit` | *Optional\* | :heavy_minus_sign: | The total company debit for the payroll. | +| `netPayDebit` | *Optional\* | :heavy_minus_sign: | The total company net pay for the payroll. | +| `childSupportDebit` | *Optional\* | :heavy_minus_sign: | The total child support debit for the payroll. | +| `reimbursementDebit` | *Optional\* | :heavy_minus_sign: | The total reimbursements for the payroll. | +| `taxDebit` | *Optional\* | :heavy_minus_sign: | The total tax debit for the payroll. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/PayrollShowCustomWithholdings.md b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollShowCustomWithholdings.md new file mode 100644 index 000000000..2d3858464 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollShowCustomWithholdings.md @@ -0,0 +1,14 @@ +# PayrollShowCustomWithholdings + +The one-time custom withholding overrides applied to this payroll for this employee. +`federal` is null when no federal one-time override is set; `state` is an empty +array when no state one-time overrides are set. + + + +## Fields + +| Field | Type | Required | Description | +| ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | +| `federal` | [JsonNullable\](../../models/components/PayrollShowFederal.md) | :heavy_minus_sign: | Federal one-time custom withholding override applied to this payroll. | +| `state` | List\<[PayrollShowState](../../models/components/PayrollShowState.md)> | :heavy_minus_sign: | State one-time custom withholding overrides applied to this payroll, one entry per state field. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/PayrollShowEmployeeCompensationsAmountType.md b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollShowEmployeeCompensationsAmountType.md new file mode 100644 index 000000000..ed76f1e51 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollShowEmployeeCompensationsAmountType.md @@ -0,0 +1,19 @@ +# PayrollShowEmployeeCompensationsAmountType + +How to interpret the amount. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.components.PayrollShowEmployeeCompensationsAmountType; + +PayrollShowEmployeeCompensationsAmountType value = PayrollShowEmployeeCompensationsAmountType.FIXED; +``` + + +## Values + +| Name | Value | +| --------- | --------- | +| `FIXED` | fixed | +| `PERCENT` | percent | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/PayrollShowEmployeeCompensationsCustomWithholdingsAmountType.md b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollShowEmployeeCompensationsCustomWithholdingsAmountType.md new file mode 100644 index 000000000..83bd4163b --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollShowEmployeeCompensationsCustomWithholdingsAmountType.md @@ -0,0 +1,19 @@ +# PayrollShowEmployeeCompensationsCustomWithholdingsAmountType + +How to interpret the amount. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.components.PayrollShowEmployeeCompensationsCustomWithholdingsAmountType; + +PayrollShowEmployeeCompensationsCustomWithholdingsAmountType value = PayrollShowEmployeeCompensationsCustomWithholdingsAmountType.FIXED; +``` + + +## Values + +| Name | Value | +| --------- | --------- | +| `FIXED` | fixed | +| `PERCENT` | percent | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/PayrollShowEmployeeCompensationsOverrideType.md b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollShowEmployeeCompensationsOverrideType.md new file mode 100644 index 000000000..b0f5b6459 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollShowEmployeeCompensationsOverrideType.md @@ -0,0 +1,18 @@ +# PayrollShowEmployeeCompensationsOverrideType + +Override mode. Only `one_time` is currently exposed. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.components.PayrollShowEmployeeCompensationsOverrideType; + +PayrollShowEmployeeCompensationsOverrideType value = PayrollShowEmployeeCompensationsOverrideType.ONE_TIME; +``` + + +## Values + +| Name | Value | +| ---------- | ---------- | +| `ONE_TIME` | one_time | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/PayrollShowFederal.md b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollShowFederal.md new file mode 100644 index 000000000..bbf1e6115 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollShowFederal.md @@ -0,0 +1,12 @@ +# PayrollShowFederal + +Federal one-time custom withholding override applied to this payroll. + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | +| `overrideType` | [Optional\](../../models/components/PayrollShowEmployeeCompensationsOverrideType.md) | :heavy_minus_sign: | Override mode. Only `one_time` is currently exposed. | +| `amount` | *Optional\* | :heavy_minus_sign: | The amount that was withheld for this payroll. | +| `amountType` | [Optional\](../../models/components/PayrollShowEmployeeCompensationsAmountType.md) | :heavy_minus_sign: | How to interpret the amount. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/PayrollShowOverrideType.md b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollShowOverrideType.md new file mode 100644 index 000000000..759a74593 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollShowOverrideType.md @@ -0,0 +1,18 @@ +# PayrollShowOverrideType + +Override mode. Only `one_time` is currently exposed. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.components.PayrollShowOverrideType; + +PayrollShowOverrideType value = PayrollShowOverrideType.ONE_TIME; +``` + + +## Values + +| Name | Value | +| ---------- | ---------- | +| `ONE_TIME` | one_time | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/PayrollShowState.md b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollShowState.md new file mode 100644 index 000000000..4b83ec0bd --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollShowState.md @@ -0,0 +1,11 @@ +# PayrollShowState + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| `employeeStateFieldUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the EmployeeStateField this withholding applies to. | +| `overrideType` | [Optional\](../../models/components/PayrollShowOverrideType.md) | :heavy_minus_sign: | Override mode. Only `one_time` is currently exposed. | +| `amount` | *Optional\* | :heavy_minus_sign: | The amount that was withheld for this payroll. | +| `amountType` | [Optional\](../../models/components/PayrollShowEmployeeCompensationsCustomWithholdingsAmountType.md) | :heavy_minus_sign: | How to interpret the amount. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/PayrollUnprocessedEmployeeCompensationsType.md b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollUnprocessedEmployeeCompensationsType.md index 8dc5537b9..d096cc5ce 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/PayrollUnprocessedEmployeeCompensationsType.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollUnprocessedEmployeeCompensationsType.md @@ -3,20 +3,21 @@ ## Fields -| Field | Type | Required | Description | -| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `employeeUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the employee. | -| `excluded` | *Optional\* | :heavy_minus_sign: | This employee will be excluded (skipped) from payroll calculation and will not be paid for the payroll. Cancelling a payroll would reset all employees' excluded back to false. | -| `firstName` | *JsonNullable\* | :heavy_minus_sign: | The first name of the employee. Requires `employees:read` scope. | -| `preferredFirstName` | *JsonNullable\* | :heavy_minus_sign: | The preferred first name of the employee. Requires `employees:read` scope. | -| `lastName` | *JsonNullable\* | :heavy_minus_sign: | The last name of the employee. Requires `employees:read` scope. | -| `grossPay` | *JsonNullable\* | :heavy_minus_sign: | The employee's gross pay, equal to regular wages + cash tips + payroll tips + any other additional earnings, excluding imputed income. This value is only available for processed payrolls. | -| `netPay` | *JsonNullable\* | :heavy_minus_sign: | The employee's net pay, equal to gross_pay - employee taxes - employee deductions or garnishments - cash tips. This value is only available for processed payrolls. | -| `checkAmount` | *JsonNullable\* | :heavy_minus_sign: | The employee's check amount, equal to net_pay + reimbursements. This value is only available for processed payrolls. | -| `paymentMethod` | [JsonNullable\](../../models/components/PayrollUnprocessedEmployeeCompensationsTypePaymentMethod.md) | :heavy_minus_sign: | The employee's compensation payment method. Is *only* `Historical` when retrieving external payrolls initially run outside of Gusto, then put into Gusto. | -| `memo` | *JsonNullable\* | :heavy_minus_sign: | Custom text that will be printed as a personal note to the employee on a paystub. | -| `fixedCompensations` | List\<[FixedCompensations](../../models/components/FixedCompensations.md)> | :heavy_minus_sign: | An array of fixed compensations for the employee. Fixed compensations include tips, bonuses, and one time reimbursements. If this payroll has been processed, only fixed compensations with a value greater than 0.00 are returned. For an unprocessed payroll, all active fixed compensations are returned. | -| `hourlyCompensations` | List\<[HourlyCompensations](../../models/components/HourlyCompensations.md)> | :heavy_minus_sign: | An array of hourly compensations for the employee. Hourly compensations include regular, overtime, and double overtime hours. If this payroll has been processed, only hourly compensations with a value greater than 0.00 are returned. For an unprocessed payroll, all active hourly compensations are returned. | -| `paidTimeOff` | List\<[PayrollUnprocessedEmployeeCompensationsTypePaidTimeOff](../../models/components/PayrollUnprocessedEmployeeCompensationsTypePaidTimeOff.md)> | :heavy_minus_sign: | An array of all paid time off the employee is eligible for this pay period. | -| `reimbursements` | List\<[Reimbursements](../../models/components/Reimbursements.md)> | :heavy_minus_sign: | An array of reimbursements for the employee. | -| `version` | *Optional\* | :heavy_minus_sign: | The current version of this employee compensation. This field is only available for prepared payrolls. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/api-fundamentals#optimistic-version-control) for information on how to use this field. | \ No newline at end of file +| Field | Type | Required | Description | +| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `employeeUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the employee. | +| `excluded` | *Optional\* | :heavy_minus_sign: | This employee will be excluded (skipped) from payroll calculation and will not be paid for the payroll. Cancelling a payroll would reset all employees' excluded back to false. | +| `firstName` | *JsonNullable\* | :heavy_minus_sign: | The first name of the employee. Requires `employees:read` scope. | +| `preferredFirstName` | *JsonNullable\* | :heavy_minus_sign: | The preferred first name of the employee. Requires `employees:read` scope. | +| `lastName` | *JsonNullable\* | :heavy_minus_sign: | The last name of the employee. Requires `employees:read` scope. | +| `grossPay` | *JsonNullable\* | :heavy_minus_sign: | The employee's gross pay, equal to regular wages + cash tips + payroll tips + any other additional earnings, excluding imputed income. This value is only available for processed payrolls. | +| `netPay` | *JsonNullable\* | :heavy_minus_sign: | The employee's net pay, equal to gross_pay - employee taxes - employee deductions or garnishments - cash tips. This value is only available for processed payrolls. | +| `checkAmount` | *JsonNullable\* | :heavy_minus_sign: | The employee's check amount, equal to net_pay + reimbursements. This value is only available for processed payrolls. | +| `paymentMethod` | [JsonNullable\](../../models/components/PayrollUnprocessedEmployeeCompensationsTypePaymentMethod.md) | :heavy_minus_sign: | The employee's compensation payment method. Is *only* `Historical` when retrieving external payrolls initially run outside of Gusto, then put into Gusto. | +| `memo` | *JsonNullable\* | :heavy_minus_sign: | Custom text that will be printed as a personal note to the employee on a paystub. | +| `fixedCompensations` | List\<[PayrollUnprocessedEmployeeCompensationsTypeFixedCompensations](../../models/components/PayrollUnprocessedEmployeeCompensationsTypeFixedCompensations.md)> | :heavy_minus_sign: | An array of fixed compensations for the employee. Fixed compensations include tips and bonuses. On regular payrolls, reimbursements are sent via the dedicated `reimbursements` array instead. Off-cycle payrolls continue to include reimbursements in `fixed_compensations`. If this payroll has been processed, only fixed compensations with a value greater than 0.00 are returned. For an unprocessed payroll, all active fixed compensations are returned. | +| `hourlyCompensations` | List\<[PayrollUnprocessedEmployeeCompensationsTypeHourlyCompensations](../../models/components/PayrollUnprocessedEmployeeCompensationsTypeHourlyCompensations.md)> | :heavy_minus_sign: | An array of hourly compensations for the employee. Hourly compensations include regular, overtime, and double overtime hours. If this payroll has been processed, only hourly compensations with a value greater than 0.00 are returned. For an unprocessed payroll, all active hourly compensations are returned. | +| `paidTimeOff` | List\<[PayrollUnprocessedEmployeeCompensationsTypePaidTimeOff](../../models/components/PayrollUnprocessedEmployeeCompensationsTypePaidTimeOff.md)> | :heavy_minus_sign: | An array of all paid time off the employee is eligible for this pay period. | +| `reimbursements` | List\<[PayrollUnprocessedEmployeeCompensationsTypeReimbursements](../../models/components/PayrollUnprocessedEmployeeCompensationsTypeReimbursements.md)> | :heavy_minus_sign: | An array of reimbursements for the employee. | +| `customWithholdings` | [Optional\](../../models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings.md) | :heavy_minus_sign: | The one-time custom withholding overrides applied to this payroll for this employee.
    `federal` is null when no federal one-time override is set; `state` is an empty
    array when no state one-time overrides are set.
    | +| `version` | *Optional\* | :heavy_minus_sign: | The current version of this employee compensation. This field is only available for prepared payrolls. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/api-fundamentals#optimistic-version-control) for information on how to use this field. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeAmountType.md b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeAmountType.md new file mode 100644 index 000000000..d7b77fa30 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeAmountType.md @@ -0,0 +1,19 @@ +# PayrollUnprocessedEmployeeCompensationsTypeAmountType + +How to interpret the amount. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.components.PayrollUnprocessedEmployeeCompensationsTypeAmountType; + +PayrollUnprocessedEmployeeCompensationsTypeAmountType value = PayrollUnprocessedEmployeeCompensationsTypeAmountType.FIXED; +``` + + +## Values + +| Name | Value | +| --------- | --------- | +| `FIXED` | fixed | +| `PERCENT` | percent | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings.md b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings.md new file mode 100644 index 000000000..c90466649 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings.md @@ -0,0 +1,14 @@ +# PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings + +The one-time custom withholding overrides applied to this payroll for this employee. +`federal` is null when no federal one-time override is set; `state` is an empty +array when no state one-time overrides are set. + + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- | +| `federal` | [JsonNullable\](../../models/components/PayrollUnprocessedEmployeeCompensationsTypeFederal.md) | :heavy_minus_sign: | Federal one-time custom withholding override applied to this payroll. | +| `state` | List\<[PayrollUnprocessedEmployeeCompensationsTypeState](../../models/components/PayrollUnprocessedEmployeeCompensationsTypeState.md)> | :heavy_minus_sign: | State one-time custom withholding overrides applied to this payroll, one entry per state field. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsAmountType.md b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsAmountType.md new file mode 100644 index 000000000..649ae196a --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsAmountType.md @@ -0,0 +1,19 @@ +# PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsAmountType + +How to interpret the amount. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.components.PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsAmountType; + +PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsAmountType value = PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsAmountType.FIXED; +``` + + +## Values + +| Name | Value | +| --------- | --------- | +| `FIXED` | fixed | +| `PERCENT` | percent | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsOverrideType.md b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsOverrideType.md new file mode 100644 index 000000000..87f31e39f --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsOverrideType.md @@ -0,0 +1,18 @@ +# PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsOverrideType + +Override mode. Only `one_time` is currently exposed. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.components.PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsOverrideType; + +PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsOverrideType value = PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsOverrideType.ONE_TIME; +``` + + +## Values + +| Name | Value | +| ---------- | ---------- | +| `ONE_TIME` | one_time | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeFederal.md b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeFederal.md new file mode 100644 index 000000000..29df2d93a --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeFederal.md @@ -0,0 +1,12 @@ +# PayrollUnprocessedEmployeeCompensationsTypeFederal + +Federal one-time custom withholding override applied to this payroll. + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `overrideType` | [Optional\](../../models/components/PayrollUnprocessedEmployeeCompensationsTypeOverrideType.md) | :heavy_minus_sign: | Override mode. Only `one_time` is currently exposed. | +| `amount` | *Optional\* | :heavy_minus_sign: | The amount that was withheld for this payroll. | +| `amountType` | [Optional\](../../models/components/PayrollUnprocessedEmployeeCompensationsTypeAmountType.md) | :heavy_minus_sign: | How to interpret the amount. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/PayrollEmployeeCompensationsTypeFixedCompensations.md b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeFixedCompensations.md similarity index 97% rename from gusto_embedded_v_2025_11_15/docs/models/components/PayrollEmployeeCompensationsTypeFixedCompensations.md rename to gusto_embedded_v_2025_11_15/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeFixedCompensations.md index 631946a82..5296b2d38 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/PayrollEmployeeCompensationsTypeFixedCompensations.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeFixedCompensations.md @@ -1,4 +1,4 @@ -# PayrollEmployeeCompensationsTypeFixedCompensations +# PayrollUnprocessedEmployeeCompensationsTypeFixedCompensations ## Fields diff --git a/gusto_embedded/docs/models/components/PayrollEmployeeCompensationsTypeHourlyCompensations.md b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeHourlyCompensations.md similarity index 98% rename from gusto_embedded/docs/models/components/PayrollEmployeeCompensationsTypeHourlyCompensations.md rename to gusto_embedded_v_2025_11_15/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeHourlyCompensations.md index cf0b473d7..6c039e58f 100644 --- a/gusto_embedded/docs/models/components/PayrollEmployeeCompensationsTypeHourlyCompensations.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeHourlyCompensations.md @@ -1,4 +1,4 @@ -# PayrollEmployeeCompensationsTypeHourlyCompensations +# PayrollUnprocessedEmployeeCompensationsTypeHourlyCompensations ## Fields diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeOverrideType.md b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeOverrideType.md new file mode 100644 index 000000000..e7349acc4 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeOverrideType.md @@ -0,0 +1,18 @@ +# PayrollUnprocessedEmployeeCompensationsTypeOverrideType + +Override mode. Only `one_time` is currently exposed. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.components.PayrollUnprocessedEmployeeCompensationsTypeOverrideType; + +PayrollUnprocessedEmployeeCompensationsTypeOverrideType value = PayrollUnprocessedEmployeeCompensationsTypeOverrideType.ONE_TIME; +``` + + +## Values + +| Name | Value | +| ---------- | ---------- | +| `ONE_TIME` | one_time | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/PayrollEmployeeCompensationsTypeReimbursements.md b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeReimbursements.md similarity index 97% rename from gusto_embedded/docs/models/components/PayrollEmployeeCompensationsTypeReimbursements.md rename to gusto_embedded_v_2025_11_15/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeReimbursements.md index c6b17aa06..4f08ee2bb 100644 --- a/gusto_embedded/docs/models/components/PayrollEmployeeCompensationsTypeReimbursements.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeReimbursements.md @@ -1,4 +1,4 @@ -# PayrollEmployeeCompensationsTypeReimbursements +# PayrollUnprocessedEmployeeCompensationsTypeReimbursements ## Fields diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeState.md b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeState.md new file mode 100644 index 000000000..8af5caa60 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeState.md @@ -0,0 +1,11 @@ +# PayrollUnprocessedEmployeeCompensationsTypeState + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `employeeStateFieldUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the EmployeeStateField this withholding applies to. | +| `overrideType` | [Optional\](../../models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsOverrideType.md) | :heavy_minus_sign: | Override mode. Only `one_time` is currently exposed. | +| `amount` | *Optional\* | :heavy_minus_sign: | The amount that was withheld for this payroll. | +| `amountType` | [Optional\](../../models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsAmountType.md) | :heavy_minus_sign: | How to interpret the amount. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/PayrollUpdateCustomWithholdings.md b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollUpdateCustomWithholdings.md new file mode 100644 index 000000000..663fa43ab --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollUpdateCustomWithholdings.md @@ -0,0 +1,14 @@ +# PayrollUpdateCustomWithholdings + +Optional per-payroll one-time custom withholdings for federal and/or state income tax. +When provided, the supplied override takes precedence over any persistent withholding schedule for this run. +This field is in limited release; if your application does not have access, requests including it are silently ignored. + + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | +| `federal` | [Optional\](../../models/components/PayrollUpdateFederal.md) | :heavy_minus_sign: | Federal one-time custom withholding override. | +| `state` | List\<[PayrollUpdateState](../../models/components/PayrollUpdateState.md)> | :heavy_minus_sign: | State one-time custom withholding overrides, one entry per state field. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/PayrollUpdateEmployeeCompensations.md b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollUpdateEmployeeCompensations.md index aca72c1b6..3d8bf7689 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/PayrollUpdateEmployeeCompensations.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollUpdateEmployeeCompensations.md @@ -3,15 +3,16 @@ ## Fields -| Field | Type | Required | Description | -| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `employeeUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the employee. | -| `version` | *Optional\* | :heavy_minus_sign: | The current version of this employee compensation from the prepared payroll. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. | -| `excluded` | *Optional\* | :heavy_minus_sign: | This employee will be excluded from payroll calculation and will not be paid for the payroll. | -| `paymentMethod` | [Optional\](../../models/components/PayrollUpdatePaymentMethod.md) | :heavy_minus_sign: | The employee's compensation payment method. Invalid values will be ignored. | -| `memo` | *Optional\* | :heavy_minus_sign: | Custom text that will be printed as a personal note to the employee on a paystub. | -| `fixedCompensations` | List\<[PayrollUpdateFixedCompensations](../../models/components/PayrollUpdateFixedCompensations.md)> | :heavy_minus_sign: | N/A | -| `hourlyCompensations` | List\<[PayrollUpdateHourlyCompensations](../../models/components/PayrollUpdateHourlyCompensations.md)> | :heavy_minus_sign: | N/A | -| `deductions` | List\<[PayrollUpdateDeductions](../../models/components/PayrollUpdateDeductions.md)> | :heavy_minus_sign: | N/A | -| `paidTimeOff` | List\<[PayrollUpdatePaidTimeOff](../../models/components/PayrollUpdatePaidTimeOff.md)> | :heavy_minus_sign: | An array of all paid time off the employee is eligible for this pay period. Each paid time off object can be the name or the specific policy_uuid. | -| `reimbursements` | List\<[PayrollUpdateReimbursements](../../models/components/PayrollUpdateReimbursements.md)> | :heavy_minus_sign: | An array of reimbursements for the employee. | \ No newline at end of file +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `employeeUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the employee. | +| `version` | *Optional\* | :heavy_minus_sign: | The current version of this employee compensation from the prepared payroll. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. | +| `excluded` | *Optional\* | :heavy_minus_sign: | This employee will be excluded from payroll calculation and will not be paid for the payroll. | +| `paymentMethod` | [Optional\](../../models/components/PayrollUpdatePaymentMethod.md) | :heavy_minus_sign: | The employee's compensation payment method. Invalid values will be ignored. | +| `memo` | *Optional\* | :heavy_minus_sign: | Custom text that will be printed as a personal note to the employee on a paystub. | +| `fixedCompensations` | List\<[PayrollUpdateFixedCompensations](../../models/components/PayrollUpdateFixedCompensations.md)> | :heavy_minus_sign: | N/A | +| `hourlyCompensations` | List\<[PayrollUpdateHourlyCompensations](../../models/components/PayrollUpdateHourlyCompensations.md)> | :heavy_minus_sign: | N/A | +| `deductions` | List\<[PayrollUpdateDeductions](../../models/components/PayrollUpdateDeductions.md)> | :heavy_minus_sign: | N/A | +| `customWithholdings` | [Optional\](../../models/components/PayrollUpdateCustomWithholdings.md) | :heavy_minus_sign: | Optional per-payroll one-time custom withholdings for federal and/or state income tax.
    When provided, the supplied override takes precedence over any persistent withholding schedule for this run.
    This field is in limited release; if your application does not have access, requests including it are silently ignored.
    | +| `paidTimeOff` | List\<[PayrollUpdatePaidTimeOff](../../models/components/PayrollUpdatePaidTimeOff.md)> | :heavy_minus_sign: | An array of all paid time off the employee is eligible for this pay period. Each paid time off object can be the name or the specific policy_uuid. | +| `reimbursements` | List\<[PayrollUpdateReimbursements](../../models/components/PayrollUpdateReimbursements.md)> | :heavy_minus_sign: | An array of reimbursements for the employee. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/PayrollUpdateEmployeeCompensationsAmountType.md b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollUpdateEmployeeCompensationsAmountType.md new file mode 100644 index 000000000..dbcb7b64f --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollUpdateEmployeeCompensationsAmountType.md @@ -0,0 +1,19 @@ +# PayrollUpdateEmployeeCompensationsAmountType + +How to interpret the amount. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.components.PayrollUpdateEmployeeCompensationsAmountType; + +PayrollUpdateEmployeeCompensationsAmountType value = PayrollUpdateEmployeeCompensationsAmountType.FIXED; +``` + + +## Values + +| Name | Value | +| --------- | --------- | +| `FIXED` | fixed | +| `PERCENT` | percent | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/PayrollUpdateEmployeeCompensationsCustomWithholdingsAmountType.md b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollUpdateEmployeeCompensationsCustomWithholdingsAmountType.md new file mode 100644 index 000000000..57b3ff0f1 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollUpdateEmployeeCompensationsCustomWithholdingsAmountType.md @@ -0,0 +1,19 @@ +# PayrollUpdateEmployeeCompensationsCustomWithholdingsAmountType + +How to interpret the amount. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.components.PayrollUpdateEmployeeCompensationsCustomWithholdingsAmountType; + +PayrollUpdateEmployeeCompensationsCustomWithholdingsAmountType value = PayrollUpdateEmployeeCompensationsCustomWithholdingsAmountType.FIXED; +``` + + +## Values + +| Name | Value | +| --------- | --------- | +| `FIXED` | fixed | +| `PERCENT` | percent | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/PayrollUpdateEmployeeCompensationsOverrideType.md b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollUpdateEmployeeCompensationsOverrideType.md new file mode 100644 index 000000000..9611feb5f --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollUpdateEmployeeCompensationsOverrideType.md @@ -0,0 +1,18 @@ +# PayrollUpdateEmployeeCompensationsOverrideType + +Override mode. Only `one_time` is currently supported. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.components.PayrollUpdateEmployeeCompensationsOverrideType; + +PayrollUpdateEmployeeCompensationsOverrideType value = PayrollUpdateEmployeeCompensationsOverrideType.ONE_TIME; +``` + + +## Values + +| Name | Value | +| ---------- | ---------- | +| `ONE_TIME` | one_time | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/PayrollUpdateFederal.md b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollUpdateFederal.md new file mode 100644 index 000000000..009ecf2d1 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollUpdateFederal.md @@ -0,0 +1,12 @@ +# PayrollUpdateFederal + +Federal one-time custom withholding override. + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | +| `overrideType` | [Optional\](../../models/components/PayrollUpdateOverrideType.md) | :heavy_minus_sign: | Override mode. Only `one_time` is currently supported. | +| `amount` | *Optional\* | :heavy_minus_sign: | The amount to be withheld for this payroll. | +| `amountType` | [Optional\](../../models/components/PayrollUpdateEmployeeCompensationsAmountType.md) | :heavy_minus_sign: | How to interpret the amount. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/PayrollUpdateOverrideType.md b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollUpdateOverrideType.md new file mode 100644 index 000000000..c4cc3bcf9 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollUpdateOverrideType.md @@ -0,0 +1,18 @@ +# PayrollUpdateOverrideType + +Override mode. Only `one_time` is currently supported. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.components.PayrollUpdateOverrideType; + +PayrollUpdateOverrideType value = PayrollUpdateOverrideType.ONE_TIME; +``` + + +## Values + +| Name | Value | +| ---------- | ---------- | +| `ONE_TIME` | one_time | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/PayrollUpdateState.md b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollUpdateState.md new file mode 100644 index 000000000..2d38a6401 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/PayrollUpdateState.md @@ -0,0 +1,11 @@ +# PayrollUpdateState + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `employeeStateFieldUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the EmployeeStateField this withholding applies to. | +| `overrideType` | [Optional\](../../models/components/PayrollUpdateEmployeeCompensationsOverrideType.md) | :heavy_minus_sign: | Override mode. Only `one_time` is currently supported. | +| `amount` | *Optional\* | :heavy_minus_sign: | The amount to be withheld for this payroll. | +| `amountType` | [Optional\](../../models/components/PayrollUpdateEmployeeCompensationsCustomWithholdingsAmountType.md) | :heavy_minus_sign: | How to interpret the amount. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/PeopleBatchResults.md b/gusto_embedded_v_2025_11_15/docs/models/components/PeopleBatchResults.md index 2002eb602..0feaa44a4 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/PeopleBatchResults.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/PeopleBatchResults.md @@ -5,15 +5,15 @@ A people batch with processing results. ## Fields -| Field | Type | Required | Description | -| ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | -| `uuid` | *String* | :heavy_check_mark: | The unique identifier of the people batch. | -| `idempotencyKey` | *String* | :heavy_check_mark: | The idempotency key provided when creating the batch. | -| `status` | [PeopleBatchResultsStatus](../../models/components/PeopleBatchResultsStatus.md) | :heavy_check_mark: | The current status of the batch processing. | -| `submittedAt` | [OffsetDateTime](https://docs.oracle.com/javase/8/docs/api/java/time/OffsetDateTime.html) | :heavy_minus_sign: | The timestamp when the batch was submitted. | -| `completedAt` | [OffsetDateTime](https://docs.oracle.com/javase/8/docs/api/java/time/OffsetDateTime.html) | :heavy_minus_sign: | The timestamp when the batch processing completed. | -| `submittedItems` | *JsonNullable\* | :heavy_minus_sign: | The number of items submitted in the batch. | -| `processedItems` | *Optional\* | :heavy_minus_sign: | The number of items successfully processed. | -| `excludedItems` | *Optional\* | :heavy_minus_sign: | The number of items excluded from processing. | -| `results` | List\<[Results](../../models/components/Results.md)> | :heavy_minus_sign: | The results for each batch item. | -| `exclusions` | List\<[Exclusions](../../models/components/Exclusions.md)> | :heavy_minus_sign: | Items excluded from processing due to validation errors. | \ No newline at end of file +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | +| `uuid` | *String* | :heavy_check_mark: | The unique identifier of the people batch. | +| `idempotencyKey` | *String* | :heavy_check_mark: | The idempotency key provided when creating the batch. | +| `status` | [PeopleBatchResultsStatus](../../models/components/PeopleBatchResultsStatus.md) | :heavy_check_mark: | The current status of the batch processing. | +| `submittedAt` | [OffsetDateTime](https://docs.oracle.com/javase/8/docs/api/java/time/OffsetDateTime.html) | :heavy_minus_sign: | The timestamp when the batch was submitted. | +| `completedAt` | [OffsetDateTime](https://docs.oracle.com/javase/8/docs/api/java/time/OffsetDateTime.html) | :heavy_minus_sign: | The timestamp when the batch processing completed. | +| `submittedItems` | *JsonNullable\* | :heavy_minus_sign: | The number of items submitted in the batch. | +| `processedItems` | *Optional\* | :heavy_minus_sign: | The number of items successfully processed. | +| `excludedItems` | *Optional\* | :heavy_minus_sign: | The number of items excluded from processing. | +| `results` | List\<[PeopleBatchResultsResults](../../models/components/PeopleBatchResultsResults.md)> | :heavy_minus_sign: | The results for each batch item. | +| `exclusions` | List\<[PeopleBatchResultsExclusions](../../models/components/PeopleBatchResultsExclusions.md)> | :heavy_minus_sign: | Items excluded from processing due to validation errors. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/PeopleBatchResultsExclusions.md b/gusto_embedded_v_2025_11_15/docs/models/components/PeopleBatchResultsExclusions.md new file mode 100644 index 000000000..a060cc6f6 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/PeopleBatchResultsExclusions.md @@ -0,0 +1,11 @@ +# PeopleBatchResultsExclusions + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------- | ------------------------------------------- | ------------------------------------------- | ------------------------------------------- | +| `externalId` | *Optional\* | :heavy_minus_sign: | The external ID of the excluded item(s). | +| `category` | *Optional\* | :heavy_minus_sign: | The exclusion category. | +| `message` | *Optional\* | :heavy_minus_sign: | Human-readable explanation for exclusion. | +| `itemCount` | *Optional\* | :heavy_minus_sign: | Number of items affected by this exclusion. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/PeopleBatchResultsResults.md b/gusto_embedded_v_2025_11_15/docs/models/components/PeopleBatchResultsResults.md new file mode 100644 index 000000000..117463dc2 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/PeopleBatchResultsResults.md @@ -0,0 +1,14 @@ +# PeopleBatchResultsResults + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | +| `externalId` | *Optional\* | :heavy_minus_sign: | The external ID provided in the batch request. | +| `role` | [Optional\](../../models/components/Role.md) | :heavy_minus_sign: | The type of person created. | +| `status` | [Optional\](../../models/components/PeopleBatchResultsResultsStatus.md) | :heavy_minus_sign: | The status of this batch item. | +| `idx` | *Optional\* | :heavy_minus_sign: | The index of this item in the original batch request. | +| `uuid` | *Optional\* | :heavy_minus_sign: | The UUID of the created person. | +| `employeeUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the created employee (if role is employee). | +| `errors` | List\<[PeopleBatchResultsErrors](../../models/components/PeopleBatchResultsErrors.md)> | :heavy_minus_sign: | Errors encountered while processing this batch item. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/RecipientType.md b/gusto_embedded_v_2025_11_15/docs/models/components/RecipientType.md index d43e99864..81e7e19af 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/RecipientType.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/RecipientType.md @@ -1,13 +1,11 @@ # RecipientType -The type of recipient associated with the document (will be `Contractor` for Contractor Documents) - ## Example Usage ```java import com.gusto.embedded_api_v_2025_11_15.models.components.RecipientType; -RecipientType value = RecipientType.COMPANY; +RecipientType value = RecipientType.EMPLOYEE; ``` @@ -15,6 +13,5 @@ RecipientType value = RecipientType.COMPANY; | Name | Value | | ------------ | ------------ | -| `COMPANY` | Company | | `EMPLOYEE` | Employee | | `CONTRACTOR` | Contractor | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/Rehire.md b/gusto_embedded_v_2025_11_15/docs/models/components/Rehire.md index fd2baae62..ed57665f6 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/Rehire.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/Rehire.md @@ -9,7 +9,7 @@ | `effectiveDate` | *Optional\* | :heavy_minus_sign: | The day when the employee returns to work. | | `fileNewHireReport` | *Optional\* | :heavy_minus_sign: | The boolean flag indicating whether Gusto will file a new hire report for the employee. | | `workLocationUuid` | *Optional\* | :heavy_minus_sign: | The uuid of the employee's work location. | -| `employmentStatus` | [Optional\](../../models/components/EmploymentStatus.md) | :heavy_minus_sign: | The employee's employment status. Supplying an invalid option will set the employment_status to *not_set*. | +| `employmentStatus` | [Optional\](../../models/components/RehireEmploymentStatus.md) | :heavy_minus_sign: | The employee's employment status. Supplying an invalid option will set the employment_status to *not_set*. | | `twoPercentShareholder` | *Optional\* | :heavy_minus_sign: | Whether the employee is a two percent shareholder of the company. This field only applies to companies with an S-Corp entity type. | | `employeeUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the employee. | | `active` | *Optional\* | :heavy_minus_sign: | Whether the employee's rehire has gone into effect. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/RehireEmploymentStatus.md b/gusto_embedded_v_2025_11_15/docs/models/components/RehireEmploymentStatus.md new file mode 100644 index 000000000..88da1dff8 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/RehireEmploymentStatus.md @@ -0,0 +1,23 @@ +# RehireEmploymentStatus + +The employee's employment status. Supplying an invalid option will set the employment_status to *not_set*. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.components.RehireEmploymentStatus; + +RehireEmploymentStatus value = RehireEmploymentStatus.PART_TIME; +``` + + +## Values + +| Name | Value | +| -------------------- | -------------------- | +| `PART_TIME` | part_time | +| `FULL_TIME` | full_time | +| `PART_TIME_ELIGIBLE` | part_time_eligible | +| `VARIABLE` | variable | +| `SEASONAL` | seasonal | +| `NOT_SET` | not_set | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/ReportType.md b/gusto_embedded_v_2025_11_15/docs/models/components/ReportType.md new file mode 100644 index 000000000..b61b15d60 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/ReportType.md @@ -0,0 +1,18 @@ +# ReportType + +Identifies this batch item as a custom report. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.components.ReportType; + +ReportType value = ReportType.CUSTOM_REPORT; +``` + + +## Values + +| Name | Value | +| --------------- | --------------- | +| `CUSTOM_REPORT` | custom_report | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/Results.md b/gusto_embedded_v_2025_11_15/docs/models/components/Results.md index 48e2f05cd..51744c248 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/Results.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/Results.md @@ -3,12 +3,9 @@ ## Fields -| Field | Type | Required | Description | -| -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -| `externalId` | *Optional\* | :heavy_minus_sign: | The external ID provided in the batch request. | -| `role` | [Optional\](../../models/components/Role.md) | :heavy_minus_sign: | The type of person created. | -| `status` | [Optional\](../../models/components/PeopleBatchResultsResultsStatus.md) | :heavy_minus_sign: | The status of this batch item. | -| `idx` | *Optional\* | :heavy_minus_sign: | The index of this item in the original batch request. | -| `uuid` | *Optional\* | :heavy_minus_sign: | The UUID of the created person. | -| `employeeUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the created employee (if role is employee). | -| `errors` | List\<[PeopleBatchResultsErrors](../../models/components/PeopleBatchResultsErrors.md)> | :heavy_minus_sign: | Errors encountered while processing this batch item. | \ No newline at end of file +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `idx` | *Optional\* | :heavy_minus_sign: | The index of this payroll in the original POST batch array. | +| `uuid` | *Optional\* | :heavy_minus_sign: | The UUID of the payroll. | +| `status` | [Optional\](../../models/components/PayrollBatchResultsResultsStatus.md) | :heavy_minus_sign: | The outcome of cancelling this payroll. A cancel is atomic — there is no per-payroll `partial_success`.
    - `success`: the payroll was cancelled, or required no action (already cancelled / never run)
    - `failed`: the payroll could not be cancelled; see `errors`
    | +| `errors` | List\<[PayrollBatchResultsErrors](../../models/components/PayrollBatchResultsErrors.md)> | :heavy_minus_sign: | Present only when `status` is `failed`. A cancel is a single atomic operation, so this is a flat array with exactly one error. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/ReverseWireTransaction.md b/gusto_embedded_v_2025_11_15/docs/models/components/ReverseWireTransaction.md new file mode 100644 index 000000000..23b632d12 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/ReverseWireTransaction.md @@ -0,0 +1,18 @@ +# ReverseWireTransaction + +Representation of a reverse wire (drawdown) transaction. Reverse wires are debit transactions initiated by Gusto to pull funds from a partner's bank account to cover payroll or contractor payment obligations. + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| `companyUuid` | *String* | :heavy_check_mark: | Unique identifier of the company the reverse wire transaction belongs to | +| `amount` | *String* | :heavy_check_mark: | The amount of money moved by the reverse wire, as a decimal string. Always non-negative. | +| `status` | [ReverseWireTransactionStatus](../../models/components/ReverseWireTransactionStatus.md) | :heavy_check_mark: | Current status of the reverse wire transaction.
    - `pending_processing`: The reverse wire has been initiated and is awaiting processing by the banking network.
    - `processed`: The reverse wire was successfully settled and funds have been received.
    - `rejected`: The reverse wire was rejected by the receiving bank (e.g. invalid account, insufficient funds).
    - `failed`: The reverse wire failed during processing due to a system or network error.
    | +| `paymentDirection` | [ReverseWireTransactionPaymentDirection](../../models/components/ReverseWireTransactionPaymentDirection.md) | :heavy_check_mark: | The direction of the payment. Reverse wires are always debits from the company's account. | +| `bankName` | *JsonNullable\* | :heavy_minus_sign: | Name of the receiving bank. Null when the bank is not known. | +| `paymentEventType` | [JsonNullable\](../../models/components/ReverseWireTransactionPaymentEventType.md) | :heavy_minus_sign: | The type of payment event this reverse wire is associated with. Null when the wire is not linked to a payroll or contractor payment. | +| `paymentEventUuid` | *JsonNullable\* | :heavy_minus_sign: | Unique identifier of the associated payroll or contractor payment. Null when the wire is not linked to a payment event. | +| `paymentEventCheckDate` | *JsonNullable\* | :heavy_minus_sign: | The check date of the associated payment event. Null when the wire is not linked to a payment event. | +| `createdAt` | *String* | :heavy_check_mark: | The date the reverse wire record was created. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/ReverseWireTransactionPaymentDirection.md b/gusto_embedded_v_2025_11_15/docs/models/components/ReverseWireTransactionPaymentDirection.md new file mode 100644 index 000000000..180200a05 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/ReverseWireTransactionPaymentDirection.md @@ -0,0 +1,18 @@ +# ReverseWireTransactionPaymentDirection + +The direction of the payment. Reverse wires are always debits from the company's account. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.components.ReverseWireTransactionPaymentDirection; + +ReverseWireTransactionPaymentDirection value = ReverseWireTransactionPaymentDirection.DEBIT; +``` + + +## Values + +| Name | Value | +| ------- | ------- | +| `DEBIT` | debit | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/ReverseWireTransactionPaymentEventType.md b/gusto_embedded_v_2025_11_15/docs/models/components/ReverseWireTransactionPaymentEventType.md new file mode 100644 index 000000000..d6c6e668c --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/ReverseWireTransactionPaymentEventType.md @@ -0,0 +1,17 @@ +# ReverseWireTransactionPaymentEventType + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.components.ReverseWireTransactionPaymentEventType; + +ReverseWireTransactionPaymentEventType value = ReverseWireTransactionPaymentEventType.PAYROLL; +``` + + +## Values + +| Name | Value | +| -------------------- | -------------------- | +| `PAYROLL` | Payroll | +| `CONTRACTOR_PAYMENT` | ContractorPayment | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/ReverseWireTransactionStatus.md b/gusto_embedded_v_2025_11_15/docs/models/components/ReverseWireTransactionStatus.md new file mode 100644 index 000000000..0b5b31366 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/ReverseWireTransactionStatus.md @@ -0,0 +1,26 @@ +# ReverseWireTransactionStatus + +Current status of the reverse wire transaction. +- `pending_processing`: The reverse wire has been initiated and is awaiting processing by the banking network. +- `processed`: The reverse wire was successfully settled and funds have been received. +- `rejected`: The reverse wire was rejected by the receiving bank (e.g. invalid account, insufficient funds). +- `failed`: The reverse wire failed during processing due to a system or network error. + + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.components.ReverseWireTransactionStatus; + +ReverseWireTransactionStatus value = ReverseWireTransactionStatus.PENDING_PROCESSING; +``` + + +## Values + +| Name | Value | +| -------------------- | -------------------- | +| `PENDING_PROCESSING` | pending_processing | +| `PROCESSED` | processed | +| `REJECTED` | rejected | +| `FAILED` | failed | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/ShowEmployees.md b/gusto_embedded_v_2025_11_15/docs/models/components/ShowEmployees.md index 1d7ad6fd6..8d60a8097 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/ShowEmployees.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/ShowEmployees.md @@ -20,8 +20,8 @@ The representation of an employee in Gusto. | `twoPercentShareholder` | *JsonNullable\* | :heavy_minus_sign: | Whether the employee is a two percent shareholder of the company. This field only applies to companies with an S-Corp entity type. | | | `workEmail` | *JsonNullable\* | :heavy_minus_sign: | The work email address of the employee. This is provided to support syncing users between our system and yours. You may not use this email address for any other purpose (e.g. marketing). | | | `onboarded` | *Optional\* | :heavy_minus_sign: | Whether the employee has completed onboarding. | | -| `onboardingStatus` | [JsonNullable\](../../models/components/OnboardingStatus.md) | :heavy_minus_sign: | The current onboarding status of the employee | | -| `onboardingDocumentsConfig` | [Optional\](../../models/components/OnboardingDocumentsConfig.md) | :heavy_minus_sign: | Configuration for an employee onboarding documents during onboarding | | +| `onboardingStatus` | [JsonNullable\](../../models/components/ShowEmployeesOnboardingStatus.md) | :heavy_minus_sign: | The current onboarding status of the employee | | +| `onboardingDocumentsConfig` | [Optional\](../../models/components/ShowEmployeesOnboardingDocumentsConfig.md) | :heavy_minus_sign: | Configuration for an employee onboarding documents during onboarding | | | `jobs` | List\<[Job](../../models/components/Job.md)> | :heavy_minus_sign: | N/A | | | `eligiblePaidTimeOff` | List\<[PaidTimeOff](../../models/components/PaidTimeOff.md)> | :heavy_minus_sign: | N/A | | | `terminations` | List\<[Termination](../../models/components/Termination.md)> | :heavy_minus_sign: | N/A | | @@ -32,8 +32,8 @@ The representation of an employee in Gusto. | `ssn` | *Optional\* | :heavy_minus_sign: | Deprecated. This field always returns an empty string. | | | `phone` | *JsonNullable\* | :heavy_minus_sign: | N/A | | | `preferredFirstName` | *JsonNullable\* | :heavy_minus_sign: | N/A | | -| `paymentMethod` | [Optional\](../../models/components/PaymentMethod.md) | :heavy_minus_sign: | The employee's payment method | | -| `currentEmploymentStatus` | [JsonNullable\](../../models/components/CurrentEmploymentStatus.md) | :heavy_minus_sign: | The current employment status of the employee. Full-time employees work 30+ hours per week. Part-time employees are split into two groups: those that work 20-29 hours a week, and those that work under 20 hours a week. Variable employees have hours that vary each week. Seasonal employees are hired for 6 months of the year or less. | | +| `paymentMethod` | [Optional\](../../models/components/ShowEmployeesPaymentMethod.md) | :heavy_minus_sign: | The employee's payment method | | +| `currentEmploymentStatus` | [JsonNullable\](../../models/components/ShowEmployeesCurrentEmploymentStatus.md) | :heavy_minus_sign: | The current employment status of the employee. Full-time employees work 30+ hours per week. Part-time employees are split into two groups: those that work 20-29 hours a week, and those that work under 20 hours a week. Variable employees have hours that vary each week. Seasonal employees are hired for 6 months of the year or less. | | | `historical` | *Optional\* | :heavy_minus_sign: | N/A | | | `employeeCode` | *Optional\* | :heavy_minus_sign: | The short format code of the employee | | | `departmentUuid` | *JsonNullable\* | :heavy_minus_sign: | The UUID of the department the employee is under | | @@ -42,7 +42,7 @@ The representation of an employee in Gusto. | `hiddenSsn` | *Optional\* | :heavy_minus_sign: | N/A | | | `flsaStatus` | [Optional\](../../models/components/FlsaStatusType.md) | :heavy_minus_sign: | 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. | | | `applicableTaxIds` | List\<*double*> | :heavy_minus_sign: | N/A | | -| `memberPortalInvitationStatus` | [JsonNullable\](../../models/components/MemberPortalInvitationStatus.md) | :heavy_minus_sign: | Member portal invitation status information. Only included when the include param has the portal_invitations value set. | | +| `memberPortalInvitationStatus` | [JsonNullable\](../../models/components/ShowEmployeesMemberPortalInvitationStatus.md) | :heavy_minus_sign: | Member portal invitation status information. Only included when the include param has the portal_invitations value set. | | | `partnerPortalInvitationSent` | *JsonNullable\* | :heavy_minus_sign: | Whether an external partner portal invitation webhook has been sent for this employee. Only included when the include param has the portal_invitations value set. | | | `currentHomeAddress` | [Optional\](../../models/components/EmployeeHomeAddress.md) | :heavy_minus_sign: | N/A | {
    "street_1": "412 Kiera Stravenue",
    "street_2": "Suite 391",
    "city": "San Francisco",
    "state": "CA",
    "zip": "94107",
    "country": "USA",
    "active": true,
    "uud": "sample-uuid-123231"
    } | | `allHomeAddresses` | List\<[EmployeeHomeAddressHistoryEntry](../../models/components/EmployeeHomeAddressHistoryEntry.md)> | :heavy_minus_sign: | N/A | | diff --git a/gusto_embedded/docs/models/components/EmployeeCurrentEmploymentStatus.md b/gusto_embedded_v_2025_11_15/docs/models/components/ShowEmployeesCurrentEmploymentStatus.md similarity index 69% rename from gusto_embedded/docs/models/components/EmployeeCurrentEmploymentStatus.md rename to gusto_embedded_v_2025_11_15/docs/models/components/ShowEmployeesCurrentEmploymentStatus.md index 16812657c..916f7c85a 100644 --- a/gusto_embedded/docs/models/components/EmployeeCurrentEmploymentStatus.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/ShowEmployeesCurrentEmploymentStatus.md @@ -1,11 +1,11 @@ -# EmployeeCurrentEmploymentStatus +# ShowEmployeesCurrentEmploymentStatus ## Example Usage ```java -import com.gusto.embedded_api.models.components.EmployeeCurrentEmploymentStatus; +import com.gusto.embedded_api_v_2025_11_15.models.components.ShowEmployeesCurrentEmploymentStatus; -EmployeeCurrentEmploymentStatus value = EmployeeCurrentEmploymentStatus.FULL_TIME; +ShowEmployeesCurrentEmploymentStatus value = ShowEmployeesCurrentEmploymentStatus.FULL_TIME; ``` diff --git a/gusto_embedded/docs/models/components/ContractorMemberPortalInvitationStatus.md b/gusto_embedded_v_2025_11_15/docs/models/components/ShowEmployeesMemberPortalInvitationStatus.md similarity index 92% rename from gusto_embedded/docs/models/components/ContractorMemberPortalInvitationStatus.md rename to gusto_embedded_v_2025_11_15/docs/models/components/ShowEmployeesMemberPortalInvitationStatus.md index 88a4a9ba6..f58e21a59 100644 --- a/gusto_embedded/docs/models/components/ContractorMemberPortalInvitationStatus.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/ShowEmployeesMemberPortalInvitationStatus.md @@ -1,4 +1,4 @@ -# ContractorMemberPortalInvitationStatus +# ShowEmployeesMemberPortalInvitationStatus Member portal invitation status information. Only included when the include param has the portal_invitations value set. @@ -7,7 +7,7 @@ Member portal invitation status information. Only included when the include para | Field | Type | Required | Description | | ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | -| `status` | [Optional\](../../models/components/ContractorStatus.md) | :heavy_minus_sign: | The current status of the member portal invitation. | +| `status` | [Optional\](../../models/components/ShowEmployeesStatus.md) | :heavy_minus_sign: | The current status of the member portal invitation. | | `tokenExpired` | *JsonNullable\* | :heavy_minus_sign: | Whether the invitation token has expired. | | `welcomeEmailSentAt` | [OffsetDateTime](https://docs.oracle.com/javase/8/docs/api/java/time/OffsetDateTime.html) | :heavy_minus_sign: | The date and time when the welcome email was sent. | | `lastPasswordResentAt` | [OffsetDateTime](https://docs.oracle.com/javase/8/docs/api/java/time/OffsetDateTime.html) | :heavy_minus_sign: | The date and time when the password reset was last resent. | \ No newline at end of file diff --git a/gusto_embedded/docs/models/components/EmployeeOnboardingDocumentsConfig.md b/gusto_embedded_v_2025_11_15/docs/models/components/ShowEmployeesOnboardingDocumentsConfig.md similarity index 96% rename from gusto_embedded/docs/models/components/EmployeeOnboardingDocumentsConfig.md rename to gusto_embedded_v_2025_11_15/docs/models/components/ShowEmployeesOnboardingDocumentsConfig.md index 9f937d820..aaa90973a 100644 --- a/gusto_embedded/docs/models/components/EmployeeOnboardingDocumentsConfig.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/ShowEmployeesOnboardingDocumentsConfig.md @@ -1,4 +1,4 @@ -# EmployeeOnboardingDocumentsConfig +# ShowEmployeesOnboardingDocumentsConfig Configuration for an employee onboarding documents during onboarding diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/ShowEmployeesOnboardingStatus.md b/gusto_embedded_v_2025_11_15/docs/models/components/ShowEmployeesOnboardingStatus.md new file mode 100644 index 000000000..ed627c71a --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/ShowEmployeesOnboardingStatus.md @@ -0,0 +1,23 @@ +# ShowEmployeesOnboardingStatus + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.components.ShowEmployeesOnboardingStatus; + +ShowEmployeesOnboardingStatus value = ShowEmployeesOnboardingStatus.ONBOARDING_COMPLETED; +``` + + +## Values + +| Name | Value | +| --------------------------------------- | --------------------------------------- | +| `ONBOARDING_COMPLETED` | onboarding_completed | +| `ADMIN_ONBOARDING_INCOMPLETE` | admin_onboarding_incomplete | +| `SELF_ONBOARDING_PENDING_INVITE` | self_onboarding_pending_invite | +| `SELF_ONBOARDING_INVITED` | self_onboarding_invited | +| `SELF_ONBOARDING_INVITED_STARTED` | self_onboarding_invited_started | +| `SELF_ONBOARDING_INVITED_OVERDUE` | self_onboarding_invited_overdue | +| `SELF_ONBOARDING_COMPLETED_BY_EMPLOYEE` | self_onboarding_completed_by_employee | +| `SELF_ONBOARDING_AWAITING_ADMIN_REVIEW` | self_onboarding_awaiting_admin_review | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/ShowEmployeesPaymentMethod.md b/gusto_embedded_v_2025_11_15/docs/models/components/ShowEmployeesPaymentMethod.md new file mode 100644 index 000000000..9a68fd24c --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/ShowEmployeesPaymentMethod.md @@ -0,0 +1,19 @@ +# ShowEmployeesPaymentMethod + +The employee's payment method + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.components.ShowEmployeesPaymentMethod; + +ShowEmployeesPaymentMethod value = ShowEmployeesPaymentMethod.DIRECT_DEPOSIT; +``` + + +## Values + +| Name | Value | +| ---------------- | ---------------- | +| `DIRECT_DEPOSIT` | Direct Deposit | +| `CHECK` | Check | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/Signatory.md b/gusto_embedded_v_2025_11_15/docs/models/components/Signatory.md index 40961c9e7..4d7919839 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/Signatory.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/Signatory.md @@ -18,4 +18,4 @@ The representation of a company's signatory | `hasSsn` | *Optional\* | :heavy_minus_sign: | Indicates whether the signatory has an SSN in Gusto. | | `version` | *Optional\* | :heavy_minus_sign: | The current version of the signatory. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. | | `identityVerificationStatus` | [JsonNullable\](../../models/components/IdentityVerificationStatus.md) | :heavy_minus_sign: | \| \| \|
    \|---\|---\|
    \|__Status__\| __Description__ \|
    \| Pass \| Signatory can sign all forms \|
    \| Fail \| Signatory cannot sign forms \|
    \| Skipped \| Signatory cannot sign Form 8655 until the form is manually uploaded as wet-signed \|
    \| null \| Identity verification process has not been completed \| | -| `homeAddress` | [JsonNullable\](../../models/components/HomeAddress.md) | :heavy_minus_sign: | N/A | \ No newline at end of file +| `homeAddress` | [JsonNullable\](../../models/components/SignatoryHomeAddress.md) | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/SignatoryHomeAddress.md b/gusto_embedded_v_2025_11_15/docs/models/components/SignatoryHomeAddress.md new file mode 100644 index 000000000..b3cf89469 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/SignatoryHomeAddress.md @@ -0,0 +1,13 @@ +# SignatoryHomeAddress + + +## Fields + +| Field | Type | Required | Description | +| ------------------- | ------------------- | ------------------- | ------------------- | +| `street1` | *Optional\* | :heavy_minus_sign: | N/A | +| `street2` | *Optional\* | :heavy_minus_sign: | N/A | +| `city` | *Optional\* | :heavy_minus_sign: | N/A | +| `state` | *Optional\* | :heavy_minus_sign: | N/A | +| `zip` | *Optional\* | :heavy_minus_sign: | N/A | +| `country` | *Optional\* | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/Splits.md b/gusto_embedded_v_2025_11_15/docs/models/components/Splits.md index 1547cc064..d1f404ebd 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/Splits.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/Splits.md @@ -5,11 +5,11 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `bankAccountUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the bank account. | -| `name` | *Optional\* | :heavy_minus_sign: | The name of the bank account. | +| `bankAccountUuid` | *Optional\* | :heavy_minus_sign: | N/A | +| `name` | *Optional\* | :heavy_minus_sign: | N/A | | `hiddenAccountNumber` | *Optional\* | :heavy_minus_sign: | An obfuscated version of the account number which can be used for display purposes. | -| `encryptedAccountNumber` | *JsonNullable\* | :heavy_minus_sign: | Ciphertext containing the full bank account number, which must be decrypted using a key provided by Gusto. Only visible with the `employee_payment_methods:read:account_number` scope. | -| `routingNumber` | *Optional\* | :heavy_minus_sign: | The routing number of the bank account. | -| `accountType` | *Optional\* | :heavy_minus_sign: | The bank account type (e.g., "Checking" or "Savings"). | +| `encryptedAccountNumber` | *JsonNullable\* | :heavy_minus_sign: | Ciphertext containing the full bank account number, which must be decrypted using a key provided by Gusto. Only visible with the `contractor_payment_methods:read:account_number` scope. | +| `routingNumber` | *Optional\* | :heavy_minus_sign: | N/A | | `priority` | *Optional\* | :heavy_minus_sign: | The order of priority for each payment split, with priority 1 being the first bank account paid. Priority must be unique and sequential. | -| `splitAmount` | *JsonNullable\* | :heavy_minus_sign: | If `split_by` is 'Amount', this is in cents (e.g., 500 for $5.00) and exactly one account must have a `split_amount` of `null` to capture the remainder. If `split_by` is 'Percentage', this is the percentage value (e.g., 60 for 60%). | \ No newline at end of file +| `splitAmount` | *JsonNullable\* | :heavy_minus_sign: | If `split_by` is 'Amount', this is in cents (e.g., 500 for $5.00) and exactly one account must have a `split_amount` of `null` to capture the remainder. If `split_by` is 'Percentage', this is the percentage value (e.g., 60 for 60%). | +| `accountType` | *Optional\* | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/State.md b/gusto_embedded_v_2025_11_15/docs/models/components/State.md new file mode 100644 index 000000000..cef1936bd --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/State.md @@ -0,0 +1,11 @@ +# State + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| `employeeStateFieldUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the EmployeeStateField this withholding applies to. | +| `overrideType` | [Optional\](../../models/components/PayrollEmployeeCompensationsTypeOverrideType.md) | :heavy_minus_sign: | Override mode. Only `one_time` is currently exposed. | +| `amount` | *Optional\* | :heavy_minus_sign: | The amount that was withheld for this payroll. | +| `amountType` | [Optional\](../../models/components/PayrollEmployeeCompensationsTypeCustomWithholdingsAmountType.md) | :heavy_minus_sign: | How to interpret the amount. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/Status.md b/gusto_embedded_v_2025_11_15/docs/models/components/Status.md index db1f1eb73..8cc3a3fdc 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/Status.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/Status.md @@ -1,19 +1,26 @@ # Status -The status of the external payroll. The status will be `unprocessed` when the external payroll is created and transition to `processed` once tax liabilities are entered and finalized. Once in the `processed` status all actions that can edit an external payroll will be disabled. +The batch's processing state. +- `pending`: accepted, not yet started +- `processing`: reports are being generated +- `completed`: all reports finished +- `failed`: the batch failed before completing + ## Example Usage ```java import com.gusto.embedded_api_v_2025_11_15.models.components.Status; -Status value = Status.UNPROCESSED; +Status value = Status.PENDING; ``` ## Values -| Name | Value | -| ------------- | ------------- | -| `UNPROCESSED` | unprocessed | -| `PROCESSED` | processed | \ No newline at end of file +| Name | Value | +| ------------ | ------------ | +| `PENDING` | pending | +| `PROCESSING` | processing | +| `COMPLETED` | completed | +| `FAILED` | failed | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/SubscriptionTypes.md b/gusto_embedded_v_2025_11_15/docs/models/components/SubscriptionTypes.md index 56755c2f7..0af99d9cb 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/SubscriptionTypes.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/SubscriptionTypes.md @@ -28,4 +28,5 @@ SubscriptionTypes value = SubscriptionTypes.BANK_ACCOUNT; | `PAYROLL` | Payroll | | `PAYROLL_SYNC` | PayrollSync | | `PAY_SCHEDULE` | PaySchedule | -| `SIGNATORY` | Signatory | \ No newline at end of file +| `SIGNATORY` | Signatory | +| `TIME_OFF_REQUEST` | TimeOffRequest | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/TaxPayment.md b/gusto_embedded_v_2025_11_15/docs/models/components/TaxPayment.md new file mode 100644 index 000000000..417720f9b --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/TaxPayment.md @@ -0,0 +1,20 @@ +# TaxPayment + +Representation of a tax payment made by Gusto to a tax agency on behalf of a company + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `uuid` | *String* | :heavy_check_mark: | Unique identifier of the tax payment | +| `companyUuid` | *String* | :heavy_check_mark: | Unique identifier of the company to which the tax payment belongs | +| `agencyName` | *String* | :heavy_check_mark: | The name of the tax agency this payment is submitted to | +| `jurisdiction` | *String* | :heavy_check_mark: | The tax jurisdiction this payment is for. A two-letter state code, or US for federal. | +| `periodStart` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_check_mark: | The start date of the period this payment covers | +| `periodEnd` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_check_mark: | The end date of the period this payment covers | +| `dueDate` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_check_mark: | The date this payment is due | +| `paymentSentOn` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_minus_sign: | The date Gusto submitted this payment to the tax agency. It is null until submitted, and also if the payment is returned or cancelled after being sent. It is not guaranteed to stay set once populated. | +| `amount` | *String* | :heavy_check_mark: | Total amount owed for this tax payment. Can be negative for corrections, refunds, or credits. | +| `amountPaid` | *String* | :heavy_check_mark: | Amount paid toward this tax payment so far, sourced from the payment's running balance. "0.00" until paid; equal to `amount` once fully paid. | +| `lineItems` | List\<[TaxPaymentLineItem](../../models/components/TaxPaymentLineItem.md)> | :heavy_minus_sign: | The payroll tax liabilities that make up this payment. Empty array when the payment has no associated payroll taxes. Only included in the response of GET /v1/companies/{company_uuid}/tax_payments/{uuid}. It is omitted from the list endpoint response. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/TaxPaymentLineItem.md b/gusto_embedded_v_2025_11_15/docs/models/components/TaxPaymentLineItem.md new file mode 100644 index 000000000..813912882 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/TaxPaymentLineItem.md @@ -0,0 +1,12 @@ +# TaxPaymentLineItem + +A single payroll tax liability rolled up into a tax payment + + +## Fields + +| Field | Type | Required | Description | +| --------------------------------------------------------- | --------------------------------------------------------- | --------------------------------------------------------- | --------------------------------------------------------- | +| `payrollUuid` | *String* | :heavy_check_mark: | Unique identifier of the payroll this liability came from | +| `uniqueTaxId` | *String* | :heavy_check_mark: | Unique identifier of the tax type this liability is for | +| `amount` | *String* | :heavy_check_mark: | The amount of this liability included in the tax payment | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/TaxRequirement.md b/gusto_embedded_v_2025_11_15/docs/models/components/TaxRequirement.md index 8e31bfbeb..e03bc2902 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/TaxRequirement.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/TaxRequirement.md @@ -11,4 +11,6 @@ | `description` | *JsonNullable\* | :heavy_minus_sign: | A more detailed customer facing description of the requirement | | | `value` | [JsonNullable\](../../models/components/TaxRequirementsValue.md) | :heavy_minus_sign: | The value or "answer" for a tax requirement. Type depends on the requirement metadata type (e.g. string for text/account_number, boolean for radio/checkbox, number for percent/currency/tax_rate). Null when the requirement has not been answered. | 1233214-AB | | `metadata` | [Optional\](../../models/components/TaxRequirementMetadata.md) | :heavy_minus_sign: | N/A | | -| `editable` | *Optional\* | :heavy_minus_sign: | Whether the value of this requirement can be updated | | \ No newline at end of file +| `editable` | *Optional\* | :heavy_minus_sign: | Whether the value of this requirement can be updated | | +| `payrollBlocking` | *Optional\* | :heavy_minus_sign: | Whether this requirement, when blank, would block payroll processing for the company in this state.
    Stable across changes to the field's value: a `payroll_blocking: true` field reports `true` whether
    currently empty or populated.
    | | +| `defaultValueApplied` | *Optional\* | :heavy_minus_sign: | Whether the current `value` is a default rather than an explicitly set one.
    | | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/TaxRequirementMetadata.md b/gusto_embedded_v_2025_11_15/docs/models/components/TaxRequirementMetadata.md index c6c204ac8..bb9843174 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/TaxRequirementMetadata.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/TaxRequirementMetadata.md @@ -5,8 +5,8 @@ | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `type` | [TaxRequirementMetadataType](../../models/components/TaxRequirementMetadataType.md) | :heavy_check_mark: | Describes the type of requirement - each type may have additional metadata properties to describe possible values, formats, etc.

    - `text`: free-text input, no additional requirements
    - `currency`: a value representing a dollar amount, e.g. `374.55` representing `$374.55`
    - `radio`: choose one of options provided, see `options`
    - `select`: choose one of options provided, see `options`
    - `percent`: A decimal value representing a percentage, e.g. `0.034` representing `3.4%`
    - `account_number`: An account number for a tax agency, more information provided by `mask` and `prefix`
    - `tax_rate`: A decimal value representing a tax rate, e.g. `0.034` representing a tax rate of `3.4%`, see `validation` for additional validation guidance
    - `workers_compensation_rate`: A decimal value representing a percentage, see `risk_class_code`, `risk_class_description`, and `rate_type`
    | -| `options` | List\<[TaxRequirementMetadataOptions](../../models/components/TaxRequirementMetadataOptions.md)> | :heavy_minus_sign: | [for `select` or `radio`] An array of objects describing the possible values. | +| `type` | [Type](../../models/components/Type.md) | :heavy_check_mark: | Describes the type of requirement - each type may have additional metadata properties to describe possible values, formats, etc.

    - `text`: free-text input, no additional requirements
    - `currency`: a value representing a dollar amount, e.g. `374.55` representing `$374.55`
    - `radio`: choose one of options provided, see `options`
    - `select`: choose one of options provided, see `options`
    - `percent`: A decimal value representing a percentage, e.g. `0.034` representing `3.4%`
    - `account_number`: An account number for a tax agency, more information provided by `mask` and `prefix`
    - `tax_rate`: A decimal value representing a tax rate, e.g. `0.034` representing a tax rate of `3.4%`, see `validation` for additional validation guidance
    - `workers_compensation_rate`: A decimal value representing a percentage, see `risk_class_code`, `risk_class_description`, and `rate_type`
    | +| `options` | List\<[Options](../../models/components/Options.md)> | :heavy_minus_sign: | [for `select` or `radio`] An array of objects describing the possible values. | | `riskClassCode` | *Optional\* | :heavy_minus_sign: | [for `workers_compensation_rate`] The industry risk class code for the rate being requested | | `riskClassDescription` | *Optional\* | :heavy_minus_sign: | [for `workers_compensation_rate`] A description of the industry risk class for the rate being requested | | `rateType` | [Optional\](../../models/components/RateType.md) | :heavy_minus_sign: | [for `workers_compensation_rate`] The type of rate being collected. Either:
    - `percent`: A percentage formatted as a decimal, e.g. `0.01` for 1%
    - `currency_per_hour`: A dollar amount per hour, e.g. `3.24` for $3.24/hr
    | diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/TaxRequirementMetadataOptions.md b/gusto_embedded_v_2025_11_15/docs/models/components/TaxRequirementMetadataOptions.md deleted file mode 100644 index 3e78bf332..000000000 --- a/gusto_embedded_v_2025_11_15/docs/models/components/TaxRequirementMetadataOptions.md +++ /dev/null @@ -1,10 +0,0 @@ -# TaxRequirementMetadataOptions - - -## Fields - -| Field | Type | Required | Description | -| ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | -| `label` | *String* | :heavy_check_mark: | A customer facing label for the answer | -| `value` | [TaxRequirementMetadataValue](../../models/components/TaxRequirementMetadataValue.md) | :heavy_check_mark: | The actual value to be submitted | -| `shortLabel` | *JsonNullable\* | :heavy_minus_sign: | A less verbose label that may sometimes be available | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/TaxRequirementMetadataType.md b/gusto_embedded_v_2025_11_15/docs/models/components/TaxRequirementMetadataType.md index 02f059cd0..5114a1312 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/TaxRequirementMetadataType.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/TaxRequirementMetadataType.md @@ -1,35 +1,19 @@ # TaxRequirementMetadataType -Describes the type of requirement - each type may have additional metadata properties to describe possible values, formats, etc. - -- `text`: free-text input, no additional requirements -- `currency`: a value representing a dollar amount, e.g. `374.55` representing `$374.55` -- `radio`: choose one of options provided, see `options` -- `select`: choose one of options provided, see `options` -- `percent`: A decimal value representing a percentage, e.g. `0.034` representing `3.4%` -- `account_number`: An account number for a tax agency, more information provided by `mask` and `prefix` -- `tax_rate`: A decimal value representing a tax rate, e.g. `0.034` representing a tax rate of `3.4%`, see `validation` for additional validation guidance -- `workers_compensation_rate`: A decimal value representing a percentage, see `risk_class_code`, `risk_class_description`, and `rate_type` - +Describes the type of tax_rate validation rule ## Example Usage ```java import com.gusto.embedded_api_v_2025_11_15.models.components.TaxRequirementMetadataType; -TaxRequirementMetadataType value = TaxRequirementMetadataType.TEXT; +TaxRequirementMetadataType value = TaxRequirementMetadataType.ONE_OF; ``` ## Values -| Name | Value | -| --------------------------- | --------------------------- | -| `TEXT` | text | -| `CURRENCY` | currency | -| `RADIO` | radio | -| `SELECT` | select | -| `PERCENT` | percent | -| `ACCOUNT_NUMBER` | account_number | -| `TAX_RATE` | tax_rate | -| `WORKERS_COMPENSATION_RATE` | workers_compensation_rate | \ No newline at end of file +| Name | Value | +| --------- | --------- | +| `ONE_OF` | one_of | +| `MIN_MAX` | min_max | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/TaxRequirementMetadataValidationType.md b/gusto_embedded_v_2025_11_15/docs/models/components/TaxRequirementMetadataValidationType.md deleted file mode 100644 index 437fa3396..000000000 --- a/gusto_embedded_v_2025_11_15/docs/models/components/TaxRequirementMetadataValidationType.md +++ /dev/null @@ -1,19 +0,0 @@ -# TaxRequirementMetadataValidationType - -Describes the type of tax_rate validation rule - -## Example Usage - -```java -import com.gusto.embedded_api_v_2025_11_15.models.components.TaxRequirementMetadataValidationType; - -TaxRequirementMetadataValidationType value = TaxRequirementMetadataValidationType.ONE_OF; -``` - - -## Values - -| Name | Value | -| --------- | --------- | -| `ONE_OF` | one_of | -| `MIN_MAX` | min_max | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/Totals.md b/gusto_embedded_v_2025_11_15/docs/models/components/Totals.md index 96143d951..79bd07d3a 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/Totals.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/Totals.md @@ -1,14 +1,12 @@ # Totals -The subtotals for the payroll. - ## Fields -| Field | Type | Required | Description | -| ---------------------------------------------- | ---------------------------------------------- | ---------------------------------------------- | ---------------------------------------------- | -| `companyDebit` | *Optional\* | :heavy_minus_sign: | The total company debit for the payroll. | -| `netPayDebit` | *Optional\* | :heavy_minus_sign: | The total company net pay for the payroll. | -| `childSupportDebit` | *Optional\* | :heavy_minus_sign: | The total child support debit for the payroll. | -| `reimbursementDebit` | *Optional\* | :heavy_minus_sign: | The total reimbursements for the payroll. | -| `taxDebit` | *Optional\* | :heavy_minus_sign: | The total tax debit for the payroll. | \ No newline at end of file +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | +| `amount` | *Optional\* | :heavy_minus_sign: | The total amount for the group of contractor payments. | +| `debitAmount` | *Optional\* | :heavy_minus_sign: | The total debit amount for the group of contractor payments. Sum of wage & reimbursement amount. | +| `wageAmount` | *Optional\* | :heavy_minus_sign: | The total wage amount for the group of contractor payments. | +| `reimbursementAmount` | *Optional\* | :heavy_minus_sign: | The total reimbursement amount for the group of contractor payments. | +| `checkAmount` | *Optional\* | :heavy_minus_sign: | The total check amount for the group of contractor payments. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/Type.md b/gusto_embedded_v_2025_11_15/docs/models/components/Type.md index 75103137c..c4bd25a74 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/Type.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/Type.md @@ -1,19 +1,35 @@ # Type +Describes the type of requirement - each type may have additional metadata properties to describe possible values, formats, etc. + +- `text`: free-text input, no additional requirements +- `currency`: a value representing a dollar amount, e.g. `374.55` representing `$374.55` +- `radio`: choose one of options provided, see `options` +- `select`: choose one of options provided, see `options` +- `percent`: A decimal value representing a percentage, e.g. `0.034` representing `3.4%` +- `account_number`: An account number for a tax agency, more information provided by `mask` and `prefix` +- `tax_rate`: A decimal value representing a tax rate, e.g. `0.034` representing a tax rate of `3.4%`, see `validation` for additional validation guidance +- `workers_compensation_rate`: A decimal value representing a percentage, see `risk_class_code`, `risk_class_description`, and `rate_type` + + ## Example Usage ```java import com.gusto.embedded_api_v_2025_11_15.models.components.Type; -Type value = Type.SINGLE; +Type value = Type.TEXT; ``` ## Values -| Name | Value | -| ----------------- | ----------------- | -| `SINGLE` | single | -| `HOURLY_SALARIED` | hourly_salaried | -| `BY_EMPLOYEE` | by_employee | -| `BY_DEPARTMENT` | by_department | \ No newline at end of file +| Name | Value | +| --------------------------- | --------------------------- | +| `TEXT` | text | +| `CURRENCY` | currency | +| `RADIO` | radio | +| `SELECT` | select | +| `PERCENT` | percent | +| `ACCOUNT_NUMBER` | account_number | +| `TAX_RATE` | tax_rate | +| `WORKERS_COMPENSATION_RATE` | workers_compensation_rate | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/Validation.md b/gusto_embedded_v_2025_11_15/docs/models/components/Validation.md index ce347f32d..14a176ce8 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/Validation.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/Validation.md @@ -7,7 +7,7 @@ | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------- | -| `type` | [TaxRequirementMetadataValidationType](../../models/components/TaxRequirementMetadataValidationType.md) | :heavy_check_mark: | Describes the type of tax_rate validation rule | +| `type` | [TaxRequirementMetadataType](../../models/components/TaxRequirementMetadataType.md) | :heavy_check_mark: | Describes the type of tax_rate validation rule | | `min` | *Optional\* | :heavy_minus_sign: | [for `min_max`] The inclusive lower bound of the tax rate | | `max` | *Optional\* | :heavy_minus_sign: | [for `min_max`] The inclusive upper bound of the tax rate | | `rates` | List\<*String*> | :heavy_minus_sign: | [for `one_of`] The possible, unformatted tax rates for selection.
    - e.g. ["0.0", "0.001"] representing 0% and 0.1%
    | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/VersionHeader.md b/gusto_embedded_v_2025_11_15/docs/models/components/VersionHeader.md deleted file mode 100644 index dfab4dbde..000000000 --- a/gusto_embedded_v_2025_11_15/docs/models/components/VersionHeader.md +++ /dev/null @@ -1,16 +0,0 @@ -# VersionHeader - -## Example Usage - -```java -import com.gusto.embedded_api_v_2025_11_15.models.components.VersionHeader; - -VersionHeader value = VersionHeader.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15; -``` - - -## Values - -| Name | Value | -| ---------------------------------------------- | ---------------------------------------------- | -| `TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15` | 2025-11-15 | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/WageType.md b/gusto_embedded_v_2025_11_15/docs/models/components/WageType.md index 234aa74e3..707381475 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/components/WageType.md +++ b/gusto_embedded_v_2025_11_15/docs/models/components/WageType.md @@ -1,13 +1,13 @@ # WageType -The contractor's wage type, either "Fixed" or "Hourly". +The wage type for the payment. ## Example Usage ```java import com.gusto.embedded_api_v_2025_11_15.models.components.WageType; -WageType value = WageType.FIXED; +WageType value = WageType.HOURLY; ``` @@ -15,5 +15,5 @@ WageType value = WageType.FIXED; | Name | Value | | -------- | -------- | -| `FIXED` | Fixed | -| `HOURLY` | Hourly | \ No newline at end of file +| `HOURLY` | Hourly | +| `FIXED` | Fixed | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/components/WarningObject.md b/gusto_embedded_v_2025_11_15/docs/models/components/WarningObject.md new file mode 100644 index 000000000..7db41084f --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/components/WarningObject.md @@ -0,0 +1,10 @@ +# WarningObject + + +## Fields + +| Field | Type | Required | Description | +| ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | +| `errorKey` | *Optional\* | :heavy_minus_sign: | Specifies where the warning occurs. Typically identifies the attribute or parameter related to the warning. | +| `category` | *Optional\* | :heavy_minus_sign: | Specifies the type of warning. Can be used to build custom warning handling. | +| `message` | *Optional\* | :heavy_minus_sign: | Provides details about the warning. The message can be surfaced directly to the end user. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/errors/ConflictErrorObject.md b/gusto_embedded_v_2025_11_15/docs/models/errors/ConflictErrorObject.md index 46ec3c2fb..bc5326f19 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/errors/ConflictErrorObject.md +++ b/gusto_embedded_v_2025_11_15/docs/models/errors/ConflictErrorObject.md @@ -2,7 +2,7 @@ Conflict -This error occurs when the resource version provided does not match the current version. Retrieve the latest version and retry. +This may happen when the resource version provided does not match the current version — retrieve the latest version and retry — or when the request conflicts with another in-progress operation on the same resource. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. ## Fields diff --git a/gusto_embedded_v_2025_11_15/docs/models/errors/ForbiddenErrorObject.md b/gusto_embedded_v_2025_11_15/docs/models/errors/ForbiddenErrorObject.md new file mode 100644 index 000000000..4cfa4c14e --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/errors/ForbiddenErrorObject.md @@ -0,0 +1,12 @@ +# ForbiddenErrorObject + +Forbidden + +The targeted company has been archived because its EIN was reassigned to a replacement company. Use the replacement company referenced in the error metadata. + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | +| `errors` | List\<[EntityErrorObject](../../models/components/EntityErrorObject.md)> | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/errors/Metadata.md b/gusto_embedded_v_2025_11_15/docs/models/errors/Metadata.md index 9e479ea35..74f2b9e37 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/errors/Metadata.md +++ b/gusto_embedded_v_2025_11_15/docs/models/errors/Metadata.md @@ -3,6 +3,6 @@ ## Fields -| Field | Type | Required | Description | -| ------------------------------------------------------------- | ------------------------------------------------------------- | ------------------------------------------------------------- | ------------------------------------------------------------- | -| `key` | *Optional\* | :heavy_minus_sign: | A categorization of the payroll blocker, e.g. "geocode_error" | \ No newline at end of file +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | +| `requestUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the existing payroll cancellation batch that already used this idempotency key. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/errors/PayrollBatchConflictError.md b/gusto_embedded_v_2025_11_15/docs/models/errors/PayrollBatchConflictError.md new file mode 100644 index 000000000..c8c98a8a0 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/errors/PayrollBatchConflictError.md @@ -0,0 +1,10 @@ +# PayrollBatchConflictError + +Error response when a payroll cancellation idempotency key has already been used by the same partner. + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | +| `errors` | List\<[PayrollBatchConflictErrorErrors](../../models/errors/PayrollBatchConflictErrorErrors.md)> | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/errors/PayrollBatchConflictErrorErrors.md b/gusto_embedded_v_2025_11_15/docs/models/errors/PayrollBatchConflictErrorErrors.md new file mode 100644 index 000000000..89ca96f7f --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/errors/PayrollBatchConflictErrorErrors.md @@ -0,0 +1,11 @@ +# PayrollBatchConflictErrorErrors + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------ | ------------------------------------------------------ | ------------------------------------------------------ | ------------------------------------------------------ | +| `errorKey` | *Optional\* | :heavy_minus_sign: | The key identifying the error source. | +| `category` | *Optional\* | :heavy_minus_sign: | The error category. | +| `message` | *Optional\* | :heavy_minus_sign: | Human-readable error message. | +| `metadata` | [Optional\](../../models/errors/Metadata.md) | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/errors/PayrollBlockersErrorErrors.md b/gusto_embedded_v_2025_11_15/docs/models/errors/PayrollBlockersErrorErrors.md index 38137ce81..00687e964 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/errors/PayrollBlockersErrorErrors.md +++ b/gusto_embedded_v_2025_11_15/docs/models/errors/PayrollBlockersErrorErrors.md @@ -3,9 +3,9 @@ ## Fields -| Field | Type | Required | Description | -| ------------------------------------------------------ | ------------------------------------------------------ | ------------------------------------------------------ | ------------------------------------------------------ | -| `errorKey` | *Optional\* | :heavy_minus_sign: | The string "base" | -| `category` | *Optional\* | :heavy_minus_sign: | The string "payroll_blocker" | -| `message` | *Optional\* | :heavy_minus_sign: | Human readable description of the payroll blocker | -| `metadata` | [Optional\](../../models/errors/Metadata.md) | :heavy_minus_sign: | N/A | \ No newline at end of file +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | +| `errorKey` | *Optional\* | :heavy_minus_sign: | The string "base" | +| `category` | *Optional\* | :heavy_minus_sign: | The string "payroll_blocker" | +| `message` | *Optional\* | :heavy_minus_sign: | Human readable description of the payroll blocker | +| `metadata` | [Optional\](../../models/errors/PayrollBlockersErrorMetadata.md) | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/errors/PayrollBlockersErrorMetadata.md b/gusto_embedded_v_2025_11_15/docs/models/errors/PayrollBlockersErrorMetadata.md new file mode 100644 index 000000000..2dc76c4cb --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/errors/PayrollBlockersErrorMetadata.md @@ -0,0 +1,8 @@ +# PayrollBlockersErrorMetadata + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------------- | ------------------------------------------------------------- | ------------------------------------------------------------- | ------------------------------------------------------------- | +| `key` | *Optional\* | :heavy_minus_sign: | A categorization of the payroll blocker, e.g. "geocode_error" | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/Batch.md b/gusto_embedded_v_2025_11_15/docs/models/operations/Batch.md index 2da5e31d3..7cef8eb51 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/Batch.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/Batch.md @@ -3,13 +3,8 @@ ## Fields -| Field | Type | Required | Description | Example | -| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `entityType` | [EntityType](../../models/operations/EntityType.md) | :heavy_check_mark: | The type of entity to create | employee | -| `person` | [Person](../../models/operations/Person.md) | :heavy_check_mark: | N/A | | -| `homeAddress` | [Optional\](../../models/operations/PostV1CompaniesCompanyIdPeopleBatchesHomeAddress.md) | :heavy_minus_sign: | Home address for the employee | | -| `workAddress` | [Optional\](../../models/operations/PostV1CompaniesCompanyIdPeopleBatchesWorkAddress.md) | :heavy_minus_sign: | Specify the company work location for the employee | | -| `job` | [Optional\](../../models/operations/PostV1CompaniesCompanyIdPeopleBatchesJob.md) | :heavy_minus_sign: | Job details for the employee (required if compensation is provided) | | -| `department` | [Optional\](../../models/operations/Department.md) | :heavy_minus_sign: | Department details for the employee | | -| `compensation` | [Optional\](../../models/operations/Compensation.md) | :heavy_minus_sign: | Compensation details for the employee (requires job to be provided) | | -| `bankAccounts` | List\<[BankAccounts](../../models/operations/BankAccounts.md)> | :heavy_minus_sign: | Creates employee bank account(s) and payment method(s) for direct deposit. Payments can be split across accounts by Percentage or by Amount. If splitting payments by `Percentage`, all splits must have a `split_amount` and the percentages must add up to `100`.
    If splitting payments by `Amount`, the priority is set based on the order of the bank accounts in the array and the last bank account is the remainder account (should have `split_amount` set to `null`). | | \ No newline at end of file +| Field | Type | Required | Description | Example | +| ------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `entityType` | [EntityType](../../models/operations/EntityType.md) | :heavy_check_mark: | The type of entity to act on. | payroll | +| `uuid` | *String* | :heavy_check_mark: | The UUID of the payroll to cancel. Payrolls the partner is not authorized to access, or that do not exist, appear in the response's `exclusions` array. | | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company that owns the payroll. The partner must be mapped to this company. | | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/BatchAction.md b/gusto_embedded_v_2025_11_15/docs/models/operations/BatchAction.md index 65388cb9d..a2908b932 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/BatchAction.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/BatchAction.md @@ -1,13 +1,13 @@ # BatchAction -The action to perform on the batch +The action to perform on the batch. Only `cancel` is supported. ## Example Usage ```java import com.gusto.embedded_api_v_2025_11_15.models.operations.BatchAction; -BatchAction value = BatchAction.CREATE; +BatchAction value = BatchAction.CANCEL; ``` @@ -15,4 +15,4 @@ BatchAction value = BatchAction.CREATE; | Name | Value | | -------- | -------- | -| `CREATE` | create | \ No newline at end of file +| `CANCEL` | cancel | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/DeleteDepartmentRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/DeleteDepartmentRequest.md index ad8e37b72..84240d214 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/DeleteDepartmentRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/DeleteDepartmentRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `departmentUuid` | *String* | :heavy_check_mark: | The UUID of the department | -| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteDepartmentHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteDepartmentHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `departmentUuid` | *String* | :heavy_check_mark: | The UUID of the department | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/DeleteV1CompaniesCompanyIdPayrollsRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/DeleteV1CompaniesCompanyIdPayrollsRequest.md index d8039e22b..daefaf7e5 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/DeleteV1CompaniesCompanyIdPayrollsRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/DeleteV1CompaniesCompanyIdPayrollsRequest.md @@ -5,7 +5,7 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | `payrollId` | *String* | :heavy_check_mark: | The UUID of the payroll | -| `async` | *Optional\* | :heavy_minus_sign: | When true, request an asynchronous delete of the payroll. | -| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `async` | *Optional\* | :heavy_minus_sign: | When true, request an asynchronous delete of the payroll. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.md index db63e0d6a..74bbfc77b 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | -| `signatoryUuid` | *String* | :heavy_check_mark: | The UUID of the signatory | -| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `signatoryUuid` | *String* | :heavy_check_mark: | The UUID of the signatory | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.md index 36464b1f6..ca5eb9eb8 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `contractorPaymentGroupUuid` | *String* | :heavy_check_mark: | The UUID of the contractor payment group | -| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorPaymentGroupUuid` | *String* | :heavy_check_mark: | The UUID of the contractor payment group | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.md b/gusto_embedded_v_2025_11_15/docs/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.md new file mode 100644 index 000000000..982071889 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.md @@ -0,0 +1,18 @@ +# DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion + +Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion; + +DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion value = DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15; +``` + + +## Values + +| Name | Value | +| ---------------------------------------------- | ---------------------------------------------- | +| `TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15` | 2025-11-15 | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest.md new file mode 100644 index 000000000..68a9f1e29 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest.md @@ -0,0 +1,9 @@ +# DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse.md b/gusto_embedded_v_2025_11_15/docs/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse.md new file mode 100644 index 000000000..3e71f42e1 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse.md @@ -0,0 +1,10 @@ +# DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | +| `contentType` | *String* | :heavy_check_mark: | HTTP response content type for this operation | +| `statusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation | +| `rawResponse` | [HttpResponse\](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/DeleteV1ContractorsContractorUuidRehireRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/DeleteV1ContractorsContractorUuidRehireRequest.md index a23be0639..5d967bc21 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/DeleteV1ContractorsContractorUuidRehireRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/DeleteV1ContractorsContractorUuidRehireRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | -| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1ContractorsContractorUuidRehireHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1ContractorsContractorUuidRehireHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/DeleteV1ContractorsContractorUuidTerminationRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/DeleteV1ContractorsContractorUuidTerminationRequest.md index 63ffc2dba..8c9b110d6 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/DeleteV1ContractorsContractorUuidTerminationRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/DeleteV1ContractorsContractorUuidTerminationRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | -| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1ContractorsContractorUuidTerminationHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1ContractorsContractorUuidTerminationHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.md b/gusto_embedded_v_2025_11_15/docs/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.md new file mode 100644 index 000000000..695baaf4c --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.md @@ -0,0 +1,18 @@ +# DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion + +Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion; + +DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion value = DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15; +``` + + +## Values + +| Name | Value | +| ---------------------------------------------- | ---------------------------------------------- | +| `TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15` | 2025-11-15 | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest.md new file mode 100644 index 000000000..c75ec42f6 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest.md @@ -0,0 +1,9 @@ +# DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse.md b/gusto_embedded_v_2025_11_15/docs/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse.md new file mode 100644 index 000000000..eb01e4ce8 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse.md @@ -0,0 +1,10 @@ +# DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | +| `contentType` | *String* | :heavy_check_mark: | HTTP response content type for this operation | +| `statusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation | +| `rawResponse` | [HttpResponse\](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/DeleteV1JobsJobIdRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/DeleteV1JobsJobIdRequest.md index 08467b97a..ae69845c2 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/DeleteV1JobsJobIdRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/DeleteV1JobsJobIdRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `jobId` | *String* | :heavy_check_mark: | The UUID of the job | -| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1JobsJobIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1JobsJobIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `jobId` | *String* | :heavy_check_mark: | The UUID of the job | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/DeleteV1WebhookSubscriptionUuidRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/DeleteV1WebhookSubscriptionUuidRequest.md index 1f6589f3c..132905541 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/DeleteV1WebhookSubscriptionUuidRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/DeleteV1WebhookSubscriptionUuidRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `webhookSubscriptionUuid` | *String* | :heavy_check_mark: | The webhook subscription UUID. | -| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1WebhookSubscriptionUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1WebhookSubscriptionUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `webhookSubscriptionUuid` | *String* | :heavy_check_mark: | The webhook subscription UUID. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/DeleteV1WorkAddressesWorkAddressUuidRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/DeleteV1WorkAddressesWorkAddressUuidRequest.md index 540e7dcca..390a7dff3 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/DeleteV1WorkAddressesWorkAddressUuidRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/DeleteV1WorkAddressesWorkAddressUuidRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `workAddressUuid` | *String* | :heavy_check_mark: | The UUID of the work address | -| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1WorkAddressesWorkAddressUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1WorkAddressesWorkAddressUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `workAddressUuid` | *String* | :heavy_check_mark: | The UUID of the work address | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/Employees.md b/gusto_embedded_v_2025_11_15/docs/models/operations/Employees.md index 186f9b8de..d8aa07ecc 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/Employees.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/Employees.md @@ -3,7 +3,6 @@ ## Fields -| Field | Type | Required | Description | -| ------------------------------------- | ------------------------------------- | ------------------------------------- | ------------------------------------- | -| `uuid` | *String* | :heavy_check_mark: | The UUID of the employee | -| `balance` | *JsonNullable\* | :heavy_minus_sign: | The starting balance for the employee | \ No newline at end of file +| Field | Type | Required | Description | +| ------------------- | ------------------- | ------------------- | ------------------- | +| `uuid` | *Optional\* | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/EntityType.md b/gusto_embedded_v_2025_11_15/docs/models/operations/EntityType.md index 764b7a330..31e37c3fb 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/EntityType.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/EntityType.md @@ -1,18 +1,18 @@ # EntityType -The type of entity to create +The type of entity to act on. ## Example Usage ```java import com.gusto.embedded_api_v_2025_11_15.models.operations.EntityType; -EntityType value = EntityType.EMPLOYEE; +EntityType value = EntityType.PAYROLL; ``` ## Values -| Name | Value | -| ---------- | ---------- | -| `EMPLOYEE` | employee | \ No newline at end of file +| Name | Value | +| --------- | --------- | +| `PAYROLL` | payroll | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetAchTransactionsRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetAchTransactionsRequest.md index ed5fd80f6..8e1b7d90c 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/GetAchTransactionsRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetAchTransactionsRequest.md @@ -5,7 +5,7 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetAchTransactionsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/XGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `contractorPaymentUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the contractor payment | | `payrollUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the payroll | diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetCompaniesCompanyUuidWireInRequestUuidRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetCompaniesCompanyUuidWireInRequestUuidRequest.md index 49727cf55..92dad0029 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/GetCompaniesCompanyUuidWireInRequestUuidRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetCompaniesCompanyUuidWireInRequestUuidRequest.md @@ -5,7 +5,7 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetCompaniesCompanyUuidWireInRequestUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | | `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetCompaniesDepartmentsRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetCompaniesDepartmentsRequest.md index d3edad26d..75f56a515 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/GetCompaniesDepartmentsRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetCompaniesDepartmentsRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetCompaniesDepartmentsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetCompaniesDepartmentsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetCompanyNotificationsRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetCompanyNotificationsRequest.md index 5a9e7cbeb..0f9543909 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/GetCompanyNotificationsRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetCompanyNotificationsRequest.md @@ -5,8 +5,8 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetCompanyNotificationsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company for which you would like to return notifications | | `status` | [Optional\](../../models/operations/Status.md) | :heavy_minus_sign: | N/A | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetCompanyNotificationsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | | `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetDepartmentRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetDepartmentRequest.md index 967af39fb..c2cb710fc 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/GetDepartmentRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetDepartmentRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `departmentUuid` | *String* | :heavy_check_mark: | The UUID of the department | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetDepartmentHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetDepartmentHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `departmentUuid` | *String* | :heavy_check_mark: | The UUID of the department | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetEventsRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetEventsRequest.md index aa7a6c30e..7172c6eb4 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/GetEventsRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetEventsRequest.md @@ -10,4 +10,4 @@ | `resourceUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the company. If not specified, will return all events for all companies. | | `limit` | *Optional\* | :heavy_minus_sign: | Limits the number of objects returned in a single response, between 1 and 100. The default is 25 | | `eventType` | *Optional\* | :heavy_minus_sign: | A string containing the exact event name (e.g. `employee.created`), or use a wildcard match to filter for a group of events (e.g. `employee.*`, `*.created`, `notification.*.created` etc.) | -| `sortOrder` | [Optional\](../../models/operations/QueryParamSortOrder.md) | :heavy_minus_sign: | A string indicating whether to sort resulting events in ascending (asc) or descending (desc) chronological order. Events are sorted by their `timestamp`. Defaults to asc if left empty. | \ No newline at end of file +| `sortOrder` | [Optional\](../../models/operations/SortOrder.md) | :heavy_minus_sign: | A string indicating whether to sort resulting events in ascending (asc) or descending (desc) chronological order. Events are sorted by their `timestamp`. Defaults to asc if left empty. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetNotificationsNotificationUuidRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetNotificationsNotificationUuidRequest.md index cc03e18ff..51e4b61d1 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/GetNotificationsNotificationUuidRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetNotificationsNotificationUuidRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `notificationUuid` | *String* | :heavy_check_mark: | The notification entity_uuid | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetNotificationsNotificationUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetNotificationsNotificationUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `notificationUuid` | *String* | :heavy_check_mark: | The notification entity_uuid | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetReverseWireTransactionsHeaderXGustoAPIVersion.md similarity index 70% rename from gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion.md rename to gusto_embedded_v_2025_11_15/docs/models/operations/GetReverseWireTransactionsHeaderXGustoAPIVersion.md index 4b216c69e..daf163ffb 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetReverseWireTransactionsHeaderXGustoAPIVersion.md @@ -1,13 +1,13 @@ -# GetV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion +# GetReverseWireTransactionsHeaderXGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. ## Example Usage ```java -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetReverseWireTransactionsHeaderXGustoAPIVersion; -GetV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion value = GetV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15; +GetReverseWireTransactionsHeaderXGustoAPIVersion value = GetReverseWireTransactionsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15; ``` diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetReverseWireTransactionsRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetReverseWireTransactionsRequest.md new file mode 100644 index 000000000..3bdd174de --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetReverseWireTransactionsRequest.md @@ -0,0 +1,12 @@ +# GetReverseWireTransactionsRequest + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetReverseWireTransactionsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | +| `payrollUuid` | *Optional\* | :heavy_minus_sign: | Filter results to reverse wires associated with a specific payroll | +| `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | +| `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetReverseWireTransactionsResponse.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetReverseWireTransactionsResponse.md new file mode 100644 index 000000000..54edb0957 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetReverseWireTransactionsResponse.md @@ -0,0 +1,11 @@ +# GetReverseWireTransactionsResponse + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | +| `contentType` | *String* | :heavy_check_mark: | HTTP response content type for this operation | +| `statusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation | +| `rawResponse` | [HttpResponse\](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | +| `reverseWireTransactionList` | List\<[ReverseWireTransaction](../../models/components/ReverseWireTransaction.md)> | :heavy_minus_sign: | Example response | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetAchTransactionsHeaderXGustoAPIVersion.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetTaxPaymentHeaderXGustoAPIVersion.md similarity index 74% rename from gusto_embedded_v_2025_11_15/docs/models/operations/GetAchTransactionsHeaderXGustoAPIVersion.md rename to gusto_embedded_v_2025_11_15/docs/models/operations/GetTaxPaymentHeaderXGustoAPIVersion.md index bf341b009..fdc19e811 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/GetAchTransactionsHeaderXGustoAPIVersion.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetTaxPaymentHeaderXGustoAPIVersion.md @@ -1,13 +1,13 @@ -# GetAchTransactionsHeaderXGustoAPIVersion +# GetTaxPaymentHeaderXGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. ## Example Usage ```java -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetAchTransactionsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetTaxPaymentHeaderXGustoAPIVersion; -GetAchTransactionsHeaderXGustoAPIVersion value = GetAchTransactionsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15; +GetTaxPaymentHeaderXGustoAPIVersion value = GetTaxPaymentHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15; ``` diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetTaxPaymentRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetTaxPaymentRequest.md new file mode 100644 index 000000000..27124ac93 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetTaxPaymentRequest.md @@ -0,0 +1,10 @@ +# GetTaxPaymentRequest + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetTaxPaymentHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | +| `uuid` | *String* | :heavy_check_mark: | The UUID of the tax payment | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetTaxPaymentResponse.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetTaxPaymentResponse.md new file mode 100644 index 000000000..5d78fdd78 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetTaxPaymentResponse.md @@ -0,0 +1,11 @@ +# GetTaxPaymentResponse + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | +| `contentType` | *String* | :heavy_check_mark: | HTTP response content type for this operation | +| `statusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation | +| `rawResponse` | [HttpResponse\](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | +| `taxPayment` | [Optional\](../../models/components/TaxPayment.md) | :heavy_minus_sign: | Success | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetTaxPaymentsHeaderXGustoAPIVersion.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetTaxPaymentsHeaderXGustoAPIVersion.md new file mode 100644 index 000000000..7e3630907 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetTaxPaymentsHeaderXGustoAPIVersion.md @@ -0,0 +1,18 @@ +# GetTaxPaymentsHeaderXGustoAPIVersion + +Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetTaxPaymentsHeaderXGustoAPIVersion; + +GetTaxPaymentsHeaderXGustoAPIVersion value = GetTaxPaymentsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15; +``` + + +## Values + +| Name | Value | +| ---------------------------------------------- | ---------------------------------------------- | +| `TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15` | 2025-11-15 | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetTaxPaymentsRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetTaxPaymentsRequest.md new file mode 100644 index 000000000..ceee8ed55 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetTaxPaymentsRequest.md @@ -0,0 +1,24 @@ +# GetTaxPaymentsRequest + + +## Fields + +| Field | Type | Required | Description | Example | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetTaxPaymentsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | +| `jurisdiction` | List\<*String*> | :heavy_minus_sign: | Filter by tax jurisdiction. Accepts one or more two-letter state codes, or `US` for federal, as a comma-separated list (e.g. `IL,CA`). Codes are case-insensitive. | | +| `payrollUuids` | List\<*String*> | :heavy_minus_sign: | Filter to tax payments associated with one or more payrolls, given as a comma-separated list of payroll UUIDs. | | +| `dueDateFrom` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_minus_sign: | Lower-bound (inclusive) date filter on due_date. | | +| `dueDateTo` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_minus_sign: | Upper-bound (inclusive) date filter on due_date. | | +| `paymentSentOnFrom` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_minus_sign: | Lower-bound (inclusive) date filter on payment_sent_on. | | +| `paymentSentOnTo` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_minus_sign: | Upper-bound (inclusive) date filter on payment_sent_on. | | +| `periodStartFrom` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_minus_sign: | Lower-bound (inclusive) date filter on period_start. | | +| `periodStartTo` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_minus_sign: | Upper-bound (inclusive) date filter on period_start. | | +| `periodEndFrom` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_minus_sign: | Lower-bound (inclusive) date filter on period_end. | | +| `periodEndTo` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_minus_sign: | Upper-bound (inclusive) date filter on period_end. | | +| `amountMin` | *Optional\* | :heavy_minus_sign: | Lower-bound (inclusive) filter on amount. | | +| `amountMax` | *Optional\* | :heavy_minus_sign: | Upper-bound (inclusive) filter on amount. | | +| `sortBy` | *Optional\* | :heavy_minus_sign: | Sort by one or more fields. Options: amount, due_date, payment_sent_on, period_end, period_start. Append `:asc` or `:desc` to specify direction (e.g., `amount:asc`). Defaults to ascending. | amount:asc | +| `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | | +| `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetTaxPaymentsResponse.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetTaxPaymentsResponse.md new file mode 100644 index 000000000..9e06ceeae --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetTaxPaymentsResponse.md @@ -0,0 +1,11 @@ +# GetTaxPaymentsResponse + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | +| `contentType` | *String* | :heavy_check_mark: | HTTP response content type for this operation | +| `statusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation | +| `rawResponse` | [HttpResponse\](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | +| `taxPaymentList` | List\<[TaxPayment](../../models/components/TaxPayment.md)> | :heavy_minus_sign: | Success | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1BenefitsResponse.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1BenefitsResponse.md index 38d1b7a14..c636016d6 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1BenefitsResponse.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1BenefitsResponse.md @@ -8,4 +8,4 @@ | `contentType` | *String* | :heavy_check_mark: | HTTP response content type for this operation | | `statusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation | | `rawResponse` | [HttpResponse\](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | -| `supportedBenefits` | List\<[SupportedBenefit](../../models/components/SupportedBenefit.md)> | :heavy_minus_sign: | Successful | \ No newline at end of file +| `supportedBenefitList` | List\<[SupportedBenefit](../../models/components/SupportedBenefit.md)> | :heavy_minus_sign: | Successful | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion.md new file mode 100644 index 000000000..242b02b53 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion.md @@ -0,0 +1,18 @@ +# GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion + +Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion; + +GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion value = GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15; +``` + + +## Values + +| Name | Value | +| ---------------------------------------------- | ---------------------------------------------- | +| `TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15` | 2025-11-15 | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1BulkReportsRequestUuidRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1BulkReportsRequestUuidRequest.md new file mode 100644 index 000000000..455e7dd03 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1BulkReportsRequestUuidRequest.md @@ -0,0 +1,9 @@ +# GetV1BulkReportsRequestUuidRequest + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `requestUuid` | *String* | :heavy_check_mark: | The UUID of the bulk report batch. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1BulkReportsRequestUuidResponse.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1BulkReportsRequestUuidResponse.md new file mode 100644 index 000000000..308f4e425 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1BulkReportsRequestUuidResponse.md @@ -0,0 +1,11 @@ +# GetV1BulkReportsRequestUuidResponse + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | +| `contentType` | *String* | :heavy_check_mark: | HTTP response content type for this operation | +| `statusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation | +| `rawResponse` | [HttpResponse\](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | +| `bulkReport` | [Optional\](../../models/components/BulkReport.md) | :heavy_minus_sign: | OK | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1BulkReportsRequestUuidSecurity.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1BulkReportsRequestUuidSecurity.md new file mode 100644 index 000000000..ad43655f1 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1BulkReportsRequestUuidSecurity.md @@ -0,0 +1,8 @@ +# GetV1BulkReportsRequestUuidSecurity + + +## Fields + +| Field | Type | Required | Description | +| ------------------ | ------------------ | ------------------ | ------------------ | +| `systemAccessAuth` | *String* | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesCompanyIdAdminsRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesCompanyIdAdminsRequest.md index d31ca9aec..cdf8eb2e8 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesCompanyIdAdminsRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesCompanyIdAdminsRequest.md @@ -5,7 +5,7 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/HeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | | `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesCompanyIdContractorPaymentGroupsRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesCompanyIdContractorPaymentGroupsRequest.md index c6048a25c..5393f11c6 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesCompanyIdContractorPaymentGroupsRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesCompanyIdContractorPaymentGroupsRequest.md @@ -5,9 +5,9 @@ | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdContractorPaymentGroupsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | | `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | | `startDate` | *Optional\* | :heavy_minus_sign: | The time period for which to retrieve contractor payment groups. Defaults to 6 months ago. | 2020-01-01 | | `endDate` | *Optional\* | :heavy_minus_sign: | The time period for which to retrieve contractor payment groups. Defaults to today's date. | 2020-12-31 | | `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | | -| `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdContractorPaymentGroupsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | \ No newline at end of file +| `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest.md index b2b1058ad..b49fbb0fa 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest.md @@ -5,7 +5,7 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyId` | *String* | :heavy_check_mark: | The UUID of the company. This identifies the company whose contractor payment details you want to retrieve. | | `contractorUuid` | *Optional\* | :heavy_minus_sign: | Optional filter to get payment details for a specific contractor. When provided, the response will only include payment details for this contractor. | -| `contractorPaymentGroupUuid` | *Optional\* | :heavy_minus_sign: | 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. | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `contractorPaymentGroupUuid` | *Optional\* | :heavy_minus_sign: | 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. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesCompanyIdEmployeesQueryParamInclude.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesCompanyIdEmployeesQueryParamInclude.md new file mode 100644 index 000000000..42c04fac1 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesCompanyIdEmployeesQueryParamInclude.md @@ -0,0 +1,21 @@ +# GetV1CompaniesCompanyIdEmployeesQueryParamInclude + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdEmployeesQueryParamInclude; + +GetV1CompaniesCompanyIdEmployeesQueryParamInclude value = GetV1CompaniesCompanyIdEmployeesQueryParamInclude.ALL_COMPENSATIONS; +``` + + +## Values + +| Name | Value | +| ---------------------- | ---------------------- | +| `ALL_COMPENSATIONS` | all_compensations | +| `ALL_HOME_ADDRESSES` | all_home_addresses | +| `COMPANY_NAME` | company_name | +| `CURRENT_HOME_ADDRESS` | current_home_address | +| `CUSTOM_FIELDS` | custom_fields | +| `PORTAL_INVITATIONS` | portal_invitations | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesCompanyIdEmployeesRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesCompanyIdEmployeesRequest.md index b1338ec65..959151d95 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesCompanyIdEmployeesRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesCompanyIdEmployeesRequest.md @@ -11,7 +11,7 @@ | `payrollUuid` | *Optional\* | :heavy_minus_sign: | Filter employees by a specific payroll | | | `searchTerm` | *Optional\* | :heavy_minus_sign: | A string to search for in the object's names | | | `sortBy` | *Optional\* | :heavy_minus_sign: | Sort employees by a given field. Cannot be used with search_term. Append `:asc` or `:desc` to specify direction (e.g., `name:desc`). Defaults to ascending. | created_at:asc | -| `include` | List\<[Include](../../models/operations/Include.md)> | :heavy_minus_sign: | Include the requested attribute(s) in each employee response. Multiple options are comma separated. | | +| `include` | List\<[GetV1CompaniesCompanyIdEmployeesQueryParamInclude](../../models/operations/GetV1CompaniesCompanyIdEmployeesQueryParamInclude.md)> | :heavy_minus_sign: | Include the requested attribute(s) in each employee response. Multiple options are comma separated. | | | `onboarded` | *Optional\* | :heavy_minus_sign: | Filters employees by those who have completed onboarding | | | `onboardedActive` | *Optional\* | :heavy_minus_sign: | Filters employees who are ready to work (onboarded AND active today) | | | `terminated` | *Optional\* | :heavy_minus_sign: | Filters employees by those who have been or are scheduled to be terminated | | diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesCompanyIdFederalTaxDetailsRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesCompanyIdFederalTaxDetailsRequest.md index 3d1f819c9..b8135170e 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesCompanyIdFederalTaxDetailsRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesCompanyIdFederalTaxDetailsRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | 7b1d0df1-6403-4a06-8768-c1dd7d24d27a | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdFederalTaxDetailsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdFederalTaxDetailsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | 7b1d0df1-6403-4a06-8768-c1dd7d24d27a | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesCompanyIdPaySchedulesPreviewRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesCompanyIdPaySchedulesPreviewRequest.md index 912c535a0..cfb82250a 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesCompanyIdPaySchedulesPreviewRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesCompanyIdPaySchedulesPreviewRequest.md @@ -12,4 +12,5 @@ | `anchorEndOfPayPeriod` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_check_mark: | The last date of the first pay period. This can be the same date as the anchor pay date. | 2020-05-08 | | `day1` | *Optional\* | :heavy_minus_sign: | 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. | 15 | | `day2` | *Optional\* | :heavy_minus_sign: | 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 is set to the last day of the month. It will be null for pay schedules with other frequencies. | 31 | -| `endDate` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_minus_sign: | End date for the preview range. If given, this date must be in the future. When unspecified, defaults to 18 months from today. | | \ No newline at end of file +| `endDate` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_minus_sign: | End date for the preview range. If given, this date must be in the future. When unspecified, defaults to 18 months from today. | | +| `payScheduleUuid` | *Optional\* | :heavy_minus_sign: | Optional UUID of an existing pay schedule. When supplied, the preview is seeded from the persisted schedule — including internal flags (such as arrears handling) that affect period boundaries but are not exposed as request parameters. Any other query parameters override individual attributes on top of the loaded schedule. | | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion.md new file mode 100644 index 000000000..d58fce9d8 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion.md @@ -0,0 +1,18 @@ +# GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion + +Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion; + +GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion value = GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15; +``` + + +## Values + +| Name | Value | +| ---------------------------------------------- | ---------------------------------------------- | +| `TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15` | 2025-11-15 | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesCompanyIdPayrollReversalsRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesCompanyIdPayrollReversalsRequest.md index 29e8e3fb1..f828b2823 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesCompanyIdPayrollReversalsRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesCompanyIdPayrollReversalsRequest.md @@ -5,7 +5,7 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | -| `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | -| `xGustoAPIVersion` | [Optional\](../../models/components/VersionHeader.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.md index e8abe53db..ff9d1d05c 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyId` | *String* | :heavy_check_mark: | The UUID of the company | -| `id` | *String* | :heavy_check_mark: | The UUID of the payroll | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `id` | *String* | :heavy_check_mark: | The UUID of the payroll | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesCompanyIdPayrollsPayrollIdRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesCompanyIdPayrollsPayrollIdRequest.md index 3f6e266a2..2ddcfd247 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesCompanyIdPayrollsPayrollIdRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesCompanyIdPayrollsPayrollIdRequest.md @@ -5,9 +5,9 @@ | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdPayrollsPayrollIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | | `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | | `payrollId` | *String* | :heavy_check_mark: | The UUID of the payroll | | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdPayrollsPayrollIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | | `include` | List\<[GetV1CompaniesCompanyIdPayrollsPayrollIdQueryParamInclude](../../models/operations/GetV1CompaniesCompanyIdPayrollsPayrollIdQueryParamInclude.md)> | :heavy_minus_sign: | Include the requested attribute in the response, for multiple attributes comma separate the values, i.e. `?include=benefits,deductions,taxes` | | | `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | | | `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | | diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesCompanyIdPayrollsRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesCompanyIdPayrollsRequest.md index 7fb68723f..d7c533615 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesCompanyIdPayrollsRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesCompanyIdPayrollsRequest.md @@ -5,8 +5,8 @@ | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | | `processingStatuses` | List\<[ProcessingStatuses](../../models/operations/ProcessingStatuses.md)> | :heavy_minus_sign: | Whether to include processed and/or unprocessed payrolls in the response, defaults to processed, for multiple attributes comma separate the values, i.e. `?processing_statuses=processed,unprocessed` | | | `payrollTypes` | List\<[QueryParamPayrollTypes](../../models/operations/QueryParamPayrollTypes.md)> | :heavy_minus_sign: | Whether to include regular and/or off_cycle payrolls in the response, defaults to regular, for multiple attributes comma separate the values, i.e. `?payroll_types=regular,off_cycle` | | | `processed` | *Optional\* | :heavy_minus_sign: | Whether to return processed or unprocessed payrolls | | @@ -17,4 +17,4 @@ | `dateFilterBy` | [Optional\](../../models/operations/DateFilterBy.md) | :heavy_minus_sign: | Specifies which date field to use when filtering payrolls with start_date and end_date. This field applies only to regular processed payrolls and defaults to pay period if not provided. | check_date | | `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | | | `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | | -| `sortOrder` | [Optional\](../../models/operations/SortOrder.md) | :heavy_minus_sign: | A string indicating whether to sort resulting events in ascending (asc) or descending (desc) chronological order. Events are sorted by their `timestamp`. Defaults to asc if left empty. | asc | \ No newline at end of file +| `sortOrder` | [Optional\](../../models/operations/QueryParamSortOrder.md) | :heavy_minus_sign: | A string indicating whether to sort resulting events in ascending (asc) or descending (desc) chronological order. Events are sorted by their `timestamp`. Defaults to asc if left empty. | asc | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesCompanyUuidSignatoriesRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesCompanyUuidSignatoriesRequest.md index d663e119c..0582dd5b4 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesCompanyUuidSignatoriesRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesCompanyUuidSignatoriesRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyUuidSignatoriesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyUuidSignatoriesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsRequest.md index e045197b3..dc8ac0a76 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyUuidTaxRequirementsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyUuidTaxRequirementsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsStateRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsStateRequest.md index 8ab8c17eb..30fdff1b1 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsStateRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsStateRequest.md @@ -5,7 +5,7 @@ | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyUuidTaxRequirementsStateHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | | `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | | `state` | *String* | :heavy_check_mark: | The two-letter state abbreviation | CA | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyUuidTaxRequirementsStateHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | | `scheduling` | *Optional\* | :heavy_minus_sign: | When true, return "new" requirement sets with valid `effective_from` dates that are available to save new effective-dated values. | | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesRequest.md index 6e2ad3227..67d84a956 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompaniesRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsQueryParamInclude.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsQueryParamInclude.md deleted file mode 100644 index a7e739a33..000000000 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsQueryParamInclude.md +++ /dev/null @@ -1,19 +0,0 @@ -# GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsQueryParamInclude - -Available options: -- all_benefits: Include all effective dated benefits for each employee instead of only the current benefits. - -## Example Usage - -```java -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsQueryParamInclude; - -GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsQueryParamInclude value = GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsQueryParamInclude.ALL_BENEFITS; -``` - - -## Values - -| Name | Value | -| -------------- | -------------- | -| `ALL_BENEFITS` | all_benefits | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsRequest.md index 0a21e174a..d5aaf5ac4 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsRequest.md @@ -9,4 +9,4 @@ | `companyBenefitId` | *String* | :heavy_check_mark: | The UUID of the company benefit | | `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | | `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | -| `include` | [Optional\](../../models/operations/GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsQueryParamInclude.md) | :heavy_minus_sign: | Available options:
    - all_benefits: Include all effective dated benefits for each employee instead of only the current benefits. | \ No newline at end of file +| `include` | [Optional\](../../models/operations/QueryParamInclude.md) | :heavy_minus_sign: | Available options:
    - all_benefits: Include all effective dated benefits for each employee instead of only the current benefits. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompanyBenefitsCompanyBenefitIdQueryParamInclude.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompanyBenefitsCompanyBenefitIdQueryParamInclude.md deleted file mode 100644 index e543336aa..000000000 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompanyBenefitsCompanyBenefitIdQueryParamInclude.md +++ /dev/null @@ -1,19 +0,0 @@ -# GetV1CompanyBenefitsCompanyBenefitIdQueryParamInclude - -Available options: -- all_benefits: If with_employee_benefits=true, include all effective dated benefits for each employee instead of only the current benefits. - -## Example Usage - -```java -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompanyBenefitsCompanyBenefitIdQueryParamInclude; - -GetV1CompanyBenefitsCompanyBenefitIdQueryParamInclude value = GetV1CompanyBenefitsCompanyBenefitIdQueryParamInclude.ALL_BENEFITS; -``` - - -## Values - -| Name | Value | -| -------------- | -------------- | -| `ALL_BENEFITS` | all_benefits | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompanyBenefitsCompanyBenefitIdRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompanyBenefitsCompanyBenefitIdRequest.md index ff4093df8..1d0a4b9b5 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompanyBenefitsCompanyBenefitIdRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompanyBenefitsCompanyBenefitIdRequest.md @@ -8,4 +8,4 @@ | `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompanyBenefitsCompanyBenefitIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyBenefitId` | *String* | :heavy_check_mark: | The UUID of the company benefit | | `withEmployeeBenefits` | *Optional\* | :heavy_minus_sign: | Whether to return employee benefits associated with the benefit | -| `include` | [Optional\](../../models/operations/GetV1CompanyBenefitsCompanyBenefitIdQueryParamInclude.md) | :heavy_minus_sign: | Available options:
    - all_benefits: If with_employee_benefits=true, include all effective dated benefits for each employee instead of only the current benefits. | \ No newline at end of file +| `include` | [Optional\](../../models/operations/Include.md) | :heavy_minus_sign: | Available options:
    - all_benefits: If with_employee_benefits=true, include all effective dated benefits for each employee instead of only the current benefits. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompanyFinishOnboardingRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompanyFinishOnboardingRequest.md index 387d5e582..cd74288a1 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompanyFinishOnboardingRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompanyFinishOnboardingRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | 7b1d0df1-6403-4a06-8768-c1dd7d24d27a | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompanyFinishOnboardingHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompanyFinishOnboardingHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | 7b1d0df1-6403-4a06-8768-c1dd7d24d27a | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompanyIndustryRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompanyIndustryRequest.md index b6a7b04f5..789bd7642 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompanyIndustryRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompanyIndustryRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompanyIndustryHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompanyIndustryHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompanyOnboardingStatusRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompanyOnboardingStatusRequest.md index 3292469c3..4b1732f88 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompanyOnboardingStatusRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1CompanyOnboardingStatusRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompanyOnboardingStatusHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | | `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | 7b1d0df1-6403-4a06-8768-c1dd7d24d27a | -| `additionalSteps` | *Optional\* | :heavy_minus_sign: | Comma-delimited string of additional onboarding steps to include. Currently only supports the value "external_payroll". | external_payroll | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompanyOnboardingStatusHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | \ No newline at end of file +| `additionalSteps` | *Optional\* | :heavy_minus_sign: | Comma-delimited string of additional onboarding steps to include. Currently only supports the value "external_payroll". | external_payroll | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.md index 472134e8a..468079c72 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `contractorPaymentGroupUuid` | *String* | :heavy_check_mark: | The UUID of the contractor payment group | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1ContractorPaymentGroupsContractorPaymentGroupIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1ContractorPaymentGroupsContractorPaymentGroupIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorPaymentGroupUuid` | *String* | :heavy_check_mark: | The UUID of the contractor payment group | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.md index 5faa3bac3..8dc42357a 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `id` | *String* | :heavy_check_mark: | The UUID of the contractor payment group | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1ContractorPaymentGroupsIdPartnerDisbursementsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1ContractorPaymentGroupsIdPartnerDisbursementsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `id` | *String* | :heavy_check_mark: | The UUID of the contractor payment group | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.md new file mode 100644 index 000000000..68dc89089 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.md @@ -0,0 +1,18 @@ +# GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion + +Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion; + +GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion value = GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15; +``` + + +## Values + +| Name | Value | +| ---------------------------------------------- | ---------------------------------------------- | +| `TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15` | 2025-11-15 | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsRequest.md new file mode 100644 index 000000000..93ce3684c --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsRequest.md @@ -0,0 +1,9 @@ +# GetV1ContractorsContractorUuidMemberPortalInvitationsRequest + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsResponse.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsResponse.md new file mode 100644 index 000000000..130dc68ec --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsResponse.md @@ -0,0 +1,11 @@ +# GetV1ContractorsContractorUuidMemberPortalInvitationsResponse + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | +| `contentType` | *String* | :heavy_check_mark: | HTTP response content type for this operation | +| `statusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation | +| `rawResponse` | [HttpResponse\](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | +| `memberPortalInvitation` | [Optional\](../../models/components/MemberPortalInvitation.md) | :heavy_minus_sign: | Success | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1ContractorsContractorUuidPaymentsHeaderXGustoAPIVersion.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1ContractorsContractorUuidPaymentsHeaderXGustoAPIVersion.md new file mode 100644 index 000000000..53196acce --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1ContractorsContractorUuidPaymentsHeaderXGustoAPIVersion.md @@ -0,0 +1,18 @@ +# GetV1ContractorsContractorUuidPaymentsHeaderXGustoAPIVersion + +Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ContractorsContractorUuidPaymentsHeaderXGustoAPIVersion; + +GetV1ContractorsContractorUuidPaymentsHeaderXGustoAPIVersion value = GetV1ContractorsContractorUuidPaymentsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15; +``` + + +## Values + +| Name | Value | +| ---------------------------------------------- | ---------------------------------------------- | +| `TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15` | 2025-11-15 | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1ContractorsContractorUuidPaymentsRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1ContractorsContractorUuidPaymentsRequest.md new file mode 100644 index 000000000..8aa624653 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1ContractorsContractorUuidPaymentsRequest.md @@ -0,0 +1,12 @@ +# GetV1ContractorsContractorUuidPaymentsRequest + + +## Fields + +| Field | Type | Required | Description | Example | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1ContractorsContractorUuidPaymentsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | +| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | | +| `sortBy` | *Optional\* | :heavy_minus_sign: | Sort the results. Format: `field` or `field:direction` where `field` is `check_date` or `created_at` and `direction` is `asc` or `desc`. | check_date:desc | +| `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | | +| `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1ContractorsContractorUuidPaymentsResponse.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1ContractorsContractorUuidPaymentsResponse.md new file mode 100644 index 000000000..2a76072a6 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1ContractorsContractorUuidPaymentsResponse.md @@ -0,0 +1,11 @@ +# GetV1ContractorsContractorUuidPaymentsResponse + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | +| `contentType` | *String* | :heavy_check_mark: | HTTP response content type for this operation | +| `statusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation | +| `rawResponse` | [HttpResponse\](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | +| `contractorPaymentListings` | List\<[ContractorPaymentListing](../../models/components/ContractorPaymentListing.md)> | :heavy_minus_sign: | A JSON array of contractor payments | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1EmployeesEmployeeIdCustomFieldsRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1EmployeesEmployeeIdCustomFieldsRequest.md index 293792d16..f5f22f6f1 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1EmployeesEmployeeIdCustomFieldsRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1EmployeesEmployeeIdCustomFieldsRequest.md @@ -5,7 +5,7 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeIdCustomFieldsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | | `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | -| `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeIdCustomFieldsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1EmployeesEmployeeIdHomeAddressesRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1EmployeesEmployeeIdHomeAddressesRequest.md index 6aebafe06..76ab936a3 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1EmployeesEmployeeIdHomeAddressesRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1EmployeesEmployeeIdHomeAddressesRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeIdHomeAddressesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeIdHomeAddressesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1EmployeesEmployeeIdJobsRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1EmployeesEmployeeIdJobsRequest.md index cf7a66074..3fc632e29 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1EmployeesEmployeeIdJobsRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1EmployeesEmployeeIdJobsRequest.md @@ -5,8 +5,8 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeIdJobsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | | `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | | `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | -| `include` | [Optional\](../../models/operations/GetV1EmployeesEmployeeIdJobsQueryParamInclude.md) | :heavy_minus_sign: | Available options:
    - all_compensations: Include all effective dated compensations for each job instead of only the current compensation
    | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeIdJobsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `include` | [Optional\](../../models/operations/GetV1EmployeesEmployeeIdJobsQueryParamInclude.md) | :heavy_minus_sign: | Available options:
    - all_compensations: Include all effective dated compensations for each job instead of only the current compensation
    | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.md new file mode 100644 index 000000000..c7bcd75d8 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.md @@ -0,0 +1,18 @@ +# GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion + +Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion; + +GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion value = GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15; +``` + + +## Values + +| Name | Value | +| ---------------------------------------------- | ---------------------------------------------- | +| `TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15` | 2025-11-15 | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest.md new file mode 100644 index 000000000..1b278bbe8 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest.md @@ -0,0 +1,9 @@ +# GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse.md new file mode 100644 index 000000000..f3813fbd5 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse.md @@ -0,0 +1,11 @@ +# GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | +| `contentType` | *String* | :heavy_check_mark: | HTTP response content type for this operation | +| `statusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation | +| `rawResponse` | [HttpResponse\](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | +| `memberPortalInvitation` | [Optional\](../../models/components/MemberPortalInvitation.md) | :heavy_minus_sign: | Success | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1EmployeesEmployeeIdWorkAddressesRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1EmployeesEmployeeIdWorkAddressesRequest.md index d19a627b6..50040c09e 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1EmployeesEmployeeIdWorkAddressesRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1EmployeesEmployeeIdWorkAddressesRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeIdWorkAddressesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeIdWorkAddressesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.md index d65f1161d..512607983 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `employeeUuid` | *String* | :heavy_check_mark: | The UUID of the employee | -| `effectiveYear` | *long* | :heavy_check_mark: | The effective year for the Section 603 status | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `effectiveYear` | *long* | :heavy_check_mark: | The effective year for the Section 603 status | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.md index 80afc7e83..e9a06200c 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `employeeUuid` | *String* | :heavy_check_mark: | The UUID of the employee | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeUuid` | *String* | :heavy_check_mark: | The UUID of the employee | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1EmployeesQueryParamInclude.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1EmployeesQueryParamInclude.md new file mode 100644 index 000000000..6c278da24 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1EmployeesQueryParamInclude.md @@ -0,0 +1,21 @@ +# GetV1EmployeesQueryParamInclude + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1EmployeesQueryParamInclude; + +GetV1EmployeesQueryParamInclude value = GetV1EmployeesQueryParamInclude.ALL_COMPENSATIONS; +``` + + +## Values + +| Name | Value | +| ---------------------- | ---------------------- | +| `ALL_COMPENSATIONS` | all_compensations | +| `ALL_HOME_ADDRESSES` | all_home_addresses | +| `COMPANY_NAME` | company_name | +| `CURRENT_HOME_ADDRESS` | current_home_address | +| `CUSTOM_FIELDS` | custom_fields | +| `PORTAL_INVITATIONS` | portal_invitations | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1EmployeesRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1EmployeesRequest.md index 565b2b40f..047635b75 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1EmployeesRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1EmployeesRequest.md @@ -7,4 +7,4 @@ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | -| `include` | List\<[QueryParamInclude](../../models/operations/QueryParamInclude.md)> | :heavy_minus_sign: | Include the requested attribute(s) in each employee response. Multiple options are comma separated. | \ No newline at end of file +| `include` | List\<[GetV1EmployeesQueryParamInclude](../../models/operations/GetV1EmployeesQueryParamInclude.md)> | :heavy_minus_sign: | Include the requested attribute(s) in each employee response. Multiple options are comma separated. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion.md new file mode 100644 index 000000000..bbfe69baf --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion.md @@ -0,0 +1,18 @@ +# GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion + +Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion; + +GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion value = GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15; +``` + + +## Values + +| Name | Value | +| ---------------------------------------------- | ---------------------------------------------- | +| `TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15` | 2025-11-15 | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest.md index 5f54a4af0..eb0ec75b9 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `documentType` | [DocumentType](../../models/operations/DocumentType.md) | :heavy_check_mark: | The type of document being generated | -| `requestUuid` | *String* | :heavy_check_mark: | The UUID of the request to generate a document. Generate document endpoints return request_uuids to be used with the GET generated document endpoint. | -| `xGustoAPIVersion` | [Optional\](../../models/components/VersionHeader.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `requestUuid` | *String* | :heavy_check_mark: | The UUID of the request to generate a document. Generate document endpoints return request_uuids to be used with the GET generated document endpoint. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1HomeAddressesHomeAddressUuidRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1HomeAddressesHomeAddressUuidRequest.md index a64d26076..c0c0df377 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1HomeAddressesHomeAddressUuidRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1HomeAddressesHomeAddressUuidRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `homeAddressUuid` | *String* | :heavy_check_mark: | The UUID of the home address | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1HomeAddressesHomeAddressUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1HomeAddressesHomeAddressUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `homeAddressUuid` | *String* | :heavy_check_mark: | The UUID of the home address | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1JobsJobIdRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1JobsJobIdRequest.md index 87c2fabaa..586a46dd8 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1JobsJobIdRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1JobsJobIdRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1JobsJobIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `jobId` | *String* | :heavy_check_mark: | The UUID of the job | -| `include` | [Optional\](../../models/operations/GetV1JobsJobIdQueryParamInclude.md) | :heavy_minus_sign: | Available options:
    - all_compensations: Include all effective dated compensations for each job instead of only the current compensation
    | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1JobsJobIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `include` | [Optional\](../../models/operations/GetV1JobsJobIdQueryParamInclude.md) | :heavy_minus_sign: | Available options:
    - all_compensations: Include all effective dated compensations for each job instead of only the current compensation
    | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1LocationsLocationUuidMinimumWagesRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1LocationsLocationUuidMinimumWagesRequest.md index b5c4959da..395a3c379 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1LocationsLocationUuidMinimumWagesRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1LocationsLocationUuidMinimumWagesRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `locationUuid` | *String* | :heavy_check_mark: | The UUID of the location | | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1LocationsLocationUuidMinimumWagesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | +| `locationUuid` | *String* | :heavy_check_mark: | The UUID of the location | | | `effectiveDate` | *Optional\* | :heavy_minus_sign: | N/A | 2020-01-31 | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest.md index 465361c16..7745ffd4a 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidRequest.md index 6dbb99dc3..2a52e8262 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidRequest.md @@ -5,5 +5,7 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `payrollUuid` | *String* | :heavy_check_mark: | The UUID of the payroll | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | +| `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion.md new file mode 100644 index 000000000..c2ff7ac98 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion.md @@ -0,0 +1,18 @@ +# GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion + +Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion; + +GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion value = GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15; +``` + + +## Values + +| Name | Value | +| ---------------------------------------------- | ---------------------------------------------- | +| `TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15` | 2025-11-15 | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1PayrollBatchesPayrollBatchUuidRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1PayrollBatchesPayrollBatchUuidRequest.md new file mode 100644 index 000000000..9e4304a5f --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1PayrollBatchesPayrollBatchUuidRequest.md @@ -0,0 +1,9 @@ +# GetV1PayrollBatchesPayrollBatchUuidRequest + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `payrollBatchUuid` | *String* | :heavy_check_mark: | The UUID of the payroll cancellation batch returned by `POST /v1/payroll_batches`. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1PayrollBatchesPayrollBatchUuidResponse.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1PayrollBatchesPayrollBatchUuidResponse.md new file mode 100644 index 000000000..ada4d02fe --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1PayrollBatchesPayrollBatchUuidResponse.md @@ -0,0 +1,11 @@ +# GetV1PayrollBatchesPayrollBatchUuidResponse + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | +| `contentType` | *String* | :heavy_check_mark: | HTTP response content type for this operation | +| `statusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation | +| `rawResponse` | [HttpResponse\](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | +| `payrollBatchResults` | [Optional\](../../models/components/PayrollBatchResults.md) | :heavy_minus_sign: | successful | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1PayrollBatchesPayrollBatchUuidSecurity.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1PayrollBatchesPayrollBatchUuidSecurity.md new file mode 100644 index 000000000..06c6b17ca --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1PayrollBatchesPayrollBatchUuidSecurity.md @@ -0,0 +1,8 @@ +# GetV1PayrollBatchesPayrollBatchUuidSecurity + + +## Fields + +| Field | Type | Required | Description | +| ------------------ | ------------------ | ------------------ | ------------------ | +| `systemAccessAuth` | *String* | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1PayrollDigestsPayrollDigestUuidRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1PayrollDigestsPayrollDigestUuidRequest.md index 94932ddab..e1a2f32f4 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1PayrollDigestsPayrollDigestUuidRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1PayrollDigestsPayrollDigestUuidRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `payrollDigestUuid` | *String* | :heavy_check_mark: | The UUID of the payroll digest batch returned by `POST /v1/payroll_digests`. | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1PayrollDigestsPayrollDigestUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1PayrollDigestsPayrollDigestUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `payrollDigestUuid` | *String* | :heavy_check_mark: | The UUID of the payroll digest batch returned by `POST /v1/payroll_digests`. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1PeopleBatchesPeopleBatchUuidRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1PeopleBatchesPeopleBatchUuidRequest.md index 8c0c6537d..300509ccb 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1PeopleBatchesPeopleBatchUuidRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1PeopleBatchesPeopleBatchUuidRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `peopleBatchUuid` | *String* | :heavy_check_mark: | The UUID of the people batch | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1PeopleBatchesPeopleBatchUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1PeopleBatchesPeopleBatchUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `peopleBatchUuid` | *String* | :heavy_check_mark: | The UUID of the people batch | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1TokenInfoHeaderXGustoAPIVersion.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1TokenInfoHeaderXGustoAPIVersion.md new file mode 100644 index 000000000..684a82638 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1TokenInfoHeaderXGustoAPIVersion.md @@ -0,0 +1,18 @@ +# GetV1TokenInfoHeaderXGustoAPIVersion + +Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1TokenInfoHeaderXGustoAPIVersion; + +GetV1TokenInfoHeaderXGustoAPIVersion value = GetV1TokenInfoHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15; +``` + + +## Values + +| Name | Value | +| ---------------------------------------------- | ---------------------------------------------- | +| `TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15` | 2025-11-15 | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1TokenInfoRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1TokenInfoRequest.md index 6bd0fb010..718672757 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1TokenInfoRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1TokenInfoRequest.md @@ -5,4 +5,4 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/XGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1TokenInfoHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1WebhookSubscriptionUuidRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1WebhookSubscriptionUuidRequest.md index f375788c1..bb8018904 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1WebhookSubscriptionUuidRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1WebhookSubscriptionUuidRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `webhookSubscriptionUuid` | *String* | :heavy_check_mark: | The webhook subscription UUID. | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1WebhookSubscriptionUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1WebhookSubscriptionUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `webhookSubscriptionUuid` | *String* | :heavy_check_mark: | The webhook subscription UUID. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1WebhookSubscriptionVerificationTokenUuidRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1WebhookSubscriptionVerificationTokenUuidRequest.md index 8d407e95d..fd4a311e8 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1WebhookSubscriptionVerificationTokenUuidRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1WebhookSubscriptionVerificationTokenUuidRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `webhookSubscriptionUuid` | *String* | :heavy_check_mark: | The webhook subscription UUID. | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1WebhookSubscriptionVerificationTokenUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1WebhookSubscriptionVerificationTokenUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `webhookSubscriptionUuid` | *String* | :heavy_check_mark: | The webhook subscription UUID. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1WorkAddressesWorkAddressUuidRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1WorkAddressesWorkAddressUuidRequest.md index 55cbdc9b0..0be33d2ce 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1WorkAddressesWorkAddressUuidRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetV1WorkAddressesWorkAddressUuidRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `workAddressUuid` | *String* | :heavy_check_mark: | The UUID of the work address | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1WorkAddressesWorkAddressUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1WorkAddressesWorkAddressUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `workAddressUuid` | *String* | :heavy_check_mark: | The UUID of the work address | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/GetWireInRequestsWireInRequestUuidRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/GetWireInRequestsWireInRequestUuidRequest.md index 88549dd5c..7b5ec66a0 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/GetWireInRequestsWireInRequestUuidRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/GetWireInRequestsWireInRequestUuidRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `wireInRequestUuid` | *String* | :heavy_check_mark: | The UUID of the Wire In Request | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetWireInRequestsWireInRequestUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetWireInRequestsWireInRequestUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `wireInRequestUuid` | *String* | :heavy_check_mark: | The UUID of the Wire In Request | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/Include.md b/gusto_embedded_v_2025_11_15/docs/models/operations/Include.md index af1343294..a56373421 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/Include.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/Include.md @@ -1,21 +1,19 @@ # Include +Available options: +- all_benefits: If with_employee_benefits=true, include all effective dated benefits for each employee instead of only the current benefits. + ## Example Usage ```java import com.gusto.embedded_api_v_2025_11_15.models.operations.Include; -Include value = Include.ALL_COMPENSATIONS; +Include value = Include.ALL_BENEFITS; ``` ## Values -| Name | Value | -| ---------------------- | ---------------------- | -| `ALL_COMPENSATIONS` | all_compensations | -| `ALL_HOME_ADDRESSES` | all_home_addresses | -| `COMPANY_NAME` | company_name | -| `CURRENT_HOME_ADDRESS` | current_home_address | -| `CUSTOM_FIELDS` | custom_fields | -| `PORTAL_INVITATIONS` | portal_invitations | \ No newline at end of file +| Name | Value | +| -------------- | -------------- | +| `ALL_BENEFITS` | all_benefits | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/LeavingFor.md b/gusto_embedded_v_2025_11_15/docs/models/operations/LeavingFor.md index d836a6efb..b0b3e3665 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/LeavingFor.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/LeavingFor.md @@ -35,6 +35,7 @@ LeavingFor value = LeavingFor.ACCOUNTANT; | `NAMELY` | namely | | `ONPAY` | onpay | | `OTHER` | other | +| `OTHER_PEO` | other_peo | | `OYSTER` | oyster | | `PATRIOT` | patriot | | `PAYCHEX` | paychex | @@ -44,6 +45,7 @@ LeavingFor value = LeavingFor.ACCOUNTANT; | `RIPPLING` | rippling | | `SQUARE` | square | | `SUREPAYROLL` | surepayroll | +| `TOAST` | toast | | `TRINET` | trinet | | `VELOCITY_GLOBAL` | velocity_global | | `ZENEFITS` | zenefits | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/OauthAccessTokenHeaderXGustoAPIVersion.md b/gusto_embedded_v_2025_11_15/docs/models/operations/OauthAccessTokenHeaderXGustoAPIVersion.md new file mode 100644 index 000000000..730199c65 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/OauthAccessTokenHeaderXGustoAPIVersion.md @@ -0,0 +1,18 @@ +# OauthAccessTokenHeaderXGustoAPIVersion + +Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.operations.OauthAccessTokenHeaderXGustoAPIVersion; + +OauthAccessTokenHeaderXGustoAPIVersion value = OauthAccessTokenHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15; +``` + + +## Values + +| Name | Value | +| ---------------------------------------------- | ---------------------------------------------- | +| `TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15` | 2025-11-15 | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/OauthAccessTokenRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/OauthAccessTokenRequest.md index 8a4e9f658..87d3e0a18 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/OauthAccessTokenRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/OauthAccessTokenRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/HeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/OauthAccessTokenHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `requestBody` | [OauthAccessTokenRequestBody](../../models/operations/OauthAccessTokenRequestBody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.md index 76cdb0c80..2ce283bde 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.md @@ -5,7 +5,7 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | `id` | *String* | :heavy_check_mark: | The UUID of the payroll | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `requestBody` | [Optional\](../../models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBody.md) | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsPaymentMethod.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsPaymentMethod.md index d74e32a3b..ab9eb9651 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsPaymentMethod.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsPaymentMethod.md @@ -13,7 +13,9 @@ PatchV1ContractorPaymentGroupsIdPartnerDisbursementsPaymentMethod value = PatchV ## Values -| Name | Value | -| ---------------- | ---------------- | -| `DIRECT_DEPOSIT` | Direct Deposit | -| `CHECK` | Check | \ No newline at end of file +| Name | Value | +| -------------------- | -------------------- | +| `DIRECT_DEPOSIT` | Direct Deposit | +| `CHECK` | Check | +| `HISTORICAL_PAYMENT` | Historical Payment | +| `CORRECTION_PAYMENT` | Correction Payment | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.md index 46f310e3b..bb75e1de4 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `id` | *String* | :heavy_check_mark: | The UUID of the contractor payment group | | `xGustoAPIVersion` | [Optional\](../../models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `id` | *String* | :heavy_check_mark: | The UUID of the contractor payment group | | `requestBody` | [Optional\](../../models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBody.md) | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.md index f93a2192c..62aba45bc 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.md @@ -5,7 +5,7 @@ | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `employeeUuid` | *String* | :heavy_check_mark: | The UUID of the employee | | `effectiveYear` | *long* | :heavy_check_mark: | The effective year for the Section 603 status | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `employeeSection603HighEarnerStatusUpdateRequest` | [EmployeeSection603HighEarnerStatusUpdateRequest](../../models/components/EmployeeSection603HighEarnerStatusUpdateRequest.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PostDepartmentsRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PostDepartmentsRequest.md index a0ac02170..52954e667 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/PostDepartmentsRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PostDepartmentsRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/PostDepartmentsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `departmentCreateRequestBody` | [DepartmentCreateRequestBody](../../models/components/DepartmentCreateRequestBody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest.md index 4f2143bde..aa464e21f 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `partnerManagedCompanyAcceptTermsOfServiceRequest` | [PartnerManagedCompanyAcceptTermsOfServiceRequest](../../models/components/PartnerManagedCompanyAcceptTermsOfServiceRequest.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest.md index af85fbf8c..86c040233 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `partnerManagedCompanyRetrieveTermsOfServiceRequest` | [PartnerManagedCompanyRetrieveTermsOfServiceRequest](../../models/components/PartnerManagedCompanyRetrieveTermsOfServiceRequest.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1BulkReportsHeaderXGustoAPIVersion.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1BulkReportsHeaderXGustoAPIVersion.md new file mode 100644 index 000000000..968bb69a3 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1BulkReportsHeaderXGustoAPIVersion.md @@ -0,0 +1,18 @@ +# PostV1BulkReportsHeaderXGustoAPIVersion + +Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1BulkReportsHeaderXGustoAPIVersion; + +PostV1BulkReportsHeaderXGustoAPIVersion value = PostV1BulkReportsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15; +``` + + +## Values + +| Name | Value | +| ---------------------------------------------- | ---------------------------------------------- | +| `TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15` | 2025-11-15 | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1BulkReportsRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1BulkReportsRequest.md new file mode 100644 index 000000000..9e340b098 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1BulkReportsRequest.md @@ -0,0 +1,9 @@ +# PostV1BulkReportsRequest + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1BulkReportsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | +| `bulkReportBody` | [BulkReportBody](../../models/components/BulkReportBody.md) | :heavy_check_mark: | N/A | {
    "batch": [
    {
    "company_uuid": "12345678-abcd-ef12-3456-7890abcdef12",
    "report_type": "custom_report",
    "columns": [
    "employee_first_name"
    ],
    "groupings": [
    "employee"
    ],
    "file_type": "csv",
    "custom_name": "Q1 Payroll Export",
    "with_totals": false,
    "start_date": "2026-01-01",
    "end_date": "2026-03-31",
    "date_filter_type": "check_date",
    "payment_method": "check",
    "employment_type": "exempt",
    "employment_status": "active_full_time"
    },
    {
    "company_uuid": "12345678-abcd-ef12-3456-7890abcdef12",
    "report_type": "general_ledger",
    "payroll_uuid": "7b1d0df1-6403-4a06-8768-c1dd7d24d27a",
    "aggregation": "default"
    }
    ]
    } | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1BulkReportsResponse.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1BulkReportsResponse.md new file mode 100644 index 000000000..ff0e1b271 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1BulkReportsResponse.md @@ -0,0 +1,11 @@ +# PostV1BulkReportsResponse + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | +| `contentType` | *String* | :heavy_check_mark: | HTTP response content type for this operation | +| `statusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation | +| `rawResponse` | [HttpResponse\](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | +| `createBulkReport` | [Optional\](../../models/components/CreateBulkReport.md) | :heavy_minus_sign: | Created | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1BulkReportsSecurity.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1BulkReportsSecurity.md new file mode 100644 index 000000000..ae57a7bec --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1BulkReportsSecurity.md @@ -0,0 +1,8 @@ +# PostV1BulkReportsSecurity + + +## Fields + +| Field | Type | Required | Description | +| ------------------ | ------------------ | ------------------ | ------------------ | +| `systemAccessAuth` | *String* | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsContractorPayments.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsContractorPayments.md new file mode 100644 index 000000000..cd7ba289d --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsContractorPayments.md @@ -0,0 +1,13 @@ +# PostV1CompaniesCompanyIdContractorPaymentGroupsContractorPayments + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| `contractorUuid` | *Optional\* | :heavy_minus_sign: | The contractor receiving the payment | | +| `paymentMethod` | [Optional\](../../models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPaymentMethod.md) | :heavy_minus_sign: | N/A | | +| `wage` | *Optional\* | :heavy_minus_sign: | If the contractor is on a fixed wage, this is the fixed wage payment for the contractor, regardless of hours worked | 5000.0 | +| `hours` | *Optional\* | :heavy_minus_sign: | If the contractor is on an hourly wage, this is the number of hours that the contractor worked for the payment | 40.0 | +| `bonus` | *Optional\* | :heavy_minus_sign: | If the contractor is on an hourly wage, this is the bonus the contractor earned | 500.0 | +| `reimbursement` | *Optional\* | :heavy_minus_sign: | Reimbursed wages for the contractor | 20.0 | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewPaymentMethod.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPaymentMethod.md similarity index 54% rename from gusto_embedded_v_2025_11_15/docs/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewPaymentMethod.md rename to gusto_embedded_v_2025_11_15/docs/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPaymentMethod.md index 09730d8f7..4a3071f50 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewPaymentMethod.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPaymentMethod.md @@ -1,11 +1,11 @@ -# PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewPaymentMethod +# PostV1CompaniesCompanyIdContractorPaymentGroupsPaymentMethod ## Example Usage ```java -import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewPaymentMethod; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1CompaniesCompanyIdContractorPaymentGroupsPaymentMethod; -PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewPaymentMethod value = PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewPaymentMethod.DIRECT_DEPOSIT; +PostV1CompaniesCompanyIdContractorPaymentGroupsPaymentMethod value = PostV1CompaniesCompanyIdContractorPaymentGroupsPaymentMethod.DIRECT_DEPOSIT; ``` diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments.md deleted file mode 100644 index 118c70220..000000000 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments.md +++ /dev/null @@ -1,13 +0,0 @@ -# PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments - - -## Fields - -| Field | Type | Required | Description | Example | -| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `contractorUuid` | *Optional\* | :heavy_minus_sign: | The contractor receiving the payment | | -| `paymentMethod` | [Optional\](../../models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewPaymentMethod.md) | :heavy_minus_sign: | N/A | | -| `wage` | *Optional\* | :heavy_minus_sign: | If the contractor is on a fixed wage, this is the fixed wage payment for the contractor, regardless of hours worked | 5000.0 | -| `hours` | *Optional\* | :heavy_minus_sign: | If the contractor is on an hourly wage, this is the number of hours that the contractor worked for the payment | 40.0 | -| `bonus` | *Optional\* | :heavy_minus_sign: | If the contractor is on an hourly wage, this is the bonus the contractor earned | 500.0 | -| `reimbursement` | *Optional\* | :heavy_minus_sign: | Reimbursed wages for the contractor | 20.0 | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBody.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBody.md index 9188cfdae..f9e2b8f50 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBody.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBody.md @@ -3,7 +3,7 @@ ## Fields -| Field | Type | Required | Description | -| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `contractorPayments` | List\<[PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments](../../models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments.md)> | :heavy_check_mark: | N/A | -| `checkDate` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_minus_sign: | Date when payments should be processed | \ No newline at end of file +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- | ------------------------------------------------------------------------------- | +| `contractorPayments` | List\<[ContractorPayments](../../models/operations/ContractorPayments.md)> | :heavy_check_mark: | N/A | +| `checkDate` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_minus_sign: | Date when payments should be processed | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBody.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBody.md index 9fb4cffca..a14caa125 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBody.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBody.md @@ -3,9 +3,9 @@ ## Fields -| Field | Type | Required | Description | Example | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `checkDate` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_check_mark: | The payment check date | 2020-01-01 | -| `creationToken` | *String* | :heavy_check_mark: | A token used to make contractor payment group creation idempotent. The string must be unique for each group you intend to create. | 1d532d13-8f61-4a57-ad3c-b5fac1c6e05e | -| `submissionBlockers` | List\<[SubmissionBlockers](../../models/operations/SubmissionBlockers.md)> | :heavy_minus_sign: | Optional array of submission blockers with selected unblock options. Returned from the preview endpoint and can be submitted with selected_option to resolve blockers. | | -| `contractorPayments` | List\<[ContractorPayments](../../models/operations/ContractorPayments.md)> | :heavy_check_mark: | N/A | | \ No newline at end of file +| Field | Type | Required | Description | Example | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| `checkDate` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_check_mark: | The payment check date | 2020-01-01 | +| `creationToken` | *String* | :heavy_check_mark: | A token used to make contractor payment group creation idempotent. The string must be unique for each group you intend to create. | 1d532d13-8f61-4a57-ad3c-b5fac1c6e05e | +| `submissionBlockers` | List\<[SubmissionBlockers](../../models/operations/SubmissionBlockers.md)> | :heavy_minus_sign: | Optional array of submission blockers with selected unblock options. Returned from the preview endpoint and can be submitted with selected_option to resolve blockers. | | +| `contractorPayments` | List\<[PostV1CompaniesCompanyIdContractorPaymentGroupsContractorPayments](../../models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsContractorPayments.md)> | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesBatch.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesBatch.md new file mode 100644 index 000000000..715af28ad --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesBatch.md @@ -0,0 +1,15 @@ +# PostV1CompaniesCompanyIdPeopleBatchesBatch + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| `entityType` | [PostV1CompaniesCompanyIdPeopleBatchesEntityType](../../models/operations/PostV1CompaniesCompanyIdPeopleBatchesEntityType.md) | :heavy_check_mark: | The type of entity to create | employee | +| `person` | [Person](../../models/operations/Person.md) | :heavy_check_mark: | N/A | | +| `homeAddress` | [Optional\](../../models/operations/PostV1CompaniesCompanyIdPeopleBatchesHomeAddress.md) | :heavy_minus_sign: | Home address for the employee | | +| `workAddress` | [Optional\](../../models/operations/PostV1CompaniesCompanyIdPeopleBatchesWorkAddress.md) | :heavy_minus_sign: | Specify the company work location for the employee | | +| `job` | [Optional\](../../models/operations/PostV1CompaniesCompanyIdPeopleBatchesJob.md) | :heavy_minus_sign: | Job details for the employee (required if compensation is provided) | | +| `department` | [Optional\](../../models/operations/Department.md) | :heavy_minus_sign: | Department details for the employee | | +| `compensation` | [Optional\](../../models/operations/Compensation.md) | :heavy_minus_sign: | Compensation details for the employee (requires job to be provided) | | +| `bankAccounts` | List\<[BankAccounts](../../models/operations/BankAccounts.md)> | :heavy_minus_sign: | Creates employee bank account(s) and payment method(s) for direct deposit. Payments can be split across accounts by Percentage or by Amount. If splitting payments by `Percentage`, all splits must have a `split_amount` and the percentages must add up to `100`.
    If splitting payments by `Amount`, the priority is set based on the order of the bank accounts in the array and the last bank account is the remainder account (should have `split_amount` set to `null`). | | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesBatchAction.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesBatchAction.md new file mode 100644 index 000000000..45fc598c6 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesBatchAction.md @@ -0,0 +1,18 @@ +# PostV1CompaniesCompanyIdPeopleBatchesBatchAction + +The action to perform on the batch + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1CompaniesCompanyIdPeopleBatchesBatchAction; + +PostV1CompaniesCompanyIdPeopleBatchesBatchAction value = PostV1CompaniesCompanyIdPeopleBatchesBatchAction.CREATE; +``` + + +## Values + +| Name | Value | +| -------- | -------- | +| `CREATE` | create | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesEntityType.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesEntityType.md new file mode 100644 index 000000000..fca9141f6 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesEntityType.md @@ -0,0 +1,18 @@ +# PostV1CompaniesCompanyIdPeopleBatchesEntityType + +The type of entity to create + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1CompaniesCompanyIdPeopleBatchesEntityType; + +PostV1CompaniesCompanyIdPeopleBatchesEntityType value = PostV1CompaniesCompanyIdPeopleBatchesEntityType.EMPLOYEE; +``` + + +## Values + +| Name | Value | +| ---------- | ---------- | +| `EMPLOYEE` | employee | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequest.md index 8e61170ff..39900e87a 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1CompaniesCompanyIdPeopleBatchesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | `requestBody` | [PostV1CompaniesCompanyIdPeopleBatchesRequestBody](../../models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequestBody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequestBody.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequestBody.md index 08dc4bd9d..934a96713 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequestBody.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequestBody.md @@ -3,8 +3,8 @@ ## Fields -| Field | Type | Required | Description | Example | -| -------------------------------------------------------------- | -------------------------------------------------------------- | -------------------------------------------------------------- | -------------------------------------------------------------- | -------------------------------------------------------------- | -| `idempotencyKey` | *String* | :heavy_check_mark: | A unique identifier to ensure idempotency of the batch request | 550e8400-e29b-41d4-a716-446655440000 | -| `batchAction` | [BatchAction](../../models/operations/BatchAction.md) | :heavy_check_mark: | The action to perform on the batch | create | -| `batch` | List\<[Batch](../../models/operations/Batch.md)> | :heavy_check_mark: | Array of people to create | | \ No newline at end of file +| Field | Type | Required | Description | Example | +| ------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- | +| `idempotencyKey` | *String* | :heavy_check_mark: | A unique identifier to ensure idempotency of the batch request | 550e8400-e29b-41d4-a716-446655440000 | +| `batchAction` | [PostV1CompaniesCompanyIdPeopleBatchesBatchAction](../../models/operations/PostV1CompaniesCompanyIdPeopleBatchesBatchAction.md) | :heavy_check_mark: | The action to perform on the batch | create | +| `batch` | List\<[PostV1CompaniesCompanyIdPeopleBatchesBatch](../../models/operations/PostV1CompaniesCompanyIdPeopleBatchesBatch.md)> | :heavy_check_mark: | Array of people to create | | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1CompaniesCompanyUuidSignatoriesInviteRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1CompaniesCompanyUuidSignatoriesInviteRequest.md index 8790dab06..43d8574c2 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1CompaniesCompanyUuidSignatoriesInviteRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1CompaniesCompanyUuidSignatoriesInviteRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1CompaniesCompanyUuidSignatoriesInviteHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `signatoryInviteRequest` | [SignatoryInviteRequest](../../models/components/SignatoryInviteRequest.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1CompanySignatoriesRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1CompanySignatoriesRequest.md index 9a5dd743a..a06b64950 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1CompanySignatoriesRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1CompanySignatoriesRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1CompanySignatoriesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `signatoryCreateRequest` | [SignatoryCreateRequest](../../models/components/SignatoryCreateRequest.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.md new file mode 100644 index 000000000..50459362f --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.md @@ -0,0 +1,18 @@ +# PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion + +Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion; + +PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion value = PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15; +``` + + +## Values + +| Name | Value | +| ---------------------------------------------- | ---------------------------------------------- | +| `TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15` | 2025-11-15 | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsRequest.md new file mode 100644 index 000000000..966121990 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsRequest.md @@ -0,0 +1,9 @@ +# PostV1ContractorsContractorUuidMemberPortalInvitationsRequest + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsResponse.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsResponse.md new file mode 100644 index 000000000..481a117a0 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsResponse.md @@ -0,0 +1,10 @@ +# PostV1ContractorsContractorUuidMemberPortalInvitationsResponse + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | +| `contentType` | *String* | :heavy_check_mark: | HTTP response content type for this operation | +| `statusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation | +| `rawResponse` | [HttpResponse\](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1ContractorsContractorUuidRehireRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1ContractorsContractorUuidRehireRequest.md index 97ec33c6e..6598bac8c 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1ContractorsContractorUuidRehireRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1ContractorsContractorUuidRehireRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | | `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1ContractorsContractorUuidRehireHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | | `requestBody` | [Optional\](../../models/operations/PostV1ContractorsContractorUuidRehireRequestBody.md) | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1ContractorsContractorUuidTerminationRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1ContractorsContractorUuidTerminationRequest.md index 2a911bb23..deea20426 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1ContractorsContractorUuidTerminationRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1ContractorsContractorUuidTerminationRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | | `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1ContractorsContractorUuidTerminationHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | | `requestBody` | [Optional\](../../models/operations/PostV1ContractorsContractorUuidTerminationRequestBody.md) | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1EmployeesEmployeeIdHomeAddressesRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1EmployeesEmployeeIdHomeAddressesRequest.md index 8e8b60278..ea4752ef3 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1EmployeesEmployeeIdHomeAddressesRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1EmployeesEmployeeIdHomeAddressesRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | | `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1EmployeesEmployeeIdHomeAddressesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | | `requestBody` | [PostV1EmployeesEmployeeIdHomeAddressesRequestBody](../../models/operations/PostV1EmployeesEmployeeIdHomeAddressesRequestBody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1EmployeesEmployeeIdJobsRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1EmployeesEmployeeIdJobsRequest.md index c66ac8cd1..8227a3f15 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1EmployeesEmployeeIdJobsRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1EmployeesEmployeeIdJobsRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | | `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1EmployeesEmployeeIdJobsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | | `jobsCreateRequestBody` | [JobsCreateRequestBody](../../models/components/JobsCreateRequestBody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1EmployeesEmployeeIdJobsResponse.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1EmployeesEmployeeIdJobsResponse.md index 4347a1f9c..78c50467b 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1EmployeesEmployeeIdJobsResponse.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1EmployeesEmployeeIdJobsResponse.md @@ -8,4 +8,4 @@ | `contentType` | *String* | :heavy_check_mark: | HTTP response content type for this operation | | `statusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation | | `rawResponse` | [HttpResponse\](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | -| `job` | [Optional\](../../models/components/Job.md) | :heavy_minus_sign: | created | \ No newline at end of file +| `job` | [Optional\](../../models/components/Job.md) | :heavy_minus_sign: | created a primary job with a null title | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.md new file mode 100644 index 000000000..c0e20362d --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.md @@ -0,0 +1,18 @@ +# PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion + +Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion; + +PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion value = PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15; +``` + + +## Values + +| Name | Value | +| ---------------------------------------------- | ---------------------------------------------- | +| `TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15` | 2025-11-15 | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest.md new file mode 100644 index 000000000..e59810e0f --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest.md @@ -0,0 +1,9 @@ +# PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse.md new file mode 100644 index 000000000..ab7f01e37 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse.md @@ -0,0 +1,10 @@ +# PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | +| `contentType` | *String* | :heavy_check_mark: | HTTP response content type for this operation | +| `statusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation | +| `rawResponse` | [HttpResponse\](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1EmployeesEmployeeIdWorkAddressesRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1EmployeesEmployeeIdWorkAddressesRequest.md index c94f3722d..39eb4db57 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1EmployeesEmployeeIdWorkAddressesRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1EmployeesEmployeeIdWorkAddressesRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | | `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1EmployeesEmployeeIdWorkAddressesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | | `requestBody` | [PostV1EmployeesEmployeeIdWorkAddressesRequestBody](../../models/operations/PostV1EmployeesEmployeeIdWorkAddressesRequestBody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.md index b427efdbf..a39f3225d 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `employeeUuid` | *String* | :heavy_check_mark: | The UUID of the employee | | `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeUuid` | *String* | :heavy_check_mark: | The UUID of the employee | | `employeeSection603HighEarnerStatusCreateRequest` | [EmployeeSection603HighEarnerStatusCreateRequest](../../models/components/EmployeeSection603HighEarnerStatusCreateRequest.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1PayrollBatchesHeaderXGustoAPIVersion.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1PayrollBatchesHeaderXGustoAPIVersion.md new file mode 100644 index 000000000..41cd44004 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1PayrollBatchesHeaderXGustoAPIVersion.md @@ -0,0 +1,18 @@ +# PostV1PayrollBatchesHeaderXGustoAPIVersion + +Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1PayrollBatchesHeaderXGustoAPIVersion; + +PostV1PayrollBatchesHeaderXGustoAPIVersion value = PostV1PayrollBatchesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15; +``` + + +## Values + +| Name | Value | +| ---------------------------------------------- | ---------------------------------------------- | +| `TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15` | 2025-11-15 | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1PayrollBatchesRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1PayrollBatchesRequest.md new file mode 100644 index 000000000..e44ed5f4a --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1PayrollBatchesRequest.md @@ -0,0 +1,9 @@ +# PostV1PayrollBatchesRequest + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1PayrollBatchesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `requestBody` | [PostV1PayrollBatchesRequestBody](../../models/operations/PostV1PayrollBatchesRequestBody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1PayrollBatchesRequestBody.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1PayrollBatchesRequestBody.md new file mode 100644 index 000000000..14a2ebbbf --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1PayrollBatchesRequestBody.md @@ -0,0 +1,10 @@ +# PostV1PayrollBatchesRequestBody + + +## Fields + +| Field | Type | Required | Description | Example | +| ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | +| `idempotencyKey` | *String* | :heavy_check_mark: | A partner-generated unique identifier to ensure idempotency of the batch request. Scoped per partner. | 80a74f8b-2c16-45e5-9038-aa108849c6e6 | +| `batchAction` | [BatchAction](../../models/operations/BatchAction.md) | :heavy_check_mark: | The action to perform on the batch. Only `cancel` is supported. | cancel | +| `batch` | List\<[Batch](../../models/operations/Batch.md)> | :heavy_check_mark: | Array of payrolls to cancel. Maximum 100 payrolls per request. | | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1PayrollBatchesResponse.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1PayrollBatchesResponse.md new file mode 100644 index 000000000..7a82db52f --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1PayrollBatchesResponse.md @@ -0,0 +1,11 @@ +# PostV1PayrollBatchesResponse + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | +| `contentType` | *String* | :heavy_check_mark: | HTTP response content type for this operation | +| `statusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation | +| `rawResponse` | [HttpResponse\](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | +| `payrollBatch` | [Optional\](../../models/components/PayrollBatch.md) | :heavy_minus_sign: | created | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1PayrollBatchesSecurity.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1PayrollBatchesSecurity.md new file mode 100644 index 000000000..c89721adb --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PostV1PayrollBatchesSecurity.md @@ -0,0 +1,8 @@ +# PostV1PayrollBatchesSecurity + + +## Fields + +| Field | Type | Required | Description | +| ------------------ | ------------------ | ------------------ | ------------------ | +| `systemAccessAuth` | *String* | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PutAddPeopleToDepartmentRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PutAddPeopleToDepartmentRequest.md index d7876c7e2..aa61e40bb 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/PutAddPeopleToDepartmentRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PutAddPeopleToDepartmentRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `departmentUuid` | *String* | :heavy_check_mark: | The UUID of the department | | `xGustoAPIVersion` | [Optional\](../../models/operations/PutAddPeopleToDepartmentHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `departmentUuid` | *String* | :heavy_check_mark: | The UUID of the department | | `departmentPeopleRequestBody` | [DepartmentPeopleRequestBody](../../models/components/DepartmentPeopleRequestBody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PutDepartmentsRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PutDepartmentsRequest.md index 0e429b407..6a6d7b037 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/PutDepartmentsRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PutDepartmentsRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `departmentUuid` | *String* | :heavy_check_mark: | The UUID of the department | | `xGustoAPIVersion` | [Optional\](../../models/operations/PutDepartmentsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `departmentUuid` | *String* | :heavy_check_mark: | The UUID of the department | | `departmentUpdateRequestBody` | [DepartmentUpdateRequestBody](../../models/components/DepartmentUpdateRequestBody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PutRemovePeopleFromDepartmentRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PutRemovePeopleFromDepartmentRequest.md index f6db8e85c..16ea106aa 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/PutRemovePeopleFromDepartmentRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PutRemovePeopleFromDepartmentRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `departmentUuid` | *String* | :heavy_check_mark: | The UUID of the department | | `xGustoAPIVersion` | [Optional\](../../models/operations/PutRemovePeopleFromDepartmentHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `departmentUuid` | *String* | :heavy_check_mark: | The UUID of the department | | `departmentPeopleRequestBody` | [DepartmentPeopleRequestBody](../../models/components/DepartmentPeopleRequestBody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1CompaniesCompanyIdFederalTaxDetailsRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1CompaniesCompanyIdFederalTaxDetailsRequest.md index 98aef451c..621b3bb8d 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1CompaniesCompanyIdFederalTaxDetailsRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1CompaniesCompanyIdFederalTaxDetailsRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | 7b1d0df1-6403-4a06-8768-c1dd7d24d27a | | `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1CompaniesCompanyIdFederalTaxDetailsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | 7b1d0df1-6403-4a06-8768-c1dd7d24d27a | | `federalTaxDetailsUpdate` | [FederalTaxDetailsUpdate](../../models/components/FederalTaxDetailsUpdate.md) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBody.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBody.md index 1193dc0ac..5f5ba18b3 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBody.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBody.md @@ -3,6 +3,6 @@ ## Fields -| Field | Type | Required | Description | -| ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | -| `employeeUuids` | List\<*String*> | :heavy_minus_sign: | An array of employee UUIDs. If passed, only those employees payroll items will be prepared. | \ No newline at end of file +| Field | Type | Required | Description | +| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `employeeUuids` | List\<*String*> | :heavy_minus_sign: | The employees to prepare, identified by UUID. If omitted, every employee currently on the payroll is prepared.

    **Off-cycle payrolls that support multiple employees (`Bonus`, `Correction`, `Adhoc`):** passing `employee_uuids` also adds eligible employees who aren't yet on the payroll - a listed employee not on the payroll is added, while one already on it is simply prepared. A request may include up to 100 UUIDs, of which at most 25 may be employees not already on the payroll; an ineligible or unknown UUID, or more than 25 new employees, is rejected with a 422.

    **All other payrolls:** `employee_uuids` selects which of the payroll's existing employees to prepare; a UUID for an employee not on the payroll is rejected with a 422. | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1CompaniesCompanyUuidHolidayPayPolicyAddEmployees.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1CompaniesCompanyUuidHolidayPayPolicyAddEmployees.md deleted file mode 100644 index 430b8afc1..000000000 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1CompaniesCompanyUuidHolidayPayPolicyAddEmployees.md +++ /dev/null @@ -1,8 +0,0 @@ -# PutV1CompaniesCompanyUuidHolidayPayPolicyAddEmployees - - -## Fields - -| Field | Type | Required | Description | -| ------------------- | ------------------- | ------------------- | ------------------- | -| `uuid` | *Optional\* | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1CompaniesCompanyUuidHolidayPayPolicyAddRequestBody.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1CompaniesCompanyUuidHolidayPayPolicyAddRequestBody.md index 53ce7df40..f66e3700d 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1CompaniesCompanyUuidHolidayPayPolicyAddRequestBody.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1CompaniesCompanyUuidHolidayPayPolicyAddRequestBody.md @@ -6,4 +6,4 @@ | Field | Type | Required | Description | Example | | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `version` | *String* | :heavy_check_mark: | The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. | 56d00c178bc7393b2a206ed6a86afcb4 | -| `employees` | List\<[PutV1CompaniesCompanyUuidHolidayPayPolicyAddEmployees](../../models/operations/PutV1CompaniesCompanyUuidHolidayPayPolicyAddEmployees.md)> | :heavy_check_mark: | An array of employee objects, each containing an employee_uuid. | | \ No newline at end of file +| `employees` | List\<[Employees](../../models/operations/Employees.md)> | :heavy_check_mark: | An array of employee objects, each containing an employee_uuid. | | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.md index 3b1edb2ee..355dc82ed 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.md @@ -5,7 +5,7 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `signatoryUuid` | *String* | :heavy_check_mark: | The UUID of the signatory | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `signatoryUpdateRequest` | [SignatoryUpdateRequest](../../models/components/SignatoryUpdateRequest.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1CompaniesCompanyUuidTaxRequirementsStateRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1CompaniesCompanyUuidTaxRequirementsStateRequest.md index 8e8c65dd6..59917c760 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1CompaniesCompanyUuidTaxRequirementsStateRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1CompaniesCompanyUuidTaxRequirementsStateRequest.md @@ -5,7 +5,7 @@ | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1CompaniesCompanyUuidTaxRequirementsStateHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | | `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | | `state` | *String* | :heavy_check_mark: | The two-letter state abbreviation | CA | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1CompaniesCompanyUuidTaxRequirementsStateHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | | `requestBody` | [PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody](../../models/operations/PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody.md) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1CompaniesRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1CompaniesRequest.md index 92dfc34fd..159c8a953 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1CompaniesRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1CompaniesRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1CompaniesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | `requestBody` | [PutV1CompaniesRequestBody](../../models/operations/PutV1CompaniesRequestBody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1CompanyIndustryRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1CompanyIndustryRequest.md index e9f2a2053..5982a88b7 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1CompanyIndustryRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1CompanyIndustryRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1CompanyIndustryHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | `companyIndustrySelectionRequiredBody` | [CompanyIndustrySelectionRequiredBody](../../models/components/CompanyIndustrySelectionRequiredBody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest.md index 101d5cead..ff81244f2 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `contractorPaymentGroupUuid` | *String* | :heavy_check_mark: | The UUID of the contractor payment group | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorPaymentGroupUuid` | *String* | :heavy_check_mark: | The UUID of the contractor payment group | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1ContractorsContractorIdPaymentMethodRequestBody.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1ContractorsContractorIdPaymentMethodRequestBody.md index 2ec715239..ba3e7c7a4 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1ContractorsContractorIdPaymentMethodRequestBody.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1ContractorsContractorIdPaymentMethodRequestBody.md @@ -6,4 +6,4 @@ | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `version` | *String* | :heavy_check_mark: | The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. | 63859768485e218ccf8a449bb60f14ed | -| `type` | [PutV1ContractorsContractorIdPaymentMethodType](../../models/operations/PutV1ContractorsContractorIdPaymentMethodType.md) | :heavy_check_mark: | The payment method type. If type is Direct Deposit, the contractor is required to have a bank account. See [Bank account endpoint](./post-v1-contractors-contractor_uuid-bank_accounts). | | \ No newline at end of file +| `type` | [Type](../../models/operations/Type.md) | :heavy_check_mark: | The payment method type. If type is Direct Deposit, the contractor is required to have a bank account. See [Bank account endpoint](./post-v1-contractors-contractor_uuid-bank_accounts). | | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1ContractorsContractorIdPaymentMethodType.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1ContractorsContractorIdPaymentMethodType.md deleted file mode 100644 index 7f73212fd..000000000 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1ContractorsContractorIdPaymentMethodType.md +++ /dev/null @@ -1,19 +0,0 @@ -# PutV1ContractorsContractorIdPaymentMethodType - -The payment method type. If type is Direct Deposit, the contractor is required to have a bank account. See [Bank account endpoint](./post-v1-contractors-contractor_uuid-bank_accounts). - -## Example Usage - -```java -import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1ContractorsContractorIdPaymentMethodType; - -PutV1ContractorsContractorIdPaymentMethodType value = PutV1ContractorsContractorIdPaymentMethodType.DIRECT_DEPOSIT; -``` - - -## Values - -| Name | Value | -| ---------------- | ---------------- | -| `DIRECT_DEPOSIT` | Direct Deposit | -| `CHECK` | Check | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1EmployeesEmployeeIdPaymentMethodRequestBody.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1EmployeesEmployeeIdPaymentMethodRequestBody.md index 8bf62c46f..6a195feca 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1EmployeesEmployeeIdPaymentMethodRequestBody.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1EmployeesEmployeeIdPaymentMethodRequestBody.md @@ -6,6 +6,6 @@ | Field | Type | Required | Description | Example | | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `version` | *String* | :heavy_check_mark: | The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/versioning#object-layer) for information on how to use this field. | 63859768485e218ccf8a449bb60f14ed | -| `type` | [Type](../../models/operations/Type.md) | :heavy_check_mark: | The payment method type. If type is Check, split_by and splits do not need to be populated. If type is Direct Deposit, split_by and splits are required. | | +| `type` | [PutV1EmployeesEmployeeIdPaymentMethodType](../../models/operations/PutV1EmployeesEmployeeIdPaymentMethodType.md) | :heavy_check_mark: | The payment method type. If type is Check, split_by and splits do not need to be populated. If type is Direct Deposit, split_by and splits are required. | | | `splitBy` | [JsonNullable\](../../models/operations/SplitBy.md) | :heavy_minus_sign: | How the payment will be split. If Percentage, split amounts must add up to exactly 100. If Amount, values are in cents and the last split amount must be null to capture the remainder. | | | `splits` | List\<[Splits](../../models/operations/Splits.md)> | :heavy_minus_sign: | Array of payment splits. Required when type is Direct Deposit. | | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1EmployeesEmployeeIdPaymentMethodType.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1EmployeesEmployeeIdPaymentMethodType.md new file mode 100644 index 000000000..ea2bb01c1 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1EmployeesEmployeeIdPaymentMethodType.md @@ -0,0 +1,19 @@ +# PutV1EmployeesEmployeeIdPaymentMethodType + +The payment method type. If type is Check, split_by and splits do not need to be populated. If type is Direct Deposit, split_by and splits are required. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1EmployeesEmployeeIdPaymentMethodType; + +PutV1EmployeesEmployeeIdPaymentMethodType value = PutV1EmployeesEmployeeIdPaymentMethodType.CHECK; +``` + + +## Values + +| Name | Value | +| ---------------- | ---------------- | +| `CHECK` | Check | +| `DIRECT_DEPOSIT` | Direct Deposit | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1JobsJobIdRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1JobsJobIdRequest.md index 5693ace76..e592dadba 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1JobsJobIdRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1JobsJobIdRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `jobId` | *String* | :heavy_check_mark: | The UUID of the job | | `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1JobsJobIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `jobId` | *String* | :heavy_check_mark: | The UUID of the job | | `jobsUpdateRequestBody` | [JobsUpdateRequestBody](../../models/components/JobsUpdateRequestBody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1JobsJobIdResponse.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1JobsJobIdResponse.md index 382e72363..bb4b0f4e4 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1JobsJobIdResponse.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1JobsJobIdResponse.md @@ -8,4 +8,4 @@ | `contentType` | *String* | :heavy_check_mark: | HTTP response content type for this operation | | `statusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation | | `rawResponse` | [HttpResponse\](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | -| `job` | [Optional\](../../models/components/Job.md) | :heavy_minus_sign: | successful | \ No newline at end of file +| `job` | [Optional\](../../models/components/Job.md) | :heavy_minus_sign: | successful blank title on a non-primary active job | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion.md new file mode 100644 index 000000000..ba8a05656 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion.md @@ -0,0 +1,18 @@ +# PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion + +Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion; + +PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion value = PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15; +``` + + +## Values + +| Name | Value | +| ---------------------------------------------- | ---------------------------------------------- | +| `TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15` | 2025-11-15 | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest.md new file mode 100644 index 000000000..45b4b9023 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest.md @@ -0,0 +1,9 @@ +# PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse.md new file mode 100644 index 000000000..1c7129d6e --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse.md @@ -0,0 +1,11 @@ +# PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- | +| `contentType` | *String* | :heavy_check_mark: | HTTP response content type for this operation | +| `statusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation | +| `rawResponse` | [HttpResponse\](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | +| `partnerManagedCompanyDisassociateResponse` | [Optional\](../../models/components/PartnerManagedCompanyDisassociateResponse.md) | :heavy_minus_sign: | OK | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity.md new file mode 100644 index 000000000..d4704fc62 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity.md @@ -0,0 +1,8 @@ +# PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity + + +## Fields + +| Field | Type | Required | Description | +| ------------------ | ------------------ | ------------------ | ------------------ | +| `systemAccessAuth` | *String* | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest.md index 7a3caec0d..b5bf48b8d 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1PartnerManagedCompaniesCompanyUuidMigrateHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `partnerManagedCompanyMigrateRequest` | [PartnerManagedCompanyMigrateRequest](../../models/components/PartnerManagedCompanyMigrateRequest.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesEmployees.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesEmployees.md new file mode 100644 index 000000000..8a23a01fe --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesEmployees.md @@ -0,0 +1,9 @@ +# PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesEmployees + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------- | ------------------------------------- | ------------------------------------- | ------------------------------------- | +| `uuid` | *String* | :heavy_check_mark: | The UUID of the employee | +| `balance` | *JsonNullable\* | :heavy_minus_sign: | The starting balance for the employee | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesRequestBody.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesRequestBody.md index 18e2c7ae0..e0c34a4ea 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesRequestBody.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesRequestBody.md @@ -3,6 +3,6 @@ ## Fields -| Field | Type | Required | Description | -| -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -------------------------------------------------------- | -| `employees` | List\<[Employees](../../models/operations/Employees.md)> | :heavy_check_mark: | N/A | \ No newline at end of file +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `employees` | List\<[PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesEmployees](../../models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesEmployees.md)> | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1VerifyWebhookSubscriptionUuidRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1VerifyWebhookSubscriptionUuidRequest.md index 6e933d7e9..4c3b9b24b 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1VerifyWebhookSubscriptionUuidRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1VerifyWebhookSubscriptionUuidRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `webhookSubscriptionUuid` | *String* | :heavy_check_mark: | The webhook subscription UUID. | | `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1VerifyWebhookSubscriptionUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `webhookSubscriptionUuid` | *String* | :heavy_check_mark: | The webhook subscription UUID. | | `requestBody` | [PutV1VerifyWebhookSubscriptionUuidRequestBody](../../models/operations/PutV1VerifyWebhookSubscriptionUuidRequestBody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1WebhookSubscriptionUuidRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1WebhookSubscriptionUuidRequest.md index b9f66c8ca..7ce624932 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1WebhookSubscriptionUuidRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1WebhookSubscriptionUuidRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `webhookSubscriptionUuid` | *String* | :heavy_check_mark: | The webhook subscription UUID. | | `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1WebhookSubscriptionUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `webhookSubscriptionUuid` | *String* | :heavy_check_mark: | The webhook subscription UUID. | | `requestBody` | [PutV1WebhookSubscriptionUuidRequestBody](../../models/operations/PutV1WebhookSubscriptionUuidRequestBody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1WebhookSubscriptionUuidSubscriptionTypes.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1WebhookSubscriptionUuidSubscriptionTypes.md index 7c7232cc6..48681a28f 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1WebhookSubscriptionUuidSubscriptionTypes.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1WebhookSubscriptionUuidSubscriptionTypes.md @@ -29,4 +29,5 @@ PutV1WebhookSubscriptionUuidSubscriptionTypes value = PutV1WebhookSubscriptionUu | `PAYROLL_SYNC` | PayrollSync | | `PAY_SCHEDULE` | PaySchedule | | `PEOPLE_BATCH` | PeopleBatch | -| `SIGNATORY` | Signatory | \ No newline at end of file +| `SIGNATORY` | Signatory | +| `TIME_OFF_REQUEST` | TimeOffRequest | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1WorkAddressesWorkAddressUuidRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1WorkAddressesWorkAddressUuidRequest.md index 7a7d25b31..9a0ff4331 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1WorkAddressesWorkAddressUuidRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PutV1WorkAddressesWorkAddressUuidRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `workAddressUuid` | *String* | :heavy_check_mark: | The UUID of the work address | | `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1WorkAddressesWorkAddressUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `workAddressUuid` | *String* | :heavy_check_mark: | The UUID of the work address | | `requestBody` | [PutV1WorkAddressesWorkAddressUuidRequestBody](../../models/operations/PutV1WorkAddressesWorkAddressUuidRequestBody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/PutWireInRequestsWireInRequestUuidRequest.md b/gusto_embedded_v_2025_11_15/docs/models/operations/PutWireInRequestsWireInRequestUuidRequest.md index 35548bea3..13faf2ee8 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/PutWireInRequestsWireInRequestUuidRequest.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/PutWireInRequestsWireInRequestUuidRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `wireInRequestUuid` | *String* | :heavy_check_mark: | The UUID of the Wire In Request | | `xGustoAPIVersion` | [Optional\](../../models/operations/PutWireInRequestsWireInRequestUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `wireInRequestUuid` | *String* | :heavy_check_mark: | The UUID of the Wire In Request | | `wireInRequestUpdateRequestBody` | [WireInRequestUpdateRequestBody](../../models/components/WireInRequestUpdateRequestBody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/QueryParamInclude.md b/gusto_embedded_v_2025_11_15/docs/models/operations/QueryParamInclude.md index 009ac9ce3..478f52f8f 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/QueryParamInclude.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/QueryParamInclude.md @@ -1,21 +1,19 @@ # QueryParamInclude +Available options: +- all_benefits: Include all effective dated benefits for each employee instead of only the current benefits. + ## Example Usage ```java import com.gusto.embedded_api_v_2025_11_15.models.operations.QueryParamInclude; -QueryParamInclude value = QueryParamInclude.ALL_COMPENSATIONS; +QueryParamInclude value = QueryParamInclude.ALL_BENEFITS; ``` ## Values -| Name | Value | -| ---------------------- | ---------------------- | -| `ALL_COMPENSATIONS` | all_compensations | -| `ALL_HOME_ADDRESSES` | all_home_addresses | -| `COMPANY_NAME` | company_name | -| `CURRENT_HOME_ADDRESS` | current_home_address | -| `CUSTOM_FIELDS` | custom_fields | -| `PORTAL_INVITATIONS` | portal_invitations | \ No newline at end of file +| Name | Value | +| -------------- | -------------- | +| `ALL_BENEFITS` | all_benefits | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/SubscriptionTypes.md b/gusto_embedded_v_2025_11_15/docs/models/operations/SubscriptionTypes.md index 92f4b1658..1865fa2d0 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/SubscriptionTypes.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/SubscriptionTypes.md @@ -29,4 +29,5 @@ SubscriptionTypes value = SubscriptionTypes.BANK_ACCOUNT; | `PAYROLL_SYNC` | PayrollSync | | `PAY_SCHEDULE` | PaySchedule | | `PEOPLE_BATCH` | PeopleBatch | -| `SIGNATORY` | Signatory | \ No newline at end of file +| `SIGNATORY` | Signatory | +| `TIME_OFF_REQUEST` | TimeOffRequest | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/models/operations/Type.md b/gusto_embedded_v_2025_11_15/docs/models/operations/Type.md index 2f387c494..d1376a778 100644 --- a/gusto_embedded_v_2025_11_15/docs/models/operations/Type.md +++ b/gusto_embedded_v_2025_11_15/docs/models/operations/Type.md @@ -1,13 +1,13 @@ # Type -The payment method type. If type is Check, split_by and splits do not need to be populated. If type is Direct Deposit, split_by and splits are required. +The payment method type. If type is Direct Deposit, the contractor is required to have a bank account. See [Bank account endpoint](./post-v1-contractors-contractor_uuid-bank_accounts). ## Example Usage ```java import com.gusto.embedded_api_v_2025_11_15.models.operations.Type; -Type value = Type.CHECK; +Type value = Type.DIRECT_DEPOSIT; ``` @@ -15,5 +15,5 @@ Type value = Type.CHECK; | Name | Value | | ---------------- | ---------------- | -| `CHECK` | Check | -| `DIRECT_DEPOSIT` | Direct Deposit | \ No newline at end of file +| `DIRECT_DEPOSIT` | Direct Deposit | +| `CHECK` | Check | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/sdks/companies/README.md b/gusto_embedded_v_2025_11_15/docs/sdks/companies/README.md index bfd59511e..20f5fa404 100644 --- a/gusto_embedded_v_2025_11_15/docs/sdks/companies/README.md +++ b/gusto_embedded_v_2025_11_15/docs/sdks/companies/README.md @@ -4,74 +4,119 @@ ### Available Operations -* [createPartnerManaged](#createpartnermanaged) - Create a partner managed company +* [listAdmins](#listadmins) - Get all the admins at a company +* [createAdmin](#createadmin) - Create an admin for the company * [get](#get) - Get a company * [update](#update) - Update a company +* [getCustomFields](#getcustomfields) - Get the custom fields of a company +* [getOnboardingStatus](#getonboardingstatus) - Get company onboarding status +* [finishOnboarding](#finishonboarding) - Finish company onboarding +* [putV1PartnerManagedCompaniesCompanyUuidDisassociate](#putv1partnermanagedcompaniescompanyuuiddisassociate) - Disassociate a partner managed company * [migrate](#migrate) - Migrate company to embedded payroll +* [createPartnerManaged](#createpartnermanaged) - Create a partner managed company * [getV1PartnerManagedCompaniesCompanyUuidMigrationReadiness](#getv1partnermanagedcompaniescompanyuuidmigrationreadiness) - Check company migration readiness * [acceptTermsOfService](#accepttermsofservice) - Accept terms of service for a company user * [retrieveTermsOfService](#retrievetermsofservice) - Retrieve terms of service status for a company user -* [listAdmins](#listadmins) - Get all the admins at a company -* [createAdmin](#createadmin) - Create an admin for the company -* [getOnboardingStatus](#getonboardingstatus) - Get company onboarding status -* [finishOnboarding](#finishonboarding) - Finish company onboarding -* [getCustomFields](#getcustomfields) - Get the custom fields of a company -## createPartnerManaged +## listAdmins -Create a partner managed company. When you successfully call the API, it does the following: -* Creates a new company in Gusto -* Creates a new user using the provided email if the user does not already exist. -* Makes the user the primary payroll administrator of the new company. +Returns a list of all the admins at a company -In response, you will receive oauth access tokens for the created company. +scope: `company_admin:read` -IMPORTANT: the returned access and refresh tokens are reserved for this company only. They cannot be used to access other companies AND previously granted tokens cannot be used to access this company. +### Example Usage -📘 System Access Authentication + +```java +package hello.world; -This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) +import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; +import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdAdminsResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.HeaderXGustoAPIVersion; +import java.lang.Exception; -scope: `partner_managed_companies:manage` +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + GetV1CompaniesCompanyIdAdminsResponse res = sdk.companies().listAdmins() + .xGustoAPIVersion(HeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .companyId("") + .call(); + + if (res.admins().isPresent()) { + System.out.println(res.admins().get()); + } + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/HeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | +| `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | +| `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | + +### Response + +**[GetV1CompaniesCompanyIdAdminsResponse](../../models/operations/GetV1CompaniesCompanyIdAdminsResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | + +## createAdmin + +Creates a new admin for a company. +If the email matches an existing user, this will create an admin account for the current user. Otherwise, this will create a new user. + +scope: `company_admin:write` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; -import com.gusto.embedded_api_v_2025_11_15.models.components.*; +import com.gusto.embedded_api_v_2025_11_15.models.components.AdminCreateRequest; +import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api_v_2025_11_15.models.operations.*; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1CompaniesCompanyIdAdminsResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws UnprocessableEntityError, Exception { + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostV1PartnerManagedCompaniesResponse res = sdk.companies().createPartnerManaged() - .security(PostV1PartnerManagedCompaniesSecurity.builder() - .systemAccessAuth(System.getenv().getOrDefault("SYSTEM_ACCESS_AUTH", "")) - .build()) - .xGustoAPIVersion(PostV1PartnerManagedCompaniesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) - .partnerManagedCompanyCreateRequest(PartnerManagedCompanyCreateRequest.builder() - .user(User.builder() - .firstName("Marco") - .lastName("Trantow") - .email("Jewell_Greenholt72@hotmail.com") - .build()) - .company(PartnerManagedCompanyCreateRequestCompany.builder() - .name("") - .build()) + PostV1CompaniesCompanyIdAdminsResponse res = sdk.companies().createAdmin() + .xGustoAPIVersion(PostV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .companyId("") + .adminCreateRequest(AdminCreateRequest.builder() + .firstName("John") + .lastName("Smith") + .email("jsmith99@gmail.com") .build()) .call(); - if (res.partnerManagedCompany().isPresent()) { - System.out.println(res.partnerManagedCompany().get()); + if (res.admin().isPresent()) { + System.out.println(res.admin().get()); } } } @@ -81,18 +126,19 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `security` | [com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1PartnerManagedCompaniesSecurity](../../models/operations/PostV1PartnerManagedCompaniesSecurity.md) | :heavy_check_mark: | The security requirements to use for the request. | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1PartnerManagedCompaniesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `partnerManagedCompanyCreateRequest` | [PartnerManagedCompanyCreateRequest](../../models/components/PartnerManagedCompanyCreateRequest.md) | :heavy_check_mark: | N/A | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | +| `adminCreateRequest` | [AdminCreateRequest](../../models/components/AdminCreateRequest.md) | :heavy_check_mark: | N/A | ### Response -**[PostV1PartnerManagedCompaniesResponse](../../models/operations/PostV1PartnerManagedCompaniesResponse.md)** +**[PostV1CompaniesCompanyIdAdminsResponse](../../models/operations/PostV1CompaniesCompanyIdAdminsResponse.md)** ### Errors | Error Type | Status Code | Content Type | | -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | @@ -127,8 +173,8 @@ public class Application { .build(); GetV1CompaniesResponse res = sdk.companies().get() - .companyId("") .xGustoAPIVersion(GetV1CompaniesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .companyId("") .call(); if (res.company().isPresent()) { @@ -142,8 +188,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | ### Response @@ -183,8 +229,8 @@ public class Application { .build(); PutV1CompaniesResponse res = sdk.companies().update() - .companyId("") .xGustoAPIVersion(PutV1CompaniesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .companyId("") .requestBody(PutV1CompaniesRequestBody.builder() .contractorOnly(true) .build()) @@ -201,8 +247,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1CompaniesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | `requestBody` | [PutV1CompaniesRequestBody](../../models/operations/PutV1CompaniesRequestBody.md) | :heavy_check_mark: | N/A | ### Response @@ -217,52 +263,39 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## migrate - -Migrate an existing Gusto customer to your embedded payroll product. - -### Prerequisites -Before calling this endpoint: -1. The customer must connect their Gusto account to your application using [OAuth2](doc:oauth2) -2. The customer must view and [accept the Embedded Payroll Terms of Service](ref:post-partner-managed-companies-company_uuid-accept_terms_of_service) +## getCustomFields -### Related guides -- [Migrate an existing company](doc:migrate-existing-company) +Returns a list of the custom fields of the company. Useful when you need to know the schema of custom fields for an entire company. -scope: `partner_managed_companies:write` +scope: `companies:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; -import com.gusto.embedded_api_v_2025_11_15.models.components.PartnerManagedCompanyMigrateRequest; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1PartnerManagedCompaniesCompanyUuidMigrateHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1PartnerManagedCompaniesCompanyUuidMigrateResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdCustomFieldsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdCustomFieldsResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + public static void main(String[] args) throws NotFoundErrorObject, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1PartnerManagedCompaniesCompanyUuidMigrateResponse res = sdk.companies().migrate() - .companyUuid("") - .xGustoAPIVersion(PutV1PartnerManagedCompaniesCompanyUuidMigrateHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) - .partnerManagedCompanyMigrateRequest(PartnerManagedCompanyMigrateRequest.builder() - .email("Janice18@gmail.com") - .build()) + GetV1CompaniesCompanyIdCustomFieldsResponse res = sdk.companies().getCustomFields() + .xGustoAPIVersion(GetV1CompaniesCompanyIdCustomFieldsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .companyId("") .call(); - if (res.partnerManagedCompanyMigrateResponse().isPresent()) { - System.out.println(res.partnerManagedCompanyMigrateResponse().get()); + if (res.companyCustomFieldList().isPresent()) { + System.out.println(res.companyCustomFieldList().get()); } } } @@ -272,38 +305,39 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1PartnerManagedCompaniesCompanyUuidMigrateHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `partnerManagedCompanyMigrateRequest` | [PartnerManagedCompanyMigrateRequest](../../models/components/PartnerManagedCompanyMigrateRequest.md) | :heavy_check_mark: | N/A | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdCustomFieldsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | +| `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | +| `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | ### Response -**[PutV1PartnerManagedCompaniesCompanyUuidMigrateResponse](../../models/operations/PutV1PartnerManagedCompaniesCompanyUuidMigrateResponse.md)** +**[GetV1CompaniesCompanyIdCustomFieldsResponse](../../models/operations/GetV1CompaniesCompanyIdCustomFieldsResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| -------------------------------------- | -------------------------------------- | -------------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/UnprocessableEntityError | 422 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | -## getV1PartnerManagedCompaniesCompanyUuidMigrationReadiness +## getOnboardingStatus -Check if an existing Gusto customer is ready to be migrated to embedded payroll. This endpoint returns blockers and warnings associated with migrating the company and is recommended to be called before attempting to migrate a company. +Retrieves a company's onboarding status, including whether onboarding is complete and the list of +required onboarding steps with their respective completion state. -scope: `partner_managed_companies:read` +scope: `company_onboarding_status:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompanyOnboardingStatusHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompanyOnboardingStatusResponse; import java.lang.Exception; public class Application { @@ -314,13 +348,14 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessResponse res = sdk.companies().getV1PartnerManagedCompaniesCompanyUuidMigrationReadiness() - .companyUuid("") - .xGustoAPIVersion(GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + GetV1CompanyOnboardingStatusResponse res = sdk.companies().getOnboardingStatus() + .xGustoAPIVersion(GetV1CompanyOnboardingStatusHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .companyUuid("7b1d0df1-6403-4a06-8768-c1dd7d24d27a") + .additionalSteps("external_payroll") .call(); - if (res.partnerManagedCompanyMigrationReadinessResponse().isPresent()) { - System.out.println(res.partnerManagedCompanyMigrationReadinessResponse().get()); + if (res.companyOnboardingStatus().isPresent()) { + System.out.println(res.companyOnboardingStatus().get()); } } } @@ -328,14 +363,15 @@ public class Application { ### Parameters -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| Parameter | Type | Required | Description | Example | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompanyOnboardingStatusHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | 7b1d0df1-6403-4a06-8768-c1dd7d24d27a | +| `additionalSteps` | *Optional\* | :heavy_minus_sign: | Comma-delimited string of additional onboarding steps to include. Currently only supports the value "external_payroll". | external_payroll | ### Response -**[GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessResponse](../../models/operations/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessResponse.md)** +**[GetV1CompanyOnboardingStatusResponse](../../models/operations/GetV1CompanyOnboardingStatusResponse.md)** ### Errors @@ -344,25 +380,37 @@ public class Application { | models/errors/NotFoundErrorObject | 404 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## acceptTermsOfService +## finishOnboarding -Accept the Gusto Embedded Payroll's [Terms of Service](https://flows.gusto.com/terms). -The user must have a role in the company in order to accept the Terms of Service. +Finalize a company's onboarding process. -scope: `terms_of_services:write` +### Approve a company in demo + +After a company is finished onboarding, Gusto requires an additional step to review and approve that company. +The company onboarding status is "onboarding_completed": false, until the API call is made to finish company +onboarding. In production environments, this step is required for risk-analysis purposes. + +We provide the endpoint `PUT '/v1/companies/{company_uuid}/approve'` to facilitate company approvals in the demo environment. + +```shell +PUT '/v1/companies/89771af8-b964-472e-8064-554dfbcb56d9/approve' + +# Response: Company object, with company_status: 'Approved' +``` + +scope: `companies:write` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; -import com.gusto.embedded_api_v_2025_11_15.models.components.PartnerManagedCompanyAcceptTermsOfServiceRequest; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompanyFinishOnboardingHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompanyFinishOnboardingResponse; import java.lang.Exception; public class Application { @@ -373,18 +421,13 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceResponse res = sdk.companies().acceptTermsOfService() - .companyUuid("") - .xGustoAPIVersion(PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) - .partnerManagedCompanyAcceptTermsOfServiceRequest(PartnerManagedCompanyAcceptTermsOfServiceRequest.builder() - .email("Tabitha59@hotmail.com") - .ipAddress("dad9:5ede:cdbf:8dae:abe7:3cac:a2bf:2c26") - .externalUserId("") - .build()) + GetV1CompanyFinishOnboardingResponse res = sdk.companies().finishOnboarding() + .xGustoAPIVersion(GetV1CompanyFinishOnboardingHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .companyUuid("7b1d0df1-6403-4a06-8768-c1dd7d24d27a") .call(); - if (res.partnerManagedCompanyTermsOfServiceResponse().isPresent()) { - System.out.println(res.partnerManagedCompanyTermsOfServiceResponse().get()); + if (res.companyOnboardingStatus().isPresent()) { + System.out.println(res.companyOnboardingStatus().get()); } } } @@ -392,15 +435,14 @@ public class Application { ### Parameters -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `partnerManagedCompanyAcceptTermsOfServiceRequest` | [PartnerManagedCompanyAcceptTermsOfServiceRequest](../../models/components/PartnerManagedCompanyAcceptTermsOfServiceRequest.md) | :heavy_check_mark: | N/A | +| Parameter | Type | Required | Description | Example | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompanyFinishOnboardingHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | 7b1d0df1-6403-4a06-8768-c1dd7d24d27a | ### Response -**[PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceResponse](../../models/operations/PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceResponse.md)** +**[GetV1CompanyFinishOnboardingResponse](../../models/operations/GetV1CompanyFinishOnboardingResponse.md)** ### Errors @@ -410,24 +452,26 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## retrieveTermsOfService +## putV1PartnerManagedCompaniesCompanyUuidDisassociate -Retrieve the user acceptance status of the Gusto Embedded Payroll's [Terms of Service](https://flows.gusto.com/terms). +Disassociate a company from your embedded payroll product, reversing an earlier association or migration. You can only disassociate a company that is currently associated with your application. -scope: `terms_of_services:read` +📘 System Access Authentication + +This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + +scope: `partner_managed_companies:disassociate` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; -import com.gusto.embedded_api_v_2025_11_15.models.components.PartnerManagedCompanyRetrieveTermsOfServiceRequest; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.*; import java.lang.Exception; public class Application { @@ -435,19 +479,18 @@ public class Application { public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() - .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceResponse res = sdk.companies().retrieveTermsOfService() - .companyUuid("") - .xGustoAPIVersion(PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) - .partnerManagedCompanyRetrieveTermsOfServiceRequest(PartnerManagedCompanyRetrieveTermsOfServiceRequest.builder() - .email("Laverne_Raynor-Ziemann@yahoo.com") + PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse res = sdk.companies().putV1PartnerManagedCompaniesCompanyUuidDisassociate() + .security(PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity.builder() + .systemAccessAuth(System.getenv().getOrDefault("SYSTEM_ACCESS_AUTH", "")) .build()) + .xGustoAPIVersion(PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .companyUuid("") .call(); - if (res.partnerManagedCompanyTermsOfServiceResponse().isPresent()) { - System.out.println(res.partnerManagedCompanyTermsOfServiceResponse().get()); + if (res.partnerManagedCompanyDisassociateResponse().isPresent()) { + System.out.println(res.partnerManagedCompanyDisassociateResponse().get()); } } } @@ -457,13 +500,13 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `security` | [com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity](../../models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity.md) | :heavy_check_mark: | The security requirements to use for the request. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `partnerManagedCompanyRetrieveTermsOfServiceRequest` | [PartnerManagedCompanyRetrieveTermsOfServiceRequest](../../models/components/PartnerManagedCompanyRetrieveTermsOfServiceRequest.md) | :heavy_check_mark: | N/A | ### Response -**[PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceResponse](../../models/operations/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceResponse.md)** +**[PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse](../../models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse.md)** ### Errors @@ -473,39 +516,52 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## listAdmins +## migrate -Returns a list of all the admins at a company +Migrate an existing Gusto customer to your embedded payroll product. -scope: `company_admin:read` +### Prerequisites +Before calling this endpoint: +1. The customer must connect their Gusto account to your application using [OAuth2](doc:oauth2) +2. The customer must view and [accept the Embedded Payroll Terms of Service](ref:post-partner-managed-companies-company_uuid-accept_terms_of_service) + +### Related guides +- [Migrate an existing company](doc:migrate-existing-company) + +scope: `partner_managed_companies:write` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; +import com.gusto.embedded_api_v_2025_11_15.models.components.PartnerManagedCompanyMigrateRequest; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdAdminsResponse; +import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1PartnerManagedCompaniesCompanyUuidMigrateHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1PartnerManagedCompaniesCompanyUuidMigrateResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, Exception { + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1CompaniesCompanyIdAdminsResponse res = sdk.companies().listAdmins() - .xGustoAPIVersion(GetV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) - .companyId("") + PutV1PartnerManagedCompaniesCompanyUuidMigrateResponse res = sdk.companies().migrate() + .xGustoAPIVersion(PutV1PartnerManagedCompaniesCompanyUuidMigrateHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .companyUuid("") + .partnerManagedCompanyMigrateRequest(PartnerManagedCompanyMigrateRequest.builder() + .email("Janice18@gmail.com") + .build()) .call(); - if (res.admins().isPresent()) { - System.out.println(res.admins().get()); + if (res.partnerManagedCompanyMigrateResponse().isPresent()) { + System.out.println(res.partnerManagedCompanyMigrateResponse().get()); } } } @@ -515,63 +571,77 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | -| `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | -| `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1PartnerManagedCompaniesCompanyUuidMigrateHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | +| `partnerManagedCompanyMigrateRequest` | [PartnerManagedCompanyMigrateRequest](../../models/components/PartnerManagedCompanyMigrateRequest.md) | :heavy_check_mark: | N/A | ### Response -**[GetV1CompaniesCompanyIdAdminsResponse](../../models/operations/GetV1CompaniesCompanyIdAdminsResponse.md)** +**[PutV1PartnerManagedCompaniesCompanyUuidMigrateResponse](../../models/operations/PutV1PartnerManagedCompaniesCompanyUuidMigrateResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| --------------------------------- | --------------------------------- | --------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | -## createAdmin +## createPartnerManaged -Creates a new admin for a company. -If the email matches an existing user, this will create an admin account for the current user. Otherwise, this will create a new user. +Create a partner managed company. When you successfully call the API, it does the following: +* Creates a new company in Gusto +* Creates a new user using the provided email if the user does not already exist. +* Makes the user the primary payroll administrator of the new company. -scope: `company_admin:write` +In response, you will receive oauth access tokens for the created company. + +IMPORTANT: the returned access and refresh tokens are reserved for this company only. They cannot be used to access other companies AND previously granted tokens cannot be used to access this company. + +📘 System Access Authentication + +This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + +scope: `partner_managed_companies:manage` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; -import com.gusto.embedded_api_v_2025_11_15.models.components.AdminCreateRequest; -import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2025_11_15.models.components.*; import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1CompaniesCompanyIdAdminsResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.*; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + public static void main(String[] args) throws UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() - .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostV1CompaniesCompanyIdAdminsResponse res = sdk.companies().createAdmin() - .xGustoAPIVersion(PostV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) - .companyId("") - .adminCreateRequest(AdminCreateRequest.builder() - .firstName("John") - .lastName("Smith") - .email("jsmith99@gmail.com") + PostV1PartnerManagedCompaniesResponse res = sdk.companies().createPartnerManaged() + .security(PostV1PartnerManagedCompaniesSecurity.builder() + .systemAccessAuth(System.getenv().getOrDefault("SYSTEM_ACCESS_AUTH", "")) + .build()) + .xGustoAPIVersion(PostV1PartnerManagedCompaniesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .partnerManagedCompanyCreateRequest(PartnerManagedCompanyCreateRequest.builder() + .user(User.builder() + .firstName("Marco") + .lastName("Trantow") + .email("Jewell_Greenholt72@hotmail.com") + .build()) + .company(PartnerManagedCompanyCreateRequestCompany.builder() + .name("") + .build()) .build()) .call(); - if (res.admin().isPresent()) { - System.out.println(res.admin().get()); + if (res.partnerManagedCompany().isPresent()) { + System.out.println(res.partnerManagedCompany().get()); } } } @@ -581,39 +651,37 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | -| `adminCreateRequest` | [AdminCreateRequest](../../models/components/AdminCreateRequest.md) | :heavy_check_mark: | N/A | +| `security` | [com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1PartnerManagedCompaniesSecurity](../../models/operations/PostV1PartnerManagedCompaniesSecurity.md) | :heavy_check_mark: | The security requirements to use for the request. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1PartnerManagedCompaniesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `partnerManagedCompanyCreateRequest` | [PartnerManagedCompanyCreateRequest](../../models/components/PartnerManagedCompanyCreateRequest.md) | :heavy_check_mark: | N/A | ### Response -**[PostV1CompaniesCompanyIdAdminsResponse](../../models/operations/PostV1CompaniesCompanyIdAdminsResponse.md)** +**[PostV1PartnerManagedCompaniesResponse](../../models/operations/PostV1PartnerManagedCompaniesResponse.md)** ### Errors | Error Type | Status Code | Content Type | | -------------------------------------- | -------------------------------------- | -------------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## getOnboardingStatus +## getV1PartnerManagedCompaniesCompanyUuidMigrationReadiness -Retrieves a company's onboarding status, including whether onboarding is complete and the list of -required onboarding steps with their respective completion state. +Check if an existing Gusto customer is ready to be migrated to embedded payroll. This endpoint returns blockers and warnings associated with migrating the company and is recommended to be called before attempting to migrate a company. -scope: `company_onboarding_status:read` +scope: `partner_managed_companies:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompanyOnboardingStatusHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompanyOnboardingStatusResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessResponse; import java.lang.Exception; public class Application { @@ -624,14 +692,13 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1CompanyOnboardingStatusResponse res = sdk.companies().getOnboardingStatus() - .companyUuid("7b1d0df1-6403-4a06-8768-c1dd7d24d27a") - .additionalSteps("external_payroll") - .xGustoAPIVersion(GetV1CompanyOnboardingStatusHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessResponse res = sdk.companies().getV1PartnerManagedCompaniesCompanyUuidMigrationReadiness() + .xGustoAPIVersion(GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .companyUuid("") .call(); - if (res.companyOnboardingStatus().isPresent()) { - System.out.println(res.companyOnboardingStatus().get()); + if (res.partnerManagedCompanyMigrationReadinessResponse().isPresent()) { + System.out.println(res.partnerManagedCompanyMigrationReadinessResponse().get()); } } } @@ -639,15 +706,14 @@ public class Application { ### Parameters -| Parameter | Type | Required | Description | Example | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | 7b1d0df1-6403-4a06-8768-c1dd7d24d27a | -| `additionalSteps` | *Optional\* | :heavy_minus_sign: | Comma-delimited string of additional onboarding steps to include. Currently only supports the value "external_payroll". | external_payroll | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompanyOnboardingStatusHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | ### Response -**[GetV1CompanyOnboardingStatusResponse](../../models/operations/GetV1CompanyOnboardingStatusResponse.md)** +**[GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessResponse](../../models/operations/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessResponse.md)** ### Errors @@ -656,37 +722,25 @@ public class Application { | models/errors/NotFoundErrorObject | 404 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## finishOnboarding - -Finalize a company's onboarding process. - -### Approve a company in demo - -After a company is finished onboarding, Gusto requires an additional step to review and approve that company. -The company onboarding status is "onboarding_completed": false, until the API call is made to finish company -onboarding. In production environments, this step is required for risk-analysis purposes. - -We provide the endpoint `PUT '/v1/companies/{company_uuid}/approve'` to facilitate company approvals in the demo environment. - -```shell -PUT '/v1/companies/89771af8-b964-472e-8064-554dfbcb56d9/approve' +## acceptTermsOfService -# Response: Company object, with company_status: 'Approved' -``` +Accept the Gusto Embedded Payroll's [Terms of Service](https://flows.gusto.com/terms). +The user must have a role in the company in order to accept the Terms of Service. -scope: `companies:write` +scope: `terms_of_services:write` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; +import com.gusto.embedded_api_v_2025_11_15.models.components.PartnerManagedCompanyAcceptTermsOfServiceRequest; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompanyFinishOnboardingHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompanyFinishOnboardingResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceResponse; import java.lang.Exception; public class Application { @@ -697,13 +751,18 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1CompanyFinishOnboardingResponse res = sdk.companies().finishOnboarding() - .companyUuid("7b1d0df1-6403-4a06-8768-c1dd7d24d27a") - .xGustoAPIVersion(GetV1CompanyFinishOnboardingHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceResponse res = sdk.companies().acceptTermsOfService() + .xGustoAPIVersion(PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .companyUuid("") + .partnerManagedCompanyAcceptTermsOfServiceRequest(PartnerManagedCompanyAcceptTermsOfServiceRequest.builder() + .email("Tabitha59@hotmail.com") + .ipAddress("dad9:5ede:cdbf:8dae:abe7:3cac:a2bf:2c26") + .externalUserId("") + .build()) .call(); - if (res.companyOnboardingStatus().isPresent()) { - System.out.println(res.companyOnboardingStatus().get()); + if (res.partnerManagedCompanyTermsOfServiceResponse().isPresent()) { + System.out.println(res.partnerManagedCompanyTermsOfServiceResponse().get()); } } } @@ -711,14 +770,15 @@ public class Application { ### Parameters -| Parameter | Type | Required | Description | Example | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | 7b1d0df1-6403-4a06-8768-c1dd7d24d27a | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompanyFinishOnboardingHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | +| `partnerManagedCompanyAcceptTermsOfServiceRequest` | [PartnerManagedCompanyAcceptTermsOfServiceRequest](../../models/components/PartnerManagedCompanyAcceptTermsOfServiceRequest.md) | :heavy_check_mark: | N/A | ### Response -**[GetV1CompanyFinishOnboardingResponse](../../models/operations/GetV1CompanyFinishOnboardingResponse.md)** +**[PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceResponse](../../models/operations/PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceResponse.md)** ### Errors @@ -728,39 +788,44 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## getCustomFields +## retrieveTermsOfService -Returns a list of the custom fields of the company. Useful when you need to know the schema of custom fields for an entire company. +Retrieve the user acceptance status of the Gusto Embedded Payroll's [Terms of Service](https://flows.gusto.com/terms). -scope: `companies:read` +scope: `terms_of_services:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; +import com.gusto.embedded_api_v_2025_11_15.models.components.PartnerManagedCompanyRetrieveTermsOfServiceRequest; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdCustomFieldsHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdCustomFieldsResponse; +import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, Exception { + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1CompaniesCompanyIdCustomFieldsResponse res = sdk.companies().getCustomFields() - .xGustoAPIVersion(GetV1CompaniesCompanyIdCustomFieldsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) - .companyId("") + PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceResponse res = sdk.companies().retrieveTermsOfService() + .xGustoAPIVersion(PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .companyUuid("") + .partnerManagedCompanyRetrieveTermsOfServiceRequest(PartnerManagedCompanyRetrieveTermsOfServiceRequest.builder() + .email("Laverne_Raynor-Ziemann@yahoo.com") + .build()) .call(); - if (res.companyCustomFieldList().isPresent()) { - System.out.println(res.companyCustomFieldList().get()); + if (res.partnerManagedCompanyTermsOfServiceResponse().isPresent()) { + System.out.println(res.partnerManagedCompanyTermsOfServiceResponse().get()); } } } @@ -770,18 +835,18 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdCustomFieldsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | -| `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | -| `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | +| `partnerManagedCompanyRetrieveTermsOfServiceRequest` | [PartnerManagedCompanyRetrieveTermsOfServiceRequest](../../models/components/PartnerManagedCompanyRetrieveTermsOfServiceRequest.md) | :heavy_check_mark: | N/A | ### Response -**[GetV1CompaniesCompanyIdCustomFieldsResponse](../../models/operations/GetV1CompaniesCompanyIdCustomFieldsResponse.md)** +**[PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceResponse](../../models/operations/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| --------------------------------- | --------------------------------- | --------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | \ No newline at end of file +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/sdks/companyattachments/README.md b/gusto_embedded_v_2025_11_15/docs/sdks/companyattachments/README.md index 6595d9f94..0e4c262e0 100644 --- a/gusto_embedded_v_2025_11_15/docs/sdks/companyattachments/README.md +++ b/gusto_embedded_v_2025_11_15/docs/sdks/companyattachments/README.md @@ -4,13 +4,13 @@ ### Available Operations -* [getDetails](#getdetails) - Get Company Attachment Details * [getList](#getlist) - Get List of Company Attachments * [create](#create) - Create Company Attachment and Upload File +* [getDetails](#getdetails) - Get Company Attachment Details -## getDetails +## getList -Retrieve the detail of an attachment uploaded by the company. +Retrieve a list of all the attachments uploaded by the company. ### Related guides - [Manage company attachments](doc:manage-company-attachments) @@ -19,14 +19,14 @@ scope: `company_attachments:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesAttachmentHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesAttachmentResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesAttachmentsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesAttachmentsResponse; import java.lang.Exception; public class Application { @@ -37,14 +37,13 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1CompaniesAttachmentResponse res = sdk.companyAttachments().getDetails() - .xGustoAPIVersion(GetV1CompaniesAttachmentHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + GetV1CompaniesAttachmentsResponse res = sdk.companyAttachments().getList() + .xGustoAPIVersion(GetV1CompaniesAttachmentsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .companyId("") - .companyAttachmentUuid("") .call(); - if (res.companyAttachment().isPresent()) { - System.out.println(res.companyAttachment().get()); + if (res.companyAttachments().isPresent()) { + System.out.println(res.companyAttachments().get()); } } } @@ -54,13 +53,12 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesAttachmentHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesAttachmentsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyId` | *String* | :heavy_check_mark: | The UUID of the company | -| `companyAttachmentUuid` | *String* | :heavy_check_mark: | The UUID of the company attachment | ### Response -**[GetV1CompaniesAttachmentResponse](../../models/operations/GetV1CompaniesAttachmentResponse.md)** +**[GetV1CompaniesAttachmentsResponse](../../models/operations/GetV1CompaniesAttachmentsResponse.md)** ### Errors @@ -69,43 +67,51 @@ public class Application { | models/errors/NotFoundErrorObject | 404 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## getList +## create -Retrieve a list of all the attachments uploaded by the company. +Upload a file and create a company attachment. We recommend uploading PDF files for optimal compatibility. However, the following file types are allowed: .qbb, .qbm, .gif, .jpg, .png, .pdf, .xls, .xlsx, .doc and .docx. ### Related guides - [Manage company attachments](doc:manage-company-attachments) -scope: `company_attachments:read` +scope: `company_attachments:write` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; +import com.gusto.embedded_api_v_2025_11_15.models.components.*; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesAttachmentsHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesAttachmentsResponse; +import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1CompaniesAttachmentHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1CompaniesAttachmentResponse; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.io.FileInputStream; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, Exception { + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1CompaniesAttachmentsResponse res = sdk.companyAttachments().getList() - .xGustoAPIVersion(GetV1CompaniesAttachmentsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + PostV1CompaniesAttachmentResponse res = sdk.companyAttachments().create() + .xGustoAPIVersion(PostV1CompaniesAttachmentHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .companyId("") + .companyAttachmentCreateRequestBody(CompanyAttachmentCreateRequestBody.builder() + .document(CompanyAttachmentCreateRequestBodyDocument.builder() + .fileName("example.file") + .content(Utils.readBytesAndClose(new FileInputStream("example.file"))) + .build()) + .category(CompanyAttachmentCreateRequestBodyCategory.GEP_NOTICE) + .build()) .call(); - if (res.companyAttachments().isPresent()) { - System.out.println(res.companyAttachments().get()); - } } } ``` @@ -114,65 +120,60 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesAttachmentsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1CompaniesAttachmentHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyId` | *String* | :heavy_check_mark: | The UUID of the company | +| `companyAttachmentCreateRequestBody` | [CompanyAttachmentCreateRequestBody](../../models/components/CompanyAttachmentCreateRequestBody.md) | :heavy_check_mark: | N/A | ### Response -**[GetV1CompaniesAttachmentsResponse](../../models/operations/GetV1CompaniesAttachmentsResponse.md)** +**[PostV1CompaniesAttachmentResponse](../../models/operations/PostV1CompaniesAttachmentResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| --------------------------------- | --------------------------------- | --------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | -## create +## getDetails -Upload a file and create a company attachment. We recommend uploading PDF files for optimal compatibility. However, the following file types are allowed: .qbb, .qbm, .gif, .jpg, .png, .pdf, .xls, .xlsx, .doc and .docx. +Retrieve the detail of an attachment uploaded by the company. ### Related guides - [Manage company attachments](doc:manage-company-attachments) -scope: `company_attachments:write` +scope: `company_attachments:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; -import com.gusto.embedded_api_v_2025_11_15.models.components.*; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1CompaniesAttachmentHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1CompaniesAttachmentResponse; -import com.gusto.embedded_api_v_2025_11_15.utils.Utils; -import java.io.FileInputStream; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesAttachmentHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesAttachmentResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + public static void main(String[] args) throws NotFoundErrorObject, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostV1CompaniesAttachmentResponse res = sdk.companyAttachments().create() - .xGustoAPIVersion(PostV1CompaniesAttachmentHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + GetV1CompaniesAttachmentResponse res = sdk.companyAttachments().getDetails() + .xGustoAPIVersion(GetV1CompaniesAttachmentHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .companyId("") - .companyAttachmentCreateRequestBody(CompanyAttachmentCreateRequestBody.builder() - .document(CompanyAttachmentCreateRequestBodyDocument.builder() - .fileName("example.file") - .content(Utils.readBytesAndClose(new FileInputStream("example.file"))) - .build()) - .category(CompanyAttachmentCreateRequestBodyCategory.GEP_NOTICE) - .build()) + .companyAttachmentUuid("") .call(); + if (res.companyAttachment().isPresent()) { + System.out.println(res.companyAttachment().get()); + } } } ``` @@ -181,18 +182,17 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1CompaniesAttachmentHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesAttachmentHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyId` | *String* | :heavy_check_mark: | The UUID of the company | -| `companyAttachmentCreateRequestBody` | [CompanyAttachmentCreateRequestBody](../../models/components/CompanyAttachmentCreateRequestBody.md) | :heavy_check_mark: | N/A | +| `companyAttachmentUuid` | *String* | :heavy_check_mark: | The UUID of the company attachment | ### Response -**[PostV1CompaniesAttachmentResponse](../../models/operations/PostV1CompaniesAttachmentResponse.md)** +**[GetV1CompaniesAttachmentResponse](../../models/operations/GetV1CompaniesAttachmentResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| -------------------------------------- | -------------------------------------- | -------------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/UnprocessableEntityError | 422 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | \ No newline at end of file +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/sdks/companybenefits/README.md b/gusto_embedded_v_2025_11_15/docs/sdks/companybenefits/README.md index 8e3fd4a73..1cb9a82d7 100644 --- a/gusto_embedded_v_2025_11_15/docs/sdks/companybenefits/README.md +++ b/gusto_embedded_v_2025_11_15/docs/sdks/companybenefits/README.md @@ -4,20 +4,182 @@ ### Available Operations +* [getAll](#getall) - Get all supported benefits +* [getSupported](#getsupported) - Get a supported benefit +* [getRequirements](#getrequirements) - Get benefit fields requirements by benefit type * [list](#list) - Get benefits for a company * [create](#create) - Create a company benefit * [get](#get) - Get a company benefit * [update](#update) - Update a company benefit * [delete](#delete) - Delete a company benefit -* [getAll](#getall) - Get all supported benefits -* [getSupported](#getsupported) - Get a supported benefit -* [getSummary](#getsummary) - Get company benefit summary by company benefit id. * [getEmployeeBenefits](#getemployeebenefits) - Get all employee benefits for a company benefit * [updateEmployeeBenefits](#updateemployeebenefits) - Bulk update employee benefits for a company benefit -* [getRequirements](#getrequirements) - Get benefit fields requirements by benefit type +* [getSummary](#getsummary) - Get company benefit summary by company benefit id. * [getV1CompanyBenefitsCompanyBenefitIdContributionExclusions](#getv1companybenefitscompanybenefitidcontributionexclusions) - Get contribution exclusions for a company benefit * [putV1CompanyBenefitsCompanyBenefitIdContributionExclusions](#putv1companybenefitscompanybenefitidcontributionexclusions) - Update contribution exclusions for a company benefit +## getAll + +Returns all benefits supported by Gusto. The benefit object in Gusto contains high level information about a particular benefit type and its tax considerations. When companies choose to offer a benefit, they are creating a Company Benefit object associated with a particular benefit. + +scope: `benefits:read` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1BenefitsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1BenefitsResponse; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + GetV1BenefitsResponse res = sdk.companyBenefits().getAll() + .xGustoAPIVersion(GetV1BenefitsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .call(); + + if (res.supportedBenefitList().isPresent()) { + System.out.println(res.supportedBenefitList().get()); + } + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1BenefitsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | + +### Response + +**[GetV1BenefitsResponse](../../models/operations/GetV1BenefitsResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| -------------------------- | -------------------------- | -------------------------- | +| models/errors/APIException | 4XX, 5XX | \*/\* | + +## getSupported + +Returns a benefit supported by Gusto. The benefit object in Gusto contains high level information about a particular benefit type and its tax considerations. When companies choose to offer a benefit, they are creating a Company Benefit object associated with a particular benefit. + +scope: `benefits:read` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1BenefitsBenefitIdHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1BenefitsBenefitIdResponse; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + GetV1BenefitsBenefitIdResponse res = sdk.companyBenefits().getSupported() + .xGustoAPIVersion(GetV1BenefitsBenefitIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .benefitId("") + .call(); + + if (res.supportedBenefit().isPresent()) { + System.out.println(res.supportedBenefit().get()); + } + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1BenefitsBenefitIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `benefitId` | *String* | :heavy_check_mark: | The benefit type in Gusto. | + +### Response + +**[GetV1BenefitsBenefitIdResponse](../../models/operations/GetV1BenefitsBenefitIdResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| -------------------------- | -------------------------- | -------------------------- | +| models/errors/APIException | 4XX, 5XX | \*/\* | + +## getRequirements + +Returns the field requirements for a given benefit type. + +scope: `benefits:read` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; +import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1BenefitsBenefitsIdRequirementsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1BenefitsBenefitsIdRequirementsResponse; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + GetV1BenefitsBenefitsIdRequirementsResponse res = sdk.companyBenefits().getRequirements() + .xGustoAPIVersion(GetV1BenefitsBenefitsIdRequirementsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .benefitId("") + .call(); + + if (res.benefitTypeRequirements().isPresent()) { + System.out.println(res.benefitTypeRequirements().get()); + } + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1BenefitsBenefitsIdRequirementsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `benefitId` | *String* | :heavy_check_mark: | The benefit type in Gusto. | + +### Response + +**[GetV1BenefitsBenefitsIdRequirementsResponse](../../models/operations/GetV1BenefitsBenefitsIdRequirementsResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | + ## list Company benefits represent the benefits that a company is offering to employees. This ties together a particular supported benefit with the company-specific information for the offering of that benefit. @@ -196,7 +358,7 @@ public class Application { | `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompanyBenefitsCompanyBenefitIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyBenefitId` | *String* | :heavy_check_mark: | The UUID of the company benefit | | `withEmployeeBenefits` | *Optional\* | :heavy_minus_sign: | Whether to return employee benefits associated with the benefit | -| `include` | [Optional\](../../models/operations/GetV1CompanyBenefitsCompanyBenefitIdQueryParamInclude.md) | :heavy_minus_sign: | Available options:
    - all_benefits: If with_employee_benefits=true, include all effective dated benefits for each employee instead of only the current benefits. | +| `include` | [Optional\](../../models/operations/Include.md) | :heavy_minus_sign: | Available options:
    - all_benefits: If with_employee_benefits=true, include all effective dated benefits for each employee instead of only the current benefits. | ### Response @@ -338,174 +500,6 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## getAll - -Returns all benefits supported by Gusto. The benefit object in Gusto contains high level information about a particular benefit type and its tax considerations. When companies choose to offer a benefit, they are creating a Company Benefit object associated with a particular benefit. - -scope: `benefits:read` - -### Example Usage - - -```java -package hello.world; - -import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1BenefitsHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1BenefitsResponse; -import java.lang.Exception; - -public class Application { - - public static void main(String[] args) throws Exception { - - GustoEmbedded sdk = GustoEmbedded.builder() - .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) - .build(); - - GetV1BenefitsResponse res = sdk.companyBenefits().getAll() - .xGustoAPIVersion(GetV1BenefitsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) - .call(); - - if (res.supportedBenefits().isPresent()) { - System.out.println(res.supportedBenefits().get()); - } - } -} -``` - -### Parameters - -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1BenefitsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | - -### Response - -**[GetV1BenefitsResponse](../../models/operations/GetV1BenefitsResponse.md)** - -### Errors - -| Error Type | Status Code | Content Type | -| -------------------------- | -------------------------- | -------------------------- | -| models/errors/APIException | 4XX, 5XX | \*/\* | - -## getSupported - -Returns a benefit supported by Gusto. The benefit object in Gusto contains high level information about a particular benefit type and its tax considerations. When companies choose to offer a benefit, they are creating a Company Benefit object associated with a particular benefit. - -scope: `benefits:read` - -### Example Usage - - -```java -package hello.world; - -import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1BenefitsBenefitIdHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1BenefitsBenefitIdResponse; -import java.lang.Exception; - -public class Application { - - public static void main(String[] args) throws Exception { - - GustoEmbedded sdk = GustoEmbedded.builder() - .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) - .build(); - - GetV1BenefitsBenefitIdResponse res = sdk.companyBenefits().getSupported() - .xGustoAPIVersion(GetV1BenefitsBenefitIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) - .benefitId("") - .call(); - - if (res.supportedBenefit().isPresent()) { - System.out.println(res.supportedBenefit().get()); - } - } -} -``` - -### Parameters - -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1BenefitsBenefitIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `benefitId` | *String* | :heavy_check_mark: | The benefit type in Gusto. | - -### Response - -**[GetV1BenefitsBenefitIdResponse](../../models/operations/GetV1BenefitsBenefitIdResponse.md)** - -### Errors - -| Error Type | Status Code | Content Type | -| -------------------------- | -------------------------- | -------------------------- | -| models/errors/APIException | 4XX, 5XX | \*/\* | - -## getSummary - -Returns summary benefit data for the requested company benefit id. - -Benefits containing PHI are only visible to applications with the `company_benefits:read:phi` scope. - -scope: `company_benefits:read` - -### Example Usage - - -```java -package hello.world; - -import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; -import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1BenefitsCompanyBenefitIdSummaryRequest; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1BenefitsCompanyBenefitIdSummaryResponse; -import java.lang.Exception; - -public class Application { - - public static void main(String[] args) throws NotFoundErrorObject, Exception { - - GustoEmbedded sdk = GustoEmbedded.builder() - .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) - .build(); - - GetV1BenefitsCompanyBenefitIdSummaryRequest req = GetV1BenefitsCompanyBenefitIdSummaryRequest.builder() - .companyBenefitId("") - .startDate("2022-01-01") - .endDate("2022-12-31") - .build(); - - GetV1BenefitsCompanyBenefitIdSummaryResponse res = sdk.companyBenefits().getSummary() - .request(req) - .call(); - - if (res.benefitSummary().isPresent()) { - System.out.println(res.benefitSummary().get()); - } - } -} -``` - -### Parameters - -| Parameter | Type | Required | Description | -| --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | -| `request` | [GetV1BenefitsCompanyBenefitIdSummaryRequest](../../models/operations/GetV1BenefitsCompanyBenefitIdSummaryRequest.md) | :heavy_check_mark: | The request object to use for the request. | - -### Response - -**[GetV1BenefitsCompanyBenefitIdSummaryResponse](../../models/operations/GetV1BenefitsCompanyBenefitIdSummaryResponse.md)** - -### Errors - -| Error Type | Status Code | Content Type | -| --------------------------------- | --------------------------------- | --------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | - ## getEmployeeBenefits Employee benefits represent an employee enrolled in a particular company benefit. It includes information specific to that employee's enrollment. @@ -642,22 +636,24 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## getRequirements +## getSummary -Returns the field requirements for a given benefit type. +Returns summary benefit data for the requested company benefit id. -scope: `benefits:read` +Benefits containing PHI are only visible to applications with the `company_benefits:read:phi` scope. + +scope: `company_benefits:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1BenefitsBenefitsIdRequirementsHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1BenefitsBenefitsIdRequirementsResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1BenefitsCompanyBenefitIdSummaryRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1BenefitsCompanyBenefitIdSummaryResponse; import java.lang.Exception; public class Application { @@ -668,13 +664,18 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1BenefitsBenefitsIdRequirementsResponse res = sdk.companyBenefits().getRequirements() - .xGustoAPIVersion(GetV1BenefitsBenefitsIdRequirementsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) - .benefitId("") + GetV1BenefitsCompanyBenefitIdSummaryRequest req = GetV1BenefitsCompanyBenefitIdSummaryRequest.builder() + .companyBenefitId("") + .startDate("2022-01-01") + .endDate("2022-12-31") + .build(); + + GetV1BenefitsCompanyBenefitIdSummaryResponse res = sdk.companyBenefits().getSummary() + .request(req) .call(); - if (res.benefitTypeRequirements().isPresent()) { - System.out.println(res.benefitTypeRequirements().get()); + if (res.benefitSummary().isPresent()) { + System.out.println(res.benefitSummary().get()); } } } @@ -682,14 +683,13 @@ public class Application { ### Parameters -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1BenefitsBenefitsIdRequirementsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `benefitId` | *String* | :heavy_check_mark: | The benefit type in Gusto. | +| Parameter | Type | Required | Description | +| --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | +| `request` | [GetV1BenefitsCompanyBenefitIdSummaryRequest](../../models/operations/GetV1BenefitsCompanyBenefitIdSummaryRequest.md) | :heavy_check_mark: | The request object to use for the request. | ### Response -**[GetV1BenefitsBenefitsIdRequirementsResponse](../../models/operations/GetV1BenefitsBenefitsIdRequirementsResponse.md)** +**[GetV1BenefitsCompanyBenefitIdSummaryResponse](../../models/operations/GetV1BenefitsCompanyBenefitIdSummaryResponse.md)** ### Errors diff --git a/gusto_embedded_v_2025_11_15/docs/sdks/contractorpaymentgroups/README.md b/gusto_embedded_v_2025_11_15/docs/sdks/contractorpaymentgroups/README.md index acddedc5a..df11c4133 100644 --- a/gusto_embedded_v_2025_11_15/docs/sdks/contractorpaymentgroups/README.md +++ b/gusto_embedded_v_2025_11_15/docs/sdks/contractorpaymentgroups/README.md @@ -4,53 +4,54 @@ ### Available Operations +* [preview](#preview) - Preview a contractor payment group +* [fund](#fund) - Fund a contractor payment group [DEMO] * [getList](#getlist) - Get contractor payment groups for a company * [create](#create) - Create a contractor payment group -* [preview](#preview) - Preview a contractor payment group * [get](#get) - Get a contractor payment group * [delete](#delete) - Cancel a contractor payment group -* [fund](#fund) - Fund a contractor payment group [DEMO] * [getV1ContractorPaymentGroupsIdPartnerDisbursements](#getv1contractorpaymentgroupsidpartnerdisbursements) - Get partner disbursements for a contractor payment group * [patchV1ContractorPaymentGroupsIdPartnerDisbursements](#patchv1contractorpaymentgroupsidpartnerdisbursements) - Update partner disbursements for a contractor payment group -## getList +## preview -Returns a list of minimal contractor payment groups within a given time period, including totals but not associated contractor payments. +Preview a group of contractor payments. Request will validate inputs and return preview of the contractor payment group including the expected `debit_date`. The `uuid` field will be null in the response. + +The returned `creation_token` is a required parameter in order to create the contractor payment group. scope: `payrolls:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdContractorPaymentGroupsRequest; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdContractorPaymentGroupsResponse; +import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api_v_2025_11_15.models.operations.*; import java.lang.Exception; +import java.util.List; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, Exception { + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1CompaniesCompanyIdContractorPaymentGroupsRequest req = GetV1CompaniesCompanyIdContractorPaymentGroupsRequest.builder() + PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewResponse res = sdk.contractorPaymentGroups().preview() + .xGustoAPIVersion(PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .companyId("") - .startDate("2020-01-01") - .endDate("2020-12-31") - .build(); - - GetV1CompaniesCompanyIdContractorPaymentGroupsResponse res = sdk.contractorPaymentGroups().getList() - .request(req) + .requestBody(PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBody.builder() + .contractorPayments(List.of()) + .build()) .call(); - if (res.contractorPaymentGroupWithBlockers().isPresent()) { - System.out.println(res.contractorPaymentGroupWithBlockers().get()); + if (res.contractorPaymentGroupPreview().isPresent()) { + System.out.println(res.contractorPaymentGroupPreview().get()); } } } @@ -58,40 +59,45 @@ public class Application { ### Parameters -| Parameter | Type | Required | Description | -| ----------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | -| `request` | [GetV1CompaniesCompanyIdContractorPaymentGroupsRequest](../../models/operations/GetV1CompaniesCompanyIdContractorPaymentGroupsRequest.md) | :heavy_check_mark: | The request object to use for the request. | +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | +| `requestBody` | [PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBody](../../models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBody.md) | :heavy_check_mark: | N/A | ### Response -**[GetV1CompaniesCompanyIdContractorPaymentGroupsResponse](../../models/operations/GetV1CompaniesCompanyIdContractorPaymentGroupsResponse.md)** +**[PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewResponse](../../models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| --------------------------------- | --------------------------------- | --------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | -## create +## fund -Pay a group of contractors. Information needed depends on the contractor's wage type (hourly vs fixed) +> 🚧 Demo action +> This action is only available in the Demo environment + +Simulate funding a contractor payment group. Funding only occurs automatically in the production environment when bank transactions are generated. Use this action in the demo environment to transition a contractor payment group's `status` from `Unfunded` to `Funded`. A `Funded` status is required for generating a contractor payment receipt. scope: `payrolls:run` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api_v_2025_11_15.models.operations.*; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundResponse; import java.lang.Exception; -import java.time.LocalDate; -import java.util.List; public class Application { @@ -101,14 +107,9 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostV1CompaniesCompanyIdContractorPaymentGroupsResponse res = sdk.contractorPaymentGroups().create() - .xGustoAPIVersion(PostV1CompaniesCompanyIdContractorPaymentGroupsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) - .companyId("") - .requestBody(PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBody.builder() - .checkDate(LocalDate.parse("2020-01-01")) - .creationToken("1d532d13-8f61-4a57-ad3c-b5fac1c6e05e") - .contractorPayments(List.of()) - .build()) + PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundResponse res = sdk.contractorPaymentGroups().fund() + .xGustoAPIVersion(PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .contractorPaymentGroupUuid("") .call(); if (res.contractorPaymentGroup().isPresent()) { @@ -122,13 +123,12 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | -| `requestBody` | [PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBody](../../models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBody.md) | :heavy_check_mark: | N/A | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorPaymentGroupUuid` | *String* | :heavy_check_mark: | The UUID of the contractor payment group | ### Response -**[PostV1CompaniesCompanyIdContractorPaymentGroupsResponse](../../models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsResponse.md)** +**[PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundResponse](../../models/operations/PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundResponse.md)** ### Errors @@ -138,45 +138,44 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## preview - -Preview a group of contractor payments. Request will validate inputs and return preview of the contractor payment group including the expected `debit_date`. The `uuid` field will be null in the response. +## getList -The returned `creation_token` is a required parameter in order to create the contractor payment group. +Returns a list of minimal contractor payment groups within a given time period, including totals but not associated contractor payments. scope: `payrolls:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api_v_2025_11_15.models.operations.*; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdContractorPaymentGroupsRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdContractorPaymentGroupsResponse; import java.lang.Exception; -import java.util.List; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + public static void main(String[] args) throws NotFoundErrorObject, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewResponse res = sdk.contractorPaymentGroups().preview() - .xGustoAPIVersion(PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + GetV1CompaniesCompanyIdContractorPaymentGroupsRequest req = GetV1CompaniesCompanyIdContractorPaymentGroupsRequest.builder() .companyId("") - .requestBody(PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBody.builder() - .contractorPayments(List.of()) - .build()) + .startDate("2020-01-01") + .endDate("2020-12-31") + .build(); + + GetV1CompaniesCompanyIdContractorPaymentGroupsResponse res = sdk.contractorPaymentGroups().getList() + .request(req) .call(); - if (res.contractorPaymentGroupPreview().isPresent()) { - System.out.println(res.contractorPaymentGroupPreview().get()); + if (res.contractorPaymentGroupWithBlockers().isPresent()) { + System.out.println(res.contractorPaymentGroupWithBlockers().get()); } } } @@ -184,53 +183,57 @@ public class Application { ### Parameters -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | -| `requestBody` | [PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBody](../../models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBody.md) | :heavy_check_mark: | N/A | +| Parameter | Type | Required | Description | +| ----------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------- | +| `request` | [GetV1CompaniesCompanyIdContractorPaymentGroupsRequest](../../models/operations/GetV1CompaniesCompanyIdContractorPaymentGroupsRequest.md) | :heavy_check_mark: | The request object to use for the request. | ### Response -**[PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewResponse](../../models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewResponse.md)** +**[GetV1CompaniesCompanyIdContractorPaymentGroupsResponse](../../models/operations/GetV1CompaniesCompanyIdContractorPaymentGroupsResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| -------------------------------------- | -------------------------------------- | -------------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/UnprocessableEntityError | 422 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | -## get +## create -Returns a contractor payment group with all associated contractor payments. +Pay a group of contractors. Information needed depends on the contractor's wage type (hourly vs fixed) -scope: `payrolls:read` +scope: `payrolls:run` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ContractorPaymentGroupsContractorPaymentGroupIdHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ContractorPaymentGroupsContractorPaymentGroupIdResponse; +import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api_v_2025_11_15.models.operations.*; import java.lang.Exception; +import java.time.LocalDate; +import java.util.List; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, Exception { + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1ContractorPaymentGroupsContractorPaymentGroupIdResponse res = sdk.contractorPaymentGroups().get() - .contractorPaymentGroupUuid("") - .xGustoAPIVersion(GetV1ContractorPaymentGroupsContractorPaymentGroupIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + PostV1CompaniesCompanyIdContractorPaymentGroupsResponse res = sdk.contractorPaymentGroups().create() + .xGustoAPIVersion(PostV1CompaniesCompanyIdContractorPaymentGroupsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .companyId("") + .requestBody(PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBody.builder() + .checkDate(LocalDate.parse("2020-01-01")) + .creationToken("1d532d13-8f61-4a57-ad3c-b5fac1c6e05e") + .contractorPayments(List.of()) + .build()) .call(); if (res.contractorPaymentGroup().isPresent()) { @@ -244,53 +247,56 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `contractorPaymentGroupUuid` | *String* | :heavy_check_mark: | The UUID of the contractor payment group | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1ContractorPaymentGroupsContractorPaymentGroupIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | +| `requestBody` | [PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBody](../../models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBody.md) | :heavy_check_mark: | N/A | ### Response -**[GetV1ContractorPaymentGroupsContractorPaymentGroupIdResponse](../../models/operations/GetV1ContractorPaymentGroupsContractorPaymentGroupIdResponse.md)** +**[PostV1CompaniesCompanyIdContractorPaymentGroupsResponse](../../models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| --------------------------------- | --------------------------------- | --------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | -## delete +## get -Cancels a contractor payment group and all associated contractor payments. All contractor payments must be cancellable, unfunded. +Returns a contractor payment group with all associated contractor payments. -scope: `payrolls:run` +scope: `payrolls:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ContractorPaymentGroupsContractorPaymentGroupIdHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ContractorPaymentGroupsContractorPaymentGroupIdResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + public static void main(String[] args) throws NotFoundErrorObject, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdResponse res = sdk.contractorPaymentGroups().delete() + GetV1ContractorPaymentGroupsContractorPaymentGroupIdResponse res = sdk.contractorPaymentGroups().get() + .xGustoAPIVersion(GetV1ContractorPaymentGroupsContractorPaymentGroupIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .contractorPaymentGroupUuid("") - .xGustoAPIVersion(DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .call(); - // handle response + if (res.contractorPaymentGroup().isPresent()) { + System.out.println(res.contractorPaymentGroup().get()); + } } } ``` @@ -299,41 +305,37 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1ContractorPaymentGroupsContractorPaymentGroupIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `contractorPaymentGroupUuid` | *String* | :heavy_check_mark: | The UUID of the contractor payment group | -| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | ### Response -**[DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdResponse](../../models/operations/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdResponse.md)** +**[GetV1ContractorPaymentGroupsContractorPaymentGroupIdResponse](../../models/operations/GetV1ContractorPaymentGroupsContractorPaymentGroupIdResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| -------------------------------------- | -------------------------------------- | -------------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/UnprocessableEntityError | 422 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | - -## fund +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | -> 🚧 Demo action -> This action is only available in the Demo environment +## delete -Simulate funding a contractor payment group. Funding only occurs automatically in the production environment when bank transactions are generated. Use this action in the demo environment to transition a contractor payment group's `status` from `Unfunded` to `Funded`. A `Funded` status is required for generating a contractor payment receipt. +Cancels a contractor payment group and all associated contractor payments. All contractor payments must be cancellable, unfunded. scope: `payrolls:run` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdResponse; import java.lang.Exception; public class Application { @@ -344,14 +346,12 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundResponse res = sdk.contractorPaymentGroups().fund() + DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdResponse res = sdk.contractorPaymentGroups().delete() + .xGustoAPIVersion(DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .contractorPaymentGroupUuid("") - .xGustoAPIVersion(PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .call(); - if (res.contractorPaymentGroup().isPresent()) { - System.out.println(res.contractorPaymentGroup().get()); - } + // handle response } } ``` @@ -360,12 +360,12 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `contractorPaymentGroupUuid` | *String* | :heavy_check_mark: | The UUID of the contractor payment group | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | ### Response -**[PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundResponse](../../models/operations/PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundResponse.md)** +**[DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdResponse](../../models/operations/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdResponse.md)** ### Errors @@ -402,8 +402,8 @@ public class Application { .build(); GetV1ContractorPaymentGroupsIdPartnerDisbursementsResponse res = sdk.contractorPaymentGroups().getV1ContractorPaymentGroupsIdPartnerDisbursements() - .id("") .xGustoAPIVersion(GetV1ContractorPaymentGroupsIdPartnerDisbursementsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .id("") .call(); if (res.contractorPaymentGroupPartnerDisbursements().isPresent()) { @@ -417,8 +417,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `id` | *String* | :heavy_check_mark: | The UUID of the contractor payment group | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1ContractorPaymentGroupsIdPartnerDisbursementsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `id` | *String* | :heavy_check_mark: | The UUID of the contractor payment group | ### Response @@ -459,8 +459,8 @@ public class Application { .build(); PatchV1ContractorPaymentGroupsIdPartnerDisbursementsResponse res = sdk.contractorPaymentGroups().patchV1ContractorPaymentGroupsIdPartnerDisbursements() - .id("") .xGustoAPIVersion(PatchV1ContractorPaymentGroupsIdPartnerDisbursementsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .id("") .requestBody(PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBody.builder() .disbursements(List.of( Disbursements.builder() @@ -480,8 +480,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `id` | *String* | :heavy_check_mark: | The UUID of the contractor payment group | | `xGustoAPIVersion` | [Optional\](../../models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `id` | *String* | :heavy_check_mark: | The UUID of the contractor payment group | | `requestBody` | [Optional\](../../models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBody.md) | :heavy_minus_sign: | N/A | ### Response diff --git a/gusto_embedded_v_2025_11_15/docs/sdks/contractorpaymentmethod/README.md b/gusto_embedded_v_2025_11_15/docs/sdks/contractorpaymentmethod/README.md index 724de7d58..1ad5b25b3 100644 --- a/gusto_embedded_v_2025_11_15/docs/sdks/contractorpaymentmethod/README.md +++ b/gusto_embedded_v_2025_11_15/docs/sdks/contractorpaymentmethod/README.md @@ -153,7 +153,7 @@ public class Application { .contractorUuid("") .requestBody(PutV1ContractorsContractorIdPaymentMethodRequestBody.builder() .version("63859768485e218ccf8a449bb60f14ed") - .type(PutV1ContractorsContractorIdPaymentMethodType.DIRECT_DEPOSIT) + .type(Type.DIRECT_DEPOSIT) .build()) .call(); diff --git a/gusto_embedded_v_2025_11_15/docs/sdks/contractorpayments/README.md b/gusto_embedded_v_2025_11_15/docs/sdks/contractorpayments/README.md index 88982ca96..4a7064e28 100644 --- a/gusto_embedded_v_2025_11_15/docs/sdks/contractorpayments/README.md +++ b/gusto_embedded_v_2025_11_15/docs/sdks/contractorpayments/README.md @@ -4,55 +4,56 @@ ### Available Operations -* [getReceipt](#getreceipt) - Get a single contractor payment receipt -* [fund](#fund) - Fund a contractor payment [DEMO] +* [getV1ContractorsContractorUuidPayments](#getv1contractorscontractoruuidpayments) - Get contractor payments +* [getV1ContractorPaymentsContractorPaymentIdPdf](#getv1contractorpaymentscontractorpaymentidpdf) - Get a contractor payment PDF * [list](#list) - Get contractor payments for a company * [create](#create) - Create a contractor payment * [get](#get) - Get a single contractor payment * [delete](#delete) - Cancel a contractor payment * [preview](#preview) - Preview contractor payment debit date -* [getV1ContractorPaymentsContractorPaymentIdPdf](#getv1contractorpaymentscontractorpaymentidpdf) - Get a contractor payment PDF +* [getReceipt](#getreceipt) - Get a single contractor payment receipt +* [fund](#fund) - Fund a contractor payment [DEMO] -## getReceipt +## getV1ContractorsContractorUuidPayments -Returns a contractor payment receipt. +Returns a paginated list of payments for a single contractor. -Notes: -* Receipts are only available for direct deposit payments and are only available once those payments have been funded. -* Payroll Receipt requests for payrolls which do not have receipts available (e.g. payment by check) will return a 404 status. -* Hour and dollar amounts are returned as string representations of numeric decimals. -* Dollar amounts are represented to the cent. -* If no data has yet be inserted for a given field, it defaults to “0.00” (for fixed amounts). +Results are sortable by `check_date` or `created_at`. Append `:asc` or `:desc` to control direction (e.g., `check_date:desc`). -scope: `payrolls:read` +scope: `contractor_pay_stubs:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ContractorPaymentsContractorPaymentUuidReceiptHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ContractorPaymentsContractorPaymentUuidReceiptResponse; +import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ContractorsContractorUuidPaymentsRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ContractorsContractorUuidPaymentsResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, Exception { + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1ContractorPaymentsContractorPaymentUuidReceiptResponse res = sdk.contractorPayments().getReceipt() - .xGustoAPIVersion(GetV1ContractorPaymentsContractorPaymentUuidReceiptHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) - .contractorPaymentUuid("") + GetV1ContractorsContractorUuidPaymentsRequest req = GetV1ContractorsContractorUuidPaymentsRequest.builder() + .contractorUuid("") + .sortBy("check_date:desc") + .build(); + + GetV1ContractorsContractorUuidPaymentsResponse res = sdk.contractorPayments().getV1ContractorsContractorUuidPayments() + .request(req) .call(); - if (res.contractorPaymentReceipt().isPresent()) { - System.out.println(res.contractorPaymentReceipt().get()); + if (res.contractorPaymentListings().isPresent()) { + System.out.println(res.contractorPaymentListings().get()); } } } @@ -60,61 +61,54 @@ public class Application { ### Parameters -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1ContractorPaymentsContractorPaymentUuidReceiptHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `contractorPaymentUuid` | *String* | :heavy_check_mark: | The UUID of the contractor payment | +| Parameter | Type | Required | Description | +| ------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------- | +| `request` | [GetV1ContractorsContractorUuidPaymentsRequest](../../models/operations/GetV1ContractorsContractorUuidPaymentsRequest.md) | :heavy_check_mark: | The request object to use for the request. | ### Response -**[GetV1ContractorPaymentsContractorPaymentUuidReceiptResponse](../../models/operations/GetV1ContractorPaymentsContractorPaymentUuidReceiptResponse.md)** +**[GetV1ContractorsContractorUuidPaymentsResponse](../../models/operations/GetV1ContractorsContractorUuidPaymentsResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| --------------------------------- | --------------------------------- | --------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | - -## fund +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | -> 🚧 Demo action -> -> This action is only available in the Demo environment +## getV1ContractorPaymentsContractorPaymentIdPdf -Simulate funding a contractor payment. Funding only occurs automatically in the production environment when bank transactions are generated. Use this action in the demo environment to transition a contractor payment's `status` from `Unfunded` to `Funded`. A `Funded` status is required for generating a contractor payment receipt. +Get a PDF document for a single contractor payment. -scope: `payrolls:run` +scope: `payrolls:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ContractorPaymentsContractorPaymentUuidFundHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ContractorPaymentsContractorPaymentUuidFundResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ContractorPaymentsContractorPaymentIdPdfHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ContractorPaymentsContractorPaymentIdPdfResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + public static void main(String[] args) throws NotFoundErrorObject, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1ContractorPaymentsContractorPaymentUuidFundResponse res = sdk.contractorPayments().fund() - .xGustoAPIVersion(GetV1ContractorPaymentsContractorPaymentUuidFundHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) - .contractorPaymentUuid("") + GetV1ContractorPaymentsContractorPaymentIdPdfResponse res = sdk.contractorPayments().getV1ContractorPaymentsContractorPaymentIdPdf() + .xGustoAPIVersion(GetV1ContractorPaymentsContractorPaymentIdPdfHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .contractorPaymentId("") .call(); - if (res.contractorPayment().isPresent()) { - System.out.println(res.contractorPayment().get()); - } + // handle response } } ``` @@ -123,20 +117,19 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1ContractorPaymentsContractorPaymentUuidFundHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `contractorPaymentUuid` | *String* | :heavy_check_mark: | The UUID of the contractor payment | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1ContractorPaymentsContractorPaymentIdPdfHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorPaymentId` | *String* | :heavy_check_mark: | The UUID of the contractor payment | ### Response -**[GetV1ContractorPaymentsContractorPaymentUuidFundResponse](../../models/operations/GetV1ContractorPaymentsContractorPaymentUuidFundResponse.md)** +**[GetV1ContractorPaymentsContractorPaymentIdPdfResponse](../../models/operations/GetV1ContractorPaymentsContractorPaymentIdPdfResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| -------------------------------------- | -------------------------------------- | -------------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/UnprocessableEntityError | 422 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | ## list @@ -463,22 +456,29 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## getV1ContractorPaymentsContractorPaymentIdPdf +## getReceipt -Get a PDF document for a single contractor payment. +Returns a contractor payment receipt. + +Notes: +* Receipts are only available for direct deposit payments and are only available once those payments have been funded. +* Payroll Receipt requests for payrolls which do not have receipts available (e.g. payment by check) will return a 404 status. +* Hour and dollar amounts are returned as string representations of numeric decimals. +* Dollar amounts are represented to the cent. +* If no data has yet be inserted for a given field, it defaults to “0.00” (for fixed amounts). scope: `payrolls:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ContractorPaymentsContractorPaymentIdPdfHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ContractorPaymentsContractorPaymentIdPdfResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ContractorPaymentsContractorPaymentUuidReceiptHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ContractorPaymentsContractorPaymentUuidReceiptResponse; import java.lang.Exception; public class Application { @@ -489,12 +489,14 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1ContractorPaymentsContractorPaymentIdPdfResponse res = sdk.contractorPayments().getV1ContractorPaymentsContractorPaymentIdPdf() - .xGustoAPIVersion(GetV1ContractorPaymentsContractorPaymentIdPdfHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) - .contractorPaymentId("") + GetV1ContractorPaymentsContractorPaymentUuidReceiptResponse res = sdk.contractorPayments().getReceipt() + .xGustoAPIVersion(GetV1ContractorPaymentsContractorPaymentUuidReceiptHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .contractorPaymentUuid("") .call(); - // handle response + if (res.contractorPaymentReceipt().isPresent()) { + System.out.println(res.contractorPaymentReceipt().get()); + } } } ``` @@ -503,16 +505,78 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1ContractorPaymentsContractorPaymentIdPdfHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `contractorPaymentId` | *String* | :heavy_check_mark: | The UUID of the contractor payment | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1ContractorPaymentsContractorPaymentUuidReceiptHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorPaymentUuid` | *String* | :heavy_check_mark: | The UUID of the contractor payment | ### Response -**[GetV1ContractorPaymentsContractorPaymentIdPdfResponse](../../models/operations/GetV1ContractorPaymentsContractorPaymentIdPdfResponse.md)** +**[GetV1ContractorPaymentsContractorPaymentUuidReceiptResponse](../../models/operations/GetV1ContractorPaymentsContractorPaymentUuidReceiptResponse.md)** ### Errors | Error Type | Status Code | Content Type | | --------------------------------- | --------------------------------- | --------------------------------- | | models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | \ No newline at end of file +| models/errors/APIException | 4XX, 5XX | \*/\* | + +## fund + +> 🚧 Demo action +> +> This action is only available in the Demo environment + +Simulate funding a contractor payment. Funding only occurs automatically in the production environment when bank transactions are generated. Use this action in the demo environment to transition a contractor payment's `status` from `Unfunded` to `Funded`. A `Funded` status is required for generating a contractor payment receipt. + +scope: `payrolls:run` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; +import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ContractorPaymentsContractorPaymentUuidFundHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ContractorPaymentsContractorPaymentUuidFundResponse; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + GetV1ContractorPaymentsContractorPaymentUuidFundResponse res = sdk.contractorPayments().fund() + .xGustoAPIVersion(GetV1ContractorPaymentsContractorPaymentUuidFundHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .contractorPaymentUuid("") + .call(); + + if (res.contractorPayment().isPresent()) { + System.out.println(res.contractorPayment().get()); + } + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1ContractorPaymentsContractorPaymentUuidFundHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorPaymentUuid` | *String* | :heavy_check_mark: | The UUID of the contractor payment | + +### Response + +**[GetV1ContractorPaymentsContractorPaymentUuidFundResponse](../../models/operations/GetV1ContractorPaymentsContractorPaymentUuidFundResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/sdks/contractors/README.md b/gusto_embedded_v_2025_11_15/docs/sdks/contractors/README.md index a91ce9d82..527a5292e 100644 --- a/gusto_embedded_v_2025_11_15/docs/sdks/contractors/README.md +++ b/gusto_embedded_v_2025_11_15/docs/sdks/contractors/README.md @@ -4,13 +4,6 @@ ### Available Operations -* [list](#list) - Get contractors of a company -* [create](#create) - Create a contractor -* [get](#get) - Get a contractor -* [update](#update) - Update a contractor -* [delete](#delete) - Delete a contractor -* [getOnboardingStatus](#getonboardingstatus) - Get the contractor's onboarding status -* [updateOnboardingStatus](#updateonboardingstatus) - Change the contractor's onboarding status * [getAddress](#getaddress) - Get a contractor address * [updateAddress](#updateaddress) - Create or update a contractor's address * [getV1CompaniesCompanyIdContractorsPaymentDetails](#getv1companiescompanyidcontractorspaymentdetails) - List contractor payment details @@ -18,23 +11,30 @@ * [deleteV1ContractorsContractorUuidRehire](#deletev1contractorscontractoruuidrehire) - Cancel a pending contractor rehire * [postV1ContractorsContractorUuidTermination](#postv1contractorscontractoruuidtermination) - Schedule a contractor termination * [deleteV1ContractorsContractorUuidTermination](#deletev1contractorscontractoruuidtermination) - Cancel a pending contractor termination +* [get](#get) - Get a contractor +* [update](#update) - Update a contractor +* [delete](#delete) - Delete a contractor +* [list](#list) - Get contractors of a company +* [create](#create) - Create a contractor +* [getOnboardingStatus](#getonboardingstatus) - Get the contractor's onboarding status +* [updateOnboardingStatus](#updateonboardingstatus) - Change the contractor's onboarding status -## list +## getAddress -Get all contractors, active and inactive, individual and business, for a company. +The address of a contractor is used to determine certain tax information about them. Addresses are geocoded on create and update to ensure validity. scope: `contractors:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyUuidContractorsRequest; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyUuidContractorsResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ContractorsContractorUuidAddressHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ContractorsContractorUuidAddressResponse; import java.lang.Exception; public class Application { @@ -45,17 +45,13 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1CompaniesCompanyUuidContractorsRequest req = GetV1CompaniesCompanyUuidContractorsRequest.builder() - .companyUuid("") - .sortBy("created_at:asc") - .build(); - - GetV1CompaniesCompanyUuidContractorsResponse res = sdk.contractors().list() - .request(req) + GetV1ContractorsContractorUuidAddressResponse res = sdk.contractors().getAddress() + .xGustoAPIVersion(GetV1ContractorsContractorUuidAddressHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .contractorUuid("") .call(); - if (res.contractors().isPresent()) { - System.out.println(res.contractors().get()); + if (res.contractorAddress().isPresent()) { + System.out.println(res.contractorAddress().get()); } } } @@ -63,13 +59,14 @@ public class Application { ### Parameters -| Parameter | Type | Required | Description | -| --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | -| `request` | [GetV1CompaniesCompanyUuidContractorsRequest](../../models/operations/GetV1CompaniesCompanyUuidContractorsRequest.md) | :heavy_check_mark: | The request object to use for the request. | +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1ContractorsContractorUuidAddressHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | ### Response -**[GetV1CompaniesCompanyUuidContractorsResponse](../../models/operations/GetV1CompaniesCompanyUuidContractorsResponse.md)** +**[GetV1ContractorsContractorUuidAddressResponse](../../models/operations/GetV1ContractorsContractorUuidAddressResponse.md)** ### Errors @@ -78,25 +75,28 @@ public class Application { | models/errors/NotFoundErrorObject | 404 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## create +## updateAddress -Create an individual or business contractor. +The address of a contractor is used to determine certain tax information about them. Addresses are geocoded on create and update to ensure validity. -scope: `contractors:manage` +> 🚧 Contractors can only have one address. +> +> When a contractor is created, an address is created for them by default. Updating the address will replace the existing address. + +scope: `contractors:write` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; -import com.gusto.embedded_api_v_2025_11_15.models.components.ContractorCreateRequestBody; -import com.gusto.embedded_api_v_2025_11_15.models.components.ContractorCreateRequestBodyWageType; +import com.gusto.embedded_api_v_2025_11_15.models.components.ContractorAddressUpdateBody; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1CompaniesCompanyUuidContractorsHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1CompaniesCompanyUuidContractorsResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1ContractorsContractorUuidAddressHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1ContractorsContractorUuidAddressResponse; import java.lang.Exception; public class Application { @@ -107,18 +107,16 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostV1CompaniesCompanyUuidContractorsResponse res = sdk.contractors().create() - .xGustoAPIVersion(PostV1CompaniesCompanyUuidContractorsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) - .companyUuid("") - .contractorCreateRequestBody(ContractorCreateRequestBody.builder() - .wageType(ContractorCreateRequestBodyWageType.HOURLY) - .startDate("2020-01-11") - .hourlyRate("40.0") + PutV1ContractorsContractorUuidAddressResponse res = sdk.contractors().updateAddress() + .xGustoAPIVersion(PutV1ContractorsContractorUuidAddressHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .contractorUuid("") + .contractorAddressUpdateBody(ContractorAddressUpdateBody.builder() + .version("56d00c178bc7393b2a206ed6a86afcb4") .build()) .call(); - if (res.contractor().isPresent()) { - System.out.println(res.contractor().get()); + if (res.contractorAddress().isPresent()) { + System.out.println(res.contractorAddress().get()); } } } @@ -128,13 +126,13 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1CompaniesCompanyUuidContractorsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | -| `contractorCreateRequestBody` | [ContractorCreateRequestBody](../../models/components/ContractorCreateRequestBody.md) | :heavy_check_mark: | N/A | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1ContractorsContractorUuidAddressHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | +| `contractorAddressUpdateBody` | [ContractorAddressUpdateBody](../../models/components/ContractorAddressUpdateBody.md) | :heavy_check_mark: | N/A | ### Response -**[PostV1CompaniesCompanyUuidContractorsResponse](../../models/operations/PostV1CompaniesCompanyUuidContractorsResponse.md)** +**[PutV1ContractorsContractorUuidAddressResponse](../../models/operations/PutV1ContractorsContractorUuidAddressResponse.md)** ### Errors @@ -144,22 +142,46 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## get +## getV1CompaniesCompanyIdContractorsPaymentDetails -Get a contractor. +Get payment details for contractors in a company. This endpoint returns a list of all contractors +associated with the specified company, including their payment methods and bank account details +if they are paid via direct deposit. -scope: `contractors:read` +For contractors paid by direct deposit, the response includes their bank account information +with sensitive data masked for security. The payment details also include information about +how their payments are split if they have multiple bank accounts configured. + +For contractors paid by check, only the basic payment method information is returned. + +### Response Details +- For direct deposit contractors: + - Bank account details (masked) + - Payment splits configuration + - Routing numbers + - Account types +- For check payments: + - Basic payment method designation + +### Common Use Cases +- Fetching contractor payment information for payroll processing +- Verifying contractor payment methods +- Reviewing payment split configurations + +`encrypted_account_number` is available only with the additional scope `contractor_payment_methods:read:account_numbers`. + +scope: `contractor_payment_methods:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ContractorsContractorUuidHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ContractorsContractorUuidResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdContractorsPaymentDetailsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdContractorsPaymentDetailsResponse; import java.lang.Exception; public class Application { @@ -170,13 +192,13 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1ContractorsContractorUuidResponse res = sdk.contractors().get() - .xGustoAPIVersion(GetV1ContractorsContractorUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) - .contractorUuid("") + GetV1CompaniesCompanyIdContractorsPaymentDetailsResponse res = sdk.contractors().getV1CompaniesCompanyIdContractorsPaymentDetails() + .xGustoAPIVersion(GetV1CompaniesCompanyIdContractorsPaymentDetailsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .companyId("") .call(); - if (res.contractor().isPresent()) { - System.out.println(res.contractor().get()); + if (res.contractorPaymentDetailsList().isPresent()) { + System.out.println(res.contractorPaymentDetailsList().get()); } } } @@ -186,13 +208,14 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1ContractorsContractorUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | -| `include` | List\<[GetV1ContractorsContractorUuidQueryParamInclude](../../models/operations/GetV1ContractorsContractorUuidQueryParamInclude.md)> | :heavy_minus_sign: | Include the requested attribute(s) in each contractor response. Multiple options are comma separated. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company. This identifies the company whose contractor payment details you want to retrieve. | +| `contractorUuid` | *Optional\* | :heavy_minus_sign: | Optional filter to get payment details for a specific contractor. When provided, the response will only include payment details for this contractor. | +| `contractorPaymentGroupUuid` | *Optional\* | :heavy_minus_sign: | 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. | ### Response -**[GetV1ContractorsContractorUuidResponse](../../models/operations/GetV1ContractorsContractorUuidResponse.md)** +**[GetV1CompaniesCompanyIdContractorsPaymentDetailsResponse](../../models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsResponse.md)** ### Errors @@ -201,51 +224,50 @@ public class Application { | models/errors/NotFoundErrorObject | 404 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## update +## postV1ContractorsContractorUuidRehire -Update a contractor. +## Purpose +Schedules a contractor rehire for a given date. Creates a new employment record for the contractor. -> 🚧 Warning -> -> Watch out when changing a contractor's type (when the contractor is finished onboarding). Specifically, changing contractor type can be dangerous since Gusto won't recognize and file two separate 1099s if they simply change from business to individual +## Prerequisites +Before calling this endpoint: +1. The contractor must be inactive (previously dismissed) +2. The contractor must not already have an upcoming employment + +## Related webhooks +- `contractor.reactivated`: Fires when the contractor becomes active again (on or after start_date) scope: `contractors:write` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; -import com.gusto.embedded_api_v_2025_11_15.models.components.ContractorUpdateRequestBody; -import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1ContractorsContractorUuidHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1ContractorsContractorUuidResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.*; import java.lang.Exception; +import java.time.LocalDate; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + public static void main(String[] args) throws UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1ContractorsContractorUuidResponse res = sdk.contractors().update() - .xGustoAPIVersion(PutV1ContractorsContractorUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + PostV1ContractorsContractorUuidRehireResponse res = sdk.contractors().postV1ContractorsContractorUuidRehire() + .xGustoAPIVersion(PostV1ContractorsContractorUuidRehireHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .contractorUuid("") - .contractorUpdateRequestBody(ContractorUpdateRequestBody.builder() - .version("56d00c178bc7393b2a206ed6a86afcb4") - .startDate("2020-01-11") - .hourlyRate("40.0") + .requestBody(PostV1ContractorsContractorUuidRehireRequestBody.builder() + .startDate(LocalDate.parse("2025-07-01")) .build()) .call(); - if (res.contractor().isPresent()) { - System.out.println(res.contractor().get()); - } + // handle response } } ``` @@ -254,51 +276,58 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1ContractorsContractorUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1ContractorsContractorUuidRehireHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | -| `contractorUpdateRequestBody` | [ContractorUpdateRequestBody](../../models/components/ContractorUpdateRequestBody.md) | :heavy_check_mark: | N/A | +| `requestBody` | [Optional\](../../models/operations/PostV1ContractorsContractorUuidRehireRequestBody.md) | :heavy_minus_sign: | N/A | ### Response -**[PutV1ContractorsContractorUuidResponse](../../models/operations/PutV1ContractorsContractorUuidResponse.md)** +**[PostV1ContractorsContractorUuidRehireResponse](../../models/operations/PostV1ContractorsContractorUuidRehireResponse.md)** ### Errors | Error Type | Status Code | Content Type | | -------------------------------------- | -------------------------------------- | -------------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/UnprocessableEntityError | 409, 422 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## delete +## deleteV1ContractorsContractorUuidRehire -A contractor can only be deleted when there are no contractor payments. +## Purpose +Cancels a pending contractor rehire. For future-dated rehires, cancellation is available anytime before the date. +For past-dated rehires, cancellation is only available within the 2-day grace period. -scope: `contractors:manage` +## Prerequisites +Before calling this endpoint: +- The contractor must have a pending rehire (upcoming employment) + +## Related webhooks +- `contractor.deactivated`: Fires when the contractor returns to inactive state after cancellation + +scope: `contractors:write` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; -import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1ContractorsContractorUuidHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1ContractorsContractorUuidResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1ContractorsContractorUuidRehireHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1ContractorsContractorUuidRehireResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + public static void main(String[] args) throws UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - DeleteV1ContractorsContractorUuidResponse res = sdk.contractors().delete() - .xGustoAPIVersion(DeleteV1ContractorsContractorUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + DeleteV1ContractorsContractorUuidRehireResponse res = sdk.contractors().deleteV1ContractorsContractorUuidRehire() + .xGustoAPIVersion(DeleteV1ContractorsContractorUuidRehireHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .contractorUuid("") .call(); @@ -311,86 +340,64 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1ContractorsContractorUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1ContractorsContractorUuidRehireHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | ### Response -**[DeleteV1ContractorsContractorUuidResponse](../../models/operations/DeleteV1ContractorsContractorUuidResponse.md)** +**[DeleteV1ContractorsContractorUuidRehireResponse](../../models/operations/DeleteV1ContractorsContractorUuidRehireResponse.md)** ### Errors | Error Type | Status Code | Content Type | | -------------------------------------- | -------------------------------------- | -------------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## getOnboardingStatus - -Retrieves a contractor's onboarding status. The data returned helps inform the required onboarding steps and respective completion status. +## postV1ContractorsContractorUuidTermination -## onboarding_status +## Purpose +Schedules a contractor dismissal for a given date. Supports both immediate (past dates) and future-dated dismissals. -### Admin-facilitated onboarding -| onboarding_status | Description | -|:------------------|------------:| -| `admin_onboarding_incomplete` | Admin needs to enter basic information about the contractor. | -| `admin_onboarding_review` | All information has been completed and admin needs to confirm onboarding. | -| `onboarding_completed` | Contractor has been fully onboarded and verified. | +## Prerequisites +Before calling this endpoint: +1. The contractor must be active (no existing pending dismissal) +2. The contractor must have a current employment -### Contractor self-onboarding +## Related webhooks +- `contractor.deactivated`: Fires when the contractor becomes inactive (on or after end_date) -| onboarding_status | Description | -| --- | ----------- | -| `admin_onboarding_incomplete` | Admin needs to enter basic information about the contractor. | -| `self_onboarding_not_invited` | Admin has the intention to invite the contractor to self-onboard (e.g., marking a checkbox), but the system has not yet sent the invitation. | -| `self_onboarding_invited` | Contractor has been sent an invitation to self-onboard. | -| `self_onboarding_started` | Contractor has started the self-onboarding process. | -| `self_onboarding_review` | Admin needs to review contractors's entered information and confirm onboarding. | -| `onboarding_completed` | Contractor has been fully onboarded and verified. | +scope: `contractors:write` -## onboarding_steps +### Example Usage -| onboarding_steps | Requirement(s) to be completed | -|:-----------------|-------------------------------:| -| `basic_details` | Add individual contractor's first name, last name, social security number or Business name and EIN depending on the contractor type | -| `add_address` | Add contractor address. | -| `compensation_details` | Add contractor compensation. | -| `payment_details` | (optional) Set up contractor's direct deposit or set to check. | -| `sign_documents` | Contractor forms (e.g., W9) are generated & signed. | -| `file_new_hire_report` | Contractor new hire report is generated. | - -scope: `contractors:read` - -### Example Usage - - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; -import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ContractorsContractorUuidOnboardingStatusHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ContractorsContractorUuidOnboardingStatusResponse; +import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api_v_2025_11_15.models.operations.*; import java.lang.Exception; +import java.time.LocalDate; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, Exception { + public static void main(String[] args) throws UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1ContractorsContractorUuidOnboardingStatusResponse res = sdk.contractors().getOnboardingStatus() - .xGustoAPIVersion(GetV1ContractorsContractorUuidOnboardingStatusHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + PostV1ContractorsContractorUuidTerminationResponse res = sdk.contractors().postV1ContractorsContractorUuidTermination() + .xGustoAPIVersion(PostV1ContractorsContractorUuidTerminationHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .contractorUuid("") + .requestBody(PostV1ContractorsContractorUuidTerminationRequestBody.builder() + .endDate(LocalDate.parse("2025-06-15")) + .build()) .call(); - if (res.contractorOnboardingStatus().isPresent()) { - System.out.println(res.contractorOnboardingStatus().get()); - } + // handle response } } ``` @@ -399,70 +406,62 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1ContractorsContractorUuidOnboardingStatusHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1ContractorsContractorUuidTerminationHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | +| `requestBody` | [Optional\](../../models/operations/PostV1ContractorsContractorUuidTerminationRequestBody.md) | :heavy_minus_sign: | N/A | ### Response -**[GetV1ContractorsContractorUuidOnboardingStatusResponse](../../models/operations/GetV1ContractorsContractorUuidOnboardingStatusResponse.md)** +**[PostV1ContractorsContractorUuidTerminationResponse](../../models/operations/PostV1ContractorsContractorUuidTerminationResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| --------------------------------- | --------------------------------- | --------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | -## updateOnboardingStatus +## deleteV1ContractorsContractorUuidTermination -Updates a contractor's onboarding status. +## Purpose +Cancels a pending contractor dismissal. For future-dated dismissals, cancellation is available anytime before the date. +For past-dated dismissals, cancellation is only available within the 2-day grace period. -Below is a list of valid onboarding status changes depending on the intended action to be performed on behalf of the contractor. +## Prerequisites +Before calling this endpoint: +- The contractor must have a pending dismissal (scheduled or within the grace period) -| Action | current onboarding_status | new onboarding_status | -|:------------------|:------------:|----------:| -| Mark a contractor as self-onboarding | `admin_onboarding_incomplete` | `self_onboarding_not_invited` | -| Invite a contractor to self-onboard | `admin_onboarding_incomplete` or `self_onboarding_not_invited` | `self_onboarding_invited` | -| Cancel a contractor's self-onboarding | `self_onboarding_invited` or `self_onboarding_not_invited` | `admin_onboarding_incomplete` | -| Review a contractor's self-onboarded info | `self_onboarding_started` | `self_onboarding_review` | -| Finish a contractor's onboarding | `admin_onboarding_review` or `self_onboarding_review` | `onboarding_completed` | +## Related webhooks +- `contractor.reactivated`: Fires when the contractor becomes active again after cancellation scope: `contractors:write` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; -import com.gusto.embedded_api_v_2025_11_15.models.components.ContractorOnboardingStatusUpdateRequestBody; -import com.gusto.embedded_api_v_2025_11_15.models.components.ContractorOnboardingStatusUpdateRequestBodyOnboardingStatus; -import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1ContractorsContractorUuidOnboardingStatusHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1ContractorsContractorUuidOnboardingStatusResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1ContractorsContractorUuidTerminationHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1ContractorsContractorUuidTerminationResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + public static void main(String[] args) throws UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1ContractorsContractorUuidOnboardingStatusResponse res = sdk.contractors().updateOnboardingStatus() - .xGustoAPIVersion(PutV1ContractorsContractorUuidOnboardingStatusHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + DeleteV1ContractorsContractorUuidTerminationResponse res = sdk.contractors().deleteV1ContractorsContractorUuidTermination() + .xGustoAPIVersion(DeleteV1ContractorsContractorUuidTerminationHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .contractorUuid("") - .contractorOnboardingStatusUpdateRequestBody(ContractorOnboardingStatusUpdateRequestBody.builder() - .onboardingStatus(ContractorOnboardingStatusUpdateRequestBodyOnboardingStatus.SELF_ONBOARDING_STARTED) - .build()) .call(); - if (res.contractorOnboardingStatus().isPresent()) { - System.out.println(res.contractorOnboardingStatus().get()); - } + // handle response } } ``` @@ -471,38 +470,36 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1ContractorsContractorUuidOnboardingStatusHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1ContractorsContractorUuidTerminationHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | -| `contractorOnboardingStatusUpdateRequestBody` | [ContractorOnboardingStatusUpdateRequestBody](../../models/components/ContractorOnboardingStatusUpdateRequestBody.md) | :heavy_check_mark: | N/A | ### Response -**[PutV1ContractorsContractorUuidOnboardingStatusResponse](../../models/operations/PutV1ContractorsContractorUuidOnboardingStatusResponse.md)** +**[DeleteV1ContractorsContractorUuidTerminationResponse](../../models/operations/DeleteV1ContractorsContractorUuidTerminationResponse.md)** ### Errors | Error Type | Status Code | Content Type | | -------------------------------------- | -------------------------------------- | -------------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## getAddress +## get -The address of a contractor is used to determine certain tax information about them. Addresses are geocoded on create and update to ensure validity. +Get a contractor. scope: `contractors:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ContractorsContractorUuidAddressHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ContractorsContractorUuidAddressResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ContractorsContractorUuidHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ContractorsContractorUuidResponse; import java.lang.Exception; public class Application { @@ -513,13 +510,13 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1ContractorsContractorUuidAddressResponse res = sdk.contractors().getAddress() - .xGustoAPIVersion(GetV1ContractorsContractorUuidAddressHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + GetV1ContractorsContractorUuidResponse res = sdk.contractors().get() + .xGustoAPIVersion(GetV1ContractorsContractorUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .contractorUuid("") .call(); - if (res.contractorAddress().isPresent()) { - System.out.println(res.contractorAddress().get()); + if (res.contractor().isPresent()) { + System.out.println(res.contractor().get()); } } } @@ -529,12 +526,13 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1ContractorsContractorUuidAddressHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1ContractorsContractorUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | +| `include` | List\<[GetV1ContractorsContractorUuidQueryParamInclude](../../models/operations/GetV1ContractorsContractorUuidQueryParamInclude.md)> | :heavy_minus_sign: | Include the requested attribute(s) in each contractor response. Multiple options are comma separated. | ### Response -**[GetV1ContractorsContractorUuidAddressResponse](../../models/operations/GetV1ContractorsContractorUuidAddressResponse.md)** +**[GetV1ContractorsContractorUuidResponse](../../models/operations/GetV1ContractorsContractorUuidResponse.md)** ### Errors @@ -543,28 +541,28 @@ public class Application { | models/errors/NotFoundErrorObject | 404 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## updateAddress +## update -The address of a contractor is used to determine certain tax information about them. Addresses are geocoded on create and update to ensure validity. +Update a contractor. -> 🚧 Contractors can only have one address. +> 🚧 Warning > -> When a contractor is created, an address is created for them by default. Updating the address will replace the existing address. +> Watch out when changing a contractor's type (when the contractor is finished onboarding). Specifically, changing contractor type can be dangerous since Gusto won't recognize and file two separate 1099s if they simply change from business to individual scope: `contractors:write` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; -import com.gusto.embedded_api_v_2025_11_15.models.components.ContractorAddressUpdateBody; +import com.gusto.embedded_api_v_2025_11_15.models.components.ContractorUpdateRequestBody; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1ContractorsContractorUuidAddressHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1ContractorsContractorUuidAddressResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1ContractorsContractorUuidHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1ContractorsContractorUuidResponse; import java.lang.Exception; public class Application { @@ -575,16 +573,18 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1ContractorsContractorUuidAddressResponse res = sdk.contractors().updateAddress() - .xGustoAPIVersion(PutV1ContractorsContractorUuidAddressHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + PutV1ContractorsContractorUuidResponse res = sdk.contractors().update() + .xGustoAPIVersion(PutV1ContractorsContractorUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .contractorUuid("") - .contractorAddressUpdateBody(ContractorAddressUpdateBody.builder() + .contractorUpdateRequestBody(ContractorUpdateRequestBody.builder() .version("56d00c178bc7393b2a206ed6a86afcb4") + .startDate("2020-01-11") + .hourlyRate("40.0") .build()) .call(); - if (res.contractorAddress().isPresent()) { - System.out.println(res.contractorAddress().get()); + if (res.contractor().isPresent()) { + System.out.println(res.contractor().get()); } } } @@ -594,80 +594,55 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1ContractorsContractorUuidAddressHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1ContractorsContractorUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | -| `contractorAddressUpdateBody` | [ContractorAddressUpdateBody](../../models/components/ContractorAddressUpdateBody.md) | :heavy_check_mark: | N/A | +| `contractorUpdateRequestBody` | [ContractorUpdateRequestBody](../../models/components/ContractorUpdateRequestBody.md) | :heavy_check_mark: | N/A | ### Response -**[PutV1ContractorsContractorUuidAddressResponse](../../models/operations/PutV1ContractorsContractorUuidAddressResponse.md)** +**[PutV1ContractorsContractorUuidResponse](../../models/operations/PutV1ContractorsContractorUuidResponse.md)** ### Errors | Error Type | Status Code | Content Type | | -------------------------------------- | -------------------------------------- | -------------------------------------- | | models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/UnprocessableEntityError | 409, 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## getV1CompaniesCompanyIdContractorsPaymentDetails - -Get payment details for contractors in a company. This endpoint returns a list of all contractors -associated with the specified company, including their payment methods and bank account details -if they are paid via direct deposit. - -For contractors paid by direct deposit, the response includes their bank account information -with sensitive data masked for security. The payment details also include information about -how their payments are split if they have multiple bank accounts configured. - -For contractors paid by check, only the basic payment method information is returned. - -### Response Details -- For direct deposit contractors: - - Bank account details (masked) - - Payment splits configuration - - Routing numbers - - Account types -- For check payments: - - Basic payment method designation - -### Common Use Cases -- Fetching contractor payment information for payroll processing -- Verifying contractor payment methods -- Reviewing payment split configurations +## delete -`encrypted_account_number` is available only with the additional scope `contractor_payment_methods:read:account_numbers`. +A contractor can only be deleted when there are no contractor payments. -scope: `contractor_payment_methods:read` +scope: `contractors:manage` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdContractorsPaymentDetailsHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdContractorsPaymentDetailsResponse; +import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1ContractorsContractorUuidHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1ContractorsContractorUuidResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, Exception { + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1CompaniesCompanyIdContractorsPaymentDetailsResponse res = sdk.contractors().getV1CompaniesCompanyIdContractorsPaymentDetails() - .companyId("") - .xGustoAPIVersion(GetV1CompaniesCompanyIdContractorsPaymentDetailsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + DeleteV1ContractorsContractorUuidResponse res = sdk.contractors().delete() + .xGustoAPIVersion(DeleteV1ContractorsContractorUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .contractorUuid("") .call(); - if (res.contractorPaymentDetailsList().isPresent()) { - System.out.println(res.contractorPaymentDetailsList().get()); - } + // handle response } } ``` @@ -676,127 +651,122 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company. This identifies the company whose contractor payment details you want to retrieve. | -| `contractorUuid` | *Optional\* | :heavy_minus_sign: | Optional filter to get payment details for a specific contractor. When provided, the response will only include payment details for this contractor. | -| `contractorPaymentGroupUuid` | *Optional\* | :heavy_minus_sign: | 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. | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1ContractorsContractorUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | ### Response -**[GetV1CompaniesCompanyIdContractorsPaymentDetailsResponse](../../models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsResponse.md)** +**[DeleteV1ContractorsContractorUuidResponse](../../models/operations/DeleteV1ContractorsContractorUuidResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| --------------------------------- | --------------------------------- | --------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | - -## postV1ContractorsContractorUuidRehire - -## Purpose -Schedules a contractor rehire for a given date. Creates a new employment record for the contractor. +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | -## Prerequisites -Before calling this endpoint: -1. The contractor must be inactive (previously dismissed) -2. The contractor must not already have an upcoming employment +## list -## Related webhooks -- `contractor.reactivated`: Fires when the contractor becomes active again (on or after start_date) +Get all contractors, active and inactive, individual and business, for a company. -scope: `contractors:write` +scope: `contractors:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; -import com.gusto.embedded_api_v_2025_11_15.models.operations.*; +import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyUuidContractorsRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyUuidContractorsResponse; import java.lang.Exception; -import java.time.LocalDate; public class Application { - public static void main(String[] args) throws Exception { + public static void main(String[] args) throws NotFoundErrorObject, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostV1ContractorsContractorUuidRehireResponse res = sdk.contractors().postV1ContractorsContractorUuidRehire() - .contractorUuid("") - .xGustoAPIVersion(PostV1ContractorsContractorUuidRehireHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) - .requestBody(PostV1ContractorsContractorUuidRehireRequestBody.builder() - .startDate(LocalDate.parse("2025-07-01")) - .build()) + GetV1CompaniesCompanyUuidContractorsRequest req = GetV1CompaniesCompanyUuidContractorsRequest.builder() + .companyUuid("") + .sortBy("created_at:asc") + .build(); + + GetV1CompaniesCompanyUuidContractorsResponse res = sdk.contractors().list() + .request(req) .call(); - // handle response + if (res.contractors().isPresent()) { + System.out.println(res.contractors().get()); + } } } ``` ### Parameters -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1ContractorsContractorUuidRehireHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `requestBody` | [Optional\](../../models/operations/PostV1ContractorsContractorUuidRehireRequestBody.md) | :heavy_minus_sign: | N/A | +| Parameter | Type | Required | Description | +| --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | +| `request` | [GetV1CompaniesCompanyUuidContractorsRequest](../../models/operations/GetV1CompaniesCompanyUuidContractorsRequest.md) | :heavy_check_mark: | The request object to use for the request. | ### Response -**[PostV1ContractorsContractorUuidRehireResponse](../../models/operations/PostV1ContractorsContractorUuidRehireResponse.md)** +**[GetV1CompaniesCompanyUuidContractorsResponse](../../models/operations/GetV1CompaniesCompanyUuidContractorsResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| -------------------------- | -------------------------- | -------------------------- | -| models/errors/APIException | 4XX, 5XX | \*/\* | - -## deleteV1ContractorsContractorUuidRehire - -## Purpose -Cancels a pending contractor rehire. For future-dated rehires, cancellation is available anytime before the date. -For past-dated rehires, cancellation is only available within the 2-day grace period. +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | -## Prerequisites -Before calling this endpoint: -- The contractor must have a pending rehire (upcoming employment) +## create -## Related webhooks -- `contractor.deactivated`: Fires when the contractor returns to inactive state after cancellation +Create an individual or business contractor. -scope: `contractors:write` +scope: `contractors:manage` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; -import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1ContractorsContractorUuidRehireHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1ContractorsContractorUuidRehireResponse; +import com.gusto.embedded_api_v_2025_11_15.models.components.ContractorCreateRequestBody; +import com.gusto.embedded_api_v_2025_11_15.models.components.ContractorCreateRequestBodyWageType; +import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1CompaniesCompanyUuidContractorsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1CompaniesCompanyUuidContractorsResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws Exception { + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - DeleteV1ContractorsContractorUuidRehireResponse res = sdk.contractors().deleteV1ContractorsContractorUuidRehire() - .contractorUuid("") - .xGustoAPIVersion(DeleteV1ContractorsContractorUuidRehireHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + PostV1CompaniesCompanyUuidContractorsResponse res = sdk.contractors().create() + .xGustoAPIVersion(PostV1CompaniesCompanyUuidContractorsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .companyUuid("") + .contractorCreateRequestBody(ContractorCreateRequestBody.builder() + .wageType(ContractorCreateRequestBodyWageType.HOURLY) + .startDate("2020-01-11") + .hourlyRate("40.0") + .build()) .call(); - // handle response + if (res.contractor().isPresent()) { + System.out.println(res.contractor().get()); + } } } ``` @@ -805,62 +775,87 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | -| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1ContractorsContractorUuidRehireHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1CompaniesCompanyUuidContractorsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | +| `contractorCreateRequestBody` | [ContractorCreateRequestBody](../../models/components/ContractorCreateRequestBody.md) | :heavy_check_mark: | N/A | ### Response -**[DeleteV1ContractorsContractorUuidRehireResponse](../../models/operations/DeleteV1ContractorsContractorUuidRehireResponse.md)** +**[PostV1CompaniesCompanyUuidContractorsResponse](../../models/operations/PostV1CompaniesCompanyUuidContractorsResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| -------------------------- | -------------------------- | -------------------------- | -| models/errors/APIException | 4XX, 5XX | \*/\* | +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | -## postV1ContractorsContractorUuidTermination +## getOnboardingStatus -## Purpose -Schedules a contractor dismissal for a given date. Supports both immediate (past dates) and future-dated dismissals. +Retrieves a contractor's onboarding status. The data returned helps inform the required onboarding steps and respective completion status. -## Prerequisites -Before calling this endpoint: -1. The contractor must be active (no existing pending dismissal) -2. The contractor must have a current employment +## onboarding_status -## Related webhooks -- `contractor.deactivated`: Fires when the contractor becomes inactive (on or after end_date) +### Admin-facilitated onboarding +| onboarding_status | Description | +|:------------------|------------:| +| `admin_onboarding_incomplete` | Admin needs to enter basic information about the contractor. | +| `admin_onboarding_review` | All information has been completed and admin needs to confirm onboarding. | +| `onboarding_completed` | Contractor has been fully onboarded and verified. | -scope: `contractors:write` +### Contractor self-onboarding + +| onboarding_status | Description | +| --- | ----------- | +| `admin_onboarding_incomplete` | Admin needs to enter basic information about the contractor. | +| `self_onboarding_not_invited` | Admin has the intention to invite the contractor to self-onboard (e.g., marking a checkbox), but the system has not yet sent the invitation. | +| `self_onboarding_invited` | Contractor has been sent an invitation to self-onboard. | +| `self_onboarding_started` | Contractor has started the self-onboarding process. | +| `self_onboarding_review` | Admin needs to review contractors's entered information and confirm onboarding. | +| `onboarding_completed` | Contractor has been fully onboarded and verified. | + +## onboarding_steps + +| onboarding_steps | Requirement(s) to be completed | +|:-----------------|-------------------------------:| +| `basic_details` | Add individual contractor's first name, last name, social security number or Business name and EIN depending on the contractor type | +| `add_address` | Add contractor address. | +| `compensation_details` | Add contractor compensation. | +| `payment_details` | (optional) Set up contractor's direct deposit or set to check. | +| `sign_documents` | Contractor forms (e.g., W9) are generated & signed. | +| `file_new_hire_report` | Contractor new hire report is generated. | + +scope: `contractors:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; -import com.gusto.embedded_api_v_2025_11_15.models.operations.*; +import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ContractorsContractorUuidOnboardingStatusHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ContractorsContractorUuidOnboardingStatusResponse; import java.lang.Exception; -import java.time.LocalDate; public class Application { - public static void main(String[] args) throws Exception { + public static void main(String[] args) throws NotFoundErrorObject, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostV1ContractorsContractorUuidTerminationResponse res = sdk.contractors().postV1ContractorsContractorUuidTermination() + GetV1ContractorsContractorUuidOnboardingStatusResponse res = sdk.contractors().getOnboardingStatus() + .xGustoAPIVersion(GetV1ContractorsContractorUuidOnboardingStatusHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .contractorUuid("") - .xGustoAPIVersion(PostV1ContractorsContractorUuidTerminationHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) - .requestBody(PostV1ContractorsContractorUuidTerminationRequestBody.builder() - .endDate(LocalDate.parse("2025-06-15")) - .build()) .call(); - // handle response + if (res.contractorOnboardingStatus().isPresent()) { + System.out.println(res.contractorOnboardingStatus().get()); + } } } ``` @@ -869,60 +864,70 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1ContractorsContractorUuidOnboardingStatusHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1ContractorsContractorUuidTerminationHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `requestBody` | [Optional\](../../models/operations/PostV1ContractorsContractorUuidTerminationRequestBody.md) | :heavy_minus_sign: | N/A | ### Response -**[PostV1ContractorsContractorUuidTerminationResponse](../../models/operations/PostV1ContractorsContractorUuidTerminationResponse.md)** +**[GetV1ContractorsContractorUuidOnboardingStatusResponse](../../models/operations/GetV1ContractorsContractorUuidOnboardingStatusResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| -------------------------- | -------------------------- | -------------------------- | -| models/errors/APIException | 4XX, 5XX | \*/\* | +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | -## deleteV1ContractorsContractorUuidTermination +## updateOnboardingStatus -## Purpose -Cancels a pending contractor dismissal. For future-dated dismissals, cancellation is available anytime before the date. -For past-dated dismissals, cancellation is only available within the 2-day grace period. +Updates a contractor's onboarding status. -## Prerequisites -Before calling this endpoint: -- The contractor must have a pending dismissal (scheduled or within the grace period) +Below is a list of valid onboarding status changes depending on the intended action to be performed on behalf of the contractor. -## Related webhooks -- `contractor.reactivated`: Fires when the contractor becomes active again after cancellation +| Action | current onboarding_status | new onboarding_status | +|:------------------|:------------:|----------:| +| Mark a contractor as self-onboarding | `admin_onboarding_incomplete` | `self_onboarding_not_invited` | +| Invite a contractor to self-onboard | `admin_onboarding_incomplete` or `self_onboarding_not_invited` | `self_onboarding_invited` | +| Cancel a contractor's self-onboarding | `self_onboarding_invited` or `self_onboarding_not_invited` | `admin_onboarding_incomplete` | +| Review a contractor's self-onboarded info | `self_onboarding_started` | `self_onboarding_review` | +| Finish a contractor's onboarding | `admin_onboarding_review` or `self_onboarding_review` | `onboarding_completed` | scope: `contractors:write` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; -import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1ContractorsContractorUuidTerminationHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1ContractorsContractorUuidTerminationResponse; +import com.gusto.embedded_api_v_2025_11_15.models.components.ContractorOnboardingStatusUpdateRequestBody; +import com.gusto.embedded_api_v_2025_11_15.models.components.ContractorOnboardingStatusUpdateRequestBodyOnboardingStatus; +import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1ContractorsContractorUuidOnboardingStatusHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1ContractorsContractorUuidOnboardingStatusResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws Exception { + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - DeleteV1ContractorsContractorUuidTerminationResponse res = sdk.contractors().deleteV1ContractorsContractorUuidTermination() + PutV1ContractorsContractorUuidOnboardingStatusResponse res = sdk.contractors().updateOnboardingStatus() + .xGustoAPIVersion(PutV1ContractorsContractorUuidOnboardingStatusHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .contractorUuid("") - .xGustoAPIVersion(DeleteV1ContractorsContractorUuidTerminationHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .contractorOnboardingStatusUpdateRequestBody(ContractorOnboardingStatusUpdateRequestBody.builder() + .onboardingStatus(ContractorOnboardingStatusUpdateRequestBodyOnboardingStatus.SELF_ONBOARDING_STARTED) + .build()) .call(); - // handle response + if (res.contractorOnboardingStatus().isPresent()) { + System.out.println(res.contractorOnboardingStatus().get()); + } } } ``` @@ -931,15 +936,18 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1ContractorsContractorUuidOnboardingStatusHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | -| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1ContractorsContractorUuidTerminationHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorOnboardingStatusUpdateRequestBody` | [ContractorOnboardingStatusUpdateRequestBody](../../models/components/ContractorOnboardingStatusUpdateRequestBody.md) | :heavy_check_mark: | N/A | ### Response -**[DeleteV1ContractorsContractorUuidTerminationResponse](../../models/operations/DeleteV1ContractorsContractorUuidTerminationResponse.md)** +**[PutV1ContractorsContractorUuidOnboardingStatusResponse](../../models/operations/PutV1ContractorsContractorUuidOnboardingStatusResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| -------------------------- | -------------------------- | -------------------------- | -| models/errors/APIException | 4XX, 5XX | \*/\* | \ No newline at end of file +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/sdks/departments/README.md b/gusto_embedded_v_2025_11_15/docs/sdks/departments/README.md index c5ac70320..e705bc4fc 100644 --- a/gusto_embedded_v_2025_11_15/docs/sdks/departments/README.md +++ b/gusto_embedded_v_2025_11_15/docs/sdks/departments/README.md @@ -4,30 +4,30 @@ ### Available Operations -* [getAll](#getall) - Get all departments of a company -* [create](#create) - Create a department * [get](#get) - Get a department * [update](#update) - Update a department * [delete](#delete) - Delete a department * [addPeople](#addpeople) - Add people to a department * [removePeople](#removepeople) - Remove people from a department +* [getAll](#getall) - Get all departments of a company +* [create](#create) - Create a department -## getAll +## get -Get all of the departments for a given company with the employees and contractors assigned to that department. +Get a department given the UUID scope: `departments:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetCompaniesDepartmentsHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetCompaniesDepartmentsResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetDepartmentHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetDepartmentResponse; import java.lang.Exception; public class Application { @@ -38,13 +38,13 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetCompaniesDepartmentsResponse res = sdk.departments().getAll() - .companyUuid("") - .xGustoAPIVersion(GetCompaniesDepartmentsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + GetDepartmentResponse res = sdk.departments().get() + .xGustoAPIVersion(GetDepartmentHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .departmentUuid("") .call(); - if (res.departmentList().isPresent()) { - System.out.println(res.departmentList().get()); + if (res.department().isPresent()) { + System.out.println(res.department().get()); } } } @@ -54,12 +54,12 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetCompaniesDepartmentsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetDepartmentHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `departmentUuid` | *String* | :heavy_check_mark: | The UUID of the department | ### Response -**[GetCompaniesDepartmentsResponse](../../models/operations/GetCompaniesDepartmentsResponse.md)** +**[GetDepartmentResponse](../../models/operations/GetDepartmentResponse.md)** ### Errors @@ -68,38 +68,38 @@ public class Application { | models/errors/NotFoundErrorObject | 404 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## create +## update -Create a department +Update a department scope: `departments:write` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; -import com.gusto.embedded_api_v_2025_11_15.models.components.DepartmentCreateRequestBody; -import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PostDepartmentsHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PostDepartmentsResponse; +import com.gusto.embedded_api_v_2025_11_15.models.components.DepartmentUpdateRequestBody; +import com.gusto.embedded_api_v_2025_11_15.models.errors.*; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PutDepartmentsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PutDepartmentsResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + public static void main(String[] args) throws NotFoundErrorObject, ConflictErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostDepartmentsResponse res = sdk.departments().create() - .companyUuid("") - .xGustoAPIVersion(PostDepartmentsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) - .departmentCreateRequestBody(DepartmentCreateRequestBody.builder() + PutDepartmentsResponse res = sdk.departments().update() + .xGustoAPIVersion(PutDepartmentsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .departmentUuid("") + .departmentUpdateRequestBody(DepartmentUpdateRequestBody.builder() + .version("56d00c178bc7393b2a206ed6a86afcb4") .title("Stage Hand") .build()) .call(); @@ -115,56 +115,56 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PostDepartmentsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `departmentCreateRequestBody` | [DepartmentCreateRequestBody](../../models/components/DepartmentCreateRequestBody.md) | :heavy_check_mark: | N/A | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutDepartmentsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `departmentUuid` | *String* | :heavy_check_mark: | The UUID of the department | +| `departmentUpdateRequestBody` | [DepartmentUpdateRequestBody](../../models/components/DepartmentUpdateRequestBody.md) | :heavy_check_mark: | N/A | ### Response -**[PostDepartmentsResponse](../../models/operations/PostDepartmentsResponse.md)** +**[PutDepartmentsResponse](../../models/operations/PutDepartmentsResponse.md)** ### Errors | Error Type | Status Code | Content Type | | -------------------------------------- | -------------------------------------- | -------------------------------------- | | models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/ConflictErrorObject | 409 | application/json | | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## get +## delete -Get a department given the UUID +Delete a department. You cannot delete a department until all employees and contractors have been removed. -scope: `departments:read` +scope: `departments:write` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetDepartmentHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetDepartmentResponse; +import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteDepartmentHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteDepartmentResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, Exception { + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetDepartmentResponse res = sdk.departments().get() + DeleteDepartmentResponse res = sdk.departments().delete() + .xGustoAPIVersion(DeleteDepartmentHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .departmentUuid("") - .xGustoAPIVersion(GetDepartmentHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .call(); - if (res.department().isPresent()) { - System.out.println(res.department().get()); - } + // handle response } } ``` @@ -173,53 +173,54 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteDepartmentHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `departmentUuid` | *String* | :heavy_check_mark: | The UUID of the department | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetDepartmentHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | ### Response -**[GetDepartmentResponse](../../models/operations/GetDepartmentResponse.md)** +**[DeleteDepartmentResponse](../../models/operations/DeleteDepartmentResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| --------------------------------- | --------------------------------- | --------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | -## update +## addPeople -Update a department +Add employees and contractors to a department scope: `departments:write` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; -import com.gusto.embedded_api_v_2025_11_15.models.components.DepartmentUpdateRequestBody; -import com.gusto.embedded_api_v_2025_11_15.models.errors.*; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PutDepartmentsHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PutDepartmentsResponse; +import com.gusto.embedded_api_v_2025_11_15.models.components.DepartmentPeopleRequestBody; +import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PutAddPeopleToDepartmentHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PutAddPeopleToDepartmentResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, ConflictErrorObject, UnprocessableEntityError, Exception { + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutDepartmentsResponse res = sdk.departments().update() + PutAddPeopleToDepartmentResponse res = sdk.departments().addPeople() + .xGustoAPIVersion(PutAddPeopleToDepartmentHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .departmentUuid("") - .xGustoAPIVersion(PutDepartmentsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) - .departmentUpdateRequestBody(DepartmentUpdateRequestBody.builder() + .departmentPeopleRequestBody(DepartmentPeopleRequestBody.builder() .version("56d00c178bc7393b2a206ed6a86afcb4") - .title("Stage Hand") .build()) .call(); @@ -234,40 +235,40 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutAddPeopleToDepartmentHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `departmentUuid` | *String* | :heavy_check_mark: | The UUID of the department | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutDepartmentsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `departmentUpdateRequestBody` | [DepartmentUpdateRequestBody](../../models/components/DepartmentUpdateRequestBody.md) | :heavy_check_mark: | N/A | +| `departmentPeopleRequestBody` | [DepartmentPeopleRequestBody](../../models/components/DepartmentPeopleRequestBody.md) | :heavy_check_mark: | N/A | ### Response -**[PutDepartmentsResponse](../../models/operations/PutDepartmentsResponse.md)** +**[PutAddPeopleToDepartmentResponse](../../models/operations/PutAddPeopleToDepartmentResponse.md)** ### Errors | Error Type | Status Code | Content Type | | -------------------------------------- | -------------------------------------- | -------------------------------------- | | models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/ConflictErrorObject | 409 | application/json | | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## delete +## removePeople -Delete a department. You cannot delete a department until all employees and contractors have been removed. +Remove employees and contractors from a department scope: `departments:write` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; +import com.gusto.embedded_api_v_2025_11_15.models.components.DepartmentPeopleRequestBody; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteDepartmentHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteDepartmentResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PutRemovePeopleFromDepartmentHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PutRemovePeopleFromDepartmentResponse; import java.lang.Exception; public class Application { @@ -278,12 +279,17 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - DeleteDepartmentResponse res = sdk.departments().delete() + PutRemovePeopleFromDepartmentResponse res = sdk.departments().removePeople() + .xGustoAPIVersion(PutRemovePeopleFromDepartmentHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .departmentUuid("") - .xGustoAPIVersion(DeleteDepartmentHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .departmentPeopleRequestBody(DepartmentPeopleRequestBody.builder() + .version("56d00c178bc7393b2a206ed6a86afcb4") + .build()) .call(); - // handle response + if (res.department().isPresent()) { + System.out.println(res.department().get()); + } } } ``` @@ -292,12 +298,13 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutRemovePeopleFromDepartmentHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `departmentUuid` | *String* | :heavy_check_mark: | The UUID of the department | -| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteDepartmentHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `departmentPeopleRequestBody` | [DepartmentPeopleRequestBody](../../models/components/DepartmentPeopleRequestBody.md) | :heavy_check_mark: | N/A | ### Response -**[DeleteDepartmentResponse](../../models/operations/DeleteDepartmentResponse.md)** +**[PutRemovePeopleFromDepartmentResponse](../../models/operations/PutRemovePeopleFromDepartmentResponse.md)** ### Errors @@ -307,44 +314,39 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## addPeople +## getAll -Add employees and contractors to a department +Get all of the departments for a given company with the employees and contractors assigned to that department. -scope: `departments:write` +scope: `departments:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; -import com.gusto.embedded_api_v_2025_11_15.models.components.DepartmentPeopleRequestBody; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PutAddPeopleToDepartmentHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PutAddPeopleToDepartmentResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetCompaniesDepartmentsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetCompaniesDepartmentsResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + public static void main(String[] args) throws NotFoundErrorObject, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutAddPeopleToDepartmentResponse res = sdk.departments().addPeople() - .departmentUuid("") - .xGustoAPIVersion(PutAddPeopleToDepartmentHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) - .departmentPeopleRequestBody(DepartmentPeopleRequestBody.builder() - .version("56d00c178bc7393b2a206ed6a86afcb4") - .build()) + GetCompaniesDepartmentsResponse res = sdk.departments().getAll() + .xGustoAPIVersion(GetCompaniesDepartmentsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .companyUuid("") .call(); - if (res.department().isPresent()) { - System.out.println(res.department().get()); + if (res.departmentList().isPresent()) { + System.out.println(res.departmentList().get()); } } } @@ -354,40 +356,38 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `departmentUuid` | *String* | :heavy_check_mark: | The UUID of the department | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutAddPeopleToDepartmentHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `departmentPeopleRequestBody` | [DepartmentPeopleRequestBody](../../models/components/DepartmentPeopleRequestBody.md) | :heavy_check_mark: | N/A | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetCompaniesDepartmentsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | ### Response -**[PutAddPeopleToDepartmentResponse](../../models/operations/PutAddPeopleToDepartmentResponse.md)** +**[GetCompaniesDepartmentsResponse](../../models/operations/GetCompaniesDepartmentsResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| -------------------------------------- | -------------------------------------- | -------------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/UnprocessableEntityError | 422 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | -## removePeople +## create -Remove employees and contractors from a department +Create a department scope: `departments:write` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; -import com.gusto.embedded_api_v_2025_11_15.models.components.DepartmentPeopleRequestBody; +import com.gusto.embedded_api_v_2025_11_15.models.components.DepartmentCreateRequestBody; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PutRemovePeopleFromDepartmentHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PutRemovePeopleFromDepartmentResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostDepartmentsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostDepartmentsResponse; import java.lang.Exception; public class Application { @@ -398,11 +398,11 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutRemovePeopleFromDepartmentResponse res = sdk.departments().removePeople() - .departmentUuid("") - .xGustoAPIVersion(PutRemovePeopleFromDepartmentHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) - .departmentPeopleRequestBody(DepartmentPeopleRequestBody.builder() - .version("56d00c178bc7393b2a206ed6a86afcb4") + PostDepartmentsResponse res = sdk.departments().create() + .xGustoAPIVersion(PostDepartmentsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .companyUuid("") + .departmentCreateRequestBody(DepartmentCreateRequestBody.builder() + .title("Stage Hand") .build()) .call(); @@ -417,13 +417,13 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `departmentUuid` | *String* | :heavy_check_mark: | The UUID of the department | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutRemovePeopleFromDepartmentHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `departmentPeopleRequestBody` | [DepartmentPeopleRequestBody](../../models/components/DepartmentPeopleRequestBody.md) | :heavy_check_mark: | N/A | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostDepartmentsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | +| `departmentCreateRequestBody` | [DepartmentCreateRequestBody](../../models/components/DepartmentCreateRequestBody.md) | :heavy_check_mark: | N/A | ### Response -**[PutRemovePeopleFromDepartmentResponse](../../models/operations/PutRemovePeopleFromDepartmentResponse.md)** +**[PostDepartmentsResponse](../../models/operations/PostDepartmentsResponse.md)** ### Errors diff --git a/gusto_embedded_v_2025_11_15/docs/sdks/employeeaddresses/README.md b/gusto_embedded_v_2025_11_15/docs/sdks/employeeaddresses/README.md index c966212dc..3449ee720 100644 --- a/gusto_embedded_v_2025_11_15/docs/sdks/employeeaddresses/README.md +++ b/gusto_embedded_v_2025_11_15/docs/sdks/employeeaddresses/README.md @@ -44,8 +44,8 @@ public class Application { .build(); GetV1EmployeesEmployeeIdHomeAddressesResponse res = sdk.employeeAddresses().get() - .employeeId("") .xGustoAPIVersion(GetV1EmployeesEmployeeIdHomeAddressesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .employeeId("") .call(); if (res.employeeAddressList().isPresent()) { @@ -59,8 +59,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeIdHomeAddressesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | ### Response @@ -103,8 +103,8 @@ public class Application { .build(); PostV1EmployeesEmployeeIdHomeAddressesResponse res = sdk.employeeAddresses().create() - .employeeId("") .xGustoAPIVersion(PostV1EmployeesEmployeeIdHomeAddressesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .employeeId("") .requestBody(PostV1EmployeesEmployeeIdHomeAddressesRequestBody.builder() .street1("300 3rd Street") .city("San Francisco") @@ -125,8 +125,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | | `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1EmployeesEmployeeIdHomeAddressesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | | `requestBody` | [PostV1EmployeesEmployeeIdHomeAddressesRequestBody](../../models/operations/PostV1EmployeesEmployeeIdHomeAddressesRequestBody.md) | :heavy_check_mark: | N/A | ### Response @@ -170,8 +170,8 @@ public class Application { .build(); GetV1HomeAddressesHomeAddressUuidResponse res = sdk.employeeAddresses().retrieveHomeAddress() - .homeAddressUuid("") .xGustoAPIVersion(GetV1HomeAddressesHomeAddressUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .homeAddressUuid("") .call(); if (res.employeeAddress().isPresent()) { @@ -185,8 +185,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `homeAddressUuid` | *String* | :heavy_check_mark: | The UUID of the home address | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1HomeAddressesHomeAddressUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `homeAddressUuid` | *String* | :heavy_check_mark: | The UUID of the home address | ### Response @@ -346,8 +346,8 @@ public class Application { .build(); GetV1EmployeesEmployeeIdWorkAddressesResponse res = sdk.employeeAddresses().getWorkAddresses() - .employeeId("") .xGustoAPIVersion(GetV1EmployeesEmployeeIdWorkAddressesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .employeeId("") .call(); if (res.employeeWorkAddressesList().isPresent()) { @@ -361,8 +361,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeIdWorkAddressesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | ### Response @@ -403,8 +403,8 @@ public class Application { .build(); PostV1EmployeesEmployeeIdWorkAddressesResponse res = sdk.employeeAddresses().createWorkAddress() - .employeeId("") .xGustoAPIVersion(PostV1EmployeesEmployeeIdWorkAddressesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .employeeId("") .requestBody(PostV1EmployeesEmployeeIdWorkAddressesRequestBody.builder() .locationUuid("6a119be7-b4b0-4e27-aaa0-89d5f2524635") .effectiveDate(LocalDate.parse("2023-05-15")) @@ -422,8 +422,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | | `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1EmployeesEmployeeIdWorkAddressesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | | `requestBody` | [PostV1EmployeesEmployeeIdWorkAddressesRequestBody](../../models/operations/PostV1EmployeesEmployeeIdWorkAddressesRequestBody.md) | :heavy_check_mark: | N/A | ### Response @@ -465,8 +465,8 @@ public class Application { .build(); GetV1WorkAddressesWorkAddressUuidResponse res = sdk.employeeAddresses().retrieveWorkAddress() - .workAddressUuid("") .xGustoAPIVersion(GetV1WorkAddressesWorkAddressUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .workAddressUuid("") .call(); if (res.employeeWorkAddress().isPresent()) { @@ -480,8 +480,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `workAddressUuid` | *String* | :heavy_check_mark: | The UUID of the work address | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1WorkAddressesWorkAddressUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `workAddressUuid` | *String* | :heavy_check_mark: | The UUID of the work address | ### Response @@ -522,8 +522,8 @@ public class Application { .build(); PutV1WorkAddressesWorkAddressUuidResponse res = sdk.employeeAddresses().updateWorkAddress() - .workAddressUuid("") .xGustoAPIVersion(PutV1WorkAddressesWorkAddressUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .workAddressUuid("") .requestBody(PutV1WorkAddressesWorkAddressUuidRequestBody.builder() .version("56d00c178bc7393b2a206ed6a86afcb4") .locationUuid("6a119be7-b4b0-4e27-aaa0-89d5f2524635") @@ -542,8 +542,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `workAddressUuid` | *String* | :heavy_check_mark: | The UUID of the work address | | `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1WorkAddressesWorkAddressUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `workAddressUuid` | *String* | :heavy_check_mark: | The UUID of the work address | | `requestBody` | [PutV1WorkAddressesWorkAddressUuidRequestBody](../../models/operations/PutV1WorkAddressesWorkAddressUuidRequestBody.md) | :heavy_check_mark: | N/A | ### Response @@ -586,8 +586,8 @@ public class Application { .build(); DeleteV1WorkAddressesWorkAddressUuidResponse res = sdk.employeeAddresses().deleteWorkAddress() - .workAddressUuid("") .xGustoAPIVersion(DeleteV1WorkAddressesWorkAddressUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .workAddressUuid("") .call(); // handle response @@ -599,8 +599,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `workAddressUuid` | *String* | :heavy_check_mark: | The UUID of the work address | | `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1WorkAddressesWorkAddressUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `workAddressUuid` | *String* | :heavy_check_mark: | The UUID of the work address | ### Response diff --git a/gusto_embedded_v_2025_11_15/docs/sdks/employeebenefits/README.md b/gusto_embedded_v_2025_11_15/docs/sdks/employeebenefits/README.md index 6159e89b2..8b137ae58 100644 --- a/gusto_embedded_v_2025_11_15/docs/sdks/employeebenefits/README.md +++ b/gusto_embedded_v_2025_11_15/docs/sdks/employeebenefits/README.md @@ -479,8 +479,8 @@ public class Application { .build(); GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesResponse res = sdk.employeeBenefits().getV1EmployeesEmployeeUuidSection603HighEarnerStatuses() - .employeeUuid("") .xGustoAPIVersion(GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .employeeUuid("") .call(); if (res.employeeSection603HighEarnerStatusList().isPresent()) { @@ -494,8 +494,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `employeeUuid` | *String* | :heavy_check_mark: | The UUID of the employee | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeUuid` | *String* | :heavy_check_mark: | The UUID of the employee | ### Response @@ -540,8 +540,8 @@ public class Application { .build(); PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesResponse res = sdk.employeeBenefits().postV1EmployeesEmployeeUuidSection603HighEarnerStatuses() - .employeeUuid("") .xGustoAPIVersion(PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .employeeUuid("") .employeeSection603HighEarnerStatusCreateRequest(EmployeeSection603HighEarnerStatusCreateRequest.builder() .effectiveYear(2026L) .isHighEarner(true) @@ -559,8 +559,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `employeeUuid` | *String* | :heavy_check_mark: | The UUID of the employee | | `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeUuid` | *String* | :heavy_check_mark: | The UUID of the employee | | `employeeSection603HighEarnerStatusCreateRequest` | [EmployeeSection603HighEarnerStatusCreateRequest](../../models/components/EmployeeSection603HighEarnerStatusCreateRequest.md) | :heavy_check_mark: | N/A | ### Response @@ -606,9 +606,9 @@ public class Application { .build(); GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearResponse res = sdk.employeeBenefits().getV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYear() + .xGustoAPIVersion(GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .employeeUuid("") .effectiveYear(857230L) - .xGustoAPIVersion(GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .call(); if (res.employeeSection603HighEarnerStatus().isPresent()) { @@ -622,9 +622,9 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `employeeUuid` | *String* | :heavy_check_mark: | The UUID of the employee | | `effectiveYear` | *long* | :heavy_check_mark: | The effective year for the Section 603 status | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | ### Response @@ -670,9 +670,9 @@ public class Application { .build(); PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearResponse res = sdk.employeeBenefits().patchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYear() + .xGustoAPIVersion(PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .employeeUuid("") .effectiveYear(152322L) - .xGustoAPIVersion(PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .employeeSection603HighEarnerStatusUpdateRequest(EmployeeSection603HighEarnerStatusUpdateRequest.builder() .isHighEarner(true) .build()) @@ -689,9 +689,9 @@ public class Application { | Parameter | Type | Required | Description | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `employeeUuid` | *String* | :heavy_check_mark: | The UUID of the employee | | `effectiveYear` | *long* | :heavy_check_mark: | The effective year for the Section 603 status | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `employeeSection603HighEarnerStatusUpdateRequest` | [EmployeeSection603HighEarnerStatusUpdateRequest](../../models/components/EmployeeSection603HighEarnerStatusUpdateRequest.md) | :heavy_check_mark: | N/A | ### Response diff --git a/gusto_embedded_v_2025_11_15/docs/sdks/employeeemployments/README.md b/gusto_embedded_v_2025_11_15/docs/sdks/employeeemployments/README.md index 4d7b1be79..388474e58 100644 --- a/gusto_embedded_v_2025_11_15/docs/sdks/employeeemployments/README.md +++ b/gusto_embedded_v_2025_11_15/docs/sdks/employeeemployments/README.md @@ -4,35 +4,33 @@ ### Available Operations -* [getTerminations](#getterminations) - Get terminations for an employee -* [createTermination](#createtermination) - Create an employee termination -* [deleteTermination](#deletetermination) - Delete an employee termination -* [updateTermination](#updatetermination) - Update an employee termination * [getRehire](#getrehire) - Get an employee rehire * [createRehire](#createrehire) - Create an employee rehire * [rehire](#rehire) - Update an employee rehire * [deleteRehire](#deleterehire) - Delete an employee rehire * [getHistory](#gethistory) - Get employment history for an employee +* [getTerminations](#getterminations) - Get terminations for an employee +* [createTermination](#createtermination) - Create an employee termination +* [deleteTermination](#deletetermination) - Delete an employee termination +* [updateTermination](#updatetermination) - Update an employee termination * [getV1TerminationsEmployeeId](#getv1terminationsemployeeid) - Get an employee termination -## getTerminations - -Terminations are created whenever an employee is scheduled to leave the company. The only things required are an effective date (their last day of work) and whether they should receive their wages in a one-off termination payroll or with the rest of the company. +## getRehire -Note that some states require employees to receive their final wages within 24 hours (unless they consent otherwise,) in which case running a one-off payroll may be the only option. +Retrieve an employee's rehire, which contains information on when the employee returns to work. scope: `employments:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1EmployeesEmployeeIdTerminationsHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1EmployeesEmployeeIdTerminationsResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1EmployeesEmployeeIdRehireResponse; import java.lang.Exception; public class Application { @@ -43,13 +41,13 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1EmployeesEmployeeIdTerminationsResponse res = sdk.employeeEmployments().getTerminations() - .xGustoAPIVersion(GetV1EmployeesEmployeeIdTerminationsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + GetV1EmployeesEmployeeIdRehireResponse res = sdk.employeeEmployments().getRehire() + .xGustoAPIVersion(GetV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .employeeId("") .call(); - if (res.terminations().isPresent()) { - System.out.println(res.terminations().get()); + if (res.rehire().isPresent()) { + System.out.println(res.rehire().get()); } } } @@ -59,12 +57,12 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeIdTerminationsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | ### Response -**[GetV1EmployeesEmployeeIdTerminationsResponse](../../models/operations/GetV1EmployeesEmployeeIdTerminationsResponse.md)** +**[GetV1EmployeesEmployeeIdRehireResponse](../../models/operations/GetV1EmployeesEmployeeIdRehireResponse.md)** ### Errors @@ -73,24 +71,24 @@ public class Application { | models/errors/NotFoundErrorObject | 404 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## createTermination - -Create a termination for an employee. The only things required are an effective date (their last day of work) and whether they should receive their wages in a one-off termination payroll or with the rest of the company. +## createRehire -Note that some states require employees to receive their final wages within 24 hours (unless they consent otherwise,) in which case running a one-off payroll may be the only option. +Rehire is created whenever an employee is scheduled to return to the company. scope: `employments:write` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; +import com.gusto.embedded_api_v_2025_11_15.models.components.RehireBody; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api_v_2025_11_15.models.operations.*; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1EmployeesEmployeeIdRehireResponse; import java.lang.Exception; public class Application { @@ -101,16 +99,18 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostV1EmployeesEmployeeIdTerminationsResponse res = sdk.employeeEmployments().createTermination() - .xGustoAPIVersion(PostV1EmployeesEmployeeIdTerminationsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + PostV1EmployeesEmployeeIdRehireResponse res = sdk.employeeEmployments().createRehire() + .xGustoAPIVersion(PostV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .employeeId("") - .requestBody(PostV1EmployeesEmployeeIdTerminationsRequestBody.builder() - .effectiveDate("2020-06-30") + .rehireBody(RehireBody.builder() + .effectiveDate("2023-06-30") + .fileNewHireReport(false) + .workLocationUuid("b6ae9d93-d4b8-4119-8c96-dba595dd8c30") .build()) .call(); - if (res.termination().isPresent()) { - System.out.println(res.termination().get()); + if (res.rehire().isPresent()) { + System.out.println(res.rehire().get()); } } } @@ -118,15 +118,15 @@ public class Application { ### Parameters -| Parameter | Type | Required | Description | Example | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1EmployeesEmployeeIdTerminationsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | -| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | | -| `requestBody` | [PostV1EmployeesEmployeeIdTerminationsRequestBody](../../models/operations/PostV1EmployeesEmployeeIdTerminationsRequestBody.md) | :heavy_check_mark: | N/A | {
    "effective_date": "2020-06-30",
    "run_termination_payroll": false
    } | +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | +| `rehireBody` | [RehireBody](../../models/components/RehireBody.md) | :heavy_check_mark: | N/A | ### Response -**[PostV1EmployeesEmployeeIdTerminationsResponse](../../models/operations/PostV1EmployeesEmployeeIdTerminationsResponse.md)** +**[PostV1EmployeesEmployeeIdRehireResponse](../../models/operations/PostV1EmployeesEmployeeIdRehireResponse.md)** ### Errors @@ -136,23 +136,24 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## deleteTermination +## rehire -Delete an employee termination. +Update an employee's rehire. scope: `employments:write` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; +import com.gusto.embedded_api_v_2025_11_15.models.components.RehireUpdateRequestBody; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1EmployeesEmployeeIdTerminationsHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1EmployeesEmployeeIdTerminationsResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1EmployeesEmployeeIdRehireResponse; import java.lang.Exception; public class Application { @@ -163,12 +164,20 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - DeleteV1EmployeesEmployeeIdTerminationsResponse res = sdk.employeeEmployments().deleteTermination() - .xGustoAPIVersion(DeleteV1EmployeesEmployeeIdTerminationsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + PutV1EmployeesEmployeeIdRehireResponse res = sdk.employeeEmployments().rehire() + .xGustoAPIVersion(PutV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .employeeId("") + .rehireUpdateRequestBody(RehireUpdateRequestBody.builder() + .version("56d00c178bc7393b2a206ed6a86afcb4") + .effectiveDate("2023-06-30") + .fileNewHireReport(true) + .workLocationUuid("b6ae9d93-d4b8-4119-8c96-dba595dd8c30") + .build()) .call(); - // handle response + if (res.rehire().isPresent()) { + System.out.println(res.rehire().get()); + } } } ``` @@ -177,12 +186,13 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1EmployeesEmployeeIdTerminationsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | +| `rehireUpdateRequestBody` | [RehireUpdateRequestBody](../../models/components/RehireUpdateRequestBody.md) | :heavy_check_mark: | N/A | ### Response -**[DeleteV1EmployeesEmployeeIdTerminationsResponse](../../models/operations/DeleteV1EmployeesEmployeeIdTerminationsResponse.md)** +**[PutV1EmployeesEmployeeIdRehireResponse](../../models/operations/PutV1EmployeesEmployeeIdRehireResponse.md)** ### Errors @@ -192,24 +202,23 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## updateTermination - -Terminations are created whenever an employee is scheduled to leave the company. The only things required are an effective date (their last day of work) and whether they should receive their wages in a one-off termination payroll or with the rest of the company. +## deleteRehire -Note that some states require employees to receive their final wages within 24 hours (unless they consent otherwise,) in which case running a one-off payroll may be the only option. +Delete an employee rehire. An employee rehire cannot be deleted if it's active (past effective date). scope: `employments:write` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api_v_2025_11_15.models.operations.*; +import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1EmployeesEmployeeIdRehireResponse; import java.lang.Exception; public class Application { @@ -220,33 +229,26 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1TerminationsEmployeeIdResponse res = sdk.employeeEmployments().updateTermination() - .xGustoAPIVersion(PutV1TerminationsEmployeeIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + DeleteV1EmployeesEmployeeIdRehireResponse res = sdk.employeeEmployments().deleteRehire() + .xGustoAPIVersion(DeleteV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .employeeId("") - .requestBody(PutV1TerminationsEmployeeIdRequestBody.builder() - .version("d487dd0b55dfcacdd920ccbdaeafa351") - .effectiveDate("2020-06-30") - .build()) .call(); - if (res.termination().isPresent()) { - System.out.println(res.termination().get()); - } + // handle response } } ``` ### Parameters -| Parameter | Type | Required | Description | Example | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1TerminationsEmployeeIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | -| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | | -| `requestBody` | [PutV1TerminationsEmployeeIdRequestBody](../../models/operations/PutV1TerminationsEmployeeIdRequestBody.md) | :heavy_check_mark: | N/A | {
    "version": "d487dd0b55dfcacdd920ccbdaeafa351",
    "effective_date": "2020-06-30",
    "run_termination_payroll": false
    } | +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | ### Response -**[PutV1TerminationsEmployeeIdResponse](../../models/operations/PutV1TerminationsEmployeeIdResponse.md)** +**[DeleteV1EmployeesEmployeeIdRehireResponse](../../models/operations/DeleteV1EmployeesEmployeeIdRehireResponse.md)** ### Errors @@ -256,22 +258,22 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## getRehire +## getHistory -Retrieve an employee's rehire, which contains information on when the employee returns to work. +Retrieve the employment history for a given employee, which includes termination and rehire. scope: `employments:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1EmployeesEmployeeIdRehireResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1EmployeesEmployeeIdEmploymentHistoryHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1EmployeesEmployeeIdEmploymentHistoryResponse; import java.lang.Exception; public class Application { @@ -282,13 +284,13 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1EmployeesEmployeeIdRehireResponse res = sdk.employeeEmployments().getRehire() - .xGustoAPIVersion(GetV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + GetV1EmployeesEmployeeIdEmploymentHistoryResponse res = sdk.employeeEmployments().getHistory() + .xGustoAPIVersion(GetV1EmployeesEmployeeIdEmploymentHistoryHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .employeeId("") .call(); - if (res.rehire().isPresent()) { - System.out.println(res.rehire().get()); + if (res.employmentHistoryList().isPresent()) { + System.out.println(res.employmentHistoryList().get()); } } } @@ -298,12 +300,12 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeIdEmploymentHistoryHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | ### Response -**[GetV1EmployeesEmployeeIdRehireResponse](../../models/operations/GetV1EmployeesEmployeeIdRehireResponse.md)** +**[GetV1EmployeesEmployeeIdEmploymentHistoryResponse](../../models/operations/GetV1EmployeesEmployeeIdEmploymentHistoryResponse.md)** ### Errors @@ -312,46 +314,41 @@ public class Application { | models/errors/NotFoundErrorObject | 404 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## createRehire +## getTerminations -Rehire is created whenever an employee is scheduled to return to the company. +Terminations are created whenever an employee is scheduled to leave the company. The only things required are an effective date (their last day of work) and whether they should receive their wages in a one-off termination payroll or with the rest of the company. -scope: `employments:write` +Note that some states require employees to receive their final wages within 24 hours (unless they consent otherwise,) in which case running a one-off payroll may be the only option. + +scope: `employments:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; -import com.gusto.embedded_api_v_2025_11_15.models.components.RehireBody; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1EmployeesEmployeeIdRehireResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1EmployeesEmployeeIdTerminationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1EmployeesEmployeeIdTerminationsResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + public static void main(String[] args) throws NotFoundErrorObject, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostV1EmployeesEmployeeIdRehireResponse res = sdk.employeeEmployments().createRehire() - .xGustoAPIVersion(PostV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + GetV1EmployeesEmployeeIdTerminationsResponse res = sdk.employeeEmployments().getTerminations() + .xGustoAPIVersion(GetV1EmployeesEmployeeIdTerminationsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .employeeId("") - .rehireBody(RehireBody.builder() - .effectiveDate("2023-06-30") - .fileNewHireReport(false) - .workLocationUuid("b6ae9d93-d4b8-4119-8c96-dba595dd8c30") - .build()) .call(); - if (res.rehire().isPresent()) { - System.out.println(res.rehire().get()); + if (res.terminations().isPresent()) { + System.out.println(res.terminations().get()); } } } @@ -361,40 +358,38 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeIdTerminationsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | -| `rehireBody` | [RehireBody](../../models/components/RehireBody.md) | :heavy_check_mark: | N/A | ### Response -**[PostV1EmployeesEmployeeIdRehireResponse](../../models/operations/PostV1EmployeesEmployeeIdRehireResponse.md)** +**[GetV1EmployeesEmployeeIdTerminationsResponse](../../models/operations/GetV1EmployeesEmployeeIdTerminationsResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| -------------------------------------- | -------------------------------------- | -------------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/UnprocessableEntityError | 422 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | -## rehire +## createTermination -Update an employee's rehire. +Create a termination for an employee. The only things required are an effective date (their last day of work) and whether they should receive their wages in a one-off termination payroll or with the rest of the company. + +Note that some states require employees to receive their final wages within 24 hours (unless they consent otherwise,) in which case running a one-off payroll may be the only option. scope: `employments:write` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; -import com.gusto.embedded_api_v_2025_11_15.models.components.RehireUpdateRequestBody; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1EmployeesEmployeeIdRehireResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.*; import java.lang.Exception; public class Application { @@ -405,19 +400,16 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1EmployeesEmployeeIdRehireResponse res = sdk.employeeEmployments().rehire() - .xGustoAPIVersion(PutV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + PostV1EmployeesEmployeeIdTerminationsResponse res = sdk.employeeEmployments().createTermination() + .xGustoAPIVersion(PostV1EmployeesEmployeeIdTerminationsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .employeeId("") - .rehireUpdateRequestBody(RehireUpdateRequestBody.builder() - .version("56d00c178bc7393b2a206ed6a86afcb4") - .effectiveDate("2023-06-30") - .fileNewHireReport(true) - .workLocationUuid("b6ae9d93-d4b8-4119-8c96-dba595dd8c30") + .requestBody(PostV1EmployeesEmployeeIdTerminationsRequestBody.builder() + .effectiveDate("2020-06-30") .build()) .call(); - if (res.rehire().isPresent()) { - System.out.println(res.rehire().get()); + if (res.termination().isPresent()) { + System.out.println(res.termination().get()); } } } @@ -425,15 +417,15 @@ public class Application { ### Parameters -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | -| `rehireUpdateRequestBody` | [RehireUpdateRequestBody](../../models/components/RehireUpdateRequestBody.md) | :heavy_check_mark: | N/A | +| Parameter | Type | Required | Description | Example | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1EmployeesEmployeeIdTerminationsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | | +| `requestBody` | [PostV1EmployeesEmployeeIdTerminationsRequestBody](../../models/operations/PostV1EmployeesEmployeeIdTerminationsRequestBody.md) | :heavy_check_mark: | N/A | {
    "effective_date": "2020-06-30",
    "run_termination_payroll": false
    } | ### Response -**[PutV1EmployeesEmployeeIdRehireResponse](../../models/operations/PutV1EmployeesEmployeeIdRehireResponse.md)** +**[PostV1EmployeesEmployeeIdTerminationsResponse](../../models/operations/PostV1EmployeesEmployeeIdTerminationsResponse.md)** ### Errors @@ -443,23 +435,23 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## deleteRehire +## deleteTermination -Delete an employee rehire. An employee rehire cannot be deleted if it's active (past effective date). +Delete an employee termination. scope: `employments:write` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1EmployeesEmployeeIdRehireResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1EmployeesEmployeeIdTerminationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1EmployeesEmployeeIdTerminationsResponse; import java.lang.Exception; public class Application { @@ -470,8 +462,8 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - DeleteV1EmployeesEmployeeIdRehireResponse res = sdk.employeeEmployments().deleteRehire() - .xGustoAPIVersion(DeleteV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + DeleteV1EmployeesEmployeeIdTerminationsResponse res = sdk.employeeEmployments().deleteTermination() + .xGustoAPIVersion(DeleteV1EmployeesEmployeeIdTerminationsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .employeeId("") .call(); @@ -484,12 +476,12 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1EmployeesEmployeeIdTerminationsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | ### Response -**[DeleteV1EmployeesEmployeeIdRehireResponse](../../models/operations/DeleteV1EmployeesEmployeeIdRehireResponse.md)** +**[DeleteV1EmployeesEmployeeIdTerminationsResponse](../../models/operations/DeleteV1EmployeesEmployeeIdTerminationsResponse.md)** ### Errors @@ -499,39 +491,45 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## getHistory +## updateTermination -Retrieve the employment history for a given employee, which includes termination and rehire. +Terminations are created whenever an employee is scheduled to leave the company. The only things required are an effective date (their last day of work) and whether they should receive their wages in a one-off termination payroll or with the rest of the company. -scope: `employments:read` +Note that some states require employees to receive their final wages within 24 hours (unless they consent otherwise,) in which case running a one-off payroll may be the only option. + +scope: `employments:write` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1EmployeesEmployeeIdEmploymentHistoryHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1EmployeesEmployeeIdEmploymentHistoryResponse; +import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api_v_2025_11_15.models.operations.*; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, Exception { + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1EmployeesEmployeeIdEmploymentHistoryResponse res = sdk.employeeEmployments().getHistory() - .xGustoAPIVersion(GetV1EmployeesEmployeeIdEmploymentHistoryHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + PutV1TerminationsEmployeeIdResponse res = sdk.employeeEmployments().updateTermination() + .xGustoAPIVersion(PutV1TerminationsEmployeeIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .employeeId("") + .requestBody(PutV1TerminationsEmployeeIdRequestBody.builder() + .version("d487dd0b55dfcacdd920ccbdaeafa351") + .effectiveDate("2020-06-30") + .build()) .call(); - if (res.employmentHistoryList().isPresent()) { - System.out.println(res.employmentHistoryList().get()); + if (res.termination().isPresent()) { + System.out.println(res.termination().get()); } } } @@ -539,21 +537,23 @@ public class Application { ### Parameters -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeIdEmploymentHistoryHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | +| Parameter | Type | Required | Description | Example | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1TerminationsEmployeeIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | | +| `requestBody` | [PutV1TerminationsEmployeeIdRequestBody](../../models/operations/PutV1TerminationsEmployeeIdRequestBody.md) | :heavy_check_mark: | N/A | {
    "version": "d487dd0b55dfcacdd920ccbdaeafa351",
    "effective_date": "2020-06-30",
    "run_termination_payroll": false
    } | ### Response -**[GetV1EmployeesEmployeeIdEmploymentHistoryResponse](../../models/operations/GetV1EmployeesEmployeeIdEmploymentHistoryResponse.md)** +**[PutV1TerminationsEmployeeIdResponse](../../models/operations/PutV1TerminationsEmployeeIdResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| --------------------------------- | --------------------------------- | --------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | ## getV1TerminationsEmployeeId diff --git a/gusto_embedded_v_2025_11_15/docs/sdks/employeeforms/README.md b/gusto_embedded_v_2025_11_15/docs/sdks/employeeforms/README.md index 863326ea6..0f3f9186b 100644 --- a/gusto_embedded_v_2025_11_15/docs/sdks/employeeforms/README.md +++ b/gusto_embedded_v_2025_11_15/docs/sdks/employeeforms/README.md @@ -4,74 +4,11 @@ ### Available Operations -* [generateW2](#generatew2) - Generate a W2 form [DEMO] * [list](#list) - Get all employee forms * [get](#get) - Get an employee form * [getPdf](#getpdf) - Get the employee form pdf * [sign](#sign) - Sign an employee form - -## generateW2 - -> 🚧 Demo action -> -> This action is only available in the Demo environment - -Generates a W2 document for testing purposes. - -scope: `employees:write` - -### Example Usage - - -```java -package hello.world; - -import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; -import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api_v_2025_11_15.models.operations.*; -import java.lang.Exception; - -public class Application { - - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { - - GustoEmbedded sdk = GustoEmbedded.builder() - .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) - .build(); - - PostV1SandboxGenerateW2Response res = sdk.employeeForms().generateW2() - .xGustoAPIVersion(PostV1SandboxGenerateW2HeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) - .requestBody(PostV1SandboxGenerateW2RequestBody.builder() - .employeeId("") - .build()) - .call(); - - if (res.form().isPresent()) { - System.out.println(res.form().get()); - } - } -} -``` - -### Parameters - -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1SandboxGenerateW2HeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `requestBody` | [PostV1SandboxGenerateW2RequestBody](../../models/operations/PostV1SandboxGenerateW2RequestBody.md) | :heavy_check_mark: | N/A | - -### Response - -**[PostV1SandboxGenerateW2Response](../../models/operations/PostV1SandboxGenerateW2Response.md)** - -### Errors - -| Error Type | Status Code | Content Type | -| -------------------------------------- | -------------------------------------- | -------------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/UnprocessableEntityError | 422 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | +* [generateW2](#generatew2) - Generate a W2 form [DEMO] ## list @@ -306,6 +243,69 @@ public class Application { ### Errors +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | + +## generateW2 + +> 🚧 Demo action +> +> This action is only available in the Demo environment + +Generates a W2 document for testing purposes. + +scope: `employees:write` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; +import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api_v_2025_11_15.models.operations.*; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + PostV1SandboxGenerateW2Response res = sdk.employeeForms().generateW2() + .xGustoAPIVersion(PostV1SandboxGenerateW2HeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .requestBody(PostV1SandboxGenerateW2RequestBody.builder() + .employeeId("") + .build()) + .call(); + + if (res.form().isPresent()) { + System.out.println(res.form().get()); + } + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1SandboxGenerateW2HeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `requestBody` | [PostV1SandboxGenerateW2RequestBody](../../models/operations/PostV1SandboxGenerateW2RequestBody.md) | :heavy_check_mark: | N/A | + +### Response + +**[PostV1SandboxGenerateW2Response](../../models/operations/PostV1SandboxGenerateW2Response.md)** + +### Errors + | Error Type | Status Code | Content Type | | -------------------------------------- | -------------------------------------- | -------------------------------------- | | models/errors/NotFoundErrorObject | 404 | application/json | diff --git a/gusto_embedded_v_2025_11_15/docs/sdks/employeepaymentmethod/README.md b/gusto_embedded_v_2025_11_15/docs/sdks/employeepaymentmethod/README.md index 3def0a211..86a91b321 100644 --- a/gusto_embedded_v_2025_11_15/docs/sdks/employeepaymentmethod/README.md +++ b/gusto_embedded_v_2025_11_15/docs/sdks/employeepaymentmethod/README.md @@ -291,7 +291,7 @@ public class Application { .employeeId("") .requestBody(PutV1EmployeesEmployeeIdPaymentMethodRequestBody.builder() .version("63859768485e218ccf8a449bb60f14ed") - .type(Type.CHECK) + .type(PutV1EmployeesEmployeeIdPaymentMethodType.CHECK) .build()) .call(); diff --git a/gusto_embedded_v_2025_11_15/docs/sdks/employees/README.md b/gusto_embedded_v_2025_11_15/docs/sdks/employees/README.md index c6904038e..85a96ffd1 100644 --- a/gusto_embedded_v_2025_11_15/docs/sdks/employees/README.md +++ b/gusto_embedded_v_2025_11_15/docs/sdks/employees/README.md @@ -4,37 +4,35 @@ ### Available Operations -* [list](#list) - Get employees of a company -* [create](#create) - Create an employee +* [getCustomFields](#getcustomfields) - Get an employee's custom fields * [getV1CompaniesCompanyIdEmployeesPaymentDetails](#getv1companiescompanyidemployeespaymentdetails) - Get employee payment details for a company -* [createHistorical](#createhistorical) - Create a historical employee +* [getTimeOffActivities](#gettimeoffactivities) - Get employee time off activities * [get](#get) - Get an employee * [update](#update) - Update an employee. * [delete](#delete) - Delete an onboarding employee -* [getCustomFields](#getcustomfields) - Get an employee's custom fields -* [updateOnboardingDocumentsConfig](#updateonboardingdocumentsconfig) - Update employee onboarding documents config +* [list](#list) - Get employees of a company +* [create](#create) - Create an employee * [getOnboardingStatus](#getonboardingstatus) - Get the employee's onboarding status * [updateOnboardingStatus](#updateonboardingstatus) - Update the employee's onboarding status -* [getTimeOffActivities](#gettimeoffactivities) - Get employee time off activities - -## list +* [updateOnboardingDocumentsConfig](#updateonboardingdocumentsconfig) - Update employee onboarding documents config +* [createHistorical](#createhistorical) - Create a historical employee -Get all of the employees, onboarding, active and terminated, for a given company. +## getCustomFields -Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope is included. This allows you to access employee and job metadata without exposing pay rates. +Returns a list of the employee's custom fields. scope: `employees:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdEmployeesRequest; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdEmployeesResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1EmployeesEmployeeIdCustomFieldsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1EmployeesEmployeeIdCustomFieldsResponse; import java.lang.Exception; public class Application { @@ -45,17 +43,13 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1CompaniesCompanyIdEmployeesRequest req = GetV1CompaniesCompanyIdEmployeesRequest.builder() - .companyId("") - .sortBy("name:desc") - .build(); - - GetV1CompaniesCompanyIdEmployeesResponse res = sdk.employees().list() - .request(req) + GetV1EmployeesEmployeeIdCustomFieldsResponse res = sdk.employees().getCustomFields() + .xGustoAPIVersion(GetV1EmployeesEmployeeIdCustomFieldsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .employeeId("") .call(); - if (res.showEmployees().isPresent()) { - System.out.println(res.showEmployees().get()); + if (res.employeeCustomFieldList().isPresent()) { + System.out.println(res.employeeCustomFieldList().get()); } } } @@ -63,13 +57,16 @@ public class Application { ### Parameters -| Parameter | Type | Required | Description | -| ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | -| `request` | [GetV1CompaniesCompanyIdEmployeesRequest](../../models/operations/GetV1CompaniesCompanyIdEmployeesRequest.md) | :heavy_check_mark: | The request object to use for the request. | +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeIdCustomFieldsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | +| `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | +| `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | ### Response -**[GetV1CompaniesCompanyIdEmployeesResponse](../../models/operations/GetV1CompaniesCompanyIdEmployeesResponse.md)** +**[GetV1EmployeesEmployeeIdCustomFieldsResponse](../../models/operations/GetV1EmployeesEmployeeIdCustomFieldsResponse.md)** ### Errors @@ -78,65 +75,6 @@ public class Application { | models/errors/NotFoundErrorObject | 404 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## create - -Create an employee. - -scope: `employees:manage` - -### Example Usage - - -```java -package hello.world; - -import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; -import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1EmployeesHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1EmployeesResponse; -import java.lang.Exception; - -public class Application { - - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { - - GustoEmbedded sdk = GustoEmbedded.builder() - .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) - .build(); - - PostV1EmployeesResponse res = sdk.employees().create() - .xGustoAPIVersion(PostV1EmployeesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) - .companyId("") - .call(); - - if (res.employee().isPresent()) { - System.out.println(res.employee().get()); - } - } -} -``` - -### Parameters - -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1EmployeesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `companyId` | *String* | :heavy_check_mark: | Company ID | -| `requestBody` | [Optional\](../../models/operations/PostV1EmployeesRequestBody.md) | :heavy_minus_sign: | N/A | - -### Response - -**[PostV1EmployeesResponse](../../models/operations/PostV1EmployeesResponse.md)** - -### Errors - -| Error Type | Status Code | Content Type | -| -------------------------------------- | -------------------------------------- | -------------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/UnprocessableEntityError | 422 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | - ## getV1CompaniesCompanyIdEmployeesPaymentDetails Fetches payment details for employees in a given company. Results are paginated. @@ -204,26 +142,24 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## createHistorical +## getTimeOffActivities -Create a historical employee, an employee that was previously dismissed from the company in the current year. +Get employee time off activities. -scope: `employees:manage` +scope: `employee_time_off_activities:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; -import com.gusto.embedded_api_v_2025_11_15.models.components.*; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1HistoricalEmployeesHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1HistoricalEmployeesResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetVersionEmployeesTimeOffActivitiesHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetVersionEmployeesTimeOffActivitiesResponse; import java.lang.Exception; -import java.time.LocalDate; public class Application { @@ -233,42 +169,14 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostV1HistoricalEmployeesResponse res = sdk.employees().createHistorical() - .xGustoAPIVersion(PostV1HistoricalEmployeesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) - .companyUuid("7b1d0df1-6403-4a06-8768-c1dd7d24d27a") - .historicalEmployeeBody(HistoricalEmployeeBody.builder() - .firstName("Soren") - .lastName("Kierkegaard") - .dateOfBirth(LocalDate.parse("1995-05-05")) - .ssn("123456294") - .workAddress(WorkAddress.builder() - .locationUuid("1da85d35-1910-40a7-9c1f-8e2b3d4c5a6f") - .build()) - .homeAddress(HistoricalEmployeeBodyHomeAddress.builder() - .street1("55 Mission St") - .city("San Francisco") - .state("CA") - .zip("94105") - .street2("Floor 3") - .build()) - .termination(HistoricalEmployeeBodyTermination.builder() - .effectiveDate(LocalDate.parse("2022-01-01")) - .build()) - .job(HistoricalEmployeeBodyJob.builder() - .hireDate(LocalDate.parse("2020-01-01")) - .build()) - .middleInitial("A") - .preferredFirstName("Angel") - .email("soren.kierkegaard@example.com") - .employeeStateTaxes(EmployeeStateTaxes.builder() - .wcCovered(true) - .wcClassCode("051000") - .build()) - .build()) + GetVersionEmployeesTimeOffActivitiesResponse res = sdk.employees().getTimeOffActivities() + .xGustoAPIVersion(GetVersionEmployeesTimeOffActivitiesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .employeeUuid("") + .timeOffType("") .call(); - if (res.employee().isPresent()) { - System.out.println(res.employee().get()); + if (res.timeOffActivityList().isPresent()) { + System.out.println(res.timeOffActivityList().get()); } } } @@ -276,15 +184,15 @@ public class Application { ### Parameters -| Parameter | Type | Required | Description | Example | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1HistoricalEmployeesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company that will employ this historical record. | 7b1d0df1-6403-4a06-8768-c1dd7d24d27a | -| `historicalEmployeeBody` | [HistoricalEmployeeBody](../../models/components/HistoricalEmployeeBody.md) | :heavy_check_mark: | N/A | | +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetVersionEmployeesTimeOffActivitiesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeUuid` | *String* | :heavy_check_mark: | The UUID of the employee | +| `timeOffType` | *String* | :heavy_check_mark: | The time off type name you want to query data for. ex: 'sick' or 'vacation' | ### Response -**[PostV1HistoricalEmployeesResponse](../../models/operations/PostV1HistoricalEmployeesResponse.md)** +**[GetVersionEmployeesTimeOffActivitiesResponse](../../models/operations/GetVersionEmployeesTimeOffActivitiesResponse.md)** ### Errors @@ -340,7 +248,7 @@ public class Application { | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | -| `include` | List\<[QueryParamInclude](../../models/operations/QueryParamInclude.md)> | :heavy_minus_sign: | Include the requested attribute(s) in each employee response. Multiple options are comma separated. | +| `include` | List\<[GetV1EmployeesQueryParamInclude](../../models/operations/GetV1EmployeesQueryParamInclude.md)> | :heavy_minus_sign: | Include the requested attribute(s) in each employee response. Multiple options are comma separated. | ### Response @@ -479,22 +387,24 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## getCustomFields +## list -Returns a list of the employee's custom fields. +Get all of the employees, onboarding, active and terminated, for a given company. + +Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope is included. This allows you to access employee and job metadata without exposing pay rates. scope: `employees:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1EmployeesEmployeeIdCustomFieldsHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1EmployeesEmployeeIdCustomFieldsResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdEmployeesRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdEmployeesResponse; import java.lang.Exception; public class Application { @@ -505,13 +415,17 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1EmployeesEmployeeIdCustomFieldsResponse res = sdk.employees().getCustomFields() - .employeeId("") - .xGustoAPIVersion(GetV1EmployeesEmployeeIdCustomFieldsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + GetV1CompaniesCompanyIdEmployeesRequest req = GetV1CompaniesCompanyIdEmployeesRequest.builder() + .companyId("") + .sortBy("name:desc") + .build(); + + GetV1CompaniesCompanyIdEmployeesResponse res = sdk.employees().list() + .request(req) .call(); - if (res.employeeCustomFieldList().isPresent()) { - System.out.println(res.employeeCustomFieldList().get()); + if (res.showEmployees().isPresent()) { + System.out.println(res.showEmployees().get()); } } } @@ -519,16 +433,13 @@ public class Application { ### Parameters -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | -| `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | -| `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeIdCustomFieldsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| Parameter | Type | Required | Description | +| ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------- | +| `request` | [GetV1CompaniesCompanyIdEmployeesRequest](../../models/operations/GetV1CompaniesCompanyIdEmployeesRequest.md) | :heavy_check_mark: | The request object to use for the request. | ### Response -**[GetV1EmployeesEmployeeIdCustomFieldsResponse](../../models/operations/GetV1EmployeesEmployeeIdCustomFieldsResponse.md)** +**[GetV1CompaniesCompanyIdEmployeesResponse](../../models/operations/GetV1CompaniesCompanyIdEmployeesResponse.md)** ### Errors @@ -537,43 +448,40 @@ public class Application { | models/errors/NotFoundErrorObject | 404 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## updateOnboardingDocumentsConfig - -Indicate whether to include the Form I-9 for an employee during the onboarding process. -If included, the employee will be prompted to complete Form I-9 as part of their onboarding. +## create -## Related guides -- [Employee onboarding](doc:employee-onboarding) +Create an employee. scope: `employees:manage` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1EmployeesEmployeeIdOnboardingDocumentsConfigHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1EmployeesEmployeeIdOnboardingDocumentsConfigResponse; +import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1EmployeesHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1EmployeesResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, Exception { + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1EmployeesEmployeeIdOnboardingDocumentsConfigResponse res = sdk.employees().updateOnboardingDocumentsConfig() - .xGustoAPIVersion(PutV1EmployeesEmployeeIdOnboardingDocumentsConfigHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) - .employeeId("7b1d0df1-6403-4a06-8768-c1dd7d24d27a") + PostV1EmployeesResponse res = sdk.employees().create() + .xGustoAPIVersion(PostV1EmployeesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .companyId("") .call(); - if (res.employeeOnboardingDocument().isPresent()) { - System.out.println(res.employeeOnboardingDocument().get()); + if (res.employee().isPresent()) { + System.out.println(res.employee().get()); } } } @@ -581,22 +489,23 @@ public class Application { ### Parameters -| Parameter | Type | Required | Description | Example | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1EmployeesEmployeeIdOnboardingDocumentsConfigHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | -| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | 7b1d0df1-6403-4a06-8768-c1dd7d24d27a | -| `employeeOnboardingDocumentsConfigRequest` | [Optional\](../../models/components/EmployeeOnboardingDocumentsConfigRequest.md) | :heavy_minus_sign: | N/A | | +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1EmployeesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyId` | *String* | :heavy_check_mark: | Company ID | +| `requestBody` | [Optional\](../../models/operations/PostV1EmployeesRequestBody.md) | :heavy_minus_sign: | N/A | ### Response -**[PutV1EmployeesEmployeeIdOnboardingDocumentsConfigResponse](../../models/operations/PutV1EmployeesEmployeeIdOnboardingDocumentsConfigResponse.md)** +**[PostV1EmployeesResponse](../../models/operations/PostV1EmployeesResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| --------------------------------- | --------------------------------- | --------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | ## getOnboardingStatus @@ -761,24 +670,87 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## getTimeOffActivities +## updateOnboardingDocumentsConfig -Get employee time off activities. +Indicate whether to include the Form I-9 for an employee during the onboarding process. +If included, the employee will be prompted to complete Form I-9 as part of their onboarding. -scope: `employee_time_off_activities:read` +## Related guides +- [Employee onboarding](doc:employee-onboarding) + +scope: `employees:manage` ### Example Usage - + +```java +package hello.world; + +import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; +import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1EmployeesEmployeeIdOnboardingDocumentsConfigHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1EmployeesEmployeeIdOnboardingDocumentsConfigResponse; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + PutV1EmployeesEmployeeIdOnboardingDocumentsConfigResponse res = sdk.employees().updateOnboardingDocumentsConfig() + .xGustoAPIVersion(PutV1EmployeesEmployeeIdOnboardingDocumentsConfigHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .employeeId("7b1d0df1-6403-4a06-8768-c1dd7d24d27a") + .call(); + + if (res.employeeOnboardingDocument().isPresent()) { + System.out.println(res.employeeOnboardingDocument().get()); + } + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | Example | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1EmployeesEmployeeIdOnboardingDocumentsConfigHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | 7b1d0df1-6403-4a06-8768-c1dd7d24d27a | +| `employeeOnboardingDocumentsConfigRequest` | [Optional\](../../models/components/EmployeeOnboardingDocumentsConfigRequest.md) | :heavy_minus_sign: | N/A | | + +### Response + +**[PutV1EmployeesEmployeeIdOnboardingDocumentsConfigResponse](../../models/operations/PutV1EmployeesEmployeeIdOnboardingDocumentsConfigResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | + +## createHistorical + +Create a historical employee, an employee that was previously dismissed from the company in the current year. + +scope: `employees:manage` + +### Example Usage + + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; +import com.gusto.embedded_api_v_2025_11_15.models.components.*; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetVersionEmployeesTimeOffActivitiesHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetVersionEmployeesTimeOffActivitiesResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1HistoricalEmployeesHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1HistoricalEmployeesResponse; import java.lang.Exception; +import java.time.LocalDate; public class Application { @@ -788,14 +760,42 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetVersionEmployeesTimeOffActivitiesResponse res = sdk.employees().getTimeOffActivities() - .xGustoAPIVersion(GetVersionEmployeesTimeOffActivitiesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) - .employeeUuid("") - .timeOffType("") + PostV1HistoricalEmployeesResponse res = sdk.employees().createHistorical() + .xGustoAPIVersion(PostV1HistoricalEmployeesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .companyUuid("7b1d0df1-6403-4a06-8768-c1dd7d24d27a") + .historicalEmployeeBody(HistoricalEmployeeBody.builder() + .firstName("Soren") + .lastName("Kierkegaard") + .dateOfBirth(LocalDate.parse("1995-05-05")) + .ssn("123456294") + .workAddress(WorkAddress.builder() + .locationUuid("1da85d35-1910-40a7-9c1f-8e2b3d4c5a6f") + .build()) + .homeAddress(HomeAddress.builder() + .street1("55 Mission St") + .city("San Francisco") + .state("CA") + .zip("94105") + .street2("Floor 3") + .build()) + .termination(HistoricalEmployeeBodyTermination.builder() + .effectiveDate(LocalDate.parse("2022-01-01")) + .build()) + .job(HistoricalEmployeeBodyJob.builder() + .hireDate(LocalDate.parse("2020-01-01")) + .build()) + .middleInitial("A") + .preferredFirstName("Angel") + .email("soren.kierkegaard@example.com") + .employeeStateTaxes(EmployeeStateTaxes.builder() + .wcCovered(true) + .wcClassCode("051000") + .build()) + .build()) .call(); - if (res.timeOffActivityList().isPresent()) { - System.out.println(res.timeOffActivityList().get()); + if (res.employee().isPresent()) { + System.out.println(res.employee().get()); } } } @@ -803,15 +803,15 @@ public class Application { ### Parameters -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetVersionEmployeesTimeOffActivitiesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `employeeUuid` | *String* | :heavy_check_mark: | The UUID of the employee | -| `timeOffType` | *String* | :heavy_check_mark: | The time off type name you want to query data for. ex: 'sick' or 'vacation' | +| Parameter | Type | Required | Description | Example | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1HistoricalEmployeesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company that will employ this historical record. | 7b1d0df1-6403-4a06-8768-c1dd7d24d27a | +| `historicalEmployeeBody` | [HistoricalEmployeeBody](../../models/components/HistoricalEmployeeBody.md) | :heavy_check_mark: | N/A | | ### Response -**[GetVersionEmployeesTimeOffActivitiesResponse](../../models/operations/GetVersionEmployeesTimeOffActivitiesResponse.md)** +**[PostV1HistoricalEmployeesResponse](../../models/operations/PostV1HistoricalEmployeesResponse.md)** ### Errors diff --git a/gusto_embedded_v_2025_11_15/docs/sdks/externalpayrolls/README.md b/gusto_embedded_v_2025_11_15/docs/sdks/externalpayrolls/README.md index d73f67927..41d229984 100644 --- a/gusto_embedded_v_2025_11_15/docs/sdks/externalpayrolls/README.md +++ b/gusto_embedded_v_2025_11_15/docs/sdks/externalpayrolls/README.md @@ -6,13 +6,13 @@ * [get](#get) - Get external payrolls for a company * [create](#create) - Create an external payroll for a company +* [listTaxLiabilities](#listtaxliabilities) - Get tax liabilities +* [updateTaxLiabilities](#updatetaxliabilities) - Update tax liabilities +* [finalizeTaxLiabilities](#finalizetaxliabilities) - Finalize tax liabilities options and convert into processed payrolls * [retrieve](#retrieve) - Get an external payroll * [update](#update) - Update an external payroll * [delete](#delete) - Delete an external payroll * [calculateTaxes](#calculatetaxes) - Get tax suggestions for an external payroll -* [listTaxLiabilities](#listtaxliabilities) - Get tax liabilities -* [updateTaxLiabilities](#updatetaxliabilities) - Update tax liabilities -* [finalizeTaxLiabilities](#finalizetaxliabilities) - Finalize tax liabilities options and convert into processed payrolls ## get @@ -138,22 +138,22 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## retrieve +## listTaxLiabilities -Get an external payroll for a given company. +Get tax liabilities from aggregate external payrolls for a company. scope: `external_payrolls:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ExternalPayrollHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ExternalPayrollResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1TaxLiabilitiesHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1TaxLiabilitiesResponse; import java.lang.Exception; public class Application { @@ -164,14 +164,13 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1ExternalPayrollResponse res = sdk.externalPayrolls().retrieve() - .xGustoAPIVersion(GetV1ExternalPayrollHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + GetV1TaxLiabilitiesResponse res = sdk.externalPayrolls().listTaxLiabilities() + .xGustoAPIVersion(GetV1TaxLiabilitiesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .companyUuid("") - .externalPayrollId("") .call(); - if (res.externalPayroll().isPresent()) { - System.out.println(res.externalPayroll().get()); + if (res.taxLiabilitiesSelections().isPresent()) { + System.out.println(res.taxLiabilitiesSelections().get()); } } } @@ -181,13 +180,12 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1ExternalPayrollHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1TaxLiabilitiesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | -| `externalPayrollId` | *String* | :heavy_check_mark: | The UUID of the external payroll | ### Response -**[GetV1ExternalPayrollResponse](../../models/operations/GetV1ExternalPayrollResponse.md)** +**[GetV1TaxLiabilitiesResponse](../../models/operations/GetV1TaxLiabilitiesResponse.md)** ### Errors @@ -196,67 +194,44 @@ public class Application { | models/errors/NotFoundErrorObject | 404 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## update +## updateTaxLiabilities -Update an external payroll with a list of external payroll items. +Update tax liabilities for a company. scope: `external_payrolls:write` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; -import com.gusto.embedded_api_v_2025_11_15.models.components.*; +import com.gusto.embedded_api_v_2025_11_15.models.components.TaxLiabilitySelectionsRequest; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1ExternalPayrollHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1ExternalPayrollResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1TaxLiabilitiesHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1TaxLiabilitiesResponse; import java.lang.Exception; import java.util.List; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + public static void main(String[] args) throws NotFoundErrorObject, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1ExternalPayrollResponse res = sdk.externalPayrolls().update() - .xGustoAPIVersion(PutV1ExternalPayrollHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + PutV1TaxLiabilitiesResponse res = sdk.externalPayrolls().updateTaxLiabilities() + .xGustoAPIVersion(PutV1TaxLiabilitiesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .companyUuid("") - .externalPayrollId("") - .externalPayrollUpdateRequest(ExternalPayrollUpdateRequest.builder() - .externalPayrollItems(List.of( - ExternalPayrollUpdateRequestExternalPayrollItems.builder() - .employeeUuid("44f7cba9-7a3d-4f08-b7bd-6fcf5211f8ca") - .earnings(List.of( - ExternalPayrollUpdateRequestEarnings.builder() - .earningType(ExternalPayrollUpdateRequestEarningType.COMPANY_PAY_TYPE) - .earningId(1L) - .amount("10000.00") - .hours("80.0") - .build())) - .benefits(List.of( - ExternalPayrollUpdateRequestBenefits.builder() - .benefitId(22L) - .companyContributionAmount("100.00") - .employeeDeductionAmount("50.00") - .build())) - .taxes(List.of( - ExternalPayrollUpdateRequestTaxes.builder() - .taxId(1L) - .amount("400.00") - .build())) - .build())) + .taxLiabilitySelectionsRequest(TaxLiabilitySelectionsRequest.builder() + .liabilitySelections(List.of()) .build()) .call(); - if (res.externalPayroll().isPresent()) { - System.out.println(res.externalPayroll().get()); + if (res.taxLiabilitiesSelections().isPresent()) { + System.out.println(res.taxLiabilitiesSelections().get()); } } } @@ -266,40 +241,41 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1ExternalPayrollHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1TaxLiabilitiesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | -| `externalPayrollId` | *String* | :heavy_check_mark: | The UUID of the external payroll | -| `externalPayrollUpdateRequest` | [ExternalPayrollUpdateRequest](../../models/components/ExternalPayrollUpdateRequest.md) | :heavy_check_mark: | N/A | +| `taxLiabilitySelectionsRequest` | [TaxLiabilitySelectionsRequest](../../models/components/TaxLiabilitySelectionsRequest.md) | :heavy_check_mark: | N/A | ### Response -**[PutV1ExternalPayrollResponse](../../models/operations/PutV1ExternalPayrollResponse.md)** +**[PutV1TaxLiabilitiesResponse](../../models/operations/PutV1TaxLiabilitiesResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| -------------------------------------- | -------------------------------------- | -------------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/UnprocessableEntityError | 422 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | -## delete +## finalizeTaxLiabilities -Delete an external payroll. +Finalizes tax liabilities for a company. All external payrolls edit action will be disabled. + +### Asynchronous processing +This endpoint triggers an asynchronous operation. The external payrolls will be processed in the background after finalization. scope: `external_payrolls:write` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1ExternalPayrollHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1ExternalPayrollResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1TaxLiabilitiesFinishHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1TaxLiabilitiesFinishResponse; import java.lang.Exception; public class Application { @@ -310,10 +286,9 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - DeleteV1ExternalPayrollResponse res = sdk.externalPayrolls().delete() - .xGustoAPIVersion(DeleteV1ExternalPayrollHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + PutV1TaxLiabilitiesFinishResponse res = sdk.externalPayrolls().finalizeTaxLiabilities() + .xGustoAPIVersion(PutV1TaxLiabilitiesFinishHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .companyUuid("") - .externalPayrollId("") .call(); // handle response @@ -325,13 +300,12 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1ExternalPayrollHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1TaxLiabilitiesFinishHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | -| `externalPayrollId` | *String* | :heavy_check_mark: | The UUID of the external payroll | ### Response -**[DeleteV1ExternalPayrollResponse](../../models/operations/DeleteV1ExternalPayrollResponse.md)** +**[PutV1TaxLiabilitiesFinishResponse](../../models/operations/PutV1TaxLiabilitiesFinishResponse.md)** ### Errors @@ -341,41 +315,40 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## calculateTaxes +## retrieve -Get tax suggestions for an external payroll. Earnings and/or benefits data must be saved prior to the calculation in order to retrieve accurate tax calculation. +Get an external payroll for a given company. scope: `external_payrolls:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ExternalPayrollCalculateTaxesHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ExternalPayrollCalculateTaxesResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ExternalPayrollHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ExternalPayrollResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + public static void main(String[] args) throws NotFoundErrorObject, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1ExternalPayrollCalculateTaxesResponse res = sdk.externalPayrolls().calculateTaxes() - .xGustoAPIVersion(GetV1ExternalPayrollCalculateTaxesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + GetV1ExternalPayrollResponse res = sdk.externalPayrolls().retrieve() + .xGustoAPIVersion(GetV1ExternalPayrollHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .companyUuid("") .externalPayrollId("") .call(); - if (res.externalPayrollTaxSuggestions().isPresent()) { - System.out.println(res.externalPayrollTaxSuggestions().get()); + if (res.externalPayroll().isPresent()) { + System.out.println(res.externalPayroll().get()); } } } @@ -385,55 +358,82 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1ExternalPayrollCalculateTaxesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1ExternalPayrollHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `externalPayrollId` | *String* | :heavy_check_mark: | The UUID of the external payroll | ### Response -**[GetV1ExternalPayrollCalculateTaxesResponse](../../models/operations/GetV1ExternalPayrollCalculateTaxesResponse.md)** +**[GetV1ExternalPayrollResponse](../../models/operations/GetV1ExternalPayrollResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| -------------------------------------- | -------------------------------------- | -------------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/UnprocessableEntityError | 422 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | -## listTaxLiabilities +## update -Get tax liabilities from aggregate external payrolls for a company. +Update an external payroll with a list of external payroll items. -scope: `external_payrolls:read` +scope: `external_payrolls:write` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; +import com.gusto.embedded_api_v_2025_11_15.models.components.*; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1TaxLiabilitiesHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1TaxLiabilitiesResponse; +import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1ExternalPayrollHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1ExternalPayrollResponse; import java.lang.Exception; +import java.util.List; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, Exception { + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1TaxLiabilitiesResponse res = sdk.externalPayrolls().listTaxLiabilities() - .xGustoAPIVersion(GetV1TaxLiabilitiesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + PutV1ExternalPayrollResponse res = sdk.externalPayrolls().update() + .xGustoAPIVersion(PutV1ExternalPayrollHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .companyUuid("") + .externalPayrollId("") + .externalPayrollUpdateRequest(ExternalPayrollUpdateRequest.builder() + .externalPayrollItems(List.of( + ExternalPayrollUpdateRequestExternalPayrollItems.builder() + .employeeUuid("44f7cba9-7a3d-4f08-b7bd-6fcf5211f8ca") + .earnings(List.of( + ExternalPayrollUpdateRequestEarnings.builder() + .earningType(ExternalPayrollUpdateRequestEarningType.COMPANY_PAY_TYPE) + .earningId(1L) + .amount("10000.00") + .hours("80.0") + .build())) + .benefits(List.of( + ExternalPayrollUpdateRequestBenefits.builder() + .benefitId(22L) + .companyContributionAmount("100.00") + .employeeDeductionAmount("50.00") + .build())) + .taxes(List.of( + ExternalPayrollUpdateRequestTaxes.builder() + .taxId(1L) + .amount("400.00") + .build())) + .build())) + .build()) .call(); - if (res.taxLiabilitiesSelections().isPresent()) { - System.out.println(res.taxLiabilitiesSelections().get()); + if (res.externalPayroll().isPresent()) { + System.out.println(res.externalPayroll().get()); } } } @@ -443,59 +443,57 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1TaxLiabilitiesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1ExternalPayrollHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | +| `externalPayrollId` | *String* | :heavy_check_mark: | The UUID of the external payroll | +| `externalPayrollUpdateRequest` | [ExternalPayrollUpdateRequest](../../models/components/ExternalPayrollUpdateRequest.md) | :heavy_check_mark: | N/A | ### Response -**[GetV1TaxLiabilitiesResponse](../../models/operations/GetV1TaxLiabilitiesResponse.md)** +**[PutV1ExternalPayrollResponse](../../models/operations/PutV1ExternalPayrollResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| --------------------------------- | --------------------------------- | --------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | -## updateTaxLiabilities +## delete -Update tax liabilities for a company. +Delete an external payroll. scope: `external_payrolls:write` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; -import com.gusto.embedded_api_v_2025_11_15.models.components.TaxLiabilitySelectionsRequest; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1TaxLiabilitiesHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1TaxLiabilitiesResponse; +import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1ExternalPayrollHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1ExternalPayrollResponse; import java.lang.Exception; -import java.util.List; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, Exception { + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1TaxLiabilitiesResponse res = sdk.externalPayrolls().updateTaxLiabilities() - .xGustoAPIVersion(PutV1TaxLiabilitiesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + DeleteV1ExternalPayrollResponse res = sdk.externalPayrolls().delete() + .xGustoAPIVersion(DeleteV1ExternalPayrollHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .companyUuid("") - .taxLiabilitySelectionsRequest(TaxLiabilitySelectionsRequest.builder() - .liabilitySelections(List.of()) - .build()) + .externalPayrollId("") .call(); - if (res.taxLiabilitiesSelections().isPresent()) { - System.out.println(res.taxLiabilitiesSelections().get()); - } + // handle response } } ``` @@ -504,41 +502,39 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1TaxLiabilitiesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1ExternalPayrollHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | -| `taxLiabilitySelectionsRequest` | [TaxLiabilitySelectionsRequest](../../models/components/TaxLiabilitySelectionsRequest.md) | :heavy_check_mark: | N/A | +| `externalPayrollId` | *String* | :heavy_check_mark: | The UUID of the external payroll | ### Response -**[PutV1TaxLiabilitiesResponse](../../models/operations/PutV1TaxLiabilitiesResponse.md)** +**[DeleteV1ExternalPayrollResponse](../../models/operations/DeleteV1ExternalPayrollResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| --------------------------------- | --------------------------------- | --------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | - -## finalizeTaxLiabilities +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | -Finalizes tax liabilities for a company. All external payrolls edit action will be disabled. +## calculateTaxes -### Asynchronous processing -This endpoint triggers an asynchronous operation. The external payrolls will be processed in the background after finalization. +Get tax suggestions for an external payroll. Earnings and/or benefits data must be saved prior to the calculation in order to retrieve accurate tax calculation. -scope: `external_payrolls:write` +scope: `external_payrolls:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1TaxLiabilitiesFinishHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1TaxLiabilitiesFinishResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ExternalPayrollCalculateTaxesHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ExternalPayrollCalculateTaxesResponse; import java.lang.Exception; public class Application { @@ -549,12 +545,15 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1TaxLiabilitiesFinishResponse res = sdk.externalPayrolls().finalizeTaxLiabilities() - .xGustoAPIVersion(PutV1TaxLiabilitiesFinishHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + GetV1ExternalPayrollCalculateTaxesResponse res = sdk.externalPayrolls().calculateTaxes() + .xGustoAPIVersion(GetV1ExternalPayrollCalculateTaxesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .companyUuid("") + .externalPayrollId("") .call(); - // handle response + if (res.externalPayrollTaxSuggestions().isPresent()) { + System.out.println(res.externalPayrollTaxSuggestions().get()); + } } } ``` @@ -563,12 +562,13 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1TaxLiabilitiesFinishHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1ExternalPayrollCalculateTaxesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | +| `externalPayrollId` | *String* | :heavy_check_mark: | The UUID of the external payroll | ### Response -**[PutV1TaxLiabilitiesFinishResponse](../../models/operations/PutV1TaxLiabilitiesFinishResponse.md)** +**[GetV1ExternalPayrollCalculateTaxesResponse](../../models/operations/GetV1ExternalPayrollCalculateTaxesResponse.md)** ### Errors diff --git a/gusto_embedded_v_2025_11_15/docs/sdks/federaltaxdetails/README.md b/gusto_embedded_v_2025_11_15/docs/sdks/federaltaxdetails/README.md index f9cfb9987..f97b691aa 100644 --- a/gusto_embedded_v_2025_11_15/docs/sdks/federaltaxdetails/README.md +++ b/gusto_embedded_v_2025_11_15/docs/sdks/federaltaxdetails/README.md @@ -34,8 +34,8 @@ public class Application { .build(); GetV1CompaniesCompanyIdFederalTaxDetailsResponse res = sdk.federalTaxDetails().get() - .companyId("7b1d0df1-6403-4a06-8768-c1dd7d24d27a") .xGustoAPIVersion(GetV1CompaniesCompanyIdFederalTaxDetailsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .companyId("7b1d0df1-6403-4a06-8768-c1dd7d24d27a") .call(); if (res.federalTaxDetails().isPresent()) { @@ -49,8 +49,8 @@ public class Application { | Parameter | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | 7b1d0df1-6403-4a06-8768-c1dd7d24d27a | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdFederalTaxDetailsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | 7b1d0df1-6403-4a06-8768-c1dd7d24d27a | ### Response @@ -86,23 +86,22 @@ package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; import com.gusto.embedded_api_v_2025_11_15.models.components.*; -import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api_v_2025_11_15.models.errors.*; import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1CompaniesCompanyIdFederalTaxDetailsHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1CompaniesCompanyIdFederalTaxDetailsResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + public static void main(String[] args) throws ForbiddenErrorObject, NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); PutV1CompaniesCompanyIdFederalTaxDetailsResponse res = sdk.federalTaxDetails().update() - .companyId("7b1d0df1-6403-4a06-8768-c1dd7d24d27a") .xGustoAPIVersion(PutV1CompaniesCompanyIdFederalTaxDetailsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .companyId("7b1d0df1-6403-4a06-8768-c1dd7d24d27a") .federalTaxDetailsUpdate(FederalTaxDetailsUpdate.builder() .version("6cb95e00540706ca48d4577b3c839fbe") .legalName("Acme Corp.") @@ -124,8 +123,8 @@ public class Application { | Parameter | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | 7b1d0df1-6403-4a06-8768-c1dd7d24d27a | | `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1CompaniesCompanyIdFederalTaxDetailsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | 7b1d0df1-6403-4a06-8768-c1dd7d24d27a | | `federalTaxDetailsUpdate` | [FederalTaxDetailsUpdate](../../models/components/FederalTaxDetailsUpdate.md) | :heavy_check_mark: | N/A | | ### Response @@ -136,6 +135,7 @@ public class Application { | Error Type | Status Code | Content Type | | -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/ForbiddenErrorObject | 403 | application/json | | models/errors/NotFoundErrorObject | 404 | application/json | | models/errors/UnprocessableEntityError | 409, 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/sdks/garnishments/README.md b/gusto_embedded_v_2025_11_15/docs/sdks/garnishments/README.md index ce932814f..bca3fe26a 100644 --- a/gusto_embedded_v_2025_11_15/docs/sdks/garnishments/README.md +++ b/gusto_embedded_v_2025_11_15/docs/sdks/garnishments/README.md @@ -6,9 +6,9 @@ * [list](#list) - Get garnishments for an employee * [create](#create) - Create a garnishment +* [getChildSupportData](#getchildsupportdata) - Get child support garnishment data * [get](#get) - Get a garnishment * [update](#update) - Update a garnishment -* [getChildSupportData](#getchildsupportdata) - Get child support garnishment data ## list @@ -132,6 +132,58 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | +## getChildSupportData + +Agency data and requirements to be used for creating child support garnishments + +scope: `garnishments:read` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1GarnishmentsChildSupportHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1GarnishmentsChildSupportResponse; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + GetV1GarnishmentsChildSupportResponse res = sdk.garnishments().getChildSupportData() + .xGustoAPIVersion(GetV1GarnishmentsChildSupportHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .call(); + + if (res.childSupportData().isPresent()) { + System.out.println(res.childSupportData().get()); + } + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1GarnishmentsChildSupportHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | + +### Response + +**[GetV1GarnishmentsChildSupportResponse](../../models/operations/GetV1GarnishmentsChildSupportResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| -------------------------- | -------------------------- | -------------------------- | +| models/errors/APIException | 4XX, 5XX | \*/\* | + ## get Garnishments, or employee deductions, are fixed amounts or percentages deducted from an employee’s pay. They can be deducted a specific number of times or on a recurring basis. Garnishments can also have maximum deductions on a yearly or per-pay-period bases. Common uses for garnishments are court-ordered payments for child support or back taxes. Some companies provide loans to their employees that are repaid via garnishments. @@ -249,56 +301,4 @@ public class Application { | -------------------------------------- | -------------------------------------- | -------------------------------------- | | models/errors/NotFoundErrorObject | 404 | application/json | | models/errors/UnprocessableEntityError | 422 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | - -## getChildSupportData - -Agency data and requirements to be used for creating child support garnishments - -scope: `garnishments:read` - -### Example Usage - - -```java -package hello.world; - -import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1GarnishmentsChildSupportHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1GarnishmentsChildSupportResponse; -import java.lang.Exception; - -public class Application { - - public static void main(String[] args) throws Exception { - - GustoEmbedded sdk = GustoEmbedded.builder() - .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) - .build(); - - GetV1GarnishmentsChildSupportResponse res = sdk.garnishments().getChildSupportData() - .xGustoAPIVersion(GetV1GarnishmentsChildSupportHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) - .call(); - - if (res.childSupportData().isPresent()) { - System.out.println(res.childSupportData().get()); - } - } -} -``` - -### Parameters - -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1GarnishmentsChildSupportHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | - -### Response - -**[GetV1GarnishmentsChildSupportResponse](../../models/operations/GetV1GarnishmentsChildSupportResponse.md)** - -### Errors - -| Error Type | Status Code | Content Type | -| -------------------------- | -------------------------- | -------------------------- | -| models/errors/APIException | 4XX, 5XX | \*/\* | \ No newline at end of file +| models/errors/APIException | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/sdks/generateddocuments/README.md b/gusto_embedded_v_2025_11_15/docs/sdks/generateddocuments/README.md index cca180ab5..a8a97bc01 100644 --- a/gusto_embedded_v_2025_11_15/docs/sdks/generateddocuments/README.md +++ b/gusto_embedded_v_2025_11_15/docs/sdks/generateddocuments/README.md @@ -19,10 +19,8 @@ scope: `generated_documents:read` package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; -import com.gusto.embedded_api_v_2025_11_15.models.components.VersionHeader; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.operations.DocumentType; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1GeneratedDocumentsDocumentTypeRequestUuidResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.*; import java.lang.Exception; public class Application { @@ -34,9 +32,9 @@ public class Application { .build(); GetV1GeneratedDocumentsDocumentTypeRequestUuidResponse res = sdk.generatedDocuments().get() + .xGustoAPIVersion(GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .documentType(DocumentType.PRINTABLE_PAYROLL_CHECKS) .requestUuid("") - .xGustoAPIVersion(VersionHeader.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .call(); if (res.generatedDocument().isPresent()) { @@ -50,9 +48,9 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `documentType` | [DocumentType](../../models/operations/DocumentType.md) | :heavy_check_mark: | The type of document being generated | | `requestUuid` | *String* | :heavy_check_mark: | The UUID of the request to generate a document. Generate document endpoints return request_uuids to be used with the GET generated document endpoint. | -| `xGustoAPIVersion` | [Optional\](../../models/components/VersionHeader.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | ### Response diff --git a/gusto_embedded_v_2025_11_15/docs/sdks/industryselection/README.md b/gusto_embedded_v_2025_11_15/docs/sdks/industryselection/README.md index 4228d4e14..fa3a8d4fb 100644 --- a/gusto_embedded_v_2025_11_15/docs/sdks/industryselection/README.md +++ b/gusto_embedded_v_2025_11_15/docs/sdks/industryselection/README.md @@ -34,8 +34,8 @@ public class Application { .build(); GetV1CompanyIndustryResponse res = sdk.industrySelection().get() - .companyId("") .xGustoAPIVersion(GetV1CompanyIndustryHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .companyId("") .call(); if (res.industry().isPresent()) { @@ -49,8 +49,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompanyIndustryHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | ### Response @@ -99,8 +99,8 @@ public class Application { .build(); PutV1CompanyIndustryResponse res = sdk.industrySelection().update() - .companyId("") .xGustoAPIVersion(PutV1CompanyIndustryHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .companyId("") .companyIndustrySelectionRequiredBody(CompanyIndustrySelectionRequiredBody.builder() .naicsCode("611420") .title("Computer Training") @@ -120,8 +120,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1CompanyIndustryHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | `companyIndustrySelectionRequiredBody` | [CompanyIndustrySelectionRequiredBody](../../models/components/CompanyIndustrySelectionRequiredBody.md) | :heavy_check_mark: | N/A | ### Response diff --git a/gusto_embedded_v_2025_11_15/docs/sdks/introspection/README.md b/gusto_embedded_v_2025_11_15/docs/sdks/introspection/README.md index 4f7b6d216..e8848fc05 100644 --- a/gusto_embedded_v_2025_11_15/docs/sdks/introspection/README.md +++ b/gusto_embedded_v_2025_11_15/docs/sdks/introspection/README.md @@ -4,40 +4,53 @@ ### Available Operations -* [getInfo](#getinfo) - Get info about the current access token * [oauthAccessToken](#oauthaccesstoken) - Create a System Access Token or Refresh an Access Token +* [getInfo](#getinfo) - Get info about the current access token -## getInfo +## oauthAccessToken -Returns scope and resource information associated with the current access token. Use this endpoint to verify the following for the current access token: -* Resource (company, employee, contractor, or application) and resource owner -* Access level +Creates a system access token or refreshes an oauth access token ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1TokenInfoResponse; -import com.gusto.embedded_api_v_2025_11_15.models.operations.XGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.components.*; +import com.gusto.embedded_api_v_2025_11_15.models.operations.*; import java.lang.Exception; +import java.lang.Object; public class Application { public static void main(String[] args) throws Exception { GustoEmbedded sdk = GustoEmbedded.builder() - .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1TokenInfoResponse res = sdk.introspection().getInfo() - .xGustoAPIVersion(XGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + OauthAccessTokenResponse res = sdk.introspection().oauthAccessToken() + .xGustoAPIVersion(OauthAccessTokenHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .requestBody(OauthAccessTokenRequestBody.of(SystemAccessTokenRequest.builder() + .clientId("qr6L_9FRkbMVL_GdwvrMW6Ef8tcU6NUxjWpOfqXqOG8") + .clientSecret("3aQSHRB3596nZhm6NdNBELZ1u9xbZmvCrKpBhbZYq6w") + .grantType(RequestBodyGrantType.SYSTEM_ACCESS) + .build())) .call(); - if (res.tokenInfo().isPresent()) { - System.out.println(res.tokenInfo().get()); + if (res.authentication().isPresent()) { + Authentication unionValue = res.authentication().get(); + Object raw = unionValue.value(); + if (raw instanceof CreateTokenAuthentication) { + CreateTokenAuthentication createTokenAuthenticationValue = (CreateTokenAuthentication) raw; + // Handle createTokenAuthentication variant + } else if (raw instanceof RefreshTokenAuthentication) { + RefreshTokenAuthentication refreshTokenAuthenticationValue = (RefreshTokenAuthentication) raw; + // Handle refreshTokenAuthentication variant + } else { + // Unknown or unsupported variant + } } } } @@ -47,11 +60,12 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/XGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/OauthAccessTokenHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `requestBody` | [OauthAccessTokenRequestBody](../../models/operations/OauthAccessTokenRequestBody.md) | :heavy_check_mark: | N/A | ### Response -**[GetV1TokenInfoResponse](../../models/operations/GetV1TokenInfoResponse.md)** +**[OauthAccessTokenResponse](../../models/operations/OauthAccessTokenResponse.md)** ### Errors @@ -59,50 +73,37 @@ public class Application { | -------------------------- | -------------------------- | -------------------------- | | models/errors/APIException | 4XX, 5XX | \*/\* | -## oauthAccessToken +## getInfo -Creates a system access token or refreshes an oauth access token +Returns scope and resource information associated with the current access token. Use this endpoint to verify the following for the current access token: +* Resource (company, employee, contractor, or application) and resource owner +* Access level ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; -import com.gusto.embedded_api_v_2025_11_15.models.components.*; -import com.gusto.embedded_api_v_2025_11_15.models.operations.*; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1TokenInfoHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1TokenInfoResponse; import java.lang.Exception; -import java.lang.Object; public class Application { public static void main(String[] args) throws Exception { GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - OauthAccessTokenResponse res = sdk.introspection().oauthAccessToken() - .xGustoAPIVersion(HeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) - .requestBody(OauthAccessTokenRequestBody.of(SystemAccessTokenRequest.builder() - .clientId("qr6L_9FRkbMVL_GdwvrMW6Ef8tcU6NUxjWpOfqXqOG8") - .clientSecret("3aQSHRB3596nZhm6NdNBELZ1u9xbZmvCrKpBhbZYq6w") - .grantType(RequestBodyGrantType.SYSTEM_ACCESS) - .build())) + GetV1TokenInfoResponse res = sdk.introspection().getInfo() + .xGustoAPIVersion(GetV1TokenInfoHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .call(); - if (res.authentication().isPresent()) { - Authentication unionValue = res.authentication().get(); - Object raw = unionValue.value(); - if (raw instanceof CreateTokenAuthentication) { - CreateTokenAuthentication createTokenAuthenticationValue = (CreateTokenAuthentication) raw; - // Handle createTokenAuthentication variant - } else if (raw instanceof RefreshTokenAuthentication) { - RefreshTokenAuthentication refreshTokenAuthenticationValue = (RefreshTokenAuthentication) raw; - // Handle refreshTokenAuthentication variant - } else { - // Unknown or unsupported variant - } + if (res.tokenInfo().isPresent()) { + System.out.println(res.tokenInfo().get()); } } } @@ -112,12 +113,11 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/HeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `requestBody` | [OauthAccessTokenRequestBody](../../models/operations/OauthAccessTokenRequestBody.md) | :heavy_check_mark: | N/A | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1TokenInfoHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | ### Response -**[OauthAccessTokenResponse](../../models/operations/OauthAccessTokenResponse.md)** +**[GetV1TokenInfoResponse](../../models/operations/GetV1TokenInfoResponse.md)** ### Errors diff --git a/gusto_embedded_v_2025_11_15/docs/sdks/jobsandcompensations/README.md b/gusto_embedded_v_2025_11_15/docs/sdks/jobsandcompensations/README.md index 3e90253d5..2ae6a5fce 100644 --- a/gusto_embedded_v_2025_11_15/docs/sdks/jobsandcompensations/README.md +++ b/gusto_embedded_v_2025_11_15/docs/sdks/jobsandcompensations/README.md @@ -4,36 +4,38 @@ ### Available Operations -* [getJobs](#getjobs) - Get jobs for an employee -* [createJob](#createjob) - Create a job -* [getJob](#getjob) - Get a job -* [update](#update) - Update a job -* [delete](#delete) - Delete an individual job * [getCompensations](#getcompensations) - Get compensations for a job * [createCompensation](#createcompensation) - Create a compensation * [getCompensation](#getcompensation) - Get a compensation * [updateCompensation](#updatecompensation) - Update a compensation * [deleteCompensation](#deletecompensation) - Delete a compensation +* [getJob](#getjob) - Get a job +* [update](#update) - Update a job +* [delete](#delete) - Delete an individual job +* [getJobs](#getjobs) - Get jobs for an employee +* [createJob](#createjob) - Create a job -## getJobs +## getCompensations -Get all of the jobs that an employee holds. -Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope is included. This allows you to access employee and job metadata without exposing pay rates. +Compensations contain information on how much is paid out for a job. Jobs may have many compensations, but only one that is active. The current compensation is the one with the most recent `effective_date`. -Compensation data in the response requires the `compensations:read` scope. +*Note: Currently the API does not support creating multiple compensations per job - creating a compensation with the same job_uuid as another will fail with a relevant error.* -scope: `jobs:read` +Use `flsa_status` to determine if an employee is eligible for overtime +By default the API returns only the current compensation - use the `include` parameter to return all compensations. + +scope: `compensations:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1EmployeesEmployeeIdJobsRequest; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1EmployeesEmployeeIdJobsResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1JobsJobIdCompensationsRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1JobsJobIdCompensationsResponse; import java.lang.Exception; public class Application { @@ -44,16 +46,16 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1EmployeesEmployeeIdJobsRequest req = GetV1EmployeesEmployeeIdJobsRequest.builder() - .employeeId("") + GetV1JobsJobIdCompensationsRequest req = GetV1JobsJobIdCompensationsRequest.builder() + .jobId("") .build(); - GetV1EmployeesEmployeeIdJobsResponse res = sdk.jobsAndCompensations().getJobs() + GetV1JobsJobIdCompensationsResponse res = sdk.jobsAndCompensations().getCompensations() .request(req) .call(); - if (res.jobs().isPresent()) { - System.out.println(res.jobs().get()); + if (res.compensations().isPresent()) { + System.out.println(res.compensations().get()); } } } @@ -61,13 +63,13 @@ public class Application { ### Parameters -| Parameter | Type | Required | Description | -| ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | -| `request` | [GetV1EmployeesEmployeeIdJobsRequest](../../models/operations/GetV1EmployeesEmployeeIdJobsRequest.md) | :heavy_check_mark: | The request object to use for the request. | +| Parameter | Type | Required | Description | +| --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | +| `request` | [GetV1JobsJobIdCompensationsRequest](../../models/operations/GetV1JobsJobIdCompensationsRequest.md) | :heavy_check_mark: | The request object to use for the request. | ### Response -**[GetV1EmployeesEmployeeIdJobsResponse](../../models/operations/GetV1EmployeesEmployeeIdJobsResponse.md)** +**[GetV1JobsJobIdCompensationsResponse](../../models/operations/GetV1JobsJobIdCompensationsResponse.md)** ### Errors @@ -76,24 +78,31 @@ public class Application { | models/errors/NotFoundErrorObject | 404 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## createJob +## createCompensation -Create a job. +Compensations contain information on how much is paid out for a job. Jobs may have many compensations, but only one that is active. The current compensation is the one with the most recent `effective_date`. -scope: `jobs:write` +### Prerequisites +Before calling this endpoint: +1. A [job](ref:post-v1-jobs-job_id) must exist for the employee + +### Webhooks +- `employee_job_compensation.created`: Fires when a compensation is successfully created + +scope: `compensations:write` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; -import com.gusto.embedded_api_v_2025_11_15.models.components.JobsCreateRequestBody; +import com.gusto.embedded_api_v_2025_11_15.models.components.*; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1EmployeesEmployeeIdJobsHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1EmployeesEmployeeIdJobsResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1CompensationsCompensationIdHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1CompensationsCompensationIdResponse; import java.lang.Exception; public class Application { @@ -104,17 +113,20 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostV1EmployeesEmployeeIdJobsResponse res = sdk.jobsAndCompensations().createJob() - .employeeId("") - .xGustoAPIVersion(PostV1EmployeesEmployeeIdJobsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) - .jobsCreateRequestBody(JobsCreateRequestBody.builder() - .title("Regional Manager") - .hireDate("2020-12-21") + PostV1CompensationsCompensationIdResponse res = sdk.jobsAndCompensations().createCompensation() + .xGustoAPIVersion(PostV1CompensationsCompensationIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .jobId("") + .compensationsRequestBody(CompensationsRequestBody.builder() + .rate("70000.00") + .paymentUnit(CompensationsRequestBodyPaymentUnit.YEAR) + .flsaStatus(FlsaStatusType.NONEXEMPT) + .effectiveDate("2023-01-01") + .title("Software Engineer") .build()) .call(); - if (res.job().isPresent()) { - System.out.println(res.job().get()); + if (res.compensation().isPresent()) { + System.out.println(res.compensation().get()); } } } @@ -124,13 +136,13 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1EmployeesEmployeeIdJobsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `jobsCreateRequestBody` | [JobsCreateRequestBody](../../models/components/JobsCreateRequestBody.md) | :heavy_check_mark: | N/A | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1CompensationsCompensationIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `jobId` | *String* | :heavy_check_mark: | The UUID of the job | +| `compensationsRequestBody` | [CompensationsRequestBody](../../models/components/CompensationsRequestBody.md) | :heavy_check_mark: | N/A | ### Response -**[PostV1EmployeesEmployeeIdJobsResponse](../../models/operations/PostV1EmployeesEmployeeIdJobsResponse.md)** +**[PostV1CompensationsCompensationIdResponse](../../models/operations/PostV1CompensationsCompensationIdResponse.md)** ### Errors @@ -140,26 +152,22 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## getJob - -Get a job. - -Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope is included. This allows you to access employee and job metadata without exposing pay rates. +## getCompensation -Compensation data in the response requires the `compensations:read` scope. +Compensations contain information on how much is paid out for a job. Jobs may have many compensations, but only one that is active. The current compensation is the one with the most recent `effective_date`. -scope: `jobs:read` +scope: `compensations:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1JobsJobIdHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1JobsJobIdResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompensationsCompensationIdHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompensationsCompensationIdResponse; import java.lang.Exception; public class Application { @@ -170,13 +178,13 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1JobsJobIdResponse res = sdk.jobsAndCompensations().getJob() - .jobId("") - .xGustoAPIVersion(GetV1JobsJobIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + GetV1CompensationsCompensationIdResponse res = sdk.jobsAndCompensations().getCompensation() + .xGustoAPIVersion(GetV1CompensationsCompensationIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .compensationId("") .call(); - if (res.job().isPresent()) { - System.out.println(res.job().get()); + if (res.compensation().isPresent()) { + System.out.println(res.compensation().get()); } } } @@ -186,13 +194,12 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `jobId` | *String* | :heavy_check_mark: | The UUID of the job | -| `include` | [Optional\](../../models/operations/GetV1JobsJobIdQueryParamInclude.md) | :heavy_minus_sign: | Available options:
    - all_compensations: Include all effective dated compensations for each job instead of only the current compensation
    | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1JobsJobIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompensationsCompensationIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `compensationId` | *String* | :heavy_check_mark: | The UUID of the compensation | ### Response -**[GetV1JobsJobIdResponse](../../models/operations/GetV1JobsJobIdResponse.md)** +**[GetV1CompensationsCompensationIdResponse](../../models/operations/GetV1CompensationsCompensationIdResponse.md)** ### Errors @@ -201,24 +208,28 @@ public class Application { | models/errors/NotFoundErrorObject | 404 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## update +## updateCompensation -Update a job. +Compensations contain information on how much is paid out for a job. Jobs may have many compensations, but only one that is active. The current compensation is the one with the most recent `effective_date`. -scope: `jobs:write` +### Webhooks +- `employee_job_compensation.updated`: Fires when a compensation is successfully updated + +scope: `compensations:write` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; -import com.gusto.embedded_api_v_2025_11_15.models.components.JobsUpdateRequestBody; +import com.gusto.embedded_api_v_2025_11_15.models.components.CompensationsUpdateRequestBody; +import com.gusto.embedded_api_v_2025_11_15.models.components.CompensationsUpdateRequestBodyPaymentUnit; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1JobsJobIdHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1JobsJobIdResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1CompensationsCompensationIdHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1CompensationsCompensationIdResponse; import java.lang.Exception; public class Application { @@ -229,18 +240,20 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1JobsJobIdResponse res = sdk.jobsAndCompensations().update() - .jobId("") - .xGustoAPIVersion(PutV1JobsJobIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) - .jobsUpdateRequestBody(JobsUpdateRequestBody.builder() + PutV1CompensationsCompensationIdResponse res = sdk.jobsAndCompensations().updateCompensation() + .xGustoAPIVersion(PutV1CompensationsCompensationIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .compensationId("") + .compensationsUpdateRequestBody(CompensationsUpdateRequestBody.builder() .version("56d00c178bc7393b2a206ed6a86afcb4") - .title("Regional Manager") - .hireDate("2020-12-21") + .rate("70000.00") + .paymentUnit(CompensationsUpdateRequestBodyPaymentUnit.YEAR) + .effectiveDate("2023-01-01") + .title("Software Engineer") .build()) .call(); - if (res.job().isPresent()) { - System.out.println(res.job().get()); + if (res.compensation().isPresent()) { + System.out.println(res.compensation().get()); } } } @@ -250,13 +263,13 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `jobId` | *String* | :heavy_check_mark: | The UUID of the job | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1JobsJobIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `jobsUpdateRequestBody` | [JobsUpdateRequestBody](../../models/components/JobsUpdateRequestBody.md) | :heavy_check_mark: | N/A | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1CompensationsCompensationIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `compensationId` | *String* | :heavy_check_mark: | The UUID of the compensation | +| `compensationsUpdateRequestBody` | [CompensationsUpdateRequestBody](../../models/components/CompensationsUpdateRequestBody.md) | :heavy_check_mark: | N/A | ### Response -**[PutV1JobsJobIdResponse](../../models/operations/PutV1JobsJobIdResponse.md)** +**[PutV1CompensationsCompensationIdResponse](../../models/operations/PutV1CompensationsCompensationIdResponse.md)** ### Errors @@ -266,23 +279,26 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## delete +## deleteCompensation -Deletes a specific job that an employee holds. +Compensations contain information on how much is paid out for a job. Jobs may have many compensations, but only one that is active. The current compensation is the one with the most recent `effective_date`. This endpoint deletes a compensation for a job that hasn't been processed on payroll. -scope: `jobs:write` +### Webhooks +- `employee_job_compensation.destroyed`: Fires when a compensation is successfully deleted + +scope: `compensations:write` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1JobsJobIdHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1JobsJobIdResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1CompensationsCompensationIdHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1CompensationsCompensationIdResponse; import java.lang.Exception; public class Application { @@ -293,9 +309,9 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - DeleteV1JobsJobIdResponse res = sdk.jobsAndCompensations().delete() - .jobId("") - .xGustoAPIVersion(DeleteV1JobsJobIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + DeleteV1CompensationsCompensationIdResponse res = sdk.jobsAndCompensations().deleteCompensation() + .xGustoAPIVersion(DeleteV1CompensationsCompensationIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .compensationId("") .call(); // handle response @@ -307,12 +323,12 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `jobId` | *String* | :heavy_check_mark: | The UUID of the job | -| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1JobsJobIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1CompensationsCompensationIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `compensationId` | *String* | :heavy_check_mark: | The UUID of the compensation | ### Response -**[DeleteV1JobsJobIdResponse](../../models/operations/DeleteV1JobsJobIdResponse.md)** +**[DeleteV1CompensationsCompensationIdResponse](../../models/operations/DeleteV1CompensationsCompensationIdResponse.md)** ### Errors @@ -322,27 +338,26 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## getCompensations +## getJob -Compensations contain information on how much is paid out for a job. Jobs may have many compensations, but only one that is active. The current compensation is the one with the most recent `effective_date`. +Get a job. -*Note: Currently the API does not support creating multiple compensations per job - creating a compensation with the same job_uuid as another will fail with a relevant error.* +Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope is included. This allows you to access employee and job metadata without exposing pay rates. -Use `flsa_status` to determine if an employee is eligible for overtime -By default the API returns only the current compensation - use the `include` parameter to return all compensations. +Compensation data in the response requires the `compensations:read` scope. -scope: `compensations:read` +scope: `jobs:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1JobsJobIdCompensationsRequest; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1JobsJobIdCompensationsResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1JobsJobIdHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1JobsJobIdResponse; import java.lang.Exception; public class Application { @@ -353,16 +368,13 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1JobsJobIdCompensationsRequest req = GetV1JobsJobIdCompensationsRequest.builder() + GetV1JobsJobIdResponse res = sdk.jobsAndCompensations().getJob() + .xGustoAPIVersion(GetV1JobsJobIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .jobId("") - .build(); - - GetV1JobsJobIdCompensationsResponse res = sdk.jobsAndCompensations().getCompensations() - .request(req) .call(); - if (res.compensations().isPresent()) { - System.out.println(res.compensations().get()); + if (res.job().isPresent()) { + System.out.println(res.job().get()); } } } @@ -370,13 +382,15 @@ public class Application { ### Parameters -| Parameter | Type | Required | Description | -| --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------- | -| `request` | [GetV1JobsJobIdCompensationsRequest](../../models/operations/GetV1JobsJobIdCompensationsRequest.md) | :heavy_check_mark: | The request object to use for the request. | +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1JobsJobIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `jobId` | *String* | :heavy_check_mark: | The UUID of the job | +| `include` | [Optional\](../../models/operations/GetV1JobsJobIdQueryParamInclude.md) | :heavy_minus_sign: | Available options:
    - all_compensations: Include all effective dated compensations for each job instead of only the current compensation
    | ### Response -**[GetV1JobsJobIdCompensationsResponse](../../models/operations/GetV1JobsJobIdCompensationsResponse.md)** +**[GetV1JobsJobIdResponse](../../models/operations/GetV1JobsJobIdResponse.md)** ### Errors @@ -385,31 +399,24 @@ public class Application { | models/errors/NotFoundErrorObject | 404 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## createCompensation - -Compensations contain information on how much is paid out for a job. Jobs may have many compensations, but only one that is active. The current compensation is the one with the most recent `effective_date`. - -### Prerequisites -Before calling this endpoint: -1. A [job](ref:post-v1-jobs-job_id) must exist for the employee +## update -### Webhooks -- `employee_job_compensation.created`: Fires when a compensation is successfully created +Update a job. -scope: `compensations:write` +scope: `jobs:write` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; -import com.gusto.embedded_api_v_2025_11_15.models.components.*; +import com.gusto.embedded_api_v_2025_11_15.models.components.JobsUpdateRequestBody; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1CompensationsCompensationIdHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1CompensationsCompensationIdResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1JobsJobIdHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1JobsJobIdResponse; import java.lang.Exception; public class Application { @@ -420,20 +427,18 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostV1CompensationsCompensationIdResponse res = sdk.jobsAndCompensations().createCompensation() - .xGustoAPIVersion(PostV1CompensationsCompensationIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + PutV1JobsJobIdResponse res = sdk.jobsAndCompensations().update() + .xGustoAPIVersion(PutV1JobsJobIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .jobId("") - .compensationsRequestBody(CompensationsRequestBody.builder() - .rate("70000.00") - .paymentUnit(CompensationsRequestBodyPaymentUnit.YEAR) - .flsaStatus(FlsaStatusType.NONEXEMPT) - .effectiveDate("2023-01-01") - .title("Software Engineer") + .jobsUpdateRequestBody(JobsUpdateRequestBody.builder() + .version("56d00c178bc7393b2a206ed6a86afcb4") + .title("Regional Manager") + .hireDate("2020-12-21") .build()) .call(); - if (res.compensation().isPresent()) { - System.out.println(res.compensation().get()); + if (res.job().isPresent()) { + System.out.println(res.job().get()); } } } @@ -443,13 +448,13 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1CompensationsCompensationIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1JobsJobIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `jobId` | *String* | :heavy_check_mark: | The UUID of the job | -| `compensationsRequestBody` | [CompensationsRequestBody](../../models/components/CompensationsRequestBody.md) | :heavy_check_mark: | N/A | +| `jobsUpdateRequestBody` | [JobsUpdateRequestBody](../../models/components/JobsUpdateRequestBody.md) | :heavy_check_mark: | N/A | ### Response -**[PostV1CompensationsCompensationIdResponse](../../models/operations/PostV1CompensationsCompensationIdResponse.md)** +**[PutV1JobsJobIdResponse](../../models/operations/PutV1JobsJobIdResponse.md)** ### Errors @@ -459,40 +464,39 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## getCompensation +## delete -Compensations contain information on how much is paid out for a job. Jobs may have many compensations, but only one that is active. The current compensation is the one with the most recent `effective_date`. +Deletes a specific job that an employee holds. -scope: `compensations:read` +scope: `jobs:write` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompensationsCompensationIdHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompensationsCompensationIdResponse; +import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1JobsJobIdHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1JobsJobIdResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, Exception { + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1CompensationsCompensationIdResponse res = sdk.jobsAndCompensations().getCompensation() - .xGustoAPIVersion(GetV1CompensationsCompensationIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) - .compensationId("") + DeleteV1JobsJobIdResponse res = sdk.jobsAndCompensations().delete() + .xGustoAPIVersion(DeleteV1JobsJobIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .jobId("") .call(); - if (res.compensation().isPresent()) { - System.out.println(res.compensation().get()); - } + // handle response } } ``` @@ -501,66 +505,60 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompensationsCompensationIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `compensationId` | *String* | :heavy_check_mark: | The UUID of the compensation | +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1JobsJobIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `jobId` | *String* | :heavy_check_mark: | The UUID of the job | ### Response -**[GetV1CompensationsCompensationIdResponse](../../models/operations/GetV1CompensationsCompensationIdResponse.md)** +**[DeleteV1JobsJobIdResponse](../../models/operations/DeleteV1JobsJobIdResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| --------------------------------- | --------------------------------- | --------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | -## updateCompensation +## getJobs -Compensations contain information on how much is paid out for a job. Jobs may have many compensations, but only one that is active. The current compensation is the one with the most recent `effective_date`. +Get all of the jobs that an employee holds. +Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope is included. This allows you to access employee and job metadata without exposing pay rates. -### Webhooks -- `employee_job_compensation.updated`: Fires when a compensation is successfully updated +Compensation data in the response requires the `compensations:read` scope. -scope: `compensations:write` +scope: `jobs:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; -import com.gusto.embedded_api_v_2025_11_15.models.components.CompensationsUpdateRequestBody; -import com.gusto.embedded_api_v_2025_11_15.models.components.CompensationsUpdateRequestBodyPaymentUnit; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1CompensationsCompensationIdHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1CompensationsCompensationIdResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1EmployeesEmployeeIdJobsRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1EmployeesEmployeeIdJobsResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + public static void main(String[] args) throws NotFoundErrorObject, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1CompensationsCompensationIdResponse res = sdk.jobsAndCompensations().updateCompensation() - .xGustoAPIVersion(PutV1CompensationsCompensationIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) - .compensationId("") - .compensationsUpdateRequestBody(CompensationsUpdateRequestBody.builder() - .version("56d00c178bc7393b2a206ed6a86afcb4") - .rate("70000.00") - .paymentUnit(CompensationsUpdateRequestBodyPaymentUnit.YEAR) - .effectiveDate("2023-01-01") - .title("Software Engineer") - .build()) + GetV1EmployeesEmployeeIdJobsRequest req = GetV1EmployeesEmployeeIdJobsRequest.builder() + .employeeId("") + .build(); + + GetV1EmployeesEmployeeIdJobsResponse res = sdk.jobsAndCompensations().getJobs() + .request(req) .call(); - if (res.compensation().isPresent()) { - System.out.println(res.compensation().get()); + if (res.jobs().isPresent()) { + System.out.println(res.jobs().get()); } } } @@ -568,44 +566,39 @@ public class Application { ### Parameters -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1CompensationsCompensationIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `compensationId` | *String* | :heavy_check_mark: | The UUID of the compensation | -| `compensationsUpdateRequestBody` | [CompensationsUpdateRequestBody](../../models/components/CompensationsUpdateRequestBody.md) | :heavy_check_mark: | N/A | +| Parameter | Type | Required | Description | +| ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | +| `request` | [GetV1EmployeesEmployeeIdJobsRequest](../../models/operations/GetV1EmployeesEmployeeIdJobsRequest.md) | :heavy_check_mark: | The request object to use for the request. | ### Response -**[PutV1CompensationsCompensationIdResponse](../../models/operations/PutV1CompensationsCompensationIdResponse.md)** +**[GetV1EmployeesEmployeeIdJobsResponse](../../models/operations/GetV1EmployeesEmployeeIdJobsResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| -------------------------------------- | -------------------------------------- | -------------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/UnprocessableEntityError | 422 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | - -## deleteCompensation +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | -Compensations contain information on how much is paid out for a job. Jobs may have many compensations, but only one that is active. The current compensation is the one with the most recent `effective_date`. This endpoint deletes a compensation for a job that hasn't been processed on payroll. +## createJob -### Webhooks -- `employee_job_compensation.destroyed`: Fires when a compensation is successfully deleted +Create a job. -scope: `compensations:write` +scope: `jobs:write` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; +import com.gusto.embedded_api_v_2025_11_15.models.components.JobsCreateRequestBody; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1CompensationsCompensationIdHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1CompensationsCompensationIdResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1EmployeesEmployeeIdJobsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1EmployeesEmployeeIdJobsResponse; import java.lang.Exception; public class Application { @@ -616,12 +609,18 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - DeleteV1CompensationsCompensationIdResponse res = sdk.jobsAndCompensations().deleteCompensation() - .xGustoAPIVersion(DeleteV1CompensationsCompensationIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) - .compensationId("") + PostV1EmployeesEmployeeIdJobsResponse res = sdk.jobsAndCompensations().createJob() + .xGustoAPIVersion(PostV1EmployeesEmployeeIdJobsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .employeeId("") + .jobsCreateRequestBody(JobsCreateRequestBody.builder() + .title("Regional Manager") + .hireDate("2020-12-21") + .build()) .call(); - // handle response + if (res.job().isPresent()) { + System.out.println(res.job().get()); + } } } ``` @@ -630,12 +629,13 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1CompensationsCompensationIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `compensationId` | *String* | :heavy_check_mark: | The UUID of the compensation | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1EmployeesEmployeeIdJobsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | +| `jobsCreateRequestBody` | [JobsCreateRequestBody](../../models/components/JobsCreateRequestBody.md) | :heavy_check_mark: | N/A | ### Response -**[DeleteV1CompensationsCompensationIdResponse](../../models/operations/DeleteV1CompensationsCompensationIdResponse.md)** +**[PostV1EmployeesEmployeeIdJobsResponse](../../models/operations/PostV1EmployeesEmployeeIdJobsResponse.md)** ### Errors diff --git a/gusto_embedded_v_2025_11_15/docs/sdks/locations/README.md b/gusto_embedded_v_2025_11_15/docs/sdks/locations/README.md index 1377c4461..4eea25502 100644 --- a/gusto_embedded_v_2025_11_15/docs/sdks/locations/README.md +++ b/gusto_embedded_v_2025_11_15/docs/sdks/locations/README.md @@ -4,32 +4,28 @@ ### Available Operations -* [get](#get) - Get all company locations -* [create](#create) - Create a company location +* [getMinimumWages](#getminimumwages) - Get minimum wages for a location * [retrieve](#retrieve) - Get a location * [update](#update) - Update a location -* [getMinimumWages](#getminimumwages) - Get minimum wages for a location - -## get +* [get](#get) - Get all company locations +* [create](#create) - Create a company location -Retrieves all company locations (addresses) associated with a company: mailing addresses, filing -addresses, or work locations. A single address may serve multiple, or all, purposes. +## getMinimumWages -Since all company locations are subsets of locations, use the Locations endpoints to -[get](ref:get-v1-locations-location_id) or [update](ref:put-v1-locations-location_id) an individual record. +Get minimum wages for a location scope: `companies:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdLocationsHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdLocationsResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1LocationsLocationUuidMinimumWagesHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1LocationsLocationUuidMinimumWagesResponse; import java.lang.Exception; public class Application { @@ -40,13 +36,14 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1CompaniesCompanyIdLocationsResponse res = sdk.locations().get() - .xGustoAPIVersion(GetV1CompaniesCompanyIdLocationsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) - .companyId("7b1d0df1-6403-4a06-8768-c1dd7d24d27a") + GetV1LocationsLocationUuidMinimumWagesResponse res = sdk.locations().getMinimumWages() + .xGustoAPIVersion(GetV1LocationsLocationUuidMinimumWagesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .locationUuid("") + .effectiveDate("2020-01-31") .call(); - if (res.companyLocationsList().isPresent()) { - System.out.println(res.companyLocationsList().get()); + if (res.minimumWageList().isPresent()) { + System.out.println(res.minimumWageList().get()); } } } @@ -56,14 +53,13 @@ public class Application { | Parameter | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdLocationsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | 7b1d0df1-6403-4a06-8768-c1dd7d24d27a | -| `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | | -| `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1LocationsLocationUuidMinimumWagesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | +| `locationUuid` | *String* | :heavy_check_mark: | The UUID of the location | | +| `effectiveDate` | *Optional\* | :heavy_minus_sign: | N/A | 2020-01-31 | ### Response -**[GetV1CompaniesCompanyIdLocationsResponse](../../models/operations/GetV1CompaniesCompanyIdLocationsResponse.md)** +**[GetV1LocationsLocationUuidMinimumWagesResponse](../../models/operations/GetV1LocationsLocationUuidMinimumWagesResponse.md)** ### Errors @@ -72,78 +68,6 @@ public class Application { | models/errors/NotFoundErrorObject | 404 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## create - -Create a company location, which represents any address associated with a company: mailing -addresses, filing addresses, or work locations. A single address may serve multiple, or all, purposes. - -Since all company locations are subsets of locations, use the Locations endpoints to -[get](ref:get-v1-locations-location_id) or [update](ref:put-v1-locations-location_id) an individual record. - -scope: `companies:write` - -### Example Usage - - -```java -package hello.world; - -import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; -import com.gusto.embedded_api_v_2025_11_15.models.components.CompanyLocationRequest; -import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1CompaniesCompanyIdLocationsHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1CompaniesCompanyIdLocationsResponse; -import java.lang.Exception; - -public class Application { - - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { - - GustoEmbedded sdk = GustoEmbedded.builder() - .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) - .build(); - - PostV1CompaniesCompanyIdLocationsResponse res = sdk.locations().create() - .xGustoAPIVersion(PostV1CompaniesCompanyIdLocationsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) - .companyId("") - .companyLocationRequest(CompanyLocationRequest.builder() - .street1("300 3rd Street") - .city("San Francisco") - .state("CA") - .zip("94107") - .phoneNumber("8009360383") - .street2("Apartment 318") - .build()) - .call(); - - if (res.location().isPresent()) { - System.out.println(res.location().get()); - } - } -} -``` - -### Parameters - -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1CompaniesCompanyIdLocationsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | -| `companyLocationRequest` | [CompanyLocationRequest](../../models/components/CompanyLocationRequest.md) | :heavy_check_mark: | N/A | - -### Response - -**[PostV1CompaniesCompanyIdLocationsResponse](../../models/operations/PostV1CompaniesCompanyIdLocationsResponse.md)** - -### Errors - -| Error Type | Status Code | Content Type | -| -------------------------------------- | -------------------------------------- | -------------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/UnprocessableEntityError | 422 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | - ## retrieve Get a location. @@ -266,22 +190,26 @@ public class Application { | models/errors/UnprocessableEntityError | 409, 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## getMinimumWages +## get -Get minimum wages for a location +Retrieves all company locations (addresses) associated with a company: mailing addresses, filing +addresses, or work locations. A single address may serve multiple, or all, purposes. + +Since all company locations are subsets of locations, use the Locations endpoints to +[get](ref:get-v1-locations-location_id) or [update](ref:put-v1-locations-location_id) an individual record. scope: `companies:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1LocationsLocationUuidMinimumWagesHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1LocationsLocationUuidMinimumWagesResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdLocationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdLocationsResponse; import java.lang.Exception; public class Application { @@ -292,14 +220,13 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1LocationsLocationUuidMinimumWagesResponse res = sdk.locations().getMinimumWages() - .locationUuid("") - .xGustoAPIVersion(GetV1LocationsLocationUuidMinimumWagesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) - .effectiveDate("2020-01-31") + GetV1CompaniesCompanyIdLocationsResponse res = sdk.locations().get() + .xGustoAPIVersion(GetV1CompaniesCompanyIdLocationsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .companyId("7b1d0df1-6403-4a06-8768-c1dd7d24d27a") .call(); - if (res.minimumWageList().isPresent()) { - System.out.println(res.minimumWageList().get()); + if (res.companyLocationsList().isPresent()) { + System.out.println(res.companyLocationsList().get()); } } } @@ -309,17 +236,90 @@ public class Application { | Parameter | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `locationUuid` | *String* | :heavy_check_mark: | The UUID of the location | | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1LocationsLocationUuidMinimumWagesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | -| `effectiveDate` | *Optional\* | :heavy_minus_sign: | N/A | 2020-01-31 | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdLocationsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | 7b1d0df1-6403-4a06-8768-c1dd7d24d27a | +| `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | | +| `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | | ### Response -**[GetV1LocationsLocationUuidMinimumWagesResponse](../../models/operations/GetV1LocationsLocationUuidMinimumWagesResponse.md)** +**[GetV1CompaniesCompanyIdLocationsResponse](../../models/operations/GetV1CompaniesCompanyIdLocationsResponse.md)** ### Errors | Error Type | Status Code | Content Type | | --------------------------------- | --------------------------------- | --------------------------------- | | models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | \ No newline at end of file +| models/errors/APIException | 4XX, 5XX | \*/\* | + +## create + +Create a company location, which represents any address associated with a company: mailing +addresses, filing addresses, or work locations. A single address may serve multiple, or all, purposes. + +Since all company locations are subsets of locations, use the Locations endpoints to +[get](ref:get-v1-locations-location_id) or [update](ref:put-v1-locations-location_id) an individual record. + +scope: `companies:write` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; +import com.gusto.embedded_api_v_2025_11_15.models.components.CompanyLocationRequest; +import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1CompaniesCompanyIdLocationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1CompaniesCompanyIdLocationsResponse; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + PostV1CompaniesCompanyIdLocationsResponse res = sdk.locations().create() + .xGustoAPIVersion(PostV1CompaniesCompanyIdLocationsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .companyId("") + .companyLocationRequest(CompanyLocationRequest.builder() + .street1("300 3rd Street") + .city("San Francisco") + .state("CA") + .zip("94107") + .phoneNumber("8009360383") + .street2("Apartment 318") + .build()) + .call(); + + if (res.location().isPresent()) { + System.out.println(res.location().get()); + } + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1CompaniesCompanyIdLocationsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | +| `companyLocationRequest` | [CompanyLocationRequest](../../models/components/CompanyLocationRequest.md) | :heavy_check_mark: | N/A | + +### Response + +**[PostV1CompaniesCompanyIdLocationsResponse](../../models/operations/PostV1CompaniesCompanyIdLocationsResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/sdks/memberportalinvitations/README.md b/gusto_embedded_v_2025_11_15/docs/sdks/memberportalinvitations/README.md new file mode 100644 index 000000000..9d1a5f52a --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/sdks/memberportalinvitations/README.md @@ -0,0 +1,352 @@ +# MemberPortalInvitations + +## Overview + +### Available Operations + +* [postV1EmployeesEmployeeIdMemberPortalInvitations](#postv1employeesemployeeidmemberportalinvitations) - Create an employee member portal invitation +* [getV1EmployeesEmployeeIdMemberPortalInvitations](#getv1employeesemployeeidmemberportalinvitations) - Get an employee member portal invitation +* [deleteV1EmployeesEmployeeIdMemberPortalInvitations](#deletev1employeesemployeeidmemberportalinvitations) - Cancel an employee member portal invitation +* [postV1ContractorsContractorUuidMemberPortalInvitations](#postv1contractorscontractoruuidmemberportalinvitations) - Create a contractor member portal invitation +* [getV1ContractorsContractorUuidMemberPortalInvitations](#getv1contractorscontractoruuidmemberportalinvitations) - Get a contractor member portal invitation +* [deleteV1ContractorsContractorUuidMemberPortalInvitations](#deletev1contractorscontractoruuidmemberportalinvitations) - Cancel a contractor member portal invitation + +## postV1EmployeesEmployeeIdMemberPortalInvitations + +Generates a member portal invitation for the specified employee. If the employee already has an invitation and its token has expired, calling this endpoint regenerates the invitation and overrides the prior token. + +scope: `member_portal_invitation:write` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; +import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse res = sdk.memberPortalInvitations().postV1EmployeesEmployeeIdMemberPortalInvitations() + .xGustoAPIVersion(PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .employeeId("") + .call(); + + // handle response + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | + +### Response + +**[PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse](../../models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | + +## getV1EmployeesEmployeeIdMemberPortalInvitations + +Returns the current status of an employee's member portal invitation (`pending`, `sent`, `verified`, `complete`, or `cancelled`) along with an `expired` flag indicating whether the invitation can still be acted on by the employee. + +scope: `member_portal_invitation:read` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; +import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse res = sdk.memberPortalInvitations().getV1EmployeesEmployeeIdMemberPortalInvitations() + .xGustoAPIVersion(GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .employeeId("") + .call(); + + if (res.memberPortalInvitation().isPresent()) { + System.out.println(res.memberPortalInvitation().get()); + } + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | + +### Response + +**[GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse](../../models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | + +## deleteV1EmployeesEmployeeIdMemberPortalInvitations + +Cancels the member portal invitation for the specified employee. + +Note: this endpoint does not cancel the employee's self-onboarding flow. If you want the company admin to take full control of onboarding the employee, cancel the self-onboarding request instead. + +scope: `member_portal_invitation:write` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; +import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse res = sdk.memberPortalInvitations().deleteV1EmployeesEmployeeIdMemberPortalInvitations() + .xGustoAPIVersion(DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .employeeId("") + .call(); + + // handle response + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | + +### Response + +**[DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse](../../models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | + +## postV1ContractorsContractorUuidMemberPortalInvitations + +Generates a member portal invitation for the specified contractor. If the contractor already has an invitation and its token has expired, calling this endpoint regenerates the invitation and overrides the prior token. + +scope: `member_portal_invitation:write` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; +import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1ContractorsContractorUuidMemberPortalInvitationsResponse; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + PostV1ContractorsContractorUuidMemberPortalInvitationsResponse res = sdk.memberPortalInvitations().postV1ContractorsContractorUuidMemberPortalInvitations() + .xGustoAPIVersion(PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .contractorUuid("") + .call(); + + // handle response + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | + +### Response + +**[PostV1ContractorsContractorUuidMemberPortalInvitationsResponse](../../models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | + +## getV1ContractorsContractorUuidMemberPortalInvitations + +Returns the current status of a contractor's member portal invitation (`pending`, `sent`, `verified`, `complete`, or `cancelled`) along with an `expired` flag indicating whether the invitation can still be acted on by the contractor. + +scope: `member_portal_invitation:read` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; +import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ContractorsContractorUuidMemberPortalInvitationsResponse; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + GetV1ContractorsContractorUuidMemberPortalInvitationsResponse res = sdk.memberPortalInvitations().getV1ContractorsContractorUuidMemberPortalInvitations() + .xGustoAPIVersion(GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .contractorUuid("") + .call(); + + if (res.memberPortalInvitation().isPresent()) { + System.out.println(res.memberPortalInvitation().get()); + } + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | + +### Response + +**[GetV1ContractorsContractorUuidMemberPortalInvitationsResponse](../../models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | + +## deleteV1ContractorsContractorUuidMemberPortalInvitations + +Cancels the member portal invitation for the specified contractor. + +Note: this endpoint does not cancel the contractor's self-onboarding flow. If you want the company admin to take full control of onboarding the contractor, cancel the self-onboarding request instead. + +scope: `member_portal_invitation:write` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; +import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse res = sdk.memberPortalInvitations().deleteV1ContractorsContractorUuidMemberPortalInvitations() + .xGustoAPIVersion(DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .contractorUuid("") + .call(); + + // handle response + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | + +### Response + +**[DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse](../../models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/sdks/notifications/README.md b/gusto_embedded_v_2025_11_15/docs/sdks/notifications/README.md index 8859af988..b42ee067e 100644 --- a/gusto_embedded_v_2025_11_15/docs/sdks/notifications/README.md +++ b/gusto_embedded_v_2025_11_15/docs/sdks/notifications/README.md @@ -4,47 +4,44 @@ ### Available Operations -* [getDetails](#getdetails) - Get a notification's details * [getCompanyNotifications](#getcompanynotifications) - Get notifications for company +* [getDetails](#getdetails) - Get a notification's details -## getDetails - -Upon receiving a notification webhook event, use this endpoint to fetch the notification's details. The notification details include basic suggested content that can help you build notifications in your platform. - -Note: partners are responsible for the delivery and any custom state management of notifications in their application. Refer to our [partner notification guide](https://docs.gusto.com/embedded-payroll/docs/partner-notifications) for more details. +## getCompanyNotifications -If the notification UUID is not found, the response will be 404 Not Found. If the notification's supporting data is no longer valid, the response will be 422 Unprocessable Entity. +Returns all notifications relevant for the given company. scope: `notifications:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; -import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetNotificationsNotificationUuidHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetNotificationsNotificationUuidResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetCompanyNotificationsRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetCompanyNotificationsResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + public static void main(String[] args) throws Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetNotificationsNotificationUuidResponse res = sdk.notifications().getDetails() - .notificationUuid("") - .xGustoAPIVersion(GetNotificationsNotificationUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + GetCompanyNotificationsRequest req = GetCompanyNotificationsRequest.builder() + .companyUuid("") + .build(); + + GetCompanyNotificationsResponse res = sdk.notifications().getCompanyNotifications() + .request(req) .call(); - if (res.notification().isPresent()) { - System.out.println(res.notification().get()); + if (res.notificationsList().isPresent()) { + System.out.println(res.notificationsList().get()); } } } @@ -52,58 +49,58 @@ public class Application { ### Parameters -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `notificationUuid` | *String* | :heavy_check_mark: | The notification entity_uuid | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetNotificationsNotificationUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| Parameter | Type | Required | Description | +| ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | +| `request` | [GetCompanyNotificationsRequest](../../models/operations/GetCompanyNotificationsRequest.md) | :heavy_check_mark: | The request object to use for the request. | ### Response -**[GetNotificationsNotificationUuidResponse](../../models/operations/GetNotificationsNotificationUuidResponse.md)** +**[GetCompanyNotificationsResponse](../../models/operations/GetCompanyNotificationsResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| -------------------------------------- | -------------------------------------- | -------------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/UnprocessableEntityError | 422 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | +| Error Type | Status Code | Content Type | +| -------------------------- | -------------------------- | -------------------------- | +| models/errors/APIException | 4XX, 5XX | \*/\* | -## getCompanyNotifications +## getDetails -Returns all notifications relevant for the given company. +Upon receiving a notification webhook event, use this endpoint to fetch the notification's details. The notification details include basic suggested content that can help you build notifications in your platform. + +Note: partners are responsible for the delivery and any custom state management of notifications in their application. Refer to our [partner notification guide](https://docs.gusto.com/embedded-payroll/docs/partner-notifications) for more details. + +If the notification UUID is not found, the response will be 404 Not Found. If the notification's supporting data is no longer valid, the response will be 422 Unprocessable Entity. scope: `notifications:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetCompanyNotificationsRequest; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetCompanyNotificationsResponse; +import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetNotificationsNotificationUuidHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetNotificationsNotificationUuidResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws Exception { + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetCompanyNotificationsRequest req = GetCompanyNotificationsRequest.builder() - .companyUuid("") - .build(); - - GetCompanyNotificationsResponse res = sdk.notifications().getCompanyNotifications() - .request(req) + GetNotificationsNotificationUuidResponse res = sdk.notifications().getDetails() + .xGustoAPIVersion(GetNotificationsNotificationUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .notificationUuid("") .call(); - if (res.notificationsList().isPresent()) { - System.out.println(res.notificationsList().get()); + if (res.notification().isPresent()) { + System.out.println(res.notification().get()); } } } @@ -111,16 +108,19 @@ public class Application { ### Parameters -| Parameter | Type | Required | Description | -| ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | -| `request` | [GetCompanyNotificationsRequest](../../models/operations/GetCompanyNotificationsRequest.md) | :heavy_check_mark: | The request object to use for the request. | +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetNotificationsNotificationUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `notificationUuid` | *String* | :heavy_check_mark: | The notification entity_uuid | ### Response -**[GetCompanyNotificationsResponse](../../models/operations/GetCompanyNotificationsResponse.md)** +**[GetNotificationsNotificationUuidResponse](../../models/operations/GetNotificationsNotificationUuidResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| -------------------------- | -------------------------- | -------------------------- | -| models/errors/APIException | 4XX, 5XX | \*/\* | \ No newline at end of file +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/sdks/payrollcancellations/README.md b/gusto_embedded_v_2025_11_15/docs/sdks/payrollcancellations/README.md new file mode 100644 index 000000000..ab4e6b161 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/sdks/payrollcancellations/README.md @@ -0,0 +1,156 @@ +# PayrollCancellations + +## Overview + +### Available Operations + +* [postV1PayrollBatches](#postv1payrollbatches) - Create a payroll cancellation batch +* [getV1PayrollBatchesPayrollBatchUuid](#getv1payrollbatchespayrollbatchuuid) - Get a payroll cancellation batch + +## postV1PayrollBatches + +Cancels up to 100 payrolls across one or more companies the partner is mapped to, asynchronously. + +The batch is processed asynchronously. Use the returned batch UUID to poll `GET /v1/payroll_batches/{payroll_batch_uuid}` for status and per-payroll results. + +Each item carries the payroll `uuid` and the `company_uuid` that owns it. A payroll whose company is not mapped to the partner — or that doesn't exist — is recorded as a `not_found` exclusion rather than a hard error, so every requested UUID lands in either `results` or `exclusions`. + +Idempotency is scoped per `(partner, idempotency_key)`. A duplicate POST with the same `idempotency_key` returns a 409 Conflict referencing the existing batch UUID — no duplicate processing occurs. + +📘 System Access Authentication + +This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + +scope: `payroll_batches:write` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; +import com.gusto.embedded_api_v_2025_11_15.models.errors.PayrollBatchConflictError; +import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api_v_2025_11_15.models.operations.*; +import java.lang.Exception; +import java.util.List; + +public class Application { + + public static void main(String[] args) throws PayrollBatchConflictError, UnprocessableEntityError, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .build(); + + PostV1PayrollBatchesResponse res = sdk.payrollCancellations().postV1PayrollBatches() + .security(PostV1PayrollBatchesSecurity.builder() + .systemAccessAuth(System.getenv().getOrDefault("SYSTEM_ACCESS_AUTH", "")) + .build()) + .xGustoAPIVersion(PostV1PayrollBatchesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .requestBody(PostV1PayrollBatchesRequestBody.builder() + .idempotencyKey("80a74f8b-2c16-45e5-9038-aa108849c6e6") + .batchAction(BatchAction.CANCEL) + .batch(List.of( + Batch.builder() + .entityType(EntityType.PAYROLL) + .uuid("f5ac6d4e-8400-4a52-a5cf-dea57b2ee65a") + .companyUuid("7cd3f4a2-0bf9-485a-bbc0-f6adbdf0246b") + .build())) + .build()) + .call(); + + if (res.payrollBatch().isPresent()) { + System.out.println(res.payrollBatch().get()); + } + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `security` | [com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1PayrollBatchesSecurity](../../models/operations/PostV1PayrollBatchesSecurity.md) | :heavy_check_mark: | The security requirements to use for the request. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1PayrollBatchesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `requestBody` | [PostV1PayrollBatchesRequestBody](../../models/operations/PostV1PayrollBatchesRequestBody.md) | :heavy_check_mark: | N/A | + +### Response + +**[PostV1PayrollBatchesResponse](../../models/operations/PostV1PayrollBatchesResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| --------------------------------------- | --------------------------------------- | --------------------------------------- | +| models/errors/PayrollBatchConflictError | 409 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | + +## getV1PayrollBatchesPayrollBatchUuid + +Returns the status and per-payroll results of a payroll cancellation batch. + +Poll this endpoint until the batch `status` reaches a terminal value (`completed` or `failed`). Once terminal, the response includes the `results` array (one entry per authorized payroll, each with its own per-payroll `status` — `success` or `failed`) and the `exclusions` array (one entry per payroll that could not be processed). A cancel is atomic, so a per-payroll result is only ever `success` or `failed` — never `partial_success`. + +Note that the top-level batch `status` (`pending` / `processing` / `completed` / `failed`) is the request lifecycle, distinct from the per-payroll `status` inside `results[]`. A `completed` batch does not imply every payroll was cancelled — inspect the array for per-payroll outcomes. + +Results are stored in Redis with a limited TTL after completion. If the partner polls after results have expired, this endpoint returns 410 Gone — partners should re-submit a new batch. + +📘 System Access Authentication + +This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + +scope: `payroll_batches:read` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; +import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2025_11_15.models.operations.*; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .build(); + + GetV1PayrollBatchesPayrollBatchUuidResponse res = sdk.payrollCancellations().getV1PayrollBatchesPayrollBatchUuid() + .security(GetV1PayrollBatchesPayrollBatchUuidSecurity.builder() + .systemAccessAuth(System.getenv().getOrDefault("SYSTEM_ACCESS_AUTH", "")) + .build()) + .xGustoAPIVersion(GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .payrollBatchUuid("") + .call(); + + if (res.payrollBatchResults().isPresent()) { + System.out.println(res.payrollBatchResults().get()); + } + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `security` | [com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1PayrollBatchesPayrollBatchUuidSecurity](../../models/operations/GetV1PayrollBatchesPayrollBatchUuidSecurity.md) | :heavy_check_mark: | The security requirements to use for the request. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `payrollBatchUuid` | *String* | :heavy_check_mark: | The UUID of the payroll cancellation batch returned by `POST /v1/payroll_batches`. | + +### Response + +**[GetV1PayrollBatchesPayrollBatchUuidResponse](../../models/operations/GetV1PayrollBatchesPayrollBatchUuidResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404, 410 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/sdks/payrolldigests/README.md b/gusto_embedded_v_2025_11_15/docs/sdks/payrolldigests/README.md index cdd90a5c0..1b0996974 100644 --- a/gusto_embedded_v_2025_11_15/docs/sdks/payrolldigests/README.md +++ b/gusto_embedded_v_2025_11_15/docs/sdks/payrolldigests/README.md @@ -118,8 +118,8 @@ public class Application { .security(GetV1PayrollDigestsPayrollDigestUuidSecurity.builder() .systemAccessAuth(System.getenv().getOrDefault("SYSTEM_ACCESS_AUTH", "")) .build()) - .payrollDigestUuid("") .xGustoAPIVersion(GetV1PayrollDigestsPayrollDigestUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .payrollDigestUuid("") .call(); if (res.payrollDigestResults().isPresent()) { @@ -134,8 +134,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `security` | [com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1PayrollDigestsPayrollDigestUuidSecurity](../../models/operations/GetV1PayrollDigestsPayrollDigestUuidSecurity.md) | :heavy_check_mark: | The security requirements to use for the request. | -| `payrollDigestUuid` | *String* | :heavy_check_mark: | The UUID of the payroll digest batch returned by `POST /v1/payroll_digests`. | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1PayrollDigestsPayrollDigestUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `payrollDigestUuid` | *String* | :heavy_check_mark: | The UUID of the payroll digest batch returned by `POST /v1/payroll_digests`. | ### Response diff --git a/gusto_embedded_v_2025_11_15/docs/sdks/payrolls/README.md b/gusto_embedded_v_2025_11_15/docs/sdks/payrolls/README.md index 534b6bf3d..4eab7d260 100644 --- a/gusto_embedded_v_2025_11_15/docs/sdks/payrolls/README.md +++ b/gusto_embedded_v_2025_11_15/docs/sdks/payrolls/README.md @@ -4,72 +4,65 @@ ### Available Operations -* [list](#list) - Get all payrolls for a company -* [createOffCycle](#createoffcycle) - Create an off-cycle payroll +* [generatePrintableChecks](#generateprintablechecks) - Generate printable payroll checks (pdf) +* [getPayStubs](#getpaystubs) - Get an employee's pay stubs +* [getPayStub](#getpaystub) - Get an employee pay stub (pdf) +* [getV1CompaniesCompanyIdPayrollsIdPartnerDisbursements](#getv1companiescompanyidpayrollsidpartnerdisbursements) - Get partner disbursements for a payroll +* [patchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements](#patchv1companiescompanyidpayrollsidpartnerdisbursements) - Update partner disbursements for a payroll * [getApprovedReversals](#getapprovedreversals) - Get approved payroll reversals * [get](#get) - Get a single payroll * [update](#update) - Update a payroll by ID * [delete](#delete) - Delete a payroll -* [prepare](#prepare) - Prepare a payroll for update +* [list](#list) - Get all payrolls for a company +* [createOffCycle](#createoffcycle) - Create an off-cycle payroll * [getReceipt](#getreceipt) - Get a single payroll receipt +* [cancel](#cancel) - Cancel a payroll +* [prepare](#prepare) - Prepare a payroll for update +* [calculate](#calculate) - Calculate a payroll * [getBlockers](#getblockers) - Get all payroll blockers for a company * [skip](#skip) - Skip a payroll -* [calculateGrossUp](#calculategrossup) - Calculate gross up for a payroll -* [calculate](#calculate) - Calculate a payroll * [submit](#submit) - Submit payroll -* [cancel](#cancel) - Cancel a payroll -* [getPayStub](#getpaystub) - Get an employee pay stub (pdf) -* [getPayStubs](#getpaystubs) - Get an employee's pay stubs -* [generatePrintableChecks](#generateprintablechecks) - Generate printable payroll checks (pdf) -* [getV1CompaniesCompanyIdPayrollsIdPartnerDisbursements](#getv1companiescompanyidpayrollsidpartnerdisbursements) - Get partner disbursements for a payroll -* [patchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements](#patchv1companiescompanyidpayrollsidpartnerdisbursements) - Update partner disbursements for a payroll - -## list - -Returns a list of payrolls for a company. You can change the payrolls returned by updating the processing_status, payroll_types, start_date, & end_date params. +* [calculateGrossUp](#calculategrossup) - Calculate gross up for a payroll -By default, will return processed, regular payrolls for the past 6 months. +## generatePrintableChecks -Notes: -* Dollar amounts are returned as string representations of numeric decimals, are represented to the cent. -* end_date can be at most 3 months in the future and start_date and end_date can't be more than 1 year apart. -* Results are paginated. Maximum page size is 100 payrolls per request; the default page size is 25. +This endpoint initiates the generation of employee checks for the payroll specified by payroll_uuid. A generation status and corresponding request_uuid will be returned. Use the generated document GET endpoint with document_type: `printable_payroll_checks` and request_uuid to poll the check generation process and retrieve the generated check URL upon completion. -scope: `payrolls:read` +scope: `generated_documents:write` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; +import com.gusto.embedded_api_v_2025_11_15.models.components.PrintablePayrollChecksBody; +import com.gusto.embedded_api_v_2025_11_15.models.components.PrintingFormat; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.operations.*; +import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, Exception { + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1CompaniesCompanyIdPayrollsRequest req = GetV1CompaniesCompanyIdPayrollsRequest.builder() - .companyId("") - .startDate("2020-01-31") - .endDate("2020-01-31") - .dateFilterBy(DateFilterBy.CHECK_DATE) - .sortOrder(SortOrder.ASC) - .build(); - - GetV1CompaniesCompanyIdPayrollsResponse res = sdk.payrolls().list() - .request(req) + PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksResponse res = sdk.payrolls().generatePrintableChecks() + .xGustoAPIVersion(PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .payrollUuid("") + .printablePayrollChecksBody(PrintablePayrollChecksBody.builder() + .printingFormat(PrintingFormat.TOP) + .build()) .call(); - if (res.payrollList().isPresent()) { - System.out.println(res.payrollList().get()); + if (res.payrollCheck().isPresent()) { + System.out.println(res.payrollCheck().get()); } } } @@ -77,62 +70,59 @@ public class Application { ### Parameters -| Parameter | Type | Required | Description | -| ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | -| `request` | [GetV1CompaniesCompanyIdPayrollsRequest](../../models/operations/GetV1CompaniesCompanyIdPayrollsRequest.md) | :heavy_check_mark: | The request object to use for the request. | +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `payrollUuid` | *String* | :heavy_check_mark: | The UUID of the payroll | +| `printablePayrollChecksBody` | [PrintablePayrollChecksBody](../../models/components/PrintablePayrollChecksBody.md) | :heavy_check_mark: | N/A | ### Response -**[GetV1CompaniesCompanyIdPayrollsResponse](../../models/operations/GetV1CompaniesCompanyIdPayrollsResponse.md)** +**[PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksResponse](../../models/operations/PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| --------------------------------- | --------------------------------- | --------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | - -## createOffCycle +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | -Creates a new, unprocessed, off-cycle payroll. +## getPayStubs -## `off_cycle_reason` -By default: -- External benefits and deductions will be included when the `off_cycle_reason` is set to `Correction`. -- All benefits and deductions are blocked when the `off_cycle_reason` is set to `Bonus`. +Get an employee's pay stubs. -These elections can be overridden with the `skip_regular_deductions` boolean. +Results are returned in reverse chronological order (newest first). -scope: `payrolls:run` +scope: `pay_stubs:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1CompaniesCompanyIdPayrollsResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1EmployeesEmployeeUuidPayStubsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1EmployeesEmployeeUuidPayStubsResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + public static void main(String[] args) throws NotFoundErrorObject, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostV1CompaniesCompanyIdPayrollsResponse res = sdk.payrolls().createOffCycle() - .xGustoAPIVersion(PostV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) - .companyId("") + GetV1EmployeesEmployeeUuidPayStubsResponse res = sdk.payrolls().getPayStubs() + .xGustoAPIVersion(GetV1EmployeesEmployeeUuidPayStubsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .employeeId("") .call(); - if (res.payrollUnprocessed().isPresent()) { - System.out.println(res.payrollUnprocessed().get()); + if (res.employeePayStubsList().isPresent()) { + System.out.println(res.employeePayStubsList().get()); } } } @@ -142,38 +132,38 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | -| `requestBody` | [Optional\](../../models/operations/PostV1CompaniesCompanyIdPayrollsRequestBody.md) | :heavy_minus_sign: | N/A | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeUuidPayStubsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | +| `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | +| `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | ### Response -**[PostV1CompaniesCompanyIdPayrollsResponse](../../models/operations/PostV1CompaniesCompanyIdPayrollsResponse.md)** +**[GetV1EmployeesEmployeeUuidPayStubsResponse](../../models/operations/GetV1EmployeesEmployeeUuidPayStubsResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| -------------------------------------- | -------------------------------------- | -------------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/UnprocessableEntityError | 422 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | -## getApprovedReversals +## getPayStub -Returns all approved Payroll Reversals for a Company. +Get an employee's pay stub for the specified payroll. By default, an application/pdf response will be returned. No other content types are currently supported, but may be supported in the future. -scope: `payrolls:read` +scope: `pay_stubs:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; -import com.gusto.embedded_api_v_2025_11_15.models.components.VersionHeader; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdPayrollReversalsResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubResponse; import java.lang.Exception; public class Application { @@ -184,13 +174,14 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1CompaniesCompanyIdPayrollReversalsResponse res = sdk.payrolls().getApprovedReversals() - .companyId("") - .xGustoAPIVersion(VersionHeader.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubResponse res = sdk.payrolls().getPayStub() + .xGustoAPIVersion(GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .payrollId("") + .employeeId("") .call(); - if (res.payrollReversalList().isPresent()) { - System.out.println(res.payrollReversalList().get()); + if (res.responseStream().isPresent()) { + // handle response } } } @@ -200,14 +191,13 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | -| `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | -| `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | -| `xGustoAPIVersion` | [Optional\](../../models/components/VersionHeader.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `payrollId` | *String* | :heavy_check_mark: | The UUID of the payroll | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | ### Response -**[GetV1CompaniesCompanyIdPayrollReversalsResponse](../../models/operations/GetV1CompaniesCompanyIdPayrollReversalsResponse.md)** +**[GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubResponse](../../models/operations/GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubResponse.md)** ### Errors @@ -216,31 +206,22 @@ public class Application { | models/errors/NotFoundErrorObject | 404 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## get - -Returns a payroll. If payroll is calculated or processed, will return employee_compensations and totals. - -Results are paginated, with a maximum page size of 100 employee_compensations. +## getV1CompaniesCompanyIdPayrollsIdPartnerDisbursements -Notes: -* Hour and dollar amounts are returned as string representations of numeric decimals. -* Hours are represented to the thousands place; dollar amounts are represented to the cent. -* Every eligible compensation is returned for each employee. If no data has yet be inserted for a given field, it defaults to "0.00" (for fixed amounts) or "0.000" (for hours ). -* When include parameter with benefits value is passed, employee_benefits:read scope is required to return benefits - * Benefits containing PHI are only visible with the `employee_benefits:read:phi` scope +Get partner disbursements for a specific payroll. -scope: `payrolls:read` +scope: `partner_disbursements:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdPayrollsPayrollIdRequest; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdPayrollsPayrollIdResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsResponse; import java.lang.Exception; public class Application { @@ -251,18 +232,14 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1CompaniesCompanyIdPayrollsPayrollIdRequest req = GetV1CompaniesCompanyIdPayrollsPayrollIdRequest.builder() + GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsResponse res = sdk.payrolls().getV1CompaniesCompanyIdPayrollsIdPartnerDisbursements() + .xGustoAPIVersion(GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .companyId("") - .payrollId("") - .sortBy("first_name:asc") - .build(); - - GetV1CompaniesCompanyIdPayrollsPayrollIdResponse res = sdk.payrolls().get() - .request(req) + .id("") .call(); - if (res.payrollShow().isPresent()) { - System.out.println(res.payrollShow().get()); + if (res.payrollPartnerDisbursements().isPresent()) { + System.out.println(res.payrollPartnerDisbursements().get()); } } } @@ -270,13 +247,15 @@ public class Application { ### Parameters -| Parameter | Type | Required | Description | -| ----------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- | -| `request` | [GetV1CompaniesCompanyIdPayrollsPayrollIdRequest](../../models/operations/GetV1CompaniesCompanyIdPayrollsPayrollIdRequest.md) | :heavy_check_mark: | The request object to use for the request. | +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | +| `id` | *String* | :heavy_check_mark: | The UUID of the payroll | ### Response -**[GetV1CompaniesCompanyIdPayrollsPayrollIdResponse](../../models/operations/GetV1CompaniesCompanyIdPayrollsPayrollIdResponse.md)** +**[GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsResponse](../../models/operations/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsResponse.md)** ### Errors @@ -285,29 +264,22 @@ public class Application { | models/errors/NotFoundErrorObject | 404 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## update +## patchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements -This endpoint allows you to update information for one or more employees for a specific **unprocessed** payroll. You can think of the **unprocessed** -payroll object as a template of fields that you can update. You cannot modify the structure of the payroll object through this endpoint, only values -of the fields included in the payroll. If you do not include specific employee compensations, fixed/hourly compensations, or deductions in your request body, they -will not be removed from the payroll. A maximum of 100 employee_compensations can be updated at a time. Only the employee compensation objects that were -inputted will be returned. +Update partner disbursements for a specific payroll. -scope: `payrolls:write` +scope: `partner_disbursements:write` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; -import com.gusto.embedded_api_v_2025_11_15.models.components.PayrollUpdate; -import com.gusto.embedded_api_v_2025_11_15.models.components.PayrollUpdateEmployeeCompensations; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1CompaniesCompanyIdPayrollsResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.*; import java.lang.Exception; import java.util.List; @@ -319,19 +291,20 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1CompaniesCompanyIdPayrollsResponse res = sdk.payrolls().update() - .xGustoAPIVersion(PutV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsResponse res = sdk.payrolls().patchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements() + .xGustoAPIVersion(PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .companyId("") - .payrollId("") - .payrollUpdate(PayrollUpdate.builder() - .employeeCompensations(List.of( - PayrollUpdateEmployeeCompensations.builder() + .id("") + .requestBody(PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBody.builder() + .disbursements(List.of( + PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsDisbursements.builder() + .employeeUuid("1a2b3c4d-5e6f-7890-abcd-ef1234567890") .build())) .build()) .call(); - if (res.payrollPrepared().isPresent()) { - System.out.println(res.payrollPrepared().get()); + if (res.payrollPartnerDisbursements().isPresent()) { + System.out.println(res.payrollPartnerDisbursements().get()); } } } @@ -341,14 +314,14 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyId` | *String* | :heavy_check_mark: | The UUID of the company | -| `payrollId` | *String* | :heavy_check_mark: | The UUID of the payroll | -| `payrollUpdate` | [PayrollUpdate](../../models/components/PayrollUpdate.md) | :heavy_check_mark: | N/A | +| `id` | *String* | :heavy_check_mark: | The UUID of the payroll | +| `requestBody` | [Optional\](../../models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBody.md) | :heavy_minus_sign: | N/A | ### Response -**[PutV1CompaniesCompanyIdPayrollsResponse](../../models/operations/PutV1CompaniesCompanyIdPayrollsResponse.md)** +**[PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsResponse](../../models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsResponse.md)** ### Errors @@ -358,24 +331,22 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## delete - -This endpoint allows you to delete an **unprocessed** payroll. +## getApprovedReversals -By default the payroll and associated data is deleted synchronously. To request an asynchronous delete, use the `async=true` query parameter. In both cases validation of ability to delete will be performed and an Unprocessable Entity error will be returned if the payroll is not able to be deleted. A successful synchronous delete will return `204/No Content`. When a payroll has been enqueued for asynchronous deletion, `202/Accepted` will be returned. +Returns all approved Payroll Reversals for a Company. -scope: `payrolls:run` +scope: `payrolls:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1CompaniesCompanyIdPayrollsResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdPayrollReversalsResponse; import java.lang.Exception; public class Application { @@ -386,13 +357,14 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - DeleteV1CompaniesCompanyIdPayrollsResponse res = sdk.payrolls().delete() + GetV1CompaniesCompanyIdPayrollReversalsResponse res = sdk.payrolls().getApprovedReversals() + .xGustoAPIVersion(GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .companyId("") - .payrollId("") - .xGustoAPIVersion(DeleteV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .call(); - // handle response + if (res.payrollReversalList().isPresent()) { + System.out.println(res.payrollReversalList().get()); + } } } ``` @@ -401,14 +373,14 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyId` | *String* | :heavy_check_mark: | The UUID of the company | -| `payrollId` | *String* | :heavy_check_mark: | The UUID of the payroll | -| `async` | *Optional\* | :heavy_minus_sign: | When true, request an asynchronous delete of the payroll. | -| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | +| `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | ### Response -**[DeleteV1CompaniesCompanyIdPayrollsResponse](../../models/operations/DeleteV1CompaniesCompanyIdPayrollsResponse.md)** +**[GetV1CompaniesCompanyIdPayrollReversalsResponse](../../models/operations/GetV1CompaniesCompanyIdPayrollReversalsResponse.md)** ### Errors @@ -417,55 +389,53 @@ public class Application { | models/errors/NotFoundErrorObject | 404 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## prepare - -Prepares an unprocessed payroll for update, including: adding or removing eligible employees from the payroll, -and updating `check_date`, `payroll_deadline`, and `payroll_status_meta` dates and times. +## get -Use this endpoint before calling [PUT /v1/companies/{company_id}/payrolls/{payroll_id}](ref:put-v1-companies-company_id-payrolls). +Returns a payroll. If payroll is calculated or processed, will return employee_compensations and totals. -### Notes +Results are paginated, with a maximum page size of 100 employee_compensations. -* Nullifies `calculated_at` and `totals` if the payroll was previously calculated -* Returns the `version` parameter required for [updating the payroll](ref:put-v1-companies-company_id-payrolls) -* `employees:read` scope is required to include employee compensations data in the response. -* Results are paginated, with a maximum page size of 100 employee compensations. +Notes: +* Hour and dollar amounts are returned as string representations of numeric decimals. +* Hours are represented to the thousands place; dollar amounts are represented to the cent. +* Every eligible compensation is returned for each employee. If no data has yet be inserted for a given field, it defaults to "0.00" (for fixed amounts) or "0.000" (for hours ). +* When include parameter with benefits value is passed, employee_benefits:read scope is required to return benefits + * Benefits containing PHI are only visible with the `employee_benefits:read:phi` scope -scope: `payrolls:write employees:read` +scope: `payrolls:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequest; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdPayrollsPayrollIdRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdPayrollsPayrollIdResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + public static void main(String[] args) throws NotFoundErrorObject, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequest req = PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequest.builder() + GetV1CompaniesCompanyIdPayrollsPayrollIdRequest req = GetV1CompaniesCompanyIdPayrollsPayrollIdRequest.builder() .companyId("") .payrollId("") .sortBy("first_name:asc") .build(); - PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareResponse res = sdk.payrolls().prepare() + GetV1CompaniesCompanyIdPayrollsPayrollIdResponse res = sdk.payrolls().get() .request(req) .call(); - if (res.payrollPrepared().isPresent()) { - System.out.println(res.payrollPrepared().get()); + if (res.payrollShow().isPresent()) { + System.out.println(res.payrollShow().get()); } } } @@ -473,60 +443,68 @@ public class Application { ### Parameters -| Parameter | Type | Required | Description | -| ------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- | -| `request` | [PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequest](../../models/operations/PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequest.md) | :heavy_check_mark: | The request object to use for the request. | +| Parameter | Type | Required | Description | +| ----------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- | +| `request` | [GetV1CompaniesCompanyIdPayrollsPayrollIdRequest](../../models/operations/GetV1CompaniesCompanyIdPayrollsPayrollIdRequest.md) | :heavy_check_mark: | The request object to use for the request. | ### Response -**[PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareResponse](../../models/operations/PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareResponse.md)** +**[GetV1CompaniesCompanyIdPayrollsPayrollIdResponse](../../models/operations/GetV1CompaniesCompanyIdPayrollsPayrollIdResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| -------------------------------------- | -------------------------------------- | -------------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/UnprocessableEntityError | 422 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | - -## getReceipt +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | -Returns a payroll receipt. +## update -Notes: -* Hour and dollar amounts are returned as string representations of numeric decimals. -* Dollar amounts are represented to the cent. -* If no data has yet be inserted for a given field, it defaults to "0.00" (for fixed amounts). +This endpoint allows you to update information for one or more employees for a specific **unprocessed** payroll. You can think of the **unprocessed** +payroll object as a template of fields that you can update. You cannot modify the structure of the payroll object through this endpoint, only values +of the fields included in the payroll. If you do not include specific employee compensations, fixed/hourly compensations, or deductions in your request body, they +will not be removed from the payroll. A maximum of 100 employee_compensations can be updated at a time. Only the employee compensation objects that were +inputted will be returned. -scope: `payrolls:read` +scope: `payrolls:write` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; +import com.gusto.embedded_api_v_2025_11_15.models.components.PayrollUpdate; +import com.gusto.embedded_api_v_2025_11_15.models.components.PayrollUpdateEmployeeCompensations; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1PaymentReceiptsPayrollsPayrollUuidHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1PaymentReceiptsPayrollsPayrollUuidResponse; +import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1CompaniesCompanyIdPayrollsResponse; import java.lang.Exception; +import java.util.List; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, Exception { + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1PaymentReceiptsPayrollsPayrollUuidResponse res = sdk.payrolls().getReceipt() - .payrollUuid("") - .xGustoAPIVersion(GetV1PaymentReceiptsPayrollsPayrollUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + PutV1CompaniesCompanyIdPayrollsResponse res = sdk.payrolls().update() + .xGustoAPIVersion(PutV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .companyId("") + .payrollId("") + .payrollUpdate(PayrollUpdate.builder() + .employeeCompensations(List.of( + PayrollUpdateEmployeeCompensations.builder() + .build())) + .build()) .call(); - if (res.payrollReceipt().isPresent()) { - System.out.println(res.payrollReceipt().get()); + if (res.payrollPrepared().isPresent()) { + System.out.println(res.payrollPrepared().get()); } } } @@ -536,36 +514,41 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `payrollUuid` | *String* | :heavy_check_mark: | The UUID of the payroll | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | +| `payrollId` | *String* | :heavy_check_mark: | The UUID of the payroll | +| `payrollUpdate` | [PayrollUpdate](../../models/components/PayrollUpdate.md) | :heavy_check_mark: | N/A | ### Response -**[GetV1PaymentReceiptsPayrollsPayrollUuidResponse](../../models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidResponse.md)** +**[PutV1CompaniesCompanyIdPayrollsResponse](../../models/operations/PutV1CompaniesCompanyIdPayrollsResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| --------------------------------- | --------------------------------- | --------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | -## getBlockers +## delete -Returns a list of reasons that prevent the company from running payrolls. See the [Payroll Blockers guide](doc:payroll-blockers) for a complete list of reasons. The list is empty if there are no payroll blockers. +This endpoint allows you to delete an **unprocessed** payroll. + +By default the payroll and associated data is deleted synchronously. To request an asynchronous delete, use the `async=true` query parameter. In both cases validation of ability to delete will be performed and an Unprocessable Entity error will be returned if the payroll is not able to be deleted. A successful synchronous delete will return `204/No Content`. When a payroll has been enqueued for asynchronous deletion, `202/Accepted` will be returned. scope: `payrolls:run` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesPayrollBlockersCompanyUuidHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesPayrollBlockersCompanyUuidResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1CompaniesCompanyIdPayrollsResponse; import java.lang.Exception; public class Application { @@ -576,14 +559,13 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1CompaniesPayrollBlockersCompanyUuidResponse res = sdk.payrolls().getBlockers() - .xGustoAPIVersion(GetV1CompaniesPayrollBlockersCompanyUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) - .companyUuid("") + DeleteV1CompaniesCompanyIdPayrollsResponse res = sdk.payrolls().delete() + .xGustoAPIVersion(DeleteV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .companyId("") + .payrollId("") .call(); - if (res.payrollBlockers().isPresent()) { - System.out.println(res.payrollBlockers().get()); - } + // handle response } } ``` @@ -592,12 +574,14 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesPayrollBlockersCompanyUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | +| `payrollId` | *String* | :heavy_check_mark: | The UUID of the payroll | +| `async` | *Optional\* | :heavy_minus_sign: | When true, request an asynchronous delete of the payroll. | ### Response -**[GetV1CompaniesPayrollBlockersCompanyUuidResponse](../../models/operations/GetV1CompaniesPayrollBlockersCompanyUuidResponse.md)** +**[DeleteV1CompaniesCompanyIdPayrollsResponse](../../models/operations/DeleteV1CompaniesCompanyIdPayrollsResponse.md)** ### Errors @@ -606,87 +590,98 @@ public class Application { | models/errors/NotFoundErrorObject | 404 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## skip +## list -Submits a $0 payroll for employees associated with the pay schedule to skip payroll. This submission is asynchronous and a successful request responds with a 202 HTTP status. Upon success, the payroll is transitioned to the `processed` state. +Returns a list of payrolls for a company. You can change the payrolls returned by updating the processing_status, payroll_types, start_date, & end_date params. -If the company is blocked from running payroll due to issues like incomplete setup, missing information or other compliance issues, the response will be 422 Unprocessable Entity with a categorization of the blockers as described in the error responses. +By default, will return processed, regular payrolls for the past 6 months. -scope: `payrolls:run` +Notes: +* Dollar amounts are returned as string representations of numeric decimals, are represented to the cent. +* end_date can be at most 3 months in the future and start_date and end_date can't be more than 1 year apart. +* Results are paginated. Maximum page size is 100 payrolls per request; the default page size is 25. + +scope: `payrolls:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.errors.PayrollBlockersError; import com.gusto.embedded_api_v_2025_11_15.models.operations.*; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, PayrollBlockersError, Exception { + public static void main(String[] args) throws NotFoundErrorObject, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostCompaniesPayrollSkipCompanyUuidResponse res = sdk.payrolls().skip() - .xGustoAPIVersion(PostCompaniesPayrollSkipCompanyUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) - .companyUuid("") - .requestBody(PostCompaniesPayrollSkipCompanyUuidRequestBody.builder() - .payrollType(PayrollType.TRANSITION_FROM_OLD_PAY_SCHEDULE) - .build()) + GetV1CompaniesCompanyIdPayrollsRequest req = GetV1CompaniesCompanyIdPayrollsRequest.builder() + .companyId("") + .startDate("2020-01-31") + .endDate("2020-01-31") + .dateFilterBy(DateFilterBy.CHECK_DATE) + .sortOrder(QueryParamSortOrder.ASC) + .build(); + + GetV1CompaniesCompanyIdPayrollsResponse res = sdk.payrolls().list() + .request(req) .call(); - // handle response + if (res.payrollList().isPresent()) { + System.out.println(res.payrollList().get()); + } } } ``` ### Parameters -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PostCompaniesPayrollSkipCompanyUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | -| `requestBody` | [PostCompaniesPayrollSkipCompanyUuidRequestBody](../../models/operations/PostCompaniesPayrollSkipCompanyUuidRequestBody.md) | :heavy_check_mark: | N/A | +| Parameter | Type | Required | Description | +| ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | +| `request` | [GetV1CompaniesCompanyIdPayrollsRequest](../../models/operations/GetV1CompaniesCompanyIdPayrollsRequest.md) | :heavy_check_mark: | The request object to use for the request. | ### Response -**[PostCompaniesPayrollSkipCompanyUuidResponse](../../models/operations/PostCompaniesPayrollSkipCompanyUuidResponse.md)** +**[GetV1CompaniesCompanyIdPayrollsResponse](../../models/operations/GetV1CompaniesCompanyIdPayrollsResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| ---------------------------------- | ---------------------------------- | ---------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/PayrollBlockersError | 422 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | -## calculateGrossUp +## createOffCycle -Calculates gross up earnings for an employee's payroll, given net earnings. This endpoint is only applicable to off-cycle unprocessed payrolls. +Creates a new, unprocessed, off-cycle payroll. -The gross up amount must then be mapped to the corresponding fixed compensation earning type to get the correct payroll amount. For example, for bonus off-cycles, the gross up amount should be set with the Bonus earning type in the payroll `fixed_compensations` field. +## `off_cycle_reason` +By default: +- External benefits and deductions will be included when the `off_cycle_reason` is set to `Correction`. +- All benefits and deductions are blocked when the `off_cycle_reason` is set to `Bonus`. + +These elections can be overridden with the `skip_regular_deductions` boolean. scope: `payrolls:run` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; -import com.gusto.embedded_api_v_2025_11_15.models.components.PayrollGrossUpRequest; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PostPayrollsGrossUpPayrollUuidHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PostPayrollsGrossUpPayrollUuidResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1CompaniesCompanyIdPayrollsResponse; import java.lang.Exception; public class Application { @@ -697,17 +692,13 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostPayrollsGrossUpPayrollUuidResponse res = sdk.payrolls().calculateGrossUp() - .xGustoAPIVersion(PostPayrollsGrossUpPayrollUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) - .payrollUuid("") - .payrollGrossUpRequest(PayrollGrossUpRequest.builder() - .employeeUuid("") - .netPay("") - .build()) + PostV1CompaniesCompanyIdPayrollsResponse res = sdk.payrolls().createOffCycle() + .xGustoAPIVersion(PostV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .companyId("") .call(); - if (res.payrollGrossUpResponse().isPresent()) { - System.out.println(res.payrollGrossUpResponse().get()); + if (res.payrollUnprocessed().isPresent()) { + System.out.println(res.payrollUnprocessed().get()); } } } @@ -717,13 +708,13 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PostPayrollsGrossUpPayrollUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `payrollUuid` | *String* | :heavy_check_mark: | The UUID of the payroll | -| `payrollGrossUpRequest` | [PayrollGrossUpRequest](../../models/components/PayrollGrossUpRequest.md) | :heavy_check_mark: | N/A | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | +| `requestBody` | [Optional\](../../models/operations/PostV1CompaniesCompanyIdPayrollsRequestBody.md) | :heavy_minus_sign: | N/A | ### Response -**[PostPayrollsGrossUpPayrollUuidResponse](../../models/operations/PostPayrollsGrossUpPayrollUuidResponse.md)** +**[PostV1CompaniesCompanyIdPayrollsResponse](../../models/operations/PostV1CompaniesCompanyIdPayrollsResponse.md)** ### Errors @@ -733,44 +724,47 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## calculate - -Performs calculations for taxes, benefits, and deductions for an unprocessed payroll. The calculated payroll details provide a preview of the actual values that will be used when the payroll is run. +## getReceipt -This calculation is asynchronous and a successful request responds with a 202 HTTP status. To view the details of the calculated payroll, use the GET /v1/companies/{company_id}/payrolls/{payroll_id} endpoint with *include=taxes,benefits,deductions* params. +Returns a payroll receipt. -If the company is blocked from running payroll due to issues like incomplete setup, missing information or other compliance issues, the response will be 422 Unprocessable Entity with a categorization of the blockers as described in the error responses. +Notes: +* Hour and dollar amounts are returned as string representations of numeric decimals. +* Dollar amounts are represented to the cent. +* If no data has yet be inserted for a given field, it defaults to "0.00" (for fixed amounts). +* Pagination is optional. Supplying `page` and/or `per` returns only the requested page of employee compensations and includes the `X-Page`, `X-Total-Count`, `X-Total-Pages`, and `X-Per-Page` response headers. Without either parameter, all employee compensations are returned without pagination headers. +* Maximum page size is 100 employee compensations per request. -scope: `payrolls:run` +scope: `payrolls:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1PaymentReceiptsPayrollsPayrollUuidHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1PaymentReceiptsPayrollsPayrollUuidResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + public static void main(String[] args) throws NotFoundErrorObject, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateResponse res = sdk.payrolls().calculate() - .xGustoAPIVersion(PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) - .companyId("") - .payrollId("") + GetV1PaymentReceiptsPayrollsPayrollUuidResponse res = sdk.payrolls().getReceipt() + .xGustoAPIVersion(GetV1PaymentReceiptsPayrollsPayrollUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .payrollUuid("") .call(); - // handle response + if (res.payrollReceipt().isPresent()) { + System.out.println(res.payrollReceipt().get()); + } } } ``` @@ -779,43 +773,42 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | -| `payrollId` | *String* | :heavy_check_mark: | The UUID of the payroll | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `payrollUuid` | *String* | :heavy_check_mark: | The UUID of the payroll | +| `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | +| `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | ### Response -**[PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateResponse](../../models/operations/PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateResponse.md)** +**[GetV1PaymentReceiptsPayrollsPayrollUuidResponse](../../models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| -------------------------------------- | -------------------------------------- | -------------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/UnprocessableEntityError | 422 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | - -## submit +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | -Submits an unprocessed payroll to be calculated and run. This submission is asynchronous and a successful request responds with a 202 HTTP status. Upon success, transitions the payroll to the `processed` state. +## cancel -You should poll to ensure that payroll is processed successfully, as async errors only occur after async processing is complete. +Transitions a `processed` payroll back to the `unprocessed` state. A payroll can be canceled if it meets both criteria: -If the company is blocked from running payroll due to issues like incomplete setup, missing information or other compliance issues, the response will be 422 Unprocessable Entity with a categorization of the blockers as described in the error responses. +- `processed` is `true` +- Current time is earlier than 4pm PT on the `payroll_deadline` scope: `payrolls:run` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PutAPIV1CompaniesCompanyIdPayrollsPayrollIdCancelHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PutApiV1CompaniesCompanyIdPayrollsPayrollIdCancelResponse; import java.lang.Exception; public class Application { @@ -826,13 +819,15 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitResponse res = sdk.payrolls().submit() - .xGustoAPIVersion(PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + PutApiV1CompaniesCompanyIdPayrollsPayrollIdCancelResponse res = sdk.payrolls().cancel() + .xGustoAPIVersion(PutAPIV1CompaniesCompanyIdPayrollsPayrollIdCancelHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .companyId("") .payrollId("") .call(); - // handle response + if (res.unprocessedPayroll().isPresent()) { + System.out.println(res.unprocessedPayroll().get()); + } } } ``` @@ -841,14 +836,13 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutApiv1CompaniesCompanyIdPayrollsPayrollIdCancelHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | `payrollId` | *String* | :heavy_check_mark: | The UUID of the payroll | -| `requestBody` | [Optional\](../../models/operations/PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitRequestBody.md) | :heavy_minus_sign: | N/A | ### Response -**[PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitResponse](../../models/operations/PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitResponse.md)** +**[PutApiV1CompaniesCompanyIdPayrollsPayrollIdCancelResponse](../../models/operations/PutApiV1CompaniesCompanyIdPayrollsPayrollIdCancelResponse.md)** ### Errors @@ -858,26 +852,33 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## cancel +## prepare + +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_date`, `payroll_deadline`, and `payroll_status_meta` dates and times. -Transitions a `processed` payroll back to the `unprocessed` state. A payroll can be canceled if it meets both criteria: +Use this endpoint before calling [PUT /v1/companies/{company_id}/payrolls/{payroll_id}](ref:put-v1-companies-company_id-payrolls). -- `processed` is `true` -- Current time is earlier than 4pm PT on the `payroll_deadline` +### Notes -scope: `payrolls:run` +* Nullifies `calculated_at` and `totals` if the payroll was previously calculated +* Returns the `version` parameter required for [updating the payroll](ref:put-v1-companies-company_id-payrolls) +* `employees:read` scope is required to include employee compensations data in the response. +* Results are paginated, with a maximum page size of 100 employee compensations. + +scope: `payrolls:write employees:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PutAPIV1CompaniesCompanyIdPayrollsPayrollIdCancelHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PutApiV1CompaniesCompanyIdPayrollsPayrollIdCancelResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareResponse; import java.lang.Exception; public class Application { @@ -888,14 +889,18 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutApiV1CompaniesCompanyIdPayrollsPayrollIdCancelResponse res = sdk.payrolls().cancel() - .xGustoAPIVersion(PutAPIV1CompaniesCompanyIdPayrollsPayrollIdCancelHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequest req = PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequest.builder() .companyId("") .payrollId("") + .sortBy("first_name:asc") + .build(); + + PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareResponse res = sdk.payrolls().prepare() + .request(req) .call(); - if (res.unprocessedPayroll().isPresent()) { - System.out.println(res.unprocessedPayroll().get()); + if (res.payrollPrepared().isPresent()) { + System.out.println(res.payrollPrepared().get()); } } } @@ -903,15 +908,13 @@ public class Application { ### Parameters -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutApiv1CompaniesCompanyIdPayrollsPayrollIdCancelHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | -| `payrollId` | *String* | :heavy_check_mark: | The UUID of the payroll | +| Parameter | Type | Required | Description | +| ------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------- | +| `request` | [PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequest](../../models/operations/PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequest.md) | :heavy_check_mark: | The request object to use for the request. | ### Response -**[PutApiV1CompaniesCompanyIdPayrollsPayrollIdCancelResponse](../../models/operations/PutApiV1CompaniesCompanyIdPayrollsPayrollIdCancelResponse.md)** +**[PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareResponse](../../models/operations/PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareResponse.md)** ### Errors @@ -921,41 +924,44 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## getPayStub +## calculate -Get an employee's pay stub for the specified payroll. By default, an application/pdf response will be returned. No other content types are currently supported, but may be supported in the future. +Performs calculations for taxes, benefits, and deductions for an unprocessed payroll. The calculated payroll details provide a preview of the actual values that will be used when the payroll is run. -scope: `pay_stubs:read` +This calculation is asynchronous and a successful request responds with a 202 HTTP status. To view the details of the calculated payroll, use the GET /v1/companies/{company_id}/payrolls/{payroll_id} endpoint with *include=taxes,benefits,deductions* params. + +If the company is blocked from running payroll due to issues like incomplete setup, missing information or other compliance issues, the response will be 422 Unprocessable Entity with a categorization of the blockers as described in the error responses. + +scope: `payrolls:run` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubResponse; +import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, Exception { + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubResponse res = sdk.payrolls().getPayStub() - .xGustoAPIVersion(GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateResponse res = sdk.payrolls().calculate() + .xGustoAPIVersion(PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .companyId("") .payrollId("") - .employeeId("") .call(); - if (res.responseStream().isPresent()) { - // handle response - } + // handle response } } ``` @@ -964,39 +970,38 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | `payrollId` | *String* | :heavy_check_mark: | The UUID of the payroll | -| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | ### Response -**[GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubResponse](../../models/operations/GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubResponse.md)** +**[PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateResponse](../../models/operations/PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| --------------------------------- | --------------------------------- | --------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | - -## getPayStubs +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | -Get an employee's pay stubs. +## getBlockers -Results are returned in reverse chronological order (newest first). +Returns a list of reasons that prevent the company from running payrolls. See the [Payroll Blockers guide](doc:payroll-blockers) for a complete list of reasons. The list is empty if there are no payroll blockers. -scope: `pay_stubs:read` +scope: `payrolls:run` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1EmployeesEmployeeUuidPayStubsHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1EmployeesEmployeeUuidPayStubsResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesPayrollBlockersCompanyUuidHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesPayrollBlockersCompanyUuidResponse; import java.lang.Exception; public class Application { @@ -1007,13 +1012,13 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1EmployeesEmployeeUuidPayStubsResponse res = sdk.payrolls().getPayStubs() - .xGustoAPIVersion(GetV1EmployeesEmployeeUuidPayStubsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) - .employeeId("") + GetV1CompaniesPayrollBlockersCompanyUuidResponse res = sdk.payrolls().getBlockers() + .xGustoAPIVersion(GetV1CompaniesPayrollBlockersCompanyUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .companyUuid("") .call(); - if (res.employeePayStubsList().isPresent()) { - System.out.println(res.employeePayStubsList().get()); + if (res.payrollBlockers().isPresent()) { + System.out.println(res.payrollBlockers().get()); } } } @@ -1023,14 +1028,12 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeUuidPayStubsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | -| `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | -| `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesPayrollBlockersCompanyUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | ### Response -**[GetV1EmployeesEmployeeUuidPayStubsResponse](../../models/operations/GetV1EmployeesEmployeeUuidPayStubsResponse.md)** +**[GetV1CompaniesPayrollBlockersCompanyUuidResponse](../../models/operations/GetV1CompaniesPayrollBlockersCompanyUuidResponse.md)** ### Errors @@ -1039,46 +1042,42 @@ public class Application { | models/errors/NotFoundErrorObject | 404 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## generatePrintableChecks +## skip -This endpoint initiates the generation of employee checks for the payroll specified by payroll_uuid. A generation status and corresponding request_uuid will be returned. Use the generated document GET endpoint with document_type: `printable_payroll_checks` and request_uuid to poll the check generation process and retrieve the generated check URL upon completion. +Submits a $0 payroll for employees associated with the pay schedule to skip payroll. This submission is asynchronous and a successful request responds with a 202 HTTP status. Upon success, the payroll is transitioned to the `processed` state. -scope: `generated_documents:write` +If the company is blocked from running payroll due to issues like incomplete setup, missing information or other compliance issues, the response will be 422 Unprocessable Entity with a categorization of the blockers as described in the error responses. + +scope: `payrolls:run` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; -import com.gusto.embedded_api_v_2025_11_15.models.components.PrintablePayrollChecksBody; -import com.gusto.embedded_api_v_2025_11_15.models.components.PrintingFormat; -import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksResponse; +import com.gusto.embedded_api_v_2025_11_15.models.errors.*; +import com.gusto.embedded_api_v_2025_11_15.models.operations.*; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + public static void main(String[] args) throws NotFoundErrorObject, ConflictErrorObject, PayrollBlockersError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksResponse res = sdk.payrolls().generatePrintableChecks() - .xGustoAPIVersion(PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) - .payrollUuid("") - .printablePayrollChecksBody(PrintablePayrollChecksBody.builder() - .printingFormat(PrintingFormat.TOP) + PostCompaniesPayrollSkipCompanyUuidResponse res = sdk.payrolls().skip() + .xGustoAPIVersion(PostCompaniesPayrollSkipCompanyUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .companyUuid("") + .requestBody(PostCompaniesPayrollSkipCompanyUuidRequestBody.builder() + .payrollType(PayrollType.TRANSITION_FROM_OLD_PAY_SCHEDULE) .build()) .call(); - if (res.payrollCheck().isPresent()) { - System.out.println(res.payrollCheck().get()); - } + // handle response } } ``` @@ -1087,57 +1086,61 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `payrollUuid` | *String* | :heavy_check_mark: | The UUID of the payroll | -| `printablePayrollChecksBody` | [PrintablePayrollChecksBody](../../models/components/PrintablePayrollChecksBody.md) | :heavy_check_mark: | N/A | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostCompaniesPayrollSkipCompanyUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | +| `requestBody` | [PostCompaniesPayrollSkipCompanyUuidRequestBody](../../models/operations/PostCompaniesPayrollSkipCompanyUuidRequestBody.md) | :heavy_check_mark: | N/A | ### Response -**[PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksResponse](../../models/operations/PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksResponse.md)** +**[PostCompaniesPayrollSkipCompanyUuidResponse](../../models/operations/PostCompaniesPayrollSkipCompanyUuidResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| -------------------------------------- | -------------------------------------- | -------------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/UnprocessableEntityError | 422 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | +| Error Type | Status Code | Content Type | +| ---------------------------------- | ---------------------------------- | ---------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/ConflictErrorObject | 409 | application/json | +| models/errors/PayrollBlockersError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | -## getV1CompaniesCompanyIdPayrollsIdPartnerDisbursements +## submit -Get partner disbursements for a specific payroll. +Submits an unprocessed payroll to be calculated and run. This submission is asynchronous and a successful request responds with a 202 HTTP status. Upon success, transitions the payroll to the `processed` state. -scope: `partner_disbursements:read` +You should poll to ensure that payroll is processed successfully, as async errors only occur after async processing is complete. + +If the company is blocked from running payroll due to issues like incomplete setup, missing information or other compliance issues, the response will be 422 Unprocessable Entity with a categorization of the blockers as described in the error responses. + +scope: `payrolls:run` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsResponse; +import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, Exception { + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsResponse res = sdk.payrolls().getV1CompaniesCompanyIdPayrollsIdPartnerDisbursements() + PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitResponse res = sdk.payrolls().submit() + .xGustoAPIVersion(PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .companyId("") - .id("") - .xGustoAPIVersion(GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .payrollId("") .call(); - if (res.payrollPartnerDisbursements().isPresent()) { - System.out.println(res.payrollPartnerDisbursements().get()); - } + // handle response } } ``` @@ -1146,39 +1149,44 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyId` | *String* | :heavy_check_mark: | The UUID of the company | -| `id` | *String* | :heavy_check_mark: | The UUID of the payroll | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `payrollId` | *String* | :heavy_check_mark: | The UUID of the payroll | +| `requestBody` | [Optional\](../../models/operations/PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitRequestBody.md) | :heavy_minus_sign: | N/A | ### Response -**[GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsResponse](../../models/operations/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsResponse.md)** +**[PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitResponse](../../models/operations/PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| --------------------------------- | --------------------------------- | --------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | -## patchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements +## calculateGrossUp -Update partner disbursements for a specific payroll. +Calculates gross up earnings for an employee's payroll, given net earnings. This endpoint is only applicable to off-cycle unprocessed payrolls. -scope: `partner_disbursements:write` +The gross up amount must then be mapped to the corresponding fixed compensation earning type to get the correct payroll amount. For example, for bonus off-cycles, the gross up amount should be set with the Bonus earning type in the payroll `fixed_compensations` field. + +scope: `payrolls:run` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; +import com.gusto.embedded_api_v_2025_11_15.models.components.PayrollGrossUpRequest; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api_v_2025_11_15.models.operations.*; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostPayrollsGrossUpPayrollUuidHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostPayrollsGrossUpPayrollUuidResponse; import java.lang.Exception; -import java.util.List; public class Application { @@ -1188,20 +1196,17 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsResponse res = sdk.payrolls().patchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements() - .companyId("") - .id("") - .xGustoAPIVersion(PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) - .requestBody(PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBody.builder() - .disbursements(List.of( - PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsDisbursements.builder() - .employeeUuid("1a2b3c4d-5e6f-7890-abcd-ef1234567890") - .build())) + PostPayrollsGrossUpPayrollUuidResponse res = sdk.payrolls().calculateGrossUp() + .xGustoAPIVersion(PostPayrollsGrossUpPayrollUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .payrollUuid("") + .payrollGrossUpRequest(PayrollGrossUpRequest.builder() + .employeeUuid("") + .netPay("") .build()) .call(); - if (res.payrollPartnerDisbursements().isPresent()) { - System.out.println(res.payrollPartnerDisbursements().get()); + if (res.payrollGrossUpResponse().isPresent()) { + System.out.println(res.payrollGrossUpResponse().get()); } } } @@ -1211,14 +1216,13 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | -| `id` | *String* | :heavy_check_mark: | The UUID of the payroll | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `requestBody` | [Optional\](../../models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBody.md) | :heavy_minus_sign: | N/A | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostPayrollsGrossUpPayrollUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `payrollUuid` | *String* | :heavy_check_mark: | The UUID of the payroll | +| `payrollGrossUpRequest` | [PayrollGrossUpRequest](../../models/components/PayrollGrossUpRequest.md) | :heavy_check_mark: | N/A | ### Response -**[PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsResponse](../../models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsResponse.md)** +**[PostPayrollsGrossUpPayrollUuidResponse](../../models/operations/PostPayrollsGrossUpPayrollUuidResponse.md)** ### Errors diff --git a/gusto_embedded_v_2025_11_15/docs/sdks/payschedules/README.md b/gusto_embedded_v_2025_11_15/docs/sdks/payschedules/README.md index 103e2884a..1a051c6ed 100644 --- a/gusto_embedded_v_2025_11_15/docs/sdks/payschedules/README.md +++ b/gusto_embedded_v_2025_11_15/docs/sdks/payschedules/README.md @@ -4,16 +4,140 @@ ### Available Operations +* [getPayPeriods](#getpayperiods) - Get pay periods for a company +* [getUnprocessedTerminationPeriods](#getunprocessedterminationperiods) - Get termination pay periods for a company * [getAll](#getall) - Get the pay schedules for a company * [create](#create) - Create a new pay schedule * [getPreview](#getpreview) - Preview pay schedule dates * [get](#get) - Get a pay schedule * [update](#update) - Update a pay schedule -* [getPayPeriods](#getpayperiods) - Get pay periods for a company -* [getUnprocessedTerminationPeriods](#getunprocessedterminationperiods) - Get termination pay periods for a company -* [getAssignments](#getassignments) - Get pay schedule assignments for a company * [previewAssignment](#previewassignment) - Preview pay schedule assignments for a company * [assign](#assign) - Assign pay schedules for a company +* [getAssignments](#getassignments) - Get pay schedule assignments for a company + +## getPayPeriods + +Pay periods are the foundation of payroll. Compensation, time & attendance, taxes, and expense reports all rely on when they happened. + +To begin submitting information for a given payroll, we need to agree on the time period. + +By default, this endpoint returns pay periods starting from 6 months ago to the date today. Use the `start_date` and `end_date` parameters to change the scope of the response. End dates can be up to 3 months in the future and there is no limit on start dates. + +Starting in version 2023-04-01, the `eligible_employees` attribute was removed from the response. The eligible employees for a payroll are determined by the employee_compensations returned from the [PUT /v1/companies/{company_id}/payrolls/{payroll_id}/prepare](ref:put-v1-companies-company_id-payrolls-payroll_id-prepare) endpoint. + +scope: `payrolls:read` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; +import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdPayPeriodsRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdPayPeriodsResponse; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + GetV1CompaniesCompanyIdPayPeriodsRequest req = GetV1CompaniesCompanyIdPayPeriodsRequest.builder() + .companyId("") + .build(); + + GetV1CompaniesCompanyIdPayPeriodsResponse res = sdk.paySchedules().getPayPeriods() + .request(req) + .call(); + + if (res.payPeriods().isPresent()) { + System.out.println(res.payPeriods().get()); + } + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| --------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------- | +| `request` | [GetV1CompaniesCompanyIdPayPeriodsRequest](../../models/operations/GetV1CompaniesCompanyIdPayPeriodsRequest.md) | :heavy_check_mark: | The request object to use for the request. | + +### Response + +**[GetV1CompaniesCompanyIdPayPeriodsResponse](../../models/operations/GetV1CompaniesCompanyIdPayPeriodsResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | + +## getUnprocessedTerminationPeriods + +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. + +This endpoint returns the unprocessed pay periods for past and future terminated employees in a given company. + +scope: `payrolls:read` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; +import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsResponse; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsResponse res = sdk.paySchedules().getUnprocessedTerminationPeriods() + .xGustoAPIVersion(GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .companyId("") + .call(); + + if (res.unprocessedTerminationPayPeriods().isPresent()) { + System.out.println(res.unprocessedTerminationPayPeriods().get()); + } + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | + +### Response + +**[GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsResponse](../../models/operations/GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | ## getAll @@ -371,29 +495,25 @@ public class Application { | models/errors/UnprocessableEntityError | 409, 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## getPayPeriods - -Pay periods are the foundation of payroll. Compensation, time & attendance, taxes, and expense reports all rely on when they happened. - -To begin submitting information for a given payroll, we need to agree on the time period. - -By default, this endpoint returns pay periods starting from 6 months ago to the date today. Use the `start_date` and `end_date` parameters to change the scope of the response. End dates can be up to 3 months in the future and there is no limit on start dates. +## previewAssignment -Starting in version 2023-04-01, the `eligible_employees` attribute was removed from the response. The eligible employees for a payroll are determined by the employee_compensations returned from the [PUT /v1/companies/{company_id}/payrolls/{payroll_id}/prepare](ref:put-v1-companies-company_id-payrolls-payroll_id-prepare) endpoint. +This endpoint returns the employee changes, including pay period and transition pay periods, for changing the pay schedule. -scope: `payrolls:read` +scope: `pay_schedules:write` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; +import com.gusto.embedded_api_v_2025_11_15.models.components.PayScheduleAssignmentBody; +import com.gusto.embedded_api_v_2025_11_15.models.components.PayScheduleAssignmentBodyType; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdPayPeriodsRequest; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdPayPeriodsResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1CompaniesCompanyIdPaySchedulesAssignmentPreviewHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1CompaniesCompanyIdPaySchedulesAssignmentPreviewResponse; import java.lang.Exception; public class Application { @@ -404,16 +524,16 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1CompaniesCompanyIdPayPeriodsRequest req = GetV1CompaniesCompanyIdPayPeriodsRequest.builder() + PostV1CompaniesCompanyIdPaySchedulesAssignmentPreviewResponse res = sdk.paySchedules().previewAssignment() + .xGustoAPIVersion(PostV1CompaniesCompanyIdPaySchedulesAssignmentPreviewHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .companyId("") - .build(); - - GetV1CompaniesCompanyIdPayPeriodsResponse res = sdk.paySchedules().getPayPeriods() - .request(req) + .payScheduleAssignmentBody(PayScheduleAssignmentBody.builder() + .type(PayScheduleAssignmentBodyType.BY_EMPLOYEE) + .build()) .call(); - if (res.payPeriods().isPresent()) { - System.out.println(res.payPeriods().get()); + if (res.payScheduleAssignmentPreview().isPresent()) { + System.out.println(res.payScheduleAssignmentPreview().get()); } } } @@ -421,13 +541,15 @@ public class Application { ### Parameters -| Parameter | Type | Required | Description | -| --------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------- | -| `request` | [GetV1CompaniesCompanyIdPayPeriodsRequest](../../models/operations/GetV1CompaniesCompanyIdPayPeriodsRequest.md) | :heavy_check_mark: | The request object to use for the request. | +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1CompaniesCompanyIdPaySchedulesAssignmentPreviewHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | +| `payScheduleAssignmentBody` | [PayScheduleAssignmentBody](../../models/components/PayScheduleAssignmentBody.md) | :heavy_check_mark: | N/A | ### Response -**[GetV1CompaniesCompanyIdPayPeriodsResponse](../../models/operations/GetV1CompaniesCompanyIdPayPeriodsResponse.md)** +**[PostV1CompaniesCompanyIdPaySchedulesAssignmentPreviewResponse](../../models/operations/PostV1CompaniesCompanyIdPaySchedulesAssignmentPreviewResponse.md)** ### Errors @@ -437,42 +559,45 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## getUnprocessedTerminationPeriods - -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. +## assign -This endpoint returns the unprocessed pay periods for past and future terminated employees in a given company. +This endpoint assigns employees to pay schedules based on the schedule type. +For `by_employee` and `by_department` schedules, use the `partial_assignment` parameter to control the assignment scope. Set it to `true` for partial assignments (only some employees or departments at a time) and `false` for full assignments (all employees or departments at once). -scope: `payrolls:read` +scope: `pay_schedules:write` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; +import com.gusto.embedded_api_v_2025_11_15.models.components.PayScheduleAssignmentBody; +import com.gusto.embedded_api_v_2025_11_15.models.components.PayScheduleAssignmentBodyType; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsResponse; +import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1CompaniesCompanyIdPaySchedulesAssignHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1CompaniesCompanyIdPaySchedulesAssignResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, Exception { + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsResponse res = sdk.paySchedules().getUnprocessedTerminationPeriods() - .xGustoAPIVersion(GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + PostV1CompaniesCompanyIdPaySchedulesAssignResponse res = sdk.paySchedules().assign() + .xGustoAPIVersion(PostV1CompaniesCompanyIdPaySchedulesAssignHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .companyId("") + .payScheduleAssignmentBody(PayScheduleAssignmentBody.builder() + .type(PayScheduleAssignmentBodyType.BY_EMPLOYEE) + .build()) .call(); - if (res.unprocessedTerminationPayPeriods().isPresent()) { - System.out.println(res.unprocessedTerminationPayPeriods().get()); - } + // handle response } } ``` @@ -481,19 +606,21 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1CompaniesCompanyIdPaySchedulesAssignHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyId` | *String* | :heavy_check_mark: | The UUID of the company | +| `payScheduleAssignmentBody` | [PayScheduleAssignmentBody](../../models/components/PayScheduleAssignmentBody.md) | :heavy_check_mark: | N/A | ### Response -**[GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsResponse](../../models/operations/GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsResponse.md)** +**[PostV1CompaniesCompanyIdPaySchedulesAssignResponse](../../models/operations/PostV1CompaniesCompanyIdPaySchedulesAssignResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| --------------------------------- | --------------------------------- | --------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | ## getAssignments @@ -549,131 +676,4 @@ public class Application { | Error Type | Status Code | Content Type | | --------------------------------- | --------------------------------- | --------------------------------- | | models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | - -## previewAssignment - -This endpoint returns the employee changes, including pay period and transition pay periods, for changing the pay schedule. - -scope: `pay_schedules:write` - -### Example Usage - - -```java -package hello.world; - -import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; -import com.gusto.embedded_api_v_2025_11_15.models.components.PayScheduleAssignmentBody; -import com.gusto.embedded_api_v_2025_11_15.models.components.PayScheduleAssignmentBodyType; -import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1CompaniesCompanyIdPaySchedulesAssignmentPreviewHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1CompaniesCompanyIdPaySchedulesAssignmentPreviewResponse; -import java.lang.Exception; - -public class Application { - - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { - - GustoEmbedded sdk = GustoEmbedded.builder() - .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) - .build(); - - PostV1CompaniesCompanyIdPaySchedulesAssignmentPreviewResponse res = sdk.paySchedules().previewAssignment() - .xGustoAPIVersion(PostV1CompaniesCompanyIdPaySchedulesAssignmentPreviewHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) - .companyId("") - .payScheduleAssignmentBody(PayScheduleAssignmentBody.builder() - .type(PayScheduleAssignmentBodyType.BY_EMPLOYEE) - .build()) - .call(); - - if (res.payScheduleAssignmentPreview().isPresent()) { - System.out.println(res.payScheduleAssignmentPreview().get()); - } - } -} -``` - -### Parameters - -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1CompaniesCompanyIdPaySchedulesAssignmentPreviewHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | -| `payScheduleAssignmentBody` | [PayScheduleAssignmentBody](../../models/components/PayScheduleAssignmentBody.md) | :heavy_check_mark: | N/A | - -### Response - -**[PostV1CompaniesCompanyIdPaySchedulesAssignmentPreviewResponse](../../models/operations/PostV1CompaniesCompanyIdPaySchedulesAssignmentPreviewResponse.md)** - -### Errors - -| Error Type | Status Code | Content Type | -| -------------------------------------- | -------------------------------------- | -------------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/UnprocessableEntityError | 422 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | - -## assign - -This endpoint assigns employees to pay schedules based on the schedule type. -For `by_employee` and `by_department` schedules, use the `partial_assignment` parameter to control the assignment scope. Set it to `true` for partial assignments (only some employees or departments at a time) and `false` for full assignments (all employees or departments at once). - -scope: `pay_schedules:write` - -### Example Usage - - -```java -package hello.world; - -import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; -import com.gusto.embedded_api_v_2025_11_15.models.components.PayScheduleAssignmentBody; -import com.gusto.embedded_api_v_2025_11_15.models.components.PayScheduleAssignmentBodyType; -import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1CompaniesCompanyIdPaySchedulesAssignHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1CompaniesCompanyIdPaySchedulesAssignResponse; -import java.lang.Exception; - -public class Application { - - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { - - GustoEmbedded sdk = GustoEmbedded.builder() - .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) - .build(); - - PostV1CompaniesCompanyIdPaySchedulesAssignResponse res = sdk.paySchedules().assign() - .xGustoAPIVersion(PostV1CompaniesCompanyIdPaySchedulesAssignHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) - .companyId("") - .payScheduleAssignmentBody(PayScheduleAssignmentBody.builder() - .type(PayScheduleAssignmentBodyType.BY_EMPLOYEE) - .build()) - .call(); - - // handle response - } -} -``` - -### Parameters - -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1CompaniesCompanyIdPaySchedulesAssignHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | -| `payScheduleAssignmentBody` | [PayScheduleAssignmentBody](../../models/components/PayScheduleAssignmentBody.md) | :heavy_check_mark: | N/A | - -### Response - -**[PostV1CompaniesCompanyIdPaySchedulesAssignResponse](../../models/operations/PostV1CompaniesCompanyIdPaySchedulesAssignResponse.md)** - -### Errors - -| Error Type | Status Code | Content Type | -| -------------------------------------- | -------------------------------------- | -------------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/UnprocessableEntityError | 422 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | \ No newline at end of file +| models/errors/APIException | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/sdks/peoplebatches/README.md b/gusto_embedded_v_2025_11_15/docs/sdks/peoplebatches/README.md index efac83a12..ab2587e7f 100644 --- a/gusto_embedded_v_2025_11_15/docs/sdks/peoplebatches/README.md +++ b/gusto_embedded_v_2025_11_15/docs/sdks/peoplebatches/README.md @@ -36,11 +36,11 @@ public class Application { .build(); PostV1CompaniesCompanyIdPeopleBatchesResponse res = sdk.peopleBatches().postV1CompaniesCompanyIdPeopleBatches() - .companyId("") .xGustoAPIVersion(PostV1CompaniesCompanyIdPeopleBatchesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .companyId("") .requestBody(PostV1CompaniesCompanyIdPeopleBatchesRequestBody.builder() .idempotencyKey("550e8400-e29b-41d4-a716-446655440000") - .batchAction(BatchAction.CREATE) + .batchAction(PostV1CompaniesCompanyIdPeopleBatchesBatchAction.CREATE) .batch(List.of()) .build()) .call(); @@ -56,8 +56,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1CompaniesCompanyIdPeopleBatchesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | `requestBody` | [PostV1CompaniesCompanyIdPeopleBatchesRequestBody](../../models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequestBody.md) | :heavy_check_mark: | N/A | ### Response @@ -102,8 +102,8 @@ public class Application { .build(); GetV1PeopleBatchesPeopleBatchUuidResponse res = sdk.peopleBatches().getV1PeopleBatchesPeopleBatchUuid() - .peopleBatchUuid("") .xGustoAPIVersion(GetV1PeopleBatchesPeopleBatchUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .peopleBatchUuid("") .call(); if (res.peopleBatchResults().isPresent()) { @@ -117,8 +117,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `peopleBatchUuid` | *String* | :heavy_check_mark: | The UUID of the people batch | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1PeopleBatchesPeopleBatchUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `peopleBatchUuid` | *String* | :heavy_check_mark: | The UUID of the people batch | ### Response diff --git a/gusto_embedded_v_2025_11_15/docs/sdks/reports/README.md b/gusto_embedded_v_2025_11_15/docs/sdks/reports/README.md index d54e90860..156ab9299 100644 --- a/gusto_embedded_v_2025_11_15/docs/sdks/reports/README.md +++ b/gusto_embedded_v_2025_11_15/docs/sdks/reports/README.md @@ -4,11 +4,234 @@ ### Available Operations +* [postV1BulkReports](#postv1bulkreports) - Create a bulk report batch +* [getV1BulkReportsRequestUuid](#getv1bulkreportsrequestuuid) - Get a bulk report batch +* [postV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage](#postv1companiescompanyidreportsemployeesannualficawage) - Create an employees annual FICA wage report * [createCustom](#createcustom) - Create a custom report * [postPayrollsPayrollUuidReportsGeneralLedger](#postpayrollspayrolluuidreportsgeneralledger) - Create a general ledger report * [getReportsRequestUuid](#getreportsrequestuuid) - Get a report * [getTemplate](#gettemplate) - Get a report template -* [postV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage](#postv1companiescompanyidreportsemployeesannualficawage) - Create an employees annual FICA wage report + +## postV1BulkReports + +Triggers asynchronous generation of up to 25 reports across companies the partner is mapped to. Each `batch` item is a `custom_report` (same parameters as [create a custom report](https://docs.gusto.com/embedded-payroll/reference/post-companies-company_uuid-reports)) or a `general_ledger` report (same parameters as [create a general ledger report](https://docs.gusto.com/embedded-payroll/reference/post-payrolls-payroll_uuid-reports-general_ledger)), keyed by `company_uuid` and `report_type`. Items are validated synchronously; if any is invalid, the entire batch is rejected. + +Poll the [bulk report GET endpoint](https://docs.gusto.com/embedded-payroll/reference/get-v1-bulk_reports-request_uuid) with the returned `uuid` for status and the report URL, which is valid for 10 minutes. + +📘 System Access Authentication + +This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + +scope: `company_reports:write` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; +import com.gusto.embedded_api_v_2025_11_15.models.components.*; +import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api_v_2025_11_15.models.operations.*; +import java.lang.Exception; +import java.time.LocalDate; +import java.util.List; + +public class Application { + + public static void main(String[] args) throws UnprocessableEntityError, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .build(); + + PostV1BulkReportsResponse res = sdk.reports().postV1BulkReports() + .security(PostV1BulkReportsSecurity.builder() + .systemAccessAuth(System.getenv().getOrDefault("SYSTEM_ACCESS_AUTH", "")) + .build()) + .xGustoAPIVersion(PostV1BulkReportsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .bulkReportBody(BulkReportBody.builder() + .batch(List.of( + BulkReportCustomReportItem.builder() + .companyUuid("12345678-abcd-ef12-3456-7890abcdef12") + .reportType(ReportType.CUSTOM_REPORT) + .columns(List.of( + Columns.EMPLOYEE_FIRST_NAME)) + .fileType(FileType.CSV) + .groupings(List.of( + Groupings.EMPLOYEE)) + .customName("Q1 Payroll Export") + .dateFilterType(DateFilterType.CHECK_DATE) + .startDate(LocalDate.parse("2026-01-01")) + .endDate(LocalDate.parse("2026-03-31")) + .paymentMethod(PaymentMethod.CHECK) + .employmentType(EmploymentType.EXEMPT) + .employmentStatus(EmploymentStatus.ACTIVE_FULL_TIME) + .build(), + BulkReportGeneralLedgerItem.builder() + .companyUuid("12345678-abcd-ef12-3456-7890abcdef12") + .reportType(BulkReportGeneralLedgerItemReportType.GENERAL_LEDGER) + .payrollUuid("7b1d0df1-6403-4a06-8768-c1dd7d24d27a") + .aggregation(Aggregation.DEFAULT) + .build())) + .build()) + .call(); + + if (res.createBulkReport().isPresent()) { + System.out.println(res.createBulkReport().get()); + } + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | Example | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| `security` | [com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1BulkReportsSecurity](../../models/operations/PostV1BulkReportsSecurity.md) | :heavy_check_mark: | The security requirements to use for the request. | | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1BulkReportsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | +| `bulkReportBody` | [BulkReportBody](../../models/components/BulkReportBody.md) | :heavy_check_mark: | N/A | {
    "batch": [
    {
    "company_uuid": "12345678-abcd-ef12-3456-7890abcdef12",
    "report_type": "custom_report",
    "columns": [
    "employee_first_name"
    ],
    "groupings": [
    "employee"
    ],
    "file_type": "csv",
    "custom_name": "Q1 Payroll Export",
    "with_totals": false,
    "start_date": "2026-01-01",
    "end_date": "2026-03-31",
    "date_filter_type": "check_date",
    "payment_method": "check",
    "employment_type": "exempt",
    "employment_status": "active_full_time"
    },
    {
    "company_uuid": "12345678-abcd-ef12-3456-7890abcdef12",
    "report_type": "general_ledger",
    "payroll_uuid": "7b1d0df1-6403-4a06-8768-c1dd7d24d27a",
    "aggregation": "default"
    }
    ]
    } | + +### Response + +**[PostV1BulkReportsResponse](../../models/operations/PostV1BulkReportsResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | + +## getV1BulkReportsRequestUuid + +Get a bulk report batch's status and results given the `request_uuid`. While in progress, only batch metadata is returned; once complete, it also includes a signed `report_url` (a zip of all generated reports, valid for 10 minutes) and a per-company breakdown. + +Reports containing PHI are inaccessible with `company_reports:read:tier_2_only` data scope. + +📘 System Access Authentication + +This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + +scope: `company_reports:read` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; +import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2025_11_15.models.operations.*; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .build(); + + GetV1BulkReportsRequestUuidResponse res = sdk.reports().getV1BulkReportsRequestUuid() + .security(GetV1BulkReportsRequestUuidSecurity.builder() + .systemAccessAuth(System.getenv().getOrDefault("SYSTEM_ACCESS_AUTH", "")) + .build()) + .xGustoAPIVersion(GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .requestUuid("") + .call(); + + if (res.bulkReport().isPresent()) { + System.out.println(res.bulkReport().get()); + } + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `security` | [com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1BulkReportsRequestUuidSecurity](../../models/operations/GetV1BulkReportsRequestUuidSecurity.md) | :heavy_check_mark: | The security requirements to use for the request. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `requestUuid` | *String* | :heavy_check_mark: | The UUID of the bulk report batch. | + +### Response + +**[GetV1BulkReportsRequestUuidResponse](../../models/operations/GetV1BulkReportsRequestUuidResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | + +## postV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage + +Generates a report containing annual FICA (Federal Insurance Contributions Act) wage data for all employees in a company over a specified year range. + +This report provides detailed wage information subject to Social Security and Medicare taxes, useful for benefits integrations that need to verify employee earnings for compliance and benefit calculations. + +The report is generated asynchronously. After making this request, you will receive a `request_uuid` which can be used to poll the [Get a report](ref:get-v1-reports-request_uuid) endpoint to check the status and retrieve the report when complete. + +scope: `company_reports:write` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; +import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api_v_2025_11_15.models.operations.*; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageResponse res = sdk.reports().postV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage() + .xGustoAPIVersion(PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .companyId("") + .requestBody(PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequestBody.builder() + .startYear(2023L) + .endYear(2024L) + .build()) + .call(); + + if (res.employeesAnnualFicaWageReportAcceptance().isPresent()) { + System.out.println(res.employeesAnnualFicaWageReportAcceptance().get()); + } + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | +| `requestBody` | [PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequestBody](../../models/operations/PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequestBody.md) | :heavy_check_mark: | N/A | + +### Response + +**[PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageResponse](../../models/operations/PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | ## createCustom @@ -45,9 +268,8 @@ public class Application { .companyUuid("") .createReportBody(CreateReportBody.builder() .columns(List.of( - Columns.TOTAL_TIME_OFF_EARNINGS)) - .groupings(List.of()) - .fileType(FileType.JSON) + CreateReportBodyColumns.TOTAL_TIME_OFF_EARNINGS)) + .fileType(CreateReportBodyFileType.JSON) .startDate(LocalDate.parse("2024-01-01")) .endDate(LocalDate.parse("2024-04-01")) .dismissedStartDate(LocalDate.parse("2024-01-01")) @@ -97,8 +319,8 @@ scope: `company_reports:write` package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; -import com.gusto.embedded_api_v_2025_11_15.models.components.Aggregation; import com.gusto.embedded_api_v_2025_11_15.models.components.GeneralLedgerReportBody; +import com.gusto.embedded_api_v_2025_11_15.models.components.GeneralLedgerReportBodyAggregation; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; import com.gusto.embedded_api_v_2025_11_15.models.operations.PostPayrollsPayrollUuidReportsGeneralLedgerHeaderXGustoAPIVersion; @@ -117,7 +339,7 @@ public class Application { .xGustoAPIVersion(PostPayrollsPayrollUuidReportsGeneralLedgerHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .payrollUuid("") .generalLedgerReportBody(GeneralLedgerReportBody.builder() - .aggregation(Aggregation.DEFAULT) + .aggregation(GeneralLedgerReportBodyAggregation.DEFAULT) .build()) .call(); @@ -260,72 +482,6 @@ public class Application { ### Errors -| Error Type | Status Code | Content Type | -| -------------------------------------- | -------------------------------------- | -------------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/UnprocessableEntityError | 422 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | - -## postV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage - -Generates a report containing annual FICA (Federal Insurance Contributions Act) wage data for all employees in a company over a specified year range. - -This report provides detailed wage information subject to Social Security and Medicare taxes, useful for benefits integrations that need to verify employee earnings for compliance and benefit calculations. - -The report is generated asynchronously. After making this request, you will receive a `request_uuid` which can be used to poll the [Get a report](ref:get-v1-reports-request_uuid) endpoint to check the status and retrieve the report when complete. - -scope: `company_reports:write` - -### Example Usage - - -```java -package hello.world; - -import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; -import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api_v_2025_11_15.models.operations.*; -import java.lang.Exception; - -public class Application { - - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { - - GustoEmbedded sdk = GustoEmbedded.builder() - .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) - .build(); - - PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageResponse res = sdk.reports().postV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage() - .xGustoAPIVersion(PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) - .companyId("") - .requestBody(PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequestBody.builder() - .startYear(2023L) - .endYear(2024L) - .build()) - .call(); - - if (res.employeesAnnualFicaWageReportAcceptance().isPresent()) { - System.out.println(res.employeesAnnualFicaWageReportAcceptance().get()); - } - } -} -``` - -### Parameters - -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | -| `requestBody` | [PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequestBody](../../models/operations/PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequestBody.md) | :heavy_check_mark: | N/A | - -### Response - -**[PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageResponse](../../models/operations/PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageResponse.md)** - -### Errors - | Error Type | Status Code | Content Type | | -------------------------------------- | -------------------------------------- | -------------------------------------- | | models/errors/NotFoundErrorObject | 404 | application/json | diff --git a/gusto_embedded_v_2025_11_15/docs/sdks/reversewiretransactions/README.md b/gusto_embedded_v_2025_11_15/docs/sdks/reversewiretransactions/README.md new file mode 100644 index 000000000..b54789533 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/sdks/reversewiretransactions/README.md @@ -0,0 +1,65 @@ +# ReverseWireTransactions + +## Overview + +### Available Operations + +* [getReverseWireTransactions](#getreversewiretransactions) - Get all reverse wire transactions for a company + +## getReverseWireTransactions + +Returns a paginated list of reverse wire (drawdown) transactions for a company. Reverse wires are debit transactions initiated by Gusto to pull funds from a partner's bank account to cover payroll or contractor payment obligations. Pagination is returned via the `x-page`, `x-per-page`, `x-total-count`, and `x-total-pages` response headers. + +scope: `reverse_wire_transactions:read` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; +import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetReverseWireTransactionsRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetReverseWireTransactionsResponse; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + GetReverseWireTransactionsRequest req = GetReverseWireTransactionsRequest.builder() + .companyUuid("") + .build(); + + GetReverseWireTransactionsResponse res = sdk.reverseWireTransactions().getReverseWireTransactions() + .request(req) + .call(); + + if (res.reverseWireTransactionList().isPresent()) { + System.out.println(res.reverseWireTransactionList().get()); + } + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | +| `request` | [GetReverseWireTransactionsRequest](../../models/operations/GetReverseWireTransactionsRequest.md) | :heavy_check_mark: | The request object to use for the request. | + +### Response + +**[GetReverseWireTransactionsResponse](../../models/operations/GetReverseWireTransactionsResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/sdks/signatories/README.md b/gusto_embedded_v_2025_11_15/docs/sdks/signatories/README.md index 07ae94534..4d48eefd6 100644 --- a/gusto_embedded_v_2025_11_15/docs/sdks/signatories/README.md +++ b/gusto_embedded_v_2025_11_15/docs/sdks/signatories/README.md @@ -40,8 +40,8 @@ public class Application { .build(); GetV1CompaniesCompanyUuidSignatoriesResponse res = sdk.signatories().list() - .companyUuid("") .xGustoAPIVersion(GetV1CompaniesCompanyUuidSignatoriesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .companyUuid("") .call(); if (res.signatories().isPresent()) { @@ -55,8 +55,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyUuidSignatoriesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | ### Response @@ -108,8 +108,8 @@ public class Application { .build(); PostV1CompanySignatoriesResponse res = sdk.signatories().create() - .companyUuid("") .xGustoAPIVersion(PostV1CompanySignatoriesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .companyUuid("") .signatoryCreateRequest(SignatoryCreateRequest.builder() .firstName("Ed") .lastName("Reichert") @@ -138,8 +138,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1CompanySignatoriesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `signatoryCreateRequest` | [SignatoryCreateRequest](../../models/components/SignatoryCreateRequest.md) | :heavy_check_mark: | N/A | ### Response @@ -186,8 +186,8 @@ public class Application { .build(); PostV1CompaniesCompanyUuidSignatoriesInviteResponse res = sdk.signatories().invite() - .companyUuid("") .xGustoAPIVersion(PostV1CompaniesCompanyUuidSignatoriesInviteHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .companyUuid("") .signatoryInviteRequest(SignatoryInviteRequest.builder() .firstName("Madelyn") .lastName("Littel") @@ -206,8 +206,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1CompaniesCompanyUuidSignatoriesInviteHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `signatoryInviteRequest` | [SignatoryInviteRequest](../../models/components/SignatoryInviteRequest.md) | :heavy_check_mark: | N/A | ### Response @@ -254,9 +254,9 @@ public class Application { .build(); PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidResponse res = sdk.signatories().update() + .xGustoAPIVersion(PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .companyUuid("") .signatoryUuid("") - .xGustoAPIVersion(PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .signatoryUpdateRequest(SignatoryUpdateRequest.builder() .version("") .build()) @@ -273,9 +273,9 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `signatoryUuid` | *String* | :heavy_check_mark: | The UUID of the signatory | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `signatoryUpdateRequest` | [SignatoryUpdateRequest](../../models/components/SignatoryUpdateRequest.md) | :heavy_check_mark: | N/A | ### Response @@ -320,9 +320,9 @@ public class Application { .build(); DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidResponse res = sdk.signatories().delete() + .xGustoAPIVersion(DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .companyUuid("") .signatoryUuid("") - .xGustoAPIVersion(DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .call(); // handle response @@ -334,9 +334,9 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `signatoryUuid` | *String* | :heavy_check_mark: | The UUID of the signatory | -| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | ### Response diff --git a/gusto_embedded_v_2025_11_15/docs/sdks/taxpayments/README.md b/gusto_embedded_v_2025_11_15/docs/sdks/taxpayments/README.md new file mode 100644 index 000000000..9e8fff375 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/docs/sdks/taxpayments/README.md @@ -0,0 +1,127 @@ +# TaxPayments + +## Overview + +### Available Operations + +* [getTaxPayments](#gettaxpayments) - Get all tax payments for a company +* [getTaxPayment](#gettaxpayment) - Get a tax payment for a company + +## getTaxPayments + +Fetches all tax payments Gusto has made (or scheduled) to tax agencies on behalf of a company. + +scope: `tax_payments:read` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; +import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetTaxPaymentsRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetTaxPaymentsResponse; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + GetTaxPaymentsRequest req = GetTaxPaymentsRequest.builder() + .companyUuid("") + .sortBy("amount:asc") + .build(); + + GetTaxPaymentsResponse res = sdk.taxPayments().getTaxPayments() + .request(req) + .call(); + + if (res.taxPaymentList().isPresent()) { + System.out.println(res.taxPaymentList().get()); + } + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | +| `request` | [GetTaxPaymentsRequest](../../models/operations/GetTaxPaymentsRequest.md) | :heavy_check_mark: | The request object to use for the request. | + +### Response + +**[GetTaxPaymentsResponse](../../models/operations/GetTaxPaymentsResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | + +## getTaxPayment + +Fetches a single tax payment by UUID, including the payroll tax liabilities that make up the payment. + +scope: `tax_payments:read` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; +import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetTaxPaymentHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetTaxPaymentResponse; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + GetTaxPaymentResponse res = sdk.taxPayments().getTaxPayment() + .xGustoAPIVersion(GetTaxPaymentHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .companyUuid("") + .uuid("7cdc7492-54c4-4684-9729-2c5da517245b") + .call(); + + if (res.taxPayment().isPresent()) { + System.out.println(res.taxPayment().get()); + } + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetTaxPaymentHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | +| `uuid` | *String* | :heavy_check_mark: | The UUID of the tax payment | + +### Response + +**[GetTaxPaymentResponse](../../models/operations/GetTaxPaymentResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/sdks/taxrequirements/README.md b/gusto_embedded_v_2025_11_15/docs/sdks/taxrequirements/README.md index 75383c576..f1d8fc402 100644 --- a/gusto_embedded_v_2025_11_15/docs/sdks/taxrequirements/README.md +++ b/gusto_embedded_v_2025_11_15/docs/sdks/taxrequirements/README.md @@ -4,9 +4,66 @@ ### Available Operations +* [getAll](#getall) - Get all tax requirements for a company * [get](#get) - Get tax requirements for a state * [updateState](#updatestate) - Update tax requirements for a state -* [getAll](#getall) - Get all tax requirements for a company + +## getAll + +Retrieves all states for which a company has tax requirements, along with a boolean indicating whether tax setup +is complete for each state. Use this to determine which states still need tax setup during company onboarding. + +scope: `company_tax_requirements:read` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; +import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyUuidTaxRequirementsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyUuidTaxRequirementsResponse; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + GetV1CompaniesCompanyUuidTaxRequirementsResponse res = sdk.taxRequirements().getAll() + .xGustoAPIVersion(GetV1CompaniesCompanyUuidTaxRequirementsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .companyUuid("") + .call(); + + if (res.taxRequirementStatesList().isPresent()) { + System.out.println(res.taxRequirementStatesList().get()); + } + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyUuidTaxRequirementsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | + +### Response + +**[GetV1CompaniesCompanyUuidTaxRequirementsResponse](../../models/operations/GetV1CompaniesCompanyUuidTaxRequirementsResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | ## get @@ -39,9 +96,9 @@ public class Application { .build(); GetV1CompaniesCompanyUuidTaxRequirementsStateResponse res = sdk.taxRequirements().get() + .xGustoAPIVersion(GetV1CompaniesCompanyUuidTaxRequirementsStateHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .companyUuid("") .state("CA") - .xGustoAPIVersion(GetV1CompaniesCompanyUuidTaxRequirementsStateHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .call(); if (res.taxRequirementsState().isPresent()) { @@ -55,9 +112,9 @@ public class Application { | Parameter | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyUuidTaxRequirementsStateHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | | `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | | `state` | *String* | :heavy_check_mark: | The two-letter state abbreviation | CA | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyUuidTaxRequirementsStateHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | | `scheduling` | *Optional\* | :heavy_minus_sign: | When true, return "new" requirement sets with valid `effective_from` dates that are available to save new effective-dated values. | | ### Response @@ -106,9 +163,9 @@ public class Application { .build(); PutV1CompaniesCompanyUuidTaxRequirementsStateResponse res = sdk.taxRequirements().updateState() + .xGustoAPIVersion(PutV1CompaniesCompanyUuidTaxRequirementsStateHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .companyUuid("") .state("CA") - .xGustoAPIVersion(PutV1CompaniesCompanyUuidTaxRequirementsStateHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .requestBody(PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody.builder() .requirementSets(List.of( TaxRequirementSetUpdate.builder() @@ -133,9 +190,9 @@ public class Application { | Parameter | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1CompaniesCompanyUuidTaxRequirementsStateHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | | `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | | `state` | *String* | :heavy_check_mark: | The two-letter state abbreviation | CA | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1CompaniesCompanyUuidTaxRequirementsStateHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | | `requestBody` | [PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody](../../models/operations/PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody.md) | :heavy_check_mark: | N/A | | ### Response @@ -148,61 +205,4 @@ public class Application { | -------------------------------------- | -------------------------------------- | -------------------------------------- | | models/errors/NotFoundErrorObject | 404 | application/json | | models/errors/UnprocessableEntityError | 422 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | - -## getAll - -Retrieves all states for which a company has tax requirements, along with a boolean indicating whether tax setup -is complete for each state. Use this to determine which states still need tax setup during company onboarding. - -scope: `company_tax_requirements:read` - -### Example Usage - - -```java -package hello.world; - -import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; -import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyUuidTaxRequirementsHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyUuidTaxRequirementsResponse; -import java.lang.Exception; - -public class Application { - - public static void main(String[] args) throws NotFoundErrorObject, Exception { - - GustoEmbedded sdk = GustoEmbedded.builder() - .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) - .build(); - - GetV1CompaniesCompanyUuidTaxRequirementsResponse res = sdk.taxRequirements().getAll() - .companyUuid("") - .xGustoAPIVersion(GetV1CompaniesCompanyUuidTaxRequirementsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) - .call(); - - if (res.taxRequirementStatesList().isPresent()) { - System.out.println(res.taxRequirementStatesList().get()); - } - } -} -``` - -### Parameters - -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyUuidTaxRequirementsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | - -### Response - -**[GetV1CompaniesCompanyUuidTaxRequirementsResponse](../../models/operations/GetV1CompaniesCompanyUuidTaxRequirementsResponse.md)** - -### Errors - -| Error Type | Status Code | Content Type | -| --------------------------------- | --------------------------------- | --------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | \ No newline at end of file +| models/errors/APIException | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/docs/sdks/timeoffpolicies/README.md b/gusto_embedded_v_2025_11_15/docs/sdks/timeoffpolicies/README.md index 0a0185d35..bf9023d63 100644 --- a/gusto_embedded_v_2025_11_15/docs/sdks/timeoffpolicies/README.md +++ b/gusto_embedded_v_2025_11_15/docs/sdks/timeoffpolicies/README.md @@ -5,14 +5,14 @@ ### Available Operations * [calculateAccruingTimeOffHours](#calculateaccruingtimeoffhours) - Calculate accruing time off hours -* [get](#get) - Get a time off policy -* [update](#update) - Update a time off policy * [getAll](#getall) - Get all time off policies for a company * [create](#create) - Create a time off policy +* [get](#get) - Get a time off policy +* [update](#update) - Update a time off policy +* [deactivate](#deactivate) - Deactivate a time off policy * [addEmployees](#addemployees) - Add employees to a time off policy * [removeEmployees](#removeemployees) - Remove employees from a time off policy * [updateBalance](#updatebalance) - Update employee time off balances -* [deactivate](#deactivate) - Deactivate a time off policy ## calculateAccruingTimeOffHours @@ -84,22 +84,22 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## get +## getAll -Get a time off policy +Get all time off policies for a company scope: `time_off_policies:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1TimeOffPoliciesTimeOffPolicyUuidHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1TimeOffPoliciesTimeOffPolicyUuidResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyUuidTimeOffPoliciesHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyUuidTimeOffPoliciesResponse; import java.lang.Exception; public class Application { @@ -110,13 +110,13 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1TimeOffPoliciesTimeOffPolicyUuidResponse res = sdk.timeOffPolicies().get() - .xGustoAPIVersion(GetV1TimeOffPoliciesTimeOffPolicyUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) - .timeOffPolicyUuid("") + GetV1CompaniesCompanyUuidTimeOffPoliciesResponse res = sdk.timeOffPolicies().getAll() + .xGustoAPIVersion(GetV1CompaniesCompanyUuidTimeOffPoliciesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .companyUuid("") .call(); - if (res.timeOffPolicy().isPresent()) { - System.out.println(res.timeOffPolicy().get()); + if (res.timeOffPolicies().isPresent()) { + System.out.println(res.timeOffPolicies().get()); } } } @@ -126,12 +126,12 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1TimeOffPoliciesTimeOffPolicyUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `timeOffPolicyUuid` | *String* | :heavy_check_mark: | The UUID of the time off policy | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyUuidTimeOffPoliciesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | ### Response -**[GetV1TimeOffPoliciesTimeOffPolicyUuidResponse](../../models/operations/GetV1TimeOffPoliciesTimeOffPolicyUuidResponse.md)** +**[GetV1CompaniesCompanyUuidTimeOffPoliciesResponse](../../models/operations/GetV1CompaniesCompanyUuidTimeOffPoliciesResponse.md)** ### Errors @@ -140,22 +140,24 @@ public class Application { | models/errors/NotFoundErrorObject | 404 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## update +## create -Update a time off policy +Create a time off policy scope: `time_off_policies:write` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; +import com.gusto.embedded_api_v_2025_11_15.models.components.*; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api_v_2025_11_15.models.operations.*; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1CompaniesCompanyUuidTimeOffPoliciesHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1CompaniesCompanyUuidTimeOffPoliciesResponse; import java.lang.Exception; public class Application { @@ -166,12 +168,13 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1TimeOffPoliciesTimeOffPolicyUuidResponse res = sdk.timeOffPolicies().update() - .xGustoAPIVersion(PutV1TimeOffPoliciesTimeOffPolicyUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) - .timeOffPolicyUuid("") - .requestBody(PutV1TimeOffPoliciesTimeOffPolicyUuidRequestBody.builder() - .version("56d00c178bc7393b2a206ed6a86afcb4") + PostV1CompaniesCompanyUuidTimeOffPoliciesResponse res = sdk.timeOffPolicies().create() + .xGustoAPIVersion(PostV1CompaniesCompanyUuidTimeOffPoliciesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .companyUuid("") + .timeOffPolicyRequest(TimeOffPolicyRequest.builder() .name("Vacation Policy") + .policyType(TimeOffPolicyRequestPolicyType.VACATION) + .accrualMethod(AccrualMethod.PER_PAY_PERIOD) .build()) .call(); @@ -186,13 +189,13 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `timeOffPolicyUuid` | *String* | :heavy_check_mark: | The UUID of the time off policy | -| `requestBody` | [PutV1TimeOffPoliciesTimeOffPolicyUuidRequestBody](../../models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidRequestBody.md) | :heavy_check_mark: | N/A | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1CompaniesCompanyUuidTimeOffPoliciesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | +| `timeOffPolicyRequest` | [TimeOffPolicyRequest](../../models/components/TimeOffPolicyRequest.md) | :heavy_check_mark: | N/A | ### Response -**[PutV1TimeOffPoliciesTimeOffPolicyUuidResponse](../../models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidResponse.md)** +**[PostV1CompaniesCompanyUuidTimeOffPoliciesResponse](../../models/operations/PostV1CompaniesCompanyUuidTimeOffPoliciesResponse.md)** ### Errors @@ -202,22 +205,22 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## getAll +## get -Get all time off policies for a company +Get a time off policy scope: `time_off_policies:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyUuidTimeOffPoliciesHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyUuidTimeOffPoliciesResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1TimeOffPoliciesTimeOffPolicyUuidHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1TimeOffPoliciesTimeOffPolicyUuidResponse; import java.lang.Exception; public class Application { @@ -228,13 +231,13 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - GetV1CompaniesCompanyUuidTimeOffPoliciesResponse res = sdk.timeOffPolicies().getAll() - .xGustoAPIVersion(GetV1CompaniesCompanyUuidTimeOffPoliciesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) - .companyUuid("") + GetV1TimeOffPoliciesTimeOffPolicyUuidResponse res = sdk.timeOffPolicies().get() + .xGustoAPIVersion(GetV1TimeOffPoliciesTimeOffPolicyUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .timeOffPolicyUuid("") .call(); - if (res.timeOffPolicies().isPresent()) { - System.out.println(res.timeOffPolicies().get()); + if (res.timeOffPolicy().isPresent()) { + System.out.println(res.timeOffPolicy().get()); } } } @@ -244,12 +247,12 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyUuidTimeOffPoliciesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1TimeOffPoliciesTimeOffPolicyUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `timeOffPolicyUuid` | *String* | :heavy_check_mark: | The UUID of the time off policy | ### Response -**[GetV1CompaniesCompanyUuidTimeOffPoliciesResponse](../../models/operations/GetV1CompaniesCompanyUuidTimeOffPoliciesResponse.md)** +**[GetV1TimeOffPoliciesTimeOffPolicyUuidResponse](../../models/operations/GetV1TimeOffPoliciesTimeOffPolicyUuidResponse.md)** ### Errors @@ -258,24 +261,22 @@ public class Application { | models/errors/NotFoundErrorObject | 404 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## create +## update -Create a time off policy +Update a time off policy scope: `time_off_policies:write` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; -import com.gusto.embedded_api_v_2025_11_15.models.components.*; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1CompaniesCompanyUuidTimeOffPoliciesHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1CompaniesCompanyUuidTimeOffPoliciesResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.*; import java.lang.Exception; public class Application { @@ -286,13 +287,12 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PostV1CompaniesCompanyUuidTimeOffPoliciesResponse res = sdk.timeOffPolicies().create() - .xGustoAPIVersion(PostV1CompaniesCompanyUuidTimeOffPoliciesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) - .companyUuid("") - .timeOffPolicyRequest(TimeOffPolicyRequest.builder() + PutV1TimeOffPoliciesTimeOffPolicyUuidResponse res = sdk.timeOffPolicies().update() + .xGustoAPIVersion(PutV1TimeOffPoliciesTimeOffPolicyUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .timeOffPolicyUuid("") + .requestBody(PutV1TimeOffPoliciesTimeOffPolicyUuidRequestBody.builder() + .version("56d00c178bc7393b2a206ed6a86afcb4") .name("Vacation Policy") - .policyType(TimeOffPolicyRequestPolicyType.VACATION) - .accrualMethod(AccrualMethod.PER_PAY_PERIOD) .build()) .call(); @@ -307,13 +307,13 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1CompaniesCompanyUuidTimeOffPoliciesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | -| `timeOffPolicyRequest` | [TimeOffPolicyRequest](../../models/components/TimeOffPolicyRequest.md) | :heavy_check_mark: | N/A | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `timeOffPolicyUuid` | *String* | :heavy_check_mark: | The UUID of the time off policy | +| `requestBody` | [PutV1TimeOffPoliciesTimeOffPolicyUuidRequestBody](../../models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidRequestBody.md) | :heavy_check_mark: | N/A | ### Response -**[PostV1CompaniesCompanyUuidTimeOffPoliciesResponse](../../models/operations/PostV1CompaniesCompanyUuidTimeOffPoliciesResponse.md)** +**[PutV1TimeOffPoliciesTimeOffPolicyUuidResponse](../../models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidResponse.md)** ### Errors @@ -323,24 +323,24 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## addEmployees +## deactivate -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 +Deactivate a time off policy scope: `time_off_policies:write` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api_v_2025_11_15.models.operations.*; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateResponse; import java.lang.Exception; -import java.util.List; public class Application { @@ -350,12 +350,9 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesResponse res = sdk.timeOffPolicies().addEmployees() - .xGustoAPIVersion(PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateResponse res = sdk.timeOffPolicies().deactivate() + .xGustoAPIVersion(PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .timeOffPolicyUuid("") - .requestBody(PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesRequestBody.builder() - .employees(List.of()) - .build()) .call(); if (res.timeOffPolicy().isPresent()) { @@ -369,13 +366,12 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `timeOffPolicyUuid` | *String* | :heavy_check_mark: | The UUID of the time off policy | -| `requestBody` | [PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesRequestBody](../../models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesRequestBody.md) | :heavy_check_mark: | N/A | ### Response -**[PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesResponse](../../models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesResponse.md)** +**[PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateResponse](../../models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateResponse.md)** ### Errors @@ -385,15 +381,15 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## removeEmployees +## addEmployees -Remove employees from a time off policy +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 - + ```java package hello.world; @@ -412,10 +408,10 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1TimeOffPoliciesTimeOffPolicyUuidRemoveEmployeesResponse res = sdk.timeOffPolicies().removeEmployees() - .xGustoAPIVersion(PutV1TimeOffPoliciesTimeOffPolicyUuidRemoveEmployeesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesResponse res = sdk.timeOffPolicies().addEmployees() + .xGustoAPIVersion(PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .timeOffPolicyUuid("") - .requestBody(PutV1TimeOffPoliciesTimeOffPolicyUuidRemoveEmployeesRequestBody.builder() + .requestBody(PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesRequestBody.builder() .employees(List.of()) .build()) .call(); @@ -431,13 +427,13 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidRemoveEmployeesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `timeOffPolicyUuid` | *String* | :heavy_check_mark: | The UUID of the time off policy | -| `requestBody` | [PutV1TimeOffPoliciesTimeOffPolicyUuidRemoveEmployeesRequestBody](../../models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidRemoveEmployeesRequestBody.md) | :heavy_check_mark: | N/A | +| `requestBody` | [PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesRequestBody](../../models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesRequestBody.md) | :heavy_check_mark: | N/A | ### Response -**[PutV1TimeOffPoliciesTimeOffPolicyUuidRemoveEmployeesResponse](../../models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidRemoveEmployeesResponse.md)** +**[PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesResponse](../../models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesResponse.md)** ### Errors @@ -447,15 +443,15 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## updateBalance +## removeEmployees -Updates time off hours balances for employees for a time off policy. +Remove employees from a time off policy scope: `time_off_policies:write` ### Example Usage - + ```java package hello.world; @@ -474,10 +470,10 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1TimeOffPoliciesTimeOffPolicyUuidBalanceResponse res = sdk.timeOffPolicies().updateBalance() - .xGustoAPIVersion(PutV1TimeOffPoliciesTimeOffPolicyUuidBalanceHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + PutV1TimeOffPoliciesTimeOffPolicyUuidRemoveEmployeesResponse res = sdk.timeOffPolicies().removeEmployees() + .xGustoAPIVersion(PutV1TimeOffPoliciesTimeOffPolicyUuidRemoveEmployeesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .timeOffPolicyUuid("") - .requestBody(PutV1TimeOffPoliciesTimeOffPolicyUuidBalanceRequestBody.builder() + .requestBody(PutV1TimeOffPoliciesTimeOffPolicyUuidRemoveEmployeesRequestBody.builder() .employees(List.of()) .build()) .call(); @@ -493,13 +489,13 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidBalanceHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidRemoveEmployeesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `timeOffPolicyUuid` | *String* | :heavy_check_mark: | The UUID of the time off policy | -| `requestBody` | [PutV1TimeOffPoliciesTimeOffPolicyUuidBalanceRequestBody](../../models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidBalanceRequestBody.md) | :heavy_check_mark: | N/A | +| `requestBody` | [PutV1TimeOffPoliciesTimeOffPolicyUuidRemoveEmployeesRequestBody](../../models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidRemoveEmployeesRequestBody.md) | :heavy_check_mark: | N/A | ### Response -**[PutV1TimeOffPoliciesTimeOffPolicyUuidBalanceResponse](../../models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidBalanceResponse.md)** +**[PutV1TimeOffPoliciesTimeOffPolicyUuidRemoveEmployeesResponse](../../models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidRemoveEmployeesResponse.md)** ### Errors @@ -509,24 +505,24 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## deactivate +## updateBalance -Deactivate a time off policy +Updates time off hours balances for employees for a time off policy. scope: `time_off_policies:write` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.*; import java.lang.Exception; +import java.util.List; public class Application { @@ -536,9 +532,12 @@ public class Application { .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); - PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateResponse res = sdk.timeOffPolicies().deactivate() - .xGustoAPIVersion(PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + PutV1TimeOffPoliciesTimeOffPolicyUuidBalanceResponse res = sdk.timeOffPolicies().updateBalance() + .xGustoAPIVersion(PutV1TimeOffPoliciesTimeOffPolicyUuidBalanceHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .timeOffPolicyUuid("") + .requestBody(PutV1TimeOffPoliciesTimeOffPolicyUuidBalanceRequestBody.builder() + .employees(List.of()) + .build()) .call(); if (res.timeOffPolicy().isPresent()) { @@ -552,12 +551,13 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidBalanceHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `timeOffPolicyUuid` | *String* | :heavy_check_mark: | The UUID of the time off policy | +| `requestBody` | [PutV1TimeOffPoliciesTimeOffPolicyUuidBalanceRequestBody](../../models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidBalanceRequestBody.md) | :heavy_check_mark: | N/A | ### Response -**[PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateResponse](../../models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateResponse.md)** +**[PutV1TimeOffPoliciesTimeOffPolicyUuidBalanceResponse](../../models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidBalanceResponse.md)** ### Errors diff --git a/gusto_embedded_v_2025_11_15/docs/sdks/webhooks/README.md b/gusto_embedded_v_2025_11_15/docs/sdks/webhooks/README.md index ee2a7c3d0..aff618f6c 100644 --- a/gusto_embedded_v_2025_11_15/docs/sdks/webhooks/README.md +++ b/gusto_embedded_v_2025_11_15/docs/sdks/webhooks/README.md @@ -9,8 +9,8 @@ * [getSubscription](#getsubscription) - Get a webhook subscription * [updateSubscription](#updatesubscription) - Update a webhook subscription * [deleteSubscription](#deletesubscription) - Delete a webhook subscription -* [verify](#verify) - Verify a webhook subscription * [requestVerificationToken](#requestverificationtoken) - Request a verification token for a webhook subscription +* [verify](#verify) - Verify a webhook subscription * [getV1WebhooksHealthCheck](#getv1webhookshealthcheck) - Get the webhooks health status ## listSubscriptions @@ -170,8 +170,8 @@ public class Application { .security(GetV1WebhookSubscriptionUuidSecurity.builder() .systemAccessAuth(System.getenv().getOrDefault("SYSTEM_ACCESS_AUTH", "")) .build()) - .webhookSubscriptionUuid("") .xGustoAPIVersion(GetV1WebhookSubscriptionUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .webhookSubscriptionUuid("") .call(); if (res.webhookSubscription().isPresent()) { @@ -186,8 +186,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `security` | [com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1WebhookSubscriptionUuidSecurity](../../models/operations/GetV1WebhookSubscriptionUuidSecurity.md) | :heavy_check_mark: | The security requirements to use for the request. | -| `webhookSubscriptionUuid` | *String* | :heavy_check_mark: | The webhook subscription UUID. | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1WebhookSubscriptionUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `webhookSubscriptionUuid` | *String* | :heavy_check_mark: | The webhook subscription UUID. | ### Response @@ -234,8 +234,8 @@ public class Application { .security(PutV1WebhookSubscriptionUuidSecurity.builder() .systemAccessAuth(System.getenv().getOrDefault("SYSTEM_ACCESS_AUTH", "")) .build()) - .webhookSubscriptionUuid("") .xGustoAPIVersion(PutV1WebhookSubscriptionUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .webhookSubscriptionUuid("") .requestBody(PutV1WebhookSubscriptionUuidRequestBody.builder() .subscriptionTypes(List.of( PutV1WebhookSubscriptionUuidSubscriptionTypes.PAY_SCHEDULE)) @@ -254,8 +254,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `security` | [com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1WebhookSubscriptionUuidSecurity](../../models/operations/PutV1WebhookSubscriptionUuidSecurity.md) | :heavy_check_mark: | The security requirements to use for the request. | -| `webhookSubscriptionUuid` | *String* | :heavy_check_mark: | The webhook subscription UUID. | | `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1WebhookSubscriptionUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `webhookSubscriptionUuid` | *String* | :heavy_check_mark: | The webhook subscription UUID. | | `requestBody` | [PutV1WebhookSubscriptionUuidRequestBody](../../models/operations/PutV1WebhookSubscriptionUuidRequestBody.md) | :heavy_check_mark: | N/A | ### Response @@ -302,8 +302,8 @@ public class Application { .security(DeleteV1WebhookSubscriptionUuidSecurity.builder() .systemAccessAuth(System.getenv().getOrDefault("SYSTEM_ACCESS_AUTH", "")) .build()) - .webhookSubscriptionUuid("") .xGustoAPIVersion(DeleteV1WebhookSubscriptionUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .webhookSubscriptionUuid("") .call(); // handle response @@ -316,8 +316,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `security` | [com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1WebhookSubscriptionUuidSecurity](../../models/operations/DeleteV1WebhookSubscriptionUuidSecurity.md) | :heavy_check_mark: | The security requirements to use for the request. | -| `webhookSubscriptionUuid` | *String* | :heavy_check_mark: | The webhook subscription UUID. | | `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1WebhookSubscriptionUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `webhookSubscriptionUuid` | *String* | :heavy_check_mark: | The webhook subscription UUID. | ### Response @@ -330,50 +330,44 @@ public class Application { | models/errors/NotFoundErrorObject | 404 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | -## verify - -When a webhook subscription is created, a `verification_token` is POSTed to the registered webhook subscription URL. This `verify` endpoint needs to be called with `verification_token` before webhook events can be sent to the registered webhook URL. +## requestVerificationToken -Use the /v1/webhook_subscriptions/{webhook_subscription_uuid}/request_verification_token API to resend the `verification_token` to the Subscriber. +Request that the webhook subscription `verification_token` be POSTed to the Subscription URL. 📘 System Access Authentication This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) -scope: `webhook_subscriptions:write` +scope: `webhook_subscriptions:read` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; import com.gusto.embedded_api_v_2025_11_15.models.operations.*; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + public static void main(String[] args) throws NotFoundErrorObject, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .build(); - PutV1VerifyWebhookSubscriptionUuidResponse res = sdk.webhooks().verify() - .security(PutV1VerifyWebhookSubscriptionUuidSecurity.builder() + GetV1WebhookSubscriptionVerificationTokenUuidResponse res = sdk.webhooks().requestVerificationToken() + .security(GetV1WebhookSubscriptionVerificationTokenUuidSecurity.builder() .systemAccessAuth(System.getenv().getOrDefault("SYSTEM_ACCESS_AUTH", "")) .build()) + .xGustoAPIVersion(GetV1WebhookSubscriptionVerificationTokenUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .webhookSubscriptionUuid("") - .xGustoAPIVersion(PutV1VerifyWebhookSubscriptionUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) - .requestBody(PutV1VerifyWebhookSubscriptionUuidRequestBody.builder() - .verificationToken("") - .build()) .call(); - if (res.webhookSubscription().isPresent()) { - System.out.println(res.webhookSubscription().get()); + if (res.webhookVerificationTokenResponse().isPresent()) { + System.out.println(res.webhookVerificationTokenResponse().get()); } } } @@ -383,61 +377,65 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `security` | [com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1VerifyWebhookSubscriptionUuidSecurity](../../models/operations/PutV1VerifyWebhookSubscriptionUuidSecurity.md) | :heavy_check_mark: | The security requirements to use for the request. | +| `security` | [com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1WebhookSubscriptionVerificationTokenUuidSecurity](../../models/operations/GetV1WebhookSubscriptionVerificationTokenUuidSecurity.md) | :heavy_check_mark: | The security requirements to use for the request. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1WebhookSubscriptionVerificationTokenUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `webhookSubscriptionUuid` | *String* | :heavy_check_mark: | The webhook subscription UUID. | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1VerifyWebhookSubscriptionUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `requestBody` | [PutV1VerifyWebhookSubscriptionUuidRequestBody](../../models/operations/PutV1VerifyWebhookSubscriptionUuidRequestBody.md) | :heavy_check_mark: | N/A | ### Response -**[PutV1VerifyWebhookSubscriptionUuidResponse](../../models/operations/PutV1VerifyWebhookSubscriptionUuidResponse.md)** +**[GetV1WebhookSubscriptionVerificationTokenUuidResponse](../../models/operations/GetV1WebhookSubscriptionVerificationTokenUuidResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| -------------------------------------- | -------------------------------------- | -------------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/UnprocessableEntityError | 422 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | -## requestVerificationToken +## verify -Request that the webhook subscription `verification_token` be POSTed to the Subscription URL. +When a webhook subscription is created, a `verification_token` is POSTed to the registered webhook subscription URL. This `verify` endpoint needs to be called with `verification_token` before webhook events can be sent to the registered webhook URL. + +Use the /v1/webhook_subscriptions/{webhook_subscription_uuid}/request_verification_token API to resend the `verification_token` to the Subscriber. 📘 System Access Authentication This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) -scope: `webhook_subscriptions:read` +scope: `webhook_subscriptions:write` ### Example Usage - + ```java package hello.world; import com.gusto.embedded_api_v_2025_11_15.GustoEmbedded; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; import com.gusto.embedded_api_v_2025_11_15.models.operations.*; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, Exception { + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .build(); - GetV1WebhookSubscriptionVerificationTokenUuidResponse res = sdk.webhooks().requestVerificationToken() - .security(GetV1WebhookSubscriptionVerificationTokenUuidSecurity.builder() + PutV1VerifyWebhookSubscriptionUuidResponse res = sdk.webhooks().verify() + .security(PutV1VerifyWebhookSubscriptionUuidSecurity.builder() .systemAccessAuth(System.getenv().getOrDefault("SYSTEM_ACCESS_AUTH", "")) .build()) + .xGustoAPIVersion(PutV1VerifyWebhookSubscriptionUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) .webhookSubscriptionUuid("") - .xGustoAPIVersion(GetV1WebhookSubscriptionVerificationTokenUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .requestBody(PutV1VerifyWebhookSubscriptionUuidRequestBody.builder() + .verificationToken("") + .build()) .call(); - if (res.webhookVerificationTokenResponse().isPresent()) { - System.out.println(res.webhookVerificationTokenResponse().get()); + if (res.webhookSubscription().isPresent()) { + System.out.println(res.webhookSubscription().get()); } } } @@ -447,20 +445,22 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `security` | [com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1WebhookSubscriptionVerificationTokenUuidSecurity](../../models/operations/GetV1WebhookSubscriptionVerificationTokenUuidSecurity.md) | :heavy_check_mark: | The security requirements to use for the request. | +| `security` | [com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1VerifyWebhookSubscriptionUuidSecurity](../../models/operations/PutV1VerifyWebhookSubscriptionUuidSecurity.md) | :heavy_check_mark: | The security requirements to use for the request. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1VerifyWebhookSubscriptionUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `webhookSubscriptionUuid` | *String* | :heavy_check_mark: | The webhook subscription UUID. | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1WebhookSubscriptionVerificationTokenUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `requestBody` | [PutV1VerifyWebhookSubscriptionUuidRequestBody](../../models/operations/PutV1VerifyWebhookSubscriptionUuidRequestBody.md) | :heavy_check_mark: | N/A | ### Response -**[GetV1WebhookSubscriptionVerificationTokenUuidResponse](../../models/operations/GetV1WebhookSubscriptionVerificationTokenUuidResponse.md)** +**[PutV1VerifyWebhookSubscriptionUuidResponse](../../models/operations/PutV1VerifyWebhookSubscriptionUuidResponse.md)** ### Errors -| Error Type | Status Code | Content Type | -| --------------------------------- | --------------------------------- | --------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | ## getV1WebhooksHealthCheck diff --git a/gusto_embedded_v_2025_11_15/docs/sdks/wireinrequests/README.md b/gusto_embedded_v_2025_11_15/docs/sdks/wireinrequests/README.md index ff5dd58ae..281007dc4 100644 --- a/gusto_embedded_v_2025_11_15/docs/sdks/wireinrequests/README.md +++ b/gusto_embedded_v_2025_11_15/docs/sdks/wireinrequests/README.md @@ -35,8 +35,8 @@ public class Application { .build(); GetWireInRequestsWireInRequestUuidResponse res = sdk.wireInRequests().get() - .wireInRequestUuid("") .xGustoAPIVersion(GetWireInRequestsWireInRequestUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .wireInRequestUuid("") .call(); if (res.wireInRequest().isPresent()) { @@ -50,8 +50,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `wireInRequestUuid` | *String* | :heavy_check_mark: | The UUID of the Wire In Request | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetWireInRequestsWireInRequestUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `wireInRequestUuid` | *String* | :heavy_check_mark: | The UUID of the Wire In Request | ### Response @@ -93,8 +93,8 @@ public class Application { .build(); PutWireInRequestsWireInRequestUuidResponse res = sdk.wireInRequests().submit() - .wireInRequestUuid("") .xGustoAPIVersion(PutWireInRequestsWireInRequestUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .wireInRequestUuid("") .wireInRequestUpdateRequestBody(WireInRequestUpdateRequestBody.builder() .dateSent("2024-06-10") .bankName("Chase") @@ -114,8 +114,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `wireInRequestUuid` | *String* | :heavy_check_mark: | The UUID of the Wire In Request | | `xGustoAPIVersion` | [Optional\](../../models/operations/PutWireInRequestsWireInRequestUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `wireInRequestUuid` | *String* | :heavy_check_mark: | The UUID of the Wire In Request | | `wireInRequestUpdateRequestBody` | [WireInRequestUpdateRequestBody](../../models/components/WireInRequestUpdateRequestBody.md) | :heavy_check_mark: | N/A | ### Response @@ -156,8 +156,8 @@ public class Application { .build(); GetCompaniesCompanyUuidWireInRequestUuidResponse res = sdk.wireInRequests().list() - .companyUuid("") .xGustoAPIVersion(GetCompaniesCompanyUuidWireInRequestUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15) + .companyUuid("") .call(); if (res.wireInRequestList().isPresent()) { @@ -171,8 +171,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetCompaniesCompanyUuidWireInRequestUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | | `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | diff --git a/gusto_embedded_v_2025_11_15/gradle.properties b/gusto_embedded_v_2025_11_15/gradle.properties index ce86ac24c..5afb2c6c0 100644 --- a/gusto_embedded_v_2025_11_15/gradle.properties +++ b/gusto_embedded_v_2025_11_15/gradle.properties @@ -1,4 +1,4 @@ groupId=com.gusto artifactId=embedded-api-v-2025-11-15 -version=0.0.2 +version=0.1.0 org.gradle.jvmargs=-Xmx4g -XX:MaxMetaspaceSize=1g diff --git a/gusto_embedded_v_2025_11_15/settings.gradle b/gusto_embedded_v_2025_11_15/settings.gradle index 9362b0593..02d3671b1 100644 --- a/gusto_embedded_v_2025_11_15/settings.gradle +++ b/gusto_embedded_v_2025_11_15/settings.gradle @@ -9,12 +9,6 @@ rootProject.name = 'GustoEmbedded' -include 'GustoEmbedded-spring-boot-autoconfigure' -include 'GustoEmbedded-spring-boot-starter' - -project(':GustoEmbedded-spring-boot-autoconfigure').projectDir = file('spring/GustoEmbedded-spring-boot-autoconfigure') -project(':GustoEmbedded-spring-boot-starter').projectDir = file('spring/GustoEmbedded-spring-boot-starter') - // Apply additional settings if the file exists if (file('settings-extra.gradle').exists()) { apply from: 'settings-extra.gradle' diff --git a/gusto_embedded_v_2025_11_15/spring/GustoEmbedded-spring-boot-autoconfigure/build.gradle b/gusto_embedded_v_2025_11_15/spring/GustoEmbedded-spring-boot-autoconfigure/build.gradle deleted file mode 100644 index e50328947..000000000 --- a/gusto_embedded_v_2025_11_15/spring/GustoEmbedded-spring-boot-autoconfigure/build.gradle +++ /dev/null @@ -1,35 +0,0 @@ -description = 'GustoEmbedded Spring Boot Auto Configuration' - -// Publishing configuration overrides -ext { - publishingConfig = [ - groupId: rootProject.group, - artifactId: 'GustoEmbedded-spring-boot-autoconfigure', - version: rootProject.version, - name: 'Gusto Java SDK - Spring Boot Auto Configuration', - description: 'Spring Boot auto-configuration for the Gusto Java SDK.', - ] -} - -dependencies { - api project(':') - implementation 'org.springframework.boot:spring-boot-autoconfigure' - annotationProcessor 'org.springframework.boot:spring-boot-configuration-processor' - testImplementation 'org.springframework.boot:spring-boot-starter-test' - testRuntimeOnly 'org.junit.platform:junit-platform-launcher' -} - -test { - useJUnitPlatform() -} - -jar { - dependsOn 'generatePomFileForMavenPublication' - archiveBaseName = 'GustoEmbedded-spring-boot-autoconfigure' - into("META-INF/maven/com.gusto/GustoEmbedded-spring-boot-autoconfigure") { - from(layout.buildDirectory.file("pom.xml")) { - // Only include if it exists to avoid build ordering issues - duplicatesStrategy = DuplicatesStrategy.INCLUDE - } - } -} \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/spring/GustoEmbedded-spring-boot-autoconfigure/src/main/java/com/gusto/embedded_api_v_2025_11_15/ConditionalOnPropertyPrefix.java b/gusto_embedded_v_2025_11_15/spring/GustoEmbedded-spring-boot-autoconfigure/src/main/java/com/gusto/embedded_api_v_2025_11_15/ConditionalOnPropertyPrefix.java deleted file mode 100644 index fef725dd4..000000000 --- a/gusto_embedded_v_2025_11_15/spring/GustoEmbedded-spring-boot-autoconfigure/src/main/java/com/gusto/embedded_api_v_2025_11_15/ConditionalOnPropertyPrefix.java +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - */ -package com.gusto.embedded_api_v_2025_11_15; - -import org.springframework.context.annotation.Conditional; - -import java.lang.annotation.Documented; -import java.lang.annotation.ElementType; -import java.lang.annotation.Retention; -import java.lang.annotation.RetentionPolicy; -import java.lang.annotation.Target; - -/** - * Conditional annotation that matches when any properties exist under the specified prefix. - * This is useful for conditionally creating beans only when configuration properties - * are present under a specific prefix. - * - *

    Example usage: - *

    - * @Bean
    - * @ConditionalOnPropertyPrefix(prefix = "myapp.security")
    - * public SecuritySource securitySource() {
    - *     // This bean will only be created if properties like myapp.security.* exist
    - * }
    - * 
    - */ -@Target({ ElementType.TYPE, ElementType.METHOD }) -@Retention(RetentionPolicy.RUNTIME) -@Documented -@Conditional(OnPropertyPrefixCondition.class) -public @interface ConditionalOnPropertyPrefix { - - /** - * The property prefix to check for. Properties starting with this prefix - * (followed by a dot) will be considered when determining if the condition matches. - * - * @return the property prefix - */ - String prefix(); -} \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/spring/GustoEmbedded-spring-boot-autoconfigure/src/main/java/com/gusto/embedded_api_v_2025_11_15/GustoEmbeddedAutoConfig.java b/gusto_embedded_v_2025_11_15/spring/GustoEmbedded-spring-boot-autoconfigure/src/main/java/com/gusto/embedded_api_v_2025_11_15/GustoEmbeddedAutoConfig.java deleted file mode 100644 index af10becfb..000000000 --- a/gusto_embedded_v_2025_11_15/spring/GustoEmbedded-spring-boot-autoconfigure/src/main/java/com/gusto/embedded_api_v_2025_11_15/GustoEmbeddedAutoConfig.java +++ /dev/null @@ -1,1448 +0,0 @@ -/* - * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - */ -package com.gusto.embedded_api_v_2025_11_15; - -import org.springframework.boot.autoconfigure.AutoConfiguration; -import org.springframework.boot.autoconfigure.condition.ConditionalOnClass; -import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean; -import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; -import org.springframework.boot.context.properties.EnableConfigurationProperties; -import org.springframework.context.annotation.Bean; -import java.util.concurrent.TimeUnit; - -import com.gusto.embedded_api_v_2025_11_15.utils.BackoffStrategy; -import com.gusto.embedded_api_v_2025_11_15.utils.HTTPClient; -import com.gusto.embedded_api_v_2025_11_15.utils.RetryConfig; -import com.gusto.embedded_api_v_2025_11_15.utils.SpeakeasyHTTPClient; -import java.lang.IllegalStateException; -import java.lang.String; -import java.lang.System; -import java.util.Optional; -import java.util.concurrent.Executors; -import java.util.concurrent.ScheduledExecutorService; -import java.util.function.Consumer; - - -/** - * Spring Boot Auto Configuration for GustoEmbedded SDK - * This configuration class automatically configures the GustoEmbedded SDK - * when Spring Boot detects it on the classpath. - */ -@AutoConfiguration -@ConditionalOnClass(GustoEmbedded.class) -@EnableConfigurationProperties(GustoEmbeddedAutoConfigProperties.class) -public class GustoEmbeddedAutoConfig { - - /** - * Constructor. - */ - public GustoEmbeddedAutoConfig() { - } - - /** - * Creates a RetryConfig bean from properties if retry is enabled. - * - * @param properties the configuration properties - * @return A configured RetryConfig instance - */ - @Bean - @ConditionalOnMissingBean - @ConditionalOnProperty(prefix = "GustoEmbedded.retry-config", name = "strategy") - public RetryConfig retryConfig(GustoEmbeddedAutoConfigProperties properties) { - GustoEmbeddedAutoConfigProperties.RetryConfig retryProps = properties.getRetryConfig(); - - if (RetryConfig.Strategy.BACKOFF.equals(retryProps.getStrategy())) { - GustoEmbeddedAutoConfigProperties.RetryConfig.Backoff backoff = retryProps.getBackoff(); - return RetryConfig.builder() - .backoff( - BackoffStrategy.builder() - .initialInterval(backoff.getInitialInterval().toMillis(), TimeUnit.MILLISECONDS) - .maxInterval(backoff.getMaxInterval().toMillis(), TimeUnit.MILLISECONDS) - .maxElapsedTime(backoff.getMaxElapsedTime().toMillis(), TimeUnit.MILLISECONDS) - .baseFactor(backoff.getBaseFactor()) - .jitterFactor(backoff.getJitterFactor()) - .retryConnectError(backoff.isRetryConnectError()) - .retryReadTimeoutError(backoff.isRetryReadTimeoutError()) - .build() - ) - .build(); - } - - // Default retry config for other strategies - return RetryConfig.builder().build(); - } - /** - * Creates a {@code Consumer} bean for HTTP debug logging if none exists. - * This logger is used by the SpeakeasyHTTPClient for debug output when debug logging is enabled. - * By default, it logs to {@code System.out}, but can be customized by providing your own {@code Consumer} bean. - * - * @return A {@code Consumer} that logs messages to {@code System.out} - */ - @Bean - @ConditionalOnMissingBean - public Consumer httpLogger() { - return System.out::println; - } - /** - * Creates an HTTPClient bean if none exists. - * - * @param properties the configuration properties - * @param httpLogger the logger for HTTP debug output - * @return A configured HTTPClient instance - */ - @Bean - @ConditionalOnMissingBean - public HTTPClient httpClient(GustoEmbeddedAutoConfigProperties properties, Consumer httpLogger) { - GustoEmbeddedAutoConfigProperties.HttpClient httpClientProps = properties.getHttpClient(); - - // Configure the static logger - SpeakeasyHTTPClient.setLogger(httpLogger); - - if (httpClientProps != null) { - // Configure debug logging - SpeakeasyHTTPClient.setDebugLogging(httpClientProps.isEnableDebugLogging()); - - // Configure redacted headers - if (httpClientProps.getRedactedHeaders() != null && !httpClientProps.getRedactedHeaders().isEmpty()) { - SpeakeasyHTTPClient.setRedactedHeaders(httpClientProps.getRedactedHeaders()); - } - } - - return new SpeakeasyHTTPClient(); - } - /** - * Creates a SecuritySource bean if none exists and security properties are configured. - * - * @param properties the configuration properties - * @return A configured SecuritySource instance - */ - @Bean - @ConditionalOnMissingBean - @ConditionalOnPropertyPrefix(prefix = "GustoEmbedded.security") - public SecuritySource securitySource(GustoEmbeddedAutoConfigProperties properties) {GustoEmbeddedAutoConfigProperties.Security securityProps = properties.getSecurity(); - com.gusto.embedded_api_v_2025_11_15.models.components.Security.Builder securityBuilder = com.gusto.embedded_api_v_2025_11_15.models.components.Security.builder(); - boolean hasAnySecurityConfiguration = false; - // Build CompanyAccessAuth security from direct properties (primitive value) - if (securityProps.getCompanyAccessAuth() != null) { - securityBuilder.companyAccessAuth(securityProps.getCompanyAccessAuth()); - hasAnySecurityConfiguration = true; - } - - if (!hasAnySecurityConfiguration) { - throw new IllegalStateException("Security configuration is present but no security options are configured. " + - "Please configure at least one security option in your application properties."); - } - - return SecuritySource.of(securityBuilder.build()); - } - - /** - * Creates the SDKConfiguration bean as the single source of truth for all SDK configuration. - * - * @param properties the configuration properties - * @param httpClient the HTTP client bean - * @param hooks the hooks bean - * @param asyncHooks the async hooks bean - * @param securitySource the security source bean (optional) - * @param retryConfig the retry config bean (optional) - * @return A configured SDKConfiguration instance - */ - @Bean - @ConditionalOnMissingBean - public SDKConfiguration sdkConfiguration( - GustoEmbeddedAutoConfigProperties properties, - HTTPClient httpClient, - com.gusto.embedded_api_v_2025_11_15.utils.Hooks hooks, - com.gusto.embedded_api_v_2025_11_15.utils.AsyncHooks asyncHooks, - SecuritySource securitySource, - Optional retryConfig) { - - SDKConfiguration sdkConfiguration = new SDKConfiguration(); - - sdkConfiguration.setClient(httpClient); - - sdkConfiguration.setHooks(hooks); - sdkConfiguration.setAsyncHooks(asyncHooks); - sdkConfiguration.setSecuritySource(securitySource); - - if (properties.getServerUrl() != null) { - sdkConfiguration.setServerUrl(properties.getServerUrl()); - } - if (properties.getServer() != null) { - sdkConfiguration.setServer(properties.getServer()); - } - - sdkConfiguration.setRetryConfig(retryConfig); - - return sdkConfiguration; - } - - /** - * Creates the main SDK bean using the configured SDKConfiguration. - * - * @param sdkConfiguration the configured SDKConfiguration bean - * @return A configured GustoEmbedded instance - */ - @Bean - @ConditionalOnMissingBean - public GustoEmbedded gustoEmbedded(SDKConfiguration sdkConfiguration) { - return new GustoEmbedded(sdkConfiguration); - } - - /** - * Creates an AsyncHooks bean if none exists. - * - * @return A configured AsyncHooks instance - */ - @Bean - @ConditionalOnMissingBean - public com.gusto.embedded_api_v_2025_11_15.utils.AsyncHooks asyncHooks() { - return new com.gusto.embedded_api_v_2025_11_15.utils.AsyncHooks(); - } - - /** - * Creates a ScheduledExecutorService for async retry operations if none exists. - * - * @return A configured ScheduledExecutorService instance - */ - @Bean - @ConditionalOnMissingBean - public ScheduledExecutorService retryScheduler() { - return Executors.newSingleThreadScheduledExecutor(); - } - - /** - * Creates a Hooks configuration bean if none exists. - * - * @return A configured Hooks instance - */ - @Bean - @ConditionalOnMissingBean - public com.gusto.embedded_api_v_2025_11_15.utils.Hooks hooks() { - return new com.gusto.embedded_api_v_2025_11_15.utils.Hooks(); - } - /** - * Creates a Introspection sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured Introspection instance - */ - @Bean - @ConditionalOnMissingBean - public Introspection introspection(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.introspection(); - } - /** - * Creates a Companies sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured Companies instance - */ - @Bean - @ConditionalOnMissingBean - public Companies companies(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.companies(); - } - /** - * Creates a Invoices sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured Invoices instance - */ - @Bean - @ConditionalOnMissingBean - public Invoices invoices(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.invoices(); - } - /** - * Creates a CompanyAttachments sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured CompanyAttachments instance - */ - @Bean - @ConditionalOnMissingBean - public CompanyAttachments companyAttachments(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.companyAttachments(); - } - /** - * Creates a CompanyAttachment sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured CompanyAttachment instance - */ - @Bean - @ConditionalOnMissingBean - public CompanyAttachment companyAttachment(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.companyAttachment(); - } - /** - * Creates a FederalTaxDetails sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured FederalTaxDetails instance - */ - @Bean - @ConditionalOnMissingBean - public FederalTaxDetails federalTaxDetails(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.federalTaxDetails(); - } - /** - * Creates a IndustrySelection sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured IndustrySelection instance - */ - @Bean - @ConditionalOnMissingBean - public IndustrySelection industrySelection(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.industrySelection(); - } - /** - * Creates a Signatories sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured Signatories instance - */ - @Bean - @ConditionalOnMissingBean - public Signatories signatories(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.signatories(); - } - /** - * Creates a Flows sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured Flows instance - */ - @Bean - @ConditionalOnMissingBean - public Flows flows(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.flows(); - } - /** - * Creates a Locations sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured Locations instance - */ - @Bean - @ConditionalOnMissingBean - public Locations locations(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.locations(); - } - /** - * Creates a BankAccounts sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured BankAccounts instance - */ - @Bean - @ConditionalOnMissingBean - public BankAccounts bankAccounts(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.bankAccounts(); - } - /** - * Creates a ExternalPayrolls sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured ExternalPayrolls instance - */ - @Bean - @ConditionalOnMissingBean - public ExternalPayrolls externalPayrolls(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.externalPayrolls(); - } - /** - * Creates a PaymentConfigs sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured PaymentConfigs instance - */ - @Bean - @ConditionalOnMissingBean - public PaymentConfigs paymentConfigs(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.paymentConfigs(); - } - /** - * Creates a PaySchedules sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured PaySchedules instance - */ - @Bean - @ConditionalOnMissingBean - public PaySchedules paySchedules(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.paySchedules(); - } - /** - * Creates a Employees sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured Employees instance - */ - @Bean - @ConditionalOnMissingBean - public Employees employees(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.employees(); - } - /** - * Creates a HistoricalEmployees sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured HistoricalEmployees instance - */ - @Bean - @ConditionalOnMissingBean - public HistoricalEmployees historicalEmployees(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.historicalEmployees(); - } - /** - * Creates a Departments sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured Departments instance - */ - @Bean - @ConditionalOnMissingBean - public Departments departments(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.departments(); - } - /** - * Creates a EmployeeEmployments sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured EmployeeEmployments instance - */ - @Bean - @ConditionalOnMissingBean - public EmployeeEmployments employeeEmployments(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.employeeEmployments(); - } - /** - * Creates a EmployeeAddresses sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured EmployeeAddresses instance - */ - @Bean - @ConditionalOnMissingBean - public EmployeeAddresses employeeAddresses(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.employeeAddresses(); - } - /** - * Creates a EmployeeTaxSetup sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured EmployeeTaxSetup instance - */ - @Bean - @ConditionalOnMissingBean - public EmployeeTaxSetup employeeTaxSetup(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.employeeTaxSetup(); - } - /** - * Creates a EmployeePaymentMethods sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured EmployeePaymentMethods instance - */ - @Bean - @ConditionalOnMissingBean - public EmployeePaymentMethods employeePaymentMethods(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.employeePaymentMethods(); - } - /** - * Creates a EmployeePaymentMethod sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured EmployeePaymentMethod instance - */ - @Bean - @ConditionalOnMissingBean - public EmployeePaymentMethod employeePaymentMethod(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.employeePaymentMethod(); - } - /** - * Creates a JobsAndCompensations sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured JobsAndCompensations instance - */ - @Bean - @ConditionalOnMissingBean - public JobsAndCompensations jobsAndCompensations(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.jobsAndCompensations(); - } - /** - * Creates a EarningTypes sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured EarningTypes instance - */ - @Bean - @ConditionalOnMissingBean - public EarningTypes earningTypes(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.earningTypes(); - } - /** - * Creates a Contractors sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured Contractors instance - */ - @Bean - @ConditionalOnMissingBean - public Contractors contractors(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.contractors(); - } - /** - * Creates a ContractorPaymentMethod sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured ContractorPaymentMethod instance - */ - @Bean - @ConditionalOnMissingBean - public ContractorPaymentMethod contractorPaymentMethod(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.contractorPaymentMethod(); - } - /** - * Creates a ContractorPaymentMethods sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured ContractorPaymentMethods instance - */ - @Bean - @ConditionalOnMissingBean - public ContractorPaymentMethods contractorPaymentMethods(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.contractorPaymentMethods(); - } - /** - * Creates a Webhooks sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured Webhooks instance - */ - @Bean - @ConditionalOnMissingBean - public Webhooks webhooks(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.webhooks(); - } - /** - * Creates a ContractorForms sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured ContractorForms instance - */ - @Bean - @ConditionalOnMissingBean - public ContractorForms contractorForms(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.contractorForms(); - } - /** - * Creates a ContractorDocuments sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured ContractorDocuments instance - */ - @Bean - @ConditionalOnMissingBean - public ContractorDocuments contractorDocuments(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.contractorDocuments(); - } - /** - * Creates a EmployeeForms sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured EmployeeForms instance - */ - @Bean - @ConditionalOnMissingBean - public EmployeeForms employeeForms(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.employeeForms(); - } - /** - * Creates a Payrolls sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured Payrolls instance - */ - @Bean - @ConditionalOnMissingBean - public Payrolls payrolls(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.payrolls(); - } - /** - * Creates a TimeOffPolicies sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured TimeOffPolicies instance - */ - @Bean - @ConditionalOnMissingBean - public TimeOffPolicies timeOffPolicies(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.timeOffPolicies(); - } - /** - * Creates a ContractorPayments sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured ContractorPayments instance - */ - @Bean - @ConditionalOnMissingBean - public ContractorPayments contractorPayments(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.contractorPayments(); - } - /** - * Creates a ContractorPaymentGroups sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured ContractorPaymentGroups instance - */ - @Bean - @ConditionalOnMissingBean - public ContractorPaymentGroups contractorPaymentGroups(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.contractorPaymentGroups(); - } - /** - * Creates a CompanyForms sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured CompanyForms instance - */ - @Bean - @ConditionalOnMissingBean - public CompanyForms companyForms(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.companyForms(); - } - /** - * Creates a GeneratedDocuments sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured GeneratedDocuments instance - */ - @Bean - @ConditionalOnMissingBean - public GeneratedDocuments generatedDocuments(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.generatedDocuments(); - } - /** - * Creates a Reports sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured Reports instance - */ - @Bean - @ConditionalOnMissingBean - public Reports reports(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.reports(); - } - /** - * Creates a CompanyBenefits sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured CompanyBenefits instance - */ - @Bean - @ConditionalOnMissingBean - public CompanyBenefits companyBenefits(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.companyBenefits(); - } - /** - * Creates a EmployeeBenefits sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured EmployeeBenefits instance - */ - @Bean - @ConditionalOnMissingBean - public EmployeeBenefits employeeBenefits(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.employeeBenefits(); - } - /** - * Creates a Garnishments sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured Garnishments instance - */ - @Bean - @ConditionalOnMissingBean - public Garnishments garnishments(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.garnishments(); - } - /** - * Creates a I9Verification sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured I9Verification instance - */ - @Bean - @ConditionalOnMissingBean - public I9Verification i9Verification(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.i9Verification(); - } - /** - * Creates a TaxRequirements sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured TaxRequirements instance - */ - @Bean - @ConditionalOnMissingBean - public TaxRequirements taxRequirements(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.taxRequirements(); - } - /** - * Creates a HolidayPayPolicies sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured HolidayPayPolicies instance - */ - @Bean - @ConditionalOnMissingBean - public HolidayPayPolicies holidayPayPolicies(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.holidayPayPolicies(); - } - /** - * Creates a Notifications sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured Notifications instance - */ - @Bean - @ConditionalOnMissingBean - public Notifications notifications(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.notifications(); - } - /** - * Creates a Events sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured Events instance - */ - @Bean - @ConditionalOnMissingBean - public Events events(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.events(); - } - /** - * Creates a InformationRequests sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured InformationRequests instance - */ - @Bean - @ConditionalOnMissingBean - public InformationRequests informationRequests(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.informationRequests(); - } - /** - * Creates a RecoveryCases sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured RecoveryCases instance - */ - @Bean - @ConditionalOnMissingBean - public RecoveryCases recoveryCases(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.recoveryCases(); - } - /** - * Creates a AchTransactions sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured AchTransactions instance - */ - @Bean - @ConditionalOnMissingBean - public AchTransactions achTransactions(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.achTransactions(); - } - /** - * Creates a WireInRequests sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured WireInRequests instance - */ - @Bean - @ConditionalOnMissingBean - public WireInRequests wireInRequests(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.wireInRequests(); - } - /** - * Creates a SalaryEstimates sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured SalaryEstimates instance - */ - @Bean - @ConditionalOnMissingBean - public SalaryEstimates salaryEstimates(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.salaryEstimates(); - } - /** - * Creates a Reimbursements sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured Reimbursements instance - */ - @Bean - @ConditionalOnMissingBean - public Reimbursements reimbursements(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.reimbursements(); - } - /** - * Creates a PeopleBatches sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured PeopleBatches instance - */ - @Bean - @ConditionalOnMissingBean - public PeopleBatches peopleBatches(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.peopleBatches(); - } - /** - * Creates a TimeOffRequests sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured TimeOffRequests instance - */ - @Bean - @ConditionalOnMissingBean - public TimeOffRequests timeOffRequests(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.timeOffRequests(); - } - /** - * Creates a PayrollDigests sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured PayrollDigests instance - */ - @Bean - @ConditionalOnMissingBean - public PayrollDigests payrollDigests(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.payrollDigests(); - } - - /** - * Creates the async SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @param sdkConfiguration the configured SDKConfiguration bean - * @return A configured AsyncGustoEmbedded instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncGustoEmbedded asyncGustoEmbedded(GustoEmbedded gustoEmbedded, SDKConfiguration sdkConfiguration) { - return new AsyncGustoEmbedded(gustoEmbedded, sdkConfiguration); - } - /** - * Creates an AsyncIntrospection sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncIntrospection instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncIntrospection asyncIntrospection(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.introspection(); - } - /** - * Creates an AsyncCompanies sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncCompanies instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncCompanies asyncCompanies(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.companies(); - } - /** - * Creates an AsyncInvoices sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncInvoices instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncInvoices asyncInvoices(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.invoices(); - } - /** - * Creates an AsyncCompanyAttachments sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncCompanyAttachments instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncCompanyAttachments asyncCompanyAttachments(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.companyAttachments(); - } - /** - * Creates an AsyncCompanyAttachment sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncCompanyAttachment instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncCompanyAttachment asyncCompanyAttachment(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.companyAttachment(); - } - /** - * Creates an AsyncFederalTaxDetails sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncFederalTaxDetails instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncFederalTaxDetails asyncFederalTaxDetails(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.federalTaxDetails(); - } - /** - * Creates an AsyncIndustrySelection sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncIndustrySelection instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncIndustrySelection asyncIndustrySelection(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.industrySelection(); - } - /** - * Creates an AsyncSignatories sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncSignatories instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncSignatories asyncSignatories(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.signatories(); - } - /** - * Creates an AsyncFlows sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncFlows instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncFlows asyncFlows(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.flows(); - } - /** - * Creates an AsyncLocations sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncLocations instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncLocations asyncLocations(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.locations(); - } - /** - * Creates an AsyncBankAccounts sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncBankAccounts instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncBankAccounts asyncBankAccounts(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.bankAccounts(); - } - /** - * Creates an AsyncExternalPayrolls sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncExternalPayrolls instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncExternalPayrolls asyncExternalPayrolls(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.externalPayrolls(); - } - /** - * Creates an AsyncPaymentConfigs sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncPaymentConfigs instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncPaymentConfigs asyncPaymentConfigs(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.paymentConfigs(); - } - /** - * Creates an AsyncPaySchedules sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncPaySchedules instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncPaySchedules asyncPaySchedules(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.paySchedules(); - } - /** - * Creates an AsyncEmployees sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncEmployees instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncEmployees asyncEmployees(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.employees(); - } - /** - * Creates an AsyncHistoricalEmployees sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncHistoricalEmployees instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncHistoricalEmployees asyncHistoricalEmployees(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.historicalEmployees(); - } - /** - * Creates an AsyncDepartments sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncDepartments instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncDepartments asyncDepartments(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.departments(); - } - /** - * Creates an AsyncEmployeeEmployments sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncEmployeeEmployments instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncEmployeeEmployments asyncEmployeeEmployments(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.employeeEmployments(); - } - /** - * Creates an AsyncEmployeeAddresses sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncEmployeeAddresses instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncEmployeeAddresses asyncEmployeeAddresses(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.employeeAddresses(); - } - /** - * Creates an AsyncEmployeeTaxSetup sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncEmployeeTaxSetup instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncEmployeeTaxSetup asyncEmployeeTaxSetup(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.employeeTaxSetup(); - } - /** - * Creates an AsyncEmployeePaymentMethods sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncEmployeePaymentMethods instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncEmployeePaymentMethods asyncEmployeePaymentMethods(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.employeePaymentMethods(); - } - /** - * Creates an AsyncEmployeePaymentMethod sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncEmployeePaymentMethod instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncEmployeePaymentMethod asyncEmployeePaymentMethod(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.employeePaymentMethod(); - } - /** - * Creates an AsyncJobsAndCompensations sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncJobsAndCompensations instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncJobsAndCompensations asyncJobsAndCompensations(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.jobsAndCompensations(); - } - /** - * Creates an AsyncEarningTypes sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncEarningTypes instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncEarningTypes asyncEarningTypes(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.earningTypes(); - } - /** - * Creates an AsyncContractors sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncContractors instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncContractors asyncContractors(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.contractors(); - } - /** - * Creates an AsyncContractorPaymentMethod sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncContractorPaymentMethod instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncContractorPaymentMethod asyncContractorPaymentMethod(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.contractorPaymentMethod(); - } - /** - * Creates an AsyncContractorPaymentMethods sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncContractorPaymentMethods instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncContractorPaymentMethods asyncContractorPaymentMethods(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.contractorPaymentMethods(); - } - /** - * Creates an AsyncWebhooks sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncWebhooks instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncWebhooks asyncWebhooks(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.webhooks(); - } - /** - * Creates an AsyncContractorForms sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncContractorForms instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncContractorForms asyncContractorForms(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.contractorForms(); - } - /** - * Creates an AsyncContractorDocuments sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncContractorDocuments instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncContractorDocuments asyncContractorDocuments(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.contractorDocuments(); - } - /** - * Creates an AsyncEmployeeForms sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncEmployeeForms instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncEmployeeForms asyncEmployeeForms(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.employeeForms(); - } - /** - * Creates an AsyncPayrolls sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncPayrolls instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncPayrolls asyncPayrolls(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.payrolls(); - } - /** - * Creates an AsyncTimeOffPolicies sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncTimeOffPolicies instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncTimeOffPolicies asyncTimeOffPolicies(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.timeOffPolicies(); - } - /** - * Creates an AsyncContractorPayments sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncContractorPayments instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncContractorPayments asyncContractorPayments(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.contractorPayments(); - } - /** - * Creates an AsyncContractorPaymentGroups sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncContractorPaymentGroups instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncContractorPaymentGroups asyncContractorPaymentGroups(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.contractorPaymentGroups(); - } - /** - * Creates an AsyncCompanyForms sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncCompanyForms instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncCompanyForms asyncCompanyForms(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.companyForms(); - } - /** - * Creates an AsyncGeneratedDocuments sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncGeneratedDocuments instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncGeneratedDocuments asyncGeneratedDocuments(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.generatedDocuments(); - } - /** - * Creates an AsyncReports sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncReports instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncReports asyncReports(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.reports(); - } - /** - * Creates an AsyncCompanyBenefits sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncCompanyBenefits instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncCompanyBenefits asyncCompanyBenefits(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.companyBenefits(); - } - /** - * Creates an AsyncEmployeeBenefits sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncEmployeeBenefits instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncEmployeeBenefits asyncEmployeeBenefits(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.employeeBenefits(); - } - /** - * Creates an AsyncGarnishments sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncGarnishments instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncGarnishments asyncGarnishments(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.garnishments(); - } - /** - * Creates an AsyncI9Verification sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncI9Verification instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncI9Verification asyncI9Verification(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.i9Verification(); - } - /** - * Creates an AsyncTaxRequirements sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncTaxRequirements instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncTaxRequirements asyncTaxRequirements(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.taxRequirements(); - } - /** - * Creates an AsyncHolidayPayPolicies sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncHolidayPayPolicies instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncHolidayPayPolicies asyncHolidayPayPolicies(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.holidayPayPolicies(); - } - /** - * Creates an AsyncNotifications sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncNotifications instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncNotifications asyncNotifications(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.notifications(); - } - /** - * Creates an AsyncEvents sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncEvents instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncEvents asyncEvents(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.events(); - } - /** - * Creates an AsyncInformationRequests sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncInformationRequests instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncInformationRequests asyncInformationRequests(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.informationRequests(); - } - /** - * Creates an AsyncRecoveryCases sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncRecoveryCases instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncRecoveryCases asyncRecoveryCases(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.recoveryCases(); - } - /** - * Creates an AsyncAchTransactions sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncAchTransactions instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncAchTransactions asyncAchTransactions(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.achTransactions(); - } - /** - * Creates an AsyncWireInRequests sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncWireInRequests instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncWireInRequests asyncWireInRequests(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.wireInRequests(); - } - /** - * Creates an AsyncSalaryEstimates sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncSalaryEstimates instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncSalaryEstimates asyncSalaryEstimates(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.salaryEstimates(); - } - /** - * Creates an AsyncReimbursements sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncReimbursements instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncReimbursements asyncReimbursements(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.reimbursements(); - } - /** - * Creates an AsyncPeopleBatches sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncPeopleBatches instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncPeopleBatches asyncPeopleBatches(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.peopleBatches(); - } - /** - * Creates an AsyncTimeOffRequests sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncTimeOffRequests instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncTimeOffRequests asyncTimeOffRequests(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.timeOffRequests(); - } - /** - * Creates an AsyncPayrollDigests sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncPayrollDigests instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncPayrollDigests asyncPayrollDigests(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.payrollDigests(); - } -} \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/spring/GustoEmbedded-spring-boot-autoconfigure/src/main/java/com/gusto/embedded_api_v_2025_11_15/GustoEmbeddedAutoConfigProperties.java b/gusto_embedded_v_2025_11_15/spring/GustoEmbedded-spring-boot-autoconfigure/src/main/java/com/gusto/embedded_api_v_2025_11_15/GustoEmbeddedAutoConfigProperties.java deleted file mode 100644 index dcdcd4fce..000000000 --- a/gusto_embedded_v_2025_11_15/spring/GustoEmbedded-spring-boot-autoconfigure/src/main/java/com/gusto/embedded_api_v_2025_11_15/GustoEmbeddedAutoConfigProperties.java +++ /dev/null @@ -1,460 +0,0 @@ -/* - * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - */ -package com.gusto.embedded_api_v_2025_11_15; - -import org.springframework.boot.context.properties.ConfigurationProperties; - -import java.time.Duration; -import java.lang.String; -import java.util.Collection; -import java.util.Set; - - -/** - * Spring Boot Configuration Properties for GustoEmbedded SDK - */ -@ConfigurationProperties(prefix = "GustoEmbedded") -public class GustoEmbeddedAutoConfigProperties { - - /** - * Constructor. - */ - public GustoEmbeddedAutoConfigProperties() { - } - - /** - * The base URL for the API server. If not specified, the SDK will use the default server URL. - */ - private String serverUrl; - - /** - * Configuration for retry behavior when API calls fail due to transient errors. - */ - private RetryConfig retryConfig = new RetryConfig(); - - /** - * HTTP client configuration for API requests. - */ - private HttpClient httpClient = new HttpClient(); - /** - * The name of the server to use from the available server configurations defined in the OpenAPI specification. - */ - private String server; - /** - * Security configuration for API authentication. - */ - private Security security = new Security(); - - /** - * Gets the base URL for the API server. - * - * @return the base URL for the API server - */ - public String getServerUrl() { - return serverUrl; - } - - /** - * Sets the base URL for the API server. - * - * @param serverUrl the base URL for the API server - */ - public void setServerUrl(String serverUrl) { - this.serverUrl = serverUrl; - } - - /** - * Gets the retry configuration for API calls that fail due to transient errors. - * - * @return the retry configuration - */ - public RetryConfig getRetryConfig() { - return retryConfig; - } - - /** - * Sets the retry configuration for API calls that fail due to transient errors. - * - * @param retryConfig the retry configuration to use - */ - public void setRetryConfig(RetryConfig retryConfig) { - this.retryConfig = retryConfig; - } - - /** - * Gets the HTTP client configuration for API requests. - * - * @return the HTTP client configuration - */ - public HttpClient getHttpClient() { - return httpClient; - } - - /** - * Sets the HTTP client configuration for API requests. - * - * @param httpClient the HTTP client configuration to use - */ - public void setHttpClient(HttpClient httpClient) { - this.httpClient = httpClient; - } - /** - * Gets the name of the server to use from the available server configurations. - * - * @return the server name - */ - public String getServer() { - return server; - } - - /** - * Sets the name of the server to use from the available server configurations. - * - * @param server the server name to use - */ - public void setServer(String server) { - this.server = server; - } - /** - * Gets the security configuration for API authentication. - * - * @return the security configuration - */ - public Security getSecurity() { - return security; - } - - /** - * Sets the security configuration for API authentication. - * - * @param security the security configuration to use - */ - public void setSecurity(Security security) { - this.security = security; - } - - /** - * Retry configuration properties - */ - public static class RetryConfig { - - /** - * Constructor. - */ - public RetryConfig() { - } - - /** - * The retry strategy to use for failed requests. - */ - private com.gusto.embedded_api_v_2025_11_15.utils.RetryConfig.Strategy strategy; - - /** - * Configuration for exponential backoff retry strategy. Only used when strategy is set to BACKOFF. - */ - private Backoff backoff = new Backoff(); - - /** - * Gets the retry strategy to use for failed requests. - * - * @return the retry strategy - */ - public com.gusto.embedded_api_v_2025_11_15.utils.RetryConfig.Strategy getStrategy() { - return strategy; - } - - /** - * Sets the retry strategy to use for failed requests. - * - * @param strategy the retry strategy to use - */ - public void setStrategy(com.gusto.embedded_api_v_2025_11_15.utils.RetryConfig.Strategy strategy) { - this.strategy = strategy; - } - - /** - * Gets the backoff configuration for exponential backoff retry strategy. - * - * @return the backoff configuration - */ - public Backoff getBackoff() { - return backoff; - } - - /** - * Sets the backoff configuration for exponential backoff retry strategy. - * - * @param backoff the backoff configuration to use - */ - public void setBackoff(Backoff backoff) { - this.backoff = backoff; - } - - /** - * Backoff retry configuration matching BackoffStrategy fields - */ - public static class Backoff { - - /** - * Constructor. - */ - public Backoff() { - } - - /** - * The initial delay before the first retry attempt. Supports duration formats like "500ms", "1s", "2m". - */ - private Duration initialInterval = Duration.ofMillis(500); - - /** - * The maximum delay between retry attempts. The backoff will not exceed this value. - */ - private Duration maxInterval = Duration.ofSeconds(60); - - /** - * The maximum total time to spend on all retry attempts. Retries will stop after this duration. - */ - private Duration maxElapsedTime = Duration.ofHours(1); - - /** - * The multiplier for exponential backoff. Each retry delay is multiplied by this factor (e.g., 1.5 means 50% increase). - */ - private double baseFactor = 1.5; - - /** - * Random jitter factor to avoid thundering herd problems. Value between 0.0 (no jitter) and 1.0 (full jitter). - */ - private double jitterFactor = 0.5; - - /** - * Whether to retry requests that fail due to connection errors (e.g., connection refused, timeout). - */ - private boolean retryConnectError = false; - - /** - * Whether to retry requests that fail due to read timeout errors (server doesn't respond within timeout). - */ - private boolean retryReadTimeoutError = false; - - /** - * Gets the initial delay before the first retry attempt. - * - * @return the initial delay duration - */ - public Duration getInitialInterval() { - return initialInterval; - } - - /** - * Sets the initial delay before the first retry attempt. - * - * @param initialInterval the initial delay duration - */ - public void setInitialInterval(Duration initialInterval) { - this.initialInterval = initialInterval; - } - - /** - * Gets the maximum delay between retry attempts. - * - * @return the maximum delay duration - */ - public Duration getMaxInterval() { - return maxInterval; - } - - /** - * Sets the maximum delay between retry attempts. - * - * @param maxInterval the maximum delay duration - */ - public void setMaxInterval(Duration maxInterval) { - this.maxInterval = maxInterval; - } - - /** - * Gets the maximum total time to spend on all retry attempts. - * - * @return the maximum elapsed time duration - */ - public Duration getMaxElapsedTime() { - return maxElapsedTime; - } - - /** - * Sets the maximum total time to spend on all retry attempts. - * - * @param maxElapsedTime the maximum elapsed time duration - */ - public void setMaxElapsedTime(Duration maxElapsedTime) { - this.maxElapsedTime = maxElapsedTime; - } - - /** - * Gets the multiplier for exponential backoff. - * - * @return the base factor for exponential backoff - */ - public double getBaseFactor() { - return baseFactor; - } - - /** - * Sets the multiplier for exponential backoff. - * - * @param baseFactor the base factor for exponential backoff - */ - public void setBaseFactor(double baseFactor) { - this.baseFactor = baseFactor; - } - - /** - * Gets the random jitter factor to avoid thundering herd problems. - * - * @return the jitter factor (0.0 to 1.0) - */ - public double getJitterFactor() { - return jitterFactor; - } - - /** - * Sets the random jitter factor to avoid thundering herd problems. - * - * @param jitterFactor the jitter factor (0.0 to 1.0) - */ - public void setJitterFactor(double jitterFactor) { - this.jitterFactor = jitterFactor; - } - - /** - * Gets whether to retry requests that fail due to connection errors. - * - * @return true if connection errors should be retried, false otherwise - */ - public boolean isRetryConnectError() { - return retryConnectError; - } - - /** - * Sets whether to retry requests that fail due to connection errors. - * - * @param retryConnectError true to retry connection errors, false otherwise - */ - public void setRetryConnectError(boolean retryConnectError) { - this.retryConnectError = retryConnectError; - } - - /** - * Gets whether to retry requests that fail due to read timeout errors. - * - * @return true if read timeout errors should be retried, false otherwise - */ - public boolean isRetryReadTimeoutError() { - return retryReadTimeoutError; - } - - /** - * Sets whether to retry requests that fail due to read timeout errors. - * - * @param retryReadTimeoutError true to retry read timeout errors, false otherwise - */ - public void setRetryReadTimeoutError(boolean retryReadTimeoutError) { - this.retryReadTimeoutError = retryReadTimeoutError; - } - } - } - - /** - * HTTP client configuration properties - */ - public static class HttpClient { - - /** - * Constructor. - */ - public HttpClient() { - } - - /** - * Whether to enable debug logging for HTTP requests and responses, including JSON body content. - */ - private boolean enableDebugLogging = false; - - /** - * Collection of header names (case-insensitive) whose values will be redacted in debug logs. - * By default, Authorization and X-API-KEY headers are redacted for security. - */ - private Collection redactedHeaders = Set.of("Authorization", "X-API-KEY"); - - /** - * Gets whether debug logging is enabled for HTTP requests and responses. - * - * @return true if debug logging is enabled, false otherwise - */ - public boolean isEnableDebugLogging() { - return enableDebugLogging; - } - - /** - * Sets whether to enable debug logging for HTTP requests and responses. - * - * @param enableDebugLogging true to enable debug logging, false otherwise - */ - public void setEnableDebugLogging(boolean enableDebugLogging) { - this.enableDebugLogging = enableDebugLogging; - } - - /** - * Gets the collection of header names whose values will be redacted in debug logs. - * - * @return the collection of header names to redact - */ - public Collection getRedactedHeaders() { - return redactedHeaders; - } - - /** - * Sets the collection of header names whose values will be redacted in debug logs. - * - * @param redactedHeaders the collection of header names to redact - */ - public void setRedactedHeaders(Collection redactedHeaders) { - this.redactedHeaders = redactedHeaders; - } - } - - /** - * Security configuration properties - */ - public static class Security { - - /** - * Constructor. - */ - public Security() { - } - /** - * CompanyAccessAuth for authentication. - */ - private String companyAccessAuth; - - /** - * Gets the CompanyAccessAuth value. - * - * @return the CompanyAccessAuth value - */ - public String getCompanyAccessAuth() { - return companyAccessAuth; - } - - /** - * Sets the CompanyAccessAuth value. - * - * @param companyAccessAuth the CompanyAccessAuth value to use - */ - public void setCompanyAccessAuth(String companyAccessAuth) { - this.companyAccessAuth = companyAccessAuth; - } - } -} \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/spring/GustoEmbedded-spring-boot-autoconfigure/src/main/java/com/gusto/embedded_api_v_2025_11_15/OnPropertyPrefixCondition.java b/gusto_embedded_v_2025_11_15/spring/GustoEmbedded-spring-boot-autoconfigure/src/main/java/com/gusto/embedded_api_v_2025_11_15/OnPropertyPrefixCondition.java deleted file mode 100644 index 58257a39f..000000000 --- a/gusto_embedded_v_2025_11_15/spring/GustoEmbedded-spring-boot-autoconfigure/src/main/java/com/gusto/embedded_api_v_2025_11_15/OnPropertyPrefixCondition.java +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - */ -package com.gusto.embedded_api_v_2025_11_15; - -import org.springframework.boot.autoconfigure.condition.ConditionMessage; -import org.springframework.boot.autoconfigure.condition.ConditionOutcome; -import org.springframework.boot.autoconfigure.condition.SpringBootCondition; -import org.springframework.boot.context.properties.bind.Binder; -import org.springframework.context.annotation.ConditionContext; -import org.springframework.core.type.AnnotatedTypeMetadata; -import org.springframework.core.env.Environment; - -import java.util.Map; - -/** - * Custom condition that checks if any properties exist under a given prefix. - * This is used to conditionally create beans only when configuration properties - * are present under a specific prefix. - */ -public class OnPropertyPrefixCondition extends SpringBootCondition { - - /** - * Default constructor for OnPropertyPrefixCondition. - */ - public OnPropertyPrefixCondition() { - // Default constructor - } - - @Override - public ConditionOutcome getMatchOutcome(ConditionContext context, AnnotatedTypeMetadata metadata) { - Map attributes = metadata.getAnnotationAttributes(ConditionalOnPropertyPrefix.class.getName()); - if (attributes == null) { - return ConditionOutcome.noMatch("@ConditionalOnPropertyPrefix annotation not found"); - } - - String prefix = (String) attributes.get("prefix"); - if (prefix == null || prefix.isEmpty()) { - return ConditionOutcome.noMatch("Property prefix is empty"); - } - - Environment environment = context.getEnvironment(); - - // Check if any properties exist under the given prefix - boolean hasPropertiesUnderPrefix = hasPropertiesWithPrefix(environment, prefix); - - ConditionMessage.Builder message = ConditionMessage.forCondition(ConditionalOnPropertyPrefix.class, prefix); - - if (hasPropertiesUnderPrefix) { - return ConditionOutcome.match(message.found("properties").items(prefix + ".*")); - } else { - return ConditionOutcome.noMatch(message.didNotFind("properties").items(prefix + ".*")); - } - } - - private boolean hasPropertiesWithPrefix(Environment environment, String prefix) { - try { - // Use Spring Boot's Binder to check if any properties exist under the prefix - Binder binder = Binder.get(environment); - - // Try to bind to a Map to see if any properties exist under the prefix - return binder.bind(prefix, Map.class).isBound(); - } catch (Exception e) { - // If we can't determine, assume no properties exist - return false; - } - } -} \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/spring/GustoEmbedded-spring-boot-autoconfigure/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports b/gusto_embedded_v_2025_11_15/spring/GustoEmbedded-spring-boot-autoconfigure/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports deleted file mode 100644 index 627143490..000000000 --- a/gusto_embedded_v_2025_11_15/spring/GustoEmbedded-spring-boot-autoconfigure/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports +++ /dev/null @@ -1 +0,0 @@ -com.gusto.embedded_api_v_2025_11_15.GustoEmbeddedAutoConfig \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/spring/GustoEmbedded-spring-boot-starter/build.gradle b/gusto_embedded_v_2025_11_15/spring/GustoEmbedded-spring-boot-starter/build.gradle deleted file mode 100644 index 2111bc5aa..000000000 --- a/gusto_embedded_v_2025_11_15/spring/GustoEmbedded-spring-boot-starter/build.gradle +++ /dev/null @@ -1,29 +0,0 @@ -description = 'GustoEmbedded Spring Boot Starter' - -// Publishing configuration overrides -ext { - publishingConfig = [ - groupId: rootProject.group, - artifactId: 'GustoEmbedded-spring-boot-starter', - version: rootProject.version, - name: 'Gusto Java SDK - Spring Boot Starter', - description: 'Spring Boot starter for the Gusto Java SDK.', - ] -} - -dependencies { - api project(':') - api project(':GustoEmbedded-spring-boot-autoconfigure') - api "org.springframework.boot:spring-boot-starter:${rootProject.springBootVersion}" -} - -jar { - dependsOn 'generatePomFileForMavenPublication' - archiveBaseName = 'GustoEmbedded-spring-boot-starter' - into("META-INF/maven/com.gusto/GustoEmbedded-spring-boot-starter") { - from(layout.buildDirectory.file("pom.xml")) { - // Only include if it exists to avoid build ordering issues - duplicatesStrategy = DuplicatesStrategy.INCLUDE - } - } -} \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncCompanies.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncCompanies.java index 04c717455..aab8a60d0 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncCompanies.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncCompanies.java @@ -10,7 +10,6 @@ import com.gusto.embedded_api_v_2025_11_15.models.components.PartnerManagedCompanyCreateRequest; import com.gusto.embedded_api_v_2025_11_15.models.components.PartnerManagedCompanyMigrateRequest; import com.gusto.embedded_api_v_2025_11_15.models.components.PartnerManagedCompanyRetrieveTermsOfServiceRequest; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdAdminsRequest; import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdCustomFieldsHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdCustomFieldsRequest; @@ -22,6 +21,7 @@ import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompanyOnboardingStatusRequest; import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.HeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2025_11_15.models.operations.PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2025_11_15.models.operations.PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest; import com.gusto.embedded_api_v_2025_11_15.models.operations.PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceHeaderXGustoAPIVersion; @@ -34,6 +34,9 @@ import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1CompaniesHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1CompaniesRequest; import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1CompaniesRequestBody; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity; import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1PartnerManagedCompaniesCompanyUuidMigrateHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest; import com.gusto.embedded_api_v_2025_11_15.models.operations.async.GetV1CompaniesCompanyIdAdminsRequestBuilder; @@ -58,6 +61,8 @@ import com.gusto.embedded_api_v_2025_11_15.models.operations.async.PostV1PartnerManagedCompaniesResponse; import com.gusto.embedded_api_v_2025_11_15.models.operations.async.PutV1CompaniesRequestBuilder; import com.gusto.embedded_api_v_2025_11_15.models.operations.async.PutV1CompaniesResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.async.PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder; +import com.gusto.embedded_api_v_2025_11_15.models.operations.async.PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse; import com.gusto.embedded_api_v_2025_11_15.models.operations.async.PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder; import com.gusto.embedded_api_v_2025_11_15.models.operations.async.PutV1PartnerManagedCompaniesCompanyUuidMigrateResponse; import com.gusto.embedded_api_v_2025_11_15.operations.GetV1Companies; @@ -71,6 +76,7 @@ import com.gusto.embedded_api_v_2025_11_15.operations.PostV1CompaniesCompanyIdAdmins; import com.gusto.embedded_api_v_2025_11_15.operations.PostV1PartnerManagedCompanies; import com.gusto.embedded_api_v_2025_11_15.operations.PutV1Companies; +import com.gusto.embedded_api_v_2025_11_15.operations.PutV1PartnerManagedCompaniesCompanyUuidDisassociate; import com.gusto.embedded_api_v_2025_11_15.operations.PutV1PartnerManagedCompaniesCompanyUuidMigrate; import com.gusto.embedded_api_v_2025_11_15.utils.Headers; import java.lang.Long; @@ -106,95 +112,135 @@ public Companies sync() { /** - * Create a partner managed company + * Get all the admins at a company * - *

    Create a partner managed company. When you successfully call the API, it does the following: - * * Creates a new company in Gusto - * * Creates a new user using the provided email if the user does not already exist. - * * Makes the user the primary payroll administrator of the new company. + *

    Returns a list of all the admins at a company * - *

    In response, you will receive oauth access tokens for the created company. + *

    scope: `company_admin:read` * - *

    IMPORTANT: the returned access and refresh tokens are reserved for this company only. They cannot be - * used to access other companies AND previously granted tokens cannot be used to access this company. + *

    If set, this operation will use Security#companyAccessAuth from the global security. * - *

    📘 System Access Authentication + * @return The async call builder + */ + public GetV1CompaniesCompanyIdAdminsRequestBuilder listAdmins() { + return new GetV1CompaniesCompanyIdAdminsRequestBuilder(sdkConfiguration); + } + + /** + * Get all the admins at a company * - *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP - * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + *

    Returns a list of all the admins at a company * - *

    scope: `partner_managed_companies:manage` + *

    scope: `company_admin:read` * - * @return The async call builder + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param companyId The UUID of the company + * @return {@code CompletableFuture} - The async response */ - public PostV1PartnerManagedCompaniesRequestBuilder createPartnerManaged() { - return new PostV1PartnerManagedCompaniesRequestBuilder(sdkConfiguration); + public CompletableFuture listAdmins(String companyId) { + return listAdmins( + Optional.empty(), companyId, Optional.empty(), + Optional.empty()); } /** - * Create a partner managed company + * Get all the admins at a company * - *

    Create a partner managed company. When you successfully call the API, it does the following: - * * Creates a new company in Gusto - * * Creates a new user using the provided email if the user does not already exist. - * * Makes the user the primary payroll administrator of the new company. + *

    Returns a list of all the admins at a company * - *

    In response, you will receive oauth access tokens for the created company. + *

    scope: `company_admin:read` * - *

    IMPORTANT: the returned access and refresh tokens are reserved for this company only. They cannot be - * used to access other companies AND previously granted tokens cannot be used to access this company. + *

    If set, this operation will use Security#companyAccessAuth from the global security. * - *

    📘 System Access Authentication + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company + * @param page The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + * @param per Number of objects per page. For majority of endpoints will default to 25 + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture listAdmins( + Optional xGustoAPIVersion, String companyId, + Optional page, Optional per) { + GetV1CompaniesCompanyIdAdminsRequest request = + GetV1CompaniesCompanyIdAdminsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) + .page(page) + .per(per) + .build(); + AsyncRequestOperation operation + = new GetV1CompaniesCompanyIdAdmins.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Create an admin for the company * - *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP - * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + *

    Creates a new admin for a company. + * If the email matches an existing user, this will create an admin account for the current user. + * Otherwise, this will create a new user. * - *

    scope: `partner_managed_companies:manage` + *

    scope: `company_admin:write` * - * @param security The security details to use for authentication. - * @param partnerManagedCompanyCreateRequest - * @return {@code CompletableFuture} - The async response + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder */ - public CompletableFuture createPartnerManaged(PostV1PartnerManagedCompaniesSecurity security, PartnerManagedCompanyCreateRequest partnerManagedCompanyCreateRequest) { - return createPartnerManaged(security, Optional.empty(), partnerManagedCompanyCreateRequest); + public PostV1CompaniesCompanyIdAdminsRequestBuilder createAdmin() { + return new PostV1CompaniesCompanyIdAdminsRequestBuilder(sdkConfiguration); } /** - * Create a partner managed company + * Create an admin for the company * - *

    Create a partner managed company. When you successfully call the API, it does the following: - * * Creates a new company in Gusto - * * Creates a new user using the provided email if the user does not already exist. - * * Makes the user the primary payroll administrator of the new company. + *

    Creates a new admin for a company. + * If the email matches an existing user, this will create an admin account for the current user. + * Otherwise, this will create a new user. * - *

    In response, you will receive oauth access tokens for the created company. + *

    scope: `company_admin:write` * - *

    IMPORTANT: the returned access and refresh tokens are reserved for this company only. They cannot be - * used to access other companies AND previously granted tokens cannot be used to access this company. + *

    If set, this operation will use Security#companyAccessAuth from the global security. * - *

    📘 System Access Authentication + * @param companyId The UUID of the company + * @param adminCreateRequest The request body for creating a company admin. + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture createAdmin(String companyId, AdminCreateRequest adminCreateRequest) { + return createAdmin(Optional.empty(), companyId, adminCreateRequest); + } + + /** + * Create an admin for the company * - *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP - * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + *

    Creates a new admin for a company. + * If the email matches an existing user, this will create an admin account for the current user. + * Otherwise, this will create a new user. * - *

    scope: `partner_managed_companies:manage` + *

    scope: `company_admin:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param security The security details to use for authentication. * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param partnerManagedCompanyCreateRequest - * @return {@code CompletableFuture} - The async response + * @param companyId The UUID of the company + * @param adminCreateRequest The request body for creating a company admin. + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture createPartnerManaged( - PostV1PartnerManagedCompaniesSecurity security, Optional xGustoAPIVersion, - PartnerManagedCompanyCreateRequest partnerManagedCompanyCreateRequest) { - PostV1PartnerManagedCompaniesRequest request = - PostV1PartnerManagedCompaniesRequest + public CompletableFuture createAdmin( + Optional xGustoAPIVersion, String companyId, + AdminCreateRequest adminCreateRequest) { + PostV1CompaniesCompanyIdAdminsRequest request = + PostV1CompaniesCompanyIdAdminsRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .partnerManagedCompanyCreateRequest(partnerManagedCompanyCreateRequest) + .companyId(companyId) + .adminCreateRequest(adminCreateRequest) .build(); - AsyncRequestOperation operation - = new PostV1PartnerManagedCompanies.Async(sdkConfiguration, security, _headers); + AsyncRequestOperation operation + = new PostV1CompaniesCompanyIdAdmins.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } @@ -236,7 +282,7 @@ public GetV1CompaniesRequestBuilder get() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture get(String companyId) { - return get(companyId, Optional.empty()); + return get(Optional.empty(), companyId); } /** @@ -252,16 +298,16 @@ public CompletableFuture get(String companyId) { * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company * @return {@code CompletableFuture} - The async response */ - public CompletableFuture get(String companyId, Optional xGustoAPIVersion) { + public CompletableFuture get(Optional xGustoAPIVersion, String companyId) { GetV1CompaniesRequest request = GetV1CompaniesRequest .builder() - .companyId(companyId) .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) .build(); AsyncRequestOperation operation = new GetV1Companies.Async(sdkConfiguration, _headers); @@ -299,7 +345,7 @@ public PutV1CompaniesRequestBuilder update() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture update(String companyId, PutV1CompaniesRequestBody requestBody) { - return update(companyId, Optional.empty(), requestBody); + return update(Optional.empty(), companyId, requestBody); } /** @@ -311,19 +357,19 @@ public CompletableFuture update(String companyId, PutV1C * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company * @param requestBody * @return {@code CompletableFuture} - The async response */ public CompletableFuture update( - String companyId, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String companyId, PutV1CompaniesRequestBody requestBody) { PutV1CompaniesRequest request = PutV1CompaniesRequest .builder() - .companyId(companyId) .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) .requestBody(requestBody) .build(); AsyncRequestOperation operation @@ -334,664 +380,698 @@ public CompletableFuture update( /** - * Migrate company to embedded payroll - * - *

    Migrate an existing Gusto customer to your embedded payroll product. - * - *

    ### Prerequisites - * Before calling this endpoint: - * 1. The customer must connect their Gusto account to your application using [OAuth2](doc:oauth2) - * 2. The customer must view and [accept the Embedded Payroll Terms of - * Service](ref:post-partner-managed-companies-company_uuid-accept_terms_of_service) + * Get the custom fields of a company * - *

    ### Related guides - * - [Migrate an existing company](doc:migrate-existing-company) + *

    Returns a list of the custom fields of the company. Useful when you need to know the schema of + * custom fields for an entire company. * - *

    scope: `partner_managed_companies:write` + *

    scope: `companies:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder migrate() { - return new PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder(sdkConfiguration); + public GetV1CompaniesCompanyIdCustomFieldsRequestBuilder getCustomFields() { + return new GetV1CompaniesCompanyIdCustomFieldsRequestBuilder(sdkConfiguration); } /** - * Migrate company to embedded payroll - * - *

    Migrate an existing Gusto customer to your embedded payroll product. - * - *

    ### Prerequisites - * Before calling this endpoint: - * 1. The customer must connect their Gusto account to your application using [OAuth2](doc:oauth2) - * 2. The customer must view and [accept the Embedded Payroll Terms of - * Service](ref:post-partner-managed-companies-company_uuid-accept_terms_of_service) + * Get the custom fields of a company * - *

    ### Related guides - * - [Migrate an existing company](doc:migrate-existing-company) + *

    Returns a list of the custom fields of the company. Useful when you need to know the schema of + * custom fields for an entire company. * - *

    scope: `partner_managed_companies:write` + *

    scope: `companies:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company - * @param partnerManagedCompanyMigrateRequest - * @return {@code CompletableFuture} - The async response + * @param companyId The UUID of the company + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture migrate(String companyUuid, PartnerManagedCompanyMigrateRequest partnerManagedCompanyMigrateRequest) { - return migrate(companyUuid, Optional.empty(), partnerManagedCompanyMigrateRequest); + public CompletableFuture getCustomFields(String companyId) { + return getCustomFields( + Optional.empty(), companyId, Optional.empty(), + Optional.empty()); } /** - * Migrate company to embedded payroll - * - *

    Migrate an existing Gusto customer to your embedded payroll product. - * - *

    ### Prerequisites - * Before calling this endpoint: - * 1. The customer must connect their Gusto account to your application using [OAuth2](doc:oauth2) - * 2. The customer must view and [accept the Embedded Payroll Terms of - * Service](ref:post-partner-managed-companies-company_uuid-accept_terms_of_service) + * Get the custom fields of a company * - *

    ### Related guides - * - [Migrate an existing company](doc:migrate-existing-company) + *

    Returns a list of the custom fields of the company. Useful when you need to know the schema of + * custom fields for an entire company. * - *

    scope: `partner_managed_companies:write` + *

    scope: `companies:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param partnerManagedCompanyMigrateRequest - * @return {@code CompletableFuture} - The async response + * @param companyId The UUID of the company + * @param page The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + * @param per Number of objects per page. For majority of endpoints will default to 25 + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture migrate( - String companyUuid, Optional xGustoAPIVersion, - PartnerManagedCompanyMigrateRequest partnerManagedCompanyMigrateRequest) { - PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest request = - PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest + public CompletableFuture getCustomFields( + Optional xGustoAPIVersion, String companyId, + Optional page, Optional per) { + GetV1CompaniesCompanyIdCustomFieldsRequest request = + GetV1CompaniesCompanyIdCustomFieldsRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) - .partnerManagedCompanyMigrateRequest(partnerManagedCompanyMigrateRequest) + .companyId(companyId) + .page(page) + .per(per) .build(); - AsyncRequestOperation operation - = new PutV1PartnerManagedCompaniesCompanyUuidMigrate.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new GetV1CompaniesCompanyIdCustomFields.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Check company migration readiness + * Get company onboarding status * - *

    Check if an existing Gusto customer is ready to be migrated to embedded payroll. This endpoint - * returns blockers and warnings associated with migrating the company and is recommended to be called - * before attempting to migrate a company. + *

    Retrieves a company's onboarding status, including whether onboarding is complete and the list of + * required onboarding steps with their respective completion state. * - *

    scope: `partner_managed_companies:read` + *

    scope: `company_onboarding_status:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder getV1PartnerManagedCompaniesCompanyUuidMigrationReadiness() { - return new GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder(sdkConfiguration); - } + public GetV1CompanyOnboardingStatusRequestBuilder getOnboardingStatus() { + return new GetV1CompanyOnboardingStatusRequestBuilder(sdkConfiguration); + } /** - * Check company migration readiness + * Get company onboarding status * - *

    Check if an existing Gusto customer is ready to be migrated to embedded payroll. This endpoint - * returns blockers and warnings associated with migrating the company and is recommended to be called - * before attempting to migrate a company. + *

    Retrieves a company's onboarding status, including whether onboarding is complete and the list of + * required onboarding steps with their respective completion state. * - *

    scope: `partner_managed_companies:read` + *

    scope: `company_onboarding_status:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param companyUuid The UUID of the company - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getV1PartnerManagedCompaniesCompanyUuidMigrationReadiness(String companyUuid) { - return getV1PartnerManagedCompaniesCompanyUuidMigrationReadiness(companyUuid, Optional.empty()); + public CompletableFuture getOnboardingStatus(String companyUuid) { + return getOnboardingStatus(Optional.empty(), companyUuid, Optional.empty()); } /** - * Check company migration readiness + * Get company onboarding status * - *

    Check if an existing Gusto customer is ready to be migrated to embedded payroll. This endpoint - * returns blockers and warnings associated with migrating the company and is recommended to be called - * before attempting to migrate a company. + *

    Retrieves a company's onboarding status, including whether onboarding is complete and the list of + * required onboarding steps with their respective completion state. * - *

    scope: `partner_managed_companies:read` + *

    scope: `company_onboarding_status:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @return {@code CompletableFuture} - The async response + * @param companyUuid The UUID of the company + * @param additionalSteps Comma-delimited string of additional onboarding steps to include. Currently only supports the value "external_payroll". + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getV1PartnerManagedCompaniesCompanyUuidMigrationReadiness(String companyUuid, Optional xGustoAPIVersion) { - GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest request = - GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest + public CompletableFuture getOnboardingStatus( + Optional xGustoAPIVersion, String companyUuid, + Optional additionalSteps) { + GetV1CompanyOnboardingStatusRequest request = + GetV1CompanyOnboardingStatusRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) + .additionalSteps(additionalSteps) .build(); - AsyncRequestOperation operation - = new GetV1PartnerManagedCompaniesCompanyUuidMigrationReadiness.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new GetV1CompanyOnboardingStatus.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Accept terms of service for a company user + * Finish company onboarding * - *

    Accept the Gusto Embedded Payroll's [Terms of Service](https://flows.gusto.com/terms). - * The user must have a role in the company in order to accept the Terms of Service. + *

    Finalize a company's onboarding process. * - *

    scope: `terms_of_services:write` + *

    ### Approve a company in demo + * + *

    After a company is finished onboarding, Gusto requires an additional step to review and approve that + * company. + * The company onboarding status is "onboarding_completed": false, until the API call is made to finish + * company + * onboarding. In production environments, this step is required for risk-analysis purposes. + * + *

    We provide the endpoint `PUT '/v1/companies/{company_uuid}/approve'` to facilitate company approvals + * in the demo environment. + * + *

    ```shell + * PUT '/v1/companies/89771af8-b964-472e-8064-554dfbcb56d9/approve' + * + *

    # Response: Company object, with company_status: 'Approved' + * ``` + * + *

    scope: `companies:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBuilder acceptTermsOfService() { - return new PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBuilder(sdkConfiguration); + public GetV1CompanyFinishOnboardingRequestBuilder finishOnboarding() { + return new GetV1CompanyFinishOnboardingRequestBuilder(sdkConfiguration); } /** - * Accept terms of service for a company user + * Finish company onboarding * - *

    Accept the Gusto Embedded Payroll's [Terms of Service](https://flows.gusto.com/terms). - * The user must have a role in the company in order to accept the Terms of Service. + *

    Finalize a company's onboarding process. * - *

    scope: `terms_of_services:write` + *

    ### Approve a company in demo + * + *

    After a company is finished onboarding, Gusto requires an additional step to review and approve that + * company. + * The company onboarding status is "onboarding_completed": false, until the API call is made to finish + * company + * onboarding. In production environments, this step is required for risk-analysis purposes. + * + *

    We provide the endpoint `PUT '/v1/companies/{company_uuid}/approve'` to facilitate company approvals + * in the demo environment. + * + *

    ```shell + * PUT '/v1/companies/89771af8-b964-472e-8064-554dfbcb56d9/approve' + * + *

    # Response: Company object, with company_status: 'Approved' + * ``` + * + *

    scope: `companies:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param companyUuid The UUID of the company - * @param partnerManagedCompanyAcceptTermsOfServiceRequest - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture acceptTermsOfService(String companyUuid, PartnerManagedCompanyAcceptTermsOfServiceRequest partnerManagedCompanyAcceptTermsOfServiceRequest) { - return acceptTermsOfService(companyUuid, Optional.empty(), partnerManagedCompanyAcceptTermsOfServiceRequest); + public CompletableFuture finishOnboarding(String companyUuid) { + return finishOnboarding(Optional.empty(), companyUuid); } /** - * Accept terms of service for a company user + * Finish company onboarding * - *

    Accept the Gusto Embedded Payroll's [Terms of Service](https://flows.gusto.com/terms). - * The user must have a role in the company in order to accept the Terms of Service. + *

    Finalize a company's onboarding process. * - *

    scope: `terms_of_services:write` + *

    ### Approve a company in demo + * + *

    After a company is finished onboarding, Gusto requires an additional step to review and approve that + * company. + * The company onboarding status is "onboarding_completed": false, until the API call is made to finish + * company + * onboarding. In production environments, this step is required for risk-analysis purposes. + * + *

    We provide the endpoint `PUT '/v1/companies/{company_uuid}/approve'` to facilitate company approvals + * in the demo environment. + * + *

    ```shell + * PUT '/v1/companies/89771af8-b964-472e-8064-554dfbcb56d9/approve' + * + *

    # Response: Company object, with company_status: 'Approved' + * ``` + * + *

    scope: `companies:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param partnerManagedCompanyAcceptTermsOfServiceRequest - * @return {@code CompletableFuture} - The async response + * @param companyUuid The UUID of the company + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture acceptTermsOfService( - String companyUuid, Optional xGustoAPIVersion, - PartnerManagedCompanyAcceptTermsOfServiceRequest partnerManagedCompanyAcceptTermsOfServiceRequest) { - PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest request = - PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest + public CompletableFuture finishOnboarding(Optional xGustoAPIVersion, String companyUuid) { + GetV1CompanyFinishOnboardingRequest request = + GetV1CompanyFinishOnboardingRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) - .partnerManagedCompanyAcceptTermsOfServiceRequest(partnerManagedCompanyAcceptTermsOfServiceRequest) + .companyUuid(companyUuid) .build(); - AsyncRequestOperation operation - = new PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfService.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new GetV1CompanyFinishOnboarding.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Retrieve terms of service status for a company user + * Disassociate a partner managed company * - *

    Retrieve the user acceptance status of the Gusto Embedded Payroll's [Terms of - * Service](https://flows.gusto.com/terms). + *

    Disassociate a company from your embedded payroll product, reversing an earlier association or + * migration. You can only disassociate a company that is currently associated with your application. * - *

    scope: `terms_of_services:read` + *

    📘 System Access Authentication * - *

    If set, this operation will use Security#companyAccessAuth from the global security. + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `partner_managed_companies:disassociate` * * @return The async call builder */ - public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder retrieveTermsOfService() { - return new PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder(sdkConfiguration); + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder putV1PartnerManagedCompaniesCompanyUuidDisassociate() { + return new PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder(sdkConfiguration); } /** - * Retrieve terms of service status for a company user + * Disassociate a partner managed company * - *

    Retrieve the user acceptance status of the Gusto Embedded Payroll's [Terms of - * Service](https://flows.gusto.com/terms). + *

    Disassociate a company from your embedded payroll product, reversing an earlier association or + * migration. You can only disassociate a company that is currently associated with your application. * - *

    scope: `terms_of_services:read` + *

    📘 System Access Authentication * - *

    If set, this operation will use Security#companyAccessAuth from the global security. + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) * + *

    scope: `partner_managed_companies:disassociate` + * + * @param security The security details to use for authentication. * @param companyUuid The UUID of the company - * @param partnerManagedCompanyRetrieveTermsOfServiceRequest - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture retrieveTermsOfService(String companyUuid, PartnerManagedCompanyRetrieveTermsOfServiceRequest partnerManagedCompanyRetrieveTermsOfServiceRequest) { - return retrieveTermsOfService(companyUuid, Optional.empty(), partnerManagedCompanyRetrieveTermsOfServiceRequest); + public CompletableFuture putV1PartnerManagedCompaniesCompanyUuidDisassociate(PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity security, String companyUuid) { + return putV1PartnerManagedCompaniesCompanyUuidDisassociate(security, Optional.empty(), companyUuid); } /** - * Retrieve terms of service status for a company user + * Disassociate a partner managed company * - *

    Retrieve the user acceptance status of the Gusto Embedded Payroll's [Terms of - * Service](https://flows.gusto.com/terms). + *

    Disassociate a company from your embedded payroll product, reversing an earlier association or + * migration. You can only disassociate a company that is currently associated with your application. * - *

    scope: `terms_of_services:read` + *

    📘 System Access Authentication * - *

    If set, this operation will use Security#companyAccessAuth from the global security. + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) * - * @param companyUuid The UUID of the company + *

    scope: `partner_managed_companies:disassociate` + * + * @param security The security details to use for authentication. * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param partnerManagedCompanyRetrieveTermsOfServiceRequest - * @return {@code CompletableFuture} - The async response + * @param companyUuid The UUID of the company + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture retrieveTermsOfService( - String companyUuid, Optional xGustoAPIVersion, - PartnerManagedCompanyRetrieveTermsOfServiceRequest partnerManagedCompanyRetrieveTermsOfServiceRequest) { - PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest request = - PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest + public CompletableFuture putV1PartnerManagedCompaniesCompanyUuidDisassociate( + PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity security, Optional xGustoAPIVersion, + String companyUuid) { + PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest request = + PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) - .partnerManagedCompanyRetrieveTermsOfServiceRequest(partnerManagedCompanyRetrieveTermsOfServiceRequest) + .companyUuid(companyUuid) .build(); - AsyncRequestOperation operation - = new PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfService.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new PutV1PartnerManagedCompaniesCompanyUuidDisassociate.Async(sdkConfiguration, security, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Get all the admins at a company + * Migrate company to embedded payroll * - *

    Returns a list of all the admins at a company + *

    Migrate an existing Gusto customer to your embedded payroll product. * - *

    scope: `company_admin:read` + *

    ### Prerequisites + * Before calling this endpoint: + * 1. The customer must connect their Gusto account to your application using [OAuth2](doc:oauth2) + * 2. The customer must view and [accept the Embedded Payroll Terms of + * Service](ref:post-partner-managed-companies-company_uuid-accept_terms_of_service) + * + *

    ### Related guides + * - [Migrate an existing company](doc:migrate-existing-company) + * + *

    scope: `partner_managed_companies:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public GetV1CompaniesCompanyIdAdminsRequestBuilder listAdmins() { - return new GetV1CompaniesCompanyIdAdminsRequestBuilder(sdkConfiguration); + public PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder migrate() { + return new PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder(sdkConfiguration); } /** - * Get all the admins at a company + * Migrate company to embedded payroll * - *

    Returns a list of all the admins at a company + *

    Migrate an existing Gusto customer to your embedded payroll product. * - *

    scope: `company_admin:read` + *

    ### Prerequisites + * Before calling this endpoint: + * 1. The customer must connect their Gusto account to your application using [OAuth2](doc:oauth2) + * 2. The customer must view and [accept the Embedded Payroll Terms of + * Service](ref:post-partner-managed-companies-company_uuid-accept_terms_of_service) + * + *

    ### Related guides + * - [Migrate an existing company](doc:migrate-existing-company) + * + *

    scope: `partner_managed_companies:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company - * @return {@code CompletableFuture} - The async response + * @param companyUuid The UUID of the company + * @param partnerManagedCompanyMigrateRequest + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture listAdmins(String companyId) { - return listAdmins( - Optional.empty(), companyId, Optional.empty(), - Optional.empty()); + public CompletableFuture migrate(String companyUuid, PartnerManagedCompanyMigrateRequest partnerManagedCompanyMigrateRequest) { + return migrate(Optional.empty(), companyUuid, partnerManagedCompanyMigrateRequest); } /** - * Get all the admins at a company + * Migrate company to embedded payroll * - *

    Returns a list of all the admins at a company + *

    Migrate an existing Gusto customer to your embedded payroll product. * - *

    scope: `company_admin:read` + *

    ### Prerequisites + * Before calling this endpoint: + * 1. The customer must connect their Gusto account to your application using [OAuth2](doc:oauth2) + * 2. The customer must view and [accept the Embedded Payroll Terms of + * Service](ref:post-partner-managed-companies-company_uuid-accept_terms_of_service) + * + *

    ### Related guides + * - [Migrate an existing company](doc:migrate-existing-company) + * + *

    scope: `partner_managed_companies:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyId The UUID of the company - * @param page The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - * @param per Number of objects per page. For majority of endpoints will default to 25 - * @return {@code CompletableFuture} - The async response + * @param companyUuid The UUID of the company + * @param partnerManagedCompanyMigrateRequest + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture listAdmins( - Optional xGustoAPIVersion, String companyId, - Optional page, Optional per) { - GetV1CompaniesCompanyIdAdminsRequest request = - GetV1CompaniesCompanyIdAdminsRequest + public CompletableFuture migrate( + Optional xGustoAPIVersion, String companyUuid, + PartnerManagedCompanyMigrateRequest partnerManagedCompanyMigrateRequest) { + PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest request = + PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .companyId(companyId) - .page(page) - .per(per) + .companyUuid(companyUuid) + .partnerManagedCompanyMigrateRequest(partnerManagedCompanyMigrateRequest) .build(); - AsyncRequestOperation operation - = new GetV1CompaniesCompanyIdAdmins.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new PutV1PartnerManagedCompaniesCompanyUuidMigrate.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Create an admin for the company + * Create a partner managed company * - *

    Creates a new admin for a company. - * If the email matches an existing user, this will create an admin account for the current user. - * Otherwise, this will create a new user. + *

    Create a partner managed company. When you successfully call the API, it does the following: + * * Creates a new company in Gusto + * * Creates a new user using the provided email if the user does not already exist. + * * Makes the user the primary payroll administrator of the new company. * - *

    scope: `company_admin:write` + *

    In response, you will receive oauth access tokens for the created company. * - *

    If set, this operation will use Security#companyAccessAuth from the global security. + *

    IMPORTANT: the returned access and refresh tokens are reserved for this company only. They cannot be + * used to access other companies AND previously granted tokens cannot be used to access this company. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `partner_managed_companies:manage` * * @return The async call builder */ - public PostV1CompaniesCompanyIdAdminsRequestBuilder createAdmin() { - return new PostV1CompaniesCompanyIdAdminsRequestBuilder(sdkConfiguration); + public PostV1PartnerManagedCompaniesRequestBuilder createPartnerManaged() { + return new PostV1PartnerManagedCompaniesRequestBuilder(sdkConfiguration); } /** - * Create an admin for the company + * Create a partner managed company * - *

    Creates a new admin for a company. - * If the email matches an existing user, this will create an admin account for the current user. - * Otherwise, this will create a new user. + *

    Create a partner managed company. When you successfully call the API, it does the following: + * * Creates a new company in Gusto + * * Creates a new user using the provided email if the user does not already exist. + * * Makes the user the primary payroll administrator of the new company. * - *

    scope: `company_admin:write` + *

    In response, you will receive oauth access tokens for the created company. * - *

    If set, this operation will use Security#companyAccessAuth from the global security. + *

    IMPORTANT: the returned access and refresh tokens are reserved for this company only. They cannot be + * used to access other companies AND previously granted tokens cannot be used to access this company. * - * @param companyId The UUID of the company - * @param adminCreateRequest The request body for creating a company admin. - * @return {@code CompletableFuture} - The async response + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `partner_managed_companies:manage` + * + * @param security The security details to use for authentication. + * @param partnerManagedCompanyCreateRequest + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture createAdmin(String companyId, AdminCreateRequest adminCreateRequest) { - return createAdmin(Optional.empty(), companyId, adminCreateRequest); + public CompletableFuture createPartnerManaged(PostV1PartnerManagedCompaniesSecurity security, PartnerManagedCompanyCreateRequest partnerManagedCompanyCreateRequest) { + return createPartnerManaged(security, Optional.empty(), partnerManagedCompanyCreateRequest); } /** - * Create an admin for the company + * Create a partner managed company * - *

    Creates a new admin for a company. - * If the email matches an existing user, this will create an admin account for the current user. - * Otherwise, this will create a new user. + *

    Create a partner managed company. When you successfully call the API, it does the following: + * * Creates a new company in Gusto + * * Creates a new user using the provided email if the user does not already exist. + * * Makes the user the primary payroll administrator of the new company. * - *

    scope: `company_admin:write` + *

    In response, you will receive oauth access tokens for the created company. * - *

    If set, this operation will use Security#companyAccessAuth from the global security. + *

    IMPORTANT: the returned access and refresh tokens are reserved for this company only. They cannot be + * used to access other companies AND previously granted tokens cannot be used to access this company. + * + *

    📘 System Access Authentication * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `partner_managed_companies:manage` + * + * @param security The security details to use for authentication. * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyId The UUID of the company - * @param adminCreateRequest The request body for creating a company admin. - * @return {@code CompletableFuture} - The async response + * @param partnerManagedCompanyCreateRequest + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture createAdmin( - Optional xGustoAPIVersion, String companyId, - AdminCreateRequest adminCreateRequest) { - PostV1CompaniesCompanyIdAdminsRequest request = - PostV1CompaniesCompanyIdAdminsRequest + public CompletableFuture createPartnerManaged( + PostV1PartnerManagedCompaniesSecurity security, Optional xGustoAPIVersion, + PartnerManagedCompanyCreateRequest partnerManagedCompanyCreateRequest) { + PostV1PartnerManagedCompaniesRequest request = + PostV1PartnerManagedCompaniesRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .companyId(companyId) - .adminCreateRequest(adminCreateRequest) + .partnerManagedCompanyCreateRequest(partnerManagedCompanyCreateRequest) .build(); - AsyncRequestOperation operation - = new PostV1CompaniesCompanyIdAdmins.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new PostV1PartnerManagedCompanies.Async(sdkConfiguration, security, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Get company onboarding status + * Check company migration readiness * - *

    Retrieves a company's onboarding status, including whether onboarding is complete and the list of - * required onboarding steps with their respective completion state. + *

    Check if an existing Gusto customer is ready to be migrated to embedded payroll. This endpoint + * returns blockers and warnings associated with migrating the company and is recommended to be called + * before attempting to migrate a company. * - *

    scope: `company_onboarding_status:read` + *

    scope: `partner_managed_companies:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public GetV1CompanyOnboardingStatusRequestBuilder getOnboardingStatus() { - return new GetV1CompanyOnboardingStatusRequestBuilder(sdkConfiguration); + public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder getV1PartnerManagedCompaniesCompanyUuidMigrationReadiness() { + return new GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder(sdkConfiguration); } /** - * Get company onboarding status + * Check company migration readiness * - *

    Retrieves a company's onboarding status, including whether onboarding is complete and the list of - * required onboarding steps with their respective completion state. + *

    Check if an existing Gusto customer is ready to be migrated to embedded payroll. This endpoint + * returns blockers and warnings associated with migrating the company and is recommended to be called + * before attempting to migrate a company. * - *

    scope: `company_onboarding_status:read` + *

    scope: `partner_managed_companies:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param companyUuid The UUID of the company - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getOnboardingStatus(String companyUuid) { - return getOnboardingStatus(companyUuid, Optional.empty(), Optional.empty()); + public CompletableFuture getV1PartnerManagedCompaniesCompanyUuidMigrationReadiness(String companyUuid) { + return getV1PartnerManagedCompaniesCompanyUuidMigrationReadiness(Optional.empty(), companyUuid); } /** - * Get company onboarding status + * Check company migration readiness * - *

    Retrieves a company's onboarding status, including whether onboarding is complete and the list of - * required onboarding steps with their respective completion state. + *

    Check if an existing Gusto customer is ready to be migrated to embedded payroll. This endpoint + * returns blockers and warnings associated with migrating the company and is recommended to be called + * before attempting to migrate a company. * - *

    scope: `company_onboarding_status:read` + *

    scope: `partner_managed_companies:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company - * @param additionalSteps Comma-delimited string of additional onboarding steps to include. Currently only supports the value "external_payroll". * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @return {@code CompletableFuture} - The async response + * @param companyUuid The UUID of the company + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getOnboardingStatus( - String companyUuid, Optional additionalSteps, - Optional xGustoAPIVersion) { - GetV1CompanyOnboardingStatusRequest request = - GetV1CompanyOnboardingStatusRequest + public CompletableFuture getV1PartnerManagedCompaniesCompanyUuidMigrationReadiness(Optional xGustoAPIVersion, String companyUuid) { + GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest request = + GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest .builder() - .companyUuid(companyUuid) - .additionalSteps(additionalSteps) .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) .build(); - AsyncRequestOperation operation - = new GetV1CompanyOnboardingStatus.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new GetV1PartnerManagedCompaniesCompanyUuidMigrationReadiness.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Finish company onboarding - * - *

    Finalize a company's onboarding process. - * - *

    ### Approve a company in demo - * - *

    After a company is finished onboarding, Gusto requires an additional step to review and approve that - * company. - * The company onboarding status is "onboarding_completed": false, until the API call is made to finish - * company - * onboarding. In production environments, this step is required for risk-analysis purposes. - * - *

    We provide the endpoint `PUT '/v1/companies/{company_uuid}/approve'` to facilitate company approvals - * in the demo environment. - * - *

    ```shell - * PUT '/v1/companies/89771af8-b964-472e-8064-554dfbcb56d9/approve' + * Accept terms of service for a company user * - *

    # Response: Company object, with company_status: 'Approved' - * ``` + *

    Accept the Gusto Embedded Payroll's [Terms of Service](https://flows.gusto.com/terms). + * The user must have a role in the company in order to accept the Terms of Service. * - *

    scope: `companies:write` + *

    scope: `terms_of_services:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public GetV1CompanyFinishOnboardingRequestBuilder finishOnboarding() { - return new GetV1CompanyFinishOnboardingRequestBuilder(sdkConfiguration); + public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBuilder acceptTermsOfService() { + return new PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBuilder(sdkConfiguration); } /** - * Finish company onboarding - * - *

    Finalize a company's onboarding process. - * - *

    ### Approve a company in demo - * - *

    After a company is finished onboarding, Gusto requires an additional step to review and approve that - * company. - * The company onboarding status is "onboarding_completed": false, until the API call is made to finish - * company - * onboarding. In production environments, this step is required for risk-analysis purposes. - * - *

    We provide the endpoint `PUT '/v1/companies/{company_uuid}/approve'` to facilitate company approvals - * in the demo environment. - * - *

    ```shell - * PUT '/v1/companies/89771af8-b964-472e-8064-554dfbcb56d9/approve' + * Accept terms of service for a company user * - *

    # Response: Company object, with company_status: 'Approved' - * ``` + *

    Accept the Gusto Embedded Payroll's [Terms of Service](https://flows.gusto.com/terms). + * The user must have a role in the company in order to accept the Terms of Service. * - *

    scope: `companies:write` + *

    scope: `terms_of_services:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param companyUuid The UUID of the company - * @return {@code CompletableFuture} - The async response + * @param partnerManagedCompanyAcceptTermsOfServiceRequest + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture finishOnboarding(String companyUuid) { - return finishOnboarding(companyUuid, Optional.empty()); + public CompletableFuture acceptTermsOfService(String companyUuid, PartnerManagedCompanyAcceptTermsOfServiceRequest partnerManagedCompanyAcceptTermsOfServiceRequest) { + return acceptTermsOfService(Optional.empty(), companyUuid, partnerManagedCompanyAcceptTermsOfServiceRequest); } /** - * Finish company onboarding - * - *

    Finalize a company's onboarding process. - * - *

    ### Approve a company in demo - * - *

    After a company is finished onboarding, Gusto requires an additional step to review and approve that - * company. - * The company onboarding status is "onboarding_completed": false, until the API call is made to finish - * company - * onboarding. In production environments, this step is required for risk-analysis purposes. - * - *

    We provide the endpoint `PUT '/v1/companies/{company_uuid}/approve'` to facilitate company approvals - * in the demo environment. - * - *

    ```shell - * PUT '/v1/companies/89771af8-b964-472e-8064-554dfbcb56d9/approve' + * Accept terms of service for a company user * - *

    # Response: Company object, with company_status: 'Approved' - * ``` + *

    Accept the Gusto Embedded Payroll's [Terms of Service](https://flows.gusto.com/terms). + * The user must have a role in the company in order to accept the Terms of Service. * - *

    scope: `companies:write` + *

    scope: `terms_of_services:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @return {@code CompletableFuture} - The async response + * @param companyUuid The UUID of the company + * @param partnerManagedCompanyAcceptTermsOfServiceRequest + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture finishOnboarding(String companyUuid, Optional xGustoAPIVersion) { - GetV1CompanyFinishOnboardingRequest request = - GetV1CompanyFinishOnboardingRequest + public CompletableFuture acceptTermsOfService( + Optional xGustoAPIVersion, String companyUuid, + PartnerManagedCompanyAcceptTermsOfServiceRequest partnerManagedCompanyAcceptTermsOfServiceRequest) { + PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest request = + PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) + .partnerManagedCompanyAcceptTermsOfServiceRequest(partnerManagedCompanyAcceptTermsOfServiceRequest) .build(); - AsyncRequestOperation operation - = new GetV1CompanyFinishOnboarding.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfService.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Get the custom fields of a company + * Retrieve terms of service status for a company user * - *

    Returns a list of the custom fields of the company. Useful when you need to know the schema of - * custom fields for an entire company. + *

    Retrieve the user acceptance status of the Gusto Embedded Payroll's [Terms of + * Service](https://flows.gusto.com/terms). * - *

    scope: `companies:read` + *

    scope: `terms_of_services:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public GetV1CompaniesCompanyIdCustomFieldsRequestBuilder getCustomFields() { - return new GetV1CompaniesCompanyIdCustomFieldsRequestBuilder(sdkConfiguration); + public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder retrieveTermsOfService() { + return new PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder(sdkConfiguration); } /** - * Get the custom fields of a company + * Retrieve terms of service status for a company user * - *

    Returns a list of the custom fields of the company. Useful when you need to know the schema of - * custom fields for an entire company. + *

    Retrieve the user acceptance status of the Gusto Embedded Payroll's [Terms of + * Service](https://flows.gusto.com/terms). * - *

    scope: `companies:read` + *

    scope: `terms_of_services:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company - * @return {@code CompletableFuture} - The async response + * @param companyUuid The UUID of the company + * @param partnerManagedCompanyRetrieveTermsOfServiceRequest + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getCustomFields(String companyId) { - return getCustomFields( - Optional.empty(), companyId, Optional.empty(), - Optional.empty()); + public CompletableFuture retrieveTermsOfService(String companyUuid, PartnerManagedCompanyRetrieveTermsOfServiceRequest partnerManagedCompanyRetrieveTermsOfServiceRequest) { + return retrieveTermsOfService(Optional.empty(), companyUuid, partnerManagedCompanyRetrieveTermsOfServiceRequest); } /** - * Get the custom fields of a company + * Retrieve terms of service status for a company user * - *

    Returns a list of the custom fields of the company. Useful when you need to know the schema of - * custom fields for an entire company. + *

    Retrieve the user acceptance status of the Gusto Embedded Payroll's [Terms of + * Service](https://flows.gusto.com/terms). * - *

    scope: `companies:read` + *

    scope: `terms_of_services:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyId The UUID of the company - * @param page The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - * @param per Number of objects per page. For majority of endpoints will default to 25 - * @return {@code CompletableFuture} - The async response + * @param companyUuid The UUID of the company + * @param partnerManagedCompanyRetrieveTermsOfServiceRequest + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getCustomFields( - Optional xGustoAPIVersion, String companyId, - Optional page, Optional per) { - GetV1CompaniesCompanyIdCustomFieldsRequest request = - GetV1CompaniesCompanyIdCustomFieldsRequest + public CompletableFuture retrieveTermsOfService( + Optional xGustoAPIVersion, String companyUuid, + PartnerManagedCompanyRetrieveTermsOfServiceRequest partnerManagedCompanyRetrieveTermsOfServiceRequest) { + PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest request = + PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .companyId(companyId) - .page(page) - .per(per) + .companyUuid(companyUuid) + .partnerManagedCompanyRetrieveTermsOfServiceRequest(partnerManagedCompanyRetrieveTermsOfServiceRequest) .build(); - AsyncRequestOperation operation - = new GetV1CompaniesCompanyIdCustomFields.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfService.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncCompanyAttachments.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncCompanyAttachments.java index 390eca7b0..43c3b4102 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncCompanyAttachments.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncCompanyAttachments.java @@ -47,78 +47,6 @@ public CompanyAttachments sync() { } - /** - * Get Company Attachment Details - * - *

    Retrieve the detail of an attachment uploaded by the company. - * - *

    ### Related guides - * - [Manage company attachments](doc:manage-company-attachments) - * - *

    scope: `company_attachments:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The async call builder - */ - public GetV1CompaniesAttachmentRequestBuilder getDetails() { - return new GetV1CompaniesAttachmentRequestBuilder(sdkConfiguration); - } - - /** - * Get Company Attachment Details - * - *

    Retrieve the detail of an attachment uploaded by the company. - * - *

    ### Related guides - * - [Manage company attachments](doc:manage-company-attachments) - * - *

    scope: `company_attachments:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param companyId The UUID of the company - * @param companyAttachmentUuid The UUID of the company attachment - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture getDetails(String companyId, String companyAttachmentUuid) { - return getDetails(Optional.empty(), companyId, companyAttachmentUuid); - } - - /** - * Get Company Attachment Details - * - *

    Retrieve the detail of an attachment uploaded by the company. - * - *

    ### Related guides - * - [Manage company attachments](doc:manage-company-attachments) - * - *

    scope: `company_attachments:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyId The UUID of the company - * @param companyAttachmentUuid The UUID of the company attachment - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture getDetails( - Optional xGustoAPIVersion, String companyId, - String companyAttachmentUuid) { - GetV1CompaniesAttachmentRequest request = - GetV1CompaniesAttachmentRequest - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .companyId(companyId) - .companyAttachmentUuid(companyAttachmentUuid) - .build(); - AsyncRequestOperation operation - = new GetV1CompaniesAttachment.Async(sdkConfiguration, _headers); - return operation.doRequest(request) - .thenCompose(operation::handleResponse); - } - - /** * Get List of Company Attachments * @@ -263,4 +191,76 @@ public CompletableFuture create( .thenCompose(operation::handleResponse); } + + /** + * Get Company Attachment Details + * + *

    Retrieve the detail of an attachment uploaded by the company. + * + *

    ### Related guides + * - [Manage company attachments](doc:manage-company-attachments) + * + *

    scope: `company_attachments:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public GetV1CompaniesAttachmentRequestBuilder getDetails() { + return new GetV1CompaniesAttachmentRequestBuilder(sdkConfiguration); + } + + /** + * Get Company Attachment Details + * + *

    Retrieve the detail of an attachment uploaded by the company. + * + *

    ### Related guides + * - [Manage company attachments](doc:manage-company-attachments) + * + *

    scope: `company_attachments:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param companyId The UUID of the company + * @param companyAttachmentUuid The UUID of the company attachment + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getDetails(String companyId, String companyAttachmentUuid) { + return getDetails(Optional.empty(), companyId, companyAttachmentUuid); + } + + /** + * Get Company Attachment Details + * + *

    Retrieve the detail of an attachment uploaded by the company. + * + *

    ### Related guides + * - [Manage company attachments](doc:manage-company-attachments) + * + *

    scope: `company_attachments:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company + * @param companyAttachmentUuid The UUID of the company attachment + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getDetails( + Optional xGustoAPIVersion, String companyId, + String companyAttachmentUuid) { + GetV1CompaniesAttachmentRequest request = + GetV1CompaniesAttachmentRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) + .companyAttachmentUuid(companyAttachmentUuid) + .build(); + AsyncRequestOperation operation + = new GetV1CompaniesAttachment.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncCompanyBenefits.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncCompanyBenefits.java index 74aa75355..199b3f6a4 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncCompanyBenefits.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncCompanyBenefits.java @@ -23,8 +23,8 @@ import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompanyBenefitsCompanyBenefitIdContributionExclusionsRequest; import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsRequest; import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompanyBenefitsCompanyBenefitIdHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompanyBenefitsCompanyBenefitIdQueryParamInclude; import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompanyBenefitsCompanyBenefitIdRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.Include; import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1CompaniesCompanyIdCompanyBenefitsHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1CompaniesCompanyIdCompanyBenefitsRequest; import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1CompanyBenefitsCompanyBenefitIdContributionExclusionsHeaderXGustoAPIVersion; @@ -99,6 +99,189 @@ public CompanyBenefits sync() { } + /** + * Get all supported benefits + * + *

    Returns all benefits supported by Gusto. The benefit object in Gusto contains high level information + * about a particular benefit type and its tax considerations. When companies choose to offer a + * benefit, they are creating a Company Benefit object associated with a particular benefit. + * + *

    scope: `benefits:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public GetV1BenefitsRequestBuilder getAll() { + return new GetV1BenefitsRequestBuilder(sdkConfiguration); + } + + /** + * Get all supported benefits + * + *

    Returns all benefits supported by Gusto. The benefit object in Gusto contains high level information + * about a particular benefit type and its tax considerations. When companies choose to offer a + * benefit, they are creating a Company Benefit object associated with a particular benefit. + * + *

    scope: `benefits:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getAllDirect() { + return getAll(Optional.empty()); + } + + /** + * Get all supported benefits + * + *

    Returns all benefits supported by Gusto. The benefit object in Gusto contains high level information + * about a particular benefit type and its tax considerations. When companies choose to offer a + * benefit, they are creating a Company Benefit object associated with a particular benefit. + * + *

    scope: `benefits:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getAll(Optional xGustoAPIVersion) { + GetV1BenefitsRequest request = + GetV1BenefitsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .build(); + AsyncRequestOperation operation + = new GetV1Benefits.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Get a supported benefit + * + *

    Returns a benefit supported by Gusto. The benefit object in Gusto contains high level information + * about a particular benefit type and its tax considerations. When companies choose to offer a + * benefit, they are creating a Company Benefit object associated with a particular benefit. + * + *

    scope: `benefits:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public GetV1BenefitsBenefitIdRequestBuilder getSupported() { + return new GetV1BenefitsBenefitIdRequestBuilder(sdkConfiguration); + } + + /** + * Get a supported benefit + * + *

    Returns a benefit supported by Gusto. The benefit object in Gusto contains high level information + * about a particular benefit type and its tax considerations. When companies choose to offer a + * benefit, they are creating a Company Benefit object associated with a particular benefit. + * + *

    scope: `benefits:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param benefitId The benefit type in Gusto. + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getSupported(String benefitId) { + return getSupported(Optional.empty(), benefitId); + } + + /** + * Get a supported benefit + * + *

    Returns a benefit supported by Gusto. The benefit object in Gusto contains high level information + * about a particular benefit type and its tax considerations. When companies choose to offer a + * benefit, they are creating a Company Benefit object associated with a particular benefit. + * + *

    scope: `benefits:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param benefitId The benefit type in Gusto. + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getSupported(Optional xGustoAPIVersion, String benefitId) { + GetV1BenefitsBenefitIdRequest request = + GetV1BenefitsBenefitIdRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .benefitId(benefitId) + .build(); + AsyncRequestOperation operation + = new GetV1BenefitsBenefitId.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Get benefit fields requirements by benefit type + * + *

    Returns the field requirements for a given benefit type. + * + *

    scope: `benefits:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public GetV1BenefitsBenefitsIdRequirementsRequestBuilder getRequirements() { + return new GetV1BenefitsBenefitsIdRequirementsRequestBuilder(sdkConfiguration); + } + + /** + * Get benefit fields requirements by benefit type + * + *

    Returns the field requirements for a given benefit type. + * + *

    scope: `benefits:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param benefitId The benefit type in Gusto. + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getRequirements(String benefitId) { + return getRequirements(Optional.empty(), benefitId); + } + + /** + * Get benefit fields requirements by benefit type + * + *

    Returns the field requirements for a given benefit type. + * + *

    scope: `benefits:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param benefitId The benefit type in Gusto. + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getRequirements(Optional xGustoAPIVersion, String benefitId) { + GetV1BenefitsBenefitsIdRequirementsRequest request = + GetV1BenefitsBenefitsIdRequirementsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .benefitId(benefitId) + .build(); + AsyncRequestOperation operation + = new GetV1BenefitsBenefitsIdRequirements.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + /** * Get benefits for a company * @@ -305,7 +488,7 @@ public CompletableFuture get(Strin */ public CompletableFuture get( Optional xGustoAPIVersion, String companyBenefitId, - Optional withEmployeeBenefits, Optional include) { + Optional withEmployeeBenefits, Optional include) { GetV1CompanyBenefitsCompanyBenefitIdRequest request = GetV1CompanyBenefitsCompanyBenefitIdRequest .builder() @@ -490,170 +673,6 @@ public CompletableFuture delete } - /** - * Get all supported benefits - * - *

    Returns all benefits supported by Gusto. The benefit object in Gusto contains high level information - * about a particular benefit type and its tax considerations. When companies choose to offer a - * benefit, they are creating a Company Benefit object associated with a particular benefit. - * - *

    scope: `benefits:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The async call builder - */ - public GetV1BenefitsRequestBuilder getAll() { - return new GetV1BenefitsRequestBuilder(sdkConfiguration); - } - - /** - * Get all supported benefits - * - *

    Returns all benefits supported by Gusto. The benefit object in Gusto contains high level information - * about a particular benefit type and its tax considerations. When companies choose to offer a - * benefit, they are creating a Company Benefit object associated with a particular benefit. - * - *

    scope: `benefits:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture getAllDirect() { - return getAll(Optional.empty()); - } - - /** - * Get all supported benefits - * - *

    Returns all benefits supported by Gusto. The benefit object in Gusto contains high level information - * about a particular benefit type and its tax considerations. When companies choose to offer a - * benefit, they are creating a Company Benefit object associated with a particular benefit. - * - *

    scope: `benefits:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture getAll(Optional xGustoAPIVersion) { - GetV1BenefitsRequest request = - GetV1BenefitsRequest - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .build(); - AsyncRequestOperation operation - = new GetV1Benefits.Async(sdkConfiguration, _headers); - return operation.doRequest(request) - .thenCompose(operation::handleResponse); - } - - - /** - * Get a supported benefit - * - *

    Returns a benefit supported by Gusto. The benefit object in Gusto contains high level information - * about a particular benefit type and its tax considerations. When companies choose to offer a - * benefit, they are creating a Company Benefit object associated with a particular benefit. - * - *

    scope: `benefits:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The async call builder - */ - public GetV1BenefitsBenefitIdRequestBuilder getSupported() { - return new GetV1BenefitsBenefitIdRequestBuilder(sdkConfiguration); - } - - /** - * Get a supported benefit - * - *

    Returns a benefit supported by Gusto. The benefit object in Gusto contains high level information - * about a particular benefit type and its tax considerations. When companies choose to offer a - * benefit, they are creating a Company Benefit object associated with a particular benefit. - * - *

    scope: `benefits:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param benefitId The benefit type in Gusto. - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture getSupported(String benefitId) { - return getSupported(Optional.empty(), benefitId); - } - - /** - * Get a supported benefit - * - *

    Returns a benefit supported by Gusto. The benefit object in Gusto contains high level information - * about a particular benefit type and its tax considerations. When companies choose to offer a - * benefit, they are creating a Company Benefit object associated with a particular benefit. - * - *

    scope: `benefits:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param benefitId The benefit type in Gusto. - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture getSupported(Optional xGustoAPIVersion, String benefitId) { - GetV1BenefitsBenefitIdRequest request = - GetV1BenefitsBenefitIdRequest - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .benefitId(benefitId) - .build(); - AsyncRequestOperation operation - = new GetV1BenefitsBenefitId.Async(sdkConfiguration, _headers); - return operation.doRequest(request) - .thenCompose(operation::handleResponse); - } - - - /** - * Get company benefit summary by company benefit id. - * - *

    Returns summary benefit data for the requested company benefit id. - * - *

    Benefits containing PHI are only visible to applications with the `company_benefits:read:phi` scope. - * - *

    scope: `company_benefits:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The async call builder - */ - public GetV1BenefitsCompanyBenefitIdSummaryRequestBuilder getSummary() { - return new GetV1BenefitsCompanyBenefitIdSummaryRequestBuilder(sdkConfiguration); - } - - /** - * Get company benefit summary by company benefit id. - * - *

    Returns summary benefit data for the requested company benefit id. - * - *

    Benefits containing PHI are only visible to applications with the `company_benefits:read:phi` scope. - * - *

    scope: `company_benefits:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param request The request object containing all the parameters for the API call. - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture getSummary(GetV1BenefitsCompanyBenefitIdSummaryRequest request) { - AsyncRequestOperation operation - = new GetV1BenefitsCompanyBenefitIdSummary.Async(sdkConfiguration, _headers); - return operation.doRequest(request) - .thenCompose(operation::handleResponse); - } - - /** * Get all employee benefits for a company benefit * @@ -798,58 +817,39 @@ public CompletableFutureReturns the field requirements for a given benefit type. + *

    Returns summary benefit data for the requested company benefit id. * - *

    scope: `benefits:read` + *

    Benefits containing PHI are only visible to applications with the `company_benefits:read:phi` scope. + * + *

    scope: `company_benefits:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public GetV1BenefitsBenefitsIdRequirementsRequestBuilder getRequirements() { - return new GetV1BenefitsBenefitsIdRequirementsRequestBuilder(sdkConfiguration); + public GetV1BenefitsCompanyBenefitIdSummaryRequestBuilder getSummary() { + return new GetV1BenefitsCompanyBenefitIdSummaryRequestBuilder(sdkConfiguration); } /** - * Get benefit fields requirements by benefit type - * - *

    Returns the field requirements for a given benefit type. - * - *

    scope: `benefits:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. + * Get company benefit summary by company benefit id. * - * @param benefitId The benefit type in Gusto. - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture getRequirements(String benefitId) { - return getRequirements(Optional.empty(), benefitId); - } - - /** - * Get benefit fields requirements by benefit type + *

    Returns summary benefit data for the requested company benefit id. * - *

    Returns the field requirements for a given benefit type. + *

    Benefits containing PHI are only visible to applications with the `company_benefits:read:phi` scope. * - *

    scope: `benefits:read` + *

    scope: `company_benefits:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param benefitId The benefit type in Gusto. - * @return {@code CompletableFuture} - The async response + * @param request The request object containing all the parameters for the API call. + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getRequirements(Optional xGustoAPIVersion, String benefitId) { - GetV1BenefitsBenefitsIdRequirementsRequest request = - GetV1BenefitsBenefitsIdRequirementsRequest - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .benefitId(benefitId) - .build(); - AsyncRequestOperation operation - = new GetV1BenefitsBenefitsIdRequirements.Async(sdkConfiguration, _headers); + public CompletableFuture getSummary(GetV1BenefitsCompanyBenefitIdSummaryRequest request) { + AsyncRequestOperation operation + = new GetV1BenefitsCompanyBenefitIdSummary.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncContractorPaymentGroups.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncContractorPaymentGroups.java index 36bf15e98..d32839bb9 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncContractorPaymentGroups.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncContractorPaymentGroups.java @@ -74,10 +74,14 @@ public ContractorPaymentGroups sync() { /** - * Get contractor payment groups for a company + * Preview a contractor payment group * - *

    Returns a list of minimal contractor payment groups within a given time period, including totals but - * not associated contractor payments. + *

    Preview a group of contractor payments. Request will validate inputs and return preview of the + * contractor payment group including the expected `debit_date`. The `uuid` field will be null in the + * response. + * + *

    The returned `creation_token` is a required parameter in order to create the contractor payment + * group. * *

    scope: `payrolls:read` * @@ -85,36 +89,79 @@ public ContractorPaymentGroups sync() { * * @return The async call builder */ - public GetV1CompaniesCompanyIdContractorPaymentGroupsRequestBuilder getList() { - return new GetV1CompaniesCompanyIdContractorPaymentGroupsRequestBuilder(sdkConfiguration); + public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBuilder preview() { + return new PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBuilder(sdkConfiguration); } /** - * Get contractor payment groups for a company + * Preview a contractor payment group * - *

    Returns a list of minimal contractor payment groups within a given time period, including totals but - * not associated contractor payments. + *

    Preview a group of contractor payments. Request will validate inputs and return preview of the + * contractor payment group including the expected `debit_date`. The `uuid` field will be null in the + * response. + * + *

    The returned `creation_token` is a required parameter in order to create the contractor payment + * group. * *

    scope: `payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param request The request object containing all the parameters for the API call. - * @return {@code CompletableFuture} - The async response + * @param companyId The UUID of the company + * @param requestBody + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getList(GetV1CompaniesCompanyIdContractorPaymentGroupsRequest request) { - AsyncRequestOperation operation - = new GetV1CompaniesCompanyIdContractorPaymentGroups.Async(sdkConfiguration, _headers); + public CompletableFuture preview(String companyId, PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBody requestBody) { + return preview(Optional.empty(), companyId, requestBody); + } + + /** + * Preview a contractor payment group + * + *

    Preview a group of contractor payments. Request will validate inputs and return preview of the + * contractor payment group including the expected `debit_date`. The `uuid` field will be null in the + * response. + * + *

    The returned `creation_token` is a required parameter in order to create the contractor payment + * group. + * + *

    scope: `payrolls:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company + * @param requestBody + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture preview( + Optional xGustoAPIVersion, String companyId, + PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBody requestBody) { + PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequest request = + PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) + .requestBody(requestBody) + .build(); + AsyncRequestOperation operation + = new PostV1CompaniesCompanyIdContractorPaymentGroupsPreview.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Create a contractor payment group + * Fund a contractor payment group [DEMO] * - *

    Pay a group of contractors. Information needed depends on the contractor's wage type (hourly vs - * fixed) + *

    > 🚧 Demo action + * > This action is only available in the Demo environment + * + *

    Simulate funding a contractor payment group. Funding only occurs automatically in the production + * environment when bank transactions are generated. Use this action in the demo environment to + * transition a contractor payment group's `status` from `Unfunded` to `Funded`. + * + *

    A `Funded` status is required for generating a contractor payment receipt. * *

    scope: `payrolls:run` * @@ -122,69 +169,72 @@ public CompletableFuture * * @return The async call builder */ - public PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBuilder create() { - return new PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBuilder(sdkConfiguration); + public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequestBuilder fund() { + return new PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequestBuilder(sdkConfiguration); } /** - * Create a contractor payment group + * Fund a contractor payment group [DEMO] * - *

    Pay a group of contractors. Information needed depends on the contractor's wage type (hourly vs - * fixed) + *

    > 🚧 Demo action + * > This action is only available in the Demo environment + * + *

    Simulate funding a contractor payment group. Funding only occurs automatically in the production + * environment when bank transactions are generated. Use this action in the demo environment to + * transition a contractor payment group's `status` from `Unfunded` to `Funded`. + * + *

    A `Funded` status is required for generating a contractor payment receipt. * *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company - * @param requestBody - * @return {@code CompletableFuture} - The async response + * @param contractorPaymentGroupUuid The UUID of the contractor payment group + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture create(String companyId, PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBody requestBody) { - return create(Optional.empty(), companyId, requestBody); + public CompletableFuture fund(String contractorPaymentGroupUuid) { + return fund(Optional.empty(), contractorPaymentGroupUuid); } /** - * Create a contractor payment group + * Fund a contractor payment group [DEMO] * - *

    Pay a group of contractors. Information needed depends on the contractor's wage type (hourly vs - * fixed) + *

    > 🚧 Demo action + * > This action is only available in the Demo environment + * + *

    Simulate funding a contractor payment group. Funding only occurs automatically in the production + * environment when bank transactions are generated. Use this action in the demo environment to + * transition a contractor payment group's `status` from `Unfunded` to `Funded`. + * + *

    A `Funded` status is required for generating a contractor payment receipt. * *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyId The UUID of the company - * @param requestBody - * @return {@code CompletableFuture} - The async response + * @param contractorPaymentGroupUuid The UUID of the contractor payment group + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture create( - Optional xGustoAPIVersion, String companyId, - PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBody requestBody) { - PostV1CompaniesCompanyIdContractorPaymentGroupsRequest request = - PostV1CompaniesCompanyIdContractorPaymentGroupsRequest + public CompletableFuture fund(Optional xGustoAPIVersion, String contractorPaymentGroupUuid) { + PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest request = + PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .companyId(companyId) - .requestBody(requestBody) + .contractorPaymentGroupUuid(contractorPaymentGroupUuid) .build(); - AsyncRequestOperation operation - = new PostV1CompaniesCompanyIdContractorPaymentGroups.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new PutV1ContractorPaymentGroupsContractorPaymentGroupIdFund.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Preview a contractor payment group - * - *

    Preview a group of contractor payments. Request will validate inputs and return preview of the - * contractor payment group including the expected `debit_date`. The `uuid` field will be null in the - * response. + * Get contractor payment groups for a company * - *

    The returned `creation_token` is a required parameter in order to create the contractor payment - * group. + *

    Returns a list of minimal contractor payment groups within a given time period, including totals but + * not associated contractor payments. * *

    scope: `payrolls:read` * @@ -192,63 +242,92 @@ public CompletableFuturePreview a group of contractor payments. Request will validate inputs and return preview of the - * contractor payment group including the expected `debit_date`. The `uuid` field will be null in the - * response. + * Get contractor payment groups for a company * - *

    The returned `creation_token` is a required parameter in order to create the contractor payment - * group. + *

    Returns a list of minimal contractor payment groups within a given time period, including totals but + * not associated contractor payments. * *

    scope: `payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * + * @param request The request object containing all the parameters for the API call. + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getList(GetV1CompaniesCompanyIdContractorPaymentGroupsRequest request) { + AsyncRequestOperation operation + = new GetV1CompaniesCompanyIdContractorPaymentGroups.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Create a contractor payment group + * + *

    Pay a group of contractors. Information needed depends on the contractor's wage type (hourly vs + * fixed) + * + *

    scope: `payrolls:run` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBuilder create() { + return new PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBuilder(sdkConfiguration); + } + + /** + * Create a contractor payment group + * + *

    Pay a group of contractors. Information needed depends on the contractor's wage type (hourly vs + * fixed) + * + *

    scope: `payrolls:run` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * * @param companyId The UUID of the company * @param requestBody - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture preview(String companyId, PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBody requestBody) { - return preview(Optional.empty(), companyId, requestBody); + public CompletableFuture create(String companyId, PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBody requestBody) { + return create(Optional.empty(), companyId, requestBody); } /** - * Preview a contractor payment group - * - *

    Preview a group of contractor payments. Request will validate inputs and return preview of the - * contractor payment group including the expected `debit_date`. The `uuid` field will be null in the - * response. + * Create a contractor payment group * - *

    The returned `creation_token` is a required parameter in order to create the contractor payment - * group. + *

    Pay a group of contractors. Information needed depends on the contractor's wage type (hourly vs + * fixed) * - *

    scope: `payrolls:read` + *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyId The UUID of the company * @param requestBody - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture preview( - Optional xGustoAPIVersion, String companyId, - PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBody requestBody) { - PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequest request = - PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequest + public CompletableFuture create( + Optional xGustoAPIVersion, String companyId, + PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBody requestBody) { + PostV1CompaniesCompanyIdContractorPaymentGroupsRequest request = + PostV1CompaniesCompanyIdContractorPaymentGroupsRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .companyId(companyId) .requestBody(requestBody) .build(); - AsyncRequestOperation operation - = new PostV1CompaniesCompanyIdContractorPaymentGroupsPreview.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new PostV1CompaniesCompanyIdContractorPaymentGroups.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } @@ -282,7 +361,7 @@ public GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder get() * @return {@code CompletableFuture} - The async response */ public CompletableFuture get(String contractorPaymentGroupUuid) { - return get(contractorPaymentGroupUuid, Optional.empty()); + return get(Optional.empty(), contractorPaymentGroupUuid); } /** @@ -294,16 +373,16 @@ public CompletableFutureIf set, this operation will use Security#companyAccessAuth from the global security. * - * @param contractorPaymentGroupUuid The UUID of the contractor payment group * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param contractorPaymentGroupUuid The UUID of the contractor payment group * @return {@code CompletableFuture} - The async response */ - public CompletableFuture get(String contractorPaymentGroupUuid, Optional xGustoAPIVersion) { + public CompletableFuture get(Optional xGustoAPIVersion, String contractorPaymentGroupUuid) { GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest request = GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest .builder() - .contractorPaymentGroupUuid(contractorPaymentGroupUuid) .xGustoAPIVersion(xGustoAPIVersion) + .contractorPaymentGroupUuid(contractorPaymentGroupUuid) .build(); AsyncRequestOperation operation = new GetV1ContractorPaymentGroupsContractorPaymentGroupId.Async(sdkConfiguration, _headers); @@ -342,7 +421,7 @@ public DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder del * @return {@code CompletableFuture} - The async response */ public CompletableFuture delete(String contractorPaymentGroupUuid) { - return delete(contractorPaymentGroupUuid, Optional.empty()); + return delete(Optional.empty(), contractorPaymentGroupUuid); } /** @@ -355,16 +434,16 @@ public CompletableFutureIf set, this operation will use Security#companyAccessAuth from the global security. * - * @param contractorPaymentGroupUuid The UUID of the contractor payment group * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param contractorPaymentGroupUuid The UUID of the contractor payment group * @return {@code CompletableFuture} - The async response */ - public CompletableFuture delete(String contractorPaymentGroupUuid, Optional xGustoAPIVersion) { + public CompletableFuture delete(Optional xGustoAPIVersion, String contractorPaymentGroupUuid) { DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest request = DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest .builder() - .contractorPaymentGroupUuid(contractorPaymentGroupUuid) .xGustoAPIVersion(xGustoAPIVersion) + .contractorPaymentGroupUuid(contractorPaymentGroupUuid) .build(); AsyncRequestOperation operation = new DeleteV1ContractorPaymentGroupsContractorPaymentGroupId.Async(sdkConfiguration, _headers); @@ -373,85 +452,6 @@ public CompletableFuture> 🚧 Demo action - * > This action is only available in the Demo environment - * - *

    Simulate funding a contractor payment group. Funding only occurs automatically in the production - * environment when bank transactions are generated. Use this action in the demo environment to - * transition a contractor payment group's `status` from `Unfunded` to `Funded`. - * - *

    A `Funded` status is required for generating a contractor payment receipt. - * - *

    scope: `payrolls:run` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The async call builder - */ - public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequestBuilder fund() { - return new PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequestBuilder(sdkConfiguration); - } - - /** - * Fund a contractor payment group [DEMO] - * - *

    > 🚧 Demo action - * > This action is only available in the Demo environment - * - *

    Simulate funding a contractor payment group. Funding only occurs automatically in the production - * environment when bank transactions are generated. Use this action in the demo environment to - * transition a contractor payment group's `status` from `Unfunded` to `Funded`. - * - *

    A `Funded` status is required for generating a contractor payment receipt. - * - *

    scope: `payrolls:run` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param contractorPaymentGroupUuid The UUID of the contractor payment group - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture fund(String contractorPaymentGroupUuid) { - return fund(contractorPaymentGroupUuid, Optional.empty()); - } - - /** - * Fund a contractor payment group [DEMO] - * - *

    > 🚧 Demo action - * > This action is only available in the Demo environment - * - *

    Simulate funding a contractor payment group. Funding only occurs automatically in the production - * environment when bank transactions are generated. Use this action in the demo environment to - * transition a contractor payment group's `status` from `Unfunded` to `Funded`. - * - *

    A `Funded` status is required for generating a contractor payment receipt. - * - *

    scope: `payrolls:run` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param contractorPaymentGroupUuid The UUID of the contractor payment group - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture fund(String contractorPaymentGroupUuid, Optional xGustoAPIVersion) { - PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest request = - PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest - .builder() - .contractorPaymentGroupUuid(contractorPaymentGroupUuid) - .xGustoAPIVersion(xGustoAPIVersion) - .build(); - AsyncRequestOperation operation - = new PutV1ContractorPaymentGroupsContractorPaymentGroupIdFund.Async(sdkConfiguration, _headers); - return operation.doRequest(request) - .thenCompose(operation::handleResponse); - } - - /** * Get partner disbursements for a contractor payment group * @@ -480,7 +480,7 @@ public GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder getV1Con * @return {@code CompletableFuture} - The async response */ public CompletableFuture getV1ContractorPaymentGroupsIdPartnerDisbursements(String id) { - return getV1ContractorPaymentGroupsIdPartnerDisbursements(id, Optional.empty()); + return getV1ContractorPaymentGroupsIdPartnerDisbursements(Optional.empty(), id); } /** @@ -492,16 +492,16 @@ public CompletableFutureIf set, this operation will use Security#companyAccessAuth from the global security. * - * @param id The UUID of the contractor payment group * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param id The UUID of the contractor payment group * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getV1ContractorPaymentGroupsIdPartnerDisbursements(String id, Optional xGustoAPIVersion) { + public CompletableFuture getV1ContractorPaymentGroupsIdPartnerDisbursements(Optional xGustoAPIVersion, String id) { GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest request = GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest .builder() - .id(id) .xGustoAPIVersion(xGustoAPIVersion) + .id(id) .build(); AsyncRequestOperation operation = new GetV1ContractorPaymentGroupsIdPartnerDisbursements.Async(sdkConfiguration, _headers); @@ -538,7 +538,7 @@ public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder patchV * @return {@code CompletableFuture} - The async response */ public CompletableFuture patchV1ContractorPaymentGroupsIdPartnerDisbursements(String id) { - return patchV1ContractorPaymentGroupsIdPartnerDisbursements(id, Optional.empty(), Optional.empty()); + return patchV1ContractorPaymentGroupsIdPartnerDisbursements(Optional.empty(), id, Optional.empty()); } /** @@ -550,19 +550,19 @@ public CompletableFutureIf set, this operation will use Security#companyAccessAuth from the global security. * - * @param id The UUID of the contractor payment group * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param id The UUID of the contractor payment group * @param requestBody * @return {@code CompletableFuture} - The async response */ public CompletableFuture patchV1ContractorPaymentGroupsIdPartnerDisbursements( - String id, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String id, Optional requestBody) { PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest request = PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest .builder() - .id(id) .xGustoAPIVersion(xGustoAPIVersion) + .id(id) .requestBody(requestBody) .build(); AsyncRequestOperation operation diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncContractorPayments.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncContractorPayments.java index 8556a8720..8da34f073 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncContractorPayments.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncContractorPayments.java @@ -20,6 +20,7 @@ import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ContractorPaymentsContractorPaymentUuidFundRequest; import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ContractorPaymentsContractorPaymentUuidReceiptHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ContractorPaymentsContractorPaymentUuidReceiptRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ContractorsContractorUuidPaymentsRequest; import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1CompaniesCompanyIdContractorPaymentsHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1CompaniesCompanyIdContractorPaymentsRequest; import com.gusto.embedded_api_v_2025_11_15.models.operations.async.DeleteV1CompaniesCompanyIdContractorPaymentContractorPaymentRequestBuilder; @@ -36,6 +37,8 @@ import com.gusto.embedded_api_v_2025_11_15.models.operations.async.GetV1ContractorPaymentsContractorPaymentUuidFundResponse; import com.gusto.embedded_api_v_2025_11_15.models.operations.async.GetV1ContractorPaymentsContractorPaymentUuidReceiptRequestBuilder; import com.gusto.embedded_api_v_2025_11_15.models.operations.async.GetV1ContractorPaymentsContractorPaymentUuidReceiptResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.async.GetV1ContractorsContractorUuidPaymentsRequestBuilder; +import com.gusto.embedded_api_v_2025_11_15.models.operations.async.GetV1ContractorsContractorUuidPaymentsResponse; import com.gusto.embedded_api_v_2025_11_15.models.operations.async.PostV1CompaniesCompanyIdContractorPaymentsRequestBuilder; import com.gusto.embedded_api_v_2025_11_15.models.operations.async.PostV1CompaniesCompanyIdContractorPaymentsResponse; import com.gusto.embedded_api_v_2025_11_15.operations.DeleteV1CompaniesCompanyIdContractorPaymentContractorPayment; @@ -45,6 +48,7 @@ import com.gusto.embedded_api_v_2025_11_15.operations.GetV1ContractorPaymentsContractorPaymentIdPdf; import com.gusto.embedded_api_v_2025_11_15.operations.GetV1ContractorPaymentsContractorPaymentUuidFund; import com.gusto.embedded_api_v_2025_11_15.operations.GetV1ContractorPaymentsContractorPaymentUuidReceipt; +import com.gusto.embedded_api_v_2025_11_15.operations.GetV1ContractorsContractorUuidPayments; import com.gusto.embedded_api_v_2025_11_15.operations.PostV1CompaniesCompanyIdContractorPayments; import com.gusto.embedded_api_v_2025_11_15.utils.Headers; import java.lang.String; @@ -73,167 +77,99 @@ public ContractorPayments sync() { /** - * Get a single contractor payment receipt + * Get contractor payments * - *

    Returns a contractor payment receipt. + *

    Returns a paginated list of payments for a single contractor. * - *

    Notes: - * * Receipts are only available for direct deposit payments and are only available once those payments - * have been funded. - * * Payroll Receipt requests for payrolls which do not have receipts available (e.g. payment by check) - * will return a 404 status. - * * Hour and dollar amounts are returned as string representations of numeric decimals. - * * Dollar amounts are represented to the cent. - * * If no data has yet be inserted for a given field, it defaults to “0.00” (for fixed amounts). + *

    Results are sortable by `check_date` or `created_at`. Append `:asc` or `:desc` to control direction + * (e.g., `check_date:desc`). * - *

    scope: `payrolls:read` + *

    scope: `contractor_pay_stubs:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public GetV1ContractorPaymentsContractorPaymentUuidReceiptRequestBuilder getReceipt() { - return new GetV1ContractorPaymentsContractorPaymentUuidReceiptRequestBuilder(sdkConfiguration); + public GetV1ContractorsContractorUuidPaymentsRequestBuilder getV1ContractorsContractorUuidPayments() { + return new GetV1ContractorsContractorUuidPaymentsRequestBuilder(sdkConfiguration); } /** - * Get a single contractor payment receipt + * Get contractor payments * - *

    Returns a contractor payment receipt. + *

    Returns a paginated list of payments for a single contractor. * - *

    Notes: - * * Receipts are only available for direct deposit payments and are only available once those payments - * have been funded. - * * Payroll Receipt requests for payrolls which do not have receipts available (e.g. payment by check) - * will return a 404 status. - * * Hour and dollar amounts are returned as string representations of numeric decimals. - * * Dollar amounts are represented to the cent. - * * If no data has yet be inserted for a given field, it defaults to “0.00” (for fixed amounts). + *

    Results are sortable by `check_date` or `created_at`. Append `:asc` or `:desc` to control direction + * (e.g., `check_date:desc`). * - *

    scope: `payrolls:read` + *

    scope: `contractor_pay_stubs:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param contractorPaymentUuid The UUID of the contractor payment - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture getReceipt(String contractorPaymentUuid) { - return getReceipt(Optional.empty(), contractorPaymentUuid); - } - - /** - * Get a single contractor payment receipt - * - *

    Returns a contractor payment receipt. - * - *

    Notes: - * * Receipts are only available for direct deposit payments and are only available once those payments - * have been funded. - * * Payroll Receipt requests for payrolls which do not have receipts available (e.g. payment by check) - * will return a 404 status. - * * Hour and dollar amounts are returned as string representations of numeric decimals. - * * Dollar amounts are represented to the cent. - * * If no data has yet be inserted for a given field, it defaults to “0.00” (for fixed amounts). - * - *

    scope: `payrolls:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param contractorPaymentUuid The UUID of the contractor payment - * @return {@code CompletableFuture} - The async response + * @param request The request object containing all the parameters for the API call. + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getReceipt(Optional xGustoAPIVersion, String contractorPaymentUuid) { - GetV1ContractorPaymentsContractorPaymentUuidReceiptRequest request = - GetV1ContractorPaymentsContractorPaymentUuidReceiptRequest - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .contractorPaymentUuid(contractorPaymentUuid) - .build(); - AsyncRequestOperation operation - = new GetV1ContractorPaymentsContractorPaymentUuidReceipt.Async(sdkConfiguration, _headers); + public CompletableFuture getV1ContractorsContractorUuidPayments(GetV1ContractorsContractorUuidPaymentsRequest request) { + AsyncRequestOperation operation + = new GetV1ContractorsContractorUuidPayments.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Fund a contractor payment [DEMO] - * - *

    > 🚧 Demo action - * > - * > This action is only available in the Demo environment - * - *

    Simulate funding a contractor payment. Funding only occurs automatically in the production - * environment when bank transactions are generated. Use this action in the demo environment to - * transition a contractor payment's `status` from `Unfunded` to `Funded`. + * Get a contractor payment PDF * - *

    A `Funded` status is required for generating a contractor payment receipt. + *

    Get a PDF document for a single contractor payment. * - *

    scope: `payrolls:run` + *

    scope: `payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public GetV1ContractorPaymentsContractorPaymentUuidFundRequestBuilder fund() { - return new GetV1ContractorPaymentsContractorPaymentUuidFundRequestBuilder(sdkConfiguration); + public GetV1ContractorPaymentsContractorPaymentIdPdfRequestBuilder getV1ContractorPaymentsContractorPaymentIdPdf() { + return new GetV1ContractorPaymentsContractorPaymentIdPdfRequestBuilder(sdkConfiguration); } /** - * Fund a contractor payment [DEMO] - * - *

    > 🚧 Demo action - * > - * > This action is only available in the Demo environment - * - *

    Simulate funding a contractor payment. Funding only occurs automatically in the production - * environment when bank transactions are generated. Use this action in the demo environment to - * transition a contractor payment's `status` from `Unfunded` to `Funded`. + * Get a contractor payment PDF * - *

    A `Funded` status is required for generating a contractor payment receipt. + *

    Get a PDF document for a single contractor payment. * - *

    scope: `payrolls:run` + *

    scope: `payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param contractorPaymentUuid The UUID of the contractor payment - * @return {@code CompletableFuture} - The async response + * @param contractorPaymentId The UUID of the contractor payment + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture fund(String contractorPaymentUuid) { - return fund(Optional.empty(), contractorPaymentUuid); + public CompletableFuture getV1ContractorPaymentsContractorPaymentIdPdf(String contractorPaymentId) { + return getV1ContractorPaymentsContractorPaymentIdPdf(Optional.empty(), contractorPaymentId); } /** - * Fund a contractor payment [DEMO] - * - *

    > 🚧 Demo action - * > - * > This action is only available in the Demo environment - * - *

    Simulate funding a contractor payment. Funding only occurs automatically in the production - * environment when bank transactions are generated. Use this action in the demo environment to - * transition a contractor payment's `status` from `Unfunded` to `Funded`. + * Get a contractor payment PDF * - *

    A `Funded` status is required for generating a contractor payment receipt. + *

    Get a PDF document for a single contractor payment. * - *

    scope: `payrolls:run` + *

    scope: `payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param contractorPaymentUuid The UUID of the contractor payment - * @return {@code CompletableFuture} - The async response + * @param contractorPaymentId The UUID of the contractor payment + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture fund(Optional xGustoAPIVersion, String contractorPaymentUuid) { - GetV1ContractorPaymentsContractorPaymentUuidFundRequest request = - GetV1ContractorPaymentsContractorPaymentUuidFundRequest + public CompletableFuture getV1ContractorPaymentsContractorPaymentIdPdf(Optional xGustoAPIVersion, String contractorPaymentId) { + GetV1ContractorPaymentsContractorPaymentIdPdfRequest request = + GetV1ContractorPaymentsContractorPaymentIdPdfRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .contractorPaymentUuid(contractorPaymentUuid) + .contractorPaymentId(contractorPaymentId) .build(); - AsyncRequestOperation operation - = new GetV1ContractorPaymentsContractorPaymentUuidFund.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new GetV1ContractorPaymentsContractorPaymentIdPdf.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } @@ -545,9 +481,18 @@ public CompletableFutureGet a PDF document for a single contractor payment. + *

    Returns a contractor payment receipt. + * + *

    Notes: + * * Receipts are only available for direct deposit payments and are only available once those payments + * have been funded. + * * Payroll Receipt requests for payrolls which do not have receipts available (e.g. payment by check) + * will return a 404 status. + * * Hour and dollar amounts are returned as string representations of numeric decimals. + * * Dollar amounts are represented to the cent. + * * If no data has yet be inserted for a given field, it defaults to “0.00” (for fixed amounts). * *

    scope: `payrolls:read` * @@ -555,48 +500,148 @@ public CompletableFutureGet a PDF document for a single contractor payment. + *

    Returns a contractor payment receipt. + * + *

    Notes: + * * Receipts are only available for direct deposit payments and are only available once those payments + * have been funded. + * * Payroll Receipt requests for payrolls which do not have receipts available (e.g. payment by check) + * will return a 404 status. + * * Hour and dollar amounts are returned as string representations of numeric decimals. + * * Dollar amounts are represented to the cent. + * * If no data has yet be inserted for a given field, it defaults to “0.00” (for fixed amounts). * *

    scope: `payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param contractorPaymentId The UUID of the contractor payment - * @return {@code CompletableFuture} - The async response + * @param contractorPaymentUuid The UUID of the contractor payment + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getV1ContractorPaymentsContractorPaymentIdPdf(String contractorPaymentId) { - return getV1ContractorPaymentsContractorPaymentIdPdf(Optional.empty(), contractorPaymentId); + public CompletableFuture getReceipt(String contractorPaymentUuid) { + return getReceipt(Optional.empty(), contractorPaymentUuid); } /** - * Get a contractor payment PDF + * Get a single contractor payment receipt * - *

    Get a PDF document for a single contractor payment. + *

    Returns a contractor payment receipt. + * + *

    Notes: + * * Receipts are only available for direct deposit payments and are only available once those payments + * have been funded. + * * Payroll Receipt requests for payrolls which do not have receipts available (e.g. payment by check) + * will return a 404 status. + * * Hour and dollar amounts are returned as string representations of numeric decimals. + * * Dollar amounts are represented to the cent. + * * If no data has yet be inserted for a given field, it defaults to “0.00” (for fixed amounts). * *

    scope: `payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param contractorPaymentId The UUID of the contractor payment - * @return {@code CompletableFuture} - The async response + * @param contractorPaymentUuid The UUID of the contractor payment + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getV1ContractorPaymentsContractorPaymentIdPdf(Optional xGustoAPIVersion, String contractorPaymentId) { - GetV1ContractorPaymentsContractorPaymentIdPdfRequest request = - GetV1ContractorPaymentsContractorPaymentIdPdfRequest + public CompletableFuture getReceipt(Optional xGustoAPIVersion, String contractorPaymentUuid) { + GetV1ContractorPaymentsContractorPaymentUuidReceiptRequest request = + GetV1ContractorPaymentsContractorPaymentUuidReceiptRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .contractorPaymentId(contractorPaymentId) + .contractorPaymentUuid(contractorPaymentUuid) .build(); - AsyncRequestOperation operation - = new GetV1ContractorPaymentsContractorPaymentIdPdf.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new GetV1ContractorPaymentsContractorPaymentUuidReceipt.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Fund a contractor payment [DEMO] + * + *

    > 🚧 Demo action + * > + * > This action is only available in the Demo environment + * + *

    Simulate funding a contractor payment. Funding only occurs automatically in the production + * environment when bank transactions are generated. Use this action in the demo environment to + * transition a contractor payment's `status` from `Unfunded` to `Funded`. + * + *

    A `Funded` status is required for generating a contractor payment receipt. + * + *

    scope: `payrolls:run` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public GetV1ContractorPaymentsContractorPaymentUuidFundRequestBuilder fund() { + return new GetV1ContractorPaymentsContractorPaymentUuidFundRequestBuilder(sdkConfiguration); + } + + /** + * Fund a contractor payment [DEMO] + * + *

    > 🚧 Demo action + * > + * > This action is only available in the Demo environment + * + *

    Simulate funding a contractor payment. Funding only occurs automatically in the production + * environment when bank transactions are generated. Use this action in the demo environment to + * transition a contractor payment's `status` from `Unfunded` to `Funded`. + * + *

    A `Funded` status is required for generating a contractor payment receipt. + * + *

    scope: `payrolls:run` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param contractorPaymentUuid The UUID of the contractor payment + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture fund(String contractorPaymentUuid) { + return fund(Optional.empty(), contractorPaymentUuid); + } + + /** + * Fund a contractor payment [DEMO] + * + *

    > 🚧 Demo action + * > + * > This action is only available in the Demo environment + * + *

    Simulate funding a contractor payment. Funding only occurs automatically in the production + * environment when bank transactions are generated. Use this action in the demo environment to + * transition a contractor payment's `status` from `Unfunded` to `Funded`. + * + *

    A `Funded` status is required for generating a contractor payment receipt. + * + *

    scope: `payrolls:run` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param contractorPaymentUuid The UUID of the contractor payment + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture fund(Optional xGustoAPIVersion, String contractorPaymentUuid) { + GetV1ContractorPaymentsContractorPaymentUuidFundRequest request = + GetV1ContractorPaymentsContractorPaymentUuidFundRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .contractorPaymentUuid(contractorPaymentUuid) + .build(); + AsyncRequestOperation operation + = new GetV1ContractorPaymentsContractorPaymentUuidFund.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncContractors.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncContractors.java index aebf19aea..0ad705d2f 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncContractors.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncContractors.java @@ -109,107 +109,10 @@ public Contractors sync() { /** - * Get contractors of a company - * - *

    Get all contractors, active and inactive, individual and business, for a company. - * - *

    scope: `contractors:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The async call builder - */ - public GetV1CompaniesCompanyUuidContractorsRequestBuilder list() { - return new GetV1CompaniesCompanyUuidContractorsRequestBuilder(sdkConfiguration); - } - - /** - * Get contractors of a company - * - *

    Get all contractors, active and inactive, individual and business, for a company. - * - *

    scope: `contractors:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param request The request object containing all the parameters for the API call. - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture list(GetV1CompaniesCompanyUuidContractorsRequest request) { - AsyncRequestOperation operation - = new GetV1CompaniesCompanyUuidContractors.Async(sdkConfiguration, _headers); - return operation.doRequest(request) - .thenCompose(operation::handleResponse); - } - - - /** - * Create a contractor - * - *

    Create an individual or business contractor. - * - *

    scope: `contractors:manage` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The async call builder - */ - public PostV1CompaniesCompanyUuidContractorsRequestBuilder create() { - return new PostV1CompaniesCompanyUuidContractorsRequestBuilder(sdkConfiguration); - } - - /** - * Create a contractor - * - *

    Create an individual or business contractor. - * - *

    scope: `contractors:manage` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param companyUuid The UUID of the company - * @param contractorCreateRequestBody Request body for creating a contractor. - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture create(String companyUuid, ContractorCreateRequestBody contractorCreateRequestBody) { - return create(Optional.empty(), companyUuid, contractorCreateRequestBody); - } - - /** - * Create a contractor - * - *

    Create an individual or business contractor. - * - *

    scope: `contractors:manage` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyUuid The UUID of the company - * @param contractorCreateRequestBody Request body for creating a contractor. - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture create( - Optional xGustoAPIVersion, String companyUuid, - ContractorCreateRequestBody contractorCreateRequestBody) { - PostV1CompaniesCompanyUuidContractorsRequest request = - PostV1CompaniesCompanyUuidContractorsRequest - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .companyUuid(companyUuid) - .contractorCreateRequestBody(contractorCreateRequestBody) - .build(); - AsyncRequestOperation operation - = new PostV1CompaniesCompanyUuidContractors.Async(sdkConfiguration, _headers); - return operation.doRequest(request) - .thenCompose(operation::handleResponse); - } - - - /** - * Get a contractor + * Get a contractor address * - *

    Get a contractor. + *

    The address of a contractor is used to determine certain tax information about them. Addresses are + * geocoded on create and update to ensure validity. * *

    scope: `contractors:read` * @@ -217,30 +120,32 @@ public CompletableFuture create( * * @return The async call builder */ - public GetV1ContractorsContractorUuidRequestBuilder get() { - return new GetV1ContractorsContractorUuidRequestBuilder(sdkConfiguration); + public GetV1ContractorsContractorUuidAddressRequestBuilder getAddress() { + return new GetV1ContractorsContractorUuidAddressRequestBuilder(sdkConfiguration); } /** - * Get a contractor + * Get a contractor address * - *

    Get a contractor. + *

    The address of a contractor is used to determine certain tax information about them. Addresses are + * geocoded on create and update to ensure validity. * *

    scope: `contractors:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param contractorUuid The UUID of the contractor - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture get(String contractorUuid) { - return get(Optional.empty(), contractorUuid, Optional.empty()); + public CompletableFuture getAddress(String contractorUuid) { + return getAddress(Optional.empty(), contractorUuid); } /** - * Get a contractor + * Get a contractor address * - *

    Get a contractor. + *

    The address of a contractor is used to determine certain tax information about them. Addresses are + * geocoded on create and update to ensure validity. * *

    scope: `contractors:read` * @@ -248,36 +153,32 @@ public CompletableFuture get(String cont * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param contractorUuid The UUID of the contractor - * @param include Include the requested attribute(s) in each contractor response. Multiple options are comma separated. - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture get( - Optional xGustoAPIVersion, String contractorUuid, - Optional> include) { - GetV1ContractorsContractorUuidRequest request = - GetV1ContractorsContractorUuidRequest + public CompletableFuture getAddress(Optional xGustoAPIVersion, String contractorUuid) { + GetV1ContractorsContractorUuidAddressRequest request = + GetV1ContractorsContractorUuidAddressRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .contractorUuid(contractorUuid) - .include(include) .build(); - AsyncRequestOperation operation - = new GetV1ContractorsContractorUuid.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new GetV1ContractorsContractorUuidAddress.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Update a contractor + * Create or update a contractor's address * - *

    Update a contractor. + *

    The address of a contractor is used to determine certain tax information about them. Addresses are + * geocoded on create and update to ensure validity. * - *

    > 🚧 Warning + *

    > 🚧 Contractors can only have one address. * > - * > Watch out when changing a contractor's type (when the contractor is finished onboarding). - * Specifically, changing contractor type can be dangerous since Gusto won't recognize and file two - * separate 1099s if they simply change from business to individual + * > When a contractor is created, an address is created for them by default. Updating the address + * will replace the existing address. * *

    scope: `contractors:write` * @@ -285,43 +186,43 @@ public CompletableFuture get( * * @return The async call builder */ - public PutV1ContractorsContractorUuidRequestBuilder update() { - return new PutV1ContractorsContractorUuidRequestBuilder(sdkConfiguration); + public PutV1ContractorsContractorUuidAddressRequestBuilder updateAddress() { + return new PutV1ContractorsContractorUuidAddressRequestBuilder(sdkConfiguration); } /** - * Update a contractor + * Create or update a contractor's address * - *

    Update a contractor. + *

    The address of a contractor is used to determine certain tax information about them. Addresses are + * geocoded on create and update to ensure validity. * - *

    > 🚧 Warning + *

    > 🚧 Contractors can only have one address. * > - * > Watch out when changing a contractor's type (when the contractor is finished onboarding). - * Specifically, changing contractor type can be dangerous since Gusto won't recognize and file two - * separate 1099s if they simply change from business to individual + * > When a contractor is created, an address is created for them by default. Updating the address + * will replace the existing address. * *

    scope: `contractors:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param contractorUuid The UUID of the contractor - * @param contractorUpdateRequestBody Request body for updating a contractor. - * @return {@code CompletableFuture} - The async response + * @param contractorAddressUpdateBody + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture update(String contractorUuid, ContractorUpdateRequestBody contractorUpdateRequestBody) { - return update(Optional.empty(), contractorUuid, contractorUpdateRequestBody); + public CompletableFuture updateAddress(String contractorUuid, ContractorAddressUpdateBody contractorAddressUpdateBody) { + return updateAddress(Optional.empty(), contractorUuid, contractorAddressUpdateBody); } /** - * Update a contractor + * Create or update a contractor's address * - *

    Update a contractor. + *

    The address of a contractor is used to determine certain tax information about them. Addresses are + * geocoded on create and update to ensure validity. * - *

    > 🚧 Warning + *

    > 🚧 Contractors can only have one address. * > - * > Watch out when changing a contractor's type (when the contractor is finished onboarding). - * Specifically, changing contractor type can be dangerous since Gusto won't recognize and file two - * separate 1099s if they simply change from business to individual + * > When a contractor is created, an address is created for them by default. Updating the address + * will replace the existing address. * *

    scope: `contractors:write` * @@ -329,269 +230,358 @@ public CompletableFuture update(String c * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param contractorUuid The UUID of the contractor - * @param contractorUpdateRequestBody Request body for updating a contractor. - * @return {@code CompletableFuture} - The async response + * @param contractorAddressUpdateBody + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture update( - Optional xGustoAPIVersion, String contractorUuid, - ContractorUpdateRequestBody contractorUpdateRequestBody) { - PutV1ContractorsContractorUuidRequest request = - PutV1ContractorsContractorUuidRequest + public CompletableFuture updateAddress( + Optional xGustoAPIVersion, String contractorUuid, + ContractorAddressUpdateBody contractorAddressUpdateBody) { + PutV1ContractorsContractorUuidAddressRequest request = + PutV1ContractorsContractorUuidAddressRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .contractorUuid(contractorUuid) - .contractorUpdateRequestBody(contractorUpdateRequestBody) + .contractorAddressUpdateBody(contractorAddressUpdateBody) .build(); - AsyncRequestOperation operation - = new PutV1ContractorsContractorUuid.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new PutV1ContractorsContractorUuidAddress.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Delete a contractor + * List contractor payment details * - *

    A contractor can only be deleted when there are no contractor payments. + *

    Get payment details for contractors in a company. This endpoint returns a list of all contractors + * associated with the specified company, including their payment methods and bank account details + * if they are paid via direct deposit. * - *

    scope: `contractors:manage` + *

    For contractors paid by direct deposit, the response includes their bank account information + * with sensitive data masked for security. The payment details also include information about + * how their payments are split if they have multiple bank accounts configured. * - *

    If set, this operation will use Security#companyAccessAuth from the global security. + *

    For contractors paid by check, only the basic payment method information is returned. * - * @return The async call builder - */ - public DeleteV1ContractorsContractorUuidRequestBuilder delete() { - return new DeleteV1ContractorsContractorUuidRequestBuilder(sdkConfiguration); - } - - /** - * Delete a contractor + *

    ### Response Details + * - For direct deposit contractors: + * - Bank account details (masked) + * - Payment splits configuration + * - Routing numbers + * - Account types + * - For check payments: + * - Basic payment method designation * - *

    A contractor can only be deleted when there are no contractor payments. + *

    ### Common Use Cases + * - Fetching contractor payment information for payroll processing + * - Verifying contractor payment methods + * - Reviewing payment split configurations * - *

    scope: `contractors:manage` + *

    `encrypted_account_number` is available only with the additional scope + * `contractor_payment_methods:read:account_numbers`. + * + *

    scope: `contractor_payment_methods:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param contractorUuid The UUID of the contractor - * @return {@code CompletableFuture} - The async response + * @return The async call builder */ - public CompletableFuture delete(String contractorUuid) { - return delete(Optional.empty(), contractorUuid); + public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder getV1CompaniesCompanyIdContractorsPaymentDetails() { + return new GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder(sdkConfiguration); } /** - * Delete a contractor - * - *

    A contractor can only be deleted when there are no contractor payments. + * List contractor payment details * - *

    scope: `contractors:manage` + *

    Get payment details for contractors in a company. This endpoint returns a list of all contractors + * associated with the specified company, including their payment methods and bank account details + * if they are paid via direct deposit. + * + *

    For contractors paid by direct deposit, the response includes their bank account information + * with sensitive data masked for security. The payment details also include information about + * how their payments are split if they have multiple bank accounts configured. + * + *

    For contractors paid by check, only the basic payment method information is returned. + * + *

    ### Response Details + * - For direct deposit contractors: + * - Bank account details (masked) + * - Payment splits configuration + * - Routing numbers + * - Account types + * - For check payments: + * - Basic payment method designation + * + *

    ### Common Use Cases + * - Fetching contractor payment information for payroll processing + * - Verifying contractor payment methods + * - Reviewing payment split configurations + * + *

    `encrypted_account_number` is available only with the additional scope + * `contractor_payment_methods:read:account_numbers`. + * + *

    scope: `contractor_payment_methods:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param companyId The UUID of the company. This identifies the company whose contractor payment details you want to retrieve. + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getV1CompaniesCompanyIdContractorsPaymentDetails(String companyId) { + return getV1CompaniesCompanyIdContractorsPaymentDetails( + Optional.empty(), companyId, Optional.empty(), + Optional.empty()); + } + + /** + * List contractor payment details + * + *

    Get payment details for contractors in a company. This endpoint returns a list of all contractors + * associated with the specified company, including their payment methods and bank account details + * if they are paid via direct deposit. + * + *

    For contractors paid by direct deposit, the response includes their bank account information + * with sensitive data masked for security. The payment details also include information about + * how their payments are split if they have multiple bank accounts configured. + * + *

    For contractors paid by check, only the basic payment method information is returned. + * + *

    ### Response Details + * - For direct deposit contractors: + * - Bank account details (masked) + * - Payment splits configuration + * - Routing numbers + * - Account types + * - For check payments: + * - Basic payment method designation + * + *

    ### Common Use Cases + * - Fetching contractor payment information for payroll processing + * - Verifying contractor payment methods + * - Reviewing payment split configurations + * + *

    `encrypted_account_number` is available only with the additional scope + * `contractor_payment_methods:read:account_numbers`. + * + *

    scope: `contractor_payment_methods:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param contractorUuid The UUID of the contractor - * @return {@code CompletableFuture} - The async response + * @param companyId The UUID of the company. This identifies the company whose contractor payment details you want to retrieve. + * @param contractorUuid Optional filter to get payment details for a specific contractor. When provided, the response will only include payment details for this contractor. + * @param contractorPaymentGroupUuid 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. + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture delete(Optional xGustoAPIVersion, String contractorUuid) { - DeleteV1ContractorsContractorUuidRequest request = - DeleteV1ContractorsContractorUuidRequest + public CompletableFuture getV1CompaniesCompanyIdContractorsPaymentDetails( + Optional xGustoAPIVersion, String companyId, + Optional contractorUuid, Optional contractorPaymentGroupUuid) { + GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest request = + GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) .contractorUuid(contractorUuid) + .contractorPaymentGroupUuid(contractorPaymentGroupUuid) .build(); - AsyncRequestOperation operation - = new DeleteV1ContractorsContractorUuid.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new GetV1CompaniesCompanyIdContractorsPaymentDetails.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Get the contractor's onboarding status + * Schedule a contractor rehire * - *

    Retrieves a contractor's onboarding status. The data returned helps inform the required onboarding - * steps and respective completion status. + *

    ## Purpose + * Schedules a contractor rehire for a given date. Creates a new employment record for the contractor. * - *

    ## onboarding_status + *

    ## Prerequisites + * Before calling this endpoint: + * 1. The contractor must be inactive (previously dismissed) + * 2. The contractor must not already have an upcoming employment * - *

    ### Admin-facilitated onboarding - * | onboarding_status | Description | - * |:------------------|------------:| - * | `admin_onboarding_incomplete` | Admin needs to enter basic information about the contractor. | - * | `admin_onboarding_review` | All information has been completed and admin needs to confirm - * onboarding. | - * | `onboarding_completed` | Contractor has been fully onboarded and verified. | + *

    ## Related webhooks + * - `contractor.reactivated`: Fires when the contractor becomes active again (on or after start_date) * - *

    ### Contractor self-onboarding + *

    scope: `contractors:write` * - *

    | onboarding_status | Description | - * | --- | ----------- | - * | `admin_onboarding_incomplete` | Admin needs to enter basic information about the contractor. | - * | `self_onboarding_not_invited` | Admin has the intention to invite the contractor to self-onboard - * (e.g., marking a checkbox), but the system has not yet sent the invitation. | - * | `self_onboarding_invited` | Contractor has been sent an invitation to self-onboard. | - * | `self_onboarding_started` | Contractor has started the self-onboarding process. | - * | `self_onboarding_review` | Admin needs to review contractors's entered information and confirm - * onboarding. | - * | `onboarding_completed` | Contractor has been fully onboarded and verified. | + *

    If set, this operation will use Security#companyAccessAuth from the global security. * - *

    ## onboarding_steps + * @return The async call builder + */ + public PostV1ContractorsContractorUuidRehireRequestBuilder postV1ContractorsContractorUuidRehire() { + return new PostV1ContractorsContractorUuidRehireRequestBuilder(sdkConfiguration); + } + + /** + * Schedule a contractor rehire * - *

    | onboarding_steps | Requirement(s) to be completed | - * |:-----------------|-------------------------------:| - * | `basic_details` | Add individual contractor's first name, last name, social security number or - * Business name and EIN depending on the contractor type | - * | `add_address` | Add contractor address. | - * | `compensation_details` | Add contractor compensation. | - * | `payment_details` | (optional) Set up contractor's direct deposit or set to check. | - * | `sign_documents` | Contractor forms (e.g., W9) are generated & signed. | - * | `file_new_hire_report` | Contractor new hire report is generated. | + *

    ## Purpose + * Schedules a contractor rehire for a given date. Creates a new employment record for the contractor. * - *

    scope: `contractors:read` + *

    ## Prerequisites + * Before calling this endpoint: + * 1. The contractor must be inactive (previously dismissed) + * 2. The contractor must not already have an upcoming employment + * + *

    ## Related webhooks + * - `contractor.reactivated`: Fires when the contractor becomes active again (on or after start_date) + * + *

    scope: `contractors:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @return The async call builder + * @param contractorUuid The UUID of the contractor + * @return {@code CompletableFuture} - The async response */ - public GetV1ContractorsContractorUuidOnboardingStatusRequestBuilder getOnboardingStatus() { - return new GetV1ContractorsContractorUuidOnboardingStatusRequestBuilder(sdkConfiguration); + public CompletableFuture postV1ContractorsContractorUuidRehire(String contractorUuid) { + return postV1ContractorsContractorUuidRehire(Optional.empty(), contractorUuid, Optional.empty()); } /** - * Get the contractor's onboarding status + * Schedule a contractor rehire * - *

    Retrieves a contractor's onboarding status. The data returned helps inform the required onboarding - * steps and respective completion status. + *

    ## Purpose + * Schedules a contractor rehire for a given date. Creates a new employment record for the contractor. * - *

    ## onboarding_status + *

    ## Prerequisites + * Before calling this endpoint: + * 1. The contractor must be inactive (previously dismissed) + * 2. The contractor must not already have an upcoming employment * - *

    ### Admin-facilitated onboarding - * | onboarding_status | Description | - * |:------------------|------------:| - * | `admin_onboarding_incomplete` | Admin needs to enter basic information about the contractor. | - * | `admin_onboarding_review` | All information has been completed and admin needs to confirm - * onboarding. | - * | `onboarding_completed` | Contractor has been fully onboarded and verified. | + *

    ## Related webhooks + * - `contractor.reactivated`: Fires when the contractor becomes active again (on or after start_date) * - *

    ### Contractor self-onboarding + *

    scope: `contractors:write` * - *

    | onboarding_status | Description | - * | --- | ----------- | - * | `admin_onboarding_incomplete` | Admin needs to enter basic information about the contractor. | - * | `self_onboarding_not_invited` | Admin has the intention to invite the contractor to self-onboard - * (e.g., marking a checkbox), but the system has not yet sent the invitation. | - * | `self_onboarding_invited` | Contractor has been sent an invitation to self-onboard. | - * | `self_onboarding_started` | Contractor has started the self-onboarding process. | - * | `self_onboarding_review` | Admin needs to review contractors's entered information and confirm - * onboarding. | - * | `onboarding_completed` | Contractor has been fully onboarded and verified. | + *

    If set, this operation will use Security#companyAccessAuth from the global security. * - *

    ## onboarding_steps + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param contractorUuid The UUID of the contractor + * @param requestBody + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture postV1ContractorsContractorUuidRehire( + Optional xGustoAPIVersion, String contractorUuid, + Optional requestBody) { + PostV1ContractorsContractorUuidRehireRequest request = + PostV1ContractorsContractorUuidRehireRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .contractorUuid(contractorUuid) + .requestBody(requestBody) + .build(); + AsyncRequestOperation operation + = new PostV1ContractorsContractorUuidRehire.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Cancel a pending contractor rehire * - *

    | onboarding_steps | Requirement(s) to be completed | - * |:-----------------|-------------------------------:| - * | `basic_details` | Add individual contractor's first name, last name, social security number or - * Business name and EIN depending on the contractor type | - * | `add_address` | Add contractor address. | - * | `compensation_details` | Add contractor compensation. | - * | `payment_details` | (optional) Set up contractor's direct deposit or set to check. | - * | `sign_documents` | Contractor forms (e.g., W9) are generated & signed. | - * | `file_new_hire_report` | Contractor new hire report is generated. | + *

    ## Purpose + * Cancels a pending contractor rehire. For future-dated rehires, cancellation is available anytime + * before the date. + * For past-dated rehires, cancellation is only available within the 2-day grace period. * - *

    scope: `contractors:read` + *

    ## Prerequisites + * Before calling this endpoint: + * - The contractor must have a pending rehire (upcoming employment) + * + *

    ## Related webhooks + * - `contractor.deactivated`: Fires when the contractor returns to inactive state after cancellation + * + *

    scope: `contractors:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param contractorUuid The UUID of the contractor - * @return {@code CompletableFuture} - The async response + * @return The async call builder */ - public CompletableFuture getOnboardingStatus(String contractorUuid) { - return getOnboardingStatus(Optional.empty(), contractorUuid); + public DeleteV1ContractorsContractorUuidRehireRequestBuilder deleteV1ContractorsContractorUuidRehire() { + return new DeleteV1ContractorsContractorUuidRehireRequestBuilder(sdkConfiguration); } /** - * Get the contractor's onboarding status + * Cancel a pending contractor rehire * - *

    Retrieves a contractor's onboarding status. The data returned helps inform the required onboarding - * steps and respective completion status. + *

    ## Purpose + * Cancels a pending contractor rehire. For future-dated rehires, cancellation is available anytime + * before the date. + * For past-dated rehires, cancellation is only available within the 2-day grace period. * - *

    ## onboarding_status + *

    ## Prerequisites + * Before calling this endpoint: + * - The contractor must have a pending rehire (upcoming employment) * - *

    ### Admin-facilitated onboarding - * | onboarding_status | Description | - * |:------------------|------------:| - * | `admin_onboarding_incomplete` | Admin needs to enter basic information about the contractor. | - * | `admin_onboarding_review` | All information has been completed and admin needs to confirm - * onboarding. | - * | `onboarding_completed` | Contractor has been fully onboarded and verified. | + *

    ## Related webhooks + * - `contractor.deactivated`: Fires when the contractor returns to inactive state after cancellation * - *

    ### Contractor self-onboarding + *

    scope: `contractors:write` * - *

    | onboarding_status | Description | - * | --- | ----------- | - * | `admin_onboarding_incomplete` | Admin needs to enter basic information about the contractor. | - * | `self_onboarding_not_invited` | Admin has the intention to invite the contractor to self-onboard - * (e.g., marking a checkbox), but the system has not yet sent the invitation. | - * | `self_onboarding_invited` | Contractor has been sent an invitation to self-onboard. | - * | `self_onboarding_started` | Contractor has started the self-onboarding process. | - * | `self_onboarding_review` | Admin needs to review contractors's entered information and confirm - * onboarding. | - * | `onboarding_completed` | Contractor has been fully onboarded and verified. | + *

    If set, this operation will use Security#companyAccessAuth from the global security. * - *

    ## onboarding_steps + * @param contractorUuid The UUID of the contractor + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture deleteV1ContractorsContractorUuidRehire(String contractorUuid) { + return deleteV1ContractorsContractorUuidRehire(Optional.empty(), contractorUuid); + } + + /** + * Cancel a pending contractor rehire * - *

    | onboarding_steps | Requirement(s) to be completed | - * |:-----------------|-------------------------------:| - * | `basic_details` | Add individual contractor's first name, last name, social security number or - * Business name and EIN depending on the contractor type | - * | `add_address` | Add contractor address. | - * | `compensation_details` | Add contractor compensation. | - * | `payment_details` | (optional) Set up contractor's direct deposit or set to check. | - * | `sign_documents` | Contractor forms (e.g., W9) are generated & signed. | - * | `file_new_hire_report` | Contractor new hire report is generated. | + *

    ## Purpose + * Cancels a pending contractor rehire. For future-dated rehires, cancellation is available anytime + * before the date. + * For past-dated rehires, cancellation is only available within the 2-day grace period. * - *

    scope: `contractors:read` + *

    ## Prerequisites + * Before calling this endpoint: + * - The contractor must have a pending rehire (upcoming employment) + * + *

    ## Related webhooks + * - `contractor.deactivated`: Fires when the contractor returns to inactive state after cancellation + * + *

    scope: `contractors:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param contractorUuid The UUID of the contractor - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getOnboardingStatus(Optional xGustoAPIVersion, String contractorUuid) { - GetV1ContractorsContractorUuidOnboardingStatusRequest request = - GetV1ContractorsContractorUuidOnboardingStatusRequest + public CompletableFuture deleteV1ContractorsContractorUuidRehire(Optional xGustoAPIVersion, String contractorUuid) { + DeleteV1ContractorsContractorUuidRehireRequest request = + DeleteV1ContractorsContractorUuidRehireRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .contractorUuid(contractorUuid) .build(); - AsyncRequestOperation operation - = new GetV1ContractorsContractorUuidOnboardingStatus.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new DeleteV1ContractorsContractorUuidRehire.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Change the contractor's onboarding status + * Schedule a contractor termination * - *

    Updates a contractor's onboarding status. + *

    ## Purpose + * Schedules a contractor dismissal for a given date. Supports both immediate (past dates) and + * future-dated dismissals. * - *

    Below is a list of valid onboarding status changes depending on the intended action to be performed - * on behalf of the contractor. + *

    ## Prerequisites + * Before calling this endpoint: + * 1. The contractor must be active (no existing pending dismissal) + * 2. The contractor must have a current employment * - *

    | Action | current onboarding_status | new onboarding_status | - * |:------------------|:------------:|----------:| - * | Mark a contractor as self-onboarding | `admin_onboarding_incomplete` | - * `self_onboarding_not_invited` | - * | Invite a contractor to self-onboard | `admin_onboarding_incomplete` or - * `self_onboarding_not_invited` | `self_onboarding_invited` | - * | Cancel a contractor's self-onboarding | `self_onboarding_invited` or `self_onboarding_not_invited` - * | `admin_onboarding_incomplete` | - * | Review a contractor's self-onboarded info | `self_onboarding_started` | `self_onboarding_review` | - * | Finish a contractor's onboarding | `admin_onboarding_review` or `self_onboarding_review` | - * `onboarding_completed` | + *

    ## Related webhooks + * - `contractor.deactivated`: Fires when the contractor becomes inactive (on or after end_date) * *

    scope: `contractors:write` * @@ -599,61 +589,50 @@ public CompletableFuture * * @return The async call builder */ - public PutV1ContractorsContractorUuidOnboardingStatusRequestBuilder updateOnboardingStatus() { - return new PutV1ContractorsContractorUuidOnboardingStatusRequestBuilder(sdkConfiguration); + public PostV1ContractorsContractorUuidTerminationRequestBuilder postV1ContractorsContractorUuidTermination() { + return new PostV1ContractorsContractorUuidTerminationRequestBuilder(sdkConfiguration); } /** - * Change the contractor's onboarding status + * Schedule a contractor termination * - *

    Updates a contractor's onboarding status. + *

    ## Purpose + * Schedules a contractor dismissal for a given date. Supports both immediate (past dates) and + * future-dated dismissals. * - *

    Below is a list of valid onboarding status changes depending on the intended action to be performed - * on behalf of the contractor. + *

    ## Prerequisites + * Before calling this endpoint: + * 1. The contractor must be active (no existing pending dismissal) + * 2. The contractor must have a current employment * - *

    | Action | current onboarding_status | new onboarding_status | - * |:------------------|:------------:|----------:| - * | Mark a contractor as self-onboarding | `admin_onboarding_incomplete` | - * `self_onboarding_not_invited` | - * | Invite a contractor to self-onboard | `admin_onboarding_incomplete` or - * `self_onboarding_not_invited` | `self_onboarding_invited` | - * | Cancel a contractor's self-onboarding | `self_onboarding_invited` or `self_onboarding_not_invited` - * | `admin_onboarding_incomplete` | - * | Review a contractor's self-onboarded info | `self_onboarding_started` | `self_onboarding_review` | - * | Finish a contractor's onboarding | `admin_onboarding_review` or `self_onboarding_review` | - * `onboarding_completed` | + *

    ## Related webhooks + * - `contractor.deactivated`: Fires when the contractor becomes inactive (on or after end_date) * *

    scope: `contractors:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param contractorUuid The UUID of the contractor - * @param contractorOnboardingStatusUpdateRequestBody Request body for updating a contractor's onboarding status. - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture updateOnboardingStatus(String contractorUuid, ContractorOnboardingStatusUpdateRequestBody contractorOnboardingStatusUpdateRequestBody) { - return updateOnboardingStatus(Optional.empty(), contractorUuid, contractorOnboardingStatusUpdateRequestBody); + public CompletableFuture postV1ContractorsContractorUuidTermination(String contractorUuid) { + return postV1ContractorsContractorUuidTermination(Optional.empty(), contractorUuid, Optional.empty()); } /** - * Change the contractor's onboarding status - * - *

    Updates a contractor's onboarding status. + * Schedule a contractor termination * - *

    Below is a list of valid onboarding status changes depending on the intended action to be performed - * on behalf of the contractor. + *

    ## Purpose + * Schedules a contractor dismissal for a given date. Supports both immediate (past dates) and + * future-dated dismissals. * - *

    | Action | current onboarding_status | new onboarding_status | - * |:------------------|:------------:|----------:| - * | Mark a contractor as self-onboarding | `admin_onboarding_incomplete` | - * `self_onboarding_not_invited` | - * | Invite a contractor to self-onboard | `admin_onboarding_incomplete` or - * `self_onboarding_not_invited` | `self_onboarding_invited` | - * | Cancel a contractor's self-onboarding | `self_onboarding_invited` or `self_onboarding_not_invited` - * | `admin_onboarding_incomplete` | - * | Review a contractor's self-onboarded info | `self_onboarding_started` | `self_onboarding_review` | - * | Finish a contractor's onboarding | `admin_onboarding_review` or `self_onboarding_review` | - * `onboarding_completed` | + *

    ## Prerequisites + * Before calling this endpoint: + * 1. The contractor must be active (no existing pending dismissal) + * 2. The contractor must have a current employment + * + *

    ## Related webhooks + * - `contractor.deactivated`: Fires when the contractor becomes inactive (on or after end_date) * *

    scope: `contractors:write` * @@ -661,592 +640,598 @@ public CompletableFuture * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param contractorUuid The UUID of the contractor - * @param contractorOnboardingStatusUpdateRequestBody Request body for updating a contractor's onboarding status. - * @return {@code CompletableFuture} - The async response + * @param requestBody + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture updateOnboardingStatus( - Optional xGustoAPIVersion, String contractorUuid, - ContractorOnboardingStatusUpdateRequestBody contractorOnboardingStatusUpdateRequestBody) { - PutV1ContractorsContractorUuidOnboardingStatusRequest request = - PutV1ContractorsContractorUuidOnboardingStatusRequest + public CompletableFuture postV1ContractorsContractorUuidTermination( + Optional xGustoAPIVersion, String contractorUuid, + Optional requestBody) { + PostV1ContractorsContractorUuidTerminationRequest request = + PostV1ContractorsContractorUuidTerminationRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .contractorUuid(contractorUuid) - .contractorOnboardingStatusUpdateRequestBody(contractorOnboardingStatusUpdateRequestBody) + .requestBody(requestBody) .build(); - AsyncRequestOperation operation - = new PutV1ContractorsContractorUuidOnboardingStatus.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new PostV1ContractorsContractorUuidTermination.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Get a contractor address + * Cancel a pending contractor termination * - *

    The address of a contractor is used to determine certain tax information about them. Addresses are - * geocoded on create and update to ensure validity. + *

    ## Purpose + * Cancels a pending contractor dismissal. For future-dated dismissals, cancellation is available + * anytime before the date. + * For past-dated dismissals, cancellation is only available within the 2-day grace period. * - *

    scope: `contractors:read` + *

    ## Prerequisites + * Before calling this endpoint: + * - The contractor must have a pending dismissal (scheduled or within the grace period) + * + *

    ## Related webhooks + * - `contractor.reactivated`: Fires when the contractor becomes active again after cancellation + * + *

    scope: `contractors:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public GetV1ContractorsContractorUuidAddressRequestBuilder getAddress() { - return new GetV1ContractorsContractorUuidAddressRequestBuilder(sdkConfiguration); + public DeleteV1ContractorsContractorUuidTerminationRequestBuilder deleteV1ContractorsContractorUuidTermination() { + return new DeleteV1ContractorsContractorUuidTerminationRequestBuilder(sdkConfiguration); } /** - * Get a contractor address + * Cancel a pending contractor termination * - *

    The address of a contractor is used to determine certain tax information about them. Addresses are - * geocoded on create and update to ensure validity. + *

    ## Purpose + * Cancels a pending contractor dismissal. For future-dated dismissals, cancellation is available + * anytime before the date. + * For past-dated dismissals, cancellation is only available within the 2-day grace period. * - *

    scope: `contractors:read` + *

    ## Prerequisites + * Before calling this endpoint: + * - The contractor must have a pending dismissal (scheduled or within the grace period) + * + *

    ## Related webhooks + * - `contractor.reactivated`: Fires when the contractor becomes active again after cancellation + * + *

    scope: `contractors:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param contractorUuid The UUID of the contractor - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getAddress(String contractorUuid) { - return getAddress(Optional.empty(), contractorUuid); + public CompletableFuture deleteV1ContractorsContractorUuidTermination(String contractorUuid) { + return deleteV1ContractorsContractorUuidTermination(Optional.empty(), contractorUuid); } /** - * Get a contractor address + * Cancel a pending contractor termination * - *

    The address of a contractor is used to determine certain tax information about them. Addresses are - * geocoded on create and update to ensure validity. + *

    ## Purpose + * Cancels a pending contractor dismissal. For future-dated dismissals, cancellation is available + * anytime before the date. + * For past-dated dismissals, cancellation is only available within the 2-day grace period. * - *

    scope: `contractors:read` + *

    ## Prerequisites + * Before calling this endpoint: + * - The contractor must have a pending dismissal (scheduled or within the grace period) + * + *

    ## Related webhooks + * - `contractor.reactivated`: Fires when the contractor becomes active again after cancellation + * + *

    scope: `contractors:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param contractorUuid The UUID of the contractor - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getAddress(Optional xGustoAPIVersion, String contractorUuid) { - GetV1ContractorsContractorUuidAddressRequest request = - GetV1ContractorsContractorUuidAddressRequest + public CompletableFuture deleteV1ContractorsContractorUuidTermination(Optional xGustoAPIVersion, String contractorUuid) { + DeleteV1ContractorsContractorUuidTerminationRequest request = + DeleteV1ContractorsContractorUuidTerminationRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .contractorUuid(contractorUuid) .build(); - AsyncRequestOperation operation - = new GetV1ContractorsContractorUuidAddress.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new DeleteV1ContractorsContractorUuidTermination.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Create or update a contractor's address - * - *

    The address of a contractor is used to determine certain tax information about them. Addresses are - * geocoded on create and update to ensure validity. + * Get a contractor * - *

    > 🚧 Contractors can only have one address. - * > - * > When a contractor is created, an address is created for them by default. Updating the address - * will replace the existing address. + *

    Get a contractor. * - *

    scope: `contractors:write` + *

    scope: `contractors:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public PutV1ContractorsContractorUuidAddressRequestBuilder updateAddress() { - return new PutV1ContractorsContractorUuidAddressRequestBuilder(sdkConfiguration); + public GetV1ContractorsContractorUuidRequestBuilder get() { + return new GetV1ContractorsContractorUuidRequestBuilder(sdkConfiguration); } /** - * Create or update a contractor's address - * - *

    The address of a contractor is used to determine certain tax information about them. Addresses are - * geocoded on create and update to ensure validity. + * Get a contractor * - *

    > 🚧 Contractors can only have one address. - * > - * > When a contractor is created, an address is created for them by default. Updating the address - * will replace the existing address. + *

    Get a contractor. * - *

    scope: `contractors:write` + *

    scope: `contractors:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param contractorUuid The UUID of the contractor - * @param contractorAddressUpdateBody - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture updateAddress(String contractorUuid, ContractorAddressUpdateBody contractorAddressUpdateBody) { - return updateAddress(Optional.empty(), contractorUuid, contractorAddressUpdateBody); + public CompletableFuture get(String contractorUuid) { + return get(Optional.empty(), contractorUuid, Optional.empty()); } /** - * Create or update a contractor's address - * - *

    The address of a contractor is used to determine certain tax information about them. Addresses are - * geocoded on create and update to ensure validity. + * Get a contractor * - *

    > 🚧 Contractors can only have one address. - * > - * > When a contractor is created, an address is created for them by default. Updating the address - * will replace the existing address. + *

    Get a contractor. * - *

    scope: `contractors:write` + *

    scope: `contractors:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param contractorUuid The UUID of the contractor - * @param contractorAddressUpdateBody - * @return {@code CompletableFuture} - The async response + * @param include Include the requested attribute(s) in each contractor response. Multiple options are comma separated. + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture updateAddress( - Optional xGustoAPIVersion, String contractorUuid, - ContractorAddressUpdateBody contractorAddressUpdateBody) { - PutV1ContractorsContractorUuidAddressRequest request = - PutV1ContractorsContractorUuidAddressRequest + public CompletableFuture get( + Optional xGustoAPIVersion, String contractorUuid, + Optional> include) { + GetV1ContractorsContractorUuidRequest request = + GetV1ContractorsContractorUuidRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .contractorUuid(contractorUuid) - .contractorAddressUpdateBody(contractorAddressUpdateBody) + .include(include) .build(); - AsyncRequestOperation operation - = new PutV1ContractorsContractorUuidAddress.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new GetV1ContractorsContractorUuid.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * List contractor payment details - * - *

    Get payment details for contractors in a company. This endpoint returns a list of all contractors - * associated with the specified company, including their payment methods and bank account details - * if they are paid via direct deposit. - * - *

    For contractors paid by direct deposit, the response includes their bank account information - * with sensitive data masked for security. The payment details also include information about - * how their payments are split if they have multiple bank accounts configured. - * - *

    For contractors paid by check, only the basic payment method information is returned. - * - *

    ### Response Details - * - For direct deposit contractors: - * - Bank account details (masked) - * - Payment splits configuration - * - Routing numbers - * - Account types - * - For check payments: - * - Basic payment method designation + * Update a contractor * - *

    ### Common Use Cases - * - Fetching contractor payment information for payroll processing - * - Verifying contractor payment methods - * - Reviewing payment split configurations + *

    Update a contractor. * - *

    `encrypted_account_number` is available only with the additional scope - * `contractor_payment_methods:read:account_numbers`. + *

    > 🚧 Warning + * > + * > Watch out when changing a contractor's type (when the contractor is finished onboarding). + * Specifically, changing contractor type can be dangerous since Gusto won't recognize and file two + * separate 1099s if they simply change from business to individual * - *

    scope: `contractor_payment_methods:read` + *

    scope: `contractors:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder getV1CompaniesCompanyIdContractorsPaymentDetails() { - return new GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder(sdkConfiguration); + public PutV1ContractorsContractorUuidRequestBuilder update() { + return new PutV1ContractorsContractorUuidRequestBuilder(sdkConfiguration); } /** - * List contractor payment details - * - *

    Get payment details for contractors in a company. This endpoint returns a list of all contractors - * associated with the specified company, including their payment methods and bank account details - * if they are paid via direct deposit. - * - *

    For contractors paid by direct deposit, the response includes their bank account information - * with sensitive data masked for security. The payment details also include information about - * how their payments are split if they have multiple bank accounts configured. - * - *

    For contractors paid by check, only the basic payment method information is returned. - * - *

    ### Response Details - * - For direct deposit contractors: - * - Bank account details (masked) - * - Payment splits configuration - * - Routing numbers - * - Account types - * - For check payments: - * - Basic payment method designation - * - *

    ### Common Use Cases - * - Fetching contractor payment information for payroll processing - * - Verifying contractor payment methods - * - Reviewing payment split configurations - * - *

    `encrypted_account_number` is available only with the additional scope - * `contractor_payment_methods:read:account_numbers`. - * - *

    scope: `contractor_payment_methods:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. + * Update a contractor * - * @param companyId The UUID of the company. This identifies the company whose contractor payment details you want to retrieve. - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture getV1CompaniesCompanyIdContractorsPaymentDetails(String companyId) { - return getV1CompaniesCompanyIdContractorsPaymentDetails( - companyId, Optional.empty(), Optional.empty(), - Optional.empty()); - } - - /** - * List contractor payment details + *

    Update a contractor. * - *

    Get payment details for contractors in a company. This endpoint returns a list of all contractors - * associated with the specified company, including their payment methods and bank account details - * if they are paid via direct deposit. + *

    > 🚧 Warning + * > + * > Watch out when changing a contractor's type (when the contractor is finished onboarding). + * Specifically, changing contractor type can be dangerous since Gusto won't recognize and file two + * separate 1099s if they simply change from business to individual * - *

    For contractors paid by direct deposit, the response includes their bank account information - * with sensitive data masked for security. The payment details also include information about - * how their payments are split if they have multiple bank accounts configured. + *

    scope: `contractors:write` * - *

    For contractors paid by check, only the basic payment method information is returned. + *

    If set, this operation will use Security#companyAccessAuth from the global security. * - *

    ### Response Details - * - For direct deposit contractors: - * - Bank account details (masked) - * - Payment splits configuration - * - Routing numbers - * - Account types - * - For check payments: - * - Basic payment method designation + * @param contractorUuid The UUID of the contractor + * @param contractorUpdateRequestBody Request body for updating a contractor. + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture update(String contractorUuid, ContractorUpdateRequestBody contractorUpdateRequestBody) { + return update(Optional.empty(), contractorUuid, contractorUpdateRequestBody); + } + + /** + * Update a contractor * - *

    ### Common Use Cases - * - Fetching contractor payment information for payroll processing - * - Verifying contractor payment methods - * - Reviewing payment split configurations + *

    Update a contractor. * - *

    `encrypted_account_number` is available only with the additional scope - * `contractor_payment_methods:read:account_numbers`. + *

    > 🚧 Warning + * > + * > Watch out when changing a contractor's type (when the contractor is finished onboarding). + * Specifically, changing contractor type can be dangerous since Gusto won't recognize and file two + * separate 1099s if they simply change from business to individual * - *

    scope: `contractor_payment_methods:read` + *

    scope: `contractors:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company. This identifies the company whose contractor payment details you want to retrieve. - * @param contractorUuid Optional filter to get payment details for a specific contractor. When provided, the response will only include payment details for this contractor. - * @param contractorPaymentGroupUuid 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. * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @return {@code CompletableFuture} - The async response + * @param contractorUuid The UUID of the contractor + * @param contractorUpdateRequestBody Request body for updating a contractor. + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getV1CompaniesCompanyIdContractorsPaymentDetails( - String companyId, Optional contractorUuid, - Optional contractorPaymentGroupUuid, Optional xGustoAPIVersion) { - GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest request = - GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest + public CompletableFuture update( + Optional xGustoAPIVersion, String contractorUuid, + ContractorUpdateRequestBody contractorUpdateRequestBody) { + PutV1ContractorsContractorUuidRequest request = + PutV1ContractorsContractorUuidRequest .builder() - .companyId(companyId) - .contractorUuid(contractorUuid) - .contractorPaymentGroupUuid(contractorPaymentGroupUuid) .xGustoAPIVersion(xGustoAPIVersion) + .contractorUuid(contractorUuid) + .contractorUpdateRequestBody(contractorUpdateRequestBody) .build(); - AsyncRequestOperation operation - = new GetV1CompaniesCompanyIdContractorsPaymentDetails.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new PutV1ContractorsContractorUuid.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Schedule a contractor rehire - * - *

    ## Purpose - * Schedules a contractor rehire for a given date. Creates a new employment record for the contractor. - * - *

    ## Prerequisites - * Before calling this endpoint: - * 1. The contractor must be inactive (previously dismissed) - * 2. The contractor must not already have an upcoming employment + * Delete a contractor * - *

    ## Related webhooks - * - `contractor.reactivated`: Fires when the contractor becomes active again (on or after start_date) + *

    A contractor can only be deleted when there are no contractor payments. * - *

    scope: `contractors:write` + *

    scope: `contractors:manage` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public PostV1ContractorsContractorUuidRehireRequestBuilder postV1ContractorsContractorUuidRehire() { - return new PostV1ContractorsContractorUuidRehireRequestBuilder(sdkConfiguration); + public DeleteV1ContractorsContractorUuidRequestBuilder delete() { + return new DeleteV1ContractorsContractorUuidRequestBuilder(sdkConfiguration); } /** - * Schedule a contractor rehire - * - *

    ## Purpose - * Schedules a contractor rehire for a given date. Creates a new employment record for the contractor. - * - *

    ## Prerequisites - * Before calling this endpoint: - * 1. The contractor must be inactive (previously dismissed) - * 2. The contractor must not already have an upcoming employment + * Delete a contractor * - *

    ## Related webhooks - * - `contractor.reactivated`: Fires when the contractor becomes active again (on or after start_date) + *

    A contractor can only be deleted when there are no contractor payments. * - *

    scope: `contractors:write` + *

    scope: `contractors:manage` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param contractorUuid The UUID of the contractor - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture postV1ContractorsContractorUuidRehire(String contractorUuid) { - return postV1ContractorsContractorUuidRehire(contractorUuid, Optional.empty(), Optional.empty()); + public CompletableFuture delete(String contractorUuid) { + return delete(Optional.empty(), contractorUuid); } /** - * Schedule a contractor rehire - * - *

    ## Purpose - * Schedules a contractor rehire for a given date. Creates a new employment record for the contractor. - * - *

    ## Prerequisites - * Before calling this endpoint: - * 1. The contractor must be inactive (previously dismissed) - * 2. The contractor must not already have an upcoming employment + * Delete a contractor * - *

    ## Related webhooks - * - `contractor.reactivated`: Fires when the contractor becomes active again (on or after start_date) + *

    A contractor can only be deleted when there are no contractor payments. * - *

    scope: `contractors:write` + *

    scope: `contractors:manage` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param contractorUuid The UUID of the contractor * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param requestBody - * @return {@code CompletableFuture} - The async response + * @param contractorUuid The UUID of the contractor + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture postV1ContractorsContractorUuidRehire( - String contractorUuid, Optional xGustoAPIVersion, - Optional requestBody) { - PostV1ContractorsContractorUuidRehireRequest request = - PostV1ContractorsContractorUuidRehireRequest + public CompletableFuture delete(Optional xGustoAPIVersion, String contractorUuid) { + DeleteV1ContractorsContractorUuidRequest request = + DeleteV1ContractorsContractorUuidRequest .builder() - .contractorUuid(contractorUuid) .xGustoAPIVersion(xGustoAPIVersion) - .requestBody(requestBody) + .contractorUuid(contractorUuid) .build(); - AsyncRequestOperation operation - = new PostV1ContractorsContractorUuidRehire.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new DeleteV1ContractorsContractorUuid.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Cancel a pending contractor rehire - * - *

    ## Purpose - * Cancels a pending contractor rehire. For future-dated rehires, cancellation is available anytime - * before the date. - * For past-dated rehires, cancellation is only available within the 2-day grace period. - * - *

    ## Prerequisites - * Before calling this endpoint: - * - The contractor must have a pending rehire (upcoming employment) + * Get contractors of a company * - *

    ## Related webhooks - * - `contractor.deactivated`: Fires when the contractor returns to inactive state after cancellation + *

    Get all contractors, active and inactive, individual and business, for a company. * - *

    scope: `contractors:write` + *

    scope: `contractors:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public DeleteV1ContractorsContractorUuidRehireRequestBuilder deleteV1ContractorsContractorUuidRehire() { - return new DeleteV1ContractorsContractorUuidRehireRequestBuilder(sdkConfiguration); + public GetV1CompaniesCompanyUuidContractorsRequestBuilder list() { + return new GetV1CompaniesCompanyUuidContractorsRequestBuilder(sdkConfiguration); } /** - * Cancel a pending contractor rehire + * Get contractors of a company * - *

    ## Purpose - * Cancels a pending contractor rehire. For future-dated rehires, cancellation is available anytime - * before the date. - * For past-dated rehires, cancellation is only available within the 2-day grace period. + *

    Get all contractors, active and inactive, individual and business, for a company. * - *

    ## Prerequisites - * Before calling this endpoint: - * - The contractor must have a pending rehire (upcoming employment) + *

    scope: `contractors:read` * - *

    ## Related webhooks - * - `contractor.deactivated`: Fires when the contractor returns to inactive state after cancellation + *

    If set, this operation will use Security#companyAccessAuth from the global security. * - *

    scope: `contractors:write` + * @param request The request object containing all the parameters for the API call. + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture list(GetV1CompaniesCompanyUuidContractorsRequest request) { + AsyncRequestOperation operation + = new GetV1CompaniesCompanyUuidContractors.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Create a contractor + * + *

    Create an individual or business contractor. + * + *

    scope: `contractors:manage` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param contractorUuid The UUID of the contractor - * @return {@code CompletableFuture} - The async response + * @return The async call builder */ - public CompletableFuture deleteV1ContractorsContractorUuidRehire(String contractorUuid) { - return deleteV1ContractorsContractorUuidRehire(contractorUuid, Optional.empty()); + public PostV1CompaniesCompanyUuidContractorsRequestBuilder create() { + return new PostV1CompaniesCompanyUuidContractorsRequestBuilder(sdkConfiguration); } /** - * Cancel a pending contractor rehire + * Create a contractor * - *

    ## Purpose - * Cancels a pending contractor rehire. For future-dated rehires, cancellation is available anytime - * before the date. - * For past-dated rehires, cancellation is only available within the 2-day grace period. + *

    Create an individual or business contractor. * - *

    ## Prerequisites - * Before calling this endpoint: - * - The contractor must have a pending rehire (upcoming employment) + *

    scope: `contractors:manage` * - *

    ## Related webhooks - * - `contractor.deactivated`: Fires when the contractor returns to inactive state after cancellation + *

    If set, this operation will use Security#companyAccessAuth from the global security. * - *

    scope: `contractors:write` + * @param companyUuid The UUID of the company + * @param contractorCreateRequestBody Request body for creating a contractor. + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture create(String companyUuid, ContractorCreateRequestBody contractorCreateRequestBody) { + return create(Optional.empty(), companyUuid, contractorCreateRequestBody); + } + + /** + * Create a contractor + * + *

    Create an individual or business contractor. + * + *

    scope: `contractors:manage` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param contractorUuid The UUID of the contractor * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @return {@code CompletableFuture} - The async response + * @param companyUuid The UUID of the company + * @param contractorCreateRequestBody Request body for creating a contractor. + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture deleteV1ContractorsContractorUuidRehire(String contractorUuid, Optional xGustoAPIVersion) { - DeleteV1ContractorsContractorUuidRehireRequest request = - DeleteV1ContractorsContractorUuidRehireRequest + public CompletableFuture create( + Optional xGustoAPIVersion, String companyUuid, + ContractorCreateRequestBody contractorCreateRequestBody) { + PostV1CompaniesCompanyUuidContractorsRequest request = + PostV1CompaniesCompanyUuidContractorsRequest .builder() - .contractorUuid(contractorUuid) .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) + .contractorCreateRequestBody(contractorCreateRequestBody) .build(); - AsyncRequestOperation operation - = new DeleteV1ContractorsContractorUuidRehire.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new PostV1CompaniesCompanyUuidContractors.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Schedule a contractor termination + * Get the contractor's onboarding status * - *

    ## Purpose - * Schedules a contractor dismissal for a given date. Supports both immediate (past dates) and - * future-dated dismissals. + *

    Retrieves a contractor's onboarding status. The data returned helps inform the required onboarding + * steps and respective completion status. + * + *

    ## onboarding_status + * + *

    ### Admin-facilitated onboarding + * | onboarding_status | Description | + * |:------------------|------------:| + * | `admin_onboarding_incomplete` | Admin needs to enter basic information about the contractor. | + * | `admin_onboarding_review` | All information has been completed and admin needs to confirm + * onboarding. | + * | `onboarding_completed` | Contractor has been fully onboarded and verified. | + * + *

    ### Contractor self-onboarding + * + *

    | onboarding_status | Description | + * | --- | ----------- | + * | `admin_onboarding_incomplete` | Admin needs to enter basic information about the contractor. | + * | `self_onboarding_not_invited` | Admin has the intention to invite the contractor to self-onboard + * (e.g., marking a checkbox), but the system has not yet sent the invitation. | + * | `self_onboarding_invited` | Contractor has been sent an invitation to self-onboard. | + * | `self_onboarding_started` | Contractor has started the self-onboarding process. | + * | `self_onboarding_review` | Admin needs to review contractors's entered information and confirm + * onboarding. | + * | `onboarding_completed` | Contractor has been fully onboarded and verified. | * - *

    ## Prerequisites - * Before calling this endpoint: - * 1. The contractor must be active (no existing pending dismissal) - * 2. The contractor must have a current employment + *

    ## onboarding_steps * - *

    ## Related webhooks - * - `contractor.deactivated`: Fires when the contractor becomes inactive (on or after end_date) + *

    | onboarding_steps | Requirement(s) to be completed | + * |:-----------------|-------------------------------:| + * | `basic_details` | Add individual contractor's first name, last name, social security number or + * Business name and EIN depending on the contractor type | + * | `add_address` | Add contractor address. | + * | `compensation_details` | Add contractor compensation. | + * | `payment_details` | (optional) Set up contractor's direct deposit or set to check. | + * | `sign_documents` | Contractor forms (e.g., W9) are generated & signed. | + * | `file_new_hire_report` | Contractor new hire report is generated. | * - *

    scope: `contractors:write` + *

    scope: `contractors:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public PostV1ContractorsContractorUuidTerminationRequestBuilder postV1ContractorsContractorUuidTermination() { - return new PostV1ContractorsContractorUuidTerminationRequestBuilder(sdkConfiguration); + public GetV1ContractorsContractorUuidOnboardingStatusRequestBuilder getOnboardingStatus() { + return new GetV1ContractorsContractorUuidOnboardingStatusRequestBuilder(sdkConfiguration); } /** - * Schedule a contractor termination + * Get the contractor's onboarding status * - *

    ## Purpose - * Schedules a contractor dismissal for a given date. Supports both immediate (past dates) and - * future-dated dismissals. + *

    Retrieves a contractor's onboarding status. The data returned helps inform the required onboarding + * steps and respective completion status. * - *

    ## Prerequisites - * Before calling this endpoint: - * 1. The contractor must be active (no existing pending dismissal) - * 2. The contractor must have a current employment + *

    ## onboarding_status * - *

    ## Related webhooks - * - `contractor.deactivated`: Fires when the contractor becomes inactive (on or after end_date) + *

    ### Admin-facilitated onboarding + * | onboarding_status | Description | + * |:------------------|------------:| + * | `admin_onboarding_incomplete` | Admin needs to enter basic information about the contractor. | + * | `admin_onboarding_review` | All information has been completed and admin needs to confirm + * onboarding. | + * | `onboarding_completed` | Contractor has been fully onboarded and verified. | * - *

    scope: `contractors:write` + *

    ### Contractor self-onboarding + * + *

    | onboarding_status | Description | + * | --- | ----------- | + * | `admin_onboarding_incomplete` | Admin needs to enter basic information about the contractor. | + * | `self_onboarding_not_invited` | Admin has the intention to invite the contractor to self-onboard + * (e.g., marking a checkbox), but the system has not yet sent the invitation. | + * | `self_onboarding_invited` | Contractor has been sent an invitation to self-onboard. | + * | `self_onboarding_started` | Contractor has started the self-onboarding process. | + * | `self_onboarding_review` | Admin needs to review contractors's entered information and confirm + * onboarding. | + * | `onboarding_completed` | Contractor has been fully onboarded and verified. | + * + *

    ## onboarding_steps + * + *

    | onboarding_steps | Requirement(s) to be completed | + * |:-----------------|-------------------------------:| + * | `basic_details` | Add individual contractor's first name, last name, social security number or + * Business name and EIN depending on the contractor type | + * | `add_address` | Add contractor address. | + * | `compensation_details` | Add contractor compensation. | + * | `payment_details` | (optional) Set up contractor's direct deposit or set to check. | + * | `sign_documents` | Contractor forms (e.g., W9) are generated & signed. | + * | `file_new_hire_report` | Contractor new hire report is generated. | + * + *

    scope: `contractors:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param contractorUuid The UUID of the contractor - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture postV1ContractorsContractorUuidTermination(String contractorUuid) { - return postV1ContractorsContractorUuidTermination(contractorUuid, Optional.empty(), Optional.empty()); + public CompletableFuture getOnboardingStatus(String contractorUuid) { + return getOnboardingStatus(Optional.empty(), contractorUuid); } /** - * Schedule a contractor termination + * Get the contractor's onboarding status * - *

    ## Purpose - * Schedules a contractor dismissal for a given date. Supports both immediate (past dates) and - * future-dated dismissals. + *

    Retrieves a contractor's onboarding status. The data returned helps inform the required onboarding + * steps and respective completion status. * - *

    ## Prerequisites - * Before calling this endpoint: - * 1. The contractor must be active (no existing pending dismissal) - * 2. The contractor must have a current employment + *

    ## onboarding_status * - *

    ## Related webhooks - * - `contractor.deactivated`: Fires when the contractor becomes inactive (on or after end_date) + *

    ### Admin-facilitated onboarding + * | onboarding_status | Description | + * |:------------------|------------:| + * | `admin_onboarding_incomplete` | Admin needs to enter basic information about the contractor. | + * | `admin_onboarding_review` | All information has been completed and admin needs to confirm + * onboarding. | + * | `onboarding_completed` | Contractor has been fully onboarded and verified. | * - *

    scope: `contractors:write` + *

    ### Contractor self-onboarding + * + *

    | onboarding_status | Description | + * | --- | ----------- | + * | `admin_onboarding_incomplete` | Admin needs to enter basic information about the contractor. | + * | `self_onboarding_not_invited` | Admin has the intention to invite the contractor to self-onboard + * (e.g., marking a checkbox), but the system has not yet sent the invitation. | + * | `self_onboarding_invited` | Contractor has been sent an invitation to self-onboard. | + * | `self_onboarding_started` | Contractor has started the self-onboarding process. | + * | `self_onboarding_review` | Admin needs to review contractors's entered information and confirm + * onboarding. | + * | `onboarding_completed` | Contractor has been fully onboarded and verified. | + * + *

    ## onboarding_steps + * + *

    | onboarding_steps | Requirement(s) to be completed | + * |:-----------------|-------------------------------:| + * | `basic_details` | Add individual contractor's first name, last name, social security number or + * Business name and EIN depending on the contractor type | + * | `add_address` | Add contractor address. | + * | `compensation_details` | Add contractor compensation. | + * | `payment_details` | (optional) Set up contractor's direct deposit or set to check. | + * | `sign_documents` | Contractor forms (e.g., W9) are generated & signed. | + * | `file_new_hire_report` | Contractor new hire report is generated. | + * + *

    scope: `contractors:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param contractorUuid The UUID of the contractor * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param requestBody - * @return {@code CompletableFuture} - The async response + * @param contractorUuid The UUID of the contractor + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture postV1ContractorsContractorUuidTermination( - String contractorUuid, Optional xGustoAPIVersion, - Optional requestBody) { - PostV1ContractorsContractorUuidTerminationRequest request = - PostV1ContractorsContractorUuidTerminationRequest + public CompletableFuture getOnboardingStatus(Optional xGustoAPIVersion, String contractorUuid) { + GetV1ContractorsContractorUuidOnboardingStatusRequest request = + GetV1ContractorsContractorUuidOnboardingStatusRequest .builder() - .contractorUuid(contractorUuid) .xGustoAPIVersion(xGustoAPIVersion) - .requestBody(requestBody) + .contractorUuid(contractorUuid) .build(); - AsyncRequestOperation operation - = new PostV1ContractorsContractorUuidTermination.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new GetV1ContractorsContractorUuidOnboardingStatus.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Cancel a pending contractor termination + * Change the contractor's onboarding status * - *

    ## Purpose - * Cancels a pending contractor dismissal. For future-dated dismissals, cancellation is available - * anytime before the date. - * For past-dated dismissals, cancellation is only available within the 2-day grace period. + *

    Updates a contractor's onboarding status. * - *

    ## Prerequisites - * Before calling this endpoint: - * - The contractor must have a pending dismissal (scheduled or within the grace period) + *

    Below is a list of valid onboarding status changes depending on the intended action to be performed + * on behalf of the contractor. * - *

    ## Related webhooks - * - `contractor.reactivated`: Fires when the contractor becomes active again after cancellation + *

    | Action | current onboarding_status | new onboarding_status | + * |:------------------|:------------:|----------:| + * | Mark a contractor as self-onboarding | `admin_onboarding_incomplete` | + * `self_onboarding_not_invited` | + * | Invite a contractor to self-onboard | `admin_onboarding_incomplete` or + * `self_onboarding_not_invited` | `self_onboarding_invited` | + * | Cancel a contractor's self-onboarding | `self_onboarding_invited` or `self_onboarding_not_invited` + * | `admin_onboarding_incomplete` | + * | Review a contractor's self-onboarded info | `self_onboarding_started` | `self_onboarding_review` | + * | Finish a contractor's onboarding | `admin_onboarding_review` or `self_onboarding_review` | + * `onboarding_completed` | * *

    scope: `contractors:write` * @@ -1254,68 +1239,83 @@ public CompletableFuture pos * * @return The async call builder */ - public DeleteV1ContractorsContractorUuidTerminationRequestBuilder deleteV1ContractorsContractorUuidTermination() { - return new DeleteV1ContractorsContractorUuidTerminationRequestBuilder(sdkConfiguration); + public PutV1ContractorsContractorUuidOnboardingStatusRequestBuilder updateOnboardingStatus() { + return new PutV1ContractorsContractorUuidOnboardingStatusRequestBuilder(sdkConfiguration); } /** - * Cancel a pending contractor termination + * Change the contractor's onboarding status * - *

    ## Purpose - * Cancels a pending contractor dismissal. For future-dated dismissals, cancellation is available - * anytime before the date. - * For past-dated dismissals, cancellation is only available within the 2-day grace period. + *

    Updates a contractor's onboarding status. * - *

    ## Prerequisites - * Before calling this endpoint: - * - The contractor must have a pending dismissal (scheduled or within the grace period) + *

    Below is a list of valid onboarding status changes depending on the intended action to be performed + * on behalf of the contractor. * - *

    ## Related webhooks - * - `contractor.reactivated`: Fires when the contractor becomes active again after cancellation + *

    | Action | current onboarding_status | new onboarding_status | + * |:------------------|:------------:|----------:| + * | Mark a contractor as self-onboarding | `admin_onboarding_incomplete` | + * `self_onboarding_not_invited` | + * | Invite a contractor to self-onboard | `admin_onboarding_incomplete` or + * `self_onboarding_not_invited` | `self_onboarding_invited` | + * | Cancel a contractor's self-onboarding | `self_onboarding_invited` or `self_onboarding_not_invited` + * | `admin_onboarding_incomplete` | + * | Review a contractor's self-onboarded info | `self_onboarding_started` | `self_onboarding_review` | + * | Finish a contractor's onboarding | `admin_onboarding_review` or `self_onboarding_review` | + * `onboarding_completed` | * *

    scope: `contractors:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param contractorUuid The UUID of the contractor - * @return {@code CompletableFuture} - The async response + * @param contractorOnboardingStatusUpdateRequestBody Request body for updating a contractor's onboarding status. + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture deleteV1ContractorsContractorUuidTermination(String contractorUuid) { - return deleteV1ContractorsContractorUuidTermination(contractorUuid, Optional.empty()); + public CompletableFuture updateOnboardingStatus(String contractorUuid, ContractorOnboardingStatusUpdateRequestBody contractorOnboardingStatusUpdateRequestBody) { + return updateOnboardingStatus(Optional.empty(), contractorUuid, contractorOnboardingStatusUpdateRequestBody); } /** - * Cancel a pending contractor termination + * Change the contractor's onboarding status * - *

    ## Purpose - * Cancels a pending contractor dismissal. For future-dated dismissals, cancellation is available - * anytime before the date. - * For past-dated dismissals, cancellation is only available within the 2-day grace period. + *

    Updates a contractor's onboarding status. * - *

    ## Prerequisites - * Before calling this endpoint: - * - The contractor must have a pending dismissal (scheduled or within the grace period) + *

    Below is a list of valid onboarding status changes depending on the intended action to be performed + * on behalf of the contractor. * - *

    ## Related webhooks - * - `contractor.reactivated`: Fires when the contractor becomes active again after cancellation + *

    | Action | current onboarding_status | new onboarding_status | + * |:------------------|:------------:|----------:| + * | Mark a contractor as self-onboarding | `admin_onboarding_incomplete` | + * `self_onboarding_not_invited` | + * | Invite a contractor to self-onboard | `admin_onboarding_incomplete` or + * `self_onboarding_not_invited` | `self_onboarding_invited` | + * | Cancel a contractor's self-onboarding | `self_onboarding_invited` or `self_onboarding_not_invited` + * | `admin_onboarding_incomplete` | + * | Review a contractor's self-onboarded info | `self_onboarding_started` | `self_onboarding_review` | + * | Finish a contractor's onboarding | `admin_onboarding_review` or `self_onboarding_review` | + * `onboarding_completed` | * *

    scope: `contractors:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param contractorUuid The UUID of the contractor * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @return {@code CompletableFuture} - The async response + * @param contractorUuid The UUID of the contractor + * @param contractorOnboardingStatusUpdateRequestBody Request body for updating a contractor's onboarding status. + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture deleteV1ContractorsContractorUuidTermination(String contractorUuid, Optional xGustoAPIVersion) { - DeleteV1ContractorsContractorUuidTerminationRequest request = - DeleteV1ContractorsContractorUuidTerminationRequest + public CompletableFuture updateOnboardingStatus( + Optional xGustoAPIVersion, String contractorUuid, + ContractorOnboardingStatusUpdateRequestBody contractorOnboardingStatusUpdateRequestBody) { + PutV1ContractorsContractorUuidOnboardingStatusRequest request = + PutV1ContractorsContractorUuidOnboardingStatusRequest .builder() - .contractorUuid(contractorUuid) .xGustoAPIVersion(xGustoAPIVersion) + .contractorUuid(contractorUuid) + .contractorOnboardingStatusUpdateRequestBody(contractorOnboardingStatusUpdateRequestBody) .build(); - AsyncRequestOperation operation - = new DeleteV1ContractorsContractorUuidTermination.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new PutV1ContractorsContractorUuidOnboardingStatus.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncDepartments.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncDepartments.java index 68837a537..bb22424ee 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncDepartments.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncDepartments.java @@ -69,130 +69,6 @@ public Departments sync() { } - /** - * Get all departments of a company - * - *

    Get all of the departments for a given company with the employees and contractors assigned to that - * department. - * - *

    scope: `departments:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The async call builder - */ - public GetCompaniesDepartmentsRequestBuilder getAll() { - return new GetCompaniesDepartmentsRequestBuilder(sdkConfiguration); - } - - /** - * Get all departments of a company - * - *

    Get all of the departments for a given company with the employees and contractors assigned to that - * department. - * - *

    scope: `departments:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param companyUuid The UUID of the company - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture getAll(String companyUuid) { - return getAll(companyUuid, Optional.empty()); - } - - /** - * Get all departments of a company - * - *

    Get all of the departments for a given company with the employees and contractors assigned to that - * department. - * - *

    scope: `departments:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param companyUuid The UUID of the company - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture getAll(String companyUuid, Optional xGustoAPIVersion) { - GetCompaniesDepartmentsRequest request = - GetCompaniesDepartmentsRequest - .builder() - .companyUuid(companyUuid) - .xGustoAPIVersion(xGustoAPIVersion) - .build(); - AsyncRequestOperation operation - = new GetCompaniesDepartments.Async(sdkConfiguration, _headers); - return operation.doRequest(request) - .thenCompose(operation::handleResponse); - } - - - /** - * Create a department - * - *

    Create a department - * - *

    scope: `departments:write` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The async call builder - */ - public PostDepartmentsRequestBuilder create() { - return new PostDepartmentsRequestBuilder(sdkConfiguration); - } - - /** - * Create a department - * - *

    Create a department - * - *

    scope: `departments:write` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param companyUuid The UUID of the company - * @param departmentCreateRequestBody - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture create(String companyUuid, DepartmentCreateRequestBody departmentCreateRequestBody) { - return create(companyUuid, Optional.empty(), departmentCreateRequestBody); - } - - /** - * Create a department - * - *

    Create a department - * - *

    scope: `departments:write` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param companyUuid The UUID of the company - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param departmentCreateRequestBody - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture create( - String companyUuid, Optional xGustoAPIVersion, - DepartmentCreateRequestBody departmentCreateRequestBody) { - PostDepartmentsRequest request = - PostDepartmentsRequest - .builder() - .companyUuid(companyUuid) - .xGustoAPIVersion(xGustoAPIVersion) - .departmentCreateRequestBody(departmentCreateRequestBody) - .build(); - AsyncRequestOperation operation - = new PostDepartments.Async(sdkConfiguration, _headers); - return operation.doRequest(request) - .thenCompose(operation::handleResponse); - } - - /** * Get a department * @@ -221,7 +97,7 @@ public GetDepartmentRequestBuilder get() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture get(String departmentUuid) { - return get(departmentUuid, Optional.empty()); + return get(Optional.empty(), departmentUuid); } /** @@ -233,16 +109,16 @@ public CompletableFuture get(String departmentUuid) { * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param departmentUuid The UUID of the department * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param departmentUuid The UUID of the department * @return {@code CompletableFuture} - The async response */ - public CompletableFuture get(String departmentUuid, Optional xGustoAPIVersion) { + public CompletableFuture get(Optional xGustoAPIVersion, String departmentUuid) { GetDepartmentRequest request = GetDepartmentRequest .builder() - .departmentUuid(departmentUuid) .xGustoAPIVersion(xGustoAPIVersion) + .departmentUuid(departmentUuid) .build(); AsyncRequestOperation operation = new GetDepartment.Async(sdkConfiguration, _headers); @@ -280,7 +156,7 @@ public PutDepartmentsRequestBuilder update() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture update(String departmentUuid, DepartmentUpdateRequestBody departmentUpdateRequestBody) { - return update(departmentUuid, Optional.empty(), departmentUpdateRequestBody); + return update(Optional.empty(), departmentUuid, departmentUpdateRequestBody); } /** @@ -292,19 +168,19 @@ public CompletableFuture update(String departmentUuid, D * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param departmentUuid The UUID of the department * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param departmentUuid The UUID of the department * @param departmentUpdateRequestBody * @return {@code CompletableFuture} - The async response */ public CompletableFuture update( - String departmentUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String departmentUuid, DepartmentUpdateRequestBody departmentUpdateRequestBody) { PutDepartmentsRequest request = PutDepartmentsRequest .builder() - .departmentUuid(departmentUuid) .xGustoAPIVersion(xGustoAPIVersion) + .departmentUuid(departmentUuid) .departmentUpdateRequestBody(departmentUpdateRequestBody) .build(); AsyncRequestOperation operation @@ -344,7 +220,7 @@ public DeleteDepartmentRequestBuilder delete() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture delete(String departmentUuid) { - return delete(departmentUuid, Optional.empty()); + return delete(Optional.empty(), departmentUuid); } /** @@ -357,16 +233,16 @@ public CompletableFuture delete(String departmentUuid) * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param departmentUuid The UUID of the department * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param departmentUuid The UUID of the department * @return {@code CompletableFuture} - The async response */ - public CompletableFuture delete(String departmentUuid, Optional xGustoAPIVersion) { + public CompletableFuture delete(Optional xGustoAPIVersion, String departmentUuid) { DeleteDepartmentRequest request = DeleteDepartmentRequest .builder() - .departmentUuid(departmentUuid) .xGustoAPIVersion(xGustoAPIVersion) + .departmentUuid(departmentUuid) .build(); AsyncRequestOperation operation = new DeleteDepartment.Async(sdkConfiguration, _headers); @@ -404,7 +280,7 @@ public PutAddPeopleToDepartmentRequestBuilder addPeople() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture addPeople(String departmentUuid, DepartmentPeopleRequestBody departmentPeopleRequestBody) { - return addPeople(departmentUuid, Optional.empty(), departmentPeopleRequestBody); + return addPeople(Optional.empty(), departmentUuid, departmentPeopleRequestBody); } /** @@ -416,19 +292,19 @@ public CompletableFuture addPeople(String depa * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param departmentUuid The UUID of the department * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param departmentUuid The UUID of the department * @param departmentPeopleRequestBody * @return {@code CompletableFuture} - The async response */ public CompletableFuture addPeople( - String departmentUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String departmentUuid, DepartmentPeopleRequestBody departmentPeopleRequestBody) { PutAddPeopleToDepartmentRequest request = PutAddPeopleToDepartmentRequest .builder() - .departmentUuid(departmentUuid) .xGustoAPIVersion(xGustoAPIVersion) + .departmentUuid(departmentUuid) .departmentPeopleRequestBody(departmentPeopleRequestBody) .build(); AsyncRequestOperation operation @@ -467,7 +343,7 @@ public PutRemovePeopleFromDepartmentRequestBuilder removePeople() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture removePeople(String departmentUuid, DepartmentPeopleRequestBody departmentPeopleRequestBody) { - return removePeople(departmentUuid, Optional.empty(), departmentPeopleRequestBody); + return removePeople(Optional.empty(), departmentUuid, departmentPeopleRequestBody); } /** @@ -479,19 +355,19 @@ public CompletableFuture removePeople(Str * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param departmentUuid The UUID of the department * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param departmentUuid The UUID of the department * @param departmentPeopleRequestBody * @return {@code CompletableFuture} - The async response */ public CompletableFuture removePeople( - String departmentUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String departmentUuid, DepartmentPeopleRequestBody departmentPeopleRequestBody) { PutRemovePeopleFromDepartmentRequest request = PutRemovePeopleFromDepartmentRequest .builder() - .departmentUuid(departmentUuid) .xGustoAPIVersion(xGustoAPIVersion) + .departmentUuid(departmentUuid) .departmentPeopleRequestBody(departmentPeopleRequestBody) .build(); AsyncRequestOperation operation @@ -500,4 +376,128 @@ public CompletableFuture removePeople( .thenCompose(operation::handleResponse); } + + /** + * Get all departments of a company + * + *

    Get all of the departments for a given company with the employees and contractors assigned to that + * department. + * + *

    scope: `departments:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public GetCompaniesDepartmentsRequestBuilder getAll() { + return new GetCompaniesDepartmentsRequestBuilder(sdkConfiguration); + } + + /** + * Get all departments of a company + * + *

    Get all of the departments for a given company with the employees and contractors assigned to that + * department. + * + *

    scope: `departments:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param companyUuid The UUID of the company + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getAll(String companyUuid) { + return getAll(Optional.empty(), companyUuid); + } + + /** + * Get all departments of a company + * + *

    Get all of the departments for a given company with the employees and contractors assigned to that + * department. + * + *

    scope: `departments:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getAll(Optional xGustoAPIVersion, String companyUuid) { + GetCompaniesDepartmentsRequest request = + GetCompaniesDepartmentsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) + .build(); + AsyncRequestOperation operation + = new GetCompaniesDepartments.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Create a department + * + *

    Create a department + * + *

    scope: `departments:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public PostDepartmentsRequestBuilder create() { + return new PostDepartmentsRequestBuilder(sdkConfiguration); + } + + /** + * Create a department + * + *

    Create a department + * + *

    scope: `departments:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param companyUuid The UUID of the company + * @param departmentCreateRequestBody + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture create(String companyUuid, DepartmentCreateRequestBody departmentCreateRequestBody) { + return create(Optional.empty(), companyUuid, departmentCreateRequestBody); + } + + /** + * Create a department + * + *

    Create a department + * + *

    scope: `departments:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company + * @param departmentCreateRequestBody + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture create( + Optional xGustoAPIVersion, String companyUuid, + DepartmentCreateRequestBody departmentCreateRequestBody) { + PostDepartmentsRequest request = + PostDepartmentsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) + .departmentCreateRequestBody(departmentCreateRequestBody) + .build(); + AsyncRequestOperation operation + = new PostDepartments.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncEmployeeAddresses.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncEmployeeAddresses.java index c0fadac15..9fb26dba1 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncEmployeeAddresses.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncEmployeeAddresses.java @@ -119,7 +119,7 @@ public GetV1EmployeesEmployeeIdHomeAddressesRequestBuilder get() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture get(String employeeId) { - return get(employeeId, Optional.empty()); + return get(Optional.empty(), employeeId); } /** @@ -134,16 +134,16 @@ public CompletableFuture get(Stri * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param employeeId The UUID of the employee * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param employeeId The UUID of the employee * @return {@code CompletableFuture} - The async response */ - public CompletableFuture get(String employeeId, Optional xGustoAPIVersion) { + public CompletableFuture get(Optional xGustoAPIVersion, String employeeId) { GetV1EmployeesEmployeeIdHomeAddressesRequest request = GetV1EmployeesEmployeeIdHomeAddressesRequest .builder() - .employeeId(employeeId) .xGustoAPIVersion(xGustoAPIVersion) + .employeeId(employeeId) .build(); AsyncRequestOperation operation = new GetV1EmployeesEmployeeIdHomeAddresses.Async(sdkConfiguration, _headers); @@ -187,7 +187,7 @@ public PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder create() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture create(String employeeId, PostV1EmployeesEmployeeIdHomeAddressesRequestBody requestBody) { - return create(employeeId, Optional.empty(), requestBody); + return create(Optional.empty(), employeeId, requestBody); } /** @@ -202,19 +202,19 @@ public CompletableFuture create( * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param employeeId The UUID of the employee * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param employeeId The UUID of the employee * @param requestBody * @return {@code CompletableFuture} - The async response */ public CompletableFuture create( - String employeeId, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String employeeId, PostV1EmployeesEmployeeIdHomeAddressesRequestBody requestBody) { PostV1EmployeesEmployeeIdHomeAddressesRequest request = PostV1EmployeesEmployeeIdHomeAddressesRequest .builder() - .employeeId(employeeId) .xGustoAPIVersion(xGustoAPIVersion) + .employeeId(employeeId) .requestBody(requestBody) .build(); AsyncRequestOperation operation @@ -258,7 +258,7 @@ public GetV1HomeAddressesHomeAddressUuidRequestBuilder retrieveHomeAddress() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture retrieveHomeAddress(String homeAddressUuid) { - return retrieveHomeAddress(homeAddressUuid, Optional.empty()); + return retrieveHomeAddress(Optional.empty(), homeAddressUuid); } /** @@ -273,16 +273,16 @@ public CompletableFuture retrieveHome * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param homeAddressUuid The UUID of the home address * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param homeAddressUuid The UUID of the home address * @return {@code CompletableFuture} - The async response */ - public CompletableFuture retrieveHomeAddress(String homeAddressUuid, Optional xGustoAPIVersion) { + public CompletableFuture retrieveHomeAddress(Optional xGustoAPIVersion, String homeAddressUuid) { GetV1HomeAddressesHomeAddressUuidRequest request = GetV1HomeAddressesHomeAddressUuidRequest .builder() - .homeAddressUuid(homeAddressUuid) .xGustoAPIVersion(xGustoAPIVersion) + .homeAddressUuid(homeAddressUuid) .build(); AsyncRequestOperation operation = new GetV1HomeAddressesHomeAddressUuid.Async(sdkConfiguration, _headers); @@ -451,7 +451,7 @@ public GetV1EmployeesEmployeeIdWorkAddressesRequestBuilder getWorkAddresses() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture getWorkAddresses(String employeeId) { - return getWorkAddresses(employeeId, Optional.empty()); + return getWorkAddresses(Optional.empty(), employeeId); } /** @@ -464,16 +464,16 @@ public CompletableFuture getWorkA * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param employeeId The UUID of the employee * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param employeeId The UUID of the employee * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getWorkAddresses(String employeeId, Optional xGustoAPIVersion) { + public CompletableFuture getWorkAddresses(Optional xGustoAPIVersion, String employeeId) { GetV1EmployeesEmployeeIdWorkAddressesRequest request = GetV1EmployeesEmployeeIdWorkAddressesRequest .builder() - .employeeId(employeeId) .xGustoAPIVersion(xGustoAPIVersion) + .employeeId(employeeId) .build(); AsyncRequestOperation operation = new GetV1EmployeesEmployeeIdWorkAddresses.Async(sdkConfiguration, _headers); @@ -513,7 +513,7 @@ public PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder createWorkAddress() * @return {@code CompletableFuture} - The async response */ public CompletableFuture createWorkAddress(String employeeId, PostV1EmployeesEmployeeIdWorkAddressesRequestBody requestBody) { - return createWorkAddress(employeeId, Optional.empty(), requestBody); + return createWorkAddress(Optional.empty(), employeeId, requestBody); } /** @@ -526,19 +526,19 @@ public CompletableFuture createW * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param employeeId The UUID of the employee * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param employeeId The UUID of the employee * @param requestBody * @return {@code CompletableFuture} - The async response */ public CompletableFuture createWorkAddress( - String employeeId, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String employeeId, PostV1EmployeesEmployeeIdWorkAddressesRequestBody requestBody) { PostV1EmployeesEmployeeIdWorkAddressesRequest request = PostV1EmployeesEmployeeIdWorkAddressesRequest .builder() - .employeeId(employeeId) .xGustoAPIVersion(xGustoAPIVersion) + .employeeId(employeeId) .requestBody(requestBody) .build(); AsyncRequestOperation operation @@ -576,7 +576,7 @@ public GetV1WorkAddressesWorkAddressUuidRequestBuilder retrieveWorkAddress() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture retrieveWorkAddress(String workAddressUuid) { - return retrieveWorkAddress(workAddressUuid, Optional.empty()); + return retrieveWorkAddress(Optional.empty(), workAddressUuid); } /** @@ -588,16 +588,16 @@ public CompletableFuture retrieveWork * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param workAddressUuid The UUID of the work address * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param workAddressUuid The UUID of the work address * @return {@code CompletableFuture} - The async response */ - public CompletableFuture retrieveWorkAddress(String workAddressUuid, Optional xGustoAPIVersion) { + public CompletableFuture retrieveWorkAddress(Optional xGustoAPIVersion, String workAddressUuid) { GetV1WorkAddressesWorkAddressUuidRequest request = GetV1WorkAddressesWorkAddressUuidRequest .builder() - .workAddressUuid(workAddressUuid) .xGustoAPIVersion(xGustoAPIVersion) + .workAddressUuid(workAddressUuid) .build(); AsyncRequestOperation operation = new GetV1WorkAddressesWorkAddressUuid.Async(sdkConfiguration, _headers); @@ -635,7 +635,7 @@ public PutV1WorkAddressesWorkAddressUuidRequestBuilder updateWorkAddress() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture updateWorkAddress(String workAddressUuid, PutV1WorkAddressesWorkAddressUuidRequestBody requestBody) { - return updateWorkAddress(workAddressUuid, Optional.empty(), requestBody); + return updateWorkAddress(Optional.empty(), workAddressUuid, requestBody); } /** @@ -647,19 +647,19 @@ public CompletableFuture updateWorkAd * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param workAddressUuid The UUID of the work address * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param workAddressUuid The UUID of the work address * @param requestBody * @return {@code CompletableFuture} - The async response */ public CompletableFuture updateWorkAddress( - String workAddressUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String workAddressUuid, PutV1WorkAddressesWorkAddressUuidRequestBody requestBody) { PutV1WorkAddressesWorkAddressUuidRequest request = PutV1WorkAddressesWorkAddressUuidRequest .builder() - .workAddressUuid(workAddressUuid) .xGustoAPIVersion(xGustoAPIVersion) + .workAddressUuid(workAddressUuid) .requestBody(requestBody) .build(); AsyncRequestOperation operation @@ -697,7 +697,7 @@ public DeleteV1WorkAddressesWorkAddressUuidRequestBuilder deleteWorkAddress() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture deleteWorkAddress(String workAddressUuid) { - return deleteWorkAddress(workAddressUuid, Optional.empty()); + return deleteWorkAddress(Optional.empty(), workAddressUuid); } /** @@ -709,16 +709,16 @@ public CompletableFuture deleteWor * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param workAddressUuid The UUID of the work address * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param workAddressUuid The UUID of the work address * @return {@code CompletableFuture} - The async response */ - public CompletableFuture deleteWorkAddress(String workAddressUuid, Optional xGustoAPIVersion) { + public CompletableFuture deleteWorkAddress(Optional xGustoAPIVersion, String workAddressUuid) { DeleteV1WorkAddressesWorkAddressUuidRequest request = DeleteV1WorkAddressesWorkAddressUuidRequest .builder() - .workAddressUuid(workAddressUuid) .xGustoAPIVersion(xGustoAPIVersion) + .workAddressUuid(workAddressUuid) .build(); AsyncRequestOperation operation = new DeleteV1WorkAddressesWorkAddressUuid.Async(sdkConfiguration, _headers); diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncEmployeeBenefits.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncEmployeeBenefits.java index fc0db4c58..ba607804d 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncEmployeeBenefits.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncEmployeeBenefits.java @@ -624,7 +624,7 @@ public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder getV * @return {@code CompletableFuture} - The async response */ public CompletableFuture getV1EmployeesEmployeeUuidSection603HighEarnerStatuses(String employeeUuid) { - return getV1EmployeesEmployeeUuidSection603HighEarnerStatuses(employeeUuid, Optional.empty()); + return getV1EmployeesEmployeeUuidSection603HighEarnerStatuses(Optional.empty(), employeeUuid); } /** @@ -641,16 +641,16 @@ public CompletableFutureIf set, this operation will use Security#companyAccessAuth from the global security. * - * @param employeeUuid The UUID of the employee * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param employeeUuid The UUID of the employee * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getV1EmployeesEmployeeUuidSection603HighEarnerStatuses(String employeeUuid, Optional xGustoAPIVersion) { + public CompletableFuture getV1EmployeesEmployeeUuidSection603HighEarnerStatuses(Optional xGustoAPIVersion, String employeeUuid) { GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest request = GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest .builder() - .employeeUuid(employeeUuid) .xGustoAPIVersion(xGustoAPIVersion) + .employeeUuid(employeeUuid) .build(); AsyncRequestOperation operation = new GetV1EmployeesEmployeeUuidSection603HighEarnerStatuses.Async(sdkConfiguration, _headers); @@ -698,7 +698,7 @@ public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder pos * @return {@code CompletableFuture} - The async response */ public CompletableFuture postV1EmployeesEmployeeUuidSection603HighEarnerStatuses(String employeeUuid, EmployeeSection603HighEarnerStatusCreateRequest employeeSection603HighEarnerStatusCreateRequest) { - return postV1EmployeesEmployeeUuidSection603HighEarnerStatuses(employeeUuid, Optional.empty(), employeeSection603HighEarnerStatusCreateRequest); + return postV1EmployeesEmployeeUuidSection603HighEarnerStatuses(Optional.empty(), employeeUuid, employeeSection603HighEarnerStatusCreateRequest); } /** @@ -715,19 +715,19 @@ public CompletableFutureIf set, this operation will use Security#companyAccessAuth from the global security. * - * @param employeeUuid The UUID of the employee * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param employeeUuid The UUID of the employee * @param employeeSection603HighEarnerStatusCreateRequest Request body for creating an employee's Section 603 high earner status * @return {@code CompletableFuture} - The async response */ public CompletableFuture postV1EmployeesEmployeeUuidSection603HighEarnerStatuses( - String employeeUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String employeeUuid, EmployeeSection603HighEarnerStatusCreateRequest employeeSection603HighEarnerStatusCreateRequest) { PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest request = PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest .builder() - .employeeUuid(employeeUuid) .xGustoAPIVersion(xGustoAPIVersion) + .employeeUuid(employeeUuid) .employeeSection603HighEarnerStatusCreateRequest(employeeSection603HighEarnerStatusCreateRequest) .build(); AsyncRequestOperation operation @@ -776,7 +776,7 @@ public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearReques * @return {@code CompletableFuture} - The async response */ public CompletableFuture getV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYear(String employeeUuid, long effectiveYear) { - return getV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYear(employeeUuid, effectiveYear, Optional.empty()); + return getV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYear(Optional.empty(), employeeUuid, effectiveYear); } /** @@ -793,20 +793,20 @@ public CompletableFutureIf set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param employeeUuid The UUID of the employee * @param effectiveYear The effective year for the Section 603 status - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @return {@code CompletableFuture} - The async response */ public CompletableFuture getV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYear( - String employeeUuid, long effectiveYear, - Optional xGustoAPIVersion) { + Optional xGustoAPIVersion, String employeeUuid, + long effectiveYear) { GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest request = GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest .builder() + .xGustoAPIVersion(xGustoAPIVersion) .employeeUuid(employeeUuid) .effectiveYear(effectiveYear) - .xGustoAPIVersion(xGustoAPIVersion) .build(); AsyncRequestOperation operation = new GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYear.Async(sdkConfiguration, _headers); @@ -858,7 +858,7 @@ public CompletableFutureIf set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param employeeUuid The UUID of the employee * @param effectiveYear The effective year for the Section 603 status - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param employeeSection603HighEarnerStatusUpdateRequest Request body for updating an employee's Section 603 high earner status * @return {@code CompletableFuture} - The async response */ public CompletableFuture patchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYear( - String employeeUuid, long effectiveYear, - Optional xGustoAPIVersion, EmployeeSection603HighEarnerStatusUpdateRequest employeeSection603HighEarnerStatusUpdateRequest) { + Optional xGustoAPIVersion, String employeeUuid, + long effectiveYear, EmployeeSection603HighEarnerStatusUpdateRequest employeeSection603HighEarnerStatusUpdateRequest) { PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest request = PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest .builder() + .xGustoAPIVersion(xGustoAPIVersion) .employeeUuid(employeeUuid) .effectiveYear(effectiveYear) - .xGustoAPIVersion(xGustoAPIVersion) .employeeSection603HighEarnerStatusUpdateRequest(employeeSection603HighEarnerStatusUpdateRequest) .build(); AsyncRequestOperation operation diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncEmployeeEmployments.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncEmployeeEmployments.java index caaac2120..91387bc22 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncEmployeeEmployments.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncEmployeeEmployments.java @@ -86,14 +86,9 @@ public EmployeeEmployments sync() { /** - * Get terminations for an employee - * - *

    Terminations are created whenever an employee is scheduled to leave the company. The only things - * required are an effective date (their last day of work) and whether they should receive their wages - * in a one-off termination payroll or with the rest of the company. + * Get an employee rehire * - *

    Note that some states require employees to receive their final wages within 24 hours (unless they - * consent otherwise,) in which case running a one-off payroll may be the only option. + *

    Retrieve an employee's rehire, which contains information on when the employee returns to work. * *

    scope: `employments:read` * @@ -101,40 +96,30 @@ public EmployeeEmployments sync() { * * @return The async call builder */ - public GetV1EmployeesEmployeeIdTerminationsRequestBuilder getTerminations() { - return new GetV1EmployeesEmployeeIdTerminationsRequestBuilder(sdkConfiguration); + public GetV1EmployeesEmployeeIdRehireRequestBuilder getRehire() { + return new GetV1EmployeesEmployeeIdRehireRequestBuilder(sdkConfiguration); } /** - * Get terminations for an employee - * - *

    Terminations are created whenever an employee is scheduled to leave the company. The only things - * required are an effective date (their last day of work) and whether they should receive their wages - * in a one-off termination payroll or with the rest of the company. + * Get an employee rehire * - *

    Note that some states require employees to receive their final wages within 24 hours (unless they - * consent otherwise,) in which case running a one-off payroll may be the only option. + *

    Retrieve an employee's rehire, which contains information on when the employee returns to work. * *

    scope: `employments:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param employeeId The UUID of the employee - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getTerminations(String employeeId) { - return getTerminations(Optional.empty(), employeeId); + public CompletableFuture getRehire(String employeeId) { + return getRehire(Optional.empty(), employeeId); } /** - * Get terminations for an employee - * - *

    Terminations are created whenever an employee is scheduled to leave the company. The only things - * required are an effective date (their last day of work) and whether they should receive their wages - * in a one-off termination payroll or with the rest of the company. + * Get an employee rehire * - *

    Note that some states require employees to receive their final wages within 24 hours (unless they - * consent otherwise,) in which case running a one-off payroll may be the only option. + *

    Retrieve an employee's rehire, which contains information on when the employee returns to work. * *

    scope: `employments:read` * @@ -142,31 +127,26 @@ public CompletableFuture getTermin * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param employeeId The UUID of the employee - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getTerminations(Optional xGustoAPIVersion, String employeeId) { - GetV1EmployeesEmployeeIdTerminationsRequest request = - GetV1EmployeesEmployeeIdTerminationsRequest + public CompletableFuture getRehire(Optional xGustoAPIVersion, String employeeId) { + GetV1EmployeesEmployeeIdRehireRequest request = + GetV1EmployeesEmployeeIdRehireRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .employeeId(employeeId) .build(); - AsyncRequestOperation operation - = new GetV1EmployeesEmployeeIdTerminations.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new GetV1EmployeesEmployeeIdRehire.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Create an employee termination - * - *

    Create a termination for an employee. The only things required are an effective date (their last day - * of work) and whether they should receive their wages in a one-off termination payroll or with the - * rest of the company. + * Create an employee rehire * - *

    Note that some states require employees to receive their final wages within 24 hours (unless they - * consent otherwise,) in which case running a one-off payroll may be the only option. + *

    Rehire is created whenever an employee is scheduled to return to the company. * *

    scope: `employments:write` * @@ -174,41 +154,31 @@ public CompletableFuture getTermin * * @return The async call builder */ - public PostV1EmployeesEmployeeIdTerminationsRequestBuilder createTermination() { - return new PostV1EmployeesEmployeeIdTerminationsRequestBuilder(sdkConfiguration); + public PostV1EmployeesEmployeeIdRehireRequestBuilder createRehire() { + return new PostV1EmployeesEmployeeIdRehireRequestBuilder(sdkConfiguration); } /** - * Create an employee termination - * - *

    Create a termination for an employee. The only things required are an effective date (their last day - * of work) and whether they should receive their wages in a one-off termination payroll or with the - * rest of the company. + * Create an employee rehire * - *

    Note that some states require employees to receive their final wages within 24 hours (unless they - * consent otherwise,) in which case running a one-off payroll may be the only option. + *

    Rehire is created whenever an employee is scheduled to return to the company. * *

    scope: `employments:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param employeeId The UUID of the employee - * @param requestBody - * @return {@code CompletableFuture} - The async response + * @param rehireBody + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture createTermination(String employeeId, PostV1EmployeesEmployeeIdTerminationsRequestBody requestBody) { - return createTermination(Optional.empty(), employeeId, requestBody); + public CompletableFuture createRehire(String employeeId, RehireBody rehireBody) { + return createRehire(Optional.empty(), employeeId, rehireBody); } /** - * Create an employee termination - * - *

    Create a termination for an employee. The only things required are an effective date (their last day - * of work) and whether they should receive their wages in a one-off termination payroll or with the - * rest of the company. + * Create an employee rehire * - *

    Note that some states require employees to receive their final wages within 24 hours (unless they - * consent otherwise,) in which case running a one-off payroll may be the only option. + *

    Rehire is created whenever an employee is scheduled to return to the company. * *

    scope: `employments:write` * @@ -216,30 +186,30 @@ public CompletableFuture createTe * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param employeeId The UUID of the employee - * @param requestBody - * @return {@code CompletableFuture} - The async response + * @param rehireBody + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture createTermination( - Optional xGustoAPIVersion, String employeeId, - PostV1EmployeesEmployeeIdTerminationsRequestBody requestBody) { - PostV1EmployeesEmployeeIdTerminationsRequest request = - PostV1EmployeesEmployeeIdTerminationsRequest + public CompletableFuture createRehire( + Optional xGustoAPIVersion, String employeeId, + RehireBody rehireBody) { + PostV1EmployeesEmployeeIdRehireRequest request = + PostV1EmployeesEmployeeIdRehireRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .employeeId(employeeId) - .requestBody(requestBody) + .rehireBody(rehireBody) .build(); - AsyncRequestOperation operation - = new PostV1EmployeesEmployeeIdTerminations.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new PostV1EmployeesEmployeeIdRehire.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Delete an employee termination + * Update an employee rehire * - *

    Delete an employee termination. + *

    Update an employee's rehire. * *

    scope: `employments:write` * @@ -247,30 +217,31 @@ public CompletableFuture createTe * * @return The async call builder */ - public DeleteV1EmployeesEmployeeIdTerminationsRequestBuilder deleteTermination() { - return new DeleteV1EmployeesEmployeeIdTerminationsRequestBuilder(sdkConfiguration); + public PutV1EmployeesEmployeeIdRehireRequestBuilder rehire() { + return new PutV1EmployeesEmployeeIdRehireRequestBuilder(sdkConfiguration); } /** - * Delete an employee termination + * Update an employee rehire * - *

    Delete an employee termination. + *

    Update an employee's rehire. * *

    scope: `employments:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param employeeId The UUID of the employee - * @return {@code CompletableFuture} - The async response + * @param rehireUpdateRequestBody Request body for updating an employee rehire. + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture deleteTermination(String employeeId) { - return deleteTermination(Optional.empty(), employeeId); + public CompletableFuture rehire(String employeeId, RehireUpdateRequestBody rehireUpdateRequestBody) { + return rehire(Optional.empty(), employeeId, rehireUpdateRequestBody); } /** - * Delete an employee termination + * Update an employee rehire * - *

    Delete an employee termination. + *

    Update an employee's rehire. * *

    scope: `employments:write` * @@ -278,31 +249,31 @@ public CompletableFuture delete * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param employeeId The UUID of the employee - * @return {@code CompletableFuture} - The async response + * @param rehireUpdateRequestBody Request body for updating an employee rehire. + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture deleteTermination(Optional xGustoAPIVersion, String employeeId) { - DeleteV1EmployeesEmployeeIdTerminationsRequest request = - DeleteV1EmployeesEmployeeIdTerminationsRequest + public CompletableFuture rehire( + Optional xGustoAPIVersion, String employeeId, + RehireUpdateRequestBody rehireUpdateRequestBody) { + PutV1EmployeesEmployeeIdRehireRequest request = + PutV1EmployeesEmployeeIdRehireRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .employeeId(employeeId) + .rehireUpdateRequestBody(rehireUpdateRequestBody) .build(); - AsyncRequestOperation operation - = new DeleteV1EmployeesEmployeeIdTerminations.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new PutV1EmployeesEmployeeIdRehire.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Update an employee termination - * - *

    Terminations are created whenever an employee is scheduled to leave the company. The only things - * required are an effective date (their last day of work) and whether they should receive their wages - * in a one-off termination payroll or with the rest of the company. + * Delete an employee rehire * - *

    Note that some states require employees to receive their final wages within 24 hours (unless they - * consent otherwise,) in which case running a one-off payroll may be the only option. + *

    Delete an employee rehire. An employee rehire cannot be deleted if it's active (past effective + * date). * *

    scope: `employments:write` * @@ -310,41 +281,32 @@ public CompletableFuture delete * * @return The async call builder */ - public PutV1TerminationsEmployeeIdRequestBuilder updateTermination() { - return new PutV1TerminationsEmployeeIdRequestBuilder(sdkConfiguration); + public DeleteV1EmployeesEmployeeIdRehireRequestBuilder deleteRehire() { + return new DeleteV1EmployeesEmployeeIdRehireRequestBuilder(sdkConfiguration); } /** - * Update an employee termination - * - *

    Terminations are created whenever an employee is scheduled to leave the company. The only things - * required are an effective date (their last day of work) and whether they should receive their wages - * in a one-off termination payroll or with the rest of the company. + * Delete an employee rehire * - *

    Note that some states require employees to receive their final wages within 24 hours (unless they - * consent otherwise,) in which case running a one-off payroll may be the only option. + *

    Delete an employee rehire. An employee rehire cannot be deleted if it's active (past effective + * date). * *

    scope: `employments:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param employeeId The UUID of the employee - * @param requestBody - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture updateTermination(String employeeId, PutV1TerminationsEmployeeIdRequestBody requestBody) { - return updateTermination(Optional.empty(), employeeId, requestBody); + public CompletableFuture deleteRehire(String employeeId) { + return deleteRehire(Optional.empty(), employeeId); } /** - * Update an employee termination - * - *

    Terminations are created whenever an employee is scheduled to leave the company. The only things - * required are an effective date (their last day of work) and whether they should receive their wages - * in a one-off termination payroll or with the rest of the company. + * Delete an employee rehire * - *

    Note that some states require employees to receive their final wages within 24 hours (unless they - * consent otherwise,) in which case running a one-off payroll may be the only option. + *

    Delete an employee rehire. An employee rehire cannot be deleted if it's active (past effective + * date). * *

    scope: `employments:write` * @@ -352,30 +314,26 @@ public CompletableFuture updateTermination( * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param employeeId The UUID of the employee - * @param requestBody - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture updateTermination( - Optional xGustoAPIVersion, String employeeId, - PutV1TerminationsEmployeeIdRequestBody requestBody) { - PutV1TerminationsEmployeeIdRequest request = - PutV1TerminationsEmployeeIdRequest + public CompletableFuture deleteRehire(Optional xGustoAPIVersion, String employeeId) { + DeleteV1EmployeesEmployeeIdRehireRequest request = + DeleteV1EmployeesEmployeeIdRehireRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .employeeId(employeeId) - .requestBody(requestBody) .build(); - AsyncRequestOperation operation - = new PutV1TerminationsEmployeeId.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new DeleteV1EmployeesEmployeeIdRehire.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Get an employee rehire + * Get employment history for an employee * - *

    Retrieve an employee's rehire, which contains information on when the employee returns to work. + *

    Retrieve the employment history for a given employee, which includes termination and rehire. * *

    scope: `employments:read` * @@ -383,30 +341,30 @@ public CompletableFuture updateTermination( * * @return The async call builder */ - public GetV1EmployeesEmployeeIdRehireRequestBuilder getRehire() { - return new GetV1EmployeesEmployeeIdRehireRequestBuilder(sdkConfiguration); + public GetV1EmployeesEmployeeIdEmploymentHistoryRequestBuilder getHistory() { + return new GetV1EmployeesEmployeeIdEmploymentHistoryRequestBuilder(sdkConfiguration); } /** - * Get an employee rehire + * Get employment history for an employee * - *

    Retrieve an employee's rehire, which contains information on when the employee returns to work. + *

    Retrieve the employment history for a given employee, which includes termination and rehire. * *

    scope: `employments:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param employeeId The UUID of the employee - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getRehire(String employeeId) { - return getRehire(Optional.empty(), employeeId); + public CompletableFuture getHistory(String employeeId) { + return getHistory(Optional.empty(), employeeId); } /** - * Get an employee rehire + * Get employment history for an employee * - *

    Retrieve an employee's rehire, which contains information on when the employee returns to work. + *

    Retrieve the employment history for a given employee, which includes termination and rehire. * *

    scope: `employments:read` * @@ -414,89 +372,104 @@ public CompletableFuture getRehire(Strin * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param employeeId The UUID of the employee - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getRehire(Optional xGustoAPIVersion, String employeeId) { - GetV1EmployeesEmployeeIdRehireRequest request = - GetV1EmployeesEmployeeIdRehireRequest + public CompletableFuture getHistory(Optional xGustoAPIVersion, String employeeId) { + GetV1EmployeesEmployeeIdEmploymentHistoryRequest request = + GetV1EmployeesEmployeeIdEmploymentHistoryRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .employeeId(employeeId) .build(); - AsyncRequestOperation operation - = new GetV1EmployeesEmployeeIdRehire.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new GetV1EmployeesEmployeeIdEmploymentHistory.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Create an employee rehire + * Get terminations for an employee * - *

    Rehire is created whenever an employee is scheduled to return to the company. + *

    Terminations are created whenever an employee is scheduled to leave the company. The only things + * required are an effective date (their last day of work) and whether they should receive their wages + * in a one-off termination payroll or with the rest of the company. * - *

    scope: `employments:write` + *

    Note that some states require employees to receive their final wages within 24 hours (unless they + * consent otherwise,) in which case running a one-off payroll may be the only option. + * + *

    scope: `employments:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public PostV1EmployeesEmployeeIdRehireRequestBuilder createRehire() { - return new PostV1EmployeesEmployeeIdRehireRequestBuilder(sdkConfiguration); + public GetV1EmployeesEmployeeIdTerminationsRequestBuilder getTerminations() { + return new GetV1EmployeesEmployeeIdTerminationsRequestBuilder(sdkConfiguration); } /** - * Create an employee rehire + * Get terminations for an employee * - *

    Rehire is created whenever an employee is scheduled to return to the company. + *

    Terminations are created whenever an employee is scheduled to leave the company. The only things + * required are an effective date (their last day of work) and whether they should receive their wages + * in a one-off termination payroll or with the rest of the company. * - *

    scope: `employments:write` + *

    Note that some states require employees to receive their final wages within 24 hours (unless they + * consent otherwise,) in which case running a one-off payroll may be the only option. + * + *

    scope: `employments:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param employeeId The UUID of the employee - * @param rehireBody - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture createRehire(String employeeId, RehireBody rehireBody) { - return createRehire(Optional.empty(), employeeId, rehireBody); + public CompletableFuture getTerminations(String employeeId) { + return getTerminations(Optional.empty(), employeeId); } /** - * Create an employee rehire + * Get terminations for an employee * - *

    Rehire is created whenever an employee is scheduled to return to the company. + *

    Terminations are created whenever an employee is scheduled to leave the company. The only things + * required are an effective date (their last day of work) and whether they should receive their wages + * in a one-off termination payroll or with the rest of the company. * - *

    scope: `employments:write` + *

    Note that some states require employees to receive their final wages within 24 hours (unless they + * consent otherwise,) in which case running a one-off payroll may be the only option. + * + *

    scope: `employments:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param employeeId The UUID of the employee - * @param rehireBody - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture createRehire( - Optional xGustoAPIVersion, String employeeId, - RehireBody rehireBody) { - PostV1EmployeesEmployeeIdRehireRequest request = - PostV1EmployeesEmployeeIdRehireRequest + public CompletableFuture getTerminations(Optional xGustoAPIVersion, String employeeId) { + GetV1EmployeesEmployeeIdTerminationsRequest request = + GetV1EmployeesEmployeeIdTerminationsRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .employeeId(employeeId) - .rehireBody(rehireBody) .build(); - AsyncRequestOperation operation - = new PostV1EmployeesEmployeeIdRehire.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new GetV1EmployeesEmployeeIdTerminations.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Update an employee rehire + * Create an employee termination * - *

    Update an employee's rehire. + *

    Create a termination for an employee. The only things required are an effective date (their last day + * of work) and whether they should receive their wages in a one-off termination payroll or with the + * rest of the company. + * + *

    Note that some states require employees to receive their final wages within 24 hours (unless they + * consent otherwise,) in which case running a one-off payroll may be the only option. * *

    scope: `employments:write` * @@ -504,31 +477,41 @@ public CompletableFuture createRehire( * * @return The async call builder */ - public PutV1EmployeesEmployeeIdRehireRequestBuilder rehire() { - return new PutV1EmployeesEmployeeIdRehireRequestBuilder(sdkConfiguration); + public PostV1EmployeesEmployeeIdTerminationsRequestBuilder createTermination() { + return new PostV1EmployeesEmployeeIdTerminationsRequestBuilder(sdkConfiguration); } /** - * Update an employee rehire + * Create an employee termination * - *

    Update an employee's rehire. + *

    Create a termination for an employee. The only things required are an effective date (their last day + * of work) and whether they should receive their wages in a one-off termination payroll or with the + * rest of the company. + * + *

    Note that some states require employees to receive their final wages within 24 hours (unless they + * consent otherwise,) in which case running a one-off payroll may be the only option. * *

    scope: `employments:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param employeeId The UUID of the employee - * @param rehireUpdateRequestBody Request body for updating an employee rehire. - * @return {@code CompletableFuture} - The async response + * @param requestBody + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture rehire(String employeeId, RehireUpdateRequestBody rehireUpdateRequestBody) { - return rehire(Optional.empty(), employeeId, rehireUpdateRequestBody); + public CompletableFuture createTermination(String employeeId, PostV1EmployeesEmployeeIdTerminationsRequestBody requestBody) { + return createTermination(Optional.empty(), employeeId, requestBody); } /** - * Update an employee rehire + * Create an employee termination * - *

    Update an employee's rehire. + *

    Create a termination for an employee. The only things required are an effective date (their last day + * of work) and whether they should receive their wages in a one-off termination payroll or with the + * rest of the company. + * + *

    Note that some states require employees to receive their final wages within 24 hours (unless they + * consent otherwise,) in which case running a one-off payroll may be the only option. * *

    scope: `employments:write` * @@ -536,31 +519,30 @@ public CompletableFuture rehire(String e * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param employeeId The UUID of the employee - * @param rehireUpdateRequestBody Request body for updating an employee rehire. - * @return {@code CompletableFuture} - The async response + * @param requestBody + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture rehire( - Optional xGustoAPIVersion, String employeeId, - RehireUpdateRequestBody rehireUpdateRequestBody) { - PutV1EmployeesEmployeeIdRehireRequest request = - PutV1EmployeesEmployeeIdRehireRequest + public CompletableFuture createTermination( + Optional xGustoAPIVersion, String employeeId, + PostV1EmployeesEmployeeIdTerminationsRequestBody requestBody) { + PostV1EmployeesEmployeeIdTerminationsRequest request = + PostV1EmployeesEmployeeIdTerminationsRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .employeeId(employeeId) - .rehireUpdateRequestBody(rehireUpdateRequestBody) + .requestBody(requestBody) .build(); - AsyncRequestOperation operation - = new PutV1EmployeesEmployeeIdRehire.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new PostV1EmployeesEmployeeIdTerminations.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Delete an employee rehire + * Delete an employee termination * - *

    Delete an employee rehire. An employee rehire cannot be deleted if it's active (past effective - * date). + *

    Delete an employee termination. * *

    scope: `employments:write` * @@ -568,32 +550,30 @@ public CompletableFuture rehire( * * @return The async call builder */ - public DeleteV1EmployeesEmployeeIdRehireRequestBuilder deleteRehire() { - return new DeleteV1EmployeesEmployeeIdRehireRequestBuilder(sdkConfiguration); + public DeleteV1EmployeesEmployeeIdTerminationsRequestBuilder deleteTermination() { + return new DeleteV1EmployeesEmployeeIdTerminationsRequestBuilder(sdkConfiguration); } /** - * Delete an employee rehire + * Delete an employee termination * - *

    Delete an employee rehire. An employee rehire cannot be deleted if it's active (past effective - * date). + *

    Delete an employee termination. * *

    scope: `employments:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param employeeId The UUID of the employee - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture deleteRehire(String employeeId) { - return deleteRehire(Optional.empty(), employeeId); + public CompletableFuture deleteTermination(String employeeId) { + return deleteTermination(Optional.empty(), employeeId); } /** - * Delete an employee rehire + * Delete an employee termination * - *

    Delete an employee rehire. An employee rehire cannot be deleted if it's active (past effective - * date). + *

    Delete an employee termination. * *

    scope: `employments:write` * @@ -601,75 +581,95 @@ public CompletableFuture deleteRehire * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param employeeId The UUID of the employee - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture deleteRehire(Optional xGustoAPIVersion, String employeeId) { - DeleteV1EmployeesEmployeeIdRehireRequest request = - DeleteV1EmployeesEmployeeIdRehireRequest + public CompletableFuture deleteTermination(Optional xGustoAPIVersion, String employeeId) { + DeleteV1EmployeesEmployeeIdTerminationsRequest request = + DeleteV1EmployeesEmployeeIdTerminationsRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .employeeId(employeeId) .build(); - AsyncRequestOperation operation - = new DeleteV1EmployeesEmployeeIdRehire.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new DeleteV1EmployeesEmployeeIdTerminations.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Get employment history for an employee + * Update an employee termination * - *

    Retrieve the employment history for a given employee, which includes termination and rehire. + *

    Terminations are created whenever an employee is scheduled to leave the company. The only things + * required are an effective date (their last day of work) and whether they should receive their wages + * in a one-off termination payroll or with the rest of the company. * - *

    scope: `employments:read` + *

    Note that some states require employees to receive their final wages within 24 hours (unless they + * consent otherwise,) in which case running a one-off payroll may be the only option. + * + *

    scope: `employments:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public GetV1EmployeesEmployeeIdEmploymentHistoryRequestBuilder getHistory() { - return new GetV1EmployeesEmployeeIdEmploymentHistoryRequestBuilder(sdkConfiguration); + public PutV1TerminationsEmployeeIdRequestBuilder updateTermination() { + return new PutV1TerminationsEmployeeIdRequestBuilder(sdkConfiguration); } /** - * Get employment history for an employee + * Update an employee termination * - *

    Retrieve the employment history for a given employee, which includes termination and rehire. + *

    Terminations are created whenever an employee is scheduled to leave the company. The only things + * required are an effective date (their last day of work) and whether they should receive their wages + * in a one-off termination payroll or with the rest of the company. * - *

    scope: `employments:read` + *

    Note that some states require employees to receive their final wages within 24 hours (unless they + * consent otherwise,) in which case running a one-off payroll may be the only option. + * + *

    scope: `employments:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param employeeId The UUID of the employee - * @return {@code CompletableFuture} - The async response + * @param requestBody + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getHistory(String employeeId) { - return getHistory(Optional.empty(), employeeId); + public CompletableFuture updateTermination(String employeeId, PutV1TerminationsEmployeeIdRequestBody requestBody) { + return updateTermination(Optional.empty(), employeeId, requestBody); } /** - * Get employment history for an employee + * Update an employee termination * - *

    Retrieve the employment history for a given employee, which includes termination and rehire. + *

    Terminations are created whenever an employee is scheduled to leave the company. The only things + * required are an effective date (their last day of work) and whether they should receive their wages + * in a one-off termination payroll or with the rest of the company. * - *

    scope: `employments:read` + *

    Note that some states require employees to receive their final wages within 24 hours (unless they + * consent otherwise,) in which case running a one-off payroll may be the only option. + * + *

    scope: `employments:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param employeeId The UUID of the employee - * @return {@code CompletableFuture} - The async response + * @param requestBody + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getHistory(Optional xGustoAPIVersion, String employeeId) { - GetV1EmployeesEmployeeIdEmploymentHistoryRequest request = - GetV1EmployeesEmployeeIdEmploymentHistoryRequest + public CompletableFuture updateTermination( + Optional xGustoAPIVersion, String employeeId, + PutV1TerminationsEmployeeIdRequestBody requestBody) { + PutV1TerminationsEmployeeIdRequest request = + PutV1TerminationsEmployeeIdRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .employeeId(employeeId) + .requestBody(requestBody) .build(); - AsyncRequestOperation operation - = new GetV1EmployeesEmployeeIdEmploymentHistory.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new PutV1TerminationsEmployeeId.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncEmployeeForms.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncEmployeeForms.java index 1baa42502..d838cd23b 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncEmployeeForms.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncEmployeeForms.java @@ -56,76 +56,6 @@ public EmployeeForms sync() { } - /** - * Generate a W2 form [DEMO] - * - *

    > 🚧 Demo action - * > - * > This action is only available in the Demo environment - * - *

    Generates a W2 document for testing purposes. - * - *

    scope: `employees:write` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The async call builder - */ - public PostV1SandboxGenerateW2RequestBuilder generateW2() { - return new PostV1SandboxGenerateW2RequestBuilder(sdkConfiguration); - } - - /** - * Generate a W2 form [DEMO] - * - *

    > 🚧 Demo action - * > - * > This action is only available in the Demo environment - * - *

    Generates a W2 document for testing purposes. - * - *

    scope: `employees:write` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param requestBody - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture generateW2(PostV1SandboxGenerateW2RequestBody requestBody) { - return generateW2(Optional.empty(), requestBody); - } - - /** - * Generate a W2 form [DEMO] - * - *

    > 🚧 Demo action - * > - * > This action is only available in the Demo environment - * - *

    Generates a W2 document for testing purposes. - * - *

    scope: `employees:write` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param requestBody - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture generateW2(Optional xGustoAPIVersion, PostV1SandboxGenerateW2RequestBody requestBody) { - PostV1SandboxGenerateW2Request request = - PostV1SandboxGenerateW2Request - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .requestBody(requestBody) - .build(); - AsyncRequestOperation operation - = new PostV1SandboxGenerateW2.Async(sdkConfiguration, _headers); - return operation.doRequest(request) - .thenCompose(operation::handleResponse); - } - - /** * Get all employee forms * @@ -350,4 +280,74 @@ public CompletableFuture sign(PutV1EmployeeFormSi .thenCompose(operation::handleResponse); } + + /** + * Generate a W2 form [DEMO] + * + *

    > 🚧 Demo action + * > + * > This action is only available in the Demo environment + * + *

    Generates a W2 document for testing purposes. + * + *

    scope: `employees:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public PostV1SandboxGenerateW2RequestBuilder generateW2() { + return new PostV1SandboxGenerateW2RequestBuilder(sdkConfiguration); + } + + /** + * Generate a W2 form [DEMO] + * + *

    > 🚧 Demo action + * > + * > This action is only available in the Demo environment + * + *

    Generates a W2 document for testing purposes. + * + *

    scope: `employees:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param requestBody + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture generateW2(PostV1SandboxGenerateW2RequestBody requestBody) { + return generateW2(Optional.empty(), requestBody); + } + + /** + * Generate a W2 form [DEMO] + * + *

    > 🚧 Demo action + * > + * > This action is only available in the Demo environment + * + *

    Generates a W2 document for testing purposes. + * + *

    scope: `employees:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param requestBody + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture generateW2(Optional xGustoAPIVersion, PostV1SandboxGenerateW2RequestBody requestBody) { + PostV1SandboxGenerateW2Request request = + PostV1SandboxGenerateW2Request + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .requestBody(requestBody) + .build(); + AsyncRequestOperation operation + = new PostV1SandboxGenerateW2.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncEmployees.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncEmployees.java index 70e37e817..a00645764 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncEmployees.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncEmployees.java @@ -16,6 +16,7 @@ import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1EmployeesEmployeeIdOnboardingStatusHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1EmployeesEmployeeIdOnboardingStatusRequest; import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1EmployeesHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1EmployeesQueryParamInclude; import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1EmployeesRequest; import com.gusto.embedded_api_v_2025_11_15.models.operations.GetVersionEmployeesTimeOffActivitiesHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2025_11_15.models.operations.GetVersionEmployeesTimeOffActivitiesRequest; @@ -32,7 +33,6 @@ import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1EmployeesHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1EmployeesRequest; import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1EmployeesRequestBody; -import com.gusto.embedded_api_v_2025_11_15.models.operations.QueryParamInclude; import com.gusto.embedded_api_v_2025_11_15.models.operations.async.DeleteV1EmployeeRequestBuilder; import com.gusto.embedded_api_v_2025_11_15.models.operations.async.DeleteV1EmployeeResponse; import com.gusto.embedded_api_v_2025_11_15.models.operations.async.GetV1CompaniesCompanyIdEmployeesPaymentDetailsRequestBuilder; @@ -98,14 +98,9 @@ public Employees sync() { /** - * Get employees of a company - * - *

    Get all of the employees, onboarding, active and terminated, for a given company. + * Get an employee's custom fields * - *

    Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee - * pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, - * `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope - * is included. This allows you to access employee and job metadata without exposing pay rates. + *

    Returns a list of the employee's custom fields. * *

    scope: `employees:read` * @@ -113,92 +108,56 @@ public Employees sync() { * * @return The async call builder */ - public GetV1CompaniesCompanyIdEmployeesRequestBuilder list() { - return new GetV1CompaniesCompanyIdEmployeesRequestBuilder(sdkConfiguration); + public GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder getCustomFields() { + return new GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder(sdkConfiguration); } /** - * Get employees of a company - * - *

    Get all of the employees, onboarding, active and terminated, for a given company. + * Get an employee's custom fields * - *

    Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee - * pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, - * `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope - * is included. This allows you to access employee and job metadata without exposing pay rates. + *

    Returns a list of the employee's custom fields. * *

    scope: `employees:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param request The request object containing all the parameters for the API call. - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture list(GetV1CompaniesCompanyIdEmployeesRequest request) { - AsyncRequestOperation operation - = new GetV1CompaniesCompanyIdEmployees.Async(sdkConfiguration, _headers); - return operation.doRequest(request) - .thenCompose(operation::handleResponse); - } - - - /** - * Create an employee - * - *

    Create an employee. - * - *

    scope: `employees:manage` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The async call builder - */ - public PostV1EmployeesRequestBuilder create() { - return new PostV1EmployeesRequestBuilder(sdkConfiguration); - } - - /** - * Create an employee - * - *

    Create an employee. - * - *

    scope: `employees:manage` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param companyId Company ID - * @return {@code CompletableFuture} - The async response + * @param employeeId The UUID of the employee + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture create(String companyId) { - return create(Optional.empty(), companyId, Optional.empty()); + public CompletableFuture getCustomFields(String employeeId) { + return getCustomFields( + Optional.empty(), employeeId, Optional.empty(), + Optional.empty()); } /** - * Create an employee + * Get an employee's custom fields * - *

    Create an employee. + *

    Returns a list of the employee's custom fields. * - *

    scope: `employees:manage` + *

    scope: `employees:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyId Company ID - * @param requestBody - * @return {@code CompletableFuture} - The async response + * @param employeeId The UUID of the employee + * @param page The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + * @param per Number of objects per page. For majority of endpoints will default to 25 + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture create( - Optional xGustoAPIVersion, String companyId, - Optional requestBody) { - PostV1EmployeesRequest request = - PostV1EmployeesRequest + public CompletableFuture getCustomFields( + Optional xGustoAPIVersion, String employeeId, + Optional page, Optional per) { + GetV1EmployeesEmployeeIdCustomFieldsRequest request = + GetV1EmployeesEmployeeIdCustomFieldsRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .companyId(companyId) - .requestBody(requestBody) + .employeeId(employeeId) + .page(page) + .per(per) .build(); - AsyncRequestOperation operation - = new PostV1Employees.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new GetV1EmployeesEmployeeIdCustomFields.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } @@ -258,72 +217,63 @@ public CompletableFuture /** - * Create a historical employee + * Get employee time off activities * - *

    Create a historical employee, an employee that was previously dismissed from the company in the - * current year. + *

    Get employee time off activities. * - *

    scope: `employees:manage` + *

    scope: `employee_time_off_activities:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public PostV1HistoricalEmployeesRequestBuilder createHistorical() { - return new PostV1HistoricalEmployeesRequestBuilder(sdkConfiguration); + public GetVersionEmployeesTimeOffActivitiesRequestBuilder getTimeOffActivities() { + return new GetVersionEmployeesTimeOffActivitiesRequestBuilder(sdkConfiguration); } /** - * Create a historical employee + * Get employee time off activities * - *

    Create a historical employee, an employee that was previously dismissed from the company in the - * current year. + *

    Get employee time off activities. * - *

    scope: `employees:manage` + *

    scope: `employee_time_off_activities:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company that will employ this historical record. - * @param historicalEmployeeBody Request body for creating or updating a **historical employee**—someone who already separated from the company and must appear on year-to-date or tax filings without receiving ongoing payroll. - * - * Send this object under the JSON root key `employee`. All dates are ISO 8601 (`YYYY-MM-DD`). Use a `work_address.location_uuid` returned from your company locations API for an active work site. - * - * @return {@code CompletableFuture} - The async response + * @param employeeUuid The UUID of the employee + * @param timeOffType The time off type name you want to query data for. ex: 'sick' or 'vacation' + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture createHistorical(String companyUuid, HistoricalEmployeeBody historicalEmployeeBody) { - return createHistorical(Optional.empty(), companyUuid, historicalEmployeeBody); + public CompletableFuture getTimeOffActivities(String employeeUuid, String timeOffType) { + return getTimeOffActivities(Optional.empty(), employeeUuid, timeOffType); } /** - * Create a historical employee + * Get employee time off activities * - *

    Create a historical employee, an employee that was previously dismissed from the company in the - * current year. + *

    Get employee time off activities. * - *

    scope: `employees:manage` + *

    scope: `employee_time_off_activities:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyUuid The UUID of the company that will employ this historical record. - * @param historicalEmployeeBody Request body for creating or updating a **historical employee**—someone who already separated from the company and must appear on year-to-date or tax filings without receiving ongoing payroll. - * - * Send this object under the JSON root key `employee`. All dates are ISO 8601 (`YYYY-MM-DD`). Use a `work_address.location_uuid` returned from your company locations API for an active work site. - * - * @return {@code CompletableFuture} - The async response + * @param employeeUuid The UUID of the employee + * @param timeOffType The time off type name you want to query data for. ex: 'sick' or 'vacation' + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture createHistorical( - Optional xGustoAPIVersion, String companyUuid, - HistoricalEmployeeBody historicalEmployeeBody) { - PostV1HistoricalEmployeesRequest request = - PostV1HistoricalEmployeesRequest + public CompletableFuture getTimeOffActivities( + Optional xGustoAPIVersion, String employeeUuid, + String timeOffType) { + GetVersionEmployeesTimeOffActivitiesRequest request = + GetVersionEmployeesTimeOffActivitiesRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .companyUuid(companyUuid) - .historicalEmployeeBody(historicalEmployeeBody) + .employeeUuid(employeeUuid) + .timeOffType(timeOffType) .build(); - AsyncRequestOperation operation - = new PostV1HistoricalEmployees.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new GetVersionEmployeesTimeOffActivities.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } @@ -391,7 +341,7 @@ public CompletableFuture get(String employeeId) { */ public CompletableFuture get( Optional xGustoAPIVersion, String employeeId, - Optional> include) { + Optional> include) { GetV1EmployeesRequest request = GetV1EmployeesRequest .builder() @@ -537,9 +487,14 @@ public CompletableFuture delete(OptionalReturns a list of the employee's custom fields. + *

    Get all of the employees, onboarding, active and terminated, for a given company. + * + *

    Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee + * pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, + * `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope + * is included. This allows you to access employee and job metadata without exposing pay rates. * *

    scope: `employees:read` * @@ -547,69 +502,39 @@ public CompletableFuture delete(OptionalReturns a list of the employee's custom fields. - * - *

    scope: `employees:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. + * Get employees of a company * - * @param employeeId The UUID of the employee - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture getCustomFields(String employeeId) { - return getCustomFields( - employeeId, Optional.empty(), Optional.empty(), - Optional.empty()); - } - - /** - * Get an employee's custom fields + *

    Get all of the employees, onboarding, active and terminated, for a given company. * - *

    Returns a list of the employee's custom fields. + *

    Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee + * pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, + * `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope + * is included. This allows you to access employee and job metadata without exposing pay rates. * *

    scope: `employees:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param employeeId The UUID of the employee - * @param page The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - * @param per Number of objects per page. For majority of endpoints will default to 25 - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @return {@code CompletableFuture} - The async response + * @param request The request object containing all the parameters for the API call. + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getCustomFields( - String employeeId, Optional page, - Optional per, Optional xGustoAPIVersion) { - GetV1EmployeesEmployeeIdCustomFieldsRequest request = - GetV1EmployeesEmployeeIdCustomFieldsRequest - .builder() - .employeeId(employeeId) - .page(page) - .per(per) - .xGustoAPIVersion(xGustoAPIVersion) - .build(); - AsyncRequestOperation operation - = new GetV1EmployeesEmployeeIdCustomFields.Async(sdkConfiguration, _headers); + public CompletableFuture list(GetV1CompaniesCompanyIdEmployeesRequest request) { + AsyncRequestOperation operation + = new GetV1CompaniesCompanyIdEmployees.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Update employee onboarding documents config - * - *

    Indicate whether to include the Form I-9 for an employee during the onboarding process. - * If included, the employee will be prompted to complete Form I-9 as part of their onboarding. + * Create an employee * - *

    ## Related guides - * - [Employee onboarding](doc:employee-onboarding) + *

    Create an employee. * *

    scope: `employees:manage` * @@ -617,60 +542,52 @@ public CompletableFuture getCustom * * @return The async call builder */ - public PutV1EmployeesEmployeeIdOnboardingDocumentsConfigRequestBuilder updateOnboardingDocumentsConfig() { - return new PutV1EmployeesEmployeeIdOnboardingDocumentsConfigRequestBuilder(sdkConfiguration); + public PostV1EmployeesRequestBuilder create() { + return new PostV1EmployeesRequestBuilder(sdkConfiguration); } /** - * Update employee onboarding documents config - * - *

    Indicate whether to include the Form I-9 for an employee during the onboarding process. - * If included, the employee will be prompted to complete Form I-9 as part of their onboarding. + * Create an employee * - *

    ## Related guides - * - [Employee onboarding](doc:employee-onboarding) + *

    Create an employee. * *

    scope: `employees:manage` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param employeeId The UUID of the employee - * @return {@code CompletableFuture} - The async response + * @param companyId Company ID + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture updateOnboardingDocumentsConfig(String employeeId) { - return updateOnboardingDocumentsConfig(Optional.empty(), employeeId, Optional.empty()); + public CompletableFuture create(String companyId) { + return create(Optional.empty(), companyId, Optional.empty()); } /** - * Update employee onboarding documents config - * - *

    Indicate whether to include the Form I-9 for an employee during the onboarding process. - * If included, the employee will be prompted to complete Form I-9 as part of their onboarding. + * Create an employee * - *

    ## Related guides - * - [Employee onboarding](doc:employee-onboarding) + *

    Create an employee. * *

    scope: `employees:manage` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param employeeId The UUID of the employee - * @param employeeOnboardingDocumentsConfigRequest Request body for updating an employee's onboarding documents configuration. - * @return {@code CompletableFuture} - The async response + * @param companyId Company ID + * @param requestBody + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture updateOnboardingDocumentsConfig( - Optional xGustoAPIVersion, String employeeId, - Optional employeeOnboardingDocumentsConfigRequest) { - PutV1EmployeesEmployeeIdOnboardingDocumentsConfigRequest request = - PutV1EmployeesEmployeeIdOnboardingDocumentsConfigRequest + public CompletableFuture create( + Optional xGustoAPIVersion, String companyId, + Optional requestBody) { + PostV1EmployeesRequest request = + PostV1EmployeesRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .employeeId(employeeId) - .employeeOnboardingDocumentsConfigRequest(employeeOnboardingDocumentsConfigRequest) + .companyId(companyId) + .requestBody(requestBody) .build(); - AsyncRequestOperation operation - = new PutV1EmployeesEmployeeIdOnboardingDocumentsConfig.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new PostV1Employees.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } @@ -978,63 +895,146 @@ public CompletableFuture updat /** - * Get employee time off activities + * Update employee onboarding documents config * - *

    Get employee time off activities. + *

    Indicate whether to include the Form I-9 for an employee during the onboarding process. + * If included, the employee will be prompted to complete Form I-9 as part of their onboarding. * - *

    scope: `employee_time_off_activities:read` + *

    ## Related guides + * - [Employee onboarding](doc:employee-onboarding) + * + *

    scope: `employees:manage` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public GetVersionEmployeesTimeOffActivitiesRequestBuilder getTimeOffActivities() { - return new GetVersionEmployeesTimeOffActivitiesRequestBuilder(sdkConfiguration); + public PutV1EmployeesEmployeeIdOnboardingDocumentsConfigRequestBuilder updateOnboardingDocumentsConfig() { + return new PutV1EmployeesEmployeeIdOnboardingDocumentsConfigRequestBuilder(sdkConfiguration); } /** - * Get employee time off activities + * Update employee onboarding documents config * - *

    Get employee time off activities. + *

    Indicate whether to include the Form I-9 for an employee during the onboarding process. + * If included, the employee will be prompted to complete Form I-9 as part of their onboarding. * - *

    scope: `employee_time_off_activities:read` + *

    ## Related guides + * - [Employee onboarding](doc:employee-onboarding) + * + *

    scope: `employees:manage` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param employeeUuid The UUID of the employee - * @param timeOffType The time off type name you want to query data for. ex: 'sick' or 'vacation' - * @return {@code CompletableFuture} - The async response + * @param employeeId The UUID of the employee + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getTimeOffActivities(String employeeUuid, String timeOffType) { - return getTimeOffActivities(Optional.empty(), employeeUuid, timeOffType); + public CompletableFuture updateOnboardingDocumentsConfig(String employeeId) { + return updateOnboardingDocumentsConfig(Optional.empty(), employeeId, Optional.empty()); } /** - * Get employee time off activities + * Update employee onboarding documents config * - *

    Get employee time off activities. + *

    Indicate whether to include the Form I-9 for an employee during the onboarding process. + * If included, the employee will be prompted to complete Form I-9 as part of their onboarding. * - *

    scope: `employee_time_off_activities:read` + *

    ## Related guides + * - [Employee onboarding](doc:employee-onboarding) + * + *

    scope: `employees:manage` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param employeeUuid The UUID of the employee - * @param timeOffType The time off type name you want to query data for. ex: 'sick' or 'vacation' - * @return {@code CompletableFuture} - The async response + * @param employeeId The UUID of the employee + * @param employeeOnboardingDocumentsConfigRequest Request body for updating an employee's onboarding documents configuration. + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getTimeOffActivities( - Optional xGustoAPIVersion, String employeeUuid, - String timeOffType) { - GetVersionEmployeesTimeOffActivitiesRequest request = - GetVersionEmployeesTimeOffActivitiesRequest + public CompletableFuture updateOnboardingDocumentsConfig( + Optional xGustoAPIVersion, String employeeId, + Optional employeeOnboardingDocumentsConfigRequest) { + PutV1EmployeesEmployeeIdOnboardingDocumentsConfigRequest request = + PutV1EmployeesEmployeeIdOnboardingDocumentsConfigRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .employeeUuid(employeeUuid) - .timeOffType(timeOffType) + .employeeId(employeeId) + .employeeOnboardingDocumentsConfigRequest(employeeOnboardingDocumentsConfigRequest) .build(); - AsyncRequestOperation operation - = new GetVersionEmployeesTimeOffActivities.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new PutV1EmployeesEmployeeIdOnboardingDocumentsConfig.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Create a historical employee + * + *

    Create a historical employee, an employee that was previously dismissed from the company in the + * current year. + * + *

    scope: `employees:manage` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public PostV1HistoricalEmployeesRequestBuilder createHistorical() { + return new PostV1HistoricalEmployeesRequestBuilder(sdkConfiguration); + } + + /** + * Create a historical employee + * + *

    Create a historical employee, an employee that was previously dismissed from the company in the + * current year. + * + *

    scope: `employees:manage` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param companyUuid The UUID of the company that will employ this historical record. + * @param historicalEmployeeBody Request body for creating or updating a **historical employee**—someone who already separated from the company and must appear on year-to-date or tax filings without receiving ongoing payroll. + * + * Send this object under the JSON root key `employee`. All dates are ISO 8601 (`YYYY-MM-DD`). Use a `work_address.location_uuid` returned from your company locations API for an active work site. + * + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture createHistorical(String companyUuid, HistoricalEmployeeBody historicalEmployeeBody) { + return createHistorical(Optional.empty(), companyUuid, historicalEmployeeBody); + } + + /** + * Create a historical employee + * + *

    Create a historical employee, an employee that was previously dismissed from the company in the + * current year. + * + *

    scope: `employees:manage` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company that will employ this historical record. + * @param historicalEmployeeBody Request body for creating or updating a **historical employee**—someone who already separated from the company and must appear on year-to-date or tax filings without receiving ongoing payroll. + * + * Send this object under the JSON root key `employee`. All dates are ISO 8601 (`YYYY-MM-DD`). Use a `work_address.location_uuid` returned from your company locations API for an active work site. + * + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture createHistorical( + Optional xGustoAPIVersion, String companyUuid, + HistoricalEmployeeBody historicalEmployeeBody) { + PostV1HistoricalEmployeesRequest request = + PostV1HistoricalEmployeesRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) + .historicalEmployeeBody(historicalEmployeeBody) + .build(); + AsyncRequestOperation operation + = new PostV1HistoricalEmployees.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncExternalPayrolls.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncExternalPayrolls.java index f2a1ae198..082f5c126 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncExternalPayrolls.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncExternalPayrolls.java @@ -210,9 +210,9 @@ public CompletableFuture create( /** - * Get an external payroll + * Get tax liabilities * - *

    Get an external payroll for a given company. + *

    Get tax liabilities from aggregate external payrolls for a company. * *

    scope: `external_payrolls:read` * @@ -220,31 +220,30 @@ public CompletableFuture create( * * @return The async call builder */ - public GetV1ExternalPayrollRequestBuilder retrieve() { - return new GetV1ExternalPayrollRequestBuilder(sdkConfiguration); + public GetV1TaxLiabilitiesRequestBuilder listTaxLiabilities() { + return new GetV1TaxLiabilitiesRequestBuilder(sdkConfiguration); } /** - * Get an external payroll + * Get tax liabilities * - *

    Get an external payroll for a given company. + *

    Get tax liabilities from aggregate external payrolls for a company. * *

    scope: `external_payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param companyUuid The UUID of the company - * @param externalPayrollId The UUID of the external payroll - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture retrieve(String companyUuid, String externalPayrollId) { - return retrieve(Optional.empty(), companyUuid, externalPayrollId); + public CompletableFuture listTaxLiabilities(String companyUuid) { + return listTaxLiabilities(Optional.empty(), companyUuid); } /** - * Get an external payroll + * Get tax liabilities * - *

    Get an external payroll for a given company. + *

    Get tax liabilities from aggregate external payrolls for a company. * *

    scope: `external_payrolls:read` * @@ -252,30 +251,26 @@ public CompletableFuture retrieve(String companyUu * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyUuid The UUID of the company - * @param externalPayrollId The UUID of the external payroll - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture retrieve( - Optional xGustoAPIVersion, String companyUuid, - String externalPayrollId) { - GetV1ExternalPayrollRequest request = - GetV1ExternalPayrollRequest + public CompletableFuture listTaxLiabilities(Optional xGustoAPIVersion, String companyUuid) { + GetV1TaxLiabilitiesRequest request = + GetV1TaxLiabilitiesRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .companyUuid(companyUuid) - .externalPayrollId(externalPayrollId) .build(); - AsyncRequestOperation operation - = new GetV1ExternalPayroll.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new GetV1TaxLiabilities.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Update an external payroll + * Update tax liabilities * - *

    Update an external payroll with a list of external payroll items. + *

    Update tax liabilities for a company. * *

    scope: `external_payrolls:write` * @@ -283,36 +278,31 @@ public CompletableFuture retrieve( * * @return The async call builder */ - public PutV1ExternalPayrollRequestBuilder update() { - return new PutV1ExternalPayrollRequestBuilder(sdkConfiguration); + public PutV1TaxLiabilitiesRequestBuilder updateTaxLiabilities() { + return new PutV1TaxLiabilitiesRequestBuilder(sdkConfiguration); } /** - * Update an external payroll + * Update tax liabilities * - *

    Update an external payroll with a list of external payroll items. + *

    Update tax liabilities for a company. * *

    scope: `external_payrolls:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param companyUuid The UUID of the company - * @param externalPayrollId The UUID of the external payroll - * @param externalPayrollUpdateRequest The request body for updating an external payroll with employee payroll items. - * @return {@code CompletableFuture} - The async response + * @param taxLiabilitySelectionsRequest The request body for updating tax liability selections. + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture update( - String companyUuid, String externalPayrollId, - ExternalPayrollUpdateRequest externalPayrollUpdateRequest) { - return update( - Optional.empty(), companyUuid, externalPayrollId, - externalPayrollUpdateRequest); + public CompletableFuture updateTaxLiabilities(String companyUuid, TaxLiabilitySelectionsRequest taxLiabilitySelectionsRequest) { + return updateTaxLiabilities(Optional.empty(), companyUuid, taxLiabilitySelectionsRequest); } /** - * Update an external payroll + * Update tax liabilities * - *

    Update an external payroll with a list of external payroll items. + *

    Update tax liabilities for a company. * *

    scope: `external_payrolls:write` * @@ -320,32 +310,34 @@ public CompletableFuture update( * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyUuid The UUID of the company - * @param externalPayrollId The UUID of the external payroll - * @param externalPayrollUpdateRequest The request body for updating an external payroll with employee payroll items. - * @return {@code CompletableFuture} - The async response + * @param taxLiabilitySelectionsRequest The request body for updating tax liability selections. + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture update( - Optional xGustoAPIVersion, String companyUuid, - String externalPayrollId, ExternalPayrollUpdateRequest externalPayrollUpdateRequest) { - PutV1ExternalPayrollRequest request = - PutV1ExternalPayrollRequest + public CompletableFuture updateTaxLiabilities( + Optional xGustoAPIVersion, String companyUuid, + TaxLiabilitySelectionsRequest taxLiabilitySelectionsRequest) { + PutV1TaxLiabilitiesRequest request = + PutV1TaxLiabilitiesRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .companyUuid(companyUuid) - .externalPayrollId(externalPayrollId) - .externalPayrollUpdateRequest(externalPayrollUpdateRequest) + .taxLiabilitySelectionsRequest(taxLiabilitySelectionsRequest) .build(); - AsyncRequestOperation operation - = new PutV1ExternalPayroll.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new PutV1TaxLiabilities.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Delete an external payroll + * Finalize tax liabilities options and convert into processed payrolls * - *

    Delete an external payroll. + *

    Finalizes tax liabilities for a company. All external payrolls edit action will be disabled. + * + *

    ### Asynchronous processing + * This endpoint triggers an asynchronous operation. The external payrolls will be processed in the + * background after finalization. * *

    scope: `external_payrolls:write` * @@ -353,31 +345,38 @@ public CompletableFuture update( * * @return The async call builder */ - public DeleteV1ExternalPayrollRequestBuilder delete() { - return new DeleteV1ExternalPayrollRequestBuilder(sdkConfiguration); + public PutV1TaxLiabilitiesFinishRequestBuilder finalizeTaxLiabilities() { + return new PutV1TaxLiabilitiesFinishRequestBuilder(sdkConfiguration); } /** - * Delete an external payroll + * Finalize tax liabilities options and convert into processed payrolls * - *

    Delete an external payroll. + *

    Finalizes tax liabilities for a company. All external payrolls edit action will be disabled. + * + *

    ### Asynchronous processing + * This endpoint triggers an asynchronous operation. The external payrolls will be processed in the + * background after finalization. * *

    scope: `external_payrolls:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param companyUuid The UUID of the company - * @param externalPayrollId The UUID of the external payroll - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture delete(String companyUuid, String externalPayrollId) { - return delete(Optional.empty(), companyUuid, externalPayrollId); + public CompletableFuture finalizeTaxLiabilities(String companyUuid) { + return finalizeTaxLiabilities(Optional.empty(), companyUuid); } /** - * Delete an external payroll + * Finalize tax liabilities options and convert into processed payrolls * - *

    Delete an external payroll. + *

    Finalizes tax liabilities for a company. All external payrolls edit action will be disabled. + * + *

    ### Asynchronous processing + * This endpoint triggers an asynchronous operation. The external payrolls will be processed in the + * background after finalization. * *

    scope: `external_payrolls:write` * @@ -385,31 +384,26 @@ public CompletableFuture delete(String companyU * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyUuid The UUID of the company - * @param externalPayrollId The UUID of the external payroll - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture delete( - Optional xGustoAPIVersion, String companyUuid, - String externalPayrollId) { - DeleteV1ExternalPayrollRequest request = - DeleteV1ExternalPayrollRequest + public CompletableFuture finalizeTaxLiabilities(Optional xGustoAPIVersion, String companyUuid) { + PutV1TaxLiabilitiesFinishRequest request = + PutV1TaxLiabilitiesFinishRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .companyUuid(companyUuid) - .externalPayrollId(externalPayrollId) .build(); - AsyncRequestOperation operation - = new DeleteV1ExternalPayroll.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new PutV1TaxLiabilitiesFinish.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Get tax suggestions for an external payroll + * Get an external payroll * - *

    Get tax suggestions for an external payroll. Earnings and/or benefits data must be saved prior to - * the calculation in order to retrieve accurate tax calculation. + *

    Get an external payroll for a given company. * *

    scope: `external_payrolls:read` * @@ -417,15 +411,14 @@ public CompletableFuture delete( * * @return The async call builder */ - public GetV1ExternalPayrollCalculateTaxesRequestBuilder calculateTaxes() { - return new GetV1ExternalPayrollCalculateTaxesRequestBuilder(sdkConfiguration); + public GetV1ExternalPayrollRequestBuilder retrieve() { + return new GetV1ExternalPayrollRequestBuilder(sdkConfiguration); } /** - * Get tax suggestions for an external payroll + * Get an external payroll * - *

    Get tax suggestions for an external payroll. Earnings and/or benefits data must be saved prior to - * the calculation in order to retrieve accurate tax calculation. + *

    Get an external payroll for a given company. * *

    scope: `external_payrolls:read` * @@ -433,17 +426,16 @@ public GetV1ExternalPayrollCalculateTaxesRequestBuilder calculateTaxes() { * * @param companyUuid The UUID of the company * @param externalPayrollId The UUID of the external payroll - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture calculateTaxes(String companyUuid, String externalPayrollId) { - return calculateTaxes(Optional.empty(), companyUuid, externalPayrollId); + public CompletableFuture retrieve(String companyUuid, String externalPayrollId) { + return retrieve(Optional.empty(), companyUuid, externalPayrollId); } /** - * Get tax suggestions for an external payroll + * Get an external payroll * - *

    Get tax suggestions for an external payroll. Earnings and/or benefits data must be saved prior to - * the calculation in order to retrieve accurate tax calculation. + *

    Get an external payroll for a given company. * *

    scope: `external_payrolls:read` * @@ -452,87 +444,99 @@ public CompletableFuture calculateTa * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyUuid The UUID of the company * @param externalPayrollId The UUID of the external payroll - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture calculateTaxes( - Optional xGustoAPIVersion, String companyUuid, + public CompletableFuture retrieve( + Optional xGustoAPIVersion, String companyUuid, String externalPayrollId) { - GetV1ExternalPayrollCalculateTaxesRequest request = - GetV1ExternalPayrollCalculateTaxesRequest + GetV1ExternalPayrollRequest request = + GetV1ExternalPayrollRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .companyUuid(companyUuid) .externalPayrollId(externalPayrollId) .build(); - AsyncRequestOperation operation - = new GetV1ExternalPayrollCalculateTaxes.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new GetV1ExternalPayroll.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Get tax liabilities + * Update an external payroll * - *

    Get tax liabilities from aggregate external payrolls for a company. + *

    Update an external payroll with a list of external payroll items. * - *

    scope: `external_payrolls:read` + *

    scope: `external_payrolls:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public GetV1TaxLiabilitiesRequestBuilder listTaxLiabilities() { - return new GetV1TaxLiabilitiesRequestBuilder(sdkConfiguration); + public PutV1ExternalPayrollRequestBuilder update() { + return new PutV1ExternalPayrollRequestBuilder(sdkConfiguration); } /** - * Get tax liabilities + * Update an external payroll * - *

    Get tax liabilities from aggregate external payrolls for a company. + *

    Update an external payroll with a list of external payroll items. * - *

    scope: `external_payrolls:read` + *

    scope: `external_payrolls:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param companyUuid The UUID of the company - * @return {@code CompletableFuture} - The async response + * @param externalPayrollId The UUID of the external payroll + * @param externalPayrollUpdateRequest The request body for updating an external payroll with employee payroll items. + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture listTaxLiabilities(String companyUuid) { - return listTaxLiabilities(Optional.empty(), companyUuid); + public CompletableFuture update( + String companyUuid, String externalPayrollId, + ExternalPayrollUpdateRequest externalPayrollUpdateRequest) { + return update( + Optional.empty(), companyUuid, externalPayrollId, + externalPayrollUpdateRequest); } /** - * Get tax liabilities + * Update an external payroll * - *

    Get tax liabilities from aggregate external payrolls for a company. + *

    Update an external payroll with a list of external payroll items. * - *

    scope: `external_payrolls:read` + *

    scope: `external_payrolls:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyUuid The UUID of the company - * @return {@code CompletableFuture} - The async response + * @param externalPayrollId The UUID of the external payroll + * @param externalPayrollUpdateRequest The request body for updating an external payroll with employee payroll items. + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture listTaxLiabilities(Optional xGustoAPIVersion, String companyUuid) { - GetV1TaxLiabilitiesRequest request = - GetV1TaxLiabilitiesRequest + public CompletableFuture update( + Optional xGustoAPIVersion, String companyUuid, + String externalPayrollId, ExternalPayrollUpdateRequest externalPayrollUpdateRequest) { + PutV1ExternalPayrollRequest request = + PutV1ExternalPayrollRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .companyUuid(companyUuid) + .externalPayrollId(externalPayrollId) + .externalPayrollUpdateRequest(externalPayrollUpdateRequest) .build(); - AsyncRequestOperation operation - = new GetV1TaxLiabilities.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new PutV1ExternalPayroll.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Update tax liabilities + * Delete an external payroll * - *

    Update tax liabilities for a company. + *

    Delete an external payroll. * *

    scope: `external_payrolls:write` * @@ -540,31 +544,31 @@ public CompletableFuture listTaxLiabilities(Optiona * * @return The async call builder */ - public PutV1TaxLiabilitiesRequestBuilder updateTaxLiabilities() { - return new PutV1TaxLiabilitiesRequestBuilder(sdkConfiguration); + public DeleteV1ExternalPayrollRequestBuilder delete() { + return new DeleteV1ExternalPayrollRequestBuilder(sdkConfiguration); } /** - * Update tax liabilities + * Delete an external payroll * - *

    Update tax liabilities for a company. + *

    Delete an external payroll. * *

    scope: `external_payrolls:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param companyUuid The UUID of the company - * @param taxLiabilitySelectionsRequest The request body for updating tax liability selections. - * @return {@code CompletableFuture} - The async response + * @param externalPayrollId The UUID of the external payroll + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture updateTaxLiabilities(String companyUuid, TaxLiabilitySelectionsRequest taxLiabilitySelectionsRequest) { - return updateTaxLiabilities(Optional.empty(), companyUuid, taxLiabilitySelectionsRequest); + public CompletableFuture delete(String companyUuid, String externalPayrollId) { + return delete(Optional.empty(), companyUuid, externalPayrollId); } /** - * Update tax liabilities + * Delete an external payroll * - *

    Update tax liabilities for a company. + *

    Delete an external payroll. * *

    scope: `external_payrolls:write` * @@ -572,91 +576,87 @@ public CompletableFuture updateTaxLiabilities(Strin * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyUuid The UUID of the company - * @param taxLiabilitySelectionsRequest The request body for updating tax liability selections. - * @return {@code CompletableFuture} - The async response + * @param externalPayrollId The UUID of the external payroll + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture updateTaxLiabilities( - Optional xGustoAPIVersion, String companyUuid, - TaxLiabilitySelectionsRequest taxLiabilitySelectionsRequest) { - PutV1TaxLiabilitiesRequest request = - PutV1TaxLiabilitiesRequest + public CompletableFuture delete( + Optional xGustoAPIVersion, String companyUuid, + String externalPayrollId) { + DeleteV1ExternalPayrollRequest request = + DeleteV1ExternalPayrollRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .companyUuid(companyUuid) - .taxLiabilitySelectionsRequest(taxLiabilitySelectionsRequest) + .externalPayrollId(externalPayrollId) .build(); - AsyncRequestOperation operation - = new PutV1TaxLiabilities.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new DeleteV1ExternalPayroll.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Finalize tax liabilities options and convert into processed payrolls - * - *

    Finalizes tax liabilities for a company. All external payrolls edit action will be disabled. + * Get tax suggestions for an external payroll * - *

    ### Asynchronous processing - * This endpoint triggers an asynchronous operation. The external payrolls will be processed in the - * background after finalization. + *

    Get tax suggestions for an external payroll. Earnings and/or benefits data must be saved prior to + * the calculation in order to retrieve accurate tax calculation. * - *

    scope: `external_payrolls:write` + *

    scope: `external_payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public PutV1TaxLiabilitiesFinishRequestBuilder finalizeTaxLiabilities() { - return new PutV1TaxLiabilitiesFinishRequestBuilder(sdkConfiguration); + public GetV1ExternalPayrollCalculateTaxesRequestBuilder calculateTaxes() { + return new GetV1ExternalPayrollCalculateTaxesRequestBuilder(sdkConfiguration); } /** - * Finalize tax liabilities options and convert into processed payrolls - * - *

    Finalizes tax liabilities for a company. All external payrolls edit action will be disabled. + * Get tax suggestions for an external payroll * - *

    ### Asynchronous processing - * This endpoint triggers an asynchronous operation. The external payrolls will be processed in the - * background after finalization. + *

    Get tax suggestions for an external payroll. Earnings and/or benefits data must be saved prior to + * the calculation in order to retrieve accurate tax calculation. * - *

    scope: `external_payrolls:write` + *

    scope: `external_payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param companyUuid The UUID of the company - * @return {@code CompletableFuture} - The async response + * @param externalPayrollId The UUID of the external payroll + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture finalizeTaxLiabilities(String companyUuid) { - return finalizeTaxLiabilities(Optional.empty(), companyUuid); + public CompletableFuture calculateTaxes(String companyUuid, String externalPayrollId) { + return calculateTaxes(Optional.empty(), companyUuid, externalPayrollId); } /** - * Finalize tax liabilities options and convert into processed payrolls - * - *

    Finalizes tax liabilities for a company. All external payrolls edit action will be disabled. + * Get tax suggestions for an external payroll * - *

    ### Asynchronous processing - * This endpoint triggers an asynchronous operation. The external payrolls will be processed in the - * background after finalization. + *

    Get tax suggestions for an external payroll. Earnings and/or benefits data must be saved prior to + * the calculation in order to retrieve accurate tax calculation. * - *

    scope: `external_payrolls:write` + *

    scope: `external_payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyUuid The UUID of the company - * @return {@code CompletableFuture} - The async response + * @param externalPayrollId The UUID of the external payroll + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture finalizeTaxLiabilities(Optional xGustoAPIVersion, String companyUuid) { - PutV1TaxLiabilitiesFinishRequest request = - PutV1TaxLiabilitiesFinishRequest + public CompletableFuture calculateTaxes( + Optional xGustoAPIVersion, String companyUuid, + String externalPayrollId) { + GetV1ExternalPayrollCalculateTaxesRequest request = + GetV1ExternalPayrollCalculateTaxesRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .companyUuid(companyUuid) + .externalPayrollId(externalPayrollId) .build(); - AsyncRequestOperation operation - = new PutV1TaxLiabilitiesFinish.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new GetV1ExternalPayrollCalculateTaxes.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncFederalTaxDetails.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncFederalTaxDetails.java index 75da6835a..7c978787e 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncFederalTaxDetails.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncFederalTaxDetails.java @@ -72,7 +72,7 @@ public GetV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder get() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture get(String companyId) { - return get(companyId, Optional.empty()); + return get(Optional.empty(), companyId); } /** @@ -85,16 +85,16 @@ public CompletableFuture get(S * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company * @return {@code CompletableFuture} - The async response */ - public CompletableFuture get(String companyId, Optional xGustoAPIVersion) { + public CompletableFuture get(Optional xGustoAPIVersion, String companyId) { GetV1CompaniesCompanyIdFederalTaxDetailsRequest request = GetV1CompaniesCompanyIdFederalTaxDetailsRequest .builder() - .companyId(companyId) .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) .build(); AsyncRequestOperation operation = new GetV1CompaniesCompanyIdFederalTaxDetails.Async(sdkConfiguration, _headers); @@ -158,7 +158,7 @@ public PutV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder update() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture update(String companyId, FederalTaxDetailsUpdate federalTaxDetailsUpdate) { - return update(companyId, Optional.empty(), federalTaxDetailsUpdate); + return update(Optional.empty(), companyId, federalTaxDetailsUpdate); } /** @@ -183,19 +183,19 @@ public CompletableFuture updat * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company * @param federalTaxDetailsUpdate * @return {@code CompletableFuture} - The async response */ public CompletableFuture update( - String companyId, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String companyId, FederalTaxDetailsUpdate federalTaxDetailsUpdate) { PutV1CompaniesCompanyIdFederalTaxDetailsRequest request = PutV1CompaniesCompanyIdFederalTaxDetailsRequest .builder() - .companyId(companyId) .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) .federalTaxDetailsUpdate(federalTaxDetailsUpdate) .build(); AsyncRequestOperation operation diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncGarnishments.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncGarnishments.java index 318bb963d..04a7f803c 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncGarnishments.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncGarnishments.java @@ -218,6 +218,61 @@ public CompletableFuture create( } + /** + * Get child support garnishment data + * + *

    Agency data and requirements to be used for creating child support garnishments + * + *

    scope: `garnishments:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public GetV1GarnishmentsChildSupportRequestBuilder getChildSupportData() { + return new GetV1GarnishmentsChildSupportRequestBuilder(sdkConfiguration); + } + + /** + * Get child support garnishment data + * + *

    Agency data and requirements to be used for creating child support garnishments + * + *

    scope: `garnishments:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getChildSupportDataDirect() { + return getChildSupportData(Optional.empty()); + } + + /** + * Get child support garnishment data + * + *

    Agency data and requirements to be used for creating child support garnishments + * + *

    scope: `garnishments:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getChildSupportData(Optional xGustoAPIVersion) { + GetV1GarnishmentsChildSupportRequest request = + GetV1GarnishmentsChildSupportRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .build(); + AsyncRequestOperation operation + = new GetV1GarnishmentsChildSupport.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + /** * Get a garnishment * @@ -368,59 +423,4 @@ public CompletableFuture update( .thenCompose(operation::handleResponse); } - - /** - * Get child support garnishment data - * - *

    Agency data and requirements to be used for creating child support garnishments - * - *

    scope: `garnishments:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The async call builder - */ - public GetV1GarnishmentsChildSupportRequestBuilder getChildSupportData() { - return new GetV1GarnishmentsChildSupportRequestBuilder(sdkConfiguration); - } - - /** - * Get child support garnishment data - * - *

    Agency data and requirements to be used for creating child support garnishments - * - *

    scope: `garnishments:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture getChildSupportDataDirect() { - return getChildSupportData(Optional.empty()); - } - - /** - * Get child support garnishment data - * - *

    Agency data and requirements to be used for creating child support garnishments - * - *

    scope: `garnishments:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture getChildSupportData(Optional xGustoAPIVersion) { - GetV1GarnishmentsChildSupportRequest request = - GetV1GarnishmentsChildSupportRequest - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .build(); - AsyncRequestOperation operation - = new GetV1GarnishmentsChildSupport.Async(sdkConfiguration, _headers); - return operation.doRequest(request) - .thenCompose(operation::handleResponse); - } - } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncGeneratedDocuments.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncGeneratedDocuments.java index 27197984c..e22cd5924 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncGeneratedDocuments.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncGeneratedDocuments.java @@ -5,8 +5,8 @@ import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.AsyncRequestOperation; -import com.gusto.embedded_api_v_2025_11_15.models.components.VersionHeader; import com.gusto.embedded_api_v_2025_11_15.models.operations.DocumentType; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest; import com.gusto.embedded_api_v_2025_11_15.models.operations.async.GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder; import com.gusto.embedded_api_v_2025_11_15.models.operations.async.GetV1GeneratedDocumentsDocumentTypeRequestUuidResponse; @@ -68,7 +68,7 @@ public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder get() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture get(DocumentType documentType, String requestUuid) { - return get(documentType, requestUuid, Optional.empty()); + return get(Optional.empty(), documentType, requestUuid); } /** @@ -81,20 +81,20 @@ public CompletableFuture * *

    If set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param documentType The type of document being generated * @param requestUuid The UUID of the request to generate a document. Generate document endpoints return request_uuids to be used with the GET generated document endpoint. - * @param xGustoAPIVersion * @return {@code CompletableFuture} - The async response */ public CompletableFuture get( - DocumentType documentType, String requestUuid, - Optional xGustoAPIVersion) { + Optional xGustoAPIVersion, DocumentType documentType, + String requestUuid) { GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest request = GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest .builder() + .xGustoAPIVersion(xGustoAPIVersion) .documentType(documentType) .requestUuid(requestUuid) - .xGustoAPIVersion(xGustoAPIVersion) .build(); AsyncRequestOperation operation = new GetV1GeneratedDocumentsDocumentTypeRequestUuid.Async(sdkConfiguration, _headers); diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncGustoEmbedded.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncGustoEmbedded.java index af3462fda..f62bcda9e 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncGustoEmbedded.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncGustoEmbedded.java @@ -11,126 +11,138 @@ public class AsyncGustoEmbedded { private static final Headers _headers = Headers.EMPTY; - private final AsyncIntrospection introspection; + private final AsyncAchTransactions achTransactions; private final AsyncCompanies companies; - private final AsyncInvoices invoices; + private final AsyncCompanyBenefits companyBenefits; + + private final AsyncReports reports; private final AsyncCompanyAttachments companyAttachments; private final AsyncCompanyAttachment companyAttachment; - private final AsyncFederalTaxDetails federalTaxDetails; + private final AsyncBankAccounts bankAccounts; + + private final AsyncCompanyForms companyForms; private final AsyncIndustrySelection industrySelection; - private final AsyncSignatories signatories; + private final AsyncNotifications notifications; - private final AsyncFlows flows; + private final AsyncPaymentConfigs paymentConfigs; - private final AsyncLocations locations; + private final AsyncTaxRequirements taxRequirements; - private final AsyncBankAccounts bankAccounts; + private final AsyncFederalTaxDetails federalTaxDetails; - private final AsyncExternalPayrolls externalPayrolls; + private final AsyncJobsAndCompensations jobsAndCompensations; - private final AsyncPaymentConfigs paymentConfigs; + private final AsyncContractorPaymentMethod contractorPaymentMethod; - private final AsyncPaySchedules paySchedules; + private final AsyncContractorPaymentMethods contractorPaymentMethods; - private final AsyncEmployees employees; + private final AsyncContractorForms contractorForms; - private final AsyncHistoricalEmployees historicalEmployees; + private final AsyncContractors contractors; - private final AsyncDepartments departments; + private final AsyncContractorPaymentGroups contractorPaymentGroups; - private final AsyncEmployeeEmployments employeeEmployments; + private final AsyncContractorPayments contractorPayments; - private final AsyncEmployeeAddresses employeeAddresses; + private final AsyncDepartments departments; - private final AsyncEmployeeTaxSetup employeeTaxSetup; + private final AsyncContractorDocuments contractorDocuments; + + private final AsyncEarningTypes earningTypes; private final AsyncEmployeePaymentMethods employeePaymentMethods; private final AsyncEmployeePaymentMethod employeePaymentMethod; - private final AsyncJobsAndCompensations jobsAndCompensations; + private final AsyncEmployeeBenefits employeeBenefits; - private final AsyncEarningTypes earningTypes; + private final AsyncEmployees employees; - private final AsyncContractors contractors; + private final AsyncEmployeeTaxSetup employeeTaxSetup; - private final AsyncContractorPaymentMethod contractorPaymentMethod; + private final AsyncEmployeeForms employeeForms; - private final AsyncContractorPaymentMethods contractorPaymentMethods; + private final AsyncEmployeeEmployments employeeEmployments; - private final AsyncWebhooks webhooks; + private final AsyncEvents events; - private final AsyncContractorForms contractorForms; + private final AsyncExternalPayrolls externalPayrolls; - private final AsyncContractorDocuments contractorDocuments; + private final AsyncFlows flows; - private final AsyncEmployeeForms employeeForms; + private final AsyncGarnishments garnishments; private final AsyncPayrolls payrolls; - private final AsyncTimeOffPolicies timeOffPolicies; - - private final AsyncContractorPayments contractorPayments; + private final AsyncGeneratedDocuments generatedDocuments; - private final AsyncContractorPaymentGroups contractorPaymentGroups; + private final AsyncHistoricalEmployees historicalEmployees; - private final AsyncCompanyForms companyForms; + private final AsyncHolidayPayPolicies holidayPayPolicies; - private final AsyncGeneratedDocuments generatedDocuments; + private final AsyncEmployeeAddresses employeeAddresses; - private final AsyncReports reports; + private final AsyncI9Verification i9Verification; - private final AsyncCompanyBenefits companyBenefits; + private final AsyncInformationRequests informationRequests; - private final AsyncEmployeeBenefits employeeBenefits; + private final AsyncInvoices invoices; - private final AsyncGarnishments garnishments; + private final AsyncLocations locations; - private final AsyncI9Verification i9Verification; + private final AsyncMemberPortalInvitations memberPortalInvitations; - private final AsyncTaxRequirements taxRequirements; + private final AsyncPaySchedules paySchedules; - private final AsyncHolidayPayPolicies holidayPayPolicies; + private final AsyncPayrollCancellations payrollCancellations; - private final AsyncNotifications notifications; + private final AsyncPayrollDigests payrollDigests; - private final AsyncEvents events; + private final AsyncTimeOffPolicies timeOffPolicies; - private final AsyncInformationRequests informationRequests; + private final AsyncPeopleBatches peopleBatches; private final AsyncRecoveryCases recoveryCases; - private final AsyncAchTransactions achTransactions; + private final AsyncReimbursements reimbursements; - private final AsyncWireInRequests wireInRequests; + private final AsyncReverseWireTransactions reverseWireTransactions; private final AsyncSalaryEstimates salaryEstimates; - private final AsyncReimbursements reimbursements; + private final AsyncSignatories signatories; - private final AsyncPeopleBatches peopleBatches; + private final AsyncTaxPayments taxPayments; private final AsyncTimeOffRequests timeOffRequests; - private final AsyncPayrollDigests payrollDigests; + private final AsyncIntrospection introspection; - public AsyncIntrospection introspection() { - return introspection; + private final AsyncWebhooks webhooks; + + private final AsyncWireInRequests wireInRequests; + + public AsyncAchTransactions achTransactions() { + return achTransactions; } public AsyncCompanies companies() { return companies; } - public AsyncInvoices invoices() { - return invoices; + public AsyncCompanyBenefits companyBenefits() { + return companyBenefits; + } + + public AsyncReports reports() { + return reports; } public AsyncCompanyAttachments companyAttachments() { @@ -141,64 +153,72 @@ public AsyncCompanyAttachment companyAttachment() { return companyAttachment; } - public AsyncFederalTaxDetails federalTaxDetails() { - return federalTaxDetails; + public AsyncBankAccounts bankAccounts() { + return bankAccounts; + } + + public AsyncCompanyForms companyForms() { + return companyForms; } public AsyncIndustrySelection industrySelection() { return industrySelection; } - public AsyncSignatories signatories() { - return signatories; + public AsyncNotifications notifications() { + return notifications; } - public AsyncFlows flows() { - return flows; + public AsyncPaymentConfigs paymentConfigs() { + return paymentConfigs; } - public AsyncLocations locations() { - return locations; + public AsyncTaxRequirements taxRequirements() { + return taxRequirements; } - public AsyncBankAccounts bankAccounts() { - return bankAccounts; + public AsyncFederalTaxDetails federalTaxDetails() { + return federalTaxDetails; } - public AsyncExternalPayrolls externalPayrolls() { - return externalPayrolls; + public AsyncJobsAndCompensations jobsAndCompensations() { + return jobsAndCompensations; } - public AsyncPaymentConfigs paymentConfigs() { - return paymentConfigs; + public AsyncContractorPaymentMethod contractorPaymentMethod() { + return contractorPaymentMethod; } - public AsyncPaySchedules paySchedules() { - return paySchedules; + public AsyncContractorPaymentMethods contractorPaymentMethods() { + return contractorPaymentMethods; } - public AsyncEmployees employees() { - return employees; + public AsyncContractorForms contractorForms() { + return contractorForms; } - public AsyncHistoricalEmployees historicalEmployees() { - return historicalEmployees; + public AsyncContractors contractors() { + return contractors; } - public AsyncDepartments departments() { - return departments; + public AsyncContractorPaymentGroups contractorPaymentGroups() { + return contractorPaymentGroups; } - public AsyncEmployeeEmployments employeeEmployments() { - return employeeEmployments; + public AsyncContractorPayments contractorPayments() { + return contractorPayments; } - public AsyncEmployeeAddresses employeeAddresses() { - return employeeAddresses; + public AsyncDepartments departments() { + return departments; } - public AsyncEmployeeTaxSetup employeeTaxSetup() { - return employeeTaxSetup; + public AsyncContractorDocuments contractorDocuments() { + return contractorDocuments; + } + + public AsyncEarningTypes earningTypes() { + return earningTypes; } public AsyncEmployeePaymentMethods employeePaymentMethods() { @@ -209,136 +229,140 @@ public AsyncEmployeePaymentMethod employeePaymentMethod() { return employeePaymentMethod; } - public AsyncJobsAndCompensations jobsAndCompensations() { - return jobsAndCompensations; + public AsyncEmployeeBenefits employeeBenefits() { + return employeeBenefits; } - public AsyncEarningTypes earningTypes() { - return earningTypes; + public AsyncEmployees employees() { + return employees; } - public AsyncContractors contractors() { - return contractors; + public AsyncEmployeeTaxSetup employeeTaxSetup() { + return employeeTaxSetup; } - public AsyncContractorPaymentMethod contractorPaymentMethod() { - return contractorPaymentMethod; + public AsyncEmployeeForms employeeForms() { + return employeeForms; } - public AsyncContractorPaymentMethods contractorPaymentMethods() { - return contractorPaymentMethods; + public AsyncEmployeeEmployments employeeEmployments() { + return employeeEmployments; } - public AsyncWebhooks webhooks() { - return webhooks; + public AsyncEvents events() { + return events; } - public AsyncContractorForms contractorForms() { - return contractorForms; + public AsyncExternalPayrolls externalPayrolls() { + return externalPayrolls; } - public AsyncContractorDocuments contractorDocuments() { - return contractorDocuments; + public AsyncFlows flows() { + return flows; } - public AsyncEmployeeForms employeeForms() { - return employeeForms; + public AsyncGarnishments garnishments() { + return garnishments; } public AsyncPayrolls payrolls() { return payrolls; } - public AsyncTimeOffPolicies timeOffPolicies() { - return timeOffPolicies; - } - - public AsyncContractorPayments contractorPayments() { - return contractorPayments; + public AsyncGeneratedDocuments generatedDocuments() { + return generatedDocuments; } - public AsyncContractorPaymentGroups contractorPaymentGroups() { - return contractorPaymentGroups; + public AsyncHistoricalEmployees historicalEmployees() { + return historicalEmployees; } - public AsyncCompanyForms companyForms() { - return companyForms; + public AsyncHolidayPayPolicies holidayPayPolicies() { + return holidayPayPolicies; } - public AsyncGeneratedDocuments generatedDocuments() { - return generatedDocuments; + public AsyncEmployeeAddresses employeeAddresses() { + return employeeAddresses; } - public AsyncReports reports() { - return reports; + public AsyncI9Verification i9Verification() { + return i9Verification; } - public AsyncCompanyBenefits companyBenefits() { - return companyBenefits; + public AsyncInformationRequests informationRequests() { + return informationRequests; } - public AsyncEmployeeBenefits employeeBenefits() { - return employeeBenefits; + public AsyncInvoices invoices() { + return invoices; } - public AsyncGarnishments garnishments() { - return garnishments; + public AsyncLocations locations() { + return locations; } - public AsyncI9Verification i9Verification() { - return i9Verification; + public AsyncMemberPortalInvitations memberPortalInvitations() { + return memberPortalInvitations; } - public AsyncTaxRequirements taxRequirements() { - return taxRequirements; + public AsyncPaySchedules paySchedules() { + return paySchedules; } - public AsyncHolidayPayPolicies holidayPayPolicies() { - return holidayPayPolicies; + public AsyncPayrollCancellations payrollCancellations() { + return payrollCancellations; } - public AsyncNotifications notifications() { - return notifications; + public AsyncPayrollDigests payrollDigests() { + return payrollDigests; } - public AsyncEvents events() { - return events; + public AsyncTimeOffPolicies timeOffPolicies() { + return timeOffPolicies; } - public AsyncInformationRequests informationRequests() { - return informationRequests; + public AsyncPeopleBatches peopleBatches() { + return peopleBatches; } public AsyncRecoveryCases recoveryCases() { return recoveryCases; } - public AsyncAchTransactions achTransactions() { - return achTransactions; + public AsyncReimbursements reimbursements() { + return reimbursements; } - public AsyncWireInRequests wireInRequests() { - return wireInRequests; + public AsyncReverseWireTransactions reverseWireTransactions() { + return reverseWireTransactions; } public AsyncSalaryEstimates salaryEstimates() { return salaryEstimates; } - public AsyncReimbursements reimbursements() { - return reimbursements; + public AsyncSignatories signatories() { + return signatories; } - public AsyncPeopleBatches peopleBatches() { - return peopleBatches; + public AsyncTaxPayments taxPayments() { + return taxPayments; } public AsyncTimeOffRequests timeOffRequests() { return timeOffRequests; } - public AsyncPayrollDigests payrollDigests() { - return payrollDigests; + public AsyncIntrospection introspection() { + return introspection; + } + + public AsyncWebhooks webhooks() { + return webhooks; + } + + public AsyncWireInRequests wireInRequests() { + return wireInRequests; } private SDKConfiguration sdkConfiguration; @@ -347,61 +371,65 @@ public AsyncPayrollDigests payrollDigests() { AsyncGustoEmbedded(GustoEmbedded syncSDK, SDKConfiguration sdkConfiguration) { this.syncSDK = syncSDK; this.sdkConfiguration = sdkConfiguration; - this.introspection = new AsyncIntrospection(syncSDK.introspection(), sdkConfiguration); + this.achTransactions = new AsyncAchTransactions(syncSDK.achTransactions(), sdkConfiguration); this.companies = new AsyncCompanies(syncSDK.companies(), sdkConfiguration); - this.invoices = new AsyncInvoices(syncSDK.invoices(), sdkConfiguration); + this.companyBenefits = new AsyncCompanyBenefits(syncSDK.companyBenefits(), sdkConfiguration); + this.reports = new AsyncReports(syncSDK.reports(), sdkConfiguration); this.companyAttachments = new AsyncCompanyAttachments(syncSDK.companyAttachments(), sdkConfiguration); this.companyAttachment = new AsyncCompanyAttachment(syncSDK.companyAttachment(), sdkConfiguration); - this.federalTaxDetails = new AsyncFederalTaxDetails(syncSDK.federalTaxDetails(), sdkConfiguration); - this.industrySelection = new AsyncIndustrySelection(syncSDK.industrySelection(), sdkConfiguration); - this.signatories = new AsyncSignatories(syncSDK.signatories(), sdkConfiguration); - this.flows = new AsyncFlows(syncSDK.flows(), sdkConfiguration); - this.locations = new AsyncLocations(syncSDK.locations(), sdkConfiguration); this.bankAccounts = new AsyncBankAccounts(syncSDK.bankAccounts(), sdkConfiguration); - this.externalPayrolls = new AsyncExternalPayrolls(syncSDK.externalPayrolls(), sdkConfiguration); + this.companyForms = new AsyncCompanyForms(syncSDK.companyForms(), sdkConfiguration); + this.industrySelection = new AsyncIndustrySelection(syncSDK.industrySelection(), sdkConfiguration); + this.notifications = new AsyncNotifications(syncSDK.notifications(), sdkConfiguration); this.paymentConfigs = new AsyncPaymentConfigs(syncSDK.paymentConfigs(), sdkConfiguration); - this.paySchedules = new AsyncPaySchedules(syncSDK.paySchedules(), sdkConfiguration); - this.employees = new AsyncEmployees(syncSDK.employees(), sdkConfiguration); - this.historicalEmployees = new AsyncHistoricalEmployees(syncSDK.historicalEmployees(), sdkConfiguration); - this.departments = new AsyncDepartments(syncSDK.departments(), sdkConfiguration); - this.employeeEmployments = new AsyncEmployeeEmployments(syncSDK.employeeEmployments(), sdkConfiguration); - this.employeeAddresses = new AsyncEmployeeAddresses(syncSDK.employeeAddresses(), sdkConfiguration); - this.employeeTaxSetup = new AsyncEmployeeTaxSetup(syncSDK.employeeTaxSetup(), sdkConfiguration); - this.employeePaymentMethods = new AsyncEmployeePaymentMethods(syncSDK.employeePaymentMethods(), sdkConfiguration); - this.employeePaymentMethod = new AsyncEmployeePaymentMethod(syncSDK.employeePaymentMethod(), sdkConfiguration); + this.taxRequirements = new AsyncTaxRequirements(syncSDK.taxRequirements(), sdkConfiguration); + this.federalTaxDetails = new AsyncFederalTaxDetails(syncSDK.federalTaxDetails(), sdkConfiguration); this.jobsAndCompensations = new AsyncJobsAndCompensations(syncSDK.jobsAndCompensations(), sdkConfiguration); - this.earningTypes = new AsyncEarningTypes(syncSDK.earningTypes(), sdkConfiguration); - this.contractors = new AsyncContractors(syncSDK.contractors(), sdkConfiguration); this.contractorPaymentMethod = new AsyncContractorPaymentMethod(syncSDK.contractorPaymentMethod(), sdkConfiguration); this.contractorPaymentMethods = new AsyncContractorPaymentMethods(syncSDK.contractorPaymentMethods(), sdkConfiguration); - this.webhooks = new AsyncWebhooks(syncSDK.webhooks(), sdkConfiguration); this.contractorForms = new AsyncContractorForms(syncSDK.contractorForms(), sdkConfiguration); + this.contractors = new AsyncContractors(syncSDK.contractors(), sdkConfiguration); + this.contractorPaymentGroups = new AsyncContractorPaymentGroups(syncSDK.contractorPaymentGroups(), sdkConfiguration); + this.contractorPayments = new AsyncContractorPayments(syncSDK.contractorPayments(), sdkConfiguration); + this.departments = new AsyncDepartments(syncSDK.departments(), sdkConfiguration); this.contractorDocuments = new AsyncContractorDocuments(syncSDK.contractorDocuments(), sdkConfiguration); + this.earningTypes = new AsyncEarningTypes(syncSDK.earningTypes(), sdkConfiguration); + this.employeePaymentMethods = new AsyncEmployeePaymentMethods(syncSDK.employeePaymentMethods(), sdkConfiguration); + this.employeePaymentMethod = new AsyncEmployeePaymentMethod(syncSDK.employeePaymentMethod(), sdkConfiguration); + this.employeeBenefits = new AsyncEmployeeBenefits(syncSDK.employeeBenefits(), sdkConfiguration); + this.employees = new AsyncEmployees(syncSDK.employees(), sdkConfiguration); + this.employeeTaxSetup = new AsyncEmployeeTaxSetup(syncSDK.employeeTaxSetup(), sdkConfiguration); this.employeeForms = new AsyncEmployeeForms(syncSDK.employeeForms(), sdkConfiguration); + this.employeeEmployments = new AsyncEmployeeEmployments(syncSDK.employeeEmployments(), sdkConfiguration); + this.events = new AsyncEvents(syncSDK.events(), sdkConfiguration); + this.externalPayrolls = new AsyncExternalPayrolls(syncSDK.externalPayrolls(), sdkConfiguration); + this.flows = new AsyncFlows(syncSDK.flows(), sdkConfiguration); + this.garnishments = new AsyncGarnishments(syncSDK.garnishments(), sdkConfiguration); this.payrolls = new AsyncPayrolls(syncSDK.payrolls(), sdkConfiguration); - this.timeOffPolicies = new AsyncTimeOffPolicies(syncSDK.timeOffPolicies(), sdkConfiguration); - this.contractorPayments = new AsyncContractorPayments(syncSDK.contractorPayments(), sdkConfiguration); - this.contractorPaymentGroups = new AsyncContractorPaymentGroups(syncSDK.contractorPaymentGroups(), sdkConfiguration); - this.companyForms = new AsyncCompanyForms(syncSDK.companyForms(), sdkConfiguration); this.generatedDocuments = new AsyncGeneratedDocuments(syncSDK.generatedDocuments(), sdkConfiguration); - this.reports = new AsyncReports(syncSDK.reports(), sdkConfiguration); - this.companyBenefits = new AsyncCompanyBenefits(syncSDK.companyBenefits(), sdkConfiguration); - this.employeeBenefits = new AsyncEmployeeBenefits(syncSDK.employeeBenefits(), sdkConfiguration); - this.garnishments = new AsyncGarnishments(syncSDK.garnishments(), sdkConfiguration); - this.i9Verification = new AsyncI9Verification(syncSDK.i9Verification(), sdkConfiguration); - this.taxRequirements = new AsyncTaxRequirements(syncSDK.taxRequirements(), sdkConfiguration); + this.historicalEmployees = new AsyncHistoricalEmployees(syncSDK.historicalEmployees(), sdkConfiguration); this.holidayPayPolicies = new AsyncHolidayPayPolicies(syncSDK.holidayPayPolicies(), sdkConfiguration); - this.notifications = new AsyncNotifications(syncSDK.notifications(), sdkConfiguration); - this.events = new AsyncEvents(syncSDK.events(), sdkConfiguration); + this.employeeAddresses = new AsyncEmployeeAddresses(syncSDK.employeeAddresses(), sdkConfiguration); + this.i9Verification = new AsyncI9Verification(syncSDK.i9Verification(), sdkConfiguration); this.informationRequests = new AsyncInformationRequests(syncSDK.informationRequests(), sdkConfiguration); + this.invoices = new AsyncInvoices(syncSDK.invoices(), sdkConfiguration); + this.locations = new AsyncLocations(syncSDK.locations(), sdkConfiguration); + this.memberPortalInvitations = new AsyncMemberPortalInvitations(syncSDK.memberPortalInvitations(), sdkConfiguration); + this.paySchedules = new AsyncPaySchedules(syncSDK.paySchedules(), sdkConfiguration); + this.payrollCancellations = new AsyncPayrollCancellations(syncSDK.payrollCancellations(), sdkConfiguration); + this.payrollDigests = new AsyncPayrollDigests(syncSDK.payrollDigests(), sdkConfiguration); + this.timeOffPolicies = new AsyncTimeOffPolicies(syncSDK.timeOffPolicies(), sdkConfiguration); + this.peopleBatches = new AsyncPeopleBatches(syncSDK.peopleBatches(), sdkConfiguration); this.recoveryCases = new AsyncRecoveryCases(syncSDK.recoveryCases(), sdkConfiguration); - this.achTransactions = new AsyncAchTransactions(syncSDK.achTransactions(), sdkConfiguration); - this.wireInRequests = new AsyncWireInRequests(syncSDK.wireInRequests(), sdkConfiguration); - this.salaryEstimates = new AsyncSalaryEstimates(syncSDK.salaryEstimates(), sdkConfiguration); this.reimbursements = new AsyncReimbursements(syncSDK.reimbursements(), sdkConfiguration); - this.peopleBatches = new AsyncPeopleBatches(syncSDK.peopleBatches(), sdkConfiguration); + this.reverseWireTransactions = new AsyncReverseWireTransactions(syncSDK.reverseWireTransactions(), sdkConfiguration); + this.salaryEstimates = new AsyncSalaryEstimates(syncSDK.salaryEstimates(), sdkConfiguration); + this.signatories = new AsyncSignatories(syncSDK.signatories(), sdkConfiguration); + this.taxPayments = new AsyncTaxPayments(syncSDK.taxPayments(), sdkConfiguration); this.timeOffRequests = new AsyncTimeOffRequests(syncSDK.timeOffRequests(), sdkConfiguration); - this.payrollDigests = new AsyncPayrollDigests(syncSDK.payrollDigests(), sdkConfiguration); + this.introspection = new AsyncIntrospection(syncSDK.introspection(), sdkConfiguration); + this.webhooks = new AsyncWebhooks(syncSDK.webhooks(), sdkConfiguration); + this.wireInRequests = new AsyncWireInRequests(syncSDK.wireInRequests(), sdkConfiguration); } /** diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncIndustrySelection.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncIndustrySelection.java index 6bd6bf701..0bfbe6d95 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncIndustrySelection.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncIndustrySelection.java @@ -72,7 +72,7 @@ public GetV1CompanyIndustryRequestBuilder get() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture get(String companyId) { - return get(companyId, Optional.empty()); + return get(Optional.empty(), companyId); } /** @@ -85,16 +85,16 @@ public CompletableFuture get(String companyId) { * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company * @return {@code CompletableFuture} - The async response */ - public CompletableFuture get(String companyId, Optional xGustoAPIVersion) { + public CompletableFuture get(Optional xGustoAPIVersion, String companyId) { GetV1CompanyIndustryRequest request = GetV1CompanyIndustryRequest .builder() - .companyId(companyId) .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) .build(); AsyncRequestOperation operation = new GetV1CompanyIndustry.Async(sdkConfiguration, _headers); @@ -150,7 +150,7 @@ public PutV1CompanyIndustryRequestBuilder update() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture update(String companyId, CompanyIndustrySelectionRequiredBody companyIndustrySelectionRequiredBody) { - return update(companyId, Optional.empty(), companyIndustrySelectionRequiredBody); + return update(Optional.empty(), companyId, companyIndustrySelectionRequiredBody); } /** @@ -171,19 +171,19 @@ public CompletableFuture update(String companyId, * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company * @param companyIndustrySelectionRequiredBody * @return {@code CompletableFuture} - The async response */ public CompletableFuture update( - String companyId, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String companyId, CompanyIndustrySelectionRequiredBody companyIndustrySelectionRequiredBody) { PutV1CompanyIndustryRequest request = PutV1CompanyIndustryRequest .builder() - .companyId(companyId) .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) .companyIndustrySelectionRequiredBody(companyIndustrySelectionRequiredBody) .build(); AsyncRequestOperation operation diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncIntrospection.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncIntrospection.java index e65d3b6ef..d1de27791 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncIntrospection.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncIntrospection.java @@ -5,11 +5,11 @@ import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.AsyncRequestOperation; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1TokenInfoHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1TokenInfoRequest; -import com.gusto.embedded_api_v_2025_11_15.models.operations.HeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.OauthAccessTokenHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2025_11_15.models.operations.OauthAccessTokenRequest; import com.gusto.embedded_api_v_2025_11_15.models.operations.OauthAccessTokenRequestBody; -import com.gusto.embedded_api_v_2025_11_15.models.operations.XGustoAPIVersion; import com.gusto.embedded_api_v_2025_11_15.models.operations.async.GetV1TokenInfoRequestBuilder; import com.gusto.embedded_api_v_2025_11_15.models.operations.async.GetV1TokenInfoResponse; import com.gusto.embedded_api_v_2025_11_15.models.operations.async.OauthAccessTokenRequestBuilder; @@ -41,6 +41,52 @@ public Introspection sync() { } + /** + * Create a System Access Token or Refresh an Access Token + * + *

    Creates a system access token or refreshes an oauth access token + * + * @return The async call builder + */ + public OauthAccessTokenRequestBuilder oauthAccessToken() { + return new OauthAccessTokenRequestBuilder(sdkConfiguration); + } + + /** + * Create a System Access Token or Refresh an Access Token + * + *

    Creates a system access token or refreshes an oauth access token + * + * @param requestBody + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture oauthAccessToken(OauthAccessTokenRequestBody requestBody) { + return oauthAccessToken(Optional.empty(), requestBody); + } + + /** + * Create a System Access Token or Refresh an Access Token + * + *

    Creates a system access token or refreshes an oauth access token + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param requestBody + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture oauthAccessToken(Optional xGustoAPIVersion, OauthAccessTokenRequestBody requestBody) { + OauthAccessTokenRequest request = + OauthAccessTokenRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .requestBody(requestBody) + .build(); + AsyncRequestOperation operation + = new OauthAccessToken.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + /** * Get info about the current access token * @@ -86,7 +132,7 @@ public CompletableFuture getInfoDirect() { * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getInfo(Optional xGustoAPIVersion) { + public CompletableFuture getInfo(Optional xGustoAPIVersion) { GetV1TokenInfoRequest request = GetV1TokenInfoRequest .builder() @@ -98,50 +144,4 @@ public CompletableFuture getInfo(OptionalCreates a system access token or refreshes an oauth access token - * - * @return The async call builder - */ - public OauthAccessTokenRequestBuilder oauthAccessToken() { - return new OauthAccessTokenRequestBuilder(sdkConfiguration); - } - - /** - * Create a System Access Token or Refresh an Access Token - * - *

    Creates a system access token or refreshes an oauth access token - * - * @param requestBody - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture oauthAccessToken(OauthAccessTokenRequestBody requestBody) { - return oauthAccessToken(Optional.empty(), requestBody); - } - - /** - * Create a System Access Token or Refresh an Access Token - * - *

    Creates a system access token or refreshes an oauth access token - * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param requestBody - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture oauthAccessToken(Optional xGustoAPIVersion, OauthAccessTokenRequestBody requestBody) { - OauthAccessTokenRequest request = - OauthAccessTokenRequest - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .requestBody(requestBody) - .build(); - AsyncRequestOperation operation - = new OauthAccessToken.Async(sdkConfiguration, _headers); - return operation.doRequest(request) - .thenCompose(operation::handleResponse); - } - } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncJobsAndCompensations.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncJobsAndCompensations.java index 07525437d..3d81d0d2a 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncJobsAndCompensations.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncJobsAndCompensations.java @@ -85,680 +85,680 @@ public JobsAndCompensations sync() { /** - * Get jobs for an employee - * - *

    Get all of the jobs that an employee holds. - * Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee - * pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, - * `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope - * is included. This allows you to access employee and job metadata without exposing pay rates. - * - *

    Compensation data in the response requires the `compensations:read` scope. - * - *

    scope: `jobs:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The async call builder - */ - public GetV1EmployeesEmployeeIdJobsRequestBuilder getJobs() { - return new GetV1EmployeesEmployeeIdJobsRequestBuilder(sdkConfiguration); - } - - /** - * Get jobs for an employee - * - *

    Get all of the jobs that an employee holds. - * Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee - * pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, - * `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope - * is included. This allows you to access employee and job metadata without exposing pay rates. - * - *

    Compensation data in the response requires the `compensations:read` scope. - * - *

    scope: `jobs:read` + * Get compensations for a job * - *

    If set, this operation will use Security#companyAccessAuth from the global security. + *

    Compensations contain information on how much is paid out for a job. Jobs may have many + * compensations, but only one that is active. The current compensation is the one with the most recent + * `effective_date`. * - * @param request The request object containing all the parameters for the API call. - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture getJobs(GetV1EmployeesEmployeeIdJobsRequest request) { - AsyncRequestOperation operation - = new GetV1EmployeesEmployeeIdJobs.Async(sdkConfiguration, _headers); - return operation.doRequest(request) - .thenCompose(operation::handleResponse); - } - - - /** - * Create a job + *

    *Note: Currently the API does not support creating multiple compensations per job - creating a + * compensation with the same job_uuid as another will fail with a relevant error.* * - *

    Create a job. + *

    Use `flsa_status` to determine if an employee is eligible for overtime + * By default the API returns only the current compensation - use the `include` parameter to return all + * compensations. * - *

    scope: `jobs:write` + *

    scope: `compensations:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public PostV1EmployeesEmployeeIdJobsRequestBuilder createJob() { - return new PostV1EmployeesEmployeeIdJobsRequestBuilder(sdkConfiguration); + public GetV1JobsJobIdCompensationsRequestBuilder getCompensations() { + return new GetV1JobsJobIdCompensationsRequestBuilder(sdkConfiguration); } /** - * Create a job - * - *

    Create a job. - * - *

    scope: `jobs:write` + * Get compensations for a job * - *

    If set, this operation will use Security#companyAccessAuth from the global security. + *

    Compensations contain information on how much is paid out for a job. Jobs may have many + * compensations, but only one that is active. The current compensation is the one with the most recent + * `effective_date`. * - * @param employeeId The UUID of the employee - * @param jobsCreateRequestBody Request body for creating a job. - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture createJob(String employeeId, JobsCreateRequestBody jobsCreateRequestBody) { - return createJob(employeeId, Optional.empty(), jobsCreateRequestBody); - } - - /** - * Create a job + *

    *Note: Currently the API does not support creating multiple compensations per job - creating a + * compensation with the same job_uuid as another will fail with a relevant error.* * - *

    Create a job. + *

    Use `flsa_status` to determine if an employee is eligible for overtime + * By default the API returns only the current compensation - use the `include` parameter to return all + * compensations. * - *

    scope: `jobs:write` + *

    scope: `compensations:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param employeeId The UUID of the employee - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param jobsCreateRequestBody Request body for creating a job. - * @return {@code CompletableFuture} - The async response + * @param request The request object containing all the parameters for the API call. + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture createJob( - String employeeId, Optional xGustoAPIVersion, - JobsCreateRequestBody jobsCreateRequestBody) { - PostV1EmployeesEmployeeIdJobsRequest request = - PostV1EmployeesEmployeeIdJobsRequest - .builder() - .employeeId(employeeId) - .xGustoAPIVersion(xGustoAPIVersion) - .jobsCreateRequestBody(jobsCreateRequestBody) - .build(); - AsyncRequestOperation operation - = new PostV1EmployeesEmployeeIdJobs.Async(sdkConfiguration, _headers); + public CompletableFuture getCompensations(GetV1JobsJobIdCompensationsRequest request) { + AsyncRequestOperation operation + = new GetV1JobsJobIdCompensations.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Get a job + * Create a compensation * - *

    Get a job. + *

    Compensations contain information on how much is paid out for a job. Jobs may have many + * compensations, but only one that is active. The current compensation is the one with the most recent + * `effective_date`. * - *

    Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee - * pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, - * `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope - * is included. This allows you to access employee and job metadata without exposing pay rates. + *

    ### Prerequisites + * Before calling this endpoint: + * 1. A [job](ref:post-v1-jobs-job_id) must exist for the employee * - *

    Compensation data in the response requires the `compensations:read` scope. + *

    ### Webhooks + * - `employee_job_compensation.created`: Fires when a compensation is successfully created * - *

    scope: `jobs:read` + *

    scope: `compensations:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public GetV1JobsJobIdRequestBuilder getJob() { - return new GetV1JobsJobIdRequestBuilder(sdkConfiguration); + public PostV1CompensationsCompensationIdRequestBuilder createCompensation() { + return new PostV1CompensationsCompensationIdRequestBuilder(sdkConfiguration); } /** - * Get a job + * Create a compensation * - *

    Get a job. + *

    Compensations contain information on how much is paid out for a job. Jobs may have many + * compensations, but only one that is active. The current compensation is the one with the most recent + * `effective_date`. * - *

    Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee - * pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, - * `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope - * is included. This allows you to access employee and job metadata without exposing pay rates. + *

    ### Prerequisites + * Before calling this endpoint: + * 1. A [job](ref:post-v1-jobs-job_id) must exist for the employee * - *

    Compensation data in the response requires the `compensations:read` scope. + *

    ### Webhooks + * - `employee_job_compensation.created`: Fires when a compensation is successfully created * - *

    scope: `jobs:read` + *

    scope: `compensations:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param jobId The UUID of the job - * @return {@code CompletableFuture} - The async response + * @param compensationsRequestBody Request body for creating a compensation. + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getJob(String jobId) { - return getJob(jobId, Optional.empty(), Optional.empty()); + public CompletableFuture createCompensation(String jobId, CompensationsRequestBody compensationsRequestBody) { + return createCompensation(Optional.empty(), jobId, compensationsRequestBody); } /** - * Get a job + * Create a compensation * - *

    Get a job. + *

    Compensations contain information on how much is paid out for a job. Jobs may have many + * compensations, but only one that is active. The current compensation is the one with the most recent + * `effective_date`. * - *

    Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee - * pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, - * `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope - * is included. This allows you to access employee and job metadata without exposing pay rates. + *

    ### Prerequisites + * Before calling this endpoint: + * 1. A [job](ref:post-v1-jobs-job_id) must exist for the employee * - *

    Compensation data in the response requires the `compensations:read` scope. + *

    ### Webhooks + * - `employee_job_compensation.created`: Fires when a compensation is successfully created * - *

    scope: `jobs:read` + *

    scope: `compensations:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param jobId The UUID of the job - * @param include Available options: - * - all_compensations: Include all effective dated compensations for each job instead of only the current compensation - * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @return {@code CompletableFuture} - The async response + * @param jobId The UUID of the job + * @param compensationsRequestBody Request body for creating a compensation. + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getJob( - String jobId, Optional include, - Optional xGustoAPIVersion) { - GetV1JobsJobIdRequest request = - GetV1JobsJobIdRequest + public CompletableFuture createCompensation( + Optional xGustoAPIVersion, String jobId, + CompensationsRequestBody compensationsRequestBody) { + PostV1CompensationsCompensationIdRequest request = + PostV1CompensationsCompensationIdRequest .builder() - .jobId(jobId) - .include(include) .xGustoAPIVersion(xGustoAPIVersion) + .jobId(jobId) + .compensationsRequestBody(compensationsRequestBody) .build(); - AsyncRequestOperation operation - = new GetV1JobsJobId.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new PostV1CompensationsCompensationId.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Update a job + * Get a compensation * - *

    Update a job. + *

    Compensations contain information on how much is paid out for a job. Jobs may have many + * compensations, but only one that is active. The current compensation is the one with the most recent + * `effective_date`. * - *

    scope: `jobs:write` + *

    scope: `compensations:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public PutV1JobsJobIdRequestBuilder update() { - return new PutV1JobsJobIdRequestBuilder(sdkConfiguration); + public GetV1CompensationsCompensationIdRequestBuilder getCompensation() { + return new GetV1CompensationsCompensationIdRequestBuilder(sdkConfiguration); } /** - * Update a job + * Get a compensation * - *

    Update a job. + *

    Compensations contain information on how much is paid out for a job. Jobs may have many + * compensations, but only one that is active. The current compensation is the one with the most recent + * `effective_date`. * - *

    scope: `jobs:write` + *

    scope: `compensations:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param jobId The UUID of the job - * @param jobsUpdateRequestBody Request body for updating a job. - * @return {@code CompletableFuture} - The async response + * @param compensationId The UUID of the compensation + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture update(String jobId, JobsUpdateRequestBody jobsUpdateRequestBody) { - return update(jobId, Optional.empty(), jobsUpdateRequestBody); + public CompletableFuture getCompensation(String compensationId) { + return getCompensation(Optional.empty(), compensationId); } /** - * Update a job + * Get a compensation * - *

    Update a job. + *

    Compensations contain information on how much is paid out for a job. Jobs may have many + * compensations, but only one that is active. The current compensation is the one with the most recent + * `effective_date`. * - *

    scope: `jobs:write` + *

    scope: `compensations:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param jobId The UUID of the job * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param jobsUpdateRequestBody Request body for updating a job. - * @return {@code CompletableFuture} - The async response + * @param compensationId The UUID of the compensation + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture update( - String jobId, Optional xGustoAPIVersion, - JobsUpdateRequestBody jobsUpdateRequestBody) { - PutV1JobsJobIdRequest request = - PutV1JobsJobIdRequest + public CompletableFuture getCompensation(Optional xGustoAPIVersion, String compensationId) { + GetV1CompensationsCompensationIdRequest request = + GetV1CompensationsCompensationIdRequest .builder() - .jobId(jobId) .xGustoAPIVersion(xGustoAPIVersion) - .jobsUpdateRequestBody(jobsUpdateRequestBody) + .compensationId(compensationId) .build(); - AsyncRequestOperation operation - = new PutV1JobsJobId.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new GetV1CompensationsCompensationId.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Delete an individual job + * Update a compensation * - *

    Deletes a specific job that an employee holds. + *

    Compensations contain information on how much is paid out for a job. Jobs may have many + * compensations, but only one that is active. The current compensation is the one with the most recent + * `effective_date`. * - *

    scope: `jobs:write` + *

    ### Webhooks + * - `employee_job_compensation.updated`: Fires when a compensation is successfully updated + * + *

    scope: `compensations:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public DeleteV1JobsJobIdRequestBuilder delete() { - return new DeleteV1JobsJobIdRequestBuilder(sdkConfiguration); + public PutV1CompensationsCompensationIdRequestBuilder updateCompensation() { + return new PutV1CompensationsCompensationIdRequestBuilder(sdkConfiguration); } /** - * Delete an individual job + * Update a compensation * - *

    Deletes a specific job that an employee holds. + *

    Compensations contain information on how much is paid out for a job. Jobs may have many + * compensations, but only one that is active. The current compensation is the one with the most recent + * `effective_date`. * - *

    scope: `jobs:write` + *

    ### Webhooks + * - `employee_job_compensation.updated`: Fires when a compensation is successfully updated + * + *

    scope: `compensations:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param jobId The UUID of the job - * @return {@code CompletableFuture} - The async response + * @param compensationId The UUID of the compensation + * @param compensationsUpdateRequestBody Request body for updating a compensation. + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture delete(String jobId) { - return delete(jobId, Optional.empty()); + public CompletableFuture updateCompensation(String compensationId, CompensationsUpdateRequestBody compensationsUpdateRequestBody) { + return updateCompensation(Optional.empty(), compensationId, compensationsUpdateRequestBody); } /** - * Delete an individual job + * Update a compensation * - *

    Deletes a specific job that an employee holds. + *

    Compensations contain information on how much is paid out for a job. Jobs may have many + * compensations, but only one that is active. The current compensation is the one with the most recent + * `effective_date`. * - *

    scope: `jobs:write` + *

    ### Webhooks + * - `employee_job_compensation.updated`: Fires when a compensation is successfully updated + * + *

    scope: `compensations:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param jobId The UUID of the job * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @return {@code CompletableFuture} - The async response + * @param compensationId The UUID of the compensation + * @param compensationsUpdateRequestBody Request body for updating a compensation. + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture delete(String jobId, Optional xGustoAPIVersion) { - DeleteV1JobsJobIdRequest request = - DeleteV1JobsJobIdRequest + public CompletableFuture updateCompensation( + Optional xGustoAPIVersion, String compensationId, + CompensationsUpdateRequestBody compensationsUpdateRequestBody) { + PutV1CompensationsCompensationIdRequest request = + PutV1CompensationsCompensationIdRequest .builder() - .jobId(jobId) .xGustoAPIVersion(xGustoAPIVersion) + .compensationId(compensationId) + .compensationsUpdateRequestBody(compensationsUpdateRequestBody) .build(); - AsyncRequestOperation operation - = new DeleteV1JobsJobId.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new PutV1CompensationsCompensationId.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Get compensations for a job + * Delete a compensation * *

    Compensations contain information on how much is paid out for a job. Jobs may have many * compensations, but only one that is active. The current compensation is the one with the most recent * `effective_date`. * - *

    *Note: Currently the API does not support creating multiple compensations per job - creating a - * compensation with the same job_uuid as another will fail with a relevant error.* + *

    This endpoint deletes a compensation for a job that hasn't been processed on payroll. * - *

    Use `flsa_status` to determine if an employee is eligible for overtime - * By default the API returns only the current compensation - use the `include` parameter to return all - * compensations. + *

    ### Webhooks + * - `employee_job_compensation.destroyed`: Fires when a compensation is successfully deleted * - *

    scope: `compensations:read` + *

    scope: `compensations:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public GetV1JobsJobIdCompensationsRequestBuilder getCompensations() { - return new GetV1JobsJobIdCompensationsRequestBuilder(sdkConfiguration); + public DeleteV1CompensationsCompensationIdRequestBuilder deleteCompensation() { + return new DeleteV1CompensationsCompensationIdRequestBuilder(sdkConfiguration); } /** - * Get compensations for a job + * Delete a compensation * *

    Compensations contain information on how much is paid out for a job. Jobs may have many * compensations, but only one that is active. The current compensation is the one with the most recent * `effective_date`. * - *

    *Note: Currently the API does not support creating multiple compensations per job - creating a - * compensation with the same job_uuid as another will fail with a relevant error.* + *

    This endpoint deletes a compensation for a job that hasn't been processed on payroll. * - *

    Use `flsa_status` to determine if an employee is eligible for overtime - * By default the API returns only the current compensation - use the `include` parameter to return all - * compensations. + *

    ### Webhooks + * - `employee_job_compensation.destroyed`: Fires when a compensation is successfully deleted * - *

    scope: `compensations:read` + *

    scope: `compensations:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param request The request object containing all the parameters for the API call. - * @return {@code CompletableFuture} - The async response + * @param compensationId The UUID of the compensation + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getCompensations(GetV1JobsJobIdCompensationsRequest request) { - AsyncRequestOperation operation - = new GetV1JobsJobIdCompensations.Async(sdkConfiguration, _headers); - return operation.doRequest(request) - .thenCompose(operation::handleResponse); + public CompletableFuture deleteCompensation(String compensationId) { + return deleteCompensation(Optional.empty(), compensationId); } - /** - * Create a compensation + * Delete a compensation * *

    Compensations contain information on how much is paid out for a job. Jobs may have many * compensations, but only one that is active. The current compensation is the one with the most recent * `effective_date`. * - *

    ### Prerequisites - * Before calling this endpoint: - * 1. A [job](ref:post-v1-jobs-job_id) must exist for the employee + *

    This endpoint deletes a compensation for a job that hasn't been processed on payroll. * *

    ### Webhooks - * - `employee_job_compensation.created`: Fires when a compensation is successfully created + * - `employee_job_compensation.destroyed`: Fires when a compensation is successfully deleted * *

    scope: `compensations:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param compensationId The UUID of the compensation + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture deleteCompensation(Optional xGustoAPIVersion, String compensationId) { + DeleteV1CompensationsCompensationIdRequest request = + DeleteV1CompensationsCompensationIdRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .compensationId(compensationId) + .build(); + AsyncRequestOperation operation + = new DeleteV1CompensationsCompensationId.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Get a job + * + *

    Get a job. + * + *

    Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee + * pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, + * `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope + * is included. This allows you to access employee and job metadata without exposing pay rates. + * + *

    Compensation data in the response requires the `compensations:read` scope. + * + *

    scope: `jobs:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * * @return The async call builder */ - public PostV1CompensationsCompensationIdRequestBuilder createCompensation() { - return new PostV1CompensationsCompensationIdRequestBuilder(sdkConfiguration); + public GetV1JobsJobIdRequestBuilder getJob() { + return new GetV1JobsJobIdRequestBuilder(sdkConfiguration); } /** - * Create a compensation + * Get a job * - *

    Compensations contain information on how much is paid out for a job. Jobs may have many - * compensations, but only one that is active. The current compensation is the one with the most recent - * `effective_date`. + *

    Get a job. * - *

    ### Prerequisites - * Before calling this endpoint: - * 1. A [job](ref:post-v1-jobs-job_id) must exist for the employee + *

    Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee + * pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, + * `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope + * is included. This allows you to access employee and job metadata without exposing pay rates. * - *

    ### Webhooks - * - `employee_job_compensation.created`: Fires when a compensation is successfully created + *

    Compensation data in the response requires the `compensations:read` scope. * - *

    scope: `compensations:write` + *

    scope: `jobs:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param jobId The UUID of the job - * @param compensationsRequestBody Request body for creating a compensation. - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture createCompensation(String jobId, CompensationsRequestBody compensationsRequestBody) { - return createCompensation(Optional.empty(), jobId, compensationsRequestBody); + public CompletableFuture getJob(String jobId) { + return getJob(Optional.empty(), jobId, Optional.empty()); } /** - * Create a compensation - * - *

    Compensations contain information on how much is paid out for a job. Jobs may have many - * compensations, but only one that is active. The current compensation is the one with the most recent - * `effective_date`. + * Get a job * - *

    ### Prerequisites - * Before calling this endpoint: - * 1. A [job](ref:post-v1-jobs-job_id) must exist for the employee + *

    Get a job. * - *

    ### Webhooks - * - `employee_job_compensation.created`: Fires when a compensation is successfully created + *

    Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee + * pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, + * `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope + * is included. This allows you to access employee and job metadata without exposing pay rates. * - *

    scope: `compensations:write` + *

    Compensation data in the response requires the `compensations:read` scope. + * + *

    scope: `jobs:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param jobId The UUID of the job - * @param compensationsRequestBody Request body for creating a compensation. - * @return {@code CompletableFuture} - The async response + * @param include Available options: + * - all_compensations: Include all effective dated compensations for each job instead of only the current compensation + * + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture createCompensation( - Optional xGustoAPIVersion, String jobId, - CompensationsRequestBody compensationsRequestBody) { - PostV1CompensationsCompensationIdRequest request = - PostV1CompensationsCompensationIdRequest + public CompletableFuture getJob( + Optional xGustoAPIVersion, String jobId, + Optional include) { + GetV1JobsJobIdRequest request = + GetV1JobsJobIdRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .jobId(jobId) - .compensationsRequestBody(compensationsRequestBody) + .include(include) .build(); - AsyncRequestOperation operation - = new PostV1CompensationsCompensationId.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new GetV1JobsJobId.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Get a compensation + * Update a job * - *

    Compensations contain information on how much is paid out for a job. Jobs may have many - * compensations, but only one that is active. The current compensation is the one with the most recent - * `effective_date`. + *

    Update a job. * - *

    scope: `compensations:read` + *

    scope: `jobs:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public GetV1CompensationsCompensationIdRequestBuilder getCompensation() { - return new GetV1CompensationsCompensationIdRequestBuilder(sdkConfiguration); + public PutV1JobsJobIdRequestBuilder update() { + return new PutV1JobsJobIdRequestBuilder(sdkConfiguration); } /** - * Get a compensation + * Update a job * - *

    Compensations contain information on how much is paid out for a job. Jobs may have many - * compensations, but only one that is active. The current compensation is the one with the most recent - * `effective_date`. + *

    Update a job. * - *

    scope: `compensations:read` + *

    scope: `jobs:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param compensationId The UUID of the compensation - * @return {@code CompletableFuture} - The async response + * @param jobId The UUID of the job + * @param jobsUpdateRequestBody Request body for updating a job. + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getCompensation(String compensationId) { - return getCompensation(Optional.empty(), compensationId); + public CompletableFuture update(String jobId, JobsUpdateRequestBody jobsUpdateRequestBody) { + return update(Optional.empty(), jobId, jobsUpdateRequestBody); } /** - * Get a compensation + * Update a job * - *

    Compensations contain information on how much is paid out for a job. Jobs may have many - * compensations, but only one that is active. The current compensation is the one with the most recent - * `effective_date`. + *

    Update a job. * - *

    scope: `compensations:read` + *

    scope: `jobs:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param compensationId The UUID of the compensation - * @return {@code CompletableFuture} - The async response + * @param jobId The UUID of the job + * @param jobsUpdateRequestBody Request body for updating a job. + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getCompensation(Optional xGustoAPIVersion, String compensationId) { - GetV1CompensationsCompensationIdRequest request = - GetV1CompensationsCompensationIdRequest + public CompletableFuture update( + Optional xGustoAPIVersion, String jobId, + JobsUpdateRequestBody jobsUpdateRequestBody) { + PutV1JobsJobIdRequest request = + PutV1JobsJobIdRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .compensationId(compensationId) + .jobId(jobId) + .jobsUpdateRequestBody(jobsUpdateRequestBody) .build(); - AsyncRequestOperation operation - = new GetV1CompensationsCompensationId.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new PutV1JobsJobId.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Update a compensation - * - *

    Compensations contain information on how much is paid out for a job. Jobs may have many - * compensations, but only one that is active. The current compensation is the one with the most recent - * `effective_date`. + * Delete an individual job * - *

    ### Webhooks - * - `employee_job_compensation.updated`: Fires when a compensation is successfully updated + *

    Deletes a specific job that an employee holds. * - *

    scope: `compensations:write` + *

    scope: `jobs:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public PutV1CompensationsCompensationIdRequestBuilder updateCompensation() { - return new PutV1CompensationsCompensationIdRequestBuilder(sdkConfiguration); + public DeleteV1JobsJobIdRequestBuilder delete() { + return new DeleteV1JobsJobIdRequestBuilder(sdkConfiguration); } /** - * Update a compensation - * - *

    Compensations contain information on how much is paid out for a job. Jobs may have many - * compensations, but only one that is active. The current compensation is the one with the most recent - * `effective_date`. + * Delete an individual job * - *

    ### Webhooks - * - `employee_job_compensation.updated`: Fires when a compensation is successfully updated + *

    Deletes a specific job that an employee holds. * - *

    scope: `compensations:write` + *

    scope: `jobs:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param compensationId The UUID of the compensation - * @param compensationsUpdateRequestBody Request body for updating a compensation. - * @return {@code CompletableFuture} - The async response + * @param jobId The UUID of the job + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture updateCompensation(String compensationId, CompensationsUpdateRequestBody compensationsUpdateRequestBody) { - return updateCompensation(Optional.empty(), compensationId, compensationsUpdateRequestBody); + public CompletableFuture delete(String jobId) { + return delete(Optional.empty(), jobId); } /** - * Update a compensation - * - *

    Compensations contain information on how much is paid out for a job. Jobs may have many - * compensations, but only one that is active. The current compensation is the one with the most recent - * `effective_date`. + * Delete an individual job * - *

    ### Webhooks - * - `employee_job_compensation.updated`: Fires when a compensation is successfully updated + *

    Deletes a specific job that an employee holds. * - *

    scope: `compensations:write` + *

    scope: `jobs:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param compensationId The UUID of the compensation - * @param compensationsUpdateRequestBody Request body for updating a compensation. - * @return {@code CompletableFuture} - The async response + * @param jobId The UUID of the job + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture updateCompensation( - Optional xGustoAPIVersion, String compensationId, - CompensationsUpdateRequestBody compensationsUpdateRequestBody) { - PutV1CompensationsCompensationIdRequest request = - PutV1CompensationsCompensationIdRequest + public CompletableFuture delete(Optional xGustoAPIVersion, String jobId) { + DeleteV1JobsJobIdRequest request = + DeleteV1JobsJobIdRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .compensationId(compensationId) - .compensationsUpdateRequestBody(compensationsUpdateRequestBody) + .jobId(jobId) .build(); - AsyncRequestOperation operation - = new PutV1CompensationsCompensationId.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new DeleteV1JobsJobId.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Delete a compensation - * - *

    Compensations contain information on how much is paid out for a job. Jobs may have many - * compensations, but only one that is active. The current compensation is the one with the most recent - * `effective_date`. + * Get jobs for an employee * - *

    This endpoint deletes a compensation for a job that hasn't been processed on payroll. + *

    Get all of the jobs that an employee holds. + * Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee + * pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, + * `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope + * is included. This allows you to access employee and job metadata without exposing pay rates. * - *

    ### Webhooks - * - `employee_job_compensation.destroyed`: Fires when a compensation is successfully deleted + *

    Compensation data in the response requires the `compensations:read` scope. * - *

    scope: `compensations:write` + *

    scope: `jobs:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public DeleteV1CompensationsCompensationIdRequestBuilder deleteCompensation() { - return new DeleteV1CompensationsCompensationIdRequestBuilder(sdkConfiguration); + public GetV1EmployeesEmployeeIdJobsRequestBuilder getJobs() { + return new GetV1EmployeesEmployeeIdJobsRequestBuilder(sdkConfiguration); } /** - * Delete a compensation + * Get jobs for an employee * - *

    Compensations contain information on how much is paid out for a job. Jobs may have many - * compensations, but only one that is active. The current compensation is the one with the most recent - * `effective_date`. + *

    Get all of the jobs that an employee holds. + * Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee + * pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, + * `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope + * is included. This allows you to access employee and job metadata without exposing pay rates. * - *

    This endpoint deletes a compensation for a job that hasn't been processed on payroll. + *

    Compensation data in the response requires the `compensations:read` scope. * - *

    ### Webhooks - * - `employee_job_compensation.destroyed`: Fires when a compensation is successfully deleted + *

    scope: `jobs:read` * - *

    scope: `compensations:write` + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param request The request object containing all the parameters for the API call. + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getJobs(GetV1EmployeesEmployeeIdJobsRequest request) { + AsyncRequestOperation operation + = new GetV1EmployeesEmployeeIdJobs.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Create a job + * + *

    Create a job. + * + *

    scope: `jobs:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param compensationId The UUID of the compensation - * @return {@code CompletableFuture} - The async response + * @return The async call builder */ - public CompletableFuture deleteCompensation(String compensationId) { - return deleteCompensation(Optional.empty(), compensationId); + public PostV1EmployeesEmployeeIdJobsRequestBuilder createJob() { + return new PostV1EmployeesEmployeeIdJobsRequestBuilder(sdkConfiguration); } /** - * Delete a compensation + * Create a job * - *

    Compensations contain information on how much is paid out for a job. Jobs may have many - * compensations, but only one that is active. The current compensation is the one with the most recent - * `effective_date`. + *

    Create a job. * - *

    This endpoint deletes a compensation for a job that hasn't been processed on payroll. + *

    scope: `jobs:write` * - *

    ### Webhooks - * - `employee_job_compensation.destroyed`: Fires when a compensation is successfully deleted + *

    If set, this operation will use Security#companyAccessAuth from the global security. * - *

    scope: `compensations:write` + * @param employeeId The UUID of the employee + * @param jobsCreateRequestBody Request body for creating a job. + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture createJob(String employeeId, JobsCreateRequestBody jobsCreateRequestBody) { + return createJob(Optional.empty(), employeeId, jobsCreateRequestBody); + } + + /** + * Create a job + * + *

    Create a job. + * + *

    scope: `jobs:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param compensationId The UUID of the compensation - * @return {@code CompletableFuture} - The async response + * @param employeeId The UUID of the employee + * @param jobsCreateRequestBody Request body for creating a job. + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture deleteCompensation(Optional xGustoAPIVersion, String compensationId) { - DeleteV1CompensationsCompensationIdRequest request = - DeleteV1CompensationsCompensationIdRequest + public CompletableFuture createJob( + Optional xGustoAPIVersion, String employeeId, + JobsCreateRequestBody jobsCreateRequestBody) { + PostV1EmployeesEmployeeIdJobsRequest request = + PostV1EmployeesEmployeeIdJobsRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .compensationId(compensationId) + .employeeId(employeeId) + .jobsCreateRequestBody(jobsCreateRequestBody) .build(); - AsyncRequestOperation operation - = new DeleteV1CompensationsCompensationId.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new PostV1EmployeesEmployeeIdJobs.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncLocations.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncLocations.java index 41bf2a50a..d3a7be740 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncLocations.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncLocations.java @@ -60,14 +60,9 @@ public Locations sync() { /** - * Get all company locations - * - *

    Retrieves all company locations (addresses) associated with a company: mailing addresses, filing - * addresses, or work locations. A single address may serve multiple, or all, purposes. + * Get minimum wages for a location * - *

    Since all company locations are subsets of locations, use the Locations endpoints to - * [get](ref:get-v1-locations-location_id) or [update](ref:put-v1-locations-location_id) an individual - * record. + *

    Get minimum wages for a location * *

    scope: `companies:read` * @@ -75,147 +70,52 @@ public Locations sync() { * * @return The async call builder */ - public GetV1CompaniesCompanyIdLocationsRequestBuilder get() { - return new GetV1CompaniesCompanyIdLocationsRequestBuilder(sdkConfiguration); + public GetV1LocationsLocationUuidMinimumWagesRequestBuilder getMinimumWages() { + return new GetV1LocationsLocationUuidMinimumWagesRequestBuilder(sdkConfiguration); } /** - * Get all company locations - * - *

    Retrieves all company locations (addresses) associated with a company: mailing addresses, filing - * addresses, or work locations. A single address may serve multiple, or all, purposes. + * Get minimum wages for a location * - *

    Since all company locations are subsets of locations, use the Locations endpoints to - * [get](ref:get-v1-locations-location_id) or [update](ref:put-v1-locations-location_id) an individual - * record. + *

    Get minimum wages for a location * *

    scope: `companies:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company - * @return {@code CompletableFuture} - The async response + * @param locationUuid The UUID of the location + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture get(String companyId) { - return get( - Optional.empty(), companyId, Optional.empty(), - Optional.empty()); + public CompletableFuture getMinimumWages(String locationUuid) { + return getMinimumWages(Optional.empty(), locationUuid, Optional.empty()); } /** - * Get all company locations - * - *

    Retrieves all company locations (addresses) associated with a company: mailing addresses, filing - * addresses, or work locations. A single address may serve multiple, or all, purposes. + * Get minimum wages for a location * - *

    Since all company locations are subsets of locations, use the Locations endpoints to - * [get](ref:get-v1-locations-location_id) or [update](ref:put-v1-locations-location_id) an individual - * record. + *

    Get minimum wages for a location * *

    scope: `companies:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyId The UUID of the company - * @param page The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - * @param per Number of objects per page. For majority of endpoints will default to 25 - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture get( - Optional xGustoAPIVersion, String companyId, - Optional page, Optional per) { - GetV1CompaniesCompanyIdLocationsRequest request = - GetV1CompaniesCompanyIdLocationsRequest - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .companyId(companyId) - .page(page) - .per(per) - .build(); - AsyncRequestOperation operation - = new GetV1CompaniesCompanyIdLocations.Async(sdkConfiguration, _headers); - return operation.doRequest(request) - .thenCompose(operation::handleResponse); - } - - - /** - * Create a company location - * - *

    Create a company location, which represents any address associated with a company: mailing - * addresses, filing addresses, or work locations. A single address may serve multiple, or all, - * purposes. - * - *

    Since all company locations are subsets of locations, use the Locations endpoints to - * [get](ref:get-v1-locations-location_id) or [update](ref:put-v1-locations-location_id) an individual - * record. - * - *

    scope: `companies:write` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The async call builder - */ - public PostV1CompaniesCompanyIdLocationsRequestBuilder create() { - return new PostV1CompaniesCompanyIdLocationsRequestBuilder(sdkConfiguration); - } - - /** - * Create a company location - * - *

    Create a company location, which represents any address associated with a company: mailing - * addresses, filing addresses, or work locations. A single address may serve multiple, or all, - * purposes. - * - *

    Since all company locations are subsets of locations, use the Locations endpoints to - * [get](ref:get-v1-locations-location_id) or [update](ref:put-v1-locations-location_id) an individual - * record. - * - *

    scope: `companies:write` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param companyId The UUID of the company - * @param companyLocationRequest Request body for creating a company location (company address). - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture create(String companyId, CompanyLocationRequest companyLocationRequest) { - return create(Optional.empty(), companyId, companyLocationRequest); - } - - /** - * Create a company location - * - *

    Create a company location, which represents any address associated with a company: mailing - * addresses, filing addresses, or work locations. A single address may serve multiple, or all, - * purposes. - * - *

    Since all company locations are subsets of locations, use the Locations endpoints to - * [get](ref:get-v1-locations-location_id) or [update](ref:put-v1-locations-location_id) an individual - * record. - * - *

    scope: `companies:write` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyId The UUID of the company - * @param companyLocationRequest Request body for creating a company location (company address). - * @return {@code CompletableFuture} - The async response + * @param locationUuid The UUID of the location + * @param effectiveDate + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture create( - Optional xGustoAPIVersion, String companyId, - CompanyLocationRequest companyLocationRequest) { - PostV1CompaniesCompanyIdLocationsRequest request = - PostV1CompaniesCompanyIdLocationsRequest + public CompletableFuture getMinimumWages( + Optional xGustoAPIVersion, String locationUuid, + Optional effectiveDate) { + GetV1LocationsLocationUuidMinimumWagesRequest request = + GetV1LocationsLocationUuidMinimumWagesRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .companyId(companyId) - .companyLocationRequest(companyLocationRequest) + .locationUuid(locationUuid) + .effectiveDate(effectiveDate) .build(); - AsyncRequestOperation operation - = new PostV1CompaniesCompanyIdLocations.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new GetV1LocationsLocationUuidMinimumWages.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } @@ -343,9 +243,14 @@ public CompletableFuture update( /** - * Get minimum wages for a location + * Get all company locations * - *

    Get minimum wages for a location + *

    Retrieves all company locations (addresses) associated with a company: mailing addresses, filing + * addresses, or work locations. A single address may serve multiple, or all, purposes. + * + *

    Since all company locations are subsets of locations, use the Locations endpoints to + * [get](ref:get-v1-locations-location_id) or [update](ref:put-v1-locations-location_id) an individual + * record. * *

    scope: `companies:read` * @@ -353,52 +258,147 @@ public CompletableFuture update( * * @return The async call builder */ - public GetV1LocationsLocationUuidMinimumWagesRequestBuilder getMinimumWages() { - return new GetV1LocationsLocationUuidMinimumWagesRequestBuilder(sdkConfiguration); + public GetV1CompaniesCompanyIdLocationsRequestBuilder get() { + return new GetV1CompaniesCompanyIdLocationsRequestBuilder(sdkConfiguration); } /** - * Get minimum wages for a location + * Get all company locations * - *

    Get minimum wages for a location + *

    Retrieves all company locations (addresses) associated with a company: mailing addresses, filing + * addresses, or work locations. A single address may serve multiple, or all, purposes. + * + *

    Since all company locations are subsets of locations, use the Locations endpoints to + * [get](ref:get-v1-locations-location_id) or [update](ref:put-v1-locations-location_id) an individual + * record. * *

    scope: `companies:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param locationUuid The UUID of the location - * @return {@code CompletableFuture} - The async response + * @param companyId The UUID of the company + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getMinimumWages(String locationUuid) { - return getMinimumWages(locationUuid, Optional.empty(), Optional.empty()); + public CompletableFuture get(String companyId) { + return get( + Optional.empty(), companyId, Optional.empty(), + Optional.empty()); } /** - * Get minimum wages for a location + * Get all company locations * - *

    Get minimum wages for a location + *

    Retrieves all company locations (addresses) associated with a company: mailing addresses, filing + * addresses, or work locations. A single address may serve multiple, or all, purposes. + * + *

    Since all company locations are subsets of locations, use the Locations endpoints to + * [get](ref:get-v1-locations-location_id) or [update](ref:put-v1-locations-location_id) an individual + * record. * *

    scope: `companies:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param locationUuid The UUID of the location * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param effectiveDate - * @return {@code CompletableFuture} - The async response + * @param companyId The UUID of the company + * @param page The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + * @param per Number of objects per page. For majority of endpoints will default to 25 + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getMinimumWages( - String locationUuid, Optional xGustoAPIVersion, - Optional effectiveDate) { - GetV1LocationsLocationUuidMinimumWagesRequest request = - GetV1LocationsLocationUuidMinimumWagesRequest + public CompletableFuture get( + Optional xGustoAPIVersion, String companyId, + Optional page, Optional per) { + GetV1CompaniesCompanyIdLocationsRequest request = + GetV1CompaniesCompanyIdLocationsRequest .builder() - .locationUuid(locationUuid) .xGustoAPIVersion(xGustoAPIVersion) - .effectiveDate(effectiveDate) + .companyId(companyId) + .page(page) + .per(per) .build(); - AsyncRequestOperation operation - = new GetV1LocationsLocationUuidMinimumWages.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new GetV1CompaniesCompanyIdLocations.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Create a company location + * + *

    Create a company location, which represents any address associated with a company: mailing + * addresses, filing addresses, or work locations. A single address may serve multiple, or all, + * purposes. + * + *

    Since all company locations are subsets of locations, use the Locations endpoints to + * [get](ref:get-v1-locations-location_id) or [update](ref:put-v1-locations-location_id) an individual + * record. + * + *

    scope: `companies:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public PostV1CompaniesCompanyIdLocationsRequestBuilder create() { + return new PostV1CompaniesCompanyIdLocationsRequestBuilder(sdkConfiguration); + } + + /** + * Create a company location + * + *

    Create a company location, which represents any address associated with a company: mailing + * addresses, filing addresses, or work locations. A single address may serve multiple, or all, + * purposes. + * + *

    Since all company locations are subsets of locations, use the Locations endpoints to + * [get](ref:get-v1-locations-location_id) or [update](ref:put-v1-locations-location_id) an individual + * record. + * + *

    scope: `companies:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param companyId The UUID of the company + * @param companyLocationRequest Request body for creating a company location (company address). + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture create(String companyId, CompanyLocationRequest companyLocationRequest) { + return create(Optional.empty(), companyId, companyLocationRequest); + } + + /** + * Create a company location + * + *

    Create a company location, which represents any address associated with a company: mailing + * addresses, filing addresses, or work locations. A single address may serve multiple, or all, + * purposes. + * + *

    Since all company locations are subsets of locations, use the Locations endpoints to + * [get](ref:get-v1-locations-location_id) or [update](ref:put-v1-locations-location_id) an individual + * record. + * + *

    scope: `companies:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company + * @param companyLocationRequest Request body for creating a company location (company address). + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture create( + Optional xGustoAPIVersion, String companyId, + CompanyLocationRequest companyLocationRequest) { + PostV1CompaniesCompanyIdLocationsRequest request = + PostV1CompaniesCompanyIdLocationsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) + .companyLocationRequest(companyLocationRequest) + .build(); + AsyncRequestOperation operation + = new PostV1CompaniesCompanyIdLocations.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncMemberPortalInvitations.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncMemberPortalInvitations.java new file mode 100644 index 000000000..e40a7b1c7 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncMemberPortalInvitations.java @@ -0,0 +1,453 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15; + +import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.AsyncRequestOperation; + +import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ContractorsContractorUuidMemberPortalInvitationsRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1ContractorsContractorUuidMemberPortalInvitationsRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.async.DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder; +import com.gusto.embedded_api_v_2025_11_15.models.operations.async.DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.async.DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder; +import com.gusto.embedded_api_v_2025_11_15.models.operations.async.DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.async.GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder; +import com.gusto.embedded_api_v_2025_11_15.models.operations.async.GetV1ContractorsContractorUuidMemberPortalInvitationsResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.async.GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder; +import com.gusto.embedded_api_v_2025_11_15.models.operations.async.GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.async.PostV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder; +import com.gusto.embedded_api_v_2025_11_15.models.operations.async.PostV1ContractorsContractorUuidMemberPortalInvitationsResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.async.PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder; +import com.gusto.embedded_api_v_2025_11_15.models.operations.async.PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse; +import com.gusto.embedded_api_v_2025_11_15.operations.DeleteV1ContractorsContractorUuidMemberPortalInvitations; +import com.gusto.embedded_api_v_2025_11_15.operations.DeleteV1EmployeesEmployeeIdMemberPortalInvitations; +import com.gusto.embedded_api_v_2025_11_15.operations.GetV1ContractorsContractorUuidMemberPortalInvitations; +import com.gusto.embedded_api_v_2025_11_15.operations.GetV1EmployeesEmployeeIdMemberPortalInvitations; +import com.gusto.embedded_api_v_2025_11_15.operations.PostV1ContractorsContractorUuidMemberPortalInvitations; +import com.gusto.embedded_api_v_2025_11_15.operations.PostV1EmployeesEmployeeIdMemberPortalInvitations; +import com.gusto.embedded_api_v_2025_11_15.utils.Headers; +import java.lang.String; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; + + +public class AsyncMemberPortalInvitations { + private static final Headers _headers = Headers.EMPTY; + private final SDKConfiguration sdkConfiguration; + private final MemberPortalInvitations syncSDK; + + AsyncMemberPortalInvitations(MemberPortalInvitations syncSDK, SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + this.syncSDK = syncSDK; + } + + /** + * Switches to the sync SDK. + * + * @return The sync SDK + */ + public MemberPortalInvitations sync() { + return syncSDK; + } + + + /** + * Create an employee member portal invitation + * + *

    Generates a member portal invitation for the specified employee. If the employee already has an + * invitation and its token has expired, calling this endpoint regenerates the invitation and overrides + * the prior token. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder postV1EmployeesEmployeeIdMemberPortalInvitations() { + return new PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder(sdkConfiguration); + } + + /** + * Create an employee member portal invitation + * + *

    Generates a member portal invitation for the specified employee. If the employee already has an + * invitation and its token has expired, calling this endpoint regenerates the invitation and overrides + * the prior token. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param employeeId The UUID of the employee + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture postV1EmployeesEmployeeIdMemberPortalInvitations(String employeeId) { + return postV1EmployeesEmployeeIdMemberPortalInvitations(Optional.empty(), employeeId); + } + + /** + * Create an employee member portal invitation + * + *

    Generates a member portal invitation for the specified employee. If the employee already has an + * invitation and its token has expired, calling this endpoint regenerates the invitation and overrides + * the prior token. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param employeeId The UUID of the employee + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture postV1EmployeesEmployeeIdMemberPortalInvitations(Optional xGustoAPIVersion, String employeeId) { + PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest request = + PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .employeeId(employeeId) + .build(); + AsyncRequestOperation operation + = new PostV1EmployeesEmployeeIdMemberPortalInvitations.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Get an employee member portal invitation + * + *

    Returns the current status of an employee's member portal invitation (`pending`, `sent`, `verified`, + * `complete`, or `cancelled`) along with an `expired` flag indicating whether the invitation can still + * be acted on by the employee. + * + *

    scope: `member_portal_invitation:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder getV1EmployeesEmployeeIdMemberPortalInvitations() { + return new GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder(sdkConfiguration); + } + + /** + * Get an employee member portal invitation + * + *

    Returns the current status of an employee's member portal invitation (`pending`, `sent`, `verified`, + * `complete`, or `cancelled`) along with an `expired` flag indicating whether the invitation can still + * be acted on by the employee. + * + *

    scope: `member_portal_invitation:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param employeeId The UUID of the employee + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getV1EmployeesEmployeeIdMemberPortalInvitations(String employeeId) { + return getV1EmployeesEmployeeIdMemberPortalInvitations(Optional.empty(), employeeId); + } + + /** + * Get an employee member portal invitation + * + *

    Returns the current status of an employee's member portal invitation (`pending`, `sent`, `verified`, + * `complete`, or `cancelled`) along with an `expired` flag indicating whether the invitation can still + * be acted on by the employee. + * + *

    scope: `member_portal_invitation:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param employeeId The UUID of the employee + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getV1EmployeesEmployeeIdMemberPortalInvitations(Optional xGustoAPIVersion, String employeeId) { + GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest request = + GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .employeeId(employeeId) + .build(); + AsyncRequestOperation operation + = new GetV1EmployeesEmployeeIdMemberPortalInvitations.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Cancel an employee member portal invitation + * + *

    Cancels the member portal invitation for the specified employee. + * + *

    Note: this endpoint does not cancel the employee's self-onboarding flow. If you want the company + * admin to take full control of onboarding the employee, cancel the self-onboarding request instead. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder deleteV1EmployeesEmployeeIdMemberPortalInvitations() { + return new DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder(sdkConfiguration); + } + + /** + * Cancel an employee member portal invitation + * + *

    Cancels the member portal invitation for the specified employee. + * + *

    Note: this endpoint does not cancel the employee's self-onboarding flow. If you want the company + * admin to take full control of onboarding the employee, cancel the self-onboarding request instead. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param employeeId The UUID of the employee + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture deleteV1EmployeesEmployeeIdMemberPortalInvitations(String employeeId) { + return deleteV1EmployeesEmployeeIdMemberPortalInvitations(Optional.empty(), employeeId); + } + + /** + * Cancel an employee member portal invitation + * + *

    Cancels the member portal invitation for the specified employee. + * + *

    Note: this endpoint does not cancel the employee's self-onboarding flow. If you want the company + * admin to take full control of onboarding the employee, cancel the self-onboarding request instead. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param employeeId The UUID of the employee + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture deleteV1EmployeesEmployeeIdMemberPortalInvitations(Optional xGustoAPIVersion, String employeeId) { + DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest request = + DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .employeeId(employeeId) + .build(); + AsyncRequestOperation operation + = new DeleteV1EmployeesEmployeeIdMemberPortalInvitations.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Create a contractor member portal invitation + * + *

    Generates a member portal invitation for the specified contractor. If the contractor already has an + * invitation and its token has expired, calling this endpoint regenerates the invitation and overrides + * the prior token. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public PostV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder postV1ContractorsContractorUuidMemberPortalInvitations() { + return new PostV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder(sdkConfiguration); + } + + /** + * Create a contractor member portal invitation + * + *

    Generates a member portal invitation for the specified contractor. If the contractor already has an + * invitation and its token has expired, calling this endpoint regenerates the invitation and overrides + * the prior token. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param contractorUuid The UUID of the contractor + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture postV1ContractorsContractorUuidMemberPortalInvitations(String contractorUuid) { + return postV1ContractorsContractorUuidMemberPortalInvitations(Optional.empty(), contractorUuid); + } + + /** + * Create a contractor member portal invitation + * + *

    Generates a member portal invitation for the specified contractor. If the contractor already has an + * invitation and its token has expired, calling this endpoint regenerates the invitation and overrides + * the prior token. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param contractorUuid The UUID of the contractor + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture postV1ContractorsContractorUuidMemberPortalInvitations(Optional xGustoAPIVersion, String contractorUuid) { + PostV1ContractorsContractorUuidMemberPortalInvitationsRequest request = + PostV1ContractorsContractorUuidMemberPortalInvitationsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .contractorUuid(contractorUuid) + .build(); + AsyncRequestOperation operation + = new PostV1ContractorsContractorUuidMemberPortalInvitations.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Get a contractor member portal invitation + * + *

    Returns the current status of a contractor's member portal invitation (`pending`, `sent`, + * `verified`, `complete`, or `cancelled`) along with an `expired` flag indicating whether the + * invitation can still be acted on by the contractor. + * + *

    scope: `member_portal_invitation:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder getV1ContractorsContractorUuidMemberPortalInvitations() { + return new GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder(sdkConfiguration); + } + + /** + * Get a contractor member portal invitation + * + *

    Returns the current status of a contractor's member portal invitation (`pending`, `sent`, + * `verified`, `complete`, or `cancelled`) along with an `expired` flag indicating whether the + * invitation can still be acted on by the contractor. + * + *

    scope: `member_portal_invitation:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param contractorUuid The UUID of the contractor + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getV1ContractorsContractorUuidMemberPortalInvitations(String contractorUuid) { + return getV1ContractorsContractorUuidMemberPortalInvitations(Optional.empty(), contractorUuid); + } + + /** + * Get a contractor member portal invitation + * + *

    Returns the current status of a contractor's member portal invitation (`pending`, `sent`, + * `verified`, `complete`, or `cancelled`) along with an `expired` flag indicating whether the + * invitation can still be acted on by the contractor. + * + *

    scope: `member_portal_invitation:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param contractorUuid The UUID of the contractor + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getV1ContractorsContractorUuidMemberPortalInvitations(Optional xGustoAPIVersion, String contractorUuid) { + GetV1ContractorsContractorUuidMemberPortalInvitationsRequest request = + GetV1ContractorsContractorUuidMemberPortalInvitationsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .contractorUuid(contractorUuid) + .build(); + AsyncRequestOperation operation + = new GetV1ContractorsContractorUuidMemberPortalInvitations.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Cancel a contractor member portal invitation + * + *

    Cancels the member portal invitation for the specified contractor. + * + *

    Note: this endpoint does not cancel the contractor's self-onboarding flow. If you want the company + * admin to take full control of onboarding the contractor, cancel the self-onboarding request instead. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder deleteV1ContractorsContractorUuidMemberPortalInvitations() { + return new DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder(sdkConfiguration); + } + + /** + * Cancel a contractor member portal invitation + * + *

    Cancels the member portal invitation for the specified contractor. + * + *

    Note: this endpoint does not cancel the contractor's self-onboarding flow. If you want the company + * admin to take full control of onboarding the contractor, cancel the self-onboarding request instead. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param contractorUuid The UUID of the contractor + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture deleteV1ContractorsContractorUuidMemberPortalInvitations(String contractorUuid) { + return deleteV1ContractorsContractorUuidMemberPortalInvitations(Optional.empty(), contractorUuid); + } + + /** + * Cancel a contractor member portal invitation + * + *

    Cancels the member portal invitation for the specified contractor. + * + *

    Note: this endpoint does not cancel the contractor's self-onboarding flow. If you want the company + * admin to take full control of onboarding the contractor, cancel the self-onboarding request instead. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param contractorUuid The UUID of the contractor + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture deleteV1ContractorsContractorUuidMemberPortalInvitations(Optional xGustoAPIVersion, String contractorUuid) { + DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest request = + DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .contractorUuid(contractorUuid) + .build(); + AsyncRequestOperation operation + = new DeleteV1ContractorsContractorUuidMemberPortalInvitations.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncNotifications.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncNotifications.java index 54c5fc248..312c8dcd5 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncNotifications.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncNotifications.java @@ -40,6 +40,41 @@ public Notifications sync() { } + /** + * Get notifications for company + * + *

    Returns all notifications relevant for the given company. + * + *

    scope: `notifications:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public GetCompanyNotificationsRequestBuilder getCompanyNotifications() { + return new GetCompanyNotificationsRequestBuilder(sdkConfiguration); + } + + /** + * Get notifications for company + * + *

    Returns all notifications relevant for the given company. + * + *

    scope: `notifications:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param request The request object containing all the parameters for the API call. + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getCompanyNotifications(GetCompanyNotificationsRequest request) { + AsyncRequestOperation operation + = new GetCompanyNotifications.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + /** * Get a notification's details * @@ -86,7 +121,7 @@ public GetNotificationsNotificationUuidRequestBuilder getDetails() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture getDetails(String notificationUuid) { - return getDetails(notificationUuid, Optional.empty()); + return getDetails(Optional.empty(), notificationUuid); } /** @@ -107,16 +142,16 @@ public CompletableFuture getDetails(St * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param notificationUuid The notification entity_uuid * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param notificationUuid The notification entity_uuid * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getDetails(String notificationUuid, Optional xGustoAPIVersion) { + public CompletableFuture getDetails(Optional xGustoAPIVersion, String notificationUuid) { GetNotificationsNotificationUuidRequest request = GetNotificationsNotificationUuidRequest .builder() - .notificationUuid(notificationUuid) .xGustoAPIVersion(xGustoAPIVersion) + .notificationUuid(notificationUuid) .build(); AsyncRequestOperation operation = new GetNotificationsNotificationUuid.Async(sdkConfiguration, _headers); @@ -124,39 +159,4 @@ public CompletableFuture getDetails(St .thenCompose(operation::handleResponse); } - - /** - * Get notifications for company - * - *

    Returns all notifications relevant for the given company. - * - *

    scope: `notifications:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The async call builder - */ - public GetCompanyNotificationsRequestBuilder getCompanyNotifications() { - return new GetCompanyNotificationsRequestBuilder(sdkConfiguration); - } - - /** - * Get notifications for company - * - *

    Returns all notifications relevant for the given company. - * - *

    scope: `notifications:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param request The request object containing all the parameters for the API call. - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture getCompanyNotifications(GetCompanyNotificationsRequest request) { - AsyncRequestOperation operation - = new GetCompanyNotifications.Async(sdkConfiguration, _headers); - return operation.doRequest(request) - .thenCompose(operation::handleResponse); - } - } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncPaySchedules.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncPaySchedules.java index c25250675..0dd9a7b1f 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncPaySchedules.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncPaySchedules.java @@ -83,6 +83,137 @@ public PaySchedules sync() { } + /** + * Get pay periods for a company + * + *

    Pay periods are the foundation of payroll. Compensation, time & attendance, taxes, and expense + * reports all rely on when they happened. + * + *

    To begin submitting information for a given payroll, we need to agree on the time period. + * + *

    By default, this endpoint returns pay periods starting from 6 months ago to the date today. Use the + * `start_date` and `end_date` parameters to change the scope of the response. End dates can be up to 3 + * months in the future and there is no limit on start dates. + * + *

    Starting in version 2023-04-01, the `eligible_employees` attribute was removed from the response. + * The eligible employees for a payroll are determined by the employee_compensations returned from the + * [PUT + * /v1/companies/{company_id}/payrolls/{payroll_id}/prepare](ref:put-v1-companies-company_id-payrolls-payroll_id-prepare) + * endpoint. + * + *

    scope: `payrolls:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public GetV1CompaniesCompanyIdPayPeriodsRequestBuilder getPayPeriods() { + return new GetV1CompaniesCompanyIdPayPeriodsRequestBuilder(sdkConfiguration); + } + + /** + * Get pay periods for a company + * + *

    Pay periods are the foundation of payroll. Compensation, time & attendance, taxes, and expense + * reports all rely on when they happened. + * + *

    To begin submitting information for a given payroll, we need to agree on the time period. + * + *

    By default, this endpoint returns pay periods starting from 6 months ago to the date today. Use the + * `start_date` and `end_date` parameters to change the scope of the response. End dates can be up to 3 + * months in the future and there is no limit on start dates. + * + *

    Starting in version 2023-04-01, the `eligible_employees` attribute was removed from the response. + * The eligible employees for a payroll are determined by the employee_compensations returned from the + * [PUT + * /v1/companies/{company_id}/payrolls/{payroll_id}/prepare](ref:put-v1-companies-company_id-payrolls-payroll_id-prepare) + * endpoint. + * + *

    scope: `payrolls:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param request The request object containing all the parameters for the API call. + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getPayPeriods(GetV1CompaniesCompanyIdPayPeriodsRequest request) { + AsyncRequestOperation operation + = new GetV1CompaniesCompanyIdPayPeriods.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Get termination pay periods for a company + * + *

    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. + * + *

    This endpoint returns the unprocessed pay periods for past and future terminated employees in a + * given company. + * + *

    scope: `payrolls:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsRequestBuilder getUnprocessedTerminationPeriods() { + return new GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsRequestBuilder(sdkConfiguration); + } + + /** + * Get termination pay periods for a company + * + *

    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. + * + *

    This endpoint returns the unprocessed pay periods for past and future terminated employees in a + * given company. + * + *

    scope: `payrolls:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param companyId The UUID of the company + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getUnprocessedTerminationPeriods(String companyId) { + return getUnprocessedTerminationPeriods(Optional.empty(), companyId); + } + + /** + * Get termination pay periods for a company + * + *

    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. + * + *

    This endpoint returns the unprocessed pay periods for past and future terminated employees in a + * given company. + * + *

    scope: `payrolls:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getUnprocessedTerminationPeriods(Optional xGustoAPIVersion, String companyId) { + GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsRequest request = + GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) + .build(); + AsyncRequestOperation operation + = new GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriods.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + /** * Get the pay schedules for a company * @@ -508,198 +639,6 @@ public CompletableFuturePay periods are the foundation of payroll. Compensation, time & attendance, taxes, and expense - * reports all rely on when they happened. - * - *

    To begin submitting information for a given payroll, we need to agree on the time period. - * - *

    By default, this endpoint returns pay periods starting from 6 months ago to the date today. Use the - * `start_date` and `end_date` parameters to change the scope of the response. End dates can be up to 3 - * months in the future and there is no limit on start dates. - * - *

    Starting in version 2023-04-01, the `eligible_employees` attribute was removed from the response. - * The eligible employees for a payroll are determined by the employee_compensations returned from the - * [PUT - * /v1/companies/{company_id}/payrolls/{payroll_id}/prepare](ref:put-v1-companies-company_id-payrolls-payroll_id-prepare) - * endpoint. - * - *

    scope: `payrolls:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The async call builder - */ - public GetV1CompaniesCompanyIdPayPeriodsRequestBuilder getPayPeriods() { - return new GetV1CompaniesCompanyIdPayPeriodsRequestBuilder(sdkConfiguration); - } - - /** - * Get pay periods for a company - * - *

    Pay periods are the foundation of payroll. Compensation, time & attendance, taxes, and expense - * reports all rely on when they happened. - * - *

    To begin submitting information for a given payroll, we need to agree on the time period. - * - *

    By default, this endpoint returns pay periods starting from 6 months ago to the date today. Use the - * `start_date` and `end_date` parameters to change the scope of the response. End dates can be up to 3 - * months in the future and there is no limit on start dates. - * - *

    Starting in version 2023-04-01, the `eligible_employees` attribute was removed from the response. - * The eligible employees for a payroll are determined by the employee_compensations returned from the - * [PUT - * /v1/companies/{company_id}/payrolls/{payroll_id}/prepare](ref:put-v1-companies-company_id-payrolls-payroll_id-prepare) - * endpoint. - * - *

    scope: `payrolls:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param request The request object containing all the parameters for the API call. - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture getPayPeriods(GetV1CompaniesCompanyIdPayPeriodsRequest request) { - AsyncRequestOperation operation - = new GetV1CompaniesCompanyIdPayPeriods.Async(sdkConfiguration, _headers); - return operation.doRequest(request) - .thenCompose(operation::handleResponse); - } - - - /** - * Get termination pay periods for a company - * - *

    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. - * - *

    This endpoint returns the unprocessed pay periods for past and future terminated employees in a - * given company. - * - *

    scope: `payrolls:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The async call builder - */ - public GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsRequestBuilder getUnprocessedTerminationPeriods() { - return new GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsRequestBuilder(sdkConfiguration); - } - - /** - * Get termination pay periods for a company - * - *

    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. - * - *

    This endpoint returns the unprocessed pay periods for past and future terminated employees in a - * given company. - * - *

    scope: `payrolls:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param companyId The UUID of the company - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture getUnprocessedTerminationPeriods(String companyId) { - return getUnprocessedTerminationPeriods(Optional.empty(), companyId); - } - - /** - * Get termination pay periods for a company - * - *

    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. - * - *

    This endpoint returns the unprocessed pay periods for past and future terminated employees in a - * given company. - * - *

    scope: `payrolls:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyId The UUID of the company - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture getUnprocessedTerminationPeriods(Optional xGustoAPIVersion, String companyId) { - GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsRequest request = - GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsRequest - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .companyId(companyId) - .build(); - AsyncRequestOperation operation - = new GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriods.Async(sdkConfiguration, _headers); - return operation.doRequest(request) - .thenCompose(operation::handleResponse); - } - - - /** - * Get pay schedule assignments for a company - * - *

    This endpoint returns the current pay schedule assignment for a company, with pay schedule and - * employee/department mappings depending on the pay schedule type. - * - *

    scope: `pay_schedules:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The async call builder - */ - public GetV1CompaniesCompanyIdPaySchedulesAssignmentsRequestBuilder getAssignments() { - return new GetV1CompaniesCompanyIdPaySchedulesAssignmentsRequestBuilder(sdkConfiguration); - } - - /** - * Get pay schedule assignments for a company - * - *

    This endpoint returns the current pay schedule assignment for a company, with pay schedule and - * employee/department mappings depending on the pay schedule type. - * - *

    scope: `pay_schedules:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param companyId The UUID of the company - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture getAssignments(String companyId) { - return getAssignments(Optional.empty(), companyId); - } - - /** - * Get pay schedule assignments for a company - * - *

    This endpoint returns the current pay schedule assignment for a company, with pay schedule and - * employee/department mappings depending on the pay schedule type. - * - *

    scope: `pay_schedules:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyId The UUID of the company - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture getAssignments(Optional xGustoAPIVersion, String companyId) { - GetV1CompaniesCompanyIdPaySchedulesAssignmentsRequest request = - GetV1CompaniesCompanyIdPaySchedulesAssignmentsRequest - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .companyId(companyId) - .build(); - AsyncRequestOperation operation - = new GetV1CompaniesCompanyIdPaySchedulesAssignments.Async(sdkConfiguration, _headers); - return operation.doRequest(request) - .thenCompose(operation::handleResponse); - } - - /** * Preview pay schedule assignments for a company * @@ -837,4 +776,65 @@ public CompletableFuture ass .thenCompose(operation::handleResponse); } + + /** + * Get pay schedule assignments for a company + * + *

    This endpoint returns the current pay schedule assignment for a company, with pay schedule and + * employee/department mappings depending on the pay schedule type. + * + *

    scope: `pay_schedules:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public GetV1CompaniesCompanyIdPaySchedulesAssignmentsRequestBuilder getAssignments() { + return new GetV1CompaniesCompanyIdPaySchedulesAssignmentsRequestBuilder(sdkConfiguration); + } + + /** + * Get pay schedule assignments for a company + * + *

    This endpoint returns the current pay schedule assignment for a company, with pay schedule and + * employee/department mappings depending on the pay schedule type. + * + *

    scope: `pay_schedules:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param companyId The UUID of the company + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getAssignments(String companyId) { + return getAssignments(Optional.empty(), companyId); + } + + /** + * Get pay schedule assignments for a company + * + *

    This endpoint returns the current pay schedule assignment for a company, with pay schedule and + * employee/department mappings depending on the pay schedule type. + * + *

    scope: `pay_schedules:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getAssignments(Optional xGustoAPIVersion, String companyId) { + GetV1CompaniesCompanyIdPaySchedulesAssignmentsRequest request = + GetV1CompaniesCompanyIdPaySchedulesAssignmentsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) + .build(); + AsyncRequestOperation operation + = new GetV1CompaniesCompanyIdPaySchedulesAssignments.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncPayrollCancellations.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncPayrollCancellations.java new file mode 100644 index 000000000..27c4b9963 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncPayrollCancellations.java @@ -0,0 +1,260 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15; + +import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.AsyncRequestOperation; + +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1PayrollBatchesPayrollBatchUuidRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1PayrollBatchesPayrollBatchUuidSecurity; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1PayrollBatchesHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1PayrollBatchesRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1PayrollBatchesRequestBody; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1PayrollBatchesSecurity; +import com.gusto.embedded_api_v_2025_11_15.models.operations.async.GetV1PayrollBatchesPayrollBatchUuidRequestBuilder; +import com.gusto.embedded_api_v_2025_11_15.models.operations.async.GetV1PayrollBatchesPayrollBatchUuidResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.async.PostV1PayrollBatchesRequestBuilder; +import com.gusto.embedded_api_v_2025_11_15.models.operations.async.PostV1PayrollBatchesResponse; +import com.gusto.embedded_api_v_2025_11_15.operations.GetV1PayrollBatchesPayrollBatchUuid; +import com.gusto.embedded_api_v_2025_11_15.operations.PostV1PayrollBatches; +import com.gusto.embedded_api_v_2025_11_15.utils.Headers; +import java.lang.String; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; + + +public class AsyncPayrollCancellations { + private static final Headers _headers = Headers.EMPTY; + private final SDKConfiguration sdkConfiguration; + private final PayrollCancellations syncSDK; + + AsyncPayrollCancellations(PayrollCancellations syncSDK, SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + this.syncSDK = syncSDK; + } + + /** + * Switches to the sync SDK. + * + * @return The sync SDK + */ + public PayrollCancellations sync() { + return syncSDK; + } + + + /** + * Create a payroll cancellation batch + * + *

    Cancels up to 100 payrolls across one or more companies the partner is mapped to, asynchronously. + * + *

    The batch is processed asynchronously. Use the returned batch UUID to poll `GET + * /v1/payroll_batches/{payroll_batch_uuid}` for status and per-payroll results. + * + *

    Each item carries the payroll `uuid` and the `company_uuid` that owns it. A payroll whose company is + * not mapped to the partner — or that doesn't exist — is recorded as a `not_found` exclusion rather + * than a hard error, so every requested UUID lands in either `results` or `exclusions`. + * + *

    Idempotency is scoped per `(partner, idempotency_key)`. A duplicate POST with the same + * `idempotency_key` returns a 409 Conflict referencing the existing batch UUID — no duplicate + * processing occurs. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `payroll_batches:write` + * + * @return The async call builder + */ + public PostV1PayrollBatchesRequestBuilder postV1PayrollBatches() { + return new PostV1PayrollBatchesRequestBuilder(sdkConfiguration); + } + + /** + * Create a payroll cancellation batch + * + *

    Cancels up to 100 payrolls across one or more companies the partner is mapped to, asynchronously. + * + *

    The batch is processed asynchronously. Use the returned batch UUID to poll `GET + * /v1/payroll_batches/{payroll_batch_uuid}` for status and per-payroll results. + * + *

    Each item carries the payroll `uuid` and the `company_uuid` that owns it. A payroll whose company is + * not mapped to the partner — or that doesn't exist — is recorded as a `not_found` exclusion rather + * than a hard error, so every requested UUID lands in either `results` or `exclusions`. + * + *

    Idempotency is scoped per `(partner, idempotency_key)`. A duplicate POST with the same + * `idempotency_key` returns a 409 Conflict referencing the existing batch UUID — no duplicate + * processing occurs. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `payroll_batches:write` + * + * @param security The security details to use for authentication. + * @param requestBody + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture postV1PayrollBatches(PostV1PayrollBatchesSecurity security, PostV1PayrollBatchesRequestBody requestBody) { + return postV1PayrollBatches(security, Optional.empty(), requestBody); + } + + /** + * Create a payroll cancellation batch + * + *

    Cancels up to 100 payrolls across one or more companies the partner is mapped to, asynchronously. + * + *

    The batch is processed asynchronously. Use the returned batch UUID to poll `GET + * /v1/payroll_batches/{payroll_batch_uuid}` for status and per-payroll results. + * + *

    Each item carries the payroll `uuid` and the `company_uuid` that owns it. A payroll whose company is + * not mapped to the partner — or that doesn't exist — is recorded as a `not_found` exclusion rather + * than a hard error, so every requested UUID lands in either `results` or `exclusions`. + * + *

    Idempotency is scoped per `(partner, idempotency_key)`. A duplicate POST with the same + * `idempotency_key` returns a 409 Conflict referencing the existing batch UUID — no duplicate + * processing occurs. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `payroll_batches:write` + * + * @param security The security details to use for authentication. + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param requestBody + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture postV1PayrollBatches( + PostV1PayrollBatchesSecurity security, Optional xGustoAPIVersion, + PostV1PayrollBatchesRequestBody requestBody) { + PostV1PayrollBatchesRequest request = + PostV1PayrollBatchesRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .requestBody(requestBody) + .build(); + AsyncRequestOperation operation + = new PostV1PayrollBatches.Async(sdkConfiguration, security, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Get a payroll cancellation batch + * + *

    Returns the status and per-payroll results of a payroll cancellation batch. + * + *

    Poll this endpoint until the batch `status` reaches a terminal value (`completed` or `failed`). Once + * terminal, the response includes the `results` array (one entry per authorized payroll, each with its + * own per-payroll `status` — `success` or `failed`) and the `exclusions` array (one entry per payroll + * that could not be processed). A cancel is atomic, so a per-payroll result is only ever `success` or + * `failed` — never `partial_success`. + * + *

    Note that the top-level batch `status` (`pending` / `processing` / `completed` / `failed`) is the + * request lifecycle, distinct from the per-payroll `status` inside `results[]`. A `completed` batch + * does not imply every payroll was cancelled — inspect the array for per-payroll outcomes. + * + *

    Results are stored in Redis with a limited TTL after completion. If the partner polls after results + * have expired, this endpoint returns 410 Gone — partners should re-submit a new batch. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `payroll_batches:read` + * + * @return The async call builder + */ + public GetV1PayrollBatchesPayrollBatchUuidRequestBuilder getV1PayrollBatchesPayrollBatchUuid() { + return new GetV1PayrollBatchesPayrollBatchUuidRequestBuilder(sdkConfiguration); + } + + /** + * Get a payroll cancellation batch + * + *

    Returns the status and per-payroll results of a payroll cancellation batch. + * + *

    Poll this endpoint until the batch `status` reaches a terminal value (`completed` or `failed`). Once + * terminal, the response includes the `results` array (one entry per authorized payroll, each with its + * own per-payroll `status` — `success` or `failed`) and the `exclusions` array (one entry per payroll + * that could not be processed). A cancel is atomic, so a per-payroll result is only ever `success` or + * `failed` — never `partial_success`. + * + *

    Note that the top-level batch `status` (`pending` / `processing` / `completed` / `failed`) is the + * request lifecycle, distinct from the per-payroll `status` inside `results[]`. A `completed` batch + * does not imply every payroll was cancelled — inspect the array for per-payroll outcomes. + * + *

    Results are stored in Redis with a limited TTL after completion. If the partner polls after results + * have expired, this endpoint returns 410 Gone — partners should re-submit a new batch. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `payroll_batches:read` + * + * @param security The security details to use for authentication. + * @param payrollBatchUuid The UUID of the payroll cancellation batch returned by `POST /v1/payroll_batches`. + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getV1PayrollBatchesPayrollBatchUuid(GetV1PayrollBatchesPayrollBatchUuidSecurity security, String payrollBatchUuid) { + return getV1PayrollBatchesPayrollBatchUuid(security, Optional.empty(), payrollBatchUuid); + } + + /** + * Get a payroll cancellation batch + * + *

    Returns the status and per-payroll results of a payroll cancellation batch. + * + *

    Poll this endpoint until the batch `status` reaches a terminal value (`completed` or `failed`). Once + * terminal, the response includes the `results` array (one entry per authorized payroll, each with its + * own per-payroll `status` — `success` or `failed`) and the `exclusions` array (one entry per payroll + * that could not be processed). A cancel is atomic, so a per-payroll result is only ever `success` or + * `failed` — never `partial_success`. + * + *

    Note that the top-level batch `status` (`pending` / `processing` / `completed` / `failed`) is the + * request lifecycle, distinct from the per-payroll `status` inside `results[]`. A `completed` batch + * does not imply every payroll was cancelled — inspect the array for per-payroll outcomes. + * + *

    Results are stored in Redis with a limited TTL after completion. If the partner polls after results + * have expired, this endpoint returns 410 Gone — partners should re-submit a new batch. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `payroll_batches:read` + * + * @param security The security details to use for authentication. + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param payrollBatchUuid The UUID of the payroll cancellation batch returned by `POST /v1/payroll_batches`. + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getV1PayrollBatchesPayrollBatchUuid( + GetV1PayrollBatchesPayrollBatchUuidSecurity security, Optional xGustoAPIVersion, + String payrollBatchUuid) { + GetV1PayrollBatchesPayrollBatchUuidRequest request = + GetV1PayrollBatchesPayrollBatchUuidRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .payrollBatchUuid(payrollBatchUuid) + .build(); + AsyncRequestOperation operation + = new GetV1PayrollBatchesPayrollBatchUuid.Async(sdkConfiguration, security, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncPayrollDigests.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncPayrollDigests.java index bac0384df..96e4017b2 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncPayrollDigests.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncPayrollDigests.java @@ -200,7 +200,7 @@ public GetV1PayrollDigestsPayrollDigestUuidRequestBuilder getV1PayrollDigestsPay * @return {@code CompletableFuture} - The async response */ public CompletableFuture getV1PayrollDigestsPayrollDigestUuid(GetV1PayrollDigestsPayrollDigestUuidSecurity security, String payrollDigestUuid) { - return getV1PayrollDigestsPayrollDigestUuid(security, payrollDigestUuid, Optional.empty()); + return getV1PayrollDigestsPayrollDigestUuid(security, Optional.empty(), payrollDigestUuid); } /** @@ -229,18 +229,18 @@ public CompletableFuture getV1Payr *

    scope: `payroll_digests:read` * * @param security The security details to use for authentication. - * @param payrollDigestUuid The UUID of the payroll digest batch returned by `POST /v1/payroll_digests`. * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param payrollDigestUuid The UUID of the payroll digest batch returned by `POST /v1/payroll_digests`. * @return {@code CompletableFuture} - The async response */ public CompletableFuture getV1PayrollDigestsPayrollDigestUuid( - GetV1PayrollDigestsPayrollDigestUuidSecurity security, String payrollDigestUuid, - Optional xGustoAPIVersion) { + GetV1PayrollDigestsPayrollDigestUuidSecurity security, Optional xGustoAPIVersion, + String payrollDigestUuid) { GetV1PayrollDigestsPayrollDigestUuidRequest request = GetV1PayrollDigestsPayrollDigestUuidRequest .builder() - .payrollDigestUuid(payrollDigestUuid) .xGustoAPIVersion(xGustoAPIVersion) + .payrollDigestUuid(payrollDigestUuid) .build(); AsyncRequestOperation operation = new GetV1PayrollDigestsPayrollDigestUuid.Async(sdkConfiguration, security, _headers); diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncPayrolls.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncPayrolls.java index 554df8eef..3eb5cbd67 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncPayrolls.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncPayrolls.java @@ -8,9 +8,9 @@ import com.gusto.embedded_api_v_2025_11_15.models.components.PayrollGrossUpRequest; import com.gusto.embedded_api_v_2025_11_15.models.components.PayrollUpdate; import com.gusto.embedded_api_v_2025_11_15.models.components.PrintablePayrollChecksBody; -import com.gusto.embedded_api_v_2025_11_15.models.components.VersionHeader; import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1CompaniesCompanyIdPayrollsRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdPayrollReversalsRequest; import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest; @@ -133,253 +133,452 @@ public Payrolls sync() { /** - * Get all payrolls for a company - * - *

    Returns a list of payrolls for a company. You can change the payrolls returned by updating the - * processing_status, payroll_types, start_date, & end_date params. - * - *

    By default, will return processed, regular payrolls for the past 6 months. + * Generate printable payroll checks (pdf) * - *

    Notes: - * * Dollar amounts are returned as string representations of numeric decimals, are represented to the - * cent. - * * end_date can be at most 3 months in the future and start_date and end_date can't be more than 1 - * year apart. - * * Results are paginated. Maximum page size is 100 payrolls per request; the default page size is 25. + *

    This endpoint initiates the generation of employee checks for the payroll specified by payroll_uuid. + * A generation status and corresponding request_uuid will be returned. Use the generated document GET + * endpoint with document_type: `printable_payroll_checks` and request_uuid to poll the check + * generation process and retrieve the generated check URL upon completion. * - *

    scope: `payrolls:read` + *

    scope: `generated_documents:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public GetV1CompaniesCompanyIdPayrollsRequestBuilder list() { - return new GetV1CompaniesCompanyIdPayrollsRequestBuilder(sdkConfiguration); + public PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksRequestBuilder generatePrintableChecks() { + return new PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksRequestBuilder(sdkConfiguration); } /** - * Get all payrolls for a company + * Generate printable payroll checks (pdf) * - *

    Returns a list of payrolls for a company. You can change the payrolls returned by updating the - * processing_status, payroll_types, start_date, & end_date params. + *

    This endpoint initiates the generation of employee checks for the payroll specified by payroll_uuid. + * A generation status and corresponding request_uuid will be returned. Use the generated document GET + * endpoint with document_type: `printable_payroll_checks` and request_uuid to poll the check + * generation process and retrieve the generated check URL upon completion. * - *

    By default, will return processed, regular payrolls for the past 6 months. + *

    scope: `generated_documents:write` * - *

    Notes: - * * Dollar amounts are returned as string representations of numeric decimals, are represented to the - * cent. - * * end_date can be at most 3 months in the future and start_date and end_date can't be more than 1 - * year apart. - * * Results are paginated. Maximum page size is 100 payrolls per request; the default page size is 25. + *

    If set, this operation will use Security#companyAccessAuth from the global security. * - *

    scope: `payrolls:read` + * @param payrollUuid The UUID of the payroll + * @param printablePayrollChecksBody Request body for generating printable payroll checks. + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture generatePrintableChecks(String payrollUuid, PrintablePayrollChecksBody printablePayrollChecksBody) { + return generatePrintableChecks(Optional.empty(), payrollUuid, printablePayrollChecksBody); + } + + /** + * Generate printable payroll checks (pdf) + * + *

    This endpoint initiates the generation of employee checks for the payroll specified by payroll_uuid. + * A generation status and corresponding request_uuid will be returned. Use the generated document GET + * endpoint with document_type: `printable_payroll_checks` and request_uuid to poll the check + * generation process and retrieve the generated check URL upon completion. + * + *

    scope: `generated_documents:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param request The request object containing all the parameters for the API call. - * @return {@code CompletableFuture} - The async response + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param payrollUuid The UUID of the payroll + * @param printablePayrollChecksBody Request body for generating printable payroll checks. + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture list(GetV1CompaniesCompanyIdPayrollsRequest request) { - AsyncRequestOperation operation - = new GetV1CompaniesCompanyIdPayrolls.Async(sdkConfiguration, _headers); + public CompletableFuture generatePrintableChecks( + Optional xGustoAPIVersion, String payrollUuid, + PrintablePayrollChecksBody printablePayrollChecksBody) { + PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksRequest request = + PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .payrollUuid(payrollUuid) + .printablePayrollChecksBody(printablePayrollChecksBody) + .build(); + AsyncRequestOperation operation + = new PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecks.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Create an off-cycle payroll - * - *

    Creates a new, unprocessed, off-cycle payroll. + * Get an employee's pay stubs * - *

    ## `off_cycle_reason` - * By default: - * - External benefits and deductions will be included when the `off_cycle_reason` is set to - * `Correction`. - * - All benefits and deductions are blocked when the `off_cycle_reason` is set to `Bonus`. + *

    Get an employee's pay stubs. * - *

    These elections can be overridden with the `skip_regular_deductions` boolean. + *

    Results are returned in reverse chronological order (newest first). * - *

    scope: `payrolls:run` + *

    scope: `pay_stubs:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public PostV1CompaniesCompanyIdPayrollsRequestBuilder createOffCycle() { - return new PostV1CompaniesCompanyIdPayrollsRequestBuilder(sdkConfiguration); + public GetV1EmployeesEmployeeUuidPayStubsRequestBuilder getPayStubs() { + return new GetV1EmployeesEmployeeUuidPayStubsRequestBuilder(sdkConfiguration); } /** - * Create an off-cycle payroll - * - *

    Creates a new, unprocessed, off-cycle payroll. + * Get an employee's pay stubs * - *

    ## `off_cycle_reason` - * By default: - * - External benefits and deductions will be included when the `off_cycle_reason` is set to - * `Correction`. - * - All benefits and deductions are blocked when the `off_cycle_reason` is set to `Bonus`. + *

    Get an employee's pay stubs. * - *

    These elections can be overridden with the `skip_regular_deductions` boolean. + *

    Results are returned in reverse chronological order (newest first). * - *

    scope: `payrolls:run` + *

    scope: `pay_stubs:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company - * @return {@code CompletableFuture} - The async response + * @param employeeId The UUID of the employee + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture createOffCycle(String companyId) { - return createOffCycle(Optional.empty(), companyId, Optional.empty()); + public CompletableFuture getPayStubs(String employeeId) { + return getPayStubs( + Optional.empty(), employeeId, Optional.empty(), + Optional.empty()); } /** - * Create an off-cycle payroll - * - *

    Creates a new, unprocessed, off-cycle payroll. + * Get an employee's pay stubs * - *

    ## `off_cycle_reason` - * By default: - * - External benefits and deductions will be included when the `off_cycle_reason` is set to - * `Correction`. - * - All benefits and deductions are blocked when the `off_cycle_reason` is set to `Bonus`. + *

    Get an employee's pay stubs. * - *

    These elections can be overridden with the `skip_regular_deductions` boolean. + *

    Results are returned in reverse chronological order (newest first). * - *

    scope: `payrolls:run` + *

    scope: `pay_stubs:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyId The UUID of the company - * @param requestBody - * @return {@code CompletableFuture} - The async response + * @param employeeId The UUID of the employee + * @param page The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + * @param per Number of objects per page. For majority of endpoints will default to 25 + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture createOffCycle( - Optional xGustoAPIVersion, String companyId, - Optional requestBody) { - PostV1CompaniesCompanyIdPayrollsRequest request = - PostV1CompaniesCompanyIdPayrollsRequest + public CompletableFuture getPayStubs( + Optional xGustoAPIVersion, String employeeId, + Optional page, Optional per) { + GetV1EmployeesEmployeeUuidPayStubsRequest request = + GetV1EmployeesEmployeeUuidPayStubsRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .companyId(companyId) - .requestBody(requestBody) + .employeeId(employeeId) + .page(page) + .per(per) .build(); - AsyncRequestOperation operation - = new PostV1CompaniesCompanyIdPayrolls.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new GetV1EmployeesEmployeeUuidPayStubs.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Get approved payroll reversals + * Get an employee pay stub (pdf) * - *

    Returns all approved Payroll Reversals for a Company. + *

    Get an employee's pay stub for the specified payroll. By default, an application/pdf response will + * be returned. No other content types are currently supported, but may be supported in the future. * - *

    scope: `payrolls:read` + *

    scope: `pay_stubs:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder getApprovedReversals() { - return new GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder(sdkConfiguration); + public GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubRequestBuilder getPayStub() { + return new GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubRequestBuilder(sdkConfiguration); } /** - * Get approved payroll reversals + * Get an employee pay stub (pdf) * - *

    Returns all approved Payroll Reversals for a Company. + *

    Get an employee's pay stub for the specified payroll. By default, an application/pdf response will + * be returned. No other content types are currently supported, but may be supported in the future. * - *

    scope: `payrolls:read` + *

    scope: `pay_stubs:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company - * @return {@code CompletableFuture} - The async response + * @param payrollId The UUID of the payroll + * @param employeeId The UUID of the employee + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getApprovedReversals(String companyId) { - return getApprovedReversals( - companyId, Optional.empty(), Optional.empty(), - Optional.empty()); + public CompletableFuture getPayStub(String payrollId, String employeeId) { + return getPayStub(Optional.empty(), payrollId, employeeId); } /** - * Get approved payroll reversals + * Get an employee pay stub (pdf) * - *

    Returns all approved Payroll Reversals for a Company. + *

    Get an employee's pay stub for the specified payroll. By default, an application/pdf response will + * be returned. No other content types are currently supported, but may be supported in the future. * - *

    scope: `payrolls:read` + *

    scope: `pay_stubs:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company - * @param page The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - * @param per Number of objects per page. For majority of endpoints will default to 25 - * @param xGustoAPIVersion - * @return {@code CompletableFuture} - The async response + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param payrollId The UUID of the payroll + * @param employeeId The UUID of the employee + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getApprovedReversals( - String companyId, Optional page, - Optional per, Optional xGustoAPIVersion) { - GetV1CompaniesCompanyIdPayrollReversalsRequest request = - GetV1CompaniesCompanyIdPayrollReversalsRequest + public CompletableFuture getPayStub( + Optional xGustoAPIVersion, String payrollId, + String employeeId) { + GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubRequest request = + GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubRequest .builder() - .companyId(companyId) - .page(page) - .per(per) .xGustoAPIVersion(xGustoAPIVersion) + .payrollId(payrollId) + .employeeId(employeeId) .build(); - AsyncRequestOperation operation - = new GetV1CompaniesCompanyIdPayrollReversals.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStub.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Get a single payroll - * - *

    Returns a payroll. If payroll is calculated or processed, will return employee_compensations and - * totals. - * - *

    Results are paginated, with a maximum page size of 100 employee_compensations. + * Get partner disbursements for a payroll * - *

    Notes: - * * Hour and dollar amounts are returned as string representations of numeric decimals. - * * Hours are represented to the thousands place; dollar amounts are represented to the cent. - * * Every eligible compensation is returned for each employee. If no data has yet be inserted for a - * given field, it defaults to "0.00" (for fixed amounts) or "0.000" (for hours ). - * * When include parameter with benefits value is passed, employee_benefits:read scope is required to - * return benefits - * * Benefits containing PHI are only visible with the `employee_benefits:read:phi` scope + *

    Get partner disbursements for a specific payroll. * - *

    scope: `payrolls:read` + *

    scope: `partner_disbursements:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public GetV1CompaniesCompanyIdPayrollsPayrollIdRequestBuilder get() { - return new GetV1CompaniesCompanyIdPayrollsPayrollIdRequestBuilder(sdkConfiguration); + public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder getV1CompaniesCompanyIdPayrollsIdPartnerDisbursements() { + return new GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder(sdkConfiguration); } /** - * Get a single payroll + * Get partner disbursements for a payroll * - *

    Returns a payroll. If payroll is calculated or processed, will return employee_compensations and - * totals. + *

    Get partner disbursements for a specific payroll. * - *

    Results are paginated, with a maximum page size of 100 employee_compensations. + *

    scope: `partner_disbursements:read` * - *

    Notes: - * * Hour and dollar amounts are returned as string representations of numeric decimals. - * * Hours are represented to the thousands place; dollar amounts are represented to the cent. - * * Every eligible compensation is returned for each employee. If no data has yet be inserted for a - * given field, it defaults to "0.00" (for fixed amounts) or "0.000" (for hours ). - * * When include parameter with benefits value is passed, employee_benefits:read scope is required to + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param companyId The UUID of the company + * @param id The UUID of the payroll + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getV1CompaniesCompanyIdPayrollsIdPartnerDisbursements(String companyId, String id) { + return getV1CompaniesCompanyIdPayrollsIdPartnerDisbursements(Optional.empty(), companyId, id); + } + + /** + * Get partner disbursements for a payroll + * + *

    Get partner disbursements for a specific payroll. + * + *

    scope: `partner_disbursements:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company + * @param id The UUID of the payroll + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getV1CompaniesCompanyIdPayrollsIdPartnerDisbursements( + Optional xGustoAPIVersion, String companyId, + String id) { + GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest request = + GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) + .id(id) + .build(); + AsyncRequestOperation operation + = new GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursements.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Update partner disbursements for a payroll + * + *

    Update partner disbursements for a specific payroll. + * + *

    scope: `partner_disbursements:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder patchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements() { + return new PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder(sdkConfiguration); + } + + /** + * Update partner disbursements for a payroll + * + *

    Update partner disbursements for a specific payroll. + * + *

    scope: `partner_disbursements:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param companyId The UUID of the company + * @param id The UUID of the payroll + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture patchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements(String companyId, String id) { + return patchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements( + Optional.empty(), companyId, id, + Optional.empty()); + } + + /** + * Update partner disbursements for a payroll + * + *

    Update partner disbursements for a specific payroll. + * + *

    scope: `partner_disbursements:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company + * @param id The UUID of the payroll + * @param requestBody + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture patchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements( + Optional xGustoAPIVersion, String companyId, + String id, Optional requestBody) { + PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest request = + PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) + .id(id) + .requestBody(requestBody) + .build(); + AsyncRequestOperation operation + = new PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Get approved payroll reversals + * + *

    Returns all approved Payroll Reversals for a Company. + * + *

    scope: `payrolls:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder getApprovedReversals() { + return new GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder(sdkConfiguration); + } + + /** + * Get approved payroll reversals + * + *

    Returns all approved Payroll Reversals for a Company. + * + *

    scope: `payrolls:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param companyId The UUID of the company + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getApprovedReversals(String companyId) { + return getApprovedReversals( + Optional.empty(), companyId, Optional.empty(), + Optional.empty()); + } + + /** + * Get approved payroll reversals + * + *

    Returns all approved Payroll Reversals for a Company. + * + *

    scope: `payrolls:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company + * @param page The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + * @param per Number of objects per page. For majority of endpoints will default to 25 + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getApprovedReversals( + Optional xGustoAPIVersion, String companyId, + Optional page, Optional per) { + GetV1CompaniesCompanyIdPayrollReversalsRequest request = + GetV1CompaniesCompanyIdPayrollReversalsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) + .page(page) + .per(per) + .build(); + AsyncRequestOperation operation + = new GetV1CompaniesCompanyIdPayrollReversals.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Get a single payroll + * + *

    Returns a payroll. If payroll is calculated or processed, will return employee_compensations and + * totals. + * + *

    Results are paginated, with a maximum page size of 100 employee_compensations. + * + *

    Notes: + * * Hour and dollar amounts are returned as string representations of numeric decimals. + * * Hours are represented to the thousands place; dollar amounts are represented to the cent. + * * Every eligible compensation is returned for each employee. If no data has yet be inserted for a + * given field, it defaults to "0.00" (for fixed amounts) or "0.000" (for hours ). + * * When include parameter with benefits value is passed, employee_benefits:read scope is required to + * return benefits + * * Benefits containing PHI are only visible with the `employee_benefits:read:phi` scope + * + *

    scope: `payrolls:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public GetV1CompaniesCompanyIdPayrollsPayrollIdRequestBuilder get() { + return new GetV1CompaniesCompanyIdPayrollsPayrollIdRequestBuilder(sdkConfiguration); + } + + /** + * Get a single payroll + * + *

    Returns a payroll. If payroll is calculated or processed, will return employee_compensations and + * totals. + * + *

    Results are paginated, with a maximum page size of 100 employee_compensations. + * + *

    Notes: + * * Hour and dollar amounts are returned as string representations of numeric decimals. + * * Hours are represented to the thousands place; dollar amounts are represented to the cent. + * * Every eligible compensation is returned for each employee. If no data has yet be inserted for a + * given field, it defaults to "0.00" (for fixed amounts) or "0.000" (for hours ). + * * When include parameter with benefits value is passed, employee_benefits:read scope is required to * return benefits * * Benefits containing PHI are only visible with the `employee_benefits:read:phi` scope * @@ -538,7 +737,7 @@ public DeleteV1CompaniesCompanyIdPayrollsRequestBuilder delete() { */ public CompletableFuture delete(String companyId, String payrollId) { return delete( - companyId, payrollId, Optional.empty(), + Optional.empty(), companyId, payrollId, Optional.empty()); } @@ -559,22 +758,22 @@ public CompletableFuture delete(Stri * *

    If set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyId The UUID of the company * @param payrollId The UUID of the payroll * @param async When true, request an asynchronous delete of the payroll. - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @return {@code CompletableFuture} - The async response */ public CompletableFuture delete( - String companyId, String payrollId, - Optional async, Optional xGustoAPIVersion) { + Optional xGustoAPIVersion, String companyId, + String payrollId, Optional async) { DeleteV1CompaniesCompanyIdPayrollsRequest request = DeleteV1CompaniesCompanyIdPayrollsRequest .builder() + .xGustoAPIVersion(xGustoAPIVersion) .companyId(companyId) .payrollId(payrollId) .async(async) - .xGustoAPIVersion(xGustoAPIVersion) .build(); AsyncRequestOperation operation = new DeleteV1CompaniesCompanyIdPayrolls.Async(sdkConfiguration, _headers); @@ -584,375 +783,72 @@ public CompletableFuture delete( /** - * Prepare a payroll for update - * - *

    Prepares an unprocessed payroll for update, including: adding or removing eligible employees from - * the payroll, - * and updating `check_date`, `payroll_deadline`, and `payroll_status_meta` dates and times. + * Get all payrolls for a company * - *

    Use this endpoint before calling [PUT - * /v1/companies/{company_id}/payrolls/{payroll_id}](ref:put-v1-companies-company_id-payrolls). + *

    Returns a list of payrolls for a company. You can change the payrolls returned by updating the + * processing_status, payroll_types, start_date, & end_date params. * - *

    ### Notes + *

    By default, will return processed, regular payrolls for the past 6 months. * - *

    * Nullifies `calculated_at` and `totals` if the payroll was previously calculated - * * Returns the `version` parameter required for [updating the - * payroll](ref:put-v1-companies-company_id-payrolls) - * * `employees:read` scope is required to include employee compensations data in the response. - * * Results are paginated, with a maximum page size of 100 employee compensations. + *

    Notes: + * * Dollar amounts are returned as string representations of numeric decimals, are represented to the + * cent. + * * end_date can be at most 3 months in the future and start_date and end_date can't be more than 1 + * year apart. + * * Results are paginated. Maximum page size is 100 payrolls per request; the default page size is 25. * - *

    scope: `payrolls:write employees:read` + *

    scope: `payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBuilder prepare() { - return new PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBuilder(sdkConfiguration); + public GetV1CompaniesCompanyIdPayrollsRequestBuilder list() { + return new GetV1CompaniesCompanyIdPayrollsRequestBuilder(sdkConfiguration); } /** - * Prepare a payroll for update + * Get all payrolls for a company * - *

    Prepares an unprocessed payroll for update, including: adding or removing eligible employees from - * the payroll, - * and updating `check_date`, `payroll_deadline`, and `payroll_status_meta` dates and times. + *

    Returns a list of payrolls for a company. You can change the payrolls returned by updating the + * processing_status, payroll_types, start_date, & end_date params. * - *

    Use this endpoint before calling [PUT - * /v1/companies/{company_id}/payrolls/{payroll_id}](ref:put-v1-companies-company_id-payrolls). + *

    By default, will return processed, regular payrolls for the past 6 months. * - *

    ### Notes - * - *

    * Nullifies `calculated_at` and `totals` if the payroll was previously calculated - * * Returns the `version` parameter required for [updating the - * payroll](ref:put-v1-companies-company_id-payrolls) - * * `employees:read` scope is required to include employee compensations data in the response. - * * Results are paginated, with a maximum page size of 100 employee compensations. - * - *

    scope: `payrolls:write employees:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param request The request object containing all the parameters for the API call. - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture prepare(PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequest request) { - AsyncRequestOperation operation - = new PutV1CompaniesCompanyIdPayrollsPayrollIdPrepare.Async(sdkConfiguration, _headers); - return operation.doRequest(request) - .thenCompose(operation::handleResponse); - } - - - /** - * Get a single payroll receipt - * - *

    Returns a payroll receipt. - * - *

    Notes: - * * Hour and dollar amounts are returned as string representations of numeric decimals. - * * Dollar amounts are represented to the cent. - * * If no data has yet be inserted for a given field, it defaults to "0.00" (for fixed amounts). - * - *

    scope: `payrolls:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The async call builder - */ - public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder getReceipt() { - return new GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder(sdkConfiguration); - } - - /** - * Get a single payroll receipt - * - *

    Returns a payroll receipt. - * - *

    Notes: - * * Hour and dollar amounts are returned as string representations of numeric decimals. - * * Dollar amounts are represented to the cent. - * * If no data has yet be inserted for a given field, it defaults to "0.00" (for fixed amounts). + *

    Notes: + * * Dollar amounts are returned as string representations of numeric decimals, are represented to the + * cent. + * * end_date can be at most 3 months in the future and start_date and end_date can't be more than 1 + * year apart. + * * Results are paginated. Maximum page size is 100 payrolls per request; the default page size is 25. * *

    scope: `payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param payrollUuid The UUID of the payroll - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture getReceipt(String payrollUuid) { - return getReceipt(payrollUuid, Optional.empty()); - } - - /** - * Get a single payroll receipt - * - *

    Returns a payroll receipt. - * - *

    Notes: - * * Hour and dollar amounts are returned as string representations of numeric decimals. - * * Dollar amounts are represented to the cent. - * * If no data has yet be inserted for a given field, it defaults to "0.00" (for fixed amounts). - * - *

    scope: `payrolls:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param payrollUuid The UUID of the payroll - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture getReceipt(String payrollUuid, Optional xGustoAPIVersion) { - GetV1PaymentReceiptsPayrollsPayrollUuidRequest request = - GetV1PaymentReceiptsPayrollsPayrollUuidRequest - .builder() - .payrollUuid(payrollUuid) - .xGustoAPIVersion(xGustoAPIVersion) - .build(); - AsyncRequestOperation operation - = new GetV1PaymentReceiptsPayrollsPayrollUuid.Async(sdkConfiguration, _headers); - return operation.doRequest(request) - .thenCompose(operation::handleResponse); - } - - - /** - * Get all payroll blockers for a company - * - *

    Returns a list of reasons that prevent the company from running payrolls. See the [Payroll Blockers - * guide](doc:payroll-blockers) for a complete list of reasons. The list is empty if there are no - * payroll blockers. - * - *

    scope: `payrolls:run` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The async call builder - */ - public GetV1CompaniesPayrollBlockersCompanyUuidRequestBuilder getBlockers() { - return new GetV1CompaniesPayrollBlockersCompanyUuidRequestBuilder(sdkConfiguration); - } - - /** - * Get all payroll blockers for a company - * - *

    Returns a list of reasons that prevent the company from running payrolls. See the [Payroll Blockers - * guide](doc:payroll-blockers) for a complete list of reasons. The list is empty if there are no - * payroll blockers. - * - *

    scope: `payrolls:run` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param companyUuid The UUID of the company - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture getBlockers(String companyUuid) { - return getBlockers(Optional.empty(), companyUuid); - } - - /** - * Get all payroll blockers for a company - * - *

    Returns a list of reasons that prevent the company from running payrolls. See the [Payroll Blockers - * guide](doc:payroll-blockers) for a complete list of reasons. The list is empty if there are no - * payroll blockers. - * - *

    scope: `payrolls:run` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyUuid The UUID of the company - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture getBlockers(Optional xGustoAPIVersion, String companyUuid) { - GetV1CompaniesPayrollBlockersCompanyUuidRequest request = - GetV1CompaniesPayrollBlockersCompanyUuidRequest - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .companyUuid(companyUuid) - .build(); - AsyncRequestOperation operation - = new GetV1CompaniesPayrollBlockersCompanyUuid.Async(sdkConfiguration, _headers); - return operation.doRequest(request) - .thenCompose(operation::handleResponse); - } - - - /** - * Skip a payroll - * - *

    Submits a $0 payroll for employees associated with the pay schedule to skip payroll. This submission - * is asynchronous and a successful request responds with a 202 HTTP status. Upon success, the payroll - * is transitioned to the `processed` state. - * - *

    If the company is blocked from running payroll due to issues like incomplete setup, missing - * information or other compliance issues, the response will be 422 Unprocessable Entity with a - * categorization of the blockers as described in the error responses. - * - *

    scope: `payrolls:run` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The async call builder - */ - public PostCompaniesPayrollSkipCompanyUuidRequestBuilder skip() { - return new PostCompaniesPayrollSkipCompanyUuidRequestBuilder(sdkConfiguration); - } - - /** - * Skip a payroll - * - *

    Submits a $0 payroll for employees associated with the pay schedule to skip payroll. This submission - * is asynchronous and a successful request responds with a 202 HTTP status. Upon success, the payroll - * is transitioned to the `processed` state. - * - *

    If the company is blocked from running payroll due to issues like incomplete setup, missing - * information or other compliance issues, the response will be 422 Unprocessable Entity with a - * categorization of the blockers as described in the error responses. - * - *

    scope: `payrolls:run` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param companyUuid The UUID of the company - * @param requestBody - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture skip(String companyUuid, PostCompaniesPayrollSkipCompanyUuidRequestBody requestBody) { - return skip(Optional.empty(), companyUuid, requestBody); - } - - /** - * Skip a payroll - * - *

    Submits a $0 payroll for employees associated with the pay schedule to skip payroll. This submission - * is asynchronous and a successful request responds with a 202 HTTP status. Upon success, the payroll - * is transitioned to the `processed` state. - * - *

    If the company is blocked from running payroll due to issues like incomplete setup, missing - * information or other compliance issues, the response will be 422 Unprocessable Entity with a - * categorization of the blockers as described in the error responses. - * - *

    scope: `payrolls:run` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyUuid The UUID of the company - * @param requestBody - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture skip( - Optional xGustoAPIVersion, String companyUuid, - PostCompaniesPayrollSkipCompanyUuidRequestBody requestBody) { - PostCompaniesPayrollSkipCompanyUuidRequest request = - PostCompaniesPayrollSkipCompanyUuidRequest - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .companyUuid(companyUuid) - .requestBody(requestBody) - .build(); - AsyncRequestOperation operation - = new PostCompaniesPayrollSkipCompanyUuid.Async(sdkConfiguration, _headers); - return operation.doRequest(request) - .thenCompose(operation::handleResponse); - } - - - /** - * Calculate gross up for a payroll - * - *

    Calculates gross up earnings for an employee's payroll, given net earnings. This endpoint is only - * applicable to off-cycle unprocessed payrolls. - * - *

    The gross up amount must then be mapped to the corresponding fixed compensation earning type to get - * the correct payroll amount. For example, for bonus off-cycles, the gross up amount should be set - * with the Bonus earning type in the payroll `fixed_compensations` field. - * - *

    scope: `payrolls:run` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The async call builder - */ - public PostPayrollsGrossUpPayrollUuidRequestBuilder calculateGrossUp() { - return new PostPayrollsGrossUpPayrollUuidRequestBuilder(sdkConfiguration); - } - - /** - * Calculate gross up for a payroll - * - *

    Calculates gross up earnings for an employee's payroll, given net earnings. This endpoint is only - * applicable to off-cycle unprocessed payrolls. - * - *

    The gross up amount must then be mapped to the corresponding fixed compensation earning type to get - * the correct payroll amount. For example, for bonus off-cycles, the gross up amount should be set - * with the Bonus earning type in the payroll `fixed_compensations` field. - * - *

    scope: `payrolls:run` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param payrollUuid The UUID of the payroll - * @param payrollGrossUpRequest Request body for calculating gross up amount - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture calculateGrossUp(String payrollUuid, PayrollGrossUpRequest payrollGrossUpRequest) { - return calculateGrossUp(Optional.empty(), payrollUuid, payrollGrossUpRequest); - } - - /** - * Calculate gross up for a payroll - * - *

    Calculates gross up earnings for an employee's payroll, given net earnings. This endpoint is only - * applicable to off-cycle unprocessed payrolls. - * - *

    The gross up amount must then be mapped to the corresponding fixed compensation earning type to get - * the correct payroll amount. For example, for bonus off-cycles, the gross up amount should be set - * with the Bonus earning type in the payroll `fixed_compensations` field. - * - *

    scope: `payrolls:run` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param payrollUuid The UUID of the payroll - * @param payrollGrossUpRequest Request body for calculating gross up amount - * @return {@code CompletableFuture} - The async response + * @param request The request object containing all the parameters for the API call. + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture calculateGrossUp( - Optional xGustoAPIVersion, String payrollUuid, - PayrollGrossUpRequest payrollGrossUpRequest) { - PostPayrollsGrossUpPayrollUuidRequest request = - PostPayrollsGrossUpPayrollUuidRequest - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .payrollUuid(payrollUuid) - .payrollGrossUpRequest(payrollGrossUpRequest) - .build(); - AsyncRequestOperation operation - = new PostPayrollsGrossUpPayrollUuid.Async(sdkConfiguration, _headers); + public CompletableFuture list(GetV1CompaniesCompanyIdPayrollsRequest request) { + AsyncRequestOperation operation + = new GetV1CompaniesCompanyIdPayrolls.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Calculate a payroll + * Create an off-cycle payroll * - *

    Performs calculations for taxes, benefits, and deductions for an unprocessed payroll. The calculated - * payroll details provide a preview of the actual values that will be used when the payroll is run. + *

    Creates a new, unprocessed, off-cycle payroll. * - *

    This calculation is asynchronous and a successful request responds with a 202 HTTP status. To view - * the details of the calculated payroll, use the GET /v1/companies/{company_id}/payrolls/{payroll_id} - * endpoint with *include=taxes,benefits,deductions* params. + *

    ## `off_cycle_reason` + * By default: + * - External benefits and deductions will be included when the `off_cycle_reason` is set to + * `Correction`. + * - All benefits and deductions are blocked when the `off_cycle_reason` is set to `Bonus`. * - *

    If the company is blocked from running payroll due to issues like incomplete setup, missing - * information or other compliance issues, the response will be 422 Unprocessable Entity with a - * categorization of the blockers as described in the error responses. + *

    These elections can be overridden with the `skip_regular_deductions` boolean. * *

    scope: `payrolls:run` * @@ -960,49 +856,46 @@ public CompletableFuture calculateGrossU * * @return The async call builder */ - public PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateRequestBuilder calculate() { - return new PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateRequestBuilder(sdkConfiguration); + public PostV1CompaniesCompanyIdPayrollsRequestBuilder createOffCycle() { + return new PostV1CompaniesCompanyIdPayrollsRequestBuilder(sdkConfiguration); } /** - * Calculate a payroll + * Create an off-cycle payroll * - *

    Performs calculations for taxes, benefits, and deductions for an unprocessed payroll. The calculated - * payroll details provide a preview of the actual values that will be used when the payroll is run. + *

    Creates a new, unprocessed, off-cycle payroll. * - *

    This calculation is asynchronous and a successful request responds with a 202 HTTP status. To view - * the details of the calculated payroll, use the GET /v1/companies/{company_id}/payrolls/{payroll_id} - * endpoint with *include=taxes,benefits,deductions* params. + *

    ## `off_cycle_reason` + * By default: + * - External benefits and deductions will be included when the `off_cycle_reason` is set to + * `Correction`. + * - All benefits and deductions are blocked when the `off_cycle_reason` is set to `Bonus`. * - *

    If the company is blocked from running payroll due to issues like incomplete setup, missing - * information or other compliance issues, the response will be 422 Unprocessable Entity with a - * categorization of the blockers as described in the error responses. + *

    These elections can be overridden with the `skip_regular_deductions` boolean. * *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param companyId The UUID of the company - * @param payrollId The UUID of the payroll - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture calculate(String companyId, String payrollId) { - return calculate(Optional.empty(), companyId, payrollId); + public CompletableFuture createOffCycle(String companyId) { + return createOffCycle(Optional.empty(), companyId, Optional.empty()); } /** - * Calculate a payroll + * Create an off-cycle payroll * - *

    Performs calculations for taxes, benefits, and deductions for an unprocessed payroll. The calculated - * payroll details provide a preview of the actual values that will be used when the payroll is run. + *

    Creates a new, unprocessed, off-cycle payroll. * - *

    This calculation is asynchronous and a successful request responds with a 202 HTTP status. To view - * the details of the calculated payroll, use the GET /v1/companies/{company_id}/payrolls/{payroll_id} - * endpoint with *include=taxes,benefits,deductions* params. + *

    ## `off_cycle_reason` + * By default: + * - External benefits and deductions will be included when the `off_cycle_reason` is set to + * `Correction`. + * - All benefits and deductions are blocked when the `off_cycle_reason` is set to `Bonus`. * - *

    If the company is blocked from running payroll due to issues like incomplete setup, missing - * information or other compliance issues, the response will be 422 Unprocessable Entity with a - * categorization of the blockers as described in the error responses. + *

    These elections can be overridden with the `skip_regular_deductions` boolean. * *

    scope: `payrolls:run` * @@ -1010,115 +903,117 @@ public CompletableFuture} - The async response + * @param requestBody + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture calculate( - Optional xGustoAPIVersion, String companyId, - String payrollId) { - PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateRequest request = - PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateRequest + public CompletableFuture createOffCycle( + Optional xGustoAPIVersion, String companyId, + Optional requestBody) { + PostV1CompaniesCompanyIdPayrollsRequest request = + PostV1CompaniesCompanyIdPayrollsRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .companyId(companyId) - .payrollId(payrollId) + .requestBody(requestBody) .build(); - AsyncRequestOperation operation - = new PutV1CompaniesCompanyIdPayrollsPayrollIdCalculate.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new PostV1CompaniesCompanyIdPayrolls.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Submit payroll - * - *

    Submits an unprocessed payroll to be calculated and run. This submission is asynchronous and a - * successful request responds with a 202 HTTP status. Upon success, transitions the payroll to the - * `processed` state. + * Get a single payroll receipt * - *

    You should poll to ensure that payroll is processed successfully, as async errors only occur after - * async processing is complete. + *

    Returns a payroll receipt. * - *

    If the company is blocked from running payroll due to issues like incomplete setup, missing - * information or other compliance issues, the response will be 422 Unprocessable Entity with a - * categorization of the blockers as described in the error responses. + *

    Notes: + * * Hour and dollar amounts are returned as string representations of numeric decimals. + * * Dollar amounts are represented to the cent. + * * If no data has yet be inserted for a given field, it defaults to "0.00" (for fixed amounts). + * * Pagination is optional. Supplying `page` and/or `per` returns only the requested page of employee + * compensations and includes the `X-Page`, `X-Total-Count`, `X-Total-Pages`, and `X-Per-Page` response + * headers. Without either parameter, all employee compensations are returned without pagination + * headers. + * * Maximum page size is 100 employee compensations per request. * - *

    scope: `payrolls:run` + *

    scope: `payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitRequestBuilder submit() { - return new PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitRequestBuilder(sdkConfiguration); - } - - /** - * Submit payroll - * - *

    Submits an unprocessed payroll to be calculated and run. This submission is asynchronous and a - * successful request responds with a 202 HTTP status. Upon success, transitions the payroll to the - * `processed` state. + public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder getReceipt() { + return new GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder(sdkConfiguration); + } + + /** + * Get a single payroll receipt * - *

    You should poll to ensure that payroll is processed successfully, as async errors only occur after - * async processing is complete. + *

    Returns a payroll receipt. * - *

    If the company is blocked from running payroll due to issues like incomplete setup, missing - * information or other compliance issues, the response will be 422 Unprocessable Entity with a - * categorization of the blockers as described in the error responses. + *

    Notes: + * * Hour and dollar amounts are returned as string representations of numeric decimals. + * * Dollar amounts are represented to the cent. + * * If no data has yet be inserted for a given field, it defaults to "0.00" (for fixed amounts). + * * Pagination is optional. Supplying `page` and/or `per` returns only the requested page of employee + * compensations and includes the `X-Page`, `X-Total-Count`, `X-Total-Pages`, and `X-Per-Page` response + * headers. Without either parameter, all employee compensations are returned without pagination + * headers. + * * Maximum page size is 100 employee compensations per request. * - *

    scope: `payrolls:run` + *

    scope: `payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company - * @param payrollId The UUID of the payroll - * @return {@code CompletableFuture} - The async response + * @param payrollUuid The UUID of the payroll + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture submit(String companyId, String payrollId) { - return submit( - Optional.empty(), companyId, payrollId, + public CompletableFuture getReceipt(String payrollUuid) { + return getReceipt( + Optional.empty(), payrollUuid, Optional.empty(), Optional.empty()); } /** - * Submit payroll - * - *

    Submits an unprocessed payroll to be calculated and run. This submission is asynchronous and a - * successful request responds with a 202 HTTP status. Upon success, transitions the payroll to the - * `processed` state. + * Get a single payroll receipt * - *

    You should poll to ensure that payroll is processed successfully, as async errors only occur after - * async processing is complete. + *

    Returns a payroll receipt. * - *

    If the company is blocked from running payroll due to issues like incomplete setup, missing - * information or other compliance issues, the response will be 422 Unprocessable Entity with a - * categorization of the blockers as described in the error responses. + *

    Notes: + * * Hour and dollar amounts are returned as string representations of numeric decimals. + * * Dollar amounts are represented to the cent. + * * If no data has yet be inserted for a given field, it defaults to "0.00" (for fixed amounts). + * * Pagination is optional. Supplying `page` and/or `per` returns only the requested page of employee + * compensations and includes the `X-Page`, `X-Total-Count`, `X-Total-Pages`, and `X-Per-Page` response + * headers. Without either parameter, all employee compensations are returned without pagination + * headers. + * * Maximum page size is 100 employee compensations per request. * - *

    scope: `payrolls:run` + *

    scope: `payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyId The UUID of the company - * @param payrollId The UUID of the payroll - * @param requestBody - * @return {@code CompletableFuture} - The async response + * @param payrollUuid The UUID of the payroll + * @param page The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + * @param per Number of objects per page. For majority of endpoints will default to 25 + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture submit( - Optional xGustoAPIVersion, String companyId, - String payrollId, Optional requestBody) { - PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitRequest request = - PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitRequest + public CompletableFuture getReceipt( + Optional xGustoAPIVersion, String payrollUuid, + Optional page, Optional per) { + GetV1PaymentReceiptsPayrollsPayrollUuidRequest request = + GetV1PaymentReceiptsPayrollsPayrollUuidRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .companyId(companyId) - .payrollId(payrollId) - .requestBody(requestBody) + .payrollUuid(payrollUuid) + .page(page) + .per(per) .build(); - AsyncRequestOperation operation - = new PutV1CompaniesCompanyIdPayrollsPayrollIdSubmit.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new GetV1PaymentReceiptsPayrollsPayrollUuid.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } @@ -1200,340 +1095,468 @@ public CompletableFutureGet an employee's pay stub for the specified payroll. By default, an application/pdf response will - * be returned. No other content types are currently supported, but may be supported in the future. + *

    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_date`, `payroll_deadline`, and `payroll_status_meta` dates and times. * - *

    scope: `pay_stubs:read` + *

    Use this endpoint before calling [PUT + * /v1/companies/{company_id}/payrolls/{payroll_id}](ref:put-v1-companies-company_id-payrolls). + * + *

    ### Notes + * + *

    * Nullifies `calculated_at` and `totals` if the payroll was previously calculated + * * Returns the `version` parameter required for [updating the + * payroll](ref:put-v1-companies-company_id-payrolls) + * * `employees:read` scope is required to include employee compensations data in the response. + * * Results are paginated, with a maximum page size of 100 employee compensations. + * + *

    scope: `payrolls:write employees:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubRequestBuilder getPayStub() { - return new GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubRequestBuilder(sdkConfiguration); + public PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBuilder prepare() { + return new PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBuilder(sdkConfiguration); } /** - * Get an employee pay stub (pdf) + * Prepare a payroll for update * - *

    Get an employee's pay stub for the specified payroll. By default, an application/pdf response will - * be returned. No other content types are currently supported, but may be supported in the future. + *

    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_date`, `payroll_deadline`, and `payroll_status_meta` dates and times. * - *

    scope: `pay_stubs:read` + *

    Use this endpoint before calling [PUT + * /v1/companies/{company_id}/payrolls/{payroll_id}](ref:put-v1-companies-company_id-payrolls). + * + *

    ### Notes + * + *

    * Nullifies `calculated_at` and `totals` if the payroll was previously calculated + * * Returns the `version` parameter required for [updating the + * payroll](ref:put-v1-companies-company_id-payrolls) + * * `employees:read` scope is required to include employee compensations data in the response. + * * Results are paginated, with a maximum page size of 100 employee compensations. + * + *

    scope: `payrolls:write employees:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param request The request object containing all the parameters for the API call. + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture prepare(PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequest request) { + AsyncRequestOperation operation + = new PutV1CompaniesCompanyIdPayrollsPayrollIdPrepare.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Calculate a payroll + * + *

    Performs calculations for taxes, benefits, and deductions for an unprocessed payroll. The calculated + * payroll details provide a preview of the actual values that will be used when the payroll is run. + * + *

    This calculation is asynchronous and a successful request responds with a 202 HTTP status. To view + * the details of the calculated payroll, use the GET /v1/companies/{company_id}/payrolls/{payroll_id} + * endpoint with *include=taxes,benefits,deductions* params. + * + *

    If the company is blocked from running payroll due to issues like incomplete setup, missing + * information or other compliance issues, the response will be 422 Unprocessable Entity with a + * categorization of the blockers as described in the error responses. + * + *

    scope: `payrolls:run` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateRequestBuilder calculate() { + return new PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateRequestBuilder(sdkConfiguration); + } + + /** + * Calculate a payroll + * + *

    Performs calculations for taxes, benefits, and deductions for an unprocessed payroll. The calculated + * payroll details provide a preview of the actual values that will be used when the payroll is run. + * + *

    This calculation is asynchronous and a successful request responds with a 202 HTTP status. To view + * the details of the calculated payroll, use the GET /v1/companies/{company_id}/payrolls/{payroll_id} + * endpoint with *include=taxes,benefits,deductions* params. + * + *

    If the company is blocked from running payroll due to issues like incomplete setup, missing + * information or other compliance issues, the response will be 422 Unprocessable Entity with a + * categorization of the blockers as described in the error responses. + * + *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * + * @param companyId The UUID of the company * @param payrollId The UUID of the payroll - * @param employeeId The UUID of the employee - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getPayStub(String payrollId, String employeeId) { - return getPayStub(Optional.empty(), payrollId, employeeId); + public CompletableFuture calculate(String companyId, String payrollId) { + return calculate(Optional.empty(), companyId, payrollId); } /** - * Get an employee pay stub (pdf) + * Calculate a payroll * - *

    Get an employee's pay stub for the specified payroll. By default, an application/pdf response will - * be returned. No other content types are currently supported, but may be supported in the future. + *

    Performs calculations for taxes, benefits, and deductions for an unprocessed payroll. The calculated + * payroll details provide a preview of the actual values that will be used when the payroll is run. * - *

    scope: `pay_stubs:read` + *

    This calculation is asynchronous and a successful request responds with a 202 HTTP status. To view + * the details of the calculated payroll, use the GET /v1/companies/{company_id}/payrolls/{payroll_id} + * endpoint with *include=taxes,benefits,deductions* params. + * + *

    If the company is blocked from running payroll due to issues like incomplete setup, missing + * information or other compliance issues, the response will be 422 Unprocessable Entity with a + * categorization of the blockers as described in the error responses. + * + *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company * @param payrollId The UUID of the payroll - * @param employeeId The UUID of the employee - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getPayStub( - Optional xGustoAPIVersion, String payrollId, - String employeeId) { - GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubRequest request = - GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubRequest + public CompletableFuture calculate( + Optional xGustoAPIVersion, String companyId, + String payrollId) { + PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateRequest request = + PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) .payrollId(payrollId) - .employeeId(employeeId) .build(); - AsyncRequestOperation operation - = new GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStub.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new PutV1CompaniesCompanyIdPayrollsPayrollIdCalculate.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Get an employee's pay stubs - * - *

    Get an employee's pay stubs. + * Get all payroll blockers for a company * - *

    Results are returned in reverse chronological order (newest first). + *

    Returns a list of reasons that prevent the company from running payrolls. See the [Payroll Blockers + * guide](doc:payroll-blockers) for a complete list of reasons. The list is empty if there are no + * payroll blockers. * - *

    scope: `pay_stubs:read` + *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public GetV1EmployeesEmployeeUuidPayStubsRequestBuilder getPayStubs() { - return new GetV1EmployeesEmployeeUuidPayStubsRequestBuilder(sdkConfiguration); + public GetV1CompaniesPayrollBlockersCompanyUuidRequestBuilder getBlockers() { + return new GetV1CompaniesPayrollBlockersCompanyUuidRequestBuilder(sdkConfiguration); } /** - * Get an employee's pay stubs - * - *

    Get an employee's pay stubs. + * Get all payroll blockers for a company * - *

    Results are returned in reverse chronological order (newest first). + *

    Returns a list of reasons that prevent the company from running payrolls. See the [Payroll Blockers + * guide](doc:payroll-blockers) for a complete list of reasons. The list is empty if there are no + * payroll blockers. * - *

    scope: `pay_stubs:read` + *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param employeeId The UUID of the employee - * @return {@code CompletableFuture} - The async response + * @param companyUuid The UUID of the company + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getPayStubs(String employeeId) { - return getPayStubs( - Optional.empty(), employeeId, Optional.empty(), - Optional.empty()); + public CompletableFuture getBlockers(String companyUuid) { + return getBlockers(Optional.empty(), companyUuid); } /** - * Get an employee's pay stubs - * - *

    Get an employee's pay stubs. + * Get all payroll blockers for a company * - *

    Results are returned in reverse chronological order (newest first). + *

    Returns a list of reasons that prevent the company from running payrolls. See the [Payroll Blockers + * guide](doc:payroll-blockers) for a complete list of reasons. The list is empty if there are no + * payroll blockers. * - *

    scope: `pay_stubs:read` + *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param employeeId The UUID of the employee - * @param page The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - * @param per Number of objects per page. For majority of endpoints will default to 25 - * @return {@code CompletableFuture} - The async response + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getPayStubs( - Optional xGustoAPIVersion, String employeeId, - Optional page, Optional per) { - GetV1EmployeesEmployeeUuidPayStubsRequest request = - GetV1EmployeesEmployeeUuidPayStubsRequest + public CompletableFuture getBlockers(Optional xGustoAPIVersion, String companyUuid) { + GetV1CompaniesPayrollBlockersCompanyUuidRequest request = + GetV1CompaniesPayrollBlockersCompanyUuidRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .employeeId(employeeId) - .page(page) - .per(per) + .companyUuid(companyUuid) .build(); - AsyncRequestOperation operation - = new GetV1EmployeesEmployeeUuidPayStubs.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new GetV1CompaniesPayrollBlockersCompanyUuid.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Generate printable payroll checks (pdf) + * Skip a payroll * - *

    This endpoint initiates the generation of employee checks for the payroll specified by payroll_uuid. - * A generation status and corresponding request_uuid will be returned. Use the generated document GET - * endpoint with document_type: `printable_payroll_checks` and request_uuid to poll the check - * generation process and retrieve the generated check URL upon completion. + *

    Submits a $0 payroll for employees associated with the pay schedule to skip payroll. This submission + * is asynchronous and a successful request responds with a 202 HTTP status. Upon success, the payroll + * is transitioned to the `processed` state. * - *

    scope: `generated_documents:write` + *

    If the company is blocked from running payroll due to issues like incomplete setup, missing + * information or other compliance issues, the response will be 422 Unprocessable Entity with a + * categorization of the blockers as described in the error responses. + * + *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksRequestBuilder generatePrintableChecks() { - return new PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksRequestBuilder(sdkConfiguration); + public PostCompaniesPayrollSkipCompanyUuidRequestBuilder skip() { + return new PostCompaniesPayrollSkipCompanyUuidRequestBuilder(sdkConfiguration); } /** - * Generate printable payroll checks (pdf) + * Skip a payroll * - *

    This endpoint initiates the generation of employee checks for the payroll specified by payroll_uuid. - * A generation status and corresponding request_uuid will be returned. Use the generated document GET - * endpoint with document_type: `printable_payroll_checks` and request_uuid to poll the check - * generation process and retrieve the generated check URL upon completion. + *

    Submits a $0 payroll for employees associated with the pay schedule to skip payroll. This submission + * is asynchronous and a successful request responds with a 202 HTTP status. Upon success, the payroll + * is transitioned to the `processed` state. * - *

    scope: `generated_documents:write` + *

    If the company is blocked from running payroll due to issues like incomplete setup, missing + * information or other compliance issues, the response will be 422 Unprocessable Entity with a + * categorization of the blockers as described in the error responses. + * + *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param payrollUuid The UUID of the payroll - * @param printablePayrollChecksBody Request body for generating printable payroll checks. - * @return {@code CompletableFuture} - The async response + * @param companyUuid The UUID of the company + * @param requestBody + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture generatePrintableChecks(String payrollUuid, PrintablePayrollChecksBody printablePayrollChecksBody) { - return generatePrintableChecks(Optional.empty(), payrollUuid, printablePayrollChecksBody); + public CompletableFuture skip(String companyUuid, PostCompaniesPayrollSkipCompanyUuidRequestBody requestBody) { + return skip(Optional.empty(), companyUuid, requestBody); } /** - * Generate printable payroll checks (pdf) + * Skip a payroll * - *

    This endpoint initiates the generation of employee checks for the payroll specified by payroll_uuid. - * A generation status and corresponding request_uuid will be returned. Use the generated document GET - * endpoint with document_type: `printable_payroll_checks` and request_uuid to poll the check - * generation process and retrieve the generated check URL upon completion. + *

    Submits a $0 payroll for employees associated with the pay schedule to skip payroll. This submission + * is asynchronous and a successful request responds with a 202 HTTP status. Upon success, the payroll + * is transitioned to the `processed` state. * - *

    scope: `generated_documents:write` + *

    If the company is blocked from running payroll due to issues like incomplete setup, missing + * information or other compliance issues, the response will be 422 Unprocessable Entity with a + * categorization of the blockers as described in the error responses. + * + *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param payrollUuid The UUID of the payroll - * @param printablePayrollChecksBody Request body for generating printable payroll checks. - * @return {@code CompletableFuture} - The async response + * @param companyUuid The UUID of the company + * @param requestBody + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture generatePrintableChecks( - Optional xGustoAPIVersion, String payrollUuid, - PrintablePayrollChecksBody printablePayrollChecksBody) { - PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksRequest request = - PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksRequest + public CompletableFuture skip( + Optional xGustoAPIVersion, String companyUuid, + PostCompaniesPayrollSkipCompanyUuidRequestBody requestBody) { + PostCompaniesPayrollSkipCompanyUuidRequest request = + PostCompaniesPayrollSkipCompanyUuidRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .payrollUuid(payrollUuid) - .printablePayrollChecksBody(printablePayrollChecksBody) + .companyUuid(companyUuid) + .requestBody(requestBody) .build(); - AsyncRequestOperation operation - = new PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecks.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new PostCompaniesPayrollSkipCompanyUuid.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Get partner disbursements for a payroll + * Submit payroll * - *

    Get partner disbursements for a specific payroll. + *

    Submits an unprocessed payroll to be calculated and run. This submission is asynchronous and a + * successful request responds with a 202 HTTP status. Upon success, transitions the payroll to the + * `processed` state. * - *

    scope: `partner_disbursements:read` + *

    You should poll to ensure that payroll is processed successfully, as async errors only occur after + * async processing is complete. + * + *

    If the company is blocked from running payroll due to issues like incomplete setup, missing + * information or other compliance issues, the response will be 422 Unprocessable Entity with a + * categorization of the blockers as described in the error responses. + * + *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder getV1CompaniesCompanyIdPayrollsIdPartnerDisbursements() { - return new GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder(sdkConfiguration); + public PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitRequestBuilder submit() { + return new PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitRequestBuilder(sdkConfiguration); } /** - * Get partner disbursements for a payroll + * Submit payroll * - *

    Get partner disbursements for a specific payroll. + *

    Submits an unprocessed payroll to be calculated and run. This submission is asynchronous and a + * successful request responds with a 202 HTTP status. Upon success, transitions the payroll to the + * `processed` state. * - *

    scope: `partner_disbursements:read` + *

    You should poll to ensure that payroll is processed successfully, as async errors only occur after + * async processing is complete. + * + *

    If the company is blocked from running payroll due to issues like incomplete setup, missing + * information or other compliance issues, the response will be 422 Unprocessable Entity with a + * categorization of the blockers as described in the error responses. + * + *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param companyId The UUID of the company - * @param id The UUID of the payroll - * @return {@code CompletableFuture} - The async response + * @param payrollId The UUID of the payroll + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getV1CompaniesCompanyIdPayrollsIdPartnerDisbursements(String companyId, String id) { - return getV1CompaniesCompanyIdPayrollsIdPartnerDisbursements(companyId, id, Optional.empty()); + public CompletableFuture submit(String companyId, String payrollId) { + return submit( + Optional.empty(), companyId, payrollId, + Optional.empty()); } /** - * Get partner disbursements for a payroll + * Submit payroll * - *

    Get partner disbursements for a specific payroll. + *

    Submits an unprocessed payroll to be calculated and run. This submission is asynchronous and a + * successful request responds with a 202 HTTP status. Upon success, transitions the payroll to the + * `processed` state. * - *

    scope: `partner_disbursements:read` + *

    You should poll to ensure that payroll is processed successfully, as async errors only occur after + * async processing is complete. + * + *

    If the company is blocked from running payroll due to issues like incomplete setup, missing + * information or other compliance issues, the response will be 422 Unprocessable Entity with a + * categorization of the blockers as described in the error responses. + * + *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company - * @param id The UUID of the payroll * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @return {@code CompletableFuture} - The async response + * @param companyId The UUID of the company + * @param payrollId The UUID of the payroll + * @param requestBody + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getV1CompaniesCompanyIdPayrollsIdPartnerDisbursements( - String companyId, String id, - Optional xGustoAPIVersion) { - GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest request = - GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest + public CompletableFuture submit( + Optional xGustoAPIVersion, String companyId, + String payrollId, Optional requestBody) { + PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitRequest request = + PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitRequest .builder() - .companyId(companyId) - .id(id) .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) + .payrollId(payrollId) + .requestBody(requestBody) .build(); - AsyncRequestOperation operation - = new GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursements.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new PutV1CompaniesCompanyIdPayrollsPayrollIdSubmit.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Update partner disbursements for a payroll + * Calculate gross up for a payroll * - *

    Update partner disbursements for a specific payroll. + *

    Calculates gross up earnings for an employee's payroll, given net earnings. This endpoint is only + * applicable to off-cycle unprocessed payrolls. * - *

    scope: `partner_disbursements:write` + *

    The gross up amount must then be mapped to the corresponding fixed compensation earning type to get + * the correct payroll amount. For example, for bonus off-cycles, the gross up amount should be set + * with the Bonus earning type in the payroll `fixed_compensations` field. + * + *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The async call builder */ - public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder patchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements() { - return new PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder(sdkConfiguration); + public PostPayrollsGrossUpPayrollUuidRequestBuilder calculateGrossUp() { + return new PostPayrollsGrossUpPayrollUuidRequestBuilder(sdkConfiguration); } /** - * Update partner disbursements for a payroll + * Calculate gross up for a payroll * - *

    Update partner disbursements for a specific payroll. + *

    Calculates gross up earnings for an employee's payroll, given net earnings. This endpoint is only + * applicable to off-cycle unprocessed payrolls. * - *

    scope: `partner_disbursements:write` + *

    The gross up amount must then be mapped to the corresponding fixed compensation earning type to get + * the correct payroll amount. For example, for bonus off-cycles, the gross up amount should be set + * with the Bonus earning type in the payroll `fixed_compensations` field. + * + *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company - * @param id The UUID of the payroll - * @return {@code CompletableFuture} - The async response + * @param payrollUuid The UUID of the payroll + * @param payrollGrossUpRequest Request body for calculating gross up amount + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture patchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements(String companyId, String id) { - return patchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements( - companyId, id, Optional.empty(), - Optional.empty()); + public CompletableFuture calculateGrossUp(String payrollUuid, PayrollGrossUpRequest payrollGrossUpRequest) { + return calculateGrossUp(Optional.empty(), payrollUuid, payrollGrossUpRequest); } /** - * Update partner disbursements for a payroll + * Calculate gross up for a payroll * - *

    Update partner disbursements for a specific payroll. + *

    Calculates gross up earnings for an employee's payroll, given net earnings. This endpoint is only + * applicable to off-cycle unprocessed payrolls. * - *

    scope: `partner_disbursements:write` + *

    The gross up amount must then be mapped to the corresponding fixed compensation earning type to get + * the correct payroll amount. For example, for bonus off-cycles, the gross up amount should be set + * with the Bonus earning type in the payroll `fixed_compensations` field. + * + *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company - * @param id The UUID of the payroll * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param requestBody - * @return {@code CompletableFuture} - The async response + * @param payrollUuid The UUID of the payroll + * @param payrollGrossUpRequest Request body for calculating gross up amount + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture patchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements( - String companyId, String id, - Optional xGustoAPIVersion, Optional requestBody) { - PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest request = - PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest + public CompletableFuture calculateGrossUp( + Optional xGustoAPIVersion, String payrollUuid, + PayrollGrossUpRequest payrollGrossUpRequest) { + PostPayrollsGrossUpPayrollUuidRequest request = + PostPayrollsGrossUpPayrollUuidRequest .builder() - .companyId(companyId) - .id(id) .xGustoAPIVersion(xGustoAPIVersion) - .requestBody(requestBody) + .payrollUuid(payrollUuid) + .payrollGrossUpRequest(payrollGrossUpRequest) .build(); - AsyncRequestOperation operation - = new PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new PostPayrollsGrossUpPayrollUuid.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncPeopleBatches.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncPeopleBatches.java index b0b6569c4..f17f1c642 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncPeopleBatches.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncPeopleBatches.java @@ -75,7 +75,7 @@ public PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder postV1CompaniesCompan * @return {@code CompletableFuture} - The async response */ public CompletableFuture postV1CompaniesCompanyIdPeopleBatches(String companyId, PostV1CompaniesCompanyIdPeopleBatchesRequestBody requestBody) { - return postV1CompaniesCompanyIdPeopleBatches(companyId, Optional.empty(), requestBody); + return postV1CompaniesCompanyIdPeopleBatches(Optional.empty(), companyId, requestBody); } /** @@ -89,19 +89,19 @@ public CompletableFuture postV1Co * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company * @param requestBody * @return {@code CompletableFuture} - The async response */ public CompletableFuture postV1CompaniesCompanyIdPeopleBatches( - String companyId, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String companyId, PostV1CompaniesCompanyIdPeopleBatchesRequestBody requestBody) { PostV1CompaniesCompanyIdPeopleBatchesRequest request = PostV1CompaniesCompanyIdPeopleBatchesRequest .builder() - .companyId(companyId) .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) .requestBody(requestBody) .build(); AsyncRequestOperation operation @@ -143,7 +143,7 @@ public GetV1PeopleBatchesPeopleBatchUuidRequestBuilder getV1PeopleBatchesPeopleB * @return {@code CompletableFuture} - The async response */ public CompletableFuture getV1PeopleBatchesPeopleBatchUuid(String peopleBatchUuid) { - return getV1PeopleBatchesPeopleBatchUuid(peopleBatchUuid, Optional.empty()); + return getV1PeopleBatchesPeopleBatchUuid(Optional.empty(), peopleBatchUuid); } /** @@ -157,16 +157,16 @@ public CompletableFuture getV1PeopleB * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param peopleBatchUuid The UUID of the people batch * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param peopleBatchUuid The UUID of the people batch * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getV1PeopleBatchesPeopleBatchUuid(String peopleBatchUuid, Optional xGustoAPIVersion) { + public CompletableFuture getV1PeopleBatchesPeopleBatchUuid(Optional xGustoAPIVersion, String peopleBatchUuid) { GetV1PeopleBatchesPeopleBatchUuidRequest request = GetV1PeopleBatchesPeopleBatchUuidRequest .builder() - .peopleBatchUuid(peopleBatchUuid) .xGustoAPIVersion(xGustoAPIVersion) + .peopleBatchUuid(peopleBatchUuid) .build(); AsyncRequestOperation operation = new GetV1PeopleBatchesPeopleBatchUuid.Async(sdkConfiguration, _headers); diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncReports.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncReports.java index 7c738a6e5..00599d322 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncReports.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncReports.java @@ -5,16 +5,23 @@ import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.AsyncRequestOperation; +import com.gusto.embedded_api_v_2025_11_15.models.components.BulkReportBody; import com.gusto.embedded_api_v_2025_11_15.models.components.CreateReportBody; import com.gusto.embedded_api_v_2025_11_15.models.components.GeneralLedgerReportBody; import com.gusto.embedded_api_v_2025_11_15.models.operations.GetCompaniesCompanyUuidReportTemplatesReportTypeHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2025_11_15.models.operations.GetCompaniesCompanyUuidReportTemplatesReportTypeRequest; import com.gusto.embedded_api_v_2025_11_15.models.operations.GetReportsRequestUuidHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2025_11_15.models.operations.GetReportsRequestUuidRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1BulkReportsRequestUuidRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1BulkReportsRequestUuidSecurity; import com.gusto.embedded_api_v_2025_11_15.models.operations.PostCompaniesCompanyUuidReportsHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2025_11_15.models.operations.PostCompaniesCompanyUuidReportsRequest; import com.gusto.embedded_api_v_2025_11_15.models.operations.PostPayrollsPayrollUuidReportsGeneralLedgerHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2025_11_15.models.operations.PostPayrollsPayrollUuidReportsGeneralLedgerRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1BulkReportsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1BulkReportsRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1BulkReportsSecurity; import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequest; import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequestBody; @@ -22,16 +29,22 @@ import com.gusto.embedded_api_v_2025_11_15.models.operations.async.GetCompaniesCompanyUuidReportTemplatesReportTypeResponse; import com.gusto.embedded_api_v_2025_11_15.models.operations.async.GetReportsRequestUuidRequestBuilder; import com.gusto.embedded_api_v_2025_11_15.models.operations.async.GetReportsRequestUuidResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.async.GetV1BulkReportsRequestUuidRequestBuilder; +import com.gusto.embedded_api_v_2025_11_15.models.operations.async.GetV1BulkReportsRequestUuidResponse; import com.gusto.embedded_api_v_2025_11_15.models.operations.async.PostCompaniesCompanyUuidReportsRequestBuilder; import com.gusto.embedded_api_v_2025_11_15.models.operations.async.PostCompaniesCompanyUuidReportsResponse; import com.gusto.embedded_api_v_2025_11_15.models.operations.async.PostPayrollsPayrollUuidReportsGeneralLedgerRequestBuilder; import com.gusto.embedded_api_v_2025_11_15.models.operations.async.PostPayrollsPayrollUuidReportsGeneralLedgerResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.async.PostV1BulkReportsRequestBuilder; +import com.gusto.embedded_api_v_2025_11_15.models.operations.async.PostV1BulkReportsResponse; import com.gusto.embedded_api_v_2025_11_15.models.operations.async.PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequestBuilder; import com.gusto.embedded_api_v_2025_11_15.models.operations.async.PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageResponse; import com.gusto.embedded_api_v_2025_11_15.operations.GetCompaniesCompanyUuidReportTemplatesReportType; import com.gusto.embedded_api_v_2025_11_15.operations.GetReportsRequestUuid; +import com.gusto.embedded_api_v_2025_11_15.operations.GetV1BulkReportsRequestUuid; import com.gusto.embedded_api_v_2025_11_15.operations.PostCompaniesCompanyUuidReports; import com.gusto.embedded_api_v_2025_11_15.operations.PostPayrollsPayrollUuidReportsGeneralLedger; +import com.gusto.embedded_api_v_2025_11_15.operations.PostV1BulkReports; import com.gusto.embedded_api_v_2025_11_15.operations.PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage; import com.gusto.embedded_api_v_2025_11_15.utils.Headers; import java.lang.String; @@ -59,6 +72,280 @@ public Reports sync() { } + /** + * Create a bulk report batch + * + *

    Triggers asynchronous generation of up to 25 reports across companies the partner is mapped to. Each + * `batch` item is a `custom_report` (same parameters as [create a custom + * report](https://docs.gusto.com/embedded-payroll/reference/post-companies-company_uuid-reports)) or a + * `general_ledger` report (same parameters as [create a general ledger + * report](https://docs.gusto.com/embedded-payroll/reference/post-payrolls-payroll_uuid-reports-general_ledger)), + * keyed by `company_uuid` and `report_type`. Items are validated synchronously; if any is invalid, the + * entire batch is rejected. + * + *

    Poll the [bulk report GET + * endpoint](https://docs.gusto.com/embedded-payroll/reference/get-v1-bulk_reports-request_uuid) with + * the returned `uuid` for status and the report URL, which is valid for 10 minutes. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `company_reports:write` + * + * @return The async call builder + */ + public PostV1BulkReportsRequestBuilder postV1BulkReports() { + return new PostV1BulkReportsRequestBuilder(sdkConfiguration); + } + + /** + * Create a bulk report batch + * + *

    Triggers asynchronous generation of up to 25 reports across companies the partner is mapped to. Each + * `batch` item is a `custom_report` (same parameters as [create a custom + * report](https://docs.gusto.com/embedded-payroll/reference/post-companies-company_uuid-reports)) or a + * `general_ledger` report (same parameters as [create a general ledger + * report](https://docs.gusto.com/embedded-payroll/reference/post-payrolls-payroll_uuid-reports-general_ledger)), + * keyed by `company_uuid` and `report_type`. Items are validated synchronously; if any is invalid, the + * entire batch is rejected. + * + *

    Poll the [bulk report GET + * endpoint](https://docs.gusto.com/embedded-payroll/reference/get-v1-bulk_reports-request_uuid) with + * the returned `uuid` for status and the report URL, which is valid for 10 minutes. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `company_reports:write` + * + * @param security The security details to use for authentication. + * @param bulkReportBody Each `batch` item is a `custom_report` or a `general_ledger` report. + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture postV1BulkReports(PostV1BulkReportsSecurity security, BulkReportBody bulkReportBody) { + return postV1BulkReports(security, Optional.empty(), bulkReportBody); + } + + /** + * Create a bulk report batch + * + *

    Triggers asynchronous generation of up to 25 reports across companies the partner is mapped to. Each + * `batch` item is a `custom_report` (same parameters as [create a custom + * report](https://docs.gusto.com/embedded-payroll/reference/post-companies-company_uuid-reports)) or a + * `general_ledger` report (same parameters as [create a general ledger + * report](https://docs.gusto.com/embedded-payroll/reference/post-payrolls-payroll_uuid-reports-general_ledger)), + * keyed by `company_uuid` and `report_type`. Items are validated synchronously; if any is invalid, the + * entire batch is rejected. + * + *

    Poll the [bulk report GET + * endpoint](https://docs.gusto.com/embedded-payroll/reference/get-v1-bulk_reports-request_uuid) with + * the returned `uuid` for status and the report URL, which is valid for 10 minutes. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `company_reports:write` + * + * @param security The security details to use for authentication. + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param bulkReportBody Each `batch` item is a `custom_report` or a `general_ledger` report. + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture postV1BulkReports( + PostV1BulkReportsSecurity security, Optional xGustoAPIVersion, + BulkReportBody bulkReportBody) { + PostV1BulkReportsRequest request = + PostV1BulkReportsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .bulkReportBody(bulkReportBody) + .build(); + AsyncRequestOperation operation + = new PostV1BulkReports.Async(sdkConfiguration, security, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Get a bulk report batch + * + *

    Get a bulk report batch's status and results given the `request_uuid`. While in progress, only batch + * metadata is returned; once complete, it also includes a signed `report_url` (a zip of all generated + * reports, valid for 10 minutes) and a per-company breakdown. + * + *

    Reports containing PHI are inaccessible with `company_reports:read:tier_2_only` data scope. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `company_reports:read` + * + * @return The async call builder + */ + public GetV1BulkReportsRequestUuidRequestBuilder getV1BulkReportsRequestUuid() { + return new GetV1BulkReportsRequestUuidRequestBuilder(sdkConfiguration); + } + + /** + * Get a bulk report batch + * + *

    Get a bulk report batch's status and results given the `request_uuid`. While in progress, only batch + * metadata is returned; once complete, it also includes a signed `report_url` (a zip of all generated + * reports, valid for 10 minutes) and a per-company breakdown. + * + *

    Reports containing PHI are inaccessible with `company_reports:read:tier_2_only` data scope. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `company_reports:read` + * + * @param security The security details to use for authentication. + * @param requestUuid The UUID of the bulk report batch. + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getV1BulkReportsRequestUuid(GetV1BulkReportsRequestUuidSecurity security, String requestUuid) { + return getV1BulkReportsRequestUuid(security, Optional.empty(), requestUuid); + } + + /** + * Get a bulk report batch + * + *

    Get a bulk report batch's status and results given the `request_uuid`. While in progress, only batch + * metadata is returned; once complete, it also includes a signed `report_url` (a zip of all generated + * reports, valid for 10 minutes) and a per-company breakdown. + * + *

    Reports containing PHI are inaccessible with `company_reports:read:tier_2_only` data scope. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `company_reports:read` + * + * @param security The security details to use for authentication. + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param requestUuid The UUID of the bulk report batch. + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getV1BulkReportsRequestUuid( + GetV1BulkReportsRequestUuidSecurity security, Optional xGustoAPIVersion, + String requestUuid) { + GetV1BulkReportsRequestUuidRequest request = + GetV1BulkReportsRequestUuidRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .requestUuid(requestUuid) + .build(); + AsyncRequestOperation operation + = new GetV1BulkReportsRequestUuid.Async(sdkConfiguration, security, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Create an employees annual FICA wage report + * + *

    Generates a report containing annual FICA (Federal Insurance Contributions Act) wage data for all + * employees in a company over a specified year range. + * + *

    This report provides detailed wage information subject to Social Security and Medicare taxes, useful + * for benefits integrations that need to verify employee earnings for compliance and benefit + * calculations. + * + *

    The report is generated asynchronously. After making this request, you will receive a `request_uuid` + * which can be used to poll the [Get a report](ref:get-v1-reports-request_uuid) endpoint to check the + * status and retrieve the report when complete. + * + *

    scope: `company_reports:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequestBuilder postV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage() { + return new PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequestBuilder(sdkConfiguration); + } + + /** + * Create an employees annual FICA wage report + * + *

    Generates a report containing annual FICA (Federal Insurance Contributions Act) wage data for all + * employees in a company over a specified year range. + * + *

    This report provides detailed wage information subject to Social Security and Medicare taxes, useful + * for benefits integrations that need to verify employee earnings for compliance and benefit + * calculations. + * + *

    The report is generated asynchronously. After making this request, you will receive a `request_uuid` + * which can be used to poll the [Get a report](ref:get-v1-reports-request_uuid) endpoint to check the + * status and retrieve the report when complete. + * + *

    scope: `company_reports:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param companyId The UUID of the company + * @param requestBody + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture postV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage(String companyId, PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequestBody requestBody) { + return postV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage(Optional.empty(), companyId, requestBody); + } + + /** + * Create an employees annual FICA wage report + * + *

    Generates a report containing annual FICA (Federal Insurance Contributions Act) wage data for all + * employees in a company over a specified year range. + * + *

    This report provides detailed wage information subject to Social Security and Medicare taxes, useful + * for benefits integrations that need to verify employee earnings for compliance and benefit + * calculations. + * + *

    The report is generated asynchronously. After making this request, you will receive a `request_uuid` + * which can be used to poll the [Get a report](ref:get-v1-reports-request_uuid) endpoint to check the + * status and retrieve the report when complete. + * + *

    scope: `company_reports:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company + * @param requestBody + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture postV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage( + Optional xGustoAPIVersion, String companyId, + PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequestBody requestBody) { + PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequest request = + PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) + .requestBody(requestBody) + .build(); + AsyncRequestOperation operation + = new PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + /** * Create a custom report * @@ -350,94 +637,4 @@ public CompletableFutureGenerates a report containing annual FICA (Federal Insurance Contributions Act) wage data for all - * employees in a company over a specified year range. - * - *

    This report provides detailed wage information subject to Social Security and Medicare taxes, useful - * for benefits integrations that need to verify employee earnings for compliance and benefit - * calculations. - * - *

    The report is generated asynchronously. After making this request, you will receive a `request_uuid` - * which can be used to poll the [Get a report](ref:get-v1-reports-request_uuid) endpoint to check the - * status and retrieve the report when complete. - * - *

    scope: `company_reports:write` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The async call builder - */ - public PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequestBuilder postV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage() { - return new PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequestBuilder(sdkConfiguration); - } - - /** - * Create an employees annual FICA wage report - * - *

    Generates a report containing annual FICA (Federal Insurance Contributions Act) wage data for all - * employees in a company over a specified year range. - * - *

    This report provides detailed wage information subject to Social Security and Medicare taxes, useful - * for benefits integrations that need to verify employee earnings for compliance and benefit - * calculations. - * - *

    The report is generated asynchronously. After making this request, you will receive a `request_uuid` - * which can be used to poll the [Get a report](ref:get-v1-reports-request_uuid) endpoint to check the - * status and retrieve the report when complete. - * - *

    scope: `company_reports:write` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param companyId The UUID of the company - * @param requestBody - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture postV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage(String companyId, PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequestBody requestBody) { - return postV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage(Optional.empty(), companyId, requestBody); - } - - /** - * Create an employees annual FICA wage report - * - *

    Generates a report containing annual FICA (Federal Insurance Contributions Act) wage data for all - * employees in a company over a specified year range. - * - *

    This report provides detailed wage information subject to Social Security and Medicare taxes, useful - * for benefits integrations that need to verify employee earnings for compliance and benefit - * calculations. - * - *

    The report is generated asynchronously. After making this request, you will receive a `request_uuid` - * which can be used to poll the [Get a report](ref:get-v1-reports-request_uuid) endpoint to check the - * status and retrieve the report when complete. - * - *

    scope: `company_reports:write` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyId The UUID of the company - * @param requestBody - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture postV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage( - Optional xGustoAPIVersion, String companyId, - PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequestBody requestBody) { - PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequest request = - PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequest - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .companyId(companyId) - .requestBody(requestBody) - .build(); - AsyncRequestOperation operation - = new PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage.Async(sdkConfiguration, _headers); - return operation.doRequest(request) - .thenCompose(operation::handleResponse); - } - } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncReverseWireTransactions.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncReverseWireTransactions.java new file mode 100644 index 000000000..3ba1cfb1c --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncReverseWireTransactions.java @@ -0,0 +1,76 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15; + +import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.AsyncRequestOperation; + +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetReverseWireTransactionsRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.async.GetReverseWireTransactionsRequestBuilder; +import com.gusto.embedded_api_v_2025_11_15.models.operations.async.GetReverseWireTransactionsResponse; +import com.gusto.embedded_api_v_2025_11_15.operations.GetReverseWireTransactions; +import com.gusto.embedded_api_v_2025_11_15.utils.Headers; +import java.util.concurrent.CompletableFuture; + + +public class AsyncReverseWireTransactions { + private static final Headers _headers = Headers.EMPTY; + private final SDKConfiguration sdkConfiguration; + private final ReverseWireTransactions syncSDK; + + AsyncReverseWireTransactions(ReverseWireTransactions syncSDK, SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + this.syncSDK = syncSDK; + } + + /** + * Switches to the sync SDK. + * + * @return The sync SDK + */ + public ReverseWireTransactions sync() { + return syncSDK; + } + + + /** + * Get all reverse wire transactions for a company + * + *

    Returns a paginated list of reverse wire (drawdown) transactions for a company. Reverse wires are + * debit transactions initiated by Gusto to pull funds from a partner's bank account to cover payroll + * or contractor payment obligations. Pagination is returned via the `x-page`, `x-per-page`, + * `x-total-count`, and `x-total-pages` response headers. + * + *

    scope: `reverse_wire_transactions:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public GetReverseWireTransactionsRequestBuilder getReverseWireTransactions() { + return new GetReverseWireTransactionsRequestBuilder(sdkConfiguration); + } + + /** + * Get all reverse wire transactions for a company + * + *

    Returns a paginated list of reverse wire (drawdown) transactions for a company. Reverse wires are + * debit transactions initiated by Gusto to pull funds from a partner's bank account to cover payroll + * or contractor payment obligations. Pagination is returned via the `x-page`, `x-per-page`, + * `x-total-count`, and `x-total-pages` response headers. + * + *

    scope: `reverse_wire_transactions:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param request The request object containing all the parameters for the API call. + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getReverseWireTransactions(GetReverseWireTransactionsRequest request) { + AsyncRequestOperation operation + = new GetReverseWireTransactions.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncSignatories.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncSignatories.java index 88595d8de..7e5f0e637 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncSignatories.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncSignatories.java @@ -93,7 +93,7 @@ public GetV1CompaniesCompanyUuidSignatoriesRequestBuilder list() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture list(String companyUuid) { - return list(companyUuid, Optional.empty()); + return list(Optional.empty(), companyUuid); } /** @@ -108,16 +108,16 @@ public CompletableFuture list(Stri * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company * @return {@code CompletableFuture} - The async response */ - public CompletableFuture list(String companyUuid, Optional xGustoAPIVersion) { + public CompletableFuture list(Optional xGustoAPIVersion, String companyUuid) { GetV1CompaniesCompanyUuidSignatoriesRequest request = GetV1CompaniesCompanyUuidSignatoriesRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) .build(); AsyncRequestOperation operation = new GetV1CompaniesCompanyUuidSignatories.Async(sdkConfiguration, _headers); @@ -183,7 +183,7 @@ public PostV1CompanySignatoriesRequestBuilder create() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture create(String companyUuid, SignatoryCreateRequest signatoryCreateRequest) { - return create(companyUuid, Optional.empty(), signatoryCreateRequest); + return create(Optional.empty(), companyUuid, signatoryCreateRequest); } /** @@ -209,19 +209,19 @@ public CompletableFuture create(String company * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company * @param signatoryCreateRequest Request body for creating a signatory with complete information. All listed required fields must be provided. * @return {@code CompletableFuture} - The async response */ public CompletableFuture create( - String companyUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String companyUuid, SignatoryCreateRequest signatoryCreateRequest) { PostV1CompanySignatoriesRequest request = PostV1CompanySignatoriesRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) .signatoryCreateRequest(signatoryCreateRequest) .build(); AsyncRequestOperation operation @@ -272,7 +272,7 @@ public PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder invite() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture invite(String companyUuid, SignatoryInviteRequest signatoryInviteRequest) { - return invite(companyUuid, Optional.empty(), signatoryInviteRequest); + return invite(Optional.empty(), companyUuid, signatoryInviteRequest); } /** @@ -290,19 +290,19 @@ public CompletableFuture in * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company * @param signatoryInviteRequest Request body for inviting a signatory. * @return {@code CompletableFuture} - The async response */ public CompletableFuture invite( - String companyUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String companyUuid, SignatoryInviteRequest signatoryInviteRequest) { PostV1CompaniesCompanyUuidSignatoriesInviteRequest request = PostV1CompaniesCompanyUuidSignatoriesInviteRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) .signatoryInviteRequest(signatoryInviteRequest) .build(); AsyncRequestOperation operation @@ -359,7 +359,7 @@ public CompletableFutureIf set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyUuid The UUID of the company * @param signatoryUuid The UUID of the signatory - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param signatoryUpdateRequest Request body for updating a signatory. Email cannot be updated. * @return {@code CompletableFuture} - The async response */ public CompletableFuture update( - String companyUuid, String signatoryUuid, - Optional xGustoAPIVersion, SignatoryUpdateRequest signatoryUpdateRequest) { + Optional xGustoAPIVersion, String companyUuid, + String signatoryUuid, SignatoryUpdateRequest signatoryUpdateRequest) { PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest request = PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest .builder() + .xGustoAPIVersion(xGustoAPIVersion) .companyUuid(companyUuid) .signatoryUuid(signatoryUuid) - .xGustoAPIVersion(xGustoAPIVersion) .signatoryUpdateRequest(signatoryUpdateRequest) .build(); AsyncRequestOperation operation @@ -438,7 +438,7 @@ public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder delete * @return {@code CompletableFuture} - The async response */ public CompletableFuture delete(String companyUuid, String signatoryUuid) { - return delete(companyUuid, signatoryUuid, Optional.empty()); + return delete(Optional.empty(), companyUuid, signatoryUuid); } /** @@ -453,20 +453,20 @@ public CompletableFutureIf set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyUuid The UUID of the company * @param signatoryUuid The UUID of the signatory - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @return {@code CompletableFuture} - The async response */ public CompletableFuture delete( - String companyUuid, String signatoryUuid, - Optional xGustoAPIVersion) { + Optional xGustoAPIVersion, String companyUuid, + String signatoryUuid) { DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest request = DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest .builder() + .xGustoAPIVersion(xGustoAPIVersion) .companyUuid(companyUuid) .signatoryUuid(signatoryUuid) - .xGustoAPIVersion(xGustoAPIVersion) .build(); AsyncRequestOperation operation = new DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuid.Async(sdkConfiguration, _headers); diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncTaxPayments.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncTaxPayments.java new file mode 100644 index 000000000..8c16395ff --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncTaxPayments.java @@ -0,0 +1,143 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15; + +import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.AsyncRequestOperation; + +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetTaxPaymentHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetTaxPaymentRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetTaxPaymentsRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.async.GetTaxPaymentRequestBuilder; +import com.gusto.embedded_api_v_2025_11_15.models.operations.async.GetTaxPaymentResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.async.GetTaxPaymentsRequestBuilder; +import com.gusto.embedded_api_v_2025_11_15.models.operations.async.GetTaxPaymentsResponse; +import com.gusto.embedded_api_v_2025_11_15.operations.GetTaxPayment; +import com.gusto.embedded_api_v_2025_11_15.operations.GetTaxPayments; +import com.gusto.embedded_api_v_2025_11_15.utils.Headers; +import java.lang.String; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; + + +public class AsyncTaxPayments { + private static final Headers _headers = Headers.EMPTY; + private final SDKConfiguration sdkConfiguration; + private final TaxPayments syncSDK; + + AsyncTaxPayments(TaxPayments syncSDK, SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + this.syncSDK = syncSDK; + } + + /** + * Switches to the sync SDK. + * + * @return The sync SDK + */ + public TaxPayments sync() { + return syncSDK; + } + + + /** + * Get all tax payments for a company + * + *

    Fetches all tax payments Gusto has made (or scheduled) to tax agencies on behalf of a company. + * + *

    scope: `tax_payments:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public GetTaxPaymentsRequestBuilder getTaxPayments() { + return new GetTaxPaymentsRequestBuilder(sdkConfiguration); + } + + /** + * Get all tax payments for a company + * + *

    Fetches all tax payments Gusto has made (or scheduled) to tax agencies on behalf of a company. + * + *

    scope: `tax_payments:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param request The request object containing all the parameters for the API call. + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getTaxPayments(GetTaxPaymentsRequest request) { + AsyncRequestOperation operation + = new GetTaxPayments.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Get a tax payment for a company + * + *

    Fetches a single tax payment by UUID, including the payroll tax liabilities that make up the + * payment. + * + *

    scope: `tax_payments:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public GetTaxPaymentRequestBuilder getTaxPayment() { + return new GetTaxPaymentRequestBuilder(sdkConfiguration); + } + + /** + * Get a tax payment for a company + * + *

    Fetches a single tax payment by UUID, including the payroll tax liabilities that make up the + * payment. + * + *

    scope: `tax_payments:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param companyUuid The UUID of the company + * @param uuid The UUID of the tax payment + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getTaxPayment(String companyUuid, String uuid) { + return getTaxPayment(Optional.empty(), companyUuid, uuid); + } + + /** + * Get a tax payment for a company + * + *

    Fetches a single tax payment by UUID, including the payroll tax liabilities that make up the + * payment. + * + *

    scope: `tax_payments:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company + * @param uuid The UUID of the tax payment + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getTaxPayment( + Optional xGustoAPIVersion, String companyUuid, + String uuid) { + GetTaxPaymentRequest request = + GetTaxPaymentRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) + .uuid(uuid) + .build(); + AsyncRequestOperation operation + = new GetTaxPayment.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncTaxRequirements.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncTaxRequirements.java index 750a1973a..1e4737a14 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncTaxRequirements.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncTaxRequirements.java @@ -48,6 +48,73 @@ public TaxRequirements sync() { } + /** + * Get all tax requirements for a company + * + *

    Retrieves all states for which a company has tax requirements, along with a boolean indicating + * whether tax setup + * is complete for each state. Use this to determine which states still need tax setup during company + * onboarding. + * + *

    scope: `company_tax_requirements:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder getAll() { + return new GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder(sdkConfiguration); + } + + /** + * Get all tax requirements for a company + * + *

    Retrieves all states for which a company has tax requirements, along with a boolean indicating + * whether tax setup + * is complete for each state. Use this to determine which states still need tax setup during company + * onboarding. + * + *

    scope: `company_tax_requirements:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param companyUuid The UUID of the company + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getAll(String companyUuid) { + return getAll(Optional.empty(), companyUuid); + } + + /** + * Get all tax requirements for a company + * + *

    Retrieves all states for which a company has tax requirements, along with a boolean indicating + * whether tax setup + * is complete for each state. Use this to determine which states still need tax setup during company + * onboarding. + * + *

    scope: `company_tax_requirements:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getAll(Optional xGustoAPIVersion, String companyUuid) { + GetV1CompaniesCompanyUuidTaxRequirementsRequest request = + GetV1CompaniesCompanyUuidTaxRequirementsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) + .build(); + AsyncRequestOperation operation + = new GetV1CompaniesCompanyUuidTaxRequirements.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + /** * Get tax requirements for a state * @@ -90,7 +157,7 @@ public GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder get() { */ public CompletableFuture get(String companyUuid, String state) { return get( - companyUuid, state, Optional.empty(), + Optional.empty(), companyUuid, state, Optional.empty()); } @@ -109,21 +176,21 @@ public CompletableFuture * *

    If set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyUuid The UUID of the company * @param state The two-letter state abbreviation - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param scheduling When true, return "new" requirement sets with valid `effective_from` dates that are available to save new effective-dated values. * @return {@code CompletableFuture} - The async response */ public CompletableFuture get( - String companyUuid, String state, - Optional xGustoAPIVersion, Optional scheduling) { + Optional xGustoAPIVersion, String companyUuid, + String state, Optional scheduling) { GetV1CompaniesCompanyUuidTaxRequirementsStateRequest request = GetV1CompaniesCompanyUuidTaxRequirementsStateRequest .builder() + .xGustoAPIVersion(xGustoAPIVersion) .companyUuid(companyUuid) .state(state) - .xGustoAPIVersion(xGustoAPIVersion) .scheduling(scheduling) .build(); AsyncRequestOperation operation @@ -186,7 +253,7 @@ public CompletableFuture String companyUuid, String state, PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody requestBody) { return updateState( - companyUuid, state, Optional.empty(), + Optional.empty(), companyUuid, state, requestBody); } @@ -209,21 +276,21 @@ public CompletableFuture * *

    If set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyUuid The UUID of the company * @param state The two-letter state abbreviation - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param requestBody * @return {@code CompletableFuture} - The async response */ public CompletableFuture updateState( - String companyUuid, String state, - Optional xGustoAPIVersion, PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody requestBody) { + Optional xGustoAPIVersion, String companyUuid, + String state, PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody requestBody) { PutV1CompaniesCompanyUuidTaxRequirementsStateRequest request = PutV1CompaniesCompanyUuidTaxRequirementsStateRequest .builder() + .xGustoAPIVersion(xGustoAPIVersion) .companyUuid(companyUuid) .state(state) - .xGustoAPIVersion(xGustoAPIVersion) .requestBody(requestBody) .build(); AsyncRequestOperation operation @@ -232,71 +299,4 @@ public CompletableFuture .thenCompose(operation::handleResponse); } - - /** - * Get all tax requirements for a company - * - *

    Retrieves all states for which a company has tax requirements, along with a boolean indicating - * whether tax setup - * is complete for each state. Use this to determine which states still need tax setup during company - * onboarding. - * - *

    scope: `company_tax_requirements:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The async call builder - */ - public GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder getAll() { - return new GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder(sdkConfiguration); - } - - /** - * Get all tax requirements for a company - * - *

    Retrieves all states for which a company has tax requirements, along with a boolean indicating - * whether tax setup - * is complete for each state. Use this to determine which states still need tax setup during company - * onboarding. - * - *

    scope: `company_tax_requirements:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param companyUuid The UUID of the company - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture getAll(String companyUuid) { - return getAll(companyUuid, Optional.empty()); - } - - /** - * Get all tax requirements for a company - * - *

    Retrieves all states for which a company has tax requirements, along with a boolean indicating - * whether tax setup - * is complete for each state. Use this to determine which states still need tax setup during company - * onboarding. - * - *

    scope: `company_tax_requirements:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param companyUuid The UUID of the company - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture getAll(String companyUuid, Optional xGustoAPIVersion) { - GetV1CompaniesCompanyUuidTaxRequirementsRequest request = - GetV1CompaniesCompanyUuidTaxRequirementsRequest - .builder() - .companyUuid(companyUuid) - .xGustoAPIVersion(xGustoAPIVersion) - .build(); - AsyncRequestOperation operation - = new GetV1CompaniesCompanyUuidTaxRequirements.Async(sdkConfiguration, _headers); - return operation.doRequest(request) - .thenCompose(operation::handleResponse); - } - } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncTimeOffPolicies.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncTimeOffPolicies.java index 65721c4ec..9b88efef9 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncTimeOffPolicies.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncTimeOffPolicies.java @@ -179,6 +179,127 @@ public CompletableFutureGet all time off policies for a company + * + *

    scope: `time_off_policies:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public GetV1CompaniesCompanyUuidTimeOffPoliciesRequestBuilder getAll() { + return new GetV1CompaniesCompanyUuidTimeOffPoliciesRequestBuilder(sdkConfiguration); + } + + /** + * Get all time off policies for a company + * + *

    Get all time off policies for a company + * + *

    scope: `time_off_policies:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param companyUuid The UUID of the company + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getAll(String companyUuid) { + return getAll(Optional.empty(), companyUuid); + } + + /** + * Get all time off policies for a company + * + *

    Get all time off policies for a company + * + *

    scope: `time_off_policies:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getAll(Optional xGustoAPIVersion, String companyUuid) { + GetV1CompaniesCompanyUuidTimeOffPoliciesRequest request = + GetV1CompaniesCompanyUuidTimeOffPoliciesRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) + .build(); + AsyncRequestOperation operation + = new GetV1CompaniesCompanyUuidTimeOffPolicies.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Create a time off policy + * + *

    Create a time off policy + * + *

    scope: `time_off_policies:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public PostV1CompaniesCompanyUuidTimeOffPoliciesRequestBuilder create() { + return new PostV1CompaniesCompanyUuidTimeOffPoliciesRequestBuilder(sdkConfiguration); + } + + /** + * Create a time off policy + * + *

    Create a time off policy + * + *

    scope: `time_off_policies:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param companyUuid The UUID of the company + * @param timeOffPolicyRequest Request body for creating a time off policy + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture create(String companyUuid, TimeOffPolicyRequest timeOffPolicyRequest) { + return create(Optional.empty(), companyUuid, timeOffPolicyRequest); + } + + /** + * Create a time off policy + * + *

    Create a time off policy + * + *

    scope: `time_off_policies:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company + * @param timeOffPolicyRequest Request body for creating a time off policy + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture create( + Optional xGustoAPIVersion, String companyUuid, + TimeOffPolicyRequest timeOffPolicyRequest) { + PostV1CompaniesCompanyUuidTimeOffPoliciesRequest request = + PostV1CompaniesCompanyUuidTimeOffPoliciesRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) + .timeOffPolicyRequest(timeOffPolicyRequest) + .build(); + AsyncRequestOperation operation + = new PostV1CompaniesCompanyUuidTimeOffPolicies.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + /** * Get a time off policy * @@ -301,67 +422,9 @@ public CompletableFuture update( /** - * Get all time off policies for a company - * - *

    Get all time off policies for a company - * - *

    scope: `time_off_policies:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The async call builder - */ - public GetV1CompaniesCompanyUuidTimeOffPoliciesRequestBuilder getAll() { - return new GetV1CompaniesCompanyUuidTimeOffPoliciesRequestBuilder(sdkConfiguration); - } - - /** - * Get all time off policies for a company - * - *

    Get all time off policies for a company - * - *

    scope: `time_off_policies:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param companyUuid The UUID of the company - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture getAll(String companyUuid) { - return getAll(Optional.empty(), companyUuid); - } - - /** - * Get all time off policies for a company - * - *

    Get all time off policies for a company - * - *

    scope: `time_off_policies:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyUuid The UUID of the company - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture getAll(Optional xGustoAPIVersion, String companyUuid) { - GetV1CompaniesCompanyUuidTimeOffPoliciesRequest request = - GetV1CompaniesCompanyUuidTimeOffPoliciesRequest - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .companyUuid(companyUuid) - .build(); - AsyncRequestOperation operation - = new GetV1CompaniesCompanyUuidTimeOffPolicies.Async(sdkConfiguration, _headers); - return operation.doRequest(request) - .thenCompose(operation::handleResponse); - } - - - /** - * Create a time off policy + * Deactivate a time off policy * - *

    Create a time off policy + *

    Deactivate a time off policy * *

    scope: `time_off_policies:write` * @@ -369,53 +432,48 @@ public CompletableFuture getAl * * @return The async call builder */ - public PostV1CompaniesCompanyUuidTimeOffPoliciesRequestBuilder create() { - return new PostV1CompaniesCompanyUuidTimeOffPoliciesRequestBuilder(sdkConfiguration); + public PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateRequestBuilder deactivate() { + return new PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateRequestBuilder(sdkConfiguration); } /** - * Create a time off policy + * Deactivate a time off policy * - *

    Create a time off policy + *

    Deactivate a time off policy * *

    scope: `time_off_policies:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company - * @param timeOffPolicyRequest Request body for creating a time off policy - * @return {@code CompletableFuture} - The async response + * @param timeOffPolicyUuid The UUID of the time off policy + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture create(String companyUuid, TimeOffPolicyRequest timeOffPolicyRequest) { - return create(Optional.empty(), companyUuid, timeOffPolicyRequest); + public CompletableFuture deactivate(String timeOffPolicyUuid) { + return deactivate(Optional.empty(), timeOffPolicyUuid); } /** - * Create a time off policy + * Deactivate a time off policy * - *

    Create a time off policy + *

    Deactivate a time off policy * *

    scope: `time_off_policies:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyUuid The UUID of the company - * @param timeOffPolicyRequest Request body for creating a time off policy - * @return {@code CompletableFuture} - The async response + * @param timeOffPolicyUuid The UUID of the time off policy + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture create( - Optional xGustoAPIVersion, String companyUuid, - TimeOffPolicyRequest timeOffPolicyRequest) { - PostV1CompaniesCompanyUuidTimeOffPoliciesRequest request = - PostV1CompaniesCompanyUuidTimeOffPoliciesRequest + public CompletableFuture deactivate(Optional xGustoAPIVersion, String timeOffPolicyUuid) { + PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateRequest request = + PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .companyUuid(companyUuid) - .timeOffPolicyRequest(timeOffPolicyRequest) + .timeOffPolicyUuid(timeOffPolicyUuid) .build(); - AsyncRequestOperation operation - = new PostV1CompaniesCompanyUuidTimeOffPolicies.Async(sdkConfiguration, _headers); + AsyncRequestOperation operation + = new PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivate.Async(sdkConfiguration, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } @@ -612,62 +670,4 @@ public CompletableFuture u .thenCompose(operation::handleResponse); } - - /** - * Deactivate a time off policy - * - *

    Deactivate a time off policy - * - *

    scope: `time_off_policies:write` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The async call builder - */ - public PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateRequestBuilder deactivate() { - return new PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateRequestBuilder(sdkConfiguration); - } - - /** - * Deactivate a time off policy - * - *

    Deactivate a time off policy - * - *

    scope: `time_off_policies:write` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param timeOffPolicyUuid The UUID of the time off policy - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture deactivate(String timeOffPolicyUuid) { - return deactivate(Optional.empty(), timeOffPolicyUuid); - } - - /** - * Deactivate a time off policy - * - *

    Deactivate a time off policy - * - *

    scope: `time_off_policies:write` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param timeOffPolicyUuid The UUID of the time off policy - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture deactivate(Optional xGustoAPIVersion, String timeOffPolicyUuid) { - PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateRequest request = - PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateRequest - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .timeOffPolicyUuid(timeOffPolicyUuid) - .build(); - AsyncRequestOperation operation - = new PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivate.Async(sdkConfiguration, _headers); - return operation.doRequest(request) - .thenCompose(operation::handleResponse); - } - } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncWebhooks.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncWebhooks.java index 048baf509..fd554eef9 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncWebhooks.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncWebhooks.java @@ -257,7 +257,7 @@ public GetV1WebhookSubscriptionUuidRequestBuilder getSubscription() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture getSubscription(GetV1WebhookSubscriptionUuidSecurity security, String webhookSubscriptionUuid) { - return getSubscription(security, webhookSubscriptionUuid, Optional.empty()); + return getSubscription(security, Optional.empty(), webhookSubscriptionUuid); } /** @@ -273,18 +273,18 @@ public CompletableFuture getSubscription(G *

    scope: `webhook_subscriptions:read` * * @param security The security details to use for authentication. - * @param webhookSubscriptionUuid The webhook subscription UUID. * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param webhookSubscriptionUuid The webhook subscription UUID. * @return {@code CompletableFuture} - The async response */ public CompletableFuture getSubscription( - GetV1WebhookSubscriptionUuidSecurity security, String webhookSubscriptionUuid, - Optional xGustoAPIVersion) { + GetV1WebhookSubscriptionUuidSecurity security, Optional xGustoAPIVersion, + String webhookSubscriptionUuid) { GetV1WebhookSubscriptionUuidRequest request = GetV1WebhookSubscriptionUuidRequest .builder() - .webhookSubscriptionUuid(webhookSubscriptionUuid) .xGustoAPIVersion(xGustoAPIVersion) + .webhookSubscriptionUuid(webhookSubscriptionUuid) .build(); AsyncRequestOperation operation = new GetV1WebhookSubscriptionUuid.Async(sdkConfiguration, security, _headers); @@ -332,7 +332,7 @@ public CompletableFuture updateSubscriptio PutV1WebhookSubscriptionUuidSecurity security, String webhookSubscriptionUuid, PutV1WebhookSubscriptionUuidRequestBody requestBody) { return updateSubscription( - security, webhookSubscriptionUuid, Optional.empty(), + security, Optional.empty(), webhookSubscriptionUuid, requestBody); } @@ -349,19 +349,19 @@ public CompletableFuture updateSubscriptio *

    scope: `webhook_subscriptions:write` * * @param security The security details to use for authentication. - * @param webhookSubscriptionUuid The webhook subscription UUID. * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param webhookSubscriptionUuid The webhook subscription UUID. * @param requestBody * @return {@code CompletableFuture} - The async response */ public CompletableFuture updateSubscription( - PutV1WebhookSubscriptionUuidSecurity security, String webhookSubscriptionUuid, - Optional xGustoAPIVersion, PutV1WebhookSubscriptionUuidRequestBody requestBody) { + PutV1WebhookSubscriptionUuidSecurity security, Optional xGustoAPIVersion, + String webhookSubscriptionUuid, PutV1WebhookSubscriptionUuidRequestBody requestBody) { PutV1WebhookSubscriptionUuidRequest request = PutV1WebhookSubscriptionUuidRequest .builder() - .webhookSubscriptionUuid(webhookSubscriptionUuid) .xGustoAPIVersion(xGustoAPIVersion) + .webhookSubscriptionUuid(webhookSubscriptionUuid) .requestBody(requestBody) .build(); AsyncRequestOperation operation @@ -406,7 +406,7 @@ public DeleteV1WebhookSubscriptionUuidRequestBuilder deleteSubscription() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture deleteSubscription(DeleteV1WebhookSubscriptionUuidSecurity security, String webhookSubscriptionUuid) { - return deleteSubscription(security, webhookSubscriptionUuid, Optional.empty()); + return deleteSubscription(security, Optional.empty(), webhookSubscriptionUuid); } /** @@ -422,18 +422,18 @@ public CompletableFuture deleteSubscrip *

    scope: `webhook_subscriptions:write` * * @param security The security details to use for authentication. - * @param webhookSubscriptionUuid The webhook subscription UUID. * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param webhookSubscriptionUuid The webhook subscription UUID. * @return {@code CompletableFuture} - The async response */ public CompletableFuture deleteSubscription( - DeleteV1WebhookSubscriptionUuidSecurity security, String webhookSubscriptionUuid, - Optional xGustoAPIVersion) { + DeleteV1WebhookSubscriptionUuidSecurity security, Optional xGustoAPIVersion, + String webhookSubscriptionUuid) { DeleteV1WebhookSubscriptionUuidRequest request = DeleteV1WebhookSubscriptionUuidRequest .builder() - .webhookSubscriptionUuid(webhookSubscriptionUuid) .xGustoAPIVersion(xGustoAPIVersion) + .webhookSubscriptionUuid(webhookSubscriptionUuid) .build(); AsyncRequestOperation operation = new DeleteV1WebhookSubscriptionUuid.Async(sdkConfiguration, security, _headers); @@ -443,164 +443,164 @@ public CompletableFuture deleteSubscrip /** - * Verify a webhook subscription - * - *

    When a webhook subscription is created, a `verification_token` is POSTed to the registered webhook - * subscription URL. This `verify` endpoint needs to be called with `verification_token` before webhook - * events can be sent to the registered webhook URL. + * Request a verification token for a webhook subscription * - *

    Use the /v1/webhook_subscriptions/{webhook_subscription_uuid}/request_verification_token API to - * resend the `verification_token` to the Subscriber. + *

    Request that the webhook subscription `verification_token` be POSTed to the Subscription URL. * *

    📘 System Access Authentication * *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) * - *

    scope: `webhook_subscriptions:write` + *

    scope: `webhook_subscriptions:read` * * @return The async call builder */ - public PutV1VerifyWebhookSubscriptionUuidRequestBuilder verify() { - return new PutV1VerifyWebhookSubscriptionUuidRequestBuilder(sdkConfiguration); + public GetV1WebhookSubscriptionVerificationTokenUuidRequestBuilder requestVerificationToken() { + return new GetV1WebhookSubscriptionVerificationTokenUuidRequestBuilder(sdkConfiguration); } /** - * Verify a webhook subscription - * - *

    When a webhook subscription is created, a `verification_token` is POSTed to the registered webhook - * subscription URL. This `verify` endpoint needs to be called with `verification_token` before webhook - * events can be sent to the registered webhook URL. + * Request a verification token for a webhook subscription * - *

    Use the /v1/webhook_subscriptions/{webhook_subscription_uuid}/request_verification_token API to - * resend the `verification_token` to the Subscriber. + *

    Request that the webhook subscription `verification_token` be POSTed to the Subscription URL. * *

    📘 System Access Authentication * *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) * - *

    scope: `webhook_subscriptions:write` + *

    scope: `webhook_subscriptions:read` * * @param security The security details to use for authentication. * @param webhookSubscriptionUuid The webhook subscription UUID. - * @param requestBody - * @return {@code CompletableFuture} - The async response + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture verify( - PutV1VerifyWebhookSubscriptionUuidSecurity security, String webhookSubscriptionUuid, - PutV1VerifyWebhookSubscriptionUuidRequestBody requestBody) { - return verify( - security, webhookSubscriptionUuid, Optional.empty(), - requestBody); + public CompletableFuture requestVerificationToken(GetV1WebhookSubscriptionVerificationTokenUuidSecurity security, String webhookSubscriptionUuid) { + return requestVerificationToken(security, Optional.empty(), webhookSubscriptionUuid); } /** - * Verify a webhook subscription - * - *

    When a webhook subscription is created, a `verification_token` is POSTed to the registered webhook - * subscription URL. This `verify` endpoint needs to be called with `verification_token` before webhook - * events can be sent to the registered webhook URL. + * Request a verification token for a webhook subscription * - *

    Use the /v1/webhook_subscriptions/{webhook_subscription_uuid}/request_verification_token API to - * resend the `verification_token` to the Subscriber. + *

    Request that the webhook subscription `verification_token` be POSTed to the Subscription URL. * *

    📘 System Access Authentication * *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) * - *

    scope: `webhook_subscriptions:write` + *

    scope: `webhook_subscriptions:read` * * @param security The security details to use for authentication. - * @param webhookSubscriptionUuid The webhook subscription UUID. * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param requestBody - * @return {@code CompletableFuture} - The async response + * @param webhookSubscriptionUuid The webhook subscription UUID. + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture verify( - PutV1VerifyWebhookSubscriptionUuidSecurity security, String webhookSubscriptionUuid, - Optional xGustoAPIVersion, PutV1VerifyWebhookSubscriptionUuidRequestBody requestBody) { - PutV1VerifyWebhookSubscriptionUuidRequest request = - PutV1VerifyWebhookSubscriptionUuidRequest + public CompletableFuture requestVerificationToken( + GetV1WebhookSubscriptionVerificationTokenUuidSecurity security, Optional xGustoAPIVersion, + String webhookSubscriptionUuid) { + GetV1WebhookSubscriptionVerificationTokenUuidRequest request = + GetV1WebhookSubscriptionVerificationTokenUuidRequest .builder() - .webhookSubscriptionUuid(webhookSubscriptionUuid) .xGustoAPIVersion(xGustoAPIVersion) - .requestBody(requestBody) + .webhookSubscriptionUuid(webhookSubscriptionUuid) .build(); - AsyncRequestOperation operation - = new PutV1VerifyWebhookSubscriptionUuid.Async(sdkConfiguration, security, _headers); + AsyncRequestOperation operation + = new GetV1WebhookSubscriptionVerificationTokenUuid.Async(sdkConfiguration, security, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } /** - * Request a verification token for a webhook subscription + * Verify a webhook subscription * - *

    Request that the webhook subscription `verification_token` be POSTed to the Subscription URL. + *

    When a webhook subscription is created, a `verification_token` is POSTed to the registered webhook + * subscription URL. This `verify` endpoint needs to be called with `verification_token` before webhook + * events can be sent to the registered webhook URL. + * + *

    Use the /v1/webhook_subscriptions/{webhook_subscription_uuid}/request_verification_token API to + * resend the `verification_token` to the Subscriber. * *

    📘 System Access Authentication * *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) * - *

    scope: `webhook_subscriptions:read` + *

    scope: `webhook_subscriptions:write` * * @return The async call builder */ - public GetV1WebhookSubscriptionVerificationTokenUuidRequestBuilder requestVerificationToken() { - return new GetV1WebhookSubscriptionVerificationTokenUuidRequestBuilder(sdkConfiguration); + public PutV1VerifyWebhookSubscriptionUuidRequestBuilder verify() { + return new PutV1VerifyWebhookSubscriptionUuidRequestBuilder(sdkConfiguration); } /** - * Request a verification token for a webhook subscription + * Verify a webhook subscription * - *

    Request that the webhook subscription `verification_token` be POSTed to the Subscription URL. + *

    When a webhook subscription is created, a `verification_token` is POSTed to the registered webhook + * subscription URL. This `verify` endpoint needs to be called with `verification_token` before webhook + * events can be sent to the registered webhook URL. + * + *

    Use the /v1/webhook_subscriptions/{webhook_subscription_uuid}/request_verification_token API to + * resend the `verification_token` to the Subscriber. * *

    📘 System Access Authentication * *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) * - *

    scope: `webhook_subscriptions:read` + *

    scope: `webhook_subscriptions:write` * * @param security The security details to use for authentication. * @param webhookSubscriptionUuid The webhook subscription UUID. - * @return {@code CompletableFuture} - The async response + * @param requestBody + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture requestVerificationToken(GetV1WebhookSubscriptionVerificationTokenUuidSecurity security, String webhookSubscriptionUuid) { - return requestVerificationToken(security, webhookSubscriptionUuid, Optional.empty()); + public CompletableFuture verify( + PutV1VerifyWebhookSubscriptionUuidSecurity security, String webhookSubscriptionUuid, + PutV1VerifyWebhookSubscriptionUuidRequestBody requestBody) { + return verify( + security, Optional.empty(), webhookSubscriptionUuid, + requestBody); } /** - * Request a verification token for a webhook subscription + * Verify a webhook subscription * - *

    Request that the webhook subscription `verification_token` be POSTed to the Subscription URL. + *

    When a webhook subscription is created, a `verification_token` is POSTed to the registered webhook + * subscription URL. This `verify` endpoint needs to be called with `verification_token` before webhook + * events can be sent to the registered webhook URL. + * + *

    Use the /v1/webhook_subscriptions/{webhook_subscription_uuid}/request_verification_token API to + * resend the `verification_token` to the Subscriber. * *

    📘 System Access Authentication * *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) * - *

    scope: `webhook_subscriptions:read` + *

    scope: `webhook_subscriptions:write` * * @param security The security details to use for authentication. - * @param webhookSubscriptionUuid The webhook subscription UUID. * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @return {@code CompletableFuture} - The async response + * @param webhookSubscriptionUuid The webhook subscription UUID. + * @param requestBody + * @return {@code CompletableFuture} - The async response */ - public CompletableFuture requestVerificationToken( - GetV1WebhookSubscriptionVerificationTokenUuidSecurity security, String webhookSubscriptionUuid, - Optional xGustoAPIVersion) { - GetV1WebhookSubscriptionVerificationTokenUuidRequest request = - GetV1WebhookSubscriptionVerificationTokenUuidRequest + public CompletableFuture verify( + PutV1VerifyWebhookSubscriptionUuidSecurity security, Optional xGustoAPIVersion, + String webhookSubscriptionUuid, PutV1VerifyWebhookSubscriptionUuidRequestBody requestBody) { + PutV1VerifyWebhookSubscriptionUuidRequest request = + PutV1VerifyWebhookSubscriptionUuidRequest .builder() - .webhookSubscriptionUuid(webhookSubscriptionUuid) .xGustoAPIVersion(xGustoAPIVersion) + .webhookSubscriptionUuid(webhookSubscriptionUuid) + .requestBody(requestBody) .build(); - AsyncRequestOperation operation - = new GetV1WebhookSubscriptionVerificationTokenUuid.Async(sdkConfiguration, security, _headers); + AsyncRequestOperation operation + = new PutV1VerifyWebhookSubscriptionUuid.Async(sdkConfiguration, security, _headers); return operation.doRequest(request) .thenCompose(operation::handleResponse); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncWireInRequests.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncWireInRequests.java index e2d176ddb..c85ffafa0 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncWireInRequests.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/AsyncWireInRequests.java @@ -76,7 +76,7 @@ public GetWireInRequestsWireInRequestUuidRequestBuilder get() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture get(String wireInRequestUuid) { - return get(wireInRequestUuid, Optional.empty()); + return get(Optional.empty(), wireInRequestUuid); } /** @@ -88,16 +88,16 @@ public CompletableFuture get(String * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param wireInRequestUuid The UUID of the Wire In Request * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param wireInRequestUuid The UUID of the Wire In Request * @return {@code CompletableFuture} - The async response */ - public CompletableFuture get(String wireInRequestUuid, Optional xGustoAPIVersion) { + public CompletableFuture get(Optional xGustoAPIVersion, String wireInRequestUuid) { GetWireInRequestsWireInRequestUuidRequest request = GetWireInRequestsWireInRequestUuidRequest .builder() - .wireInRequestUuid(wireInRequestUuid) .xGustoAPIVersion(xGustoAPIVersion) + .wireInRequestUuid(wireInRequestUuid) .build(); AsyncRequestOperation operation = new GetWireInRequestsWireInRequestUuid.Async(sdkConfiguration, _headers); @@ -135,7 +135,7 @@ public PutWireInRequestsWireInRequestUuidRequestBuilder submit() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture submit(String wireInRequestUuid, WireInRequestUpdateRequestBody wireInRequestUpdateRequestBody) { - return submit(wireInRequestUuid, Optional.empty(), wireInRequestUpdateRequestBody); + return submit(Optional.empty(), wireInRequestUuid, wireInRequestUpdateRequestBody); } /** @@ -147,19 +147,19 @@ public CompletableFuture submit(Stri * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param wireInRequestUuid The UUID of the Wire In Request * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param wireInRequestUuid The UUID of the Wire In Request * @param wireInRequestUpdateRequestBody * @return {@code CompletableFuture} - The async response */ public CompletableFuture submit( - String wireInRequestUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String wireInRequestUuid, WireInRequestUpdateRequestBody wireInRequestUpdateRequestBody) { PutWireInRequestsWireInRequestUuidRequest request = PutWireInRequestsWireInRequestUuidRequest .builder() - .wireInRequestUuid(wireInRequestUuid) .xGustoAPIVersion(xGustoAPIVersion) + .wireInRequestUuid(wireInRequestUuid) .wireInRequestUpdateRequestBody(wireInRequestUpdateRequestBody) .build(); AsyncRequestOperation operation @@ -198,7 +198,7 @@ public GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder list() { */ public CompletableFuture list(String companyUuid) { return list( - companyUuid, Optional.empty(), Optional.empty(), + Optional.empty(), companyUuid, Optional.empty(), Optional.empty()); } @@ -211,20 +211,20 @@ public CompletableFuture list( * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company * @param page The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. * @param per Number of objects per page. For majority of endpoints will default to 25 * @return {@code CompletableFuture} - The async response */ public CompletableFuture list( - String companyUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String companyUuid, Optional page, Optional per) { GetCompaniesCompanyUuidWireInRequestUuidRequest request = GetCompaniesCompanyUuidWireInRequestUuidRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) .page(page) .per(per) .build(); diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/Companies.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/Companies.java index ced1578a7..b9b5cb60f 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/Companies.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/Companies.java @@ -10,7 +10,6 @@ import com.gusto.embedded_api_v_2025_11_15.models.components.PartnerManagedCompanyCreateRequest; import com.gusto.embedded_api_v_2025_11_15.models.components.PartnerManagedCompanyMigrateRequest; import com.gusto.embedded_api_v_2025_11_15.models.components.PartnerManagedCompanyRetrieveTermsOfServiceRequest; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdAdminsRequest; import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdAdminsRequestBuilder; import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdAdminsResponse; @@ -34,6 +33,7 @@ import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest; import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder; import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.HeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2025_11_15.models.operations.PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2025_11_15.models.operations.PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest; import com.gusto.embedded_api_v_2025_11_15.models.operations.PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBuilder; @@ -56,6 +56,11 @@ import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1CompaniesRequestBody; import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1CompaniesRequestBuilder; import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1CompaniesResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity; import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1PartnerManagedCompaniesCompanyUuidMigrateHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest; import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder; @@ -71,6 +76,7 @@ import com.gusto.embedded_api_v_2025_11_15.operations.PostV1CompaniesCompanyIdAdmins; import com.gusto.embedded_api_v_2025_11_15.operations.PostV1PartnerManagedCompanies; import com.gusto.embedded_api_v_2025_11_15.operations.PutV1Companies; +import com.gusto.embedded_api_v_2025_11_15.operations.PutV1PartnerManagedCompaniesCompanyUuidDisassociate; import com.gusto.embedded_api_v_2025_11_15.operations.PutV1PartnerManagedCompaniesCompanyUuidMigrate; import com.gusto.embedded_api_v_2025_11_15.utils.Headers; import java.lang.Long; @@ -104,97 +110,136 @@ public AsyncCompanies async() { } /** - * Create a partner managed company - * - *

    Create a partner managed company. When you successfully call the API, it does the following: - * * Creates a new company in Gusto - * * Creates a new user using the provided email if the user does not already exist. - * * Makes the user the primary payroll administrator of the new company. - * - *

    In response, you will receive oauth access tokens for the created company. - * - *

    IMPORTANT: the returned access and refresh tokens are reserved for this company only. They cannot be - * used to access other companies AND previously granted tokens cannot be used to access this company. + * Get all the admins at a company * - *

    📘 System Access Authentication + *

    Returns a list of all the admins at a company * - *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP - * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + *

    scope: `company_admin:read` * - *

    scope: `partner_managed_companies:manage` + *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public PostV1PartnerManagedCompaniesRequestBuilder createPartnerManaged() { - return new PostV1PartnerManagedCompaniesRequestBuilder(sdkConfiguration); + public GetV1CompaniesCompanyIdAdminsRequestBuilder listAdmins() { + return new GetV1CompaniesCompanyIdAdminsRequestBuilder(sdkConfiguration); } /** - * Create a partner managed company + * Get all the admins at a company * - *

    Create a partner managed company. When you successfully call the API, it does the following: - * * Creates a new company in Gusto - * * Creates a new user using the provided email if the user does not already exist. - * * Makes the user the primary payroll administrator of the new company. + *

    Returns a list of all the admins at a company * - *

    In response, you will receive oauth access tokens for the created company. + *

    scope: `company_admin:read` * - *

    IMPORTANT: the returned access and refresh tokens are reserved for this company only. They cannot be - * used to access other companies AND previously granted tokens cannot be used to access this company. + *

    If set, this operation will use Security#companyAccessAuth from the global security. * - *

    📘 System Access Authentication + * @param companyId The UUID of the company + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1CompaniesCompanyIdAdminsResponse listAdmins(String companyId) { + return listAdmins(Optional.empty(), companyId, Optional.empty(), + Optional.empty()); + } + + /** + * Get all the admins at a company * - *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP - * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + *

    Returns a list of all the admins at a company * - *

    scope: `partner_managed_companies:manage` + *

    scope: `company_admin:read` * - * @param security The security details to use for authentication. - * @param partnerManagedCompanyCreateRequest + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company + * @param page The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + * @param per Number of objects per page. For majority of endpoints will default to 25 * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostV1PartnerManagedCompaniesResponse createPartnerManaged(PostV1PartnerManagedCompaniesSecurity security, PartnerManagedCompanyCreateRequest partnerManagedCompanyCreateRequest) { - return createPartnerManaged(security, Optional.empty(), partnerManagedCompanyCreateRequest); + public GetV1CompaniesCompanyIdAdminsResponse listAdmins( + Optional xGustoAPIVersion, String companyId, + Optional page, Optional per) { + GetV1CompaniesCompanyIdAdminsRequest request = + GetV1CompaniesCompanyIdAdminsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) + .page(page) + .per(per) + .build(); + RequestOperation operation + = new GetV1CompaniesCompanyIdAdmins.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); } /** - * Create a partner managed company + * Create an admin for the company * - *

    Create a partner managed company. When you successfully call the API, it does the following: - * * Creates a new company in Gusto - * * Creates a new user using the provided email if the user does not already exist. - * * Makes the user the primary payroll administrator of the new company. + *

    Creates a new admin for a company. + * If the email matches an existing user, this will create an admin account for the current user. + * Otherwise, this will create a new user. * - *

    In response, you will receive oauth access tokens for the created company. + *

    scope: `company_admin:write` * - *

    IMPORTANT: the returned access and refresh tokens are reserved for this company only. They cannot be - * used to access other companies AND previously granted tokens cannot be used to access this company. + *

    If set, this operation will use Security#companyAccessAuth from the global security. * - *

    📘 System Access Authentication + * @return The call builder + */ + public PostV1CompaniesCompanyIdAdminsRequestBuilder createAdmin() { + return new PostV1CompaniesCompanyIdAdminsRequestBuilder(sdkConfiguration); + } + + /** + * Create an admin for the company * - *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP - * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + *

    Creates a new admin for a company. + * If the email matches an existing user, this will create an admin account for the current user. + * Otherwise, this will create a new user. * - *

    scope: `partner_managed_companies:manage` + *

    scope: `company_admin:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param companyId The UUID of the company + * @param adminCreateRequest The request body for creating a company admin. + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public PostV1CompaniesCompanyIdAdminsResponse createAdmin(String companyId, AdminCreateRequest adminCreateRequest) { + return createAdmin(Optional.empty(), companyId, adminCreateRequest); + } + + /** + * Create an admin for the company + * + *

    Creates a new admin for a company. + * If the email matches an existing user, this will create an admin account for the current user. + * Otherwise, this will create a new user. + * + *

    scope: `company_admin:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param security The security details to use for authentication. * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param partnerManagedCompanyCreateRequest + * @param companyId The UUID of the company + * @param adminCreateRequest The request body for creating a company admin. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostV1PartnerManagedCompaniesResponse createPartnerManaged( - PostV1PartnerManagedCompaniesSecurity security, Optional xGustoAPIVersion, - PartnerManagedCompanyCreateRequest partnerManagedCompanyCreateRequest) { - PostV1PartnerManagedCompaniesRequest request = - PostV1PartnerManagedCompaniesRequest + public PostV1CompaniesCompanyIdAdminsResponse createAdmin( + Optional xGustoAPIVersion, String companyId, + AdminCreateRequest adminCreateRequest) { + PostV1CompaniesCompanyIdAdminsRequest request = + PostV1CompaniesCompanyIdAdminsRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .partnerManagedCompanyCreateRequest(partnerManagedCompanyCreateRequest) + .companyId(companyId) + .adminCreateRequest(adminCreateRequest) .build(); - RequestOperation operation - = new PostV1PartnerManagedCompanies.Sync(sdkConfiguration, security, _headers); + RequestOperation operation + = new PostV1CompaniesCompanyIdAdmins.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } @@ -235,7 +280,7 @@ public GetV1CompaniesRequestBuilder get() { * @throws RuntimeException subclass if the API call fails */ public GetV1CompaniesResponse get(String companyId) { - return get(companyId, Optional.empty()); + return get(Optional.empty(), companyId); } /** @@ -251,17 +296,17 @@ public GetV1CompaniesResponse get(String companyId) { * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1CompaniesResponse get(String companyId, Optional xGustoAPIVersion) { + public GetV1CompaniesResponse get(Optional xGustoAPIVersion, String companyId) { GetV1CompaniesRequest request = GetV1CompaniesRequest .builder() - .companyId(companyId) .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) .build(); RequestOperation operation = new GetV1Companies.Sync(sdkConfiguration, _headers); @@ -298,7 +343,7 @@ public PutV1CompaniesRequestBuilder update() { * @throws RuntimeException subclass if the API call fails */ public PutV1CompaniesResponse update(String companyId, PutV1CompaniesRequestBody requestBody) { - return update(companyId, Optional.empty(), requestBody); + return update(Optional.empty(), companyId, requestBody); } /** @@ -310,20 +355,20 @@ public PutV1CompaniesResponse update(String companyId, PutV1CompaniesRequestBody * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PutV1CompaniesResponse update( - String companyId, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String companyId, PutV1CompaniesRequestBody requestBody) { PutV1CompaniesRequest request = PutV1CompaniesRequest .builder() - .companyId(companyId) .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) .requestBody(requestBody) .build(); RequestOperation operation @@ -332,120 +377,96 @@ public PutV1CompaniesResponse update( } /** - * Migrate company to embedded payroll - * - *

    Migrate an existing Gusto customer to your embedded payroll product. - * - *

    ### Prerequisites - * Before calling this endpoint: - * 1. The customer must connect their Gusto account to your application using [OAuth2](doc:oauth2) - * 2. The customer must view and [accept the Embedded Payroll Terms of - * Service](ref:post-partner-managed-companies-company_uuid-accept_terms_of_service) + * Get the custom fields of a company * - *

    ### Related guides - * - [Migrate an existing company](doc:migrate-existing-company) + *

    Returns a list of the custom fields of the company. Useful when you need to know the schema of + * custom fields for an entire company. * - *

    scope: `partner_managed_companies:write` + *

    scope: `companies:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder migrate() { - return new PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder(sdkConfiguration); + public GetV1CompaniesCompanyIdCustomFieldsRequestBuilder getCustomFields() { + return new GetV1CompaniesCompanyIdCustomFieldsRequestBuilder(sdkConfiguration); } /** - * Migrate company to embedded payroll - * - *

    Migrate an existing Gusto customer to your embedded payroll product. - * - *

    ### Prerequisites - * Before calling this endpoint: - * 1. The customer must connect their Gusto account to your application using [OAuth2](doc:oauth2) - * 2. The customer must view and [accept the Embedded Payroll Terms of - * Service](ref:post-partner-managed-companies-company_uuid-accept_terms_of_service) + * Get the custom fields of a company * - *

    ### Related guides - * - [Migrate an existing company](doc:migrate-existing-company) + *

    Returns a list of the custom fields of the company. Useful when you need to know the schema of + * custom fields for an entire company. * - *

    scope: `partner_managed_companies:write` + *

    scope: `companies:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company - * @param partnerManagedCompanyMigrateRequest + * @param companyId The UUID of the company * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1PartnerManagedCompaniesCompanyUuidMigrateResponse migrate(String companyUuid, PartnerManagedCompanyMigrateRequest partnerManagedCompanyMigrateRequest) { - return migrate(companyUuid, Optional.empty(), partnerManagedCompanyMigrateRequest); + public GetV1CompaniesCompanyIdCustomFieldsResponse getCustomFields(String companyId) { + return getCustomFields(Optional.empty(), companyId, Optional.empty(), + Optional.empty()); } /** - * Migrate company to embedded payroll - * - *

    Migrate an existing Gusto customer to your embedded payroll product. - * - *

    ### Prerequisites - * Before calling this endpoint: - * 1. The customer must connect their Gusto account to your application using [OAuth2](doc:oauth2) - * 2. The customer must view and [accept the Embedded Payroll Terms of - * Service](ref:post-partner-managed-companies-company_uuid-accept_terms_of_service) + * Get the custom fields of a company * - *

    ### Related guides - * - [Migrate an existing company](doc:migrate-existing-company) + *

    Returns a list of the custom fields of the company. Useful when you need to know the schema of + * custom fields for an entire company. * - *

    scope: `partner_managed_companies:write` + *

    scope: `companies:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param partnerManagedCompanyMigrateRequest + * @param companyId The UUID of the company + * @param page The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + * @param per Number of objects per page. For majority of endpoints will default to 25 * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1PartnerManagedCompaniesCompanyUuidMigrateResponse migrate( - String companyUuid, Optional xGustoAPIVersion, - PartnerManagedCompanyMigrateRequest partnerManagedCompanyMigrateRequest) { - PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest request = - PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest + public GetV1CompaniesCompanyIdCustomFieldsResponse getCustomFields( + Optional xGustoAPIVersion, String companyId, + Optional page, Optional per) { + GetV1CompaniesCompanyIdCustomFieldsRequest request = + GetV1CompaniesCompanyIdCustomFieldsRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) - .partnerManagedCompanyMigrateRequest(partnerManagedCompanyMigrateRequest) + .companyId(companyId) + .page(page) + .per(per) .build(); - RequestOperation operation - = new PutV1PartnerManagedCompaniesCompanyUuidMigrate.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new GetV1CompaniesCompanyIdCustomFields.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Check company migration readiness + * Get company onboarding status * - *

    Check if an existing Gusto customer is ready to be migrated to embedded payroll. This endpoint - * returns blockers and warnings associated with migrating the company and is recommended to be called - * before attempting to migrate a company. + *

    Retrieves a company's onboarding status, including whether onboarding is complete and the list of + * required onboarding steps with their respective completion state. * - *

    scope: `partner_managed_companies:read` + *

    scope: `company_onboarding_status:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder getV1PartnerManagedCompaniesCompanyUuidMigrationReadiness() { - return new GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder(sdkConfiguration); + public GetV1CompanyOnboardingStatusRequestBuilder getOnboardingStatus() { + return new GetV1CompanyOnboardingStatusRequestBuilder(sdkConfiguration); } /** - * Check company migration readiness + * Get company onboarding status * - *

    Check if an existing Gusto customer is ready to be migrated to embedded payroll. This endpoint - * returns blockers and warnings associated with migrating the company and is recommended to be called - * before attempting to migrate a company. + *

    Retrieves a company's onboarding status, including whether onboarding is complete and the list of + * required onboarding steps with their respective completion state. * - *

    scope: `partner_managed_companies:read` + *

    scope: `company_onboarding_status:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * @@ -453,327 +474,434 @@ public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder g * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessResponse getV1PartnerManagedCompaniesCompanyUuidMigrationReadiness(String companyUuid) { - return getV1PartnerManagedCompaniesCompanyUuidMigrationReadiness(companyUuid, Optional.empty()); + public GetV1CompanyOnboardingStatusResponse getOnboardingStatus(String companyUuid) { + return getOnboardingStatus(Optional.empty(), companyUuid, Optional.empty()); } /** - * Check company migration readiness + * Get company onboarding status * - *

    Check if an existing Gusto customer is ready to be migrated to embedded payroll. This endpoint - * returns blockers and warnings associated with migrating the company and is recommended to be called - * before attempting to migrate a company. + *

    Retrieves a company's onboarding status, including whether onboarding is complete and the list of + * required onboarding steps with their respective completion state. * - *

    scope: `partner_managed_companies:read` + *

    scope: `company_onboarding_status:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company + * @param additionalSteps Comma-delimited string of additional onboarding steps to include. Currently only supports the value "external_payroll". * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessResponse getV1PartnerManagedCompaniesCompanyUuidMigrationReadiness(String companyUuid, Optional xGustoAPIVersion) { - GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest request = - GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest + public GetV1CompanyOnboardingStatusResponse getOnboardingStatus( + Optional xGustoAPIVersion, String companyUuid, + Optional additionalSteps) { + GetV1CompanyOnboardingStatusRequest request = + GetV1CompanyOnboardingStatusRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) + .additionalSteps(additionalSteps) .build(); - RequestOperation operation - = new GetV1PartnerManagedCompaniesCompanyUuidMigrationReadiness.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new GetV1CompanyOnboardingStatus.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Accept terms of service for a company user + * Finish company onboarding * - *

    Accept the Gusto Embedded Payroll's [Terms of Service](https://flows.gusto.com/terms). - * The user must have a role in the company in order to accept the Terms of Service. + *

    Finalize a company's onboarding process. * - *

    scope: `terms_of_services:write` + *

    ### Approve a company in demo + * + *

    After a company is finished onboarding, Gusto requires an additional step to review and approve that + * company. + * The company onboarding status is "onboarding_completed": false, until the API call is made to finish + * company + * onboarding. In production environments, this step is required for risk-analysis purposes. + * + *

    We provide the endpoint `PUT '/v1/companies/{company_uuid}/approve'` to facilitate company approvals + * in the demo environment. + * + *

    ```shell + * PUT '/v1/companies/89771af8-b964-472e-8064-554dfbcb56d9/approve' + * + *

    # Response: Company object, with company_status: 'Approved' + * ``` + * + *

    scope: `companies:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBuilder acceptTermsOfService() { - return new PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBuilder(sdkConfiguration); + public GetV1CompanyFinishOnboardingRequestBuilder finishOnboarding() { + return new GetV1CompanyFinishOnboardingRequestBuilder(sdkConfiguration); } /** - * Accept terms of service for a company user + * Finish company onboarding * - *

    Accept the Gusto Embedded Payroll's [Terms of Service](https://flows.gusto.com/terms). - * The user must have a role in the company in order to accept the Terms of Service. + *

    Finalize a company's onboarding process. * - *

    scope: `terms_of_services:write` + *

    ### Approve a company in demo + * + *

    After a company is finished onboarding, Gusto requires an additional step to review and approve that + * company. + * The company onboarding status is "onboarding_completed": false, until the API call is made to finish + * company + * onboarding. In production environments, this step is required for risk-analysis purposes. + * + *

    We provide the endpoint `PUT '/v1/companies/{company_uuid}/approve'` to facilitate company approvals + * in the demo environment. + * + *

    ```shell + * PUT '/v1/companies/89771af8-b964-472e-8064-554dfbcb56d9/approve' + * + *

    # Response: Company object, with company_status: 'Approved' + * ``` + * + *

    scope: `companies:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param companyUuid The UUID of the company - * @param partnerManagedCompanyAcceptTermsOfServiceRequest * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceResponse acceptTermsOfService(String companyUuid, PartnerManagedCompanyAcceptTermsOfServiceRequest partnerManagedCompanyAcceptTermsOfServiceRequest) { - return acceptTermsOfService(companyUuid, Optional.empty(), partnerManagedCompanyAcceptTermsOfServiceRequest); + public GetV1CompanyFinishOnboardingResponse finishOnboarding(String companyUuid) { + return finishOnboarding(Optional.empty(), companyUuid); } /** - * Accept terms of service for a company user + * Finish company onboarding * - *

    Accept the Gusto Embedded Payroll's [Terms of Service](https://flows.gusto.com/terms). - * The user must have a role in the company in order to accept the Terms of Service. + *

    Finalize a company's onboarding process. * - *

    scope: `terms_of_services:write` + *

    ### Approve a company in demo + * + *

    After a company is finished onboarding, Gusto requires an additional step to review and approve that + * company. + * The company onboarding status is "onboarding_completed": false, until the API call is made to finish + * company + * onboarding. In production environments, this step is required for risk-analysis purposes. + * + *

    We provide the endpoint `PUT '/v1/companies/{company_uuid}/approve'` to facilitate company approvals + * in the demo environment. + * + *

    ```shell + * PUT '/v1/companies/89771af8-b964-472e-8064-554dfbcb56d9/approve' + * + *

    # Response: Company object, with company_status: 'Approved' + * ``` + * + *

    scope: `companies:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param partnerManagedCompanyAcceptTermsOfServiceRequest + * @param companyUuid The UUID of the company * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceResponse acceptTermsOfService( - String companyUuid, Optional xGustoAPIVersion, - PartnerManagedCompanyAcceptTermsOfServiceRequest partnerManagedCompanyAcceptTermsOfServiceRequest) { - PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest request = - PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest + public GetV1CompanyFinishOnboardingResponse finishOnboarding(Optional xGustoAPIVersion, String companyUuid) { + GetV1CompanyFinishOnboardingRequest request = + GetV1CompanyFinishOnboardingRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) - .partnerManagedCompanyAcceptTermsOfServiceRequest(partnerManagedCompanyAcceptTermsOfServiceRequest) + .companyUuid(companyUuid) .build(); - RequestOperation operation - = new PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfService.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new GetV1CompanyFinishOnboarding.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Retrieve terms of service status for a company user + * Disassociate a partner managed company * - *

    Retrieve the user acceptance status of the Gusto Embedded Payroll's [Terms of - * Service](https://flows.gusto.com/terms). + *

    Disassociate a company from your embedded payroll product, reversing an earlier association or + * migration. You can only disassociate a company that is currently associated with your application. * - *

    scope: `terms_of_services:read` + *

    📘 System Access Authentication * - *

    If set, this operation will use Security#companyAccessAuth from the global security. + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `partner_managed_companies:disassociate` * * @return The call builder */ - public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder retrieveTermsOfService() { - return new PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder(sdkConfiguration); + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder putV1PartnerManagedCompaniesCompanyUuidDisassociate() { + return new PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder(sdkConfiguration); } /** - * Retrieve terms of service status for a company user + * Disassociate a partner managed company * - *

    Retrieve the user acceptance status of the Gusto Embedded Payroll's [Terms of - * Service](https://flows.gusto.com/terms). + *

    Disassociate a company from your embedded payroll product, reversing an earlier association or + * migration. You can only disassociate a company that is currently associated with your application. * - *

    scope: `terms_of_services:read` + *

    📘 System Access Authentication * - *

    If set, this operation will use Security#companyAccessAuth from the global security. + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) * + *

    scope: `partner_managed_companies:disassociate` + * + * @param security The security details to use for authentication. * @param companyUuid The UUID of the company - * @param partnerManagedCompanyRetrieveTermsOfServiceRequest * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceResponse retrieveTermsOfService(String companyUuid, PartnerManagedCompanyRetrieveTermsOfServiceRequest partnerManagedCompanyRetrieveTermsOfServiceRequest) { - return retrieveTermsOfService(companyUuid, Optional.empty(), partnerManagedCompanyRetrieveTermsOfServiceRequest); + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse putV1PartnerManagedCompaniesCompanyUuidDisassociate(PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity security, String companyUuid) { + return putV1PartnerManagedCompaniesCompanyUuidDisassociate(security, Optional.empty(), companyUuid); } /** - * Retrieve terms of service status for a company user + * Disassociate a partner managed company * - *

    Retrieve the user acceptance status of the Gusto Embedded Payroll's [Terms of - * Service](https://flows.gusto.com/terms). + *

    Disassociate a company from your embedded payroll product, reversing an earlier association or + * migration. You can only disassociate a company that is currently associated with your application. * - *

    scope: `terms_of_services:read` + *

    📘 System Access Authentication * - *

    If set, this operation will use Security#companyAccessAuth from the global security. + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) * - * @param companyUuid The UUID of the company + *

    scope: `partner_managed_companies:disassociate` + * + * @param security The security details to use for authentication. * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param partnerManagedCompanyRetrieveTermsOfServiceRequest + * @param companyUuid The UUID of the company * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceResponse retrieveTermsOfService( - String companyUuid, Optional xGustoAPIVersion, - PartnerManagedCompanyRetrieveTermsOfServiceRequest partnerManagedCompanyRetrieveTermsOfServiceRequest) { - PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest request = - PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse putV1PartnerManagedCompaniesCompanyUuidDisassociate( + PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity security, Optional xGustoAPIVersion, + String companyUuid) { + PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest request = + PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) - .partnerManagedCompanyRetrieveTermsOfServiceRequest(partnerManagedCompanyRetrieveTermsOfServiceRequest) + .companyUuid(companyUuid) .build(); - RequestOperation operation - = new PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfService.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PutV1PartnerManagedCompaniesCompanyUuidDisassociate.Sync(sdkConfiguration, security, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Get all the admins at a company + * Migrate company to embedded payroll * - *

    Returns a list of all the admins at a company + *

    Migrate an existing Gusto customer to your embedded payroll product. * - *

    scope: `company_admin:read` + *

    ### Prerequisites + * Before calling this endpoint: + * 1. The customer must connect their Gusto account to your application using [OAuth2](doc:oauth2) + * 2. The customer must view and [accept the Embedded Payroll Terms of + * Service](ref:post-partner-managed-companies-company_uuid-accept_terms_of_service) + * + *

    ### Related guides + * - [Migrate an existing company](doc:migrate-existing-company) + * + *

    scope: `partner_managed_companies:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public GetV1CompaniesCompanyIdAdminsRequestBuilder listAdmins() { - return new GetV1CompaniesCompanyIdAdminsRequestBuilder(sdkConfiguration); + public PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder migrate() { + return new PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder(sdkConfiguration); } /** - * Get all the admins at a company + * Migrate company to embedded payroll * - *

    Returns a list of all the admins at a company + *

    Migrate an existing Gusto customer to your embedded payroll product. * - *

    scope: `company_admin:read` + *

    ### Prerequisites + * Before calling this endpoint: + * 1. The customer must connect their Gusto account to your application using [OAuth2](doc:oauth2) + * 2. The customer must view and [accept the Embedded Payroll Terms of + * Service](ref:post-partner-managed-companies-company_uuid-accept_terms_of_service) + * + *

    ### Related guides + * - [Migrate an existing company](doc:migrate-existing-company) + * + *

    scope: `partner_managed_companies:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company + * @param companyUuid The UUID of the company + * @param partnerManagedCompanyMigrateRequest * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1CompaniesCompanyIdAdminsResponse listAdmins(String companyId) { - return listAdmins(Optional.empty(), companyId, Optional.empty(), - Optional.empty()); + public PutV1PartnerManagedCompaniesCompanyUuidMigrateResponse migrate(String companyUuid, PartnerManagedCompanyMigrateRequest partnerManagedCompanyMigrateRequest) { + return migrate(Optional.empty(), companyUuid, partnerManagedCompanyMigrateRequest); } /** - * Get all the admins at a company + * Migrate company to embedded payroll * - *

    Returns a list of all the admins at a company + *

    Migrate an existing Gusto customer to your embedded payroll product. * - *

    scope: `company_admin:read` + *

    ### Prerequisites + * Before calling this endpoint: + * 1. The customer must connect their Gusto account to your application using [OAuth2](doc:oauth2) + * 2. The customer must view and [accept the Embedded Payroll Terms of + * Service](ref:post-partner-managed-companies-company_uuid-accept_terms_of_service) + * + *

    ### Related guides + * - [Migrate an existing company](doc:migrate-existing-company) + * + *

    scope: `partner_managed_companies:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyId The UUID of the company - * @param page The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - * @param per Number of objects per page. For majority of endpoints will default to 25 + * @param companyUuid The UUID of the company + * @param partnerManagedCompanyMigrateRequest * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1CompaniesCompanyIdAdminsResponse listAdmins( - Optional xGustoAPIVersion, String companyId, - Optional page, Optional per) { - GetV1CompaniesCompanyIdAdminsRequest request = - GetV1CompaniesCompanyIdAdminsRequest + public PutV1PartnerManagedCompaniesCompanyUuidMigrateResponse migrate( + Optional xGustoAPIVersion, String companyUuid, + PartnerManagedCompanyMigrateRequest partnerManagedCompanyMigrateRequest) { + PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest request = + PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .companyId(companyId) - .page(page) - .per(per) + .companyUuid(companyUuid) + .partnerManagedCompanyMigrateRequest(partnerManagedCompanyMigrateRequest) .build(); - RequestOperation operation - = new GetV1CompaniesCompanyIdAdmins.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PutV1PartnerManagedCompaniesCompanyUuidMigrate.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Create an admin for the company - * - *

    Creates a new admin for a company. - * If the email matches an existing user, this will create an admin account for the current user. - * Otherwise, this will create a new user. - * - *

    scope: `company_admin:write` + * Create a partner managed company * - *

    If set, this operation will use Security#companyAccessAuth from the global security. + *

    Create a partner managed company. When you successfully call the API, it does the following: + * * Creates a new company in Gusto + * * Creates a new user using the provided email if the user does not already exist. + * * Makes the user the primary payroll administrator of the new company. + * + *

    In response, you will receive oauth access tokens for the created company. + * + *

    IMPORTANT: the returned access and refresh tokens are reserved for this company only. They cannot be + * used to access other companies AND previously granted tokens cannot be used to access this company. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `partner_managed_companies:manage` * * @return The call builder */ - public PostV1CompaniesCompanyIdAdminsRequestBuilder createAdmin() { - return new PostV1CompaniesCompanyIdAdminsRequestBuilder(sdkConfiguration); + public PostV1PartnerManagedCompaniesRequestBuilder createPartnerManaged() { + return new PostV1PartnerManagedCompaniesRequestBuilder(sdkConfiguration); } /** - * Create an admin for the company + * Create a partner managed company * - *

    Creates a new admin for a company. - * If the email matches an existing user, this will create an admin account for the current user. - * Otherwise, this will create a new user. + *

    Create a partner managed company. When you successfully call the API, it does the following: + * * Creates a new company in Gusto + * * Creates a new user using the provided email if the user does not already exist. + * * Makes the user the primary payroll administrator of the new company. * - *

    scope: `company_admin:write` + *

    In response, you will receive oauth access tokens for the created company. * - *

    If set, this operation will use Security#companyAccessAuth from the global security. + *

    IMPORTANT: the returned access and refresh tokens are reserved for this company only. They cannot be + * used to access other companies AND previously granted tokens cannot be used to access this company. * - * @param companyId The UUID of the company - * @param adminCreateRequest The request body for creating a company admin. + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `partner_managed_companies:manage` + * + * @param security The security details to use for authentication. + * @param partnerManagedCompanyCreateRequest * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostV1CompaniesCompanyIdAdminsResponse createAdmin(String companyId, AdminCreateRequest adminCreateRequest) { - return createAdmin(Optional.empty(), companyId, adminCreateRequest); + public PostV1PartnerManagedCompaniesResponse createPartnerManaged(PostV1PartnerManagedCompaniesSecurity security, PartnerManagedCompanyCreateRequest partnerManagedCompanyCreateRequest) { + return createPartnerManaged(security, Optional.empty(), partnerManagedCompanyCreateRequest); } /** - * Create an admin for the company + * Create a partner managed company * - *

    Creates a new admin for a company. - * If the email matches an existing user, this will create an admin account for the current user. - * Otherwise, this will create a new user. + *

    Create a partner managed company. When you successfully call the API, it does the following: + * * Creates a new company in Gusto + * * Creates a new user using the provided email if the user does not already exist. + * * Makes the user the primary payroll administrator of the new company. * - *

    scope: `company_admin:write` + *

    In response, you will receive oauth access tokens for the created company. * - *

    If set, this operation will use Security#companyAccessAuth from the global security. + *

    IMPORTANT: the returned access and refresh tokens are reserved for this company only. They cannot be + * used to access other companies AND previously granted tokens cannot be used to access this company. + * + *

    📘 System Access Authentication * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `partner_managed_companies:manage` + * + * @param security The security details to use for authentication. * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyId The UUID of the company - * @param adminCreateRequest The request body for creating a company admin. + * @param partnerManagedCompanyCreateRequest * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostV1CompaniesCompanyIdAdminsResponse createAdmin( - Optional xGustoAPIVersion, String companyId, - AdminCreateRequest adminCreateRequest) { - PostV1CompaniesCompanyIdAdminsRequest request = - PostV1CompaniesCompanyIdAdminsRequest + public PostV1PartnerManagedCompaniesResponse createPartnerManaged( + PostV1PartnerManagedCompaniesSecurity security, Optional xGustoAPIVersion, + PartnerManagedCompanyCreateRequest partnerManagedCompanyCreateRequest) { + PostV1PartnerManagedCompaniesRequest request = + PostV1PartnerManagedCompaniesRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .companyId(companyId) - .adminCreateRequest(adminCreateRequest) + .partnerManagedCompanyCreateRequest(partnerManagedCompanyCreateRequest) .build(); - RequestOperation operation - = new PostV1CompaniesCompanyIdAdmins.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PostV1PartnerManagedCompanies.Sync(sdkConfiguration, security, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Get company onboarding status + * Check company migration readiness * - *

    Retrieves a company's onboarding status, including whether onboarding is complete and the list of - * required onboarding steps with their respective completion state. + *

    Check if an existing Gusto customer is ready to be migrated to embedded payroll. This endpoint + * returns blockers and warnings associated with migrating the company and is recommended to be called + * before attempting to migrate a company. * - *

    scope: `company_onboarding_status:read` + *

    scope: `partner_managed_companies:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public GetV1CompanyOnboardingStatusRequestBuilder getOnboardingStatus() { - return new GetV1CompanyOnboardingStatusRequestBuilder(sdkConfiguration); + public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder getV1PartnerManagedCompaniesCompanyUuidMigrationReadiness() { + return new GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder(sdkConfiguration); } /** - * Get company onboarding status + * Check company migration readiness * - *

    Retrieves a company's onboarding status, including whether onboarding is complete and the list of - * required onboarding steps with their respective completion state. + *

    Check if an existing Gusto customer is ready to be migrated to embedded payroll. This endpoint + * returns blockers and warnings associated with migrating the company and is recommended to be called + * before attempting to migrate a company. * - *

    scope: `company_onboarding_status:read` + *

    scope: `partner_managed_companies:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * @@ -781,215 +909,167 @@ public GetV1CompanyOnboardingStatusRequestBuilder getOnboardingStatus() { * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1CompanyOnboardingStatusResponse getOnboardingStatus(String companyUuid) { - return getOnboardingStatus(companyUuid, Optional.empty(), Optional.empty()); + public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessResponse getV1PartnerManagedCompaniesCompanyUuidMigrationReadiness(String companyUuid) { + return getV1PartnerManagedCompaniesCompanyUuidMigrationReadiness(Optional.empty(), companyUuid); } /** - * Get company onboarding status + * Check company migration readiness * - *

    Retrieves a company's onboarding status, including whether onboarding is complete and the list of - * required onboarding steps with their respective completion state. + *

    Check if an existing Gusto customer is ready to be migrated to embedded payroll. This endpoint + * returns blockers and warnings associated with migrating the company and is recommended to be called + * before attempting to migrate a company. * - *

    scope: `company_onboarding_status:read` + *

    scope: `partner_managed_companies:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company - * @param additionalSteps Comma-delimited string of additional onboarding steps to include. Currently only supports the value "external_payroll". * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1CompanyOnboardingStatusResponse getOnboardingStatus( - String companyUuid, Optional additionalSteps, - Optional xGustoAPIVersion) { - GetV1CompanyOnboardingStatusRequest request = - GetV1CompanyOnboardingStatusRequest + public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessResponse getV1PartnerManagedCompaniesCompanyUuidMigrationReadiness(Optional xGustoAPIVersion, String companyUuid) { + GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest request = + GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest .builder() - .companyUuid(companyUuid) - .additionalSteps(additionalSteps) .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) .build(); - RequestOperation operation - = new GetV1CompanyOnboardingStatus.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new GetV1PartnerManagedCompaniesCompanyUuidMigrationReadiness.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Finish company onboarding - * - *

    Finalize a company's onboarding process. - * - *

    ### Approve a company in demo - * - *

    After a company is finished onboarding, Gusto requires an additional step to review and approve that - * company. - * The company onboarding status is "onboarding_completed": false, until the API call is made to finish - * company - * onboarding. In production environments, this step is required for risk-analysis purposes. - * - *

    We provide the endpoint `PUT '/v1/companies/{company_uuid}/approve'` to facilitate company approvals - * in the demo environment. - * - *

    ```shell - * PUT '/v1/companies/89771af8-b964-472e-8064-554dfbcb56d9/approve' + * Accept terms of service for a company user * - *

    # Response: Company object, with company_status: 'Approved' - * ``` + *

    Accept the Gusto Embedded Payroll's [Terms of Service](https://flows.gusto.com/terms). + * The user must have a role in the company in order to accept the Terms of Service. * - *

    scope: `companies:write` + *

    scope: `terms_of_services:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public GetV1CompanyFinishOnboardingRequestBuilder finishOnboarding() { - return new GetV1CompanyFinishOnboardingRequestBuilder(sdkConfiguration); + public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBuilder acceptTermsOfService() { + return new PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBuilder(sdkConfiguration); } /** - * Finish company onboarding - * - *

    Finalize a company's onboarding process. - * - *

    ### Approve a company in demo - * - *

    After a company is finished onboarding, Gusto requires an additional step to review and approve that - * company. - * The company onboarding status is "onboarding_completed": false, until the API call is made to finish - * company - * onboarding. In production environments, this step is required for risk-analysis purposes. - * - *

    We provide the endpoint `PUT '/v1/companies/{company_uuid}/approve'` to facilitate company approvals - * in the demo environment. - * - *

    ```shell - * PUT '/v1/companies/89771af8-b964-472e-8064-554dfbcb56d9/approve' + * Accept terms of service for a company user * - *

    # Response: Company object, with company_status: 'Approved' - * ``` + *

    Accept the Gusto Embedded Payroll's [Terms of Service](https://flows.gusto.com/terms). + * The user must have a role in the company in order to accept the Terms of Service. * - *

    scope: `companies:write` + *

    scope: `terms_of_services:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param companyUuid The UUID of the company + * @param partnerManagedCompanyAcceptTermsOfServiceRequest * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1CompanyFinishOnboardingResponse finishOnboarding(String companyUuid) { - return finishOnboarding(companyUuid, Optional.empty()); + public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceResponse acceptTermsOfService(String companyUuid, PartnerManagedCompanyAcceptTermsOfServiceRequest partnerManagedCompanyAcceptTermsOfServiceRequest) { + return acceptTermsOfService(Optional.empty(), companyUuid, partnerManagedCompanyAcceptTermsOfServiceRequest); } /** - * Finish company onboarding - * - *

    Finalize a company's onboarding process. - * - *

    ### Approve a company in demo - * - *

    After a company is finished onboarding, Gusto requires an additional step to review and approve that - * company. - * The company onboarding status is "onboarding_completed": false, until the API call is made to finish - * company - * onboarding. In production environments, this step is required for risk-analysis purposes. - * - *

    We provide the endpoint `PUT '/v1/companies/{company_uuid}/approve'` to facilitate company approvals - * in the demo environment. - * - *

    ```shell - * PUT '/v1/companies/89771af8-b964-472e-8064-554dfbcb56d9/approve' + * Accept terms of service for a company user * - *

    # Response: Company object, with company_status: 'Approved' - * ``` + *

    Accept the Gusto Embedded Payroll's [Terms of Service](https://flows.gusto.com/terms). + * The user must have a role in the company in order to accept the Terms of Service. * - *

    scope: `companies:write` + *

    scope: `terms_of_services:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company + * @param partnerManagedCompanyAcceptTermsOfServiceRequest * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1CompanyFinishOnboardingResponse finishOnboarding(String companyUuid, Optional xGustoAPIVersion) { - GetV1CompanyFinishOnboardingRequest request = - GetV1CompanyFinishOnboardingRequest + public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceResponse acceptTermsOfService( + Optional xGustoAPIVersion, String companyUuid, + PartnerManagedCompanyAcceptTermsOfServiceRequest partnerManagedCompanyAcceptTermsOfServiceRequest) { + PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest request = + PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) + .partnerManagedCompanyAcceptTermsOfServiceRequest(partnerManagedCompanyAcceptTermsOfServiceRequest) .build(); - RequestOperation operation - = new GetV1CompanyFinishOnboarding.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfService.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Get the custom fields of a company + * Retrieve terms of service status for a company user * - *

    Returns a list of the custom fields of the company. Useful when you need to know the schema of - * custom fields for an entire company. + *

    Retrieve the user acceptance status of the Gusto Embedded Payroll's [Terms of + * Service](https://flows.gusto.com/terms). * - *

    scope: `companies:read` + *

    scope: `terms_of_services:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public GetV1CompaniesCompanyIdCustomFieldsRequestBuilder getCustomFields() { - return new GetV1CompaniesCompanyIdCustomFieldsRequestBuilder(sdkConfiguration); + public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder retrieveTermsOfService() { + return new PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder(sdkConfiguration); } /** - * Get the custom fields of a company + * Retrieve terms of service status for a company user * - *

    Returns a list of the custom fields of the company. Useful when you need to know the schema of - * custom fields for an entire company. + *

    Retrieve the user acceptance status of the Gusto Embedded Payroll's [Terms of + * Service](https://flows.gusto.com/terms). * - *

    scope: `companies:read` + *

    scope: `terms_of_services:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company + * @param companyUuid The UUID of the company + * @param partnerManagedCompanyRetrieveTermsOfServiceRequest * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1CompaniesCompanyIdCustomFieldsResponse getCustomFields(String companyId) { - return getCustomFields(Optional.empty(), companyId, Optional.empty(), - Optional.empty()); + public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceResponse retrieveTermsOfService(String companyUuid, PartnerManagedCompanyRetrieveTermsOfServiceRequest partnerManagedCompanyRetrieveTermsOfServiceRequest) { + return retrieveTermsOfService(Optional.empty(), companyUuid, partnerManagedCompanyRetrieveTermsOfServiceRequest); } /** - * Get the custom fields of a company + * Retrieve terms of service status for a company user * - *

    Returns a list of the custom fields of the company. Useful when you need to know the schema of - * custom fields for an entire company. + *

    Retrieve the user acceptance status of the Gusto Embedded Payroll's [Terms of + * Service](https://flows.gusto.com/terms). * - *

    scope: `companies:read` + *

    scope: `terms_of_services:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyId The UUID of the company - * @param page The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - * @param per Number of objects per page. For majority of endpoints will default to 25 + * @param companyUuid The UUID of the company + * @param partnerManagedCompanyRetrieveTermsOfServiceRequest * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1CompaniesCompanyIdCustomFieldsResponse getCustomFields( - Optional xGustoAPIVersion, String companyId, - Optional page, Optional per) { - GetV1CompaniesCompanyIdCustomFieldsRequest request = - GetV1CompaniesCompanyIdCustomFieldsRequest + public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceResponse retrieveTermsOfService( + Optional xGustoAPIVersion, String companyUuid, + PartnerManagedCompanyRetrieveTermsOfServiceRequest partnerManagedCompanyRetrieveTermsOfServiceRequest) { + PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest request = + PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .companyId(companyId) - .page(page) - .per(per) + .companyUuid(companyUuid) + .partnerManagedCompanyRetrieveTermsOfServiceRequest(partnerManagedCompanyRetrieveTermsOfServiceRequest) .build(); - RequestOperation operation - = new GetV1CompaniesCompanyIdCustomFields.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfService.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/CompanyAttachments.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/CompanyAttachments.java index 779cb43f2..9c2ffa685 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/CompanyAttachments.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/CompanyAttachments.java @@ -46,9 +46,9 @@ public AsyncCompanyAttachments async() { } /** - * Get Company Attachment Details + * Get List of Company Attachments * - *

    Retrieve the detail of an attachment uploaded by the company. + *

    Retrieve a list of all the attachments uploaded by the company. * *

    ### Related guides * - [Manage company attachments](doc:manage-company-attachments) @@ -59,14 +59,14 @@ public AsyncCompanyAttachments async() { * * @return The call builder */ - public GetV1CompaniesAttachmentRequestBuilder getDetails() { - return new GetV1CompaniesAttachmentRequestBuilder(sdkConfiguration); + public GetV1CompaniesAttachmentsRequestBuilder getList() { + return new GetV1CompaniesAttachmentsRequestBuilder(sdkConfiguration); } /** - * Get Company Attachment Details + * Get List of Company Attachments * - *

    Retrieve the detail of an attachment uploaded by the company. + *

    Retrieve a list of all the attachments uploaded by the company. * *

    ### Related guides * - [Manage company attachments](doc:manage-company-attachments) @@ -76,18 +76,17 @@ public GetV1CompaniesAttachmentRequestBuilder getDetails() { *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param companyId The UUID of the company - * @param companyAttachmentUuid The UUID of the company attachment * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1CompaniesAttachmentResponse getDetails(String companyId, String companyAttachmentUuid) { - return getDetails(Optional.empty(), companyId, companyAttachmentUuid); + public GetV1CompaniesAttachmentsResponse getList(String companyId) { + return getList(Optional.empty(), companyId); } /** - * Get Company Attachment Details + * Get List of Company Attachments * - *

    Retrieve the detail of an attachment uploaded by the company. + *

    Retrieve a list of all the attachments uploaded by the company. * *

    ### Related guides * - [Manage company attachments](doc:manage-company-attachments) @@ -98,167 +97,168 @@ public GetV1CompaniesAttachmentResponse getDetails(String companyId, String comp * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyId The UUID of the company - * @param companyAttachmentUuid The UUID of the company attachment * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1CompaniesAttachmentResponse getDetails( - Optional xGustoAPIVersion, String companyId, - String companyAttachmentUuid) { - GetV1CompaniesAttachmentRequest request = - GetV1CompaniesAttachmentRequest + public GetV1CompaniesAttachmentsResponse getList(Optional xGustoAPIVersion, String companyId) { + GetV1CompaniesAttachmentsRequest request = + GetV1CompaniesAttachmentsRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .companyId(companyId) - .companyAttachmentUuid(companyAttachmentUuid) .build(); - RequestOperation operation - = new GetV1CompaniesAttachment.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new GetV1CompaniesAttachments.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Get List of Company Attachments + * Create Company Attachment and Upload File * - *

    Retrieve a list of all the attachments uploaded by the company. + *

    Upload a file and create a company attachment. We recommend uploading PDF files for optimal + * compatibility. However, the following file types are allowed: .qbb, .qbm, .gif, .jpg, .png, .pdf, + * .xls, .xlsx, .doc and .docx. * *

    ### Related guides * - [Manage company attachments](doc:manage-company-attachments) * - *

    scope: `company_attachments:read` + *

    scope: `company_attachments:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public GetV1CompaniesAttachmentsRequestBuilder getList() { - return new GetV1CompaniesAttachmentsRequestBuilder(sdkConfiguration); + public PostV1CompaniesAttachmentRequestBuilder create() { + return new PostV1CompaniesAttachmentRequestBuilder(sdkConfiguration); } /** - * Get List of Company Attachments + * Create Company Attachment and Upload File * - *

    Retrieve a list of all the attachments uploaded by the company. + *

    Upload a file and create a company attachment. We recommend uploading PDF files for optimal + * compatibility. However, the following file types are allowed: .qbb, .qbm, .gif, .jpg, .png, .pdf, + * .xls, .xlsx, .doc and .docx. * *

    ### Related guides * - [Manage company attachments](doc:manage-company-attachments) * - *

    scope: `company_attachments:read` + *

    scope: `company_attachments:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param companyId The UUID of the company + * @param companyAttachmentCreateRequestBody The binary payload of the file and the company attachment category. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1CompaniesAttachmentsResponse getList(String companyId) { - return getList(Optional.empty(), companyId); + public PostV1CompaniesAttachmentResponse create(String companyId, CompanyAttachmentCreateRequestBody companyAttachmentCreateRequestBody) { + return create(Optional.empty(), companyId, companyAttachmentCreateRequestBody); } /** - * Get List of Company Attachments + * Create Company Attachment and Upload File * - *

    Retrieve a list of all the attachments uploaded by the company. + *

    Upload a file and create a company attachment. We recommend uploading PDF files for optimal + * compatibility. However, the following file types are allowed: .qbb, .qbm, .gif, .jpg, .png, .pdf, + * .xls, .xlsx, .doc and .docx. * *

    ### Related guides * - [Manage company attachments](doc:manage-company-attachments) * - *

    scope: `company_attachments:read` + *

    scope: `company_attachments:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyId The UUID of the company + * @param companyAttachmentCreateRequestBody The binary payload of the file and the company attachment category. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1CompaniesAttachmentsResponse getList(Optional xGustoAPIVersion, String companyId) { - GetV1CompaniesAttachmentsRequest request = - GetV1CompaniesAttachmentsRequest + public PostV1CompaniesAttachmentResponse create( + Optional xGustoAPIVersion, String companyId, + CompanyAttachmentCreateRequestBody companyAttachmentCreateRequestBody) { + PostV1CompaniesAttachmentRequest request = + PostV1CompaniesAttachmentRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .companyId(companyId) + .companyAttachmentCreateRequestBody(companyAttachmentCreateRequestBody) .build(); - RequestOperation operation - = new GetV1CompaniesAttachments.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PostV1CompaniesAttachment.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Create Company Attachment and Upload File + * Get Company Attachment Details * - *

    Upload a file and create a company attachment. We recommend uploading PDF files for optimal - * compatibility. However, the following file types are allowed: .qbb, .qbm, .gif, .jpg, .png, .pdf, - * .xls, .xlsx, .doc and .docx. + *

    Retrieve the detail of an attachment uploaded by the company. * *

    ### Related guides * - [Manage company attachments](doc:manage-company-attachments) * - *

    scope: `company_attachments:write` + *

    scope: `company_attachments:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public PostV1CompaniesAttachmentRequestBuilder create() { - return new PostV1CompaniesAttachmentRequestBuilder(sdkConfiguration); + public GetV1CompaniesAttachmentRequestBuilder getDetails() { + return new GetV1CompaniesAttachmentRequestBuilder(sdkConfiguration); } /** - * Create Company Attachment and Upload File + * Get Company Attachment Details * - *

    Upload a file and create a company attachment. We recommend uploading PDF files for optimal - * compatibility. However, the following file types are allowed: .qbb, .qbm, .gif, .jpg, .png, .pdf, - * .xls, .xlsx, .doc and .docx. + *

    Retrieve the detail of an attachment uploaded by the company. * *

    ### Related guides * - [Manage company attachments](doc:manage-company-attachments) * - *

    scope: `company_attachments:write` + *

    scope: `company_attachments:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param companyId The UUID of the company - * @param companyAttachmentCreateRequestBody The binary payload of the file and the company attachment category. + * @param companyAttachmentUuid The UUID of the company attachment * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostV1CompaniesAttachmentResponse create(String companyId, CompanyAttachmentCreateRequestBody companyAttachmentCreateRequestBody) { - return create(Optional.empty(), companyId, companyAttachmentCreateRequestBody); + public GetV1CompaniesAttachmentResponse getDetails(String companyId, String companyAttachmentUuid) { + return getDetails(Optional.empty(), companyId, companyAttachmentUuid); } /** - * Create Company Attachment and Upload File + * Get Company Attachment Details * - *

    Upload a file and create a company attachment. We recommend uploading PDF files for optimal - * compatibility. However, the following file types are allowed: .qbb, .qbm, .gif, .jpg, .png, .pdf, - * .xls, .xlsx, .doc and .docx. + *

    Retrieve the detail of an attachment uploaded by the company. * *

    ### Related guides * - [Manage company attachments](doc:manage-company-attachments) * - *

    scope: `company_attachments:write` + *

    scope: `company_attachments:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyId The UUID of the company - * @param companyAttachmentCreateRequestBody The binary payload of the file and the company attachment category. + * @param companyAttachmentUuid The UUID of the company attachment * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostV1CompaniesAttachmentResponse create( - Optional xGustoAPIVersion, String companyId, - CompanyAttachmentCreateRequestBody companyAttachmentCreateRequestBody) { - PostV1CompaniesAttachmentRequest request = - PostV1CompaniesAttachmentRequest + public GetV1CompaniesAttachmentResponse getDetails( + Optional xGustoAPIVersion, String companyId, + String companyAttachmentUuid) { + GetV1CompaniesAttachmentRequest request = + GetV1CompaniesAttachmentRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .companyId(companyId) - .companyAttachmentCreateRequestBody(companyAttachmentCreateRequestBody) + .companyAttachmentUuid(companyAttachmentUuid) .build(); - RequestOperation operation - = new PostV1CompaniesAttachment.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new GetV1CompaniesAttachment.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/CompanyBenefits.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/CompanyBenefits.java index e02465e5b..93be69099 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/CompanyBenefits.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/CompanyBenefits.java @@ -39,10 +39,10 @@ import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsRequestBuilder; import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsResponse; import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompanyBenefitsCompanyBenefitIdHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompanyBenefitsCompanyBenefitIdQueryParamInclude; import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompanyBenefitsCompanyBenefitIdRequest; import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompanyBenefitsCompanyBenefitIdRequestBuilder; import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompanyBenefitsCompanyBenefitIdResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.Include; import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1CompaniesCompanyIdCompanyBenefitsHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1CompaniesCompanyIdCompanyBenefitsRequest; import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1CompaniesCompanyIdCompanyBenefitsRequestBuilder; @@ -97,6 +97,189 @@ public AsyncCompanyBenefits async() { return asyncSDK; } + /** + * Get all supported benefits + * + *

    Returns all benefits supported by Gusto. The benefit object in Gusto contains high level information + * about a particular benefit type and its tax considerations. When companies choose to offer a + * benefit, they are creating a Company Benefit object associated with a particular benefit. + * + *

    scope: `benefits:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public GetV1BenefitsRequestBuilder getAll() { + return new GetV1BenefitsRequestBuilder(sdkConfiguration); + } + + /** + * Get all supported benefits + * + *

    Returns all benefits supported by Gusto. The benefit object in Gusto contains high level information + * about a particular benefit type and its tax considerations. When companies choose to offer a + * benefit, they are creating a Company Benefit object associated with a particular benefit. + * + *

    scope: `benefits:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1BenefitsResponse getAllDirect() { + return getAll(Optional.empty()); + } + + /** + * Get all supported benefits + * + *

    Returns all benefits supported by Gusto. The benefit object in Gusto contains high level information + * about a particular benefit type and its tax considerations. When companies choose to offer a + * benefit, they are creating a Company Benefit object associated with a particular benefit. + * + *

    scope: `benefits:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1BenefitsResponse getAll(Optional xGustoAPIVersion) { + GetV1BenefitsRequest request = + GetV1BenefitsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .build(); + RequestOperation operation + = new GetV1Benefits.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + + /** + * Get a supported benefit + * + *

    Returns a benefit supported by Gusto. The benefit object in Gusto contains high level information + * about a particular benefit type and its tax considerations. When companies choose to offer a + * benefit, they are creating a Company Benefit object associated with a particular benefit. + * + *

    scope: `benefits:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public GetV1BenefitsBenefitIdRequestBuilder getSupported() { + return new GetV1BenefitsBenefitIdRequestBuilder(sdkConfiguration); + } + + /** + * Get a supported benefit + * + *

    Returns a benefit supported by Gusto. The benefit object in Gusto contains high level information + * about a particular benefit type and its tax considerations. When companies choose to offer a + * benefit, they are creating a Company Benefit object associated with a particular benefit. + * + *

    scope: `benefits:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param benefitId The benefit type in Gusto. + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1BenefitsBenefitIdResponse getSupported(String benefitId) { + return getSupported(Optional.empty(), benefitId); + } + + /** + * Get a supported benefit + * + *

    Returns a benefit supported by Gusto. The benefit object in Gusto contains high level information + * about a particular benefit type and its tax considerations. When companies choose to offer a + * benefit, they are creating a Company Benefit object associated with a particular benefit. + * + *

    scope: `benefits:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param benefitId The benefit type in Gusto. + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1BenefitsBenefitIdResponse getSupported(Optional xGustoAPIVersion, String benefitId) { + GetV1BenefitsBenefitIdRequest request = + GetV1BenefitsBenefitIdRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .benefitId(benefitId) + .build(); + RequestOperation operation + = new GetV1BenefitsBenefitId.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + + /** + * Get benefit fields requirements by benefit type + * + *

    Returns the field requirements for a given benefit type. + * + *

    scope: `benefits:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public GetV1BenefitsBenefitsIdRequirementsRequestBuilder getRequirements() { + return new GetV1BenefitsBenefitsIdRequirementsRequestBuilder(sdkConfiguration); + } + + /** + * Get benefit fields requirements by benefit type + * + *

    Returns the field requirements for a given benefit type. + * + *

    scope: `benefits:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param benefitId The benefit type in Gusto. + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1BenefitsBenefitsIdRequirementsResponse getRequirements(String benefitId) { + return getRequirements(Optional.empty(), benefitId); + } + + /** + * Get benefit fields requirements by benefit type + * + *

    Returns the field requirements for a given benefit type. + * + *

    scope: `benefits:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param benefitId The benefit type in Gusto. + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1BenefitsBenefitsIdRequirementsResponse getRequirements(Optional xGustoAPIVersion, String benefitId) { + GetV1BenefitsBenefitsIdRequirementsRequest request = + GetV1BenefitsBenefitsIdRequirementsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .benefitId(benefitId) + .build(); + RequestOperation operation + = new GetV1BenefitsBenefitsIdRequirements.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + /** * Get benefits for a company * @@ -303,7 +486,7 @@ public GetV1CompanyBenefitsCompanyBenefitIdResponse get(String companyBenefitId) */ public GetV1CompanyBenefitsCompanyBenefitIdResponse get( Optional xGustoAPIVersion, String companyBenefitId, - Optional withEmployeeBenefits, Optional include) { + Optional withEmployeeBenefits, Optional include) { GetV1CompanyBenefitsCompanyBenefitIdRequest request = GetV1CompanyBenefitsCompanyBenefitIdRequest .builder() @@ -486,169 +669,6 @@ public DeleteV1CompanyBenefitsCompanyBenefitIdResponse delete(OptionalReturns all benefits supported by Gusto. The benefit object in Gusto contains high level information - * about a particular benefit type and its tax considerations. When companies choose to offer a - * benefit, they are creating a Company Benefit object associated with a particular benefit. - * - *

    scope: `benefits:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The call builder - */ - public GetV1BenefitsRequestBuilder getAll() { - return new GetV1BenefitsRequestBuilder(sdkConfiguration); - } - - /** - * Get all supported benefits - * - *

    Returns all benefits supported by Gusto. The benefit object in Gusto contains high level information - * about a particular benefit type and its tax considerations. When companies choose to offer a - * benefit, they are creating a Company Benefit object associated with a particular benefit. - * - *

    scope: `benefits:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public GetV1BenefitsResponse getAllDirect() { - return getAll(Optional.empty()); - } - - /** - * Get all supported benefits - * - *

    Returns all benefits supported by Gusto. The benefit object in Gusto contains high level information - * about a particular benefit type and its tax considerations. When companies choose to offer a - * benefit, they are creating a Company Benefit object associated with a particular benefit. - * - *

    scope: `benefits:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public GetV1BenefitsResponse getAll(Optional xGustoAPIVersion) { - GetV1BenefitsRequest request = - GetV1BenefitsRequest - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .build(); - RequestOperation operation - = new GetV1Benefits.Sync(sdkConfiguration, _headers); - return operation.handleResponse(operation.doRequest(request)); - } - - /** - * Get a supported benefit - * - *

    Returns a benefit supported by Gusto. The benefit object in Gusto contains high level information - * about a particular benefit type and its tax considerations. When companies choose to offer a - * benefit, they are creating a Company Benefit object associated with a particular benefit. - * - *

    scope: `benefits:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The call builder - */ - public GetV1BenefitsBenefitIdRequestBuilder getSupported() { - return new GetV1BenefitsBenefitIdRequestBuilder(sdkConfiguration); - } - - /** - * Get a supported benefit - * - *

    Returns a benefit supported by Gusto. The benefit object in Gusto contains high level information - * about a particular benefit type and its tax considerations. When companies choose to offer a - * benefit, they are creating a Company Benefit object associated with a particular benefit. - * - *

    scope: `benefits:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param benefitId The benefit type in Gusto. - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public GetV1BenefitsBenefitIdResponse getSupported(String benefitId) { - return getSupported(Optional.empty(), benefitId); - } - - /** - * Get a supported benefit - * - *

    Returns a benefit supported by Gusto. The benefit object in Gusto contains high level information - * about a particular benefit type and its tax considerations. When companies choose to offer a - * benefit, they are creating a Company Benefit object associated with a particular benefit. - * - *

    scope: `benefits:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param benefitId The benefit type in Gusto. - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public GetV1BenefitsBenefitIdResponse getSupported(Optional xGustoAPIVersion, String benefitId) { - GetV1BenefitsBenefitIdRequest request = - GetV1BenefitsBenefitIdRequest - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .benefitId(benefitId) - .build(); - RequestOperation operation - = new GetV1BenefitsBenefitId.Sync(sdkConfiguration, _headers); - return operation.handleResponse(operation.doRequest(request)); - } - - /** - * Get company benefit summary by company benefit id. - * - *

    Returns summary benefit data for the requested company benefit id. - * - *

    Benefits containing PHI are only visible to applications with the `company_benefits:read:phi` scope. - * - *

    scope: `company_benefits:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The call builder - */ - public GetV1BenefitsCompanyBenefitIdSummaryRequestBuilder getSummary() { - return new GetV1BenefitsCompanyBenefitIdSummaryRequestBuilder(sdkConfiguration); - } - - /** - * Get company benefit summary by company benefit id. - * - *

    Returns summary benefit data for the requested company benefit id. - * - *

    Benefits containing PHI are only visible to applications with the `company_benefits:read:phi` scope. - * - *

    scope: `company_benefits:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param request The request object containing all the parameters for the API call. - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public GetV1BenefitsCompanyBenefitIdSummaryResponse getSummary(GetV1BenefitsCompanyBenefitIdSummaryRequest request) { - RequestOperation operation - = new GetV1BenefitsCompanyBenefitIdSummary.Sync(sdkConfiguration, _headers); - return operation.handleResponse(operation.doRequest(request)); - } - /** * Get all employee benefits for a company benefit * @@ -792,60 +812,40 @@ public PutV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsResponse updateEmploy } /** - * Get benefit fields requirements by benefit type + * Get company benefit summary by company benefit id. * - *

    Returns the field requirements for a given benefit type. + *

    Returns summary benefit data for the requested company benefit id. * - *

    scope: `benefits:read` + *

    Benefits containing PHI are only visible to applications with the `company_benefits:read:phi` scope. + * + *

    scope: `company_benefits:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public GetV1BenefitsBenefitsIdRequirementsRequestBuilder getRequirements() { - return new GetV1BenefitsBenefitsIdRequirementsRequestBuilder(sdkConfiguration); + public GetV1BenefitsCompanyBenefitIdSummaryRequestBuilder getSummary() { + return new GetV1BenefitsCompanyBenefitIdSummaryRequestBuilder(sdkConfiguration); } /** - * Get benefit fields requirements by benefit type - * - *

    Returns the field requirements for a given benefit type. - * - *

    scope: `benefits:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. + * Get company benefit summary by company benefit id. * - * @param benefitId The benefit type in Gusto. - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public GetV1BenefitsBenefitsIdRequirementsResponse getRequirements(String benefitId) { - return getRequirements(Optional.empty(), benefitId); - } - - /** - * Get benefit fields requirements by benefit type + *

    Returns summary benefit data for the requested company benefit id. * - *

    Returns the field requirements for a given benefit type. + *

    Benefits containing PHI are only visible to applications with the `company_benefits:read:phi` scope. * - *

    scope: `benefits:read` + *

    scope: `company_benefits:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param benefitId The benefit type in Gusto. + * @param request The request object containing all the parameters for the API call. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1BenefitsBenefitsIdRequirementsResponse getRequirements(Optional xGustoAPIVersion, String benefitId) { - GetV1BenefitsBenefitsIdRequirementsRequest request = - GetV1BenefitsBenefitsIdRequirementsRequest - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .benefitId(benefitId) - .build(); - RequestOperation operation - = new GetV1BenefitsBenefitsIdRequirements.Sync(sdkConfiguration, _headers); + public GetV1BenefitsCompanyBenefitIdSummaryResponse getSummary(GetV1BenefitsCompanyBenefitIdSummaryRequest request) { + RequestOperation operation + = new GetV1BenefitsCompanyBenefitIdSummary.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/ContractorPaymentGroups.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/ContractorPaymentGroups.java index 4b51c1388..cca348c72 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/ContractorPaymentGroups.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/ContractorPaymentGroups.java @@ -72,10 +72,14 @@ public AsyncContractorPaymentGroups async() { } /** - * Get contractor payment groups for a company + * Preview a contractor payment group * - *

    Returns a list of minimal contractor payment groups within a given time period, including totals but - * not associated contractor payments. + *

    Preview a group of contractor payments. Request will validate inputs and return preview of the + * contractor payment group including the expected `debit_date`. The `uuid` field will be null in the + * response. + * + *

    The returned `creation_token` is a required parameter in order to create the contractor payment + * group. * *

    scope: `payrolls:read` * @@ -83,35 +87,79 @@ public AsyncContractorPaymentGroups async() { * * @return The call builder */ - public GetV1CompaniesCompanyIdContractorPaymentGroupsRequestBuilder getList() { - return new GetV1CompaniesCompanyIdContractorPaymentGroupsRequestBuilder(sdkConfiguration); + public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBuilder preview() { + return new PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBuilder(sdkConfiguration); } /** - * Get contractor payment groups for a company + * Preview a contractor payment group * - *

    Returns a list of minimal contractor payment groups within a given time period, including totals but - * not associated contractor payments. + *

    Preview a group of contractor payments. Request will validate inputs and return preview of the + * contractor payment group including the expected `debit_date`. The `uuid` field will be null in the + * response. + * + *

    The returned `creation_token` is a required parameter in order to create the contractor payment + * group. * *

    scope: `payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param request The request object containing all the parameters for the API call. + * @param companyId The UUID of the company + * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1CompaniesCompanyIdContractorPaymentGroupsResponse getList(GetV1CompaniesCompanyIdContractorPaymentGroupsRequest request) { - RequestOperation operation - = new GetV1CompaniesCompanyIdContractorPaymentGroups.Sync(sdkConfiguration, _headers); + public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewResponse preview(String companyId, PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBody requestBody) { + return preview(Optional.empty(), companyId, requestBody); + } + + /** + * Preview a contractor payment group + * + *

    Preview a group of contractor payments. Request will validate inputs and return preview of the + * contractor payment group including the expected `debit_date`. The `uuid` field will be null in the + * response. + * + *

    The returned `creation_token` is a required parameter in order to create the contractor payment + * group. + * + *

    scope: `payrolls:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company + * @param requestBody + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewResponse preview( + Optional xGustoAPIVersion, String companyId, + PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBody requestBody) { + PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequest request = + PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) + .requestBody(requestBody) + .build(); + RequestOperation operation + = new PostV1CompaniesCompanyIdContractorPaymentGroupsPreview.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Create a contractor payment group + * Fund a contractor payment group [DEMO] * - *

    Pay a group of contractors. Information needed depends on the contractor's wage type (hourly vs - * fixed) + *

    > 🚧 Demo action + * > This action is only available in the Demo environment + * + *

    Simulate funding a contractor payment group. Funding only occurs automatically in the production + * environment when bank transactions are generated. Use this action in the demo environment to + * transition a contractor payment group's `status` from `Unfunded` to `Funded`. + * + *

    A `Funded` status is required for generating a contractor payment receipt. * *

    scope: `payrolls:run` * @@ -119,69 +167,72 @@ public GetV1CompaniesCompanyIdContractorPaymentGroupsResponse getList(GetV1Compa * * @return The call builder */ - public PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBuilder create() { - return new PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBuilder(sdkConfiguration); + public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequestBuilder fund() { + return new PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequestBuilder(sdkConfiguration); } /** - * Create a contractor payment group + * Fund a contractor payment group [DEMO] * - *

    Pay a group of contractors. Information needed depends on the contractor's wage type (hourly vs - * fixed) + *

    > 🚧 Demo action + * > This action is only available in the Demo environment + * + *

    Simulate funding a contractor payment group. Funding only occurs automatically in the production + * environment when bank transactions are generated. Use this action in the demo environment to + * transition a contractor payment group's `status` from `Unfunded` to `Funded`. + * + *

    A `Funded` status is required for generating a contractor payment receipt. * *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company - * @param requestBody + * @param contractorPaymentGroupUuid The UUID of the contractor payment group * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostV1CompaniesCompanyIdContractorPaymentGroupsResponse create(String companyId, PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBody requestBody) { - return create(Optional.empty(), companyId, requestBody); + public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundResponse fund(String contractorPaymentGroupUuid) { + return fund(Optional.empty(), contractorPaymentGroupUuid); } /** - * Create a contractor payment group + * Fund a contractor payment group [DEMO] * - *

    Pay a group of contractors. Information needed depends on the contractor's wage type (hourly vs - * fixed) + *

    > 🚧 Demo action + * > This action is only available in the Demo environment + * + *

    Simulate funding a contractor payment group. Funding only occurs automatically in the production + * environment when bank transactions are generated. Use this action in the demo environment to + * transition a contractor payment group's `status` from `Unfunded` to `Funded`. + * + *

    A `Funded` status is required for generating a contractor payment receipt. * *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyId The UUID of the company - * @param requestBody + * @param contractorPaymentGroupUuid The UUID of the contractor payment group * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostV1CompaniesCompanyIdContractorPaymentGroupsResponse create( - Optional xGustoAPIVersion, String companyId, - PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBody requestBody) { - PostV1CompaniesCompanyIdContractorPaymentGroupsRequest request = - PostV1CompaniesCompanyIdContractorPaymentGroupsRequest + public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundResponse fund(Optional xGustoAPIVersion, String contractorPaymentGroupUuid) { + PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest request = + PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .companyId(companyId) - .requestBody(requestBody) + .contractorPaymentGroupUuid(contractorPaymentGroupUuid) .build(); - RequestOperation operation - = new PostV1CompaniesCompanyIdContractorPaymentGroups.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PutV1ContractorPaymentGroupsContractorPaymentGroupIdFund.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Preview a contractor payment group - * - *

    Preview a group of contractor payments. Request will validate inputs and return preview of the - * contractor payment group including the expected `debit_date`. The `uuid` field will be null in the - * response. + * Get contractor payment groups for a company * - *

    The returned `creation_token` is a required parameter in order to create the contractor payment - * group. + *

    Returns a list of minimal contractor payment groups within a given time period, including totals but + * not associated contractor payments. * *

    scope: `payrolls:read` * @@ -189,44 +240,72 @@ public PostV1CompaniesCompanyIdContractorPaymentGroupsResponse create( * * @return The call builder */ - public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBuilder preview() { - return new PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBuilder(sdkConfiguration); + public GetV1CompaniesCompanyIdContractorPaymentGroupsRequestBuilder getList() { + return new GetV1CompaniesCompanyIdContractorPaymentGroupsRequestBuilder(sdkConfiguration); } /** - * Preview a contractor payment group - * - *

    Preview a group of contractor payments. Request will validate inputs and return preview of the - * contractor payment group including the expected `debit_date`. The `uuid` field will be null in the - * response. + * Get contractor payment groups for a company * - *

    The returned `creation_token` is a required parameter in order to create the contractor payment - * group. + *

    Returns a list of minimal contractor payment groups within a given time period, including totals but + * not associated contractor payments. * *

    scope: `payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * + * @param request The request object containing all the parameters for the API call. + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1CompaniesCompanyIdContractorPaymentGroupsResponse getList(GetV1CompaniesCompanyIdContractorPaymentGroupsRequest request) { + RequestOperation operation + = new GetV1CompaniesCompanyIdContractorPaymentGroups.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + + /** + * Create a contractor payment group + * + *

    Pay a group of contractors. Information needed depends on the contractor's wage type (hourly vs + * fixed) + * + *

    scope: `payrolls:run` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBuilder create() { + return new PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBuilder(sdkConfiguration); + } + + /** + * Create a contractor payment group + * + *

    Pay a group of contractors. Information needed depends on the contractor's wage type (hourly vs + * fixed) + * + *

    scope: `payrolls:run` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * * @param companyId The UUID of the company * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewResponse preview(String companyId, PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBody requestBody) { - return preview(Optional.empty(), companyId, requestBody); + public PostV1CompaniesCompanyIdContractorPaymentGroupsResponse create(String companyId, PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBody requestBody) { + return create(Optional.empty(), companyId, requestBody); } /** - * Preview a contractor payment group - * - *

    Preview a group of contractor payments. Request will validate inputs and return preview of the - * contractor payment group including the expected `debit_date`. The `uuid` field will be null in the - * response. + * Create a contractor payment group * - *

    The returned `creation_token` is a required parameter in order to create the contractor payment - * group. + *

    Pay a group of contractors. Information needed depends on the contractor's wage type (hourly vs + * fixed) * - *

    scope: `payrolls:read` + *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * @@ -236,18 +315,18 @@ public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewResponse preview(St * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewResponse preview( - Optional xGustoAPIVersion, String companyId, - PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBody requestBody) { - PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequest request = - PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequest + public PostV1CompaniesCompanyIdContractorPaymentGroupsResponse create( + Optional xGustoAPIVersion, String companyId, + PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBody requestBody) { + PostV1CompaniesCompanyIdContractorPaymentGroupsRequest request = + PostV1CompaniesCompanyIdContractorPaymentGroupsRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .companyId(companyId) .requestBody(requestBody) .build(); - RequestOperation operation - = new PostV1CompaniesCompanyIdContractorPaymentGroupsPreview.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PostV1CompaniesCompanyIdContractorPaymentGroups.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } @@ -280,7 +359,7 @@ public GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder get() * @throws RuntimeException subclass if the API call fails */ public GetV1ContractorPaymentGroupsContractorPaymentGroupIdResponse get(String contractorPaymentGroupUuid) { - return get(contractorPaymentGroupUuid, Optional.empty()); + return get(Optional.empty(), contractorPaymentGroupUuid); } /** @@ -292,17 +371,17 @@ public GetV1ContractorPaymentGroupsContractorPaymentGroupIdResponse get(String c * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param contractorPaymentGroupUuid The UUID of the contractor payment group * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param contractorPaymentGroupUuid The UUID of the contractor payment group * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1ContractorPaymentGroupsContractorPaymentGroupIdResponse get(String contractorPaymentGroupUuid, Optional xGustoAPIVersion) { + public GetV1ContractorPaymentGroupsContractorPaymentGroupIdResponse get(Optional xGustoAPIVersion, String contractorPaymentGroupUuid) { GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest request = GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest .builder() - .contractorPaymentGroupUuid(contractorPaymentGroupUuid) .xGustoAPIVersion(xGustoAPIVersion) + .contractorPaymentGroupUuid(contractorPaymentGroupUuid) .build(); RequestOperation operation = new GetV1ContractorPaymentGroupsContractorPaymentGroupId.Sync(sdkConfiguration, _headers); @@ -340,7 +419,7 @@ public DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder del * @throws RuntimeException subclass if the API call fails */ public DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdResponse delete(String contractorPaymentGroupUuid) { - return delete(contractorPaymentGroupUuid, Optional.empty()); + return delete(Optional.empty(), contractorPaymentGroupUuid); } /** @@ -353,102 +432,23 @@ public DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdResponse delete(St * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param contractorPaymentGroupUuid The UUID of the contractor payment group * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param contractorPaymentGroupUuid The UUID of the contractor payment group * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdResponse delete(String contractorPaymentGroupUuid, Optional xGustoAPIVersion) { + public DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdResponse delete(Optional xGustoAPIVersion, String contractorPaymentGroupUuid) { DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest request = DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest .builder() - .contractorPaymentGroupUuid(contractorPaymentGroupUuid) .xGustoAPIVersion(xGustoAPIVersion) + .contractorPaymentGroupUuid(contractorPaymentGroupUuid) .build(); RequestOperation operation = new DeleteV1ContractorPaymentGroupsContractorPaymentGroupId.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } - /** - * Fund a contractor payment group [DEMO] - * - *

    > 🚧 Demo action - * > This action is only available in the Demo environment - * - *

    Simulate funding a contractor payment group. Funding only occurs automatically in the production - * environment when bank transactions are generated. Use this action in the demo environment to - * transition a contractor payment group's `status` from `Unfunded` to `Funded`. - * - *

    A `Funded` status is required for generating a contractor payment receipt. - * - *

    scope: `payrolls:run` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The call builder - */ - public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequestBuilder fund() { - return new PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequestBuilder(sdkConfiguration); - } - - /** - * Fund a contractor payment group [DEMO] - * - *

    > 🚧 Demo action - * > This action is only available in the Demo environment - * - *

    Simulate funding a contractor payment group. Funding only occurs automatically in the production - * environment when bank transactions are generated. Use this action in the demo environment to - * transition a contractor payment group's `status` from `Unfunded` to `Funded`. - * - *

    A `Funded` status is required for generating a contractor payment receipt. - * - *

    scope: `payrolls:run` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param contractorPaymentGroupUuid The UUID of the contractor payment group - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundResponse fund(String contractorPaymentGroupUuid) { - return fund(contractorPaymentGroupUuid, Optional.empty()); - } - - /** - * Fund a contractor payment group [DEMO] - * - *

    > 🚧 Demo action - * > This action is only available in the Demo environment - * - *

    Simulate funding a contractor payment group. Funding only occurs automatically in the production - * environment when bank transactions are generated. Use this action in the demo environment to - * transition a contractor payment group's `status` from `Unfunded` to `Funded`. - * - *

    A `Funded` status is required for generating a contractor payment receipt. - * - *

    scope: `payrolls:run` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param contractorPaymentGroupUuid The UUID of the contractor payment group - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundResponse fund(String contractorPaymentGroupUuid, Optional xGustoAPIVersion) { - PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest request = - PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest - .builder() - .contractorPaymentGroupUuid(contractorPaymentGroupUuid) - .xGustoAPIVersion(xGustoAPIVersion) - .build(); - RequestOperation operation - = new PutV1ContractorPaymentGroupsContractorPaymentGroupIdFund.Sync(sdkConfiguration, _headers); - return operation.handleResponse(operation.doRequest(request)); - } - /** * Get partner disbursements for a contractor payment group * @@ -478,7 +478,7 @@ public GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder getV1Con * @throws RuntimeException subclass if the API call fails */ public GetV1ContractorPaymentGroupsIdPartnerDisbursementsResponse getV1ContractorPaymentGroupsIdPartnerDisbursements(String id) { - return getV1ContractorPaymentGroupsIdPartnerDisbursements(id, Optional.empty()); + return getV1ContractorPaymentGroupsIdPartnerDisbursements(Optional.empty(), id); } /** @@ -490,17 +490,17 @@ public GetV1ContractorPaymentGroupsIdPartnerDisbursementsResponse getV1Contracto * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param id The UUID of the contractor payment group * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param id The UUID of the contractor payment group * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1ContractorPaymentGroupsIdPartnerDisbursementsResponse getV1ContractorPaymentGroupsIdPartnerDisbursements(String id, Optional xGustoAPIVersion) { + public GetV1ContractorPaymentGroupsIdPartnerDisbursementsResponse getV1ContractorPaymentGroupsIdPartnerDisbursements(Optional xGustoAPIVersion, String id) { GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest request = GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest .builder() - .id(id) .xGustoAPIVersion(xGustoAPIVersion) + .id(id) .build(); RequestOperation operation = new GetV1ContractorPaymentGroupsIdPartnerDisbursements.Sync(sdkConfiguration, _headers); @@ -536,7 +536,7 @@ public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder patchV * @throws RuntimeException subclass if the API call fails */ public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsResponse patchV1ContractorPaymentGroupsIdPartnerDisbursements(String id) { - return patchV1ContractorPaymentGroupsIdPartnerDisbursements(id, Optional.empty(), Optional.empty()); + return patchV1ContractorPaymentGroupsIdPartnerDisbursements(Optional.empty(), id, Optional.empty()); } /** @@ -548,20 +548,20 @@ public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsResponse patchV1Contr * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param id The UUID of the contractor payment group * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param id The UUID of the contractor payment group * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsResponse patchV1ContractorPaymentGroupsIdPartnerDisbursements( - String id, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String id, Optional requestBody) { PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest request = PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest .builder() - .id(id) .xGustoAPIVersion(xGustoAPIVersion) + .id(id) .requestBody(requestBody) .build(); RequestOperation operation diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/ContractorPayments.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/ContractorPayments.java index 5b3617ec9..f432d9a44 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/ContractorPayments.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/ContractorPayments.java @@ -34,6 +34,9 @@ import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ContractorPaymentsContractorPaymentUuidReceiptRequest; import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ContractorPaymentsContractorPaymentUuidReceiptRequestBuilder; import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ContractorPaymentsContractorPaymentUuidReceiptResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ContractorsContractorUuidPaymentsRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ContractorsContractorUuidPaymentsRequestBuilder; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ContractorsContractorUuidPaymentsResponse; import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1CompaniesCompanyIdContractorPaymentsHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1CompaniesCompanyIdContractorPaymentsRequest; import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1CompaniesCompanyIdContractorPaymentsRequestBuilder; @@ -45,6 +48,7 @@ import com.gusto.embedded_api_v_2025_11_15.operations.GetV1ContractorPaymentsContractorPaymentIdPdf; import com.gusto.embedded_api_v_2025_11_15.operations.GetV1ContractorPaymentsContractorPaymentUuidFund; import com.gusto.embedded_api_v_2025_11_15.operations.GetV1ContractorPaymentsContractorPaymentUuidReceipt; +import com.gusto.embedded_api_v_2025_11_15.operations.GetV1ContractorsContractorUuidPayments; import com.gusto.embedded_api_v_2025_11_15.operations.PostV1CompaniesCompanyIdContractorPayments; import com.gusto.embedded_api_v_2025_11_15.utils.Headers; import java.lang.String; @@ -71,169 +75,100 @@ public AsyncContractorPayments async() { } /** - * Get a single contractor payment receipt + * Get contractor payments * - *

    Returns a contractor payment receipt. + *

    Returns a paginated list of payments for a single contractor. * - *

    Notes: - * * Receipts are only available for direct deposit payments and are only available once those payments - * have been funded. - * * Payroll Receipt requests for payrolls which do not have receipts available (e.g. payment by check) - * will return a 404 status. - * * Hour and dollar amounts are returned as string representations of numeric decimals. - * * Dollar amounts are represented to the cent. - * * If no data has yet be inserted for a given field, it defaults to “0.00” (for fixed amounts). + *

    Results are sortable by `check_date` or `created_at`. Append `:asc` or `:desc` to control direction + * (e.g., `check_date:desc`). * - *

    scope: `payrolls:read` + *

    scope: `contractor_pay_stubs:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public GetV1ContractorPaymentsContractorPaymentUuidReceiptRequestBuilder getReceipt() { - return new GetV1ContractorPaymentsContractorPaymentUuidReceiptRequestBuilder(sdkConfiguration); + public GetV1ContractorsContractorUuidPaymentsRequestBuilder getV1ContractorsContractorUuidPayments() { + return new GetV1ContractorsContractorUuidPaymentsRequestBuilder(sdkConfiguration); } /** - * Get a single contractor payment receipt + * Get contractor payments * - *

    Returns a contractor payment receipt. + *

    Returns a paginated list of payments for a single contractor. * - *

    Notes: - * * Receipts are only available for direct deposit payments and are only available once those payments - * have been funded. - * * Payroll Receipt requests for payrolls which do not have receipts available (e.g. payment by check) - * will return a 404 status. - * * Hour and dollar amounts are returned as string representations of numeric decimals. - * * Dollar amounts are represented to the cent. - * * If no data has yet be inserted for a given field, it defaults to “0.00” (for fixed amounts). + *

    Results are sortable by `check_date` or `created_at`. Append `:asc` or `:desc` to control direction + * (e.g., `check_date:desc`). * - *

    scope: `payrolls:read` + *

    scope: `contractor_pay_stubs:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param contractorPaymentUuid The UUID of the contractor payment - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public GetV1ContractorPaymentsContractorPaymentUuidReceiptResponse getReceipt(String contractorPaymentUuid) { - return getReceipt(Optional.empty(), contractorPaymentUuid); - } - - /** - * Get a single contractor payment receipt - * - *

    Returns a contractor payment receipt. - * - *

    Notes: - * * Receipts are only available for direct deposit payments and are only available once those payments - * have been funded. - * * Payroll Receipt requests for payrolls which do not have receipts available (e.g. payment by check) - * will return a 404 status. - * * Hour and dollar amounts are returned as string representations of numeric decimals. - * * Dollar amounts are represented to the cent. - * * If no data has yet be inserted for a given field, it defaults to “0.00” (for fixed amounts). - * - *

    scope: `payrolls:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param contractorPaymentUuid The UUID of the contractor payment + * @param request The request object containing all the parameters for the API call. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1ContractorPaymentsContractorPaymentUuidReceiptResponse getReceipt(Optional xGustoAPIVersion, String contractorPaymentUuid) { - GetV1ContractorPaymentsContractorPaymentUuidReceiptRequest request = - GetV1ContractorPaymentsContractorPaymentUuidReceiptRequest - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .contractorPaymentUuid(contractorPaymentUuid) - .build(); - RequestOperation operation - = new GetV1ContractorPaymentsContractorPaymentUuidReceipt.Sync(sdkConfiguration, _headers); + public GetV1ContractorsContractorUuidPaymentsResponse getV1ContractorsContractorUuidPayments(GetV1ContractorsContractorUuidPaymentsRequest request) { + RequestOperation operation + = new GetV1ContractorsContractorUuidPayments.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Fund a contractor payment [DEMO] - * - *

    > 🚧 Demo action - * > - * > This action is only available in the Demo environment - * - *

    Simulate funding a contractor payment. Funding only occurs automatically in the production - * environment when bank transactions are generated. Use this action in the demo environment to - * transition a contractor payment's `status` from `Unfunded` to `Funded`. + * Get a contractor payment PDF * - *

    A `Funded` status is required for generating a contractor payment receipt. + *

    Get a PDF document for a single contractor payment. * - *

    scope: `payrolls:run` + *

    scope: `payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public GetV1ContractorPaymentsContractorPaymentUuidFundRequestBuilder fund() { - return new GetV1ContractorPaymentsContractorPaymentUuidFundRequestBuilder(sdkConfiguration); + public GetV1ContractorPaymentsContractorPaymentIdPdfRequestBuilder getV1ContractorPaymentsContractorPaymentIdPdf() { + return new GetV1ContractorPaymentsContractorPaymentIdPdfRequestBuilder(sdkConfiguration); } /** - * Fund a contractor payment [DEMO] - * - *

    > 🚧 Demo action - * > - * > This action is only available in the Demo environment - * - *

    Simulate funding a contractor payment. Funding only occurs automatically in the production - * environment when bank transactions are generated. Use this action in the demo environment to - * transition a contractor payment's `status` from `Unfunded` to `Funded`. + * Get a contractor payment PDF * - *

    A `Funded` status is required for generating a contractor payment receipt. + *

    Get a PDF document for a single contractor payment. * - *

    scope: `payrolls:run` + *

    scope: `payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param contractorPaymentUuid The UUID of the contractor payment + * @param contractorPaymentId The UUID of the contractor payment * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1ContractorPaymentsContractorPaymentUuidFundResponse fund(String contractorPaymentUuid) { - return fund(Optional.empty(), contractorPaymentUuid); + public GetV1ContractorPaymentsContractorPaymentIdPdfResponse getV1ContractorPaymentsContractorPaymentIdPdf(String contractorPaymentId) { + return getV1ContractorPaymentsContractorPaymentIdPdf(Optional.empty(), contractorPaymentId); } /** - * Fund a contractor payment [DEMO] - * - *

    > 🚧 Demo action - * > - * > This action is only available in the Demo environment - * - *

    Simulate funding a contractor payment. Funding only occurs automatically in the production - * environment when bank transactions are generated. Use this action in the demo environment to - * transition a contractor payment's `status` from `Unfunded` to `Funded`. + * Get a contractor payment PDF * - *

    A `Funded` status is required for generating a contractor payment receipt. + *

    Get a PDF document for a single contractor payment. * - *

    scope: `payrolls:run` + *

    scope: `payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param contractorPaymentUuid The UUID of the contractor payment + * @param contractorPaymentId The UUID of the contractor payment * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1ContractorPaymentsContractorPaymentUuidFundResponse fund(Optional xGustoAPIVersion, String contractorPaymentUuid) { - GetV1ContractorPaymentsContractorPaymentUuidFundRequest request = - GetV1ContractorPaymentsContractorPaymentUuidFundRequest + public GetV1ContractorPaymentsContractorPaymentIdPdfResponse getV1ContractorPaymentsContractorPaymentIdPdf(Optional xGustoAPIVersion, String contractorPaymentId) { + GetV1ContractorPaymentsContractorPaymentIdPdfRequest request = + GetV1ContractorPaymentsContractorPaymentIdPdfRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .contractorPaymentUuid(contractorPaymentUuid) + .contractorPaymentId(contractorPaymentId) .build(); - RequestOperation operation - = new GetV1ContractorPaymentsContractorPaymentUuidFund.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new GetV1ContractorPaymentsContractorPaymentIdPdf.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } @@ -542,9 +477,18 @@ public GetCompaniesCompanyUuidContractorPaymentsPreviewResponse preview( } /** - * Get a contractor payment PDF + * Get a single contractor payment receipt * - *

    Get a PDF document for a single contractor payment. + *

    Returns a contractor payment receipt. + * + *

    Notes: + * * Receipts are only available for direct deposit payments and are only available once those payments + * have been funded. + * * Payroll Receipt requests for payrolls which do not have receipts available (e.g. payment by check) + * will return a 404 status. + * * Hour and dollar amounts are returned as string representations of numeric decimals. + * * Dollar amounts are represented to the cent. + * * If no data has yet be inserted for a given field, it defaults to “0.00” (for fixed amounts). * *

    scope: `payrolls:read` * @@ -552,50 +496,150 @@ public GetCompaniesCompanyUuidContractorPaymentsPreviewResponse preview( * * @return The call builder */ - public GetV1ContractorPaymentsContractorPaymentIdPdfRequestBuilder getV1ContractorPaymentsContractorPaymentIdPdf() { - return new GetV1ContractorPaymentsContractorPaymentIdPdfRequestBuilder(sdkConfiguration); + public GetV1ContractorPaymentsContractorPaymentUuidReceiptRequestBuilder getReceipt() { + return new GetV1ContractorPaymentsContractorPaymentUuidReceiptRequestBuilder(sdkConfiguration); } /** - * Get a contractor payment PDF + * Get a single contractor payment receipt * - *

    Get a PDF document for a single contractor payment. + *

    Returns a contractor payment receipt. + * + *

    Notes: + * * Receipts are only available for direct deposit payments and are only available once those payments + * have been funded. + * * Payroll Receipt requests for payrolls which do not have receipts available (e.g. payment by check) + * will return a 404 status. + * * Hour and dollar amounts are returned as string representations of numeric decimals. + * * Dollar amounts are represented to the cent. + * * If no data has yet be inserted for a given field, it defaults to “0.00” (for fixed amounts). * *

    scope: `payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param contractorPaymentId The UUID of the contractor payment + * @param contractorPaymentUuid The UUID of the contractor payment * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1ContractorPaymentsContractorPaymentIdPdfResponse getV1ContractorPaymentsContractorPaymentIdPdf(String contractorPaymentId) { - return getV1ContractorPaymentsContractorPaymentIdPdf(Optional.empty(), contractorPaymentId); + public GetV1ContractorPaymentsContractorPaymentUuidReceiptResponse getReceipt(String contractorPaymentUuid) { + return getReceipt(Optional.empty(), contractorPaymentUuid); } /** - * Get a contractor payment PDF + * Get a single contractor payment receipt * - *

    Get a PDF document for a single contractor payment. + *

    Returns a contractor payment receipt. + * + *

    Notes: + * * Receipts are only available for direct deposit payments and are only available once those payments + * have been funded. + * * Payroll Receipt requests for payrolls which do not have receipts available (e.g. payment by check) + * will return a 404 status. + * * Hour and dollar amounts are returned as string representations of numeric decimals. + * * Dollar amounts are represented to the cent. + * * If no data has yet be inserted for a given field, it defaults to “0.00” (for fixed amounts). * *

    scope: `payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param contractorPaymentId The UUID of the contractor payment + * @param contractorPaymentUuid The UUID of the contractor payment * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1ContractorPaymentsContractorPaymentIdPdfResponse getV1ContractorPaymentsContractorPaymentIdPdf(Optional xGustoAPIVersion, String contractorPaymentId) { - GetV1ContractorPaymentsContractorPaymentIdPdfRequest request = - GetV1ContractorPaymentsContractorPaymentIdPdfRequest + public GetV1ContractorPaymentsContractorPaymentUuidReceiptResponse getReceipt(Optional xGustoAPIVersion, String contractorPaymentUuid) { + GetV1ContractorPaymentsContractorPaymentUuidReceiptRequest request = + GetV1ContractorPaymentsContractorPaymentUuidReceiptRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .contractorPaymentId(contractorPaymentId) + .contractorPaymentUuid(contractorPaymentUuid) .build(); - RequestOperation operation - = new GetV1ContractorPaymentsContractorPaymentIdPdf.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new GetV1ContractorPaymentsContractorPaymentUuidReceipt.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + + /** + * Fund a contractor payment [DEMO] + * + *

    > 🚧 Demo action + * > + * > This action is only available in the Demo environment + * + *

    Simulate funding a contractor payment. Funding only occurs automatically in the production + * environment when bank transactions are generated. Use this action in the demo environment to + * transition a contractor payment's `status` from `Unfunded` to `Funded`. + * + *

    A `Funded` status is required for generating a contractor payment receipt. + * + *

    scope: `payrolls:run` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public GetV1ContractorPaymentsContractorPaymentUuidFundRequestBuilder fund() { + return new GetV1ContractorPaymentsContractorPaymentUuidFundRequestBuilder(sdkConfiguration); + } + + /** + * Fund a contractor payment [DEMO] + * + *

    > 🚧 Demo action + * > + * > This action is only available in the Demo environment + * + *

    Simulate funding a contractor payment. Funding only occurs automatically in the production + * environment when bank transactions are generated. Use this action in the demo environment to + * transition a contractor payment's `status` from `Unfunded` to `Funded`. + * + *

    A `Funded` status is required for generating a contractor payment receipt. + * + *

    scope: `payrolls:run` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param contractorPaymentUuid The UUID of the contractor payment + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1ContractorPaymentsContractorPaymentUuidFundResponse fund(String contractorPaymentUuid) { + return fund(Optional.empty(), contractorPaymentUuid); + } + + /** + * Fund a contractor payment [DEMO] + * + *

    > 🚧 Demo action + * > + * > This action is only available in the Demo environment + * + *

    Simulate funding a contractor payment. Funding only occurs automatically in the production + * environment when bank transactions are generated. Use this action in the demo environment to + * transition a contractor payment's `status` from `Unfunded` to `Funded`. + * + *

    A `Funded` status is required for generating a contractor payment receipt. + * + *

    scope: `payrolls:run` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param contractorPaymentUuid The UUID of the contractor payment + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1ContractorPaymentsContractorPaymentUuidFundResponse fund(Optional xGustoAPIVersion, String contractorPaymentUuid) { + GetV1ContractorPaymentsContractorPaymentUuidFundRequest request = + GetV1ContractorPaymentsContractorPaymentUuidFundRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .contractorPaymentUuid(contractorPaymentUuid) + .build(); + RequestOperation operation + = new GetV1ContractorPaymentsContractorPaymentUuidFund.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/Contractors.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/Contractors.java index c5074171e..e09d80d5f 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/Contractors.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/Contractors.java @@ -107,106 +107,10 @@ public AsyncContractors async() { } /** - * Get contractors of a company - * - *

    Get all contractors, active and inactive, individual and business, for a company. - * - *

    scope: `contractors:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The call builder - */ - public GetV1CompaniesCompanyUuidContractorsRequestBuilder list() { - return new GetV1CompaniesCompanyUuidContractorsRequestBuilder(sdkConfiguration); - } - - /** - * Get contractors of a company - * - *

    Get all contractors, active and inactive, individual and business, for a company. - * - *

    scope: `contractors:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param request The request object containing all the parameters for the API call. - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public GetV1CompaniesCompanyUuidContractorsResponse list(GetV1CompaniesCompanyUuidContractorsRequest request) { - RequestOperation operation - = new GetV1CompaniesCompanyUuidContractors.Sync(sdkConfiguration, _headers); - return operation.handleResponse(operation.doRequest(request)); - } - - /** - * Create a contractor - * - *

    Create an individual or business contractor. - * - *

    scope: `contractors:manage` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The call builder - */ - public PostV1CompaniesCompanyUuidContractorsRequestBuilder create() { - return new PostV1CompaniesCompanyUuidContractorsRequestBuilder(sdkConfiguration); - } - - /** - * Create a contractor - * - *

    Create an individual or business contractor. - * - *

    scope: `contractors:manage` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param companyUuid The UUID of the company - * @param contractorCreateRequestBody Request body for creating a contractor. - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public PostV1CompaniesCompanyUuidContractorsResponse create(String companyUuid, ContractorCreateRequestBody contractorCreateRequestBody) { - return create(Optional.empty(), companyUuid, contractorCreateRequestBody); - } - - /** - * Create a contractor - * - *

    Create an individual or business contractor. - * - *

    scope: `contractors:manage` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyUuid The UUID of the company - * @param contractorCreateRequestBody Request body for creating a contractor. - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public PostV1CompaniesCompanyUuidContractorsResponse create( - Optional xGustoAPIVersion, String companyUuid, - ContractorCreateRequestBody contractorCreateRequestBody) { - PostV1CompaniesCompanyUuidContractorsRequest request = - PostV1CompaniesCompanyUuidContractorsRequest - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .companyUuid(companyUuid) - .contractorCreateRequestBody(contractorCreateRequestBody) - .build(); - RequestOperation operation - = new PostV1CompaniesCompanyUuidContractors.Sync(sdkConfiguration, _headers); - return operation.handleResponse(operation.doRequest(request)); - } - - /** - * Get a contractor + * Get a contractor address * - *

    Get a contractor. + *

    The address of a contractor is used to determine certain tax information about them. Addresses are + * geocoded on create and update to ensure validity. * *

    scope: `contractors:read` * @@ -214,14 +118,15 @@ public PostV1CompaniesCompanyUuidContractorsResponse create( * * @return The call builder */ - public GetV1ContractorsContractorUuidRequestBuilder get() { - return new GetV1ContractorsContractorUuidRequestBuilder(sdkConfiguration); + public GetV1ContractorsContractorUuidAddressRequestBuilder getAddress() { + return new GetV1ContractorsContractorUuidAddressRequestBuilder(sdkConfiguration); } /** - * Get a contractor + * Get a contractor address * - *

    Get a contractor. + *

    The address of a contractor is used to determine certain tax information about them. Addresses are + * geocoded on create and update to ensure validity. * *

    scope: `contractors:read` * @@ -231,14 +136,15 @@ public GetV1ContractorsContractorUuidRequestBuilder get() { * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1ContractorsContractorUuidResponse get(String contractorUuid) { - return get(Optional.empty(), contractorUuid, Optional.empty()); + public GetV1ContractorsContractorUuidAddressResponse getAddress(String contractorUuid) { + return getAddress(Optional.empty(), contractorUuid); } /** - * Get a contractor + * Get a contractor address * - *

    Get a contractor. + *

    The address of a contractor is used to determine certain tax information about them. Addresses are + * geocoded on create and update to ensure validity. * *

    scope: `contractors:read` * @@ -246,35 +152,31 @@ public GetV1ContractorsContractorUuidResponse get(String contractorUuid) { * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param contractorUuid The UUID of the contractor - * @param include Include the requested attribute(s) in each contractor response. Multiple options are comma separated. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1ContractorsContractorUuidResponse get( - Optional xGustoAPIVersion, String contractorUuid, - Optional> include) { - GetV1ContractorsContractorUuidRequest request = - GetV1ContractorsContractorUuidRequest + public GetV1ContractorsContractorUuidAddressResponse getAddress(Optional xGustoAPIVersion, String contractorUuid) { + GetV1ContractorsContractorUuidAddressRequest request = + GetV1ContractorsContractorUuidAddressRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .contractorUuid(contractorUuid) - .include(include) .build(); - RequestOperation operation - = new GetV1ContractorsContractorUuid.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new GetV1ContractorsContractorUuidAddress.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Update a contractor + * Create or update a contractor's address * - *

    Update a contractor. + *

    The address of a contractor is used to determine certain tax information about them. Addresses are + * geocoded on create and update to ensure validity. * - *

    > 🚧 Warning + *

    > 🚧 Contractors can only have one address. * > - * > Watch out when changing a contractor's type (when the contractor is finished onboarding). - * Specifically, changing contractor type can be dangerous since Gusto won't recognize and file two - * separate 1099s if they simply change from business to individual + * > When a contractor is created, an address is created for them by default. Updating the address + * will replace the existing address. * *

    scope: `contractors:write` * @@ -282,44 +184,44 @@ public GetV1ContractorsContractorUuidResponse get( * * @return The call builder */ - public PutV1ContractorsContractorUuidRequestBuilder update() { - return new PutV1ContractorsContractorUuidRequestBuilder(sdkConfiguration); + public PutV1ContractorsContractorUuidAddressRequestBuilder updateAddress() { + return new PutV1ContractorsContractorUuidAddressRequestBuilder(sdkConfiguration); } /** - * Update a contractor + * Create or update a contractor's address * - *

    Update a contractor. + *

    The address of a contractor is used to determine certain tax information about them. Addresses are + * geocoded on create and update to ensure validity. * - *

    > 🚧 Warning + *

    > 🚧 Contractors can only have one address. * > - * > Watch out when changing a contractor's type (when the contractor is finished onboarding). - * Specifically, changing contractor type can be dangerous since Gusto won't recognize and file two - * separate 1099s if they simply change from business to individual + * > When a contractor is created, an address is created for them by default. Updating the address + * will replace the existing address. * *

    scope: `contractors:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param contractorUuid The UUID of the contractor - * @param contractorUpdateRequestBody Request body for updating a contractor. + * @param contractorAddressUpdateBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1ContractorsContractorUuidResponse update(String contractorUuid, ContractorUpdateRequestBody contractorUpdateRequestBody) { - return update(Optional.empty(), contractorUuid, contractorUpdateRequestBody); + public PutV1ContractorsContractorUuidAddressResponse updateAddress(String contractorUuid, ContractorAddressUpdateBody contractorAddressUpdateBody) { + return updateAddress(Optional.empty(), contractorUuid, contractorAddressUpdateBody); } /** - * Update a contractor + * Create or update a contractor's address * - *

    Update a contractor. + *

    The address of a contractor is used to determine certain tax information about them. Addresses are + * geocoded on create and update to ensure validity. * - *

    > 🚧 Warning + *

    > 🚧 Contractors can only have one address. * > - * > Watch out when changing a contractor's type (when the contractor is finished onboarding). - * Specifically, changing contractor type can be dangerous since Gusto won't recognize and file two - * separate 1099s if they simply change from business to individual + * > When a contractor is created, an address is created for them by default. Updating the address + * will replace the existing address. * *

    scope: `contractors:write` * @@ -327,229 +229,322 @@ public PutV1ContractorsContractorUuidResponse update(String contractorUuid, Cont * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param contractorUuid The UUID of the contractor - * @param contractorUpdateRequestBody Request body for updating a contractor. + * @param contractorAddressUpdateBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1ContractorsContractorUuidResponse update( - Optional xGustoAPIVersion, String contractorUuid, - ContractorUpdateRequestBody contractorUpdateRequestBody) { - PutV1ContractorsContractorUuidRequest request = - PutV1ContractorsContractorUuidRequest + public PutV1ContractorsContractorUuidAddressResponse updateAddress( + Optional xGustoAPIVersion, String contractorUuid, + ContractorAddressUpdateBody contractorAddressUpdateBody) { + PutV1ContractorsContractorUuidAddressRequest request = + PutV1ContractorsContractorUuidAddressRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .contractorUuid(contractorUuid) - .contractorUpdateRequestBody(contractorUpdateRequestBody) + .contractorAddressUpdateBody(contractorAddressUpdateBody) .build(); - RequestOperation operation - = new PutV1ContractorsContractorUuid.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PutV1ContractorsContractorUuidAddress.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Delete a contractor + * List contractor payment details * - *

    A contractor can only be deleted when there are no contractor payments. + *

    Get payment details for contractors in a company. This endpoint returns a list of all contractors + * associated with the specified company, including their payment methods and bank account details + * if they are paid via direct deposit. * - *

    scope: `contractors:manage` + *

    For contractors paid by direct deposit, the response includes their bank account information + * with sensitive data masked for security. The payment details also include information about + * how their payments are split if they have multiple bank accounts configured. * - *

    If set, this operation will use Security#companyAccessAuth from the global security. + *

    For contractors paid by check, only the basic payment method information is returned. * - * @return The call builder - */ - public DeleteV1ContractorsContractorUuidRequestBuilder delete() { - return new DeleteV1ContractorsContractorUuidRequestBuilder(sdkConfiguration); - } - - /** - * Delete a contractor + *

    ### Response Details + * - For direct deposit contractors: + * - Bank account details (masked) + * - Payment splits configuration + * - Routing numbers + * - Account types + * - For check payments: + * - Basic payment method designation * - *

    A contractor can only be deleted when there are no contractor payments. + *

    ### Common Use Cases + * - Fetching contractor payment information for payroll processing + * - Verifying contractor payment methods + * - Reviewing payment split configurations * - *

    scope: `contractors:manage` + *

    `encrypted_account_number` is available only with the additional scope + * `contractor_payment_methods:read:account_numbers`. + * + *

    scope: `contractor_payment_methods:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param contractorUuid The UUID of the contractor - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails + * @return The call builder */ - public DeleteV1ContractorsContractorUuidResponse delete(String contractorUuid) { - return delete(Optional.empty(), contractorUuid); + public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder getV1CompaniesCompanyIdContractorsPaymentDetails() { + return new GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder(sdkConfiguration); } /** - * Delete a contractor + * List contractor payment details * - *

    A contractor can only be deleted when there are no contractor payments. + *

    Get payment details for contractors in a company. This endpoint returns a list of all contractors + * associated with the specified company, including their payment methods and bank account details + * if they are paid via direct deposit. * - *

    scope: `contractors:manage` + *

    For contractors paid by direct deposit, the response includes their bank account information + * with sensitive data masked for security. The payment details also include information about + * how their payments are split if they have multiple bank accounts configured. * - *

    If set, this operation will use Security#companyAccessAuth from the global security. + *

    For contractors paid by check, only the basic payment method information is returned. + * + *

    ### Response Details + * - For direct deposit contractors: + * - Bank account details (masked) + * - Payment splits configuration + * - Routing numbers + * - Account types + * - For check payments: + * - Basic payment method designation + * + *

    ### Common Use Cases + * - Fetching contractor payment information for payroll processing + * - Verifying contractor payment methods + * - Reviewing payment split configurations + * + *

    `encrypted_account_number` is available only with the additional scope + * `contractor_payment_methods:read:account_numbers`. + * + *

    scope: `contractor_payment_methods:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param companyId The UUID of the company. This identifies the company whose contractor payment details you want to retrieve. + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1CompaniesCompanyIdContractorsPaymentDetailsResponse getV1CompaniesCompanyIdContractorsPaymentDetails(String companyId) { + return getV1CompaniesCompanyIdContractorsPaymentDetails(Optional.empty(), companyId, Optional.empty(), + Optional.empty()); + } + + /** + * List contractor payment details + * + *

    Get payment details for contractors in a company. This endpoint returns a list of all contractors + * associated with the specified company, including their payment methods and bank account details + * if they are paid via direct deposit. + * + *

    For contractors paid by direct deposit, the response includes their bank account information + * with sensitive data masked for security. The payment details also include information about + * how their payments are split if they have multiple bank accounts configured. + * + *

    For contractors paid by check, only the basic payment method information is returned. + * + *

    ### Response Details + * - For direct deposit contractors: + * - Bank account details (masked) + * - Payment splits configuration + * - Routing numbers + * - Account types + * - For check payments: + * - Basic payment method designation + * + *

    ### Common Use Cases + * - Fetching contractor payment information for payroll processing + * - Verifying contractor payment methods + * - Reviewing payment split configurations + * + *

    `encrypted_account_number` is available only with the additional scope + * `contractor_payment_methods:read:account_numbers`. + * + *

    scope: `contractor_payment_methods:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param contractorUuid The UUID of the contractor + * @param companyId The UUID of the company. This identifies the company whose contractor payment details you want to retrieve. + * @param contractorUuid Optional filter to get payment details for a specific contractor. When provided, the response will only include payment details for this contractor. + * @param contractorPaymentGroupUuid 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. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public DeleteV1ContractorsContractorUuidResponse delete(Optional xGustoAPIVersion, String contractorUuid) { - DeleteV1ContractorsContractorUuidRequest request = - DeleteV1ContractorsContractorUuidRequest + public GetV1CompaniesCompanyIdContractorsPaymentDetailsResponse getV1CompaniesCompanyIdContractorsPaymentDetails( + Optional xGustoAPIVersion, String companyId, + Optional contractorUuid, Optional contractorPaymentGroupUuid) { + GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest request = + GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) .contractorUuid(contractorUuid) + .contractorPaymentGroupUuid(contractorPaymentGroupUuid) .build(); - RequestOperation operation - = new DeleteV1ContractorsContractorUuid.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new GetV1CompaniesCompanyIdContractorsPaymentDetails.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Get the contractor's onboarding status - * - *

    Retrieves a contractor's onboarding status. The data returned helps inform the required onboarding - * steps and respective completion status. - * - *

    ## onboarding_status - * - *

    ### Admin-facilitated onboarding - * | onboarding_status | Description | - * |:------------------|------------:| - * | `admin_onboarding_incomplete` | Admin needs to enter basic information about the contractor. | - * | `admin_onboarding_review` | All information has been completed and admin needs to confirm - * onboarding. | - * | `onboarding_completed` | Contractor has been fully onboarded and verified. | - * - *

    ### Contractor self-onboarding + * Schedule a contractor rehire * - *

    | onboarding_status | Description | - * | --- | ----------- | - * | `admin_onboarding_incomplete` | Admin needs to enter basic information about the contractor. | - * | `self_onboarding_not_invited` | Admin has the intention to invite the contractor to self-onboard - * (e.g., marking a checkbox), but the system has not yet sent the invitation. | - * | `self_onboarding_invited` | Contractor has been sent an invitation to self-onboard. | - * | `self_onboarding_started` | Contractor has started the self-onboarding process. | - * | `self_onboarding_review` | Admin needs to review contractors's entered information and confirm - * onboarding. | - * | `onboarding_completed` | Contractor has been fully onboarded and verified. | + *

    ## Purpose + * Schedules a contractor rehire for a given date. Creates a new employment record for the contractor. * - *

    ## onboarding_steps + *

    ## Prerequisites + * Before calling this endpoint: + * 1. The contractor must be inactive (previously dismissed) + * 2. The contractor must not already have an upcoming employment * - *

    | onboarding_steps | Requirement(s) to be completed | - * |:-----------------|-------------------------------:| - * | `basic_details` | Add individual contractor's first name, last name, social security number or - * Business name and EIN depending on the contractor type | - * | `add_address` | Add contractor address. | - * | `compensation_details` | Add contractor compensation. | - * | `payment_details` | (optional) Set up contractor's direct deposit or set to check. | - * | `sign_documents` | Contractor forms (e.g., W9) are generated & signed. | - * | `file_new_hire_report` | Contractor new hire report is generated. | + *

    ## Related webhooks + * - `contractor.reactivated`: Fires when the contractor becomes active again (on or after start_date) * - *

    scope: `contractors:read` + *

    scope: `contractors:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public GetV1ContractorsContractorUuidOnboardingStatusRequestBuilder getOnboardingStatus() { - return new GetV1ContractorsContractorUuidOnboardingStatusRequestBuilder(sdkConfiguration); + public PostV1ContractorsContractorUuidRehireRequestBuilder postV1ContractorsContractorUuidRehire() { + return new PostV1ContractorsContractorUuidRehireRequestBuilder(sdkConfiguration); } /** - * Get the contractor's onboarding status + * Schedule a contractor rehire * - *

    Retrieves a contractor's onboarding status. The data returned helps inform the required onboarding - * steps and respective completion status. + *

    ## Purpose + * Schedules a contractor rehire for a given date. Creates a new employment record for the contractor. * - *

    ## onboarding_status + *

    ## Prerequisites + * Before calling this endpoint: + * 1. The contractor must be inactive (previously dismissed) + * 2. The contractor must not already have an upcoming employment * - *

    ### Admin-facilitated onboarding - * | onboarding_status | Description | - * |:------------------|------------:| - * | `admin_onboarding_incomplete` | Admin needs to enter basic information about the contractor. | - * | `admin_onboarding_review` | All information has been completed and admin needs to confirm - * onboarding. | - * | `onboarding_completed` | Contractor has been fully onboarded and verified. | + *

    ## Related webhooks + * - `contractor.reactivated`: Fires when the contractor becomes active again (on or after start_date) * - *

    ### Contractor self-onboarding + *

    scope: `contractors:write` * - *

    | onboarding_status | Description | - * | --- | ----------- | - * | `admin_onboarding_incomplete` | Admin needs to enter basic information about the contractor. | - * | `self_onboarding_not_invited` | Admin has the intention to invite the contractor to self-onboard - * (e.g., marking a checkbox), but the system has not yet sent the invitation. | - * | `self_onboarding_invited` | Contractor has been sent an invitation to self-onboard. | - * | `self_onboarding_started` | Contractor has started the self-onboarding process. | - * | `self_onboarding_review` | Admin needs to review contractors's entered information and confirm - * onboarding. | - * | `onboarding_completed` | Contractor has been fully onboarded and verified. | + *

    If set, this operation will use Security#companyAccessAuth from the global security. * - *

    ## onboarding_steps + * @param contractorUuid The UUID of the contractor + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public PostV1ContractorsContractorUuidRehireResponse postV1ContractorsContractorUuidRehire(String contractorUuid) { + return postV1ContractorsContractorUuidRehire(Optional.empty(), contractorUuid, Optional.empty()); + } + + /** + * Schedule a contractor rehire * - *

    | onboarding_steps | Requirement(s) to be completed | - * |:-----------------|-------------------------------:| - * | `basic_details` | Add individual contractor's first name, last name, social security number or - * Business name and EIN depending on the contractor type | - * | `add_address` | Add contractor address. | - * | `compensation_details` | Add contractor compensation. | - * | `payment_details` | (optional) Set up contractor's direct deposit or set to check. | - * | `sign_documents` | Contractor forms (e.g., W9) are generated & signed. | - * | `file_new_hire_report` | Contractor new hire report is generated. | + *

    ## Purpose + * Schedules a contractor rehire for a given date. Creates a new employment record for the contractor. * - *

    scope: `contractors:read` + *

    ## Prerequisites + * Before calling this endpoint: + * 1. The contractor must be inactive (previously dismissed) + * 2. The contractor must not already have an upcoming employment + * + *

    ## Related webhooks + * - `contractor.reactivated`: Fires when the contractor becomes active again (on or after start_date) + * + *

    scope: `contractors:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param contractorUuid The UUID of the contractor + * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1ContractorsContractorUuidOnboardingStatusResponse getOnboardingStatus(String contractorUuid) { - return getOnboardingStatus(Optional.empty(), contractorUuid); + public PostV1ContractorsContractorUuidRehireResponse postV1ContractorsContractorUuidRehire( + Optional xGustoAPIVersion, String contractorUuid, + Optional requestBody) { + PostV1ContractorsContractorUuidRehireRequest request = + PostV1ContractorsContractorUuidRehireRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .contractorUuid(contractorUuid) + .requestBody(requestBody) + .build(); + RequestOperation operation + = new PostV1ContractorsContractorUuidRehire.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); } /** - * Get the contractor's onboarding status + * Cancel a pending contractor rehire * - *

    Retrieves a contractor's onboarding status. The data returned helps inform the required onboarding - * steps and respective completion status. + *

    ## Purpose + * Cancels a pending contractor rehire. For future-dated rehires, cancellation is available anytime + * before the date. + * For past-dated rehires, cancellation is only available within the 2-day grace period. * - *

    ## onboarding_status + *

    ## Prerequisites + * Before calling this endpoint: + * - The contractor must have a pending rehire (upcoming employment) * - *

    ### Admin-facilitated onboarding - * | onboarding_status | Description | - * |:------------------|------------:| - * | `admin_onboarding_incomplete` | Admin needs to enter basic information about the contractor. | - * | `admin_onboarding_review` | All information has been completed and admin needs to confirm - * onboarding. | - * | `onboarding_completed` | Contractor has been fully onboarded and verified. | + *

    ## Related webhooks + * - `contractor.deactivated`: Fires when the contractor returns to inactive state after cancellation * - *

    ### Contractor self-onboarding + *

    scope: `contractors:write` * - *

    | onboarding_status | Description | - * | --- | ----------- | - * | `admin_onboarding_incomplete` | Admin needs to enter basic information about the contractor. | - * | `self_onboarding_not_invited` | Admin has the intention to invite the contractor to self-onboard - * (e.g., marking a checkbox), but the system has not yet sent the invitation. | - * | `self_onboarding_invited` | Contractor has been sent an invitation to self-onboard. | - * | `self_onboarding_started` | Contractor has started the self-onboarding process. | - * | `self_onboarding_review` | Admin needs to review contractors's entered information and confirm - * onboarding. | - * | `onboarding_completed` | Contractor has been fully onboarded and verified. | + *

    If set, this operation will use Security#companyAccessAuth from the global security. * - *

    ## onboarding_steps + * @return The call builder + */ + public DeleteV1ContractorsContractorUuidRehireRequestBuilder deleteV1ContractorsContractorUuidRehire() { + return new DeleteV1ContractorsContractorUuidRehireRequestBuilder(sdkConfiguration); + } + + /** + * Cancel a pending contractor rehire * - *

    | onboarding_steps | Requirement(s) to be completed | - * |:-----------------|-------------------------------:| - * | `basic_details` | Add individual contractor's first name, last name, social security number or - * Business name and EIN depending on the contractor type | - * | `add_address` | Add contractor address. | - * | `compensation_details` | Add contractor compensation. | - * | `payment_details` | (optional) Set up contractor's direct deposit or set to check. | - * | `sign_documents` | Contractor forms (e.g., W9) are generated & signed. | - * | `file_new_hire_report` | Contractor new hire report is generated. | + *

    ## Purpose + * Cancels a pending contractor rehire. For future-dated rehires, cancellation is available anytime + * before the date. + * For past-dated rehires, cancellation is only available within the 2-day grace period. * - *

    scope: `contractors:read` + *

    ## Prerequisites + * Before calling this endpoint: + * - The contractor must have a pending rehire (upcoming employment) + * + *

    ## Related webhooks + * - `contractor.deactivated`: Fires when the contractor returns to inactive state after cancellation + * + *

    scope: `contractors:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param contractorUuid The UUID of the contractor + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public DeleteV1ContractorsContractorUuidRehireResponse deleteV1ContractorsContractorUuidRehire(String contractorUuid) { + return deleteV1ContractorsContractorUuidRehire(Optional.empty(), contractorUuid); + } + + /** + * Cancel a pending contractor rehire + * + *

    ## Purpose + * Cancels a pending contractor rehire. For future-dated rehires, cancellation is available anytime + * before the date. + * For past-dated rehires, cancellation is only available within the 2-day grace period. + * + *

    ## Prerequisites + * Before calling this endpoint: + * - The contractor must have a pending rehire (upcoming employment) + * + *

    ## Related webhooks + * - `contractor.deactivated`: Fires when the contractor returns to inactive state after cancellation + * + *

    scope: `contractors:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * @@ -558,37 +553,32 @@ public GetV1ContractorsContractorUuidOnboardingStatusResponse getOnboardingStatu * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1ContractorsContractorUuidOnboardingStatusResponse getOnboardingStatus(Optional xGustoAPIVersion, String contractorUuid) { - GetV1ContractorsContractorUuidOnboardingStatusRequest request = - GetV1ContractorsContractorUuidOnboardingStatusRequest + public DeleteV1ContractorsContractorUuidRehireResponse deleteV1ContractorsContractorUuidRehire(Optional xGustoAPIVersion, String contractorUuid) { + DeleteV1ContractorsContractorUuidRehireRequest request = + DeleteV1ContractorsContractorUuidRehireRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .contractorUuid(contractorUuid) .build(); - RequestOperation operation - = new GetV1ContractorsContractorUuidOnboardingStatus.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new DeleteV1ContractorsContractorUuidRehire.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Change the contractor's onboarding status + * Schedule a contractor termination * - *

    Updates a contractor's onboarding status. + *

    ## Purpose + * Schedules a contractor dismissal for a given date. Supports both immediate (past dates) and + * future-dated dismissals. * - *

    Below is a list of valid onboarding status changes depending on the intended action to be performed - * on behalf of the contractor. + *

    ## Prerequisites + * Before calling this endpoint: + * 1. The contractor must be active (no existing pending dismissal) + * 2. The contractor must have a current employment * - *

    | Action | current onboarding_status | new onboarding_status | - * |:------------------|:------------:|----------:| - * | Mark a contractor as self-onboarding | `admin_onboarding_incomplete` | - * `self_onboarding_not_invited` | - * | Invite a contractor to self-onboard | `admin_onboarding_incomplete` or - * `self_onboarding_not_invited` | `self_onboarding_invited` | - * | Cancel a contractor's self-onboarding | `self_onboarding_invited` or `self_onboarding_not_invited` - * | `admin_onboarding_incomplete` | - * | Review a contractor's self-onboarded info | `self_onboarding_started` | `self_onboarding_review` | - * | Finish a contractor's onboarding | `admin_onboarding_review` or `self_onboarding_review` | - * `onboarding_completed` | + *

    ## Related webhooks + * - `contractor.deactivated`: Fires when the contractor becomes inactive (on or after end_date) * *

    scope: `contractors:write` * @@ -596,62 +586,51 @@ public GetV1ContractorsContractorUuidOnboardingStatusResponse getOnboardingStatu * * @return The call builder */ - public PutV1ContractorsContractorUuidOnboardingStatusRequestBuilder updateOnboardingStatus() { - return new PutV1ContractorsContractorUuidOnboardingStatusRequestBuilder(sdkConfiguration); + public PostV1ContractorsContractorUuidTerminationRequestBuilder postV1ContractorsContractorUuidTermination() { + return new PostV1ContractorsContractorUuidTerminationRequestBuilder(sdkConfiguration); } /** - * Change the contractor's onboarding status - * - *

    Updates a contractor's onboarding status. - * - *

    Below is a list of valid onboarding status changes depending on the intended action to be performed - * on behalf of the contractor. - * - *

    | Action | current onboarding_status | new onboarding_status | - * |:------------------|:------------:|----------:| - * | Mark a contractor as self-onboarding | `admin_onboarding_incomplete` | - * `self_onboarding_not_invited` | - * | Invite a contractor to self-onboard | `admin_onboarding_incomplete` or - * `self_onboarding_not_invited` | `self_onboarding_invited` | - * | Cancel a contractor's self-onboarding | `self_onboarding_invited` or `self_onboarding_not_invited` - * | `admin_onboarding_incomplete` | - * | Review a contractor's self-onboarded info | `self_onboarding_started` | `self_onboarding_review` | - * | Finish a contractor's onboarding | `admin_onboarding_review` or `self_onboarding_review` | - * `onboarding_completed` | + * Schedule a contractor termination + * + *

    ## Purpose + * Schedules a contractor dismissal for a given date. Supports both immediate (past dates) and + * future-dated dismissals. + * + *

    ## Prerequisites + * Before calling this endpoint: + * 1. The contractor must be active (no existing pending dismissal) + * 2. The contractor must have a current employment + * + *

    ## Related webhooks + * - `contractor.deactivated`: Fires when the contractor becomes inactive (on or after end_date) * *

    scope: `contractors:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param contractorUuid The UUID of the contractor - * @param contractorOnboardingStatusUpdateRequestBody Request body for updating a contractor's onboarding status. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1ContractorsContractorUuidOnboardingStatusResponse updateOnboardingStatus(String contractorUuid, ContractorOnboardingStatusUpdateRequestBody contractorOnboardingStatusUpdateRequestBody) { - return updateOnboardingStatus(Optional.empty(), contractorUuid, contractorOnboardingStatusUpdateRequestBody); + public PostV1ContractorsContractorUuidTerminationResponse postV1ContractorsContractorUuidTermination(String contractorUuid) { + return postV1ContractorsContractorUuidTermination(Optional.empty(), contractorUuid, Optional.empty()); } /** - * Change the contractor's onboarding status + * Schedule a contractor termination * - *

    Updates a contractor's onboarding status. + *

    ## Purpose + * Schedules a contractor dismissal for a given date. Supports both immediate (past dates) and + * future-dated dismissals. * - *

    Below is a list of valid onboarding status changes depending on the intended action to be performed - * on behalf of the contractor. + *

    ## Prerequisites + * Before calling this endpoint: + * 1. The contractor must be active (no existing pending dismissal) + * 2. The contractor must have a current employment * - *

    | Action | current onboarding_status | new onboarding_status | - * |:------------------|:------------:|----------:| - * | Mark a contractor as self-onboarding | `admin_onboarding_incomplete` | - * `self_onboarding_not_invited` | - * | Invite a contractor to self-onboard | `admin_onboarding_incomplete` or - * `self_onboarding_not_invited` | `self_onboarding_invited` | - * | Cancel a contractor's self-onboarding | `self_onboarding_invited` or `self_onboarding_not_invited` - * | `admin_onboarding_incomplete` | - * | Review a contractor's self-onboarded info | `self_onboarding_started` | `self_onboarding_review` | - * | Finish a contractor's onboarding | `admin_onboarding_review` or `self_onboarding_review` | - * `onboarding_completed` | + *

    ## Related webhooks + * - `contractor.deactivated`: Fires when the contractor becomes inactive (on or after end_date) * *

    scope: `contractors:write` * @@ -659,48 +638,66 @@ public PutV1ContractorsContractorUuidOnboardingStatusResponse updateOnboardingSt * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param contractorUuid The UUID of the contractor - * @param contractorOnboardingStatusUpdateRequestBody Request body for updating a contractor's onboarding status. + * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1ContractorsContractorUuidOnboardingStatusResponse updateOnboardingStatus( - Optional xGustoAPIVersion, String contractorUuid, - ContractorOnboardingStatusUpdateRequestBody contractorOnboardingStatusUpdateRequestBody) { - PutV1ContractorsContractorUuidOnboardingStatusRequest request = - PutV1ContractorsContractorUuidOnboardingStatusRequest + public PostV1ContractorsContractorUuidTerminationResponse postV1ContractorsContractorUuidTermination( + Optional xGustoAPIVersion, String contractorUuid, + Optional requestBody) { + PostV1ContractorsContractorUuidTerminationRequest request = + PostV1ContractorsContractorUuidTerminationRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .contractorUuid(contractorUuid) - .contractorOnboardingStatusUpdateRequestBody(contractorOnboardingStatusUpdateRequestBody) + .requestBody(requestBody) .build(); - RequestOperation operation - = new PutV1ContractorsContractorUuidOnboardingStatus.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PostV1ContractorsContractorUuidTermination.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Get a contractor address + * Cancel a pending contractor termination * - *

    The address of a contractor is used to determine certain tax information about them. Addresses are - * geocoded on create and update to ensure validity. + *

    ## Purpose + * Cancels a pending contractor dismissal. For future-dated dismissals, cancellation is available + * anytime before the date. + * For past-dated dismissals, cancellation is only available within the 2-day grace period. * - *

    scope: `contractors:read` + *

    ## Prerequisites + * Before calling this endpoint: + * - The contractor must have a pending dismissal (scheduled or within the grace period) + * + *

    ## Related webhooks + * - `contractor.reactivated`: Fires when the contractor becomes active again after cancellation + * + *

    scope: `contractors:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public GetV1ContractorsContractorUuidAddressRequestBuilder getAddress() { - return new GetV1ContractorsContractorUuidAddressRequestBuilder(sdkConfiguration); + public DeleteV1ContractorsContractorUuidTerminationRequestBuilder deleteV1ContractorsContractorUuidTermination() { + return new DeleteV1ContractorsContractorUuidTerminationRequestBuilder(sdkConfiguration); } /** - * Get a contractor address + * Cancel a pending contractor termination * - *

    The address of a contractor is used to determine certain tax information about them. Addresses are - * geocoded on create and update to ensure validity. + *

    ## Purpose + * Cancels a pending contractor dismissal. For future-dated dismissals, cancellation is available + * anytime before the date. + * For past-dated dismissals, cancellation is only available within the 2-day grace period. * - *

    scope: `contractors:read` + *

    ## Prerequisites + * Before calling this endpoint: + * - The contractor must have a pending dismissal (scheduled or within the grace period) + * + *

    ## Related webhooks + * - `contractor.reactivated`: Fires when the contractor becomes active again after cancellation + * + *

    scope: `contractors:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * @@ -708,17 +705,26 @@ public GetV1ContractorsContractorUuidAddressRequestBuilder getAddress() { * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1ContractorsContractorUuidAddressResponse getAddress(String contractorUuid) { - return getAddress(Optional.empty(), contractorUuid); + public DeleteV1ContractorsContractorUuidTerminationResponse deleteV1ContractorsContractorUuidTermination(String contractorUuid) { + return deleteV1ContractorsContractorUuidTermination(Optional.empty(), contractorUuid); } /** - * Get a contractor address + * Cancel a pending contractor termination * - *

    The address of a contractor is used to determine certain tax information about them. Addresses are - * geocoded on create and update to ensure validity. + *

    ## Purpose + * Cancels a pending contractor dismissal. For future-dated dismissals, cancellation is available + * anytime before the date. + * For past-dated dismissals, cancellation is only available within the 2-day grace period. * - *

    scope: `contractors:read` + *

    ## Prerequisites + * Before calling this endpoint: + * - The contractor must have a pending dismissal (scheduled or within the grace period) + * + *

    ## Related webhooks + * - `contractor.reactivated`: Fires when the contractor becomes active again after cancellation + * + *

    scope: `contractors:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * @@ -727,278 +733,182 @@ public GetV1ContractorsContractorUuidAddressResponse getAddress(String contracto * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1ContractorsContractorUuidAddressResponse getAddress(Optional xGustoAPIVersion, String contractorUuid) { - GetV1ContractorsContractorUuidAddressRequest request = - GetV1ContractorsContractorUuidAddressRequest + public DeleteV1ContractorsContractorUuidTerminationResponse deleteV1ContractorsContractorUuidTermination(Optional xGustoAPIVersion, String contractorUuid) { + DeleteV1ContractorsContractorUuidTerminationRequest request = + DeleteV1ContractorsContractorUuidTerminationRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .contractorUuid(contractorUuid) .build(); - RequestOperation operation - = new GetV1ContractorsContractorUuidAddress.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new DeleteV1ContractorsContractorUuidTermination.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Create or update a contractor's address - * - *

    The address of a contractor is used to determine certain tax information about them. Addresses are - * geocoded on create and update to ensure validity. + * Get a contractor * - *

    > 🚧 Contractors can only have one address. - * > - * > When a contractor is created, an address is created for them by default. Updating the address - * will replace the existing address. + *

    Get a contractor. * - *

    scope: `contractors:write` + *

    scope: `contractors:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public PutV1ContractorsContractorUuidAddressRequestBuilder updateAddress() { - return new PutV1ContractorsContractorUuidAddressRequestBuilder(sdkConfiguration); + public GetV1ContractorsContractorUuidRequestBuilder get() { + return new GetV1ContractorsContractorUuidRequestBuilder(sdkConfiguration); } /** - * Create or update a contractor's address - * - *

    The address of a contractor is used to determine certain tax information about them. Addresses are - * geocoded on create and update to ensure validity. + * Get a contractor * - *

    > 🚧 Contractors can only have one address. - * > - * > When a contractor is created, an address is created for them by default. Updating the address - * will replace the existing address. + *

    Get a contractor. * - *

    scope: `contractors:write` + *

    scope: `contractors:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param contractorUuid The UUID of the contractor - * @param contractorAddressUpdateBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1ContractorsContractorUuidAddressResponse updateAddress(String contractorUuid, ContractorAddressUpdateBody contractorAddressUpdateBody) { - return updateAddress(Optional.empty(), contractorUuid, contractorAddressUpdateBody); + public GetV1ContractorsContractorUuidResponse get(String contractorUuid) { + return get(Optional.empty(), contractorUuid, Optional.empty()); } /** - * Create or update a contractor's address - * - *

    The address of a contractor is used to determine certain tax information about them. Addresses are - * geocoded on create and update to ensure validity. + * Get a contractor * - *

    > 🚧 Contractors can only have one address. - * > - * > When a contractor is created, an address is created for them by default. Updating the address - * will replace the existing address. + *

    Get a contractor. * - *

    scope: `contractors:write` + *

    scope: `contractors:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param contractorUuid The UUID of the contractor - * @param contractorAddressUpdateBody + * @param include Include the requested attribute(s) in each contractor response. Multiple options are comma separated. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1ContractorsContractorUuidAddressResponse updateAddress( - Optional xGustoAPIVersion, String contractorUuid, - ContractorAddressUpdateBody contractorAddressUpdateBody) { - PutV1ContractorsContractorUuidAddressRequest request = - PutV1ContractorsContractorUuidAddressRequest + public GetV1ContractorsContractorUuidResponse get( + Optional xGustoAPIVersion, String contractorUuid, + Optional> include) { + GetV1ContractorsContractorUuidRequest request = + GetV1ContractorsContractorUuidRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .contractorUuid(contractorUuid) - .contractorAddressUpdateBody(contractorAddressUpdateBody) + .include(include) .build(); - RequestOperation operation - = new PutV1ContractorsContractorUuidAddress.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new GetV1ContractorsContractorUuid.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * List contractor payment details - * - *

    Get payment details for contractors in a company. This endpoint returns a list of all contractors - * associated with the specified company, including their payment methods and bank account details - * if they are paid via direct deposit. - * - *

    For contractors paid by direct deposit, the response includes their bank account information - * with sensitive data masked for security. The payment details also include information about - * how their payments are split if they have multiple bank accounts configured. - * - *

    For contractors paid by check, only the basic payment method information is returned. - * - *

    ### Response Details - * - For direct deposit contractors: - * - Bank account details (masked) - * - Payment splits configuration - * - Routing numbers - * - Account types - * - For check payments: - * - Basic payment method designation + * Update a contractor * - *

    ### Common Use Cases - * - Fetching contractor payment information for payroll processing - * - Verifying contractor payment methods - * - Reviewing payment split configurations + *

    Update a contractor. * - *

    `encrypted_account_number` is available only with the additional scope - * `contractor_payment_methods:read:account_numbers`. + *

    > 🚧 Warning + * > + * > Watch out when changing a contractor's type (when the contractor is finished onboarding). + * Specifically, changing contractor type can be dangerous since Gusto won't recognize and file two + * separate 1099s if they simply change from business to individual * - *

    scope: `contractor_payment_methods:read` + *

    scope: `contractors:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder getV1CompaniesCompanyIdContractorsPaymentDetails() { - return new GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder(sdkConfiguration); + public PutV1ContractorsContractorUuidRequestBuilder update() { + return new PutV1ContractorsContractorUuidRequestBuilder(sdkConfiguration); } /** - * List contractor payment details - * - *

    Get payment details for contractors in a company. This endpoint returns a list of all contractors - * associated with the specified company, including their payment methods and bank account details - * if they are paid via direct deposit. - * - *

    For contractors paid by direct deposit, the response includes their bank account information - * with sensitive data masked for security. The payment details also include information about - * how their payments are split if they have multiple bank accounts configured. - * - *

    For contractors paid by check, only the basic payment method information is returned. - * - *

    ### Response Details - * - For direct deposit contractors: - * - Bank account details (masked) - * - Payment splits configuration - * - Routing numbers - * - Account types - * - For check payments: - * - Basic payment method designation - * - *

    ### Common Use Cases - * - Fetching contractor payment information for payroll processing - * - Verifying contractor payment methods - * - Reviewing payment split configurations + * Update a contractor * - *

    `encrypted_account_number` is available only with the additional scope - * `contractor_payment_methods:read:account_numbers`. + *

    Update a contractor. * - *

    scope: `contractor_payment_methods:read` + *

    > 🚧 Warning + * > + * > Watch out when changing a contractor's type (when the contractor is finished onboarding). + * Specifically, changing contractor type can be dangerous since Gusto won't recognize and file two + * separate 1099s if they simply change from business to individual + * + *

    scope: `contractors:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company. This identifies the company whose contractor payment details you want to retrieve. + * @param contractorUuid The UUID of the contractor + * @param contractorUpdateRequestBody Request body for updating a contractor. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1CompaniesCompanyIdContractorsPaymentDetailsResponse getV1CompaniesCompanyIdContractorsPaymentDetails(String companyId) { - return getV1CompaniesCompanyIdContractorsPaymentDetails(companyId, Optional.empty(), Optional.empty(), - Optional.empty()); + public PutV1ContractorsContractorUuidResponse update(String contractorUuid, ContractorUpdateRequestBody contractorUpdateRequestBody) { + return update(Optional.empty(), contractorUuid, contractorUpdateRequestBody); } /** - * List contractor payment details - * - *

    Get payment details for contractors in a company. This endpoint returns a list of all contractors - * associated with the specified company, including their payment methods and bank account details - * if they are paid via direct deposit. - * - *

    For contractors paid by direct deposit, the response includes their bank account information - * with sensitive data masked for security. The payment details also include information about - * how their payments are split if they have multiple bank accounts configured. - * - *

    For contractors paid by check, only the basic payment method information is returned. - * - *

    ### Response Details - * - For direct deposit contractors: - * - Bank account details (masked) - * - Payment splits configuration - * - Routing numbers - * - Account types - * - For check payments: - * - Basic payment method designation + * Update a contractor * - *

    ### Common Use Cases - * - Fetching contractor payment information for payroll processing - * - Verifying contractor payment methods - * - Reviewing payment split configurations + *

    Update a contractor. * - *

    `encrypted_account_number` is available only with the additional scope - * `contractor_payment_methods:read:account_numbers`. + *

    > 🚧 Warning + * > + * > Watch out when changing a contractor's type (when the contractor is finished onboarding). + * Specifically, changing contractor type can be dangerous since Gusto won't recognize and file two + * separate 1099s if they simply change from business to individual * - *

    scope: `contractor_payment_methods:read` + *

    scope: `contractors:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company. This identifies the company whose contractor payment details you want to retrieve. - * @param contractorUuid Optional filter to get payment details for a specific contractor. When provided, the response will only include payment details for this contractor. - * @param contractorPaymentGroupUuid 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. * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param contractorUuid The UUID of the contractor + * @param contractorUpdateRequestBody Request body for updating a contractor. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1CompaniesCompanyIdContractorsPaymentDetailsResponse getV1CompaniesCompanyIdContractorsPaymentDetails( - String companyId, Optional contractorUuid, - Optional contractorPaymentGroupUuid, Optional xGustoAPIVersion) { - GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest request = - GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest + public PutV1ContractorsContractorUuidResponse update( + Optional xGustoAPIVersion, String contractorUuid, + ContractorUpdateRequestBody contractorUpdateRequestBody) { + PutV1ContractorsContractorUuidRequest request = + PutV1ContractorsContractorUuidRequest .builder() - .companyId(companyId) - .contractorUuid(contractorUuid) - .contractorPaymentGroupUuid(contractorPaymentGroupUuid) .xGustoAPIVersion(xGustoAPIVersion) + .contractorUuid(contractorUuid) + .contractorUpdateRequestBody(contractorUpdateRequestBody) .build(); - RequestOperation operation - = new GetV1CompaniesCompanyIdContractorsPaymentDetails.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PutV1ContractorsContractorUuid.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Schedule a contractor rehire - * - *

    ## Purpose - * Schedules a contractor rehire for a given date. Creates a new employment record for the contractor. - * - *

    ## Prerequisites - * Before calling this endpoint: - * 1. The contractor must be inactive (previously dismissed) - * 2. The contractor must not already have an upcoming employment + * Delete a contractor * - *

    ## Related webhooks - * - `contractor.reactivated`: Fires when the contractor becomes active again (on or after start_date) + *

    A contractor can only be deleted when there are no contractor payments. * - *

    scope: `contractors:write` + *

    scope: `contractors:manage` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public PostV1ContractorsContractorUuidRehireRequestBuilder postV1ContractorsContractorUuidRehire() { - return new PostV1ContractorsContractorUuidRehireRequestBuilder(sdkConfiguration); + public DeleteV1ContractorsContractorUuidRequestBuilder delete() { + return new DeleteV1ContractorsContractorUuidRequestBuilder(sdkConfiguration); } /** - * Schedule a contractor rehire - * - *

    ## Purpose - * Schedules a contractor rehire for a given date. Creates a new employment record for the contractor. - * - *

    ## Prerequisites - * Before calling this endpoint: - * 1. The contractor must be inactive (previously dismissed) - * 2. The contractor must not already have an upcoming employment + * Delete a contractor * - *

    ## Related webhooks - * - `contractor.reactivated`: Fires when the contractor becomes active again (on or after start_date) + *

    A contractor can only be deleted when there are no contractor payments. * - *

    scope: `contractors:write` + *

    scope: `contractors:manage` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * @@ -1006,178 +916,226 @@ public PostV1ContractorsContractorUuidRehireRequestBuilder postV1ContractorsCont * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostV1ContractorsContractorUuidRehireResponse postV1ContractorsContractorUuidRehire(String contractorUuid) { - return postV1ContractorsContractorUuidRehire(contractorUuid, Optional.empty(), Optional.empty()); + public DeleteV1ContractorsContractorUuidResponse delete(String contractorUuid) { + return delete(Optional.empty(), contractorUuid); } /** - * Schedule a contractor rehire - * - *

    ## Purpose - * Schedules a contractor rehire for a given date. Creates a new employment record for the contractor. - * - *

    ## Prerequisites - * Before calling this endpoint: - * 1. The contractor must be inactive (previously dismissed) - * 2. The contractor must not already have an upcoming employment + * Delete a contractor * - *

    ## Related webhooks - * - `contractor.reactivated`: Fires when the contractor becomes active again (on or after start_date) + *

    A contractor can only be deleted when there are no contractor payments. * - *

    scope: `contractors:write` + *

    scope: `contractors:manage` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param contractorUuid The UUID of the contractor * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param requestBody + * @param contractorUuid The UUID of the contractor * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostV1ContractorsContractorUuidRehireResponse postV1ContractorsContractorUuidRehire( - String contractorUuid, Optional xGustoAPIVersion, - Optional requestBody) { - PostV1ContractorsContractorUuidRehireRequest request = - PostV1ContractorsContractorUuidRehireRequest + public DeleteV1ContractorsContractorUuidResponse delete(Optional xGustoAPIVersion, String contractorUuid) { + DeleteV1ContractorsContractorUuidRequest request = + DeleteV1ContractorsContractorUuidRequest .builder() - .contractorUuid(contractorUuid) .xGustoAPIVersion(xGustoAPIVersion) - .requestBody(requestBody) + .contractorUuid(contractorUuid) .build(); - RequestOperation operation - = new PostV1ContractorsContractorUuidRehire.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new DeleteV1ContractorsContractorUuid.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Cancel a pending contractor rehire + * Get contractors of a company * - *

    ## Purpose - * Cancels a pending contractor rehire. For future-dated rehires, cancellation is available anytime - * before the date. - * For past-dated rehires, cancellation is only available within the 2-day grace period. + *

    Get all contractors, active and inactive, individual and business, for a company. * - *

    ## Prerequisites - * Before calling this endpoint: - * - The contractor must have a pending rehire (upcoming employment) + *

    scope: `contractors:read` * - *

    ## Related webhooks - * - `contractor.deactivated`: Fires when the contractor returns to inactive state after cancellation + *

    If set, this operation will use Security#companyAccessAuth from the global security. * - *

    scope: `contractors:write` + * @return The call builder + */ + public GetV1CompaniesCompanyUuidContractorsRequestBuilder list() { + return new GetV1CompaniesCompanyUuidContractorsRequestBuilder(sdkConfiguration); + } + + /** + * Get contractors of a company + * + *

    Get all contractors, active and inactive, individual and business, for a company. + * + *

    scope: `contractors:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @return The call builder + * @param request The request object containing all the parameters for the API call. + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails */ - public DeleteV1ContractorsContractorUuidRehireRequestBuilder deleteV1ContractorsContractorUuidRehire() { - return new DeleteV1ContractorsContractorUuidRehireRequestBuilder(sdkConfiguration); + public GetV1CompaniesCompanyUuidContractorsResponse list(GetV1CompaniesCompanyUuidContractorsRequest request) { + RequestOperation operation + = new GetV1CompaniesCompanyUuidContractors.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); } /** - * Cancel a pending contractor rehire + * Create a contractor * - *

    ## Purpose - * Cancels a pending contractor rehire. For future-dated rehires, cancellation is available anytime - * before the date. - * For past-dated rehires, cancellation is only available within the 2-day grace period. + *

    Create an individual or business contractor. * - *

    ## Prerequisites - * Before calling this endpoint: - * - The contractor must have a pending rehire (upcoming employment) + *

    scope: `contractors:manage` * - *

    ## Related webhooks - * - `contractor.deactivated`: Fires when the contractor returns to inactive state after cancellation + *

    If set, this operation will use Security#companyAccessAuth from the global security. * - *

    scope: `contractors:write` + * @return The call builder + */ + public PostV1CompaniesCompanyUuidContractorsRequestBuilder create() { + return new PostV1CompaniesCompanyUuidContractorsRequestBuilder(sdkConfiguration); + } + + /** + * Create a contractor + * + *

    Create an individual or business contractor. + * + *

    scope: `contractors:manage` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param contractorUuid The UUID of the contractor + * @param companyUuid The UUID of the company + * @param contractorCreateRequestBody Request body for creating a contractor. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public DeleteV1ContractorsContractorUuidRehireResponse deleteV1ContractorsContractorUuidRehire(String contractorUuid) { - return deleteV1ContractorsContractorUuidRehire(contractorUuid, Optional.empty()); + public PostV1CompaniesCompanyUuidContractorsResponse create(String companyUuid, ContractorCreateRequestBody contractorCreateRequestBody) { + return create(Optional.empty(), companyUuid, contractorCreateRequestBody); } /** - * Cancel a pending contractor rehire - * - *

    ## Purpose - * Cancels a pending contractor rehire. For future-dated rehires, cancellation is available anytime - * before the date. - * For past-dated rehires, cancellation is only available within the 2-day grace period. - * - *

    ## Prerequisites - * Before calling this endpoint: - * - The contractor must have a pending rehire (upcoming employment) + * Create a contractor * - *

    ## Related webhooks - * - `contractor.deactivated`: Fires when the contractor returns to inactive state after cancellation + *

    Create an individual or business contractor. * - *

    scope: `contractors:write` + *

    scope: `contractors:manage` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param contractorUuid The UUID of the contractor * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company + * @param contractorCreateRequestBody Request body for creating a contractor. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public DeleteV1ContractorsContractorUuidRehireResponse deleteV1ContractorsContractorUuidRehire(String contractorUuid, Optional xGustoAPIVersion) { - DeleteV1ContractorsContractorUuidRehireRequest request = - DeleteV1ContractorsContractorUuidRehireRequest + public PostV1CompaniesCompanyUuidContractorsResponse create( + Optional xGustoAPIVersion, String companyUuid, + ContractorCreateRequestBody contractorCreateRequestBody) { + PostV1CompaniesCompanyUuidContractorsRequest request = + PostV1CompaniesCompanyUuidContractorsRequest .builder() - .contractorUuid(contractorUuid) .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) + .contractorCreateRequestBody(contractorCreateRequestBody) .build(); - RequestOperation operation - = new DeleteV1ContractorsContractorUuidRehire.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PostV1CompaniesCompanyUuidContractors.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Schedule a contractor termination + * Get the contractor's onboarding status + * + *

    Retrieves a contractor's onboarding status. The data returned helps inform the required onboarding + * steps and respective completion status. + * + *

    ## onboarding_status + * + *

    ### Admin-facilitated onboarding + * | onboarding_status | Description | + * |:------------------|------------:| + * | `admin_onboarding_incomplete` | Admin needs to enter basic information about the contractor. | + * | `admin_onboarding_review` | All information has been completed and admin needs to confirm + * onboarding. | + * | `onboarding_completed` | Contractor has been fully onboarded and verified. | * - *

    ## Purpose - * Schedules a contractor dismissal for a given date. Supports both immediate (past dates) and - * future-dated dismissals. + *

    ### Contractor self-onboarding * - *

    ## Prerequisites - * Before calling this endpoint: - * 1. The contractor must be active (no existing pending dismissal) - * 2. The contractor must have a current employment + *

    | onboarding_status | Description | + * | --- | ----------- | + * | `admin_onboarding_incomplete` | Admin needs to enter basic information about the contractor. | + * | `self_onboarding_not_invited` | Admin has the intention to invite the contractor to self-onboard + * (e.g., marking a checkbox), but the system has not yet sent the invitation. | + * | `self_onboarding_invited` | Contractor has been sent an invitation to self-onboard. | + * | `self_onboarding_started` | Contractor has started the self-onboarding process. | + * | `self_onboarding_review` | Admin needs to review contractors's entered information and confirm + * onboarding. | + * | `onboarding_completed` | Contractor has been fully onboarded and verified. | * - *

    ## Related webhooks - * - `contractor.deactivated`: Fires when the contractor becomes inactive (on or after end_date) + *

    ## onboarding_steps * - *

    scope: `contractors:write` + *

    | onboarding_steps | Requirement(s) to be completed | + * |:-----------------|-------------------------------:| + * | `basic_details` | Add individual contractor's first name, last name, social security number or + * Business name and EIN depending on the contractor type | + * | `add_address` | Add contractor address. | + * | `compensation_details` | Add contractor compensation. | + * | `payment_details` | (optional) Set up contractor's direct deposit or set to check. | + * | `sign_documents` | Contractor forms (e.g., W9) are generated & signed. | + * | `file_new_hire_report` | Contractor new hire report is generated. | + * + *

    scope: `contractors:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public PostV1ContractorsContractorUuidTerminationRequestBuilder postV1ContractorsContractorUuidTermination() { - return new PostV1ContractorsContractorUuidTerminationRequestBuilder(sdkConfiguration); + public GetV1ContractorsContractorUuidOnboardingStatusRequestBuilder getOnboardingStatus() { + return new GetV1ContractorsContractorUuidOnboardingStatusRequestBuilder(sdkConfiguration); } /** - * Schedule a contractor termination + * Get the contractor's onboarding status * - *

    ## Purpose - * Schedules a contractor dismissal for a given date. Supports both immediate (past dates) and - * future-dated dismissals. + *

    Retrieves a contractor's onboarding status. The data returned helps inform the required onboarding + * steps and respective completion status. * - *

    ## Prerequisites - * Before calling this endpoint: - * 1. The contractor must be active (no existing pending dismissal) - * 2. The contractor must have a current employment + *

    ## onboarding_status * - *

    ## Related webhooks - * - `contractor.deactivated`: Fires when the contractor becomes inactive (on or after end_date) + *

    ### Admin-facilitated onboarding + * | onboarding_status | Description | + * |:------------------|------------:| + * | `admin_onboarding_incomplete` | Admin needs to enter basic information about the contractor. | + * | `admin_onboarding_review` | All information has been completed and admin needs to confirm + * onboarding. | + * | `onboarding_completed` | Contractor has been fully onboarded and verified. | * - *

    scope: `contractors:write` + *

    ### Contractor self-onboarding + * + *

    | onboarding_status | Description | + * | --- | ----------- | + * | `admin_onboarding_incomplete` | Admin needs to enter basic information about the contractor. | + * | `self_onboarding_not_invited` | Admin has the intention to invite the contractor to self-onboard + * (e.g., marking a checkbox), but the system has not yet sent the invitation. | + * | `self_onboarding_invited` | Contractor has been sent an invitation to self-onboard. | + * | `self_onboarding_started` | Contractor has started the self-onboarding process. | + * | `self_onboarding_review` | Admin needs to review contractors's entered information and confirm + * onboarding. | + * | `onboarding_completed` | Contractor has been fully onboarded and verified. | + * + *

    ## onboarding_steps + * + *

    | onboarding_steps | Requirement(s) to be completed | + * |:-----------------|-------------------------------:| + * | `basic_details` | Add individual contractor's first name, last name, social security number or + * Business name and EIN depending on the contractor type | + * | `add_address` | Add contractor address. | + * | `compensation_details` | Add contractor compensation. | + * | `payment_details` | (optional) Set up contractor's direct deposit or set to check. | + * | `sign_documents` | Contractor forms (e.g., W9) are generated & signed. | + * | `file_new_hire_report` | Contractor new hire report is generated. | + * + *

    scope: `contractors:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * @@ -1185,64 +1143,91 @@ public PostV1ContractorsContractorUuidTerminationRequestBuilder postV1Contractor * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostV1ContractorsContractorUuidTerminationResponse postV1ContractorsContractorUuidTermination(String contractorUuid) { - return postV1ContractorsContractorUuidTermination(contractorUuid, Optional.empty(), Optional.empty()); + public GetV1ContractorsContractorUuidOnboardingStatusResponse getOnboardingStatus(String contractorUuid) { + return getOnboardingStatus(Optional.empty(), contractorUuid); } /** - * Schedule a contractor termination + * Get the contractor's onboarding status * - *

    ## Purpose - * Schedules a contractor dismissal for a given date. Supports both immediate (past dates) and - * future-dated dismissals. + *

    Retrieves a contractor's onboarding status. The data returned helps inform the required onboarding + * steps and respective completion status. * - *

    ## Prerequisites - * Before calling this endpoint: - * 1. The contractor must be active (no existing pending dismissal) - * 2. The contractor must have a current employment + *

    ## onboarding_status * - *

    ## Related webhooks - * - `contractor.deactivated`: Fires when the contractor becomes inactive (on or after end_date) + *

    ### Admin-facilitated onboarding + * | onboarding_status | Description | + * |:------------------|------------:| + * | `admin_onboarding_incomplete` | Admin needs to enter basic information about the contractor. | + * | `admin_onboarding_review` | All information has been completed and admin needs to confirm + * onboarding. | + * | `onboarding_completed` | Contractor has been fully onboarded and verified. | * - *

    scope: `contractors:write` + *

    ### Contractor self-onboarding + * + *

    | onboarding_status | Description | + * | --- | ----------- | + * | `admin_onboarding_incomplete` | Admin needs to enter basic information about the contractor. | + * | `self_onboarding_not_invited` | Admin has the intention to invite the contractor to self-onboard + * (e.g., marking a checkbox), but the system has not yet sent the invitation. | + * | `self_onboarding_invited` | Contractor has been sent an invitation to self-onboard. | + * | `self_onboarding_started` | Contractor has started the self-onboarding process. | + * | `self_onboarding_review` | Admin needs to review contractors's entered information and confirm + * onboarding. | + * | `onboarding_completed` | Contractor has been fully onboarded and verified. | + * + *

    ## onboarding_steps + * + *

    | onboarding_steps | Requirement(s) to be completed | + * |:-----------------|-------------------------------:| + * | `basic_details` | Add individual contractor's first name, last name, social security number or + * Business name and EIN depending on the contractor type | + * | `add_address` | Add contractor address. | + * | `compensation_details` | Add contractor compensation. | + * | `payment_details` | (optional) Set up contractor's direct deposit or set to check. | + * | `sign_documents` | Contractor forms (e.g., W9) are generated & signed. | + * | `file_new_hire_report` | Contractor new hire report is generated. | + * + *

    scope: `contractors:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param contractorUuid The UUID of the contractor * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param requestBody + * @param contractorUuid The UUID of the contractor * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostV1ContractorsContractorUuidTerminationResponse postV1ContractorsContractorUuidTermination( - String contractorUuid, Optional xGustoAPIVersion, - Optional requestBody) { - PostV1ContractorsContractorUuidTerminationRequest request = - PostV1ContractorsContractorUuidTerminationRequest + public GetV1ContractorsContractorUuidOnboardingStatusResponse getOnboardingStatus(Optional xGustoAPIVersion, String contractorUuid) { + GetV1ContractorsContractorUuidOnboardingStatusRequest request = + GetV1ContractorsContractorUuidOnboardingStatusRequest .builder() - .contractorUuid(contractorUuid) .xGustoAPIVersion(xGustoAPIVersion) - .requestBody(requestBody) + .contractorUuid(contractorUuid) .build(); - RequestOperation operation - = new PostV1ContractorsContractorUuidTermination.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new GetV1ContractorsContractorUuidOnboardingStatus.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Cancel a pending contractor termination + * Change the contractor's onboarding status * - *

    ## Purpose - * Cancels a pending contractor dismissal. For future-dated dismissals, cancellation is available - * anytime before the date. - * For past-dated dismissals, cancellation is only available within the 2-day grace period. + *

    Updates a contractor's onboarding status. * - *

    ## Prerequisites - * Before calling this endpoint: - * - The contractor must have a pending dismissal (scheduled or within the grace period) + *

    Below is a list of valid onboarding status changes depending on the intended action to be performed + * on behalf of the contractor. * - *

    ## Related webhooks - * - `contractor.reactivated`: Fires when the contractor becomes active again after cancellation + *

    | Action | current onboarding_status | new onboarding_status | + * |:------------------|:------------:|----------:| + * | Mark a contractor as self-onboarding | `admin_onboarding_incomplete` | + * `self_onboarding_not_invited` | + * | Invite a contractor to self-onboard | `admin_onboarding_incomplete` or + * `self_onboarding_not_invited` | `self_onboarding_invited` | + * | Cancel a contractor's self-onboarding | `self_onboarding_invited` or `self_onboarding_not_invited` + * | `admin_onboarding_incomplete` | + * | Review a contractor's self-onboarded info | `self_onboarding_started` | `self_onboarding_review` | + * | Finish a contractor's onboarding | `admin_onboarding_review` or `self_onboarding_review` | + * `onboarding_completed` | * *

    scope: `contractors:write` * @@ -1250,70 +1235,85 @@ public PostV1ContractorsContractorUuidTerminationResponse postV1ContractorsContr * * @return The call builder */ - public DeleteV1ContractorsContractorUuidTerminationRequestBuilder deleteV1ContractorsContractorUuidTermination() { - return new DeleteV1ContractorsContractorUuidTerminationRequestBuilder(sdkConfiguration); + public PutV1ContractorsContractorUuidOnboardingStatusRequestBuilder updateOnboardingStatus() { + return new PutV1ContractorsContractorUuidOnboardingStatusRequestBuilder(sdkConfiguration); } /** - * Cancel a pending contractor termination + * Change the contractor's onboarding status * - *

    ## Purpose - * Cancels a pending contractor dismissal. For future-dated dismissals, cancellation is available - * anytime before the date. - * For past-dated dismissals, cancellation is only available within the 2-day grace period. + *

    Updates a contractor's onboarding status. * - *

    ## Prerequisites - * Before calling this endpoint: - * - The contractor must have a pending dismissal (scheduled or within the grace period) + *

    Below is a list of valid onboarding status changes depending on the intended action to be performed + * on behalf of the contractor. * - *

    ## Related webhooks - * - `contractor.reactivated`: Fires when the contractor becomes active again after cancellation + *

    | Action | current onboarding_status | new onboarding_status | + * |:------------------|:------------:|----------:| + * | Mark a contractor as self-onboarding | `admin_onboarding_incomplete` | + * `self_onboarding_not_invited` | + * | Invite a contractor to self-onboard | `admin_onboarding_incomplete` or + * `self_onboarding_not_invited` | `self_onboarding_invited` | + * | Cancel a contractor's self-onboarding | `self_onboarding_invited` or `self_onboarding_not_invited` + * | `admin_onboarding_incomplete` | + * | Review a contractor's self-onboarded info | `self_onboarding_started` | `self_onboarding_review` | + * | Finish a contractor's onboarding | `admin_onboarding_review` or `self_onboarding_review` | + * `onboarding_completed` | * *

    scope: `contractors:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param contractorUuid The UUID of the contractor + * @param contractorOnboardingStatusUpdateRequestBody Request body for updating a contractor's onboarding status. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public DeleteV1ContractorsContractorUuidTerminationResponse deleteV1ContractorsContractorUuidTermination(String contractorUuid) { - return deleteV1ContractorsContractorUuidTermination(contractorUuid, Optional.empty()); + public PutV1ContractorsContractorUuidOnboardingStatusResponse updateOnboardingStatus(String contractorUuid, ContractorOnboardingStatusUpdateRequestBody contractorOnboardingStatusUpdateRequestBody) { + return updateOnboardingStatus(Optional.empty(), contractorUuid, contractorOnboardingStatusUpdateRequestBody); } /** - * Cancel a pending contractor termination + * Change the contractor's onboarding status * - *

    ## Purpose - * Cancels a pending contractor dismissal. For future-dated dismissals, cancellation is available - * anytime before the date. - * For past-dated dismissals, cancellation is only available within the 2-day grace period. + *

    Updates a contractor's onboarding status. * - *

    ## Prerequisites - * Before calling this endpoint: - * - The contractor must have a pending dismissal (scheduled or within the grace period) + *

    Below is a list of valid onboarding status changes depending on the intended action to be performed + * on behalf of the contractor. * - *

    ## Related webhooks - * - `contractor.reactivated`: Fires when the contractor becomes active again after cancellation + *

    | Action | current onboarding_status | new onboarding_status | + * |:------------------|:------------:|----------:| + * | Mark a contractor as self-onboarding | `admin_onboarding_incomplete` | + * `self_onboarding_not_invited` | + * | Invite a contractor to self-onboard | `admin_onboarding_incomplete` or + * `self_onboarding_not_invited` | `self_onboarding_invited` | + * | Cancel a contractor's self-onboarding | `self_onboarding_invited` or `self_onboarding_not_invited` + * | `admin_onboarding_incomplete` | + * | Review a contractor's self-onboarded info | `self_onboarding_started` | `self_onboarding_review` | + * | Finish a contractor's onboarding | `admin_onboarding_review` or `self_onboarding_review` | + * `onboarding_completed` | * *

    scope: `contractors:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param contractorUuid The UUID of the contractor * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param contractorUuid The UUID of the contractor + * @param contractorOnboardingStatusUpdateRequestBody Request body for updating a contractor's onboarding status. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public DeleteV1ContractorsContractorUuidTerminationResponse deleteV1ContractorsContractorUuidTermination(String contractorUuid, Optional xGustoAPIVersion) { - DeleteV1ContractorsContractorUuidTerminationRequest request = - DeleteV1ContractorsContractorUuidTerminationRequest + public PutV1ContractorsContractorUuidOnboardingStatusResponse updateOnboardingStatus( + Optional xGustoAPIVersion, String contractorUuid, + ContractorOnboardingStatusUpdateRequestBody contractorOnboardingStatusUpdateRequestBody) { + PutV1ContractorsContractorUuidOnboardingStatusRequest request = + PutV1ContractorsContractorUuidOnboardingStatusRequest .builder() - .contractorUuid(contractorUuid) .xGustoAPIVersion(xGustoAPIVersion) + .contractorUuid(contractorUuid) + .contractorOnboardingStatusUpdateRequestBody(contractorOnboardingStatusUpdateRequestBody) .build(); - RequestOperation operation - = new DeleteV1ContractorsContractorUuidTermination.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PutV1ContractorsContractorUuidOnboardingStatus.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/Departments.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/Departments.java index d16c3af99..44f355d6b 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/Departments.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/Departments.java @@ -67,130 +67,6 @@ public AsyncDepartments async() { return asyncSDK; } - /** - * Get all departments of a company - * - *

    Get all of the departments for a given company with the employees and contractors assigned to that - * department. - * - *

    scope: `departments:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The call builder - */ - public GetCompaniesDepartmentsRequestBuilder getAll() { - return new GetCompaniesDepartmentsRequestBuilder(sdkConfiguration); - } - - /** - * Get all departments of a company - * - *

    Get all of the departments for a given company with the employees and contractors assigned to that - * department. - * - *

    scope: `departments:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param companyUuid The UUID of the company - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public GetCompaniesDepartmentsResponse getAll(String companyUuid) { - return getAll(companyUuid, Optional.empty()); - } - - /** - * Get all departments of a company - * - *

    Get all of the departments for a given company with the employees and contractors assigned to that - * department. - * - *

    scope: `departments:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param companyUuid The UUID of the company - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public GetCompaniesDepartmentsResponse getAll(String companyUuid, Optional xGustoAPIVersion) { - GetCompaniesDepartmentsRequest request = - GetCompaniesDepartmentsRequest - .builder() - .companyUuid(companyUuid) - .xGustoAPIVersion(xGustoAPIVersion) - .build(); - RequestOperation operation - = new GetCompaniesDepartments.Sync(sdkConfiguration, _headers); - return operation.handleResponse(operation.doRequest(request)); - } - - /** - * Create a department - * - *

    Create a department - * - *

    scope: `departments:write` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The call builder - */ - public PostDepartmentsRequestBuilder create() { - return new PostDepartmentsRequestBuilder(sdkConfiguration); - } - - /** - * Create a department - * - *

    Create a department - * - *

    scope: `departments:write` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param companyUuid The UUID of the company - * @param departmentCreateRequestBody - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public PostDepartmentsResponse create(String companyUuid, DepartmentCreateRequestBody departmentCreateRequestBody) { - return create(companyUuid, Optional.empty(), departmentCreateRequestBody); - } - - /** - * Create a department - * - *

    Create a department - * - *

    scope: `departments:write` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param companyUuid The UUID of the company - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param departmentCreateRequestBody - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public PostDepartmentsResponse create( - String companyUuid, Optional xGustoAPIVersion, - DepartmentCreateRequestBody departmentCreateRequestBody) { - PostDepartmentsRequest request = - PostDepartmentsRequest - .builder() - .companyUuid(companyUuid) - .xGustoAPIVersion(xGustoAPIVersion) - .departmentCreateRequestBody(departmentCreateRequestBody) - .build(); - RequestOperation operation - = new PostDepartments.Sync(sdkConfiguration, _headers); - return operation.handleResponse(operation.doRequest(request)); - } - /** * Get a department * @@ -220,7 +96,7 @@ public GetDepartmentRequestBuilder get() { * @throws RuntimeException subclass if the API call fails */ public GetDepartmentResponse get(String departmentUuid) { - return get(departmentUuid, Optional.empty()); + return get(Optional.empty(), departmentUuid); } /** @@ -232,17 +108,17 @@ public GetDepartmentResponse get(String departmentUuid) { * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param departmentUuid The UUID of the department * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param departmentUuid The UUID of the department * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetDepartmentResponse get(String departmentUuid, Optional xGustoAPIVersion) { + public GetDepartmentResponse get(Optional xGustoAPIVersion, String departmentUuid) { GetDepartmentRequest request = GetDepartmentRequest .builder() - .departmentUuid(departmentUuid) .xGustoAPIVersion(xGustoAPIVersion) + .departmentUuid(departmentUuid) .build(); RequestOperation operation = new GetDepartment.Sync(sdkConfiguration, _headers); @@ -279,7 +155,7 @@ public PutDepartmentsRequestBuilder update() { * @throws RuntimeException subclass if the API call fails */ public PutDepartmentsResponse update(String departmentUuid, DepartmentUpdateRequestBody departmentUpdateRequestBody) { - return update(departmentUuid, Optional.empty(), departmentUpdateRequestBody); + return update(Optional.empty(), departmentUuid, departmentUpdateRequestBody); } /** @@ -291,20 +167,20 @@ public PutDepartmentsResponse update(String departmentUuid, DepartmentUpdateRequ * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param departmentUuid The UUID of the department * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param departmentUuid The UUID of the department * @param departmentUpdateRequestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PutDepartmentsResponse update( - String departmentUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String departmentUuid, DepartmentUpdateRequestBody departmentUpdateRequestBody) { PutDepartmentsRequest request = PutDepartmentsRequest .builder() - .departmentUuid(departmentUuid) .xGustoAPIVersion(xGustoAPIVersion) + .departmentUuid(departmentUuid) .departmentUpdateRequestBody(departmentUpdateRequestBody) .build(); RequestOperation operation @@ -343,7 +219,7 @@ public DeleteDepartmentRequestBuilder delete() { * @throws RuntimeException subclass if the API call fails */ public DeleteDepartmentResponse delete(String departmentUuid) { - return delete(departmentUuid, Optional.empty()); + return delete(Optional.empty(), departmentUuid); } /** @@ -356,17 +232,17 @@ public DeleteDepartmentResponse delete(String departmentUuid) { * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param departmentUuid The UUID of the department * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param departmentUuid The UUID of the department * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public DeleteDepartmentResponse delete(String departmentUuid, Optional xGustoAPIVersion) { + public DeleteDepartmentResponse delete(Optional xGustoAPIVersion, String departmentUuid) { DeleteDepartmentRequest request = DeleteDepartmentRequest .builder() - .departmentUuid(departmentUuid) .xGustoAPIVersion(xGustoAPIVersion) + .departmentUuid(departmentUuid) .build(); RequestOperation operation = new DeleteDepartment.Sync(sdkConfiguration, _headers); @@ -403,7 +279,7 @@ public PutAddPeopleToDepartmentRequestBuilder addPeople() { * @throws RuntimeException subclass if the API call fails */ public PutAddPeopleToDepartmentResponse addPeople(String departmentUuid, DepartmentPeopleRequestBody departmentPeopleRequestBody) { - return addPeople(departmentUuid, Optional.empty(), departmentPeopleRequestBody); + return addPeople(Optional.empty(), departmentUuid, departmentPeopleRequestBody); } /** @@ -415,20 +291,20 @@ public PutAddPeopleToDepartmentResponse addPeople(String departmentUuid, Departm * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param departmentUuid The UUID of the department * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param departmentUuid The UUID of the department * @param departmentPeopleRequestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PutAddPeopleToDepartmentResponse addPeople( - String departmentUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String departmentUuid, DepartmentPeopleRequestBody departmentPeopleRequestBody) { PutAddPeopleToDepartmentRequest request = PutAddPeopleToDepartmentRequest .builder() - .departmentUuid(departmentUuid) .xGustoAPIVersion(xGustoAPIVersion) + .departmentUuid(departmentUuid) .departmentPeopleRequestBody(departmentPeopleRequestBody) .build(); RequestOperation operation @@ -466,7 +342,7 @@ public PutRemovePeopleFromDepartmentRequestBuilder removePeople() { * @throws RuntimeException subclass if the API call fails */ public PutRemovePeopleFromDepartmentResponse removePeople(String departmentUuid, DepartmentPeopleRequestBody departmentPeopleRequestBody) { - return removePeople(departmentUuid, Optional.empty(), departmentPeopleRequestBody); + return removePeople(Optional.empty(), departmentUuid, departmentPeopleRequestBody); } /** @@ -478,20 +354,20 @@ public PutRemovePeopleFromDepartmentResponse removePeople(String departmentUuid, * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param departmentUuid The UUID of the department * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param departmentUuid The UUID of the department * @param departmentPeopleRequestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PutRemovePeopleFromDepartmentResponse removePeople( - String departmentUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String departmentUuid, DepartmentPeopleRequestBody departmentPeopleRequestBody) { PutRemovePeopleFromDepartmentRequest request = PutRemovePeopleFromDepartmentRequest .builder() - .departmentUuid(departmentUuid) .xGustoAPIVersion(xGustoAPIVersion) + .departmentUuid(departmentUuid) .departmentPeopleRequestBody(departmentPeopleRequestBody) .build(); RequestOperation operation @@ -499,4 +375,128 @@ public PutRemovePeopleFromDepartmentResponse removePeople( return operation.handleResponse(operation.doRequest(request)); } + /** + * Get all departments of a company + * + *

    Get all of the departments for a given company with the employees and contractors assigned to that + * department. + * + *

    scope: `departments:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public GetCompaniesDepartmentsRequestBuilder getAll() { + return new GetCompaniesDepartmentsRequestBuilder(sdkConfiguration); + } + + /** + * Get all departments of a company + * + *

    Get all of the departments for a given company with the employees and contractors assigned to that + * department. + * + *

    scope: `departments:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param companyUuid The UUID of the company + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetCompaniesDepartmentsResponse getAll(String companyUuid) { + return getAll(Optional.empty(), companyUuid); + } + + /** + * Get all departments of a company + * + *

    Get all of the departments for a given company with the employees and contractors assigned to that + * department. + * + *

    scope: `departments:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetCompaniesDepartmentsResponse getAll(Optional xGustoAPIVersion, String companyUuid) { + GetCompaniesDepartmentsRequest request = + GetCompaniesDepartmentsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) + .build(); + RequestOperation operation + = new GetCompaniesDepartments.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + + /** + * Create a department + * + *

    Create a department + * + *

    scope: `departments:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public PostDepartmentsRequestBuilder create() { + return new PostDepartmentsRequestBuilder(sdkConfiguration); + } + + /** + * Create a department + * + *

    Create a department + * + *

    scope: `departments:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param companyUuid The UUID of the company + * @param departmentCreateRequestBody + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public PostDepartmentsResponse create(String companyUuid, DepartmentCreateRequestBody departmentCreateRequestBody) { + return create(Optional.empty(), companyUuid, departmentCreateRequestBody); + } + + /** + * Create a department + * + *

    Create a department + * + *

    scope: `departments:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company + * @param departmentCreateRequestBody + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public PostDepartmentsResponse create( + Optional xGustoAPIVersion, String companyUuid, + DepartmentCreateRequestBody departmentCreateRequestBody) { + PostDepartmentsRequest request = + PostDepartmentsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) + .departmentCreateRequestBody(departmentCreateRequestBody) + .build(); + RequestOperation operation + = new PostDepartments.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/EmployeeAddresses.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/EmployeeAddresses.java index 997ce8fc7..6b56d6934 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/EmployeeAddresses.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/EmployeeAddresses.java @@ -118,7 +118,7 @@ public GetV1EmployeesEmployeeIdHomeAddressesRequestBuilder get() { * @throws RuntimeException subclass if the API call fails */ public GetV1EmployeesEmployeeIdHomeAddressesResponse get(String employeeId) { - return get(employeeId, Optional.empty()); + return get(Optional.empty(), employeeId); } /** @@ -133,17 +133,17 @@ public GetV1EmployeesEmployeeIdHomeAddressesResponse get(String employeeId) { * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param employeeId The UUID of the employee * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param employeeId The UUID of the employee * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1EmployeesEmployeeIdHomeAddressesResponse get(String employeeId, Optional xGustoAPIVersion) { + public GetV1EmployeesEmployeeIdHomeAddressesResponse get(Optional xGustoAPIVersion, String employeeId) { GetV1EmployeesEmployeeIdHomeAddressesRequest request = GetV1EmployeesEmployeeIdHomeAddressesRequest .builder() - .employeeId(employeeId) .xGustoAPIVersion(xGustoAPIVersion) + .employeeId(employeeId) .build(); RequestOperation operation = new GetV1EmployeesEmployeeIdHomeAddresses.Sync(sdkConfiguration, _headers); @@ -186,7 +186,7 @@ public PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder create() { * @throws RuntimeException subclass if the API call fails */ public PostV1EmployeesEmployeeIdHomeAddressesResponse create(String employeeId, PostV1EmployeesEmployeeIdHomeAddressesRequestBody requestBody) { - return create(employeeId, Optional.empty(), requestBody); + return create(Optional.empty(), employeeId, requestBody); } /** @@ -201,20 +201,20 @@ public PostV1EmployeesEmployeeIdHomeAddressesResponse create(String employeeId, * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param employeeId The UUID of the employee * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param employeeId The UUID of the employee * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PostV1EmployeesEmployeeIdHomeAddressesResponse create( - String employeeId, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String employeeId, PostV1EmployeesEmployeeIdHomeAddressesRequestBody requestBody) { PostV1EmployeesEmployeeIdHomeAddressesRequest request = PostV1EmployeesEmployeeIdHomeAddressesRequest .builder() - .employeeId(employeeId) .xGustoAPIVersion(xGustoAPIVersion) + .employeeId(employeeId) .requestBody(requestBody) .build(); RequestOperation operation @@ -257,7 +257,7 @@ public GetV1HomeAddressesHomeAddressUuidRequestBuilder retrieveHomeAddress() { * @throws RuntimeException subclass if the API call fails */ public GetV1HomeAddressesHomeAddressUuidResponse retrieveHomeAddress(String homeAddressUuid) { - return retrieveHomeAddress(homeAddressUuid, Optional.empty()); + return retrieveHomeAddress(Optional.empty(), homeAddressUuid); } /** @@ -272,17 +272,17 @@ public GetV1HomeAddressesHomeAddressUuidResponse retrieveHomeAddress(String home * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param homeAddressUuid The UUID of the home address * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param homeAddressUuid The UUID of the home address * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1HomeAddressesHomeAddressUuidResponse retrieveHomeAddress(String homeAddressUuid, Optional xGustoAPIVersion) { + public GetV1HomeAddressesHomeAddressUuidResponse retrieveHomeAddress(Optional xGustoAPIVersion, String homeAddressUuid) { GetV1HomeAddressesHomeAddressUuidRequest request = GetV1HomeAddressesHomeAddressUuidRequest .builder() - .homeAddressUuid(homeAddressUuid) .xGustoAPIVersion(xGustoAPIVersion) + .homeAddressUuid(homeAddressUuid) .build(); RequestOperation operation = new GetV1HomeAddressesHomeAddressUuid.Sync(sdkConfiguration, _headers); @@ -450,7 +450,7 @@ public GetV1EmployeesEmployeeIdWorkAddressesRequestBuilder getWorkAddresses() { * @throws RuntimeException subclass if the API call fails */ public GetV1EmployeesEmployeeIdWorkAddressesResponse getWorkAddresses(String employeeId) { - return getWorkAddresses(employeeId, Optional.empty()); + return getWorkAddresses(Optional.empty(), employeeId); } /** @@ -463,17 +463,17 @@ public GetV1EmployeesEmployeeIdWorkAddressesResponse getWorkAddresses(String emp * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param employeeId The UUID of the employee * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param employeeId The UUID of the employee * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1EmployeesEmployeeIdWorkAddressesResponse getWorkAddresses(String employeeId, Optional xGustoAPIVersion) { + public GetV1EmployeesEmployeeIdWorkAddressesResponse getWorkAddresses(Optional xGustoAPIVersion, String employeeId) { GetV1EmployeesEmployeeIdWorkAddressesRequest request = GetV1EmployeesEmployeeIdWorkAddressesRequest .builder() - .employeeId(employeeId) .xGustoAPIVersion(xGustoAPIVersion) + .employeeId(employeeId) .build(); RequestOperation operation = new GetV1EmployeesEmployeeIdWorkAddresses.Sync(sdkConfiguration, _headers); @@ -512,7 +512,7 @@ public PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder createWorkAddress() * @throws RuntimeException subclass if the API call fails */ public PostV1EmployeesEmployeeIdWorkAddressesResponse createWorkAddress(String employeeId, PostV1EmployeesEmployeeIdWorkAddressesRequestBody requestBody) { - return createWorkAddress(employeeId, Optional.empty(), requestBody); + return createWorkAddress(Optional.empty(), employeeId, requestBody); } /** @@ -525,20 +525,20 @@ public PostV1EmployeesEmployeeIdWorkAddressesResponse createWorkAddress(String e * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param employeeId The UUID of the employee * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param employeeId The UUID of the employee * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PostV1EmployeesEmployeeIdWorkAddressesResponse createWorkAddress( - String employeeId, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String employeeId, PostV1EmployeesEmployeeIdWorkAddressesRequestBody requestBody) { PostV1EmployeesEmployeeIdWorkAddressesRequest request = PostV1EmployeesEmployeeIdWorkAddressesRequest .builder() - .employeeId(employeeId) .xGustoAPIVersion(xGustoAPIVersion) + .employeeId(employeeId) .requestBody(requestBody) .build(); RequestOperation operation @@ -575,7 +575,7 @@ public GetV1WorkAddressesWorkAddressUuidRequestBuilder retrieveWorkAddress() { * @throws RuntimeException subclass if the API call fails */ public GetV1WorkAddressesWorkAddressUuidResponse retrieveWorkAddress(String workAddressUuid) { - return retrieveWorkAddress(workAddressUuid, Optional.empty()); + return retrieveWorkAddress(Optional.empty(), workAddressUuid); } /** @@ -587,17 +587,17 @@ public GetV1WorkAddressesWorkAddressUuidResponse retrieveWorkAddress(String work * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param workAddressUuid The UUID of the work address * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param workAddressUuid The UUID of the work address * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1WorkAddressesWorkAddressUuidResponse retrieveWorkAddress(String workAddressUuid, Optional xGustoAPIVersion) { + public GetV1WorkAddressesWorkAddressUuidResponse retrieveWorkAddress(Optional xGustoAPIVersion, String workAddressUuid) { GetV1WorkAddressesWorkAddressUuidRequest request = GetV1WorkAddressesWorkAddressUuidRequest .builder() - .workAddressUuid(workAddressUuid) .xGustoAPIVersion(xGustoAPIVersion) + .workAddressUuid(workAddressUuid) .build(); RequestOperation operation = new GetV1WorkAddressesWorkAddressUuid.Sync(sdkConfiguration, _headers); @@ -634,7 +634,7 @@ public PutV1WorkAddressesWorkAddressUuidRequestBuilder updateWorkAddress() { * @throws RuntimeException subclass if the API call fails */ public PutV1WorkAddressesWorkAddressUuidResponse updateWorkAddress(String workAddressUuid, PutV1WorkAddressesWorkAddressUuidRequestBody requestBody) { - return updateWorkAddress(workAddressUuid, Optional.empty(), requestBody); + return updateWorkAddress(Optional.empty(), workAddressUuid, requestBody); } /** @@ -646,20 +646,20 @@ public PutV1WorkAddressesWorkAddressUuidResponse updateWorkAddress(String workAd * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param workAddressUuid The UUID of the work address * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param workAddressUuid The UUID of the work address * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PutV1WorkAddressesWorkAddressUuidResponse updateWorkAddress( - String workAddressUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String workAddressUuid, PutV1WorkAddressesWorkAddressUuidRequestBody requestBody) { PutV1WorkAddressesWorkAddressUuidRequest request = PutV1WorkAddressesWorkAddressUuidRequest .builder() - .workAddressUuid(workAddressUuid) .xGustoAPIVersion(xGustoAPIVersion) + .workAddressUuid(workAddressUuid) .requestBody(requestBody) .build(); RequestOperation operation @@ -696,7 +696,7 @@ public DeleteV1WorkAddressesWorkAddressUuidRequestBuilder deleteWorkAddress() { * @throws RuntimeException subclass if the API call fails */ public DeleteV1WorkAddressesWorkAddressUuidResponse deleteWorkAddress(String workAddressUuid) { - return deleteWorkAddress(workAddressUuid, Optional.empty()); + return deleteWorkAddress(Optional.empty(), workAddressUuid); } /** @@ -708,17 +708,17 @@ public DeleteV1WorkAddressesWorkAddressUuidResponse deleteWorkAddress(String wor * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param workAddressUuid The UUID of the work address * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param workAddressUuid The UUID of the work address * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public DeleteV1WorkAddressesWorkAddressUuidResponse deleteWorkAddress(String workAddressUuid, Optional xGustoAPIVersion) { + public DeleteV1WorkAddressesWorkAddressUuidResponse deleteWorkAddress(Optional xGustoAPIVersion, String workAddressUuid) { DeleteV1WorkAddressesWorkAddressUuidRequest request = DeleteV1WorkAddressesWorkAddressUuidRequest .builder() - .workAddressUuid(workAddressUuid) .xGustoAPIVersion(xGustoAPIVersion) + .workAddressUuid(workAddressUuid) .build(); RequestOperation operation = new DeleteV1WorkAddressesWorkAddressUuid.Sync(sdkConfiguration, _headers); diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/EmployeeBenefits.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/EmployeeBenefits.java index 5c8679a6f..b5397ac56 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/EmployeeBenefits.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/EmployeeBenefits.java @@ -622,7 +622,7 @@ public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder getV * @throws RuntimeException subclass if the API call fails */ public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesResponse getV1EmployeesEmployeeUuidSection603HighEarnerStatuses(String employeeUuid) { - return getV1EmployeesEmployeeUuidSection603HighEarnerStatuses(employeeUuid, Optional.empty()); + return getV1EmployeesEmployeeUuidSection603HighEarnerStatuses(Optional.empty(), employeeUuid); } /** @@ -639,17 +639,17 @@ public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesResponse getV1Emplo * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param employeeUuid The UUID of the employee * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param employeeUuid The UUID of the employee * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesResponse getV1EmployeesEmployeeUuidSection603HighEarnerStatuses(String employeeUuid, Optional xGustoAPIVersion) { + public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesResponse getV1EmployeesEmployeeUuidSection603HighEarnerStatuses(Optional xGustoAPIVersion, String employeeUuid) { GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest request = GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest .builder() - .employeeUuid(employeeUuid) .xGustoAPIVersion(xGustoAPIVersion) + .employeeUuid(employeeUuid) .build(); RequestOperation operation = new GetV1EmployeesEmployeeUuidSection603HighEarnerStatuses.Sync(sdkConfiguration, _headers); @@ -696,7 +696,7 @@ public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder pos * @throws RuntimeException subclass if the API call fails */ public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesResponse postV1EmployeesEmployeeUuidSection603HighEarnerStatuses(String employeeUuid, EmployeeSection603HighEarnerStatusCreateRequest employeeSection603HighEarnerStatusCreateRequest) { - return postV1EmployeesEmployeeUuidSection603HighEarnerStatuses(employeeUuid, Optional.empty(), employeeSection603HighEarnerStatusCreateRequest); + return postV1EmployeesEmployeeUuidSection603HighEarnerStatuses(Optional.empty(), employeeUuid, employeeSection603HighEarnerStatusCreateRequest); } /** @@ -713,20 +713,20 @@ public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesResponse postV1Emp * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param employeeUuid The UUID of the employee * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param employeeUuid The UUID of the employee * @param employeeSection603HighEarnerStatusCreateRequest Request body for creating an employee's Section 603 high earner status * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesResponse postV1EmployeesEmployeeUuidSection603HighEarnerStatuses( - String employeeUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String employeeUuid, EmployeeSection603HighEarnerStatusCreateRequest employeeSection603HighEarnerStatusCreateRequest) { PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest request = PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest .builder() - .employeeUuid(employeeUuid) .xGustoAPIVersion(xGustoAPIVersion) + .employeeUuid(employeeUuid) .employeeSection603HighEarnerStatusCreateRequest(employeeSection603HighEarnerStatusCreateRequest) .build(); RequestOperation operation @@ -774,7 +774,7 @@ public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearReques * @throws RuntimeException subclass if the API call fails */ public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearResponse getV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYear(String employeeUuid, long effectiveYear) { - return getV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYear(employeeUuid, effectiveYear, Optional.empty()); + return getV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYear(Optional.empty(), employeeUuid, effectiveYear); } /** @@ -791,21 +791,21 @@ public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRespon * *

    If set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param employeeUuid The UUID of the employee * @param effectiveYear The effective year for the Section 603 status - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearResponse getV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYear( - String employeeUuid, long effectiveYear, - Optional xGustoAPIVersion) { + Optional xGustoAPIVersion, String employeeUuid, + long effectiveYear) { GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest request = GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest .builder() + .xGustoAPIVersion(xGustoAPIVersion) .employeeUuid(employeeUuid) .effectiveYear(effectiveYear) - .xGustoAPIVersion(xGustoAPIVersion) .build(); RequestOperation operation = new GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYear.Sync(sdkConfiguration, _headers); @@ -855,7 +855,7 @@ public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequ public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearResponse patchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYear( String employeeUuid, long effectiveYear, EmployeeSection603HighEarnerStatusUpdateRequest employeeSection603HighEarnerStatusUpdateRequest) { - return patchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYear(employeeUuid, effectiveYear, Optional.empty(), + return patchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYear(Optional.empty(), employeeUuid, effectiveYear, employeeSection603HighEarnerStatusUpdateRequest); } @@ -873,22 +873,22 @@ public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearResp * *

    If set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param employeeUuid The UUID of the employee * @param effectiveYear The effective year for the Section 603 status - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param employeeSection603HighEarnerStatusUpdateRequest Request body for updating an employee's Section 603 high earner status * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearResponse patchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYear( - String employeeUuid, long effectiveYear, - Optional xGustoAPIVersion, EmployeeSection603HighEarnerStatusUpdateRequest employeeSection603HighEarnerStatusUpdateRequest) { + Optional xGustoAPIVersion, String employeeUuid, + long effectiveYear, EmployeeSection603HighEarnerStatusUpdateRequest employeeSection603HighEarnerStatusUpdateRequest) { PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest request = PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest .builder() + .xGustoAPIVersion(xGustoAPIVersion) .employeeUuid(employeeUuid) .effectiveYear(effectiveYear) - .xGustoAPIVersion(xGustoAPIVersion) .employeeSection603HighEarnerStatusUpdateRequest(employeeSection603HighEarnerStatusUpdateRequest) .build(); RequestOperation operation diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/EmployeeEmployments.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/EmployeeEmployments.java index 468b331de..d26017fc3 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/EmployeeEmployments.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/EmployeeEmployments.java @@ -84,14 +84,9 @@ public AsyncEmployeeEmployments async() { } /** - * Get terminations for an employee - * - *

    Terminations are created whenever an employee is scheduled to leave the company. The only things - * required are an effective date (their last day of work) and whether they should receive their wages - * in a one-off termination payroll or with the rest of the company. + * Get an employee rehire * - *

    Note that some states require employees to receive their final wages within 24 hours (unless they - * consent otherwise,) in which case running a one-off payroll may be the only option. + *

    Retrieve an employee's rehire, which contains information on when the employee returns to work. * *

    scope: `employments:read` * @@ -99,19 +94,14 @@ public AsyncEmployeeEmployments async() { * * @return The call builder */ - public GetV1EmployeesEmployeeIdTerminationsRequestBuilder getTerminations() { - return new GetV1EmployeesEmployeeIdTerminationsRequestBuilder(sdkConfiguration); + public GetV1EmployeesEmployeeIdRehireRequestBuilder getRehire() { + return new GetV1EmployeesEmployeeIdRehireRequestBuilder(sdkConfiguration); } /** - * Get terminations for an employee - * - *

    Terminations are created whenever an employee is scheduled to leave the company. The only things - * required are an effective date (their last day of work) and whether they should receive their wages - * in a one-off termination payroll or with the rest of the company. + * Get an employee rehire * - *

    Note that some states require employees to receive their final wages within 24 hours (unless they - * consent otherwise,) in which case running a one-off payroll may be the only option. + *

    Retrieve an employee's rehire, which contains information on when the employee returns to work. * *

    scope: `employments:read` * @@ -121,19 +111,14 @@ public GetV1EmployeesEmployeeIdTerminationsRequestBuilder getTerminations() { * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1EmployeesEmployeeIdTerminationsResponse getTerminations(String employeeId) { - return getTerminations(Optional.empty(), employeeId); + public GetV1EmployeesEmployeeIdRehireResponse getRehire(String employeeId) { + return getRehire(Optional.empty(), employeeId); } /** - * Get terminations for an employee - * - *

    Terminations are created whenever an employee is scheduled to leave the company. The only things - * required are an effective date (their last day of work) and whether they should receive their wages - * in a one-off termination payroll or with the rest of the company. + * Get an employee rehire * - *

    Note that some states require employees to receive their final wages within 24 hours (unless they - * consent otherwise,) in which case running a one-off payroll may be the only option. + *

    Retrieve an employee's rehire, which contains information on when the employee returns to work. * *

    scope: `employments:read` * @@ -144,27 +129,22 @@ public GetV1EmployeesEmployeeIdTerminationsResponse getTerminations(String emplo * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1EmployeesEmployeeIdTerminationsResponse getTerminations(Optional xGustoAPIVersion, String employeeId) { - GetV1EmployeesEmployeeIdTerminationsRequest request = - GetV1EmployeesEmployeeIdTerminationsRequest + public GetV1EmployeesEmployeeIdRehireResponse getRehire(Optional xGustoAPIVersion, String employeeId) { + GetV1EmployeesEmployeeIdRehireRequest request = + GetV1EmployeesEmployeeIdRehireRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .employeeId(employeeId) .build(); - RequestOperation operation - = new GetV1EmployeesEmployeeIdTerminations.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new GetV1EmployeesEmployeeIdRehire.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Create an employee termination - * - *

    Create a termination for an employee. The only things required are an effective date (their last day - * of work) and whether they should receive their wages in a one-off termination payroll or with the - * rest of the company. + * Create an employee rehire * - *

    Note that some states require employees to receive their final wages within 24 hours (unless they - * consent otherwise,) in which case running a one-off payroll may be the only option. + *

    Rehire is created whenever an employee is scheduled to return to the company. * *

    scope: `employments:write` * @@ -172,42 +152,32 @@ public GetV1EmployeesEmployeeIdTerminationsResponse getTerminations(OptionalCreate a termination for an employee. The only things required are an effective date (their last day - * of work) and whether they should receive their wages in a one-off termination payroll or with the - * rest of the company. + * Create an employee rehire * - *

    Note that some states require employees to receive their final wages within 24 hours (unless they - * consent otherwise,) in which case running a one-off payroll may be the only option. + *

    Rehire is created whenever an employee is scheduled to return to the company. * *

    scope: `employments:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param employeeId The UUID of the employee - * @param requestBody + * @param rehireBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostV1EmployeesEmployeeIdTerminationsResponse createTermination(String employeeId, PostV1EmployeesEmployeeIdTerminationsRequestBody requestBody) { - return createTermination(Optional.empty(), employeeId, requestBody); + public PostV1EmployeesEmployeeIdRehireResponse createRehire(String employeeId, RehireBody rehireBody) { + return createRehire(Optional.empty(), employeeId, rehireBody); } /** - * Create an employee termination - * - *

    Create a termination for an employee. The only things required are an effective date (their last day - * of work) and whether they should receive their wages in a one-off termination payroll or with the - * rest of the company. + * Create an employee rehire * - *

    Note that some states require employees to receive their final wages within 24 hours (unless they - * consent otherwise,) in which case running a one-off payroll may be the only option. + *

    Rehire is created whenever an employee is scheduled to return to the company. * *

    scope: `employments:write` * @@ -215,29 +185,29 @@ public PostV1EmployeesEmployeeIdTerminationsResponse createTermination(String em * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param employeeId The UUID of the employee - * @param requestBody + * @param rehireBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostV1EmployeesEmployeeIdTerminationsResponse createTermination( - Optional xGustoAPIVersion, String employeeId, - PostV1EmployeesEmployeeIdTerminationsRequestBody requestBody) { - PostV1EmployeesEmployeeIdTerminationsRequest request = - PostV1EmployeesEmployeeIdTerminationsRequest + public PostV1EmployeesEmployeeIdRehireResponse createRehire( + Optional xGustoAPIVersion, String employeeId, + RehireBody rehireBody) { + PostV1EmployeesEmployeeIdRehireRequest request = + PostV1EmployeesEmployeeIdRehireRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .employeeId(employeeId) - .requestBody(requestBody) + .rehireBody(rehireBody) .build(); - RequestOperation operation - = new PostV1EmployeesEmployeeIdTerminations.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PostV1EmployeesEmployeeIdRehire.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Delete an employee termination + * Update an employee rehire * - *

    Delete an employee termination. + *

    Update an employee's rehire. * *

    scope: `employments:write` * @@ -245,31 +215,32 @@ public PostV1EmployeesEmployeeIdTerminationsResponse createTermination( * * @return The call builder */ - public DeleteV1EmployeesEmployeeIdTerminationsRequestBuilder deleteTermination() { - return new DeleteV1EmployeesEmployeeIdTerminationsRequestBuilder(sdkConfiguration); + public PutV1EmployeesEmployeeIdRehireRequestBuilder rehire() { + return new PutV1EmployeesEmployeeIdRehireRequestBuilder(sdkConfiguration); } /** - * Delete an employee termination + * Update an employee rehire * - *

    Delete an employee termination. + *

    Update an employee's rehire. * *

    scope: `employments:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param employeeId The UUID of the employee + * @param rehireUpdateRequestBody Request body for updating an employee rehire. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public DeleteV1EmployeesEmployeeIdTerminationsResponse deleteTermination(String employeeId) { - return deleteTermination(Optional.empty(), employeeId); + public PutV1EmployeesEmployeeIdRehireResponse rehire(String employeeId, RehireUpdateRequestBody rehireUpdateRequestBody) { + return rehire(Optional.empty(), employeeId, rehireUpdateRequestBody); } /** - * Delete an employee termination + * Update an employee rehire * - *

    Delete an employee termination. + *

    Update an employee's rehire. * *

    scope: `employments:write` * @@ -277,30 +248,30 @@ public DeleteV1EmployeesEmployeeIdTerminationsResponse deleteTermination(String * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param employeeId The UUID of the employee + * @param rehireUpdateRequestBody Request body for updating an employee rehire. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public DeleteV1EmployeesEmployeeIdTerminationsResponse deleteTermination(Optional xGustoAPIVersion, String employeeId) { - DeleteV1EmployeesEmployeeIdTerminationsRequest request = - DeleteV1EmployeesEmployeeIdTerminationsRequest + public PutV1EmployeesEmployeeIdRehireResponse rehire( + Optional xGustoAPIVersion, String employeeId, + RehireUpdateRequestBody rehireUpdateRequestBody) { + PutV1EmployeesEmployeeIdRehireRequest request = + PutV1EmployeesEmployeeIdRehireRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .employeeId(employeeId) + .rehireUpdateRequestBody(rehireUpdateRequestBody) .build(); - RequestOperation operation - = new DeleteV1EmployeesEmployeeIdTerminations.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PutV1EmployeesEmployeeIdRehire.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Update an employee termination - * - *

    Terminations are created whenever an employee is scheduled to leave the company. The only things - * required are an effective date (their last day of work) and whether they should receive their wages - * in a one-off termination payroll or with the rest of the company. + * Delete an employee rehire * - *

    Note that some states require employees to receive their final wages within 24 hours (unless they - * consent otherwise,) in which case running a one-off payroll may be the only option. + *

    Delete an employee rehire. An employee rehire cannot be deleted if it's active (past effective + * date). * *

    scope: `employments:write` * @@ -308,42 +279,33 @@ public DeleteV1EmployeesEmployeeIdTerminationsResponse deleteTermination(Optiona * * @return The call builder */ - public PutV1TerminationsEmployeeIdRequestBuilder updateTermination() { - return new PutV1TerminationsEmployeeIdRequestBuilder(sdkConfiguration); + public DeleteV1EmployeesEmployeeIdRehireRequestBuilder deleteRehire() { + return new DeleteV1EmployeesEmployeeIdRehireRequestBuilder(sdkConfiguration); } /** - * Update an employee termination - * - *

    Terminations are created whenever an employee is scheduled to leave the company. The only things - * required are an effective date (their last day of work) and whether they should receive their wages - * in a one-off termination payroll or with the rest of the company. + * Delete an employee rehire * - *

    Note that some states require employees to receive their final wages within 24 hours (unless they - * consent otherwise,) in which case running a one-off payroll may be the only option. + *

    Delete an employee rehire. An employee rehire cannot be deleted if it's active (past effective + * date). * *

    scope: `employments:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param employeeId The UUID of the employee - * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1TerminationsEmployeeIdResponse updateTermination(String employeeId, PutV1TerminationsEmployeeIdRequestBody requestBody) { - return updateTermination(Optional.empty(), employeeId, requestBody); + public DeleteV1EmployeesEmployeeIdRehireResponse deleteRehire(String employeeId) { + return deleteRehire(Optional.empty(), employeeId); } /** - * Update an employee termination - * - *

    Terminations are created whenever an employee is scheduled to leave the company. The only things - * required are an effective date (their last day of work) and whether they should receive their wages - * in a one-off termination payroll or with the rest of the company. + * Delete an employee rehire * - *

    Note that some states require employees to receive their final wages within 24 hours (unless they - * consent otherwise,) in which case running a one-off payroll may be the only option. + *

    Delete an employee rehire. An employee rehire cannot be deleted if it's active (past effective + * date). * *

    scope: `employments:write` * @@ -351,29 +313,25 @@ public PutV1TerminationsEmployeeIdResponse updateTermination(String employeeId, * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param employeeId The UUID of the employee - * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1TerminationsEmployeeIdResponse updateTermination( - Optional xGustoAPIVersion, String employeeId, - PutV1TerminationsEmployeeIdRequestBody requestBody) { - PutV1TerminationsEmployeeIdRequest request = - PutV1TerminationsEmployeeIdRequest + public DeleteV1EmployeesEmployeeIdRehireResponse deleteRehire(Optional xGustoAPIVersion, String employeeId) { + DeleteV1EmployeesEmployeeIdRehireRequest request = + DeleteV1EmployeesEmployeeIdRehireRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .employeeId(employeeId) - .requestBody(requestBody) .build(); - RequestOperation operation - = new PutV1TerminationsEmployeeId.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new DeleteV1EmployeesEmployeeIdRehire.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Get an employee rehire + * Get employment history for an employee * - *

    Retrieve an employee's rehire, which contains information on when the employee returns to work. + *

    Retrieve the employment history for a given employee, which includes termination and rehire. * *

    scope: `employments:read` * @@ -381,14 +339,14 @@ public PutV1TerminationsEmployeeIdResponse updateTermination( * * @return The call builder */ - public GetV1EmployeesEmployeeIdRehireRequestBuilder getRehire() { - return new GetV1EmployeesEmployeeIdRehireRequestBuilder(sdkConfiguration); + public GetV1EmployeesEmployeeIdEmploymentHistoryRequestBuilder getHistory() { + return new GetV1EmployeesEmployeeIdEmploymentHistoryRequestBuilder(sdkConfiguration); } /** - * Get an employee rehire + * Get employment history for an employee * - *

    Retrieve an employee's rehire, which contains information on when the employee returns to work. + *

    Retrieve the employment history for a given employee, which includes termination and rehire. * *

    scope: `employments:read` * @@ -398,14 +356,14 @@ public GetV1EmployeesEmployeeIdRehireRequestBuilder getRehire() { * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1EmployeesEmployeeIdRehireResponse getRehire(String employeeId) { - return getRehire(Optional.empty(), employeeId); + public GetV1EmployeesEmployeeIdEmploymentHistoryResponse getHistory(String employeeId) { + return getHistory(Optional.empty(), employeeId); } /** - * Get an employee rehire + * Get employment history for an employee * - *

    Retrieve an employee's rehire, which contains information on when the employee returns to work. + *

    Retrieve the employment history for a given employee, which includes termination and rehire. * *

    scope: `employments:read` * @@ -416,85 +374,100 @@ public GetV1EmployeesEmployeeIdRehireResponse getRehire(String employeeId) { * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1EmployeesEmployeeIdRehireResponse getRehire(Optional xGustoAPIVersion, String employeeId) { - GetV1EmployeesEmployeeIdRehireRequest request = - GetV1EmployeesEmployeeIdRehireRequest + public GetV1EmployeesEmployeeIdEmploymentHistoryResponse getHistory(Optional xGustoAPIVersion, String employeeId) { + GetV1EmployeesEmployeeIdEmploymentHistoryRequest request = + GetV1EmployeesEmployeeIdEmploymentHistoryRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .employeeId(employeeId) .build(); - RequestOperation operation - = new GetV1EmployeesEmployeeIdRehire.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new GetV1EmployeesEmployeeIdEmploymentHistory.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Create an employee rehire + * Get terminations for an employee * - *

    Rehire is created whenever an employee is scheduled to return to the company. + *

    Terminations are created whenever an employee is scheduled to leave the company. The only things + * required are an effective date (their last day of work) and whether they should receive their wages + * in a one-off termination payroll or with the rest of the company. * - *

    scope: `employments:write` + *

    Note that some states require employees to receive their final wages within 24 hours (unless they + * consent otherwise,) in which case running a one-off payroll may be the only option. + * + *

    scope: `employments:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public PostV1EmployeesEmployeeIdRehireRequestBuilder createRehire() { - return new PostV1EmployeesEmployeeIdRehireRequestBuilder(sdkConfiguration); + public GetV1EmployeesEmployeeIdTerminationsRequestBuilder getTerminations() { + return new GetV1EmployeesEmployeeIdTerminationsRequestBuilder(sdkConfiguration); } /** - * Create an employee rehire + * Get terminations for an employee * - *

    Rehire is created whenever an employee is scheduled to return to the company. + *

    Terminations are created whenever an employee is scheduled to leave the company. The only things + * required are an effective date (their last day of work) and whether they should receive their wages + * in a one-off termination payroll or with the rest of the company. * - *

    scope: `employments:write` + *

    Note that some states require employees to receive their final wages within 24 hours (unless they + * consent otherwise,) in which case running a one-off payroll may be the only option. + * + *

    scope: `employments:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param employeeId The UUID of the employee - * @param rehireBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostV1EmployeesEmployeeIdRehireResponse createRehire(String employeeId, RehireBody rehireBody) { - return createRehire(Optional.empty(), employeeId, rehireBody); + public GetV1EmployeesEmployeeIdTerminationsResponse getTerminations(String employeeId) { + return getTerminations(Optional.empty(), employeeId); } /** - * Create an employee rehire + * Get terminations for an employee * - *

    Rehire is created whenever an employee is scheduled to return to the company. + *

    Terminations are created whenever an employee is scheduled to leave the company. The only things + * required are an effective date (their last day of work) and whether they should receive their wages + * in a one-off termination payroll or with the rest of the company. * - *

    scope: `employments:write` + *

    Note that some states require employees to receive their final wages within 24 hours (unless they + * consent otherwise,) in which case running a one-off payroll may be the only option. + * + *

    scope: `employments:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param employeeId The UUID of the employee - * @param rehireBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostV1EmployeesEmployeeIdRehireResponse createRehire( - Optional xGustoAPIVersion, String employeeId, - RehireBody rehireBody) { - PostV1EmployeesEmployeeIdRehireRequest request = - PostV1EmployeesEmployeeIdRehireRequest + public GetV1EmployeesEmployeeIdTerminationsResponse getTerminations(Optional xGustoAPIVersion, String employeeId) { + GetV1EmployeesEmployeeIdTerminationsRequest request = + GetV1EmployeesEmployeeIdTerminationsRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .employeeId(employeeId) - .rehireBody(rehireBody) .build(); - RequestOperation operation - = new PostV1EmployeesEmployeeIdRehire.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new GetV1EmployeesEmployeeIdTerminations.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Update an employee rehire + * Create an employee termination * - *

    Update an employee's rehire. + *

    Create a termination for an employee. The only things required are an effective date (their last day + * of work) and whether they should receive their wages in a one-off termination payroll or with the + * rest of the company. + * + *

    Note that some states require employees to receive their final wages within 24 hours (unless they + * consent otherwise,) in which case running a one-off payroll may be the only option. * *

    scope: `employments:write` * @@ -502,32 +475,42 @@ public PostV1EmployeesEmployeeIdRehireResponse createRehire( * * @return The call builder */ - public PutV1EmployeesEmployeeIdRehireRequestBuilder rehire() { - return new PutV1EmployeesEmployeeIdRehireRequestBuilder(sdkConfiguration); + public PostV1EmployeesEmployeeIdTerminationsRequestBuilder createTermination() { + return new PostV1EmployeesEmployeeIdTerminationsRequestBuilder(sdkConfiguration); } /** - * Update an employee rehire + * Create an employee termination * - *

    Update an employee's rehire. + *

    Create a termination for an employee. The only things required are an effective date (their last day + * of work) and whether they should receive their wages in a one-off termination payroll or with the + * rest of the company. + * + *

    Note that some states require employees to receive their final wages within 24 hours (unless they + * consent otherwise,) in which case running a one-off payroll may be the only option. * *

    scope: `employments:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param employeeId The UUID of the employee - * @param rehireUpdateRequestBody Request body for updating an employee rehire. + * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1EmployeesEmployeeIdRehireResponse rehire(String employeeId, RehireUpdateRequestBody rehireUpdateRequestBody) { - return rehire(Optional.empty(), employeeId, rehireUpdateRequestBody); + public PostV1EmployeesEmployeeIdTerminationsResponse createTermination(String employeeId, PostV1EmployeesEmployeeIdTerminationsRequestBody requestBody) { + return createTermination(Optional.empty(), employeeId, requestBody); } /** - * Update an employee rehire + * Create an employee termination * - *

    Update an employee's rehire. + *

    Create a termination for an employee. The only things required are an effective date (their last day + * of work) and whether they should receive their wages in a one-off termination payroll or with the + * rest of the company. + * + *

    Note that some states require employees to receive their final wages within 24 hours (unless they + * consent otherwise,) in which case running a one-off payroll may be the only option. * *

    scope: `employments:write` * @@ -535,30 +518,29 @@ public PutV1EmployeesEmployeeIdRehireResponse rehire(String employeeId, RehireUp * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param employeeId The UUID of the employee - * @param rehireUpdateRequestBody Request body for updating an employee rehire. + * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1EmployeesEmployeeIdRehireResponse rehire( - Optional xGustoAPIVersion, String employeeId, - RehireUpdateRequestBody rehireUpdateRequestBody) { - PutV1EmployeesEmployeeIdRehireRequest request = - PutV1EmployeesEmployeeIdRehireRequest + public PostV1EmployeesEmployeeIdTerminationsResponse createTermination( + Optional xGustoAPIVersion, String employeeId, + PostV1EmployeesEmployeeIdTerminationsRequestBody requestBody) { + PostV1EmployeesEmployeeIdTerminationsRequest request = + PostV1EmployeesEmployeeIdTerminationsRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .employeeId(employeeId) - .rehireUpdateRequestBody(rehireUpdateRequestBody) + .requestBody(requestBody) .build(); - RequestOperation operation - = new PutV1EmployeesEmployeeIdRehire.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PostV1EmployeesEmployeeIdTerminations.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Delete an employee rehire + * Delete an employee termination * - *

    Delete an employee rehire. An employee rehire cannot be deleted if it's active (past effective - * date). + *

    Delete an employee termination. * *

    scope: `employments:write` * @@ -566,15 +548,14 @@ public PutV1EmployeesEmployeeIdRehireResponse rehire( * * @return The call builder */ - public DeleteV1EmployeesEmployeeIdRehireRequestBuilder deleteRehire() { - return new DeleteV1EmployeesEmployeeIdRehireRequestBuilder(sdkConfiguration); + public DeleteV1EmployeesEmployeeIdTerminationsRequestBuilder deleteTermination() { + return new DeleteV1EmployeesEmployeeIdTerminationsRequestBuilder(sdkConfiguration); } /** - * Delete an employee rehire + * Delete an employee termination * - *

    Delete an employee rehire. An employee rehire cannot be deleted if it's active (past effective - * date). + *

    Delete an employee termination. * *

    scope: `employments:write` * @@ -584,15 +565,14 @@ public DeleteV1EmployeesEmployeeIdRehireRequestBuilder deleteRehire() { * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public DeleteV1EmployeesEmployeeIdRehireResponse deleteRehire(String employeeId) { - return deleteRehire(Optional.empty(), employeeId); + public DeleteV1EmployeesEmployeeIdTerminationsResponse deleteTermination(String employeeId) { + return deleteTermination(Optional.empty(), employeeId); } /** - * Delete an employee rehire + * Delete an employee termination * - *

    Delete an employee rehire. An employee rehire cannot be deleted if it's active (past effective - * date). + *

    Delete an employee termination. * *

    scope: `employments:write` * @@ -603,73 +583,93 @@ public DeleteV1EmployeesEmployeeIdRehireResponse deleteRehire(String employeeId) * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public DeleteV1EmployeesEmployeeIdRehireResponse deleteRehire(Optional xGustoAPIVersion, String employeeId) { - DeleteV1EmployeesEmployeeIdRehireRequest request = - DeleteV1EmployeesEmployeeIdRehireRequest + public DeleteV1EmployeesEmployeeIdTerminationsResponse deleteTermination(Optional xGustoAPIVersion, String employeeId) { + DeleteV1EmployeesEmployeeIdTerminationsRequest request = + DeleteV1EmployeesEmployeeIdTerminationsRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .employeeId(employeeId) .build(); - RequestOperation operation - = new DeleteV1EmployeesEmployeeIdRehire.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new DeleteV1EmployeesEmployeeIdTerminations.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Get employment history for an employee + * Update an employee termination * - *

    Retrieve the employment history for a given employee, which includes termination and rehire. + *

    Terminations are created whenever an employee is scheduled to leave the company. The only things + * required are an effective date (their last day of work) and whether they should receive their wages + * in a one-off termination payroll or with the rest of the company. * - *

    scope: `employments:read` + *

    Note that some states require employees to receive their final wages within 24 hours (unless they + * consent otherwise,) in which case running a one-off payroll may be the only option. + * + *

    scope: `employments:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public GetV1EmployeesEmployeeIdEmploymentHistoryRequestBuilder getHistory() { - return new GetV1EmployeesEmployeeIdEmploymentHistoryRequestBuilder(sdkConfiguration); + public PutV1TerminationsEmployeeIdRequestBuilder updateTermination() { + return new PutV1TerminationsEmployeeIdRequestBuilder(sdkConfiguration); } /** - * Get employment history for an employee + * Update an employee termination * - *

    Retrieve the employment history for a given employee, which includes termination and rehire. + *

    Terminations are created whenever an employee is scheduled to leave the company. The only things + * required are an effective date (their last day of work) and whether they should receive their wages + * in a one-off termination payroll or with the rest of the company. * - *

    scope: `employments:read` + *

    Note that some states require employees to receive their final wages within 24 hours (unless they + * consent otherwise,) in which case running a one-off payroll may be the only option. + * + *

    scope: `employments:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param employeeId The UUID of the employee + * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1EmployeesEmployeeIdEmploymentHistoryResponse getHistory(String employeeId) { - return getHistory(Optional.empty(), employeeId); + public PutV1TerminationsEmployeeIdResponse updateTermination(String employeeId, PutV1TerminationsEmployeeIdRequestBody requestBody) { + return updateTermination(Optional.empty(), employeeId, requestBody); } /** - * Get employment history for an employee + * Update an employee termination * - *

    Retrieve the employment history for a given employee, which includes termination and rehire. + *

    Terminations are created whenever an employee is scheduled to leave the company. The only things + * required are an effective date (their last day of work) and whether they should receive their wages + * in a one-off termination payroll or with the rest of the company. * - *

    scope: `employments:read` + *

    Note that some states require employees to receive their final wages within 24 hours (unless they + * consent otherwise,) in which case running a one-off payroll may be the only option. + * + *

    scope: `employments:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param employeeId The UUID of the employee + * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1EmployeesEmployeeIdEmploymentHistoryResponse getHistory(Optional xGustoAPIVersion, String employeeId) { - GetV1EmployeesEmployeeIdEmploymentHistoryRequest request = - GetV1EmployeesEmployeeIdEmploymentHistoryRequest + public PutV1TerminationsEmployeeIdResponse updateTermination( + Optional xGustoAPIVersion, String employeeId, + PutV1TerminationsEmployeeIdRequestBody requestBody) { + PutV1TerminationsEmployeeIdRequest request = + PutV1TerminationsEmployeeIdRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .employeeId(employeeId) + .requestBody(requestBody) .build(); - RequestOperation operation - = new GetV1EmployeesEmployeeIdEmploymentHistory.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PutV1TerminationsEmployeeId.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/EmployeeForms.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/EmployeeForms.java index 3d76fddb2..a4c03979e 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/EmployeeForms.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/EmployeeForms.java @@ -54,76 +54,6 @@ public AsyncEmployeeForms async() { return asyncSDK; } - /** - * Generate a W2 form [DEMO] - * - *

    > 🚧 Demo action - * > - * > This action is only available in the Demo environment - * - *

    Generates a W2 document for testing purposes. - * - *

    scope: `employees:write` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The call builder - */ - public PostV1SandboxGenerateW2RequestBuilder generateW2() { - return new PostV1SandboxGenerateW2RequestBuilder(sdkConfiguration); - } - - /** - * Generate a W2 form [DEMO] - * - *

    > 🚧 Demo action - * > - * > This action is only available in the Demo environment - * - *

    Generates a W2 document for testing purposes. - * - *

    scope: `employees:write` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param requestBody - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public PostV1SandboxGenerateW2Response generateW2(PostV1SandboxGenerateW2RequestBody requestBody) { - return generateW2(Optional.empty(), requestBody); - } - - /** - * Generate a W2 form [DEMO] - * - *

    > 🚧 Demo action - * > - * > This action is only available in the Demo environment - * - *

    Generates a W2 document for testing purposes. - * - *

    scope: `employees:write` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param requestBody - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public PostV1SandboxGenerateW2Response generateW2(Optional xGustoAPIVersion, PostV1SandboxGenerateW2RequestBody requestBody) { - PostV1SandboxGenerateW2Request request = - PostV1SandboxGenerateW2Request - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .requestBody(requestBody) - .build(); - RequestOperation operation - = new PostV1SandboxGenerateW2.Sync(sdkConfiguration, _headers); - return operation.handleResponse(operation.doRequest(request)); - } - /** * Get all employee forms * @@ -348,4 +278,74 @@ public PutV1EmployeeFormSignResponse sign(PutV1EmployeeFormSignRequest request) return operation.handleResponse(operation.doRequest(request)); } + /** + * Generate a W2 form [DEMO] + * + *

    > 🚧 Demo action + * > + * > This action is only available in the Demo environment + * + *

    Generates a W2 document for testing purposes. + * + *

    scope: `employees:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public PostV1SandboxGenerateW2RequestBuilder generateW2() { + return new PostV1SandboxGenerateW2RequestBuilder(sdkConfiguration); + } + + /** + * Generate a W2 form [DEMO] + * + *

    > 🚧 Demo action + * > + * > This action is only available in the Demo environment + * + *

    Generates a W2 document for testing purposes. + * + *

    scope: `employees:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param requestBody + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public PostV1SandboxGenerateW2Response generateW2(PostV1SandboxGenerateW2RequestBody requestBody) { + return generateW2(Optional.empty(), requestBody); + } + + /** + * Generate a W2 form [DEMO] + * + *

    > 🚧 Demo action + * > + * > This action is only available in the Demo environment + * + *

    Generates a W2 document for testing purposes. + * + *

    scope: `employees:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param requestBody + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public PostV1SandboxGenerateW2Response generateW2(Optional xGustoAPIVersion, PostV1SandboxGenerateW2RequestBody requestBody) { + PostV1SandboxGenerateW2Request request = + PostV1SandboxGenerateW2Request + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .requestBody(requestBody) + .build(); + RequestOperation operation + = new PostV1SandboxGenerateW2.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/Employees.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/Employees.java index 1ceb8f314..ae3e69d97 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/Employees.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/Employees.java @@ -26,6 +26,7 @@ import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1EmployeesEmployeeIdOnboardingStatusRequestBuilder; import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1EmployeesEmployeeIdOnboardingStatusResponse; import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1EmployeesHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1EmployeesQueryParamInclude; import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1EmployeesRequest; import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1EmployeesRequestBuilder; import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1EmployeesResponse; @@ -56,7 +57,6 @@ import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1EmployeesRequestBody; import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1EmployeesRequestBuilder; import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1EmployeesResponse; -import com.gusto.embedded_api_v_2025_11_15.models.operations.QueryParamInclude; import com.gusto.embedded_api_v_2025_11_15.operations.DeleteV1Employee; import com.gusto.embedded_api_v_2025_11_15.operations.GetV1CompaniesCompanyIdEmployees; import com.gusto.embedded_api_v_2025_11_15.operations.GetV1CompaniesCompanyIdEmployeesPaymentDetails; @@ -96,14 +96,9 @@ public AsyncEmployees async() { } /** - * Get employees of a company - * - *

    Get all of the employees, onboarding, active and terminated, for a given company. + * Get an employee's custom fields * - *

    Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee - * pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, - * `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope - * is included. This allows you to access employee and job metadata without exposing pay rates. + *

    Returns a list of the employee's custom fields. * *

    scope: `employees:read` * @@ -111,93 +106,57 @@ public AsyncEmployees async() { * * @return The call builder */ - public GetV1CompaniesCompanyIdEmployeesRequestBuilder list() { - return new GetV1CompaniesCompanyIdEmployeesRequestBuilder(sdkConfiguration); + public GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder getCustomFields() { + return new GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder(sdkConfiguration); } /** - * Get employees of a company - * - *

    Get all of the employees, onboarding, active and terminated, for a given company. + * Get an employee's custom fields * - *

    Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee - * pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, - * `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope - * is included. This allows you to access employee and job metadata without exposing pay rates. + *

    Returns a list of the employee's custom fields. * *

    scope: `employees:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param request The request object containing all the parameters for the API call. - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public GetV1CompaniesCompanyIdEmployeesResponse list(GetV1CompaniesCompanyIdEmployeesRequest request) { - RequestOperation operation - = new GetV1CompaniesCompanyIdEmployees.Sync(sdkConfiguration, _headers); - return operation.handleResponse(operation.doRequest(request)); - } - - /** - * Create an employee - * - *

    Create an employee. - * - *

    scope: `employees:manage` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The call builder - */ - public PostV1EmployeesRequestBuilder create() { - return new PostV1EmployeesRequestBuilder(sdkConfiguration); - } - - /** - * Create an employee - * - *

    Create an employee. - * - *

    scope: `employees:manage` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param companyId Company ID + * @param employeeId The UUID of the employee * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostV1EmployeesResponse create(String companyId) { - return create(Optional.empty(), companyId, Optional.empty()); + public GetV1EmployeesEmployeeIdCustomFieldsResponse getCustomFields(String employeeId) { + return getCustomFields(Optional.empty(), employeeId, Optional.empty(), + Optional.empty()); } /** - * Create an employee + * Get an employee's custom fields * - *

    Create an employee. + *

    Returns a list of the employee's custom fields. * - *

    scope: `employees:manage` + *

    scope: `employees:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyId Company ID - * @param requestBody + * @param employeeId The UUID of the employee + * @param page The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + * @param per Number of objects per page. For majority of endpoints will default to 25 * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostV1EmployeesResponse create( - Optional xGustoAPIVersion, String companyId, - Optional requestBody) { - PostV1EmployeesRequest request = - PostV1EmployeesRequest + public GetV1EmployeesEmployeeIdCustomFieldsResponse getCustomFields( + Optional xGustoAPIVersion, String employeeId, + Optional page, Optional per) { + GetV1EmployeesEmployeeIdCustomFieldsRequest request = + GetV1EmployeesEmployeeIdCustomFieldsRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .companyId(companyId) - .requestBody(requestBody) + .employeeId(employeeId) + .page(page) + .per(per) .build(); - RequestOperation operation - = new PostV1Employees.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new GetV1EmployeesEmployeeIdCustomFields.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } @@ -254,74 +213,65 @@ public GetV1CompaniesCompanyIdEmployeesPaymentDetailsResponse getV1CompaniesComp } /** - * Create a historical employee + * Get employee time off activities * - *

    Create a historical employee, an employee that was previously dismissed from the company in the - * current year. + *

    Get employee time off activities. * - *

    scope: `employees:manage` + *

    scope: `employee_time_off_activities:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public PostV1HistoricalEmployeesRequestBuilder createHistorical() { - return new PostV1HistoricalEmployeesRequestBuilder(sdkConfiguration); + public GetVersionEmployeesTimeOffActivitiesRequestBuilder getTimeOffActivities() { + return new GetVersionEmployeesTimeOffActivitiesRequestBuilder(sdkConfiguration); } /** - * Create a historical employee + * Get employee time off activities * - *

    Create a historical employee, an employee that was previously dismissed from the company in the - * current year. + *

    Get employee time off activities. * - *

    scope: `employees:manage` + *

    scope: `employee_time_off_activities:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company that will employ this historical record. - * @param historicalEmployeeBody Request body for creating or updating a **historical employee**—someone who already separated from the company and must appear on year-to-date or tax filings without receiving ongoing payroll. - * - * Send this object under the JSON root key `employee`. All dates are ISO 8601 (`YYYY-MM-DD`). Use a `work_address.location_uuid` returned from your company locations API for an active work site. - * + * @param employeeUuid The UUID of the employee + * @param timeOffType The time off type name you want to query data for. ex: 'sick' or 'vacation' * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostV1HistoricalEmployeesResponse createHistorical(String companyUuid, HistoricalEmployeeBody historicalEmployeeBody) { - return createHistorical(Optional.empty(), companyUuid, historicalEmployeeBody); + public GetVersionEmployeesTimeOffActivitiesResponse getTimeOffActivities(String employeeUuid, String timeOffType) { + return getTimeOffActivities(Optional.empty(), employeeUuid, timeOffType); } /** - * Create a historical employee + * Get employee time off activities * - *

    Create a historical employee, an employee that was previously dismissed from the company in the - * current year. + *

    Get employee time off activities. * - *

    scope: `employees:manage` + *

    scope: `employee_time_off_activities:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyUuid The UUID of the company that will employ this historical record. - * @param historicalEmployeeBody Request body for creating or updating a **historical employee**—someone who already separated from the company and must appear on year-to-date or tax filings without receiving ongoing payroll. - * - * Send this object under the JSON root key `employee`. All dates are ISO 8601 (`YYYY-MM-DD`). Use a `work_address.location_uuid` returned from your company locations API for an active work site. - * + * @param employeeUuid The UUID of the employee + * @param timeOffType The time off type name you want to query data for. ex: 'sick' or 'vacation' * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostV1HistoricalEmployeesResponse createHistorical( - Optional xGustoAPIVersion, String companyUuid, - HistoricalEmployeeBody historicalEmployeeBody) { - PostV1HistoricalEmployeesRequest request = - PostV1HistoricalEmployeesRequest + public GetVersionEmployeesTimeOffActivitiesResponse getTimeOffActivities( + Optional xGustoAPIVersion, String employeeUuid, + String timeOffType) { + GetVersionEmployeesTimeOffActivitiesRequest request = + GetVersionEmployeesTimeOffActivitiesRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .companyUuid(companyUuid) - .historicalEmployeeBody(historicalEmployeeBody) + .employeeUuid(employeeUuid) + .timeOffType(timeOffType) .build(); - RequestOperation operation - = new PostV1HistoricalEmployees.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new GetVersionEmployeesTimeOffActivities.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } @@ -389,7 +339,7 @@ public GetV1EmployeesResponse get(String employeeId) { */ public GetV1EmployeesResponse get( Optional xGustoAPIVersion, String employeeId, - Optional> include) { + Optional> include) { GetV1EmployeesRequest request = GetV1EmployeesRequest .builder() @@ -533,9 +483,14 @@ public DeleteV1EmployeeResponse delete(OptionalReturns a list of the employee's custom fields. + *

    Get all of the employees, onboarding, active and terminated, for a given company. + * + *

    Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee + * pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, + * `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope + * is included. This allows you to access employee and job metadata without exposing pay rates. * *

    scope: `employees:read` * @@ -543,68 +498,38 @@ public DeleteV1EmployeeResponse delete(OptionalReturns a list of the employee's custom fields. - * - *

    scope: `employees:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. + * Get employees of a company * - * @param employeeId The UUID of the employee - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public GetV1EmployeesEmployeeIdCustomFieldsResponse getCustomFields(String employeeId) { - return getCustomFields(employeeId, Optional.empty(), Optional.empty(), - Optional.empty()); - } - - /** - * Get an employee's custom fields + *

    Get all of the employees, onboarding, active and terminated, for a given company. * - *

    Returns a list of the employee's custom fields. + *

    Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee + * pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, + * `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope + * is included. This allows you to access employee and job metadata without exposing pay rates. * *

    scope: `employees:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param employeeId The UUID of the employee - * @param page The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - * @param per Number of objects per page. For majority of endpoints will default to 25 - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param request The request object containing all the parameters for the API call. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1EmployeesEmployeeIdCustomFieldsResponse getCustomFields( - String employeeId, Optional page, - Optional per, Optional xGustoAPIVersion) { - GetV1EmployeesEmployeeIdCustomFieldsRequest request = - GetV1EmployeesEmployeeIdCustomFieldsRequest - .builder() - .employeeId(employeeId) - .page(page) - .per(per) - .xGustoAPIVersion(xGustoAPIVersion) - .build(); - RequestOperation operation - = new GetV1EmployeesEmployeeIdCustomFields.Sync(sdkConfiguration, _headers); + public GetV1CompaniesCompanyIdEmployeesResponse list(GetV1CompaniesCompanyIdEmployeesRequest request) { + RequestOperation operation + = new GetV1CompaniesCompanyIdEmployees.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Update employee onboarding documents config - * - *

    Indicate whether to include the Form I-9 for an employee during the onboarding process. - * If included, the employee will be prompted to complete Form I-9 as part of their onboarding. + * Create an employee * - *

    ## Related guides - * - [Employee onboarding](doc:employee-onboarding) + *

    Create an employee. * *

    scope: `employees:manage` * @@ -612,62 +537,54 @@ public GetV1EmployeesEmployeeIdCustomFieldsResponse getCustomFields( * * @return The call builder */ - public PutV1EmployeesEmployeeIdOnboardingDocumentsConfigRequestBuilder updateOnboardingDocumentsConfig() { - return new PutV1EmployeesEmployeeIdOnboardingDocumentsConfigRequestBuilder(sdkConfiguration); + public PostV1EmployeesRequestBuilder create() { + return new PostV1EmployeesRequestBuilder(sdkConfiguration); } /** - * Update employee onboarding documents config - * - *

    Indicate whether to include the Form I-9 for an employee during the onboarding process. - * If included, the employee will be prompted to complete Form I-9 as part of their onboarding. + * Create an employee * - *

    ## Related guides - * - [Employee onboarding](doc:employee-onboarding) + *

    Create an employee. * *

    scope: `employees:manage` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param employeeId The UUID of the employee + * @param companyId Company ID * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1EmployeesEmployeeIdOnboardingDocumentsConfigResponse updateOnboardingDocumentsConfig(String employeeId) { - return updateOnboardingDocumentsConfig(Optional.empty(), employeeId, Optional.empty()); + public PostV1EmployeesResponse create(String companyId) { + return create(Optional.empty(), companyId, Optional.empty()); } /** - * Update employee onboarding documents config - * - *

    Indicate whether to include the Form I-9 for an employee during the onboarding process. - * If included, the employee will be prompted to complete Form I-9 as part of their onboarding. + * Create an employee * - *

    ## Related guides - * - [Employee onboarding](doc:employee-onboarding) + *

    Create an employee. * *

    scope: `employees:manage` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param employeeId The UUID of the employee - * @param employeeOnboardingDocumentsConfigRequest Request body for updating an employee's onboarding documents configuration. + * @param companyId Company ID + * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1EmployeesEmployeeIdOnboardingDocumentsConfigResponse updateOnboardingDocumentsConfig( - Optional xGustoAPIVersion, String employeeId, - Optional employeeOnboardingDocumentsConfigRequest) { - PutV1EmployeesEmployeeIdOnboardingDocumentsConfigRequest request = - PutV1EmployeesEmployeeIdOnboardingDocumentsConfigRequest + public PostV1EmployeesResponse create( + Optional xGustoAPIVersion, String companyId, + Optional requestBody) { + PostV1EmployeesRequest request = + PostV1EmployeesRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .employeeId(employeeId) - .employeeOnboardingDocumentsConfigRequest(employeeOnboardingDocumentsConfigRequest) + .companyId(companyId) + .requestBody(requestBody) .build(); - RequestOperation operation - = new PutV1EmployeesEmployeeIdOnboardingDocumentsConfig.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PostV1Employees.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } @@ -973,65 +890,148 @@ public PutV1EmployeesEmployeeIdOnboardingStatusResponse updateOnboardingStatus( } /** - * Get employee time off activities + * Update employee onboarding documents config * - *

    Get employee time off activities. + *

    Indicate whether to include the Form I-9 for an employee during the onboarding process. + * If included, the employee will be prompted to complete Form I-9 as part of their onboarding. * - *

    scope: `employee_time_off_activities:read` + *

    ## Related guides + * - [Employee onboarding](doc:employee-onboarding) + * + *

    scope: `employees:manage` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public GetVersionEmployeesTimeOffActivitiesRequestBuilder getTimeOffActivities() { - return new GetVersionEmployeesTimeOffActivitiesRequestBuilder(sdkConfiguration); + public PutV1EmployeesEmployeeIdOnboardingDocumentsConfigRequestBuilder updateOnboardingDocumentsConfig() { + return new PutV1EmployeesEmployeeIdOnboardingDocumentsConfigRequestBuilder(sdkConfiguration); } /** - * Get employee time off activities + * Update employee onboarding documents config * - *

    Get employee time off activities. + *

    Indicate whether to include the Form I-9 for an employee during the onboarding process. + * If included, the employee will be prompted to complete Form I-9 as part of their onboarding. * - *

    scope: `employee_time_off_activities:read` + *

    ## Related guides + * - [Employee onboarding](doc:employee-onboarding) + * + *

    scope: `employees:manage` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param employeeUuid The UUID of the employee - * @param timeOffType The time off type name you want to query data for. ex: 'sick' or 'vacation' + * @param employeeId The UUID of the employee * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetVersionEmployeesTimeOffActivitiesResponse getTimeOffActivities(String employeeUuid, String timeOffType) { - return getTimeOffActivities(Optional.empty(), employeeUuid, timeOffType); + public PutV1EmployeesEmployeeIdOnboardingDocumentsConfigResponse updateOnboardingDocumentsConfig(String employeeId) { + return updateOnboardingDocumentsConfig(Optional.empty(), employeeId, Optional.empty()); } /** - * Get employee time off activities + * Update employee onboarding documents config * - *

    Get employee time off activities. + *

    Indicate whether to include the Form I-9 for an employee during the onboarding process. + * If included, the employee will be prompted to complete Form I-9 as part of their onboarding. * - *

    scope: `employee_time_off_activities:read` + *

    ## Related guides + * - [Employee onboarding](doc:employee-onboarding) + * + *

    scope: `employees:manage` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param employeeUuid The UUID of the employee - * @param timeOffType The time off type name you want to query data for. ex: 'sick' or 'vacation' + * @param employeeId The UUID of the employee + * @param employeeOnboardingDocumentsConfigRequest Request body for updating an employee's onboarding documents configuration. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetVersionEmployeesTimeOffActivitiesResponse getTimeOffActivities( - Optional xGustoAPIVersion, String employeeUuid, - String timeOffType) { - GetVersionEmployeesTimeOffActivitiesRequest request = - GetVersionEmployeesTimeOffActivitiesRequest + public PutV1EmployeesEmployeeIdOnboardingDocumentsConfigResponse updateOnboardingDocumentsConfig( + Optional xGustoAPIVersion, String employeeId, + Optional employeeOnboardingDocumentsConfigRequest) { + PutV1EmployeesEmployeeIdOnboardingDocumentsConfigRequest request = + PutV1EmployeesEmployeeIdOnboardingDocumentsConfigRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .employeeUuid(employeeUuid) - .timeOffType(timeOffType) + .employeeId(employeeId) + .employeeOnboardingDocumentsConfigRequest(employeeOnboardingDocumentsConfigRequest) .build(); - RequestOperation operation - = new GetVersionEmployeesTimeOffActivities.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PutV1EmployeesEmployeeIdOnboardingDocumentsConfig.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + + /** + * Create a historical employee + * + *

    Create a historical employee, an employee that was previously dismissed from the company in the + * current year. + * + *

    scope: `employees:manage` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public PostV1HistoricalEmployeesRequestBuilder createHistorical() { + return new PostV1HistoricalEmployeesRequestBuilder(sdkConfiguration); + } + + /** + * Create a historical employee + * + *

    Create a historical employee, an employee that was previously dismissed from the company in the + * current year. + * + *

    scope: `employees:manage` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param companyUuid The UUID of the company that will employ this historical record. + * @param historicalEmployeeBody Request body for creating or updating a **historical employee**—someone who already separated from the company and must appear on year-to-date or tax filings without receiving ongoing payroll. + * + * Send this object under the JSON root key `employee`. All dates are ISO 8601 (`YYYY-MM-DD`). Use a `work_address.location_uuid` returned from your company locations API for an active work site. + * + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public PostV1HistoricalEmployeesResponse createHistorical(String companyUuid, HistoricalEmployeeBody historicalEmployeeBody) { + return createHistorical(Optional.empty(), companyUuid, historicalEmployeeBody); + } + + /** + * Create a historical employee + * + *

    Create a historical employee, an employee that was previously dismissed from the company in the + * current year. + * + *

    scope: `employees:manage` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company that will employ this historical record. + * @param historicalEmployeeBody Request body for creating or updating a **historical employee**—someone who already separated from the company and must appear on year-to-date or tax filings without receiving ongoing payroll. + * + * Send this object under the JSON root key `employee`. All dates are ISO 8601 (`YYYY-MM-DD`). Use a `work_address.location_uuid` returned from your company locations API for an active work site. + * + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public PostV1HistoricalEmployeesResponse createHistorical( + Optional xGustoAPIVersion, String companyUuid, + HistoricalEmployeeBody historicalEmployeeBody) { + PostV1HistoricalEmployeesRequest request = + PostV1HistoricalEmployeesRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) + .historicalEmployeeBody(historicalEmployeeBody) + .build(); + RequestOperation operation + = new PostV1HistoricalEmployees.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/ExternalPayrolls.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/ExternalPayrolls.java index 9b2e4b602..07b5e065e 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/ExternalPayrolls.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/ExternalPayrolls.java @@ -207,9 +207,9 @@ public PostV1ExternalPayrollResponse create( } /** - * Get an external payroll + * Get tax liabilities * - *

    Get an external payroll for a given company. + *

    Get tax liabilities from aggregate external payrolls for a company. * *

    scope: `external_payrolls:read` * @@ -217,32 +217,31 @@ public PostV1ExternalPayrollResponse create( * * @return The call builder */ - public GetV1ExternalPayrollRequestBuilder retrieve() { - return new GetV1ExternalPayrollRequestBuilder(sdkConfiguration); + public GetV1TaxLiabilitiesRequestBuilder listTaxLiabilities() { + return new GetV1TaxLiabilitiesRequestBuilder(sdkConfiguration); } /** - * Get an external payroll + * Get tax liabilities * - *

    Get an external payroll for a given company. + *

    Get tax liabilities from aggregate external payrolls for a company. * *

    scope: `external_payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param companyUuid The UUID of the company - * @param externalPayrollId The UUID of the external payroll * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1ExternalPayrollResponse retrieve(String companyUuid, String externalPayrollId) { - return retrieve(Optional.empty(), companyUuid, externalPayrollId); + public GetV1TaxLiabilitiesResponse listTaxLiabilities(String companyUuid) { + return listTaxLiabilities(Optional.empty(), companyUuid); } /** - * Get an external payroll + * Get tax liabilities * - *

    Get an external payroll for a given company. + *

    Get tax liabilities from aggregate external payrolls for a company. * *

    scope: `external_payrolls:read` * @@ -250,29 +249,25 @@ public GetV1ExternalPayrollResponse retrieve(String companyUuid, String external * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyUuid The UUID of the company - * @param externalPayrollId The UUID of the external payroll * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1ExternalPayrollResponse retrieve( - Optional xGustoAPIVersion, String companyUuid, - String externalPayrollId) { - GetV1ExternalPayrollRequest request = - GetV1ExternalPayrollRequest + public GetV1TaxLiabilitiesResponse listTaxLiabilities(Optional xGustoAPIVersion, String companyUuid) { + GetV1TaxLiabilitiesRequest request = + GetV1TaxLiabilitiesRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .companyUuid(companyUuid) - .externalPayrollId(externalPayrollId) .build(); - RequestOperation operation - = new GetV1ExternalPayroll.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new GetV1TaxLiabilities.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Update an external payroll + * Update tax liabilities * - *

    Update an external payroll with a list of external payroll items. + *

    Update tax liabilities for a company. * *

    scope: `external_payrolls:write` * @@ -280,36 +275,32 @@ public GetV1ExternalPayrollResponse retrieve( * * @return The call builder */ - public PutV1ExternalPayrollRequestBuilder update() { - return new PutV1ExternalPayrollRequestBuilder(sdkConfiguration); + public PutV1TaxLiabilitiesRequestBuilder updateTaxLiabilities() { + return new PutV1TaxLiabilitiesRequestBuilder(sdkConfiguration); } /** - * Update an external payroll + * Update tax liabilities * - *

    Update an external payroll with a list of external payroll items. + *

    Update tax liabilities for a company. * *

    scope: `external_payrolls:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param companyUuid The UUID of the company - * @param externalPayrollId The UUID of the external payroll - * @param externalPayrollUpdateRequest The request body for updating an external payroll with employee payroll items. + * @param taxLiabilitySelectionsRequest The request body for updating tax liability selections. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1ExternalPayrollResponse update( - String companyUuid, String externalPayrollId, - ExternalPayrollUpdateRequest externalPayrollUpdateRequest) { - return update(Optional.empty(), companyUuid, externalPayrollId, - externalPayrollUpdateRequest); + public PutV1TaxLiabilitiesResponse updateTaxLiabilities(String companyUuid, TaxLiabilitySelectionsRequest taxLiabilitySelectionsRequest) { + return updateTaxLiabilities(Optional.empty(), companyUuid, taxLiabilitySelectionsRequest); } /** - * Update an external payroll + * Update tax liabilities * - *

    Update an external payroll with a list of external payroll items. + *

    Update tax liabilities for a company. * *

    scope: `external_payrolls:write` * @@ -317,31 +308,33 @@ public PutV1ExternalPayrollResponse update( * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyUuid The UUID of the company - * @param externalPayrollId The UUID of the external payroll - * @param externalPayrollUpdateRequest The request body for updating an external payroll with employee payroll items. + * @param taxLiabilitySelectionsRequest The request body for updating tax liability selections. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1ExternalPayrollResponse update( - Optional xGustoAPIVersion, String companyUuid, - String externalPayrollId, ExternalPayrollUpdateRequest externalPayrollUpdateRequest) { - PutV1ExternalPayrollRequest request = - PutV1ExternalPayrollRequest + public PutV1TaxLiabilitiesResponse updateTaxLiabilities( + Optional xGustoAPIVersion, String companyUuid, + TaxLiabilitySelectionsRequest taxLiabilitySelectionsRequest) { + PutV1TaxLiabilitiesRequest request = + PutV1TaxLiabilitiesRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .companyUuid(companyUuid) - .externalPayrollId(externalPayrollId) - .externalPayrollUpdateRequest(externalPayrollUpdateRequest) + .taxLiabilitySelectionsRequest(taxLiabilitySelectionsRequest) .build(); - RequestOperation operation - = new PutV1ExternalPayroll.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PutV1TaxLiabilities.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Delete an external payroll + * Finalize tax liabilities options and convert into processed payrolls * - *

    Delete an external payroll. + *

    Finalizes tax liabilities for a company. All external payrolls edit action will be disabled. + * + *

    ### Asynchronous processing + * This endpoint triggers an asynchronous operation. The external payrolls will be processed in the + * background after finalization. * *

    scope: `external_payrolls:write` * @@ -349,32 +342,39 @@ public PutV1ExternalPayrollResponse update( * * @return The call builder */ - public DeleteV1ExternalPayrollRequestBuilder delete() { - return new DeleteV1ExternalPayrollRequestBuilder(sdkConfiguration); + public PutV1TaxLiabilitiesFinishRequestBuilder finalizeTaxLiabilities() { + return new PutV1TaxLiabilitiesFinishRequestBuilder(sdkConfiguration); } /** - * Delete an external payroll + * Finalize tax liabilities options and convert into processed payrolls * - *

    Delete an external payroll. + *

    Finalizes tax liabilities for a company. All external payrolls edit action will be disabled. + * + *

    ### Asynchronous processing + * This endpoint triggers an asynchronous operation. The external payrolls will be processed in the + * background after finalization. * *

    scope: `external_payrolls:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param companyUuid The UUID of the company - * @param externalPayrollId The UUID of the external payroll * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public DeleteV1ExternalPayrollResponse delete(String companyUuid, String externalPayrollId) { - return delete(Optional.empty(), companyUuid, externalPayrollId); + public PutV1TaxLiabilitiesFinishResponse finalizeTaxLiabilities(String companyUuid) { + return finalizeTaxLiabilities(Optional.empty(), companyUuid); } /** - * Delete an external payroll + * Finalize tax liabilities options and convert into processed payrolls * - *

    Delete an external payroll. + *

    Finalizes tax liabilities for a company. All external payrolls edit action will be disabled. + * + *

    ### Asynchronous processing + * This endpoint triggers an asynchronous operation. The external payrolls will be processed in the + * background after finalization. * *

    scope: `external_payrolls:write` * @@ -382,30 +382,25 @@ public DeleteV1ExternalPayrollResponse delete(String companyUuid, String externa * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyUuid The UUID of the company - * @param externalPayrollId The UUID of the external payroll * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public DeleteV1ExternalPayrollResponse delete( - Optional xGustoAPIVersion, String companyUuid, - String externalPayrollId) { - DeleteV1ExternalPayrollRequest request = - DeleteV1ExternalPayrollRequest + public PutV1TaxLiabilitiesFinishResponse finalizeTaxLiabilities(Optional xGustoAPIVersion, String companyUuid) { + PutV1TaxLiabilitiesFinishRequest request = + PutV1TaxLiabilitiesFinishRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .companyUuid(companyUuid) - .externalPayrollId(externalPayrollId) .build(); - RequestOperation operation - = new DeleteV1ExternalPayroll.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PutV1TaxLiabilitiesFinish.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Get tax suggestions for an external payroll + * Get an external payroll * - *

    Get tax suggestions for an external payroll. Earnings and/or benefits data must be saved prior to - * the calculation in order to retrieve accurate tax calculation. + *

    Get an external payroll for a given company. * *

    scope: `external_payrolls:read` * @@ -413,15 +408,14 @@ public DeleteV1ExternalPayrollResponse delete( * * @return The call builder */ - public GetV1ExternalPayrollCalculateTaxesRequestBuilder calculateTaxes() { - return new GetV1ExternalPayrollCalculateTaxesRequestBuilder(sdkConfiguration); + public GetV1ExternalPayrollRequestBuilder retrieve() { + return new GetV1ExternalPayrollRequestBuilder(sdkConfiguration); } /** - * Get tax suggestions for an external payroll + * Get an external payroll * - *

    Get tax suggestions for an external payroll. Earnings and/or benefits data must be saved prior to - * the calculation in order to retrieve accurate tax calculation. + *

    Get an external payroll for a given company. * *

    scope: `external_payrolls:read` * @@ -432,15 +426,14 @@ public GetV1ExternalPayrollCalculateTaxesRequestBuilder calculateTaxes() { * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1ExternalPayrollCalculateTaxesResponse calculateTaxes(String companyUuid, String externalPayrollId) { - return calculateTaxes(Optional.empty(), companyUuid, externalPayrollId); + public GetV1ExternalPayrollResponse retrieve(String companyUuid, String externalPayrollId) { + return retrieve(Optional.empty(), companyUuid, externalPayrollId); } /** - * Get tax suggestions for an external payroll + * Get an external payroll * - *

    Get tax suggestions for an external payroll. Earnings and/or benefits data must be saved prior to - * the calculation in order to retrieve accurate tax calculation. + *

    Get an external payroll for a given company. * *

    scope: `external_payrolls:read` * @@ -452,83 +445,94 @@ public GetV1ExternalPayrollCalculateTaxesResponse calculateTaxes(String companyU * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1ExternalPayrollCalculateTaxesResponse calculateTaxes( - Optional xGustoAPIVersion, String companyUuid, + public GetV1ExternalPayrollResponse retrieve( + Optional xGustoAPIVersion, String companyUuid, String externalPayrollId) { - GetV1ExternalPayrollCalculateTaxesRequest request = - GetV1ExternalPayrollCalculateTaxesRequest + GetV1ExternalPayrollRequest request = + GetV1ExternalPayrollRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .companyUuid(companyUuid) .externalPayrollId(externalPayrollId) .build(); - RequestOperation operation - = new GetV1ExternalPayrollCalculateTaxes.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new GetV1ExternalPayroll.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Get tax liabilities + * Update an external payroll * - *

    Get tax liabilities from aggregate external payrolls for a company. + *

    Update an external payroll with a list of external payroll items. * - *

    scope: `external_payrolls:read` + *

    scope: `external_payrolls:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public GetV1TaxLiabilitiesRequestBuilder listTaxLiabilities() { - return new GetV1TaxLiabilitiesRequestBuilder(sdkConfiguration); + public PutV1ExternalPayrollRequestBuilder update() { + return new PutV1ExternalPayrollRequestBuilder(sdkConfiguration); } /** - * Get tax liabilities + * Update an external payroll * - *

    Get tax liabilities from aggregate external payrolls for a company. + *

    Update an external payroll with a list of external payroll items. * - *

    scope: `external_payrolls:read` + *

    scope: `external_payrolls:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param companyUuid The UUID of the company + * @param externalPayrollId The UUID of the external payroll + * @param externalPayrollUpdateRequest The request body for updating an external payroll with employee payroll items. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1TaxLiabilitiesResponse listTaxLiabilities(String companyUuid) { - return listTaxLiabilities(Optional.empty(), companyUuid); + public PutV1ExternalPayrollResponse update( + String companyUuid, String externalPayrollId, + ExternalPayrollUpdateRequest externalPayrollUpdateRequest) { + return update(Optional.empty(), companyUuid, externalPayrollId, + externalPayrollUpdateRequest); } /** - * Get tax liabilities + * Update an external payroll * - *

    Get tax liabilities from aggregate external payrolls for a company. + *

    Update an external payroll with a list of external payroll items. * - *

    scope: `external_payrolls:read` + *

    scope: `external_payrolls:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyUuid The UUID of the company + * @param externalPayrollId The UUID of the external payroll + * @param externalPayrollUpdateRequest The request body for updating an external payroll with employee payroll items. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1TaxLiabilitiesResponse listTaxLiabilities(Optional xGustoAPIVersion, String companyUuid) { - GetV1TaxLiabilitiesRequest request = - GetV1TaxLiabilitiesRequest + public PutV1ExternalPayrollResponse update( + Optional xGustoAPIVersion, String companyUuid, + String externalPayrollId, ExternalPayrollUpdateRequest externalPayrollUpdateRequest) { + PutV1ExternalPayrollRequest request = + PutV1ExternalPayrollRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .companyUuid(companyUuid) + .externalPayrollId(externalPayrollId) + .externalPayrollUpdateRequest(externalPayrollUpdateRequest) .build(); - RequestOperation operation - = new GetV1TaxLiabilities.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PutV1ExternalPayroll.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Update tax liabilities + * Delete an external payroll * - *

    Update tax liabilities for a company. + *

    Delete an external payroll. * *

    scope: `external_payrolls:write` * @@ -536,32 +540,32 @@ public GetV1TaxLiabilitiesResponse listTaxLiabilities(OptionalUpdate tax liabilities for a company. + *

    Delete an external payroll. * *

    scope: `external_payrolls:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param companyUuid The UUID of the company - * @param taxLiabilitySelectionsRequest The request body for updating tax liability selections. + * @param externalPayrollId The UUID of the external payroll * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1TaxLiabilitiesResponse updateTaxLiabilities(String companyUuid, TaxLiabilitySelectionsRequest taxLiabilitySelectionsRequest) { - return updateTaxLiabilities(Optional.empty(), companyUuid, taxLiabilitySelectionsRequest); + public DeleteV1ExternalPayrollResponse delete(String companyUuid, String externalPayrollId) { + return delete(Optional.empty(), companyUuid, externalPayrollId); } /** - * Update tax liabilities + * Delete an external payroll * - *

    Update tax liabilities for a company. + *

    Delete an external payroll. * *

    scope: `external_payrolls:write` * @@ -569,92 +573,88 @@ public PutV1TaxLiabilitiesResponse updateTaxLiabilities(String companyUuid, TaxL * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyUuid The UUID of the company - * @param taxLiabilitySelectionsRequest The request body for updating tax liability selections. + * @param externalPayrollId The UUID of the external payroll * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1TaxLiabilitiesResponse updateTaxLiabilities( - Optional xGustoAPIVersion, String companyUuid, - TaxLiabilitySelectionsRequest taxLiabilitySelectionsRequest) { - PutV1TaxLiabilitiesRequest request = - PutV1TaxLiabilitiesRequest + public DeleteV1ExternalPayrollResponse delete( + Optional xGustoAPIVersion, String companyUuid, + String externalPayrollId) { + DeleteV1ExternalPayrollRequest request = + DeleteV1ExternalPayrollRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .companyUuid(companyUuid) - .taxLiabilitySelectionsRequest(taxLiabilitySelectionsRequest) + .externalPayrollId(externalPayrollId) .build(); - RequestOperation operation - = new PutV1TaxLiabilities.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new DeleteV1ExternalPayroll.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Finalize tax liabilities options and convert into processed payrolls - * - *

    Finalizes tax liabilities for a company. All external payrolls edit action will be disabled. + * Get tax suggestions for an external payroll * - *

    ### Asynchronous processing - * This endpoint triggers an asynchronous operation. The external payrolls will be processed in the - * background after finalization. + *

    Get tax suggestions for an external payroll. Earnings and/or benefits data must be saved prior to + * the calculation in order to retrieve accurate tax calculation. * - *

    scope: `external_payrolls:write` + *

    scope: `external_payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public PutV1TaxLiabilitiesFinishRequestBuilder finalizeTaxLiabilities() { - return new PutV1TaxLiabilitiesFinishRequestBuilder(sdkConfiguration); + public GetV1ExternalPayrollCalculateTaxesRequestBuilder calculateTaxes() { + return new GetV1ExternalPayrollCalculateTaxesRequestBuilder(sdkConfiguration); } /** - * Finalize tax liabilities options and convert into processed payrolls - * - *

    Finalizes tax liabilities for a company. All external payrolls edit action will be disabled. + * Get tax suggestions for an external payroll * - *

    ### Asynchronous processing - * This endpoint triggers an asynchronous operation. The external payrolls will be processed in the - * background after finalization. + *

    Get tax suggestions for an external payroll. Earnings and/or benefits data must be saved prior to + * the calculation in order to retrieve accurate tax calculation. * - *

    scope: `external_payrolls:write` + *

    scope: `external_payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param companyUuid The UUID of the company + * @param externalPayrollId The UUID of the external payroll * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1TaxLiabilitiesFinishResponse finalizeTaxLiabilities(String companyUuid) { - return finalizeTaxLiabilities(Optional.empty(), companyUuid); + public GetV1ExternalPayrollCalculateTaxesResponse calculateTaxes(String companyUuid, String externalPayrollId) { + return calculateTaxes(Optional.empty(), companyUuid, externalPayrollId); } /** - * Finalize tax liabilities options and convert into processed payrolls - * - *

    Finalizes tax liabilities for a company. All external payrolls edit action will be disabled. + * Get tax suggestions for an external payroll * - *

    ### Asynchronous processing - * This endpoint triggers an asynchronous operation. The external payrolls will be processed in the - * background after finalization. + *

    Get tax suggestions for an external payroll. Earnings and/or benefits data must be saved prior to + * the calculation in order to retrieve accurate tax calculation. * - *

    scope: `external_payrolls:write` + *

    scope: `external_payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyUuid The UUID of the company + * @param externalPayrollId The UUID of the external payroll * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1TaxLiabilitiesFinishResponse finalizeTaxLiabilities(Optional xGustoAPIVersion, String companyUuid) { - PutV1TaxLiabilitiesFinishRequest request = - PutV1TaxLiabilitiesFinishRequest + public GetV1ExternalPayrollCalculateTaxesResponse calculateTaxes( + Optional xGustoAPIVersion, String companyUuid, + String externalPayrollId) { + GetV1ExternalPayrollCalculateTaxesRequest request = + GetV1ExternalPayrollCalculateTaxesRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .companyUuid(companyUuid) + .externalPayrollId(externalPayrollId) .build(); - RequestOperation operation - = new PutV1TaxLiabilitiesFinish.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new GetV1ExternalPayrollCalculateTaxes.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/FederalTaxDetails.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/FederalTaxDetails.java index e546c3c93..0003244d5 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/FederalTaxDetails.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/FederalTaxDetails.java @@ -71,7 +71,7 @@ public GetV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder get() { * @throws RuntimeException subclass if the API call fails */ public GetV1CompaniesCompanyIdFederalTaxDetailsResponse get(String companyId) { - return get(companyId, Optional.empty()); + return get(Optional.empty(), companyId); } /** @@ -84,17 +84,17 @@ public GetV1CompaniesCompanyIdFederalTaxDetailsResponse get(String companyId) { * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1CompaniesCompanyIdFederalTaxDetailsResponse get(String companyId, Optional xGustoAPIVersion) { + public GetV1CompaniesCompanyIdFederalTaxDetailsResponse get(Optional xGustoAPIVersion, String companyId) { GetV1CompaniesCompanyIdFederalTaxDetailsRequest request = GetV1CompaniesCompanyIdFederalTaxDetailsRequest .builder() - .companyId(companyId) .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) .build(); RequestOperation operation = new GetV1CompaniesCompanyIdFederalTaxDetails.Sync(sdkConfiguration, _headers); @@ -157,7 +157,7 @@ public PutV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder update() { * @throws RuntimeException subclass if the API call fails */ public PutV1CompaniesCompanyIdFederalTaxDetailsResponse update(String companyId, FederalTaxDetailsUpdate federalTaxDetailsUpdate) { - return update(companyId, Optional.empty(), federalTaxDetailsUpdate); + return update(Optional.empty(), companyId, federalTaxDetailsUpdate); } /** @@ -182,20 +182,20 @@ public PutV1CompaniesCompanyIdFederalTaxDetailsResponse update(String companyId, * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company * @param federalTaxDetailsUpdate * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PutV1CompaniesCompanyIdFederalTaxDetailsResponse update( - String companyId, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String companyId, FederalTaxDetailsUpdate federalTaxDetailsUpdate) { PutV1CompaniesCompanyIdFederalTaxDetailsRequest request = PutV1CompaniesCompanyIdFederalTaxDetailsRequest .builder() - .companyId(companyId) .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) .federalTaxDetailsUpdate(federalTaxDetailsUpdate) .build(); RequestOperation operation diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/Garnishments.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/Garnishments.java index 2809337fa..268d816e7 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/Garnishments.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/Garnishments.java @@ -215,6 +215,61 @@ public PostV1EmployeesEmployeeIdGarnishmentsResponse create( return operation.handleResponse(operation.doRequest(request)); } + /** + * Get child support garnishment data + * + *

    Agency data and requirements to be used for creating child support garnishments + * + *

    scope: `garnishments:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public GetV1GarnishmentsChildSupportRequestBuilder getChildSupportData() { + return new GetV1GarnishmentsChildSupportRequestBuilder(sdkConfiguration); + } + + /** + * Get child support garnishment data + * + *

    Agency data and requirements to be used for creating child support garnishments + * + *

    scope: `garnishments:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1GarnishmentsChildSupportResponse getChildSupportDataDirect() { + return getChildSupportData(Optional.empty()); + } + + /** + * Get child support garnishment data + * + *

    Agency data and requirements to be used for creating child support garnishments + * + *

    scope: `garnishments:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1GarnishmentsChildSupportResponse getChildSupportData(Optional xGustoAPIVersion) { + GetV1GarnishmentsChildSupportRequest request = + GetV1GarnishmentsChildSupportRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .build(); + RequestOperation operation + = new GetV1GarnishmentsChildSupport.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + /** * Get a garnishment * @@ -366,59 +421,4 @@ public PutV1GarnishmentsGarnishmentIdResponse update( return operation.handleResponse(operation.doRequest(request)); } - /** - * Get child support garnishment data - * - *

    Agency data and requirements to be used for creating child support garnishments - * - *

    scope: `garnishments:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The call builder - */ - public GetV1GarnishmentsChildSupportRequestBuilder getChildSupportData() { - return new GetV1GarnishmentsChildSupportRequestBuilder(sdkConfiguration); - } - - /** - * Get child support garnishment data - * - *

    Agency data and requirements to be used for creating child support garnishments - * - *

    scope: `garnishments:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public GetV1GarnishmentsChildSupportResponse getChildSupportDataDirect() { - return getChildSupportData(Optional.empty()); - } - - /** - * Get child support garnishment data - * - *

    Agency data and requirements to be used for creating child support garnishments - * - *

    scope: `garnishments:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public GetV1GarnishmentsChildSupportResponse getChildSupportData(Optional xGustoAPIVersion) { - GetV1GarnishmentsChildSupportRequest request = - GetV1GarnishmentsChildSupportRequest - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .build(); - RequestOperation operation - = new GetV1GarnishmentsChildSupport.Sync(sdkConfiguration, _headers); - return operation.handleResponse(operation.doRequest(request)); - } - } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/GeneratedDocuments.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/GeneratedDocuments.java index 7504d8383..9dbe558fb 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/GeneratedDocuments.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/GeneratedDocuments.java @@ -5,8 +5,8 @@ import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.RequestOperation; -import com.gusto.embedded_api_v_2025_11_15.models.components.VersionHeader; import com.gusto.embedded_api_v_2025_11_15.models.operations.DocumentType; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest; import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder; import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1GeneratedDocumentsDocumentTypeRequestUuidResponse; @@ -67,7 +67,7 @@ public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder get() { * @throws RuntimeException subclass if the API call fails */ public GetV1GeneratedDocumentsDocumentTypeRequestUuidResponse get(DocumentType documentType, String requestUuid) { - return get(documentType, requestUuid, Optional.empty()); + return get(Optional.empty(), documentType, requestUuid); } /** @@ -80,21 +80,21 @@ public GetV1GeneratedDocumentsDocumentTypeRequestUuidResponse get(DocumentType d * *

    If set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param documentType The type of document being generated * @param requestUuid The UUID of the request to generate a document. Generate document endpoints return request_uuids to be used with the GET generated document endpoint. - * @param xGustoAPIVersion * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public GetV1GeneratedDocumentsDocumentTypeRequestUuidResponse get( - DocumentType documentType, String requestUuid, - Optional xGustoAPIVersion) { + Optional xGustoAPIVersion, DocumentType documentType, + String requestUuid) { GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest request = GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest .builder() + .xGustoAPIVersion(xGustoAPIVersion) .documentType(documentType) .requestUuid(requestUuid) - .xGustoAPIVersion(xGustoAPIVersion) .build(); RequestOperation operation = new GetV1GeneratedDocumentsDocumentTypeRequestUuid.Sync(sdkConfiguration, _headers); diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/GustoEmbedded.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/GustoEmbedded.java index b33dea188..5c8525c8f 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/GustoEmbedded.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/GustoEmbedded.java @@ -60,13 +60,16 @@ public String server() { }}; - private final Introspection introspection; + private final AchTransactions achTransactions; private final Companies companies; - private final Invoices invoices; + private final CompanyBenefits companyBenefits; + + + private final Reports reports; private final CompanyAttachments companyAttachments; @@ -75,49 +78,55 @@ public String server() { private final CompanyAttachment companyAttachment; - private final FederalTaxDetails federalTaxDetails; + private final BankAccounts bankAccounts; + + + private final CompanyForms companyForms; private final IndustrySelection industrySelection; - private final Signatories signatories; + private final Notifications notifications; - private final Flows flows; + private final PaymentConfigs paymentConfigs; - private final Locations locations; + private final TaxRequirements taxRequirements; - private final BankAccounts bankAccounts; + private final FederalTaxDetails federalTaxDetails; - private final ExternalPayrolls externalPayrolls; + private final JobsAndCompensations jobsAndCompensations; - private final PaymentConfigs paymentConfigs; + private final ContractorPaymentMethod contractorPaymentMethod; - private final PaySchedules paySchedules; + private final ContractorPaymentMethods contractorPaymentMethods; - private final Employees employees; + private final ContractorForms contractorForms; - private final HistoricalEmployees historicalEmployees; + private final Contractors contractors; - private final Departments departments; + private final ContractorPaymentGroups contractorPaymentGroups; - private final EmployeeEmployments employeeEmployments; + private final ContractorPayments contractorPayments; - private final EmployeeAddresses employeeAddresses; + private final Departments departments; - private final EmployeeTaxSetup employeeTaxSetup; + private final ContractorDocuments contractorDocuments; + + + private final EarningTypes earningTypes; private final EmployeePaymentMethods employeePaymentMethods; @@ -126,107 +135,110 @@ public String server() { private final EmployeePaymentMethod employeePaymentMethod; - private final JobsAndCompensations jobsAndCompensations; + private final EmployeeBenefits employeeBenefits; - private final EarningTypes earningTypes; + private final Employees employees; - private final Contractors contractors; + private final EmployeeTaxSetup employeeTaxSetup; - private final ContractorPaymentMethod contractorPaymentMethod; + private final EmployeeForms employeeForms; - private final ContractorPaymentMethods contractorPaymentMethods; + private final EmployeeEmployments employeeEmployments; - private final Webhooks webhooks; + private final Events events; - private final ContractorForms contractorForms; + private final ExternalPayrolls externalPayrolls; - private final ContractorDocuments contractorDocuments; + private final Flows flows; - private final EmployeeForms employeeForms; + private final Garnishments garnishments; private final Payrolls payrolls; - private final TimeOffPolicies timeOffPolicies; - - - private final ContractorPayments contractorPayments; + private final GeneratedDocuments generatedDocuments; - private final ContractorPaymentGroups contractorPaymentGroups; + private final HistoricalEmployees historicalEmployees; - private final CompanyForms companyForms; + private final HolidayPayPolicies holidayPayPolicies; - private final GeneratedDocuments generatedDocuments; + private final EmployeeAddresses employeeAddresses; - private final Reports reports; + private final I9Verification i9Verification; - private final CompanyBenefits companyBenefits; + private final InformationRequests informationRequests; - private final EmployeeBenefits employeeBenefits; + private final Invoices invoices; - private final Garnishments garnishments; + private final Locations locations; - private final I9Verification i9Verification; + private final MemberPortalInvitations memberPortalInvitations; - private final TaxRequirements taxRequirements; + private final PaySchedules paySchedules; - private final HolidayPayPolicies holidayPayPolicies; + private final PayrollCancellations payrollCancellations; - private final Notifications notifications; + private final PayrollDigests payrollDigests; - private final Events events; + private final TimeOffPolicies timeOffPolicies; - private final InformationRequests informationRequests; + private final PeopleBatches peopleBatches; private final RecoveryCases recoveryCases; - private final AchTransactions achTransactions; + private final Reimbursements reimbursements; - private final WireInRequests wireInRequests; + private final ReverseWireTransactions reverseWireTransactions; private final SalaryEstimates salaryEstimates; - private final Reimbursements reimbursements; + private final Signatories signatories; - private final PeopleBatches peopleBatches; + private final TaxPayments taxPayments; private final TimeOffRequests timeOffRequests; - private final PayrollDigests payrollDigests; + private final Introspection introspection; - public Introspection introspection() { - return introspection; + private final Webhooks webhooks; + + + private final WireInRequests wireInRequests; + + + public AchTransactions achTransactions() { + return achTransactions; } @@ -235,8 +247,13 @@ public Companies companies() { } - public Invoices invoices() { - return invoices; + public CompanyBenefits companyBenefits() { + return companyBenefits; + } + + + public Reports reports() { + return reports; } @@ -250,8 +267,13 @@ public CompanyAttachment companyAttachment() { } - public FederalTaxDetails federalTaxDetails() { - return federalTaxDetails; + public BankAccounts bankAccounts() { + return bankAccounts; + } + + + public CompanyForms companyForms() { + return companyForms; } @@ -260,68 +282,73 @@ public IndustrySelection industrySelection() { } - public Signatories signatories() { - return signatories; + public Notifications notifications() { + return notifications; } - public Flows flows() { - return flows; + public PaymentConfigs paymentConfigs() { + return paymentConfigs; } - public Locations locations() { - return locations; + public TaxRequirements taxRequirements() { + return taxRequirements; } - public BankAccounts bankAccounts() { - return bankAccounts; + public FederalTaxDetails federalTaxDetails() { + return federalTaxDetails; } - public ExternalPayrolls externalPayrolls() { - return externalPayrolls; + public JobsAndCompensations jobsAndCompensations() { + return jobsAndCompensations; } - public PaymentConfigs paymentConfigs() { - return paymentConfigs; + public ContractorPaymentMethod contractorPaymentMethod() { + return contractorPaymentMethod; } - public PaySchedules paySchedules() { - return paySchedules; + public ContractorPaymentMethods contractorPaymentMethods() { + return contractorPaymentMethods; } - public Employees employees() { - return employees; + public ContractorForms contractorForms() { + return contractorForms; } - public HistoricalEmployees historicalEmployees() { - return historicalEmployees; + public Contractors contractors() { + return contractors; } - public Departments departments() { - return departments; + public ContractorPaymentGroups contractorPaymentGroups() { + return contractorPaymentGroups; } - public EmployeeEmployments employeeEmployments() { - return employeeEmployments; + public ContractorPayments contractorPayments() { + return contractorPayments; } - public EmployeeAddresses employeeAddresses() { - return employeeAddresses; + public Departments departments() { + return departments; } - public EmployeeTaxSetup employeeTaxSetup() { - return employeeTaxSetup; + public ContractorDocuments contractorDocuments() { + return contractorDocuments; + } + + + public EarningTypes earningTypes() { + return earningTypes; } @@ -335,48 +362,48 @@ public EmployeePaymentMethod employeePaymentMethod() { } - public JobsAndCompensations jobsAndCompensations() { - return jobsAndCompensations; + public EmployeeBenefits employeeBenefits() { + return employeeBenefits; } - public EarningTypes earningTypes() { - return earningTypes; + public Employees employees() { + return employees; } - public Contractors contractors() { - return contractors; + public EmployeeTaxSetup employeeTaxSetup() { + return employeeTaxSetup; } - public ContractorPaymentMethod contractorPaymentMethod() { - return contractorPaymentMethod; + public EmployeeForms employeeForms() { + return employeeForms; } - public ContractorPaymentMethods contractorPaymentMethods() { - return contractorPaymentMethods; + public EmployeeEmployments employeeEmployments() { + return employeeEmployments; } - public Webhooks webhooks() { - return webhooks; + public Events events() { + return events; } - public ContractorForms contractorForms() { - return contractorForms; + public ExternalPayrolls externalPayrolls() { + return externalPayrolls; } - public ContractorDocuments contractorDocuments() { - return contractorDocuments; + public Flows flows() { + return flows; } - public EmployeeForms employeeForms() { - return employeeForms; + public Garnishments garnishments() { + return garnishments; } @@ -385,78 +412,73 @@ public Payrolls payrolls() { } - public TimeOffPolicies timeOffPolicies() { - return timeOffPolicies; - } - - - public ContractorPayments contractorPayments() { - return contractorPayments; + public GeneratedDocuments generatedDocuments() { + return generatedDocuments; } - public ContractorPaymentGroups contractorPaymentGroups() { - return contractorPaymentGroups; + public HistoricalEmployees historicalEmployees() { + return historicalEmployees; } - public CompanyForms companyForms() { - return companyForms; + public HolidayPayPolicies holidayPayPolicies() { + return holidayPayPolicies; } - public GeneratedDocuments generatedDocuments() { - return generatedDocuments; + public EmployeeAddresses employeeAddresses() { + return employeeAddresses; } - public Reports reports() { - return reports; + public I9Verification i9Verification() { + return i9Verification; } - public CompanyBenefits companyBenefits() { - return companyBenefits; + public InformationRequests informationRequests() { + return informationRequests; } - public EmployeeBenefits employeeBenefits() { - return employeeBenefits; + public Invoices invoices() { + return invoices; } - public Garnishments garnishments() { - return garnishments; + public Locations locations() { + return locations; } - public I9Verification i9Verification() { - return i9Verification; + public MemberPortalInvitations memberPortalInvitations() { + return memberPortalInvitations; } - public TaxRequirements taxRequirements() { - return taxRequirements; + public PaySchedules paySchedules() { + return paySchedules; } - public HolidayPayPolicies holidayPayPolicies() { - return holidayPayPolicies; + public PayrollCancellations payrollCancellations() { + return payrollCancellations; } - public Notifications notifications() { - return notifications; + public PayrollDigests payrollDigests() { + return payrollDigests; } - public Events events() { - return events; + public TimeOffPolicies timeOffPolicies() { + return timeOffPolicies; } - public InformationRequests informationRequests() { - return informationRequests; + public PeopleBatches peopleBatches() { + return peopleBatches; } @@ -465,13 +487,13 @@ public RecoveryCases recoveryCases() { } - public AchTransactions achTransactions() { - return achTransactions; + public Reimbursements reimbursements() { + return reimbursements; } - public WireInRequests wireInRequests() { - return wireInRequests; + public ReverseWireTransactions reverseWireTransactions() { + return reverseWireTransactions; } @@ -480,13 +502,13 @@ public SalaryEstimates salaryEstimates() { } - public Reimbursements reimbursements() { - return reimbursements; + public Signatories signatories() { + return signatories; } - public PeopleBatches peopleBatches() { - return peopleBatches; + public TaxPayments taxPayments() { + return taxPayments; } @@ -495,8 +517,18 @@ public TimeOffRequests timeOffRequests() { } - public PayrollDigests payrollDigests() { - return payrollDigests; + public Introspection introspection() { + return introspection; + } + + + public Webhooks webhooks() { + return webhooks; + } + + + public WireInRequests wireInRequests() { + return wireInRequests; } private final AsyncGustoEmbedded asyncSDK; @@ -649,63 +681,67 @@ public static Builder builder() { return new Builder(); } - public GustoEmbedded(SDKConfiguration sdkConfiguration) { + private GustoEmbedded(SDKConfiguration sdkConfiguration) { sdkConfiguration.initialize(); - this.introspection = new Introspection(sdkConfiguration); + this.achTransactions = new AchTransactions(sdkConfiguration); this.companies = new Companies(sdkConfiguration); - this.invoices = new Invoices(sdkConfiguration); + this.companyBenefits = new CompanyBenefits(sdkConfiguration); + this.reports = new Reports(sdkConfiguration); this.companyAttachments = new CompanyAttachments(sdkConfiguration); this.companyAttachment = new CompanyAttachment(sdkConfiguration); - this.federalTaxDetails = new FederalTaxDetails(sdkConfiguration); - this.industrySelection = new IndustrySelection(sdkConfiguration); - this.signatories = new Signatories(sdkConfiguration); - this.flows = new Flows(sdkConfiguration); - this.locations = new Locations(sdkConfiguration); this.bankAccounts = new BankAccounts(sdkConfiguration); - this.externalPayrolls = new ExternalPayrolls(sdkConfiguration); + this.companyForms = new CompanyForms(sdkConfiguration); + this.industrySelection = new IndustrySelection(sdkConfiguration); + this.notifications = new Notifications(sdkConfiguration); this.paymentConfigs = new PaymentConfigs(sdkConfiguration); - this.paySchedules = new PaySchedules(sdkConfiguration); - this.employees = new Employees(sdkConfiguration); - this.historicalEmployees = new HistoricalEmployees(sdkConfiguration); - this.departments = new Departments(sdkConfiguration); - this.employeeEmployments = new EmployeeEmployments(sdkConfiguration); - this.employeeAddresses = new EmployeeAddresses(sdkConfiguration); - this.employeeTaxSetup = new EmployeeTaxSetup(sdkConfiguration); - this.employeePaymentMethods = new EmployeePaymentMethods(sdkConfiguration); - this.employeePaymentMethod = new EmployeePaymentMethod(sdkConfiguration); + this.taxRequirements = new TaxRequirements(sdkConfiguration); + this.federalTaxDetails = new FederalTaxDetails(sdkConfiguration); this.jobsAndCompensations = new JobsAndCompensations(sdkConfiguration); - this.earningTypes = new EarningTypes(sdkConfiguration); - this.contractors = new Contractors(sdkConfiguration); this.contractorPaymentMethod = new ContractorPaymentMethod(sdkConfiguration); this.contractorPaymentMethods = new ContractorPaymentMethods(sdkConfiguration); - this.webhooks = new Webhooks(sdkConfiguration); this.contractorForms = new ContractorForms(sdkConfiguration); + this.contractors = new Contractors(sdkConfiguration); + this.contractorPaymentGroups = new ContractorPaymentGroups(sdkConfiguration); + this.contractorPayments = new ContractorPayments(sdkConfiguration); + this.departments = new Departments(sdkConfiguration); this.contractorDocuments = new ContractorDocuments(sdkConfiguration); + this.earningTypes = new EarningTypes(sdkConfiguration); + this.employeePaymentMethods = new EmployeePaymentMethods(sdkConfiguration); + this.employeePaymentMethod = new EmployeePaymentMethod(sdkConfiguration); + this.employeeBenefits = new EmployeeBenefits(sdkConfiguration); + this.employees = new Employees(sdkConfiguration); + this.employeeTaxSetup = new EmployeeTaxSetup(sdkConfiguration); this.employeeForms = new EmployeeForms(sdkConfiguration); + this.employeeEmployments = new EmployeeEmployments(sdkConfiguration); + this.events = new Events(sdkConfiguration); + this.externalPayrolls = new ExternalPayrolls(sdkConfiguration); + this.flows = new Flows(sdkConfiguration); + this.garnishments = new Garnishments(sdkConfiguration); this.payrolls = new Payrolls(sdkConfiguration); - this.timeOffPolicies = new TimeOffPolicies(sdkConfiguration); - this.contractorPayments = new ContractorPayments(sdkConfiguration); - this.contractorPaymentGroups = new ContractorPaymentGroups(sdkConfiguration); - this.companyForms = new CompanyForms(sdkConfiguration); this.generatedDocuments = new GeneratedDocuments(sdkConfiguration); - this.reports = new Reports(sdkConfiguration); - this.companyBenefits = new CompanyBenefits(sdkConfiguration); - this.employeeBenefits = new EmployeeBenefits(sdkConfiguration); - this.garnishments = new Garnishments(sdkConfiguration); - this.i9Verification = new I9Verification(sdkConfiguration); - this.taxRequirements = new TaxRequirements(sdkConfiguration); + this.historicalEmployees = new HistoricalEmployees(sdkConfiguration); this.holidayPayPolicies = new HolidayPayPolicies(sdkConfiguration); - this.notifications = new Notifications(sdkConfiguration); - this.events = new Events(sdkConfiguration); + this.employeeAddresses = new EmployeeAddresses(sdkConfiguration); + this.i9Verification = new I9Verification(sdkConfiguration); this.informationRequests = new InformationRequests(sdkConfiguration); + this.invoices = new Invoices(sdkConfiguration); + this.locations = new Locations(sdkConfiguration); + this.memberPortalInvitations = new MemberPortalInvitations(sdkConfiguration); + this.paySchedules = new PaySchedules(sdkConfiguration); + this.payrollCancellations = new PayrollCancellations(sdkConfiguration); + this.payrollDigests = new PayrollDigests(sdkConfiguration); + this.timeOffPolicies = new TimeOffPolicies(sdkConfiguration); + this.peopleBatches = new PeopleBatches(sdkConfiguration); this.recoveryCases = new RecoveryCases(sdkConfiguration); - this.achTransactions = new AchTransactions(sdkConfiguration); - this.wireInRequests = new WireInRequests(sdkConfiguration); - this.salaryEstimates = new SalaryEstimates(sdkConfiguration); this.reimbursements = new Reimbursements(sdkConfiguration); - this.peopleBatches = new PeopleBatches(sdkConfiguration); + this.reverseWireTransactions = new ReverseWireTransactions(sdkConfiguration); + this.salaryEstimates = new SalaryEstimates(sdkConfiguration); + this.signatories = new Signatories(sdkConfiguration); + this.taxPayments = new TaxPayments(sdkConfiguration); this.timeOffRequests = new TimeOffRequests(sdkConfiguration); - this.payrollDigests = new PayrollDigests(sdkConfiguration); + this.introspection = new Introspection(sdkConfiguration); + this.webhooks = new Webhooks(sdkConfiguration); + this.wireInRequests = new WireInRequests(sdkConfiguration); sdkConfiguration = sdkConfiguration.hooks().sdkInit(sdkConfiguration); this.asyncSDK = new AsyncGustoEmbedded(this, sdkConfiguration); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/IndustrySelection.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/IndustrySelection.java index d13a6a9e6..a89c5fe16 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/IndustrySelection.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/IndustrySelection.java @@ -71,7 +71,7 @@ public GetV1CompanyIndustryRequestBuilder get() { * @throws RuntimeException subclass if the API call fails */ public GetV1CompanyIndustryResponse get(String companyId) { - return get(companyId, Optional.empty()); + return get(Optional.empty(), companyId); } /** @@ -84,17 +84,17 @@ public GetV1CompanyIndustryResponse get(String companyId) { * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1CompanyIndustryResponse get(String companyId, Optional xGustoAPIVersion) { + public GetV1CompanyIndustryResponse get(Optional xGustoAPIVersion, String companyId) { GetV1CompanyIndustryRequest request = GetV1CompanyIndustryRequest .builder() - .companyId(companyId) .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) .build(); RequestOperation operation = new GetV1CompanyIndustry.Sync(sdkConfiguration, _headers); @@ -149,7 +149,7 @@ public PutV1CompanyIndustryRequestBuilder update() { * @throws RuntimeException subclass if the API call fails */ public PutV1CompanyIndustryResponse update(String companyId, CompanyIndustrySelectionRequiredBody companyIndustrySelectionRequiredBody) { - return update(companyId, Optional.empty(), companyIndustrySelectionRequiredBody); + return update(Optional.empty(), companyId, companyIndustrySelectionRequiredBody); } /** @@ -170,20 +170,20 @@ public PutV1CompanyIndustryResponse update(String companyId, CompanyIndustrySele * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company * @param companyIndustrySelectionRequiredBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PutV1CompanyIndustryResponse update( - String companyId, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String companyId, CompanyIndustrySelectionRequiredBody companyIndustrySelectionRequiredBody) { PutV1CompanyIndustryRequest request = PutV1CompanyIndustryRequest .builder() - .companyId(companyId) .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) .companyIndustrySelectionRequiredBody(companyIndustrySelectionRequiredBody) .build(); RequestOperation operation diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/Introspection.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/Introspection.java index a4ad9767b..2525b0059 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/Introspection.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/Introspection.java @@ -5,15 +5,15 @@ import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.RequestOperation; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1TokenInfoHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1TokenInfoRequest; import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1TokenInfoRequestBuilder; import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1TokenInfoResponse; -import com.gusto.embedded_api_v_2025_11_15.models.operations.HeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.OauthAccessTokenHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2025_11_15.models.operations.OauthAccessTokenRequest; import com.gusto.embedded_api_v_2025_11_15.models.operations.OauthAccessTokenRequestBody; import com.gusto.embedded_api_v_2025_11_15.models.operations.OauthAccessTokenRequestBuilder; import com.gusto.embedded_api_v_2025_11_15.models.operations.OauthAccessTokenResponse; -import com.gusto.embedded_api_v_2025_11_15.models.operations.XGustoAPIVersion; import com.gusto.embedded_api_v_2025_11_15.operations.GetV1TokenInfo; import com.gusto.embedded_api_v_2025_11_15.operations.OauthAccessToken; import com.gusto.embedded_api_v_2025_11_15.utils.Headers; @@ -39,6 +39,52 @@ public AsyncIntrospection async() { return asyncSDK; } + /** + * Create a System Access Token or Refresh an Access Token + * + *

    Creates a system access token or refreshes an oauth access token + * + * @return The call builder + */ + public OauthAccessTokenRequestBuilder oauthAccessToken() { + return new OauthAccessTokenRequestBuilder(sdkConfiguration); + } + + /** + * Create a System Access Token or Refresh an Access Token + * + *

    Creates a system access token or refreshes an oauth access token + * + * @param requestBody + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public OauthAccessTokenResponse oauthAccessToken(OauthAccessTokenRequestBody requestBody) { + return oauthAccessToken(Optional.empty(), requestBody); + } + + /** + * Create a System Access Token or Refresh an Access Token + * + *

    Creates a system access token or refreshes an oauth access token + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param requestBody + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public OauthAccessTokenResponse oauthAccessToken(Optional xGustoAPIVersion, OauthAccessTokenRequestBody requestBody) { + OauthAccessTokenRequest request = + OauthAccessTokenRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .requestBody(requestBody) + .build(); + RequestOperation operation + = new OauthAccessToken.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + /** * Get info about the current access token * @@ -86,7 +132,7 @@ public GetV1TokenInfoResponse getInfoDirect() { * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1TokenInfoResponse getInfo(Optional xGustoAPIVersion) { + public GetV1TokenInfoResponse getInfo(Optional xGustoAPIVersion) { GetV1TokenInfoRequest request = GetV1TokenInfoRequest .builder() @@ -97,50 +143,4 @@ public GetV1TokenInfoResponse getInfo(Optional xGust return operation.handleResponse(operation.doRequest(request)); } - /** - * Create a System Access Token or Refresh an Access Token - * - *

    Creates a system access token or refreshes an oauth access token - * - * @return The call builder - */ - public OauthAccessTokenRequestBuilder oauthAccessToken() { - return new OauthAccessTokenRequestBuilder(sdkConfiguration); - } - - /** - * Create a System Access Token or Refresh an Access Token - * - *

    Creates a system access token or refreshes an oauth access token - * - * @param requestBody - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public OauthAccessTokenResponse oauthAccessToken(OauthAccessTokenRequestBody requestBody) { - return oauthAccessToken(Optional.empty(), requestBody); - } - - /** - * Create a System Access Token or Refresh an Access Token - * - *

    Creates a system access token or refreshes an oauth access token - * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param requestBody - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public OauthAccessTokenResponse oauthAccessToken(Optional xGustoAPIVersion, OauthAccessTokenRequestBody requestBody) { - OauthAccessTokenRequest request = - OauthAccessTokenRequest - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .requestBody(requestBody) - .build(); - RequestOperation operation - = new OauthAccessToken.Sync(sdkConfiguration, _headers); - return operation.handleResponse(operation.doRequest(request)); - } - } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/JobsAndCompensations.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/JobsAndCompensations.java index 199d4af09..3dcb64686 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/JobsAndCompensations.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/JobsAndCompensations.java @@ -83,680 +83,680 @@ public AsyncJobsAndCompensations async() { } /** - * Get jobs for an employee - * - *

    Get all of the jobs that an employee holds. - * Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee - * pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, - * `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope - * is included. This allows you to access employee and job metadata without exposing pay rates. - * - *

    Compensation data in the response requires the `compensations:read` scope. - * - *

    scope: `jobs:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The call builder - */ - public GetV1EmployeesEmployeeIdJobsRequestBuilder getJobs() { - return new GetV1EmployeesEmployeeIdJobsRequestBuilder(sdkConfiguration); - } - - /** - * Get jobs for an employee - * - *

    Get all of the jobs that an employee holds. - * Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee - * pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, - * `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope - * is included. This allows you to access employee and job metadata without exposing pay rates. - * - *

    Compensation data in the response requires the `compensations:read` scope. - * - *

    scope: `jobs:read` + * Get compensations for a job * - *

    If set, this operation will use Security#companyAccessAuth from the global security. + *

    Compensations contain information on how much is paid out for a job. Jobs may have many + * compensations, but only one that is active. The current compensation is the one with the most recent + * `effective_date`. * - * @param request The request object containing all the parameters for the API call. - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public GetV1EmployeesEmployeeIdJobsResponse getJobs(GetV1EmployeesEmployeeIdJobsRequest request) { - RequestOperation operation - = new GetV1EmployeesEmployeeIdJobs.Sync(sdkConfiguration, _headers); - return operation.handleResponse(operation.doRequest(request)); - } - - /** - * Create a job + *

    *Note: Currently the API does not support creating multiple compensations per job - creating a + * compensation with the same job_uuid as another will fail with a relevant error.* * - *

    Create a job. + *

    Use `flsa_status` to determine if an employee is eligible for overtime + * By default the API returns only the current compensation - use the `include` parameter to return all + * compensations. * - *

    scope: `jobs:write` + *

    scope: `compensations:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public PostV1EmployeesEmployeeIdJobsRequestBuilder createJob() { - return new PostV1EmployeesEmployeeIdJobsRequestBuilder(sdkConfiguration); + public GetV1JobsJobIdCompensationsRequestBuilder getCompensations() { + return new GetV1JobsJobIdCompensationsRequestBuilder(sdkConfiguration); } /** - * Create a job - * - *

    Create a job. - * - *

    scope: `jobs:write` + * Get compensations for a job * - *

    If set, this operation will use Security#companyAccessAuth from the global security. + *

    Compensations contain information on how much is paid out for a job. Jobs may have many + * compensations, but only one that is active. The current compensation is the one with the most recent + * `effective_date`. * - * @param employeeId The UUID of the employee - * @param jobsCreateRequestBody Request body for creating a job. - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public PostV1EmployeesEmployeeIdJobsResponse createJob(String employeeId, JobsCreateRequestBody jobsCreateRequestBody) { - return createJob(employeeId, Optional.empty(), jobsCreateRequestBody); - } - - /** - * Create a job + *

    *Note: Currently the API does not support creating multiple compensations per job - creating a + * compensation with the same job_uuid as another will fail with a relevant error.* * - *

    Create a job. + *

    Use `flsa_status` to determine if an employee is eligible for overtime + * By default the API returns only the current compensation - use the `include` parameter to return all + * compensations. * - *

    scope: `jobs:write` + *

    scope: `compensations:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param employeeId The UUID of the employee - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param jobsCreateRequestBody Request body for creating a job. + * @param request The request object containing all the parameters for the API call. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostV1EmployeesEmployeeIdJobsResponse createJob( - String employeeId, Optional xGustoAPIVersion, - JobsCreateRequestBody jobsCreateRequestBody) { - PostV1EmployeesEmployeeIdJobsRequest request = - PostV1EmployeesEmployeeIdJobsRequest - .builder() - .employeeId(employeeId) - .xGustoAPIVersion(xGustoAPIVersion) - .jobsCreateRequestBody(jobsCreateRequestBody) - .build(); - RequestOperation operation - = new PostV1EmployeesEmployeeIdJobs.Sync(sdkConfiguration, _headers); + public GetV1JobsJobIdCompensationsResponse getCompensations(GetV1JobsJobIdCompensationsRequest request) { + RequestOperation operation + = new GetV1JobsJobIdCompensations.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Get a job + * Create a compensation * - *

    Get a job. + *

    Compensations contain information on how much is paid out for a job. Jobs may have many + * compensations, but only one that is active. The current compensation is the one with the most recent + * `effective_date`. * - *

    Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee - * pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, - * `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope - * is included. This allows you to access employee and job metadata without exposing pay rates. + *

    ### Prerequisites + * Before calling this endpoint: + * 1. A [job](ref:post-v1-jobs-job_id) must exist for the employee * - *

    Compensation data in the response requires the `compensations:read` scope. + *

    ### Webhooks + * - `employee_job_compensation.created`: Fires when a compensation is successfully created * - *

    scope: `jobs:read` + *

    scope: `compensations:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public GetV1JobsJobIdRequestBuilder getJob() { - return new GetV1JobsJobIdRequestBuilder(sdkConfiguration); + public PostV1CompensationsCompensationIdRequestBuilder createCompensation() { + return new PostV1CompensationsCompensationIdRequestBuilder(sdkConfiguration); } /** - * Get a job + * Create a compensation * - *

    Get a job. + *

    Compensations contain information on how much is paid out for a job. Jobs may have many + * compensations, but only one that is active. The current compensation is the one with the most recent + * `effective_date`. * - *

    Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee - * pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, - * `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope - * is included. This allows you to access employee and job metadata without exposing pay rates. + *

    ### Prerequisites + * Before calling this endpoint: + * 1. A [job](ref:post-v1-jobs-job_id) must exist for the employee * - *

    Compensation data in the response requires the `compensations:read` scope. + *

    ### Webhooks + * - `employee_job_compensation.created`: Fires when a compensation is successfully created * - *

    scope: `jobs:read` + *

    scope: `compensations:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param jobId The UUID of the job + * @param compensationsRequestBody Request body for creating a compensation. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1JobsJobIdResponse getJob(String jobId) { - return getJob(jobId, Optional.empty(), Optional.empty()); + public PostV1CompensationsCompensationIdResponse createCompensation(String jobId, CompensationsRequestBody compensationsRequestBody) { + return createCompensation(Optional.empty(), jobId, compensationsRequestBody); } /** - * Get a job + * Create a compensation * - *

    Get a job. + *

    Compensations contain information on how much is paid out for a job. Jobs may have many + * compensations, but only one that is active. The current compensation is the one with the most recent + * `effective_date`. * - *

    Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee - * pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, - * `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope - * is included. This allows you to access employee and job metadata without exposing pay rates. + *

    ### Prerequisites + * Before calling this endpoint: + * 1. A [job](ref:post-v1-jobs-job_id) must exist for the employee * - *

    Compensation data in the response requires the `compensations:read` scope. + *

    ### Webhooks + * - `employee_job_compensation.created`: Fires when a compensation is successfully created * - *

    scope: `jobs:read` + *

    scope: `compensations:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param jobId The UUID of the job - * @param include Available options: - * - all_compensations: Include all effective dated compensations for each job instead of only the current compensation - * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param jobId The UUID of the job + * @param compensationsRequestBody Request body for creating a compensation. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1JobsJobIdResponse getJob( - String jobId, Optional include, - Optional xGustoAPIVersion) { - GetV1JobsJobIdRequest request = - GetV1JobsJobIdRequest + public PostV1CompensationsCompensationIdResponse createCompensation( + Optional xGustoAPIVersion, String jobId, + CompensationsRequestBody compensationsRequestBody) { + PostV1CompensationsCompensationIdRequest request = + PostV1CompensationsCompensationIdRequest .builder() - .jobId(jobId) - .include(include) .xGustoAPIVersion(xGustoAPIVersion) + .jobId(jobId) + .compensationsRequestBody(compensationsRequestBody) .build(); - RequestOperation operation - = new GetV1JobsJobId.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PostV1CompensationsCompensationId.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Update a job + * Get a compensation * - *

    Update a job. + *

    Compensations contain information on how much is paid out for a job. Jobs may have many + * compensations, but only one that is active. The current compensation is the one with the most recent + * `effective_date`. * - *

    scope: `jobs:write` + *

    scope: `compensations:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public PutV1JobsJobIdRequestBuilder update() { - return new PutV1JobsJobIdRequestBuilder(sdkConfiguration); + public GetV1CompensationsCompensationIdRequestBuilder getCompensation() { + return new GetV1CompensationsCompensationIdRequestBuilder(sdkConfiguration); } /** - * Update a job + * Get a compensation * - *

    Update a job. + *

    Compensations contain information on how much is paid out for a job. Jobs may have many + * compensations, but only one that is active. The current compensation is the one with the most recent + * `effective_date`. * - *

    scope: `jobs:write` + *

    scope: `compensations:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param jobId The UUID of the job - * @param jobsUpdateRequestBody Request body for updating a job. + * @param compensationId The UUID of the compensation * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1JobsJobIdResponse update(String jobId, JobsUpdateRequestBody jobsUpdateRequestBody) { - return update(jobId, Optional.empty(), jobsUpdateRequestBody); + public GetV1CompensationsCompensationIdResponse getCompensation(String compensationId) { + return getCompensation(Optional.empty(), compensationId); } /** - * Update a job + * Get a compensation * - *

    Update a job. + *

    Compensations contain information on how much is paid out for a job. Jobs may have many + * compensations, but only one that is active. The current compensation is the one with the most recent + * `effective_date`. * - *

    scope: `jobs:write` + *

    scope: `compensations:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param jobId The UUID of the job * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param jobsUpdateRequestBody Request body for updating a job. + * @param compensationId The UUID of the compensation * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1JobsJobIdResponse update( - String jobId, Optional xGustoAPIVersion, - JobsUpdateRequestBody jobsUpdateRequestBody) { - PutV1JobsJobIdRequest request = - PutV1JobsJobIdRequest + public GetV1CompensationsCompensationIdResponse getCompensation(Optional xGustoAPIVersion, String compensationId) { + GetV1CompensationsCompensationIdRequest request = + GetV1CompensationsCompensationIdRequest .builder() - .jobId(jobId) .xGustoAPIVersion(xGustoAPIVersion) - .jobsUpdateRequestBody(jobsUpdateRequestBody) + .compensationId(compensationId) .build(); - RequestOperation operation - = new PutV1JobsJobId.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new GetV1CompensationsCompensationId.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Delete an individual job + * Update a compensation * - *

    Deletes a specific job that an employee holds. + *

    Compensations contain information on how much is paid out for a job. Jobs may have many + * compensations, but only one that is active. The current compensation is the one with the most recent + * `effective_date`. * - *

    scope: `jobs:write` + *

    ### Webhooks + * - `employee_job_compensation.updated`: Fires when a compensation is successfully updated + * + *

    scope: `compensations:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public DeleteV1JobsJobIdRequestBuilder delete() { - return new DeleteV1JobsJobIdRequestBuilder(sdkConfiguration); + public PutV1CompensationsCompensationIdRequestBuilder updateCompensation() { + return new PutV1CompensationsCompensationIdRequestBuilder(sdkConfiguration); } /** - * Delete an individual job + * Update a compensation * - *

    Deletes a specific job that an employee holds. + *

    Compensations contain information on how much is paid out for a job. Jobs may have many + * compensations, but only one that is active. The current compensation is the one with the most recent + * `effective_date`. * - *

    scope: `jobs:write` + *

    ### Webhooks + * - `employee_job_compensation.updated`: Fires when a compensation is successfully updated + * + *

    scope: `compensations:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param jobId The UUID of the job + * @param compensationId The UUID of the compensation + * @param compensationsUpdateRequestBody Request body for updating a compensation. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public DeleteV1JobsJobIdResponse delete(String jobId) { - return delete(jobId, Optional.empty()); + public PutV1CompensationsCompensationIdResponse updateCompensation(String compensationId, CompensationsUpdateRequestBody compensationsUpdateRequestBody) { + return updateCompensation(Optional.empty(), compensationId, compensationsUpdateRequestBody); } /** - * Delete an individual job + * Update a compensation * - *

    Deletes a specific job that an employee holds. + *

    Compensations contain information on how much is paid out for a job. Jobs may have many + * compensations, but only one that is active. The current compensation is the one with the most recent + * `effective_date`. * - *

    scope: `jobs:write` + *

    ### Webhooks + * - `employee_job_compensation.updated`: Fires when a compensation is successfully updated + * + *

    scope: `compensations:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param jobId The UUID of the job * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param compensationId The UUID of the compensation + * @param compensationsUpdateRequestBody Request body for updating a compensation. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public DeleteV1JobsJobIdResponse delete(String jobId, Optional xGustoAPIVersion) { - DeleteV1JobsJobIdRequest request = - DeleteV1JobsJobIdRequest + public PutV1CompensationsCompensationIdResponse updateCompensation( + Optional xGustoAPIVersion, String compensationId, + CompensationsUpdateRequestBody compensationsUpdateRequestBody) { + PutV1CompensationsCompensationIdRequest request = + PutV1CompensationsCompensationIdRequest .builder() - .jobId(jobId) .xGustoAPIVersion(xGustoAPIVersion) + .compensationId(compensationId) + .compensationsUpdateRequestBody(compensationsUpdateRequestBody) .build(); - RequestOperation operation - = new DeleteV1JobsJobId.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PutV1CompensationsCompensationId.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Get compensations for a job + * Delete a compensation * *

    Compensations contain information on how much is paid out for a job. Jobs may have many * compensations, but only one that is active. The current compensation is the one with the most recent * `effective_date`. * - *

    *Note: Currently the API does not support creating multiple compensations per job - creating a - * compensation with the same job_uuid as another will fail with a relevant error.* + *

    This endpoint deletes a compensation for a job that hasn't been processed on payroll. * - *

    Use `flsa_status` to determine if an employee is eligible for overtime - * By default the API returns only the current compensation - use the `include` parameter to return all - * compensations. + *

    ### Webhooks + * - `employee_job_compensation.destroyed`: Fires when a compensation is successfully deleted * - *

    scope: `compensations:read` + *

    scope: `compensations:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public GetV1JobsJobIdCompensationsRequestBuilder getCompensations() { - return new GetV1JobsJobIdCompensationsRequestBuilder(sdkConfiguration); + public DeleteV1CompensationsCompensationIdRequestBuilder deleteCompensation() { + return new DeleteV1CompensationsCompensationIdRequestBuilder(sdkConfiguration); } /** - * Get compensations for a job + * Delete a compensation * *

    Compensations contain information on how much is paid out for a job. Jobs may have many * compensations, but only one that is active. The current compensation is the one with the most recent * `effective_date`. * - *

    *Note: Currently the API does not support creating multiple compensations per job - creating a - * compensation with the same job_uuid as another will fail with a relevant error.* + *

    This endpoint deletes a compensation for a job that hasn't been processed on payroll. * - *

    Use `flsa_status` to determine if an employee is eligible for overtime - * By default the API returns only the current compensation - use the `include` parameter to return all - * compensations. + *

    ### Webhooks + * - `employee_job_compensation.destroyed`: Fires when a compensation is successfully deleted * - *

    scope: `compensations:read` + *

    scope: `compensations:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param request The request object containing all the parameters for the API call. + * @param compensationId The UUID of the compensation * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1JobsJobIdCompensationsResponse getCompensations(GetV1JobsJobIdCompensationsRequest request) { - RequestOperation operation - = new GetV1JobsJobIdCompensations.Sync(sdkConfiguration, _headers); - return operation.handleResponse(operation.doRequest(request)); + public DeleteV1CompensationsCompensationIdResponse deleteCompensation(String compensationId) { + return deleteCompensation(Optional.empty(), compensationId); } /** - * Create a compensation + * Delete a compensation * *

    Compensations contain information on how much is paid out for a job. Jobs may have many * compensations, but only one that is active. The current compensation is the one with the most recent * `effective_date`. * - *

    ### Prerequisites - * Before calling this endpoint: - * 1. A [job](ref:post-v1-jobs-job_id) must exist for the employee + *

    This endpoint deletes a compensation for a job that hasn't been processed on payroll. * *

    ### Webhooks - * - `employee_job_compensation.created`: Fires when a compensation is successfully created + * - `employee_job_compensation.destroyed`: Fires when a compensation is successfully deleted * *

    scope: `compensations:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param compensationId The UUID of the compensation + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public DeleteV1CompensationsCompensationIdResponse deleteCompensation(Optional xGustoAPIVersion, String compensationId) { + DeleteV1CompensationsCompensationIdRequest request = + DeleteV1CompensationsCompensationIdRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .compensationId(compensationId) + .build(); + RequestOperation operation + = new DeleteV1CompensationsCompensationId.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + + /** + * Get a job + * + *

    Get a job. + * + *

    Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee + * pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, + * `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope + * is included. This allows you to access employee and job metadata without exposing pay rates. + * + *

    Compensation data in the response requires the `compensations:read` scope. + * + *

    scope: `jobs:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * * @return The call builder */ - public PostV1CompensationsCompensationIdRequestBuilder createCompensation() { - return new PostV1CompensationsCompensationIdRequestBuilder(sdkConfiguration); + public GetV1JobsJobIdRequestBuilder getJob() { + return new GetV1JobsJobIdRequestBuilder(sdkConfiguration); } /** - * Create a compensation + * Get a job * - *

    Compensations contain information on how much is paid out for a job. Jobs may have many - * compensations, but only one that is active. The current compensation is the one with the most recent - * `effective_date`. + *

    Get a job. * - *

    ### Prerequisites - * Before calling this endpoint: - * 1. A [job](ref:post-v1-jobs-job_id) must exist for the employee + *

    Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee + * pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, + * `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope + * is included. This allows you to access employee and job metadata without exposing pay rates. * - *

    ### Webhooks - * - `employee_job_compensation.created`: Fires when a compensation is successfully created + *

    Compensation data in the response requires the `compensations:read` scope. * - *

    scope: `compensations:write` + *

    scope: `jobs:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param jobId The UUID of the job - * @param compensationsRequestBody Request body for creating a compensation. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostV1CompensationsCompensationIdResponse createCompensation(String jobId, CompensationsRequestBody compensationsRequestBody) { - return createCompensation(Optional.empty(), jobId, compensationsRequestBody); + public GetV1JobsJobIdResponse getJob(String jobId) { + return getJob(Optional.empty(), jobId, Optional.empty()); } /** - * Create a compensation + * Get a job * - *

    Compensations contain information on how much is paid out for a job. Jobs may have many - * compensations, but only one that is active. The current compensation is the one with the most recent - * `effective_date`. + *

    Get a job. * - *

    ### Prerequisites - * Before calling this endpoint: - * 1. A [job](ref:post-v1-jobs-job_id) must exist for the employee + *

    Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee + * pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, + * `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope + * is included. This allows you to access employee and job metadata without exposing pay rates. * - *

    ### Webhooks - * - `employee_job_compensation.created`: Fires when a compensation is successfully created + *

    Compensation data in the response requires the `compensations:read` scope. * - *

    scope: `compensations:write` + *

    scope: `jobs:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param jobId The UUID of the job - * @param compensationsRequestBody Request body for creating a compensation. + * @param include Available options: + * - all_compensations: Include all effective dated compensations for each job instead of only the current compensation + * * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostV1CompensationsCompensationIdResponse createCompensation( - Optional xGustoAPIVersion, String jobId, - CompensationsRequestBody compensationsRequestBody) { - PostV1CompensationsCompensationIdRequest request = - PostV1CompensationsCompensationIdRequest + public GetV1JobsJobIdResponse getJob( + Optional xGustoAPIVersion, String jobId, + Optional include) { + GetV1JobsJobIdRequest request = + GetV1JobsJobIdRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .jobId(jobId) - .compensationsRequestBody(compensationsRequestBody) + .include(include) .build(); - RequestOperation operation - = new PostV1CompensationsCompensationId.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new GetV1JobsJobId.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Get a compensation + * Update a job * - *

    Compensations contain information on how much is paid out for a job. Jobs may have many - * compensations, but only one that is active. The current compensation is the one with the most recent - * `effective_date`. + *

    Update a job. * - *

    scope: `compensations:read` + *

    scope: `jobs:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public GetV1CompensationsCompensationIdRequestBuilder getCompensation() { - return new GetV1CompensationsCompensationIdRequestBuilder(sdkConfiguration); + public PutV1JobsJobIdRequestBuilder update() { + return new PutV1JobsJobIdRequestBuilder(sdkConfiguration); } /** - * Get a compensation + * Update a job * - *

    Compensations contain information on how much is paid out for a job. Jobs may have many - * compensations, but only one that is active. The current compensation is the one with the most recent - * `effective_date`. + *

    Update a job. * - *

    scope: `compensations:read` + *

    scope: `jobs:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param compensationId The UUID of the compensation + * @param jobId The UUID of the job + * @param jobsUpdateRequestBody Request body for updating a job. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1CompensationsCompensationIdResponse getCompensation(String compensationId) { - return getCompensation(Optional.empty(), compensationId); + public PutV1JobsJobIdResponse update(String jobId, JobsUpdateRequestBody jobsUpdateRequestBody) { + return update(Optional.empty(), jobId, jobsUpdateRequestBody); } /** - * Get a compensation + * Update a job * - *

    Compensations contain information on how much is paid out for a job. Jobs may have many - * compensations, but only one that is active. The current compensation is the one with the most recent - * `effective_date`. + *

    Update a job. * - *

    scope: `compensations:read` + *

    scope: `jobs:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param compensationId The UUID of the compensation + * @param jobId The UUID of the job + * @param jobsUpdateRequestBody Request body for updating a job. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1CompensationsCompensationIdResponse getCompensation(Optional xGustoAPIVersion, String compensationId) { - GetV1CompensationsCompensationIdRequest request = - GetV1CompensationsCompensationIdRequest + public PutV1JobsJobIdResponse update( + Optional xGustoAPIVersion, String jobId, + JobsUpdateRequestBody jobsUpdateRequestBody) { + PutV1JobsJobIdRequest request = + PutV1JobsJobIdRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .compensationId(compensationId) + .jobId(jobId) + .jobsUpdateRequestBody(jobsUpdateRequestBody) .build(); - RequestOperation operation - = new GetV1CompensationsCompensationId.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PutV1JobsJobId.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Update a compensation - * - *

    Compensations contain information on how much is paid out for a job. Jobs may have many - * compensations, but only one that is active. The current compensation is the one with the most recent - * `effective_date`. + * Delete an individual job * - *

    ### Webhooks - * - `employee_job_compensation.updated`: Fires when a compensation is successfully updated + *

    Deletes a specific job that an employee holds. * - *

    scope: `compensations:write` + *

    scope: `jobs:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public PutV1CompensationsCompensationIdRequestBuilder updateCompensation() { - return new PutV1CompensationsCompensationIdRequestBuilder(sdkConfiguration); + public DeleteV1JobsJobIdRequestBuilder delete() { + return new DeleteV1JobsJobIdRequestBuilder(sdkConfiguration); } /** - * Update a compensation - * - *

    Compensations contain information on how much is paid out for a job. Jobs may have many - * compensations, but only one that is active. The current compensation is the one with the most recent - * `effective_date`. + * Delete an individual job * - *

    ### Webhooks - * - `employee_job_compensation.updated`: Fires when a compensation is successfully updated + *

    Deletes a specific job that an employee holds. * - *

    scope: `compensations:write` + *

    scope: `jobs:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param compensationId The UUID of the compensation - * @param compensationsUpdateRequestBody Request body for updating a compensation. + * @param jobId The UUID of the job * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1CompensationsCompensationIdResponse updateCompensation(String compensationId, CompensationsUpdateRequestBody compensationsUpdateRequestBody) { - return updateCompensation(Optional.empty(), compensationId, compensationsUpdateRequestBody); + public DeleteV1JobsJobIdResponse delete(String jobId) { + return delete(Optional.empty(), jobId); } /** - * Update a compensation - * - *

    Compensations contain information on how much is paid out for a job. Jobs may have many - * compensations, but only one that is active. The current compensation is the one with the most recent - * `effective_date`. + * Delete an individual job * - *

    ### Webhooks - * - `employee_job_compensation.updated`: Fires when a compensation is successfully updated + *

    Deletes a specific job that an employee holds. * - *

    scope: `compensations:write` + *

    scope: `jobs:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param compensationId The UUID of the compensation - * @param compensationsUpdateRequestBody Request body for updating a compensation. + * @param jobId The UUID of the job * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1CompensationsCompensationIdResponse updateCompensation( - Optional xGustoAPIVersion, String compensationId, - CompensationsUpdateRequestBody compensationsUpdateRequestBody) { - PutV1CompensationsCompensationIdRequest request = - PutV1CompensationsCompensationIdRequest + public DeleteV1JobsJobIdResponse delete(Optional xGustoAPIVersion, String jobId) { + DeleteV1JobsJobIdRequest request = + DeleteV1JobsJobIdRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .compensationId(compensationId) - .compensationsUpdateRequestBody(compensationsUpdateRequestBody) + .jobId(jobId) .build(); - RequestOperation operation - = new PutV1CompensationsCompensationId.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new DeleteV1JobsJobId.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Delete a compensation - * - *

    Compensations contain information on how much is paid out for a job. Jobs may have many - * compensations, but only one that is active. The current compensation is the one with the most recent - * `effective_date`. + * Get jobs for an employee * - *

    This endpoint deletes a compensation for a job that hasn't been processed on payroll. + *

    Get all of the jobs that an employee holds. + * Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee + * pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, + * `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope + * is included. This allows you to access employee and job metadata without exposing pay rates. * - *

    ### Webhooks - * - `employee_job_compensation.destroyed`: Fires when a compensation is successfully deleted + *

    Compensation data in the response requires the `compensations:read` scope. * - *

    scope: `compensations:write` + *

    scope: `jobs:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public DeleteV1CompensationsCompensationIdRequestBuilder deleteCompensation() { - return new DeleteV1CompensationsCompensationIdRequestBuilder(sdkConfiguration); + public GetV1EmployeesEmployeeIdJobsRequestBuilder getJobs() { + return new GetV1EmployeesEmployeeIdJobsRequestBuilder(sdkConfiguration); } /** - * Delete a compensation - * - *

    Compensations contain information on how much is paid out for a job. Jobs may have many - * compensations, but only one that is active. The current compensation is the one with the most recent - * `effective_date`. + * Get jobs for an employee * - *

    This endpoint deletes a compensation for a job that hasn't been processed on payroll. + *

    Get all of the jobs that an employee holds. + * Note: Compensation data (pay rate, payment unit, and related fields) represents sensitive employee + * pay information. When retrieving employee job data, these fields (`rate`, `payment_unit`, + * `current_compensation_uuid`, `compensations`) are only returned when the `compensations:read` scope + * is included. This allows you to access employee and job metadata without exposing pay rates. * - *

    ### Webhooks - * - `employee_job_compensation.destroyed`: Fires when a compensation is successfully deleted + *

    Compensation data in the response requires the `compensations:read` scope. * - *

    scope: `compensations:write` + *

    scope: `jobs:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param compensationId The UUID of the compensation + * @param request The request object containing all the parameters for the API call. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public DeleteV1CompensationsCompensationIdResponse deleteCompensation(String compensationId) { - return deleteCompensation(Optional.empty(), compensationId); + public GetV1EmployeesEmployeeIdJobsResponse getJobs(GetV1EmployeesEmployeeIdJobsRequest request) { + RequestOperation operation + = new GetV1EmployeesEmployeeIdJobs.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); } /** - * Delete a compensation + * Create a job * - *

    Compensations contain information on how much is paid out for a job. Jobs may have many - * compensations, but only one that is active. The current compensation is the one with the most recent - * `effective_date`. + *

    Create a job. * - *

    This endpoint deletes a compensation for a job that hasn't been processed on payroll. + *

    scope: `jobs:write` * - *

    ### Webhooks - * - `employee_job_compensation.destroyed`: Fires when a compensation is successfully deleted + *

    If set, this operation will use Security#companyAccessAuth from the global security. * - *

    scope: `compensations:write` + * @return The call builder + */ + public PostV1EmployeesEmployeeIdJobsRequestBuilder createJob() { + return new PostV1EmployeesEmployeeIdJobsRequestBuilder(sdkConfiguration); + } + + /** + * Create a job + * + *

    Create a job. + * + *

    scope: `jobs:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param employeeId The UUID of the employee + * @param jobsCreateRequestBody Request body for creating a job. + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public PostV1EmployeesEmployeeIdJobsResponse createJob(String employeeId, JobsCreateRequestBody jobsCreateRequestBody) { + return createJob(Optional.empty(), employeeId, jobsCreateRequestBody); + } + + /** + * Create a job + * + *

    Create a job. + * + *

    scope: `jobs:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param compensationId The UUID of the compensation + * @param employeeId The UUID of the employee + * @param jobsCreateRequestBody Request body for creating a job. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public DeleteV1CompensationsCompensationIdResponse deleteCompensation(Optional xGustoAPIVersion, String compensationId) { - DeleteV1CompensationsCompensationIdRequest request = - DeleteV1CompensationsCompensationIdRequest + public PostV1EmployeesEmployeeIdJobsResponse createJob( + Optional xGustoAPIVersion, String employeeId, + JobsCreateRequestBody jobsCreateRequestBody) { + PostV1EmployeesEmployeeIdJobsRequest request = + PostV1EmployeesEmployeeIdJobsRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .compensationId(compensationId) + .employeeId(employeeId) + .jobsCreateRequestBody(jobsCreateRequestBody) .build(); - RequestOperation operation - = new DeleteV1CompensationsCompensationId.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PostV1EmployeesEmployeeIdJobs.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/Locations.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/Locations.java index 51dc8ac8e..27a67277b 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/Locations.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/Locations.java @@ -58,14 +58,9 @@ public AsyncLocations async() { } /** - * Get all company locations - * - *

    Retrieves all company locations (addresses) associated with a company: mailing addresses, filing - * addresses, or work locations. A single address may serve multiple, or all, purposes. + * Get minimum wages for a location * - *

    Since all company locations are subsets of locations, use the Locations endpoints to - * [get](ref:get-v1-locations-location_id) or [update](ref:put-v1-locations-location_id) an individual - * record. + *

    Get minimum wages for a location * *

    scope: `companies:read` * @@ -73,148 +68,54 @@ public AsyncLocations async() { * * @return The call builder */ - public GetV1CompaniesCompanyIdLocationsRequestBuilder get() { - return new GetV1CompaniesCompanyIdLocationsRequestBuilder(sdkConfiguration); + public GetV1LocationsLocationUuidMinimumWagesRequestBuilder getMinimumWages() { + return new GetV1LocationsLocationUuidMinimumWagesRequestBuilder(sdkConfiguration); } /** - * Get all company locations - * - *

    Retrieves all company locations (addresses) associated with a company: mailing addresses, filing - * addresses, or work locations. A single address may serve multiple, or all, purposes. + * Get minimum wages for a location * - *

    Since all company locations are subsets of locations, use the Locations endpoints to - * [get](ref:get-v1-locations-location_id) or [update](ref:put-v1-locations-location_id) an individual - * record. + *

    Get minimum wages for a location * *

    scope: `companies:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company + * @param locationUuid The UUID of the location * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1CompaniesCompanyIdLocationsResponse get(String companyId) { - return get(Optional.empty(), companyId, Optional.empty(), - Optional.empty()); + public GetV1LocationsLocationUuidMinimumWagesResponse getMinimumWages(String locationUuid) { + return getMinimumWages(Optional.empty(), locationUuid, Optional.empty()); } /** - * Get all company locations - * - *

    Retrieves all company locations (addresses) associated with a company: mailing addresses, filing - * addresses, or work locations. A single address may serve multiple, or all, purposes. + * Get minimum wages for a location * - *

    Since all company locations are subsets of locations, use the Locations endpoints to - * [get](ref:get-v1-locations-location_id) or [update](ref:put-v1-locations-location_id) an individual - * record. + *

    Get minimum wages for a location * *

    scope: `companies:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyId The UUID of the company - * @param page The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - * @param per Number of objects per page. For majority of endpoints will default to 25 - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public GetV1CompaniesCompanyIdLocationsResponse get( - Optional xGustoAPIVersion, String companyId, - Optional page, Optional per) { - GetV1CompaniesCompanyIdLocationsRequest request = - GetV1CompaniesCompanyIdLocationsRequest - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .companyId(companyId) - .page(page) - .per(per) - .build(); - RequestOperation operation - = new GetV1CompaniesCompanyIdLocations.Sync(sdkConfiguration, _headers); - return operation.handleResponse(operation.doRequest(request)); - } - - /** - * Create a company location - * - *

    Create a company location, which represents any address associated with a company: mailing - * addresses, filing addresses, or work locations. A single address may serve multiple, or all, - * purposes. - * - *

    Since all company locations are subsets of locations, use the Locations endpoints to - * [get](ref:get-v1-locations-location_id) or [update](ref:put-v1-locations-location_id) an individual - * record. - * - *

    scope: `companies:write` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The call builder - */ - public PostV1CompaniesCompanyIdLocationsRequestBuilder create() { - return new PostV1CompaniesCompanyIdLocationsRequestBuilder(sdkConfiguration); - } - - /** - * Create a company location - * - *

    Create a company location, which represents any address associated with a company: mailing - * addresses, filing addresses, or work locations. A single address may serve multiple, or all, - * purposes. - * - *

    Since all company locations are subsets of locations, use the Locations endpoints to - * [get](ref:get-v1-locations-location_id) or [update](ref:put-v1-locations-location_id) an individual - * record. - * - *

    scope: `companies:write` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param companyId The UUID of the company - * @param companyLocationRequest Request body for creating a company location (company address). - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public PostV1CompaniesCompanyIdLocationsResponse create(String companyId, CompanyLocationRequest companyLocationRequest) { - return create(Optional.empty(), companyId, companyLocationRequest); - } - - /** - * Create a company location - * - *

    Create a company location, which represents any address associated with a company: mailing - * addresses, filing addresses, or work locations. A single address may serve multiple, or all, - * purposes. - * - *

    Since all company locations are subsets of locations, use the Locations endpoints to - * [get](ref:get-v1-locations-location_id) or [update](ref:put-v1-locations-location_id) an individual - * record. - * - *

    scope: `companies:write` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyId The UUID of the company - * @param companyLocationRequest Request body for creating a company location (company address). + * @param locationUuid The UUID of the location + * @param effectiveDate * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostV1CompaniesCompanyIdLocationsResponse create( - Optional xGustoAPIVersion, String companyId, - CompanyLocationRequest companyLocationRequest) { - PostV1CompaniesCompanyIdLocationsRequest request = - PostV1CompaniesCompanyIdLocationsRequest + public GetV1LocationsLocationUuidMinimumWagesResponse getMinimumWages( + Optional xGustoAPIVersion, String locationUuid, + Optional effectiveDate) { + GetV1LocationsLocationUuidMinimumWagesRequest request = + GetV1LocationsLocationUuidMinimumWagesRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .companyId(companyId) - .companyLocationRequest(companyLocationRequest) + .locationUuid(locationUuid) + .effectiveDate(effectiveDate) .build(); - RequestOperation operation - = new PostV1CompaniesCompanyIdLocations.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new GetV1LocationsLocationUuidMinimumWages.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } @@ -340,9 +241,14 @@ public PutV1LocationsLocationIdResponse update( } /** - * Get minimum wages for a location + * Get all company locations * - *

    Get minimum wages for a location + *

    Retrieves all company locations (addresses) associated with a company: mailing addresses, filing + * addresses, or work locations. A single address may serve multiple, or all, purposes. + * + *

    Since all company locations are subsets of locations, use the Locations endpoints to + * [get](ref:get-v1-locations-location_id) or [update](ref:put-v1-locations-location_id) an individual + * record. * *

    scope: `companies:read` * @@ -350,54 +256,148 @@ public PutV1LocationsLocationIdResponse update( * * @return The call builder */ - public GetV1LocationsLocationUuidMinimumWagesRequestBuilder getMinimumWages() { - return new GetV1LocationsLocationUuidMinimumWagesRequestBuilder(sdkConfiguration); + public GetV1CompaniesCompanyIdLocationsRequestBuilder get() { + return new GetV1CompaniesCompanyIdLocationsRequestBuilder(sdkConfiguration); } /** - * Get minimum wages for a location + * Get all company locations * - *

    Get minimum wages for a location + *

    Retrieves all company locations (addresses) associated with a company: mailing addresses, filing + * addresses, or work locations. A single address may serve multiple, or all, purposes. + * + *

    Since all company locations are subsets of locations, use the Locations endpoints to + * [get](ref:get-v1-locations-location_id) or [update](ref:put-v1-locations-location_id) an individual + * record. * *

    scope: `companies:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param locationUuid The UUID of the location + * @param companyId The UUID of the company * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1LocationsLocationUuidMinimumWagesResponse getMinimumWages(String locationUuid) { - return getMinimumWages(locationUuid, Optional.empty(), Optional.empty()); + public GetV1CompaniesCompanyIdLocationsResponse get(String companyId) { + return get(Optional.empty(), companyId, Optional.empty(), + Optional.empty()); } /** - * Get minimum wages for a location + * Get all company locations * - *

    Get minimum wages for a location + *

    Retrieves all company locations (addresses) associated with a company: mailing addresses, filing + * addresses, or work locations. A single address may serve multiple, or all, purposes. + * + *

    Since all company locations are subsets of locations, use the Locations endpoints to + * [get](ref:get-v1-locations-location_id) or [update](ref:put-v1-locations-location_id) an individual + * record. * *

    scope: `companies:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param locationUuid The UUID of the location * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param effectiveDate + * @param companyId The UUID of the company + * @param page The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + * @param per Number of objects per page. For majority of endpoints will default to 25 * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1LocationsLocationUuidMinimumWagesResponse getMinimumWages( - String locationUuid, Optional xGustoAPIVersion, - Optional effectiveDate) { - GetV1LocationsLocationUuidMinimumWagesRequest request = - GetV1LocationsLocationUuidMinimumWagesRequest + public GetV1CompaniesCompanyIdLocationsResponse get( + Optional xGustoAPIVersion, String companyId, + Optional page, Optional per) { + GetV1CompaniesCompanyIdLocationsRequest request = + GetV1CompaniesCompanyIdLocationsRequest .builder() - .locationUuid(locationUuid) .xGustoAPIVersion(xGustoAPIVersion) - .effectiveDate(effectiveDate) + .companyId(companyId) + .page(page) + .per(per) .build(); - RequestOperation operation - = new GetV1LocationsLocationUuidMinimumWages.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new GetV1CompaniesCompanyIdLocations.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + + /** + * Create a company location + * + *

    Create a company location, which represents any address associated with a company: mailing + * addresses, filing addresses, or work locations. A single address may serve multiple, or all, + * purposes. + * + *

    Since all company locations are subsets of locations, use the Locations endpoints to + * [get](ref:get-v1-locations-location_id) or [update](ref:put-v1-locations-location_id) an individual + * record. + * + *

    scope: `companies:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public PostV1CompaniesCompanyIdLocationsRequestBuilder create() { + return new PostV1CompaniesCompanyIdLocationsRequestBuilder(sdkConfiguration); + } + + /** + * Create a company location + * + *

    Create a company location, which represents any address associated with a company: mailing + * addresses, filing addresses, or work locations. A single address may serve multiple, or all, + * purposes. + * + *

    Since all company locations are subsets of locations, use the Locations endpoints to + * [get](ref:get-v1-locations-location_id) or [update](ref:put-v1-locations-location_id) an individual + * record. + * + *

    scope: `companies:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param companyId The UUID of the company + * @param companyLocationRequest Request body for creating a company location (company address). + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public PostV1CompaniesCompanyIdLocationsResponse create(String companyId, CompanyLocationRequest companyLocationRequest) { + return create(Optional.empty(), companyId, companyLocationRequest); + } + + /** + * Create a company location + * + *

    Create a company location, which represents any address associated with a company: mailing + * addresses, filing addresses, or work locations. A single address may serve multiple, or all, + * purposes. + * + *

    Since all company locations are subsets of locations, use the Locations endpoints to + * [get](ref:get-v1-locations-location_id) or [update](ref:put-v1-locations-location_id) an individual + * record. + * + *

    scope: `companies:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company + * @param companyLocationRequest Request body for creating a company location (company address). + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public PostV1CompaniesCompanyIdLocationsResponse create( + Optional xGustoAPIVersion, String companyId, + CompanyLocationRequest companyLocationRequest) { + PostV1CompaniesCompanyIdLocationsRequest request = + PostV1CompaniesCompanyIdLocationsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) + .companyLocationRequest(companyLocationRequest) + .build(); + RequestOperation operation + = new PostV1CompaniesCompanyIdLocations.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/MemberPortalInvitations.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/MemberPortalInvitations.java new file mode 100644 index 000000000..0014219d1 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/MemberPortalInvitations.java @@ -0,0 +1,452 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15; + +import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.RequestOperation; + +import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder; +import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder; +import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ContractorsContractorUuidMemberPortalInvitationsRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ContractorsContractorUuidMemberPortalInvitationsResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1ContractorsContractorUuidMemberPortalInvitationsRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1ContractorsContractorUuidMemberPortalInvitationsResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse; +import com.gusto.embedded_api_v_2025_11_15.operations.DeleteV1ContractorsContractorUuidMemberPortalInvitations; +import com.gusto.embedded_api_v_2025_11_15.operations.DeleteV1EmployeesEmployeeIdMemberPortalInvitations; +import com.gusto.embedded_api_v_2025_11_15.operations.GetV1ContractorsContractorUuidMemberPortalInvitations; +import com.gusto.embedded_api_v_2025_11_15.operations.GetV1EmployeesEmployeeIdMemberPortalInvitations; +import com.gusto.embedded_api_v_2025_11_15.operations.PostV1ContractorsContractorUuidMemberPortalInvitations; +import com.gusto.embedded_api_v_2025_11_15.operations.PostV1EmployeesEmployeeIdMemberPortalInvitations; +import com.gusto.embedded_api_v_2025_11_15.utils.Headers; +import java.lang.String; +import java.util.Optional; + + +public class MemberPortalInvitations { + private static final Headers _headers = Headers.EMPTY; + private final SDKConfiguration sdkConfiguration; + private final AsyncMemberPortalInvitations asyncSDK; + + MemberPortalInvitations(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + this.asyncSDK = new AsyncMemberPortalInvitations(this, sdkConfiguration); + } + + /** + * Switches to the async SDK. + * + * @return The async SDK + */ + public AsyncMemberPortalInvitations async() { + return asyncSDK; + } + + /** + * Create an employee member portal invitation + * + *

    Generates a member portal invitation for the specified employee. If the employee already has an + * invitation and its token has expired, calling this endpoint regenerates the invitation and overrides + * the prior token. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder postV1EmployeesEmployeeIdMemberPortalInvitations() { + return new PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder(sdkConfiguration); + } + + /** + * Create an employee member portal invitation + * + *

    Generates a member portal invitation for the specified employee. If the employee already has an + * invitation and its token has expired, calling this endpoint regenerates the invitation and overrides + * the prior token. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param employeeId The UUID of the employee + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse postV1EmployeesEmployeeIdMemberPortalInvitations(String employeeId) { + return postV1EmployeesEmployeeIdMemberPortalInvitations(Optional.empty(), employeeId); + } + + /** + * Create an employee member portal invitation + * + *

    Generates a member portal invitation for the specified employee. If the employee already has an + * invitation and its token has expired, calling this endpoint regenerates the invitation and overrides + * the prior token. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param employeeId The UUID of the employee + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse postV1EmployeesEmployeeIdMemberPortalInvitations(Optional xGustoAPIVersion, String employeeId) { + PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest request = + PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .employeeId(employeeId) + .build(); + RequestOperation operation + = new PostV1EmployeesEmployeeIdMemberPortalInvitations.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + + /** + * Get an employee member portal invitation + * + *

    Returns the current status of an employee's member portal invitation (`pending`, `sent`, `verified`, + * `complete`, or `cancelled`) along with an `expired` flag indicating whether the invitation can still + * be acted on by the employee. + * + *

    scope: `member_portal_invitation:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder getV1EmployeesEmployeeIdMemberPortalInvitations() { + return new GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder(sdkConfiguration); + } + + /** + * Get an employee member portal invitation + * + *

    Returns the current status of an employee's member portal invitation (`pending`, `sent`, `verified`, + * `complete`, or `cancelled`) along with an `expired` flag indicating whether the invitation can still + * be acted on by the employee. + * + *

    scope: `member_portal_invitation:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param employeeId The UUID of the employee + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse getV1EmployeesEmployeeIdMemberPortalInvitations(String employeeId) { + return getV1EmployeesEmployeeIdMemberPortalInvitations(Optional.empty(), employeeId); + } + + /** + * Get an employee member portal invitation + * + *

    Returns the current status of an employee's member portal invitation (`pending`, `sent`, `verified`, + * `complete`, or `cancelled`) along with an `expired` flag indicating whether the invitation can still + * be acted on by the employee. + * + *

    scope: `member_portal_invitation:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param employeeId The UUID of the employee + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse getV1EmployeesEmployeeIdMemberPortalInvitations(Optional xGustoAPIVersion, String employeeId) { + GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest request = + GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .employeeId(employeeId) + .build(); + RequestOperation operation + = new GetV1EmployeesEmployeeIdMemberPortalInvitations.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + + /** + * Cancel an employee member portal invitation + * + *

    Cancels the member portal invitation for the specified employee. + * + *

    Note: this endpoint does not cancel the employee's self-onboarding flow. If you want the company + * admin to take full control of onboarding the employee, cancel the self-onboarding request instead. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder deleteV1EmployeesEmployeeIdMemberPortalInvitations() { + return new DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder(sdkConfiguration); + } + + /** + * Cancel an employee member portal invitation + * + *

    Cancels the member portal invitation for the specified employee. + * + *

    Note: this endpoint does not cancel the employee's self-onboarding flow. If you want the company + * admin to take full control of onboarding the employee, cancel the self-onboarding request instead. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param employeeId The UUID of the employee + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse deleteV1EmployeesEmployeeIdMemberPortalInvitations(String employeeId) { + return deleteV1EmployeesEmployeeIdMemberPortalInvitations(Optional.empty(), employeeId); + } + + /** + * Cancel an employee member portal invitation + * + *

    Cancels the member portal invitation for the specified employee. + * + *

    Note: this endpoint does not cancel the employee's self-onboarding flow. If you want the company + * admin to take full control of onboarding the employee, cancel the self-onboarding request instead. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param employeeId The UUID of the employee + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse deleteV1EmployeesEmployeeIdMemberPortalInvitations(Optional xGustoAPIVersion, String employeeId) { + DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest request = + DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .employeeId(employeeId) + .build(); + RequestOperation operation + = new DeleteV1EmployeesEmployeeIdMemberPortalInvitations.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + + /** + * Create a contractor member portal invitation + * + *

    Generates a member portal invitation for the specified contractor. If the contractor already has an + * invitation and its token has expired, calling this endpoint regenerates the invitation and overrides + * the prior token. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public PostV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder postV1ContractorsContractorUuidMemberPortalInvitations() { + return new PostV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder(sdkConfiguration); + } + + /** + * Create a contractor member portal invitation + * + *

    Generates a member portal invitation for the specified contractor. If the contractor already has an + * invitation and its token has expired, calling this endpoint regenerates the invitation and overrides + * the prior token. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param contractorUuid The UUID of the contractor + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public PostV1ContractorsContractorUuidMemberPortalInvitationsResponse postV1ContractorsContractorUuidMemberPortalInvitations(String contractorUuid) { + return postV1ContractorsContractorUuidMemberPortalInvitations(Optional.empty(), contractorUuid); + } + + /** + * Create a contractor member portal invitation + * + *

    Generates a member portal invitation for the specified contractor. If the contractor already has an + * invitation and its token has expired, calling this endpoint regenerates the invitation and overrides + * the prior token. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param contractorUuid The UUID of the contractor + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public PostV1ContractorsContractorUuidMemberPortalInvitationsResponse postV1ContractorsContractorUuidMemberPortalInvitations(Optional xGustoAPIVersion, String contractorUuid) { + PostV1ContractorsContractorUuidMemberPortalInvitationsRequest request = + PostV1ContractorsContractorUuidMemberPortalInvitationsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .contractorUuid(contractorUuid) + .build(); + RequestOperation operation + = new PostV1ContractorsContractorUuidMemberPortalInvitations.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + + /** + * Get a contractor member portal invitation + * + *

    Returns the current status of a contractor's member portal invitation (`pending`, `sent`, + * `verified`, `complete`, or `cancelled`) along with an `expired` flag indicating whether the + * invitation can still be acted on by the contractor. + * + *

    scope: `member_portal_invitation:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder getV1ContractorsContractorUuidMemberPortalInvitations() { + return new GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder(sdkConfiguration); + } + + /** + * Get a contractor member portal invitation + * + *

    Returns the current status of a contractor's member portal invitation (`pending`, `sent`, + * `verified`, `complete`, or `cancelled`) along with an `expired` flag indicating whether the + * invitation can still be acted on by the contractor. + * + *

    scope: `member_portal_invitation:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param contractorUuid The UUID of the contractor + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1ContractorsContractorUuidMemberPortalInvitationsResponse getV1ContractorsContractorUuidMemberPortalInvitations(String contractorUuid) { + return getV1ContractorsContractorUuidMemberPortalInvitations(Optional.empty(), contractorUuid); + } + + /** + * Get a contractor member portal invitation + * + *

    Returns the current status of a contractor's member portal invitation (`pending`, `sent`, + * `verified`, `complete`, or `cancelled`) along with an `expired` flag indicating whether the + * invitation can still be acted on by the contractor. + * + *

    scope: `member_portal_invitation:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param contractorUuid The UUID of the contractor + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1ContractorsContractorUuidMemberPortalInvitationsResponse getV1ContractorsContractorUuidMemberPortalInvitations(Optional xGustoAPIVersion, String contractorUuid) { + GetV1ContractorsContractorUuidMemberPortalInvitationsRequest request = + GetV1ContractorsContractorUuidMemberPortalInvitationsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .contractorUuid(contractorUuid) + .build(); + RequestOperation operation + = new GetV1ContractorsContractorUuidMemberPortalInvitations.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + + /** + * Cancel a contractor member portal invitation + * + *

    Cancels the member portal invitation for the specified contractor. + * + *

    Note: this endpoint does not cancel the contractor's self-onboarding flow. If you want the company + * admin to take full control of onboarding the contractor, cancel the self-onboarding request instead. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder deleteV1ContractorsContractorUuidMemberPortalInvitations() { + return new DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder(sdkConfiguration); + } + + /** + * Cancel a contractor member portal invitation + * + *

    Cancels the member portal invitation for the specified contractor. + * + *

    Note: this endpoint does not cancel the contractor's self-onboarding flow. If you want the company + * admin to take full control of onboarding the contractor, cancel the self-onboarding request instead. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param contractorUuid The UUID of the contractor + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse deleteV1ContractorsContractorUuidMemberPortalInvitations(String contractorUuid) { + return deleteV1ContractorsContractorUuidMemberPortalInvitations(Optional.empty(), contractorUuid); + } + + /** + * Cancel a contractor member portal invitation + * + *

    Cancels the member portal invitation for the specified contractor. + * + *

    Note: this endpoint does not cancel the contractor's self-onboarding flow. If you want the company + * admin to take full control of onboarding the contractor, cancel the self-onboarding request instead. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param contractorUuid The UUID of the contractor + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse deleteV1ContractorsContractorUuidMemberPortalInvitations(Optional xGustoAPIVersion, String contractorUuid) { + DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest request = + DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .contractorUuid(contractorUuid) + .build(); + RequestOperation operation + = new DeleteV1ContractorsContractorUuidMemberPortalInvitations.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/Notifications.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/Notifications.java index ed9ba6ceb..146b6d76f 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/Notifications.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/Notifications.java @@ -38,6 +38,40 @@ public AsyncNotifications async() { return asyncSDK; } + /** + * Get notifications for company + * + *

    Returns all notifications relevant for the given company. + * + *

    scope: `notifications:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public GetCompanyNotificationsRequestBuilder getCompanyNotifications() { + return new GetCompanyNotificationsRequestBuilder(sdkConfiguration); + } + + /** + * Get notifications for company + * + *

    Returns all notifications relevant for the given company. + * + *

    scope: `notifications:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param request The request object containing all the parameters for the API call. + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetCompanyNotificationsResponse getCompanyNotifications(GetCompanyNotificationsRequest request) { + RequestOperation operation + = new GetCompanyNotifications.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + /** * Get a notification's details * @@ -85,7 +119,7 @@ public GetNotificationsNotificationUuidRequestBuilder getDetails() { * @throws RuntimeException subclass if the API call fails */ public GetNotificationsNotificationUuidResponse getDetails(String notificationUuid) { - return getDetails(notificationUuid, Optional.empty()); + return getDetails(Optional.empty(), notificationUuid); } /** @@ -106,55 +140,21 @@ public GetNotificationsNotificationUuidResponse getDetails(String notificationUu * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param notificationUuid The notification entity_uuid * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param notificationUuid The notification entity_uuid * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetNotificationsNotificationUuidResponse getDetails(String notificationUuid, Optional xGustoAPIVersion) { + public GetNotificationsNotificationUuidResponse getDetails(Optional xGustoAPIVersion, String notificationUuid) { GetNotificationsNotificationUuidRequest request = GetNotificationsNotificationUuidRequest .builder() - .notificationUuid(notificationUuid) .xGustoAPIVersion(xGustoAPIVersion) + .notificationUuid(notificationUuid) .build(); RequestOperation operation = new GetNotificationsNotificationUuid.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } - /** - * Get notifications for company - * - *

    Returns all notifications relevant for the given company. - * - *

    scope: `notifications:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The call builder - */ - public GetCompanyNotificationsRequestBuilder getCompanyNotifications() { - return new GetCompanyNotificationsRequestBuilder(sdkConfiguration); - } - - /** - * Get notifications for company - * - *

    Returns all notifications relevant for the given company. - * - *

    scope: `notifications:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param request The request object containing all the parameters for the API call. - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public GetCompanyNotificationsResponse getCompanyNotifications(GetCompanyNotificationsRequest request) { - RequestOperation operation - = new GetCompanyNotifications.Sync(sdkConfiguration, _headers); - return operation.handleResponse(operation.doRequest(request)); - } - } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/PaySchedules.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/PaySchedules.java index f96f11866..d813bf18a 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/PaySchedules.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/PaySchedules.java @@ -81,6 +81,136 @@ public AsyncPaySchedules async() { return asyncSDK; } + /** + * Get pay periods for a company + * + *

    Pay periods are the foundation of payroll. Compensation, time & attendance, taxes, and expense + * reports all rely on when they happened. + * + *

    To begin submitting information for a given payroll, we need to agree on the time period. + * + *

    By default, this endpoint returns pay periods starting from 6 months ago to the date today. Use the + * `start_date` and `end_date` parameters to change the scope of the response. End dates can be up to 3 + * months in the future and there is no limit on start dates. + * + *

    Starting in version 2023-04-01, the `eligible_employees` attribute was removed from the response. + * The eligible employees for a payroll are determined by the employee_compensations returned from the + * [PUT + * /v1/companies/{company_id}/payrolls/{payroll_id}/prepare](ref:put-v1-companies-company_id-payrolls-payroll_id-prepare) + * endpoint. + * + *

    scope: `payrolls:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public GetV1CompaniesCompanyIdPayPeriodsRequestBuilder getPayPeriods() { + return new GetV1CompaniesCompanyIdPayPeriodsRequestBuilder(sdkConfiguration); + } + + /** + * Get pay periods for a company + * + *

    Pay periods are the foundation of payroll. Compensation, time & attendance, taxes, and expense + * reports all rely on when they happened. + * + *

    To begin submitting information for a given payroll, we need to agree on the time period. + * + *

    By default, this endpoint returns pay periods starting from 6 months ago to the date today. Use the + * `start_date` and `end_date` parameters to change the scope of the response. End dates can be up to 3 + * months in the future and there is no limit on start dates. + * + *

    Starting in version 2023-04-01, the `eligible_employees` attribute was removed from the response. + * The eligible employees for a payroll are determined by the employee_compensations returned from the + * [PUT + * /v1/companies/{company_id}/payrolls/{payroll_id}/prepare](ref:put-v1-companies-company_id-payrolls-payroll_id-prepare) + * endpoint. + * + *

    scope: `payrolls:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param request The request object containing all the parameters for the API call. + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1CompaniesCompanyIdPayPeriodsResponse getPayPeriods(GetV1CompaniesCompanyIdPayPeriodsRequest request) { + RequestOperation operation + = new GetV1CompaniesCompanyIdPayPeriods.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + + /** + * Get termination pay periods for a company + * + *

    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. + * + *

    This endpoint returns the unprocessed pay periods for past and future terminated employees in a + * given company. + * + *

    scope: `payrolls:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsRequestBuilder getUnprocessedTerminationPeriods() { + return new GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsRequestBuilder(sdkConfiguration); + } + + /** + * Get termination pay periods for a company + * + *

    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. + * + *

    This endpoint returns the unprocessed pay periods for past and future terminated employees in a + * given company. + * + *

    scope: `payrolls:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param companyId The UUID of the company + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsResponse getUnprocessedTerminationPeriods(String companyId) { + return getUnprocessedTerminationPeriods(Optional.empty(), companyId); + } + + /** + * Get termination pay periods for a company + * + *

    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. + * + *

    This endpoint returns the unprocessed pay periods for past and future terminated employees in a + * given company. + * + *

    scope: `payrolls:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsResponse getUnprocessedTerminationPeriods(Optional xGustoAPIVersion, String companyId) { + GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsRequest request = + GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) + .build(); + RequestOperation operation + = new GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriods.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + /** * Get the pay schedules for a company * @@ -503,197 +633,6 @@ public PutV1CompaniesCompanyIdPaySchedulesPayScheduleIdResponse update( return operation.handleResponse(operation.doRequest(request)); } - /** - * Get pay periods for a company - * - *

    Pay periods are the foundation of payroll. Compensation, time & attendance, taxes, and expense - * reports all rely on when they happened. - * - *

    To begin submitting information for a given payroll, we need to agree on the time period. - * - *

    By default, this endpoint returns pay periods starting from 6 months ago to the date today. Use the - * `start_date` and `end_date` parameters to change the scope of the response. End dates can be up to 3 - * months in the future and there is no limit on start dates. - * - *

    Starting in version 2023-04-01, the `eligible_employees` attribute was removed from the response. - * The eligible employees for a payroll are determined by the employee_compensations returned from the - * [PUT - * /v1/companies/{company_id}/payrolls/{payroll_id}/prepare](ref:put-v1-companies-company_id-payrolls-payroll_id-prepare) - * endpoint. - * - *

    scope: `payrolls:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The call builder - */ - public GetV1CompaniesCompanyIdPayPeriodsRequestBuilder getPayPeriods() { - return new GetV1CompaniesCompanyIdPayPeriodsRequestBuilder(sdkConfiguration); - } - - /** - * Get pay periods for a company - * - *

    Pay periods are the foundation of payroll. Compensation, time & attendance, taxes, and expense - * reports all rely on when they happened. - * - *

    To begin submitting information for a given payroll, we need to agree on the time period. - * - *

    By default, this endpoint returns pay periods starting from 6 months ago to the date today. Use the - * `start_date` and `end_date` parameters to change the scope of the response. End dates can be up to 3 - * months in the future and there is no limit on start dates. - * - *

    Starting in version 2023-04-01, the `eligible_employees` attribute was removed from the response. - * The eligible employees for a payroll are determined by the employee_compensations returned from the - * [PUT - * /v1/companies/{company_id}/payrolls/{payroll_id}/prepare](ref:put-v1-companies-company_id-payrolls-payroll_id-prepare) - * endpoint. - * - *

    scope: `payrolls:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param request The request object containing all the parameters for the API call. - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public GetV1CompaniesCompanyIdPayPeriodsResponse getPayPeriods(GetV1CompaniesCompanyIdPayPeriodsRequest request) { - RequestOperation operation - = new GetV1CompaniesCompanyIdPayPeriods.Sync(sdkConfiguration, _headers); - return operation.handleResponse(operation.doRequest(request)); - } - - /** - * Get termination pay periods for a company - * - *

    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. - * - *

    This endpoint returns the unprocessed pay periods for past and future terminated employees in a - * given company. - * - *

    scope: `payrolls:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The call builder - */ - public GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsRequestBuilder getUnprocessedTerminationPeriods() { - return new GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsRequestBuilder(sdkConfiguration); - } - - /** - * Get termination pay periods for a company - * - *

    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. - * - *

    This endpoint returns the unprocessed pay periods for past and future terminated employees in a - * given company. - * - *

    scope: `payrolls:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param companyId The UUID of the company - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsResponse getUnprocessedTerminationPeriods(String companyId) { - return getUnprocessedTerminationPeriods(Optional.empty(), companyId); - } - - /** - * Get termination pay periods for a company - * - *

    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. - * - *

    This endpoint returns the unprocessed pay periods for past and future terminated employees in a - * given company. - * - *

    scope: `payrolls:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyId The UUID of the company - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsResponse getUnprocessedTerminationPeriods(Optional xGustoAPIVersion, String companyId) { - GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsRequest request = - GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriodsRequest - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .companyId(companyId) - .build(); - RequestOperation operation - = new GetV1CompaniesCompanyIdUnprocessedTerminationPayPeriods.Sync(sdkConfiguration, _headers); - return operation.handleResponse(operation.doRequest(request)); - } - - /** - * Get pay schedule assignments for a company - * - *

    This endpoint returns the current pay schedule assignment for a company, with pay schedule and - * employee/department mappings depending on the pay schedule type. - * - *

    scope: `pay_schedules:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The call builder - */ - public GetV1CompaniesCompanyIdPaySchedulesAssignmentsRequestBuilder getAssignments() { - return new GetV1CompaniesCompanyIdPaySchedulesAssignmentsRequestBuilder(sdkConfiguration); - } - - /** - * Get pay schedule assignments for a company - * - *

    This endpoint returns the current pay schedule assignment for a company, with pay schedule and - * employee/department mappings depending on the pay schedule type. - * - *

    scope: `pay_schedules:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param companyId The UUID of the company - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public GetV1CompaniesCompanyIdPaySchedulesAssignmentsResponse getAssignments(String companyId) { - return getAssignments(Optional.empty(), companyId); - } - - /** - * Get pay schedule assignments for a company - * - *

    This endpoint returns the current pay schedule assignment for a company, with pay schedule and - * employee/department mappings depending on the pay schedule type. - * - *

    scope: `pay_schedules:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyId The UUID of the company - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public GetV1CompaniesCompanyIdPaySchedulesAssignmentsResponse getAssignments(Optional xGustoAPIVersion, String companyId) { - GetV1CompaniesCompanyIdPaySchedulesAssignmentsRequest request = - GetV1CompaniesCompanyIdPaySchedulesAssignmentsRequest - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .companyId(companyId) - .build(); - RequestOperation operation - = new GetV1CompaniesCompanyIdPaySchedulesAssignments.Sync(sdkConfiguration, _headers); - return operation.handleResponse(operation.doRequest(request)); - } - /** * Preview pay schedule assignments for a company * @@ -832,4 +771,65 @@ public PostV1CompaniesCompanyIdPaySchedulesAssignResponse assign( return operation.handleResponse(operation.doRequest(request)); } + /** + * Get pay schedule assignments for a company + * + *

    This endpoint returns the current pay schedule assignment for a company, with pay schedule and + * employee/department mappings depending on the pay schedule type. + * + *

    scope: `pay_schedules:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public GetV1CompaniesCompanyIdPaySchedulesAssignmentsRequestBuilder getAssignments() { + return new GetV1CompaniesCompanyIdPaySchedulesAssignmentsRequestBuilder(sdkConfiguration); + } + + /** + * Get pay schedule assignments for a company + * + *

    This endpoint returns the current pay schedule assignment for a company, with pay schedule and + * employee/department mappings depending on the pay schedule type. + * + *

    scope: `pay_schedules:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param companyId The UUID of the company + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1CompaniesCompanyIdPaySchedulesAssignmentsResponse getAssignments(String companyId) { + return getAssignments(Optional.empty(), companyId); + } + + /** + * Get pay schedule assignments for a company + * + *

    This endpoint returns the current pay schedule assignment for a company, with pay schedule and + * employee/department mappings depending on the pay schedule type. + * + *

    scope: `pay_schedules:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1CompaniesCompanyIdPaySchedulesAssignmentsResponse getAssignments(Optional xGustoAPIVersion, String companyId) { + GetV1CompaniesCompanyIdPaySchedulesAssignmentsRequest request = + GetV1CompaniesCompanyIdPaySchedulesAssignmentsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) + .build(); + RequestOperation operation + = new GetV1CompaniesCompanyIdPaySchedulesAssignments.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/PayrollCancellations.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/PayrollCancellations.java new file mode 100644 index 000000000..c215fdfd5 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/PayrollCancellations.java @@ -0,0 +1,259 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15; + +import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.RequestOperation; + +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1PayrollBatchesPayrollBatchUuidRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1PayrollBatchesPayrollBatchUuidRequestBuilder; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1PayrollBatchesPayrollBatchUuidResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1PayrollBatchesPayrollBatchUuidSecurity; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1PayrollBatchesHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1PayrollBatchesRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1PayrollBatchesRequestBody; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1PayrollBatchesRequestBuilder; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1PayrollBatchesResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1PayrollBatchesSecurity; +import com.gusto.embedded_api_v_2025_11_15.operations.GetV1PayrollBatchesPayrollBatchUuid; +import com.gusto.embedded_api_v_2025_11_15.operations.PostV1PayrollBatches; +import com.gusto.embedded_api_v_2025_11_15.utils.Headers; +import java.lang.String; +import java.util.Optional; + + +public class PayrollCancellations { + private static final Headers _headers = Headers.EMPTY; + private final SDKConfiguration sdkConfiguration; + private final AsyncPayrollCancellations asyncSDK; + + PayrollCancellations(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + this.asyncSDK = new AsyncPayrollCancellations(this, sdkConfiguration); + } + + /** + * Switches to the async SDK. + * + * @return The async SDK + */ + public AsyncPayrollCancellations async() { + return asyncSDK; + } + + /** + * Create a payroll cancellation batch + * + *

    Cancels up to 100 payrolls across one or more companies the partner is mapped to, asynchronously. + * + *

    The batch is processed asynchronously. Use the returned batch UUID to poll `GET + * /v1/payroll_batches/{payroll_batch_uuid}` for status and per-payroll results. + * + *

    Each item carries the payroll `uuid` and the `company_uuid` that owns it. A payroll whose company is + * not mapped to the partner — or that doesn't exist — is recorded as a `not_found` exclusion rather + * than a hard error, so every requested UUID lands in either `results` or `exclusions`. + * + *

    Idempotency is scoped per `(partner, idempotency_key)`. A duplicate POST with the same + * `idempotency_key` returns a 409 Conflict referencing the existing batch UUID — no duplicate + * processing occurs. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `payroll_batches:write` + * + * @return The call builder + */ + public PostV1PayrollBatchesRequestBuilder postV1PayrollBatches() { + return new PostV1PayrollBatchesRequestBuilder(sdkConfiguration); + } + + /** + * Create a payroll cancellation batch + * + *

    Cancels up to 100 payrolls across one or more companies the partner is mapped to, asynchronously. + * + *

    The batch is processed asynchronously. Use the returned batch UUID to poll `GET + * /v1/payroll_batches/{payroll_batch_uuid}` for status and per-payroll results. + * + *

    Each item carries the payroll `uuid` and the `company_uuid` that owns it. A payroll whose company is + * not mapped to the partner — or that doesn't exist — is recorded as a `not_found` exclusion rather + * than a hard error, so every requested UUID lands in either `results` or `exclusions`. + * + *

    Idempotency is scoped per `(partner, idempotency_key)`. A duplicate POST with the same + * `idempotency_key` returns a 409 Conflict referencing the existing batch UUID — no duplicate + * processing occurs. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `payroll_batches:write` + * + * @param security The security details to use for authentication. + * @param requestBody + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public PostV1PayrollBatchesResponse postV1PayrollBatches(PostV1PayrollBatchesSecurity security, PostV1PayrollBatchesRequestBody requestBody) { + return postV1PayrollBatches(security, Optional.empty(), requestBody); + } + + /** + * Create a payroll cancellation batch + * + *

    Cancels up to 100 payrolls across one or more companies the partner is mapped to, asynchronously. + * + *

    The batch is processed asynchronously. Use the returned batch UUID to poll `GET + * /v1/payroll_batches/{payroll_batch_uuid}` for status and per-payroll results. + * + *

    Each item carries the payroll `uuid` and the `company_uuid` that owns it. A payroll whose company is + * not mapped to the partner — or that doesn't exist — is recorded as a `not_found` exclusion rather + * than a hard error, so every requested UUID lands in either `results` or `exclusions`. + * + *

    Idempotency is scoped per `(partner, idempotency_key)`. A duplicate POST with the same + * `idempotency_key` returns a 409 Conflict referencing the existing batch UUID — no duplicate + * processing occurs. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `payroll_batches:write` + * + * @param security The security details to use for authentication. + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param requestBody + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public PostV1PayrollBatchesResponse postV1PayrollBatches( + PostV1PayrollBatchesSecurity security, Optional xGustoAPIVersion, + PostV1PayrollBatchesRequestBody requestBody) { + PostV1PayrollBatchesRequest request = + PostV1PayrollBatchesRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .requestBody(requestBody) + .build(); + RequestOperation operation + = new PostV1PayrollBatches.Sync(sdkConfiguration, security, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + + /** + * Get a payroll cancellation batch + * + *

    Returns the status and per-payroll results of a payroll cancellation batch. + * + *

    Poll this endpoint until the batch `status` reaches a terminal value (`completed` or `failed`). Once + * terminal, the response includes the `results` array (one entry per authorized payroll, each with its + * own per-payroll `status` — `success` or `failed`) and the `exclusions` array (one entry per payroll + * that could not be processed). A cancel is atomic, so a per-payroll result is only ever `success` or + * `failed` — never `partial_success`. + * + *

    Note that the top-level batch `status` (`pending` / `processing` / `completed` / `failed`) is the + * request lifecycle, distinct from the per-payroll `status` inside `results[]`. A `completed` batch + * does not imply every payroll was cancelled — inspect the array for per-payroll outcomes. + * + *

    Results are stored in Redis with a limited TTL after completion. If the partner polls after results + * have expired, this endpoint returns 410 Gone — partners should re-submit a new batch. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `payroll_batches:read` + * + * @return The call builder + */ + public GetV1PayrollBatchesPayrollBatchUuidRequestBuilder getV1PayrollBatchesPayrollBatchUuid() { + return new GetV1PayrollBatchesPayrollBatchUuidRequestBuilder(sdkConfiguration); + } + + /** + * Get a payroll cancellation batch + * + *

    Returns the status and per-payroll results of a payroll cancellation batch. + * + *

    Poll this endpoint until the batch `status` reaches a terminal value (`completed` or `failed`). Once + * terminal, the response includes the `results` array (one entry per authorized payroll, each with its + * own per-payroll `status` — `success` or `failed`) and the `exclusions` array (one entry per payroll + * that could not be processed). A cancel is atomic, so a per-payroll result is only ever `success` or + * `failed` — never `partial_success`. + * + *

    Note that the top-level batch `status` (`pending` / `processing` / `completed` / `failed`) is the + * request lifecycle, distinct from the per-payroll `status` inside `results[]`. A `completed` batch + * does not imply every payroll was cancelled — inspect the array for per-payroll outcomes. + * + *

    Results are stored in Redis with a limited TTL after completion. If the partner polls after results + * have expired, this endpoint returns 410 Gone — partners should re-submit a new batch. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `payroll_batches:read` + * + * @param security The security details to use for authentication. + * @param payrollBatchUuid The UUID of the payroll cancellation batch returned by `POST /v1/payroll_batches`. + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1PayrollBatchesPayrollBatchUuidResponse getV1PayrollBatchesPayrollBatchUuid(GetV1PayrollBatchesPayrollBatchUuidSecurity security, String payrollBatchUuid) { + return getV1PayrollBatchesPayrollBatchUuid(security, Optional.empty(), payrollBatchUuid); + } + + /** + * Get a payroll cancellation batch + * + *

    Returns the status and per-payroll results of a payroll cancellation batch. + * + *

    Poll this endpoint until the batch `status` reaches a terminal value (`completed` or `failed`). Once + * terminal, the response includes the `results` array (one entry per authorized payroll, each with its + * own per-payroll `status` — `success` or `failed`) and the `exclusions` array (one entry per payroll + * that could not be processed). A cancel is atomic, so a per-payroll result is only ever `success` or + * `failed` — never `partial_success`. + * + *

    Note that the top-level batch `status` (`pending` / `processing` / `completed` / `failed`) is the + * request lifecycle, distinct from the per-payroll `status` inside `results[]`. A `completed` batch + * does not imply every payroll was cancelled — inspect the array for per-payroll outcomes. + * + *

    Results are stored in Redis with a limited TTL after completion. If the partner polls after results + * have expired, this endpoint returns 410 Gone — partners should re-submit a new batch. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `payroll_batches:read` + * + * @param security The security details to use for authentication. + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param payrollBatchUuid The UUID of the payroll cancellation batch returned by `POST /v1/payroll_batches`. + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1PayrollBatchesPayrollBatchUuidResponse getV1PayrollBatchesPayrollBatchUuid( + GetV1PayrollBatchesPayrollBatchUuidSecurity security, Optional xGustoAPIVersion, + String payrollBatchUuid) { + GetV1PayrollBatchesPayrollBatchUuidRequest request = + GetV1PayrollBatchesPayrollBatchUuidRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .payrollBatchUuid(payrollBatchUuid) + .build(); + RequestOperation operation + = new GetV1PayrollBatchesPayrollBatchUuid.Sync(sdkConfiguration, security, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/PayrollDigests.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/PayrollDigests.java index f1a2c7257..bdf331dc1 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/PayrollDigests.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/PayrollDigests.java @@ -199,7 +199,7 @@ public GetV1PayrollDigestsPayrollDigestUuidRequestBuilder getV1PayrollDigestsPay * @throws RuntimeException subclass if the API call fails */ public GetV1PayrollDigestsPayrollDigestUuidResponse getV1PayrollDigestsPayrollDigestUuid(GetV1PayrollDigestsPayrollDigestUuidSecurity security, String payrollDigestUuid) { - return getV1PayrollDigestsPayrollDigestUuid(security, payrollDigestUuid, Optional.empty()); + return getV1PayrollDigestsPayrollDigestUuid(security, Optional.empty(), payrollDigestUuid); } /** @@ -228,19 +228,19 @@ public GetV1PayrollDigestsPayrollDigestUuidResponse getV1PayrollDigestsPayrollDi *

    scope: `payroll_digests:read` * * @param security The security details to use for authentication. - * @param payrollDigestUuid The UUID of the payroll digest batch returned by `POST /v1/payroll_digests`. * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param payrollDigestUuid The UUID of the payroll digest batch returned by `POST /v1/payroll_digests`. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public GetV1PayrollDigestsPayrollDigestUuidResponse getV1PayrollDigestsPayrollDigestUuid( - GetV1PayrollDigestsPayrollDigestUuidSecurity security, String payrollDigestUuid, - Optional xGustoAPIVersion) { + GetV1PayrollDigestsPayrollDigestUuidSecurity security, Optional xGustoAPIVersion, + String payrollDigestUuid) { GetV1PayrollDigestsPayrollDigestUuidRequest request = GetV1PayrollDigestsPayrollDigestUuidRequest .builder() - .payrollDigestUuid(payrollDigestUuid) .xGustoAPIVersion(xGustoAPIVersion) + .payrollDigestUuid(payrollDigestUuid) .build(); RequestOperation operation = new GetV1PayrollDigestsPayrollDigestUuid.Sync(sdkConfiguration, security, _headers); diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/Payrolls.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/Payrolls.java index 824c6f26d..581ca7d6f 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/Payrolls.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/Payrolls.java @@ -8,11 +8,11 @@ import com.gusto.embedded_api_v_2025_11_15.models.components.PayrollGrossUpRequest; import com.gusto.embedded_api_v_2025_11_15.models.components.PayrollUpdate; import com.gusto.embedded_api_v_2025_11_15.models.components.PrintablePayrollChecksBody; -import com.gusto.embedded_api_v_2025_11_15.models.components.VersionHeader; import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1CompaniesCompanyIdPayrollsRequest; import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1CompaniesCompanyIdPayrollsRequestBuilder; import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1CompaniesCompanyIdPayrollsResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdPayrollReversalsRequest; import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder; import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdPayrollReversalsResponse; @@ -131,658 +131,571 @@ public AsyncPayrolls async() { } /** - * Get all payrolls for a company - * - *

    Returns a list of payrolls for a company. You can change the payrolls returned by updating the - * processing_status, payroll_types, start_date, & end_date params. - * - *

    By default, will return processed, regular payrolls for the past 6 months. - * - *

    Notes: - * * Dollar amounts are returned as string representations of numeric decimals, are represented to the - * cent. - * * end_date can be at most 3 months in the future and start_date and end_date can't be more than 1 - * year apart. - * * Results are paginated. Maximum page size is 100 payrolls per request; the default page size is 25. - * - *

    scope: `payrolls:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The call builder - */ - public GetV1CompaniesCompanyIdPayrollsRequestBuilder list() { - return new GetV1CompaniesCompanyIdPayrollsRequestBuilder(sdkConfiguration); - } - - /** - * Get all payrolls for a company - * - *

    Returns a list of payrolls for a company. You can change the payrolls returned by updating the - * processing_status, payroll_types, start_date, & end_date params. - * - *

    By default, will return processed, regular payrolls for the past 6 months. - * - *

    Notes: - * * Dollar amounts are returned as string representations of numeric decimals, are represented to the - * cent. - * * end_date can be at most 3 months in the future and start_date and end_date can't be more than 1 - * year apart. - * * Results are paginated. Maximum page size is 100 payrolls per request; the default page size is 25. - * - *

    scope: `payrolls:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param request The request object containing all the parameters for the API call. - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public GetV1CompaniesCompanyIdPayrollsResponse list(GetV1CompaniesCompanyIdPayrollsRequest request) { - RequestOperation operation - = new GetV1CompaniesCompanyIdPayrolls.Sync(sdkConfiguration, _headers); - return operation.handleResponse(operation.doRequest(request)); - } - - /** - * Create an off-cycle payroll - * - *

    Creates a new, unprocessed, off-cycle payroll. - * - *

    ## `off_cycle_reason` - * By default: - * - External benefits and deductions will be included when the `off_cycle_reason` is set to - * `Correction`. - * - All benefits and deductions are blocked when the `off_cycle_reason` is set to `Bonus`. + * Generate printable payroll checks (pdf) * - *

    These elections can be overridden with the `skip_regular_deductions` boolean. + *

    This endpoint initiates the generation of employee checks for the payroll specified by payroll_uuid. + * A generation status and corresponding request_uuid will be returned. Use the generated document GET + * endpoint with document_type: `printable_payroll_checks` and request_uuid to poll the check + * generation process and retrieve the generated check URL upon completion. * - *

    scope: `payrolls:run` + *

    scope: `generated_documents:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public PostV1CompaniesCompanyIdPayrollsRequestBuilder createOffCycle() { - return new PostV1CompaniesCompanyIdPayrollsRequestBuilder(sdkConfiguration); + public PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksRequestBuilder generatePrintableChecks() { + return new PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksRequestBuilder(sdkConfiguration); } /** - * Create an off-cycle payroll - * - *

    Creates a new, unprocessed, off-cycle payroll. - * - *

    ## `off_cycle_reason` - * By default: - * - External benefits and deductions will be included when the `off_cycle_reason` is set to - * `Correction`. - * - All benefits and deductions are blocked when the `off_cycle_reason` is set to `Bonus`. + * Generate printable payroll checks (pdf) * - *

    These elections can be overridden with the `skip_regular_deductions` boolean. + *

    This endpoint initiates the generation of employee checks for the payroll specified by payroll_uuid. + * A generation status and corresponding request_uuid will be returned. Use the generated document GET + * endpoint with document_type: `printable_payroll_checks` and request_uuid to poll the check + * generation process and retrieve the generated check URL upon completion. * - *

    scope: `payrolls:run` + *

    scope: `generated_documents:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company + * @param payrollUuid The UUID of the payroll + * @param printablePayrollChecksBody Request body for generating printable payroll checks. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostV1CompaniesCompanyIdPayrollsResponse createOffCycle(String companyId) { - return createOffCycle(Optional.empty(), companyId, Optional.empty()); + public PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksResponse generatePrintableChecks(String payrollUuid, PrintablePayrollChecksBody printablePayrollChecksBody) { + return generatePrintableChecks(Optional.empty(), payrollUuid, printablePayrollChecksBody); } /** - * Create an off-cycle payroll - * - *

    Creates a new, unprocessed, off-cycle payroll. - * - *

    ## `off_cycle_reason` - * By default: - * - External benefits and deductions will be included when the `off_cycle_reason` is set to - * `Correction`. - * - All benefits and deductions are blocked when the `off_cycle_reason` is set to `Bonus`. + * Generate printable payroll checks (pdf) * - *

    These elections can be overridden with the `skip_regular_deductions` boolean. + *

    This endpoint initiates the generation of employee checks for the payroll specified by payroll_uuid. + * A generation status and corresponding request_uuid will be returned. Use the generated document GET + * endpoint with document_type: `printable_payroll_checks` and request_uuid to poll the check + * generation process and retrieve the generated check URL upon completion. * - *

    scope: `payrolls:run` + *

    scope: `generated_documents:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyId The UUID of the company - * @param requestBody + * @param payrollUuid The UUID of the payroll + * @param printablePayrollChecksBody Request body for generating printable payroll checks. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostV1CompaniesCompanyIdPayrollsResponse createOffCycle( - Optional xGustoAPIVersion, String companyId, - Optional requestBody) { - PostV1CompaniesCompanyIdPayrollsRequest request = - PostV1CompaniesCompanyIdPayrollsRequest + public PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksResponse generatePrintableChecks( + Optional xGustoAPIVersion, String payrollUuid, + PrintablePayrollChecksBody printablePayrollChecksBody) { + PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksRequest request = + PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .companyId(companyId) - .requestBody(requestBody) + .payrollUuid(payrollUuid) + .printablePayrollChecksBody(printablePayrollChecksBody) .build(); - RequestOperation operation - = new PostV1CompaniesCompanyIdPayrolls.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecks.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Get approved payroll reversals + * Get an employee's pay stubs * - *

    Returns all approved Payroll Reversals for a Company. + *

    Get an employee's pay stubs. * - *

    scope: `payrolls:read` + *

    Results are returned in reverse chronological order (newest first). + * + *

    scope: `pay_stubs:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder getApprovedReversals() { - return new GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder(sdkConfiguration); + public GetV1EmployeesEmployeeUuidPayStubsRequestBuilder getPayStubs() { + return new GetV1EmployeesEmployeeUuidPayStubsRequestBuilder(sdkConfiguration); } /** - * Get approved payroll reversals + * Get an employee's pay stubs * - *

    Returns all approved Payroll Reversals for a Company. + *

    Get an employee's pay stubs. * - *

    scope: `payrolls:read` + *

    Results are returned in reverse chronological order (newest first). + * + *

    scope: `pay_stubs:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company + * @param employeeId The UUID of the employee * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1CompaniesCompanyIdPayrollReversalsResponse getApprovedReversals(String companyId) { - return getApprovedReversals(companyId, Optional.empty(), Optional.empty(), + public GetV1EmployeesEmployeeUuidPayStubsResponse getPayStubs(String employeeId) { + return getPayStubs(Optional.empty(), employeeId, Optional.empty(), Optional.empty()); } /** - * Get approved payroll reversals + * Get an employee's pay stubs * - *

    Returns all approved Payroll Reversals for a Company. + *

    Get an employee's pay stubs. * - *

    scope: `payrolls:read` + *

    Results are returned in reverse chronological order (newest first). + * + *

    scope: `pay_stubs:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param employeeId The UUID of the employee * @param page The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. * @param per Number of objects per page. For majority of endpoints will default to 25 - * @param xGustoAPIVersion * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1CompaniesCompanyIdPayrollReversalsResponse getApprovedReversals( - String companyId, Optional page, - Optional per, Optional xGustoAPIVersion) { - GetV1CompaniesCompanyIdPayrollReversalsRequest request = - GetV1CompaniesCompanyIdPayrollReversalsRequest + public GetV1EmployeesEmployeeUuidPayStubsResponse getPayStubs( + Optional xGustoAPIVersion, String employeeId, + Optional page, Optional per) { + GetV1EmployeesEmployeeUuidPayStubsRequest request = + GetV1EmployeesEmployeeUuidPayStubsRequest .builder() - .companyId(companyId) + .xGustoAPIVersion(xGustoAPIVersion) + .employeeId(employeeId) .page(page) .per(per) - .xGustoAPIVersion(xGustoAPIVersion) .build(); - RequestOperation operation - = new GetV1CompaniesCompanyIdPayrollReversals.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new GetV1EmployeesEmployeeUuidPayStubs.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Get a single payroll - * - *

    Returns a payroll. If payroll is calculated or processed, will return employee_compensations and - * totals. - * - *

    Results are paginated, with a maximum page size of 100 employee_compensations. + * Get an employee pay stub (pdf) * - *

    Notes: - * * Hour and dollar amounts are returned as string representations of numeric decimals. - * * Hours are represented to the thousands place; dollar amounts are represented to the cent. - * * Every eligible compensation is returned for each employee. If no data has yet be inserted for a - * given field, it defaults to "0.00" (for fixed amounts) or "0.000" (for hours ). - * * When include parameter with benefits value is passed, employee_benefits:read scope is required to - * return benefits - * * Benefits containing PHI are only visible with the `employee_benefits:read:phi` scope + *

    Get an employee's pay stub for the specified payroll. By default, an application/pdf response will + * be returned. No other content types are currently supported, but may be supported in the future. * - *

    scope: `payrolls:read` + *

    scope: `pay_stubs:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public GetV1CompaniesCompanyIdPayrollsPayrollIdRequestBuilder get() { - return new GetV1CompaniesCompanyIdPayrollsPayrollIdRequestBuilder(sdkConfiguration); + public GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubRequestBuilder getPayStub() { + return new GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubRequestBuilder(sdkConfiguration); } /** - * Get a single payroll + * Get an employee pay stub (pdf) * - *

    Returns a payroll. If payroll is calculated or processed, will return employee_compensations and - * totals. + *

    Get an employee's pay stub for the specified payroll. By default, an application/pdf response will + * be returned. No other content types are currently supported, but may be supported in the future. * - *

    Results are paginated, with a maximum page size of 100 employee_compensations. + *

    scope: `pay_stubs:read` * - *

    Notes: - * * Hour and dollar amounts are returned as string representations of numeric decimals. - * * Hours are represented to the thousands place; dollar amounts are represented to the cent. - * * Every eligible compensation is returned for each employee. If no data has yet be inserted for a - * given field, it defaults to "0.00" (for fixed amounts) or "0.000" (for hours ). - * * When include parameter with benefits value is passed, employee_benefits:read scope is required to - * return benefits - * * Benefits containing PHI are only visible with the `employee_benefits:read:phi` scope + *

    If set, this operation will use Security#companyAccessAuth from the global security. * - *

    scope: `payrolls:read` + * @param payrollId The UUID of the payroll + * @param employeeId The UUID of the employee + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubResponse getPayStub(String payrollId, String employeeId) { + return getPayStub(Optional.empty(), payrollId, employeeId); + } + + /** + * Get an employee pay stub (pdf) + * + *

    Get an employee's pay stub for the specified payroll. By default, an application/pdf response will + * be returned. No other content types are currently supported, but may be supported in the future. + * + *

    scope: `pay_stubs:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param request The request object containing all the parameters for the API call. + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param payrollId The UUID of the payroll + * @param employeeId The UUID of the employee * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1CompaniesCompanyIdPayrollsPayrollIdResponse get(GetV1CompaniesCompanyIdPayrollsPayrollIdRequest request) { - RequestOperation operation - = new GetV1CompaniesCompanyIdPayrollsPayrollId.Sync(sdkConfiguration, _headers); + public GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubResponse getPayStub( + Optional xGustoAPIVersion, String payrollId, + String employeeId) { + GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubRequest request = + GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .payrollId(payrollId) + .employeeId(employeeId) + .build(); + RequestOperation operation + = new GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStub.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Update a payroll by ID + * Get partner disbursements for a payroll * - *

    This endpoint allows you to update information for one or more employees for a specific - * **unprocessed** payroll. You can think of the **unprocessed** - * payroll object as a template of fields that you can update. You cannot modify the structure of the - * payroll object through this endpoint, only values - * of the fields included in the payroll. If you do not include specific employee compensations, - * fixed/hourly compensations, or deductions in your request body, they - * will not be removed from the payroll. A maximum of 100 employee_compensations can be updated at a - * time. Only the employee compensation objects that were - * inputted will be returned. + *

    Get partner disbursements for a specific payroll. * - *

    scope: `payrolls:write` + *

    scope: `partner_disbursements:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public PutV1CompaniesCompanyIdPayrollsRequestBuilder update() { - return new PutV1CompaniesCompanyIdPayrollsRequestBuilder(sdkConfiguration); + public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder getV1CompaniesCompanyIdPayrollsIdPartnerDisbursements() { + return new GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder(sdkConfiguration); } /** - * Update a payroll by ID + * Get partner disbursements for a payroll * - *

    This endpoint allows you to update information for one or more employees for a specific - * **unprocessed** payroll. You can think of the **unprocessed** - * payroll object as a template of fields that you can update. You cannot modify the structure of the - * payroll object through this endpoint, only values - * of the fields included in the payroll. If you do not include specific employee compensations, - * fixed/hourly compensations, or deductions in your request body, they - * will not be removed from the payroll. A maximum of 100 employee_compensations can be updated at a - * time. Only the employee compensation objects that were - * inputted will be returned. + *

    Get partner disbursements for a specific payroll. * - *

    scope: `payrolls:write` + *

    scope: `partner_disbursements:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param companyId The UUID of the company - * @param payrollId The UUID of the payroll - * @param payrollUpdate + * @param id The UUID of the payroll * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1CompaniesCompanyIdPayrollsResponse update( - String companyId, String payrollId, - PayrollUpdate payrollUpdate) { - return update(Optional.empty(), companyId, payrollId, - payrollUpdate); + public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsResponse getV1CompaniesCompanyIdPayrollsIdPartnerDisbursements(String companyId, String id) { + return getV1CompaniesCompanyIdPayrollsIdPartnerDisbursements(Optional.empty(), companyId, id); } /** - * Update a payroll by ID + * Get partner disbursements for a payroll * - *

    This endpoint allows you to update information for one or more employees for a specific - * **unprocessed** payroll. You can think of the **unprocessed** - * payroll object as a template of fields that you can update. You cannot modify the structure of the - * payroll object through this endpoint, only values - * of the fields included in the payroll. If you do not include specific employee compensations, - * fixed/hourly compensations, or deductions in your request body, they - * will not be removed from the payroll. A maximum of 100 employee_compensations can be updated at a - * time. Only the employee compensation objects that were - * inputted will be returned. + *

    Get partner disbursements for a specific payroll. * - *

    scope: `payrolls:write` + *

    scope: `partner_disbursements:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyId The UUID of the company - * @param payrollId The UUID of the payroll - * @param payrollUpdate + * @param id The UUID of the payroll * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1CompaniesCompanyIdPayrollsResponse update( - Optional xGustoAPIVersion, String companyId, - String payrollId, PayrollUpdate payrollUpdate) { - PutV1CompaniesCompanyIdPayrollsRequest request = - PutV1CompaniesCompanyIdPayrollsRequest + public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsResponse getV1CompaniesCompanyIdPayrollsIdPartnerDisbursements( + Optional xGustoAPIVersion, String companyId, + String id) { + GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest request = + GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .companyId(companyId) - .payrollId(payrollId) - .payrollUpdate(payrollUpdate) + .id(id) .build(); - RequestOperation operation - = new PutV1CompaniesCompanyIdPayrolls.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursements.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Delete a payroll - * - *

    This endpoint allows you to delete an **unprocessed** payroll. - * - *

    By default the payroll and associated data is deleted synchronously. To request an asynchronous - * delete, use the `async=true` query parameter. In both cases validation of ability to delete will be - * performed and an Unprocessable Entity error will be returned if the payroll is not able to be - * deleted. + * Update partner disbursements for a payroll * - *

    A successful synchronous delete will return `204/No Content`. When a payroll has been enqueued for - * asynchronous deletion, `202/Accepted` will be returned. + *

    Update partner disbursements for a specific payroll. * - *

    scope: `payrolls:run` + *

    scope: `partner_disbursements:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public DeleteV1CompaniesCompanyIdPayrollsRequestBuilder delete() { - return new DeleteV1CompaniesCompanyIdPayrollsRequestBuilder(sdkConfiguration); + public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder patchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements() { + return new PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder(sdkConfiguration); } /** - * Delete a payroll - * - *

    This endpoint allows you to delete an **unprocessed** payroll. - * - *

    By default the payroll and associated data is deleted synchronously. To request an asynchronous - * delete, use the `async=true` query parameter. In both cases validation of ability to delete will be - * performed and an Unprocessable Entity error will be returned if the payroll is not able to be - * deleted. + * Update partner disbursements for a payroll * - *

    A successful synchronous delete will return `204/No Content`. When a payroll has been enqueued for - * asynchronous deletion, `202/Accepted` will be returned. + *

    Update partner disbursements for a specific payroll. * - *

    scope: `payrolls:run` + *

    scope: `partner_disbursements:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param companyId The UUID of the company - * @param payrollId The UUID of the payroll + * @param id The UUID of the payroll * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public DeleteV1CompaniesCompanyIdPayrollsResponse delete(String companyId, String payrollId) { - return delete(companyId, payrollId, Optional.empty(), + public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsResponse patchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements(String companyId, String id) { + return patchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements(Optional.empty(), companyId, id, Optional.empty()); } /** - * Delete a payroll - * - *

    This endpoint allows you to delete an **unprocessed** payroll. - * - *

    By default the payroll and associated data is deleted synchronously. To request an asynchronous - * delete, use the `async=true` query parameter. In both cases validation of ability to delete will be - * performed and an Unprocessable Entity error will be returned if the payroll is not able to be - * deleted. + * Update partner disbursements for a payroll * - *

    A successful synchronous delete will return `204/No Content`. When a payroll has been enqueued for - * asynchronous deletion, `202/Accepted` will be returned. + *

    Update partner disbursements for a specific payroll. * - *

    scope: `payrolls:run` + *

    scope: `partner_disbursements:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company - * @param payrollId The UUID of the payroll - * @param async When true, request an asynchronous delete of the payroll. * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company + * @param id The UUID of the payroll + * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public DeleteV1CompaniesCompanyIdPayrollsResponse delete( - String companyId, String payrollId, - Optional async, Optional xGustoAPIVersion) { - DeleteV1CompaniesCompanyIdPayrollsRequest request = - DeleteV1CompaniesCompanyIdPayrollsRequest + public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsResponse patchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements( + Optional xGustoAPIVersion, String companyId, + String id, Optional requestBody) { + PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest request = + PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest .builder() - .companyId(companyId) - .payrollId(payrollId) - .async(async) .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) + .id(id) + .requestBody(requestBody) .build(); - RequestOperation operation - = new DeleteV1CompaniesCompanyIdPayrolls.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Prepare a payroll for update - * - *

    Prepares an unprocessed payroll for update, including: adding or removing eligible employees from - * the payroll, - * and updating `check_date`, `payroll_deadline`, and `payroll_status_meta` dates and times. - * - *

    Use this endpoint before calling [PUT - * /v1/companies/{company_id}/payrolls/{payroll_id}](ref:put-v1-companies-company_id-payrolls). - * - *

    ### Notes + * Get approved payroll reversals * - *

    * Nullifies `calculated_at` and `totals` if the payroll was previously calculated - * * Returns the `version` parameter required for [updating the - * payroll](ref:put-v1-companies-company_id-payrolls) - * * `employees:read` scope is required to include employee compensations data in the response. - * * Results are paginated, with a maximum page size of 100 employee compensations. + *

    Returns all approved Payroll Reversals for a Company. * - *

    scope: `payrolls:write employees:read` + *

    scope: `payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBuilder prepare() { - return new PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBuilder(sdkConfiguration); + public GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder getApprovedReversals() { + return new GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder(sdkConfiguration); } /** - * Prepare a payroll for update - * - *

    Prepares an unprocessed payroll for update, including: adding or removing eligible employees from - * the payroll, - * and updating `check_date`, `payroll_deadline`, and `payroll_status_meta` dates and times. - * - *

    Use this endpoint before calling [PUT - * /v1/companies/{company_id}/payrolls/{payroll_id}](ref:put-v1-companies-company_id-payrolls). - * - *

    ### Notes + * Get approved payroll reversals * - *

    * Nullifies `calculated_at` and `totals` if the payroll was previously calculated - * * Returns the `version` parameter required for [updating the - * payroll](ref:put-v1-companies-company_id-payrolls) - * * `employees:read` scope is required to include employee compensations data in the response. - * * Results are paginated, with a maximum page size of 100 employee compensations. + *

    Returns all approved Payroll Reversals for a Company. * - *

    scope: `payrolls:write employees:read` + *

    scope: `payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param request The request object containing all the parameters for the API call. + * @param companyId The UUID of the company * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareResponse prepare(PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequest request) { - RequestOperation operation - = new PutV1CompaniesCompanyIdPayrollsPayrollIdPrepare.Sync(sdkConfiguration, _headers); - return operation.handleResponse(operation.doRequest(request)); + public GetV1CompaniesCompanyIdPayrollReversalsResponse getApprovedReversals(String companyId) { + return getApprovedReversals(Optional.empty(), companyId, Optional.empty(), + Optional.empty()); } /** - * Get a single payroll receipt - * - *

    Returns a payroll receipt. + * Get approved payroll reversals * - *

    Notes: - * * Hour and dollar amounts are returned as string representations of numeric decimals. - * * Dollar amounts are represented to the cent. - * * If no data has yet be inserted for a given field, it defaults to "0.00" (for fixed amounts). + *

    Returns all approved Payroll Reversals for a Company. * *

    scope: `payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @return The call builder + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company + * @param page The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + * @param per Number of objects per page. For majority of endpoints will default to 25 + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails */ - public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder getReceipt() { - return new GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder(sdkConfiguration); + public GetV1CompaniesCompanyIdPayrollReversalsResponse getApprovedReversals( + Optional xGustoAPIVersion, String companyId, + Optional page, Optional per) { + GetV1CompaniesCompanyIdPayrollReversalsRequest request = + GetV1CompaniesCompanyIdPayrollReversalsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) + .page(page) + .per(per) + .build(); + RequestOperation operation + = new GetV1CompaniesCompanyIdPayrollReversals.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); } /** - * Get a single payroll receipt + * Get a single payroll * - *

    Returns a payroll receipt. + *

    Returns a payroll. If payroll is calculated or processed, will return employee_compensations and + * totals. + * + *

    Results are paginated, with a maximum page size of 100 employee_compensations. * *

    Notes: * * Hour and dollar amounts are returned as string representations of numeric decimals. - * * Dollar amounts are represented to the cent. - * * If no data has yet be inserted for a given field, it defaults to "0.00" (for fixed amounts). + * * Hours are represented to the thousands place; dollar amounts are represented to the cent. + * * Every eligible compensation is returned for each employee. If no data has yet be inserted for a + * given field, it defaults to "0.00" (for fixed amounts) or "0.000" (for hours ). + * * When include parameter with benefits value is passed, employee_benefits:read scope is required to + * return benefits + * * Benefits containing PHI are only visible with the `employee_benefits:read:phi` scope * *

    scope: `payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param payrollUuid The UUID of the payroll - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails + * @return The call builder */ - public GetV1PaymentReceiptsPayrollsPayrollUuidResponse getReceipt(String payrollUuid) { - return getReceipt(payrollUuid, Optional.empty()); + public GetV1CompaniesCompanyIdPayrollsPayrollIdRequestBuilder get() { + return new GetV1CompaniesCompanyIdPayrollsPayrollIdRequestBuilder(sdkConfiguration); } /** - * Get a single payroll receipt + * Get a single payroll * - *

    Returns a payroll receipt. + *

    Returns a payroll. If payroll is calculated or processed, will return employee_compensations and + * totals. + * + *

    Results are paginated, with a maximum page size of 100 employee_compensations. * *

    Notes: * * Hour and dollar amounts are returned as string representations of numeric decimals. - * * Dollar amounts are represented to the cent. - * * If no data has yet be inserted for a given field, it defaults to "0.00" (for fixed amounts). + * * Hours are represented to the thousands place; dollar amounts are represented to the cent. + * * Every eligible compensation is returned for each employee. If no data has yet be inserted for a + * given field, it defaults to "0.00" (for fixed amounts) or "0.000" (for hours ). + * * When include parameter with benefits value is passed, employee_benefits:read scope is required to + * return benefits + * * Benefits containing PHI are only visible with the `employee_benefits:read:phi` scope * *

    scope: `payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param payrollUuid The UUID of the payroll - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param request The request object containing all the parameters for the API call. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1PaymentReceiptsPayrollsPayrollUuidResponse getReceipt(String payrollUuid, Optional xGustoAPIVersion) { - GetV1PaymentReceiptsPayrollsPayrollUuidRequest request = - GetV1PaymentReceiptsPayrollsPayrollUuidRequest - .builder() - .payrollUuid(payrollUuid) - .xGustoAPIVersion(xGustoAPIVersion) - .build(); - RequestOperation operation - = new GetV1PaymentReceiptsPayrollsPayrollUuid.Sync(sdkConfiguration, _headers); + public GetV1CompaniesCompanyIdPayrollsPayrollIdResponse get(GetV1CompaniesCompanyIdPayrollsPayrollIdRequest request) { + RequestOperation operation + = new GetV1CompaniesCompanyIdPayrollsPayrollId.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Get all payroll blockers for a company + * Update a payroll by ID * - *

    Returns a list of reasons that prevent the company from running payrolls. See the [Payroll Blockers - * guide](doc:payroll-blockers) for a complete list of reasons. The list is empty if there are no - * payroll blockers. + *

    This endpoint allows you to update information for one or more employees for a specific + * **unprocessed** payroll. You can think of the **unprocessed** + * payroll object as a template of fields that you can update. You cannot modify the structure of the + * payroll object through this endpoint, only values + * of the fields included in the payroll. If you do not include specific employee compensations, + * fixed/hourly compensations, or deductions in your request body, they + * will not be removed from the payroll. A maximum of 100 employee_compensations can be updated at a + * time. Only the employee compensation objects that were + * inputted will be returned. * - *

    scope: `payrolls:run` + *

    scope: `payrolls:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public GetV1CompaniesPayrollBlockersCompanyUuidRequestBuilder getBlockers() { - return new GetV1CompaniesPayrollBlockersCompanyUuidRequestBuilder(sdkConfiguration); + public PutV1CompaniesCompanyIdPayrollsRequestBuilder update() { + return new PutV1CompaniesCompanyIdPayrollsRequestBuilder(sdkConfiguration); } /** - * Get all payroll blockers for a company + * Update a payroll by ID * - *

    Returns a list of reasons that prevent the company from running payrolls. See the [Payroll Blockers - * guide](doc:payroll-blockers) for a complete list of reasons. The list is empty if there are no - * payroll blockers. + *

    This endpoint allows you to update information for one or more employees for a specific + * **unprocessed** payroll. You can think of the **unprocessed** + * payroll object as a template of fields that you can update. You cannot modify the structure of the + * payroll object through this endpoint, only values + * of the fields included in the payroll. If you do not include specific employee compensations, + * fixed/hourly compensations, or deductions in your request body, they + * will not be removed from the payroll. A maximum of 100 employee_compensations can be updated at a + * time. Only the employee compensation objects that were + * inputted will be returned. * - *

    scope: `payrolls:run` + *

    scope: `payrolls:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company + * @param companyId The UUID of the company + * @param payrollId The UUID of the payroll + * @param payrollUpdate * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1CompaniesPayrollBlockersCompanyUuidResponse getBlockers(String companyUuid) { - return getBlockers(Optional.empty(), companyUuid); + public PutV1CompaniesCompanyIdPayrollsResponse update( + String companyId, String payrollId, + PayrollUpdate payrollUpdate) { + return update(Optional.empty(), companyId, payrollId, + payrollUpdate); } /** - * Get all payroll blockers for a company + * Update a payroll by ID * - *

    Returns a list of reasons that prevent the company from running payrolls. See the [Payroll Blockers - * guide](doc:payroll-blockers) for a complete list of reasons. The list is empty if there are no - * payroll blockers. + *

    This endpoint allows you to update information for one or more employees for a specific + * **unprocessed** payroll. You can think of the **unprocessed** + * payroll object as a template of fields that you can update. You cannot modify the structure of the + * payroll object through this endpoint, only values + * of the fields included in the payroll. If you do not include specific employee compensations, + * fixed/hourly compensations, or deductions in your request body, they + * will not be removed from the payroll. A maximum of 100 employee_compensations can be updated at a + * time. Only the employee compensation objects that were + * inputted will be returned. * - *

    scope: `payrolls:run` + *

    scope: `payrolls:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyUuid The UUID of the company + * @param companyId The UUID of the company + * @param payrollId The UUID of the payroll + * @param payrollUpdate * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1CompaniesPayrollBlockersCompanyUuidResponse getBlockers(Optional xGustoAPIVersion, String companyUuid) { - GetV1CompaniesPayrollBlockersCompanyUuidRequest request = - GetV1CompaniesPayrollBlockersCompanyUuidRequest + public PutV1CompaniesCompanyIdPayrollsResponse update( + Optional xGustoAPIVersion, String companyId, + String payrollId, PayrollUpdate payrollUpdate) { + PutV1CompaniesCompanyIdPayrollsRequest request = + PutV1CompaniesCompanyIdPayrollsRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .companyUuid(companyUuid) + .companyId(companyId) + .payrollId(payrollId) + .payrollUpdate(payrollUpdate) .build(); - RequestOperation operation - = new GetV1CompaniesPayrollBlockersCompanyUuid.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PutV1CompaniesCompanyIdPayrolls.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Skip a payroll + * Delete a payroll * - *

    Submits a $0 payroll for employees associated with the pay schedule to skip payroll. This submission - * is asynchronous and a successful request responds with a 202 HTTP status. Upon success, the payroll - * is transitioned to the `processed` state. + *

    This endpoint allows you to delete an **unprocessed** payroll. * - *

    If the company is blocked from running payroll due to issues like incomplete setup, missing - * information or other compliance issues, the response will be 422 Unprocessable Entity with a - * categorization of the blockers as described in the error responses. + *

    By default the payroll and associated data is deleted synchronously. To request an asynchronous + * delete, use the `async=true` query parameter. In both cases validation of ability to delete will be + * performed and an Unprocessable Entity error will be returned if the payroll is not able to be + * deleted. + * + *

    A successful synchronous delete will return `204/No Content`. When a payroll has been enqueued for + * asynchronous deletion, `202/Accepted` will be returned. * *

    scope: `payrolls:run` * @@ -790,161 +703,143 @@ public GetV1CompaniesPayrollBlockersCompanyUuidResponse getBlockers(OptionalSubmits a $0 payroll for employees associated with the pay schedule to skip payroll. This submission - * is asynchronous and a successful request responds with a 202 HTTP status. Upon success, the payroll - * is transitioned to the `processed` state. + *

    This endpoint allows you to delete an **unprocessed** payroll. * - *

    If the company is blocked from running payroll due to issues like incomplete setup, missing - * information or other compliance issues, the response will be 422 Unprocessable Entity with a - * categorization of the blockers as described in the error responses. + *

    By default the payroll and associated data is deleted synchronously. To request an asynchronous + * delete, use the `async=true` query parameter. In both cases validation of ability to delete will be + * performed and an Unprocessable Entity error will be returned if the payroll is not able to be + * deleted. + * + *

    A successful synchronous delete will return `204/No Content`. When a payroll has been enqueued for + * asynchronous deletion, `202/Accepted` will be returned. * *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company - * @param requestBody + * @param companyId The UUID of the company + * @param payrollId The UUID of the payroll * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostCompaniesPayrollSkipCompanyUuidResponse skip(String companyUuid, PostCompaniesPayrollSkipCompanyUuidRequestBody requestBody) { - return skip(Optional.empty(), companyUuid, requestBody); + public DeleteV1CompaniesCompanyIdPayrollsResponse delete(String companyId, String payrollId) { + return delete(Optional.empty(), companyId, payrollId, + Optional.empty()); } /** - * Skip a payroll + * Delete a payroll * - *

    Submits a $0 payroll for employees associated with the pay schedule to skip payroll. This submission - * is asynchronous and a successful request responds with a 202 HTTP status. Upon success, the payroll - * is transitioned to the `processed` state. + *

    This endpoint allows you to delete an **unprocessed** payroll. * - *

    If the company is blocked from running payroll due to issues like incomplete setup, missing - * information or other compliance issues, the response will be 422 Unprocessable Entity with a - * categorization of the blockers as described in the error responses. + *

    By default the payroll and associated data is deleted synchronously. To request an asynchronous + * delete, use the `async=true` query parameter. In both cases validation of ability to delete will be + * performed and an Unprocessable Entity error will be returned if the payroll is not able to be + * deleted. + * + *

    A successful synchronous delete will return `204/No Content`. When a payroll has been enqueued for + * asynchronous deletion, `202/Accepted` will be returned. * *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyUuid The UUID of the company - * @param requestBody + * @param companyId The UUID of the company + * @param payrollId The UUID of the payroll + * @param async When true, request an asynchronous delete of the payroll. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostCompaniesPayrollSkipCompanyUuidResponse skip( - Optional xGustoAPIVersion, String companyUuid, - PostCompaniesPayrollSkipCompanyUuidRequestBody requestBody) { - PostCompaniesPayrollSkipCompanyUuidRequest request = - PostCompaniesPayrollSkipCompanyUuidRequest + public DeleteV1CompaniesCompanyIdPayrollsResponse delete( + Optional xGustoAPIVersion, String companyId, + String payrollId, Optional async) { + DeleteV1CompaniesCompanyIdPayrollsRequest request = + DeleteV1CompaniesCompanyIdPayrollsRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .companyUuid(companyUuid) - .requestBody(requestBody) + .companyId(companyId) + .payrollId(payrollId) + .async(async) .build(); - RequestOperation operation - = new PostCompaniesPayrollSkipCompanyUuid.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new DeleteV1CompaniesCompanyIdPayrolls.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Calculate gross up for a payroll + * Get all payrolls for a company * - *

    Calculates gross up earnings for an employee's payroll, given net earnings. This endpoint is only - * applicable to off-cycle unprocessed payrolls. + *

    Returns a list of payrolls for a company. You can change the payrolls returned by updating the + * processing_status, payroll_types, start_date, & end_date params. * - *

    The gross up amount must then be mapped to the corresponding fixed compensation earning type to get - * the correct payroll amount. For example, for bonus off-cycles, the gross up amount should be set - * with the Bonus earning type in the payroll `fixed_compensations` field. + *

    By default, will return processed, regular payrolls for the past 6 months. * - *

    scope: `payrolls:run` + *

    Notes: + * * Dollar amounts are returned as string representations of numeric decimals, are represented to the + * cent. + * * end_date can be at most 3 months in the future and start_date and end_date can't be more than 1 + * year apart. + * * Results are paginated. Maximum page size is 100 payrolls per request; the default page size is 25. + * + *

    scope: `payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public PostPayrollsGrossUpPayrollUuidRequestBuilder calculateGrossUp() { - return new PostPayrollsGrossUpPayrollUuidRequestBuilder(sdkConfiguration); + public GetV1CompaniesCompanyIdPayrollsRequestBuilder list() { + return new GetV1CompaniesCompanyIdPayrollsRequestBuilder(sdkConfiguration); } /** - * Calculate gross up for a payroll - * - *

    Calculates gross up earnings for an employee's payroll, given net earnings. This endpoint is only - * applicable to off-cycle unprocessed payrolls. - * - *

    The gross up amount must then be mapped to the corresponding fixed compensation earning type to get - * the correct payroll amount. For example, for bonus off-cycles, the gross up amount should be set - * with the Bonus earning type in the payroll `fixed_compensations` field. - * - *

    scope: `payrolls:run` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. + * Get all payrolls for a company * - * @param payrollUuid The UUID of the payroll - * @param payrollGrossUpRequest Request body for calculating gross up amount - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public PostPayrollsGrossUpPayrollUuidResponse calculateGrossUp(String payrollUuid, PayrollGrossUpRequest payrollGrossUpRequest) { - return calculateGrossUp(Optional.empty(), payrollUuid, payrollGrossUpRequest); - } - - /** - * Calculate gross up for a payroll + *

    Returns a list of payrolls for a company. You can change the payrolls returned by updating the + * processing_status, payroll_types, start_date, & end_date params. * - *

    Calculates gross up earnings for an employee's payroll, given net earnings. This endpoint is only - * applicable to off-cycle unprocessed payrolls. + *

    By default, will return processed, regular payrolls for the past 6 months. * - *

    The gross up amount must then be mapped to the corresponding fixed compensation earning type to get - * the correct payroll amount. For example, for bonus off-cycles, the gross up amount should be set - * with the Bonus earning type in the payroll `fixed_compensations` field. + *

    Notes: + * * Dollar amounts are returned as string representations of numeric decimals, are represented to the + * cent. + * * end_date can be at most 3 months in the future and start_date and end_date can't be more than 1 + * year apart. + * * Results are paginated. Maximum page size is 100 payrolls per request; the default page size is 25. * - *

    scope: `payrolls:run` + *

    scope: `payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param payrollUuid The UUID of the payroll - * @param payrollGrossUpRequest Request body for calculating gross up amount + * @param request The request object containing all the parameters for the API call. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostPayrollsGrossUpPayrollUuidResponse calculateGrossUp( - Optional xGustoAPIVersion, String payrollUuid, - PayrollGrossUpRequest payrollGrossUpRequest) { - PostPayrollsGrossUpPayrollUuidRequest request = - PostPayrollsGrossUpPayrollUuidRequest - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .payrollUuid(payrollUuid) - .payrollGrossUpRequest(payrollGrossUpRequest) - .build(); - RequestOperation operation - = new PostPayrollsGrossUpPayrollUuid.Sync(sdkConfiguration, _headers); + public GetV1CompaniesCompanyIdPayrollsResponse list(GetV1CompaniesCompanyIdPayrollsRequest request) { + RequestOperation operation + = new GetV1CompaniesCompanyIdPayrolls.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Calculate a payroll + * Create an off-cycle payroll * - *

    Performs calculations for taxes, benefits, and deductions for an unprocessed payroll. The calculated - * payroll details provide a preview of the actual values that will be used when the payroll is run. + *

    Creates a new, unprocessed, off-cycle payroll. * - *

    This calculation is asynchronous and a successful request responds with a 202 HTTP status. To view - * the details of the calculated payroll, use the GET /v1/companies/{company_id}/payrolls/{payroll_id} - * endpoint with *include=taxes,benefits,deductions* params. + *

    ## `off_cycle_reason` + * By default: + * - External benefits and deductions will be included when the `off_cycle_reason` is set to + * `Correction`. + * - All benefits and deductions are blocked when the `off_cycle_reason` is set to `Bonus`. * - *

    If the company is blocked from running payroll due to issues like incomplete setup, missing - * information or other compliance issues, the response will be 422 Unprocessable Entity with a - * categorization of the blockers as described in the error responses. + *

    These elections can be overridden with the `skip_regular_deductions` boolean. * *

    scope: `payrolls:run` * @@ -952,50 +847,47 @@ public PostPayrollsGrossUpPayrollUuidResponse calculateGrossUp( * * @return The call builder */ - public PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateRequestBuilder calculate() { - return new PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateRequestBuilder(sdkConfiguration); + public PostV1CompaniesCompanyIdPayrollsRequestBuilder createOffCycle() { + return new PostV1CompaniesCompanyIdPayrollsRequestBuilder(sdkConfiguration); } /** - * Calculate a payroll + * Create an off-cycle payroll * - *

    Performs calculations for taxes, benefits, and deductions for an unprocessed payroll. The calculated - * payroll details provide a preview of the actual values that will be used when the payroll is run. + *

    Creates a new, unprocessed, off-cycle payroll. * - *

    This calculation is asynchronous and a successful request responds with a 202 HTTP status. To view - * the details of the calculated payroll, use the GET /v1/companies/{company_id}/payrolls/{payroll_id} - * endpoint with *include=taxes,benefits,deductions* params. + *

    ## `off_cycle_reason` + * By default: + * - External benefits and deductions will be included when the `off_cycle_reason` is set to + * `Correction`. + * - All benefits and deductions are blocked when the `off_cycle_reason` is set to `Bonus`. * - *

    If the company is blocked from running payroll due to issues like incomplete setup, missing - * information or other compliance issues, the response will be 422 Unprocessable Entity with a - * categorization of the blockers as described in the error responses. + *

    These elections can be overridden with the `skip_regular_deductions` boolean. * *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param companyId The UUID of the company - * @param payrollId The UUID of the payroll * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateResponse calculate(String companyId, String payrollId) { - return calculate(Optional.empty(), companyId, payrollId); + public PostV1CompaniesCompanyIdPayrollsResponse createOffCycle(String companyId) { + return createOffCycle(Optional.empty(), companyId, Optional.empty()); } /** - * Calculate a payroll + * Create an off-cycle payroll * - *

    Performs calculations for taxes, benefits, and deductions for an unprocessed payroll. The calculated - * payroll details provide a preview of the actual values that will be used when the payroll is run. + *

    Creates a new, unprocessed, off-cycle payroll. * - *

    This calculation is asynchronous and a successful request responds with a 202 HTTP status. To view - * the details of the calculated payroll, use the GET /v1/companies/{company_id}/payrolls/{payroll_id} - * endpoint with *include=taxes,benefits,deductions* params. + *

    ## `off_cycle_reason` + * By default: + * - External benefits and deductions will be included when the `off_cycle_reason` is set to + * `Correction`. + * - All benefits and deductions are blocked when the `off_cycle_reason` is set to `Bonus`. * - *

    If the company is blocked from running payroll due to issues like incomplete setup, missing - * information or other compliance issues, the response will be 422 Unprocessable Entity with a - * categorization of the blockers as described in the error responses. + *

    These elections can be overridden with the `skip_regular_deductions` boolean. * *

    scope: `payrolls:run` * @@ -1003,115 +895,117 @@ public PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateResponse calculate(Strin * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyId The UUID of the company - * @param payrollId The UUID of the payroll + * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateResponse calculate( - Optional xGustoAPIVersion, String companyId, - String payrollId) { - PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateRequest request = - PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateRequest + public PostV1CompaniesCompanyIdPayrollsResponse createOffCycle( + Optional xGustoAPIVersion, String companyId, + Optional requestBody) { + PostV1CompaniesCompanyIdPayrollsRequest request = + PostV1CompaniesCompanyIdPayrollsRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) .companyId(companyId) - .payrollId(payrollId) + .requestBody(requestBody) .build(); - RequestOperation operation - = new PutV1CompaniesCompanyIdPayrollsPayrollIdCalculate.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PostV1CompaniesCompanyIdPayrolls.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Submit payroll - * - *

    Submits an unprocessed payroll to be calculated and run. This submission is asynchronous and a - * successful request responds with a 202 HTTP status. Upon success, transitions the payroll to the - * `processed` state. + * Get a single payroll receipt * - *

    You should poll to ensure that payroll is processed successfully, as async errors only occur after - * async processing is complete. + *

    Returns a payroll receipt. * - *

    If the company is blocked from running payroll due to issues like incomplete setup, missing - * information or other compliance issues, the response will be 422 Unprocessable Entity with a - * categorization of the blockers as described in the error responses. + *

    Notes: + * * Hour and dollar amounts are returned as string representations of numeric decimals. + * * Dollar amounts are represented to the cent. + * * If no data has yet be inserted for a given field, it defaults to "0.00" (for fixed amounts). + * * Pagination is optional. Supplying `page` and/or `per` returns only the requested page of employee + * compensations and includes the `X-Page`, `X-Total-Count`, `X-Total-Pages`, and `X-Per-Page` response + * headers. Without either parameter, all employee compensations are returned without pagination + * headers. + * * Maximum page size is 100 employee compensations per request. * - *

    scope: `payrolls:run` + *

    scope: `payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitRequestBuilder submit() { - return new PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitRequestBuilder(sdkConfiguration); + public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder getReceipt() { + return new GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder(sdkConfiguration); } /** - * Submit payroll - * - *

    Submits an unprocessed payroll to be calculated and run. This submission is asynchronous and a - * successful request responds with a 202 HTTP status. Upon success, transitions the payroll to the - * `processed` state. + * Get a single payroll receipt * - *

    You should poll to ensure that payroll is processed successfully, as async errors only occur after - * async processing is complete. + *

    Returns a payroll receipt. * - *

    If the company is blocked from running payroll due to issues like incomplete setup, missing - * information or other compliance issues, the response will be 422 Unprocessable Entity with a - * categorization of the blockers as described in the error responses. + *

    Notes: + * * Hour and dollar amounts are returned as string representations of numeric decimals. + * * Dollar amounts are represented to the cent. + * * If no data has yet be inserted for a given field, it defaults to "0.00" (for fixed amounts). + * * Pagination is optional. Supplying `page` and/or `per` returns only the requested page of employee + * compensations and includes the `X-Page`, `X-Total-Count`, `X-Total-Pages`, and `X-Per-Page` response + * headers. Without either parameter, all employee compensations are returned without pagination + * headers. + * * Maximum page size is 100 employee compensations per request. * - *

    scope: `payrolls:run` + *

    scope: `payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company - * @param payrollId The UUID of the payroll + * @param payrollUuid The UUID of the payroll * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitResponse submit(String companyId, String payrollId) { - return submit(Optional.empty(), companyId, payrollId, + public GetV1PaymentReceiptsPayrollsPayrollUuidResponse getReceipt(String payrollUuid) { + return getReceipt(Optional.empty(), payrollUuid, Optional.empty(), Optional.empty()); } /** - * Submit payroll - * - *

    Submits an unprocessed payroll to be calculated and run. This submission is asynchronous and a - * successful request responds with a 202 HTTP status. Upon success, transitions the payroll to the - * `processed` state. + * Get a single payroll receipt * - *

    You should poll to ensure that payroll is processed successfully, as async errors only occur after - * async processing is complete. + *

    Returns a payroll receipt. * - *

    If the company is blocked from running payroll due to issues like incomplete setup, missing - * information or other compliance issues, the response will be 422 Unprocessable Entity with a - * categorization of the blockers as described in the error responses. + *

    Notes: + * * Hour and dollar amounts are returned as string representations of numeric decimals. + * * Dollar amounts are represented to the cent. + * * If no data has yet be inserted for a given field, it defaults to "0.00" (for fixed amounts). + * * Pagination is optional. Supplying `page` and/or `per` returns only the requested page of employee + * compensations and includes the `X-Page`, `X-Total-Count`, `X-Total-Pages`, and `X-Per-Page` response + * headers. Without either parameter, all employee compensations are returned without pagination + * headers. + * * Maximum page size is 100 employee compensations per request. * - *

    scope: `payrolls:run` + *

    scope: `payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyId The UUID of the company - * @param payrollId The UUID of the payroll - * @param requestBody + * @param payrollUuid The UUID of the payroll + * @param page The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + * @param per Number of objects per page. For majority of endpoints will default to 25 * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitResponse submit( - Optional xGustoAPIVersion, String companyId, - String payrollId, Optional requestBody) { - PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitRequest request = - PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitRequest + public GetV1PaymentReceiptsPayrollsPayrollUuidResponse getReceipt( + Optional xGustoAPIVersion, String payrollUuid, + Optional page, Optional per) { + GetV1PaymentReceiptsPayrollsPayrollUuidRequest request = + GetV1PaymentReceiptsPayrollsPayrollUuidRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .companyId(companyId) - .payrollId(payrollId) - .requestBody(requestBody) + .payrollUuid(payrollUuid) + .page(page) + .per(per) .build(); - RequestOperation operation - = new PutV1CompaniesCompanyIdPayrollsPayrollIdSubmit.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new GetV1PaymentReceiptsPayrollsPayrollUuid.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } @@ -1191,340 +1085,468 @@ public PutApiV1CompaniesCompanyIdPayrollsPayrollIdCancelResponse cancel( } /** - * Get an employee pay stub (pdf) + * Prepare a payroll for update * - *

    Get an employee's pay stub for the specified payroll. By default, an application/pdf response will - * be returned. No other content types are currently supported, but may be supported in the future. + *

    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_date`, `payroll_deadline`, and `payroll_status_meta` dates and times. * - *

    scope: `pay_stubs:read` + *

    Use this endpoint before calling [PUT + * /v1/companies/{company_id}/payrolls/{payroll_id}](ref:put-v1-companies-company_id-payrolls). + * + *

    ### Notes + * + *

    * Nullifies `calculated_at` and `totals` if the payroll was previously calculated + * * Returns the `version` parameter required for [updating the + * payroll](ref:put-v1-companies-company_id-payrolls) + * * `employees:read` scope is required to include employee compensations data in the response. + * * Results are paginated, with a maximum page size of 100 employee compensations. + * + *

    scope: `payrolls:write employees:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubRequestBuilder getPayStub() { - return new GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubRequestBuilder(sdkConfiguration); + public PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBuilder prepare() { + return new PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBuilder(sdkConfiguration); } /** - * Get an employee pay stub (pdf) + * Prepare a payroll for update * - *

    Get an employee's pay stub for the specified payroll. By default, an application/pdf response will - * be returned. No other content types are currently supported, but may be supported in the future. + *

    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_date`, `payroll_deadline`, and `payroll_status_meta` dates and times. * - *

    scope: `pay_stubs:read` + *

    Use this endpoint before calling [PUT + * /v1/companies/{company_id}/payrolls/{payroll_id}](ref:put-v1-companies-company_id-payrolls). + * + *

    ### Notes + * + *

    * Nullifies `calculated_at` and `totals` if the payroll was previously calculated + * * Returns the `version` parameter required for [updating the + * payroll](ref:put-v1-companies-company_id-payrolls) + * * `employees:read` scope is required to include employee compensations data in the response. + * * Results are paginated, with a maximum page size of 100 employee compensations. + * + *

    scope: `payrolls:write employees:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param request The request object containing all the parameters for the API call. + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareResponse prepare(PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequest request) { + RequestOperation operation + = new PutV1CompaniesCompanyIdPayrollsPayrollIdPrepare.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + + /** + * Calculate a payroll + * + *

    Performs calculations for taxes, benefits, and deductions for an unprocessed payroll. The calculated + * payroll details provide a preview of the actual values that will be used when the payroll is run. + * + *

    This calculation is asynchronous and a successful request responds with a 202 HTTP status. To view + * the details of the calculated payroll, use the GET /v1/companies/{company_id}/payrolls/{payroll_id} + * endpoint with *include=taxes,benefits,deductions* params. + * + *

    If the company is blocked from running payroll due to issues like incomplete setup, missing + * information or other compliance issues, the response will be 422 Unprocessable Entity with a + * categorization of the blockers as described in the error responses. + * + *

    scope: `payrolls:run` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateRequestBuilder calculate() { + return new PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateRequestBuilder(sdkConfiguration); + } + + /** + * Calculate a payroll + * + *

    Performs calculations for taxes, benefits, and deductions for an unprocessed payroll. The calculated + * payroll details provide a preview of the actual values that will be used when the payroll is run. + * + *

    This calculation is asynchronous and a successful request responds with a 202 HTTP status. To view + * the details of the calculated payroll, use the GET /v1/companies/{company_id}/payrolls/{payroll_id} + * endpoint with *include=taxes,benefits,deductions* params. + * + *

    If the company is blocked from running payroll due to issues like incomplete setup, missing + * information or other compliance issues, the response will be 422 Unprocessable Entity with a + * categorization of the blockers as described in the error responses. + * + *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * + * @param companyId The UUID of the company * @param payrollId The UUID of the payroll - * @param employeeId The UUID of the employee * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubResponse getPayStub(String payrollId, String employeeId) { - return getPayStub(Optional.empty(), payrollId, employeeId); + public PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateResponse calculate(String companyId, String payrollId) { + return calculate(Optional.empty(), companyId, payrollId); } /** - * Get an employee pay stub (pdf) + * Calculate a payroll * - *

    Get an employee's pay stub for the specified payroll. By default, an application/pdf response will - * be returned. No other content types are currently supported, but may be supported in the future. + *

    Performs calculations for taxes, benefits, and deductions for an unprocessed payroll. The calculated + * payroll details provide a preview of the actual values that will be used when the payroll is run. * - *

    scope: `pay_stubs:read` + *

    This calculation is asynchronous and a successful request responds with a 202 HTTP status. To view + * the details of the calculated payroll, use the GET /v1/companies/{company_id}/payrolls/{payroll_id} + * endpoint with *include=taxes,benefits,deductions* params. + * + *

    If the company is blocked from running payroll due to issues like incomplete setup, missing + * information or other compliance issues, the response will be 422 Unprocessable Entity with a + * categorization of the blockers as described in the error responses. + * + *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company * @param payrollId The UUID of the payroll - * @param employeeId The UUID of the employee * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubResponse getPayStub( - Optional xGustoAPIVersion, String payrollId, - String employeeId) { - GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubRequest request = - GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubRequest + public PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateResponse calculate( + Optional xGustoAPIVersion, String companyId, + String payrollId) { + PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateRequest request = + PutV1CompaniesCompanyIdPayrollsPayrollIdCalculateRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) .payrollId(payrollId) - .employeeId(employeeId) .build(); - RequestOperation operation - = new GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStub.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PutV1CompaniesCompanyIdPayrollsPayrollIdCalculate.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Get an employee's pay stubs - * - *

    Get an employee's pay stubs. + * Get all payroll blockers for a company * - *

    Results are returned in reverse chronological order (newest first). + *

    Returns a list of reasons that prevent the company from running payrolls. See the [Payroll Blockers + * guide](doc:payroll-blockers) for a complete list of reasons. The list is empty if there are no + * payroll blockers. * - *

    scope: `pay_stubs:read` + *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public GetV1EmployeesEmployeeUuidPayStubsRequestBuilder getPayStubs() { - return new GetV1EmployeesEmployeeUuidPayStubsRequestBuilder(sdkConfiguration); + public GetV1CompaniesPayrollBlockersCompanyUuidRequestBuilder getBlockers() { + return new GetV1CompaniesPayrollBlockersCompanyUuidRequestBuilder(sdkConfiguration); } /** - * Get an employee's pay stubs - * - *

    Get an employee's pay stubs. + * Get all payroll blockers for a company * - *

    Results are returned in reverse chronological order (newest first). + *

    Returns a list of reasons that prevent the company from running payrolls. See the [Payroll Blockers + * guide](doc:payroll-blockers) for a complete list of reasons. The list is empty if there are no + * payroll blockers. * - *

    scope: `pay_stubs:read` + *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param employeeId The UUID of the employee + * @param companyUuid The UUID of the company * @return The response from the API call * @throws RuntimeException subclass if the API call fails - */ - public GetV1EmployeesEmployeeUuidPayStubsResponse getPayStubs(String employeeId) { - return getPayStubs(Optional.empty(), employeeId, Optional.empty(), - Optional.empty()); + */ + public GetV1CompaniesPayrollBlockersCompanyUuidResponse getBlockers(String companyUuid) { + return getBlockers(Optional.empty(), companyUuid); } /** - * Get an employee's pay stubs - * - *

    Get an employee's pay stubs. + * Get all payroll blockers for a company * - *

    Results are returned in reverse chronological order (newest first). + *

    Returns a list of reasons that prevent the company from running payrolls. See the [Payroll Blockers + * guide](doc:payroll-blockers) for a complete list of reasons. The list is empty if there are no + * payroll blockers. * - *

    scope: `pay_stubs:read` + *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param employeeId The UUID of the employee - * @param page The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. - * @param per Number of objects per page. For majority of endpoints will default to 25 + * @param companyUuid The UUID of the company * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1EmployeesEmployeeUuidPayStubsResponse getPayStubs( - Optional xGustoAPIVersion, String employeeId, - Optional page, Optional per) { - GetV1EmployeesEmployeeUuidPayStubsRequest request = - GetV1EmployeesEmployeeUuidPayStubsRequest + public GetV1CompaniesPayrollBlockersCompanyUuidResponse getBlockers(Optional xGustoAPIVersion, String companyUuid) { + GetV1CompaniesPayrollBlockersCompanyUuidRequest request = + GetV1CompaniesPayrollBlockersCompanyUuidRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .employeeId(employeeId) - .page(page) - .per(per) + .companyUuid(companyUuid) .build(); - RequestOperation operation - = new GetV1EmployeesEmployeeUuidPayStubs.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new GetV1CompaniesPayrollBlockersCompanyUuid.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Generate printable payroll checks (pdf) + * Skip a payroll * - *

    This endpoint initiates the generation of employee checks for the payroll specified by payroll_uuid. - * A generation status and corresponding request_uuid will be returned. Use the generated document GET - * endpoint with document_type: `printable_payroll_checks` and request_uuid to poll the check - * generation process and retrieve the generated check URL upon completion. + *

    Submits a $0 payroll for employees associated with the pay schedule to skip payroll. This submission + * is asynchronous and a successful request responds with a 202 HTTP status. Upon success, the payroll + * is transitioned to the `processed` state. * - *

    scope: `generated_documents:write` + *

    If the company is blocked from running payroll due to issues like incomplete setup, missing + * information or other compliance issues, the response will be 422 Unprocessable Entity with a + * categorization of the blockers as described in the error responses. + * + *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksRequestBuilder generatePrintableChecks() { - return new PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksRequestBuilder(sdkConfiguration); + public PostCompaniesPayrollSkipCompanyUuidRequestBuilder skip() { + return new PostCompaniesPayrollSkipCompanyUuidRequestBuilder(sdkConfiguration); } /** - * Generate printable payroll checks (pdf) + * Skip a payroll * - *

    This endpoint initiates the generation of employee checks for the payroll specified by payroll_uuid. - * A generation status and corresponding request_uuid will be returned. Use the generated document GET - * endpoint with document_type: `printable_payroll_checks` and request_uuid to poll the check - * generation process and retrieve the generated check URL upon completion. + *

    Submits a $0 payroll for employees associated with the pay schedule to skip payroll. This submission + * is asynchronous and a successful request responds with a 202 HTTP status. Upon success, the payroll + * is transitioned to the `processed` state. * - *

    scope: `generated_documents:write` + *

    If the company is blocked from running payroll due to issues like incomplete setup, missing + * information or other compliance issues, the response will be 422 Unprocessable Entity with a + * categorization of the blockers as described in the error responses. + * + *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param payrollUuid The UUID of the payroll - * @param printablePayrollChecksBody Request body for generating printable payroll checks. + * @param companyUuid The UUID of the company + * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksResponse generatePrintableChecks(String payrollUuid, PrintablePayrollChecksBody printablePayrollChecksBody) { - return generatePrintableChecks(Optional.empty(), payrollUuid, printablePayrollChecksBody); + public PostCompaniesPayrollSkipCompanyUuidResponse skip(String companyUuid, PostCompaniesPayrollSkipCompanyUuidRequestBody requestBody) { + return skip(Optional.empty(), companyUuid, requestBody); } /** - * Generate printable payroll checks (pdf) + * Skip a payroll * - *

    This endpoint initiates the generation of employee checks for the payroll specified by payroll_uuid. - * A generation status and corresponding request_uuid will be returned. Use the generated document GET - * endpoint with document_type: `printable_payroll_checks` and request_uuid to poll the check - * generation process and retrieve the generated check URL upon completion. + *

    Submits a $0 payroll for employees associated with the pay schedule to skip payroll. This submission + * is asynchronous and a successful request responds with a 202 HTTP status. Upon success, the payroll + * is transitioned to the `processed` state. * - *

    scope: `generated_documents:write` + *

    If the company is blocked from running payroll due to issues like incomplete setup, missing + * information or other compliance issues, the response will be 422 Unprocessable Entity with a + * categorization of the blockers as described in the error responses. + * + *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param payrollUuid The UUID of the payroll - * @param printablePayrollChecksBody Request body for generating printable payroll checks. + * @param companyUuid The UUID of the company + * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksResponse generatePrintableChecks( - Optional xGustoAPIVersion, String payrollUuid, - PrintablePayrollChecksBody printablePayrollChecksBody) { - PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksRequest request = - PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecksRequest + public PostCompaniesPayrollSkipCompanyUuidResponse skip( + Optional xGustoAPIVersion, String companyUuid, + PostCompaniesPayrollSkipCompanyUuidRequestBody requestBody) { + PostCompaniesPayrollSkipCompanyUuidRequest request = + PostCompaniesPayrollSkipCompanyUuidRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .payrollUuid(payrollUuid) - .printablePayrollChecksBody(printablePayrollChecksBody) + .companyUuid(companyUuid) + .requestBody(requestBody) .build(); - RequestOperation operation - = new PostV1PayrollsPayrollUuidGeneratedDocumentsPrintablePayrollChecks.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PostCompaniesPayrollSkipCompanyUuid.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Get partner disbursements for a payroll + * Submit payroll * - *

    Get partner disbursements for a specific payroll. + *

    Submits an unprocessed payroll to be calculated and run. This submission is asynchronous and a + * successful request responds with a 202 HTTP status. Upon success, transitions the payroll to the + * `processed` state. * - *

    scope: `partner_disbursements:read` + *

    You should poll to ensure that payroll is processed successfully, as async errors only occur after + * async processing is complete. + * + *

    If the company is blocked from running payroll due to issues like incomplete setup, missing + * information or other compliance issues, the response will be 422 Unprocessable Entity with a + * categorization of the blockers as described in the error responses. + * + *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder getV1CompaniesCompanyIdPayrollsIdPartnerDisbursements() { - return new GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder(sdkConfiguration); + public PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitRequestBuilder submit() { + return new PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitRequestBuilder(sdkConfiguration); } /** - * Get partner disbursements for a payroll + * Submit payroll * - *

    Get partner disbursements for a specific payroll. + *

    Submits an unprocessed payroll to be calculated and run. This submission is asynchronous and a + * successful request responds with a 202 HTTP status. Upon success, transitions the payroll to the + * `processed` state. * - *

    scope: `partner_disbursements:read` + *

    You should poll to ensure that payroll is processed successfully, as async errors only occur after + * async processing is complete. + * + *

    If the company is blocked from running payroll due to issues like incomplete setup, missing + * information or other compliance issues, the response will be 422 Unprocessable Entity with a + * categorization of the blockers as described in the error responses. + * + *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param companyId The UUID of the company - * @param id The UUID of the payroll + * @param payrollId The UUID of the payroll * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsResponse getV1CompaniesCompanyIdPayrollsIdPartnerDisbursements(String companyId, String id) { - return getV1CompaniesCompanyIdPayrollsIdPartnerDisbursements(companyId, id, Optional.empty()); + public PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitResponse submit(String companyId, String payrollId) { + return submit(Optional.empty(), companyId, payrollId, + Optional.empty()); } /** - * Get partner disbursements for a payroll + * Submit payroll * - *

    Get partner disbursements for a specific payroll. + *

    Submits an unprocessed payroll to be calculated and run. This submission is asynchronous and a + * successful request responds with a 202 HTTP status. Upon success, transitions the payroll to the + * `processed` state. * - *

    scope: `partner_disbursements:read` + *

    You should poll to ensure that payroll is processed successfully, as async errors only occur after + * async processing is complete. + * + *

    If the company is blocked from running payroll due to issues like incomplete setup, missing + * information or other compliance issues, the response will be 422 Unprocessable Entity with a + * categorization of the blockers as described in the error responses. + * + *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company - * @param id The UUID of the payroll * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company + * @param payrollId The UUID of the payroll + * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsResponse getV1CompaniesCompanyIdPayrollsIdPartnerDisbursements( - String companyId, String id, - Optional xGustoAPIVersion) { - GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest request = - GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest + public PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitResponse submit( + Optional xGustoAPIVersion, String companyId, + String payrollId, Optional requestBody) { + PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitRequest request = + PutV1CompaniesCompanyIdPayrollsPayrollIdSubmitRequest .builder() - .companyId(companyId) - .id(id) .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) + .payrollId(payrollId) + .requestBody(requestBody) .build(); - RequestOperation operation - = new GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursements.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PutV1CompaniesCompanyIdPayrollsPayrollIdSubmit.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Update partner disbursements for a payroll + * Calculate gross up for a payroll * - *

    Update partner disbursements for a specific payroll. + *

    Calculates gross up earnings for an employee's payroll, given net earnings. This endpoint is only + * applicable to off-cycle unprocessed payrolls. * - *

    scope: `partner_disbursements:write` + *

    The gross up amount must then be mapped to the corresponding fixed compensation earning type to get + * the correct payroll amount. For example, for bonus off-cycles, the gross up amount should be set + * with the Bonus earning type in the payroll `fixed_compensations` field. + * + *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @return The call builder */ - public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder patchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements() { - return new PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder(sdkConfiguration); + public PostPayrollsGrossUpPayrollUuidRequestBuilder calculateGrossUp() { + return new PostPayrollsGrossUpPayrollUuidRequestBuilder(sdkConfiguration); } /** - * Update partner disbursements for a payroll + * Calculate gross up for a payroll * - *

    Update partner disbursements for a specific payroll. + *

    Calculates gross up earnings for an employee's payroll, given net earnings. This endpoint is only + * applicable to off-cycle unprocessed payrolls. * - *

    scope: `partner_disbursements:write` + *

    The gross up amount must then be mapped to the corresponding fixed compensation earning type to get + * the correct payroll amount. For example, for bonus off-cycles, the gross up amount should be set + * with the Bonus earning type in the payroll `fixed_compensations` field. + * + *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company - * @param id The UUID of the payroll + * @param payrollUuid The UUID of the payroll + * @param payrollGrossUpRequest Request body for calculating gross up amount * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsResponse patchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements(String companyId, String id) { - return patchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements(companyId, id, Optional.empty(), - Optional.empty()); + public PostPayrollsGrossUpPayrollUuidResponse calculateGrossUp(String payrollUuid, PayrollGrossUpRequest payrollGrossUpRequest) { + return calculateGrossUp(Optional.empty(), payrollUuid, payrollGrossUpRequest); } /** - * Update partner disbursements for a payroll + * Calculate gross up for a payroll * - *

    Update partner disbursements for a specific payroll. + *

    Calculates gross up earnings for an employee's payroll, given net earnings. This endpoint is only + * applicable to off-cycle unprocessed payrolls. * - *

    scope: `partner_disbursements:write` + *

    The gross up amount must then be mapped to the corresponding fixed compensation earning type to get + * the correct payroll amount. For example, for bonus off-cycles, the gross up amount should be set + * with the Bonus earning type in the payroll `fixed_compensations` field. + * + *

    scope: `payrolls:run` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company - * @param id The UUID of the payroll * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param requestBody + * @param payrollUuid The UUID of the payroll + * @param payrollGrossUpRequest Request body for calculating gross up amount * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsResponse patchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements( - String companyId, String id, - Optional xGustoAPIVersion, Optional requestBody) { - PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest request = - PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest + public PostPayrollsGrossUpPayrollUuidResponse calculateGrossUp( + Optional xGustoAPIVersion, String payrollUuid, + PayrollGrossUpRequest payrollGrossUpRequest) { + PostPayrollsGrossUpPayrollUuidRequest request = + PostPayrollsGrossUpPayrollUuidRequest .builder() - .companyId(companyId) - .id(id) .xGustoAPIVersion(xGustoAPIVersion) - .requestBody(requestBody) + .payrollUuid(payrollUuid) + .payrollGrossUpRequest(payrollGrossUpRequest) .build(); - RequestOperation operation - = new PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PostPayrollsGrossUpPayrollUuid.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/PeopleBatches.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/PeopleBatches.java index 16cea78f0..f5f88585a 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/PeopleBatches.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/PeopleBatches.java @@ -74,7 +74,7 @@ public PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder postV1CompaniesCompan * @throws RuntimeException subclass if the API call fails */ public PostV1CompaniesCompanyIdPeopleBatchesResponse postV1CompaniesCompanyIdPeopleBatches(String companyId, PostV1CompaniesCompanyIdPeopleBatchesRequestBody requestBody) { - return postV1CompaniesCompanyIdPeopleBatches(companyId, Optional.empty(), requestBody); + return postV1CompaniesCompanyIdPeopleBatches(Optional.empty(), companyId, requestBody); } /** @@ -88,20 +88,20 @@ public PostV1CompaniesCompanyIdPeopleBatchesResponse postV1CompaniesCompanyIdPeo * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PostV1CompaniesCompanyIdPeopleBatchesResponse postV1CompaniesCompanyIdPeopleBatches( - String companyId, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String companyId, PostV1CompaniesCompanyIdPeopleBatchesRequestBody requestBody) { PostV1CompaniesCompanyIdPeopleBatchesRequest request = PostV1CompaniesCompanyIdPeopleBatchesRequest .builder() - .companyId(companyId) .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) .requestBody(requestBody) .build(); RequestOperation operation @@ -142,7 +142,7 @@ public GetV1PeopleBatchesPeopleBatchUuidRequestBuilder getV1PeopleBatchesPeopleB * @throws RuntimeException subclass if the API call fails */ public GetV1PeopleBatchesPeopleBatchUuidResponse getV1PeopleBatchesPeopleBatchUuid(String peopleBatchUuid) { - return getV1PeopleBatchesPeopleBatchUuid(peopleBatchUuid, Optional.empty()); + return getV1PeopleBatchesPeopleBatchUuid(Optional.empty(), peopleBatchUuid); } /** @@ -156,17 +156,17 @@ public GetV1PeopleBatchesPeopleBatchUuidResponse getV1PeopleBatchesPeopleBatchUu * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param peopleBatchUuid The UUID of the people batch * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param peopleBatchUuid The UUID of the people batch * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1PeopleBatchesPeopleBatchUuidResponse getV1PeopleBatchesPeopleBatchUuid(String peopleBatchUuid, Optional xGustoAPIVersion) { + public GetV1PeopleBatchesPeopleBatchUuidResponse getV1PeopleBatchesPeopleBatchUuid(Optional xGustoAPIVersion, String peopleBatchUuid) { GetV1PeopleBatchesPeopleBatchUuidRequest request = GetV1PeopleBatchesPeopleBatchUuidRequest .builder() - .peopleBatchUuid(peopleBatchUuid) .xGustoAPIVersion(xGustoAPIVersion) + .peopleBatchUuid(peopleBatchUuid) .build(); RequestOperation operation = new GetV1PeopleBatchesPeopleBatchUuid.Sync(sdkConfiguration, _headers); diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/Reports.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/Reports.java index 100b1dc17..03286ad68 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/Reports.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/Reports.java @@ -5,6 +5,7 @@ import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.RequestOperation; +import com.gusto.embedded_api_v_2025_11_15.models.components.BulkReportBody; import com.gusto.embedded_api_v_2025_11_15.models.components.CreateReportBody; import com.gusto.embedded_api_v_2025_11_15.models.components.GeneralLedgerReportBody; import com.gusto.embedded_api_v_2025_11_15.models.operations.GetCompaniesCompanyUuidReportTemplatesReportTypeHeaderXGustoAPIVersion; @@ -15,6 +16,11 @@ import com.gusto.embedded_api_v_2025_11_15.models.operations.GetReportsRequestUuidRequest; import com.gusto.embedded_api_v_2025_11_15.models.operations.GetReportsRequestUuidRequestBuilder; import com.gusto.embedded_api_v_2025_11_15.models.operations.GetReportsRequestUuidResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1BulkReportsRequestUuidRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1BulkReportsRequestUuidRequestBuilder; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1BulkReportsRequestUuidResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1BulkReportsRequestUuidSecurity; import com.gusto.embedded_api_v_2025_11_15.models.operations.PostCompaniesCompanyUuidReportsHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2025_11_15.models.operations.PostCompaniesCompanyUuidReportsRequest; import com.gusto.embedded_api_v_2025_11_15.models.operations.PostCompaniesCompanyUuidReportsRequestBuilder; @@ -23,6 +29,11 @@ import com.gusto.embedded_api_v_2025_11_15.models.operations.PostPayrollsPayrollUuidReportsGeneralLedgerRequest; import com.gusto.embedded_api_v_2025_11_15.models.operations.PostPayrollsPayrollUuidReportsGeneralLedgerRequestBuilder; import com.gusto.embedded_api_v_2025_11_15.models.operations.PostPayrollsPayrollUuidReportsGeneralLedgerResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1BulkReportsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1BulkReportsRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1BulkReportsRequestBuilder; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1BulkReportsResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1BulkReportsSecurity; import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequest; import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequestBody; @@ -30,8 +41,10 @@ import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageResponse; import com.gusto.embedded_api_v_2025_11_15.operations.GetCompaniesCompanyUuidReportTemplatesReportType; import com.gusto.embedded_api_v_2025_11_15.operations.GetReportsRequestUuid; +import com.gusto.embedded_api_v_2025_11_15.operations.GetV1BulkReportsRequestUuid; import com.gusto.embedded_api_v_2025_11_15.operations.PostCompaniesCompanyUuidReports; import com.gusto.embedded_api_v_2025_11_15.operations.PostPayrollsPayrollUuidReportsGeneralLedger; +import com.gusto.embedded_api_v_2025_11_15.operations.PostV1BulkReports; import com.gusto.embedded_api_v_2025_11_15.operations.PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage; import com.gusto.embedded_api_v_2025_11_15.utils.Headers; import java.lang.String; @@ -57,6 +70,280 @@ public AsyncReports async() { return asyncSDK; } + /** + * Create a bulk report batch + * + *

    Triggers asynchronous generation of up to 25 reports across companies the partner is mapped to. Each + * `batch` item is a `custom_report` (same parameters as [create a custom + * report](https://docs.gusto.com/embedded-payroll/reference/post-companies-company_uuid-reports)) or a + * `general_ledger` report (same parameters as [create a general ledger + * report](https://docs.gusto.com/embedded-payroll/reference/post-payrolls-payroll_uuid-reports-general_ledger)), + * keyed by `company_uuid` and `report_type`. Items are validated synchronously; if any is invalid, the + * entire batch is rejected. + * + *

    Poll the [bulk report GET + * endpoint](https://docs.gusto.com/embedded-payroll/reference/get-v1-bulk_reports-request_uuid) with + * the returned `uuid` for status and the report URL, which is valid for 10 minutes. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `company_reports:write` + * + * @return The call builder + */ + public PostV1BulkReportsRequestBuilder postV1BulkReports() { + return new PostV1BulkReportsRequestBuilder(sdkConfiguration); + } + + /** + * Create a bulk report batch + * + *

    Triggers asynchronous generation of up to 25 reports across companies the partner is mapped to. Each + * `batch` item is a `custom_report` (same parameters as [create a custom + * report](https://docs.gusto.com/embedded-payroll/reference/post-companies-company_uuid-reports)) or a + * `general_ledger` report (same parameters as [create a general ledger + * report](https://docs.gusto.com/embedded-payroll/reference/post-payrolls-payroll_uuid-reports-general_ledger)), + * keyed by `company_uuid` and `report_type`. Items are validated synchronously; if any is invalid, the + * entire batch is rejected. + * + *

    Poll the [bulk report GET + * endpoint](https://docs.gusto.com/embedded-payroll/reference/get-v1-bulk_reports-request_uuid) with + * the returned `uuid` for status and the report URL, which is valid for 10 minutes. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `company_reports:write` + * + * @param security The security details to use for authentication. + * @param bulkReportBody Each `batch` item is a `custom_report` or a `general_ledger` report. + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public PostV1BulkReportsResponse postV1BulkReports(PostV1BulkReportsSecurity security, BulkReportBody bulkReportBody) { + return postV1BulkReports(security, Optional.empty(), bulkReportBody); + } + + /** + * Create a bulk report batch + * + *

    Triggers asynchronous generation of up to 25 reports across companies the partner is mapped to. Each + * `batch` item is a `custom_report` (same parameters as [create a custom + * report](https://docs.gusto.com/embedded-payroll/reference/post-companies-company_uuid-reports)) or a + * `general_ledger` report (same parameters as [create a general ledger + * report](https://docs.gusto.com/embedded-payroll/reference/post-payrolls-payroll_uuid-reports-general_ledger)), + * keyed by `company_uuid` and `report_type`. Items are validated synchronously; if any is invalid, the + * entire batch is rejected. + * + *

    Poll the [bulk report GET + * endpoint](https://docs.gusto.com/embedded-payroll/reference/get-v1-bulk_reports-request_uuid) with + * the returned `uuid` for status and the report URL, which is valid for 10 minutes. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `company_reports:write` + * + * @param security The security details to use for authentication. + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param bulkReportBody Each `batch` item is a `custom_report` or a `general_ledger` report. + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public PostV1BulkReportsResponse postV1BulkReports( + PostV1BulkReportsSecurity security, Optional xGustoAPIVersion, + BulkReportBody bulkReportBody) { + PostV1BulkReportsRequest request = + PostV1BulkReportsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .bulkReportBody(bulkReportBody) + .build(); + RequestOperation operation + = new PostV1BulkReports.Sync(sdkConfiguration, security, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + + /** + * Get a bulk report batch + * + *

    Get a bulk report batch's status and results given the `request_uuid`. While in progress, only batch + * metadata is returned; once complete, it also includes a signed `report_url` (a zip of all generated + * reports, valid for 10 minutes) and a per-company breakdown. + * + *

    Reports containing PHI are inaccessible with `company_reports:read:tier_2_only` data scope. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `company_reports:read` + * + * @return The call builder + */ + public GetV1BulkReportsRequestUuidRequestBuilder getV1BulkReportsRequestUuid() { + return new GetV1BulkReportsRequestUuidRequestBuilder(sdkConfiguration); + } + + /** + * Get a bulk report batch + * + *

    Get a bulk report batch's status and results given the `request_uuid`. While in progress, only batch + * metadata is returned; once complete, it also includes a signed `report_url` (a zip of all generated + * reports, valid for 10 minutes) and a per-company breakdown. + * + *

    Reports containing PHI are inaccessible with `company_reports:read:tier_2_only` data scope. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `company_reports:read` + * + * @param security The security details to use for authentication. + * @param requestUuid The UUID of the bulk report batch. + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1BulkReportsRequestUuidResponse getV1BulkReportsRequestUuid(GetV1BulkReportsRequestUuidSecurity security, String requestUuid) { + return getV1BulkReportsRequestUuid(security, Optional.empty(), requestUuid); + } + + /** + * Get a bulk report batch + * + *

    Get a bulk report batch's status and results given the `request_uuid`. While in progress, only batch + * metadata is returned; once complete, it also includes a signed `report_url` (a zip of all generated + * reports, valid for 10 minutes) and a per-company breakdown. + * + *

    Reports containing PHI are inaccessible with `company_reports:read:tier_2_only` data scope. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `company_reports:read` + * + * @param security The security details to use for authentication. + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param requestUuid The UUID of the bulk report batch. + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1BulkReportsRequestUuidResponse getV1BulkReportsRequestUuid( + GetV1BulkReportsRequestUuidSecurity security, Optional xGustoAPIVersion, + String requestUuid) { + GetV1BulkReportsRequestUuidRequest request = + GetV1BulkReportsRequestUuidRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .requestUuid(requestUuid) + .build(); + RequestOperation operation + = new GetV1BulkReportsRequestUuid.Sync(sdkConfiguration, security, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + + /** + * Create an employees annual FICA wage report + * + *

    Generates a report containing annual FICA (Federal Insurance Contributions Act) wage data for all + * employees in a company over a specified year range. + * + *

    This report provides detailed wage information subject to Social Security and Medicare taxes, useful + * for benefits integrations that need to verify employee earnings for compliance and benefit + * calculations. + * + *

    The report is generated asynchronously. After making this request, you will receive a `request_uuid` + * which can be used to poll the [Get a report](ref:get-v1-reports-request_uuid) endpoint to check the + * status and retrieve the report when complete. + * + *

    scope: `company_reports:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequestBuilder postV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage() { + return new PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequestBuilder(sdkConfiguration); + } + + /** + * Create an employees annual FICA wage report + * + *

    Generates a report containing annual FICA (Federal Insurance Contributions Act) wage data for all + * employees in a company over a specified year range. + * + *

    This report provides detailed wage information subject to Social Security and Medicare taxes, useful + * for benefits integrations that need to verify employee earnings for compliance and benefit + * calculations. + * + *

    The report is generated asynchronously. After making this request, you will receive a `request_uuid` + * which can be used to poll the [Get a report](ref:get-v1-reports-request_uuid) endpoint to check the + * status and retrieve the report when complete. + * + *

    scope: `company_reports:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param companyId The UUID of the company + * @param requestBody + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageResponse postV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage(String companyId, PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequestBody requestBody) { + return postV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage(Optional.empty(), companyId, requestBody); + } + + /** + * Create an employees annual FICA wage report + * + *

    Generates a report containing annual FICA (Federal Insurance Contributions Act) wage data for all + * employees in a company over a specified year range. + * + *

    This report provides detailed wage information subject to Social Security and Medicare taxes, useful + * for benefits integrations that need to verify employee earnings for compliance and benefit + * calculations. + * + *

    The report is generated asynchronously. After making this request, you will receive a `request_uuid` + * which can be used to poll the [Get a report](ref:get-v1-reports-request_uuid) endpoint to check the + * status and retrieve the report when complete. + * + *

    scope: `company_reports:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company + * @param requestBody + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageResponse postV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage( + Optional xGustoAPIVersion, String companyId, + PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequestBody requestBody) { + PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequest request = + PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) + .requestBody(requestBody) + .build(); + RequestOperation operation + = new PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + /** * Create a custom report * @@ -349,94 +636,4 @@ public GetCompaniesCompanyUuidReportTemplatesReportTypeResponse getTemplate( return operation.handleResponse(operation.doRequest(request)); } - /** - * Create an employees annual FICA wage report - * - *

    Generates a report containing annual FICA (Federal Insurance Contributions Act) wage data for all - * employees in a company over a specified year range. - * - *

    This report provides detailed wage information subject to Social Security and Medicare taxes, useful - * for benefits integrations that need to verify employee earnings for compliance and benefit - * calculations. - * - *

    The report is generated asynchronously. After making this request, you will receive a `request_uuid` - * which can be used to poll the [Get a report](ref:get-v1-reports-request_uuid) endpoint to check the - * status and retrieve the report when complete. - * - *

    scope: `company_reports:write` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The call builder - */ - public PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequestBuilder postV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage() { - return new PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequestBuilder(sdkConfiguration); - } - - /** - * Create an employees annual FICA wage report - * - *

    Generates a report containing annual FICA (Federal Insurance Contributions Act) wage data for all - * employees in a company over a specified year range. - * - *

    This report provides detailed wage information subject to Social Security and Medicare taxes, useful - * for benefits integrations that need to verify employee earnings for compliance and benefit - * calculations. - * - *

    The report is generated asynchronously. After making this request, you will receive a `request_uuid` - * which can be used to poll the [Get a report](ref:get-v1-reports-request_uuid) endpoint to check the - * status and retrieve the report when complete. - * - *

    scope: `company_reports:write` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param companyId The UUID of the company - * @param requestBody - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageResponse postV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage(String companyId, PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequestBody requestBody) { - return postV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage(Optional.empty(), companyId, requestBody); - } - - /** - * Create an employees annual FICA wage report - * - *

    Generates a report containing annual FICA (Federal Insurance Contributions Act) wage data for all - * employees in a company over a specified year range. - * - *

    This report provides detailed wage information subject to Social Security and Medicare taxes, useful - * for benefits integrations that need to verify employee earnings for compliance and benefit - * calculations. - * - *

    The report is generated asynchronously. After making this request, you will receive a `request_uuid` - * which can be used to poll the [Get a report](ref:get-v1-reports-request_uuid) endpoint to check the - * status and retrieve the report when complete. - * - *

    scope: `company_reports:write` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyId The UUID of the company - * @param requestBody - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageResponse postV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage( - Optional xGustoAPIVersion, String companyId, - PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequestBody requestBody) { - PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequest request = - PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequest - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .companyId(companyId) - .requestBody(requestBody) - .build(); - RequestOperation operation - = new PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage.Sync(sdkConfiguration, _headers); - return operation.handleResponse(operation.doRequest(request)); - } - } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/ReverseWireTransactions.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/ReverseWireTransactions.java new file mode 100644 index 000000000..ca4965ebd --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/ReverseWireTransactions.java @@ -0,0 +1,74 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15; + +import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.RequestOperation; + +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetReverseWireTransactionsRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetReverseWireTransactionsRequestBuilder; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetReverseWireTransactionsResponse; +import com.gusto.embedded_api_v_2025_11_15.operations.GetReverseWireTransactions; +import com.gusto.embedded_api_v_2025_11_15.utils.Headers; + + +public class ReverseWireTransactions { + private static final Headers _headers = Headers.EMPTY; + private final SDKConfiguration sdkConfiguration; + private final AsyncReverseWireTransactions asyncSDK; + + ReverseWireTransactions(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + this.asyncSDK = new AsyncReverseWireTransactions(this, sdkConfiguration); + } + + /** + * Switches to the async SDK. + * + * @return The async SDK + */ + public AsyncReverseWireTransactions async() { + return asyncSDK; + } + + /** + * Get all reverse wire transactions for a company + * + *

    Returns a paginated list of reverse wire (drawdown) transactions for a company. Reverse wires are + * debit transactions initiated by Gusto to pull funds from a partner's bank account to cover payroll + * or contractor payment obligations. Pagination is returned via the `x-page`, `x-per-page`, + * `x-total-count`, and `x-total-pages` response headers. + * + *

    scope: `reverse_wire_transactions:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public GetReverseWireTransactionsRequestBuilder getReverseWireTransactions() { + return new GetReverseWireTransactionsRequestBuilder(sdkConfiguration); + } + + /** + * Get all reverse wire transactions for a company + * + *

    Returns a paginated list of reverse wire (drawdown) transactions for a company. Reverse wires are + * debit transactions initiated by Gusto to pull funds from a partner's bank account to cover payroll + * or contractor payment obligations. Pagination is returned via the `x-page`, `x-per-page`, + * `x-total-count`, and `x-total-pages` response headers. + * + *

    scope: `reverse_wire_transactions:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param request The request object containing all the parameters for the API call. + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetReverseWireTransactionsResponse getReverseWireTransactions(GetReverseWireTransactionsRequest request) { + RequestOperation operation + = new GetReverseWireTransactions.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/SDKConfiguration.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/SDKConfiguration.java index 1f5002dc1..159da15d7 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/SDKConfiguration.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/SDKConfiguration.java @@ -19,8 +19,8 @@ public class SDKConfiguration { private static final String LANGUAGE = "java"; public static final String OPENAPI_DOC_VERSION = "2025-11-15"; - public static final String SDK_VERSION = "0.0.2"; - public static final String GEN_VERSION = "2.889.1"; + public static final String SDK_VERSION = "0.1.0"; + public static final String GEN_VERSION = "2.935.1"; private static final String BASE_PACKAGE = "com.gusto.embedded_api_v_2025_11_15"; public static final String USER_AGENT = String.format("speakeasy-sdk/%s %s %s %s %s", diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/Signatories.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/Signatories.java index 35722047f..614ff8fe3 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/Signatories.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/Signatories.java @@ -92,7 +92,7 @@ public GetV1CompaniesCompanyUuidSignatoriesRequestBuilder list() { * @throws RuntimeException subclass if the API call fails */ public GetV1CompaniesCompanyUuidSignatoriesResponse list(String companyUuid) { - return list(companyUuid, Optional.empty()); + return list(Optional.empty(), companyUuid); } /** @@ -107,17 +107,17 @@ public GetV1CompaniesCompanyUuidSignatoriesResponse list(String companyUuid) { * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1CompaniesCompanyUuidSignatoriesResponse list(String companyUuid, Optional xGustoAPIVersion) { + public GetV1CompaniesCompanyUuidSignatoriesResponse list(Optional xGustoAPIVersion, String companyUuid) { GetV1CompaniesCompanyUuidSignatoriesRequest request = GetV1CompaniesCompanyUuidSignatoriesRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) .build(); RequestOperation operation = new GetV1CompaniesCompanyUuidSignatories.Sync(sdkConfiguration, _headers); @@ -182,7 +182,7 @@ public PostV1CompanySignatoriesRequestBuilder create() { * @throws RuntimeException subclass if the API call fails */ public PostV1CompanySignatoriesResponse create(String companyUuid, SignatoryCreateRequest signatoryCreateRequest) { - return create(companyUuid, Optional.empty(), signatoryCreateRequest); + return create(Optional.empty(), companyUuid, signatoryCreateRequest); } /** @@ -208,20 +208,20 @@ public PostV1CompanySignatoriesResponse create(String companyUuid, SignatoryCrea * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company * @param signatoryCreateRequest Request body for creating a signatory with complete information. All listed required fields must be provided. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PostV1CompanySignatoriesResponse create( - String companyUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String companyUuid, SignatoryCreateRequest signatoryCreateRequest) { PostV1CompanySignatoriesRequest request = PostV1CompanySignatoriesRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) .signatoryCreateRequest(signatoryCreateRequest) .build(); RequestOperation operation @@ -271,7 +271,7 @@ public PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder invite() { * @throws RuntimeException subclass if the API call fails */ public PostV1CompaniesCompanyUuidSignatoriesInviteResponse invite(String companyUuid, SignatoryInviteRequest signatoryInviteRequest) { - return invite(companyUuid, Optional.empty(), signatoryInviteRequest); + return invite(Optional.empty(), companyUuid, signatoryInviteRequest); } /** @@ -289,20 +289,20 @@ public PostV1CompaniesCompanyUuidSignatoriesInviteResponse invite(String company * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company * @param signatoryInviteRequest Request body for inviting a signatory. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PostV1CompaniesCompanyUuidSignatoriesInviteResponse invite( - String companyUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String companyUuid, SignatoryInviteRequest signatoryInviteRequest) { PostV1CompaniesCompanyUuidSignatoriesInviteRequest request = PostV1CompaniesCompanyUuidSignatoriesInviteRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) .signatoryInviteRequest(signatoryInviteRequest) .build(); RequestOperation operation @@ -357,7 +357,7 @@ public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder update() public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidResponse update( String companyUuid, String signatoryUuid, SignatoryUpdateRequest signatoryUpdateRequest) { - return update(companyUuid, signatoryUuid, Optional.empty(), + return update(Optional.empty(), companyUuid, signatoryUuid, signatoryUpdateRequest); } @@ -377,22 +377,22 @@ public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidResponse update( * *

    If set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyUuid The UUID of the company * @param signatoryUuid The UUID of the signatory - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param signatoryUpdateRequest Request body for updating a signatory. Email cannot be updated. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidResponse update( - String companyUuid, String signatoryUuid, - Optional xGustoAPIVersion, SignatoryUpdateRequest signatoryUpdateRequest) { + Optional xGustoAPIVersion, String companyUuid, + String signatoryUuid, SignatoryUpdateRequest signatoryUpdateRequest) { PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest request = PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest .builder() + .xGustoAPIVersion(xGustoAPIVersion) .companyUuid(companyUuid) .signatoryUuid(signatoryUuid) - .xGustoAPIVersion(xGustoAPIVersion) .signatoryUpdateRequest(signatoryUpdateRequest) .build(); RequestOperation operation @@ -436,7 +436,7 @@ public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder delete * @throws RuntimeException subclass if the API call fails */ public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidResponse delete(String companyUuid, String signatoryUuid) { - return delete(companyUuid, signatoryUuid, Optional.empty()); + return delete(Optional.empty(), companyUuid, signatoryUuid); } /** @@ -451,21 +451,21 @@ public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidResponse delete(Strin * *

    If set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyUuid The UUID of the company * @param signatoryUuid The UUID of the signatory - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidResponse delete( - String companyUuid, String signatoryUuid, - Optional xGustoAPIVersion) { + Optional xGustoAPIVersion, String companyUuid, + String signatoryUuid) { DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest request = DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest .builder() + .xGustoAPIVersion(xGustoAPIVersion) .companyUuid(companyUuid) .signatoryUuid(signatoryUuid) - .xGustoAPIVersion(xGustoAPIVersion) .build(); RequestOperation operation = new DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuid.Sync(sdkConfiguration, _headers); diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/TaxPayments.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/TaxPayments.java new file mode 100644 index 000000000..59cc96ad5 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/TaxPayments.java @@ -0,0 +1,141 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15; + +import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.RequestOperation; + +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetTaxPaymentHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetTaxPaymentRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetTaxPaymentRequestBuilder; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetTaxPaymentResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetTaxPaymentsRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetTaxPaymentsRequestBuilder; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetTaxPaymentsResponse; +import com.gusto.embedded_api_v_2025_11_15.operations.GetTaxPayment; +import com.gusto.embedded_api_v_2025_11_15.operations.GetTaxPayments; +import com.gusto.embedded_api_v_2025_11_15.utils.Headers; +import java.lang.String; +import java.util.Optional; + + +public class TaxPayments { + private static final Headers _headers = Headers.EMPTY; + private final SDKConfiguration sdkConfiguration; + private final AsyncTaxPayments asyncSDK; + + TaxPayments(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + this.asyncSDK = new AsyncTaxPayments(this, sdkConfiguration); + } + + /** + * Switches to the async SDK. + * + * @return The async SDK + */ + public AsyncTaxPayments async() { + return asyncSDK; + } + + /** + * Get all tax payments for a company + * + *

    Fetches all tax payments Gusto has made (or scheduled) to tax agencies on behalf of a company. + * + *

    scope: `tax_payments:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public GetTaxPaymentsRequestBuilder getTaxPayments() { + return new GetTaxPaymentsRequestBuilder(sdkConfiguration); + } + + /** + * Get all tax payments for a company + * + *

    Fetches all tax payments Gusto has made (or scheduled) to tax agencies on behalf of a company. + * + *

    scope: `tax_payments:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param request The request object containing all the parameters for the API call. + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetTaxPaymentsResponse getTaxPayments(GetTaxPaymentsRequest request) { + RequestOperation operation + = new GetTaxPayments.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + + /** + * Get a tax payment for a company + * + *

    Fetches a single tax payment by UUID, including the payroll tax liabilities that make up the + * payment. + * + *

    scope: `tax_payments:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public GetTaxPaymentRequestBuilder getTaxPayment() { + return new GetTaxPaymentRequestBuilder(sdkConfiguration); + } + + /** + * Get a tax payment for a company + * + *

    Fetches a single tax payment by UUID, including the payroll tax liabilities that make up the + * payment. + * + *

    scope: `tax_payments:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param companyUuid The UUID of the company + * @param uuid The UUID of the tax payment + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetTaxPaymentResponse getTaxPayment(String companyUuid, String uuid) { + return getTaxPayment(Optional.empty(), companyUuid, uuid); + } + + /** + * Get a tax payment for a company + * + *

    Fetches a single tax payment by UUID, including the payroll tax liabilities that make up the + * payment. + * + *

    scope: `tax_payments:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company + * @param uuid The UUID of the tax payment + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetTaxPaymentResponse getTaxPayment( + Optional xGustoAPIVersion, String companyUuid, + String uuid) { + GetTaxPaymentRequest request = + GetTaxPaymentRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) + .uuid(uuid) + .build(); + RequestOperation operation + = new GetTaxPayment.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/TaxRequirements.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/TaxRequirements.java index 87e128702..40f47fcf0 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/TaxRequirements.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/TaxRequirements.java @@ -46,6 +46,73 @@ public AsyncTaxRequirements async() { return asyncSDK; } + /** + * Get all tax requirements for a company + * + *

    Retrieves all states for which a company has tax requirements, along with a boolean indicating + * whether tax setup + * is complete for each state. Use this to determine which states still need tax setup during company + * onboarding. + * + *

    scope: `company_tax_requirements:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder getAll() { + return new GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder(sdkConfiguration); + } + + /** + * Get all tax requirements for a company + * + *

    Retrieves all states for which a company has tax requirements, along with a boolean indicating + * whether tax setup + * is complete for each state. Use this to determine which states still need tax setup during company + * onboarding. + * + *

    scope: `company_tax_requirements:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param companyUuid The UUID of the company + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1CompaniesCompanyUuidTaxRequirementsResponse getAll(String companyUuid) { + return getAll(Optional.empty(), companyUuid); + } + + /** + * Get all tax requirements for a company + * + *

    Retrieves all states for which a company has tax requirements, along with a boolean indicating + * whether tax setup + * is complete for each state. Use this to determine which states still need tax setup during company + * onboarding. + * + *

    scope: `company_tax_requirements:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1CompaniesCompanyUuidTaxRequirementsResponse getAll(Optional xGustoAPIVersion, String companyUuid) { + GetV1CompaniesCompanyUuidTaxRequirementsRequest request = + GetV1CompaniesCompanyUuidTaxRequirementsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) + .build(); + RequestOperation operation + = new GetV1CompaniesCompanyUuidTaxRequirements.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + /** * Get tax requirements for a state * @@ -88,7 +155,7 @@ public GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder get() { * @throws RuntimeException subclass if the API call fails */ public GetV1CompaniesCompanyUuidTaxRequirementsStateResponse get(String companyUuid, String state) { - return get(companyUuid, state, Optional.empty(), + return get(Optional.empty(), companyUuid, state, Optional.empty()); } @@ -107,22 +174,22 @@ public GetV1CompaniesCompanyUuidTaxRequirementsStateResponse get(String companyU * *

    If set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyUuid The UUID of the company * @param state The two-letter state abbreviation - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param scheduling When true, return "new" requirement sets with valid `effective_from` dates that are available to save new effective-dated values. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public GetV1CompaniesCompanyUuidTaxRequirementsStateResponse get( - String companyUuid, String state, - Optional xGustoAPIVersion, Optional scheduling) { + Optional xGustoAPIVersion, String companyUuid, + String state, Optional scheduling) { GetV1CompaniesCompanyUuidTaxRequirementsStateRequest request = GetV1CompaniesCompanyUuidTaxRequirementsStateRequest .builder() + .xGustoAPIVersion(xGustoAPIVersion) .companyUuid(companyUuid) .state(state) - .xGustoAPIVersion(xGustoAPIVersion) .scheduling(scheduling) .build(); RequestOperation operation @@ -183,7 +250,7 @@ public PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder updateState() public PutV1CompaniesCompanyUuidTaxRequirementsStateResponse updateState( String companyUuid, String state, PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody requestBody) { - return updateState(companyUuid, state, Optional.empty(), + return updateState(Optional.empty(), companyUuid, state, requestBody); } @@ -206,22 +273,22 @@ public PutV1CompaniesCompanyUuidTaxRequirementsStateResponse updateState( * *

    If set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyUuid The UUID of the company * @param state The two-letter state abbreviation - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PutV1CompaniesCompanyUuidTaxRequirementsStateResponse updateState( - String companyUuid, String state, - Optional xGustoAPIVersion, PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody requestBody) { + Optional xGustoAPIVersion, String companyUuid, + String state, PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody requestBody) { PutV1CompaniesCompanyUuidTaxRequirementsStateRequest request = PutV1CompaniesCompanyUuidTaxRequirementsStateRequest .builder() + .xGustoAPIVersion(xGustoAPIVersion) .companyUuid(companyUuid) .state(state) - .xGustoAPIVersion(xGustoAPIVersion) .requestBody(requestBody) .build(); RequestOperation operation @@ -229,71 +296,4 @@ public PutV1CompaniesCompanyUuidTaxRequirementsStateResponse updateState( return operation.handleResponse(operation.doRequest(request)); } - /** - * Get all tax requirements for a company - * - *

    Retrieves all states for which a company has tax requirements, along with a boolean indicating - * whether tax setup - * is complete for each state. Use this to determine which states still need tax setup during company - * onboarding. - * - *

    scope: `company_tax_requirements:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The call builder - */ - public GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder getAll() { - return new GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder(sdkConfiguration); - } - - /** - * Get all tax requirements for a company - * - *

    Retrieves all states for which a company has tax requirements, along with a boolean indicating - * whether tax setup - * is complete for each state. Use this to determine which states still need tax setup during company - * onboarding. - * - *

    scope: `company_tax_requirements:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param companyUuid The UUID of the company - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public GetV1CompaniesCompanyUuidTaxRequirementsResponse getAll(String companyUuid) { - return getAll(companyUuid, Optional.empty()); - } - - /** - * Get all tax requirements for a company - * - *

    Retrieves all states for which a company has tax requirements, along with a boolean indicating - * whether tax setup - * is complete for each state. Use this to determine which states still need tax setup during company - * onboarding. - * - *

    scope: `company_tax_requirements:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param companyUuid The UUID of the company - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public GetV1CompaniesCompanyUuidTaxRequirementsResponse getAll(String companyUuid, Optional xGustoAPIVersion) { - GetV1CompaniesCompanyUuidTaxRequirementsRequest request = - GetV1CompaniesCompanyUuidTaxRequirementsRequest - .builder() - .companyUuid(companyUuid) - .xGustoAPIVersion(xGustoAPIVersion) - .build(); - RequestOperation operation - = new GetV1CompaniesCompanyUuidTaxRequirements.Sync(sdkConfiguration, _headers); - return operation.handleResponse(operation.doRequest(request)); - } - } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/TimeOffPolicies.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/TimeOffPolicies.java index 6463c6b76..05c27599d 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/TimeOffPolicies.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/TimeOffPolicies.java @@ -176,6 +176,127 @@ public PostV1PayrollsPayrollIdCalculateAccruingTimeOffHoursResponse calculateAcc return operation.handleResponse(operation.doRequest(request)); } + /** + * Get all time off policies for a company + * + *

    Get all time off policies for a company + * + *

    scope: `time_off_policies:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public GetV1CompaniesCompanyUuidTimeOffPoliciesRequestBuilder getAll() { + return new GetV1CompaniesCompanyUuidTimeOffPoliciesRequestBuilder(sdkConfiguration); + } + + /** + * Get all time off policies for a company + * + *

    Get all time off policies for a company + * + *

    scope: `time_off_policies:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param companyUuid The UUID of the company + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1CompaniesCompanyUuidTimeOffPoliciesResponse getAll(String companyUuid) { + return getAll(Optional.empty(), companyUuid); + } + + /** + * Get all time off policies for a company + * + *

    Get all time off policies for a company + * + *

    scope: `time_off_policies:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1CompaniesCompanyUuidTimeOffPoliciesResponse getAll(Optional xGustoAPIVersion, String companyUuid) { + GetV1CompaniesCompanyUuidTimeOffPoliciesRequest request = + GetV1CompaniesCompanyUuidTimeOffPoliciesRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) + .build(); + RequestOperation operation + = new GetV1CompaniesCompanyUuidTimeOffPolicies.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + + /** + * Create a time off policy + * + *

    Create a time off policy + * + *

    scope: `time_off_policies:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public PostV1CompaniesCompanyUuidTimeOffPoliciesRequestBuilder create() { + return new PostV1CompaniesCompanyUuidTimeOffPoliciesRequestBuilder(sdkConfiguration); + } + + /** + * Create a time off policy + * + *

    Create a time off policy + * + *

    scope: `time_off_policies:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param companyUuid The UUID of the company + * @param timeOffPolicyRequest Request body for creating a time off policy + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public PostV1CompaniesCompanyUuidTimeOffPoliciesResponse create(String companyUuid, TimeOffPolicyRequest timeOffPolicyRequest) { + return create(Optional.empty(), companyUuid, timeOffPolicyRequest); + } + + /** + * Create a time off policy + * + *

    Create a time off policy + * + *

    scope: `time_off_policies:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company + * @param timeOffPolicyRequest Request body for creating a time off policy + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public PostV1CompaniesCompanyUuidTimeOffPoliciesResponse create( + Optional xGustoAPIVersion, String companyUuid, + TimeOffPolicyRequest timeOffPolicyRequest) { + PostV1CompaniesCompanyUuidTimeOffPoliciesRequest request = + PostV1CompaniesCompanyUuidTimeOffPoliciesRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) + .timeOffPolicyRequest(timeOffPolicyRequest) + .build(); + RequestOperation operation + = new PostV1CompaniesCompanyUuidTimeOffPolicies.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + /** * Get a time off policy * @@ -298,67 +419,9 @@ public PutV1TimeOffPoliciesTimeOffPolicyUuidResponse update( } /** - * Get all time off policies for a company - * - *

    Get all time off policies for a company - * - *

    scope: `time_off_policies:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The call builder - */ - public GetV1CompaniesCompanyUuidTimeOffPoliciesRequestBuilder getAll() { - return new GetV1CompaniesCompanyUuidTimeOffPoliciesRequestBuilder(sdkConfiguration); - } - - /** - * Get all time off policies for a company - * - *

    Get all time off policies for a company - * - *

    scope: `time_off_policies:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param companyUuid The UUID of the company - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public GetV1CompaniesCompanyUuidTimeOffPoliciesResponse getAll(String companyUuid) { - return getAll(Optional.empty(), companyUuid); - } - - /** - * Get all time off policies for a company - * - *

    Get all time off policies for a company - * - *

    scope: `time_off_policies:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyUuid The UUID of the company - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public GetV1CompaniesCompanyUuidTimeOffPoliciesResponse getAll(Optional xGustoAPIVersion, String companyUuid) { - GetV1CompaniesCompanyUuidTimeOffPoliciesRequest request = - GetV1CompaniesCompanyUuidTimeOffPoliciesRequest - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .companyUuid(companyUuid) - .build(); - RequestOperation operation - = new GetV1CompaniesCompanyUuidTimeOffPolicies.Sync(sdkConfiguration, _headers); - return operation.handleResponse(operation.doRequest(request)); - } - - /** - * Create a time off policy + * Deactivate a time off policy * - *

    Create a time off policy + *

    Deactivate a time off policy * *

    scope: `time_off_policies:write` * @@ -366,55 +429,50 @@ public GetV1CompaniesCompanyUuidTimeOffPoliciesResponse getAll(OptionalCreate a time off policy + *

    Deactivate a time off policy * *

    scope: `time_off_policies:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company - * @param timeOffPolicyRequest Request body for creating a time off policy + * @param timeOffPolicyUuid The UUID of the time off policy * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostV1CompaniesCompanyUuidTimeOffPoliciesResponse create(String companyUuid, TimeOffPolicyRequest timeOffPolicyRequest) { - return create(Optional.empty(), companyUuid, timeOffPolicyRequest); + public PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateResponse deactivate(String timeOffPolicyUuid) { + return deactivate(Optional.empty(), timeOffPolicyUuid); } /** - * Create a time off policy + * Deactivate a time off policy * - *

    Create a time off policy + *

    Deactivate a time off policy * *

    scope: `time_off_policies:write` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param companyUuid The UUID of the company - * @param timeOffPolicyRequest Request body for creating a time off policy + * @param timeOffPolicyUuid The UUID of the time off policy * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PostV1CompaniesCompanyUuidTimeOffPoliciesResponse create( - Optional xGustoAPIVersion, String companyUuid, - TimeOffPolicyRequest timeOffPolicyRequest) { - PostV1CompaniesCompanyUuidTimeOffPoliciesRequest request = - PostV1CompaniesCompanyUuidTimeOffPoliciesRequest + public PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateResponse deactivate(Optional xGustoAPIVersion, String timeOffPolicyUuid) { + PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateRequest request = + PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateRequest .builder() .xGustoAPIVersion(xGustoAPIVersion) - .companyUuid(companyUuid) - .timeOffPolicyRequest(timeOffPolicyRequest) + .timeOffPolicyUuid(timeOffPolicyUuid) .build(); - RequestOperation operation - = new PostV1CompaniesCompanyUuidTimeOffPolicies.Sync(sdkConfiguration, _headers); + RequestOperation operation + = new PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivate.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } @@ -610,62 +668,4 @@ public PutV1TimeOffPoliciesTimeOffPolicyUuidBalanceResponse updateBalance( return operation.handleResponse(operation.doRequest(request)); } - /** - * Deactivate a time off policy - * - *

    Deactivate a time off policy - * - *

    scope: `time_off_policies:write` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The call builder - */ - public PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateRequestBuilder deactivate() { - return new PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateRequestBuilder(sdkConfiguration); - } - - /** - * Deactivate a time off policy - * - *

    Deactivate a time off policy - * - *

    scope: `time_off_policies:write` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param timeOffPolicyUuid The UUID of the time off policy - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateResponse deactivate(String timeOffPolicyUuid) { - return deactivate(Optional.empty(), timeOffPolicyUuid); - } - - /** - * Deactivate a time off policy - * - *

    Deactivate a time off policy - * - *

    scope: `time_off_policies:write` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param timeOffPolicyUuid The UUID of the time off policy - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateResponse deactivate(Optional xGustoAPIVersion, String timeOffPolicyUuid) { - PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateRequest request = - PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivateRequest - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .timeOffPolicyUuid(timeOffPolicyUuid) - .build(); - RequestOperation operation - = new PutV1TimeOffPoliciesTimeOffPolicyUuidDeactivate.Sync(sdkConfiguration, _headers); - return operation.handleResponse(operation.doRequest(request)); - } - } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/Webhooks.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/Webhooks.java index 259d7e2f4..99bb65d25 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/Webhooks.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/Webhooks.java @@ -256,7 +256,7 @@ public GetV1WebhookSubscriptionUuidRequestBuilder getSubscription() { * @throws RuntimeException subclass if the API call fails */ public GetV1WebhookSubscriptionUuidResponse getSubscription(GetV1WebhookSubscriptionUuidSecurity security, String webhookSubscriptionUuid) { - return getSubscription(security, webhookSubscriptionUuid, Optional.empty()); + return getSubscription(security, Optional.empty(), webhookSubscriptionUuid); } /** @@ -272,19 +272,19 @@ public GetV1WebhookSubscriptionUuidResponse getSubscription(GetV1WebhookSubscrip *

    scope: `webhook_subscriptions:read` * * @param security The security details to use for authentication. - * @param webhookSubscriptionUuid The webhook subscription UUID. * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param webhookSubscriptionUuid The webhook subscription UUID. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public GetV1WebhookSubscriptionUuidResponse getSubscription( - GetV1WebhookSubscriptionUuidSecurity security, String webhookSubscriptionUuid, - Optional xGustoAPIVersion) { + GetV1WebhookSubscriptionUuidSecurity security, Optional xGustoAPIVersion, + String webhookSubscriptionUuid) { GetV1WebhookSubscriptionUuidRequest request = GetV1WebhookSubscriptionUuidRequest .builder() - .webhookSubscriptionUuid(webhookSubscriptionUuid) .xGustoAPIVersion(xGustoAPIVersion) + .webhookSubscriptionUuid(webhookSubscriptionUuid) .build(); RequestOperation operation = new GetV1WebhookSubscriptionUuid.Sync(sdkConfiguration, security, _headers); @@ -330,7 +330,7 @@ public PutV1WebhookSubscriptionUuidRequestBuilder updateSubscription() { public PutV1WebhookSubscriptionUuidResponse updateSubscription( PutV1WebhookSubscriptionUuidSecurity security, String webhookSubscriptionUuid, PutV1WebhookSubscriptionUuidRequestBody requestBody) { - return updateSubscription(security, webhookSubscriptionUuid, Optional.empty(), + return updateSubscription(security, Optional.empty(), webhookSubscriptionUuid, requestBody); } @@ -347,20 +347,20 @@ public PutV1WebhookSubscriptionUuidResponse updateSubscription( *

    scope: `webhook_subscriptions:write` * * @param security The security details to use for authentication. - * @param webhookSubscriptionUuid The webhook subscription UUID. * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param webhookSubscriptionUuid The webhook subscription UUID. * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PutV1WebhookSubscriptionUuidResponse updateSubscription( - PutV1WebhookSubscriptionUuidSecurity security, String webhookSubscriptionUuid, - Optional xGustoAPIVersion, PutV1WebhookSubscriptionUuidRequestBody requestBody) { + PutV1WebhookSubscriptionUuidSecurity security, Optional xGustoAPIVersion, + String webhookSubscriptionUuid, PutV1WebhookSubscriptionUuidRequestBody requestBody) { PutV1WebhookSubscriptionUuidRequest request = PutV1WebhookSubscriptionUuidRequest .builder() - .webhookSubscriptionUuid(webhookSubscriptionUuid) .xGustoAPIVersion(xGustoAPIVersion) + .webhookSubscriptionUuid(webhookSubscriptionUuid) .requestBody(requestBody) .build(); RequestOperation operation @@ -404,7 +404,7 @@ public DeleteV1WebhookSubscriptionUuidRequestBuilder deleteSubscription() { * @throws RuntimeException subclass if the API call fails */ public DeleteV1WebhookSubscriptionUuidResponse deleteSubscription(DeleteV1WebhookSubscriptionUuidSecurity security, String webhookSubscriptionUuid) { - return deleteSubscription(security, webhookSubscriptionUuid, Optional.empty()); + return deleteSubscription(security, Optional.empty(), webhookSubscriptionUuid); } /** @@ -420,19 +420,19 @@ public DeleteV1WebhookSubscriptionUuidResponse deleteSubscription(DeleteV1Webhoo *

    scope: `webhook_subscriptions:write` * * @param security The security details to use for authentication. - * @param webhookSubscriptionUuid The webhook subscription UUID. * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param webhookSubscriptionUuid The webhook subscription UUID. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public DeleteV1WebhookSubscriptionUuidResponse deleteSubscription( - DeleteV1WebhookSubscriptionUuidSecurity security, String webhookSubscriptionUuid, - Optional xGustoAPIVersion) { + DeleteV1WebhookSubscriptionUuidSecurity security, Optional xGustoAPIVersion, + String webhookSubscriptionUuid) { DeleteV1WebhookSubscriptionUuidRequest request = DeleteV1WebhookSubscriptionUuidRequest .builder() - .webhookSubscriptionUuid(webhookSubscriptionUuid) .xGustoAPIVersion(xGustoAPIVersion) + .webhookSubscriptionUuid(webhookSubscriptionUuid) .build(); RequestOperation operation = new DeleteV1WebhookSubscriptionUuid.Sync(sdkConfiguration, security, _headers); @@ -440,165 +440,165 @@ public DeleteV1WebhookSubscriptionUuidResponse deleteSubscription( } /** - * Verify a webhook subscription - * - *

    When a webhook subscription is created, a `verification_token` is POSTed to the registered webhook - * subscription URL. This `verify` endpoint needs to be called with `verification_token` before webhook - * events can be sent to the registered webhook URL. + * Request a verification token for a webhook subscription * - *

    Use the /v1/webhook_subscriptions/{webhook_subscription_uuid}/request_verification_token API to - * resend the `verification_token` to the Subscriber. + *

    Request that the webhook subscription `verification_token` be POSTed to the Subscription URL. * *

    📘 System Access Authentication * *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) * - *

    scope: `webhook_subscriptions:write` + *

    scope: `webhook_subscriptions:read` * * @return The call builder */ - public PutV1VerifyWebhookSubscriptionUuidRequestBuilder verify() { - return new PutV1VerifyWebhookSubscriptionUuidRequestBuilder(sdkConfiguration); + public GetV1WebhookSubscriptionVerificationTokenUuidRequestBuilder requestVerificationToken() { + return new GetV1WebhookSubscriptionVerificationTokenUuidRequestBuilder(sdkConfiguration); } /** - * Verify a webhook subscription - * - *

    When a webhook subscription is created, a `verification_token` is POSTed to the registered webhook - * subscription URL. This `verify` endpoint needs to be called with `verification_token` before webhook - * events can be sent to the registered webhook URL. + * Request a verification token for a webhook subscription * - *

    Use the /v1/webhook_subscriptions/{webhook_subscription_uuid}/request_verification_token API to - * resend the `verification_token` to the Subscriber. + *

    Request that the webhook subscription `verification_token` be POSTed to the Subscription URL. * *

    📘 System Access Authentication * *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) * - *

    scope: `webhook_subscriptions:write` + *

    scope: `webhook_subscriptions:read` * * @param security The security details to use for authentication. * @param webhookSubscriptionUuid The webhook subscription UUID. - * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1VerifyWebhookSubscriptionUuidResponse verify( - PutV1VerifyWebhookSubscriptionUuidSecurity security, String webhookSubscriptionUuid, - PutV1VerifyWebhookSubscriptionUuidRequestBody requestBody) { - return verify(security, webhookSubscriptionUuid, Optional.empty(), - requestBody); + public GetV1WebhookSubscriptionVerificationTokenUuidResponse requestVerificationToken(GetV1WebhookSubscriptionVerificationTokenUuidSecurity security, String webhookSubscriptionUuid) { + return requestVerificationToken(security, Optional.empty(), webhookSubscriptionUuid); } /** - * Verify a webhook subscription - * - *

    When a webhook subscription is created, a `verification_token` is POSTed to the registered webhook - * subscription URL. This `verify` endpoint needs to be called with `verification_token` before webhook - * events can be sent to the registered webhook URL. + * Request a verification token for a webhook subscription * - *

    Use the /v1/webhook_subscriptions/{webhook_subscription_uuid}/request_verification_token API to - * resend the `verification_token` to the Subscriber. + *

    Request that the webhook subscription `verification_token` be POSTed to the Subscription URL. * *

    📘 System Access Authentication * *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) * - *

    scope: `webhook_subscriptions:write` + *

    scope: `webhook_subscriptions:read` * * @param security The security details to use for authentication. - * @param webhookSubscriptionUuid The webhook subscription UUID. * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param requestBody + * @param webhookSubscriptionUuid The webhook subscription UUID. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1VerifyWebhookSubscriptionUuidResponse verify( - PutV1VerifyWebhookSubscriptionUuidSecurity security, String webhookSubscriptionUuid, - Optional xGustoAPIVersion, PutV1VerifyWebhookSubscriptionUuidRequestBody requestBody) { - PutV1VerifyWebhookSubscriptionUuidRequest request = - PutV1VerifyWebhookSubscriptionUuidRequest + public GetV1WebhookSubscriptionVerificationTokenUuidResponse requestVerificationToken( + GetV1WebhookSubscriptionVerificationTokenUuidSecurity security, Optional xGustoAPIVersion, + String webhookSubscriptionUuid) { + GetV1WebhookSubscriptionVerificationTokenUuidRequest request = + GetV1WebhookSubscriptionVerificationTokenUuidRequest .builder() - .webhookSubscriptionUuid(webhookSubscriptionUuid) .xGustoAPIVersion(xGustoAPIVersion) - .requestBody(requestBody) + .webhookSubscriptionUuid(webhookSubscriptionUuid) .build(); - RequestOperation operation - = new PutV1VerifyWebhookSubscriptionUuid.Sync(sdkConfiguration, security, _headers); + RequestOperation operation + = new GetV1WebhookSubscriptionVerificationTokenUuid.Sync(sdkConfiguration, security, _headers); return operation.handleResponse(operation.doRequest(request)); } /** - * Request a verification token for a webhook subscription + * Verify a webhook subscription * - *

    Request that the webhook subscription `verification_token` be POSTed to the Subscription URL. + *

    When a webhook subscription is created, a `verification_token` is POSTed to the registered webhook + * subscription URL. This `verify` endpoint needs to be called with `verification_token` before webhook + * events can be sent to the registered webhook URL. + * + *

    Use the /v1/webhook_subscriptions/{webhook_subscription_uuid}/request_verification_token API to + * resend the `verification_token` to the Subscriber. * *

    📘 System Access Authentication * *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) * - *

    scope: `webhook_subscriptions:read` + *

    scope: `webhook_subscriptions:write` * * @return The call builder */ - public GetV1WebhookSubscriptionVerificationTokenUuidRequestBuilder requestVerificationToken() { - return new GetV1WebhookSubscriptionVerificationTokenUuidRequestBuilder(sdkConfiguration); + public PutV1VerifyWebhookSubscriptionUuidRequestBuilder verify() { + return new PutV1VerifyWebhookSubscriptionUuidRequestBuilder(sdkConfiguration); } /** - * Request a verification token for a webhook subscription + * Verify a webhook subscription * - *

    Request that the webhook subscription `verification_token` be POSTed to the Subscription URL. + *

    When a webhook subscription is created, a `verification_token` is POSTed to the registered webhook + * subscription URL. This `verify` endpoint needs to be called with `verification_token` before webhook + * events can be sent to the registered webhook URL. + * + *

    Use the /v1/webhook_subscriptions/{webhook_subscription_uuid}/request_verification_token API to + * resend the `verification_token` to the Subscriber. * *

    📘 System Access Authentication * *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) * - *

    scope: `webhook_subscriptions:read` + *

    scope: `webhook_subscriptions:write` * * @param security The security details to use for authentication. * @param webhookSubscriptionUuid The webhook subscription UUID. + * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1WebhookSubscriptionVerificationTokenUuidResponse requestVerificationToken(GetV1WebhookSubscriptionVerificationTokenUuidSecurity security, String webhookSubscriptionUuid) { - return requestVerificationToken(security, webhookSubscriptionUuid, Optional.empty()); + public PutV1VerifyWebhookSubscriptionUuidResponse verify( + PutV1VerifyWebhookSubscriptionUuidSecurity security, String webhookSubscriptionUuid, + PutV1VerifyWebhookSubscriptionUuidRequestBody requestBody) { + return verify(security, Optional.empty(), webhookSubscriptionUuid, + requestBody); } /** - * Request a verification token for a webhook subscription + * Verify a webhook subscription * - *

    Request that the webhook subscription `verification_token` be POSTed to the Subscription URL. + *

    When a webhook subscription is created, a `verification_token` is POSTed to the registered webhook + * subscription URL. This `verify` endpoint needs to be called with `verification_token` before webhook + * events can be sent to the registered webhook URL. + * + *

    Use the /v1/webhook_subscriptions/{webhook_subscription_uuid}/request_verification_token API to + * resend the `verification_token` to the Subscriber. * *

    📘 System Access Authentication * *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) * - *

    scope: `webhook_subscriptions:read` + *

    scope: `webhook_subscriptions:write` * * @param security The security details to use for authentication. - * @param webhookSubscriptionUuid The webhook subscription UUID. * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param webhookSubscriptionUuid The webhook subscription UUID. + * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1WebhookSubscriptionVerificationTokenUuidResponse requestVerificationToken( - GetV1WebhookSubscriptionVerificationTokenUuidSecurity security, String webhookSubscriptionUuid, - Optional xGustoAPIVersion) { - GetV1WebhookSubscriptionVerificationTokenUuidRequest request = - GetV1WebhookSubscriptionVerificationTokenUuidRequest + public PutV1VerifyWebhookSubscriptionUuidResponse verify( + PutV1VerifyWebhookSubscriptionUuidSecurity security, Optional xGustoAPIVersion, + String webhookSubscriptionUuid, PutV1VerifyWebhookSubscriptionUuidRequestBody requestBody) { + PutV1VerifyWebhookSubscriptionUuidRequest request = + PutV1VerifyWebhookSubscriptionUuidRequest .builder() - .webhookSubscriptionUuid(webhookSubscriptionUuid) .xGustoAPIVersion(xGustoAPIVersion) + .webhookSubscriptionUuid(webhookSubscriptionUuid) + .requestBody(requestBody) .build(); - RequestOperation operation - = new GetV1WebhookSubscriptionVerificationTokenUuid.Sync(sdkConfiguration, security, _headers); + RequestOperation operation + = new PutV1VerifyWebhookSubscriptionUuid.Sync(sdkConfiguration, security, _headers); return operation.handleResponse(operation.doRequest(request)); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/WireInRequests.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/WireInRequests.java index cdd38190a..e1e475ad9 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/WireInRequests.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/WireInRequests.java @@ -75,7 +75,7 @@ public GetWireInRequestsWireInRequestUuidRequestBuilder get() { * @throws RuntimeException subclass if the API call fails */ public GetWireInRequestsWireInRequestUuidResponse get(String wireInRequestUuid) { - return get(wireInRequestUuid, Optional.empty()); + return get(Optional.empty(), wireInRequestUuid); } /** @@ -87,17 +87,17 @@ public GetWireInRequestsWireInRequestUuidResponse get(String wireInRequestUuid) * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param wireInRequestUuid The UUID of the Wire In Request * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param wireInRequestUuid The UUID of the Wire In Request * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetWireInRequestsWireInRequestUuidResponse get(String wireInRequestUuid, Optional xGustoAPIVersion) { + public GetWireInRequestsWireInRequestUuidResponse get(Optional xGustoAPIVersion, String wireInRequestUuid) { GetWireInRequestsWireInRequestUuidRequest request = GetWireInRequestsWireInRequestUuidRequest .builder() - .wireInRequestUuid(wireInRequestUuid) .xGustoAPIVersion(xGustoAPIVersion) + .wireInRequestUuid(wireInRequestUuid) .build(); RequestOperation operation = new GetWireInRequestsWireInRequestUuid.Sync(sdkConfiguration, _headers); @@ -134,7 +134,7 @@ public PutWireInRequestsWireInRequestUuidRequestBuilder submit() { * @throws RuntimeException subclass if the API call fails */ public PutWireInRequestsWireInRequestUuidResponse submit(String wireInRequestUuid, WireInRequestUpdateRequestBody wireInRequestUpdateRequestBody) { - return submit(wireInRequestUuid, Optional.empty(), wireInRequestUpdateRequestBody); + return submit(Optional.empty(), wireInRequestUuid, wireInRequestUpdateRequestBody); } /** @@ -146,20 +146,20 @@ public PutWireInRequestsWireInRequestUuidResponse submit(String wireInRequestUui * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param wireInRequestUuid The UUID of the Wire In Request * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param wireInRequestUuid The UUID of the Wire In Request * @param wireInRequestUpdateRequestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PutWireInRequestsWireInRequestUuidResponse submit( - String wireInRequestUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String wireInRequestUuid, WireInRequestUpdateRequestBody wireInRequestUpdateRequestBody) { PutWireInRequestsWireInRequestUuidRequest request = PutWireInRequestsWireInRequestUuidRequest .builder() - .wireInRequestUuid(wireInRequestUuid) .xGustoAPIVersion(xGustoAPIVersion) + .wireInRequestUuid(wireInRequestUuid) .wireInRequestUpdateRequestBody(wireInRequestUpdateRequestBody) .build(); RequestOperation operation @@ -196,7 +196,7 @@ public GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder list() { * @throws RuntimeException subclass if the API call fails */ public GetCompaniesCompanyUuidWireInRequestUuidResponse list(String companyUuid) { - return list(companyUuid, Optional.empty(), Optional.empty(), + return list(Optional.empty(), companyUuid, Optional.empty(), Optional.empty()); } @@ -209,21 +209,21 @@ public GetCompaniesCompanyUuidWireInRequestUuidResponse list(String companyUuid) * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company * @param page The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. * @param per Number of objects per page. For majority of endpoints will default to 25 * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public GetCompaniesCompanyUuidWireInRequestUuidResponse list( - String companyUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String companyUuid, Optional page, Optional per) { GetCompaniesCompanyUuidWireInRequestUuidRequest request = GetCompaniesCompanyUuidWireInRequestUuidRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) .page(page) .per(per) .build(); diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/AchTransaction.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/AchTransaction.java index f5a2ff3a6..7f94cf52e 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/AchTransaction.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/AchTransaction.java @@ -53,7 +53,7 @@ public class AchTransaction { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("recipient_type") - private JsonNullable recipientType; + private JsonNullable recipientType; /** * Unique identifier for the recipient associated with the ACH transaction @@ -128,7 +128,7 @@ public AchTransaction( @JsonProperty("company_uuid") Optional companyUuid, @JsonProperty("payment_event_type") Optional paymentEventType, @JsonProperty("payment_event_uuid") Optional paymentEventUuid, - @JsonProperty("recipient_type") JsonNullable recipientType, + @JsonProperty("recipient_type") JsonNullable recipientType, @JsonProperty("recipient_uuid") Optional recipientUuid, @JsonProperty("error_code") JsonNullable errorCode, @JsonProperty("transaction_type") Optional transactionType, @@ -215,8 +215,8 @@ public Optional paymentEventUuid() { */ @SuppressWarnings("unchecked") @JsonIgnore - public JsonNullable recipientType() { - return (JsonNullable) recipientType; + public JsonNullable recipientType() { + return (JsonNullable) recipientType; } /** @@ -371,7 +371,7 @@ public AchTransaction withPaymentEventUuid(Optional paymentEventUuid) { /** * The type of recipient associated with the ACH transaction */ - public AchTransaction withRecipientType(AchTransactionRecipientType recipientType) { + public AchTransaction withRecipientType(RecipientType recipientType) { Utils.checkNotNull(recipientType, "recipientType"); this.recipientType = JsonNullable.of(recipientType); return this; @@ -380,7 +380,7 @@ public AchTransaction withRecipientType(AchTransactionRecipientType recipientTyp /** * The type of recipient associated with the ACH transaction */ - public AchTransaction withRecipientType(JsonNullable recipientType) { + public AchTransaction withRecipientType(JsonNullable recipientType) { Utils.checkNotNull(recipientType, "recipientType"); this.recipientType = recipientType; return this; @@ -630,7 +630,7 @@ public final static class Builder { private Optional paymentEventUuid = Optional.empty(); - private JsonNullable recipientType = JsonNullable.undefined(); + private JsonNullable recipientType = JsonNullable.undefined(); private Optional recipientUuid = Optional.empty(); @@ -725,7 +725,7 @@ public Builder paymentEventUuid(Optional paymentEventUuid) { /** * The type of recipient associated with the ACH transaction */ - public Builder recipientType(AchTransactionRecipientType recipientType) { + public Builder recipientType(RecipientType recipientType) { Utils.checkNotNull(recipientType, "recipientType"); this.recipientType = JsonNullable.of(recipientType); return this; @@ -734,7 +734,7 @@ public Builder recipientType(AchTransactionRecipientType recipientType) { /** * The type of recipient associated with the ACH transaction */ - public Builder recipientType(JsonNullable recipientType) { + public Builder recipientType(JsonNullable recipientType) { Utils.checkNotNull(recipientType, "recipientType"); this.recipientType = recipientType; return this; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Aggregation.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Aggregation.java index e78d304e5..22dbcab12 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Aggregation.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Aggregation.java @@ -11,7 +11,7 @@ /** * Aggregation * - *

    The breakdown of the report. Use 'default' for no split. + *

    The breakdown of the report. Use `default` for no split. */ public enum Aggregation { DEFAULT("default"), diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BatchAction.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BatchAction.java index 668a16265..4c58f2f6a 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BatchAction.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BatchAction.java @@ -14,7 +14,7 @@ *

    The action being performed on the batch. */ public enum BatchAction { - CREATE("create"); + CANCEL("cancel"); @JsonValue private final String value; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BenefitSummary.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BenefitSummary.java index 06d08bc0e..13e66efbf 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BenefitSummary.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BenefitSummary.java @@ -57,7 +57,7 @@ public class BenefitSummary { @JsonInclude(Include.NON_ABSENT) @JsonProperty("employees") - private Optional> employees; + private Optional> employees; @JsonCreator public BenefitSummary( @@ -66,7 +66,7 @@ public BenefitSummary( @JsonProperty("description") Optional description, @JsonProperty("company_benefit_deduction") Optional companyBenefitDeduction, @JsonProperty("company_benefit_contribution") Optional companyBenefitContribution, - @JsonProperty("employees") Optional> employees) { + @JsonProperty("employees") Optional> employees) { Utils.checkNotNull(startDate, "startDate"); Utils.checkNotNull(endDate, "endDate"); Utils.checkNotNull(description, "description"); @@ -130,8 +130,8 @@ public Optional companyBenefitContribution() { @SuppressWarnings("unchecked") @JsonIgnore - public Optional> employees() { - return (Optional>) employees; + public Optional> employees() { + return (Optional>) employees; } public static Builder builder() { @@ -238,14 +238,14 @@ public BenefitSummary withCompanyBenefitContribution(Optional companyBen return this; } - public BenefitSummary withEmployees(List employees) { + public BenefitSummary withEmployees(List employees) { Utils.checkNotNull(employees, "employees"); this.employees = Optional.ofNullable(employees); return this; } - public BenefitSummary withEmployees(Optional> employees) { + public BenefitSummary withEmployees(Optional> employees) { Utils.checkNotNull(employees, "employees"); this.employees = employees; return this; @@ -300,7 +300,7 @@ public final static class Builder { private Optional companyBenefitContribution = Optional.empty(); - private Optional> employees = Optional.empty(); + private Optional> employees = Optional.empty(); private Builder() { // force use of static builder() method @@ -406,13 +406,13 @@ public Builder companyBenefitContribution(Optional companyBenefitContrib } - public Builder employees(List employees) { + public Builder employees(List employees) { Utils.checkNotNull(employees, "employees"); this.employees = Optional.ofNullable(employees); return this; } - public Builder employees(Optional> employees) { + public Builder employees(Optional> employees) { Utils.checkNotNull(employees, "employees"); this.employees = employees; return this; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BenefitSummaryEmployees.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BenefitSummaryEmployees.java deleted file mode 100644 index 0582d9233..000000000 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BenefitSummaryEmployees.java +++ /dev/null @@ -1,558 +0,0 @@ -/* - * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - */ -package com.gusto.embedded_api_v_2025_11_15.models.components; - -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonIgnore; -import com.fasterxml.jackson.annotation.JsonInclude.Include; -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.gusto.embedded_api_v_2025_11_15.utils.Utils; -import java.lang.Override; -import java.lang.String; -import java.lang.SuppressWarnings; -import java.util.List; -import java.util.Optional; - - -public class BenefitSummaryEmployees { - /** - * The UUID of the employee - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("uuid") - private Optional uuid; - - /** - * The sum of employee deduction for this employee given the period of time and the specific company - * benefit. - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("company_benefit_deduction") - private Optional companyBenefitDeduction; - - /** - * The sum of company contribution for this employee given the period of time and the specific company - * benefit. - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("company_benefit_contribution") - private Optional companyBenefitContribution; - - /** - * The sum of employee benefit deduction for this employee given the period of time and the benefit - * type. - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("benefit_deduction") - private Optional benefitDeduction; - - /** - * The sum of company contribution for this employee given the period of time and the benefit type. - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("benefit_contribution") - private Optional benefitContribution; - - /** - * Gross pay for this employee given the period of time. - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("gross_pay") - private Optional grossPay; - - /** - * Total imputed pay for this employee given the period of time (not scoped to a benefit type). - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("imputed_pay") - private Optional imputedPay; - - - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("payroll_benefits") - private Optional> payrollBenefits; - - @JsonCreator - public BenefitSummaryEmployees( - @JsonProperty("uuid") Optional uuid, - @JsonProperty("company_benefit_deduction") Optional companyBenefitDeduction, - @JsonProperty("company_benefit_contribution") Optional companyBenefitContribution, - @JsonProperty("benefit_deduction") Optional benefitDeduction, - @JsonProperty("benefit_contribution") Optional benefitContribution, - @JsonProperty("gross_pay") Optional grossPay, - @JsonProperty("imputed_pay") Optional imputedPay, - @JsonProperty("payroll_benefits") Optional> payrollBenefits) { - Utils.checkNotNull(uuid, "uuid"); - Utils.checkNotNull(companyBenefitDeduction, "companyBenefitDeduction"); - Utils.checkNotNull(companyBenefitContribution, "companyBenefitContribution"); - Utils.checkNotNull(benefitDeduction, "benefitDeduction"); - Utils.checkNotNull(benefitContribution, "benefitContribution"); - Utils.checkNotNull(grossPay, "grossPay"); - Utils.checkNotNull(imputedPay, "imputedPay"); - Utils.checkNotNull(payrollBenefits, "payrollBenefits"); - this.uuid = uuid; - this.companyBenefitDeduction = companyBenefitDeduction; - this.companyBenefitContribution = companyBenefitContribution; - this.benefitDeduction = benefitDeduction; - this.benefitContribution = benefitContribution; - this.grossPay = grossPay; - this.imputedPay = imputedPay; - this.payrollBenefits = payrollBenefits; - } - - public BenefitSummaryEmployees() { - this(Optional.empty(), Optional.empty(), Optional.empty(), - Optional.empty(), Optional.empty(), Optional.empty(), - Optional.empty(), Optional.empty()); - } - - /** - * The UUID of the employee - */ - @JsonIgnore - public Optional uuid() { - return uuid; - } - - /** - * The sum of employee deduction for this employee given the period of time and the specific company - * benefit. - */ - @JsonIgnore - public Optional companyBenefitDeduction() { - return companyBenefitDeduction; - } - - /** - * The sum of company contribution for this employee given the period of time and the specific company - * benefit. - */ - @JsonIgnore - public Optional companyBenefitContribution() { - return companyBenefitContribution; - } - - /** - * The sum of employee benefit deduction for this employee given the period of time and the benefit - * type. - */ - @JsonIgnore - public Optional benefitDeduction() { - return benefitDeduction; - } - - /** - * The sum of company contribution for this employee given the period of time and the benefit type. - */ - @JsonIgnore - public Optional benefitContribution() { - return benefitContribution; - } - - /** - * Gross pay for this employee given the period of time. - */ - @JsonIgnore - public Optional grossPay() { - return grossPay; - } - - /** - * Total imputed pay for this employee given the period of time (not scoped to a benefit type). - */ - @JsonIgnore - public Optional imputedPay() { - return imputedPay; - } - - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional> payrollBenefits() { - return (Optional>) payrollBenefits; - } - - public static Builder builder() { - return new Builder(); - } - - - /** - * The UUID of the employee - */ - public BenefitSummaryEmployees withUuid(String uuid) { - Utils.checkNotNull(uuid, "uuid"); - this.uuid = Optional.ofNullable(uuid); - return this; - } - - - /** - * The UUID of the employee - */ - public BenefitSummaryEmployees withUuid(Optional uuid) { - Utils.checkNotNull(uuid, "uuid"); - this.uuid = uuid; - return this; - } - - /** - * The sum of employee deduction for this employee given the period of time and the specific company - * benefit. - */ - public BenefitSummaryEmployees withCompanyBenefitDeduction(String companyBenefitDeduction) { - Utils.checkNotNull(companyBenefitDeduction, "companyBenefitDeduction"); - this.companyBenefitDeduction = Optional.ofNullable(companyBenefitDeduction); - return this; - } - - - /** - * The sum of employee deduction for this employee given the period of time and the specific company - * benefit. - */ - public BenefitSummaryEmployees withCompanyBenefitDeduction(Optional companyBenefitDeduction) { - Utils.checkNotNull(companyBenefitDeduction, "companyBenefitDeduction"); - this.companyBenefitDeduction = companyBenefitDeduction; - return this; - } - - /** - * The sum of company contribution for this employee given the period of time and the specific company - * benefit. - */ - public BenefitSummaryEmployees withCompanyBenefitContribution(String companyBenefitContribution) { - Utils.checkNotNull(companyBenefitContribution, "companyBenefitContribution"); - this.companyBenefitContribution = Optional.ofNullable(companyBenefitContribution); - return this; - } - - - /** - * The sum of company contribution for this employee given the period of time and the specific company - * benefit. - */ - public BenefitSummaryEmployees withCompanyBenefitContribution(Optional companyBenefitContribution) { - Utils.checkNotNull(companyBenefitContribution, "companyBenefitContribution"); - this.companyBenefitContribution = companyBenefitContribution; - return this; - } - - /** - * The sum of employee benefit deduction for this employee given the period of time and the benefit - * type. - */ - public BenefitSummaryEmployees withBenefitDeduction(String benefitDeduction) { - Utils.checkNotNull(benefitDeduction, "benefitDeduction"); - this.benefitDeduction = Optional.ofNullable(benefitDeduction); - return this; - } - - - /** - * The sum of employee benefit deduction for this employee given the period of time and the benefit - * type. - */ - public BenefitSummaryEmployees withBenefitDeduction(Optional benefitDeduction) { - Utils.checkNotNull(benefitDeduction, "benefitDeduction"); - this.benefitDeduction = benefitDeduction; - return this; - } - - /** - * The sum of company contribution for this employee given the period of time and the benefit type. - */ - public BenefitSummaryEmployees withBenefitContribution(String benefitContribution) { - Utils.checkNotNull(benefitContribution, "benefitContribution"); - this.benefitContribution = Optional.ofNullable(benefitContribution); - return this; - } - - - /** - * The sum of company contribution for this employee given the period of time and the benefit type. - */ - public BenefitSummaryEmployees withBenefitContribution(Optional benefitContribution) { - Utils.checkNotNull(benefitContribution, "benefitContribution"); - this.benefitContribution = benefitContribution; - return this; - } - - /** - * Gross pay for this employee given the period of time. - */ - public BenefitSummaryEmployees withGrossPay(String grossPay) { - Utils.checkNotNull(grossPay, "grossPay"); - this.grossPay = Optional.ofNullable(grossPay); - return this; - } - - - /** - * Gross pay for this employee given the period of time. - */ - public BenefitSummaryEmployees withGrossPay(Optional grossPay) { - Utils.checkNotNull(grossPay, "grossPay"); - this.grossPay = grossPay; - return this; - } - - /** - * Total imputed pay for this employee given the period of time (not scoped to a benefit type). - */ - public BenefitSummaryEmployees withImputedPay(String imputedPay) { - Utils.checkNotNull(imputedPay, "imputedPay"); - this.imputedPay = Optional.ofNullable(imputedPay); - return this; - } - - - /** - * Total imputed pay for this employee given the period of time (not scoped to a benefit type). - */ - public BenefitSummaryEmployees withImputedPay(Optional imputedPay) { - Utils.checkNotNull(imputedPay, "imputedPay"); - this.imputedPay = imputedPay; - return this; - } - - public BenefitSummaryEmployees withPayrollBenefits(List payrollBenefits) { - Utils.checkNotNull(payrollBenefits, "payrollBenefits"); - this.payrollBenefits = Optional.ofNullable(payrollBenefits); - return this; - } - - - public BenefitSummaryEmployees withPayrollBenefits(Optional> payrollBenefits) { - Utils.checkNotNull(payrollBenefits, "payrollBenefits"); - this.payrollBenefits = payrollBenefits; - return this; - } - - @Override - public boolean equals(java.lang.Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - BenefitSummaryEmployees other = (BenefitSummaryEmployees) o; - return - Utils.enhancedDeepEquals(this.uuid, other.uuid) && - Utils.enhancedDeepEquals(this.companyBenefitDeduction, other.companyBenefitDeduction) && - Utils.enhancedDeepEquals(this.companyBenefitContribution, other.companyBenefitContribution) && - Utils.enhancedDeepEquals(this.benefitDeduction, other.benefitDeduction) && - Utils.enhancedDeepEquals(this.benefitContribution, other.benefitContribution) && - Utils.enhancedDeepEquals(this.grossPay, other.grossPay) && - Utils.enhancedDeepEquals(this.imputedPay, other.imputedPay) && - Utils.enhancedDeepEquals(this.payrollBenefits, other.payrollBenefits); - } - - @Override - public int hashCode() { - return Utils.enhancedHash( - uuid, companyBenefitDeduction, companyBenefitContribution, - benefitDeduction, benefitContribution, grossPay, - imputedPay, payrollBenefits); - } - - @Override - public String toString() { - return Utils.toString(BenefitSummaryEmployees.class, - "uuid", uuid, - "companyBenefitDeduction", companyBenefitDeduction, - "companyBenefitContribution", companyBenefitContribution, - "benefitDeduction", benefitDeduction, - "benefitContribution", benefitContribution, - "grossPay", grossPay, - "imputedPay", imputedPay, - "payrollBenefits", payrollBenefits); - } - - @SuppressWarnings("UnusedReturnValue") - public final static class Builder { - - private Optional uuid = Optional.empty(); - - private Optional companyBenefitDeduction = Optional.empty(); - - private Optional companyBenefitContribution = Optional.empty(); - - private Optional benefitDeduction = Optional.empty(); - - private Optional benefitContribution = Optional.empty(); - - private Optional grossPay = Optional.empty(); - - private Optional imputedPay = Optional.empty(); - - private Optional> payrollBenefits = Optional.empty(); - - private Builder() { - // force use of static builder() method - } - - - /** - * The UUID of the employee - */ - public Builder uuid(String uuid) { - Utils.checkNotNull(uuid, "uuid"); - this.uuid = Optional.ofNullable(uuid); - return this; - } - - /** - * The UUID of the employee - */ - public Builder uuid(Optional uuid) { - Utils.checkNotNull(uuid, "uuid"); - this.uuid = uuid; - return this; - } - - - /** - * The sum of employee deduction for this employee given the period of time and the specific company - * benefit. - */ - public Builder companyBenefitDeduction(String companyBenefitDeduction) { - Utils.checkNotNull(companyBenefitDeduction, "companyBenefitDeduction"); - this.companyBenefitDeduction = Optional.ofNullable(companyBenefitDeduction); - return this; - } - - /** - * The sum of employee deduction for this employee given the period of time and the specific company - * benefit. - */ - public Builder companyBenefitDeduction(Optional companyBenefitDeduction) { - Utils.checkNotNull(companyBenefitDeduction, "companyBenefitDeduction"); - this.companyBenefitDeduction = companyBenefitDeduction; - return this; - } - - - /** - * The sum of company contribution for this employee given the period of time and the specific company - * benefit. - */ - public Builder companyBenefitContribution(String companyBenefitContribution) { - Utils.checkNotNull(companyBenefitContribution, "companyBenefitContribution"); - this.companyBenefitContribution = Optional.ofNullable(companyBenefitContribution); - return this; - } - - /** - * The sum of company contribution for this employee given the period of time and the specific company - * benefit. - */ - public Builder companyBenefitContribution(Optional companyBenefitContribution) { - Utils.checkNotNull(companyBenefitContribution, "companyBenefitContribution"); - this.companyBenefitContribution = companyBenefitContribution; - return this; - } - - - /** - * The sum of employee benefit deduction for this employee given the period of time and the benefit - * type. - */ - public Builder benefitDeduction(String benefitDeduction) { - Utils.checkNotNull(benefitDeduction, "benefitDeduction"); - this.benefitDeduction = Optional.ofNullable(benefitDeduction); - return this; - } - - /** - * The sum of employee benefit deduction for this employee given the period of time and the benefit - * type. - */ - public Builder benefitDeduction(Optional benefitDeduction) { - Utils.checkNotNull(benefitDeduction, "benefitDeduction"); - this.benefitDeduction = benefitDeduction; - return this; - } - - - /** - * The sum of company contribution for this employee given the period of time and the benefit type. - */ - public Builder benefitContribution(String benefitContribution) { - Utils.checkNotNull(benefitContribution, "benefitContribution"); - this.benefitContribution = Optional.ofNullable(benefitContribution); - return this; - } - - /** - * The sum of company contribution for this employee given the period of time and the benefit type. - */ - public Builder benefitContribution(Optional benefitContribution) { - Utils.checkNotNull(benefitContribution, "benefitContribution"); - this.benefitContribution = benefitContribution; - return this; - } - - - /** - * Gross pay for this employee given the period of time. - */ - public Builder grossPay(String grossPay) { - Utils.checkNotNull(grossPay, "grossPay"); - this.grossPay = Optional.ofNullable(grossPay); - return this; - } - - /** - * Gross pay for this employee given the period of time. - */ - public Builder grossPay(Optional grossPay) { - Utils.checkNotNull(grossPay, "grossPay"); - this.grossPay = grossPay; - return this; - } - - - /** - * Total imputed pay for this employee given the period of time (not scoped to a benefit type). - */ - public Builder imputedPay(String imputedPay) { - Utils.checkNotNull(imputedPay, "imputedPay"); - this.imputedPay = Optional.ofNullable(imputedPay); - return this; - } - - /** - * Total imputed pay for this employee given the period of time (not scoped to a benefit type). - */ - public Builder imputedPay(Optional imputedPay) { - Utils.checkNotNull(imputedPay, "imputedPay"); - this.imputedPay = imputedPay; - return this; - } - - - public Builder payrollBenefits(List payrollBenefits) { - Utils.checkNotNull(payrollBenefits, "payrollBenefits"); - this.payrollBenefits = Optional.ofNullable(payrollBenefits); - return this; - } - - public Builder payrollBenefits(Optional> payrollBenefits) { - Utils.checkNotNull(payrollBenefits, "payrollBenefits"); - this.payrollBenefits = payrollBenefits; - return this; - } - - public BenefitSummaryEmployees build() { - - return new BenefitSummaryEmployees( - uuid, companyBenefitDeduction, companyBenefitContribution, - benefitDeduction, benefitContribution, grossPay, - imputedPay, payrollBenefits); - } - - } -} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BenefitTypeRequirements.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BenefitTypeRequirements.java index e22a013de..e26f8952f 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BenefitTypeRequirements.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BenefitTypeRequirements.java @@ -28,7 +28,7 @@ public class BenefitTypeRequirements { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("contribution") - private Optional contribution; + private Optional contribution; /** * Whether the employee deduction amount should be treated as a percentage to be deducted from each @@ -82,7 +82,7 @@ public class BenefitTypeRequirements { @JsonCreator public BenefitTypeRequirements( @JsonProperty("employee_deduction") Optional employeeDeduction, - @JsonProperty("contribution") Optional contribution, + @JsonProperty("contribution") Optional contribution, @JsonProperty("deduct_as_percentage") Optional deductAsPercentage, @JsonProperty("catch_up") Optional catchUp, @JsonProperty("limit_option") Optional limitOption, @@ -127,8 +127,8 @@ public Optional employeeDeduction() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional contribution() { - return (Optional) contribution; + public Optional contribution() { + return (Optional) contribution; } /** @@ -219,7 +219,7 @@ public BenefitTypeRequirements withEmployeeDeduction(Optional contribution) { + public BenefitTypeRequirements withContribution(Optional contribution) { Utils.checkNotNull(contribution, "contribution"); this.contribution = contribution; return this; @@ -409,7 +409,7 @@ public final static class Builder { private Optional employeeDeduction = Optional.empty(); - private Optional contribution = Optional.empty(); + private Optional contribution = Optional.empty(); private Optional deductAsPercentage = Optional.empty(); @@ -450,7 +450,7 @@ public Builder employeeDeduction(Optional employeeD /** * An object representing the type and value of the company contribution. */ - public Builder contribution(BenefitTypeRequirementsContribution contribution) { + public Builder contribution(Contribution contribution) { Utils.checkNotNull(contribution, "contribution"); this.contribution = Optional.ofNullable(contribution); return this; @@ -459,7 +459,7 @@ public Builder contribution(BenefitTypeRequirementsContribution contribution) { /** * An object representing the type and value of the company contribution. */ - public Builder contribution(Optional contribution) { + public Builder contribution(Optional contribution) { Utils.checkNotNull(contribution, "contribution"); this.contribution = contribution; return this; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BenefitTypeRequirementsContribution.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BenefitTypeRequirementsContribution.java deleted file mode 100644 index 7d9a79ec6..000000000 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BenefitTypeRequirementsContribution.java +++ /dev/null @@ -1,251 +0,0 @@ -/* - * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - */ -package com.gusto.embedded_api_v_2025_11_15.models.components; - -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonIgnore; -import com.fasterxml.jackson.annotation.JsonInclude.Include; -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.gusto.embedded_api_v_2025_11_15.utils.Utils; -import java.lang.Boolean; -import java.lang.Override; -import java.lang.String; -import java.lang.SuppressWarnings; -import java.util.List; -import java.util.Optional; -import org.openapitools.jackson.nullable.JsonNullable; - -/** - * BenefitTypeRequirementsContribution - * - *

    An object representing the type and value of the company contribution. - */ -public class BenefitTypeRequirementsContribution { - - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("required") - private Optional required; - - - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("editable") - private Optional editable; - - - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("default_value") - private JsonNullable defaultValue; - - - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("choices") - private JsonNullable> choices; - - @JsonCreator - public BenefitTypeRequirementsContribution( - @JsonProperty("required") Optional required, - @JsonProperty("editable") Optional editable, - @JsonProperty("default_value") JsonNullable defaultValue, - @JsonProperty("choices") JsonNullable> choices) { - Utils.checkNotNull(required, "required"); - Utils.checkNotNull(editable, "editable"); - Utils.checkNotNull(defaultValue, "defaultValue"); - Utils.checkNotNull(choices, "choices"); - this.required = required; - this.editable = editable; - this.defaultValue = defaultValue; - this.choices = choices; - } - - public BenefitTypeRequirementsContribution() { - this(Optional.empty(), Optional.empty(), JsonNullable.undefined(), - JsonNullable.undefined()); - } - - @JsonIgnore - public Optional required() { - return required; - } - - @JsonIgnore - public Optional editable() { - return editable; - } - - @SuppressWarnings("unchecked") - @JsonIgnore - public JsonNullable defaultValue() { - return (JsonNullable) defaultValue; - } - - @SuppressWarnings("unchecked") - @JsonIgnore - public JsonNullable> choices() { - return (JsonNullable>) choices; - } - - public static Builder builder() { - return new Builder(); - } - - - public BenefitTypeRequirementsContribution withRequired(boolean required) { - Utils.checkNotNull(required, "required"); - this.required = Optional.ofNullable(required); - return this; - } - - - public BenefitTypeRequirementsContribution withRequired(Optional required) { - Utils.checkNotNull(required, "required"); - this.required = required; - return this; - } - - public BenefitTypeRequirementsContribution withEditable(boolean editable) { - Utils.checkNotNull(editable, "editable"); - this.editable = Optional.ofNullable(editable); - return this; - } - - - public BenefitTypeRequirementsContribution withEditable(Optional editable) { - Utils.checkNotNull(editable, "editable"); - this.editable = editable; - return this; - } - - public BenefitTypeRequirementsContribution withDefaultValue(BenefitTypeRequirementsDefaultValue defaultValue) { - Utils.checkNotNull(defaultValue, "defaultValue"); - this.defaultValue = JsonNullable.of(defaultValue); - return this; - } - - public BenefitTypeRequirementsContribution withDefaultValue(JsonNullable defaultValue) { - Utils.checkNotNull(defaultValue, "defaultValue"); - this.defaultValue = defaultValue; - return this; - } - - public BenefitTypeRequirementsContribution withChoices(List choices) { - Utils.checkNotNull(choices, "choices"); - this.choices = JsonNullable.of(choices); - return this; - } - - public BenefitTypeRequirementsContribution withChoices(JsonNullable> choices) { - Utils.checkNotNull(choices, "choices"); - this.choices = choices; - return this; - } - - @Override - public boolean equals(java.lang.Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - BenefitTypeRequirementsContribution other = (BenefitTypeRequirementsContribution) o; - return - Utils.enhancedDeepEquals(this.required, other.required) && - Utils.enhancedDeepEquals(this.editable, other.editable) && - Utils.enhancedDeepEquals(this.defaultValue, other.defaultValue) && - Utils.enhancedDeepEquals(this.choices, other.choices); - } - - @Override - public int hashCode() { - return Utils.enhancedHash( - required, editable, defaultValue, - choices); - } - - @Override - public String toString() { - return Utils.toString(BenefitTypeRequirementsContribution.class, - "required", required, - "editable", editable, - "defaultValue", defaultValue, - "choices", choices); - } - - @SuppressWarnings("UnusedReturnValue") - public final static class Builder { - - private Optional required = Optional.empty(); - - private Optional editable = Optional.empty(); - - private JsonNullable defaultValue = JsonNullable.undefined(); - - private JsonNullable> choices = JsonNullable.undefined(); - - private Builder() { - // force use of static builder() method - } - - - public Builder required(boolean required) { - Utils.checkNotNull(required, "required"); - this.required = Optional.ofNullable(required); - return this; - } - - public Builder required(Optional required) { - Utils.checkNotNull(required, "required"); - this.required = required; - return this; - } - - - public Builder editable(boolean editable) { - Utils.checkNotNull(editable, "editable"); - this.editable = Optional.ofNullable(editable); - return this; - } - - public Builder editable(Optional editable) { - Utils.checkNotNull(editable, "editable"); - this.editable = editable; - return this; - } - - - public Builder defaultValue(BenefitTypeRequirementsDefaultValue defaultValue) { - Utils.checkNotNull(defaultValue, "defaultValue"); - this.defaultValue = JsonNullable.of(defaultValue); - return this; - } - - public Builder defaultValue(JsonNullable defaultValue) { - Utils.checkNotNull(defaultValue, "defaultValue"); - this.defaultValue = defaultValue; - return this; - } - - - public Builder choices(List choices) { - Utils.checkNotNull(choices, "choices"); - this.choices = JsonNullable.of(choices); - return this; - } - - public Builder choices(JsonNullable> choices) { - Utils.checkNotNull(choices, "choices"); - this.choices = choices; - return this; - } - - public BenefitTypeRequirementsContribution build() { - - return new BenefitTypeRequirementsContribution( - required, editable, defaultValue, - choices); - } - - } -} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Blockers.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Blockers.java index 8a5738ff1..149b4ab16 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Blockers.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Blockers.java @@ -11,52 +11,73 @@ import com.gusto.embedded_api_v_2025_11_15.utils.Utils; import java.lang.Override; import java.lang.String; +import java.lang.SuppressWarnings; import java.util.Optional; public class Blockers { /** - * A machine-readable blocker key (e.g. `missing_bank_account`). + * The employee field affected. */ @JsonInclude(Include.NON_ABSENT) - @JsonProperty("type") - private Optional type; + @JsonProperty("field") + private Optional field; + + /** + * Category of the blocker. See the array-level description for resolution guidance. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("category") + private Optional category; /** * Human-readable description of the blocker. */ @JsonInclude(Include.NON_ABSENT) - @JsonProperty("description") - private Optional description; + @JsonProperty("message") + private Optional message; @JsonCreator public Blockers( - @JsonProperty("type") Optional type, - @JsonProperty("description") Optional description) { - Utils.checkNotNull(type, "type"); - Utils.checkNotNull(description, "description"); - this.type = type; - this.description = description; + @JsonProperty("field") Optional field, + @JsonProperty("category") Optional category, + @JsonProperty("message") Optional message) { + Utils.checkNotNull(field, "field"); + Utils.checkNotNull(category, "category"); + Utils.checkNotNull(message, "message"); + this.field = field; + this.category = category; + this.message = message; } public Blockers() { - this(Optional.empty(), Optional.empty()); + this(Optional.empty(), Optional.empty(), Optional.empty()); + } + + /** + * The employee field affected. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional field() { + return (Optional) field; } /** - * A machine-readable blocker key (e.g. `missing_bank_account`). + * Category of the blocker. See the array-level description for resolution guidance. */ + @SuppressWarnings("unchecked") @JsonIgnore - public Optional type() { - return type; + public Optional category() { + return (Optional) category; } /** * Human-readable description of the blocker. */ @JsonIgnore - public Optional description() { - return description; + public Optional message() { + return message; } public static Builder builder() { @@ -65,30 +86,49 @@ public static Builder builder() { /** - * A machine-readable blocker key (e.g. `missing_bank_account`). + * The employee field affected. + */ + public Blockers withField(Field field) { + Utils.checkNotNull(field, "field"); + this.field = Optional.ofNullable(field); + return this; + } + + + /** + * The employee field affected. + */ + public Blockers withField(Optional field) { + Utils.checkNotNull(field, "field"); + this.field = field; + return this; + } + + /** + * Category of the blocker. See the array-level description for resolution guidance. */ - public Blockers withType(String type) { - Utils.checkNotNull(type, "type"); - this.type = Optional.ofNullable(type); + public Blockers withCategory(EmployeeOnboardingStatusCategory category) { + Utils.checkNotNull(category, "category"); + this.category = Optional.ofNullable(category); return this; } /** - * A machine-readable blocker key (e.g. `missing_bank_account`). + * Category of the blocker. See the array-level description for resolution guidance. */ - public Blockers withType(Optional type) { - Utils.checkNotNull(type, "type"); - this.type = type; + public Blockers withCategory(Optional category) { + Utils.checkNotNull(category, "category"); + this.category = category; return this; } /** * Human-readable description of the blocker. */ - public Blockers withDescription(String description) { - Utils.checkNotNull(description, "description"); - this.description = Optional.ofNullable(description); + public Blockers withMessage(String message) { + Utils.checkNotNull(message, "message"); + this.message = Optional.ofNullable(message); return this; } @@ -96,9 +136,9 @@ public Blockers withDescription(String description) { /** * Human-readable description of the blocker. */ - public Blockers withDescription(Optional description) { - Utils.checkNotNull(description, "description"); - this.description = description; + public Blockers withMessage(Optional message) { + Utils.checkNotNull(message, "message"); + this.message = message; return this; } @@ -112,29 +152,33 @@ public boolean equals(java.lang.Object o) { } Blockers other = (Blockers) o; return - Utils.enhancedDeepEquals(this.type, other.type) && - Utils.enhancedDeepEquals(this.description, other.description); + Utils.enhancedDeepEquals(this.field, other.field) && + Utils.enhancedDeepEquals(this.category, other.category) && + Utils.enhancedDeepEquals(this.message, other.message); } @Override public int hashCode() { return Utils.enhancedHash( - type, description); + field, category, message); } @Override public String toString() { return Utils.toString(Blockers.class, - "type", type, - "description", description); + "field", field, + "category", category, + "message", message); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private Optional type = Optional.empty(); + private Optional field = Optional.empty(); - private Optional description = Optional.empty(); + private Optional category = Optional.empty(); + + private Optional message = Optional.empty(); private Builder() { // force use of static builder() method @@ -142,20 +186,39 @@ private Builder() { /** - * A machine-readable blocker key (e.g. `missing_bank_account`). + * The employee field affected. + */ + public Builder field(Field field) { + Utils.checkNotNull(field, "field"); + this.field = Optional.ofNullable(field); + return this; + } + + /** + * The employee field affected. + */ + public Builder field(Optional field) { + Utils.checkNotNull(field, "field"); + this.field = field; + return this; + } + + + /** + * Category of the blocker. See the array-level description for resolution guidance. */ - public Builder type(String type) { - Utils.checkNotNull(type, "type"); - this.type = Optional.ofNullable(type); + public Builder category(EmployeeOnboardingStatusCategory category) { + Utils.checkNotNull(category, "category"); + this.category = Optional.ofNullable(category); return this; } /** - * A machine-readable blocker key (e.g. `missing_bank_account`). + * Category of the blocker. See the array-level description for resolution guidance. */ - public Builder type(Optional type) { - Utils.checkNotNull(type, "type"); - this.type = type; + public Builder category(Optional category) { + Utils.checkNotNull(category, "category"); + this.category = category; return this; } @@ -163,25 +226,25 @@ public Builder type(Optional type) { /** * Human-readable description of the blocker. */ - public Builder description(String description) { - Utils.checkNotNull(description, "description"); - this.description = Optional.ofNullable(description); + public Builder message(String message) { + Utils.checkNotNull(message, "message"); + this.message = Optional.ofNullable(message); return this; } /** * Human-readable description of the blocker. */ - public Builder description(Optional description) { - Utils.checkNotNull(description, "description"); - this.description = description; + public Builder message(Optional message) { + Utils.checkNotNull(message, "message"); + this.message = message; return this; } public Blockers build() { return new Blockers( - type, description); + field, category, message); } } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BulkReport.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BulkReport.java new file mode 100644 index 000000000..5efd9865c --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BulkReport.java @@ -0,0 +1,559 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Long; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.time.OffsetDateTime; +import java.util.List; +import java.util.Optional; +import org.openapitools.jackson.nullable.JsonNullable; + + +public class BulkReport { + /** + * Unique identifier of the bulk report batch. + */ + @JsonProperty("uuid") + private String uuid; + + /** + * Overall batch status. `pending`/`processing` while in progress; once finished, `success` (all + * reports succeeded), `partial_success` (some succeeded, some failed), or `failed` (none succeeded). + */ + @JsonProperty("status") + private BulkReportStatus status; + + /** + * When the batch was accepted. + */ + @JsonProperty("submitted_at") + private OffsetDateTime submittedAt; + + /** + * When the batch reached a terminal state. Null while non-terminal. + */ + @JsonInclude(Include.ALWAYS) + @JsonProperty("completed_at") + private Optional completedAt; + + /** + * How many reports the partner asked for in this batch. + */ + @JsonProperty("submitted_items") + private long submittedItems; + + /** + * UUID of the partner that owns this batch. Returned only once the batch has finished; omitted while + * in progress. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("partner_uuid") + private Optional partnerUuid; + + /** + * How many reports succeeded. Returned only once the batch has finished; omitted while in progress. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("processed_items") + private Optional processedItems; + + /** + * Signed S3 URL to a zip containing every successfully-generated report, valid for 10 minutes. + * Returned only once the batch has finished; omitted while in progress. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("report_url") + private JsonNullable reportUrl; + + /** + * Per-company breakdown. Returned only once the batch has finished; omitted while in progress. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("companies") + private Optional> companies; + + @JsonCreator + public BulkReport( + @JsonProperty("uuid") String uuid, + @JsonProperty("status") BulkReportStatus status, + @JsonProperty("submitted_at") OffsetDateTime submittedAt, + @JsonProperty("completed_at") Optional completedAt, + @JsonProperty("submitted_items") long submittedItems, + @JsonProperty("partner_uuid") Optional partnerUuid, + @JsonProperty("processed_items") Optional processedItems, + @JsonProperty("report_url") JsonNullable reportUrl, + @JsonProperty("companies") Optional> companies) { + Utils.checkNotNull(uuid, "uuid"); + Utils.checkNotNull(status, "status"); + Utils.checkNotNull(submittedAt, "submittedAt"); + Utils.checkNotNull(completedAt, "completedAt"); + Utils.checkNotNull(submittedItems, "submittedItems"); + Utils.checkNotNull(partnerUuid, "partnerUuid"); + Utils.checkNotNull(processedItems, "processedItems"); + Utils.checkNotNull(reportUrl, "reportUrl"); + Utils.checkNotNull(companies, "companies"); + this.uuid = uuid; + this.status = status; + this.submittedAt = submittedAt; + this.completedAt = completedAt; + this.submittedItems = submittedItems; + this.partnerUuid = partnerUuid; + this.processedItems = processedItems; + this.reportUrl = reportUrl; + this.companies = companies; + } + + public BulkReport( + String uuid, + BulkReportStatus status, + OffsetDateTime submittedAt, + long submittedItems) { + this(uuid, status, submittedAt, + Optional.empty(), submittedItems, Optional.empty(), + Optional.empty(), JsonNullable.undefined(), Optional.empty()); + } + + /** + * Unique identifier of the bulk report batch. + */ + @JsonIgnore + public String uuid() { + return uuid; + } + + /** + * Overall batch status. `pending`/`processing` while in progress; once finished, `success` (all + * reports succeeded), `partial_success` (some succeeded, some failed), or `failed` (none succeeded). + */ + @JsonIgnore + public BulkReportStatus status() { + return status; + } + + /** + * When the batch was accepted. + */ + @JsonIgnore + public OffsetDateTime submittedAt() { + return submittedAt; + } + + /** + * When the batch reached a terminal state. Null while non-terminal. + */ + @JsonIgnore + public Optional completedAt() { + return completedAt; + } + + /** + * How many reports the partner asked for in this batch. + */ + @JsonIgnore + public long submittedItems() { + return submittedItems; + } + + /** + * UUID of the partner that owns this batch. Returned only once the batch has finished; omitted while + * in progress. + */ + @JsonIgnore + public Optional partnerUuid() { + return partnerUuid; + } + + /** + * How many reports succeeded. Returned only once the batch has finished; omitted while in progress. + */ + @JsonIgnore + public Optional processedItems() { + return processedItems; + } + + /** + * Signed S3 URL to a zip containing every successfully-generated report, valid for 10 minutes. + * Returned only once the batch has finished; omitted while in progress. + */ + @JsonIgnore + public JsonNullable reportUrl() { + return reportUrl; + } + + /** + * Per-company breakdown. Returned only once the batch has finished; omitted while in progress. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> companies() { + return (Optional>) companies; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Unique identifier of the bulk report batch. + */ + public BulkReport withUuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + /** + * Overall batch status. `pending`/`processing` while in progress; once finished, `success` (all + * reports succeeded), `partial_success` (some succeeded, some failed), or `failed` (none succeeded). + */ + public BulkReport withStatus(BulkReportStatus status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + /** + * When the batch was accepted. + */ + public BulkReport withSubmittedAt(OffsetDateTime submittedAt) { + Utils.checkNotNull(submittedAt, "submittedAt"); + this.submittedAt = submittedAt; + return this; + } + + /** + * When the batch reached a terminal state. Null while non-terminal. + */ + public BulkReport withCompletedAt(OffsetDateTime completedAt) { + Utils.checkNotNull(completedAt, "completedAt"); + this.completedAt = Optional.ofNullable(completedAt); + return this; + } + + + /** + * When the batch reached a terminal state. Null while non-terminal. + */ + public BulkReport withCompletedAt(Optional completedAt) { + Utils.checkNotNull(completedAt, "completedAt"); + this.completedAt = completedAt; + return this; + } + + /** + * How many reports the partner asked for in this batch. + */ + public BulkReport withSubmittedItems(long submittedItems) { + Utils.checkNotNull(submittedItems, "submittedItems"); + this.submittedItems = submittedItems; + return this; + } + + /** + * UUID of the partner that owns this batch. Returned only once the batch has finished; omitted while + * in progress. + */ + public BulkReport withPartnerUuid(String partnerUuid) { + Utils.checkNotNull(partnerUuid, "partnerUuid"); + this.partnerUuid = Optional.ofNullable(partnerUuid); + return this; + } + + + /** + * UUID of the partner that owns this batch. Returned only once the batch has finished; omitted while + * in progress. + */ + public BulkReport withPartnerUuid(Optional partnerUuid) { + Utils.checkNotNull(partnerUuid, "partnerUuid"); + this.partnerUuid = partnerUuid; + return this; + } + + /** + * How many reports succeeded. Returned only once the batch has finished; omitted while in progress. + */ + public BulkReport withProcessedItems(long processedItems) { + Utils.checkNotNull(processedItems, "processedItems"); + this.processedItems = Optional.ofNullable(processedItems); + return this; + } + + + /** + * How many reports succeeded. Returned only once the batch has finished; omitted while in progress. + */ + public BulkReport withProcessedItems(Optional processedItems) { + Utils.checkNotNull(processedItems, "processedItems"); + this.processedItems = processedItems; + return this; + } + + /** + * Signed S3 URL to a zip containing every successfully-generated report, valid for 10 minutes. + * Returned only once the batch has finished; omitted while in progress. + */ + public BulkReport withReportUrl(String reportUrl) { + Utils.checkNotNull(reportUrl, "reportUrl"); + this.reportUrl = JsonNullable.of(reportUrl); + return this; + } + + /** + * Signed S3 URL to a zip containing every successfully-generated report, valid for 10 minutes. + * Returned only once the batch has finished; omitted while in progress. + */ + public BulkReport withReportUrl(JsonNullable reportUrl) { + Utils.checkNotNull(reportUrl, "reportUrl"); + this.reportUrl = reportUrl; + return this; + } + + /** + * Per-company breakdown. Returned only once the batch has finished; omitted while in progress. + */ + public BulkReport withCompanies(List companies) { + Utils.checkNotNull(companies, "companies"); + this.companies = Optional.ofNullable(companies); + return this; + } + + + /** + * Per-company breakdown. Returned only once the batch has finished; omitted while in progress. + */ + public BulkReport withCompanies(Optional> companies) { + Utils.checkNotNull(companies, "companies"); + this.companies = companies; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + BulkReport other = (BulkReport) o; + return + Utils.enhancedDeepEquals(this.uuid, other.uuid) && + Utils.enhancedDeepEquals(this.status, other.status) && + Utils.enhancedDeepEquals(this.submittedAt, other.submittedAt) && + Utils.enhancedDeepEquals(this.completedAt, other.completedAt) && + Utils.enhancedDeepEquals(this.submittedItems, other.submittedItems) && + Utils.enhancedDeepEquals(this.partnerUuid, other.partnerUuid) && + Utils.enhancedDeepEquals(this.processedItems, other.processedItems) && + Utils.enhancedDeepEquals(this.reportUrl, other.reportUrl) && + Utils.enhancedDeepEquals(this.companies, other.companies); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + uuid, status, submittedAt, + completedAt, submittedItems, partnerUuid, + processedItems, reportUrl, companies); + } + + @Override + public String toString() { + return Utils.toString(BulkReport.class, + "uuid", uuid, + "status", status, + "submittedAt", submittedAt, + "completedAt", completedAt, + "submittedItems", submittedItems, + "partnerUuid", partnerUuid, + "processedItems", processedItems, + "reportUrl", reportUrl, + "companies", companies); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String uuid; + + private BulkReportStatus status; + + private OffsetDateTime submittedAt; + + private Optional completedAt = Optional.empty(); + + private Long submittedItems; + + private Optional partnerUuid = Optional.empty(); + + private Optional processedItems = Optional.empty(); + + private JsonNullable reportUrl = JsonNullable.undefined(); + + private Optional> companies = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * Unique identifier of the bulk report batch. + */ + public Builder uuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + + /** + * Overall batch status. `pending`/`processing` while in progress; once finished, `success` (all + * reports succeeded), `partial_success` (some succeeded, some failed), or `failed` (none succeeded). + */ + public Builder status(BulkReportStatus status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + + /** + * When the batch was accepted. + */ + public Builder submittedAt(OffsetDateTime submittedAt) { + Utils.checkNotNull(submittedAt, "submittedAt"); + this.submittedAt = submittedAt; + return this; + } + + + /** + * When the batch reached a terminal state. Null while non-terminal. + */ + public Builder completedAt(OffsetDateTime completedAt) { + Utils.checkNotNull(completedAt, "completedAt"); + this.completedAt = Optional.ofNullable(completedAt); + return this; + } + + /** + * When the batch reached a terminal state. Null while non-terminal. + */ + public Builder completedAt(Optional completedAt) { + Utils.checkNotNull(completedAt, "completedAt"); + this.completedAt = completedAt; + return this; + } + + + /** + * How many reports the partner asked for in this batch. + */ + public Builder submittedItems(long submittedItems) { + Utils.checkNotNull(submittedItems, "submittedItems"); + this.submittedItems = submittedItems; + return this; + } + + + /** + * UUID of the partner that owns this batch. Returned only once the batch has finished; omitted while + * in progress. + */ + public Builder partnerUuid(String partnerUuid) { + Utils.checkNotNull(partnerUuid, "partnerUuid"); + this.partnerUuid = Optional.ofNullable(partnerUuid); + return this; + } + + /** + * UUID of the partner that owns this batch. Returned only once the batch has finished; omitted while + * in progress. + */ + public Builder partnerUuid(Optional partnerUuid) { + Utils.checkNotNull(partnerUuid, "partnerUuid"); + this.partnerUuid = partnerUuid; + return this; + } + + + /** + * How many reports succeeded. Returned only once the batch has finished; omitted while in progress. + */ + public Builder processedItems(long processedItems) { + Utils.checkNotNull(processedItems, "processedItems"); + this.processedItems = Optional.ofNullable(processedItems); + return this; + } + + /** + * How many reports succeeded. Returned only once the batch has finished; omitted while in progress. + */ + public Builder processedItems(Optional processedItems) { + Utils.checkNotNull(processedItems, "processedItems"); + this.processedItems = processedItems; + return this; + } + + + /** + * Signed S3 URL to a zip containing every successfully-generated report, valid for 10 minutes. + * Returned only once the batch has finished; omitted while in progress. + */ + public Builder reportUrl(String reportUrl) { + Utils.checkNotNull(reportUrl, "reportUrl"); + this.reportUrl = JsonNullable.of(reportUrl); + return this; + } + + /** + * Signed S3 URL to a zip containing every successfully-generated report, valid for 10 minutes. + * Returned only once the batch has finished; omitted while in progress. + */ + public Builder reportUrl(JsonNullable reportUrl) { + Utils.checkNotNull(reportUrl, "reportUrl"); + this.reportUrl = reportUrl; + return this; + } + + + /** + * Per-company breakdown. Returned only once the batch has finished; omitted while in progress. + */ + public Builder companies(List companies) { + Utils.checkNotNull(companies, "companies"); + this.companies = Optional.ofNullable(companies); + return this; + } + + /** + * Per-company breakdown. Returned only once the batch has finished; omitted while in progress. + */ + public Builder companies(Optional> companies) { + Utils.checkNotNull(companies, "companies"); + this.companies = companies; + return this; + } + + public BulkReport build() { + + return new BulkReport( + uuid, status, submittedAt, + completedAt, submittedItems, partnerUuid, + processedItems, reportUrl, companies); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BulkReportBody.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BulkReportBody.java new file mode 100644 index 000000000..8690affbc --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BulkReportBody.java @@ -0,0 +1,110 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.util.List; + +/** + * BulkReportBody + * + *

    Each `batch` item is a `custom_report` or a `general_ledger` report. + */ +public class BulkReportBody { + /** + * One report per item. Up to 25 items per batch, across any combination of companies the partner is + * mapped to. + */ + @JsonProperty("batch") + private List batch; + + @JsonCreator + public BulkReportBody( + @JsonProperty("batch") List batch) { + Utils.checkNotNull(batch, "batch"); + this.batch = batch; + } + + /** + * One report per item. Up to 25 items per batch, across any combination of companies the partner is + * mapped to. + */ + @JsonIgnore + public List batch() { + return batch; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * One report per item. Up to 25 items per batch, across any combination of companies the partner is + * mapped to. + */ + public BulkReportBody withBatch(List batch) { + Utils.checkNotNull(batch, "batch"); + this.batch = batch; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + BulkReportBody other = (BulkReportBody) o; + return + Utils.enhancedDeepEquals(this.batch, other.batch); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + batch); + } + + @Override + public String toString() { + return Utils.toString(BulkReportBody.class, + "batch", batch); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private List batch; + + private Builder() { + // force use of static builder() method + } + + + /** + * One report per item. Up to 25 items per batch, across any combination of companies the partner is + * mapped to. + */ + public Builder batch(List batch) { + Utils.checkNotNull(batch, "batch"); + this.batch = batch; + return this; + } + + public BulkReportBody build() { + + return new BulkReportBody( + batch); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BulkReportCompany.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BulkReportCompany.java new file mode 100644 index 000000000..09477ce03 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BulkReportCompany.java @@ -0,0 +1,191 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.util.List; + +/** + * BulkReportCompany + * + *

    Results for a single company in a bulk report batch. + */ +public class BulkReportCompany { + /** + * UUID of the company. + */ + @JsonProperty("company_uuid") + private String companyUuid; + + /** + * This company's overall status across its `reports`: + * - `success`: every report succeeded + * - `partial_success`: some succeeded, some failed + * - `failed`: every report failed + * - `pending`: at least one report is still being generated + */ + @JsonProperty("status") + private BulkReportCompanyStatus status; + + + @JsonProperty("reports") + private List reports; + + @JsonCreator + public BulkReportCompany( + @JsonProperty("company_uuid") String companyUuid, + @JsonProperty("status") BulkReportCompanyStatus status, + @JsonProperty("reports") List reports) { + Utils.checkNotNull(companyUuid, "companyUuid"); + Utils.checkNotNull(status, "status"); + Utils.checkNotNull(reports, "reports"); + this.companyUuid = companyUuid; + this.status = status; + this.reports = reports; + } + + /** + * UUID of the company. + */ + @JsonIgnore + public String companyUuid() { + return companyUuid; + } + + /** + * This company's overall status across its `reports`: + * - `success`: every report succeeded + * - `partial_success`: some succeeded, some failed + * - `failed`: every report failed + * - `pending`: at least one report is still being generated + */ + @JsonIgnore + public BulkReportCompanyStatus status() { + return status; + } + + @JsonIgnore + public List reports() { + return reports; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * UUID of the company. + */ + public BulkReportCompany withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + /** + * This company's overall status across its `reports`: + * - `success`: every report succeeded + * - `partial_success`: some succeeded, some failed + * - `failed`: every report failed + * - `pending`: at least one report is still being generated + */ + public BulkReportCompany withStatus(BulkReportCompanyStatus status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + public BulkReportCompany withReports(List reports) { + Utils.checkNotNull(reports, "reports"); + this.reports = reports; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + BulkReportCompany other = (BulkReportCompany) o; + return + Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && + Utils.enhancedDeepEquals(this.status, other.status) && + Utils.enhancedDeepEquals(this.reports, other.reports); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + companyUuid, status, reports); + } + + @Override + public String toString() { + return Utils.toString(BulkReportCompany.class, + "companyUuid", companyUuid, + "status", status, + "reports", reports); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String companyUuid; + + private BulkReportCompanyStatus status; + + private List reports; + + private Builder() { + // force use of static builder() method + } + + + /** + * UUID of the company. + */ + public Builder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + + /** + * This company's overall status across its `reports`: + * - `success`: every report succeeded + * - `partial_success`: some succeeded, some failed + * - `failed`: every report failed + * - `pending`: at least one report is still being generated + */ + public Builder status(BulkReportCompanyStatus status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + + public Builder reports(List reports) { + Utils.checkNotNull(reports, "reports"); + this.reports = reports; + return this; + } + + public BulkReportCompany build() { + + return new BulkReportCompany( + companyUuid, status, reports); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BulkReportCompanyStatus.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BulkReportCompanyStatus.java new file mode 100644 index 000000000..556896188 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BulkReportCompanyStatus.java @@ -0,0 +1,46 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * BulkReportCompanyStatus + * + *

    This company's overall status across its `reports`: + * - `success`: every report succeeded + * - `partial_success`: some succeeded, some failed + * - `failed`: every report failed + * - `pending`: at least one report is still being generated + */ +public enum BulkReportCompanyStatus { + PENDING("pending"), + SUCCESS("success"), + PARTIAL_SUCCESS("partial_success"), + FAILED("failed"); + + @JsonValue + private final String value; + + BulkReportCompanyStatus(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (BulkReportCompanyStatus o: BulkReportCompanyStatus.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BulkReportCustomReportItem.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BulkReportCustomReportItem.java new file mode 100644 index 000000000..f2b5e6705 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BulkReportCustomReportItem.java @@ -0,0 +1,1004 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2025_11_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Boolean; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.time.LocalDate; +import java.util.List; +import java.util.Optional; +import org.openapitools.jackson.nullable.JsonNullable; + +/** + * BulkReportCustomReportItem + * + *

    A custom report entry in a bulk batch. + */ +public class BulkReportCustomReportItem implements BulkReportItem { + /** + * UUID of the company to generate the report for. The partner must be mapped to this company. + */ + @JsonProperty("company_uuid") + private String companyUuid; + + /** + * Identifies this batch item as a custom report. + */ + @JsonProperty("report_type") + private ReportType reportType; + + /** + * Columns to include in the report. + */ + @JsonProperty("columns") + private List columns; + + /** + * How to group the report. If omitted, defaults are derived from the requested `columns`. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("groupings") + private Optional> groupings; + + /** + * The type of file to generate. + */ + @JsonProperty("file_type") + private FileType fileType; + + /** + * Display name for the report. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("custom_name") + private Optional customName; + + /** + * Whether to include subtotals and grand totals. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("with_totals") + private Optional withTotals; + + /** + * Which payroll date `start_date` and `end_date` filter against. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("date_filter_type") + private Optional dateFilterType; + + /** + * Start date of data to filter by. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("start_date") + private Optional startDate; + + /** + * End date of data to filter by. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("end_date") + private Optional endDate; + + /** + * Payment method to filter by. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("payment_method") + private Optional paymentMethod; + + /** + * Employee employment type to filter by. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("employment_type") + private Optional employmentType; + + /** + * Employee employment status to filter by. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("employment_status") + private Optional employmentStatus; + + /** + * Employees to filter by. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("employee_uuids") + private JsonNullable> employeeUuids; + + /** + * Departments to filter by. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("department_uuids") + private Optional> departmentUuids; + + /** + * Work addresses to filter by. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("work_address_uuids") + private Optional> workAddressUuids; + + @JsonCreator + public BulkReportCustomReportItem( + @JsonProperty("company_uuid") String companyUuid, + @JsonProperty("report_type") ReportType reportType, + @JsonProperty("columns") List columns, + @JsonProperty("groupings") Optional> groupings, + @JsonProperty("file_type") FileType fileType, + @JsonProperty("custom_name") Optional customName, + @JsonProperty("with_totals") Optional withTotals, + @JsonProperty("date_filter_type") Optional dateFilterType, + @JsonProperty("start_date") Optional startDate, + @JsonProperty("end_date") Optional endDate, + @JsonProperty("payment_method") Optional paymentMethod, + @JsonProperty("employment_type") Optional employmentType, + @JsonProperty("employment_status") Optional employmentStatus, + @JsonProperty("employee_uuids") JsonNullable> employeeUuids, + @JsonProperty("department_uuids") Optional> departmentUuids, + @JsonProperty("work_address_uuids") Optional> workAddressUuids) { + Utils.checkNotNull(companyUuid, "companyUuid"); + Utils.checkNotNull(reportType, "reportType"); + Utils.checkNotNull(columns, "columns"); + Utils.checkNotNull(groupings, "groupings"); + Utils.checkNotNull(fileType, "fileType"); + Utils.checkNotNull(customName, "customName"); + Utils.checkNotNull(withTotals, "withTotals"); + Utils.checkNotNull(dateFilterType, "dateFilterType"); + Utils.checkNotNull(startDate, "startDate"); + Utils.checkNotNull(endDate, "endDate"); + Utils.checkNotNull(paymentMethod, "paymentMethod"); + Utils.checkNotNull(employmentType, "employmentType"); + Utils.checkNotNull(employmentStatus, "employmentStatus"); + Utils.checkNotNull(employeeUuids, "employeeUuids"); + Utils.checkNotNull(departmentUuids, "departmentUuids"); + Utils.checkNotNull(workAddressUuids, "workAddressUuids"); + this.companyUuid = companyUuid; + this.reportType = reportType; + this.columns = columns; + this.groupings = groupings; + this.fileType = fileType; + this.customName = customName; + this.withTotals = withTotals; + this.dateFilterType = dateFilterType; + this.startDate = startDate; + this.endDate = endDate; + this.paymentMethod = paymentMethod; + this.employmentType = employmentType; + this.employmentStatus = employmentStatus; + this.employeeUuids = employeeUuids; + this.departmentUuids = departmentUuids; + this.workAddressUuids = workAddressUuids; + } + + public BulkReportCustomReportItem( + String companyUuid, + ReportType reportType, + List columns, + FileType fileType) { + this(companyUuid, reportType, columns, + Optional.empty(), fileType, Optional.empty(), + Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty(), JsonNullable.undefined(), Optional.empty(), + Optional.empty()); + } + + /** + * UUID of the company to generate the report for. The partner must be mapped to this company. + */ + @JsonIgnore + public String companyUuid() { + return companyUuid; + } + + /** + * Identifies this batch item as a custom report. + */ + @JsonIgnore + @Override + public String reportType() { + return Utils.discriminatorToString(reportType); + } + + /** + * Columns to include in the report. + */ + @JsonIgnore + public List columns() { + return columns; + } + + /** + * How to group the report. If omitted, defaults are derived from the requested `columns`. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> groupings() { + return (Optional>) groupings; + } + + /** + * The type of file to generate. + */ + @JsonIgnore + public FileType fileType() { + return fileType; + } + + /** + * Display name for the report. + */ + @JsonIgnore + public Optional customName() { + return customName; + } + + /** + * Whether to include subtotals and grand totals. + */ + @JsonIgnore + public Optional withTotals() { + return withTotals; + } + + /** + * Which payroll date `start_date` and `end_date` filter against. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional dateFilterType() { + return (Optional) dateFilterType; + } + + /** + * Start date of data to filter by. + */ + @JsonIgnore + public Optional startDate() { + return startDate; + } + + /** + * End date of data to filter by. + */ + @JsonIgnore + public Optional endDate() { + return endDate; + } + + /** + * Payment method to filter by. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional paymentMethod() { + return (Optional) paymentMethod; + } + + /** + * Employee employment type to filter by. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional employmentType() { + return (Optional) employmentType; + } + + /** + * Employee employment status to filter by. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional employmentStatus() { + return (Optional) employmentStatus; + } + + /** + * Employees to filter by. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public JsonNullable> employeeUuids() { + return (JsonNullable>) employeeUuids; + } + + /** + * Departments to filter by. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> departmentUuids() { + return (Optional>) departmentUuids; + } + + /** + * Work addresses to filter by. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> workAddressUuids() { + return (Optional>) workAddressUuids; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * UUID of the company to generate the report for. The partner must be mapped to this company. + */ + public BulkReportCustomReportItem withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + /** + * Identifies this batch item as a custom report. + */ + public BulkReportCustomReportItem withReportType(ReportType reportType) { + Utils.checkNotNull(reportType, "reportType"); + this.reportType = reportType; + return this; + } + + /** + * Columns to include in the report. + */ + public BulkReportCustomReportItem withColumns(List columns) { + Utils.checkNotNull(columns, "columns"); + this.columns = columns; + return this; + } + + /** + * How to group the report. If omitted, defaults are derived from the requested `columns`. + */ + public BulkReportCustomReportItem withGroupings(List groupings) { + Utils.checkNotNull(groupings, "groupings"); + this.groupings = Optional.ofNullable(groupings); + return this; + } + + + /** + * How to group the report. If omitted, defaults are derived from the requested `columns`. + */ + public BulkReportCustomReportItem withGroupings(Optional> groupings) { + Utils.checkNotNull(groupings, "groupings"); + this.groupings = groupings; + return this; + } + + /** + * The type of file to generate. + */ + public BulkReportCustomReportItem withFileType(FileType fileType) { + Utils.checkNotNull(fileType, "fileType"); + this.fileType = fileType; + return this; + } + + /** + * Display name for the report. + */ + public BulkReportCustomReportItem withCustomName(String customName) { + Utils.checkNotNull(customName, "customName"); + this.customName = Optional.ofNullable(customName); + return this; + } + + + /** + * Display name for the report. + */ + public BulkReportCustomReportItem withCustomName(Optional customName) { + Utils.checkNotNull(customName, "customName"); + this.customName = customName; + return this; + } + + /** + * Whether to include subtotals and grand totals. + */ + public BulkReportCustomReportItem withWithTotals(boolean withTotals) { + Utils.checkNotNull(withTotals, "withTotals"); + this.withTotals = Optional.ofNullable(withTotals); + return this; + } + + + /** + * Whether to include subtotals and grand totals. + */ + public BulkReportCustomReportItem withWithTotals(Optional withTotals) { + Utils.checkNotNull(withTotals, "withTotals"); + this.withTotals = withTotals; + return this; + } + + /** + * Which payroll date `start_date` and `end_date` filter against. + */ + public BulkReportCustomReportItem withDateFilterType(DateFilterType dateFilterType) { + Utils.checkNotNull(dateFilterType, "dateFilterType"); + this.dateFilterType = Optional.ofNullable(dateFilterType); + return this; + } + + + /** + * Which payroll date `start_date` and `end_date` filter against. + */ + public BulkReportCustomReportItem withDateFilterType(Optional dateFilterType) { + Utils.checkNotNull(dateFilterType, "dateFilterType"); + this.dateFilterType = dateFilterType; + return this; + } + + /** + * Start date of data to filter by. + */ + public BulkReportCustomReportItem withStartDate(LocalDate startDate) { + Utils.checkNotNull(startDate, "startDate"); + this.startDate = Optional.ofNullable(startDate); + return this; + } + + + /** + * Start date of data to filter by. + */ + public BulkReportCustomReportItem withStartDate(Optional startDate) { + Utils.checkNotNull(startDate, "startDate"); + this.startDate = startDate; + return this; + } + + /** + * End date of data to filter by. + */ + public BulkReportCustomReportItem withEndDate(LocalDate endDate) { + Utils.checkNotNull(endDate, "endDate"); + this.endDate = Optional.ofNullable(endDate); + return this; + } + + + /** + * End date of data to filter by. + */ + public BulkReportCustomReportItem withEndDate(Optional endDate) { + Utils.checkNotNull(endDate, "endDate"); + this.endDate = endDate; + return this; + } + + /** + * Payment method to filter by. + */ + public BulkReportCustomReportItem withPaymentMethod(PaymentMethod paymentMethod) { + Utils.checkNotNull(paymentMethod, "paymentMethod"); + this.paymentMethod = Optional.ofNullable(paymentMethod); + return this; + } + + + /** + * Payment method to filter by. + */ + public BulkReportCustomReportItem withPaymentMethod(Optional paymentMethod) { + Utils.checkNotNull(paymentMethod, "paymentMethod"); + this.paymentMethod = paymentMethod; + return this; + } + + /** + * Employee employment type to filter by. + */ + public BulkReportCustomReportItem withEmploymentType(EmploymentType employmentType) { + Utils.checkNotNull(employmentType, "employmentType"); + this.employmentType = Optional.ofNullable(employmentType); + return this; + } + + + /** + * Employee employment type to filter by. + */ + public BulkReportCustomReportItem withEmploymentType(Optional employmentType) { + Utils.checkNotNull(employmentType, "employmentType"); + this.employmentType = employmentType; + return this; + } + + /** + * Employee employment status to filter by. + */ + public BulkReportCustomReportItem withEmploymentStatus(EmploymentStatus employmentStatus) { + Utils.checkNotNull(employmentStatus, "employmentStatus"); + this.employmentStatus = Optional.ofNullable(employmentStatus); + return this; + } + + + /** + * Employee employment status to filter by. + */ + public BulkReportCustomReportItem withEmploymentStatus(Optional employmentStatus) { + Utils.checkNotNull(employmentStatus, "employmentStatus"); + this.employmentStatus = employmentStatus; + return this; + } + + /** + * Employees to filter by. + */ + public BulkReportCustomReportItem withEmployeeUuids(List employeeUuids) { + Utils.checkNotNull(employeeUuids, "employeeUuids"); + this.employeeUuids = JsonNullable.of(employeeUuids); + return this; + } + + /** + * Employees to filter by. + */ + public BulkReportCustomReportItem withEmployeeUuids(JsonNullable> employeeUuids) { + Utils.checkNotNull(employeeUuids, "employeeUuids"); + this.employeeUuids = employeeUuids; + return this; + } + + /** + * Departments to filter by. + */ + public BulkReportCustomReportItem withDepartmentUuids(List departmentUuids) { + Utils.checkNotNull(departmentUuids, "departmentUuids"); + this.departmentUuids = Optional.ofNullable(departmentUuids); + return this; + } + + + /** + * Departments to filter by. + */ + public BulkReportCustomReportItem withDepartmentUuids(Optional> departmentUuids) { + Utils.checkNotNull(departmentUuids, "departmentUuids"); + this.departmentUuids = departmentUuids; + return this; + } + + /** + * Work addresses to filter by. + */ + public BulkReportCustomReportItem withWorkAddressUuids(List workAddressUuids) { + Utils.checkNotNull(workAddressUuids, "workAddressUuids"); + this.workAddressUuids = Optional.ofNullable(workAddressUuids); + return this; + } + + + /** + * Work addresses to filter by. + */ + public BulkReportCustomReportItem withWorkAddressUuids(Optional> workAddressUuids) { + Utils.checkNotNull(workAddressUuids, "workAddressUuids"); + this.workAddressUuids = workAddressUuids; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + BulkReportCustomReportItem other = (BulkReportCustomReportItem) o; + return + Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && + Utils.enhancedDeepEquals(this.reportType, other.reportType) && + Utils.enhancedDeepEquals(this.columns, other.columns) && + Utils.enhancedDeepEquals(this.groupings, other.groupings) && + Utils.enhancedDeepEquals(this.fileType, other.fileType) && + Utils.enhancedDeepEquals(this.customName, other.customName) && + Utils.enhancedDeepEquals(this.withTotals, other.withTotals) && + Utils.enhancedDeepEquals(this.dateFilterType, other.dateFilterType) && + Utils.enhancedDeepEquals(this.startDate, other.startDate) && + Utils.enhancedDeepEquals(this.endDate, other.endDate) && + Utils.enhancedDeepEquals(this.paymentMethod, other.paymentMethod) && + Utils.enhancedDeepEquals(this.employmentType, other.employmentType) && + Utils.enhancedDeepEquals(this.employmentStatus, other.employmentStatus) && + Utils.enhancedDeepEquals(this.employeeUuids, other.employeeUuids) && + Utils.enhancedDeepEquals(this.departmentUuids, other.departmentUuids) && + Utils.enhancedDeepEquals(this.workAddressUuids, other.workAddressUuids); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + companyUuid, reportType, columns, + groupings, fileType, customName, + withTotals, dateFilterType, startDate, + endDate, paymentMethod, employmentType, + employmentStatus, employeeUuids, departmentUuids, + workAddressUuids); + } + + @Override + public String toString() { + return Utils.toString(BulkReportCustomReportItem.class, + "companyUuid", companyUuid, + "reportType", reportType, + "columns", columns, + "groupings", groupings, + "fileType", fileType, + "customName", customName, + "withTotals", withTotals, + "dateFilterType", dateFilterType, + "startDate", startDate, + "endDate", endDate, + "paymentMethod", paymentMethod, + "employmentType", employmentType, + "employmentStatus", employmentStatus, + "employeeUuids", employeeUuids, + "departmentUuids", departmentUuids, + "workAddressUuids", workAddressUuids); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String companyUuid; + + private ReportType reportType; + + private List columns; + + private Optional> groupings = Optional.empty(); + + private FileType fileType; + + private Optional customName = Optional.empty(); + + private Optional withTotals; + + private Optional dateFilterType; + + private Optional startDate = Optional.empty(); + + private Optional endDate = Optional.empty(); + + private Optional paymentMethod = Optional.empty(); + + private Optional employmentType = Optional.empty(); + + private Optional employmentStatus = Optional.empty(); + + private JsonNullable> employeeUuids = JsonNullable.undefined(); + + private Optional> departmentUuids = Optional.empty(); + + private Optional> workAddressUuids = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * UUID of the company to generate the report for. The partner must be mapped to this company. + */ + public Builder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + + /** + * Identifies this batch item as a custom report. + */ + public Builder reportType(ReportType reportType) { + Utils.checkNotNull(reportType, "reportType"); + this.reportType = reportType; + return this; + } + + + /** + * Columns to include in the report. + */ + public Builder columns(List columns) { + Utils.checkNotNull(columns, "columns"); + this.columns = columns; + return this; + } + + + /** + * How to group the report. If omitted, defaults are derived from the requested `columns`. + */ + public Builder groupings(List groupings) { + Utils.checkNotNull(groupings, "groupings"); + this.groupings = Optional.ofNullable(groupings); + return this; + } + + /** + * How to group the report. If omitted, defaults are derived from the requested `columns`. + */ + public Builder groupings(Optional> groupings) { + Utils.checkNotNull(groupings, "groupings"); + this.groupings = groupings; + return this; + } + + + /** + * The type of file to generate. + */ + public Builder fileType(FileType fileType) { + Utils.checkNotNull(fileType, "fileType"); + this.fileType = fileType; + return this; + } + + + /** + * Display name for the report. + */ + public Builder customName(String customName) { + Utils.checkNotNull(customName, "customName"); + this.customName = Optional.ofNullable(customName); + return this; + } + + /** + * Display name for the report. + */ + public Builder customName(Optional customName) { + Utils.checkNotNull(customName, "customName"); + this.customName = customName; + return this; + } + + + /** + * Whether to include subtotals and grand totals. + */ + public Builder withTotals(boolean withTotals) { + Utils.checkNotNull(withTotals, "withTotals"); + this.withTotals = Optional.ofNullable(withTotals); + return this; + } + + /** + * Whether to include subtotals and grand totals. + */ + public Builder withTotals(Optional withTotals) { + Utils.checkNotNull(withTotals, "withTotals"); + this.withTotals = withTotals; + return this; + } + + + /** + * Which payroll date `start_date` and `end_date` filter against. + */ + public Builder dateFilterType(DateFilterType dateFilterType) { + Utils.checkNotNull(dateFilterType, "dateFilterType"); + this.dateFilterType = Optional.ofNullable(dateFilterType); + return this; + } + + /** + * Which payroll date `start_date` and `end_date` filter against. + */ + public Builder dateFilterType(Optional dateFilterType) { + Utils.checkNotNull(dateFilterType, "dateFilterType"); + this.dateFilterType = dateFilterType; + return this; + } + + + /** + * Start date of data to filter by. + */ + public Builder startDate(LocalDate startDate) { + Utils.checkNotNull(startDate, "startDate"); + this.startDate = Optional.ofNullable(startDate); + return this; + } + + /** + * Start date of data to filter by. + */ + public Builder startDate(Optional startDate) { + Utils.checkNotNull(startDate, "startDate"); + this.startDate = startDate; + return this; + } + + + /** + * End date of data to filter by. + */ + public Builder endDate(LocalDate endDate) { + Utils.checkNotNull(endDate, "endDate"); + this.endDate = Optional.ofNullable(endDate); + return this; + } + + /** + * End date of data to filter by. + */ + public Builder endDate(Optional endDate) { + Utils.checkNotNull(endDate, "endDate"); + this.endDate = endDate; + return this; + } + + + /** + * Payment method to filter by. + */ + public Builder paymentMethod(PaymentMethod paymentMethod) { + Utils.checkNotNull(paymentMethod, "paymentMethod"); + this.paymentMethod = Optional.ofNullable(paymentMethod); + return this; + } + + /** + * Payment method to filter by. + */ + public Builder paymentMethod(Optional paymentMethod) { + Utils.checkNotNull(paymentMethod, "paymentMethod"); + this.paymentMethod = paymentMethod; + return this; + } + + + /** + * Employee employment type to filter by. + */ + public Builder employmentType(EmploymentType employmentType) { + Utils.checkNotNull(employmentType, "employmentType"); + this.employmentType = Optional.ofNullable(employmentType); + return this; + } + + /** + * Employee employment type to filter by. + */ + public Builder employmentType(Optional employmentType) { + Utils.checkNotNull(employmentType, "employmentType"); + this.employmentType = employmentType; + return this; + } + + + /** + * Employee employment status to filter by. + */ + public Builder employmentStatus(EmploymentStatus employmentStatus) { + Utils.checkNotNull(employmentStatus, "employmentStatus"); + this.employmentStatus = Optional.ofNullable(employmentStatus); + return this; + } + + /** + * Employee employment status to filter by. + */ + public Builder employmentStatus(Optional employmentStatus) { + Utils.checkNotNull(employmentStatus, "employmentStatus"); + this.employmentStatus = employmentStatus; + return this; + } + + + /** + * Employees to filter by. + */ + public Builder employeeUuids(List employeeUuids) { + Utils.checkNotNull(employeeUuids, "employeeUuids"); + this.employeeUuids = JsonNullable.of(employeeUuids); + return this; + } + + /** + * Employees to filter by. + */ + public Builder employeeUuids(JsonNullable> employeeUuids) { + Utils.checkNotNull(employeeUuids, "employeeUuids"); + this.employeeUuids = employeeUuids; + return this; + } + + + /** + * Departments to filter by. + */ + public Builder departmentUuids(List departmentUuids) { + Utils.checkNotNull(departmentUuids, "departmentUuids"); + this.departmentUuids = Optional.ofNullable(departmentUuids); + return this; + } + + /** + * Departments to filter by. + */ + public Builder departmentUuids(Optional> departmentUuids) { + Utils.checkNotNull(departmentUuids, "departmentUuids"); + this.departmentUuids = departmentUuids; + return this; + } + + + /** + * Work addresses to filter by. + */ + public Builder workAddressUuids(List workAddressUuids) { + Utils.checkNotNull(workAddressUuids, "workAddressUuids"); + this.workAddressUuids = Optional.ofNullable(workAddressUuids); + return this; + } + + /** + * Work addresses to filter by. + */ + public Builder workAddressUuids(Optional> workAddressUuids) { + Utils.checkNotNull(workAddressUuids, "workAddressUuids"); + this.workAddressUuids = workAddressUuids; + return this; + } + + public BulkReportCustomReportItem build() { + if (withTotals == null) { + withTotals = _SINGLETON_VALUE_WithTotals.value(); + } + if (dateFilterType == null) { + dateFilterType = _SINGLETON_VALUE_DateFilterType.value(); + } + + return new BulkReportCustomReportItem( + companyUuid, reportType, columns, + groupings, fileType, customName, + withTotals, dateFilterType, startDate, + endDate, paymentMethod, employmentType, + employmentStatus, employeeUuids, departmentUuids, + workAddressUuids); + } + + + private static final LazySingletonValue> _SINGLETON_VALUE_WithTotals = + new LazySingletonValue<>( + "with_totals", + "false", + new TypeReference>() {}); + + private static final LazySingletonValue> _SINGLETON_VALUE_DateFilterType = + new LazySingletonValue<>( + "date_filter_type", + "\"period_end_date\"", + new TypeReference>() {}); + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BulkReportGeneralLedgerItem.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BulkReportGeneralLedgerItem.java new file mode 100644 index 000000000..221ec04a2 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BulkReportGeneralLedgerItem.java @@ -0,0 +1,305 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import org.openapitools.jackson.nullable.JsonNullable; + +/** + * BulkReportGeneralLedgerItem + * + *

    A general ledger report entry in a bulk batch. + */ +public class BulkReportGeneralLedgerItem implements BulkReportItem { + /** + * UUID of the company to generate the report for. The partner must be mapped to this company. + */ + @JsonProperty("company_uuid") + private String companyUuid; + + /** + * Identifies this batch item as a general ledger report. + */ + @JsonProperty("report_type") + private BulkReportGeneralLedgerItemReportType reportType; + + /** + * The UUID of the payroll to generate the general ledger for. + */ + @JsonProperty("payroll_uuid") + private String payrollUuid; + + /** + * The breakdown of the report. Use `default` for no split. + */ + @JsonProperty("aggregation") + private Aggregation aggregation; + + /** + * The kind of integration set up for the company. Required when `aggregation` is `integration`; must + * be null otherwise. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("integration_type") + private JsonNullable integrationType; + + @JsonCreator + public BulkReportGeneralLedgerItem( + @JsonProperty("company_uuid") String companyUuid, + @JsonProperty("report_type") BulkReportGeneralLedgerItemReportType reportType, + @JsonProperty("payroll_uuid") String payrollUuid, + @JsonProperty("aggregation") Aggregation aggregation, + @JsonProperty("integration_type") JsonNullable integrationType) { + Utils.checkNotNull(companyUuid, "companyUuid"); + Utils.checkNotNull(reportType, "reportType"); + Utils.checkNotNull(payrollUuid, "payrollUuid"); + Utils.checkNotNull(aggregation, "aggregation"); + Utils.checkNotNull(integrationType, "integrationType"); + this.companyUuid = companyUuid; + this.reportType = reportType; + this.payrollUuid = payrollUuid; + this.aggregation = aggregation; + this.integrationType = integrationType; + } + + public BulkReportGeneralLedgerItem( + String companyUuid, + BulkReportGeneralLedgerItemReportType reportType, + String payrollUuid, + Aggregation aggregation) { + this(companyUuid, reportType, payrollUuid, + aggregation, JsonNullable.undefined()); + } + + /** + * UUID of the company to generate the report for. The partner must be mapped to this company. + */ + @JsonIgnore + public String companyUuid() { + return companyUuid; + } + + /** + * Identifies this batch item as a general ledger report. + */ + @JsonIgnore + @Override + public String reportType() { + return Utils.discriminatorToString(reportType); + } + + /** + * The UUID of the payroll to generate the general ledger for. + */ + @JsonIgnore + public String payrollUuid() { + return payrollUuid; + } + + /** + * The breakdown of the report. Use `default` for no split. + */ + @JsonIgnore + public Aggregation aggregation() { + return aggregation; + } + + /** + * The kind of integration set up for the company. Required when `aggregation` is `integration`; must + * be null otherwise. + */ + @JsonIgnore + public JsonNullable integrationType() { + return integrationType; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * UUID of the company to generate the report for. The partner must be mapped to this company. + */ + public BulkReportGeneralLedgerItem withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + /** + * Identifies this batch item as a general ledger report. + */ + public BulkReportGeneralLedgerItem withReportType(BulkReportGeneralLedgerItemReportType reportType) { + Utils.checkNotNull(reportType, "reportType"); + this.reportType = reportType; + return this; + } + + /** + * The UUID of the payroll to generate the general ledger for. + */ + public BulkReportGeneralLedgerItem withPayrollUuid(String payrollUuid) { + Utils.checkNotNull(payrollUuid, "payrollUuid"); + this.payrollUuid = payrollUuid; + return this; + } + + /** + * The breakdown of the report. Use `default` for no split. + */ + public BulkReportGeneralLedgerItem withAggregation(Aggregation aggregation) { + Utils.checkNotNull(aggregation, "aggregation"); + this.aggregation = aggregation; + return this; + } + + /** + * The kind of integration set up for the company. Required when `aggregation` is `integration`; must + * be null otherwise. + */ + public BulkReportGeneralLedgerItem withIntegrationType(String integrationType) { + Utils.checkNotNull(integrationType, "integrationType"); + this.integrationType = JsonNullable.of(integrationType); + return this; + } + + /** + * The kind of integration set up for the company. Required when `aggregation` is `integration`; must + * be null otherwise. + */ + public BulkReportGeneralLedgerItem withIntegrationType(JsonNullable integrationType) { + Utils.checkNotNull(integrationType, "integrationType"); + this.integrationType = integrationType; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + BulkReportGeneralLedgerItem other = (BulkReportGeneralLedgerItem) o; + return + Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && + Utils.enhancedDeepEquals(this.reportType, other.reportType) && + Utils.enhancedDeepEquals(this.payrollUuid, other.payrollUuid) && + Utils.enhancedDeepEquals(this.aggregation, other.aggregation) && + Utils.enhancedDeepEquals(this.integrationType, other.integrationType); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + companyUuid, reportType, payrollUuid, + aggregation, integrationType); + } + + @Override + public String toString() { + return Utils.toString(BulkReportGeneralLedgerItem.class, + "companyUuid", companyUuid, + "reportType", reportType, + "payrollUuid", payrollUuid, + "aggregation", aggregation, + "integrationType", integrationType); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String companyUuid; + + private BulkReportGeneralLedgerItemReportType reportType; + + private String payrollUuid; + + private Aggregation aggregation; + + private JsonNullable integrationType = JsonNullable.undefined(); + + private Builder() { + // force use of static builder() method + } + + + /** + * UUID of the company to generate the report for. The partner must be mapped to this company. + */ + public Builder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + + /** + * Identifies this batch item as a general ledger report. + */ + public Builder reportType(BulkReportGeneralLedgerItemReportType reportType) { + Utils.checkNotNull(reportType, "reportType"); + this.reportType = reportType; + return this; + } + + + /** + * The UUID of the payroll to generate the general ledger for. + */ + public Builder payrollUuid(String payrollUuid) { + Utils.checkNotNull(payrollUuid, "payrollUuid"); + this.payrollUuid = payrollUuid; + return this; + } + + + /** + * The breakdown of the report. Use `default` for no split. + */ + public Builder aggregation(Aggregation aggregation) { + Utils.checkNotNull(aggregation, "aggregation"); + this.aggregation = aggregation; + return this; + } + + + /** + * The kind of integration set up for the company. Required when `aggregation` is `integration`; must + * be null otherwise. + */ + public Builder integrationType(String integrationType) { + Utils.checkNotNull(integrationType, "integrationType"); + this.integrationType = JsonNullable.of(integrationType); + return this; + } + + /** + * The kind of integration set up for the company. Required when `aggregation` is `integration`; must + * be null otherwise. + */ + public Builder integrationType(JsonNullable integrationType) { + Utils.checkNotNull(integrationType, "integrationType"); + this.integrationType = integrationType; + return this; + } + + public BulkReportGeneralLedgerItem build() { + + return new BulkReportGeneralLedgerItem( + companyUuid, reportType, payrollUuid, + aggregation, integrationType); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BulkReportGeneralLedgerItemReportType.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BulkReportGeneralLedgerItemReportType.java new file mode 100644 index 000000000..adb50a27f --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BulkReportGeneralLedgerItemReportType.java @@ -0,0 +1,39 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * BulkReportGeneralLedgerItemReportType + * + *

    Identifies this batch item as a general ledger report. + */ +public enum BulkReportGeneralLedgerItemReportType { + GENERAL_LEDGER("general_ledger"); + + @JsonValue + private final String value; + + BulkReportGeneralLedgerItemReportType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (BulkReportGeneralLedgerItemReportType o: BulkReportGeneralLedgerItemReportType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BulkReportItem.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BulkReportItem.java new file mode 100644 index 000000000..eddfe6c2c --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BulkReportItem.java @@ -0,0 +1,31 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonTypeInfo.As; +import com.fasterxml.jackson.annotation.JsonTypeInfo.Id; +import com.fasterxml.jackson.annotation.JsonTypeInfo; +import com.fasterxml.jackson.databind.annotation.JsonTypeIdResolver; +import java.lang.String; + +/** + * BulkReportItem + * + *

    A single report inside a bulk batch. Required fields depend on `report_type`: `custom_report` + * requires `columns` and `file_type`; `general_ledger` requires `payroll_uuid` and `aggregation`. + */ +@JsonTypeInfo( + use = Id.CUSTOM, + property = "report_type", + include = As.EXISTING_PROPERTY, + visible = true, + defaultImpl = UnknownBulkReportItem.class +) +@JsonTypeIdResolver(BulkReportItemTypeIdResolver.class) +public interface BulkReportItem { + + String reportType(); + +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BulkReportItemResult.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BulkReportItemResult.java new file mode 100644 index 000000000..4cc26e947 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BulkReportItemResult.java @@ -0,0 +1,258 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.util.Optional; + +/** + * BulkReportItemResult + * + *

    A single report's outcome. + */ +public class BulkReportItemResult { + /** + * Which report this entry refers to. + */ + @JsonProperty("report_type") + private BulkReportItemResultReportType reportType; + + /** + * The report's output file type. + */ + @JsonProperty("file_type") + private String fileType; + + /** + * The terminal state for this individual report. + */ + @JsonProperty("status") + private BulkReportItemResultStatus status; + + /** + * A user-facing error message when status is `failed`. Null on success. + */ + @JsonInclude(Include.ALWAYS) + @JsonProperty("error") + private Optional error; + + @JsonCreator + public BulkReportItemResult( + @JsonProperty("report_type") BulkReportItemResultReportType reportType, + @JsonProperty("file_type") String fileType, + @JsonProperty("status") BulkReportItemResultStatus status, + @JsonProperty("error") Optional error) { + Utils.checkNotNull(reportType, "reportType"); + Utils.checkNotNull(fileType, "fileType"); + Utils.checkNotNull(status, "status"); + Utils.checkNotNull(error, "error"); + this.reportType = reportType; + this.fileType = fileType; + this.status = status; + this.error = error; + } + + public BulkReportItemResult( + BulkReportItemResultReportType reportType, + String fileType, + BulkReportItemResultStatus status) { + this(reportType, fileType, status, + Optional.empty()); + } + + /** + * Which report this entry refers to. + */ + @JsonIgnore + public BulkReportItemResultReportType reportType() { + return reportType; + } + + /** + * The report's output file type. + */ + @JsonIgnore + public String fileType() { + return fileType; + } + + /** + * The terminal state for this individual report. + */ + @JsonIgnore + public BulkReportItemResultStatus status() { + return status; + } + + /** + * A user-facing error message when status is `failed`. Null on success. + */ + @JsonIgnore + public Optional error() { + return error; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Which report this entry refers to. + */ + public BulkReportItemResult withReportType(BulkReportItemResultReportType reportType) { + Utils.checkNotNull(reportType, "reportType"); + this.reportType = reportType; + return this; + } + + /** + * The report's output file type. + */ + public BulkReportItemResult withFileType(String fileType) { + Utils.checkNotNull(fileType, "fileType"); + this.fileType = fileType; + return this; + } + + /** + * The terminal state for this individual report. + */ + public BulkReportItemResult withStatus(BulkReportItemResultStatus status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + /** + * A user-facing error message when status is `failed`. Null on success. + */ + public BulkReportItemResult withError(String error) { + Utils.checkNotNull(error, "error"); + this.error = Optional.ofNullable(error); + return this; + } + + + /** + * A user-facing error message when status is `failed`. Null on success. + */ + public BulkReportItemResult withError(Optional error) { + Utils.checkNotNull(error, "error"); + this.error = error; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + BulkReportItemResult other = (BulkReportItemResult) o; + return + Utils.enhancedDeepEquals(this.reportType, other.reportType) && + Utils.enhancedDeepEquals(this.fileType, other.fileType) && + Utils.enhancedDeepEquals(this.status, other.status) && + Utils.enhancedDeepEquals(this.error, other.error); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + reportType, fileType, status, + error); + } + + @Override + public String toString() { + return Utils.toString(BulkReportItemResult.class, + "reportType", reportType, + "fileType", fileType, + "status", status, + "error", error); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private BulkReportItemResultReportType reportType; + + private String fileType; + + private BulkReportItemResultStatus status; + + private Optional error = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * Which report this entry refers to. + */ + public Builder reportType(BulkReportItemResultReportType reportType) { + Utils.checkNotNull(reportType, "reportType"); + this.reportType = reportType; + return this; + } + + + /** + * The report's output file type. + */ + public Builder fileType(String fileType) { + Utils.checkNotNull(fileType, "fileType"); + this.fileType = fileType; + return this; + } + + + /** + * The terminal state for this individual report. + */ + public Builder status(BulkReportItemResultStatus status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + + /** + * A user-facing error message when status is `failed`. Null on success. + */ + public Builder error(String error) { + Utils.checkNotNull(error, "error"); + this.error = Optional.ofNullable(error); + return this; + } + + /** + * A user-facing error message when status is `failed`. Null on success. + */ + public Builder error(Optional error) { + Utils.checkNotNull(error, "error"); + this.error = error; + return this; + } + + public BulkReportItemResult build() { + + return new BulkReportItemResult( + reportType, fileType, status, + error); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/TaxRequirementMetadataValidationType.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BulkReportItemResultReportType.java similarity index 57% rename from gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/TaxRequirementMetadataValidationType.java rename to gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BulkReportItemResultReportType.java index eb4f2fe6a..db7ab8f5a 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/TaxRequirementMetadataValidationType.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BulkReportItemResultReportType.java @@ -9,18 +9,18 @@ import java.util.Optional; /** - * TaxRequirementMetadataValidationType + * BulkReportItemResultReportType * - *

    Describes the type of tax_rate validation rule + *

    Which report this entry refers to. */ -public enum TaxRequirementMetadataValidationType { - ONE_OF("one_of"), - MIN_MAX("min_max"); +public enum BulkReportItemResultReportType { + CUSTOM_REPORT("custom_report"), + GENERAL_LEDGER("general_ledger"); @JsonValue private final String value; - TaxRequirementMetadataValidationType(String value) { + BulkReportItemResultReportType(String value) { this.value = value; } @@ -28,8 +28,8 @@ public String value() { return value; } - public static Optional fromValue(String value) { - for (TaxRequirementMetadataValidationType o: TaxRequirementMetadataValidationType.values()) { + public static Optional fromValue(String value) { + for (BulkReportItemResultReportType o: BulkReportItemResultReportType.values()) { if (Objects.deepEquals(o.value, value)) { return Optional.of(o); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BulkReportItemResultStatus.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BulkReportItemResultStatus.java new file mode 100644 index 000000000..04d72ad63 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BulkReportItemResultStatus.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * BulkReportItemResultStatus + * + *

    The terminal state for this individual report. + */ +public enum BulkReportItemResultStatus { + PENDING("pending"), + SUCCESS("success"), + FAILED("failed"); + + @JsonValue + private final String value; + + BulkReportItemResultStatus(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (BulkReportItemResultStatus o: BulkReportItemResultStatus.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BulkReportItemTypeIdResolver.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BulkReportItemTypeIdResolver.java new file mode 100644 index 000000000..3a674d5dd --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BulkReportItemTypeIdResolver.java @@ -0,0 +1,52 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.gusto.embedded_api_v_2025_11_15.utils.GenericTypeIdResolver; +import java.lang.IllegalArgumentException; +import java.lang.Object; +import java.lang.Override; +import java.lang.String; + + +/** + * BulkReportItemTypeIdResolver + * + *

    A single report inside a bulk batch. Required fields depend on `report_type`: `custom_report` + * requires `columns` and `file_type`; `general_ledger` requires `payroll_uuid` and `aggregation`. + */ +public class BulkReportItemTypeIdResolver extends GenericTypeIdResolver { + + public BulkReportItemTypeIdResolver() { + super(UnknownBulkReportItem.class); + initializeTypeMap(); + } + + private void initializeTypeMap() { + registerType("custom_report", BulkReportCustomReportItem.class); + registerType("general_ledger", BulkReportGeneralLedgerItem.class); + } + + @Override + public String idFromValue(Object value) { + if (value == null) { + return null; + } + + // Handle known types by checking if they implement the discriminator method + if (value instanceof BulkReportItem) { + BulkReportItem discriminated = (BulkReportItem) value; + return discriminated.reportType(); + } + + throw new IllegalArgumentException("Unknown value type: " + value.getClass().getName()); + } + + @Override + public String getDescForKnownTypeIds() { + return "BulkReportItem type resolver"; + } + +} \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BulkReportStatus.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BulkReportStatus.java new file mode 100644 index 000000000..2034fc2c1 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/BulkReportStatus.java @@ -0,0 +1,44 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * BulkReportStatus + * + *

    Overall batch status. `pending`/`processing` while in progress; once finished, `success` (all + * reports succeeded), `partial_success` (some succeeded, some failed), or `failed` (none succeeded). + */ +public enum BulkReportStatus { + PENDING("pending"), + PROCESSING("processing"), + SUCCESS("success"), + PARTIAL_SUCCESS("partial_success"), + FAILED("failed"); + + @JsonValue + private final String value; + + BulkReportStatus(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (BulkReportStatus o: BulkReportStatus.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Columns.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Columns.java index 400e70b7f..400dcaad5 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Columns.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Columns.java @@ -9,6 +9,7 @@ import java.util.Optional; public enum Columns { + ADDITIONAL_EARNINGS("additional_earnings"), BANK_ACCOUNT_ACCOUNT_NUMBER("bank_account_account_number"), BANK_ACCOUNT_ROUTING_NUMBER("bank_account_routing_number"), BANK_ACCOUNT_TYPE("bank_account_type"), @@ -38,6 +39,7 @@ public enum Columns { EMPLOYEE_MEDICARE_TAX("employee_medicare_tax"), EMPLOYEE_PHONE_NUMBER("employee_phone_number"), EMPLOYEE_SOCIAL_SECURITY_TAX("employee_social_security_tax"), + EMPLOYEE_STATE_INCOME_TAX("employee_state_income_tax"), EMPLOYEE_TAXES("employee_taxes"), EMPLOYEE_UUID("employee_uuid"), EMPLOYEE_WORK_EMAIL("employee_work_email"), diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Contractor.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Contractor.java index ae8dfd9ec..d66f2b626 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Contractor.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Contractor.java @@ -42,7 +42,7 @@ public class Contractor { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("wage_type") - private Optional wageType; + private Optional wageType; /** * The status of the contractor with the company. @@ -122,6 +122,16 @@ public class Contractor { @JsonProperty("email") private JsonNullable email; + /** + * The work email address of the contractor. This is provided to support syncing users between our + * system and yours. You may not use this email address for any other purpose (e.g. + * + *

    marketing). + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("work_email") + private JsonNullable workEmail; + /** * The contractor's start date. */ @@ -170,7 +180,7 @@ public class Contractor { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("onboarding_status") - private Optional onboardingStatus; + private Optional onboardingStatus; /** * The contractor's payment method. @@ -241,7 +251,7 @@ public class Contractor { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("member_portal_invitation_status") - private JsonNullable memberPortalInvitationStatus; + private JsonNullable memberPortalInvitationStatus; /** * Whether an external partner portal invitation webhook has been sent for this contractor. Only @@ -255,7 +265,7 @@ public class Contractor { public Contractor( @JsonProperty("uuid") String uuid, @JsonProperty("company_uuid") Optional companyUuid, - @JsonProperty("wage_type") Optional wageType, + @JsonProperty("wage_type") Optional wageType, @JsonProperty("is_active") Optional isActive, @JsonProperty("version") Optional version, @JsonProperty("type") Optional type, @@ -266,13 +276,14 @@ public Contractor( @JsonProperty("ein") JsonNullable ein, @JsonProperty("has_ein") JsonNullable hasEin, @JsonProperty("email") JsonNullable email, + @JsonProperty("work_email") JsonNullable workEmail, @JsonProperty("start_date") Optional startDate, @JsonProperty("address") JsonNullable address, @JsonProperty("hourly_rate") Optional hourlyRate, @JsonProperty("file_new_hire_report") JsonNullable fileNewHireReport, @JsonProperty("work_state") JsonNullable workState, @JsonProperty("onboarded") Optional onboarded, - @JsonProperty("onboarding_status") Optional onboardingStatus, + @JsonProperty("onboarding_status") Optional onboardingStatus, @JsonProperty("payment_method") JsonNullable paymentMethod, @JsonProperty("has_ssn") Optional hasSsn, @JsonProperty("department_uuid") JsonNullable departmentUuid, @@ -282,7 +293,7 @@ public Contractor( @JsonProperty("upcoming_employment") JsonNullable upcomingEmployment, @JsonProperty("dismissal_cancellation_eligible") Optional dismissalCancellationEligible, @JsonProperty("rehire_cancellation_eligible") Optional rehireCancellationEligible, - @JsonProperty("member_portal_invitation_status") JsonNullable memberPortalInvitationStatus, + @JsonProperty("member_portal_invitation_status") JsonNullable memberPortalInvitationStatus, @JsonProperty("partner_portal_invitation_sent") JsonNullable partnerPortalInvitationSent) { Utils.checkNotNull(uuid, "uuid"); Utils.checkNotNull(companyUuid, "companyUuid"); @@ -297,6 +308,7 @@ public Contractor( Utils.checkNotNull(ein, "ein"); Utils.checkNotNull(hasEin, "hasEin"); Utils.checkNotNull(email, "email"); + Utils.checkNotNull(workEmail, "workEmail"); Utils.checkNotNull(startDate, "startDate"); Utils.checkNotNull(address, "address"); Utils.checkNotNull(hourlyRate, "hourlyRate"); @@ -328,6 +340,7 @@ public Contractor( this.ein = ein; this.hasEin = hasEin; this.email = email; + this.workEmail = workEmail; this.startDate = startDate; this.address = address; this.hourlyRate = hourlyRate; @@ -354,13 +367,13 @@ public Contractor( Optional.empty(), Optional.empty(), Optional.empty(), JsonNullable.undefined(), JsonNullable.undefined(), JsonNullable.undefined(), JsonNullable.undefined(), JsonNullable.undefined(), JsonNullable.undefined(), + JsonNullable.undefined(), JsonNullable.undefined(), Optional.empty(), + JsonNullable.undefined(), Optional.empty(), JsonNullable.undefined(), + JsonNullable.undefined(), Optional.empty(), Optional.empty(), JsonNullable.undefined(), Optional.empty(), JsonNullable.undefined(), - Optional.empty(), JsonNullable.undefined(), JsonNullable.undefined(), - Optional.empty(), Optional.empty(), JsonNullable.undefined(), - Optional.empty(), JsonNullable.undefined(), JsonNullable.undefined(), JsonNullable.undefined(), JsonNullable.undefined(), JsonNullable.undefined(), - Optional.empty(), Optional.empty(), JsonNullable.undefined(), - JsonNullable.undefined()); + JsonNullable.undefined(), Optional.empty(), Optional.empty(), + JsonNullable.undefined(), JsonNullable.undefined()); } /** @@ -384,8 +397,8 @@ public Optional companyUuid() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional wageType() { - return (Optional) wageType; + public Optional wageType() { + return (Optional) wageType; } /** @@ -477,6 +490,17 @@ public JsonNullable email() { return email; } + /** + * The work email address of the contractor. This is provided to support syncing users between our + * system and yours. You may not use this email address for any other purpose (e.g. + * + *

    marketing). + */ + @JsonIgnore + public JsonNullable workEmail() { + return workEmail; + } + /** * The contractor's start date. */ @@ -532,8 +556,8 @@ public Optional onboarded() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional onboardingStatus() { - return (Optional) onboardingStatus; + public Optional onboardingStatus() { + return (Optional) onboardingStatus; } /** @@ -616,8 +640,8 @@ public Optional rehireCancellationEligible() { */ @SuppressWarnings("unchecked") @JsonIgnore - public JsonNullable memberPortalInvitationStatus() { - return (JsonNullable) memberPortalInvitationStatus; + public JsonNullable memberPortalInvitationStatus() { + return (JsonNullable) memberPortalInvitationStatus; } /** @@ -665,7 +689,7 @@ public Contractor withCompanyUuid(Optional companyUuid) { /** * The contractor's wage type, either "Fixed" or "Hourly". */ - public Contractor withWageType(WageType wageType) { + public Contractor withWageType(ContractorWageType wageType) { Utils.checkNotNull(wageType, "wageType"); this.wageType = Optional.ofNullable(wageType); return this; @@ -675,7 +699,7 @@ public Contractor withWageType(WageType wageType) { /** * The contractor's wage type, either "Fixed" or "Hourly". */ - public Contractor withWageType(Optional wageType) { + public Contractor withWageType(Optional wageType) { Utils.checkNotNull(wageType, "wageType"); this.wageType = wageType; return this; @@ -880,6 +904,30 @@ public Contractor withEmail(JsonNullable email) { return this; } + /** + * The work email address of the contractor. This is provided to support syncing users between our + * system and yours. You may not use this email address for any other purpose (e.g. + * + *

    marketing). + */ + public Contractor withWorkEmail(String workEmail) { + Utils.checkNotNull(workEmail, "workEmail"); + this.workEmail = JsonNullable.of(workEmail); + return this; + } + + /** + * The work email address of the contractor. This is provided to support syncing users between our + * system and yours. You may not use this email address for any other purpose (e.g. + * + *

    marketing). + */ + public Contractor withWorkEmail(JsonNullable workEmail) { + Utils.checkNotNull(workEmail, "workEmail"); + this.workEmail = workEmail; + return this; + } + /** * The contractor's start date. */ @@ -996,7 +1044,7 @@ public Contractor withOnboarded(Optional onboarded) { /** * One of the "onboarding_status" enum values. */ - public Contractor withOnboardingStatus(ContractorOnboardingStatus1 onboardingStatus) { + public Contractor withOnboardingStatus(OnboardingStatus onboardingStatus) { Utils.checkNotNull(onboardingStatus, "onboardingStatus"); this.onboardingStatus = Optional.ofNullable(onboardingStatus); return this; @@ -1006,7 +1054,7 @@ public Contractor withOnboardingStatus(ContractorOnboardingStatus1 onboardingSta /** * One of the "onboarding_status" enum values. */ - public Contractor withOnboardingStatus(Optional onboardingStatus) { + public Contractor withOnboardingStatus(Optional onboardingStatus) { Utils.checkNotNull(onboardingStatus, "onboardingStatus"); this.onboardingStatus = onboardingStatus; return this; @@ -1181,7 +1229,7 @@ public Contractor withRehireCancellationEligible(Optional rehireCancell * Member portal invitation status information. Only included when the include param has the * portal_invitations value set. */ - public Contractor withMemberPortalInvitationStatus(ContractorMemberPortalInvitationStatus memberPortalInvitationStatus) { + public Contractor withMemberPortalInvitationStatus(MemberPortalInvitationStatus memberPortalInvitationStatus) { Utils.checkNotNull(memberPortalInvitationStatus, "memberPortalInvitationStatus"); this.memberPortalInvitationStatus = JsonNullable.of(memberPortalInvitationStatus); return this; @@ -1191,7 +1239,7 @@ public Contractor withMemberPortalInvitationStatus(ContractorMemberPortalInvitat * Member portal invitation status information. Only included when the include param has the * portal_invitations value set. */ - public Contractor withMemberPortalInvitationStatus(JsonNullable memberPortalInvitationStatus) { + public Contractor withMemberPortalInvitationStatus(JsonNullable memberPortalInvitationStatus) { Utils.checkNotNull(memberPortalInvitationStatus, "memberPortalInvitationStatus"); this.memberPortalInvitationStatus = memberPortalInvitationStatus; return this; @@ -1240,6 +1288,7 @@ public boolean equals(java.lang.Object o) { Utils.enhancedDeepEquals(this.ein, other.ein) && Utils.enhancedDeepEquals(this.hasEin, other.hasEin) && Utils.enhancedDeepEquals(this.email, other.email) && + Utils.enhancedDeepEquals(this.workEmail, other.workEmail) && Utils.enhancedDeepEquals(this.startDate, other.startDate) && Utils.enhancedDeepEquals(this.address, other.address) && Utils.enhancedDeepEquals(this.hourlyRate, other.hourlyRate) && @@ -1267,13 +1316,13 @@ public int hashCode() { isActive, version, type, firstName, lastName, middleInitial, businessName, ein, hasEin, - email, startDate, address, - hourlyRate, fileNewHireReport, workState, - onboarded, onboardingStatus, paymentMethod, - hasSsn, departmentUuid, department, - departmentTitle, dismissalDate, upcomingEmployment, - dismissalCancellationEligible, rehireCancellationEligible, memberPortalInvitationStatus, - partnerPortalInvitationSent); + email, workEmail, startDate, + address, hourlyRate, fileNewHireReport, + workState, onboarded, onboardingStatus, + paymentMethod, hasSsn, departmentUuid, + department, departmentTitle, dismissalDate, + upcomingEmployment, dismissalCancellationEligible, rehireCancellationEligible, + memberPortalInvitationStatus, partnerPortalInvitationSent); } @Override @@ -1292,6 +1341,7 @@ public String toString() { "ein", ein, "hasEin", hasEin, "email", email, + "workEmail", workEmail, "startDate", startDate, "address", address, "hourlyRate", hourlyRate, @@ -1319,7 +1369,7 @@ public final static class Builder { private Optional companyUuid = Optional.empty(); - private Optional wageType = Optional.empty(); + private Optional wageType = Optional.empty(); private Optional isActive; @@ -1341,6 +1391,8 @@ public final static class Builder { private JsonNullable email = JsonNullable.undefined(); + private JsonNullable workEmail = JsonNullable.undefined(); + private Optional startDate = Optional.empty(); private JsonNullable address = JsonNullable.undefined(); @@ -1353,7 +1405,7 @@ public final static class Builder { private Optional onboarded = Optional.empty(); - private Optional onboardingStatus = Optional.empty(); + private Optional onboardingStatus = Optional.empty(); private JsonNullable paymentMethod = JsonNullable.undefined(); @@ -1373,7 +1425,7 @@ public final static class Builder { private Optional rehireCancellationEligible = Optional.empty(); - private JsonNullable memberPortalInvitationStatus = JsonNullable.undefined(); + private JsonNullable memberPortalInvitationStatus = JsonNullable.undefined(); private JsonNullable partnerPortalInvitationSent = JsonNullable.undefined(); @@ -1414,7 +1466,7 @@ public Builder companyUuid(Optional companyUuid) { /** * The contractor's wage type, either "Fixed" or "Hourly". */ - public Builder wageType(WageType wageType) { + public Builder wageType(ContractorWageType wageType) { Utils.checkNotNull(wageType, "wageType"); this.wageType = Optional.ofNullable(wageType); return this; @@ -1423,7 +1475,7 @@ public Builder wageType(WageType wageType) { /** * The contractor's wage type, either "Fixed" or "Hourly". */ - public Builder wageType(Optional wageType) { + public Builder wageType(Optional wageType) { Utils.checkNotNull(wageType, "wageType"); this.wageType = wageType; return this; @@ -1636,6 +1688,31 @@ public Builder email(JsonNullable email) { } + /** + * The work email address of the contractor. This is provided to support syncing users between our + * system and yours. You may not use this email address for any other purpose (e.g. + * + *

    marketing). + */ + public Builder workEmail(String workEmail) { + Utils.checkNotNull(workEmail, "workEmail"); + this.workEmail = JsonNullable.of(workEmail); + return this; + } + + /** + * The work email address of the contractor. This is provided to support syncing users between our + * system and yours. You may not use this email address for any other purpose (e.g. + * + *

    marketing). + */ + public Builder workEmail(JsonNullable workEmail) { + Utils.checkNotNull(workEmail, "workEmail"); + this.workEmail = workEmail; + return this; + } + + /** * The contractor's start date. */ @@ -1755,7 +1832,7 @@ public Builder onboarded(Optional onboarded) { /** * One of the "onboarding_status" enum values. */ - public Builder onboardingStatus(ContractorOnboardingStatus1 onboardingStatus) { + public Builder onboardingStatus(OnboardingStatus onboardingStatus) { Utils.checkNotNull(onboardingStatus, "onboardingStatus"); this.onboardingStatus = Optional.ofNullable(onboardingStatus); return this; @@ -1764,7 +1841,7 @@ public Builder onboardingStatus(ContractorOnboardingStatus1 onboardingStatus) { /** * One of the "onboarding_status" enum values. */ - public Builder onboardingStatus(Optional onboardingStatus) { + public Builder onboardingStatus(Optional onboardingStatus) { Utils.checkNotNull(onboardingStatus, "onboardingStatus"); this.onboardingStatus = onboardingStatus; return this; @@ -1946,7 +2023,7 @@ public Builder rehireCancellationEligible(Optional rehireCancellationEl * Member portal invitation status information. Only included when the include param has the * portal_invitations value set. */ - public Builder memberPortalInvitationStatus(ContractorMemberPortalInvitationStatus memberPortalInvitationStatus) { + public Builder memberPortalInvitationStatus(MemberPortalInvitationStatus memberPortalInvitationStatus) { Utils.checkNotNull(memberPortalInvitationStatus, "memberPortalInvitationStatus"); this.memberPortalInvitationStatus = JsonNullable.of(memberPortalInvitationStatus); return this; @@ -1956,7 +2033,7 @@ public Builder memberPortalInvitationStatus(ContractorMemberPortalInvitationStat * Member portal invitation status information. Only included when the include param has the * portal_invitations value set. */ - public Builder memberPortalInvitationStatus(JsonNullable memberPortalInvitationStatus) { + public Builder memberPortalInvitationStatus(JsonNullable memberPortalInvitationStatus) { Utils.checkNotNull(memberPortalInvitationStatus, "memberPortalInvitationStatus"); this.memberPortalInvitationStatus = memberPortalInvitationStatus; return this; @@ -1993,13 +2070,13 @@ public Contractor build() { isActive, version, type, firstName, lastName, middleInitial, businessName, ein, hasEin, - email, startDate, address, - hourlyRate, fileNewHireReport, workState, - onboarded, onboardingStatus, paymentMethod, - hasSsn, departmentUuid, department, - departmentTitle, dismissalDate, upcomingEmployment, - dismissalCancellationEligible, rehireCancellationEligible, memberPortalInvitationStatus, - partnerPortalInvitationSent); + email, workEmail, startDate, + address, hourlyRate, fileNewHireReport, + workState, onboarded, onboardingStatus, + paymentMethod, hasSsn, departmentUuid, + department, departmentTitle, dismissalDate, + upcomingEmployment, dismissalCancellationEligible, rehireCancellationEligible, + memberPortalInvitationStatus, partnerPortalInvitationSent); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorAddress.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorAddress.java index fb69d438e..bb621591e 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorAddress.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorAddress.java @@ -14,6 +14,8 @@ import java.lang.Boolean; import java.lang.Override; import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.List; import java.util.Optional; import org.openapitools.jackson.nullable.JsonNullable; @@ -73,6 +75,14 @@ public class ContractorAddress { @JsonProperty("version") private Optional version; + /** + * An array of warning objects that provide additional information about the address. Warnings do not + * prevent the address from being saved. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("warnings") + private Optional> warnings; + @JsonCreator public ContractorAddress( @JsonProperty("contractor_uuid") Optional contractorUuid, @@ -83,7 +93,8 @@ public ContractorAddress( @JsonProperty("zip") JsonNullable zip, @JsonProperty("country") JsonNullable country, @JsonProperty("active") Optional active, - @JsonProperty("version") Optional version) { + @JsonProperty("version") Optional version, + @JsonProperty("warnings") Optional> warnings) { Utils.checkNotNull(contractorUuid, "contractorUuid"); Utils.checkNotNull(street1, "street1"); Utils.checkNotNull(street2, "street2"); @@ -93,6 +104,7 @@ public ContractorAddress( Utils.checkNotNull(country, "country"); Utils.checkNotNull(active, "active"); Utils.checkNotNull(version, "version"); + Utils.checkNotNull(warnings, "warnings"); this.contractorUuid = contractorUuid; this.street1 = street1; this.street2 = street2; @@ -102,12 +114,14 @@ public ContractorAddress( this.country = country; this.active = active; this.version = version; + this.warnings = warnings; } public ContractorAddress() { this(Optional.empty(), JsonNullable.undefined(), JsonNullable.undefined(), JsonNullable.undefined(), JsonNullable.undefined(), JsonNullable.undefined(), - JsonNullable.undefined(), Optional.empty(), Optional.empty()); + JsonNullable.undefined(), Optional.empty(), Optional.empty(), + Optional.empty()); } /** @@ -167,6 +181,16 @@ public Optional version() { return version; } + /** + * An array of warning objects that provide additional information about the address. Warnings do not + * prevent the address from being saved. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> warnings() { + return (Optional>) warnings; + } + public static Builder builder() { return new Builder(); } @@ -307,6 +331,27 @@ public ContractorAddress withVersion(Optional version) { return this; } + /** + * An array of warning objects that provide additional information about the address. Warnings do not + * prevent the address from being saved. + */ + public ContractorAddress withWarnings(List warnings) { + Utils.checkNotNull(warnings, "warnings"); + this.warnings = Optional.ofNullable(warnings); + return this; + } + + + /** + * An array of warning objects that provide additional information about the address. Warnings do not + * prevent the address from being saved. + */ + public ContractorAddress withWarnings(Optional> warnings) { + Utils.checkNotNull(warnings, "warnings"); + this.warnings = warnings; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -325,7 +370,8 @@ public boolean equals(java.lang.Object o) { Utils.enhancedDeepEquals(this.zip, other.zip) && Utils.enhancedDeepEquals(this.country, other.country) && Utils.enhancedDeepEquals(this.active, other.active) && - Utils.enhancedDeepEquals(this.version, other.version); + Utils.enhancedDeepEquals(this.version, other.version) && + Utils.enhancedDeepEquals(this.warnings, other.warnings); } @Override @@ -333,7 +379,8 @@ public int hashCode() { return Utils.enhancedHash( contractorUuid, street1, street2, city, state, zip, - country, active, version); + country, active, version, + warnings); } @Override @@ -347,7 +394,8 @@ public String toString() { "zip", zip, "country", country, "active", active, - "version", version); + "version", version, + "warnings", warnings); } @SuppressWarnings("UnusedReturnValue") @@ -371,6 +419,8 @@ public final static class Builder { private Optional version = Optional.empty(); + private Optional> warnings = Optional.empty(); + private Builder() { // force use of static builder() method } @@ -516,6 +566,27 @@ public Builder version(Optional version) { return this; } + + /** + * An array of warning objects that provide additional information about the address. Warnings do not + * prevent the address from being saved. + */ + public Builder warnings(List warnings) { + Utils.checkNotNull(warnings, "warnings"); + this.warnings = Optional.ofNullable(warnings); + return this; + } + + /** + * An array of warning objects that provide additional information about the address. Warnings do not + * prevent the address from being saved. + */ + public Builder warnings(Optional> warnings) { + Utils.checkNotNull(warnings, "warnings"); + this.warnings = warnings; + return this; + } + public ContractorAddress build() { if (country == null) { country = _SINGLETON_VALUE_Country.value(); @@ -524,7 +595,8 @@ public ContractorAddress build() { return new ContractorAddress( contractorUuid, street1, street2, city, state, zip, - country, active, version); + country, active, version, + warnings); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorCreateRequestBody.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorCreateRequestBody.java index 96a62513e..1f25ee668 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorCreateRequestBody.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorCreateRequestBody.java @@ -66,6 +66,16 @@ public class ContractorCreateRequestBody { @JsonProperty("email") private Optional email; + /** + * The work email address of the contractor. This is provided to support syncing users between our + * system and yours. You may not use this email address for any other purpose (e.g. + * + *

    marketing). + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("work_email") + private Optional workEmail; + /** * The contractor’s first name. * This attribute is required for `Individual` contractors and will be ignored for `Business` @@ -158,6 +168,7 @@ public ContractorCreateRequestBody( @JsonProperty("hourly_rate") Optional hourlyRate, @JsonProperty("self_onboarding") Optional selfOnboarding, @JsonProperty("email") Optional email, + @JsonProperty("work_email") Optional workEmail, @JsonProperty("first_name") Optional firstName, @JsonProperty("last_name") Optional lastName, @JsonProperty("middle_initial") Optional middleInitial, @@ -173,6 +184,7 @@ public ContractorCreateRequestBody( Utils.checkNotNull(hourlyRate, "hourlyRate"); Utils.checkNotNull(selfOnboarding, "selfOnboarding"); Utils.checkNotNull(email, "email"); + Utils.checkNotNull(workEmail, "workEmail"); Utils.checkNotNull(firstName, "firstName"); Utils.checkNotNull(lastName, "lastName"); Utils.checkNotNull(middleInitial, "middleInitial"); @@ -188,6 +200,7 @@ public ContractorCreateRequestBody( this.hourlyRate = hourlyRate; this.selfOnboarding = selfOnboarding; this.email = email; + this.workEmail = workEmail; this.firstName = firstName; this.lastName = lastName; this.middleInitial = middleInitial; @@ -205,8 +218,9 @@ public ContractorCreateRequestBody( this(Optional.empty(), wageType, startDate, Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), - Optional.empty(), JsonNullable.undefined(), Optional.empty(), - Optional.empty(), Optional.empty(), Optional.empty()); + Optional.empty(), Optional.empty(), JsonNullable.undefined(), + Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty()); } /** @@ -260,6 +274,17 @@ public Optional email() { return email; } + /** + * The work email address of the contractor. This is provided to support syncing users between our + * system and yours. You may not use this email address for any other purpose (e.g. + * + *

    marketing). + */ + @JsonIgnore + public Optional workEmail() { + return workEmail; + } + /** * The contractor’s first name. * This attribute is required for `Individual` contractors and will be ignored for `Business` @@ -456,6 +481,31 @@ public ContractorCreateRequestBody withEmail(Optional email) { return this; } + /** + * The work email address of the contractor. This is provided to support syncing users between our + * system and yours. You may not use this email address for any other purpose (e.g. + * + *

    marketing). + */ + public ContractorCreateRequestBody withWorkEmail(String workEmail) { + Utils.checkNotNull(workEmail, "workEmail"); + this.workEmail = Optional.ofNullable(workEmail); + return this; + } + + + /** + * The work email address of the contractor. This is provided to support syncing users between our + * system and yours. You may not use this email address for any other purpose (e.g. + * + *

    marketing). + */ + public ContractorCreateRequestBody withWorkEmail(Optional workEmail) { + Utils.checkNotNull(workEmail, "workEmail"); + this.workEmail = workEmail; + return this; + } + /** * The contractor’s first name. * This attribute is required for `Individual` contractors and will be ignored for `Business` @@ -684,6 +734,7 @@ public boolean equals(java.lang.Object o) { Utils.enhancedDeepEquals(this.hourlyRate, other.hourlyRate) && Utils.enhancedDeepEquals(this.selfOnboarding, other.selfOnboarding) && Utils.enhancedDeepEquals(this.email, other.email) && + Utils.enhancedDeepEquals(this.workEmail, other.workEmail) && Utils.enhancedDeepEquals(this.firstName, other.firstName) && Utils.enhancedDeepEquals(this.lastName, other.lastName) && Utils.enhancedDeepEquals(this.middleInitial, other.middleInitial) && @@ -700,9 +751,10 @@ public int hashCode() { return Utils.enhancedHash( type, wageType, startDate, hourlyRate, selfOnboarding, email, - firstName, lastName, middleInitial, - fileNewHireReport, workState, ssn, - businessName, ein, isActive); + workEmail, firstName, lastName, + middleInitial, fileNewHireReport, workState, + ssn, businessName, ein, + isActive); } @Override @@ -714,6 +766,7 @@ public String toString() { "hourlyRate", hourlyRate, "selfOnboarding", selfOnboarding, "email", email, + "workEmail", workEmail, "firstName", firstName, "lastName", lastName, "middleInitial", middleInitial, @@ -740,6 +793,8 @@ public final static class Builder { private Optional email = Optional.empty(); + private Optional workEmail = Optional.empty(); + private Optional firstName = Optional.empty(); private Optional lastName = Optional.empty(); @@ -863,6 +918,31 @@ public Builder email(Optional email) { } + /** + * The work email address of the contractor. This is provided to support syncing users between our + * system and yours. You may not use this email address for any other purpose (e.g. + * + *

    marketing). + */ + public Builder workEmail(String workEmail) { + Utils.checkNotNull(workEmail, "workEmail"); + this.workEmail = Optional.ofNullable(workEmail); + return this; + } + + /** + * The work email address of the contractor. This is provided to support syncing users between our + * system and yours. You may not use this email address for any other purpose (e.g. + * + *

    marketing). + */ + public Builder workEmail(Optional workEmail) { + Utils.checkNotNull(workEmail, "workEmail"); + this.workEmail = workEmail; + return this; + } + + /** * The contractor’s first name. * This attribute is required for `Individual` contractors and will be ignored for `Business` @@ -1089,9 +1169,10 @@ public ContractorCreateRequestBody build() { return new ContractorCreateRequestBody( type, wageType, startDate, hourlyRate, selfOnboarding, email, - firstName, lastName, middleInitial, - fileNewHireReport, workState, ssn, - businessName, ein, isActive); + workEmail, firstName, lastName, + middleInitial, fileNewHireReport, workState, + ssn, businessName, ein, + isActive); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentDetailsList.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentDetailsList.java index abf3d0b44..6d79298b8 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentDetailsList.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentDetailsList.java @@ -45,12 +45,12 @@ public class ContractorPaymentDetailsList { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("split_by") - private JsonNullable splitBy; + private JsonNullable splitBy; @JsonInclude(Include.NON_ABSENT) @JsonProperty("splits") - private JsonNullable> splits; + private JsonNullable> splits; @JsonCreator public ContractorPaymentDetailsList( @@ -58,8 +58,8 @@ public ContractorPaymentDetailsList( @JsonProperty("payment_method") Optional paymentMethod, @JsonProperty("first_name") Optional firstName, @JsonProperty("last_name") Optional lastName, - @JsonProperty("split_by") JsonNullable splitBy, - @JsonProperty("splits") JsonNullable> splits) { + @JsonProperty("split_by") JsonNullable splitBy, + @JsonProperty("splits") JsonNullable> splits) { Utils.checkNotNull(contractorUuid, "contractorUuid"); Utils.checkNotNull(paymentMethod, "paymentMethod"); Utils.checkNotNull(firstName, "firstName"); @@ -107,14 +107,14 @@ public Optional lastName() { */ @SuppressWarnings("unchecked") @JsonIgnore - public JsonNullable splitBy() { - return (JsonNullable) splitBy; + public JsonNullable splitBy() { + return (JsonNullable) splitBy; } @SuppressWarnings("unchecked") @JsonIgnore - public JsonNullable> splits() { - return (JsonNullable>) splits; + public JsonNullable> splits() { + return (JsonNullable>) splits; } public static Builder builder() { @@ -179,7 +179,7 @@ public ContractorPaymentDetailsList withLastName(Optional lastName) { * up to exactly 100. If split_by is Amount, then the amount represents cents and the last split amount * must be `null` to capture the remainder. */ - public ContractorPaymentDetailsList withSplitBy(ContractorPaymentDetailsListSplitBy splitBy) { + public ContractorPaymentDetailsList withSplitBy(SplitBy splitBy) { Utils.checkNotNull(splitBy, "splitBy"); this.splitBy = JsonNullable.of(splitBy); return this; @@ -190,19 +190,19 @@ public ContractorPaymentDetailsList withSplitBy(ContractorPaymentDetailsListSpli * up to exactly 100. If split_by is Amount, then the amount represents cents and the last split amount * must be `null` to capture the remainder. */ - public ContractorPaymentDetailsList withSplitBy(JsonNullable splitBy) { + public ContractorPaymentDetailsList withSplitBy(JsonNullable splitBy) { Utils.checkNotNull(splitBy, "splitBy"); this.splitBy = splitBy; return this; } - public ContractorPaymentDetailsList withSplits(List splits) { + public ContractorPaymentDetailsList withSplits(List splits) { Utils.checkNotNull(splits, "splits"); this.splits = JsonNullable.of(splits); return this; } - public ContractorPaymentDetailsList withSplits(JsonNullable> splits) { + public ContractorPaymentDetailsList withSplits(JsonNullable> splits) { Utils.checkNotNull(splits, "splits"); this.splits = splits; return this; @@ -255,9 +255,9 @@ public final static class Builder { private Optional lastName = Optional.empty(); - private JsonNullable splitBy = JsonNullable.undefined(); + private JsonNullable splitBy = JsonNullable.undefined(); - private JsonNullable> splits = JsonNullable.undefined(); + private JsonNullable> splits = JsonNullable.undefined(); private Builder() { // force use of static builder() method @@ -321,7 +321,7 @@ public Builder lastName(Optional lastName) { * up to exactly 100. If split_by is Amount, then the amount represents cents and the last split amount * must be `null` to capture the remainder. */ - public Builder splitBy(ContractorPaymentDetailsListSplitBy splitBy) { + public Builder splitBy(SplitBy splitBy) { Utils.checkNotNull(splitBy, "splitBy"); this.splitBy = JsonNullable.of(splitBy); return this; @@ -332,20 +332,20 @@ public Builder splitBy(ContractorPaymentDetailsListSplitBy splitBy) { * up to exactly 100. If split_by is Amount, then the amount represents cents and the last split amount * must be `null` to capture the remainder. */ - public Builder splitBy(JsonNullable splitBy) { + public Builder splitBy(JsonNullable splitBy) { Utils.checkNotNull(splitBy, "splitBy"); this.splitBy = splitBy; return this; } - public Builder splits(List splits) { + public Builder splits(List splits) { Utils.checkNotNull(splits, "splits"); this.splits = JsonNullable.of(splits); return this; } - public Builder splits(JsonNullable> splits) { + public Builder splits(JsonNullable> splits) { Utils.checkNotNull(splits, "splits"); this.splits = splits; return this; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentForGroupPreview.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentForGroupPreview.java index 7a9fa83d3..d6ec10f8b 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentForGroupPreview.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentForGroupPreview.java @@ -100,7 +100,7 @@ public class ContractorPaymentForGroupPreview { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("wage_type") - private Optional wageType; + private Optional wageType; /** * (hours * hourly_rate) + wage + bonus @@ -121,7 +121,7 @@ public ContractorPaymentForGroupPreview( @JsonProperty("hourly_rate") Optional hourlyRate, @JsonProperty("may_cancel") Optional mayCancel, @JsonProperty("wage") Optional wage, - @JsonProperty("wage_type") Optional wageType, + @JsonProperty("wage_type") Optional wageType, @JsonProperty("wage_total") Optional wageTotal) { Utils.checkNotNull(uuid, "uuid"); Utils.checkNotNull(contractorUuid, "contractorUuid"); @@ -246,8 +246,8 @@ public Optional wage() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional wageType() { - return (Optional) wageType; + public Optional wageType() { + return (Optional) wageType; } /** @@ -461,7 +461,7 @@ public ContractorPaymentForGroupPreview withWage(Optional wage) { /** * The wage type for the payment. */ - public ContractorPaymentForGroupPreview withWageType(ContractorPaymentForGroupPreviewWageType wageType) { + public ContractorPaymentForGroupPreview withWageType(WageType wageType) { Utils.checkNotNull(wageType, "wageType"); this.wageType = Optional.ofNullable(wageType); return this; @@ -471,7 +471,7 @@ public ContractorPaymentForGroupPreview withWageType(ContractorPaymentForGroupPr /** * The wage type for the payment. */ - public ContractorPaymentForGroupPreview withWageType(Optional wageType) { + public ContractorPaymentForGroupPreview withWageType(Optional wageType) { Utils.checkNotNull(wageType, "wageType"); this.wageType = wageType; return this; @@ -569,7 +569,7 @@ public final static class Builder { private Optional wage = Optional.empty(); - private Optional wageType = Optional.empty(); + private Optional wageType = Optional.empty(); private Optional wageTotal = Optional.empty(); @@ -777,7 +777,7 @@ public Builder wage(Optional wage) { /** * The wage type for the payment. */ - public Builder wageType(ContractorPaymentForGroupPreviewWageType wageType) { + public Builder wageType(WageType wageType) { Utils.checkNotNull(wageType, "wageType"); this.wageType = Optional.ofNullable(wageType); return this; @@ -786,7 +786,7 @@ public Builder wageType(ContractorPaymentForGroupPreviewWageType wageType) { /** * The wage type for the payment. */ - public Builder wageType(Optional wageType) { + public Builder wageType(Optional wageType) { Utils.checkNotNull(wageType, "wageType"); this.wageType = wageType; return this; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentGroupPreview.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentGroupPreview.java index cd4bcb5d7..b1d6960e6 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentGroupPreview.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentGroupPreview.java @@ -94,7 +94,7 @@ public class ContractorPaymentGroupPreview { @JsonInclude(Include.NON_ABSENT) @JsonProperty("totals") - private Optional totals; + private Optional totals; @JsonInclude(Include.NON_ABSENT) @@ -112,7 +112,7 @@ public ContractorPaymentGroupPreview( @JsonProperty("partner_owned_disbursement") JsonNullable partnerOwnedDisbursement, @JsonProperty("submission_blockers") Optional> submissionBlockers, @JsonProperty("credit_blockers") Optional> creditBlockers, - @JsonProperty("totals") Optional totals, + @JsonProperty("totals") Optional totals, @JsonProperty("contractor_payments") Optional> contractorPayments) { Utils.checkNotNull(uuid, "uuid"); Utils.checkNotNull(companyUuid, "companyUuid"); @@ -227,8 +227,8 @@ public Optional> creditBlockers() { @SuppressWarnings("unchecked") @JsonIgnore - public Optional totals() { - return (Optional) totals; + public Optional totals() { + return (Optional) totals; } @SuppressWarnings("unchecked") @@ -420,14 +420,14 @@ public ContractorPaymentGroupPreview withCreditBlockers(Optional totals) { + public ContractorPaymentGroupPreview withTotals(Optional totals) { Utils.checkNotNull(totals, "totals"); this.totals = totals; return this; @@ -515,7 +515,7 @@ public final static class Builder { private Optional> creditBlockers = Optional.empty(); - private Optional totals = Optional.empty(); + private Optional totals = Optional.empty(); private Optional> contractorPayments = Optional.empty(); @@ -705,13 +705,13 @@ public Builder creditBlockers(Optional> } - public Builder totals(ContractorPaymentGroupPreviewTotals totals) { + public Builder totals(Totals totals) { Utils.checkNotNull(totals, "totals"); this.totals = Optional.ofNullable(totals); return this; } - public Builder totals(Optional totals) { + public Builder totals(Optional totals) { Utils.checkNotNull(totals, "totals"); this.totals = totals; return this; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentGroupPreviewTotals.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentGroupPreviewTotals.java deleted file mode 100644 index 0cb8561f1..000000000 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentGroupPreviewTotals.java +++ /dev/null @@ -1,371 +0,0 @@ -/* - * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - */ -package com.gusto.embedded_api_v_2025_11_15.models.components; - -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonIgnore; -import com.fasterxml.jackson.annotation.JsonInclude.Include; -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.gusto.embedded_api_v_2025_11_15.utils.Utils; -import java.lang.Override; -import java.lang.String; -import java.util.Optional; - - -public class ContractorPaymentGroupPreviewTotals { - /** - * The total amount for the group of contractor payments. - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("amount") - private Optional amount; - - /** - * The total debit amount for the group of contractor payments. Sum of wage & reimbursement amount. - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("debit_amount") - private Optional debitAmount; - - /** - * The total wage amount for the group of contractor payments. - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("wage_amount") - private Optional wageAmount; - - /** - * The total reimbursement amount for the group of contractor payments. - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("reimbursement_amount") - private Optional reimbursementAmount; - - /** - * The total check amount for the group of contractor payments. - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("check_amount") - private Optional checkAmount; - - @JsonCreator - public ContractorPaymentGroupPreviewTotals( - @JsonProperty("amount") Optional amount, - @JsonProperty("debit_amount") Optional debitAmount, - @JsonProperty("wage_amount") Optional wageAmount, - @JsonProperty("reimbursement_amount") Optional reimbursementAmount, - @JsonProperty("check_amount") Optional checkAmount) { - Utils.checkNotNull(amount, "amount"); - Utils.checkNotNull(debitAmount, "debitAmount"); - Utils.checkNotNull(wageAmount, "wageAmount"); - Utils.checkNotNull(reimbursementAmount, "reimbursementAmount"); - Utils.checkNotNull(checkAmount, "checkAmount"); - this.amount = amount; - this.debitAmount = debitAmount; - this.wageAmount = wageAmount; - this.reimbursementAmount = reimbursementAmount; - this.checkAmount = checkAmount; - } - - public ContractorPaymentGroupPreviewTotals() { - this(Optional.empty(), Optional.empty(), Optional.empty(), - Optional.empty(), Optional.empty()); - } - - /** - * The total amount for the group of contractor payments. - */ - @JsonIgnore - public Optional amount() { - return amount; - } - - /** - * The total debit amount for the group of contractor payments. Sum of wage & reimbursement amount. - */ - @JsonIgnore - public Optional debitAmount() { - return debitAmount; - } - - /** - * The total wage amount for the group of contractor payments. - */ - @JsonIgnore - public Optional wageAmount() { - return wageAmount; - } - - /** - * The total reimbursement amount for the group of contractor payments. - */ - @JsonIgnore - public Optional reimbursementAmount() { - return reimbursementAmount; - } - - /** - * The total check amount for the group of contractor payments. - */ - @JsonIgnore - public Optional checkAmount() { - return checkAmount; - } - - public static Builder builder() { - return new Builder(); - } - - - /** - * The total amount for the group of contractor payments. - */ - public ContractorPaymentGroupPreviewTotals withAmount(String amount) { - Utils.checkNotNull(amount, "amount"); - this.amount = Optional.ofNullable(amount); - return this; - } - - - /** - * The total amount for the group of contractor payments. - */ - public ContractorPaymentGroupPreviewTotals withAmount(Optional amount) { - Utils.checkNotNull(amount, "amount"); - this.amount = amount; - return this; - } - - /** - * The total debit amount for the group of contractor payments. Sum of wage & reimbursement amount. - */ - public ContractorPaymentGroupPreviewTotals withDebitAmount(String debitAmount) { - Utils.checkNotNull(debitAmount, "debitAmount"); - this.debitAmount = Optional.ofNullable(debitAmount); - return this; - } - - - /** - * The total debit amount for the group of contractor payments. Sum of wage & reimbursement amount. - */ - public ContractorPaymentGroupPreviewTotals withDebitAmount(Optional debitAmount) { - Utils.checkNotNull(debitAmount, "debitAmount"); - this.debitAmount = debitAmount; - return this; - } - - /** - * The total wage amount for the group of contractor payments. - */ - public ContractorPaymentGroupPreviewTotals withWageAmount(String wageAmount) { - Utils.checkNotNull(wageAmount, "wageAmount"); - this.wageAmount = Optional.ofNullable(wageAmount); - return this; - } - - - /** - * The total wage amount for the group of contractor payments. - */ - public ContractorPaymentGroupPreviewTotals withWageAmount(Optional wageAmount) { - Utils.checkNotNull(wageAmount, "wageAmount"); - this.wageAmount = wageAmount; - return this; - } - - /** - * The total reimbursement amount for the group of contractor payments. - */ - public ContractorPaymentGroupPreviewTotals withReimbursementAmount(String reimbursementAmount) { - Utils.checkNotNull(reimbursementAmount, "reimbursementAmount"); - this.reimbursementAmount = Optional.ofNullable(reimbursementAmount); - return this; - } - - - /** - * The total reimbursement amount for the group of contractor payments. - */ - public ContractorPaymentGroupPreviewTotals withReimbursementAmount(Optional reimbursementAmount) { - Utils.checkNotNull(reimbursementAmount, "reimbursementAmount"); - this.reimbursementAmount = reimbursementAmount; - return this; - } - - /** - * The total check amount for the group of contractor payments. - */ - public ContractorPaymentGroupPreviewTotals withCheckAmount(String checkAmount) { - Utils.checkNotNull(checkAmount, "checkAmount"); - this.checkAmount = Optional.ofNullable(checkAmount); - return this; - } - - - /** - * The total check amount for the group of contractor payments. - */ - public ContractorPaymentGroupPreviewTotals withCheckAmount(Optional checkAmount) { - Utils.checkNotNull(checkAmount, "checkAmount"); - this.checkAmount = checkAmount; - return this; - } - - @Override - public boolean equals(java.lang.Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - ContractorPaymentGroupPreviewTotals other = (ContractorPaymentGroupPreviewTotals) o; - return - Utils.enhancedDeepEquals(this.amount, other.amount) && - Utils.enhancedDeepEquals(this.debitAmount, other.debitAmount) && - Utils.enhancedDeepEquals(this.wageAmount, other.wageAmount) && - Utils.enhancedDeepEquals(this.reimbursementAmount, other.reimbursementAmount) && - Utils.enhancedDeepEquals(this.checkAmount, other.checkAmount); - } - - @Override - public int hashCode() { - return Utils.enhancedHash( - amount, debitAmount, wageAmount, - reimbursementAmount, checkAmount); - } - - @Override - public String toString() { - return Utils.toString(ContractorPaymentGroupPreviewTotals.class, - "amount", amount, - "debitAmount", debitAmount, - "wageAmount", wageAmount, - "reimbursementAmount", reimbursementAmount, - "checkAmount", checkAmount); - } - - @SuppressWarnings("UnusedReturnValue") - public final static class Builder { - - private Optional amount = Optional.empty(); - - private Optional debitAmount = Optional.empty(); - - private Optional wageAmount = Optional.empty(); - - private Optional reimbursementAmount = Optional.empty(); - - private Optional checkAmount = Optional.empty(); - - private Builder() { - // force use of static builder() method - } - - - /** - * The total amount for the group of contractor payments. - */ - public Builder amount(String amount) { - Utils.checkNotNull(amount, "amount"); - this.amount = Optional.ofNullable(amount); - return this; - } - - /** - * The total amount for the group of contractor payments. - */ - public Builder amount(Optional amount) { - Utils.checkNotNull(amount, "amount"); - this.amount = amount; - return this; - } - - - /** - * The total debit amount for the group of contractor payments. Sum of wage & reimbursement amount. - */ - public Builder debitAmount(String debitAmount) { - Utils.checkNotNull(debitAmount, "debitAmount"); - this.debitAmount = Optional.ofNullable(debitAmount); - return this; - } - - /** - * The total debit amount for the group of contractor payments. Sum of wage & reimbursement amount. - */ - public Builder debitAmount(Optional debitAmount) { - Utils.checkNotNull(debitAmount, "debitAmount"); - this.debitAmount = debitAmount; - return this; - } - - - /** - * The total wage amount for the group of contractor payments. - */ - public Builder wageAmount(String wageAmount) { - Utils.checkNotNull(wageAmount, "wageAmount"); - this.wageAmount = Optional.ofNullable(wageAmount); - return this; - } - - /** - * The total wage amount for the group of contractor payments. - */ - public Builder wageAmount(Optional wageAmount) { - Utils.checkNotNull(wageAmount, "wageAmount"); - this.wageAmount = wageAmount; - return this; - } - - - /** - * The total reimbursement amount for the group of contractor payments. - */ - public Builder reimbursementAmount(String reimbursementAmount) { - Utils.checkNotNull(reimbursementAmount, "reimbursementAmount"); - this.reimbursementAmount = Optional.ofNullable(reimbursementAmount); - return this; - } - - /** - * The total reimbursement amount for the group of contractor payments. - */ - public Builder reimbursementAmount(Optional reimbursementAmount) { - Utils.checkNotNull(reimbursementAmount, "reimbursementAmount"); - this.reimbursementAmount = reimbursementAmount; - return this; - } - - - /** - * The total check amount for the group of contractor payments. - */ - public Builder checkAmount(String checkAmount) { - Utils.checkNotNull(checkAmount, "checkAmount"); - this.checkAmount = Optional.ofNullable(checkAmount); - return this; - } - - /** - * The total check amount for the group of contractor payments. - */ - public Builder checkAmount(Optional checkAmount) { - Utils.checkNotNull(checkAmount, "checkAmount"); - this.checkAmount = checkAmount; - return this; - } - - public ContractorPaymentGroupPreviewTotals build() { - - return new ContractorPaymentGroupPreviewTotals( - amount, debitAmount, wageAmount, - reimbursementAmount, checkAmount); - } - - } -} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentListing.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentListing.java new file mode 100644 index 000000000..b7725d963 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentListing.java @@ -0,0 +1,727 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.time.LocalDate; +import java.util.Optional; + +/** + * ContractorPaymentListing + * + *

    The representation of a contractor payment as it appears in a contractor's payment history. + */ +public class ContractorPaymentListing { + /** + * The unique identifier of the contractor payment in Gusto. + */ + @JsonProperty("uuid") + private String uuid; + + /** + * The check date for the payment. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("check_date") + private Optional checkDate; + + /** + * The bonus amount in the payment. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("bonus") + private Optional bonus; + + /** + * The number of hours worked for the payment. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("hours") + private Optional hours; + + /** + * The rate per hour worked for the payment. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("hourly_rate") + private Optional hourlyRate; + + /** + * The payment method. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("payment_method") + private Optional paymentMethod; + + /** + * The reimbursement amount in the payment. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("reimbursement") + private Optional reimbursement; + + /** + * Contractor payment status + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("status") + private Optional status; + + /** + * The fixed wage of the payment, regardless of hours worked. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("wage") + private Optional wage; + + /** + * The wage type for the payment. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("wage_type") + private Optional wageType; + + /** + * (hours * hourly_rate) + wage + bonus + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("wage_total") + private Optional wageTotal; + + @JsonCreator + public ContractorPaymentListing( + @JsonProperty("uuid") String uuid, + @JsonProperty("check_date") Optional checkDate, + @JsonProperty("bonus") Optional bonus, + @JsonProperty("hours") Optional hours, + @JsonProperty("hourly_rate") Optional hourlyRate, + @JsonProperty("payment_method") Optional paymentMethod, + @JsonProperty("reimbursement") Optional reimbursement, + @JsonProperty("status") Optional status, + @JsonProperty("wage") Optional wage, + @JsonProperty("wage_type") Optional wageType, + @JsonProperty("wage_total") Optional wageTotal) { + Utils.checkNotNull(uuid, "uuid"); + Utils.checkNotNull(checkDate, "checkDate"); + Utils.checkNotNull(bonus, "bonus"); + Utils.checkNotNull(hours, "hours"); + Utils.checkNotNull(hourlyRate, "hourlyRate"); + Utils.checkNotNull(paymentMethod, "paymentMethod"); + Utils.checkNotNull(reimbursement, "reimbursement"); + Utils.checkNotNull(status, "status"); + Utils.checkNotNull(wage, "wage"); + Utils.checkNotNull(wageType, "wageType"); + Utils.checkNotNull(wageTotal, "wageTotal"); + this.uuid = uuid; + this.checkDate = checkDate; + this.bonus = bonus; + this.hours = hours; + this.hourlyRate = hourlyRate; + this.paymentMethod = paymentMethod; + this.reimbursement = reimbursement; + this.status = status; + this.wage = wage; + this.wageType = wageType; + this.wageTotal = wageTotal; + } + + public ContractorPaymentListing( + String uuid) { + this(uuid, Optional.empty(), Optional.empty(), + Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty(), Optional.empty()); + } + + /** + * The unique identifier of the contractor payment in Gusto. + */ + @JsonIgnore + public String uuid() { + return uuid; + } + + /** + * The check date for the payment. + */ + @JsonIgnore + public Optional checkDate() { + return checkDate; + } + + /** + * The bonus amount in the payment. + */ + @JsonIgnore + public Optional bonus() { + return bonus; + } + + /** + * The number of hours worked for the payment. + */ + @JsonIgnore + public Optional hours() { + return hours; + } + + /** + * The rate per hour worked for the payment. + */ + @JsonIgnore + public Optional hourlyRate() { + return hourlyRate; + } + + /** + * The payment method. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional paymentMethod() { + return (Optional) paymentMethod; + } + + /** + * The reimbursement amount in the payment. + */ + @JsonIgnore + public Optional reimbursement() { + return reimbursement; + } + + /** + * Contractor payment status + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional status() { + return (Optional) status; + } + + /** + * The fixed wage of the payment, regardless of hours worked. + */ + @JsonIgnore + public Optional wage() { + return wage; + } + + /** + * The wage type for the payment. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional wageType() { + return (Optional) wageType; + } + + /** + * (hours * hourly_rate) + wage + bonus + */ + @JsonIgnore + public Optional wageTotal() { + return wageTotal; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * The unique identifier of the contractor payment in Gusto. + */ + public ContractorPaymentListing withUuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + /** + * The check date for the payment. + */ + public ContractorPaymentListing withCheckDate(LocalDate checkDate) { + Utils.checkNotNull(checkDate, "checkDate"); + this.checkDate = Optional.ofNullable(checkDate); + return this; + } + + + /** + * The check date for the payment. + */ + public ContractorPaymentListing withCheckDate(Optional checkDate) { + Utils.checkNotNull(checkDate, "checkDate"); + this.checkDate = checkDate; + return this; + } + + /** + * The bonus amount in the payment. + */ + public ContractorPaymentListing withBonus(String bonus) { + Utils.checkNotNull(bonus, "bonus"); + this.bonus = Optional.ofNullable(bonus); + return this; + } + + + /** + * The bonus amount in the payment. + */ + public ContractorPaymentListing withBonus(Optional bonus) { + Utils.checkNotNull(bonus, "bonus"); + this.bonus = bonus; + return this; + } + + /** + * The number of hours worked for the payment. + */ + public ContractorPaymentListing withHours(String hours) { + Utils.checkNotNull(hours, "hours"); + this.hours = Optional.ofNullable(hours); + return this; + } + + + /** + * The number of hours worked for the payment. + */ + public ContractorPaymentListing withHours(Optional hours) { + Utils.checkNotNull(hours, "hours"); + this.hours = hours; + return this; + } + + /** + * The rate per hour worked for the payment. + */ + public ContractorPaymentListing withHourlyRate(String hourlyRate) { + Utils.checkNotNull(hourlyRate, "hourlyRate"); + this.hourlyRate = Optional.ofNullable(hourlyRate); + return this; + } + + + /** + * The rate per hour worked for the payment. + */ + public ContractorPaymentListing withHourlyRate(Optional hourlyRate) { + Utils.checkNotNull(hourlyRate, "hourlyRate"); + this.hourlyRate = hourlyRate; + return this; + } + + /** + * The payment method. + */ + public ContractorPaymentListing withPaymentMethod(ContractorPaymentListingPaymentMethod paymentMethod) { + Utils.checkNotNull(paymentMethod, "paymentMethod"); + this.paymentMethod = Optional.ofNullable(paymentMethod); + return this; + } + + + /** + * The payment method. + */ + public ContractorPaymentListing withPaymentMethod(Optional paymentMethod) { + Utils.checkNotNull(paymentMethod, "paymentMethod"); + this.paymentMethod = paymentMethod; + return this; + } + + /** + * The reimbursement amount in the payment. + */ + public ContractorPaymentListing withReimbursement(String reimbursement) { + Utils.checkNotNull(reimbursement, "reimbursement"); + this.reimbursement = Optional.ofNullable(reimbursement); + return this; + } + + + /** + * The reimbursement amount in the payment. + */ + public ContractorPaymentListing withReimbursement(Optional reimbursement) { + Utils.checkNotNull(reimbursement, "reimbursement"); + this.reimbursement = reimbursement; + return this; + } + + /** + * Contractor payment status + */ + public ContractorPaymentListing withStatus(ContractorPaymentListingStatus status) { + Utils.checkNotNull(status, "status"); + this.status = Optional.ofNullable(status); + return this; + } + + + /** + * Contractor payment status + */ + public ContractorPaymentListing withStatus(Optional status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + /** + * The fixed wage of the payment, regardless of hours worked. + */ + public ContractorPaymentListing withWage(String wage) { + Utils.checkNotNull(wage, "wage"); + this.wage = Optional.ofNullable(wage); + return this; + } + + + /** + * The fixed wage of the payment, regardless of hours worked. + */ + public ContractorPaymentListing withWage(Optional wage) { + Utils.checkNotNull(wage, "wage"); + this.wage = wage; + return this; + } + + /** + * The wage type for the payment. + */ + public ContractorPaymentListing withWageType(ContractorPaymentListingWageType wageType) { + Utils.checkNotNull(wageType, "wageType"); + this.wageType = Optional.ofNullable(wageType); + return this; + } + + + /** + * The wage type for the payment. + */ + public ContractorPaymentListing withWageType(Optional wageType) { + Utils.checkNotNull(wageType, "wageType"); + this.wageType = wageType; + return this; + } + + /** + * (hours * hourly_rate) + wage + bonus + */ + public ContractorPaymentListing withWageTotal(String wageTotal) { + Utils.checkNotNull(wageTotal, "wageTotal"); + this.wageTotal = Optional.ofNullable(wageTotal); + return this; + } + + + /** + * (hours * hourly_rate) + wage + bonus + */ + public ContractorPaymentListing withWageTotal(Optional wageTotal) { + Utils.checkNotNull(wageTotal, "wageTotal"); + this.wageTotal = wageTotal; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + ContractorPaymentListing other = (ContractorPaymentListing) o; + return + Utils.enhancedDeepEquals(this.uuid, other.uuid) && + Utils.enhancedDeepEquals(this.checkDate, other.checkDate) && + Utils.enhancedDeepEquals(this.bonus, other.bonus) && + Utils.enhancedDeepEquals(this.hours, other.hours) && + Utils.enhancedDeepEquals(this.hourlyRate, other.hourlyRate) && + Utils.enhancedDeepEquals(this.paymentMethod, other.paymentMethod) && + Utils.enhancedDeepEquals(this.reimbursement, other.reimbursement) && + Utils.enhancedDeepEquals(this.status, other.status) && + Utils.enhancedDeepEquals(this.wage, other.wage) && + Utils.enhancedDeepEquals(this.wageType, other.wageType) && + Utils.enhancedDeepEquals(this.wageTotal, other.wageTotal); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + uuid, checkDate, bonus, + hours, hourlyRate, paymentMethod, + reimbursement, status, wage, + wageType, wageTotal); + } + + @Override + public String toString() { + return Utils.toString(ContractorPaymentListing.class, + "uuid", uuid, + "checkDate", checkDate, + "bonus", bonus, + "hours", hours, + "hourlyRate", hourlyRate, + "paymentMethod", paymentMethod, + "reimbursement", reimbursement, + "status", status, + "wage", wage, + "wageType", wageType, + "wageTotal", wageTotal); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String uuid; + + private Optional checkDate = Optional.empty(); + + private Optional bonus = Optional.empty(); + + private Optional hours = Optional.empty(); + + private Optional hourlyRate = Optional.empty(); + + private Optional paymentMethod = Optional.empty(); + + private Optional reimbursement = Optional.empty(); + + private Optional status = Optional.empty(); + + private Optional wage = Optional.empty(); + + private Optional wageType = Optional.empty(); + + private Optional wageTotal = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * The unique identifier of the contractor payment in Gusto. + */ + public Builder uuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + + /** + * The check date for the payment. + */ + public Builder checkDate(LocalDate checkDate) { + Utils.checkNotNull(checkDate, "checkDate"); + this.checkDate = Optional.ofNullable(checkDate); + return this; + } + + /** + * The check date for the payment. + */ + public Builder checkDate(Optional checkDate) { + Utils.checkNotNull(checkDate, "checkDate"); + this.checkDate = checkDate; + return this; + } + + + /** + * The bonus amount in the payment. + */ + public Builder bonus(String bonus) { + Utils.checkNotNull(bonus, "bonus"); + this.bonus = Optional.ofNullable(bonus); + return this; + } + + /** + * The bonus amount in the payment. + */ + public Builder bonus(Optional bonus) { + Utils.checkNotNull(bonus, "bonus"); + this.bonus = bonus; + return this; + } + + + /** + * The number of hours worked for the payment. + */ + public Builder hours(String hours) { + Utils.checkNotNull(hours, "hours"); + this.hours = Optional.ofNullable(hours); + return this; + } + + /** + * The number of hours worked for the payment. + */ + public Builder hours(Optional hours) { + Utils.checkNotNull(hours, "hours"); + this.hours = hours; + return this; + } + + + /** + * The rate per hour worked for the payment. + */ + public Builder hourlyRate(String hourlyRate) { + Utils.checkNotNull(hourlyRate, "hourlyRate"); + this.hourlyRate = Optional.ofNullable(hourlyRate); + return this; + } + + /** + * The rate per hour worked for the payment. + */ + public Builder hourlyRate(Optional hourlyRate) { + Utils.checkNotNull(hourlyRate, "hourlyRate"); + this.hourlyRate = hourlyRate; + return this; + } + + + /** + * The payment method. + */ + public Builder paymentMethod(ContractorPaymentListingPaymentMethod paymentMethod) { + Utils.checkNotNull(paymentMethod, "paymentMethod"); + this.paymentMethod = Optional.ofNullable(paymentMethod); + return this; + } + + /** + * The payment method. + */ + public Builder paymentMethod(Optional paymentMethod) { + Utils.checkNotNull(paymentMethod, "paymentMethod"); + this.paymentMethod = paymentMethod; + return this; + } + + + /** + * The reimbursement amount in the payment. + */ + public Builder reimbursement(String reimbursement) { + Utils.checkNotNull(reimbursement, "reimbursement"); + this.reimbursement = Optional.ofNullable(reimbursement); + return this; + } + + /** + * The reimbursement amount in the payment. + */ + public Builder reimbursement(Optional reimbursement) { + Utils.checkNotNull(reimbursement, "reimbursement"); + this.reimbursement = reimbursement; + return this; + } + + + /** + * Contractor payment status + */ + public Builder status(ContractorPaymentListingStatus status) { + Utils.checkNotNull(status, "status"); + this.status = Optional.ofNullable(status); + return this; + } + + /** + * Contractor payment status + */ + public Builder status(Optional status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + + /** + * The fixed wage of the payment, regardless of hours worked. + */ + public Builder wage(String wage) { + Utils.checkNotNull(wage, "wage"); + this.wage = Optional.ofNullable(wage); + return this; + } + + /** + * The fixed wage of the payment, regardless of hours worked. + */ + public Builder wage(Optional wage) { + Utils.checkNotNull(wage, "wage"); + this.wage = wage; + return this; + } + + + /** + * The wage type for the payment. + */ + public Builder wageType(ContractorPaymentListingWageType wageType) { + Utils.checkNotNull(wageType, "wageType"); + this.wageType = Optional.ofNullable(wageType); + return this; + } + + /** + * The wage type for the payment. + */ + public Builder wageType(Optional wageType) { + Utils.checkNotNull(wageType, "wageType"); + this.wageType = wageType; + return this; + } + + + /** + * (hours * hourly_rate) + wage + bonus + */ + public Builder wageTotal(String wageTotal) { + Utils.checkNotNull(wageTotal, "wageTotal"); + this.wageTotal = Optional.ofNullable(wageTotal); + return this; + } + + /** + * (hours * hourly_rate) + wage + bonus + */ + public Builder wageTotal(Optional wageTotal) { + Utils.checkNotNull(wageTotal, "wageTotal"); + this.wageTotal = wageTotal; + return this; + } + + public ContractorPaymentListing build() { + + return new ContractorPaymentListing( + uuid, checkDate, bonus, + hours, hourlyRate, paymentMethod, + reimbursement, status, wage, + wageType, wageTotal); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentListingPaymentMethod.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentListingPaymentMethod.java new file mode 100644 index 000000000..a7fdd2a33 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentListingPaymentMethod.java @@ -0,0 +1,42 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * ContractorPaymentListingPaymentMethod + * + *

    The payment method. + */ +public enum ContractorPaymentListingPaymentMethod { + DIRECT_DEPOSIT("Direct Deposit"), + CHECK("Check"), + HISTORICAL_PAYMENT("Historical Payment"), + CORRECTION_PAYMENT("Correction Payment"); + + @JsonValue + private final String value; + + ContractorPaymentListingPaymentMethod(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (ContractorPaymentListingPaymentMethod o: ContractorPaymentListingPaymentMethod.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentListingStatus.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentListingStatus.java new file mode 100644 index 000000000..e10b88a3e --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentListingStatus.java @@ -0,0 +1,40 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * ContractorPaymentListingStatus + * + *

    Contractor payment status + */ +public enum ContractorPaymentListingStatus { + FUNDED("Funded"), + UNFUNDED("Unfunded"); + + @JsonValue + private final String value; + + ContractorPaymentListingStatus(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (ContractorPaymentListingStatus o: ContractorPaymentListingStatus.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentForGroupPreviewWageType.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentListingWageType.java similarity index 64% rename from gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentForGroupPreviewWageType.java rename to gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentListingWageType.java index 2b38a8552..d4b1a2305 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentForGroupPreviewWageType.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentListingWageType.java @@ -9,18 +9,18 @@ import java.util.Optional; /** - * ContractorPaymentForGroupPreviewWageType + * ContractorPaymentListingWageType * *

    The wage type for the payment. */ -public enum ContractorPaymentForGroupPreviewWageType { +public enum ContractorPaymentListingWageType { HOURLY("Hourly"), FIXED("Fixed"); @JsonValue private final String value; - ContractorPaymentForGroupPreviewWageType(String value) { + ContractorPaymentListingWageType(String value) { this.value = value; } @@ -28,8 +28,8 @@ public String value() { return value; } - public static Optional fromValue(String value) { - for (ContractorPaymentForGroupPreviewWageType o: ContractorPaymentForGroupPreviewWageType.values()) { + public static Optional fromValue(String value) { + for (ContractorPaymentListingWageType o: ContractorPaymentListingWageType.values()) { if (Objects.deepEquals(o.value, value)) { return Optional.of(o); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentReceipt.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentReceipt.java index 6e75f1a2b..7353e3c0a 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentReceipt.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentReceipt.java @@ -99,14 +99,14 @@ public class ContractorPaymentReceipt { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("contractor_payments") - private Optional> contractorPayments; + private Optional> contractorPayments; /** * The licensed payroll processor */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("licensee") - private Optional licensee; + private Optional licensee; @JsonCreator public ContractorPaymentReceipt( @@ -120,8 +120,8 @@ public ContractorPaymentReceipt( @JsonProperty("right_to_refund") Optional rightToRefund, @JsonProperty("liability_of_licensee") Optional liabilityOfLicensee, @JsonProperty("totals") Optional totals, - @JsonProperty("contractor_payments") Optional> contractorPayments, - @JsonProperty("licensee") Optional licensee) { + @JsonProperty("contractor_payments") Optional> contractorPayments, + @JsonProperty("licensee") Optional licensee) { Utils.checkNotNull(contractorPaymentUuid, "contractorPaymentUuid"); Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(nameOfSender, "nameOfSender"); @@ -247,8 +247,8 @@ public Optional totals() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional> contractorPayments() { - return (Optional>) contractorPayments; + public Optional> contractorPayments() { + return (Optional>) contractorPayments; } /** @@ -256,8 +256,8 @@ public Optional> contractorPayments() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional licensee() { - return (Optional) licensee; + public Optional licensee() { + return (Optional) licensee; } public static Builder builder() { @@ -470,7 +470,7 @@ public ContractorPaymentReceipt withTotals(Optional contractorPayments) { + public ContractorPaymentReceipt withContractorPayments(List contractorPayments) { Utils.checkNotNull(contractorPayments, "contractorPayments"); this.contractorPayments = Optional.ofNullable(contractorPayments); return this; @@ -480,7 +480,7 @@ public ContractorPaymentReceipt withContractorPayments(List /** * An array of contractor payments for this contractor payment. */ - public ContractorPaymentReceipt withContractorPayments(Optional> contractorPayments) { + public ContractorPaymentReceipt withContractorPayments(Optional> contractorPayments) { Utils.checkNotNull(contractorPayments, "contractorPayments"); this.contractorPayments = contractorPayments; return this; @@ -489,7 +489,7 @@ public ContractorPaymentReceipt withContractorPayments(Optional licensee) { + public ContractorPaymentReceipt withLicensee(Optional licensee) { Utils.checkNotNull(licensee, "licensee"); this.licensee = licensee; return this; @@ -578,9 +578,9 @@ public final static class Builder { private Optional totals = Optional.empty(); - private Optional> contractorPayments = Optional.empty(); + private Optional> contractorPayments = Optional.empty(); - private Optional licensee = Optional.empty(); + private Optional licensee = Optional.empty(); private Builder() { // force use of static builder() method @@ -792,7 +792,7 @@ public Builder totals(Optional totals) /** * An array of contractor payments for this contractor payment. */ - public Builder contractorPayments(List contractorPayments) { + public Builder contractorPayments(List contractorPayments) { Utils.checkNotNull(contractorPayments, "contractorPayments"); this.contractorPayments = Optional.ofNullable(contractorPayments); return this; @@ -801,7 +801,7 @@ public Builder contractorPayments(List contractorPayments) { /** * An array of contractor payments for this contractor payment. */ - public Builder contractorPayments(Optional> contractorPayments) { + public Builder contractorPayments(Optional> contractorPayments) { Utils.checkNotNull(contractorPayments, "contractorPayments"); this.contractorPayments = contractorPayments; return this; @@ -811,7 +811,7 @@ public Builder contractorPayments(Optional> c /** * The licensed payroll processor */ - public Builder licensee(ContractorPaymentReceiptLicensee licensee) { + public Builder licensee(Licensee licensee) { Utils.checkNotNull(licensee, "licensee"); this.licensee = Optional.ofNullable(licensee); return this; @@ -820,7 +820,7 @@ public Builder licensee(ContractorPaymentReceiptLicensee licensee) { /** * The licensed payroll processor */ - public Builder licensee(Optional licensee) { + public Builder licensee(Optional licensee) { Utils.checkNotNull(licensee, "licensee"); this.licensee = licensee; return this; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentReceiptContractorPayments.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentReceiptContractorPayments.java new file mode 100644 index 000000000..1255ac55e --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentReceiptContractorPayments.java @@ -0,0 +1,628 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class ContractorPaymentReceiptContractorPayments { + /** + * The UUID of the contractor. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("contractor_uuid") + private Optional contractorUuid; + + /** + * The first name of the contractor. Applies when `contractor_type` is `Individual`. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("contractor_first_name") + private Optional contractorFirstName; + + /** + * The last name of the contractor. Applies when `contractor_type` is `Individual`. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("contractor_last_name") + private Optional contractorLastName; + + /** + * The business name of the contractor. Applies when `contractor_type` is `Business`. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("contractor_business_name") + private Optional contractorBusinessName; + + /** + * The type of contractor. + * + *

    `Individual` `Business` + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("contractor_type") + private Optional contractorType; + + /** + * The payment method. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("payment_method") + private Optional paymentMethod; + + /** + * The fixed wage of the payment, regardless of hours worked. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("wage") + private Optional wage; + + /** + * The bonus amount in the payment. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("bonus") + private Optional bonus; + + /** + * The reimbursement amount in the payment. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("reimbursement") + private Optional reimbursement; + + @JsonCreator + public ContractorPaymentReceiptContractorPayments( + @JsonProperty("contractor_uuid") Optional contractorUuid, + @JsonProperty("contractor_first_name") Optional contractorFirstName, + @JsonProperty("contractor_last_name") Optional contractorLastName, + @JsonProperty("contractor_business_name") Optional contractorBusinessName, + @JsonProperty("contractor_type") Optional contractorType, + @JsonProperty("payment_method") Optional paymentMethod, + @JsonProperty("wage") Optional wage, + @JsonProperty("bonus") Optional bonus, + @JsonProperty("reimbursement") Optional reimbursement) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + Utils.checkNotNull(contractorFirstName, "contractorFirstName"); + Utils.checkNotNull(contractorLastName, "contractorLastName"); + Utils.checkNotNull(contractorBusinessName, "contractorBusinessName"); + Utils.checkNotNull(contractorType, "contractorType"); + Utils.checkNotNull(paymentMethod, "paymentMethod"); + Utils.checkNotNull(wage, "wage"); + Utils.checkNotNull(bonus, "bonus"); + Utils.checkNotNull(reimbursement, "reimbursement"); + this.contractorUuid = contractorUuid; + this.contractorFirstName = contractorFirstName; + this.contractorLastName = contractorLastName; + this.contractorBusinessName = contractorBusinessName; + this.contractorType = contractorType; + this.paymentMethod = paymentMethod; + this.wage = wage; + this.bonus = bonus; + this.reimbursement = reimbursement; + } + + public ContractorPaymentReceiptContractorPayments() { + this(Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty(), Optional.empty(), Optional.empty()); + } + + /** + * The UUID of the contractor. + */ + @JsonIgnore + public Optional contractorUuid() { + return contractorUuid; + } + + /** + * The first name of the contractor. Applies when `contractor_type` is `Individual`. + */ + @JsonIgnore + public Optional contractorFirstName() { + return contractorFirstName; + } + + /** + * The last name of the contractor. Applies when `contractor_type` is `Individual`. + */ + @JsonIgnore + public Optional contractorLastName() { + return contractorLastName; + } + + /** + * The business name of the contractor. Applies when `contractor_type` is `Business`. + */ + @JsonIgnore + public Optional contractorBusinessName() { + return contractorBusinessName; + } + + /** + * The type of contractor. + * + *

    `Individual` `Business` + */ + @JsonIgnore + public Optional contractorType() { + return contractorType; + } + + /** + * The payment method. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional paymentMethod() { + return (Optional) paymentMethod; + } + + /** + * The fixed wage of the payment, regardless of hours worked. + */ + @JsonIgnore + public Optional wage() { + return wage; + } + + /** + * The bonus amount in the payment. + */ + @JsonIgnore + public Optional bonus() { + return bonus; + } + + /** + * The reimbursement amount in the payment. + */ + @JsonIgnore + public Optional reimbursement() { + return reimbursement; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * The UUID of the contractor. + */ + public ContractorPaymentReceiptContractorPayments withContractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = Optional.ofNullable(contractorUuid); + return this; + } + + + /** + * The UUID of the contractor. + */ + public ContractorPaymentReceiptContractorPayments withContractorUuid(Optional contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + + /** + * The first name of the contractor. Applies when `contractor_type` is `Individual`. + */ + public ContractorPaymentReceiptContractorPayments withContractorFirstName(String contractorFirstName) { + Utils.checkNotNull(contractorFirstName, "contractorFirstName"); + this.contractorFirstName = Optional.ofNullable(contractorFirstName); + return this; + } + + + /** + * The first name of the contractor. Applies when `contractor_type` is `Individual`. + */ + public ContractorPaymentReceiptContractorPayments withContractorFirstName(Optional contractorFirstName) { + Utils.checkNotNull(contractorFirstName, "contractorFirstName"); + this.contractorFirstName = contractorFirstName; + return this; + } + + /** + * The last name of the contractor. Applies when `contractor_type` is `Individual`. + */ + public ContractorPaymentReceiptContractorPayments withContractorLastName(String contractorLastName) { + Utils.checkNotNull(contractorLastName, "contractorLastName"); + this.contractorLastName = Optional.ofNullable(contractorLastName); + return this; + } + + + /** + * The last name of the contractor. Applies when `contractor_type` is `Individual`. + */ + public ContractorPaymentReceiptContractorPayments withContractorLastName(Optional contractorLastName) { + Utils.checkNotNull(contractorLastName, "contractorLastName"); + this.contractorLastName = contractorLastName; + return this; + } + + /** + * The business name of the contractor. Applies when `contractor_type` is `Business`. + */ + public ContractorPaymentReceiptContractorPayments withContractorBusinessName(String contractorBusinessName) { + Utils.checkNotNull(contractorBusinessName, "contractorBusinessName"); + this.contractorBusinessName = Optional.ofNullable(contractorBusinessName); + return this; + } + + + /** + * The business name of the contractor. Applies when `contractor_type` is `Business`. + */ + public ContractorPaymentReceiptContractorPayments withContractorBusinessName(Optional contractorBusinessName) { + Utils.checkNotNull(contractorBusinessName, "contractorBusinessName"); + this.contractorBusinessName = contractorBusinessName; + return this; + } + + /** + * The type of contractor. + * + *

    `Individual` `Business` + */ + public ContractorPaymentReceiptContractorPayments withContractorType(String contractorType) { + Utils.checkNotNull(contractorType, "contractorType"); + this.contractorType = Optional.ofNullable(contractorType); + return this; + } + + + /** + * The type of contractor. + * + *

    `Individual` `Business` + */ + public ContractorPaymentReceiptContractorPayments withContractorType(Optional contractorType) { + Utils.checkNotNull(contractorType, "contractorType"); + this.contractorType = contractorType; + return this; + } + + /** + * The payment method. + */ + public ContractorPaymentReceiptContractorPayments withPaymentMethod(ContractorPaymentReceiptPaymentMethod paymentMethod) { + Utils.checkNotNull(paymentMethod, "paymentMethod"); + this.paymentMethod = Optional.ofNullable(paymentMethod); + return this; + } + + + /** + * The payment method. + */ + public ContractorPaymentReceiptContractorPayments withPaymentMethod(Optional paymentMethod) { + Utils.checkNotNull(paymentMethod, "paymentMethod"); + this.paymentMethod = paymentMethod; + return this; + } + + /** + * The fixed wage of the payment, regardless of hours worked. + */ + public ContractorPaymentReceiptContractorPayments withWage(String wage) { + Utils.checkNotNull(wage, "wage"); + this.wage = Optional.ofNullable(wage); + return this; + } + + + /** + * The fixed wage of the payment, regardless of hours worked. + */ + public ContractorPaymentReceiptContractorPayments withWage(Optional wage) { + Utils.checkNotNull(wage, "wage"); + this.wage = wage; + return this; + } + + /** + * The bonus amount in the payment. + */ + public ContractorPaymentReceiptContractorPayments withBonus(String bonus) { + Utils.checkNotNull(bonus, "bonus"); + this.bonus = Optional.ofNullable(bonus); + return this; + } + + + /** + * The bonus amount in the payment. + */ + public ContractorPaymentReceiptContractorPayments withBonus(Optional bonus) { + Utils.checkNotNull(bonus, "bonus"); + this.bonus = bonus; + return this; + } + + /** + * The reimbursement amount in the payment. + */ + public ContractorPaymentReceiptContractorPayments withReimbursement(String reimbursement) { + Utils.checkNotNull(reimbursement, "reimbursement"); + this.reimbursement = Optional.ofNullable(reimbursement); + return this; + } + + + /** + * The reimbursement amount in the payment. + */ + public ContractorPaymentReceiptContractorPayments withReimbursement(Optional reimbursement) { + Utils.checkNotNull(reimbursement, "reimbursement"); + this.reimbursement = reimbursement; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + ContractorPaymentReceiptContractorPayments other = (ContractorPaymentReceiptContractorPayments) o; + return + Utils.enhancedDeepEquals(this.contractorUuid, other.contractorUuid) && + Utils.enhancedDeepEquals(this.contractorFirstName, other.contractorFirstName) && + Utils.enhancedDeepEquals(this.contractorLastName, other.contractorLastName) && + Utils.enhancedDeepEquals(this.contractorBusinessName, other.contractorBusinessName) && + Utils.enhancedDeepEquals(this.contractorType, other.contractorType) && + Utils.enhancedDeepEquals(this.paymentMethod, other.paymentMethod) && + Utils.enhancedDeepEquals(this.wage, other.wage) && + Utils.enhancedDeepEquals(this.bonus, other.bonus) && + Utils.enhancedDeepEquals(this.reimbursement, other.reimbursement); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contractorUuid, contractorFirstName, contractorLastName, + contractorBusinessName, contractorType, paymentMethod, + wage, bonus, reimbursement); + } + + @Override + public String toString() { + return Utils.toString(ContractorPaymentReceiptContractorPayments.class, + "contractorUuid", contractorUuid, + "contractorFirstName", contractorFirstName, + "contractorLastName", contractorLastName, + "contractorBusinessName", contractorBusinessName, + "contractorType", contractorType, + "paymentMethod", paymentMethod, + "wage", wage, + "bonus", bonus, + "reimbursement", reimbursement); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional contractorUuid = Optional.empty(); + + private Optional contractorFirstName = Optional.empty(); + + private Optional contractorLastName = Optional.empty(); + + private Optional contractorBusinessName = Optional.empty(); + + private Optional contractorType = Optional.empty(); + + private Optional paymentMethod = Optional.empty(); + + private Optional wage = Optional.empty(); + + private Optional bonus = Optional.empty(); + + private Optional reimbursement = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * The UUID of the contractor. + */ + public Builder contractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = Optional.ofNullable(contractorUuid); + return this; + } + + /** + * The UUID of the contractor. + */ + public Builder contractorUuid(Optional contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + + + /** + * The first name of the contractor. Applies when `contractor_type` is `Individual`. + */ + public Builder contractorFirstName(String contractorFirstName) { + Utils.checkNotNull(contractorFirstName, "contractorFirstName"); + this.contractorFirstName = Optional.ofNullable(contractorFirstName); + return this; + } + + /** + * The first name of the contractor. Applies when `contractor_type` is `Individual`. + */ + public Builder contractorFirstName(Optional contractorFirstName) { + Utils.checkNotNull(contractorFirstName, "contractorFirstName"); + this.contractorFirstName = contractorFirstName; + return this; + } + + + /** + * The last name of the contractor. Applies when `contractor_type` is `Individual`. + */ + public Builder contractorLastName(String contractorLastName) { + Utils.checkNotNull(contractorLastName, "contractorLastName"); + this.contractorLastName = Optional.ofNullable(contractorLastName); + return this; + } + + /** + * The last name of the contractor. Applies when `contractor_type` is `Individual`. + */ + public Builder contractorLastName(Optional contractorLastName) { + Utils.checkNotNull(contractorLastName, "contractorLastName"); + this.contractorLastName = contractorLastName; + return this; + } + + + /** + * The business name of the contractor. Applies when `contractor_type` is `Business`. + */ + public Builder contractorBusinessName(String contractorBusinessName) { + Utils.checkNotNull(contractorBusinessName, "contractorBusinessName"); + this.contractorBusinessName = Optional.ofNullable(contractorBusinessName); + return this; + } + + /** + * The business name of the contractor. Applies when `contractor_type` is `Business`. + */ + public Builder contractorBusinessName(Optional contractorBusinessName) { + Utils.checkNotNull(contractorBusinessName, "contractorBusinessName"); + this.contractorBusinessName = contractorBusinessName; + return this; + } + + + /** + * The type of contractor. + * + *

    `Individual` `Business` + */ + public Builder contractorType(String contractorType) { + Utils.checkNotNull(contractorType, "contractorType"); + this.contractorType = Optional.ofNullable(contractorType); + return this; + } + + /** + * The type of contractor. + * + *

    `Individual` `Business` + */ + public Builder contractorType(Optional contractorType) { + Utils.checkNotNull(contractorType, "contractorType"); + this.contractorType = contractorType; + return this; + } + + + /** + * The payment method. + */ + public Builder paymentMethod(ContractorPaymentReceiptPaymentMethod paymentMethod) { + Utils.checkNotNull(paymentMethod, "paymentMethod"); + this.paymentMethod = Optional.ofNullable(paymentMethod); + return this; + } + + /** + * The payment method. + */ + public Builder paymentMethod(Optional paymentMethod) { + Utils.checkNotNull(paymentMethod, "paymentMethod"); + this.paymentMethod = paymentMethod; + return this; + } + + + /** + * The fixed wage of the payment, regardless of hours worked. + */ + public Builder wage(String wage) { + Utils.checkNotNull(wage, "wage"); + this.wage = Optional.ofNullable(wage); + return this; + } + + /** + * The fixed wage of the payment, regardless of hours worked. + */ + public Builder wage(Optional wage) { + Utils.checkNotNull(wage, "wage"); + this.wage = wage; + return this; + } + + + /** + * The bonus amount in the payment. + */ + public Builder bonus(String bonus) { + Utils.checkNotNull(bonus, "bonus"); + this.bonus = Optional.ofNullable(bonus); + return this; + } + + /** + * The bonus amount in the payment. + */ + public Builder bonus(Optional bonus) { + Utils.checkNotNull(bonus, "bonus"); + this.bonus = bonus; + return this; + } + + + /** + * The reimbursement amount in the payment. + */ + public Builder reimbursement(String reimbursement) { + Utils.checkNotNull(reimbursement, "reimbursement"); + this.reimbursement = Optional.ofNullable(reimbursement); + return this; + } + + /** + * The reimbursement amount in the payment. + */ + public Builder reimbursement(Optional reimbursement) { + Utils.checkNotNull(reimbursement, "reimbursement"); + this.reimbursement = reimbursement; + return this; + } + + public ContractorPaymentReceiptContractorPayments build() { + + return new ContractorPaymentReceiptContractorPayments( + contractorUuid, contractorFirstName, contractorLastName, + contractorBusinessName, contractorType, paymentMethod, + wage, bonus, reimbursement); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentSummary.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentSummary.java index c0910fe5e..495a6d7ba 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentSummary.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentSummary.java @@ -33,12 +33,12 @@ public class ContractorPaymentSummary { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("contractor_payments") - private Optional> contractorPayments; + private Optional> contractorPayments; @JsonCreator public ContractorPaymentSummary( @JsonProperty("total") Optional total, - @JsonProperty("contractor_payments") Optional> contractorPayments) { + @JsonProperty("contractor_payments") Optional> contractorPayments) { Utils.checkNotNull(total, "total"); Utils.checkNotNull(contractorPayments, "contractorPayments"); this.total = total; @@ -63,8 +63,8 @@ public Optional total() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional> contractorPayments() { - return (Optional>) contractorPayments; + public Optional> contractorPayments() { + return (Optional>) contractorPayments; } public static Builder builder() { @@ -94,7 +94,7 @@ public ContractorPaymentSummary withTotal(Optional total) { /** * The individual contractor payments, within a given time period, grouped by contractor. */ - public ContractorPaymentSummary withContractorPayments(List contractorPayments) { + public ContractorPaymentSummary withContractorPayments(List contractorPayments) { Utils.checkNotNull(contractorPayments, "contractorPayments"); this.contractorPayments = Optional.ofNullable(contractorPayments); return this; @@ -104,7 +104,7 @@ public ContractorPaymentSummary withContractorPayments(List> contractorPayments) { + public ContractorPaymentSummary withContractorPayments(Optional> contractorPayments) { Utils.checkNotNull(contractorPayments, "contractorPayments"); this.contractorPayments = contractorPayments; return this; @@ -142,7 +142,7 @@ public final static class Builder { private Optional total = Optional.empty(); - private Optional> contractorPayments = Optional.empty(); + private Optional> contractorPayments = Optional.empty(); private Builder() { // force use of static builder() method @@ -171,7 +171,7 @@ public Builder total(Optional total) { /** * The individual contractor payments, within a given time period, grouped by contractor. */ - public Builder contractorPayments(List contractorPayments) { + public Builder contractorPayments(List contractorPayments) { Utils.checkNotNull(contractorPayments, "contractorPayments"); this.contractorPayments = Optional.ofNullable(contractorPayments); return this; @@ -180,7 +180,7 @@ public Builder contractorPayments(List> contractorPayments) { + public Builder contractorPayments(Optional> contractorPayments) { Utils.checkNotNull(contractorPayments, "contractorPayments"); this.contractorPayments = contractorPayments; return this; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentSummaryContractorPayments.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentSummaryContractorPayments.java deleted file mode 100644 index b568e0146..000000000 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentSummaryContractorPayments.java +++ /dev/null @@ -1,315 +0,0 @@ -/* - * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - */ -package com.gusto.embedded_api_v_2025_11_15.models.components; - -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonIgnore; -import com.fasterxml.jackson.annotation.JsonInclude.Include; -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.gusto.embedded_api_v_2025_11_15.utils.Utils; -import java.lang.Double; -import java.lang.Override; -import java.lang.String; -import java.lang.SuppressWarnings; -import java.util.List; -import java.util.Optional; - - -public class ContractorPaymentSummaryContractorPayments { - /** - * The UUID of the contractor. - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("contractor_uuid") - private Optional contractorUuid; - - /** - * The total reimbursements for the contractor within a given time period. - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("reimbursement_total") - private Optional reimbursementTotal; - - /** - * The total wages for the contractor within a given time period. - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("wage_total") - private Optional wageTotal; - - /** - * The contractor's payments within a given time period. - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("payments") - private Optional> payments; - - @JsonCreator - public ContractorPaymentSummaryContractorPayments( - @JsonProperty("contractor_uuid") Optional contractorUuid, - @JsonProperty("reimbursement_total") Optional reimbursementTotal, - @JsonProperty("wage_total") Optional wageTotal, - @JsonProperty("payments") Optional> payments) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); - Utils.checkNotNull(reimbursementTotal, "reimbursementTotal"); - Utils.checkNotNull(wageTotal, "wageTotal"); - Utils.checkNotNull(payments, "payments"); - this.contractorUuid = contractorUuid; - this.reimbursementTotal = reimbursementTotal; - this.wageTotal = wageTotal; - this.payments = payments; - } - - public ContractorPaymentSummaryContractorPayments() { - this(Optional.empty(), Optional.empty(), Optional.empty(), - Optional.empty()); - } - - /** - * The UUID of the contractor. - */ - @JsonIgnore - public Optional contractorUuid() { - return contractorUuid; - } - - /** - * The total reimbursements for the contractor within a given time period. - */ - @JsonIgnore - public Optional reimbursementTotal() { - return reimbursementTotal; - } - - /** - * The total wages for the contractor within a given time period. - */ - @JsonIgnore - public Optional wageTotal() { - return wageTotal; - } - - /** - * The contractor's payments within a given time period. - */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional> payments() { - return (Optional>) payments; - } - - public static Builder builder() { - return new Builder(); - } - - - /** - * The UUID of the contractor. - */ - public ContractorPaymentSummaryContractorPayments withContractorUuid(double contractorUuid) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); - this.contractorUuid = Optional.ofNullable(contractorUuid); - return this; - } - - - /** - * The UUID of the contractor. - */ - public ContractorPaymentSummaryContractorPayments withContractorUuid(Optional contractorUuid) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); - this.contractorUuid = contractorUuid; - return this; - } - - /** - * The total reimbursements for the contractor within a given time period. - */ - public ContractorPaymentSummaryContractorPayments withReimbursementTotal(String reimbursementTotal) { - Utils.checkNotNull(reimbursementTotal, "reimbursementTotal"); - this.reimbursementTotal = Optional.ofNullable(reimbursementTotal); - return this; - } - - - /** - * The total reimbursements for the contractor within a given time period. - */ - public ContractorPaymentSummaryContractorPayments withReimbursementTotal(Optional reimbursementTotal) { - Utils.checkNotNull(reimbursementTotal, "reimbursementTotal"); - this.reimbursementTotal = reimbursementTotal; - return this; - } - - /** - * The total wages for the contractor within a given time period. - */ - public ContractorPaymentSummaryContractorPayments withWageTotal(String wageTotal) { - Utils.checkNotNull(wageTotal, "wageTotal"); - this.wageTotal = Optional.ofNullable(wageTotal); - return this; - } - - - /** - * The total wages for the contractor within a given time period. - */ - public ContractorPaymentSummaryContractorPayments withWageTotal(Optional wageTotal) { - Utils.checkNotNull(wageTotal, "wageTotal"); - this.wageTotal = wageTotal; - return this; - } - - /** - * The contractor's payments within a given time period. - */ - public ContractorPaymentSummaryContractorPayments withPayments(List payments) { - Utils.checkNotNull(payments, "payments"); - this.payments = Optional.ofNullable(payments); - return this; - } - - - /** - * The contractor's payments within a given time period. - */ - public ContractorPaymentSummaryContractorPayments withPayments(Optional> payments) { - Utils.checkNotNull(payments, "payments"); - this.payments = payments; - return this; - } - - @Override - public boolean equals(java.lang.Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - ContractorPaymentSummaryContractorPayments other = (ContractorPaymentSummaryContractorPayments) o; - return - Utils.enhancedDeepEquals(this.contractorUuid, other.contractorUuid) && - Utils.enhancedDeepEquals(this.reimbursementTotal, other.reimbursementTotal) && - Utils.enhancedDeepEquals(this.wageTotal, other.wageTotal) && - Utils.enhancedDeepEquals(this.payments, other.payments); - } - - @Override - public int hashCode() { - return Utils.enhancedHash( - contractorUuid, reimbursementTotal, wageTotal, - payments); - } - - @Override - public String toString() { - return Utils.toString(ContractorPaymentSummaryContractorPayments.class, - "contractorUuid", contractorUuid, - "reimbursementTotal", reimbursementTotal, - "wageTotal", wageTotal, - "payments", payments); - } - - @SuppressWarnings("UnusedReturnValue") - public final static class Builder { - - private Optional contractorUuid = Optional.empty(); - - private Optional reimbursementTotal = Optional.empty(); - - private Optional wageTotal = Optional.empty(); - - private Optional> payments = Optional.empty(); - - private Builder() { - // force use of static builder() method - } - - - /** - * The UUID of the contractor. - */ - public Builder contractorUuid(double contractorUuid) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); - this.contractorUuid = Optional.ofNullable(contractorUuid); - return this; - } - - /** - * The UUID of the contractor. - */ - public Builder contractorUuid(Optional contractorUuid) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); - this.contractorUuid = contractorUuid; - return this; - } - - - /** - * The total reimbursements for the contractor within a given time period. - */ - public Builder reimbursementTotal(String reimbursementTotal) { - Utils.checkNotNull(reimbursementTotal, "reimbursementTotal"); - this.reimbursementTotal = Optional.ofNullable(reimbursementTotal); - return this; - } - - /** - * The total reimbursements for the contractor within a given time period. - */ - public Builder reimbursementTotal(Optional reimbursementTotal) { - Utils.checkNotNull(reimbursementTotal, "reimbursementTotal"); - this.reimbursementTotal = reimbursementTotal; - return this; - } - - - /** - * The total wages for the contractor within a given time period. - */ - public Builder wageTotal(String wageTotal) { - Utils.checkNotNull(wageTotal, "wageTotal"); - this.wageTotal = Optional.ofNullable(wageTotal); - return this; - } - - /** - * The total wages for the contractor within a given time period. - */ - public Builder wageTotal(Optional wageTotal) { - Utils.checkNotNull(wageTotal, "wageTotal"); - this.wageTotal = wageTotal; - return this; - } - - - /** - * The contractor's payments within a given time period. - */ - public Builder payments(List payments) { - Utils.checkNotNull(payments, "payments"); - this.payments = Optional.ofNullable(payments); - return this; - } - - /** - * The contractor's payments within a given time period. - */ - public Builder payments(Optional> payments) { - Utils.checkNotNull(payments, "payments"); - this.payments = payments; - return this; - } - - public ContractorPaymentSummaryContractorPayments build() { - - return new ContractorPaymentSummaryContractorPayments( - contractorUuid, reimbursementTotal, wageTotal, - payments); - } - - } -} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPayments.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPayments.java index 440c3e15f..e995f699d 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPayments.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPayments.java @@ -9,9 +9,11 @@ import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.annotation.JsonProperty; import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Double; import java.lang.Override; import java.lang.String; import java.lang.SuppressWarnings; +import java.util.List; import java.util.Optional; @@ -21,176 +23,81 @@ public class ContractorPayments { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("contractor_uuid") - private Optional contractorUuid; + private Optional contractorUuid; /** - * The first name of the contractor. Applies when `contractor_type` is `Individual`. + * The total reimbursements for the contractor within a given time period. */ @JsonInclude(Include.NON_ABSENT) - @JsonProperty("contractor_first_name") - private Optional contractorFirstName; + @JsonProperty("reimbursement_total") + private Optional reimbursementTotal; /** - * The last name of the contractor. Applies when `contractor_type` is `Individual`. + * The total wages for the contractor within a given time period. */ @JsonInclude(Include.NON_ABSENT) - @JsonProperty("contractor_last_name") - private Optional contractorLastName; + @JsonProperty("wage_total") + private Optional wageTotal; /** - * The business name of the contractor. Applies when `contractor_type` is `Business`. + * The contractor's payments within a given time period. */ @JsonInclude(Include.NON_ABSENT) - @JsonProperty("contractor_business_name") - private Optional contractorBusinessName; - - /** - * The type of contractor. - * - *

    `Individual` `Business` - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("contractor_type") - private Optional contractorType; - - /** - * The payment method. - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("payment_method") - private Optional paymentMethod; - - /** - * The fixed wage of the payment, regardless of hours worked. - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("wage") - private Optional wage; - - /** - * The bonus amount in the payment. - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("bonus") - private Optional bonus; - - /** - * The reimbursement amount in the payment. - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("reimbursement") - private Optional reimbursement; + @JsonProperty("payments") + private Optional> payments; @JsonCreator public ContractorPayments( - @JsonProperty("contractor_uuid") Optional contractorUuid, - @JsonProperty("contractor_first_name") Optional contractorFirstName, - @JsonProperty("contractor_last_name") Optional contractorLastName, - @JsonProperty("contractor_business_name") Optional contractorBusinessName, - @JsonProperty("contractor_type") Optional contractorType, - @JsonProperty("payment_method") Optional paymentMethod, - @JsonProperty("wage") Optional wage, - @JsonProperty("bonus") Optional bonus, - @JsonProperty("reimbursement") Optional reimbursement) { + @JsonProperty("contractor_uuid") Optional contractorUuid, + @JsonProperty("reimbursement_total") Optional reimbursementTotal, + @JsonProperty("wage_total") Optional wageTotal, + @JsonProperty("payments") Optional> payments) { Utils.checkNotNull(contractorUuid, "contractorUuid"); - Utils.checkNotNull(contractorFirstName, "contractorFirstName"); - Utils.checkNotNull(contractorLastName, "contractorLastName"); - Utils.checkNotNull(contractorBusinessName, "contractorBusinessName"); - Utils.checkNotNull(contractorType, "contractorType"); - Utils.checkNotNull(paymentMethod, "paymentMethod"); - Utils.checkNotNull(wage, "wage"); - Utils.checkNotNull(bonus, "bonus"); - Utils.checkNotNull(reimbursement, "reimbursement"); + Utils.checkNotNull(reimbursementTotal, "reimbursementTotal"); + Utils.checkNotNull(wageTotal, "wageTotal"); + Utils.checkNotNull(payments, "payments"); this.contractorUuid = contractorUuid; - this.contractorFirstName = contractorFirstName; - this.contractorLastName = contractorLastName; - this.contractorBusinessName = contractorBusinessName; - this.contractorType = contractorType; - this.paymentMethod = paymentMethod; - this.wage = wage; - this.bonus = bonus; - this.reimbursement = reimbursement; + this.reimbursementTotal = reimbursementTotal; + this.wageTotal = wageTotal; + this.payments = payments; } public ContractorPayments() { this(Optional.empty(), Optional.empty(), Optional.empty(), - Optional.empty(), Optional.empty(), Optional.empty(), - Optional.empty(), Optional.empty(), Optional.empty()); + Optional.empty()); } /** * The UUID of the contractor. */ @JsonIgnore - public Optional contractorUuid() { + public Optional contractorUuid() { return contractorUuid; } /** - * The first name of the contractor. Applies when `contractor_type` is `Individual`. + * The total reimbursements for the contractor within a given time period. */ @JsonIgnore - public Optional contractorFirstName() { - return contractorFirstName; + public Optional reimbursementTotal() { + return reimbursementTotal; } /** - * The last name of the contractor. Applies when `contractor_type` is `Individual`. + * The total wages for the contractor within a given time period. */ @JsonIgnore - public Optional contractorLastName() { - return contractorLastName; + public Optional wageTotal() { + return wageTotal; } /** - * The business name of the contractor. Applies when `contractor_type` is `Business`. - */ - @JsonIgnore - public Optional contractorBusinessName() { - return contractorBusinessName; - } - - /** - * The type of contractor. - * - *

    `Individual` `Business` - */ - @JsonIgnore - public Optional contractorType() { - return contractorType; - } - - /** - * The payment method. + * The contractor's payments within a given time period. */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional paymentMethod() { - return (Optional) paymentMethod; - } - - /** - * The fixed wage of the payment, regardless of hours worked. - */ - @JsonIgnore - public Optional wage() { - return wage; - } - - /** - * The bonus amount in the payment. - */ - @JsonIgnore - public Optional bonus() { - return bonus; - } - - /** - * The reimbursement amount in the payment. - */ - @JsonIgnore - public Optional reimbursement() { - return reimbursement; + public Optional> payments() { + return (Optional>) payments; } public static Builder builder() { @@ -201,7 +108,7 @@ public static Builder builder() { /** * The UUID of the contractor. */ - public ContractorPayments withContractorUuid(String contractorUuid) { + public ContractorPayments withContractorUuid(double contractorUuid) { Utils.checkNotNull(contractorUuid, "contractorUuid"); this.contractorUuid = Optional.ofNullable(contractorUuid); return this; @@ -211,165 +118,66 @@ public ContractorPayments withContractorUuid(String contractorUuid) { /** * The UUID of the contractor. */ - public ContractorPayments withContractorUuid(Optional contractorUuid) { + public ContractorPayments withContractorUuid(Optional contractorUuid) { Utils.checkNotNull(contractorUuid, "contractorUuid"); this.contractorUuid = contractorUuid; return this; } /** - * The first name of the contractor. Applies when `contractor_type` is `Individual`. - */ - public ContractorPayments withContractorFirstName(String contractorFirstName) { - Utils.checkNotNull(contractorFirstName, "contractorFirstName"); - this.contractorFirstName = Optional.ofNullable(contractorFirstName); - return this; - } - - - /** - * The first name of the contractor. Applies when `contractor_type` is `Individual`. - */ - public ContractorPayments withContractorFirstName(Optional contractorFirstName) { - Utils.checkNotNull(contractorFirstName, "contractorFirstName"); - this.contractorFirstName = contractorFirstName; - return this; - } - - /** - * The last name of the contractor. Applies when `contractor_type` is `Individual`. - */ - public ContractorPayments withContractorLastName(String contractorLastName) { - Utils.checkNotNull(contractorLastName, "contractorLastName"); - this.contractorLastName = Optional.ofNullable(contractorLastName); - return this; - } - - - /** - * The last name of the contractor. Applies when `contractor_type` is `Individual`. - */ - public ContractorPayments withContractorLastName(Optional contractorLastName) { - Utils.checkNotNull(contractorLastName, "contractorLastName"); - this.contractorLastName = contractorLastName; - return this; - } - - /** - * The business name of the contractor. Applies when `contractor_type` is `Business`. - */ - public ContractorPayments withContractorBusinessName(String contractorBusinessName) { - Utils.checkNotNull(contractorBusinessName, "contractorBusinessName"); - this.contractorBusinessName = Optional.ofNullable(contractorBusinessName); - return this; - } - - - /** - * The business name of the contractor. Applies when `contractor_type` is `Business`. - */ - public ContractorPayments withContractorBusinessName(Optional contractorBusinessName) { - Utils.checkNotNull(contractorBusinessName, "contractorBusinessName"); - this.contractorBusinessName = contractorBusinessName; - return this; - } - - /** - * The type of contractor. - * - *

    `Individual` `Business` - */ - public ContractorPayments withContractorType(String contractorType) { - Utils.checkNotNull(contractorType, "contractorType"); - this.contractorType = Optional.ofNullable(contractorType); - return this; - } - - - /** - * The type of contractor. - * - *

    `Individual` `Business` - */ - public ContractorPayments withContractorType(Optional contractorType) { - Utils.checkNotNull(contractorType, "contractorType"); - this.contractorType = contractorType; - return this; - } - - /** - * The payment method. - */ - public ContractorPayments withPaymentMethod(ContractorPaymentReceiptPaymentMethod paymentMethod) { - Utils.checkNotNull(paymentMethod, "paymentMethod"); - this.paymentMethod = Optional.ofNullable(paymentMethod); - return this; - } - - - /** - * The payment method. - */ - public ContractorPayments withPaymentMethod(Optional paymentMethod) { - Utils.checkNotNull(paymentMethod, "paymentMethod"); - this.paymentMethod = paymentMethod; - return this; - } - - /** - * The fixed wage of the payment, regardless of hours worked. + * The total reimbursements for the contractor within a given time period. */ - public ContractorPayments withWage(String wage) { - Utils.checkNotNull(wage, "wage"); - this.wage = Optional.ofNullable(wage); + public ContractorPayments withReimbursementTotal(String reimbursementTotal) { + Utils.checkNotNull(reimbursementTotal, "reimbursementTotal"); + this.reimbursementTotal = Optional.ofNullable(reimbursementTotal); return this; } /** - * The fixed wage of the payment, regardless of hours worked. + * The total reimbursements for the contractor within a given time period. */ - public ContractorPayments withWage(Optional wage) { - Utils.checkNotNull(wage, "wage"); - this.wage = wage; + public ContractorPayments withReimbursementTotal(Optional reimbursementTotal) { + Utils.checkNotNull(reimbursementTotal, "reimbursementTotal"); + this.reimbursementTotal = reimbursementTotal; return this; } /** - * The bonus amount in the payment. + * The total wages for the contractor within a given time period. */ - public ContractorPayments withBonus(String bonus) { - Utils.checkNotNull(bonus, "bonus"); - this.bonus = Optional.ofNullable(bonus); + public ContractorPayments withWageTotal(String wageTotal) { + Utils.checkNotNull(wageTotal, "wageTotal"); + this.wageTotal = Optional.ofNullable(wageTotal); return this; } /** - * The bonus amount in the payment. + * The total wages for the contractor within a given time period. */ - public ContractorPayments withBonus(Optional bonus) { - Utils.checkNotNull(bonus, "bonus"); - this.bonus = bonus; + public ContractorPayments withWageTotal(Optional wageTotal) { + Utils.checkNotNull(wageTotal, "wageTotal"); + this.wageTotal = wageTotal; return this; } /** - * The reimbursement amount in the payment. + * The contractor's payments within a given time period. */ - public ContractorPayments withReimbursement(String reimbursement) { - Utils.checkNotNull(reimbursement, "reimbursement"); - this.reimbursement = Optional.ofNullable(reimbursement); + public ContractorPayments withPayments(List payments) { + Utils.checkNotNull(payments, "payments"); + this.payments = Optional.ofNullable(payments); return this; } /** - * The reimbursement amount in the payment. + * The contractor's payments within a given time period. */ - public ContractorPayments withReimbursement(Optional reimbursement) { - Utils.checkNotNull(reimbursement, "reimbursement"); - this.reimbursement = reimbursement; + public ContractorPayments withPayments(Optional> payments) { + Utils.checkNotNull(payments, "payments"); + this.payments = payments; return this; } @@ -384,58 +192,37 @@ public boolean equals(java.lang.Object o) { ContractorPayments other = (ContractorPayments) o; return Utils.enhancedDeepEquals(this.contractorUuid, other.contractorUuid) && - Utils.enhancedDeepEquals(this.contractorFirstName, other.contractorFirstName) && - Utils.enhancedDeepEquals(this.contractorLastName, other.contractorLastName) && - Utils.enhancedDeepEquals(this.contractorBusinessName, other.contractorBusinessName) && - Utils.enhancedDeepEquals(this.contractorType, other.contractorType) && - Utils.enhancedDeepEquals(this.paymentMethod, other.paymentMethod) && - Utils.enhancedDeepEquals(this.wage, other.wage) && - Utils.enhancedDeepEquals(this.bonus, other.bonus) && - Utils.enhancedDeepEquals(this.reimbursement, other.reimbursement); + Utils.enhancedDeepEquals(this.reimbursementTotal, other.reimbursementTotal) && + Utils.enhancedDeepEquals(this.wageTotal, other.wageTotal) && + Utils.enhancedDeepEquals(this.payments, other.payments); } @Override public int hashCode() { return Utils.enhancedHash( - contractorUuid, contractorFirstName, contractorLastName, - contractorBusinessName, contractorType, paymentMethod, - wage, bonus, reimbursement); + contractorUuid, reimbursementTotal, wageTotal, + payments); } @Override public String toString() { return Utils.toString(ContractorPayments.class, "contractorUuid", contractorUuid, - "contractorFirstName", contractorFirstName, - "contractorLastName", contractorLastName, - "contractorBusinessName", contractorBusinessName, - "contractorType", contractorType, - "paymentMethod", paymentMethod, - "wage", wage, - "bonus", bonus, - "reimbursement", reimbursement); + "reimbursementTotal", reimbursementTotal, + "wageTotal", wageTotal, + "payments", payments); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private Optional contractorUuid = Optional.empty(); + private Optional contractorUuid = Optional.empty(); - private Optional contractorFirstName = Optional.empty(); + private Optional reimbursementTotal = Optional.empty(); - private Optional contractorLastName = Optional.empty(); + private Optional wageTotal = Optional.empty(); - private Optional contractorBusinessName = Optional.empty(); - - private Optional contractorType = Optional.empty(); - - private Optional paymentMethod = Optional.empty(); - - private Optional wage = Optional.empty(); - - private Optional bonus = Optional.empty(); - - private Optional reimbursement = Optional.empty(); + private Optional> payments = Optional.empty(); private Builder() { // force use of static builder() method @@ -445,7 +232,7 @@ private Builder() { /** * The UUID of the contractor. */ - public Builder contractorUuid(String contractorUuid) { + public Builder contractorUuid(double contractorUuid) { Utils.checkNotNull(contractorUuid, "contractorUuid"); this.contractorUuid = Optional.ofNullable(contractorUuid); return this; @@ -454,7 +241,7 @@ public Builder contractorUuid(String contractorUuid) { /** * The UUID of the contractor. */ - public Builder contractorUuid(Optional contractorUuid) { + public Builder contractorUuid(Optional contractorUuid) { Utils.checkNotNull(contractorUuid, "contractorUuid"); this.contractorUuid = contractorUuid; return this; @@ -462,166 +249,66 @@ public Builder contractorUuid(Optional contractorUuid) { /** - * The first name of the contractor. Applies when `contractor_type` is `Individual`. - */ - public Builder contractorFirstName(String contractorFirstName) { - Utils.checkNotNull(contractorFirstName, "contractorFirstName"); - this.contractorFirstName = Optional.ofNullable(contractorFirstName); - return this; - } - - /** - * The first name of the contractor. Applies when `contractor_type` is `Individual`. - */ - public Builder contractorFirstName(Optional contractorFirstName) { - Utils.checkNotNull(contractorFirstName, "contractorFirstName"); - this.contractorFirstName = contractorFirstName; - return this; - } - - - /** - * The last name of the contractor. Applies when `contractor_type` is `Individual`. - */ - public Builder contractorLastName(String contractorLastName) { - Utils.checkNotNull(contractorLastName, "contractorLastName"); - this.contractorLastName = Optional.ofNullable(contractorLastName); - return this; - } - - /** - * The last name of the contractor. Applies when `contractor_type` is `Individual`. - */ - public Builder contractorLastName(Optional contractorLastName) { - Utils.checkNotNull(contractorLastName, "contractorLastName"); - this.contractorLastName = contractorLastName; - return this; - } - - - /** - * The business name of the contractor. Applies when `contractor_type` is `Business`. - */ - public Builder contractorBusinessName(String contractorBusinessName) { - Utils.checkNotNull(contractorBusinessName, "contractorBusinessName"); - this.contractorBusinessName = Optional.ofNullable(contractorBusinessName); - return this; - } - - /** - * The business name of the contractor. Applies when `contractor_type` is `Business`. - */ - public Builder contractorBusinessName(Optional contractorBusinessName) { - Utils.checkNotNull(contractorBusinessName, "contractorBusinessName"); - this.contractorBusinessName = contractorBusinessName; - return this; - } - - - /** - * The type of contractor. - * - *

    `Individual` `Business` - */ - public Builder contractorType(String contractorType) { - Utils.checkNotNull(contractorType, "contractorType"); - this.contractorType = Optional.ofNullable(contractorType); - return this; - } - - /** - * The type of contractor. - * - *

    `Individual` `Business` - */ - public Builder contractorType(Optional contractorType) { - Utils.checkNotNull(contractorType, "contractorType"); - this.contractorType = contractorType; - return this; - } - - - /** - * The payment method. - */ - public Builder paymentMethod(ContractorPaymentReceiptPaymentMethod paymentMethod) { - Utils.checkNotNull(paymentMethod, "paymentMethod"); - this.paymentMethod = Optional.ofNullable(paymentMethod); - return this; - } - - /** - * The payment method. - */ - public Builder paymentMethod(Optional paymentMethod) { - Utils.checkNotNull(paymentMethod, "paymentMethod"); - this.paymentMethod = paymentMethod; - return this; - } - - - /** - * The fixed wage of the payment, regardless of hours worked. + * The total reimbursements for the contractor within a given time period. */ - public Builder wage(String wage) { - Utils.checkNotNull(wage, "wage"); - this.wage = Optional.ofNullable(wage); + public Builder reimbursementTotal(String reimbursementTotal) { + Utils.checkNotNull(reimbursementTotal, "reimbursementTotal"); + this.reimbursementTotal = Optional.ofNullable(reimbursementTotal); return this; } /** - * The fixed wage of the payment, regardless of hours worked. + * The total reimbursements for the contractor within a given time period. */ - public Builder wage(Optional wage) { - Utils.checkNotNull(wage, "wage"); - this.wage = wage; + public Builder reimbursementTotal(Optional reimbursementTotal) { + Utils.checkNotNull(reimbursementTotal, "reimbursementTotal"); + this.reimbursementTotal = reimbursementTotal; return this; } /** - * The bonus amount in the payment. + * The total wages for the contractor within a given time period. */ - public Builder bonus(String bonus) { - Utils.checkNotNull(bonus, "bonus"); - this.bonus = Optional.ofNullable(bonus); + public Builder wageTotal(String wageTotal) { + Utils.checkNotNull(wageTotal, "wageTotal"); + this.wageTotal = Optional.ofNullable(wageTotal); return this; } /** - * The bonus amount in the payment. + * The total wages for the contractor within a given time period. */ - public Builder bonus(Optional bonus) { - Utils.checkNotNull(bonus, "bonus"); - this.bonus = bonus; + public Builder wageTotal(Optional wageTotal) { + Utils.checkNotNull(wageTotal, "wageTotal"); + this.wageTotal = wageTotal; return this; } /** - * The reimbursement amount in the payment. + * The contractor's payments within a given time period. */ - public Builder reimbursement(String reimbursement) { - Utils.checkNotNull(reimbursement, "reimbursement"); - this.reimbursement = Optional.ofNullable(reimbursement); + public Builder payments(List payments) { + Utils.checkNotNull(payments, "payments"); + this.payments = Optional.ofNullable(payments); return this; } /** - * The reimbursement amount in the payment. + * The contractor's payments within a given time period. */ - public Builder reimbursement(Optional reimbursement) { - Utils.checkNotNull(reimbursement, "reimbursement"); - this.reimbursement = reimbursement; + public Builder payments(Optional> payments) { + Utils.checkNotNull(payments, "payments"); + this.payments = payments; return this; } public ContractorPayments build() { return new ContractorPayments( - contractorUuid, contractorFirstName, contractorLastName, - contractorBusinessName, contractorType, paymentMethod, - wage, bonus, reimbursement); + contractorUuid, reimbursementTotal, wageTotal, + payments); } } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorUpdateRequestBody.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorUpdateRequestBody.java index 93f25643e..8fc4cdd7c 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorUpdateRequestBody.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorUpdateRequestBody.java @@ -76,6 +76,16 @@ public class ContractorUpdateRequestBody { @JsonProperty("email") private Optional email; + /** + * The work email address of the contractor. This is provided to support syncing users between our + * system and yours. You may not use this email address for any other purpose (e.g. + * + *

    marketing). + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("work_email") + private Optional workEmail; + /** * The contractor’s first name. * This attribute is required for `Individual` contractors and will be ignored for `Business` @@ -169,6 +179,7 @@ public ContractorUpdateRequestBody( @JsonProperty("hourly_rate") Optional hourlyRate, @JsonProperty("self_onboarding") Optional selfOnboarding, @JsonProperty("email") Optional email, + @JsonProperty("work_email") Optional workEmail, @JsonProperty("first_name") Optional firstName, @JsonProperty("last_name") Optional lastName, @JsonProperty("middle_initial") Optional middleInitial, @@ -185,6 +196,7 @@ public ContractorUpdateRequestBody( Utils.checkNotNull(hourlyRate, "hourlyRate"); Utils.checkNotNull(selfOnboarding, "selfOnboarding"); Utils.checkNotNull(email, "email"); + Utils.checkNotNull(workEmail, "workEmail"); Utils.checkNotNull(firstName, "firstName"); Utils.checkNotNull(lastName, "lastName"); Utils.checkNotNull(middleInitial, "middleInitial"); @@ -201,6 +213,7 @@ public ContractorUpdateRequestBody( this.hourlyRate = hourlyRate; this.selfOnboarding = selfOnboarding; this.email = email; + this.workEmail = workEmail; this.firstName = firstName; this.lastName = lastName; this.middleInitial = middleInitial; @@ -217,9 +230,9 @@ public ContractorUpdateRequestBody( this(version, Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), - Optional.empty(), Optional.empty(), JsonNullable.undefined(), Optional.empty(), Optional.empty(), Optional.empty(), - Optional.empty()); + JsonNullable.undefined(), Optional.empty(), Optional.empty(), + Optional.empty(), Optional.empty()); } /** @@ -284,6 +297,17 @@ public Optional email() { return email; } + /** + * The work email address of the contractor. This is provided to support syncing users between our + * system and yours. You may not use this email address for any other purpose (e.g. + * + *

    marketing). + */ + @JsonIgnore + public Optional workEmail() { + return workEmail; + } + /** * The contractor’s first name. * This attribute is required for `Individual` contractors and will be ignored for `Business` @@ -511,6 +535,31 @@ public ContractorUpdateRequestBody withEmail(Optional email) { return this; } + /** + * The work email address of the contractor. This is provided to support syncing users between our + * system and yours. You may not use this email address for any other purpose (e.g. + * + *

    marketing). + */ + public ContractorUpdateRequestBody withWorkEmail(String workEmail) { + Utils.checkNotNull(workEmail, "workEmail"); + this.workEmail = Optional.ofNullable(workEmail); + return this; + } + + + /** + * The work email address of the contractor. This is provided to support syncing users between our + * system and yours. You may not use this email address for any other purpose (e.g. + * + *

    marketing). + */ + public ContractorUpdateRequestBody withWorkEmail(Optional workEmail) { + Utils.checkNotNull(workEmail, "workEmail"); + this.workEmail = workEmail; + return this; + } + /** * The contractor’s first name. * This attribute is required for `Individual` contractors and will be ignored for `Business` @@ -740,6 +789,7 @@ public boolean equals(java.lang.Object o) { Utils.enhancedDeepEquals(this.hourlyRate, other.hourlyRate) && Utils.enhancedDeepEquals(this.selfOnboarding, other.selfOnboarding) && Utils.enhancedDeepEquals(this.email, other.email) && + Utils.enhancedDeepEquals(this.workEmail, other.workEmail) && Utils.enhancedDeepEquals(this.firstName, other.firstName) && Utils.enhancedDeepEquals(this.lastName, other.lastName) && Utils.enhancedDeepEquals(this.middleInitial, other.middleInitial) && @@ -756,10 +806,10 @@ public int hashCode() { return Utils.enhancedHash( version, type, wageType, startDate, hourlyRate, selfOnboarding, - email, firstName, lastName, - middleInitial, fileNewHireReport, workState, - ssn, businessName, ein, - isActive); + email, workEmail, firstName, + lastName, middleInitial, fileNewHireReport, + workState, ssn, businessName, + ein, isActive); } @Override @@ -772,6 +822,7 @@ public String toString() { "hourlyRate", hourlyRate, "selfOnboarding", selfOnboarding, "email", email, + "workEmail", workEmail, "firstName", firstName, "lastName", lastName, "middleInitial", middleInitial, @@ -800,6 +851,8 @@ public final static class Builder { private Optional email = Optional.empty(); + private Optional workEmail = Optional.empty(); + private Optional firstName = Optional.empty(); private Optional lastName = Optional.empty(); @@ -953,6 +1006,31 @@ public Builder email(Optional email) { } + /** + * The work email address of the contractor. This is provided to support syncing users between our + * system and yours. You may not use this email address for any other purpose (e.g. + * + *

    marketing). + */ + public Builder workEmail(String workEmail) { + Utils.checkNotNull(workEmail, "workEmail"); + this.workEmail = Optional.ofNullable(workEmail); + return this; + } + + /** + * The work email address of the contractor. This is provided to support syncing users between our + * system and yours. You may not use this email address for any other purpose (e.g. + * + *

    marketing). + */ + public Builder workEmail(Optional workEmail) { + Utils.checkNotNull(workEmail, "workEmail"); + this.workEmail = workEmail; + return this; + } + + /** * The contractor’s first name. * This attribute is required for `Individual` contractors and will be ignored for `Business` @@ -1179,10 +1257,10 @@ public ContractorUpdateRequestBody build() { return new ContractorUpdateRequestBody( version, type, wageType, startDate, hourlyRate, selfOnboarding, - email, firstName, lastName, - middleInitial, fileNewHireReport, workState, - ssn, businessName, ein, - isActive); + email, workEmail, firstName, + lastName, middleInitial, fileNewHireReport, + workState, ssn, businessName, + ein, isActive); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorWageType.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorWageType.java new file mode 100644 index 000000000..7573713e2 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorWageType.java @@ -0,0 +1,40 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * ContractorWageType + * + *

    The contractor's wage type, either "Fixed" or "Hourly". + */ +public enum ContractorWageType { + FIXED("Fixed"), + HOURLY("Hourly"); + + @JsonValue + private final String value; + + ContractorWageType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (ContractorWageType o: ContractorWageType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Contribution.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Contribution.java index 31d0f40aa..40f607c22 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Contribution.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Contribution.java @@ -9,10 +9,13 @@ import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.annotation.JsonProperty; import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Boolean; import java.lang.Override; import java.lang.String; import java.lang.SuppressWarnings; +import java.util.List; import java.util.Optional; +import org.openapitools.jackson.nullable.JsonNullable; /** * Contribution @@ -20,71 +23,67 @@ *

    An object representing the type and value of the company contribution. */ public class Contribution { - /** - * The company contribution scheme. - * - *

    "amount": The company contributes a fixed amount per payroll. If elective is true, the contribution - * is matching, dollar-for-dollar. - * - *

    "percentage": The company contributes a percentage of the payroll amount per payroll period. If - * elective is true, the contribution is matching, dollar-for-dollar. - * - *

    "tiered": The company contribution varies according to the size of the employee deduction. - */ + + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("required") + private Optional required; + + @JsonInclude(Include.NON_ABSENT) - @JsonProperty("type") - private Optional type; - - /** - * For the `amount` and `percentage` contribution types, the value of the corresponding amount or - * percentage. - * - *

    For the `tiered` contribution type, an array of tiers. - */ + @JsonProperty("editable") + private Optional editable; + + @JsonInclude(Include.NON_ABSENT) - @JsonProperty("value") - private Optional value; + @JsonProperty("default_value") + private JsonNullable defaultValue; + + + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("choices") + private JsonNullable> choices; @JsonCreator public Contribution( - @JsonProperty("type") Optional type, - @JsonProperty("value") Optional value) { - Utils.checkNotNull(type, "type"); - Utils.checkNotNull(value, "value"); - this.type = type; - this.value = value; + @JsonProperty("required") Optional required, + @JsonProperty("editable") Optional editable, + @JsonProperty("default_value") JsonNullable defaultValue, + @JsonProperty("choices") JsonNullable> choices) { + Utils.checkNotNull(required, "required"); + Utils.checkNotNull(editable, "editable"); + Utils.checkNotNull(defaultValue, "defaultValue"); + Utils.checkNotNull(choices, "choices"); + this.required = required; + this.editable = editable; + this.defaultValue = defaultValue; + this.choices = choices; } public Contribution() { - this(Optional.empty(), Optional.empty()); + this(Optional.empty(), Optional.empty(), JsonNullable.undefined(), + JsonNullable.undefined()); + } + + @JsonIgnore + public Optional required() { + return required; + } + + @JsonIgnore + public Optional editable() { + return editable; } - /** - * The company contribution scheme. - * - *

    "amount": The company contributes a fixed amount per payroll. If elective is true, the contribution - * is matching, dollar-for-dollar. - * - *

    "percentage": The company contributes a percentage of the payroll amount per payroll period. If - * elective is true, the contribution is matching, dollar-for-dollar. - * - *

    "tiered": The company contribution varies according to the size of the employee deduction. - */ + @SuppressWarnings("unchecked") @JsonIgnore - public Optional type() { - return type; + public JsonNullable defaultValue() { + return (JsonNullable) defaultValue; } - /** - * For the `amount` and `percentage` contribution types, the value of the corresponding amount or - * percentage. - * - *

    For the `tiered` contribution type, an array of tiers. - */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional value() { - return (Optional) value; + public JsonNullable> choices() { + return (JsonNullable>) choices; } public static Builder builder() { @@ -92,63 +91,53 @@ public static Builder builder() { } - /** - * The company contribution scheme. - * - *

    "amount": The company contributes a fixed amount per payroll. If elective is true, the contribution - * is matching, dollar-for-dollar. - * - *

    "percentage": The company contributes a percentage of the payroll amount per payroll period. If - * elective is true, the contribution is matching, dollar-for-dollar. - * - *

    "tiered": The company contribution varies according to the size of the employee deduction. - */ - public Contribution withType(String type) { - Utils.checkNotNull(type, "type"); - this.type = Optional.ofNullable(type); + public Contribution withRequired(boolean required) { + Utils.checkNotNull(required, "required"); + this.required = Optional.ofNullable(required); + return this; + } + + + public Contribution withRequired(Optional required) { + Utils.checkNotNull(required, "required"); + this.required = required; + return this; + } + + public Contribution withEditable(boolean editable) { + Utils.checkNotNull(editable, "editable"); + this.editable = Optional.ofNullable(editable); return this; } - /** - * The company contribution scheme. - * - *

    "amount": The company contributes a fixed amount per payroll. If elective is true, the contribution - * is matching, dollar-for-dollar. - * - *

    "percentage": The company contributes a percentage of the payroll amount per payroll period. If - * elective is true, the contribution is matching, dollar-for-dollar. - * - *

    "tiered": The company contribution varies according to the size of the employee deduction. - */ - public Contribution withType(Optional type) { - Utils.checkNotNull(type, "type"); - this.type = type; + public Contribution withEditable(Optional editable) { + Utils.checkNotNull(editable, "editable"); + this.editable = editable; + return this; + } + + public Contribution withDefaultValue(BenefitTypeRequirementsDefaultValue defaultValue) { + Utils.checkNotNull(defaultValue, "defaultValue"); + this.defaultValue = JsonNullable.of(defaultValue); return this; } - /** - * For the `amount` and `percentage` contribution types, the value of the corresponding amount or - * percentage. - * - *

    For the `tiered` contribution type, an array of tiers. - */ - public Contribution withValue(EmployeeBenefitValue value) { - Utils.checkNotNull(value, "value"); - this.value = Optional.ofNullable(value); + public Contribution withDefaultValue(JsonNullable defaultValue) { + Utils.checkNotNull(defaultValue, "defaultValue"); + this.defaultValue = defaultValue; return this; } + public Contribution withChoices(List choices) { + Utils.checkNotNull(choices, "choices"); + this.choices = JsonNullable.of(choices); + return this; + } - /** - * For the `amount` and `percentage` contribution types, the value of the corresponding amount or - * percentage. - * - *

    For the `tiered` contribution type, an array of tiers. - */ - public Contribution withValue(Optional value) { - Utils.checkNotNull(value, "value"); - this.value = value; + public Contribution withChoices(JsonNullable> choices) { + Utils.checkNotNull(choices, "choices"); + this.choices = choices; return this; } @@ -162,98 +151,100 @@ public boolean equals(java.lang.Object o) { } Contribution other = (Contribution) o; return - Utils.enhancedDeepEquals(this.type, other.type) && - Utils.enhancedDeepEquals(this.value, other.value); + Utils.enhancedDeepEquals(this.required, other.required) && + Utils.enhancedDeepEquals(this.editable, other.editable) && + Utils.enhancedDeepEquals(this.defaultValue, other.defaultValue) && + Utils.enhancedDeepEquals(this.choices, other.choices); } @Override public int hashCode() { return Utils.enhancedHash( - type, value); + required, editable, defaultValue, + choices); } @Override public String toString() { return Utils.toString(Contribution.class, - "type", type, - "value", value); + "required", required, + "editable", editable, + "defaultValue", defaultValue, + "choices", choices); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private Optional type = Optional.empty(); + private Optional required = Optional.empty(); - private Optional value = Optional.empty(); + private Optional editable = Optional.empty(); + + private JsonNullable defaultValue = JsonNullable.undefined(); + + private JsonNullable> choices = JsonNullable.undefined(); private Builder() { // force use of static builder() method } - /** - * The company contribution scheme. - * - *

    "amount": The company contributes a fixed amount per payroll. If elective is true, the contribution - * is matching, dollar-for-dollar. - * - *

    "percentage": The company contributes a percentage of the payroll amount per payroll period. If - * elective is true, the contribution is matching, dollar-for-dollar. - * - *

    "tiered": The company contribution varies according to the size of the employee deduction. - */ - public Builder type(String type) { - Utils.checkNotNull(type, "type"); - this.type = Optional.ofNullable(type); + public Builder required(boolean required) { + Utils.checkNotNull(required, "required"); + this.required = Optional.ofNullable(required); + return this; + } + + public Builder required(Optional required) { + Utils.checkNotNull(required, "required"); + this.required = required; + return this; + } + + + public Builder editable(boolean editable) { + Utils.checkNotNull(editable, "editable"); + this.editable = Optional.ofNullable(editable); + return this; + } + + public Builder editable(Optional editable) { + Utils.checkNotNull(editable, "editable"); + this.editable = editable; + return this; + } + + + public Builder defaultValue(BenefitTypeRequirementsDefaultValue defaultValue) { + Utils.checkNotNull(defaultValue, "defaultValue"); + this.defaultValue = JsonNullable.of(defaultValue); return this; } - /** - * The company contribution scheme. - * - *

    "amount": The company contributes a fixed amount per payroll. If elective is true, the contribution - * is matching, dollar-for-dollar. - * - *

    "percentage": The company contributes a percentage of the payroll amount per payroll period. If - * elective is true, the contribution is matching, dollar-for-dollar. - * - *

    "tiered": The company contribution varies according to the size of the employee deduction. - */ - public Builder type(Optional type) { - Utils.checkNotNull(type, "type"); - this.type = type; + public Builder defaultValue(JsonNullable defaultValue) { + Utils.checkNotNull(defaultValue, "defaultValue"); + this.defaultValue = defaultValue; return this; } - /** - * For the `amount` and `percentage` contribution types, the value of the corresponding amount or - * percentage. - * - *

    For the `tiered` contribution type, an array of tiers. - */ - public Builder value(EmployeeBenefitValue value) { - Utils.checkNotNull(value, "value"); - this.value = Optional.ofNullable(value); + public Builder choices(List choices) { + Utils.checkNotNull(choices, "choices"); + this.choices = JsonNullable.of(choices); return this; } - /** - * For the `amount` and `percentage` contribution types, the value of the corresponding amount or - * percentage. - * - *

    For the `tiered` contribution type, an array of tiers. - */ - public Builder value(Optional value) { - Utils.checkNotNull(value, "value"); - this.value = value; + public Builder choices(JsonNullable> choices) { + Utils.checkNotNull(choices, "choices"); + this.choices = choices; return this; } public Contribution build() { return new Contribution( - type, value); + required, editable, defaultValue, + choices); } } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/CreateBulkReport.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/CreateBulkReport.java new file mode 100644 index 000000000..039ad8756 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/CreateBulkReport.java @@ -0,0 +1,157 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Override; +import java.lang.String; + + +public class CreateBulkReport { + /** + * Unique identifier of the bulk report batch. + */ + @JsonProperty("uuid") + private String uuid; + + /** + * The batch's processing state. + * - `pending`: accepted, not yet started + * - `processing`: reports are being generated + * - `completed`: all reports finished + * - `failed`: the batch failed before completing + */ + @JsonProperty("status") + private Status status; + + @JsonCreator + public CreateBulkReport( + @JsonProperty("uuid") String uuid, + @JsonProperty("status") Status status) { + Utils.checkNotNull(uuid, "uuid"); + Utils.checkNotNull(status, "status"); + this.uuid = uuid; + this.status = status; + } + + /** + * Unique identifier of the bulk report batch. + */ + @JsonIgnore + public String uuid() { + return uuid; + } + + /** + * The batch's processing state. + * - `pending`: accepted, not yet started + * - `processing`: reports are being generated + * - `completed`: all reports finished + * - `failed`: the batch failed before completing + */ + @JsonIgnore + public Status status() { + return status; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Unique identifier of the bulk report batch. + */ + public CreateBulkReport withUuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + /** + * The batch's processing state. + * - `pending`: accepted, not yet started + * - `processing`: reports are being generated + * - `completed`: all reports finished + * - `failed`: the batch failed before completing + */ + public CreateBulkReport withStatus(Status status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + CreateBulkReport other = (CreateBulkReport) o; + return + Utils.enhancedDeepEquals(this.uuid, other.uuid) && + Utils.enhancedDeepEquals(this.status, other.status); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + uuid, status); + } + + @Override + public String toString() { + return Utils.toString(CreateBulkReport.class, + "uuid", uuid, + "status", status); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String uuid; + + private Status status; + + private Builder() { + // force use of static builder() method + } + + + /** + * Unique identifier of the bulk report batch. + */ + public Builder uuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + + /** + * The batch's processing state. + * - `pending`: accepted, not yet started + * - `processing`: reports are being generated + * - `completed`: all reports finished + * - `failed`: the batch failed before completing + */ + public Builder status(Status status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + public CreateBulkReport build() { + + return new CreateBulkReport( + uuid, status); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/CreateReportBody.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/CreateReportBody.java index 10882ef02..776bb07c1 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/CreateReportBody.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/CreateReportBody.java @@ -30,13 +30,15 @@ public class CreateReportBody { * Columns to include in the report */ @JsonProperty("columns") - private List columns; + private List columns; /** - * How to group the report + * Optional. How to group the report. If omitted, sensible defaults are derived from the `columns` + * requested. */ + @JsonInclude(Include.NON_ABSENT) @JsonProperty("groupings") - private List groupings; + private Optional> groupings; /** * The title of the report @@ -49,7 +51,7 @@ public class CreateReportBody { * The type of file to generate */ @JsonProperty("file_type") - private FileType fileType; + private CreateReportBodyFileType fileType; /** * Whether to include subtotals and grand totals in the report @@ -58,6 +60,13 @@ public class CreateReportBody { @JsonProperty("with_totals") private Optional withTotals; + /** + * Which payroll date `start_date` and `end_date` filter against. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("date_filter_type") + private Optional dateFilterType; + /** * Start date of data to filter by */ @@ -98,7 +107,7 @@ public class CreateReportBody { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("employment_type") - private Optional employmentType; + private Optional employmentType; /** * Employee employment status to filter by @@ -130,17 +139,18 @@ public class CreateReportBody { @JsonCreator public CreateReportBody( - @JsonProperty("columns") List columns, - @JsonProperty("groupings") List groupings, + @JsonProperty("columns") List columns, + @JsonProperty("groupings") Optional> groupings, @JsonProperty("custom_name") Optional customName, - @JsonProperty("file_type") FileType fileType, + @JsonProperty("file_type") CreateReportBodyFileType fileType, @JsonProperty("with_totals") Optional withTotals, + @JsonProperty("date_filter_type") Optional dateFilterType, @JsonProperty("start_date") Optional startDate, @JsonProperty("end_date") Optional endDate, @JsonProperty("dismissed_start_date") Optional dismissedStartDate, @JsonProperty("dismissed_end_date") Optional dismissedEndDate, @JsonProperty("payment_method") Optional paymentMethod, - @JsonProperty("employment_type") Optional employmentType, + @JsonProperty("employment_type") Optional employmentType, @JsonProperty("employment_status") Optional employmentStatus, @JsonProperty("employee_uuids") JsonNullable> employeeUuids, @JsonProperty("department_uuids") Optional> departmentUuids, @@ -150,6 +160,7 @@ public CreateReportBody( Utils.checkNotNull(customName, "customName"); Utils.checkNotNull(fileType, "fileType"); Utils.checkNotNull(withTotals, "withTotals"); + Utils.checkNotNull(dateFilterType, "dateFilterType"); Utils.checkNotNull(startDate, "startDate"); Utils.checkNotNull(endDate, "endDate"); Utils.checkNotNull(dismissedStartDate, "dismissedStartDate"); @@ -165,6 +176,7 @@ public CreateReportBody( this.customName = customName; this.fileType = fileType; this.withTotals = withTotals; + this.dateFilterType = dateFilterType; this.startDate = startDate; this.endDate = endDate; this.dismissedStartDate = dismissedStartDate; @@ -178,30 +190,32 @@ public CreateReportBody( } public CreateReportBody( - List columns, - List groupings, - FileType fileType) { - this(columns, groupings, Optional.empty(), + List columns, + CreateReportBodyFileType fileType) { + this(columns, Optional.empty(), Optional.empty(), fileType, Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), - JsonNullable.undefined(), Optional.empty(), Optional.empty()); + Optional.empty(), JsonNullable.undefined(), Optional.empty(), + Optional.empty()); } /** * Columns to include in the report */ @JsonIgnore - public List columns() { + public List columns() { return columns; } /** - * How to group the report + * Optional. How to group the report. If omitted, sensible defaults are derived from the `columns` + * requested. */ + @SuppressWarnings("unchecked") @JsonIgnore - public List groupings() { - return groupings; + public Optional> groupings() { + return (Optional>) groupings; } /** @@ -216,7 +230,7 @@ public Optional customName() { * The type of file to generate */ @JsonIgnore - public FileType fileType() { + public CreateReportBodyFileType fileType() { return fileType; } @@ -228,6 +242,15 @@ public Optional withTotals() { return withTotals; } + /** + * Which payroll date `start_date` and `end_date` filter against. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional dateFilterType() { + return (Optional) dateFilterType; + } + /** * Start date of data to filter by */ @@ -274,8 +297,8 @@ public Optional paymentMethod() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional employmentType() { - return (Optional) employmentType; + public Optional employmentType() { + return (Optional) employmentType; } /** @@ -322,16 +345,28 @@ public static Builder builder() { /** * Columns to include in the report */ - public CreateReportBody withColumns(List columns) { + public CreateReportBody withColumns(List columns) { Utils.checkNotNull(columns, "columns"); this.columns = columns; return this; } /** - * How to group the report + * Optional. How to group the report. If omitted, sensible defaults are derived from the `columns` + * requested. + */ + public CreateReportBody withGroupings(List groupings) { + Utils.checkNotNull(groupings, "groupings"); + this.groupings = Optional.ofNullable(groupings); + return this; + } + + + /** + * Optional. How to group the report. If omitted, sensible defaults are derived from the `columns` + * requested. */ - public CreateReportBody withGroupings(List groupings) { + public CreateReportBody withGroupings(Optional> groupings) { Utils.checkNotNull(groupings, "groupings"); this.groupings = groupings; return this; @@ -359,7 +394,7 @@ public CreateReportBody withCustomName(Optional customName) { /** * The type of file to generate */ - public CreateReportBody withFileType(FileType fileType) { + public CreateReportBody withFileType(CreateReportBodyFileType fileType) { Utils.checkNotNull(fileType, "fileType"); this.fileType = fileType; return this; @@ -384,6 +419,25 @@ public CreateReportBody withWithTotals(Optional withTotals) { return this; } + /** + * Which payroll date `start_date` and `end_date` filter against. + */ + public CreateReportBody withDateFilterType(CreateReportBodyDateFilterType dateFilterType) { + Utils.checkNotNull(dateFilterType, "dateFilterType"); + this.dateFilterType = Optional.ofNullable(dateFilterType); + return this; + } + + + /** + * Which payroll date `start_date` and `end_date` filter against. + */ + public CreateReportBody withDateFilterType(Optional dateFilterType) { + Utils.checkNotNull(dateFilterType, "dateFilterType"); + this.dateFilterType = dateFilterType; + return this; + } + /** * Start date of data to filter by */ @@ -482,7 +536,7 @@ public CreateReportBody withPaymentMethod(Optional employmentType) { + public CreateReportBody withEmploymentType(Optional employmentType) { Utils.checkNotNull(employmentType, "employmentType"); this.employmentType = employmentType; return this; @@ -588,6 +642,7 @@ public boolean equals(java.lang.Object o) { Utils.enhancedDeepEquals(this.customName, other.customName) && Utils.enhancedDeepEquals(this.fileType, other.fileType) && Utils.enhancedDeepEquals(this.withTotals, other.withTotals) && + Utils.enhancedDeepEquals(this.dateFilterType, other.dateFilterType) && Utils.enhancedDeepEquals(this.startDate, other.startDate) && Utils.enhancedDeepEquals(this.endDate, other.endDate) && Utils.enhancedDeepEquals(this.dismissedStartDate, other.dismissedStartDate) && @@ -604,10 +659,11 @@ public boolean equals(java.lang.Object o) { public int hashCode() { return Utils.enhancedHash( columns, groupings, customName, - fileType, withTotals, startDate, - endDate, dismissedStartDate, dismissedEndDate, - paymentMethod, employmentType, employmentStatus, - employeeUuids, departmentUuids, workAddressUuids); + fileType, withTotals, dateFilterType, + startDate, endDate, dismissedStartDate, + dismissedEndDate, paymentMethod, employmentType, + employmentStatus, employeeUuids, departmentUuids, + workAddressUuids); } @Override @@ -618,6 +674,7 @@ public String toString() { "customName", customName, "fileType", fileType, "withTotals", withTotals, + "dateFilterType", dateFilterType, "startDate", startDate, "endDate", endDate, "dismissedStartDate", dismissedStartDate, @@ -633,16 +690,18 @@ public String toString() { @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private List columns; + private List columns; - private List groupings; + private Optional> groupings = Optional.empty(); private Optional customName = Optional.empty(); - private FileType fileType; + private CreateReportBodyFileType fileType; private Optional withTotals; + private Optional dateFilterType; + private Optional startDate = Optional.empty(); private Optional endDate = Optional.empty(); @@ -653,7 +712,7 @@ public final static class Builder { private Optional paymentMethod = Optional.empty(); - private Optional employmentType = Optional.empty(); + private Optional employmentType = Optional.empty(); private Optional employmentStatus = Optional.empty(); @@ -671,7 +730,7 @@ private Builder() { /** * Columns to include in the report */ - public Builder columns(List columns) { + public Builder columns(List columns) { Utils.checkNotNull(columns, "columns"); this.columns = columns; return this; @@ -679,9 +738,20 @@ public Builder columns(List columns) { /** - * How to group the report + * Optional. How to group the report. If omitted, sensible defaults are derived from the `columns` + * requested. */ - public Builder groupings(List groupings) { + public Builder groupings(List groupings) { + Utils.checkNotNull(groupings, "groupings"); + this.groupings = Optional.ofNullable(groupings); + return this; + } + + /** + * Optional. How to group the report. If omitted, sensible defaults are derived from the `columns` + * requested. + */ + public Builder groupings(Optional> groupings) { Utils.checkNotNull(groupings, "groupings"); this.groupings = groupings; return this; @@ -710,7 +780,7 @@ public Builder customName(Optional customName) { /** * The type of file to generate */ - public Builder fileType(FileType fileType) { + public Builder fileType(CreateReportBodyFileType fileType) { Utils.checkNotNull(fileType, "fileType"); this.fileType = fileType; return this; @@ -736,6 +806,25 @@ public Builder withTotals(Optional withTotals) { } + /** + * Which payroll date `start_date` and `end_date` filter against. + */ + public Builder dateFilterType(CreateReportBodyDateFilterType dateFilterType) { + Utils.checkNotNull(dateFilterType, "dateFilterType"); + this.dateFilterType = Optional.ofNullable(dateFilterType); + return this; + } + + /** + * Which payroll date `start_date` and `end_date` filter against. + */ + public Builder dateFilterType(Optional dateFilterType) { + Utils.checkNotNull(dateFilterType, "dateFilterType"); + this.dateFilterType = dateFilterType; + return this; + } + + /** * Start date of data to filter by */ @@ -834,7 +923,7 @@ public Builder paymentMethod(Optional p /** * Employee employment type to filter by */ - public Builder employmentType(EmploymentType employmentType) { + public Builder employmentType(CreateReportBodyEmploymentType employmentType) { Utils.checkNotNull(employmentType, "employmentType"); this.employmentType = Optional.ofNullable(employmentType); return this; @@ -843,7 +932,7 @@ public Builder employmentType(EmploymentType employmentType) { /** * Employee employment type to filter by */ - public Builder employmentType(Optional employmentType) { + public Builder employmentType(Optional employmentType) { Utils.checkNotNull(employmentType, "employmentType"); this.employmentType = employmentType; return this; @@ -929,13 +1018,17 @@ public CreateReportBody build() { if (withTotals == null) { withTotals = _SINGLETON_VALUE_WithTotals.value(); } + if (dateFilterType == null) { + dateFilterType = _SINGLETON_VALUE_DateFilterType.value(); + } return new CreateReportBody( columns, groupings, customName, - fileType, withTotals, startDate, - endDate, dismissedStartDate, dismissedEndDate, - paymentMethod, employmentType, employmentStatus, - employeeUuids, departmentUuids, workAddressUuids); + fileType, withTotals, dateFilterType, + startDate, endDate, dismissedStartDate, + dismissedEndDate, paymentMethod, employmentType, + employmentStatus, employeeUuids, departmentUuids, + workAddressUuids); } @@ -944,5 +1037,11 @@ public CreateReportBody build() { "with_totals", "false", new TypeReference>() {}); + + private static final LazySingletonValue> _SINGLETON_VALUE_DateFilterType = + new LazySingletonValue<>( + "date_filter_type", + "\"period_end_date\"", + new TypeReference>() {}); } } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/CreateReportBodyColumns.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/CreateReportBodyColumns.java new file mode 100644 index 000000000..7e6d2c382 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/CreateReportBodyColumns.java @@ -0,0 +1,119 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +public enum CreateReportBodyColumns { + ADDITIONAL_EARNINGS("additional_earnings"), + BANK_ACCOUNT_ACCOUNT_NUMBER("bank_account_account_number"), + BANK_ACCOUNT_ROUTING_NUMBER("bank_account_routing_number"), + BANK_ACCOUNT_TYPE("bank_account_type"), + BANK_ACCOUNT("bank_account"), + BONUS("bonus"), + CASH_TIPS("cash_tips"), + CHECK_AMOUNT("check_amount"), + CHECK_DATE("check_date"), + COMMISSION("commission"), + DATE_OF_BIRTH("date_of_birth"), + DOUBLE_OVERTIME_EARNINGS("double_overtime_earnings"), + DOUBLE_OVERTIME_HOURS("double_overtime_hours"), + DOUBLE_OVERTIME_RATE("double_overtime_rate"), + EMPLOYEE_ADDITIONAL_TAXES("employee_additional_taxes"), + EMPLOYEE_BENEFIT_CONTRIBUTIONS("employee_benefit_contributions"), + EMPLOYEE_COMPENSATION_TIME_PERIOD("employee_compensation_time_period"), + EMPLOYEE_COMPENSATION("employee_compensation"), + EMPLOYEE_DEDUCTIONS("employee_deductions"), + EMPLOYEE_DEPARTMENT("employee_department"), + EMPLOYEE_EMAIL("employee_email"), + EMPLOYEE_DONATIONS("employee_donations"), + EMPLOYEE_FEDERAL_INCOME_TAX("employee_federal_income_tax"), + EMPLOYEE_FIRST_NAME("employee_first_name"), + EMPLOYEE_LAST_NAME("employee_last_name"), + EMPLOYEE_MIDDLE_INITIAL("employee_middle_initial"), + EMPLOYEE_MEDICARE_ADDITIONAL_TAX("employee_medicare_additional_tax"), + EMPLOYEE_MEDICARE_TAX("employee_medicare_tax"), + EMPLOYEE_PHONE_NUMBER("employee_phone_number"), + EMPLOYEE_SOCIAL_SECURITY_TAX("employee_social_security_tax"), + EMPLOYEE_STATE_INCOME_TAX("employee_state_income_tax"), + EMPLOYEE_TAXES("employee_taxes"), + EMPLOYEE_UUID("employee_uuid"), + EMPLOYEE_WORK_EMAIL("employee_work_email"), + EMPLOYER_ADDITIONAL_TAXES("employer_additional_taxes"), + EMPLOYER_BENEFIT_CONTRIBUTIONS("employer_benefit_contributions"), + EMPLOYER_COST("employer_cost"), + EMPLOYER_FUTA_TAX("employer_futa_tax"), + EMPLOYER_MEDICARE_TAX("employer_medicare_tax"), + EMPLOYER_SOCIAL_SECURITY_TAX("employer_social_security_tax"), + EMPLOYER_SUTA_TAX("employer_suta_tax"), + EMPLOYER_TAXES("employer_taxes"), + EMPLOYMENT_TYPE("employment_type"), + EMPLOYMENT("employment"), + END_DATE("end_date"), + GARNISHMENTS("garnishments"), + GROSS_EARNINGS("gross_earnings"), + HOLIDAY_EARNINGS("holiday_earnings"), + HOLIDAY_HOURS("holiday_hours"), + HOME_ADDRESS_CITY("home_address_city"), + HOME_ADDRESS_STATE("home_address_state"), + HOME_ADDRESS_STREET("home_address_street"), + HOME_ADDRESS_ZIP("home_address_zip"), + HOME_ADDRESS("home_address"), + JOB_TITLE("job_title"), + NET_PAY("net_pay"), + ONE_TIME_REIMBURSEMENTS("one_time_reimbursements"), + OVERTIME_EARNINGS("overtime_earnings"), + OVERTIME_HOURS("overtime_hours"), + OVERTIME_RATE("overtime_rate"), + PAID_TIME_OFF_EARNINGS("paid_time_off_earnings"), + PAID_TIME_OFF_HOURS("paid_time_off_hours"), + PAID_TIME_OFF_RATE("paid_time_off_rate"), + PAY_PERIOD_END("pay_period_end"), + PAY_PERIOD_START("pay_period_start"), + PAYCHECK_TIPS("paycheck_tips"), + PAYMENT_METHOD("payment_method"), + PAYROLL_TYPE("payroll_type"), + PAYROLL_UUID("payroll_uuid"), + PREFERRED_FIRST_NAME("preferred_first_name"), + RECURRING_REIMBURSEMENTS("recurring_reimbursements"), + REGULAR_EARNINGS("regular_earnings"), + REGULAR_HOURS("regular_hours"), + REGULAR_RATE("regular_rate"), + REIMBURSEMENTS("reimbursements"), + RISK_CLASS_CODE("risk_class_code"), + SICK_RATE("sick_rate"), + SICK_TIME_OFF_EARNINGS("sick_time_off_earnings"), + SICK_TIME_OFF_HOURS("sick_time_off_hours"), + START_DATE("start_date"), + TOTAL_EMPLOYER_BENEFIT_CONTRIBUTIONS("total_employer_benefit_contributions"), + TOTAL_TIME_OFF_EARNINGS("total_time_off_earnings"), + TOTAL_TIME_OFF_HOURS("total_time_off_hours"), + WORK_ADDRESS_CITY("work_address_city"), + WORK_ADDRESS_STREET("work_address_street"), + WORK_ADDRESS_ZIP("work_address_zip"); + + @JsonValue + private final String value; + + CreateReportBodyColumns(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (CreateReportBodyColumns o: CreateReportBodyColumns.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/CreateReportBodyDateFilterType.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/CreateReportBodyDateFilterType.java new file mode 100644 index 000000000..a2a1180e0 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/CreateReportBodyDateFilterType.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * CreateReportBodyDateFilterType + * + *

    Which payroll date `start_date` and `end_date` filter against. + */ +public enum CreateReportBodyDateFilterType { + PERIOD_END_DATE("period_end_date"), + PERIOD_START_DATE("period_start_date"), + CHECK_DATE("check_date"); + + @JsonValue + private final String value; + + CreateReportBodyDateFilterType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (CreateReportBodyDateFilterType o: CreateReportBodyDateFilterType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/CreateReportBodyEmploymentType.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/CreateReportBodyEmploymentType.java new file mode 100644 index 000000000..e6ff32d6b --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/CreateReportBodyEmploymentType.java @@ -0,0 +1,43 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * CreateReportBodyEmploymentType + * + *

    Employee employment type to filter by + */ +public enum CreateReportBodyEmploymentType { + EXEMPT("exempt"), + SALARIED_NONEXEMPT("salaried_nonexempt"), + NONEXEMPT("nonexempt"), + COMMISSION_ONLY_EXEMPT("commission_only_exempt"), + COMMISSION_ONLY_NONEXEMPT("commission_only_nonexempt"); + + @JsonValue + private final String value; + + CreateReportBodyEmploymentType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (CreateReportBodyEmploymentType o: CreateReportBodyEmploymentType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/CreateReportBodyFileType.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/CreateReportBodyFileType.java new file mode 100644 index 000000000..4e28aa162 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/CreateReportBodyFileType.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * CreateReportBodyFileType + * + *

    The type of file to generate + */ +public enum CreateReportBodyFileType { + CSV("csv"), + JSON("json"), + PDF("pdf"); + + @JsonValue + private final String value; + + CreateReportBodyFileType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (CreateReportBodyFileType o: CreateReportBodyFileType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/CreateReportBodyGroupings.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/CreateReportBodyGroupings.java new file mode 100644 index 000000000..a54f70f18 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/CreateReportBodyGroupings.java @@ -0,0 +1,37 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +public enum CreateReportBodyGroupings { + PAYROLL("payroll"), + EMPLOYEE("employee"), + WORK_ADDRESS("work_address"), + WORK_ADDRESS_STATE("work_address_state"); + + @JsonValue + private final String value; + + CreateReportBodyGroupings(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (CreateReportBodyGroupings o: CreateReportBodyGroupings.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/CustomWithholdings.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/CustomWithholdings.java new file mode 100644 index 000000000..8fbbeb771 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/CustomWithholdings.java @@ -0,0 +1,198 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.List; +import java.util.Optional; +import org.openapitools.jackson.nullable.JsonNullable; + +/** + * CustomWithholdings + * + *

    The one-time custom withholding overrides applied to this payroll for this employee. + * `federal` is null when no federal one-time override is set; `state` is an empty + * array when no state one-time overrides are set. + */ +public class CustomWithholdings { + /** + * Federal one-time custom withholding override applied to this payroll. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("federal") + private JsonNullable federal; + + /** + * State one-time custom withholding overrides applied to this payroll, one entry per state field. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("state") + private Optional> state; + + @JsonCreator + public CustomWithholdings( + @JsonProperty("federal") JsonNullable federal, + @JsonProperty("state") Optional> state) { + Utils.checkNotNull(federal, "federal"); + Utils.checkNotNull(state, "state"); + this.federal = federal; + this.state = state; + } + + public CustomWithholdings() { + this(JsonNullable.undefined(), Optional.empty()); + } + + /** + * Federal one-time custom withholding override applied to this payroll. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public JsonNullable federal() { + return (JsonNullable) federal; + } + + /** + * State one-time custom withholding overrides applied to this payroll, one entry per state field. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> state() { + return (Optional>) state; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Federal one-time custom withholding override applied to this payroll. + */ + public CustomWithholdings withFederal(Federal federal) { + Utils.checkNotNull(federal, "federal"); + this.federal = JsonNullable.of(federal); + return this; + } + + /** + * Federal one-time custom withholding override applied to this payroll. + */ + public CustomWithholdings withFederal(JsonNullable federal) { + Utils.checkNotNull(federal, "federal"); + this.federal = federal; + return this; + } + + /** + * State one-time custom withholding overrides applied to this payroll, one entry per state field. + */ + public CustomWithholdings withState(List state) { + Utils.checkNotNull(state, "state"); + this.state = Optional.ofNullable(state); + return this; + } + + + /** + * State one-time custom withholding overrides applied to this payroll, one entry per state field. + */ + public CustomWithholdings withState(Optional> state) { + Utils.checkNotNull(state, "state"); + this.state = state; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + CustomWithholdings other = (CustomWithholdings) o; + return + Utils.enhancedDeepEquals(this.federal, other.federal) && + Utils.enhancedDeepEquals(this.state, other.state); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + federal, state); + } + + @Override + public String toString() { + return Utils.toString(CustomWithholdings.class, + "federal", federal, + "state", state); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private JsonNullable federal = JsonNullable.undefined(); + + private Optional> state = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * Federal one-time custom withholding override applied to this payroll. + */ + public Builder federal(Federal federal) { + Utils.checkNotNull(federal, "federal"); + this.federal = JsonNullable.of(federal); + return this; + } + + /** + * Federal one-time custom withholding override applied to this payroll. + */ + public Builder federal(JsonNullable federal) { + Utils.checkNotNull(federal, "federal"); + this.federal = federal; + return this; + } + + + /** + * State one-time custom withholding overrides applied to this payroll, one entry per state field. + */ + public Builder state(List state) { + Utils.checkNotNull(state, "state"); + this.state = Optional.ofNullable(state); + return this; + } + + /** + * State one-time custom withholding overrides applied to this payroll, one entry per state field. + */ + public Builder state(Optional> state) { + Utils.checkNotNull(state, "state"); + this.state = state; + return this; + } + + public CustomWithholdings build() { + + return new CustomWithholdings( + federal, state); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/DateFilterType.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/DateFilterType.java new file mode 100644 index 000000000..3c3be384b --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/DateFilterType.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * DateFilterType + * + *

    Which payroll date `start_date` and `end_date` filter against. + */ +public enum DateFilterType { + PERIOD_END_DATE("period_end_date"), + PERIOD_START_DATE("period_start_date"), + CHECK_DATE("check_date"); + + @JsonValue + private final String value; + + DateFilterType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (DateFilterType o: DateFilterType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Document.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Document.java index 6d1009da9..983cc9d11 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Document.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Document.java @@ -46,7 +46,7 @@ public class Document { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("recipient_type") - private Optional recipientType; + private Optional recipientType; /** * Unique identifier for the recipient associated with the document @@ -120,7 +120,7 @@ public Document( @JsonProperty("uuid") Optional uuid, @JsonProperty("title") Optional title, @JsonProperty("name") Optional name, - @JsonProperty("recipient_type") Optional recipientType, + @JsonProperty("recipient_type") Optional recipientType, @JsonProperty("recipient_uuid") Optional recipientUuid, @JsonProperty("pages") Optional> pages, @JsonProperty("fields") Optional> fields, @@ -195,8 +195,8 @@ public Optional name() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional recipientType() { - return (Optional) recipientType; + public Optional recipientType() { + return (Optional) recipientType; } /** @@ -342,7 +342,7 @@ public Document withName(Optional name) { /** * The type of recipient associated with the document (will be `Contractor` for Contractor Documents) */ - public Document withRecipientType(RecipientType recipientType) { + public Document withRecipientType(DocumentRecipientType recipientType) { Utils.checkNotNull(recipientType, "recipientType"); this.recipientType = Optional.ofNullable(recipientType); return this; @@ -352,7 +352,7 @@ public Document withRecipientType(RecipientType recipientType) { /** * The type of recipient associated with the document (will be `Contractor` for Contractor Documents) */ - public Document withRecipientType(Optional recipientType) { + public Document withRecipientType(Optional recipientType) { Utils.checkNotNull(recipientType, "recipientType"); this.recipientType = recipientType; return this; @@ -596,7 +596,7 @@ public final static class Builder { private Optional name = Optional.empty(); - private Optional recipientType = Optional.empty(); + private Optional recipientType = Optional.empty(); private Optional recipientUuid = Optional.empty(); @@ -681,7 +681,7 @@ public Builder name(Optional name) { /** * The type of recipient associated with the document (will be `Contractor` for Contractor Documents) */ - public Builder recipientType(RecipientType recipientType) { + public Builder recipientType(DocumentRecipientType recipientType) { Utils.checkNotNull(recipientType, "recipientType"); this.recipientType = Optional.ofNullable(recipientType); return this; @@ -690,7 +690,7 @@ public Builder recipientType(RecipientType recipientType) { /** * The type of recipient associated with the document (will be `Contractor` for Contractor Documents) */ - public Builder recipientType(Optional recipientType) { + public Builder recipientType(Optional recipientType) { Utils.checkNotNull(recipientType, "recipientType"); this.recipientType = recipientType; return this; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/DocumentRecipientType.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/DocumentRecipientType.java new file mode 100644 index 000000000..e7038ae2a --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/DocumentRecipientType.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * DocumentRecipientType + * + *

    The type of recipient associated with the document (will be `Contractor` for Contractor Documents) + */ +public enum DocumentRecipientType { + COMPANY("Company"), + EMPLOYEE("Employee"), + CONTRACTOR("Contractor"); + + @JsonValue + private final String value; + + DocumentRecipientType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (DocumentRecipientType o: DocumentRecipientType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Employee.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Employee.java index c66fb9b23..e4fe976bb 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Employee.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Employee.java @@ -130,7 +130,7 @@ public class Employee { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("onboarding_documents_config") - private Optional onboardingDocumentsConfig; + private Optional onboardingDocumentsConfig; @JsonInclude(Include.NON_ABSENT) @@ -206,7 +206,7 @@ public class Employee { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("current_employment_status") - private JsonNullable currentEmploymentStatus; + private JsonNullable currentEmploymentStatus; @JsonInclude(Include.NON_ABSENT) @@ -297,7 +297,7 @@ public Employee( @JsonProperty("work_email") JsonNullable workEmail, @JsonProperty("onboarded") Optional onboarded, @JsonProperty("onboarding_status") JsonNullable onboardingStatus, - @JsonProperty("onboarding_documents_config") Optional onboardingDocumentsConfig, + @JsonProperty("onboarding_documents_config") Optional onboardingDocumentsConfig, @JsonProperty("jobs") Optional> jobs, @JsonProperty("eligible_paid_time_off") Optional> eligiblePaidTimeOff, @JsonProperty("terminations") Optional> terminations, @@ -309,7 +309,7 @@ public Employee( @JsonProperty("phone") JsonNullable phone, @JsonProperty("preferred_first_name") JsonNullable preferredFirstName, @JsonProperty("payment_method") Optional paymentMethod, - @JsonProperty("current_employment_status") JsonNullable currentEmploymentStatus, + @JsonProperty("current_employment_status") JsonNullable currentEmploymentStatus, @JsonProperty("historical") Optional historical, @JsonProperty("employee_code") Optional employeeCode, @JsonProperty("department_uuid") JsonNullable departmentUuid, @@ -533,8 +533,8 @@ public JsonNullable onboardingStatus() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional onboardingDocumentsConfig() { - return (Optional) onboardingDocumentsConfig; + public Optional onboardingDocumentsConfig() { + return (Optional) onboardingDocumentsConfig; } @SuppressWarnings("unchecked") @@ -621,8 +621,8 @@ public Optional paymentMethod() { */ @SuppressWarnings("unchecked") @JsonIgnore - public JsonNullable currentEmploymentStatus() { - return (JsonNullable) currentEmploymentStatus; + public JsonNullable currentEmploymentStatus() { + return (JsonNullable) currentEmploymentStatus; } @JsonIgnore @@ -950,7 +950,7 @@ public Employee withOnboardingStatus(JsonNullable onboardingDocumentsConfig) { + public Employee withOnboardingDocumentsConfig(Optional onboardingDocumentsConfig) { Utils.checkNotNull(onboardingDocumentsConfig, "onboardingDocumentsConfig"); this.onboardingDocumentsConfig = onboardingDocumentsConfig; return this; @@ -1140,7 +1140,7 @@ public Employee withPaymentMethod(Optional pay *

    Variable employees have hours that vary each week. Seasonal employees are hired for 6 months of the * year or less. */ - public Employee withCurrentEmploymentStatus(EmployeeCurrentEmploymentStatus currentEmploymentStatus) { + public Employee withCurrentEmploymentStatus(CurrentEmploymentStatus currentEmploymentStatus) { Utils.checkNotNull(currentEmploymentStatus, "currentEmploymentStatus"); this.currentEmploymentStatus = JsonNullable.of(currentEmploymentStatus); return this; @@ -1154,7 +1154,7 @@ public Employee withCurrentEmploymentStatus(EmployeeCurrentEmploymentStatus curr *

    Variable employees have hours that vary each week. Seasonal employees are hired for 6 months of the * year or less. */ - public Employee withCurrentEmploymentStatus(JsonNullable currentEmploymentStatus) { + public Employee withCurrentEmploymentStatus(JsonNullable currentEmploymentStatus) { Utils.checkNotNull(currentEmploymentStatus, "currentEmploymentStatus"); this.currentEmploymentStatus = currentEmploymentStatus; return this; @@ -1485,7 +1485,7 @@ public final static class Builder { private JsonNullable onboardingStatus = JsonNullable.undefined(); - private Optional onboardingDocumentsConfig = Optional.empty(); + private Optional onboardingDocumentsConfig = Optional.empty(); private Optional> jobs = Optional.empty(); @@ -1509,7 +1509,7 @@ public final static class Builder { private Optional paymentMethod; - private JsonNullable currentEmploymentStatus = JsonNullable.undefined(); + private JsonNullable currentEmploymentStatus = JsonNullable.undefined(); private Optional historical = Optional.empty(); @@ -1784,7 +1784,7 @@ public Builder onboardingStatus(JsonNullable onboardingDocumentsConfig) { + public Builder onboardingDocumentsConfig(Optional onboardingDocumentsConfig) { Utils.checkNotNull(onboardingDocumentsConfig, "onboardingDocumentsConfig"); this.onboardingDocumentsConfig = onboardingDocumentsConfig; return this; @@ -1977,7 +1977,7 @@ public Builder paymentMethod(Optional paymentM *

    Variable employees have hours that vary each week. Seasonal employees are hired for 6 months of the * year or less. */ - public Builder currentEmploymentStatus(EmployeeCurrentEmploymentStatus currentEmploymentStatus) { + public Builder currentEmploymentStatus(CurrentEmploymentStatus currentEmploymentStatus) { Utils.checkNotNull(currentEmploymentStatus, "currentEmploymentStatus"); this.currentEmploymentStatus = JsonNullable.of(currentEmploymentStatus); return this; @@ -1991,7 +1991,7 @@ public Builder currentEmploymentStatus(EmployeeCurrentEmploymentStatus currentEm *

    Variable employees have hours that vary each week. Seasonal employees are hired for 6 months of the * year or less. */ - public Builder currentEmploymentStatus(JsonNullable currentEmploymentStatus) { + public Builder currentEmploymentStatus(JsonNullable currentEmploymentStatus) { Utils.checkNotNull(currentEmploymentStatus, "currentEmploymentStatus"); this.currentEmploymentStatus = currentEmploymentStatus; return this; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeeAddress.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeeAddress.java index 599c2ebac..8a0e65332 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeeAddress.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeeAddress.java @@ -14,7 +14,9 @@ import java.lang.Boolean; import java.lang.Override; import java.lang.String; +import java.lang.SuppressWarnings; import java.time.LocalDate; +import java.util.List; import java.util.Optional; import org.openapitools.jackson.nullable.JsonNullable; @@ -93,6 +95,14 @@ public class EmployeeAddress { @JsonProperty("version") private String version; + /** + * An array of warning objects that provide additional information about the address. Warnings do not + * prevent the address from being saved. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("warnings") + private Optional> warnings; + @JsonCreator public EmployeeAddress( @JsonProperty("uuid") String uuid, @@ -106,7 +116,8 @@ public EmployeeAddress( @JsonProperty("zip") Optional zip, @JsonProperty("country") Optional country, @JsonProperty("active") Optional active, - @JsonProperty("version") String version) { + @JsonProperty("version") String version, + @JsonProperty("warnings") Optional> warnings) { Utils.checkNotNull(uuid, "uuid"); Utils.checkNotNull(employeeUuid, "employeeUuid"); Utils.checkNotNull(effectiveDate, "effectiveDate"); @@ -119,6 +130,7 @@ public EmployeeAddress( Utils.checkNotNull(country, "country"); Utils.checkNotNull(active, "active"); Utils.checkNotNull(version, "version"); + Utils.checkNotNull(warnings, "warnings"); this.uuid = uuid; this.employeeUuid = employeeUuid; this.effectiveDate = effectiveDate; @@ -131,6 +143,7 @@ public EmployeeAddress( this.country = country; this.active = active; this.version = version; + this.warnings = warnings; } public EmployeeAddress( @@ -139,7 +152,8 @@ public EmployeeAddress( this(uuid, Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), JsonNullable.undefined(), Optional.empty(), Optional.empty(), Optional.empty(), - Optional.empty(), Optional.empty(), version); + Optional.empty(), Optional.empty(), version, + Optional.empty()); } /** @@ -223,6 +237,16 @@ public String version() { return version; } + /** + * An array of warning objects that provide additional information about the address. Warnings do not + * prevent the address from being saved. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> warnings() { + return (Optional>) warnings; + } + public static Builder builder() { return new Builder(); } @@ -403,6 +427,27 @@ public EmployeeAddress withVersion(String version) { return this; } + /** + * An array of warning objects that provide additional information about the address. Warnings do not + * prevent the address from being saved. + */ + public EmployeeAddress withWarnings(List warnings) { + Utils.checkNotNull(warnings, "warnings"); + this.warnings = Optional.ofNullable(warnings); + return this; + } + + + /** + * An array of warning objects that provide additional information about the address. Warnings do not + * prevent the address from being saved. + */ + public EmployeeAddress withWarnings(Optional> warnings) { + Utils.checkNotNull(warnings, "warnings"); + this.warnings = warnings; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -424,7 +469,8 @@ public boolean equals(java.lang.Object o) { Utils.enhancedDeepEquals(this.zip, other.zip) && Utils.enhancedDeepEquals(this.country, other.country) && Utils.enhancedDeepEquals(this.active, other.active) && - Utils.enhancedDeepEquals(this.version, other.version); + Utils.enhancedDeepEquals(this.version, other.version) && + Utils.enhancedDeepEquals(this.warnings, other.warnings); } @Override @@ -433,7 +479,8 @@ public int hashCode() { uuid, employeeUuid, effectiveDate, courtesyWithholding, street1, street2, city, state, zip, - country, active, version); + country, active, version, + warnings); } @Override @@ -450,7 +497,8 @@ public String toString() { "zip", zip, "country", country, "active", active, - "version", version); + "version", version, + "warnings", warnings); } @SuppressWarnings("UnusedReturnValue") @@ -480,6 +528,8 @@ public final static class Builder { private String version; + private Optional> warnings = Optional.empty(); + private Builder() { // force use of static builder() method } @@ -662,6 +712,27 @@ public Builder version(String version) { return this; } + + /** + * An array of warning objects that provide additional information about the address. Warnings do not + * prevent the address from being saved. + */ + public Builder warnings(List warnings) { + Utils.checkNotNull(warnings, "warnings"); + this.warnings = Optional.ofNullable(warnings); + return this; + } + + /** + * An array of warning objects that provide additional information about the address. Warnings do not + * prevent the address from being saved. + */ + public Builder warnings(Optional> warnings) { + Utils.checkNotNull(warnings, "warnings"); + this.warnings = warnings; + return this; + } + public EmployeeAddress build() { if (country == null) { country = _SINGLETON_VALUE_Country.value(); @@ -671,7 +742,8 @@ public EmployeeAddress build() { uuid, employeeUuid, effectiveDate, courtesyWithholding, street1, street2, city, state, zip, - country, active, version); + country, active, version, + warnings); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeeBenefit.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeeBenefit.java index c662577c0..fa5b3b37e 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeeBenefit.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeeBenefit.java @@ -74,7 +74,7 @@ public class EmployeeBenefit { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("contribution") - private Optional contribution; + private Optional contribution; /** * Whether the company contribution is elective (aka matching). For "tiered" contribution types, this @@ -210,7 +210,7 @@ public EmployeeBenefit( @JsonProperty("employee_deduction") Optional employeeDeduction, @JsonProperty("deduct_as_percentage") Optional deductAsPercentage, @JsonProperty("employee_deduction_annual_maximum") JsonNullable employeeDeductionAnnualMaximum, - @JsonProperty("contribution") Optional contribution, + @JsonProperty("contribution") Optional contribution, @JsonProperty("elective") Optional elective, @JsonProperty("company_contribution_annual_maximum") JsonNullable companyContributionAnnualMaximum, @JsonProperty("limit_option") JsonNullable limitOption, @@ -330,8 +330,8 @@ public JsonNullable employeeDeductionAnnualMaximum() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional contribution() { - return (Optional) contribution; + public Optional contribution() { + return (Optional) contribution; } /** @@ -587,7 +587,7 @@ public EmployeeBenefit withEmployeeDeductionAnnualMaximum(JsonNullable e /** * An object representing the type and value of the company contribution. */ - public EmployeeBenefit withContribution(Contribution contribution) { + public EmployeeBenefit withContribution(EmployeeBenefitContribution contribution) { Utils.checkNotNull(contribution, "contribution"); this.contribution = Optional.ofNullable(contribution); return this; @@ -597,7 +597,7 @@ public EmployeeBenefit withContribution(Contribution contribution) { /** * An object representing the type and value of the company contribution. */ - public EmployeeBenefit withContribution(Optional contribution) { + public EmployeeBenefit withContribution(Optional contribution) { Utils.checkNotNull(contribution, "contribution"); this.contribution = contribution; return this; @@ -1008,7 +1008,7 @@ public final static class Builder { private JsonNullable employeeDeductionAnnualMaximum = JsonNullable.undefined(); - private Optional contribution = Optional.empty(); + private Optional contribution = Optional.empty(); private Optional elective; @@ -1153,7 +1153,7 @@ public Builder employeeDeductionAnnualMaximum(JsonNullable employeeDeduc /** * An object representing the type and value of the company contribution. */ - public Builder contribution(Contribution contribution) { + public Builder contribution(EmployeeBenefitContribution contribution) { Utils.checkNotNull(contribution, "contribution"); this.contribution = Optional.ofNullable(contribution); return this; @@ -1162,7 +1162,7 @@ public Builder contribution(Contribution contribution) { /** * An object representing the type and value of the company contribution. */ - public Builder contribution(Optional contribution) { + public Builder contribution(Optional contribution) { Utils.checkNotNull(contribution, "contribution"); this.contribution = contribution; return this; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeeBenefitContribution.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeeBenefitContribution.java new file mode 100644 index 000000000..029521ba0 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeeBenefitContribution.java @@ -0,0 +1,260 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + +/** + * EmployeeBenefitContribution + * + *

    An object representing the type and value of the company contribution. + */ +public class EmployeeBenefitContribution { + /** + * The company contribution scheme. + * + *

    "amount": The company contributes a fixed amount per payroll. If elective is true, the contribution + * is matching, dollar-for-dollar. + * + *

    "percentage": The company contributes a percentage of the payroll amount per payroll period. If + * elective is true, the contribution is matching, dollar-for-dollar. + * + *

    "tiered": The company contribution varies according to the size of the employee deduction. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("type") + private Optional type; + + /** + * For the `amount` and `percentage` contribution types, the value of the corresponding amount or + * percentage. + * + *

    For the `tiered` contribution type, an array of tiers. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("value") + private Optional value; + + @JsonCreator + public EmployeeBenefitContribution( + @JsonProperty("type") Optional type, + @JsonProperty("value") Optional value) { + Utils.checkNotNull(type, "type"); + Utils.checkNotNull(value, "value"); + this.type = type; + this.value = value; + } + + public EmployeeBenefitContribution() { + this(Optional.empty(), Optional.empty()); + } + + /** + * The company contribution scheme. + * + *

    "amount": The company contributes a fixed amount per payroll. If elective is true, the contribution + * is matching, dollar-for-dollar. + * + *

    "percentage": The company contributes a percentage of the payroll amount per payroll period. If + * elective is true, the contribution is matching, dollar-for-dollar. + * + *

    "tiered": The company contribution varies according to the size of the employee deduction. + */ + @JsonIgnore + public Optional type() { + return type; + } + + /** + * For the `amount` and `percentage` contribution types, the value of the corresponding amount or + * percentage. + * + *

    For the `tiered` contribution type, an array of tiers. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional value() { + return (Optional) value; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * The company contribution scheme. + * + *

    "amount": The company contributes a fixed amount per payroll. If elective is true, the contribution + * is matching, dollar-for-dollar. + * + *

    "percentage": The company contributes a percentage of the payroll amount per payroll period. If + * elective is true, the contribution is matching, dollar-for-dollar. + * + *

    "tiered": The company contribution varies according to the size of the employee deduction. + */ + public EmployeeBenefitContribution withType(String type) { + Utils.checkNotNull(type, "type"); + this.type = Optional.ofNullable(type); + return this; + } + + + /** + * The company contribution scheme. + * + *

    "amount": The company contributes a fixed amount per payroll. If elective is true, the contribution + * is matching, dollar-for-dollar. + * + *

    "percentage": The company contributes a percentage of the payroll amount per payroll period. If + * elective is true, the contribution is matching, dollar-for-dollar. + * + *

    "tiered": The company contribution varies according to the size of the employee deduction. + */ + public EmployeeBenefitContribution withType(Optional type) { + Utils.checkNotNull(type, "type"); + this.type = type; + return this; + } + + /** + * For the `amount` and `percentage` contribution types, the value of the corresponding amount or + * percentage. + * + *

    For the `tiered` contribution type, an array of tiers. + */ + public EmployeeBenefitContribution withValue(EmployeeBenefitValue value) { + Utils.checkNotNull(value, "value"); + this.value = Optional.ofNullable(value); + return this; + } + + + /** + * For the `amount` and `percentage` contribution types, the value of the corresponding amount or + * percentage. + * + *

    For the `tiered` contribution type, an array of tiers. + */ + public EmployeeBenefitContribution withValue(Optional value) { + Utils.checkNotNull(value, "value"); + this.value = value; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + EmployeeBenefitContribution other = (EmployeeBenefitContribution) o; + return + Utils.enhancedDeepEquals(this.type, other.type) && + Utils.enhancedDeepEquals(this.value, other.value); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + type, value); + } + + @Override + public String toString() { + return Utils.toString(EmployeeBenefitContribution.class, + "type", type, + "value", value); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional type = Optional.empty(); + + private Optional value = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * The company contribution scheme. + * + *

    "amount": The company contributes a fixed amount per payroll. If elective is true, the contribution + * is matching, dollar-for-dollar. + * + *

    "percentage": The company contributes a percentage of the payroll amount per payroll period. If + * elective is true, the contribution is matching, dollar-for-dollar. + * + *

    "tiered": The company contribution varies according to the size of the employee deduction. + */ + public Builder type(String type) { + Utils.checkNotNull(type, "type"); + this.type = Optional.ofNullable(type); + return this; + } + + /** + * The company contribution scheme. + * + *

    "amount": The company contributes a fixed amount per payroll. If elective is true, the contribution + * is matching, dollar-for-dollar. + * + *

    "percentage": The company contributes a percentage of the payroll amount per payroll period. If + * elective is true, the contribution is matching, dollar-for-dollar. + * + *

    "tiered": The company contribution varies according to the size of the employee deduction. + */ + public Builder type(Optional type) { + Utils.checkNotNull(type, "type"); + this.type = type; + return this; + } + + + /** + * For the `amount` and `percentage` contribution types, the value of the corresponding amount or + * percentage. + * + *

    For the `tiered` contribution type, an array of tiers. + */ + public Builder value(EmployeeBenefitValue value) { + Utils.checkNotNull(value, "value"); + this.value = Optional.ofNullable(value); + return this; + } + + /** + * For the `amount` and `percentage` contribution types, the value of the corresponding amount or + * percentage. + * + *

    For the `tiered` contribution type, an array of tiers. + */ + public Builder value(Optional value) { + Utils.checkNotNull(value, "value"); + this.value = value; + return this; + } + + public EmployeeBenefitContribution build() { + + return new EmployeeBenefitContribution( + type, value); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeeCompensations.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeeCompensations.java index 28380fade..657cb067a 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeeCompensations.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeeCompensations.java @@ -101,11 +101,12 @@ public class EmployeeCompensations { private JsonNullable memo; /** - * An array of fixed compensations for the employee. Fixed compensations include tips, bonuses, and one - * time reimbursements. If this payroll has been processed, only fixed compensations with a value - * greater than 0.00 are returned. + * An array of fixed compensations for the employee. Fixed compensations include tips and bonuses. On + * regular payrolls, reimbursements are sent via the dedicated `reimbursements` array instead. * - *

    For an unprocessed payroll, all active fixed compensations are returned. + *

    Off-cycle payrolls continue to include reimbursements in `fixed_compensations`. If this payroll has + * been processed, only fixed compensations with a value greater than 0.00 are returned. For an + * unprocessed payroll, all active fixed compensations are returned. */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("fixed_compensations") @@ -136,6 +137,15 @@ public class EmployeeCompensations { @JsonProperty("reimbursements") private Optional> reimbursements; + /** + * The one-time custom withholding overrides applied to this payroll for this employee. + * `federal` is null when no federal one-time override is set; `state` is an empty + * array when no state one-time overrides are set. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("custom_withholdings") + private Optional customWithholdings; + /** * The current version of this employee compensation. This field is only available for prepared * payrolls. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for @@ -189,6 +199,7 @@ public EmployeeCompensations( @JsonProperty("hourly_compensations") Optional> hourlyCompensations, @JsonProperty("paid_time_off") Optional> paidTimeOff, @JsonProperty("reimbursements") Optional> reimbursements, + @JsonProperty("custom_withholdings") Optional customWithholdings, @JsonProperty("version") Optional version, @JsonProperty("deductions") Optional> deductions, @JsonProperty("taxes") Optional> taxes, @@ -207,6 +218,7 @@ public EmployeeCompensations( Utils.checkNotNull(hourlyCompensations, "hourlyCompensations"); Utils.checkNotNull(paidTimeOff, "paidTimeOff"); Utils.checkNotNull(reimbursements, "reimbursements"); + Utils.checkNotNull(customWithholdings, "customWithholdings"); Utils.checkNotNull(version, "version"); Utils.checkNotNull(deductions, "deductions"); Utils.checkNotNull(taxes, "taxes"); @@ -225,6 +237,7 @@ public EmployeeCompensations( this.hourlyCompensations = hourlyCompensations; this.paidTimeOff = paidTimeOff; this.reimbursements = reimbursements; + this.customWithholdings = customWithholdings; this.version = version; this.deductions = deductions; this.taxes = taxes; @@ -238,7 +251,8 @@ public EmployeeCompensations() { JsonNullable.undefined(), JsonNullable.undefined(), JsonNullable.undefined(), JsonNullable.undefined(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), - Optional.empty(), Optional.empty(), Optional.empty()); + Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty()); } /** @@ -328,11 +342,12 @@ public JsonNullable memo() { } /** - * An array of fixed compensations for the employee. Fixed compensations include tips, bonuses, and one - * time reimbursements. If this payroll has been processed, only fixed compensations with a value - * greater than 0.00 are returned. + * An array of fixed compensations for the employee. Fixed compensations include tips and bonuses. On + * regular payrolls, reimbursements are sent via the dedicated `reimbursements` array instead. * - *

    For an unprocessed payroll, all active fixed compensations are returned. + *

    Off-cycle payrolls continue to include reimbursements in `fixed_compensations`. If this payroll has + * been processed, only fixed compensations with a value greater than 0.00 are returned. For an + * unprocessed payroll, all active fixed compensations are returned. */ @SuppressWarnings("unchecked") @JsonIgnore @@ -371,6 +386,17 @@ public Optional> reimbursements() { return (Optional>) reimbursements; } + /** + * The one-time custom withholding overrides applied to this payroll for this employee. + * `federal` is null when no federal one-time override is set; `state` is an empty + * array when no state one-time overrides are set. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional customWithholdings() { + return (Optional) customWithholdings; + } + /** * The current version of this employee compensation. This field is only available for prepared * payrolls. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for @@ -615,11 +641,12 @@ public EmployeeCompensations withMemo(JsonNullable memo) { } /** - * An array of fixed compensations for the employee. Fixed compensations include tips, bonuses, and one - * time reimbursements. If this payroll has been processed, only fixed compensations with a value - * greater than 0.00 are returned. + * An array of fixed compensations for the employee. Fixed compensations include tips and bonuses. On + * regular payrolls, reimbursements are sent via the dedicated `reimbursements` array instead. * - *

    For an unprocessed payroll, all active fixed compensations are returned. + *

    Off-cycle payrolls continue to include reimbursements in `fixed_compensations`. If this payroll has + * been processed, only fixed compensations with a value greater than 0.00 are returned. For an + * unprocessed payroll, all active fixed compensations are returned. */ public EmployeeCompensations withFixedCompensations(List fixedCompensations) { Utils.checkNotNull(fixedCompensations, "fixedCompensations"); @@ -629,11 +656,12 @@ public EmployeeCompensations withFixedCompensations(ListFor an unprocessed payroll, all active fixed compensations are returned. + *

    Off-cycle payrolls continue to include reimbursements in `fixed_compensations`. If this payroll has + * been processed, only fixed compensations with a value greater than 0.00 are returned. For an + * unprocessed payroll, all active fixed compensations are returned. */ public EmployeeCompensations withFixedCompensations(Optional> fixedCompensations) { Utils.checkNotNull(fixedCompensations, "fixedCompensations"); @@ -706,6 +734,29 @@ public EmployeeCompensations withReimbursements(Optional customWithholdings) { + Utils.checkNotNull(customWithholdings, "customWithholdings"); + this.customWithholdings = customWithholdings; + return this; + } + /** * The current version of this employee compensation. This field is only available for prepared * payrolls. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for @@ -829,6 +880,7 @@ public boolean equals(java.lang.Object o) { Utils.enhancedDeepEquals(this.hourlyCompensations, other.hourlyCompensations) && Utils.enhancedDeepEquals(this.paidTimeOff, other.paidTimeOff) && Utils.enhancedDeepEquals(this.reimbursements, other.reimbursements) && + Utils.enhancedDeepEquals(this.customWithholdings, other.customWithholdings) && Utils.enhancedDeepEquals(this.version, other.version) && Utils.enhancedDeepEquals(this.deductions, other.deductions) && Utils.enhancedDeepEquals(this.taxes, other.taxes) && @@ -843,9 +895,9 @@ public int hashCode() { preferredFirstName, lastName, grossPay, netPay, checkAmount, paymentMethod, memo, fixedCompensations, hourlyCompensations, - paidTimeOff, reimbursements, version, - deductions, taxes, benefits, - additionalProperties); + paidTimeOff, reimbursements, customWithholdings, + version, deductions, taxes, + benefits, additionalProperties); } @Override @@ -865,6 +917,7 @@ public String toString() { "hourlyCompensations", hourlyCompensations, "paidTimeOff", paidTimeOff, "reimbursements", reimbursements, + "customWithholdings", customWithholdings, "version", version, "deductions", deductions, "taxes", taxes, @@ -903,6 +956,8 @@ public final static class Builder { private Optional> reimbursements = Optional.empty(); + private Optional customWithholdings = Optional.empty(); + private Optional version = Optional.empty(); private Optional> deductions = Optional.empty(); @@ -1119,11 +1174,12 @@ public Builder memo(JsonNullable memo) { /** - * An array of fixed compensations for the employee. Fixed compensations include tips, bonuses, and one - * time reimbursements. If this payroll has been processed, only fixed compensations with a value - * greater than 0.00 are returned. + * An array of fixed compensations for the employee. Fixed compensations include tips and bonuses. On + * regular payrolls, reimbursements are sent via the dedicated `reimbursements` array instead. * - *

    For an unprocessed payroll, all active fixed compensations are returned. + *

    Off-cycle payrolls continue to include reimbursements in `fixed_compensations`. If this payroll has + * been processed, only fixed compensations with a value greater than 0.00 are returned. For an + * unprocessed payroll, all active fixed compensations are returned. */ public Builder fixedCompensations(List fixedCompensations) { Utils.checkNotNull(fixedCompensations, "fixedCompensations"); @@ -1132,11 +1188,12 @@ public Builder fixedCompensations(List fixedCompe } /** - * An array of fixed compensations for the employee. Fixed compensations include tips, bonuses, and one - * time reimbursements. If this payroll has been processed, only fixed compensations with a value - * greater than 0.00 are returned. + * An array of fixed compensations for the employee. Fixed compensations include tips and bonuses. On + * regular payrolls, reimbursements are sent via the dedicated `reimbursements` array instead. * - *

    For an unprocessed payroll, all active fixed compensations are returned. + *

    Off-cycle payrolls continue to include reimbursements in `fixed_compensations`. If this payroll has + * been processed, only fixed compensations with a value greater than 0.00 are returned. For an + * unprocessed payroll, all active fixed compensations are returned. */ public Builder fixedCompensations(Optional> fixedCompensations) { Utils.checkNotNull(fixedCompensations, "fixedCompensations"); @@ -1210,6 +1267,29 @@ public Builder reimbursements(Optional } + /** + * The one-time custom withholding overrides applied to this payroll for this employee. + * `federal` is null when no federal one-time override is set; `state` is an empty + * array when no state one-time overrides are set. + */ + public Builder customWithholdings(PayrollShowCustomWithholdings customWithholdings) { + Utils.checkNotNull(customWithholdings, "customWithholdings"); + this.customWithholdings = Optional.ofNullable(customWithholdings); + return this; + } + + /** + * The one-time custom withholding overrides applied to this payroll for this employee. + * `federal` is null when no federal one-time override is set; `state` is an empty + * array when no state one-time overrides are set. + */ + public Builder customWithholdings(Optional customWithholdings) { + Utils.checkNotNull(customWithholdings, "customWithholdings"); + this.customWithholdings = customWithholdings; + return this; + } + + /** * The current version of this employee compensation. This field is only available for prepared * payrolls. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for @@ -1318,8 +1398,9 @@ public EmployeeCompensations build() { preferredFirstName, lastName, grossPay, netPay, checkAmount, paymentMethod, memo, fixedCompensations, hourlyCompensations, - paidTimeOff, reimbursements, version, - deductions, taxes, benefits) + paidTimeOff, reimbursements, customWithholdings, + version, deductions, taxes, + benefits) .withAdditionalProperties(additionalProperties); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeeOnboardingStatus.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeeOnboardingStatus.java index 991ca324b..3bb107704 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeeOnboardingStatus.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeeOnboardingStatus.java @@ -41,22 +41,43 @@ public class EmployeeOnboardingStatus { @JsonProperty("onboarding_steps") private Optional> onboardingSteps; + /** + * Validation issues that should be resolved before this employee's onboarding is complete. Each entry + * identifies an affected field, a category describing the type of problem, and a human-readable + * message. + * + *

    Supported categories: + * + *

    - `duplicate_value`: Another employee in the same company already has this value. To resolve, cancel + * this onboarding and initiate a rehire if it's a returning employee, or contact support to + * investigate the conflict. + * + *

    This list may grow over time as new validation rules are added. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("blockers") + private Optional> blockers; + @JsonCreator public EmployeeOnboardingStatus( @JsonProperty("uuid") String uuid, @JsonProperty("onboarding_status") Optional onboardingStatus, - @JsonProperty("onboarding_steps") Optional> onboardingSteps) { + @JsonProperty("onboarding_steps") Optional> onboardingSteps, + @JsonProperty("blockers") Optional> blockers) { Utils.checkNotNull(uuid, "uuid"); Utils.checkNotNull(onboardingStatus, "onboardingStatus"); Utils.checkNotNull(onboardingSteps, "onboardingSteps"); + Utils.checkNotNull(blockers, "blockers"); this.uuid = uuid; this.onboardingStatus = onboardingStatus; this.onboardingSteps = onboardingSteps; + this.blockers = blockers; } public EmployeeOnboardingStatus( String uuid) { - this(uuid, Optional.empty(), Optional.empty()); + this(uuid, Optional.empty(), Optional.empty(), + Optional.empty()); } /** @@ -84,6 +105,25 @@ public Optional> onboardingSteps() return (Optional>) onboardingSteps; } + /** + * Validation issues that should be resolved before this employee's onboarding is complete. Each entry + * identifies an affected field, a category describing the type of problem, and a human-readable + * message. + * + *

    Supported categories: + * + *

    - `duplicate_value`: Another employee in the same company already has this value. To resolve, cancel + * this onboarding and initiate a rehire if it's a returning employee, or contact support to + * investigate the conflict. + * + *

    This list may grow over time as new validation rules are added. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> blockers() { + return (Optional>) blockers; + } + public static Builder builder() { return new Builder(); } @@ -136,6 +176,45 @@ public EmployeeOnboardingStatus withOnboardingSteps(OptionalSupported categories: + * + *

    - `duplicate_value`: Another employee in the same company already has this value. To resolve, cancel + * this onboarding and initiate a rehire if it's a returning employee, or contact support to + * investigate the conflict. + * + *

    This list may grow over time as new validation rules are added. + */ + public EmployeeOnboardingStatus withBlockers(List blockers) { + Utils.checkNotNull(blockers, "blockers"); + this.blockers = Optional.ofNullable(blockers); + return this; + } + + + /** + * Validation issues that should be resolved before this employee's onboarding is complete. Each entry + * identifies an affected field, a category describing the type of problem, and a human-readable + * message. + * + *

    Supported categories: + * + *

    - `duplicate_value`: Another employee in the same company already has this value. To resolve, cancel + * this onboarding and initiate a rehire if it's a returning employee, or contact support to + * investigate the conflict. + * + *

    This list may grow over time as new validation rules are added. + */ + public EmployeeOnboardingStatus withBlockers(Optional> blockers) { + Utils.checkNotNull(blockers, "blockers"); + this.blockers = blockers; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -148,13 +227,15 @@ public boolean equals(java.lang.Object o) { return Utils.enhancedDeepEquals(this.uuid, other.uuid) && Utils.enhancedDeepEquals(this.onboardingStatus, other.onboardingStatus) && - Utils.enhancedDeepEquals(this.onboardingSteps, other.onboardingSteps); + Utils.enhancedDeepEquals(this.onboardingSteps, other.onboardingSteps) && + Utils.enhancedDeepEquals(this.blockers, other.blockers); } @Override public int hashCode() { return Utils.enhancedHash( - uuid, onboardingStatus, onboardingSteps); + uuid, onboardingStatus, onboardingSteps, + blockers); } @Override @@ -162,7 +243,8 @@ public String toString() { return Utils.toString(EmployeeOnboardingStatus.class, "uuid", uuid, "onboardingStatus", onboardingStatus, - "onboardingSteps", onboardingSteps); + "onboardingSteps", onboardingSteps, + "blockers", blockers); } @SuppressWarnings("UnusedReturnValue") @@ -174,6 +256,8 @@ public final static class Builder { private Optional> onboardingSteps = Optional.empty(); + private Optional> blockers = Optional.empty(); + private Builder() { // force use of static builder() method } @@ -226,10 +310,50 @@ public Builder onboardingSteps(OptionalSupported categories: + * + *

    - `duplicate_value`: Another employee in the same company already has this value. To resolve, cancel + * this onboarding and initiate a rehire if it's a returning employee, or contact support to + * investigate the conflict. + * + *

    This list may grow over time as new validation rules are added. + */ + public Builder blockers(List blockers) { + Utils.checkNotNull(blockers, "blockers"); + this.blockers = Optional.ofNullable(blockers); + return this; + } + + /** + * Validation issues that should be resolved before this employee's onboarding is complete. Each entry + * identifies an affected field, a category describing the type of problem, and a human-readable + * message. + * + *

    Supported categories: + * + *

    - `duplicate_value`: Another employee in the same company already has this value. To resolve, cancel + * this onboarding and initiate a rehire if it's a returning employee, or contact support to + * investigate the conflict. + * + *

    This list may grow over time as new validation rules are added. + */ + public Builder blockers(Optional> blockers) { + Utils.checkNotNull(blockers, "blockers"); + this.blockers = blockers; + return this; + } + public EmployeeOnboardingStatus build() { return new EmployeeOnboardingStatus( - uuid, onboardingStatus, onboardingSteps); + uuid, onboardingStatus, onboardingSteps, + blockers); } } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeeOnboardingStatusCategory.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeeOnboardingStatusCategory.java new file mode 100644 index 000000000..95b795f63 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeeOnboardingStatusCategory.java @@ -0,0 +1,39 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * EmployeeOnboardingStatusCategory + * + *

    Category of the blocker. See the array-level description for resolution guidance. + */ +public enum EmployeeOnboardingStatusCategory { + DUPLICATE_VALUE("duplicate_value"); + + @JsonValue + private final String value; + + EmployeeOnboardingStatusCategory(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (EmployeeOnboardingStatusCategory o: EmployeeOnboardingStatusCategory.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeePaymentDetailsList.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeePaymentDetailsList.java index 790b20f00..fc25af95d 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeePaymentDetailsList.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeePaymentDetailsList.java @@ -54,14 +54,14 @@ public class EmployeePaymentDetailsList { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("split_by") - private JsonNullable splitBy; + private JsonNullable splitBy; /** * An array of payment splits. This field is applicable when `payment_method` is "Direct Deposit". */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("splits") - private JsonNullable> splits; + private JsonNullable> splits; @JsonCreator public EmployeePaymentDetailsList( @@ -69,8 +69,8 @@ public EmployeePaymentDetailsList( @JsonProperty("first_name") Optional firstName, @JsonProperty("last_name") Optional lastName, @JsonProperty("payment_method") Optional paymentMethod, - @JsonProperty("split_by") JsonNullable splitBy, - @JsonProperty("splits") JsonNullable> splits) { + @JsonProperty("split_by") JsonNullable splitBy, + @JsonProperty("splits") JsonNullable> splits) { Utils.checkNotNull(employeeUuid, "employeeUuid"); Utils.checkNotNull(firstName, "firstName"); Utils.checkNotNull(lastName, "lastName"); @@ -131,8 +131,8 @@ public Optional paymentMethod() { */ @SuppressWarnings("unchecked") @JsonIgnore - public JsonNullable splitBy() { - return (JsonNullable) splitBy; + public JsonNullable splitBy() { + return (JsonNullable) splitBy; } /** @@ -140,8 +140,8 @@ public JsonNullable splitBy() { */ @SuppressWarnings("unchecked") @JsonIgnore - public JsonNullable> splits() { - return (JsonNullable>) splits; + public JsonNullable> splits() { + return (JsonNullable>) splits; } public static Builder builder() { @@ -231,7 +231,7 @@ public EmployeePaymentDetailsList withPaymentMethod(OptionalIf `split_by` is Amount, the last split amount must be `null` to capture the remainder. */ - public EmployeePaymentDetailsList withSplitBy(SplitBy splitBy) { + public EmployeePaymentDetailsList withSplitBy(EmployeePaymentDetailsListSplitBy splitBy) { Utils.checkNotNull(splitBy, "splitBy"); this.splitBy = JsonNullable.of(splitBy); return this; @@ -243,7 +243,7 @@ public EmployeePaymentDetailsList withSplitBy(SplitBy splitBy) { * *

    If `split_by` is Amount, the last split amount must be `null` to capture the remainder. */ - public EmployeePaymentDetailsList withSplitBy(JsonNullable splitBy) { + public EmployeePaymentDetailsList withSplitBy(JsonNullable splitBy) { Utils.checkNotNull(splitBy, "splitBy"); this.splitBy = splitBy; return this; @@ -252,7 +252,7 @@ public EmployeePaymentDetailsList withSplitBy(JsonNullable sp /** * An array of payment splits. This field is applicable when `payment_method` is "Direct Deposit". */ - public EmployeePaymentDetailsList withSplits(List splits) { + public EmployeePaymentDetailsList withSplits(List splits) { Utils.checkNotNull(splits, "splits"); this.splits = JsonNullable.of(splits); return this; @@ -261,7 +261,7 @@ public EmployeePaymentDetailsList withSplits(List splits) { /** * An array of payment splits. This field is applicable when `payment_method` is "Direct Deposit". */ - public EmployeePaymentDetailsList withSplits(JsonNullable> splits) { + public EmployeePaymentDetailsList withSplits(JsonNullable> splits) { Utils.checkNotNull(splits, "splits"); this.splits = splits; return this; @@ -314,9 +314,9 @@ public final static class Builder { private Optional paymentMethod = Optional.empty(); - private JsonNullable splitBy = JsonNullable.undefined(); + private JsonNullable splitBy = JsonNullable.undefined(); - private JsonNullable> splits = JsonNullable.undefined(); + private JsonNullable> splits = JsonNullable.undefined(); private Builder() { // force use of static builder() method @@ -405,7 +405,7 @@ public Builder paymentMethod(OptionalIf `split_by` is Amount, the last split amount must be `null` to capture the remainder. */ - public Builder splitBy(SplitBy splitBy) { + public Builder splitBy(EmployeePaymentDetailsListSplitBy splitBy) { Utils.checkNotNull(splitBy, "splitBy"); this.splitBy = JsonNullable.of(splitBy); return this; @@ -417,7 +417,7 @@ public Builder splitBy(SplitBy splitBy) { * *

    If `split_by` is Amount, the last split amount must be `null` to capture the remainder. */ - public Builder splitBy(JsonNullable splitBy) { + public Builder splitBy(JsonNullable splitBy) { Utils.checkNotNull(splitBy, "splitBy"); this.splitBy = splitBy; return this; @@ -427,7 +427,7 @@ public Builder splitBy(JsonNullable splitBy) { /** * An array of payment splits. This field is applicable when `payment_method` is "Direct Deposit". */ - public Builder splits(List splits) { + public Builder splits(List splits) { Utils.checkNotNull(splits, "splits"); this.splits = JsonNullable.of(splits); return this; @@ -436,7 +436,7 @@ public Builder splits(List splits) { /** * An array of payment splits. This field is applicable when `payment_method` is "Direct Deposit". */ - public Builder splits(JsonNullable> splits) { + public Builder splits(JsonNullable> splits) { Utils.checkNotNull(splits, "splits"); this.splits = splits; return this; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentDetailsListSplitBy.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeePaymentDetailsListSplitBy.java similarity index 68% rename from gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentDetailsListSplitBy.java rename to gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeePaymentDetailsListSplitBy.java index 1fe218ced..95801fbe0 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentDetailsListSplitBy.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeePaymentDetailsListSplitBy.java @@ -8,14 +8,14 @@ import java.util.Objects; import java.util.Optional; -public enum ContractorPaymentDetailsListSplitBy { +public enum EmployeePaymentDetailsListSplitBy { AMOUNT("Amount"), PERCENTAGE("Percentage"); @JsonValue private final String value; - ContractorPaymentDetailsListSplitBy(String value) { + EmployeePaymentDetailsListSplitBy(String value) { this.value = value; } @@ -23,8 +23,8 @@ public String value() { return value; } - public static Optional fromValue(String value) { - for (ContractorPaymentDetailsListSplitBy o: ContractorPaymentDetailsListSplitBy.values()) { + public static Optional fromValue(String value) { + for (EmployeePaymentDetailsListSplitBy o: EmployeePaymentDetailsListSplitBy.values()) { if (Objects.deepEquals(o.value, value)) { return Optional.of(o); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentDetailsListSplits.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeePaymentDetailsListSplits.java similarity index 78% rename from gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentDetailsListSplits.java rename to gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeePaymentDetailsListSplits.java index 9ecb8de5c..5973800cf 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentDetailsListSplits.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeePaymentDetailsListSplits.java @@ -17,13 +17,17 @@ import org.openapitools.jackson.nullable.JsonNullable; -public class ContractorPaymentDetailsListSplits { - +public class EmployeePaymentDetailsListSplits { + /** + * The UUID of the bank account. + */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("bank_account_uuid") private Optional bankAccountUuid; - + /** + * The name of the bank account. + */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("name") private Optional name; @@ -37,17 +41,26 @@ public class ContractorPaymentDetailsListSplits { /** * Ciphertext containing the full bank account number, which must be decrypted using a key provided by - * Gusto. Only visible with the `contractor_payment_methods:read:account_number` scope. + * Gusto. Only visible with the `employee_payment_methods:read:account_number` scope. */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("encrypted_account_number") private JsonNullable encryptedAccountNumber; - + /** + * The routing number of the bank account. + */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("routing_number") private Optional routingNumber; + /** + * The bank account type (e.g., "Checking" or "Savings"). + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("account_type") + private Optional accountType; + /** * The order of priority for each payment split, with priority 1 being the first bank account paid. * Priority must be unique and sequential. @@ -65,50 +78,51 @@ public class ContractorPaymentDetailsListSplits { @JsonProperty("split_amount") private JsonNullable splitAmount; - - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("account_type") - private Optional accountType; - @JsonCreator - public ContractorPaymentDetailsListSplits( + public EmployeePaymentDetailsListSplits( @JsonProperty("bank_account_uuid") Optional bankAccountUuid, @JsonProperty("name") Optional name, @JsonProperty("hidden_account_number") Optional hiddenAccountNumber, @JsonProperty("encrypted_account_number") JsonNullable encryptedAccountNumber, @JsonProperty("routing_number") Optional routingNumber, + @JsonProperty("account_type") Optional accountType, @JsonProperty("priority") Optional priority, - @JsonProperty("split_amount") JsonNullable splitAmount, - @JsonProperty("account_type") Optional accountType) { + @JsonProperty("split_amount") JsonNullable splitAmount) { Utils.checkNotNull(bankAccountUuid, "bankAccountUuid"); Utils.checkNotNull(name, "name"); Utils.checkNotNull(hiddenAccountNumber, "hiddenAccountNumber"); Utils.checkNotNull(encryptedAccountNumber, "encryptedAccountNumber"); Utils.checkNotNull(routingNumber, "routingNumber"); + Utils.checkNotNull(accountType, "accountType"); Utils.checkNotNull(priority, "priority"); Utils.checkNotNull(splitAmount, "splitAmount"); - Utils.checkNotNull(accountType, "accountType"); this.bankAccountUuid = bankAccountUuid; this.name = name; this.hiddenAccountNumber = hiddenAccountNumber; this.encryptedAccountNumber = encryptedAccountNumber; this.routingNumber = routingNumber; + this.accountType = accountType; this.priority = priority; this.splitAmount = splitAmount; - this.accountType = accountType; } - public ContractorPaymentDetailsListSplits() { + public EmployeePaymentDetailsListSplits() { this(Optional.empty(), Optional.empty(), Optional.empty(), JsonNullable.undefined(), Optional.empty(), Optional.empty(), - JsonNullable.undefined(), Optional.empty()); + Optional.empty(), JsonNullable.undefined()); } + /** + * The UUID of the bank account. + */ @JsonIgnore public Optional bankAccountUuid() { return bankAccountUuid; } + /** + * The name of the bank account. + */ @JsonIgnore public Optional name() { return name; @@ -124,18 +138,29 @@ public Optional hiddenAccountNumber() { /** * Ciphertext containing the full bank account number, which must be decrypted using a key provided by - * Gusto. Only visible with the `contractor_payment_methods:read:account_number` scope. + * Gusto. Only visible with the `employee_payment_methods:read:account_number` scope. */ @JsonIgnore public JsonNullable encryptedAccountNumber() { return encryptedAccountNumber; } + /** + * The routing number of the bank account. + */ @JsonIgnore public Optional routingNumber() { return routingNumber; } + /** + * The bank account type (e.g., "Checking" or "Savings"). + */ + @JsonIgnore + public Optional accountType() { + return accountType; + } + /** * The order of priority for each payment split, with priority 1 being the first bank account paid. * Priority must be unique and sequential. @@ -155,37 +180,44 @@ public JsonNullable splitAmount() { return splitAmount; } - @JsonIgnore - public Optional accountType() { - return accountType; - } - public static Builder builder() { return new Builder(); } - public ContractorPaymentDetailsListSplits withBankAccountUuid(String bankAccountUuid) { + /** + * The UUID of the bank account. + */ + public EmployeePaymentDetailsListSplits withBankAccountUuid(String bankAccountUuid) { Utils.checkNotNull(bankAccountUuid, "bankAccountUuid"); this.bankAccountUuid = Optional.ofNullable(bankAccountUuid); return this; } - public ContractorPaymentDetailsListSplits withBankAccountUuid(Optional bankAccountUuid) { + /** + * The UUID of the bank account. + */ + public EmployeePaymentDetailsListSplits withBankAccountUuid(Optional bankAccountUuid) { Utils.checkNotNull(bankAccountUuid, "bankAccountUuid"); this.bankAccountUuid = bankAccountUuid; return this; } - public ContractorPaymentDetailsListSplits withName(String name) { + /** + * The name of the bank account. + */ + public EmployeePaymentDetailsListSplits withName(String name) { Utils.checkNotNull(name, "name"); this.name = Optional.ofNullable(name); return this; } - public ContractorPaymentDetailsListSplits withName(Optional name) { + /** + * The name of the bank account. + */ + public EmployeePaymentDetailsListSplits withName(Optional name) { Utils.checkNotNull(name, "name"); this.name = name; return this; @@ -194,7 +226,7 @@ public ContractorPaymentDetailsListSplits withName(Optional name) { /** * An obfuscated version of the account number which can be used for display purposes. */ - public ContractorPaymentDetailsListSplits withHiddenAccountNumber(String hiddenAccountNumber) { + public EmployeePaymentDetailsListSplits withHiddenAccountNumber(String hiddenAccountNumber) { Utils.checkNotNull(hiddenAccountNumber, "hiddenAccountNumber"); this.hiddenAccountNumber = Optional.ofNullable(hiddenAccountNumber); return this; @@ -204,7 +236,7 @@ public ContractorPaymentDetailsListSplits withHiddenAccountNumber(String hiddenA /** * An obfuscated version of the account number which can be used for display purposes. */ - public ContractorPaymentDetailsListSplits withHiddenAccountNumber(Optional hiddenAccountNumber) { + public EmployeePaymentDetailsListSplits withHiddenAccountNumber(Optional hiddenAccountNumber) { Utils.checkNotNull(hiddenAccountNumber, "hiddenAccountNumber"); this.hiddenAccountNumber = hiddenAccountNumber; return this; @@ -212,9 +244,9 @@ public ContractorPaymentDetailsListSplits withHiddenAccountNumber(Optional encryptedAccountNumber) { + public EmployeePaymentDetailsListSplits withEncryptedAccountNumber(JsonNullable encryptedAccountNumber) { Utils.checkNotNull(encryptedAccountNumber, "encryptedAccountNumber"); this.encryptedAccountNumber = encryptedAccountNumber; return this; } - public ContractorPaymentDetailsListSplits withRoutingNumber(String routingNumber) { + /** + * The routing number of the bank account. + */ + public EmployeePaymentDetailsListSplits withRoutingNumber(String routingNumber) { Utils.checkNotNull(routingNumber, "routingNumber"); this.routingNumber = Optional.ofNullable(routingNumber); return this; } - public ContractorPaymentDetailsListSplits withRoutingNumber(Optional routingNumber) { + /** + * The routing number of the bank account. + */ + public EmployeePaymentDetailsListSplits withRoutingNumber(Optional routingNumber) { Utils.checkNotNull(routingNumber, "routingNumber"); this.routingNumber = routingNumber; return this; } + /** + * The bank account type (e.g., "Checking" or "Savings"). + */ + public EmployeePaymentDetailsListSplits withAccountType(String accountType) { + Utils.checkNotNull(accountType, "accountType"); + this.accountType = Optional.ofNullable(accountType); + return this; + } + + + /** + * The bank account type (e.g., "Checking" or "Savings"). + */ + public EmployeePaymentDetailsListSplits withAccountType(Optional accountType) { + Utils.checkNotNull(accountType, "accountType"); + this.accountType = accountType; + return this; + } + /** * The order of priority for each payment split, with priority 1 being the first bank account paid. * Priority must be unique and sequential. */ - public ContractorPaymentDetailsListSplits withPriority(long priority) { + public EmployeePaymentDetailsListSplits withPriority(long priority) { Utils.checkNotNull(priority, "priority"); this.priority = Optional.ofNullable(priority); return this; @@ -258,7 +315,7 @@ public ContractorPaymentDetailsListSplits withPriority(long priority) { * The order of priority for each payment split, with priority 1 being the first bank account paid. * Priority must be unique and sequential. */ - public ContractorPaymentDetailsListSplits withPriority(Optional priority) { + public EmployeePaymentDetailsListSplits withPriority(Optional priority) { Utils.checkNotNull(priority, "priority"); this.priority = priority; return this; @@ -269,7 +326,7 @@ public ContractorPaymentDetailsListSplits withPriority(Optional priority) * a `split_amount` of `null` to capture the remainder. If `split_by` is 'Percentage', this is the * percentage value (e.g., 60 for 60%). */ - public ContractorPaymentDetailsListSplits withSplitAmount(double splitAmount) { + public EmployeePaymentDetailsListSplits withSplitAmount(double splitAmount) { Utils.checkNotNull(splitAmount, "splitAmount"); this.splitAmount = JsonNullable.of(splitAmount); return this; @@ -280,25 +337,12 @@ public ContractorPaymentDetailsListSplits withSplitAmount(double splitAmount) { * a `split_amount` of `null` to capture the remainder. If `split_by` is 'Percentage', this is the * percentage value (e.g., 60 for 60%). */ - public ContractorPaymentDetailsListSplits withSplitAmount(JsonNullable splitAmount) { + public EmployeePaymentDetailsListSplits withSplitAmount(JsonNullable splitAmount) { Utils.checkNotNull(splitAmount, "splitAmount"); this.splitAmount = splitAmount; return this; } - public ContractorPaymentDetailsListSplits withAccountType(String accountType) { - Utils.checkNotNull(accountType, "accountType"); - this.accountType = Optional.ofNullable(accountType); - return this; - } - - - public ContractorPaymentDetailsListSplits withAccountType(Optional accountType) { - Utils.checkNotNull(accountType, "accountType"); - this.accountType = accountType; - return this; - } - @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -307,37 +351,37 @@ public boolean equals(java.lang.Object o) { if (o == null || getClass() != o.getClass()) { return false; } - ContractorPaymentDetailsListSplits other = (ContractorPaymentDetailsListSplits) o; + EmployeePaymentDetailsListSplits other = (EmployeePaymentDetailsListSplits) o; return Utils.enhancedDeepEquals(this.bankAccountUuid, other.bankAccountUuid) && Utils.enhancedDeepEquals(this.name, other.name) && Utils.enhancedDeepEquals(this.hiddenAccountNumber, other.hiddenAccountNumber) && Utils.enhancedDeepEquals(this.encryptedAccountNumber, other.encryptedAccountNumber) && Utils.enhancedDeepEquals(this.routingNumber, other.routingNumber) && + Utils.enhancedDeepEquals(this.accountType, other.accountType) && Utils.enhancedDeepEquals(this.priority, other.priority) && - Utils.enhancedDeepEquals(this.splitAmount, other.splitAmount) && - Utils.enhancedDeepEquals(this.accountType, other.accountType); + Utils.enhancedDeepEquals(this.splitAmount, other.splitAmount); } @Override public int hashCode() { return Utils.enhancedHash( bankAccountUuid, name, hiddenAccountNumber, - encryptedAccountNumber, routingNumber, priority, - splitAmount, accountType); + encryptedAccountNumber, routingNumber, accountType, + priority, splitAmount); } @Override public String toString() { - return Utils.toString(ContractorPaymentDetailsListSplits.class, + return Utils.toString(EmployeePaymentDetailsListSplits.class, "bankAccountUuid", bankAccountUuid, "name", name, "hiddenAccountNumber", hiddenAccountNumber, "encryptedAccountNumber", encryptedAccountNumber, "routingNumber", routingNumber, + "accountType", accountType, "priority", priority, - "splitAmount", splitAmount, - "accountType", accountType); + "splitAmount", splitAmount); } @SuppressWarnings("UnusedReturnValue") @@ -353,23 +397,29 @@ public final static class Builder { private Optional routingNumber = Optional.empty(); + private Optional accountType = Optional.empty(); + private Optional priority = Optional.empty(); private JsonNullable splitAmount = JsonNullable.undefined(); - private Optional accountType = Optional.empty(); - private Builder() { // force use of static builder() method } + /** + * The UUID of the bank account. + */ public Builder bankAccountUuid(String bankAccountUuid) { Utils.checkNotNull(bankAccountUuid, "bankAccountUuid"); this.bankAccountUuid = Optional.ofNullable(bankAccountUuid); return this; } + /** + * The UUID of the bank account. + */ public Builder bankAccountUuid(Optional bankAccountUuid) { Utils.checkNotNull(bankAccountUuid, "bankAccountUuid"); this.bankAccountUuid = bankAccountUuid; @@ -377,12 +427,18 @@ public Builder bankAccountUuid(Optional bankAccountUuid) { } + /** + * The name of the bank account. + */ public Builder name(String name) { Utils.checkNotNull(name, "name"); this.name = Optional.ofNullable(name); return this; } + /** + * The name of the bank account. + */ public Builder name(Optional name) { Utils.checkNotNull(name, "name"); this.name = name; @@ -411,7 +467,7 @@ public Builder hiddenAccountNumber(Optional hiddenAccountNumber) { /** * Ciphertext containing the full bank account number, which must be decrypted using a key provided by - * Gusto. Only visible with the `contractor_payment_methods:read:account_number` scope. + * Gusto. Only visible with the `employee_payment_methods:read:account_number` scope. */ public Builder encryptedAccountNumber(String encryptedAccountNumber) { Utils.checkNotNull(encryptedAccountNumber, "encryptedAccountNumber"); @@ -421,7 +477,7 @@ public Builder encryptedAccountNumber(String encryptedAccountNumber) { /** * Ciphertext containing the full bank account number, which must be decrypted using a key provided by - * Gusto. Only visible with the `contractor_payment_methods:read:account_number` scope. + * Gusto. Only visible with the `employee_payment_methods:read:account_number` scope. */ public Builder encryptedAccountNumber(JsonNullable encryptedAccountNumber) { Utils.checkNotNull(encryptedAccountNumber, "encryptedAccountNumber"); @@ -430,12 +486,18 @@ public Builder encryptedAccountNumber(JsonNullable encryptedAccountNumbe } + /** + * The routing number of the bank account. + */ public Builder routingNumber(String routingNumber) { Utils.checkNotNull(routingNumber, "routingNumber"); this.routingNumber = Optional.ofNullable(routingNumber); return this; } + /** + * The routing number of the bank account. + */ public Builder routingNumber(Optional routingNumber) { Utils.checkNotNull(routingNumber, "routingNumber"); this.routingNumber = routingNumber; @@ -443,6 +505,25 @@ public Builder routingNumber(Optional routingNumber) { } + /** + * The bank account type (e.g., "Checking" or "Savings"). + */ + public Builder accountType(String accountType) { + Utils.checkNotNull(accountType, "accountType"); + this.accountType = Optional.ofNullable(accountType); + return this; + } + + /** + * The bank account type (e.g., "Checking" or "Savings"). + */ + public Builder accountType(Optional accountType) { + Utils.checkNotNull(accountType, "accountType"); + this.accountType = accountType; + return this; + } + + /** * The order of priority for each payment split, with priority 1 being the first bank account paid. * Priority must be unique and sequential. @@ -486,25 +567,12 @@ public Builder splitAmount(JsonNullable splitAmount) { return this; } + public EmployeePaymentDetailsListSplits build() { - public Builder accountType(String accountType) { - Utils.checkNotNull(accountType, "accountType"); - this.accountType = Optional.ofNullable(accountType); - return this; - } - - public Builder accountType(Optional accountType) { - Utils.checkNotNull(accountType, "accountType"); - this.accountType = accountType; - return this; - } - - public ContractorPaymentDetailsListSplits build() { - - return new ContractorPaymentDetailsListSplits( + return new EmployeePaymentDetailsListSplits( bankAccountUuid, name, hiddenAccountNumber, - encryptedAccountNumber, routingNumber, priority, - splitAmount, accountType); + encryptedAccountNumber, routingNumber, accountType, + priority, splitAmount); } } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeeStateTaxInputQuestionFormat.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeeStateTaxInputQuestionFormat.java index 227a3591b..29f32bccc 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeeStateTaxInputQuestionFormat.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeeStateTaxInputQuestionFormat.java @@ -28,12 +28,12 @@ public class EmployeeStateTaxInputQuestionFormat { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("options") - private Optional> options; + private Optional> options; @JsonCreator public EmployeeStateTaxInputQuestionFormat( @JsonProperty("type") String type, - @JsonProperty("options") Optional> options) { + @JsonProperty("options") Optional> options) { Utils.checkNotNull(type, "type"); Utils.checkNotNull(options, "options"); this.type = type; @@ -58,8 +58,8 @@ public String type() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional> options() { - return (Optional>) options; + public Optional> options() { + return (Optional>) options; } public static Builder builder() { @@ -79,7 +79,7 @@ public EmployeeStateTaxInputQuestionFormat withType(String type) { /** * For "Select" type questions, the allowed values and display labels. */ - public EmployeeStateTaxInputQuestionFormat withOptions(List options) { + public EmployeeStateTaxInputQuestionFormat withOptions(List options) { Utils.checkNotNull(options, "options"); this.options = Optional.ofNullable(options); return this; @@ -89,7 +89,7 @@ public EmployeeStateTaxInputQuestionFormat withOptions(List options) { /** * For "Select" type questions, the allowed values and display labels. */ - public EmployeeStateTaxInputQuestionFormat withOptions(Optional> options) { + public EmployeeStateTaxInputQuestionFormat withOptions(Optional> options) { Utils.checkNotNull(options, "options"); this.options = options; return this; @@ -127,7 +127,7 @@ public final static class Builder { private String type; - private Optional> options = Optional.empty(); + private Optional> options = Optional.empty(); private Builder() { // force use of static builder() method @@ -147,7 +147,7 @@ public Builder type(String type) { /** * For "Select" type questions, the allowed values and display labels. */ - public Builder options(List options) { + public Builder options(List options) { Utils.checkNotNull(options, "options"); this.options = Optional.ofNullable(options); return this; @@ -156,7 +156,7 @@ public Builder options(List options) { /** * For "Select" type questions, the allowed values and display labels. */ - public Builder options(Optional> options) { + public Builder options(Optional> options) { Utils.checkNotNull(options, "options"); this.options = options; return this; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeeStateTaxInputQuestionFormatOptions.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeeStateTaxInputQuestionFormatOptions.java new file mode 100644 index 000000000..ae2e1ae42 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeeStateTaxInputQuestionFormatOptions.java @@ -0,0 +1,171 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class EmployeeStateTaxInputQuestionFormatOptions { + /** + * An allowed value to answer the question + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("value") + private Optional value; + + /** + * A display label that corresponds to the answer value + */ + @JsonProperty("label") + private String label; + + @JsonCreator + public EmployeeStateTaxInputQuestionFormatOptions( + @JsonProperty("value") Optional value, + @JsonProperty("label") String label) { + Utils.checkNotNull(value, "value"); + Utils.checkNotNull(label, "label"); + this.value = value; + this.label = label; + } + + public EmployeeStateTaxInputQuestionFormatOptions( + String label) { + this(Optional.empty(), label); + } + + /** + * An allowed value to answer the question + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional value() { + return (Optional) value; + } + + /** + * A display label that corresponds to the answer value + */ + @JsonIgnore + public String label() { + return label; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * An allowed value to answer the question + */ + public EmployeeStateTaxInputQuestionFormatOptions withValue(EmployeeStateTaxInputQuestionFormatValue value) { + Utils.checkNotNull(value, "value"); + this.value = Optional.ofNullable(value); + return this; + } + + + /** + * An allowed value to answer the question + */ + public EmployeeStateTaxInputQuestionFormatOptions withValue(Optional value) { + Utils.checkNotNull(value, "value"); + this.value = value; + return this; + } + + /** + * A display label that corresponds to the answer value + */ + public EmployeeStateTaxInputQuestionFormatOptions withLabel(String label) { + Utils.checkNotNull(label, "label"); + this.label = label; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + EmployeeStateTaxInputQuestionFormatOptions other = (EmployeeStateTaxInputQuestionFormatOptions) o; + return + Utils.enhancedDeepEquals(this.value, other.value) && + Utils.enhancedDeepEquals(this.label, other.label); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + value, label); + } + + @Override + public String toString() { + return Utils.toString(EmployeeStateTaxInputQuestionFormatOptions.class, + "value", value, + "label", label); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional value = Optional.empty(); + + private String label; + + private Builder() { + // force use of static builder() method + } + + + /** + * An allowed value to answer the question + */ + public Builder value(EmployeeStateTaxInputQuestionFormatValue value) { + Utils.checkNotNull(value, "value"); + this.value = Optional.ofNullable(value); + return this; + } + + /** + * An allowed value to answer the question + */ + public Builder value(Optional value) { + Utils.checkNotNull(value, "value"); + this.value = value; + return this; + } + + + /** + * A display label that corresponds to the answer value + */ + public Builder label(String label) { + Utils.checkNotNull(label, "label"); + this.label = label; + return this; + } + + public EmployeeStateTaxInputQuestionFormatOptions build() { + + return new EmployeeStateTaxInputQuestionFormatOptions( + value, label); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Employees.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Employees.java index 4e147cbb1..20165ea7a 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Employees.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Employees.java @@ -11,52 +11,166 @@ import com.gusto.embedded_api_v_2025_11_15.utils.Utils; import java.lang.Override; import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.List; import java.util.Optional; public class Employees { /** - * Employee UUID + * The UUID of the employee */ @JsonInclude(Include.NON_ABSENT) - @JsonProperty("employee_uuid") - private Optional employeeUuid; + @JsonProperty("uuid") + private Optional uuid; /** - * Pay schedule UUID + * The sum of employee deduction for this employee given the period of time and the specific company + * benefit. */ @JsonInclude(Include.NON_ABSENT) - @JsonProperty("pay_schedule_uuid") - private Optional payScheduleUuid; + @JsonProperty("company_benefit_deduction") + private Optional companyBenefitDeduction; + + /** + * The sum of company contribution for this employee given the period of time and the specific company + * benefit. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("company_benefit_contribution") + private Optional companyBenefitContribution; + + /** + * The sum of employee benefit deduction for this employee given the period of time and the benefit + * type. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("benefit_deduction") + private Optional benefitDeduction; + + /** + * The sum of company contribution for this employee given the period of time and the benefit type. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("benefit_contribution") + private Optional benefitContribution; + + /** + * Gross pay for this employee given the period of time. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("gross_pay") + private Optional grossPay; + + /** + * Total imputed pay for this employee given the period of time (not scoped to a benefit type). + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("imputed_pay") + private Optional imputedPay; + + + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("payroll_benefits") + private Optional> payrollBenefits; @JsonCreator public Employees( - @JsonProperty("employee_uuid") Optional employeeUuid, - @JsonProperty("pay_schedule_uuid") Optional payScheduleUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - Utils.checkNotNull(payScheduleUuid, "payScheduleUuid"); - this.employeeUuid = employeeUuid; - this.payScheduleUuid = payScheduleUuid; + @JsonProperty("uuid") Optional uuid, + @JsonProperty("company_benefit_deduction") Optional companyBenefitDeduction, + @JsonProperty("company_benefit_contribution") Optional companyBenefitContribution, + @JsonProperty("benefit_deduction") Optional benefitDeduction, + @JsonProperty("benefit_contribution") Optional benefitContribution, + @JsonProperty("gross_pay") Optional grossPay, + @JsonProperty("imputed_pay") Optional imputedPay, + @JsonProperty("payroll_benefits") Optional> payrollBenefits) { + Utils.checkNotNull(uuid, "uuid"); + Utils.checkNotNull(companyBenefitDeduction, "companyBenefitDeduction"); + Utils.checkNotNull(companyBenefitContribution, "companyBenefitContribution"); + Utils.checkNotNull(benefitDeduction, "benefitDeduction"); + Utils.checkNotNull(benefitContribution, "benefitContribution"); + Utils.checkNotNull(grossPay, "grossPay"); + Utils.checkNotNull(imputedPay, "imputedPay"); + Utils.checkNotNull(payrollBenefits, "payrollBenefits"); + this.uuid = uuid; + this.companyBenefitDeduction = companyBenefitDeduction; + this.companyBenefitContribution = companyBenefitContribution; + this.benefitDeduction = benefitDeduction; + this.benefitContribution = benefitContribution; + this.grossPay = grossPay; + this.imputedPay = imputedPay; + this.payrollBenefits = payrollBenefits; } public Employees() { - this(Optional.empty(), Optional.empty()); + this(Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty(), Optional.empty()); } /** - * Employee UUID + * The UUID of the employee */ @JsonIgnore - public Optional employeeUuid() { - return employeeUuid; + public Optional uuid() { + return uuid; } /** - * Pay schedule UUID + * The sum of employee deduction for this employee given the period of time and the specific company + * benefit. */ @JsonIgnore - public Optional payScheduleUuid() { - return payScheduleUuid; + public Optional companyBenefitDeduction() { + return companyBenefitDeduction; + } + + /** + * The sum of company contribution for this employee given the period of time and the specific company + * benefit. + */ + @JsonIgnore + public Optional companyBenefitContribution() { + return companyBenefitContribution; + } + + /** + * The sum of employee benefit deduction for this employee given the period of time and the benefit + * type. + */ + @JsonIgnore + public Optional benefitDeduction() { + return benefitDeduction; + } + + /** + * The sum of company contribution for this employee given the period of time and the benefit type. + */ + @JsonIgnore + public Optional benefitContribution() { + return benefitContribution; + } + + /** + * Gross pay for this employee given the period of time. + */ + @JsonIgnore + public Optional grossPay() { + return grossPay; + } + + /** + * Total imputed pay for this employee given the period of time (not scoped to a benefit type). + */ + @JsonIgnore + public Optional imputedPay() { + return imputedPay; + } + + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> payrollBenefits() { + return (Optional>) payrollBenefits; } public static Builder builder() { @@ -65,40 +179,154 @@ public static Builder builder() { /** - * Employee UUID + * The UUID of the employee */ - public Employees withEmployeeUuid(String employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = Optional.ofNullable(employeeUuid); + public Employees withUuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = Optional.ofNullable(uuid); return this; } /** - * Employee UUID + * The UUID of the employee */ - public Employees withEmployeeUuid(Optional employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = employeeUuid; + public Employees withUuid(Optional uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; return this; } /** - * Pay schedule UUID + * The sum of employee deduction for this employee given the period of time and the specific company + * benefit. */ - public Employees withPayScheduleUuid(String payScheduleUuid) { - Utils.checkNotNull(payScheduleUuid, "payScheduleUuid"); - this.payScheduleUuid = Optional.ofNullable(payScheduleUuid); + public Employees withCompanyBenefitDeduction(String companyBenefitDeduction) { + Utils.checkNotNull(companyBenefitDeduction, "companyBenefitDeduction"); + this.companyBenefitDeduction = Optional.ofNullable(companyBenefitDeduction); return this; } /** - * Pay schedule UUID + * The sum of employee deduction for this employee given the period of time and the specific company + * benefit. + */ + public Employees withCompanyBenefitDeduction(Optional companyBenefitDeduction) { + Utils.checkNotNull(companyBenefitDeduction, "companyBenefitDeduction"); + this.companyBenefitDeduction = companyBenefitDeduction; + return this; + } + + /** + * The sum of company contribution for this employee given the period of time and the specific company + * benefit. */ - public Employees withPayScheduleUuid(Optional payScheduleUuid) { - Utils.checkNotNull(payScheduleUuid, "payScheduleUuid"); - this.payScheduleUuid = payScheduleUuid; + public Employees withCompanyBenefitContribution(String companyBenefitContribution) { + Utils.checkNotNull(companyBenefitContribution, "companyBenefitContribution"); + this.companyBenefitContribution = Optional.ofNullable(companyBenefitContribution); + return this; + } + + + /** + * The sum of company contribution for this employee given the period of time and the specific company + * benefit. + */ + public Employees withCompanyBenefitContribution(Optional companyBenefitContribution) { + Utils.checkNotNull(companyBenefitContribution, "companyBenefitContribution"); + this.companyBenefitContribution = companyBenefitContribution; + return this; + } + + /** + * The sum of employee benefit deduction for this employee given the period of time and the benefit + * type. + */ + public Employees withBenefitDeduction(String benefitDeduction) { + Utils.checkNotNull(benefitDeduction, "benefitDeduction"); + this.benefitDeduction = Optional.ofNullable(benefitDeduction); + return this; + } + + + /** + * The sum of employee benefit deduction for this employee given the period of time and the benefit + * type. + */ + public Employees withBenefitDeduction(Optional benefitDeduction) { + Utils.checkNotNull(benefitDeduction, "benefitDeduction"); + this.benefitDeduction = benefitDeduction; + return this; + } + + /** + * The sum of company contribution for this employee given the period of time and the benefit type. + */ + public Employees withBenefitContribution(String benefitContribution) { + Utils.checkNotNull(benefitContribution, "benefitContribution"); + this.benefitContribution = Optional.ofNullable(benefitContribution); + return this; + } + + + /** + * The sum of company contribution for this employee given the period of time and the benefit type. + */ + public Employees withBenefitContribution(Optional benefitContribution) { + Utils.checkNotNull(benefitContribution, "benefitContribution"); + this.benefitContribution = benefitContribution; + return this; + } + + /** + * Gross pay for this employee given the period of time. + */ + public Employees withGrossPay(String grossPay) { + Utils.checkNotNull(grossPay, "grossPay"); + this.grossPay = Optional.ofNullable(grossPay); + return this; + } + + + /** + * Gross pay for this employee given the period of time. + */ + public Employees withGrossPay(Optional grossPay) { + Utils.checkNotNull(grossPay, "grossPay"); + this.grossPay = grossPay; + return this; + } + + /** + * Total imputed pay for this employee given the period of time (not scoped to a benefit type). + */ + public Employees withImputedPay(String imputedPay) { + Utils.checkNotNull(imputedPay, "imputedPay"); + this.imputedPay = Optional.ofNullable(imputedPay); + return this; + } + + + /** + * Total imputed pay for this employee given the period of time (not scoped to a benefit type). + */ + public Employees withImputedPay(Optional imputedPay) { + Utils.checkNotNull(imputedPay, "imputedPay"); + this.imputedPay = imputedPay; + return this; + } + + public Employees withPayrollBenefits(List payrollBenefits) { + Utils.checkNotNull(payrollBenefits, "payrollBenefits"); + this.payrollBenefits = Optional.ofNullable(payrollBenefits); + return this; + } + + + public Employees withPayrollBenefits(Optional> payrollBenefits) { + Utils.checkNotNull(payrollBenefits, "payrollBenefits"); + this.payrollBenefits = payrollBenefits; return this; } @@ -112,29 +340,55 @@ public boolean equals(java.lang.Object o) { } Employees other = (Employees) o; return - Utils.enhancedDeepEquals(this.employeeUuid, other.employeeUuid) && - Utils.enhancedDeepEquals(this.payScheduleUuid, other.payScheduleUuid); + Utils.enhancedDeepEquals(this.uuid, other.uuid) && + Utils.enhancedDeepEquals(this.companyBenefitDeduction, other.companyBenefitDeduction) && + Utils.enhancedDeepEquals(this.companyBenefitContribution, other.companyBenefitContribution) && + Utils.enhancedDeepEquals(this.benefitDeduction, other.benefitDeduction) && + Utils.enhancedDeepEquals(this.benefitContribution, other.benefitContribution) && + Utils.enhancedDeepEquals(this.grossPay, other.grossPay) && + Utils.enhancedDeepEquals(this.imputedPay, other.imputedPay) && + Utils.enhancedDeepEquals(this.payrollBenefits, other.payrollBenefits); } @Override public int hashCode() { return Utils.enhancedHash( - employeeUuid, payScheduleUuid); + uuid, companyBenefitDeduction, companyBenefitContribution, + benefitDeduction, benefitContribution, grossPay, + imputedPay, payrollBenefits); } @Override public String toString() { return Utils.toString(Employees.class, - "employeeUuid", employeeUuid, - "payScheduleUuid", payScheduleUuid); + "uuid", uuid, + "companyBenefitDeduction", companyBenefitDeduction, + "companyBenefitContribution", companyBenefitContribution, + "benefitDeduction", benefitDeduction, + "benefitContribution", benefitContribution, + "grossPay", grossPay, + "imputedPay", imputedPay, + "payrollBenefits", payrollBenefits); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private Optional employeeUuid = Optional.empty(); + private Optional uuid = Optional.empty(); + + private Optional companyBenefitDeduction = Optional.empty(); - private Optional payScheduleUuid = Optional.empty(); + private Optional companyBenefitContribution = Optional.empty(); + + private Optional benefitDeduction = Optional.empty(); + + private Optional benefitContribution = Optional.empty(); + + private Optional grossPay = Optional.empty(); + + private Optional imputedPay = Optional.empty(); + + private Optional> payrollBenefits = Optional.empty(); private Builder() { // force use of static builder() method @@ -142,46 +396,162 @@ private Builder() { /** - * Employee UUID + * The UUID of the employee + */ + public Builder uuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = Optional.ofNullable(uuid); + return this; + } + + /** + * The UUID of the employee + */ + public Builder uuid(Optional uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + + /** + * The sum of employee deduction for this employee given the period of time and the specific company + * benefit. + */ + public Builder companyBenefitDeduction(String companyBenefitDeduction) { + Utils.checkNotNull(companyBenefitDeduction, "companyBenefitDeduction"); + this.companyBenefitDeduction = Optional.ofNullable(companyBenefitDeduction); + return this; + } + + /** + * The sum of employee deduction for this employee given the period of time and the specific company + * benefit. + */ + public Builder companyBenefitDeduction(Optional companyBenefitDeduction) { + Utils.checkNotNull(companyBenefitDeduction, "companyBenefitDeduction"); + this.companyBenefitDeduction = companyBenefitDeduction; + return this; + } + + + /** + * The sum of company contribution for this employee given the period of time and the specific company + * benefit. */ - public Builder employeeUuid(String employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = Optional.ofNullable(employeeUuid); + public Builder companyBenefitContribution(String companyBenefitContribution) { + Utils.checkNotNull(companyBenefitContribution, "companyBenefitContribution"); + this.companyBenefitContribution = Optional.ofNullable(companyBenefitContribution); return this; } /** - * Employee UUID + * The sum of company contribution for this employee given the period of time and the specific company + * benefit. */ - public Builder employeeUuid(Optional employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = employeeUuid; + public Builder companyBenefitContribution(Optional companyBenefitContribution) { + Utils.checkNotNull(companyBenefitContribution, "companyBenefitContribution"); + this.companyBenefitContribution = companyBenefitContribution; return this; } /** - * Pay schedule UUID + * The sum of employee benefit deduction for this employee given the period of time and the benefit + * type. + */ + public Builder benefitDeduction(String benefitDeduction) { + Utils.checkNotNull(benefitDeduction, "benefitDeduction"); + this.benefitDeduction = Optional.ofNullable(benefitDeduction); + return this; + } + + /** + * The sum of employee benefit deduction for this employee given the period of time and the benefit + * type. */ - public Builder payScheduleUuid(String payScheduleUuid) { - Utils.checkNotNull(payScheduleUuid, "payScheduleUuid"); - this.payScheduleUuid = Optional.ofNullable(payScheduleUuid); + public Builder benefitDeduction(Optional benefitDeduction) { + Utils.checkNotNull(benefitDeduction, "benefitDeduction"); + this.benefitDeduction = benefitDeduction; return this; } + /** - * Pay schedule UUID + * The sum of company contribution for this employee given the period of time and the benefit type. */ - public Builder payScheduleUuid(Optional payScheduleUuid) { - Utils.checkNotNull(payScheduleUuid, "payScheduleUuid"); - this.payScheduleUuid = payScheduleUuid; + public Builder benefitContribution(String benefitContribution) { + Utils.checkNotNull(benefitContribution, "benefitContribution"); + this.benefitContribution = Optional.ofNullable(benefitContribution); + return this; + } + + /** + * The sum of company contribution for this employee given the period of time and the benefit type. + */ + public Builder benefitContribution(Optional benefitContribution) { + Utils.checkNotNull(benefitContribution, "benefitContribution"); + this.benefitContribution = benefitContribution; + return this; + } + + + /** + * Gross pay for this employee given the period of time. + */ + public Builder grossPay(String grossPay) { + Utils.checkNotNull(grossPay, "grossPay"); + this.grossPay = Optional.ofNullable(grossPay); + return this; + } + + /** + * Gross pay for this employee given the period of time. + */ + public Builder grossPay(Optional grossPay) { + Utils.checkNotNull(grossPay, "grossPay"); + this.grossPay = grossPay; + return this; + } + + + /** + * Total imputed pay for this employee given the period of time (not scoped to a benefit type). + */ + public Builder imputedPay(String imputedPay) { + Utils.checkNotNull(imputedPay, "imputedPay"); + this.imputedPay = Optional.ofNullable(imputedPay); + return this; + } + + /** + * Total imputed pay for this employee given the period of time (not scoped to a benefit type). + */ + public Builder imputedPay(Optional imputedPay) { + Utils.checkNotNull(imputedPay, "imputedPay"); + this.imputedPay = imputedPay; + return this; + } + + + public Builder payrollBenefits(List payrollBenefits) { + Utils.checkNotNull(payrollBenefits, "payrollBenefits"); + this.payrollBenefits = Optional.ofNullable(payrollBenefits); + return this; + } + + public Builder payrollBenefits(Optional> payrollBenefits) { + Utils.checkNotNull(payrollBenefits, "payrollBenefits"); + this.payrollBenefits = payrollBenefits; return this; } public Employees build() { return new Employees( - employeeUuid, payScheduleUuid); + uuid, companyBenefitDeduction, companyBenefitContribution, + benefitDeduction, benefitContribution, grossPay, + imputedPay, payrollBenefits); } } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmploymentStatus.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmploymentStatus.java index 1f1b0b4bb..2a517b684 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmploymentStatus.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmploymentStatus.java @@ -11,16 +11,16 @@ /** * EmploymentStatus * - *

    The employee's employment status. Supplying an invalid option will set the employment_status to - * *not_set*. + *

    Employee employment status to filter by. */ public enum EmploymentStatus { - PART_TIME("part_time"), - FULL_TIME("full_time"), - PART_TIME_ELIGIBLE("part_time_eligible"), - VARIABLE("variable"), - SEASONAL("seasonal"), - NOT_SET("not_set"); + ACTIVE_FULL_TIME("active_full_time"), + ACTIVE_PART_TIME("active_part_time"), + ACTIVE_PART_TIME_ELIGIBLE("active_part_time_eligible"), + ACTIVE_VARIABLE("active_variable"), + ACTIVE_SEASONAL("active_seasonal"), + ACTIVE("active"), + DISMISSED("dismissed"); @JsonValue private final String value; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmploymentType.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmploymentType.java index ad1a1bc68..db9e3f28a 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmploymentType.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmploymentType.java @@ -11,7 +11,7 @@ /** * EmploymentType * - *

    Employee employment type to filter by + *

    Employee employment type to filter by. */ public enum EmploymentType { EXEMPT("exempt"), diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Exclusions.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Exclusions.java index 31056f145..65e688649 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Exclusions.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Exclusions.java @@ -12,89 +12,156 @@ import java.lang.Long; import java.lang.Override; import java.lang.String; +import java.lang.SuppressWarnings; import java.util.Optional; public class Exclusions { /** - * The external ID of the excluded item(s). + * The index of this payroll in the original POST batch array. */ @JsonInclude(Include.NON_ABSENT) - @JsonProperty("external_id") - private Optional externalId; + @JsonProperty("idx") + private Optional idx; /** - * The exclusion category. + * The type of entity this exclusion represents. */ @JsonInclude(Include.NON_ABSENT) - @JsonProperty("category") - private Optional category; + @JsonProperty("entity_type") + private Optional entityType; /** - * Human-readable explanation for exclusion. + * The UUID of the excluded payroll. */ @JsonInclude(Include.NON_ABSENT) - @JsonProperty("message") - private Optional message; + @JsonProperty("uuid") + private Optional uuid; + + /** + * The UUID of the company asserted to own the payroll. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("company_uuid") + private Optional companyUuid; /** - * Number of items affected by this exclusion. + * Always `failed` for an excluded payroll. */ @JsonInclude(Include.NON_ABSENT) - @JsonProperty("item_count") - private Optional itemCount; + @JsonProperty("status") + private Optional status; + + /** + * Machine-readable category for why the payroll was excluded. + * - `not_found`: the payroll does not exist, or is not associated with a company the partner is mapped + * to + * - `duplicate_operation`: the same payroll UUID appeared more than once in the request; only the + * first occurrence is processed + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("category") + private Optional category; + + /** + * Human-readable explanation for the exclusion. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("message") + private Optional message; @JsonCreator public Exclusions( - @JsonProperty("external_id") Optional externalId, - @JsonProperty("category") Optional category, - @JsonProperty("message") Optional message, - @JsonProperty("item_count") Optional itemCount) { - Utils.checkNotNull(externalId, "externalId"); + @JsonProperty("idx") Optional idx, + @JsonProperty("entity_type") Optional entityType, + @JsonProperty("uuid") Optional uuid, + @JsonProperty("company_uuid") Optional companyUuid, + @JsonProperty("status") Optional status, + @JsonProperty("category") Optional category, + @JsonProperty("message") Optional message) { + Utils.checkNotNull(idx, "idx"); + Utils.checkNotNull(entityType, "entityType"); + Utils.checkNotNull(uuid, "uuid"); + Utils.checkNotNull(companyUuid, "companyUuid"); + Utils.checkNotNull(status, "status"); Utils.checkNotNull(category, "category"); Utils.checkNotNull(message, "message"); - Utils.checkNotNull(itemCount, "itemCount"); - this.externalId = externalId; + this.idx = idx; + this.entityType = entityType; + this.uuid = uuid; + this.companyUuid = companyUuid; + this.status = status; this.category = category; this.message = message; - this.itemCount = itemCount; } public Exclusions() { this(Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty()); } /** - * The external ID of the excluded item(s). + * The index of this payroll in the original POST batch array. */ @JsonIgnore - public Optional externalId() { - return externalId; + public Optional idx() { + return idx; } /** - * The exclusion category. + * The type of entity this exclusion represents. */ + @SuppressWarnings("unchecked") @JsonIgnore - public Optional category() { - return category; + public Optional entityType() { + return (Optional) entityType; } /** - * Human-readable explanation for exclusion. + * The UUID of the excluded payroll. */ @JsonIgnore - public Optional message() { - return message; + public Optional uuid() { + return uuid; + } + + /** + * The UUID of the company asserted to own the payroll. + */ + @JsonIgnore + public Optional companyUuid() { + return companyUuid; + } + + /** + * Always `failed` for an excluded payroll. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional status() { + return (Optional) status; } /** - * Number of items affected by this exclusion. + * Machine-readable category for why the payroll was excluded. + * - `not_found`: the payroll does not exist, or is not associated with a company the partner is mapped + * to + * - `duplicate_operation`: the same payroll UUID appeared more than once in the request; only the + * first occurrence is processed */ + @SuppressWarnings("unchecked") @JsonIgnore - public Optional itemCount() { - return itemCount; + public Optional category() { + return (Optional) category; + } + + /** + * Human-readable explanation for the exclusion. + */ + @JsonIgnore + public Optional message() { + return message; } public static Builder builder() { @@ -103,78 +170,143 @@ public static Builder builder() { /** - * The external ID of the excluded item(s). + * The index of this payroll in the original POST batch array. */ - public Exclusions withExternalId(String externalId) { - Utils.checkNotNull(externalId, "externalId"); - this.externalId = Optional.ofNullable(externalId); + public Exclusions withIdx(long idx) { + Utils.checkNotNull(idx, "idx"); + this.idx = Optional.ofNullable(idx); return this; } /** - * The external ID of the excluded item(s). + * The index of this payroll in the original POST batch array. */ - public Exclusions withExternalId(Optional externalId) { - Utils.checkNotNull(externalId, "externalId"); - this.externalId = externalId; + public Exclusions withIdx(Optional idx) { + Utils.checkNotNull(idx, "idx"); + this.idx = idx; return this; } /** - * The exclusion category. + * The type of entity this exclusion represents. */ - public Exclusions withCategory(String category) { - Utils.checkNotNull(category, "category"); - this.category = Optional.ofNullable(category); + public Exclusions withEntityType(PayrollBatchResultsEntityType entityType) { + Utils.checkNotNull(entityType, "entityType"); + this.entityType = Optional.ofNullable(entityType); return this; } /** - * The exclusion category. + * The type of entity this exclusion represents. */ - public Exclusions withCategory(Optional category) { - Utils.checkNotNull(category, "category"); - this.category = category; + public Exclusions withEntityType(Optional entityType) { + Utils.checkNotNull(entityType, "entityType"); + this.entityType = entityType; return this; } /** - * Human-readable explanation for exclusion. + * The UUID of the excluded payroll. */ - public Exclusions withMessage(String message) { - Utils.checkNotNull(message, "message"); - this.message = Optional.ofNullable(message); + public Exclusions withUuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = Optional.ofNullable(uuid); return this; } /** - * Human-readable explanation for exclusion. + * The UUID of the excluded payroll. */ - public Exclusions withMessage(Optional message) { - Utils.checkNotNull(message, "message"); - this.message = message; + public Exclusions withUuid(Optional uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + /** + * The UUID of the company asserted to own the payroll. + */ + public Exclusions withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = Optional.ofNullable(companyUuid); + return this; + } + + + /** + * The UUID of the company asserted to own the payroll. + */ + public Exclusions withCompanyUuid(Optional companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + /** + * Always `failed` for an excluded payroll. + */ + public Exclusions withStatus(PayrollBatchResultsExclusionsStatus status) { + Utils.checkNotNull(status, "status"); + this.status = Optional.ofNullable(status); + return this; + } + + + /** + * Always `failed` for an excluded payroll. + */ + public Exclusions withStatus(Optional status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + /** + * Machine-readable category for why the payroll was excluded. + * - `not_found`: the payroll does not exist, or is not associated with a company the partner is mapped + * to + * - `duplicate_operation`: the same payroll UUID appeared more than once in the request; only the + * first occurrence is processed + */ + public Exclusions withCategory(PayrollBatchResultsCategory category) { + Utils.checkNotNull(category, "category"); + this.category = Optional.ofNullable(category); return this; } + /** - * Number of items affected by this exclusion. + * Machine-readable category for why the payroll was excluded. + * - `not_found`: the payroll does not exist, or is not associated with a company the partner is mapped + * to + * - `duplicate_operation`: the same payroll UUID appeared more than once in the request; only the + * first occurrence is processed */ - public Exclusions withItemCount(long itemCount) { - Utils.checkNotNull(itemCount, "itemCount"); - this.itemCount = Optional.ofNullable(itemCount); + public Exclusions withCategory(Optional category) { + Utils.checkNotNull(category, "category"); + this.category = category; + return this; + } + + /** + * Human-readable explanation for the exclusion. + */ + public Exclusions withMessage(String message) { + Utils.checkNotNull(message, "message"); + this.message = Optional.ofNullable(message); return this; } /** - * Number of items affected by this exclusion. + * Human-readable explanation for the exclusion. */ - public Exclusions withItemCount(Optional itemCount) { - Utils.checkNotNull(itemCount, "itemCount"); - this.itemCount = itemCount; + public Exclusions withMessage(Optional message) { + Utils.checkNotNull(message, "message"); + this.message = message; return this; } @@ -188,38 +320,51 @@ public boolean equals(java.lang.Object o) { } Exclusions other = (Exclusions) o; return - Utils.enhancedDeepEquals(this.externalId, other.externalId) && + Utils.enhancedDeepEquals(this.idx, other.idx) && + Utils.enhancedDeepEquals(this.entityType, other.entityType) && + Utils.enhancedDeepEquals(this.uuid, other.uuid) && + Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && + Utils.enhancedDeepEquals(this.status, other.status) && Utils.enhancedDeepEquals(this.category, other.category) && - Utils.enhancedDeepEquals(this.message, other.message) && - Utils.enhancedDeepEquals(this.itemCount, other.itemCount); + Utils.enhancedDeepEquals(this.message, other.message); } @Override public int hashCode() { return Utils.enhancedHash( - externalId, category, message, - itemCount); + idx, entityType, uuid, + companyUuid, status, category, + message); } @Override public String toString() { return Utils.toString(Exclusions.class, - "externalId", externalId, + "idx", idx, + "entityType", entityType, + "uuid", uuid, + "companyUuid", companyUuid, + "status", status, "category", category, - "message", message, - "itemCount", itemCount); + "message", message); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private Optional externalId = Optional.empty(); + private Optional idx = Optional.empty(); - private Optional category = Optional.empty(); + private Optional entityType = Optional.empty(); - private Optional message = Optional.empty(); + private Optional uuid = Optional.empty(); + + private Optional companyUuid = Optional.empty(); + + private Optional status = Optional.empty(); - private Optional itemCount = Optional.empty(); + private Optional category = Optional.empty(); + + private Optional message = Optional.empty(); private Builder() { // force use of static builder() method @@ -227,85 +372,151 @@ private Builder() { /** - * The external ID of the excluded item(s). + * The index of this payroll in the original POST batch array. */ - public Builder externalId(String externalId) { - Utils.checkNotNull(externalId, "externalId"); - this.externalId = Optional.ofNullable(externalId); + public Builder idx(long idx) { + Utils.checkNotNull(idx, "idx"); + this.idx = Optional.ofNullable(idx); return this; } /** - * The external ID of the excluded item(s). + * The index of this payroll in the original POST batch array. */ - public Builder externalId(Optional externalId) { - Utils.checkNotNull(externalId, "externalId"); - this.externalId = externalId; + public Builder idx(Optional idx) { + Utils.checkNotNull(idx, "idx"); + this.idx = idx; return this; } /** - * The exclusion category. + * The type of entity this exclusion represents. */ - public Builder category(String category) { - Utils.checkNotNull(category, "category"); - this.category = Optional.ofNullable(category); + public Builder entityType(PayrollBatchResultsEntityType entityType) { + Utils.checkNotNull(entityType, "entityType"); + this.entityType = Optional.ofNullable(entityType); return this; } /** - * The exclusion category. + * The type of entity this exclusion represents. */ - public Builder category(Optional category) { - Utils.checkNotNull(category, "category"); - this.category = category; + public Builder entityType(Optional entityType) { + Utils.checkNotNull(entityType, "entityType"); + this.entityType = entityType; return this; } /** - * Human-readable explanation for exclusion. + * The UUID of the excluded payroll. */ - public Builder message(String message) { - Utils.checkNotNull(message, "message"); - this.message = Optional.ofNullable(message); + public Builder uuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = Optional.ofNullable(uuid); return this; } /** - * Human-readable explanation for exclusion. + * The UUID of the excluded payroll. */ - public Builder message(Optional message) { - Utils.checkNotNull(message, "message"); - this.message = message; + public Builder uuid(Optional uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + + /** + * The UUID of the company asserted to own the payroll. + */ + public Builder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = Optional.ofNullable(companyUuid); + return this; + } + + /** + * The UUID of the company asserted to own the payroll. + */ + public Builder companyUuid(Optional companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; return this; } /** - * Number of items affected by this exclusion. + * Always `failed` for an excluded payroll. */ - public Builder itemCount(long itemCount) { - Utils.checkNotNull(itemCount, "itemCount"); - this.itemCount = Optional.ofNullable(itemCount); + public Builder status(PayrollBatchResultsExclusionsStatus status) { + Utils.checkNotNull(status, "status"); + this.status = Optional.ofNullable(status); return this; } /** - * Number of items affected by this exclusion. + * Always `failed` for an excluded payroll. */ - public Builder itemCount(Optional itemCount) { - Utils.checkNotNull(itemCount, "itemCount"); - this.itemCount = itemCount; + public Builder status(Optional status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + + /** + * Machine-readable category for why the payroll was excluded. + * - `not_found`: the payroll does not exist, or is not associated with a company the partner is mapped + * to + * - `duplicate_operation`: the same payroll UUID appeared more than once in the request; only the + * first occurrence is processed + */ + public Builder category(PayrollBatchResultsCategory category) { + Utils.checkNotNull(category, "category"); + this.category = Optional.ofNullable(category); + return this; + } + + /** + * Machine-readable category for why the payroll was excluded. + * - `not_found`: the payroll does not exist, or is not associated with a company the partner is mapped + * to + * - `duplicate_operation`: the same payroll UUID appeared more than once in the request; only the + * first occurrence is processed + */ + public Builder category(Optional category) { + Utils.checkNotNull(category, "category"); + this.category = category; + return this; + } + + + /** + * Human-readable explanation for the exclusion. + */ + public Builder message(String message) { + Utils.checkNotNull(message, "message"); + this.message = Optional.ofNullable(message); + return this; + } + + /** + * Human-readable explanation for the exclusion. + */ + public Builder message(Optional message) { + Utils.checkNotNull(message, "message"); + this.message = message; return this; } public Exclusions build() { return new Exclusions( - externalId, category, message, - itemCount); + idx, entityType, uuid, + companyUuid, status, category, + message); } } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ExternalPayrollBasic.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ExternalPayrollBasic.java index dfa538c5d..83e25bb34 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ExternalPayrollBasic.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ExternalPayrollBasic.java @@ -61,7 +61,7 @@ public class ExternalPayrollBasic { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("status") - private Optional status; + private Optional status; @JsonCreator public ExternalPayrollBasic( @@ -70,7 +70,7 @@ public ExternalPayrollBasic( @JsonProperty("check_date") Optional checkDate, @JsonProperty("payment_period_start_date") Optional paymentPeriodStartDate, @JsonProperty("payment_period_end_date") Optional paymentPeriodEndDate, - @JsonProperty("status") Optional status) { + @JsonProperty("status") Optional status) { Utils.checkNotNull(uuid, "uuid"); Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(checkDate, "checkDate"); @@ -138,8 +138,8 @@ public Optional paymentPeriodEndDate() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional status() { - return (Optional) status; + public Optional status() { + return (Optional) status; } public static Builder builder() { @@ -237,7 +237,7 @@ public ExternalPayrollBasic withPaymentPeriodEndDate(Optional paymentPer * created and transition to `processed` once tax liabilities are entered and finalized. Once in the * `processed` status all actions that can edit an external payroll will be disabled. */ - public ExternalPayrollBasic withStatus(Status status) { + public ExternalPayrollBasic withStatus(ExternalPayrollBasicStatus status) { Utils.checkNotNull(status, "status"); this.status = Optional.ofNullable(status); return this; @@ -249,7 +249,7 @@ public ExternalPayrollBasic withStatus(Status status) { * created and transition to `processed` once tax liabilities are entered and finalized. Once in the * `processed` status all actions that can edit an external payroll will be disabled. */ - public ExternalPayrollBasic withStatus(Optional status) { + public ExternalPayrollBasic withStatus(Optional status) { Utils.checkNotNull(status, "status"); this.status = status; return this; @@ -304,7 +304,7 @@ public final static class Builder { private Optional paymentPeriodEndDate = Optional.empty(); - private Optional status = Optional.empty(); + private Optional status = Optional.empty(); private Builder() { // force use of static builder() method @@ -402,7 +402,7 @@ public Builder paymentPeriodEndDate(Optional paymentPeriodEndDate) { * created and transition to `processed` once tax liabilities are entered and finalized. Once in the * `processed` status all actions that can edit an external payroll will be disabled. */ - public Builder status(Status status) { + public Builder status(ExternalPayrollBasicStatus status) { Utils.checkNotNull(status, "status"); this.status = Optional.ofNullable(status); return this; @@ -413,7 +413,7 @@ public Builder status(Status status) { * created and transition to `processed` once tax liabilities are entered and finalized. Once in the * `processed` status all actions that can edit an external payroll will be disabled. */ - public Builder status(Optional status) { + public Builder status(Optional status) { Utils.checkNotNull(status, "status"); this.status = status; return this; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ExternalPayrollBasicStatus.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ExternalPayrollBasicStatus.java new file mode 100644 index 000000000..524521f94 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ExternalPayrollBasicStatus.java @@ -0,0 +1,42 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * ExternalPayrollBasicStatus + * + *

    The status of the external payroll. The status will be `unprocessed` when the external payroll is + * created and transition to `processed` once tax liabilities are entered and finalized. Once in the + * `processed` status all actions that can edit an external payroll will be disabled. + */ +public enum ExternalPayrollBasicStatus { + UNPROCESSED("unprocessed"), + PROCESSED("processed"); + + @JsonValue + private final String value; + + ExternalPayrollBasicStatus(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (ExternalPayrollBasicStatus o: ExternalPayrollBasicStatus.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Federal.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Federal.java new file mode 100644 index 000000000..3d11d0641 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Federal.java @@ -0,0 +1,255 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + +/** + * Federal + * + *

    Federal one-time custom withholding override applied to this payroll. + */ +public class Federal { + /** + * Override mode. Only `one_time` is currently exposed. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("override_type") + private Optional overrideType; + + /** + * The amount that was withheld for this payroll. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("amount") + private Optional amount; + + /** + * How to interpret the amount. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("amount_type") + private Optional amountType; + + @JsonCreator + public Federal( + @JsonProperty("override_type") Optional overrideType, + @JsonProperty("amount") Optional amount, + @JsonProperty("amount_type") Optional amountType) { + Utils.checkNotNull(overrideType, "overrideType"); + Utils.checkNotNull(amount, "amount"); + Utils.checkNotNull(amountType, "amountType"); + this.overrideType = overrideType; + this.amount = amount; + this.amountType = amountType; + } + + public Federal() { + this(Optional.empty(), Optional.empty(), Optional.empty()); + } + + /** + * Override mode. Only `one_time` is currently exposed. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional overrideType() { + return (Optional) overrideType; + } + + /** + * The amount that was withheld for this payroll. + */ + @JsonIgnore + public Optional amount() { + return amount; + } + + /** + * How to interpret the amount. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional amountType() { + return (Optional) amountType; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public Federal withOverrideType(OverrideType overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = Optional.ofNullable(overrideType); + return this; + } + + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public Federal withOverrideType(Optional overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = overrideType; + return this; + } + + /** + * The amount that was withheld for this payroll. + */ + public Federal withAmount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = Optional.ofNullable(amount); + return this; + } + + + /** + * The amount that was withheld for this payroll. + */ + public Federal withAmount(Optional amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + /** + * How to interpret the amount. + */ + public Federal withAmountType(PayrollEmployeeCompensationsTypeAmountType amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = Optional.ofNullable(amountType); + return this; + } + + + /** + * How to interpret the amount. + */ + public Federal withAmountType(Optional amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = amountType; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + Federal other = (Federal) o; + return + Utils.enhancedDeepEquals(this.overrideType, other.overrideType) && + Utils.enhancedDeepEquals(this.amount, other.amount) && + Utils.enhancedDeepEquals(this.amountType, other.amountType); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + overrideType, amount, amountType); + } + + @Override + public String toString() { + return Utils.toString(Federal.class, + "overrideType", overrideType, + "amount", amount, + "amountType", amountType); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional overrideType = Optional.empty(); + + private Optional amount = Optional.empty(); + + private Optional amountType = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public Builder overrideType(OverrideType overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = Optional.ofNullable(overrideType); + return this; + } + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public Builder overrideType(Optional overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = overrideType; + return this; + } + + + /** + * The amount that was withheld for this payroll. + */ + public Builder amount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = Optional.ofNullable(amount); + return this; + } + + /** + * The amount that was withheld for this payroll. + */ + public Builder amount(Optional amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + + /** + * How to interpret the amount. + */ + public Builder amountType(PayrollEmployeeCompensationsTypeAmountType amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = Optional.ofNullable(amountType); + return this; + } + + /** + * How to interpret the amount. + */ + public Builder amountType(Optional amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = amountType; + return this; + } + + public Federal build() { + + return new Federal( + overrideType, amount, amountType); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/VersionHeader.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Field.java similarity index 69% rename from gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/VersionHeader.java rename to gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Field.java index 2dd4c4130..336975abd 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/VersionHeader.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Field.java @@ -8,13 +8,18 @@ import java.util.Objects; import java.util.Optional; -public enum VersionHeader { - TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15("2025-11-15"); +/** + * Field + * + *

    The employee field affected. + */ +public enum Field { + SSN("ssn"); @JsonValue private final String value; - VersionHeader(String value) { + Field(String value) { this.value = value; } @@ -22,8 +27,8 @@ public String value() { return value; } - public static Optional fromValue(String value) { - for (VersionHeader o: VersionHeader.values()) { + public static Optional fromValue(String value) { + for (Field o: Field.values()) { if (Objects.deepEquals(o.value, value)) { return Optional.of(o); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/FileType.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/FileType.java index 8f880f019..5e5846f09 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/FileType.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/FileType.java @@ -11,7 +11,7 @@ /** * FileType * - *

    The type of file to generate + *

    The type of file to generate. */ public enum FileType { CSV("csv"), diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/GeneralLedgerReportBody.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/GeneralLedgerReportBody.java index 96e860f43..1d82b1ccf 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/GeneralLedgerReportBody.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/GeneralLedgerReportBody.java @@ -25,7 +25,7 @@ public class GeneralLedgerReportBody { * The breakdown of the report. Use 'default' for no split. */ @JsonProperty("aggregation") - private Aggregation aggregation; + private GeneralLedgerReportBodyAggregation aggregation; /** * The kind of integration set up for the company. Required when `aggregation` is 'integration'. Must @@ -37,7 +37,7 @@ public class GeneralLedgerReportBody { @JsonCreator public GeneralLedgerReportBody( - @JsonProperty("aggregation") Aggregation aggregation, + @JsonProperty("aggregation") GeneralLedgerReportBodyAggregation aggregation, @JsonProperty("integration_type") JsonNullable integrationType) { Utils.checkNotNull(aggregation, "aggregation"); Utils.checkNotNull(integrationType, "integrationType"); @@ -46,7 +46,7 @@ public GeneralLedgerReportBody( } public GeneralLedgerReportBody( - Aggregation aggregation) { + GeneralLedgerReportBodyAggregation aggregation) { this(aggregation, JsonNullable.undefined()); } @@ -54,7 +54,7 @@ public GeneralLedgerReportBody( * The breakdown of the report. Use 'default' for no split. */ @JsonIgnore - public Aggregation aggregation() { + public GeneralLedgerReportBodyAggregation aggregation() { return aggregation; } @@ -76,7 +76,7 @@ public static Builder builder() { /** * The breakdown of the report. Use 'default' for no split. */ - public GeneralLedgerReportBody withAggregation(Aggregation aggregation) { + public GeneralLedgerReportBody withAggregation(GeneralLedgerReportBodyAggregation aggregation) { Utils.checkNotNull(aggregation, "aggregation"); this.aggregation = aggregation; return this; @@ -132,7 +132,7 @@ public String toString() { @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private Aggregation aggregation; + private GeneralLedgerReportBodyAggregation aggregation; private JsonNullable integrationType = JsonNullable.undefined(); @@ -144,7 +144,7 @@ private Builder() { /** * The breakdown of the report. Use 'default' for no split. */ - public Builder aggregation(Aggregation aggregation) { + public Builder aggregation(GeneralLedgerReportBodyAggregation aggregation) { Utils.checkNotNull(aggregation, "aggregation"); this.aggregation = aggregation; return this; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/GeneralLedgerReportBodyAggregation.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/GeneralLedgerReportBodyAggregation.java new file mode 100644 index 000000000..edb4047db --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/GeneralLedgerReportBodyAggregation.java @@ -0,0 +1,42 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * GeneralLedgerReportBodyAggregation + * + *

    The breakdown of the report. Use 'default' for no split. + */ +public enum GeneralLedgerReportBodyAggregation { + DEFAULT("default"), + JOB("job"), + DEPARTMENT("department"), + INTEGRATION("integration"); + + @JsonValue + private final String value; + + GeneralLedgerReportBodyAggregation(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (GeneralLedgerReportBodyAggregation o: GeneralLedgerReportBodyAggregation.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/HistoricalEmployeeBody.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/HistoricalEmployeeBody.java index 94c37a421..2a17e7a51 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/HistoricalEmployeeBody.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/HistoricalEmployeeBody.java @@ -74,7 +74,7 @@ public class HistoricalEmployeeBody { * Residential address on file for tax withholding and compliance mail. */ @JsonProperty("home_address") - private HistoricalEmployeeBodyHomeAddress homeAddress; + private HomeAddress homeAddress; /** * End of the historical employment period. @@ -112,7 +112,7 @@ public HistoricalEmployeeBody( @JsonProperty("date_of_birth") LocalDate dateOfBirth, @JsonProperty("ssn") String ssn, @JsonProperty("work_address") WorkAddress workAddress, - @JsonProperty("home_address") HistoricalEmployeeBodyHomeAddress homeAddress, + @JsonProperty("home_address") HomeAddress homeAddress, @JsonProperty("termination") HistoricalEmployeeBodyTermination termination, @JsonProperty("email") Optional email, @JsonProperty("job") HistoricalEmployeeBodyJob job, @@ -149,7 +149,7 @@ public HistoricalEmployeeBody( LocalDate dateOfBirth, String ssn, WorkAddress workAddress, - HistoricalEmployeeBodyHomeAddress homeAddress, + HomeAddress homeAddress, HistoricalEmployeeBodyTermination termination, HistoricalEmployeeBodyJob job) { this(firstName, Optional.empty(), lastName, @@ -219,7 +219,7 @@ public WorkAddress workAddress() { * Residential address on file for tax withholding and compliance mail. */ @JsonIgnore - public HistoricalEmployeeBodyHomeAddress homeAddress() { + public HomeAddress homeAddress() { return homeAddress; } @@ -349,7 +349,7 @@ public HistoricalEmployeeBody withWorkAddress(WorkAddress workAddress) { /** * Residential address on file for tax withholding and compliance mail. */ - public HistoricalEmployeeBody withHomeAddress(HistoricalEmployeeBodyHomeAddress homeAddress) { + public HistoricalEmployeeBody withHomeAddress(HomeAddress homeAddress) { Utils.checkNotNull(homeAddress, "homeAddress"); this.homeAddress = homeAddress; return this; @@ -480,7 +480,7 @@ public final static class Builder { private WorkAddress workAddress; - private HistoricalEmployeeBodyHomeAddress homeAddress; + private HomeAddress homeAddress; private HistoricalEmployeeBodyTermination termination; @@ -587,7 +587,7 @@ public Builder workAddress(WorkAddress workAddress) { /** * Residential address on file for tax withholding and compliance mail. */ - public Builder homeAddress(HistoricalEmployeeBodyHomeAddress homeAddress) { + public Builder homeAddress(HomeAddress homeAddress) { Utils.checkNotNull(homeAddress, "homeAddress"); this.homeAddress = homeAddress; return this; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/HistoricalEmployeeBodyHomeAddress.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/HistoricalEmployeeBodyHomeAddress.java deleted file mode 100644 index ee28e504c..000000000 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/HistoricalEmployeeBodyHomeAddress.java +++ /dev/null @@ -1,298 +0,0 @@ -/* - * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - */ -package com.gusto.embedded_api_v_2025_11_15.models.components; - -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonIgnore; -import com.fasterxml.jackson.annotation.JsonInclude.Include; -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.gusto.embedded_api_v_2025_11_15.utils.Utils; -import java.lang.Override; -import java.lang.String; -import org.openapitools.jackson.nullable.JsonNullable; - -/** - * HistoricalEmployeeBodyHomeAddress - * - *

    Residential address on file for tax withholding and compliance mail. - */ -public class HistoricalEmployeeBodyHomeAddress { - /** - * Street address line 1. - */ - @JsonProperty("street_1") - private String street1; - - /** - * Apartment, suite, unit, or building (optional). - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("street_2") - private JsonNullable street2; - - /** - * City. - */ - @JsonProperty("city") - private String city; - - /** - * Two-letter U.S. state or territory postal abbreviation. - */ - @JsonProperty("state") - private String state; - - /** - * ZIP or ZIP+4. - */ - @JsonProperty("zip") - private String zip; - - @JsonCreator - public HistoricalEmployeeBodyHomeAddress( - @JsonProperty("street_1") String street1, - @JsonProperty("street_2") JsonNullable street2, - @JsonProperty("city") String city, - @JsonProperty("state") String state, - @JsonProperty("zip") String zip) { - Utils.checkNotNull(street1, "street1"); - Utils.checkNotNull(street2, "street2"); - Utils.checkNotNull(city, "city"); - Utils.checkNotNull(state, "state"); - Utils.checkNotNull(zip, "zip"); - this.street1 = street1; - this.street2 = street2; - this.city = city; - this.state = state; - this.zip = zip; - } - - public HistoricalEmployeeBodyHomeAddress( - String street1, - String city, - String state, - String zip) { - this(street1, JsonNullable.undefined(), city, - state, zip); - } - - /** - * Street address line 1. - */ - @JsonIgnore - public String street1() { - return street1; - } - - /** - * Apartment, suite, unit, or building (optional). - */ - @JsonIgnore - public JsonNullable street2() { - return street2; - } - - /** - * City. - */ - @JsonIgnore - public String city() { - return city; - } - - /** - * Two-letter U.S. state or territory postal abbreviation. - */ - @JsonIgnore - public String state() { - return state; - } - - /** - * ZIP or ZIP+4. - */ - @JsonIgnore - public String zip() { - return zip; - } - - public static Builder builder() { - return new Builder(); - } - - - /** - * Street address line 1. - */ - public HistoricalEmployeeBodyHomeAddress withStreet1(String street1) { - Utils.checkNotNull(street1, "street1"); - this.street1 = street1; - return this; - } - - /** - * Apartment, suite, unit, or building (optional). - */ - public HistoricalEmployeeBodyHomeAddress withStreet2(String street2) { - Utils.checkNotNull(street2, "street2"); - this.street2 = JsonNullable.of(street2); - return this; - } - - /** - * Apartment, suite, unit, or building (optional). - */ - public HistoricalEmployeeBodyHomeAddress withStreet2(JsonNullable street2) { - Utils.checkNotNull(street2, "street2"); - this.street2 = street2; - return this; - } - - /** - * City. - */ - public HistoricalEmployeeBodyHomeAddress withCity(String city) { - Utils.checkNotNull(city, "city"); - this.city = city; - return this; - } - - /** - * Two-letter U.S. state or territory postal abbreviation. - */ - public HistoricalEmployeeBodyHomeAddress withState(String state) { - Utils.checkNotNull(state, "state"); - this.state = state; - return this; - } - - /** - * ZIP or ZIP+4. - */ - public HistoricalEmployeeBodyHomeAddress withZip(String zip) { - Utils.checkNotNull(zip, "zip"); - this.zip = zip; - return this; - } - - @Override - public boolean equals(java.lang.Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - HistoricalEmployeeBodyHomeAddress other = (HistoricalEmployeeBodyHomeAddress) o; - return - Utils.enhancedDeepEquals(this.street1, other.street1) && - Utils.enhancedDeepEquals(this.street2, other.street2) && - Utils.enhancedDeepEquals(this.city, other.city) && - Utils.enhancedDeepEquals(this.state, other.state) && - Utils.enhancedDeepEquals(this.zip, other.zip); - } - - @Override - public int hashCode() { - return Utils.enhancedHash( - street1, street2, city, - state, zip); - } - - @Override - public String toString() { - return Utils.toString(HistoricalEmployeeBodyHomeAddress.class, - "street1", street1, - "street2", street2, - "city", city, - "state", state, - "zip", zip); - } - - @SuppressWarnings("UnusedReturnValue") - public final static class Builder { - - private String street1; - - private JsonNullable street2 = JsonNullable.undefined(); - - private String city; - - private String state; - - private String zip; - - private Builder() { - // force use of static builder() method - } - - - /** - * Street address line 1. - */ - public Builder street1(String street1) { - Utils.checkNotNull(street1, "street1"); - this.street1 = street1; - return this; - } - - - /** - * Apartment, suite, unit, or building (optional). - */ - public Builder street2(String street2) { - Utils.checkNotNull(street2, "street2"); - this.street2 = JsonNullable.of(street2); - return this; - } - - /** - * Apartment, suite, unit, or building (optional). - */ - public Builder street2(JsonNullable street2) { - Utils.checkNotNull(street2, "street2"); - this.street2 = street2; - return this; - } - - - /** - * City. - */ - public Builder city(String city) { - Utils.checkNotNull(city, "city"); - this.city = city; - return this; - } - - - /** - * Two-letter U.S. state or territory postal abbreviation. - */ - public Builder state(String state) { - Utils.checkNotNull(state, "state"); - this.state = state; - return this; - } - - - /** - * ZIP or ZIP+4. - */ - public Builder zip(String zip) { - Utils.checkNotNull(zip, "zip"); - this.zip = zip; - return this; - } - - public HistoricalEmployeeBodyHomeAddress build() { - - return new HistoricalEmployeeBodyHomeAddress( - street1, street2, city, - state, zip); - } - - } -} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/HomeAddress.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/HomeAddress.java index 2a42e0f9d..4c6071000 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/HomeAddress.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/HomeAddress.java @@ -8,185 +8,175 @@ import com.fasterxml.jackson.annotation.JsonInclude.Include; import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.annotation.JsonProperty; -import com.fasterxml.jackson.core.type.TypeReference; -import com.gusto.embedded_api_v_2025_11_15.utils.LazySingletonValue; import com.gusto.embedded_api_v_2025_11_15.utils.Utils; import java.lang.Override; import java.lang.String; -import java.util.Optional; - +import org.openapitools.jackson.nullable.JsonNullable; +/** + * HomeAddress + * + *

    Residential address on file for tax withholding and compliance mail. + */ public class HomeAddress { - - @JsonInclude(Include.NON_ABSENT) + /** + * Street address line 1. + */ @JsonProperty("street_1") - private Optional street1; - + private String street1; + /** + * Apartment, suite, unit, or building (optional). + */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("street_2") - private Optional street2; + private JsonNullable street2; - - @JsonInclude(Include.NON_ABSENT) + /** + * City. + */ @JsonProperty("city") - private Optional city; + private String city; - - @JsonInclude(Include.NON_ABSENT) + /** + * Two-letter U.S. state or territory postal abbreviation. + */ @JsonProperty("state") - private Optional state; + private String state; - - @JsonInclude(Include.NON_ABSENT) + /** + * ZIP or ZIP+4. + */ @JsonProperty("zip") - private Optional zip; - - - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("country") - private Optional country; + private String zip; @JsonCreator public HomeAddress( - @JsonProperty("street_1") Optional street1, - @JsonProperty("street_2") Optional street2, - @JsonProperty("city") Optional city, - @JsonProperty("state") Optional state, - @JsonProperty("zip") Optional zip, - @JsonProperty("country") Optional country) { + @JsonProperty("street_1") String street1, + @JsonProperty("street_2") JsonNullable street2, + @JsonProperty("city") String city, + @JsonProperty("state") String state, + @JsonProperty("zip") String zip) { Utils.checkNotNull(street1, "street1"); Utils.checkNotNull(street2, "street2"); Utils.checkNotNull(city, "city"); Utils.checkNotNull(state, "state"); Utils.checkNotNull(zip, "zip"); - Utils.checkNotNull(country, "country"); this.street1 = street1; this.street2 = street2; this.city = city; this.state = state; this.zip = zip; - this.country = country; } - public HomeAddress() { - this(Optional.empty(), Optional.empty(), Optional.empty(), - Optional.empty(), Optional.empty(), Optional.empty()); + public HomeAddress( + String street1, + String city, + String state, + String zip) { + this(street1, JsonNullable.undefined(), city, + state, zip); } + /** + * Street address line 1. + */ @JsonIgnore - public Optional street1() { + public String street1() { return street1; } + /** + * Apartment, suite, unit, or building (optional). + */ @JsonIgnore - public Optional street2() { + public JsonNullable street2() { return street2; } + /** + * City. + */ @JsonIgnore - public Optional city() { + public String city() { return city; } + /** + * Two-letter U.S. state or territory postal abbreviation. + */ @JsonIgnore - public Optional state() { + public String state() { return state; } + /** + * ZIP or ZIP+4. + */ @JsonIgnore - public Optional zip() { + public String zip() { return zip; } - @JsonIgnore - public Optional country() { - return country; - } - public static Builder builder() { return new Builder(); } + /** + * Street address line 1. + */ public HomeAddress withStreet1(String street1) { - Utils.checkNotNull(street1, "street1"); - this.street1 = Optional.ofNullable(street1); - return this; - } - - - public HomeAddress withStreet1(Optional street1) { Utils.checkNotNull(street1, "street1"); this.street1 = street1; return this; } + /** + * Apartment, suite, unit, or building (optional). + */ public HomeAddress withStreet2(String street2) { Utils.checkNotNull(street2, "street2"); - this.street2 = Optional.ofNullable(street2); + this.street2 = JsonNullable.of(street2); return this; } - - public HomeAddress withStreet2(Optional street2) { + /** + * Apartment, suite, unit, or building (optional). + */ + public HomeAddress withStreet2(JsonNullable street2) { Utils.checkNotNull(street2, "street2"); this.street2 = street2; return this; } + /** + * City. + */ public HomeAddress withCity(String city) { - Utils.checkNotNull(city, "city"); - this.city = Optional.ofNullable(city); - return this; - } - - - public HomeAddress withCity(Optional city) { Utils.checkNotNull(city, "city"); this.city = city; return this; } + /** + * Two-letter U.S. state or territory postal abbreviation. + */ public HomeAddress withState(String state) { - Utils.checkNotNull(state, "state"); - this.state = Optional.ofNullable(state); - return this; - } - - - public HomeAddress withState(Optional state) { Utils.checkNotNull(state, "state"); this.state = state; return this; } + /** + * ZIP or ZIP+4. + */ public HomeAddress withZip(String zip) { - Utils.checkNotNull(zip, "zip"); - this.zip = Optional.ofNullable(zip); - return this; - } - - - public HomeAddress withZip(Optional zip) { Utils.checkNotNull(zip, "zip"); this.zip = zip; return this; } - public HomeAddress withCountry(String country) { - Utils.checkNotNull(country, "country"); - this.country = Optional.ofNullable(country); - return this; - } - - - public HomeAddress withCountry(Optional country) { - Utils.checkNotNull(country, "country"); - this.country = country; - return this; - } - @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -201,15 +191,14 @@ public boolean equals(java.lang.Object o) { Utils.enhancedDeepEquals(this.street2, other.street2) && Utils.enhancedDeepEquals(this.city, other.city) && Utils.enhancedDeepEquals(this.state, other.state) && - Utils.enhancedDeepEquals(this.zip, other.zip) && - Utils.enhancedDeepEquals(this.country, other.country); + Utils.enhancedDeepEquals(this.zip, other.zip); } @Override public int hashCode() { return Utils.enhancedHash( street1, street2, city, - state, zip, country); + state, zip); } @Override @@ -219,122 +208,91 @@ public String toString() { "street2", street2, "city", city, "state", state, - "zip", zip, - "country", country); + "zip", zip); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private Optional street1 = Optional.empty(); - - private Optional street2 = Optional.empty(); + private String street1; - private Optional city = Optional.empty(); + private JsonNullable street2 = JsonNullable.undefined(); - private Optional state = Optional.empty(); + private String city; - private Optional zip = Optional.empty(); + private String state; - private Optional country; + private String zip; private Builder() { // force use of static builder() method } + /** + * Street address line 1. + */ public Builder street1(String street1) { - Utils.checkNotNull(street1, "street1"); - this.street1 = Optional.ofNullable(street1); - return this; - } - - public Builder street1(Optional street1) { Utils.checkNotNull(street1, "street1"); this.street1 = street1; return this; } + /** + * Apartment, suite, unit, or building (optional). + */ public Builder street2(String street2) { Utils.checkNotNull(street2, "street2"); - this.street2 = Optional.ofNullable(street2); + this.street2 = JsonNullable.of(street2); return this; } - public Builder street2(Optional street2) { + /** + * Apartment, suite, unit, or building (optional). + */ + public Builder street2(JsonNullable street2) { Utils.checkNotNull(street2, "street2"); this.street2 = street2; return this; } + /** + * City. + */ public Builder city(String city) { - Utils.checkNotNull(city, "city"); - this.city = Optional.ofNullable(city); - return this; - } - - public Builder city(Optional city) { Utils.checkNotNull(city, "city"); this.city = city; return this; } + /** + * Two-letter U.S. state or territory postal abbreviation. + */ public Builder state(String state) { - Utils.checkNotNull(state, "state"); - this.state = Optional.ofNullable(state); - return this; - } - - public Builder state(Optional state) { Utils.checkNotNull(state, "state"); this.state = state; return this; } + /** + * ZIP or ZIP+4. + */ public Builder zip(String zip) { - Utils.checkNotNull(zip, "zip"); - this.zip = Optional.ofNullable(zip); - return this; - } - - public Builder zip(Optional zip) { Utils.checkNotNull(zip, "zip"); this.zip = zip; return this; } - - public Builder country(String country) { - Utils.checkNotNull(country, "country"); - this.country = Optional.ofNullable(country); - return this; - } - - public Builder country(Optional country) { - Utils.checkNotNull(country, "country"); - this.country = country; - return this; - } - public HomeAddress build() { - if (country == null) { - country = _SINGLETON_VALUE_Country.value(); - } return new HomeAddress( street1, street2, city, - state, zip, country); + state, zip); } - - private static final LazySingletonValue> _SINGLETON_VALUE_Country = - new LazySingletonValue<>( - "country", - "\"USA\"", - new TypeReference>() {}); } } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Location.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Location.java index 0459ed219..336bc6ac6 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Location.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Location.java @@ -14,6 +14,8 @@ import java.lang.Boolean; import java.lang.Override; import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.List; import java.util.Optional; import org.openapitools.jackson.nullable.JsonNullable; @@ -129,6 +131,14 @@ public class Location { @JsonProperty("inactive") private Optional inactive; + /** + * An array of warning objects that provide additional information about the address. Warnings do not + * prevent the address from being saved. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("warnings") + private Optional> warnings; + @JsonCreator public Location( @JsonProperty("uuid") String uuid, @@ -146,7 +156,8 @@ public Location( @JsonProperty("created_at") Optional createdAt, @JsonProperty("updated_at") Optional updatedAt, @JsonProperty("active") Optional active, - @JsonProperty("inactive") Optional inactive) { + @JsonProperty("inactive") Optional inactive, + @JsonProperty("warnings") Optional> warnings) { Utils.checkNotNull(uuid, "uuid"); Utils.checkNotNull(version, "version"); Utils.checkNotNull(companyUuid, "companyUuid"); @@ -163,6 +174,7 @@ public Location( Utils.checkNotNull(updatedAt, "updatedAt"); Utils.checkNotNull(active, "active"); Utils.checkNotNull(inactive, "inactive"); + Utils.checkNotNull(warnings, "warnings"); this.uuid = uuid; this.version = version; this.companyUuid = companyUuid; @@ -179,6 +191,7 @@ public Location( this.updatedAt = updatedAt; this.active = active; this.inactive = inactive; + this.warnings = warnings; } public Location( @@ -188,7 +201,7 @@ public Location( Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), - Optional.empty()); + Optional.empty(), Optional.empty()); } /** @@ -308,6 +321,16 @@ public Optional inactive() { return inactive; } + /** + * An array of warning objects that provide additional information about the address. Warnings do not + * prevent the address from being saved. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> warnings() { + return (Optional>) warnings; + } + public static Builder builder() { return new Builder(); } @@ -584,6 +607,27 @@ public Location withInactive(Optional inactive) { return this; } + /** + * An array of warning objects that provide additional information about the address. Warnings do not + * prevent the address from being saved. + */ + public Location withWarnings(List warnings) { + Utils.checkNotNull(warnings, "warnings"); + this.warnings = Optional.ofNullable(warnings); + return this; + } + + + /** + * An array of warning objects that provide additional information about the address. Warnings do not + * prevent the address from being saved. + */ + public Location withWarnings(Optional> warnings) { + Utils.checkNotNull(warnings, "warnings"); + this.warnings = warnings; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -609,7 +653,8 @@ public boolean equals(java.lang.Object o) { Utils.enhancedDeepEquals(this.createdAt, other.createdAt) && Utils.enhancedDeepEquals(this.updatedAt, other.updatedAt) && Utils.enhancedDeepEquals(this.active, other.active) && - Utils.enhancedDeepEquals(this.inactive, other.inactive); + Utils.enhancedDeepEquals(this.inactive, other.inactive) && + Utils.enhancedDeepEquals(this.warnings, other.warnings); } @Override @@ -620,7 +665,7 @@ public int hashCode() { city, state, zip, country, mailingAddress, filingAddress, createdAt, updatedAt, active, - inactive); + inactive, warnings); } @Override @@ -641,7 +686,8 @@ public String toString() { "createdAt", createdAt, "updatedAt", updatedAt, "active", active, - "inactive", inactive); + "inactive", inactive, + "warnings", warnings); } @SuppressWarnings("UnusedReturnValue") @@ -679,6 +725,8 @@ public final static class Builder { private Optional inactive = Optional.empty(); + private Optional> warnings = Optional.empty(); + private Builder() { // force use of static builder() method } @@ -956,6 +1004,27 @@ public Builder inactive(Optional inactive) { return this; } + + /** + * An array of warning objects that provide additional information about the address. Warnings do not + * prevent the address from being saved. + */ + public Builder warnings(List warnings) { + Utils.checkNotNull(warnings, "warnings"); + this.warnings = Optional.ofNullable(warnings); + return this; + } + + /** + * An array of warning objects that provide additional information about the address. Warnings do not + * prevent the address from being saved. + */ + public Builder warnings(Optional> warnings) { + Utils.checkNotNull(warnings, "warnings"); + this.warnings = warnings; + return this; + } + public Location build() { if (country == null) { country = _SINGLETON_VALUE_Country.value(); @@ -967,7 +1036,7 @@ public Location build() { city, state, zip, country, mailingAddress, filingAddress, createdAt, updatedAt, active, - inactive); + inactive, warnings); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/MemberPortalInvitation.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/MemberPortalInvitation.java new file mode 100644 index 000000000..d7370e891 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/MemberPortalInvitation.java @@ -0,0 +1,184 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Boolean; +import java.lang.Override; +import java.lang.String; + +/** + * MemberPortalInvitation + * + *

    The status of a member portal invitation for an employee or contractor. Returned by `GET + * /v1/employees/{employee_id}/member_portal_invitations` and `GET + * /v1/contractors/{contractor_uuid}/member_portal_invitations`. + */ +public class MemberPortalInvitation { + /** + * Current status of the member portal invitation. + * - `pending`: The invitation record has been created but the invitation email has not yet been + * delivered. + * - `sent`: The invitation email has been delivered to the member. + * - `verified`: The member has been verified by the member portal partner. + * - `complete`: The member has fully completed their member portal registration. + * - `cancelled`: The invitation has been cancelled, either via `DELETE` on this endpoint or because it + * was superseded. + */ + @JsonProperty("status") + private MemberPortalInvitationStatus1 status; + + /** + * Whether the invitation can no longer be acted on by the member. Returns `true` when the invitation + * token has expired or when the invitation has been `cancelled`. To reissue an expired invitation, + * call `POST` on this endpoint again — a new token will be generated and will override the prior one. + */ + @JsonProperty("expired") + private boolean expired; + + @JsonCreator + public MemberPortalInvitation( + @JsonProperty("status") MemberPortalInvitationStatus1 status, + @JsonProperty("expired") boolean expired) { + Utils.checkNotNull(status, "status"); + Utils.checkNotNull(expired, "expired"); + this.status = status; + this.expired = expired; + } + + /** + * Current status of the member portal invitation. + * - `pending`: The invitation record has been created but the invitation email has not yet been + * delivered. + * - `sent`: The invitation email has been delivered to the member. + * - `verified`: The member has been verified by the member portal partner. + * - `complete`: The member has fully completed their member portal registration. + * - `cancelled`: The invitation has been cancelled, either via `DELETE` on this endpoint or because it + * was superseded. + */ + @JsonIgnore + public MemberPortalInvitationStatus1 status() { + return status; + } + + /** + * Whether the invitation can no longer be acted on by the member. Returns `true` when the invitation + * token has expired or when the invitation has been `cancelled`. To reissue an expired invitation, + * call `POST` on this endpoint again — a new token will be generated and will override the prior one. + */ + @JsonIgnore + public boolean expired() { + return expired; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Current status of the member portal invitation. + * - `pending`: The invitation record has been created but the invitation email has not yet been + * delivered. + * - `sent`: The invitation email has been delivered to the member. + * - `verified`: The member has been verified by the member portal partner. + * - `complete`: The member has fully completed their member portal registration. + * - `cancelled`: The invitation has been cancelled, either via `DELETE` on this endpoint or because it + * was superseded. + */ + public MemberPortalInvitation withStatus(MemberPortalInvitationStatus1 status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + /** + * Whether the invitation can no longer be acted on by the member. Returns `true` when the invitation + * token has expired or when the invitation has been `cancelled`. To reissue an expired invitation, + * call `POST` on this endpoint again — a new token will be generated and will override the prior one. + */ + public MemberPortalInvitation withExpired(boolean expired) { + Utils.checkNotNull(expired, "expired"); + this.expired = expired; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + MemberPortalInvitation other = (MemberPortalInvitation) o; + return + Utils.enhancedDeepEquals(this.status, other.status) && + Utils.enhancedDeepEquals(this.expired, other.expired); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + status, expired); + } + + @Override + public String toString() { + return Utils.toString(MemberPortalInvitation.class, + "status", status, + "expired", expired); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private MemberPortalInvitationStatus1 status; + + private Boolean expired; + + private Builder() { + // force use of static builder() method + } + + + /** + * Current status of the member portal invitation. + * - `pending`: The invitation record has been created but the invitation email has not yet been + * delivered. + * - `sent`: The invitation email has been delivered to the member. + * - `verified`: The member has been verified by the member portal partner. + * - `complete`: The member has fully completed their member portal registration. + * - `cancelled`: The invitation has been cancelled, either via `DELETE` on this endpoint or because it + * was superseded. + */ + public Builder status(MemberPortalInvitationStatus1 status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + + /** + * Whether the invitation can no longer be acted on by the member. Returns `true` when the invitation + * token has expired or when the invitation has been `cancelled`. To reissue an expired invitation, + * call `POST` on this endpoint again — a new token will be generated and will override the prior one. + */ + public Builder expired(boolean expired) { + Utils.checkNotNull(expired, "expired"); + this.expired = expired; + return this; + } + + public MemberPortalInvitation build() { + + return new MemberPortalInvitation( + status, expired); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/MemberPortalInvitationStatus.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/MemberPortalInvitationStatus.java index 3e6e596fd..c1d435775 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/MemberPortalInvitationStatus.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/MemberPortalInvitationStatus.java @@ -29,7 +29,7 @@ public class MemberPortalInvitationStatus { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("status") - private Optional status; + private Optional status; /** * Whether the invitation token has expired. @@ -54,7 +54,7 @@ public class MemberPortalInvitationStatus { @JsonCreator public MemberPortalInvitationStatus( - @JsonProperty("status") Optional status, + @JsonProperty("status") Optional status, @JsonProperty("token_expired") JsonNullable tokenExpired, @JsonProperty("welcome_email_sent_at") JsonNullable welcomeEmailSentAt, @JsonProperty("last_password_resent_at") JsonNullable lastPasswordResentAt) { @@ -78,8 +78,8 @@ public MemberPortalInvitationStatus() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional status() { - return (Optional) status; + public Optional status() { + return (Optional) status; } /** @@ -114,7 +114,7 @@ public static Builder builder() { /** * The current status of the member portal invitation. */ - public MemberPortalInvitationStatus withStatus(ShowEmployeesStatus status) { + public MemberPortalInvitationStatus withStatus(ContractorStatus status) { Utils.checkNotNull(status, "status"); this.status = Optional.ofNullable(status); return this; @@ -124,7 +124,7 @@ public MemberPortalInvitationStatus withStatus(ShowEmployeesStatus status) { /** * The current status of the member portal invitation. */ - public MemberPortalInvitationStatus withStatus(Optional status) { + public MemberPortalInvitationStatus withStatus(Optional status) { Utils.checkNotNull(status, "status"); this.status = status; return this; @@ -219,7 +219,7 @@ public String toString() { @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private Optional status = Optional.empty(); + private Optional status = Optional.empty(); private JsonNullable tokenExpired = JsonNullable.undefined(); @@ -235,7 +235,7 @@ private Builder() { /** * The current status of the member portal invitation. */ - public Builder status(ShowEmployeesStatus status) { + public Builder status(ContractorStatus status) { Utils.checkNotNull(status, "status"); this.status = Optional.ofNullable(status); return this; @@ -244,7 +244,7 @@ public Builder status(ShowEmployeesStatus status) { /** * The current status of the member portal invitation. */ - public Builder status(Optional status) { + public Builder status(Optional status) { Utils.checkNotNull(status, "status"); this.status = status; return this; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/MemberPortalInvitationStatus1.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/MemberPortalInvitationStatus1.java new file mode 100644 index 000000000..f5cd1a981 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/MemberPortalInvitationStatus1.java @@ -0,0 +1,50 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * MemberPortalInvitationStatus1 + * + *

    Current status of the member portal invitation. + * - `pending`: The invitation record has been created but the invitation email has not yet been + * delivered. + * - `sent`: The invitation email has been delivered to the member. + * - `verified`: The member has been verified by the member portal partner. + * - `complete`: The member has fully completed their member portal registration. + * - `cancelled`: The invitation has been cancelled, either via `DELETE` on this endpoint or because it + * was superseded. + */ +public enum MemberPortalInvitationStatus1 { + PENDING("pending"), + SENT("sent"), + VERIFIED("verified"), + COMPLETE("complete"), + CANCELLED("cancelled"); + + @JsonValue + private final String value; + + MemberPortalInvitationStatus1(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (MemberPortalInvitationStatus1 o: MemberPortalInvitationStatus1.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/OnboardingStatus.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/OnboardingStatus.java index 0ce0b81f1..cdd8410fb 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/OnboardingStatus.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/OnboardingStatus.java @@ -8,15 +8,19 @@ import java.util.Objects; import java.util.Optional; +/** + * OnboardingStatus + * + *

    One of the "onboarding_status" enum values. + */ public enum OnboardingStatus { - ONBOARDING_COMPLETED("onboarding_completed"), ADMIN_ONBOARDING_INCOMPLETE("admin_onboarding_incomplete"), - SELF_ONBOARDING_PENDING_INVITE("self_onboarding_pending_invite"), + ADMIN_ONBOARDING_REVIEW("admin_onboarding_review"), + SELF_ONBOARDING_NOT_INVITED("self_onboarding_not_invited"), SELF_ONBOARDING_INVITED("self_onboarding_invited"), - SELF_ONBOARDING_INVITED_STARTED("self_onboarding_invited_started"), - SELF_ONBOARDING_INVITED_OVERDUE("self_onboarding_invited_overdue"), - SELF_ONBOARDING_COMPLETED_BY_EMPLOYEE("self_onboarding_completed_by_employee"), - SELF_ONBOARDING_AWAITING_ADMIN_REVIEW("self_onboarding_awaiting_admin_review"); + SELF_ONBOARDING_STARTED("self_onboarding_started"), + SELF_ONBOARDING_REVIEW("self_onboarding_review"), + ONBOARDING_COMPLETED("onboarding_completed"); @JsonValue private final String value; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Options.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Options.java index 39e77ae62..e39d5ff5f 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Options.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Options.java @@ -11,54 +11,70 @@ import com.gusto.embedded_api_v_2025_11_15.utils.Utils; import java.lang.Override; import java.lang.String; -import java.lang.SuppressWarnings; -import java.util.Optional; +import org.openapitools.jackson.nullable.JsonNullable; public class Options { /** - * An allowed value to answer the question + * A customer facing label for the answer + */ + @JsonProperty("label") + private String label; + + /** + * The actual value to be submitted */ - @JsonInclude(Include.NON_ABSENT) @JsonProperty("value") - private Optional value; + private TaxRequirementMetadataValue value; /** - * A display label that corresponds to the answer value + * A less verbose label that may sometimes be available */ - @JsonProperty("label") - private String label; + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("short_label") + private JsonNullable shortLabel; @JsonCreator public Options( - @JsonProperty("value") Optional value, - @JsonProperty("label") String label) { - Utils.checkNotNull(value, "value"); + @JsonProperty("label") String label, + @JsonProperty("value") TaxRequirementMetadataValue value, + @JsonProperty("short_label") JsonNullable shortLabel) { Utils.checkNotNull(label, "label"); - this.value = value; + Utils.checkNotNull(value, "value"); + Utils.checkNotNull(shortLabel, "shortLabel"); this.label = label; + this.value = value; + this.shortLabel = shortLabel; } public Options( - String label) { - this(Optional.empty(), label); + String label, + TaxRequirementMetadataValue value) { + this(label, value, JsonNullable.undefined()); } /** - * An allowed value to answer the question + * A customer facing label for the answer */ - @SuppressWarnings("unchecked") @JsonIgnore - public Optional value() { - return (Optional) value; + public String label() { + return label; } /** - * A display label that corresponds to the answer value + * The actual value to be submitted */ @JsonIgnore - public String label() { - return label; + public TaxRequirementMetadataValue value() { + return value; + } + + /** + * A less verbose label that may sometimes be available + */ + @JsonIgnore + public JsonNullable shortLabel() { + return shortLabel; } public static Builder builder() { @@ -67,30 +83,38 @@ public static Builder builder() { /** - * An allowed value to answer the question + * A customer facing label for the answer */ - public Options withValue(EmployeeStateTaxInputQuestionFormatValue value) { - Utils.checkNotNull(value, "value"); - this.value = Optional.ofNullable(value); + public Options withLabel(String label) { + Utils.checkNotNull(label, "label"); + this.label = label; return this; } - /** - * An allowed value to answer the question + * The actual value to be submitted */ - public Options withValue(Optional value) { + public Options withValue(TaxRequirementMetadataValue value) { Utils.checkNotNull(value, "value"); this.value = value; return this; } /** - * A display label that corresponds to the answer value + * A less verbose label that may sometimes be available */ - public Options withLabel(String label) { - Utils.checkNotNull(label, "label"); - this.label = label; + public Options withShortLabel(String shortLabel) { + Utils.checkNotNull(shortLabel, "shortLabel"); + this.shortLabel = JsonNullable.of(shortLabel); + return this; + } + + /** + * A less verbose label that may sometimes be available + */ + public Options withShortLabel(JsonNullable shortLabel) { + Utils.checkNotNull(shortLabel, "shortLabel"); + this.shortLabel = shortLabel; return this; } @@ -104,48 +128,53 @@ public boolean equals(java.lang.Object o) { } Options other = (Options) o; return + Utils.enhancedDeepEquals(this.label, other.label) && Utils.enhancedDeepEquals(this.value, other.value) && - Utils.enhancedDeepEquals(this.label, other.label); + Utils.enhancedDeepEquals(this.shortLabel, other.shortLabel); } @Override public int hashCode() { return Utils.enhancedHash( - value, label); + label, value, shortLabel); } @Override public String toString() { return Utils.toString(Options.class, + "label", label, "value", value, - "label", label); + "shortLabel", shortLabel); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private Optional value = Optional.empty(); - private String label; + private TaxRequirementMetadataValue value; + + private JsonNullable shortLabel = JsonNullable.undefined(); + private Builder() { // force use of static builder() method } /** - * An allowed value to answer the question + * A customer facing label for the answer */ - public Builder value(EmployeeStateTaxInputQuestionFormatValue value) { - Utils.checkNotNull(value, "value"); - this.value = Optional.ofNullable(value); + public Builder label(String label) { + Utils.checkNotNull(label, "label"); + this.label = label; return this; } + /** - * An allowed value to answer the question + * The actual value to be submitted */ - public Builder value(Optional value) { + public Builder value(TaxRequirementMetadataValue value) { Utils.checkNotNull(value, "value"); this.value = value; return this; @@ -153,18 +182,27 @@ public Builder value(Optional shortLabel) { + Utils.checkNotNull(shortLabel, "shortLabel"); + this.shortLabel = shortLabel; return this; } public Options build() { return new Options( - value, label); + label, value, shortLabel); } } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/AchTransactionRecipientType.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/OverrideType.java similarity index 64% rename from gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/AchTransactionRecipientType.java rename to gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/OverrideType.java index 7dbc29650..23c28aceb 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/AchTransactionRecipientType.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/OverrideType.java @@ -8,14 +8,18 @@ import java.util.Objects; import java.util.Optional; -public enum AchTransactionRecipientType { - EMPLOYEE("Employee"), - CONTRACTOR("Contractor"); +/** + * OverrideType + * + *

    Override mode. Only `one_time` is currently exposed. + */ +public enum OverrideType { + ONE_TIME("one_time"); @JsonValue private final String value; - AchTransactionRecipientType(String value) { + OverrideType(String value) { this.value = value; } @@ -23,8 +27,8 @@ public String value() { return value; } - public static Optional fromValue(String value) { - for (AchTransactionRecipientType o: AchTransactionRecipientType.values()) { + public static Optional fromValue(String value) { + for (OverrideType o: OverrideType.values()) { if (Objects.deepEquals(o.value, value)) { return Optional.of(o); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PartnerManagedCompanyDisassociateResponse.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PartnerManagedCompanyDisassociateResponse.java new file mode 100644 index 000000000..b8238a318 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PartnerManagedCompanyDisassociateResponse.java @@ -0,0 +1,145 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Override; +import java.lang.String; + +/** + * PartnerManagedCompanyDisassociateResponse + * + *

    The company that was disassociated from the partner's embedded payroll product. + */ +public class PartnerManagedCompanyDisassociateResponse { + /** + * The UUID of the disassociated company. + */ + @JsonProperty("company_uuid") + private String companyUuid; + + /** + * The name of the disassociated company. + */ + @JsonProperty("company_name") + private String companyName; + + @JsonCreator + public PartnerManagedCompanyDisassociateResponse( + @JsonProperty("company_uuid") String companyUuid, + @JsonProperty("company_name") String companyName) { + Utils.checkNotNull(companyUuid, "companyUuid"); + Utils.checkNotNull(companyName, "companyName"); + this.companyUuid = companyUuid; + this.companyName = companyName; + } + + /** + * The UUID of the disassociated company. + */ + @JsonIgnore + public String companyUuid() { + return companyUuid; + } + + /** + * The name of the disassociated company. + */ + @JsonIgnore + public String companyName() { + return companyName; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * The UUID of the disassociated company. + */ + public PartnerManagedCompanyDisassociateResponse withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + /** + * The name of the disassociated company. + */ + public PartnerManagedCompanyDisassociateResponse withCompanyName(String companyName) { + Utils.checkNotNull(companyName, "companyName"); + this.companyName = companyName; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PartnerManagedCompanyDisassociateResponse other = (PartnerManagedCompanyDisassociateResponse) o; + return + Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && + Utils.enhancedDeepEquals(this.companyName, other.companyName); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + companyUuid, companyName); + } + + @Override + public String toString() { + return Utils.toString(PartnerManagedCompanyDisassociateResponse.class, + "companyUuid", companyUuid, + "companyName", companyName); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String companyUuid; + + private String companyName; + + private Builder() { + // force use of static builder() method + } + + + /** + * The UUID of the disassociated company. + */ + public Builder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + + /** + * The name of the disassociated company. + */ + public Builder companyName(String companyName) { + Utils.checkNotNull(companyName, "companyName"); + this.companyName = companyName; + return this; + } + + public PartnerManagedCompanyDisassociateResponse build() { + + return new PartnerManagedCompanyDisassociateResponse( + companyUuid, companyName); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayScheduleAssignment.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayScheduleAssignment.java index 62fbf5f0c..fc4ec2e57 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayScheduleAssignment.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayScheduleAssignment.java @@ -26,7 +26,7 @@ public class PayScheduleAssignment { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("type") - private JsonNullable type; + private JsonNullable type; /** * Pay schedule for hourly employees. @@ -65,7 +65,7 @@ public class PayScheduleAssignment { @JsonCreator public PayScheduleAssignment( - @JsonProperty("type") JsonNullable type, + @JsonProperty("type") JsonNullable type, @JsonProperty("hourly_pay_schedule_uuid") JsonNullable hourlyPayScheduleUuid, @JsonProperty("salaried_pay_schedule_uuid") JsonNullable salariedPayScheduleUuid, @JsonProperty("default_pay_schedule_uuid") JsonNullable defaultPayScheduleUuid, @@ -95,8 +95,8 @@ public PayScheduleAssignment() { */ @SuppressWarnings("unchecked") @JsonIgnore - public JsonNullable type() { - return (JsonNullable) type; + public JsonNullable type() { + return (JsonNullable) type; } /** @@ -149,7 +149,7 @@ public static Builder builder() { /** * The pay schedule assignment type. */ - public PayScheduleAssignment withType(Type type) { + public PayScheduleAssignment withType(PayScheduleAssignmentType type) { Utils.checkNotNull(type, "type"); this.type = JsonNullable.of(type); return this; @@ -158,7 +158,7 @@ public PayScheduleAssignment withType(Type type) { /** * The pay schedule assignment type. */ - public PayScheduleAssignment withType(JsonNullable type) { + public PayScheduleAssignment withType(JsonNullable type) { Utils.checkNotNull(type, "type"); this.type = type; return this; @@ -293,7 +293,7 @@ public String toString() { @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private JsonNullable type = JsonNullable.undefined(); + private JsonNullable type = JsonNullable.undefined(); private JsonNullable hourlyPayScheduleUuid = JsonNullable.undefined(); @@ -313,7 +313,7 @@ private Builder() { /** * The pay schedule assignment type. */ - public Builder type(Type type) { + public Builder type(PayScheduleAssignmentType type) { Utils.checkNotNull(type, "type"); this.type = JsonNullable.of(type); return this; @@ -322,7 +322,7 @@ public Builder type(Type type) { /** * The pay schedule assignment type. */ - public Builder type(JsonNullable type) { + public Builder type(JsonNullable type) { Utils.checkNotNull(type, "type"); this.type = type; return this; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayScheduleAssignmentBody.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayScheduleAssignmentBody.java index b73382d25..b3d13566a 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayScheduleAssignmentBody.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayScheduleAssignmentBody.java @@ -59,7 +59,7 @@ public class PayScheduleAssignmentBody { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("employees") - private Optional> employees; + private Optional> employees; /** * List of departments and their pay schedules. @@ -75,7 +75,7 @@ public PayScheduleAssignmentBody( @JsonProperty("salaried_pay_schedule_uuid") Optional salariedPayScheduleUuid, @JsonProperty("default_pay_schedule_uuid") Optional defaultPayScheduleUuid, @JsonProperty("partial_assignment") Optional partialAssignment, - @JsonProperty("employees") Optional> employees, + @JsonProperty("employees") Optional> employees, @JsonProperty("departments") Optional> departments) { Utils.checkNotNull(type, "type"); Utils.checkNotNull(hourlyPayScheduleUuid, "hourlyPayScheduleUuid"); @@ -146,8 +146,8 @@ public Optional partialAssignment() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional> employees() { - return (Optional>) employees; + public Optional> employees() { + return (Optional>) employees; } /** @@ -264,7 +264,7 @@ public PayScheduleAssignmentBody withPartialAssignment(Optional partial /** * List of employees and their pay schedules. */ - public PayScheduleAssignmentBody withEmployees(List employees) { + public PayScheduleAssignmentBody withEmployees(List employees) { Utils.checkNotNull(employees, "employees"); this.employees = Optional.ofNullable(employees); return this; @@ -274,7 +274,7 @@ public PayScheduleAssignmentBody withEmployees(List employees) { /** * List of employees and their pay schedules. */ - public PayScheduleAssignmentBody withEmployees(Optional> employees) { + public PayScheduleAssignmentBody withEmployees(Optional> employees) { Utils.checkNotNull(employees, "employees"); this.employees = employees; return this; @@ -351,7 +351,7 @@ public final static class Builder { private Optional partialAssignment = Optional.empty(); - private Optional> employees = Optional.empty(); + private Optional> employees = Optional.empty(); private Optional> departments = Optional.empty(); @@ -460,7 +460,7 @@ public Builder partialAssignment(Optional partialAssignment) { /** * List of employees and their pay schedules. */ - public Builder employees(List employees) { + public Builder employees(List employees) { Utils.checkNotNull(employees, "employees"); this.employees = Optional.ofNullable(employees); return this; @@ -469,7 +469,7 @@ public Builder employees(List employees) { /** * List of employees and their pay schedules. */ - public Builder employees(Optional> employees) { + public Builder employees(Optional> employees) { Utils.checkNotNull(employees, "employees"); this.employees = employees; return this; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayScheduleAssignmentBodyEmployees.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayScheduleAssignmentBodyEmployees.java new file mode 100644 index 000000000..801b46c47 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayScheduleAssignmentBodyEmployees.java @@ -0,0 +1,188 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.util.Optional; + + +public class PayScheduleAssignmentBodyEmployees { + /** + * Employee UUID + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("employee_uuid") + private Optional employeeUuid; + + /** + * Pay schedule UUID + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("pay_schedule_uuid") + private Optional payScheduleUuid; + + @JsonCreator + public PayScheduleAssignmentBodyEmployees( + @JsonProperty("employee_uuid") Optional employeeUuid, + @JsonProperty("pay_schedule_uuid") Optional payScheduleUuid) { + Utils.checkNotNull(employeeUuid, "employeeUuid"); + Utils.checkNotNull(payScheduleUuid, "payScheduleUuid"); + this.employeeUuid = employeeUuid; + this.payScheduleUuid = payScheduleUuid; + } + + public PayScheduleAssignmentBodyEmployees() { + this(Optional.empty(), Optional.empty()); + } + + /** + * Employee UUID + */ + @JsonIgnore + public Optional employeeUuid() { + return employeeUuid; + } + + /** + * Pay schedule UUID + */ + @JsonIgnore + public Optional payScheduleUuid() { + return payScheduleUuid; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Employee UUID + */ + public PayScheduleAssignmentBodyEmployees withEmployeeUuid(String employeeUuid) { + Utils.checkNotNull(employeeUuid, "employeeUuid"); + this.employeeUuid = Optional.ofNullable(employeeUuid); + return this; + } + + + /** + * Employee UUID + */ + public PayScheduleAssignmentBodyEmployees withEmployeeUuid(Optional employeeUuid) { + Utils.checkNotNull(employeeUuid, "employeeUuid"); + this.employeeUuid = employeeUuid; + return this; + } + + /** + * Pay schedule UUID + */ + public PayScheduleAssignmentBodyEmployees withPayScheduleUuid(String payScheduleUuid) { + Utils.checkNotNull(payScheduleUuid, "payScheduleUuid"); + this.payScheduleUuid = Optional.ofNullable(payScheduleUuid); + return this; + } + + + /** + * Pay schedule UUID + */ + public PayScheduleAssignmentBodyEmployees withPayScheduleUuid(Optional payScheduleUuid) { + Utils.checkNotNull(payScheduleUuid, "payScheduleUuid"); + this.payScheduleUuid = payScheduleUuid; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PayScheduleAssignmentBodyEmployees other = (PayScheduleAssignmentBodyEmployees) o; + return + Utils.enhancedDeepEquals(this.employeeUuid, other.employeeUuid) && + Utils.enhancedDeepEquals(this.payScheduleUuid, other.payScheduleUuid); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + employeeUuid, payScheduleUuid); + } + + @Override + public String toString() { + return Utils.toString(PayScheduleAssignmentBodyEmployees.class, + "employeeUuid", employeeUuid, + "payScheduleUuid", payScheduleUuid); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional employeeUuid = Optional.empty(); + + private Optional payScheduleUuid = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * Employee UUID + */ + public Builder employeeUuid(String employeeUuid) { + Utils.checkNotNull(employeeUuid, "employeeUuid"); + this.employeeUuid = Optional.ofNullable(employeeUuid); + return this; + } + + /** + * Employee UUID + */ + public Builder employeeUuid(Optional employeeUuid) { + Utils.checkNotNull(employeeUuid, "employeeUuid"); + this.employeeUuid = employeeUuid; + return this; + } + + + /** + * Pay schedule UUID + */ + public Builder payScheduleUuid(String payScheduleUuid) { + Utils.checkNotNull(payScheduleUuid, "payScheduleUuid"); + this.payScheduleUuid = Optional.ofNullable(payScheduleUuid); + return this; + } + + /** + * Pay schedule UUID + */ + public Builder payScheduleUuid(Optional payScheduleUuid) { + Utils.checkNotNull(payScheduleUuid, "payScheduleUuid"); + this.payScheduleUuid = payScheduleUuid; + return this; + } + + public PayScheduleAssignmentBodyEmployees build() { + + return new PayScheduleAssignmentBodyEmployees( + employeeUuid, payScheduleUuid); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayScheduleAssignmentType.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayScheduleAssignmentType.java new file mode 100644 index 000000000..7c038b4a3 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayScheduleAssignmentType.java @@ -0,0 +1,37 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +public enum PayScheduleAssignmentType { + SINGLE("single"), + HOURLY_SALARIED("hourly_salaried"), + BY_EMPLOYEE("by_employee"), + BY_DEPARTMENT("by_department"); + + @JsonValue + private final String value; + + PayScheduleAssignmentType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayScheduleAssignmentType o: PayScheduleAssignmentType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayScheduleAutoPayrollEnablementBlocker.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayScheduleAutoPayrollEnablementBlocker.java index ba9f71717..dde2e86b2 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayScheduleAutoPayrollEnablementBlocker.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayScheduleAutoPayrollEnablementBlocker.java @@ -21,9 +21,9 @@ */ public class PayScheduleAutoPayrollEnablementBlocker { /** - * The blocker type (e.g. employees_not_on_direct_deposit, employees_not_salaried, - * missing_funding_method, missing_state_tax_requirements, one_day_ach_speed_not_supported, - * company_suspended, earned_fast_ach_not_met). + * The blocker type. Possible values: employees_not_on_direct_deposit, employees_not_salaried, + * missing_state_tax_requirements, missing_funding_method, one_day_ach_speed_not_supported, + * company_suspended, earned_fast_ach_not_met, hourly_employees_missing_default_hours. */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("key") @@ -51,9 +51,9 @@ public PayScheduleAutoPayrollEnablementBlocker() { } /** - * The blocker type (e.g. employees_not_on_direct_deposit, employees_not_salaried, - * missing_funding_method, missing_state_tax_requirements, one_day_ach_speed_not_supported, - * company_suspended, earned_fast_ach_not_met). + * The blocker type. Possible values: employees_not_on_direct_deposit, employees_not_salaried, + * missing_state_tax_requirements, missing_funding_method, one_day_ach_speed_not_supported, + * company_suspended, earned_fast_ach_not_met, hourly_employees_missing_default_hours. */ @JsonIgnore public Optional key() { @@ -75,9 +75,9 @@ public static Builder builder() { /** - * The blocker type (e.g. employees_not_on_direct_deposit, employees_not_salaried, - * missing_funding_method, missing_state_tax_requirements, one_day_ach_speed_not_supported, - * company_suspended, earned_fast_ach_not_met). + * The blocker type. Possible values: employees_not_on_direct_deposit, employees_not_salaried, + * missing_state_tax_requirements, missing_funding_method, one_day_ach_speed_not_supported, + * company_suspended, earned_fast_ach_not_met, hourly_employees_missing_default_hours. */ public PayScheduleAutoPayrollEnablementBlocker withKey(String key) { Utils.checkNotNull(key, "key"); @@ -87,9 +87,9 @@ public PayScheduleAutoPayrollEnablementBlocker withKey(String key) { /** - * The blocker type (e.g. employees_not_on_direct_deposit, employees_not_salaried, - * missing_funding_method, missing_state_tax_requirements, one_day_ach_speed_not_supported, - * company_suspended, earned_fast_ach_not_met). + * The blocker type. Possible values: employees_not_on_direct_deposit, employees_not_salaried, + * missing_state_tax_requirements, missing_funding_method, one_day_ach_speed_not_supported, + * company_suspended, earned_fast_ach_not_met, hourly_employees_missing_default_hours. */ public PayScheduleAutoPayrollEnablementBlocker withKey(Optional key) { Utils.checkNotNull(key, "key"); @@ -156,9 +156,9 @@ private Builder() { /** - * The blocker type (e.g. employees_not_on_direct_deposit, employees_not_salaried, - * missing_funding_method, missing_state_tax_requirements, one_day_ach_speed_not_supported, - * company_suspended, earned_fast_ach_not_met). + * The blocker type. Possible values: employees_not_on_direct_deposit, employees_not_salaried, + * missing_state_tax_requirements, missing_funding_method, one_day_ach_speed_not_supported, + * company_suspended, earned_fast_ach_not_met, hourly_employees_missing_default_hours. */ public Builder key(String key) { Utils.checkNotNull(key, "key"); @@ -167,9 +167,9 @@ public Builder key(String key) { } /** - * The blocker type (e.g. employees_not_on_direct_deposit, employees_not_salaried, - * missing_funding_method, missing_state_tax_requirements, one_day_ach_speed_not_supported, - * company_suspended, earned_fast_ach_not_met). + * The blocker type. Possible values: employees_not_on_direct_deposit, employees_not_salaried, + * missing_state_tax_requirements, missing_funding_method, one_day_ach_speed_not_supported, + * company_suspended, earned_fast_ach_not_met, hourly_employees_missing_default_hours. */ public Builder key(Optional key) { Utils.checkNotNull(key, "key"); diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PaymentMethod.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PaymentMethod.java index f01cab13f..ddcf9b409 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PaymentMethod.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PaymentMethod.java @@ -11,11 +11,11 @@ /** * PaymentMethod * - *

    The employee's payment method + *

    Payment method to filter by. */ public enum PaymentMethod { - DIRECT_DEPOSIT("Direct Deposit"), - CHECK("Check"); + CHECK("check"), + DIRECT_DEPOSIT("direct_deposit"); @JsonValue private final String value; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollBatch.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollBatch.java new file mode 100644 index 000000000..e940c490d --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollBatch.java @@ -0,0 +1,247 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Override; +import java.lang.String; + +/** + * PayrollBatch + * + *

    A payroll cancellation batch request. + */ +public class PayrollBatch { + /** + * The unique identifier of the payroll cancellation batch. + */ + @JsonProperty("uuid") + private String uuid; + + /** + * The idempotency key provided when creating the batch. + */ + @JsonProperty("idempotency_key") + private String idempotencyKey; + + /** + * The action being performed on the batch. + */ + @JsonProperty("batch_action") + private BatchAction batchAction; + + /** + * The lifecycle status of the batch request itself. Terminal values are `completed` (processing + * finished — inspect `results` and `exclusions` for per-payroll outcomes) and `failed` (the batch + * crashed at the system level; can be retried). This is distinct from the per-payroll `status` + * returned inside `results[]`. + * + *

    A `completed` batch does not imply every payroll was cancelled. + */ + @JsonProperty("status") + private PayrollBatchStatus status; + + @JsonCreator + public PayrollBatch( + @JsonProperty("uuid") String uuid, + @JsonProperty("idempotency_key") String idempotencyKey, + @JsonProperty("batch_action") BatchAction batchAction, + @JsonProperty("status") PayrollBatchStatus status) { + Utils.checkNotNull(uuid, "uuid"); + Utils.checkNotNull(idempotencyKey, "idempotencyKey"); + Utils.checkNotNull(batchAction, "batchAction"); + Utils.checkNotNull(status, "status"); + this.uuid = uuid; + this.idempotencyKey = idempotencyKey; + this.batchAction = batchAction; + this.status = status; + } + + /** + * The unique identifier of the payroll cancellation batch. + */ + @JsonIgnore + public String uuid() { + return uuid; + } + + /** + * The idempotency key provided when creating the batch. + */ + @JsonIgnore + public String idempotencyKey() { + return idempotencyKey; + } + + /** + * The action being performed on the batch. + */ + @JsonIgnore + public BatchAction batchAction() { + return batchAction; + } + + /** + * The lifecycle status of the batch request itself. Terminal values are `completed` (processing + * finished — inspect `results` and `exclusions` for per-payroll outcomes) and `failed` (the batch + * crashed at the system level; can be retried). This is distinct from the per-payroll `status` + * returned inside `results[]`. + * + *

    A `completed` batch does not imply every payroll was cancelled. + */ + @JsonIgnore + public PayrollBatchStatus status() { + return status; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * The unique identifier of the payroll cancellation batch. + */ + public PayrollBatch withUuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + /** + * The idempotency key provided when creating the batch. + */ + public PayrollBatch withIdempotencyKey(String idempotencyKey) { + Utils.checkNotNull(idempotencyKey, "idempotencyKey"); + this.idempotencyKey = idempotencyKey; + return this; + } + + /** + * The action being performed on the batch. + */ + public PayrollBatch withBatchAction(BatchAction batchAction) { + Utils.checkNotNull(batchAction, "batchAction"); + this.batchAction = batchAction; + return this; + } + + /** + * The lifecycle status of the batch request itself. Terminal values are `completed` (processing + * finished — inspect `results` and `exclusions` for per-payroll outcomes) and `failed` (the batch + * crashed at the system level; can be retried). This is distinct from the per-payroll `status` + * returned inside `results[]`. + * + *

    A `completed` batch does not imply every payroll was cancelled. + */ + public PayrollBatch withStatus(PayrollBatchStatus status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PayrollBatch other = (PayrollBatch) o; + return + Utils.enhancedDeepEquals(this.uuid, other.uuid) && + Utils.enhancedDeepEquals(this.idempotencyKey, other.idempotencyKey) && + Utils.enhancedDeepEquals(this.batchAction, other.batchAction) && + Utils.enhancedDeepEquals(this.status, other.status); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + uuid, idempotencyKey, batchAction, + status); + } + + @Override + public String toString() { + return Utils.toString(PayrollBatch.class, + "uuid", uuid, + "idempotencyKey", idempotencyKey, + "batchAction", batchAction, + "status", status); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String uuid; + + private String idempotencyKey; + + private BatchAction batchAction; + + private PayrollBatchStatus status; + + private Builder() { + // force use of static builder() method + } + + + /** + * The unique identifier of the payroll cancellation batch. + */ + public Builder uuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + + /** + * The idempotency key provided when creating the batch. + */ + public Builder idempotencyKey(String idempotencyKey) { + Utils.checkNotNull(idempotencyKey, "idempotencyKey"); + this.idempotencyKey = idempotencyKey; + return this; + } + + + /** + * The action being performed on the batch. + */ + public Builder batchAction(BatchAction batchAction) { + Utils.checkNotNull(batchAction, "batchAction"); + this.batchAction = batchAction; + return this; + } + + + /** + * The lifecycle status of the batch request itself. Terminal values are `completed` (processing + * finished — inspect `results` and `exclusions` for per-payroll outcomes) and `failed` (the batch + * crashed at the system level; can be retried). This is distinct from the per-payroll `status` + * returned inside `results[]`. + * + *

    A `completed` batch does not imply every payroll was cancelled. + */ + public Builder status(PayrollBatchStatus status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + public PayrollBatch build() { + + return new PayrollBatch( + uuid, idempotencyKey, batchAction, + status); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollBatchResults.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollBatchResults.java new file mode 100644 index 000000000..284915fa2 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollBatchResults.java @@ -0,0 +1,660 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Long; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.time.OffsetDateTime; +import java.util.List; +import java.util.Optional; +import org.openapitools.jackson.nullable.JsonNullable; + +/** + * PayrollBatchResults + * + *

    A payroll cancellation batch with per-payroll results. + */ +public class PayrollBatchResults { + /** + * The unique identifier of the payroll cancellation batch. + */ + @JsonProperty("uuid") + private String uuid; + + /** + * The idempotency key provided when creating the batch. + */ + @JsonProperty("idempotency_key") + private String idempotencyKey; + + /** + * The lifecycle status of the batch request itself. Terminal values are `completed` (processing + * finished — inspect `results` and `exclusions` for per-payroll outcomes) and `failed` (the batch + * crashed at the system level; can be retried). This is distinct from the per-payroll `status` + * returned inside `results[]`. + * + *

    A `completed` batch does not imply every payroll was cancelled. + */ + @JsonProperty("status") + private PayrollBatchResultsStatus status; + + /** + * The timestamp when the batch was submitted. + */ + @JsonProperty("submitted_at") + private OffsetDateTime submittedAt; + + /** + * The timestamp when the batch processing completed. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("completed_at") + private JsonNullable completedAt; + + /** + * The number of payrolls submitted in the batch. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("submitted_items") + private JsonNullable submittedItems; + + /** + * The number of payrolls processed (cancelled or attempted). Only present once the batch reaches a + * terminal status. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("processed_items") + private Optional processedItems; + + /** + * The number of payrolls excluded from processing. Only present once the batch reaches a terminal + * status. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("excluded_items") + private Optional excludedItems; + + /** + * Per-payroll cancellation results. Only present once the batch reaches a terminal status. One entry + * per authorized payroll. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("results") + private Optional> results; + + /** + * Payrolls that could not be processed, determined at submission time. Only present once the batch + * reaches a terminal status. Every UUID submitted in the POST batch appears in exactly one of + * `results` or `exclusions`. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("exclusions") + private Optional> exclusions; + + @JsonCreator + public PayrollBatchResults( + @JsonProperty("uuid") String uuid, + @JsonProperty("idempotency_key") String idempotencyKey, + @JsonProperty("status") PayrollBatchResultsStatus status, + @JsonProperty("submitted_at") OffsetDateTime submittedAt, + @JsonProperty("completed_at") JsonNullable completedAt, + @JsonProperty("submitted_items") JsonNullable submittedItems, + @JsonProperty("processed_items") Optional processedItems, + @JsonProperty("excluded_items") Optional excludedItems, + @JsonProperty("results") Optional> results, + @JsonProperty("exclusions") Optional> exclusions) { + Utils.checkNotNull(uuid, "uuid"); + Utils.checkNotNull(idempotencyKey, "idempotencyKey"); + Utils.checkNotNull(status, "status"); + Utils.checkNotNull(submittedAt, "submittedAt"); + Utils.checkNotNull(completedAt, "completedAt"); + Utils.checkNotNull(submittedItems, "submittedItems"); + Utils.checkNotNull(processedItems, "processedItems"); + Utils.checkNotNull(excludedItems, "excludedItems"); + Utils.checkNotNull(results, "results"); + Utils.checkNotNull(exclusions, "exclusions"); + this.uuid = uuid; + this.idempotencyKey = idempotencyKey; + this.status = status; + this.submittedAt = submittedAt; + this.completedAt = completedAt; + this.submittedItems = submittedItems; + this.processedItems = processedItems; + this.excludedItems = excludedItems; + this.results = results; + this.exclusions = exclusions; + } + + public PayrollBatchResults( + String uuid, + String idempotencyKey, + PayrollBatchResultsStatus status, + OffsetDateTime submittedAt) { + this(uuid, idempotencyKey, status, + submittedAt, JsonNullable.undefined(), JsonNullable.undefined(), + Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty()); + } + + /** + * The unique identifier of the payroll cancellation batch. + */ + @JsonIgnore + public String uuid() { + return uuid; + } + + /** + * The idempotency key provided when creating the batch. + */ + @JsonIgnore + public String idempotencyKey() { + return idempotencyKey; + } + + /** + * The lifecycle status of the batch request itself. Terminal values are `completed` (processing + * finished — inspect `results` and `exclusions` for per-payroll outcomes) and `failed` (the batch + * crashed at the system level; can be retried). This is distinct from the per-payroll `status` + * returned inside `results[]`. + * + *

    A `completed` batch does not imply every payroll was cancelled. + */ + @JsonIgnore + public PayrollBatchResultsStatus status() { + return status; + } + + /** + * The timestamp when the batch was submitted. + */ + @JsonIgnore + public OffsetDateTime submittedAt() { + return submittedAt; + } + + /** + * The timestamp when the batch processing completed. + */ + @JsonIgnore + public JsonNullable completedAt() { + return completedAt; + } + + /** + * The number of payrolls submitted in the batch. + */ + @JsonIgnore + public JsonNullable submittedItems() { + return submittedItems; + } + + /** + * The number of payrolls processed (cancelled or attempted). Only present once the batch reaches a + * terminal status. + */ + @JsonIgnore + public Optional processedItems() { + return processedItems; + } + + /** + * The number of payrolls excluded from processing. Only present once the batch reaches a terminal + * status. + */ + @JsonIgnore + public Optional excludedItems() { + return excludedItems; + } + + /** + * Per-payroll cancellation results. Only present once the batch reaches a terminal status. One entry + * per authorized payroll. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> results() { + return (Optional>) results; + } + + /** + * Payrolls that could not be processed, determined at submission time. Only present once the batch + * reaches a terminal status. Every UUID submitted in the POST batch appears in exactly one of + * `results` or `exclusions`. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> exclusions() { + return (Optional>) exclusions; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * The unique identifier of the payroll cancellation batch. + */ + public PayrollBatchResults withUuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + /** + * The idempotency key provided when creating the batch. + */ + public PayrollBatchResults withIdempotencyKey(String idempotencyKey) { + Utils.checkNotNull(idempotencyKey, "idempotencyKey"); + this.idempotencyKey = idempotencyKey; + return this; + } + + /** + * The lifecycle status of the batch request itself. Terminal values are `completed` (processing + * finished — inspect `results` and `exclusions` for per-payroll outcomes) and `failed` (the batch + * crashed at the system level; can be retried). This is distinct from the per-payroll `status` + * returned inside `results[]`. + * + *

    A `completed` batch does not imply every payroll was cancelled. + */ + public PayrollBatchResults withStatus(PayrollBatchResultsStatus status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + /** + * The timestamp when the batch was submitted. + */ + public PayrollBatchResults withSubmittedAt(OffsetDateTime submittedAt) { + Utils.checkNotNull(submittedAt, "submittedAt"); + this.submittedAt = submittedAt; + return this; + } + + /** + * The timestamp when the batch processing completed. + */ + public PayrollBatchResults withCompletedAt(OffsetDateTime completedAt) { + Utils.checkNotNull(completedAt, "completedAt"); + this.completedAt = JsonNullable.of(completedAt); + return this; + } + + /** + * The timestamp when the batch processing completed. + */ + public PayrollBatchResults withCompletedAt(JsonNullable completedAt) { + Utils.checkNotNull(completedAt, "completedAt"); + this.completedAt = completedAt; + return this; + } + + /** + * The number of payrolls submitted in the batch. + */ + public PayrollBatchResults withSubmittedItems(long submittedItems) { + Utils.checkNotNull(submittedItems, "submittedItems"); + this.submittedItems = JsonNullable.of(submittedItems); + return this; + } + + /** + * The number of payrolls submitted in the batch. + */ + public PayrollBatchResults withSubmittedItems(JsonNullable submittedItems) { + Utils.checkNotNull(submittedItems, "submittedItems"); + this.submittedItems = submittedItems; + return this; + } + + /** + * The number of payrolls processed (cancelled or attempted). Only present once the batch reaches a + * terminal status. + */ + public PayrollBatchResults withProcessedItems(long processedItems) { + Utils.checkNotNull(processedItems, "processedItems"); + this.processedItems = Optional.ofNullable(processedItems); + return this; + } + + + /** + * The number of payrolls processed (cancelled or attempted). Only present once the batch reaches a + * terminal status. + */ + public PayrollBatchResults withProcessedItems(Optional processedItems) { + Utils.checkNotNull(processedItems, "processedItems"); + this.processedItems = processedItems; + return this; + } + + /** + * The number of payrolls excluded from processing. Only present once the batch reaches a terminal + * status. + */ + public PayrollBatchResults withExcludedItems(long excludedItems) { + Utils.checkNotNull(excludedItems, "excludedItems"); + this.excludedItems = Optional.ofNullable(excludedItems); + return this; + } + + + /** + * The number of payrolls excluded from processing. Only present once the batch reaches a terminal + * status. + */ + public PayrollBatchResults withExcludedItems(Optional excludedItems) { + Utils.checkNotNull(excludedItems, "excludedItems"); + this.excludedItems = excludedItems; + return this; + } + + /** + * Per-payroll cancellation results. Only present once the batch reaches a terminal status. One entry + * per authorized payroll. + */ + public PayrollBatchResults withResults(List results) { + Utils.checkNotNull(results, "results"); + this.results = Optional.ofNullable(results); + return this; + } + + + /** + * Per-payroll cancellation results. Only present once the batch reaches a terminal status. One entry + * per authorized payroll. + */ + public PayrollBatchResults withResults(Optional> results) { + Utils.checkNotNull(results, "results"); + this.results = results; + return this; + } + + /** + * Payrolls that could not be processed, determined at submission time. Only present once the batch + * reaches a terminal status. Every UUID submitted in the POST batch appears in exactly one of + * `results` or `exclusions`. + */ + public PayrollBatchResults withExclusions(List exclusions) { + Utils.checkNotNull(exclusions, "exclusions"); + this.exclusions = Optional.ofNullable(exclusions); + return this; + } + + + /** + * Payrolls that could not be processed, determined at submission time. Only present once the batch + * reaches a terminal status. Every UUID submitted in the POST batch appears in exactly one of + * `results` or `exclusions`. + */ + public PayrollBatchResults withExclusions(Optional> exclusions) { + Utils.checkNotNull(exclusions, "exclusions"); + this.exclusions = exclusions; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PayrollBatchResults other = (PayrollBatchResults) o; + return + Utils.enhancedDeepEquals(this.uuid, other.uuid) && + Utils.enhancedDeepEquals(this.idempotencyKey, other.idempotencyKey) && + Utils.enhancedDeepEquals(this.status, other.status) && + Utils.enhancedDeepEquals(this.submittedAt, other.submittedAt) && + Utils.enhancedDeepEquals(this.completedAt, other.completedAt) && + Utils.enhancedDeepEquals(this.submittedItems, other.submittedItems) && + Utils.enhancedDeepEquals(this.processedItems, other.processedItems) && + Utils.enhancedDeepEquals(this.excludedItems, other.excludedItems) && + Utils.enhancedDeepEquals(this.results, other.results) && + Utils.enhancedDeepEquals(this.exclusions, other.exclusions); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + uuid, idempotencyKey, status, + submittedAt, completedAt, submittedItems, + processedItems, excludedItems, results, + exclusions); + } + + @Override + public String toString() { + return Utils.toString(PayrollBatchResults.class, + "uuid", uuid, + "idempotencyKey", idempotencyKey, + "status", status, + "submittedAt", submittedAt, + "completedAt", completedAt, + "submittedItems", submittedItems, + "processedItems", processedItems, + "excludedItems", excludedItems, + "results", results, + "exclusions", exclusions); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String uuid; + + private String idempotencyKey; + + private PayrollBatchResultsStatus status; + + private OffsetDateTime submittedAt; + + private JsonNullable completedAt = JsonNullable.undefined(); + + private JsonNullable submittedItems = JsonNullable.undefined(); + + private Optional processedItems = Optional.empty(); + + private Optional excludedItems = Optional.empty(); + + private Optional> results = Optional.empty(); + + private Optional> exclusions = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * The unique identifier of the payroll cancellation batch. + */ + public Builder uuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + + /** + * The idempotency key provided when creating the batch. + */ + public Builder idempotencyKey(String idempotencyKey) { + Utils.checkNotNull(idempotencyKey, "idempotencyKey"); + this.idempotencyKey = idempotencyKey; + return this; + } + + + /** + * The lifecycle status of the batch request itself. Terminal values are `completed` (processing + * finished — inspect `results` and `exclusions` for per-payroll outcomes) and `failed` (the batch + * crashed at the system level; can be retried). This is distinct from the per-payroll `status` + * returned inside `results[]`. + * + *

    A `completed` batch does not imply every payroll was cancelled. + */ + public Builder status(PayrollBatchResultsStatus status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + + /** + * The timestamp when the batch was submitted. + */ + public Builder submittedAt(OffsetDateTime submittedAt) { + Utils.checkNotNull(submittedAt, "submittedAt"); + this.submittedAt = submittedAt; + return this; + } + + + /** + * The timestamp when the batch processing completed. + */ + public Builder completedAt(OffsetDateTime completedAt) { + Utils.checkNotNull(completedAt, "completedAt"); + this.completedAt = JsonNullable.of(completedAt); + return this; + } + + /** + * The timestamp when the batch processing completed. + */ + public Builder completedAt(JsonNullable completedAt) { + Utils.checkNotNull(completedAt, "completedAt"); + this.completedAt = completedAt; + return this; + } + + + /** + * The number of payrolls submitted in the batch. + */ + public Builder submittedItems(long submittedItems) { + Utils.checkNotNull(submittedItems, "submittedItems"); + this.submittedItems = JsonNullable.of(submittedItems); + return this; + } + + /** + * The number of payrolls submitted in the batch. + */ + public Builder submittedItems(JsonNullable submittedItems) { + Utils.checkNotNull(submittedItems, "submittedItems"); + this.submittedItems = submittedItems; + return this; + } + + + /** + * The number of payrolls processed (cancelled or attempted). Only present once the batch reaches a + * terminal status. + */ + public Builder processedItems(long processedItems) { + Utils.checkNotNull(processedItems, "processedItems"); + this.processedItems = Optional.ofNullable(processedItems); + return this; + } + + /** + * The number of payrolls processed (cancelled or attempted). Only present once the batch reaches a + * terminal status. + */ + public Builder processedItems(Optional processedItems) { + Utils.checkNotNull(processedItems, "processedItems"); + this.processedItems = processedItems; + return this; + } + + + /** + * The number of payrolls excluded from processing. Only present once the batch reaches a terminal + * status. + */ + public Builder excludedItems(long excludedItems) { + Utils.checkNotNull(excludedItems, "excludedItems"); + this.excludedItems = Optional.ofNullable(excludedItems); + return this; + } + + /** + * The number of payrolls excluded from processing. Only present once the batch reaches a terminal + * status. + */ + public Builder excludedItems(Optional excludedItems) { + Utils.checkNotNull(excludedItems, "excludedItems"); + this.excludedItems = excludedItems; + return this; + } + + + /** + * Per-payroll cancellation results. Only present once the batch reaches a terminal status. One entry + * per authorized payroll. + */ + public Builder results(List results) { + Utils.checkNotNull(results, "results"); + this.results = Optional.ofNullable(results); + return this; + } + + /** + * Per-payroll cancellation results. Only present once the batch reaches a terminal status. One entry + * per authorized payroll. + */ + public Builder results(Optional> results) { + Utils.checkNotNull(results, "results"); + this.results = results; + return this; + } + + + /** + * Payrolls that could not be processed, determined at submission time. Only present once the batch + * reaches a terminal status. Every UUID submitted in the POST batch appears in exactly one of + * `results` or `exclusions`. + */ + public Builder exclusions(List exclusions) { + Utils.checkNotNull(exclusions, "exclusions"); + this.exclusions = Optional.ofNullable(exclusions); + return this; + } + + /** + * Payrolls that could not be processed, determined at submission time. Only present once the batch + * reaches a terminal status. Every UUID submitted in the POST batch appears in exactly one of + * `results` or `exclusions`. + */ + public Builder exclusions(Optional> exclusions) { + Utils.checkNotNull(exclusions, "exclusions"); + this.exclusions = exclusions; + return this; + } + + public PayrollBatchResults build() { + + return new PayrollBatchResults( + uuid, idempotencyKey, status, + submittedAt, completedAt, submittedItems, + processedItems, excludedItems, results, + exclusions); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollBatchResultsCategory.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollBatchResultsCategory.java new file mode 100644 index 000000000..cf68e19f9 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollBatchResultsCategory.java @@ -0,0 +1,44 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollBatchResultsCategory + * + *

    Machine-readable category for why the payroll was excluded. + * - `not_found`: the payroll does not exist, or is not associated with a company the partner is mapped + * to + * - `duplicate_operation`: the same payroll UUID appeared more than once in the request; only the + * first occurrence is processed + */ +public enum PayrollBatchResultsCategory { + NOT_FOUND("not_found"), + DUPLICATE_OPERATION("duplicate_operation"); + + @JsonValue + private final String value; + + PayrollBatchResultsCategory(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollBatchResultsCategory o: PayrollBatchResultsCategory.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollBatchResultsEntityType.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollBatchResultsEntityType.java new file mode 100644 index 000000000..a3654ea41 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollBatchResultsEntityType.java @@ -0,0 +1,39 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollBatchResultsEntityType + * + *

    The type of entity this exclusion represents. + */ +public enum PayrollBatchResultsEntityType { + PAYROLL("payroll"); + + @JsonValue + private final String value; + + PayrollBatchResultsEntityType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollBatchResultsEntityType o: PayrollBatchResultsEntityType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollBatchResultsErrors.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollBatchResultsErrors.java new file mode 100644 index 000000000..4031e16a7 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollBatchResultsErrors.java @@ -0,0 +1,262 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class PayrollBatchResultsErrors { + /** + * The key identifying the error source. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("error_key") + private Optional errorKey; + + /** + * Machine-readable reason the cancellation failed. + * - `not_cancellable`: the payroll is past the point where it can be cancelled + * - `internal_error`: an unexpected error occurred; the request can be retried + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("category") + private Optional category; + + /** + * Human-readable explanation of the failure. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("message") + private Optional message; + + @JsonCreator + public PayrollBatchResultsErrors( + @JsonProperty("error_key") Optional errorKey, + @JsonProperty("category") Optional category, + @JsonProperty("message") Optional message) { + Utils.checkNotNull(errorKey, "errorKey"); + Utils.checkNotNull(category, "category"); + Utils.checkNotNull(message, "message"); + this.errorKey = errorKey; + this.category = category; + this.message = message; + } + + public PayrollBatchResultsErrors() { + this(Optional.empty(), Optional.empty(), Optional.empty()); + } + + /** + * The key identifying the error source. + */ + @JsonIgnore + public Optional errorKey() { + return errorKey; + } + + /** + * Machine-readable reason the cancellation failed. + * - `not_cancellable`: the payroll is past the point where it can be cancelled + * - `internal_error`: an unexpected error occurred; the request can be retried + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional category() { + return (Optional) category; + } + + /** + * Human-readable explanation of the failure. + */ + @JsonIgnore + public Optional message() { + return message; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * The key identifying the error source. + */ + public PayrollBatchResultsErrors withErrorKey(String errorKey) { + Utils.checkNotNull(errorKey, "errorKey"); + this.errorKey = Optional.ofNullable(errorKey); + return this; + } + + + /** + * The key identifying the error source. + */ + public PayrollBatchResultsErrors withErrorKey(Optional errorKey) { + Utils.checkNotNull(errorKey, "errorKey"); + this.errorKey = errorKey; + return this; + } + + /** + * Machine-readable reason the cancellation failed. + * - `not_cancellable`: the payroll is past the point where it can be cancelled + * - `internal_error`: an unexpected error occurred; the request can be retried + */ + public PayrollBatchResultsErrors withCategory(PayrollBatchResultsResultsCategory category) { + Utils.checkNotNull(category, "category"); + this.category = Optional.ofNullable(category); + return this; + } + + + /** + * Machine-readable reason the cancellation failed. + * - `not_cancellable`: the payroll is past the point where it can be cancelled + * - `internal_error`: an unexpected error occurred; the request can be retried + */ + public PayrollBatchResultsErrors withCategory(Optional category) { + Utils.checkNotNull(category, "category"); + this.category = category; + return this; + } + + /** + * Human-readable explanation of the failure. + */ + public PayrollBatchResultsErrors withMessage(String message) { + Utils.checkNotNull(message, "message"); + this.message = Optional.ofNullable(message); + return this; + } + + + /** + * Human-readable explanation of the failure. + */ + public PayrollBatchResultsErrors withMessage(Optional message) { + Utils.checkNotNull(message, "message"); + this.message = message; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PayrollBatchResultsErrors other = (PayrollBatchResultsErrors) o; + return + Utils.enhancedDeepEquals(this.errorKey, other.errorKey) && + Utils.enhancedDeepEquals(this.category, other.category) && + Utils.enhancedDeepEquals(this.message, other.message); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + errorKey, category, message); + } + + @Override + public String toString() { + return Utils.toString(PayrollBatchResultsErrors.class, + "errorKey", errorKey, + "category", category, + "message", message); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional errorKey = Optional.empty(); + + private Optional category = Optional.empty(); + + private Optional message = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * The key identifying the error source. + */ + public Builder errorKey(String errorKey) { + Utils.checkNotNull(errorKey, "errorKey"); + this.errorKey = Optional.ofNullable(errorKey); + return this; + } + + /** + * The key identifying the error source. + */ + public Builder errorKey(Optional errorKey) { + Utils.checkNotNull(errorKey, "errorKey"); + this.errorKey = errorKey; + return this; + } + + + /** + * Machine-readable reason the cancellation failed. + * - `not_cancellable`: the payroll is past the point where it can be cancelled + * - `internal_error`: an unexpected error occurred; the request can be retried + */ + public Builder category(PayrollBatchResultsResultsCategory category) { + Utils.checkNotNull(category, "category"); + this.category = Optional.ofNullable(category); + return this; + } + + /** + * Machine-readable reason the cancellation failed. + * - `not_cancellable`: the payroll is past the point where it can be cancelled + * - `internal_error`: an unexpected error occurred; the request can be retried + */ + public Builder category(Optional category) { + Utils.checkNotNull(category, "category"); + this.category = category; + return this; + } + + + /** + * Human-readable explanation of the failure. + */ + public Builder message(String message) { + Utils.checkNotNull(message, "message"); + this.message = Optional.ofNullable(message); + return this; + } + + /** + * Human-readable explanation of the failure. + */ + public Builder message(Optional message) { + Utils.checkNotNull(message, "message"); + this.message = message; + return this; + } + + public PayrollBatchResultsErrors build() { + + return new PayrollBatchResultsErrors( + errorKey, category, message); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollBatchResultsExclusionsStatus.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollBatchResultsExclusionsStatus.java new file mode 100644 index 000000000..d1a749932 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollBatchResultsExclusionsStatus.java @@ -0,0 +1,39 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollBatchResultsExclusionsStatus + * + *

    Always `failed` for an excluded payroll. + */ +public enum PayrollBatchResultsExclusionsStatus { + FAILED("failed"); + + @JsonValue + private final String value; + + PayrollBatchResultsExclusionsStatus(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollBatchResultsExclusionsStatus o: PayrollBatchResultsExclusionsStatus.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollBatchResultsResultsCategory.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollBatchResultsResultsCategory.java new file mode 100644 index 000000000..cd05663f0 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollBatchResultsResultsCategory.java @@ -0,0 +1,42 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollBatchResultsResultsCategory + * + *

    Machine-readable reason the cancellation failed. + * - `not_cancellable`: the payroll is past the point where it can be cancelled + * - `internal_error`: an unexpected error occurred; the request can be retried + */ +public enum PayrollBatchResultsResultsCategory { + NOT_CANCELLABLE("not_cancellable"), + INTERNAL_ERROR("internal_error"); + + @JsonValue + private final String value; + + PayrollBatchResultsResultsCategory(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollBatchResultsResultsCategory o: PayrollBatchResultsResultsCategory.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollBatchResultsResultsStatus.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollBatchResultsResultsStatus.java new file mode 100644 index 000000000..c712fdde2 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollBatchResultsResultsStatus.java @@ -0,0 +1,43 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollBatchResultsResultsStatus + * + *

    The outcome of cancelling this payroll. A cancel is atomic — there is no per-payroll + * `partial_success`. + * - `success`: the payroll was cancelled, or required no action (already cancelled / never run) + * - `failed`: the payroll could not be cancelled; see `errors` + */ +public enum PayrollBatchResultsResultsStatus { + SUCCESS("success"), + FAILED("failed"); + + @JsonValue + private final String value; + + PayrollBatchResultsResultsStatus(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollBatchResultsResultsStatus o: PayrollBatchResultsResultsStatus.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollBatchResultsStatus.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollBatchResultsStatus.java new file mode 100644 index 000000000..9dfa7db2b --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollBatchResultsStatus.java @@ -0,0 +1,47 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollBatchResultsStatus + * + *

    The lifecycle status of the batch request itself. Terminal values are `completed` (processing + * finished — inspect `results` and `exclusions` for per-payroll outcomes) and `failed` (the batch + * crashed at the system level; can be retried). This is distinct from the per-payroll `status` + * returned inside `results[]`. + * + *

    A `completed` batch does not imply every payroll was cancelled. + */ +public enum PayrollBatchResultsStatus { + PENDING("pending"), + PROCESSING("processing"), + COMPLETED("completed"), + FAILED("failed"); + + @JsonValue + private final String value; + + PayrollBatchResultsStatus(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollBatchResultsStatus o: PayrollBatchResultsStatus.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollBatchStatus.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollBatchStatus.java new file mode 100644 index 000000000..cdfcfb4bd --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollBatchStatus.java @@ -0,0 +1,47 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollBatchStatus + * + *

    The lifecycle status of the batch request itself. Terminal values are `completed` (processing + * finished — inspect `results` and `exclusions` for per-payroll outcomes) and `failed` (the batch + * crashed at the system level; can be retried). This is distinct from the per-payroll `status` + * returned inside `results[]`. + * + *

    A `completed` batch does not imply every payroll was cancelled. + */ +public enum PayrollBatchStatus { + PENDING("pending"), + PROCESSING("processing"), + COMPLETED("completed"), + FAILED("failed"); + + @JsonValue + private final String value; + + PayrollBatchStatus(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollBatchStatus o: PayrollBatchStatus.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollDigest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollDigest.java index 44917f8bb..99b5a9c1a 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollDigest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollDigest.java @@ -32,7 +32,7 @@ public class PayrollDigest { * The action being performed on the batch. */ @JsonProperty("batch_action") - private BatchAction batchAction; + private PayrollDigestBatchAction batchAction; /** * The lifecycle status of the batch request itself. Terminal values are `completed` (processing @@ -47,7 +47,7 @@ public class PayrollDigest { public PayrollDigest( @JsonProperty("uuid") String uuid, @JsonProperty("idempotency_key") String idempotencyKey, - @JsonProperty("batch_action") BatchAction batchAction, + @JsonProperty("batch_action") PayrollDigestBatchAction batchAction, @JsonProperty("status") PayrollDigestStatus status) { Utils.checkNotNull(uuid, "uuid"); Utils.checkNotNull(idempotencyKey, "idempotencyKey"); @@ -79,7 +79,7 @@ public String idempotencyKey() { * The action being performed on the batch. */ @JsonIgnore - public BatchAction batchAction() { + public PayrollDigestBatchAction batchAction() { return batchAction; } @@ -120,7 +120,7 @@ public PayrollDigest withIdempotencyKey(String idempotencyKey) { /** * The action being performed on the batch. */ - public PayrollDigest withBatchAction(BatchAction batchAction) { + public PayrollDigest withBatchAction(PayrollDigestBatchAction batchAction) { Utils.checkNotNull(batchAction, "batchAction"); this.batchAction = batchAction; return this; @@ -177,7 +177,7 @@ public final static class Builder { private String idempotencyKey; - private BatchAction batchAction; + private PayrollDigestBatchAction batchAction; private PayrollDigestStatus status; @@ -209,7 +209,7 @@ public Builder idempotencyKey(String idempotencyKey) { /** * The action being performed on the batch. */ - public Builder batchAction(BatchAction batchAction) { + public Builder batchAction(PayrollDigestBatchAction batchAction) { Utils.checkNotNull(batchAction, "batchAction"); this.batchAction = batchAction; return this; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollDigestBatchAction.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollDigestBatchAction.java new file mode 100644 index 000000000..dc715c67e --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollDigestBatchAction.java @@ -0,0 +1,39 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollDigestBatchAction + * + *

    The action being performed on the batch. + */ +public enum PayrollDigestBatchAction { + CREATE("create"); + + @JsonValue + private final String value; + + PayrollDigestBatchAction(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollDigestBatchAction o: PayrollDigestBatchAction.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollDigestResultsBlockers.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollDigestResultsBlockers.java new file mode 100644 index 000000000..327447225 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollDigestResultsBlockers.java @@ -0,0 +1,188 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.util.Optional; + + +public class PayrollDigestResultsBlockers { + /** + * A machine-readable blocker key (e.g. `missing_bank_account`). + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("type") + private Optional type; + + /** + * Human-readable description of the blocker. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("description") + private Optional description; + + @JsonCreator + public PayrollDigestResultsBlockers( + @JsonProperty("type") Optional type, + @JsonProperty("description") Optional description) { + Utils.checkNotNull(type, "type"); + Utils.checkNotNull(description, "description"); + this.type = type; + this.description = description; + } + + public PayrollDigestResultsBlockers() { + this(Optional.empty(), Optional.empty()); + } + + /** + * A machine-readable blocker key (e.g. `missing_bank_account`). + */ + @JsonIgnore + public Optional type() { + return type; + } + + /** + * Human-readable description of the blocker. + */ + @JsonIgnore + public Optional description() { + return description; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * A machine-readable blocker key (e.g. `missing_bank_account`). + */ + public PayrollDigestResultsBlockers withType(String type) { + Utils.checkNotNull(type, "type"); + this.type = Optional.ofNullable(type); + return this; + } + + + /** + * A machine-readable blocker key (e.g. `missing_bank_account`). + */ + public PayrollDigestResultsBlockers withType(Optional type) { + Utils.checkNotNull(type, "type"); + this.type = type; + return this; + } + + /** + * Human-readable description of the blocker. + */ + public PayrollDigestResultsBlockers withDescription(String description) { + Utils.checkNotNull(description, "description"); + this.description = Optional.ofNullable(description); + return this; + } + + + /** + * Human-readable description of the blocker. + */ + public PayrollDigestResultsBlockers withDescription(Optional description) { + Utils.checkNotNull(description, "description"); + this.description = description; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PayrollDigestResultsBlockers other = (PayrollDigestResultsBlockers) o; + return + Utils.enhancedDeepEquals(this.type, other.type) && + Utils.enhancedDeepEquals(this.description, other.description); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + type, description); + } + + @Override + public String toString() { + return Utils.toString(PayrollDigestResultsBlockers.class, + "type", type, + "description", description); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional type = Optional.empty(); + + private Optional description = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * A machine-readable blocker key (e.g. `missing_bank_account`). + */ + public Builder type(String type) { + Utils.checkNotNull(type, "type"); + this.type = Optional.ofNullable(type); + return this; + } + + /** + * A machine-readable blocker key (e.g. `missing_bank_account`). + */ + public Builder type(Optional type) { + Utils.checkNotNull(type, "type"); + this.type = type; + return this; + } + + + /** + * Human-readable description of the blocker. + */ + public Builder description(String description) { + Utils.checkNotNull(description, "description"); + this.description = Optional.ofNullable(description); + return this; + } + + /** + * Human-readable description of the blocker. + */ + public Builder description(Optional description) { + Utils.checkNotNull(description, "description"); + this.description = description; + return this; + } + + public PayrollDigestResultsBlockers build() { + + return new PayrollDigestResultsBlockers( + type, description); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollDigestResultsResults.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollDigestResultsResults.java index 5497b3d43..dd49088c1 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollDigestResultsResults.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollDigestResultsResults.java @@ -60,7 +60,7 @@ public class PayrollDigestResultsResults { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("blockers") - private Optional> blockers; + private Optional> blockers; /** * Payrolls for this company within the digest date window (7 days past, 30–60 days future). May be @@ -77,7 +77,7 @@ public PayrollDigestResultsResults( @JsonProperty("uuid") Optional uuid, @JsonProperty("name") Optional name, @JsonProperty("status") Optional status, - @JsonProperty("blockers") Optional> blockers, + @JsonProperty("blockers") Optional> blockers, @JsonProperty("payrolls") Optional> payrolls) { Utils.checkNotNull(idx, "idx"); Utils.checkNotNull(entityType, "entityType"); @@ -150,8 +150,8 @@ public Optional status() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional> blockers() { - return (Optional>) blockers; + public Optional> blockers() { + return (Optional>) blockers; } /** @@ -269,7 +269,7 @@ public PayrollDigestResultsResults withStatus(Optional blockers) { + public PayrollDigestResultsResults withBlockers(List blockers) { Utils.checkNotNull(blockers, "blockers"); this.blockers = Optional.ofNullable(blockers); return this; @@ -281,7 +281,7 @@ public PayrollDigestResultsResults withBlockers(List blockers) { * `payrolls` array — blockers are evaluated at the company level, not per payroll. Empty when there * are no blockers. */ - public PayrollDigestResultsResults withBlockers(Optional> blockers) { + public PayrollDigestResultsResults withBlockers(Optional> blockers) { Utils.checkNotNull(blockers, "blockers"); this.blockers = blockers; return this; @@ -360,7 +360,7 @@ public final static class Builder { private Optional status = Optional.empty(); - private Optional> blockers = Optional.empty(); + private Optional> blockers = Optional.empty(); private Optional> payrolls = Optional.empty(); @@ -469,7 +469,7 @@ public Builder status(Optional stat * `payrolls` array — blockers are evaluated at the company level, not per payroll. Empty when there * are no blockers. */ - public Builder blockers(List blockers) { + public Builder blockers(List blockers) { Utils.checkNotNull(blockers, "blockers"); this.blockers = Optional.ofNullable(blockers); return this; @@ -480,7 +480,7 @@ public Builder blockers(List blockers) { * `payrolls` array — blockers are evaluated at the company level, not per payroll. Empty when there * are no blockers. */ - public Builder blockers(Optional> blockers) { + public Builder blockers(Optional> blockers) { Utils.checkNotNull(blockers, "blockers"); this.blockers = blockers; return this; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollEmployeeCompensationsType.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollEmployeeCompensationsType.java index 781831dbf..ed703694b 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollEmployeeCompensationsType.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollEmployeeCompensationsType.java @@ -97,15 +97,16 @@ public class PayrollEmployeeCompensationsType { private JsonNullable memo; /** - * An array of fixed compensations for the employee. Fixed compensations include tips, bonuses, and one - * time reimbursements. If this payroll has been processed, only fixed compensations with a value - * greater than 0.00 are returned. + * An array of fixed compensations for the employee. Fixed compensations include tips and bonuses. On + * regular payrolls, reimbursements are sent via the dedicated `reimbursements` array instead. * - *

    For an unprocessed payroll, all active fixed compensations are returned. + *

    Off-cycle payrolls continue to include reimbursements in `fixed_compensations`. If this payroll has + * been processed, only fixed compensations with a value greater than 0.00 are returned. For an + * unprocessed payroll, all active fixed compensations are returned. */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("fixed_compensations") - private Optional> fixedCompensations; + private Optional> fixedCompensations; /** * An array of hourly compensations for the employee. Hourly compensations include regular, overtime, @@ -116,7 +117,7 @@ public class PayrollEmployeeCompensationsType { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("hourly_compensations") - private Optional> hourlyCompensations; + private Optional> hourlyCompensations; /** * An array of all paid time off the employee is eligible for this pay period. @@ -130,7 +131,16 @@ public class PayrollEmployeeCompensationsType { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("reimbursements") - private Optional> reimbursements; + private Optional> reimbursements; + + /** + * The one-time custom withholding overrides applied to this payroll for this employee. + * `federal` is null when no federal one-time override is set; `state` is an empty + * array when no state one-time overrides are set. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("custom_withholdings") + private Optional customWithholdings; /** * The current version of this employee compensation. This field is only available for prepared @@ -161,10 +171,11 @@ public PayrollEmployeeCompensationsType( @JsonProperty("check_amount") JsonNullable checkAmount, @JsonProperty("payment_method") JsonNullable paymentMethod, @JsonProperty("memo") JsonNullable memo, - @JsonProperty("fixed_compensations") Optional> fixedCompensations, - @JsonProperty("hourly_compensations") Optional> hourlyCompensations, + @JsonProperty("fixed_compensations") Optional> fixedCompensations, + @JsonProperty("hourly_compensations") Optional> hourlyCompensations, @JsonProperty("paid_time_off") Optional> paidTimeOff, - @JsonProperty("reimbursements") Optional> reimbursements, + @JsonProperty("reimbursements") Optional> reimbursements, + @JsonProperty("custom_withholdings") Optional customWithholdings, @JsonProperty("version") Optional version, @JsonProperty("deductions") Optional> deductions) { Utils.checkNotNull(employeeUuid, "employeeUuid"); @@ -181,6 +192,7 @@ public PayrollEmployeeCompensationsType( Utils.checkNotNull(hourlyCompensations, "hourlyCompensations"); Utils.checkNotNull(paidTimeOff, "paidTimeOff"); Utils.checkNotNull(reimbursements, "reimbursements"); + Utils.checkNotNull(customWithholdings, "customWithholdings"); Utils.checkNotNull(version, "version"); Utils.checkNotNull(deductions, "deductions"); this.employeeUuid = employeeUuid; @@ -197,6 +209,7 @@ public PayrollEmployeeCompensationsType( this.hourlyCompensations = hourlyCompensations; this.paidTimeOff = paidTimeOff; this.reimbursements = reimbursements; + this.customWithholdings = customWithholdings; this.version = version; this.deductions = deductions; } @@ -207,7 +220,7 @@ public PayrollEmployeeCompensationsType() { JsonNullable.undefined(), JsonNullable.undefined(), JsonNullable.undefined(), JsonNullable.undefined(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), - Optional.empty()); + Optional.empty(), Optional.empty()); } /** @@ -297,16 +310,17 @@ public JsonNullable memo() { } /** - * An array of fixed compensations for the employee. Fixed compensations include tips, bonuses, and one - * time reimbursements. If this payroll has been processed, only fixed compensations with a value - * greater than 0.00 are returned. + * An array of fixed compensations for the employee. Fixed compensations include tips and bonuses. On + * regular payrolls, reimbursements are sent via the dedicated `reimbursements` array instead. * - *

    For an unprocessed payroll, all active fixed compensations are returned. + *

    Off-cycle payrolls continue to include reimbursements in `fixed_compensations`. If this payroll has + * been processed, only fixed compensations with a value greater than 0.00 are returned. For an + * unprocessed payroll, all active fixed compensations are returned. */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional> fixedCompensations() { - return (Optional>) fixedCompensations; + public Optional> fixedCompensations() { + return (Optional>) fixedCompensations; } /** @@ -318,8 +332,8 @@ public Optional> fixedC */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional> hourlyCompensations() { - return (Optional>) hourlyCompensations; + public Optional> hourlyCompensations() { + return (Optional>) hourlyCompensations; } /** @@ -336,8 +350,19 @@ public Optional> paidTimeOff() */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional> reimbursements() { - return (Optional>) reimbursements; + public Optional> reimbursements() { + return (Optional>) reimbursements; + } + + /** + * The one-time custom withholding overrides applied to this payroll for this employee. + * `federal` is null when no federal one-time override is set; `state` is an empty + * array when no state one-time overrides are set. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional customWithholdings() { + return (Optional) customWithholdings; } /** @@ -559,13 +584,14 @@ public PayrollEmployeeCompensationsType withMemo(JsonNullable memo) { } /** - * An array of fixed compensations for the employee. Fixed compensations include tips, bonuses, and one - * time reimbursements. If this payroll has been processed, only fixed compensations with a value - * greater than 0.00 are returned. + * An array of fixed compensations for the employee. Fixed compensations include tips and bonuses. On + * regular payrolls, reimbursements are sent via the dedicated `reimbursements` array instead. * - *

    For an unprocessed payroll, all active fixed compensations are returned. + *

    Off-cycle payrolls continue to include reimbursements in `fixed_compensations`. If this payroll has + * been processed, only fixed compensations with a value greater than 0.00 are returned. For an + * unprocessed payroll, all active fixed compensations are returned. */ - public PayrollEmployeeCompensationsType withFixedCompensations(List fixedCompensations) { + public PayrollEmployeeCompensationsType withFixedCompensations(List fixedCompensations) { Utils.checkNotNull(fixedCompensations, "fixedCompensations"); this.fixedCompensations = Optional.ofNullable(fixedCompensations); return this; @@ -573,13 +599,14 @@ public PayrollEmployeeCompensationsType withFixedCompensations(ListFor an unprocessed payroll, all active fixed compensations are returned. + *

    Off-cycle payrolls continue to include reimbursements in `fixed_compensations`. If this payroll has + * been processed, only fixed compensations with a value greater than 0.00 are returned. For an + * unprocessed payroll, all active fixed compensations are returned. */ - public PayrollEmployeeCompensationsType withFixedCompensations(Optional> fixedCompensations) { + public PayrollEmployeeCompensationsType withFixedCompensations(Optional> fixedCompensations) { Utils.checkNotNull(fixedCompensations, "fixedCompensations"); this.fixedCompensations = fixedCompensations; return this; @@ -592,7 +619,7 @@ public PayrollEmployeeCompensationsType withFixedCompensations(OptionalFor an unprocessed payroll, all active hourly compensations are returned. */ - public PayrollEmployeeCompensationsType withHourlyCompensations(List hourlyCompensations) { + public PayrollEmployeeCompensationsType withHourlyCompensations(List hourlyCompensations) { Utils.checkNotNull(hourlyCompensations, "hourlyCompensations"); this.hourlyCompensations = Optional.ofNullable(hourlyCompensations); return this; @@ -606,7 +633,7 @@ public PayrollEmployeeCompensationsType withHourlyCompensations(ListFor an unprocessed payroll, all active hourly compensations are returned. */ - public PayrollEmployeeCompensationsType withHourlyCompensations(Optional> hourlyCompensations) { + public PayrollEmployeeCompensationsType withHourlyCompensations(Optional> hourlyCompensations) { Utils.checkNotNull(hourlyCompensations, "hourlyCompensations"); this.hourlyCompensations = hourlyCompensations; return this; @@ -634,7 +661,7 @@ public PayrollEmployeeCompensationsType withPaidTimeOff(Optional reimbursements) { + public PayrollEmployeeCompensationsType withReimbursements(List reimbursements) { Utils.checkNotNull(reimbursements, "reimbursements"); this.reimbursements = Optional.ofNullable(reimbursements); return this; @@ -644,12 +671,35 @@ public PayrollEmployeeCompensationsType withReimbursements(List> reimbursements) { + public PayrollEmployeeCompensationsType withReimbursements(Optional> reimbursements) { Utils.checkNotNull(reimbursements, "reimbursements"); this.reimbursements = reimbursements; return this; } + /** + * The one-time custom withholding overrides applied to this payroll for this employee. + * `federal` is null when no federal one-time override is set; `state` is an empty + * array when no state one-time overrides are set. + */ + public PayrollEmployeeCompensationsType withCustomWithholdings(CustomWithholdings customWithholdings) { + Utils.checkNotNull(customWithholdings, "customWithholdings"); + this.customWithholdings = Optional.ofNullable(customWithholdings); + return this; + } + + + /** + * The one-time custom withholding overrides applied to this payroll for this employee. + * `federal` is null when no federal one-time override is set; `state` is an empty + * array when no state one-time overrides are set. + */ + public PayrollEmployeeCompensationsType withCustomWithholdings(Optional customWithholdings) { + Utils.checkNotNull(customWithholdings, "customWithholdings"); + this.customWithholdings = customWithholdings; + return this; + } + /** * The current version of this employee compensation. This field is only available for prepared * payrolls. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for @@ -718,6 +768,7 @@ public boolean equals(java.lang.Object o) { Utils.enhancedDeepEquals(this.hourlyCompensations, other.hourlyCompensations) && Utils.enhancedDeepEquals(this.paidTimeOff, other.paidTimeOff) && Utils.enhancedDeepEquals(this.reimbursements, other.reimbursements) && + Utils.enhancedDeepEquals(this.customWithholdings, other.customWithholdings) && Utils.enhancedDeepEquals(this.version, other.version) && Utils.enhancedDeepEquals(this.deductions, other.deductions); } @@ -729,8 +780,8 @@ public int hashCode() { preferredFirstName, lastName, grossPay, netPay, checkAmount, paymentMethod, memo, fixedCompensations, hourlyCompensations, - paidTimeOff, reimbursements, version, - deductions); + paidTimeOff, reimbursements, customWithholdings, + version, deductions); } @Override @@ -750,6 +801,7 @@ public String toString() { "hourlyCompensations", hourlyCompensations, "paidTimeOff", paidTimeOff, "reimbursements", reimbursements, + "customWithholdings", customWithholdings, "version", version, "deductions", deductions); } @@ -777,13 +829,15 @@ public final static class Builder { private JsonNullable memo = JsonNullable.undefined(); - private Optional> fixedCompensations = Optional.empty(); + private Optional> fixedCompensations = Optional.empty(); - private Optional> hourlyCompensations = Optional.empty(); + private Optional> hourlyCompensations = Optional.empty(); private Optional> paidTimeOff = Optional.empty(); - private Optional> reimbursements = Optional.empty(); + private Optional> reimbursements = Optional.empty(); + + private Optional customWithholdings = Optional.empty(); private Optional version = Optional.empty(); @@ -995,26 +1049,28 @@ public Builder memo(JsonNullable memo) { /** - * An array of fixed compensations for the employee. Fixed compensations include tips, bonuses, and one - * time reimbursements. If this payroll has been processed, only fixed compensations with a value - * greater than 0.00 are returned. + * An array of fixed compensations for the employee. Fixed compensations include tips and bonuses. On + * regular payrolls, reimbursements are sent via the dedicated `reimbursements` array instead. * - *

    For an unprocessed payroll, all active fixed compensations are returned. + *

    Off-cycle payrolls continue to include reimbursements in `fixed_compensations`. If this payroll has + * been processed, only fixed compensations with a value greater than 0.00 are returned. For an + * unprocessed payroll, all active fixed compensations are returned. */ - public Builder fixedCompensations(List fixedCompensations) { + public Builder fixedCompensations(List fixedCompensations) { Utils.checkNotNull(fixedCompensations, "fixedCompensations"); this.fixedCompensations = Optional.ofNullable(fixedCompensations); return this; } /** - * An array of fixed compensations for the employee. Fixed compensations include tips, bonuses, and one - * time reimbursements. If this payroll has been processed, only fixed compensations with a value - * greater than 0.00 are returned. + * An array of fixed compensations for the employee. Fixed compensations include tips and bonuses. On + * regular payrolls, reimbursements are sent via the dedicated `reimbursements` array instead. * - *

    For an unprocessed payroll, all active fixed compensations are returned. + *

    Off-cycle payrolls continue to include reimbursements in `fixed_compensations`. If this payroll has + * been processed, only fixed compensations with a value greater than 0.00 are returned. For an + * unprocessed payroll, all active fixed compensations are returned. */ - public Builder fixedCompensations(Optional> fixedCompensations) { + public Builder fixedCompensations(Optional> fixedCompensations) { Utils.checkNotNull(fixedCompensations, "fixedCompensations"); this.fixedCompensations = fixedCompensations; return this; @@ -1028,7 +1084,7 @@ public Builder fixedCompensations(OptionalFor an unprocessed payroll, all active hourly compensations are returned. */ - public Builder hourlyCompensations(List hourlyCompensations) { + public Builder hourlyCompensations(List hourlyCompensations) { Utils.checkNotNull(hourlyCompensations, "hourlyCompensations"); this.hourlyCompensations = Optional.ofNullable(hourlyCompensations); return this; @@ -1041,7 +1097,7 @@ public Builder hourlyCompensations(ListFor an unprocessed payroll, all active hourly compensations are returned. */ - public Builder hourlyCompensations(Optional> hourlyCompensations) { + public Builder hourlyCompensations(Optional> hourlyCompensations) { Utils.checkNotNull(hourlyCompensations, "hourlyCompensations"); this.hourlyCompensations = hourlyCompensations; return this; @@ -1070,7 +1126,7 @@ public Builder paidTimeOff(Optional reimbursements) { + public Builder reimbursements(List reimbursements) { Utils.checkNotNull(reimbursements, "reimbursements"); this.reimbursements = Optional.ofNullable(reimbursements); return this; @@ -1079,13 +1135,36 @@ public Builder reimbursements(List> reimbursements) { + public Builder reimbursements(Optional> reimbursements) { Utils.checkNotNull(reimbursements, "reimbursements"); this.reimbursements = reimbursements; return this; } + /** + * The one-time custom withholding overrides applied to this payroll for this employee. + * `federal` is null when no federal one-time override is set; `state` is an empty + * array when no state one-time overrides are set. + */ + public Builder customWithholdings(CustomWithholdings customWithholdings) { + Utils.checkNotNull(customWithholdings, "customWithholdings"); + this.customWithholdings = Optional.ofNullable(customWithholdings); + return this; + } + + /** + * The one-time custom withholding overrides applied to this payroll for this employee. + * `federal` is null when no federal one-time override is set; `state` is an empty + * array when no state one-time overrides are set. + */ + public Builder customWithholdings(Optional customWithholdings) { + Utils.checkNotNull(customWithholdings, "customWithholdings"); + this.customWithholdings = customWithholdings; + return this; + } + + /** * The current version of this employee compensation. This field is only available for prepared * payrolls. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for @@ -1136,8 +1215,8 @@ public PayrollEmployeeCompensationsType build() { preferredFirstName, lastName, grossPay, netPay, checkAmount, paymentMethod, memo, fixedCompensations, hourlyCompensations, - paidTimeOff, reimbursements, version, - deductions); + paidTimeOff, reimbursements, customWithholdings, + version, deductions); } } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollEmployeeCompensationsTypeAmountType.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollEmployeeCompensationsTypeAmountType.java new file mode 100644 index 000000000..765a1d5b8 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollEmployeeCompensationsTypeAmountType.java @@ -0,0 +1,40 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollEmployeeCompensationsTypeAmountType + * + *

    How to interpret the amount. + */ +public enum PayrollEmployeeCompensationsTypeAmountType { + FIXED("fixed"), + PERCENT("percent"); + + @JsonValue + private final String value; + + PayrollEmployeeCompensationsTypeAmountType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollEmployeeCompensationsTypeAmountType o: PayrollEmployeeCompensationsTypeAmountType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollEmployeeCompensationsTypeCustomWithholdingsAmountType.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollEmployeeCompensationsTypeCustomWithholdingsAmountType.java new file mode 100644 index 000000000..76a1fa6e6 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollEmployeeCompensationsTypeCustomWithholdingsAmountType.java @@ -0,0 +1,40 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollEmployeeCompensationsTypeCustomWithholdingsAmountType + * + *

    How to interpret the amount. + */ +public enum PayrollEmployeeCompensationsTypeCustomWithholdingsAmountType { + FIXED("fixed"), + PERCENT("percent"); + + @JsonValue + private final String value; + + PayrollEmployeeCompensationsTypeCustomWithholdingsAmountType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollEmployeeCompensationsTypeCustomWithholdingsAmountType o: PayrollEmployeeCompensationsTypeCustomWithholdingsAmountType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollEmployeeCompensationsTypeOverrideType.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollEmployeeCompensationsTypeOverrideType.java new file mode 100644 index 000000000..5c75838e5 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollEmployeeCompensationsTypeOverrideType.java @@ -0,0 +1,39 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollEmployeeCompensationsTypeOverrideType + * + *

    Override mode. Only `one_time` is currently exposed. + */ +public enum PayrollEmployeeCompensationsTypeOverrideType { + ONE_TIME("one_time"); + + @JsonValue + private final String value; + + PayrollEmployeeCompensationsTypeOverrideType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollEmployeeCompensationsTypeOverrideType o: PayrollEmployeeCompensationsTypeOverrideType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollReceipt.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollReceipt.java index e7537d64f..2b8450c2a 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollReceipt.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollReceipt.java @@ -92,7 +92,7 @@ public class PayrollReceipt { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("totals") - private Optional totals; + private Optional totals; /** * An array of totaled employer and employee taxes for the pay period. @@ -113,7 +113,7 @@ public class PayrollReceipt { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("licensee") - private Optional licensee; + private Optional licensee; @JsonCreator public PayrollReceipt( @@ -127,10 +127,10 @@ public PayrollReceipt( @JsonProperty("license_uri") Optional licenseUri, @JsonProperty("right_to_refund") Optional rightToRefund, @JsonProperty("liability_of_licensee") Optional liabilityOfLicensee, - @JsonProperty("totals") Optional totals, + @JsonProperty("totals") Optional totals, @JsonProperty("taxes") Optional> taxes, @JsonProperty("employee_compensations") Optional> employeeCompensations, - @JsonProperty("licensee") Optional licensee) { + @JsonProperty("licensee") Optional licensee) { Utils.checkNotNull(payrollUuid, "payrollUuid"); Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(nameOfSender, "nameOfSender"); @@ -252,8 +252,8 @@ public Optional liabilityOfLicensee() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional totals() { - return (Optional) totals; + public Optional totals() { + return (Optional) totals; } /** @@ -279,8 +279,8 @@ public Optional> employeeCompensations */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional licensee() { - return (Optional) licensee; + public Optional licensee() { + return (Optional) licensee; } public static Builder builder() { @@ -477,7 +477,7 @@ public PayrollReceipt withLiabilityOfLicensee(Optional liabilityOfLicens /** * The subtotals for the payroll. */ - public PayrollReceipt withTotals(Totals totals) { + public PayrollReceipt withTotals(PayrollReceiptTotals totals) { Utils.checkNotNull(totals, "totals"); this.totals = Optional.ofNullable(totals); return this; @@ -487,7 +487,7 @@ public PayrollReceipt withTotals(Totals totals) { /** * The subtotals for the payroll. */ - public PayrollReceipt withTotals(Optional totals) { + public PayrollReceipt withTotals(Optional totals) { Utils.checkNotNull(totals, "totals"); this.totals = totals; return this; @@ -534,7 +534,7 @@ public PayrollReceipt withEmployeeCompensations(Optional licensee) { + public PayrollReceipt withLicensee(Optional licensee) { Utils.checkNotNull(licensee, "licensee"); this.licensee = licensee; return this; @@ -628,13 +628,13 @@ public final static class Builder { private Optional liabilityOfLicensee = Optional.empty(); - private Optional totals = Optional.empty(); + private Optional totals = Optional.empty(); private Optional> taxes = Optional.empty(); private Optional> employeeCompensations = Optional.empty(); - private Optional licensee = Optional.empty(); + private Optional licensee = Optional.empty(); private Builder() { // force use of static builder() method @@ -830,7 +830,7 @@ public Builder liabilityOfLicensee(Optional liabilityOfLicensee) { /** * The subtotals for the payroll. */ - public Builder totals(Totals totals) { + public Builder totals(PayrollReceiptTotals totals) { Utils.checkNotNull(totals, "totals"); this.totals = Optional.ofNullable(totals); return this; @@ -839,7 +839,7 @@ public Builder totals(Totals totals) { /** * The subtotals for the payroll. */ - public Builder totals(Optional totals) { + public Builder totals(Optional totals) { Utils.checkNotNull(totals, "totals"); this.totals = totals; return this; @@ -887,7 +887,7 @@ public Builder employeeCompensations(Optional licensee) { + public Builder licensee(Optional licensee) { Utils.checkNotNull(licensee, "licensee"); this.licensee = licensee; return this; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentReceiptLicensee.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollReceiptLicensee.java similarity index 88% rename from gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentReceiptLicensee.java rename to gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollReceiptLicensee.java index cb637e551..0379b1ee2 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorPaymentReceiptLicensee.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollReceiptLicensee.java @@ -14,11 +14,11 @@ import java.util.Optional; /** - * ContractorPaymentReceiptLicensee + * PayrollReceiptLicensee * *

    The licensed payroll processor */ -public class ContractorPaymentReceiptLicensee { +public class PayrollReceiptLicensee { /** * Always the fixed string "Gusto, Zenpayroll Inc." */ @@ -62,7 +62,7 @@ public class ContractorPaymentReceiptLicensee { private Optional phoneNumber; @JsonCreator - public ContractorPaymentReceiptLicensee( + public PayrollReceiptLicensee( @JsonProperty("name") Optional name, @JsonProperty("address") Optional address, @JsonProperty("city") Optional city, @@ -83,7 +83,7 @@ public ContractorPaymentReceiptLicensee( this.phoneNumber = phoneNumber; } - public ContractorPaymentReceiptLicensee() { + public PayrollReceiptLicensee() { this(Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty()); } @@ -144,7 +144,7 @@ public static Builder builder() { /** * Always the fixed string "Gusto, Zenpayroll Inc." */ - public ContractorPaymentReceiptLicensee withName(String name) { + public PayrollReceiptLicensee withName(String name) { Utils.checkNotNull(name, "name"); this.name = Optional.ofNullable(name); return this; @@ -154,7 +154,7 @@ public ContractorPaymentReceiptLicensee withName(String name) { /** * Always the fixed string "Gusto, Zenpayroll Inc." */ - public ContractorPaymentReceiptLicensee withName(Optional name) { + public PayrollReceiptLicensee withName(Optional name) { Utils.checkNotNull(name, "name"); this.name = name; return this; @@ -163,7 +163,7 @@ public ContractorPaymentReceiptLicensee withName(Optional name) { /** * Always the fixed string "525 20th St" */ - public ContractorPaymentReceiptLicensee withAddress(String address) { + public PayrollReceiptLicensee withAddress(String address) { Utils.checkNotNull(address, "address"); this.address = Optional.ofNullable(address); return this; @@ -173,7 +173,7 @@ public ContractorPaymentReceiptLicensee withAddress(String address) { /** * Always the fixed string "525 20th St" */ - public ContractorPaymentReceiptLicensee withAddress(Optional address) { + public PayrollReceiptLicensee withAddress(Optional address) { Utils.checkNotNull(address, "address"); this.address = address; return this; @@ -182,7 +182,7 @@ public ContractorPaymentReceiptLicensee withAddress(Optional address) { /** * Always the fixed string "San Francisco" */ - public ContractorPaymentReceiptLicensee withCity(String city) { + public PayrollReceiptLicensee withCity(String city) { Utils.checkNotNull(city, "city"); this.city = Optional.ofNullable(city); return this; @@ -192,7 +192,7 @@ public ContractorPaymentReceiptLicensee withCity(String city) { /** * Always the fixed string "San Francisco" */ - public ContractorPaymentReceiptLicensee withCity(Optional city) { + public PayrollReceiptLicensee withCity(Optional city) { Utils.checkNotNull(city, "city"); this.city = city; return this; @@ -201,7 +201,7 @@ public ContractorPaymentReceiptLicensee withCity(Optional city) { /** * Always the fixed string "CA" */ - public ContractorPaymentReceiptLicensee withState(String state) { + public PayrollReceiptLicensee withState(String state) { Utils.checkNotNull(state, "state"); this.state = Optional.ofNullable(state); return this; @@ -211,7 +211,7 @@ public ContractorPaymentReceiptLicensee withState(String state) { /** * Always the fixed string "CA" */ - public ContractorPaymentReceiptLicensee withState(Optional state) { + public PayrollReceiptLicensee withState(Optional state) { Utils.checkNotNull(state, "state"); this.state = state; return this; @@ -220,7 +220,7 @@ public ContractorPaymentReceiptLicensee withState(Optional state) { /** * Always the fixed string "94107" */ - public ContractorPaymentReceiptLicensee withPostalCode(String postalCode) { + public PayrollReceiptLicensee withPostalCode(String postalCode) { Utils.checkNotNull(postalCode, "postalCode"); this.postalCode = Optional.ofNullable(postalCode); return this; @@ -230,7 +230,7 @@ public ContractorPaymentReceiptLicensee withPostalCode(String postalCode) { /** * Always the fixed string "94107" */ - public ContractorPaymentReceiptLicensee withPostalCode(Optional postalCode) { + public PayrollReceiptLicensee withPostalCode(Optional postalCode) { Utils.checkNotNull(postalCode, "postalCode"); this.postalCode = postalCode; return this; @@ -239,7 +239,7 @@ public ContractorPaymentReceiptLicensee withPostalCode(Optional postalCo /** * Always the fixed string "4157778888" */ - public ContractorPaymentReceiptLicensee withPhoneNumber(String phoneNumber) { + public PayrollReceiptLicensee withPhoneNumber(String phoneNumber) { Utils.checkNotNull(phoneNumber, "phoneNumber"); this.phoneNumber = Optional.ofNullable(phoneNumber); return this; @@ -249,7 +249,7 @@ public ContractorPaymentReceiptLicensee withPhoneNumber(String phoneNumber) { /** * Always the fixed string "4157778888" */ - public ContractorPaymentReceiptLicensee withPhoneNumber(Optional phoneNumber) { + public PayrollReceiptLicensee withPhoneNumber(Optional phoneNumber) { Utils.checkNotNull(phoneNumber, "phoneNumber"); this.phoneNumber = phoneNumber; return this; @@ -263,7 +263,7 @@ public boolean equals(java.lang.Object o) { if (o == null || getClass() != o.getClass()) { return false; } - ContractorPaymentReceiptLicensee other = (ContractorPaymentReceiptLicensee) o; + PayrollReceiptLicensee other = (PayrollReceiptLicensee) o; return Utils.enhancedDeepEquals(this.name, other.name) && Utils.enhancedDeepEquals(this.address, other.address) && @@ -282,7 +282,7 @@ public int hashCode() { @Override public String toString() { - return Utils.toString(ContractorPaymentReceiptLicensee.class, + return Utils.toString(PayrollReceiptLicensee.class, "name", name, "address", address, "city", city, @@ -424,9 +424,9 @@ public Builder phoneNumber(Optional phoneNumber) { return this; } - public ContractorPaymentReceiptLicensee build() { + public PayrollReceiptLicensee build() { - return new ContractorPaymentReceiptLicensee( + return new PayrollReceiptLicensee( name, address, city, state, postalCode, phoneNumber); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollReceiptTotals.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollReceiptTotals.java new file mode 100644 index 000000000..9c8caf7ce --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollReceiptTotals.java @@ -0,0 +1,375 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.util.Optional; + +/** + * PayrollReceiptTotals + * + *

    The subtotals for the payroll. + */ +public class PayrollReceiptTotals { + /** + * The total company debit for the payroll. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("company_debit") + private Optional companyDebit; + + /** + * The total company net pay for the payroll. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("net_pay_debit") + private Optional netPayDebit; + + /** + * The total child support debit for the payroll. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("child_support_debit") + private Optional childSupportDebit; + + /** + * The total reimbursements for the payroll. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("reimbursement_debit") + private Optional reimbursementDebit; + + /** + * The total tax debit for the payroll. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("tax_debit") + private Optional taxDebit; + + @JsonCreator + public PayrollReceiptTotals( + @JsonProperty("company_debit") Optional companyDebit, + @JsonProperty("net_pay_debit") Optional netPayDebit, + @JsonProperty("child_support_debit") Optional childSupportDebit, + @JsonProperty("reimbursement_debit") Optional reimbursementDebit, + @JsonProperty("tax_debit") Optional taxDebit) { + Utils.checkNotNull(companyDebit, "companyDebit"); + Utils.checkNotNull(netPayDebit, "netPayDebit"); + Utils.checkNotNull(childSupportDebit, "childSupportDebit"); + Utils.checkNotNull(reimbursementDebit, "reimbursementDebit"); + Utils.checkNotNull(taxDebit, "taxDebit"); + this.companyDebit = companyDebit; + this.netPayDebit = netPayDebit; + this.childSupportDebit = childSupportDebit; + this.reimbursementDebit = reimbursementDebit; + this.taxDebit = taxDebit; + } + + public PayrollReceiptTotals() { + this(Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty(), Optional.empty()); + } + + /** + * The total company debit for the payroll. + */ + @JsonIgnore + public Optional companyDebit() { + return companyDebit; + } + + /** + * The total company net pay for the payroll. + */ + @JsonIgnore + public Optional netPayDebit() { + return netPayDebit; + } + + /** + * The total child support debit for the payroll. + */ + @JsonIgnore + public Optional childSupportDebit() { + return childSupportDebit; + } + + /** + * The total reimbursements for the payroll. + */ + @JsonIgnore + public Optional reimbursementDebit() { + return reimbursementDebit; + } + + /** + * The total tax debit for the payroll. + */ + @JsonIgnore + public Optional taxDebit() { + return taxDebit; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * The total company debit for the payroll. + */ + public PayrollReceiptTotals withCompanyDebit(String companyDebit) { + Utils.checkNotNull(companyDebit, "companyDebit"); + this.companyDebit = Optional.ofNullable(companyDebit); + return this; + } + + + /** + * The total company debit for the payroll. + */ + public PayrollReceiptTotals withCompanyDebit(Optional companyDebit) { + Utils.checkNotNull(companyDebit, "companyDebit"); + this.companyDebit = companyDebit; + return this; + } + + /** + * The total company net pay for the payroll. + */ + public PayrollReceiptTotals withNetPayDebit(String netPayDebit) { + Utils.checkNotNull(netPayDebit, "netPayDebit"); + this.netPayDebit = Optional.ofNullable(netPayDebit); + return this; + } + + + /** + * The total company net pay for the payroll. + */ + public PayrollReceiptTotals withNetPayDebit(Optional netPayDebit) { + Utils.checkNotNull(netPayDebit, "netPayDebit"); + this.netPayDebit = netPayDebit; + return this; + } + + /** + * The total child support debit for the payroll. + */ + public PayrollReceiptTotals withChildSupportDebit(String childSupportDebit) { + Utils.checkNotNull(childSupportDebit, "childSupportDebit"); + this.childSupportDebit = Optional.ofNullable(childSupportDebit); + return this; + } + + + /** + * The total child support debit for the payroll. + */ + public PayrollReceiptTotals withChildSupportDebit(Optional childSupportDebit) { + Utils.checkNotNull(childSupportDebit, "childSupportDebit"); + this.childSupportDebit = childSupportDebit; + return this; + } + + /** + * The total reimbursements for the payroll. + */ + public PayrollReceiptTotals withReimbursementDebit(String reimbursementDebit) { + Utils.checkNotNull(reimbursementDebit, "reimbursementDebit"); + this.reimbursementDebit = Optional.ofNullable(reimbursementDebit); + return this; + } + + + /** + * The total reimbursements for the payroll. + */ + public PayrollReceiptTotals withReimbursementDebit(Optional reimbursementDebit) { + Utils.checkNotNull(reimbursementDebit, "reimbursementDebit"); + this.reimbursementDebit = reimbursementDebit; + return this; + } + + /** + * The total tax debit for the payroll. + */ + public PayrollReceiptTotals withTaxDebit(String taxDebit) { + Utils.checkNotNull(taxDebit, "taxDebit"); + this.taxDebit = Optional.ofNullable(taxDebit); + return this; + } + + + /** + * The total tax debit for the payroll. + */ + public PayrollReceiptTotals withTaxDebit(Optional taxDebit) { + Utils.checkNotNull(taxDebit, "taxDebit"); + this.taxDebit = taxDebit; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PayrollReceiptTotals other = (PayrollReceiptTotals) o; + return + Utils.enhancedDeepEquals(this.companyDebit, other.companyDebit) && + Utils.enhancedDeepEquals(this.netPayDebit, other.netPayDebit) && + Utils.enhancedDeepEquals(this.childSupportDebit, other.childSupportDebit) && + Utils.enhancedDeepEquals(this.reimbursementDebit, other.reimbursementDebit) && + Utils.enhancedDeepEquals(this.taxDebit, other.taxDebit); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + companyDebit, netPayDebit, childSupportDebit, + reimbursementDebit, taxDebit); + } + + @Override + public String toString() { + return Utils.toString(PayrollReceiptTotals.class, + "companyDebit", companyDebit, + "netPayDebit", netPayDebit, + "childSupportDebit", childSupportDebit, + "reimbursementDebit", reimbursementDebit, + "taxDebit", taxDebit); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional companyDebit = Optional.empty(); + + private Optional netPayDebit = Optional.empty(); + + private Optional childSupportDebit = Optional.empty(); + + private Optional reimbursementDebit = Optional.empty(); + + private Optional taxDebit = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * The total company debit for the payroll. + */ + public Builder companyDebit(String companyDebit) { + Utils.checkNotNull(companyDebit, "companyDebit"); + this.companyDebit = Optional.ofNullable(companyDebit); + return this; + } + + /** + * The total company debit for the payroll. + */ + public Builder companyDebit(Optional companyDebit) { + Utils.checkNotNull(companyDebit, "companyDebit"); + this.companyDebit = companyDebit; + return this; + } + + + /** + * The total company net pay for the payroll. + */ + public Builder netPayDebit(String netPayDebit) { + Utils.checkNotNull(netPayDebit, "netPayDebit"); + this.netPayDebit = Optional.ofNullable(netPayDebit); + return this; + } + + /** + * The total company net pay for the payroll. + */ + public Builder netPayDebit(Optional netPayDebit) { + Utils.checkNotNull(netPayDebit, "netPayDebit"); + this.netPayDebit = netPayDebit; + return this; + } + + + /** + * The total child support debit for the payroll. + */ + public Builder childSupportDebit(String childSupportDebit) { + Utils.checkNotNull(childSupportDebit, "childSupportDebit"); + this.childSupportDebit = Optional.ofNullable(childSupportDebit); + return this; + } + + /** + * The total child support debit for the payroll. + */ + public Builder childSupportDebit(Optional childSupportDebit) { + Utils.checkNotNull(childSupportDebit, "childSupportDebit"); + this.childSupportDebit = childSupportDebit; + return this; + } + + + /** + * The total reimbursements for the payroll. + */ + public Builder reimbursementDebit(String reimbursementDebit) { + Utils.checkNotNull(reimbursementDebit, "reimbursementDebit"); + this.reimbursementDebit = Optional.ofNullable(reimbursementDebit); + return this; + } + + /** + * The total reimbursements for the payroll. + */ + public Builder reimbursementDebit(Optional reimbursementDebit) { + Utils.checkNotNull(reimbursementDebit, "reimbursementDebit"); + this.reimbursementDebit = reimbursementDebit; + return this; + } + + + /** + * The total tax debit for the payroll. + */ + public Builder taxDebit(String taxDebit) { + Utils.checkNotNull(taxDebit, "taxDebit"); + this.taxDebit = Optional.ofNullable(taxDebit); + return this; + } + + /** + * The total tax debit for the payroll. + */ + public Builder taxDebit(Optional taxDebit) { + Utils.checkNotNull(taxDebit, "taxDebit"); + this.taxDebit = taxDebit; + return this; + } + + public PayrollReceiptTotals build() { + + return new PayrollReceiptTotals( + companyDebit, netPayDebit, childSupportDebit, + reimbursementDebit, taxDebit); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollShowCustomWithholdings.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollShowCustomWithholdings.java new file mode 100644 index 000000000..6e29b66ed --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollShowCustomWithholdings.java @@ -0,0 +1,198 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.List; +import java.util.Optional; +import org.openapitools.jackson.nullable.JsonNullable; + +/** + * PayrollShowCustomWithholdings + * + *

    The one-time custom withholding overrides applied to this payroll for this employee. + * `federal` is null when no federal one-time override is set; `state` is an empty + * array when no state one-time overrides are set. + */ +public class PayrollShowCustomWithholdings { + /** + * Federal one-time custom withholding override applied to this payroll. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("federal") + private JsonNullable federal; + + /** + * State one-time custom withholding overrides applied to this payroll, one entry per state field. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("state") + private Optional> state; + + @JsonCreator + public PayrollShowCustomWithholdings( + @JsonProperty("federal") JsonNullable federal, + @JsonProperty("state") Optional> state) { + Utils.checkNotNull(federal, "federal"); + Utils.checkNotNull(state, "state"); + this.federal = federal; + this.state = state; + } + + public PayrollShowCustomWithholdings() { + this(JsonNullable.undefined(), Optional.empty()); + } + + /** + * Federal one-time custom withholding override applied to this payroll. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public JsonNullable federal() { + return (JsonNullable) federal; + } + + /** + * State one-time custom withholding overrides applied to this payroll, one entry per state field. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> state() { + return (Optional>) state; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Federal one-time custom withholding override applied to this payroll. + */ + public PayrollShowCustomWithholdings withFederal(PayrollShowFederal federal) { + Utils.checkNotNull(federal, "federal"); + this.federal = JsonNullable.of(federal); + return this; + } + + /** + * Federal one-time custom withholding override applied to this payroll. + */ + public PayrollShowCustomWithholdings withFederal(JsonNullable federal) { + Utils.checkNotNull(federal, "federal"); + this.federal = federal; + return this; + } + + /** + * State one-time custom withholding overrides applied to this payroll, one entry per state field. + */ + public PayrollShowCustomWithholdings withState(List state) { + Utils.checkNotNull(state, "state"); + this.state = Optional.ofNullable(state); + return this; + } + + + /** + * State one-time custom withholding overrides applied to this payroll, one entry per state field. + */ + public PayrollShowCustomWithholdings withState(Optional> state) { + Utils.checkNotNull(state, "state"); + this.state = state; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PayrollShowCustomWithholdings other = (PayrollShowCustomWithholdings) o; + return + Utils.enhancedDeepEquals(this.federal, other.federal) && + Utils.enhancedDeepEquals(this.state, other.state); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + federal, state); + } + + @Override + public String toString() { + return Utils.toString(PayrollShowCustomWithholdings.class, + "federal", federal, + "state", state); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private JsonNullable federal = JsonNullable.undefined(); + + private Optional> state = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * Federal one-time custom withholding override applied to this payroll. + */ + public Builder federal(PayrollShowFederal federal) { + Utils.checkNotNull(federal, "federal"); + this.federal = JsonNullable.of(federal); + return this; + } + + /** + * Federal one-time custom withholding override applied to this payroll. + */ + public Builder federal(JsonNullable federal) { + Utils.checkNotNull(federal, "federal"); + this.federal = federal; + return this; + } + + + /** + * State one-time custom withholding overrides applied to this payroll, one entry per state field. + */ + public Builder state(List state) { + Utils.checkNotNull(state, "state"); + this.state = Optional.ofNullable(state); + return this; + } + + /** + * State one-time custom withholding overrides applied to this payroll, one entry per state field. + */ + public Builder state(Optional> state) { + Utils.checkNotNull(state, "state"); + this.state = state; + return this; + } + + public PayrollShowCustomWithholdings build() { + + return new PayrollShowCustomWithholdings( + federal, state); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollShowEmployeeCompensationsAmountType.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollShowEmployeeCompensationsAmountType.java new file mode 100644 index 000000000..19eb4ece4 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollShowEmployeeCompensationsAmountType.java @@ -0,0 +1,40 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollShowEmployeeCompensationsAmountType + * + *

    How to interpret the amount. + */ +public enum PayrollShowEmployeeCompensationsAmountType { + FIXED("fixed"), + PERCENT("percent"); + + @JsonValue + private final String value; + + PayrollShowEmployeeCompensationsAmountType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollShowEmployeeCompensationsAmountType o: PayrollShowEmployeeCompensationsAmountType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollShowEmployeeCompensationsCustomWithholdingsAmountType.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollShowEmployeeCompensationsCustomWithholdingsAmountType.java new file mode 100644 index 000000000..f87e1a451 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollShowEmployeeCompensationsCustomWithholdingsAmountType.java @@ -0,0 +1,40 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollShowEmployeeCompensationsCustomWithholdingsAmountType + * + *

    How to interpret the amount. + */ +public enum PayrollShowEmployeeCompensationsCustomWithholdingsAmountType { + FIXED("fixed"), + PERCENT("percent"); + + @JsonValue + private final String value; + + PayrollShowEmployeeCompensationsCustomWithholdingsAmountType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollShowEmployeeCompensationsCustomWithholdingsAmountType o: PayrollShowEmployeeCompensationsCustomWithholdingsAmountType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollShowEmployeeCompensationsOverrideType.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollShowEmployeeCompensationsOverrideType.java new file mode 100644 index 000000000..81e927e56 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollShowEmployeeCompensationsOverrideType.java @@ -0,0 +1,39 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollShowEmployeeCompensationsOverrideType + * + *

    Override mode. Only `one_time` is currently exposed. + */ +public enum PayrollShowEmployeeCompensationsOverrideType { + ONE_TIME("one_time"); + + @JsonValue + private final String value; + + PayrollShowEmployeeCompensationsOverrideType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollShowEmployeeCompensationsOverrideType o: PayrollShowEmployeeCompensationsOverrideType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollShowFederal.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollShowFederal.java new file mode 100644 index 000000000..084f606af --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollShowFederal.java @@ -0,0 +1,255 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + +/** + * PayrollShowFederal + * + *

    Federal one-time custom withholding override applied to this payroll. + */ +public class PayrollShowFederal { + /** + * Override mode. Only `one_time` is currently exposed. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("override_type") + private Optional overrideType; + + /** + * The amount that was withheld for this payroll. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("amount") + private Optional amount; + + /** + * How to interpret the amount. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("amount_type") + private Optional amountType; + + @JsonCreator + public PayrollShowFederal( + @JsonProperty("override_type") Optional overrideType, + @JsonProperty("amount") Optional amount, + @JsonProperty("amount_type") Optional amountType) { + Utils.checkNotNull(overrideType, "overrideType"); + Utils.checkNotNull(amount, "amount"); + Utils.checkNotNull(amountType, "amountType"); + this.overrideType = overrideType; + this.amount = amount; + this.amountType = amountType; + } + + public PayrollShowFederal() { + this(Optional.empty(), Optional.empty(), Optional.empty()); + } + + /** + * Override mode. Only `one_time` is currently exposed. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional overrideType() { + return (Optional) overrideType; + } + + /** + * The amount that was withheld for this payroll. + */ + @JsonIgnore + public Optional amount() { + return amount; + } + + /** + * How to interpret the amount. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional amountType() { + return (Optional) amountType; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public PayrollShowFederal withOverrideType(PayrollShowEmployeeCompensationsOverrideType overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = Optional.ofNullable(overrideType); + return this; + } + + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public PayrollShowFederal withOverrideType(Optional overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = overrideType; + return this; + } + + /** + * The amount that was withheld for this payroll. + */ + public PayrollShowFederal withAmount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = Optional.ofNullable(amount); + return this; + } + + + /** + * The amount that was withheld for this payroll. + */ + public PayrollShowFederal withAmount(Optional amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + /** + * How to interpret the amount. + */ + public PayrollShowFederal withAmountType(PayrollShowEmployeeCompensationsAmountType amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = Optional.ofNullable(amountType); + return this; + } + + + /** + * How to interpret the amount. + */ + public PayrollShowFederal withAmountType(Optional amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = amountType; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PayrollShowFederal other = (PayrollShowFederal) o; + return + Utils.enhancedDeepEquals(this.overrideType, other.overrideType) && + Utils.enhancedDeepEquals(this.amount, other.amount) && + Utils.enhancedDeepEquals(this.amountType, other.amountType); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + overrideType, amount, amountType); + } + + @Override + public String toString() { + return Utils.toString(PayrollShowFederal.class, + "overrideType", overrideType, + "amount", amount, + "amountType", amountType); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional overrideType = Optional.empty(); + + private Optional amount = Optional.empty(); + + private Optional amountType = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public Builder overrideType(PayrollShowEmployeeCompensationsOverrideType overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = Optional.ofNullable(overrideType); + return this; + } + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public Builder overrideType(Optional overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = overrideType; + return this; + } + + + /** + * The amount that was withheld for this payroll. + */ + public Builder amount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = Optional.ofNullable(amount); + return this; + } + + /** + * The amount that was withheld for this payroll. + */ + public Builder amount(Optional amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + + /** + * How to interpret the amount. + */ + public Builder amountType(PayrollShowEmployeeCompensationsAmountType amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = Optional.ofNullable(amountType); + return this; + } + + /** + * How to interpret the amount. + */ + public Builder amountType(Optional amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = amountType; + return this; + } + + public PayrollShowFederal build() { + + return new PayrollShowFederal( + overrideType, amount, amountType); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollShowOverrideType.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollShowOverrideType.java new file mode 100644 index 000000000..657a612e6 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollShowOverrideType.java @@ -0,0 +1,39 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollShowOverrideType + * + *

    Override mode. Only `one_time` is currently exposed. + */ +public enum PayrollShowOverrideType { + ONE_TIME("one_time"); + + @JsonValue + private final String value; + + PayrollShowOverrideType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollShowOverrideType o: PayrollShowOverrideType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollShowState.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollShowState.java new file mode 100644 index 000000000..2184a7ee2 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollShowState.java @@ -0,0 +1,314 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class PayrollShowState { + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("employee_state_field_uuid") + private Optional employeeStateFieldUuid; + + /** + * Override mode. Only `one_time` is currently exposed. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("override_type") + private Optional overrideType; + + /** + * The amount that was withheld for this payroll. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("amount") + private Optional amount; + + /** + * How to interpret the amount. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("amount_type") + private Optional amountType; + + @JsonCreator + public PayrollShowState( + @JsonProperty("employee_state_field_uuid") Optional employeeStateFieldUuid, + @JsonProperty("override_type") Optional overrideType, + @JsonProperty("amount") Optional amount, + @JsonProperty("amount_type") Optional amountType) { + Utils.checkNotNull(employeeStateFieldUuid, "employeeStateFieldUuid"); + Utils.checkNotNull(overrideType, "overrideType"); + Utils.checkNotNull(amount, "amount"); + Utils.checkNotNull(amountType, "amountType"); + this.employeeStateFieldUuid = employeeStateFieldUuid; + this.overrideType = overrideType; + this.amount = amount; + this.amountType = amountType; + } + + public PayrollShowState() { + this(Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty()); + } + + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + @JsonIgnore + public Optional employeeStateFieldUuid() { + return employeeStateFieldUuid; + } + + /** + * Override mode. Only `one_time` is currently exposed. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional overrideType() { + return (Optional) overrideType; + } + + /** + * The amount that was withheld for this payroll. + */ + @JsonIgnore + public Optional amount() { + return amount; + } + + /** + * How to interpret the amount. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional amountType() { + return (Optional) amountType; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + public PayrollShowState withEmployeeStateFieldUuid(String employeeStateFieldUuid) { + Utils.checkNotNull(employeeStateFieldUuid, "employeeStateFieldUuid"); + this.employeeStateFieldUuid = Optional.ofNullable(employeeStateFieldUuid); + return this; + } + + + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + public PayrollShowState withEmployeeStateFieldUuid(Optional employeeStateFieldUuid) { + Utils.checkNotNull(employeeStateFieldUuid, "employeeStateFieldUuid"); + this.employeeStateFieldUuid = employeeStateFieldUuid; + return this; + } + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public PayrollShowState withOverrideType(PayrollShowOverrideType overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = Optional.ofNullable(overrideType); + return this; + } + + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public PayrollShowState withOverrideType(Optional overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = overrideType; + return this; + } + + /** + * The amount that was withheld for this payroll. + */ + public PayrollShowState withAmount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = Optional.ofNullable(amount); + return this; + } + + + /** + * The amount that was withheld for this payroll. + */ + public PayrollShowState withAmount(Optional amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + /** + * How to interpret the amount. + */ + public PayrollShowState withAmountType(PayrollShowEmployeeCompensationsCustomWithholdingsAmountType amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = Optional.ofNullable(amountType); + return this; + } + + + /** + * How to interpret the amount. + */ + public PayrollShowState withAmountType(Optional amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = amountType; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PayrollShowState other = (PayrollShowState) o; + return + Utils.enhancedDeepEquals(this.employeeStateFieldUuid, other.employeeStateFieldUuid) && + Utils.enhancedDeepEquals(this.overrideType, other.overrideType) && + Utils.enhancedDeepEquals(this.amount, other.amount) && + Utils.enhancedDeepEquals(this.amountType, other.amountType); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + employeeStateFieldUuid, overrideType, amount, + amountType); + } + + @Override + public String toString() { + return Utils.toString(PayrollShowState.class, + "employeeStateFieldUuid", employeeStateFieldUuid, + "overrideType", overrideType, + "amount", amount, + "amountType", amountType); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional employeeStateFieldUuid = Optional.empty(); + + private Optional overrideType = Optional.empty(); + + private Optional amount = Optional.empty(); + + private Optional amountType = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + public Builder employeeStateFieldUuid(String employeeStateFieldUuid) { + Utils.checkNotNull(employeeStateFieldUuid, "employeeStateFieldUuid"); + this.employeeStateFieldUuid = Optional.ofNullable(employeeStateFieldUuid); + return this; + } + + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + public Builder employeeStateFieldUuid(Optional employeeStateFieldUuid) { + Utils.checkNotNull(employeeStateFieldUuid, "employeeStateFieldUuid"); + this.employeeStateFieldUuid = employeeStateFieldUuid; + return this; + } + + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public Builder overrideType(PayrollShowOverrideType overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = Optional.ofNullable(overrideType); + return this; + } + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public Builder overrideType(Optional overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = overrideType; + return this; + } + + + /** + * The amount that was withheld for this payroll. + */ + public Builder amount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = Optional.ofNullable(amount); + return this; + } + + /** + * The amount that was withheld for this payroll. + */ + public Builder amount(Optional amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + + /** + * How to interpret the amount. + */ + public Builder amountType(PayrollShowEmployeeCompensationsCustomWithholdingsAmountType amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = Optional.ofNullable(amountType); + return this; + } + + /** + * How to interpret the amount. + */ + public Builder amountType(Optional amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = amountType; + return this; + } + + public PayrollShowState build() { + + return new PayrollShowState( + employeeStateFieldUuid, overrideType, amount, + amountType); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUnprocessedEmployeeCompensationsType.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUnprocessedEmployeeCompensationsType.java index 34ca04466..e3b0a8e62 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUnprocessedEmployeeCompensationsType.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUnprocessedEmployeeCompensationsType.java @@ -97,15 +97,16 @@ public class PayrollUnprocessedEmployeeCompensationsType { private JsonNullable memo; /** - * An array of fixed compensations for the employee. Fixed compensations include tips, bonuses, and one - * time reimbursements. If this payroll has been processed, only fixed compensations with a value - * greater than 0.00 are returned. + * An array of fixed compensations for the employee. Fixed compensations include tips and bonuses. On + * regular payrolls, reimbursements are sent via the dedicated `reimbursements` array instead. * - *

    For an unprocessed payroll, all active fixed compensations are returned. + *

    Off-cycle payrolls continue to include reimbursements in `fixed_compensations`. If this payroll has + * been processed, only fixed compensations with a value greater than 0.00 are returned. For an + * unprocessed payroll, all active fixed compensations are returned. */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("fixed_compensations") - private Optional> fixedCompensations; + private Optional> fixedCompensations; /** * An array of hourly compensations for the employee. Hourly compensations include regular, overtime, @@ -116,7 +117,7 @@ public class PayrollUnprocessedEmployeeCompensationsType { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("hourly_compensations") - private Optional> hourlyCompensations; + private Optional> hourlyCompensations; /** * An array of all paid time off the employee is eligible for this pay period. @@ -130,7 +131,16 @@ public class PayrollUnprocessedEmployeeCompensationsType { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("reimbursements") - private Optional> reimbursements; + private Optional> reimbursements; + + /** + * The one-time custom withholding overrides applied to this payroll for this employee. + * `federal` is null when no federal one-time override is set; `state` is an empty + * array when no state one-time overrides are set. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("custom_withholdings") + private Optional customWithholdings; /** * The current version of this employee compensation. This field is only available for prepared @@ -154,10 +164,11 @@ public PayrollUnprocessedEmployeeCompensationsType( @JsonProperty("check_amount") JsonNullable checkAmount, @JsonProperty("payment_method") JsonNullable paymentMethod, @JsonProperty("memo") JsonNullable memo, - @JsonProperty("fixed_compensations") Optional> fixedCompensations, - @JsonProperty("hourly_compensations") Optional> hourlyCompensations, + @JsonProperty("fixed_compensations") Optional> fixedCompensations, + @JsonProperty("hourly_compensations") Optional> hourlyCompensations, @JsonProperty("paid_time_off") Optional> paidTimeOff, - @JsonProperty("reimbursements") Optional> reimbursements, + @JsonProperty("reimbursements") Optional> reimbursements, + @JsonProperty("custom_withholdings") Optional customWithholdings, @JsonProperty("version") Optional version) { Utils.checkNotNull(employeeUuid, "employeeUuid"); Utils.checkNotNull(excluded, "excluded"); @@ -173,6 +184,7 @@ public PayrollUnprocessedEmployeeCompensationsType( Utils.checkNotNull(hourlyCompensations, "hourlyCompensations"); Utils.checkNotNull(paidTimeOff, "paidTimeOff"); Utils.checkNotNull(reimbursements, "reimbursements"); + Utils.checkNotNull(customWithholdings, "customWithholdings"); Utils.checkNotNull(version, "version"); this.employeeUuid = employeeUuid; this.excluded = excluded; @@ -188,6 +200,7 @@ public PayrollUnprocessedEmployeeCompensationsType( this.hourlyCompensations = hourlyCompensations; this.paidTimeOff = paidTimeOff; this.reimbursements = reimbursements; + this.customWithholdings = customWithholdings; this.version = version; } @@ -196,7 +209,8 @@ public PayrollUnprocessedEmployeeCompensationsType() { JsonNullable.undefined(), JsonNullable.undefined(), JsonNullable.undefined(), JsonNullable.undefined(), JsonNullable.undefined(), JsonNullable.undefined(), JsonNullable.undefined(), Optional.empty(), Optional.empty(), - Optional.empty(), Optional.empty(), Optional.empty()); + Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty()); } /** @@ -286,16 +300,17 @@ public JsonNullable memo() { } /** - * An array of fixed compensations for the employee. Fixed compensations include tips, bonuses, and one - * time reimbursements. If this payroll has been processed, only fixed compensations with a value - * greater than 0.00 are returned. + * An array of fixed compensations for the employee. Fixed compensations include tips and bonuses. On + * regular payrolls, reimbursements are sent via the dedicated `reimbursements` array instead. * - *

    For an unprocessed payroll, all active fixed compensations are returned. + *

    Off-cycle payrolls continue to include reimbursements in `fixed_compensations`. If this payroll has + * been processed, only fixed compensations with a value greater than 0.00 are returned. For an + * unprocessed payroll, all active fixed compensations are returned. */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional> fixedCompensations() { - return (Optional>) fixedCompensations; + public Optional> fixedCompensations() { + return (Optional>) fixedCompensations; } /** @@ -307,8 +322,8 @@ public Optional> fixedCompensations() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional> hourlyCompensations() { - return (Optional>) hourlyCompensations; + public Optional> hourlyCompensations() { + return (Optional>) hourlyCompensations; } /** @@ -325,8 +340,19 @@ public Optional> pa */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional> reimbursements() { - return (Optional>) reimbursements; + public Optional> reimbursements() { + return (Optional>) reimbursements; + } + + /** + * The one-time custom withholding overrides applied to this payroll for this employee. + * `federal` is null when no federal one-time override is set; `state` is an empty + * array when no state one-time overrides are set. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional customWithholdings() { + return (Optional) customWithholdings; } /** @@ -539,13 +565,14 @@ public PayrollUnprocessedEmployeeCompensationsType withMemo(JsonNullable } /** - * An array of fixed compensations for the employee. Fixed compensations include tips, bonuses, and one - * time reimbursements. If this payroll has been processed, only fixed compensations with a value - * greater than 0.00 are returned. + * An array of fixed compensations for the employee. Fixed compensations include tips and bonuses. On + * regular payrolls, reimbursements are sent via the dedicated `reimbursements` array instead. * - *

    For an unprocessed payroll, all active fixed compensations are returned. + *

    Off-cycle payrolls continue to include reimbursements in `fixed_compensations`. If this payroll has + * been processed, only fixed compensations with a value greater than 0.00 are returned. For an + * unprocessed payroll, all active fixed compensations are returned. */ - public PayrollUnprocessedEmployeeCompensationsType withFixedCompensations(List fixedCompensations) { + public PayrollUnprocessedEmployeeCompensationsType withFixedCompensations(List fixedCompensations) { Utils.checkNotNull(fixedCompensations, "fixedCompensations"); this.fixedCompensations = Optional.ofNullable(fixedCompensations); return this; @@ -553,13 +580,14 @@ public PayrollUnprocessedEmployeeCompensationsType withFixedCompensations(ListFor an unprocessed payroll, all active fixed compensations are returned. + *

    Off-cycle payrolls continue to include reimbursements in `fixed_compensations`. If this payroll has + * been processed, only fixed compensations with a value greater than 0.00 are returned. For an + * unprocessed payroll, all active fixed compensations are returned. */ - public PayrollUnprocessedEmployeeCompensationsType withFixedCompensations(Optional> fixedCompensations) { + public PayrollUnprocessedEmployeeCompensationsType withFixedCompensations(Optional> fixedCompensations) { Utils.checkNotNull(fixedCompensations, "fixedCompensations"); this.fixedCompensations = fixedCompensations; return this; @@ -572,7 +600,7 @@ public PayrollUnprocessedEmployeeCompensationsType withFixedCompensations(Option * *

    For an unprocessed payroll, all active hourly compensations are returned. */ - public PayrollUnprocessedEmployeeCompensationsType withHourlyCompensations(List hourlyCompensations) { + public PayrollUnprocessedEmployeeCompensationsType withHourlyCompensations(List hourlyCompensations) { Utils.checkNotNull(hourlyCompensations, "hourlyCompensations"); this.hourlyCompensations = Optional.ofNullable(hourlyCompensations); return this; @@ -586,7 +614,7 @@ public PayrollUnprocessedEmployeeCompensationsType withHourlyCompensations(List< * *

    For an unprocessed payroll, all active hourly compensations are returned. */ - public PayrollUnprocessedEmployeeCompensationsType withHourlyCompensations(Optional> hourlyCompensations) { + public PayrollUnprocessedEmployeeCompensationsType withHourlyCompensations(Optional> hourlyCompensations) { Utils.checkNotNull(hourlyCompensations, "hourlyCompensations"); this.hourlyCompensations = hourlyCompensations; return this; @@ -614,7 +642,7 @@ public PayrollUnprocessedEmployeeCompensationsType withPaidTimeOff(Optional reimbursements) { + public PayrollUnprocessedEmployeeCompensationsType withReimbursements(List reimbursements) { Utils.checkNotNull(reimbursements, "reimbursements"); this.reimbursements = Optional.ofNullable(reimbursements); return this; @@ -624,12 +652,35 @@ public PayrollUnprocessedEmployeeCompensationsType withReimbursements(List> reimbursements) { + public PayrollUnprocessedEmployeeCompensationsType withReimbursements(Optional> reimbursements) { Utils.checkNotNull(reimbursements, "reimbursements"); this.reimbursements = reimbursements; return this; } + /** + * The one-time custom withholding overrides applied to this payroll for this employee. + * `federal` is null when no federal one-time override is set; `state` is an empty + * array when no state one-time overrides are set. + */ + public PayrollUnprocessedEmployeeCompensationsType withCustomWithholdings(PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings customWithholdings) { + Utils.checkNotNull(customWithholdings, "customWithholdings"); + this.customWithholdings = Optional.ofNullable(customWithholdings); + return this; + } + + + /** + * The one-time custom withholding overrides applied to this payroll for this employee. + * `federal` is null when no federal one-time override is set; `state` is an empty + * array when no state one-time overrides are set. + */ + public PayrollUnprocessedEmployeeCompensationsType withCustomWithholdings(Optional customWithholdings) { + Utils.checkNotNull(customWithholdings, "customWithholdings"); + this.customWithholdings = customWithholdings; + return this; + } + /** * The current version of this employee compensation. This field is only available for prepared * payrolls. See the [versioning @@ -679,6 +730,7 @@ public boolean equals(java.lang.Object o) { Utils.enhancedDeepEquals(this.hourlyCompensations, other.hourlyCompensations) && Utils.enhancedDeepEquals(this.paidTimeOff, other.paidTimeOff) && Utils.enhancedDeepEquals(this.reimbursements, other.reimbursements) && + Utils.enhancedDeepEquals(this.customWithholdings, other.customWithholdings) && Utils.enhancedDeepEquals(this.version, other.version); } @@ -689,7 +741,8 @@ public int hashCode() { preferredFirstName, lastName, grossPay, netPay, checkAmount, paymentMethod, memo, fixedCompensations, hourlyCompensations, - paidTimeOff, reimbursements, version); + paidTimeOff, reimbursements, customWithholdings, + version); } @Override @@ -709,6 +762,7 @@ public String toString() { "hourlyCompensations", hourlyCompensations, "paidTimeOff", paidTimeOff, "reimbursements", reimbursements, + "customWithholdings", customWithholdings, "version", version); } @@ -735,13 +789,15 @@ public final static class Builder { private JsonNullable memo = JsonNullable.undefined(); - private Optional> fixedCompensations = Optional.empty(); + private Optional> fixedCompensations = Optional.empty(); - private Optional> hourlyCompensations = Optional.empty(); + private Optional> hourlyCompensations = Optional.empty(); private Optional> paidTimeOff = Optional.empty(); - private Optional> reimbursements = Optional.empty(); + private Optional> reimbursements = Optional.empty(); + + private Optional customWithholdings = Optional.empty(); private Optional version = Optional.empty(); @@ -951,26 +1007,28 @@ public Builder memo(JsonNullable memo) { /** - * An array of fixed compensations for the employee. Fixed compensations include tips, bonuses, and one - * time reimbursements. If this payroll has been processed, only fixed compensations with a value - * greater than 0.00 are returned. + * An array of fixed compensations for the employee. Fixed compensations include tips and bonuses. On + * regular payrolls, reimbursements are sent via the dedicated `reimbursements` array instead. * - *

    For an unprocessed payroll, all active fixed compensations are returned. + *

    Off-cycle payrolls continue to include reimbursements in `fixed_compensations`. If this payroll has + * been processed, only fixed compensations with a value greater than 0.00 are returned. For an + * unprocessed payroll, all active fixed compensations are returned. */ - public Builder fixedCompensations(List fixedCompensations) { + public Builder fixedCompensations(List fixedCompensations) { Utils.checkNotNull(fixedCompensations, "fixedCompensations"); this.fixedCompensations = Optional.ofNullable(fixedCompensations); return this; } /** - * An array of fixed compensations for the employee. Fixed compensations include tips, bonuses, and one - * time reimbursements. If this payroll has been processed, only fixed compensations with a value - * greater than 0.00 are returned. + * An array of fixed compensations for the employee. Fixed compensations include tips and bonuses. On + * regular payrolls, reimbursements are sent via the dedicated `reimbursements` array instead. * - *

    For an unprocessed payroll, all active fixed compensations are returned. + *

    Off-cycle payrolls continue to include reimbursements in `fixed_compensations`. If this payroll has + * been processed, only fixed compensations with a value greater than 0.00 are returned. For an + * unprocessed payroll, all active fixed compensations are returned. */ - public Builder fixedCompensations(Optional> fixedCompensations) { + public Builder fixedCompensations(Optional> fixedCompensations) { Utils.checkNotNull(fixedCompensations, "fixedCompensations"); this.fixedCompensations = fixedCompensations; return this; @@ -984,7 +1042,7 @@ public Builder fixedCompensations(Optional> f * *

    For an unprocessed payroll, all active hourly compensations are returned. */ - public Builder hourlyCompensations(List hourlyCompensations) { + public Builder hourlyCompensations(List hourlyCompensations) { Utils.checkNotNull(hourlyCompensations, "hourlyCompensations"); this.hourlyCompensations = Optional.ofNullable(hourlyCompensations); return this; @@ -997,7 +1055,7 @@ public Builder hourlyCompensations(List hourlyCompensations * *

    For an unprocessed payroll, all active hourly compensations are returned. */ - public Builder hourlyCompensations(Optional> hourlyCompensations) { + public Builder hourlyCompensations(Optional> hourlyCompensations) { Utils.checkNotNull(hourlyCompensations, "hourlyCompensations"); this.hourlyCompensations = hourlyCompensations; return this; @@ -1026,7 +1084,7 @@ public Builder paidTimeOff(Optional reimbursements) { + public Builder reimbursements(List reimbursements) { Utils.checkNotNull(reimbursements, "reimbursements"); this.reimbursements = Optional.ofNullable(reimbursements); return this; @@ -1035,13 +1093,36 @@ public Builder reimbursements(List reimbursements) { /** * An array of reimbursements for the employee. */ - public Builder reimbursements(Optional> reimbursements) { + public Builder reimbursements(Optional> reimbursements) { Utils.checkNotNull(reimbursements, "reimbursements"); this.reimbursements = reimbursements; return this; } + /** + * The one-time custom withholding overrides applied to this payroll for this employee. + * `federal` is null when no federal one-time override is set; `state` is an empty + * array when no state one-time overrides are set. + */ + public Builder customWithholdings(PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings customWithholdings) { + Utils.checkNotNull(customWithholdings, "customWithholdings"); + this.customWithholdings = Optional.ofNullable(customWithholdings); + return this; + } + + /** + * The one-time custom withholding overrides applied to this payroll for this employee. + * `federal` is null when no federal one-time override is set; `state` is an empty + * array when no state one-time overrides are set. + */ + public Builder customWithholdings(Optional customWithholdings) { + Utils.checkNotNull(customWithholdings, "customWithholdings"); + this.customWithholdings = customWithholdings; + return this; + } + + /** * The current version of this employee compensation. This field is only available for prepared * payrolls. See the [versioning @@ -1073,7 +1154,8 @@ public PayrollUnprocessedEmployeeCompensationsType build() { preferredFirstName, lastName, grossPay, netPay, checkAmount, paymentMethod, memo, fixedCompensations, hourlyCompensations, - paidTimeOff, reimbursements, version); + paidTimeOff, reimbursements, customWithholdings, + version); } } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeAmountType.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeAmountType.java new file mode 100644 index 000000000..a5863545b --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeAmountType.java @@ -0,0 +1,40 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollUnprocessedEmployeeCompensationsTypeAmountType + * + *

    How to interpret the amount. + */ +public enum PayrollUnprocessedEmployeeCompensationsTypeAmountType { + FIXED("fixed"), + PERCENT("percent"); + + @JsonValue + private final String value; + + PayrollUnprocessedEmployeeCompensationsTypeAmountType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollUnprocessedEmployeeCompensationsTypeAmountType o: PayrollUnprocessedEmployeeCompensationsTypeAmountType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings.java new file mode 100644 index 000000000..be0e095c9 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings.java @@ -0,0 +1,198 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.List; +import java.util.Optional; +import org.openapitools.jackson.nullable.JsonNullable; + +/** + * PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings + * + *

    The one-time custom withholding overrides applied to this payroll for this employee. + * `federal` is null when no federal one-time override is set; `state` is an empty + * array when no state one-time overrides are set. + */ +public class PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings { + /** + * Federal one-time custom withholding override applied to this payroll. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("federal") + private JsonNullable federal; + + /** + * State one-time custom withholding overrides applied to this payroll, one entry per state field. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("state") + private Optional> state; + + @JsonCreator + public PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings( + @JsonProperty("federal") JsonNullable federal, + @JsonProperty("state") Optional> state) { + Utils.checkNotNull(federal, "federal"); + Utils.checkNotNull(state, "state"); + this.federal = federal; + this.state = state; + } + + public PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings() { + this(JsonNullable.undefined(), Optional.empty()); + } + + /** + * Federal one-time custom withholding override applied to this payroll. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public JsonNullable federal() { + return (JsonNullable) federal; + } + + /** + * State one-time custom withholding overrides applied to this payroll, one entry per state field. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> state() { + return (Optional>) state; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Federal one-time custom withholding override applied to this payroll. + */ + public PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings withFederal(PayrollUnprocessedEmployeeCompensationsTypeFederal federal) { + Utils.checkNotNull(federal, "federal"); + this.federal = JsonNullable.of(federal); + return this; + } + + /** + * Federal one-time custom withholding override applied to this payroll. + */ + public PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings withFederal(JsonNullable federal) { + Utils.checkNotNull(federal, "federal"); + this.federal = federal; + return this; + } + + /** + * State one-time custom withholding overrides applied to this payroll, one entry per state field. + */ + public PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings withState(List state) { + Utils.checkNotNull(state, "state"); + this.state = Optional.ofNullable(state); + return this; + } + + + /** + * State one-time custom withholding overrides applied to this payroll, one entry per state field. + */ + public PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings withState(Optional> state) { + Utils.checkNotNull(state, "state"); + this.state = state; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings other = (PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings) o; + return + Utils.enhancedDeepEquals(this.federal, other.federal) && + Utils.enhancedDeepEquals(this.state, other.state); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + federal, state); + } + + @Override + public String toString() { + return Utils.toString(PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings.class, + "federal", federal, + "state", state); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private JsonNullable federal = JsonNullable.undefined(); + + private Optional> state = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * Federal one-time custom withholding override applied to this payroll. + */ + public Builder federal(PayrollUnprocessedEmployeeCompensationsTypeFederal federal) { + Utils.checkNotNull(federal, "federal"); + this.federal = JsonNullable.of(federal); + return this; + } + + /** + * Federal one-time custom withholding override applied to this payroll. + */ + public Builder federal(JsonNullable federal) { + Utils.checkNotNull(federal, "federal"); + this.federal = federal; + return this; + } + + + /** + * State one-time custom withholding overrides applied to this payroll, one entry per state field. + */ + public Builder state(List state) { + Utils.checkNotNull(state, "state"); + this.state = Optional.ofNullable(state); + return this; + } + + /** + * State one-time custom withholding overrides applied to this payroll, one entry per state field. + */ + public Builder state(Optional> state) { + Utils.checkNotNull(state, "state"); + this.state = state; + return this; + } + + public PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings build() { + + return new PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings( + federal, state); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsAmountType.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsAmountType.java new file mode 100644 index 000000000..a834f05a9 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsAmountType.java @@ -0,0 +1,40 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsAmountType + * + *

    How to interpret the amount. + */ +public enum PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsAmountType { + FIXED("fixed"), + PERCENT("percent"); + + @JsonValue + private final String value; + + PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsAmountType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsAmountType o: PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsAmountType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsOverrideType.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsOverrideType.java new file mode 100644 index 000000000..3eae7556a --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsOverrideType.java @@ -0,0 +1,39 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsOverrideType + * + *

    Override mode. Only `one_time` is currently exposed. + */ +public enum PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsOverrideType { + ONE_TIME("one_time"); + + @JsonValue + private final String value; + + PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsOverrideType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsOverrideType o: PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsOverrideType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeFederal.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeFederal.java new file mode 100644 index 000000000..6d27ea32b --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeFederal.java @@ -0,0 +1,255 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + +/** + * PayrollUnprocessedEmployeeCompensationsTypeFederal + * + *

    Federal one-time custom withholding override applied to this payroll. + */ +public class PayrollUnprocessedEmployeeCompensationsTypeFederal { + /** + * Override mode. Only `one_time` is currently exposed. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("override_type") + private Optional overrideType; + + /** + * The amount that was withheld for this payroll. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("amount") + private Optional amount; + + /** + * How to interpret the amount. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("amount_type") + private Optional amountType; + + @JsonCreator + public PayrollUnprocessedEmployeeCompensationsTypeFederal( + @JsonProperty("override_type") Optional overrideType, + @JsonProperty("amount") Optional amount, + @JsonProperty("amount_type") Optional amountType) { + Utils.checkNotNull(overrideType, "overrideType"); + Utils.checkNotNull(amount, "amount"); + Utils.checkNotNull(amountType, "amountType"); + this.overrideType = overrideType; + this.amount = amount; + this.amountType = amountType; + } + + public PayrollUnprocessedEmployeeCompensationsTypeFederal() { + this(Optional.empty(), Optional.empty(), Optional.empty()); + } + + /** + * Override mode. Only `one_time` is currently exposed. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional overrideType() { + return (Optional) overrideType; + } + + /** + * The amount that was withheld for this payroll. + */ + @JsonIgnore + public Optional amount() { + return amount; + } + + /** + * How to interpret the amount. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional amountType() { + return (Optional) amountType; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public PayrollUnprocessedEmployeeCompensationsTypeFederal withOverrideType(PayrollUnprocessedEmployeeCompensationsTypeOverrideType overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = Optional.ofNullable(overrideType); + return this; + } + + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public PayrollUnprocessedEmployeeCompensationsTypeFederal withOverrideType(Optional overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = overrideType; + return this; + } + + /** + * The amount that was withheld for this payroll. + */ + public PayrollUnprocessedEmployeeCompensationsTypeFederal withAmount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = Optional.ofNullable(amount); + return this; + } + + + /** + * The amount that was withheld for this payroll. + */ + public PayrollUnprocessedEmployeeCompensationsTypeFederal withAmount(Optional amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + /** + * How to interpret the amount. + */ + public PayrollUnprocessedEmployeeCompensationsTypeFederal withAmountType(PayrollUnprocessedEmployeeCompensationsTypeAmountType amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = Optional.ofNullable(amountType); + return this; + } + + + /** + * How to interpret the amount. + */ + public PayrollUnprocessedEmployeeCompensationsTypeFederal withAmountType(Optional amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = amountType; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PayrollUnprocessedEmployeeCompensationsTypeFederal other = (PayrollUnprocessedEmployeeCompensationsTypeFederal) o; + return + Utils.enhancedDeepEquals(this.overrideType, other.overrideType) && + Utils.enhancedDeepEquals(this.amount, other.amount) && + Utils.enhancedDeepEquals(this.amountType, other.amountType); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + overrideType, amount, amountType); + } + + @Override + public String toString() { + return Utils.toString(PayrollUnprocessedEmployeeCompensationsTypeFederal.class, + "overrideType", overrideType, + "amount", amount, + "amountType", amountType); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional overrideType = Optional.empty(); + + private Optional amount = Optional.empty(); + + private Optional amountType = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public Builder overrideType(PayrollUnprocessedEmployeeCompensationsTypeOverrideType overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = Optional.ofNullable(overrideType); + return this; + } + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public Builder overrideType(Optional overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = overrideType; + return this; + } + + + /** + * The amount that was withheld for this payroll. + */ + public Builder amount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = Optional.ofNullable(amount); + return this; + } + + /** + * The amount that was withheld for this payroll. + */ + public Builder amount(Optional amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + + /** + * How to interpret the amount. + */ + public Builder amountType(PayrollUnprocessedEmployeeCompensationsTypeAmountType amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = Optional.ofNullable(amountType); + return this; + } + + /** + * How to interpret the amount. + */ + public Builder amountType(Optional amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = amountType; + return this; + } + + public PayrollUnprocessedEmployeeCompensationsTypeFederal build() { + + return new PayrollUnprocessedEmployeeCompensationsTypeFederal( + overrideType, amount, amountType); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollEmployeeCompensationsTypeFixedCompensations.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeFixedCompensations.java similarity index 83% rename from gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollEmployeeCompensationsTypeFixedCompensations.java rename to gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeFixedCompensations.java index ee7fd87dc..02e9b6b20 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollEmployeeCompensationsTypeFixedCompensations.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeFixedCompensations.java @@ -14,7 +14,7 @@ import java.util.Optional; -public class PayrollEmployeeCompensationsTypeFixedCompensations { +public class PayrollUnprocessedEmployeeCompensationsTypeFixedCompensations { /** * The name of the compensation. This also serves as the unique, immutable identifier for this * compensation. @@ -38,7 +38,7 @@ public class PayrollEmployeeCompensationsTypeFixedCompensations { private Optional jobUuid; @JsonCreator - public PayrollEmployeeCompensationsTypeFixedCompensations( + public PayrollUnprocessedEmployeeCompensationsTypeFixedCompensations( @JsonProperty("name") Optional name, @JsonProperty("amount") Optional amount, @JsonProperty("job_uuid") Optional jobUuid) { @@ -50,7 +50,7 @@ public PayrollEmployeeCompensationsTypeFixedCompensations( this.jobUuid = jobUuid; } - public PayrollEmployeeCompensationsTypeFixedCompensations() { + public PayrollUnprocessedEmployeeCompensationsTypeFixedCompensations() { this(Optional.empty(), Optional.empty(), Optional.empty()); } @@ -88,7 +88,7 @@ public static Builder builder() { * The name of the compensation. This also serves as the unique, immutable identifier for this * compensation. */ - public PayrollEmployeeCompensationsTypeFixedCompensations withName(String name) { + public PayrollUnprocessedEmployeeCompensationsTypeFixedCompensations withName(String name) { Utils.checkNotNull(name, "name"); this.name = Optional.ofNullable(name); return this; @@ -99,7 +99,7 @@ public PayrollEmployeeCompensationsTypeFixedCompensations withName(String name) * The name of the compensation. This also serves as the unique, immutable identifier for this * compensation. */ - public PayrollEmployeeCompensationsTypeFixedCompensations withName(Optional name) { + public PayrollUnprocessedEmployeeCompensationsTypeFixedCompensations withName(Optional name) { Utils.checkNotNull(name, "name"); this.name = name; return this; @@ -108,7 +108,7 @@ public PayrollEmployeeCompensationsTypeFixedCompensations withName(Optional amount) { + public PayrollUnprocessedEmployeeCompensationsTypeFixedCompensations withAmount(Optional amount) { Utils.checkNotNull(amount, "amount"); this.amount = amount; return this; @@ -127,7 +127,7 @@ public PayrollEmployeeCompensationsTypeFixedCompensations withAmount(Optional jobUuid) { + public PayrollUnprocessedEmployeeCompensationsTypeFixedCompensations withJobUuid(Optional jobUuid) { Utils.checkNotNull(jobUuid, "jobUuid"); this.jobUuid = jobUuid; return this; @@ -151,7 +151,7 @@ public boolean equals(java.lang.Object o) { if (o == null || getClass() != o.getClass()) { return false; } - PayrollEmployeeCompensationsTypeFixedCompensations other = (PayrollEmployeeCompensationsTypeFixedCompensations) o; + PayrollUnprocessedEmployeeCompensationsTypeFixedCompensations other = (PayrollUnprocessedEmployeeCompensationsTypeFixedCompensations) o; return Utils.enhancedDeepEquals(this.name, other.name) && Utils.enhancedDeepEquals(this.amount, other.amount) && @@ -166,7 +166,7 @@ public int hashCode() { @Override public String toString() { - return Utils.toString(PayrollEmployeeCompensationsTypeFixedCompensations.class, + return Utils.toString(PayrollUnprocessedEmployeeCompensationsTypeFixedCompensations.class, "name", name, "amount", amount, "jobUuid", jobUuid); @@ -244,9 +244,9 @@ public Builder jobUuid(Optional jobUuid) { return this; } - public PayrollEmployeeCompensationsTypeFixedCompensations build() { + public PayrollUnprocessedEmployeeCompensationsTypeFixedCompensations build() { - return new PayrollEmployeeCompensationsTypeFixedCompensations( + return new PayrollUnprocessedEmployeeCompensationsTypeFixedCompensations( name, amount, jobUuid); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollEmployeeCompensationsTypeHourlyCompensations.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeHourlyCompensations.java similarity index 86% rename from gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollEmployeeCompensationsTypeHourlyCompensations.java rename to gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeHourlyCompensations.java index fc0389fee..081b5a4d7 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollEmployeeCompensationsTypeHourlyCompensations.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeHourlyCompensations.java @@ -15,7 +15,7 @@ import java.util.Optional; -public class PayrollEmployeeCompensationsTypeHourlyCompensations { +public class PayrollUnprocessedEmployeeCompensationsTypeHourlyCompensations { /** * The name of the compensation. This also serves as the unique, immutable identifier for this * compensation. @@ -61,7 +61,7 @@ public class PayrollEmployeeCompensationsTypeHourlyCompensations { private Optional flsaStatus; @JsonCreator - public PayrollEmployeeCompensationsTypeHourlyCompensations( + public PayrollUnprocessedEmployeeCompensationsTypeHourlyCompensations( @JsonProperty("name") Optional name, @JsonProperty("hours") Optional hours, @JsonProperty("amount") Optional amount, @@ -82,7 +82,7 @@ public PayrollEmployeeCompensationsTypeHourlyCompensations( this.flsaStatus = flsaStatus; } - public PayrollEmployeeCompensationsTypeHourlyCompensations() { + public PayrollUnprocessedEmployeeCompensationsTypeHourlyCompensations() { this(Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty()); } @@ -146,7 +146,7 @@ public static Builder builder() { * The name of the compensation. This also serves as the unique, immutable identifier for this * compensation. */ - public PayrollEmployeeCompensationsTypeHourlyCompensations withName(String name) { + public PayrollUnprocessedEmployeeCompensationsTypeHourlyCompensations withName(String name) { Utils.checkNotNull(name, "name"); this.name = Optional.ofNullable(name); return this; @@ -157,7 +157,7 @@ public PayrollEmployeeCompensationsTypeHourlyCompensations withName(String name) * The name of the compensation. This also serves as the unique, immutable identifier for this * compensation. */ - public PayrollEmployeeCompensationsTypeHourlyCompensations withName(Optional name) { + public PayrollUnprocessedEmployeeCompensationsTypeHourlyCompensations withName(Optional name) { Utils.checkNotNull(name, "name"); this.name = name; return this; @@ -166,7 +166,7 @@ public PayrollEmployeeCompensationsTypeHourlyCompensations withName(Optional hours) { + public PayrollUnprocessedEmployeeCompensationsTypeHourlyCompensations withHours(Optional hours) { Utils.checkNotNull(hours, "hours"); this.hours = hours; return this; @@ -186,7 +186,7 @@ public PayrollEmployeeCompensationsTypeHourlyCompensations withHours(Optional amount) { + public PayrollUnprocessedEmployeeCompensationsTypeHourlyCompensations withAmount(Optional amount) { Utils.checkNotNull(amount, "amount"); this.amount = amount; return this; @@ -206,7 +206,7 @@ public PayrollEmployeeCompensationsTypeHourlyCompensations withAmount(Optional jobUuid) { + public PayrollUnprocessedEmployeeCompensationsTypeHourlyCompensations withJobUuid(Optional jobUuid) { Utils.checkNotNull(jobUuid, "jobUuid"); this.jobUuid = jobUuid; return this; @@ -225,7 +225,7 @@ public PayrollEmployeeCompensationsTypeHourlyCompensations withJobUuid(Optional< /** * The amount multiplied by the base rate to calculate total compensation per hour worked. */ - public PayrollEmployeeCompensationsTypeHourlyCompensations withCompensationMultiplier(double compensationMultiplier) { + public PayrollUnprocessedEmployeeCompensationsTypeHourlyCompensations withCompensationMultiplier(double compensationMultiplier) { Utils.checkNotNull(compensationMultiplier, "compensationMultiplier"); this.compensationMultiplier = Optional.ofNullable(compensationMultiplier); return this; @@ -235,7 +235,7 @@ public PayrollEmployeeCompensationsTypeHourlyCompensations withCompensationMulti /** * The amount multiplied by the base rate to calculate total compensation per hour worked. */ - public PayrollEmployeeCompensationsTypeHourlyCompensations withCompensationMultiplier(Optional compensationMultiplier) { + public PayrollUnprocessedEmployeeCompensationsTypeHourlyCompensations withCompensationMultiplier(Optional compensationMultiplier) { Utils.checkNotNull(compensationMultiplier, "compensationMultiplier"); this.compensationMultiplier = compensationMultiplier; return this; @@ -244,7 +244,7 @@ public PayrollEmployeeCompensationsTypeHourlyCompensations withCompensationMulti /** * The FLSA Status of the employee's primary job compensation */ - public PayrollEmployeeCompensationsTypeHourlyCompensations withFlsaStatus(String flsaStatus) { + public PayrollUnprocessedEmployeeCompensationsTypeHourlyCompensations withFlsaStatus(String flsaStatus) { Utils.checkNotNull(flsaStatus, "flsaStatus"); this.flsaStatus = Optional.ofNullable(flsaStatus); return this; @@ -254,7 +254,7 @@ public PayrollEmployeeCompensationsTypeHourlyCompensations withFlsaStatus(String /** * The FLSA Status of the employee's primary job compensation */ - public PayrollEmployeeCompensationsTypeHourlyCompensations withFlsaStatus(Optional flsaStatus) { + public PayrollUnprocessedEmployeeCompensationsTypeHourlyCompensations withFlsaStatus(Optional flsaStatus) { Utils.checkNotNull(flsaStatus, "flsaStatus"); this.flsaStatus = flsaStatus; return this; @@ -268,7 +268,7 @@ public boolean equals(java.lang.Object o) { if (o == null || getClass() != o.getClass()) { return false; } - PayrollEmployeeCompensationsTypeHourlyCompensations other = (PayrollEmployeeCompensationsTypeHourlyCompensations) o; + PayrollUnprocessedEmployeeCompensationsTypeHourlyCompensations other = (PayrollUnprocessedEmployeeCompensationsTypeHourlyCompensations) o; return Utils.enhancedDeepEquals(this.name, other.name) && Utils.enhancedDeepEquals(this.hours, other.hours) && @@ -287,7 +287,7 @@ public int hashCode() { @Override public String toString() { - return Utils.toString(PayrollEmployeeCompensationsTypeHourlyCompensations.class, + return Utils.toString(PayrollUnprocessedEmployeeCompensationsTypeHourlyCompensations.class, "name", name, "hours", hours, "amount", amount, @@ -433,9 +433,9 @@ public Builder flsaStatus(Optional flsaStatus) { return this; } - public PayrollEmployeeCompensationsTypeHourlyCompensations build() { + public PayrollUnprocessedEmployeeCompensationsTypeHourlyCompensations build() { - return new PayrollEmployeeCompensationsTypeHourlyCompensations( + return new PayrollUnprocessedEmployeeCompensationsTypeHourlyCompensations( name, hours, amount, jobUuid, compensationMultiplier, flsaStatus); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeOverrideType.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeOverrideType.java new file mode 100644 index 000000000..78c685ad4 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeOverrideType.java @@ -0,0 +1,39 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollUnprocessedEmployeeCompensationsTypeOverrideType + * + *

    Override mode. Only `one_time` is currently exposed. + */ +public enum PayrollUnprocessedEmployeeCompensationsTypeOverrideType { + ONE_TIME("one_time"); + + @JsonValue + private final String value; + + PayrollUnprocessedEmployeeCompensationsTypeOverrideType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollUnprocessedEmployeeCompensationsTypeOverrideType o: PayrollUnprocessedEmployeeCompensationsTypeOverrideType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollEmployeeCompensationsTypeReimbursements.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeReimbursements.java similarity index 86% rename from gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollEmployeeCompensationsTypeReimbursements.java rename to gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeReimbursements.java index 85f31f65c..fe81ef960 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollEmployeeCompensationsTypeReimbursements.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeReimbursements.java @@ -16,7 +16,7 @@ import org.openapitools.jackson.nullable.JsonNullable; -public class PayrollEmployeeCompensationsTypeReimbursements { +public class PayrollUnprocessedEmployeeCompensationsTypeReimbursements { /** * The dollar amount of the reimbursement for the pay period. */ @@ -46,7 +46,7 @@ public class PayrollEmployeeCompensationsTypeReimbursements { private Optional recurring; @JsonCreator - public PayrollEmployeeCompensationsTypeReimbursements( + public PayrollUnprocessedEmployeeCompensationsTypeReimbursements( @JsonProperty("amount") String amount, @JsonProperty("description") Optional description, @JsonProperty("uuid") JsonNullable uuid, @@ -61,7 +61,7 @@ public PayrollEmployeeCompensationsTypeReimbursements( this.recurring = recurring; } - public PayrollEmployeeCompensationsTypeReimbursements( + public PayrollUnprocessedEmployeeCompensationsTypeReimbursements( String amount) { this(amount, Optional.empty(), JsonNullable.undefined(), Optional.empty()); @@ -108,7 +108,7 @@ public static Builder builder() { /** * The dollar amount of the reimbursement for the pay period. */ - public PayrollEmployeeCompensationsTypeReimbursements withAmount(String amount) { + public PayrollUnprocessedEmployeeCompensationsTypeReimbursements withAmount(String amount) { Utils.checkNotNull(amount, "amount"); this.amount = amount; return this; @@ -117,7 +117,7 @@ public PayrollEmployeeCompensationsTypeReimbursements withAmount(String amount) /** * The description of the reimbursement. Null for unnamed reimbursements. */ - public PayrollEmployeeCompensationsTypeReimbursements withDescription(String description) { + public PayrollUnprocessedEmployeeCompensationsTypeReimbursements withDescription(String description) { Utils.checkNotNull(description, "description"); this.description = Optional.ofNullable(description); return this; @@ -127,7 +127,7 @@ public PayrollEmployeeCompensationsTypeReimbursements withDescription(String des /** * The description of the reimbursement. Null for unnamed reimbursements. */ - public PayrollEmployeeCompensationsTypeReimbursements withDescription(Optional description) { + public PayrollUnprocessedEmployeeCompensationsTypeReimbursements withDescription(Optional description) { Utils.checkNotNull(description, "description"); this.description = description; return this; @@ -137,7 +137,7 @@ public PayrollEmployeeCompensationsTypeReimbursements withDescription(Optional uuid) { + public PayrollUnprocessedEmployeeCompensationsTypeReimbursements withUuid(JsonNullable uuid) { Utils.checkNotNull(uuid, "uuid"); this.uuid = uuid; return this; @@ -156,7 +156,7 @@ public PayrollEmployeeCompensationsTypeReimbursements withUuid(JsonNullable recurring) { + public PayrollUnprocessedEmployeeCompensationsTypeReimbursements withRecurring(Optional recurring) { Utils.checkNotNull(recurring, "recurring"); this.recurring = recurring; return this; @@ -180,7 +180,7 @@ public boolean equals(java.lang.Object o) { if (o == null || getClass() != o.getClass()) { return false; } - PayrollEmployeeCompensationsTypeReimbursements other = (PayrollEmployeeCompensationsTypeReimbursements) o; + PayrollUnprocessedEmployeeCompensationsTypeReimbursements other = (PayrollUnprocessedEmployeeCompensationsTypeReimbursements) o; return Utils.enhancedDeepEquals(this.amount, other.amount) && Utils.enhancedDeepEquals(this.description, other.description) && @@ -197,7 +197,7 @@ public int hashCode() { @Override public String toString() { - return Utils.toString(PayrollEmployeeCompensationsTypeReimbursements.class, + return Utils.toString(PayrollUnprocessedEmployeeCompensationsTypeReimbursements.class, "amount", amount, "description", description, "uuid", uuid, @@ -288,9 +288,9 @@ public Builder recurring(Optional recurring) { return this; } - public PayrollEmployeeCompensationsTypeReimbursements build() { + public PayrollUnprocessedEmployeeCompensationsTypeReimbursements build() { - return new PayrollEmployeeCompensationsTypeReimbursements( + return new PayrollUnprocessedEmployeeCompensationsTypeReimbursements( amount, description, uuid, recurring); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeState.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeState.java new file mode 100644 index 000000000..432e4dcec --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeState.java @@ -0,0 +1,314 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class PayrollUnprocessedEmployeeCompensationsTypeState { + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("employee_state_field_uuid") + private Optional employeeStateFieldUuid; + + /** + * Override mode. Only `one_time` is currently exposed. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("override_type") + private Optional overrideType; + + /** + * The amount that was withheld for this payroll. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("amount") + private Optional amount; + + /** + * How to interpret the amount. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("amount_type") + private Optional amountType; + + @JsonCreator + public PayrollUnprocessedEmployeeCompensationsTypeState( + @JsonProperty("employee_state_field_uuid") Optional employeeStateFieldUuid, + @JsonProperty("override_type") Optional overrideType, + @JsonProperty("amount") Optional amount, + @JsonProperty("amount_type") Optional amountType) { + Utils.checkNotNull(employeeStateFieldUuid, "employeeStateFieldUuid"); + Utils.checkNotNull(overrideType, "overrideType"); + Utils.checkNotNull(amount, "amount"); + Utils.checkNotNull(amountType, "amountType"); + this.employeeStateFieldUuid = employeeStateFieldUuid; + this.overrideType = overrideType; + this.amount = amount; + this.amountType = amountType; + } + + public PayrollUnprocessedEmployeeCompensationsTypeState() { + this(Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty()); + } + + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + @JsonIgnore + public Optional employeeStateFieldUuid() { + return employeeStateFieldUuid; + } + + /** + * Override mode. Only `one_time` is currently exposed. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional overrideType() { + return (Optional) overrideType; + } + + /** + * The amount that was withheld for this payroll. + */ + @JsonIgnore + public Optional amount() { + return amount; + } + + /** + * How to interpret the amount. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional amountType() { + return (Optional) amountType; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + public PayrollUnprocessedEmployeeCompensationsTypeState withEmployeeStateFieldUuid(String employeeStateFieldUuid) { + Utils.checkNotNull(employeeStateFieldUuid, "employeeStateFieldUuid"); + this.employeeStateFieldUuid = Optional.ofNullable(employeeStateFieldUuid); + return this; + } + + + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + public PayrollUnprocessedEmployeeCompensationsTypeState withEmployeeStateFieldUuid(Optional employeeStateFieldUuid) { + Utils.checkNotNull(employeeStateFieldUuid, "employeeStateFieldUuid"); + this.employeeStateFieldUuid = employeeStateFieldUuid; + return this; + } + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public PayrollUnprocessedEmployeeCompensationsTypeState withOverrideType(PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsOverrideType overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = Optional.ofNullable(overrideType); + return this; + } + + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public PayrollUnprocessedEmployeeCompensationsTypeState withOverrideType(Optional overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = overrideType; + return this; + } + + /** + * The amount that was withheld for this payroll. + */ + public PayrollUnprocessedEmployeeCompensationsTypeState withAmount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = Optional.ofNullable(amount); + return this; + } + + + /** + * The amount that was withheld for this payroll. + */ + public PayrollUnprocessedEmployeeCompensationsTypeState withAmount(Optional amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + /** + * How to interpret the amount. + */ + public PayrollUnprocessedEmployeeCompensationsTypeState withAmountType(PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsAmountType amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = Optional.ofNullable(amountType); + return this; + } + + + /** + * How to interpret the amount. + */ + public PayrollUnprocessedEmployeeCompensationsTypeState withAmountType(Optional amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = amountType; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PayrollUnprocessedEmployeeCompensationsTypeState other = (PayrollUnprocessedEmployeeCompensationsTypeState) o; + return + Utils.enhancedDeepEquals(this.employeeStateFieldUuid, other.employeeStateFieldUuid) && + Utils.enhancedDeepEquals(this.overrideType, other.overrideType) && + Utils.enhancedDeepEquals(this.amount, other.amount) && + Utils.enhancedDeepEquals(this.amountType, other.amountType); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + employeeStateFieldUuid, overrideType, amount, + amountType); + } + + @Override + public String toString() { + return Utils.toString(PayrollUnprocessedEmployeeCompensationsTypeState.class, + "employeeStateFieldUuid", employeeStateFieldUuid, + "overrideType", overrideType, + "amount", amount, + "amountType", amountType); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional employeeStateFieldUuid = Optional.empty(); + + private Optional overrideType = Optional.empty(); + + private Optional amount = Optional.empty(); + + private Optional amountType = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + public Builder employeeStateFieldUuid(String employeeStateFieldUuid) { + Utils.checkNotNull(employeeStateFieldUuid, "employeeStateFieldUuid"); + this.employeeStateFieldUuid = Optional.ofNullable(employeeStateFieldUuid); + return this; + } + + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + public Builder employeeStateFieldUuid(Optional employeeStateFieldUuid) { + Utils.checkNotNull(employeeStateFieldUuid, "employeeStateFieldUuid"); + this.employeeStateFieldUuid = employeeStateFieldUuid; + return this; + } + + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public Builder overrideType(PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsOverrideType overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = Optional.ofNullable(overrideType); + return this; + } + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public Builder overrideType(Optional overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = overrideType; + return this; + } + + + /** + * The amount that was withheld for this payroll. + */ + public Builder amount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = Optional.ofNullable(amount); + return this; + } + + /** + * The amount that was withheld for this payroll. + */ + public Builder amount(Optional amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + + /** + * How to interpret the amount. + */ + public Builder amountType(PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsAmountType amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = Optional.ofNullable(amountType); + return this; + } + + /** + * How to interpret the amount. + */ + public Builder amountType(Optional amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = amountType; + return this; + } + + public PayrollUnprocessedEmployeeCompensationsTypeState build() { + + return new PayrollUnprocessedEmployeeCompensationsTypeState( + employeeStateFieldUuid, overrideType, amount, + amountType); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUpdateCustomWithholdings.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUpdateCustomWithholdings.java new file mode 100644 index 000000000..250cda7d3 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUpdateCustomWithholdings.java @@ -0,0 +1,200 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.List; +import java.util.Optional; + +/** + * PayrollUpdateCustomWithholdings + * + *

    Optional per-payroll one-time custom withholdings for federal and/or state income tax. + * When provided, the supplied override takes precedence over any persistent withholding schedule for + * this run. + * This field is in limited release; if your application does not have access, requests including it + * are silently ignored. + */ +public class PayrollUpdateCustomWithholdings { + /** + * Federal one-time custom withholding override. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("federal") + private Optional federal; + + /** + * State one-time custom withholding overrides, one entry per state field. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("state") + private Optional> state; + + @JsonCreator + public PayrollUpdateCustomWithholdings( + @JsonProperty("federal") Optional federal, + @JsonProperty("state") Optional> state) { + Utils.checkNotNull(federal, "federal"); + Utils.checkNotNull(state, "state"); + this.federal = federal; + this.state = state; + } + + public PayrollUpdateCustomWithholdings() { + this(Optional.empty(), Optional.empty()); + } + + /** + * Federal one-time custom withholding override. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional federal() { + return (Optional) federal; + } + + /** + * State one-time custom withholding overrides, one entry per state field. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> state() { + return (Optional>) state; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Federal one-time custom withholding override. + */ + public PayrollUpdateCustomWithholdings withFederal(PayrollUpdateFederal federal) { + Utils.checkNotNull(federal, "federal"); + this.federal = Optional.ofNullable(federal); + return this; + } + + + /** + * Federal one-time custom withholding override. + */ + public PayrollUpdateCustomWithholdings withFederal(Optional federal) { + Utils.checkNotNull(federal, "federal"); + this.federal = federal; + return this; + } + + /** + * State one-time custom withholding overrides, one entry per state field. + */ + public PayrollUpdateCustomWithholdings withState(List state) { + Utils.checkNotNull(state, "state"); + this.state = Optional.ofNullable(state); + return this; + } + + + /** + * State one-time custom withholding overrides, one entry per state field. + */ + public PayrollUpdateCustomWithholdings withState(Optional> state) { + Utils.checkNotNull(state, "state"); + this.state = state; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PayrollUpdateCustomWithholdings other = (PayrollUpdateCustomWithholdings) o; + return + Utils.enhancedDeepEquals(this.federal, other.federal) && + Utils.enhancedDeepEquals(this.state, other.state); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + federal, state); + } + + @Override + public String toString() { + return Utils.toString(PayrollUpdateCustomWithholdings.class, + "federal", federal, + "state", state); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional federal = Optional.empty(); + + private Optional> state = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * Federal one-time custom withholding override. + */ + public Builder federal(PayrollUpdateFederal federal) { + Utils.checkNotNull(federal, "federal"); + this.federal = Optional.ofNullable(federal); + return this; + } + + /** + * Federal one-time custom withholding override. + */ + public Builder federal(Optional federal) { + Utils.checkNotNull(federal, "federal"); + this.federal = federal; + return this; + } + + + /** + * State one-time custom withholding overrides, one entry per state field. + */ + public Builder state(List state) { + Utils.checkNotNull(state, "state"); + this.state = Optional.ofNullable(state); + return this; + } + + /** + * State one-time custom withholding overrides, one entry per state field. + */ + public Builder state(Optional> state) { + Utils.checkNotNull(state, "state"); + this.state = state; + return this; + } + + public PayrollUpdateCustomWithholdings build() { + + return new PayrollUpdateCustomWithholdings( + federal, state); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUpdateEmployeeCompensations.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUpdateEmployeeCompensations.java index f0c156940..d5bb82abb 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUpdateEmployeeCompensations.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUpdateEmployeeCompensations.java @@ -70,6 +70,17 @@ public class PayrollUpdateEmployeeCompensations { @JsonProperty("deductions") private Optional> deductions; + /** + * Optional per-payroll one-time custom withholdings for federal and/or state income tax. + * When provided, the supplied override takes precedence over any persistent withholding schedule for + * this run. + * This field is in limited release; if your application does not have access, requests including it + * are silently ignored. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("custom_withholdings") + private Optional customWithholdings; + /** * An array of all paid time off the employee is eligible for this pay period. Each paid time off * object can be the name or the specific policy_uuid. @@ -95,6 +106,7 @@ public PayrollUpdateEmployeeCompensations( @JsonProperty("fixed_compensations") Optional> fixedCompensations, @JsonProperty("hourly_compensations") Optional> hourlyCompensations, @JsonProperty("deductions") Optional> deductions, + @JsonProperty("custom_withholdings") Optional customWithholdings, @JsonProperty("paid_time_off") Optional> paidTimeOff, @JsonProperty("reimbursements") Optional> reimbursements) { Utils.checkNotNull(employeeUuid, "employeeUuid"); @@ -105,6 +117,7 @@ public PayrollUpdateEmployeeCompensations( Utils.checkNotNull(fixedCompensations, "fixedCompensations"); Utils.checkNotNull(hourlyCompensations, "hourlyCompensations"); Utils.checkNotNull(deductions, "deductions"); + Utils.checkNotNull(customWithholdings, "customWithholdings"); Utils.checkNotNull(paidTimeOff, "paidTimeOff"); Utils.checkNotNull(reimbursements, "reimbursements"); this.employeeUuid = employeeUuid; @@ -115,6 +128,7 @@ public PayrollUpdateEmployeeCompensations( this.fixedCompensations = fixedCompensations; this.hourlyCompensations = hourlyCompensations; this.deductions = deductions; + this.customWithholdings = customWithholdings; this.paidTimeOff = paidTimeOff; this.reimbursements = reimbursements; } @@ -123,7 +137,7 @@ public PayrollUpdateEmployeeCompensations() { this(Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), - Optional.empty()); + Optional.empty(), Optional.empty()); } /** @@ -187,6 +201,19 @@ public Optional> deductions() { return (Optional>) deductions; } + /** + * Optional per-payroll one-time custom withholdings for federal and/or state income tax. + * When provided, the supplied override takes precedence over any persistent withholding schedule for + * this run. + * This field is in limited release; if your application does not have access, requests including it + * are silently ignored. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional customWithholdings() { + return (Optional) customWithholdings; + } + /** * An array of all paid time off the employee is eligible for this pay period. Each paid time off * object can be the name or the specific policy_uuid. @@ -349,6 +376,33 @@ public PayrollUpdateEmployeeCompensations withDeductions(Optional customWithholdings) { + Utils.checkNotNull(customWithholdings, "customWithholdings"); + this.customWithholdings = customWithholdings; + return this; + } + /** * An array of all paid time off the employee is eligible for this pay period. Each paid time off * object can be the name or the specific policy_uuid. @@ -407,6 +461,7 @@ public boolean equals(java.lang.Object o) { Utils.enhancedDeepEquals(this.fixedCompensations, other.fixedCompensations) && Utils.enhancedDeepEquals(this.hourlyCompensations, other.hourlyCompensations) && Utils.enhancedDeepEquals(this.deductions, other.deductions) && + Utils.enhancedDeepEquals(this.customWithholdings, other.customWithholdings) && Utils.enhancedDeepEquals(this.paidTimeOff, other.paidTimeOff) && Utils.enhancedDeepEquals(this.reimbursements, other.reimbursements); } @@ -416,8 +471,8 @@ public int hashCode() { return Utils.enhancedHash( employeeUuid, version, excluded, paymentMethod, memo, fixedCompensations, - hourlyCompensations, deductions, paidTimeOff, - reimbursements); + hourlyCompensations, deductions, customWithholdings, + paidTimeOff, reimbursements); } @Override @@ -431,6 +486,7 @@ public String toString() { "fixedCompensations", fixedCompensations, "hourlyCompensations", hourlyCompensations, "deductions", deductions, + "customWithholdings", customWithholdings, "paidTimeOff", paidTimeOff, "reimbursements", reimbursements); } @@ -454,6 +510,8 @@ public final static class Builder { private Optional> deductions = Optional.empty(); + private Optional customWithholdings = Optional.empty(); + private Optional> paidTimeOff = Optional.empty(); private Optional> reimbursements = Optional.empty(); @@ -601,6 +659,33 @@ public Builder deductions(Optional> dedu } + /** + * Optional per-payroll one-time custom withholdings for federal and/or state income tax. + * When provided, the supplied override takes precedence over any persistent withholding schedule for + * this run. + * This field is in limited release; if your application does not have access, requests including it + * are silently ignored. + */ + public Builder customWithholdings(PayrollUpdateCustomWithholdings customWithholdings) { + Utils.checkNotNull(customWithholdings, "customWithholdings"); + this.customWithholdings = Optional.ofNullable(customWithholdings); + return this; + } + + /** + * Optional per-payroll one-time custom withholdings for federal and/or state income tax. + * When provided, the supplied override takes precedence over any persistent withholding schedule for + * this run. + * This field is in limited release; if your application does not have access, requests including it + * are silently ignored. + */ + public Builder customWithholdings(Optional customWithholdings) { + Utils.checkNotNull(customWithholdings, "customWithholdings"); + this.customWithholdings = customWithholdings; + return this; + } + + /** * An array of all paid time off the employee is eligible for this pay period. Each paid time off * object can be the name or the specific policy_uuid. @@ -645,8 +730,8 @@ public PayrollUpdateEmployeeCompensations build() { return new PayrollUpdateEmployeeCompensations( employeeUuid, version, excluded, paymentMethod, memo, fixedCompensations, - hourlyCompensations, deductions, paidTimeOff, - reimbursements); + hourlyCompensations, deductions, customWithholdings, + paidTimeOff, reimbursements); } } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUpdateEmployeeCompensationsAmountType.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUpdateEmployeeCompensationsAmountType.java new file mode 100644 index 000000000..7f43dc67e --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUpdateEmployeeCompensationsAmountType.java @@ -0,0 +1,40 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollUpdateEmployeeCompensationsAmountType + * + *

    How to interpret the amount. + */ +public enum PayrollUpdateEmployeeCompensationsAmountType { + FIXED("fixed"), + PERCENT("percent"); + + @JsonValue + private final String value; + + PayrollUpdateEmployeeCompensationsAmountType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollUpdateEmployeeCompensationsAmountType o: PayrollUpdateEmployeeCompensationsAmountType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUpdateEmployeeCompensationsCustomWithholdingsAmountType.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUpdateEmployeeCompensationsCustomWithholdingsAmountType.java new file mode 100644 index 000000000..87ef61828 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUpdateEmployeeCompensationsCustomWithholdingsAmountType.java @@ -0,0 +1,40 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollUpdateEmployeeCompensationsCustomWithholdingsAmountType + * + *

    How to interpret the amount. + */ +public enum PayrollUpdateEmployeeCompensationsCustomWithholdingsAmountType { + FIXED("fixed"), + PERCENT("percent"); + + @JsonValue + private final String value; + + PayrollUpdateEmployeeCompensationsCustomWithholdingsAmountType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollUpdateEmployeeCompensationsCustomWithholdingsAmountType o: PayrollUpdateEmployeeCompensationsCustomWithholdingsAmountType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUpdateEmployeeCompensationsOverrideType.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUpdateEmployeeCompensationsOverrideType.java new file mode 100644 index 000000000..86b01e68e --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUpdateEmployeeCompensationsOverrideType.java @@ -0,0 +1,39 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollUpdateEmployeeCompensationsOverrideType + * + *

    Override mode. Only `one_time` is currently supported. + */ +public enum PayrollUpdateEmployeeCompensationsOverrideType { + ONE_TIME("one_time"); + + @JsonValue + private final String value; + + PayrollUpdateEmployeeCompensationsOverrideType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollUpdateEmployeeCompensationsOverrideType o: PayrollUpdateEmployeeCompensationsOverrideType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUpdateFederal.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUpdateFederal.java new file mode 100644 index 000000000..bba0a47e9 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUpdateFederal.java @@ -0,0 +1,255 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + +/** + * PayrollUpdateFederal + * + *

    Federal one-time custom withholding override. + */ +public class PayrollUpdateFederal { + /** + * Override mode. Only `one_time` is currently supported. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("override_type") + private Optional overrideType; + + /** + * The amount to be withheld for this payroll. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("amount") + private Optional amount; + + /** + * How to interpret the amount. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("amount_type") + private Optional amountType; + + @JsonCreator + public PayrollUpdateFederal( + @JsonProperty("override_type") Optional overrideType, + @JsonProperty("amount") Optional amount, + @JsonProperty("amount_type") Optional amountType) { + Utils.checkNotNull(overrideType, "overrideType"); + Utils.checkNotNull(amount, "amount"); + Utils.checkNotNull(amountType, "amountType"); + this.overrideType = overrideType; + this.amount = amount; + this.amountType = amountType; + } + + public PayrollUpdateFederal() { + this(Optional.empty(), Optional.empty(), Optional.empty()); + } + + /** + * Override mode. Only `one_time` is currently supported. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional overrideType() { + return (Optional) overrideType; + } + + /** + * The amount to be withheld for this payroll. + */ + @JsonIgnore + public Optional amount() { + return amount; + } + + /** + * How to interpret the amount. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional amountType() { + return (Optional) amountType; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Override mode. Only `one_time` is currently supported. + */ + public PayrollUpdateFederal withOverrideType(PayrollUpdateOverrideType overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = Optional.ofNullable(overrideType); + return this; + } + + + /** + * Override mode. Only `one_time` is currently supported. + */ + public PayrollUpdateFederal withOverrideType(Optional overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = overrideType; + return this; + } + + /** + * The amount to be withheld for this payroll. + */ + public PayrollUpdateFederal withAmount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = Optional.ofNullable(amount); + return this; + } + + + /** + * The amount to be withheld for this payroll. + */ + public PayrollUpdateFederal withAmount(Optional amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + /** + * How to interpret the amount. + */ + public PayrollUpdateFederal withAmountType(PayrollUpdateEmployeeCompensationsAmountType amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = Optional.ofNullable(amountType); + return this; + } + + + /** + * How to interpret the amount. + */ + public PayrollUpdateFederal withAmountType(Optional amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = amountType; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PayrollUpdateFederal other = (PayrollUpdateFederal) o; + return + Utils.enhancedDeepEquals(this.overrideType, other.overrideType) && + Utils.enhancedDeepEquals(this.amount, other.amount) && + Utils.enhancedDeepEquals(this.amountType, other.amountType); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + overrideType, amount, amountType); + } + + @Override + public String toString() { + return Utils.toString(PayrollUpdateFederal.class, + "overrideType", overrideType, + "amount", amount, + "amountType", amountType); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional overrideType = Optional.empty(); + + private Optional amount = Optional.empty(); + + private Optional amountType = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * Override mode. Only `one_time` is currently supported. + */ + public Builder overrideType(PayrollUpdateOverrideType overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = Optional.ofNullable(overrideType); + return this; + } + + /** + * Override mode. Only `one_time` is currently supported. + */ + public Builder overrideType(Optional overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = overrideType; + return this; + } + + + /** + * The amount to be withheld for this payroll. + */ + public Builder amount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = Optional.ofNullable(amount); + return this; + } + + /** + * The amount to be withheld for this payroll. + */ + public Builder amount(Optional amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + + /** + * How to interpret the amount. + */ + public Builder amountType(PayrollUpdateEmployeeCompensationsAmountType amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = Optional.ofNullable(amountType); + return this; + } + + /** + * How to interpret the amount. + */ + public Builder amountType(Optional amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = amountType; + return this; + } + + public PayrollUpdateFederal build() { + + return new PayrollUpdateFederal( + overrideType, amount, amountType); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUpdateOverrideType.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUpdateOverrideType.java new file mode 100644 index 000000000..514a6e63e --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUpdateOverrideType.java @@ -0,0 +1,39 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollUpdateOverrideType + * + *

    Override mode. Only `one_time` is currently supported. + */ +public enum PayrollUpdateOverrideType { + ONE_TIME("one_time"); + + @JsonValue + private final String value; + + PayrollUpdateOverrideType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollUpdateOverrideType o: PayrollUpdateOverrideType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUpdateState.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUpdateState.java new file mode 100644 index 000000000..df3659cc4 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PayrollUpdateState.java @@ -0,0 +1,314 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class PayrollUpdateState { + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("employee_state_field_uuid") + private Optional employeeStateFieldUuid; + + /** + * Override mode. Only `one_time` is currently supported. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("override_type") + private Optional overrideType; + + /** + * The amount to be withheld for this payroll. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("amount") + private Optional amount; + + /** + * How to interpret the amount. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("amount_type") + private Optional amountType; + + @JsonCreator + public PayrollUpdateState( + @JsonProperty("employee_state_field_uuid") Optional employeeStateFieldUuid, + @JsonProperty("override_type") Optional overrideType, + @JsonProperty("amount") Optional amount, + @JsonProperty("amount_type") Optional amountType) { + Utils.checkNotNull(employeeStateFieldUuid, "employeeStateFieldUuid"); + Utils.checkNotNull(overrideType, "overrideType"); + Utils.checkNotNull(amount, "amount"); + Utils.checkNotNull(amountType, "amountType"); + this.employeeStateFieldUuid = employeeStateFieldUuid; + this.overrideType = overrideType; + this.amount = amount; + this.amountType = amountType; + } + + public PayrollUpdateState() { + this(Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty()); + } + + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + @JsonIgnore + public Optional employeeStateFieldUuid() { + return employeeStateFieldUuid; + } + + /** + * Override mode. Only `one_time` is currently supported. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional overrideType() { + return (Optional) overrideType; + } + + /** + * The amount to be withheld for this payroll. + */ + @JsonIgnore + public Optional amount() { + return amount; + } + + /** + * How to interpret the amount. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional amountType() { + return (Optional) amountType; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + public PayrollUpdateState withEmployeeStateFieldUuid(String employeeStateFieldUuid) { + Utils.checkNotNull(employeeStateFieldUuid, "employeeStateFieldUuid"); + this.employeeStateFieldUuid = Optional.ofNullable(employeeStateFieldUuid); + return this; + } + + + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + public PayrollUpdateState withEmployeeStateFieldUuid(Optional employeeStateFieldUuid) { + Utils.checkNotNull(employeeStateFieldUuid, "employeeStateFieldUuid"); + this.employeeStateFieldUuid = employeeStateFieldUuid; + return this; + } + + /** + * Override mode. Only `one_time` is currently supported. + */ + public PayrollUpdateState withOverrideType(PayrollUpdateEmployeeCompensationsOverrideType overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = Optional.ofNullable(overrideType); + return this; + } + + + /** + * Override mode. Only `one_time` is currently supported. + */ + public PayrollUpdateState withOverrideType(Optional overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = overrideType; + return this; + } + + /** + * The amount to be withheld for this payroll. + */ + public PayrollUpdateState withAmount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = Optional.ofNullable(amount); + return this; + } + + + /** + * The amount to be withheld for this payroll. + */ + public PayrollUpdateState withAmount(Optional amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + /** + * How to interpret the amount. + */ + public PayrollUpdateState withAmountType(PayrollUpdateEmployeeCompensationsCustomWithholdingsAmountType amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = Optional.ofNullable(amountType); + return this; + } + + + /** + * How to interpret the amount. + */ + public PayrollUpdateState withAmountType(Optional amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = amountType; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PayrollUpdateState other = (PayrollUpdateState) o; + return + Utils.enhancedDeepEquals(this.employeeStateFieldUuid, other.employeeStateFieldUuid) && + Utils.enhancedDeepEquals(this.overrideType, other.overrideType) && + Utils.enhancedDeepEquals(this.amount, other.amount) && + Utils.enhancedDeepEquals(this.amountType, other.amountType); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + employeeStateFieldUuid, overrideType, amount, + amountType); + } + + @Override + public String toString() { + return Utils.toString(PayrollUpdateState.class, + "employeeStateFieldUuid", employeeStateFieldUuid, + "overrideType", overrideType, + "amount", amount, + "amountType", amountType); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional employeeStateFieldUuid = Optional.empty(); + + private Optional overrideType = Optional.empty(); + + private Optional amount = Optional.empty(); + + private Optional amountType = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + public Builder employeeStateFieldUuid(String employeeStateFieldUuid) { + Utils.checkNotNull(employeeStateFieldUuid, "employeeStateFieldUuid"); + this.employeeStateFieldUuid = Optional.ofNullable(employeeStateFieldUuid); + return this; + } + + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + public Builder employeeStateFieldUuid(Optional employeeStateFieldUuid) { + Utils.checkNotNull(employeeStateFieldUuid, "employeeStateFieldUuid"); + this.employeeStateFieldUuid = employeeStateFieldUuid; + return this; + } + + + /** + * Override mode. Only `one_time` is currently supported. + */ + public Builder overrideType(PayrollUpdateEmployeeCompensationsOverrideType overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = Optional.ofNullable(overrideType); + return this; + } + + /** + * Override mode. Only `one_time` is currently supported. + */ + public Builder overrideType(Optional overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = overrideType; + return this; + } + + + /** + * The amount to be withheld for this payroll. + */ + public Builder amount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = Optional.ofNullable(amount); + return this; + } + + /** + * The amount to be withheld for this payroll. + */ + public Builder amount(Optional amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + + /** + * How to interpret the amount. + */ + public Builder amountType(PayrollUpdateEmployeeCompensationsCustomWithholdingsAmountType amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = Optional.ofNullable(amountType); + return this; + } + + /** + * How to interpret the amount. + */ + public Builder amountType(Optional amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = amountType; + return this; + } + + public PayrollUpdateState build() { + + return new PayrollUpdateState( + employeeStateFieldUuid, overrideType, amount, + amountType); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PeopleBatchResults.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PeopleBatchResults.java index 0af32112e..f386212e3 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PeopleBatchResults.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PeopleBatchResults.java @@ -82,14 +82,14 @@ public class PeopleBatchResults { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("results") - private Optional> results; + private Optional> results; /** * Items excluded from processing due to validation errors. */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("exclusions") - private JsonNullable> exclusions; + private JsonNullable> exclusions; @JsonCreator public PeopleBatchResults( @@ -101,8 +101,8 @@ public PeopleBatchResults( @JsonProperty("submitted_items") JsonNullable submittedItems, @JsonProperty("processed_items") Optional processedItems, @JsonProperty("excluded_items") Optional excludedItems, - @JsonProperty("results") Optional> results, - @JsonProperty("exclusions") JsonNullable> exclusions) { + @JsonProperty("results") Optional> results, + @JsonProperty("exclusions") JsonNullable> exclusions) { Utils.checkNotNull(uuid, "uuid"); Utils.checkNotNull(idempotencyKey, "idempotencyKey"); Utils.checkNotNull(status, "status"); @@ -204,8 +204,8 @@ public Optional excludedItems() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional> results() { - return (Optional>) results; + public Optional> results() { + return (Optional>) results; } /** @@ -213,8 +213,8 @@ public Optional> results() { */ @SuppressWarnings("unchecked") @JsonIgnore - public JsonNullable> exclusions() { - return (JsonNullable>) exclusions; + public JsonNullable> exclusions() { + return (JsonNullable>) exclusions; } public static Builder builder() { @@ -345,7 +345,7 @@ public PeopleBatchResults withExcludedItems(Optional excludedItems) { /** * The results for each batch item. */ - public PeopleBatchResults withResults(List results) { + public PeopleBatchResults withResults(List results) { Utils.checkNotNull(results, "results"); this.results = Optional.ofNullable(results); return this; @@ -355,7 +355,7 @@ public PeopleBatchResults withResults(List results) { /** * The results for each batch item. */ - public PeopleBatchResults withResults(Optional> results) { + public PeopleBatchResults withResults(Optional> results) { Utils.checkNotNull(results, "results"); this.results = results; return this; @@ -364,7 +364,7 @@ public PeopleBatchResults withResults(Optional> results) /** * Items excluded from processing due to validation errors. */ - public PeopleBatchResults withExclusions(List exclusions) { + public PeopleBatchResults withExclusions(List exclusions) { Utils.checkNotNull(exclusions, "exclusions"); this.exclusions = JsonNullable.of(exclusions); return this; @@ -373,7 +373,7 @@ public PeopleBatchResults withExclusions(List exclusions) { /** * Items excluded from processing due to validation errors. */ - public PeopleBatchResults withExclusions(JsonNullable> exclusions) { + public PeopleBatchResults withExclusions(JsonNullable> exclusions) { Utils.checkNotNull(exclusions, "exclusions"); this.exclusions = exclusions; return this; @@ -444,9 +444,9 @@ public final static class Builder { private Optional excludedItems = Optional.empty(); - private Optional> results = Optional.empty(); + private Optional> results = Optional.empty(); - private JsonNullable> exclusions = JsonNullable.undefined(); + private JsonNullable> exclusions = JsonNullable.undefined(); private Builder() { // force use of static builder() method @@ -581,7 +581,7 @@ public Builder excludedItems(Optional excludedItems) { /** * The results for each batch item. */ - public Builder results(List results) { + public Builder results(List results) { Utils.checkNotNull(results, "results"); this.results = Optional.ofNullable(results); return this; @@ -590,7 +590,7 @@ public Builder results(List results) { /** * The results for each batch item. */ - public Builder results(Optional> results) { + public Builder results(Optional> results) { Utils.checkNotNull(results, "results"); this.results = results; return this; @@ -600,7 +600,7 @@ public Builder results(Optional> results) { /** * Items excluded from processing due to validation errors. */ - public Builder exclusions(List exclusions) { + public Builder exclusions(List exclusions) { Utils.checkNotNull(exclusions, "exclusions"); this.exclusions = JsonNullable.of(exclusions); return this; @@ -609,7 +609,7 @@ public Builder exclusions(List exclusions) { /** * Items excluded from processing due to validation errors. */ - public Builder exclusions(JsonNullable> exclusions) { + public Builder exclusions(JsonNullable> exclusions) { Utils.checkNotNull(exclusions, "exclusions"); this.exclusions = exclusions; return this; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PeopleBatchResultsExclusions.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PeopleBatchResultsExclusions.java new file mode 100644 index 000000000..a3eb95f3a --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PeopleBatchResultsExclusions.java @@ -0,0 +1,312 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Long; +import java.lang.Override; +import java.lang.String; +import java.util.Optional; + + +public class PeopleBatchResultsExclusions { + /** + * The external ID of the excluded item(s). + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("external_id") + private Optional externalId; + + /** + * The exclusion category. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("category") + private Optional category; + + /** + * Human-readable explanation for exclusion. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("message") + private Optional message; + + /** + * Number of items affected by this exclusion. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("item_count") + private Optional itemCount; + + @JsonCreator + public PeopleBatchResultsExclusions( + @JsonProperty("external_id") Optional externalId, + @JsonProperty("category") Optional category, + @JsonProperty("message") Optional message, + @JsonProperty("item_count") Optional itemCount) { + Utils.checkNotNull(externalId, "externalId"); + Utils.checkNotNull(category, "category"); + Utils.checkNotNull(message, "message"); + Utils.checkNotNull(itemCount, "itemCount"); + this.externalId = externalId; + this.category = category; + this.message = message; + this.itemCount = itemCount; + } + + public PeopleBatchResultsExclusions() { + this(Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty()); + } + + /** + * The external ID of the excluded item(s). + */ + @JsonIgnore + public Optional externalId() { + return externalId; + } + + /** + * The exclusion category. + */ + @JsonIgnore + public Optional category() { + return category; + } + + /** + * Human-readable explanation for exclusion. + */ + @JsonIgnore + public Optional message() { + return message; + } + + /** + * Number of items affected by this exclusion. + */ + @JsonIgnore + public Optional itemCount() { + return itemCount; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * The external ID of the excluded item(s). + */ + public PeopleBatchResultsExclusions withExternalId(String externalId) { + Utils.checkNotNull(externalId, "externalId"); + this.externalId = Optional.ofNullable(externalId); + return this; + } + + + /** + * The external ID of the excluded item(s). + */ + public PeopleBatchResultsExclusions withExternalId(Optional externalId) { + Utils.checkNotNull(externalId, "externalId"); + this.externalId = externalId; + return this; + } + + /** + * The exclusion category. + */ + public PeopleBatchResultsExclusions withCategory(String category) { + Utils.checkNotNull(category, "category"); + this.category = Optional.ofNullable(category); + return this; + } + + + /** + * The exclusion category. + */ + public PeopleBatchResultsExclusions withCategory(Optional category) { + Utils.checkNotNull(category, "category"); + this.category = category; + return this; + } + + /** + * Human-readable explanation for exclusion. + */ + public PeopleBatchResultsExclusions withMessage(String message) { + Utils.checkNotNull(message, "message"); + this.message = Optional.ofNullable(message); + return this; + } + + + /** + * Human-readable explanation for exclusion. + */ + public PeopleBatchResultsExclusions withMessage(Optional message) { + Utils.checkNotNull(message, "message"); + this.message = message; + return this; + } + + /** + * Number of items affected by this exclusion. + */ + public PeopleBatchResultsExclusions withItemCount(long itemCount) { + Utils.checkNotNull(itemCount, "itemCount"); + this.itemCount = Optional.ofNullable(itemCount); + return this; + } + + + /** + * Number of items affected by this exclusion. + */ + public PeopleBatchResultsExclusions withItemCount(Optional itemCount) { + Utils.checkNotNull(itemCount, "itemCount"); + this.itemCount = itemCount; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PeopleBatchResultsExclusions other = (PeopleBatchResultsExclusions) o; + return + Utils.enhancedDeepEquals(this.externalId, other.externalId) && + Utils.enhancedDeepEquals(this.category, other.category) && + Utils.enhancedDeepEquals(this.message, other.message) && + Utils.enhancedDeepEquals(this.itemCount, other.itemCount); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + externalId, category, message, + itemCount); + } + + @Override + public String toString() { + return Utils.toString(PeopleBatchResultsExclusions.class, + "externalId", externalId, + "category", category, + "message", message, + "itemCount", itemCount); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional externalId = Optional.empty(); + + private Optional category = Optional.empty(); + + private Optional message = Optional.empty(); + + private Optional itemCount = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * The external ID of the excluded item(s). + */ + public Builder externalId(String externalId) { + Utils.checkNotNull(externalId, "externalId"); + this.externalId = Optional.ofNullable(externalId); + return this; + } + + /** + * The external ID of the excluded item(s). + */ + public Builder externalId(Optional externalId) { + Utils.checkNotNull(externalId, "externalId"); + this.externalId = externalId; + return this; + } + + + /** + * The exclusion category. + */ + public Builder category(String category) { + Utils.checkNotNull(category, "category"); + this.category = Optional.ofNullable(category); + return this; + } + + /** + * The exclusion category. + */ + public Builder category(Optional category) { + Utils.checkNotNull(category, "category"); + this.category = category; + return this; + } + + + /** + * Human-readable explanation for exclusion. + */ + public Builder message(String message) { + Utils.checkNotNull(message, "message"); + this.message = Optional.ofNullable(message); + return this; + } + + /** + * Human-readable explanation for exclusion. + */ + public Builder message(Optional message) { + Utils.checkNotNull(message, "message"); + this.message = message; + return this; + } + + + /** + * Number of items affected by this exclusion. + */ + public Builder itemCount(long itemCount) { + Utils.checkNotNull(itemCount, "itemCount"); + this.itemCount = Optional.ofNullable(itemCount); + return this; + } + + /** + * Number of items affected by this exclusion. + */ + public Builder itemCount(Optional itemCount) { + Utils.checkNotNull(itemCount, "itemCount"); + this.itemCount = itemCount; + return this; + } + + public PeopleBatchResultsExclusions build() { + + return new PeopleBatchResultsExclusions( + externalId, category, message, + itemCount); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PeopleBatchResultsResults.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PeopleBatchResultsResults.java new file mode 100644 index 000000000..e5ad90f00 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/PeopleBatchResultsResults.java @@ -0,0 +1,500 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Long; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.List; +import java.util.Optional; +import org.openapitools.jackson.nullable.JsonNullable; + + +public class PeopleBatchResultsResults { + /** + * The external ID provided in the batch request. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("external_id") + private Optional externalId; + + /** + * The type of person created. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("role") + private Optional role; + + /** + * The status of this batch item. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("status") + private Optional status; + + /** + * The index of this item in the original batch request. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("idx") + private Optional idx; + + /** + * The UUID of the created person. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("uuid") + private Optional uuid; + + /** + * The UUID of the created employee (if role is employee). + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("employee_uuid") + private Optional employeeUuid; + + /** + * Errors encountered while processing this batch item. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("errors") + private JsonNullable> errors; + + @JsonCreator + public PeopleBatchResultsResults( + @JsonProperty("external_id") Optional externalId, + @JsonProperty("role") Optional role, + @JsonProperty("status") Optional status, + @JsonProperty("idx") Optional idx, + @JsonProperty("uuid") Optional uuid, + @JsonProperty("employee_uuid") Optional employeeUuid, + @JsonProperty("errors") JsonNullable> errors) { + Utils.checkNotNull(externalId, "externalId"); + Utils.checkNotNull(role, "role"); + Utils.checkNotNull(status, "status"); + Utils.checkNotNull(idx, "idx"); + Utils.checkNotNull(uuid, "uuid"); + Utils.checkNotNull(employeeUuid, "employeeUuid"); + Utils.checkNotNull(errors, "errors"); + this.externalId = externalId; + this.role = role; + this.status = status; + this.idx = idx; + this.uuid = uuid; + this.employeeUuid = employeeUuid; + this.errors = errors; + } + + public PeopleBatchResultsResults() { + this(Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty(), Optional.empty(), Optional.empty(), + JsonNullable.undefined()); + } + + /** + * The external ID provided in the batch request. + */ + @JsonIgnore + public Optional externalId() { + return externalId; + } + + /** + * The type of person created. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional role() { + return (Optional) role; + } + + /** + * The status of this batch item. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional status() { + return (Optional) status; + } + + /** + * The index of this item in the original batch request. + */ + @JsonIgnore + public Optional idx() { + return idx; + } + + /** + * The UUID of the created person. + */ + @JsonIgnore + public Optional uuid() { + return uuid; + } + + /** + * The UUID of the created employee (if role is employee). + */ + @JsonIgnore + public Optional employeeUuid() { + return employeeUuid; + } + + /** + * Errors encountered while processing this batch item. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public JsonNullable> errors() { + return (JsonNullable>) errors; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * The external ID provided in the batch request. + */ + public PeopleBatchResultsResults withExternalId(String externalId) { + Utils.checkNotNull(externalId, "externalId"); + this.externalId = Optional.ofNullable(externalId); + return this; + } + + + /** + * The external ID provided in the batch request. + */ + public PeopleBatchResultsResults withExternalId(Optional externalId) { + Utils.checkNotNull(externalId, "externalId"); + this.externalId = externalId; + return this; + } + + /** + * The type of person created. + */ + public PeopleBatchResultsResults withRole(Role role) { + Utils.checkNotNull(role, "role"); + this.role = Optional.ofNullable(role); + return this; + } + + + /** + * The type of person created. + */ + public PeopleBatchResultsResults withRole(Optional role) { + Utils.checkNotNull(role, "role"); + this.role = role; + return this; + } + + /** + * The status of this batch item. + */ + public PeopleBatchResultsResults withStatus(PeopleBatchResultsResultsStatus status) { + Utils.checkNotNull(status, "status"); + this.status = Optional.ofNullable(status); + return this; + } + + + /** + * The status of this batch item. + */ + public PeopleBatchResultsResults withStatus(Optional status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + /** + * The index of this item in the original batch request. + */ + public PeopleBatchResultsResults withIdx(long idx) { + Utils.checkNotNull(idx, "idx"); + this.idx = Optional.ofNullable(idx); + return this; + } + + + /** + * The index of this item in the original batch request. + */ + public PeopleBatchResultsResults withIdx(Optional idx) { + Utils.checkNotNull(idx, "idx"); + this.idx = idx; + return this; + } + + /** + * The UUID of the created person. + */ + public PeopleBatchResultsResults withUuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = Optional.ofNullable(uuid); + return this; + } + + + /** + * The UUID of the created person. + */ + public PeopleBatchResultsResults withUuid(Optional uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + /** + * The UUID of the created employee (if role is employee). + */ + public PeopleBatchResultsResults withEmployeeUuid(String employeeUuid) { + Utils.checkNotNull(employeeUuid, "employeeUuid"); + this.employeeUuid = Optional.ofNullable(employeeUuid); + return this; + } + + + /** + * The UUID of the created employee (if role is employee). + */ + public PeopleBatchResultsResults withEmployeeUuid(Optional employeeUuid) { + Utils.checkNotNull(employeeUuid, "employeeUuid"); + this.employeeUuid = employeeUuid; + return this; + } + + /** + * Errors encountered while processing this batch item. + */ + public PeopleBatchResultsResults withErrors(List errors) { + Utils.checkNotNull(errors, "errors"); + this.errors = JsonNullable.of(errors); + return this; + } + + /** + * Errors encountered while processing this batch item. + */ + public PeopleBatchResultsResults withErrors(JsonNullable> errors) { + Utils.checkNotNull(errors, "errors"); + this.errors = errors; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PeopleBatchResultsResults other = (PeopleBatchResultsResults) o; + return + Utils.enhancedDeepEquals(this.externalId, other.externalId) && + Utils.enhancedDeepEquals(this.role, other.role) && + Utils.enhancedDeepEquals(this.status, other.status) && + Utils.enhancedDeepEquals(this.idx, other.idx) && + Utils.enhancedDeepEquals(this.uuid, other.uuid) && + Utils.enhancedDeepEquals(this.employeeUuid, other.employeeUuid) && + Utils.enhancedDeepEquals(this.errors, other.errors); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + externalId, role, status, + idx, uuid, employeeUuid, + errors); + } + + @Override + public String toString() { + return Utils.toString(PeopleBatchResultsResults.class, + "externalId", externalId, + "role", role, + "status", status, + "idx", idx, + "uuid", uuid, + "employeeUuid", employeeUuid, + "errors", errors); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional externalId = Optional.empty(); + + private Optional role = Optional.empty(); + + private Optional status = Optional.empty(); + + private Optional idx = Optional.empty(); + + private Optional uuid = Optional.empty(); + + private Optional employeeUuid = Optional.empty(); + + private JsonNullable> errors = JsonNullable.undefined(); + + private Builder() { + // force use of static builder() method + } + + + /** + * The external ID provided in the batch request. + */ + public Builder externalId(String externalId) { + Utils.checkNotNull(externalId, "externalId"); + this.externalId = Optional.ofNullable(externalId); + return this; + } + + /** + * The external ID provided in the batch request. + */ + public Builder externalId(Optional externalId) { + Utils.checkNotNull(externalId, "externalId"); + this.externalId = externalId; + return this; + } + + + /** + * The type of person created. + */ + public Builder role(Role role) { + Utils.checkNotNull(role, "role"); + this.role = Optional.ofNullable(role); + return this; + } + + /** + * The type of person created. + */ + public Builder role(Optional role) { + Utils.checkNotNull(role, "role"); + this.role = role; + return this; + } + + + /** + * The status of this batch item. + */ + public Builder status(PeopleBatchResultsResultsStatus status) { + Utils.checkNotNull(status, "status"); + this.status = Optional.ofNullable(status); + return this; + } + + /** + * The status of this batch item. + */ + public Builder status(Optional status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + + /** + * The index of this item in the original batch request. + */ + public Builder idx(long idx) { + Utils.checkNotNull(idx, "idx"); + this.idx = Optional.ofNullable(idx); + return this; + } + + /** + * The index of this item in the original batch request. + */ + public Builder idx(Optional idx) { + Utils.checkNotNull(idx, "idx"); + this.idx = idx; + return this; + } + + + /** + * The UUID of the created person. + */ + public Builder uuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = Optional.ofNullable(uuid); + return this; + } + + /** + * The UUID of the created person. + */ + public Builder uuid(Optional uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + + /** + * The UUID of the created employee (if role is employee). + */ + public Builder employeeUuid(String employeeUuid) { + Utils.checkNotNull(employeeUuid, "employeeUuid"); + this.employeeUuid = Optional.ofNullable(employeeUuid); + return this; + } + + /** + * The UUID of the created employee (if role is employee). + */ + public Builder employeeUuid(Optional employeeUuid) { + Utils.checkNotNull(employeeUuid, "employeeUuid"); + this.employeeUuid = employeeUuid; + return this; + } + + + /** + * Errors encountered while processing this batch item. + */ + public Builder errors(List errors) { + Utils.checkNotNull(errors, "errors"); + this.errors = JsonNullable.of(errors); + return this; + } + + /** + * Errors encountered while processing this batch item. + */ + public Builder errors(JsonNullable> errors) { + Utils.checkNotNull(errors, "errors"); + this.errors = errors; + return this; + } + + public PeopleBatchResultsResults build() { + + return new PeopleBatchResultsResults( + externalId, role, status, + idx, uuid, employeeUuid, + errors); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/RecipientType.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/RecipientType.java index e359c1126..e054dfa74 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/RecipientType.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/RecipientType.java @@ -8,13 +8,7 @@ import java.util.Objects; import java.util.Optional; -/** - * RecipientType - * - *

    The type of recipient associated with the document (will be `Contractor` for Contractor Documents) - */ public enum RecipientType { - COMPANY("Company"), EMPLOYEE("Employee"), CONTRACTOR("Contractor"); diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Rehire.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Rehire.java index 3c170d0c1..9d91ee1ed 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Rehire.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Rehire.java @@ -53,7 +53,7 @@ public class Rehire { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("employment_status") - private Optional employmentStatus; + private Optional employmentStatus; /** * Whether the employee is a two percent shareholder of the company. This field only applies to @@ -83,7 +83,7 @@ public Rehire( @JsonProperty("effective_date") Optional effectiveDate, @JsonProperty("file_new_hire_report") Optional fileNewHireReport, @JsonProperty("work_location_uuid") Optional workLocationUuid, - @JsonProperty("employment_status") Optional employmentStatus, + @JsonProperty("employment_status") Optional employmentStatus, @JsonProperty("two_percent_shareholder") Optional twoPercentShareholder, @JsonProperty("employee_uuid") Optional employeeUuid, @JsonProperty("active") Optional active) { @@ -151,8 +151,8 @@ public Optional workLocationUuid() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional employmentStatus() { - return (Optional) employmentStatus; + public Optional employmentStatus() { + return (Optional) employmentStatus; } /** @@ -269,7 +269,7 @@ public Rehire withWorkLocationUuid(Optional workLocationUuid) { * The employee's employment status. Supplying an invalid option will set the employment_status to * *not_set*. */ - public Rehire withEmploymentStatus(EmploymentStatus employmentStatus) { + public Rehire withEmploymentStatus(RehireEmploymentStatus employmentStatus) { Utils.checkNotNull(employmentStatus, "employmentStatus"); this.employmentStatus = Optional.ofNullable(employmentStatus); return this; @@ -280,7 +280,7 @@ public Rehire withEmploymentStatus(EmploymentStatus employmentStatus) { * The employee's employment status. Supplying an invalid option will set the employment_status to * *not_set*. */ - public Rehire withEmploymentStatus(Optional employmentStatus) { + public Rehire withEmploymentStatus(Optional employmentStatus) { Utils.checkNotNull(employmentStatus, "employmentStatus"); this.employmentStatus = employmentStatus; return this; @@ -397,7 +397,7 @@ public final static class Builder { private Optional workLocationUuid = Optional.empty(); - private Optional employmentStatus = Optional.empty(); + private Optional employmentStatus = Optional.empty(); private Optional twoPercentShareholder = Optional.empty(); @@ -494,7 +494,7 @@ public Builder workLocationUuid(Optional workLocationUuid) { * The employee's employment status. Supplying an invalid option will set the employment_status to * *not_set*. */ - public Builder employmentStatus(EmploymentStatus employmentStatus) { + public Builder employmentStatus(RehireEmploymentStatus employmentStatus) { Utils.checkNotNull(employmentStatus, "employmentStatus"); this.employmentStatus = Optional.ofNullable(employmentStatus); return this; @@ -504,7 +504,7 @@ public Builder employmentStatus(EmploymentStatus employmentStatus) { * The employee's employment status. Supplying an invalid option will set the employment_status to * *not_set*. */ - public Builder employmentStatus(Optional employmentStatus) { + public Builder employmentStatus(Optional employmentStatus) { Utils.checkNotNull(employmentStatus, "employmentStatus"); this.employmentStatus = employmentStatus; return this; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/RehireEmploymentStatus.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/RehireEmploymentStatus.java new file mode 100644 index 000000000..2e18b9cc5 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/RehireEmploymentStatus.java @@ -0,0 +1,45 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * RehireEmploymentStatus + * + *

    The employee's employment status. Supplying an invalid option will set the employment_status to + * *not_set*. + */ +public enum RehireEmploymentStatus { + PART_TIME("part_time"), + FULL_TIME("full_time"), + PART_TIME_ELIGIBLE("part_time_eligible"), + VARIABLE("variable"), + SEASONAL("seasonal"), + NOT_SET("not_set"); + + @JsonValue + private final String value; + + RehireEmploymentStatus(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (RehireEmploymentStatus o: RehireEmploymentStatus.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ReportType.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ReportType.java new file mode 100644 index 000000000..50eda5909 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ReportType.java @@ -0,0 +1,39 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * ReportType + * + *

    Identifies this batch item as a custom report. + */ +public enum ReportType { + CUSTOM_REPORT("custom_report"); + + @JsonValue + private final String value; + + ReportType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (ReportType o: ReportType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Results.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Results.java index a0b1ec5bb..00687ca4e 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Results.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Results.java @@ -15,118 +15,64 @@ import java.lang.SuppressWarnings; import java.util.List; import java.util.Optional; -import org.openapitools.jackson.nullable.JsonNullable; public class Results { /** - * The external ID provided in the batch request. - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("external_id") - private Optional externalId; - - /** - * The type of person created. - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("role") - private Optional role; - - /** - * The status of this batch item. - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("status") - private Optional status; - - /** - * The index of this item in the original batch request. + * The index of this payroll in the original POST batch array. */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("idx") private Optional idx; /** - * The UUID of the created person. + * The UUID of the payroll. */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("uuid") private Optional uuid; /** - * The UUID of the created employee (if role is employee). + * The outcome of cancelling this payroll. A cancel is atomic — there is no per-payroll + * `partial_success`. + * - `success`: the payroll was cancelled, or required no action (already cancelled / never run) + * - `failed`: the payroll could not be cancelled; see `errors` */ @JsonInclude(Include.NON_ABSENT) - @JsonProperty("employee_uuid") - private Optional employeeUuid; + @JsonProperty("status") + private Optional status; /** - * Errors encountered while processing this batch item. + * Present only when `status` is `failed`. A cancel is a single atomic operation, so this is a flat + * array with exactly one error. */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("errors") - private JsonNullable> errors; + private Optional> errors; @JsonCreator public Results( - @JsonProperty("external_id") Optional externalId, - @JsonProperty("role") Optional role, - @JsonProperty("status") Optional status, @JsonProperty("idx") Optional idx, @JsonProperty("uuid") Optional uuid, - @JsonProperty("employee_uuid") Optional employeeUuid, - @JsonProperty("errors") JsonNullable> errors) { - Utils.checkNotNull(externalId, "externalId"); - Utils.checkNotNull(role, "role"); - Utils.checkNotNull(status, "status"); + @JsonProperty("status") Optional status, + @JsonProperty("errors") Optional> errors) { Utils.checkNotNull(idx, "idx"); Utils.checkNotNull(uuid, "uuid"); - Utils.checkNotNull(employeeUuid, "employeeUuid"); + Utils.checkNotNull(status, "status"); Utils.checkNotNull(errors, "errors"); - this.externalId = externalId; - this.role = role; - this.status = status; this.idx = idx; this.uuid = uuid; - this.employeeUuid = employeeUuid; + this.status = status; this.errors = errors; } public Results() { this(Optional.empty(), Optional.empty(), Optional.empty(), - Optional.empty(), Optional.empty(), Optional.empty(), - JsonNullable.undefined()); - } - - /** - * The external ID provided in the batch request. - */ - @JsonIgnore - public Optional externalId() { - return externalId; - } - - /** - * The type of person created. - */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional role() { - return (Optional) role; + Optional.empty()); } /** - * The status of this batch item. - */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional status() { - return (Optional) status; - } - - /** - * The index of this item in the original batch request. + * The index of this payroll in the original POST batch array. */ @JsonIgnore public Optional idx() { @@ -134,7 +80,7 @@ public Optional idx() { } /** - * The UUID of the created person. + * The UUID of the payroll. */ @JsonIgnore public Optional uuid() { @@ -142,20 +88,25 @@ public Optional uuid() { } /** - * The UUID of the created employee (if role is employee). + * The outcome of cancelling this payroll. A cancel is atomic — there is no per-payroll + * `partial_success`. + * - `success`: the payroll was cancelled, or required no action (already cancelled / never run) + * - `failed`: the payroll could not be cancelled; see `errors` */ + @SuppressWarnings("unchecked") @JsonIgnore - public Optional employeeUuid() { - return employeeUuid; + public Optional status() { + return (Optional) status; } /** - * Errors encountered while processing this batch item. + * Present only when `status` is `failed`. A cancel is a single atomic operation, so this is a flat + * array with exactly one error. */ @SuppressWarnings("unchecked") @JsonIgnore - public JsonNullable> errors() { - return (JsonNullable>) errors; + public Optional> errors() { + return (Optional>) errors; } public static Builder builder() { @@ -164,64 +115,7 @@ public static Builder builder() { /** - * The external ID provided in the batch request. - */ - public Results withExternalId(String externalId) { - Utils.checkNotNull(externalId, "externalId"); - this.externalId = Optional.ofNullable(externalId); - return this; - } - - - /** - * The external ID provided in the batch request. - */ - public Results withExternalId(Optional externalId) { - Utils.checkNotNull(externalId, "externalId"); - this.externalId = externalId; - return this; - } - - /** - * The type of person created. - */ - public Results withRole(Role role) { - Utils.checkNotNull(role, "role"); - this.role = Optional.ofNullable(role); - return this; - } - - - /** - * The type of person created. - */ - public Results withRole(Optional role) { - Utils.checkNotNull(role, "role"); - this.role = role; - return this; - } - - /** - * The status of this batch item. - */ - public Results withStatus(PeopleBatchResultsResultsStatus status) { - Utils.checkNotNull(status, "status"); - this.status = Optional.ofNullable(status); - return this; - } - - - /** - * The status of this batch item. - */ - public Results withStatus(Optional status) { - Utils.checkNotNull(status, "status"); - this.status = status; - return this; - } - - /** - * The index of this item in the original batch request. + * The index of this payroll in the original POST batch array. */ public Results withIdx(long idx) { Utils.checkNotNull(idx, "idx"); @@ -231,7 +125,7 @@ public Results withIdx(long idx) { /** - * The index of this item in the original batch request. + * The index of this payroll in the original POST batch array. */ public Results withIdx(Optional idx) { Utils.checkNotNull(idx, "idx"); @@ -240,7 +134,7 @@ public Results withIdx(Optional idx) { } /** - * The UUID of the created person. + * The UUID of the payroll. */ public Results withUuid(String uuid) { Utils.checkNotNull(uuid, "uuid"); @@ -250,7 +144,7 @@ public Results withUuid(String uuid) { /** - * The UUID of the created person. + * The UUID of the payroll. */ public Results withUuid(Optional uuid) { Utils.checkNotNull(uuid, "uuid"); @@ -259,37 +153,46 @@ public Results withUuid(Optional uuid) { } /** - * The UUID of the created employee (if role is employee). + * The outcome of cancelling this payroll. A cancel is atomic — there is no per-payroll + * `partial_success`. + * - `success`: the payroll was cancelled, or required no action (already cancelled / never run) + * - `failed`: the payroll could not be cancelled; see `errors` */ - public Results withEmployeeUuid(String employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = Optional.ofNullable(employeeUuid); + public Results withStatus(PayrollBatchResultsResultsStatus status) { + Utils.checkNotNull(status, "status"); + this.status = Optional.ofNullable(status); return this; } /** - * The UUID of the created employee (if role is employee). + * The outcome of cancelling this payroll. A cancel is atomic — there is no per-payroll + * `partial_success`. + * - `success`: the payroll was cancelled, or required no action (already cancelled / never run) + * - `failed`: the payroll could not be cancelled; see `errors` */ - public Results withEmployeeUuid(Optional employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = employeeUuid; + public Results withStatus(Optional status) { + Utils.checkNotNull(status, "status"); + this.status = status; return this; } /** - * Errors encountered while processing this batch item. + * Present only when `status` is `failed`. A cancel is a single atomic operation, so this is a flat + * array with exactly one error. */ - public Results withErrors(List errors) { + public Results withErrors(List errors) { Utils.checkNotNull(errors, "errors"); - this.errors = JsonNullable.of(errors); + this.errors = Optional.ofNullable(errors); return this; } + /** - * Errors encountered while processing this batch item. + * Present only when `status` is `failed`. A cancel is a single atomic operation, so this is a flat + * array with exactly one error. */ - public Results withErrors(JsonNullable> errors) { + public Results withErrors(Optional> errors) { Utils.checkNotNull(errors, "errors"); this.errors = errors; return this; @@ -305,51 +208,38 @@ public boolean equals(java.lang.Object o) { } Results other = (Results) o; return - Utils.enhancedDeepEquals(this.externalId, other.externalId) && - Utils.enhancedDeepEquals(this.role, other.role) && - Utils.enhancedDeepEquals(this.status, other.status) && Utils.enhancedDeepEquals(this.idx, other.idx) && Utils.enhancedDeepEquals(this.uuid, other.uuid) && - Utils.enhancedDeepEquals(this.employeeUuid, other.employeeUuid) && + Utils.enhancedDeepEquals(this.status, other.status) && Utils.enhancedDeepEquals(this.errors, other.errors); } @Override public int hashCode() { return Utils.enhancedHash( - externalId, role, status, - idx, uuid, employeeUuid, + idx, uuid, status, errors); } @Override public String toString() { return Utils.toString(Results.class, - "externalId", externalId, - "role", role, - "status", status, "idx", idx, "uuid", uuid, - "employeeUuid", employeeUuid, + "status", status, "errors", errors); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private Optional externalId = Optional.empty(); - - private Optional role = Optional.empty(); - - private Optional status = Optional.empty(); - private Optional idx = Optional.empty(); private Optional uuid = Optional.empty(); - private Optional employeeUuid = Optional.empty(); + private Optional status = Optional.empty(); - private JsonNullable> errors = JsonNullable.undefined(); + private Optional> errors = Optional.empty(); private Builder() { // force use of static builder() method @@ -357,64 +247,7 @@ private Builder() { /** - * The external ID provided in the batch request. - */ - public Builder externalId(String externalId) { - Utils.checkNotNull(externalId, "externalId"); - this.externalId = Optional.ofNullable(externalId); - return this; - } - - /** - * The external ID provided in the batch request. - */ - public Builder externalId(Optional externalId) { - Utils.checkNotNull(externalId, "externalId"); - this.externalId = externalId; - return this; - } - - - /** - * The type of person created. - */ - public Builder role(Role role) { - Utils.checkNotNull(role, "role"); - this.role = Optional.ofNullable(role); - return this; - } - - /** - * The type of person created. - */ - public Builder role(Optional role) { - Utils.checkNotNull(role, "role"); - this.role = role; - return this; - } - - - /** - * The status of this batch item. - */ - public Builder status(PeopleBatchResultsResultsStatus status) { - Utils.checkNotNull(status, "status"); - this.status = Optional.ofNullable(status); - return this; - } - - /** - * The status of this batch item. - */ - public Builder status(Optional status) { - Utils.checkNotNull(status, "status"); - this.status = status; - return this; - } - - - /** - * The index of this item in the original batch request. + * The index of this payroll in the original POST batch array. */ public Builder idx(long idx) { Utils.checkNotNull(idx, "idx"); @@ -423,7 +256,7 @@ public Builder idx(long idx) { } /** - * The index of this item in the original batch request. + * The index of this payroll in the original POST batch array. */ public Builder idx(Optional idx) { Utils.checkNotNull(idx, "idx"); @@ -433,7 +266,7 @@ public Builder idx(Optional idx) { /** - * The UUID of the created person. + * The UUID of the payroll. */ public Builder uuid(String uuid) { Utils.checkNotNull(uuid, "uuid"); @@ -442,7 +275,7 @@ public Builder uuid(String uuid) { } /** - * The UUID of the created person. + * The UUID of the payroll. */ public Builder uuid(Optional uuid) { Utils.checkNotNull(uuid, "uuid"); @@ -452,37 +285,45 @@ public Builder uuid(Optional uuid) { /** - * The UUID of the created employee (if role is employee). + * The outcome of cancelling this payroll. A cancel is atomic — there is no per-payroll + * `partial_success`. + * - `success`: the payroll was cancelled, or required no action (already cancelled / never run) + * - `failed`: the payroll could not be cancelled; see `errors` */ - public Builder employeeUuid(String employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = Optional.ofNullable(employeeUuid); + public Builder status(PayrollBatchResultsResultsStatus status) { + Utils.checkNotNull(status, "status"); + this.status = Optional.ofNullable(status); return this; } /** - * The UUID of the created employee (if role is employee). + * The outcome of cancelling this payroll. A cancel is atomic — there is no per-payroll + * `partial_success`. + * - `success`: the payroll was cancelled, or required no action (already cancelled / never run) + * - `failed`: the payroll could not be cancelled; see `errors` */ - public Builder employeeUuid(Optional employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = employeeUuid; + public Builder status(Optional status) { + Utils.checkNotNull(status, "status"); + this.status = status; return this; } /** - * Errors encountered while processing this batch item. + * Present only when `status` is `failed`. A cancel is a single atomic operation, so this is a flat + * array with exactly one error. */ - public Builder errors(List errors) { + public Builder errors(List errors) { Utils.checkNotNull(errors, "errors"); - this.errors = JsonNullable.of(errors); + this.errors = Optional.ofNullable(errors); return this; } /** - * Errors encountered while processing this batch item. + * Present only when `status` is `failed`. A cancel is a single atomic operation, so this is a flat + * array with exactly one error. */ - public Builder errors(JsonNullable> errors) { + public Builder errors(Optional> errors) { Utils.checkNotNull(errors, "errors"); this.errors = errors; return this; @@ -491,8 +332,7 @@ public Builder errors(JsonNullable> err public Results build() { return new Results( - externalId, role, status, - idx, uuid, employeeUuid, + idx, uuid, status, errors); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ReverseWireTransaction.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ReverseWireTransaction.java new file mode 100644 index 000000000..5eb4b6e5b --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ReverseWireTransaction.java @@ -0,0 +1,559 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import org.openapitools.jackson.nullable.JsonNullable; + +/** + * ReverseWireTransaction + * + *

    Representation of a reverse wire (drawdown) transaction. Reverse wires are debit transactions + * initiated by Gusto to pull funds from a partner's bank account to cover payroll or contractor + * payment obligations. + */ +public class ReverseWireTransaction { + /** + * Unique identifier of the company the reverse wire transaction belongs to + */ + @JsonProperty("company_uuid") + private String companyUuid; + + /** + * The amount of money moved by the reverse wire, as a decimal string. Always non-negative. + */ + @JsonProperty("amount") + private String amount; + + /** + * Current status of the reverse wire transaction. + * - `pending_processing`: The reverse wire has been initiated and is awaiting processing by the + * banking network. + * - `processed`: The reverse wire was successfully settled and funds have been received. + * - `rejected`: The reverse wire was rejected by the receiving bank (e.g. invalid account, + * insufficient funds). + * - `failed`: The reverse wire failed during processing due to a system or network error. + */ + @JsonProperty("status") + private ReverseWireTransactionStatus status; + + /** + * The direction of the payment. Reverse wires are always debits from the company's account. + */ + @JsonProperty("payment_direction") + private ReverseWireTransactionPaymentDirection paymentDirection; + + /** + * Name of the receiving bank. Null when the bank is not known. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("bank_name") + private JsonNullable bankName; + + /** + * The type of payment event this reverse wire is associated with. Null when the wire is not linked to + * a payroll or contractor payment. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("payment_event_type") + private JsonNullable paymentEventType; + + /** + * Unique identifier of the associated payroll or contractor payment. Null when the wire is not linked + * to a payment event. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("payment_event_uuid") + private JsonNullable paymentEventUuid; + + /** + * The check date of the associated payment event. Null when the wire is not linked to a payment event. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("payment_event_check_date") + private JsonNullable paymentEventCheckDate; + + /** + * The date the reverse wire record was created. + */ + @JsonProperty("created_at") + private String createdAt; + + @JsonCreator + public ReverseWireTransaction( + @JsonProperty("company_uuid") String companyUuid, + @JsonProperty("amount") String amount, + @JsonProperty("status") ReverseWireTransactionStatus status, + @JsonProperty("payment_direction") ReverseWireTransactionPaymentDirection paymentDirection, + @JsonProperty("bank_name") JsonNullable bankName, + @JsonProperty("payment_event_type") JsonNullable paymentEventType, + @JsonProperty("payment_event_uuid") JsonNullable paymentEventUuid, + @JsonProperty("payment_event_check_date") JsonNullable paymentEventCheckDate, + @JsonProperty("created_at") String createdAt) { + Utils.checkNotNull(companyUuid, "companyUuid"); + Utils.checkNotNull(amount, "amount"); + Utils.checkNotNull(status, "status"); + Utils.checkNotNull(paymentDirection, "paymentDirection"); + Utils.checkNotNull(bankName, "bankName"); + Utils.checkNotNull(paymentEventType, "paymentEventType"); + Utils.checkNotNull(paymentEventUuid, "paymentEventUuid"); + Utils.checkNotNull(paymentEventCheckDate, "paymentEventCheckDate"); + Utils.checkNotNull(createdAt, "createdAt"); + this.companyUuid = companyUuid; + this.amount = amount; + this.status = status; + this.paymentDirection = paymentDirection; + this.bankName = bankName; + this.paymentEventType = paymentEventType; + this.paymentEventUuid = paymentEventUuid; + this.paymentEventCheckDate = paymentEventCheckDate; + this.createdAt = createdAt; + } + + public ReverseWireTransaction( + String companyUuid, + String amount, + ReverseWireTransactionStatus status, + ReverseWireTransactionPaymentDirection paymentDirection, + String createdAt) { + this(companyUuid, amount, status, + paymentDirection, JsonNullable.undefined(), JsonNullable.undefined(), + JsonNullable.undefined(), JsonNullable.undefined(), createdAt); + } + + /** + * Unique identifier of the company the reverse wire transaction belongs to + */ + @JsonIgnore + public String companyUuid() { + return companyUuid; + } + + /** + * The amount of money moved by the reverse wire, as a decimal string. Always non-negative. + */ + @JsonIgnore + public String amount() { + return amount; + } + + /** + * Current status of the reverse wire transaction. + * - `pending_processing`: The reverse wire has been initiated and is awaiting processing by the + * banking network. + * - `processed`: The reverse wire was successfully settled and funds have been received. + * - `rejected`: The reverse wire was rejected by the receiving bank (e.g. invalid account, + * insufficient funds). + * - `failed`: The reverse wire failed during processing due to a system or network error. + */ + @JsonIgnore + public ReverseWireTransactionStatus status() { + return status; + } + + /** + * The direction of the payment. Reverse wires are always debits from the company's account. + */ + @JsonIgnore + public ReverseWireTransactionPaymentDirection paymentDirection() { + return paymentDirection; + } + + /** + * Name of the receiving bank. Null when the bank is not known. + */ + @JsonIgnore + public JsonNullable bankName() { + return bankName; + } + + /** + * The type of payment event this reverse wire is associated with. Null when the wire is not linked to + * a payroll or contractor payment. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public JsonNullable paymentEventType() { + return (JsonNullable) paymentEventType; + } + + /** + * Unique identifier of the associated payroll or contractor payment. Null when the wire is not linked + * to a payment event. + */ + @JsonIgnore + public JsonNullable paymentEventUuid() { + return paymentEventUuid; + } + + /** + * The check date of the associated payment event. Null when the wire is not linked to a payment event. + */ + @JsonIgnore + public JsonNullable paymentEventCheckDate() { + return paymentEventCheckDate; + } + + /** + * The date the reverse wire record was created. + */ + @JsonIgnore + public String createdAt() { + return createdAt; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Unique identifier of the company the reverse wire transaction belongs to + */ + public ReverseWireTransaction withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + /** + * The amount of money moved by the reverse wire, as a decimal string. Always non-negative. + */ + public ReverseWireTransaction withAmount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + /** + * Current status of the reverse wire transaction. + * - `pending_processing`: The reverse wire has been initiated and is awaiting processing by the + * banking network. + * - `processed`: The reverse wire was successfully settled and funds have been received. + * - `rejected`: The reverse wire was rejected by the receiving bank (e.g. invalid account, + * insufficient funds). + * - `failed`: The reverse wire failed during processing due to a system or network error. + */ + public ReverseWireTransaction withStatus(ReverseWireTransactionStatus status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + /** + * The direction of the payment. Reverse wires are always debits from the company's account. + */ + public ReverseWireTransaction withPaymentDirection(ReverseWireTransactionPaymentDirection paymentDirection) { + Utils.checkNotNull(paymentDirection, "paymentDirection"); + this.paymentDirection = paymentDirection; + return this; + } + + /** + * Name of the receiving bank. Null when the bank is not known. + */ + public ReverseWireTransaction withBankName(String bankName) { + Utils.checkNotNull(bankName, "bankName"); + this.bankName = JsonNullable.of(bankName); + return this; + } + + /** + * Name of the receiving bank. Null when the bank is not known. + */ + public ReverseWireTransaction withBankName(JsonNullable bankName) { + Utils.checkNotNull(bankName, "bankName"); + this.bankName = bankName; + return this; + } + + /** + * The type of payment event this reverse wire is associated with. Null when the wire is not linked to + * a payroll or contractor payment. + */ + public ReverseWireTransaction withPaymentEventType(ReverseWireTransactionPaymentEventType paymentEventType) { + Utils.checkNotNull(paymentEventType, "paymentEventType"); + this.paymentEventType = JsonNullable.of(paymentEventType); + return this; + } + + /** + * The type of payment event this reverse wire is associated with. Null when the wire is not linked to + * a payroll or contractor payment. + */ + public ReverseWireTransaction withPaymentEventType(JsonNullable paymentEventType) { + Utils.checkNotNull(paymentEventType, "paymentEventType"); + this.paymentEventType = paymentEventType; + return this; + } + + /** + * Unique identifier of the associated payroll or contractor payment. Null when the wire is not linked + * to a payment event. + */ + public ReverseWireTransaction withPaymentEventUuid(String paymentEventUuid) { + Utils.checkNotNull(paymentEventUuid, "paymentEventUuid"); + this.paymentEventUuid = JsonNullable.of(paymentEventUuid); + return this; + } + + /** + * Unique identifier of the associated payroll or contractor payment. Null when the wire is not linked + * to a payment event. + */ + public ReverseWireTransaction withPaymentEventUuid(JsonNullable paymentEventUuid) { + Utils.checkNotNull(paymentEventUuid, "paymentEventUuid"); + this.paymentEventUuid = paymentEventUuid; + return this; + } + + /** + * The check date of the associated payment event. Null when the wire is not linked to a payment event. + */ + public ReverseWireTransaction withPaymentEventCheckDate(String paymentEventCheckDate) { + Utils.checkNotNull(paymentEventCheckDate, "paymentEventCheckDate"); + this.paymentEventCheckDate = JsonNullable.of(paymentEventCheckDate); + return this; + } + + /** + * The check date of the associated payment event. Null when the wire is not linked to a payment event. + */ + public ReverseWireTransaction withPaymentEventCheckDate(JsonNullable paymentEventCheckDate) { + Utils.checkNotNull(paymentEventCheckDate, "paymentEventCheckDate"); + this.paymentEventCheckDate = paymentEventCheckDate; + return this; + } + + /** + * The date the reverse wire record was created. + */ + public ReverseWireTransaction withCreatedAt(String createdAt) { + Utils.checkNotNull(createdAt, "createdAt"); + this.createdAt = createdAt; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + ReverseWireTransaction other = (ReverseWireTransaction) o; + return + Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && + Utils.enhancedDeepEquals(this.amount, other.amount) && + Utils.enhancedDeepEquals(this.status, other.status) && + Utils.enhancedDeepEquals(this.paymentDirection, other.paymentDirection) && + Utils.enhancedDeepEquals(this.bankName, other.bankName) && + Utils.enhancedDeepEquals(this.paymentEventType, other.paymentEventType) && + Utils.enhancedDeepEquals(this.paymentEventUuid, other.paymentEventUuid) && + Utils.enhancedDeepEquals(this.paymentEventCheckDate, other.paymentEventCheckDate) && + Utils.enhancedDeepEquals(this.createdAt, other.createdAt); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + companyUuid, amount, status, + paymentDirection, bankName, paymentEventType, + paymentEventUuid, paymentEventCheckDate, createdAt); + } + + @Override + public String toString() { + return Utils.toString(ReverseWireTransaction.class, + "companyUuid", companyUuid, + "amount", amount, + "status", status, + "paymentDirection", paymentDirection, + "bankName", bankName, + "paymentEventType", paymentEventType, + "paymentEventUuid", paymentEventUuid, + "paymentEventCheckDate", paymentEventCheckDate, + "createdAt", createdAt); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String companyUuid; + + private String amount; + + private ReverseWireTransactionStatus status; + + private ReverseWireTransactionPaymentDirection paymentDirection; + + private JsonNullable bankName = JsonNullable.undefined(); + + private JsonNullable paymentEventType = JsonNullable.undefined(); + + private JsonNullable paymentEventUuid = JsonNullable.undefined(); + + private JsonNullable paymentEventCheckDate = JsonNullable.undefined(); + + private String createdAt; + + private Builder() { + // force use of static builder() method + } + + + /** + * Unique identifier of the company the reverse wire transaction belongs to + */ + public Builder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + + /** + * The amount of money moved by the reverse wire, as a decimal string. Always non-negative. + */ + public Builder amount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + + /** + * Current status of the reverse wire transaction. + * - `pending_processing`: The reverse wire has been initiated and is awaiting processing by the + * banking network. + * - `processed`: The reverse wire was successfully settled and funds have been received. + * - `rejected`: The reverse wire was rejected by the receiving bank (e.g. invalid account, + * insufficient funds). + * - `failed`: The reverse wire failed during processing due to a system or network error. + */ + public Builder status(ReverseWireTransactionStatus status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + + /** + * The direction of the payment. Reverse wires are always debits from the company's account. + */ + public Builder paymentDirection(ReverseWireTransactionPaymentDirection paymentDirection) { + Utils.checkNotNull(paymentDirection, "paymentDirection"); + this.paymentDirection = paymentDirection; + return this; + } + + + /** + * Name of the receiving bank. Null when the bank is not known. + */ + public Builder bankName(String bankName) { + Utils.checkNotNull(bankName, "bankName"); + this.bankName = JsonNullable.of(bankName); + return this; + } + + /** + * Name of the receiving bank. Null when the bank is not known. + */ + public Builder bankName(JsonNullable bankName) { + Utils.checkNotNull(bankName, "bankName"); + this.bankName = bankName; + return this; + } + + + /** + * The type of payment event this reverse wire is associated with. Null when the wire is not linked to + * a payroll or contractor payment. + */ + public Builder paymentEventType(ReverseWireTransactionPaymentEventType paymentEventType) { + Utils.checkNotNull(paymentEventType, "paymentEventType"); + this.paymentEventType = JsonNullable.of(paymentEventType); + return this; + } + + /** + * The type of payment event this reverse wire is associated with. Null when the wire is not linked to + * a payroll or contractor payment. + */ + public Builder paymentEventType(JsonNullable paymentEventType) { + Utils.checkNotNull(paymentEventType, "paymentEventType"); + this.paymentEventType = paymentEventType; + return this; + } + + + /** + * Unique identifier of the associated payroll or contractor payment. Null when the wire is not linked + * to a payment event. + */ + public Builder paymentEventUuid(String paymentEventUuid) { + Utils.checkNotNull(paymentEventUuid, "paymentEventUuid"); + this.paymentEventUuid = JsonNullable.of(paymentEventUuid); + return this; + } + + /** + * Unique identifier of the associated payroll or contractor payment. Null when the wire is not linked + * to a payment event. + */ + public Builder paymentEventUuid(JsonNullable paymentEventUuid) { + Utils.checkNotNull(paymentEventUuid, "paymentEventUuid"); + this.paymentEventUuid = paymentEventUuid; + return this; + } + + + /** + * The check date of the associated payment event. Null when the wire is not linked to a payment event. + */ + public Builder paymentEventCheckDate(String paymentEventCheckDate) { + Utils.checkNotNull(paymentEventCheckDate, "paymentEventCheckDate"); + this.paymentEventCheckDate = JsonNullable.of(paymentEventCheckDate); + return this; + } + + /** + * The check date of the associated payment event. Null when the wire is not linked to a payment event. + */ + public Builder paymentEventCheckDate(JsonNullable paymentEventCheckDate) { + Utils.checkNotNull(paymentEventCheckDate, "paymentEventCheckDate"); + this.paymentEventCheckDate = paymentEventCheckDate; + return this; + } + + + /** + * The date the reverse wire record was created. + */ + public Builder createdAt(String createdAt) { + Utils.checkNotNull(createdAt, "createdAt"); + this.createdAt = createdAt; + return this; + } + + public ReverseWireTransaction build() { + + return new ReverseWireTransaction( + companyUuid, amount, status, + paymentDirection, bankName, paymentEventType, + paymentEventUuid, paymentEventCheckDate, createdAt); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ReverseWireTransactionPaymentDirection.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ReverseWireTransactionPaymentDirection.java new file mode 100644 index 000000000..04cbd9510 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ReverseWireTransactionPaymentDirection.java @@ -0,0 +1,39 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * ReverseWireTransactionPaymentDirection + * + *

    The direction of the payment. Reverse wires are always debits from the company's account. + */ +public enum ReverseWireTransactionPaymentDirection { + DEBIT("debit"); + + @JsonValue + private final String value; + + ReverseWireTransactionPaymentDirection(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (ReverseWireTransactionPaymentDirection o: ReverseWireTransactionPaymentDirection.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ReverseWireTransactionPaymentEventType.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ReverseWireTransactionPaymentEventType.java new file mode 100644 index 000000000..5210cfc24 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ReverseWireTransactionPaymentEventType.java @@ -0,0 +1,35 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +public enum ReverseWireTransactionPaymentEventType { + PAYROLL("Payroll"), + CONTRACTOR_PAYMENT("ContractorPayment"); + + @JsonValue + private final String value; + + ReverseWireTransactionPaymentEventType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (ReverseWireTransactionPaymentEventType o: ReverseWireTransactionPaymentEventType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ReverseWireTransactionStatus.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ReverseWireTransactionStatus.java new file mode 100644 index 000000000..41b12a849 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ReverseWireTransactionStatus.java @@ -0,0 +1,48 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * ReverseWireTransactionStatus + * + *

    Current status of the reverse wire transaction. + * - `pending_processing`: The reverse wire has been initiated and is awaiting processing by the + * banking network. + * - `processed`: The reverse wire was successfully settled and funds have been received. + * - `rejected`: The reverse wire was rejected by the receiving bank (e.g. invalid account, + * insufficient funds). + * - `failed`: The reverse wire failed during processing due to a system or network error. + */ +public enum ReverseWireTransactionStatus { + PENDING_PROCESSING("pending_processing"), + PROCESSED("processed"), + REJECTED("rejected"), + FAILED("failed"); + + @JsonValue + private final String value; + + ReverseWireTransactionStatus(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (ReverseWireTransactionStatus o: ReverseWireTransactionStatus.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ShowEmployees.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ShowEmployees.java index 667dc4ac4..a747330eb 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ShowEmployees.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ShowEmployees.java @@ -128,14 +128,14 @@ public class ShowEmployees { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("onboarding_status") - private JsonNullable onboardingStatus; + private JsonNullable onboardingStatus; /** * Configuration for an employee onboarding documents during onboarding */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("onboarding_documents_config") - private Optional onboardingDocumentsConfig; + private Optional onboardingDocumentsConfig; @JsonInclude(Include.NON_ABSENT) @@ -199,7 +199,7 @@ public class ShowEmployees { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("payment_method") - private Optional paymentMethod; + private Optional paymentMethod; /** * The current employment status of the employee. Full-time employees work 30+ hours per week. @@ -211,7 +211,7 @@ public class ShowEmployees { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("current_employment_status") - private JsonNullable currentEmploymentStatus; + private JsonNullable currentEmploymentStatus; @JsonInclude(Include.NON_ABSENT) @@ -276,7 +276,7 @@ public class ShowEmployees { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("member_portal_invitation_status") - private JsonNullable memberPortalInvitationStatus; + private JsonNullable memberPortalInvitationStatus; /** * Whether an external partner portal invitation webhook has been sent for this employee. Only included @@ -315,8 +315,8 @@ public ShowEmployees( @JsonProperty("two_percent_shareholder") JsonNullable twoPercentShareholder, @JsonProperty("work_email") JsonNullable workEmail, @JsonProperty("onboarded") Optional onboarded, - @JsonProperty("onboarding_status") JsonNullable onboardingStatus, - @JsonProperty("onboarding_documents_config") Optional onboardingDocumentsConfig, + @JsonProperty("onboarding_status") JsonNullable onboardingStatus, + @JsonProperty("onboarding_documents_config") Optional onboardingDocumentsConfig, @JsonProperty("jobs") Optional> jobs, @JsonProperty("eligible_paid_time_off") Optional> eligiblePaidTimeOff, @JsonProperty("terminations") Optional> terminations, @@ -327,8 +327,8 @@ public ShowEmployees( @JsonProperty("ssn") Optional ssn, @JsonProperty("phone") JsonNullable phone, @JsonProperty("preferred_first_name") JsonNullable preferredFirstName, - @JsonProperty("payment_method") Optional paymentMethod, - @JsonProperty("current_employment_status") JsonNullable currentEmploymentStatus, + @JsonProperty("payment_method") Optional paymentMethod, + @JsonProperty("current_employment_status") JsonNullable currentEmploymentStatus, @JsonProperty("historical") Optional historical, @JsonProperty("employee_code") Optional employeeCode, @JsonProperty("department_uuid") JsonNullable departmentUuid, @@ -337,7 +337,7 @@ public ShowEmployees( @JsonProperty("hidden_ssn") Optional hiddenSsn, @JsonProperty("flsa_status") Optional flsaStatus, @JsonProperty("applicable_tax_ids") Optional> applicableTaxIds, - @JsonProperty("member_portal_invitation_status") JsonNullable memberPortalInvitationStatus, + @JsonProperty("member_portal_invitation_status") JsonNullable memberPortalInvitationStatus, @JsonProperty("partner_portal_invitation_sent") JsonNullable partnerPortalInvitationSent, @JsonProperty("current_home_address") Optional currentHomeAddress, @JsonProperty("all_home_addresses") Optional> allHomeAddresses) { @@ -550,8 +550,8 @@ public Optional onboarded() { */ @SuppressWarnings("unchecked") @JsonIgnore - public JsonNullable onboardingStatus() { - return (JsonNullable) onboardingStatus; + public JsonNullable onboardingStatus() { + return (JsonNullable) onboardingStatus; } /** @@ -559,8 +559,8 @@ public JsonNullable onboardingStatus() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional onboardingDocumentsConfig() { - return (Optional) onboardingDocumentsConfig; + public Optional onboardingDocumentsConfig() { + return (Optional) onboardingDocumentsConfig; } @SuppressWarnings("unchecked") @@ -633,8 +633,8 @@ public JsonNullable preferredFirstName() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional paymentMethod() { - return (Optional) paymentMethod; + public Optional paymentMethod() { + return (Optional) paymentMethod; } /** @@ -647,8 +647,8 @@ public Optional paymentMethod() { */ @SuppressWarnings("unchecked") @JsonIgnore - public JsonNullable currentEmploymentStatus() { - return (JsonNullable) currentEmploymentStatus; + public JsonNullable currentEmploymentStatus() { + return (JsonNullable) currentEmploymentStatus; } @JsonIgnore @@ -720,8 +720,8 @@ public Optional> applicableTaxIds() { */ @SuppressWarnings("unchecked") @JsonIgnore - public JsonNullable memberPortalInvitationStatus() { - return (JsonNullable) memberPortalInvitationStatus; + public JsonNullable memberPortalInvitationStatus() { + return (JsonNullable) memberPortalInvitationStatus; } /** @@ -975,7 +975,7 @@ public ShowEmployees withOnboarded(Optional onboarded) { /** * The current onboarding status of the employee */ - public ShowEmployees withOnboardingStatus(OnboardingStatus onboardingStatus) { + public ShowEmployees withOnboardingStatus(ShowEmployeesOnboardingStatus onboardingStatus) { Utils.checkNotNull(onboardingStatus, "onboardingStatus"); this.onboardingStatus = JsonNullable.of(onboardingStatus); return this; @@ -984,7 +984,7 @@ public ShowEmployees withOnboardingStatus(OnboardingStatus onboardingStatus) { /** * The current onboarding status of the employee */ - public ShowEmployees withOnboardingStatus(JsonNullable onboardingStatus) { + public ShowEmployees withOnboardingStatus(JsonNullable onboardingStatus) { Utils.checkNotNull(onboardingStatus, "onboardingStatus"); this.onboardingStatus = onboardingStatus; return this; @@ -993,7 +993,7 @@ public ShowEmployees withOnboardingStatus(JsonNullable onboardingDocumentsConfig) { + public ShowEmployees withOnboardingDocumentsConfig(Optional onboardingDocumentsConfig) { Utils.checkNotNull(onboardingDocumentsConfig, "onboardingDocumentsConfig"); this.onboardingDocumentsConfig = onboardingDocumentsConfig; return this; @@ -1159,7 +1159,7 @@ public ShowEmployees withPreferredFirstName(JsonNullable preferredFirstN /** * The employee's payment method */ - public ShowEmployees withPaymentMethod(PaymentMethod paymentMethod) { + public ShowEmployees withPaymentMethod(ShowEmployeesPaymentMethod paymentMethod) { Utils.checkNotNull(paymentMethod, "paymentMethod"); this.paymentMethod = Optional.ofNullable(paymentMethod); return this; @@ -1169,7 +1169,7 @@ public ShowEmployees withPaymentMethod(PaymentMethod paymentMethod) { /** * The employee's payment method */ - public ShowEmployees withPaymentMethod(Optional paymentMethod) { + public ShowEmployees withPaymentMethod(Optional paymentMethod) { Utils.checkNotNull(paymentMethod, "paymentMethod"); this.paymentMethod = paymentMethod; return this; @@ -1183,7 +1183,7 @@ public ShowEmployees withPaymentMethod(Optional payment *

    Variable employees have hours that vary each week. Seasonal employees are hired for 6 months of the * year or less. */ - public ShowEmployees withCurrentEmploymentStatus(CurrentEmploymentStatus currentEmploymentStatus) { + public ShowEmployees withCurrentEmploymentStatus(ShowEmployeesCurrentEmploymentStatus currentEmploymentStatus) { Utils.checkNotNull(currentEmploymentStatus, "currentEmploymentStatus"); this.currentEmploymentStatus = JsonNullable.of(currentEmploymentStatus); return this; @@ -1197,7 +1197,7 @@ public ShowEmployees withCurrentEmploymentStatus(CurrentEmploymentStatus current *

    Variable employees have hours that vary each week. Seasonal employees are hired for 6 months of the * year or less. */ - public ShowEmployees withCurrentEmploymentStatus(JsonNullable currentEmploymentStatus) { + public ShowEmployees withCurrentEmploymentStatus(JsonNullable currentEmploymentStatus) { Utils.checkNotNull(currentEmploymentStatus, "currentEmploymentStatus"); this.currentEmploymentStatus = currentEmploymentStatus; return this; @@ -1352,7 +1352,7 @@ public ShowEmployees withApplicableTaxIds(Optional> appli * Member portal invitation status information. Only included when the include param has the * portal_invitations value set. */ - public ShowEmployees withMemberPortalInvitationStatus(MemberPortalInvitationStatus memberPortalInvitationStatus) { + public ShowEmployees withMemberPortalInvitationStatus(ShowEmployeesMemberPortalInvitationStatus memberPortalInvitationStatus) { Utils.checkNotNull(memberPortalInvitationStatus, "memberPortalInvitationStatus"); this.memberPortalInvitationStatus = JsonNullable.of(memberPortalInvitationStatus); return this; @@ -1362,7 +1362,7 @@ public ShowEmployees withMemberPortalInvitationStatus(MemberPortalInvitationStat * Member portal invitation status information. Only included when the include param has the * portal_invitations value set. */ - public ShowEmployees withMemberPortalInvitationStatus(JsonNullable memberPortalInvitationStatus) { + public ShowEmployees withMemberPortalInvitationStatus(JsonNullable memberPortalInvitationStatus) { Utils.checkNotNull(memberPortalInvitationStatus, "memberPortalInvitationStatus"); this.memberPortalInvitationStatus = memberPortalInvitationStatus; return this; @@ -1572,9 +1572,9 @@ public final static class Builder { private Optional onboarded = Optional.empty(); - private JsonNullable onboardingStatus = JsonNullable.undefined(); + private JsonNullable onboardingStatus = JsonNullable.undefined(); - private Optional onboardingDocumentsConfig = Optional.empty(); + private Optional onboardingDocumentsConfig = Optional.empty(); private Optional> jobs = Optional.empty(); @@ -1596,9 +1596,9 @@ public final static class Builder { private JsonNullable preferredFirstName = JsonNullable.undefined(); - private Optional paymentMethod; + private Optional paymentMethod; - private JsonNullable currentEmploymentStatus = JsonNullable.undefined(); + private JsonNullable currentEmploymentStatus = JsonNullable.undefined(); private Optional historical = Optional.empty(); @@ -1616,7 +1616,7 @@ public final static class Builder { private Optional> applicableTaxIds = Optional.empty(); - private JsonNullable memberPortalInvitationStatus = JsonNullable.undefined(); + private JsonNullable memberPortalInvitationStatus = JsonNullable.undefined(); private JsonNullable partnerPortalInvitationSent = JsonNullable.undefined(); @@ -1860,7 +1860,7 @@ public Builder onboarded(Optional onboarded) { /** * The current onboarding status of the employee */ - public Builder onboardingStatus(OnboardingStatus onboardingStatus) { + public Builder onboardingStatus(ShowEmployeesOnboardingStatus onboardingStatus) { Utils.checkNotNull(onboardingStatus, "onboardingStatus"); this.onboardingStatus = JsonNullable.of(onboardingStatus); return this; @@ -1869,7 +1869,7 @@ public Builder onboardingStatus(OnboardingStatus onboardingStatus) { /** * The current onboarding status of the employee */ - public Builder onboardingStatus(JsonNullable onboardingStatus) { + public Builder onboardingStatus(JsonNullable onboardingStatus) { Utils.checkNotNull(onboardingStatus, "onboardingStatus"); this.onboardingStatus = onboardingStatus; return this; @@ -1879,7 +1879,7 @@ public Builder onboardingStatus(JsonNullable onboard /** * Configuration for an employee onboarding documents during onboarding */ - public Builder onboardingDocumentsConfig(OnboardingDocumentsConfig onboardingDocumentsConfig) { + public Builder onboardingDocumentsConfig(ShowEmployeesOnboardingDocumentsConfig onboardingDocumentsConfig) { Utils.checkNotNull(onboardingDocumentsConfig, "onboardingDocumentsConfig"); this.onboardingDocumentsConfig = Optional.ofNullable(onboardingDocumentsConfig); return this; @@ -1888,7 +1888,7 @@ public Builder onboardingDocumentsConfig(OnboardingDocumentsConfig onboardingDoc /** * Configuration for an employee onboarding documents during onboarding */ - public Builder onboardingDocumentsConfig(Optional onboardingDocumentsConfig) { + public Builder onboardingDocumentsConfig(Optional onboardingDocumentsConfig) { Utils.checkNotNull(onboardingDocumentsConfig, "onboardingDocumentsConfig"); this.onboardingDocumentsConfig = onboardingDocumentsConfig; return this; @@ -2048,7 +2048,7 @@ public Builder preferredFirstName(JsonNullable preferredFirstName) { /** * The employee's payment method */ - public Builder paymentMethod(PaymentMethod paymentMethod) { + public Builder paymentMethod(ShowEmployeesPaymentMethod paymentMethod) { Utils.checkNotNull(paymentMethod, "paymentMethod"); this.paymentMethod = Optional.ofNullable(paymentMethod); return this; @@ -2057,7 +2057,7 @@ public Builder paymentMethod(PaymentMethod paymentMethod) { /** * The employee's payment method */ - public Builder paymentMethod(Optional paymentMethod) { + public Builder paymentMethod(Optional paymentMethod) { Utils.checkNotNull(paymentMethod, "paymentMethod"); this.paymentMethod = paymentMethod; return this; @@ -2072,7 +2072,7 @@ public Builder paymentMethod(Optional paymentMethod) { *

    Variable employees have hours that vary each week. Seasonal employees are hired for 6 months of the * year or less. */ - public Builder currentEmploymentStatus(CurrentEmploymentStatus currentEmploymentStatus) { + public Builder currentEmploymentStatus(ShowEmployeesCurrentEmploymentStatus currentEmploymentStatus) { Utils.checkNotNull(currentEmploymentStatus, "currentEmploymentStatus"); this.currentEmploymentStatus = JsonNullable.of(currentEmploymentStatus); return this; @@ -2086,7 +2086,7 @@ public Builder currentEmploymentStatus(CurrentEmploymentStatus currentEmployment *

    Variable employees have hours that vary each week. Seasonal employees are hired for 6 months of the * year or less. */ - public Builder currentEmploymentStatus(JsonNullable currentEmploymentStatus) { + public Builder currentEmploymentStatus(JsonNullable currentEmploymentStatus) { Utils.checkNotNull(currentEmploymentStatus, "currentEmploymentStatus"); this.currentEmploymentStatus = currentEmploymentStatus; return this; @@ -2243,7 +2243,7 @@ public Builder applicableTaxIds(Optional> applicableTaxId * Member portal invitation status information. Only included when the include param has the * portal_invitations value set. */ - public Builder memberPortalInvitationStatus(MemberPortalInvitationStatus memberPortalInvitationStatus) { + public Builder memberPortalInvitationStatus(ShowEmployeesMemberPortalInvitationStatus memberPortalInvitationStatus) { Utils.checkNotNull(memberPortalInvitationStatus, "memberPortalInvitationStatus"); this.memberPortalInvitationStatus = JsonNullable.of(memberPortalInvitationStatus); return this; @@ -2253,7 +2253,7 @@ public Builder memberPortalInvitationStatus(MemberPortalInvitationStatus memberP * Member portal invitation status information. Only included when the include param has the * portal_invitations value set. */ - public Builder memberPortalInvitationStatus(JsonNullable memberPortalInvitationStatus) { + public Builder memberPortalInvitationStatus(JsonNullable memberPortalInvitationStatus) { Utils.checkNotNull(memberPortalInvitationStatus, "memberPortalInvitationStatus"); this.memberPortalInvitationStatus = memberPortalInvitationStatus; return this; @@ -2345,10 +2345,10 @@ public ShowEmployees build() { } - private static final LazySingletonValue> _SINGLETON_VALUE_PaymentMethod = + private static final LazySingletonValue> _SINGLETON_VALUE_PaymentMethod = new LazySingletonValue<>( "payment_method", "\"Check\"", - new TypeReference>() {}); + new TypeReference>() {}); } } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeeCurrentEmploymentStatus.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ShowEmployeesCurrentEmploymentStatus.java similarity index 72% rename from gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeeCurrentEmploymentStatus.java rename to gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ShowEmployeesCurrentEmploymentStatus.java index 330ad86bc..9f1444985 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeeCurrentEmploymentStatus.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ShowEmployeesCurrentEmploymentStatus.java @@ -8,7 +8,7 @@ import java.util.Objects; import java.util.Optional; -public enum EmployeeCurrentEmploymentStatus { +public enum ShowEmployeesCurrentEmploymentStatus { FULL_TIME("full_time"), PART_TIME_UNDER_TWENTY_HOURS("part_time_under_twenty_hours"), PART_TIME_TWENTY_PLUS_HOURS("part_time_twenty_plus_hours"), @@ -18,7 +18,7 @@ public enum EmployeeCurrentEmploymentStatus { @JsonValue private final String value; - EmployeeCurrentEmploymentStatus(String value) { + ShowEmployeesCurrentEmploymentStatus(String value) { this.value = value; } @@ -26,8 +26,8 @@ public String value() { return value; } - public static Optional fromValue(String value) { - for (EmployeeCurrentEmploymentStatus o: EmployeeCurrentEmploymentStatus.values()) { + public static Optional fromValue(String value) { + for (ShowEmployeesCurrentEmploymentStatus o: ShowEmployeesCurrentEmploymentStatus.values()) { if (Objects.deepEquals(o.value, value)) { return Optional.of(o); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorMemberPortalInvitationStatus.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ShowEmployeesMemberPortalInvitationStatus.java similarity index 82% rename from gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorMemberPortalInvitationStatus.java rename to gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ShowEmployeesMemberPortalInvitationStatus.java index 56dee6bb2..a75f79877 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorMemberPortalInvitationStatus.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ShowEmployeesMemberPortalInvitationStatus.java @@ -18,18 +18,18 @@ import org.openapitools.jackson.nullable.JsonNullable; /** - * ContractorMemberPortalInvitationStatus + * ShowEmployeesMemberPortalInvitationStatus * *

    Member portal invitation status information. Only included when the include param has the * portal_invitations value set. */ -public class ContractorMemberPortalInvitationStatus { +public class ShowEmployeesMemberPortalInvitationStatus { /** * The current status of the member portal invitation. */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("status") - private Optional status; + private Optional status; /** * Whether the invitation token has expired. @@ -53,8 +53,8 @@ public class ContractorMemberPortalInvitationStatus { private JsonNullable lastPasswordResentAt; @JsonCreator - public ContractorMemberPortalInvitationStatus( - @JsonProperty("status") Optional status, + public ShowEmployeesMemberPortalInvitationStatus( + @JsonProperty("status") Optional status, @JsonProperty("token_expired") JsonNullable tokenExpired, @JsonProperty("welcome_email_sent_at") JsonNullable welcomeEmailSentAt, @JsonProperty("last_password_resent_at") JsonNullable lastPasswordResentAt) { @@ -68,7 +68,7 @@ public ContractorMemberPortalInvitationStatus( this.lastPasswordResentAt = lastPasswordResentAt; } - public ContractorMemberPortalInvitationStatus() { + public ShowEmployeesMemberPortalInvitationStatus() { this(Optional.empty(), JsonNullable.undefined(), JsonNullable.undefined(), JsonNullable.undefined()); } @@ -78,8 +78,8 @@ public ContractorMemberPortalInvitationStatus() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional status() { - return (Optional) status; + public Optional status() { + return (Optional) status; } /** @@ -114,7 +114,7 @@ public static Builder builder() { /** * The current status of the member portal invitation. */ - public ContractorMemberPortalInvitationStatus withStatus(ContractorStatus status) { + public ShowEmployeesMemberPortalInvitationStatus withStatus(ShowEmployeesStatus status) { Utils.checkNotNull(status, "status"); this.status = Optional.ofNullable(status); return this; @@ -124,7 +124,7 @@ public ContractorMemberPortalInvitationStatus withStatus(ContractorStatus status /** * The current status of the member portal invitation. */ - public ContractorMemberPortalInvitationStatus withStatus(Optional status) { + public ShowEmployeesMemberPortalInvitationStatus withStatus(Optional status) { Utils.checkNotNull(status, "status"); this.status = status; return this; @@ -133,7 +133,7 @@ public ContractorMemberPortalInvitationStatus withStatus(Optional tokenExpired) { + public ShowEmployeesMemberPortalInvitationStatus withTokenExpired(JsonNullable tokenExpired) { Utils.checkNotNull(tokenExpired, "tokenExpired"); this.tokenExpired = tokenExpired; return this; @@ -151,7 +151,7 @@ public ContractorMemberPortalInvitationStatus withTokenExpired(JsonNullable welcomeEmailSentAt) { + public ShowEmployeesMemberPortalInvitationStatus withWelcomeEmailSentAt(JsonNullable welcomeEmailSentAt) { Utils.checkNotNull(welcomeEmailSentAt, "welcomeEmailSentAt"); this.welcomeEmailSentAt = welcomeEmailSentAt; return this; @@ -169,7 +169,7 @@ public ContractorMemberPortalInvitationStatus withWelcomeEmailSentAt(JsonNullabl /** * The date and time when the password reset was last resent. */ - public ContractorMemberPortalInvitationStatus withLastPasswordResentAt(OffsetDateTime lastPasswordResentAt) { + public ShowEmployeesMemberPortalInvitationStatus withLastPasswordResentAt(OffsetDateTime lastPasswordResentAt) { Utils.checkNotNull(lastPasswordResentAt, "lastPasswordResentAt"); this.lastPasswordResentAt = JsonNullable.of(lastPasswordResentAt); return this; @@ -178,7 +178,7 @@ public ContractorMemberPortalInvitationStatus withLastPasswordResentAt(OffsetDat /** * The date and time when the password reset was last resent. */ - public ContractorMemberPortalInvitationStatus withLastPasswordResentAt(JsonNullable lastPasswordResentAt) { + public ShowEmployeesMemberPortalInvitationStatus withLastPasswordResentAt(JsonNullable lastPasswordResentAt) { Utils.checkNotNull(lastPasswordResentAt, "lastPasswordResentAt"); this.lastPasswordResentAt = lastPasswordResentAt; return this; @@ -192,7 +192,7 @@ public boolean equals(java.lang.Object o) { if (o == null || getClass() != o.getClass()) { return false; } - ContractorMemberPortalInvitationStatus other = (ContractorMemberPortalInvitationStatus) o; + ShowEmployeesMemberPortalInvitationStatus other = (ShowEmployeesMemberPortalInvitationStatus) o; return Utils.enhancedDeepEquals(this.status, other.status) && Utils.enhancedDeepEquals(this.tokenExpired, other.tokenExpired) && @@ -209,7 +209,7 @@ public int hashCode() { @Override public String toString() { - return Utils.toString(ContractorMemberPortalInvitationStatus.class, + return Utils.toString(ShowEmployeesMemberPortalInvitationStatus.class, "status", status, "tokenExpired", tokenExpired, "welcomeEmailSentAt", welcomeEmailSentAt, @@ -219,7 +219,7 @@ public String toString() { @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private Optional status = Optional.empty(); + private Optional status = Optional.empty(); private JsonNullable tokenExpired = JsonNullable.undefined(); @@ -235,7 +235,7 @@ private Builder() { /** * The current status of the member portal invitation. */ - public Builder status(ContractorStatus status) { + public Builder status(ShowEmployeesStatus status) { Utils.checkNotNull(status, "status"); this.status = Optional.ofNullable(status); return this; @@ -244,7 +244,7 @@ public Builder status(ContractorStatus status) { /** * The current status of the member portal invitation. */ - public Builder status(Optional status) { + public Builder status(Optional status) { Utils.checkNotNull(status, "status"); this.status = status; return this; @@ -307,9 +307,9 @@ public Builder lastPasswordResentAt(JsonNullable lastPasswordRes return this; } - public ContractorMemberPortalInvitationStatus build() { + public ShowEmployeesMemberPortalInvitationStatus build() { - return new ContractorMemberPortalInvitationStatus( + return new ShowEmployeesMemberPortalInvitationStatus( status, tokenExpired, welcomeEmailSentAt, lastPasswordResentAt); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeeOnboardingDocumentsConfig.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ShowEmployeesOnboardingDocumentsConfig.java similarity index 84% rename from gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeeOnboardingDocumentsConfig.java rename to gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ShowEmployeesOnboardingDocumentsConfig.java index 1f97596da..a191415a5 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/EmployeeOnboardingDocumentsConfig.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ShowEmployeesOnboardingDocumentsConfig.java @@ -16,11 +16,11 @@ import org.openapitools.jackson.nullable.JsonNullable; /** - * EmployeeOnboardingDocumentsConfig + * ShowEmployeesOnboardingDocumentsConfig * *

    Configuration for an employee onboarding documents during onboarding */ -public class EmployeeOnboardingDocumentsConfig { +public class ShowEmployeesOnboardingDocumentsConfig { /** * The UUID of the onboarding documents config */ @@ -36,7 +36,7 @@ public class EmployeeOnboardingDocumentsConfig { private Optional i9Document; @JsonCreator - public EmployeeOnboardingDocumentsConfig( + public ShowEmployeesOnboardingDocumentsConfig( @JsonProperty("uuid") JsonNullable uuid, @JsonProperty("i9_document") Optional i9Document) { Utils.checkNotNull(uuid, "uuid"); @@ -45,7 +45,7 @@ public EmployeeOnboardingDocumentsConfig( this.i9Document = i9Document; } - public EmployeeOnboardingDocumentsConfig() { + public ShowEmployeesOnboardingDocumentsConfig() { this(JsonNullable.undefined(), Optional.empty()); } @@ -73,7 +73,7 @@ public static Builder builder() { /** * The UUID of the onboarding documents config */ - public EmployeeOnboardingDocumentsConfig withUuid(String uuid) { + public ShowEmployeesOnboardingDocumentsConfig withUuid(String uuid) { Utils.checkNotNull(uuid, "uuid"); this.uuid = JsonNullable.of(uuid); return this; @@ -82,7 +82,7 @@ public EmployeeOnboardingDocumentsConfig withUuid(String uuid) { /** * The UUID of the onboarding documents config */ - public EmployeeOnboardingDocumentsConfig withUuid(JsonNullable uuid) { + public ShowEmployeesOnboardingDocumentsConfig withUuid(JsonNullable uuid) { Utils.checkNotNull(uuid, "uuid"); this.uuid = uuid; return this; @@ -91,7 +91,7 @@ public EmployeeOnboardingDocumentsConfig withUuid(JsonNullable uuid) { /** * Whether to include Form I-9 for an employee during onboarding */ - public EmployeeOnboardingDocumentsConfig withI9Document(boolean i9Document) { + public ShowEmployeesOnboardingDocumentsConfig withI9Document(boolean i9Document) { Utils.checkNotNull(i9Document, "i9Document"); this.i9Document = Optional.ofNullable(i9Document); return this; @@ -101,7 +101,7 @@ public EmployeeOnboardingDocumentsConfig withI9Document(boolean i9Document) { /** * Whether to include Form I-9 for an employee during onboarding */ - public EmployeeOnboardingDocumentsConfig withI9Document(Optional i9Document) { + public ShowEmployeesOnboardingDocumentsConfig withI9Document(Optional i9Document) { Utils.checkNotNull(i9Document, "i9Document"); this.i9Document = i9Document; return this; @@ -115,7 +115,7 @@ public boolean equals(java.lang.Object o) { if (o == null || getClass() != o.getClass()) { return false; } - EmployeeOnboardingDocumentsConfig other = (EmployeeOnboardingDocumentsConfig) o; + ShowEmployeesOnboardingDocumentsConfig other = (ShowEmployeesOnboardingDocumentsConfig) o; return Utils.enhancedDeepEquals(this.uuid, other.uuid) && Utils.enhancedDeepEquals(this.i9Document, other.i9Document); @@ -129,7 +129,7 @@ public int hashCode() { @Override public String toString() { - return Utils.toString(EmployeeOnboardingDocumentsConfig.class, + return Utils.toString(ShowEmployeesOnboardingDocumentsConfig.class, "uuid", uuid, "i9Document", i9Document); } @@ -183,9 +183,9 @@ public Builder i9Document(Optional i9Document) { return this; } - public EmployeeOnboardingDocumentsConfig build() { + public ShowEmployeesOnboardingDocumentsConfig build() { - return new EmployeeOnboardingDocumentsConfig( + return new ShowEmployeesOnboardingDocumentsConfig( uuid, i9Document); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorOnboardingStatus1.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ShowEmployeesOnboardingStatus.java similarity index 50% rename from gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorOnboardingStatus1.java rename to gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ShowEmployeesOnboardingStatus.java index b120b7599..7b40c0bab 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ContractorOnboardingStatus1.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ShowEmployeesOnboardingStatus.java @@ -8,24 +8,20 @@ import java.util.Objects; import java.util.Optional; -/** - * ContractorOnboardingStatus1 - * - *

    One of the "onboarding_status" enum values. - */ -public enum ContractorOnboardingStatus1 { +public enum ShowEmployeesOnboardingStatus { + ONBOARDING_COMPLETED("onboarding_completed"), ADMIN_ONBOARDING_INCOMPLETE("admin_onboarding_incomplete"), - ADMIN_ONBOARDING_REVIEW("admin_onboarding_review"), - SELF_ONBOARDING_NOT_INVITED("self_onboarding_not_invited"), + SELF_ONBOARDING_PENDING_INVITE("self_onboarding_pending_invite"), SELF_ONBOARDING_INVITED("self_onboarding_invited"), - SELF_ONBOARDING_STARTED("self_onboarding_started"), - SELF_ONBOARDING_REVIEW("self_onboarding_review"), - ONBOARDING_COMPLETED("onboarding_completed"); + SELF_ONBOARDING_INVITED_STARTED("self_onboarding_invited_started"), + SELF_ONBOARDING_INVITED_OVERDUE("self_onboarding_invited_overdue"), + SELF_ONBOARDING_COMPLETED_BY_EMPLOYEE("self_onboarding_completed_by_employee"), + SELF_ONBOARDING_AWAITING_ADMIN_REVIEW("self_onboarding_awaiting_admin_review"); @JsonValue private final String value; - ContractorOnboardingStatus1(String value) { + ShowEmployeesOnboardingStatus(String value) { this.value = value; } @@ -33,8 +29,8 @@ public String value() { return value; } - public static Optional fromValue(String value) { - for (ContractorOnboardingStatus1 o: ContractorOnboardingStatus1.values()) { + public static Optional fromValue(String value) { + for (ShowEmployeesOnboardingStatus o: ShowEmployeesOnboardingStatus.values()) { if (Objects.deepEquals(o.value, value)) { return Optional.of(o); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ShowEmployeesPaymentMethod.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ShowEmployeesPaymentMethod.java new file mode 100644 index 000000000..8686ef373 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/ShowEmployeesPaymentMethod.java @@ -0,0 +1,40 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * ShowEmployeesPaymentMethod + * + *

    The employee's payment method + */ +public enum ShowEmployeesPaymentMethod { + DIRECT_DEPOSIT("Direct Deposit"), + CHECK("Check"); + + @JsonValue + private final String value; + + ShowEmployeesPaymentMethod(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (ShowEmployeesPaymentMethod o: ShowEmployeesPaymentMethod.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Signatory.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Signatory.java index 345c0ac7e..ab9938cd0 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Signatory.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Signatory.java @@ -95,7 +95,7 @@ public class Signatory { @JsonInclude(Include.NON_ABSENT) @JsonProperty("home_address") - private JsonNullable homeAddress; + private JsonNullable homeAddress; @JsonCreator public Signatory( @@ -110,7 +110,7 @@ public Signatory( @JsonProperty("has_ssn") Optional hasSsn, @JsonProperty("version") Optional version, @JsonProperty("identity_verification_status") JsonNullable identityVerificationStatus, - @JsonProperty("home_address") JsonNullable homeAddress) { + @JsonProperty("home_address") JsonNullable homeAddress) { Utils.checkNotNull(uuid, "uuid"); Utils.checkNotNull(firstName, "firstName"); Utils.checkNotNull(lastName, "lastName"); @@ -223,8 +223,8 @@ public JsonNullable identityVerificationStatus() { @SuppressWarnings("unchecked") @JsonIgnore - public JsonNullable homeAddress() { - return (JsonNullable) homeAddress; + public JsonNullable homeAddress() { + return (JsonNullable) homeAddress; } public static Builder builder() { @@ -402,13 +402,13 @@ public Signatory withIdentityVerificationStatus(JsonNullable homeAddress) { + public Signatory withHomeAddress(JsonNullable homeAddress) { Utils.checkNotNull(homeAddress, "homeAddress"); this.homeAddress = homeAddress; return this; @@ -489,7 +489,7 @@ public final static class Builder { private JsonNullable identityVerificationStatus = JsonNullable.undefined(); - private JsonNullable homeAddress = JsonNullable.undefined(); + private JsonNullable homeAddress = JsonNullable.undefined(); private Builder() { // force use of static builder() method @@ -673,13 +673,13 @@ public Builder identityVerificationStatus(JsonNullable homeAddress) { + public Builder homeAddress(JsonNullable homeAddress) { Utils.checkNotNull(homeAddress, "homeAddress"); this.homeAddress = homeAddress; return this; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/SignatoryHomeAddress.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/SignatoryHomeAddress.java new file mode 100644 index 000000000..bfeaf7737 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/SignatoryHomeAddress.java @@ -0,0 +1,340 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2025_11_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.util.Optional; + + +public class SignatoryHomeAddress { + + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("street_1") + private Optional street1; + + + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("street_2") + private Optional street2; + + + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("city") + private Optional city; + + + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("state") + private Optional state; + + + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("zip") + private Optional zip; + + + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("country") + private Optional country; + + @JsonCreator + public SignatoryHomeAddress( + @JsonProperty("street_1") Optional street1, + @JsonProperty("street_2") Optional street2, + @JsonProperty("city") Optional city, + @JsonProperty("state") Optional state, + @JsonProperty("zip") Optional zip, + @JsonProperty("country") Optional country) { + Utils.checkNotNull(street1, "street1"); + Utils.checkNotNull(street2, "street2"); + Utils.checkNotNull(city, "city"); + Utils.checkNotNull(state, "state"); + Utils.checkNotNull(zip, "zip"); + Utils.checkNotNull(country, "country"); + this.street1 = street1; + this.street2 = street2; + this.city = city; + this.state = state; + this.zip = zip; + this.country = country; + } + + public SignatoryHomeAddress() { + this(Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty(), Optional.empty(), Optional.empty()); + } + + @JsonIgnore + public Optional street1() { + return street1; + } + + @JsonIgnore + public Optional street2() { + return street2; + } + + @JsonIgnore + public Optional city() { + return city; + } + + @JsonIgnore + public Optional state() { + return state; + } + + @JsonIgnore + public Optional zip() { + return zip; + } + + @JsonIgnore + public Optional country() { + return country; + } + + public static Builder builder() { + return new Builder(); + } + + + public SignatoryHomeAddress withStreet1(String street1) { + Utils.checkNotNull(street1, "street1"); + this.street1 = Optional.ofNullable(street1); + return this; + } + + + public SignatoryHomeAddress withStreet1(Optional street1) { + Utils.checkNotNull(street1, "street1"); + this.street1 = street1; + return this; + } + + public SignatoryHomeAddress withStreet2(String street2) { + Utils.checkNotNull(street2, "street2"); + this.street2 = Optional.ofNullable(street2); + return this; + } + + + public SignatoryHomeAddress withStreet2(Optional street2) { + Utils.checkNotNull(street2, "street2"); + this.street2 = street2; + return this; + } + + public SignatoryHomeAddress withCity(String city) { + Utils.checkNotNull(city, "city"); + this.city = Optional.ofNullable(city); + return this; + } + + + public SignatoryHomeAddress withCity(Optional city) { + Utils.checkNotNull(city, "city"); + this.city = city; + return this; + } + + public SignatoryHomeAddress withState(String state) { + Utils.checkNotNull(state, "state"); + this.state = Optional.ofNullable(state); + return this; + } + + + public SignatoryHomeAddress withState(Optional state) { + Utils.checkNotNull(state, "state"); + this.state = state; + return this; + } + + public SignatoryHomeAddress withZip(String zip) { + Utils.checkNotNull(zip, "zip"); + this.zip = Optional.ofNullable(zip); + return this; + } + + + public SignatoryHomeAddress withZip(Optional zip) { + Utils.checkNotNull(zip, "zip"); + this.zip = zip; + return this; + } + + public SignatoryHomeAddress withCountry(String country) { + Utils.checkNotNull(country, "country"); + this.country = Optional.ofNullable(country); + return this; + } + + + public SignatoryHomeAddress withCountry(Optional country) { + Utils.checkNotNull(country, "country"); + this.country = country; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + SignatoryHomeAddress other = (SignatoryHomeAddress) o; + return + Utils.enhancedDeepEquals(this.street1, other.street1) && + Utils.enhancedDeepEquals(this.street2, other.street2) && + Utils.enhancedDeepEquals(this.city, other.city) && + Utils.enhancedDeepEquals(this.state, other.state) && + Utils.enhancedDeepEquals(this.zip, other.zip) && + Utils.enhancedDeepEquals(this.country, other.country); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + street1, street2, city, + state, zip, country); + } + + @Override + public String toString() { + return Utils.toString(SignatoryHomeAddress.class, + "street1", street1, + "street2", street2, + "city", city, + "state", state, + "zip", zip, + "country", country); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional street1 = Optional.empty(); + + private Optional street2 = Optional.empty(); + + private Optional city = Optional.empty(); + + private Optional state = Optional.empty(); + + private Optional zip = Optional.empty(); + + private Optional country; + + private Builder() { + // force use of static builder() method + } + + + public Builder street1(String street1) { + Utils.checkNotNull(street1, "street1"); + this.street1 = Optional.ofNullable(street1); + return this; + } + + public Builder street1(Optional street1) { + Utils.checkNotNull(street1, "street1"); + this.street1 = street1; + return this; + } + + + public Builder street2(String street2) { + Utils.checkNotNull(street2, "street2"); + this.street2 = Optional.ofNullable(street2); + return this; + } + + public Builder street2(Optional street2) { + Utils.checkNotNull(street2, "street2"); + this.street2 = street2; + return this; + } + + + public Builder city(String city) { + Utils.checkNotNull(city, "city"); + this.city = Optional.ofNullable(city); + return this; + } + + public Builder city(Optional city) { + Utils.checkNotNull(city, "city"); + this.city = city; + return this; + } + + + public Builder state(String state) { + Utils.checkNotNull(state, "state"); + this.state = Optional.ofNullable(state); + return this; + } + + public Builder state(Optional state) { + Utils.checkNotNull(state, "state"); + this.state = state; + return this; + } + + + public Builder zip(String zip) { + Utils.checkNotNull(zip, "zip"); + this.zip = Optional.ofNullable(zip); + return this; + } + + public Builder zip(Optional zip) { + Utils.checkNotNull(zip, "zip"); + this.zip = zip; + return this; + } + + + public Builder country(String country) { + Utils.checkNotNull(country, "country"); + this.country = Optional.ofNullable(country); + return this; + } + + public Builder country(Optional country) { + Utils.checkNotNull(country, "country"); + this.country = country; + return this; + } + + public SignatoryHomeAddress build() { + if (country == null) { + country = _SINGLETON_VALUE_Country.value(); + } + + return new SignatoryHomeAddress( + street1, street2, city, + state, zip, country); + } + + + private static final LazySingletonValue> _SINGLETON_VALUE_Country = + new LazySingletonValue<>( + "country", + "\"USA\"", + new TypeReference>() {}); + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Splits.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Splits.java index 7e7a3600f..3b1f5d93e 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Splits.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Splits.java @@ -18,16 +18,12 @@ public class Splits { - /** - * The UUID of the bank account. - */ + @JsonInclude(Include.NON_ABSENT) @JsonProperty("bank_account_uuid") private Optional bankAccountUuid; - /** - * The name of the bank account. - */ + @JsonInclude(Include.NON_ABSENT) @JsonProperty("name") private Optional name; @@ -41,26 +37,17 @@ public class Splits { /** * Ciphertext containing the full bank account number, which must be decrypted using a key provided by - * Gusto. Only visible with the `employee_payment_methods:read:account_number` scope. + * Gusto. Only visible with the `contractor_payment_methods:read:account_number` scope. */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("encrypted_account_number") private JsonNullable encryptedAccountNumber; - /** - * The routing number of the bank account. - */ + @JsonInclude(Include.NON_ABSENT) @JsonProperty("routing_number") private Optional routingNumber; - /** - * The bank account type (e.g., "Checking" or "Savings"). - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("account_type") - private Optional accountType; - /** * The order of priority for each payment split, with priority 1 being the first bank account paid. * Priority must be unique and sequential. @@ -78,6 +65,11 @@ public class Splits { @JsonProperty("split_amount") private JsonNullable splitAmount; + + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("account_type") + private Optional accountType; + @JsonCreator public Splits( @JsonProperty("bank_account_uuid") Optional bankAccountUuid, @@ -85,44 +77,38 @@ public Splits( @JsonProperty("hidden_account_number") Optional hiddenAccountNumber, @JsonProperty("encrypted_account_number") JsonNullable encryptedAccountNumber, @JsonProperty("routing_number") Optional routingNumber, - @JsonProperty("account_type") Optional accountType, @JsonProperty("priority") Optional priority, - @JsonProperty("split_amount") JsonNullable splitAmount) { + @JsonProperty("split_amount") JsonNullable splitAmount, + @JsonProperty("account_type") Optional accountType) { Utils.checkNotNull(bankAccountUuid, "bankAccountUuid"); Utils.checkNotNull(name, "name"); Utils.checkNotNull(hiddenAccountNumber, "hiddenAccountNumber"); Utils.checkNotNull(encryptedAccountNumber, "encryptedAccountNumber"); Utils.checkNotNull(routingNumber, "routingNumber"); - Utils.checkNotNull(accountType, "accountType"); Utils.checkNotNull(priority, "priority"); Utils.checkNotNull(splitAmount, "splitAmount"); + Utils.checkNotNull(accountType, "accountType"); this.bankAccountUuid = bankAccountUuid; this.name = name; this.hiddenAccountNumber = hiddenAccountNumber; this.encryptedAccountNumber = encryptedAccountNumber; this.routingNumber = routingNumber; - this.accountType = accountType; this.priority = priority; this.splitAmount = splitAmount; + this.accountType = accountType; } public Splits() { this(Optional.empty(), Optional.empty(), Optional.empty(), JsonNullable.undefined(), Optional.empty(), Optional.empty(), - Optional.empty(), JsonNullable.undefined()); + JsonNullable.undefined(), Optional.empty()); } - /** - * The UUID of the bank account. - */ @JsonIgnore public Optional bankAccountUuid() { return bankAccountUuid; } - /** - * The name of the bank account. - */ @JsonIgnore public Optional name() { return name; @@ -138,29 +124,18 @@ public Optional hiddenAccountNumber() { /** * Ciphertext containing the full bank account number, which must be decrypted using a key provided by - * Gusto. Only visible with the `employee_payment_methods:read:account_number` scope. + * Gusto. Only visible with the `contractor_payment_methods:read:account_number` scope. */ @JsonIgnore public JsonNullable encryptedAccountNumber() { return encryptedAccountNumber; } - /** - * The routing number of the bank account. - */ @JsonIgnore public Optional routingNumber() { return routingNumber; } - /** - * The bank account type (e.g., "Checking" or "Savings"). - */ - @JsonIgnore - public Optional accountType() { - return accountType; - } - /** * The order of priority for each payment split, with priority 1 being the first bank account paid. * Priority must be unique and sequential. @@ -180,14 +155,16 @@ public JsonNullable splitAmount() { return splitAmount; } + @JsonIgnore + public Optional accountType() { + return accountType; + } + public static Builder builder() { return new Builder(); } - /** - * The UUID of the bank account. - */ public Splits withBankAccountUuid(String bankAccountUuid) { Utils.checkNotNull(bankAccountUuid, "bankAccountUuid"); this.bankAccountUuid = Optional.ofNullable(bankAccountUuid); @@ -195,18 +172,12 @@ public Splits withBankAccountUuid(String bankAccountUuid) { } - /** - * The UUID of the bank account. - */ public Splits withBankAccountUuid(Optional bankAccountUuid) { Utils.checkNotNull(bankAccountUuid, "bankAccountUuid"); this.bankAccountUuid = bankAccountUuid; return this; } - /** - * The name of the bank account. - */ public Splits withName(String name) { Utils.checkNotNull(name, "name"); this.name = Optional.ofNullable(name); @@ -214,9 +185,6 @@ public Splits withName(String name) { } - /** - * The name of the bank account. - */ public Splits withName(Optional name) { Utils.checkNotNull(name, "name"); this.name = name; @@ -244,7 +212,7 @@ public Splits withHiddenAccountNumber(Optional hiddenAccountNumber) { /** * Ciphertext containing the full bank account number, which must be decrypted using a key provided by - * Gusto. Only visible with the `employee_payment_methods:read:account_number` scope. + * Gusto. Only visible with the `contractor_payment_methods:read:account_number` scope. */ public Splits withEncryptedAccountNumber(String encryptedAccountNumber) { Utils.checkNotNull(encryptedAccountNumber, "encryptedAccountNumber"); @@ -254,7 +222,7 @@ public Splits withEncryptedAccountNumber(String encryptedAccountNumber) { /** * Ciphertext containing the full bank account number, which must be decrypted using a key provided by - * Gusto. Only visible with the `employee_payment_methods:read:account_number` scope. + * Gusto. Only visible with the `contractor_payment_methods:read:account_number` scope. */ public Splits withEncryptedAccountNumber(JsonNullable encryptedAccountNumber) { Utils.checkNotNull(encryptedAccountNumber, "encryptedAccountNumber"); @@ -262,9 +230,6 @@ public Splits withEncryptedAccountNumber(JsonNullable encryptedAccountNu return this; } - /** - * The routing number of the bank account. - */ public Splits withRoutingNumber(String routingNumber) { Utils.checkNotNull(routingNumber, "routingNumber"); this.routingNumber = Optional.ofNullable(routingNumber); @@ -272,34 +237,12 @@ public Splits withRoutingNumber(String routingNumber) { } - /** - * The routing number of the bank account. - */ public Splits withRoutingNumber(Optional routingNumber) { Utils.checkNotNull(routingNumber, "routingNumber"); this.routingNumber = routingNumber; return this; } - /** - * The bank account type (e.g., "Checking" or "Savings"). - */ - public Splits withAccountType(String accountType) { - Utils.checkNotNull(accountType, "accountType"); - this.accountType = Optional.ofNullable(accountType); - return this; - } - - - /** - * The bank account type (e.g., "Checking" or "Savings"). - */ - public Splits withAccountType(Optional accountType) { - Utils.checkNotNull(accountType, "accountType"); - this.accountType = accountType; - return this; - } - /** * The order of priority for each payment split, with priority 1 being the first bank account paid. * Priority must be unique and sequential. @@ -343,6 +286,19 @@ public Splits withSplitAmount(JsonNullable splitAmount) { return this; } + public Splits withAccountType(String accountType) { + Utils.checkNotNull(accountType, "accountType"); + this.accountType = Optional.ofNullable(accountType); + return this; + } + + + public Splits withAccountType(Optional accountType) { + Utils.checkNotNull(accountType, "accountType"); + this.accountType = accountType; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -358,17 +314,17 @@ public boolean equals(java.lang.Object o) { Utils.enhancedDeepEquals(this.hiddenAccountNumber, other.hiddenAccountNumber) && Utils.enhancedDeepEquals(this.encryptedAccountNumber, other.encryptedAccountNumber) && Utils.enhancedDeepEquals(this.routingNumber, other.routingNumber) && - Utils.enhancedDeepEquals(this.accountType, other.accountType) && Utils.enhancedDeepEquals(this.priority, other.priority) && - Utils.enhancedDeepEquals(this.splitAmount, other.splitAmount); + Utils.enhancedDeepEquals(this.splitAmount, other.splitAmount) && + Utils.enhancedDeepEquals(this.accountType, other.accountType); } @Override public int hashCode() { return Utils.enhancedHash( bankAccountUuid, name, hiddenAccountNumber, - encryptedAccountNumber, routingNumber, accountType, - priority, splitAmount); + encryptedAccountNumber, routingNumber, priority, + splitAmount, accountType); } @Override @@ -379,9 +335,9 @@ public String toString() { "hiddenAccountNumber", hiddenAccountNumber, "encryptedAccountNumber", encryptedAccountNumber, "routingNumber", routingNumber, - "accountType", accountType, "priority", priority, - "splitAmount", splitAmount); + "splitAmount", splitAmount, + "accountType", accountType); } @SuppressWarnings("UnusedReturnValue") @@ -397,29 +353,23 @@ public final static class Builder { private Optional routingNumber = Optional.empty(); - private Optional accountType = Optional.empty(); - private Optional priority = Optional.empty(); private JsonNullable splitAmount = JsonNullable.undefined(); + private Optional accountType = Optional.empty(); + private Builder() { // force use of static builder() method } - /** - * The UUID of the bank account. - */ public Builder bankAccountUuid(String bankAccountUuid) { Utils.checkNotNull(bankAccountUuid, "bankAccountUuid"); this.bankAccountUuid = Optional.ofNullable(bankAccountUuid); return this; } - /** - * The UUID of the bank account. - */ public Builder bankAccountUuid(Optional bankAccountUuid) { Utils.checkNotNull(bankAccountUuid, "bankAccountUuid"); this.bankAccountUuid = bankAccountUuid; @@ -427,18 +377,12 @@ public Builder bankAccountUuid(Optional bankAccountUuid) { } - /** - * The name of the bank account. - */ public Builder name(String name) { Utils.checkNotNull(name, "name"); this.name = Optional.ofNullable(name); return this; } - /** - * The name of the bank account. - */ public Builder name(Optional name) { Utils.checkNotNull(name, "name"); this.name = name; @@ -467,7 +411,7 @@ public Builder hiddenAccountNumber(Optional hiddenAccountNumber) { /** * Ciphertext containing the full bank account number, which must be decrypted using a key provided by - * Gusto. Only visible with the `employee_payment_methods:read:account_number` scope. + * Gusto. Only visible with the `contractor_payment_methods:read:account_number` scope. */ public Builder encryptedAccountNumber(String encryptedAccountNumber) { Utils.checkNotNull(encryptedAccountNumber, "encryptedAccountNumber"); @@ -477,7 +421,7 @@ public Builder encryptedAccountNumber(String encryptedAccountNumber) { /** * Ciphertext containing the full bank account number, which must be decrypted using a key provided by - * Gusto. Only visible with the `employee_payment_methods:read:account_number` scope. + * Gusto. Only visible with the `contractor_payment_methods:read:account_number` scope. */ public Builder encryptedAccountNumber(JsonNullable encryptedAccountNumber) { Utils.checkNotNull(encryptedAccountNumber, "encryptedAccountNumber"); @@ -486,18 +430,12 @@ public Builder encryptedAccountNumber(JsonNullable encryptedAccountNumbe } - /** - * The routing number of the bank account. - */ public Builder routingNumber(String routingNumber) { Utils.checkNotNull(routingNumber, "routingNumber"); this.routingNumber = Optional.ofNullable(routingNumber); return this; } - /** - * The routing number of the bank account. - */ public Builder routingNumber(Optional routingNumber) { Utils.checkNotNull(routingNumber, "routingNumber"); this.routingNumber = routingNumber; @@ -505,25 +443,6 @@ public Builder routingNumber(Optional routingNumber) { } - /** - * The bank account type (e.g., "Checking" or "Savings"). - */ - public Builder accountType(String accountType) { - Utils.checkNotNull(accountType, "accountType"); - this.accountType = Optional.ofNullable(accountType); - return this; - } - - /** - * The bank account type (e.g., "Checking" or "Savings"). - */ - public Builder accountType(Optional accountType) { - Utils.checkNotNull(accountType, "accountType"); - this.accountType = accountType; - return this; - } - - /** * The order of priority for each payment split, with priority 1 being the first bank account paid. * Priority must be unique and sequential. @@ -567,12 +486,25 @@ public Builder splitAmount(JsonNullable splitAmount) { return this; } + + public Builder accountType(String accountType) { + Utils.checkNotNull(accountType, "accountType"); + this.accountType = Optional.ofNullable(accountType); + return this; + } + + public Builder accountType(Optional accountType) { + Utils.checkNotNull(accountType, "accountType"); + this.accountType = accountType; + return this; + } + public Splits build() { return new Splits( bankAccountUuid, name, hiddenAccountNumber, - encryptedAccountNumber, routingNumber, accountType, - priority, splitAmount); + encryptedAccountNumber, routingNumber, priority, + splitAmount, accountType); } } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/State.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/State.java new file mode 100644 index 000000000..ccf9f8dd4 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/State.java @@ -0,0 +1,314 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class State { + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("employee_state_field_uuid") + private Optional employeeStateFieldUuid; + + /** + * Override mode. Only `one_time` is currently exposed. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("override_type") + private Optional overrideType; + + /** + * The amount that was withheld for this payroll. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("amount") + private Optional amount; + + /** + * How to interpret the amount. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("amount_type") + private Optional amountType; + + @JsonCreator + public State( + @JsonProperty("employee_state_field_uuid") Optional employeeStateFieldUuid, + @JsonProperty("override_type") Optional overrideType, + @JsonProperty("amount") Optional amount, + @JsonProperty("amount_type") Optional amountType) { + Utils.checkNotNull(employeeStateFieldUuid, "employeeStateFieldUuid"); + Utils.checkNotNull(overrideType, "overrideType"); + Utils.checkNotNull(amount, "amount"); + Utils.checkNotNull(amountType, "amountType"); + this.employeeStateFieldUuid = employeeStateFieldUuid; + this.overrideType = overrideType; + this.amount = amount; + this.amountType = amountType; + } + + public State() { + this(Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty()); + } + + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + @JsonIgnore + public Optional employeeStateFieldUuid() { + return employeeStateFieldUuid; + } + + /** + * Override mode. Only `one_time` is currently exposed. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional overrideType() { + return (Optional) overrideType; + } + + /** + * The amount that was withheld for this payroll. + */ + @JsonIgnore + public Optional amount() { + return amount; + } + + /** + * How to interpret the amount. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional amountType() { + return (Optional) amountType; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + public State withEmployeeStateFieldUuid(String employeeStateFieldUuid) { + Utils.checkNotNull(employeeStateFieldUuid, "employeeStateFieldUuid"); + this.employeeStateFieldUuid = Optional.ofNullable(employeeStateFieldUuid); + return this; + } + + + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + public State withEmployeeStateFieldUuid(Optional employeeStateFieldUuid) { + Utils.checkNotNull(employeeStateFieldUuid, "employeeStateFieldUuid"); + this.employeeStateFieldUuid = employeeStateFieldUuid; + return this; + } + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public State withOverrideType(PayrollEmployeeCompensationsTypeOverrideType overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = Optional.ofNullable(overrideType); + return this; + } + + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public State withOverrideType(Optional overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = overrideType; + return this; + } + + /** + * The amount that was withheld for this payroll. + */ + public State withAmount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = Optional.ofNullable(amount); + return this; + } + + + /** + * The amount that was withheld for this payroll. + */ + public State withAmount(Optional amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + /** + * How to interpret the amount. + */ + public State withAmountType(PayrollEmployeeCompensationsTypeCustomWithholdingsAmountType amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = Optional.ofNullable(amountType); + return this; + } + + + /** + * How to interpret the amount. + */ + public State withAmountType(Optional amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = amountType; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + State other = (State) o; + return + Utils.enhancedDeepEquals(this.employeeStateFieldUuid, other.employeeStateFieldUuid) && + Utils.enhancedDeepEquals(this.overrideType, other.overrideType) && + Utils.enhancedDeepEquals(this.amount, other.amount) && + Utils.enhancedDeepEquals(this.amountType, other.amountType); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + employeeStateFieldUuid, overrideType, amount, + amountType); + } + + @Override + public String toString() { + return Utils.toString(State.class, + "employeeStateFieldUuid", employeeStateFieldUuid, + "overrideType", overrideType, + "amount", amount, + "amountType", amountType); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional employeeStateFieldUuid = Optional.empty(); + + private Optional overrideType = Optional.empty(); + + private Optional amount = Optional.empty(); + + private Optional amountType = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + public Builder employeeStateFieldUuid(String employeeStateFieldUuid) { + Utils.checkNotNull(employeeStateFieldUuid, "employeeStateFieldUuid"); + this.employeeStateFieldUuid = Optional.ofNullable(employeeStateFieldUuid); + return this; + } + + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + public Builder employeeStateFieldUuid(Optional employeeStateFieldUuid) { + Utils.checkNotNull(employeeStateFieldUuid, "employeeStateFieldUuid"); + this.employeeStateFieldUuid = employeeStateFieldUuid; + return this; + } + + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public Builder overrideType(PayrollEmployeeCompensationsTypeOverrideType overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = Optional.ofNullable(overrideType); + return this; + } + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public Builder overrideType(Optional overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = overrideType; + return this; + } + + + /** + * The amount that was withheld for this payroll. + */ + public Builder amount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = Optional.ofNullable(amount); + return this; + } + + /** + * The amount that was withheld for this payroll. + */ + public Builder amount(Optional amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + + /** + * How to interpret the amount. + */ + public Builder amountType(PayrollEmployeeCompensationsTypeCustomWithholdingsAmountType amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = Optional.ofNullable(amountType); + return this; + } + + /** + * How to interpret the amount. + */ + public Builder amountType(Optional amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = amountType; + return this; + } + + public State build() { + + return new State( + employeeStateFieldUuid, overrideType, amount, + amountType); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Status.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Status.java index ae33fc092..34d1f9d2f 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Status.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Status.java @@ -11,13 +11,17 @@ /** * Status * - *

    The status of the external payroll. The status will be `unprocessed` when the external payroll is - * created and transition to `processed` once tax liabilities are entered and finalized. Once in the - * `processed` status all actions that can edit an external payroll will be disabled. + *

    The batch's processing state. + * - `pending`: accepted, not yet started + * - `processing`: reports are being generated + * - `completed`: all reports finished + * - `failed`: the batch failed before completing */ public enum Status { - UNPROCESSED("unprocessed"), - PROCESSED("processed"); + PENDING("pending"), + PROCESSING("processing"), + COMPLETED("completed"), + FAILED("failed"); @JsonValue private final String value; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/SubscriptionTypes.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/SubscriptionTypes.java index d960670fc..0219f4a0b 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/SubscriptionTypes.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/SubscriptionTypes.java @@ -24,7 +24,8 @@ public enum SubscriptionTypes { PAYROLL("Payroll"), PAYROLL_SYNC("PayrollSync"), PAY_SCHEDULE("PaySchedule"), - SIGNATORY("Signatory"); + SIGNATORY("Signatory"), + TIME_OFF_REQUEST("TimeOffRequest"); @JsonValue private final String value; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/TaxPayment.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/TaxPayment.java new file mode 100644 index 000000000..2586ed40d --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/TaxPayment.java @@ -0,0 +1,608 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.time.LocalDate; +import java.util.List; +import java.util.Optional; +import org.openapitools.jackson.nullable.JsonNullable; + +/** + * TaxPayment + * + *

    Representation of a tax payment made by Gusto to a tax agency on behalf of a company + */ +public class TaxPayment { + /** + * Unique identifier of the tax payment + */ + @JsonProperty("uuid") + private String uuid; + + /** + * Unique identifier of the company to which the tax payment belongs + */ + @JsonProperty("company_uuid") + private String companyUuid; + + /** + * The name of the tax agency this payment is submitted to + */ + @JsonProperty("agency_name") + private String agencyName; + + /** + * The tax jurisdiction this payment is for. A two-letter state code, or US for federal. + */ + @JsonProperty("jurisdiction") + private String jurisdiction; + + /** + * The start date of the period this payment covers + */ + @JsonProperty("period_start") + private LocalDate periodStart; + + /** + * The end date of the period this payment covers + */ + @JsonProperty("period_end") + private LocalDate periodEnd; + + /** + * The date this payment is due + */ + @JsonProperty("due_date") + private LocalDate dueDate; + + /** + * The date Gusto submitted this payment to the tax agency. It is null until submitted, and also if the + * payment is returned or cancelled after being sent. It is not guaranteed to stay set once populated. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("payment_sent_on") + private JsonNullable paymentSentOn; + + /** + * Total amount owed for this tax payment. Can be negative for corrections, refunds, or credits. + */ + @JsonProperty("amount") + private String amount; + + /** + * Amount paid toward this tax payment so far, sourced from the payment's running balance. "0.00" until + * paid; equal to `amount` once fully paid. + */ + @JsonProperty("amount_paid") + private String amountPaid; + + /** + * The payroll tax liabilities that make up this payment. Empty array when the payment has no + * associated payroll taxes. Only included in the response of GET + * /v1/companies/{company_uuid}/tax_payments/{uuid}. + * + *

    It is omitted from the list endpoint response. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("line_items") + private Optional> lineItems; + + @JsonCreator + public TaxPayment( + @JsonProperty("uuid") String uuid, + @JsonProperty("company_uuid") String companyUuid, + @JsonProperty("agency_name") String agencyName, + @JsonProperty("jurisdiction") String jurisdiction, + @JsonProperty("period_start") LocalDate periodStart, + @JsonProperty("period_end") LocalDate periodEnd, + @JsonProperty("due_date") LocalDate dueDate, + @JsonProperty("payment_sent_on") JsonNullable paymentSentOn, + @JsonProperty("amount") String amount, + @JsonProperty("amount_paid") String amountPaid, + @JsonProperty("line_items") Optional> lineItems) { + Utils.checkNotNull(uuid, "uuid"); + Utils.checkNotNull(companyUuid, "companyUuid"); + Utils.checkNotNull(agencyName, "agencyName"); + Utils.checkNotNull(jurisdiction, "jurisdiction"); + Utils.checkNotNull(periodStart, "periodStart"); + Utils.checkNotNull(periodEnd, "periodEnd"); + Utils.checkNotNull(dueDate, "dueDate"); + Utils.checkNotNull(paymentSentOn, "paymentSentOn"); + Utils.checkNotNull(amount, "amount"); + Utils.checkNotNull(amountPaid, "amountPaid"); + Utils.checkNotNull(lineItems, "lineItems"); + this.uuid = uuid; + this.companyUuid = companyUuid; + this.agencyName = agencyName; + this.jurisdiction = jurisdiction; + this.periodStart = periodStart; + this.periodEnd = periodEnd; + this.dueDate = dueDate; + this.paymentSentOn = paymentSentOn; + this.amount = amount; + this.amountPaid = amountPaid; + this.lineItems = lineItems; + } + + public TaxPayment( + String uuid, + String companyUuid, + String agencyName, + String jurisdiction, + LocalDate periodStart, + LocalDate periodEnd, + LocalDate dueDate, + String amount, + String amountPaid) { + this(uuid, companyUuid, agencyName, + jurisdiction, periodStart, periodEnd, + dueDate, JsonNullable.undefined(), amount, + amountPaid, Optional.empty()); + } + + /** + * Unique identifier of the tax payment + */ + @JsonIgnore + public String uuid() { + return uuid; + } + + /** + * Unique identifier of the company to which the tax payment belongs + */ + @JsonIgnore + public String companyUuid() { + return companyUuid; + } + + /** + * The name of the tax agency this payment is submitted to + */ + @JsonIgnore + public String agencyName() { + return agencyName; + } + + /** + * The tax jurisdiction this payment is for. A two-letter state code, or US for federal. + */ + @JsonIgnore + public String jurisdiction() { + return jurisdiction; + } + + /** + * The start date of the period this payment covers + */ + @JsonIgnore + public LocalDate periodStart() { + return periodStart; + } + + /** + * The end date of the period this payment covers + */ + @JsonIgnore + public LocalDate periodEnd() { + return periodEnd; + } + + /** + * The date this payment is due + */ + @JsonIgnore + public LocalDate dueDate() { + return dueDate; + } + + /** + * The date Gusto submitted this payment to the tax agency. It is null until submitted, and also if the + * payment is returned or cancelled after being sent. It is not guaranteed to stay set once populated. + */ + @JsonIgnore + public JsonNullable paymentSentOn() { + return paymentSentOn; + } + + /** + * Total amount owed for this tax payment. Can be negative for corrections, refunds, or credits. + */ + @JsonIgnore + public String amount() { + return amount; + } + + /** + * Amount paid toward this tax payment so far, sourced from the payment's running balance. "0.00" until + * paid; equal to `amount` once fully paid. + */ + @JsonIgnore + public String amountPaid() { + return amountPaid; + } + + /** + * The payroll tax liabilities that make up this payment. Empty array when the payment has no + * associated payroll taxes. Only included in the response of GET + * /v1/companies/{company_uuid}/tax_payments/{uuid}. + * + *

    It is omitted from the list endpoint response. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> lineItems() { + return (Optional>) lineItems; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Unique identifier of the tax payment + */ + public TaxPayment withUuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + /** + * Unique identifier of the company to which the tax payment belongs + */ + public TaxPayment withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + /** + * The name of the tax agency this payment is submitted to + */ + public TaxPayment withAgencyName(String agencyName) { + Utils.checkNotNull(agencyName, "agencyName"); + this.agencyName = agencyName; + return this; + } + + /** + * The tax jurisdiction this payment is for. A two-letter state code, or US for federal. + */ + public TaxPayment withJurisdiction(String jurisdiction) { + Utils.checkNotNull(jurisdiction, "jurisdiction"); + this.jurisdiction = jurisdiction; + return this; + } + + /** + * The start date of the period this payment covers + */ + public TaxPayment withPeriodStart(LocalDate periodStart) { + Utils.checkNotNull(periodStart, "periodStart"); + this.periodStart = periodStart; + return this; + } + + /** + * The end date of the period this payment covers + */ + public TaxPayment withPeriodEnd(LocalDate periodEnd) { + Utils.checkNotNull(periodEnd, "periodEnd"); + this.periodEnd = periodEnd; + return this; + } + + /** + * The date this payment is due + */ + public TaxPayment withDueDate(LocalDate dueDate) { + Utils.checkNotNull(dueDate, "dueDate"); + this.dueDate = dueDate; + return this; + } + + /** + * The date Gusto submitted this payment to the tax agency. It is null until submitted, and also if the + * payment is returned or cancelled after being sent. It is not guaranteed to stay set once populated. + */ + public TaxPayment withPaymentSentOn(LocalDate paymentSentOn) { + Utils.checkNotNull(paymentSentOn, "paymentSentOn"); + this.paymentSentOn = JsonNullable.of(paymentSentOn); + return this; + } + + /** + * The date Gusto submitted this payment to the tax agency. It is null until submitted, and also if the + * payment is returned or cancelled after being sent. It is not guaranteed to stay set once populated. + */ + public TaxPayment withPaymentSentOn(JsonNullable paymentSentOn) { + Utils.checkNotNull(paymentSentOn, "paymentSentOn"); + this.paymentSentOn = paymentSentOn; + return this; + } + + /** + * Total amount owed for this tax payment. Can be negative for corrections, refunds, or credits. + */ + public TaxPayment withAmount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + /** + * Amount paid toward this tax payment so far, sourced from the payment's running balance. "0.00" until + * paid; equal to `amount` once fully paid. + */ + public TaxPayment withAmountPaid(String amountPaid) { + Utils.checkNotNull(amountPaid, "amountPaid"); + this.amountPaid = amountPaid; + return this; + } + + /** + * The payroll tax liabilities that make up this payment. Empty array when the payment has no + * associated payroll taxes. Only included in the response of GET + * /v1/companies/{company_uuid}/tax_payments/{uuid}. + * + *

    It is omitted from the list endpoint response. + */ + public TaxPayment withLineItems(List lineItems) { + Utils.checkNotNull(lineItems, "lineItems"); + this.lineItems = Optional.ofNullable(lineItems); + return this; + } + + + /** + * The payroll tax liabilities that make up this payment. Empty array when the payment has no + * associated payroll taxes. Only included in the response of GET + * /v1/companies/{company_uuid}/tax_payments/{uuid}. + * + *

    It is omitted from the list endpoint response. + */ + public TaxPayment withLineItems(Optional> lineItems) { + Utils.checkNotNull(lineItems, "lineItems"); + this.lineItems = lineItems; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + TaxPayment other = (TaxPayment) o; + return + Utils.enhancedDeepEquals(this.uuid, other.uuid) && + Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && + Utils.enhancedDeepEquals(this.agencyName, other.agencyName) && + Utils.enhancedDeepEquals(this.jurisdiction, other.jurisdiction) && + Utils.enhancedDeepEquals(this.periodStart, other.periodStart) && + Utils.enhancedDeepEquals(this.periodEnd, other.periodEnd) && + Utils.enhancedDeepEquals(this.dueDate, other.dueDate) && + Utils.enhancedDeepEquals(this.paymentSentOn, other.paymentSentOn) && + Utils.enhancedDeepEquals(this.amount, other.amount) && + Utils.enhancedDeepEquals(this.amountPaid, other.amountPaid) && + Utils.enhancedDeepEquals(this.lineItems, other.lineItems); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + uuid, companyUuid, agencyName, + jurisdiction, periodStart, periodEnd, + dueDate, paymentSentOn, amount, + amountPaid, lineItems); + } + + @Override + public String toString() { + return Utils.toString(TaxPayment.class, + "uuid", uuid, + "companyUuid", companyUuid, + "agencyName", agencyName, + "jurisdiction", jurisdiction, + "periodStart", periodStart, + "periodEnd", periodEnd, + "dueDate", dueDate, + "paymentSentOn", paymentSentOn, + "amount", amount, + "amountPaid", amountPaid, + "lineItems", lineItems); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String uuid; + + private String companyUuid; + + private String agencyName; + + private String jurisdiction; + + private LocalDate periodStart; + + private LocalDate periodEnd; + + private LocalDate dueDate; + + private JsonNullable paymentSentOn = JsonNullable.undefined(); + + private String amount; + + private String amountPaid; + + private Optional> lineItems = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * Unique identifier of the tax payment + */ + public Builder uuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + + /** + * Unique identifier of the company to which the tax payment belongs + */ + public Builder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + + /** + * The name of the tax agency this payment is submitted to + */ + public Builder agencyName(String agencyName) { + Utils.checkNotNull(agencyName, "agencyName"); + this.agencyName = agencyName; + return this; + } + + + /** + * The tax jurisdiction this payment is for. A two-letter state code, or US for federal. + */ + public Builder jurisdiction(String jurisdiction) { + Utils.checkNotNull(jurisdiction, "jurisdiction"); + this.jurisdiction = jurisdiction; + return this; + } + + + /** + * The start date of the period this payment covers + */ + public Builder periodStart(LocalDate periodStart) { + Utils.checkNotNull(periodStart, "periodStart"); + this.periodStart = periodStart; + return this; + } + + + /** + * The end date of the period this payment covers + */ + public Builder periodEnd(LocalDate periodEnd) { + Utils.checkNotNull(periodEnd, "periodEnd"); + this.periodEnd = periodEnd; + return this; + } + + + /** + * The date this payment is due + */ + public Builder dueDate(LocalDate dueDate) { + Utils.checkNotNull(dueDate, "dueDate"); + this.dueDate = dueDate; + return this; + } + + + /** + * The date Gusto submitted this payment to the tax agency. It is null until submitted, and also if the + * payment is returned or cancelled after being sent. It is not guaranteed to stay set once populated. + */ + public Builder paymentSentOn(LocalDate paymentSentOn) { + Utils.checkNotNull(paymentSentOn, "paymentSentOn"); + this.paymentSentOn = JsonNullable.of(paymentSentOn); + return this; + } + + /** + * The date Gusto submitted this payment to the tax agency. It is null until submitted, and also if the + * payment is returned or cancelled after being sent. It is not guaranteed to stay set once populated. + */ + public Builder paymentSentOn(JsonNullable paymentSentOn) { + Utils.checkNotNull(paymentSentOn, "paymentSentOn"); + this.paymentSentOn = paymentSentOn; + return this; + } + + + /** + * Total amount owed for this tax payment. Can be negative for corrections, refunds, or credits. + */ + public Builder amount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + + /** + * Amount paid toward this tax payment so far, sourced from the payment's running balance. "0.00" until + * paid; equal to `amount` once fully paid. + */ + public Builder amountPaid(String amountPaid) { + Utils.checkNotNull(amountPaid, "amountPaid"); + this.amountPaid = amountPaid; + return this; + } + + + /** + * The payroll tax liabilities that make up this payment. Empty array when the payment has no + * associated payroll taxes. Only included in the response of GET + * /v1/companies/{company_uuid}/tax_payments/{uuid}. + * + *

    It is omitted from the list endpoint response. + */ + public Builder lineItems(List lineItems) { + Utils.checkNotNull(lineItems, "lineItems"); + this.lineItems = Optional.ofNullable(lineItems); + return this; + } + + /** + * The payroll tax liabilities that make up this payment. Empty array when the payment has no + * associated payroll taxes. Only included in the response of GET + * /v1/companies/{company_uuid}/tax_payments/{uuid}. + * + *

    It is omitted from the list endpoint response. + */ + public Builder lineItems(Optional> lineItems) { + Utils.checkNotNull(lineItems, "lineItems"); + this.lineItems = lineItems; + return this; + } + + public TaxPayment build() { + + return new TaxPayment( + uuid, companyUuid, agencyName, + jurisdiction, periodStart, periodEnd, + dueDate, paymentSentOn, amount, + amountPaid, lineItems); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/TaxPaymentLineItem.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/TaxPaymentLineItem.java new file mode 100644 index 000000000..62ec254d6 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/TaxPaymentLineItem.java @@ -0,0 +1,185 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Override; +import java.lang.String; + +/** + * TaxPaymentLineItem + * + *

    A single payroll tax liability rolled up into a tax payment + */ +public class TaxPaymentLineItem { + /** + * Unique identifier of the payroll this liability came from + */ + @JsonProperty("payroll_uuid") + private String payrollUuid; + + /** + * Unique identifier of the tax type this liability is for + */ + @JsonProperty("unique_tax_id") + private String uniqueTaxId; + + /** + * The amount of this liability included in the tax payment + */ + @JsonProperty("amount") + private String amount; + + @JsonCreator + public TaxPaymentLineItem( + @JsonProperty("payroll_uuid") String payrollUuid, + @JsonProperty("unique_tax_id") String uniqueTaxId, + @JsonProperty("amount") String amount) { + Utils.checkNotNull(payrollUuid, "payrollUuid"); + Utils.checkNotNull(uniqueTaxId, "uniqueTaxId"); + Utils.checkNotNull(amount, "amount"); + this.payrollUuid = payrollUuid; + this.uniqueTaxId = uniqueTaxId; + this.amount = amount; + } + + /** + * Unique identifier of the payroll this liability came from + */ + @JsonIgnore + public String payrollUuid() { + return payrollUuid; + } + + /** + * Unique identifier of the tax type this liability is for + */ + @JsonIgnore + public String uniqueTaxId() { + return uniqueTaxId; + } + + /** + * The amount of this liability included in the tax payment + */ + @JsonIgnore + public String amount() { + return amount; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Unique identifier of the payroll this liability came from + */ + public TaxPaymentLineItem withPayrollUuid(String payrollUuid) { + Utils.checkNotNull(payrollUuid, "payrollUuid"); + this.payrollUuid = payrollUuid; + return this; + } + + /** + * Unique identifier of the tax type this liability is for + */ + public TaxPaymentLineItem withUniqueTaxId(String uniqueTaxId) { + Utils.checkNotNull(uniqueTaxId, "uniqueTaxId"); + this.uniqueTaxId = uniqueTaxId; + return this; + } + + /** + * The amount of this liability included in the tax payment + */ + public TaxPaymentLineItem withAmount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + TaxPaymentLineItem other = (TaxPaymentLineItem) o; + return + Utils.enhancedDeepEquals(this.payrollUuid, other.payrollUuid) && + Utils.enhancedDeepEquals(this.uniqueTaxId, other.uniqueTaxId) && + Utils.enhancedDeepEquals(this.amount, other.amount); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + payrollUuid, uniqueTaxId, amount); + } + + @Override + public String toString() { + return Utils.toString(TaxPaymentLineItem.class, + "payrollUuid", payrollUuid, + "uniqueTaxId", uniqueTaxId, + "amount", amount); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String payrollUuid; + + private String uniqueTaxId; + + private String amount; + + private Builder() { + // force use of static builder() method + } + + + /** + * Unique identifier of the payroll this liability came from + */ + public Builder payrollUuid(String payrollUuid) { + Utils.checkNotNull(payrollUuid, "payrollUuid"); + this.payrollUuid = payrollUuid; + return this; + } + + + /** + * Unique identifier of the tax type this liability is for + */ + public Builder uniqueTaxId(String uniqueTaxId) { + Utils.checkNotNull(uniqueTaxId, "uniqueTaxId"); + this.uniqueTaxId = uniqueTaxId; + return this; + } + + + /** + * The amount of this liability included in the tax payment + */ + public Builder amount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + public TaxPaymentLineItem build() { + + return new TaxPaymentLineItem( + payrollUuid, uniqueTaxId, amount); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/TaxRequirement.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/TaxRequirement.java index 265b22658..f35928272 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/TaxRequirement.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/TaxRequirement.java @@ -74,6 +74,22 @@ public class TaxRequirement { @JsonProperty("editable") private Optional editable; + /** + * Whether this requirement, when blank, would block payroll processing for the company in this state. + * Stable across changes to the field's value: a `payroll_blocking: true` field reports `true` whether + * currently empty or populated. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("payroll_blocking") + private Optional payrollBlocking; + + /** + * Whether the current `value` is a default rather than an explicitly set one. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("default_value_applied") + private Optional defaultValueApplied; + @JsonCreator public TaxRequirement( @JsonProperty("key") Optional key, @@ -82,7 +98,9 @@ public TaxRequirement( @JsonProperty("description") JsonNullable description, @JsonProperty("value") JsonNullable value, @JsonProperty("metadata") Optional metadata, - @JsonProperty("editable") Optional editable) { + @JsonProperty("editable") Optional editable, + @JsonProperty("payroll_blocking") Optional payrollBlocking, + @JsonProperty("default_value_applied") Optional defaultValueApplied) { Utils.checkNotNull(key, "key"); Utils.checkNotNull(applicableIf, "applicableIf"); Utils.checkNotNull(label, "label"); @@ -90,6 +108,8 @@ public TaxRequirement( Utils.checkNotNull(value, "value"); Utils.checkNotNull(metadata, "metadata"); Utils.checkNotNull(editable, "editable"); + Utils.checkNotNull(payrollBlocking, "payrollBlocking"); + Utils.checkNotNull(defaultValueApplied, "defaultValueApplied"); this.key = key; this.applicableIf = applicableIf; this.label = label; @@ -97,12 +117,14 @@ public TaxRequirement( this.value = value; this.metadata = metadata; this.editable = editable; + this.payrollBlocking = payrollBlocking; + this.defaultValueApplied = defaultValueApplied; } public TaxRequirement() { this(Optional.empty(), Optional.empty(), Optional.empty(), JsonNullable.undefined(), JsonNullable.undefined(), Optional.empty(), - Optional.empty()); + Optional.empty(), Optional.empty(), Optional.empty()); } /** @@ -169,6 +191,24 @@ public Optional editable() { return editable; } + /** + * Whether this requirement, when blank, would block payroll processing for the company in this state. + * Stable across changes to the field's value: a `payroll_blocking: true` field reports `true` whether + * currently empty or populated. + */ + @JsonIgnore + public Optional payrollBlocking() { + return payrollBlocking; + } + + /** + * Whether the current `value` is a default rather than an explicitly set one. + */ + @JsonIgnore + public Optional defaultValueApplied() { + return defaultValueApplied; + } + public static Builder builder() { return new Builder(); } @@ -315,6 +355,48 @@ public TaxRequirement withEditable(Optional editable) { return this; } + /** + * Whether this requirement, when blank, would block payroll processing for the company in this state. + * Stable across changes to the field's value: a `payroll_blocking: true` field reports `true` whether + * currently empty or populated. + */ + public TaxRequirement withPayrollBlocking(boolean payrollBlocking) { + Utils.checkNotNull(payrollBlocking, "payrollBlocking"); + this.payrollBlocking = Optional.ofNullable(payrollBlocking); + return this; + } + + + /** + * Whether this requirement, when blank, would block payroll processing for the company in this state. + * Stable across changes to the field's value: a `payroll_blocking: true` field reports `true` whether + * currently empty or populated. + */ + public TaxRequirement withPayrollBlocking(Optional payrollBlocking) { + Utils.checkNotNull(payrollBlocking, "payrollBlocking"); + this.payrollBlocking = payrollBlocking; + return this; + } + + /** + * Whether the current `value` is a default rather than an explicitly set one. + */ + public TaxRequirement withDefaultValueApplied(boolean defaultValueApplied) { + Utils.checkNotNull(defaultValueApplied, "defaultValueApplied"); + this.defaultValueApplied = Optional.ofNullable(defaultValueApplied); + return this; + } + + + /** + * Whether the current `value` is a default rather than an explicitly set one. + */ + public TaxRequirement withDefaultValueApplied(Optional defaultValueApplied) { + Utils.checkNotNull(defaultValueApplied, "defaultValueApplied"); + this.defaultValueApplied = defaultValueApplied; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -331,7 +413,9 @@ public boolean equals(java.lang.Object o) { Utils.enhancedDeepEquals(this.description, other.description) && Utils.enhancedDeepEquals(this.value, other.value) && Utils.enhancedDeepEquals(this.metadata, other.metadata) && - Utils.enhancedDeepEquals(this.editable, other.editable); + Utils.enhancedDeepEquals(this.editable, other.editable) && + Utils.enhancedDeepEquals(this.payrollBlocking, other.payrollBlocking) && + Utils.enhancedDeepEquals(this.defaultValueApplied, other.defaultValueApplied); } @Override @@ -339,7 +423,7 @@ public int hashCode() { return Utils.enhancedHash( key, applicableIf, label, description, value, metadata, - editable); + editable, payrollBlocking, defaultValueApplied); } @Override @@ -351,7 +435,9 @@ public String toString() { "description", description, "value", value, "metadata", metadata, - "editable", editable); + "editable", editable, + "payrollBlocking", payrollBlocking, + "defaultValueApplied", defaultValueApplied); } @SuppressWarnings("UnusedReturnValue") @@ -371,6 +457,10 @@ public final static class Builder { private Optional editable = Optional.empty(); + private Optional payrollBlocking = Optional.empty(); + + private Optional defaultValueApplied = Optional.empty(); + private Builder() { // force use of static builder() method } @@ -518,12 +608,54 @@ public Builder editable(Optional editable) { return this; } + + /** + * Whether this requirement, when blank, would block payroll processing for the company in this state. + * Stable across changes to the field's value: a `payroll_blocking: true` field reports `true` whether + * currently empty or populated. + */ + public Builder payrollBlocking(boolean payrollBlocking) { + Utils.checkNotNull(payrollBlocking, "payrollBlocking"); + this.payrollBlocking = Optional.ofNullable(payrollBlocking); + return this; + } + + /** + * Whether this requirement, when blank, would block payroll processing for the company in this state. + * Stable across changes to the field's value: a `payroll_blocking: true` field reports `true` whether + * currently empty or populated. + */ + public Builder payrollBlocking(Optional payrollBlocking) { + Utils.checkNotNull(payrollBlocking, "payrollBlocking"); + this.payrollBlocking = payrollBlocking; + return this; + } + + + /** + * Whether the current `value` is a default rather than an explicitly set one. + */ + public Builder defaultValueApplied(boolean defaultValueApplied) { + Utils.checkNotNull(defaultValueApplied, "defaultValueApplied"); + this.defaultValueApplied = Optional.ofNullable(defaultValueApplied); + return this; + } + + /** + * Whether the current `value` is a default rather than an explicitly set one. + */ + public Builder defaultValueApplied(Optional defaultValueApplied) { + Utils.checkNotNull(defaultValueApplied, "defaultValueApplied"); + this.defaultValueApplied = defaultValueApplied; + return this; + } + public TaxRequirement build() { return new TaxRequirement( key, applicableIf, label, description, value, metadata, - editable); + editable, payrollBlocking, defaultValueApplied); } } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/TaxRequirementMetadata.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/TaxRequirementMetadata.java index c08f3815c..452cd6017 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/TaxRequirementMetadata.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/TaxRequirementMetadata.java @@ -35,14 +35,14 @@ public class TaxRequirementMetadata { * `risk_class_description`, and `rate_type` */ @JsonProperty("type") - private TaxRequirementMetadataType type; + private Type type; /** * [for `select` or `radio`] An array of objects describing the possible values. */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("options") - private Optional> options; + private Optional> options; /** * [for `workers_compensation_rate`] The industry risk class code for the rate being requested @@ -107,8 +107,8 @@ public class TaxRequirementMetadata { @JsonCreator public TaxRequirementMetadata( - @JsonProperty("type") TaxRequirementMetadataType type, - @JsonProperty("options") Optional> options, + @JsonProperty("type") Type type, + @JsonProperty("options") Optional> options, @JsonProperty("risk_class_code") Optional riskClassCode, @JsonProperty("risk_class_description") Optional riskClassDescription, @JsonProperty("rate_type") Optional rateType, @@ -134,7 +134,7 @@ public TaxRequirementMetadata( } public TaxRequirementMetadata( - TaxRequirementMetadataType type) { + Type type) { this(type, Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), JsonNullable.undefined(), JsonNullable.undefined(), Optional.empty()); @@ -157,7 +157,7 @@ public TaxRequirementMetadata( * `risk_class_description`, and `rate_type` */ @JsonIgnore - public TaxRequirementMetadataType type() { + public Type type() { return type; } @@ -166,8 +166,8 @@ public TaxRequirementMetadataType type() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional> options() { - return (Optional>) options; + public Optional> options() { + return (Optional>) options; } /** @@ -260,7 +260,7 @@ public static Builder builder() { * - `workers_compensation_rate`: A decimal value representing a percentage, see `risk_class_code`, * `risk_class_description`, and `rate_type` */ - public TaxRequirementMetadata withType(TaxRequirementMetadataType type) { + public TaxRequirementMetadata withType(Type type) { Utils.checkNotNull(type, "type"); this.type = type; return this; @@ -269,7 +269,7 @@ public TaxRequirementMetadata withType(TaxRequirementMetadataType type) { /** * [for `select` or `radio`] An array of objects describing the possible values. */ - public TaxRequirementMetadata withOptions(List options) { + public TaxRequirementMetadata withOptions(List options) { Utils.checkNotNull(options, "options"); this.options = Optional.ofNullable(options); return this; @@ -279,7 +279,7 @@ public TaxRequirementMetadata withOptions(List op /** * [for `select` or `radio`] An array of objects describing the possible values. */ - public TaxRequirementMetadata withOptions(Optional> options) { + public TaxRequirementMetadata withOptions(Optional> options) { Utils.checkNotNull(options, "options"); this.options = options; return this; @@ -479,9 +479,9 @@ public String toString() { @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private TaxRequirementMetadataType type; + private Type type; - private Optional> options = Optional.empty(); + private Optional> options = Optional.empty(); private Optional riskClassCode = Optional.empty(); @@ -516,7 +516,7 @@ private Builder() { * - `workers_compensation_rate`: A decimal value representing a percentage, see `risk_class_code`, * `risk_class_description`, and `rate_type` */ - public Builder type(TaxRequirementMetadataType type) { + public Builder type(Type type) { Utils.checkNotNull(type, "type"); this.type = type; return this; @@ -526,7 +526,7 @@ public Builder type(TaxRequirementMetadataType type) { /** * [for `select` or `radio`] An array of objects describing the possible values. */ - public Builder options(List options) { + public Builder options(List options) { Utils.checkNotNull(options, "options"); this.options = Optional.ofNullable(options); return this; @@ -535,7 +535,7 @@ public Builder options(List options) { /** * [for `select` or `radio`] An array of objects describing the possible values. */ - public Builder options(Optional> options) { + public Builder options(Optional> options) { Utils.checkNotNull(options, "options"); this.options = options; return this; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/TaxRequirementMetadataOptions.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/TaxRequirementMetadataOptions.java deleted file mode 100644 index 1eabeda7a..000000000 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/TaxRequirementMetadataOptions.java +++ /dev/null @@ -1,209 +0,0 @@ -/* - * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - */ -package com.gusto.embedded_api_v_2025_11_15.models.components; - -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonIgnore; -import com.fasterxml.jackson.annotation.JsonInclude.Include; -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.gusto.embedded_api_v_2025_11_15.utils.Utils; -import java.lang.Override; -import java.lang.String; -import org.openapitools.jackson.nullable.JsonNullable; - - -public class TaxRequirementMetadataOptions { - /** - * A customer facing label for the answer - */ - @JsonProperty("label") - private String label; - - /** - * The actual value to be submitted - */ - @JsonProperty("value") - private TaxRequirementMetadataValue value; - - /** - * A less verbose label that may sometimes be available - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("short_label") - private JsonNullable shortLabel; - - @JsonCreator - public TaxRequirementMetadataOptions( - @JsonProperty("label") String label, - @JsonProperty("value") TaxRequirementMetadataValue value, - @JsonProperty("short_label") JsonNullable shortLabel) { - Utils.checkNotNull(label, "label"); - Utils.checkNotNull(value, "value"); - Utils.checkNotNull(shortLabel, "shortLabel"); - this.label = label; - this.value = value; - this.shortLabel = shortLabel; - } - - public TaxRequirementMetadataOptions( - String label, - TaxRequirementMetadataValue value) { - this(label, value, JsonNullable.undefined()); - } - - /** - * A customer facing label for the answer - */ - @JsonIgnore - public String label() { - return label; - } - - /** - * The actual value to be submitted - */ - @JsonIgnore - public TaxRequirementMetadataValue value() { - return value; - } - - /** - * A less verbose label that may sometimes be available - */ - @JsonIgnore - public JsonNullable shortLabel() { - return shortLabel; - } - - public static Builder builder() { - return new Builder(); - } - - - /** - * A customer facing label for the answer - */ - public TaxRequirementMetadataOptions withLabel(String label) { - Utils.checkNotNull(label, "label"); - this.label = label; - return this; - } - - /** - * The actual value to be submitted - */ - public TaxRequirementMetadataOptions withValue(TaxRequirementMetadataValue value) { - Utils.checkNotNull(value, "value"); - this.value = value; - return this; - } - - /** - * A less verbose label that may sometimes be available - */ - public TaxRequirementMetadataOptions withShortLabel(String shortLabel) { - Utils.checkNotNull(shortLabel, "shortLabel"); - this.shortLabel = JsonNullable.of(shortLabel); - return this; - } - - /** - * A less verbose label that may sometimes be available - */ - public TaxRequirementMetadataOptions withShortLabel(JsonNullable shortLabel) { - Utils.checkNotNull(shortLabel, "shortLabel"); - this.shortLabel = shortLabel; - return this; - } - - @Override - public boolean equals(java.lang.Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - TaxRequirementMetadataOptions other = (TaxRequirementMetadataOptions) o; - return - Utils.enhancedDeepEquals(this.label, other.label) && - Utils.enhancedDeepEquals(this.value, other.value) && - Utils.enhancedDeepEquals(this.shortLabel, other.shortLabel); - } - - @Override - public int hashCode() { - return Utils.enhancedHash( - label, value, shortLabel); - } - - @Override - public String toString() { - return Utils.toString(TaxRequirementMetadataOptions.class, - "label", label, - "value", value, - "shortLabel", shortLabel); - } - - @SuppressWarnings("UnusedReturnValue") - public final static class Builder { - - private String label; - - private TaxRequirementMetadataValue value; - - private JsonNullable shortLabel = JsonNullable.undefined(); - - private Builder() { - // force use of static builder() method - } - - - /** - * A customer facing label for the answer - */ - public Builder label(String label) { - Utils.checkNotNull(label, "label"); - this.label = label; - return this; - } - - - /** - * The actual value to be submitted - */ - public Builder value(TaxRequirementMetadataValue value) { - Utils.checkNotNull(value, "value"); - this.value = value; - return this; - } - - - /** - * A less verbose label that may sometimes be available - */ - public Builder shortLabel(String shortLabel) { - Utils.checkNotNull(shortLabel, "shortLabel"); - this.shortLabel = JsonNullable.of(shortLabel); - return this; - } - - /** - * A less verbose label that may sometimes be available - */ - public Builder shortLabel(JsonNullable shortLabel) { - Utils.checkNotNull(shortLabel, "shortLabel"); - this.shortLabel = shortLabel; - return this; - } - - public TaxRequirementMetadataOptions build() { - - return new TaxRequirementMetadataOptions( - label, value, shortLabel); - } - - } -} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/TaxRequirementMetadataType.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/TaxRequirementMetadataType.java index 2cb979892..eec68244f 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/TaxRequirementMetadataType.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/TaxRequirementMetadataType.java @@ -11,30 +11,11 @@ /** * TaxRequirementMetadataType * - *

    Describes the type of requirement - each type may have additional metadata properties to describe - * possible values, formats, etc. - * - *

    - `text`: free-text input, no additional requirements - * - `currency`: a value representing a dollar amount, e.g. `374.55` representing `$374.55` - * - `radio`: choose one of options provided, see `options` - * - `select`: choose one of options provided, see `options` - * - `percent`: A decimal value representing a percentage, e.g. `0.034` representing `3.4%` - * - `account_number`: An account number for a tax agency, more information provided by `mask` and - * `prefix` - * - `tax_rate`: A decimal value representing a tax rate, e.g. `0.034` representing a tax rate of - * `3.4%`, see `validation` for additional validation guidance - * - `workers_compensation_rate`: A decimal value representing a percentage, see `risk_class_code`, - * `risk_class_description`, and `rate_type` + *

    Describes the type of tax_rate validation rule */ public enum TaxRequirementMetadataType { - TEXT("text"), - CURRENCY("currency"), - RADIO("radio"), - SELECT("select"), - PERCENT("percent"), - ACCOUNT_NUMBER("account_number"), - TAX_RATE("tax_rate"), - WORKERS_COMPENSATION_RATE("workers_compensation_rate"); + ONE_OF("one_of"), + MIN_MAX("min_max"); @JsonValue private final String value; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Totals.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Totals.java index f54ca3ba3..ad9c5fdcc 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Totals.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Totals.java @@ -13,64 +13,60 @@ import java.lang.String; import java.util.Optional; -/** - * Totals - * - *

    The subtotals for the payroll. - */ + public class Totals { /** - * The total company debit for the payroll. + * The total amount for the group of contractor payments. */ @JsonInclude(Include.NON_ABSENT) - @JsonProperty("company_debit") - private Optional companyDebit; + @JsonProperty("amount") + private Optional amount; /** - * The total company net pay for the payroll. + * The total debit amount for the group of contractor payments. Sum of wage & reimbursement amount. */ @JsonInclude(Include.NON_ABSENT) - @JsonProperty("net_pay_debit") - private Optional netPayDebit; + @JsonProperty("debit_amount") + private Optional debitAmount; /** - * The total child support debit for the payroll. + * The total wage amount for the group of contractor payments. */ @JsonInclude(Include.NON_ABSENT) - @JsonProperty("child_support_debit") - private Optional childSupportDebit; + @JsonProperty("wage_amount") + private Optional wageAmount; /** - * The total reimbursements for the payroll. + * The total reimbursement amount for the group of contractor payments. */ @JsonInclude(Include.NON_ABSENT) - @JsonProperty("reimbursement_debit") - private Optional reimbursementDebit; + @JsonProperty("reimbursement_amount") + private Optional reimbursementAmount; /** - * The total tax debit for the payroll. + * The total check amount for the group of contractor payments. */ @JsonInclude(Include.NON_ABSENT) - @JsonProperty("tax_debit") - private Optional taxDebit; + @JsonProperty("check_amount") + private Optional checkAmount; @JsonCreator public Totals( - @JsonProperty("company_debit") Optional companyDebit, - @JsonProperty("net_pay_debit") Optional netPayDebit, - @JsonProperty("child_support_debit") Optional childSupportDebit, - @JsonProperty("reimbursement_debit") Optional reimbursementDebit, - @JsonProperty("tax_debit") Optional taxDebit) { - Utils.checkNotNull(companyDebit, "companyDebit"); - Utils.checkNotNull(netPayDebit, "netPayDebit"); - Utils.checkNotNull(childSupportDebit, "childSupportDebit"); - Utils.checkNotNull(reimbursementDebit, "reimbursementDebit"); - Utils.checkNotNull(taxDebit, "taxDebit"); - this.companyDebit = companyDebit; - this.netPayDebit = netPayDebit; - this.childSupportDebit = childSupportDebit; - this.reimbursementDebit = reimbursementDebit; - this.taxDebit = taxDebit; + @JsonProperty("amount") Optional amount, + @JsonProperty("debit_amount") Optional debitAmount, + @JsonProperty("wage_amount") Optional wageAmount, + @JsonProperty("reimbursement_amount") Optional reimbursementAmount, + @JsonProperty("check_amount") Optional checkAmount) { + Utils.checkNotNull(amount, "amount"); + Utils.checkNotNull(debitAmount, "debitAmount"); + Utils.checkNotNull(wageAmount, "wageAmount"); + Utils.checkNotNull(reimbursementAmount, "reimbursementAmount"); + Utils.checkNotNull(checkAmount, "checkAmount"); + this.amount = amount; + this.debitAmount = debitAmount; + this.wageAmount = wageAmount; + this.reimbursementAmount = reimbursementAmount; + this.checkAmount = checkAmount; } public Totals() { @@ -79,43 +75,43 @@ public Totals() { } /** - * The total company debit for the payroll. + * The total amount for the group of contractor payments. */ @JsonIgnore - public Optional companyDebit() { - return companyDebit; + public Optional amount() { + return amount; } /** - * The total company net pay for the payroll. + * The total debit amount for the group of contractor payments. Sum of wage & reimbursement amount. */ @JsonIgnore - public Optional netPayDebit() { - return netPayDebit; + public Optional debitAmount() { + return debitAmount; } /** - * The total child support debit for the payroll. + * The total wage amount for the group of contractor payments. */ @JsonIgnore - public Optional childSupportDebit() { - return childSupportDebit; + public Optional wageAmount() { + return wageAmount; } /** - * The total reimbursements for the payroll. + * The total reimbursement amount for the group of contractor payments. */ @JsonIgnore - public Optional reimbursementDebit() { - return reimbursementDebit; + public Optional reimbursementAmount() { + return reimbursementAmount; } /** - * The total tax debit for the payroll. + * The total check amount for the group of contractor payments. */ @JsonIgnore - public Optional taxDebit() { - return taxDebit; + public Optional checkAmount() { + return checkAmount; } public static Builder builder() { @@ -124,97 +120,97 @@ public static Builder builder() { /** - * The total company debit for the payroll. + * The total amount for the group of contractor payments. */ - public Totals withCompanyDebit(String companyDebit) { - Utils.checkNotNull(companyDebit, "companyDebit"); - this.companyDebit = Optional.ofNullable(companyDebit); + public Totals withAmount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = Optional.ofNullable(amount); return this; } /** - * The total company debit for the payroll. + * The total amount for the group of contractor payments. */ - public Totals withCompanyDebit(Optional companyDebit) { - Utils.checkNotNull(companyDebit, "companyDebit"); - this.companyDebit = companyDebit; + public Totals withAmount(Optional amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; return this; } /** - * The total company net pay for the payroll. + * The total debit amount for the group of contractor payments. Sum of wage & reimbursement amount. */ - public Totals withNetPayDebit(String netPayDebit) { - Utils.checkNotNull(netPayDebit, "netPayDebit"); - this.netPayDebit = Optional.ofNullable(netPayDebit); + public Totals withDebitAmount(String debitAmount) { + Utils.checkNotNull(debitAmount, "debitAmount"); + this.debitAmount = Optional.ofNullable(debitAmount); return this; } /** - * The total company net pay for the payroll. + * The total debit amount for the group of contractor payments. Sum of wage & reimbursement amount. */ - public Totals withNetPayDebit(Optional netPayDebit) { - Utils.checkNotNull(netPayDebit, "netPayDebit"); - this.netPayDebit = netPayDebit; + public Totals withDebitAmount(Optional debitAmount) { + Utils.checkNotNull(debitAmount, "debitAmount"); + this.debitAmount = debitAmount; return this; } /** - * The total child support debit for the payroll. + * The total wage amount for the group of contractor payments. */ - public Totals withChildSupportDebit(String childSupportDebit) { - Utils.checkNotNull(childSupportDebit, "childSupportDebit"); - this.childSupportDebit = Optional.ofNullable(childSupportDebit); + public Totals withWageAmount(String wageAmount) { + Utils.checkNotNull(wageAmount, "wageAmount"); + this.wageAmount = Optional.ofNullable(wageAmount); return this; } /** - * The total child support debit for the payroll. + * The total wage amount for the group of contractor payments. */ - public Totals withChildSupportDebit(Optional childSupportDebit) { - Utils.checkNotNull(childSupportDebit, "childSupportDebit"); - this.childSupportDebit = childSupportDebit; + public Totals withWageAmount(Optional wageAmount) { + Utils.checkNotNull(wageAmount, "wageAmount"); + this.wageAmount = wageAmount; return this; } /** - * The total reimbursements for the payroll. + * The total reimbursement amount for the group of contractor payments. */ - public Totals withReimbursementDebit(String reimbursementDebit) { - Utils.checkNotNull(reimbursementDebit, "reimbursementDebit"); - this.reimbursementDebit = Optional.ofNullable(reimbursementDebit); + public Totals withReimbursementAmount(String reimbursementAmount) { + Utils.checkNotNull(reimbursementAmount, "reimbursementAmount"); + this.reimbursementAmount = Optional.ofNullable(reimbursementAmount); return this; } /** - * The total reimbursements for the payroll. + * The total reimbursement amount for the group of contractor payments. */ - public Totals withReimbursementDebit(Optional reimbursementDebit) { - Utils.checkNotNull(reimbursementDebit, "reimbursementDebit"); - this.reimbursementDebit = reimbursementDebit; + public Totals withReimbursementAmount(Optional reimbursementAmount) { + Utils.checkNotNull(reimbursementAmount, "reimbursementAmount"); + this.reimbursementAmount = reimbursementAmount; return this; } /** - * The total tax debit for the payroll. + * The total check amount for the group of contractor payments. */ - public Totals withTaxDebit(String taxDebit) { - Utils.checkNotNull(taxDebit, "taxDebit"); - this.taxDebit = Optional.ofNullable(taxDebit); + public Totals withCheckAmount(String checkAmount) { + Utils.checkNotNull(checkAmount, "checkAmount"); + this.checkAmount = Optional.ofNullable(checkAmount); return this; } /** - * The total tax debit for the payroll. + * The total check amount for the group of contractor payments. */ - public Totals withTaxDebit(Optional taxDebit) { - Utils.checkNotNull(taxDebit, "taxDebit"); - this.taxDebit = taxDebit; + public Totals withCheckAmount(Optional checkAmount) { + Utils.checkNotNull(checkAmount, "checkAmount"); + this.checkAmount = checkAmount; return this; } @@ -228,42 +224,42 @@ public boolean equals(java.lang.Object o) { } Totals other = (Totals) o; return - Utils.enhancedDeepEquals(this.companyDebit, other.companyDebit) && - Utils.enhancedDeepEquals(this.netPayDebit, other.netPayDebit) && - Utils.enhancedDeepEquals(this.childSupportDebit, other.childSupportDebit) && - Utils.enhancedDeepEquals(this.reimbursementDebit, other.reimbursementDebit) && - Utils.enhancedDeepEquals(this.taxDebit, other.taxDebit); + Utils.enhancedDeepEquals(this.amount, other.amount) && + Utils.enhancedDeepEquals(this.debitAmount, other.debitAmount) && + Utils.enhancedDeepEquals(this.wageAmount, other.wageAmount) && + Utils.enhancedDeepEquals(this.reimbursementAmount, other.reimbursementAmount) && + Utils.enhancedDeepEquals(this.checkAmount, other.checkAmount); } @Override public int hashCode() { return Utils.enhancedHash( - companyDebit, netPayDebit, childSupportDebit, - reimbursementDebit, taxDebit); + amount, debitAmount, wageAmount, + reimbursementAmount, checkAmount); } @Override public String toString() { return Utils.toString(Totals.class, - "companyDebit", companyDebit, - "netPayDebit", netPayDebit, - "childSupportDebit", childSupportDebit, - "reimbursementDebit", reimbursementDebit, - "taxDebit", taxDebit); + "amount", amount, + "debitAmount", debitAmount, + "wageAmount", wageAmount, + "reimbursementAmount", reimbursementAmount, + "checkAmount", checkAmount); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private Optional companyDebit = Optional.empty(); + private Optional amount = Optional.empty(); - private Optional netPayDebit = Optional.empty(); + private Optional debitAmount = Optional.empty(); - private Optional childSupportDebit = Optional.empty(); + private Optional wageAmount = Optional.empty(); - private Optional reimbursementDebit = Optional.empty(); + private Optional reimbursementAmount = Optional.empty(); - private Optional taxDebit = Optional.empty(); + private Optional checkAmount = Optional.empty(); private Builder() { // force use of static builder() method @@ -271,104 +267,104 @@ private Builder() { /** - * The total company debit for the payroll. + * The total amount for the group of contractor payments. */ - public Builder companyDebit(String companyDebit) { - Utils.checkNotNull(companyDebit, "companyDebit"); - this.companyDebit = Optional.ofNullable(companyDebit); + public Builder amount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = Optional.ofNullable(amount); return this; } /** - * The total company debit for the payroll. + * The total amount for the group of contractor payments. */ - public Builder companyDebit(Optional companyDebit) { - Utils.checkNotNull(companyDebit, "companyDebit"); - this.companyDebit = companyDebit; + public Builder amount(Optional amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; return this; } /** - * The total company net pay for the payroll. + * The total debit amount for the group of contractor payments. Sum of wage & reimbursement amount. */ - public Builder netPayDebit(String netPayDebit) { - Utils.checkNotNull(netPayDebit, "netPayDebit"); - this.netPayDebit = Optional.ofNullable(netPayDebit); + public Builder debitAmount(String debitAmount) { + Utils.checkNotNull(debitAmount, "debitAmount"); + this.debitAmount = Optional.ofNullable(debitAmount); return this; } /** - * The total company net pay for the payroll. + * The total debit amount for the group of contractor payments. Sum of wage & reimbursement amount. */ - public Builder netPayDebit(Optional netPayDebit) { - Utils.checkNotNull(netPayDebit, "netPayDebit"); - this.netPayDebit = netPayDebit; + public Builder debitAmount(Optional debitAmount) { + Utils.checkNotNull(debitAmount, "debitAmount"); + this.debitAmount = debitAmount; return this; } /** - * The total child support debit for the payroll. + * The total wage amount for the group of contractor payments. */ - public Builder childSupportDebit(String childSupportDebit) { - Utils.checkNotNull(childSupportDebit, "childSupportDebit"); - this.childSupportDebit = Optional.ofNullable(childSupportDebit); + public Builder wageAmount(String wageAmount) { + Utils.checkNotNull(wageAmount, "wageAmount"); + this.wageAmount = Optional.ofNullable(wageAmount); return this; } /** - * The total child support debit for the payroll. + * The total wage amount for the group of contractor payments. */ - public Builder childSupportDebit(Optional childSupportDebit) { - Utils.checkNotNull(childSupportDebit, "childSupportDebit"); - this.childSupportDebit = childSupportDebit; + public Builder wageAmount(Optional wageAmount) { + Utils.checkNotNull(wageAmount, "wageAmount"); + this.wageAmount = wageAmount; return this; } /** - * The total reimbursements for the payroll. + * The total reimbursement amount for the group of contractor payments. */ - public Builder reimbursementDebit(String reimbursementDebit) { - Utils.checkNotNull(reimbursementDebit, "reimbursementDebit"); - this.reimbursementDebit = Optional.ofNullable(reimbursementDebit); + public Builder reimbursementAmount(String reimbursementAmount) { + Utils.checkNotNull(reimbursementAmount, "reimbursementAmount"); + this.reimbursementAmount = Optional.ofNullable(reimbursementAmount); return this; } /** - * The total reimbursements for the payroll. + * The total reimbursement amount for the group of contractor payments. */ - public Builder reimbursementDebit(Optional reimbursementDebit) { - Utils.checkNotNull(reimbursementDebit, "reimbursementDebit"); - this.reimbursementDebit = reimbursementDebit; + public Builder reimbursementAmount(Optional reimbursementAmount) { + Utils.checkNotNull(reimbursementAmount, "reimbursementAmount"); + this.reimbursementAmount = reimbursementAmount; return this; } /** - * The total tax debit for the payroll. + * The total check amount for the group of contractor payments. */ - public Builder taxDebit(String taxDebit) { - Utils.checkNotNull(taxDebit, "taxDebit"); - this.taxDebit = Optional.ofNullable(taxDebit); + public Builder checkAmount(String checkAmount) { + Utils.checkNotNull(checkAmount, "checkAmount"); + this.checkAmount = Optional.ofNullable(checkAmount); return this; } /** - * The total tax debit for the payroll. + * The total check amount for the group of contractor payments. */ - public Builder taxDebit(Optional taxDebit) { - Utils.checkNotNull(taxDebit, "taxDebit"); - this.taxDebit = taxDebit; + public Builder checkAmount(Optional checkAmount) { + Utils.checkNotNull(checkAmount, "checkAmount"); + this.checkAmount = checkAmount; return this; } public Totals build() { return new Totals( - companyDebit, netPayDebit, childSupportDebit, - reimbursementDebit, taxDebit); + amount, debitAmount, wageAmount, + reimbursementAmount, checkAmount); } } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Type.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Type.java index 0f52c0c4c..0a94245e8 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Type.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Type.java @@ -8,11 +8,33 @@ import java.util.Objects; import java.util.Optional; +/** + * Type + * + *

    Describes the type of requirement - each type may have additional metadata properties to describe + * possible values, formats, etc. + * + *

    - `text`: free-text input, no additional requirements + * - `currency`: a value representing a dollar amount, e.g. `374.55` representing `$374.55` + * - `radio`: choose one of options provided, see `options` + * - `select`: choose one of options provided, see `options` + * - `percent`: A decimal value representing a percentage, e.g. `0.034` representing `3.4%` + * - `account_number`: An account number for a tax agency, more information provided by `mask` and + * `prefix` + * - `tax_rate`: A decimal value representing a tax rate, e.g. `0.034` representing a tax rate of + * `3.4%`, see `validation` for additional validation guidance + * - `workers_compensation_rate`: A decimal value representing a percentage, see `risk_class_code`, + * `risk_class_description`, and `rate_type` + */ public enum Type { - SINGLE("single"), - HOURLY_SALARIED("hourly_salaried"), - BY_EMPLOYEE("by_employee"), - BY_DEPARTMENT("by_department"); + TEXT("text"), + CURRENCY("currency"), + RADIO("radio"), + SELECT("select"), + PERCENT("percent"), + ACCOUNT_NUMBER("account_number"), + TAX_RATE("tax_rate"), + WORKERS_COMPENSATION_RATE("workers_compensation_rate"); @JsonValue private final String value; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/UnknownBulkReportItem.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/UnknownBulkReportItem.java new file mode 100644 index 000000000..e77d2e697 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/UnknownBulkReportItem.java @@ -0,0 +1,32 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.databind.JsonNode; +import com.gusto.embedded_api_v_2025_11_15.utils.UnknownType; +import java.lang.Override; +import java.lang.String; + + +/** + * UnknownBulkReportItem + * + *

    A single report inside a bulk batch. Required fields depend on `report_type`: `custom_report` + * requires `columns` and `file_type`; `general_ledger` requires `payroll_uuid` and `aggregation`. + */ +public class UnknownBulkReportItem extends UnknownType implements BulkReportItem { + + @JsonCreator + public UnknownBulkReportItem(JsonNode rawNode) { + super(rawNode); + } + + @Override + public String reportType() { + return extractDiscriminator("report_type").orElse("UNKNOWN"); + } + +} \ No newline at end of file diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Validation.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Validation.java index 46e581595..f2dd9b6e4 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Validation.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/Validation.java @@ -25,7 +25,7 @@ public class Validation { * Describes the type of tax_rate validation rule */ @JsonProperty("type") - private TaxRequirementMetadataValidationType type; + private TaxRequirementMetadataType type; /** * [for `min_max`] The inclusive lower bound of the tax rate @@ -51,7 +51,7 @@ public class Validation { @JsonCreator public Validation( - @JsonProperty("type") TaxRequirementMetadataValidationType type, + @JsonProperty("type") TaxRequirementMetadataType type, @JsonProperty("min") Optional min, @JsonProperty("max") Optional max, @JsonProperty("rates") Optional> rates) { @@ -66,7 +66,7 @@ public Validation( } public Validation( - TaxRequirementMetadataValidationType type) { + TaxRequirementMetadataType type) { this(type, Optional.empty(), Optional.empty(), Optional.empty()); } @@ -75,7 +75,7 @@ public Validation( * Describes the type of tax_rate validation rule */ @JsonIgnore - public TaxRequirementMetadataValidationType type() { + public TaxRequirementMetadataType type() { return type; } @@ -113,7 +113,7 @@ public static Builder builder() { /** * Describes the type of tax_rate validation rule */ - public Validation withType(TaxRequirementMetadataValidationType type) { + public Validation withType(TaxRequirementMetadataType type) { Utils.checkNotNull(type, "type"); this.type = type; return this; @@ -213,7 +213,7 @@ public String toString() { @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private TaxRequirementMetadataValidationType type; + private TaxRequirementMetadataType type; private Optional min = Optional.empty(); @@ -229,7 +229,7 @@ private Builder() { /** * Describes the type of tax_rate validation rule */ - public Builder type(TaxRequirementMetadataValidationType type) { + public Builder type(TaxRequirementMetadataType type) { Utils.checkNotNull(type, "type"); this.type = type; return this; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/WageType.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/WageType.java index b14f25fdd..62a93b8fa 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/WageType.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/WageType.java @@ -11,11 +11,11 @@ /** * WageType * - *

    The contractor's wage type, either "Fixed" or "Hourly". + *

    The wage type for the payment. */ public enum WageType { - FIXED("Fixed"), - HOURLY("Hourly"); + HOURLY("Hourly"), + FIXED("Fixed"); @JsonValue private final String value; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/WarningObject.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/WarningObject.java new file mode 100644 index 000000000..afdd77c68 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/components/WarningObject.java @@ -0,0 +1,254 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.util.Optional; + + +public class WarningObject { + /** + * Specifies where the warning occurs. Typically identifies the attribute or parameter related to the + * warning. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("error_key") + private Optional errorKey; + + /** + * Specifies the type of warning. Can be used to build custom warning handling. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("category") + private Optional category; + + /** + * Provides details about the warning. The message can be surfaced directly to the end user. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("message") + private Optional message; + + @JsonCreator + public WarningObject( + @JsonProperty("error_key") Optional errorKey, + @JsonProperty("category") Optional category, + @JsonProperty("message") Optional message) { + Utils.checkNotNull(errorKey, "errorKey"); + Utils.checkNotNull(category, "category"); + Utils.checkNotNull(message, "message"); + this.errorKey = errorKey; + this.category = category; + this.message = message; + } + + public WarningObject() { + this(Optional.empty(), Optional.empty(), Optional.empty()); + } + + /** + * Specifies where the warning occurs. Typically identifies the attribute or parameter related to the + * warning. + */ + @JsonIgnore + public Optional errorKey() { + return errorKey; + } + + /** + * Specifies the type of warning. Can be used to build custom warning handling. + */ + @JsonIgnore + public Optional category() { + return category; + } + + /** + * Provides details about the warning. The message can be surfaced directly to the end user. + */ + @JsonIgnore + public Optional message() { + return message; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Specifies where the warning occurs. Typically identifies the attribute or parameter related to the + * warning. + */ + public WarningObject withErrorKey(String errorKey) { + Utils.checkNotNull(errorKey, "errorKey"); + this.errorKey = Optional.ofNullable(errorKey); + return this; + } + + + /** + * Specifies where the warning occurs. Typically identifies the attribute or parameter related to the + * warning. + */ + public WarningObject withErrorKey(Optional errorKey) { + Utils.checkNotNull(errorKey, "errorKey"); + this.errorKey = errorKey; + return this; + } + + /** + * Specifies the type of warning. Can be used to build custom warning handling. + */ + public WarningObject withCategory(String category) { + Utils.checkNotNull(category, "category"); + this.category = Optional.ofNullable(category); + return this; + } + + + /** + * Specifies the type of warning. Can be used to build custom warning handling. + */ + public WarningObject withCategory(Optional category) { + Utils.checkNotNull(category, "category"); + this.category = category; + return this; + } + + /** + * Provides details about the warning. The message can be surfaced directly to the end user. + */ + public WarningObject withMessage(String message) { + Utils.checkNotNull(message, "message"); + this.message = Optional.ofNullable(message); + return this; + } + + + /** + * Provides details about the warning. The message can be surfaced directly to the end user. + */ + public WarningObject withMessage(Optional message) { + Utils.checkNotNull(message, "message"); + this.message = message; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + WarningObject other = (WarningObject) o; + return + Utils.enhancedDeepEquals(this.errorKey, other.errorKey) && + Utils.enhancedDeepEquals(this.category, other.category) && + Utils.enhancedDeepEquals(this.message, other.message); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + errorKey, category, message); + } + + @Override + public String toString() { + return Utils.toString(WarningObject.class, + "errorKey", errorKey, + "category", category, + "message", message); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional errorKey = Optional.empty(); + + private Optional category = Optional.empty(); + + private Optional message = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * Specifies where the warning occurs. Typically identifies the attribute or parameter related to the + * warning. + */ + public Builder errorKey(String errorKey) { + Utils.checkNotNull(errorKey, "errorKey"); + this.errorKey = Optional.ofNullable(errorKey); + return this; + } + + /** + * Specifies where the warning occurs. Typically identifies the attribute or parameter related to the + * warning. + */ + public Builder errorKey(Optional errorKey) { + Utils.checkNotNull(errorKey, "errorKey"); + this.errorKey = errorKey; + return this; + } + + + /** + * Specifies the type of warning. Can be used to build custom warning handling. + */ + public Builder category(String category) { + Utils.checkNotNull(category, "category"); + this.category = Optional.ofNullable(category); + return this; + } + + /** + * Specifies the type of warning. Can be used to build custom warning handling. + */ + public Builder category(Optional category) { + Utils.checkNotNull(category, "category"); + this.category = category; + return this; + } + + + /** + * Provides details about the warning. The message can be surfaced directly to the end user. + */ + public Builder message(String message) { + Utils.checkNotNull(message, "message"); + this.message = Optional.ofNullable(message); + return this; + } + + /** + * Provides details about the warning. The message can be surfaced directly to the end user. + */ + public Builder message(Optional message) { + Utils.checkNotNull(message, "message"); + this.message = message; + return this; + } + + public WarningObject build() { + + return new WarningObject( + errorKey, category, message); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/errors/ConflictErrorObject.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/errors/ConflictErrorObject.java index 632000d25..d49fabe49 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/errors/ConflictErrorObject.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/errors/ConflictErrorObject.java @@ -115,8 +115,10 @@ public Optional deserializationException() { * *

    Conflict * - *

    This error occurs when the resource version provided does not match the current version. Retrieve - * the latest version and retry. + *

    This may happen when the resource version provided does not match the current version — retrieve the + * latest version and retry — or when the request conflicts with another in-progress operation on the + * same resource. See the [Errors + * Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. */ public static class Data { diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/errors/ForbiddenErrorObject.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/errors/ForbiddenErrorObject.java new file mode 100644 index 000000000..6503cdfc9 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/errors/ForbiddenErrorObject.java @@ -0,0 +1,201 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.errors; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2025_11_15.models.components.EntityErrorObject; +import com.gusto.embedded_api_v_2025_11_15.utils.Blob; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import jakarta.annotation.Nullable; +import java.io.InputStream; +import java.lang.Deprecated; +import java.lang.Exception; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.lang.Throwable; +import java.net.http.HttpResponse; +import java.util.List; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; + +@SuppressWarnings("serial") +public class ForbiddenErrorObject extends GustoEmbeddedException { + + @Nullable + private final Data data; + + @Nullable + private final Throwable deserializationException; + + public ForbiddenErrorObject( + int code, + byte[] body, + HttpResponse rawResponse, + @Nullable Data data, + @Nullable Throwable deserializationException) { + super("API error occurred", code, body, rawResponse, null); + this.data = data; + this.deserializationException = deserializationException; + } + + /** + * Parse a response into an instance of ForbiddenErrorObject. If deserialization of the response body fails, + * the resulting ForbiddenErrorObject instance will have a null data() value and a non-null deserializationException(). + */ + public static ForbiddenErrorObject from(HttpResponse response) { + try { + byte[] bytes = Utils.extractByteArrayFromBody(response); + Data data = Utils.mapper().readValue(bytes, Data.class); + return new ForbiddenErrorObject(response.statusCode(), bytes, response, data, null); + } catch (Exception e) { + return new ForbiddenErrorObject(response.statusCode(), null, response, null, e); + } + } + + /** + * Parse a response into an instance of ForbiddenErrorObject asynchronously. If deserialization of the response body fails, + * the resulting ForbiddenErrorObject instance will have a null data() value and a non-null deserializationException(). + */ + public static CompletableFuture fromAsync(HttpResponse response) { + return response.body() + .toByteArray() + .handle((bytes, err) -> { + // if a body read error occurs, we want to transform the exception + if (err != null) { + throw new AsyncAPIException( + "Error reading response body: " + err.getMessage(), + response.statusCode(), + null, + response, + err); + } + + try { + return new ForbiddenErrorObject( + response.statusCode(), + bytes, + response, + Utils.mapper().readValue( + bytes, + new TypeReference() { + }), + null); + } catch (Exception e) { + return new ForbiddenErrorObject( + response.statusCode(), + bytes, + response, + null, + e); + } + }); + } + + @Deprecated + public Optional> errors() { + return data().map(Data::errors); + } + + public Optional data() { + return Optional.ofNullable(data); + } + + /** + * Returns the exception if an error occurs while deserializing the response body. + */ + public Optional deserializationException() { + return Optional.ofNullable(deserializationException); + } + /** + * Data + * + *

    Forbidden + * + *

    The targeted company has been archived because its EIN was reassigned to a replacement company. Use + * the replacement company referenced in the error metadata. + */ + public static class Data { + + @JsonProperty("errors") + private List errors; + + @JsonCreator + public Data( + @JsonProperty("errors") List errors) { + Utils.checkNotNull(errors, "errors"); + this.errors = errors; + } + + @JsonIgnore + public List errors() { + return errors; + } + + public static Builder builder() { + return new Builder(); + } + + + public Data withErrors(List errors) { + Utils.checkNotNull(errors, "errors"); + this.errors = errors; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + Data other = (Data) o; + return + Utils.enhancedDeepEquals(this.errors, other.errors); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + errors); + } + + @Override + public String toString() { + return Utils.toString(Data.class, + "errors", errors); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private List errors; + + private Builder() { + // force use of static builder() method + } + + + public Builder errors(List errors) { + Utils.checkNotNull(errors, "errors"); + this.errors = errors; + return this; + } + + public Data build() { + + return new Data( + errors); + } + + } + } + +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/errors/Metadata.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/errors/Metadata.java index 9deb9c0f6..d0df93252 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/errors/Metadata.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/errors/Metadata.java @@ -16,17 +16,17 @@ public class Metadata { /** - * A categorization of the payroll blocker, e.g. "geocode_error" + * The UUID of the existing payroll cancellation batch that already used this idempotency key. */ @JsonInclude(Include.NON_ABSENT) - @JsonProperty("key") - private Optional key; + @JsonProperty("request_uuid") + private Optional requestUuid; @JsonCreator public Metadata( - @JsonProperty("key") Optional key) { - Utils.checkNotNull(key, "key"); - this.key = key; + @JsonProperty("request_uuid") Optional requestUuid) { + Utils.checkNotNull(requestUuid, "requestUuid"); + this.requestUuid = requestUuid; } public Metadata() { @@ -34,11 +34,11 @@ public Metadata() { } /** - * A categorization of the payroll blocker, e.g. "geocode_error" + * The UUID of the existing payroll cancellation batch that already used this idempotency key. */ @JsonIgnore - public Optional key() { - return key; + public Optional requestUuid() { + return requestUuid; } public static Builder builder() { @@ -47,21 +47,21 @@ public static Builder builder() { /** - * A categorization of the payroll blocker, e.g. "geocode_error" + * The UUID of the existing payroll cancellation batch that already used this idempotency key. */ - public Metadata withKey(String key) { - Utils.checkNotNull(key, "key"); - this.key = Optional.ofNullable(key); + public Metadata withRequestUuid(String requestUuid) { + Utils.checkNotNull(requestUuid, "requestUuid"); + this.requestUuid = Optional.ofNullable(requestUuid); return this; } /** - * A categorization of the payroll blocker, e.g. "geocode_error" + * The UUID of the existing payroll cancellation batch that already used this idempotency key. */ - public Metadata withKey(Optional key) { - Utils.checkNotNull(key, "key"); - this.key = key; + public Metadata withRequestUuid(Optional requestUuid) { + Utils.checkNotNull(requestUuid, "requestUuid"); + this.requestUuid = requestUuid; return this; } @@ -75,25 +75,25 @@ public boolean equals(java.lang.Object o) { } Metadata other = (Metadata) o; return - Utils.enhancedDeepEquals(this.key, other.key); + Utils.enhancedDeepEquals(this.requestUuid, other.requestUuid); } @Override public int hashCode() { return Utils.enhancedHash( - key); + requestUuid); } @Override public String toString() { return Utils.toString(Metadata.class, - "key", key); + "requestUuid", requestUuid); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private Optional key = Optional.empty(); + private Optional requestUuid = Optional.empty(); private Builder() { // force use of static builder() method @@ -101,27 +101,27 @@ private Builder() { /** - * A categorization of the payroll blocker, e.g. "geocode_error" + * The UUID of the existing payroll cancellation batch that already used this idempotency key. */ - public Builder key(String key) { - Utils.checkNotNull(key, "key"); - this.key = Optional.ofNullable(key); + public Builder requestUuid(String requestUuid) { + Utils.checkNotNull(requestUuid, "requestUuid"); + this.requestUuid = Optional.ofNullable(requestUuid); return this; } /** - * A categorization of the payroll blocker, e.g. "geocode_error" + * The UUID of the existing payroll cancellation batch that already used this idempotency key. */ - public Builder key(Optional key) { - Utils.checkNotNull(key, "key"); - this.key = key; + public Builder requestUuid(Optional requestUuid) { + Utils.checkNotNull(requestUuid, "requestUuid"); + this.requestUuid = requestUuid; return this; } public Metadata build() { return new Metadata( - key); + requestUuid); } } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/errors/PayrollBatchConflictError.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/errors/PayrollBatchConflictError.java new file mode 100644 index 000000000..905e95a34 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/errors/PayrollBatchConflictError.java @@ -0,0 +1,219 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.errors; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2025_11_15.utils.Blob; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import jakarta.annotation.Nullable; +import java.io.InputStream; +import java.lang.Deprecated; +import java.lang.Exception; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.lang.Throwable; +import java.net.http.HttpResponse; +import java.util.List; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; + +@SuppressWarnings("serial") +public class PayrollBatchConflictError extends GustoEmbeddedException { + + @Nullable + private final Data data; + + @Nullable + private final Throwable deserializationException; + + public PayrollBatchConflictError( + int code, + byte[] body, + HttpResponse rawResponse, + @Nullable Data data, + @Nullable Throwable deserializationException) { + super("API error occurred", code, body, rawResponse, null); + this.data = data; + this.deserializationException = deserializationException; + } + + /** + * Parse a response into an instance of PayrollBatchConflictError. If deserialization of the response body fails, + * the resulting PayrollBatchConflictError instance will have a null data() value and a non-null deserializationException(). + */ + public static PayrollBatchConflictError from(HttpResponse response) { + try { + byte[] bytes = Utils.extractByteArrayFromBody(response); + Data data = Utils.mapper().readValue(bytes, Data.class); + return new PayrollBatchConflictError(response.statusCode(), bytes, response, data, null); + } catch (Exception e) { + return new PayrollBatchConflictError(response.statusCode(), null, response, null, e); + } + } + + /** + * Parse a response into an instance of PayrollBatchConflictError asynchronously. If deserialization of the response body fails, + * the resulting PayrollBatchConflictError instance will have a null data() value and a non-null deserializationException(). + */ + public static CompletableFuture fromAsync(HttpResponse response) { + return response.body() + .toByteArray() + .handle((bytes, err) -> { + // if a body read error occurs, we want to transform the exception + if (err != null) { + throw new AsyncAPIException( + "Error reading response body: " + err.getMessage(), + response.statusCode(), + null, + response, + err); + } + + try { + return new PayrollBatchConflictError( + response.statusCode(), + bytes, + response, + Utils.mapper().readValue( + bytes, + new TypeReference() { + }), + null); + } catch (Exception e) { + return new PayrollBatchConflictError( + response.statusCode(), + bytes, + response, + null, + e); + } + }); + } + + @Deprecated + public Optional> errors() { + return data().flatMap(Data::errors); + } + + public Optional data() { + return Optional.ofNullable(data); + } + + /** + * Returns the exception if an error occurs while deserializing the response body. + */ + public Optional deserializationException() { + return Optional.ofNullable(deserializationException); + } + /** + * Data + * + *

    Error response when a payroll cancellation idempotency key has already been used by the same + * partner. + */ + public static class Data { + + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("errors") + private Optional> errors; + + @JsonCreator + public Data( + @JsonProperty("errors") Optional> errors) { + Utils.checkNotNull(errors, "errors"); + this.errors = errors; + } + + public Data() { + this(Optional.empty()); + } + + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> errors() { + return (Optional>) errors; + } + + public static Builder builder() { + return new Builder(); + } + + + public Data withErrors(List errors) { + Utils.checkNotNull(errors, "errors"); + this.errors = Optional.ofNullable(errors); + return this; + } + + + public Data withErrors(Optional> errors) { + Utils.checkNotNull(errors, "errors"); + this.errors = errors; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + Data other = (Data) o; + return + Utils.enhancedDeepEquals(this.errors, other.errors); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + errors); + } + + @Override + public String toString() { + return Utils.toString(Data.class, + "errors", errors); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional> errors = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + public Builder errors(List errors) { + Utils.checkNotNull(errors, "errors"); + this.errors = Optional.ofNullable(errors); + return this; + } + + public Builder errors(Optional> errors) { + Utils.checkNotNull(errors, "errors"); + this.errors = errors; + return this; + } + + public Data build() { + + return new Data( + errors); + } + + } + } + +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/errors/PayrollBatchConflictErrorErrors.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/errors/PayrollBatchConflictErrorErrors.java new file mode 100644 index 000000000..e0d1ef030 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/errors/PayrollBatchConflictErrorErrors.java @@ -0,0 +1,296 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.errors; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class PayrollBatchConflictErrorErrors { + /** + * The key identifying the error source. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("error_key") + private Optional errorKey; + + /** + * The error category. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("category") + private Optional category; + + /** + * Human-readable error message. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("message") + private Optional message; + + + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("metadata") + private Optional metadata; + + @JsonCreator + public PayrollBatchConflictErrorErrors( + @JsonProperty("error_key") Optional errorKey, + @JsonProperty("category") Optional category, + @JsonProperty("message") Optional message, + @JsonProperty("metadata") Optional metadata) { + Utils.checkNotNull(errorKey, "errorKey"); + Utils.checkNotNull(category, "category"); + Utils.checkNotNull(message, "message"); + Utils.checkNotNull(metadata, "metadata"); + this.errorKey = errorKey; + this.category = category; + this.message = message; + this.metadata = metadata; + } + + public PayrollBatchConflictErrorErrors() { + this(Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty()); + } + + /** + * The key identifying the error source. + */ + @JsonIgnore + public Optional errorKey() { + return errorKey; + } + + /** + * The error category. + */ + @JsonIgnore + public Optional category() { + return category; + } + + /** + * Human-readable error message. + */ + @JsonIgnore + public Optional message() { + return message; + } + + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional metadata() { + return (Optional) metadata; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * The key identifying the error source. + */ + public PayrollBatchConflictErrorErrors withErrorKey(String errorKey) { + Utils.checkNotNull(errorKey, "errorKey"); + this.errorKey = Optional.ofNullable(errorKey); + return this; + } + + + /** + * The key identifying the error source. + */ + public PayrollBatchConflictErrorErrors withErrorKey(Optional errorKey) { + Utils.checkNotNull(errorKey, "errorKey"); + this.errorKey = errorKey; + return this; + } + + /** + * The error category. + */ + public PayrollBatchConflictErrorErrors withCategory(String category) { + Utils.checkNotNull(category, "category"); + this.category = Optional.ofNullable(category); + return this; + } + + + /** + * The error category. + */ + public PayrollBatchConflictErrorErrors withCategory(Optional category) { + Utils.checkNotNull(category, "category"); + this.category = category; + return this; + } + + /** + * Human-readable error message. + */ + public PayrollBatchConflictErrorErrors withMessage(String message) { + Utils.checkNotNull(message, "message"); + this.message = Optional.ofNullable(message); + return this; + } + + + /** + * Human-readable error message. + */ + public PayrollBatchConflictErrorErrors withMessage(Optional message) { + Utils.checkNotNull(message, "message"); + this.message = message; + return this; + } + + public PayrollBatchConflictErrorErrors withMetadata(Metadata metadata) { + Utils.checkNotNull(metadata, "metadata"); + this.metadata = Optional.ofNullable(metadata); + return this; + } + + + public PayrollBatchConflictErrorErrors withMetadata(Optional metadata) { + Utils.checkNotNull(metadata, "metadata"); + this.metadata = metadata; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PayrollBatchConflictErrorErrors other = (PayrollBatchConflictErrorErrors) o; + return + Utils.enhancedDeepEquals(this.errorKey, other.errorKey) && + Utils.enhancedDeepEquals(this.category, other.category) && + Utils.enhancedDeepEquals(this.message, other.message) && + Utils.enhancedDeepEquals(this.metadata, other.metadata); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + errorKey, category, message, + metadata); + } + + @Override + public String toString() { + return Utils.toString(PayrollBatchConflictErrorErrors.class, + "errorKey", errorKey, + "category", category, + "message", message, + "metadata", metadata); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional errorKey = Optional.empty(); + + private Optional category = Optional.empty(); + + private Optional message = Optional.empty(); + + private Optional metadata = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * The key identifying the error source. + */ + public Builder errorKey(String errorKey) { + Utils.checkNotNull(errorKey, "errorKey"); + this.errorKey = Optional.ofNullable(errorKey); + return this; + } + + /** + * The key identifying the error source. + */ + public Builder errorKey(Optional errorKey) { + Utils.checkNotNull(errorKey, "errorKey"); + this.errorKey = errorKey; + return this; + } + + + /** + * The error category. + */ + public Builder category(String category) { + Utils.checkNotNull(category, "category"); + this.category = Optional.ofNullable(category); + return this; + } + + /** + * The error category. + */ + public Builder category(Optional category) { + Utils.checkNotNull(category, "category"); + this.category = category; + return this; + } + + + /** + * Human-readable error message. + */ + public Builder message(String message) { + Utils.checkNotNull(message, "message"); + this.message = Optional.ofNullable(message); + return this; + } + + /** + * Human-readable error message. + */ + public Builder message(Optional message) { + Utils.checkNotNull(message, "message"); + this.message = message; + return this; + } + + + public Builder metadata(Metadata metadata) { + Utils.checkNotNull(metadata, "metadata"); + this.metadata = Optional.ofNullable(metadata); + return this; + } + + public Builder metadata(Optional metadata) { + Utils.checkNotNull(metadata, "metadata"); + this.metadata = metadata; + return this; + } + + public PayrollBatchConflictErrorErrors build() { + + return new PayrollBatchConflictErrorErrors( + errorKey, category, message, + metadata); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/errors/PayrollBlockersErrorErrors.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/errors/PayrollBlockersErrorErrors.java index 0a5a6ac15..d9acbdc82 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/errors/PayrollBlockersErrorErrors.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/errors/PayrollBlockersErrorErrors.java @@ -40,14 +40,14 @@ public class PayrollBlockersErrorErrors { @JsonInclude(Include.NON_ABSENT) @JsonProperty("metadata") - private Optional metadata; + private Optional metadata; @JsonCreator public PayrollBlockersErrorErrors( @JsonProperty("error_key") Optional errorKey, @JsonProperty("category") Optional category, @JsonProperty("message") Optional message, - @JsonProperty("metadata") Optional metadata) { + @JsonProperty("metadata") Optional metadata) { Utils.checkNotNull(errorKey, "errorKey"); Utils.checkNotNull(category, "category"); Utils.checkNotNull(message, "message"); @@ -89,8 +89,8 @@ public Optional message() { @SuppressWarnings("unchecked") @JsonIgnore - public Optional metadata() { - return (Optional) metadata; + public Optional metadata() { + return (Optional) metadata; } public static Builder builder() { @@ -155,14 +155,14 @@ public PayrollBlockersErrorErrors withMessage(Optional message) { return this; } - public PayrollBlockersErrorErrors withMetadata(Metadata metadata) { + public PayrollBlockersErrorErrors withMetadata(PayrollBlockersErrorMetadata metadata) { Utils.checkNotNull(metadata, "metadata"); this.metadata = Optional.ofNullable(metadata); return this; } - public PayrollBlockersErrorErrors withMetadata(Optional metadata) { + public PayrollBlockersErrorErrors withMetadata(Optional metadata) { Utils.checkNotNull(metadata, "metadata"); this.metadata = metadata; return this; @@ -209,7 +209,7 @@ public final static class Builder { private Optional message = Optional.empty(); - private Optional metadata = Optional.empty(); + private Optional metadata = Optional.empty(); private Builder() { // force use of static builder() method @@ -273,13 +273,13 @@ public Builder message(Optional message) { } - public Builder metadata(Metadata metadata) { + public Builder metadata(PayrollBlockersErrorMetadata metadata) { Utils.checkNotNull(metadata, "metadata"); this.metadata = Optional.ofNullable(metadata); return this; } - public Builder metadata(Optional metadata) { + public Builder metadata(Optional metadata) { Utils.checkNotNull(metadata, "metadata"); this.metadata = metadata; return this; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/errors/PayrollBlockersErrorMetadata.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/errors/PayrollBlockersErrorMetadata.java new file mode 100644 index 000000000..918f4f38d --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/errors/PayrollBlockersErrorMetadata.java @@ -0,0 +1,128 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.errors; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.util.Optional; + + +public class PayrollBlockersErrorMetadata { + /** + * A categorization of the payroll blocker, e.g. "geocode_error" + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("key") + private Optional key; + + @JsonCreator + public PayrollBlockersErrorMetadata( + @JsonProperty("key") Optional key) { + Utils.checkNotNull(key, "key"); + this.key = key; + } + + public PayrollBlockersErrorMetadata() { + this(Optional.empty()); + } + + /** + * A categorization of the payroll blocker, e.g. "geocode_error" + */ + @JsonIgnore + public Optional key() { + return key; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * A categorization of the payroll blocker, e.g. "geocode_error" + */ + public PayrollBlockersErrorMetadata withKey(String key) { + Utils.checkNotNull(key, "key"); + this.key = Optional.ofNullable(key); + return this; + } + + + /** + * A categorization of the payroll blocker, e.g. "geocode_error" + */ + public PayrollBlockersErrorMetadata withKey(Optional key) { + Utils.checkNotNull(key, "key"); + this.key = key; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PayrollBlockersErrorMetadata other = (PayrollBlockersErrorMetadata) o; + return + Utils.enhancedDeepEquals(this.key, other.key); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + key); + } + + @Override + public String toString() { + return Utils.toString(PayrollBlockersErrorMetadata.class, + "key", key); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional key = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * A categorization of the payroll blocker, e.g. "geocode_error" + */ + public Builder key(String key) { + Utils.checkNotNull(key, "key"); + this.key = Optional.ofNullable(key); + return this; + } + + /** + * A categorization of the payroll blocker, e.g. "geocode_error" + */ + public Builder key(Optional key) { + Utils.checkNotNull(key, "key"); + this.key = key; + return this; + } + + public PayrollBlockersErrorMetadata build() { + + return new PayrollBlockersErrorMetadata( + key); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/Batch.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/Batch.java index ef7987431..5d0aedc81 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/Batch.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/Batch.java @@ -5,181 +5,68 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonIgnore; -import com.fasterxml.jackson.annotation.JsonInclude.Include; -import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.annotation.JsonProperty; import com.gusto.embedded_api_v_2025_11_15.utils.Utils; import java.lang.Override; import java.lang.String; -import java.lang.SuppressWarnings; -import java.util.List; -import java.util.Optional; public class Batch { /** - * The type of entity to create + * The type of entity to act on. */ @JsonProperty("entity_type") private EntityType entityType; - - @JsonProperty("person") - private Person person; - - /** - * Home address for the employee - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("home_address") - private Optional homeAddress; - - /** - * Specify the company work location for the employee - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("work_address") - private Optional workAddress; - - /** - * Job details for the employee (required if compensation is provided) - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("job") - private Optional job; - /** - * Department details for the employee + * The UUID of the payroll to cancel. Payrolls the partner is not authorized to access, or that do not + * exist, appear in the response's `exclusions` array. */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("department") - private Optional department; + @JsonProperty("uuid") + private String uuid; /** - * Compensation details for the employee (requires job to be provided) + * The UUID of the company that owns the payroll. The partner must be mapped to this company. */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("compensation") - private Optional compensation; - - /** - * Creates employee bank account(s) and payment method(s) for direct deposit. Payments can be split - * across accounts by Percentage or by Amount. If splitting payments by `Percentage`, all splits must - * have a `split_amount` and the percentages must add up to `100`. - * If splitting payments by `Amount`, the priority is set based on the order of the bank accounts in - * the array and the last bank account is the remainder account (should have `split_amount` set to - * `null`). - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("bank_accounts") - private Optional> bankAccounts; + @JsonProperty("company_uuid") + private String companyUuid; @JsonCreator public Batch( @JsonProperty("entity_type") EntityType entityType, - @JsonProperty("person") Person person, - @JsonProperty("home_address") Optional homeAddress, - @JsonProperty("work_address") Optional workAddress, - @JsonProperty("job") Optional job, - @JsonProperty("department") Optional department, - @JsonProperty("compensation") Optional compensation, - @JsonProperty("bank_accounts") Optional> bankAccounts) { + @JsonProperty("uuid") String uuid, + @JsonProperty("company_uuid") String companyUuid) { Utils.checkNotNull(entityType, "entityType"); - Utils.checkNotNull(person, "person"); - Utils.checkNotNull(homeAddress, "homeAddress"); - Utils.checkNotNull(workAddress, "workAddress"); - Utils.checkNotNull(job, "job"); - Utils.checkNotNull(department, "department"); - Utils.checkNotNull(compensation, "compensation"); - Utils.checkNotNull(bankAccounts, "bankAccounts"); + Utils.checkNotNull(uuid, "uuid"); + Utils.checkNotNull(companyUuid, "companyUuid"); this.entityType = entityType; - this.person = person; - this.homeAddress = homeAddress; - this.workAddress = workAddress; - this.job = job; - this.department = department; - this.compensation = compensation; - this.bankAccounts = bankAccounts; - } - - public Batch( - EntityType entityType, - Person person) { - this(entityType, person, Optional.empty(), - Optional.empty(), Optional.empty(), Optional.empty(), - Optional.empty(), Optional.empty()); + this.uuid = uuid; + this.companyUuid = companyUuid; } /** - * The type of entity to create + * The type of entity to act on. */ @JsonIgnore public EntityType entityType() { return entityType; } - @JsonIgnore - public Person person() { - return person; - } - /** - * Home address for the employee + * The UUID of the payroll to cancel. Payrolls the partner is not authorized to access, or that do not + * exist, appear in the response's `exclusions` array. */ - @SuppressWarnings("unchecked") @JsonIgnore - public Optional homeAddress() { - return (Optional) homeAddress; + public String uuid() { + return uuid; } /** - * Specify the company work location for the employee + * The UUID of the company that owns the payroll. The partner must be mapped to this company. */ - @SuppressWarnings("unchecked") @JsonIgnore - public Optional workAddress() { - return (Optional) workAddress; - } - - /** - * Job details for the employee (required if compensation is provided) - */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional job() { - return (Optional) job; - } - - /** - * Department details for the employee - */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional department() { - return (Optional) department; - } - - /** - * Compensation details for the employee (requires job to be provided) - */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional compensation() { - return (Optional) compensation; - } - - /** - * Creates employee bank account(s) and payment method(s) for direct deposit. Payments can be split - * across accounts by Percentage or by Amount. If splitting payments by `Percentage`, all splits must - * have a `split_amount` and the percentages must add up to `100`. - * If splitting payments by `Amount`, the priority is set based on the order of the bank accounts in - * the array and the last bank account is the remainder account (should have `split_amount` set to - * `null`). - */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional> bankAccounts() { - return (Optional>) bankAccounts; + public String companyUuid() { + return companyUuid; } public static Builder builder() { @@ -188,7 +75,7 @@ public static Builder builder() { /** - * The type of entity to create + * The type of entity to act on. */ public Batch withEntityType(EntityType entityType) { Utils.checkNotNull(entityType, "entityType"); @@ -196,133 +83,22 @@ public Batch withEntityType(EntityType entityType) { return this; } - public Batch withPerson(Person person) { - Utils.checkNotNull(person, "person"); - this.person = person; - return this; - } - - /** - * Home address for the employee - */ - public Batch withHomeAddress(PostV1CompaniesCompanyIdPeopleBatchesHomeAddress homeAddress) { - Utils.checkNotNull(homeAddress, "homeAddress"); - this.homeAddress = Optional.ofNullable(homeAddress); - return this; - } - - - /** - * Home address for the employee - */ - public Batch withHomeAddress(Optional homeAddress) { - Utils.checkNotNull(homeAddress, "homeAddress"); - this.homeAddress = homeAddress; - return this; - } - - /** - * Specify the company work location for the employee - */ - public Batch withWorkAddress(PostV1CompaniesCompanyIdPeopleBatchesWorkAddress workAddress) { - Utils.checkNotNull(workAddress, "workAddress"); - this.workAddress = Optional.ofNullable(workAddress); - return this; - } - - - /** - * Specify the company work location for the employee - */ - public Batch withWorkAddress(Optional workAddress) { - Utils.checkNotNull(workAddress, "workAddress"); - this.workAddress = workAddress; - return this; - } - - /** - * Job details for the employee (required if compensation is provided) - */ - public Batch withJob(PostV1CompaniesCompanyIdPeopleBatchesJob job) { - Utils.checkNotNull(job, "job"); - this.job = Optional.ofNullable(job); - return this; - } - - - /** - * Job details for the employee (required if compensation is provided) - */ - public Batch withJob(Optional job) { - Utils.checkNotNull(job, "job"); - this.job = job; - return this; - } - - /** - * Department details for the employee - */ - public Batch withDepartment(Department department) { - Utils.checkNotNull(department, "department"); - this.department = Optional.ofNullable(department); - return this; - } - - /** - * Department details for the employee + * The UUID of the payroll to cancel. Payrolls the partner is not authorized to access, or that do not + * exist, appear in the response's `exclusions` array. */ - public Batch withDepartment(Optional department) { - Utils.checkNotNull(department, "department"); - this.department = department; + public Batch withUuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; return this; } /** - * Compensation details for the employee (requires job to be provided) + * The UUID of the company that owns the payroll. The partner must be mapped to this company. */ - public Batch withCompensation(Compensation compensation) { - Utils.checkNotNull(compensation, "compensation"); - this.compensation = Optional.ofNullable(compensation); - return this; - } - - - /** - * Compensation details for the employee (requires job to be provided) - */ - public Batch withCompensation(Optional compensation) { - Utils.checkNotNull(compensation, "compensation"); - this.compensation = compensation; - return this; - } - - /** - * Creates employee bank account(s) and payment method(s) for direct deposit. Payments can be split - * across accounts by Percentage or by Amount. If splitting payments by `Percentage`, all splits must - * have a `split_amount` and the percentages must add up to `100`. - * If splitting payments by `Amount`, the priority is set based on the order of the bank accounts in - * the array and the last bank account is the remainder account (should have `split_amount` set to - * `null`). - */ - public Batch withBankAccounts(List bankAccounts) { - Utils.checkNotNull(bankAccounts, "bankAccounts"); - this.bankAccounts = Optional.ofNullable(bankAccounts); - return this; - } - - - /** - * Creates employee bank account(s) and payment method(s) for direct deposit. Payments can be split - * across accounts by Percentage or by Amount. If splitting payments by `Percentage`, all splits must - * have a `split_amount` and the percentages must add up to `100`. - * If splitting payments by `Amount`, the priority is set based on the order of the bank accounts in - * the array and the last bank account is the remainder account (should have `split_amount` set to - * `null`). - */ - public Batch withBankAccounts(Optional> bankAccounts) { - Utils.checkNotNull(bankAccounts, "bankAccounts"); - this.bankAccounts = bankAccounts; + public Batch withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; return this; } @@ -337,34 +113,22 @@ public boolean equals(java.lang.Object o) { Batch other = (Batch) o; return Utils.enhancedDeepEquals(this.entityType, other.entityType) && - Utils.enhancedDeepEquals(this.person, other.person) && - Utils.enhancedDeepEquals(this.homeAddress, other.homeAddress) && - Utils.enhancedDeepEquals(this.workAddress, other.workAddress) && - Utils.enhancedDeepEquals(this.job, other.job) && - Utils.enhancedDeepEquals(this.department, other.department) && - Utils.enhancedDeepEquals(this.compensation, other.compensation) && - Utils.enhancedDeepEquals(this.bankAccounts, other.bankAccounts); + Utils.enhancedDeepEquals(this.uuid, other.uuid) && + Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid); } @Override public int hashCode() { return Utils.enhancedHash( - entityType, person, homeAddress, - workAddress, job, department, - compensation, bankAccounts); + entityType, uuid, companyUuid); } @Override public String toString() { return Utils.toString(Batch.class, "entityType", entityType, - "person", person, - "homeAddress", homeAddress, - "workAddress", workAddress, - "job", job, - "department", department, - "compensation", compensation, - "bankAccounts", bankAccounts); + "uuid", uuid, + "companyUuid", companyUuid); } @SuppressWarnings("UnusedReturnValue") @@ -372,19 +136,9 @@ public final static class Builder { private EntityType entityType; - private Person person; - - private Optional homeAddress = Optional.empty(); - - private Optional workAddress = Optional.empty(); - - private Optional job = Optional.empty(); + private String uuid; - private Optional department = Optional.empty(); - - private Optional compensation = Optional.empty(); - - private Optional> bankAccounts = Optional.empty(); + private String companyUuid; private Builder() { // force use of static builder() method @@ -392,7 +146,7 @@ private Builder() { /** - * The type of entity to create + * The type of entity to act on. */ public Builder entityType(EntityType entityType) { Utils.checkNotNull(entityType, "entityType"); @@ -401,142 +155,30 @@ public Builder entityType(EntityType entityType) { } - public Builder person(Person person) { - Utils.checkNotNull(person, "person"); - this.person = person; - return this; - } - - - /** - * Home address for the employee - */ - public Builder homeAddress(PostV1CompaniesCompanyIdPeopleBatchesHomeAddress homeAddress) { - Utils.checkNotNull(homeAddress, "homeAddress"); - this.homeAddress = Optional.ofNullable(homeAddress); - return this; - } - - /** - * Home address for the employee - */ - public Builder homeAddress(Optional homeAddress) { - Utils.checkNotNull(homeAddress, "homeAddress"); - this.homeAddress = homeAddress; - return this; - } - - /** - * Specify the company work location for the employee + * The UUID of the payroll to cancel. Payrolls the partner is not authorized to access, or that do not + * exist, appear in the response's `exclusions` array. */ - public Builder workAddress(PostV1CompaniesCompanyIdPeopleBatchesWorkAddress workAddress) { - Utils.checkNotNull(workAddress, "workAddress"); - this.workAddress = Optional.ofNullable(workAddress); + public Builder uuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; return this; } - /** - * Specify the company work location for the employee - */ - public Builder workAddress(Optional workAddress) { - Utils.checkNotNull(workAddress, "workAddress"); - this.workAddress = workAddress; - return this; - } - - - /** - * Job details for the employee (required if compensation is provided) - */ - public Builder job(PostV1CompaniesCompanyIdPeopleBatchesJob job) { - Utils.checkNotNull(job, "job"); - this.job = Optional.ofNullable(job); - return this; - } - - /** - * Job details for the employee (required if compensation is provided) - */ - public Builder job(Optional job) { - Utils.checkNotNull(job, "job"); - this.job = job; - return this; - } - - - /** - * Department details for the employee - */ - public Builder department(Department department) { - Utils.checkNotNull(department, "department"); - this.department = Optional.ofNullable(department); - return this; - } - - /** - * Department details for the employee - */ - public Builder department(Optional department) { - Utils.checkNotNull(department, "department"); - this.department = department; - return this; - } - - - /** - * Compensation details for the employee (requires job to be provided) - */ - public Builder compensation(Compensation compensation) { - Utils.checkNotNull(compensation, "compensation"); - this.compensation = Optional.ofNullable(compensation); - return this; - } - - /** - * Compensation details for the employee (requires job to be provided) - */ - public Builder compensation(Optional compensation) { - Utils.checkNotNull(compensation, "compensation"); - this.compensation = compensation; - return this; - } - - - /** - * Creates employee bank account(s) and payment method(s) for direct deposit. Payments can be split - * across accounts by Percentage or by Amount. If splitting payments by `Percentage`, all splits must - * have a `split_amount` and the percentages must add up to `100`. - * If splitting payments by `Amount`, the priority is set based on the order of the bank accounts in - * the array and the last bank account is the remainder account (should have `split_amount` set to - * `null`). - */ - public Builder bankAccounts(List bankAccounts) { - Utils.checkNotNull(bankAccounts, "bankAccounts"); - this.bankAccounts = Optional.ofNullable(bankAccounts); - return this; - } /** - * Creates employee bank account(s) and payment method(s) for direct deposit. Payments can be split - * across accounts by Percentage or by Amount. If splitting payments by `Percentage`, all splits must - * have a `split_amount` and the percentages must add up to `100`. - * If splitting payments by `Amount`, the priority is set based on the order of the bank accounts in - * the array and the last bank account is the remainder account (should have `split_amount` set to - * `null`). + * The UUID of the company that owns the payroll. The partner must be mapped to this company. */ - public Builder bankAccounts(Optional> bankAccounts) { - Utils.checkNotNull(bankAccounts, "bankAccounts"); - this.bankAccounts = bankAccounts; + public Builder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; return this; } public Batch build() { return new Batch( - entityType, person, homeAddress, - workAddress, job, department, - compensation, bankAccounts); + entityType, uuid, companyUuid); } } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/BatchAction.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/BatchAction.java index d5c1b9c8e..b63182b91 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/BatchAction.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/BatchAction.java @@ -11,10 +11,10 @@ /** * BatchAction * - *

    The action to perform on the batch + *

    The action to perform on the batch. Only `cancel` is supported. */ public enum BatchAction { - CREATE("create"); + CANCEL("cancel"); @JsonValue private final String value; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteDepartmentRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteDepartmentRequest.java index 846245679..2196a6958 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteDepartmentRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteDepartmentRequest.java @@ -16,12 +16,6 @@ public class DeleteDepartmentRequest { - /** - * The UUID of the department - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=department_uuid") - private String departmentUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class DeleteDepartmentRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the department + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=department_uuid") + private String departmentUuid; + @JsonCreator public DeleteDepartmentRequest( - String departmentUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); + Optional xGustoAPIVersion, + String departmentUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.departmentUuid = departmentUuid; + Utils.checkNotNull(departmentUuid, "departmentUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.departmentUuid = departmentUuid; } public DeleteDepartmentRequest( String departmentUuid) { - this(departmentUuid, Optional.empty()); - } - - /** - * The UUID of the department - */ - @JsonIgnore - public String departmentUuid() { - return departmentUuid; + this(Optional.empty(), departmentUuid); } /** @@ -64,20 +56,19 @@ public Optional xGustoAPIVersion() { return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the department */ - public DeleteDepartmentRequest withDepartmentUuid(String departmentUuid) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); - this.departmentUuid = departmentUuid; - return this; + @JsonIgnore + public String departmentUuid() { + return departmentUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public DeleteDepartmentRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String departmentUuid; + private Builder() { // force use of static builder() method } - /** - * The UUID of the department - */ - public Builder departmentUuid(String departmentUuid) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); - this.departmentUuid = departmentUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String departmentUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public DeleteDepartmentRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public DeleteDepartmentRequestBuilder departmentUuid(String departmentUuid) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); - this.departmentUuid = departmentUuid; - return this; - } public DeleteDepartmentRequestBuilder xGustoAPIVersion(DeleteDepartmentHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public DeleteDepartmentRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion; + /** * The UUID of the company */ @@ -35,37 +43,40 @@ public class DeleteV1CompaniesCompanyIdPayrollsRequest { @SpeakeasyMetadata("queryParam:style=form,explode=true,name=async") private Optional async; - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; - @JsonCreator public DeleteV1CompaniesCompanyIdPayrollsRequest( + Optional xGustoAPIVersion, String companyId, String payrollId, - Optional async, - Optional xGustoAPIVersion) { + Optional async) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(companyId, "companyId"); Utils.checkNotNull(payrollId, "payrollId"); Utils.checkNotNull(async, "async"); - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; this.companyId = companyId; this.payrollId = payrollId; this.async = async; - this.xGustoAPIVersion = xGustoAPIVersion; } public DeleteV1CompaniesCompanyIdPayrollsRequest( String companyId, String payrollId) { - this(companyId, payrollId, Optional.empty(), + this(Optional.empty(), companyId, payrollId, Optional.empty()); } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + /** * The UUID of the company */ @@ -90,21 +101,33 @@ public Optional async() { return async; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional xGustoAPIVersion() { - return (Optional) xGustoAPIVersion; + public DeleteV1CompaniesCompanyIdPayrollsRequest withXGustoAPIVersion(DeleteV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; } - public static Builder builder() { - return new Builder(); - } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public DeleteV1CompaniesCompanyIdPayrollsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } /** * The UUID of the company @@ -143,29 +166,6 @@ public DeleteV1CompaniesCompanyIdPayrollsRequest withAsync(Optional asy return this; } - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public DeleteV1CompaniesCompanyIdPayrollsRequest withXGustoAPIVersion(DeleteV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); - return this; - } - - - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public DeleteV1CompaniesCompanyIdPayrollsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } - @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -176,44 +176,67 @@ public boolean equals(java.lang.Object o) { } DeleteV1CompaniesCompanyIdPayrollsRequest other = (DeleteV1CompaniesCompanyIdPayrollsRequest) o; return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.companyId, other.companyId) && Utils.enhancedDeepEquals(this.payrollId, other.payrollId) && - Utils.enhancedDeepEquals(this.async, other.async) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.async, other.async); } @Override public int hashCode() { return Utils.enhancedHash( - companyId, payrollId, async, - xGustoAPIVersion); + xGustoAPIVersion, companyId, payrollId, + async); } @Override public String toString() { return Utils.toString(DeleteV1CompaniesCompanyIdPayrollsRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, "companyId", companyId, "payrollId", payrollId, - "async", async, - "xGustoAPIVersion", xGustoAPIVersion); + "async", async); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { + private Optional xGustoAPIVersion; + private String companyId; private String payrollId; private Optional async = Optional.empty(); - private Optional xGustoAPIVersion; - private Builder() { // force use of static builder() method } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(DeleteV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + /** * The UUID of the company */ @@ -252,37 +275,14 @@ public Builder async(Optional async) { return this; } - - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public Builder xGustoAPIVersion(DeleteV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); - return this; - } - - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } - public DeleteV1CompaniesCompanyIdPayrollsRequest build() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } return new DeleteV1CompaniesCompanyIdPayrollsRequest( - companyId, payrollId, async, - xGustoAPIVersion); + xGustoAPIVersion, companyId, payrollId, + async); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1CompaniesCompanyIdPayrollsRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1CompaniesCompanyIdPayrollsRequestBuilder.java index 6a53fd3b3..bbb269503 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1CompaniesCompanyIdPayrollsRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1CompaniesCompanyIdPayrollsRequestBuilder.java @@ -17,19 +17,31 @@ public class DeleteV1CompaniesCompanyIdPayrollsRequestBuilder { - private String companyId; - private String payrollId; - private Optional async = Optional.empty(); private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String companyId; + private String payrollId; + private Optional async = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public DeleteV1CompaniesCompanyIdPayrollsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } + + public DeleteV1CompaniesCompanyIdPayrollsRequestBuilder xGustoAPIVersion(DeleteV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public DeleteV1CompaniesCompanyIdPayrollsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } public DeleteV1CompaniesCompanyIdPayrollsRequestBuilder companyId(String companyId) { Utils.checkNotNull(companyId, "companyId"); @@ -54,18 +66,6 @@ public DeleteV1CompaniesCompanyIdPayrollsRequestBuilder async(Optional this.async = async; return this; } - - public DeleteV1CompaniesCompanyIdPayrollsRequestBuilder xGustoAPIVersion(DeleteV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); - return this; - } - - public DeleteV1CompaniesCompanyIdPayrollsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } private DeleteV1CompaniesCompanyIdPayrollsRequest buildRequest() { @@ -73,10 +73,10 @@ private DeleteV1CompaniesCompanyIdPayrollsRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - DeleteV1CompaniesCompanyIdPayrollsRequest request = new DeleteV1CompaniesCompanyIdPayrollsRequest(companyId, + DeleteV1CompaniesCompanyIdPayrollsRequest request = new DeleteV1CompaniesCompanyIdPayrollsRequest(xGustoAPIVersion, + companyId, payrollId, - async, - xGustoAPIVersion); + async); return request; } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.java index 295e3ff43..a4110e909 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.java @@ -16,6 +16,14 @@ public class DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + /** * The UUID of the company */ @@ -28,47 +36,23 @@ public class DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest { @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=signatory_uuid") private String signatoryUuid; - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; - @JsonCreator public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest( + Optional xGustoAPIVersion, String companyUuid, - String signatoryUuid, - Optional xGustoAPIVersion) { + String signatoryUuid) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(signatoryUuid, "signatoryUuid"); - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; this.companyUuid = companyUuid; this.signatoryUuid = signatoryUuid; - this.xGustoAPIVersion = xGustoAPIVersion; } public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest( String companyUuid, String signatoryUuid) { - this(companyUuid, signatoryUuid, Optional.empty()); - } - - /** - * The UUID of the company - */ - @JsonIgnore - public String companyUuid() { - return companyUuid; - } - - /** - * The UUID of the signatory - */ - @JsonIgnore - public String signatoryUuid() { - return signatoryUuid; + this(Optional.empty(), companyUuid, signatoryUuid); } /** @@ -82,29 +66,27 @@ public Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the company */ - public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest withCompanyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; + @JsonIgnore + public String companyUuid() { + return companyUuid; } /** * The UUID of the signatory */ - public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest withSignatoryUuid(String signatoryUuid) { - Utils.checkNotNull(signatoryUuid, "signatoryUuid"); - this.signatoryUuid = signatoryUuid; - return this; + @JsonIgnore + public String signatoryUuid() { + return signatoryUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -128,6 +110,24 @@ public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest withXGustoAPI return this; } + /** + * The UUID of the company + */ + public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + /** + * The UUID of the signatory + */ + public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest withSignatoryUuid(String signatoryUuid) { + Utils.checkNotNull(signatoryUuid, "signatoryUuid"); + this.signatoryUuid = signatoryUuid; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -138,59 +138,39 @@ public boolean equals(java.lang.Object o) { } DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest other = (DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest) o; return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && - Utils.enhancedDeepEquals(this.signatoryUuid, other.signatoryUuid) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.signatoryUuid, other.signatoryUuid); } @Override public int hashCode() { return Utils.enhancedHash( - companyUuid, signatoryUuid, xGustoAPIVersion); + xGustoAPIVersion, companyUuid, signatoryUuid); } @Override public String toString() { return Utils.toString(DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, "companyUuid", companyUuid, - "signatoryUuid", signatoryUuid, - "xGustoAPIVersion", xGustoAPIVersion); + "signatoryUuid", signatoryUuid); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { + private Optional xGustoAPIVersion; + private String companyUuid; private String signatoryUuid; - private Optional xGustoAPIVersion; - private Builder() { // force use of static builder() method } - /** - * The UUID of the company - */ - public Builder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - - /** - * The UUID of the signatory - */ - public Builder signatoryUuid(String signatoryUuid) { - Utils.checkNotNull(signatoryUuid, "signatoryUuid"); - this.signatoryUuid = signatoryUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -213,13 +193,33 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String companyUuid; + private String signatoryUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder signatoryUuid(String signatoryUuid) { - Utils.checkNotNull(signatoryUuid, "signatoryUuid"); - this.signatoryUuid = signatoryUuid; - return this; - } public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder xGustoAPIVersion(DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -53,15 +41,27 @@ public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder xGusto return this; } + public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder signatoryUuid(String signatoryUuid) { + Utils.checkNotNull(signatoryUuid, "signatoryUuid"); + this.signatoryUuid = signatoryUuid; + return this; + } + private DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest request = new DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest(companyUuid, - signatoryUuid, - xGustoAPIVersion); + DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest request = new DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest(xGustoAPIVersion, + companyUuid, + signatoryUuid); return request; } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.java index 8ad753261..7f9c699c5 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.java @@ -16,12 +16,6 @@ public class DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest { - /** - * The UUID of the contractor payment group - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=contractor_payment_group_uuid") - private String contractorPaymentGroupUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the contractor payment group + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=contractor_payment_group_uuid") + private String contractorPaymentGroupUuid; + @JsonCreator public DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest( - String contractorPaymentGroupUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); + Optional xGustoAPIVersion, + String contractorPaymentGroupUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; + Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; } public DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest( String contractorPaymentGroupUuid) { - this(contractorPaymentGroupUuid, Optional.empty()); - } - - /** - * The UUID of the contractor payment group - */ - @JsonIgnore - public String contractorPaymentGroupUuid() { - return contractorPaymentGroupUuid; + this(Optional.empty(), contractorPaymentGroupUuid); } /** @@ -64,20 +56,19 @@ public Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the contractor payment group */ - public DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest withContractorPaymentGroupUuid(String contractorPaymentGroupUuid) { - Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); - this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; - return this; + @JsonIgnore + public String contractorPaymentGroupUuid() { + return contractorPaymentGroupUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest withXGusto return this; } + /** + * The UUID of the contractor payment group + */ + public DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest withContractorPaymentGroupUuid(String contractorPaymentGroupUuid) { + Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); + this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -111,45 +111,35 @@ public boolean equals(java.lang.Object o) { } DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest other = (DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest) o; return - Utils.enhancedDeepEquals(this.contractorPaymentGroupUuid, other.contractorPaymentGroupUuid) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.contractorPaymentGroupUuid, other.contractorPaymentGroupUuid); } @Override public int hashCode() { return Utils.enhancedHash( - contractorPaymentGroupUuid, xGustoAPIVersion); + xGustoAPIVersion, contractorPaymentGroupUuid); } @Override public String toString() { return Utils.toString(DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.class, - "contractorPaymentGroupUuid", contractorPaymentGroupUuid, - "xGustoAPIVersion", xGustoAPIVersion); + "xGustoAPIVersion", xGustoAPIVersion, + "contractorPaymentGroupUuid", contractorPaymentGroupUuid); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String contractorPaymentGroupUuid; - private Optional xGustoAPIVersion; + private String contractorPaymentGroupUuid; + private Builder() { // force use of static builder() method } - /** - * The UUID of the contractor payment group - */ - public Builder contractorPaymentGroupUuid(String contractorPaymentGroupUuid) { - Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); - this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String contractorPaymentGroupUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder contractorPaymentGroupUuid(String contractorPaymentGroupUuid) { - Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); - this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; - return this; - } public DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder xGustoAPIVersion(DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder xGu return this; } + public DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder contractorPaymentGroupUuid(String contractorPaymentGroupUuid) { + Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); + this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; + return this; + } + private DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest request = new DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest(contractorPaymentGroupUuid, - xGustoAPIVersion); + DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest request = new DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest(xGustoAPIVersion, + contractorPaymentGroupUuid); return request; } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.java new file mode 100644 index 000000000..9837fde58 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion + * + *

    Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ +public enum DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion { + TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15("2025-11-15"); + + @JsonValue + private final String value; + + DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion o: DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest.java new file mode 100644 index 000000000..6b2e244cd --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest.java @@ -0,0 +1,191 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2025_11_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2025_11_15.utils.SpeakeasyMetadata; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + + /** + * The UUID of the contractor + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=contractor_uuid") + private String contractorUuid; + + @JsonCreator + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest( + Optional xGustoAPIVersion, + String contractorUuid) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.xGustoAPIVersion = xGustoAPIVersion; + this.contractorUuid = contractorUuid; + } + + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest( + String contractorUuid) { + this(Optional.empty(), contractorUuid); + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + + /** + * The UUID of the contractor + */ + @JsonIgnore + public String contractorUuid() { + return contractorUuid; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest withXGustoAPIVersion(DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + /** + * The UUID of the contractor + */ + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest withContractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest other = (DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest) o; + return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.contractorUuid, other.contractorUuid); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + xGustoAPIVersion, contractorUuid); + } + + @Override + public String toString() { + return Utils.toString(DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, + "contractorUuid", contractorUuid); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional xGustoAPIVersion; + + private String contractorUuid; + + private Builder() { + // force use of static builder() method + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + + /** + * The UUID of the contractor + */ + public Builder contractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest build() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + return new DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest( + xGustoAPIVersion, contractorUuid); + } + + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "X-Gusto-API-Version", + "\"2025-11-15\"", + new TypeReference>() {}); + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder.java new file mode 100644 index 000000000..5ede26633 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder.java @@ -0,0 +1,75 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.RequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2025_11_15.SDKConfiguration; +import com.gusto.embedded_api_v_2025_11_15.operations.DeleteV1ContractorsContractorUuidMemberPortalInvitations; +import com.gusto.embedded_api_v_2025_11_15.utils.Headers; +import com.gusto.embedded_api_v_2025_11_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.String; +import java.util.Optional; + +public class DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder { + + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2025-11-15\"", + new TypeReference>() {}); + private String contractorUuid; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder xGustoAPIVersion(DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder contractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + + + private DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest request = new DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest(xGustoAPIVersion, + contractorUuid); + + return request; + } + + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse call() { + + RequestOperation operation + = new DeleteV1ContractorsContractorUuidMemberPortalInvitations.Sync(sdkConfiguration, _headers); + DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest request = buildRequest(); + + return operation.handleResponse(operation.doRequest(request)); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2025-11-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse.java new file mode 100644 index 000000000..6d65e1c64 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse.java @@ -0,0 +1,181 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2025_11_15.utils.Response; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.io.InputStream; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.net.http.HttpResponse; + + +public class DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse implements Response { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + @JsonCreator + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse other = (DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse); + } + + @Override + public String toString() { + return Utils.toString(DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse build() { + + return new DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse( + contentType, statusCode, rawResponse); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1ContractorsContractorUuidRehireRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1ContractorsContractorUuidRehireRequest.java index e3ff53fdb..dd8567b25 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1ContractorsContractorUuidRehireRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1ContractorsContractorUuidRehireRequest.java @@ -16,12 +16,6 @@ public class DeleteV1ContractorsContractorUuidRehireRequest { - /** - * The UUID of the contractor - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=contractor_uuid") - private String contractorUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class DeleteV1ContractorsContractorUuidRehireRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the contractor + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=contractor_uuid") + private String contractorUuid; + @JsonCreator public DeleteV1ContractorsContractorUuidRehireRequest( - String contractorUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); + Optional xGustoAPIVersion, + String contractorUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.contractorUuid = contractorUuid; + Utils.checkNotNull(contractorUuid, "contractorUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.contractorUuid = contractorUuid; } public DeleteV1ContractorsContractorUuidRehireRequest( String contractorUuid) { - this(contractorUuid, Optional.empty()); - } - - /** - * The UUID of the contractor - */ - @JsonIgnore - public String contractorUuid() { - return contractorUuid; + this(Optional.empty(), contractorUuid); } /** @@ -64,20 +56,19 @@ public Optional x return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the contractor */ - public DeleteV1ContractorsContractorUuidRehireRequest withContractorUuid(String contractorUuid) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); - this.contractorUuid = contractorUuid; - return this; + @JsonIgnore + public String contractorUuid() { + return contractorUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public DeleteV1ContractorsContractorUuidRehireRequest withXGustoAPIVersion(Optio return this; } + /** + * The UUID of the contractor + */ + public DeleteV1ContractorsContractorUuidRehireRequest withContractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -111,45 +111,35 @@ public boolean equals(java.lang.Object o) { } DeleteV1ContractorsContractorUuidRehireRequest other = (DeleteV1ContractorsContractorUuidRehireRequest) o; return - Utils.enhancedDeepEquals(this.contractorUuid, other.contractorUuid) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.contractorUuid, other.contractorUuid); } @Override public int hashCode() { return Utils.enhancedHash( - contractorUuid, xGustoAPIVersion); + xGustoAPIVersion, contractorUuid); } @Override public String toString() { return Utils.toString(DeleteV1ContractorsContractorUuidRehireRequest.class, - "contractorUuid", contractorUuid, - "xGustoAPIVersion", xGustoAPIVersion); + "xGustoAPIVersion", xGustoAPIVersion, + "contractorUuid", contractorUuid); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String contractorUuid; - private Optional xGustoAPIVersion; + private String contractorUuid; + private Builder() { // force use of static builder() method } - /** - * The UUID of the contractor - */ - public Builder contractorUuid(String contractorUuid) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); - this.contractorUuid = contractorUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String contractorUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public DeleteV1ContractorsContractorUuidRehireRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public DeleteV1ContractorsContractorUuidRehireRequestBuilder contractorUuid(String contractorUuid) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); - this.contractorUuid = contractorUuid; - return this; - } public DeleteV1ContractorsContractorUuidRehireRequestBuilder xGustoAPIVersion(DeleteV1ContractorsContractorUuidRehireHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public DeleteV1ContractorsContractorUuidRehireRequestBuilder xGustoAPIVersion(Op return this; } + public DeleteV1ContractorsContractorUuidRehireRequestBuilder contractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + private DeleteV1ContractorsContractorUuidRehireRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - DeleteV1ContractorsContractorUuidRehireRequest request = new DeleteV1ContractorsContractorUuidRehireRequest(contractorUuid, - xGustoAPIVersion); + DeleteV1ContractorsContractorUuidRehireRequest request = new DeleteV1ContractorsContractorUuidRehireRequest(xGustoAPIVersion, + contractorUuid); return request; } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1ContractorsContractorUuidTerminationRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1ContractorsContractorUuidTerminationRequest.java index 8fef115d0..0a4695813 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1ContractorsContractorUuidTerminationRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1ContractorsContractorUuidTerminationRequest.java @@ -16,12 +16,6 @@ public class DeleteV1ContractorsContractorUuidTerminationRequest { - /** - * The UUID of the contractor - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=contractor_uuid") - private String contractorUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class DeleteV1ContractorsContractorUuidTerminationRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the contractor + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=contractor_uuid") + private String contractorUuid; + @JsonCreator public DeleteV1ContractorsContractorUuidTerminationRequest( - String contractorUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); + Optional xGustoAPIVersion, + String contractorUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.contractorUuid = contractorUuid; + Utils.checkNotNull(contractorUuid, "contractorUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.contractorUuid = contractorUuid; } public DeleteV1ContractorsContractorUuidTerminationRequest( String contractorUuid) { - this(contractorUuid, Optional.empty()); - } - - /** - * The UUID of the contractor - */ - @JsonIgnore - public String contractorUuid() { - return contractorUuid; + this(Optional.empty(), contractorUuid); } /** @@ -64,20 +56,19 @@ public Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the contractor */ - public DeleteV1ContractorsContractorUuidTerminationRequest withContractorUuid(String contractorUuid) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); - this.contractorUuid = contractorUuid; - return this; + @JsonIgnore + public String contractorUuid() { + return contractorUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public DeleteV1ContractorsContractorUuidTerminationRequest withXGustoAPIVersion( return this; } + /** + * The UUID of the contractor + */ + public DeleteV1ContractorsContractorUuidTerminationRequest withContractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -111,45 +111,35 @@ public boolean equals(java.lang.Object o) { } DeleteV1ContractorsContractorUuidTerminationRequest other = (DeleteV1ContractorsContractorUuidTerminationRequest) o; return - Utils.enhancedDeepEquals(this.contractorUuid, other.contractorUuid) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.contractorUuid, other.contractorUuid); } @Override public int hashCode() { return Utils.enhancedHash( - contractorUuid, xGustoAPIVersion); + xGustoAPIVersion, contractorUuid); } @Override public String toString() { return Utils.toString(DeleteV1ContractorsContractorUuidTerminationRequest.class, - "contractorUuid", contractorUuid, - "xGustoAPIVersion", xGustoAPIVersion); + "xGustoAPIVersion", xGustoAPIVersion, + "contractorUuid", contractorUuid); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String contractorUuid; - private Optional xGustoAPIVersion; + private String contractorUuid; + private Builder() { // force use of static builder() method } - /** - * The UUID of the contractor - */ - public Builder contractorUuid(String contractorUuid) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); - this.contractorUuid = contractorUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String contractorUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public DeleteV1ContractorsContractorUuidTerminationRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public DeleteV1ContractorsContractorUuidTerminationRequestBuilder contractorUuid(String contractorUuid) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); - this.contractorUuid = contractorUuid; - return this; - } public DeleteV1ContractorsContractorUuidTerminationRequestBuilder xGustoAPIVersion(DeleteV1ContractorsContractorUuidTerminationHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public DeleteV1ContractorsContractorUuidTerminationRequestBuilder xGustoAPIVersi return this; } + public DeleteV1ContractorsContractorUuidTerminationRequestBuilder contractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + private DeleteV1ContractorsContractorUuidTerminationRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - DeleteV1ContractorsContractorUuidTerminationRequest request = new DeleteV1ContractorsContractorUuidTerminationRequest(contractorUuid, - xGustoAPIVersion); + DeleteV1ContractorsContractorUuidTerminationRequest request = new DeleteV1ContractorsContractorUuidTerminationRequest(xGustoAPIVersion, + contractorUuid); return request; } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.java new file mode 100644 index 000000000..27c0bcba6 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion + * + *

    Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ +public enum DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion { + TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15("2025-11-15"); + + @JsonValue + private final String value; + + DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion o: DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest.java new file mode 100644 index 000000000..51219368a --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest.java @@ -0,0 +1,191 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2025_11_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2025_11_15.utils.SpeakeasyMetadata; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + + /** + * The UUID of the employee + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=employee_id") + private String employeeId; + + @JsonCreator + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest( + Optional xGustoAPIVersion, + String employeeId) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(employeeId, "employeeId"); + this.xGustoAPIVersion = xGustoAPIVersion; + this.employeeId = employeeId; + } + + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest( + String employeeId) { + this(Optional.empty(), employeeId); + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + + /** + * The UUID of the employee + */ + @JsonIgnore + public String employeeId() { + return employeeId; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest withXGustoAPIVersion(DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + /** + * The UUID of the employee + */ + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest withEmployeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest other = (DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest) o; + return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.employeeId, other.employeeId); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + xGustoAPIVersion, employeeId); + } + + @Override + public String toString() { + return Utils.toString(DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, + "employeeId", employeeId); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional xGustoAPIVersion; + + private String employeeId; + + private Builder() { + // force use of static builder() method + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + + /** + * The UUID of the employee + */ + public Builder employeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest build() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + return new DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest( + xGustoAPIVersion, employeeId); + } + + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "X-Gusto-API-Version", + "\"2025-11-15\"", + new TypeReference>() {}); + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java new file mode 100644 index 000000000..eec5a984e --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java @@ -0,0 +1,75 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.RequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2025_11_15.SDKConfiguration; +import com.gusto.embedded_api_v_2025_11_15.operations.DeleteV1EmployeesEmployeeIdMemberPortalInvitations; +import com.gusto.embedded_api_v_2025_11_15.utils.Headers; +import com.gusto.embedded_api_v_2025_11_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.String; +import java.util.Optional; + +public class DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder { + + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2025-11-15\"", + new TypeReference>() {}); + private String employeeId; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder xGustoAPIVersion(DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder employeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + + + private DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest request = new DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest(xGustoAPIVersion, + employeeId); + + return request; + } + + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse call() { + + RequestOperation operation + = new DeleteV1EmployeesEmployeeIdMemberPortalInvitations.Sync(sdkConfiguration, _headers); + DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest request = buildRequest(); + + return operation.handleResponse(operation.doRequest(request)); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2025-11-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java new file mode 100644 index 000000000..0f9963a77 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java @@ -0,0 +1,181 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2025_11_15.utils.Response; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.io.InputStream; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.net.http.HttpResponse; + + +public class DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse implements Response { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + @JsonCreator + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse other = (DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse); + } + + @Override + public String toString() { + return Utils.toString(DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse build() { + + return new DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse( + contentType, statusCode, rawResponse); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1JobsJobIdRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1JobsJobIdRequest.java index 727aa2088..735de4cc8 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1JobsJobIdRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/DeleteV1JobsJobIdRequest.java @@ -16,12 +16,6 @@ public class DeleteV1JobsJobIdRequest { - /** - * The UUID of the job - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=job_id") - private String jobId; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class DeleteV1JobsJobIdRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the job + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=job_id") + private String jobId; + @JsonCreator public DeleteV1JobsJobIdRequest( - String jobId, - Optional xGustoAPIVersion) { - Utils.checkNotNull(jobId, "jobId"); + Optional xGustoAPIVersion, + String jobId) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.jobId = jobId; + Utils.checkNotNull(jobId, "jobId"); this.xGustoAPIVersion = xGustoAPIVersion; + this.jobId = jobId; } public DeleteV1JobsJobIdRequest( String jobId) { - this(jobId, Optional.empty()); - } - - /** - * The UUID of the job - */ - @JsonIgnore - public String jobId() { - return jobId; + this(Optional.empty(), jobId); } /** @@ -64,20 +56,19 @@ public Optional xGustoAPIVersion() { return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the job */ - public DeleteV1JobsJobIdRequest withJobId(String jobId) { - Utils.checkNotNull(jobId, "jobId"); - this.jobId = jobId; - return this; + @JsonIgnore + public String jobId() { + return jobId; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public DeleteV1JobsJobIdRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String jobId; + private Builder() { // force use of static builder() method } - /** - * The UUID of the job - */ - public Builder jobId(String jobId) { - Utils.checkNotNull(jobId, "jobId"); - this.jobId = jobId; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String jobId; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public DeleteV1JobsJobIdRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public DeleteV1JobsJobIdRequestBuilder jobId(String jobId) { - Utils.checkNotNull(jobId, "jobId"); - this.jobId = jobId; - return this; - } public DeleteV1JobsJobIdRequestBuilder xGustoAPIVersion(DeleteV1JobsJobIdHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public DeleteV1JobsJobIdRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion; + /** + * The webhook subscription UUID. + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=webhook_subscription_uuid") + private String webhookSubscriptionUuid; + @JsonCreator public DeleteV1WebhookSubscriptionUuidRequest( - String webhookSubscriptionUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); + Optional xGustoAPIVersion, + String webhookSubscriptionUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; + Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.webhookSubscriptionUuid = webhookSubscriptionUuid; } public DeleteV1WebhookSubscriptionUuidRequest( String webhookSubscriptionUuid) { - this(webhookSubscriptionUuid, Optional.empty()); - } - - /** - * The webhook subscription UUID. - */ - @JsonIgnore - public String webhookSubscriptionUuid() { - return webhookSubscriptionUuid; + this(Optional.empty(), webhookSubscriptionUuid); } /** @@ -64,20 +56,19 @@ public Optional xGustoAPI return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The webhook subscription UUID. */ - public DeleteV1WebhookSubscriptionUuidRequest withWebhookSubscriptionUuid(String webhookSubscriptionUuid) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; - return this; + @JsonIgnore + public String webhookSubscriptionUuid() { + return webhookSubscriptionUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public DeleteV1WebhookSubscriptionUuidRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String webhookSubscriptionUuid; + private Builder() { // force use of static builder() method } - /** - * The webhook subscription UUID. - */ - public Builder webhookSubscriptionUuid(String webhookSubscriptionUuid) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String webhookSubscriptionUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -34,12 +34,6 @@ public DeleteV1WebhookSubscriptionUuidRequestBuilder security(DeleteV1WebhookSub this.security = security; return this; } - - public DeleteV1WebhookSubscriptionUuidRequestBuilder webhookSubscriptionUuid(String webhookSubscriptionUuid) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; - return this; - } public DeleteV1WebhookSubscriptionUuidRequestBuilder xGustoAPIVersion(DeleteV1WebhookSubscriptionUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -53,14 +47,20 @@ public DeleteV1WebhookSubscriptionUuidRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion; + /** + * The UUID of the work address + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=work_address_uuid") + private String workAddressUuid; + @JsonCreator public DeleteV1WorkAddressesWorkAddressUuidRequest( - String workAddressUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(workAddressUuid, "workAddressUuid"); + Optional xGustoAPIVersion, + String workAddressUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.workAddressUuid = workAddressUuid; + Utils.checkNotNull(workAddressUuid, "workAddressUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.workAddressUuid = workAddressUuid; } public DeleteV1WorkAddressesWorkAddressUuidRequest( String workAddressUuid) { - this(workAddressUuid, Optional.empty()); - } - - /** - * The UUID of the work address - */ - @JsonIgnore - public String workAddressUuid() { - return workAddressUuid; + this(Optional.empty(), workAddressUuid); } /** @@ -64,20 +56,19 @@ public Optional xGus return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the work address */ - public DeleteV1WorkAddressesWorkAddressUuidRequest withWorkAddressUuid(String workAddressUuid) { - Utils.checkNotNull(workAddressUuid, "workAddressUuid"); - this.workAddressUuid = workAddressUuid; - return this; + @JsonIgnore + public String workAddressUuid() { + return workAddressUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public DeleteV1WorkAddressesWorkAddressUuidRequest withXGustoAPIVersion(Optional return this; } + /** + * The UUID of the work address + */ + public DeleteV1WorkAddressesWorkAddressUuidRequest withWorkAddressUuid(String workAddressUuid) { + Utils.checkNotNull(workAddressUuid, "workAddressUuid"); + this.workAddressUuid = workAddressUuid; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -111,45 +111,35 @@ public boolean equals(java.lang.Object o) { } DeleteV1WorkAddressesWorkAddressUuidRequest other = (DeleteV1WorkAddressesWorkAddressUuidRequest) o; return - Utils.enhancedDeepEquals(this.workAddressUuid, other.workAddressUuid) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.workAddressUuid, other.workAddressUuid); } @Override public int hashCode() { return Utils.enhancedHash( - workAddressUuid, xGustoAPIVersion); + xGustoAPIVersion, workAddressUuid); } @Override public String toString() { return Utils.toString(DeleteV1WorkAddressesWorkAddressUuidRequest.class, - "workAddressUuid", workAddressUuid, - "xGustoAPIVersion", xGustoAPIVersion); + "xGustoAPIVersion", xGustoAPIVersion, + "workAddressUuid", workAddressUuid); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String workAddressUuid; - private Optional xGustoAPIVersion; + private String workAddressUuid; + private Builder() { // force use of static builder() method } - /** - * The UUID of the work address - */ - public Builder workAddressUuid(String workAddressUuid) { - Utils.checkNotNull(workAddressUuid, "workAddressUuid"); - this.workAddressUuid = workAddressUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String workAddressUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public DeleteV1WorkAddressesWorkAddressUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public DeleteV1WorkAddressesWorkAddressUuidRequestBuilder workAddressUuid(String workAddressUuid) { - Utils.checkNotNull(workAddressUuid, "workAddressUuid"); - this.workAddressUuid = workAddressUuid; - return this; - } public DeleteV1WorkAddressesWorkAddressUuidRequestBuilder xGustoAPIVersion(DeleteV1WorkAddressesWorkAddressUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public DeleteV1WorkAddressesWorkAddressUuidRequestBuilder xGustoAPIVersion(Optio return this; } + public DeleteV1WorkAddressesWorkAddressUuidRequestBuilder workAddressUuid(String workAddressUuid) { + Utils.checkNotNull(workAddressUuid, "workAddressUuid"); + this.workAddressUuid = workAddressUuid; + return this; + } + private DeleteV1WorkAddressesWorkAddressUuidRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - DeleteV1WorkAddressesWorkAddressUuidRequest request = new DeleteV1WorkAddressesWorkAddressUuidRequest(workAddressUuid, - xGustoAPIVersion); + DeleteV1WorkAddressesWorkAddressUuidRequest request = new DeleteV1WorkAddressesWorkAddressUuidRequest(xGustoAPIVersion, + workAddressUuid); return request; } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/Employees.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/Employees.java index d2451bf77..c8bf74b04 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/Employees.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/Employees.java @@ -11,83 +11,46 @@ import com.gusto.embedded_api_v_2025_11_15.utils.Utils; import java.lang.Override; import java.lang.String; -import org.openapitools.jackson.nullable.JsonNullable; +import java.util.Optional; public class Employees { - /** - * The UUID of the employee - */ - @JsonProperty("uuid") - private String uuid; - /** - * The starting balance for the employee - */ @JsonInclude(Include.NON_ABSENT) - @JsonProperty("balance") - private JsonNullable balance; + @JsonProperty("uuid") + private Optional uuid; @JsonCreator public Employees( - @JsonProperty("uuid") String uuid, - @JsonProperty("balance") JsonNullable balance) { + @JsonProperty("uuid") Optional uuid) { Utils.checkNotNull(uuid, "uuid"); - Utils.checkNotNull(balance, "balance"); this.uuid = uuid; - this.balance = balance; } - public Employees( - String uuid) { - this(uuid, JsonNullable.undefined()); + public Employees() { + this(Optional.empty()); } - /** - * The UUID of the employee - */ @JsonIgnore - public String uuid() { + public Optional uuid() { return uuid; } - /** - * The starting balance for the employee - */ - @JsonIgnore - public JsonNullable balance() { - return balance; - } - public static Builder builder() { return new Builder(); } - /** - * The UUID of the employee - */ public Employees withUuid(String uuid) { Utils.checkNotNull(uuid, "uuid"); - this.uuid = uuid; + this.uuid = Optional.ofNullable(uuid); return this; } - /** - * The starting balance for the employee - */ - public Employees withBalance(String balance) { - Utils.checkNotNull(balance, "balance"); - this.balance = JsonNullable.of(balance); - return this; - } - /** - * The starting balance for the employee - */ - public Employees withBalance(JsonNullable balance) { - Utils.checkNotNull(balance, "balance"); - this.balance = balance; + public Employees withUuid(Optional uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; return this; } @@ -101,67 +64,47 @@ public boolean equals(java.lang.Object o) { } Employees other = (Employees) o; return - Utils.enhancedDeepEquals(this.uuid, other.uuid) && - Utils.enhancedDeepEquals(this.balance, other.balance); + Utils.enhancedDeepEquals(this.uuid, other.uuid); } @Override public int hashCode() { return Utils.enhancedHash( - uuid, balance); + uuid); } @Override public String toString() { return Utils.toString(Employees.class, - "uuid", uuid, - "balance", balance); + "uuid", uuid); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String uuid; - - private JsonNullable balance = JsonNullable.undefined(); + private Optional uuid = Optional.empty(); private Builder() { // force use of static builder() method } - /** - * The UUID of the employee - */ public Builder uuid(String uuid) { Utils.checkNotNull(uuid, "uuid"); - this.uuid = uuid; + this.uuid = Optional.ofNullable(uuid); return this; } - - /** - * The starting balance for the employee - */ - public Builder balance(String balance) { - Utils.checkNotNull(balance, "balance"); - this.balance = JsonNullable.of(balance); - return this; - } - - /** - * The starting balance for the employee - */ - public Builder balance(JsonNullable balance) { - Utils.checkNotNull(balance, "balance"); - this.balance = balance; + public Builder uuid(Optional uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; return this; } public Employees build() { return new Employees( - uuid, balance); + uuid); } } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/EntityType.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/EntityType.java index f3224136f..8268331ab 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/EntityType.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/EntityType.java @@ -11,10 +11,10 @@ /** * EntityType * - *

    The type of entity to create + *

    The type of entity to act on. */ public enum EntityType { - EMPLOYEE("employee"); + PAYROLL("payroll"); @JsonValue private final String value; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetAchTransactionsRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetAchTransactionsRequest.java index 063e87f89..bef46f0e0 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetAchTransactionsRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetAchTransactionsRequest.java @@ -23,7 +23,7 @@ public class GetAchTransactionsRequest { * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; + private Optional xGustoAPIVersion; /** * The UUID of the company @@ -72,7 +72,7 @@ public class GetAchTransactionsRequest { @JsonCreator public GetAchTransactionsRequest( - Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String companyUuid, Optional contractorPaymentUuid, Optional payrollUuid, @@ -112,8 +112,8 @@ public GetAchTransactionsRequest( */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional xGustoAPIVersion() { - return (Optional) xGustoAPIVersion; + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; } /** @@ -185,7 +185,7 @@ public static Builder builder() { * application's [minimum API * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - public GetAchTransactionsRequest withXGustoAPIVersion(GetAchTransactionsHeaderXGustoAPIVersion xGustoAPIVersion) { + public GetAchTransactionsRequest withXGustoAPIVersion(XGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); return this; @@ -197,7 +197,7 @@ public GetAchTransactionsRequest withXGustoAPIVersion(GetAchTransactionsHeaderXG * application's [minimum API * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - public GetAchTransactionsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + public GetAchTransactionsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); this.xGustoAPIVersion = xGustoAPIVersion; return this; @@ -376,7 +376,7 @@ public String toString() { @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private Optional xGustoAPIVersion; + private Optional xGustoAPIVersion; private String companyUuid; @@ -402,7 +402,7 @@ private Builder() { * application's [minimum API * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - public Builder xGustoAPIVersion(GetAchTransactionsHeaderXGustoAPIVersion xGustoAPIVersion) { + public Builder xGustoAPIVersion(XGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); return this; @@ -413,7 +413,7 @@ public Builder xGustoAPIVersion(GetAchTransactionsHeaderXGustoAPIVersion xGustoA * application's [minimum API * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); this.xGustoAPIVersion = xGustoAPIVersion; return this; @@ -561,10 +561,10 @@ public GetAchTransactionsRequest build() { } - private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = new LazySingletonValue<>( "X-Gusto-API-Version", "\"2025-11-15\"", - new TypeReference>() {}); + new TypeReference>() {}); } } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetCompaniesCompanyUuidWireInRequestUuidRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetCompaniesCompanyUuidWireInRequestUuidRequest.java index b0c68d625..7ed0a5ebd 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetCompaniesCompanyUuidWireInRequestUuidRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetCompaniesCompanyUuidWireInRequestUuidRequest.java @@ -17,12 +17,6 @@ public class GetCompaniesCompanyUuidWireInRequestUuidRequest { - /** - * The UUID of the company - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") - private String companyUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -31,6 +25,12 @@ public class GetCompaniesCompanyUuidWireInRequestUuidRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") + private String companyUuid; + /** * The page that is requested. When unspecified, will load all objects unless endpoint forces * pagination. @@ -46,34 +46,26 @@ public class GetCompaniesCompanyUuidWireInRequestUuidRequest { @JsonCreator public GetCompaniesCompanyUuidWireInRequestUuidRequest( - String companyUuid, Optional xGustoAPIVersion, + String companyUuid, Optional page, Optional per) { - Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(page, "page"); Utils.checkNotNull(per, "per"); - this.companyUuid = companyUuid; this.xGustoAPIVersion = xGustoAPIVersion; + this.companyUuid = companyUuid; this.page = page; this.per = per; } public GetCompaniesCompanyUuidWireInRequestUuidRequest( String companyUuid) { - this(companyUuid, Optional.empty(), Optional.empty(), + this(Optional.empty(), companyUuid, Optional.empty(), Optional.empty()); } - /** - * The UUID of the company - */ - @JsonIgnore - public String companyUuid() { - return companyUuid; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -85,6 +77,14 @@ public Optional return (Optional) xGustoAPIVersion; } + /** + * The UUID of the company + */ + @JsonIgnore + public String companyUuid() { + return companyUuid; + } + /** * The page that is requested. When unspecified, will load all objects unless endpoint forces * pagination. @@ -107,15 +107,6 @@ public static Builder builder() { } - /** - * The UUID of the company - */ - public GetCompaniesCompanyUuidWireInRequestUuidRequest withCompanyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -139,6 +130,15 @@ public GetCompaniesCompanyUuidWireInRequestUuidRequest withXGustoAPIVersion(Opti return this; } + /** + * The UUID of the company + */ + public GetCompaniesCompanyUuidWireInRequestUuidRequest withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + /** * The page that is requested. When unspecified, will load all objects unless endpoint forces * pagination. @@ -189,8 +189,8 @@ public boolean equals(java.lang.Object o) { } GetCompaniesCompanyUuidWireInRequestUuidRequest other = (GetCompaniesCompanyUuidWireInRequestUuidRequest) o; return - Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && Utils.enhancedDeepEquals(this.page, other.page) && Utils.enhancedDeepEquals(this.per, other.per); } @@ -198,15 +198,15 @@ public boolean equals(java.lang.Object o) { @Override public int hashCode() { return Utils.enhancedHash( - companyUuid, xGustoAPIVersion, page, + xGustoAPIVersion, companyUuid, page, per); } @Override public String toString() { return Utils.toString(GetCompaniesCompanyUuidWireInRequestUuidRequest.class, - "companyUuid", companyUuid, "xGustoAPIVersion", xGustoAPIVersion, + "companyUuid", companyUuid, "page", page, "per", per); } @@ -214,10 +214,10 @@ public String toString() { @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String companyUuid; - private Optional xGustoAPIVersion; + private String companyUuid; + private Optional page = Optional.empty(); private Optional per = Optional.empty(); @@ -227,16 +227,6 @@ private Builder() { } - /** - * The UUID of the company - */ - public Builder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -260,6 +250,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String companyUuid; private Optional page = Optional.empty(); private Optional per = Optional.empty(); private final SDKConfiguration sdkConfiguration; @@ -30,12 +30,6 @@ public class GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder { public GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder xGustoAPIVersion(GetCompaniesCompanyUuidWireInRequestUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -48,6 +42,12 @@ public GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder xGustoAPIVersion(O this.xGustoAPIVersion = xGustoAPIVersion; return this; } + + public GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } public GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder page(long page) { Utils.checkNotNull(page, "page"); @@ -79,8 +79,8 @@ private GetCompaniesCompanyUuidWireInRequestUuidRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetCompaniesCompanyUuidWireInRequestUuidRequest request = new GetCompaniesCompanyUuidWireInRequestUuidRequest(companyUuid, - xGustoAPIVersion, + GetCompaniesCompanyUuidWireInRequestUuidRequest request = new GetCompaniesCompanyUuidWireInRequestUuidRequest(xGustoAPIVersion, + companyUuid, page, per); diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetCompaniesDepartmentsRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetCompaniesDepartmentsRequest.java index 21b685a03..c11ea9342 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetCompaniesDepartmentsRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetCompaniesDepartmentsRequest.java @@ -16,12 +16,6 @@ public class GetCompaniesDepartmentsRequest { - /** - * The UUID of the company - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") - private String companyUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class GetCompaniesDepartmentsRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") + private String companyUuid; + @JsonCreator public GetCompaniesDepartmentsRequest( - String companyUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(companyUuid, "companyUuid"); + Optional xGustoAPIVersion, + String companyUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.companyUuid = companyUuid; + Utils.checkNotNull(companyUuid, "companyUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.companyUuid = companyUuid; } public GetCompaniesDepartmentsRequest( String companyUuid) { - this(companyUuid, Optional.empty()); - } - - /** - * The UUID of the company - */ - @JsonIgnore - public String companyUuid() { - return companyUuid; + this(Optional.empty(), companyUuid); } /** @@ -64,20 +56,19 @@ public Optional xGustoAPIVersion( return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the company */ - public GetCompaniesDepartmentsRequest withCompanyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; + @JsonIgnore + public String companyUuid() { + return companyUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetCompaniesDepartmentsRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String companyUuid; + private Builder() { // force use of static builder() method } - /** - * The UUID of the company - */ - public Builder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String companyUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetCompaniesDepartmentsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetCompaniesDepartmentsRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public GetCompaniesDepartmentsRequestBuilder xGustoAPIVersion(GetCompaniesDepartmentsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public GetCompaniesDepartmentsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion; + /** * The UUID of the company for which you would like to return notifications */ @@ -27,14 +35,6 @@ public class GetCompanyNotificationsRequest { @SpeakeasyMetadata("queryParam:style=form,explode=true,name=status") private Optional status; - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; - /** * The page that is requested. When unspecified, will load all objects unless endpoint forces * pagination. @@ -50,29 +50,40 @@ public class GetCompanyNotificationsRequest { @JsonCreator public GetCompanyNotificationsRequest( + Optional xGustoAPIVersion, String companyUuid, Optional status, - Optional xGustoAPIVersion, Optional page, Optional per) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(status, "status"); - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(page, "page"); Utils.checkNotNull(per, "per"); + this.xGustoAPIVersion = xGustoAPIVersion; this.companyUuid = companyUuid; this.status = status; - this.xGustoAPIVersion = xGustoAPIVersion; this.page = page; this.per = per; } public GetCompanyNotificationsRequest( String companyUuid) { - this(companyUuid, Optional.empty(), Optional.empty(), + this(Optional.empty(), companyUuid, Optional.empty(), Optional.empty(), Optional.empty()); } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + /** * The UUID of the company for which you would like to return notifications */ @@ -87,17 +98,6 @@ public Optional status() { return (Optional) status; } - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional xGustoAPIVersion() { - return (Optional) xGustoAPIVersion; - } - /** * The page that is requested. When unspecified, will load all objects unless endpoint forces * pagination. @@ -120,28 +120,6 @@ public static Builder builder() { } - /** - * The UUID of the company for which you would like to return notifications - */ - public GetCompanyNotificationsRequest withCompanyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - public GetCompanyNotificationsRequest withStatus(Status status) { - Utils.checkNotNull(status, "status"); - this.status = Optional.ofNullable(status); - return this; - } - - - public GetCompanyNotificationsRequest withStatus(Optional status) { - Utils.checkNotNull(status, "status"); - this.status = status; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -165,6 +143,28 @@ public GetCompanyNotificationsRequest withXGustoAPIVersion(Optional status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + /** * The page that is requested. When unspecified, will load all objects unless endpoint forces * pagination. @@ -215,9 +215,9 @@ public boolean equals(java.lang.Object o) { } GetCompanyNotificationsRequest other = (GetCompanyNotificationsRequest) o; return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && Utils.enhancedDeepEquals(this.status, other.status) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.page, other.page) && Utils.enhancedDeepEquals(this.per, other.per); } @@ -225,16 +225,16 @@ public boolean equals(java.lang.Object o) { @Override public int hashCode() { return Utils.enhancedHash( - companyUuid, status, xGustoAPIVersion, + xGustoAPIVersion, companyUuid, status, page, per); } @Override public String toString() { return Utils.toString(GetCompanyNotificationsRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, "companyUuid", companyUuid, "status", status, - "xGustoAPIVersion", xGustoAPIVersion, "page", page, "per", per); } @@ -242,12 +242,12 @@ public String toString() { @SuppressWarnings("UnusedReturnValue") public final static class Builder { + private Optional xGustoAPIVersion; + private String companyUuid; private Optional status = Optional.empty(); - private Optional xGustoAPIVersion; - private Optional page = Optional.empty(); private Optional per = Optional.empty(); @@ -257,29 +257,6 @@ private Builder() { } - /** - * The UUID of the company for which you would like to return notifications - */ - public Builder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - - public Builder status(Status status) { - Utils.checkNotNull(status, "status"); - this.status = Optional.ofNullable(status); - return this; - } - - public Builder status(Optional status) { - Utils.checkNotNull(status, "status"); - this.status = status; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -303,6 +280,29 @@ public Builder xGustoAPIVersion(Optional status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + /** * The page that is requested. When unspecified, will load all objects unless endpoint forces * pagination. @@ -348,7 +348,7 @@ public GetCompanyNotificationsRequest build() { } return new GetCompanyNotificationsRequest( - companyUuid, status, xGustoAPIVersion, + xGustoAPIVersion, companyUuid, status, page, per); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetDepartmentRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetDepartmentRequest.java index b811ceccc..f0a8e14e8 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetDepartmentRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetDepartmentRequest.java @@ -16,12 +16,6 @@ public class GetDepartmentRequest { - /** - * The UUID of the department - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=department_uuid") - private String departmentUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class GetDepartmentRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the department + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=department_uuid") + private String departmentUuid; + @JsonCreator public GetDepartmentRequest( - String departmentUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); + Optional xGustoAPIVersion, + String departmentUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.departmentUuid = departmentUuid; + Utils.checkNotNull(departmentUuid, "departmentUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.departmentUuid = departmentUuid; } public GetDepartmentRequest( String departmentUuid) { - this(departmentUuid, Optional.empty()); - } - - /** - * The UUID of the department - */ - @JsonIgnore - public String departmentUuid() { - return departmentUuid; + this(Optional.empty(), departmentUuid); } /** @@ -64,20 +56,19 @@ public Optional xGustoAPIVersion() { return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the department */ - public GetDepartmentRequest withDepartmentUuid(String departmentUuid) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); - this.departmentUuid = departmentUuid; - return this; + @JsonIgnore + public String departmentUuid() { + return departmentUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetDepartmentRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String departmentUuid; + private Builder() { // force use of static builder() method } - /** - * The UUID of the department - */ - public Builder departmentUuid(String departmentUuid) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); - this.departmentUuid = departmentUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String departmentUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetDepartmentRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetDepartmentRequestBuilder departmentUuid(String departmentUuid) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); - this.departmentUuid = departmentUuid; - return this; - } public GetDepartmentRequestBuilder xGustoAPIVersion(GetDepartmentHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public GetDepartmentRequestBuilder xGustoAPIVersion(Optional sortOrder; + private Optional sortOrder; @JsonCreator public GetEventsRequest( @@ -64,7 +64,7 @@ public GetEventsRequest( Optional resourceUuid, Optional limit, Optional eventType, - Optional sortOrder) { + Optional sortOrder) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(startingAfterUuid, "startingAfterUuid"); Utils.checkNotNull(resourceUuid, "resourceUuid"); @@ -135,8 +135,8 @@ public Optional eventType() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional sortOrder() { - return (Optional) sortOrder; + public Optional sortOrder() { + return (Optional) sortOrder; } public static Builder builder() { @@ -251,7 +251,7 @@ public GetEventsRequest withEventType(Optional eventType) { * A string indicating whether to sort resulting events in ascending (asc) or descending (desc) * chronological order. Events are sorted by their `timestamp`. Defaults to asc if left empty. */ - public GetEventsRequest withSortOrder(QueryParamSortOrder sortOrder) { + public GetEventsRequest withSortOrder(SortOrder sortOrder) { Utils.checkNotNull(sortOrder, "sortOrder"); this.sortOrder = Optional.ofNullable(sortOrder); return this; @@ -262,7 +262,7 @@ public GetEventsRequest withSortOrder(QueryParamSortOrder sortOrder) { * A string indicating whether to sort resulting events in ascending (asc) or descending (desc) * chronological order. Events are sorted by their `timestamp`. Defaults to asc if left empty. */ - public GetEventsRequest withSortOrder(Optional sortOrder) { + public GetEventsRequest withSortOrder(Optional sortOrder) { Utils.checkNotNull(sortOrder, "sortOrder"); this.sortOrder = sortOrder; return this; @@ -317,7 +317,7 @@ public final static class Builder { private Optional eventType = Optional.empty(); - private Optional sortOrder = Optional.empty(); + private Optional sortOrder = Optional.empty(); private Builder() { // force use of static builder() method @@ -431,7 +431,7 @@ public Builder eventType(Optional eventType) { * A string indicating whether to sort resulting events in ascending (asc) or descending (desc) * chronological order. Events are sorted by their `timestamp`. Defaults to asc if left empty. */ - public Builder sortOrder(QueryParamSortOrder sortOrder) { + public Builder sortOrder(SortOrder sortOrder) { Utils.checkNotNull(sortOrder, "sortOrder"); this.sortOrder = Optional.ofNullable(sortOrder); return this; @@ -441,7 +441,7 @@ public Builder sortOrder(QueryParamSortOrder sortOrder) { * A string indicating whether to sort resulting events in ascending (asc) or descending (desc) * chronological order. Events are sorted by their `timestamp`. Defaults to asc if left empty. */ - public Builder sortOrder(Optional sortOrder) { + public Builder sortOrder(Optional sortOrder) { Utils.checkNotNull(sortOrder, "sortOrder"); this.sortOrder = sortOrder; return this; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetNotificationsNotificationUuidRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetNotificationsNotificationUuidRequest.java index 4b1f06af5..e1f0d8027 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetNotificationsNotificationUuidRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetNotificationsNotificationUuidRequest.java @@ -16,12 +16,6 @@ public class GetNotificationsNotificationUuidRequest { - /** - * The notification entity_uuid - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=notification_uuid") - private String notificationUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class GetNotificationsNotificationUuidRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The notification entity_uuid + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=notification_uuid") + private String notificationUuid; + @JsonCreator public GetNotificationsNotificationUuidRequest( - String notificationUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(notificationUuid, "notificationUuid"); + Optional xGustoAPIVersion, + String notificationUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.notificationUuid = notificationUuid; + Utils.checkNotNull(notificationUuid, "notificationUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.notificationUuid = notificationUuid; } public GetNotificationsNotificationUuidRequest( String notificationUuid) { - this(notificationUuid, Optional.empty()); - } - - /** - * The notification entity_uuid - */ - @JsonIgnore - public String notificationUuid() { - return notificationUuid; + this(Optional.empty(), notificationUuid); } /** @@ -64,20 +56,19 @@ public Optional xGustoAP return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The notification entity_uuid */ - public GetNotificationsNotificationUuidRequest withNotificationUuid(String notificationUuid) { - Utils.checkNotNull(notificationUuid, "notificationUuid"); - this.notificationUuid = notificationUuid; - return this; + @JsonIgnore + public String notificationUuid() { + return notificationUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetNotificationsNotificationUuidRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String notificationUuid; + private Builder() { // force use of static builder() method } - /** - * The notification entity_uuid - */ - public Builder notificationUuid(String notificationUuid) { - Utils.checkNotNull(notificationUuid, "notificationUuid"); - this.notificationUuid = notificationUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String notificationUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetNotificationsNotificationUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetNotificationsNotificationUuidRequestBuilder notificationUuid(String notificationUuid) { - Utils.checkNotNull(notificationUuid, "notificationUuid"); - this.notificationUuid = notificationUuid; - return this; - } public GetNotificationsNotificationUuidRequestBuilder xGustoAPIVersion(GetNotificationsNotificationUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public GetNotificationsNotificationUuidRequestBuilder xGustoAPIVersion(Optional< return this; } + public GetNotificationsNotificationUuidRequestBuilder notificationUuid(String notificationUuid) { + Utils.checkNotNull(notificationUuid, "notificationUuid"); + this.notificationUuid = notificationUuid; + return this; + } + private GetNotificationsNotificationUuidRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetNotificationsNotificationUuidRequest request = new GetNotificationsNotificationUuidRequest(notificationUuid, - xGustoAPIVersion); + GetNotificationsNotificationUuidRequest request = new GetNotificationsNotificationUuidRequest(xGustoAPIVersion, + notificationUuid); return request; } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetReverseWireTransactionsHeaderXGustoAPIVersion.java similarity index 67% rename from gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion.java rename to gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetReverseWireTransactionsHeaderXGustoAPIVersion.java index cf47f180b..a539e78f9 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetReverseWireTransactionsHeaderXGustoAPIVersion.java @@ -9,19 +9,19 @@ import java.util.Optional; /** - * GetV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion + * GetReverseWireTransactionsHeaderXGustoAPIVersion * *

    Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ -public enum GetV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion { +public enum GetReverseWireTransactionsHeaderXGustoAPIVersion { TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15("2025-11-15"); @JsonValue private final String value; - GetV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion(String value) { + GetReverseWireTransactionsHeaderXGustoAPIVersion(String value) { this.value = value; } @@ -29,8 +29,8 @@ public String value() { return value; } - public static Optional fromValue(String value) { - for (GetV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion o: GetV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion.values()) { + public static Optional fromValue(String value) { + for (GetReverseWireTransactionsHeaderXGustoAPIVersion o: GetReverseWireTransactionsHeaderXGustoAPIVersion.values()) { if (Objects.deepEquals(o.value, value)) { return Optional.of(o); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetReverseWireTransactionsRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetReverseWireTransactionsRequest.java new file mode 100644 index 000000000..773a1d108 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetReverseWireTransactionsRequest.java @@ -0,0 +1,378 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2025_11_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2025_11_15.utils.SpeakeasyMetadata; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Long; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class GetReverseWireTransactionsRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") + private String companyUuid; + + /** + * Filter results to reverse wires associated with a specific payroll + */ + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=payroll_uuid") + private Optional payrollUuid; + + /** + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. + */ + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=page") + private Optional page; + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=per") + private Optional per; + + @JsonCreator + public GetReverseWireTransactionsRequest( + Optional xGustoAPIVersion, + String companyUuid, + Optional payrollUuid, + Optional page, + Optional per) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(companyUuid, "companyUuid"); + Utils.checkNotNull(payrollUuid, "payrollUuid"); + Utils.checkNotNull(page, "page"); + Utils.checkNotNull(per, "per"); + this.xGustoAPIVersion = xGustoAPIVersion; + this.companyUuid = companyUuid; + this.payrollUuid = payrollUuid; + this.page = page; + this.per = per; + } + + public GetReverseWireTransactionsRequest( + String companyUuid) { + this(Optional.empty(), companyUuid, Optional.empty(), + Optional.empty(), Optional.empty()); + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + + /** + * The UUID of the company + */ + @JsonIgnore + public String companyUuid() { + return companyUuid; + } + + /** + * Filter results to reverse wires associated with a specific payroll + */ + @JsonIgnore + public Optional payrollUuid() { + return payrollUuid; + } + + /** + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. + */ + @JsonIgnore + public Optional page() { + return page; + } + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + @JsonIgnore + public Optional per() { + return per; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetReverseWireTransactionsRequest withXGustoAPIVersion(GetReverseWireTransactionsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetReverseWireTransactionsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + /** + * The UUID of the company + */ + public GetReverseWireTransactionsRequest withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + /** + * Filter results to reverse wires associated with a specific payroll + */ + public GetReverseWireTransactionsRequest withPayrollUuid(String payrollUuid) { + Utils.checkNotNull(payrollUuid, "payrollUuid"); + this.payrollUuid = Optional.ofNullable(payrollUuid); + return this; + } + + + /** + * Filter results to reverse wires associated with a specific payroll + */ + public GetReverseWireTransactionsRequest withPayrollUuid(Optional payrollUuid) { + Utils.checkNotNull(payrollUuid, "payrollUuid"); + this.payrollUuid = payrollUuid; + return this; + } + + /** + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. + */ + public GetReverseWireTransactionsRequest withPage(long page) { + Utils.checkNotNull(page, "page"); + this.page = Optional.ofNullable(page); + return this; + } + + + /** + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. + */ + public GetReverseWireTransactionsRequest withPage(Optional page) { + Utils.checkNotNull(page, "page"); + this.page = page; + return this; + } + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + public GetReverseWireTransactionsRequest withPer(long per) { + Utils.checkNotNull(per, "per"); + this.per = Optional.ofNullable(per); + return this; + } + + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + public GetReverseWireTransactionsRequest withPer(Optional per) { + Utils.checkNotNull(per, "per"); + this.per = per; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetReverseWireTransactionsRequest other = (GetReverseWireTransactionsRequest) o; + return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && + Utils.enhancedDeepEquals(this.payrollUuid, other.payrollUuid) && + Utils.enhancedDeepEquals(this.page, other.page) && + Utils.enhancedDeepEquals(this.per, other.per); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + xGustoAPIVersion, companyUuid, payrollUuid, + page, per); + } + + @Override + public String toString() { + return Utils.toString(GetReverseWireTransactionsRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, + "companyUuid", companyUuid, + "payrollUuid", payrollUuid, + "page", page, + "per", per); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional xGustoAPIVersion; + + private String companyUuid; + + private Optional payrollUuid = Optional.empty(); + + private Optional page = Optional.empty(); + + private Optional per = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(GetReverseWireTransactionsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + + /** + * The UUID of the company + */ + public Builder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + + /** + * Filter results to reverse wires associated with a specific payroll + */ + public Builder payrollUuid(String payrollUuid) { + Utils.checkNotNull(payrollUuid, "payrollUuid"); + this.payrollUuid = Optional.ofNullable(payrollUuid); + return this; + } + + /** + * Filter results to reverse wires associated with a specific payroll + */ + public Builder payrollUuid(Optional payrollUuid) { + Utils.checkNotNull(payrollUuid, "payrollUuid"); + this.payrollUuid = payrollUuid; + return this; + } + + + /** + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. + */ + public Builder page(long page) { + Utils.checkNotNull(page, "page"); + this.page = Optional.ofNullable(page); + return this; + } + + /** + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. + */ + public Builder page(Optional page) { + Utils.checkNotNull(page, "page"); + this.page = page; + return this; + } + + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + public Builder per(long per) { + Utils.checkNotNull(per, "per"); + this.per = Optional.ofNullable(per); + return this; + } + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + public Builder per(Optional per) { + Utils.checkNotNull(per, "per"); + this.per = per; + return this; + } + + public GetReverseWireTransactionsRequest build() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + return new GetReverseWireTransactionsRequest( + xGustoAPIVersion, companyUuid, payrollUuid, + page, per); + } + + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "X-Gusto-API-Version", + "\"2025-11-15\"", + new TypeReference>() {}); + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetReverseWireTransactionsRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetReverseWireTransactionsRequestBuilder.java new file mode 100644 index 000000000..3d4436932 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetReverseWireTransactionsRequestBuilder.java @@ -0,0 +1,36 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.RequestOperation; + +import com.gusto.embedded_api_v_2025_11_15.SDKConfiguration; +import com.gusto.embedded_api_v_2025_11_15.operations.GetReverseWireTransactions; +import com.gusto.embedded_api_v_2025_11_15.utils.Headers; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; + +public class GetReverseWireTransactionsRequestBuilder { + + private GetReverseWireTransactionsRequest request; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public GetReverseWireTransactionsRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public GetReverseWireTransactionsRequestBuilder request(GetReverseWireTransactionsRequest request) { + Utils.checkNotNull(request, "request"); + this.request = request; + return this; + } + + public GetReverseWireTransactionsResponse call() { + + RequestOperation operation + = new GetReverseWireTransactions.Sync(sdkConfiguration, _headers); + + return operation.handleResponse(operation.doRequest(request)); + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetReverseWireTransactionsResponse.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetReverseWireTransactionsResponse.java new file mode 100644 index 000000000..e57fd47d7 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetReverseWireTransactionsResponse.java @@ -0,0 +1,254 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2025_11_15.models.components.ReverseWireTransaction; +import com.gusto.embedded_api_v_2025_11_15.utils.Response; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.io.InputStream; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.List; +import java.util.Optional; + + +public class GetReverseWireTransactionsResponse implements Response { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * Example response + */ + private Optional> reverseWireTransactionList; + + @JsonCreator + public GetReverseWireTransactionsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional> reverseWireTransactionList) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(reverseWireTransactionList, "reverseWireTransactionList"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.reverseWireTransactionList = reverseWireTransactionList; + } + + public GetReverseWireTransactionsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * Example response + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> reverseWireTransactionList() { + return (Optional>) reverseWireTransactionList; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public GetReverseWireTransactionsResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public GetReverseWireTransactionsResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public GetReverseWireTransactionsResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * Example response + */ + public GetReverseWireTransactionsResponse withReverseWireTransactionList(List reverseWireTransactionList) { + Utils.checkNotNull(reverseWireTransactionList, "reverseWireTransactionList"); + this.reverseWireTransactionList = Optional.ofNullable(reverseWireTransactionList); + return this; + } + + + /** + * Example response + */ + public GetReverseWireTransactionsResponse withReverseWireTransactionList(Optional> reverseWireTransactionList) { + Utils.checkNotNull(reverseWireTransactionList, "reverseWireTransactionList"); + this.reverseWireTransactionList = reverseWireTransactionList; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetReverseWireTransactionsResponse other = (GetReverseWireTransactionsResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.reverseWireTransactionList, other.reverseWireTransactionList); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + reverseWireTransactionList); + } + + @Override + public String toString() { + return Utils.toString(GetReverseWireTransactionsResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "reverseWireTransactionList", reverseWireTransactionList); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional> reverseWireTransactionList = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * Example response + */ + public Builder reverseWireTransactionList(List reverseWireTransactionList) { + Utils.checkNotNull(reverseWireTransactionList, "reverseWireTransactionList"); + this.reverseWireTransactionList = Optional.ofNullable(reverseWireTransactionList); + return this; + } + + /** + * Example response + */ + public Builder reverseWireTransactionList(Optional> reverseWireTransactionList) { + Utils.checkNotNull(reverseWireTransactionList, "reverseWireTransactionList"); + this.reverseWireTransactionList = reverseWireTransactionList; + return this; + } + + public GetReverseWireTransactionsResponse build() { + + return new GetReverseWireTransactionsResponse( + contentType, statusCode, rawResponse, + reverseWireTransactionList); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetAchTransactionsHeaderXGustoAPIVersion.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetTaxPaymentHeaderXGustoAPIVersion.java similarity index 70% rename from gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetAchTransactionsHeaderXGustoAPIVersion.java rename to gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetTaxPaymentHeaderXGustoAPIVersion.java index 923bc01e0..936fac32b 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetAchTransactionsHeaderXGustoAPIVersion.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetTaxPaymentHeaderXGustoAPIVersion.java @@ -9,19 +9,19 @@ import java.util.Optional; /** - * GetAchTransactionsHeaderXGustoAPIVersion + * GetTaxPaymentHeaderXGustoAPIVersion * *

    Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ -public enum GetAchTransactionsHeaderXGustoAPIVersion { +public enum GetTaxPaymentHeaderXGustoAPIVersion { TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15("2025-11-15"); @JsonValue private final String value; - GetAchTransactionsHeaderXGustoAPIVersion(String value) { + GetTaxPaymentHeaderXGustoAPIVersion(String value) { this.value = value; } @@ -29,8 +29,8 @@ public String value() { return value; } - public static Optional fromValue(String value) { - for (GetAchTransactionsHeaderXGustoAPIVersion o: GetAchTransactionsHeaderXGustoAPIVersion.values()) { + public static Optional fromValue(String value) { + for (GetTaxPaymentHeaderXGustoAPIVersion o: GetTaxPaymentHeaderXGustoAPIVersion.values()) { if (Objects.deepEquals(o.value, value)) { return Optional.of(o); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetTaxPaymentRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetTaxPaymentRequest.java new file mode 100644 index 000000000..ead402ef0 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetTaxPaymentRequest.java @@ -0,0 +1,232 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2025_11_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2025_11_15.utils.SpeakeasyMetadata; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class GetTaxPaymentRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") + private String companyUuid; + + /** + * The UUID of the tax payment + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=uuid") + private String uuid; + + @JsonCreator + public GetTaxPaymentRequest( + Optional xGustoAPIVersion, + String companyUuid, + String uuid) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(companyUuid, "companyUuid"); + Utils.checkNotNull(uuid, "uuid"); + this.xGustoAPIVersion = xGustoAPIVersion; + this.companyUuid = companyUuid; + this.uuid = uuid; + } + + public GetTaxPaymentRequest( + String companyUuid, + String uuid) { + this(Optional.empty(), companyUuid, uuid); + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + + /** + * The UUID of the company + */ + @JsonIgnore + public String companyUuid() { + return companyUuid; + } + + /** + * The UUID of the tax payment + */ + @JsonIgnore + public String uuid() { + return uuid; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetTaxPaymentRequest withXGustoAPIVersion(GetTaxPaymentHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetTaxPaymentRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + /** + * The UUID of the company + */ + public GetTaxPaymentRequest withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + /** + * The UUID of the tax payment + */ + public GetTaxPaymentRequest withUuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetTaxPaymentRequest other = (GetTaxPaymentRequest) o; + return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && + Utils.enhancedDeepEquals(this.uuid, other.uuid); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + xGustoAPIVersion, companyUuid, uuid); + } + + @Override + public String toString() { + return Utils.toString(GetTaxPaymentRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, + "companyUuid", companyUuid, + "uuid", uuid); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional xGustoAPIVersion; + + private String companyUuid; + + private String uuid; + + private Builder() { + // force use of static builder() method + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(GetTaxPaymentHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + + /** + * The UUID of the company + */ + public Builder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + + /** + * The UUID of the tax payment + */ + public Builder uuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + public GetTaxPaymentRequest build() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + return new GetTaxPaymentRequest( + xGustoAPIVersion, companyUuid, uuid); + } + + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "X-Gusto-API-Version", + "\"2025-11-15\"", + new TypeReference>() {}); + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetTaxPaymentRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetTaxPaymentRequestBuilder.java new file mode 100644 index 000000000..fec7ce6ee --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetTaxPaymentRequestBuilder.java @@ -0,0 +1,83 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.RequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2025_11_15.SDKConfiguration; +import com.gusto.embedded_api_v_2025_11_15.operations.GetTaxPayment; +import com.gusto.embedded_api_v_2025_11_15.utils.Headers; +import com.gusto.embedded_api_v_2025_11_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.String; +import java.util.Optional; + +public class GetTaxPaymentRequestBuilder { + + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2025-11-15\"", + new TypeReference>() {}); + private String companyUuid; + private String uuid; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public GetTaxPaymentRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public GetTaxPaymentRequestBuilder xGustoAPIVersion(GetTaxPaymentHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetTaxPaymentRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public GetTaxPaymentRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + public GetTaxPaymentRequestBuilder uuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + + private GetTaxPaymentRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + GetTaxPaymentRequest request = new GetTaxPaymentRequest(xGustoAPIVersion, + companyUuid, + uuid); + + return request; + } + + public GetTaxPaymentResponse call() { + + RequestOperation operation + = new GetTaxPayment.Sync(sdkConfiguration, _headers); + GetTaxPaymentRequest request = buildRequest(); + + return operation.handleResponse(operation.doRequest(request)); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2025-11-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetTaxPaymentResponse.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetTaxPaymentResponse.java new file mode 100644 index 000000000..95bc0808b --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetTaxPaymentResponse.java @@ -0,0 +1,253 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2025_11_15.models.components.TaxPayment; +import com.gusto.embedded_api_v_2025_11_15.utils.Response; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.io.InputStream; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.Optional; + + +public class GetTaxPaymentResponse implements Response { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * Success + */ + private Optional taxPayment; + + @JsonCreator + public GetTaxPaymentResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional taxPayment) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(taxPayment, "taxPayment"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.taxPayment = taxPayment; + } + + public GetTaxPaymentResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * Success + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional taxPayment() { + return (Optional) taxPayment; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public GetTaxPaymentResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public GetTaxPaymentResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public GetTaxPaymentResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * Success + */ + public GetTaxPaymentResponse withTaxPayment(TaxPayment taxPayment) { + Utils.checkNotNull(taxPayment, "taxPayment"); + this.taxPayment = Optional.ofNullable(taxPayment); + return this; + } + + + /** + * Success + */ + public GetTaxPaymentResponse withTaxPayment(Optional taxPayment) { + Utils.checkNotNull(taxPayment, "taxPayment"); + this.taxPayment = taxPayment; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetTaxPaymentResponse other = (GetTaxPaymentResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.taxPayment, other.taxPayment); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + taxPayment); + } + + @Override + public String toString() { + return Utils.toString(GetTaxPaymentResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "taxPayment", taxPayment); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional taxPayment = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * Success + */ + public Builder taxPayment(TaxPayment taxPayment) { + Utils.checkNotNull(taxPayment, "taxPayment"); + this.taxPayment = Optional.ofNullable(taxPayment); + return this; + } + + /** + * Success + */ + public Builder taxPayment(Optional taxPayment) { + Utils.checkNotNull(taxPayment, "taxPayment"); + this.taxPayment = taxPayment; + return this; + } + + public GetTaxPaymentResponse build() { + + return new GetTaxPaymentResponse( + contentType, statusCode, rawResponse, + taxPayment); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetTaxPaymentsHeaderXGustoAPIVersion.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetTaxPaymentsHeaderXGustoAPIVersion.java new file mode 100644 index 000000000..6fdc4eea5 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetTaxPaymentsHeaderXGustoAPIVersion.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * GetTaxPaymentsHeaderXGustoAPIVersion + * + *

    Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ +public enum GetTaxPaymentsHeaderXGustoAPIVersion { + TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15("2025-11-15"); + + @JsonValue + private final String value; + + GetTaxPaymentsHeaderXGustoAPIVersion(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (GetTaxPaymentsHeaderXGustoAPIVersion o: GetTaxPaymentsHeaderXGustoAPIVersion.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetTaxPaymentsRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetTaxPaymentsRequest.java new file mode 100644 index 000000000..e798cc896 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetTaxPaymentsRequest.java @@ -0,0 +1,1145 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2025_11_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2025_11_15.utils.SpeakeasyMetadata; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Float; +import java.lang.Long; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.time.LocalDate; +import java.util.List; +import java.util.Optional; + + +public class GetTaxPaymentsRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") + private String companyUuid; + + /** + * Filter by tax jurisdiction. Accepts one or more two-letter state codes, or `US` for federal, as a + * comma-separated list (e.g. `IL,CA`). + * + *

    Codes are case-insensitive. + */ + @SpeakeasyMetadata("queryParam:style=form,explode=false,name=jurisdiction") + private Optional> jurisdiction; + + /** + * Filter to tax payments associated with one or more payrolls, given as a comma-separated list of + * payroll UUIDs. + */ + @SpeakeasyMetadata("queryParam:style=form,explode=false,name=payroll_uuids") + private Optional> payrollUuids; + + /** + * Lower-bound (inclusive) date filter on due_date. + */ + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=due_date_from") + private Optional dueDateFrom; + + /** + * Upper-bound (inclusive) date filter on due_date. + */ + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=due_date_to") + private Optional dueDateTo; + + /** + * Lower-bound (inclusive) date filter on payment_sent_on. + */ + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=payment_sent_on_from") + private Optional paymentSentOnFrom; + + /** + * Upper-bound (inclusive) date filter on payment_sent_on. + */ + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=payment_sent_on_to") + private Optional paymentSentOnTo; + + /** + * Lower-bound (inclusive) date filter on period_start. + */ + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=period_start_from") + private Optional periodStartFrom; + + /** + * Upper-bound (inclusive) date filter on period_start. + */ + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=period_start_to") + private Optional periodStartTo; + + /** + * Lower-bound (inclusive) date filter on period_end. + */ + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=period_end_from") + private Optional periodEndFrom; + + /** + * Upper-bound (inclusive) date filter on period_end. + */ + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=period_end_to") + private Optional periodEndTo; + + /** + * Lower-bound (inclusive) filter on amount. + */ + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=amount_min") + private Optional amountMin; + + /** + * Upper-bound (inclusive) filter on amount. + */ + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=amount_max") + private Optional amountMax; + + /** + * Sort by one or more fields. Options: amount, due_date, payment_sent_on, period_end, period_start. + * Append `:asc` or `:desc` to specify direction (e.g., `amount:asc`). + * + *

    Defaults to ascending. + */ + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=sort_by") + private Optional sortBy; + + /** + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. + */ + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=page") + private Optional page; + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=per") + private Optional per; + + @JsonCreator + public GetTaxPaymentsRequest( + Optional xGustoAPIVersion, + String companyUuid, + Optional> jurisdiction, + Optional> payrollUuids, + Optional dueDateFrom, + Optional dueDateTo, + Optional paymentSentOnFrom, + Optional paymentSentOnTo, + Optional periodStartFrom, + Optional periodStartTo, + Optional periodEndFrom, + Optional periodEndTo, + Optional amountMin, + Optional amountMax, + Optional sortBy, + Optional page, + Optional per) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(companyUuid, "companyUuid"); + Utils.checkNotNull(jurisdiction, "jurisdiction"); + Utils.checkNotNull(payrollUuids, "payrollUuids"); + Utils.checkNotNull(dueDateFrom, "dueDateFrom"); + Utils.checkNotNull(dueDateTo, "dueDateTo"); + Utils.checkNotNull(paymentSentOnFrom, "paymentSentOnFrom"); + Utils.checkNotNull(paymentSentOnTo, "paymentSentOnTo"); + Utils.checkNotNull(periodStartFrom, "periodStartFrom"); + Utils.checkNotNull(periodStartTo, "periodStartTo"); + Utils.checkNotNull(periodEndFrom, "periodEndFrom"); + Utils.checkNotNull(periodEndTo, "periodEndTo"); + Utils.checkNotNull(amountMin, "amountMin"); + Utils.checkNotNull(amountMax, "amountMax"); + Utils.checkNotNull(sortBy, "sortBy"); + Utils.checkNotNull(page, "page"); + Utils.checkNotNull(per, "per"); + this.xGustoAPIVersion = xGustoAPIVersion; + this.companyUuid = companyUuid; + this.jurisdiction = jurisdiction; + this.payrollUuids = payrollUuids; + this.dueDateFrom = dueDateFrom; + this.dueDateTo = dueDateTo; + this.paymentSentOnFrom = paymentSentOnFrom; + this.paymentSentOnTo = paymentSentOnTo; + this.periodStartFrom = periodStartFrom; + this.periodStartTo = periodStartTo; + this.periodEndFrom = periodEndFrom; + this.periodEndTo = periodEndTo; + this.amountMin = amountMin; + this.amountMax = amountMax; + this.sortBy = sortBy; + this.page = page; + this.per = per; + } + + public GetTaxPaymentsRequest( + String companyUuid) { + this(Optional.empty(), companyUuid, Optional.empty(), + Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty(), Optional.empty()); + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + + /** + * The UUID of the company + */ + @JsonIgnore + public String companyUuid() { + return companyUuid; + } + + /** + * Filter by tax jurisdiction. Accepts one or more two-letter state codes, or `US` for federal, as a + * comma-separated list (e.g. `IL,CA`). + * + *

    Codes are case-insensitive. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> jurisdiction() { + return (Optional>) jurisdiction; + } + + /** + * Filter to tax payments associated with one or more payrolls, given as a comma-separated list of + * payroll UUIDs. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> payrollUuids() { + return (Optional>) payrollUuids; + } + + /** + * Lower-bound (inclusive) date filter on due_date. + */ + @JsonIgnore + public Optional dueDateFrom() { + return dueDateFrom; + } + + /** + * Upper-bound (inclusive) date filter on due_date. + */ + @JsonIgnore + public Optional dueDateTo() { + return dueDateTo; + } + + /** + * Lower-bound (inclusive) date filter on payment_sent_on. + */ + @JsonIgnore + public Optional paymentSentOnFrom() { + return paymentSentOnFrom; + } + + /** + * Upper-bound (inclusive) date filter on payment_sent_on. + */ + @JsonIgnore + public Optional paymentSentOnTo() { + return paymentSentOnTo; + } + + /** + * Lower-bound (inclusive) date filter on period_start. + */ + @JsonIgnore + public Optional periodStartFrom() { + return periodStartFrom; + } + + /** + * Upper-bound (inclusive) date filter on period_start. + */ + @JsonIgnore + public Optional periodStartTo() { + return periodStartTo; + } + + /** + * Lower-bound (inclusive) date filter on period_end. + */ + @JsonIgnore + public Optional periodEndFrom() { + return periodEndFrom; + } + + /** + * Upper-bound (inclusive) date filter on period_end. + */ + @JsonIgnore + public Optional periodEndTo() { + return periodEndTo; + } + + /** + * Lower-bound (inclusive) filter on amount. + */ + @JsonIgnore + public Optional amountMin() { + return amountMin; + } + + /** + * Upper-bound (inclusive) filter on amount. + */ + @JsonIgnore + public Optional amountMax() { + return amountMax; + } + + /** + * Sort by one or more fields. Options: amount, due_date, payment_sent_on, period_end, period_start. + * Append `:asc` or `:desc` to specify direction (e.g., `amount:asc`). + * + *

    Defaults to ascending. + */ + @JsonIgnore + public Optional sortBy() { + return sortBy; + } + + /** + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. + */ + @JsonIgnore + public Optional page() { + return page; + } + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + @JsonIgnore + public Optional per() { + return per; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetTaxPaymentsRequest withXGustoAPIVersion(GetTaxPaymentsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetTaxPaymentsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + /** + * The UUID of the company + */ + public GetTaxPaymentsRequest withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + /** + * Filter by tax jurisdiction. Accepts one or more two-letter state codes, or `US` for federal, as a + * comma-separated list (e.g. `IL,CA`). + * + *

    Codes are case-insensitive. + */ + public GetTaxPaymentsRequest withJurisdiction(List jurisdiction) { + Utils.checkNotNull(jurisdiction, "jurisdiction"); + this.jurisdiction = Optional.ofNullable(jurisdiction); + return this; + } + + + /** + * Filter by tax jurisdiction. Accepts one or more two-letter state codes, or `US` for federal, as a + * comma-separated list (e.g. `IL,CA`). + * + *

    Codes are case-insensitive. + */ + public GetTaxPaymentsRequest withJurisdiction(Optional> jurisdiction) { + Utils.checkNotNull(jurisdiction, "jurisdiction"); + this.jurisdiction = jurisdiction; + return this; + } + + /** + * Filter to tax payments associated with one or more payrolls, given as a comma-separated list of + * payroll UUIDs. + */ + public GetTaxPaymentsRequest withPayrollUuids(List payrollUuids) { + Utils.checkNotNull(payrollUuids, "payrollUuids"); + this.payrollUuids = Optional.ofNullable(payrollUuids); + return this; + } + + + /** + * Filter to tax payments associated with one or more payrolls, given as a comma-separated list of + * payroll UUIDs. + */ + public GetTaxPaymentsRequest withPayrollUuids(Optional> payrollUuids) { + Utils.checkNotNull(payrollUuids, "payrollUuids"); + this.payrollUuids = payrollUuids; + return this; + } + + /** + * Lower-bound (inclusive) date filter on due_date. + */ + public GetTaxPaymentsRequest withDueDateFrom(LocalDate dueDateFrom) { + Utils.checkNotNull(dueDateFrom, "dueDateFrom"); + this.dueDateFrom = Optional.ofNullable(dueDateFrom); + return this; + } + + + /** + * Lower-bound (inclusive) date filter on due_date. + */ + public GetTaxPaymentsRequest withDueDateFrom(Optional dueDateFrom) { + Utils.checkNotNull(dueDateFrom, "dueDateFrom"); + this.dueDateFrom = dueDateFrom; + return this; + } + + /** + * Upper-bound (inclusive) date filter on due_date. + */ + public GetTaxPaymentsRequest withDueDateTo(LocalDate dueDateTo) { + Utils.checkNotNull(dueDateTo, "dueDateTo"); + this.dueDateTo = Optional.ofNullable(dueDateTo); + return this; + } + + + /** + * Upper-bound (inclusive) date filter on due_date. + */ + public GetTaxPaymentsRequest withDueDateTo(Optional dueDateTo) { + Utils.checkNotNull(dueDateTo, "dueDateTo"); + this.dueDateTo = dueDateTo; + return this; + } + + /** + * Lower-bound (inclusive) date filter on payment_sent_on. + */ + public GetTaxPaymentsRequest withPaymentSentOnFrom(LocalDate paymentSentOnFrom) { + Utils.checkNotNull(paymentSentOnFrom, "paymentSentOnFrom"); + this.paymentSentOnFrom = Optional.ofNullable(paymentSentOnFrom); + return this; + } + + + /** + * Lower-bound (inclusive) date filter on payment_sent_on. + */ + public GetTaxPaymentsRequest withPaymentSentOnFrom(Optional paymentSentOnFrom) { + Utils.checkNotNull(paymentSentOnFrom, "paymentSentOnFrom"); + this.paymentSentOnFrom = paymentSentOnFrom; + return this; + } + + /** + * Upper-bound (inclusive) date filter on payment_sent_on. + */ + public GetTaxPaymentsRequest withPaymentSentOnTo(LocalDate paymentSentOnTo) { + Utils.checkNotNull(paymentSentOnTo, "paymentSentOnTo"); + this.paymentSentOnTo = Optional.ofNullable(paymentSentOnTo); + return this; + } + + + /** + * Upper-bound (inclusive) date filter on payment_sent_on. + */ + public GetTaxPaymentsRequest withPaymentSentOnTo(Optional paymentSentOnTo) { + Utils.checkNotNull(paymentSentOnTo, "paymentSentOnTo"); + this.paymentSentOnTo = paymentSentOnTo; + return this; + } + + /** + * Lower-bound (inclusive) date filter on period_start. + */ + public GetTaxPaymentsRequest withPeriodStartFrom(LocalDate periodStartFrom) { + Utils.checkNotNull(periodStartFrom, "periodStartFrom"); + this.periodStartFrom = Optional.ofNullable(periodStartFrom); + return this; + } + + + /** + * Lower-bound (inclusive) date filter on period_start. + */ + public GetTaxPaymentsRequest withPeriodStartFrom(Optional periodStartFrom) { + Utils.checkNotNull(periodStartFrom, "periodStartFrom"); + this.periodStartFrom = periodStartFrom; + return this; + } + + /** + * Upper-bound (inclusive) date filter on period_start. + */ + public GetTaxPaymentsRequest withPeriodStartTo(LocalDate periodStartTo) { + Utils.checkNotNull(periodStartTo, "periodStartTo"); + this.periodStartTo = Optional.ofNullable(periodStartTo); + return this; + } + + + /** + * Upper-bound (inclusive) date filter on period_start. + */ + public GetTaxPaymentsRequest withPeriodStartTo(Optional periodStartTo) { + Utils.checkNotNull(periodStartTo, "periodStartTo"); + this.periodStartTo = periodStartTo; + return this; + } + + /** + * Lower-bound (inclusive) date filter on period_end. + */ + public GetTaxPaymentsRequest withPeriodEndFrom(LocalDate periodEndFrom) { + Utils.checkNotNull(periodEndFrom, "periodEndFrom"); + this.periodEndFrom = Optional.ofNullable(periodEndFrom); + return this; + } + + + /** + * Lower-bound (inclusive) date filter on period_end. + */ + public GetTaxPaymentsRequest withPeriodEndFrom(Optional periodEndFrom) { + Utils.checkNotNull(periodEndFrom, "periodEndFrom"); + this.periodEndFrom = periodEndFrom; + return this; + } + + /** + * Upper-bound (inclusive) date filter on period_end. + */ + public GetTaxPaymentsRequest withPeriodEndTo(LocalDate periodEndTo) { + Utils.checkNotNull(periodEndTo, "periodEndTo"); + this.periodEndTo = Optional.ofNullable(periodEndTo); + return this; + } + + + /** + * Upper-bound (inclusive) date filter on period_end. + */ + public GetTaxPaymentsRequest withPeriodEndTo(Optional periodEndTo) { + Utils.checkNotNull(periodEndTo, "periodEndTo"); + this.periodEndTo = periodEndTo; + return this; + } + + /** + * Lower-bound (inclusive) filter on amount. + */ + public GetTaxPaymentsRequest withAmountMin(float amountMin) { + Utils.checkNotNull(amountMin, "amountMin"); + this.amountMin = Optional.ofNullable(amountMin); + return this; + } + + + /** + * Lower-bound (inclusive) filter on amount. + */ + public GetTaxPaymentsRequest withAmountMin(Optional amountMin) { + Utils.checkNotNull(amountMin, "amountMin"); + this.amountMin = amountMin; + return this; + } + + /** + * Upper-bound (inclusive) filter on amount. + */ + public GetTaxPaymentsRequest withAmountMax(float amountMax) { + Utils.checkNotNull(amountMax, "amountMax"); + this.amountMax = Optional.ofNullable(amountMax); + return this; + } + + + /** + * Upper-bound (inclusive) filter on amount. + */ + public GetTaxPaymentsRequest withAmountMax(Optional amountMax) { + Utils.checkNotNull(amountMax, "amountMax"); + this.amountMax = amountMax; + return this; + } + + /** + * Sort by one or more fields. Options: amount, due_date, payment_sent_on, period_end, period_start. + * Append `:asc` or `:desc` to specify direction (e.g., `amount:asc`). + * + *

    Defaults to ascending. + */ + public GetTaxPaymentsRequest withSortBy(String sortBy) { + Utils.checkNotNull(sortBy, "sortBy"); + this.sortBy = Optional.ofNullable(sortBy); + return this; + } + + + /** + * Sort by one or more fields. Options: amount, due_date, payment_sent_on, period_end, period_start. + * Append `:asc` or `:desc` to specify direction (e.g., `amount:asc`). + * + *

    Defaults to ascending. + */ + public GetTaxPaymentsRequest withSortBy(Optional sortBy) { + Utils.checkNotNull(sortBy, "sortBy"); + this.sortBy = sortBy; + return this; + } + + /** + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. + */ + public GetTaxPaymentsRequest withPage(long page) { + Utils.checkNotNull(page, "page"); + this.page = Optional.ofNullable(page); + return this; + } + + + /** + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. + */ + public GetTaxPaymentsRequest withPage(Optional page) { + Utils.checkNotNull(page, "page"); + this.page = page; + return this; + } + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + public GetTaxPaymentsRequest withPer(long per) { + Utils.checkNotNull(per, "per"); + this.per = Optional.ofNullable(per); + return this; + } + + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + public GetTaxPaymentsRequest withPer(Optional per) { + Utils.checkNotNull(per, "per"); + this.per = per; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetTaxPaymentsRequest other = (GetTaxPaymentsRequest) o; + return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && + Utils.enhancedDeepEquals(this.jurisdiction, other.jurisdiction) && + Utils.enhancedDeepEquals(this.payrollUuids, other.payrollUuids) && + Utils.enhancedDeepEquals(this.dueDateFrom, other.dueDateFrom) && + Utils.enhancedDeepEquals(this.dueDateTo, other.dueDateTo) && + Utils.enhancedDeepEquals(this.paymentSentOnFrom, other.paymentSentOnFrom) && + Utils.enhancedDeepEquals(this.paymentSentOnTo, other.paymentSentOnTo) && + Utils.enhancedDeepEquals(this.periodStartFrom, other.periodStartFrom) && + Utils.enhancedDeepEquals(this.periodStartTo, other.periodStartTo) && + Utils.enhancedDeepEquals(this.periodEndFrom, other.periodEndFrom) && + Utils.enhancedDeepEquals(this.periodEndTo, other.periodEndTo) && + Utils.enhancedDeepEquals(this.amountMin, other.amountMin) && + Utils.enhancedDeepEquals(this.amountMax, other.amountMax) && + Utils.enhancedDeepEquals(this.sortBy, other.sortBy) && + Utils.enhancedDeepEquals(this.page, other.page) && + Utils.enhancedDeepEquals(this.per, other.per); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + xGustoAPIVersion, companyUuid, jurisdiction, + payrollUuids, dueDateFrom, dueDateTo, + paymentSentOnFrom, paymentSentOnTo, periodStartFrom, + periodStartTo, periodEndFrom, periodEndTo, + amountMin, amountMax, sortBy, + page, per); + } + + @Override + public String toString() { + return Utils.toString(GetTaxPaymentsRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, + "companyUuid", companyUuid, + "jurisdiction", jurisdiction, + "payrollUuids", payrollUuids, + "dueDateFrom", dueDateFrom, + "dueDateTo", dueDateTo, + "paymentSentOnFrom", paymentSentOnFrom, + "paymentSentOnTo", paymentSentOnTo, + "periodStartFrom", periodStartFrom, + "periodStartTo", periodStartTo, + "periodEndFrom", periodEndFrom, + "periodEndTo", periodEndTo, + "amountMin", amountMin, + "amountMax", amountMax, + "sortBy", sortBy, + "page", page, + "per", per); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional xGustoAPIVersion; + + private String companyUuid; + + private Optional> jurisdiction = Optional.empty(); + + private Optional> payrollUuids = Optional.empty(); + + private Optional dueDateFrom = Optional.empty(); + + private Optional dueDateTo = Optional.empty(); + + private Optional paymentSentOnFrom = Optional.empty(); + + private Optional paymentSentOnTo = Optional.empty(); + + private Optional periodStartFrom = Optional.empty(); + + private Optional periodStartTo = Optional.empty(); + + private Optional periodEndFrom = Optional.empty(); + + private Optional periodEndTo = Optional.empty(); + + private Optional amountMin = Optional.empty(); + + private Optional amountMax = Optional.empty(); + + private Optional sortBy = Optional.empty(); + + private Optional page = Optional.empty(); + + private Optional per = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(GetTaxPaymentsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + + /** + * The UUID of the company + */ + public Builder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + + /** + * Filter by tax jurisdiction. Accepts one or more two-letter state codes, or `US` for federal, as a + * comma-separated list (e.g. `IL,CA`). + * + *

    Codes are case-insensitive. + */ + public Builder jurisdiction(List jurisdiction) { + Utils.checkNotNull(jurisdiction, "jurisdiction"); + this.jurisdiction = Optional.ofNullable(jurisdiction); + return this; + } + + /** + * Filter by tax jurisdiction. Accepts one or more two-letter state codes, or `US` for federal, as a + * comma-separated list (e.g. `IL,CA`). + * + *

    Codes are case-insensitive. + */ + public Builder jurisdiction(Optional> jurisdiction) { + Utils.checkNotNull(jurisdiction, "jurisdiction"); + this.jurisdiction = jurisdiction; + return this; + } + + + /** + * Filter to tax payments associated with one or more payrolls, given as a comma-separated list of + * payroll UUIDs. + */ + public Builder payrollUuids(List payrollUuids) { + Utils.checkNotNull(payrollUuids, "payrollUuids"); + this.payrollUuids = Optional.ofNullable(payrollUuids); + return this; + } + + /** + * Filter to tax payments associated with one or more payrolls, given as a comma-separated list of + * payroll UUIDs. + */ + public Builder payrollUuids(Optional> payrollUuids) { + Utils.checkNotNull(payrollUuids, "payrollUuids"); + this.payrollUuids = payrollUuids; + return this; + } + + + /** + * Lower-bound (inclusive) date filter on due_date. + */ + public Builder dueDateFrom(LocalDate dueDateFrom) { + Utils.checkNotNull(dueDateFrom, "dueDateFrom"); + this.dueDateFrom = Optional.ofNullable(dueDateFrom); + return this; + } + + /** + * Lower-bound (inclusive) date filter on due_date. + */ + public Builder dueDateFrom(Optional dueDateFrom) { + Utils.checkNotNull(dueDateFrom, "dueDateFrom"); + this.dueDateFrom = dueDateFrom; + return this; + } + + + /** + * Upper-bound (inclusive) date filter on due_date. + */ + public Builder dueDateTo(LocalDate dueDateTo) { + Utils.checkNotNull(dueDateTo, "dueDateTo"); + this.dueDateTo = Optional.ofNullable(dueDateTo); + return this; + } + + /** + * Upper-bound (inclusive) date filter on due_date. + */ + public Builder dueDateTo(Optional dueDateTo) { + Utils.checkNotNull(dueDateTo, "dueDateTo"); + this.dueDateTo = dueDateTo; + return this; + } + + + /** + * Lower-bound (inclusive) date filter on payment_sent_on. + */ + public Builder paymentSentOnFrom(LocalDate paymentSentOnFrom) { + Utils.checkNotNull(paymentSentOnFrom, "paymentSentOnFrom"); + this.paymentSentOnFrom = Optional.ofNullable(paymentSentOnFrom); + return this; + } + + /** + * Lower-bound (inclusive) date filter on payment_sent_on. + */ + public Builder paymentSentOnFrom(Optional paymentSentOnFrom) { + Utils.checkNotNull(paymentSentOnFrom, "paymentSentOnFrom"); + this.paymentSentOnFrom = paymentSentOnFrom; + return this; + } + + + /** + * Upper-bound (inclusive) date filter on payment_sent_on. + */ + public Builder paymentSentOnTo(LocalDate paymentSentOnTo) { + Utils.checkNotNull(paymentSentOnTo, "paymentSentOnTo"); + this.paymentSentOnTo = Optional.ofNullable(paymentSentOnTo); + return this; + } + + /** + * Upper-bound (inclusive) date filter on payment_sent_on. + */ + public Builder paymentSentOnTo(Optional paymentSentOnTo) { + Utils.checkNotNull(paymentSentOnTo, "paymentSentOnTo"); + this.paymentSentOnTo = paymentSentOnTo; + return this; + } + + + /** + * Lower-bound (inclusive) date filter on period_start. + */ + public Builder periodStartFrom(LocalDate periodStartFrom) { + Utils.checkNotNull(periodStartFrom, "periodStartFrom"); + this.periodStartFrom = Optional.ofNullable(periodStartFrom); + return this; + } + + /** + * Lower-bound (inclusive) date filter on period_start. + */ + public Builder periodStartFrom(Optional periodStartFrom) { + Utils.checkNotNull(periodStartFrom, "periodStartFrom"); + this.periodStartFrom = periodStartFrom; + return this; + } + + + /** + * Upper-bound (inclusive) date filter on period_start. + */ + public Builder periodStartTo(LocalDate periodStartTo) { + Utils.checkNotNull(periodStartTo, "periodStartTo"); + this.periodStartTo = Optional.ofNullable(periodStartTo); + return this; + } + + /** + * Upper-bound (inclusive) date filter on period_start. + */ + public Builder periodStartTo(Optional periodStartTo) { + Utils.checkNotNull(periodStartTo, "periodStartTo"); + this.periodStartTo = periodStartTo; + return this; + } + + + /** + * Lower-bound (inclusive) date filter on period_end. + */ + public Builder periodEndFrom(LocalDate periodEndFrom) { + Utils.checkNotNull(periodEndFrom, "periodEndFrom"); + this.periodEndFrom = Optional.ofNullable(periodEndFrom); + return this; + } + + /** + * Lower-bound (inclusive) date filter on period_end. + */ + public Builder periodEndFrom(Optional periodEndFrom) { + Utils.checkNotNull(periodEndFrom, "periodEndFrom"); + this.periodEndFrom = periodEndFrom; + return this; + } + + + /** + * Upper-bound (inclusive) date filter on period_end. + */ + public Builder periodEndTo(LocalDate periodEndTo) { + Utils.checkNotNull(periodEndTo, "periodEndTo"); + this.periodEndTo = Optional.ofNullable(periodEndTo); + return this; + } + + /** + * Upper-bound (inclusive) date filter on period_end. + */ + public Builder periodEndTo(Optional periodEndTo) { + Utils.checkNotNull(periodEndTo, "periodEndTo"); + this.periodEndTo = periodEndTo; + return this; + } + + + /** + * Lower-bound (inclusive) filter on amount. + */ + public Builder amountMin(float amountMin) { + Utils.checkNotNull(amountMin, "amountMin"); + this.amountMin = Optional.ofNullable(amountMin); + return this; + } + + /** + * Lower-bound (inclusive) filter on amount. + */ + public Builder amountMin(Optional amountMin) { + Utils.checkNotNull(amountMin, "amountMin"); + this.amountMin = amountMin; + return this; + } + + + /** + * Upper-bound (inclusive) filter on amount. + */ + public Builder amountMax(float amountMax) { + Utils.checkNotNull(amountMax, "amountMax"); + this.amountMax = Optional.ofNullable(amountMax); + return this; + } + + /** + * Upper-bound (inclusive) filter on amount. + */ + public Builder amountMax(Optional amountMax) { + Utils.checkNotNull(amountMax, "amountMax"); + this.amountMax = amountMax; + return this; + } + + + /** + * Sort by one or more fields. Options: amount, due_date, payment_sent_on, period_end, period_start. + * Append `:asc` or `:desc` to specify direction (e.g., `amount:asc`). + * + *

    Defaults to ascending. + */ + public Builder sortBy(String sortBy) { + Utils.checkNotNull(sortBy, "sortBy"); + this.sortBy = Optional.ofNullable(sortBy); + return this; + } + + /** + * Sort by one or more fields. Options: amount, due_date, payment_sent_on, period_end, period_start. + * Append `:asc` or `:desc` to specify direction (e.g., `amount:asc`). + * + *

    Defaults to ascending. + */ + public Builder sortBy(Optional sortBy) { + Utils.checkNotNull(sortBy, "sortBy"); + this.sortBy = sortBy; + return this; + } + + + /** + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. + */ + public Builder page(long page) { + Utils.checkNotNull(page, "page"); + this.page = Optional.ofNullable(page); + return this; + } + + /** + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. + */ + public Builder page(Optional page) { + Utils.checkNotNull(page, "page"); + this.page = page; + return this; + } + + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + public Builder per(long per) { + Utils.checkNotNull(per, "per"); + this.per = Optional.ofNullable(per); + return this; + } + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + public Builder per(Optional per) { + Utils.checkNotNull(per, "per"); + this.per = per; + return this; + } + + public GetTaxPaymentsRequest build() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + return new GetTaxPaymentsRequest( + xGustoAPIVersion, companyUuid, jurisdiction, + payrollUuids, dueDateFrom, dueDateTo, + paymentSentOnFrom, paymentSentOnTo, periodStartFrom, + periodStartTo, periodEndFrom, periodEndTo, + amountMin, amountMax, sortBy, + page, per); + } + + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "X-Gusto-API-Version", + "\"2025-11-15\"", + new TypeReference>() {}); + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetTaxPaymentsRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetTaxPaymentsRequestBuilder.java new file mode 100644 index 000000000..1ea140d9e --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetTaxPaymentsRequestBuilder.java @@ -0,0 +1,36 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.RequestOperation; + +import com.gusto.embedded_api_v_2025_11_15.SDKConfiguration; +import com.gusto.embedded_api_v_2025_11_15.operations.GetTaxPayments; +import com.gusto.embedded_api_v_2025_11_15.utils.Headers; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; + +public class GetTaxPaymentsRequestBuilder { + + private GetTaxPaymentsRequest request; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public GetTaxPaymentsRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public GetTaxPaymentsRequestBuilder request(GetTaxPaymentsRequest request) { + Utils.checkNotNull(request, "request"); + this.request = request; + return this; + } + + public GetTaxPaymentsResponse call() { + + RequestOperation operation + = new GetTaxPayments.Sync(sdkConfiguration, _headers); + + return operation.handleResponse(operation.doRequest(request)); + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetTaxPaymentsResponse.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetTaxPaymentsResponse.java new file mode 100644 index 000000000..548031253 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetTaxPaymentsResponse.java @@ -0,0 +1,254 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2025_11_15.models.components.TaxPayment; +import com.gusto.embedded_api_v_2025_11_15.utils.Response; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.io.InputStream; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.List; +import java.util.Optional; + + +public class GetTaxPaymentsResponse implements Response { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * Success + */ + private Optional> taxPaymentList; + + @JsonCreator + public GetTaxPaymentsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional> taxPaymentList) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(taxPaymentList, "taxPaymentList"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.taxPaymentList = taxPaymentList; + } + + public GetTaxPaymentsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * Success + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> taxPaymentList() { + return (Optional>) taxPaymentList; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public GetTaxPaymentsResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public GetTaxPaymentsResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public GetTaxPaymentsResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * Success + */ + public GetTaxPaymentsResponse withTaxPaymentList(List taxPaymentList) { + Utils.checkNotNull(taxPaymentList, "taxPaymentList"); + this.taxPaymentList = Optional.ofNullable(taxPaymentList); + return this; + } + + + /** + * Success + */ + public GetTaxPaymentsResponse withTaxPaymentList(Optional> taxPaymentList) { + Utils.checkNotNull(taxPaymentList, "taxPaymentList"); + this.taxPaymentList = taxPaymentList; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetTaxPaymentsResponse other = (GetTaxPaymentsResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.taxPaymentList, other.taxPaymentList); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + taxPaymentList); + } + + @Override + public String toString() { + return Utils.toString(GetTaxPaymentsResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "taxPaymentList", taxPaymentList); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional> taxPaymentList = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * Success + */ + public Builder taxPaymentList(List taxPaymentList) { + Utils.checkNotNull(taxPaymentList, "taxPaymentList"); + this.taxPaymentList = Optional.ofNullable(taxPaymentList); + return this; + } + + /** + * Success + */ + public Builder taxPaymentList(Optional> taxPaymentList) { + Utils.checkNotNull(taxPaymentList, "taxPaymentList"); + this.taxPaymentList = taxPaymentList; + return this; + } + + public GetTaxPaymentsResponse build() { + + return new GetTaxPaymentsResponse( + contentType, statusCode, rawResponse, + taxPaymentList); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1BenefitsResponse.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1BenefitsResponse.java index 9c7ed838a..90f69315c 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1BenefitsResponse.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1BenefitsResponse.java @@ -37,22 +37,22 @@ public class GetV1BenefitsResponse implements Response { /** * Successful */ - private Optional> supportedBenefits; + private Optional> supportedBenefitList; @JsonCreator public GetV1BenefitsResponse( String contentType, int statusCode, HttpResponse rawResponse, - Optional> supportedBenefits) { + Optional> supportedBenefitList) { Utils.checkNotNull(contentType, "contentType"); Utils.checkNotNull(statusCode, "statusCode"); Utils.checkNotNull(rawResponse, "rawResponse"); - Utils.checkNotNull(supportedBenefits, "supportedBenefits"); + Utils.checkNotNull(supportedBenefitList, "supportedBenefitList"); this.contentType = contentType; this.statusCode = statusCode; this.rawResponse = rawResponse; - this.supportedBenefits = supportedBenefits; + this.supportedBenefitList = supportedBenefitList; } public GetV1BenefitsResponse( @@ -92,8 +92,8 @@ public HttpResponse rawResponse() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional> supportedBenefits() { - return (Optional>) supportedBenefits; + public Optional> supportedBenefitList() { + return (Optional>) supportedBenefitList; } public static Builder builder() { @@ -131,9 +131,9 @@ public GetV1BenefitsResponse withRawResponse(HttpResponse rawRespon /** * Successful */ - public GetV1BenefitsResponse withSupportedBenefits(List supportedBenefits) { - Utils.checkNotNull(supportedBenefits, "supportedBenefits"); - this.supportedBenefits = Optional.ofNullable(supportedBenefits); + public GetV1BenefitsResponse withSupportedBenefitList(List supportedBenefitList) { + Utils.checkNotNull(supportedBenefitList, "supportedBenefitList"); + this.supportedBenefitList = Optional.ofNullable(supportedBenefitList); return this; } @@ -141,9 +141,9 @@ public GetV1BenefitsResponse withSupportedBenefits(List suppor /** * Successful */ - public GetV1BenefitsResponse withSupportedBenefits(Optional> supportedBenefits) { - Utils.checkNotNull(supportedBenefits, "supportedBenefits"); - this.supportedBenefits = supportedBenefits; + public GetV1BenefitsResponse withSupportedBenefitList(Optional> supportedBenefitList) { + Utils.checkNotNull(supportedBenefitList, "supportedBenefitList"); + this.supportedBenefitList = supportedBenefitList; return this; } @@ -160,14 +160,14 @@ public boolean equals(java.lang.Object o) { Utils.enhancedDeepEquals(this.contentType, other.contentType) && Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && - Utils.enhancedDeepEquals(this.supportedBenefits, other.supportedBenefits); + Utils.enhancedDeepEquals(this.supportedBenefitList, other.supportedBenefitList); } @Override public int hashCode() { return Utils.enhancedHash( contentType, statusCode, rawResponse, - supportedBenefits); + supportedBenefitList); } @Override @@ -176,7 +176,7 @@ public String toString() { "contentType", contentType, "statusCode", statusCode, "rawResponse", rawResponse, - "supportedBenefits", supportedBenefits); + "supportedBenefitList", supportedBenefitList); } @SuppressWarnings("UnusedReturnValue") @@ -188,7 +188,7 @@ public final static class Builder { private HttpResponse rawResponse; - private Optional> supportedBenefits = Optional.empty(); + private Optional> supportedBenefitList = Optional.empty(); private Builder() { // force use of static builder() method @@ -228,18 +228,18 @@ public Builder rawResponse(HttpResponse rawResponse) { /** * Successful */ - public Builder supportedBenefits(List supportedBenefits) { - Utils.checkNotNull(supportedBenefits, "supportedBenefits"); - this.supportedBenefits = Optional.ofNullable(supportedBenefits); + public Builder supportedBenefitList(List supportedBenefitList) { + Utils.checkNotNull(supportedBenefitList, "supportedBenefitList"); + this.supportedBenefitList = Optional.ofNullable(supportedBenefitList); return this; } /** * Successful */ - public Builder supportedBenefits(Optional> supportedBenefits) { - Utils.checkNotNull(supportedBenefits, "supportedBenefits"); - this.supportedBenefits = supportedBenefits; + public Builder supportedBenefitList(Optional> supportedBenefitList) { + Utils.checkNotNull(supportedBenefitList, "supportedBenefitList"); + this.supportedBenefitList = supportedBenefitList; return this; } @@ -247,7 +247,7 @@ public GetV1BenefitsResponse build() { return new GetV1BenefitsResponse( contentType, statusCode, rawResponse, - supportedBenefits); + supportedBenefitList); } } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion.java new file mode 100644 index 000000000..8f143a925 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion + * + *

    Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ +public enum GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion { + TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15("2025-11-15"); + + @JsonValue + private final String value; + + GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion o: GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1BulkReportsRequestUuidRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1BulkReportsRequestUuidRequest.java new file mode 100644 index 000000000..b18d6f352 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1BulkReportsRequestUuidRequest.java @@ -0,0 +1,191 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2025_11_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2025_11_15.utils.SpeakeasyMetadata; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class GetV1BulkReportsRequestUuidRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + + /** + * The UUID of the bulk report batch. + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=request_uuid") + private String requestUuid; + + @JsonCreator + public GetV1BulkReportsRequestUuidRequest( + Optional xGustoAPIVersion, + String requestUuid) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(requestUuid, "requestUuid"); + this.xGustoAPIVersion = xGustoAPIVersion; + this.requestUuid = requestUuid; + } + + public GetV1BulkReportsRequestUuidRequest( + String requestUuid) { + this(Optional.empty(), requestUuid); + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + + /** + * The UUID of the bulk report batch. + */ + @JsonIgnore + public String requestUuid() { + return requestUuid; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetV1BulkReportsRequestUuidRequest withXGustoAPIVersion(GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetV1BulkReportsRequestUuidRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + /** + * The UUID of the bulk report batch. + */ + public GetV1BulkReportsRequestUuidRequest withRequestUuid(String requestUuid) { + Utils.checkNotNull(requestUuid, "requestUuid"); + this.requestUuid = requestUuid; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetV1BulkReportsRequestUuidRequest other = (GetV1BulkReportsRequestUuidRequest) o; + return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.requestUuid, other.requestUuid); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + xGustoAPIVersion, requestUuid); + } + + @Override + public String toString() { + return Utils.toString(GetV1BulkReportsRequestUuidRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, + "requestUuid", requestUuid); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional xGustoAPIVersion; + + private String requestUuid; + + private Builder() { + // force use of static builder() method + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + + /** + * The UUID of the bulk report batch. + */ + public Builder requestUuid(String requestUuid) { + Utils.checkNotNull(requestUuid, "requestUuid"); + this.requestUuid = requestUuid; + return this; + } + + public GetV1BulkReportsRequestUuidRequest build() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + return new GetV1BulkReportsRequestUuidRequest( + xGustoAPIVersion, requestUuid); + } + + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "X-Gusto-API-Version", + "\"2025-11-15\"", + new TypeReference>() {}); + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1BulkReportsRequestUuidRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1BulkReportsRequestUuidRequestBuilder.java new file mode 100644 index 000000000..018b963ff --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1BulkReportsRequestUuidRequestBuilder.java @@ -0,0 +1,82 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.RequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2025_11_15.SDKConfiguration; +import com.gusto.embedded_api_v_2025_11_15.operations.GetV1BulkReportsRequestUuid; +import com.gusto.embedded_api_v_2025_11_15.utils.Headers; +import com.gusto.embedded_api_v_2025_11_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.String; +import java.util.Optional; + +public class GetV1BulkReportsRequestUuidRequestBuilder { + + private GetV1BulkReportsRequestUuidSecurity security; + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2025-11-15\"", + new TypeReference>() {}); + private String requestUuid; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public GetV1BulkReportsRequestUuidRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public GetV1BulkReportsRequestUuidRequestBuilder security(GetV1BulkReportsRequestUuidSecurity security) { + Utils.checkNotNull(security, "security"); + this.security = security; + return this; + } + + public GetV1BulkReportsRequestUuidRequestBuilder xGustoAPIVersion(GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetV1BulkReportsRequestUuidRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public GetV1BulkReportsRequestUuidRequestBuilder requestUuid(String requestUuid) { + Utils.checkNotNull(requestUuid, "requestUuid"); + this.requestUuid = requestUuid; + return this; + } + + + private GetV1BulkReportsRequestUuidRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + GetV1BulkReportsRequestUuidRequest request = new GetV1BulkReportsRequestUuidRequest(xGustoAPIVersion, + requestUuid); + + return request; + } + + public GetV1BulkReportsRequestUuidResponse call() { + + RequestOperation operation + = new GetV1BulkReportsRequestUuid.Sync(sdkConfiguration, security, _headers); + GetV1BulkReportsRequestUuidRequest request = buildRequest(); + + return operation.handleResponse(operation.doRequest(request)); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2025-11-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1BulkReportsRequestUuidResponse.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1BulkReportsRequestUuidResponse.java new file mode 100644 index 000000000..190bbc64b --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1BulkReportsRequestUuidResponse.java @@ -0,0 +1,253 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2025_11_15.models.components.BulkReport; +import com.gusto.embedded_api_v_2025_11_15.utils.Response; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.io.InputStream; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.Optional; + + +public class GetV1BulkReportsRequestUuidResponse implements Response { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * OK + */ + private Optional bulkReport; + + @JsonCreator + public GetV1BulkReportsRequestUuidResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional bulkReport) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(bulkReport, "bulkReport"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.bulkReport = bulkReport; + } + + public GetV1BulkReportsRequestUuidResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * OK + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional bulkReport() { + return (Optional) bulkReport; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public GetV1BulkReportsRequestUuidResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public GetV1BulkReportsRequestUuidResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public GetV1BulkReportsRequestUuidResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * OK + */ + public GetV1BulkReportsRequestUuidResponse withBulkReport(BulkReport bulkReport) { + Utils.checkNotNull(bulkReport, "bulkReport"); + this.bulkReport = Optional.ofNullable(bulkReport); + return this; + } + + + /** + * OK + */ + public GetV1BulkReportsRequestUuidResponse withBulkReport(Optional bulkReport) { + Utils.checkNotNull(bulkReport, "bulkReport"); + this.bulkReport = bulkReport; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetV1BulkReportsRequestUuidResponse other = (GetV1BulkReportsRequestUuidResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.bulkReport, other.bulkReport); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + bulkReport); + } + + @Override + public String toString() { + return Utils.toString(GetV1BulkReportsRequestUuidResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "bulkReport", bulkReport); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional bulkReport = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * OK + */ + public Builder bulkReport(BulkReport bulkReport) { + Utils.checkNotNull(bulkReport, "bulkReport"); + this.bulkReport = Optional.ofNullable(bulkReport); + return this; + } + + /** + * OK + */ + public Builder bulkReport(Optional bulkReport) { + Utils.checkNotNull(bulkReport, "bulkReport"); + this.bulkReport = bulkReport; + return this; + } + + public GetV1BulkReportsRequestUuidResponse build() { + + return new GetV1BulkReportsRequestUuidResponse( + contentType, statusCode, rawResponse, + bulkReport); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1BulkReportsRequestUuidSecurity.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1BulkReportsRequestUuidSecurity.java new file mode 100644 index 000000000..5baa355d2 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1BulkReportsRequestUuidSecurity.java @@ -0,0 +1,91 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2025_11_15.utils.HasSecurity; +import com.gusto.embedded_api_v_2025_11_15.utils.SpeakeasyMetadata; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Override; +import java.lang.String; + + +public class GetV1BulkReportsRequestUuidSecurity implements HasSecurity { + + @SpeakeasyMetadata("security:scheme=true,type=http,subtype=bearer,name=Authorization") + private String systemAccessAuth; + + @JsonCreator + public GetV1BulkReportsRequestUuidSecurity( + String systemAccessAuth) { + Utils.checkNotNull(systemAccessAuth, "systemAccessAuth"); + this.systemAccessAuth = systemAccessAuth; + } + + @JsonIgnore + public String systemAccessAuth() { + return systemAccessAuth; + } + + public static Builder builder() { + return new Builder(); + } + + + public GetV1BulkReportsRequestUuidSecurity withSystemAccessAuth(String systemAccessAuth) { + Utils.checkNotNull(systemAccessAuth, "systemAccessAuth"); + this.systemAccessAuth = systemAccessAuth; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetV1BulkReportsRequestUuidSecurity other = (GetV1BulkReportsRequestUuidSecurity) o; + return + Utils.enhancedDeepEquals(this.systemAccessAuth, other.systemAccessAuth); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + systemAccessAuth); + } + + @Override + public String toString() { + return Utils.toString(GetV1BulkReportsRequestUuidSecurity.class, + "systemAccessAuth", systemAccessAuth); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String systemAccessAuth; + + private Builder() { + // force use of static builder() method + } + + + public Builder systemAccessAuth(String systemAccessAuth) { + Utils.checkNotNull(systemAccessAuth, "systemAccessAuth"); + this.systemAccessAuth = systemAccessAuth; + return this; + } + + public GetV1BulkReportsRequestUuidSecurity build() { + + return new GetV1BulkReportsRequestUuidSecurity( + systemAccessAuth); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdAdminsRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdAdminsRequest.java index 2657d70d3..7fc643e7b 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdAdminsRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdAdminsRequest.java @@ -23,7 +23,7 @@ public class GetV1CompaniesCompanyIdAdminsRequest { * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; + private Optional xGustoAPIVersion; /** * The UUID of the company @@ -46,7 +46,7 @@ public class GetV1CompaniesCompanyIdAdminsRequest { @JsonCreator public GetV1CompaniesCompanyIdAdminsRequest( - Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String companyId, Optional page, Optional per) { @@ -73,8 +73,8 @@ public GetV1CompaniesCompanyIdAdminsRequest( */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional xGustoAPIVersion() { - return (Optional) xGustoAPIVersion; + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; } /** @@ -112,7 +112,7 @@ public static Builder builder() { * application's [minimum API * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - public GetV1CompaniesCompanyIdAdminsRequest withXGustoAPIVersion(GetV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion xGustoAPIVersion) { + public GetV1CompaniesCompanyIdAdminsRequest withXGustoAPIVersion(HeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); return this; @@ -124,7 +124,7 @@ public GetV1CompaniesCompanyIdAdminsRequest withXGustoAPIVersion(GetV1CompaniesC * application's [minimum API * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - public GetV1CompaniesCompanyIdAdminsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + public GetV1CompaniesCompanyIdAdminsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); this.xGustoAPIVersion = xGustoAPIVersion; return this; @@ -214,7 +214,7 @@ public String toString() { @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private Optional xGustoAPIVersion; + private Optional xGustoAPIVersion; private String companyId; @@ -232,7 +232,7 @@ private Builder() { * application's [minimum API * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - public Builder xGustoAPIVersion(GetV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion xGustoAPIVersion) { + public Builder xGustoAPIVersion(HeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); return this; @@ -243,7 +243,7 @@ public Builder xGustoAPIVersion(GetV1CompaniesCompanyIdAdminsHeaderXGustoAPIVers * application's [minimum API * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); this.xGustoAPIVersion = xGustoAPIVersion; return this; @@ -310,10 +310,10 @@ public GetV1CompaniesCompanyIdAdminsRequest build() { } - private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = new LazySingletonValue<>( "X-Gusto-API-Version", "\"2025-11-15\"", - new TypeReference>() {}); + new TypeReference>() {}); } } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdAdminsRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdAdminsRequestBuilder.java index 011e8dc5c..e440da949 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdAdminsRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdAdminsRequestBuilder.java @@ -17,10 +17,10 @@ public class GetV1CompaniesCompanyIdAdminsRequestBuilder { - private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", - new TypeReference>() {}); + new TypeReference>() {}); private String companyId; private Optional page = Optional.empty(); private Optional per = Optional.empty(); @@ -31,13 +31,13 @@ public GetV1CompaniesCompanyIdAdminsRequestBuilder(SDKConfiguration sdkConfigura this.sdkConfiguration = sdkConfiguration; } - public GetV1CompaniesCompanyIdAdminsRequestBuilder xGustoAPIVersion(GetV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion xGustoAPIVersion) { + public GetV1CompaniesCompanyIdAdminsRequestBuilder xGustoAPIVersion(HeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); return this; } - public GetV1CompaniesCompanyIdAdminsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + public GetV1CompaniesCompanyIdAdminsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); this.xGustoAPIVersion = xGustoAPIVersion; return this; @@ -96,9 +96,9 @@ public GetV1CompaniesCompanyIdAdminsResponse call() { return operation.handleResponse(operation.doRequest(request)); } - private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = new LazySingletonValue<>( "xGustoAPIVersion", "\"2025-11-15\"", - new TypeReference>() {}); + new TypeReference>() {}); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdContractorPaymentGroupsRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdContractorPaymentGroupsRequest.java index be8c102ae..37599f9c3 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdContractorPaymentGroupsRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdContractorPaymentGroupsRequest.java @@ -17,6 +17,14 @@ public class GetV1CompaniesCompanyIdContractorPaymentGroupsRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + /** * The UUID of the company */ @@ -48,42 +56,45 @@ public class GetV1CompaniesCompanyIdContractorPaymentGroupsRequest { @SpeakeasyMetadata("queryParam:style=form,explode=true,name=per") private Optional per; - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; - @JsonCreator public GetV1CompaniesCompanyIdContractorPaymentGroupsRequest( + Optional xGustoAPIVersion, String companyId, Optional startDate, Optional endDate, Optional page, - Optional per, - Optional xGustoAPIVersion) { + Optional per) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(companyId, "companyId"); Utils.checkNotNull(startDate, "startDate"); Utils.checkNotNull(endDate, "endDate"); Utils.checkNotNull(page, "page"); Utils.checkNotNull(per, "per"); - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; this.companyId = companyId; this.startDate = startDate; this.endDate = endDate; this.page = page; this.per = per; - this.xGustoAPIVersion = xGustoAPIVersion; } public GetV1CompaniesCompanyIdContractorPaymentGroupsRequest( String companyId) { - this(companyId, Optional.empty(), Optional.empty(), + this(Optional.empty(), companyId, Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty()); } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + /** * The UUID of the company */ @@ -125,21 +136,33 @@ public Optional per() { return per; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional xGustoAPIVersion() { - return (Optional) xGustoAPIVersion; + public GetV1CompaniesCompanyIdContractorPaymentGroupsRequest withXGustoAPIVersion(GetV1CompaniesCompanyIdContractorPaymentGroupsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; } - public static Builder builder() { - return new Builder(); - } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetV1CompaniesCompanyIdContractorPaymentGroupsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } /** * The UUID of the company @@ -228,29 +251,6 @@ public GetV1CompaniesCompanyIdContractorPaymentGroupsRequest withPer(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } - @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -261,35 +261,37 @@ public boolean equals(java.lang.Object o) { } GetV1CompaniesCompanyIdContractorPaymentGroupsRequest other = (GetV1CompaniesCompanyIdContractorPaymentGroupsRequest) o; return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.companyId, other.companyId) && Utils.enhancedDeepEquals(this.startDate, other.startDate) && Utils.enhancedDeepEquals(this.endDate, other.endDate) && Utils.enhancedDeepEquals(this.page, other.page) && - Utils.enhancedDeepEquals(this.per, other.per) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.per, other.per); } @Override public int hashCode() { return Utils.enhancedHash( - companyId, startDate, endDate, - page, per, xGustoAPIVersion); + xGustoAPIVersion, companyId, startDate, + endDate, page, per); } @Override public String toString() { return Utils.toString(GetV1CompaniesCompanyIdContractorPaymentGroupsRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, "companyId", companyId, "startDate", startDate, "endDate", endDate, "page", page, - "per", per, - "xGustoAPIVersion", xGustoAPIVersion); + "per", per); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { + private Optional xGustoAPIVersion; + private String companyId; private Optional startDate = Optional.empty(); @@ -300,13 +302,34 @@ public final static class Builder { private Optional per = Optional.empty(); - private Optional xGustoAPIVersion; - private Builder() { // force use of static builder() method } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(GetV1CompaniesCompanyIdContractorPaymentGroupsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + /** * The UUID of the company */ @@ -394,37 +417,14 @@ public Builder per(Optional per) { return this; } - - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public Builder xGustoAPIVersion(GetV1CompaniesCompanyIdContractorPaymentGroupsHeaderXGustoAPIVersion xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); - return this; - } - - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } - public GetV1CompaniesCompanyIdContractorPaymentGroupsRequest build() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } return new GetV1CompaniesCompanyIdContractorPaymentGroupsRequest( - companyId, startDate, endDate, - page, per, xGustoAPIVersion); + xGustoAPIVersion, companyId, startDate, + endDate, page, per); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest.java index 3a243b5c4..ce68bd452 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest.java @@ -16,6 +16,14 @@ public class GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + /** * The UUID of the company. This identifies the company whose contractor payment details you want to * retrieve. @@ -37,36 +45,39 @@ public class GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest { @SpeakeasyMetadata("queryParam:style=form,explode=true,name=contractor_payment_group_uuid") private Optional contractorPaymentGroupUuid; - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; - @JsonCreator public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest( + Optional xGustoAPIVersion, String companyId, Optional contractorUuid, - Optional contractorPaymentGroupUuid, - Optional xGustoAPIVersion) { + Optional contractorPaymentGroupUuid) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(companyId, "companyId"); Utils.checkNotNull(contractorUuid, "contractorUuid"); Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; this.companyId = companyId; this.contractorUuid = contractorUuid; this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; - this.xGustoAPIVersion = xGustoAPIVersion; } public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest( String companyId) { - this(companyId, Optional.empty(), Optional.empty(), + this(Optional.empty(), companyId, Optional.empty(), Optional.empty()); } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + /** * The UUID of the company. This identifies the company whose contractor payment details you want to * retrieve. @@ -94,21 +105,33 @@ public Optional contractorPaymentGroupUuid() { return contractorPaymentGroupUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional xGustoAPIVersion() { - return (Optional) xGustoAPIVersion; + public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest withXGustoAPIVersion(GetV1CompaniesCompanyIdContractorsPaymentDetailsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; } - public static Builder builder() { - return new Builder(); - } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } /** * The UUID of the company. This identifies the company whose contractor payment details you want to @@ -162,29 +185,6 @@ public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest withContractorPay return this; } - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest withXGustoAPIVersion(GetV1CompaniesCompanyIdContractorsPaymentDetailsHeaderXGustoAPIVersion xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); - return this; - } - - - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } - @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -195,44 +195,67 @@ public boolean equals(java.lang.Object o) { } GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest other = (GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest) o; return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.companyId, other.companyId) && Utils.enhancedDeepEquals(this.contractorUuid, other.contractorUuid) && - Utils.enhancedDeepEquals(this.contractorPaymentGroupUuid, other.contractorPaymentGroupUuid) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.contractorPaymentGroupUuid, other.contractorPaymentGroupUuid); } @Override public int hashCode() { return Utils.enhancedHash( - companyId, contractorUuid, contractorPaymentGroupUuid, - xGustoAPIVersion); + xGustoAPIVersion, companyId, contractorUuid, + contractorPaymentGroupUuid); } @Override public String toString() { return Utils.toString(GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, "companyId", companyId, "contractorUuid", contractorUuid, - "contractorPaymentGroupUuid", contractorPaymentGroupUuid, - "xGustoAPIVersion", xGustoAPIVersion); + "contractorPaymentGroupUuid", contractorPaymentGroupUuid); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { + private Optional xGustoAPIVersion; + private String companyId; private Optional contractorUuid = Optional.empty(); private Optional contractorPaymentGroupUuid = Optional.empty(); - private Optional xGustoAPIVersion; - private Builder() { // force use of static builder() method } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(GetV1CompaniesCompanyIdContractorsPaymentDetailsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + /** * The UUID of the company. This identifies the company whose contractor payment details you want to * retrieve. @@ -285,37 +308,14 @@ public Builder contractorPaymentGroupUuid(Optional contractorPaymentGrou return this; } - - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public Builder xGustoAPIVersion(GetV1CompaniesCompanyIdContractorsPaymentDetailsHeaderXGustoAPIVersion xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); - return this; - } - - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } - public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest build() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } return new GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest( - companyId, contractorUuid, contractorPaymentGroupUuid, - xGustoAPIVersion); + xGustoAPIVersion, companyId, contractorUuid, + contractorPaymentGroupUuid); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder.java index 560acadf7..72ee1bc8f 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder.java @@ -16,19 +16,31 @@ public class GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder { - private String companyId; - private Optional contractorUuid = Optional.empty(); - private Optional contractorPaymentGroupUuid = Optional.empty(); private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String companyId; + private Optional contractorUuid = Optional.empty(); + private Optional contractorPaymentGroupUuid = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } + + public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder xGustoAPIVersion(GetV1CompaniesCompanyIdContractorsPaymentDetailsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder companyId(String companyId) { Utils.checkNotNull(companyId, "companyId"); @@ -59,18 +71,6 @@ public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder contractor this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; return this; } - - public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder xGustoAPIVersion(GetV1CompaniesCompanyIdContractorsPaymentDetailsHeaderXGustoAPIVersion xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); - return this; - } - - public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } private GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest buildRequest() { @@ -78,10 +78,10 @@ private GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest request = new GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest(companyId, + GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest request = new GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest(xGustoAPIVersion, + companyId, contractorUuid, - contractorPaymentGroupUuid, - xGustoAPIVersion); + contractorPaymentGroupUuid); return request; } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdEmployeesQueryParamInclude.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdEmployeesQueryParamInclude.java new file mode 100644 index 000000000..b3403881b --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdEmployeesQueryParamInclude.java @@ -0,0 +1,39 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +public enum GetV1CompaniesCompanyIdEmployeesQueryParamInclude { + ALL_COMPENSATIONS("all_compensations"), + ALL_HOME_ADDRESSES("all_home_addresses"), + COMPANY_NAME("company_name"), + CURRENT_HOME_ADDRESS("current_home_address"), + CUSTOM_FIELDS("custom_fields"), + PORTAL_INVITATIONS("portal_invitations"); + + @JsonValue + private final String value; + + GetV1CompaniesCompanyIdEmployeesQueryParamInclude(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (GetV1CompaniesCompanyIdEmployeesQueryParamInclude o: GetV1CompaniesCompanyIdEmployeesQueryParamInclude.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdEmployeesRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdEmployeesRequest.java index 8dca18ae7..36f5511b6 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdEmployeesRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdEmployeesRequest.java @@ -64,7 +64,7 @@ public class GetV1CompaniesCompanyIdEmployeesRequest { * Include the requested attribute(s) in each employee response. Multiple options are comma separated. */ @SpeakeasyMetadata("queryParam:style=form,explode=false,name=include") - private Optional> include; + private Optional> include; /** * Filters employees by those who have completed onboarding @@ -118,7 +118,7 @@ public GetV1CompaniesCompanyIdEmployeesRequest( Optional payrollUuid, Optional searchTerm, Optional sortBy, - Optional> include, + Optional> include, Optional onboarded, Optional onboardedActive, Optional terminated, @@ -224,8 +224,8 @@ public Optional sortBy() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional> include() { - return (Optional>) include; + public Optional> include() { + return (Optional>) include; } /** @@ -409,7 +409,7 @@ public GetV1CompaniesCompanyIdEmployeesRequest withSortBy(Optional sortB /** * Include the requested attribute(s) in each employee response. Multiple options are comma separated. */ - public GetV1CompaniesCompanyIdEmployeesRequest withInclude(List include) { + public GetV1CompaniesCompanyIdEmployeesRequest withInclude(List include) { Utils.checkNotNull(include, "include"); this.include = Optional.ofNullable(include); return this; @@ -419,7 +419,7 @@ public GetV1CompaniesCompanyIdEmployeesRequest withInclude(List include /** * Include the requested attribute(s) in each employee response. Multiple options are comma separated. */ - public GetV1CompaniesCompanyIdEmployeesRequest withInclude(Optional> include) { + public GetV1CompaniesCompanyIdEmployeesRequest withInclude(Optional> include) { Utils.checkNotNull(include, "include"); this.include = include; return this; @@ -632,7 +632,7 @@ public final static class Builder { private Optional sortBy = Optional.empty(); - private Optional> include = Optional.empty(); + private Optional> include = Optional.empty(); private Optional onboarded = Optional.empty(); @@ -771,7 +771,7 @@ public Builder sortBy(Optional sortBy) { /** * Include the requested attribute(s) in each employee response. Multiple options are comma separated. */ - public Builder include(List include) { + public Builder include(List include) { Utils.checkNotNull(include, "include"); this.include = Optional.ofNullable(include); return this; @@ -780,7 +780,7 @@ public Builder include(List include) { /** * Include the requested attribute(s) in each employee response. Multiple options are comma separated. */ - public Builder include(Optional> include) { + public Builder include(Optional> include) { Utils.checkNotNull(include, "include"); this.include = include; return this; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdFederalTaxDetailsRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdFederalTaxDetailsRequest.java index 243e8af0b..85d574bd6 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdFederalTaxDetailsRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdFederalTaxDetailsRequest.java @@ -16,12 +16,6 @@ public class GetV1CompaniesCompanyIdFederalTaxDetailsRequest { - /** - * The UUID of the company - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_id") - private String companyId; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class GetV1CompaniesCompanyIdFederalTaxDetailsRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_id") + private String companyId; + @JsonCreator public GetV1CompaniesCompanyIdFederalTaxDetailsRequest( - String companyId, - Optional xGustoAPIVersion) { - Utils.checkNotNull(companyId, "companyId"); + Optional xGustoAPIVersion, + String companyId) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.companyId = companyId; + Utils.checkNotNull(companyId, "companyId"); this.xGustoAPIVersion = xGustoAPIVersion; + this.companyId = companyId; } public GetV1CompaniesCompanyIdFederalTaxDetailsRequest( String companyId) { - this(companyId, Optional.empty()); - } - - /** - * The UUID of the company - */ - @JsonIgnore - public String companyId() { - return companyId; + this(Optional.empty(), companyId); } /** @@ -64,20 +56,19 @@ public Optional return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the company */ - public GetV1CompaniesCompanyIdFederalTaxDetailsRequest withCompanyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; + @JsonIgnore + public String companyId() { + return companyId; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetV1CompaniesCompanyIdFederalTaxDetailsRequest withXGustoAPIVersion(Opti return this; } + /** + * The UUID of the company + */ + public GetV1CompaniesCompanyIdFederalTaxDetailsRequest withCompanyId(String companyId) { + Utils.checkNotNull(companyId, "companyId"); + this.companyId = companyId; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -111,45 +111,35 @@ public boolean equals(java.lang.Object o) { } GetV1CompaniesCompanyIdFederalTaxDetailsRequest other = (GetV1CompaniesCompanyIdFederalTaxDetailsRequest) o; return - Utils.enhancedDeepEquals(this.companyId, other.companyId) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.companyId, other.companyId); } @Override public int hashCode() { return Utils.enhancedHash( - companyId, xGustoAPIVersion); + xGustoAPIVersion, companyId); } @Override public String toString() { return Utils.toString(GetV1CompaniesCompanyIdFederalTaxDetailsRequest.class, - "companyId", companyId, - "xGustoAPIVersion", xGustoAPIVersion); + "xGustoAPIVersion", xGustoAPIVersion, + "companyId", companyId); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String companyId; - private Optional xGustoAPIVersion; + private String companyId; + private Builder() { // force use of static builder() method } - /** - * The UUID of the company - */ - public Builder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String companyId; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } public GetV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder xGustoAPIVersion(GetV1CompaniesCompanyIdFederalTaxDetailsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public GetV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder xGustoAPIVersion(O return this; } + public GetV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder companyId(String companyId) { + Utils.checkNotNull(companyId, "companyId"); + this.companyId = companyId; + return this; + } + private GetV1CompaniesCompanyIdFederalTaxDetailsRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1CompaniesCompanyIdFederalTaxDetailsRequest request = new GetV1CompaniesCompanyIdFederalTaxDetailsRequest(companyId, - xGustoAPIVersion); + GetV1CompaniesCompanyIdFederalTaxDetailsRequest request = new GetV1CompaniesCompanyIdFederalTaxDetailsRequest(xGustoAPIVersion, + companyId); return request; } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdPaySchedulesPreviewRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdPaySchedulesPreviewRequest.java index 6fa2067f8..941ea8bdb 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdPaySchedulesPreviewRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdPaySchedulesPreviewRequest.java @@ -76,6 +76,15 @@ public class GetV1CompaniesCompanyIdPaySchedulesPreviewRequest { @SpeakeasyMetadata("queryParam:style=form,explode=true,name=end_date") private Optional endDate; + /** + * Optional UUID of an existing pay schedule. When supplied, the preview is seeded from the persisted + * schedule — including internal flags (such as arrears handling) that affect period boundaries but are + * not exposed as request parameters. Any other query parameters override individual attributes on top + * of the loaded schedule. + */ + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=pay_schedule_uuid") + private Optional payScheduleUuid; + @JsonCreator public GetV1CompaniesCompanyIdPaySchedulesPreviewRequest( Optional xGustoAPIVersion, @@ -85,7 +94,8 @@ public GetV1CompaniesCompanyIdPaySchedulesPreviewRequest( LocalDate anchorEndOfPayPeriod, Optional day1, Optional day2, - Optional endDate) { + Optional endDate, + Optional payScheduleUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(companyId, "companyId"); Utils.checkNotNull(frequency, "frequency"); @@ -94,6 +104,7 @@ public GetV1CompaniesCompanyIdPaySchedulesPreviewRequest( Utils.checkNotNull(day1, "day1"); Utils.checkNotNull(day2, "day2"); Utils.checkNotNull(endDate, "endDate"); + Utils.checkNotNull(payScheduleUuid, "payScheduleUuid"); this.xGustoAPIVersion = xGustoAPIVersion; this.companyId = companyId; this.frequency = frequency; @@ -102,6 +113,7 @@ public GetV1CompaniesCompanyIdPaySchedulesPreviewRequest( this.day1 = day1; this.day2 = day2; this.endDate = endDate; + this.payScheduleUuid = payScheduleUuid; } public GetV1CompaniesCompanyIdPaySchedulesPreviewRequest( @@ -111,7 +123,7 @@ public GetV1CompaniesCompanyIdPaySchedulesPreviewRequest( LocalDate anchorEndOfPayPeriod) { this(Optional.empty(), companyId, frequency, anchorPayDate, anchorEndOfPayPeriod, Optional.empty(), - Optional.empty(), Optional.empty()); + Optional.empty(), Optional.empty(), Optional.empty()); } /** @@ -189,6 +201,17 @@ public Optional endDate() { return endDate; } + /** + * Optional UUID of an existing pay schedule. When supplied, the preview is seeded from the persisted + * schedule — including internal flags (such as arrears handling) that affect period boundaries but are + * not exposed as request parameters. Any other query parameters override individual attributes on top + * of the loaded schedule. + */ + @JsonIgnore + public Optional payScheduleUuid() { + return payScheduleUuid; + } + public static Builder builder() { return new Builder(); } @@ -326,6 +349,31 @@ public GetV1CompaniesCompanyIdPaySchedulesPreviewRequest withEndDate(Optional payScheduleUuid) { + Utils.checkNotNull(payScheduleUuid, "payScheduleUuid"); + this.payScheduleUuid = payScheduleUuid; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -343,7 +391,8 @@ public boolean equals(java.lang.Object o) { Utils.enhancedDeepEquals(this.anchorEndOfPayPeriod, other.anchorEndOfPayPeriod) && Utils.enhancedDeepEquals(this.day1, other.day1) && Utils.enhancedDeepEquals(this.day2, other.day2) && - Utils.enhancedDeepEquals(this.endDate, other.endDate); + Utils.enhancedDeepEquals(this.endDate, other.endDate) && + Utils.enhancedDeepEquals(this.payScheduleUuid, other.payScheduleUuid); } @Override @@ -351,7 +400,7 @@ public int hashCode() { return Utils.enhancedHash( xGustoAPIVersion, companyId, frequency, anchorPayDate, anchorEndOfPayPeriod, day1, - day2, endDate); + day2, endDate, payScheduleUuid); } @Override @@ -364,7 +413,8 @@ public String toString() { "anchorEndOfPayPeriod", anchorEndOfPayPeriod, "day1", day1, "day2", day2, - "endDate", endDate); + "endDate", endDate, + "payScheduleUuid", payScheduleUuid); } @SuppressWarnings("UnusedReturnValue") @@ -386,6 +436,8 @@ public final static class Builder { private Optional endDate = Optional.empty(); + private Optional payScheduleUuid = Optional.empty(); + private Builder() { // force use of static builder() method } @@ -526,6 +578,31 @@ public Builder endDate(Optional endDate) { return this; } + + /** + * Optional UUID of an existing pay schedule. When supplied, the preview is seeded from the persisted + * schedule — including internal flags (such as arrears handling) that affect period boundaries but are + * not exposed as request parameters. Any other query parameters override individual attributes on top + * of the loaded schedule. + */ + public Builder payScheduleUuid(String payScheduleUuid) { + Utils.checkNotNull(payScheduleUuid, "payScheduleUuid"); + this.payScheduleUuid = Optional.ofNullable(payScheduleUuid); + return this; + } + + /** + * Optional UUID of an existing pay schedule. When supplied, the preview is seeded from the persisted + * schedule — including internal flags (such as arrears handling) that affect period boundaries but are + * not exposed as request parameters. Any other query parameters override individual attributes on top + * of the loaded schedule. + */ + public Builder payScheduleUuid(Optional payScheduleUuid) { + Utils.checkNotNull(payScheduleUuid, "payScheduleUuid"); + this.payScheduleUuid = payScheduleUuid; + return this; + } + public GetV1CompaniesCompanyIdPaySchedulesPreviewRequest build() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); @@ -534,7 +611,7 @@ public GetV1CompaniesCompanyIdPaySchedulesPreviewRequest build() { return new GetV1CompaniesCompanyIdPaySchedulesPreviewRequest( xGustoAPIVersion, companyId, frequency, anchorPayDate, anchorEndOfPayPeriod, day1, - day2, endDate); + day2, endDate, payScheduleUuid); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion.java new file mode 100644 index 000000000..6fd87ed34 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion + * + *

    Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ +public enum GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion { + TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15("2025-11-15"); + + @JsonValue + private final String value; + + GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion o: GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdPayrollReversalsRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdPayrollReversalsRequest.java index 6870aed55..d627cb1fa 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdPayrollReversalsRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdPayrollReversalsRequest.java @@ -6,7 +6,6 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.core.type.TypeReference; -import com.gusto.embedded_api_v_2025_11_15.models.components.VersionHeader; import com.gusto.embedded_api_v_2025_11_15.utils.LazySingletonValue; import com.gusto.embedded_api_v_2025_11_15.utils.SpeakeasyMetadata; import com.gusto.embedded_api_v_2025_11_15.utils.Utils; @@ -18,6 +17,14 @@ public class GetV1CompaniesCompanyIdPayrollReversalsRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + /** * The UUID of the company */ @@ -37,36 +44,39 @@ public class GetV1CompaniesCompanyIdPayrollReversalsRequest { @SpeakeasyMetadata("queryParam:style=form,explode=true,name=per") private Optional per; - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; - @JsonCreator public GetV1CompaniesCompanyIdPayrollReversalsRequest( + Optional xGustoAPIVersion, String companyId, Optional page, - Optional per, - Optional xGustoAPIVersion) { + Optional per) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(companyId, "companyId"); Utils.checkNotNull(page, "page"); Utils.checkNotNull(per, "per"); - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; this.companyId = companyId; this.page = page; this.per = per; - this.xGustoAPIVersion = xGustoAPIVersion; } public GetV1CompaniesCompanyIdPayrollReversalsRequest( String companyId) { - this(companyId, Optional.empty(), Optional.empty(), + this(Optional.empty(), companyId, Optional.empty(), Optional.empty()); } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + /** * The UUID of the company */ @@ -92,21 +102,33 @@ public Optional per() { return per; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional xGustoAPIVersion() { - return (Optional) xGustoAPIVersion; + public GetV1CompaniesCompanyIdPayrollReversalsRequest withXGustoAPIVersion(GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; } - public static Builder builder() { - return new Builder(); - } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetV1CompaniesCompanyIdPayrollReversalsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } /** * The UUID of the company @@ -157,29 +179,6 @@ public GetV1CompaniesCompanyIdPayrollReversalsRequest withPer(Optional per return this; } - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public GetV1CompaniesCompanyIdPayrollReversalsRequest withXGustoAPIVersion(VersionHeader xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); - return this; - } - - - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public GetV1CompaniesCompanyIdPayrollReversalsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } - @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -190,44 +189,67 @@ public boolean equals(java.lang.Object o) { } GetV1CompaniesCompanyIdPayrollReversalsRequest other = (GetV1CompaniesCompanyIdPayrollReversalsRequest) o; return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.companyId, other.companyId) && Utils.enhancedDeepEquals(this.page, other.page) && - Utils.enhancedDeepEquals(this.per, other.per) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.per, other.per); } @Override public int hashCode() { return Utils.enhancedHash( - companyId, page, per, - xGustoAPIVersion); + xGustoAPIVersion, companyId, page, + per); } @Override public String toString() { return Utils.toString(GetV1CompaniesCompanyIdPayrollReversalsRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, "companyId", companyId, "page", page, - "per", per, - "xGustoAPIVersion", xGustoAPIVersion); + "per", per); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { + private Optional xGustoAPIVersion; + private String companyId; private Optional page = Optional.empty(); private Optional per = Optional.empty(); - private Optional xGustoAPIVersion; - private Builder() { // force use of static builder() method } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + /** * The UUID of the company */ @@ -277,44 +299,21 @@ public Builder per(Optional per) { return this; } - - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public Builder xGustoAPIVersion(VersionHeader xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); - return this; - } - - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } - public GetV1CompaniesCompanyIdPayrollReversalsRequest build() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } return new GetV1CompaniesCompanyIdPayrollReversalsRequest( - companyId, page, per, - xGustoAPIVersion); + xGustoAPIVersion, companyId, page, + per); } - private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = new LazySingletonValue<>( "X-Gusto-API-Version", "\"2025-11-15\"", - new TypeReference>() {}); + new TypeReference>() {}); } } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder.java index b791f7d8f..902322d57 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder.java @@ -7,7 +7,6 @@ import com.fasterxml.jackson.core.type.TypeReference; import com.gusto.embedded_api_v_2025_11_15.SDKConfiguration; -import com.gusto.embedded_api_v_2025_11_15.models.components.VersionHeader; import com.gusto.embedded_api_v_2025_11_15.operations.GetV1CompaniesCompanyIdPayrollReversals; import com.gusto.embedded_api_v_2025_11_15.utils.Headers; import com.gusto.embedded_api_v_2025_11_15.utils.LazySingletonValue; @@ -18,19 +17,31 @@ public class GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder { + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2025-11-15\"", + new TypeReference>() {}); private String companyId; private Optional page = Optional.empty(); private Optional per = Optional.empty(); - private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( - "xGustoAPIVersion", - "\"2025-11-15\"", - new TypeReference>() {}); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } + + public GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder xGustoAPIVersion(GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } public GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder companyId(String companyId) { Utils.checkNotNull(companyId, "companyId"); @@ -61,18 +72,6 @@ public GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder per(Optional this.per = per; return this; } - - public GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder xGustoAPIVersion(VersionHeader xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); - return this; - } - - public GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } private GetV1CompaniesCompanyIdPayrollReversalsRequest buildRequest() { @@ -80,10 +79,10 @@ private GetV1CompaniesCompanyIdPayrollReversalsRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1CompaniesCompanyIdPayrollReversalsRequest request = new GetV1CompaniesCompanyIdPayrollReversalsRequest(companyId, + GetV1CompaniesCompanyIdPayrollReversalsRequest request = new GetV1CompaniesCompanyIdPayrollReversalsRequest(xGustoAPIVersion, + companyId, page, - per, - xGustoAPIVersion); + per); return request; } @@ -97,9 +96,9 @@ public GetV1CompaniesCompanyIdPayrollReversalsResponse call() { return operation.handleResponse(operation.doRequest(request)); } - private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = new LazySingletonValue<>( "xGustoAPIVersion", "\"2025-11-15\"", - new TypeReference>() {}); + new TypeReference>() {}); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.java index b09541dfb..2815a1768 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.java @@ -16,6 +16,14 @@ public class GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + /** * The UUID of the company */ @@ -28,47 +36,23 @@ public class GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest { @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=id") private String id; - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; - @JsonCreator public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest( + Optional xGustoAPIVersion, String companyId, - String id, - Optional xGustoAPIVersion) { + String id) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(companyId, "companyId"); Utils.checkNotNull(id, "id"); - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; this.companyId = companyId; this.id = id; - this.xGustoAPIVersion = xGustoAPIVersion; } public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest( String companyId, String id) { - this(companyId, id, Optional.empty()); - } - - /** - * The UUID of the company - */ - @JsonIgnore - public String companyId() { - return companyId; - } - - /** - * The UUID of the payroll - */ - @JsonIgnore - public String id() { - return id; + this(Optional.empty(), companyId, id); } /** @@ -82,29 +66,27 @@ public Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the company */ - public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest withCompanyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; + @JsonIgnore + public String companyId() { + return companyId; } /** * The UUID of the payroll */ - public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest withId(String id) { - Utils.checkNotNull(id, "id"); - this.id = id; - return this; + @JsonIgnore + public String id() { + return id; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -128,6 +110,24 @@ public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest withXGustoAP return this; } + /** + * The UUID of the company + */ + public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest withCompanyId(String companyId) { + Utils.checkNotNull(companyId, "companyId"); + this.companyId = companyId; + return this; + } + + /** + * The UUID of the payroll + */ + public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest withId(String id) { + Utils.checkNotNull(id, "id"); + this.id = id; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -138,59 +138,39 @@ public boolean equals(java.lang.Object o) { } GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest other = (GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest) o; return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.companyId, other.companyId) && - Utils.enhancedDeepEquals(this.id, other.id) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.id, other.id); } @Override public int hashCode() { return Utils.enhancedHash( - companyId, id, xGustoAPIVersion); + xGustoAPIVersion, companyId, id); } @Override public String toString() { return Utils.toString(GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, "companyId", companyId, - "id", id, - "xGustoAPIVersion", xGustoAPIVersion); + "id", id); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { + private Optional xGustoAPIVersion; + private String companyId; private String id; - private Optional xGustoAPIVersion; - private Builder() { // force use of static builder() method } - /** - * The UUID of the company - */ - public Builder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - - - /** - * The UUID of the payroll - */ - public Builder id(String id) { - Utils.checkNotNull(id, "id"); - this.id = id; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -213,13 +193,33 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String companyId; + private String id; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - - public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder id(String id) { - Utils.checkNotNull(id, "id"); - this.id = id; - return this; - } public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder xGustoAPIVersion(GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -53,15 +41,27 @@ public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder xGust return this; } + public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder companyId(String companyId) { + Utils.checkNotNull(companyId, "companyId"); + this.companyId = companyId; + return this; + } + + public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder id(String id) { + Utils.checkNotNull(id, "id"); + this.id = id; + return this; + } + private GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest request = new GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest(companyId, - id, - xGustoAPIVersion); + GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest request = new GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest(xGustoAPIVersion, + companyId, + id); return request; } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdPayrollsPayrollIdRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdPayrollsPayrollIdRequest.java index d9068dbb2..dbe4d2575 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdPayrollsPayrollIdRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyIdPayrollsPayrollIdRequest.java @@ -18,6 +18,14 @@ public class GetV1CompaniesCompanyIdPayrollsPayrollIdRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + /** * The UUID of the company */ @@ -30,14 +38,6 @@ public class GetV1CompaniesCompanyIdPayrollsPayrollIdRequest { @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=payroll_id") private String payrollId; - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; - /** * Include the requested attribute in the response, for multiple attributes comma separate the values, * i.e. `?include=benefits,deductions,taxes` @@ -69,23 +69,23 @@ public class GetV1CompaniesCompanyIdPayrollsPayrollIdRequest { @JsonCreator public GetV1CompaniesCompanyIdPayrollsPayrollIdRequest( + Optional xGustoAPIVersion, String companyId, String payrollId, - Optional xGustoAPIVersion, Optional> include, Optional page, Optional per, Optional sortBy) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(companyId, "companyId"); Utils.checkNotNull(payrollId, "payrollId"); - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(include, "include"); Utils.checkNotNull(page, "page"); Utils.checkNotNull(per, "per"); Utils.checkNotNull(sortBy, "sortBy"); + this.xGustoAPIVersion = xGustoAPIVersion; this.companyId = companyId; this.payrollId = payrollId; - this.xGustoAPIVersion = xGustoAPIVersion; this.include = include; this.page = page; this.per = per; @@ -95,11 +95,22 @@ public GetV1CompaniesCompanyIdPayrollsPayrollIdRequest( public GetV1CompaniesCompanyIdPayrollsPayrollIdRequest( String companyId, String payrollId) { - this(companyId, payrollId, Optional.empty(), + this(Optional.empty(), companyId, payrollId, Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty()); } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + /** * The UUID of the company */ @@ -116,17 +127,6 @@ public String payrollId() { return payrollId; } - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional xGustoAPIVersion() { - return (Optional) xGustoAPIVersion; - } - /** * Include the requested attribute in the response, for multiple attributes comma separate the values, * i.e. `?include=benefits,deductions,taxes` @@ -170,24 +170,6 @@ public static Builder builder() { } - /** - * The UUID of the company - */ - public GetV1CompaniesCompanyIdPayrollsPayrollIdRequest withCompanyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - - /** - * The UUID of the payroll - */ - public GetV1CompaniesCompanyIdPayrollsPayrollIdRequest withPayrollId(String payrollId) { - Utils.checkNotNull(payrollId, "payrollId"); - this.payrollId = payrollId; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -211,6 +193,24 @@ public GetV1CompaniesCompanyIdPayrollsPayrollIdRequest withXGustoAPIVersion(Opti return this; } + /** + * The UUID of the company + */ + public GetV1CompaniesCompanyIdPayrollsPayrollIdRequest withCompanyId(String companyId) { + Utils.checkNotNull(companyId, "companyId"); + this.companyId = companyId; + return this; + } + + /** + * The UUID of the payroll + */ + public GetV1CompaniesCompanyIdPayrollsPayrollIdRequest withPayrollId(String payrollId) { + Utils.checkNotNull(payrollId, "payrollId"); + this.payrollId = payrollId; + return this; + } + /** * Include the requested attribute in the response, for multiple attributes comma separate the values, * i.e. `?include=benefits,deductions,taxes` @@ -307,9 +307,9 @@ public boolean equals(java.lang.Object o) { } GetV1CompaniesCompanyIdPayrollsPayrollIdRequest other = (GetV1CompaniesCompanyIdPayrollsPayrollIdRequest) o; return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.companyId, other.companyId) && Utils.enhancedDeepEquals(this.payrollId, other.payrollId) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.include, other.include) && Utils.enhancedDeepEquals(this.page, other.page) && Utils.enhancedDeepEquals(this.per, other.per) && @@ -319,7 +319,7 @@ public boolean equals(java.lang.Object o) { @Override public int hashCode() { return Utils.enhancedHash( - companyId, payrollId, xGustoAPIVersion, + xGustoAPIVersion, companyId, payrollId, include, page, per, sortBy); } @@ -327,9 +327,9 @@ public int hashCode() { @Override public String toString() { return Utils.toString(GetV1CompaniesCompanyIdPayrollsPayrollIdRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, "companyId", companyId, "payrollId", payrollId, - "xGustoAPIVersion", xGustoAPIVersion, "include", include, "page", page, "per", per, @@ -339,12 +339,12 @@ public String toString() { @SuppressWarnings("UnusedReturnValue") public final static class Builder { + private Optional xGustoAPIVersion; + private String companyId; private String payrollId; - private Optional xGustoAPIVersion; - private Optional> include = Optional.empty(); private Optional page = Optional.empty(); @@ -358,26 +358,6 @@ private Builder() { } - /** - * The UUID of the company - */ - public Builder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - - - /** - * The UUID of the payroll - */ - public Builder payrollId(String payrollId) { - Utils.checkNotNull(payrollId, "payrollId"); - this.payrollId = payrollId; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -401,6 +381,26 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion; + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_id") + private String companyId; + /** * Whether to include processed and/or unprocessed payrolls in the response, defaults to processed, for * multiple attributes comma separate the values, i.e. `?processing_statuses=processed,unprocessed` @@ -103,12 +103,12 @@ public class GetV1CompaniesCompanyIdPayrollsRequest { * chronological order. Events are sorted by their `timestamp`. Defaults to asc if left empty. */ @SpeakeasyMetadata("queryParam:style=form,explode=true,name=sort_order") - private Optional sortOrder; + private Optional sortOrder; @JsonCreator public GetV1CompaniesCompanyIdPayrollsRequest( - String companyId, Optional xGustoAPIVersion, + String companyId, Optional> processingStatuses, Optional> payrollTypes, Optional processed, @@ -119,9 +119,9 @@ public GetV1CompaniesCompanyIdPayrollsRequest( Optional dateFilterBy, Optional page, Optional per, - Optional sortOrder) { - Utils.checkNotNull(companyId, "companyId"); + Optional sortOrder) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(companyId, "companyId"); Utils.checkNotNull(processingStatuses, "processingStatuses"); Utils.checkNotNull(payrollTypes, "payrollTypes"); Utils.checkNotNull(processed, "processed"); @@ -133,8 +133,8 @@ public GetV1CompaniesCompanyIdPayrollsRequest( Utils.checkNotNull(page, "page"); Utils.checkNotNull(per, "per"); Utils.checkNotNull(sortOrder, "sortOrder"); - this.companyId = companyId; this.xGustoAPIVersion = xGustoAPIVersion; + this.companyId = companyId; this.processingStatuses = processingStatuses; this.payrollTypes = payrollTypes; this.processed = processed; @@ -150,21 +150,13 @@ public GetV1CompaniesCompanyIdPayrollsRequest( public GetV1CompaniesCompanyIdPayrollsRequest( String companyId) { - this(companyId, Optional.empty(), Optional.empty(), + this(Optional.empty(), companyId, Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty()); } - /** - * The UUID of the company - */ - @JsonIgnore - public String companyId() { - return companyId; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -176,6 +168,14 @@ public Optional xGustoAPI return (Optional) xGustoAPIVersion; } + /** + * The UUID of the company + */ + @JsonIgnore + public String companyId() { + return companyId; + } + /** * Whether to include processed and/or unprocessed payrolls in the response, defaults to processed, for * multiple attributes comma separate the values, i.e. `?processing_statuses=processed,unprocessed` @@ -271,8 +271,8 @@ public Optional per() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional sortOrder() { - return (Optional) sortOrder; + public Optional sortOrder() { + return (Optional) sortOrder; } public static Builder builder() { @@ -280,15 +280,6 @@ public static Builder builder() { } - /** - * The UUID of the company - */ - public GetV1CompaniesCompanyIdPayrollsRequest withCompanyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -312,6 +303,15 @@ public GetV1CompaniesCompanyIdPayrollsRequest withXGustoAPIVersion(Optional per) { * A string indicating whether to sort resulting events in ascending (asc) or descending (desc) * chronological order. Events are sorted by their `timestamp`. Defaults to asc if left empty. */ - public GetV1CompaniesCompanyIdPayrollsRequest withSortOrder(SortOrder sortOrder) { + public GetV1CompaniesCompanyIdPayrollsRequest withSortOrder(QueryParamSortOrder sortOrder) { Utils.checkNotNull(sortOrder, "sortOrder"); this.sortOrder = Optional.ofNullable(sortOrder); return this; @@ -527,7 +527,7 @@ public GetV1CompaniesCompanyIdPayrollsRequest withSortOrder(SortOrder sortOrder) * A string indicating whether to sort resulting events in ascending (asc) or descending (desc) * chronological order. Events are sorted by their `timestamp`. Defaults to asc if left empty. */ - public GetV1CompaniesCompanyIdPayrollsRequest withSortOrder(Optional sortOrder) { + public GetV1CompaniesCompanyIdPayrollsRequest withSortOrder(Optional sortOrder) { Utils.checkNotNull(sortOrder, "sortOrder"); this.sortOrder = sortOrder; return this; @@ -543,8 +543,8 @@ public boolean equals(java.lang.Object o) { } GetV1CompaniesCompanyIdPayrollsRequest other = (GetV1CompaniesCompanyIdPayrollsRequest) o; return - Utils.enhancedDeepEquals(this.companyId, other.companyId) && Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.companyId, other.companyId) && Utils.enhancedDeepEquals(this.processingStatuses, other.processingStatuses) && Utils.enhancedDeepEquals(this.payrollTypes, other.payrollTypes) && Utils.enhancedDeepEquals(this.processed, other.processed) && @@ -561,7 +561,7 @@ public boolean equals(java.lang.Object o) { @Override public int hashCode() { return Utils.enhancedHash( - companyId, xGustoAPIVersion, processingStatuses, + xGustoAPIVersion, companyId, processingStatuses, payrollTypes, processed, includeOffCycle, include, startDate, endDate, dateFilterBy, page, per, @@ -571,8 +571,8 @@ public int hashCode() { @Override public String toString() { return Utils.toString(GetV1CompaniesCompanyIdPayrollsRequest.class, - "companyId", companyId, "xGustoAPIVersion", xGustoAPIVersion, + "companyId", companyId, "processingStatuses", processingStatuses, "payrollTypes", payrollTypes, "processed", processed, @@ -589,10 +589,10 @@ public String toString() { @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String companyId; - private Optional xGustoAPIVersion; + private String companyId; + private Optional> processingStatuses = Optional.empty(); private Optional> payrollTypes = Optional.empty(); @@ -613,23 +613,13 @@ public final static class Builder { private Optional per = Optional.empty(); - private Optional sortOrder = Optional.empty(); + private Optional sortOrder = Optional.empty(); private Builder() { // force use of static builder() method } - /** - * The UUID of the company - */ - public Builder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -653,6 +643,16 @@ public Builder xGustoAPIVersion(Optional per) { * A string indicating whether to sort resulting events in ascending (asc) or descending (desc) * chronological order. Events are sorted by their `timestamp`. Defaults to asc if left empty. */ - public Builder sortOrder(SortOrder sortOrder) { + public Builder sortOrder(QueryParamSortOrder sortOrder) { Utils.checkNotNull(sortOrder, "sortOrder"); this.sortOrder = Optional.ofNullable(sortOrder); return this; @@ -867,7 +867,7 @@ public Builder sortOrder(SortOrder sortOrder) { * A string indicating whether to sort resulting events in ascending (asc) or descending (desc) * chronological order. Events are sorted by their `timestamp`. Defaults to asc if left empty. */ - public Builder sortOrder(Optional sortOrder) { + public Builder sortOrder(Optional sortOrder) { Utils.checkNotNull(sortOrder, "sortOrder"); this.sortOrder = sortOrder; return this; @@ -879,7 +879,7 @@ public GetV1CompaniesCompanyIdPayrollsRequest build() { } return new GetV1CompaniesCompanyIdPayrollsRequest( - companyId, xGustoAPIVersion, processingStatuses, + xGustoAPIVersion, companyId, processingStatuses, payrollTypes, processed, includeOffCycle, include, startDate, endDate, dateFilterBy, page, per, diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyUuidSignatoriesRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyUuidSignatoriesRequest.java index debf6a97d..c70b53f06 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyUuidSignatoriesRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyUuidSignatoriesRequest.java @@ -16,12 +16,6 @@ public class GetV1CompaniesCompanyUuidSignatoriesRequest { - /** - * The UUID of the company - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") - private String companyUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class GetV1CompaniesCompanyUuidSignatoriesRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") + private String companyUuid; + @JsonCreator public GetV1CompaniesCompanyUuidSignatoriesRequest( - String companyUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(companyUuid, "companyUuid"); + Optional xGustoAPIVersion, + String companyUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.companyUuid = companyUuid; + Utils.checkNotNull(companyUuid, "companyUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.companyUuid = companyUuid; } public GetV1CompaniesCompanyUuidSignatoriesRequest( String companyUuid) { - this(companyUuid, Optional.empty()); - } - - /** - * The UUID of the company - */ - @JsonIgnore - public String companyUuid() { - return companyUuid; + this(Optional.empty(), companyUuid); } /** @@ -64,20 +56,19 @@ public Optional xGus return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the company */ - public GetV1CompaniesCompanyUuidSignatoriesRequest withCompanyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; + @JsonIgnore + public String companyUuid() { + return companyUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetV1CompaniesCompanyUuidSignatoriesRequest withXGustoAPIVersion(Optional return this; } + /** + * The UUID of the company + */ + public GetV1CompaniesCompanyUuidSignatoriesRequest withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -111,45 +111,35 @@ public boolean equals(java.lang.Object o) { } GetV1CompaniesCompanyUuidSignatoriesRequest other = (GetV1CompaniesCompanyUuidSignatoriesRequest) o; return - Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid); } @Override public int hashCode() { return Utils.enhancedHash( - companyUuid, xGustoAPIVersion); + xGustoAPIVersion, companyUuid); } @Override public String toString() { return Utils.toString(GetV1CompaniesCompanyUuidSignatoriesRequest.class, - "companyUuid", companyUuid, - "xGustoAPIVersion", xGustoAPIVersion); + "xGustoAPIVersion", xGustoAPIVersion, + "companyUuid", companyUuid); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String companyUuid; - private Optional xGustoAPIVersion; + private String companyUuid; + private Builder() { // force use of static builder() method } - /** - * The UUID of the company - */ - public Builder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String companyUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1CompaniesCompanyUuidSignatoriesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1CompaniesCompanyUuidSignatoriesRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public GetV1CompaniesCompanyUuidSignatoriesRequestBuilder xGustoAPIVersion(GetV1CompaniesCompanyUuidSignatoriesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public GetV1CompaniesCompanyUuidSignatoriesRequestBuilder xGustoAPIVersion(Optio return this; } + public GetV1CompaniesCompanyUuidSignatoriesRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + private GetV1CompaniesCompanyUuidSignatoriesRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1CompaniesCompanyUuidSignatoriesRequest request = new GetV1CompaniesCompanyUuidSignatoriesRequest(companyUuid, - xGustoAPIVersion); + GetV1CompaniesCompanyUuidSignatoriesRequest request = new GetV1CompaniesCompanyUuidSignatoriesRequest(xGustoAPIVersion, + companyUuid); return request; } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsRequest.java index 230c17b3c..2cedc8654 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsRequest.java @@ -16,12 +16,6 @@ public class GetV1CompaniesCompanyUuidTaxRequirementsRequest { - /** - * The UUID of the company - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") - private String companyUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class GetV1CompaniesCompanyUuidTaxRequirementsRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") + private String companyUuid; + @JsonCreator public GetV1CompaniesCompanyUuidTaxRequirementsRequest( - String companyUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(companyUuid, "companyUuid"); + Optional xGustoAPIVersion, + String companyUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.companyUuid = companyUuid; + Utils.checkNotNull(companyUuid, "companyUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.companyUuid = companyUuid; } public GetV1CompaniesCompanyUuidTaxRequirementsRequest( String companyUuid) { - this(companyUuid, Optional.empty()); - } - - /** - * The UUID of the company - */ - @JsonIgnore - public String companyUuid() { - return companyUuid; + this(Optional.empty(), companyUuid); } /** @@ -64,20 +56,19 @@ public Optional return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the company */ - public GetV1CompaniesCompanyUuidTaxRequirementsRequest withCompanyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; + @JsonIgnore + public String companyUuid() { + return companyUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetV1CompaniesCompanyUuidTaxRequirementsRequest withXGustoAPIVersion(Opti return this; } + /** + * The UUID of the company + */ + public GetV1CompaniesCompanyUuidTaxRequirementsRequest withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -111,45 +111,35 @@ public boolean equals(java.lang.Object o) { } GetV1CompaniesCompanyUuidTaxRequirementsRequest other = (GetV1CompaniesCompanyUuidTaxRequirementsRequest) o; return - Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid); } @Override public int hashCode() { return Utils.enhancedHash( - companyUuid, xGustoAPIVersion); + xGustoAPIVersion, companyUuid); } @Override public String toString() { return Utils.toString(GetV1CompaniesCompanyUuidTaxRequirementsRequest.class, - "companyUuid", companyUuid, - "xGustoAPIVersion", xGustoAPIVersion); + "xGustoAPIVersion", xGustoAPIVersion, + "companyUuid", companyUuid); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String companyUuid; - private Optional xGustoAPIVersion; + private String companyUuid; + private Builder() { // force use of static builder() method } - /** - * The UUID of the company - */ - public Builder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String companyUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder xGustoAPIVersion(GetV1CompaniesCompanyUuidTaxRequirementsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder xGustoAPIVersion(O return this; } + public GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + private GetV1CompaniesCompanyUuidTaxRequirementsRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1CompaniesCompanyUuidTaxRequirementsRequest request = new GetV1CompaniesCompanyUuidTaxRequirementsRequest(companyUuid, - xGustoAPIVersion); + GetV1CompaniesCompanyUuidTaxRequirementsRequest request = new GetV1CompaniesCompanyUuidTaxRequirementsRequest(xGustoAPIVersion, + companyUuid); return request; } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsStateRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsStateRequest.java index fac9aec16..083505436 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsStateRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsStateRequest.java @@ -17,6 +17,14 @@ public class GetV1CompaniesCompanyUuidTaxRequirementsStateRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + /** * The UUID of the company */ @@ -29,14 +37,6 @@ public class GetV1CompaniesCompanyUuidTaxRequirementsStateRequest { @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=state") private String state; - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; - /** * When true, return "new" requirement sets with valid `effective_from` dates that are available to * save new effective-dated values. @@ -46,27 +46,38 @@ public class GetV1CompaniesCompanyUuidTaxRequirementsStateRequest { @JsonCreator public GetV1CompaniesCompanyUuidTaxRequirementsStateRequest( + Optional xGustoAPIVersion, String companyUuid, String state, - Optional xGustoAPIVersion, Optional scheduling) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(state, "state"); - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(scheduling, "scheduling"); + this.xGustoAPIVersion = xGustoAPIVersion; this.companyUuid = companyUuid; this.state = state; - this.xGustoAPIVersion = xGustoAPIVersion; this.scheduling = scheduling; } public GetV1CompaniesCompanyUuidTaxRequirementsStateRequest( String companyUuid, String state) { - this(companyUuid, state, Optional.empty(), + this(Optional.empty(), companyUuid, state, Optional.empty()); } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + /** * The UUID of the company */ @@ -83,17 +94,6 @@ public String state() { return state; } - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional xGustoAPIVersion() { - return (Optional) xGustoAPIVersion; - } - /** * When true, return "new" requirement sets with valid `effective_from` dates that are available to * save new effective-dated values. @@ -108,24 +108,6 @@ public static Builder builder() { } - /** - * The UUID of the company - */ - public GetV1CompaniesCompanyUuidTaxRequirementsStateRequest withCompanyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - /** - * The two-letter state abbreviation - */ - public GetV1CompaniesCompanyUuidTaxRequirementsStateRequest withState(String state) { - Utils.checkNotNull(state, "state"); - this.state = state; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -149,6 +131,24 @@ public GetV1CompaniesCompanyUuidTaxRequirementsStateRequest withXGustoAPIVersion return this; } + /** + * The UUID of the company + */ + public GetV1CompaniesCompanyUuidTaxRequirementsStateRequest withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + /** + * The two-letter state abbreviation + */ + public GetV1CompaniesCompanyUuidTaxRequirementsStateRequest withState(String state) { + Utils.checkNotNull(state, "state"); + this.state = state; + return this; + } + /** * When true, return "new" requirement sets with valid `effective_from` dates that are available to * save new effective-dated values. @@ -180,37 +180,37 @@ public boolean equals(java.lang.Object o) { } GetV1CompaniesCompanyUuidTaxRequirementsStateRequest other = (GetV1CompaniesCompanyUuidTaxRequirementsStateRequest) o; return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && Utils.enhancedDeepEquals(this.state, other.state) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.scheduling, other.scheduling); } @Override public int hashCode() { return Utils.enhancedHash( - companyUuid, state, xGustoAPIVersion, + xGustoAPIVersion, companyUuid, state, scheduling); } @Override public String toString() { return Utils.toString(GetV1CompaniesCompanyUuidTaxRequirementsStateRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, "companyUuid", companyUuid, "state", state, - "xGustoAPIVersion", xGustoAPIVersion, "scheduling", scheduling); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { + private Optional xGustoAPIVersion; + private String companyUuid; private String state; - private Optional xGustoAPIVersion; - private Optional scheduling = Optional.empty(); private Builder() { @@ -218,26 +218,6 @@ private Builder() { } - /** - * The UUID of the company - */ - public Builder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - - /** - * The two-letter state abbreviation - */ - public Builder state(String state) { - Utils.checkNotNull(state, "state"); - this.state = state; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -261,6 +241,26 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String companyUuid; + private String state; private Optional scheduling = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -30,18 +30,6 @@ public class GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder { public GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - public GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder state(String state) { - Utils.checkNotNull(state, "state"); - this.state = state; - return this; - } public GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder xGustoAPIVersion(GetV1CompaniesCompanyUuidTaxRequirementsStateHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -54,6 +42,18 @@ public GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder xGustoAPIVers this.xGustoAPIVersion = xGustoAPIVersion; return this; } + + public GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + public GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder state(String state) { + Utils.checkNotNull(state, "state"); + this.state = state; + return this; + } public GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder scheduling(boolean scheduling) { Utils.checkNotNull(scheduling, "scheduling"); @@ -73,9 +73,9 @@ private GetV1CompaniesCompanyUuidTaxRequirementsStateRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1CompaniesCompanyUuidTaxRequirementsStateRequest request = new GetV1CompaniesCompanyUuidTaxRequirementsStateRequest(companyUuid, + GetV1CompaniesCompanyUuidTaxRequirementsStateRequest request = new GetV1CompaniesCompanyUuidTaxRequirementsStateRequest(xGustoAPIVersion, + companyUuid, state, - xGustoAPIVersion, scheduling); return request; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesRequest.java index 39e20b380..71f4fdcd8 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompaniesRequest.java @@ -16,12 +16,6 @@ public class GetV1CompaniesRequest { - /** - * The UUID of the company - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_id") - private String companyId; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class GetV1CompaniesRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_id") + private String companyId; + @JsonCreator public GetV1CompaniesRequest( - String companyId, - Optional xGustoAPIVersion) { - Utils.checkNotNull(companyId, "companyId"); + Optional xGustoAPIVersion, + String companyId) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.companyId = companyId; + Utils.checkNotNull(companyId, "companyId"); this.xGustoAPIVersion = xGustoAPIVersion; + this.companyId = companyId; } public GetV1CompaniesRequest( String companyId) { - this(companyId, Optional.empty()); - } - - /** - * The UUID of the company - */ - @JsonIgnore - public String companyId() { - return companyId; + this(Optional.empty(), companyId); } /** @@ -64,20 +56,19 @@ public Optional xGustoAPIVersion() { return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the company */ - public GetV1CompaniesRequest withCompanyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; + @JsonIgnore + public String companyId() { + return companyId; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetV1CompaniesRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String companyId; + private Builder() { // force use of static builder() method } - /** - * The UUID of the company - */ - public Builder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String companyId; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1CompaniesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1CompaniesRequestBuilder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } public GetV1CompaniesRequestBuilder xGustoAPIVersion(GetV1CompaniesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public GetV1CompaniesRequestBuilder xGustoAPIVersion(OptionalAvailable options: - * - all_benefits: Include all effective dated benefits for each employee instead of only the current - * benefits. - */ -public enum GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsQueryParamInclude { - ALL_BENEFITS("all_benefits"); - - @JsonValue - private final String value; - - GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsQueryParamInclude(String value) { - this.value = value; - } - - public String value() { - return value; - } - - public static Optional fromValue(String value) { - for (GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsQueryParamInclude o: GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsQueryParamInclude.values()) { - if (Objects.deepEquals(o.value, value)) { - return Optional.of(o); - } - } - return Optional.empty(); - } -} - diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsRequest.java index dd290ff4a..c7cccb7a5 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsRequest.java @@ -50,7 +50,7 @@ public class GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsRequest { * benefits. */ @SpeakeasyMetadata("queryParam:style=form,explode=true,name=include") - private Optional include; + private Optional include; @JsonCreator public GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsRequest( @@ -58,7 +58,7 @@ public GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsRequest( String companyBenefitId, Optional page, Optional per, - Optional include) { + Optional include) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(companyBenefitId, "companyBenefitId"); Utils.checkNotNull(page, "page"); @@ -120,8 +120,8 @@ public Optional per() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional include() { - return (Optional) include; + public Optional include() { + return (Optional) include; } public static Builder builder() { @@ -206,7 +206,7 @@ public GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsRequest withPer(Optio * - all_benefits: Include all effective dated benefits for each employee instead of only the current * benefits. */ - public GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsRequest withInclude(GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsQueryParamInclude include) { + public GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsRequest withInclude(QueryParamInclude include) { Utils.checkNotNull(include, "include"); this.include = Optional.ofNullable(include); return this; @@ -218,7 +218,7 @@ public GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsRequest withInclude(G * - all_benefits: Include all effective dated benefits for each employee instead of only the current * benefits. */ - public GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsRequest withInclude(Optional include) { + public GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsRequest withInclude(Optional include) { Utils.checkNotNull(include, "include"); this.include = include; return this; @@ -269,7 +269,7 @@ public final static class Builder { private Optional per = Optional.empty(); - private Optional include = Optional.empty(); + private Optional include = Optional.empty(); private Builder() { // force use of static builder() method @@ -354,7 +354,7 @@ public Builder per(Optional per) { * - all_benefits: Include all effective dated benefits for each employee instead of only the current * benefits. */ - public Builder include(GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsQueryParamInclude include) { + public Builder include(QueryParamInclude include) { Utils.checkNotNull(include, "include"); this.include = Optional.ofNullable(include); return this; @@ -365,7 +365,7 @@ public Builder include(GetV1CompanyBenefitsCompanyBenefitIdEmployeeBenefitsQuery * - all_benefits: Include all effective dated benefits for each employee instead of only the current * benefits. */ - public Builder include(Optional include) { + public Builder include(Optional include) { Utils.checkNotNull(include, "include"); this.include = include; return this; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompanyBenefitsCompanyBenefitIdQueryParamInclude.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompanyBenefitsCompanyBenefitIdQueryParamInclude.java deleted file mode 100644 index cccebe245..000000000 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompanyBenefitsCompanyBenefitIdQueryParamInclude.java +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - */ -package com.gusto.embedded_api_v_2025_11_15.models.operations; - -import com.fasterxml.jackson.annotation.JsonValue; -import java.lang.String; -import java.util.Objects; -import java.util.Optional; - -/** - * GetV1CompanyBenefitsCompanyBenefitIdQueryParamInclude - * - *

    Available options: - * - all_benefits: If with_employee_benefits=true, include all effective dated benefits for each - * employee instead of only the current benefits. - */ -public enum GetV1CompanyBenefitsCompanyBenefitIdQueryParamInclude { - ALL_BENEFITS("all_benefits"); - - @JsonValue - private final String value; - - GetV1CompanyBenefitsCompanyBenefitIdQueryParamInclude(String value) { - this.value = value; - } - - public String value() { - return value; - } - - public static Optional fromValue(String value) { - for (GetV1CompanyBenefitsCompanyBenefitIdQueryParamInclude o: GetV1CompanyBenefitsCompanyBenefitIdQueryParamInclude.values()) { - if (Objects.deepEquals(o.value, value)) { - return Optional.of(o); - } - } - return Optional.empty(); - } -} - diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompanyBenefitsCompanyBenefitIdRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompanyBenefitsCompanyBenefitIdRequest.java index 9bedf180f..f52ef9ba3 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompanyBenefitsCompanyBenefitIdRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompanyBenefitsCompanyBenefitIdRequest.java @@ -43,14 +43,14 @@ public class GetV1CompanyBenefitsCompanyBenefitIdRequest { * employee instead of only the current benefits. */ @SpeakeasyMetadata("queryParam:style=form,explode=true,name=include") - private Optional include; + private Optional include; @JsonCreator public GetV1CompanyBenefitsCompanyBenefitIdRequest( Optional xGustoAPIVersion, String companyBenefitId, Optional withEmployeeBenefits, - Optional include) { + Optional include) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(companyBenefitId, "companyBenefitId"); Utils.checkNotNull(withEmployeeBenefits, "withEmployeeBenefits"); @@ -101,8 +101,8 @@ public Optional withEmployeeBenefits() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional include() { - return (Optional) include; + public Optional include() { + return (Optional) include; } public static Builder builder() { @@ -166,7 +166,7 @@ public GetV1CompanyBenefitsCompanyBenefitIdRequest withWithEmployeeBenefits(Opti * - all_benefits: If with_employee_benefits=true, include all effective dated benefits for each * employee instead of only the current benefits. */ - public GetV1CompanyBenefitsCompanyBenefitIdRequest withInclude(GetV1CompanyBenefitsCompanyBenefitIdQueryParamInclude include) { + public GetV1CompanyBenefitsCompanyBenefitIdRequest withInclude(Include include) { Utils.checkNotNull(include, "include"); this.include = Optional.ofNullable(include); return this; @@ -178,7 +178,7 @@ public GetV1CompanyBenefitsCompanyBenefitIdRequest withInclude(GetV1CompanyBenef * - all_benefits: If with_employee_benefits=true, include all effective dated benefits for each * employee instead of only the current benefits. */ - public GetV1CompanyBenefitsCompanyBenefitIdRequest withInclude(Optional include) { + public GetV1CompanyBenefitsCompanyBenefitIdRequest withInclude(Optional include) { Utils.checkNotNull(include, "include"); this.include = include; return this; @@ -225,7 +225,7 @@ public final static class Builder { private Optional withEmployeeBenefits = Optional.empty(); - private Optional include = Optional.empty(); + private Optional include = Optional.empty(); private Builder() { // force use of static builder() method @@ -289,7 +289,7 @@ public Builder withEmployeeBenefits(Optional withEmployeeBenefits) { * - all_benefits: If with_employee_benefits=true, include all effective dated benefits for each * employee instead of only the current benefits. */ - public Builder include(GetV1CompanyBenefitsCompanyBenefitIdQueryParamInclude include) { + public Builder include(Include include) { Utils.checkNotNull(include, "include"); this.include = Optional.ofNullable(include); return this; @@ -300,7 +300,7 @@ public Builder include(GetV1CompanyBenefitsCompanyBenefitIdQueryParamInclude inc * - all_benefits: If with_employee_benefits=true, include all effective dated benefits for each * employee instead of only the current benefits. */ - public Builder include(Optional include) { + public Builder include(Optional include) { Utils.checkNotNull(include, "include"); this.include = include; return this; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompanyBenefitsCompanyBenefitIdRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompanyBenefitsCompanyBenefitIdRequestBuilder.java index 1e0276751..2030e6cc2 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompanyBenefitsCompanyBenefitIdRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompanyBenefitsCompanyBenefitIdRequestBuilder.java @@ -23,7 +23,7 @@ public class GetV1CompanyBenefitsCompanyBenefitIdRequestBuilder { new TypeReference>() {}); private String companyBenefitId; private Optional withEmployeeBenefits = Optional.empty(); - private Optional include = Optional.empty(); + private Optional include = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -61,13 +61,13 @@ public GetV1CompanyBenefitsCompanyBenefitIdRequestBuilder withEmployeeBenefits(O return this; } - public GetV1CompanyBenefitsCompanyBenefitIdRequestBuilder include(GetV1CompanyBenefitsCompanyBenefitIdQueryParamInclude include) { + public GetV1CompanyBenefitsCompanyBenefitIdRequestBuilder include(Include include) { Utils.checkNotNull(include, "include"); this.include = Optional.of(include); return this; } - public GetV1CompanyBenefitsCompanyBenefitIdRequestBuilder include(Optional include) { + public GetV1CompanyBenefitsCompanyBenefitIdRequestBuilder include(Optional include) { Utils.checkNotNull(include, "include"); this.include = include; return this; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompanyFinishOnboardingRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompanyFinishOnboardingRequest.java index 6fc092536..46df7bf6d 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompanyFinishOnboardingRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompanyFinishOnboardingRequest.java @@ -16,12 +16,6 @@ public class GetV1CompanyFinishOnboardingRequest { - /** - * The UUID of the company - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") - private String companyUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class GetV1CompanyFinishOnboardingRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") + private String companyUuid; + @JsonCreator public GetV1CompanyFinishOnboardingRequest( - String companyUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(companyUuid, "companyUuid"); + Optional xGustoAPIVersion, + String companyUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.companyUuid = companyUuid; + Utils.checkNotNull(companyUuid, "companyUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.companyUuid = companyUuid; } public GetV1CompanyFinishOnboardingRequest( String companyUuid) { - this(companyUuid, Optional.empty()); - } - - /** - * The UUID of the company - */ - @JsonIgnore - public String companyUuid() { - return companyUuid; + this(Optional.empty(), companyUuid); } /** @@ -64,20 +56,19 @@ public Optional xGustoAPIVer return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the company */ - public GetV1CompanyFinishOnboardingRequest withCompanyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; + @JsonIgnore + public String companyUuid() { + return companyUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetV1CompanyFinishOnboardingRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String companyUuid; + private Builder() { // force use of static builder() method } - /** - * The UUID of the company - */ - public Builder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String companyUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1CompanyFinishOnboardingRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1CompanyFinishOnboardingRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public GetV1CompanyFinishOnboardingRequestBuilder xGustoAPIVersion(GetV1CompanyFinishOnboardingHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public GetV1CompanyFinishOnboardingRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion; + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_id") + private String companyId; + @JsonCreator public GetV1CompanyIndustryRequest( - String companyId, - Optional xGustoAPIVersion) { - Utils.checkNotNull(companyId, "companyId"); + Optional xGustoAPIVersion, + String companyId) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.companyId = companyId; + Utils.checkNotNull(companyId, "companyId"); this.xGustoAPIVersion = xGustoAPIVersion; + this.companyId = companyId; } public GetV1CompanyIndustryRequest( String companyId) { - this(companyId, Optional.empty()); - } - - /** - * The UUID of the company - */ - @JsonIgnore - public String companyId() { - return companyId; + this(Optional.empty(), companyId); } /** @@ -64,20 +56,19 @@ public Optional xGustoAPIVersion() { return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the company */ - public GetV1CompanyIndustryRequest withCompanyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; + @JsonIgnore + public String companyId() { + return companyId; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetV1CompanyIndustryRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String companyId; + private Builder() { // force use of static builder() method } - /** - * The UUID of the company - */ - public Builder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String companyId; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1CompanyIndustryRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1CompanyIndustryRequestBuilder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } public GetV1CompanyIndustryRequestBuilder xGustoAPIVersion(GetV1CompanyIndustryHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public GetV1CompanyIndustryRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion; + /** * The UUID of the company */ @@ -29,30 +37,33 @@ public class GetV1CompanyOnboardingStatusRequest { @SpeakeasyMetadata("queryParam:style=form,explode=true,name=additional_steps") private Optional additionalSteps; - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; - @JsonCreator public GetV1CompanyOnboardingStatusRequest( + Optional xGustoAPIVersion, String companyUuid, - Optional additionalSteps, - Optional xGustoAPIVersion) { + Optional additionalSteps) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(additionalSteps, "additionalSteps"); - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; this.companyUuid = companyUuid; this.additionalSteps = additionalSteps; - this.xGustoAPIVersion = xGustoAPIVersion; } public GetV1CompanyOnboardingStatusRequest( String companyUuid) { - this(companyUuid, Optional.empty(), Optional.empty()); + this(Optional.empty(), companyUuid, Optional.empty()); + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; } /** @@ -72,21 +83,33 @@ public Optional additionalSteps() { return additionalSteps; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional xGustoAPIVersion() { - return (Optional) xGustoAPIVersion; + public GetV1CompanyOnboardingStatusRequest withXGustoAPIVersion(GetV1CompanyOnboardingStatusHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; } - public static Builder builder() { - return new Builder(); - } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetV1CompanyOnboardingStatusRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } /** * The UUID of the company @@ -118,29 +141,6 @@ public GetV1CompanyOnboardingStatusRequest withAdditionalSteps(Optional return this; } - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public GetV1CompanyOnboardingStatusRequest withXGustoAPIVersion(GetV1CompanyOnboardingStatusHeaderXGustoAPIVersion xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); - return this; - } - - - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public GetV1CompanyOnboardingStatusRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } - @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -151,39 +151,62 @@ public boolean equals(java.lang.Object o) { } GetV1CompanyOnboardingStatusRequest other = (GetV1CompanyOnboardingStatusRequest) o; return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && - Utils.enhancedDeepEquals(this.additionalSteps, other.additionalSteps) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.additionalSteps, other.additionalSteps); } @Override public int hashCode() { return Utils.enhancedHash( - companyUuid, additionalSteps, xGustoAPIVersion); + xGustoAPIVersion, companyUuid, additionalSteps); } @Override public String toString() { return Utils.toString(GetV1CompanyOnboardingStatusRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, "companyUuid", companyUuid, - "additionalSteps", additionalSteps, - "xGustoAPIVersion", xGustoAPIVersion); + "additionalSteps", additionalSteps); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { + private Optional xGustoAPIVersion; + private String companyUuid; private Optional additionalSteps = Optional.empty(); - private Optional xGustoAPIVersion; - private Builder() { // force use of static builder() method } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(GetV1CompanyOnboardingStatusHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + /** * The UUID of the company */ @@ -214,36 +237,13 @@ public Builder additionalSteps(Optional additionalSteps) { return this; } - - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public Builder xGustoAPIVersion(GetV1CompanyOnboardingStatusHeaderXGustoAPIVersion xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); - return this; - } - - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } - public GetV1CompanyOnboardingStatusRequest build() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } return new GetV1CompanyOnboardingStatusRequest( - companyUuid, additionalSteps, xGustoAPIVersion); + xGustoAPIVersion, companyUuid, additionalSteps); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompanyOnboardingStatusRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompanyOnboardingStatusRequestBuilder.java index 43830c3f0..f0caa55b4 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompanyOnboardingStatusRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1CompanyOnboardingStatusRequestBuilder.java @@ -16,18 +16,30 @@ public class GetV1CompanyOnboardingStatusRequestBuilder { - private String companyUuid; - private Optional additionalSteps = Optional.empty(); private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String companyUuid; + private Optional additionalSteps = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1CompanyOnboardingStatusRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } + + public GetV1CompanyOnboardingStatusRequestBuilder xGustoAPIVersion(GetV1CompanyOnboardingStatusHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetV1CompanyOnboardingStatusRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } public GetV1CompanyOnboardingStatusRequestBuilder companyUuid(String companyUuid) { Utils.checkNotNull(companyUuid, "companyUuid"); @@ -46,18 +58,6 @@ public GetV1CompanyOnboardingStatusRequestBuilder additionalSteps(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } private GetV1CompanyOnboardingStatusRequest buildRequest() { @@ -65,9 +65,9 @@ private GetV1CompanyOnboardingStatusRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1CompanyOnboardingStatusRequest request = new GetV1CompanyOnboardingStatusRequest(companyUuid, - additionalSteps, - xGustoAPIVersion); + GetV1CompanyOnboardingStatusRequest request = new GetV1CompanyOnboardingStatusRequest(xGustoAPIVersion, + companyUuid, + additionalSteps); return request; } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.java index 1db7704bd..76dc48cb5 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.java @@ -16,12 +16,6 @@ public class GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest { - /** - * The UUID of the contractor payment group - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=contractor_payment_group_uuid") - private String contractorPaymentGroupUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the contractor payment group + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=contractor_payment_group_uuid") + private String contractorPaymentGroupUuid; + @JsonCreator public GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest( - String contractorPaymentGroupUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); + Optional xGustoAPIVersion, + String contractorPaymentGroupUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; + Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; } public GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest( String contractorPaymentGroupUuid) { - this(contractorPaymentGroupUuid, Optional.empty()); - } - - /** - * The UUID of the contractor payment group - */ - @JsonIgnore - public String contractorPaymentGroupUuid() { - return contractorPaymentGroupUuid; + this(Optional.empty(), contractorPaymentGroupUuid); } /** @@ -64,20 +56,19 @@ public Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the contractor payment group */ - public GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest withContractorPaymentGroupUuid(String contractorPaymentGroupUuid) { - Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); - this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; - return this; + @JsonIgnore + public String contractorPaymentGroupUuid() { + return contractorPaymentGroupUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest withXGustoAPI return this; } + /** + * The UUID of the contractor payment group + */ + public GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest withContractorPaymentGroupUuid(String contractorPaymentGroupUuid) { + Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); + this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -111,45 +111,35 @@ public boolean equals(java.lang.Object o) { } GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest other = (GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest) o; return - Utils.enhancedDeepEquals(this.contractorPaymentGroupUuid, other.contractorPaymentGroupUuid) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.contractorPaymentGroupUuid, other.contractorPaymentGroupUuid); } @Override public int hashCode() { return Utils.enhancedHash( - contractorPaymentGroupUuid, xGustoAPIVersion); + xGustoAPIVersion, contractorPaymentGroupUuid); } @Override public String toString() { return Utils.toString(GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.class, - "contractorPaymentGroupUuid", contractorPaymentGroupUuid, - "xGustoAPIVersion", xGustoAPIVersion); + "xGustoAPIVersion", xGustoAPIVersion, + "contractorPaymentGroupUuid", contractorPaymentGroupUuid); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String contractorPaymentGroupUuid; - private Optional xGustoAPIVersion; + private String contractorPaymentGroupUuid; + private Builder() { // force use of static builder() method } - /** - * The UUID of the contractor payment group - */ - public Builder contractorPaymentGroupUuid(String contractorPaymentGroupUuid) { - Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); - this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String contractorPaymentGroupUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder contractorPaymentGroupUuid(String contractorPaymentGroupUuid) { - Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); - this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; - return this; - } public GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder xGustoAPIVersion(GetV1ContractorPaymentGroupsContractorPaymentGroupIdHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder xGusto return this; } + public GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder contractorPaymentGroupUuid(String contractorPaymentGroupUuid) { + Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); + this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; + return this; + } + private GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest request = new GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest(contractorPaymentGroupUuid, - xGustoAPIVersion); + GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest request = new GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest(xGustoAPIVersion, + contractorPaymentGroupUuid); return request; } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.java index c0014ab02..f213da9da 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.java @@ -16,12 +16,6 @@ public class GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest { - /** - * The UUID of the contractor payment group - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=id") - private String id; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the contractor payment group + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=id") + private String id; + @JsonCreator public GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest( - String id, - Optional xGustoAPIVersion) { - Utils.checkNotNull(id, "id"); + Optional xGustoAPIVersion, + String id) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.id = id; + Utils.checkNotNull(id, "id"); this.xGustoAPIVersion = xGustoAPIVersion; + this.id = id; } public GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest( String id) { - this(id, Optional.empty()); - } - - /** - * The UUID of the contractor payment group - */ - @JsonIgnore - public String id() { - return id; + this(Optional.empty(), id); } /** @@ -64,20 +56,19 @@ public Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the contractor payment group */ - public GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest withId(String id) { - Utils.checkNotNull(id, "id"); - this.id = id; - return this; + @JsonIgnore + public String id() { + return id; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest withXGustoAPIVe return this; } + /** + * The UUID of the contractor payment group + */ + public GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest withId(String id) { + Utils.checkNotNull(id, "id"); + this.id = id; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -111,45 +111,35 @@ public boolean equals(java.lang.Object o) { } GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest other = (GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest) o; return - Utils.enhancedDeepEquals(this.id, other.id) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.id, other.id); } @Override public int hashCode() { return Utils.enhancedHash( - id, xGustoAPIVersion); + xGustoAPIVersion, id); } @Override public String toString() { return Utils.toString(GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.class, - "id", id, - "xGustoAPIVersion", xGustoAPIVersion); + "xGustoAPIVersion", xGustoAPIVersion, + "id", id); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String id; - private Optional xGustoAPIVersion; + private String id; + private Builder() { // force use of static builder() method } - /** - * The UUID of the contractor payment group - */ - public Builder id(String id) { - Utils.checkNotNull(id, "id"); - this.id = id; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String id; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder id(String id) { - Utils.checkNotNull(id, "id"); - this.id = id; - return this; - } public GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder xGustoAPIVersion(GetV1ContractorPaymentGroupsIdPartnerDisbursementsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder xGustoAP return this; } + public GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder id(String id) { + Utils.checkNotNull(id, "id"); + this.id = id; + return this; + } + private GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest request = new GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest(id, - xGustoAPIVersion); + GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest request = new GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest(xGustoAPIVersion, + id); return request; } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.java new file mode 100644 index 000000000..84bb34b28 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion + * + *

    Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ +public enum GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion { + TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15("2025-11-15"); + + @JsonValue + private final String value; + + GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion o: GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsRequest.java new file mode 100644 index 000000000..172b52e57 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsRequest.java @@ -0,0 +1,191 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2025_11_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2025_11_15.utils.SpeakeasyMetadata; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class GetV1ContractorsContractorUuidMemberPortalInvitationsRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + + /** + * The UUID of the contractor + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=contractor_uuid") + private String contractorUuid; + + @JsonCreator + public GetV1ContractorsContractorUuidMemberPortalInvitationsRequest( + Optional xGustoAPIVersion, + String contractorUuid) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.xGustoAPIVersion = xGustoAPIVersion; + this.contractorUuid = contractorUuid; + } + + public GetV1ContractorsContractorUuidMemberPortalInvitationsRequest( + String contractorUuid) { + this(Optional.empty(), contractorUuid); + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + + /** + * The UUID of the contractor + */ + @JsonIgnore + public String contractorUuid() { + return contractorUuid; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetV1ContractorsContractorUuidMemberPortalInvitationsRequest withXGustoAPIVersion(GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetV1ContractorsContractorUuidMemberPortalInvitationsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + /** + * The UUID of the contractor + */ + public GetV1ContractorsContractorUuidMemberPortalInvitationsRequest withContractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetV1ContractorsContractorUuidMemberPortalInvitationsRequest other = (GetV1ContractorsContractorUuidMemberPortalInvitationsRequest) o; + return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.contractorUuid, other.contractorUuid); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + xGustoAPIVersion, contractorUuid); + } + + @Override + public String toString() { + return Utils.toString(GetV1ContractorsContractorUuidMemberPortalInvitationsRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, + "contractorUuid", contractorUuid); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional xGustoAPIVersion; + + private String contractorUuid; + + private Builder() { + // force use of static builder() method + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + + /** + * The UUID of the contractor + */ + public Builder contractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + + public GetV1ContractorsContractorUuidMemberPortalInvitationsRequest build() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + return new GetV1ContractorsContractorUuidMemberPortalInvitationsRequest( + xGustoAPIVersion, contractorUuid); + } + + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "X-Gusto-API-Version", + "\"2025-11-15\"", + new TypeReference>() {}); + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder.java new file mode 100644 index 000000000..5a0c8ed46 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder.java @@ -0,0 +1,75 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.RequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2025_11_15.SDKConfiguration; +import com.gusto.embedded_api_v_2025_11_15.operations.GetV1ContractorsContractorUuidMemberPortalInvitations; +import com.gusto.embedded_api_v_2025_11_15.utils.Headers; +import com.gusto.embedded_api_v_2025_11_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.String; +import java.util.Optional; + +public class GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder { + + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2025-11-15\"", + new TypeReference>() {}); + private String contractorUuid; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder xGustoAPIVersion(GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder contractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + + + private GetV1ContractorsContractorUuidMemberPortalInvitationsRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + GetV1ContractorsContractorUuidMemberPortalInvitationsRequest request = new GetV1ContractorsContractorUuidMemberPortalInvitationsRequest(xGustoAPIVersion, + contractorUuid); + + return request; + } + + public GetV1ContractorsContractorUuidMemberPortalInvitationsResponse call() { + + RequestOperation operation + = new GetV1ContractorsContractorUuidMemberPortalInvitations.Sync(sdkConfiguration, _headers); + GetV1ContractorsContractorUuidMemberPortalInvitationsRequest request = buildRequest(); + + return operation.handleResponse(operation.doRequest(request)); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2025-11-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsResponse.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsResponse.java new file mode 100644 index 000000000..856c1389a --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsResponse.java @@ -0,0 +1,253 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2025_11_15.models.components.MemberPortalInvitation; +import com.gusto.embedded_api_v_2025_11_15.utils.Response; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.io.InputStream; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.Optional; + + +public class GetV1ContractorsContractorUuidMemberPortalInvitationsResponse implements Response { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * Success + */ + private Optional memberPortalInvitation; + + @JsonCreator + public GetV1ContractorsContractorUuidMemberPortalInvitationsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional memberPortalInvitation) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(memberPortalInvitation, "memberPortalInvitation"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.memberPortalInvitation = memberPortalInvitation; + } + + public GetV1ContractorsContractorUuidMemberPortalInvitationsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * Success + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional memberPortalInvitation() { + return (Optional) memberPortalInvitation; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public GetV1ContractorsContractorUuidMemberPortalInvitationsResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public GetV1ContractorsContractorUuidMemberPortalInvitationsResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public GetV1ContractorsContractorUuidMemberPortalInvitationsResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * Success + */ + public GetV1ContractorsContractorUuidMemberPortalInvitationsResponse withMemberPortalInvitation(MemberPortalInvitation memberPortalInvitation) { + Utils.checkNotNull(memberPortalInvitation, "memberPortalInvitation"); + this.memberPortalInvitation = Optional.ofNullable(memberPortalInvitation); + return this; + } + + + /** + * Success + */ + public GetV1ContractorsContractorUuidMemberPortalInvitationsResponse withMemberPortalInvitation(Optional memberPortalInvitation) { + Utils.checkNotNull(memberPortalInvitation, "memberPortalInvitation"); + this.memberPortalInvitation = memberPortalInvitation; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetV1ContractorsContractorUuidMemberPortalInvitationsResponse other = (GetV1ContractorsContractorUuidMemberPortalInvitationsResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.memberPortalInvitation, other.memberPortalInvitation); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + memberPortalInvitation); + } + + @Override + public String toString() { + return Utils.toString(GetV1ContractorsContractorUuidMemberPortalInvitationsResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "memberPortalInvitation", memberPortalInvitation); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional memberPortalInvitation = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * Success + */ + public Builder memberPortalInvitation(MemberPortalInvitation memberPortalInvitation) { + Utils.checkNotNull(memberPortalInvitation, "memberPortalInvitation"); + this.memberPortalInvitation = Optional.ofNullable(memberPortalInvitation); + return this; + } + + /** + * Success + */ + public Builder memberPortalInvitation(Optional memberPortalInvitation) { + Utils.checkNotNull(memberPortalInvitation, "memberPortalInvitation"); + this.memberPortalInvitation = memberPortalInvitation; + return this; + } + + public GetV1ContractorsContractorUuidMemberPortalInvitationsResponse build() { + + return new GetV1ContractorsContractorUuidMemberPortalInvitationsResponse( + contentType, statusCode, rawResponse, + memberPortalInvitation); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1ContractorsContractorUuidPaymentsHeaderXGustoAPIVersion.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1ContractorsContractorUuidPaymentsHeaderXGustoAPIVersion.java new file mode 100644 index 000000000..10b72822d --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1ContractorsContractorUuidPaymentsHeaderXGustoAPIVersion.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * GetV1ContractorsContractorUuidPaymentsHeaderXGustoAPIVersion + * + *

    Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ +public enum GetV1ContractorsContractorUuidPaymentsHeaderXGustoAPIVersion { + TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15("2025-11-15"); + + @JsonValue + private final String value; + + GetV1ContractorsContractorUuidPaymentsHeaderXGustoAPIVersion(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (GetV1ContractorsContractorUuidPaymentsHeaderXGustoAPIVersion o: GetV1ContractorsContractorUuidPaymentsHeaderXGustoAPIVersion.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1ContractorsContractorUuidPaymentsRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1ContractorsContractorUuidPaymentsRequest.java new file mode 100644 index 000000000..c50d2ea39 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1ContractorsContractorUuidPaymentsRequest.java @@ -0,0 +1,384 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2025_11_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2025_11_15.utils.SpeakeasyMetadata; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Long; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class GetV1ContractorsContractorUuidPaymentsRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + + /** + * The UUID of the contractor + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=contractor_uuid") + private String contractorUuid; + + /** + * Sort the results. Format: `field` or `field:direction` where `field` is `check_date` or `created_at` + * and `direction` is `asc` or `desc`. + */ + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=sort_by") + private Optional sortBy; + + /** + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. + */ + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=page") + private Optional page; + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=per") + private Optional per; + + @JsonCreator + public GetV1ContractorsContractorUuidPaymentsRequest( + Optional xGustoAPIVersion, + String contractorUuid, + Optional sortBy, + Optional page, + Optional per) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(contractorUuid, "contractorUuid"); + Utils.checkNotNull(sortBy, "sortBy"); + Utils.checkNotNull(page, "page"); + Utils.checkNotNull(per, "per"); + this.xGustoAPIVersion = xGustoAPIVersion; + this.contractorUuid = contractorUuid; + this.sortBy = sortBy; + this.page = page; + this.per = per; + } + + public GetV1ContractorsContractorUuidPaymentsRequest( + String contractorUuid) { + this(Optional.empty(), contractorUuid, Optional.empty(), + Optional.empty(), Optional.empty()); + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + + /** + * The UUID of the contractor + */ + @JsonIgnore + public String contractorUuid() { + return contractorUuid; + } + + /** + * Sort the results. Format: `field` or `field:direction` where `field` is `check_date` or `created_at` + * and `direction` is `asc` or `desc`. + */ + @JsonIgnore + public Optional sortBy() { + return sortBy; + } + + /** + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. + */ + @JsonIgnore + public Optional page() { + return page; + } + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + @JsonIgnore + public Optional per() { + return per; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetV1ContractorsContractorUuidPaymentsRequest withXGustoAPIVersion(GetV1ContractorsContractorUuidPaymentsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetV1ContractorsContractorUuidPaymentsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + /** + * The UUID of the contractor + */ + public GetV1ContractorsContractorUuidPaymentsRequest withContractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + + /** + * Sort the results. Format: `field` or `field:direction` where `field` is `check_date` or `created_at` + * and `direction` is `asc` or `desc`. + */ + public GetV1ContractorsContractorUuidPaymentsRequest withSortBy(String sortBy) { + Utils.checkNotNull(sortBy, "sortBy"); + this.sortBy = Optional.ofNullable(sortBy); + return this; + } + + + /** + * Sort the results. Format: `field` or `field:direction` where `field` is `check_date` or `created_at` + * and `direction` is `asc` or `desc`. + */ + public GetV1ContractorsContractorUuidPaymentsRequest withSortBy(Optional sortBy) { + Utils.checkNotNull(sortBy, "sortBy"); + this.sortBy = sortBy; + return this; + } + + /** + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. + */ + public GetV1ContractorsContractorUuidPaymentsRequest withPage(long page) { + Utils.checkNotNull(page, "page"); + this.page = Optional.ofNullable(page); + return this; + } + + + /** + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. + */ + public GetV1ContractorsContractorUuidPaymentsRequest withPage(Optional page) { + Utils.checkNotNull(page, "page"); + this.page = page; + return this; + } + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + public GetV1ContractorsContractorUuidPaymentsRequest withPer(long per) { + Utils.checkNotNull(per, "per"); + this.per = Optional.ofNullable(per); + return this; + } + + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + public GetV1ContractorsContractorUuidPaymentsRequest withPer(Optional per) { + Utils.checkNotNull(per, "per"); + this.per = per; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetV1ContractorsContractorUuidPaymentsRequest other = (GetV1ContractorsContractorUuidPaymentsRequest) o; + return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.contractorUuid, other.contractorUuid) && + Utils.enhancedDeepEquals(this.sortBy, other.sortBy) && + Utils.enhancedDeepEquals(this.page, other.page) && + Utils.enhancedDeepEquals(this.per, other.per); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + xGustoAPIVersion, contractorUuid, sortBy, + page, per); + } + + @Override + public String toString() { + return Utils.toString(GetV1ContractorsContractorUuidPaymentsRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, + "contractorUuid", contractorUuid, + "sortBy", sortBy, + "page", page, + "per", per); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional xGustoAPIVersion; + + private String contractorUuid; + + private Optional sortBy = Optional.empty(); + + private Optional page = Optional.empty(); + + private Optional per = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(GetV1ContractorsContractorUuidPaymentsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + + /** + * The UUID of the contractor + */ + public Builder contractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + + + /** + * Sort the results. Format: `field` or `field:direction` where `field` is `check_date` or `created_at` + * and `direction` is `asc` or `desc`. + */ + public Builder sortBy(String sortBy) { + Utils.checkNotNull(sortBy, "sortBy"); + this.sortBy = Optional.ofNullable(sortBy); + return this; + } + + /** + * Sort the results. Format: `field` or `field:direction` where `field` is `check_date` or `created_at` + * and `direction` is `asc` or `desc`. + */ + public Builder sortBy(Optional sortBy) { + Utils.checkNotNull(sortBy, "sortBy"); + this.sortBy = sortBy; + return this; + } + + + /** + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. + */ + public Builder page(long page) { + Utils.checkNotNull(page, "page"); + this.page = Optional.ofNullable(page); + return this; + } + + /** + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. + */ + public Builder page(Optional page) { + Utils.checkNotNull(page, "page"); + this.page = page; + return this; + } + + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + public Builder per(long per) { + Utils.checkNotNull(per, "per"); + this.per = Optional.ofNullable(per); + return this; + } + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + public Builder per(Optional per) { + Utils.checkNotNull(per, "per"); + this.per = per; + return this; + } + + public GetV1ContractorsContractorUuidPaymentsRequest build() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + return new GetV1ContractorsContractorUuidPaymentsRequest( + xGustoAPIVersion, contractorUuid, sortBy, + page, per); + } + + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "X-Gusto-API-Version", + "\"2025-11-15\"", + new TypeReference>() {}); + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1ContractorsContractorUuidPaymentsRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1ContractorsContractorUuidPaymentsRequestBuilder.java new file mode 100644 index 000000000..de9352956 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1ContractorsContractorUuidPaymentsRequestBuilder.java @@ -0,0 +1,36 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.RequestOperation; + +import com.gusto.embedded_api_v_2025_11_15.SDKConfiguration; +import com.gusto.embedded_api_v_2025_11_15.operations.GetV1ContractorsContractorUuidPayments; +import com.gusto.embedded_api_v_2025_11_15.utils.Headers; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; + +public class GetV1ContractorsContractorUuidPaymentsRequestBuilder { + + private GetV1ContractorsContractorUuidPaymentsRequest request; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public GetV1ContractorsContractorUuidPaymentsRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public GetV1ContractorsContractorUuidPaymentsRequestBuilder request(GetV1ContractorsContractorUuidPaymentsRequest request) { + Utils.checkNotNull(request, "request"); + this.request = request; + return this; + } + + public GetV1ContractorsContractorUuidPaymentsResponse call() { + + RequestOperation operation + = new GetV1ContractorsContractorUuidPayments.Sync(sdkConfiguration, _headers); + + return operation.handleResponse(operation.doRequest(request)); + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1ContractorsContractorUuidPaymentsResponse.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1ContractorsContractorUuidPaymentsResponse.java new file mode 100644 index 000000000..c29ab969b --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1ContractorsContractorUuidPaymentsResponse.java @@ -0,0 +1,254 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2025_11_15.models.components.ContractorPaymentListing; +import com.gusto.embedded_api_v_2025_11_15.utils.Response; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.io.InputStream; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.List; +import java.util.Optional; + + +public class GetV1ContractorsContractorUuidPaymentsResponse implements Response { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * A JSON array of contractor payments + */ + private Optional> contractorPaymentListings; + + @JsonCreator + public GetV1ContractorsContractorUuidPaymentsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional> contractorPaymentListings) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(contractorPaymentListings, "contractorPaymentListings"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.contractorPaymentListings = contractorPaymentListings; + } + + public GetV1ContractorsContractorUuidPaymentsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * A JSON array of contractor payments + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> contractorPaymentListings() { + return (Optional>) contractorPaymentListings; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public GetV1ContractorsContractorUuidPaymentsResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public GetV1ContractorsContractorUuidPaymentsResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public GetV1ContractorsContractorUuidPaymentsResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * A JSON array of contractor payments + */ + public GetV1ContractorsContractorUuidPaymentsResponse withContractorPaymentListings(List contractorPaymentListings) { + Utils.checkNotNull(contractorPaymentListings, "contractorPaymentListings"); + this.contractorPaymentListings = Optional.ofNullable(contractorPaymentListings); + return this; + } + + + /** + * A JSON array of contractor payments + */ + public GetV1ContractorsContractorUuidPaymentsResponse withContractorPaymentListings(Optional> contractorPaymentListings) { + Utils.checkNotNull(contractorPaymentListings, "contractorPaymentListings"); + this.contractorPaymentListings = contractorPaymentListings; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetV1ContractorsContractorUuidPaymentsResponse other = (GetV1ContractorsContractorUuidPaymentsResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.contractorPaymentListings, other.contractorPaymentListings); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + contractorPaymentListings); + } + + @Override + public String toString() { + return Utils.toString(GetV1ContractorsContractorUuidPaymentsResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "contractorPaymentListings", contractorPaymentListings); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional> contractorPaymentListings = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * A JSON array of contractor payments + */ + public Builder contractorPaymentListings(List contractorPaymentListings) { + Utils.checkNotNull(contractorPaymentListings, "contractorPaymentListings"); + this.contractorPaymentListings = Optional.ofNullable(contractorPaymentListings); + return this; + } + + /** + * A JSON array of contractor payments + */ + public Builder contractorPaymentListings(Optional> contractorPaymentListings) { + Utils.checkNotNull(contractorPaymentListings, "contractorPaymentListings"); + this.contractorPaymentListings = contractorPaymentListings; + return this; + } + + public GetV1ContractorsContractorUuidPaymentsResponse build() { + + return new GetV1ContractorsContractorUuidPaymentsResponse( + contentType, statusCode, rawResponse, + contractorPaymentListings); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesEmployeeIdCustomFieldsRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesEmployeeIdCustomFieldsRequest.java index c4efd2fd1..893923bf3 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesEmployeeIdCustomFieldsRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesEmployeeIdCustomFieldsRequest.java @@ -17,6 +17,14 @@ public class GetV1EmployeesEmployeeIdCustomFieldsRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + /** * The UUID of the employee */ @@ -36,36 +44,39 @@ public class GetV1EmployeesEmployeeIdCustomFieldsRequest { @SpeakeasyMetadata("queryParam:style=form,explode=true,name=per") private Optional per; - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; - @JsonCreator public GetV1EmployeesEmployeeIdCustomFieldsRequest( + Optional xGustoAPIVersion, String employeeId, Optional page, - Optional per, - Optional xGustoAPIVersion) { + Optional per) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(employeeId, "employeeId"); Utils.checkNotNull(page, "page"); Utils.checkNotNull(per, "per"); - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; this.employeeId = employeeId; this.page = page; this.per = per; - this.xGustoAPIVersion = xGustoAPIVersion; } public GetV1EmployeesEmployeeIdCustomFieldsRequest( String employeeId) { - this(employeeId, Optional.empty(), Optional.empty(), + this(Optional.empty(), employeeId, Optional.empty(), Optional.empty()); } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + /** * The UUID of the employee */ @@ -91,21 +102,33 @@ public Optional per() { return per; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional xGustoAPIVersion() { - return (Optional) xGustoAPIVersion; + public GetV1EmployeesEmployeeIdCustomFieldsRequest withXGustoAPIVersion(GetV1EmployeesEmployeeIdCustomFieldsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; } - public static Builder builder() { - return new Builder(); - } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetV1EmployeesEmployeeIdCustomFieldsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } /** * The UUID of the employee @@ -156,29 +179,6 @@ public GetV1EmployeesEmployeeIdCustomFieldsRequest withPer(Optional per) { return this; } - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public GetV1EmployeesEmployeeIdCustomFieldsRequest withXGustoAPIVersion(GetV1EmployeesEmployeeIdCustomFieldsHeaderXGustoAPIVersion xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); - return this; - } - - - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public GetV1EmployeesEmployeeIdCustomFieldsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } - @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -189,44 +189,67 @@ public boolean equals(java.lang.Object o) { } GetV1EmployeesEmployeeIdCustomFieldsRequest other = (GetV1EmployeesEmployeeIdCustomFieldsRequest) o; return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.employeeId, other.employeeId) && Utils.enhancedDeepEquals(this.page, other.page) && - Utils.enhancedDeepEquals(this.per, other.per) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.per, other.per); } @Override public int hashCode() { return Utils.enhancedHash( - employeeId, page, per, - xGustoAPIVersion); + xGustoAPIVersion, employeeId, page, + per); } @Override public String toString() { return Utils.toString(GetV1EmployeesEmployeeIdCustomFieldsRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, "employeeId", employeeId, "page", page, - "per", per, - "xGustoAPIVersion", xGustoAPIVersion); + "per", per); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { + private Optional xGustoAPIVersion; + private String employeeId; private Optional page = Optional.empty(); private Optional per = Optional.empty(); - private Optional xGustoAPIVersion; - private Builder() { // force use of static builder() method } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(GetV1EmployeesEmployeeIdCustomFieldsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + /** * The UUID of the employee */ @@ -276,37 +299,14 @@ public Builder per(Optional per) { return this; } - - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public Builder xGustoAPIVersion(GetV1EmployeesEmployeeIdCustomFieldsHeaderXGustoAPIVersion xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); - return this; - } - - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } - public GetV1EmployeesEmployeeIdCustomFieldsRequest build() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } return new GetV1EmployeesEmployeeIdCustomFieldsRequest( - employeeId, page, per, - xGustoAPIVersion); + xGustoAPIVersion, employeeId, page, + per); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder.java index e9dfb8fee..3fa3762b2 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder.java @@ -17,19 +17,31 @@ public class GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder { - private String employeeId; - private Optional page = Optional.empty(); - private Optional per = Optional.empty(); private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String employeeId; + private Optional page = Optional.empty(); + private Optional per = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } + + public GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder xGustoAPIVersion(GetV1EmployeesEmployeeIdCustomFieldsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } public GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder employeeId(String employeeId) { Utils.checkNotNull(employeeId, "employeeId"); @@ -60,18 +72,6 @@ public GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder per(Optional per this.per = per; return this; } - - public GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder xGustoAPIVersion(GetV1EmployeesEmployeeIdCustomFieldsHeaderXGustoAPIVersion xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); - return this; - } - - public GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } private GetV1EmployeesEmployeeIdCustomFieldsRequest buildRequest() { @@ -79,10 +79,10 @@ private GetV1EmployeesEmployeeIdCustomFieldsRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1EmployeesEmployeeIdCustomFieldsRequest request = new GetV1EmployeesEmployeeIdCustomFieldsRequest(employeeId, + GetV1EmployeesEmployeeIdCustomFieldsRequest request = new GetV1EmployeesEmployeeIdCustomFieldsRequest(xGustoAPIVersion, + employeeId, page, - per, - xGustoAPIVersion); + per); return request; } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesEmployeeIdHomeAddressesRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesEmployeeIdHomeAddressesRequest.java index f78e76f54..27e68d746 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesEmployeeIdHomeAddressesRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesEmployeeIdHomeAddressesRequest.java @@ -16,12 +16,6 @@ public class GetV1EmployeesEmployeeIdHomeAddressesRequest { - /** - * The UUID of the employee - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=employee_id") - private String employeeId; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class GetV1EmployeesEmployeeIdHomeAddressesRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the employee + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=employee_id") + private String employeeId; + @JsonCreator public GetV1EmployeesEmployeeIdHomeAddressesRequest( - String employeeId, - Optional xGustoAPIVersion) { - Utils.checkNotNull(employeeId, "employeeId"); + Optional xGustoAPIVersion, + String employeeId) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.employeeId = employeeId; + Utils.checkNotNull(employeeId, "employeeId"); this.xGustoAPIVersion = xGustoAPIVersion; + this.employeeId = employeeId; } public GetV1EmployeesEmployeeIdHomeAddressesRequest( String employeeId) { - this(employeeId, Optional.empty()); - } - - /** - * The UUID of the employee - */ - @JsonIgnore - public String employeeId() { - return employeeId; + this(Optional.empty(), employeeId); } /** @@ -64,20 +56,19 @@ public Optional xGu return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the employee */ - public GetV1EmployeesEmployeeIdHomeAddressesRequest withEmployeeId(String employeeId) { - Utils.checkNotNull(employeeId, "employeeId"); - this.employeeId = employeeId; - return this; + @JsonIgnore + public String employeeId() { + return employeeId; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetV1EmployeesEmployeeIdHomeAddressesRequest withXGustoAPIVersion(Optiona return this; } + /** + * The UUID of the employee + */ + public GetV1EmployeesEmployeeIdHomeAddressesRequest withEmployeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -111,45 +111,35 @@ public boolean equals(java.lang.Object o) { } GetV1EmployeesEmployeeIdHomeAddressesRequest other = (GetV1EmployeesEmployeeIdHomeAddressesRequest) o; return - Utils.enhancedDeepEquals(this.employeeId, other.employeeId) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.employeeId, other.employeeId); } @Override public int hashCode() { return Utils.enhancedHash( - employeeId, xGustoAPIVersion); + xGustoAPIVersion, employeeId); } @Override public String toString() { return Utils.toString(GetV1EmployeesEmployeeIdHomeAddressesRequest.class, - "employeeId", employeeId, - "xGustoAPIVersion", xGustoAPIVersion); + "xGustoAPIVersion", xGustoAPIVersion, + "employeeId", employeeId); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String employeeId; - private Optional xGustoAPIVersion; + private String employeeId; + private Builder() { // force use of static builder() method } - /** - * The UUID of the employee - */ - public Builder employeeId(String employeeId) { - Utils.checkNotNull(employeeId, "employeeId"); - this.employeeId = employeeId; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String employeeId; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1EmployeesEmployeeIdHomeAddressesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1EmployeesEmployeeIdHomeAddressesRequestBuilder employeeId(String employeeId) { - Utils.checkNotNull(employeeId, "employeeId"); - this.employeeId = employeeId; - return this; - } public GetV1EmployeesEmployeeIdHomeAddressesRequestBuilder xGustoAPIVersion(GetV1EmployeesEmployeeIdHomeAddressesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public GetV1EmployeesEmployeeIdHomeAddressesRequestBuilder xGustoAPIVersion(Opti return this; } + public GetV1EmployeesEmployeeIdHomeAddressesRequestBuilder employeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + private GetV1EmployeesEmployeeIdHomeAddressesRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1EmployeesEmployeeIdHomeAddressesRequest request = new GetV1EmployeesEmployeeIdHomeAddressesRequest(employeeId, - xGustoAPIVersion); + GetV1EmployeesEmployeeIdHomeAddressesRequest request = new GetV1EmployeesEmployeeIdHomeAddressesRequest(xGustoAPIVersion, + employeeId); return request; } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesEmployeeIdJobsRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesEmployeeIdJobsRequest.java index 832624ca0..97f9779aa 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesEmployeeIdJobsRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesEmployeeIdJobsRequest.java @@ -17,6 +17,14 @@ public class GetV1EmployeesEmployeeIdJobsRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + /** * The UUID of the employee */ @@ -44,39 +52,42 @@ public class GetV1EmployeesEmployeeIdJobsRequest { @SpeakeasyMetadata("queryParam:style=form,explode=true,name=include") private Optional include; - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; - @JsonCreator public GetV1EmployeesEmployeeIdJobsRequest( + Optional xGustoAPIVersion, String employeeId, Optional page, Optional per, - Optional include, - Optional xGustoAPIVersion) { + Optional include) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(employeeId, "employeeId"); Utils.checkNotNull(page, "page"); Utils.checkNotNull(per, "per"); Utils.checkNotNull(include, "include"); - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; this.employeeId = employeeId; this.page = page; this.per = per; this.include = include; - this.xGustoAPIVersion = xGustoAPIVersion; } public GetV1EmployeesEmployeeIdJobsRequest( String employeeId) { - this(employeeId, Optional.empty(), Optional.empty(), + this(Optional.empty(), employeeId, Optional.empty(), Optional.empty(), Optional.empty()); } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + /** * The UUID of the employee */ @@ -113,21 +124,33 @@ public Optional include() { return (Optional) include; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional xGustoAPIVersion() { - return (Optional) xGustoAPIVersion; + public GetV1EmployeesEmployeeIdJobsRequest withXGustoAPIVersion(GetV1EmployeesEmployeeIdJobsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; } - public static Builder builder() { - return new Builder(); - } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetV1EmployeesEmployeeIdJobsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } /** * The UUID of the employee @@ -201,29 +224,6 @@ public GetV1EmployeesEmployeeIdJobsRequest withInclude(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } - @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -234,33 +234,35 @@ public boolean equals(java.lang.Object o) { } GetV1EmployeesEmployeeIdJobsRequest other = (GetV1EmployeesEmployeeIdJobsRequest) o; return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.employeeId, other.employeeId) && Utils.enhancedDeepEquals(this.page, other.page) && Utils.enhancedDeepEquals(this.per, other.per) && - Utils.enhancedDeepEquals(this.include, other.include) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.include, other.include); } @Override public int hashCode() { return Utils.enhancedHash( - employeeId, page, per, - include, xGustoAPIVersion); + xGustoAPIVersion, employeeId, page, + per, include); } @Override public String toString() { return Utils.toString(GetV1EmployeesEmployeeIdJobsRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, "employeeId", employeeId, "page", page, "per", per, - "include", include, - "xGustoAPIVersion", xGustoAPIVersion); + "include", include); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { + private Optional xGustoAPIVersion; + private String employeeId; private Optional page = Optional.empty(); @@ -269,13 +271,34 @@ public final static class Builder { private Optional include = Optional.empty(); - private Optional xGustoAPIVersion; - private Builder() { // force use of static builder() method } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(GetV1EmployeesEmployeeIdJobsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + /** * The UUID of the employee */ @@ -348,37 +371,14 @@ public Builder include(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } - public GetV1EmployeesEmployeeIdJobsRequest build() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } return new GetV1EmployeesEmployeeIdJobsRequest( - employeeId, page, per, - include, xGustoAPIVersion); + xGustoAPIVersion, employeeId, page, + per, include); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.java new file mode 100644 index 000000000..50809b342 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion + * + *

    Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ +public enum GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion { + TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15("2025-11-15"); + + @JsonValue + private final String value; + + GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion o: GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest.java new file mode 100644 index 000000000..13372779d --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest.java @@ -0,0 +1,191 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2025_11_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2025_11_15.utils.SpeakeasyMetadata; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + + /** + * The UUID of the employee + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=employee_id") + private String employeeId; + + @JsonCreator + public GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest( + Optional xGustoAPIVersion, + String employeeId) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(employeeId, "employeeId"); + this.xGustoAPIVersion = xGustoAPIVersion; + this.employeeId = employeeId; + } + + public GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest( + String employeeId) { + this(Optional.empty(), employeeId); + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + + /** + * The UUID of the employee + */ + @JsonIgnore + public String employeeId() { + return employeeId; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest withXGustoAPIVersion(GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + /** + * The UUID of the employee + */ + public GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest withEmployeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest other = (GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest) o; + return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.employeeId, other.employeeId); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + xGustoAPIVersion, employeeId); + } + + @Override + public String toString() { + return Utils.toString(GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, + "employeeId", employeeId); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional xGustoAPIVersion; + + private String employeeId; + + private Builder() { + // force use of static builder() method + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + + /** + * The UUID of the employee + */ + public Builder employeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + + public GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest build() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + return new GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest( + xGustoAPIVersion, employeeId); + } + + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "X-Gusto-API-Version", + "\"2025-11-15\"", + new TypeReference>() {}); + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java new file mode 100644 index 000000000..b960c9fd3 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java @@ -0,0 +1,75 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.RequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2025_11_15.SDKConfiguration; +import com.gusto.embedded_api_v_2025_11_15.operations.GetV1EmployeesEmployeeIdMemberPortalInvitations; +import com.gusto.embedded_api_v_2025_11_15.utils.Headers; +import com.gusto.embedded_api_v_2025_11_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.String; +import java.util.Optional; + +public class GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder { + + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2025-11-15\"", + new TypeReference>() {}); + private String employeeId; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder xGustoAPIVersion(GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder employeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + + + private GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest request = new GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest(xGustoAPIVersion, + employeeId); + + return request; + } + + public GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse call() { + + RequestOperation operation + = new GetV1EmployeesEmployeeIdMemberPortalInvitations.Sync(sdkConfiguration, _headers); + GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest request = buildRequest(); + + return operation.handleResponse(operation.doRequest(request)); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2025-11-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java new file mode 100644 index 000000000..08525461c --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java @@ -0,0 +1,253 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2025_11_15.models.components.MemberPortalInvitation; +import com.gusto.embedded_api_v_2025_11_15.utils.Response; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.io.InputStream; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.Optional; + + +public class GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse implements Response { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * Success + */ + private Optional memberPortalInvitation; + + @JsonCreator + public GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional memberPortalInvitation) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(memberPortalInvitation, "memberPortalInvitation"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.memberPortalInvitation = memberPortalInvitation; + } + + public GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * Success + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional memberPortalInvitation() { + return (Optional) memberPortalInvitation; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * Success + */ + public GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse withMemberPortalInvitation(MemberPortalInvitation memberPortalInvitation) { + Utils.checkNotNull(memberPortalInvitation, "memberPortalInvitation"); + this.memberPortalInvitation = Optional.ofNullable(memberPortalInvitation); + return this; + } + + + /** + * Success + */ + public GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse withMemberPortalInvitation(Optional memberPortalInvitation) { + Utils.checkNotNull(memberPortalInvitation, "memberPortalInvitation"); + this.memberPortalInvitation = memberPortalInvitation; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse other = (GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.memberPortalInvitation, other.memberPortalInvitation); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + memberPortalInvitation); + } + + @Override + public String toString() { + return Utils.toString(GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "memberPortalInvitation", memberPortalInvitation); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional memberPortalInvitation = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * Success + */ + public Builder memberPortalInvitation(MemberPortalInvitation memberPortalInvitation) { + Utils.checkNotNull(memberPortalInvitation, "memberPortalInvitation"); + this.memberPortalInvitation = Optional.ofNullable(memberPortalInvitation); + return this; + } + + /** + * Success + */ + public Builder memberPortalInvitation(Optional memberPortalInvitation) { + Utils.checkNotNull(memberPortalInvitation, "memberPortalInvitation"); + this.memberPortalInvitation = memberPortalInvitation; + return this; + } + + public GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse build() { + + return new GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse( + contentType, statusCode, rawResponse, + memberPortalInvitation); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesEmployeeIdWorkAddressesRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesEmployeeIdWorkAddressesRequest.java index f642417ab..603637d7c 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesEmployeeIdWorkAddressesRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesEmployeeIdWorkAddressesRequest.java @@ -16,12 +16,6 @@ public class GetV1EmployeesEmployeeIdWorkAddressesRequest { - /** - * The UUID of the employee - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=employee_id") - private String employeeId; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class GetV1EmployeesEmployeeIdWorkAddressesRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the employee + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=employee_id") + private String employeeId; + @JsonCreator public GetV1EmployeesEmployeeIdWorkAddressesRequest( - String employeeId, - Optional xGustoAPIVersion) { - Utils.checkNotNull(employeeId, "employeeId"); + Optional xGustoAPIVersion, + String employeeId) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.employeeId = employeeId; + Utils.checkNotNull(employeeId, "employeeId"); this.xGustoAPIVersion = xGustoAPIVersion; + this.employeeId = employeeId; } public GetV1EmployeesEmployeeIdWorkAddressesRequest( String employeeId) { - this(employeeId, Optional.empty()); - } - - /** - * The UUID of the employee - */ - @JsonIgnore - public String employeeId() { - return employeeId; + this(Optional.empty(), employeeId); } /** @@ -64,20 +56,19 @@ public Optional xGu return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the employee */ - public GetV1EmployeesEmployeeIdWorkAddressesRequest withEmployeeId(String employeeId) { - Utils.checkNotNull(employeeId, "employeeId"); - this.employeeId = employeeId; - return this; + @JsonIgnore + public String employeeId() { + return employeeId; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetV1EmployeesEmployeeIdWorkAddressesRequest withXGustoAPIVersion(Optiona return this; } + /** + * The UUID of the employee + */ + public GetV1EmployeesEmployeeIdWorkAddressesRequest withEmployeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -111,45 +111,35 @@ public boolean equals(java.lang.Object o) { } GetV1EmployeesEmployeeIdWorkAddressesRequest other = (GetV1EmployeesEmployeeIdWorkAddressesRequest) o; return - Utils.enhancedDeepEquals(this.employeeId, other.employeeId) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.employeeId, other.employeeId); } @Override public int hashCode() { return Utils.enhancedHash( - employeeId, xGustoAPIVersion); + xGustoAPIVersion, employeeId); } @Override public String toString() { return Utils.toString(GetV1EmployeesEmployeeIdWorkAddressesRequest.class, - "employeeId", employeeId, - "xGustoAPIVersion", xGustoAPIVersion); + "xGustoAPIVersion", xGustoAPIVersion, + "employeeId", employeeId); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String employeeId; - private Optional xGustoAPIVersion; + private String employeeId; + private Builder() { // force use of static builder() method } - /** - * The UUID of the employee - */ - public Builder employeeId(String employeeId) { - Utils.checkNotNull(employeeId, "employeeId"); - this.employeeId = employeeId; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String employeeId; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1EmployeesEmployeeIdWorkAddressesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1EmployeesEmployeeIdWorkAddressesRequestBuilder employeeId(String employeeId) { - Utils.checkNotNull(employeeId, "employeeId"); - this.employeeId = employeeId; - return this; - } public GetV1EmployeesEmployeeIdWorkAddressesRequestBuilder xGustoAPIVersion(GetV1EmployeesEmployeeIdWorkAddressesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public GetV1EmployeesEmployeeIdWorkAddressesRequestBuilder xGustoAPIVersion(Opti return this; } + public GetV1EmployeesEmployeeIdWorkAddressesRequestBuilder employeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + private GetV1EmployeesEmployeeIdWorkAddressesRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1EmployeesEmployeeIdWorkAddressesRequest request = new GetV1EmployeesEmployeeIdWorkAddressesRequest(employeeId, - xGustoAPIVersion); + GetV1EmployeesEmployeeIdWorkAddressesRequest request = new GetV1EmployeesEmployeeIdWorkAddressesRequest(xGustoAPIVersion, + employeeId); return request; } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.java index 3f2c7fde4..41021f990 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.java @@ -17,6 +17,14 @@ public class GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + /** * The UUID of the employee */ @@ -29,47 +37,23 @@ public class GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYear @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=effective_year") private long effectiveYear; - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; - @JsonCreator public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest( + Optional xGustoAPIVersion, String employeeUuid, - long effectiveYear, - Optional xGustoAPIVersion) { + long effectiveYear) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(employeeUuid, "employeeUuid"); Utils.checkNotNull(effectiveYear, "effectiveYear"); - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; this.employeeUuid = employeeUuid; this.effectiveYear = effectiveYear; - this.xGustoAPIVersion = xGustoAPIVersion; } public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest( String employeeUuid, long effectiveYear) { - this(employeeUuid, effectiveYear, Optional.empty()); - } - - /** - * The UUID of the employee - */ - @JsonIgnore - public String employeeUuid() { - return employeeUuid; - } - - /** - * The effective year for the Section 603 status - */ - @JsonIgnore - public long effectiveYear() { - return effectiveYear; + this(Optional.empty(), employeeUuid, effectiveYear); } /** @@ -83,29 +67,27 @@ public Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the employee */ - public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest withEmployeeUuid(String employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = employeeUuid; - return this; + @JsonIgnore + public String employeeUuid() { + return employeeUuid; } /** * The effective year for the Section 603 status */ - public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest withEffectiveYear(long effectiveYear) { - Utils.checkNotNull(effectiveYear, "effectiveYear"); - this.effectiveYear = effectiveYear; - return this; + @JsonIgnore + public long effectiveYear() { + return effectiveYear; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -129,6 +111,24 @@ public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearReques return this; } + /** + * The UUID of the employee + */ + public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest withEmployeeUuid(String employeeUuid) { + Utils.checkNotNull(employeeUuid, "employeeUuid"); + this.employeeUuid = employeeUuid; + return this; + } + + /** + * The effective year for the Section 603 status + */ + public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest withEffectiveYear(long effectiveYear) { + Utils.checkNotNull(effectiveYear, "effectiveYear"); + this.effectiveYear = effectiveYear; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -139,59 +139,39 @@ public boolean equals(java.lang.Object o) { } GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest other = (GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest) o; return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.employeeUuid, other.employeeUuid) && - Utils.enhancedDeepEquals(this.effectiveYear, other.effectiveYear) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.effectiveYear, other.effectiveYear); } @Override public int hashCode() { return Utils.enhancedHash( - employeeUuid, effectiveYear, xGustoAPIVersion); + xGustoAPIVersion, employeeUuid, effectiveYear); } @Override public String toString() { return Utils.toString(GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, "employeeUuid", employeeUuid, - "effectiveYear", effectiveYear, - "xGustoAPIVersion", xGustoAPIVersion); + "effectiveYear", effectiveYear); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { + private Optional xGustoAPIVersion; + private String employeeUuid; private Long effectiveYear; - private Optional xGustoAPIVersion; - private Builder() { // force use of static builder() method } - /** - * The UUID of the employee - */ - public Builder employeeUuid(String employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = employeeUuid; - return this; - } - - - /** - * The effective year for the Section 603 status - */ - public Builder effectiveYear(long effectiveYear) { - Utils.checkNotNull(effectiveYear, "effectiveYear"); - this.effectiveYear = effectiveYear; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -214,13 +194,33 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String employeeUuid; + private Long effectiveYear; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder employeeUuid(String employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = employeeUuid; - return this; - } - - public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder effectiveYear(long effectiveYear) { - Utils.checkNotNull(effectiveYear, "effectiveYear"); - this.effectiveYear = effectiveYear; - return this; - } public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder xGustoAPIVersion(GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -54,15 +42,27 @@ public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearReques return this; } + public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder employeeUuid(String employeeUuid) { + Utils.checkNotNull(employeeUuid, "employeeUuid"); + this.employeeUuid = employeeUuid; + return this; + } + + public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder effectiveYear(long effectiveYear) { + Utils.checkNotNull(effectiveYear, "effectiveYear"); + this.effectiveYear = effectiveYear; + return this; + } + private GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest request = new GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest(employeeUuid, - effectiveYear, - xGustoAPIVersion); + GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest request = new GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest(xGustoAPIVersion, + employeeUuid, + effectiveYear); return request; } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.java index 105681d09..801e16fe4 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.java @@ -16,12 +16,6 @@ public class GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest { - /** - * The UUID of the employee - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=employee_uuid") - private String employeeUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the employee + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=employee_uuid") + private String employeeUuid; + @JsonCreator public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest( - String employeeUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); + Optional xGustoAPIVersion, + String employeeUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.employeeUuid = employeeUuid; + Utils.checkNotNull(employeeUuid, "employeeUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.employeeUuid = employeeUuid; } public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest( String employeeUuid) { - this(employeeUuid, Optional.empty()); - } - - /** - * The UUID of the employee - */ - @JsonIgnore - public String employeeUuid() { - return employeeUuid; + this(Optional.empty(), employeeUuid); } /** @@ -64,20 +56,19 @@ public Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the employee */ - public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest withEmployeeUuid(String employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = employeeUuid; - return this; + @JsonIgnore + public String employeeUuid() { + return employeeUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest withXGustoA return this; } + /** + * The UUID of the employee + */ + public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest withEmployeeUuid(String employeeUuid) { + Utils.checkNotNull(employeeUuid, "employeeUuid"); + this.employeeUuid = employeeUuid; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -111,45 +111,35 @@ public boolean equals(java.lang.Object o) { } GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest other = (GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest) o; return - Utils.enhancedDeepEquals(this.employeeUuid, other.employeeUuid) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.employeeUuid, other.employeeUuid); } @Override public int hashCode() { return Utils.enhancedHash( - employeeUuid, xGustoAPIVersion); + xGustoAPIVersion, employeeUuid); } @Override public String toString() { return Utils.toString(GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.class, - "employeeUuid", employeeUuid, - "xGustoAPIVersion", xGustoAPIVersion); + "xGustoAPIVersion", xGustoAPIVersion, + "employeeUuid", employeeUuid); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String employeeUuid; - private Optional xGustoAPIVersion; + private String employeeUuid; + private Builder() { // force use of static builder() method } - /** - * The UUID of the employee - */ - public Builder employeeUuid(String employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = employeeUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String employeeUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder employeeUuid(String employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = employeeUuid; - return this; - } public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder xGustoAPIVersion(GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder xGus return this; } + public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder employeeUuid(String employeeUuid) { + Utils.checkNotNull(employeeUuid, "employeeUuid"); + this.employeeUuid = employeeUuid; + return this; + } + private GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest request = new GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest(employeeUuid, - xGustoAPIVersion); + GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest request = new GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest(xGustoAPIVersion, + employeeUuid); return request; } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesQueryParamInclude.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesQueryParamInclude.java new file mode 100644 index 000000000..7c7684aa3 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesQueryParamInclude.java @@ -0,0 +1,39 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +public enum GetV1EmployeesQueryParamInclude { + ALL_COMPENSATIONS("all_compensations"), + ALL_HOME_ADDRESSES("all_home_addresses"), + COMPANY_NAME("company_name"), + CURRENT_HOME_ADDRESS("current_home_address"), + CUSTOM_FIELDS("custom_fields"), + PORTAL_INVITATIONS("portal_invitations"); + + @JsonValue + private final String value; + + GetV1EmployeesQueryParamInclude(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (GetV1EmployeesQueryParamInclude o: GetV1EmployeesQueryParamInclude.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesRequest.java index 73b675f7a..c8d53722b 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesRequest.java @@ -35,13 +35,13 @@ public class GetV1EmployeesRequest { * Include the requested attribute(s) in each employee response. Multiple options are comma separated. */ @SpeakeasyMetadata("queryParam:style=form,explode=false,name=include") - private Optional> include; + private Optional> include; @JsonCreator public GetV1EmployeesRequest( Optional xGustoAPIVersion, String employeeId, - Optional> include) { + Optional> include) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(employeeId, "employeeId"); Utils.checkNotNull(include, "include"); @@ -79,8 +79,8 @@ public String employeeId() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional> include() { - return (Optional>) include; + public Optional> include() { + return (Optional>) include; } public static Builder builder() { @@ -123,7 +123,7 @@ public GetV1EmployeesRequest withEmployeeId(String employeeId) { /** * Include the requested attribute(s) in each employee response. Multiple options are comma separated. */ - public GetV1EmployeesRequest withInclude(List include) { + public GetV1EmployeesRequest withInclude(List include) { Utils.checkNotNull(include, "include"); this.include = Optional.ofNullable(include); return this; @@ -133,7 +133,7 @@ public GetV1EmployeesRequest withInclude(List include) { /** * Include the requested attribute(s) in each employee response. Multiple options are comma separated. */ - public GetV1EmployeesRequest withInclude(Optional> include) { + public GetV1EmployeesRequest withInclude(Optional> include) { Utils.checkNotNull(include, "include"); this.include = include; return this; @@ -175,7 +175,7 @@ public final static class Builder { private String employeeId; - private Optional> include = Optional.empty(); + private Optional> include = Optional.empty(); private Builder() { // force use of static builder() method @@ -218,7 +218,7 @@ public Builder employeeId(String employeeId) { /** * Include the requested attribute(s) in each employee response. Multiple options are comma separated. */ - public Builder include(List include) { + public Builder include(List include) { Utils.checkNotNull(include, "include"); this.include = Optional.ofNullable(include); return this; @@ -227,7 +227,7 @@ public Builder include(List include) { /** * Include the requested attribute(s) in each employee response. Multiple options are comma separated. */ - public Builder include(Optional> include) { + public Builder include(Optional> include) { Utils.checkNotNull(include, "include"); this.include = include; return this; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesRequestBuilder.java index c974749b9..939135f66 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1EmployeesRequestBuilder.java @@ -22,7 +22,7 @@ public class GetV1EmployeesRequestBuilder { "\"2025-11-15\"", new TypeReference>() {}); private String employeeId; - private Optional> include = Optional.empty(); + private Optional> include = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -48,13 +48,13 @@ public GetV1EmployeesRequestBuilder employeeId(String employeeId) { return this; } - public GetV1EmployeesRequestBuilder include(List include) { + public GetV1EmployeesRequestBuilder include(List include) { Utils.checkNotNull(include, "include"); this.include = Optional.of(include); return this; } - public GetV1EmployeesRequestBuilder include(Optional> include) { + public GetV1EmployeesRequestBuilder include(Optional> include) { Utils.checkNotNull(include, "include"); this.include = include; return this; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion.java new file mode 100644 index 000000000..7a7f7f098 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion + * + *

    Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ +public enum GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion { + TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15("2025-11-15"); + + @JsonValue + private final String value; + + GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion o: GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest.java index 2557dea85..9be0cbd6d 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest.java @@ -6,7 +6,6 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.core.type.TypeReference; -import com.gusto.embedded_api_v_2025_11_15.models.components.VersionHeader; import com.gusto.embedded_api_v_2025_11_15.utils.LazySingletonValue; import com.gusto.embedded_api_v_2025_11_15.utils.SpeakeasyMetadata; import com.gusto.embedded_api_v_2025_11_15.utils.Utils; @@ -17,6 +16,14 @@ public class GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + /** * The type of document being generated */ @@ -30,31 +37,34 @@ public class GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest { @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=request_uuid") private String requestUuid; - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; - @JsonCreator public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest( + Optional xGustoAPIVersion, DocumentType documentType, - String requestUuid, - Optional xGustoAPIVersion) { + String requestUuid) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(documentType, "documentType"); Utils.checkNotNull(requestUuid, "requestUuid"); - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; this.documentType = documentType; this.requestUuid = requestUuid; - this.xGustoAPIVersion = xGustoAPIVersion; } public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest( DocumentType documentType, String requestUuid) { - this(documentType, requestUuid, Optional.empty()); + this(Optional.empty(), documentType, requestUuid); + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; } /** @@ -74,21 +84,33 @@ public String requestUuid() { return requestUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional xGustoAPIVersion() { - return (Optional) xGustoAPIVersion; + public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest withXGustoAPIVersion(GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; } - public static Builder builder() { - return new Builder(); - } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } /** * The type of document being generated @@ -109,29 +131,6 @@ public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest withRequestUuid(Str return this; } - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest withXGustoAPIVersion(VersionHeader xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); - return this; - } - - - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } - @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -142,79 +141,79 @@ public boolean equals(java.lang.Object o) { } GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest other = (GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest) o; return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.documentType, other.documentType) && - Utils.enhancedDeepEquals(this.requestUuid, other.requestUuid) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.requestUuid, other.requestUuid); } @Override public int hashCode() { return Utils.enhancedHash( - documentType, requestUuid, xGustoAPIVersion); + xGustoAPIVersion, documentType, requestUuid); } @Override public String toString() { return Utils.toString(GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, "documentType", documentType, - "requestUuid", requestUuid, - "xGustoAPIVersion", xGustoAPIVersion); + "requestUuid", requestUuid); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { + private Optional xGustoAPIVersion; + private DocumentType documentType; private String requestUuid; - private Optional xGustoAPIVersion; - private Builder() { // force use of static builder() method } /** - * The type of document being generated + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - public Builder documentType(DocumentType documentType) { - Utils.checkNotNull(documentType, "documentType"); - this.documentType = documentType; + public Builder xGustoAPIVersion(GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); return this; } - /** - * The UUID of the request to generate a document. Generate document endpoints return request_uuids to - * be used with the GET generated document endpoint. + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - public Builder requestUuid(String requestUuid) { - Utils.checkNotNull(requestUuid, "requestUuid"); - this.requestUuid = requestUuid; + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; return this; } /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * The type of document being generated */ - public Builder xGustoAPIVersion(VersionHeader xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + public Builder documentType(DocumentType documentType) { + Utils.checkNotNull(documentType, "documentType"); + this.documentType = documentType; return this; } + /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * The UUID of the request to generate a document. Generate document endpoints return request_uuids to + * be used with the GET generated document endpoint. */ - public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; + public Builder requestUuid(String requestUuid) { + Utils.checkNotNull(requestUuid, "requestUuid"); + this.requestUuid = requestUuid; return this; } @@ -224,14 +223,14 @@ public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest build() { } return new GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest( - documentType, requestUuid, xGustoAPIVersion); + xGustoAPIVersion, documentType, requestUuid); } - private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = new LazySingletonValue<>( "X-Gusto-API-Version", "\"2025-11-15\"", - new TypeReference>() {}); + new TypeReference>() {}); } } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder.java index 0d01ac378..cd0d28b75 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder.java @@ -7,7 +7,6 @@ import com.fasterxml.jackson.core.type.TypeReference; import com.gusto.embedded_api_v_2025_11_15.SDKConfiguration; -import com.gusto.embedded_api_v_2025_11_15.models.components.VersionHeader; import com.gusto.embedded_api_v_2025_11_15.operations.GetV1GeneratedDocumentsDocumentTypeRequestUuid; import com.gusto.embedded_api_v_2025_11_15.utils.Headers; import com.gusto.embedded_api_v_2025_11_15.utils.LazySingletonValue; @@ -17,18 +16,30 @@ public class GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder { - private DocumentType documentType; - private String requestUuid; - private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", - new TypeReference>() {}); + new TypeReference>() {}); + private DocumentType documentType; + private String requestUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } + + public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder xGustoAPIVersion(GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder documentType(DocumentType documentType) { Utils.checkNotNull(documentType, "documentType"); @@ -41,18 +52,6 @@ public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder requestUuid( this.requestUuid = requestUuid; return this; } - - public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder xGustoAPIVersion(VersionHeader xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); - return this; - } - - public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } private GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest buildRequest() { @@ -60,9 +59,9 @@ private GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest request = new GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest(documentType, - requestUuid, - xGustoAPIVersion); + GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest request = new GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest(xGustoAPIVersion, + documentType, + requestUuid); return request; } @@ -76,9 +75,9 @@ public GetV1GeneratedDocumentsDocumentTypeRequestUuidResponse call() { return operation.handleResponse(operation.doRequest(request)); } - private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = new LazySingletonValue<>( "xGustoAPIVersion", "\"2025-11-15\"", - new TypeReference>() {}); + new TypeReference>() {}); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1HomeAddressesHomeAddressUuidRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1HomeAddressesHomeAddressUuidRequest.java index 5df3b9d3a..577e3f7e7 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1HomeAddressesHomeAddressUuidRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1HomeAddressesHomeAddressUuidRequest.java @@ -16,12 +16,6 @@ public class GetV1HomeAddressesHomeAddressUuidRequest { - /** - * The UUID of the home address - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=home_address_uuid") - private String homeAddressUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class GetV1HomeAddressesHomeAddressUuidRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the home address + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=home_address_uuid") + private String homeAddressUuid; + @JsonCreator public GetV1HomeAddressesHomeAddressUuidRequest( - String homeAddressUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(homeAddressUuid, "homeAddressUuid"); + Optional xGustoAPIVersion, + String homeAddressUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.homeAddressUuid = homeAddressUuid; + Utils.checkNotNull(homeAddressUuid, "homeAddressUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.homeAddressUuid = homeAddressUuid; } public GetV1HomeAddressesHomeAddressUuidRequest( String homeAddressUuid) { - this(homeAddressUuid, Optional.empty()); - } - - /** - * The UUID of the home address - */ - @JsonIgnore - public String homeAddressUuid() { - return homeAddressUuid; + this(Optional.empty(), homeAddressUuid); } /** @@ -64,20 +56,19 @@ public Optional xGustoA return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the home address */ - public GetV1HomeAddressesHomeAddressUuidRequest withHomeAddressUuid(String homeAddressUuid) { - Utils.checkNotNull(homeAddressUuid, "homeAddressUuid"); - this.homeAddressUuid = homeAddressUuid; - return this; + @JsonIgnore + public String homeAddressUuid() { + return homeAddressUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetV1HomeAddressesHomeAddressUuidRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String homeAddressUuid; + private Builder() { // force use of static builder() method } - /** - * The UUID of the home address - */ - public Builder homeAddressUuid(String homeAddressUuid) { - Utils.checkNotNull(homeAddressUuid, "homeAddressUuid"); - this.homeAddressUuid = homeAddressUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String homeAddressUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1HomeAddressesHomeAddressUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1HomeAddressesHomeAddressUuidRequestBuilder homeAddressUuid(String homeAddressUuid) { - Utils.checkNotNull(homeAddressUuid, "homeAddressUuid"); - this.homeAddressUuid = homeAddressUuid; - return this; - } public GetV1HomeAddressesHomeAddressUuidRequestBuilder xGustoAPIVersion(GetV1HomeAddressesHomeAddressUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public GetV1HomeAddressesHomeAddressUuidRequestBuilder xGustoAPIVersion(Optional return this; } + public GetV1HomeAddressesHomeAddressUuidRequestBuilder homeAddressUuid(String homeAddressUuid) { + Utils.checkNotNull(homeAddressUuid, "homeAddressUuid"); + this.homeAddressUuid = homeAddressUuid; + return this; + } + private GetV1HomeAddressesHomeAddressUuidRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1HomeAddressesHomeAddressUuidRequest request = new GetV1HomeAddressesHomeAddressUuidRequest(homeAddressUuid, - xGustoAPIVersion); + GetV1HomeAddressesHomeAddressUuidRequest request = new GetV1HomeAddressesHomeAddressUuidRequest(xGustoAPIVersion, + homeAddressUuid); return request; } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1JobsJobIdRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1JobsJobIdRequest.java index 0bc740c21..d4c162857 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1JobsJobIdRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1JobsJobIdRequest.java @@ -16,6 +16,14 @@ public class GetV1JobsJobIdRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + /** * The UUID of the job */ @@ -30,30 +38,33 @@ public class GetV1JobsJobIdRequest { @SpeakeasyMetadata("queryParam:style=form,explode=true,name=include") private Optional include; - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; - @JsonCreator public GetV1JobsJobIdRequest( + Optional xGustoAPIVersion, String jobId, - Optional include, - Optional xGustoAPIVersion) { + Optional include) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(jobId, "jobId"); Utils.checkNotNull(include, "include"); - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; this.jobId = jobId; this.include = include; - this.xGustoAPIVersion = xGustoAPIVersion; } public GetV1JobsJobIdRequest( String jobId) { - this(jobId, Optional.empty(), Optional.empty()); + this(Optional.empty(), jobId, Optional.empty()); + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; } /** @@ -75,21 +86,33 @@ public Optional include() { return (Optional) include; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional xGustoAPIVersion() { - return (Optional) xGustoAPIVersion; + public GetV1JobsJobIdRequest withXGustoAPIVersion(GetV1JobsJobIdHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; } - public static Builder builder() { - return new Builder(); - } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetV1JobsJobIdRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } /** * The UUID of the job @@ -123,29 +146,6 @@ public GetV1JobsJobIdRequest withInclude(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } - @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -156,39 +156,62 @@ public boolean equals(java.lang.Object o) { } GetV1JobsJobIdRequest other = (GetV1JobsJobIdRequest) o; return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.jobId, other.jobId) && - Utils.enhancedDeepEquals(this.include, other.include) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.include, other.include); } @Override public int hashCode() { return Utils.enhancedHash( - jobId, include, xGustoAPIVersion); + xGustoAPIVersion, jobId, include); } @Override public String toString() { return Utils.toString(GetV1JobsJobIdRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, "jobId", jobId, - "include", include, - "xGustoAPIVersion", xGustoAPIVersion); + "include", include); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { + private Optional xGustoAPIVersion; + private String jobId; private Optional include = Optional.empty(); - private Optional xGustoAPIVersion; - private Builder() { // force use of static builder() method } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(GetV1JobsJobIdHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + /** * The UUID of the job */ @@ -221,36 +244,13 @@ public Builder include(Optional inclu return this; } - - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public Builder xGustoAPIVersion(GetV1JobsJobIdHeaderXGustoAPIVersion xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); - return this; - } - - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } - public GetV1JobsJobIdRequest build() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } return new GetV1JobsJobIdRequest( - jobId, include, xGustoAPIVersion); + xGustoAPIVersion, jobId, include); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1JobsJobIdRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1JobsJobIdRequestBuilder.java index 1e80a4656..43f0e23a3 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1JobsJobIdRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1JobsJobIdRequestBuilder.java @@ -16,18 +16,30 @@ public class GetV1JobsJobIdRequestBuilder { - private String jobId; - private Optional include = Optional.empty(); private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String jobId; + private Optional include = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1JobsJobIdRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } + + public GetV1JobsJobIdRequestBuilder xGustoAPIVersion(GetV1JobsJobIdHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetV1JobsJobIdRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } public GetV1JobsJobIdRequestBuilder jobId(String jobId) { Utils.checkNotNull(jobId, "jobId"); @@ -46,18 +58,6 @@ public GetV1JobsJobIdRequestBuilder include(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } private GetV1JobsJobIdRequest buildRequest() { @@ -65,9 +65,9 @@ private GetV1JobsJobIdRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1JobsJobIdRequest request = new GetV1JobsJobIdRequest(jobId, - include, - xGustoAPIVersion); + GetV1JobsJobIdRequest request = new GetV1JobsJobIdRequest(xGustoAPIVersion, + jobId, + include); return request; } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1LocationsLocationUuidMinimumWagesRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1LocationsLocationUuidMinimumWagesRequest.java index 30c2c42dc..fc6d744c8 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1LocationsLocationUuidMinimumWagesRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1LocationsLocationUuidMinimumWagesRequest.java @@ -16,12 +16,6 @@ public class GetV1LocationsLocationUuidMinimumWagesRequest { - /** - * The UUID of the location - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=location_uuid") - private String locationUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,34 +24,32 @@ public class GetV1LocationsLocationUuidMinimumWagesRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the location + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=location_uuid") + private String locationUuid; + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=effective_date") private Optional effectiveDate; @JsonCreator public GetV1LocationsLocationUuidMinimumWagesRequest( - String locationUuid, Optional xGustoAPIVersion, + String locationUuid, Optional effectiveDate) { - Utils.checkNotNull(locationUuid, "locationUuid"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(locationUuid, "locationUuid"); Utils.checkNotNull(effectiveDate, "effectiveDate"); - this.locationUuid = locationUuid; this.xGustoAPIVersion = xGustoAPIVersion; + this.locationUuid = locationUuid; this.effectiveDate = effectiveDate; } public GetV1LocationsLocationUuidMinimumWagesRequest( String locationUuid) { - this(locationUuid, Optional.empty(), Optional.empty()); - } - - /** - * The UUID of the location - */ - @JsonIgnore - public String locationUuid() { - return locationUuid; + this(Optional.empty(), locationUuid, Optional.empty()); } /** @@ -71,6 +63,14 @@ public Optional xG return (Optional) xGustoAPIVersion; } + /** + * The UUID of the location + */ + @JsonIgnore + public String locationUuid() { + return locationUuid; + } + @JsonIgnore public Optional effectiveDate() { return effectiveDate; @@ -81,15 +81,6 @@ public static Builder builder() { } - /** - * The UUID of the location - */ - public GetV1LocationsLocationUuidMinimumWagesRequest withLocationUuid(String locationUuid) { - Utils.checkNotNull(locationUuid, "locationUuid"); - this.locationUuid = locationUuid; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -113,6 +104,15 @@ public GetV1LocationsLocationUuidMinimumWagesRequest withXGustoAPIVersion(Option return this; } + /** + * The UUID of the location + */ + public GetV1LocationsLocationUuidMinimumWagesRequest withLocationUuid(String locationUuid) { + Utils.checkNotNull(locationUuid, "locationUuid"); + this.locationUuid = locationUuid; + return this; + } + public GetV1LocationsLocationUuidMinimumWagesRequest withEffectiveDate(String effectiveDate) { Utils.checkNotNull(effectiveDate, "effectiveDate"); this.effectiveDate = Optional.ofNullable(effectiveDate); @@ -136,32 +136,32 @@ public boolean equals(java.lang.Object o) { } GetV1LocationsLocationUuidMinimumWagesRequest other = (GetV1LocationsLocationUuidMinimumWagesRequest) o; return - Utils.enhancedDeepEquals(this.locationUuid, other.locationUuid) && Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.locationUuid, other.locationUuid) && Utils.enhancedDeepEquals(this.effectiveDate, other.effectiveDate); } @Override public int hashCode() { return Utils.enhancedHash( - locationUuid, xGustoAPIVersion, effectiveDate); + xGustoAPIVersion, locationUuid, effectiveDate); } @Override public String toString() { return Utils.toString(GetV1LocationsLocationUuidMinimumWagesRequest.class, - "locationUuid", locationUuid, "xGustoAPIVersion", xGustoAPIVersion, + "locationUuid", locationUuid, "effectiveDate", effectiveDate); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String locationUuid; - private Optional xGustoAPIVersion; + private String locationUuid; + private Optional effectiveDate = Optional.empty(); private Builder() { @@ -169,16 +169,6 @@ private Builder() { } - /** - * The UUID of the location - */ - public Builder locationUuid(String locationUuid) { - Utils.checkNotNull(locationUuid, "locationUuid"); - this.locationUuid = locationUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -202,6 +192,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String locationUuid; private Optional effectiveDate = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -28,12 +28,6 @@ public class GetV1LocationsLocationUuidMinimumWagesRequestBuilder { public GetV1LocationsLocationUuidMinimumWagesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1LocationsLocationUuidMinimumWagesRequestBuilder locationUuid(String locationUuid) { - Utils.checkNotNull(locationUuid, "locationUuid"); - this.locationUuid = locationUuid; - return this; - } public GetV1LocationsLocationUuidMinimumWagesRequestBuilder xGustoAPIVersion(GetV1LocationsLocationUuidMinimumWagesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,6 +40,12 @@ public GetV1LocationsLocationUuidMinimumWagesRequestBuilder xGustoAPIVersion(Opt this.xGustoAPIVersion = xGustoAPIVersion; return this; } + + public GetV1LocationsLocationUuidMinimumWagesRequestBuilder locationUuid(String locationUuid) { + Utils.checkNotNull(locationUuid, "locationUuid"); + this.locationUuid = locationUuid; + return this; + } public GetV1LocationsLocationUuidMinimumWagesRequestBuilder effectiveDate(String effectiveDate) { Utils.checkNotNull(effectiveDate, "effectiveDate"); @@ -65,8 +65,8 @@ private GetV1LocationsLocationUuidMinimumWagesRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1LocationsLocationUuidMinimumWagesRequest request = new GetV1LocationsLocationUuidMinimumWagesRequest(locationUuid, - xGustoAPIVersion, + GetV1LocationsLocationUuidMinimumWagesRequest request = new GetV1LocationsLocationUuidMinimumWagesRequest(xGustoAPIVersion, + locationUuid, effectiveDate); return request; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest.java index c9f4f0064..f6786bc5d 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest.java @@ -16,12 +16,6 @@ public class GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest { - /** - * The UUID of the company - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") - private String companyUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") + private String companyUuid; + @JsonCreator public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest( - String companyUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(companyUuid, "companyUuid"); + Optional xGustoAPIVersion, + String companyUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.companyUuid = companyUuid; + Utils.checkNotNull(companyUuid, "companyUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.companyUuid = companyUuid; } public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest( String companyUuid) { - this(companyUuid, Optional.empty()); - } - - /** - * The UUID of the company - */ - @JsonIgnore - public String companyUuid() { - return companyUuid; + this(Optional.empty(), companyUuid); } /** @@ -64,20 +56,19 @@ public Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the company */ - public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest withCompanyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; + @JsonIgnore + public String companyUuid() { + return companyUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest withXGus return this; } + /** + * The UUID of the company + */ + public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -111,45 +111,35 @@ public boolean equals(java.lang.Object o) { } GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest other = (GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest) o; return - Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid); } @Override public int hashCode() { return Utils.enhancedHash( - companyUuid, xGustoAPIVersion); + xGustoAPIVersion, companyUuid); } @Override public String toString() { return Utils.toString(GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest.class, - "companyUuid", companyUuid, - "xGustoAPIVersion", xGustoAPIVersion); + "xGustoAPIVersion", xGustoAPIVersion, + "companyUuid", companyUuid); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String companyUuid; - private Optional xGustoAPIVersion; + private String companyUuid; + private Builder() { // force use of static builder() method } - /** - * The UUID of the company - */ - public Builder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String companyUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder xGustoAPIVersion(GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder x return this; } + public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + private GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest request = new GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest(companyUuid, - xGustoAPIVersion); + GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest request = new GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest(xGustoAPIVersion, + companyUuid); return request; } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidRequest.java index 7c52a21eb..e2b57d08d 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidRequest.java @@ -9,6 +9,7 @@ import com.gusto.embedded_api_v_2025_11_15.utils.LazySingletonValue; import com.gusto.embedded_api_v_2025_11_15.utils.SpeakeasyMetadata; import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Long; import java.lang.Override; import java.lang.String; import java.lang.SuppressWarnings; @@ -16,6 +17,14 @@ public class GetV1PaymentReceiptsPayrollsPayrollUuidRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + /** * The UUID of the payroll */ @@ -23,34 +32,38 @@ public class GetV1PaymentReceiptsPayrollsPayrollUuidRequest { private String payrollUuid; /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. */ - @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=page") + private Optional page; + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=per") + private Optional per; @JsonCreator public GetV1PaymentReceiptsPayrollsPayrollUuidRequest( + Optional xGustoAPIVersion, String payrollUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(payrollUuid, "payrollUuid"); + Optional page, + Optional per) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.payrollUuid = payrollUuid; + Utils.checkNotNull(payrollUuid, "payrollUuid"); + Utils.checkNotNull(page, "page"); + Utils.checkNotNull(per, "per"); this.xGustoAPIVersion = xGustoAPIVersion; + this.payrollUuid = payrollUuid; + this.page = page; + this.per = per; } public GetV1PaymentReceiptsPayrollsPayrollUuidRequest( String payrollUuid) { - this(payrollUuid, Optional.empty()); - } - - /** - * The UUID of the payroll - */ - @JsonIgnore - public String payrollUuid() { - return payrollUuid; + this(Optional.empty(), payrollUuid, Optional.empty(), + Optional.empty()); } /** @@ -64,20 +77,36 @@ public Optional x return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); + /** + * The UUID of the payroll + */ + @JsonIgnore + public String payrollUuid() { + return payrollUuid; } + /** + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. + */ + @JsonIgnore + public Optional page() { + return page; + } /** - * The UUID of the payroll + * Number of objects per page. For majority of endpoints will default to 25 */ - public GetV1PaymentReceiptsPayrollsPayrollUuidRequest withPayrollUuid(String payrollUuid) { - Utils.checkNotNull(payrollUuid, "payrollUuid"); - this.payrollUuid = payrollUuid; - return this; + @JsonIgnore + public Optional per() { + return per; + } + + public static Builder builder() { + return new Builder(); } + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +130,55 @@ public GetV1PaymentReceiptsPayrollsPayrollUuidRequest withXGustoAPIVersion(Optio return this; } + /** + * The UUID of the payroll + */ + public GetV1PaymentReceiptsPayrollsPayrollUuidRequest withPayrollUuid(String payrollUuid) { + Utils.checkNotNull(payrollUuid, "payrollUuid"); + this.payrollUuid = payrollUuid; + return this; + } + + /** + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. + */ + public GetV1PaymentReceiptsPayrollsPayrollUuidRequest withPage(long page) { + Utils.checkNotNull(page, "page"); + this.page = Optional.ofNullable(page); + return this; + } + + + /** + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. + */ + public GetV1PaymentReceiptsPayrollsPayrollUuidRequest withPage(Optional page) { + Utils.checkNotNull(page, "page"); + this.page = page; + return this; + } + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + public GetV1PaymentReceiptsPayrollsPayrollUuidRequest withPer(long per) { + Utils.checkNotNull(per, "per"); + this.per = Optional.ofNullable(per); + return this; + } + + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + public GetV1PaymentReceiptsPayrollsPayrollUuidRequest withPer(Optional per) { + Utils.checkNotNull(per, "per"); + this.per = per; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -111,45 +189,44 @@ public boolean equals(java.lang.Object o) { } GetV1PaymentReceiptsPayrollsPayrollUuidRequest other = (GetV1PaymentReceiptsPayrollsPayrollUuidRequest) o; return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.payrollUuid, other.payrollUuid) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.page, other.page) && + Utils.enhancedDeepEquals(this.per, other.per); } @Override public int hashCode() { return Utils.enhancedHash( - payrollUuid, xGustoAPIVersion); + xGustoAPIVersion, payrollUuid, page, + per); } @Override public String toString() { return Utils.toString(GetV1PaymentReceiptsPayrollsPayrollUuidRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, "payrollUuid", payrollUuid, - "xGustoAPIVersion", xGustoAPIVersion); + "page", page, + "per", per); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { + private Optional xGustoAPIVersion; + private String payrollUuid; - private Optional xGustoAPIVersion; + private Optional page = Optional.empty(); + + private Optional per = Optional.empty(); private Builder() { // force use of static builder() method } - /** - * The UUID of the payroll - */ - public Builder payrollUuid(String payrollUuid) { - Utils.checkNotNull(payrollUuid, "payrollUuid"); - this.payrollUuid = payrollUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +249,64 @@ public Builder xGustoAPIVersion(Optional page) { + Utils.checkNotNull(page, "page"); + this.page = page; + return this; + } + + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + public Builder per(long per) { + Utils.checkNotNull(per, "per"); + this.per = Optional.ofNullable(per); + return this; + } + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + public Builder per(Optional per) { + Utils.checkNotNull(per, "per"); + this.per = per; + return this; + } + public GetV1PaymentReceiptsPayrollsPayrollUuidRequest build() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } return new GetV1PaymentReceiptsPayrollsPayrollUuidRequest( - payrollUuid, xGustoAPIVersion); + xGustoAPIVersion, payrollUuid, page, + per); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder.java index 212173038..8a7605c44 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder.java @@ -11,28 +11,25 @@ import com.gusto.embedded_api_v_2025_11_15.utils.Headers; import com.gusto.embedded_api_v_2025_11_15.utils.LazySingletonValue; import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Long; import java.lang.String; import java.util.Optional; public class GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder { - private String payrollUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String payrollUuid; + private Optional page = Optional.empty(); + private Optional per = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder payrollUuid(String payrollUuid) { - Utils.checkNotNull(payrollUuid, "payrollUuid"); - this.payrollUuid = payrollUuid; - return this; - } public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder xGustoAPIVersion(GetV1PaymentReceiptsPayrollsPayrollUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +43,46 @@ public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder xGustoAPIVersion(Op return this; } + public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder payrollUuid(String payrollUuid) { + Utils.checkNotNull(payrollUuid, "payrollUuid"); + this.payrollUuid = payrollUuid; + return this; + } + + public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder page(long page) { + Utils.checkNotNull(page, "page"); + this.page = Optional.of(page); + return this; + } + + public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder page(Optional page) { + Utils.checkNotNull(page, "page"); + this.page = page; + return this; + } + + public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder per(long per) { + Utils.checkNotNull(per, "per"); + this.per = Optional.of(per); + return this; + } + + public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder per(Optional per) { + Utils.checkNotNull(per, "per"); + this.per = per; + return this; + } + private GetV1PaymentReceiptsPayrollsPayrollUuidRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1PaymentReceiptsPayrollsPayrollUuidRequest request = new GetV1PaymentReceiptsPayrollsPayrollUuidRequest(payrollUuid, - xGustoAPIVersion); + GetV1PaymentReceiptsPayrollsPayrollUuidRequest request = new GetV1PaymentReceiptsPayrollsPayrollUuidRequest(xGustoAPIVersion, + payrollUuid, + page, + per); return request; } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion.java new file mode 100644 index 000000000..3d73d80bb --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion + * + *

    Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ +public enum GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion { + TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15("2025-11-15"); + + @JsonValue + private final String value; + + GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion o: GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1PayrollBatchesPayrollBatchUuidRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1PayrollBatchesPayrollBatchUuidRequest.java new file mode 100644 index 000000000..9c8dfcf98 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1PayrollBatchesPayrollBatchUuidRequest.java @@ -0,0 +1,191 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2025_11_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2025_11_15.utils.SpeakeasyMetadata; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class GetV1PayrollBatchesPayrollBatchUuidRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + + /** + * The UUID of the payroll cancellation batch returned by `POST /v1/payroll_batches`. + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=payroll_batch_uuid") + private String payrollBatchUuid; + + @JsonCreator + public GetV1PayrollBatchesPayrollBatchUuidRequest( + Optional xGustoAPIVersion, + String payrollBatchUuid) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(payrollBatchUuid, "payrollBatchUuid"); + this.xGustoAPIVersion = xGustoAPIVersion; + this.payrollBatchUuid = payrollBatchUuid; + } + + public GetV1PayrollBatchesPayrollBatchUuidRequest( + String payrollBatchUuid) { + this(Optional.empty(), payrollBatchUuid); + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + + /** + * The UUID of the payroll cancellation batch returned by `POST /v1/payroll_batches`. + */ + @JsonIgnore + public String payrollBatchUuid() { + return payrollBatchUuid; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetV1PayrollBatchesPayrollBatchUuidRequest withXGustoAPIVersion(GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetV1PayrollBatchesPayrollBatchUuidRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + /** + * The UUID of the payroll cancellation batch returned by `POST /v1/payroll_batches`. + */ + public GetV1PayrollBatchesPayrollBatchUuidRequest withPayrollBatchUuid(String payrollBatchUuid) { + Utils.checkNotNull(payrollBatchUuid, "payrollBatchUuid"); + this.payrollBatchUuid = payrollBatchUuid; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetV1PayrollBatchesPayrollBatchUuidRequest other = (GetV1PayrollBatchesPayrollBatchUuidRequest) o; + return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.payrollBatchUuid, other.payrollBatchUuid); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + xGustoAPIVersion, payrollBatchUuid); + } + + @Override + public String toString() { + return Utils.toString(GetV1PayrollBatchesPayrollBatchUuidRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, + "payrollBatchUuid", payrollBatchUuid); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional xGustoAPIVersion; + + private String payrollBatchUuid; + + private Builder() { + // force use of static builder() method + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + + /** + * The UUID of the payroll cancellation batch returned by `POST /v1/payroll_batches`. + */ + public Builder payrollBatchUuid(String payrollBatchUuid) { + Utils.checkNotNull(payrollBatchUuid, "payrollBatchUuid"); + this.payrollBatchUuid = payrollBatchUuid; + return this; + } + + public GetV1PayrollBatchesPayrollBatchUuidRequest build() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + return new GetV1PayrollBatchesPayrollBatchUuidRequest( + xGustoAPIVersion, payrollBatchUuid); + } + + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "X-Gusto-API-Version", + "\"2025-11-15\"", + new TypeReference>() {}); + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1PayrollBatchesPayrollBatchUuidRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1PayrollBatchesPayrollBatchUuidRequestBuilder.java new file mode 100644 index 000000000..b0e60d373 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1PayrollBatchesPayrollBatchUuidRequestBuilder.java @@ -0,0 +1,82 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.RequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2025_11_15.SDKConfiguration; +import com.gusto.embedded_api_v_2025_11_15.operations.GetV1PayrollBatchesPayrollBatchUuid; +import com.gusto.embedded_api_v_2025_11_15.utils.Headers; +import com.gusto.embedded_api_v_2025_11_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.String; +import java.util.Optional; + +public class GetV1PayrollBatchesPayrollBatchUuidRequestBuilder { + + private GetV1PayrollBatchesPayrollBatchUuidSecurity security; + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2025-11-15\"", + new TypeReference>() {}); + private String payrollBatchUuid; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public GetV1PayrollBatchesPayrollBatchUuidRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public GetV1PayrollBatchesPayrollBatchUuidRequestBuilder security(GetV1PayrollBatchesPayrollBatchUuidSecurity security) { + Utils.checkNotNull(security, "security"); + this.security = security; + return this; + } + + public GetV1PayrollBatchesPayrollBatchUuidRequestBuilder xGustoAPIVersion(GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetV1PayrollBatchesPayrollBatchUuidRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public GetV1PayrollBatchesPayrollBatchUuidRequestBuilder payrollBatchUuid(String payrollBatchUuid) { + Utils.checkNotNull(payrollBatchUuid, "payrollBatchUuid"); + this.payrollBatchUuid = payrollBatchUuid; + return this; + } + + + private GetV1PayrollBatchesPayrollBatchUuidRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + GetV1PayrollBatchesPayrollBatchUuidRequest request = new GetV1PayrollBatchesPayrollBatchUuidRequest(xGustoAPIVersion, + payrollBatchUuid); + + return request; + } + + public GetV1PayrollBatchesPayrollBatchUuidResponse call() { + + RequestOperation operation + = new GetV1PayrollBatchesPayrollBatchUuid.Sync(sdkConfiguration, security, _headers); + GetV1PayrollBatchesPayrollBatchUuidRequest request = buildRequest(); + + return operation.handleResponse(operation.doRequest(request)); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2025-11-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1PayrollBatchesPayrollBatchUuidResponse.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1PayrollBatchesPayrollBatchUuidResponse.java new file mode 100644 index 000000000..d360d31e4 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1PayrollBatchesPayrollBatchUuidResponse.java @@ -0,0 +1,253 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2025_11_15.models.components.PayrollBatchResults; +import com.gusto.embedded_api_v_2025_11_15.utils.Response; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.io.InputStream; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.Optional; + + +public class GetV1PayrollBatchesPayrollBatchUuidResponse implements Response { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * successful + */ + private Optional payrollBatchResults; + + @JsonCreator + public GetV1PayrollBatchesPayrollBatchUuidResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional payrollBatchResults) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(payrollBatchResults, "payrollBatchResults"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.payrollBatchResults = payrollBatchResults; + } + + public GetV1PayrollBatchesPayrollBatchUuidResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * successful + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional payrollBatchResults() { + return (Optional) payrollBatchResults; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public GetV1PayrollBatchesPayrollBatchUuidResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public GetV1PayrollBatchesPayrollBatchUuidResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public GetV1PayrollBatchesPayrollBatchUuidResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * successful + */ + public GetV1PayrollBatchesPayrollBatchUuidResponse withPayrollBatchResults(PayrollBatchResults payrollBatchResults) { + Utils.checkNotNull(payrollBatchResults, "payrollBatchResults"); + this.payrollBatchResults = Optional.ofNullable(payrollBatchResults); + return this; + } + + + /** + * successful + */ + public GetV1PayrollBatchesPayrollBatchUuidResponse withPayrollBatchResults(Optional payrollBatchResults) { + Utils.checkNotNull(payrollBatchResults, "payrollBatchResults"); + this.payrollBatchResults = payrollBatchResults; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetV1PayrollBatchesPayrollBatchUuidResponse other = (GetV1PayrollBatchesPayrollBatchUuidResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.payrollBatchResults, other.payrollBatchResults); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + payrollBatchResults); + } + + @Override + public String toString() { + return Utils.toString(GetV1PayrollBatchesPayrollBatchUuidResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "payrollBatchResults", payrollBatchResults); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional payrollBatchResults = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * successful + */ + public Builder payrollBatchResults(PayrollBatchResults payrollBatchResults) { + Utils.checkNotNull(payrollBatchResults, "payrollBatchResults"); + this.payrollBatchResults = Optional.ofNullable(payrollBatchResults); + return this; + } + + /** + * successful + */ + public Builder payrollBatchResults(Optional payrollBatchResults) { + Utils.checkNotNull(payrollBatchResults, "payrollBatchResults"); + this.payrollBatchResults = payrollBatchResults; + return this; + } + + public GetV1PayrollBatchesPayrollBatchUuidResponse build() { + + return new GetV1PayrollBatchesPayrollBatchUuidResponse( + contentType, statusCode, rawResponse, + payrollBatchResults); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1PayrollBatchesPayrollBatchUuidSecurity.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1PayrollBatchesPayrollBatchUuidSecurity.java new file mode 100644 index 000000000..a168877b7 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1PayrollBatchesPayrollBatchUuidSecurity.java @@ -0,0 +1,91 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2025_11_15.utils.HasSecurity; +import com.gusto.embedded_api_v_2025_11_15.utils.SpeakeasyMetadata; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Override; +import java.lang.String; + + +public class GetV1PayrollBatchesPayrollBatchUuidSecurity implements HasSecurity { + + @SpeakeasyMetadata("security:scheme=true,type=http,subtype=bearer,name=Authorization") + private String systemAccessAuth; + + @JsonCreator + public GetV1PayrollBatchesPayrollBatchUuidSecurity( + String systemAccessAuth) { + Utils.checkNotNull(systemAccessAuth, "systemAccessAuth"); + this.systemAccessAuth = systemAccessAuth; + } + + @JsonIgnore + public String systemAccessAuth() { + return systemAccessAuth; + } + + public static Builder builder() { + return new Builder(); + } + + + public GetV1PayrollBatchesPayrollBatchUuidSecurity withSystemAccessAuth(String systemAccessAuth) { + Utils.checkNotNull(systemAccessAuth, "systemAccessAuth"); + this.systemAccessAuth = systemAccessAuth; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetV1PayrollBatchesPayrollBatchUuidSecurity other = (GetV1PayrollBatchesPayrollBatchUuidSecurity) o; + return + Utils.enhancedDeepEquals(this.systemAccessAuth, other.systemAccessAuth); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + systemAccessAuth); + } + + @Override + public String toString() { + return Utils.toString(GetV1PayrollBatchesPayrollBatchUuidSecurity.class, + "systemAccessAuth", systemAccessAuth); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String systemAccessAuth; + + private Builder() { + // force use of static builder() method + } + + + public Builder systemAccessAuth(String systemAccessAuth) { + Utils.checkNotNull(systemAccessAuth, "systemAccessAuth"); + this.systemAccessAuth = systemAccessAuth; + return this; + } + + public GetV1PayrollBatchesPayrollBatchUuidSecurity build() { + + return new GetV1PayrollBatchesPayrollBatchUuidSecurity( + systemAccessAuth); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1PayrollDigestsPayrollDigestUuidRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1PayrollDigestsPayrollDigestUuidRequest.java index b1ea7ae43..0573f5657 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1PayrollDigestsPayrollDigestUuidRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1PayrollDigestsPayrollDigestUuidRequest.java @@ -16,12 +16,6 @@ public class GetV1PayrollDigestsPayrollDigestUuidRequest { - /** - * The UUID of the payroll digest batch returned by `POST /v1/payroll_digests`. - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=payroll_digest_uuid") - private String payrollDigestUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class GetV1PayrollDigestsPayrollDigestUuidRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the payroll digest batch returned by `POST /v1/payroll_digests`. + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=payroll_digest_uuid") + private String payrollDigestUuid; + @JsonCreator public GetV1PayrollDigestsPayrollDigestUuidRequest( - String payrollDigestUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(payrollDigestUuid, "payrollDigestUuid"); + Optional xGustoAPIVersion, + String payrollDigestUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.payrollDigestUuid = payrollDigestUuid; + Utils.checkNotNull(payrollDigestUuid, "payrollDigestUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.payrollDigestUuid = payrollDigestUuid; } public GetV1PayrollDigestsPayrollDigestUuidRequest( String payrollDigestUuid) { - this(payrollDigestUuid, Optional.empty()); - } - - /** - * The UUID of the payroll digest batch returned by `POST /v1/payroll_digests`. - */ - @JsonIgnore - public String payrollDigestUuid() { - return payrollDigestUuid; + this(Optional.empty(), payrollDigestUuid); } /** @@ -64,20 +56,19 @@ public Optional xGus return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the payroll digest batch returned by `POST /v1/payroll_digests`. */ - public GetV1PayrollDigestsPayrollDigestUuidRequest withPayrollDigestUuid(String payrollDigestUuid) { - Utils.checkNotNull(payrollDigestUuid, "payrollDigestUuid"); - this.payrollDigestUuid = payrollDigestUuid; - return this; + @JsonIgnore + public String payrollDigestUuid() { + return payrollDigestUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetV1PayrollDigestsPayrollDigestUuidRequest withXGustoAPIVersion(Optional return this; } + /** + * The UUID of the payroll digest batch returned by `POST /v1/payroll_digests`. + */ + public GetV1PayrollDigestsPayrollDigestUuidRequest withPayrollDigestUuid(String payrollDigestUuid) { + Utils.checkNotNull(payrollDigestUuid, "payrollDigestUuid"); + this.payrollDigestUuid = payrollDigestUuid; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -111,45 +111,35 @@ public boolean equals(java.lang.Object o) { } GetV1PayrollDigestsPayrollDigestUuidRequest other = (GetV1PayrollDigestsPayrollDigestUuidRequest) o; return - Utils.enhancedDeepEquals(this.payrollDigestUuid, other.payrollDigestUuid) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.payrollDigestUuid, other.payrollDigestUuid); } @Override public int hashCode() { return Utils.enhancedHash( - payrollDigestUuid, xGustoAPIVersion); + xGustoAPIVersion, payrollDigestUuid); } @Override public String toString() { return Utils.toString(GetV1PayrollDigestsPayrollDigestUuidRequest.class, - "payrollDigestUuid", payrollDigestUuid, - "xGustoAPIVersion", xGustoAPIVersion); + "xGustoAPIVersion", xGustoAPIVersion, + "payrollDigestUuid", payrollDigestUuid); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String payrollDigestUuid; - private Optional xGustoAPIVersion; + private String payrollDigestUuid; + private Builder() { // force use of static builder() method } - /** - * The UUID of the payroll digest batch returned by `POST /v1/payroll_digests`. - */ - public Builder payrollDigestUuid(String payrollDigestUuid) { - Utils.checkNotNull(payrollDigestUuid, "payrollDigestUuid"); - this.payrollDigestUuid = payrollDigestUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String payrollDigestUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -34,12 +34,6 @@ public GetV1PayrollDigestsPayrollDigestUuidRequestBuilder security(GetV1PayrollD this.security = security; return this; } - - public GetV1PayrollDigestsPayrollDigestUuidRequestBuilder payrollDigestUuid(String payrollDigestUuid) { - Utils.checkNotNull(payrollDigestUuid, "payrollDigestUuid"); - this.payrollDigestUuid = payrollDigestUuid; - return this; - } public GetV1PayrollDigestsPayrollDigestUuidRequestBuilder xGustoAPIVersion(GetV1PayrollDigestsPayrollDigestUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -53,14 +47,20 @@ public GetV1PayrollDigestsPayrollDigestUuidRequestBuilder xGustoAPIVersion(Optio return this; } + public GetV1PayrollDigestsPayrollDigestUuidRequestBuilder payrollDigestUuid(String payrollDigestUuid) { + Utils.checkNotNull(payrollDigestUuid, "payrollDigestUuid"); + this.payrollDigestUuid = payrollDigestUuid; + return this; + } + private GetV1PayrollDigestsPayrollDigestUuidRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1PayrollDigestsPayrollDigestUuidRequest request = new GetV1PayrollDigestsPayrollDigestUuidRequest(payrollDigestUuid, - xGustoAPIVersion); + GetV1PayrollDigestsPayrollDigestUuidRequest request = new GetV1PayrollDigestsPayrollDigestUuidRequest(xGustoAPIVersion, + payrollDigestUuid); return request; } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1PeopleBatchesPeopleBatchUuidRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1PeopleBatchesPeopleBatchUuidRequest.java index 96821d8f6..c94cbc76e 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1PeopleBatchesPeopleBatchUuidRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1PeopleBatchesPeopleBatchUuidRequest.java @@ -16,12 +16,6 @@ public class GetV1PeopleBatchesPeopleBatchUuidRequest { - /** - * The UUID of the people batch - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=people_batch_uuid") - private String peopleBatchUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class GetV1PeopleBatchesPeopleBatchUuidRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the people batch + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=people_batch_uuid") + private String peopleBatchUuid; + @JsonCreator public GetV1PeopleBatchesPeopleBatchUuidRequest( - String peopleBatchUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(peopleBatchUuid, "peopleBatchUuid"); + Optional xGustoAPIVersion, + String peopleBatchUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.peopleBatchUuid = peopleBatchUuid; + Utils.checkNotNull(peopleBatchUuid, "peopleBatchUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.peopleBatchUuid = peopleBatchUuid; } public GetV1PeopleBatchesPeopleBatchUuidRequest( String peopleBatchUuid) { - this(peopleBatchUuid, Optional.empty()); - } - - /** - * The UUID of the people batch - */ - @JsonIgnore - public String peopleBatchUuid() { - return peopleBatchUuid; + this(Optional.empty(), peopleBatchUuid); } /** @@ -64,20 +56,19 @@ public Optional xGustoA return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the people batch */ - public GetV1PeopleBatchesPeopleBatchUuidRequest withPeopleBatchUuid(String peopleBatchUuid) { - Utils.checkNotNull(peopleBatchUuid, "peopleBatchUuid"); - this.peopleBatchUuid = peopleBatchUuid; - return this; + @JsonIgnore + public String peopleBatchUuid() { + return peopleBatchUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetV1PeopleBatchesPeopleBatchUuidRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String peopleBatchUuid; + private Builder() { // force use of static builder() method } - /** - * The UUID of the people batch - */ - public Builder peopleBatchUuid(String peopleBatchUuid) { - Utils.checkNotNull(peopleBatchUuid, "peopleBatchUuid"); - this.peopleBatchUuid = peopleBatchUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String peopleBatchUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1PeopleBatchesPeopleBatchUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1PeopleBatchesPeopleBatchUuidRequestBuilder peopleBatchUuid(String peopleBatchUuid) { - Utils.checkNotNull(peopleBatchUuid, "peopleBatchUuid"); - this.peopleBatchUuid = peopleBatchUuid; - return this; - } public GetV1PeopleBatchesPeopleBatchUuidRequestBuilder xGustoAPIVersion(GetV1PeopleBatchesPeopleBatchUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public GetV1PeopleBatchesPeopleBatchUuidRequestBuilder xGustoAPIVersion(Optional return this; } + public GetV1PeopleBatchesPeopleBatchUuidRequestBuilder peopleBatchUuid(String peopleBatchUuid) { + Utils.checkNotNull(peopleBatchUuid, "peopleBatchUuid"); + this.peopleBatchUuid = peopleBatchUuid; + return this; + } + private GetV1PeopleBatchesPeopleBatchUuidRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1PeopleBatchesPeopleBatchUuidRequest request = new GetV1PeopleBatchesPeopleBatchUuidRequest(peopleBatchUuid, - xGustoAPIVersion); + GetV1PeopleBatchesPeopleBatchUuidRequest request = new GetV1PeopleBatchesPeopleBatchUuidRequest(xGustoAPIVersion, + peopleBatchUuid); return request; } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1TokenInfoHeaderXGustoAPIVersion.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1TokenInfoHeaderXGustoAPIVersion.java new file mode 100644 index 000000000..661c4c694 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1TokenInfoHeaderXGustoAPIVersion.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * GetV1TokenInfoHeaderXGustoAPIVersion + * + *

    Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ +public enum GetV1TokenInfoHeaderXGustoAPIVersion { + TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15("2025-11-15"); + + @JsonValue + private final String value; + + GetV1TokenInfoHeaderXGustoAPIVersion(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (GetV1TokenInfoHeaderXGustoAPIVersion o: GetV1TokenInfoHeaderXGustoAPIVersion.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1TokenInfoRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1TokenInfoRequest.java index 0943324e3..4e0375717 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1TokenInfoRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1TokenInfoRequest.java @@ -22,11 +22,11 @@ public class GetV1TokenInfoRequest { * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; + private Optional xGustoAPIVersion; @JsonCreator public GetV1TokenInfoRequest( - Optional xGustoAPIVersion) { + Optional xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); this.xGustoAPIVersion = xGustoAPIVersion; } @@ -42,8 +42,8 @@ public GetV1TokenInfoRequest() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional xGustoAPIVersion() { - return (Optional) xGustoAPIVersion; + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; } public static Builder builder() { @@ -56,7 +56,7 @@ public static Builder builder() { * application's [minimum API * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - public GetV1TokenInfoRequest withXGustoAPIVersion(XGustoAPIVersion xGustoAPIVersion) { + public GetV1TokenInfoRequest withXGustoAPIVersion(GetV1TokenInfoHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); return this; @@ -68,7 +68,7 @@ public GetV1TokenInfoRequest withXGustoAPIVersion(XGustoAPIVersion xGustoAPIVers * application's [minimum API * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - public GetV1TokenInfoRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + public GetV1TokenInfoRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); this.xGustoAPIVersion = xGustoAPIVersion; return this; @@ -102,7 +102,7 @@ public String toString() { @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private Optional xGustoAPIVersion; + private Optional xGustoAPIVersion; private Builder() { // force use of static builder() method @@ -114,7 +114,7 @@ private Builder() { * application's [minimum API * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - public Builder xGustoAPIVersion(XGustoAPIVersion xGustoAPIVersion) { + public Builder xGustoAPIVersion(GetV1TokenInfoHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); return this; @@ -125,7 +125,7 @@ public Builder xGustoAPIVersion(XGustoAPIVersion xGustoAPIVersion) { * application's [minimum API * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); this.xGustoAPIVersion = xGustoAPIVersion; return this; @@ -141,10 +141,10 @@ public GetV1TokenInfoRequest build() { } - private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = new LazySingletonValue<>( "X-Gusto-API-Version", "\"2025-11-15\"", - new TypeReference>() {}); + new TypeReference>() {}); } } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1TokenInfoRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1TokenInfoRequestBuilder.java index 5b646d27c..b48c83a52 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1TokenInfoRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1TokenInfoRequestBuilder.java @@ -15,10 +15,10 @@ public class GetV1TokenInfoRequestBuilder { - private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", - new TypeReference>() {}); + new TypeReference>() {}); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -26,13 +26,13 @@ public GetV1TokenInfoRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - public GetV1TokenInfoRequestBuilder xGustoAPIVersion(XGustoAPIVersion xGustoAPIVersion) { + public GetV1TokenInfoRequestBuilder xGustoAPIVersion(GetV1TokenInfoHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); return this; } - public GetV1TokenInfoRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + public GetV1TokenInfoRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); this.xGustoAPIVersion = xGustoAPIVersion; return this; @@ -58,9 +58,9 @@ public GetV1TokenInfoResponse call() { return operation.handleResponse(operation.doRequest(request)); } - private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = new LazySingletonValue<>( "xGustoAPIVersion", "\"2025-11-15\"", - new TypeReference>() {}); + new TypeReference>() {}); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1WebhookSubscriptionUuidRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1WebhookSubscriptionUuidRequest.java index 9b85eb347..3d83430df 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1WebhookSubscriptionUuidRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1WebhookSubscriptionUuidRequest.java @@ -16,12 +16,6 @@ public class GetV1WebhookSubscriptionUuidRequest { - /** - * The webhook subscription UUID. - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=webhook_subscription_uuid") - private String webhookSubscriptionUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class GetV1WebhookSubscriptionUuidRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The webhook subscription UUID. + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=webhook_subscription_uuid") + private String webhookSubscriptionUuid; + @JsonCreator public GetV1WebhookSubscriptionUuidRequest( - String webhookSubscriptionUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); + Optional xGustoAPIVersion, + String webhookSubscriptionUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; + Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.webhookSubscriptionUuid = webhookSubscriptionUuid; } public GetV1WebhookSubscriptionUuidRequest( String webhookSubscriptionUuid) { - this(webhookSubscriptionUuid, Optional.empty()); - } - - /** - * The webhook subscription UUID. - */ - @JsonIgnore - public String webhookSubscriptionUuid() { - return webhookSubscriptionUuid; + this(Optional.empty(), webhookSubscriptionUuid); } /** @@ -64,20 +56,19 @@ public Optional xGustoAPIVer return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The webhook subscription UUID. */ - public GetV1WebhookSubscriptionUuidRequest withWebhookSubscriptionUuid(String webhookSubscriptionUuid) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; - return this; + @JsonIgnore + public String webhookSubscriptionUuid() { + return webhookSubscriptionUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetV1WebhookSubscriptionUuidRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String webhookSubscriptionUuid; + private Builder() { // force use of static builder() method } - /** - * The webhook subscription UUID. - */ - public Builder webhookSubscriptionUuid(String webhookSubscriptionUuid) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String webhookSubscriptionUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -34,12 +34,6 @@ public GetV1WebhookSubscriptionUuidRequestBuilder security(GetV1WebhookSubscript this.security = security; return this; } - - public GetV1WebhookSubscriptionUuidRequestBuilder webhookSubscriptionUuid(String webhookSubscriptionUuid) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; - return this; - } public GetV1WebhookSubscriptionUuidRequestBuilder xGustoAPIVersion(GetV1WebhookSubscriptionUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -53,14 +47,20 @@ public GetV1WebhookSubscriptionUuidRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion; + /** + * The webhook subscription UUID. + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=webhook_subscription_uuid") + private String webhookSubscriptionUuid; + @JsonCreator public GetV1WebhookSubscriptionVerificationTokenUuidRequest( - String webhookSubscriptionUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); + Optional xGustoAPIVersion, + String webhookSubscriptionUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; + Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.webhookSubscriptionUuid = webhookSubscriptionUuid; } public GetV1WebhookSubscriptionVerificationTokenUuidRequest( String webhookSubscriptionUuid) { - this(webhookSubscriptionUuid, Optional.empty()); - } - - /** - * The webhook subscription UUID. - */ - @JsonIgnore - public String webhookSubscriptionUuid() { - return webhookSubscriptionUuid; + this(Optional.empty(), webhookSubscriptionUuid); } /** @@ -64,20 +56,19 @@ public Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The webhook subscription UUID. */ - public GetV1WebhookSubscriptionVerificationTokenUuidRequest withWebhookSubscriptionUuid(String webhookSubscriptionUuid) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; - return this; + @JsonIgnore + public String webhookSubscriptionUuid() { + return webhookSubscriptionUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetV1WebhookSubscriptionVerificationTokenUuidRequest withXGustoAPIVersion return this; } + /** + * The webhook subscription UUID. + */ + public GetV1WebhookSubscriptionVerificationTokenUuidRequest withWebhookSubscriptionUuid(String webhookSubscriptionUuid) { + Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); + this.webhookSubscriptionUuid = webhookSubscriptionUuid; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -111,45 +111,35 @@ public boolean equals(java.lang.Object o) { } GetV1WebhookSubscriptionVerificationTokenUuidRequest other = (GetV1WebhookSubscriptionVerificationTokenUuidRequest) o; return - Utils.enhancedDeepEquals(this.webhookSubscriptionUuid, other.webhookSubscriptionUuid) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.webhookSubscriptionUuid, other.webhookSubscriptionUuid); } @Override public int hashCode() { return Utils.enhancedHash( - webhookSubscriptionUuid, xGustoAPIVersion); + xGustoAPIVersion, webhookSubscriptionUuid); } @Override public String toString() { return Utils.toString(GetV1WebhookSubscriptionVerificationTokenUuidRequest.class, - "webhookSubscriptionUuid", webhookSubscriptionUuid, - "xGustoAPIVersion", xGustoAPIVersion); + "xGustoAPIVersion", xGustoAPIVersion, + "webhookSubscriptionUuid", webhookSubscriptionUuid); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String webhookSubscriptionUuid; - private Optional xGustoAPIVersion; + private String webhookSubscriptionUuid; + private Builder() { // force use of static builder() method } - /** - * The webhook subscription UUID. - */ - public Builder webhookSubscriptionUuid(String webhookSubscriptionUuid) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String webhookSubscriptionUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -34,12 +34,6 @@ public GetV1WebhookSubscriptionVerificationTokenUuidRequestBuilder security(GetV this.security = security; return this; } - - public GetV1WebhookSubscriptionVerificationTokenUuidRequestBuilder webhookSubscriptionUuid(String webhookSubscriptionUuid) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; - return this; - } public GetV1WebhookSubscriptionVerificationTokenUuidRequestBuilder xGustoAPIVersion(GetV1WebhookSubscriptionVerificationTokenUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -53,14 +47,20 @@ public GetV1WebhookSubscriptionVerificationTokenUuidRequestBuilder xGustoAPIVers return this; } + public GetV1WebhookSubscriptionVerificationTokenUuidRequestBuilder webhookSubscriptionUuid(String webhookSubscriptionUuid) { + Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); + this.webhookSubscriptionUuid = webhookSubscriptionUuid; + return this; + } + private GetV1WebhookSubscriptionVerificationTokenUuidRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1WebhookSubscriptionVerificationTokenUuidRequest request = new GetV1WebhookSubscriptionVerificationTokenUuidRequest(webhookSubscriptionUuid, - xGustoAPIVersion); + GetV1WebhookSubscriptionVerificationTokenUuidRequest request = new GetV1WebhookSubscriptionVerificationTokenUuidRequest(xGustoAPIVersion, + webhookSubscriptionUuid); return request; } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1WorkAddressesWorkAddressUuidRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1WorkAddressesWorkAddressUuidRequest.java index 4bd47f42e..102723f7e 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1WorkAddressesWorkAddressUuidRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetV1WorkAddressesWorkAddressUuidRequest.java @@ -16,12 +16,6 @@ public class GetV1WorkAddressesWorkAddressUuidRequest { - /** - * The UUID of the work address - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=work_address_uuid") - private String workAddressUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class GetV1WorkAddressesWorkAddressUuidRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the work address + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=work_address_uuid") + private String workAddressUuid; + @JsonCreator public GetV1WorkAddressesWorkAddressUuidRequest( - String workAddressUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(workAddressUuid, "workAddressUuid"); + Optional xGustoAPIVersion, + String workAddressUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.workAddressUuid = workAddressUuid; + Utils.checkNotNull(workAddressUuid, "workAddressUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.workAddressUuid = workAddressUuid; } public GetV1WorkAddressesWorkAddressUuidRequest( String workAddressUuid) { - this(workAddressUuid, Optional.empty()); - } - - /** - * The UUID of the work address - */ - @JsonIgnore - public String workAddressUuid() { - return workAddressUuid; + this(Optional.empty(), workAddressUuid); } /** @@ -64,20 +56,19 @@ public Optional xGustoA return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the work address */ - public GetV1WorkAddressesWorkAddressUuidRequest withWorkAddressUuid(String workAddressUuid) { - Utils.checkNotNull(workAddressUuid, "workAddressUuid"); - this.workAddressUuid = workAddressUuid; - return this; + @JsonIgnore + public String workAddressUuid() { + return workAddressUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetV1WorkAddressesWorkAddressUuidRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String workAddressUuid; + private Builder() { // force use of static builder() method } - /** - * The UUID of the work address - */ - public Builder workAddressUuid(String workAddressUuid) { - Utils.checkNotNull(workAddressUuid, "workAddressUuid"); - this.workAddressUuid = workAddressUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String workAddressUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1WorkAddressesWorkAddressUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1WorkAddressesWorkAddressUuidRequestBuilder workAddressUuid(String workAddressUuid) { - Utils.checkNotNull(workAddressUuid, "workAddressUuid"); - this.workAddressUuid = workAddressUuid; - return this; - } public GetV1WorkAddressesWorkAddressUuidRequestBuilder xGustoAPIVersion(GetV1WorkAddressesWorkAddressUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public GetV1WorkAddressesWorkAddressUuidRequestBuilder xGustoAPIVersion(Optional return this; } + public GetV1WorkAddressesWorkAddressUuidRequestBuilder workAddressUuid(String workAddressUuid) { + Utils.checkNotNull(workAddressUuid, "workAddressUuid"); + this.workAddressUuid = workAddressUuid; + return this; + } + private GetV1WorkAddressesWorkAddressUuidRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1WorkAddressesWorkAddressUuidRequest request = new GetV1WorkAddressesWorkAddressUuidRequest(workAddressUuid, - xGustoAPIVersion); + GetV1WorkAddressesWorkAddressUuidRequest request = new GetV1WorkAddressesWorkAddressUuidRequest(xGustoAPIVersion, + workAddressUuid); return request; } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetWireInRequestsWireInRequestUuidRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetWireInRequestsWireInRequestUuidRequest.java index 39603c569..b1672a3c7 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetWireInRequestsWireInRequestUuidRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/GetWireInRequestsWireInRequestUuidRequest.java @@ -16,12 +16,6 @@ public class GetWireInRequestsWireInRequestUuidRequest { - /** - * The UUID of the Wire In Request - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=wire_in_request_uuid") - private String wireInRequestUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class GetWireInRequestsWireInRequestUuidRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the Wire In Request + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=wire_in_request_uuid") + private String wireInRequestUuid; + @JsonCreator public GetWireInRequestsWireInRequestUuidRequest( - String wireInRequestUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(wireInRequestUuid, "wireInRequestUuid"); + Optional xGustoAPIVersion, + String wireInRequestUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.wireInRequestUuid = wireInRequestUuid; + Utils.checkNotNull(wireInRequestUuid, "wireInRequestUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.wireInRequestUuid = wireInRequestUuid; } public GetWireInRequestsWireInRequestUuidRequest( String wireInRequestUuid) { - this(wireInRequestUuid, Optional.empty()); - } - - /** - * The UUID of the Wire In Request - */ - @JsonIgnore - public String wireInRequestUuid() { - return wireInRequestUuid; + this(Optional.empty(), wireInRequestUuid); } /** @@ -64,20 +56,19 @@ public Optional xGusto return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the Wire In Request */ - public GetWireInRequestsWireInRequestUuidRequest withWireInRequestUuid(String wireInRequestUuid) { - Utils.checkNotNull(wireInRequestUuid, "wireInRequestUuid"); - this.wireInRequestUuid = wireInRequestUuid; - return this; + @JsonIgnore + public String wireInRequestUuid() { + return wireInRequestUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetWireInRequestsWireInRequestUuidRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String wireInRequestUuid; + private Builder() { // force use of static builder() method } - /** - * The UUID of the Wire In Request - */ - public Builder wireInRequestUuid(String wireInRequestUuid) { - Utils.checkNotNull(wireInRequestUuid, "wireInRequestUuid"); - this.wireInRequestUuid = wireInRequestUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String wireInRequestUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetWireInRequestsWireInRequestUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetWireInRequestsWireInRequestUuidRequestBuilder wireInRequestUuid(String wireInRequestUuid) { - Utils.checkNotNull(wireInRequestUuid, "wireInRequestUuid"); - this.wireInRequestUuid = wireInRequestUuid; - return this; - } public GetWireInRequestsWireInRequestUuidRequestBuilder xGustoAPIVersion(GetWireInRequestsWireInRequestUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public GetWireInRequestsWireInRequestUuidRequestBuilder xGustoAPIVersion(Optiona return this; } + public GetWireInRequestsWireInRequestUuidRequestBuilder wireInRequestUuid(String wireInRequestUuid) { + Utils.checkNotNull(wireInRequestUuid, "wireInRequestUuid"); + this.wireInRequestUuid = wireInRequestUuid; + return this; + } + private GetWireInRequestsWireInRequestUuidRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetWireInRequestsWireInRequestUuidRequest request = new GetWireInRequestsWireInRequestUuidRequest(wireInRequestUuid, - xGustoAPIVersion); + GetWireInRequestsWireInRequestUuidRequest request = new GetWireInRequestsWireInRequestUuidRequest(xGustoAPIVersion, + wireInRequestUuid); return request; } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/Include.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/Include.java index 822f37347..daae3a7f7 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/Include.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/Include.java @@ -8,13 +8,15 @@ import java.util.Objects; import java.util.Optional; +/** + * Include + * + *

    Available options: + * - all_benefits: If with_employee_benefits=true, include all effective dated benefits for each + * employee instead of only the current benefits. + */ public enum Include { - ALL_COMPENSATIONS("all_compensations"), - ALL_HOME_ADDRESSES("all_home_addresses"), - COMPANY_NAME("company_name"), - CURRENT_HOME_ADDRESS("current_home_address"), - CUSTOM_FIELDS("custom_fields"), - PORTAL_INVITATIONS("portal_invitations"); + ALL_BENEFITS("all_benefits"); @JsonValue private final String value; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/LeavingFor.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/LeavingFor.java index 02f60eba4..270cfba56 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/LeavingFor.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/LeavingFor.java @@ -34,6 +34,7 @@ public enum LeavingFor { NAMELY("namely"), ONPAY("onpay"), OTHER("other"), + OTHER_PEO("other_peo"), OYSTER("oyster"), PATRIOT("patriot"), PAYCHEX("paychex"), @@ -43,6 +44,7 @@ public enum LeavingFor { RIPPLING("rippling"), SQUARE("square"), SUREPAYROLL("surepayroll"), + TOAST("toast"), TRINET("trinet"), VELOCITY_GLOBAL("velocity_global"), ZENEFITS("zenefits"); diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/OauthAccessTokenHeaderXGustoAPIVersion.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/OauthAccessTokenHeaderXGustoAPIVersion.java new file mode 100644 index 000000000..eb1d471da --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/OauthAccessTokenHeaderXGustoAPIVersion.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * OauthAccessTokenHeaderXGustoAPIVersion + * + *

    Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ +public enum OauthAccessTokenHeaderXGustoAPIVersion { + TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15("2025-11-15"); + + @JsonValue + private final String value; + + OauthAccessTokenHeaderXGustoAPIVersion(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (OauthAccessTokenHeaderXGustoAPIVersion o: OauthAccessTokenHeaderXGustoAPIVersion.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/OauthAccessTokenRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/OauthAccessTokenRequest.java index b1a7a7700..04f9f4479 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/OauthAccessTokenRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/OauthAccessTokenRequest.java @@ -22,7 +22,7 @@ public class OauthAccessTokenRequest { * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; + private Optional xGustoAPIVersion; @SpeakeasyMetadata("request:mediaType=application/json") @@ -30,7 +30,7 @@ public class OauthAccessTokenRequest { @JsonCreator public OauthAccessTokenRequest( - Optional xGustoAPIVersion, + Optional xGustoAPIVersion, OauthAccessTokenRequestBody requestBody) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(requestBody, "requestBody"); @@ -50,8 +50,8 @@ public OauthAccessTokenRequest( */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional xGustoAPIVersion() { - return (Optional) xGustoAPIVersion; + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; } @JsonIgnore @@ -69,7 +69,7 @@ public static Builder builder() { * application's [minimum API * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - public OauthAccessTokenRequest withXGustoAPIVersion(HeaderXGustoAPIVersion xGustoAPIVersion) { + public OauthAccessTokenRequest withXGustoAPIVersion(OauthAccessTokenHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); return this; @@ -81,7 +81,7 @@ public OauthAccessTokenRequest withXGustoAPIVersion(HeaderXGustoAPIVersion xGust * application's [minimum API * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - public OauthAccessTokenRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + public OauthAccessTokenRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); this.xGustoAPIVersion = xGustoAPIVersion; return this; @@ -123,7 +123,7 @@ public String toString() { @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private Optional xGustoAPIVersion; + private Optional xGustoAPIVersion; private OauthAccessTokenRequestBody requestBody; @@ -137,7 +137,7 @@ private Builder() { * application's [minimum API * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - public Builder xGustoAPIVersion(HeaderXGustoAPIVersion xGustoAPIVersion) { + public Builder xGustoAPIVersion(OauthAccessTokenHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); return this; @@ -148,7 +148,7 @@ public Builder xGustoAPIVersion(HeaderXGustoAPIVersion xGustoAPIVersion) { * application's [minimum API * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); this.xGustoAPIVersion = xGustoAPIVersion; return this; @@ -171,10 +171,10 @@ public OauthAccessTokenRequest build() { } - private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = new LazySingletonValue<>( "X-Gusto-API-Version", "\"2025-11-15\"", - new TypeReference>() {}); + new TypeReference>() {}); } } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/OauthAccessTokenRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/OauthAccessTokenRequestBuilder.java index a9c5f319a..3e4180e34 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/OauthAccessTokenRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/OauthAccessTokenRequestBuilder.java @@ -15,10 +15,10 @@ public class OauthAccessTokenRequestBuilder { - private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", - new TypeReference>() {}); + new TypeReference>() {}); private OauthAccessTokenRequestBody requestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -27,13 +27,13 @@ public OauthAccessTokenRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - public OauthAccessTokenRequestBuilder xGustoAPIVersion(HeaderXGustoAPIVersion xGustoAPIVersion) { + public OauthAccessTokenRequestBuilder xGustoAPIVersion(OauthAccessTokenHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); return this; } - public OauthAccessTokenRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + public OauthAccessTokenRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); this.xGustoAPIVersion = xGustoAPIVersion; return this; @@ -66,9 +66,9 @@ public OauthAccessTokenResponse call() { return operation.handleResponse(operation.doRequest(request)); } - private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = new LazySingletonValue<>( "xGustoAPIVersion", "\"2025-11-15\"", - new TypeReference>() {}); + new TypeReference>() {}); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.java index 023d94ca4..16215d8df 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.java @@ -16,6 +16,14 @@ public class PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + /** * The UUID of the company */ @@ -28,41 +36,44 @@ public class PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest { @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=id") private String id; - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; - @SpeakeasyMetadata("request:mediaType=application/json") private Optional requestBody; @JsonCreator public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest( + Optional xGustoAPIVersion, String companyId, String id, - Optional xGustoAPIVersion, Optional requestBody) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(companyId, "companyId"); Utils.checkNotNull(id, "id"); - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(requestBody, "requestBody"); + this.xGustoAPIVersion = xGustoAPIVersion; this.companyId = companyId; this.id = id; - this.xGustoAPIVersion = xGustoAPIVersion; this.requestBody = requestBody; } public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest( String companyId, String id) { - this(companyId, id, Optional.empty(), + this(Optional.empty(), companyId, id, Optional.empty()); } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + /** * The UUID of the company */ @@ -79,17 +90,6 @@ public String id() { return id; } - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional xGustoAPIVersion() { - return (Optional) xGustoAPIVersion; - } - @SuppressWarnings("unchecked") @JsonIgnore public Optional requestBody() { @@ -101,24 +101,6 @@ public static Builder builder() { } - /** - * The UUID of the company - */ - public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest withCompanyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - - /** - * The UUID of the payroll - */ - public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest withId(String id) { - Utils.checkNotNull(id, "id"); - this.id = id; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -142,6 +124,24 @@ public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest withXGusto return this; } + /** + * The UUID of the company + */ + public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest withCompanyId(String companyId) { + Utils.checkNotNull(companyId, "companyId"); + this.companyId = companyId; + return this; + } + + /** + * The UUID of the payroll + */ + public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest withId(String id) { + Utils.checkNotNull(id, "id"); + this.id = id; + return this; + } + public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest withRequestBody(PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); this.requestBody = Optional.ofNullable(requestBody); @@ -165,37 +165,37 @@ public boolean equals(java.lang.Object o) { } PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest other = (PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest) o; return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.companyId, other.companyId) && Utils.enhancedDeepEquals(this.id, other.id) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.requestBody, other.requestBody); } @Override public int hashCode() { return Utils.enhancedHash( - companyId, id, xGustoAPIVersion, + xGustoAPIVersion, companyId, id, requestBody); } @Override public String toString() { return Utils.toString(PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, "companyId", companyId, "id", id, - "xGustoAPIVersion", xGustoAPIVersion, "requestBody", requestBody); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { + private Optional xGustoAPIVersion; + private String companyId; private String id; - private Optional xGustoAPIVersion; - private Optional requestBody = Optional.empty(); private Builder() { @@ -203,26 +203,6 @@ private Builder() { } - /** - * The UUID of the company - */ - public Builder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - - - /** - * The UUID of the payroll - */ - public Builder id(String id) { - Utils.checkNotNull(id, "id"); - this.id = id; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -246,6 +226,26 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String companyId; + private String id; private Optional requestBody = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -29,18 +29,6 @@ public class PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuild public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - - public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder id(String id) { - Utils.checkNotNull(id, "id"); - this.id = id; - return this; - } public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder xGustoAPIVersion(PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -53,6 +41,18 @@ public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder xGu this.xGustoAPIVersion = xGustoAPIVersion; return this; } + + public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder companyId(String companyId) { + Utils.checkNotNull(companyId, "companyId"); + this.companyId = companyId; + return this; + } + + public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder id(String id) { + Utils.checkNotNull(id, "id"); + this.id = id; + return this; + } public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder requestBody(PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); @@ -72,9 +72,9 @@ private PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest buildRequ xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest request = new PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest(companyId, + PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest request = new PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest(xGustoAPIVersion, + companyId, id, - xGustoAPIVersion, requestBody); return request; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsPaymentMethod.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsPaymentMethod.java index 0562eb3a0..2a3ee3968 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsPaymentMethod.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsPaymentMethod.java @@ -15,7 +15,9 @@ */ public enum PatchV1ContractorPaymentGroupsIdPartnerDisbursementsPaymentMethod { DIRECT_DEPOSIT("Direct Deposit"), - CHECK("Check"); + CHECK("Check"), + HISTORICAL_PAYMENT("Historical Payment"), + CORRECTION_PAYMENT("Correction Payment"); @JsonValue private final String value; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.java index ebc71d8a7..19b53247b 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.java @@ -16,12 +16,6 @@ public class PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest { - /** - * The UUID of the contractor payment group - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=id") - private String id; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,34 +24,32 @@ public class PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the contractor payment group + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=id") + private String id; + @SpeakeasyMetadata("request:mediaType=application/json") private Optional requestBody; @JsonCreator public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest( - String id, Optional xGustoAPIVersion, + String id, Optional requestBody) { - Utils.checkNotNull(id, "id"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(id, "id"); Utils.checkNotNull(requestBody, "requestBody"); - this.id = id; this.xGustoAPIVersion = xGustoAPIVersion; + this.id = id; this.requestBody = requestBody; } public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest( String id) { - this(id, Optional.empty(), Optional.empty()); - } - - /** - * The UUID of the contractor payment group - */ - @JsonIgnore - public String id() { - return id; + this(Optional.empty(), id, Optional.empty()); } /** @@ -71,6 +63,14 @@ public Optional) xGustoAPIVersion; } + /** + * The UUID of the contractor payment group + */ + @JsonIgnore + public String id() { + return id; + } + @SuppressWarnings("unchecked") @JsonIgnore public Optional requestBody() { @@ -82,15 +82,6 @@ public static Builder builder() { } - /** - * The UUID of the contractor payment group - */ - public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest withId(String id) { - Utils.checkNotNull(id, "id"); - this.id = id; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -114,6 +105,15 @@ public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest withXGustoAPI return this; } + /** + * The UUID of the contractor payment group + */ + public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest withId(String id) { + Utils.checkNotNull(id, "id"); + this.id = id; + return this; + } + public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest withRequestBody(PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); this.requestBody = Optional.ofNullable(requestBody); @@ -137,32 +137,32 @@ public boolean equals(java.lang.Object o) { } PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest other = (PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest) o; return - Utils.enhancedDeepEquals(this.id, other.id) && Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.id, other.id) && Utils.enhancedDeepEquals(this.requestBody, other.requestBody); } @Override public int hashCode() { return Utils.enhancedHash( - id, xGustoAPIVersion, requestBody); + xGustoAPIVersion, id, requestBody); } @Override public String toString() { return Utils.toString(PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.class, - "id", id, "xGustoAPIVersion", xGustoAPIVersion, + "id", id, "requestBody", requestBody); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String id; - private Optional xGustoAPIVersion; + private String id; + private Optional requestBody = Optional.empty(); private Builder() { @@ -170,16 +170,6 @@ private Builder() { } - /** - * The UUID of the contractor payment group - */ - public Builder id(String id) { - Utils.checkNotNull(id, "id"); - this.id = id; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -203,6 +193,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String id; private Optional requestBody = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -28,12 +28,6 @@ public class PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder id(String id) { - Utils.checkNotNull(id, "id"); - this.id = id; - return this; - } public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder xGustoAPIVersion(PatchV1ContractorPaymentGroupsIdPartnerDisbursementsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,6 +40,12 @@ public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder xGusto this.xGustoAPIVersion = xGustoAPIVersion; return this; } + + public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder id(String id) { + Utils.checkNotNull(id, "id"); + this.id = id; + return this; + } public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder requestBody(PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); @@ -65,8 +65,8 @@ private PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest buildRequest xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest request = new PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest(id, - xGustoAPIVersion, + PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest request = new PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest(xGustoAPIVersion, + id, requestBody); return request; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.java index 1a3b6cbfb..c0419ef0f 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.java @@ -18,6 +18,14 @@ public class PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + /** * The UUID of the employee */ @@ -30,31 +38,23 @@ public class PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYe @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=effective_year") private long effectiveYear; - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; - @SpeakeasyMetadata("request:mediaType=application/json") private EmployeeSection603HighEarnerStatusUpdateRequest employeeSection603HighEarnerStatusUpdateRequest; @JsonCreator public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest( + Optional xGustoAPIVersion, String employeeUuid, long effectiveYear, - Optional xGustoAPIVersion, EmployeeSection603HighEarnerStatusUpdateRequest employeeSection603HighEarnerStatusUpdateRequest) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(employeeUuid, "employeeUuid"); Utils.checkNotNull(effectiveYear, "effectiveYear"); - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(employeeSection603HighEarnerStatusUpdateRequest, "employeeSection603HighEarnerStatusUpdateRequest"); + this.xGustoAPIVersion = xGustoAPIVersion; this.employeeUuid = employeeUuid; this.effectiveYear = effectiveYear; - this.xGustoAPIVersion = xGustoAPIVersion; this.employeeSection603HighEarnerStatusUpdateRequest = employeeSection603HighEarnerStatusUpdateRequest; } @@ -62,10 +62,21 @@ public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequ String employeeUuid, long effectiveYear, EmployeeSection603HighEarnerStatusUpdateRequest employeeSection603HighEarnerStatusUpdateRequest) { - this(employeeUuid, effectiveYear, Optional.empty(), + this(Optional.empty(), employeeUuid, effectiveYear, employeeSection603HighEarnerStatusUpdateRequest); } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + /** * The UUID of the employee */ @@ -82,17 +93,6 @@ public long effectiveYear() { return effectiveYear; } - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional xGustoAPIVersion() { - return (Optional) xGustoAPIVersion; - } - @JsonIgnore public EmployeeSection603HighEarnerStatusUpdateRequest employeeSection603HighEarnerStatusUpdateRequest() { return employeeSection603HighEarnerStatusUpdateRequest; @@ -103,24 +103,6 @@ public static Builder builder() { } - /** - * The UUID of the employee - */ - public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest withEmployeeUuid(String employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = employeeUuid; - return this; - } - - /** - * The effective year for the Section 603 status - */ - public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest withEffectiveYear(long effectiveYear) { - Utils.checkNotNull(effectiveYear, "effectiveYear"); - this.effectiveYear = effectiveYear; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -144,6 +126,24 @@ public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequ return this; } + /** + * The UUID of the employee + */ + public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest withEmployeeUuid(String employeeUuid) { + Utils.checkNotNull(employeeUuid, "employeeUuid"); + this.employeeUuid = employeeUuid; + return this; + } + + /** + * The effective year for the Section 603 status + */ + public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest withEffectiveYear(long effectiveYear) { + Utils.checkNotNull(effectiveYear, "effectiveYear"); + this.effectiveYear = effectiveYear; + return this; + } + public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest withEmployeeSection603HighEarnerStatusUpdateRequest(EmployeeSection603HighEarnerStatusUpdateRequest employeeSection603HighEarnerStatusUpdateRequest) { Utils.checkNotNull(employeeSection603HighEarnerStatusUpdateRequest, "employeeSection603HighEarnerStatusUpdateRequest"); this.employeeSection603HighEarnerStatusUpdateRequest = employeeSection603HighEarnerStatusUpdateRequest; @@ -160,37 +160,37 @@ public boolean equals(java.lang.Object o) { } PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest other = (PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest) o; return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.employeeUuid, other.employeeUuid) && Utils.enhancedDeepEquals(this.effectiveYear, other.effectiveYear) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.employeeSection603HighEarnerStatusUpdateRequest, other.employeeSection603HighEarnerStatusUpdateRequest); } @Override public int hashCode() { return Utils.enhancedHash( - employeeUuid, effectiveYear, xGustoAPIVersion, + xGustoAPIVersion, employeeUuid, effectiveYear, employeeSection603HighEarnerStatusUpdateRequest); } @Override public String toString() { return Utils.toString(PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, "employeeUuid", employeeUuid, "effectiveYear", effectiveYear, - "xGustoAPIVersion", xGustoAPIVersion, "employeeSection603HighEarnerStatusUpdateRequest", employeeSection603HighEarnerStatusUpdateRequest); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { + private Optional xGustoAPIVersion; + private String employeeUuid; private Long effectiveYear; - private Optional xGustoAPIVersion; - private EmployeeSection603HighEarnerStatusUpdateRequest employeeSection603HighEarnerStatusUpdateRequest; private Builder() { @@ -198,26 +198,6 @@ private Builder() { } - /** - * The UUID of the employee - */ - public Builder employeeUuid(String employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = employeeUuid; - return this; - } - - - /** - * The effective year for the Section 603 status - */ - public Builder effectiveYear(long effectiveYear) { - Utils.checkNotNull(effectiveYear, "effectiveYear"); - this.effectiveYear = effectiveYear; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -241,6 +221,26 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String employeeUuid; + private Long effectiveYear; private EmployeeSection603HighEarnerStatusUpdateRequest employeeSection603HighEarnerStatusUpdateRequest; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -31,18 +31,6 @@ public class PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYe public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder employeeUuid(String employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = employeeUuid; - return this; - } - - public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder effectiveYear(long effectiveYear) { - Utils.checkNotNull(effectiveYear, "effectiveYear"); - this.effectiveYear = effectiveYear; - return this; - } public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder xGustoAPIVersion(PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -56,6 +44,18 @@ public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequ return this; } + public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder employeeUuid(String employeeUuid) { + Utils.checkNotNull(employeeUuid, "employeeUuid"); + this.employeeUuid = employeeUuid; + return this; + } + + public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder effectiveYear(long effectiveYear) { + Utils.checkNotNull(effectiveYear, "effectiveYear"); + this.effectiveYear = effectiveYear; + return this; + } + public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder employeeSection603HighEarnerStatusUpdateRequest(EmployeeSection603HighEarnerStatusUpdateRequest employeeSection603HighEarnerStatusUpdateRequest) { Utils.checkNotNull(employeeSection603HighEarnerStatusUpdateRequest, "employeeSection603HighEarnerStatusUpdateRequest"); this.employeeSection603HighEarnerStatusUpdateRequest = employeeSection603HighEarnerStatusUpdateRequest; @@ -68,9 +68,9 @@ private PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearReq xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest request = new PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest(employeeUuid, + PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest request = new PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest(xGustoAPIVersion, + employeeUuid, effectiveYear, - xGustoAPIVersion, employeeSection603HighEarnerStatusUpdateRequest); return request; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostDepartmentsRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostDepartmentsRequest.java index ce4d54356..a0e46d5bc 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostDepartmentsRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostDepartmentsRequest.java @@ -17,12 +17,6 @@ public class PostDepartmentsRequest { - /** - * The UUID of the company - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") - private String companyUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -31,35 +25,33 @@ public class PostDepartmentsRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") + private String companyUuid; + @SpeakeasyMetadata("request:mediaType=application/json") private DepartmentCreateRequestBody departmentCreateRequestBody; @JsonCreator public PostDepartmentsRequest( - String companyUuid, Optional xGustoAPIVersion, + String companyUuid, DepartmentCreateRequestBody departmentCreateRequestBody) { - Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(departmentCreateRequestBody, "departmentCreateRequestBody"); - this.companyUuid = companyUuid; this.xGustoAPIVersion = xGustoAPIVersion; + this.companyUuid = companyUuid; this.departmentCreateRequestBody = departmentCreateRequestBody; } public PostDepartmentsRequest( String companyUuid, DepartmentCreateRequestBody departmentCreateRequestBody) { - this(companyUuid, Optional.empty(), departmentCreateRequestBody); - } - - /** - * The UUID of the company - */ - @JsonIgnore - public String companyUuid() { - return companyUuid; + this(Optional.empty(), companyUuid, departmentCreateRequestBody); } /** @@ -73,6 +65,14 @@ public Optional xGustoAPIVersion() { return (Optional) xGustoAPIVersion; } + /** + * The UUID of the company + */ + @JsonIgnore + public String companyUuid() { + return companyUuid; + } + @JsonIgnore public DepartmentCreateRequestBody departmentCreateRequestBody() { return departmentCreateRequestBody; @@ -83,15 +83,6 @@ public static Builder builder() { } - /** - * The UUID of the company - */ - public PostDepartmentsRequest withCompanyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -115,6 +106,15 @@ public PostDepartmentsRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String companyUuid; + private DepartmentCreateRequestBody departmentCreateRequestBody; private Builder() { @@ -164,16 +164,6 @@ private Builder() { } - /** - * The UUID of the company - */ - public Builder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -197,6 +187,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String companyUuid; private DepartmentCreateRequestBody departmentCreateRequestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -29,12 +29,6 @@ public class PostDepartmentsRequestBuilder { public PostDepartmentsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostDepartmentsRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public PostDepartmentsRequestBuilder xGustoAPIVersion(PostDepartmentsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -48,6 +42,12 @@ public PostDepartmentsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion; + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") + private String companyUuid; + @SpeakeasyMetadata("request:mediaType=application/json") private PartnerManagedCompanyAcceptTermsOfServiceRequest partnerManagedCompanyAcceptTermsOfServiceRequest; @JsonCreator public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest( - String companyUuid, Optional xGustoAPIVersion, + String companyUuid, PartnerManagedCompanyAcceptTermsOfServiceRequest partnerManagedCompanyAcceptTermsOfServiceRequest) { - Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(partnerManagedCompanyAcceptTermsOfServiceRequest, "partnerManagedCompanyAcceptTermsOfServiceRequest"); - this.companyUuid = companyUuid; this.xGustoAPIVersion = xGustoAPIVersion; + this.companyUuid = companyUuid; this.partnerManagedCompanyAcceptTermsOfServiceRequest = partnerManagedCompanyAcceptTermsOfServiceRequest; } public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest( String companyUuid, PartnerManagedCompanyAcceptTermsOfServiceRequest partnerManagedCompanyAcceptTermsOfServiceRequest) { - this(companyUuid, Optional.empty(), partnerManagedCompanyAcceptTermsOfServiceRequest); - } - - /** - * The UUID of the company - */ - @JsonIgnore - public String companyUuid() { - return companyUuid; + this(Optional.empty(), companyUuid, partnerManagedCompanyAcceptTermsOfServiceRequest); } /** @@ -73,6 +65,14 @@ public Optional) xGustoAPIVersion; } + /** + * The UUID of the company + */ + @JsonIgnore + public String companyUuid() { + return companyUuid; + } + @JsonIgnore public PartnerManagedCompanyAcceptTermsOfServiceRequest partnerManagedCompanyAcceptTermsOfServiceRequest() { return partnerManagedCompanyAcceptTermsOfServiceRequest; @@ -83,15 +83,6 @@ public static Builder builder() { } - /** - * The UUID of the company - */ - public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest withCompanyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -115,6 +106,15 @@ public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest withXGu return this; } + /** + * The UUID of the company + */ + public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest withPartnerManagedCompanyAcceptTermsOfServiceRequest(PartnerManagedCompanyAcceptTermsOfServiceRequest partnerManagedCompanyAcceptTermsOfServiceRequest) { Utils.checkNotNull(partnerManagedCompanyAcceptTermsOfServiceRequest, "partnerManagedCompanyAcceptTermsOfServiceRequest"); this.partnerManagedCompanyAcceptTermsOfServiceRequest = partnerManagedCompanyAcceptTermsOfServiceRequest; @@ -131,32 +131,32 @@ public boolean equals(java.lang.Object o) { } PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest other = (PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest) o; return - Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && Utils.enhancedDeepEquals(this.partnerManagedCompanyAcceptTermsOfServiceRequest, other.partnerManagedCompanyAcceptTermsOfServiceRequest); } @Override public int hashCode() { return Utils.enhancedHash( - companyUuid, xGustoAPIVersion, partnerManagedCompanyAcceptTermsOfServiceRequest); + xGustoAPIVersion, companyUuid, partnerManagedCompanyAcceptTermsOfServiceRequest); } @Override public String toString() { return Utils.toString(PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest.class, - "companyUuid", companyUuid, "xGustoAPIVersion", xGustoAPIVersion, + "companyUuid", companyUuid, "partnerManagedCompanyAcceptTermsOfServiceRequest", partnerManagedCompanyAcceptTermsOfServiceRequest); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String companyUuid; - private Optional xGustoAPIVersion; + private String companyUuid; + private PartnerManagedCompanyAcceptTermsOfServiceRequest partnerManagedCompanyAcceptTermsOfServiceRequest; private Builder() { @@ -164,16 +164,6 @@ private Builder() { } - /** - * The UUID of the company - */ - public Builder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -197,6 +187,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String companyUuid; private PartnerManagedCompanyAcceptTermsOfServiceRequest partnerManagedCompanyAcceptTermsOfServiceRequest; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -29,12 +29,6 @@ public class PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBu public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBuilder xGustoAPIVersion(PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -48,6 +42,12 @@ public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBuilder return this; } + public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBuilder partnerManagedCompanyAcceptTermsOfServiceRequest(PartnerManagedCompanyAcceptTermsOfServiceRequest partnerManagedCompanyAcceptTermsOfServiceRequest) { Utils.checkNotNull(partnerManagedCompanyAcceptTermsOfServiceRequest, "partnerManagedCompanyAcceptTermsOfServiceRequest"); this.partnerManagedCompanyAcceptTermsOfServiceRequest = partnerManagedCompanyAcceptTermsOfServiceRequest; @@ -60,8 +60,8 @@ private PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest buildR xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest request = new PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest(companyUuid, - xGustoAPIVersion, + PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest request = new PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest(xGustoAPIVersion, + companyUuid, partnerManagedCompanyAcceptTermsOfServiceRequest); return request; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest.java index 68669ea5c..a483b4111 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest.java @@ -17,12 +17,6 @@ public class PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest { - /** - * The UUID of the company - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") - private String companyUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -31,35 +25,33 @@ public class PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") + private String companyUuid; + @SpeakeasyMetadata("request:mediaType=application/json") private PartnerManagedCompanyRetrieveTermsOfServiceRequest partnerManagedCompanyRetrieveTermsOfServiceRequest; @JsonCreator public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest( - String companyUuid, Optional xGustoAPIVersion, + String companyUuid, PartnerManagedCompanyRetrieveTermsOfServiceRequest partnerManagedCompanyRetrieveTermsOfServiceRequest) { - Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(partnerManagedCompanyRetrieveTermsOfServiceRequest, "partnerManagedCompanyRetrieveTermsOfServiceRequest"); - this.companyUuid = companyUuid; this.xGustoAPIVersion = xGustoAPIVersion; + this.companyUuid = companyUuid; this.partnerManagedCompanyRetrieveTermsOfServiceRequest = partnerManagedCompanyRetrieveTermsOfServiceRequest; } public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest( String companyUuid, PartnerManagedCompanyRetrieveTermsOfServiceRequest partnerManagedCompanyRetrieveTermsOfServiceRequest) { - this(companyUuid, Optional.empty(), partnerManagedCompanyRetrieveTermsOfServiceRequest); - } - - /** - * The UUID of the company - */ - @JsonIgnore - public String companyUuid() { - return companyUuid; + this(Optional.empty(), companyUuid, partnerManagedCompanyRetrieveTermsOfServiceRequest); } /** @@ -73,6 +65,14 @@ public Optional) xGustoAPIVersion; } + /** + * The UUID of the company + */ + @JsonIgnore + public String companyUuid() { + return companyUuid; + } + @JsonIgnore public PartnerManagedCompanyRetrieveTermsOfServiceRequest partnerManagedCompanyRetrieveTermsOfServiceRequest() { return partnerManagedCompanyRetrieveTermsOfServiceRequest; @@ -83,15 +83,6 @@ public static Builder builder() { } - /** - * The UUID of the company - */ - public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest withCompanyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -115,6 +106,15 @@ public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest withX return this; } + /** + * The UUID of the company + */ + public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest withPartnerManagedCompanyRetrieveTermsOfServiceRequest(PartnerManagedCompanyRetrieveTermsOfServiceRequest partnerManagedCompanyRetrieveTermsOfServiceRequest) { Utils.checkNotNull(partnerManagedCompanyRetrieveTermsOfServiceRequest, "partnerManagedCompanyRetrieveTermsOfServiceRequest"); this.partnerManagedCompanyRetrieveTermsOfServiceRequest = partnerManagedCompanyRetrieveTermsOfServiceRequest; @@ -131,32 +131,32 @@ public boolean equals(java.lang.Object o) { } PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest other = (PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest) o; return - Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && Utils.enhancedDeepEquals(this.partnerManagedCompanyRetrieveTermsOfServiceRequest, other.partnerManagedCompanyRetrieveTermsOfServiceRequest); } @Override public int hashCode() { return Utils.enhancedHash( - companyUuid, xGustoAPIVersion, partnerManagedCompanyRetrieveTermsOfServiceRequest); + xGustoAPIVersion, companyUuid, partnerManagedCompanyRetrieveTermsOfServiceRequest); } @Override public String toString() { return Utils.toString(PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest.class, - "companyUuid", companyUuid, "xGustoAPIVersion", xGustoAPIVersion, + "companyUuid", companyUuid, "partnerManagedCompanyRetrieveTermsOfServiceRequest", partnerManagedCompanyRetrieveTermsOfServiceRequest); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String companyUuid; - private Optional xGustoAPIVersion; + private String companyUuid; + private PartnerManagedCompanyRetrieveTermsOfServiceRequest partnerManagedCompanyRetrieveTermsOfServiceRequest; private Builder() { @@ -164,16 +164,6 @@ private Builder() { } - /** - * The UUID of the company - */ - public Builder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -197,6 +187,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String companyUuid; private PartnerManagedCompanyRetrieveTermsOfServiceRequest partnerManagedCompanyRetrieveTermsOfServiceRequest; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -29,12 +29,6 @@ public class PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder xGustoAPIVersion(PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -48,6 +42,12 @@ public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilde return this; } + public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder partnerManagedCompanyRetrieveTermsOfServiceRequest(PartnerManagedCompanyRetrieveTermsOfServiceRequest partnerManagedCompanyRetrieveTermsOfServiceRequest) { Utils.checkNotNull(partnerManagedCompanyRetrieveTermsOfServiceRequest, "partnerManagedCompanyRetrieveTermsOfServiceRequest"); this.partnerManagedCompanyRetrieveTermsOfServiceRequest = partnerManagedCompanyRetrieveTermsOfServiceRequest; @@ -60,8 +60,8 @@ private PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest buil xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest request = new PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest(companyUuid, - xGustoAPIVersion, + PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest request = new PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest(xGustoAPIVersion, + companyUuid, partnerManagedCompanyRetrieveTermsOfServiceRequest); return request; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1BulkReportsHeaderXGustoAPIVersion.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1BulkReportsHeaderXGustoAPIVersion.java new file mode 100644 index 000000000..a5be43923 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1BulkReportsHeaderXGustoAPIVersion.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PostV1BulkReportsHeaderXGustoAPIVersion + * + *

    Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ +public enum PostV1BulkReportsHeaderXGustoAPIVersion { + TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15("2025-11-15"); + + @JsonValue + private final String value; + + PostV1BulkReportsHeaderXGustoAPIVersion(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PostV1BulkReportsHeaderXGustoAPIVersion o: PostV1BulkReportsHeaderXGustoAPIVersion.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1BulkReportsRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1BulkReportsRequest.java new file mode 100644 index 000000000..2eb9adfdc --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1BulkReportsRequest.java @@ -0,0 +1,181 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2025_11_15.models.components.BulkReportBody; +import com.gusto.embedded_api_v_2025_11_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2025_11_15.utils.SpeakeasyMetadata; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class PostV1BulkReportsRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + + + @SpeakeasyMetadata("request:mediaType=application/json") + private BulkReportBody bulkReportBody; + + @JsonCreator + public PostV1BulkReportsRequest( + Optional xGustoAPIVersion, + BulkReportBody bulkReportBody) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(bulkReportBody, "bulkReportBody"); + this.xGustoAPIVersion = xGustoAPIVersion; + this.bulkReportBody = bulkReportBody; + } + + public PostV1BulkReportsRequest( + BulkReportBody bulkReportBody) { + this(Optional.empty(), bulkReportBody); + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + + @JsonIgnore + public BulkReportBody bulkReportBody() { + return bulkReportBody; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public PostV1BulkReportsRequest withXGustoAPIVersion(PostV1BulkReportsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public PostV1BulkReportsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public PostV1BulkReportsRequest withBulkReportBody(BulkReportBody bulkReportBody) { + Utils.checkNotNull(bulkReportBody, "bulkReportBody"); + this.bulkReportBody = bulkReportBody; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PostV1BulkReportsRequest other = (PostV1BulkReportsRequest) o; + return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.bulkReportBody, other.bulkReportBody); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + xGustoAPIVersion, bulkReportBody); + } + + @Override + public String toString() { + return Utils.toString(PostV1BulkReportsRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, + "bulkReportBody", bulkReportBody); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional xGustoAPIVersion; + + private BulkReportBody bulkReportBody; + + private Builder() { + // force use of static builder() method + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(PostV1BulkReportsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + + public Builder bulkReportBody(BulkReportBody bulkReportBody) { + Utils.checkNotNull(bulkReportBody, "bulkReportBody"); + this.bulkReportBody = bulkReportBody; + return this; + } + + public PostV1BulkReportsRequest build() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + return new PostV1BulkReportsRequest( + xGustoAPIVersion, bulkReportBody); + } + + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "X-Gusto-API-Version", + "\"2025-11-15\"", + new TypeReference>() {}); + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1BulkReportsRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1BulkReportsRequestBuilder.java new file mode 100644 index 000000000..b56ffb24d --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1BulkReportsRequestBuilder.java @@ -0,0 +1,82 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.RequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2025_11_15.SDKConfiguration; +import com.gusto.embedded_api_v_2025_11_15.models.components.BulkReportBody; +import com.gusto.embedded_api_v_2025_11_15.operations.PostV1BulkReports; +import com.gusto.embedded_api_v_2025_11_15.utils.Headers; +import com.gusto.embedded_api_v_2025_11_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.util.Optional; + +public class PostV1BulkReportsRequestBuilder { + + private PostV1BulkReportsSecurity security; + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2025-11-15\"", + new TypeReference>() {}); + private BulkReportBody bulkReportBody; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public PostV1BulkReportsRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public PostV1BulkReportsRequestBuilder security(PostV1BulkReportsSecurity security) { + Utils.checkNotNull(security, "security"); + this.security = security; + return this; + } + + public PostV1BulkReportsRequestBuilder xGustoAPIVersion(PostV1BulkReportsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public PostV1BulkReportsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public PostV1BulkReportsRequestBuilder bulkReportBody(BulkReportBody bulkReportBody) { + Utils.checkNotNull(bulkReportBody, "bulkReportBody"); + this.bulkReportBody = bulkReportBody; + return this; + } + + + private PostV1BulkReportsRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + PostV1BulkReportsRequest request = new PostV1BulkReportsRequest(xGustoAPIVersion, + bulkReportBody); + + return request; + } + + public PostV1BulkReportsResponse call() { + + RequestOperation operation + = new PostV1BulkReports.Sync(sdkConfiguration, security, _headers); + PostV1BulkReportsRequest request = buildRequest(); + + return operation.handleResponse(operation.doRequest(request)); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2025-11-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1BulkReportsResponse.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1BulkReportsResponse.java new file mode 100644 index 000000000..7ee6194d7 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1BulkReportsResponse.java @@ -0,0 +1,253 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2025_11_15.models.components.CreateBulkReport; +import com.gusto.embedded_api_v_2025_11_15.utils.Response; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.io.InputStream; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.Optional; + + +public class PostV1BulkReportsResponse implements Response { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * Created + */ + private Optional createBulkReport; + + @JsonCreator + public PostV1BulkReportsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional createBulkReport) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(createBulkReport, "createBulkReport"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.createBulkReport = createBulkReport; + } + + public PostV1BulkReportsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * Created + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional createBulkReport() { + return (Optional) createBulkReport; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public PostV1BulkReportsResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public PostV1BulkReportsResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public PostV1BulkReportsResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * Created + */ + public PostV1BulkReportsResponse withCreateBulkReport(CreateBulkReport createBulkReport) { + Utils.checkNotNull(createBulkReport, "createBulkReport"); + this.createBulkReport = Optional.ofNullable(createBulkReport); + return this; + } + + + /** + * Created + */ + public PostV1BulkReportsResponse withCreateBulkReport(Optional createBulkReport) { + Utils.checkNotNull(createBulkReport, "createBulkReport"); + this.createBulkReport = createBulkReport; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PostV1BulkReportsResponse other = (PostV1BulkReportsResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.createBulkReport, other.createBulkReport); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + createBulkReport); + } + + @Override + public String toString() { + return Utils.toString(PostV1BulkReportsResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "createBulkReport", createBulkReport); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional createBulkReport = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * Created + */ + public Builder createBulkReport(CreateBulkReport createBulkReport) { + Utils.checkNotNull(createBulkReport, "createBulkReport"); + this.createBulkReport = Optional.ofNullable(createBulkReport); + return this; + } + + /** + * Created + */ + public Builder createBulkReport(Optional createBulkReport) { + Utils.checkNotNull(createBulkReport, "createBulkReport"); + this.createBulkReport = createBulkReport; + return this; + } + + public PostV1BulkReportsResponse build() { + + return new PostV1BulkReportsResponse( + contentType, statusCode, rawResponse, + createBulkReport); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1BulkReportsSecurity.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1BulkReportsSecurity.java new file mode 100644 index 000000000..b03188d36 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1BulkReportsSecurity.java @@ -0,0 +1,91 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2025_11_15.utils.HasSecurity; +import com.gusto.embedded_api_v_2025_11_15.utils.SpeakeasyMetadata; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Override; +import java.lang.String; + + +public class PostV1BulkReportsSecurity implements HasSecurity { + + @SpeakeasyMetadata("security:scheme=true,type=http,subtype=bearer,name=Authorization") + private String systemAccessAuth; + + @JsonCreator + public PostV1BulkReportsSecurity( + String systemAccessAuth) { + Utils.checkNotNull(systemAccessAuth, "systemAccessAuth"); + this.systemAccessAuth = systemAccessAuth; + } + + @JsonIgnore + public String systemAccessAuth() { + return systemAccessAuth; + } + + public static Builder builder() { + return new Builder(); + } + + + public PostV1BulkReportsSecurity withSystemAccessAuth(String systemAccessAuth) { + Utils.checkNotNull(systemAccessAuth, "systemAccessAuth"); + this.systemAccessAuth = systemAccessAuth; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PostV1BulkReportsSecurity other = (PostV1BulkReportsSecurity) o; + return + Utils.enhancedDeepEquals(this.systemAccessAuth, other.systemAccessAuth); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + systemAccessAuth); + } + + @Override + public String toString() { + return Utils.toString(PostV1BulkReportsSecurity.class, + "systemAccessAuth", systemAccessAuth); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String systemAccessAuth; + + private Builder() { + // force use of static builder() method + } + + + public Builder systemAccessAuth(String systemAccessAuth) { + Utils.checkNotNull(systemAccessAuth, "systemAccessAuth"); + this.systemAccessAuth = systemAccessAuth; + return this; + } + + public PostV1BulkReportsSecurity build() { + + return new PostV1BulkReportsSecurity( + systemAccessAuth); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsContractorPayments.java similarity index 81% rename from gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments.java rename to gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsContractorPayments.java index d0834d895..e9a6b36f9 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsContractorPayments.java @@ -17,7 +17,7 @@ import java.util.Optional; -public class PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments { +public class PostV1CompaniesCompanyIdContractorPaymentGroupsContractorPayments { /** * The contractor receiving the payment */ @@ -28,7 +28,7 @@ public class PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPay @JsonInclude(Include.NON_ABSENT) @JsonProperty("payment_method") - private Optional paymentMethod; + private Optional paymentMethod; /** * If the contractor is on a fixed wage, this is the fixed wage payment for the contractor, regardless @@ -61,9 +61,9 @@ public class PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPay private Optional reimbursement; @JsonCreator - public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments( + public PostV1CompaniesCompanyIdContractorPaymentGroupsContractorPayments( @JsonProperty("contractor_uuid") Optional contractorUuid, - @JsonProperty("payment_method") Optional paymentMethod, + @JsonProperty("payment_method") Optional paymentMethod, @JsonProperty("wage") Optional wage, @JsonProperty("hours") Optional hours, @JsonProperty("bonus") Optional bonus, @@ -82,7 +82,7 @@ public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments( this.reimbursement = reimbursement; } - public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments() { + public PostV1CompaniesCompanyIdContractorPaymentGroupsContractorPayments() { this(Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty()); } @@ -97,8 +97,8 @@ public Optional contractorUuid() { @SuppressWarnings("unchecked") @JsonIgnore - public Optional paymentMethod() { - return (Optional) paymentMethod; + public Optional paymentMethod() { + return (Optional) paymentMethod; } /** @@ -143,7 +143,7 @@ public static Builder builder() { /** * The contractor receiving the payment */ - public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments withContractorUuid(String contractorUuid) { + public PostV1CompaniesCompanyIdContractorPaymentGroupsContractorPayments withContractorUuid(String contractorUuid) { Utils.checkNotNull(contractorUuid, "contractorUuid"); this.contractorUuid = Optional.ofNullable(contractorUuid); return this; @@ -153,20 +153,20 @@ public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments /** * The contractor receiving the payment */ - public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments withContractorUuid(Optional contractorUuid) { + public PostV1CompaniesCompanyIdContractorPaymentGroupsContractorPayments withContractorUuid(Optional contractorUuid) { Utils.checkNotNull(contractorUuid, "contractorUuid"); this.contractorUuid = contractorUuid; return this; } - public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments withPaymentMethod(PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewPaymentMethod paymentMethod) { + public PostV1CompaniesCompanyIdContractorPaymentGroupsContractorPayments withPaymentMethod(PostV1CompaniesCompanyIdContractorPaymentGroupsPaymentMethod paymentMethod) { Utils.checkNotNull(paymentMethod, "paymentMethod"); this.paymentMethod = Optional.ofNullable(paymentMethod); return this; } - public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments withPaymentMethod(Optional paymentMethod) { + public PostV1CompaniesCompanyIdContractorPaymentGroupsContractorPayments withPaymentMethod(Optional paymentMethod) { Utils.checkNotNull(paymentMethod, "paymentMethod"); this.paymentMethod = paymentMethod; return this; @@ -176,7 +176,7 @@ public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments * If the contractor is on a fixed wage, this is the fixed wage payment for the contractor, regardless * of hours worked */ - public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments withWage(String wage) { + public PostV1CompaniesCompanyIdContractorPaymentGroupsContractorPayments withWage(String wage) { Utils.checkNotNull(wage, "wage"); this.wage = Optional.ofNullable(wage); return this; @@ -187,7 +187,7 @@ public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments * If the contractor is on a fixed wage, this is the fixed wage payment for the contractor, regardless * of hours worked */ - public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments withWage(Optional wage) { + public PostV1CompaniesCompanyIdContractorPaymentGroupsContractorPayments withWage(Optional wage) { Utils.checkNotNull(wage, "wage"); this.wage = wage; return this; @@ -197,7 +197,7 @@ public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments * If the contractor is on an hourly wage, this is the number of hours that the contractor worked for * the payment */ - public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments withHours(String hours) { + public PostV1CompaniesCompanyIdContractorPaymentGroupsContractorPayments withHours(String hours) { Utils.checkNotNull(hours, "hours"); this.hours = Optional.ofNullable(hours); return this; @@ -208,7 +208,7 @@ public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments * If the contractor is on an hourly wage, this is the number of hours that the contractor worked for * the payment */ - public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments withHours(Optional hours) { + public PostV1CompaniesCompanyIdContractorPaymentGroupsContractorPayments withHours(Optional hours) { Utils.checkNotNull(hours, "hours"); this.hours = hours; return this; @@ -217,7 +217,7 @@ public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments /** * If the contractor is on an hourly wage, this is the bonus the contractor earned */ - public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments withBonus(String bonus) { + public PostV1CompaniesCompanyIdContractorPaymentGroupsContractorPayments withBonus(String bonus) { Utils.checkNotNull(bonus, "bonus"); this.bonus = Optional.ofNullable(bonus); return this; @@ -227,7 +227,7 @@ public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments /** * If the contractor is on an hourly wage, this is the bonus the contractor earned */ - public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments withBonus(Optional bonus) { + public PostV1CompaniesCompanyIdContractorPaymentGroupsContractorPayments withBonus(Optional bonus) { Utils.checkNotNull(bonus, "bonus"); this.bonus = bonus; return this; @@ -236,7 +236,7 @@ public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments /** * Reimbursed wages for the contractor */ - public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments withReimbursement(String reimbursement) { + public PostV1CompaniesCompanyIdContractorPaymentGroupsContractorPayments withReimbursement(String reimbursement) { Utils.checkNotNull(reimbursement, "reimbursement"); this.reimbursement = Optional.ofNullable(reimbursement); return this; @@ -246,7 +246,7 @@ public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments /** * Reimbursed wages for the contractor */ - public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments withReimbursement(Optional reimbursement) { + public PostV1CompaniesCompanyIdContractorPaymentGroupsContractorPayments withReimbursement(Optional reimbursement) { Utils.checkNotNull(reimbursement, "reimbursement"); this.reimbursement = reimbursement; return this; @@ -260,7 +260,7 @@ public boolean equals(java.lang.Object o) { if (o == null || getClass() != o.getClass()) { return false; } - PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments other = (PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments) o; + PostV1CompaniesCompanyIdContractorPaymentGroupsContractorPayments other = (PostV1CompaniesCompanyIdContractorPaymentGroupsContractorPayments) o; return Utils.enhancedDeepEquals(this.contractorUuid, other.contractorUuid) && Utils.enhancedDeepEquals(this.paymentMethod, other.paymentMethod) && @@ -279,7 +279,7 @@ public int hashCode() { @Override public String toString() { - return Utils.toString(PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments.class, + return Utils.toString(PostV1CompaniesCompanyIdContractorPaymentGroupsContractorPayments.class, "contractorUuid", contractorUuid, "paymentMethod", paymentMethod, "wage", wage, @@ -293,7 +293,7 @@ public final static class Builder { private Optional contractorUuid = Optional.empty(); - private Optional paymentMethod; + private Optional paymentMethod; private Optional wage = Optional.empty(); @@ -327,13 +327,13 @@ public Builder contractorUuid(Optional contractorUuid) { } - public Builder paymentMethod(PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewPaymentMethod paymentMethod) { + public Builder paymentMethod(PostV1CompaniesCompanyIdContractorPaymentGroupsPaymentMethod paymentMethod) { Utils.checkNotNull(paymentMethod, "paymentMethod"); this.paymentMethod = Optional.ofNullable(paymentMethod); return this; } - public Builder paymentMethod(Optional paymentMethod) { + public Builder paymentMethod(Optional paymentMethod) { Utils.checkNotNull(paymentMethod, "paymentMethod"); this.paymentMethod = paymentMethod; return this; @@ -419,21 +419,21 @@ public Builder reimbursement(Optional reimbursement) { return this; } - public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments build() { + public PostV1CompaniesCompanyIdContractorPaymentGroupsContractorPayments build() { if (paymentMethod == null) { paymentMethod = _SINGLETON_VALUE_PaymentMethod.value(); } - return new PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewContractorPayments( + return new PostV1CompaniesCompanyIdContractorPaymentGroupsContractorPayments( contractorUuid, paymentMethod, wage, hours, bonus, reimbursement); } - private static final LazySingletonValue> _SINGLETON_VALUE_PaymentMethod = + private static final LazySingletonValue> _SINGLETON_VALUE_PaymentMethod = new LazySingletonValue<>( "payment_method", "\"Direct Deposit\"", - new TypeReference>() {}); + new TypeReference>() {}); } } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewPaymentMethod.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPaymentMethod.java similarity index 65% rename from gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewPaymentMethod.java rename to gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPaymentMethod.java index 17790e002..57c3163b7 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewPaymentMethod.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPaymentMethod.java @@ -8,7 +8,7 @@ import java.util.Objects; import java.util.Optional; -public enum PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewPaymentMethod { +public enum PostV1CompaniesCompanyIdContractorPaymentGroupsPaymentMethod { DIRECT_DEPOSIT("Direct Deposit"), CHECK("Check"), HISTORICAL_PAYMENT("Historical Payment"); @@ -16,7 +16,7 @@ public enum PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewPaymentMethod @JsonValue private final String value; - PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewPaymentMethod(String value) { + PostV1CompaniesCompanyIdContractorPaymentGroupsPaymentMethod(String value) { this.value = value; } @@ -24,8 +24,8 @@ public String value() { return value; } - public static Optional fromValue(String value) { - for (PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewPaymentMethod o: PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewPaymentMethod.values()) { + public static Optional fromValue(String value) { + for (PostV1CompaniesCompanyIdContractorPaymentGroupsPaymentMethod o: PostV1CompaniesCompanyIdContractorPaymentGroupsPaymentMethod.values()) { if (Objects.deepEquals(o.value, value)) { return Optional.of(o); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBody.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBody.java index 5e88fdbf7..e5048b59a 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBody.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBody.java @@ -19,7 +19,7 @@ public class PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBody { @JsonProperty("contractor_payments") - private List contractorPayments; + private List contractorPayments; /** * Date when payments should be processed @@ -30,7 +30,7 @@ public class PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBody { @JsonCreator public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBody( - @JsonProperty("contractor_payments") List contractorPayments, + @JsonProperty("contractor_payments") List contractorPayments, @JsonProperty("check_date") Optional checkDate) { Utils.checkNotNull(contractorPayments, "contractorPayments"); Utils.checkNotNull(checkDate, "checkDate"); @@ -39,12 +39,12 @@ public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBody( } public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBody( - List contractorPayments) { + List contractorPayments) { this(contractorPayments, Optional.empty()); } @JsonIgnore - public List contractorPayments() { + public List contractorPayments() { return contractorPayments; } @@ -61,7 +61,7 @@ public static Builder builder() { } - public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBody withContractorPayments(List contractorPayments) { + public PostV1CompaniesCompanyIdContractorPaymentGroupsPreviewRequestBody withContractorPayments(List contractorPayments) { Utils.checkNotNull(contractorPayments, "contractorPayments"); this.contractorPayments = contractorPayments; return this; @@ -116,7 +116,7 @@ public String toString() { @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private List contractorPayments; + private List contractorPayments; private Optional checkDate = Optional.empty(); @@ -125,7 +125,7 @@ private Builder() { } - public Builder contractorPayments(List contractorPayments) { + public Builder contractorPayments(List contractorPayments) { Utils.checkNotNull(contractorPayments, "contractorPayments"); this.contractorPayments = contractorPayments; return this; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBody.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBody.java index cc8855a94..165a88b54 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBody.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBody.java @@ -41,14 +41,14 @@ public class PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBody { @JsonProperty("contractor_payments") - private List contractorPayments; + private List contractorPayments; @JsonCreator public PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBody( @JsonProperty("check_date") LocalDate checkDate, @JsonProperty("creation_token") String creationToken, @JsonProperty("submission_blockers") Optional> submissionBlockers, - @JsonProperty("contractor_payments") List contractorPayments) { + @JsonProperty("contractor_payments") List contractorPayments) { Utils.checkNotNull(checkDate, "checkDate"); Utils.checkNotNull(creationToken, "creationToken"); Utils.checkNotNull(submissionBlockers, "submissionBlockers"); @@ -62,7 +62,7 @@ public PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBody( public PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBody( LocalDate checkDate, String creationToken, - List contractorPayments) { + List contractorPayments) { this(checkDate, creationToken, Optional.empty(), contractorPayments); } @@ -95,7 +95,7 @@ public Optional> submissionBlockers() { } @JsonIgnore - public List contractorPayments() { + public List contractorPayments() { return contractorPayments; } @@ -144,7 +144,7 @@ public PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBody withSubmission return this; } - public PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBody withContractorPayments(List contractorPayments) { + public PostV1CompaniesCompanyIdContractorPaymentGroupsRequestBody withContractorPayments(List contractorPayments) { Utils.checkNotNull(contractorPayments, "contractorPayments"); this.contractorPayments = contractorPayments; return this; @@ -191,7 +191,7 @@ public final static class Builder { private Optional> submissionBlockers = Optional.empty(); - private List contractorPayments; + private List contractorPayments; private Builder() { // force use of static builder() method @@ -240,7 +240,7 @@ public Builder submissionBlockers(Optional> s } - public Builder contractorPayments(List contractorPayments) { + public Builder contractorPayments(List contractorPayments) { Utils.checkNotNull(contractorPayments, "contractorPayments"); this.contractorPayments = contractorPayments; return this; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompaniesCompanyIdPeopleBatchesBatch.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompaniesCompanyIdPeopleBatchesBatch.java new file mode 100644 index 000000000..f8390c122 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompaniesCompanyIdPeopleBatchesBatch.java @@ -0,0 +1,543 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.List; +import java.util.Optional; + + +public class PostV1CompaniesCompanyIdPeopleBatchesBatch { + /** + * The type of entity to create + */ + @JsonProperty("entity_type") + private PostV1CompaniesCompanyIdPeopleBatchesEntityType entityType; + + + @JsonProperty("person") + private Person person; + + /** + * Home address for the employee + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("home_address") + private Optional homeAddress; + + /** + * Specify the company work location for the employee + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("work_address") + private Optional workAddress; + + /** + * Job details for the employee (required if compensation is provided) + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("job") + private Optional job; + + /** + * Department details for the employee + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("department") + private Optional department; + + /** + * Compensation details for the employee (requires job to be provided) + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("compensation") + private Optional compensation; + + /** + * Creates employee bank account(s) and payment method(s) for direct deposit. Payments can be split + * across accounts by Percentage or by Amount. If splitting payments by `Percentage`, all splits must + * have a `split_amount` and the percentages must add up to `100`. + * If splitting payments by `Amount`, the priority is set based on the order of the bank accounts in + * the array and the last bank account is the remainder account (should have `split_amount` set to + * `null`). + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("bank_accounts") + private Optional> bankAccounts; + + @JsonCreator + public PostV1CompaniesCompanyIdPeopleBatchesBatch( + @JsonProperty("entity_type") PostV1CompaniesCompanyIdPeopleBatchesEntityType entityType, + @JsonProperty("person") Person person, + @JsonProperty("home_address") Optional homeAddress, + @JsonProperty("work_address") Optional workAddress, + @JsonProperty("job") Optional job, + @JsonProperty("department") Optional department, + @JsonProperty("compensation") Optional compensation, + @JsonProperty("bank_accounts") Optional> bankAccounts) { + Utils.checkNotNull(entityType, "entityType"); + Utils.checkNotNull(person, "person"); + Utils.checkNotNull(homeAddress, "homeAddress"); + Utils.checkNotNull(workAddress, "workAddress"); + Utils.checkNotNull(job, "job"); + Utils.checkNotNull(department, "department"); + Utils.checkNotNull(compensation, "compensation"); + Utils.checkNotNull(bankAccounts, "bankAccounts"); + this.entityType = entityType; + this.person = person; + this.homeAddress = homeAddress; + this.workAddress = workAddress; + this.job = job; + this.department = department; + this.compensation = compensation; + this.bankAccounts = bankAccounts; + } + + public PostV1CompaniesCompanyIdPeopleBatchesBatch( + PostV1CompaniesCompanyIdPeopleBatchesEntityType entityType, + Person person) { + this(entityType, person, Optional.empty(), + Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty(), Optional.empty()); + } + + /** + * The type of entity to create + */ + @JsonIgnore + public PostV1CompaniesCompanyIdPeopleBatchesEntityType entityType() { + return entityType; + } + + @JsonIgnore + public Person person() { + return person; + } + + /** + * Home address for the employee + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional homeAddress() { + return (Optional) homeAddress; + } + + /** + * Specify the company work location for the employee + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional workAddress() { + return (Optional) workAddress; + } + + /** + * Job details for the employee (required if compensation is provided) + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional job() { + return (Optional) job; + } + + /** + * Department details for the employee + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional department() { + return (Optional) department; + } + + /** + * Compensation details for the employee (requires job to be provided) + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional compensation() { + return (Optional) compensation; + } + + /** + * Creates employee bank account(s) and payment method(s) for direct deposit. Payments can be split + * across accounts by Percentage or by Amount. If splitting payments by `Percentage`, all splits must + * have a `split_amount` and the percentages must add up to `100`. + * If splitting payments by `Amount`, the priority is set based on the order of the bank accounts in + * the array and the last bank account is the remainder account (should have `split_amount` set to + * `null`). + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> bankAccounts() { + return (Optional>) bankAccounts; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * The type of entity to create + */ + public PostV1CompaniesCompanyIdPeopleBatchesBatch withEntityType(PostV1CompaniesCompanyIdPeopleBatchesEntityType entityType) { + Utils.checkNotNull(entityType, "entityType"); + this.entityType = entityType; + return this; + } + + public PostV1CompaniesCompanyIdPeopleBatchesBatch withPerson(Person person) { + Utils.checkNotNull(person, "person"); + this.person = person; + return this; + } + + /** + * Home address for the employee + */ + public PostV1CompaniesCompanyIdPeopleBatchesBatch withHomeAddress(PostV1CompaniesCompanyIdPeopleBatchesHomeAddress homeAddress) { + Utils.checkNotNull(homeAddress, "homeAddress"); + this.homeAddress = Optional.ofNullable(homeAddress); + return this; + } + + + /** + * Home address for the employee + */ + public PostV1CompaniesCompanyIdPeopleBatchesBatch withHomeAddress(Optional homeAddress) { + Utils.checkNotNull(homeAddress, "homeAddress"); + this.homeAddress = homeAddress; + return this; + } + + /** + * Specify the company work location for the employee + */ + public PostV1CompaniesCompanyIdPeopleBatchesBatch withWorkAddress(PostV1CompaniesCompanyIdPeopleBatchesWorkAddress workAddress) { + Utils.checkNotNull(workAddress, "workAddress"); + this.workAddress = Optional.ofNullable(workAddress); + return this; + } + + + /** + * Specify the company work location for the employee + */ + public PostV1CompaniesCompanyIdPeopleBatchesBatch withWorkAddress(Optional workAddress) { + Utils.checkNotNull(workAddress, "workAddress"); + this.workAddress = workAddress; + return this; + } + + /** + * Job details for the employee (required if compensation is provided) + */ + public PostV1CompaniesCompanyIdPeopleBatchesBatch withJob(PostV1CompaniesCompanyIdPeopleBatchesJob job) { + Utils.checkNotNull(job, "job"); + this.job = Optional.ofNullable(job); + return this; + } + + + /** + * Job details for the employee (required if compensation is provided) + */ + public PostV1CompaniesCompanyIdPeopleBatchesBatch withJob(Optional job) { + Utils.checkNotNull(job, "job"); + this.job = job; + return this; + } + + /** + * Department details for the employee + */ + public PostV1CompaniesCompanyIdPeopleBatchesBatch withDepartment(Department department) { + Utils.checkNotNull(department, "department"); + this.department = Optional.ofNullable(department); + return this; + } + + + /** + * Department details for the employee + */ + public PostV1CompaniesCompanyIdPeopleBatchesBatch withDepartment(Optional department) { + Utils.checkNotNull(department, "department"); + this.department = department; + return this; + } + + /** + * Compensation details for the employee (requires job to be provided) + */ + public PostV1CompaniesCompanyIdPeopleBatchesBatch withCompensation(Compensation compensation) { + Utils.checkNotNull(compensation, "compensation"); + this.compensation = Optional.ofNullable(compensation); + return this; + } + + + /** + * Compensation details for the employee (requires job to be provided) + */ + public PostV1CompaniesCompanyIdPeopleBatchesBatch withCompensation(Optional compensation) { + Utils.checkNotNull(compensation, "compensation"); + this.compensation = compensation; + return this; + } + + /** + * Creates employee bank account(s) and payment method(s) for direct deposit. Payments can be split + * across accounts by Percentage or by Amount. If splitting payments by `Percentage`, all splits must + * have a `split_amount` and the percentages must add up to `100`. + * If splitting payments by `Amount`, the priority is set based on the order of the bank accounts in + * the array and the last bank account is the remainder account (should have `split_amount` set to + * `null`). + */ + public PostV1CompaniesCompanyIdPeopleBatchesBatch withBankAccounts(List bankAccounts) { + Utils.checkNotNull(bankAccounts, "bankAccounts"); + this.bankAccounts = Optional.ofNullable(bankAccounts); + return this; + } + + + /** + * Creates employee bank account(s) and payment method(s) for direct deposit. Payments can be split + * across accounts by Percentage or by Amount. If splitting payments by `Percentage`, all splits must + * have a `split_amount` and the percentages must add up to `100`. + * If splitting payments by `Amount`, the priority is set based on the order of the bank accounts in + * the array and the last bank account is the remainder account (should have `split_amount` set to + * `null`). + */ + public PostV1CompaniesCompanyIdPeopleBatchesBatch withBankAccounts(Optional> bankAccounts) { + Utils.checkNotNull(bankAccounts, "bankAccounts"); + this.bankAccounts = bankAccounts; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PostV1CompaniesCompanyIdPeopleBatchesBatch other = (PostV1CompaniesCompanyIdPeopleBatchesBatch) o; + return + Utils.enhancedDeepEquals(this.entityType, other.entityType) && + Utils.enhancedDeepEquals(this.person, other.person) && + Utils.enhancedDeepEquals(this.homeAddress, other.homeAddress) && + Utils.enhancedDeepEquals(this.workAddress, other.workAddress) && + Utils.enhancedDeepEquals(this.job, other.job) && + Utils.enhancedDeepEquals(this.department, other.department) && + Utils.enhancedDeepEquals(this.compensation, other.compensation) && + Utils.enhancedDeepEquals(this.bankAccounts, other.bankAccounts); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + entityType, person, homeAddress, + workAddress, job, department, + compensation, bankAccounts); + } + + @Override + public String toString() { + return Utils.toString(PostV1CompaniesCompanyIdPeopleBatchesBatch.class, + "entityType", entityType, + "person", person, + "homeAddress", homeAddress, + "workAddress", workAddress, + "job", job, + "department", department, + "compensation", compensation, + "bankAccounts", bankAccounts); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private PostV1CompaniesCompanyIdPeopleBatchesEntityType entityType; + + private Person person; + + private Optional homeAddress = Optional.empty(); + + private Optional workAddress = Optional.empty(); + + private Optional job = Optional.empty(); + + private Optional department = Optional.empty(); + + private Optional compensation = Optional.empty(); + + private Optional> bankAccounts = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * The type of entity to create + */ + public Builder entityType(PostV1CompaniesCompanyIdPeopleBatchesEntityType entityType) { + Utils.checkNotNull(entityType, "entityType"); + this.entityType = entityType; + return this; + } + + + public Builder person(Person person) { + Utils.checkNotNull(person, "person"); + this.person = person; + return this; + } + + + /** + * Home address for the employee + */ + public Builder homeAddress(PostV1CompaniesCompanyIdPeopleBatchesHomeAddress homeAddress) { + Utils.checkNotNull(homeAddress, "homeAddress"); + this.homeAddress = Optional.ofNullable(homeAddress); + return this; + } + + /** + * Home address for the employee + */ + public Builder homeAddress(Optional homeAddress) { + Utils.checkNotNull(homeAddress, "homeAddress"); + this.homeAddress = homeAddress; + return this; + } + + + /** + * Specify the company work location for the employee + */ + public Builder workAddress(PostV1CompaniesCompanyIdPeopleBatchesWorkAddress workAddress) { + Utils.checkNotNull(workAddress, "workAddress"); + this.workAddress = Optional.ofNullable(workAddress); + return this; + } + + /** + * Specify the company work location for the employee + */ + public Builder workAddress(Optional workAddress) { + Utils.checkNotNull(workAddress, "workAddress"); + this.workAddress = workAddress; + return this; + } + + + /** + * Job details for the employee (required if compensation is provided) + */ + public Builder job(PostV1CompaniesCompanyIdPeopleBatchesJob job) { + Utils.checkNotNull(job, "job"); + this.job = Optional.ofNullable(job); + return this; + } + + /** + * Job details for the employee (required if compensation is provided) + */ + public Builder job(Optional job) { + Utils.checkNotNull(job, "job"); + this.job = job; + return this; + } + + + /** + * Department details for the employee + */ + public Builder department(Department department) { + Utils.checkNotNull(department, "department"); + this.department = Optional.ofNullable(department); + return this; + } + + /** + * Department details for the employee + */ + public Builder department(Optional department) { + Utils.checkNotNull(department, "department"); + this.department = department; + return this; + } + + + /** + * Compensation details for the employee (requires job to be provided) + */ + public Builder compensation(Compensation compensation) { + Utils.checkNotNull(compensation, "compensation"); + this.compensation = Optional.ofNullable(compensation); + return this; + } + + /** + * Compensation details for the employee (requires job to be provided) + */ + public Builder compensation(Optional compensation) { + Utils.checkNotNull(compensation, "compensation"); + this.compensation = compensation; + return this; + } + + + /** + * Creates employee bank account(s) and payment method(s) for direct deposit. Payments can be split + * across accounts by Percentage or by Amount. If splitting payments by `Percentage`, all splits must + * have a `split_amount` and the percentages must add up to `100`. + * If splitting payments by `Amount`, the priority is set based on the order of the bank accounts in + * the array and the last bank account is the remainder account (should have `split_amount` set to + * `null`). + */ + public Builder bankAccounts(List bankAccounts) { + Utils.checkNotNull(bankAccounts, "bankAccounts"); + this.bankAccounts = Optional.ofNullable(bankAccounts); + return this; + } + + /** + * Creates employee bank account(s) and payment method(s) for direct deposit. Payments can be split + * across accounts by Percentage or by Amount. If splitting payments by `Percentage`, all splits must + * have a `split_amount` and the percentages must add up to `100`. + * If splitting payments by `Amount`, the priority is set based on the order of the bank accounts in + * the array and the last bank account is the remainder account (should have `split_amount` set to + * `null`). + */ + public Builder bankAccounts(Optional> bankAccounts) { + Utils.checkNotNull(bankAccounts, "bankAccounts"); + this.bankAccounts = bankAccounts; + return this; + } + + public PostV1CompaniesCompanyIdPeopleBatchesBatch build() { + + return new PostV1CompaniesCompanyIdPeopleBatchesBatch( + entityType, person, homeAddress, + workAddress, job, department, + compensation, bankAccounts); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompaniesCompanyIdPeopleBatchesBatchAction.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompaniesCompanyIdPeopleBatchesBatchAction.java new file mode 100644 index 000000000..abe492465 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompaniesCompanyIdPeopleBatchesBatchAction.java @@ -0,0 +1,39 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PostV1CompaniesCompanyIdPeopleBatchesBatchAction + * + *

    The action to perform on the batch + */ +public enum PostV1CompaniesCompanyIdPeopleBatchesBatchAction { + CREATE("create"); + + @JsonValue + private final String value; + + PostV1CompaniesCompanyIdPeopleBatchesBatchAction(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PostV1CompaniesCompanyIdPeopleBatchesBatchAction o: PostV1CompaniesCompanyIdPeopleBatchesBatchAction.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompaniesCompanyIdPeopleBatchesEntityType.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompaniesCompanyIdPeopleBatchesEntityType.java new file mode 100644 index 000000000..72872afdb --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompaniesCompanyIdPeopleBatchesEntityType.java @@ -0,0 +1,39 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PostV1CompaniesCompanyIdPeopleBatchesEntityType + * + *

    The type of entity to create + */ +public enum PostV1CompaniesCompanyIdPeopleBatchesEntityType { + EMPLOYEE("employee"); + + @JsonValue + private final String value; + + PostV1CompaniesCompanyIdPeopleBatchesEntityType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PostV1CompaniesCompanyIdPeopleBatchesEntityType o: PostV1CompaniesCompanyIdPeopleBatchesEntityType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequest.java index c70a2fce3..5b5047cdc 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequest.java @@ -16,12 +16,6 @@ public class PostV1CompaniesCompanyIdPeopleBatchesRequest { - /** - * The UUID of the company - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_id") - private String companyId; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,35 +24,33 @@ public class PostV1CompaniesCompanyIdPeopleBatchesRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_id") + private String companyId; + @SpeakeasyMetadata("request:mediaType=application/json") private PostV1CompaniesCompanyIdPeopleBatchesRequestBody requestBody; @JsonCreator public PostV1CompaniesCompanyIdPeopleBatchesRequest( - String companyId, Optional xGustoAPIVersion, + String companyId, PostV1CompaniesCompanyIdPeopleBatchesRequestBody requestBody) { - Utils.checkNotNull(companyId, "companyId"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(companyId, "companyId"); Utils.checkNotNull(requestBody, "requestBody"); - this.companyId = companyId; this.xGustoAPIVersion = xGustoAPIVersion; + this.companyId = companyId; this.requestBody = requestBody; } public PostV1CompaniesCompanyIdPeopleBatchesRequest( String companyId, PostV1CompaniesCompanyIdPeopleBatchesRequestBody requestBody) { - this(companyId, Optional.empty(), requestBody); - } - - /** - * The UUID of the company - */ - @JsonIgnore - public String companyId() { - return companyId; + this(Optional.empty(), companyId, requestBody); } /** @@ -72,6 +64,14 @@ public Optional xGu return (Optional) xGustoAPIVersion; } + /** + * The UUID of the company + */ + @JsonIgnore + public String companyId() { + return companyId; + } + @JsonIgnore public PostV1CompaniesCompanyIdPeopleBatchesRequestBody requestBody() { return requestBody; @@ -82,15 +82,6 @@ public static Builder builder() { } - /** - * The UUID of the company - */ - public PostV1CompaniesCompanyIdPeopleBatchesRequest withCompanyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -114,6 +105,15 @@ public PostV1CompaniesCompanyIdPeopleBatchesRequest withXGustoAPIVersion(Optiona return this; } + /** + * The UUID of the company + */ + public PostV1CompaniesCompanyIdPeopleBatchesRequest withCompanyId(String companyId) { + Utils.checkNotNull(companyId, "companyId"); + this.companyId = companyId; + return this; + } + public PostV1CompaniesCompanyIdPeopleBatchesRequest withRequestBody(PostV1CompaniesCompanyIdPeopleBatchesRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); this.requestBody = requestBody; @@ -130,32 +130,32 @@ public boolean equals(java.lang.Object o) { } PostV1CompaniesCompanyIdPeopleBatchesRequest other = (PostV1CompaniesCompanyIdPeopleBatchesRequest) o; return - Utils.enhancedDeepEquals(this.companyId, other.companyId) && Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.companyId, other.companyId) && Utils.enhancedDeepEquals(this.requestBody, other.requestBody); } @Override public int hashCode() { return Utils.enhancedHash( - companyId, xGustoAPIVersion, requestBody); + xGustoAPIVersion, companyId, requestBody); } @Override public String toString() { return Utils.toString(PostV1CompaniesCompanyIdPeopleBatchesRequest.class, - "companyId", companyId, "xGustoAPIVersion", xGustoAPIVersion, + "companyId", companyId, "requestBody", requestBody); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String companyId; - private Optional xGustoAPIVersion; + private String companyId; + private PostV1CompaniesCompanyIdPeopleBatchesRequestBody requestBody; private Builder() { @@ -163,16 +163,6 @@ private Builder() { } - /** - * The UUID of the company - */ - public Builder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -196,6 +186,16 @@ public Builder xGustoAPIVersion(Optional batch; + private List batch; @JsonCreator public PostV1CompaniesCompanyIdPeopleBatchesRequestBody( @JsonProperty("idempotency_key") String idempotencyKey, - @JsonProperty("batch_action") BatchAction batchAction, - @JsonProperty("batch") List batch) { + @JsonProperty("batch_action") PostV1CompaniesCompanyIdPeopleBatchesBatchAction batchAction, + @JsonProperty("batch") List batch) { Utils.checkNotNull(idempotencyKey, "idempotencyKey"); Utils.checkNotNull(batchAction, "batchAction"); Utils.checkNotNull(batch, "batch"); @@ -56,7 +56,7 @@ public String idempotencyKey() { * The action to perform on the batch */ @JsonIgnore - public BatchAction batchAction() { + public PostV1CompaniesCompanyIdPeopleBatchesBatchAction batchAction() { return batchAction; } @@ -64,7 +64,7 @@ public BatchAction batchAction() { * Array of people to create */ @JsonIgnore - public List batch() { + public List batch() { return batch; } @@ -85,7 +85,7 @@ public PostV1CompaniesCompanyIdPeopleBatchesRequestBody withIdempotencyKey(Strin /** * The action to perform on the batch */ - public PostV1CompaniesCompanyIdPeopleBatchesRequestBody withBatchAction(BatchAction batchAction) { + public PostV1CompaniesCompanyIdPeopleBatchesRequestBody withBatchAction(PostV1CompaniesCompanyIdPeopleBatchesBatchAction batchAction) { Utils.checkNotNull(batchAction, "batchAction"); this.batchAction = batchAction; return this; @@ -94,7 +94,7 @@ public PostV1CompaniesCompanyIdPeopleBatchesRequestBody withBatchAction(BatchAct /** * Array of people to create */ - public PostV1CompaniesCompanyIdPeopleBatchesRequestBody withBatch(List batch) { + public PostV1CompaniesCompanyIdPeopleBatchesRequestBody withBatch(List batch) { Utils.checkNotNull(batch, "batch"); this.batch = batch; return this; @@ -134,9 +134,9 @@ public final static class Builder { private String idempotencyKey; - private BatchAction batchAction; + private PostV1CompaniesCompanyIdPeopleBatchesBatchAction batchAction; - private List batch; + private List batch; private Builder() { // force use of static builder() method @@ -156,7 +156,7 @@ public Builder idempotencyKey(String idempotencyKey) { /** * The action to perform on the batch */ - public Builder batchAction(BatchAction batchAction) { + public Builder batchAction(PostV1CompaniesCompanyIdPeopleBatchesBatchAction batchAction) { Utils.checkNotNull(batchAction, "batchAction"); this.batchAction = batchAction; return this; @@ -166,7 +166,7 @@ public Builder batchAction(BatchAction batchAction) { /** * Array of people to create */ - public Builder batch(List batch) { + public Builder batch(List batch) { Utils.checkNotNull(batch, "batch"); this.batch = batch; return this; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder.java index b03e985a4..2779a2b86 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder.java @@ -16,11 +16,11 @@ public class PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder { - private String companyId; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String companyId; private PostV1CompaniesCompanyIdPeopleBatchesRequestBody requestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -28,12 +28,6 @@ public class PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder { public PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } public PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder xGustoAPIVersion(PostV1CompaniesCompanyIdPeopleBatchesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -47,6 +41,12 @@ public PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder xGustoAPIVersion(Opti return this; } + public PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder companyId(String companyId) { + Utils.checkNotNull(companyId, "companyId"); + this.companyId = companyId; + return this; + } + public PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder requestBody(PostV1CompaniesCompanyIdPeopleBatchesRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); this.requestBody = requestBody; @@ -59,8 +59,8 @@ private PostV1CompaniesCompanyIdPeopleBatchesRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PostV1CompaniesCompanyIdPeopleBatchesRequest request = new PostV1CompaniesCompanyIdPeopleBatchesRequest(companyId, - xGustoAPIVersion, + PostV1CompaniesCompanyIdPeopleBatchesRequest request = new PostV1CompaniesCompanyIdPeopleBatchesRequest(xGustoAPIVersion, + companyId, requestBody); return request; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompaniesCompanyUuidSignatoriesInviteRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompaniesCompanyUuidSignatoriesInviteRequest.java index dd5acbf08..35c470667 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompaniesCompanyUuidSignatoriesInviteRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompaniesCompanyUuidSignatoriesInviteRequest.java @@ -17,12 +17,6 @@ public class PostV1CompaniesCompanyUuidSignatoriesInviteRequest { - /** - * The UUID of the company - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") - private String companyUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -31,35 +25,33 @@ public class PostV1CompaniesCompanyUuidSignatoriesInviteRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") + private String companyUuid; + @SpeakeasyMetadata("request:mediaType=application/json") private SignatoryInviteRequest signatoryInviteRequest; @JsonCreator public PostV1CompaniesCompanyUuidSignatoriesInviteRequest( - String companyUuid, Optional xGustoAPIVersion, + String companyUuid, SignatoryInviteRequest signatoryInviteRequest) { - Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(signatoryInviteRequest, "signatoryInviteRequest"); - this.companyUuid = companyUuid; this.xGustoAPIVersion = xGustoAPIVersion; + this.companyUuid = companyUuid; this.signatoryInviteRequest = signatoryInviteRequest; } public PostV1CompaniesCompanyUuidSignatoriesInviteRequest( String companyUuid, SignatoryInviteRequest signatoryInviteRequest) { - this(companyUuid, Optional.empty(), signatoryInviteRequest); - } - - /** - * The UUID of the company - */ - @JsonIgnore - public String companyUuid() { - return companyUuid; + this(Optional.empty(), companyUuid, signatoryInviteRequest); } /** @@ -73,6 +65,14 @@ public Optional) xGustoAPIVersion; } + /** + * The UUID of the company + */ + @JsonIgnore + public String companyUuid() { + return companyUuid; + } + @JsonIgnore public SignatoryInviteRequest signatoryInviteRequest() { return signatoryInviteRequest; @@ -83,15 +83,6 @@ public static Builder builder() { } - /** - * The UUID of the company - */ - public PostV1CompaniesCompanyUuidSignatoriesInviteRequest withCompanyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -115,6 +106,15 @@ public PostV1CompaniesCompanyUuidSignatoriesInviteRequest withXGustoAPIVersion(O return this; } + /** + * The UUID of the company + */ + public PostV1CompaniesCompanyUuidSignatoriesInviteRequest withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + public PostV1CompaniesCompanyUuidSignatoriesInviteRequest withSignatoryInviteRequest(SignatoryInviteRequest signatoryInviteRequest) { Utils.checkNotNull(signatoryInviteRequest, "signatoryInviteRequest"); this.signatoryInviteRequest = signatoryInviteRequest; @@ -131,32 +131,32 @@ public boolean equals(java.lang.Object o) { } PostV1CompaniesCompanyUuidSignatoriesInviteRequest other = (PostV1CompaniesCompanyUuidSignatoriesInviteRequest) o; return - Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && Utils.enhancedDeepEquals(this.signatoryInviteRequest, other.signatoryInviteRequest); } @Override public int hashCode() { return Utils.enhancedHash( - companyUuid, xGustoAPIVersion, signatoryInviteRequest); + xGustoAPIVersion, companyUuid, signatoryInviteRequest); } @Override public String toString() { return Utils.toString(PostV1CompaniesCompanyUuidSignatoriesInviteRequest.class, - "companyUuid", companyUuid, "xGustoAPIVersion", xGustoAPIVersion, + "companyUuid", companyUuid, "signatoryInviteRequest", signatoryInviteRequest); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String companyUuid; - private Optional xGustoAPIVersion; + private String companyUuid; + private SignatoryInviteRequest signatoryInviteRequest; private Builder() { @@ -164,16 +164,6 @@ private Builder() { } - /** - * The UUID of the company - */ - public Builder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -197,6 +187,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String companyUuid; private SignatoryInviteRequest signatoryInviteRequest; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -29,12 +29,6 @@ public class PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder { public PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder xGustoAPIVersion(PostV1CompaniesCompanyUuidSignatoriesInviteHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -48,6 +42,12 @@ public PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder xGustoAPIVersio return this; } + public PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + public PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder signatoryInviteRequest(SignatoryInviteRequest signatoryInviteRequest) { Utils.checkNotNull(signatoryInviteRequest, "signatoryInviteRequest"); this.signatoryInviteRequest = signatoryInviteRequest; @@ -60,8 +60,8 @@ private PostV1CompaniesCompanyUuidSignatoriesInviteRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PostV1CompaniesCompanyUuidSignatoriesInviteRequest request = new PostV1CompaniesCompanyUuidSignatoriesInviteRequest(companyUuid, - xGustoAPIVersion, + PostV1CompaniesCompanyUuidSignatoriesInviteRequest request = new PostV1CompaniesCompanyUuidSignatoriesInviteRequest(xGustoAPIVersion, + companyUuid, signatoryInviteRequest); return request; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompanySignatoriesRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompanySignatoriesRequest.java index 1cee0c9ef..4a492e9d3 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompanySignatoriesRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1CompanySignatoriesRequest.java @@ -17,12 +17,6 @@ public class PostV1CompanySignatoriesRequest { - /** - * The UUID of the company - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") - private String companyUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -31,35 +25,33 @@ public class PostV1CompanySignatoriesRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") + private String companyUuid; + @SpeakeasyMetadata("request:mediaType=application/json") private SignatoryCreateRequest signatoryCreateRequest; @JsonCreator public PostV1CompanySignatoriesRequest( - String companyUuid, Optional xGustoAPIVersion, + String companyUuid, SignatoryCreateRequest signatoryCreateRequest) { - Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(signatoryCreateRequest, "signatoryCreateRequest"); - this.companyUuid = companyUuid; this.xGustoAPIVersion = xGustoAPIVersion; + this.companyUuid = companyUuid; this.signatoryCreateRequest = signatoryCreateRequest; } public PostV1CompanySignatoriesRequest( String companyUuid, SignatoryCreateRequest signatoryCreateRequest) { - this(companyUuid, Optional.empty(), signatoryCreateRequest); - } - - /** - * The UUID of the company - */ - @JsonIgnore - public String companyUuid() { - return companyUuid; + this(Optional.empty(), companyUuid, signatoryCreateRequest); } /** @@ -73,6 +65,14 @@ public Optional xGustoAPIVersion return (Optional) xGustoAPIVersion; } + /** + * The UUID of the company + */ + @JsonIgnore + public String companyUuid() { + return companyUuid; + } + @JsonIgnore public SignatoryCreateRequest signatoryCreateRequest() { return signatoryCreateRequest; @@ -83,15 +83,6 @@ public static Builder builder() { } - /** - * The UUID of the company - */ - public PostV1CompanySignatoriesRequest withCompanyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -115,6 +106,15 @@ public PostV1CompanySignatoriesRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String companyUuid; + private SignatoryCreateRequest signatoryCreateRequest; private Builder() { @@ -164,16 +164,6 @@ private Builder() { } - /** - * The UUID of the company - */ - public Builder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -197,6 +187,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String companyUuid; private SignatoryCreateRequest signatoryCreateRequest; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -29,12 +29,6 @@ public class PostV1CompanySignatoriesRequestBuilder { public PostV1CompanySignatoriesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostV1CompanySignatoriesRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public PostV1CompanySignatoriesRequestBuilder xGustoAPIVersion(PostV1CompanySignatoriesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -48,6 +42,12 @@ public PostV1CompanySignatoriesRequestBuilder xGustoAPIVersion(OptionalDetermines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ +public enum PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion { + TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15("2025-11-15"); + + @JsonValue + private final String value; + + PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion o: PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsRequest.java new file mode 100644 index 000000000..79271991c --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsRequest.java @@ -0,0 +1,191 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2025_11_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2025_11_15.utils.SpeakeasyMetadata; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class PostV1ContractorsContractorUuidMemberPortalInvitationsRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + + /** + * The UUID of the contractor + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=contractor_uuid") + private String contractorUuid; + + @JsonCreator + public PostV1ContractorsContractorUuidMemberPortalInvitationsRequest( + Optional xGustoAPIVersion, + String contractorUuid) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.xGustoAPIVersion = xGustoAPIVersion; + this.contractorUuid = contractorUuid; + } + + public PostV1ContractorsContractorUuidMemberPortalInvitationsRequest( + String contractorUuid) { + this(Optional.empty(), contractorUuid); + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + + /** + * The UUID of the contractor + */ + @JsonIgnore + public String contractorUuid() { + return contractorUuid; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public PostV1ContractorsContractorUuidMemberPortalInvitationsRequest withXGustoAPIVersion(PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public PostV1ContractorsContractorUuidMemberPortalInvitationsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + /** + * The UUID of the contractor + */ + public PostV1ContractorsContractorUuidMemberPortalInvitationsRequest withContractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PostV1ContractorsContractorUuidMemberPortalInvitationsRequest other = (PostV1ContractorsContractorUuidMemberPortalInvitationsRequest) o; + return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.contractorUuid, other.contractorUuid); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + xGustoAPIVersion, contractorUuid); + } + + @Override + public String toString() { + return Utils.toString(PostV1ContractorsContractorUuidMemberPortalInvitationsRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, + "contractorUuid", contractorUuid); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional xGustoAPIVersion; + + private String contractorUuid; + + private Builder() { + // force use of static builder() method + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + + /** + * The UUID of the contractor + */ + public Builder contractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + + public PostV1ContractorsContractorUuidMemberPortalInvitationsRequest build() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + return new PostV1ContractorsContractorUuidMemberPortalInvitationsRequest( + xGustoAPIVersion, contractorUuid); + } + + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "X-Gusto-API-Version", + "\"2025-11-15\"", + new TypeReference>() {}); + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder.java new file mode 100644 index 000000000..889ba6219 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder.java @@ -0,0 +1,75 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.RequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2025_11_15.SDKConfiguration; +import com.gusto.embedded_api_v_2025_11_15.operations.PostV1ContractorsContractorUuidMemberPortalInvitations; +import com.gusto.embedded_api_v_2025_11_15.utils.Headers; +import com.gusto.embedded_api_v_2025_11_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.String; +import java.util.Optional; + +public class PostV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder { + + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2025-11-15\"", + new TypeReference>() {}); + private String contractorUuid; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public PostV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public PostV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder xGustoAPIVersion(PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public PostV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public PostV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder contractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + + + private PostV1ContractorsContractorUuidMemberPortalInvitationsRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + PostV1ContractorsContractorUuidMemberPortalInvitationsRequest request = new PostV1ContractorsContractorUuidMemberPortalInvitationsRequest(xGustoAPIVersion, + contractorUuid); + + return request; + } + + public PostV1ContractorsContractorUuidMemberPortalInvitationsResponse call() { + + RequestOperation operation + = new PostV1ContractorsContractorUuidMemberPortalInvitations.Sync(sdkConfiguration, _headers); + PostV1ContractorsContractorUuidMemberPortalInvitationsRequest request = buildRequest(); + + return operation.handleResponse(operation.doRequest(request)); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2025-11-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsResponse.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsResponse.java new file mode 100644 index 000000000..b29a59fd0 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsResponse.java @@ -0,0 +1,181 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2025_11_15.utils.Response; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.io.InputStream; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.net.http.HttpResponse; + + +public class PostV1ContractorsContractorUuidMemberPortalInvitationsResponse implements Response { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + @JsonCreator + public PostV1ContractorsContractorUuidMemberPortalInvitationsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public PostV1ContractorsContractorUuidMemberPortalInvitationsResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public PostV1ContractorsContractorUuidMemberPortalInvitationsResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public PostV1ContractorsContractorUuidMemberPortalInvitationsResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PostV1ContractorsContractorUuidMemberPortalInvitationsResponse other = (PostV1ContractorsContractorUuidMemberPortalInvitationsResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse); + } + + @Override + public String toString() { + return Utils.toString(PostV1ContractorsContractorUuidMemberPortalInvitationsResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + public PostV1ContractorsContractorUuidMemberPortalInvitationsResponse build() { + + return new PostV1ContractorsContractorUuidMemberPortalInvitationsResponse( + contentType, statusCode, rawResponse); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1ContractorsContractorUuidRehireRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1ContractorsContractorUuidRehireRequest.java index bdcf4768a..078e1884a 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1ContractorsContractorUuidRehireRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1ContractorsContractorUuidRehireRequest.java @@ -16,12 +16,6 @@ public class PostV1ContractorsContractorUuidRehireRequest { - /** - * The UUID of the contractor - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=contractor_uuid") - private String contractorUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,34 +24,32 @@ public class PostV1ContractorsContractorUuidRehireRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the contractor + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=contractor_uuid") + private String contractorUuid; + @SpeakeasyMetadata("request:mediaType=application/json") private Optional requestBody; @JsonCreator public PostV1ContractorsContractorUuidRehireRequest( - String contractorUuid, Optional xGustoAPIVersion, + String contractorUuid, Optional requestBody) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(contractorUuid, "contractorUuid"); Utils.checkNotNull(requestBody, "requestBody"); - this.contractorUuid = contractorUuid; this.xGustoAPIVersion = xGustoAPIVersion; + this.contractorUuid = contractorUuid; this.requestBody = requestBody; } public PostV1ContractorsContractorUuidRehireRequest( String contractorUuid) { - this(contractorUuid, Optional.empty(), Optional.empty()); - } - - /** - * The UUID of the contractor - */ - @JsonIgnore - public String contractorUuid() { - return contractorUuid; + this(Optional.empty(), contractorUuid, Optional.empty()); } /** @@ -71,6 +63,14 @@ public Optional xGu return (Optional) xGustoAPIVersion; } + /** + * The UUID of the contractor + */ + @JsonIgnore + public String contractorUuid() { + return contractorUuid; + } + @SuppressWarnings("unchecked") @JsonIgnore public Optional requestBody() { @@ -82,15 +82,6 @@ public static Builder builder() { } - /** - * The UUID of the contractor - */ - public PostV1ContractorsContractorUuidRehireRequest withContractorUuid(String contractorUuid) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); - this.contractorUuid = contractorUuid; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -114,6 +105,15 @@ public PostV1ContractorsContractorUuidRehireRequest withXGustoAPIVersion(Optiona return this; } + /** + * The UUID of the contractor + */ + public PostV1ContractorsContractorUuidRehireRequest withContractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + public PostV1ContractorsContractorUuidRehireRequest withRequestBody(PostV1ContractorsContractorUuidRehireRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); this.requestBody = Optional.ofNullable(requestBody); @@ -137,32 +137,32 @@ public boolean equals(java.lang.Object o) { } PostV1ContractorsContractorUuidRehireRequest other = (PostV1ContractorsContractorUuidRehireRequest) o; return - Utils.enhancedDeepEquals(this.contractorUuid, other.contractorUuid) && Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.contractorUuid, other.contractorUuid) && Utils.enhancedDeepEquals(this.requestBody, other.requestBody); } @Override public int hashCode() { return Utils.enhancedHash( - contractorUuid, xGustoAPIVersion, requestBody); + xGustoAPIVersion, contractorUuid, requestBody); } @Override public String toString() { return Utils.toString(PostV1ContractorsContractorUuidRehireRequest.class, - "contractorUuid", contractorUuid, "xGustoAPIVersion", xGustoAPIVersion, + "contractorUuid", contractorUuid, "requestBody", requestBody); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String contractorUuid; - private Optional xGustoAPIVersion; + private String contractorUuid; + private Optional requestBody = Optional.empty(); private Builder() { @@ -170,16 +170,6 @@ private Builder() { } - /** - * The UUID of the contractor - */ - public Builder contractorUuid(String contractorUuid) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); - this.contractorUuid = contractorUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -203,6 +193,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String contractorUuid; private Optional requestBody = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -28,12 +28,6 @@ public class PostV1ContractorsContractorUuidRehireRequestBuilder { public PostV1ContractorsContractorUuidRehireRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostV1ContractorsContractorUuidRehireRequestBuilder contractorUuid(String contractorUuid) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); - this.contractorUuid = contractorUuid; - return this; - } public PostV1ContractorsContractorUuidRehireRequestBuilder xGustoAPIVersion(PostV1ContractorsContractorUuidRehireHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,6 +40,12 @@ public PostV1ContractorsContractorUuidRehireRequestBuilder xGustoAPIVersion(Opti this.xGustoAPIVersion = xGustoAPIVersion; return this; } + + public PostV1ContractorsContractorUuidRehireRequestBuilder contractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } public PostV1ContractorsContractorUuidRehireRequestBuilder requestBody(PostV1ContractorsContractorUuidRehireRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); @@ -65,8 +65,8 @@ private PostV1ContractorsContractorUuidRehireRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PostV1ContractorsContractorUuidRehireRequest request = new PostV1ContractorsContractorUuidRehireRequest(contractorUuid, - xGustoAPIVersion, + PostV1ContractorsContractorUuidRehireRequest request = new PostV1ContractorsContractorUuidRehireRequest(xGustoAPIVersion, + contractorUuid, requestBody); return request; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1ContractorsContractorUuidTerminationRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1ContractorsContractorUuidTerminationRequest.java index 4f98c804f..1462042ed 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1ContractorsContractorUuidTerminationRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1ContractorsContractorUuidTerminationRequest.java @@ -16,12 +16,6 @@ public class PostV1ContractorsContractorUuidTerminationRequest { - /** - * The UUID of the contractor - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=contractor_uuid") - private String contractorUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,34 +24,32 @@ public class PostV1ContractorsContractorUuidTerminationRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the contractor + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=contractor_uuid") + private String contractorUuid; + @SpeakeasyMetadata("request:mediaType=application/json") private Optional requestBody; @JsonCreator public PostV1ContractorsContractorUuidTerminationRequest( - String contractorUuid, Optional xGustoAPIVersion, + String contractorUuid, Optional requestBody) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(contractorUuid, "contractorUuid"); Utils.checkNotNull(requestBody, "requestBody"); - this.contractorUuid = contractorUuid; this.xGustoAPIVersion = xGustoAPIVersion; + this.contractorUuid = contractorUuid; this.requestBody = requestBody; } public PostV1ContractorsContractorUuidTerminationRequest( String contractorUuid) { - this(contractorUuid, Optional.empty(), Optional.empty()); - } - - /** - * The UUID of the contractor - */ - @JsonIgnore - public String contractorUuid() { - return contractorUuid; + this(Optional.empty(), contractorUuid, Optional.empty()); } /** @@ -71,6 +63,14 @@ public Optional) xGustoAPIVersion; } + /** + * The UUID of the contractor + */ + @JsonIgnore + public String contractorUuid() { + return contractorUuid; + } + @SuppressWarnings("unchecked") @JsonIgnore public Optional requestBody() { @@ -82,15 +82,6 @@ public static Builder builder() { } - /** - * The UUID of the contractor - */ - public PostV1ContractorsContractorUuidTerminationRequest withContractorUuid(String contractorUuid) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); - this.contractorUuid = contractorUuid; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -114,6 +105,15 @@ public PostV1ContractorsContractorUuidTerminationRequest withXGustoAPIVersion(Op return this; } + /** + * The UUID of the contractor + */ + public PostV1ContractorsContractorUuidTerminationRequest withContractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + public PostV1ContractorsContractorUuidTerminationRequest withRequestBody(PostV1ContractorsContractorUuidTerminationRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); this.requestBody = Optional.ofNullable(requestBody); @@ -137,32 +137,32 @@ public boolean equals(java.lang.Object o) { } PostV1ContractorsContractorUuidTerminationRequest other = (PostV1ContractorsContractorUuidTerminationRequest) o; return - Utils.enhancedDeepEquals(this.contractorUuid, other.contractorUuid) && Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.contractorUuid, other.contractorUuid) && Utils.enhancedDeepEquals(this.requestBody, other.requestBody); } @Override public int hashCode() { return Utils.enhancedHash( - contractorUuid, xGustoAPIVersion, requestBody); + xGustoAPIVersion, contractorUuid, requestBody); } @Override public String toString() { return Utils.toString(PostV1ContractorsContractorUuidTerminationRequest.class, - "contractorUuid", contractorUuid, "xGustoAPIVersion", xGustoAPIVersion, + "contractorUuid", contractorUuid, "requestBody", requestBody); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String contractorUuid; - private Optional xGustoAPIVersion; + private String contractorUuid; + private Optional requestBody = Optional.empty(); private Builder() { @@ -170,16 +170,6 @@ private Builder() { } - /** - * The UUID of the contractor - */ - public Builder contractorUuid(String contractorUuid) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); - this.contractorUuid = contractorUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -203,6 +193,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String contractorUuid; private Optional requestBody = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -28,12 +28,6 @@ public class PostV1ContractorsContractorUuidTerminationRequestBuilder { public PostV1ContractorsContractorUuidTerminationRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostV1ContractorsContractorUuidTerminationRequestBuilder contractorUuid(String contractorUuid) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); - this.contractorUuid = contractorUuid; - return this; - } public PostV1ContractorsContractorUuidTerminationRequestBuilder xGustoAPIVersion(PostV1ContractorsContractorUuidTerminationHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,6 +40,12 @@ public PostV1ContractorsContractorUuidTerminationRequestBuilder xGustoAPIVersion this.xGustoAPIVersion = xGustoAPIVersion; return this; } + + public PostV1ContractorsContractorUuidTerminationRequestBuilder contractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } public PostV1ContractorsContractorUuidTerminationRequestBuilder requestBody(PostV1ContractorsContractorUuidTerminationRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); @@ -65,8 +65,8 @@ private PostV1ContractorsContractorUuidTerminationRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PostV1ContractorsContractorUuidTerminationRequest request = new PostV1ContractorsContractorUuidTerminationRequest(contractorUuid, - xGustoAPIVersion, + PostV1ContractorsContractorUuidTerminationRequest request = new PostV1ContractorsContractorUuidTerminationRequest(xGustoAPIVersion, + contractorUuid, requestBody); return request; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1EmployeesEmployeeIdHomeAddressesRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1EmployeesEmployeeIdHomeAddressesRequest.java index 54ec0974d..2328418d7 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1EmployeesEmployeeIdHomeAddressesRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1EmployeesEmployeeIdHomeAddressesRequest.java @@ -16,12 +16,6 @@ public class PostV1EmployeesEmployeeIdHomeAddressesRequest { - /** - * The UUID of the employee - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=employee_id") - private String employeeId; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,35 +24,33 @@ public class PostV1EmployeesEmployeeIdHomeAddressesRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the employee + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=employee_id") + private String employeeId; + @SpeakeasyMetadata("request:mediaType=application/json") private PostV1EmployeesEmployeeIdHomeAddressesRequestBody requestBody; @JsonCreator public PostV1EmployeesEmployeeIdHomeAddressesRequest( - String employeeId, Optional xGustoAPIVersion, + String employeeId, PostV1EmployeesEmployeeIdHomeAddressesRequestBody requestBody) { - Utils.checkNotNull(employeeId, "employeeId"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(employeeId, "employeeId"); Utils.checkNotNull(requestBody, "requestBody"); - this.employeeId = employeeId; this.xGustoAPIVersion = xGustoAPIVersion; + this.employeeId = employeeId; this.requestBody = requestBody; } public PostV1EmployeesEmployeeIdHomeAddressesRequest( String employeeId, PostV1EmployeesEmployeeIdHomeAddressesRequestBody requestBody) { - this(employeeId, Optional.empty(), requestBody); - } - - /** - * The UUID of the employee - */ - @JsonIgnore - public String employeeId() { - return employeeId; + this(Optional.empty(), employeeId, requestBody); } /** @@ -72,6 +64,14 @@ public Optional xG return (Optional) xGustoAPIVersion; } + /** + * The UUID of the employee + */ + @JsonIgnore + public String employeeId() { + return employeeId; + } + @JsonIgnore public PostV1EmployeesEmployeeIdHomeAddressesRequestBody requestBody() { return requestBody; @@ -82,15 +82,6 @@ public static Builder builder() { } - /** - * The UUID of the employee - */ - public PostV1EmployeesEmployeeIdHomeAddressesRequest withEmployeeId(String employeeId) { - Utils.checkNotNull(employeeId, "employeeId"); - this.employeeId = employeeId; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -114,6 +105,15 @@ public PostV1EmployeesEmployeeIdHomeAddressesRequest withXGustoAPIVersion(Option return this; } + /** + * The UUID of the employee + */ + public PostV1EmployeesEmployeeIdHomeAddressesRequest withEmployeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + public PostV1EmployeesEmployeeIdHomeAddressesRequest withRequestBody(PostV1EmployeesEmployeeIdHomeAddressesRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); this.requestBody = requestBody; @@ -130,32 +130,32 @@ public boolean equals(java.lang.Object o) { } PostV1EmployeesEmployeeIdHomeAddressesRequest other = (PostV1EmployeesEmployeeIdHomeAddressesRequest) o; return - Utils.enhancedDeepEquals(this.employeeId, other.employeeId) && Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.employeeId, other.employeeId) && Utils.enhancedDeepEquals(this.requestBody, other.requestBody); } @Override public int hashCode() { return Utils.enhancedHash( - employeeId, xGustoAPIVersion, requestBody); + xGustoAPIVersion, employeeId, requestBody); } @Override public String toString() { return Utils.toString(PostV1EmployeesEmployeeIdHomeAddressesRequest.class, - "employeeId", employeeId, "xGustoAPIVersion", xGustoAPIVersion, + "employeeId", employeeId, "requestBody", requestBody); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String employeeId; - private Optional xGustoAPIVersion; + private String employeeId; + private PostV1EmployeesEmployeeIdHomeAddressesRequestBody requestBody; private Builder() { @@ -163,16 +163,6 @@ private Builder() { } - /** - * The UUID of the employee - */ - public Builder employeeId(String employeeId) { - Utils.checkNotNull(employeeId, "employeeId"); - this.employeeId = employeeId; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -196,6 +186,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String employeeId; private PostV1EmployeesEmployeeIdHomeAddressesRequestBody requestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -28,12 +28,6 @@ public class PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder { public PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder employeeId(String employeeId) { - Utils.checkNotNull(employeeId, "employeeId"); - this.employeeId = employeeId; - return this; - } public PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder xGustoAPIVersion(PostV1EmployeesEmployeeIdHomeAddressesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -47,6 +41,12 @@ public PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder xGustoAPIVersion(Opt return this; } + public PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder employeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + public PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder requestBody(PostV1EmployeesEmployeeIdHomeAddressesRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); this.requestBody = requestBody; @@ -59,8 +59,8 @@ private PostV1EmployeesEmployeeIdHomeAddressesRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PostV1EmployeesEmployeeIdHomeAddressesRequest request = new PostV1EmployeesEmployeeIdHomeAddressesRequest(employeeId, - xGustoAPIVersion, + PostV1EmployeesEmployeeIdHomeAddressesRequest request = new PostV1EmployeesEmployeeIdHomeAddressesRequest(xGustoAPIVersion, + employeeId, requestBody); return request; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1EmployeesEmployeeIdJobsRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1EmployeesEmployeeIdJobsRequest.java index b9606f053..d84e90a65 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1EmployeesEmployeeIdJobsRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1EmployeesEmployeeIdJobsRequest.java @@ -17,12 +17,6 @@ public class PostV1EmployeesEmployeeIdJobsRequest { - /** - * The UUID of the employee - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=employee_id") - private String employeeId; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -31,35 +25,33 @@ public class PostV1EmployeesEmployeeIdJobsRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the employee + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=employee_id") + private String employeeId; + @SpeakeasyMetadata("request:mediaType=application/json") private JobsCreateRequestBody jobsCreateRequestBody; @JsonCreator public PostV1EmployeesEmployeeIdJobsRequest( - String employeeId, Optional xGustoAPIVersion, + String employeeId, JobsCreateRequestBody jobsCreateRequestBody) { - Utils.checkNotNull(employeeId, "employeeId"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(employeeId, "employeeId"); Utils.checkNotNull(jobsCreateRequestBody, "jobsCreateRequestBody"); - this.employeeId = employeeId; this.xGustoAPIVersion = xGustoAPIVersion; + this.employeeId = employeeId; this.jobsCreateRequestBody = jobsCreateRequestBody; } public PostV1EmployeesEmployeeIdJobsRequest( String employeeId, JobsCreateRequestBody jobsCreateRequestBody) { - this(employeeId, Optional.empty(), jobsCreateRequestBody); - } - - /** - * The UUID of the employee - */ - @JsonIgnore - public String employeeId() { - return employeeId; + this(Optional.empty(), employeeId, jobsCreateRequestBody); } /** @@ -73,6 +65,14 @@ public Optional xGustoAPIVe return (Optional) xGustoAPIVersion; } + /** + * The UUID of the employee + */ + @JsonIgnore + public String employeeId() { + return employeeId; + } + @JsonIgnore public JobsCreateRequestBody jobsCreateRequestBody() { return jobsCreateRequestBody; @@ -83,15 +83,6 @@ public static Builder builder() { } - /** - * The UUID of the employee - */ - public PostV1EmployeesEmployeeIdJobsRequest withEmployeeId(String employeeId) { - Utils.checkNotNull(employeeId, "employeeId"); - this.employeeId = employeeId; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -115,6 +106,15 @@ public PostV1EmployeesEmployeeIdJobsRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String employeeId; + private JobsCreateRequestBody jobsCreateRequestBody; private Builder() { @@ -164,16 +164,6 @@ private Builder() { } - /** - * The UUID of the employee - */ - public Builder employeeId(String employeeId) { - Utils.checkNotNull(employeeId, "employeeId"); - this.employeeId = employeeId; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -197,6 +187,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String employeeId; private JobsCreateRequestBody jobsCreateRequestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -29,12 +29,6 @@ public class PostV1EmployeesEmployeeIdJobsRequestBuilder { public PostV1EmployeesEmployeeIdJobsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostV1EmployeesEmployeeIdJobsRequestBuilder employeeId(String employeeId) { - Utils.checkNotNull(employeeId, "employeeId"); - this.employeeId = employeeId; - return this; - } public PostV1EmployeesEmployeeIdJobsRequestBuilder xGustoAPIVersion(PostV1EmployeesEmployeeIdJobsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -48,6 +42,12 @@ public PostV1EmployeesEmployeeIdJobsRequestBuilder xGustoAPIVersion(Optional rawResponse; /** - * created + * created a primary job with a null title */ private Optional job; @@ -87,7 +87,7 @@ public HttpResponse rawResponse() { } /** - * created + * created a primary job with a null title */ @SuppressWarnings("unchecked") @JsonIgnore @@ -128,7 +128,7 @@ public PostV1EmployeesEmployeeIdJobsResponse withRawResponse(HttpResponse job) { Utils.checkNotNull(job, "job"); @@ -225,7 +225,7 @@ public Builder rawResponse(HttpResponse rawResponse) { /** - * created + * created a primary job with a null title */ public Builder job(Job job) { Utils.checkNotNull(job, "job"); @@ -234,7 +234,7 @@ public Builder job(Job job) { } /** - * created + * created a primary job with a null title */ public Builder job(Optional job) { Utils.checkNotNull(job, "job"); diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.java new file mode 100644 index 000000000..4a5fc8c65 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion + * + *

    Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ +public enum PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion { + TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15("2025-11-15"); + + @JsonValue + private final String value; + + PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion o: PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest.java new file mode 100644 index 000000000..780e6bf21 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest.java @@ -0,0 +1,191 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2025_11_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2025_11_15.utils.SpeakeasyMetadata; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + + /** + * The UUID of the employee + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=employee_id") + private String employeeId; + + @JsonCreator + public PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest( + Optional xGustoAPIVersion, + String employeeId) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(employeeId, "employeeId"); + this.xGustoAPIVersion = xGustoAPIVersion; + this.employeeId = employeeId; + } + + public PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest( + String employeeId) { + this(Optional.empty(), employeeId); + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + + /** + * The UUID of the employee + */ + @JsonIgnore + public String employeeId() { + return employeeId; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest withXGustoAPIVersion(PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + /** + * The UUID of the employee + */ + public PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest withEmployeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest other = (PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest) o; + return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.employeeId, other.employeeId); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + xGustoAPIVersion, employeeId); + } + + @Override + public String toString() { + return Utils.toString(PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, + "employeeId", employeeId); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional xGustoAPIVersion; + + private String employeeId; + + private Builder() { + // force use of static builder() method + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + + /** + * The UUID of the employee + */ + public Builder employeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + + public PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest build() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + return new PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest( + xGustoAPIVersion, employeeId); + } + + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "X-Gusto-API-Version", + "\"2025-11-15\"", + new TypeReference>() {}); + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java new file mode 100644 index 000000000..c547bffe0 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java @@ -0,0 +1,75 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.RequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2025_11_15.SDKConfiguration; +import com.gusto.embedded_api_v_2025_11_15.operations.PostV1EmployeesEmployeeIdMemberPortalInvitations; +import com.gusto.embedded_api_v_2025_11_15.utils.Headers; +import com.gusto.embedded_api_v_2025_11_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.String; +import java.util.Optional; + +public class PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder { + + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2025-11-15\"", + new TypeReference>() {}); + private String employeeId; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder xGustoAPIVersion(PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder employeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + + + private PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest request = new PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest(xGustoAPIVersion, + employeeId); + + return request; + } + + public PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse call() { + + RequestOperation operation + = new PostV1EmployeesEmployeeIdMemberPortalInvitations.Sync(sdkConfiguration, _headers); + PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest request = buildRequest(); + + return operation.handleResponse(operation.doRequest(request)); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2025-11-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java new file mode 100644 index 000000000..feba1a387 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java @@ -0,0 +1,181 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2025_11_15.utils.Response; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.io.InputStream; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.net.http.HttpResponse; + + +public class PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse implements Response { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + @JsonCreator + public PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse other = (PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse); + } + + @Override + public String toString() { + return Utils.toString(PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + public PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse build() { + + return new PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse( + contentType, statusCode, rawResponse); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1EmployeesEmployeeIdWorkAddressesRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1EmployeesEmployeeIdWorkAddressesRequest.java index bbc259c05..818380bc4 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1EmployeesEmployeeIdWorkAddressesRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1EmployeesEmployeeIdWorkAddressesRequest.java @@ -16,12 +16,6 @@ public class PostV1EmployeesEmployeeIdWorkAddressesRequest { - /** - * The UUID of the employee - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=employee_id") - private String employeeId; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,35 +24,33 @@ public class PostV1EmployeesEmployeeIdWorkAddressesRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the employee + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=employee_id") + private String employeeId; + @SpeakeasyMetadata("request:mediaType=application/json") private PostV1EmployeesEmployeeIdWorkAddressesRequestBody requestBody; @JsonCreator public PostV1EmployeesEmployeeIdWorkAddressesRequest( - String employeeId, Optional xGustoAPIVersion, + String employeeId, PostV1EmployeesEmployeeIdWorkAddressesRequestBody requestBody) { - Utils.checkNotNull(employeeId, "employeeId"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(employeeId, "employeeId"); Utils.checkNotNull(requestBody, "requestBody"); - this.employeeId = employeeId; this.xGustoAPIVersion = xGustoAPIVersion; + this.employeeId = employeeId; this.requestBody = requestBody; } public PostV1EmployeesEmployeeIdWorkAddressesRequest( String employeeId, PostV1EmployeesEmployeeIdWorkAddressesRequestBody requestBody) { - this(employeeId, Optional.empty(), requestBody); - } - - /** - * The UUID of the employee - */ - @JsonIgnore - public String employeeId() { - return employeeId; + this(Optional.empty(), employeeId, requestBody); } /** @@ -72,6 +64,14 @@ public Optional xG return (Optional) xGustoAPIVersion; } + /** + * The UUID of the employee + */ + @JsonIgnore + public String employeeId() { + return employeeId; + } + @JsonIgnore public PostV1EmployeesEmployeeIdWorkAddressesRequestBody requestBody() { return requestBody; @@ -82,15 +82,6 @@ public static Builder builder() { } - /** - * The UUID of the employee - */ - public PostV1EmployeesEmployeeIdWorkAddressesRequest withEmployeeId(String employeeId) { - Utils.checkNotNull(employeeId, "employeeId"); - this.employeeId = employeeId; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -114,6 +105,15 @@ public PostV1EmployeesEmployeeIdWorkAddressesRequest withXGustoAPIVersion(Option return this; } + /** + * The UUID of the employee + */ + public PostV1EmployeesEmployeeIdWorkAddressesRequest withEmployeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + public PostV1EmployeesEmployeeIdWorkAddressesRequest withRequestBody(PostV1EmployeesEmployeeIdWorkAddressesRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); this.requestBody = requestBody; @@ -130,32 +130,32 @@ public boolean equals(java.lang.Object o) { } PostV1EmployeesEmployeeIdWorkAddressesRequest other = (PostV1EmployeesEmployeeIdWorkAddressesRequest) o; return - Utils.enhancedDeepEquals(this.employeeId, other.employeeId) && Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.employeeId, other.employeeId) && Utils.enhancedDeepEquals(this.requestBody, other.requestBody); } @Override public int hashCode() { return Utils.enhancedHash( - employeeId, xGustoAPIVersion, requestBody); + xGustoAPIVersion, employeeId, requestBody); } @Override public String toString() { return Utils.toString(PostV1EmployeesEmployeeIdWorkAddressesRequest.class, - "employeeId", employeeId, "xGustoAPIVersion", xGustoAPIVersion, + "employeeId", employeeId, "requestBody", requestBody); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String employeeId; - private Optional xGustoAPIVersion; + private String employeeId; + private PostV1EmployeesEmployeeIdWorkAddressesRequestBody requestBody; private Builder() { @@ -163,16 +163,6 @@ private Builder() { } - /** - * The UUID of the employee - */ - public Builder employeeId(String employeeId) { - Utils.checkNotNull(employeeId, "employeeId"); - this.employeeId = employeeId; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -196,6 +186,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String employeeId; private PostV1EmployeesEmployeeIdWorkAddressesRequestBody requestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -28,12 +28,6 @@ public class PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder { public PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder employeeId(String employeeId) { - Utils.checkNotNull(employeeId, "employeeId"); - this.employeeId = employeeId; - return this; - } public PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder xGustoAPIVersion(PostV1EmployeesEmployeeIdWorkAddressesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -47,6 +41,12 @@ public PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder xGustoAPIVersion(Opt return this; } + public PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder employeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + public PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder requestBody(PostV1EmployeesEmployeeIdWorkAddressesRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); this.requestBody = requestBody; @@ -59,8 +59,8 @@ private PostV1EmployeesEmployeeIdWorkAddressesRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PostV1EmployeesEmployeeIdWorkAddressesRequest request = new PostV1EmployeesEmployeeIdWorkAddressesRequest(employeeId, - xGustoAPIVersion, + PostV1EmployeesEmployeeIdWorkAddressesRequest request = new PostV1EmployeesEmployeeIdWorkAddressesRequest(xGustoAPIVersion, + employeeId, requestBody); return request; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.java index 266800ee8..8b93a0591 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.java @@ -17,12 +17,6 @@ public class PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest { - /** - * The UUID of the employee - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=employee_uuid") - private String employeeUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -31,35 +25,33 @@ public class PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the employee + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=employee_uuid") + private String employeeUuid; + @SpeakeasyMetadata("request:mediaType=application/json") private EmployeeSection603HighEarnerStatusCreateRequest employeeSection603HighEarnerStatusCreateRequest; @JsonCreator public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest( - String employeeUuid, Optional xGustoAPIVersion, + String employeeUuid, EmployeeSection603HighEarnerStatusCreateRequest employeeSection603HighEarnerStatusCreateRequest) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(employeeUuid, "employeeUuid"); Utils.checkNotNull(employeeSection603HighEarnerStatusCreateRequest, "employeeSection603HighEarnerStatusCreateRequest"); - this.employeeUuid = employeeUuid; this.xGustoAPIVersion = xGustoAPIVersion; + this.employeeUuid = employeeUuid; this.employeeSection603HighEarnerStatusCreateRequest = employeeSection603HighEarnerStatusCreateRequest; } public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest( String employeeUuid, EmployeeSection603HighEarnerStatusCreateRequest employeeSection603HighEarnerStatusCreateRequest) { - this(employeeUuid, Optional.empty(), employeeSection603HighEarnerStatusCreateRequest); - } - - /** - * The UUID of the employee - */ - @JsonIgnore - public String employeeUuid() { - return employeeUuid; + this(Optional.empty(), employeeUuid, employeeSection603HighEarnerStatusCreateRequest); } /** @@ -73,6 +65,14 @@ public Optional) xGustoAPIVersion; } + /** + * The UUID of the employee + */ + @JsonIgnore + public String employeeUuid() { + return employeeUuid; + } + @JsonIgnore public EmployeeSection603HighEarnerStatusCreateRequest employeeSection603HighEarnerStatusCreateRequest() { return employeeSection603HighEarnerStatusCreateRequest; @@ -83,15 +83,6 @@ public static Builder builder() { } - /** - * The UUID of the employee - */ - public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest withEmployeeUuid(String employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = employeeUuid; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -115,6 +106,15 @@ public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest withXGusto return this; } + /** + * The UUID of the employee + */ + public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest withEmployeeUuid(String employeeUuid) { + Utils.checkNotNull(employeeUuid, "employeeUuid"); + this.employeeUuid = employeeUuid; + return this; + } + public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest withEmployeeSection603HighEarnerStatusCreateRequest(EmployeeSection603HighEarnerStatusCreateRequest employeeSection603HighEarnerStatusCreateRequest) { Utils.checkNotNull(employeeSection603HighEarnerStatusCreateRequest, "employeeSection603HighEarnerStatusCreateRequest"); this.employeeSection603HighEarnerStatusCreateRequest = employeeSection603HighEarnerStatusCreateRequest; @@ -131,32 +131,32 @@ public boolean equals(java.lang.Object o) { } PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest other = (PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest) o; return - Utils.enhancedDeepEquals(this.employeeUuid, other.employeeUuid) && Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.employeeUuid, other.employeeUuid) && Utils.enhancedDeepEquals(this.employeeSection603HighEarnerStatusCreateRequest, other.employeeSection603HighEarnerStatusCreateRequest); } @Override public int hashCode() { return Utils.enhancedHash( - employeeUuid, xGustoAPIVersion, employeeSection603HighEarnerStatusCreateRequest); + xGustoAPIVersion, employeeUuid, employeeSection603HighEarnerStatusCreateRequest); } @Override public String toString() { return Utils.toString(PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.class, - "employeeUuid", employeeUuid, "xGustoAPIVersion", xGustoAPIVersion, + "employeeUuid", employeeUuid, "employeeSection603HighEarnerStatusCreateRequest", employeeSection603HighEarnerStatusCreateRequest); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String employeeUuid; - private Optional xGustoAPIVersion; + private String employeeUuid; + private EmployeeSection603HighEarnerStatusCreateRequest employeeSection603HighEarnerStatusCreateRequest; private Builder() { @@ -164,16 +164,6 @@ private Builder() { } - /** - * The UUID of the employee - */ - public Builder employeeUuid(String employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = employeeUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -197,6 +187,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String employeeUuid; private EmployeeSection603HighEarnerStatusCreateRequest employeeSection603HighEarnerStatusCreateRequest; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -29,12 +29,6 @@ public class PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuild public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder employeeUuid(String employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = employeeUuid; - return this; - } public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder xGustoAPIVersion(PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -48,6 +42,12 @@ public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder xGu return this; } + public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder employeeUuid(String employeeUuid) { + Utils.checkNotNull(employeeUuid, "employeeUuid"); + this.employeeUuid = employeeUuid; + return this; + } + public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder employeeSection603HighEarnerStatusCreateRequest(EmployeeSection603HighEarnerStatusCreateRequest employeeSection603HighEarnerStatusCreateRequest) { Utils.checkNotNull(employeeSection603HighEarnerStatusCreateRequest, "employeeSection603HighEarnerStatusCreateRequest"); this.employeeSection603HighEarnerStatusCreateRequest = employeeSection603HighEarnerStatusCreateRequest; @@ -60,8 +60,8 @@ private PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest buildRequ xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest request = new PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest(employeeUuid, - xGustoAPIVersion, + PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest request = new PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest(xGustoAPIVersion, + employeeUuid, employeeSection603HighEarnerStatusCreateRequest); return request; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1PayrollBatchesHeaderXGustoAPIVersion.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1PayrollBatchesHeaderXGustoAPIVersion.java new file mode 100644 index 000000000..603f80d9e --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1PayrollBatchesHeaderXGustoAPIVersion.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PostV1PayrollBatchesHeaderXGustoAPIVersion + * + *

    Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ +public enum PostV1PayrollBatchesHeaderXGustoAPIVersion { + TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15("2025-11-15"); + + @JsonValue + private final String value; + + PostV1PayrollBatchesHeaderXGustoAPIVersion(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PostV1PayrollBatchesHeaderXGustoAPIVersion o: PostV1PayrollBatchesHeaderXGustoAPIVersion.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1PayrollBatchesRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1PayrollBatchesRequest.java new file mode 100644 index 000000000..4c00b3f67 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1PayrollBatchesRequest.java @@ -0,0 +1,180 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2025_11_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2025_11_15.utils.SpeakeasyMetadata; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class PostV1PayrollBatchesRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + + + @SpeakeasyMetadata("request:mediaType=application/json") + private PostV1PayrollBatchesRequestBody requestBody; + + @JsonCreator + public PostV1PayrollBatchesRequest( + Optional xGustoAPIVersion, + PostV1PayrollBatchesRequestBody requestBody) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(requestBody, "requestBody"); + this.xGustoAPIVersion = xGustoAPIVersion; + this.requestBody = requestBody; + } + + public PostV1PayrollBatchesRequest( + PostV1PayrollBatchesRequestBody requestBody) { + this(Optional.empty(), requestBody); + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + + @JsonIgnore + public PostV1PayrollBatchesRequestBody requestBody() { + return requestBody; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public PostV1PayrollBatchesRequest withXGustoAPIVersion(PostV1PayrollBatchesHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public PostV1PayrollBatchesRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public PostV1PayrollBatchesRequest withRequestBody(PostV1PayrollBatchesRequestBody requestBody) { + Utils.checkNotNull(requestBody, "requestBody"); + this.requestBody = requestBody; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PostV1PayrollBatchesRequest other = (PostV1PayrollBatchesRequest) o; + return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.requestBody, other.requestBody); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + xGustoAPIVersion, requestBody); + } + + @Override + public String toString() { + return Utils.toString(PostV1PayrollBatchesRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, + "requestBody", requestBody); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional xGustoAPIVersion; + + private PostV1PayrollBatchesRequestBody requestBody; + + private Builder() { + // force use of static builder() method + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(PostV1PayrollBatchesHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + + public Builder requestBody(PostV1PayrollBatchesRequestBody requestBody) { + Utils.checkNotNull(requestBody, "requestBody"); + this.requestBody = requestBody; + return this; + } + + public PostV1PayrollBatchesRequest build() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + return new PostV1PayrollBatchesRequest( + xGustoAPIVersion, requestBody); + } + + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "X-Gusto-API-Version", + "\"2025-11-15\"", + new TypeReference>() {}); + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1PayrollBatchesRequestBody.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1PayrollBatchesRequestBody.java new file mode 100644 index 000000000..3ccc026e4 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1PayrollBatchesRequestBody.java @@ -0,0 +1,186 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.util.List; + + +public class PostV1PayrollBatchesRequestBody { + /** + * A partner-generated unique identifier to ensure idempotency of the batch request. Scoped per + * partner. + */ + @JsonProperty("idempotency_key") + private String idempotencyKey; + + /** + * The action to perform on the batch. Only `cancel` is supported. + */ + @JsonProperty("batch_action") + private BatchAction batchAction; + + /** + * Array of payrolls to cancel. Maximum 100 payrolls per request. + */ + @JsonProperty("batch") + private List batch; + + @JsonCreator + public PostV1PayrollBatchesRequestBody( + @JsonProperty("idempotency_key") String idempotencyKey, + @JsonProperty("batch_action") BatchAction batchAction, + @JsonProperty("batch") List batch) { + Utils.checkNotNull(idempotencyKey, "idempotencyKey"); + Utils.checkNotNull(batchAction, "batchAction"); + Utils.checkNotNull(batch, "batch"); + this.idempotencyKey = idempotencyKey; + this.batchAction = batchAction; + this.batch = batch; + } + + /** + * A partner-generated unique identifier to ensure idempotency of the batch request. Scoped per + * partner. + */ + @JsonIgnore + public String idempotencyKey() { + return idempotencyKey; + } + + /** + * The action to perform on the batch. Only `cancel` is supported. + */ + @JsonIgnore + public BatchAction batchAction() { + return batchAction; + } + + /** + * Array of payrolls to cancel. Maximum 100 payrolls per request. + */ + @JsonIgnore + public List batch() { + return batch; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * A partner-generated unique identifier to ensure idempotency of the batch request. Scoped per + * partner. + */ + public PostV1PayrollBatchesRequestBody withIdempotencyKey(String idempotencyKey) { + Utils.checkNotNull(idempotencyKey, "idempotencyKey"); + this.idempotencyKey = idempotencyKey; + return this; + } + + /** + * The action to perform on the batch. Only `cancel` is supported. + */ + public PostV1PayrollBatchesRequestBody withBatchAction(BatchAction batchAction) { + Utils.checkNotNull(batchAction, "batchAction"); + this.batchAction = batchAction; + return this; + } + + /** + * Array of payrolls to cancel. Maximum 100 payrolls per request. + */ + public PostV1PayrollBatchesRequestBody withBatch(List batch) { + Utils.checkNotNull(batch, "batch"); + this.batch = batch; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PostV1PayrollBatchesRequestBody other = (PostV1PayrollBatchesRequestBody) o; + return + Utils.enhancedDeepEquals(this.idempotencyKey, other.idempotencyKey) && + Utils.enhancedDeepEquals(this.batchAction, other.batchAction) && + Utils.enhancedDeepEquals(this.batch, other.batch); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + idempotencyKey, batchAction, batch); + } + + @Override + public String toString() { + return Utils.toString(PostV1PayrollBatchesRequestBody.class, + "idempotencyKey", idempotencyKey, + "batchAction", batchAction, + "batch", batch); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String idempotencyKey; + + private BatchAction batchAction; + + private List batch; + + private Builder() { + // force use of static builder() method + } + + + /** + * A partner-generated unique identifier to ensure idempotency of the batch request. Scoped per + * partner. + */ + public Builder idempotencyKey(String idempotencyKey) { + Utils.checkNotNull(idempotencyKey, "idempotencyKey"); + this.idempotencyKey = idempotencyKey; + return this; + } + + + /** + * The action to perform on the batch. Only `cancel` is supported. + */ + public Builder batchAction(BatchAction batchAction) { + Utils.checkNotNull(batchAction, "batchAction"); + this.batchAction = batchAction; + return this; + } + + + /** + * Array of payrolls to cancel. Maximum 100 payrolls per request. + */ + public Builder batch(List batch) { + Utils.checkNotNull(batch, "batch"); + this.batch = batch; + return this; + } + + public PostV1PayrollBatchesRequestBody build() { + + return new PostV1PayrollBatchesRequestBody( + idempotencyKey, batchAction, batch); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1PayrollBatchesRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1PayrollBatchesRequestBuilder.java new file mode 100644 index 000000000..53377a658 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1PayrollBatchesRequestBuilder.java @@ -0,0 +1,81 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.RequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2025_11_15.SDKConfiguration; +import com.gusto.embedded_api_v_2025_11_15.operations.PostV1PayrollBatches; +import com.gusto.embedded_api_v_2025_11_15.utils.Headers; +import com.gusto.embedded_api_v_2025_11_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.util.Optional; + +public class PostV1PayrollBatchesRequestBuilder { + + private PostV1PayrollBatchesSecurity security; + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2025-11-15\"", + new TypeReference>() {}); + private PostV1PayrollBatchesRequestBody requestBody; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public PostV1PayrollBatchesRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public PostV1PayrollBatchesRequestBuilder security(PostV1PayrollBatchesSecurity security) { + Utils.checkNotNull(security, "security"); + this.security = security; + return this; + } + + public PostV1PayrollBatchesRequestBuilder xGustoAPIVersion(PostV1PayrollBatchesHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public PostV1PayrollBatchesRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public PostV1PayrollBatchesRequestBuilder requestBody(PostV1PayrollBatchesRequestBody requestBody) { + Utils.checkNotNull(requestBody, "requestBody"); + this.requestBody = requestBody; + return this; + } + + + private PostV1PayrollBatchesRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + PostV1PayrollBatchesRequest request = new PostV1PayrollBatchesRequest(xGustoAPIVersion, + requestBody); + + return request; + } + + public PostV1PayrollBatchesResponse call() { + + RequestOperation operation + = new PostV1PayrollBatches.Sync(sdkConfiguration, security, _headers); + PostV1PayrollBatchesRequest request = buildRequest(); + + return operation.handleResponse(operation.doRequest(request)); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2025-11-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1PayrollBatchesResponse.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1PayrollBatchesResponse.java new file mode 100644 index 000000000..300def7d7 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1PayrollBatchesResponse.java @@ -0,0 +1,253 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2025_11_15.models.components.PayrollBatch; +import com.gusto.embedded_api_v_2025_11_15.utils.Response; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.io.InputStream; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.Optional; + + +public class PostV1PayrollBatchesResponse implements Response { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * created + */ + private Optional payrollBatch; + + @JsonCreator + public PostV1PayrollBatchesResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional payrollBatch) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(payrollBatch, "payrollBatch"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.payrollBatch = payrollBatch; + } + + public PostV1PayrollBatchesResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * created + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional payrollBatch() { + return (Optional) payrollBatch; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public PostV1PayrollBatchesResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public PostV1PayrollBatchesResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public PostV1PayrollBatchesResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * created + */ + public PostV1PayrollBatchesResponse withPayrollBatch(PayrollBatch payrollBatch) { + Utils.checkNotNull(payrollBatch, "payrollBatch"); + this.payrollBatch = Optional.ofNullable(payrollBatch); + return this; + } + + + /** + * created + */ + public PostV1PayrollBatchesResponse withPayrollBatch(Optional payrollBatch) { + Utils.checkNotNull(payrollBatch, "payrollBatch"); + this.payrollBatch = payrollBatch; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PostV1PayrollBatchesResponse other = (PostV1PayrollBatchesResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.payrollBatch, other.payrollBatch); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + payrollBatch); + } + + @Override + public String toString() { + return Utils.toString(PostV1PayrollBatchesResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "payrollBatch", payrollBatch); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional payrollBatch = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * created + */ + public Builder payrollBatch(PayrollBatch payrollBatch) { + Utils.checkNotNull(payrollBatch, "payrollBatch"); + this.payrollBatch = Optional.ofNullable(payrollBatch); + return this; + } + + /** + * created + */ + public Builder payrollBatch(Optional payrollBatch) { + Utils.checkNotNull(payrollBatch, "payrollBatch"); + this.payrollBatch = payrollBatch; + return this; + } + + public PostV1PayrollBatchesResponse build() { + + return new PostV1PayrollBatchesResponse( + contentType, statusCode, rawResponse, + payrollBatch); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1PayrollBatchesSecurity.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1PayrollBatchesSecurity.java new file mode 100644 index 000000000..2cc2ceff4 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PostV1PayrollBatchesSecurity.java @@ -0,0 +1,91 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2025_11_15.utils.HasSecurity; +import com.gusto.embedded_api_v_2025_11_15.utils.SpeakeasyMetadata; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Override; +import java.lang.String; + + +public class PostV1PayrollBatchesSecurity implements HasSecurity { + + @SpeakeasyMetadata("security:scheme=true,type=http,subtype=bearer,name=Authorization") + private String systemAccessAuth; + + @JsonCreator + public PostV1PayrollBatchesSecurity( + String systemAccessAuth) { + Utils.checkNotNull(systemAccessAuth, "systemAccessAuth"); + this.systemAccessAuth = systemAccessAuth; + } + + @JsonIgnore + public String systemAccessAuth() { + return systemAccessAuth; + } + + public static Builder builder() { + return new Builder(); + } + + + public PostV1PayrollBatchesSecurity withSystemAccessAuth(String systemAccessAuth) { + Utils.checkNotNull(systemAccessAuth, "systemAccessAuth"); + this.systemAccessAuth = systemAccessAuth; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PostV1PayrollBatchesSecurity other = (PostV1PayrollBatchesSecurity) o; + return + Utils.enhancedDeepEquals(this.systemAccessAuth, other.systemAccessAuth); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + systemAccessAuth); + } + + @Override + public String toString() { + return Utils.toString(PostV1PayrollBatchesSecurity.class, + "systemAccessAuth", systemAccessAuth); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String systemAccessAuth; + + private Builder() { + // force use of static builder() method + } + + + public Builder systemAccessAuth(String systemAccessAuth) { + Utils.checkNotNull(systemAccessAuth, "systemAccessAuth"); + this.systemAccessAuth = systemAccessAuth; + return this; + } + + public PostV1PayrollBatchesSecurity build() { + + return new PostV1PayrollBatchesSecurity( + systemAccessAuth); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutAddPeopleToDepartmentRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutAddPeopleToDepartmentRequest.java index 8e89317de..2b25da6a9 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutAddPeopleToDepartmentRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutAddPeopleToDepartmentRequest.java @@ -17,12 +17,6 @@ public class PutAddPeopleToDepartmentRequest { - /** - * The UUID of the department - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=department_uuid") - private String departmentUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -31,35 +25,33 @@ public class PutAddPeopleToDepartmentRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the department + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=department_uuid") + private String departmentUuid; + @SpeakeasyMetadata("request:mediaType=application/json") private DepartmentPeopleRequestBody departmentPeopleRequestBody; @JsonCreator public PutAddPeopleToDepartmentRequest( - String departmentUuid, Optional xGustoAPIVersion, + String departmentUuid, DepartmentPeopleRequestBody departmentPeopleRequestBody) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(departmentUuid, "departmentUuid"); Utils.checkNotNull(departmentPeopleRequestBody, "departmentPeopleRequestBody"); - this.departmentUuid = departmentUuid; this.xGustoAPIVersion = xGustoAPIVersion; + this.departmentUuid = departmentUuid; this.departmentPeopleRequestBody = departmentPeopleRequestBody; } public PutAddPeopleToDepartmentRequest( String departmentUuid, DepartmentPeopleRequestBody departmentPeopleRequestBody) { - this(departmentUuid, Optional.empty(), departmentPeopleRequestBody); - } - - /** - * The UUID of the department - */ - @JsonIgnore - public String departmentUuid() { - return departmentUuid; + this(Optional.empty(), departmentUuid, departmentPeopleRequestBody); } /** @@ -73,6 +65,14 @@ public Optional xGustoAPIVersion return (Optional) xGustoAPIVersion; } + /** + * The UUID of the department + */ + @JsonIgnore + public String departmentUuid() { + return departmentUuid; + } + @JsonIgnore public DepartmentPeopleRequestBody departmentPeopleRequestBody() { return departmentPeopleRequestBody; @@ -83,15 +83,6 @@ public static Builder builder() { } - /** - * The UUID of the department - */ - public PutAddPeopleToDepartmentRequest withDepartmentUuid(String departmentUuid) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); - this.departmentUuid = departmentUuid; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -115,6 +106,15 @@ public PutAddPeopleToDepartmentRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String departmentUuid; + private DepartmentPeopleRequestBody departmentPeopleRequestBody; private Builder() { @@ -164,16 +164,6 @@ private Builder() { } - /** - * The UUID of the department - */ - public Builder departmentUuid(String departmentUuid) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); - this.departmentUuid = departmentUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -197,6 +187,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String departmentUuid; private DepartmentPeopleRequestBody departmentPeopleRequestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -29,12 +29,6 @@ public class PutAddPeopleToDepartmentRequestBuilder { public PutAddPeopleToDepartmentRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutAddPeopleToDepartmentRequestBuilder departmentUuid(String departmentUuid) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); - this.departmentUuid = departmentUuid; - return this; - } public PutAddPeopleToDepartmentRequestBuilder xGustoAPIVersion(PutAddPeopleToDepartmentHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -48,6 +42,12 @@ public PutAddPeopleToDepartmentRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion; + /** + * The UUID of the department + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=department_uuid") + private String departmentUuid; + @SpeakeasyMetadata("request:mediaType=application/json") private DepartmentUpdateRequestBody departmentUpdateRequestBody; @JsonCreator public PutDepartmentsRequest( - String departmentUuid, Optional xGustoAPIVersion, + String departmentUuid, DepartmentUpdateRequestBody departmentUpdateRequestBody) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(departmentUuid, "departmentUuid"); Utils.checkNotNull(departmentUpdateRequestBody, "departmentUpdateRequestBody"); - this.departmentUuid = departmentUuid; this.xGustoAPIVersion = xGustoAPIVersion; + this.departmentUuid = departmentUuid; this.departmentUpdateRequestBody = departmentUpdateRequestBody; } public PutDepartmentsRequest( String departmentUuid, DepartmentUpdateRequestBody departmentUpdateRequestBody) { - this(departmentUuid, Optional.empty(), departmentUpdateRequestBody); - } - - /** - * The UUID of the department - */ - @JsonIgnore - public String departmentUuid() { - return departmentUuid; + this(Optional.empty(), departmentUuid, departmentUpdateRequestBody); } /** @@ -73,6 +65,14 @@ public Optional xGustoAPIVersion() { return (Optional) xGustoAPIVersion; } + /** + * The UUID of the department + */ + @JsonIgnore + public String departmentUuid() { + return departmentUuid; + } + @JsonIgnore public DepartmentUpdateRequestBody departmentUpdateRequestBody() { return departmentUpdateRequestBody; @@ -83,15 +83,6 @@ public static Builder builder() { } - /** - * The UUID of the department - */ - public PutDepartmentsRequest withDepartmentUuid(String departmentUuid) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); - this.departmentUuid = departmentUuid; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -115,6 +106,15 @@ public PutDepartmentsRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String departmentUuid; + private DepartmentUpdateRequestBody departmentUpdateRequestBody; private Builder() { @@ -164,16 +164,6 @@ private Builder() { } - /** - * The UUID of the department - */ - public Builder departmentUuid(String departmentUuid) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); - this.departmentUuid = departmentUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -197,6 +187,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String departmentUuid; private DepartmentUpdateRequestBody departmentUpdateRequestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -29,12 +29,6 @@ public class PutDepartmentsRequestBuilder { public PutDepartmentsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutDepartmentsRequestBuilder departmentUuid(String departmentUuid) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); - this.departmentUuid = departmentUuid; - return this; - } public PutDepartmentsRequestBuilder xGustoAPIVersion(PutDepartmentsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -48,6 +42,12 @@ public PutDepartmentsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion; + /** + * The UUID of the department + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=department_uuid") + private String departmentUuid; + @SpeakeasyMetadata("request:mediaType=application/json") private DepartmentPeopleRequestBody departmentPeopleRequestBody; @JsonCreator public PutRemovePeopleFromDepartmentRequest( - String departmentUuid, Optional xGustoAPIVersion, + String departmentUuid, DepartmentPeopleRequestBody departmentPeopleRequestBody) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(departmentUuid, "departmentUuid"); Utils.checkNotNull(departmentPeopleRequestBody, "departmentPeopleRequestBody"); - this.departmentUuid = departmentUuid; this.xGustoAPIVersion = xGustoAPIVersion; + this.departmentUuid = departmentUuid; this.departmentPeopleRequestBody = departmentPeopleRequestBody; } public PutRemovePeopleFromDepartmentRequest( String departmentUuid, DepartmentPeopleRequestBody departmentPeopleRequestBody) { - this(departmentUuid, Optional.empty(), departmentPeopleRequestBody); - } - - /** - * The UUID of the department - */ - @JsonIgnore - public String departmentUuid() { - return departmentUuid; + this(Optional.empty(), departmentUuid, departmentPeopleRequestBody); } /** @@ -73,6 +65,14 @@ public Optional xGustoAPIVe return (Optional) xGustoAPIVersion; } + /** + * The UUID of the department + */ + @JsonIgnore + public String departmentUuid() { + return departmentUuid; + } + @JsonIgnore public DepartmentPeopleRequestBody departmentPeopleRequestBody() { return departmentPeopleRequestBody; @@ -83,15 +83,6 @@ public static Builder builder() { } - /** - * The UUID of the department - */ - public PutRemovePeopleFromDepartmentRequest withDepartmentUuid(String departmentUuid) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); - this.departmentUuid = departmentUuid; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -115,6 +106,15 @@ public PutRemovePeopleFromDepartmentRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String departmentUuid; + private DepartmentPeopleRequestBody departmentPeopleRequestBody; private Builder() { @@ -164,16 +164,6 @@ private Builder() { } - /** - * The UUID of the department - */ - public Builder departmentUuid(String departmentUuid) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); - this.departmentUuid = departmentUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -197,6 +187,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String departmentUuid; private DepartmentPeopleRequestBody departmentPeopleRequestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -29,12 +29,6 @@ public class PutRemovePeopleFromDepartmentRequestBuilder { public PutRemovePeopleFromDepartmentRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutRemovePeopleFromDepartmentRequestBuilder departmentUuid(String departmentUuid) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); - this.departmentUuid = departmentUuid; - return this; - } public PutRemovePeopleFromDepartmentRequestBuilder xGustoAPIVersion(PutRemovePeopleFromDepartmentHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -48,6 +42,12 @@ public PutRemovePeopleFromDepartmentRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion; + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_id") + private String companyId; + @SpeakeasyMetadata("request:mediaType=application/json") private FederalTaxDetailsUpdate federalTaxDetailsUpdate; @JsonCreator public PutV1CompaniesCompanyIdFederalTaxDetailsRequest( - String companyId, Optional xGustoAPIVersion, + String companyId, FederalTaxDetailsUpdate federalTaxDetailsUpdate) { - Utils.checkNotNull(companyId, "companyId"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(companyId, "companyId"); Utils.checkNotNull(federalTaxDetailsUpdate, "federalTaxDetailsUpdate"); - this.companyId = companyId; this.xGustoAPIVersion = xGustoAPIVersion; + this.companyId = companyId; this.federalTaxDetailsUpdate = federalTaxDetailsUpdate; } public PutV1CompaniesCompanyIdFederalTaxDetailsRequest( String companyId, FederalTaxDetailsUpdate federalTaxDetailsUpdate) { - this(companyId, Optional.empty(), federalTaxDetailsUpdate); - } - - /** - * The UUID of the company - */ - @JsonIgnore - public String companyId() { - return companyId; + this(Optional.empty(), companyId, federalTaxDetailsUpdate); } /** @@ -73,6 +65,14 @@ public Optional return (Optional) xGustoAPIVersion; } + /** + * The UUID of the company + */ + @JsonIgnore + public String companyId() { + return companyId; + } + @JsonIgnore public FederalTaxDetailsUpdate federalTaxDetailsUpdate() { return federalTaxDetailsUpdate; @@ -83,15 +83,6 @@ public static Builder builder() { } - /** - * The UUID of the company - */ - public PutV1CompaniesCompanyIdFederalTaxDetailsRequest withCompanyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -115,6 +106,15 @@ public PutV1CompaniesCompanyIdFederalTaxDetailsRequest withXGustoAPIVersion(Opti return this; } + /** + * The UUID of the company + */ + public PutV1CompaniesCompanyIdFederalTaxDetailsRequest withCompanyId(String companyId) { + Utils.checkNotNull(companyId, "companyId"); + this.companyId = companyId; + return this; + } + public PutV1CompaniesCompanyIdFederalTaxDetailsRequest withFederalTaxDetailsUpdate(FederalTaxDetailsUpdate federalTaxDetailsUpdate) { Utils.checkNotNull(federalTaxDetailsUpdate, "federalTaxDetailsUpdate"); this.federalTaxDetailsUpdate = federalTaxDetailsUpdate; @@ -131,32 +131,32 @@ public boolean equals(java.lang.Object o) { } PutV1CompaniesCompanyIdFederalTaxDetailsRequest other = (PutV1CompaniesCompanyIdFederalTaxDetailsRequest) o; return - Utils.enhancedDeepEquals(this.companyId, other.companyId) && Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.companyId, other.companyId) && Utils.enhancedDeepEquals(this.federalTaxDetailsUpdate, other.federalTaxDetailsUpdate); } @Override public int hashCode() { return Utils.enhancedHash( - companyId, xGustoAPIVersion, federalTaxDetailsUpdate); + xGustoAPIVersion, companyId, federalTaxDetailsUpdate); } @Override public String toString() { return Utils.toString(PutV1CompaniesCompanyIdFederalTaxDetailsRequest.class, - "companyId", companyId, "xGustoAPIVersion", xGustoAPIVersion, + "companyId", companyId, "federalTaxDetailsUpdate", federalTaxDetailsUpdate); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String companyId; - private Optional xGustoAPIVersion; + private String companyId; + private FederalTaxDetailsUpdate federalTaxDetailsUpdate; private Builder() { @@ -164,16 +164,6 @@ private Builder() { } - /** - * The UUID of the company - */ - public Builder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -197,6 +187,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String companyId; private FederalTaxDetailsUpdate federalTaxDetailsUpdate; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -29,12 +29,6 @@ public class PutV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder { public PutV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } public PutV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder xGustoAPIVersion(PutV1CompaniesCompanyIdFederalTaxDetailsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -48,6 +42,12 @@ public PutV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder xGustoAPIVersion(O return this; } + public PutV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder companyId(String companyId) { + Utils.checkNotNull(companyId, "companyId"); + this.companyId = companyId; + return this; + } + public PutV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder federalTaxDetailsUpdate(FederalTaxDetailsUpdate federalTaxDetailsUpdate) { Utils.checkNotNull(federalTaxDetailsUpdate, "federalTaxDetailsUpdate"); this.federalTaxDetailsUpdate = federalTaxDetailsUpdate; @@ -60,8 +60,8 @@ private PutV1CompaniesCompanyIdFederalTaxDetailsRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PutV1CompaniesCompanyIdFederalTaxDetailsRequest request = new PutV1CompaniesCompanyIdFederalTaxDetailsRequest(companyId, - xGustoAPIVersion, + PutV1CompaniesCompanyIdFederalTaxDetailsRequest request = new PutV1CompaniesCompanyIdFederalTaxDetailsRequest(xGustoAPIVersion, + companyId, federalTaxDetailsUpdate); return request; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBody.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBody.java index 614e2cde0..d41c9125e 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBody.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBody.java @@ -18,7 +18,17 @@ public class PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBody { /** - * An array of employee UUIDs. If passed, only those employees payroll items will be prepared. + * The employees to prepare, identified by UUID. If omitted, every employee currently on the payroll is + * prepared. + * + *

    **Off-cycle payrolls that support multiple employees (`Bonus`, `Correction`, `Adhoc`):** passing + * `employee_uuids` also adds eligible employees who aren't yet on the payroll - a listed employee not + * on the payroll is added, while one already on it is simply prepared. A request may include up to 100 + * UUIDs, of which at most 25 may be employees not already on the payroll; an ineligible or unknown + * UUID, or more than 25 new employees, is rejected with a 422. + * + *

    **All other payrolls:** `employee_uuids` selects which of the payroll's existing employees to + * prepare; a UUID for an employee not on the payroll is rejected with a 422. */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("employee_uuids") @@ -36,7 +46,17 @@ public PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBody() { } /** - * An array of employee UUIDs. If passed, only those employees payroll items will be prepared. + * The employees to prepare, identified by UUID. If omitted, every employee currently on the payroll is + * prepared. + * + *

    **Off-cycle payrolls that support multiple employees (`Bonus`, `Correction`, `Adhoc`):** passing + * `employee_uuids` also adds eligible employees who aren't yet on the payroll - a listed employee not + * on the payroll is added, while one already on it is simply prepared. A request may include up to 100 + * UUIDs, of which at most 25 may be employees not already on the payroll; an ineligible or unknown + * UUID, or more than 25 new employees, is rejected with a 422. + * + *

    **All other payrolls:** `employee_uuids` selects which of the payroll's existing employees to + * prepare; a UUID for an employee not on the payroll is rejected with a 422. */ @SuppressWarnings("unchecked") @JsonIgnore @@ -50,7 +70,17 @@ public static Builder builder() { /** - * An array of employee UUIDs. If passed, only those employees payroll items will be prepared. + * The employees to prepare, identified by UUID. If omitted, every employee currently on the payroll is + * prepared. + * + *

    **Off-cycle payrolls that support multiple employees (`Bonus`, `Correction`, `Adhoc`):** passing + * `employee_uuids` also adds eligible employees who aren't yet on the payroll - a listed employee not + * on the payroll is added, while one already on it is simply prepared. A request may include up to 100 + * UUIDs, of which at most 25 may be employees not already on the payroll; an ineligible or unknown + * UUID, or more than 25 new employees, is rejected with a 422. + * + *

    **All other payrolls:** `employee_uuids` selects which of the payroll's existing employees to + * prepare; a UUID for an employee not on the payroll is rejected with a 422. */ public PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBody withEmployeeUuids(List employeeUuids) { Utils.checkNotNull(employeeUuids, "employeeUuids"); @@ -59,7 +89,17 @@ public PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBody withEmployeeUu } /** - * An array of employee UUIDs. If passed, only those employees payroll items will be prepared. + * The employees to prepare, identified by UUID. If omitted, every employee currently on the payroll is + * prepared. + * + *

    **Off-cycle payrolls that support multiple employees (`Bonus`, `Correction`, `Adhoc`):** passing + * `employee_uuids` also adds eligible employees who aren't yet on the payroll - a listed employee not + * on the payroll is added, while one already on it is simply prepared. A request may include up to 100 + * UUIDs, of which at most 25 may be employees not already on the payroll; an ineligible or unknown + * UUID, or more than 25 new employees, is rejected with a 422. + * + *

    **All other payrolls:** `employee_uuids` selects which of the payroll's existing employees to + * prepare; a UUID for an employee not on the payroll is rejected with a 422. */ public PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBody withEmployeeUuids(JsonNullable> employeeUuids) { Utils.checkNotNull(employeeUuids, "employeeUuids"); @@ -103,7 +143,17 @@ private Builder() { /** - * An array of employee UUIDs. If passed, only those employees payroll items will be prepared. + * The employees to prepare, identified by UUID. If omitted, every employee currently on the payroll is + * prepared. + * + *

    **Off-cycle payrolls that support multiple employees (`Bonus`, `Correction`, `Adhoc`):** passing + * `employee_uuids` also adds eligible employees who aren't yet on the payroll - a listed employee not + * on the payroll is added, while one already on it is simply prepared. A request may include up to 100 + * UUIDs, of which at most 25 may be employees not already on the payroll; an ineligible or unknown + * UUID, or more than 25 new employees, is rejected with a 422. + * + *

    **All other payrolls:** `employee_uuids` selects which of the payroll's existing employees to + * prepare; a UUID for an employee not on the payroll is rejected with a 422. */ public Builder employeeUuids(List employeeUuids) { Utils.checkNotNull(employeeUuids, "employeeUuids"); @@ -112,7 +162,17 @@ public Builder employeeUuids(List employeeUuids) { } /** - * An array of employee UUIDs. If passed, only those employees payroll items will be prepared. + * The employees to prepare, identified by UUID. If omitted, every employee currently on the payroll is + * prepared. + * + *

    **Off-cycle payrolls that support multiple employees (`Bonus`, `Correction`, `Adhoc`):** passing + * `employee_uuids` also adds eligible employees who aren't yet on the payroll - a listed employee not + * on the payroll is added, while one already on it is simply prepared. A request may include up to 100 + * UUIDs, of which at most 25 may be employees not already on the payroll; an ineligible or unknown + * UUID, or more than 25 new employees, is rejected with a 422. + * + *

    **All other payrolls:** `employee_uuids` selects which of the payroll's existing employees to + * prepare; a UUID for an employee not on the payroll is rejected with a 422. */ public Builder employeeUuids(JsonNullable> employeeUuids) { Utils.checkNotNull(employeeUuids, "employeeUuids"); diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1CompaniesCompanyUuidHolidayPayPolicyAddEmployees.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1CompaniesCompanyUuidHolidayPayPolicyAddEmployees.java deleted file mode 100644 index a0b094e7b..000000000 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1CompaniesCompanyUuidHolidayPayPolicyAddEmployees.java +++ /dev/null @@ -1,111 +0,0 @@ -/* - * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - */ -package com.gusto.embedded_api_v_2025_11_15.models.operations; - -import com.fasterxml.jackson.annotation.JsonCreator; -import com.fasterxml.jackson.annotation.JsonIgnore; -import com.fasterxml.jackson.annotation.JsonInclude.Include; -import com.fasterxml.jackson.annotation.JsonInclude; -import com.fasterxml.jackson.annotation.JsonProperty; -import com.gusto.embedded_api_v_2025_11_15.utils.Utils; -import java.lang.Override; -import java.lang.String; -import java.util.Optional; - - -public class PutV1CompaniesCompanyUuidHolidayPayPolicyAddEmployees { - - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("uuid") - private Optional uuid; - - @JsonCreator - public PutV1CompaniesCompanyUuidHolidayPayPolicyAddEmployees( - @JsonProperty("uuid") Optional uuid) { - Utils.checkNotNull(uuid, "uuid"); - this.uuid = uuid; - } - - public PutV1CompaniesCompanyUuidHolidayPayPolicyAddEmployees() { - this(Optional.empty()); - } - - @JsonIgnore - public Optional uuid() { - return uuid; - } - - public static Builder builder() { - return new Builder(); - } - - - public PutV1CompaniesCompanyUuidHolidayPayPolicyAddEmployees withUuid(String uuid) { - Utils.checkNotNull(uuid, "uuid"); - this.uuid = Optional.ofNullable(uuid); - return this; - } - - - public PutV1CompaniesCompanyUuidHolidayPayPolicyAddEmployees withUuid(Optional uuid) { - Utils.checkNotNull(uuid, "uuid"); - this.uuid = uuid; - return this; - } - - @Override - public boolean equals(java.lang.Object o) { - if (this == o) { - return true; - } - if (o == null || getClass() != o.getClass()) { - return false; - } - PutV1CompaniesCompanyUuidHolidayPayPolicyAddEmployees other = (PutV1CompaniesCompanyUuidHolidayPayPolicyAddEmployees) o; - return - Utils.enhancedDeepEquals(this.uuid, other.uuid); - } - - @Override - public int hashCode() { - return Utils.enhancedHash( - uuid); - } - - @Override - public String toString() { - return Utils.toString(PutV1CompaniesCompanyUuidHolidayPayPolicyAddEmployees.class, - "uuid", uuid); - } - - @SuppressWarnings("UnusedReturnValue") - public final static class Builder { - - private Optional uuid = Optional.empty(); - - private Builder() { - // force use of static builder() method - } - - - public Builder uuid(String uuid) { - Utils.checkNotNull(uuid, "uuid"); - this.uuid = Optional.ofNullable(uuid); - return this; - } - - public Builder uuid(Optional uuid) { - Utils.checkNotNull(uuid, "uuid"); - this.uuid = uuid; - return this; - } - - public PutV1CompaniesCompanyUuidHolidayPayPolicyAddEmployees build() { - - return new PutV1CompaniesCompanyUuidHolidayPayPolicyAddEmployees( - uuid); - } - - } -} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1CompaniesCompanyUuidHolidayPayPolicyAddRequestBody.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1CompaniesCompanyUuidHolidayPayPolicyAddRequestBody.java index 4baa67bbe..89b912b25 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1CompaniesCompanyUuidHolidayPayPolicyAddRequestBody.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1CompaniesCompanyUuidHolidayPayPolicyAddRequestBody.java @@ -25,12 +25,12 @@ public class PutV1CompaniesCompanyUuidHolidayPayPolicyAddRequestBody { * An array of employee objects, each containing an employee_uuid. */ @JsonProperty("employees") - private List employees; + private List employees; @JsonCreator public PutV1CompaniesCompanyUuidHolidayPayPolicyAddRequestBody( @JsonProperty("version") String version, - @JsonProperty("employees") List employees) { + @JsonProperty("employees") List employees) { Utils.checkNotNull(version, "version"); Utils.checkNotNull(employees, "employees"); this.version = version; @@ -51,7 +51,7 @@ public String version() { * An array of employee objects, each containing an employee_uuid. */ @JsonIgnore - public List employees() { + public List employees() { return employees; } @@ -74,7 +74,7 @@ public PutV1CompaniesCompanyUuidHolidayPayPolicyAddRequestBody withVersion(Strin /** * An array of employee objects, each containing an employee_uuid. */ - public PutV1CompaniesCompanyUuidHolidayPayPolicyAddRequestBody withEmployees(List employees) { + public PutV1CompaniesCompanyUuidHolidayPayPolicyAddRequestBody withEmployees(List employees) { Utils.checkNotNull(employees, "employees"); this.employees = employees; return this; @@ -112,7 +112,7 @@ public final static class Builder { private String version; - private List employees; + private List employees; private Builder() { // force use of static builder() method @@ -134,7 +134,7 @@ public Builder version(String version) { /** * An array of employee objects, each containing an employee_uuid. */ - public Builder employees(List employees) { + public Builder employees(List employees) { Utils.checkNotNull(employees, "employees"); this.employees = employees; return this; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.java index 8bc1c55fe..6abdd276a 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.java @@ -17,6 +17,14 @@ public class PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + /** * The UUID of the company */ @@ -29,31 +37,23 @@ public class PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest { @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=signatory_uuid") private String signatoryUuid; - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; - @SpeakeasyMetadata("request:mediaType=application/json") private SignatoryUpdateRequest signatoryUpdateRequest; @JsonCreator public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest( + Optional xGustoAPIVersion, String companyUuid, String signatoryUuid, - Optional xGustoAPIVersion, SignatoryUpdateRequest signatoryUpdateRequest) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(signatoryUuid, "signatoryUuid"); - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(signatoryUpdateRequest, "signatoryUpdateRequest"); + this.xGustoAPIVersion = xGustoAPIVersion; this.companyUuid = companyUuid; this.signatoryUuid = signatoryUuid; - this.xGustoAPIVersion = xGustoAPIVersion; this.signatoryUpdateRequest = signatoryUpdateRequest; } @@ -61,10 +61,21 @@ public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest( String companyUuid, String signatoryUuid, SignatoryUpdateRequest signatoryUpdateRequest) { - this(companyUuid, signatoryUuid, Optional.empty(), + this(Optional.empty(), companyUuid, signatoryUuid, signatoryUpdateRequest); } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + /** * The UUID of the company */ @@ -81,17 +92,6 @@ public String signatoryUuid() { return signatoryUuid; } - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional xGustoAPIVersion() { - return (Optional) xGustoAPIVersion; - } - @JsonIgnore public SignatoryUpdateRequest signatoryUpdateRequest() { return signatoryUpdateRequest; @@ -102,24 +102,6 @@ public static Builder builder() { } - /** - * The UUID of the company - */ - public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest withCompanyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - /** - * The UUID of the signatory - */ - public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest withSignatoryUuid(String signatoryUuid) { - Utils.checkNotNull(signatoryUuid, "signatoryUuid"); - this.signatoryUuid = signatoryUuid; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -143,6 +125,24 @@ public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest withXGustoAPIVer return this; } + /** + * The UUID of the company + */ + public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + /** + * The UUID of the signatory + */ + public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest withSignatoryUuid(String signatoryUuid) { + Utils.checkNotNull(signatoryUuid, "signatoryUuid"); + this.signatoryUuid = signatoryUuid; + return this; + } + public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest withSignatoryUpdateRequest(SignatoryUpdateRequest signatoryUpdateRequest) { Utils.checkNotNull(signatoryUpdateRequest, "signatoryUpdateRequest"); this.signatoryUpdateRequest = signatoryUpdateRequest; @@ -159,37 +159,37 @@ public boolean equals(java.lang.Object o) { } PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest other = (PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest) o; return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && Utils.enhancedDeepEquals(this.signatoryUuid, other.signatoryUuid) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.signatoryUpdateRequest, other.signatoryUpdateRequest); } @Override public int hashCode() { return Utils.enhancedHash( - companyUuid, signatoryUuid, xGustoAPIVersion, + xGustoAPIVersion, companyUuid, signatoryUuid, signatoryUpdateRequest); } @Override public String toString() { return Utils.toString(PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, "companyUuid", companyUuid, "signatoryUuid", signatoryUuid, - "xGustoAPIVersion", xGustoAPIVersion, "signatoryUpdateRequest", signatoryUpdateRequest); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { + private Optional xGustoAPIVersion; + private String companyUuid; private String signatoryUuid; - private Optional xGustoAPIVersion; - private SignatoryUpdateRequest signatoryUpdateRequest; private Builder() { @@ -197,26 +197,6 @@ private Builder() { } - /** - * The UUID of the company - */ - public Builder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - - /** - * The UUID of the signatory - */ - public Builder signatoryUuid(String signatoryUuid) { - Utils.checkNotNull(signatoryUuid, "signatoryUuid"); - this.signatoryUuid = signatoryUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -240,6 +220,26 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String companyUuid; + private String signatoryUuid; private SignatoryUpdateRequest signatoryUpdateRequest; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -30,18 +30,6 @@ public class PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder { public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder signatoryUuid(String signatoryUuid) { - Utils.checkNotNull(signatoryUuid, "signatoryUuid"); - this.signatoryUuid = signatoryUuid; - return this; - } public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder xGustoAPIVersion(PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -55,6 +43,18 @@ public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder xGustoAPI return this; } + public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder signatoryUuid(String signatoryUuid) { + Utils.checkNotNull(signatoryUuid, "signatoryUuid"); + this.signatoryUuid = signatoryUuid; + return this; + } + public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder signatoryUpdateRequest(SignatoryUpdateRequest signatoryUpdateRequest) { Utils.checkNotNull(signatoryUpdateRequest, "signatoryUpdateRequest"); this.signatoryUpdateRequest = signatoryUpdateRequest; @@ -67,9 +67,9 @@ private PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest buildRequest() xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest request = new PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest(companyUuid, + PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest request = new PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest(xGustoAPIVersion, + companyUuid, signatoryUuid, - xGustoAPIVersion, signatoryUpdateRequest); return request; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1CompaniesCompanyUuidTaxRequirementsStateRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1CompaniesCompanyUuidTaxRequirementsStateRequest.java index 28eb14b79..39de249eb 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1CompaniesCompanyUuidTaxRequirementsStateRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1CompaniesCompanyUuidTaxRequirementsStateRequest.java @@ -16,6 +16,14 @@ public class PutV1CompaniesCompanyUuidTaxRequirementsStateRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + /** * The UUID of the company */ @@ -28,31 +36,23 @@ public class PutV1CompaniesCompanyUuidTaxRequirementsStateRequest { @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=state") private String state; - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; - @SpeakeasyMetadata("request:mediaType=application/json") private PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody requestBody; @JsonCreator public PutV1CompaniesCompanyUuidTaxRequirementsStateRequest( + Optional xGustoAPIVersion, String companyUuid, String state, - Optional xGustoAPIVersion, PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody requestBody) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(state, "state"); - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(requestBody, "requestBody"); + this.xGustoAPIVersion = xGustoAPIVersion; this.companyUuid = companyUuid; this.state = state; - this.xGustoAPIVersion = xGustoAPIVersion; this.requestBody = requestBody; } @@ -60,10 +60,21 @@ public PutV1CompaniesCompanyUuidTaxRequirementsStateRequest( String companyUuid, String state, PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody requestBody) { - this(companyUuid, state, Optional.empty(), + this(Optional.empty(), companyUuid, state, requestBody); } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + /** * The UUID of the company */ @@ -80,17 +91,6 @@ public String state() { return state; } - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional xGustoAPIVersion() { - return (Optional) xGustoAPIVersion; - } - @JsonIgnore public PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody requestBody() { return requestBody; @@ -101,24 +101,6 @@ public static Builder builder() { } - /** - * The UUID of the company - */ - public PutV1CompaniesCompanyUuidTaxRequirementsStateRequest withCompanyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - /** - * The two-letter state abbreviation - */ - public PutV1CompaniesCompanyUuidTaxRequirementsStateRequest withState(String state) { - Utils.checkNotNull(state, "state"); - this.state = state; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -142,6 +124,24 @@ public PutV1CompaniesCompanyUuidTaxRequirementsStateRequest withXGustoAPIVersion return this; } + /** + * The UUID of the company + */ + public PutV1CompaniesCompanyUuidTaxRequirementsStateRequest withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + /** + * The two-letter state abbreviation + */ + public PutV1CompaniesCompanyUuidTaxRequirementsStateRequest withState(String state) { + Utils.checkNotNull(state, "state"); + this.state = state; + return this; + } + public PutV1CompaniesCompanyUuidTaxRequirementsStateRequest withRequestBody(PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); this.requestBody = requestBody; @@ -158,37 +158,37 @@ public boolean equals(java.lang.Object o) { } PutV1CompaniesCompanyUuidTaxRequirementsStateRequest other = (PutV1CompaniesCompanyUuidTaxRequirementsStateRequest) o; return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && Utils.enhancedDeepEquals(this.state, other.state) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.requestBody, other.requestBody); } @Override public int hashCode() { return Utils.enhancedHash( - companyUuid, state, xGustoAPIVersion, + xGustoAPIVersion, companyUuid, state, requestBody); } @Override public String toString() { return Utils.toString(PutV1CompaniesCompanyUuidTaxRequirementsStateRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, "companyUuid", companyUuid, "state", state, - "xGustoAPIVersion", xGustoAPIVersion, "requestBody", requestBody); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { + private Optional xGustoAPIVersion; + private String companyUuid; private String state; - private Optional xGustoAPIVersion; - private PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody requestBody; private Builder() { @@ -196,26 +196,6 @@ private Builder() { } - /** - * The UUID of the company - */ - public Builder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - - /** - * The two-letter state abbreviation - */ - public Builder state(String state) { - Utils.checkNotNull(state, "state"); - this.state = state; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -239,6 +219,26 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String companyUuid; + private String state; private PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody requestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -29,18 +29,6 @@ public class PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder { public PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - public PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder state(String state) { - Utils.checkNotNull(state, "state"); - this.state = state; - return this; - } public PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder xGustoAPIVersion(PutV1CompaniesCompanyUuidTaxRequirementsStateHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -54,6 +42,18 @@ public PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder xGustoAPIVers return this; } + public PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + public PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder state(String state) { + Utils.checkNotNull(state, "state"); + this.state = state; + return this; + } + public PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder requestBody(PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); this.requestBody = requestBody; @@ -66,9 +66,9 @@ private PutV1CompaniesCompanyUuidTaxRequirementsStateRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PutV1CompaniesCompanyUuidTaxRequirementsStateRequest request = new PutV1CompaniesCompanyUuidTaxRequirementsStateRequest(companyUuid, + PutV1CompaniesCompanyUuidTaxRequirementsStateRequest request = new PutV1CompaniesCompanyUuidTaxRequirementsStateRequest(xGustoAPIVersion, + companyUuid, state, - xGustoAPIVersion, requestBody); return request; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1CompaniesRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1CompaniesRequest.java index d1727c974..d34b888b5 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1CompaniesRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1CompaniesRequest.java @@ -16,12 +16,6 @@ public class PutV1CompaniesRequest { - /** - * The UUID of the company - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_id") - private String companyId; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,35 +24,33 @@ public class PutV1CompaniesRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_id") + private String companyId; + @SpeakeasyMetadata("request:mediaType=application/json") private PutV1CompaniesRequestBody requestBody; @JsonCreator public PutV1CompaniesRequest( - String companyId, Optional xGustoAPIVersion, + String companyId, PutV1CompaniesRequestBody requestBody) { - Utils.checkNotNull(companyId, "companyId"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(companyId, "companyId"); Utils.checkNotNull(requestBody, "requestBody"); - this.companyId = companyId; this.xGustoAPIVersion = xGustoAPIVersion; + this.companyId = companyId; this.requestBody = requestBody; } public PutV1CompaniesRequest( String companyId, PutV1CompaniesRequestBody requestBody) { - this(companyId, Optional.empty(), requestBody); - } - - /** - * The UUID of the company - */ - @JsonIgnore - public String companyId() { - return companyId; + this(Optional.empty(), companyId, requestBody); } /** @@ -72,6 +64,14 @@ public Optional xGustoAPIVersion() { return (Optional) xGustoAPIVersion; } + /** + * The UUID of the company + */ + @JsonIgnore + public String companyId() { + return companyId; + } + @JsonIgnore public PutV1CompaniesRequestBody requestBody() { return requestBody; @@ -82,15 +82,6 @@ public static Builder builder() { } - /** - * The UUID of the company - */ - public PutV1CompaniesRequest withCompanyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -114,6 +105,15 @@ public PutV1CompaniesRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String companyId; + private PutV1CompaniesRequestBody requestBody; private Builder() { @@ -163,16 +163,6 @@ private Builder() { } - /** - * The UUID of the company - */ - public Builder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -196,6 +186,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String companyId; private PutV1CompaniesRequestBody requestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -28,12 +28,6 @@ public class PutV1CompaniesRequestBuilder { public PutV1CompaniesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutV1CompaniesRequestBuilder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } public PutV1CompaniesRequestBuilder xGustoAPIVersion(PutV1CompaniesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -47,6 +41,12 @@ public PutV1CompaniesRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion; + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_id") + private String companyId; + @SpeakeasyMetadata("request:mediaType=application/json") private CompanyIndustrySelectionRequiredBody companyIndustrySelectionRequiredBody; @JsonCreator public PutV1CompanyIndustryRequest( - String companyId, Optional xGustoAPIVersion, + String companyId, CompanyIndustrySelectionRequiredBody companyIndustrySelectionRequiredBody) { - Utils.checkNotNull(companyId, "companyId"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(companyId, "companyId"); Utils.checkNotNull(companyIndustrySelectionRequiredBody, "companyIndustrySelectionRequiredBody"); - this.companyId = companyId; this.xGustoAPIVersion = xGustoAPIVersion; + this.companyId = companyId; this.companyIndustrySelectionRequiredBody = companyIndustrySelectionRequiredBody; } public PutV1CompanyIndustryRequest( String companyId, CompanyIndustrySelectionRequiredBody companyIndustrySelectionRequiredBody) { - this(companyId, Optional.empty(), companyIndustrySelectionRequiredBody); - } - - /** - * The UUID of the company - */ - @JsonIgnore - public String companyId() { - return companyId; + this(Optional.empty(), companyId, companyIndustrySelectionRequiredBody); } /** @@ -73,6 +65,14 @@ public Optional xGustoAPIVersion() { return (Optional) xGustoAPIVersion; } + /** + * The UUID of the company + */ + @JsonIgnore + public String companyId() { + return companyId; + } + @JsonIgnore public CompanyIndustrySelectionRequiredBody companyIndustrySelectionRequiredBody() { return companyIndustrySelectionRequiredBody; @@ -83,15 +83,6 @@ public static Builder builder() { } - /** - * The UUID of the company - */ - public PutV1CompanyIndustryRequest withCompanyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -115,6 +106,15 @@ public PutV1CompanyIndustryRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String companyId; + private CompanyIndustrySelectionRequiredBody companyIndustrySelectionRequiredBody; private Builder() { @@ -164,16 +164,6 @@ private Builder() { } - /** - * The UUID of the company - */ - public Builder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -197,6 +187,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String companyId; private CompanyIndustrySelectionRequiredBody companyIndustrySelectionRequiredBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -29,12 +29,6 @@ public class PutV1CompanyIndustryRequestBuilder { public PutV1CompanyIndustryRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutV1CompanyIndustryRequestBuilder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } public PutV1CompanyIndustryRequestBuilder xGustoAPIVersion(PutV1CompanyIndustryHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -48,6 +42,12 @@ public PutV1CompanyIndustryRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion; + /** + * The UUID of the contractor payment group + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=contractor_payment_group_uuid") + private String contractorPaymentGroupUuid; + @JsonCreator public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest( - String contractorPaymentGroupUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); + Optional xGustoAPIVersion, + String contractorPaymentGroupUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; + Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; } public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest( String contractorPaymentGroupUuid) { - this(contractorPaymentGroupUuid, Optional.empty()); - } - - /** - * The UUID of the contractor payment group - */ - @JsonIgnore - public String contractorPaymentGroupUuid() { - return contractorPaymentGroupUuid; + this(Optional.empty(), contractorPaymentGroupUuid); } /** @@ -64,20 +56,19 @@ public Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the contractor payment group */ - public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest withContractorPaymentGroupUuid(String contractorPaymentGroupUuid) { - Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); - this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; - return this; + @JsonIgnore + public String contractorPaymentGroupUuid() { + return contractorPaymentGroupUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest withXGust return this; } + /** + * The UUID of the contractor payment group + */ + public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest withContractorPaymentGroupUuid(String contractorPaymentGroupUuid) { + Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); + this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -111,45 +111,35 @@ public boolean equals(java.lang.Object o) { } PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest other = (PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest) o; return - Utils.enhancedDeepEquals(this.contractorPaymentGroupUuid, other.contractorPaymentGroupUuid) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.contractorPaymentGroupUuid, other.contractorPaymentGroupUuid); } @Override public int hashCode() { return Utils.enhancedHash( - contractorPaymentGroupUuid, xGustoAPIVersion); + xGustoAPIVersion, contractorPaymentGroupUuid); } @Override public String toString() { return Utils.toString(PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest.class, - "contractorPaymentGroupUuid", contractorPaymentGroupUuid, - "xGustoAPIVersion", xGustoAPIVersion); + "xGustoAPIVersion", xGustoAPIVersion, + "contractorPaymentGroupUuid", contractorPaymentGroupUuid); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String contractorPaymentGroupUuid; - private Optional xGustoAPIVersion; + private String contractorPaymentGroupUuid; + private Builder() { // force use of static builder() method } - /** - * The UUID of the contractor payment group - */ - public Builder contractorPaymentGroupUuid(String contractorPaymentGroupUuid) { - Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); - this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String contractorPaymentGroupUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequestBuilder contractorPaymentGroupUuid(String contractorPaymentGroupUuid) { - Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); - this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; - return this; - } public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequestBuilder xGustoAPIVersion(PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequestBuilder xG return this; } + public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequestBuilder contractorPaymentGroupUuid(String contractorPaymentGroupUuid) { + Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); + this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; + return this; + } + private PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest request = new PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest(contractorPaymentGroupUuid, - xGustoAPIVersion); + PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest request = new PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest(xGustoAPIVersion, + contractorPaymentGroupUuid); return request; } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1ContractorsContractorIdPaymentMethodRequestBody.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1ContractorsContractorIdPaymentMethodRequestBody.java index 36ca779ab..27e20cdb4 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1ContractorsContractorIdPaymentMethodRequestBody.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1ContractorsContractorIdPaymentMethodRequestBody.java @@ -25,12 +25,12 @@ public class PutV1ContractorsContractorIdPaymentMethodRequestBody { * account. See [Bank account endpoint](./post-v1-contractors-contractor_uuid-bank_accounts). */ @JsonProperty("type") - private PutV1ContractorsContractorIdPaymentMethodType type; + private Type type; @JsonCreator public PutV1ContractorsContractorIdPaymentMethodRequestBody( @JsonProperty("version") String version, - @JsonProperty("type") PutV1ContractorsContractorIdPaymentMethodType type) { + @JsonProperty("type") Type type) { Utils.checkNotNull(version, "version"); Utils.checkNotNull(type, "type"); this.version = version; @@ -52,7 +52,7 @@ public String version() { * account. See [Bank account endpoint](./post-v1-contractors-contractor_uuid-bank_accounts). */ @JsonIgnore - public PutV1ContractorsContractorIdPaymentMethodType type() { + public Type type() { return type; } @@ -76,7 +76,7 @@ public PutV1ContractorsContractorIdPaymentMethodRequestBody withVersion(String v * The payment method type. If type is Direct Deposit, the contractor is required to have a bank * account. See [Bank account endpoint](./post-v1-contractors-contractor_uuid-bank_accounts). */ - public PutV1ContractorsContractorIdPaymentMethodRequestBody withType(PutV1ContractorsContractorIdPaymentMethodType type) { + public PutV1ContractorsContractorIdPaymentMethodRequestBody withType(Type type) { Utils.checkNotNull(type, "type"); this.type = type; return this; @@ -114,7 +114,7 @@ public final static class Builder { private String version; - private PutV1ContractorsContractorIdPaymentMethodType type; + private Type type; private Builder() { // force use of static builder() method @@ -137,7 +137,7 @@ public Builder version(String version) { * The payment method type. If type is Direct Deposit, the contractor is required to have a bank * account. See [Bank account endpoint](./post-v1-contractors-contractor_uuid-bank_accounts). */ - public Builder type(PutV1ContractorsContractorIdPaymentMethodType type) { + public Builder type(Type type) { Utils.checkNotNull(type, "type"); this.type = type; return this; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1ContractorsContractorIdPaymentMethodType.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1ContractorsContractorIdPaymentMethodType.java deleted file mode 100644 index 90b9832c5..000000000 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1ContractorsContractorIdPaymentMethodType.java +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - */ -package com.gusto.embedded_api_v_2025_11_15.models.operations; - -import com.fasterxml.jackson.annotation.JsonValue; -import java.lang.String; -import java.util.Objects; -import java.util.Optional; - -/** - * PutV1ContractorsContractorIdPaymentMethodType - * - *

    The payment method type. If type is Direct Deposit, the contractor is required to have a bank - * account. See [Bank account endpoint](./post-v1-contractors-contractor_uuid-bank_accounts). - */ -public enum PutV1ContractorsContractorIdPaymentMethodType { - DIRECT_DEPOSIT("Direct Deposit"), - CHECK("Check"); - - @JsonValue - private final String value; - - PutV1ContractorsContractorIdPaymentMethodType(String value) { - this.value = value; - } - - public String value() { - return value; - } - - public static Optional fromValue(String value) { - for (PutV1ContractorsContractorIdPaymentMethodType o: PutV1ContractorsContractorIdPaymentMethodType.values()) { - if (Objects.deepEquals(o.value, value)) { - return Optional.of(o); - } - } - return Optional.empty(); - } -} - diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1EmployeesEmployeeIdPaymentMethodRequestBody.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1EmployeesEmployeeIdPaymentMethodRequestBody.java index 16772431c..491458041 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1EmployeesEmployeeIdPaymentMethodRequestBody.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1EmployeesEmployeeIdPaymentMethodRequestBody.java @@ -30,7 +30,7 @@ public class PutV1EmployeesEmployeeIdPaymentMethodRequestBody { * is Direct Deposit, split_by and splits are required. */ @JsonProperty("type") - private Type type; + private PutV1EmployeesEmployeeIdPaymentMethodType type; /** * How the payment will be split. If Percentage, split amounts must add up to exactly 100. If Amount, @@ -50,7 +50,7 @@ public class PutV1EmployeesEmployeeIdPaymentMethodRequestBody { @JsonCreator public PutV1EmployeesEmployeeIdPaymentMethodRequestBody( @JsonProperty("version") String version, - @JsonProperty("type") Type type, + @JsonProperty("type") PutV1EmployeesEmployeeIdPaymentMethodType type, @JsonProperty("split_by") JsonNullable splitBy, @JsonProperty("splits") JsonNullable> splits) { Utils.checkNotNull(version, "version"); @@ -65,7 +65,7 @@ public PutV1EmployeesEmployeeIdPaymentMethodRequestBody( public PutV1EmployeesEmployeeIdPaymentMethodRequestBody( String version, - Type type) { + PutV1EmployeesEmployeeIdPaymentMethodType type) { this(version, type, JsonNullable.undefined(), JsonNullable.undefined()); } @@ -85,7 +85,7 @@ public String version() { * is Direct Deposit, split_by and splits are required. */ @JsonIgnore - public Type type() { + public PutV1EmployeesEmployeeIdPaymentMethodType type() { return type; } @@ -128,7 +128,7 @@ public PutV1EmployeesEmployeeIdPaymentMethodRequestBody withVersion(String versi * The payment method type. If type is Check, split_by and splits do not need to be populated. If type * is Direct Deposit, split_by and splits are required. */ - public PutV1EmployeesEmployeeIdPaymentMethodRequestBody withType(Type type) { + public PutV1EmployeesEmployeeIdPaymentMethodRequestBody withType(PutV1EmployeesEmployeeIdPaymentMethodType type) { Utils.checkNotNull(type, "type"); this.type = type; return this; @@ -209,7 +209,7 @@ public final static class Builder { private String version; - private Type type; + private PutV1EmployeesEmployeeIdPaymentMethodType type; private JsonNullable splitBy = JsonNullable.undefined(); @@ -236,7 +236,7 @@ public Builder version(String version) { * The payment method type. If type is Check, split_by and splits do not need to be populated. If type * is Direct Deposit, split_by and splits are required. */ - public Builder type(Type type) { + public Builder type(PutV1EmployeesEmployeeIdPaymentMethodType type) { Utils.checkNotNull(type, "type"); this.type = type; return this; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1EmployeesEmployeeIdPaymentMethodType.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1EmployeesEmployeeIdPaymentMethodType.java new file mode 100644 index 000000000..0a3a6f3f3 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1EmployeesEmployeeIdPaymentMethodType.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PutV1EmployeesEmployeeIdPaymentMethodType + * + *

    The payment method type. If type is Check, split_by and splits do not need to be populated. If type + * is Direct Deposit, split_by and splits are required. + */ +public enum PutV1EmployeesEmployeeIdPaymentMethodType { + CHECK("Check"), + DIRECT_DEPOSIT("Direct Deposit"); + + @JsonValue + private final String value; + + PutV1EmployeesEmployeeIdPaymentMethodType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PutV1EmployeesEmployeeIdPaymentMethodType o: PutV1EmployeesEmployeeIdPaymentMethodType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1JobsJobIdRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1JobsJobIdRequest.java index 72c9c2ad7..38d527c22 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1JobsJobIdRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1JobsJobIdRequest.java @@ -17,12 +17,6 @@ public class PutV1JobsJobIdRequest { - /** - * The UUID of the job - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=job_id") - private String jobId; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -31,35 +25,33 @@ public class PutV1JobsJobIdRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the job + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=job_id") + private String jobId; + @SpeakeasyMetadata("request:mediaType=application/json") private JobsUpdateRequestBody jobsUpdateRequestBody; @JsonCreator public PutV1JobsJobIdRequest( - String jobId, Optional xGustoAPIVersion, + String jobId, JobsUpdateRequestBody jobsUpdateRequestBody) { - Utils.checkNotNull(jobId, "jobId"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(jobId, "jobId"); Utils.checkNotNull(jobsUpdateRequestBody, "jobsUpdateRequestBody"); - this.jobId = jobId; this.xGustoAPIVersion = xGustoAPIVersion; + this.jobId = jobId; this.jobsUpdateRequestBody = jobsUpdateRequestBody; } public PutV1JobsJobIdRequest( String jobId, JobsUpdateRequestBody jobsUpdateRequestBody) { - this(jobId, Optional.empty(), jobsUpdateRequestBody); - } - - /** - * The UUID of the job - */ - @JsonIgnore - public String jobId() { - return jobId; + this(Optional.empty(), jobId, jobsUpdateRequestBody); } /** @@ -73,6 +65,14 @@ public Optional xGustoAPIVersion() { return (Optional) xGustoAPIVersion; } + /** + * The UUID of the job + */ + @JsonIgnore + public String jobId() { + return jobId; + } + @JsonIgnore public JobsUpdateRequestBody jobsUpdateRequestBody() { return jobsUpdateRequestBody; @@ -83,15 +83,6 @@ public static Builder builder() { } - /** - * The UUID of the job - */ - public PutV1JobsJobIdRequest withJobId(String jobId) { - Utils.checkNotNull(jobId, "jobId"); - this.jobId = jobId; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -115,6 +106,15 @@ public PutV1JobsJobIdRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String jobId; + private JobsUpdateRequestBody jobsUpdateRequestBody; private Builder() { @@ -164,16 +164,6 @@ private Builder() { } - /** - * The UUID of the job - */ - public Builder jobId(String jobId) { - Utils.checkNotNull(jobId, "jobId"); - this.jobId = jobId; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -197,6 +187,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String jobId; private JobsUpdateRequestBody jobsUpdateRequestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -29,12 +29,6 @@ public class PutV1JobsJobIdRequestBuilder { public PutV1JobsJobIdRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutV1JobsJobIdRequestBuilder jobId(String jobId) { - Utils.checkNotNull(jobId, "jobId"); - this.jobId = jobId; - return this; - } public PutV1JobsJobIdRequestBuilder xGustoAPIVersion(PutV1JobsJobIdHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -48,6 +42,12 @@ public PutV1JobsJobIdRequestBuilder xGustoAPIVersion(Optional rawResponse; /** - * successful + * successful blank title on a non-primary active job */ private Optional job; @@ -87,7 +87,7 @@ public HttpResponse rawResponse() { } /** - * successful + * successful blank title on a non-primary active job */ @SuppressWarnings("unchecked") @JsonIgnore @@ -128,7 +128,7 @@ public PutV1JobsJobIdResponse withRawResponse(HttpResponse rawRespo } /** - * successful + * successful blank title on a non-primary active job */ public PutV1JobsJobIdResponse withJob(Job job) { Utils.checkNotNull(job, "job"); @@ -138,7 +138,7 @@ public PutV1JobsJobIdResponse withJob(Job job) { /** - * successful + * successful blank title on a non-primary active job */ public PutV1JobsJobIdResponse withJob(Optional job) { Utils.checkNotNull(job, "job"); @@ -225,7 +225,7 @@ public Builder rawResponse(HttpResponse rawResponse) { /** - * successful + * successful blank title on a non-primary active job */ public Builder job(Job job) { Utils.checkNotNull(job, "job"); @@ -234,7 +234,7 @@ public Builder job(Job job) { } /** - * successful + * successful blank title on a non-primary active job */ public Builder job(Optional job) { Utils.checkNotNull(job, "job"); diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion.java new file mode 100644 index 000000000..5b036e628 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion + * + *

    Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ +public enum PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion { + TWO_THOUSAND_AND_TWENTY_FIVE_MINUS11_MINUS15("2025-11-15"); + + @JsonValue + private final String value; + + PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion o: PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest.java new file mode 100644 index 000000000..515072692 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest.java @@ -0,0 +1,191 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2025_11_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2025_11_15.utils.SpeakeasyMetadata; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") + private String companyUuid; + + @JsonCreator + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest( + Optional xGustoAPIVersion, + String companyUuid) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(companyUuid, "companyUuid"); + this.xGustoAPIVersion = xGustoAPIVersion; + this.companyUuid = companyUuid; + } + + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest( + String companyUuid) { + this(Optional.empty(), companyUuid); + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + + /** + * The UUID of the company + */ + @JsonIgnore + public String companyUuid() { + return companyUuid; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest withXGustoAPIVersion(PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + /** + * The UUID of the company + */ + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest other = (PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest) o; + return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + xGustoAPIVersion, companyUuid); + } + + @Override + public String toString() { + return Utils.toString(PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, + "companyUuid", companyUuid); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional xGustoAPIVersion; + + private String companyUuid; + + private Builder() { + // force use of static builder() method + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + + /** + * The UUID of the company + */ + public Builder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest build() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + return new PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest( + xGustoAPIVersion, companyUuid); + } + + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "X-Gusto-API-Version", + "\"2025-11-15\"", + new TypeReference>() {}); + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder.java new file mode 100644 index 000000000..a9b4c647b --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder.java @@ -0,0 +1,82 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.RequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2025_11_15.SDKConfiguration; +import com.gusto.embedded_api_v_2025_11_15.operations.PutV1PartnerManagedCompaniesCompanyUuidDisassociate; +import com.gusto.embedded_api_v_2025_11_15.utils.Headers; +import com.gusto.embedded_api_v_2025_11_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.String; +import java.util.Optional; + +public class PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder { + + private PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity security; + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2025-11-15\"", + new TypeReference>() {}); + private String companyUuid; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder security(PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity security) { + Utils.checkNotNull(security, "security"); + this.security = security; + return this; + } + + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder xGustoAPIVersion(PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + + private PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest request = new PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest(xGustoAPIVersion, + companyUuid); + + return request; + } + + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse call() { + + RequestOperation operation + = new PutV1PartnerManagedCompaniesCompanyUuidDisassociate.Sync(sdkConfiguration, security, _headers); + PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest request = buildRequest(); + + return operation.handleResponse(operation.doRequest(request)); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2025-11-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse.java new file mode 100644 index 000000000..2c0a6ffce --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse.java @@ -0,0 +1,253 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2025_11_15.models.components.PartnerManagedCompanyDisassociateResponse; +import com.gusto.embedded_api_v_2025_11_15.utils.Response; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.io.InputStream; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.Optional; + + +public class PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse implements Response { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * OK + */ + private Optional partnerManagedCompanyDisassociateResponse; + + @JsonCreator + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional partnerManagedCompanyDisassociateResponse) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(partnerManagedCompanyDisassociateResponse, "partnerManagedCompanyDisassociateResponse"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.partnerManagedCompanyDisassociateResponse = partnerManagedCompanyDisassociateResponse; + } + + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * OK + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional partnerManagedCompanyDisassociateResponse() { + return (Optional) partnerManagedCompanyDisassociateResponse; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * OK + */ + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse withPartnerManagedCompanyDisassociateResponse(PartnerManagedCompanyDisassociateResponse partnerManagedCompanyDisassociateResponse) { + Utils.checkNotNull(partnerManagedCompanyDisassociateResponse, "partnerManagedCompanyDisassociateResponse"); + this.partnerManagedCompanyDisassociateResponse = Optional.ofNullable(partnerManagedCompanyDisassociateResponse); + return this; + } + + + /** + * OK + */ + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse withPartnerManagedCompanyDisassociateResponse(Optional partnerManagedCompanyDisassociateResponse) { + Utils.checkNotNull(partnerManagedCompanyDisassociateResponse, "partnerManagedCompanyDisassociateResponse"); + this.partnerManagedCompanyDisassociateResponse = partnerManagedCompanyDisassociateResponse; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse other = (PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.partnerManagedCompanyDisassociateResponse, other.partnerManagedCompanyDisassociateResponse); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + partnerManagedCompanyDisassociateResponse); + } + + @Override + public String toString() { + return Utils.toString(PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "partnerManagedCompanyDisassociateResponse", partnerManagedCompanyDisassociateResponse); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional partnerManagedCompanyDisassociateResponse = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * OK + */ + public Builder partnerManagedCompanyDisassociateResponse(PartnerManagedCompanyDisassociateResponse partnerManagedCompanyDisassociateResponse) { + Utils.checkNotNull(partnerManagedCompanyDisassociateResponse, "partnerManagedCompanyDisassociateResponse"); + this.partnerManagedCompanyDisassociateResponse = Optional.ofNullable(partnerManagedCompanyDisassociateResponse); + return this; + } + + /** + * OK + */ + public Builder partnerManagedCompanyDisassociateResponse(Optional partnerManagedCompanyDisassociateResponse) { + Utils.checkNotNull(partnerManagedCompanyDisassociateResponse, "partnerManagedCompanyDisassociateResponse"); + this.partnerManagedCompanyDisassociateResponse = partnerManagedCompanyDisassociateResponse; + return this; + } + + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse build() { + + return new PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse( + contentType, statusCode, rawResponse, + partnerManagedCompanyDisassociateResponse); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity.java new file mode 100644 index 000000000..28c70c92e --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity.java @@ -0,0 +1,91 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2025_11_15.utils.HasSecurity; +import com.gusto.embedded_api_v_2025_11_15.utils.SpeakeasyMetadata; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Override; +import java.lang.String; + + +public class PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity implements HasSecurity { + + @SpeakeasyMetadata("security:scheme=true,type=http,subtype=bearer,name=Authorization") + private String systemAccessAuth; + + @JsonCreator + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity( + String systemAccessAuth) { + Utils.checkNotNull(systemAccessAuth, "systemAccessAuth"); + this.systemAccessAuth = systemAccessAuth; + } + + @JsonIgnore + public String systemAccessAuth() { + return systemAccessAuth; + } + + public static Builder builder() { + return new Builder(); + } + + + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity withSystemAccessAuth(String systemAccessAuth) { + Utils.checkNotNull(systemAccessAuth, "systemAccessAuth"); + this.systemAccessAuth = systemAccessAuth; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity other = (PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity) o; + return + Utils.enhancedDeepEquals(this.systemAccessAuth, other.systemAccessAuth); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + systemAccessAuth); + } + + @Override + public String toString() { + return Utils.toString(PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity.class, + "systemAccessAuth", systemAccessAuth); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String systemAccessAuth; + + private Builder() { + // force use of static builder() method + } + + + public Builder systemAccessAuth(String systemAccessAuth) { + Utils.checkNotNull(systemAccessAuth, "systemAccessAuth"); + this.systemAccessAuth = systemAccessAuth; + return this; + } + + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity build() { + + return new PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity( + systemAccessAuth); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest.java index 9bf054628..08d4b409f 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest.java @@ -17,12 +17,6 @@ public class PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest { - /** - * The UUID of the company - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") - private String companyUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -31,35 +25,33 @@ public class PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") + private String companyUuid; + @SpeakeasyMetadata("request:mediaType=application/json") private PartnerManagedCompanyMigrateRequest partnerManagedCompanyMigrateRequest; @JsonCreator public PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest( - String companyUuid, Optional xGustoAPIVersion, + String companyUuid, PartnerManagedCompanyMigrateRequest partnerManagedCompanyMigrateRequest) { - Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(partnerManagedCompanyMigrateRequest, "partnerManagedCompanyMigrateRequest"); - this.companyUuid = companyUuid; this.xGustoAPIVersion = xGustoAPIVersion; + this.companyUuid = companyUuid; this.partnerManagedCompanyMigrateRequest = partnerManagedCompanyMigrateRequest; } public PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest( String companyUuid, PartnerManagedCompanyMigrateRequest partnerManagedCompanyMigrateRequest) { - this(companyUuid, Optional.empty(), partnerManagedCompanyMigrateRequest); - } - - /** - * The UUID of the company - */ - @JsonIgnore - public String companyUuid() { - return companyUuid; + this(Optional.empty(), companyUuid, partnerManagedCompanyMigrateRequest); } /** @@ -73,6 +65,14 @@ public Optional) xGustoAPIVersion; } + /** + * The UUID of the company + */ + @JsonIgnore + public String companyUuid() { + return companyUuid; + } + @JsonIgnore public PartnerManagedCompanyMigrateRequest partnerManagedCompanyMigrateRequest() { return partnerManagedCompanyMigrateRequest; @@ -83,15 +83,6 @@ public static Builder builder() { } - /** - * The UUID of the company - */ - public PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest withCompanyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -115,6 +106,15 @@ public PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest withXGustoAPIVersio return this; } + /** + * The UUID of the company + */ + public PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + public PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest withPartnerManagedCompanyMigrateRequest(PartnerManagedCompanyMigrateRequest partnerManagedCompanyMigrateRequest) { Utils.checkNotNull(partnerManagedCompanyMigrateRequest, "partnerManagedCompanyMigrateRequest"); this.partnerManagedCompanyMigrateRequest = partnerManagedCompanyMigrateRequest; @@ -131,32 +131,32 @@ public boolean equals(java.lang.Object o) { } PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest other = (PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest) o; return - Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && Utils.enhancedDeepEquals(this.partnerManagedCompanyMigrateRequest, other.partnerManagedCompanyMigrateRequest); } @Override public int hashCode() { return Utils.enhancedHash( - companyUuid, xGustoAPIVersion, partnerManagedCompanyMigrateRequest); + xGustoAPIVersion, companyUuid, partnerManagedCompanyMigrateRequest); } @Override public String toString() { return Utils.toString(PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest.class, - "companyUuid", companyUuid, "xGustoAPIVersion", xGustoAPIVersion, + "companyUuid", companyUuid, "partnerManagedCompanyMigrateRequest", partnerManagedCompanyMigrateRequest); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String companyUuid; - private Optional xGustoAPIVersion; + private String companyUuid; + private PartnerManagedCompanyMigrateRequest partnerManagedCompanyMigrateRequest; private Builder() { @@ -164,16 +164,6 @@ private Builder() { } - /** - * The UUID of the company - */ - public Builder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -197,6 +187,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String companyUuid; private PartnerManagedCompanyMigrateRequest partnerManagedCompanyMigrateRequest; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -29,12 +29,6 @@ public class PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder { public PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder xGustoAPIVersion(PutV1PartnerManagedCompaniesCompanyUuidMigrateHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -48,6 +42,12 @@ public PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder xGustoAPIVer return this; } + public PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + public PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder partnerManagedCompanyMigrateRequest(PartnerManagedCompanyMigrateRequest partnerManagedCompanyMigrateRequest) { Utils.checkNotNull(partnerManagedCompanyMigrateRequest, "partnerManagedCompanyMigrateRequest"); this.partnerManagedCompanyMigrateRequest = partnerManagedCompanyMigrateRequest; @@ -60,8 +60,8 @@ private PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest request = new PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest(companyUuid, - xGustoAPIVersion, + PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest request = new PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest(xGustoAPIVersion, + companyUuid, partnerManagedCompanyMigrateRequest); return request; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesEmployees.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesEmployees.java new file mode 100644 index 000000000..5146f6ef5 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesEmployees.java @@ -0,0 +1,168 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import org.openapitools.jackson.nullable.JsonNullable; + + +public class PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesEmployees { + /** + * The UUID of the employee + */ + @JsonProperty("uuid") + private String uuid; + + /** + * The starting balance for the employee + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("balance") + private JsonNullable balance; + + @JsonCreator + public PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesEmployees( + @JsonProperty("uuid") String uuid, + @JsonProperty("balance") JsonNullable balance) { + Utils.checkNotNull(uuid, "uuid"); + Utils.checkNotNull(balance, "balance"); + this.uuid = uuid; + this.balance = balance; + } + + public PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesEmployees( + String uuid) { + this(uuid, JsonNullable.undefined()); + } + + /** + * The UUID of the employee + */ + @JsonIgnore + public String uuid() { + return uuid; + } + + /** + * The starting balance for the employee + */ + @JsonIgnore + public JsonNullable balance() { + return balance; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * The UUID of the employee + */ + public PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesEmployees withUuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + /** + * The starting balance for the employee + */ + public PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesEmployees withBalance(String balance) { + Utils.checkNotNull(balance, "balance"); + this.balance = JsonNullable.of(balance); + return this; + } + + /** + * The starting balance for the employee + */ + public PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesEmployees withBalance(JsonNullable balance) { + Utils.checkNotNull(balance, "balance"); + this.balance = balance; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesEmployees other = (PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesEmployees) o; + return + Utils.enhancedDeepEquals(this.uuid, other.uuid) && + Utils.enhancedDeepEquals(this.balance, other.balance); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + uuid, balance); + } + + @Override + public String toString() { + return Utils.toString(PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesEmployees.class, + "uuid", uuid, + "balance", balance); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String uuid; + + private JsonNullable balance = JsonNullable.undefined(); + + private Builder() { + // force use of static builder() method + } + + + /** + * The UUID of the employee + */ + public Builder uuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + + /** + * The starting balance for the employee + */ + public Builder balance(String balance) { + Utils.checkNotNull(balance, "balance"); + this.balance = JsonNullable.of(balance); + return this; + } + + /** + * The starting balance for the employee + */ + public Builder balance(JsonNullable balance) { + Utils.checkNotNull(balance, "balance"); + this.balance = balance; + return this; + } + + public PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesEmployees build() { + + return new PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesEmployees( + uuid, balance); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesRequestBody.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesRequestBody.java index d370f2d4b..0e1fb12d9 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesRequestBody.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesRequestBody.java @@ -15,17 +15,17 @@ public class PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesRequestBody { @JsonProperty("employees") - private List employees; + private List employees; @JsonCreator public PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesRequestBody( - @JsonProperty("employees") List employees) { + @JsonProperty("employees") List employees) { Utils.checkNotNull(employees, "employees"); this.employees = employees; } @JsonIgnore - public List employees() { + public List employees() { return employees; } @@ -34,7 +34,7 @@ public static Builder builder() { } - public PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesRequestBody withEmployees(List employees) { + public PutV1TimeOffPoliciesTimeOffPolicyUuidAddEmployeesRequestBody withEmployees(List employees) { Utils.checkNotNull(employees, "employees"); this.employees = employees; return this; @@ -68,14 +68,14 @@ public String toString() { @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private List employees; + private List employees; private Builder() { // force use of static builder() method } - public Builder employees(List employees) { + public Builder employees(List employees) { Utils.checkNotNull(employees, "employees"); this.employees = employees; return this; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1VerifyWebhookSubscriptionUuidRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1VerifyWebhookSubscriptionUuidRequest.java index e9c279c5a..8cf890aaa 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1VerifyWebhookSubscriptionUuidRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1VerifyWebhookSubscriptionUuidRequest.java @@ -16,12 +16,6 @@ public class PutV1VerifyWebhookSubscriptionUuidRequest { - /** - * The webhook subscription UUID. - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=webhook_subscription_uuid") - private String webhookSubscriptionUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,35 +24,33 @@ public class PutV1VerifyWebhookSubscriptionUuidRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The webhook subscription UUID. + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=webhook_subscription_uuid") + private String webhookSubscriptionUuid; + @SpeakeasyMetadata("request:mediaType=application/json") private PutV1VerifyWebhookSubscriptionUuidRequestBody requestBody; @JsonCreator public PutV1VerifyWebhookSubscriptionUuidRequest( - String webhookSubscriptionUuid, Optional xGustoAPIVersion, + String webhookSubscriptionUuid, PutV1VerifyWebhookSubscriptionUuidRequestBody requestBody) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); Utils.checkNotNull(requestBody, "requestBody"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; this.xGustoAPIVersion = xGustoAPIVersion; + this.webhookSubscriptionUuid = webhookSubscriptionUuid; this.requestBody = requestBody; } public PutV1VerifyWebhookSubscriptionUuidRequest( String webhookSubscriptionUuid, PutV1VerifyWebhookSubscriptionUuidRequestBody requestBody) { - this(webhookSubscriptionUuid, Optional.empty(), requestBody); - } - - /** - * The webhook subscription UUID. - */ - @JsonIgnore - public String webhookSubscriptionUuid() { - return webhookSubscriptionUuid; + this(Optional.empty(), webhookSubscriptionUuid, requestBody); } /** @@ -72,6 +64,14 @@ public Optional xGusto return (Optional) xGustoAPIVersion; } + /** + * The webhook subscription UUID. + */ + @JsonIgnore + public String webhookSubscriptionUuid() { + return webhookSubscriptionUuid; + } + @JsonIgnore public PutV1VerifyWebhookSubscriptionUuidRequestBody requestBody() { return requestBody; @@ -82,15 +82,6 @@ public static Builder builder() { } - /** - * The webhook subscription UUID. - */ - public PutV1VerifyWebhookSubscriptionUuidRequest withWebhookSubscriptionUuid(String webhookSubscriptionUuid) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -114,6 +105,15 @@ public PutV1VerifyWebhookSubscriptionUuidRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String webhookSubscriptionUuid; + private PutV1VerifyWebhookSubscriptionUuidRequestBody requestBody; private Builder() { @@ -163,16 +163,6 @@ private Builder() { } - /** - * The webhook subscription UUID. - */ - public Builder webhookSubscriptionUuid(String webhookSubscriptionUuid) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -196,6 +186,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String webhookSubscriptionUuid; private PutV1VerifyWebhookSubscriptionUuidRequestBody requestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -35,12 +35,6 @@ public PutV1VerifyWebhookSubscriptionUuidRequestBuilder security(PutV1VerifyWebh this.security = security; return this; } - - public PutV1VerifyWebhookSubscriptionUuidRequestBuilder webhookSubscriptionUuid(String webhookSubscriptionUuid) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; - return this; - } public PutV1VerifyWebhookSubscriptionUuidRequestBuilder xGustoAPIVersion(PutV1VerifyWebhookSubscriptionUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -54,6 +48,12 @@ public PutV1VerifyWebhookSubscriptionUuidRequestBuilder xGustoAPIVersion(Optiona return this; } + public PutV1VerifyWebhookSubscriptionUuidRequestBuilder webhookSubscriptionUuid(String webhookSubscriptionUuid) { + Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); + this.webhookSubscriptionUuid = webhookSubscriptionUuid; + return this; + } + public PutV1VerifyWebhookSubscriptionUuidRequestBuilder requestBody(PutV1VerifyWebhookSubscriptionUuidRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); this.requestBody = requestBody; @@ -66,8 +66,8 @@ private PutV1VerifyWebhookSubscriptionUuidRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PutV1VerifyWebhookSubscriptionUuidRequest request = new PutV1VerifyWebhookSubscriptionUuidRequest(webhookSubscriptionUuid, - xGustoAPIVersion, + PutV1VerifyWebhookSubscriptionUuidRequest request = new PutV1VerifyWebhookSubscriptionUuidRequest(xGustoAPIVersion, + webhookSubscriptionUuid, requestBody); return request; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1WebhookSubscriptionUuidRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1WebhookSubscriptionUuidRequest.java index 876442f4a..9cbce8ad2 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1WebhookSubscriptionUuidRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutV1WebhookSubscriptionUuidRequest.java @@ -16,12 +16,6 @@ public class PutV1WebhookSubscriptionUuidRequest { - /** - * The webhook subscription UUID. - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=webhook_subscription_uuid") - private String webhookSubscriptionUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,35 +24,33 @@ public class PutV1WebhookSubscriptionUuidRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The webhook subscription UUID. + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=webhook_subscription_uuid") + private String webhookSubscriptionUuid; + @SpeakeasyMetadata("request:mediaType=application/json") private PutV1WebhookSubscriptionUuidRequestBody requestBody; @JsonCreator public PutV1WebhookSubscriptionUuidRequest( - String webhookSubscriptionUuid, Optional xGustoAPIVersion, + String webhookSubscriptionUuid, PutV1WebhookSubscriptionUuidRequestBody requestBody) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); Utils.checkNotNull(requestBody, "requestBody"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; this.xGustoAPIVersion = xGustoAPIVersion; + this.webhookSubscriptionUuid = webhookSubscriptionUuid; this.requestBody = requestBody; } public PutV1WebhookSubscriptionUuidRequest( String webhookSubscriptionUuid, PutV1WebhookSubscriptionUuidRequestBody requestBody) { - this(webhookSubscriptionUuid, Optional.empty(), requestBody); - } - - /** - * The webhook subscription UUID. - */ - @JsonIgnore - public String webhookSubscriptionUuid() { - return webhookSubscriptionUuid; + this(Optional.empty(), webhookSubscriptionUuid, requestBody); } /** @@ -72,6 +64,14 @@ public Optional xGustoAPIVer return (Optional) xGustoAPIVersion; } + /** + * The webhook subscription UUID. + */ + @JsonIgnore + public String webhookSubscriptionUuid() { + return webhookSubscriptionUuid; + } + @JsonIgnore public PutV1WebhookSubscriptionUuidRequestBody requestBody() { return requestBody; @@ -82,15 +82,6 @@ public static Builder builder() { } - /** - * The webhook subscription UUID. - */ - public PutV1WebhookSubscriptionUuidRequest withWebhookSubscriptionUuid(String webhookSubscriptionUuid) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -114,6 +105,15 @@ public PutV1WebhookSubscriptionUuidRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String webhookSubscriptionUuid; + private PutV1WebhookSubscriptionUuidRequestBody requestBody; private Builder() { @@ -163,16 +163,6 @@ private Builder() { } - /** - * The webhook subscription UUID. - */ - public Builder webhookSubscriptionUuid(String webhookSubscriptionUuid) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -196,6 +186,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String webhookSubscriptionUuid; private PutV1WebhookSubscriptionUuidRequestBody requestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -35,12 +35,6 @@ public PutV1WebhookSubscriptionUuidRequestBuilder security(PutV1WebhookSubscript this.security = security; return this; } - - public PutV1WebhookSubscriptionUuidRequestBuilder webhookSubscriptionUuid(String webhookSubscriptionUuid) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; - return this; - } public PutV1WebhookSubscriptionUuidRequestBuilder xGustoAPIVersion(PutV1WebhookSubscriptionUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -54,6 +48,12 @@ public PutV1WebhookSubscriptionUuidRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion; + /** + * The UUID of the work address + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=work_address_uuid") + private String workAddressUuid; + @SpeakeasyMetadata("request:mediaType=application/json") private PutV1WorkAddressesWorkAddressUuidRequestBody requestBody; @JsonCreator public PutV1WorkAddressesWorkAddressUuidRequest( - String workAddressUuid, Optional xGustoAPIVersion, + String workAddressUuid, PutV1WorkAddressesWorkAddressUuidRequestBody requestBody) { - Utils.checkNotNull(workAddressUuid, "workAddressUuid"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(workAddressUuid, "workAddressUuid"); Utils.checkNotNull(requestBody, "requestBody"); - this.workAddressUuid = workAddressUuid; this.xGustoAPIVersion = xGustoAPIVersion; + this.workAddressUuid = workAddressUuid; this.requestBody = requestBody; } public PutV1WorkAddressesWorkAddressUuidRequest( String workAddressUuid, PutV1WorkAddressesWorkAddressUuidRequestBody requestBody) { - this(workAddressUuid, Optional.empty(), requestBody); - } - - /** - * The UUID of the work address - */ - @JsonIgnore - public String workAddressUuid() { - return workAddressUuid; + this(Optional.empty(), workAddressUuid, requestBody); } /** @@ -72,6 +64,14 @@ public Optional xGustoA return (Optional) xGustoAPIVersion; } + /** + * The UUID of the work address + */ + @JsonIgnore + public String workAddressUuid() { + return workAddressUuid; + } + @JsonIgnore public PutV1WorkAddressesWorkAddressUuidRequestBody requestBody() { return requestBody; @@ -82,15 +82,6 @@ public static Builder builder() { } - /** - * The UUID of the work address - */ - public PutV1WorkAddressesWorkAddressUuidRequest withWorkAddressUuid(String workAddressUuid) { - Utils.checkNotNull(workAddressUuid, "workAddressUuid"); - this.workAddressUuid = workAddressUuid; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -114,6 +105,15 @@ public PutV1WorkAddressesWorkAddressUuidRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String workAddressUuid; + private PutV1WorkAddressesWorkAddressUuidRequestBody requestBody; private Builder() { @@ -163,16 +163,6 @@ private Builder() { } - /** - * The UUID of the work address - */ - public Builder workAddressUuid(String workAddressUuid) { - Utils.checkNotNull(workAddressUuid, "workAddressUuid"); - this.workAddressUuid = workAddressUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -196,6 +186,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String workAddressUuid; private PutV1WorkAddressesWorkAddressUuidRequestBody requestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -28,12 +28,6 @@ public class PutV1WorkAddressesWorkAddressUuidRequestBuilder { public PutV1WorkAddressesWorkAddressUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutV1WorkAddressesWorkAddressUuidRequestBuilder workAddressUuid(String workAddressUuid) { - Utils.checkNotNull(workAddressUuid, "workAddressUuid"); - this.workAddressUuid = workAddressUuid; - return this; - } public PutV1WorkAddressesWorkAddressUuidRequestBuilder xGustoAPIVersion(PutV1WorkAddressesWorkAddressUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -47,6 +41,12 @@ public PutV1WorkAddressesWorkAddressUuidRequestBuilder xGustoAPIVersion(Optional return this; } + public PutV1WorkAddressesWorkAddressUuidRequestBuilder workAddressUuid(String workAddressUuid) { + Utils.checkNotNull(workAddressUuid, "workAddressUuid"); + this.workAddressUuid = workAddressUuid; + return this; + } + public PutV1WorkAddressesWorkAddressUuidRequestBuilder requestBody(PutV1WorkAddressesWorkAddressUuidRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); this.requestBody = requestBody; @@ -59,8 +59,8 @@ private PutV1WorkAddressesWorkAddressUuidRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PutV1WorkAddressesWorkAddressUuidRequest request = new PutV1WorkAddressesWorkAddressUuidRequest(workAddressUuid, - xGustoAPIVersion, + PutV1WorkAddressesWorkAddressUuidRequest request = new PutV1WorkAddressesWorkAddressUuidRequest(xGustoAPIVersion, + workAddressUuid, requestBody); return request; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutWireInRequestsWireInRequestUuidRequest.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutWireInRequestsWireInRequestUuidRequest.java index 6a58207a0..c53aa4a06 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutWireInRequestsWireInRequestUuidRequest.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/PutWireInRequestsWireInRequestUuidRequest.java @@ -17,12 +17,6 @@ public class PutWireInRequestsWireInRequestUuidRequest { - /** - * The UUID of the Wire In Request - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=wire_in_request_uuid") - private String wireInRequestUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -31,35 +25,33 @@ public class PutWireInRequestsWireInRequestUuidRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the Wire In Request + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=wire_in_request_uuid") + private String wireInRequestUuid; + @SpeakeasyMetadata("request:mediaType=application/json") private WireInRequestUpdateRequestBody wireInRequestUpdateRequestBody; @JsonCreator public PutWireInRequestsWireInRequestUuidRequest( - String wireInRequestUuid, Optional xGustoAPIVersion, + String wireInRequestUuid, WireInRequestUpdateRequestBody wireInRequestUpdateRequestBody) { - Utils.checkNotNull(wireInRequestUuid, "wireInRequestUuid"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(wireInRequestUuid, "wireInRequestUuid"); Utils.checkNotNull(wireInRequestUpdateRequestBody, "wireInRequestUpdateRequestBody"); - this.wireInRequestUuid = wireInRequestUuid; this.xGustoAPIVersion = xGustoAPIVersion; + this.wireInRequestUuid = wireInRequestUuid; this.wireInRequestUpdateRequestBody = wireInRequestUpdateRequestBody; } public PutWireInRequestsWireInRequestUuidRequest( String wireInRequestUuid, WireInRequestUpdateRequestBody wireInRequestUpdateRequestBody) { - this(wireInRequestUuid, Optional.empty(), wireInRequestUpdateRequestBody); - } - - /** - * The UUID of the Wire In Request - */ - @JsonIgnore - public String wireInRequestUuid() { - return wireInRequestUuid; + this(Optional.empty(), wireInRequestUuid, wireInRequestUpdateRequestBody); } /** @@ -73,6 +65,14 @@ public Optional xGusto return (Optional) xGustoAPIVersion; } + /** + * The UUID of the Wire In Request + */ + @JsonIgnore + public String wireInRequestUuid() { + return wireInRequestUuid; + } + @JsonIgnore public WireInRequestUpdateRequestBody wireInRequestUpdateRequestBody() { return wireInRequestUpdateRequestBody; @@ -83,15 +83,6 @@ public static Builder builder() { } - /** - * The UUID of the Wire In Request - */ - public PutWireInRequestsWireInRequestUuidRequest withWireInRequestUuid(String wireInRequestUuid) { - Utils.checkNotNull(wireInRequestUuid, "wireInRequestUuid"); - this.wireInRequestUuid = wireInRequestUuid; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -115,6 +106,15 @@ public PutWireInRequestsWireInRequestUuidRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String wireInRequestUuid; + private WireInRequestUpdateRequestBody wireInRequestUpdateRequestBody; private Builder() { @@ -164,16 +164,6 @@ private Builder() { } - /** - * The UUID of the Wire In Request - */ - public Builder wireInRequestUuid(String wireInRequestUuid) { - Utils.checkNotNull(wireInRequestUuid, "wireInRequestUuid"); - this.wireInRequestUuid = wireInRequestUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -197,6 +187,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String wireInRequestUuid; private WireInRequestUpdateRequestBody wireInRequestUpdateRequestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -29,12 +29,6 @@ public class PutWireInRequestsWireInRequestUuidRequestBuilder { public PutWireInRequestsWireInRequestUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutWireInRequestsWireInRequestUuidRequestBuilder wireInRequestUuid(String wireInRequestUuid) { - Utils.checkNotNull(wireInRequestUuid, "wireInRequestUuid"); - this.wireInRequestUuid = wireInRequestUuid; - return this; - } public PutWireInRequestsWireInRequestUuidRequestBuilder xGustoAPIVersion(PutWireInRequestsWireInRequestUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -48,6 +42,12 @@ public PutWireInRequestsWireInRequestUuidRequestBuilder xGustoAPIVersion(Optiona return this; } + public PutWireInRequestsWireInRequestUuidRequestBuilder wireInRequestUuid(String wireInRequestUuid) { + Utils.checkNotNull(wireInRequestUuid, "wireInRequestUuid"); + this.wireInRequestUuid = wireInRequestUuid; + return this; + } + public PutWireInRequestsWireInRequestUuidRequestBuilder wireInRequestUpdateRequestBody(WireInRequestUpdateRequestBody wireInRequestUpdateRequestBody) { Utils.checkNotNull(wireInRequestUpdateRequestBody, "wireInRequestUpdateRequestBody"); this.wireInRequestUpdateRequestBody = wireInRequestUpdateRequestBody; @@ -60,8 +60,8 @@ private PutWireInRequestsWireInRequestUuidRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PutWireInRequestsWireInRequestUuidRequest request = new PutWireInRequestsWireInRequestUuidRequest(wireInRequestUuid, - xGustoAPIVersion, + PutWireInRequestsWireInRequestUuidRequest request = new PutWireInRequestsWireInRequestUuidRequest(xGustoAPIVersion, + wireInRequestUuid, wireInRequestUpdateRequestBody); return request; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/QueryParamInclude.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/QueryParamInclude.java index c1a07fc2a..887182aa3 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/QueryParamInclude.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/QueryParamInclude.java @@ -8,13 +8,15 @@ import java.util.Objects; import java.util.Optional; +/** + * QueryParamInclude + * + *

    Available options: + * - all_benefits: Include all effective dated benefits for each employee instead of only the current + * benefits. + */ public enum QueryParamInclude { - ALL_COMPENSATIONS("all_compensations"), - ALL_HOME_ADDRESSES("all_home_addresses"), - COMPANY_NAME("company_name"), - CURRENT_HOME_ADDRESS("current_home_address"), - CUSTOM_FIELDS("custom_fields"), - PORTAL_INVITATIONS("portal_invitations"); + ALL_BENEFITS("all_benefits"); @JsonValue private final String value; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/SubscriptionTypes.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/SubscriptionTypes.java index b1a36e8da..0d48e83ef 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/SubscriptionTypes.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/SubscriptionTypes.java @@ -25,7 +25,8 @@ public enum SubscriptionTypes { PAYROLL_SYNC("PayrollSync"), PAY_SCHEDULE("PaySchedule"), PEOPLE_BATCH("PeopleBatch"), - SIGNATORY("Signatory"); + SIGNATORY("Signatory"), + TIME_OFF_REQUEST("TimeOffRequest"); @JsonValue private final String value; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/Type.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/Type.java index 31b98f652..48923486e 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/Type.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/Type.java @@ -11,12 +11,12 @@ /** * Type * - *

    The payment method type. If type is Check, split_by and splits do not need to be populated. If type - * is Direct Deposit, split_by and splits are required. + *

    The payment method type. If type is Direct Deposit, the contractor is required to have a bank + * account. See [Bank account endpoint](./post-v1-contractors-contractor_uuid-bank_accounts). */ public enum Type { - CHECK("Check"), - DIRECT_DEPOSIT("Direct Deposit"); + DIRECT_DEPOSIT("Direct Deposit"), + CHECK("Check"); @JsonValue private final String value; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/DeleteDepartmentRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/DeleteDepartmentRequestBuilder.java index 60c39a505..f7b374b2d 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/DeleteDepartmentRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/DeleteDepartmentRequestBuilder.java @@ -19,23 +19,17 @@ public class DeleteDepartmentRequestBuilder { - private String departmentUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String departmentUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public DeleteDepartmentRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public DeleteDepartmentRequestBuilder departmentUuid(String departmentUuid) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); - this.departmentUuid = departmentUuid; - return this; - } public DeleteDepartmentRequestBuilder xGustoAPIVersion(DeleteDepartmentHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public DeleteDepartmentRequestBuilder xGustoAPIVersion(Optional async = Optional.empty(); private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String companyId; + private String payrollId; + private Optional async = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public DeleteV1CompaniesCompanyIdPayrollsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } + + public DeleteV1CompaniesCompanyIdPayrollsRequestBuilder xGustoAPIVersion(DeleteV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public DeleteV1CompaniesCompanyIdPayrollsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } public DeleteV1CompaniesCompanyIdPayrollsRequestBuilder companyId(String companyId) { Utils.checkNotNull(companyId, "companyId"); @@ -57,18 +69,6 @@ public DeleteV1CompaniesCompanyIdPayrollsRequestBuilder async(Optional this.async = async; return this; } - - public DeleteV1CompaniesCompanyIdPayrollsRequestBuilder xGustoAPIVersion(DeleteV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); - return this; - } - - public DeleteV1CompaniesCompanyIdPayrollsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } private DeleteV1CompaniesCompanyIdPayrollsRequest buildRequest() { @@ -76,10 +76,10 @@ private DeleteV1CompaniesCompanyIdPayrollsRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - DeleteV1CompaniesCompanyIdPayrollsRequest request = new DeleteV1CompaniesCompanyIdPayrollsRequest(companyId, + DeleteV1CompaniesCompanyIdPayrollsRequest request = new DeleteV1CompaniesCompanyIdPayrollsRequest(xGustoAPIVersion, + companyId, payrollId, - async, - xGustoAPIVersion); + async); return request; } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder.java index 4dda71811..bb2628527 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder.java @@ -19,30 +19,18 @@ public class DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder { - private String companyUuid; - private String signatoryUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String companyUuid; + private String signatoryUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder signatoryUuid(String signatoryUuid) { - Utils.checkNotNull(signatoryUuid, "signatoryUuid"); - this.signatoryUuid = signatoryUuid; - return this; - } public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder xGustoAPIVersion(DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -56,15 +44,27 @@ public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder xGusto return this; } + public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder signatoryUuid(String signatoryUuid) { + Utils.checkNotNull(signatoryUuid, "signatoryUuid"); + this.signatoryUuid = signatoryUuid; + return this; + } + private DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest request = new DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest(companyUuid, - signatoryUuid, - xGustoAPIVersion); + DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest request = new DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest(xGustoAPIVersion, + companyUuid, + signatoryUuid); return request; } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder.java index 5fe33ebe5..7aadf43f6 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder.java @@ -19,23 +19,17 @@ public class DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder { - private String contractorPaymentGroupUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String contractorPaymentGroupUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder contractorPaymentGroupUuid(String contractorPaymentGroupUuid) { - Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); - this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; - return this; - } public DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder xGustoAPIVersion(DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder xGu return this; } + public DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder contractorPaymentGroupUuid(String contractorPaymentGroupUuid) { + Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); + this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; + return this; + } + private DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest request = new DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest(contractorPaymentGroupUuid, - xGustoAPIVersion); + DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest request = new DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest(xGustoAPIVersion, + contractorPaymentGroupUuid); return request; } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder.java new file mode 100644 index 000000000..3744d7b1d --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder.java @@ -0,0 +1,79 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations.async; + +import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.AsyncRequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2025_11_15.SDKConfiguration; +import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest; +import com.gusto.embedded_api_v_2025_11_15.operations.DeleteV1ContractorsContractorUuidMemberPortalInvitations; +import com.gusto.embedded_api_v_2025_11_15.utils.Headers; +import com.gusto.embedded_api_v_2025_11_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.String; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; + +public class DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder { + + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2025-11-15\"", + new TypeReference>() {}); + private String contractorUuid; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder xGustoAPIVersion(DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder contractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + + + private DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest request = new DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest(xGustoAPIVersion, + contractorUuid); + + return request; + } + + public CompletableFuture call() { + + AsyncRequestOperation operation + = new DeleteV1ContractorsContractorUuidMemberPortalInvitations.Async(sdkConfiguration, _headers); + DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest request = buildRequest(); + + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2025-11-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse.java new file mode 100644 index 000000000..2a2586722 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse.java @@ -0,0 +1,181 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations.async; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2025_11_15.utils.AsyncResponse; +import com.gusto.embedded_api_v_2025_11_15.utils.Blob; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.net.http.HttpResponse; + + +public class DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse implements AsyncResponse { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + @JsonCreator + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse other = (DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse); + } + + @Override + public String toString() { + return Utils.toString(DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse build() { + + return new DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse( + contentType, statusCode, rawResponse); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/DeleteV1ContractorsContractorUuidRehireRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/DeleteV1ContractorsContractorUuidRehireRequestBuilder.java index b8df94ca7..7daa98af7 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/DeleteV1ContractorsContractorUuidRehireRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/DeleteV1ContractorsContractorUuidRehireRequestBuilder.java @@ -19,23 +19,17 @@ public class DeleteV1ContractorsContractorUuidRehireRequestBuilder { - private String contractorUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String contractorUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public DeleteV1ContractorsContractorUuidRehireRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public DeleteV1ContractorsContractorUuidRehireRequestBuilder contractorUuid(String contractorUuid) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); - this.contractorUuid = contractorUuid; - return this; - } public DeleteV1ContractorsContractorUuidRehireRequestBuilder xGustoAPIVersion(DeleteV1ContractorsContractorUuidRehireHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public DeleteV1ContractorsContractorUuidRehireRequestBuilder xGustoAPIVersion(Op return this; } + public DeleteV1ContractorsContractorUuidRehireRequestBuilder contractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + private DeleteV1ContractorsContractorUuidRehireRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - DeleteV1ContractorsContractorUuidRehireRequest request = new DeleteV1ContractorsContractorUuidRehireRequest(contractorUuid, - xGustoAPIVersion); + DeleteV1ContractorsContractorUuidRehireRequest request = new DeleteV1ContractorsContractorUuidRehireRequest(xGustoAPIVersion, + contractorUuid); return request; } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/DeleteV1ContractorsContractorUuidTerminationRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/DeleteV1ContractorsContractorUuidTerminationRequestBuilder.java index 504676e26..bc2339ea4 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/DeleteV1ContractorsContractorUuidTerminationRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/DeleteV1ContractorsContractorUuidTerminationRequestBuilder.java @@ -19,23 +19,17 @@ public class DeleteV1ContractorsContractorUuidTerminationRequestBuilder { - private String contractorUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String contractorUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public DeleteV1ContractorsContractorUuidTerminationRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public DeleteV1ContractorsContractorUuidTerminationRequestBuilder contractorUuid(String contractorUuid) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); - this.contractorUuid = contractorUuid; - return this; - } public DeleteV1ContractorsContractorUuidTerminationRequestBuilder xGustoAPIVersion(DeleteV1ContractorsContractorUuidTerminationHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public DeleteV1ContractorsContractorUuidTerminationRequestBuilder xGustoAPIVersi return this; } + public DeleteV1ContractorsContractorUuidTerminationRequestBuilder contractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + private DeleteV1ContractorsContractorUuidTerminationRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - DeleteV1ContractorsContractorUuidTerminationRequest request = new DeleteV1ContractorsContractorUuidTerminationRequest(contractorUuid, - xGustoAPIVersion); + DeleteV1ContractorsContractorUuidTerminationRequest request = new DeleteV1ContractorsContractorUuidTerminationRequest(xGustoAPIVersion, + contractorUuid); return request; } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java new file mode 100644 index 000000000..3acb063af --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java @@ -0,0 +1,79 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations.async; + +import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.AsyncRequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2025_11_15.SDKConfiguration; +import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest; +import com.gusto.embedded_api_v_2025_11_15.operations.DeleteV1EmployeesEmployeeIdMemberPortalInvitations; +import com.gusto.embedded_api_v_2025_11_15.utils.Headers; +import com.gusto.embedded_api_v_2025_11_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.String; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; + +public class DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder { + + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2025-11-15\"", + new TypeReference>() {}); + private String employeeId; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder xGustoAPIVersion(DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder employeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + + + private DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest request = new DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest(xGustoAPIVersion, + employeeId); + + return request; + } + + public CompletableFuture call() { + + AsyncRequestOperation operation + = new DeleteV1EmployeesEmployeeIdMemberPortalInvitations.Async(sdkConfiguration, _headers); + DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest request = buildRequest(); + + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2025-11-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java new file mode 100644 index 000000000..0623552cc --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java @@ -0,0 +1,181 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations.async; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2025_11_15.utils.AsyncResponse; +import com.gusto.embedded_api_v_2025_11_15.utils.Blob; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.net.http.HttpResponse; + + +public class DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse implements AsyncResponse { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + @JsonCreator + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse other = (DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse); + } + + @Override + public String toString() { + return Utils.toString(DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse build() { + + return new DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse( + contentType, statusCode, rawResponse); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/DeleteV1JobsJobIdRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/DeleteV1JobsJobIdRequestBuilder.java index ed5075fc8..011e61713 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/DeleteV1JobsJobIdRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/DeleteV1JobsJobIdRequestBuilder.java @@ -19,23 +19,17 @@ public class DeleteV1JobsJobIdRequestBuilder { - private String jobId; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String jobId; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public DeleteV1JobsJobIdRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public DeleteV1JobsJobIdRequestBuilder jobId(String jobId) { - Utils.checkNotNull(jobId, "jobId"); - this.jobId = jobId; - return this; - } public DeleteV1JobsJobIdRequestBuilder xGustoAPIVersion(DeleteV1JobsJobIdHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public DeleteV1JobsJobIdRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String webhookSubscriptionUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -38,12 +38,6 @@ public DeleteV1WebhookSubscriptionUuidRequestBuilder security(DeleteV1WebhookSub this.security = security; return this; } - - public DeleteV1WebhookSubscriptionUuidRequestBuilder webhookSubscriptionUuid(String webhookSubscriptionUuid) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; - return this; - } public DeleteV1WebhookSubscriptionUuidRequestBuilder xGustoAPIVersion(DeleteV1WebhookSubscriptionUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -57,14 +51,20 @@ public DeleteV1WebhookSubscriptionUuidRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String workAddressUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public DeleteV1WorkAddressesWorkAddressUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public DeleteV1WorkAddressesWorkAddressUuidRequestBuilder workAddressUuid(String workAddressUuid) { - Utils.checkNotNull(workAddressUuid, "workAddressUuid"); - this.workAddressUuid = workAddressUuid; - return this; - } public DeleteV1WorkAddressesWorkAddressUuidRequestBuilder xGustoAPIVersion(DeleteV1WorkAddressesWorkAddressUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public DeleteV1WorkAddressesWorkAddressUuidRequestBuilder xGustoAPIVersion(Optio return this; } + public DeleteV1WorkAddressesWorkAddressUuidRequestBuilder workAddressUuid(String workAddressUuid) { + Utils.checkNotNull(workAddressUuid, "workAddressUuid"); + this.workAddressUuid = workAddressUuid; + return this; + } + private DeleteV1WorkAddressesWorkAddressUuidRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - DeleteV1WorkAddressesWorkAddressUuidRequest request = new DeleteV1WorkAddressesWorkAddressUuidRequest(workAddressUuid, - xGustoAPIVersion); + DeleteV1WorkAddressesWorkAddressUuidRequest request = new DeleteV1WorkAddressesWorkAddressUuidRequest(xGustoAPIVersion, + workAddressUuid); return request; } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder.java index ca3de49e6..9ac1faaa8 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder.java @@ -20,11 +20,11 @@ public class GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder { - private String companyUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String companyUuid; private Optional page = Optional.empty(); private Optional per = Optional.empty(); private final SDKConfiguration sdkConfiguration; @@ -33,12 +33,6 @@ public class GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder { public GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder xGustoAPIVersion(GetCompaniesCompanyUuidWireInRequestUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder xGustoAPIVersion(O this.xGustoAPIVersion = xGustoAPIVersion; return this; } + + public GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } public GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder page(long page) { Utils.checkNotNull(page, "page"); @@ -82,8 +82,8 @@ private GetCompaniesCompanyUuidWireInRequestUuidRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetCompaniesCompanyUuidWireInRequestUuidRequest request = new GetCompaniesCompanyUuidWireInRequestUuidRequest(companyUuid, - xGustoAPIVersion, + GetCompaniesCompanyUuidWireInRequestUuidRequest request = new GetCompaniesCompanyUuidWireInRequestUuidRequest(xGustoAPIVersion, + companyUuid, page, per); diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetCompaniesDepartmentsRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetCompaniesDepartmentsRequestBuilder.java index fbbedf5ab..56378ffe1 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetCompaniesDepartmentsRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetCompaniesDepartmentsRequestBuilder.java @@ -19,23 +19,17 @@ public class GetCompaniesDepartmentsRequestBuilder { - private String companyUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String companyUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetCompaniesDepartmentsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetCompaniesDepartmentsRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public GetCompaniesDepartmentsRequestBuilder xGustoAPIVersion(GetCompaniesDepartmentsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public GetCompaniesDepartmentsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String departmentUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetDepartmentRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetDepartmentRequestBuilder departmentUuid(String departmentUuid) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); - this.departmentUuid = departmentUuid; - return this; - } public GetDepartmentRequestBuilder xGustoAPIVersion(GetDepartmentHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public GetDepartmentRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String notificationUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetNotificationsNotificationUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetNotificationsNotificationUuidRequestBuilder notificationUuid(String notificationUuid) { - Utils.checkNotNull(notificationUuid, "notificationUuid"); - this.notificationUuid = notificationUuid; - return this; - } public GetNotificationsNotificationUuidRequestBuilder xGustoAPIVersion(GetNotificationsNotificationUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public GetNotificationsNotificationUuidRequestBuilder xGustoAPIVersion(Optional< return this; } + public GetNotificationsNotificationUuidRequestBuilder notificationUuid(String notificationUuid) { + Utils.checkNotNull(notificationUuid, "notificationUuid"); + this.notificationUuid = notificationUuid; + return this; + } + private GetNotificationsNotificationUuidRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetNotificationsNotificationUuidRequest request = new GetNotificationsNotificationUuidRequest(notificationUuid, - xGustoAPIVersion); + GetNotificationsNotificationUuidRequest request = new GetNotificationsNotificationUuidRequest(xGustoAPIVersion, + notificationUuid); return request; } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetReverseWireTransactionsRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetReverseWireTransactionsRequestBuilder.java new file mode 100644 index 000000000..2c5613abf --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetReverseWireTransactionsRequestBuilder.java @@ -0,0 +1,39 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations.async; + +import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.AsyncRequestOperation; + +import com.gusto.embedded_api_v_2025_11_15.SDKConfiguration; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetReverseWireTransactionsRequest; +import com.gusto.embedded_api_v_2025_11_15.operations.GetReverseWireTransactions; +import com.gusto.embedded_api_v_2025_11_15.utils.Headers; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.util.concurrent.CompletableFuture; + +public class GetReverseWireTransactionsRequestBuilder { + + private GetReverseWireTransactionsRequest request; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public GetReverseWireTransactionsRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public GetReverseWireTransactionsRequestBuilder request(GetReverseWireTransactionsRequest request) { + Utils.checkNotNull(request, "request"); + this.request = request; + return this; + } + + public CompletableFuture call() { + + AsyncRequestOperation operation + = new GetReverseWireTransactions.Async(sdkConfiguration, _headers); + + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetReverseWireTransactionsResponse.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetReverseWireTransactionsResponse.java new file mode 100644 index 000000000..24356aa98 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetReverseWireTransactionsResponse.java @@ -0,0 +1,254 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations.async; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2025_11_15.models.components.ReverseWireTransaction; +import com.gusto.embedded_api_v_2025_11_15.utils.AsyncResponse; +import com.gusto.embedded_api_v_2025_11_15.utils.Blob; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.List; +import java.util.Optional; + + +public class GetReverseWireTransactionsResponse implements AsyncResponse { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * Example response + */ + private Optional> reverseWireTransactionList; + + @JsonCreator + public GetReverseWireTransactionsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional> reverseWireTransactionList) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(reverseWireTransactionList, "reverseWireTransactionList"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.reverseWireTransactionList = reverseWireTransactionList; + } + + public GetReverseWireTransactionsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * Example response + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> reverseWireTransactionList() { + return (Optional>) reverseWireTransactionList; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public GetReverseWireTransactionsResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public GetReverseWireTransactionsResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public GetReverseWireTransactionsResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * Example response + */ + public GetReverseWireTransactionsResponse withReverseWireTransactionList(List reverseWireTransactionList) { + Utils.checkNotNull(reverseWireTransactionList, "reverseWireTransactionList"); + this.reverseWireTransactionList = Optional.ofNullable(reverseWireTransactionList); + return this; + } + + + /** + * Example response + */ + public GetReverseWireTransactionsResponse withReverseWireTransactionList(Optional> reverseWireTransactionList) { + Utils.checkNotNull(reverseWireTransactionList, "reverseWireTransactionList"); + this.reverseWireTransactionList = reverseWireTransactionList; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetReverseWireTransactionsResponse other = (GetReverseWireTransactionsResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.reverseWireTransactionList, other.reverseWireTransactionList); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + reverseWireTransactionList); + } + + @Override + public String toString() { + return Utils.toString(GetReverseWireTransactionsResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "reverseWireTransactionList", reverseWireTransactionList); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional> reverseWireTransactionList = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * Example response + */ + public Builder reverseWireTransactionList(List reverseWireTransactionList) { + Utils.checkNotNull(reverseWireTransactionList, "reverseWireTransactionList"); + this.reverseWireTransactionList = Optional.ofNullable(reverseWireTransactionList); + return this; + } + + /** + * Example response + */ + public Builder reverseWireTransactionList(Optional> reverseWireTransactionList) { + Utils.checkNotNull(reverseWireTransactionList, "reverseWireTransactionList"); + this.reverseWireTransactionList = reverseWireTransactionList; + return this; + } + + public GetReverseWireTransactionsResponse build() { + + return new GetReverseWireTransactionsResponse( + contentType, statusCode, rawResponse, + reverseWireTransactionList); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetTaxPaymentRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetTaxPaymentRequestBuilder.java new file mode 100644 index 000000000..fb1e50a53 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetTaxPaymentRequestBuilder.java @@ -0,0 +1,87 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations.async; + +import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.AsyncRequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2025_11_15.SDKConfiguration; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetTaxPaymentHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetTaxPaymentRequest; +import com.gusto.embedded_api_v_2025_11_15.operations.GetTaxPayment; +import com.gusto.embedded_api_v_2025_11_15.utils.Headers; +import com.gusto.embedded_api_v_2025_11_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.String; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; + +public class GetTaxPaymentRequestBuilder { + + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2025-11-15\"", + new TypeReference>() {}); + private String companyUuid; + private String uuid; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public GetTaxPaymentRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public GetTaxPaymentRequestBuilder xGustoAPIVersion(GetTaxPaymentHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetTaxPaymentRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public GetTaxPaymentRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + public GetTaxPaymentRequestBuilder uuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + + private GetTaxPaymentRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + GetTaxPaymentRequest request = new GetTaxPaymentRequest(xGustoAPIVersion, + companyUuid, + uuid); + + return request; + } + + public CompletableFuture call() { + + AsyncRequestOperation operation + = new GetTaxPayment.Async(sdkConfiguration, _headers); + GetTaxPaymentRequest request = buildRequest(); + + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2025-11-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetTaxPaymentResponse.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetTaxPaymentResponse.java new file mode 100644 index 000000000..5ff332576 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetTaxPaymentResponse.java @@ -0,0 +1,253 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations.async; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2025_11_15.models.components.TaxPayment; +import com.gusto.embedded_api_v_2025_11_15.utils.AsyncResponse; +import com.gusto.embedded_api_v_2025_11_15.utils.Blob; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.Optional; + + +public class GetTaxPaymentResponse implements AsyncResponse { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * Success + */ + private Optional taxPayment; + + @JsonCreator + public GetTaxPaymentResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional taxPayment) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(taxPayment, "taxPayment"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.taxPayment = taxPayment; + } + + public GetTaxPaymentResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * Success + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional taxPayment() { + return (Optional) taxPayment; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public GetTaxPaymentResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public GetTaxPaymentResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public GetTaxPaymentResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * Success + */ + public GetTaxPaymentResponse withTaxPayment(TaxPayment taxPayment) { + Utils.checkNotNull(taxPayment, "taxPayment"); + this.taxPayment = Optional.ofNullable(taxPayment); + return this; + } + + + /** + * Success + */ + public GetTaxPaymentResponse withTaxPayment(Optional taxPayment) { + Utils.checkNotNull(taxPayment, "taxPayment"); + this.taxPayment = taxPayment; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetTaxPaymentResponse other = (GetTaxPaymentResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.taxPayment, other.taxPayment); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + taxPayment); + } + + @Override + public String toString() { + return Utils.toString(GetTaxPaymentResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "taxPayment", taxPayment); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional taxPayment = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * Success + */ + public Builder taxPayment(TaxPayment taxPayment) { + Utils.checkNotNull(taxPayment, "taxPayment"); + this.taxPayment = Optional.ofNullable(taxPayment); + return this; + } + + /** + * Success + */ + public Builder taxPayment(Optional taxPayment) { + Utils.checkNotNull(taxPayment, "taxPayment"); + this.taxPayment = taxPayment; + return this; + } + + public GetTaxPaymentResponse build() { + + return new GetTaxPaymentResponse( + contentType, statusCode, rawResponse, + taxPayment); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetTaxPaymentsRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetTaxPaymentsRequestBuilder.java new file mode 100644 index 000000000..be7f79698 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetTaxPaymentsRequestBuilder.java @@ -0,0 +1,39 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations.async; + +import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.AsyncRequestOperation; + +import com.gusto.embedded_api_v_2025_11_15.SDKConfiguration; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetTaxPaymentsRequest; +import com.gusto.embedded_api_v_2025_11_15.operations.GetTaxPayments; +import com.gusto.embedded_api_v_2025_11_15.utils.Headers; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.util.concurrent.CompletableFuture; + +public class GetTaxPaymentsRequestBuilder { + + private GetTaxPaymentsRequest request; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public GetTaxPaymentsRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public GetTaxPaymentsRequestBuilder request(GetTaxPaymentsRequest request) { + Utils.checkNotNull(request, "request"); + this.request = request; + return this; + } + + public CompletableFuture call() { + + AsyncRequestOperation operation + = new GetTaxPayments.Async(sdkConfiguration, _headers); + + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetTaxPaymentsResponse.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetTaxPaymentsResponse.java new file mode 100644 index 000000000..e9a1a5c6d --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetTaxPaymentsResponse.java @@ -0,0 +1,254 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations.async; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2025_11_15.models.components.TaxPayment; +import com.gusto.embedded_api_v_2025_11_15.utils.AsyncResponse; +import com.gusto.embedded_api_v_2025_11_15.utils.Blob; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.List; +import java.util.Optional; + + +public class GetTaxPaymentsResponse implements AsyncResponse { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * Success + */ + private Optional> taxPaymentList; + + @JsonCreator + public GetTaxPaymentsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional> taxPaymentList) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(taxPaymentList, "taxPaymentList"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.taxPaymentList = taxPaymentList; + } + + public GetTaxPaymentsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * Success + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> taxPaymentList() { + return (Optional>) taxPaymentList; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public GetTaxPaymentsResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public GetTaxPaymentsResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public GetTaxPaymentsResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * Success + */ + public GetTaxPaymentsResponse withTaxPaymentList(List taxPaymentList) { + Utils.checkNotNull(taxPaymentList, "taxPaymentList"); + this.taxPaymentList = Optional.ofNullable(taxPaymentList); + return this; + } + + + /** + * Success + */ + public GetTaxPaymentsResponse withTaxPaymentList(Optional> taxPaymentList) { + Utils.checkNotNull(taxPaymentList, "taxPaymentList"); + this.taxPaymentList = taxPaymentList; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetTaxPaymentsResponse other = (GetTaxPaymentsResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.taxPaymentList, other.taxPaymentList); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + taxPaymentList); + } + + @Override + public String toString() { + return Utils.toString(GetTaxPaymentsResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "taxPaymentList", taxPaymentList); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional> taxPaymentList = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * Success + */ + public Builder taxPaymentList(List taxPaymentList) { + Utils.checkNotNull(taxPaymentList, "taxPaymentList"); + this.taxPaymentList = Optional.ofNullable(taxPaymentList); + return this; + } + + /** + * Success + */ + public Builder taxPaymentList(Optional> taxPaymentList) { + Utils.checkNotNull(taxPaymentList, "taxPaymentList"); + this.taxPaymentList = taxPaymentList; + return this; + } + + public GetTaxPaymentsResponse build() { + + return new GetTaxPaymentsResponse( + contentType, statusCode, rawResponse, + taxPaymentList); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1BenefitsResponse.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1BenefitsResponse.java index a5f639790..1c943c8da 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1BenefitsResponse.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1BenefitsResponse.java @@ -37,22 +37,22 @@ public class GetV1BenefitsResponse implements AsyncResponse { /** * Successful */ - private Optional> supportedBenefits; + private Optional> supportedBenefitList; @JsonCreator public GetV1BenefitsResponse( String contentType, int statusCode, HttpResponse rawResponse, - Optional> supportedBenefits) { + Optional> supportedBenefitList) { Utils.checkNotNull(contentType, "contentType"); Utils.checkNotNull(statusCode, "statusCode"); Utils.checkNotNull(rawResponse, "rawResponse"); - Utils.checkNotNull(supportedBenefits, "supportedBenefits"); + Utils.checkNotNull(supportedBenefitList, "supportedBenefitList"); this.contentType = contentType; this.statusCode = statusCode; this.rawResponse = rawResponse; - this.supportedBenefits = supportedBenefits; + this.supportedBenefitList = supportedBenefitList; } public GetV1BenefitsResponse( @@ -92,8 +92,8 @@ public HttpResponse rawResponse() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional> supportedBenefits() { - return (Optional>) supportedBenefits; + public Optional> supportedBenefitList() { + return (Optional>) supportedBenefitList; } public static Builder builder() { @@ -131,9 +131,9 @@ public GetV1BenefitsResponse withRawResponse(HttpResponse rawResponse) { /** * Successful */ - public GetV1BenefitsResponse withSupportedBenefits(List supportedBenefits) { - Utils.checkNotNull(supportedBenefits, "supportedBenefits"); - this.supportedBenefits = Optional.ofNullable(supportedBenefits); + public GetV1BenefitsResponse withSupportedBenefitList(List supportedBenefitList) { + Utils.checkNotNull(supportedBenefitList, "supportedBenefitList"); + this.supportedBenefitList = Optional.ofNullable(supportedBenefitList); return this; } @@ -141,9 +141,9 @@ public GetV1BenefitsResponse withSupportedBenefits(List suppor /** * Successful */ - public GetV1BenefitsResponse withSupportedBenefits(Optional> supportedBenefits) { - Utils.checkNotNull(supportedBenefits, "supportedBenefits"); - this.supportedBenefits = supportedBenefits; + public GetV1BenefitsResponse withSupportedBenefitList(Optional> supportedBenefitList) { + Utils.checkNotNull(supportedBenefitList, "supportedBenefitList"); + this.supportedBenefitList = supportedBenefitList; return this; } @@ -160,14 +160,14 @@ public boolean equals(java.lang.Object o) { Utils.enhancedDeepEquals(this.contentType, other.contentType) && Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && - Utils.enhancedDeepEquals(this.supportedBenefits, other.supportedBenefits); + Utils.enhancedDeepEquals(this.supportedBenefitList, other.supportedBenefitList); } @Override public int hashCode() { return Utils.enhancedHash( contentType, statusCode, rawResponse, - supportedBenefits); + supportedBenefitList); } @Override @@ -176,7 +176,7 @@ public String toString() { "contentType", contentType, "statusCode", statusCode, "rawResponse", rawResponse, - "supportedBenefits", supportedBenefits); + "supportedBenefitList", supportedBenefitList); } @SuppressWarnings("UnusedReturnValue") @@ -188,7 +188,7 @@ public final static class Builder { private HttpResponse rawResponse; - private Optional> supportedBenefits = Optional.empty(); + private Optional> supportedBenefitList = Optional.empty(); private Builder() { // force use of static builder() method @@ -228,18 +228,18 @@ public Builder rawResponse(HttpResponse rawResponse) { /** * Successful */ - public Builder supportedBenefits(List supportedBenefits) { - Utils.checkNotNull(supportedBenefits, "supportedBenefits"); - this.supportedBenefits = Optional.ofNullable(supportedBenefits); + public Builder supportedBenefitList(List supportedBenefitList) { + Utils.checkNotNull(supportedBenefitList, "supportedBenefitList"); + this.supportedBenefitList = Optional.ofNullable(supportedBenefitList); return this; } /** * Successful */ - public Builder supportedBenefits(Optional> supportedBenefits) { - Utils.checkNotNull(supportedBenefits, "supportedBenefits"); - this.supportedBenefits = supportedBenefits; + public Builder supportedBenefitList(Optional> supportedBenefitList) { + Utils.checkNotNull(supportedBenefitList, "supportedBenefitList"); + this.supportedBenefitList = supportedBenefitList; return this; } @@ -247,7 +247,7 @@ public GetV1BenefitsResponse build() { return new GetV1BenefitsResponse( contentType, statusCode, rawResponse, - supportedBenefits); + supportedBenefitList); } } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1BulkReportsRequestUuidRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1BulkReportsRequestUuidRequestBuilder.java new file mode 100644 index 000000000..194502785 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1BulkReportsRequestUuidRequestBuilder.java @@ -0,0 +1,87 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations.async; + +import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.AsyncRequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2025_11_15.SDKConfiguration; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1BulkReportsRequestUuidRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1BulkReportsRequestUuidSecurity; +import com.gusto.embedded_api_v_2025_11_15.operations.GetV1BulkReportsRequestUuid; +import com.gusto.embedded_api_v_2025_11_15.utils.Headers; +import com.gusto.embedded_api_v_2025_11_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.String; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; + +public class GetV1BulkReportsRequestUuidRequestBuilder { + + private GetV1BulkReportsRequestUuidSecurity security; + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2025-11-15\"", + new TypeReference>() {}); + private String requestUuid; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public GetV1BulkReportsRequestUuidRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public GetV1BulkReportsRequestUuidRequestBuilder security(GetV1BulkReportsRequestUuidSecurity security) { + Utils.checkNotNull(security, "security"); + this.security = security; + return this; + } + + public GetV1BulkReportsRequestUuidRequestBuilder xGustoAPIVersion(GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetV1BulkReportsRequestUuidRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public GetV1BulkReportsRequestUuidRequestBuilder requestUuid(String requestUuid) { + Utils.checkNotNull(requestUuid, "requestUuid"); + this.requestUuid = requestUuid; + return this; + } + + + private GetV1BulkReportsRequestUuidRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + GetV1BulkReportsRequestUuidRequest request = new GetV1BulkReportsRequestUuidRequest(xGustoAPIVersion, + requestUuid); + + return request; + } + + public CompletableFuture call() { + + AsyncRequestOperation operation + = new GetV1BulkReportsRequestUuid.Async(sdkConfiguration, security, _headers); + GetV1BulkReportsRequestUuidRequest request = buildRequest(); + + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2025-11-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1BulkReportsRequestUuidResponse.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1BulkReportsRequestUuidResponse.java new file mode 100644 index 000000000..06560c35d --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1BulkReportsRequestUuidResponse.java @@ -0,0 +1,253 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations.async; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2025_11_15.models.components.BulkReport; +import com.gusto.embedded_api_v_2025_11_15.utils.AsyncResponse; +import com.gusto.embedded_api_v_2025_11_15.utils.Blob; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.Optional; + + +public class GetV1BulkReportsRequestUuidResponse implements AsyncResponse { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * OK + */ + private Optional bulkReport; + + @JsonCreator + public GetV1BulkReportsRequestUuidResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional bulkReport) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(bulkReport, "bulkReport"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.bulkReport = bulkReport; + } + + public GetV1BulkReportsRequestUuidResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * OK + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional bulkReport() { + return (Optional) bulkReport; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public GetV1BulkReportsRequestUuidResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public GetV1BulkReportsRequestUuidResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public GetV1BulkReportsRequestUuidResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * OK + */ + public GetV1BulkReportsRequestUuidResponse withBulkReport(BulkReport bulkReport) { + Utils.checkNotNull(bulkReport, "bulkReport"); + this.bulkReport = Optional.ofNullable(bulkReport); + return this; + } + + + /** + * OK + */ + public GetV1BulkReportsRequestUuidResponse withBulkReport(Optional bulkReport) { + Utils.checkNotNull(bulkReport, "bulkReport"); + this.bulkReport = bulkReport; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetV1BulkReportsRequestUuidResponse other = (GetV1BulkReportsRequestUuidResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.bulkReport, other.bulkReport); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + bulkReport); + } + + @Override + public String toString() { + return Utils.toString(GetV1BulkReportsRequestUuidResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "bulkReport", bulkReport); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional bulkReport = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * OK + */ + public Builder bulkReport(BulkReport bulkReport) { + Utils.checkNotNull(bulkReport, "bulkReport"); + this.bulkReport = Optional.ofNullable(bulkReport); + return this; + } + + /** + * OK + */ + public Builder bulkReport(Optional bulkReport) { + Utils.checkNotNull(bulkReport, "bulkReport"); + this.bulkReport = bulkReport; + return this; + } + + public GetV1BulkReportsRequestUuidResponse build() { + + return new GetV1BulkReportsRequestUuidResponse( + contentType, statusCode, rawResponse, + bulkReport); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1CompaniesCompanyIdAdminsRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1CompaniesCompanyIdAdminsRequestBuilder.java index fb00417d8..2ad99692f 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1CompaniesCompanyIdAdminsRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1CompaniesCompanyIdAdminsRequestBuilder.java @@ -7,8 +7,8 @@ import com.fasterxml.jackson.core.type.TypeReference; import com.gusto.embedded_api_v_2025_11_15.SDKConfiguration; -import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdAdminsRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.HeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2025_11_15.operations.GetV1CompaniesCompanyIdAdmins; import com.gusto.embedded_api_v_2025_11_15.utils.Headers; import com.gusto.embedded_api_v_2025_11_15.utils.LazySingletonValue; @@ -20,10 +20,10 @@ public class GetV1CompaniesCompanyIdAdminsRequestBuilder { - private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", - new TypeReference>() {}); + new TypeReference>() {}); private String companyId; private Optional page = Optional.empty(); private Optional per = Optional.empty(); @@ -34,13 +34,13 @@ public GetV1CompaniesCompanyIdAdminsRequestBuilder(SDKConfiguration sdkConfigura this.sdkConfiguration = sdkConfiguration; } - public GetV1CompaniesCompanyIdAdminsRequestBuilder xGustoAPIVersion(GetV1CompaniesCompanyIdAdminsHeaderXGustoAPIVersion xGustoAPIVersion) { + public GetV1CompaniesCompanyIdAdminsRequestBuilder xGustoAPIVersion(HeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); return this; } - public GetV1CompaniesCompanyIdAdminsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + public GetV1CompaniesCompanyIdAdminsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); this.xGustoAPIVersion = xGustoAPIVersion; return this; @@ -100,9 +100,9 @@ public CompletableFuture call() { .thenCompose(operation::handleResponse); } - private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = new LazySingletonValue<>( "xGustoAPIVersion", "\"2025-11-15\"", - new TypeReference>() {}); + new TypeReference>() {}); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder.java index 71fda9722..0928d208f 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder.java @@ -19,19 +19,31 @@ public class GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder { - private String companyId; - private Optional contractorUuid = Optional.empty(); - private Optional contractorPaymentGroupUuid = Optional.empty(); private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String companyId; + private Optional contractorUuid = Optional.empty(); + private Optional contractorPaymentGroupUuid = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } + + public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder xGustoAPIVersion(GetV1CompaniesCompanyIdContractorsPaymentDetailsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder companyId(String companyId) { Utils.checkNotNull(companyId, "companyId"); @@ -62,18 +74,6 @@ public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder contractor this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; return this; } - - public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder xGustoAPIVersion(GetV1CompaniesCompanyIdContractorsPaymentDetailsHeaderXGustoAPIVersion xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); - return this; - } - - public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } private GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest buildRequest() { @@ -81,10 +81,10 @@ private GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest request = new GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest(companyId, + GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest request = new GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest(xGustoAPIVersion, + companyId, contractorUuid, - contractorPaymentGroupUuid, - xGustoAPIVersion); + contractorPaymentGroupUuid); return request; } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder.java index 80c7675bb..1ebd1f531 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder.java @@ -19,23 +19,17 @@ public class GetV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder { - private String companyId; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String companyId; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } public GetV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder xGustoAPIVersion(GetV1CompaniesCompanyIdFederalTaxDetailsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public GetV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder xGustoAPIVersion(O return this; } + public GetV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder companyId(String companyId) { + Utils.checkNotNull(companyId, "companyId"); + this.companyId = companyId; + return this; + } + private GetV1CompaniesCompanyIdFederalTaxDetailsRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1CompaniesCompanyIdFederalTaxDetailsRequest request = new GetV1CompaniesCompanyIdFederalTaxDetailsRequest(companyId, - xGustoAPIVersion); + GetV1CompaniesCompanyIdFederalTaxDetailsRequest request = new GetV1CompaniesCompanyIdFederalTaxDetailsRequest(xGustoAPIVersion, + companyId); return request; } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder.java index 85e7f4aa4..8194d7515 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder.java @@ -7,7 +7,7 @@ import com.fasterxml.jackson.core.type.TypeReference; import com.gusto.embedded_api_v_2025_11_15.SDKConfiguration; -import com.gusto.embedded_api_v_2025_11_15.models.components.VersionHeader; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1CompaniesCompanyIdPayrollReversalsRequest; import com.gusto.embedded_api_v_2025_11_15.operations.GetV1CompaniesCompanyIdPayrollReversals; import com.gusto.embedded_api_v_2025_11_15.utils.Headers; @@ -20,19 +20,31 @@ public class GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder { + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2025-11-15\"", + new TypeReference>() {}); private String companyId; private Optional page = Optional.empty(); private Optional per = Optional.empty(); - private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( - "xGustoAPIVersion", - "\"2025-11-15\"", - new TypeReference>() {}); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } + + public GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder xGustoAPIVersion(GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } public GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder companyId(String companyId) { Utils.checkNotNull(companyId, "companyId"); @@ -63,18 +75,6 @@ public GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder per(Optional this.per = per; return this; } - - public GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder xGustoAPIVersion(VersionHeader xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); - return this; - } - - public GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } private GetV1CompaniesCompanyIdPayrollReversalsRequest buildRequest() { @@ -82,10 +82,10 @@ private GetV1CompaniesCompanyIdPayrollReversalsRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1CompaniesCompanyIdPayrollReversalsRequest request = new GetV1CompaniesCompanyIdPayrollReversalsRequest(companyId, + GetV1CompaniesCompanyIdPayrollReversalsRequest request = new GetV1CompaniesCompanyIdPayrollReversalsRequest(xGustoAPIVersion, + companyId, page, - per, - xGustoAPIVersion); + per); return request; } @@ -100,9 +100,9 @@ public CompletableFuture call() .thenCompose(operation::handleResponse); } - private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = new LazySingletonValue<>( "xGustoAPIVersion", "\"2025-11-15\"", - new TypeReference>() {}); + new TypeReference>() {}); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder.java index 6df7bbea0..b80752938 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder.java @@ -19,30 +19,18 @@ public class GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder { - private String companyId; - private String id; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String companyId; + private String id; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - - public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder id(String id) { - Utils.checkNotNull(id, "id"); - this.id = id; - return this; - } public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder xGustoAPIVersion(GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -56,15 +44,27 @@ public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder xGust return this; } + public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder companyId(String companyId) { + Utils.checkNotNull(companyId, "companyId"); + this.companyId = companyId; + return this; + } + + public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder id(String id) { + Utils.checkNotNull(id, "id"); + this.id = id; + return this; + } + private GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest request = new GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest(companyId, - id, - xGustoAPIVersion); + GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest request = new GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest(xGustoAPIVersion, + companyId, + id); return request; } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1CompaniesCompanyUuidSignatoriesRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1CompaniesCompanyUuidSignatoriesRequestBuilder.java index 1d487eb50..7e7cc18af 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1CompaniesCompanyUuidSignatoriesRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1CompaniesCompanyUuidSignatoriesRequestBuilder.java @@ -19,23 +19,17 @@ public class GetV1CompaniesCompanyUuidSignatoriesRequestBuilder { - private String companyUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String companyUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1CompaniesCompanyUuidSignatoriesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1CompaniesCompanyUuidSignatoriesRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public GetV1CompaniesCompanyUuidSignatoriesRequestBuilder xGustoAPIVersion(GetV1CompaniesCompanyUuidSignatoriesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public GetV1CompaniesCompanyUuidSignatoriesRequestBuilder xGustoAPIVersion(Optio return this; } + public GetV1CompaniesCompanyUuidSignatoriesRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + private GetV1CompaniesCompanyUuidSignatoriesRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1CompaniesCompanyUuidSignatoriesRequest request = new GetV1CompaniesCompanyUuidSignatoriesRequest(companyUuid, - xGustoAPIVersion); + GetV1CompaniesCompanyUuidSignatoriesRequest request = new GetV1CompaniesCompanyUuidSignatoriesRequest(xGustoAPIVersion, + companyUuid); return request; } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder.java index b6db1b297..6c98b2d90 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder.java @@ -19,23 +19,17 @@ public class GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder { - private String companyUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String companyUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder xGustoAPIVersion(GetV1CompaniesCompanyUuidTaxRequirementsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder xGustoAPIVersion(O return this; } + public GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + private GetV1CompaniesCompanyUuidTaxRequirementsRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1CompaniesCompanyUuidTaxRequirementsRequest request = new GetV1CompaniesCompanyUuidTaxRequirementsRequest(companyUuid, - xGustoAPIVersion); + GetV1CompaniesCompanyUuidTaxRequirementsRequest request = new GetV1CompaniesCompanyUuidTaxRequirementsRequest(xGustoAPIVersion, + companyUuid); return request; } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder.java index f9fd0f950..f215f33b8 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder.java @@ -20,12 +20,12 @@ public class GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder { - private String companyUuid; - private String state; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String companyUuid; + private String state; private Optional scheduling = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -33,18 +33,6 @@ public class GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder { public GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - public GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder state(String state) { - Utils.checkNotNull(state, "state"); - this.state = state; - return this; - } public GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder xGustoAPIVersion(GetV1CompaniesCompanyUuidTaxRequirementsStateHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -57,6 +45,18 @@ public GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder xGustoAPIVers this.xGustoAPIVersion = xGustoAPIVersion; return this; } + + public GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + public GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder state(String state) { + Utils.checkNotNull(state, "state"); + this.state = state; + return this; + } public GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder scheduling(boolean scheduling) { Utils.checkNotNull(scheduling, "scheduling"); @@ -76,9 +76,9 @@ private GetV1CompaniesCompanyUuidTaxRequirementsStateRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1CompaniesCompanyUuidTaxRequirementsStateRequest request = new GetV1CompaniesCompanyUuidTaxRequirementsStateRequest(companyUuid, + GetV1CompaniesCompanyUuidTaxRequirementsStateRequest request = new GetV1CompaniesCompanyUuidTaxRequirementsStateRequest(xGustoAPIVersion, + companyUuid, state, - xGustoAPIVersion, scheduling); return request; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1CompaniesRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1CompaniesRequestBuilder.java index bddce5e22..dbfd3322c 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1CompaniesRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1CompaniesRequestBuilder.java @@ -19,23 +19,17 @@ public class GetV1CompaniesRequestBuilder { - private String companyId; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String companyId; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1CompaniesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1CompaniesRequestBuilder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } public GetV1CompaniesRequestBuilder xGustoAPIVersion(GetV1CompaniesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public GetV1CompaniesRequestBuilder xGustoAPIVersion(Optional>() {}); private String companyBenefitId; private Optional withEmployeeBenefits = Optional.empty(); - private Optional include = Optional.empty(); + private Optional include = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -65,13 +65,13 @@ public GetV1CompanyBenefitsCompanyBenefitIdRequestBuilder withEmployeeBenefits(O return this; } - public GetV1CompanyBenefitsCompanyBenefitIdRequestBuilder include(GetV1CompanyBenefitsCompanyBenefitIdQueryParamInclude include) { + public GetV1CompanyBenefitsCompanyBenefitIdRequestBuilder include(Include include) { Utils.checkNotNull(include, "include"); this.include = Optional.of(include); return this; } - public GetV1CompanyBenefitsCompanyBenefitIdRequestBuilder include(Optional include) { + public GetV1CompanyBenefitsCompanyBenefitIdRequestBuilder include(Optional include) { Utils.checkNotNull(include, "include"); this.include = include; return this; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1CompanyFinishOnboardingRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1CompanyFinishOnboardingRequestBuilder.java index 8c8fa7959..71751ee9c 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1CompanyFinishOnboardingRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1CompanyFinishOnboardingRequestBuilder.java @@ -19,23 +19,17 @@ public class GetV1CompanyFinishOnboardingRequestBuilder { - private String companyUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String companyUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1CompanyFinishOnboardingRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1CompanyFinishOnboardingRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public GetV1CompanyFinishOnboardingRequestBuilder xGustoAPIVersion(GetV1CompanyFinishOnboardingHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public GetV1CompanyFinishOnboardingRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String companyId; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1CompanyIndustryRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1CompanyIndustryRequestBuilder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } public GetV1CompanyIndustryRequestBuilder xGustoAPIVersion(GetV1CompanyIndustryHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public GetV1CompanyIndustryRequestBuilder xGustoAPIVersion(Optional additionalSteps = Optional.empty(); private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String companyUuid; + private Optional additionalSteps = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1CompanyOnboardingStatusRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } + + public GetV1CompanyOnboardingStatusRequestBuilder xGustoAPIVersion(GetV1CompanyOnboardingStatusHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetV1CompanyOnboardingStatusRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } public GetV1CompanyOnboardingStatusRequestBuilder companyUuid(String companyUuid) { Utils.checkNotNull(companyUuid, "companyUuid"); @@ -49,18 +61,6 @@ public GetV1CompanyOnboardingStatusRequestBuilder additionalSteps(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } private GetV1CompanyOnboardingStatusRequest buildRequest() { @@ -68,9 +68,9 @@ private GetV1CompanyOnboardingStatusRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1CompanyOnboardingStatusRequest request = new GetV1CompanyOnboardingStatusRequest(companyUuid, - additionalSteps, - xGustoAPIVersion); + GetV1CompanyOnboardingStatusRequest request = new GetV1CompanyOnboardingStatusRequest(xGustoAPIVersion, + companyUuid, + additionalSteps); return request; } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder.java index 569dd857d..e18f9aaa8 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder.java @@ -19,23 +19,17 @@ public class GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder { - private String contractorPaymentGroupUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String contractorPaymentGroupUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder contractorPaymentGroupUuid(String contractorPaymentGroupUuid) { - Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); - this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; - return this; - } public GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder xGustoAPIVersion(GetV1ContractorPaymentGroupsContractorPaymentGroupIdHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder xGusto return this; } + public GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder contractorPaymentGroupUuid(String contractorPaymentGroupUuid) { + Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); + this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; + return this; + } + private GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest request = new GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest(contractorPaymentGroupUuid, - xGustoAPIVersion); + GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest request = new GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest(xGustoAPIVersion, + contractorPaymentGroupUuid); return request; } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder.java index f3323c6fe..c74d0845f 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder.java @@ -19,23 +19,17 @@ public class GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder { - private String id; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String id; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder id(String id) { - Utils.checkNotNull(id, "id"); - this.id = id; - return this; - } public GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder xGustoAPIVersion(GetV1ContractorPaymentGroupsIdPartnerDisbursementsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder xGustoAP return this; } + public GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder id(String id) { + Utils.checkNotNull(id, "id"); + this.id = id; + return this; + } + private GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest request = new GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest(id, - xGustoAPIVersion); + GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest request = new GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest(xGustoAPIVersion, + id); return request; } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder.java new file mode 100644 index 000000000..c430e5835 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder.java @@ -0,0 +1,79 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations.async; + +import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.AsyncRequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2025_11_15.SDKConfiguration; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ContractorsContractorUuidMemberPortalInvitationsRequest; +import com.gusto.embedded_api_v_2025_11_15.operations.GetV1ContractorsContractorUuidMemberPortalInvitations; +import com.gusto.embedded_api_v_2025_11_15.utils.Headers; +import com.gusto.embedded_api_v_2025_11_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.String; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; + +public class GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder { + + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2025-11-15\"", + new TypeReference>() {}); + private String contractorUuid; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder xGustoAPIVersion(GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder contractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + + + private GetV1ContractorsContractorUuidMemberPortalInvitationsRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + GetV1ContractorsContractorUuidMemberPortalInvitationsRequest request = new GetV1ContractorsContractorUuidMemberPortalInvitationsRequest(xGustoAPIVersion, + contractorUuid); + + return request; + } + + public CompletableFuture call() { + + AsyncRequestOperation operation + = new GetV1ContractorsContractorUuidMemberPortalInvitations.Async(sdkConfiguration, _headers); + GetV1ContractorsContractorUuidMemberPortalInvitationsRequest request = buildRequest(); + + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2025-11-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1ContractorsContractorUuidMemberPortalInvitationsResponse.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1ContractorsContractorUuidMemberPortalInvitationsResponse.java new file mode 100644 index 000000000..b7c5cf3a5 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1ContractorsContractorUuidMemberPortalInvitationsResponse.java @@ -0,0 +1,253 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations.async; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2025_11_15.models.components.MemberPortalInvitation; +import com.gusto.embedded_api_v_2025_11_15.utils.AsyncResponse; +import com.gusto.embedded_api_v_2025_11_15.utils.Blob; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.Optional; + + +public class GetV1ContractorsContractorUuidMemberPortalInvitationsResponse implements AsyncResponse { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * Success + */ + private Optional memberPortalInvitation; + + @JsonCreator + public GetV1ContractorsContractorUuidMemberPortalInvitationsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional memberPortalInvitation) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(memberPortalInvitation, "memberPortalInvitation"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.memberPortalInvitation = memberPortalInvitation; + } + + public GetV1ContractorsContractorUuidMemberPortalInvitationsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * Success + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional memberPortalInvitation() { + return (Optional) memberPortalInvitation; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public GetV1ContractorsContractorUuidMemberPortalInvitationsResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public GetV1ContractorsContractorUuidMemberPortalInvitationsResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public GetV1ContractorsContractorUuidMemberPortalInvitationsResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * Success + */ + public GetV1ContractorsContractorUuidMemberPortalInvitationsResponse withMemberPortalInvitation(MemberPortalInvitation memberPortalInvitation) { + Utils.checkNotNull(memberPortalInvitation, "memberPortalInvitation"); + this.memberPortalInvitation = Optional.ofNullable(memberPortalInvitation); + return this; + } + + + /** + * Success + */ + public GetV1ContractorsContractorUuidMemberPortalInvitationsResponse withMemberPortalInvitation(Optional memberPortalInvitation) { + Utils.checkNotNull(memberPortalInvitation, "memberPortalInvitation"); + this.memberPortalInvitation = memberPortalInvitation; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetV1ContractorsContractorUuidMemberPortalInvitationsResponse other = (GetV1ContractorsContractorUuidMemberPortalInvitationsResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.memberPortalInvitation, other.memberPortalInvitation); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + memberPortalInvitation); + } + + @Override + public String toString() { + return Utils.toString(GetV1ContractorsContractorUuidMemberPortalInvitationsResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "memberPortalInvitation", memberPortalInvitation); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional memberPortalInvitation = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * Success + */ + public Builder memberPortalInvitation(MemberPortalInvitation memberPortalInvitation) { + Utils.checkNotNull(memberPortalInvitation, "memberPortalInvitation"); + this.memberPortalInvitation = Optional.ofNullable(memberPortalInvitation); + return this; + } + + /** + * Success + */ + public Builder memberPortalInvitation(Optional memberPortalInvitation) { + Utils.checkNotNull(memberPortalInvitation, "memberPortalInvitation"); + this.memberPortalInvitation = memberPortalInvitation; + return this; + } + + public GetV1ContractorsContractorUuidMemberPortalInvitationsResponse build() { + + return new GetV1ContractorsContractorUuidMemberPortalInvitationsResponse( + contentType, statusCode, rawResponse, + memberPortalInvitation); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1ContractorsContractorUuidPaymentsRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1ContractorsContractorUuidPaymentsRequestBuilder.java new file mode 100644 index 000000000..3c81275d8 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1ContractorsContractorUuidPaymentsRequestBuilder.java @@ -0,0 +1,39 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations.async; + +import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.AsyncRequestOperation; + +import com.gusto.embedded_api_v_2025_11_15.SDKConfiguration; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ContractorsContractorUuidPaymentsRequest; +import com.gusto.embedded_api_v_2025_11_15.operations.GetV1ContractorsContractorUuidPayments; +import com.gusto.embedded_api_v_2025_11_15.utils.Headers; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.util.concurrent.CompletableFuture; + +public class GetV1ContractorsContractorUuidPaymentsRequestBuilder { + + private GetV1ContractorsContractorUuidPaymentsRequest request; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public GetV1ContractorsContractorUuidPaymentsRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public GetV1ContractorsContractorUuidPaymentsRequestBuilder request(GetV1ContractorsContractorUuidPaymentsRequest request) { + Utils.checkNotNull(request, "request"); + this.request = request; + return this; + } + + public CompletableFuture call() { + + AsyncRequestOperation operation + = new GetV1ContractorsContractorUuidPayments.Async(sdkConfiguration, _headers); + + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1ContractorsContractorUuidPaymentsResponse.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1ContractorsContractorUuidPaymentsResponse.java new file mode 100644 index 000000000..217711158 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1ContractorsContractorUuidPaymentsResponse.java @@ -0,0 +1,254 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations.async; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2025_11_15.models.components.ContractorPaymentListing; +import com.gusto.embedded_api_v_2025_11_15.utils.AsyncResponse; +import com.gusto.embedded_api_v_2025_11_15.utils.Blob; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.List; +import java.util.Optional; + + +public class GetV1ContractorsContractorUuidPaymentsResponse implements AsyncResponse { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * A JSON array of contractor payments + */ + private Optional> contractorPaymentListings; + + @JsonCreator + public GetV1ContractorsContractorUuidPaymentsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional> contractorPaymentListings) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(contractorPaymentListings, "contractorPaymentListings"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.contractorPaymentListings = contractorPaymentListings; + } + + public GetV1ContractorsContractorUuidPaymentsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * A JSON array of contractor payments + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> contractorPaymentListings() { + return (Optional>) contractorPaymentListings; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public GetV1ContractorsContractorUuidPaymentsResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public GetV1ContractorsContractorUuidPaymentsResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public GetV1ContractorsContractorUuidPaymentsResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * A JSON array of contractor payments + */ + public GetV1ContractorsContractorUuidPaymentsResponse withContractorPaymentListings(List contractorPaymentListings) { + Utils.checkNotNull(contractorPaymentListings, "contractorPaymentListings"); + this.contractorPaymentListings = Optional.ofNullable(contractorPaymentListings); + return this; + } + + + /** + * A JSON array of contractor payments + */ + public GetV1ContractorsContractorUuidPaymentsResponse withContractorPaymentListings(Optional> contractorPaymentListings) { + Utils.checkNotNull(contractorPaymentListings, "contractorPaymentListings"); + this.contractorPaymentListings = contractorPaymentListings; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetV1ContractorsContractorUuidPaymentsResponse other = (GetV1ContractorsContractorUuidPaymentsResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.contractorPaymentListings, other.contractorPaymentListings); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + contractorPaymentListings); + } + + @Override + public String toString() { + return Utils.toString(GetV1ContractorsContractorUuidPaymentsResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "contractorPaymentListings", contractorPaymentListings); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional> contractorPaymentListings = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * A JSON array of contractor payments + */ + public Builder contractorPaymentListings(List contractorPaymentListings) { + Utils.checkNotNull(contractorPaymentListings, "contractorPaymentListings"); + this.contractorPaymentListings = Optional.ofNullable(contractorPaymentListings); + return this; + } + + /** + * A JSON array of contractor payments + */ + public Builder contractorPaymentListings(Optional> contractorPaymentListings) { + Utils.checkNotNull(contractorPaymentListings, "contractorPaymentListings"); + this.contractorPaymentListings = contractorPaymentListings; + return this; + } + + public GetV1ContractorsContractorUuidPaymentsResponse build() { + + return new GetV1ContractorsContractorUuidPaymentsResponse( + contentType, statusCode, rawResponse, + contractorPaymentListings); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder.java index 6b263f69f..2ffb95054 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder.java @@ -20,19 +20,31 @@ public class GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder { - private String employeeId; - private Optional page = Optional.empty(); - private Optional per = Optional.empty(); private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String employeeId; + private Optional page = Optional.empty(); + private Optional per = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } + + public GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder xGustoAPIVersion(GetV1EmployeesEmployeeIdCustomFieldsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } public GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder employeeId(String employeeId) { Utils.checkNotNull(employeeId, "employeeId"); @@ -63,18 +75,6 @@ public GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder per(Optional per this.per = per; return this; } - - public GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder xGustoAPIVersion(GetV1EmployeesEmployeeIdCustomFieldsHeaderXGustoAPIVersion xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); - return this; - } - - public GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } private GetV1EmployeesEmployeeIdCustomFieldsRequest buildRequest() { @@ -82,10 +82,10 @@ private GetV1EmployeesEmployeeIdCustomFieldsRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1EmployeesEmployeeIdCustomFieldsRequest request = new GetV1EmployeesEmployeeIdCustomFieldsRequest(employeeId, + GetV1EmployeesEmployeeIdCustomFieldsRequest request = new GetV1EmployeesEmployeeIdCustomFieldsRequest(xGustoAPIVersion, + employeeId, page, - per, - xGustoAPIVersion); + per); return request; } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1EmployeesEmployeeIdHomeAddressesRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1EmployeesEmployeeIdHomeAddressesRequestBuilder.java index 981e4c4ba..d521f0a67 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1EmployeesEmployeeIdHomeAddressesRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1EmployeesEmployeeIdHomeAddressesRequestBuilder.java @@ -19,23 +19,17 @@ public class GetV1EmployeesEmployeeIdHomeAddressesRequestBuilder { - private String employeeId; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String employeeId; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1EmployeesEmployeeIdHomeAddressesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1EmployeesEmployeeIdHomeAddressesRequestBuilder employeeId(String employeeId) { - Utils.checkNotNull(employeeId, "employeeId"); - this.employeeId = employeeId; - return this; - } public GetV1EmployeesEmployeeIdHomeAddressesRequestBuilder xGustoAPIVersion(GetV1EmployeesEmployeeIdHomeAddressesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public GetV1EmployeesEmployeeIdHomeAddressesRequestBuilder xGustoAPIVersion(Opti return this; } + public GetV1EmployeesEmployeeIdHomeAddressesRequestBuilder employeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + private GetV1EmployeesEmployeeIdHomeAddressesRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1EmployeesEmployeeIdHomeAddressesRequest request = new GetV1EmployeesEmployeeIdHomeAddressesRequest(employeeId, - xGustoAPIVersion); + GetV1EmployeesEmployeeIdHomeAddressesRequest request = new GetV1EmployeesEmployeeIdHomeAddressesRequest(xGustoAPIVersion, + employeeId); return request; } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java new file mode 100644 index 000000000..53f85c340 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java @@ -0,0 +1,79 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations.async; + +import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.AsyncRequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2025_11_15.SDKConfiguration; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest; +import com.gusto.embedded_api_v_2025_11_15.operations.GetV1EmployeesEmployeeIdMemberPortalInvitations; +import com.gusto.embedded_api_v_2025_11_15.utils.Headers; +import com.gusto.embedded_api_v_2025_11_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.String; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; + +public class GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder { + + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2025-11-15\"", + new TypeReference>() {}); + private String employeeId; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder xGustoAPIVersion(GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder employeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + + + private GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest request = new GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest(xGustoAPIVersion, + employeeId); + + return request; + } + + public CompletableFuture call() { + + AsyncRequestOperation operation + = new GetV1EmployeesEmployeeIdMemberPortalInvitations.Async(sdkConfiguration, _headers); + GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest request = buildRequest(); + + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2025-11-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java new file mode 100644 index 000000000..079e7f8aa --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java @@ -0,0 +1,253 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations.async; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2025_11_15.models.components.MemberPortalInvitation; +import com.gusto.embedded_api_v_2025_11_15.utils.AsyncResponse; +import com.gusto.embedded_api_v_2025_11_15.utils.Blob; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.Optional; + + +public class GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse implements AsyncResponse { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * Success + */ + private Optional memberPortalInvitation; + + @JsonCreator + public GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional memberPortalInvitation) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(memberPortalInvitation, "memberPortalInvitation"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.memberPortalInvitation = memberPortalInvitation; + } + + public GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * Success + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional memberPortalInvitation() { + return (Optional) memberPortalInvitation; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * Success + */ + public GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse withMemberPortalInvitation(MemberPortalInvitation memberPortalInvitation) { + Utils.checkNotNull(memberPortalInvitation, "memberPortalInvitation"); + this.memberPortalInvitation = Optional.ofNullable(memberPortalInvitation); + return this; + } + + + /** + * Success + */ + public GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse withMemberPortalInvitation(Optional memberPortalInvitation) { + Utils.checkNotNull(memberPortalInvitation, "memberPortalInvitation"); + this.memberPortalInvitation = memberPortalInvitation; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse other = (GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.memberPortalInvitation, other.memberPortalInvitation); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + memberPortalInvitation); + } + + @Override + public String toString() { + return Utils.toString(GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "memberPortalInvitation", memberPortalInvitation); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional memberPortalInvitation = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * Success + */ + public Builder memberPortalInvitation(MemberPortalInvitation memberPortalInvitation) { + Utils.checkNotNull(memberPortalInvitation, "memberPortalInvitation"); + this.memberPortalInvitation = Optional.ofNullable(memberPortalInvitation); + return this; + } + + /** + * Success + */ + public Builder memberPortalInvitation(Optional memberPortalInvitation) { + Utils.checkNotNull(memberPortalInvitation, "memberPortalInvitation"); + this.memberPortalInvitation = memberPortalInvitation; + return this; + } + + public GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse build() { + + return new GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse( + contentType, statusCode, rawResponse, + memberPortalInvitation); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1EmployeesEmployeeIdWorkAddressesRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1EmployeesEmployeeIdWorkAddressesRequestBuilder.java index a656c03e0..eb88c2bad 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1EmployeesEmployeeIdWorkAddressesRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1EmployeesEmployeeIdWorkAddressesRequestBuilder.java @@ -19,23 +19,17 @@ public class GetV1EmployeesEmployeeIdWorkAddressesRequestBuilder { - private String employeeId; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String employeeId; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1EmployeesEmployeeIdWorkAddressesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1EmployeesEmployeeIdWorkAddressesRequestBuilder employeeId(String employeeId) { - Utils.checkNotNull(employeeId, "employeeId"); - this.employeeId = employeeId; - return this; - } public GetV1EmployeesEmployeeIdWorkAddressesRequestBuilder xGustoAPIVersion(GetV1EmployeesEmployeeIdWorkAddressesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public GetV1EmployeesEmployeeIdWorkAddressesRequestBuilder xGustoAPIVersion(Opti return this; } + public GetV1EmployeesEmployeeIdWorkAddressesRequestBuilder employeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + private GetV1EmployeesEmployeeIdWorkAddressesRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1EmployeesEmployeeIdWorkAddressesRequest request = new GetV1EmployeesEmployeeIdWorkAddressesRequest(employeeId, - xGustoAPIVersion); + GetV1EmployeesEmployeeIdWorkAddressesRequest request = new GetV1EmployeesEmployeeIdWorkAddressesRequest(xGustoAPIVersion, + employeeId); return request; } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder.java index f74cdd34e..3aa0f7bcd 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder.java @@ -20,30 +20,18 @@ public class GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder { - private String employeeUuid; - private Long effectiveYear; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String employeeUuid; + private Long effectiveYear; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder employeeUuid(String employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = employeeUuid; - return this; - } - - public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder effectiveYear(long effectiveYear) { - Utils.checkNotNull(effectiveYear, "effectiveYear"); - this.effectiveYear = effectiveYear; - return this; - } public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder xGustoAPIVersion(GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -57,15 +45,27 @@ public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearReques return this; } + public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder employeeUuid(String employeeUuid) { + Utils.checkNotNull(employeeUuid, "employeeUuid"); + this.employeeUuid = employeeUuid; + return this; + } + + public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder effectiveYear(long effectiveYear) { + Utils.checkNotNull(effectiveYear, "effectiveYear"); + this.effectiveYear = effectiveYear; + return this; + } + private GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest request = new GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest(employeeUuid, - effectiveYear, - xGustoAPIVersion); + GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest request = new GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest(xGustoAPIVersion, + employeeUuid, + effectiveYear); return request; } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder.java index 3f3ca30ec..39c148db4 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder.java @@ -19,23 +19,17 @@ public class GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder { - private String employeeUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String employeeUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder employeeUuid(String employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = employeeUuid; - return this; - } public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder xGustoAPIVersion(GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder xGus return this; } + public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder employeeUuid(String employeeUuid) { + Utils.checkNotNull(employeeUuid, "employeeUuid"); + this.employeeUuid = employeeUuid; + return this; + } + private GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest request = new GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest(employeeUuid, - xGustoAPIVersion); + GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest request = new GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest(xGustoAPIVersion, + employeeUuid); return request; } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1EmployeesRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1EmployeesRequestBuilder.java index f768fec9c..0e2c2eb03 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1EmployeesRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1EmployeesRequestBuilder.java @@ -8,8 +8,8 @@ import com.fasterxml.jackson.core.type.TypeReference; import com.gusto.embedded_api_v_2025_11_15.SDKConfiguration; import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1EmployeesHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1EmployeesQueryParamInclude; import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1EmployeesRequest; -import com.gusto.embedded_api_v_2025_11_15.models.operations.QueryParamInclude; import com.gusto.embedded_api_v_2025_11_15.operations.GetV1Employees; import com.gusto.embedded_api_v_2025_11_15.utils.Headers; import com.gusto.embedded_api_v_2025_11_15.utils.LazySingletonValue; @@ -26,7 +26,7 @@ public class GetV1EmployeesRequestBuilder { "\"2025-11-15\"", new TypeReference>() {}); private String employeeId; - private Optional> include = Optional.empty(); + private Optional> include = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -52,13 +52,13 @@ public GetV1EmployeesRequestBuilder employeeId(String employeeId) { return this; } - public GetV1EmployeesRequestBuilder include(List include) { + public GetV1EmployeesRequestBuilder include(List include) { Utils.checkNotNull(include, "include"); this.include = Optional.of(include); return this; } - public GetV1EmployeesRequestBuilder include(Optional> include) { + public GetV1EmployeesRequestBuilder include(Optional> include) { Utils.checkNotNull(include, "include"); this.include = include; return this; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder.java index 700837f7c..90859ec73 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder.java @@ -7,8 +7,8 @@ import com.fasterxml.jackson.core.type.TypeReference; import com.gusto.embedded_api_v_2025_11_15.SDKConfiguration; -import com.gusto.embedded_api_v_2025_11_15.models.components.VersionHeader; import com.gusto.embedded_api_v_2025_11_15.models.operations.DocumentType; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest; import com.gusto.embedded_api_v_2025_11_15.operations.GetV1GeneratedDocumentsDocumentTypeRequestUuid; import com.gusto.embedded_api_v_2025_11_15.utils.Headers; @@ -20,18 +20,30 @@ public class GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder { - private DocumentType documentType; - private String requestUuid; - private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", - new TypeReference>() {}); + new TypeReference>() {}); + private DocumentType documentType; + private String requestUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } + + public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder xGustoAPIVersion(GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder documentType(DocumentType documentType) { Utils.checkNotNull(documentType, "documentType"); @@ -44,18 +56,6 @@ public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder requestUuid( this.requestUuid = requestUuid; return this; } - - public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder xGustoAPIVersion(VersionHeader xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); - return this; - } - - public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } private GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest buildRequest() { @@ -63,9 +63,9 @@ private GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest request = new GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest(documentType, - requestUuid, - xGustoAPIVersion); + GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest request = new GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest(xGustoAPIVersion, + documentType, + requestUuid); return request; } @@ -80,9 +80,9 @@ public CompletableFuture .thenCompose(operation::handleResponse); } - private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = new LazySingletonValue<>( "xGustoAPIVersion", "\"2025-11-15\"", - new TypeReference>() {}); + new TypeReference>() {}); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1HomeAddressesHomeAddressUuidRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1HomeAddressesHomeAddressUuidRequestBuilder.java index 51ab202cd..f6dc9e8dc 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1HomeAddressesHomeAddressUuidRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1HomeAddressesHomeAddressUuidRequestBuilder.java @@ -19,23 +19,17 @@ public class GetV1HomeAddressesHomeAddressUuidRequestBuilder { - private String homeAddressUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String homeAddressUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1HomeAddressesHomeAddressUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1HomeAddressesHomeAddressUuidRequestBuilder homeAddressUuid(String homeAddressUuid) { - Utils.checkNotNull(homeAddressUuid, "homeAddressUuid"); - this.homeAddressUuid = homeAddressUuid; - return this; - } public GetV1HomeAddressesHomeAddressUuidRequestBuilder xGustoAPIVersion(GetV1HomeAddressesHomeAddressUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public GetV1HomeAddressesHomeAddressUuidRequestBuilder xGustoAPIVersion(Optional return this; } + public GetV1HomeAddressesHomeAddressUuidRequestBuilder homeAddressUuid(String homeAddressUuid) { + Utils.checkNotNull(homeAddressUuid, "homeAddressUuid"); + this.homeAddressUuid = homeAddressUuid; + return this; + } + private GetV1HomeAddressesHomeAddressUuidRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1HomeAddressesHomeAddressUuidRequest request = new GetV1HomeAddressesHomeAddressUuidRequest(homeAddressUuid, - xGustoAPIVersion); + GetV1HomeAddressesHomeAddressUuidRequest request = new GetV1HomeAddressesHomeAddressUuidRequest(xGustoAPIVersion, + homeAddressUuid); return request; } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1JobsJobIdRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1JobsJobIdRequestBuilder.java index dec3ed078..07139d528 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1JobsJobIdRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1JobsJobIdRequestBuilder.java @@ -20,18 +20,30 @@ public class GetV1JobsJobIdRequestBuilder { - private String jobId; - private Optional include = Optional.empty(); private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String jobId; + private Optional include = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1JobsJobIdRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } + + public GetV1JobsJobIdRequestBuilder xGustoAPIVersion(GetV1JobsJobIdHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetV1JobsJobIdRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } public GetV1JobsJobIdRequestBuilder jobId(String jobId) { Utils.checkNotNull(jobId, "jobId"); @@ -50,18 +62,6 @@ public GetV1JobsJobIdRequestBuilder include(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } private GetV1JobsJobIdRequest buildRequest() { @@ -69,9 +69,9 @@ private GetV1JobsJobIdRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1JobsJobIdRequest request = new GetV1JobsJobIdRequest(jobId, - include, - xGustoAPIVersion); + GetV1JobsJobIdRequest request = new GetV1JobsJobIdRequest(xGustoAPIVersion, + jobId, + include); return request; } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1LocationsLocationUuidMinimumWagesRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1LocationsLocationUuidMinimumWagesRequestBuilder.java index 6417f0244..0a85d35ae 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1LocationsLocationUuidMinimumWagesRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1LocationsLocationUuidMinimumWagesRequestBuilder.java @@ -19,11 +19,11 @@ public class GetV1LocationsLocationUuidMinimumWagesRequestBuilder { - private String locationUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String locationUuid; private Optional effectiveDate = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -31,12 +31,6 @@ public class GetV1LocationsLocationUuidMinimumWagesRequestBuilder { public GetV1LocationsLocationUuidMinimumWagesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1LocationsLocationUuidMinimumWagesRequestBuilder locationUuid(String locationUuid) { - Utils.checkNotNull(locationUuid, "locationUuid"); - this.locationUuid = locationUuid; - return this; - } public GetV1LocationsLocationUuidMinimumWagesRequestBuilder xGustoAPIVersion(GetV1LocationsLocationUuidMinimumWagesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,6 +43,12 @@ public GetV1LocationsLocationUuidMinimumWagesRequestBuilder xGustoAPIVersion(Opt this.xGustoAPIVersion = xGustoAPIVersion; return this; } + + public GetV1LocationsLocationUuidMinimumWagesRequestBuilder locationUuid(String locationUuid) { + Utils.checkNotNull(locationUuid, "locationUuid"); + this.locationUuid = locationUuid; + return this; + } public GetV1LocationsLocationUuidMinimumWagesRequestBuilder effectiveDate(String effectiveDate) { Utils.checkNotNull(effectiveDate, "effectiveDate"); @@ -68,8 +68,8 @@ private GetV1LocationsLocationUuidMinimumWagesRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1LocationsLocationUuidMinimumWagesRequest request = new GetV1LocationsLocationUuidMinimumWagesRequest(locationUuid, - xGustoAPIVersion, + GetV1LocationsLocationUuidMinimumWagesRequest request = new GetV1LocationsLocationUuidMinimumWagesRequest(xGustoAPIVersion, + locationUuid, effectiveDate); return request; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder.java index ebbcc1fb0..c8462a6e7 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder.java @@ -19,23 +19,17 @@ public class GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder { - private String companyUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String companyUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder xGustoAPIVersion(GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder x return this; } + public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + private GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest request = new GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest(companyUuid, - xGustoAPIVersion); + GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest request = new GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest(xGustoAPIVersion, + companyUuid); return request; } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder.java index 40d19e2da..23240a446 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder.java @@ -13,29 +13,26 @@ import com.gusto.embedded_api_v_2025_11_15.utils.Headers; import com.gusto.embedded_api_v_2025_11_15.utils.LazySingletonValue; import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Long; import java.lang.String; import java.util.Optional; import java.util.concurrent.CompletableFuture; public class GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder { - private String payrollUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String payrollUuid; + private Optional page = Optional.empty(); + private Optional per = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder payrollUuid(String payrollUuid) { - Utils.checkNotNull(payrollUuid, "payrollUuid"); - this.payrollUuid = payrollUuid; - return this; - } public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder xGustoAPIVersion(GetV1PaymentReceiptsPayrollsPayrollUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +46,46 @@ public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder xGustoAPIVersion(Op return this; } + public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder payrollUuid(String payrollUuid) { + Utils.checkNotNull(payrollUuid, "payrollUuid"); + this.payrollUuid = payrollUuid; + return this; + } + + public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder page(long page) { + Utils.checkNotNull(page, "page"); + this.page = Optional.of(page); + return this; + } + + public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder page(Optional page) { + Utils.checkNotNull(page, "page"); + this.page = page; + return this; + } + + public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder per(long per) { + Utils.checkNotNull(per, "per"); + this.per = Optional.of(per); + return this; + } + + public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder per(Optional per) { + Utils.checkNotNull(per, "per"); + this.per = per; + return this; + } + private GetV1PaymentReceiptsPayrollsPayrollUuidRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1PaymentReceiptsPayrollsPayrollUuidRequest request = new GetV1PaymentReceiptsPayrollsPayrollUuidRequest(payrollUuid, - xGustoAPIVersion); + GetV1PaymentReceiptsPayrollsPayrollUuidRequest request = new GetV1PaymentReceiptsPayrollsPayrollUuidRequest(xGustoAPIVersion, + payrollUuid, + page, + per); return request; } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1PayrollBatchesPayrollBatchUuidRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1PayrollBatchesPayrollBatchUuidRequestBuilder.java new file mode 100644 index 000000000..6424f3e35 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1PayrollBatchesPayrollBatchUuidRequestBuilder.java @@ -0,0 +1,87 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations.async; + +import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.AsyncRequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2025_11_15.SDKConfiguration; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1PayrollBatchesPayrollBatchUuidRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1PayrollBatchesPayrollBatchUuidSecurity; +import com.gusto.embedded_api_v_2025_11_15.operations.GetV1PayrollBatchesPayrollBatchUuid; +import com.gusto.embedded_api_v_2025_11_15.utils.Headers; +import com.gusto.embedded_api_v_2025_11_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.String; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; + +public class GetV1PayrollBatchesPayrollBatchUuidRequestBuilder { + + private GetV1PayrollBatchesPayrollBatchUuidSecurity security; + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2025-11-15\"", + new TypeReference>() {}); + private String payrollBatchUuid; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public GetV1PayrollBatchesPayrollBatchUuidRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public GetV1PayrollBatchesPayrollBatchUuidRequestBuilder security(GetV1PayrollBatchesPayrollBatchUuidSecurity security) { + Utils.checkNotNull(security, "security"); + this.security = security; + return this; + } + + public GetV1PayrollBatchesPayrollBatchUuidRequestBuilder xGustoAPIVersion(GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetV1PayrollBatchesPayrollBatchUuidRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public GetV1PayrollBatchesPayrollBatchUuidRequestBuilder payrollBatchUuid(String payrollBatchUuid) { + Utils.checkNotNull(payrollBatchUuid, "payrollBatchUuid"); + this.payrollBatchUuid = payrollBatchUuid; + return this; + } + + + private GetV1PayrollBatchesPayrollBatchUuidRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + GetV1PayrollBatchesPayrollBatchUuidRequest request = new GetV1PayrollBatchesPayrollBatchUuidRequest(xGustoAPIVersion, + payrollBatchUuid); + + return request; + } + + public CompletableFuture call() { + + AsyncRequestOperation operation + = new GetV1PayrollBatchesPayrollBatchUuid.Async(sdkConfiguration, security, _headers); + GetV1PayrollBatchesPayrollBatchUuidRequest request = buildRequest(); + + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2025-11-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1PayrollBatchesPayrollBatchUuidResponse.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1PayrollBatchesPayrollBatchUuidResponse.java new file mode 100644 index 000000000..7579c5b9d --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1PayrollBatchesPayrollBatchUuidResponse.java @@ -0,0 +1,253 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations.async; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2025_11_15.models.components.PayrollBatchResults; +import com.gusto.embedded_api_v_2025_11_15.utils.AsyncResponse; +import com.gusto.embedded_api_v_2025_11_15.utils.Blob; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.Optional; + + +public class GetV1PayrollBatchesPayrollBatchUuidResponse implements AsyncResponse { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * successful + */ + private Optional payrollBatchResults; + + @JsonCreator + public GetV1PayrollBatchesPayrollBatchUuidResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional payrollBatchResults) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(payrollBatchResults, "payrollBatchResults"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.payrollBatchResults = payrollBatchResults; + } + + public GetV1PayrollBatchesPayrollBatchUuidResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * successful + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional payrollBatchResults() { + return (Optional) payrollBatchResults; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public GetV1PayrollBatchesPayrollBatchUuidResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public GetV1PayrollBatchesPayrollBatchUuidResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public GetV1PayrollBatchesPayrollBatchUuidResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * successful + */ + public GetV1PayrollBatchesPayrollBatchUuidResponse withPayrollBatchResults(PayrollBatchResults payrollBatchResults) { + Utils.checkNotNull(payrollBatchResults, "payrollBatchResults"); + this.payrollBatchResults = Optional.ofNullable(payrollBatchResults); + return this; + } + + + /** + * successful + */ + public GetV1PayrollBatchesPayrollBatchUuidResponse withPayrollBatchResults(Optional payrollBatchResults) { + Utils.checkNotNull(payrollBatchResults, "payrollBatchResults"); + this.payrollBatchResults = payrollBatchResults; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetV1PayrollBatchesPayrollBatchUuidResponse other = (GetV1PayrollBatchesPayrollBatchUuidResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.payrollBatchResults, other.payrollBatchResults); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + payrollBatchResults); + } + + @Override + public String toString() { + return Utils.toString(GetV1PayrollBatchesPayrollBatchUuidResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "payrollBatchResults", payrollBatchResults); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional payrollBatchResults = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * successful + */ + public Builder payrollBatchResults(PayrollBatchResults payrollBatchResults) { + Utils.checkNotNull(payrollBatchResults, "payrollBatchResults"); + this.payrollBatchResults = Optional.ofNullable(payrollBatchResults); + return this; + } + + /** + * successful + */ + public Builder payrollBatchResults(Optional payrollBatchResults) { + Utils.checkNotNull(payrollBatchResults, "payrollBatchResults"); + this.payrollBatchResults = payrollBatchResults; + return this; + } + + public GetV1PayrollBatchesPayrollBatchUuidResponse build() { + + return new GetV1PayrollBatchesPayrollBatchUuidResponse( + contentType, statusCode, rawResponse, + payrollBatchResults); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1PayrollDigestsPayrollDigestUuidRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1PayrollDigestsPayrollDigestUuidRequestBuilder.java index 7298be218..dda4666cb 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1PayrollDigestsPayrollDigestUuidRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1PayrollDigestsPayrollDigestUuidRequestBuilder.java @@ -21,11 +21,11 @@ public class GetV1PayrollDigestsPayrollDigestUuidRequestBuilder { private GetV1PayrollDigestsPayrollDigestUuidSecurity security; - private String payrollDigestUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String payrollDigestUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -38,12 +38,6 @@ public GetV1PayrollDigestsPayrollDigestUuidRequestBuilder security(GetV1PayrollD this.security = security; return this; } - - public GetV1PayrollDigestsPayrollDigestUuidRequestBuilder payrollDigestUuid(String payrollDigestUuid) { - Utils.checkNotNull(payrollDigestUuid, "payrollDigestUuid"); - this.payrollDigestUuid = payrollDigestUuid; - return this; - } public GetV1PayrollDigestsPayrollDigestUuidRequestBuilder xGustoAPIVersion(GetV1PayrollDigestsPayrollDigestUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -57,14 +51,20 @@ public GetV1PayrollDigestsPayrollDigestUuidRequestBuilder xGustoAPIVersion(Optio return this; } + public GetV1PayrollDigestsPayrollDigestUuidRequestBuilder payrollDigestUuid(String payrollDigestUuid) { + Utils.checkNotNull(payrollDigestUuid, "payrollDigestUuid"); + this.payrollDigestUuid = payrollDigestUuid; + return this; + } + private GetV1PayrollDigestsPayrollDigestUuidRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1PayrollDigestsPayrollDigestUuidRequest request = new GetV1PayrollDigestsPayrollDigestUuidRequest(payrollDigestUuid, - xGustoAPIVersion); + GetV1PayrollDigestsPayrollDigestUuidRequest request = new GetV1PayrollDigestsPayrollDigestUuidRequest(xGustoAPIVersion, + payrollDigestUuid); return request; } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1PeopleBatchesPeopleBatchUuidRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1PeopleBatchesPeopleBatchUuidRequestBuilder.java index 0a1785628..cc26aa4a1 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1PeopleBatchesPeopleBatchUuidRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1PeopleBatchesPeopleBatchUuidRequestBuilder.java @@ -19,23 +19,17 @@ public class GetV1PeopleBatchesPeopleBatchUuidRequestBuilder { - private String peopleBatchUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String peopleBatchUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1PeopleBatchesPeopleBatchUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1PeopleBatchesPeopleBatchUuidRequestBuilder peopleBatchUuid(String peopleBatchUuid) { - Utils.checkNotNull(peopleBatchUuid, "peopleBatchUuid"); - this.peopleBatchUuid = peopleBatchUuid; - return this; - } public GetV1PeopleBatchesPeopleBatchUuidRequestBuilder xGustoAPIVersion(GetV1PeopleBatchesPeopleBatchUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public GetV1PeopleBatchesPeopleBatchUuidRequestBuilder xGustoAPIVersion(Optional return this; } + public GetV1PeopleBatchesPeopleBatchUuidRequestBuilder peopleBatchUuid(String peopleBatchUuid) { + Utils.checkNotNull(peopleBatchUuid, "peopleBatchUuid"); + this.peopleBatchUuid = peopleBatchUuid; + return this; + } + private GetV1PeopleBatchesPeopleBatchUuidRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1PeopleBatchesPeopleBatchUuidRequest request = new GetV1PeopleBatchesPeopleBatchUuidRequest(peopleBatchUuid, - xGustoAPIVersion); + GetV1PeopleBatchesPeopleBatchUuidRequest request = new GetV1PeopleBatchesPeopleBatchUuidRequest(xGustoAPIVersion, + peopleBatchUuid); return request; } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1TokenInfoRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1TokenInfoRequestBuilder.java index 25a369659..71aa5ab14 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1TokenInfoRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1TokenInfoRequestBuilder.java @@ -7,8 +7,8 @@ import com.fasterxml.jackson.core.type.TypeReference; import com.gusto.embedded_api_v_2025_11_15.SDKConfiguration; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1TokenInfoHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1TokenInfoRequest; -import com.gusto.embedded_api_v_2025_11_15.models.operations.XGustoAPIVersion; import com.gusto.embedded_api_v_2025_11_15.operations.GetV1TokenInfo; import com.gusto.embedded_api_v_2025_11_15.utils.Headers; import com.gusto.embedded_api_v_2025_11_15.utils.LazySingletonValue; @@ -18,10 +18,10 @@ public class GetV1TokenInfoRequestBuilder { - private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", - new TypeReference>() {}); + new TypeReference>() {}); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -29,13 +29,13 @@ public GetV1TokenInfoRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - public GetV1TokenInfoRequestBuilder xGustoAPIVersion(XGustoAPIVersion xGustoAPIVersion) { + public GetV1TokenInfoRequestBuilder xGustoAPIVersion(GetV1TokenInfoHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); return this; } - public GetV1TokenInfoRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + public GetV1TokenInfoRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); this.xGustoAPIVersion = xGustoAPIVersion; return this; @@ -62,9 +62,9 @@ public CompletableFuture call() { .thenCompose(operation::handleResponse); } - private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = new LazySingletonValue<>( "xGustoAPIVersion", "\"2025-11-15\"", - new TypeReference>() {}); + new TypeReference>() {}); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1WebhookSubscriptionUuidRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1WebhookSubscriptionUuidRequestBuilder.java index 7685e0e98..520066da5 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1WebhookSubscriptionUuidRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1WebhookSubscriptionUuidRequestBuilder.java @@ -21,11 +21,11 @@ public class GetV1WebhookSubscriptionUuidRequestBuilder { private GetV1WebhookSubscriptionUuidSecurity security; - private String webhookSubscriptionUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String webhookSubscriptionUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -38,12 +38,6 @@ public GetV1WebhookSubscriptionUuidRequestBuilder security(GetV1WebhookSubscript this.security = security; return this; } - - public GetV1WebhookSubscriptionUuidRequestBuilder webhookSubscriptionUuid(String webhookSubscriptionUuid) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; - return this; - } public GetV1WebhookSubscriptionUuidRequestBuilder xGustoAPIVersion(GetV1WebhookSubscriptionUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -57,14 +51,20 @@ public GetV1WebhookSubscriptionUuidRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String webhookSubscriptionUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -38,12 +38,6 @@ public GetV1WebhookSubscriptionVerificationTokenUuidRequestBuilder security(GetV this.security = security; return this; } - - public GetV1WebhookSubscriptionVerificationTokenUuidRequestBuilder webhookSubscriptionUuid(String webhookSubscriptionUuid) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; - return this; - } public GetV1WebhookSubscriptionVerificationTokenUuidRequestBuilder xGustoAPIVersion(GetV1WebhookSubscriptionVerificationTokenUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -57,14 +51,20 @@ public GetV1WebhookSubscriptionVerificationTokenUuidRequestBuilder xGustoAPIVers return this; } + public GetV1WebhookSubscriptionVerificationTokenUuidRequestBuilder webhookSubscriptionUuid(String webhookSubscriptionUuid) { + Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); + this.webhookSubscriptionUuid = webhookSubscriptionUuid; + return this; + } + private GetV1WebhookSubscriptionVerificationTokenUuidRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1WebhookSubscriptionVerificationTokenUuidRequest request = new GetV1WebhookSubscriptionVerificationTokenUuidRequest(webhookSubscriptionUuid, - xGustoAPIVersion); + GetV1WebhookSubscriptionVerificationTokenUuidRequest request = new GetV1WebhookSubscriptionVerificationTokenUuidRequest(xGustoAPIVersion, + webhookSubscriptionUuid); return request; } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1WorkAddressesWorkAddressUuidRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1WorkAddressesWorkAddressUuidRequestBuilder.java index 0d6362a50..453576bb9 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1WorkAddressesWorkAddressUuidRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetV1WorkAddressesWorkAddressUuidRequestBuilder.java @@ -19,23 +19,17 @@ public class GetV1WorkAddressesWorkAddressUuidRequestBuilder { - private String workAddressUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String workAddressUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1WorkAddressesWorkAddressUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1WorkAddressesWorkAddressUuidRequestBuilder workAddressUuid(String workAddressUuid) { - Utils.checkNotNull(workAddressUuid, "workAddressUuid"); - this.workAddressUuid = workAddressUuid; - return this; - } public GetV1WorkAddressesWorkAddressUuidRequestBuilder xGustoAPIVersion(GetV1WorkAddressesWorkAddressUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public GetV1WorkAddressesWorkAddressUuidRequestBuilder xGustoAPIVersion(Optional return this; } + public GetV1WorkAddressesWorkAddressUuidRequestBuilder workAddressUuid(String workAddressUuid) { + Utils.checkNotNull(workAddressUuid, "workAddressUuid"); + this.workAddressUuid = workAddressUuid; + return this; + } + private GetV1WorkAddressesWorkAddressUuidRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1WorkAddressesWorkAddressUuidRequest request = new GetV1WorkAddressesWorkAddressUuidRequest(workAddressUuid, - xGustoAPIVersion); + GetV1WorkAddressesWorkAddressUuidRequest request = new GetV1WorkAddressesWorkAddressUuidRequest(xGustoAPIVersion, + workAddressUuid); return request; } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetWireInRequestsWireInRequestUuidRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetWireInRequestsWireInRequestUuidRequestBuilder.java index 4650d0595..5f06cbaae 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetWireInRequestsWireInRequestUuidRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/GetWireInRequestsWireInRequestUuidRequestBuilder.java @@ -19,23 +19,17 @@ public class GetWireInRequestsWireInRequestUuidRequestBuilder { - private String wireInRequestUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String wireInRequestUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetWireInRequestsWireInRequestUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetWireInRequestsWireInRequestUuidRequestBuilder wireInRequestUuid(String wireInRequestUuid) { - Utils.checkNotNull(wireInRequestUuid, "wireInRequestUuid"); - this.wireInRequestUuid = wireInRequestUuid; - return this; - } public GetWireInRequestsWireInRequestUuidRequestBuilder xGustoAPIVersion(GetWireInRequestsWireInRequestUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public GetWireInRequestsWireInRequestUuidRequestBuilder xGustoAPIVersion(Optiona return this; } + public GetWireInRequestsWireInRequestUuidRequestBuilder wireInRequestUuid(String wireInRequestUuid) { + Utils.checkNotNull(wireInRequestUuid, "wireInRequestUuid"); + this.wireInRequestUuid = wireInRequestUuid; + return this; + } + private GetWireInRequestsWireInRequestUuidRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetWireInRequestsWireInRequestUuidRequest request = new GetWireInRequestsWireInRequestUuidRequest(wireInRequestUuid, - xGustoAPIVersion); + GetWireInRequestsWireInRequestUuidRequest request = new GetWireInRequestsWireInRequestUuidRequest(xGustoAPIVersion, + wireInRequestUuid); return request; } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/OauthAccessTokenRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/OauthAccessTokenRequestBuilder.java index 8442a2e97..898b1d51d 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/OauthAccessTokenRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/OauthAccessTokenRequestBuilder.java @@ -7,7 +7,7 @@ import com.fasterxml.jackson.core.type.TypeReference; import com.gusto.embedded_api_v_2025_11_15.SDKConfiguration; -import com.gusto.embedded_api_v_2025_11_15.models.operations.HeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.OauthAccessTokenHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2025_11_15.models.operations.OauthAccessTokenRequest; import com.gusto.embedded_api_v_2025_11_15.models.operations.OauthAccessTokenRequestBody; import com.gusto.embedded_api_v_2025_11_15.operations.OauthAccessToken; @@ -19,10 +19,10 @@ public class OauthAccessTokenRequestBuilder { - private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", - new TypeReference>() {}); + new TypeReference>() {}); private OauthAccessTokenRequestBody requestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -31,13 +31,13 @@ public OauthAccessTokenRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - public OauthAccessTokenRequestBuilder xGustoAPIVersion(HeaderXGustoAPIVersion xGustoAPIVersion) { + public OauthAccessTokenRequestBuilder xGustoAPIVersion(OauthAccessTokenHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); return this; } - public OauthAccessTokenRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + public OauthAccessTokenRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); this.xGustoAPIVersion = xGustoAPIVersion; return this; @@ -71,9 +71,9 @@ public CompletableFuture call() { .thenCompose(operation::handleResponse); } - private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = new LazySingletonValue<>( "xGustoAPIVersion", "\"2025-11-15\"", - new TypeReference>() {}); + new TypeReference>() {}); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder.java index 150aeac24..474087b2a 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder.java @@ -20,12 +20,12 @@ public class PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder { - private String companyId; - private String id; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String companyId; + private String id; private Optional requestBody = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -33,18 +33,6 @@ public class PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuild public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - - public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder id(String id) { - Utils.checkNotNull(id, "id"); - this.id = id; - return this; - } public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder xGustoAPIVersion(PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -57,6 +45,18 @@ public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder xGu this.xGustoAPIVersion = xGustoAPIVersion; return this; } + + public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder companyId(String companyId) { + Utils.checkNotNull(companyId, "companyId"); + this.companyId = companyId; + return this; + } + + public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder id(String id) { + Utils.checkNotNull(id, "id"); + this.id = id; + return this; + } public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder requestBody(PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); @@ -76,9 +76,9 @@ private PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest buildRequ xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest request = new PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest(companyId, + PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest request = new PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest(xGustoAPIVersion, + companyId, id, - xGustoAPIVersion, requestBody); return request; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder.java index 2b3188f62..adcf4c946 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder.java @@ -20,11 +20,11 @@ public class PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder { - private String id; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String id; private Optional requestBody = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder id(String id) { - Utils.checkNotNull(id, "id"); - this.id = id; - return this; - } public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder xGustoAPIVersion(PatchV1ContractorPaymentGroupsIdPartnerDisbursementsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -50,6 +44,12 @@ public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder xGusto this.xGustoAPIVersion = xGustoAPIVersion; return this; } + + public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder id(String id) { + Utils.checkNotNull(id, "id"); + this.id = id; + return this; + } public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder requestBody(PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); @@ -69,8 +69,8 @@ private PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest buildRequest xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest request = new PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest(id, - xGustoAPIVersion, + PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest request = new PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest(xGustoAPIVersion, + id, requestBody); return request; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder.java index f44888c64..3aea99807 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder.java @@ -21,12 +21,12 @@ public class PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder { - private String employeeUuid; - private Long effectiveYear; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String employeeUuid; + private Long effectiveYear; private EmployeeSection603HighEarnerStatusUpdateRequest employeeSection603HighEarnerStatusUpdateRequest; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -34,18 +34,6 @@ public class PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYe public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder employeeUuid(String employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = employeeUuid; - return this; - } - - public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder effectiveYear(long effectiveYear) { - Utils.checkNotNull(effectiveYear, "effectiveYear"); - this.effectiveYear = effectiveYear; - return this; - } public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder xGustoAPIVersion(PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -59,6 +47,18 @@ public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequ return this; } + public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder employeeUuid(String employeeUuid) { + Utils.checkNotNull(employeeUuid, "employeeUuid"); + this.employeeUuid = employeeUuid; + return this; + } + + public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder effectiveYear(long effectiveYear) { + Utils.checkNotNull(effectiveYear, "effectiveYear"); + this.effectiveYear = effectiveYear; + return this; + } + public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder employeeSection603HighEarnerStatusUpdateRequest(EmployeeSection603HighEarnerStatusUpdateRequest employeeSection603HighEarnerStatusUpdateRequest) { Utils.checkNotNull(employeeSection603HighEarnerStatusUpdateRequest, "employeeSection603HighEarnerStatusUpdateRequest"); this.employeeSection603HighEarnerStatusUpdateRequest = employeeSection603HighEarnerStatusUpdateRequest; @@ -71,9 +71,9 @@ private PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearReq xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest request = new PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest(employeeUuid, + PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest request = new PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest(xGustoAPIVersion, + employeeUuid, effectiveYear, - xGustoAPIVersion, employeeSection603HighEarnerStatusUpdateRequest); return request; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostDepartmentsRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostDepartmentsRequestBuilder.java index 622522fb4..66b8eefbe 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostDepartmentsRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostDepartmentsRequestBuilder.java @@ -20,11 +20,11 @@ public class PostDepartmentsRequestBuilder { - private String companyUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String companyUuid; private DepartmentCreateRequestBody departmentCreateRequestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PostDepartmentsRequestBuilder { public PostDepartmentsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostDepartmentsRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public PostDepartmentsRequestBuilder xGustoAPIVersion(PostDepartmentsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public PostDepartmentsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String companyUuid; private PartnerManagedCompanyAcceptTermsOfServiceRequest partnerManagedCompanyAcceptTermsOfServiceRequest; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBu public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBuilder xGustoAPIVersion(PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBuilder return this; } + public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBuilder partnerManagedCompanyAcceptTermsOfServiceRequest(PartnerManagedCompanyAcceptTermsOfServiceRequest partnerManagedCompanyAcceptTermsOfServiceRequest) { Utils.checkNotNull(partnerManagedCompanyAcceptTermsOfServiceRequest, "partnerManagedCompanyAcceptTermsOfServiceRequest"); this.partnerManagedCompanyAcceptTermsOfServiceRequest = partnerManagedCompanyAcceptTermsOfServiceRequest; @@ -63,8 +63,8 @@ private PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest buildR xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest request = new PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest(companyUuid, - xGustoAPIVersion, + PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest request = new PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest(xGustoAPIVersion, + companyUuid, partnerManagedCompanyAcceptTermsOfServiceRequest); return request; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder.java index 5491a9fef..0b0f0d0d2 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder.java @@ -20,11 +20,11 @@ public class PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder { - private String companyUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String companyUuid; private PartnerManagedCompanyRetrieveTermsOfServiceRequest partnerManagedCompanyRetrieveTermsOfServiceRequest; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder xGustoAPIVersion(PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilde return this; } + public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder partnerManagedCompanyRetrieveTermsOfServiceRequest(PartnerManagedCompanyRetrieveTermsOfServiceRequest partnerManagedCompanyRetrieveTermsOfServiceRequest) { Utils.checkNotNull(partnerManagedCompanyRetrieveTermsOfServiceRequest, "partnerManagedCompanyRetrieveTermsOfServiceRequest"); this.partnerManagedCompanyRetrieveTermsOfServiceRequest = partnerManagedCompanyRetrieveTermsOfServiceRequest; @@ -63,8 +63,8 @@ private PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest buil xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest request = new PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest(companyUuid, - xGustoAPIVersion, + PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest request = new PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest(xGustoAPIVersion, + companyUuid, partnerManagedCompanyRetrieveTermsOfServiceRequest); return request; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1BulkReportsRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1BulkReportsRequestBuilder.java new file mode 100644 index 000000000..4a27aa606 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1BulkReportsRequestBuilder.java @@ -0,0 +1,87 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations.async; + +import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.AsyncRequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2025_11_15.SDKConfiguration; +import com.gusto.embedded_api_v_2025_11_15.models.components.BulkReportBody; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1BulkReportsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1BulkReportsRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1BulkReportsSecurity; +import com.gusto.embedded_api_v_2025_11_15.operations.PostV1BulkReports; +import com.gusto.embedded_api_v_2025_11_15.utils.Headers; +import com.gusto.embedded_api_v_2025_11_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; + +public class PostV1BulkReportsRequestBuilder { + + private PostV1BulkReportsSecurity security; + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2025-11-15\"", + new TypeReference>() {}); + private BulkReportBody bulkReportBody; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public PostV1BulkReportsRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public PostV1BulkReportsRequestBuilder security(PostV1BulkReportsSecurity security) { + Utils.checkNotNull(security, "security"); + this.security = security; + return this; + } + + public PostV1BulkReportsRequestBuilder xGustoAPIVersion(PostV1BulkReportsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public PostV1BulkReportsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public PostV1BulkReportsRequestBuilder bulkReportBody(BulkReportBody bulkReportBody) { + Utils.checkNotNull(bulkReportBody, "bulkReportBody"); + this.bulkReportBody = bulkReportBody; + return this; + } + + + private PostV1BulkReportsRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + PostV1BulkReportsRequest request = new PostV1BulkReportsRequest(xGustoAPIVersion, + bulkReportBody); + + return request; + } + + public CompletableFuture call() { + + AsyncRequestOperation operation + = new PostV1BulkReports.Async(sdkConfiguration, security, _headers); + PostV1BulkReportsRequest request = buildRequest(); + + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2025-11-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1BulkReportsResponse.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1BulkReportsResponse.java new file mode 100644 index 000000000..128342296 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1BulkReportsResponse.java @@ -0,0 +1,253 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations.async; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2025_11_15.models.components.CreateBulkReport; +import com.gusto.embedded_api_v_2025_11_15.utils.AsyncResponse; +import com.gusto.embedded_api_v_2025_11_15.utils.Blob; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.Optional; + + +public class PostV1BulkReportsResponse implements AsyncResponse { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * Created + */ + private Optional createBulkReport; + + @JsonCreator + public PostV1BulkReportsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional createBulkReport) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(createBulkReport, "createBulkReport"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.createBulkReport = createBulkReport; + } + + public PostV1BulkReportsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * Created + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional createBulkReport() { + return (Optional) createBulkReport; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public PostV1BulkReportsResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public PostV1BulkReportsResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public PostV1BulkReportsResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * Created + */ + public PostV1BulkReportsResponse withCreateBulkReport(CreateBulkReport createBulkReport) { + Utils.checkNotNull(createBulkReport, "createBulkReport"); + this.createBulkReport = Optional.ofNullable(createBulkReport); + return this; + } + + + /** + * Created + */ + public PostV1BulkReportsResponse withCreateBulkReport(Optional createBulkReport) { + Utils.checkNotNull(createBulkReport, "createBulkReport"); + this.createBulkReport = createBulkReport; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PostV1BulkReportsResponse other = (PostV1BulkReportsResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.createBulkReport, other.createBulkReport); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + createBulkReport); + } + + @Override + public String toString() { + return Utils.toString(PostV1BulkReportsResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "createBulkReport", createBulkReport); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional createBulkReport = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * Created + */ + public Builder createBulkReport(CreateBulkReport createBulkReport) { + Utils.checkNotNull(createBulkReport, "createBulkReport"); + this.createBulkReport = Optional.ofNullable(createBulkReport); + return this; + } + + /** + * Created + */ + public Builder createBulkReport(Optional createBulkReport) { + Utils.checkNotNull(createBulkReport, "createBulkReport"); + this.createBulkReport = createBulkReport; + return this; + } + + public PostV1BulkReportsResponse build() { + + return new PostV1BulkReportsResponse( + contentType, statusCode, rawResponse, + createBulkReport); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder.java index 3599f4f0e..66d18c3aa 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder.java @@ -20,11 +20,11 @@ public class PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder { - private String companyId; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String companyId; private PostV1CompaniesCompanyIdPeopleBatchesRequestBody requestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder { public PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } public PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder xGustoAPIVersion(PostV1CompaniesCompanyIdPeopleBatchesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder xGustoAPIVersion(Opti return this; } + public PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder companyId(String companyId) { + Utils.checkNotNull(companyId, "companyId"); + this.companyId = companyId; + return this; + } + public PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder requestBody(PostV1CompaniesCompanyIdPeopleBatchesRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); this.requestBody = requestBody; @@ -63,8 +63,8 @@ private PostV1CompaniesCompanyIdPeopleBatchesRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PostV1CompaniesCompanyIdPeopleBatchesRequest request = new PostV1CompaniesCompanyIdPeopleBatchesRequest(companyId, - xGustoAPIVersion, + PostV1CompaniesCompanyIdPeopleBatchesRequest request = new PostV1CompaniesCompanyIdPeopleBatchesRequest(xGustoAPIVersion, + companyId, requestBody); return request; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder.java index 6d678af13..323bb6619 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder.java @@ -20,11 +20,11 @@ public class PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder { - private String companyUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String companyUuid; private SignatoryInviteRequest signatoryInviteRequest; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder { public PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder xGustoAPIVersion(PostV1CompaniesCompanyUuidSignatoriesInviteHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder xGustoAPIVersio return this; } + public PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + public PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder signatoryInviteRequest(SignatoryInviteRequest signatoryInviteRequest) { Utils.checkNotNull(signatoryInviteRequest, "signatoryInviteRequest"); this.signatoryInviteRequest = signatoryInviteRequest; @@ -63,8 +63,8 @@ private PostV1CompaniesCompanyUuidSignatoriesInviteRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PostV1CompaniesCompanyUuidSignatoriesInviteRequest request = new PostV1CompaniesCompanyUuidSignatoriesInviteRequest(companyUuid, - xGustoAPIVersion, + PostV1CompaniesCompanyUuidSignatoriesInviteRequest request = new PostV1CompaniesCompanyUuidSignatoriesInviteRequest(xGustoAPIVersion, + companyUuid, signatoryInviteRequest); return request; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1CompanySignatoriesRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1CompanySignatoriesRequestBuilder.java index 90e819b3a..d61fb50de 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1CompanySignatoriesRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1CompanySignatoriesRequestBuilder.java @@ -20,11 +20,11 @@ public class PostV1CompanySignatoriesRequestBuilder { - private String companyUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String companyUuid; private SignatoryCreateRequest signatoryCreateRequest; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PostV1CompanySignatoriesRequestBuilder { public PostV1CompanySignatoriesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostV1CompanySignatoriesRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public PostV1CompanySignatoriesRequestBuilder xGustoAPIVersion(PostV1CompanySignatoriesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public PostV1CompanySignatoriesRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2025-11-15\"", + new TypeReference>() {}); + private String contractorUuid; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public PostV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public PostV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder xGustoAPIVersion(PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public PostV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public PostV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder contractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + + + private PostV1ContractorsContractorUuidMemberPortalInvitationsRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + PostV1ContractorsContractorUuidMemberPortalInvitationsRequest request = new PostV1ContractorsContractorUuidMemberPortalInvitationsRequest(xGustoAPIVersion, + contractorUuid); + + return request; + } + + public CompletableFuture call() { + + AsyncRequestOperation operation + = new PostV1ContractorsContractorUuidMemberPortalInvitations.Async(sdkConfiguration, _headers); + PostV1ContractorsContractorUuidMemberPortalInvitationsRequest request = buildRequest(); + + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2025-11-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1ContractorsContractorUuidMemberPortalInvitationsResponse.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1ContractorsContractorUuidMemberPortalInvitationsResponse.java new file mode 100644 index 000000000..d5ca3a917 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1ContractorsContractorUuidMemberPortalInvitationsResponse.java @@ -0,0 +1,181 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations.async; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2025_11_15.utils.AsyncResponse; +import com.gusto.embedded_api_v_2025_11_15.utils.Blob; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.net.http.HttpResponse; + + +public class PostV1ContractorsContractorUuidMemberPortalInvitationsResponse implements AsyncResponse { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + @JsonCreator + public PostV1ContractorsContractorUuidMemberPortalInvitationsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public PostV1ContractorsContractorUuidMemberPortalInvitationsResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public PostV1ContractorsContractorUuidMemberPortalInvitationsResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public PostV1ContractorsContractorUuidMemberPortalInvitationsResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PostV1ContractorsContractorUuidMemberPortalInvitationsResponse other = (PostV1ContractorsContractorUuidMemberPortalInvitationsResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse); + } + + @Override + public String toString() { + return Utils.toString(PostV1ContractorsContractorUuidMemberPortalInvitationsResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + public PostV1ContractorsContractorUuidMemberPortalInvitationsResponse build() { + + return new PostV1ContractorsContractorUuidMemberPortalInvitationsResponse( + contentType, statusCode, rawResponse); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1ContractorsContractorUuidRehireRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1ContractorsContractorUuidRehireRequestBuilder.java index c055b7487..8ee844cef 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1ContractorsContractorUuidRehireRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1ContractorsContractorUuidRehireRequestBuilder.java @@ -20,11 +20,11 @@ public class PostV1ContractorsContractorUuidRehireRequestBuilder { - private String contractorUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String contractorUuid; private Optional requestBody = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PostV1ContractorsContractorUuidRehireRequestBuilder { public PostV1ContractorsContractorUuidRehireRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostV1ContractorsContractorUuidRehireRequestBuilder contractorUuid(String contractorUuid) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); - this.contractorUuid = contractorUuid; - return this; - } public PostV1ContractorsContractorUuidRehireRequestBuilder xGustoAPIVersion(PostV1ContractorsContractorUuidRehireHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -50,6 +44,12 @@ public PostV1ContractorsContractorUuidRehireRequestBuilder xGustoAPIVersion(Opti this.xGustoAPIVersion = xGustoAPIVersion; return this; } + + public PostV1ContractorsContractorUuidRehireRequestBuilder contractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } public PostV1ContractorsContractorUuidRehireRequestBuilder requestBody(PostV1ContractorsContractorUuidRehireRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); @@ -69,8 +69,8 @@ private PostV1ContractorsContractorUuidRehireRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PostV1ContractorsContractorUuidRehireRequest request = new PostV1ContractorsContractorUuidRehireRequest(contractorUuid, - xGustoAPIVersion, + PostV1ContractorsContractorUuidRehireRequest request = new PostV1ContractorsContractorUuidRehireRequest(xGustoAPIVersion, + contractorUuid, requestBody); return request; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1ContractorsContractorUuidTerminationRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1ContractorsContractorUuidTerminationRequestBuilder.java index 45aee9085..2c5c992b4 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1ContractorsContractorUuidTerminationRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1ContractorsContractorUuidTerminationRequestBuilder.java @@ -20,11 +20,11 @@ public class PostV1ContractorsContractorUuidTerminationRequestBuilder { - private String contractorUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String contractorUuid; private Optional requestBody = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PostV1ContractorsContractorUuidTerminationRequestBuilder { public PostV1ContractorsContractorUuidTerminationRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostV1ContractorsContractorUuidTerminationRequestBuilder contractorUuid(String contractorUuid) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); - this.contractorUuid = contractorUuid; - return this; - } public PostV1ContractorsContractorUuidTerminationRequestBuilder xGustoAPIVersion(PostV1ContractorsContractorUuidTerminationHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -50,6 +44,12 @@ public PostV1ContractorsContractorUuidTerminationRequestBuilder xGustoAPIVersion this.xGustoAPIVersion = xGustoAPIVersion; return this; } + + public PostV1ContractorsContractorUuidTerminationRequestBuilder contractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } public PostV1ContractorsContractorUuidTerminationRequestBuilder requestBody(PostV1ContractorsContractorUuidTerminationRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); @@ -69,8 +69,8 @@ private PostV1ContractorsContractorUuidTerminationRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PostV1ContractorsContractorUuidTerminationRequest request = new PostV1ContractorsContractorUuidTerminationRequest(contractorUuid, - xGustoAPIVersion, + PostV1ContractorsContractorUuidTerminationRequest request = new PostV1ContractorsContractorUuidTerminationRequest(xGustoAPIVersion, + contractorUuid, requestBody); return request; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder.java index 3e32ccf5e..e3aa95e49 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder.java @@ -20,11 +20,11 @@ public class PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder { - private String employeeId; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String employeeId; private PostV1EmployeesEmployeeIdHomeAddressesRequestBody requestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder { public PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder employeeId(String employeeId) { - Utils.checkNotNull(employeeId, "employeeId"); - this.employeeId = employeeId; - return this; - } public PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder xGustoAPIVersion(PostV1EmployeesEmployeeIdHomeAddressesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder xGustoAPIVersion(Opt return this; } + public PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder employeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + public PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder requestBody(PostV1EmployeesEmployeeIdHomeAddressesRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); this.requestBody = requestBody; @@ -63,8 +63,8 @@ private PostV1EmployeesEmployeeIdHomeAddressesRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PostV1EmployeesEmployeeIdHomeAddressesRequest request = new PostV1EmployeesEmployeeIdHomeAddressesRequest(employeeId, - xGustoAPIVersion, + PostV1EmployeesEmployeeIdHomeAddressesRequest request = new PostV1EmployeesEmployeeIdHomeAddressesRequest(xGustoAPIVersion, + employeeId, requestBody); return request; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1EmployeesEmployeeIdJobsRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1EmployeesEmployeeIdJobsRequestBuilder.java index 514972e01..22e2e3e27 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1EmployeesEmployeeIdJobsRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1EmployeesEmployeeIdJobsRequestBuilder.java @@ -20,11 +20,11 @@ public class PostV1EmployeesEmployeeIdJobsRequestBuilder { - private String employeeId; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String employeeId; private JobsCreateRequestBody jobsCreateRequestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PostV1EmployeesEmployeeIdJobsRequestBuilder { public PostV1EmployeesEmployeeIdJobsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostV1EmployeesEmployeeIdJobsRequestBuilder employeeId(String employeeId) { - Utils.checkNotNull(employeeId, "employeeId"); - this.employeeId = employeeId; - return this; - } public PostV1EmployeesEmployeeIdJobsRequestBuilder xGustoAPIVersion(PostV1EmployeesEmployeeIdJobsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public PostV1EmployeesEmployeeIdJobsRequestBuilder xGustoAPIVersion(Optional rawResponse; /** - * created + * created a primary job with a null title */ private Optional job; @@ -87,7 +87,7 @@ public HttpResponse rawResponse() { } /** - * created + * created a primary job with a null title */ @SuppressWarnings("unchecked") @JsonIgnore @@ -128,7 +128,7 @@ public PostV1EmployeesEmployeeIdJobsResponse withRawResponse(HttpResponse } /** - * created + * created a primary job with a null title */ public PostV1EmployeesEmployeeIdJobsResponse withJob(Job job) { Utils.checkNotNull(job, "job"); @@ -138,7 +138,7 @@ public PostV1EmployeesEmployeeIdJobsResponse withJob(Job job) { /** - * created + * created a primary job with a null title */ public PostV1EmployeesEmployeeIdJobsResponse withJob(Optional job) { Utils.checkNotNull(job, "job"); @@ -225,7 +225,7 @@ public Builder rawResponse(HttpResponse rawResponse) { /** - * created + * created a primary job with a null title */ public Builder job(Job job) { Utils.checkNotNull(job, "job"); @@ -234,7 +234,7 @@ public Builder job(Job job) { } /** - * created + * created a primary job with a null title */ public Builder job(Optional job) { Utils.checkNotNull(job, "job"); diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java new file mode 100644 index 000000000..03cfacfc9 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java @@ -0,0 +1,79 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations.async; + +import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.AsyncRequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2025_11_15.SDKConfiguration; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest; +import com.gusto.embedded_api_v_2025_11_15.operations.PostV1EmployeesEmployeeIdMemberPortalInvitations; +import com.gusto.embedded_api_v_2025_11_15.utils.Headers; +import com.gusto.embedded_api_v_2025_11_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.String; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; + +public class PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder { + + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2025-11-15\"", + new TypeReference>() {}); + private String employeeId; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder xGustoAPIVersion(PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder employeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + + + private PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest request = new PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest(xGustoAPIVersion, + employeeId); + + return request; + } + + public CompletableFuture call() { + + AsyncRequestOperation operation + = new PostV1EmployeesEmployeeIdMemberPortalInvitations.Async(sdkConfiguration, _headers); + PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest request = buildRequest(); + + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2025-11-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java new file mode 100644 index 000000000..79fdac31f --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java @@ -0,0 +1,181 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations.async; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2025_11_15.utils.AsyncResponse; +import com.gusto.embedded_api_v_2025_11_15.utils.Blob; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.net.http.HttpResponse; + + +public class PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse implements AsyncResponse { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + @JsonCreator + public PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse other = (PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse); + } + + @Override + public String toString() { + return Utils.toString(PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + public PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse build() { + + return new PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse( + contentType, statusCode, rawResponse); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder.java index 625f950a7..2d0467d1e 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder.java @@ -20,11 +20,11 @@ public class PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder { - private String employeeId; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String employeeId; private PostV1EmployeesEmployeeIdWorkAddressesRequestBody requestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder { public PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder employeeId(String employeeId) { - Utils.checkNotNull(employeeId, "employeeId"); - this.employeeId = employeeId; - return this; - } public PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder xGustoAPIVersion(PostV1EmployeesEmployeeIdWorkAddressesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder xGustoAPIVersion(Opt return this; } + public PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder employeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + public PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder requestBody(PostV1EmployeesEmployeeIdWorkAddressesRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); this.requestBody = requestBody; @@ -63,8 +63,8 @@ private PostV1EmployeesEmployeeIdWorkAddressesRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PostV1EmployeesEmployeeIdWorkAddressesRequest request = new PostV1EmployeesEmployeeIdWorkAddressesRequest(employeeId, - xGustoAPIVersion, + PostV1EmployeesEmployeeIdWorkAddressesRequest request = new PostV1EmployeesEmployeeIdWorkAddressesRequest(xGustoAPIVersion, + employeeId, requestBody); return request; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder.java index 682ab623b..637cfa7a8 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder.java @@ -20,11 +20,11 @@ public class PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder { - private String employeeUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String employeeUuid; private EmployeeSection603HighEarnerStatusCreateRequest employeeSection603HighEarnerStatusCreateRequest; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuild public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder employeeUuid(String employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = employeeUuid; - return this; - } public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder xGustoAPIVersion(PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder xGu return this; } + public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder employeeUuid(String employeeUuid) { + Utils.checkNotNull(employeeUuid, "employeeUuid"); + this.employeeUuid = employeeUuid; + return this; + } + public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder employeeSection603HighEarnerStatusCreateRequest(EmployeeSection603HighEarnerStatusCreateRequest employeeSection603HighEarnerStatusCreateRequest) { Utils.checkNotNull(employeeSection603HighEarnerStatusCreateRequest, "employeeSection603HighEarnerStatusCreateRequest"); this.employeeSection603HighEarnerStatusCreateRequest = employeeSection603HighEarnerStatusCreateRequest; @@ -63,8 +63,8 @@ private PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest buildRequ xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest request = new PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest(employeeUuid, - xGustoAPIVersion, + PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest request = new PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest(xGustoAPIVersion, + employeeUuid, employeeSection603HighEarnerStatusCreateRequest); return request; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1PayrollBatchesRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1PayrollBatchesRequestBuilder.java new file mode 100644 index 000000000..ababbf74a --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1PayrollBatchesRequestBuilder.java @@ -0,0 +1,87 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations.async; + +import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.AsyncRequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2025_11_15.SDKConfiguration; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1PayrollBatchesHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1PayrollBatchesRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1PayrollBatchesRequestBody; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1PayrollBatchesSecurity; +import com.gusto.embedded_api_v_2025_11_15.operations.PostV1PayrollBatches; +import com.gusto.embedded_api_v_2025_11_15.utils.Headers; +import com.gusto.embedded_api_v_2025_11_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; + +public class PostV1PayrollBatchesRequestBuilder { + + private PostV1PayrollBatchesSecurity security; + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2025-11-15\"", + new TypeReference>() {}); + private PostV1PayrollBatchesRequestBody requestBody; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public PostV1PayrollBatchesRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public PostV1PayrollBatchesRequestBuilder security(PostV1PayrollBatchesSecurity security) { + Utils.checkNotNull(security, "security"); + this.security = security; + return this; + } + + public PostV1PayrollBatchesRequestBuilder xGustoAPIVersion(PostV1PayrollBatchesHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public PostV1PayrollBatchesRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public PostV1PayrollBatchesRequestBuilder requestBody(PostV1PayrollBatchesRequestBody requestBody) { + Utils.checkNotNull(requestBody, "requestBody"); + this.requestBody = requestBody; + return this; + } + + + private PostV1PayrollBatchesRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + PostV1PayrollBatchesRequest request = new PostV1PayrollBatchesRequest(xGustoAPIVersion, + requestBody); + + return request; + } + + public CompletableFuture call() { + + AsyncRequestOperation operation + = new PostV1PayrollBatches.Async(sdkConfiguration, security, _headers); + PostV1PayrollBatchesRequest request = buildRequest(); + + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2025-11-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1PayrollBatchesResponse.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1PayrollBatchesResponse.java new file mode 100644 index 000000000..57dc7be33 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PostV1PayrollBatchesResponse.java @@ -0,0 +1,253 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations.async; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2025_11_15.models.components.PayrollBatch; +import com.gusto.embedded_api_v_2025_11_15.utils.AsyncResponse; +import com.gusto.embedded_api_v_2025_11_15.utils.Blob; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.Optional; + + +public class PostV1PayrollBatchesResponse implements AsyncResponse { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * created + */ + private Optional payrollBatch; + + @JsonCreator + public PostV1PayrollBatchesResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional payrollBatch) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(payrollBatch, "payrollBatch"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.payrollBatch = payrollBatch; + } + + public PostV1PayrollBatchesResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * created + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional payrollBatch() { + return (Optional) payrollBatch; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public PostV1PayrollBatchesResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public PostV1PayrollBatchesResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public PostV1PayrollBatchesResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * created + */ + public PostV1PayrollBatchesResponse withPayrollBatch(PayrollBatch payrollBatch) { + Utils.checkNotNull(payrollBatch, "payrollBatch"); + this.payrollBatch = Optional.ofNullable(payrollBatch); + return this; + } + + + /** + * created + */ + public PostV1PayrollBatchesResponse withPayrollBatch(Optional payrollBatch) { + Utils.checkNotNull(payrollBatch, "payrollBatch"); + this.payrollBatch = payrollBatch; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PostV1PayrollBatchesResponse other = (PostV1PayrollBatchesResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.payrollBatch, other.payrollBatch); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + payrollBatch); + } + + @Override + public String toString() { + return Utils.toString(PostV1PayrollBatchesResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "payrollBatch", payrollBatch); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional payrollBatch = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * created + */ + public Builder payrollBatch(PayrollBatch payrollBatch) { + Utils.checkNotNull(payrollBatch, "payrollBatch"); + this.payrollBatch = Optional.ofNullable(payrollBatch); + return this; + } + + /** + * created + */ + public Builder payrollBatch(Optional payrollBatch) { + Utils.checkNotNull(payrollBatch, "payrollBatch"); + this.payrollBatch = payrollBatch; + return this; + } + + public PostV1PayrollBatchesResponse build() { + + return new PostV1PayrollBatchesResponse( + contentType, statusCode, rawResponse, + payrollBatch); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PutAddPeopleToDepartmentRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PutAddPeopleToDepartmentRequestBuilder.java index 1aae676cb..4e7e63847 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PutAddPeopleToDepartmentRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PutAddPeopleToDepartmentRequestBuilder.java @@ -20,11 +20,11 @@ public class PutAddPeopleToDepartmentRequestBuilder { - private String departmentUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String departmentUuid; private DepartmentPeopleRequestBody departmentPeopleRequestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PutAddPeopleToDepartmentRequestBuilder { public PutAddPeopleToDepartmentRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutAddPeopleToDepartmentRequestBuilder departmentUuid(String departmentUuid) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); - this.departmentUuid = departmentUuid; - return this; - } public PutAddPeopleToDepartmentRequestBuilder xGustoAPIVersion(PutAddPeopleToDepartmentHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public PutAddPeopleToDepartmentRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String departmentUuid; private DepartmentUpdateRequestBody departmentUpdateRequestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PutDepartmentsRequestBuilder { public PutDepartmentsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutDepartmentsRequestBuilder departmentUuid(String departmentUuid) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); - this.departmentUuid = departmentUuid; - return this; - } public PutDepartmentsRequestBuilder xGustoAPIVersion(PutDepartmentsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public PutDepartmentsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String departmentUuid; private DepartmentPeopleRequestBody departmentPeopleRequestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PutRemovePeopleFromDepartmentRequestBuilder { public PutRemovePeopleFromDepartmentRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutRemovePeopleFromDepartmentRequestBuilder departmentUuid(String departmentUuid) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); - this.departmentUuid = departmentUuid; - return this; - } public PutRemovePeopleFromDepartmentRequestBuilder xGustoAPIVersion(PutRemovePeopleFromDepartmentHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public PutRemovePeopleFromDepartmentRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String companyId; private FederalTaxDetailsUpdate federalTaxDetailsUpdate; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PutV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder { public PutV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } public PutV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder xGustoAPIVersion(PutV1CompaniesCompanyIdFederalTaxDetailsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public PutV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder xGustoAPIVersion(O return this; } + public PutV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder companyId(String companyId) { + Utils.checkNotNull(companyId, "companyId"); + this.companyId = companyId; + return this; + } + public PutV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder federalTaxDetailsUpdate(FederalTaxDetailsUpdate federalTaxDetailsUpdate) { Utils.checkNotNull(federalTaxDetailsUpdate, "federalTaxDetailsUpdate"); this.federalTaxDetailsUpdate = federalTaxDetailsUpdate; @@ -63,8 +63,8 @@ private PutV1CompaniesCompanyIdFederalTaxDetailsRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PutV1CompaniesCompanyIdFederalTaxDetailsRequest request = new PutV1CompaniesCompanyIdFederalTaxDetailsRequest(companyId, - xGustoAPIVersion, + PutV1CompaniesCompanyIdFederalTaxDetailsRequest request = new PutV1CompaniesCompanyIdFederalTaxDetailsRequest(xGustoAPIVersion, + companyId, federalTaxDetailsUpdate); return request; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder.java index 09e316ee4..61d70177e 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder.java @@ -20,12 +20,12 @@ public class PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder { - private String companyUuid; - private String signatoryUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String companyUuid; + private String signatoryUuid; private SignatoryUpdateRequest signatoryUpdateRequest; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -33,18 +33,6 @@ public class PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder { public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder signatoryUuid(String signatoryUuid) { - Utils.checkNotNull(signatoryUuid, "signatoryUuid"); - this.signatoryUuid = signatoryUuid; - return this; - } public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder xGustoAPIVersion(PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -58,6 +46,18 @@ public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder xGustoAPI return this; } + public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder signatoryUuid(String signatoryUuid) { + Utils.checkNotNull(signatoryUuid, "signatoryUuid"); + this.signatoryUuid = signatoryUuid; + return this; + } + public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder signatoryUpdateRequest(SignatoryUpdateRequest signatoryUpdateRequest) { Utils.checkNotNull(signatoryUpdateRequest, "signatoryUpdateRequest"); this.signatoryUpdateRequest = signatoryUpdateRequest; @@ -70,9 +70,9 @@ private PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest buildRequest() xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest request = new PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest(companyUuid, + PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest request = new PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest(xGustoAPIVersion, + companyUuid, signatoryUuid, - xGustoAPIVersion, signatoryUpdateRequest); return request; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder.java index b15a13b46..d754fba59 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder.java @@ -20,12 +20,12 @@ public class PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder { - private String companyUuid; - private String state; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String companyUuid; + private String state; private PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody requestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -33,18 +33,6 @@ public class PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder { public PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - public PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder state(String state) { - Utils.checkNotNull(state, "state"); - this.state = state; - return this; - } public PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder xGustoAPIVersion(PutV1CompaniesCompanyUuidTaxRequirementsStateHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -58,6 +46,18 @@ public PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder xGustoAPIVers return this; } + public PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + public PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder state(String state) { + Utils.checkNotNull(state, "state"); + this.state = state; + return this; + } + public PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder requestBody(PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); this.requestBody = requestBody; @@ -70,9 +70,9 @@ private PutV1CompaniesCompanyUuidTaxRequirementsStateRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PutV1CompaniesCompanyUuidTaxRequirementsStateRequest request = new PutV1CompaniesCompanyUuidTaxRequirementsStateRequest(companyUuid, + PutV1CompaniesCompanyUuidTaxRequirementsStateRequest request = new PutV1CompaniesCompanyUuidTaxRequirementsStateRequest(xGustoAPIVersion, + companyUuid, state, - xGustoAPIVersion, requestBody); return request; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PutV1CompaniesRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PutV1CompaniesRequestBuilder.java index 91b852370..6788fe404 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PutV1CompaniesRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PutV1CompaniesRequestBuilder.java @@ -20,11 +20,11 @@ public class PutV1CompaniesRequestBuilder { - private String companyId; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String companyId; private PutV1CompaniesRequestBody requestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PutV1CompaniesRequestBuilder { public PutV1CompaniesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutV1CompaniesRequestBuilder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } public PutV1CompaniesRequestBuilder xGustoAPIVersion(PutV1CompaniesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public PutV1CompaniesRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String companyId; private CompanyIndustrySelectionRequiredBody companyIndustrySelectionRequiredBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PutV1CompanyIndustryRequestBuilder { public PutV1CompanyIndustryRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutV1CompanyIndustryRequestBuilder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } public PutV1CompanyIndustryRequestBuilder xGustoAPIVersion(PutV1CompanyIndustryHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public PutV1CompanyIndustryRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String contractorPaymentGroupUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequestBuilder contractorPaymentGroupUuid(String contractorPaymentGroupUuid) { - Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); - this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; - return this; - } public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequestBuilder xGustoAPIVersion(PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequestBuilder xG return this; } + public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequestBuilder contractorPaymentGroupUuid(String contractorPaymentGroupUuid) { + Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); + this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; + return this; + } + private PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest request = new PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest(contractorPaymentGroupUuid, - xGustoAPIVersion); + PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest request = new PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest(xGustoAPIVersion, + contractorPaymentGroupUuid); return request; } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PutV1JobsJobIdRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PutV1JobsJobIdRequestBuilder.java index 2980f1b91..7db685b0b 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PutV1JobsJobIdRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PutV1JobsJobIdRequestBuilder.java @@ -20,11 +20,11 @@ public class PutV1JobsJobIdRequestBuilder { - private String jobId; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String jobId; private JobsUpdateRequestBody jobsUpdateRequestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PutV1JobsJobIdRequestBuilder { public PutV1JobsJobIdRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutV1JobsJobIdRequestBuilder jobId(String jobId) { - Utils.checkNotNull(jobId, "jobId"); - this.jobId = jobId; - return this; - } public PutV1JobsJobIdRequestBuilder xGustoAPIVersion(PutV1JobsJobIdHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public PutV1JobsJobIdRequestBuilder xGustoAPIVersion(Optional rawResponse; /** - * successful + * successful blank title on a non-primary active job */ private Optional job; @@ -87,7 +87,7 @@ public HttpResponse rawResponse() { } /** - * successful + * successful blank title on a non-primary active job */ @SuppressWarnings("unchecked") @JsonIgnore @@ -128,7 +128,7 @@ public PutV1JobsJobIdResponse withRawResponse(HttpResponse rawResponse) { } /** - * successful + * successful blank title on a non-primary active job */ public PutV1JobsJobIdResponse withJob(Job job) { Utils.checkNotNull(job, "job"); @@ -138,7 +138,7 @@ public PutV1JobsJobIdResponse withJob(Job job) { /** - * successful + * successful blank title on a non-primary active job */ public PutV1JobsJobIdResponse withJob(Optional job) { Utils.checkNotNull(job, "job"); @@ -225,7 +225,7 @@ public Builder rawResponse(HttpResponse rawResponse) { /** - * successful + * successful blank title on a non-primary active job */ public Builder job(Job job) { Utils.checkNotNull(job, "job"); @@ -234,7 +234,7 @@ public Builder job(Job job) { } /** - * successful + * successful blank title on a non-primary active job */ public Builder job(Optional job) { Utils.checkNotNull(job, "job"); diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder.java new file mode 100644 index 000000000..cc1b2dd9c --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder.java @@ -0,0 +1,87 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations.async; + +import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.AsyncRequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2025_11_15.SDKConfiguration; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity; +import com.gusto.embedded_api_v_2025_11_15.operations.PutV1PartnerManagedCompaniesCompanyUuidDisassociate; +import com.gusto.embedded_api_v_2025_11_15.utils.Headers; +import com.gusto.embedded_api_v_2025_11_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.String; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; + +public class PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder { + + private PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity security; + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2025-11-15\"", + new TypeReference>() {}); + private String companyUuid; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder security(PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity security) { + Utils.checkNotNull(security, "security"); + this.security = security; + return this; + } + + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder xGustoAPIVersion(PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + + private PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest request = new PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest(xGustoAPIVersion, + companyUuid); + + return request; + } + + public CompletableFuture call() { + + AsyncRequestOperation operation + = new PutV1PartnerManagedCompaniesCompanyUuidDisassociate.Async(sdkConfiguration, security, _headers); + PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest request = buildRequest(); + + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2025-11-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse.java new file mode 100644 index 000000000..934d35b20 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse.java @@ -0,0 +1,253 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.models.operations.async; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2025_11_15.models.components.PartnerManagedCompanyDisassociateResponse; +import com.gusto.embedded_api_v_2025_11_15.utils.AsyncResponse; +import com.gusto.embedded_api_v_2025_11_15.utils.Blob; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.Optional; + + +public class PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse implements AsyncResponse { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * OK + */ + private Optional partnerManagedCompanyDisassociateResponse; + + @JsonCreator + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional partnerManagedCompanyDisassociateResponse) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(partnerManagedCompanyDisassociateResponse, "partnerManagedCompanyDisassociateResponse"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.partnerManagedCompanyDisassociateResponse = partnerManagedCompanyDisassociateResponse; + } + + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * OK + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional partnerManagedCompanyDisassociateResponse() { + return (Optional) partnerManagedCompanyDisassociateResponse; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * OK + */ + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse withPartnerManagedCompanyDisassociateResponse(PartnerManagedCompanyDisassociateResponse partnerManagedCompanyDisassociateResponse) { + Utils.checkNotNull(partnerManagedCompanyDisassociateResponse, "partnerManagedCompanyDisassociateResponse"); + this.partnerManagedCompanyDisassociateResponse = Optional.ofNullable(partnerManagedCompanyDisassociateResponse); + return this; + } + + + /** + * OK + */ + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse withPartnerManagedCompanyDisassociateResponse(Optional partnerManagedCompanyDisassociateResponse) { + Utils.checkNotNull(partnerManagedCompanyDisassociateResponse, "partnerManagedCompanyDisassociateResponse"); + this.partnerManagedCompanyDisassociateResponse = partnerManagedCompanyDisassociateResponse; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse other = (PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.partnerManagedCompanyDisassociateResponse, other.partnerManagedCompanyDisassociateResponse); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + partnerManagedCompanyDisassociateResponse); + } + + @Override + public String toString() { + return Utils.toString(PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "partnerManagedCompanyDisassociateResponse", partnerManagedCompanyDisassociateResponse); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional partnerManagedCompanyDisassociateResponse = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * OK + */ + public Builder partnerManagedCompanyDisassociateResponse(PartnerManagedCompanyDisassociateResponse partnerManagedCompanyDisassociateResponse) { + Utils.checkNotNull(partnerManagedCompanyDisassociateResponse, "partnerManagedCompanyDisassociateResponse"); + this.partnerManagedCompanyDisassociateResponse = Optional.ofNullable(partnerManagedCompanyDisassociateResponse); + return this; + } + + /** + * OK + */ + public Builder partnerManagedCompanyDisassociateResponse(Optional partnerManagedCompanyDisassociateResponse) { + Utils.checkNotNull(partnerManagedCompanyDisassociateResponse, "partnerManagedCompanyDisassociateResponse"); + this.partnerManagedCompanyDisassociateResponse = partnerManagedCompanyDisassociateResponse; + return this; + } + + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse build() { + + return new PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse( + contentType, statusCode, rawResponse, + partnerManagedCompanyDisassociateResponse); + } + + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder.java index 74d7a0c5a..f37b42aa0 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder.java @@ -20,11 +20,11 @@ public class PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder { - private String companyUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String companyUuid; private PartnerManagedCompanyMigrateRequest partnerManagedCompanyMigrateRequest; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder { public PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder xGustoAPIVersion(PutV1PartnerManagedCompaniesCompanyUuidMigrateHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder xGustoAPIVer return this; } + public PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + public PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder partnerManagedCompanyMigrateRequest(PartnerManagedCompanyMigrateRequest partnerManagedCompanyMigrateRequest) { Utils.checkNotNull(partnerManagedCompanyMigrateRequest, "partnerManagedCompanyMigrateRequest"); this.partnerManagedCompanyMigrateRequest = partnerManagedCompanyMigrateRequest; @@ -63,8 +63,8 @@ private PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest request = new PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest(companyUuid, - xGustoAPIVersion, + PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest request = new PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest(xGustoAPIVersion, + companyUuid, partnerManagedCompanyMigrateRequest); return request; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PutV1VerifyWebhookSubscriptionUuidRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PutV1VerifyWebhookSubscriptionUuidRequestBuilder.java index 0c43a3666..be57137b2 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PutV1VerifyWebhookSubscriptionUuidRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PutV1VerifyWebhookSubscriptionUuidRequestBuilder.java @@ -22,11 +22,11 @@ public class PutV1VerifyWebhookSubscriptionUuidRequestBuilder { private PutV1VerifyWebhookSubscriptionUuidSecurity security; - private String webhookSubscriptionUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String webhookSubscriptionUuid; private PutV1VerifyWebhookSubscriptionUuidRequestBody requestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -40,12 +40,6 @@ public PutV1VerifyWebhookSubscriptionUuidRequestBuilder security(PutV1VerifyWebh this.security = security; return this; } - - public PutV1VerifyWebhookSubscriptionUuidRequestBuilder webhookSubscriptionUuid(String webhookSubscriptionUuid) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; - return this; - } public PutV1VerifyWebhookSubscriptionUuidRequestBuilder xGustoAPIVersion(PutV1VerifyWebhookSubscriptionUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -59,6 +53,12 @@ public PutV1VerifyWebhookSubscriptionUuidRequestBuilder xGustoAPIVersion(Optiona return this; } + public PutV1VerifyWebhookSubscriptionUuidRequestBuilder webhookSubscriptionUuid(String webhookSubscriptionUuid) { + Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); + this.webhookSubscriptionUuid = webhookSubscriptionUuid; + return this; + } + public PutV1VerifyWebhookSubscriptionUuidRequestBuilder requestBody(PutV1VerifyWebhookSubscriptionUuidRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); this.requestBody = requestBody; @@ -71,8 +71,8 @@ private PutV1VerifyWebhookSubscriptionUuidRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PutV1VerifyWebhookSubscriptionUuidRequest request = new PutV1VerifyWebhookSubscriptionUuidRequest(webhookSubscriptionUuid, - xGustoAPIVersion, + PutV1VerifyWebhookSubscriptionUuidRequest request = new PutV1VerifyWebhookSubscriptionUuidRequest(xGustoAPIVersion, + webhookSubscriptionUuid, requestBody); return request; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PutV1WebhookSubscriptionUuidRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PutV1WebhookSubscriptionUuidRequestBuilder.java index 6c0a17333..d3a0a850a 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PutV1WebhookSubscriptionUuidRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PutV1WebhookSubscriptionUuidRequestBuilder.java @@ -22,11 +22,11 @@ public class PutV1WebhookSubscriptionUuidRequestBuilder { private PutV1WebhookSubscriptionUuidSecurity security; - private String webhookSubscriptionUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String webhookSubscriptionUuid; private PutV1WebhookSubscriptionUuidRequestBody requestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -40,12 +40,6 @@ public PutV1WebhookSubscriptionUuidRequestBuilder security(PutV1WebhookSubscript this.security = security; return this; } - - public PutV1WebhookSubscriptionUuidRequestBuilder webhookSubscriptionUuid(String webhookSubscriptionUuid) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; - return this; - } public PutV1WebhookSubscriptionUuidRequestBuilder xGustoAPIVersion(PutV1WebhookSubscriptionUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -59,6 +53,12 @@ public PutV1WebhookSubscriptionUuidRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String workAddressUuid; private PutV1WorkAddressesWorkAddressUuidRequestBody requestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PutV1WorkAddressesWorkAddressUuidRequestBuilder { public PutV1WorkAddressesWorkAddressUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutV1WorkAddressesWorkAddressUuidRequestBuilder workAddressUuid(String workAddressUuid) { - Utils.checkNotNull(workAddressUuid, "workAddressUuid"); - this.workAddressUuid = workAddressUuid; - return this; - } public PutV1WorkAddressesWorkAddressUuidRequestBuilder xGustoAPIVersion(PutV1WorkAddressesWorkAddressUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public PutV1WorkAddressesWorkAddressUuidRequestBuilder xGustoAPIVersion(Optional return this; } + public PutV1WorkAddressesWorkAddressUuidRequestBuilder workAddressUuid(String workAddressUuid) { + Utils.checkNotNull(workAddressUuid, "workAddressUuid"); + this.workAddressUuid = workAddressUuid; + return this; + } + public PutV1WorkAddressesWorkAddressUuidRequestBuilder requestBody(PutV1WorkAddressesWorkAddressUuidRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); this.requestBody = requestBody; @@ -63,8 +63,8 @@ private PutV1WorkAddressesWorkAddressUuidRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PutV1WorkAddressesWorkAddressUuidRequest request = new PutV1WorkAddressesWorkAddressUuidRequest(workAddressUuid, - xGustoAPIVersion, + PutV1WorkAddressesWorkAddressUuidRequest request = new PutV1WorkAddressesWorkAddressUuidRequest(xGustoAPIVersion, + workAddressUuid, requestBody); return request; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PutWireInRequestsWireInRequestUuidRequestBuilder.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PutWireInRequestsWireInRequestUuidRequestBuilder.java index 9ef77ab28..9e258ee78 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PutWireInRequestsWireInRequestUuidRequestBuilder.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/models/operations/async/PutWireInRequestsWireInRequestUuidRequestBuilder.java @@ -20,11 +20,11 @@ public class PutWireInRequestsWireInRequestUuidRequestBuilder { - private String wireInRequestUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2025-11-15\"", new TypeReference>() {}); + private String wireInRequestUuid; private WireInRequestUpdateRequestBody wireInRequestUpdateRequestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PutWireInRequestsWireInRequestUuidRequestBuilder { public PutWireInRequestsWireInRequestUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutWireInRequestsWireInRequestUuidRequestBuilder wireInRequestUuid(String wireInRequestUuid) { - Utils.checkNotNull(wireInRequestUuid, "wireInRequestUuid"); - this.wireInRequestUuid = wireInRequestUuid; - return this; - } public PutWireInRequestsWireInRequestUuidRequestBuilder xGustoAPIVersion(PutWireInRequestsWireInRequestUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public PutWireInRequestsWireInRequestUuidRequestBuilder xGustoAPIVersion(Optiona return this; } + public PutWireInRequestsWireInRequestUuidRequestBuilder wireInRequestUuid(String wireInRequestUuid) { + Utils.checkNotNull(wireInRequestUuid, "wireInRequestUuid"); + this.wireInRequestUuid = wireInRequestUuid; + return this; + } + public PutWireInRequestsWireInRequestUuidRequestBuilder wireInRequestUpdateRequestBody(WireInRequestUpdateRequestBody wireInRequestUpdateRequestBody) { Utils.checkNotNull(wireInRequestUpdateRequestBody, "wireInRequestUpdateRequestBody"); this.wireInRequestUpdateRequestBody = wireInRequestUpdateRequestBody; @@ -63,8 +63,8 @@ private PutWireInRequestsWireInRequestUuidRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PutWireInRequestsWireInRequestUuidRequest request = new PutWireInRequestsWireInRequestUuidRequest(wireInRequestUuid, - xGustoAPIVersion, + PutWireInRequestsWireInRequestUuidRequest request = new PutWireInRequestsWireInRequestUuidRequest(xGustoAPIVersion, + wireInRequestUuid, wireInRequestUpdateRequestBody); return request; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitations.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitations.java new file mode 100644 index 000000000..ea64da800 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitations.java @@ -0,0 +1,268 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.operations; + +import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.RequestOperation; +import static com.gusto.embedded_api_v_2025_11_15.utils.Exceptions.unchecked; +import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.AsyncRequestOperation; + +import com.gusto.embedded_api_v_2025_11_15.SDKConfiguration; +import com.gusto.embedded_api_v_2025_11_15.SecuritySource; +import com.gusto.embedded_api_v_2025_11_15.models.errors.APIException; +import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse; +import com.gusto.embedded_api_v_2025_11_15.utils.Blob; +import com.gusto.embedded_api_v_2025_11_15.utils.HTTPClient; +import com.gusto.embedded_api_v_2025_11_15.utils.HTTPRequest; +import com.gusto.embedded_api_v_2025_11_15.utils.Headers; +import com.gusto.embedded_api_v_2025_11_15.utils.Hook.AfterErrorContextImpl; +import com.gusto.embedded_api_v_2025_11_15.utils.Hook.AfterSuccessContextImpl; +import com.gusto.embedded_api_v_2025_11_15.utils.Hook.BeforeRequestContextImpl; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.io.InputStream; +import java.lang.Exception; +import java.lang.String; +import java.lang.Throwable; +import java.net.http.HttpRequest; +import java.net.http.HttpResponse; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; +import java.util.function.Function; + + +public class DeleteV1ContractorsContractorUuidMemberPortalInvitations { + + static abstract class Base { + final SDKConfiguration sdkConfiguration; + final String baseUrl; + final SecuritySource securitySource; + final HTTPClient client; + final Headers _headers; + + public Base(SDKConfiguration sdkConfiguration, Headers _headers) { + this.sdkConfiguration = sdkConfiguration; + this._headers =_headers; + this.baseUrl = this.sdkConfiguration.serverUrl(); + this.securitySource = this.sdkConfiguration.securitySource(); + this.client = this.sdkConfiguration.client(); + } + + Optional securitySource() { + return Optional.ofNullable(this.securitySource); + } + + BeforeRequestContextImpl createBeforeRequestContext() { + return new BeforeRequestContextImpl( + this.sdkConfiguration, + this.baseUrl, + "delete-v1-contractors-contractor_uuid-member_portal_invitations", + java.util.Optional.empty(), + securitySource()); + } + + AfterSuccessContextImpl createAfterSuccessContext() { + return new AfterSuccessContextImpl( + this.sdkConfiguration, + this.baseUrl, + "delete-v1-contractors-contractor_uuid-member_portal_invitations", + java.util.Optional.empty(), + securitySource()); + } + + AfterErrorContextImpl createAfterErrorContext() { + return new AfterErrorContextImpl( + this.sdkConfiguration, + this.baseUrl, + "delete-v1-contractors-contractor_uuid-member_portal_invitations", + java.util.Optional.empty(), + securitySource()); + } + HttpRequest buildRequest(T request, Class klass) throws Exception { + String url = Utils.generateURL( + klass, + this.baseUrl, + "/v1/contractors/{contractor_uuid}/member_portal_invitations", + request, null); + HTTPRequest req = new HTTPRequest(url, "DELETE"); + req.addHeader("Accept", "application/json") + .addHeader("user-agent", SDKConfiguration.USER_AGENT); + _headers.forEach((k, list) -> list.forEach(v -> req.addHeader(k, v))); + req.addHeaders(Utils.getHeadersFromMetadata(request, null)); + Utils.configureSecurity(req, this.sdkConfiguration.securitySource().getSecurity(), "companyAccessAuth"); + + return req.build(); + } + } + + public static class Sync extends Base + implements RequestOperation { + public Sync(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private HttpRequest onBuildRequest(DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest request) throws Exception { + HttpRequest req = buildRequest(request, DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest.class); + return sdkConfiguration.hooks().beforeRequest(createBeforeRequestContext(), req); + } + + private HttpResponse onError(HttpResponse response, Exception error) throws Exception { + return sdkConfiguration.hooks().afterError( + createAfterErrorContext(), + Optional.ofNullable(response), + Optional.ofNullable(error)); + } + + private HttpResponse onSuccess(HttpResponse response) throws Exception { + return sdkConfiguration.hooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public HttpResponse doRequest(DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest request) { + HttpRequest r = unchecked(() -> onBuildRequest(request)).get(); + HttpResponse httpRes; + try { + httpRes = client.send(r); + if (Utils.statusCodeMatches(httpRes.statusCode(), "4XX", "5XX")) { + httpRes = onError(httpRes, null); + } else { + httpRes = onSuccess(httpRes); + } + } catch (Exception e) { + httpRes = unchecked(() -> onError(null, e)).get(); + } + + return httpRes; + } + + + @Override + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse handleResponse(HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse.Builder resBuilder = + DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "204")) { + // no content + return res; + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw NotFoundErrorObject.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw UnprocessableEntityError.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + throw APIException.from("API error occurred", response); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + throw APIException.from("API error occurred", response); + } + throw APIException.from("Unexpected status code received: " + response.statusCode(), response); + } + } + public static class Async extends Base + implements AsyncRequestOperation { + + public Async(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private CompletableFuture onBuildRequest(DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest request) throws Exception { + HttpRequest req = buildRequest(request, DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest.class); + return this.sdkConfiguration.asyncHooks().beforeRequest(createBeforeRequestContext(), req); + } + + private CompletableFuture> onError(HttpResponse response, Throwable error) { + return this.sdkConfiguration.asyncHooks().afterError(createAfterErrorContext(), response, error); + } + + private CompletableFuture> onSuccess(HttpResponse response) { + return this.sdkConfiguration.asyncHooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public CompletableFuture> doRequest(DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest request) { + return unchecked(() -> onBuildRequest(request)).get().thenCompose(client::sendAsync) + .handle((resp, err) -> { + if (err != null) { + return onError(null, err); + } + if (Utils.statusCodeMatches(resp.statusCode(), "4XX", "5XX")) { + return onError(resp, null); + } + return CompletableFuture.completedFuture(resp); + }) + .thenCompose(Function.identity()) + .thenCompose(this::onSuccess); + } + + @Override + public CompletableFuture handleResponse( + HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + com.gusto.embedded_api_v_2025_11_15.models.operations.async.DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse.Builder resBuilder = + com.gusto.embedded_api_v_2025_11_15.models.operations.async.DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + com.gusto.embedded_api_v_2025_11_15.models.operations.async.DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "204")) { + // no content + return CompletableFuture.completedFuture(res); + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return NotFoundErrorObject.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return UnprocessableEntityError.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + return Utils.createAsyncApiError(response, "Unexpected status code received: " + response.statusCode()); + } + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/DeleteV1ContractorsContractorUuidRehire.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/DeleteV1ContractorsContractorUuidRehire.java index 95a3283df..785f0931c 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/DeleteV1ContractorsContractorUuidRehire.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/DeleteV1ContractorsContractorUuidRehire.java @@ -10,6 +10,7 @@ import com.gusto.embedded_api_v_2025_11_15.SDKConfiguration; import com.gusto.embedded_api_v_2025_11_15.SecuritySource; import com.gusto.embedded_api_v_2025_11_15.models.errors.APIException; +import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1ContractorsContractorUuidRehireRequest; import com.gusto.embedded_api_v_2025_11_15.models.operations.DeleteV1ContractorsContractorUuidRehireResponse; import com.gusto.embedded_api_v_2025_11_15.utils.Blob; @@ -85,7 +86,7 @@ HttpRequest buildRequest(T request, Class klass) throws Exception { "/v1/contractors/{contractor_uuid}/rehire", request, null); HTTPRequest req = new HTTPRequest(url, "DELETE"); - req.addHeader("Accept", "*/*") + req.addHeader("Accept", "application/json") .addHeader("user-agent", SDKConfiguration.USER_AGENT); _headers.forEach((k, list) -> list.forEach(v -> req.addHeader(k, v))); req.addHeaders(Utils.getHeadersFromMetadata(request, null)); @@ -155,7 +156,14 @@ public DeleteV1ContractorsContractorUuidRehireResponse handleResponse(HttpRespon // no content return res; } - if (Utils.statusCodeMatches(response.statusCode(), "422", "4XX")) { + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw UnprocessableEntityError.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { // no content throw APIException.from("API error occurred", response); } @@ -222,7 +230,15 @@ public CompletableFutureHttpRequest buildRequest(T request, Class klass) throws Exception { "/v1/contractors/{contractor_uuid}/termination", request, null); HTTPRequest req = new HTTPRequest(url, "DELETE"); - req.addHeader("Accept", "*/*") + req.addHeader("Accept", "application/json") .addHeader("user-agent", SDKConfiguration.USER_AGENT); _headers.forEach((k, list) -> list.forEach(v -> req.addHeader(k, v))); req.addHeaders(Utils.getHeadersFromMetadata(request, null)); @@ -155,7 +156,14 @@ public DeleteV1ContractorsContractorUuidTerminationResponse handleResponse(HttpR // no content return res; } - if (Utils.statusCodeMatches(response.statusCode(), "422", "4XX")) { + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw UnprocessableEntityError.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { // no content throw APIException.from("API error occurred", response); } @@ -222,7 +230,15 @@ public CompletableFuture securitySource() { + return Optional.ofNullable(this.securitySource); + } + + BeforeRequestContextImpl createBeforeRequestContext() { + return new BeforeRequestContextImpl( + this.sdkConfiguration, + this.baseUrl, + "delete-v1-employees-employee_id-member_portal_invitations", + java.util.Optional.empty(), + securitySource()); + } + + AfterSuccessContextImpl createAfterSuccessContext() { + return new AfterSuccessContextImpl( + this.sdkConfiguration, + this.baseUrl, + "delete-v1-employees-employee_id-member_portal_invitations", + java.util.Optional.empty(), + securitySource()); + } + + AfterErrorContextImpl createAfterErrorContext() { + return new AfterErrorContextImpl( + this.sdkConfiguration, + this.baseUrl, + "delete-v1-employees-employee_id-member_portal_invitations", + java.util.Optional.empty(), + securitySource()); + } + HttpRequest buildRequest(T request, Class klass) throws Exception { + String url = Utils.generateURL( + klass, + this.baseUrl, + "/v1/employees/{employee_id}/member_portal_invitations", + request, null); + HTTPRequest req = new HTTPRequest(url, "DELETE"); + req.addHeader("Accept", "application/json") + .addHeader("user-agent", SDKConfiguration.USER_AGENT); + _headers.forEach((k, list) -> list.forEach(v -> req.addHeader(k, v))); + req.addHeaders(Utils.getHeadersFromMetadata(request, null)); + Utils.configureSecurity(req, this.sdkConfiguration.securitySource().getSecurity(), "companyAccessAuth"); + + return req.build(); + } + } + + public static class Sync extends Base + implements RequestOperation { + public Sync(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private HttpRequest onBuildRequest(DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest request) throws Exception { + HttpRequest req = buildRequest(request, DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest.class); + return sdkConfiguration.hooks().beforeRequest(createBeforeRequestContext(), req); + } + + private HttpResponse onError(HttpResponse response, Exception error) throws Exception { + return sdkConfiguration.hooks().afterError( + createAfterErrorContext(), + Optional.ofNullable(response), + Optional.ofNullable(error)); + } + + private HttpResponse onSuccess(HttpResponse response) throws Exception { + return sdkConfiguration.hooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public HttpResponse doRequest(DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest request) { + HttpRequest r = unchecked(() -> onBuildRequest(request)).get(); + HttpResponse httpRes; + try { + httpRes = client.send(r); + if (Utils.statusCodeMatches(httpRes.statusCode(), "4XX", "5XX")) { + httpRes = onError(httpRes, null); + } else { + httpRes = onSuccess(httpRes); + } + } catch (Exception e) { + httpRes = unchecked(() -> onError(null, e)).get(); + } + + return httpRes; + } + + + @Override + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse handleResponse(HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse.Builder resBuilder = + DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "204")) { + // no content + return res; + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw NotFoundErrorObject.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw UnprocessableEntityError.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + throw APIException.from("API error occurred", response); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + throw APIException.from("API error occurred", response); + } + throw APIException.from("Unexpected status code received: " + response.statusCode(), response); + } + } + public static class Async extends Base + implements AsyncRequestOperation { + + public Async(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private CompletableFuture onBuildRequest(DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest request) throws Exception { + HttpRequest req = buildRequest(request, DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest.class); + return this.sdkConfiguration.asyncHooks().beforeRequest(createBeforeRequestContext(), req); + } + + private CompletableFuture> onError(HttpResponse response, Throwable error) { + return this.sdkConfiguration.asyncHooks().afterError(createAfterErrorContext(), response, error); + } + + private CompletableFuture> onSuccess(HttpResponse response) { + return this.sdkConfiguration.asyncHooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public CompletableFuture> doRequest(DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest request) { + return unchecked(() -> onBuildRequest(request)).get().thenCompose(client::sendAsync) + .handle((resp, err) -> { + if (err != null) { + return onError(null, err); + } + if (Utils.statusCodeMatches(resp.statusCode(), "4XX", "5XX")) { + return onError(resp, null); + } + return CompletableFuture.completedFuture(resp); + }) + .thenCompose(Function.identity()) + .thenCompose(this::onSuccess); + } + + @Override + public CompletableFuture handleResponse( + HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + com.gusto.embedded_api_v_2025_11_15.models.operations.async.DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse.Builder resBuilder = + com.gusto.embedded_api_v_2025_11_15.models.operations.async.DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + com.gusto.embedded_api_v_2025_11_15.models.operations.async.DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "204")) { + // no content + return CompletableFuture.completedFuture(res); + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return NotFoundErrorObject.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return UnprocessableEntityError.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + return Utils.createAsyncApiError(response, "Unexpected status code received: " + response.statusCode()); + } + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/GetReverseWireTransactions.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/GetReverseWireTransactions.java new file mode 100644 index 000000000..150d7dd1c --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/GetReverseWireTransactions.java @@ -0,0 +1,267 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.operations; + +import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.RequestOperation; +import static com.gusto.embedded_api_v_2025_11_15.utils.Exceptions.unchecked; +import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.AsyncRequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2025_11_15.SDKConfiguration; +import com.gusto.embedded_api_v_2025_11_15.SecuritySource; +import com.gusto.embedded_api_v_2025_11_15.models.components.ReverseWireTransaction; +import com.gusto.embedded_api_v_2025_11_15.models.errors.APIException; +import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetReverseWireTransactionsRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetReverseWireTransactionsResponse; +import com.gusto.embedded_api_v_2025_11_15.utils.Blob; +import com.gusto.embedded_api_v_2025_11_15.utils.HTTPClient; +import com.gusto.embedded_api_v_2025_11_15.utils.HTTPRequest; +import com.gusto.embedded_api_v_2025_11_15.utils.Headers; +import com.gusto.embedded_api_v_2025_11_15.utils.Hook.AfterErrorContextImpl; +import com.gusto.embedded_api_v_2025_11_15.utils.Hook.AfterSuccessContextImpl; +import com.gusto.embedded_api_v_2025_11_15.utils.Hook.BeforeRequestContextImpl; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.io.InputStream; +import java.lang.Exception; +import java.lang.String; +import java.lang.Throwable; +import java.net.http.HttpRequest; +import java.net.http.HttpResponse; +import java.util.List; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; +import java.util.function.Function; + + +public class GetReverseWireTransactions { + + static abstract class Base { + final SDKConfiguration sdkConfiguration; + final String baseUrl; + final SecuritySource securitySource; + final HTTPClient client; + final Headers _headers; + + public Base(SDKConfiguration sdkConfiguration, Headers _headers) { + this.sdkConfiguration = sdkConfiguration; + this._headers =_headers; + this.baseUrl = this.sdkConfiguration.serverUrl(); + this.securitySource = this.sdkConfiguration.securitySource(); + this.client = this.sdkConfiguration.client(); + } + + Optional securitySource() { + return Optional.ofNullable(this.securitySource); + } + + BeforeRequestContextImpl createBeforeRequestContext() { + return new BeforeRequestContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-reverse-wire-transactions", + java.util.Optional.empty(), + securitySource()); + } + + AfterSuccessContextImpl createAfterSuccessContext() { + return new AfterSuccessContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-reverse-wire-transactions", + java.util.Optional.empty(), + securitySource()); + } + + AfterErrorContextImpl createAfterErrorContext() { + return new AfterErrorContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-reverse-wire-transactions", + java.util.Optional.empty(), + securitySource()); + } + HttpRequest buildRequest(T request, Class klass) throws Exception { + String url = Utils.generateURL( + klass, + this.baseUrl, + "/v1/companies/{company_uuid}/reverse_wire_transactions", + request, null); + HTTPRequest req = new HTTPRequest(url, "GET"); + req.addHeader("Accept", "application/json") + .addHeader("user-agent", SDKConfiguration.USER_AGENT); + _headers.forEach((k, list) -> list.forEach(v -> req.addHeader(k, v))); + + req.addQueryParams(Utils.getQueryParams( + klass, + request, + null)); + req.addHeaders(Utils.getHeadersFromMetadata(request, null)); + Utils.configureSecurity(req, this.sdkConfiguration.securitySource().getSecurity(), "companyAccessAuth"); + + return req.build(); + } + } + + public static class Sync extends Base + implements RequestOperation { + public Sync(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private HttpRequest onBuildRequest(GetReverseWireTransactionsRequest request) throws Exception { + HttpRequest req = buildRequest(request, GetReverseWireTransactionsRequest.class); + return sdkConfiguration.hooks().beforeRequest(createBeforeRequestContext(), req); + } + + private HttpResponse onError(HttpResponse response, Exception error) throws Exception { + return sdkConfiguration.hooks().afterError( + createAfterErrorContext(), + Optional.ofNullable(response), + Optional.ofNullable(error)); + } + + private HttpResponse onSuccess(HttpResponse response) throws Exception { + return sdkConfiguration.hooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public HttpResponse doRequest(GetReverseWireTransactionsRequest request) { + HttpRequest r = unchecked(() -> onBuildRequest(request)).get(); + HttpResponse httpRes; + try { + httpRes = client.send(r); + if (Utils.statusCodeMatches(httpRes.statusCode(), "4XX", "5XX")) { + httpRes = onError(httpRes, null); + } else { + httpRes = onSuccess(httpRes); + } + } catch (Exception e) { + httpRes = unchecked(() -> onError(null, e)).get(); + } + + return httpRes; + } + + + @Override + public GetReverseWireTransactionsResponse handleResponse(HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + GetReverseWireTransactionsResponse.Builder resBuilder = + GetReverseWireTransactionsResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + GetReverseWireTransactionsResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "200")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return res.withReverseWireTransactionList(Utils.unmarshal(response, new TypeReference>() {})); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw NotFoundErrorObject.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + throw APIException.from("API error occurred", response); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + throw APIException.from("API error occurred", response); + } + throw APIException.from("Unexpected status code received: " + response.statusCode(), response); + } + } + public static class Async extends Base + implements AsyncRequestOperation { + + public Async(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private CompletableFuture onBuildRequest(GetReverseWireTransactionsRequest request) throws Exception { + HttpRequest req = buildRequest(request, GetReverseWireTransactionsRequest.class); + return this.sdkConfiguration.asyncHooks().beforeRequest(createBeforeRequestContext(), req); + } + + private CompletableFuture> onError(HttpResponse response, Throwable error) { + return this.sdkConfiguration.asyncHooks().afterError(createAfterErrorContext(), response, error); + } + + private CompletableFuture> onSuccess(HttpResponse response) { + return this.sdkConfiguration.asyncHooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public CompletableFuture> doRequest(GetReverseWireTransactionsRequest request) { + return unchecked(() -> onBuildRequest(request)).get().thenCompose(client::sendAsync) + .handle((resp, err) -> { + if (err != null) { + return onError(null, err); + } + if (Utils.statusCodeMatches(resp.statusCode(), "4XX", "5XX")) { + return onError(resp, null); + } + return CompletableFuture.completedFuture(resp); + }) + .thenCompose(Function.identity()) + .thenCompose(this::onSuccess); + } + + @Override + public CompletableFuture handleResponse( + HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + com.gusto.embedded_api_v_2025_11_15.models.operations.async.GetReverseWireTransactionsResponse.Builder resBuilder = + com.gusto.embedded_api_v_2025_11_15.models.operations.async.GetReverseWireTransactionsResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + com.gusto.embedded_api_v_2025_11_15.models.operations.async.GetReverseWireTransactionsResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "200")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return Utils.unmarshalAsync(response, new TypeReference>() {}) + .thenApply(res::withReverseWireTransactionList); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return NotFoundErrorObject.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + return Utils.createAsyncApiError(response, "Unexpected status code received: " + response.statusCode()); + } + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/GetTaxPayment.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/GetTaxPayment.java new file mode 100644 index 000000000..fe2201899 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/GetTaxPayment.java @@ -0,0 +1,261 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.operations; + +import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.RequestOperation; +import static com.gusto.embedded_api_v_2025_11_15.utils.Exceptions.unchecked; +import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.AsyncRequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2025_11_15.SDKConfiguration; +import com.gusto.embedded_api_v_2025_11_15.SecuritySource; +import com.gusto.embedded_api_v_2025_11_15.models.components.TaxPayment; +import com.gusto.embedded_api_v_2025_11_15.models.errors.APIException; +import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetTaxPaymentRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetTaxPaymentResponse; +import com.gusto.embedded_api_v_2025_11_15.utils.Blob; +import com.gusto.embedded_api_v_2025_11_15.utils.HTTPClient; +import com.gusto.embedded_api_v_2025_11_15.utils.HTTPRequest; +import com.gusto.embedded_api_v_2025_11_15.utils.Headers; +import com.gusto.embedded_api_v_2025_11_15.utils.Hook.AfterErrorContextImpl; +import com.gusto.embedded_api_v_2025_11_15.utils.Hook.AfterSuccessContextImpl; +import com.gusto.embedded_api_v_2025_11_15.utils.Hook.BeforeRequestContextImpl; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.io.InputStream; +import java.lang.Exception; +import java.lang.String; +import java.lang.Throwable; +import java.net.http.HttpRequest; +import java.net.http.HttpResponse; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; +import java.util.function.Function; + + +public class GetTaxPayment { + + static abstract class Base { + final SDKConfiguration sdkConfiguration; + final String baseUrl; + final SecuritySource securitySource; + final HTTPClient client; + final Headers _headers; + + public Base(SDKConfiguration sdkConfiguration, Headers _headers) { + this.sdkConfiguration = sdkConfiguration; + this._headers =_headers; + this.baseUrl = this.sdkConfiguration.serverUrl(); + this.securitySource = this.sdkConfiguration.securitySource(); + this.client = this.sdkConfiguration.client(); + } + + Optional securitySource() { + return Optional.ofNullable(this.securitySource); + } + + BeforeRequestContextImpl createBeforeRequestContext() { + return new BeforeRequestContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-tax-payment", + java.util.Optional.empty(), + securitySource()); + } + + AfterSuccessContextImpl createAfterSuccessContext() { + return new AfterSuccessContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-tax-payment", + java.util.Optional.empty(), + securitySource()); + } + + AfterErrorContextImpl createAfterErrorContext() { + return new AfterErrorContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-tax-payment", + java.util.Optional.empty(), + securitySource()); + } + HttpRequest buildRequest(T request, Class klass) throws Exception { + String url = Utils.generateURL( + klass, + this.baseUrl, + "/v1/companies/{company_uuid}/tax_payments/{uuid}", + request, null); + HTTPRequest req = new HTTPRequest(url, "GET"); + req.addHeader("Accept", "application/json") + .addHeader("user-agent", SDKConfiguration.USER_AGENT); + _headers.forEach((k, list) -> list.forEach(v -> req.addHeader(k, v))); + req.addHeaders(Utils.getHeadersFromMetadata(request, null)); + Utils.configureSecurity(req, this.sdkConfiguration.securitySource().getSecurity(), "companyAccessAuth"); + + return req.build(); + } + } + + public static class Sync extends Base + implements RequestOperation { + public Sync(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private HttpRequest onBuildRequest(GetTaxPaymentRequest request) throws Exception { + HttpRequest req = buildRequest(request, GetTaxPaymentRequest.class); + return sdkConfiguration.hooks().beforeRequest(createBeforeRequestContext(), req); + } + + private HttpResponse onError(HttpResponse response, Exception error) throws Exception { + return sdkConfiguration.hooks().afterError( + createAfterErrorContext(), + Optional.ofNullable(response), + Optional.ofNullable(error)); + } + + private HttpResponse onSuccess(HttpResponse response) throws Exception { + return sdkConfiguration.hooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public HttpResponse doRequest(GetTaxPaymentRequest request) { + HttpRequest r = unchecked(() -> onBuildRequest(request)).get(); + HttpResponse httpRes; + try { + httpRes = client.send(r); + if (Utils.statusCodeMatches(httpRes.statusCode(), "4XX", "5XX")) { + httpRes = onError(httpRes, null); + } else { + httpRes = onSuccess(httpRes); + } + } catch (Exception e) { + httpRes = unchecked(() -> onError(null, e)).get(); + } + + return httpRes; + } + + + @Override + public GetTaxPaymentResponse handleResponse(HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + GetTaxPaymentResponse.Builder resBuilder = + GetTaxPaymentResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + GetTaxPaymentResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "200")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return res.withTaxPayment(Utils.unmarshal(response, new TypeReference() {})); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw NotFoundErrorObject.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + throw APIException.from("API error occurred", response); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + throw APIException.from("API error occurred", response); + } + throw APIException.from("Unexpected status code received: " + response.statusCode(), response); + } + } + public static class Async extends Base + implements AsyncRequestOperation { + + public Async(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private CompletableFuture onBuildRequest(GetTaxPaymentRequest request) throws Exception { + HttpRequest req = buildRequest(request, GetTaxPaymentRequest.class); + return this.sdkConfiguration.asyncHooks().beforeRequest(createBeforeRequestContext(), req); + } + + private CompletableFuture> onError(HttpResponse response, Throwable error) { + return this.sdkConfiguration.asyncHooks().afterError(createAfterErrorContext(), response, error); + } + + private CompletableFuture> onSuccess(HttpResponse response) { + return this.sdkConfiguration.asyncHooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public CompletableFuture> doRequest(GetTaxPaymentRequest request) { + return unchecked(() -> onBuildRequest(request)).get().thenCompose(client::sendAsync) + .handle((resp, err) -> { + if (err != null) { + return onError(null, err); + } + if (Utils.statusCodeMatches(resp.statusCode(), "4XX", "5XX")) { + return onError(resp, null); + } + return CompletableFuture.completedFuture(resp); + }) + .thenCompose(Function.identity()) + .thenCompose(this::onSuccess); + } + + @Override + public CompletableFuture handleResponse( + HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + com.gusto.embedded_api_v_2025_11_15.models.operations.async.GetTaxPaymentResponse.Builder resBuilder = + com.gusto.embedded_api_v_2025_11_15.models.operations.async.GetTaxPaymentResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + com.gusto.embedded_api_v_2025_11_15.models.operations.async.GetTaxPaymentResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "200")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return Utils.unmarshalAsync(response, new TypeReference() {}) + .thenApply(res::withTaxPayment); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return NotFoundErrorObject.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + return Utils.createAsyncApiError(response, "Unexpected status code received: " + response.statusCode()); + } + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/GetTaxPayments.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/GetTaxPayments.java new file mode 100644 index 000000000..f19694aea --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/GetTaxPayments.java @@ -0,0 +1,283 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.operations; + +import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.RequestOperation; +import static com.gusto.embedded_api_v_2025_11_15.utils.Exceptions.unchecked; +import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.AsyncRequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2025_11_15.SDKConfiguration; +import com.gusto.embedded_api_v_2025_11_15.SecuritySource; +import com.gusto.embedded_api_v_2025_11_15.models.components.TaxPayment; +import com.gusto.embedded_api_v_2025_11_15.models.errors.APIException; +import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetTaxPaymentsRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetTaxPaymentsResponse; +import com.gusto.embedded_api_v_2025_11_15.utils.Blob; +import com.gusto.embedded_api_v_2025_11_15.utils.HTTPClient; +import com.gusto.embedded_api_v_2025_11_15.utils.HTTPRequest; +import com.gusto.embedded_api_v_2025_11_15.utils.Headers; +import com.gusto.embedded_api_v_2025_11_15.utils.Hook.AfterErrorContextImpl; +import com.gusto.embedded_api_v_2025_11_15.utils.Hook.AfterSuccessContextImpl; +import com.gusto.embedded_api_v_2025_11_15.utils.Hook.BeforeRequestContextImpl; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.io.InputStream; +import java.lang.Exception; +import java.lang.String; +import java.lang.Throwable; +import java.net.http.HttpRequest; +import java.net.http.HttpResponse; +import java.util.List; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; +import java.util.function.Function; + + +public class GetTaxPayments { + + static abstract class Base { + final SDKConfiguration sdkConfiguration; + final String baseUrl; + final SecuritySource securitySource; + final HTTPClient client; + final Headers _headers; + + public Base(SDKConfiguration sdkConfiguration, Headers _headers) { + this.sdkConfiguration = sdkConfiguration; + this._headers =_headers; + this.baseUrl = this.sdkConfiguration.serverUrl(); + this.securitySource = this.sdkConfiguration.securitySource(); + this.client = this.sdkConfiguration.client(); + } + + Optional securitySource() { + return Optional.ofNullable(this.securitySource); + } + + BeforeRequestContextImpl createBeforeRequestContext() { + return new BeforeRequestContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-tax-payments", + java.util.Optional.empty(), + securitySource()); + } + + AfterSuccessContextImpl createAfterSuccessContext() { + return new AfterSuccessContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-tax-payments", + java.util.Optional.empty(), + securitySource()); + } + + AfterErrorContextImpl createAfterErrorContext() { + return new AfterErrorContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-tax-payments", + java.util.Optional.empty(), + securitySource()); + } + HttpRequest buildRequest(T request, Class klass) throws Exception { + String url = Utils.generateURL( + klass, + this.baseUrl, + "/v1/companies/{company_uuid}/tax_payments", + request, null); + HTTPRequest req = new HTTPRequest(url, "GET"); + req.addHeader("Accept", "application/json") + .addHeader("user-agent", SDKConfiguration.USER_AGENT); + _headers.forEach((k, list) -> list.forEach(v -> req.addHeader(k, v))); + + req.addQueryParams(Utils.getQueryParams( + klass, + request, + null)); + req.addHeaders(Utils.getHeadersFromMetadata(request, null)); + Utils.configureSecurity(req, this.sdkConfiguration.securitySource().getSecurity(), "companyAccessAuth"); + + return req.build(); + } + } + + public static class Sync extends Base + implements RequestOperation { + public Sync(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private HttpRequest onBuildRequest(GetTaxPaymentsRequest request) throws Exception { + HttpRequest req = buildRequest(request, GetTaxPaymentsRequest.class); + return sdkConfiguration.hooks().beforeRequest(createBeforeRequestContext(), req); + } + + private HttpResponse onError(HttpResponse response, Exception error) throws Exception { + return sdkConfiguration.hooks().afterError( + createAfterErrorContext(), + Optional.ofNullable(response), + Optional.ofNullable(error)); + } + + private HttpResponse onSuccess(HttpResponse response) throws Exception { + return sdkConfiguration.hooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public HttpResponse doRequest(GetTaxPaymentsRequest request) { + HttpRequest r = unchecked(() -> onBuildRequest(request)).get(); + HttpResponse httpRes; + try { + httpRes = client.send(r); + if (Utils.statusCodeMatches(httpRes.statusCode(), "4XX", "5XX")) { + httpRes = onError(httpRes, null); + } else { + httpRes = onSuccess(httpRes); + } + } catch (Exception e) { + httpRes = unchecked(() -> onError(null, e)).get(); + } + + return httpRes; + } + + + @Override + public GetTaxPaymentsResponse handleResponse(HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + GetTaxPaymentsResponse.Builder resBuilder = + GetTaxPaymentsResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + GetTaxPaymentsResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "200")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return res.withTaxPaymentList(Utils.unmarshal(response, new TypeReference>() {})); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw NotFoundErrorObject.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw UnprocessableEntityError.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + throw APIException.from("API error occurred", response); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + throw APIException.from("API error occurred", response); + } + throw APIException.from("Unexpected status code received: " + response.statusCode(), response); + } + } + public static class Async extends Base + implements AsyncRequestOperation { + + public Async(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private CompletableFuture onBuildRequest(GetTaxPaymentsRequest request) throws Exception { + HttpRequest req = buildRequest(request, GetTaxPaymentsRequest.class); + return this.sdkConfiguration.asyncHooks().beforeRequest(createBeforeRequestContext(), req); + } + + private CompletableFuture> onError(HttpResponse response, Throwable error) { + return this.sdkConfiguration.asyncHooks().afterError(createAfterErrorContext(), response, error); + } + + private CompletableFuture> onSuccess(HttpResponse response) { + return this.sdkConfiguration.asyncHooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public CompletableFuture> doRequest(GetTaxPaymentsRequest request) { + return unchecked(() -> onBuildRequest(request)).get().thenCompose(client::sendAsync) + .handle((resp, err) -> { + if (err != null) { + return onError(null, err); + } + if (Utils.statusCodeMatches(resp.statusCode(), "4XX", "5XX")) { + return onError(resp, null); + } + return CompletableFuture.completedFuture(resp); + }) + .thenCompose(Function.identity()) + .thenCompose(this::onSuccess); + } + + @Override + public CompletableFuture handleResponse( + HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + com.gusto.embedded_api_v_2025_11_15.models.operations.async.GetTaxPaymentsResponse.Builder resBuilder = + com.gusto.embedded_api_v_2025_11_15.models.operations.async.GetTaxPaymentsResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + com.gusto.embedded_api_v_2025_11_15.models.operations.async.GetTaxPaymentsResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "200")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return Utils.unmarshalAsync(response, new TypeReference>() {}) + .thenApply(res::withTaxPaymentList); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return NotFoundErrorObject.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return UnprocessableEntityError.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + return Utils.createAsyncApiError(response, "Unexpected status code received: " + response.statusCode()); + } + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/GetV1Benefits.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/GetV1Benefits.java index 1ca5e08a4..9420dca50 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/GetV1Benefits.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/GetV1Benefits.java @@ -154,7 +154,7 @@ public GetV1BenefitsResponse handleResponse(HttpResponse response) if (Utils.statusCodeMatches(response.statusCode(), "200")) { if (Utils.contentTypeMatches(contentType, "application/json")) { - return res.withSupportedBenefits(Utils.unmarshal(response, new TypeReference>() {})); + return res.withSupportedBenefitList(Utils.unmarshal(response, new TypeReference>() {})); } else { throw APIException.from("Unexpected content-type received: " + contentType, response); } @@ -225,7 +225,7 @@ public CompletableFuture>() {}) - .thenApply(res::withSupportedBenefits); + .thenApply(res::withSupportedBenefitList); } else { return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/GetV1BulkReportsRequestUuid.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/GetV1BulkReportsRequestUuid.java new file mode 100644 index 000000000..25c7432e8 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/GetV1BulkReportsRequestUuid.java @@ -0,0 +1,275 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.operations; + +import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.RequestOperation; +import static com.gusto.embedded_api_v_2025_11_15.utils.Exceptions.unchecked; +import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.AsyncRequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2025_11_15.SDKConfiguration; +import com.gusto.embedded_api_v_2025_11_15.SecuritySource; +import com.gusto.embedded_api_v_2025_11_15.models.components.BulkReport; +import com.gusto.embedded_api_v_2025_11_15.models.errors.APIException; +import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1BulkReportsRequestUuidRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1BulkReportsRequestUuidResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1BulkReportsRequestUuidSecurity; +import com.gusto.embedded_api_v_2025_11_15.utils.Blob; +import com.gusto.embedded_api_v_2025_11_15.utils.HTTPClient; +import com.gusto.embedded_api_v_2025_11_15.utils.HTTPRequest; +import com.gusto.embedded_api_v_2025_11_15.utils.Headers; +import com.gusto.embedded_api_v_2025_11_15.utils.Hook.AfterErrorContextImpl; +import com.gusto.embedded_api_v_2025_11_15.utils.Hook.AfterSuccessContextImpl; +import com.gusto.embedded_api_v_2025_11_15.utils.Hook.BeforeRequestContextImpl; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.io.InputStream; +import java.lang.Exception; +import java.lang.String; +import java.lang.Throwable; +import java.net.http.HttpRequest; +import java.net.http.HttpResponse; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; +import java.util.function.Function; + + +public class GetV1BulkReportsRequestUuid { + + static abstract class Base { + final SDKConfiguration sdkConfiguration; + final String baseUrl; + final GetV1BulkReportsRequestUuidSecurity security; + final SecuritySource securitySource; + final HTTPClient client; + final Headers _headers; + + public Base( + SDKConfiguration sdkConfiguration, GetV1BulkReportsRequestUuidSecurity security, + Headers _headers) { + this.sdkConfiguration = sdkConfiguration; + this._headers =_headers; + this.baseUrl = this.sdkConfiguration.serverUrl(); + this.security = security; + // hooks will be passed method level security only + this.securitySource = SecuritySource.of(security); + this.client = this.sdkConfiguration.client(); + } + + Optional securitySource() { + return Optional.ofNullable(this.securitySource); + } + + BeforeRequestContextImpl createBeforeRequestContext() { + return new BeforeRequestContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-v1-bulk_reports-request_uuid", + java.util.Optional.empty(), + securitySource()); + } + + AfterSuccessContextImpl createAfterSuccessContext() { + return new AfterSuccessContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-v1-bulk_reports-request_uuid", + java.util.Optional.empty(), + securitySource()); + } + + AfterErrorContextImpl createAfterErrorContext() { + return new AfterErrorContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-v1-bulk_reports-request_uuid", + java.util.Optional.empty(), + securitySource()); + } + HttpRequest buildRequest(T request, Class klass) throws Exception { + String url = Utils.generateURL( + klass, + this.baseUrl, + "/v1/bulk_reports/{request_uuid}", + request, null); + HTTPRequest req = new HTTPRequest(url, "GET"); + req.addHeader("Accept", "application/json") + .addHeader("user-agent", SDKConfiguration.USER_AGENT); + _headers.forEach((k, list) -> list.forEach(v -> req.addHeader(k, v))); + req.addHeaders(Utils.getHeadersFromMetadata(request, null)); + Utils.configureSecurity(req, security); + + return req.build(); + } + } + + public static class Sync extends Base + implements RequestOperation { + public Sync( + SDKConfiguration sdkConfiguration, GetV1BulkReportsRequestUuidSecurity security, + Headers _headers) { + super( + sdkConfiguration, security, + _headers); + } + + private HttpRequest onBuildRequest(GetV1BulkReportsRequestUuidRequest request) throws Exception { + HttpRequest req = buildRequest(request, GetV1BulkReportsRequestUuidRequest.class); + return sdkConfiguration.hooks().beforeRequest(createBeforeRequestContext(), req); + } + + private HttpResponse onError(HttpResponse response, Exception error) throws Exception { + return sdkConfiguration.hooks().afterError( + createAfterErrorContext(), + Optional.ofNullable(response), + Optional.ofNullable(error)); + } + + private HttpResponse onSuccess(HttpResponse response) throws Exception { + return sdkConfiguration.hooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public HttpResponse doRequest(GetV1BulkReportsRequestUuidRequest request) { + HttpRequest r = unchecked(() -> onBuildRequest(request)).get(); + HttpResponse httpRes; + try { + httpRes = client.send(r); + if (Utils.statusCodeMatches(httpRes.statusCode(), "4XX", "5XX")) { + httpRes = onError(httpRes, null); + } else { + httpRes = onSuccess(httpRes); + } + } catch (Exception e) { + httpRes = unchecked(() -> onError(null, e)).get(); + } + + return httpRes; + } + + + @Override + public GetV1BulkReportsRequestUuidResponse handleResponse(HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + GetV1BulkReportsRequestUuidResponse.Builder resBuilder = + GetV1BulkReportsRequestUuidResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + GetV1BulkReportsRequestUuidResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "200")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return res.withBulkReport(Utils.unmarshal(response, new TypeReference() {})); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw NotFoundErrorObject.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + throw APIException.from("API error occurred", response); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + throw APIException.from("API error occurred", response); + } + throw APIException.from("Unexpected status code received: " + response.statusCode(), response); + } + } + public static class Async extends Base + implements AsyncRequestOperation { + + public Async( + SDKConfiguration sdkConfiguration, GetV1BulkReportsRequestUuidSecurity security, + Headers _headers) { + super( + sdkConfiguration, security, + _headers); + } + + private CompletableFuture onBuildRequest(GetV1BulkReportsRequestUuidRequest request) throws Exception { + HttpRequest req = buildRequest(request, GetV1BulkReportsRequestUuidRequest.class); + return this.sdkConfiguration.asyncHooks().beforeRequest(createBeforeRequestContext(), req); + } + + private CompletableFuture> onError(HttpResponse response, Throwable error) { + return this.sdkConfiguration.asyncHooks().afterError(createAfterErrorContext(), response, error); + } + + private CompletableFuture> onSuccess(HttpResponse response) { + return this.sdkConfiguration.asyncHooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public CompletableFuture> doRequest(GetV1BulkReportsRequestUuidRequest request) { + return unchecked(() -> onBuildRequest(request)).get().thenCompose(client::sendAsync) + .handle((resp, err) -> { + if (err != null) { + return onError(null, err); + } + if (Utils.statusCodeMatches(resp.statusCode(), "4XX", "5XX")) { + return onError(resp, null); + } + return CompletableFuture.completedFuture(resp); + }) + .thenCompose(Function.identity()) + .thenCompose(this::onSuccess); + } + + @Override + public CompletableFuture handleResponse( + HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + com.gusto.embedded_api_v_2025_11_15.models.operations.async.GetV1BulkReportsRequestUuidResponse.Builder resBuilder = + com.gusto.embedded_api_v_2025_11_15.models.operations.async.GetV1BulkReportsRequestUuidResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + com.gusto.embedded_api_v_2025_11_15.models.operations.async.GetV1BulkReportsRequestUuidResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "200")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return Utils.unmarshalAsync(response, new TypeReference() {}) + .thenApply(res::withBulkReport); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return NotFoundErrorObject.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + return Utils.createAsyncApiError(response, "Unexpected status code received: " + response.statusCode()); + } + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/GetV1ContractorsContractorUuidMemberPortalInvitations.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/GetV1ContractorsContractorUuidMemberPortalInvitations.java new file mode 100644 index 000000000..917aea3d2 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/GetV1ContractorsContractorUuidMemberPortalInvitations.java @@ -0,0 +1,261 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.operations; + +import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.RequestOperation; +import static com.gusto.embedded_api_v_2025_11_15.utils.Exceptions.unchecked; +import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.AsyncRequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2025_11_15.SDKConfiguration; +import com.gusto.embedded_api_v_2025_11_15.SecuritySource; +import com.gusto.embedded_api_v_2025_11_15.models.components.MemberPortalInvitation; +import com.gusto.embedded_api_v_2025_11_15.models.errors.APIException; +import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ContractorsContractorUuidMemberPortalInvitationsRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ContractorsContractorUuidMemberPortalInvitationsResponse; +import com.gusto.embedded_api_v_2025_11_15.utils.Blob; +import com.gusto.embedded_api_v_2025_11_15.utils.HTTPClient; +import com.gusto.embedded_api_v_2025_11_15.utils.HTTPRequest; +import com.gusto.embedded_api_v_2025_11_15.utils.Headers; +import com.gusto.embedded_api_v_2025_11_15.utils.Hook.AfterErrorContextImpl; +import com.gusto.embedded_api_v_2025_11_15.utils.Hook.AfterSuccessContextImpl; +import com.gusto.embedded_api_v_2025_11_15.utils.Hook.BeforeRequestContextImpl; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.io.InputStream; +import java.lang.Exception; +import java.lang.String; +import java.lang.Throwable; +import java.net.http.HttpRequest; +import java.net.http.HttpResponse; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; +import java.util.function.Function; + + +public class GetV1ContractorsContractorUuidMemberPortalInvitations { + + static abstract class Base { + final SDKConfiguration sdkConfiguration; + final String baseUrl; + final SecuritySource securitySource; + final HTTPClient client; + final Headers _headers; + + public Base(SDKConfiguration sdkConfiguration, Headers _headers) { + this.sdkConfiguration = sdkConfiguration; + this._headers =_headers; + this.baseUrl = this.sdkConfiguration.serverUrl(); + this.securitySource = this.sdkConfiguration.securitySource(); + this.client = this.sdkConfiguration.client(); + } + + Optional securitySource() { + return Optional.ofNullable(this.securitySource); + } + + BeforeRequestContextImpl createBeforeRequestContext() { + return new BeforeRequestContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-v1-contractors-contractor_uuid-member_portal_invitations", + java.util.Optional.empty(), + securitySource()); + } + + AfterSuccessContextImpl createAfterSuccessContext() { + return new AfterSuccessContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-v1-contractors-contractor_uuid-member_portal_invitations", + java.util.Optional.empty(), + securitySource()); + } + + AfterErrorContextImpl createAfterErrorContext() { + return new AfterErrorContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-v1-contractors-contractor_uuid-member_portal_invitations", + java.util.Optional.empty(), + securitySource()); + } + HttpRequest buildRequest(T request, Class klass) throws Exception { + String url = Utils.generateURL( + klass, + this.baseUrl, + "/v1/contractors/{contractor_uuid}/member_portal_invitations", + request, null); + HTTPRequest req = new HTTPRequest(url, "GET"); + req.addHeader("Accept", "application/json") + .addHeader("user-agent", SDKConfiguration.USER_AGENT); + _headers.forEach((k, list) -> list.forEach(v -> req.addHeader(k, v))); + req.addHeaders(Utils.getHeadersFromMetadata(request, null)); + Utils.configureSecurity(req, this.sdkConfiguration.securitySource().getSecurity(), "companyAccessAuth"); + + return req.build(); + } + } + + public static class Sync extends Base + implements RequestOperation { + public Sync(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private HttpRequest onBuildRequest(GetV1ContractorsContractorUuidMemberPortalInvitationsRequest request) throws Exception { + HttpRequest req = buildRequest(request, GetV1ContractorsContractorUuidMemberPortalInvitationsRequest.class); + return sdkConfiguration.hooks().beforeRequest(createBeforeRequestContext(), req); + } + + private HttpResponse onError(HttpResponse response, Exception error) throws Exception { + return sdkConfiguration.hooks().afterError( + createAfterErrorContext(), + Optional.ofNullable(response), + Optional.ofNullable(error)); + } + + private HttpResponse onSuccess(HttpResponse response) throws Exception { + return sdkConfiguration.hooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public HttpResponse doRequest(GetV1ContractorsContractorUuidMemberPortalInvitationsRequest request) { + HttpRequest r = unchecked(() -> onBuildRequest(request)).get(); + HttpResponse httpRes; + try { + httpRes = client.send(r); + if (Utils.statusCodeMatches(httpRes.statusCode(), "4XX", "5XX")) { + httpRes = onError(httpRes, null); + } else { + httpRes = onSuccess(httpRes); + } + } catch (Exception e) { + httpRes = unchecked(() -> onError(null, e)).get(); + } + + return httpRes; + } + + + @Override + public GetV1ContractorsContractorUuidMemberPortalInvitationsResponse handleResponse(HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + GetV1ContractorsContractorUuidMemberPortalInvitationsResponse.Builder resBuilder = + GetV1ContractorsContractorUuidMemberPortalInvitationsResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + GetV1ContractorsContractorUuidMemberPortalInvitationsResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "200")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return res.withMemberPortalInvitation(Utils.unmarshal(response, new TypeReference() {})); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw NotFoundErrorObject.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + throw APIException.from("API error occurred", response); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + throw APIException.from("API error occurred", response); + } + throw APIException.from("Unexpected status code received: " + response.statusCode(), response); + } + } + public static class Async extends Base + implements AsyncRequestOperation { + + public Async(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private CompletableFuture onBuildRequest(GetV1ContractorsContractorUuidMemberPortalInvitationsRequest request) throws Exception { + HttpRequest req = buildRequest(request, GetV1ContractorsContractorUuidMemberPortalInvitationsRequest.class); + return this.sdkConfiguration.asyncHooks().beforeRequest(createBeforeRequestContext(), req); + } + + private CompletableFuture> onError(HttpResponse response, Throwable error) { + return this.sdkConfiguration.asyncHooks().afterError(createAfterErrorContext(), response, error); + } + + private CompletableFuture> onSuccess(HttpResponse response) { + return this.sdkConfiguration.asyncHooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public CompletableFuture> doRequest(GetV1ContractorsContractorUuidMemberPortalInvitationsRequest request) { + return unchecked(() -> onBuildRequest(request)).get().thenCompose(client::sendAsync) + .handle((resp, err) -> { + if (err != null) { + return onError(null, err); + } + if (Utils.statusCodeMatches(resp.statusCode(), "4XX", "5XX")) { + return onError(resp, null); + } + return CompletableFuture.completedFuture(resp); + }) + .thenCompose(Function.identity()) + .thenCompose(this::onSuccess); + } + + @Override + public CompletableFuture handleResponse( + HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + com.gusto.embedded_api_v_2025_11_15.models.operations.async.GetV1ContractorsContractorUuidMemberPortalInvitationsResponse.Builder resBuilder = + com.gusto.embedded_api_v_2025_11_15.models.operations.async.GetV1ContractorsContractorUuidMemberPortalInvitationsResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + com.gusto.embedded_api_v_2025_11_15.models.operations.async.GetV1ContractorsContractorUuidMemberPortalInvitationsResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "200")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return Utils.unmarshalAsync(response, new TypeReference() {}) + .thenApply(res::withMemberPortalInvitation); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return NotFoundErrorObject.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + return Utils.createAsyncApiError(response, "Unexpected status code received: " + response.statusCode()); + } + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/GetV1ContractorsContractorUuidPayments.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/GetV1ContractorsContractorUuidPayments.java new file mode 100644 index 000000000..7728e4c2e --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/GetV1ContractorsContractorUuidPayments.java @@ -0,0 +1,283 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.operations; + +import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.RequestOperation; +import static com.gusto.embedded_api_v_2025_11_15.utils.Exceptions.unchecked; +import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.AsyncRequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2025_11_15.SDKConfiguration; +import com.gusto.embedded_api_v_2025_11_15.SecuritySource; +import com.gusto.embedded_api_v_2025_11_15.models.components.ContractorPaymentListing; +import com.gusto.embedded_api_v_2025_11_15.models.errors.APIException; +import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ContractorsContractorUuidPaymentsRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1ContractorsContractorUuidPaymentsResponse; +import com.gusto.embedded_api_v_2025_11_15.utils.Blob; +import com.gusto.embedded_api_v_2025_11_15.utils.HTTPClient; +import com.gusto.embedded_api_v_2025_11_15.utils.HTTPRequest; +import com.gusto.embedded_api_v_2025_11_15.utils.Headers; +import com.gusto.embedded_api_v_2025_11_15.utils.Hook.AfterErrorContextImpl; +import com.gusto.embedded_api_v_2025_11_15.utils.Hook.AfterSuccessContextImpl; +import com.gusto.embedded_api_v_2025_11_15.utils.Hook.BeforeRequestContextImpl; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.io.InputStream; +import java.lang.Exception; +import java.lang.String; +import java.lang.Throwable; +import java.net.http.HttpRequest; +import java.net.http.HttpResponse; +import java.util.List; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; +import java.util.function.Function; + + +public class GetV1ContractorsContractorUuidPayments { + + static abstract class Base { + final SDKConfiguration sdkConfiguration; + final String baseUrl; + final SecuritySource securitySource; + final HTTPClient client; + final Headers _headers; + + public Base(SDKConfiguration sdkConfiguration, Headers _headers) { + this.sdkConfiguration = sdkConfiguration; + this._headers =_headers; + this.baseUrl = this.sdkConfiguration.serverUrl(); + this.securitySource = this.sdkConfiguration.securitySource(); + this.client = this.sdkConfiguration.client(); + } + + Optional securitySource() { + return Optional.ofNullable(this.securitySource); + } + + BeforeRequestContextImpl createBeforeRequestContext() { + return new BeforeRequestContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-v1-contractors-contractor_uuid-payments", + java.util.Optional.empty(), + securitySource()); + } + + AfterSuccessContextImpl createAfterSuccessContext() { + return new AfterSuccessContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-v1-contractors-contractor_uuid-payments", + java.util.Optional.empty(), + securitySource()); + } + + AfterErrorContextImpl createAfterErrorContext() { + return new AfterErrorContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-v1-contractors-contractor_uuid-payments", + java.util.Optional.empty(), + securitySource()); + } + HttpRequest buildRequest(T request, Class klass) throws Exception { + String url = Utils.generateURL( + klass, + this.baseUrl, + "/v1/contractors/{contractor_uuid}/payments", + request, null); + HTTPRequest req = new HTTPRequest(url, "GET"); + req.addHeader("Accept", "application/json") + .addHeader("user-agent", SDKConfiguration.USER_AGENT); + _headers.forEach((k, list) -> list.forEach(v -> req.addHeader(k, v))); + + req.addQueryParams(Utils.getQueryParams( + klass, + request, + null)); + req.addHeaders(Utils.getHeadersFromMetadata(request, null)); + Utils.configureSecurity(req, this.sdkConfiguration.securitySource().getSecurity(), "companyAccessAuth"); + + return req.build(); + } + } + + public static class Sync extends Base + implements RequestOperation { + public Sync(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private HttpRequest onBuildRequest(GetV1ContractorsContractorUuidPaymentsRequest request) throws Exception { + HttpRequest req = buildRequest(request, GetV1ContractorsContractorUuidPaymentsRequest.class); + return sdkConfiguration.hooks().beforeRequest(createBeforeRequestContext(), req); + } + + private HttpResponse onError(HttpResponse response, Exception error) throws Exception { + return sdkConfiguration.hooks().afterError( + createAfterErrorContext(), + Optional.ofNullable(response), + Optional.ofNullable(error)); + } + + private HttpResponse onSuccess(HttpResponse response) throws Exception { + return sdkConfiguration.hooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public HttpResponse doRequest(GetV1ContractorsContractorUuidPaymentsRequest request) { + HttpRequest r = unchecked(() -> onBuildRequest(request)).get(); + HttpResponse httpRes; + try { + httpRes = client.send(r); + if (Utils.statusCodeMatches(httpRes.statusCode(), "4XX", "5XX")) { + httpRes = onError(httpRes, null); + } else { + httpRes = onSuccess(httpRes); + } + } catch (Exception e) { + httpRes = unchecked(() -> onError(null, e)).get(); + } + + return httpRes; + } + + + @Override + public GetV1ContractorsContractorUuidPaymentsResponse handleResponse(HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + GetV1ContractorsContractorUuidPaymentsResponse.Builder resBuilder = + GetV1ContractorsContractorUuidPaymentsResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + GetV1ContractorsContractorUuidPaymentsResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "200")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return res.withContractorPaymentListings(Utils.unmarshal(response, new TypeReference>() {})); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw NotFoundErrorObject.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw UnprocessableEntityError.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + throw APIException.from("API error occurred", response); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + throw APIException.from("API error occurred", response); + } + throw APIException.from("Unexpected status code received: " + response.statusCode(), response); + } + } + public static class Async extends Base + implements AsyncRequestOperation { + + public Async(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private CompletableFuture onBuildRequest(GetV1ContractorsContractorUuidPaymentsRequest request) throws Exception { + HttpRequest req = buildRequest(request, GetV1ContractorsContractorUuidPaymentsRequest.class); + return this.sdkConfiguration.asyncHooks().beforeRequest(createBeforeRequestContext(), req); + } + + private CompletableFuture> onError(HttpResponse response, Throwable error) { + return this.sdkConfiguration.asyncHooks().afterError(createAfterErrorContext(), response, error); + } + + private CompletableFuture> onSuccess(HttpResponse response) { + return this.sdkConfiguration.asyncHooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public CompletableFuture> doRequest(GetV1ContractorsContractorUuidPaymentsRequest request) { + return unchecked(() -> onBuildRequest(request)).get().thenCompose(client::sendAsync) + .handle((resp, err) -> { + if (err != null) { + return onError(null, err); + } + if (Utils.statusCodeMatches(resp.statusCode(), "4XX", "5XX")) { + return onError(resp, null); + } + return CompletableFuture.completedFuture(resp); + }) + .thenCompose(Function.identity()) + .thenCompose(this::onSuccess); + } + + @Override + public CompletableFuture handleResponse( + HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + com.gusto.embedded_api_v_2025_11_15.models.operations.async.GetV1ContractorsContractorUuidPaymentsResponse.Builder resBuilder = + com.gusto.embedded_api_v_2025_11_15.models.operations.async.GetV1ContractorsContractorUuidPaymentsResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + com.gusto.embedded_api_v_2025_11_15.models.operations.async.GetV1ContractorsContractorUuidPaymentsResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "200")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return Utils.unmarshalAsync(response, new TypeReference>() {}) + .thenApply(res::withContractorPaymentListings); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return NotFoundErrorObject.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return UnprocessableEntityError.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + return Utils.createAsyncApiError(response, "Unexpected status code received: " + response.statusCode()); + } + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/GetV1EmployeesEmployeeIdMemberPortalInvitations.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/GetV1EmployeesEmployeeIdMemberPortalInvitations.java new file mode 100644 index 000000000..9eded228b --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/GetV1EmployeesEmployeeIdMemberPortalInvitations.java @@ -0,0 +1,261 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.operations; + +import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.RequestOperation; +import static com.gusto.embedded_api_v_2025_11_15.utils.Exceptions.unchecked; +import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.AsyncRequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2025_11_15.SDKConfiguration; +import com.gusto.embedded_api_v_2025_11_15.SecuritySource; +import com.gusto.embedded_api_v_2025_11_15.models.components.MemberPortalInvitation; +import com.gusto.embedded_api_v_2025_11_15.models.errors.APIException; +import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse; +import com.gusto.embedded_api_v_2025_11_15.utils.Blob; +import com.gusto.embedded_api_v_2025_11_15.utils.HTTPClient; +import com.gusto.embedded_api_v_2025_11_15.utils.HTTPRequest; +import com.gusto.embedded_api_v_2025_11_15.utils.Headers; +import com.gusto.embedded_api_v_2025_11_15.utils.Hook.AfterErrorContextImpl; +import com.gusto.embedded_api_v_2025_11_15.utils.Hook.AfterSuccessContextImpl; +import com.gusto.embedded_api_v_2025_11_15.utils.Hook.BeforeRequestContextImpl; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.io.InputStream; +import java.lang.Exception; +import java.lang.String; +import java.lang.Throwable; +import java.net.http.HttpRequest; +import java.net.http.HttpResponse; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; +import java.util.function.Function; + + +public class GetV1EmployeesEmployeeIdMemberPortalInvitations { + + static abstract class Base { + final SDKConfiguration sdkConfiguration; + final String baseUrl; + final SecuritySource securitySource; + final HTTPClient client; + final Headers _headers; + + public Base(SDKConfiguration sdkConfiguration, Headers _headers) { + this.sdkConfiguration = sdkConfiguration; + this._headers =_headers; + this.baseUrl = this.sdkConfiguration.serverUrl(); + this.securitySource = this.sdkConfiguration.securitySource(); + this.client = this.sdkConfiguration.client(); + } + + Optional securitySource() { + return Optional.ofNullable(this.securitySource); + } + + BeforeRequestContextImpl createBeforeRequestContext() { + return new BeforeRequestContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-v1-employees-employee_id-member_portal_invitations", + java.util.Optional.empty(), + securitySource()); + } + + AfterSuccessContextImpl createAfterSuccessContext() { + return new AfterSuccessContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-v1-employees-employee_id-member_portal_invitations", + java.util.Optional.empty(), + securitySource()); + } + + AfterErrorContextImpl createAfterErrorContext() { + return new AfterErrorContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-v1-employees-employee_id-member_portal_invitations", + java.util.Optional.empty(), + securitySource()); + } + HttpRequest buildRequest(T request, Class klass) throws Exception { + String url = Utils.generateURL( + klass, + this.baseUrl, + "/v1/employees/{employee_id}/member_portal_invitations", + request, null); + HTTPRequest req = new HTTPRequest(url, "GET"); + req.addHeader("Accept", "application/json") + .addHeader("user-agent", SDKConfiguration.USER_AGENT); + _headers.forEach((k, list) -> list.forEach(v -> req.addHeader(k, v))); + req.addHeaders(Utils.getHeadersFromMetadata(request, null)); + Utils.configureSecurity(req, this.sdkConfiguration.securitySource().getSecurity(), "companyAccessAuth"); + + return req.build(); + } + } + + public static class Sync extends Base + implements RequestOperation { + public Sync(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private HttpRequest onBuildRequest(GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest request) throws Exception { + HttpRequest req = buildRequest(request, GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest.class); + return sdkConfiguration.hooks().beforeRequest(createBeforeRequestContext(), req); + } + + private HttpResponse onError(HttpResponse response, Exception error) throws Exception { + return sdkConfiguration.hooks().afterError( + createAfterErrorContext(), + Optional.ofNullable(response), + Optional.ofNullable(error)); + } + + private HttpResponse onSuccess(HttpResponse response) throws Exception { + return sdkConfiguration.hooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public HttpResponse doRequest(GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest request) { + HttpRequest r = unchecked(() -> onBuildRequest(request)).get(); + HttpResponse httpRes; + try { + httpRes = client.send(r); + if (Utils.statusCodeMatches(httpRes.statusCode(), "4XX", "5XX")) { + httpRes = onError(httpRes, null); + } else { + httpRes = onSuccess(httpRes); + } + } catch (Exception e) { + httpRes = unchecked(() -> onError(null, e)).get(); + } + + return httpRes; + } + + + @Override + public GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse handleResponse(HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse.Builder resBuilder = + GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "200")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return res.withMemberPortalInvitation(Utils.unmarshal(response, new TypeReference() {})); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw NotFoundErrorObject.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + throw APIException.from("API error occurred", response); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + throw APIException.from("API error occurred", response); + } + throw APIException.from("Unexpected status code received: " + response.statusCode(), response); + } + } + public static class Async extends Base + implements AsyncRequestOperation { + + public Async(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private CompletableFuture onBuildRequest(GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest request) throws Exception { + HttpRequest req = buildRequest(request, GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest.class); + return this.sdkConfiguration.asyncHooks().beforeRequest(createBeforeRequestContext(), req); + } + + private CompletableFuture> onError(HttpResponse response, Throwable error) { + return this.sdkConfiguration.asyncHooks().afterError(createAfterErrorContext(), response, error); + } + + private CompletableFuture> onSuccess(HttpResponse response) { + return this.sdkConfiguration.asyncHooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public CompletableFuture> doRequest(GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest request) { + return unchecked(() -> onBuildRequest(request)).get().thenCompose(client::sendAsync) + .handle((resp, err) -> { + if (err != null) { + return onError(null, err); + } + if (Utils.statusCodeMatches(resp.statusCode(), "4XX", "5XX")) { + return onError(resp, null); + } + return CompletableFuture.completedFuture(resp); + }) + .thenCompose(Function.identity()) + .thenCompose(this::onSuccess); + } + + @Override + public CompletableFuture handleResponse( + HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + com.gusto.embedded_api_v_2025_11_15.models.operations.async.GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse.Builder resBuilder = + com.gusto.embedded_api_v_2025_11_15.models.operations.async.GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + com.gusto.embedded_api_v_2025_11_15.models.operations.async.GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "200")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return Utils.unmarshalAsync(response, new TypeReference() {}) + .thenApply(res::withMemberPortalInvitation); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return NotFoundErrorObject.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + return Utils.createAsyncApiError(response, "Unexpected status code received: " + response.statusCode()); + } + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/GetV1PaymentReceiptsPayrollsPayrollUuid.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/GetV1PaymentReceiptsPayrollsPayrollUuid.java index 90d48814d..23ce2a78e 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/GetV1PaymentReceiptsPayrollsPayrollUuid.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/GetV1PaymentReceiptsPayrollsPayrollUuid.java @@ -91,6 +91,11 @@ HttpRequest buildRequest(T request, Class klass) throws Exception { req.addHeader("Accept", "application/json") .addHeader("user-agent", SDKConfiguration.USER_AGENT); _headers.forEach((k, list) -> list.forEach(v -> req.addHeader(k, v))); + + req.addQueryParams(Utils.getQueryParams( + klass, + request, + null)); req.addHeaders(Utils.getHeadersFromMetadata(request, null)); Utils.configureSecurity(req, this.sdkConfiguration.securitySource().getSecurity(), "companyAccessAuth"); diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/GetV1PayrollBatchesPayrollBatchUuid.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/GetV1PayrollBatchesPayrollBatchUuid.java new file mode 100644 index 000000000..798c3fb1b --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/GetV1PayrollBatchesPayrollBatchUuid.java @@ -0,0 +1,275 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.operations; + +import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.RequestOperation; +import static com.gusto.embedded_api_v_2025_11_15.utils.Exceptions.unchecked; +import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.AsyncRequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2025_11_15.SDKConfiguration; +import com.gusto.embedded_api_v_2025_11_15.SecuritySource; +import com.gusto.embedded_api_v_2025_11_15.models.components.PayrollBatchResults; +import com.gusto.embedded_api_v_2025_11_15.models.errors.APIException; +import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1PayrollBatchesPayrollBatchUuidRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1PayrollBatchesPayrollBatchUuidResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.GetV1PayrollBatchesPayrollBatchUuidSecurity; +import com.gusto.embedded_api_v_2025_11_15.utils.Blob; +import com.gusto.embedded_api_v_2025_11_15.utils.HTTPClient; +import com.gusto.embedded_api_v_2025_11_15.utils.HTTPRequest; +import com.gusto.embedded_api_v_2025_11_15.utils.Headers; +import com.gusto.embedded_api_v_2025_11_15.utils.Hook.AfterErrorContextImpl; +import com.gusto.embedded_api_v_2025_11_15.utils.Hook.AfterSuccessContextImpl; +import com.gusto.embedded_api_v_2025_11_15.utils.Hook.BeforeRequestContextImpl; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.io.InputStream; +import java.lang.Exception; +import java.lang.String; +import java.lang.Throwable; +import java.net.http.HttpRequest; +import java.net.http.HttpResponse; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; +import java.util.function.Function; + + +public class GetV1PayrollBatchesPayrollBatchUuid { + + static abstract class Base { + final SDKConfiguration sdkConfiguration; + final String baseUrl; + final GetV1PayrollBatchesPayrollBatchUuidSecurity security; + final SecuritySource securitySource; + final HTTPClient client; + final Headers _headers; + + public Base( + SDKConfiguration sdkConfiguration, GetV1PayrollBatchesPayrollBatchUuidSecurity security, + Headers _headers) { + this.sdkConfiguration = sdkConfiguration; + this._headers =_headers; + this.baseUrl = this.sdkConfiguration.serverUrl(); + this.security = security; + // hooks will be passed method level security only + this.securitySource = SecuritySource.of(security); + this.client = this.sdkConfiguration.client(); + } + + Optional securitySource() { + return Optional.ofNullable(this.securitySource); + } + + BeforeRequestContextImpl createBeforeRequestContext() { + return new BeforeRequestContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-v1-payroll_batches-payroll_batch_uuid", + java.util.Optional.empty(), + securitySource()); + } + + AfterSuccessContextImpl createAfterSuccessContext() { + return new AfterSuccessContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-v1-payroll_batches-payroll_batch_uuid", + java.util.Optional.empty(), + securitySource()); + } + + AfterErrorContextImpl createAfterErrorContext() { + return new AfterErrorContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-v1-payroll_batches-payroll_batch_uuid", + java.util.Optional.empty(), + securitySource()); + } + HttpRequest buildRequest(T request, Class klass) throws Exception { + String url = Utils.generateURL( + klass, + this.baseUrl, + "/v1/payroll_batches/{payroll_batch_uuid}", + request, null); + HTTPRequest req = new HTTPRequest(url, "GET"); + req.addHeader("Accept", "application/json") + .addHeader("user-agent", SDKConfiguration.USER_AGENT); + _headers.forEach((k, list) -> list.forEach(v -> req.addHeader(k, v))); + req.addHeaders(Utils.getHeadersFromMetadata(request, null)); + Utils.configureSecurity(req, security); + + return req.build(); + } + } + + public static class Sync extends Base + implements RequestOperation { + public Sync( + SDKConfiguration sdkConfiguration, GetV1PayrollBatchesPayrollBatchUuidSecurity security, + Headers _headers) { + super( + sdkConfiguration, security, + _headers); + } + + private HttpRequest onBuildRequest(GetV1PayrollBatchesPayrollBatchUuidRequest request) throws Exception { + HttpRequest req = buildRequest(request, GetV1PayrollBatchesPayrollBatchUuidRequest.class); + return sdkConfiguration.hooks().beforeRequest(createBeforeRequestContext(), req); + } + + private HttpResponse onError(HttpResponse response, Exception error) throws Exception { + return sdkConfiguration.hooks().afterError( + createAfterErrorContext(), + Optional.ofNullable(response), + Optional.ofNullable(error)); + } + + private HttpResponse onSuccess(HttpResponse response) throws Exception { + return sdkConfiguration.hooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public HttpResponse doRequest(GetV1PayrollBatchesPayrollBatchUuidRequest request) { + HttpRequest r = unchecked(() -> onBuildRequest(request)).get(); + HttpResponse httpRes; + try { + httpRes = client.send(r); + if (Utils.statusCodeMatches(httpRes.statusCode(), "4XX", "5XX")) { + httpRes = onError(httpRes, null); + } else { + httpRes = onSuccess(httpRes); + } + } catch (Exception e) { + httpRes = unchecked(() -> onError(null, e)).get(); + } + + return httpRes; + } + + + @Override + public GetV1PayrollBatchesPayrollBatchUuidResponse handleResponse(HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + GetV1PayrollBatchesPayrollBatchUuidResponse.Builder resBuilder = + GetV1PayrollBatchesPayrollBatchUuidResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + GetV1PayrollBatchesPayrollBatchUuidResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "200")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return res.withPayrollBatchResults(Utils.unmarshal(response, new TypeReference() {})); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "404", "410")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw NotFoundErrorObject.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + throw APIException.from("API error occurred", response); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + throw APIException.from("API error occurred", response); + } + throw APIException.from("Unexpected status code received: " + response.statusCode(), response); + } + } + public static class Async extends Base + implements AsyncRequestOperation { + + public Async( + SDKConfiguration sdkConfiguration, GetV1PayrollBatchesPayrollBatchUuidSecurity security, + Headers _headers) { + super( + sdkConfiguration, security, + _headers); + } + + private CompletableFuture onBuildRequest(GetV1PayrollBatchesPayrollBatchUuidRequest request) throws Exception { + HttpRequest req = buildRequest(request, GetV1PayrollBatchesPayrollBatchUuidRequest.class); + return this.sdkConfiguration.asyncHooks().beforeRequest(createBeforeRequestContext(), req); + } + + private CompletableFuture> onError(HttpResponse response, Throwable error) { + return this.sdkConfiguration.asyncHooks().afterError(createAfterErrorContext(), response, error); + } + + private CompletableFuture> onSuccess(HttpResponse response) { + return this.sdkConfiguration.asyncHooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public CompletableFuture> doRequest(GetV1PayrollBatchesPayrollBatchUuidRequest request) { + return unchecked(() -> onBuildRequest(request)).get().thenCompose(client::sendAsync) + .handle((resp, err) -> { + if (err != null) { + return onError(null, err); + } + if (Utils.statusCodeMatches(resp.statusCode(), "4XX", "5XX")) { + return onError(resp, null); + } + return CompletableFuture.completedFuture(resp); + }) + .thenCompose(Function.identity()) + .thenCompose(this::onSuccess); + } + + @Override + public CompletableFuture handleResponse( + HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + com.gusto.embedded_api_v_2025_11_15.models.operations.async.GetV1PayrollBatchesPayrollBatchUuidResponse.Builder resBuilder = + com.gusto.embedded_api_v_2025_11_15.models.operations.async.GetV1PayrollBatchesPayrollBatchUuidResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + com.gusto.embedded_api_v_2025_11_15.models.operations.async.GetV1PayrollBatchesPayrollBatchUuidResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "200")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return Utils.unmarshalAsync(response, new TypeReference() {}) + .thenApply(res::withPayrollBatchResults); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "404", "410")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return NotFoundErrorObject.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + return Utils.createAsyncApiError(response, "Unexpected status code received: " + response.statusCode()); + } + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/PostCompaniesPayrollSkipCompanyUuid.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/PostCompaniesPayrollSkipCompanyUuid.java index cb1dfe1a3..fc78902e0 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/PostCompaniesPayrollSkipCompanyUuid.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/PostCompaniesPayrollSkipCompanyUuid.java @@ -11,6 +11,7 @@ import com.gusto.embedded_api_v_2025_11_15.SDKConfiguration; import com.gusto.embedded_api_v_2025_11_15.SecuritySource; import com.gusto.embedded_api_v_2025_11_15.models.errors.APIException; +import com.gusto.embedded_api_v_2025_11_15.models.errors.ConflictErrorObject; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; import com.gusto.embedded_api_v_2025_11_15.models.errors.PayrollBlockersError; import com.gusto.embedded_api_v_2025_11_15.models.operations.PostCompaniesPayrollSkipCompanyUuidRequest; @@ -182,6 +183,13 @@ public PostCompaniesPayrollSkipCompanyUuidResponse handleResponse(HttpResponse securitySource() { + return Optional.ofNullable(this.securitySource); + } + + BeforeRequestContextImpl createBeforeRequestContext() { + return new BeforeRequestContextImpl( + this.sdkConfiguration, + this.baseUrl, + "post-v1-bulk_reports", + java.util.Optional.empty(), + securitySource()); + } + + AfterSuccessContextImpl createAfterSuccessContext() { + return new AfterSuccessContextImpl( + this.sdkConfiguration, + this.baseUrl, + "post-v1-bulk_reports", + java.util.Optional.empty(), + securitySource()); + } + + AfterErrorContextImpl createAfterErrorContext() { + return new AfterErrorContextImpl( + this.sdkConfiguration, + this.baseUrl, + "post-v1-bulk_reports", + java.util.Optional.empty(), + securitySource()); + } + HttpRequest buildRequest(T request, TypeReference typeReference) throws Exception { + String url = Utils.generateURL( + this.baseUrl, + "/v1/bulk_reports"); + HTTPRequest req = new HTTPRequest(url, "POST"); + Object convertedRequest = Utils.convertToShape( + request, + JsonShape.DEFAULT, + typeReference); + SerializedBody serializedRequestBody = Utils.serializeRequestBody( + convertedRequest, + "bulkReportBody", + "json", + false); + if (serializedRequestBody == null) { + throw new IllegalArgumentException("Request body is required"); + } + req.setBody(Optional.ofNullable(serializedRequestBody)); + req.addHeader("Accept", "application/json") + .addHeader("user-agent", SDKConfiguration.USER_AGENT); + _headers.forEach((k, list) -> list.forEach(v -> req.addHeader(k, v))); + req.addHeaders(Utils.getHeadersFromMetadata(request, null)); + Utils.configureSecurity(req, security); + + return req.build(); + } + } + + public static class Sync extends Base + implements RequestOperation { + public Sync( + SDKConfiguration sdkConfiguration, PostV1BulkReportsSecurity security, + Headers _headers) { + super( + sdkConfiguration, security, + _headers); + } + + private HttpRequest onBuildRequest(PostV1BulkReportsRequest request) throws Exception { + HttpRequest req = buildRequest(request, new TypeReference() {}); + return sdkConfiguration.hooks().beforeRequest(createBeforeRequestContext(), req); + } + + private HttpResponse onError(HttpResponse response, Exception error) throws Exception { + return sdkConfiguration.hooks().afterError( + createAfterErrorContext(), + Optional.ofNullable(response), + Optional.ofNullable(error)); + } + + private HttpResponse onSuccess(HttpResponse response) throws Exception { + return sdkConfiguration.hooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public HttpResponse doRequest(PostV1BulkReportsRequest request) { + HttpRequest r = unchecked(() -> onBuildRequest(request)).get(); + HttpResponse httpRes; + try { + httpRes = client.send(r); + if (Utils.statusCodeMatches(httpRes.statusCode(), "4XX", "5XX")) { + httpRes = onError(httpRes, null); + } else { + httpRes = onSuccess(httpRes); + } + } catch (Exception e) { + httpRes = unchecked(() -> onError(null, e)).get(); + } + + return httpRes; + } + + + @Override + public PostV1BulkReportsResponse handleResponse(HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + PostV1BulkReportsResponse.Builder resBuilder = + PostV1BulkReportsResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + PostV1BulkReportsResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "201")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return res.withCreateBulkReport(Utils.unmarshal(response, new TypeReference() {})); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw UnprocessableEntityError.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + throw APIException.from("API error occurred", response); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + throw APIException.from("API error occurred", response); + } + throw APIException.from("Unexpected status code received: " + response.statusCode(), response); + } + } + public static class Async extends Base + implements AsyncRequestOperation { + + public Async( + SDKConfiguration sdkConfiguration, PostV1BulkReportsSecurity security, + Headers _headers) { + super( + sdkConfiguration, security, + _headers); + } + + private CompletableFuture onBuildRequest(PostV1BulkReportsRequest request) throws Exception { + HttpRequest req = buildRequest(request, new TypeReference() {}); + return this.sdkConfiguration.asyncHooks().beforeRequest(createBeforeRequestContext(), req); + } + + private CompletableFuture> onError(HttpResponse response, Throwable error) { + return this.sdkConfiguration.asyncHooks().afterError(createAfterErrorContext(), response, error); + } + + private CompletableFuture> onSuccess(HttpResponse response) { + return this.sdkConfiguration.asyncHooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public CompletableFuture> doRequest(PostV1BulkReportsRequest request) { + return unchecked(() -> onBuildRequest(request)).get().thenCompose(client::sendAsync) + .handle((resp, err) -> { + if (err != null) { + return onError(null, err); + } + if (Utils.statusCodeMatches(resp.statusCode(), "4XX", "5XX")) { + return onError(resp, null); + } + return CompletableFuture.completedFuture(resp); + }) + .thenCompose(Function.identity()) + .thenCompose(this::onSuccess); + } + + @Override + public CompletableFuture handleResponse( + HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + com.gusto.embedded_api_v_2025_11_15.models.operations.async.PostV1BulkReportsResponse.Builder resBuilder = + com.gusto.embedded_api_v_2025_11_15.models.operations.async.PostV1BulkReportsResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + com.gusto.embedded_api_v_2025_11_15.models.operations.async.PostV1BulkReportsResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "201")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return Utils.unmarshalAsync(response, new TypeReference() {}) + .thenApply(res::withCreateBulkReport); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return UnprocessableEntityError.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + return Utils.createAsyncApiError(response, "Unexpected status code received: " + response.statusCode()); + } + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/PostV1ContractorsContractorUuidMemberPortalInvitations.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/PostV1ContractorsContractorUuidMemberPortalInvitations.java new file mode 100644 index 000000000..25e35b642 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/PostV1ContractorsContractorUuidMemberPortalInvitations.java @@ -0,0 +1,268 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.operations; + +import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.RequestOperation; +import static com.gusto.embedded_api_v_2025_11_15.utils.Exceptions.unchecked; +import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.AsyncRequestOperation; + +import com.gusto.embedded_api_v_2025_11_15.SDKConfiguration; +import com.gusto.embedded_api_v_2025_11_15.SecuritySource; +import com.gusto.embedded_api_v_2025_11_15.models.errors.APIException; +import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1ContractorsContractorUuidMemberPortalInvitationsRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1ContractorsContractorUuidMemberPortalInvitationsResponse; +import com.gusto.embedded_api_v_2025_11_15.utils.Blob; +import com.gusto.embedded_api_v_2025_11_15.utils.HTTPClient; +import com.gusto.embedded_api_v_2025_11_15.utils.HTTPRequest; +import com.gusto.embedded_api_v_2025_11_15.utils.Headers; +import com.gusto.embedded_api_v_2025_11_15.utils.Hook.AfterErrorContextImpl; +import com.gusto.embedded_api_v_2025_11_15.utils.Hook.AfterSuccessContextImpl; +import com.gusto.embedded_api_v_2025_11_15.utils.Hook.BeforeRequestContextImpl; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.io.InputStream; +import java.lang.Exception; +import java.lang.String; +import java.lang.Throwable; +import java.net.http.HttpRequest; +import java.net.http.HttpResponse; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; +import java.util.function.Function; + + +public class PostV1ContractorsContractorUuidMemberPortalInvitations { + + static abstract class Base { + final SDKConfiguration sdkConfiguration; + final String baseUrl; + final SecuritySource securitySource; + final HTTPClient client; + final Headers _headers; + + public Base(SDKConfiguration sdkConfiguration, Headers _headers) { + this.sdkConfiguration = sdkConfiguration; + this._headers =_headers; + this.baseUrl = this.sdkConfiguration.serverUrl(); + this.securitySource = this.sdkConfiguration.securitySource(); + this.client = this.sdkConfiguration.client(); + } + + Optional securitySource() { + return Optional.ofNullable(this.securitySource); + } + + BeforeRequestContextImpl createBeforeRequestContext() { + return new BeforeRequestContextImpl( + this.sdkConfiguration, + this.baseUrl, + "post-v1-contractors-contractor_uuid-member_portal_invitations", + java.util.Optional.empty(), + securitySource()); + } + + AfterSuccessContextImpl createAfterSuccessContext() { + return new AfterSuccessContextImpl( + this.sdkConfiguration, + this.baseUrl, + "post-v1-contractors-contractor_uuid-member_portal_invitations", + java.util.Optional.empty(), + securitySource()); + } + + AfterErrorContextImpl createAfterErrorContext() { + return new AfterErrorContextImpl( + this.sdkConfiguration, + this.baseUrl, + "post-v1-contractors-contractor_uuid-member_portal_invitations", + java.util.Optional.empty(), + securitySource()); + } + HttpRequest buildRequest(T request, Class klass) throws Exception { + String url = Utils.generateURL( + klass, + this.baseUrl, + "/v1/contractors/{contractor_uuid}/member_portal_invitations", + request, null); + HTTPRequest req = new HTTPRequest(url, "POST"); + req.addHeader("Accept", "application/json") + .addHeader("user-agent", SDKConfiguration.USER_AGENT); + _headers.forEach((k, list) -> list.forEach(v -> req.addHeader(k, v))); + req.addHeaders(Utils.getHeadersFromMetadata(request, null)); + Utils.configureSecurity(req, this.sdkConfiguration.securitySource().getSecurity(), "companyAccessAuth"); + + return req.build(); + } + } + + public static class Sync extends Base + implements RequestOperation { + public Sync(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private HttpRequest onBuildRequest(PostV1ContractorsContractorUuidMemberPortalInvitationsRequest request) throws Exception { + HttpRequest req = buildRequest(request, PostV1ContractorsContractorUuidMemberPortalInvitationsRequest.class); + return sdkConfiguration.hooks().beforeRequest(createBeforeRequestContext(), req); + } + + private HttpResponse onError(HttpResponse response, Exception error) throws Exception { + return sdkConfiguration.hooks().afterError( + createAfterErrorContext(), + Optional.ofNullable(response), + Optional.ofNullable(error)); + } + + private HttpResponse onSuccess(HttpResponse response) throws Exception { + return sdkConfiguration.hooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public HttpResponse doRequest(PostV1ContractorsContractorUuidMemberPortalInvitationsRequest request) { + HttpRequest r = unchecked(() -> onBuildRequest(request)).get(); + HttpResponse httpRes; + try { + httpRes = client.send(r); + if (Utils.statusCodeMatches(httpRes.statusCode(), "4XX", "5XX")) { + httpRes = onError(httpRes, null); + } else { + httpRes = onSuccess(httpRes); + } + } catch (Exception e) { + httpRes = unchecked(() -> onError(null, e)).get(); + } + + return httpRes; + } + + + @Override + public PostV1ContractorsContractorUuidMemberPortalInvitationsResponse handleResponse(HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + PostV1ContractorsContractorUuidMemberPortalInvitationsResponse.Builder resBuilder = + PostV1ContractorsContractorUuidMemberPortalInvitationsResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + PostV1ContractorsContractorUuidMemberPortalInvitationsResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "201")) { + // no content + return res; + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw NotFoundErrorObject.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw UnprocessableEntityError.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + throw APIException.from("API error occurred", response); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + throw APIException.from("API error occurred", response); + } + throw APIException.from("Unexpected status code received: " + response.statusCode(), response); + } + } + public static class Async extends Base + implements AsyncRequestOperation { + + public Async(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private CompletableFuture onBuildRequest(PostV1ContractorsContractorUuidMemberPortalInvitationsRequest request) throws Exception { + HttpRequest req = buildRequest(request, PostV1ContractorsContractorUuidMemberPortalInvitationsRequest.class); + return this.sdkConfiguration.asyncHooks().beforeRequest(createBeforeRequestContext(), req); + } + + private CompletableFuture> onError(HttpResponse response, Throwable error) { + return this.sdkConfiguration.asyncHooks().afterError(createAfterErrorContext(), response, error); + } + + private CompletableFuture> onSuccess(HttpResponse response) { + return this.sdkConfiguration.asyncHooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public CompletableFuture> doRequest(PostV1ContractorsContractorUuidMemberPortalInvitationsRequest request) { + return unchecked(() -> onBuildRequest(request)).get().thenCompose(client::sendAsync) + .handle((resp, err) -> { + if (err != null) { + return onError(null, err); + } + if (Utils.statusCodeMatches(resp.statusCode(), "4XX", "5XX")) { + return onError(resp, null); + } + return CompletableFuture.completedFuture(resp); + }) + .thenCompose(Function.identity()) + .thenCompose(this::onSuccess); + } + + @Override + public CompletableFuture handleResponse( + HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + com.gusto.embedded_api_v_2025_11_15.models.operations.async.PostV1ContractorsContractorUuidMemberPortalInvitationsResponse.Builder resBuilder = + com.gusto.embedded_api_v_2025_11_15.models.operations.async.PostV1ContractorsContractorUuidMemberPortalInvitationsResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + com.gusto.embedded_api_v_2025_11_15.models.operations.async.PostV1ContractorsContractorUuidMemberPortalInvitationsResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "201")) { + // no content + return CompletableFuture.completedFuture(res); + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return NotFoundErrorObject.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return UnprocessableEntityError.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + return Utils.createAsyncApiError(response, "Unexpected status code received: " + response.statusCode()); + } + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/PostV1ContractorsContractorUuidRehire.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/PostV1ContractorsContractorUuidRehire.java index 45a8cf0c6..6867148ba 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/PostV1ContractorsContractorUuidRehire.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/PostV1ContractorsContractorUuidRehire.java @@ -11,6 +11,7 @@ import com.gusto.embedded_api_v_2025_11_15.SDKConfiguration; import com.gusto.embedded_api_v_2025_11_15.SecuritySource; import com.gusto.embedded_api_v_2025_11_15.models.errors.APIException; +import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1ContractorsContractorUuidRehireRequest; import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1ContractorsContractorUuidRehireResponse; import com.gusto.embedded_api_v_2025_11_15.utils.Blob; @@ -99,7 +100,7 @@ HttpRequest buildRequest(T request, Class klass, TypeReference typeR "json", false); req.setBody(Optional.ofNullable(serializedRequestBody)); - req.addHeader("Accept", "*/*") + req.addHeader("Accept", "application/json") .addHeader("user-agent", SDKConfiguration.USER_AGENT); _headers.forEach((k, list) -> list.forEach(v -> req.addHeader(k, v))); req.addHeaders(Utils.getHeadersFromMetadata(request, null)); @@ -169,7 +170,14 @@ public PostV1ContractorsContractorUuidRehireResponse handleResponse(HttpResponse // no content return res; } - if (Utils.statusCodeMatches(response.statusCode(), "422", "4XX")) { + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw UnprocessableEntityError.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { // no content throw APIException.from("API error occurred", response); } @@ -236,7 +244,15 @@ public CompletableFutureHttpRequest buildRequest(T request, Class klass, TypeReference typeR "json", false); req.setBody(Optional.ofNullable(serializedRequestBody)); - req.addHeader("Accept", "*/*") + req.addHeader("Accept", "application/json") .addHeader("user-agent", SDKConfiguration.USER_AGENT); _headers.forEach((k, list) -> list.forEach(v -> req.addHeader(k, v))); req.addHeaders(Utils.getHeadersFromMetadata(request, null)); @@ -169,7 +170,14 @@ public PostV1ContractorsContractorUuidTerminationResponse handleResponse(HttpRes // no content return res; } - if (Utils.statusCodeMatches(response.statusCode(), "422", "4XX")) { + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw UnprocessableEntityError.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { // no content throw APIException.from("API error occurred", response); } @@ -236,7 +244,15 @@ public CompletableFuture securitySource() { + return Optional.ofNullable(this.securitySource); + } + + BeforeRequestContextImpl createBeforeRequestContext() { + return new BeforeRequestContextImpl( + this.sdkConfiguration, + this.baseUrl, + "post-v1-employees-employee_id-member_portal_invitations", + java.util.Optional.empty(), + securitySource()); + } + + AfterSuccessContextImpl createAfterSuccessContext() { + return new AfterSuccessContextImpl( + this.sdkConfiguration, + this.baseUrl, + "post-v1-employees-employee_id-member_portal_invitations", + java.util.Optional.empty(), + securitySource()); + } + + AfterErrorContextImpl createAfterErrorContext() { + return new AfterErrorContextImpl( + this.sdkConfiguration, + this.baseUrl, + "post-v1-employees-employee_id-member_portal_invitations", + java.util.Optional.empty(), + securitySource()); + } + HttpRequest buildRequest(T request, Class klass) throws Exception { + String url = Utils.generateURL( + klass, + this.baseUrl, + "/v1/employees/{employee_id}/member_portal_invitations", + request, null); + HTTPRequest req = new HTTPRequest(url, "POST"); + req.addHeader("Accept", "application/json") + .addHeader("user-agent", SDKConfiguration.USER_AGENT); + _headers.forEach((k, list) -> list.forEach(v -> req.addHeader(k, v))); + req.addHeaders(Utils.getHeadersFromMetadata(request, null)); + Utils.configureSecurity(req, this.sdkConfiguration.securitySource().getSecurity(), "companyAccessAuth"); + + return req.build(); + } + } + + public static class Sync extends Base + implements RequestOperation { + public Sync(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private HttpRequest onBuildRequest(PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest request) throws Exception { + HttpRequest req = buildRequest(request, PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest.class); + return sdkConfiguration.hooks().beforeRequest(createBeforeRequestContext(), req); + } + + private HttpResponse onError(HttpResponse response, Exception error) throws Exception { + return sdkConfiguration.hooks().afterError( + createAfterErrorContext(), + Optional.ofNullable(response), + Optional.ofNullable(error)); + } + + private HttpResponse onSuccess(HttpResponse response) throws Exception { + return sdkConfiguration.hooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public HttpResponse doRequest(PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest request) { + HttpRequest r = unchecked(() -> onBuildRequest(request)).get(); + HttpResponse httpRes; + try { + httpRes = client.send(r); + if (Utils.statusCodeMatches(httpRes.statusCode(), "4XX", "5XX")) { + httpRes = onError(httpRes, null); + } else { + httpRes = onSuccess(httpRes); + } + } catch (Exception e) { + httpRes = unchecked(() -> onError(null, e)).get(); + } + + return httpRes; + } + + + @Override + public PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse handleResponse(HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse.Builder resBuilder = + PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "201")) { + // no content + return res; + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw NotFoundErrorObject.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw UnprocessableEntityError.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + throw APIException.from("API error occurred", response); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + throw APIException.from("API error occurred", response); + } + throw APIException.from("Unexpected status code received: " + response.statusCode(), response); + } + } + public static class Async extends Base + implements AsyncRequestOperation { + + public Async(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private CompletableFuture onBuildRequest(PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest request) throws Exception { + HttpRequest req = buildRequest(request, PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest.class); + return this.sdkConfiguration.asyncHooks().beforeRequest(createBeforeRequestContext(), req); + } + + private CompletableFuture> onError(HttpResponse response, Throwable error) { + return this.sdkConfiguration.asyncHooks().afterError(createAfterErrorContext(), response, error); + } + + private CompletableFuture> onSuccess(HttpResponse response) { + return this.sdkConfiguration.asyncHooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public CompletableFuture> doRequest(PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest request) { + return unchecked(() -> onBuildRequest(request)).get().thenCompose(client::sendAsync) + .handle((resp, err) -> { + if (err != null) { + return onError(null, err); + } + if (Utils.statusCodeMatches(resp.statusCode(), "4XX", "5XX")) { + return onError(resp, null); + } + return CompletableFuture.completedFuture(resp); + }) + .thenCompose(Function.identity()) + .thenCompose(this::onSuccess); + } + + @Override + public CompletableFuture handleResponse( + HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + com.gusto.embedded_api_v_2025_11_15.models.operations.async.PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse.Builder resBuilder = + com.gusto.embedded_api_v_2025_11_15.models.operations.async.PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + com.gusto.embedded_api_v_2025_11_15.models.operations.async.PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "201")) { + // no content + return CompletableFuture.completedFuture(res); + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return NotFoundErrorObject.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return UnprocessableEntityError.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + return Utils.createAsyncApiError(response, "Unexpected status code received: " + response.statusCode()); + } + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/PostV1PayrollBatches.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/PostV1PayrollBatches.java new file mode 100644 index 000000000..0af21ea20 --- /dev/null +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/PostV1PayrollBatches.java @@ -0,0 +1,306 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2025_11_15.operations; + +import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.RequestOperation; +import static com.gusto.embedded_api_v_2025_11_15.utils.Exceptions.unchecked; +import static com.gusto.embedded_api_v_2025_11_15.operations.Operations.AsyncRequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2025_11_15.SDKConfiguration; +import com.gusto.embedded_api_v_2025_11_15.SecuritySource; +import com.gusto.embedded_api_v_2025_11_15.models.components.PayrollBatch; +import com.gusto.embedded_api_v_2025_11_15.models.errors.APIException; +import com.gusto.embedded_api_v_2025_11_15.models.errors.PayrollBatchConflictError; +import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1PayrollBatchesRequest; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1PayrollBatchesResponse; +import com.gusto.embedded_api_v_2025_11_15.models.operations.PostV1PayrollBatchesSecurity; +import com.gusto.embedded_api_v_2025_11_15.utils.Blob; +import com.gusto.embedded_api_v_2025_11_15.utils.HTTPClient; +import com.gusto.embedded_api_v_2025_11_15.utils.HTTPRequest; +import com.gusto.embedded_api_v_2025_11_15.utils.Headers; +import com.gusto.embedded_api_v_2025_11_15.utils.Hook.AfterErrorContextImpl; +import com.gusto.embedded_api_v_2025_11_15.utils.Hook.AfterSuccessContextImpl; +import com.gusto.embedded_api_v_2025_11_15.utils.Hook.BeforeRequestContextImpl; +import com.gusto.embedded_api_v_2025_11_15.utils.SerializedBody; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils.JsonShape; +import com.gusto.embedded_api_v_2025_11_15.utils.Utils; +import java.io.InputStream; +import java.lang.Exception; +import java.lang.IllegalArgumentException; +import java.lang.Object; +import java.lang.String; +import java.lang.Throwable; +import java.net.http.HttpRequest; +import java.net.http.HttpResponse; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; +import java.util.function.Function; + + +public class PostV1PayrollBatches { + + static abstract class Base { + final SDKConfiguration sdkConfiguration; + final String baseUrl; + final PostV1PayrollBatchesSecurity security; + final SecuritySource securitySource; + final HTTPClient client; + final Headers _headers; + + public Base( + SDKConfiguration sdkConfiguration, PostV1PayrollBatchesSecurity security, + Headers _headers) { + this.sdkConfiguration = sdkConfiguration; + this._headers =_headers; + this.baseUrl = this.sdkConfiguration.serverUrl(); + this.security = security; + // hooks will be passed method level security only + this.securitySource = SecuritySource.of(security); + this.client = this.sdkConfiguration.client(); + } + + Optional securitySource() { + return Optional.ofNullable(this.securitySource); + } + + BeforeRequestContextImpl createBeforeRequestContext() { + return new BeforeRequestContextImpl( + this.sdkConfiguration, + this.baseUrl, + "post-v1-payroll_batches", + java.util.Optional.empty(), + securitySource()); + } + + AfterSuccessContextImpl createAfterSuccessContext() { + return new AfterSuccessContextImpl( + this.sdkConfiguration, + this.baseUrl, + "post-v1-payroll_batches", + java.util.Optional.empty(), + securitySource()); + } + + AfterErrorContextImpl createAfterErrorContext() { + return new AfterErrorContextImpl( + this.sdkConfiguration, + this.baseUrl, + "post-v1-payroll_batches", + java.util.Optional.empty(), + securitySource()); + } + HttpRequest buildRequest(T request, TypeReference typeReference) throws Exception { + String url = Utils.generateURL( + this.baseUrl, + "/v1/payroll_batches"); + HTTPRequest req = new HTTPRequest(url, "POST"); + Object convertedRequest = Utils.convertToShape( + request, + JsonShape.DEFAULT, + typeReference); + SerializedBody serializedRequestBody = Utils.serializeRequestBody( + convertedRequest, + "requestBody", + "json", + false); + if (serializedRequestBody == null) { + throw new IllegalArgumentException("Request body is required"); + } + req.setBody(Optional.ofNullable(serializedRequestBody)); + req.addHeader("Accept", "application/json") + .addHeader("user-agent", SDKConfiguration.USER_AGENT); + _headers.forEach((k, list) -> list.forEach(v -> req.addHeader(k, v))); + req.addHeaders(Utils.getHeadersFromMetadata(request, null)); + Utils.configureSecurity(req, security); + + return req.build(); + } + } + + public static class Sync extends Base + implements RequestOperation { + public Sync( + SDKConfiguration sdkConfiguration, PostV1PayrollBatchesSecurity security, + Headers _headers) { + super( + sdkConfiguration, security, + _headers); + } + + private HttpRequest onBuildRequest(PostV1PayrollBatchesRequest request) throws Exception { + HttpRequest req = buildRequest(request, new TypeReference() {}); + return sdkConfiguration.hooks().beforeRequest(createBeforeRequestContext(), req); + } + + private HttpResponse onError(HttpResponse response, Exception error) throws Exception { + return sdkConfiguration.hooks().afterError( + createAfterErrorContext(), + Optional.ofNullable(response), + Optional.ofNullable(error)); + } + + private HttpResponse onSuccess(HttpResponse response) throws Exception { + return sdkConfiguration.hooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public HttpResponse doRequest(PostV1PayrollBatchesRequest request) { + HttpRequest r = unchecked(() -> onBuildRequest(request)).get(); + HttpResponse httpRes; + try { + httpRes = client.send(r); + if (Utils.statusCodeMatches(httpRes.statusCode(), "4XX", "5XX")) { + httpRes = onError(httpRes, null); + } else { + httpRes = onSuccess(httpRes); + } + } catch (Exception e) { + httpRes = unchecked(() -> onError(null, e)).get(); + } + + return httpRes; + } + + + @Override + public PostV1PayrollBatchesResponse handleResponse(HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + PostV1PayrollBatchesResponse.Builder resBuilder = + PostV1PayrollBatchesResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + PostV1PayrollBatchesResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "201")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return res.withPayrollBatch(Utils.unmarshal(response, new TypeReference() {})); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "409")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw PayrollBatchConflictError.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw UnprocessableEntityError.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + throw APIException.from("API error occurred", response); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + throw APIException.from("API error occurred", response); + } + throw APIException.from("Unexpected status code received: " + response.statusCode(), response); + } + } + public static class Async extends Base + implements AsyncRequestOperation { + + public Async( + SDKConfiguration sdkConfiguration, PostV1PayrollBatchesSecurity security, + Headers _headers) { + super( + sdkConfiguration, security, + _headers); + } + + private CompletableFuture onBuildRequest(PostV1PayrollBatchesRequest request) throws Exception { + HttpRequest req = buildRequest(request, new TypeReference() {}); + return this.sdkConfiguration.asyncHooks().beforeRequest(createBeforeRequestContext(), req); + } + + private CompletableFuture> onError(HttpResponse response, Throwable error) { + return this.sdkConfiguration.asyncHooks().afterError(createAfterErrorContext(), response, error); + } + + private CompletableFuture> onSuccess(HttpResponse response) { + return this.sdkConfiguration.asyncHooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public CompletableFuture> doRequest(PostV1PayrollBatchesRequest request) { + return unchecked(() -> onBuildRequest(request)).get().thenCompose(client::sendAsync) + .handle((resp, err) -> { + if (err != null) { + return onError(null, err); + } + if (Utils.statusCodeMatches(resp.statusCode(), "4XX", "5XX")) { + return onError(resp, null); + } + return CompletableFuture.completedFuture(resp); + }) + .thenCompose(Function.identity()) + .thenCompose(this::onSuccess); + } + + @Override + public CompletableFuture handleResponse( + HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + com.gusto.embedded_api_v_2025_11_15.models.operations.async.PostV1PayrollBatchesResponse.Builder resBuilder = + com.gusto.embedded_api_v_2025_11_15.models.operations.async.PostV1PayrollBatchesResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + com.gusto.embedded_api_v_2025_11_15.models.operations.async.PostV1PayrollBatchesResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "201")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return Utils.unmarshalAsync(response, new TypeReference() {}) + .thenApply(res::withPayrollBatch); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "409")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return PayrollBatchConflictError.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return UnprocessableEntityError.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + return Utils.createAsyncApiError(response, "Unexpected status code received: " + response.statusCode()); + } + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/PutV1CompaniesCompanyIdFederalTaxDetails.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/PutV1CompaniesCompanyIdFederalTaxDetails.java index 17be68e44..c1b7f239e 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/PutV1CompaniesCompanyIdFederalTaxDetails.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/operations/PutV1CompaniesCompanyIdFederalTaxDetails.java @@ -12,6 +12,7 @@ import com.gusto.embedded_api_v_2025_11_15.SecuritySource; import com.gusto.embedded_api_v_2025_11_15.models.components.FederalTaxDetails; import com.gusto.embedded_api_v_2025_11_15.models.errors.APIException; +import com.gusto.embedded_api_v_2025_11_15.models.errors.ForbiddenErrorObject; import com.gusto.embedded_api_v_2025_11_15.models.errors.NotFoundErrorObject; import com.gusto.embedded_api_v_2025_11_15.models.errors.UnprocessableEntityError; import com.gusto.embedded_api_v_2025_11_15.models.operations.PutV1CompaniesCompanyIdFederalTaxDetailsRequest; @@ -179,6 +180,13 @@ public PutV1CompaniesCompanyIdFederalTaxDetailsResponse handleResponse(HttpRespo throw APIException.from("Unexpected content-type received: " + contentType, response); } } + if (Utils.statusCodeMatches(response.statusCode(), "403")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw ForbiddenErrorObject.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } if (Utils.statusCodeMatches(response.statusCode(), "404")) { if (Utils.contentTypeMatches(contentType, "application/json")) { throw NotFoundErrorObject.from(response); @@ -264,6 +272,14 @@ public CompletableFuture securitySource() { + return Optional.ofNullable(this.securitySource); + } + + BeforeRequestContextImpl createBeforeRequestContext() { + return new BeforeRequestContextImpl( + this.sdkConfiguration, + this.baseUrl, + "put-v1-partner-managed-companies-company-uuid-disassociate", + java.util.Optional.empty(), + securitySource()); + } + + AfterSuccessContextImpl createAfterSuccessContext() { + return new AfterSuccessContextImpl( + this.sdkConfiguration, + this.baseUrl, + "put-v1-partner-managed-companies-company-uuid-disassociate", + java.util.Optional.empty(), + securitySource()); + } + + AfterErrorContextImpl createAfterErrorContext() { + return new AfterErrorContextImpl( + this.sdkConfiguration, + this.baseUrl, + "put-v1-partner-managed-companies-company-uuid-disassociate", + java.util.Optional.empty(), + securitySource()); + } + HttpRequest buildRequest(T request, Class klass) throws Exception { + String url = Utils.generateURL( + klass, + this.baseUrl, + "/v1/partner_managed_companies/{company_uuid}/disassociate", + request, null); + HTTPRequest req = new HTTPRequest(url, "PUT"); + req.addHeader("Accept", "application/json") + .addHeader("user-agent", SDKConfiguration.USER_AGENT); + _headers.forEach((k, list) -> list.forEach(v -> req.addHeader(k, v))); + req.addHeaders(Utils.getHeadersFromMetadata(request, null)); + Utils.configureSecurity(req, security); + + return req.build(); + } + } + + public static class Sync extends Base + implements RequestOperation { + public Sync( + SDKConfiguration sdkConfiguration, PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity security, + Headers _headers) { + super( + sdkConfiguration, security, + _headers); + } + + private HttpRequest onBuildRequest(PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest request) throws Exception { + HttpRequest req = buildRequest(request, PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest.class); + return sdkConfiguration.hooks().beforeRequest(createBeforeRequestContext(), req); + } + + private HttpResponse onError(HttpResponse response, Exception error) throws Exception { + return sdkConfiguration.hooks().afterError( + createAfterErrorContext(), + Optional.ofNullable(response), + Optional.ofNullable(error)); + } + + private HttpResponse onSuccess(HttpResponse response) throws Exception { + return sdkConfiguration.hooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public HttpResponse doRequest(PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest request) { + HttpRequest r = unchecked(() -> onBuildRequest(request)).get(); + HttpResponse httpRes; + try { + httpRes = client.send(r); + if (Utils.statusCodeMatches(httpRes.statusCode(), "4XX", "5XX")) { + httpRes = onError(httpRes, null); + } else { + httpRes = onSuccess(httpRes); + } + } catch (Exception e) { + httpRes = unchecked(() -> onError(null, e)).get(); + } + + return httpRes; + } + + + @Override + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse handleResponse(HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse.Builder resBuilder = + PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "200")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return res.withPartnerManagedCompanyDisassociateResponse(Utils.unmarshal(response, new TypeReference() {})); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw NotFoundErrorObject.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw UnprocessableEntityError.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + throw APIException.from("API error occurred", response); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + throw APIException.from("API error occurred", response); + } + throw APIException.from("Unexpected status code received: " + response.statusCode(), response); + } + } + public static class Async extends Base + implements AsyncRequestOperation { + + public Async( + SDKConfiguration sdkConfiguration, PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity security, + Headers _headers) { + super( + sdkConfiguration, security, + _headers); + } + + private CompletableFuture onBuildRequest(PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest request) throws Exception { + HttpRequest req = buildRequest(request, PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest.class); + return this.sdkConfiguration.asyncHooks().beforeRequest(createBeforeRequestContext(), req); + } + + private CompletableFuture> onError(HttpResponse response, Throwable error) { + return this.sdkConfiguration.asyncHooks().afterError(createAfterErrorContext(), response, error); + } + + private CompletableFuture> onSuccess(HttpResponse response) { + return this.sdkConfiguration.asyncHooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public CompletableFuture> doRequest(PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest request) { + return unchecked(() -> onBuildRequest(request)).get().thenCompose(client::sendAsync) + .handle((resp, err) -> { + if (err != null) { + return onError(null, err); + } + if (Utils.statusCodeMatches(resp.statusCode(), "4XX", "5XX")) { + return onError(resp, null); + } + return CompletableFuture.completedFuture(resp); + }) + .thenCompose(Function.identity()) + .thenCompose(this::onSuccess); + } + + @Override + public CompletableFuture handleResponse( + HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + com.gusto.embedded_api_v_2025_11_15.models.operations.async.PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse.Builder resBuilder = + com.gusto.embedded_api_v_2025_11_15.models.operations.async.PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + com.gusto.embedded_api_v_2025_11_15.models.operations.async.PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "200")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return Utils.unmarshalAsync(response, new TypeReference() {}) + .thenApply(res::withPartnerManagedCompanyDisassociateResponse); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return NotFoundErrorObject.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return UnprocessableEntityError.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + return Utils.createAsyncApiError(response, "Unexpected status code received: " + response.statusCode()); + } + } +} diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/utils/AsyncRetries.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/utils/AsyncRetries.java index 5a7692f2f..29c75273f 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/utils/AsyncRetries.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/utils/AsyncRetries.java @@ -98,6 +98,15 @@ private boolean shouldRetryIOException(Throwable e, BackoffStrategy backoff) { } private static long retryAfterMs(HttpResponse response) { + String retryAfterMs = response.headers().firstValue("retry-after-ms").orElse(null); + if (retryAfterMs != null && !retryAfterMs.isEmpty()) { + try { + long milliseconds = Long.parseLong(retryAfterMs); + return milliseconds < 0 ? 0 : milliseconds; + } catch (NumberFormatException ignored) { + } + } + String retryAfter = response.headers().firstValue("retry-after").orElse(null); if (retryAfter == null || retryAfter.isEmpty()) { return 0; @@ -152,7 +161,7 @@ private void maybeRetry(Supplier>> task, String reason = e instanceof AsyncRetryableException ? "status " + ((AsyncRetryableException) e).response().statusCode() : e.getClass().getSimpleName(); - logger.trace("Async retrying due to {} - waiting {}ms before attempt {}", intervalMs, state.count() + 1); + logger.trace("Async retrying due to {} - waiting {}ms before attempt {}", reason, intervalMs, state.count() + 1); } scheduler.schedule( diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/utils/Multipart.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/utils/Multipart.java index bc96c994e..762785553 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/utils/Multipart.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/utils/Multipart.java @@ -123,7 +123,7 @@ static final class FormField implements Part { FormField(String name, String value, String contentType) { this.name = name; this.value = value; - this.contentType = contentType != null ? contentType : "text/plain; charset=UTF-8"; + this.contentType = stripCrlf(contentType != null ? contentType : "text/plain; charset=UTF-8"); } @Override @@ -153,7 +153,7 @@ static final class FilePart implements Part { FilePart(String name, Blob blob, String filename, String contentType) { this.name = name; this.filename = filename; - this.contentType = contentType != null ? contentType : DEFAULT_FILE_CT; + this.contentType = stripCrlf(contentType != null ? contentType : DEFAULT_FILE_CT); this.blob = blob; } @@ -188,6 +188,12 @@ private static String escapeQuoted(String s) { return out.toString(); } + private static String stripCrlf(String s) { + if (s == null) return null; + if (s.indexOf('\r') < 0 && s.indexOf('\n') < 0) return s; + return s.replace("\r", "").replace("\n", ""); + } + /** * RFC 5987 filename* with ASCII fallback. */ diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/utils/Retries.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/utils/Retries.java index a07262d62..ecb856112 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/utils/Retries.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/utils/Retries.java @@ -99,6 +99,15 @@ private HttpResponse getResponse(boolean retryConnectError, boolean } private static long retryAfterMs(HttpResponse response) { + String retryAfterMs = response.headers().firstValue("retry-after-ms").orElse(null); + if (retryAfterMs != null && !retryAfterMs.isEmpty()) { + try { + long milliseconds = Long.parseLong(retryAfterMs); + return milliseconds < 0 ? 0 : milliseconds; + } catch (NumberFormatException ignored) { + } + } + String retryAfter = response.headers().firstValue("retry-after").orElse(null); if (retryAfter == null || retryAfter.isEmpty()) { return 0; diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/utils/SpeakeasyHTTPClient.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/utils/SpeakeasyHTTPClient.java index a1014f4bc..b31e08314 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/utils/SpeakeasyHTTPClient.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/utils/SpeakeasyHTTPClient.java @@ -38,6 +38,15 @@ public class SpeakeasyHTTPClient implements HTTPClient { private final HttpClient client = HttpClient.newHttpClient(); + private static final Set STREAMING_MEDIA_TYPES = + Set.of("text/event-stream", "application/x-ndjson", "application/jsonl"); + + private static boolean isStreamingMediaType(String value) { + int paramsIndex = value.indexOf(';'); + String mediaType = paramsIndex == -1 ? value : value.substring(0, paramsIndex); + return STREAMING_MEDIA_TYPES.contains(mediaType.trim().toLowerCase(Locale.ENGLISH)); + } + /** * Sets debug logging on or off for requests and responses including bodies for JSON content. *

    @@ -162,7 +171,7 @@ private static HttpResponse logResponse(HttpResponse r log("Response headers: " + redactHeaders(response.headers())); // skip caching for streaming responses - they may hang - if (contentType.startsWith("text/event-stream") || contentType.startsWith("application/x-ndjson")) { + if (isStreamingMediaType(contentType)) { return response; } diff --git a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/utils/StreamingParser.java b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/utils/StreamingParser.java index 7b0d61df9..a613ce5a6 100644 --- a/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/utils/StreamingParser.java +++ b/gusto_embedded_v_2025_11_15/src/main/java/com/gusto/embedded_api_v_2025_11_15/utils/StreamingParser.java @@ -176,18 +176,25 @@ private static class JsonLContentProcessor implements StreamContentProcessor eventId = Optional.empty(); + // Scan state preserved across reads; offsets stay valid because the + // parser compacts and resets this state after each boundary. + private int scanPos = 0; + private int lineStart = 0; + // A trailing CR may complete to CRLF on the next read; in that case + // the LF belongs to the same line ending, not a new empty line. + private boolean pendingCRLF = false; + @Override public BoundaryInfo findBoundary(byte[] data, int limit) { - int lineStart = 0, i = lineStart; + int i = scanPos; + if (pendingCRLF) { + pendingCRLF = false; + if (i < limit && data[i] == LF && i == lineStart) { + lineStart = i + 1; + i = i + 1; + } + } while (i < limit) { for (byte[] pattern : BOUNDARY_PATTERNS) { if (matchesPattern(data, i, limit, pattern)) { @@ -229,8 +251,14 @@ public BoundaryInfo findBoundary(byte[] data, int limit) { boundStart--; } int boundLength = (lineStart - boundStart) + pattern.length; + scanPos = 0; + lineStart = 0; + pendingCRLF = false; return new BoundaryInfo(boundStart, boundLength); } + if (pattern.length == 1 && data[i] == CR && i == limit - 1) { + pendingCRLF = true; + } lineStart = i + pattern.length; i = lineStart - 1; break; @@ -238,6 +266,7 @@ public BoundaryInfo findBoundary(byte[] data, int limit) { } i++; } + scanPos = i; return new BoundaryInfo(-1, 0); } diff --git a/gusto_embedded_v_2026_06_15/.speakeasy/gen.lock b/gusto_embedded_v_2026_06_15/.speakeasy/gen.lock index 893e3755a..0c6a683ec 100644 --- a/gusto_embedded_v_2026_06_15/.speakeasy/gen.lock +++ b/gusto_embedded_v_2026_06_15/.speakeasy/gen.lock @@ -1,25 +1,25 @@ lockVersion: 2.0.0 id: 832db1bc-e6ce-4506-aa03-f5ced0e67cdc management: - docChecksum: ddeb844b522ec8c654bb350b8c6c2ab9 + docChecksum: 0d3fb2c7fdc646cc35bc487011f473a3 docVersion: "2026-06-15" - speakeasyVersion: 1.768.2 - generationVersion: 2.889.1 - releaseVersion: 0.0.1 - configChecksum: b534840f6fec4211438ee4c5068bd935 + speakeasyVersion: 1.796.4 + generationVersion: 2.935.1 + releaseVersion: 0.1.0 + configChecksum: a1b22d65f54a0d39af7f72c3b187e54e repoURL: https://github.com/Gusto/gusto-java-client.git repoSubDirectory: gusto_embedded_v_2026_06_15 installationURL: https://github.com/Gusto/gusto-java-client persistentEdits: - generation_id: 56760204-ccec-44f7-950b-4ce2a33bb91c - pristine_commit_hash: 06d7cd0b6fbd8f9b5a80b5347c72f2c780feff64 - pristine_tree_hash: 9d0b23c0a889d121aad40cd41d976432ecdd4221 + generation_id: ba13b8b4-0036-471d-ade1-5cf70cd29965 + pristine_commit_hash: 34396957f383caaca6f0badf7f813adc30bce473 + pristine_tree_hash: dcc24cbec6133c93a378dd3ddbdaff59d57d91f5 features: java: additionalDependencies: 0.1.0 - additionalProperties: 0.0.1 + additionalProperties: 0.0.2 constsAndDefaults: 0.1.3 - core: 3.55.26 + core: 3.57.2 deprecations: 2.81.2 downloadStreams: 0.1.1 flattening: 2.81.1 @@ -32,10 +32,10 @@ features: inputOutputModels: 2.83.0 methodSecurity: 2.82.4 nameOverrides: 2.81.5 - nullables: 0.1.0 + nullables: 0.1.1 sdkHooks: 1.2.0 serverIDs: 2.81.1 - unions: 0.3.6 + unions: 0.3.8 uploadStreams: 0.1.0 trackedFiles: .gitattributes: @@ -48,8 +48,8 @@ trackedFiles: pristine_git_object: dc2b3349ed737cd77d5e445865f9be952cc932af build.gradle: id: f07866736216 - last_write_checksum: sha1:b20f3f89231612029562df94c434f75924e0281c - pristine_git_object: 3015924fc6006c26b455e44e35199a4d5472a1bb + last_write_checksum: sha1:39b90d69f0c64619ab2dffe4844f74fc900f6b8c + pristine_git_object: e8a60c5a1f60698c33ea1f79e7fa8c67e6848fc9 docs/models/components/AccountType.md: id: 32b5b4e60da5 last_write_checksum: sha1:ec22bb72113ff6ce0ec4438a5adff094a31ae879 @@ -88,8 +88,8 @@ trackedFiles: pristine_git_object: a8deac80b4f101043b4c0e8f6e7ba2a6e6d9fb8c docs/models/components/Aggregation.md: id: e5d63019622a - last_write_checksum: sha1:cdac01f7a46902a6297b6ddbab2e8b4faac59951 - pristine_git_object: 8f566a744711e3455152e814f67644403bd3293e + last_write_checksum: sha1:e978d9135c55bf69432f874bf8b1e63d55570fc0 + pristine_git_object: 9488a002a2404b2a97151cfbbbbb6fdc8486cabe docs/models/components/AmountType.md: id: 663939309beb last_write_checksum: sha1:fffdd274a120697dbb626304ad3f899e7c9c6e80 @@ -136,8 +136,8 @@ trackedFiles: pristine_git_object: f1e7b78532bd5e7f2ddad60282481ec907142c51 docs/models/components/BatchAction.md: id: ddc06cdc93b6 - last_write_checksum: sha1:c58a2f5434029b8557c3fa0e49ef7efc691976f2 - pristine_git_object: 3c8d54d77e9cf518770859226afdb85aa53557a4 + last_write_checksum: sha1:c105a0139e90c7c836aca3c3ae026225ee3c295e + pristine_git_object: 5d459a3ec3d0120b81ca4735d16c74d1013fba51 docs/models/components/BenefitSummary.md: id: c5490be656b5 last_write_checksum: sha1:760a6f470506e435577a75fb05ad32c6c0533cce @@ -188,8 +188,56 @@ trackedFiles: pristine_git_object: 0d80fc52ad276f18f20dfb98c8954f90da7dbea3 docs/models/components/Blockers.md: id: 5a96143923fd - last_write_checksum: sha1:8c32d09c90f329f6ecaf6e0f0b9474ae280d971a - pristine_git_object: a9c5d26fdb797d2aa0ebdd0707326abe4a97f232 + last_write_checksum: sha1:f59a22b61a811345cecc10ebf23ce4405acf1cd9 + pristine_git_object: 3f3950886ce1dc651b1d83c939520cd71fb17869 + docs/models/components/BulkReport.md: + id: 72c5edae0d6c + last_write_checksum: sha1:4db6bf11bd83ec9c1653364686dfc244ad843c66 + pristine_git_object: f74c41ef5f3bce048304242ec7eb4cbfa935b8a4 + docs/models/components/BulkReportBody.md: + id: 5456d4b00a13 + last_write_checksum: sha1:065a9f701fa120828d66bc4b9441094c44c9526e + pristine_git_object: a492fe670a908de273a0d46095561554a7cd0e2d + docs/models/components/BulkReportCompany.md: + id: b74200873d5a + last_write_checksum: sha1:9060cbfddd5705eda765eaca15b5d8d7fa247191 + pristine_git_object: 403c6549099b45c49728e26d70d66195f397fc38 + docs/models/components/BulkReportCompanyStatus.md: + id: 0320128bc4dd + last_write_checksum: sha1:0d44ccaba2ddaad30946b42baee912318db69fa6 + pristine_git_object: 5bc57cc2f0883443a9f64cb077651c5fac895e49 + docs/models/components/BulkReportCustomReportItem.md: + id: 1357328d5841 + last_write_checksum: sha1:075640b9f30744fa01221e33ffc2719e84bd7931 + pristine_git_object: 60c0cbc47c2ef50f3848747c1bba8f0bcf581289 + docs/models/components/BulkReportGeneralLedgerItem.md: + id: b9b8fe1d0284 + last_write_checksum: sha1:90a0eacd63291ea506235931941955d10d1802a6 + pristine_git_object: c2b22186bcc5e2d5a454f8871284598afeb0cde4 + docs/models/components/BulkReportGeneralLedgerItemReportType.md: + id: 6cbd2e830f8c + last_write_checksum: sha1:58e3714d9d93e6718cd3dbd631da28ade622d41d + pristine_git_object: 89d7b82bcbca9c32b48694229b27b5caf4850f4f + docs/models/components/BulkReportItem.md: + id: b26e1dfbcbc7 + last_write_checksum: sha1:5f7ce5ccf97e79a6454c761b161c2a2b8df78745 + pristine_git_object: 822bc679de20e53aacfa75c0483dd5dd2b2568a9 + docs/models/components/BulkReportItemResult.md: + id: c22991b3fae2 + last_write_checksum: sha1:832b06c0f81a7ee828d822ef6a1b6efa73e3d81e + pristine_git_object: 035a9001d7ffa6d1d1463ec500aee95aacfd9b5c + docs/models/components/BulkReportItemResultReportType.md: + id: f6058cdad26b + last_write_checksum: sha1:a5b05239056ce1c3aea71c35ff5de4d36e7fdd64 + pristine_git_object: cafdb2e6143344640e4cdeb19305dc21b973974d + docs/models/components/BulkReportItemResultStatus.md: + id: 72898a8deda7 + last_write_checksum: sha1:e759e6dfe4f4445fc7434d30168228c5dfa40b2d + pristine_git_object: a06364e5b3d7b8f2025f64260a811c70021dfa9f + docs/models/components/BulkReportStatus.md: + id: bcdde57b8dba + last_write_checksum: sha1:93b020e33c2006ddf9f94c4e496174f65e253a47 + pristine_git_object: dd0891b2de231ebf27043223ebb2bc0a16a1f621 docs/models/components/CatchUp.md: id: 75e0752e3b9d last_write_checksum: sha1:408fcb57b5bb0609dc60b24f397db3189fc54c83 @@ -220,8 +268,8 @@ trackedFiles: pristine_git_object: 2f0d92ede7ce8f75b2f5ba30268162a440a16989 docs/models/components/Columns.md: id: 2c0ae85d9402 - last_write_checksum: sha1:ace4bcb0b37a2677e350439349df7b76c08a0123 - pristine_git_object: 26154fbd530bc5094a052e2c3a76ead2fd2aa3b2 + last_write_checksum: sha1:efe9aa0f3658c30c1f19c8b826d20091ea4f9949 + pristine_git_object: e79caac0175a3e4f17b96621f5c73c273225bd1d docs/models/components/Company.md: id: a50352948c02 last_write_checksum: sha1:c2ab1a6c1b7efaaa928a44f6993c65d625ede642 @@ -392,12 +440,12 @@ trackedFiles: pristine_git_object: 578c6897a281f95c611dff9331f64bd32985d787 docs/models/components/Contractor.md: id: 1920d517318b - last_write_checksum: sha1:c682f2e3b2f8873d2b80996af2b8609ced2dab70 - pristine_git_object: e56880867d682857aa46d7d723d6f6d251e03ecb + last_write_checksum: sha1:3e5916a700abd7446c9ae2d58f80d4a09b536217 + pristine_git_object: 78bd8a45268e5715395969d1970b964f9359b21d docs/models/components/ContractorAddress.md: id: 6e7add70317c - last_write_checksum: sha1:1d517bbca73d42565872162908d8e0a877bc19ba - pristine_git_object: 782ff1953563bf0db4097216dd2118a5123a8735 + last_write_checksum: sha1:c6b6d5cafabfec07e90591acb95720de6ccd3bfb + pristine_git_object: 9927dcc3a4d81469ccb45540534b59cc6e009003 docs/models/components/ContractorAddressUpdateBody.md: id: c41c79d09142 last_write_checksum: sha1:5814f6c0a4e8c4ca19d4f69f9e152632dfdbc3ef @@ -420,8 +468,8 @@ trackedFiles: pristine_git_object: ed9946eff4f363fd2928bde05ab5e5b0721b57af docs/models/components/ContractorCreateRequestBody.md: id: ee6e4128485c - last_write_checksum: sha1:9542498db6005a3d3c86ae8bf2c18176bf9d2038 - pristine_git_object: 9507c9ce25a51d2296d6f8bbc7116ed4a6d40fe8 + last_write_checksum: sha1:d485cce2a48fac03eaef2cf3b8197cc6d59baed3 + pristine_git_object: 9c18cf5c1ba8f4b98333bd4b74355dc0115b50c5 docs/models/components/ContractorCreateRequestBodyType.md: id: 5b55ad3dc1ec last_write_checksum: sha1:8fe94b0ad54a1c8d85c993a0508c01740202b208 @@ -464,8 +512,12 @@ trackedFiles: pristine_git_object: ba873569d393e78d35768605945e244d703a3cb1 docs/models/components/ContractorPaymentDetailsList.md: id: 05a6d3271b00 - last_write_checksum: sha1:e6a891e3cd98e0c6538f0d64f22bbd56335ccef9 - pristine_git_object: 242523a9b87ecfa596990873dc88ae6fd1901d80 + last_write_checksum: sha1:bf4187f87f088bd43f43abe05831a81d5392cc04 + pristine_git_object: db2d5093b391f262d66aaced1392669f9a61b267 + docs/models/components/ContractorPaymentDetailsListPaymentMethod.md: + id: a05648d10967 + last_write_checksum: sha1:a311763006e81b2551f00579c7dc7f4efbbb6741 + pristine_git_object: 8e74bd60a58fb9f6ebda3de09f0688dbef91e226 docs/models/components/ContractorPaymentForGroup.md: id: e008571f2391 last_write_checksum: sha1:0be036007aa85fe8bb1f8df15e8a28821d9abfff @@ -538,6 +590,22 @@ trackedFiles: id: c9289cc61b3b last_write_checksum: sha1:e8486803edc4a43235044125f7d2adf27bde177c pristine_git_object: 4388b6c92539ca4643854c944c6776c9e2c05ba5 + docs/models/components/ContractorPaymentListing.md: + id: 4b6ffe99500c + last_write_checksum: sha1:66eac01194216f16aafa370f5086fb86cdcf73ea + pristine_git_object: be5d0c0234560fe9d3b6f75b86996387c4c302f9 + docs/models/components/ContractorPaymentListingPaymentMethod.md: + id: "744218089439" + last_write_checksum: sha1:facbb7c6a77a11c98315134c978674ca003f9cca + pristine_git_object: 52630fb0ab282e8250ff84543c5abf29b2b34e37 + docs/models/components/ContractorPaymentListingStatus.md: + id: 1717d98c291c + last_write_checksum: sha1:e972d354b4b0fd9e782221c42d2f7a6a384a6586 + pristine_git_object: 1cd006f36d0896cc10662aa14b9fdd6b4711d063 + docs/models/components/ContractorPaymentListingWageType.md: + id: f0624ce91793 + last_write_checksum: sha1:ac856363995b3d48c18d10e676e5fe16e8e706dd + pristine_git_object: 1ae1ed1c360ec472d479b0be3da2c893ff7f1df4 docs/models/components/ContractorPaymentMethod.md: id: b1de3b896787 last_write_checksum: sha1:4f69bd45acfe350f44958118aea4612f63114102 @@ -628,8 +696,8 @@ trackedFiles: pristine_git_object: ab111b67c5955f67fe200db710bf53e175e2118d docs/models/components/ContractorUpdateRequestBody.md: id: 5da71416e591 - last_write_checksum: sha1:7a8ddad8ff3965f4a3a8488ac8ad64f82b225fea - pristine_git_object: aafda5b8808df2353bc931eda3414ebb96b63f02 + last_write_checksum: sha1:a6939fb3a5d95149b782cc567aef2c087988ade9 + pristine_git_object: b4cf16a094d5f1f0452b16b3582f5c901a3a732d docs/models/components/ContractorUpdateRequestBodyType.md: id: 74afb8e29b3d last_write_checksum: sha1:c2b1f9d01c6c932aa1379ccb7a823e009530e7a6 @@ -666,6 +734,10 @@ trackedFiles: id: c7661e55985e last_write_checksum: sha1:524dfb65f93668fb147b0fee60bee086a6f4fd06 pristine_git_object: 564e608eeebf523d48889d28b44c59cc1768081a + docs/models/components/CreateBulkReport.md: + id: 0b2ef9f71f5f + last_write_checksum: sha1:9ecf3d08e9b7acdbaf5cfeaf74525716cf53f48c + pristine_git_object: c8188d84e028cdd4bf3352781aaa6754a424f51f docs/models/components/CreateFlowRequest.md: id: f27f7c3e28f6 last_write_checksum: sha1:d81988a7e2fa69d59684b89a2ea050fe7d471fe8 @@ -680,12 +752,32 @@ trackedFiles: pristine_git_object: 7a9a7e693fc4db4de1e05d8df5ce2db9427a9de8 docs/models/components/CreateReportBody.md: id: ee976281d7d5 - last_write_checksum: sha1:80ffa85c01e20a0a2f77549e28c8e9b05e0bbba5 - pristine_git_object: 9ff6e15d552cb45443e029043470de25cc20015b + last_write_checksum: sha1:65c7a28d19acdd51451ae4cfe81e7848bd0739c0 + pristine_git_object: 769de027894b444dbf8889d50bf13078f17aa78a + docs/models/components/CreateReportBodyColumns.md: + id: 95cc7cf16507 + last_write_checksum: sha1:4a1c0af1cef7dd726402f9fc2f78c2744a50f7ec + pristine_git_object: 111a31adb156bf8ebf2e8badc4a095957834772e + docs/models/components/CreateReportBodyDateFilterType.md: + id: 8ac0abd54b2d + last_write_checksum: sha1:1197bf47366eb267bf6daf566773a50df1f0d6ec + pristine_git_object: d3c60d3dea7b9ffaeaa756e5dce8dedf00de5ab5 docs/models/components/CreateReportBodyEmploymentStatus.md: id: 3eb48637df01 last_write_checksum: sha1:bae0d1861e271b80a23d3188b198d12140f67f38 pristine_git_object: 3b24f4f7ee0a61c98106a2bd063247327be0fcae + docs/models/components/CreateReportBodyEmploymentType.md: + id: 231577f6858a + last_write_checksum: sha1:8d0727ff3558d8a8acd4dac6aa3c2db1d18e274d + pristine_git_object: 9f2ebd319d634227ccbe5549f6dfd62c6b533e37 + docs/models/components/CreateReportBodyFileType.md: + id: f7552e3af460 + last_write_checksum: sha1:a8d900a9f0f4777b269a4ae84fcbf962de60db7a + pristine_git_object: bea4442636dcf97f28885daa896fd63b55bb6f03 + docs/models/components/CreateReportBodyGroupings.md: + id: ad245e00e685 + last_write_checksum: sha1:b41c557eb9b79cf7493aea32735bb957361da4cf + pristine_git_object: eaab9ad61e7ab3b0f18f60f3945312fedc056bd6 docs/models/components/CreateReportBodyPaymentMethod.md: id: aff867236d8e last_write_checksum: sha1:de7254d4e7eec9b5af15b7ffea122198582a455a @@ -702,6 +794,14 @@ trackedFiles: id: 167a6296115c last_write_checksum: sha1:bd35c30d3f265b730bb199301722b4e86b90e037 pristine_git_object: 4927a6ddde020333aa7642781abba1a9d2a52056 + docs/models/components/CustomWithholdings.md: + id: aceb94ead24f + last_write_checksum: sha1:024956520c149a2236ba278c79b727ceb8f6360f + pristine_git_object: 21feb111f94dfae1afc82aca5c6f1e0ef22ad454 + docs/models/components/DateFilterType.md: + id: 4b508df148cb + last_write_checksum: sha1:4f24cf02de5601242b449d37e84de3f87a3b1ed6 + pristine_git_object: 86806f59c2577374e3e1137887c997f9c001f2ec docs/models/components/DeductAsPercentage.md: id: a6071fb8b05c last_write_checksum: sha1:a28a7c955fa62ae3e772870a4be603fac4e4506e @@ -836,8 +936,8 @@ trackedFiles: pristine_git_object: df027f92099a91353b5914e40460996c130edce0 docs/models/components/EmployeeAddress.md: id: 7a8cdf9537c6 - last_write_checksum: sha1:8c5c661ef34e2efddf41e21a99338af3f8d12db7 - pristine_git_object: fb7413252c37a396a1e03ef9bc037a724b898409 + last_write_checksum: sha1:c695b8c192e66c54ce1a2df637f3e85da401ddc5 + pristine_git_object: a3a5fb43d30f233c4643715a682524f29977c3d5 docs/models/components/EmployeeBankAccount.md: id: 83df104f98bb last_write_checksum: sha1:bea3e0ae36b0515a75c28803d2b1d40629729b80 @@ -952,8 +1052,8 @@ trackedFiles: pristine_git_object: 0cddc21f2f557b797d4328cc5ff3b8318723fc38 docs/models/components/EmployeeCompensations.md: id: 6819a79517c5 - last_write_checksum: sha1:d06813b4c67262a84c8ae285df1162032aa4d462 - pristine_git_object: 7904759a2448b31424ed13791fabc55e47b036d5 + last_write_checksum: sha1:79d5493e3254da63771d732d9ec9dfaf6ae1a29b + pristine_git_object: 07c565f821733bf0aac6eb208cb976ae1d4aff59 docs/models/components/EmployeeCustomField.md: id: e57ca94db19e last_write_checksum: sha1:8d4101e6b10d32f7db58b6d5fc00b850b73b7b19 @@ -1004,12 +1104,16 @@ trackedFiles: pristine_git_object: 2ad69f6f195260ef44657c6d061c9c7f7feed72a docs/models/components/EmployeeOnboardingStatus.md: id: 60902bb5f747 - last_write_checksum: sha1:3782dad967a2782a22f1ab36d78231513f1cd8eb - pristine_git_object: 75686cf105d8952edea3234c6cec04e7ac542278 + last_write_checksum: sha1:d424327a16d52979d35da44f6792deae88965d1d + pristine_git_object: e7d8f695fd3a8b871035b389e940b803b1fa66dd docs/models/components/EmployeeOnboardingStatus1.md: id: a17d7e9198af last_write_checksum: sha1:7f7b98cc057d5e68ed7004cdb4aab1436c2ec31a pristine_git_object: 294704bbcac41b58595433f43811fbe7e33afb1d + docs/models/components/EmployeeOnboardingStatusCategory.md: + id: 286a2d1e42bc + last_write_checksum: sha1:a2b9e2765bebda9893a020b50aae3405074df285 + pristine_git_object: 5b79b374f5ef5708fad4b2e716f44870ba6855b2 docs/models/components/EmployeeOnboardingStatusOnboardingStep.md: id: edb79f2cb32d last_write_checksum: sha1:0294bb77a1838eabe1d4d061e6384c1b19f5ca2b @@ -1128,12 +1232,12 @@ trackedFiles: pristine_git_object: f4fd371e693ba6cbeae926928d627e08182b25e6 docs/models/components/EmploymentStatus.md: id: ce77cdbe50a3 - last_write_checksum: sha1:04ce13ca1c18ab42f51b5439450b6370cf04aeca - pristine_git_object: 0075e3cf4c0b7f702f70f237f15d4ccd63348401 + last_write_checksum: sha1:d86d2a6180f009c8a586a2ba779331f15354f293 + pristine_git_object: fdc3c3a7b259cfe3a612982f2eebbe8f980f9077 docs/models/components/EmploymentType.md: id: 3756d9f9106d - last_write_checksum: sha1:80e579d75cf6ac4e96db28b75ed383a432906a28 - pristine_git_object: c7a1d6b6da243f74159bbcd564a63b5f47ab6223 + last_write_checksum: sha1:14826204a39838b88bccf6b33f013064e786783b + pristine_git_object: a014e32d887ad4dfa931c9954f3fa5d34fb83342 docs/models/components/EntityErrorObject.md: id: 5dd1d4dfcf55 last_write_checksum: sha1:7f2733a4ca492029ac9876620c715a923e699e0e @@ -1152,8 +1256,8 @@ trackedFiles: pristine_git_object: 8efa51b28f66dafa1ebb031a21905137e625b36f docs/models/components/Exclusions.md: id: 40623fc4f64c - last_write_checksum: sha1:f56e4ce537aa48e0813e9e321a0dbe1b1363b521 - pristine_git_object: 8284107204740b8573151aa6fb2f3bd7161925bf + last_write_checksum: sha1:2be67048385adbd70e7c3c40ef4d7d4e4daf05fb + pristine_git_object: 1a6c3b2e695731c6bf99be3c148c623c5d508e19 docs/models/components/ExperienceLevel.md: id: 9278dff1da72 last_write_checksum: sha1:ab947c8b3ac51f8a89ae90fd6394b0e7a5072388 @@ -1218,6 +1322,10 @@ trackedFiles: id: a0455a5a2b50 last_write_checksum: sha1:4541b1d548efb9ddfd7394a218427e79d24109a5 pristine_git_object: cab3b0fd8367f3540675adaa0c1af2c14714a44c + docs/models/components/Federal.md: + id: dce43892c19c + last_write_checksum: sha1:ead0fe6450c17654e3a69cdcd7190206b5298788 + pristine_git_object: 12c04e7361294c9e471878eff02937fbab58fde4 docs/models/components/FederalHolidays.md: id: f8409ad07138 last_write_checksum: sha1:4a3fe9c86f7f0faee23315866f3768814868c80a @@ -1242,14 +1350,18 @@ trackedFiles: id: 8cfc69d4ddb9 last_write_checksum: sha1:0ca52867f3a734f839dd22eeb2c5823a44c2bc07 pristine_git_object: 8b8379d75c5057708e62e70ab6e2f421ed8473d1 + docs/models/components/Field.md: + id: aee8d71308a6 + last_write_checksum: sha1:429d36e0ecc3aa08c3495bab3e1b22ce5dee86c7 + pristine_git_object: 30387b3b89e6d762bbba0825d7eb944b90faa236 docs/models/components/Fields.md: id: 7d2684d56319 last_write_checksum: sha1:263dce987e603869bd919173b7f8f827b80029c1 pristine_git_object: 5553538da7bb981c0d2d5985ca121abb019681b4 docs/models/components/FileType.md: id: 74cd4c306ec9 - last_write_checksum: sha1:48cdeef85a5552ca316d613e49db07bf80f1cadc - pristine_git_object: e2a73660a2f0dc5c9cb4ddbdd260c2951e24c14f + last_write_checksum: sha1:9585ed977af7a918d48e30b275a314f1ca59d02e + pristine_git_object: b5d0fa12437d9cb8f3703ebfa04ab519ffcb22a9 docs/models/components/FilingForm.md: id: ef2df346c7e5 last_write_checksum: sha1:560c4cd21e1921ce9c1932714bc91e481f8b7788 @@ -1324,8 +1436,12 @@ trackedFiles: pristine_git_object: 6fab19654ad852a67cb47e3b4c37e4dd448a4f78 docs/models/components/GeneralLedgerReportBody.md: id: ac3d76b538ca - last_write_checksum: sha1:7f3543461cb7826824bf96be372f1598cbebf285 - pristine_git_object: fad04b537cf606ddea225e7d58ac5d053f742922 + last_write_checksum: sha1:6abe1192bbf9fdf9636ecf36c50c96c6826cf2f0 + pristine_git_object: 99fa0a43cdb784748393831862ff57c55a22c073 + docs/models/components/GeneralLedgerReportBodyAggregation.md: + id: edc5a6460875 + last_write_checksum: sha1:9990ba650aaa52d40749d9ea1e9a2007d43a3730 + pristine_git_object: bb9008a0b5cab1c64fc37c7173cab087167a6ce4 docs/models/components/GeneratedDocument.md: id: 801a45cb3afc last_write_checksum: sha1:838c962604c29e2902e1e94ecfe56e14e3008583 @@ -1536,12 +1652,20 @@ trackedFiles: pristine_git_object: c7d1dc1cb1ea796741418d4ed7b7cb17de4d85c3 docs/models/components/Location.md: id: cc158a8d9f37 - last_write_checksum: sha1:2a66f032246c128f23aa6dafa39a6c251bbae915 - pristine_git_object: 56a22e02c6b1cc24927a3bbe747517073f2ecfa2 + last_write_checksum: sha1:3b0ed6cda3e0664b885cc513402a54ecce520dd9 + pristine_git_object: bf6907034ede2744ca8c2cd146828d9b845a67bc + docs/models/components/MemberPortalInvitation.md: + id: a15928befa1e + last_write_checksum: sha1:eb4d7f2f5c667a17a4becb12375d4f90778c4fab + pristine_git_object: 588490e35a4da4c06f37125a2fcaef867a5bddaa docs/models/components/MemberPortalInvitationStatus.md: id: ac58ee3ed737 last_write_checksum: sha1:607a2d4e7ea7e6a15f2b9879b3a7654fb10c1b69 pristine_git_object: 5f221901b876ccaea30d1b5b80a5df2284e562b6 + docs/models/components/MemberPortalInvitationStatus1.md: + id: 8ef1027a02a4 + last_write_checksum: sha1:89095aee0c5c1eb2be3a69bd802b30da0da71793 + pristine_git_object: 457688e7b8bfeaa988a5039da961c737237b48e0 docs/models/components/MemorialDay.md: id: b1ef8b2c1756 last_write_checksum: sha1:e510f200cb248fe7a3fc15b9df1a94fc257943ef @@ -1580,12 +1704,16 @@ trackedFiles: pristine_git_object: ab94d1e98ad3f60f9cf1c8f69131d3ace3d154ed docs/models/components/Notification.md: id: 6e515ebee663 - last_write_checksum: sha1:932152fd8c7573799a869b57311c2abadd845d97 - pristine_git_object: 8e391f841845376ecd14a89fa39507110fd6daa4 + last_write_checksum: sha1:b83b3caa2afc1d4168d9aa4e3b8556647dde069d + pristine_git_object: c0d1b00cc93e55ebff8fc850dd57c99c10c50688 docs/models/components/NotificationEntityType.md: id: 73cdc2a4dc7c last_write_checksum: sha1:4d177be8e015c32ad2cce8d36bddcef058795886 pristine_git_object: 7464edd485f132ab00e724a75177a8d1ab735990 + docs/models/components/NotificationStatus.md: + id: 3ad8df3857c1 + last_write_checksum: sha1:9cc3c60fa4b2d8f41762438fcaf5d44988e33412 + pristine_git_object: c069d5358875d33b702000c74a8ffa63d978c691 docs/models/components/Occupations.md: id: 60617051371e last_write_checksum: sha1:dfc3dc9fe24e2e1fc4045452b4d22f0c96821420 @@ -1610,6 +1738,10 @@ trackedFiles: id: 4c216ddf3b3d last_write_checksum: sha1:dd85fc723d1589e817b6a0ae051b33bb2e1fb2cc pristine_git_object: 87fc6e78505353fa2f8ab24cfce94a027ef6f4b9 + docs/models/components/OverrideType.md: + id: 1980f4ade097 + last_write_checksum: sha1:8ca0049fec959466f7e09f699ccf196e0210570e + pristine_git_object: 0550b08814a4a7788d8ddaa9c115041eb58bb279 docs/models/components/OwnerType.md: id: fb590f6731b3 last_write_checksum: sha1:1b020c3c70d2c710bf1352024342c31ecf9858ea @@ -1642,6 +1774,10 @@ trackedFiles: id: 654d132fd234 last_write_checksum: sha1:2515439de8bf7d9169909d1680f34ede2bbed922 pristine_git_object: 8c27c3463f9d54e0fcaec3b02b38e8841c4185b0 + docs/models/components/PartnerManagedCompanyDisassociateResponse.md: + id: be4b99e7209e + last_write_checksum: sha1:36c54e114556811b38e3fdea2e86bbb4f62291f5 + pristine_git_object: 72338ea6ca4355337de795d755a79999536deef5 docs/models/components/PartnerManagedCompanyMigrateRequest.md: id: 22c973027506 last_write_checksum: sha1:c1cb0fa96263e4f3eff64a5641d5346cb99f96f6 @@ -1756,8 +1892,8 @@ trackedFiles: pristine_git_object: 58fbfed3f928094afd1fc83ff032aacc978ed4b3 docs/models/components/PayScheduleAutoPayrollEnablementBlocker.md: id: c0f3a76f0e90 - last_write_checksum: sha1:96829203777389bf1b8dd9c577f3c3abeac719eb - pristine_git_object: ba659d09faea1689fd8c5cf6282e9cd3a920f8a5 + last_write_checksum: sha1:44c2de769b3e99f8d9ff6504bfadf33e689ed54f + pristine_git_object: 3f81e58622bccdc14182e1db8be521731b2fabb8 docs/models/components/PayScheduleAutoPayrollEnablementBlockerMetadata.md: id: ffdc9b1a9801 last_write_checksum: sha1:bea258766300ffc574f5f6571068634c3467fce6 @@ -1820,8 +1956,8 @@ trackedFiles: pristine_git_object: 9f1d4f06ac4a7388bbab78539c571bcc149880d0 docs/models/components/PaymentMethod.md: id: 1b54b132ff41 - last_write_checksum: sha1:5e4119f4019ba6420f68ab5db640b577008a9faa - pristine_git_object: b9acc4d89c40d150139e85cd865f1385ea81b733 + last_write_checksum: sha1:ea56db3f5d59c6b7d146b3c89253a4490beb298d + pristine_git_object: 0a1056529b55151b9a4e46f36949cbb9c0c358ee docs/models/components/PaymentMethodBankAccount.md: id: 3e0f4e30abac last_write_checksum: sha1:718c3a58ad65e5b3a0dba93269145404fa026ef7 @@ -1850,6 +1986,46 @@ trackedFiles: id: 4fa486c1417a last_write_checksum: sha1:c715a2f29bc093b40c1759ace4ecc7a7b52d5e39 pristine_git_object: 6ea6ce1befd800752964bdb61f0edc563d9d4e5b + docs/models/components/PayrollBatch.md: + id: aa379ae74487 + last_write_checksum: sha1:639a6f14faf9a44a75f0f1b6288d02cdd7186a6b + pristine_git_object: 0ef0a9c6f19c1d7a1a2a015d81979d6ec947e4ea + docs/models/components/PayrollBatchResults.md: + id: 098f60e665e1 + last_write_checksum: sha1:5fc5700ad07078c32451316462fd96ad953103ee + pristine_git_object: 35d1b086db5e2f909c1f3c19c5bdc7fadf45c5e7 + docs/models/components/PayrollBatchResultsCategory.md: + id: 833ccbedcd94 + last_write_checksum: sha1:d91f6d8fa31d94df6a059c725141155621de3a71 + pristine_git_object: ea226a58a13abf84fd8726194158f031b89353b8 + docs/models/components/PayrollBatchResultsEntityType.md: + id: 543e0adb6d11 + last_write_checksum: sha1:0a541db9687f64c13b8befac6498538d2c85e6e9 + pristine_git_object: 87bc068eee27dc782024ea366b536eff9cc9c19d + docs/models/components/PayrollBatchResultsErrors.md: + id: d9d6034410c0 + last_write_checksum: sha1:b9c09d7a955a8a335597ea4cd7f0359bc3ef241f + pristine_git_object: 2923fe2760eb6f28bbe26df5e830b15e41e19b4d + docs/models/components/PayrollBatchResultsExclusionsStatus.md: + id: e9f94cba753e + last_write_checksum: sha1:3c5ddf39ddecfdaf574909b3f42d8baf126f6ba5 + pristine_git_object: 1a56790d93a0c563b8b949094d4b7497d165dde0 + docs/models/components/PayrollBatchResultsResultsCategory.md: + id: f543792db812 + last_write_checksum: sha1:73533a433040e6b5cc9295a23073f316a1519265 + pristine_git_object: 33992032f41317ee9bdec9c3cd6bc3886b3e54d1 + docs/models/components/PayrollBatchResultsResultsStatus.md: + id: fbf4a75f229e + last_write_checksum: sha1:39e19dcbb496e2d241ae3384170c55373ae37eae + pristine_git_object: e45d104dbfe2d0a5380f22c94f1deff9906fa0a6 + docs/models/components/PayrollBatchResultsStatus.md: + id: e381f28c0708 + last_write_checksum: sha1:071c48da411e537c0fb25521d5ff4ef46a213f02 + pristine_git_object: de22686447fcf0dd2db32e832e143816ba9fc7e3 + docs/models/components/PayrollBatchStatus.md: + id: 5cfe77d913ce + last_write_checksum: sha1:f4d4c19036e133931d3d6079182d4edb273fdae8 + pristine_git_object: 439ecae76bfdab8316a30d78a18044921c3d3e7f docs/models/components/PayrollBenefits.md: id: 6272f369fea6 last_write_checksum: sha1:6ebc0b9c32b506836852515c74ecedec22584d58 @@ -1932,12 +2108,20 @@ trackedFiles: pristine_git_object: 472b37852cfce812da6aca392c56c976bbf3e4d3 docs/models/components/PayrollDigest.md: id: bad4af67bf40 - last_write_checksum: sha1:58da5557d492389ba4d71bb6e97bba6054e15262 - pristine_git_object: 0322bb856262d0f7ae3ea95e1d48036bbf5096df + last_write_checksum: sha1:1925d2c7a157ad8c6786852b101063659694fb3e + pristine_git_object: 053c53bd266b46db660ae277af61e7fb8e52e26a + docs/models/components/PayrollDigestBatchAction.md: + id: ed15e77a4eb0 + last_write_checksum: sha1:01bbe4c25e6112ab4198064ef029775bcea8c0a2 + pristine_git_object: 3fe90913144a28447f41f71c64bf09cbaeb6478e docs/models/components/PayrollDigestResults.md: id: 5c926153f262 last_write_checksum: sha1:652e70d893806d647da334973e8a3b25e3e98ff1 pristine_git_object: de2f608698fec77393afb45a687d44c09a1b03f0 + docs/models/components/PayrollDigestResultsBlockers.md: + id: 3e3f481078bd + last_write_checksum: sha1:28bc04757a62d0b7c0aa614f57f529321e97929c + pristine_git_object: 0e66251ca74eb2041fc7a70f274fa6c361c7e72d docs/models/components/PayrollDigestResultsCategory.md: id: 6adf604cb4f7 last_write_checksum: sha1:b211ad5ac849e97a4364b8e1ee933791ea054ad6 @@ -1964,8 +2148,8 @@ trackedFiles: pristine_git_object: 377e7bc67358a5d1e2e2570ff409438a8e1e45a1 docs/models/components/PayrollDigestResultsResults.md: id: f94d2703fee7 - last_write_checksum: sha1:a9177c7dc02ad8ec4b3ec8d8957f1325dae695f8 - pristine_git_object: 3b98f1941e0270cd8953bb9a34e951db07e82561 + last_write_checksum: sha1:276a7147579b0d18b1de3a85c9addb0a37e53620 + pristine_git_object: dd80d9d7c798241a5ca0dab67c3fa37081edc867 docs/models/components/PayrollDigestResultsResultsStatus.md: id: dc8b8812d32f last_write_checksum: sha1:1e113614638d4fcca4f566c3114c5cd1c4f5c36a @@ -1984,8 +2168,20 @@ trackedFiles: pristine_git_object: 5edd9244ad90f354f5e2479e8f47ecb04085e266 docs/models/components/PayrollEmployeeCompensationsType.md: id: be4c680f6697 - last_write_checksum: sha1:f4c84e98bba2d0cd324b93c630dbd9851152e55e - pristine_git_object: 2f281425ee16eaeabe2b5fcce7b8efb3e2312d83 + last_write_checksum: sha1:b229f5c666b63c15aeb5d9b54fd8029ecfc0c305 + pristine_git_object: 3f72a701b6fc05f29e9a86617ad054119cafd132 + docs/models/components/PayrollEmployeeCompensationsTypeAmountType.md: + id: 8ce326416971 + last_write_checksum: sha1:ffb1d025aec6e154cc380488128aba556083e43e + pristine_git_object: 52c4c1d924a882078ba82a3c7af7c9481f436caa + docs/models/components/PayrollEmployeeCompensationsTypeCustomWithholdingsAmountType.md: + id: 783c11f0e1c8 + last_write_checksum: sha1:a379e5549ada89e3cd64b791b94ff3ce642bac62 + pristine_git_object: 3cea8bd70201d37bacb0d14df9176ca9efbf5823 + docs/models/components/PayrollEmployeeCompensationsTypeOverrideType.md: + id: f4bc702e32a8 + last_write_checksum: sha1:a2c7b33f0e8eed0f52f8d34ed2d4d594954fa987 + pristine_git_object: e36ef499d5af4266cad75382a32fa462bca63f0d docs/models/components/PayrollEmployeeCompensationsTypePaidTimeOff.md: id: c18ebc92a47a last_write_checksum: sha1:af9750e4d1fa6fd005892fdc0d764bbe899d8b99 @@ -2080,12 +2276,32 @@ trackedFiles: pristine_git_object: e1f76cf1707dc2688969b13b1470c22ac0f494d2 docs/models/components/PayrollShowBenefits.md: id: 10eebfca6377 - last_write_checksum: sha1:bb8dd69bb6b76644f58b701bb869c6ed8e68a2d6 - pristine_git_object: 2eb21a6cd6b638ba86128a32857bdc8079e30a15 + last_write_checksum: sha1:eade1c2e32b7ffed9b4b5cfd866d550952d9f59c + pristine_git_object: d642862961f7a6b8f665000ea451c9680bf2db03 + docs/models/components/PayrollShowCustomWithholdings.md: + id: 7380eda0703b + last_write_checksum: sha1:bf1821fab078d782dc33cba4c3780baa87381667 + pristine_git_object: 2d3858464ddac8b4d2a7248650e79a08800b7def docs/models/components/PayrollShowDeductions.md: id: 0871b8250a52 - last_write_checksum: sha1:f0ec977285c6d5a5d3e187690ea8651b82f37453 - pristine_git_object: 213639757138a63ecf80e933d63e24163a041304 + last_write_checksum: sha1:0b0c7aff0794f8023a06d2508848536a184db972 + pristine_git_object: 08419aa03fb87200b872c225fee1c3008dc478a7 + docs/models/components/PayrollShowEmployeeCompensationsAmountType.md: + id: d98a1482a9fc + last_write_checksum: sha1:2b8dfc2654d15146a45b3f9711af639b2b1192a8 + pristine_git_object: ec4832dd2cbad9b0dab7f9423dcaaecebe0e435d + docs/models/components/PayrollShowEmployeeCompensationsCustomWithholdingsAmountType.md: + id: 4b4e00b2513c + last_write_checksum: sha1:ae65654190af84222ab6de630fc46d4bde1771ea + pristine_git_object: acc51d938730f7f2c97003210156a0ba70b1a457 + docs/models/components/PayrollShowEmployeeCompensationsOverrideType.md: + id: 29c8204a6f36 + last_write_checksum: sha1:e1a16bc6c50c9d8f9bc5128f7be9cd2bed50a50f + pristine_git_object: 5be9343b543f8081d965db22076d95e4bbabb576 + docs/models/components/PayrollShowFederal.md: + id: d5069af306f1 + last_write_checksum: sha1:59511677d3496405d5f1b3fdf34b6ea3d9e80506 + pristine_git_object: bbf1e61158145e15196c1d27676faef1fab461f5 docs/models/components/PayrollShowFixedCompensations.md: id: 6831dec3ae52 last_write_checksum: sha1:af9bb58a56e81fe4673ca44a2b77a56b9422201f @@ -2094,6 +2310,10 @@ trackedFiles: id: 21eb04e12ef9 last_write_checksum: sha1:8e530178e64df579ee3af3d7743d45e9adbe69eb pristine_git_object: 01342eeb7c48636faf9c000687231a8acd0bbe6b + docs/models/components/PayrollShowOverrideType.md: + id: 305c8262bd19 + last_write_checksum: sha1:5bbedcef2a9ff36102be0cf320399a5ae6091c3d + pristine_git_object: 00881c6f937adae148a513bf9fe313fdf2b2767a docs/models/components/PayrollShowPaidTimeOff.md: id: d444bbcd3049 last_write_checksum: sha1:2817e2988b577e3de221b154ca176b311c83a1b4 @@ -2106,10 +2326,14 @@ trackedFiles: id: 8b674ae511bf last_write_checksum: sha1:3e0071ceae31e9672729bde69c551910293a1d7b pristine_git_object: ec9d3862049972a155ee1efc6859c9e385627d88 + docs/models/components/PayrollShowState.md: + id: 6c26fdd2c4e7 + last_write_checksum: sha1:b6745147067885a3e4515c47991851facd8ef0b8 + pristine_git_object: 4b83ec0bd585f82e02c67bc65f1e2bcc555f4ba3 docs/models/components/PayrollShowTaxes.md: id: ce867da55c07 - last_write_checksum: sha1:a05b50206cd160d90e878c01b019953d8b86201a - pristine_git_object: aa2239758c2855e80c82a7f714cb5135d8fa2d99 + last_write_checksum: sha1:55c80ce824896fc74e2e03899f6cc08d6f37c6b0 + pristine_git_object: 5f59abaa462b58a8b35babd0d77cd7ea536080d9 docs/models/components/PayrollSubmissionBlockerRequestType.md: id: 0c2fe1a016f0 last_write_checksum: sha1:37d986a7c9779d178dbc09d6883c064d9863483f @@ -2140,8 +2364,28 @@ trackedFiles: pristine_git_object: 5e00f61bf5ebc921ca0880c7eb15d01eec255b15 docs/models/components/PayrollUnprocessedEmployeeCompensationsType.md: id: 12faf57e77a6 - last_write_checksum: sha1:2b0b1521ea0ae5d161252d05848ec76886e01d76 - pristine_git_object: 6ff9286dc2398c3fdfcd542be50a874bc91bf1cf + last_write_checksum: sha1:0272142066130ad0e2219f2d6133d09757f8ccf3 + pristine_git_object: 21ab4072b854ea0d094c89a0e6786df3673efafb + docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeAmountType.md: + id: df816249dab3 + last_write_checksum: sha1:105ff02e8677286b636329e67558adbe8b236c15 + pristine_git_object: 26bd5bd64dcfdc4bd79389a9ff8e4516e33c0d41 + docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings.md: + id: e8587d7c644f + last_write_checksum: sha1:1ca8284acd8e0ff8681fcb464aa730ef40e4637c + pristine_git_object: c90466649a59b7334959baec83f7f3a9d2d93788 + docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsAmountType.md: + id: 9820098ae632 + last_write_checksum: sha1:9d80e2555f0ee6f187f569e7ba141eb08df6f67c + pristine_git_object: f4a2333a0fd000c2425eb379b056b93282231b80 + docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsOverrideType.md: + id: ebcff5b5416c + last_write_checksum: sha1:654b5837de46ef68fbb4c7606c85c40b830768b7 + pristine_git_object: b87bef685f5c1b680c06a9541970b0621adfae04 + docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeFederal.md: + id: d03c0b6e559a + last_write_checksum: sha1:62aa84c1ef6951243d06180caadcdb08884b3343 + pristine_git_object: 29df2d93aeaf5c3b1cca6005a8face7126c7baef docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeFixedCompensations.md: id: 9ce856dd8266 last_write_checksum: sha1:b63b053feeaec50329ef4caf332dce2c10662344 @@ -2150,6 +2394,10 @@ trackedFiles: id: 31da53840c25 last_write_checksum: sha1:c1fef032ac08ae19d221d8bcaa1299cc029c38e8 pristine_git_object: 6c039e58f68d149167e28fe6751856c34ab40f95 + docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeOverrideType.md: + id: b3acd35aa153 + last_write_checksum: sha1:f0154b59fbe5c2080ff985cba855d367cc9e2249 + pristine_git_object: 043082abf196a9d14abbed17011386119d7edced docs/models/components/PayrollUnprocessedEmployeeCompensationsTypePaidTimeOff.md: id: 026d1745e945 last_write_checksum: sha1:a3534142d87116dc8f29bbe7b37e1584e7b452e0 @@ -2162,6 +2410,10 @@ trackedFiles: id: 3e2ead6833e4 last_write_checksum: sha1:09869862f666ec6fb4afac0c0839a5a15943fc2c pristine_git_object: 4f08ee2bb35deb7fc60f2cc8cf335b6881143a5d + docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeState.md: + id: 3e7d97bb91ba + last_write_checksum: sha1:cb65e580c1992765bd4773c6dcb31d9d5114d4a2 + pristine_git_object: 8af5caa60b3796c391de58cac4ca43f264840d71 docs/models/components/PayrollUpdate.md: id: 8e2688800bcd last_write_checksum: sha1:8d4a9c237dd1507da92fb4c42045854612cfe8f0 @@ -2170,14 +2422,34 @@ trackedFiles: id: e0586e313149 last_write_checksum: sha1:3e244d939dba62964d717a59b07366b5261a24f0 pristine_git_object: cb2f5af01666ad794d719ca494353089bfed3a68 + docs/models/components/PayrollUpdateCustomWithholdings.md: + id: 69dd85dce0c9 + last_write_checksum: sha1:646e76332d9c30da66e0a4b3eac0231949ff2818 + pristine_git_object: 663fa43ab16359120642e1bb9c5cdc3537cd8a7c docs/models/components/PayrollUpdateDeductions.md: id: 7ddee42b04ea last_write_checksum: sha1:75f3070e514a301daf2366ff3afb207a12255e5b pristine_git_object: a3ed7482f3dbe73cb424431533eaf82cb3cd83fd docs/models/components/PayrollUpdateEmployeeCompensations.md: id: d36f03c59ff0 - last_write_checksum: sha1:f75ce168b3670c8bbda39b7a5aacaa7cf5cb113e - pristine_git_object: aca72c1b650394d4eed4582a4a79d541c5f3cc99 + last_write_checksum: sha1:3f05d23ab2b7b9bada6007acf7b7a82375f33792 + pristine_git_object: 3d8bf7689ec114bdc461ae6d3845c69ec94b5b2d + docs/models/components/PayrollUpdateEmployeeCompensationsAmountType.md: + id: 9732cd16ed30 + last_write_checksum: sha1:4c41c1800a64e0d030c4851a10e6259cbe040f3d + pristine_git_object: 1b6fb1ad87fcd3cb1071c689c4b4b9f34d9048c6 + docs/models/components/PayrollUpdateEmployeeCompensationsCustomWithholdingsAmountType.md: + id: 95e41bbf35d8 + last_write_checksum: sha1:76f9758ee5e8196c1040de25796980f54c658bdb + pristine_git_object: cb984a97869f9c6ab2c435cc76fd8c51d1ad18b5 + docs/models/components/PayrollUpdateEmployeeCompensationsOverrideType.md: + id: c7552c95b9af + last_write_checksum: sha1:559adfc407b748fbc1acbaf8d72132c9e7f91019 + pristine_git_object: b8bcfcb54cc065f1bffcb43103c33d91f2cc7d10 + docs/models/components/PayrollUpdateFederal.md: + id: b7a7750a60ee + last_write_checksum: sha1:c5ee034d99470c44636745445800129f1719fdbf + pristine_git_object: 009ecf2d1d6e92f5dc1293b3ffbbc4501149426c docs/models/components/PayrollUpdateFixedCompensations.md: id: b80e7f9e1bab last_write_checksum: sha1:540d5942bdb229327033fc80a46fb2a489352eec @@ -2186,6 +2458,10 @@ trackedFiles: id: 24b14d627aaf last_write_checksum: sha1:48e33fd48482e67f32b710d383fcdf3f2fee5cab pristine_git_object: 95ffe176a5aaf032fb55165b7c571f91e1881789 + docs/models/components/PayrollUpdateOverrideType.md: + id: 25faeb199073 + last_write_checksum: sha1:21ec740e905cf90fc4df0a5ff230027861dad596 + pristine_git_object: 6c09349d51cdb7e5b62c68a421a35974adeba386 docs/models/components/PayrollUpdatePaidTimeOff.md: id: 0c1798874b93 last_write_checksum: sha1:f1bb4e10c83dbdb2c6086ca7960a2dd4e41d73e0 @@ -2198,6 +2474,10 @@ trackedFiles: id: c8928c5a8280 last_write_checksum: sha1:757cd2d5c9198af30c1be53e6d54252bcee84f98 pristine_git_object: d3f6d0d05817dd893d6f64fc9e57ae77eb3e5620 + docs/models/components/PayrollUpdateState.md: + id: d57eae94f563 + last_write_checksum: sha1:d1cf6367cf8fd795966466de5152713def5a1448 + pristine_git_object: 2d38a6401f467eaa0f1266cf29025e89e09e02a6 docs/models/components/PayrollWithholdingPayPeriodType.md: id: b768dbd78092 last_write_checksum: sha1:18efd0d8a5783a8d58ecbc5f1c6c217055525114 @@ -2212,12 +2492,20 @@ trackedFiles: pristine_git_object: 5621d3f319e2e4ba4dc01b457a87c330e7e5a25b docs/models/components/PeopleBatchResults.md: id: e2e042b339fa - last_write_checksum: sha1:204c17bf44cb2089bdbaf50c3b7db75e69286cf6 - pristine_git_object: 2002eb602e967ca1e625c6c400c659aea81527d6 + last_write_checksum: sha1:a7560b61726d7d8284e22a16182c0abe55cfe8e1 + pristine_git_object: 0feaa44a4d8966ae05ab7ba943f868377b91e1dc docs/models/components/PeopleBatchResultsErrors.md: id: 56004f6492cf last_write_checksum: sha1:1859e61136a846604a90527dc14c210d4abb0049 pristine_git_object: 8067200cdd2ab4ed2e677b29d179928d2c9fd7f2 + docs/models/components/PeopleBatchResultsExclusions.md: + id: c7e9e8821f24 + last_write_checksum: sha1:cf8d1e38cb08b0e824163d52909e86ecb90514ff + pristine_git_object: a060cc6f695356a4673baa106975e7295a32468e + docs/models/components/PeopleBatchResultsResults.md: + id: 5c0cdd98b702 + last_write_checksum: sha1:2deffc7c4e259e8151de4a45096f05433f5a5ade + pristine_git_object: 117463dc28633a20491c4bd73671e1ceba8c4613 docs/models/components/PeopleBatchResultsResultsErrors.md: id: 194377318a00 last_write_checksum: sha1:ef76f6a24fb3c10d97d777ebb336b7a289c06582 @@ -2304,8 +2592,8 @@ trackedFiles: pristine_git_object: dba1a815ec819a8c6fd4e1d739a0cbc2661bad9e docs/models/components/Rehire.md: id: fe3b9b67a0c8 - last_write_checksum: sha1:5f2983cd7d6b6fab4c50400a5afdb4c4b7517251 - pristine_git_object: fd2baae624f7fbe45d83a4b40c8904b382d7f2b7 + last_write_checksum: sha1:9ce8cacd19a7321a8d35deae63cea2404eef617b + pristine_git_object: ed57665f6ab66a554194bbfb30330104df18ba03 docs/models/components/RehireBody.md: id: b1a9e45d5161 last_write_checksum: sha1:781e548831c4a9e26bbc4be72253037ab9177330 @@ -2314,6 +2602,10 @@ trackedFiles: id: 064b7f8a880a last_write_checksum: sha1:2e3ae746a49c865894377e9e077f79f99f0b04c7 pristine_git_object: 29c5b8e56d63fd481da7b25525b2d1e5dccde2ab + docs/models/components/RehireEmploymentStatus.md: + id: bcfe5ddcf68c + last_write_checksum: sha1:71d1d9b5e1e300a8d6d854c9b0f2065f5d4b4a80 + pristine_git_object: ccae3666ce2331882bca661ff110642c2de951a0 docs/models/components/RehireUpdateRequestBody.md: id: 63668e49baeb last_write_checksum: sha1:79c51df018a666890bc0a07ee85d0a15925d8acd @@ -2334,6 +2626,10 @@ trackedFiles: id: 9b0071ddccd9 last_write_checksum: sha1:00d068ba0ce990a48a8c4c4bd844998715e7065a pristine_git_object: 06684bd6a239772fef644645cc3ca143ac83804e + docs/models/components/ReportType.md: + id: 34d55ac7dd96 + last_write_checksum: sha1:5e6a5d421b6df66ded3faabc358f938d624384c0 + pristine_git_object: 48d52debf43e8c5caff965ac71822c4f708bab8a docs/models/components/RequiredAttributes.md: id: 5a3341555761 last_write_checksum: sha1:c3da23b44cf58c5e98b06f98599f81fdf53f3935 @@ -2368,8 +2664,24 @@ trackedFiles: pristine_git_object: 9237c4096eaf0ec21b06f694f13d2ca286c4b869 docs/models/components/Results.md: id: 1a859def686b - last_write_checksum: sha1:fd708580cddc4edf1e18d51bbaebe3fc95e8e852 - pristine_git_object: 48e2f05cd6db21eeb06ebdd28f02ae2dded1a8b3 + last_write_checksum: sha1:48f3158827df46ddde2e7b4e6342096fdd25778c + pristine_git_object: 51744c248b6f683a55213714b4b46e7f29ceadc3 + docs/models/components/ReverseWireTransaction.md: + id: 361f3522d68d + last_write_checksum: sha1:b4d6a36fab182c2198f9fab7cd3aa8eec7b7a4d9 + pristine_git_object: 23b632d125d8ba2460bc19d649b3d660281e487a + docs/models/components/ReverseWireTransactionPaymentDirection.md: + id: ef848726e3d2 + last_write_checksum: sha1:4ad0f7f075fac739752a514fc75c46a3091935b4 + pristine_git_object: d36a4b880f889ec5c2b1640f4ebb6093c9a6f390 + docs/models/components/ReverseWireTransactionPaymentEventType.md: + id: 15dc6be3a2a8 + last_write_checksum: sha1:fdb42bc5c0c16f5eee670521ff8d72598354ba1e + pristine_git_object: 8128b57a5c1496f8028e1af9b7c815a654695ff2 + docs/models/components/ReverseWireTransactionStatus.md: + id: 941dad71301a + last_write_checksum: sha1:a2dfea119644ebf6bd269ff33f9f9603212b9982 + pristine_git_object: f340c43d9c003292bb2aa80cf26aa8b291593c44 docs/models/components/Role.md: id: c89eff3746a7 last_write_checksum: sha1:82fa3c282107c22e59d970d651bc973230094c29 @@ -2462,18 +2774,22 @@ trackedFiles: id: 550db2269fbd last_write_checksum: sha1:3e75aa61b73e2b2d6d1f1965ac0921a33038d7c0 pristine_git_object: d1f404ebd5668f9726911e50ad5894a460d4ec90 + docs/models/components/State.md: + id: 43ba85dae5e2 + last_write_checksum: sha1:bcfe9990249c4b26e295731bf6f306a1355b6774 + pristine_git_object: cef1936bd2ddec2425ca5a7d8b5d3b2207385976 docs/models/components/States.md: id: 6d1630f1842d last_write_checksum: sha1:a00c925e8012ad81808efede6a56ed68689f869c pristine_git_object: e3b3ba515434bd5d564c3c81dbbbf484ba859f4d docs/models/components/Status.md: id: dd05f949cb61 - last_write_checksum: sha1:4e160a4a1695a94b4ba7f06da081067d6e1f5ace - pristine_git_object: a8abeaebea71ab1ed90cf6c28246dac3677614cb + last_write_checksum: sha1:946624e3d021c7033ad02de01f17ecfe43e23ad4 + pristine_git_object: eace4be082a2c6c1e42b113bf6fecab593b61785 docs/models/components/SubscriptionTypes.md: id: 1b70918affab - last_write_checksum: sha1:7d943c81c94cfcbf4ae542b8f24c40f2c985d154 - pristine_git_object: 3a7af18a961c1d04823881de7cc0491ba934d11c + last_write_checksum: sha1:bcb9f68fb9a22716f5067e077af6e9cd351e8211 + pristine_git_object: 7ec9839ec7722fcb73d153cb4f16df206caa1fb2 docs/models/components/SupportedBenefit.md: id: 5a54fc450697 last_write_checksum: sha1:e47fbc2f8dae270afeb96895007edd8b46f4e8bf @@ -2490,14 +2806,22 @@ trackedFiles: id: 91872fabfcbe last_write_checksum: sha1:1cab0387e87ea814822312bc89b8496b5e28b9e2 pristine_git_object: 0cecdb25b4092c05f34819547edf8e87c26265e2 + docs/models/components/TaxPayment.md: + id: fa9fa9a32254 + last_write_checksum: sha1:36035c24a05e9c95e9e0959b4c5b13039849f05b + pristine_git_object: 417720f9b78e57578fcec33c2bb6cdfcec2c7b58 + docs/models/components/TaxPaymentLineItem.md: + id: 4297fdd79618 + last_write_checksum: sha1:602b2da44c4e0de8623dff7a386e2ec5f79d56f3 + pristine_git_object: 813912882921a4b4a96dc495ac524779c80ed4af docs/models/components/TaxRefunds.md: id: 52eb6abeb81a last_write_checksum: sha1:9acd5216bfbaf7e196e9eca31010415e4b51b15e pristine_git_object: 5b5a1417d0ed4caa82be7f6cc29e976c3ab2fae4 docs/models/components/TaxRequirement.md: id: 485b5784a8d6 - last_write_checksum: sha1:210cc5cb58fc130377713755333c3f9b009c48f1 - pristine_git_object: 8e31bfbeb7cb16e6e45cc83491a22341243efc34 + last_write_checksum: sha1:feb7e9ea3576c19b706fb4f82194343c4f3c9e9f + pristine_git_object: e03bc29024625fc1301e274941ab3fb74cfef680 docs/models/components/TaxRequirementMetadata.md: id: 02d22c41e7e3 last_write_checksum: sha1:fe07173e1c2a74beff7f9f1626eb888f108862cd @@ -2662,10 +2986,6 @@ trackedFiles: id: 752770a96807 last_write_checksum: sha1:45447038c1c197de436c5bb9013d9578263508fc pristine_git_object: 606de693a7cb36f37834bfc9c8d26fd0c2f1c372 - docs/models/components/VersionHeader.md: - id: 7c4f94fa7e65 - last_write_checksum: sha1:aaae36e5b0dd7b74b37cdd1009205cb8b2b1ed86 - pristine_git_object: 2efa0a352e005e90804b23b5d2f8c0db1f733765 docs/models/components/VeteransDay.md: id: 974931980e5a last_write_checksum: sha1:73d3d96fb7c9c816147d21ace1db262f400be08d @@ -2678,6 +2998,10 @@ trackedFiles: id: ae6c7aa17a55 last_write_checksum: sha1:e18ae1edd24974d51d0cd32224204d671c446ab5 pristine_git_object: eecd3e36fbc2bf4037a29c64414b5fb070f28985 + docs/models/components/WarningObject.md: + id: 77231dc5d962 + last_write_checksum: sha1:946160dc7a32d7b8572684864c141ca41265e2d7 + pristine_git_object: 7db41084f3a89f4ec3519bd400b7bad42a13c57a docs/models/components/Warnings.md: id: 1133aa133ae1 last_write_checksum: sha1:ba9dce62d044cc360f855a6f4a1a52fc70a27d5a @@ -2732,8 +3056,8 @@ trackedFiles: pristine_git_object: 41813e2dd6c133693e51138aeff5130bd38f0cf0 docs/models/errors/ConflictErrorObject.md: id: a9577e85192e - last_write_checksum: sha1:8f3087b520cd14b48b7aae7911756f89282fdaf9 - pristine_git_object: 46ec3c2fbd9a3b41cd649cc318052ee6eef410f3 + last_write_checksum: sha1:b89f2c283e26f9329a4164bfb75fd33e4d392506 + pristine_git_object: bc5326f19de847ab9ef764405cfdffc4db0407ba docs/models/errors/ConflictErrorObjectErrors.md: id: e4a113f06902 last_write_checksum: sha1:7d0e54fd6134937c0284262284c4720ba22c19a9 @@ -2742,22 +3066,38 @@ trackedFiles: id: 607310e85338 last_write_checksum: sha1:d109e36aced698732ee63f0c1b269e398a594c2a pristine_git_object: b0d0a11f57ecf5d93c2b43f18820523f826b0c14 + docs/models/errors/ForbiddenErrorObject.md: + id: d1222a77cd9f + last_write_checksum: sha1:3f69533faf341477c38ff2ae91dd28f964bab7bc + pristine_git_object: 4cfa4c14ecb2d75995bb3a9d507b6013f920a8c0 docs/models/errors/Metadata.md: id: da0ca4518929 - last_write_checksum: sha1:dec6775cd0e0abcb27a0d2dc49a6f161a8601f44 - pristine_git_object: 9e479ea35cc7d75205465758b9d8e24ce8733617 + last_write_checksum: sha1:bdc0f3642423a269beb168b2ffd3050b9c5350b9 + pristine_git_object: 74f2b9e371228a11b9a538deb3ac5d48536fe514 docs/models/errors/NotFoundErrorObject.md: id: 85bd5de8b5dd last_write_checksum: sha1:eb8d94dbce552d0b050e8bc221a84aca25beb527 pristine_git_object: 32a21dea9066d4af0c515f490cf8165d276d3060 + docs/models/errors/PayrollBatchConflictError.md: + id: 79eea272248c + last_write_checksum: sha1:f422481488238f7609e6ef86704d636f70a0472c + pristine_git_object: c8c98a8a00bb45e7756da169db0c8dff1c745597 + docs/models/errors/PayrollBatchConflictErrorErrors.md: + id: "334408287786" + last_write_checksum: sha1:9349d3aeea2a89816cca28a10a6d575093c926ab + pristine_git_object: 89ca96f7ff801cc633d5f2f159ba7421fcf24056 docs/models/errors/PayrollBlockersError.md: id: 74a3d8802ae4 last_write_checksum: sha1:717ff65befc340841871fbf4e09f1b79b63c8a57 pristine_git_object: 46ebb71b8138d434af5f0690d149f8ab01502b58 docs/models/errors/PayrollBlockersErrorErrors.md: id: 9b10ecfafce5 - last_write_checksum: sha1:fe54d3dfe44707e6e3a6a47e2d1dc114cf9c8829 - pristine_git_object: 38137ce81d903b2af4e6fd502f9b2430789dd211 + last_write_checksum: sha1:7d9bd8407b6c06292c01dbe64af9b3f487854804 + pristine_git_object: 00687e96454805abd085d76d49303da6cf0e0ed7 + docs/models/errors/PayrollBlockersErrorMetadata.md: + id: 1a7043c0cda4 + last_write_checksum: sha1:d74cdd1e0eaa559f53254cdaa0dea8fe361a51e3 + pristine_git_object: 2dc76c4cba1cb5fc70d0433fe820ad0d7df8c094 docs/models/errors/PayrollDigestConflictError.md: id: 19fcf70a863c last_write_checksum: sha1:40b47c2058d51d13de9b4817a1ef8989e65d0a9e @@ -2800,12 +3140,12 @@ trackedFiles: pristine_git_object: d9bfcf90ebe8dcfe126d51c05a5c03be1843ce04 docs/models/operations/Batch.md: id: fb70d60a5d4a - last_write_checksum: sha1:e08ca08b023066a98b0631dd7b716b76581fd811 - pristine_git_object: 2da5e31d31c2a0d293e5b8ccb6868f7e71b1b13b + last_write_checksum: sha1:2396c62450508b9d36e63149cf64f98575a29b58 + pristine_git_object: 7cef8eb513e3c2d03245cc8d0ae084242923468b docs/models/operations/BatchAction.md: id: 71466b7fca28 - last_write_checksum: sha1:d1df7dc3228051d1ec0c245fa0106cc0d4833e7b - pristine_git_object: 841bbc94161bd270376190a61bd4de35049a580a + last_write_checksum: sha1:727d892db0dc3aa94f61fc39dd3cdb220b83d854 + pristine_git_object: b02db03313732af347ca191e51a62fe634d0e273 docs/models/operations/ChristmasDay.md: id: 2b33b0dc8037 last_write_checksum: sha1:a068692813599ef7b1c9e8037038ea50ced28ee2 @@ -2832,8 +3172,8 @@ trackedFiles: pristine_git_object: fdf2bfa73ad47b5b0e6ae7d6c67b41b15f0cfed0 docs/models/operations/DeleteDepartmentRequest.md: id: 225a5dd67efa - last_write_checksum: sha1:79e8d70884ee6133d0a6b241d20aa496d13837f6 - pristine_git_object: ad8e37b720dd9ae3097c38a1f7af51a88c7dfe50 + last_write_checksum: sha1:6239c4ee59b8c6d435bdf89ac3d9c947785bd1aa + pristine_git_object: 84240d2140e46eee9e0accf6dcc70f7518db2b00 docs/models/operations/DeleteDepartmentResponse.md: id: 2b626e6f6ad2 last_write_checksum: sha1:051eafc691ca6154adb724524000bfc821049543 @@ -2880,8 +3220,8 @@ trackedFiles: pristine_git_object: 9c3084c2cfdd505541a3a9110bce150e8fbc6fa8 docs/models/operations/DeleteV1CompaniesCompanyIdPayrollsRequest.md: id: 80c761a49606 - last_write_checksum: sha1:4ce4b13596097118d1f02def9f5c8459df26d22e - pristine_git_object: d8039e22bed7b2682c9e7035f6ed2da7bfa9e19f + last_write_checksum: sha1:762e2019ce9dce66d7e13accb59d8dc16dbb08ed + pristine_git_object: daefaf7e56afb23bab121f5541802d049408e8a1 docs/models/operations/DeleteV1CompaniesCompanyIdPayrollsResponse.md: id: 8bb31ac92f37 last_write_checksum: sha1:d4526f6c3be516844a1d637f3743dd1afcdc3746 @@ -2904,8 +3244,8 @@ trackedFiles: pristine_git_object: c18fedcfcbc13fe7618c54866dda837e0747c937 docs/models/operations/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.md: id: 5042a285b865 - last_write_checksum: sha1:be5f53912018c06fdb18bd5c72de24cb57d29ad5 - pristine_git_object: db63e0d6a22ceb9882c3ce5134188c90ad8b1271 + last_write_checksum: sha1:31a52934eb17f1c8df5006f11de536abe28d674f + pristine_git_object: 74bbfc77bbb18758ad24c39151b50de1c50dac98 docs/models/operations/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidResponse.md: id: 5ff7408c87c0 last_write_checksum: sha1:0fce22d35e827da13bc4e64a24cbbec718e0996d @@ -2940,8 +3280,8 @@ trackedFiles: pristine_git_object: b2ae4d06b76d2a94f3bd043140b8f3c2be022d9e docs/models/operations/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.md: id: c7fe8e2c439f - last_write_checksum: sha1:c0cb6a895830b2120d433d9d571b8885daa43cf2 - pristine_git_object: 36464b1f65ffd7a30bde283a3403a551e39896ab + last_write_checksum: sha1:5cdc963d5b10ca5070998ab3641da65d6c1935e8 + pristine_git_object: ca5eb9eb8bd8d1b7870b6dd0113b88344df792df docs/models/operations/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdResponse.md: id: 8e24b36765e5 last_write_checksum: sha1:74e61c4178574e1aff44fea1cbf5691ed99d55e6 @@ -2950,14 +3290,26 @@ trackedFiles: id: b6f9ca421cc3 last_write_checksum: sha1:e0f5a84cf7d635d3f2883f4555f4f73157743e63 pristine_git_object: 76a99fc7be9b62fe9b37778454516c46d21df956 + docs/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.md: + id: 2ef252ab6a94 + last_write_checksum: sha1:591bcedf93b20c28352c101072f9751faccdbed3 + pristine_git_object: 51b9d8da6c433aab0d103ded9c16dc64083fccfe + docs/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest.md: + id: fcc734224303 + last_write_checksum: sha1:28d9929cc1357d2d728b2bec3945c85716cf38f9 + pristine_git_object: 68a9f1e2938914b58654fb542c3b14d1d3ca6cf6 + docs/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse.md: + id: 8eb1513c5464 + last_write_checksum: sha1:dc8ac65a7acef9721697e4db00688ff20778eb1d + pristine_git_object: 3e71f42e1e6f757ced5c72720eff9d582a4fa8e5 docs/models/operations/DeleteV1ContractorsContractorUuidRehireHeaderXGustoAPIVersion.md: id: ecf3b6007f4a last_write_checksum: sha1:e1c0878533c79abe0bf18f5d6c172a80faf22b9b pristine_git_object: 42cf801a338d505c856015cc8e0526c28a595ac4 docs/models/operations/DeleteV1ContractorsContractorUuidRehireRequest.md: id: b10f5b915de8 - last_write_checksum: sha1:f010d8c4f9293e58f29eab6bd873f86382e39e50 - pristine_git_object: a23be06397a07b007e4b508bf03117173d6a9ad2 + last_write_checksum: sha1:523e52a569da242b0099c1819dc855ed2b710420 + pristine_git_object: 5d967bc218c594d4c8d711e1dff574390e225701 docs/models/operations/DeleteV1ContractorsContractorUuidRehireResponse.md: id: 3cfb7f7ed748 last_write_checksum: sha1:c56c8350ee2f8e4b973f32718d8cc4595a796322 @@ -2976,8 +3328,8 @@ trackedFiles: pristine_git_object: 29e825f0e17906a3121e9e461fb7b4fc5438ae76 docs/models/operations/DeleteV1ContractorsContractorUuidTerminationRequest.md: id: 80b1a809b5a7 - last_write_checksum: sha1:654410417de10082757f28af4781ecb6c171d11d - pristine_git_object: 63ffc2dbafcf4b27905205b44d5bfd141121e62e + last_write_checksum: sha1:377115640b2a5ac5c7b85bf0993ea852e7164a88 + pristine_git_object: 8c9b110d6bfb352ed59a96d59e6d23e300c1ce63 docs/models/operations/DeleteV1ContractorsContractorUuidTerminationResponse.md: id: 226160638aaf last_write_checksum: sha1:6e87bbc129271e303f864bc07b36fd0100177f2b @@ -3030,6 +3382,18 @@ trackedFiles: id: 2dd8d1625f13 last_write_checksum: sha1:7c47ae6566e47b06514706717f822a9353c8c9f8 pristine_git_object: 8342fb0f40822d312a3f517f7870d6916df37e70 + docs/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.md: + id: e0c30f9f9cc7 + last_write_checksum: sha1:d056e281958700398e26754e74d3b73db55fb254 + pristine_git_object: 33448f92a2c4beaec1f214b140fd8f463bdcc052 + docs/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest.md: + id: 90d3b4b03ed2 + last_write_checksum: sha1:2ba324c90e3666d5f583a9165c058757f7fd237d + pristine_git_object: c75ec42f6ee215822e3bb0f8203e9d57707cbb64 + docs/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse.md: + id: 57b99e51a48a + last_write_checksum: sha1:9dd5452adafe28e961da177ed8d636232826e17b + pristine_git_object: eb01e4ce801c1c547549c7eb9cf594e9faa295ab docs/models/operations/DeleteV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion.md: id: 9688b8813591 last_write_checksum: sha1:37558101febe9e39f60f499243f8e1e56f021dc3 @@ -3084,8 +3448,8 @@ trackedFiles: pristine_git_object: 8b443b8b88812037f2f8f268326e22c4950f08b4 docs/models/operations/DeleteV1JobsJobIdRequest.md: id: 5a550369e634 - last_write_checksum: sha1:da9794499da6e0a9ec8b57c118e80af54edab48a - pristine_git_object: 08467b97a4f15a4522261ecbd0902eee04adc0f7 + last_write_checksum: sha1:39fe0cf9d67288a5491e37f702c19f39c3a7f0a2 + pristine_git_object: ae69845c26df09bd6e744480674aac85dab1effe docs/models/operations/DeleteV1JobsJobIdResponse.md: id: 614e61aa2780 last_write_checksum: sha1:b3c5bbdf54917224f4659135d89b69ef20aa801a @@ -3120,8 +3484,8 @@ trackedFiles: pristine_git_object: 49534407405461905eef5596d96d2030701d445e docs/models/operations/DeleteV1WebhookSubscriptionUuidRequest.md: id: d3f9ac164fdf - last_write_checksum: sha1:8b9ef9db6eb779459a7789736c460f0c250caaf8 - pristine_git_object: 1f6589f3c0bc4b92a3657423d74d3e5f56906aa6 + last_write_checksum: sha1:ac77406cfac3a27805f0b15cb7823fbcd837375d + pristine_git_object: 1329055416b1b743b8bb730d61096d8f4de7ac4c docs/models/operations/DeleteV1WebhookSubscriptionUuidResponse.md: id: 909d6928a576 last_write_checksum: sha1:bf707016103169d746fd1cee178b148fea9028fd @@ -3136,8 +3500,8 @@ trackedFiles: pristine_git_object: 8ee6c39dff6446d3285a24095933becbb1b90850 docs/models/operations/DeleteV1WorkAddressesWorkAddressUuidRequest.md: id: bf8280ddebb8 - last_write_checksum: sha1:ea734fd63382917371d946b22876b26a6917da3d - pristine_git_object: 540e7dccaf69665d80e57fcc2ee7d3dc80a5c146 + last_write_checksum: sha1:07c835fe10b2000e0cf6102260583ad9ef252d57 + pristine_git_object: 390a7dff392bf91af7bcceda427132e29aa831fe docs/models/operations/DeleteV1WorkAddressesWorkAddressUuidResponse.md: id: 491b43ae722d last_write_checksum: sha1:7452fbbb183bea20cf025de424b35b07ee01261f @@ -3164,8 +3528,8 @@ trackedFiles: pristine_git_object: d8aa07ecca142e276010fb7eae132e54c0bf9b5d docs/models/operations/EntityType.md: id: 8a8fa61053f4 - last_write_checksum: sha1:20155890524afe7a33a9a28921b8710127b5e613 - pristine_git_object: d6f7020848c877d0dd38c3e4dee976adceb62d25 + last_write_checksum: sha1:35a8154f4a40b6d7b15331a5d03d5e5450cfa188 + pristine_git_object: ade5567bfd712f715efe427cb61e714e4d26c3ea docs/models/operations/ExperienceLevel.md: id: 4076fb44469f last_write_checksum: sha1:5623642e4e5d03e3152b32af2bd1cc885362ed35 @@ -3252,8 +3616,8 @@ trackedFiles: pristine_git_object: 0e1272add5a6b37ed50562554de5a88723fcf4c0 docs/models/operations/GetCompaniesCompanyUuidWireInRequestUuidRequest.md: id: 952d0a7be074 - last_write_checksum: sha1:c019f1ddd35f8e6c2c12da706cafaa809a192281 - pristine_git_object: 49727cf55ca254530176edcbe7136ae1141719b4 + last_write_checksum: sha1:2ae6f44516173c92c3c083b2c8ea1697f0929bc6 + pristine_git_object: 92dad002952cec6798ee09fe34f855f119c0cfca docs/models/operations/GetCompaniesCompanyUuidWireInRequestUuidResponse.md: id: b75910218858 last_write_checksum: sha1:3d6ec06c599c2922d4c2a96bc69152ffad07cd71 @@ -3264,8 +3628,8 @@ trackedFiles: pristine_git_object: 296b34d1cb5b7307fd3ed27367e0b2b24ff4df8d docs/models/operations/GetCompaniesDepartmentsRequest.md: id: 9bfd8d20f253 - last_write_checksum: sha1:79f9b8f4c1628b1c58a23619147eeed3e0c256a4 - pristine_git_object: d3edad26d584c2ca7d7480a99df77ac101c3363b + last_write_checksum: sha1:19143a48d938883a242e2c6a04ef7bc76bc6b9bc + pristine_git_object: 75f56a515e32a444bf798d3acf2b93aa1c8dd866 docs/models/operations/GetCompaniesDepartmentsResponse.md: id: 5a076da15005 last_write_checksum: sha1:90a71aeb005564acf517306dc6a3054a055bf0d7 @@ -3276,8 +3640,8 @@ trackedFiles: pristine_git_object: 049cc962f5818e4c07cc4e1c340ad34d3c9c1dd7 docs/models/operations/GetCompanyNotificationsRequest.md: id: ee6e9c165a35 - last_write_checksum: sha1:537bad789e259ef5f7fa17ef62dc1d0a4f402c7a - pristine_git_object: 5a9e7cbebfcd5eee58998e84930e028c39598337 + last_write_checksum: sha1:18a1ee3e3fcb32ac84e514144ccf6dcb0f773ed4 + pristine_git_object: 0f95439098fea89355c64cb0481e0ad00f033cc6 docs/models/operations/GetCompanyNotificationsResponse.md: id: 3133971fba0c last_write_checksum: sha1:7c1f03fbef40dcb42d13dbc3192178f350721160 @@ -3288,8 +3652,8 @@ trackedFiles: pristine_git_object: 7e783cba0d3444158c5bea2e4229c98cd0a1c028 docs/models/operations/GetDepartmentRequest.md: id: 9d220094095c - last_write_checksum: sha1:14ad08a50829552a7aa36b5143549d9e5da49ed3 - pristine_git_object: 967af39fb2e0a93edf201380d66ffcc4d2cefd48 + last_write_checksum: sha1:5cd5287409611628e98f869418efc2e471597179 + pristine_git_object: c2cb710fceb97d04a8a1815695365645440838cd docs/models/operations/GetDepartmentResponse.md: id: c2054fd8315c last_write_checksum: sha1:41927991f85b8446a592720ce2c20ebe187b235d @@ -3356,8 +3720,8 @@ trackedFiles: pristine_git_object: 3be61ce7364ae5ac61c24a24a0d6c0b305f1e878 docs/models/operations/GetNotificationsNotificationUuidRequest.md: id: 801ae55c9bae - last_write_checksum: sha1:9c46f4e220e6ca7b8f19b46fbd093245031429d8 - pristine_git_object: cc03e18ffc72242cdca742af74f67126bc2e43d8 + last_write_checksum: sha1:4858ec292f2edf8ddd960319ffae526f66e8a579 + pristine_git_object: 51e4b61d1ea08bff3bfd5727a1b6ea883199c524 docs/models/operations/GetNotificationsNotificationUuidResponse.md: id: 4d787ea80190 last_write_checksum: sha1:ec4c3c37a6196cf965ca582c39eb2ed40cec9cd5 @@ -3386,6 +3750,42 @@ trackedFiles: id: 889a0b4abd90 last_write_checksum: sha1:0be831bcbdc3545254de7248610f0ba02da99e78 pristine_git_object: 6dfc672aa3e9ee421ecbd2d5de601897c08adf98 + docs/models/operations/GetReverseWireTransactionsHeaderXGustoAPIVersion.md: + id: fb794000ec85 + last_write_checksum: sha1:850d7bed613647fd2e4af4c876c3440481261470 + pristine_git_object: 3d1068450dc916c1bb36e2d3b6c5b5d893e41504 + docs/models/operations/GetReverseWireTransactionsRequest.md: + id: ccdeec6e01e8 + last_write_checksum: sha1:20891854e5a1428af058d19843a6ab356b20d301 + pristine_git_object: 3bdd174decb8b81db2c76e55b58ccaac5ce62296 + docs/models/operations/GetReverseWireTransactionsResponse.md: + id: 3a0d4f66c984 + last_write_checksum: sha1:878a6a6df08b0d9573d93e3e10fe53a5769e3827 + pristine_git_object: 54edb09579a4711475638b631377bd1e437c8dad + docs/models/operations/GetTaxPaymentHeaderXGustoAPIVersion.md: + id: 83a2323624a8 + last_write_checksum: sha1:9440737946e2c3aa976866a8534c23a30abfc10a + pristine_git_object: df7fba7ee21ad6cf05a3539bbc4755663e7a5035 + docs/models/operations/GetTaxPaymentRequest.md: + id: 498fe3e9f0ef + last_write_checksum: sha1:18bcff9b5595f93630b008942ffd88422ea2aa3e + pristine_git_object: 27124ac9363a54c11743bb9e840f7537d7536aeb + docs/models/operations/GetTaxPaymentResponse.md: + id: 0128dfbc4ae5 + last_write_checksum: sha1:88666ad39eac88106a9453806fc85438dfa96bd5 + pristine_git_object: 5d78fdd78f5aaf1eb1998fced751dfe3ab6ca1f9 + docs/models/operations/GetTaxPaymentsHeaderXGustoAPIVersion.md: + id: 29261b0a5463 + last_write_checksum: sha1:97996c4400ca49ab3e8c33a722e1f636d35d044d + pristine_git_object: 1dc2e137cc13e8078b609d96877a7718e7e5e978 + docs/models/operations/GetTaxPaymentsRequest.md: + id: 9211f174ce0a + last_write_checksum: sha1:4a795cebed11aa6c976378bc708903cc509aed1e + pristine_git_object: ceee8ed55306f0fb258b9622cc7c3d8a8bf7201c + docs/models/operations/GetTaxPaymentsResponse.md: + id: 9e9e580ff785 + last_write_checksum: sha1:7e63630a633d078024a375c6c80900ec49fe5563 + pristine_git_object: 9e06ceeae81c96a25f42957c504c5086f535dac4 docs/models/operations/GetV1BenefitsBenefitIdHeaderXGustoAPIVersion.md: id: f247a64c47af last_write_checksum: sha1:51eb1eb8bd8b53e3ff6f6bdebe771f0150af5e73 @@ -3432,8 +3832,24 @@ trackedFiles: pristine_git_object: 95e2b3895147603941a000329d50bc38a10d68b2 docs/models/operations/GetV1BenefitsResponse.md: id: 257d0090ff83 - last_write_checksum: sha1:35c05b5f2c1b9244df460e9b3ec9f822b5e72f24 - pristine_git_object: 38d1b7a14bc81466ef579f0aaf05c0b0680d9cbe + last_write_checksum: sha1:11567c87b6c02a4b99a4910d26360a16024773d0 + pristine_git_object: c636016d6f7d4006346f6650a575e77da13acd6b + docs/models/operations/GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion.md: + id: ff041859b83d + last_write_checksum: sha1:7e0e0f84fd2b0164513b6c3cdc932ad78c87fb7c + pristine_git_object: 4311ba21ac4d494323c075bf3d7b848f9e5164a1 + docs/models/operations/GetV1BulkReportsRequestUuidRequest.md: + id: ab8e1edc4091 + last_write_checksum: sha1:69005726412d0becbd5607fb8a3d9a58e6b78659 + pristine_git_object: 455e7dd033efee9c28745ac4e46dc67816f096db + docs/models/operations/GetV1BulkReportsRequestUuidResponse.md: + id: 19ba6bb99aaf + last_write_checksum: sha1:038367edf0731b6f4527d2dd6777e0f7364b7a51 + pristine_git_object: 308f4e425a395272618ecd94ef728e346f6a66a8 + docs/models/operations/GetV1BulkReportsRequestUuidSecurity.md: + id: 4a0c01780680 + last_write_checksum: sha1:ed7e2b5d63ac663194bbec432efb8e3835beb2bc + pristine_git_object: ad43655f1131c8347238ca0199cadaca5fa5f550 docs/models/operations/GetV1CompaniesAttachmentHeaderXGustoAPIVersion.md: id: 046b7fdb9d06 last_write_checksum: sha1:bd238f317f45355adcf60b02edb9f51f4e4ddaaa @@ -3520,8 +3936,8 @@ trackedFiles: pristine_git_object: b15ad46b4c8279f28e592039af47b17d81273919 docs/models/operations/GetV1CompaniesCompanyIdContractorPaymentGroupsRequest.md: id: 75b0550b74c1 - last_write_checksum: sha1:bbd88beb414a98c02c23669ae2a2a1c809185be3 - pristine_git_object: c6048a25c46b36b2fe5f4fcefef433b13c2e40b2 + last_write_checksum: sha1:3d3b394edafc8fa036d44c47c16401ed1eed0baf + pristine_git_object: 5393f11c62f1f634c472c672fd415c0ea25d9ec3 docs/models/operations/GetV1CompaniesCompanyIdContractorPaymentGroupsResponse.md: id: 8a810e763279 last_write_checksum: sha1:d61be1e197fe5f6c884cd4f66f72623d2df1a78a @@ -3548,8 +3964,8 @@ trackedFiles: pristine_git_object: e7886be54fdcca3b3392d093a912378c1f91e99f docs/models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest.md: id: 0f4c000da73b - last_write_checksum: sha1:3ba7bf4bd4917eebcca647ae8b16c3a7d3b013fd - pristine_git_object: b2b1058ad5c548da40869a8b6e5c96176749f2e1 + last_write_checksum: sha1:ed706b89d7d551f4cedb1c09c96f7c12563ffe3d + pristine_git_object: b49fbb0fa4cbb93537dfbff31b2d4599342916cf docs/models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsResponse.md: id: e3da32bf63d7 last_write_checksum: sha1:6744dafd956eb6567149e63d194a82ab30ac4b97 @@ -3612,8 +4028,8 @@ trackedFiles: pristine_git_object: 134e1dce333a61db31258ecd73cc105c5d69c3ed docs/models/operations/GetV1CompaniesCompanyIdFederalTaxDetailsRequest.md: id: 3bd78defc737 - last_write_checksum: sha1:49acea9323549bbdf7957d72f1746e734c5a3491 - pristine_git_object: 3d1f819c956df0b4c5f1646b74167a1c1de24cf2 + last_write_checksum: sha1:c3376d6791c1103ecb488126abcb0484d67237da + pristine_git_object: b8135170ede7c4ced4430a11a674faf319ff952d docs/models/operations/GetV1CompaniesCompanyIdFederalTaxDetailsResponse.md: id: 31144abce6ec last_write_checksum: sha1:54f4236686240194ef2738617a3061c78c3459cc @@ -3676,8 +4092,8 @@ trackedFiles: pristine_git_object: 8fd14c50c5c04f1d767a23ad08610f7bcfd2cde5 docs/models/operations/GetV1CompaniesCompanyIdPaySchedulesPreviewRequest.md: id: 30f0114598e4 - last_write_checksum: sha1:54382a3f01189774377eb66c08b4781afadc0bb2 - pristine_git_object: 912c535a031f333a827ea54b5eb1031c3e51424b + last_write_checksum: sha1:2fae53b80aadfe10139f75a312e6e1b9d5197915 + pristine_git_object: cfb82250ac6817d5a27dc5711a53477471ff4873 docs/models/operations/GetV1CompaniesCompanyIdPaySchedulesPreviewResponse.md: id: 1554fe3909c9 last_write_checksum: sha1:17d4c361f1b3a3dbeda348d19ff9e0fa13023166 @@ -3690,10 +4106,14 @@ trackedFiles: id: adee5caaa2ba last_write_checksum: sha1:8574576c917d28fec7624cb13ec15a41c50a3fa6 pristine_git_object: 788494a81f7fb68c7a2963d7e754ce3c452fd10a + docs/models/operations/GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion.md: + id: e39ee821cac9 + last_write_checksum: sha1:b7e202110173722abb4e44794f37a94b0f775897 + pristine_git_object: e410b101a3fa935b73d4531e30d82ea82772d5ee docs/models/operations/GetV1CompaniesCompanyIdPayrollReversalsRequest.md: id: bb087fdd3ff8 - last_write_checksum: sha1:c951e4e466bd96e36f908e0c17b4d6030e46ed80 - pristine_git_object: 29e8e3fb17248e6fb775359600e12ab349246a76 + last_write_checksum: sha1:4c7f6323d62b9e935a73033ffed98bd5fbfccc4c + pristine_git_object: f828b2823a85bfa802445e14b6ba925a55dbc6d7 docs/models/operations/GetV1CompaniesCompanyIdPayrollReversalsResponse.md: id: c186454b7f29 last_write_checksum: sha1:98bfcad8acd7eb93f31a7d4e3472c25ab9d499c7 @@ -3708,8 +4128,8 @@ trackedFiles: pristine_git_object: 49c819dbbc157df277f5bbad80d05afb1fc29610 docs/models/operations/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.md: id: 46107c379f6c - last_write_checksum: sha1:f2b5cb0e28998546d2a118dd55af0e5b579a8bbb - pristine_git_object: e8abe53dba08f1990fb00dea036149d9c99ed72e + last_write_checksum: sha1:afe99067f14ea21d61b0ae4c8115eee85f352a9f + pristine_git_object: ff9d1d05c6373f41054537e8a7a8426da2f306d1 docs/models/operations/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsResponse.md: id: 7ca07686a3ee last_write_checksum: sha1:a2d9949bed72d87d49eefa76bae08ff02da10467 @@ -3724,8 +4144,8 @@ trackedFiles: pristine_git_object: d5ed9071c392efe21e9a36dfd3ad7aa01357a016 docs/models/operations/GetV1CompaniesCompanyIdPayrollsPayrollIdRequest.md: id: e1853df6e4ed - last_write_checksum: sha1:ffaf2f0d7ede3246669e64a8d2bd6498f2d18d20 - pristine_git_object: 3f6e266a20ad9302595d7fcda183fc42bcd15aa5 + last_write_checksum: sha1:c8a67a820884296118a352fc7e97ed2b6129231f + pristine_git_object: 2ddcfd247b21b407a8bef7b656a6a3450af4c0d8 docs/models/operations/GetV1CompaniesCompanyIdPayrollsPayrollIdResponse.md: id: 39087f41d949 last_write_checksum: sha1:2f1dee6fb18ecd19695f3376f476cbc850663754 @@ -3736,8 +4156,8 @@ trackedFiles: pristine_git_object: 93f3d2ad148ea24862929aa7e27209e50e1cbf50 docs/models/operations/GetV1CompaniesCompanyIdPayrollsRequest.md: id: 82e5a165e4cd - last_write_checksum: sha1:f4a6a0f1995cc254c4137301b9a419816bdc4840 - pristine_git_object: f3f722f804baf3b502902a6e7e0153d7c0499f09 + last_write_checksum: sha1:eef12db31edf1d00e265e2b5fa5ef1ecb5372bce + pristine_git_object: d7c533615a47ab87b3f62a7024d6a79da8cb6301 docs/models/operations/GetV1CompaniesCompanyIdPayrollsResponse.md: id: 9919e264e26d last_write_checksum: sha1:7a067abd64be01479b4ac917faa441cfaa421540 @@ -3788,8 +4208,8 @@ trackedFiles: pristine_git_object: 4c867b42b306624a920b48838d35b69b88749a71 docs/models/operations/GetV1CompaniesCompanyUuidSignatoriesRequest.md: id: 99a788e4745d - last_write_checksum: sha1:e59e641f53a05f212253561f0ef56c589394e38a - pristine_git_object: d663e119ca91bd3faec3dd0c784f277a2b30dc8b + last_write_checksum: sha1:5cdafa66d6cb676db978990fc45c6aa629733e95 + pristine_git_object: 0582dd5b433698fa97728c919bb9aec129c1b156 docs/models/operations/GetV1CompaniesCompanyUuidSignatoriesResponse.md: id: 6f324970bfae last_write_checksum: sha1:7c292dffbf17ed17021b5f3e3a3891de28c779e1 @@ -3800,8 +4220,8 @@ trackedFiles: pristine_git_object: 49e6fdd4bf80f95657d2097b61f12fcf2b80f9a1 docs/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsRequest.md: id: 80204602e739 - last_write_checksum: sha1:5dd49ad65fc0704eb7329d415fbe7a03963179bc - pristine_git_object: e045197b316bc52a491429d754995762f55205af + last_write_checksum: sha1:a63fbdaf00cc53ab4d5af8501a35a6d023629415 + pristine_git_object: dc8ac0a768a300b4b2e1629a77c6bf5526fefd07 docs/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsResponse.md: id: 531d7e728e74 last_write_checksum: sha1:263b0337b6f5bd9ef748de426d7076426c098ba0 @@ -3812,8 +4232,8 @@ trackedFiles: pristine_git_object: 2380477adbcb4cbdd313cb79d8ce17157bde25cb docs/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsStateRequest.md: id: 018b9158ccf8 - last_write_checksum: sha1:24cbc873e2b71de0b8a2f1ffc50cc4f5d59e00db - pristine_git_object: 8ab8c17eb37d00e652126957fa8b2a4c382e7249 + last_write_checksum: sha1:592601823e24cb6c3e830345e9c0c77127fd8df5 + pristine_git_object: 30fdff1b12cfc8fe8c0168ac440199ea8ca49121 docs/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsStateResponse.md: id: 8c35f2bd3de2 last_write_checksum: sha1:a9a0e63c8f3d027b54c4b15f4b969be0949f5996 @@ -3872,8 +4292,8 @@ trackedFiles: pristine_git_object: 9a2b4720439666117663762665c928d162bec579 docs/models/operations/GetV1CompaniesRequest.md: id: 6415242b650e - last_write_checksum: sha1:e2c9c6a104c64b8b27d4c0ec89792346a0dca32a - pristine_git_object: 6e2ad32276a44899c2518bb2c19dad6dd596ce38 + last_write_checksum: sha1:973e6a2ec30218ce9c2a3aec5e77c517d29833b1 + pristine_git_object: 67d84a95664de05d76f130bf1caa6b84b5bc36b1 docs/models/operations/GetV1CompaniesResponse.md: id: 3af5aadb9476 last_write_checksum: sha1:363fef63d6b2b38ccb4ca9a2912140caccafa316 @@ -3932,8 +4352,8 @@ trackedFiles: pristine_git_object: b85827ffb334501a4097644575990347143d4f48 docs/models/operations/GetV1CompanyFinishOnboardingRequest.md: id: ddebb45f22a9 - last_write_checksum: sha1:284ffbed5beffc0674fc8d68b6040f91fe2f5073 - pristine_git_object: 387d5e5827ed4a1af453947a65a9b7814581a55e + last_write_checksum: sha1:7a66e1e35b879e8d1ff5515e327ca40f062b9c50 + pristine_git_object: cd74288a130b2a695458ecce26098acb852a15ea docs/models/operations/GetV1CompanyFinishOnboardingResponse.md: id: 3f52377acc70 last_write_checksum: sha1:ee2b4481e01439c5dba861c830ea1cdaf5357a91 @@ -3980,8 +4400,8 @@ trackedFiles: pristine_git_object: 74073af91504614d02cbc99162d152cbfde1f355 docs/models/operations/GetV1CompanyIndustryRequest.md: id: 7f19e772f30d - last_write_checksum: sha1:39169952b430f42c3f18dca11e9fdb2596a70c24 - pristine_git_object: b6a7b04f592d62ab2fca8dcb65287b00f3951a7c + last_write_checksum: sha1:644b8af9f463deafeed7a9a9533f4d38f8a36cea + pristine_git_object: 789bd7642472d7f60a46430061a8569b439bcf72 docs/models/operations/GetV1CompanyIndustryResponse.md: id: 724db0239d57 last_write_checksum: sha1:45d96531329d75de9ff32d1b0efc9c6342a35139 @@ -3992,8 +4412,8 @@ trackedFiles: pristine_git_object: 2545cd3e052865e6e46ec8fca63c1b32a5af0aa3 docs/models/operations/GetV1CompanyOnboardingStatusRequest.md: id: 85feafbfed12 - last_write_checksum: sha1:71b5190a2e7302f895a3dabe2262328a46aa9944 - pristine_git_object: 3292469c35aaf76b948d5edaf781111bc352ef90 + last_write_checksum: sha1:f4f56dd665671cdcf55cd1d31c188ddb137df94d + pristine_git_object: 4b1732f8870b96bcef8fa18f46dde911226bf97c docs/models/operations/GetV1CompanyOnboardingStatusResponse.md: id: d6eb5cb8dc0d last_write_checksum: sha1:ba0004687693db506d5bd47fc1fe99db3f6b8bfa @@ -4100,8 +4520,8 @@ trackedFiles: pristine_git_object: 3785a33c5eabb749e2967d41db03a8c430e8e26f docs/models/operations/GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.md: id: 65524fd5dfcf - last_write_checksum: sha1:23901a013f7e4fa9170b87395889acfbb41bedfd - pristine_git_object: 472134e8aefca0dc9317fee0c24819905a071df6 + last_write_checksum: sha1:dfccbdf6b5fdb4aab984f8fcfde17bc7d4081b83 + pristine_git_object: 468079c7292f65b5bbfee2af3eaced98eec96447 docs/models/operations/GetV1ContractorPaymentGroupsContractorPaymentGroupIdResponse.md: id: 28ceb1cf3821 last_write_checksum: sha1:e9fff99ac6c3c3068311a859d5a58bacd30b8cfc @@ -4112,8 +4532,8 @@ trackedFiles: pristine_git_object: 43bbe1773f592af2d28a93aa7948b49b5f4afb37 docs/models/operations/GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.md: id: cfc94efa23b1 - last_write_checksum: sha1:34053502e7ec7a07fd8c7a12c31809e7700493f1 - pristine_git_object: 5faa3bac3f4a6507f1d7fa4c7bc6b5dcbb920e0e + last_write_checksum: sha1:9e9b6c99a993df3fb331b5df91a9dcc92b3283f0 + pristine_git_object: 8dc42357aabe07a5003725d44f8a9601a2115d72 docs/models/operations/GetV1ContractorPaymentGroupsIdPartnerDisbursementsResponse.md: id: c5d15b11462a last_write_checksum: sha1:870c5afa506a2f70d5905df86c9fc8bec831ed57 @@ -4182,6 +4602,18 @@ trackedFiles: id: a6a7a0e5f9fe last_write_checksum: sha1:09862b2d6c06e9dae17ff352ba52632fe66b330b pristine_git_object: 9c0edf158d0493e45009a64d41f44ce900e794de + docs/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.md: + id: 5ee617705af5 + last_write_checksum: sha1:a5a3711f01e450fc381442e49dab80d783738412 + pristine_git_object: 00f65267a71b7d150a29f0b2e3b92ec3581533ba + docs/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsRequest.md: + id: ede3f62d86ee + last_write_checksum: sha1:73247888317c4deadb9b9b8789426f8021226d47 + pristine_git_object: 93ce3684cde213f8ed5f2141819460256365e393 + docs/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsResponse.md: + id: b194ff25688f + last_write_checksum: sha1:2829d8e5aa3c941f1c873418e88d5a009805ef2f + pristine_git_object: 130dc68ec59248d7fd5df1d6fcd6935477ea9d3b docs/models/operations/GetV1ContractorsContractorUuidOnboardingStatusHeaderXGustoAPIVersion.md: id: 5629f61a0768 last_write_checksum: sha1:8b92850b8e87376e6f18825d64c0de8692984286 @@ -4206,6 +4638,18 @@ trackedFiles: id: 90c201e43f98 last_write_checksum: sha1:d7e5fdc3a06bdbd2e5059e5e55c7222c7fc1074e pristine_git_object: f2047935f35d394ddf88fd0fcc6f2bfbc21755f1 + docs/models/operations/GetV1ContractorsContractorUuidPaymentsHeaderXGustoAPIVersion.md: + id: fa15b1194a0d + last_write_checksum: sha1:c4bb5cd685afa2166503ebb01827088987046269 + pristine_git_object: ac4d2918171a22f3593999d7daa291f64b84e9bf + docs/models/operations/GetV1ContractorsContractorUuidPaymentsRequest.md: + id: 9d59e6796fd3 + last_write_checksum: sha1:0a5bfa638150670cd40a1d7b2686d9b5b78e4eb5 + pristine_git_object: 8aa624653b1b1e99baaec9a3517b2f3ef9f8c2e2 + docs/models/operations/GetV1ContractorsContractorUuidPaymentsResponse.md: + id: 8c70ef3ae3de + last_write_checksum: sha1:b0525a5c6d37569b35d47e9ae5aa3032c79dae2b + pristine_git_object: 2a76072a62ca839737f2f3c064187c9a9f12c750 docs/models/operations/GetV1ContractorsContractorUuidQueryParamInclude.md: id: 0b8a5ba3b801 last_write_checksum: sha1:e192acbb0e75d7b9efbaebdc1aa4206586d7a4e9 @@ -4284,8 +4728,8 @@ trackedFiles: pristine_git_object: 540135cecfa6f50d48480231d04dbb47e92aa394 docs/models/operations/GetV1EmployeesEmployeeIdCustomFieldsRequest.md: id: c81651503583 - last_write_checksum: sha1:334151890b5b9d93ed6c4add239d8c8b3feb47d0 - pristine_git_object: 293792d1631413aa4d9ef4361efd509d2041c47a + last_write_checksum: sha1:8c4dd34a687738b2fe96d4bcc71d7cfdbaf22f68 + pristine_git_object: f5f22f6f1f2b0ecbf20e8da1ecbf89be94a1b0d3 docs/models/operations/GetV1EmployeesEmployeeIdCustomFieldsResponse.md: id: 2b4578aa79d6 last_write_checksum: sha1:f86baf17b677e8eaf3787bb5b7633df33fd540fb @@ -4348,8 +4792,8 @@ trackedFiles: pristine_git_object: 812eb324c931c33ed71149c3fd66ca4072e0bfc1 docs/models/operations/GetV1EmployeesEmployeeIdHomeAddressesRequest.md: id: 0157cd814280 - last_write_checksum: sha1:c1f6816c975e492a01891a561c42269ca142e274 - pristine_git_object: 6aebafe066c6cbd3dad6ef7d9ebff651e236838d + last_write_checksum: sha1:4521cbe7442d95fbd71e14a361eaea9253b8f799 + pristine_git_object: 76ab936a3f5e9869c0c11ad65e3140546cc63f96 docs/models/operations/GetV1EmployeesEmployeeIdHomeAddressesResponse.md: id: c0feb32cfe5a last_write_checksum: sha1:de8392f952ba13b5972fef7a7bd89a72f883fed4 @@ -4400,12 +4844,24 @@ trackedFiles: pristine_git_object: d76ddbb57417fa712c38e99938da4adcbbfd5aa8 docs/models/operations/GetV1EmployeesEmployeeIdJobsRequest.md: id: 4ccb7ce0653f - last_write_checksum: sha1:68977d423f670afcf0193b0c2b50165aedaffa08 - pristine_git_object: cf7a66074f13d11791fc391ed48c008eff5ae4b4 + last_write_checksum: sha1:bc51fcfe17dc0b26650793477fd9112ff531980e + pristine_git_object: 3fc632e2980fa3f9d56068833c294659de53394d docs/models/operations/GetV1EmployeesEmployeeIdJobsResponse.md: id: 986bfdb6fd1c last_write_checksum: sha1:be913e275fbbe58f3228884e3aa6f7b5dfa41eca pristine_git_object: 62aeb35c642b9c828235cc6ea4afe4206dcc866e + docs/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.md: + id: be566dcb4469 + last_write_checksum: sha1:b60f15808179860d903722a095aa5c3bc565ca20 + pristine_git_object: 70b080daa5b612dd577e4b9b5553fb67f256f084 + docs/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest.md: + id: c5e1730042e0 + last_write_checksum: sha1:2a5768505eac78981e810ec3bfd1e9f73693fc34 + pristine_git_object: 1b278bbe8f03ee69fc38b5ac207e8ca1cacb41be + docs/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse.md: + id: 9c962b8ea95f + last_write_checksum: sha1:fd63b97af949caf5e577d8059f5d4af5bf8a4f3c + pristine_git_object: f3813fbd51762818f9bb3738db7129b94612948c docs/models/operations/GetV1EmployeesEmployeeIdOnboardingStatusHeaderXGustoAPIVersion.md: id: 7a275ff6ae99 last_write_checksum: sha1:910d65c2679f356c994e593dbc2cf28835765e86 @@ -4484,8 +4940,8 @@ trackedFiles: pristine_git_object: b847f16b5563dbc62ac30307559d927fe5572ed4 docs/models/operations/GetV1EmployeesEmployeeIdWorkAddressesRequest.md: id: ea939daf6cdd - last_write_checksum: sha1:25d8afcf27cd3bb059dd0477e5561fd60c8165f0 - pristine_git_object: d19a627b609c95eda74703ad49ec1be4ea6524f8 + last_write_checksum: sha1:4c3b83dd2b2db1798b77a76b69d99d780e4f8e67 + pristine_git_object: 50040c09ed9935d8acf594aa2948cb6bc70f36c0 docs/models/operations/GetV1EmployeesEmployeeIdWorkAddressesResponse.md: id: fa514d9e0ddc last_write_checksum: sha1:436894ebb86d8261245556d67d3add1127793c07 @@ -4508,8 +4964,8 @@ trackedFiles: pristine_git_object: 16c51fb50db84bbdde9fed0c64db3cb97930f48e docs/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.md: id: c84fdaf66194 - last_write_checksum: sha1:7cf9f987eb11ebfe6b5f13b61ef59059f4301266 - pristine_git_object: d65f1161d2acd2889bc1c07be64e6f5cd7808e76 + last_write_checksum: sha1:fc84d12d0ec6c02930789210c3fc50483ed63b91 + pristine_git_object: 5126079832a55ca676713e1fd3c4c58770eb7857 docs/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearResponse.md: id: c997434b07b4 last_write_checksum: sha1:4cfc3562a7aa7bae2cf5b39f791f19938397848f @@ -4520,8 +4976,8 @@ trackedFiles: pristine_git_object: 2f2ee32d478af2123a5597efc267530856e14e0b docs/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.md: id: 6fec461c7a29 - last_write_checksum: sha1:13ddf94127332657e90805d68df873312a1deac0 - pristine_git_object: 80afc7e835e21eb7d4d3ae3effb253dbe0b6fab5 + last_write_checksum: sha1:63032732b09bb3d14381452fbdb385dbeafdd259 + pristine_git_object: e9a06200c65cb243ce3a4bc831a21ccbae2e09d5 docs/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesResponse.md: id: 98154fb9b5c9 last_write_checksum: sha1:1284eab5465afb16a4204829c902bbbd0107ca3b @@ -4590,10 +5046,14 @@ trackedFiles: id: 1f1f6ba87132 last_write_checksum: sha1:971fb72535c33d57704da5a6622aad500c80a176 pristine_git_object: ef6a3466d9a0fadbf40e41c612b8d56faf0d24ed + docs/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion.md: + id: c4da4d9984e4 + last_write_checksum: sha1:54b5107615b617934152c05897cc62cdd6c39dac + pristine_git_object: 5ccac51f9a0090153fb057dda535124f7e0d3f1a docs/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest.md: id: 613fd414b5a7 - last_write_checksum: sha1:f513b2c8597aa2933dcdb6a4c4b478bc0754e763 - pristine_git_object: 5f54a4af001f65857a808844921cd4662ab5cd26 + last_write_checksum: sha1:1dfaebe742676623e6185b213c90cad9ebcbbc19 + pristine_git_object: eb0ec75b979911fe0f509a778191db9e1cba1d7e docs/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidResponse.md: id: 3f4898bf1463 last_write_checksum: sha1:7a275e95ac461fd7d8e743996f767ebfadf9ad53 @@ -4604,8 +5064,8 @@ trackedFiles: pristine_git_object: f9c7259ab42e00d7347231534a203a14c0be0009 docs/models/operations/GetV1HomeAddressesHomeAddressUuidRequest.md: id: a588fb324a01 - last_write_checksum: sha1:fb49c506a1134ba759654c764f553c30d768d780 - pristine_git_object: a64d26076329bbe232e761d823f1697078bf53e6 + last_write_checksum: sha1:82857314368f21b4d5d2a3bdc1ed772a7c9209d0 + pristine_git_object: c0c0df377c9a432d09a0a051d1f8ae343363b76b docs/models/operations/GetV1HomeAddressesHomeAddressUuidResponse.md: id: c9252a2ac245 last_write_checksum: sha1:4524ee2005826acd98cca68acc4b8d540da85098 @@ -4636,8 +5096,8 @@ trackedFiles: pristine_git_object: 74a577a8ebf4ad6ba2697ab0556697bc129264b2 docs/models/operations/GetV1JobsJobIdRequest.md: id: bc457dd1c163 - last_write_checksum: sha1:b462e71300da97b17a09d2d7b17b8df0c87dc3f3 - pristine_git_object: 87c2fabaaeac2b469bb28d422a16e52d63b372d5 + last_write_checksum: sha1:b0baa81190ae003251bd5b817ff84f97a74a5b4d + pristine_git_object: 586a46dd88dd1ac4944d2108c0cc803fe8f7b61b docs/models/operations/GetV1JobsJobIdResponse.md: id: 574495194c85 last_write_checksum: sha1:2f324c66561481bd15f5b8bfa0114ebfb51b7897 @@ -4660,8 +5120,8 @@ trackedFiles: pristine_git_object: d7a5881bbf022b2c8ef24bc83a8f267d1a4d178e docs/models/operations/GetV1LocationsLocationUuidMinimumWagesRequest.md: id: 718a87d3c1d5 - last_write_checksum: sha1:cc359d7503916f0e0d7e447974d5d17a2a4a5a92 - pristine_git_object: b5c4959daf60a1582280edcb3a2249c8e5fdd686 + last_write_checksum: sha1:6e7efc92b8ef515249c26c594eb790e4b4a85f1d + pristine_git_object: 395a3c3794c9416b9afb205e52d9ffd009d4bff9 docs/models/operations/GetV1LocationsLocationUuidMinimumWagesResponse.md: id: 7e7e378145d3 last_write_checksum: sha1:dc30b3d7e7f84315677bead0a0583727ecc82765 @@ -4672,8 +5132,8 @@ trackedFiles: pristine_git_object: 5169dee3059ce57582f413065df9f863d7af2521 docs/models/operations/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest.md: id: c6dc994bc139 - last_write_checksum: sha1:8957db3add843e0be385e5efab7cbb413bfeb3ac - pristine_git_object: 465361c16d863800a1d07ff77827f0b205149839 + last_write_checksum: sha1:1fb3b42e5e4b43e348d6e6a5a4527114cf76b897 + pristine_git_object: 7745ffd4af6ca1889d17e68c73a50c492337eba3 docs/models/operations/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessResponse.md: id: 47955a2e8280 last_write_checksum: sha1:6735abdbfb4fba20334f87ec10781cd1955864a6 @@ -4684,8 +5144,8 @@ trackedFiles: pristine_git_object: a6bcd70de3da70509082ae7be51373a79630a95c docs/models/operations/GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest.md: id: ee43b76f812b - last_write_checksum: sha1:90ac2b890bf8838650d93d57b9cc742a2135a66d - pristine_git_object: bf3425db795bc49aa28fc71cc8004ec43868ec22 + last_write_checksum: sha1:471d9a01abc352662696aac013cd151169597f24 + pristine_git_object: 115104e12cf06b2743bd9659b377fcaf8a870933 docs/models/operations/GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceResponse.md: id: 3f179f63f5c1 last_write_checksum: sha1:effbdbc630a32ea4eff728958e48914030474aad @@ -4696,20 +5156,36 @@ trackedFiles: pristine_git_object: 587e707c8ba7a19e496f6d620298fd3130c7c414 docs/models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidRequest.md: id: 6e06e82f2048 - last_write_checksum: sha1:4a96318945cb8c3733b89e7f58e4dd11a8fb2518 - pristine_git_object: 6dbb99dc3179371dcc0aec62551c6fa761cc91b5 + last_write_checksum: sha1:2b22eafc5c78a329c3caf86bf3c03571f963ecc0 + pristine_git_object: 2a52e8262838855e8a57eaf4b7d7edea0c6164bf docs/models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidResponse.md: id: 62ff13fc9167 last_write_checksum: sha1:114113a4ff89bba647b47a1f556470e8641bfe83 pristine_git_object: 832b1b98bcec2df013d782772d5bde2cd0742011 + docs/models/operations/GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion.md: + id: ad4790a65201 + last_write_checksum: sha1:e2b2a85fd863e9aa3d6b9fc3c755daa601bda171 + pristine_git_object: b046045d254736b447218853fee2480a13c3e21e + docs/models/operations/GetV1PayrollBatchesPayrollBatchUuidRequest.md: + id: 8463db0a5cac + last_write_checksum: sha1:07a36708773047af5f402254d5fad6a98716ec8b + pristine_git_object: 9e4304a5f7ae954652cffc9fcc6f38a5a298da72 + docs/models/operations/GetV1PayrollBatchesPayrollBatchUuidResponse.md: + id: 21416aec9c4b + last_write_checksum: sha1:235dd9e01ad1c2d5c7e4dd41251fb5198fdbd330 + pristine_git_object: ada4d02fe9937197b4dcdf3e388475690da1accf + docs/models/operations/GetV1PayrollBatchesPayrollBatchUuidSecurity.md: + id: 337528e29daa + last_write_checksum: sha1:074e7f5ddc006affe73cf9a622d67657eaf70c62 + pristine_git_object: 06c6b17ca1ff615df6f4c6372f33d211a884ac46 docs/models/operations/GetV1PayrollDigestsPayrollDigestUuidHeaderXGustoAPIVersion.md: id: bef6d14bb6a0 last_write_checksum: sha1:7bd41b0b405f27fef5a7c0e5d008a4786d60dee3 pristine_git_object: 5fc1afe14c8d1f029ee868d8bf84bde7ef84eae8 docs/models/operations/GetV1PayrollDigestsPayrollDigestUuidRequest.md: id: c873a93995ff - last_write_checksum: sha1:7c7ca1a1d63ebc095e8404c00a507efcb4248aba - pristine_git_object: 94932ddab94097b2850419575428a638327a5bef + last_write_checksum: sha1:63cb1fd927dcde23fd41e09c9a9613210d646db6 + pristine_git_object: e1a2f32f400524d741e57c30c096edd8bc7c7365 docs/models/operations/GetV1PayrollDigestsPayrollDigestUuidResponse.md: id: 145a9fa7b8ca last_write_checksum: sha1:27a703d5f65f8a8df4bb7c096e3556989c786acd @@ -4736,8 +5212,8 @@ trackedFiles: pristine_git_object: 697820a8b58f76872199415c2d97022a1471d1b8 docs/models/operations/GetV1PeopleBatchesPeopleBatchUuidRequest.md: id: 60f403a9fb05 - last_write_checksum: sha1:c70b2ff33b369c9f81bd5c8dbcecae9dffca9cc7 - pristine_git_object: 8c0c6537d840cdf480a43c79553d54ba4c75d56c + last_write_checksum: sha1:dce6419cb7cb50a3adcc905f88e30d629a5f7800 + pristine_git_object: 300509ccb4f191f84c4941f01efd5f57da41234e docs/models/operations/GetV1PeopleBatchesPeopleBatchUuidResponse.md: id: f2cd611363cb last_write_checksum: sha1:2158b4d17cb331da9c2009e5cfcc032daada4175 @@ -4848,8 +5324,8 @@ trackedFiles: pristine_git_object: 0bfa275360c64bb1424db99574a5a847403a8e7c docs/models/operations/GetV1WebhookSubscriptionUuidRequest.md: id: b69fa09d793a - last_write_checksum: sha1:7ccf04df63c4a2310d1ecdfc0095bfb9a344239d - pristine_git_object: f375788c185f5bb9673ae1e718712db2c20e17ec + last_write_checksum: sha1:afeaba0ee632abc4d3d5a977a316fe52ffdb6f86 + pristine_git_object: bb801890452822ad206cdfcd08a0883127dea785 docs/models/operations/GetV1WebhookSubscriptionUuidResponse.md: id: aa4b74cfea80 last_write_checksum: sha1:678723b2584fb57e3f4b3c435e02b4c28bbd05ba @@ -4864,8 +5340,8 @@ trackedFiles: pristine_git_object: 6318e22bd88135dfdfdf0f5a03931b39cdfe0c9d docs/models/operations/GetV1WebhookSubscriptionVerificationTokenUuidRequest.md: id: dd81b5658304 - last_write_checksum: sha1:3fdae414e3919f3e2187c60a643b70499599799f - pristine_git_object: 8d407e95db64c02e45fa5742fedb3a747f52af62 + last_write_checksum: sha1:2cd56342056b4331c03912ff1f3106202a4e0341 + pristine_git_object: fd4a311e8b4a5e6a5f0a3bfe55e793f828a0e3f0 docs/models/operations/GetV1WebhookSubscriptionVerificationTokenUuidResponse.md: id: cfd1c8a3d41a last_write_checksum: sha1:0f30b2d6fa70d8807f46cdd673498af2440c5b82 @@ -4912,8 +5388,8 @@ trackedFiles: pristine_git_object: 04c12c340509a4f63879b84c82a5c428bc679ef5 docs/models/operations/GetV1WorkAddressesWorkAddressUuidRequest.md: id: 095d69f139bc - last_write_checksum: sha1:24dfa29a86bdefb8249d7c491c99036a0c32ae25 - pristine_git_object: 55cbdc9b086451cbaba3277922b62d553a9f0e5a + last_write_checksum: sha1:3d9ec610e9d15e15807b60d15127b9ca5451e323 + pristine_git_object: 0be33d2ce4359464ba28b7ff3aeec9b1bf513e73 docs/models/operations/GetV1WorkAddressesWorkAddressUuidResponse.md: id: 85a9306a1b87 last_write_checksum: sha1:0789f470fb0e2fd21c61f3a5e90a56fe8a023777 @@ -4936,8 +5412,8 @@ trackedFiles: pristine_git_object: 88eb3122617b8a6f5f5c84bd17add4d5bec731d0 docs/models/operations/GetWireInRequestsWireInRequestUuidRequest.md: id: b89154a3fa0e - last_write_checksum: sha1:42815a5b6bad0b8612ee96b7f835325dea3fd07a - pristine_git_object: 88549dd5cf1f71115fee12e26bc4f08f4881ff90 + last_write_checksum: sha1:764eb6b5aa998a21e6013cb1f864723ba1d0f7e4 + pristine_git_object: 7b5ec66a0dfb7d988433ae74037c032c0f624cce docs/models/operations/GetWireInRequestsWireInRequestUuidResponse.md: id: 190ff496c05d last_write_checksum: sha1:4b55d1ebca49a45988dbd52b32cdd52ce398615e @@ -4976,8 +5452,8 @@ trackedFiles: pristine_git_object: e019802e31233ff14a36924881392289f4f45dd6 docs/models/operations/LeavingFor.md: id: c618c6365ad0 - last_write_checksum: sha1:dd466d858942d4dfe022607c1c108b7355c10e74 - pristine_git_object: 5908bdf4e643635edd0fb9137cd3b014e7d8428c + last_write_checksum: sha1:c23fd3580979151cb86c47c67223d77fe8cf2dd2 + pristine_git_object: fbe747b9425176f52311d1c55407f0119915a16f docs/models/operations/MemorialDay.md: id: d09755b914b3 last_write_checksum: sha1:df85d934c3453b8b54c6c38fd13b634296dd9c0d @@ -5040,8 +5516,8 @@ trackedFiles: pristine_git_object: a5124c3875981d87050dadbfb36debbec0f2058c docs/models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.md: id: eb0b6aae5434 - last_write_checksum: sha1:1066181ef7235abe3f20a298baf2cd690d354c1a - pristine_git_object: 76cdb0c80725b39f9628e73319fbdbd8d25533b7 + last_write_checksum: sha1:f4c202431a1b3a1e7a6355415825ce18b9ea559d + pristine_git_object: 2ce283bded33a2b1ef030cd7f20575396a050e3f docs/models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBody.md: id: ccae975a5ddb last_write_checksum: sha1:450220997d267e283f4b3ca805892bea70b3aa9f @@ -5056,12 +5532,12 @@ trackedFiles: pristine_git_object: 8c5d2b19cba828454b472bef9d6d812c0beaa1b4 docs/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsPaymentMethod.md: id: 041d5a811531 - last_write_checksum: sha1:d20adfccf7ab8ab0272ac07a616f963621f7ce3f - pristine_git_object: 1e7a43f679058c5b8bb4cd3fe3c07a11837188ad + last_write_checksum: sha1:fd3a0a7ad49976575f2a17785b238616aea0a9de + pristine_git_object: 85cbcc9e8cc9d087d8c893de572d8511facaf097 docs/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.md: id: 0a87e49ab660 - last_write_checksum: sha1:b5d2efe002ccc9749fafb3a9090423782c8e7921 - pristine_git_object: 46f310e3bb1cd6ad69b4eb211e466f0890a38c6b + last_write_checksum: sha1:25e8bdda83cbe0aaa17f092b1cda7fcc63d62152 + pristine_git_object: bb75e1de4ffe2523343a66412bccf2adb711e10a docs/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBody.md: id: b2d7123a94c1 last_write_checksum: sha1:a38844ba10e0d5eef70805e1c3a2057258d4f098 @@ -5076,8 +5552,8 @@ trackedFiles: pristine_git_object: 0fe1dfdd8f3744ac67e9ee89734235f1f0f7c031 docs/models/operations/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.md: id: cfa9e00db0ed - last_write_checksum: sha1:ab28e41d2765e669c208bd58a71b83a19ab62832 - pristine_git_object: f93a2192cc40e12f0ddc359fd1e364a31143fb24 + last_write_checksum: sha1:44aa6dd890f78f5f932dd73a8cccd3443bc9e416 + pristine_git_object: 62aba45bc2bb5a3f8b0775aa9dceac756c9847ee docs/models/operations/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearResponse.md: id: 91294fa2115b last_write_checksum: sha1:0029726021b5c71128ac6d9a8c34c1e9223cf707 @@ -5160,8 +5636,8 @@ trackedFiles: pristine_git_object: 89db28569ce8f010da38092690ab2e066e687d13 docs/models/operations/PostDepartmentsRequest.md: id: 860182a3b064 - last_write_checksum: sha1:7c7516442c403bc7d52d2be4314384dc56f543ee - pristine_git_object: a0ac021705d4cce7beadcd7e95c6e20459a83568 + last_write_checksum: sha1:3044d948d43ceaf62e4bd7b6d1284bdda47ea1c6 + pristine_git_object: 52954e667d68c6040304f4f9889b60d59ec02dcd docs/models/operations/PostDepartmentsResponse.md: id: aaf1e1c08996 last_write_checksum: sha1:0963b94872aa9939fc84656a1c02c838b73edc1d @@ -5184,8 +5660,8 @@ trackedFiles: pristine_git_object: 5647ac36bc5047d78b243c6ea50e446a977a1038 docs/models/operations/PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest.md: id: 783fe6e92bf7 - last_write_checksum: sha1:03624968a24030b63073a70fb36a5b94967f10ae - pristine_git_object: 4f2143bdeaeee704e101351b66cfd4266da44a1d + last_write_checksum: sha1:32209fc8c520f234b73246ef44dc005e023e2c33 + pristine_git_object: aa464e21f853f3c06489c84c0cce6bf16b2b8652 docs/models/operations/PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceResponse.md: id: 66a21230b63d last_write_checksum: sha1:7f3568b24d5cc10d0b4b5bdb4d7d98b4012393ff @@ -5196,8 +5672,8 @@ trackedFiles: pristine_git_object: 5eb351ef3b8a136c0738733f943a16a2933b2c4e docs/models/operations/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest.md: id: 0e3bd2025cd6 - last_write_checksum: sha1:fa2f307872fcbb4c4d43223b177ff47f3c29cf91 - pristine_git_object: af85fbf8cacb3f6fe54a0abba4f664717b03cffd + last_write_checksum: sha1:bbe185e8ab2011ad6ca6ce409d95dd44a6ba864b + pristine_git_object: 86c040233e44016c9f5dac4a72ab975ce277f61c docs/models/operations/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceResponse.md: id: bdb1b3bf4585 last_write_checksum: sha1:dafb79c8f4067d59db3d9f19982bd5e11f8215e6 @@ -5226,6 +5702,22 @@ trackedFiles: id: def2ecde26dd last_write_checksum: sha1:1080d498506c065a1a143e76a3d66bfef678b408 pristine_git_object: 3f958930597e58cc3603ae12585760684189e8e5 + docs/models/operations/PostV1BulkReportsHeaderXGustoAPIVersion.md: + id: 240913639bfb + last_write_checksum: sha1:5b290131a0fd28ae3e1a958d84df3af81a3dd289 + pristine_git_object: 4998dc46db708d60e1769af615c811ee7dd9c979 + docs/models/operations/PostV1BulkReportsRequest.md: + id: 5944f0ba4d38 + last_write_checksum: sha1:6818cfa9703770c8b31eee81a74e8f8e8347b8db + pristine_git_object: 9e340b0982fccc10edbd564bc6a72d89aef02dad + docs/models/operations/PostV1BulkReportsResponse.md: + id: df09ed78df51 + last_write_checksum: sha1:925b7e0661e79caaaf4777b9a82ce288e6682273 + pristine_git_object: ff0e1b271a2f1c951bef8f6e3d09169453a8cedf + docs/models/operations/PostV1BulkReportsSecurity.md: + id: 54892097a73a + last_write_checksum: sha1:7ecf355359e1a75fa22beaba37a03d99c5a9f2c5 + pristine_git_object: ae57a7bec8590a0f0bb35d5e4a8bd1526f1245e5 docs/models/operations/PostV1CompaniesAttachmentHeaderXGustoAPIVersion.md: id: 59da96fbaad4 last_write_checksum: sha1:6bd7cfc419bd9110a9a826d49fe986b924ef80b1 @@ -5400,12 +5892,24 @@ trackedFiles: pristine_git_object: 4492298370b72e1481f1895508677506fbf6f957 docs/models/operations/PostV1CompaniesCompanyIdPayrollsRequestBody.md: id: ba010283ab3c - last_write_checksum: sha1:a33901f6b5d4ef024bff7a34277b4f80ff9991c2 - pristine_git_object: e3c08e3dc01ebebbbed6188d051eb50f2a51c91b + last_write_checksum: sha1:52eb2fa5ce847665ae0fc3c098bab979c514c035 + pristine_git_object: 81652486540bfe25ff80e233526d4ed7ffdfcb7b docs/models/operations/PostV1CompaniesCompanyIdPayrollsResponse.md: id: fe7fa931c9b7 last_write_checksum: sha1:83c0498d9cd17c772a3d6e4af2b535ec94d4fa0c pristine_git_object: 215698bb64e042835142bc81509ba966b32c11cd + docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesBatch.md: + id: 23925e688c68 + last_write_checksum: sha1:e98062355c9555f2ba0038648d0a2898c5bcf835 + pristine_git_object: 715af28ada254d95936ed337fa977e150ce556c8 + docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesBatchAction.md: + id: 26148add4c4c + last_write_checksum: sha1:901a814feb9381f37c707734c177ffc370369b8e + pristine_git_object: 138f73568c7f40151ee518de9885379af8468a1e + docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesEntityType.md: + id: c020774b6877 + last_write_checksum: sha1:463cfefeb2c4b769701a86de9094cf242690c1c7 + pristine_git_object: 2c63e8a367343846f5590fd12d378785de11ea71 docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesHeaderXGustoAPIVersion.md: id: 2b0bbc48cdf6 last_write_checksum: sha1:2d7f446cba1084fdf315baebf78a70eb58f6ffd0 @@ -5420,12 +5924,12 @@ trackedFiles: pristine_git_object: 5e857913102acc87994cd537e2828e66abdb6026 docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequest.md: id: 5b1c63c0c0cc - last_write_checksum: sha1:79e8c2eefea91cb41d3cefcf499ae1745d24a231 - pristine_git_object: 8e61170ff2c32a4a6b02c11269ae77db38bd47f8 + last_write_checksum: sha1:d5089935c120affdeeeb305977effbc47a6afe31 + pristine_git_object: 39900e87ae513bdace98416c98fde7b8e2e5c807 docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequestBody.md: id: 71a2fc2d48ee - last_write_checksum: sha1:12b003ce8bbeb5f1a9d077d6fe5361c237586783 - pristine_git_object: 08dc4bd9d48c9e84eab6c3cfeb31566f85eeb3b4 + last_write_checksum: sha1:4d28c76ae0ca4b1b1736009688101d9c9d9b6fdf + pristine_git_object: 934a967138e87d5ab7e9ab4c91125d7c358fdb82 docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesResponse.md: id: 9271271dbbc1 last_write_checksum: sha1:47dfc433a2ed10ecca44d21f3a2623bb056b9122 @@ -5488,8 +5992,8 @@ trackedFiles: pristine_git_object: dd2c65bde3058f3be01673172f499740045491ca docs/models/operations/PostV1CompaniesCompanyUuidSignatoriesInviteRequest.md: id: f3b2383e7446 - last_write_checksum: sha1:a6ca2528e20076e469badb0390f4f2c5d0290c4b - pristine_git_object: 8790dab06e358009ccbafcbf0e827e377621377f + last_write_checksum: sha1:fb4aaef33e5bbebe2ef7372de28b5ef4dff29810 + pristine_git_object: 43d8574c2428c48f862b4e28d421ec67c125eab0 docs/models/operations/PostV1CompaniesCompanyUuidSignatoriesInviteResponse.md: id: f1444bdf53b5 last_write_checksum: sha1:06397041a1836b910b0d221c56c1c79ff39ad982 @@ -5572,8 +6076,8 @@ trackedFiles: pristine_git_object: 911c3057d88453b726214883aab78adb1ae7179c docs/models/operations/PostV1CompanySignatoriesRequest.md: id: 99b80c3073ec - last_write_checksum: sha1:d3d4ce7399a80aa1eb0c12b1bf2a78d48f510bca - pristine_git_object: 9a5dd743ac40ac5ef3c7111d3998ba4fc0913691 + last_write_checksum: sha1:b485e2bc18acb632481de07805922197fd0b5b9e + pristine_git_object: a06b649507f2a29d4da5e12f1c446ec9fc5a09fe docs/models/operations/PostV1CompanySignatoriesResponse.md: id: f0abb6e36894 last_write_checksum: sha1:d81d3292392004758f0bc20d8a99304ec2cc6581 @@ -5602,14 +6106,26 @@ trackedFiles: id: b194333bb6fc last_write_checksum: sha1:f37a4cfc070587157eb947495a407961c238f5a7 pristine_git_object: 819e8a8b4be2d9f869797707d1f8ed096351874f + docs/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.md: + id: be5324664465 + last_write_checksum: sha1:d237c0349b0b0430e0c8b1e9e2aea0ebda131bae + pristine_git_object: 526cd213a4df514d1605376c8a52d18a59a4aa42 + docs/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsRequest.md: + id: 33e93d055df5 + last_write_checksum: sha1:4d819d46cc452f33f508b4254459cc4a7fea0fd9 + pristine_git_object: 966121990053c91c945fec68f48694f13a2f3718 + docs/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsResponse.md: + id: 73c759a35611 + last_write_checksum: sha1:a69df221fa76ffefe5a5c1dbfca38fda6cc02a9e + pristine_git_object: 481a117a09511fa0ac49581566441cfda3dd79e7 docs/models/operations/PostV1ContractorsContractorUuidRehireHeaderXGustoAPIVersion.md: id: 4183a4e0bf08 last_write_checksum: sha1:c049926bb0b281c6e6647d238b13eeeb7fd81dee pristine_git_object: 652329fe248a383757d3e032891d539d32814f2a docs/models/operations/PostV1ContractorsContractorUuidRehireRequest.md: id: 86ac708d314b - last_write_checksum: sha1:f6dbd70cde0aabfa0581aae36b0e484f7282d58d - pristine_git_object: 97ec33c6e2a594233df92ee1f1256fb024da715b + last_write_checksum: sha1:626c4bc845501780a76f4c9bac2d358465881792 + pristine_git_object: 6598bac8cd3524b5155c5cba21daa3068812abb8 docs/models/operations/PostV1ContractorsContractorUuidRehireRequestBody.md: id: e509ee7c46be last_write_checksum: sha1:80e65add58ff75ad5c372fa23fff13e6ec997ce2 @@ -5624,8 +6140,8 @@ trackedFiles: pristine_git_object: 20a50c9c21274982a541cfb3bb137b0dc05c2891 docs/models/operations/PostV1ContractorsContractorUuidTerminationRequest.md: id: b0098e8b13df - last_write_checksum: sha1:f1643ddfe7c4c4b3971dec538963f9e160e4a3f8 - pristine_git_object: 2a911bb23351cd90132c3a76f8ba91a7d192b1e8 + last_write_checksum: sha1:0cfb4a5ceebab82c51568bc16377ef629e3a97f1 + pristine_git_object: deea204260574ffdd81969817c8cfdf17ee6c82a docs/models/operations/PostV1ContractorsContractorUuidTerminationRequestBody.md: id: 64e4d241e7c1 last_write_checksum: sha1:589618ecf99f7295edf7a5527ea1f49e76486b38 @@ -5676,8 +6192,8 @@ trackedFiles: pristine_git_object: fa00305028ef1961a3a62432b16d8d74df74608f docs/models/operations/PostV1EmployeesEmployeeIdHomeAddressesRequest.md: id: 57ddfcc7561a - last_write_checksum: sha1:b94fd46e398143b32b1ea53abc88ab589c135750 - pristine_git_object: 8e8b602784096bef2d5b7bd61587e0d0108c209a + last_write_checksum: sha1:1a97864cf984651fd5c638cba711daa8af7bbf08 + pristine_git_object: ea4752ef34c052766d8d1cb500c4db6eba10d6d3 docs/models/operations/PostV1EmployeesEmployeeIdHomeAddressesRequestBody.md: id: e1bd4fa1e3e5 last_write_checksum: sha1:425ad27e7ed9d3f2304f5fd33b10357c511bbcca @@ -5692,12 +6208,24 @@ trackedFiles: pristine_git_object: d2ce5fda2fcf5717f9324e5ff543d55da8f7e515 docs/models/operations/PostV1EmployeesEmployeeIdJobsRequest.md: id: 3144c05ff3ec - last_write_checksum: sha1:af85eac4ea7fd0bbe77055f5df76e57c80ff533b - pristine_git_object: c66ac8cd1df07ff9ff3e9da652db730f35bec247 + last_write_checksum: sha1:e70b5eb7c3f4b2557e6c1f9f6a7a0816523824b3 + pristine_git_object: 8227a3f151ef0a860f904691187d42bc82f2075a docs/models/operations/PostV1EmployeesEmployeeIdJobsResponse.md: id: d033e6a66b8a - last_write_checksum: sha1:02f6d10e191b1afd165f6aa90db2ac289f0bb68f - pristine_git_object: 4347a1f9cd75371b3a904c442d07dbceffe0ae0e + last_write_checksum: sha1:c0dada7407079f2a34ce6868c12093bbb563a450 + pristine_git_object: 78c50467ba31b9c86a4a5c310145800e2786b2eb + docs/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.md: + id: 32c79bed0f4c + last_write_checksum: sha1:abb7e86345f5a8c182470bebae3243f2b2d2595e + pristine_git_object: 1647b420f38957135c09c982a6c6c7956f9646a1 + docs/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest.md: + id: dfe69490a4d6 + last_write_checksum: sha1:b8f51696ed102c5d3747a7799be794df67a66458 + pristine_git_object: e59810e0f4e1d5386e4d51ca00bc7a4e606e554b + docs/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse.md: + id: 0bfcd7a61c82 + last_write_checksum: sha1:42ed29804ff44943d01b5910bb1b08f2eb67befb + pristine_git_object: ab7f01e3715aacdcec9da2eaea2c727ec8f30d5e docs/models/operations/PostV1EmployeesEmployeeIdRecurringReimbursementsHeaderXGustoAPIVersion.md: id: f45d0ce7022d last_write_checksum: sha1:dbdbbfd36a8dc7256df93320b2e111c8367e1a89 @@ -5764,8 +6292,8 @@ trackedFiles: pristine_git_object: 3e6d26147610ad4dc8d02cd21d0b08fe85302912 docs/models/operations/PostV1EmployeesEmployeeIdWorkAddressesRequest.md: id: 2642f48d6bb3 - last_write_checksum: sha1:25952ea526ca4cc063b10b3ea6fc98b485f983dd - pristine_git_object: c94f3722d5e26b1a25243ca9b5982435c5d165b8 + last_write_checksum: sha1:43677566519db1cc8ea3787951e5215ec293fdaf + pristine_git_object: 39eb4db576e3f090d92fc8e3a6bd7a55f91b2e98 docs/models/operations/PostV1EmployeesEmployeeIdWorkAddressesRequestBody.md: id: 4f9800256295 last_write_checksum: sha1:42277b94c1426f5980a1d9ce0547cd95c709242b @@ -5780,8 +6308,8 @@ trackedFiles: pristine_git_object: b0c76de0a5fd5ee8794c95795245b4301732bd8e docs/models/operations/PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.md: id: edf077bfc210 - last_write_checksum: sha1:c705bdd3c39aa12a2f137b14892d5fc716c12771 - pristine_git_object: b427efdbf0f23ea5da16254886db64b3251402b4 + last_write_checksum: sha1:4f2007e126f82939004faf2645ee7415515a0720 + pristine_git_object: a39f3225dda5eb97845c75c35aef6a728421b8f9 docs/models/operations/PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesResponse.md: id: 6f48cec38118 last_write_checksum: sha1:6ccb96dc481c096c876acfd419249572af855d7c @@ -5832,8 +6360,8 @@ trackedFiles: pristine_git_object: 5c9aa8a590efbd9fe65bb70b76cc0069e61b31d2 docs/models/operations/PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest.md: id: e7be401e5bda - last_write_checksum: sha1:6d190e998830cfd0a1cb249791b935b1994840ee - pristine_git_object: 88c2a4c7b9262f3fb88a60630d7b1b16f8e787a1 + last_write_checksum: sha1:214e13d97b4185619fda9b40da25933062ff5e39 + pristine_git_object: c360f454aa1766d077012fbcf8a10aaf85eb39e5 docs/models/operations/PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceResponse.md: id: 360a5749a0b3 last_write_checksum: sha1:bcb880f47f2a764bcd0ba28615ab9d872d6448c7 @@ -5854,6 +6382,26 @@ trackedFiles: id: 6fa91b563914 last_write_checksum: sha1:fc767ac3a6a2808b2277da4ad4b3c81aeb7765a0 pristine_git_object: 4cd14e4a1ff448b00d37afd3d4347707c49ad948 + docs/models/operations/PostV1PayrollBatchesHeaderXGustoAPIVersion.md: + id: f1961b1c380a + last_write_checksum: sha1:edc7327714fffc95d973f3d53a875bd0211f645d + pristine_git_object: 23e0a2cbec6845f008930a2ae07aec7db3a0db90 + docs/models/operations/PostV1PayrollBatchesRequest.md: + id: 9fdb57f5297c + last_write_checksum: sha1:0e417655b0fabe759dc9201ae04c3e1321431f36 + pristine_git_object: e44ed5f4a895589a770819c3025fb93cd4105549 + docs/models/operations/PostV1PayrollBatchesRequestBody.md: + id: a84b6ce96b36 + last_write_checksum: sha1:c4c00383e7c26dd79d527cabdaa922373543b0b1 + pristine_git_object: 14a2ebbbf7cc69802f284be8750f1a3699599e85 + docs/models/operations/PostV1PayrollBatchesResponse.md: + id: 9f7a422b228a + last_write_checksum: sha1:40f97b50900b3abac60b971566752e9c0520e31d + pristine_git_object: 7a82db52f982d747c1c861e4b2a9aaddbfcf9925 + docs/models/operations/PostV1PayrollBatchesSecurity.md: + id: de9aa374bb99 + last_write_checksum: sha1:fac2bab10284573cee219c6add0690b7577740d4 + pristine_git_object: c89721adbda473b494ab3b7dc8595addd711707b docs/models/operations/PostV1PayrollDigestsBatch.md: id: c71a8d2294e4 last_write_checksum: sha1:ee6ac9de031c4cf34c38b34859d08ad2cf6e592b @@ -6004,8 +6552,8 @@ trackedFiles: pristine_git_object: 96c2a5bfef29d0a2cf1842a9b4bf588c64385e11 docs/models/operations/PutAddPeopleToDepartmentRequest.md: id: 2b9a863c52a7 - last_write_checksum: sha1:634c47b5dab282acf8e4fdd6a1c35424de671ef7 - pristine_git_object: d7876c7e20385150087d6ece0b81ed3d7248fce2 + last_write_checksum: sha1:b778f97ec8217694df28d0bef107a8f5f5a955ca + pristine_git_object: aa61e40bb6dcbf2763bc5d3084117c1ba51a5bed docs/models/operations/PutAddPeopleToDepartmentResponse.md: id: b7d404099b57 last_write_checksum: sha1:099ae4134b67c7891ddd04e2031244dbf7de6e0d @@ -6028,8 +6576,8 @@ trackedFiles: pristine_git_object: acdb5c065f38fe919fb81df6a2b54b12e485f7ef docs/models/operations/PutDepartmentsRequest.md: id: 047a12ea6e5e - last_write_checksum: sha1:4f17796a63ccc30a542d979cb9c070b8ffb8c944 - pristine_git_object: 0e429b407100ea74e9b5b1279a2c47801c6a60cf + last_write_checksum: sha1:119197632c88b8f0fa8de8e29958643692c1dd85 + pristine_git_object: 6a6d7b03750f5f4ce11c1a2c3b10b1df62a3b875 docs/models/operations/PutDepartmentsResponse.md: id: 88bd7859f294 last_write_checksum: sha1:10288af362764465de9aae08790fbc505b83d749 @@ -6040,8 +6588,8 @@ trackedFiles: pristine_git_object: 6ce96656972daeb730c37db334141d1a4247d883 docs/models/operations/PutRemovePeopleFromDepartmentRequest.md: id: 48c532707498 - last_write_checksum: sha1:2eab9f37449b76f967ca0039374e13d0e1fff418 - pristine_git_object: f6db8e85c3f737e3d49220d81f5fb2359ac15a0f + last_write_checksum: sha1:825872ee67b2900f3de2900b2f77912f503aa58c + pristine_git_object: 16ea106aa7ca40e686b7c68d55f32936f7233e3f docs/models/operations/PutRemovePeopleFromDepartmentResponse.md: id: 372bfef4cccd last_write_checksum: sha1:1e9d94702e89fa7dcf009de96ad5dd6ad526cc0f @@ -6080,8 +6628,8 @@ trackedFiles: pristine_git_object: 88610960c16b0701e3f2ac1ae6b0ab49da67f965 docs/models/operations/PutV1CompaniesCompanyIdFederalTaxDetailsRequest.md: id: b5f68ecab8bf - last_write_checksum: sha1:81b7282cacf28be287c9c6bc119b512fada73872 - pristine_git_object: 98aef451c37a2d8b354960d919bee78d98cd6730 + last_write_checksum: sha1:f005c4caf5749562c3e25f183bb1b89c18b51eb7 + pristine_git_object: 621b3bb8dc96c63c25ca119d335a0393ae0d3e23 docs/models/operations/PutV1CompaniesCompanyIdFederalTaxDetailsResponse.md: id: f2ac895b8625 last_write_checksum: sha1:dc9233fc0c2904aa5a58604fa288855ec001216f @@ -6124,8 +6672,8 @@ trackedFiles: pristine_git_object: 6c219fdb1123ecde04cf115658e4a38fc23c0989 docs/models/operations/PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBody.md: id: ebab6168954a - last_write_checksum: sha1:b21f363b9b8fe4c2dc743b936de9aff9475be958 - pristine_git_object: 1193dc0ac2fceb7a4c7fc1dc1fab8b60cc965eef + last_write_checksum: sha1:cebe826bac65176c83a2330fbd4c5f2936b2090f + pristine_git_object: 5f5ba18b3e92449a277bb2776b589ac51678c5ae docs/models/operations/PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareResponse.md: id: 5346d9650ca3 last_write_checksum: sha1:39fb2e43f5f0ebd2dd4e47534d13f207f72a7445 @@ -6212,8 +6760,8 @@ trackedFiles: pristine_git_object: c3a33624e78c7d3903903cd2273dccb2a47b32e5 docs/models/operations/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.md: id: be4f2d3b4736 - last_write_checksum: sha1:78848c5bc56a1f1a315e17f2429bd16a081dea4e - pristine_git_object: 3b1edb2ee6dddb0fd5afa98918353595d30f2996 + last_write_checksum: sha1:676d852fe883847c8a538c3de961bb92d3b976f8 + pristine_git_object: 355dc82edb02261ec0a18e437b8008da5d9add80 docs/models/operations/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidResponse.md: id: f22fc9eda580 last_write_checksum: sha1:7593654de722ba27d78ad0e579f4a4e54d72b68a @@ -6224,8 +6772,8 @@ trackedFiles: pristine_git_object: ffb1954730755cac5375b80e8e891158d0e6093c docs/models/operations/PutV1CompaniesCompanyUuidTaxRequirementsStateRequest.md: id: 68bca344ef9e - last_write_checksum: sha1:e472250b3accbdb523ea6733e8f7b57e0681989d - pristine_git_object: 8e8c65dd6b85589392eb7a6e5c6d2b280f23b72f + last_write_checksum: sha1:5e0c67fb5db45fc26dc57bc4859065eb7a1f754e + pristine_git_object: 59917c760d78e2790951dfe8eeac6aa1ab01c9ce docs/models/operations/PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody.md: id: 19aa8826d69f last_write_checksum: sha1:ffdfe6d0821ec5a0183133817d2cb6a765173f6e @@ -6240,8 +6788,8 @@ trackedFiles: pristine_git_object: d6f12bb2715ca53fdbd8f63dbafeb95447e7f94a docs/models/operations/PutV1CompaniesRequest.md: id: 8796725e157d - last_write_checksum: sha1:6919f370334159e470d08e8d61e4a9864dd852d6 - pristine_git_object: 92dfc34fd05b4cd38a0249f05de369181f3f48df + last_write_checksum: sha1:e1373deab8409297b72722c188508cc6d35c4960 + pristine_git_object: 159c8a9535ea8fca8ed12b1afeac92a3bfba017d docs/models/operations/PutV1CompaniesRequestBody.md: id: 7711e9fd7f78 last_write_checksum: sha1:e296b498a1e2acbf75323733c68bc00bcbd29302 @@ -6308,8 +6856,8 @@ trackedFiles: pristine_git_object: a1cada7fe8146b3867700598131e4a250d24ab11 docs/models/operations/PutV1CompanyIndustryRequest.md: id: 04eebd165cbd - last_write_checksum: sha1:468e314c9d7a458dd469e2ac425b9269125bd9e6 - pristine_git_object: e9f2a20539f9a6fc666d3fe3922fdbbf0d5baeca + last_write_checksum: sha1:eb8502c992b65c733033cfbbf771ea90c5014ac8 + pristine_git_object: 5982a88b7dad99c6038fe62140d1a58a8ec80ba3 docs/models/operations/PutV1CompanyIndustryResponse.md: id: 5ab14ee20311 last_write_checksum: sha1:de7f76f5dbd5ea42056386d38c71299fe2423848 @@ -6360,8 +6908,8 @@ trackedFiles: pristine_git_object: 72194cf47ebdfd50b61f77349004e5790624fae1 docs/models/operations/PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest.md: id: 20932d8ecf0d - last_write_checksum: sha1:5354be3a9842db37d6130c5ac5553dad6064be9d - pristine_git_object: 101d5ceaded848fa2f9917ebb54f48c14fdf9b6d + last_write_checksum: sha1:c700323a74ab72d3a79b6a282f164820643034f0 + pristine_git_object: ff81244f2a9e02cc3b7610b8b8734802c5d81e72 docs/models/operations/PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundResponse.md: id: e4baa219029f last_write_checksum: sha1:0ae316e3a0357cc3fc6f73586677aae1cd9bc4ae @@ -6660,12 +7208,12 @@ trackedFiles: pristine_git_object: 860c6336844bca44c77101eb9146a0f1ddc9ef3e docs/models/operations/PutV1JobsJobIdRequest.md: id: 6ea87f7b4cda - last_write_checksum: sha1:f24a491a291aa2245510bd2a536bea80f3714455 - pristine_git_object: 5693ace76c03b0bb03099996d42d6d09a5ec9079 + last_write_checksum: sha1:84375e27111e748c775baa5b0dedafbae479d8ae + pristine_git_object: e592dadba2d455c248c72b842121b0d7e2f142cd docs/models/operations/PutV1JobsJobIdResponse.md: id: 6225478952be - last_write_checksum: sha1:cf143b12b8c5922ff91224448669f491914fb589 - pristine_git_object: 382e72363ae49e350c21dc27a21c5a09de0f5684 + last_write_checksum: sha1:ca3fbcb6cd8469650f3b7c36da0b255c3cf94cae + pristine_git_object: bb4b0f4e4008f6905526e15c02f34ad17ede77a3 docs/models/operations/PutV1LocationsLocationIdHeaderXGustoAPIVersion.md: id: c4f3095c1323 last_write_checksum: sha1:405cbee7d85e5e95ef707f4ecf07347ec217138b @@ -6682,14 +7230,30 @@ trackedFiles: id: 773f6f2381dc last_write_checksum: sha1:f1ebbd523b3a80a4eacda7d0e70ce0282173b6b1 pristine_git_object: 44c7258e465c3cf176e7bf4de338feeffb5299b4 + docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion.md: + id: 736d24de7ad3 + last_write_checksum: sha1:573c7f282b5cadf49837fcfcf4dbd669e5fd13db + pristine_git_object: ea079e52f7589154339faaf349ec4d9f645862c8 + docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest.md: + id: 7b47e23e4b44 + last_write_checksum: sha1:5d7ca17535188255248b166dd870440526ff16be + pristine_git_object: 45b4b9023eba0d3745cebe07f3720d895cbfba35 + docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse.md: + id: 2d2102067629 + last_write_checksum: sha1:2b5802af12df7fb9130a7534d9b842efa0404694 + pristine_git_object: 1c7129d6e34429e03574c4513d94e4b875f88223 + docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity.md: + id: 55b140d1bfb2 + last_write_checksum: sha1:75fd1437b3fe6b5a201c8109687b71b66d5bad59 + pristine_git_object: d4704fc62a718049e24dc1fd0e21cdd88e5f7b40 docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidMigrateHeaderXGustoAPIVersion.md: id: 37e8218bde18 last_write_checksum: sha1:1441f3e1b4ef955f41706b2ff5e9dd1e837d5fb7 pristine_git_object: 886393e3b7ecd6024152127d166c48d401f45523 docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest.md: id: a3fe2c6ab1fa - last_write_checksum: sha1:6d738ec17f4ee556d9a17312e0194cccf1018f8b - pristine_git_object: 7a3caec0d4f3a51f5fbce23895c04134a0b7b7c7 + last_write_checksum: sha1:21a1ae1d87ab0a2ca63e7a023df2d4a500c1a9b1 + pristine_git_object: b5bf48b8d3f0c67a2cc6dd56b30e5e79da37353e docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidMigrateResponse.md: id: 90d8e80f4a7f last_write_checksum: sha1:39cb27c2848f3610983839dc295342bccf409c0b @@ -6700,8 +7264,8 @@ trackedFiles: pristine_git_object: 5a78339baf26f9b809bd9a5ab9082ea44dc12e4d docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest.md: id: 0a8edbaf5fe0 - last_write_checksum: sha1:d1bf265035f6b1af6909cc080d3371f812709f70 - pristine_git_object: 47d972ee865334308c03f41ec0306649fea8084e + last_write_checksum: sha1:e778d1400bd3e2206d9dc91289ed01a2d47f8c11 + pristine_git_object: 7be5a5ddffde10574aff4eca7f976442e147ca3b docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceResponse.md: id: 23537d29ba48 last_write_checksum: sha1:79cedee4f99a671187ee772d737e61d7d99e5f23 @@ -6912,8 +7476,8 @@ trackedFiles: pristine_git_object: 1fcab852f9fd96bc23e8697b49192f409af76e70 docs/models/operations/PutV1VerifyWebhookSubscriptionUuidRequest.md: id: 0a7078df388f - last_write_checksum: sha1:4e31614d88633569ed2018883c4503c818edf320 - pristine_git_object: 6e933d7e90d3efcc5b07072e48202afd46861d80 + last_write_checksum: sha1:ab68ab23c7a220aea902913d8819de3c8a3504ce + pristine_git_object: 4c3b9b24be7b9ca095a98113523e9b1453da5be4 docs/models/operations/PutV1VerifyWebhookSubscriptionUuidRequestBody.md: id: 951a817c1e3a last_write_checksum: sha1:106ee914e9b16b2b55a4781b01abf3dead6a4159 @@ -6932,8 +7496,8 @@ trackedFiles: pristine_git_object: 272c0d84f5c765d32251e8f9383d748f6f285f44 docs/models/operations/PutV1WebhookSubscriptionUuidRequest.md: id: 758f39661a53 - last_write_checksum: sha1:4a7c01a1e2ff9a39b19d5e9b2da1499891dbff6a - pristine_git_object: b9f66c8ca569de934da8783d8aac32a04871fb46 + last_write_checksum: sha1:6178b1ed0eeb8a676bab517575989c75c0a6dc0d + pristine_git_object: 7ce624932f982ebcf16d3acd3ce8f72b821ec258 docs/models/operations/PutV1WebhookSubscriptionUuidRequestBody.md: id: 1dc43ddeceb1 last_write_checksum: sha1:177a500da25ec8f4d1c1c91d408a26323597b5a8 @@ -6948,16 +7512,16 @@ trackedFiles: pristine_git_object: 4d8d8da8ad725b7d31738ce440147d214cabc181 docs/models/operations/PutV1WebhookSubscriptionUuidSubscriptionTypes.md: id: e9d54b239864 - last_write_checksum: sha1:11669cbbffa43327be8ea3cd19c2c512bab830a2 - pristine_git_object: 7bb2bf736161d3fca0ae5ea78e7b3ee94ee57ce9 + last_write_checksum: sha1:19e707102b89c96491a8af4984abd5087a126fd0 + pristine_git_object: 886d94e6973a908a94ac358696211c679e642a02 docs/models/operations/PutV1WorkAddressesWorkAddressUuidHeaderXGustoAPIVersion.md: id: 3df3bcb6dee7 last_write_checksum: sha1:5b84820d7f444724788b7fd0ef89e44c396be4e2 pristine_git_object: 8af9a1d4134996df708fd258cd0636d25a38d193 docs/models/operations/PutV1WorkAddressesWorkAddressUuidRequest.md: id: b014f5af1b21 - last_write_checksum: sha1:69d1322e559d75fa3ede60cc9c0ca035407142db - pristine_git_object: 7a7d25b3197b88c7c4a7dcd74e0dc0f4440206ab + last_write_checksum: sha1:152bb4974ac37584589c849c8fedfc29fd5e85c1 + pristine_git_object: 9a0ff43310d711dcb4e1296b1891d1f64b2b45d3 docs/models/operations/PutV1WorkAddressesWorkAddressUuidRequestBody.md: id: ed8eb9dae3dd last_write_checksum: sha1:1d4aa78eb7bc6e338c7c2939441c9967301ab0c9 @@ -6972,8 +7536,8 @@ trackedFiles: pristine_git_object: 152f2ce237b11e8b24a71ba6abc852eddbefea88 docs/models/operations/PutWireInRequestsWireInRequestUuidRequest.md: id: 508c4f66a20d - last_write_checksum: sha1:c043aa9bcf507047d4e3e62d0634ca0e88a3f033 - pristine_git_object: 35548bea31ddd7c08c4d25fa663ff2015a64ce9c + last_write_checksum: sha1:3fe167bebd257b3a0164ad8295c7e44fb2ba2423 + pristine_git_object: 13faf2ee8c70a48aa82cc3625e0328ea1f758306 docs/models/operations/PutWireInRequestsWireInRequestUuidResponse.md: id: 42d7e1705bac last_write_checksum: sha1:894bf21457c0c75427cf4829ea3926f0f472fa81 @@ -7060,8 +7624,8 @@ trackedFiles: pristine_git_object: d609733ca94981ecd583cf04ea5bdb28986ea922 docs/models/operations/SubscriptionTypes.md: id: f7fa74935662 - last_write_checksum: sha1:6b9bfff30d83677ff3ae17d8d9237a8195779c7d - pristine_git_object: 2abd69507740f72764fa7394e2ba0d487a65b1c2 + last_write_checksum: sha1:39898ca085f1d81733866739ebe8d1055dff993f + pristine_git_object: 42e8eccaa35c2ef5a327f23e555656811e7beb65 docs/models/operations/SystemAccessTokenRequest.md: id: 11a6e4bf3a9a last_write_checksum: sha1:49ea0cd266f24538f6d73c7fa667f723d1741804 @@ -7108,8 +7672,8 @@ trackedFiles: pristine_git_object: 5be4e8c909d023a1297f6eb6fed18b20770409a7 docs/sdks/companies/README.md: id: 67e8a49afa67 - last_write_checksum: sha1:c4ada36c212dcafd5cf2f4debe2d08d947f87fad - pristine_git_object: 5884b5dcafcffdd91235c14c965f0c7e75b75521 + last_write_checksum: sha1:c9ad4afa44b47529fcb847bc7e302c6eae683927 + pristine_git_object: 1627a8a19a197d6ff78ee69d6f0ca0d1c31a40d6 docs/sdks/companyattachment/README.md: id: 49c4e919caa2 last_write_checksum: sha1:e32bd29c453500f2abc18b8e72ceb3fd055548fe @@ -7120,8 +7684,8 @@ trackedFiles: pristine_git_object: f6b84bb0a21540c32c4c7d885ccb5ab37a98133e docs/sdks/companybenefits/README.md: id: 68640bb09ef2 - last_write_checksum: sha1:8bda7f219bbd13cd49dcce33f8607513bed05557 - pristine_git_object: 9b0a3ccc4a0cbe5bd822fa47d867ece09b53fe64 + last_write_checksum: sha1:eb9eba0abb8b902ed8b7577805557c7344ce33b8 + pristine_git_object: d3d557834fad89288bdaf05bf21ea1dddd083c46 docs/sdks/companyforms/README.md: id: 950fa696807e last_write_checksum: sha1:1a04422a0a8d8496d1e1c15e510199f82591101b @@ -7136,8 +7700,8 @@ trackedFiles: pristine_git_object: a8abb216c52f4ece72e03b25ef88dc0961264b1a docs/sdks/contractorpaymentgroups/README.md: id: 827b7ed15692 - last_write_checksum: sha1:ca9cddaccc3508c20f1f4a3f2fb78b89d201bc23 - pristine_git_object: 9f56f0ae9c794ad4f970b472f1354c904b009836 + last_write_checksum: sha1:3ca9b693b15c5ca3592043e863134fcf37e1098a + pristine_git_object: df7b5a8aa45f974d8eb2b21b88a4e1d07cc01af1 docs/sdks/contractorpaymentmethod/README.md: id: 6d90189ab4bc last_write_checksum: sha1:0fe92e07af2e7c0afc16651f6166d23a4c0e15a5 @@ -7148,28 +7712,28 @@ trackedFiles: pristine_git_object: 2f8c630193bcd7085ad6736356463c09beef6d74 docs/sdks/contractorpayments/README.md: id: 2636bdbff20f - last_write_checksum: sha1:e5408ed0b2ec923b9f888f1b9696bd9d17503490 - pristine_git_object: c00375ec2431bbd44baafb0497e99bca807ffb26 + last_write_checksum: sha1:09f8109ac5ce5936a78febc0f5dd7e826000c756 + pristine_git_object: 10a156bcb9414d8bf580253d34e73646c0bc8e9e docs/sdks/contractors/README.md: id: e5de017cf9e6 - last_write_checksum: sha1:d1e36e2fa064720300cc76243de80d2c9ebacfc1 - pristine_git_object: c948485af916c02b69fa787cc547980383a9b382 + last_write_checksum: sha1:15d0f128f6b4c840018a0c0444e5f24ffd4be5ee + pristine_git_object: 7ee3880daa6fac1713025110a13625b034989fa3 docs/sdks/departments/README.md: id: 12342c54f2cb - last_write_checksum: sha1:83fb00d0ad842c5fdeb0ac3ce2e54cc4ea98efdf - pristine_git_object: b3a252a251af7a0f5203726fd2db0e14dd14a598 + last_write_checksum: sha1:b347f118f4add977be83d01baede4ea6724d3ce5 + pristine_git_object: 1725820c29637d29bbd9c2a8fc1fb00e4c2ed349 docs/sdks/earningtypes/README.md: id: 8fdb58368538 last_write_checksum: sha1:2aa82cdedb9c1131902751f1b865761daa3455b4 pristine_git_object: cbf5abfef90b778f31f55017a208deed8dbfa68b docs/sdks/employeeaddresses/README.md: id: 9dcdcfde936a - last_write_checksum: sha1:67156bf7a5bf71646ce730687bb270b3698c817d - pristine_git_object: 293ecbb3966608b92a5ba6a0c005d3ead3071004 + last_write_checksum: sha1:d2a23e1594124c12fc054bc625da9c89486ff234 + pristine_git_object: 33c436b8f15831c595efbb49fd6cf98cf9aac90e docs/sdks/employeebenefits/README.md: id: d8dae69d12b6 - last_write_checksum: sha1:e472a724e19c3209c05066aab9c5577b3b51be8d - pristine_git_object: dedc242d096ca5517e9571acd038247a6692cb66 + last_write_checksum: sha1:6a1ff43a242be4a9ed1d63c5f0f2123113d06f54 + pristine_git_object: 11ceeaa8c34eda2dc5178ee38a1fb272b6b7f2a8 docs/sdks/employeeemployments/README.md: id: a5c0a62c8948 last_write_checksum: sha1:63a1550116e66970c89ce338a423eefba95568a5 @@ -7188,8 +7752,8 @@ trackedFiles: pristine_git_object: afe0af65852f10ad1d9e9501c85e3cb041847c79 docs/sdks/employees/README.md: id: 3adbd327ce9d - last_write_checksum: sha1:917f60c24216249714302edd8640c7d77e373792 - pristine_git_object: e76d6bc133a916d9a1bd9bcab18839af4a27ddce + last_write_checksum: sha1:675191f6de871aa1e893ed9f1aac71bf03a15a04 + pristine_git_object: 5d58de1e42a783f57d67852a23ceeced148a914e docs/sdks/employeetaxsetup/README.md: id: 65804e377e2e last_write_checksum: sha1:eb75728cd974b66e97bd0b95b876d3257b1b7702 @@ -7204,8 +7768,8 @@ trackedFiles: pristine_git_object: dfc3e0c1139ebfd7cfc8d54704034bd85eae30dc docs/sdks/federaltaxdetails/README.md: id: d3272089b17e - last_write_checksum: sha1:002137c9335efbd5c7cf9a0e31c6812f61541f4d - pristine_git_object: f040f60e6e60eca3ec468f17fc946843ecf6e466 + last_write_checksum: sha1:8deaba7de3a8149c5881f587b814ddd68d57e15d + pristine_git_object: 1dced458e51aba89a3664835353b081014367a69 docs/sdks/flows/README.md: id: 1e486772e924 last_write_checksum: sha1:8b95317e3805444f94d999d57b03e15a691ea9ca @@ -7216,8 +7780,8 @@ trackedFiles: pristine_git_object: 32812c2d0fd36c73d44ee2878d80965e748db77d docs/sdks/generateddocuments/README.md: id: 5072871eb0eb - last_write_checksum: sha1:a216b282ecadde55e029c3b9147a4578c5249ab5 - pristine_git_object: 87b483ac03a595c100de23fd8ca7088aa2facb9d + last_write_checksum: sha1:582491eb92772aeb4cbcefd271969027c8395964 + pristine_git_object: 035952a49d14cee870ecd32b33d50acb34818565 docs/sdks/historicalemployees/README.md: id: 38adbb7622ee last_write_checksum: sha1:a8cf1cc940c1352a4372754dd6ce7cc3c9252b26 @@ -7232,8 +7796,8 @@ trackedFiles: pristine_git_object: 404c78e2f984e9143c286a0f64add4ad08b9b0af docs/sdks/industryselection/README.md: id: 6633a8a37ae7 - last_write_checksum: sha1:7e7b031537b03500dd30c1bf78340490ab31b1b1 - pristine_git_object: 4041d9b41151d5c4ce9dfb13cf970f967fa8ef66 + last_write_checksum: sha1:28d85fd58cd260bdcaaeb405603e96eadf8890a1 + pristine_git_object: f629409f35eadd1e140e66de7bb4459d3a127675 docs/sdks/informationrequests/README.md: id: e176ae9536c5 last_write_checksum: sha1:d7f34b32e3b387e17055cfdc1ede43d0e24bb572 @@ -7248,36 +7812,44 @@ trackedFiles: pristine_git_object: 750f6556d55839929f4f809680f5bf5b1982165c docs/sdks/jobsandcompensations/README.md: id: f262ef7b4c37 - last_write_checksum: sha1:087f440a611dbb92c863f205a94015c2d840437d - pristine_git_object: 6b1709e05e9771cebd5c701e008953268b371591 + last_write_checksum: sha1:3f0e96c9ccf01b3d6c0230cd03bc250758736f81 + pristine_git_object: 446afd2df1716a703de1141d7b38ea1148cdd81b docs/sdks/locations/README.md: id: 18f4bc68d8e9 - last_write_checksum: sha1:b28dff18d191cf200f67db540e8195e2d98509dc - pristine_git_object: c888799cd0024323971d40eea6eb444e2e985673 + last_write_checksum: sha1:58a5f68a6060747b22a15283008ccf1e607ef03d + pristine_git_object: 0617ef45f90a5130b9cf7a64d271f5bc86a5cebd + docs/sdks/memberportalinvitations/README.md: + id: 633e8eb21d54 + last_write_checksum: sha1:514cd147988aa490401bfd5ba3f76be289ca6f9f + pristine_git_object: 86f8805344bf271685ea7364332749ea80c3c8c5 docs/sdks/notifications/README.md: id: 271bac956045 - last_write_checksum: sha1:8c5a4a11742b0d556c2d4c7fb090ac90c8aec6bb - pristine_git_object: 201be4255b59c1fb8306f889b593f28a3f8ed486 + last_write_checksum: sha1:a3bfd622c20afc96cfccc95cc4fe4fa4cad98bad + pristine_git_object: e132f29a065fafc5621db802f546c46583e57d87 docs/sdks/paymentconfigs/README.md: id: a5944d10a31f last_write_checksum: sha1:ac60489e2dfedb7f8c9f962056172c4c2900db36 pristine_git_object: 92a9d0ac279e2892f79224982399931a6ff37b7d + docs/sdks/payrollcancellations/README.md: + id: 7eaeae3e2673 + last_write_checksum: sha1:96914726f5696cd26a5af7d96ef46a4020dcc784 + pristine_git_object: 390197b1beeb333b3d114f14ff20afccbadfbbd8 docs/sdks/payrolldigests/README.md: id: 0f533581818e - last_write_checksum: sha1:efc9ebc0fb2e783244dad36c3f8e86aec99c350b - pristine_git_object: ab1ea67c398a28b984708db48f437dbc1ba0854b + last_write_checksum: sha1:660f2f72915b7a2eda4403c8f5c88cef046a8a2f + pristine_git_object: b6c3fe999f6308c6c6f64c777e84c06dd9b6d61b docs/sdks/payrolls/README.md: id: f6fb115a2746 - last_write_checksum: sha1:0f2dd3fa8a8237ba0dea678b1b19ade045b8075c - pristine_git_object: 01f7b438b46cfc41094c841da0372e465a428a3e + last_write_checksum: sha1:5e5622e61fbc73abf791baa00d56d0360fa1a539 + pristine_git_object: a2c0cc5411675f6b7cb488e67cb6f9c85669cff8 docs/sdks/payschedules/README.md: id: c0aa724eca5e last_write_checksum: sha1:2ef35bb7be8822a490bd84e93626a90ccc195819 pristine_git_object: 3edb892a8121459ce1da402a134a91c8e793bd1f docs/sdks/peoplebatches/README.md: id: 9ac77915c062 - last_write_checksum: sha1:acfcae2d02c8851ef0c34cd5684ef16f7ae7b00e - pristine_git_object: 742bf78523cf38adbe756ea1b85a92e21758bf76 + last_write_checksum: sha1:eec26a117eb4a4551cb41b79c46e9b3b4875c753 + pristine_git_object: 6f85a925607c55ff41469936855cd03a975f1aaf docs/sdks/recoverycases/README.md: id: 31e46e1efeef last_write_checksum: sha1:31cae3d6bb1bf933122dfea7645ec6e0baafa801 @@ -7288,24 +7860,32 @@ trackedFiles: pristine_git_object: e86aebadb8bc63934d497391dd41c6d2886643dc docs/sdks/reports/README.md: id: 66bfd66f1efc - last_write_checksum: sha1:cf3e67024e8eb7064a31485dd99ac17910d4ab48 - pristine_git_object: 1fef3ab0d398c6be1fc58435ef51d6795e1410cc + last_write_checksum: sha1:69e0d62de942fdfda912c531dd87a2ac6ef5bd53 + pristine_git_object: ba901a25dc4efe723a46110c0563804c55376a10 + docs/sdks/reversewiretransactions/README.md: + id: f7259ae5df40 + last_write_checksum: sha1:81cc600157b5fbeb74c4ff05bd772c62fdb83beb + pristine_git_object: 48473814b7b02cf9316459e1e121ea0a4ccb3408 docs/sdks/salaryestimates/README.md: id: 6793d2b9fcf5 last_write_checksum: sha1:6c3b878373e312fa8168bc1d3ca0cb3f331c928d pristine_git_object: 6e8daf7c993d0bbbfa8f0e79de2d13376fb39576 docs/sdks/signatories/README.md: id: 70a385fb9412 - last_write_checksum: sha1:756d4f3107500d5ca38dc1411b92db54766adcaa - pristine_git_object: 45f4a78ef9fa3253d9bd48b637ac2460d97a6bc8 + last_write_checksum: sha1:60d3959b323ffcdaea7ca40523dc4a661d737d49 + pristine_git_object: ea03e95486be287103267d3ad8414c7bfc023a1d docs/sdks/suspensions/README.md: id: f304a2d5ba91 last_write_checksum: sha1:ede7817610e5909e4cfaae5b61647dbf59585f22 pristine_git_object: 372d024282d9db7e5fd46204355adf25c04a0655 + docs/sdks/taxpayments/README.md: + id: 973352999eca + last_write_checksum: sha1:efa4dae5e3823b984dcab583dcde21bd0f9f59d0 + pristine_git_object: 77b92d68b80fe22ed1db3a081913aecef91c99f3 docs/sdks/taxrequirements/README.md: id: f686b8175c1a - last_write_checksum: sha1:1ce184a5bd7fea5538611bd17b0e61cddd5d7535 - pristine_git_object: 9efc49440af82209f88c60aee21131c31eb4563f + last_write_checksum: sha1:e55481ee5e22c7b46f4bde91e44e6be50097f3d0 + pristine_git_object: 86fe3bba33124e000ebb5d95547e0f4a35057170 docs/sdks/timeoffpolicies/README.md: id: 8b8852bbde37 last_write_checksum: sha1:97643707466ec17768f3f7b325cc752de04a0835 @@ -7316,20 +7896,20 @@ trackedFiles: pristine_git_object: 660085956116c7de6bde3097f7e969b6a05c1237 docs/sdks/webhooks/README.md: id: e21b32d786a4 - last_write_checksum: sha1:93f883639e733cd06d2977eacaccf277f3926d22 - pristine_git_object: 1955565c09c958a56b4270c5ef0a94b36d7b3dc7 + last_write_checksum: sha1:99534d322195e496203878a4b5f6be883cd9ea4c + pristine_git_object: 50000d92bcf67294dc304369c4b67f168628dbf2 docs/sdks/wireinrequests/README.md: id: fb21b6718da2 - last_write_checksum: sha1:ca410e939b66a45b7884ee30729eccab60a57207 - pristine_git_object: 6b44f1f4041ea357cfb9d9ba53823b46e411d081 + last_write_checksum: sha1:3b710e9e189d2fa4b7ed9d3d5b0c2f166dd80cfd + pristine_git_object: fab59e9d32f82921e36bd2ee398a65045639ad97 docs/utils/Blob.md: id: 3d9a7c4ad67a last_write_checksum: sha1:106edc06718f66490dcf364160c2c992bcbb5ba4 pristine_git_object: b4f98e16ddbaa9e8e7b71b740a3907b4c79ae188 gradle.properties: id: 2afbb999f001 - last_write_checksum: sha1:20fef53cb2b14c2517d7a30b8b3dcd41a8f9de4b - pristine_git_object: 24acf5deafbac3868d027c1f1a08ade0228f8b45 + last_write_checksum: sha1:f12f07c624a98e22449646a1c5ca0ec2600ee4a0 + pristine_git_object: f7f9d73660acd9cfa12a600228b222acc1757f9d gradle/wrapper/gradle-wrapper.jar: id: ec27dae6e852 last_write_checksum: sha1:f725fb1467084142d74fd7cd8eab691ab3442611 @@ -7352,36 +7932,8 @@ trackedFiles: pristine_git_object: 47f489c8a4744ab4f795e7aa28bb8ad0b0f865d3 settings.gradle: id: 05efc8b16577 - last_write_checksum: sha1:b6694294e108cd46bf53b1b107a7285cf269f734 - pristine_git_object: 9362b0593441eb7e395a244c3440a90942354428 - spring/GustoEmbedded-spring-boot-autoconfigure/build.gradle: - id: 76ca39958f8a - last_write_checksum: sha1:799f092cd17f3623e82f882c4ec6f3e7b9a2e993 - pristine_git_object: e5032894762089308ac30bd2414c6690d5121b7e - ? spring/GustoEmbedded-spring-boot-autoconfigure/src/main/java/com/gusto/embedded_api_v_2026_06_15/ConditionalOnPropertyPrefix.java - : id: 71ee5350a4b7 - last_write_checksum: sha1:41152970d1731d0415ba9ef098b99147e80647b4 - pristine_git_object: 73d7af1d6cac1d76c7b1236e7803bf430c6a6c16 - spring/GustoEmbedded-spring-boot-autoconfigure/src/main/java/com/gusto/embedded_api_v_2026_06_15/GustoEmbeddedAutoConfig.java: - id: 128d542822eb - last_write_checksum: sha1:e9a6c79e5eab77281c66aecd97dd8499fe0220b1 - pristine_git_object: 4d01ac00f005eeff654d6dd8e3daa1ddb7077cae - ? spring/GustoEmbedded-spring-boot-autoconfigure/src/main/java/com/gusto/embedded_api_v_2026_06_15/GustoEmbeddedAutoConfigProperties.java - : id: d97249d30825 - last_write_checksum: sha1:03715d83fc024fd47c2053e3c15e96f874a02088 - pristine_git_object: e3d411355c9598236141ba0951d1e2ef44662f6f - spring/GustoEmbedded-spring-boot-autoconfigure/src/main/java/com/gusto/embedded_api_v_2026_06_15/OnPropertyPrefixCondition.java: - id: 7635cbfc2268 - last_write_checksum: sha1:d176ecfd6a995f92509deec5185fb6bfd0dcd18f - pristine_git_object: bda7bfee7e0269df7acdddce7776ebb64e1b818c - ? spring/GustoEmbedded-spring-boot-autoconfigure/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports - : id: 496839c32c94 - last_write_checksum: sha1:6f9895c65e3dd2ac0dd561473721aa669e1dd957 - pristine_git_object: 97e6b1a92fcf96a338444c95f85f7d95fe6e7c45 - spring/GustoEmbedded-spring-boot-starter/build.gradle: - id: 9a7dfcb4d70f - last_write_checksum: sha1:de3eb2e85d672b39be14d7c80886f985fe27bd1f - pristine_git_object: 2111bc5aa6da87c1e20da23cb980efaef7fae3be + last_write_checksum: sha1:2f838e8bf1b604a51492d9e16f70df055cf22c78 + pristine_git_object: 02d3671b1cb25e791435ee6fba474b88e4d9ee9e src/main/java/com/gusto/embedded_api_v_2026_06_15/AchTransactions.java: id: 31436afbc151 last_write_checksum: sha1:41c4211d47f658897f6b17f54f1131f71ce795e0 @@ -7396,8 +7948,8 @@ trackedFiles: pristine_git_object: 865e7b2d91a77b9b10c788994f4b2a4e05592a21 src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncCompanies.java: id: a664421272e2 - last_write_checksum: sha1:be1a844fe302ab73028b93eefd5ae2fcd4133b37 - pristine_git_object: 367302752eb741865b5b4af74da57bb9dc359b62 + last_write_checksum: sha1:8ee817fc51afc52b6f8672adbc766478a78fcd25 + pristine_git_object: 4de783ed09b73a76b23de1414dc15214c077b9b0 src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncCompanyAttachment.java: id: f182681170e5 last_write_checksum: sha1:f4f06704e796748aba52f47b6e5ab3d9c7c256c2 @@ -7424,8 +7976,8 @@ trackedFiles: pristine_git_object: 46b886c747ab3dc1d9aeaaecee5a5fcb69444a97 src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncContractorPaymentGroups.java: id: bd30353ef182 - last_write_checksum: sha1:cc48cc38e6d9a3be9538b31be4c573002920bc9b - pristine_git_object: f1759a28f09f5d2a8456c7c01bb99e01cc25158d + last_write_checksum: sha1:b0484912c0f11407f154f00272e96c3684bb8ed4 + pristine_git_object: 5aa34b838ce7ab5150673564631ff5cb222f2c20 src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncContractorPaymentMethod.java: id: b991c23682d2 last_write_checksum: sha1:e5a72f91ac17e9515408e2f5240d6bdaee4a9e7f @@ -7436,28 +7988,28 @@ trackedFiles: pristine_git_object: 6c4d382c85ef521a1d8f95eee38523baa11f907f src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncContractorPayments.java: id: 11b9c5529fa6 - last_write_checksum: sha1:a248cb7cf778c49455e93ffa2f662e124cb76178 - pristine_git_object: f196c32b17a97db2822a6e13bbfbb67f83fb0202 + last_write_checksum: sha1:dc2ad46127c3cf43cfd0f865d0660d0ac4803b3b + pristine_git_object: 9df740a874963012205785e1e6134c3c2689da94 src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncContractors.java: id: fba47f9f1525 - last_write_checksum: sha1:009630af561cd6fc8843bf367fdab2f6afab77c6 - pristine_git_object: 616796f5abbb4338123d81f382e1fd44a0d79336 + last_write_checksum: sha1:f7ca2302e8ba54c78c9929b0dcb7aac54e895420 + pristine_git_object: 18c3d0ca58959ac8848531de79535875e810bf2b src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncDepartments.java: id: 44434f4a463c - last_write_checksum: sha1:83764eedc2878325d35eecef085e16b8002736a3 - pristine_git_object: a6529b7ef23d85eee8b11632bc2fd710ae908eec + last_write_checksum: sha1:2ffdda72d5854d89cdf1bcf2476e04b2bc40bf7f + pristine_git_object: 04a4d9ecb6daf85e90345679c5c70c50ecec2dfe src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncEarningTypes.java: id: 7537faa591dc last_write_checksum: sha1:8dfbee50cecfe86b979fe64ce0d6ccb766edd78b pristine_git_object: 30054a0a069d37d46da81ff0b5a8fcb0a1025573 src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncEmployeeAddresses.java: id: 82ad748411dc - last_write_checksum: sha1:d926ddefc8bdd0889c8d8ec8436f288e1befb83d - pristine_git_object: 5a0f66ba11464fa77e26a094aa63a3ed288a0771 + last_write_checksum: sha1:b9e382dbbe410136c85a99c7cb86fa58acc4a7cd + pristine_git_object: aa8273804e1004ba129908325667b7c840cb208b src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncEmployeeBenefits.java: id: a80801ffe76d - last_write_checksum: sha1:6f9e6f9049ca5d7cbd52a174db9c99b23cb27538 - pristine_git_object: bd050697924cc19d3ea1db4b1da19e46274f7029 + last_write_checksum: sha1:b421b1c4a0a229feb0774d032a9d1085fe081af6 + pristine_git_object: bc779d39f22d24ddae21d80b4c133caffd0f6f3a src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncEmployeeEmployments.java: id: 90c5e9bdd073 last_write_checksum: sha1:fe39e8b9b61a16cc71dba428915e4160bb773cdd @@ -7480,8 +8032,8 @@ trackedFiles: pristine_git_object: 61e0d02901641cb66c89a1dffae60e00c3de805a src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncEmployees.java: id: 0690fade974a - last_write_checksum: sha1:7222b638bdd3d846957cd29b7ca2ab18fc38f202 - pristine_git_object: 67b9533272134047a5b3b7fe545394da40d125d1 + last_write_checksum: sha1:542ddefc142749cd6a6660c16ebb88c6a6b942c6 + pristine_git_object: fff35dac38d79cdea86be641ecbdecc957e79b7c src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncEvents.java: id: 9de4699bc640 last_write_checksum: sha1:70a98653224b93e96fe4d968c20c1fc450899f16 @@ -7492,8 +8044,8 @@ trackedFiles: pristine_git_object: d4baca20a874548be649b3bc011ba53e13d3be28 src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncFederalTaxDetails.java: id: 59b1745575be - last_write_checksum: sha1:98f6b4dcc7367c107a5b0a997ff792af6c62d199 - pristine_git_object: 24b1cbbb1261eb40cf8ec23a3db86c329e2dba98 + last_write_checksum: sha1:6bdfa4ac8f6ab095ae8f2e20970c16e301f8f5da + pristine_git_object: 2934fa658e39a9115da9eb5c0d42f13b253305f9 src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncFlows.java: id: f48e1146af76 last_write_checksum: sha1:8f9c6cc39c51ebba8bada8dc5a59ce9a84f3a01e @@ -7504,12 +8056,12 @@ trackedFiles: pristine_git_object: 3fb557ad2cdc5ff6936722f6b01b96a02b06bea0 src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncGeneratedDocuments.java: id: 7c5000e78737 - last_write_checksum: sha1:d012f1340e9eaaa3f9d2f8ae7bd8fe86a0c76275 - pristine_git_object: 0558a125de2648cd1d88e0f550d69145a14a3ce9 + last_write_checksum: sha1:518ffdc856dab58f70adab35d1eb1e2d0bf283d4 + pristine_git_object: e85384d711ea1d7e428486c4f0b0b920cd8f5d72 src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncGustoEmbedded.java: id: cbf320ff7017 - last_write_checksum: sha1:87d2b123319784ebcb13e5c108991e9ffc908efa - pristine_git_object: 7806aa7fce9b10487d5435e0ba8c733706c65882 + last_write_checksum: sha1:74b09cd2bf3ea2028ff27e0a87cccf07df8fda3d + pristine_git_object: 1ae4b89178ccf1dc06e2050668ca57a58ff0e699 src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncHistoricalEmployees.java: id: a2d639bfa50f last_write_checksum: sha1:6844ce5bae75ef299114fc4d4010c8aa31c60693 @@ -7524,8 +8076,8 @@ trackedFiles: pristine_git_object: ffe7490902ff1a4c60c3a5cc1e616cb608a24f7d src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncIndustrySelection.java: id: 72bd2804f8f9 - last_write_checksum: sha1:33191ea7db112746a3ff6f58cfebc6f636c81a42 - pristine_git_object: 82b3b82db6fb1a164562a7b1b140c751e26bcf9e + last_write_checksum: sha1:d0ca0e3eb340e93ed30b41933fbbc4283ede2e4c + pristine_git_object: 8bf50a01f649a40a5838c40b8f777c12c53d7a22 src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncInformationRequests.java: id: 2b3dd6d3ce97 last_write_checksum: sha1:506e17611907f0be52db6928554876dfd0fcba47 @@ -7540,16 +8092,20 @@ trackedFiles: pristine_git_object: ee8bb29e7acc52658e8b485be2aada401d4586f9 src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncJobsAndCompensations.java: id: f14e160d3f95 - last_write_checksum: sha1:abca846060795606e24fda3f3fb3d67f868599b1 - pristine_git_object: 1c4f9885b3cc56b1520462dfab9296663952a0ae + last_write_checksum: sha1:33e5062656ffaf6d08c4d5fbf635423448708671 + pristine_git_object: 236361b0977d20048a604e438a55cce716fb5284 src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncLocations.java: id: 1faeb273f742 - last_write_checksum: sha1:79afdf5895fd8c520a5e42cc6a2c84b8a4255aa8 - pristine_git_object: 5e96a0dd43bac8ccecb04bb8961a66f2fa5d4970 + last_write_checksum: sha1:c76a3d7526c6855c9905cc01df3cec6c6e2c3556 + pristine_git_object: 46f71d52f19b6a0ec6df765a915541ebeb45bd0e + src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncMemberPortalInvitations.java: + id: 9b33f550cef1 + last_write_checksum: sha1:3e39fe698720094fe8457e9b537dc78a644feefe + pristine_git_object: cdb68db3b389d802cbd38c67ebe35f6bdb064202 src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncNotifications.java: id: 00be4de270f9 - last_write_checksum: sha1:ae731a483a502b109a4e4881fd01c628c83a4f64 - pristine_git_object: dbed62cd4a66ef3e2f266ddfbeeb59e40fb9761f + last_write_checksum: sha1:a6c6ba66c077663afb78ffa52f9625e353fc2107 + pristine_git_object: d220f6d9baddf93fc16a49d25f81078c8e047d58 src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncPaySchedules.java: id: 53587b1946e7 last_write_checksum: sha1:853d89859d11f6615c6e0b3737e3f93e58464d93 @@ -7558,18 +8114,22 @@ trackedFiles: id: 572d38ebe87d last_write_checksum: sha1:5f8098cd694d71db600485e1fa4cfbd250e6cc20 pristine_git_object: 4d142334b97d3ffc5f2b60a73f6b6cd22348ee72 + src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncPayrollCancellations.java: + id: bc4b53dbb163 + last_write_checksum: sha1:f363ae2c963cd3abd176484105e755e5b970038b + pristine_git_object: fe424f159a40d0e4331596a3f4e0327ccac74a0d src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncPayrollDigests.java: id: 7b10dbe2addb - last_write_checksum: sha1:2c842cd8872f367459c6d6737c6f2c55c678d0ff - pristine_git_object: 9014f8f1bd7b5bbe323a97e9a1ac4c2adcdfe217 + last_write_checksum: sha1:5eb66b82da0add63733637aef496c6c18e8ac576 + pristine_git_object: d47f17a2d1de149c86b5f028ff563d9f3673ff64 src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncPayrolls.java: id: 654a9b07d7dd - last_write_checksum: sha1:ca051930b6aeb7461783f7f16f5290caa42495a2 - pristine_git_object: d4814cc74ff3830a60fc85b86beb024ff936c86f + last_write_checksum: sha1:b6d456eff93dcd9a16d5f8783b82d16c8c56faba + pristine_git_object: 65b347c83ac21c54b06c0014201dddc5ed2773c3 src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncPeopleBatches.java: id: 1f0b14a4db3f - last_write_checksum: sha1:2cc5fe5ecd339d7b14948731797d22d003c55c3d - pristine_git_object: 6e1194a3a2e365f211f98ff74560a7572eadff4c + last_write_checksum: sha1:18285b770581b528b75594a8e7c83703b2a825fc + pristine_git_object: 8c2173ce0dc8a4fa7541105d4cbddafd1961d044 src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncRecoveryCases.java: id: 0bf9920ade28 last_write_checksum: sha1:d3657f86cc6d3a146afffee70fce8500fad90746 @@ -7580,24 +8140,32 @@ trackedFiles: pristine_git_object: 0c26a1ea02687ee81f301c739aab2711d5bdb758 src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncReports.java: id: 9c5c5645ded2 - last_write_checksum: sha1:30576ee4bdf4e87dadb3673cc9c3b7e70c41ce2d - pristine_git_object: 571b0019c20f0f1aeff67e3b3c7a49ab6c78caf8 + last_write_checksum: sha1:6211a344f498c8cd809cedd536ae2eebd05f3531 + pristine_git_object: 8fb18260c42a95739679765526b91bd3270a227b + src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncReverseWireTransactions.java: + id: f6c8b13eb475 + last_write_checksum: sha1:911556cad134d09c63b9ca7715b82f0737edf84d + pristine_git_object: bae77c6289eca0c4e3963a23aa76552b80d7bd18 src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncSalaryEstimates.java: id: 57b24f59a57c last_write_checksum: sha1:8c2a9dbf0953bd8fb908041f3402938b9a5538d6 pristine_git_object: 3246754e6bc6e5876c2eb2b391887ddb6b6a81ef src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncSignatories.java: id: 051f2ed82cd3 - last_write_checksum: sha1:0b18a8e4261e3a417449cdb341236aa50e9f2ed8 - pristine_git_object: e28859add014fcd2bff1fc57bb261cb37a612834 + last_write_checksum: sha1:38e6354e8a5db4ef9a051b6733fa3fee7752e632 + pristine_git_object: 14df5cebd6783525f358294a01d170b84680d9d4 src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncSuspensions.java: id: c23d61ae27b5 last_write_checksum: sha1:c30ae9cdb4bdb87366dac1aa345dde3234fdfd59 pristine_git_object: b9de240a13be1fcaccfd612078e89ea0b6c27cbd + src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncTaxPayments.java: + id: b1a8a56e6c6d + last_write_checksum: sha1:0a11620950dcd899f3673cd3976cf354b0f404ff + pristine_git_object: fc8e31a83a70a8959f6832d0fba864e58f533ba2 src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncTaxRequirements.java: id: 18dfbacd69dd - last_write_checksum: sha1:169858a05ce54529ff22dddca77d4197954f7ccc - pristine_git_object: 4208538bd1d1ed68dcef334240d58754523beec0 + last_write_checksum: sha1:122e4eb6d5fab25f14b7210281cdb07cc19bfa4a + pristine_git_object: 43240a18a85648c6e47d7b088f2ed744e5a12062 src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncTimeOffPolicies.java: id: 76c314b22206 last_write_checksum: sha1:fc4feef9b085c9c2892d506209b1dcea47bbcb04 @@ -7608,20 +8176,20 @@ trackedFiles: pristine_git_object: a29b6581de9c9e78a6e062d0d380f4b184258aee src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncWebhooks.java: id: 40fbce436edb - last_write_checksum: sha1:e04a95cf9457096b2e724383391bd8fd26ec9e08 - pristine_git_object: c3d82daf12efa146f05b4774e94edb964e235108 + last_write_checksum: sha1:178c2669306f90b15883d83539633911ef159d94 + pristine_git_object: 3d7ab49e937cf61f713e4c38330ed5c9439b0549 src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncWireInRequests.java: id: 778764c9c020 - last_write_checksum: sha1:6f4468a307ccf38edbf237a7252765acbfc894b1 - pristine_git_object: 1e8764dc4de528bc7ea16f074e098a8976a77fdf + last_write_checksum: sha1:edd48b6361f62395418997566c6350baf5383ea3 + pristine_git_object: ae99164b30c2fa88049665de048b4b1125c51ee9 src/main/java/com/gusto/embedded_api_v_2026_06_15/BankAccounts.java: id: 6930b1417f8e last_write_checksum: sha1:cb65cf0e2310554d7d204bff52e2b19a94dd7667 pristine_git_object: 5326167a9da49969e9f53a44b71d1a4ffa5eadd5 src/main/java/com/gusto/embedded_api_v_2026_06_15/Companies.java: id: 4c33485c9eea - last_write_checksum: sha1:a8a77964cebd91bfb04af4f526ada0fb780e9eb8 - pristine_git_object: fe27cf182cd5b54d1c9c5fc9b9a38dcd108ecaf0 + last_write_checksum: sha1:76f25de1bf45802e3a7215d33ce5439df10dfeea + pristine_git_object: 8cc68e2f67439da3fb1f2e8a19c42794d868d7e5 src/main/java/com/gusto/embedded_api_v_2026_06_15/CompanyAttachment.java: id: 1ba2cec6a912 last_write_checksum: sha1:9cca40ca88fe0614806316ff04a9dc7e29d03212 @@ -7648,8 +8216,8 @@ trackedFiles: pristine_git_object: dc4b854b13a317b74b30da7223ac807c7d50b318 src/main/java/com/gusto/embedded_api_v_2026_06_15/ContractorPaymentGroups.java: id: ade6fb65c2b6 - last_write_checksum: sha1:ae79f1daa2760c9e997e3d9856fef100abf54672 - pristine_git_object: a2caeeb478ed1c577f7e1606a239606b1f1179fe + last_write_checksum: sha1:ebb79d0048911c8cb6456b00861a972775894126 + pristine_git_object: 262054e20a036fc6e13542f4469c29c93d232aa8 src/main/java/com/gusto/embedded_api_v_2026_06_15/ContractorPaymentMethod.java: id: 9e288e255e53 last_write_checksum: sha1:b81a5998cbc91cffaffcff862d69e9966110b117 @@ -7660,28 +8228,28 @@ trackedFiles: pristine_git_object: 4ca2bdb8e9a0dbd8a63144d64a1eeda1435d9544 src/main/java/com/gusto/embedded_api_v_2026_06_15/ContractorPayments.java: id: 2cea44488813 - last_write_checksum: sha1:1fd057cba802a798a82aad19c6eb351748b9d8d6 - pristine_git_object: d53658bda3b048002198d74b38f8911a6643e02b + last_write_checksum: sha1:fb8809471c8a95da3e0e7fa8be98ad939e5407da + pristine_git_object: 826daacad89c1da13aca68974c487e4425321af6 src/main/java/com/gusto/embedded_api_v_2026_06_15/Contractors.java: id: 00d17be65a52 - last_write_checksum: sha1:6bfdff65c6a9a693dc06967eaf69f345ce6d685f - pristine_git_object: c130017feeeeca29831275fec5e49c9dcdaebda7 + last_write_checksum: sha1:9e3b82a6804c55a81e428f55e3cda4a1eefd0b6a + pristine_git_object: f7ade1da74c15784dd47e74d9746a6ec833ef5b3 src/main/java/com/gusto/embedded_api_v_2026_06_15/Departments.java: id: 591e6b884ee6 - last_write_checksum: sha1:c794d033d1bfb5e0f381e6b4eb955a83d4097750 - pristine_git_object: 3fbdfae634335e3bba46d6124b3aacfcd1e8676e + last_write_checksum: sha1:22156718eeb906d36b36a2f305ecc14400214671 + pristine_git_object: 4c871d7732013a1b6a1769bd7e86897552b606ee src/main/java/com/gusto/embedded_api_v_2026_06_15/EarningTypes.java: id: 8a3fa23b2a12 last_write_checksum: sha1:bf0222753af11818f20850fe6a05d5a3d37c8219 pristine_git_object: 424845812b4fd8b1ee0d54d05873c13bc3003c88 src/main/java/com/gusto/embedded_api_v_2026_06_15/EmployeeAddresses.java: id: 3eb9e1ae9a82 - last_write_checksum: sha1:24ed257587d8119d58d00832a70960aadf9f7163 - pristine_git_object: 9a1690cc49bdd46522f5ca71989b11c9e9686c9c + last_write_checksum: sha1:7d5d30c44374527900e30fccd4c56d2a852ac892 + pristine_git_object: 5f305f54ba0442213fd58e46b65648c17d66f20a src/main/java/com/gusto/embedded_api_v_2026_06_15/EmployeeBenefits.java: id: 0b11963d2892 - last_write_checksum: sha1:3939b0371a6fc3a274c6cd0c01e792f301318d29 - pristine_git_object: c6a46dff6bad2919f9ddc1edb7a5a83a79338394 + last_write_checksum: sha1:5060dece16501ff92b2c24228a81229051ad8c39 + pristine_git_object: d0986d8efb585ae1fb49b4eda21467a658fd93b3 src/main/java/com/gusto/embedded_api_v_2026_06_15/EmployeeEmployments.java: id: b5d4ff0d9d42 last_write_checksum: sha1:f35e484422bd6cd91dcb236589bf7f6094835be7 @@ -7704,8 +8272,8 @@ trackedFiles: pristine_git_object: 26941c1e3751d57d90c0e665553bf645c9349217 src/main/java/com/gusto/embedded_api_v_2026_06_15/Employees.java: id: 4a2530382c38 - last_write_checksum: sha1:ff4db44fec638b93e866ac9ce1fef3ab5b99690b - pristine_git_object: fb72b884f35e5285920c2ab531810d5218897bf2 + last_write_checksum: sha1:63bb5cda7748a14ad2e12128be1e43bc371e8b70 + pristine_git_object: c81bf4cb9b281d26b6e95ae75f642ac234e92abc src/main/java/com/gusto/embedded_api_v_2026_06_15/Events.java: id: 4cc50e76b986 last_write_checksum: sha1:6799026c01f8e85c0edc645a69f0abbb64448908 @@ -7716,8 +8284,8 @@ trackedFiles: pristine_git_object: 588d2b41f0a2d43722476daa429ad379492e4167 src/main/java/com/gusto/embedded_api_v_2026_06_15/FederalTaxDetails.java: id: 343ec97dc372 - last_write_checksum: sha1:21313e00cfe541ccff6cc8ffb84a52e3ec861f52 - pristine_git_object: 3cd76582479ecb21abd318100197848af1711a93 + last_write_checksum: sha1:ae8a12bf9ca54e64ab11da1017f19fef930d4457 + pristine_git_object: 0b26bfaf7f3304298ed3cadbf9a90ef61fcdb5c7 src/main/java/com/gusto/embedded_api_v_2026_06_15/Flows.java: id: 336f44dc5ce0 last_write_checksum: sha1:dc315eb555fc749a82c931fce65a6177e840c616 @@ -7728,12 +8296,12 @@ trackedFiles: pristine_git_object: f280bc243acebe201dd6f0b75895416f65fa7cf5 src/main/java/com/gusto/embedded_api_v_2026_06_15/GeneratedDocuments.java: id: d242e18964d0 - last_write_checksum: sha1:5db35b4199e73aa40beee6c70906148f763e1694 - pristine_git_object: f655785b8584ba97f8cf3a87a22f6cb043aecde2 + last_write_checksum: sha1:65039146ca5472ed58d6d3a12f3380f525a23b3e + pristine_git_object: a02c2a3c46c05ef0665a3867d0102a75f9e402e2 src/main/java/com/gusto/embedded_api_v_2026_06_15/GustoEmbedded.java: id: 30aaac743af7 - last_write_checksum: sha1:c5436e9299ba03538b47d633c2443d53e73f9bd1 - pristine_git_object: abd021ea0a2287df6701a59513b3cef52bcfc412 + last_write_checksum: sha1:ae1ceabedf930f7e7ae0caa855dc3934f37035fb + pristine_git_object: 4777bbf30fe60d2197ac6f220bc0248a7b9f8863 src/main/java/com/gusto/embedded_api_v_2026_06_15/HistoricalEmployees.java: id: 0774304c52b5 last_write_checksum: sha1:427fe7d0485879bb3a2eea86d62616079465c572 @@ -7748,8 +8316,8 @@ trackedFiles: pristine_git_object: 68d1afc5382bc633f044321b6c8fbbc8a66d5032 src/main/java/com/gusto/embedded_api_v_2026_06_15/IndustrySelection.java: id: d31aaf92effb - last_write_checksum: sha1:d097aecc77a26a3a7b1750498c65e0f35f86777c - pristine_git_object: 0457cc2ee654e83f15bd0733dbb0e8680e61df7f + last_write_checksum: sha1:7b5cf1329a93b3ecee95b9128731e079da28d69a + pristine_git_object: dec46be875c2bb407089ba88986f260828c5ff06 src/main/java/com/gusto/embedded_api_v_2026_06_15/InformationRequests.java: id: aef0599340d6 last_write_checksum: sha1:6a99ece0ea8a714794bfc0c7ba04bb3cab9e3e14 @@ -7764,16 +8332,20 @@ trackedFiles: pristine_git_object: 83f3f764c5e1fbdb86597e669b75dcfe384a705d src/main/java/com/gusto/embedded_api_v_2026_06_15/JobsAndCompensations.java: id: f4352b210a23 - last_write_checksum: sha1:c42b888837bc538f7732bf335a8ac9fa10b8baf6 - pristine_git_object: 198e4d259c6588704616c6ce06359f34d11a5837 + last_write_checksum: sha1:35d271ad73629722fc37e2d1ab0125cb72cc0f2a + pristine_git_object: 89a5c867b2505680bc2cc32c5643aff1868fb91f src/main/java/com/gusto/embedded_api_v_2026_06_15/Locations.java: id: c121359b37eb - last_write_checksum: sha1:b82068b4bb49d2e92e2fbcd375a67ca86e5dabad - pristine_git_object: 936656a2cefd1653dad6cb70630a413f6e452a20 + last_write_checksum: sha1:c7e30e3a664195cfda170fa4f4e904e661103653 + pristine_git_object: 9a67694f955a7771f079e97ff0b9397b5dbefa26 + src/main/java/com/gusto/embedded_api_v_2026_06_15/MemberPortalInvitations.java: + id: 3d3335008046 + last_write_checksum: sha1:51809e4fb5f02cd5cec0cf784b2192c1d3898669 + pristine_git_object: bad4b2237a63b3eb06cd13c2f831bf3edda401a9 src/main/java/com/gusto/embedded_api_v_2026_06_15/Notifications.java: id: f4f7d1184e53 - last_write_checksum: sha1:443a55e164fafbcd6ecde0b66b776f0209405291 - pristine_git_object: 7b2a730d9dbd036326ba645aa0b4f63ddc2b278c + last_write_checksum: sha1:e26ac3a3c58c5514f3e67b6108bee3af91e0f4c1 + pristine_git_object: 9604e89abe110b9c3b7223a556e96a964692d0cf src/main/java/com/gusto/embedded_api_v_2026_06_15/PaySchedules.java: id: e7f3bbf43abc last_write_checksum: sha1:842be10d7dcace6d6d7e592bf3492a9d49c71ca7 @@ -7782,18 +8354,22 @@ trackedFiles: id: 8dc57a33d3bc last_write_checksum: sha1:007c70a0da1ea1726f3967d5fc2a6a697622d257 pristine_git_object: 2c45d62f5aa09b6ffd6d80f4b529762df9e41106 + src/main/java/com/gusto/embedded_api_v_2026_06_15/PayrollCancellations.java: + id: 12650f161abd + last_write_checksum: sha1:d751a565ec295b5a84672158cb0df185a610b106 + pristine_git_object: 03048d26a7ecb82bf35c9309043b3029ac65450c src/main/java/com/gusto/embedded_api_v_2026_06_15/PayrollDigests.java: id: 781ebb31f7ae - last_write_checksum: sha1:2770bf53d564226786f788d8f7b0292a45404251 - pristine_git_object: bf3f27a6a6d955dcf622c6d99e945ee3c9de75c5 + last_write_checksum: sha1:9618efab58019c95ea315d155f2bec841bbb0160 + pristine_git_object: 1d675e724a5a6bb17b8a0d2768108b6b32fd0393 src/main/java/com/gusto/embedded_api_v_2026_06_15/Payrolls.java: id: a1bc4652927c - last_write_checksum: sha1:95a3da1831d9ae0819c232c16298f9eed0b881bb - pristine_git_object: 44519447d10bcd0c177488229068d66fb0aaa856 + last_write_checksum: sha1:0e7b93a75e8596a12aad544415013a673e3ccc2d + pristine_git_object: 602a765096d88d0c044beb593cc77c7eb49bed74 src/main/java/com/gusto/embedded_api_v_2026_06_15/PeopleBatches.java: id: 61d7ce9ab103 - last_write_checksum: sha1:2d9b9cada4d8cbdde91267375341a73c6d0fe588 - pristine_git_object: 2683cc51504514bfe404250a0db864314e14e452 + last_write_checksum: sha1:a7753017df23b4c18fa24b94ad14e632a8521c97 + pristine_git_object: 0340506af6ddb24715f3a1db0b9050025c677d41 src/main/java/com/gusto/embedded_api_v_2026_06_15/RecoveryCases.java: id: 289855c6e7cc last_write_checksum: sha1:247d48cb09412f45981ef5e0bc10fcf10e724d2a @@ -7804,12 +8380,16 @@ trackedFiles: pristine_git_object: 73f10af9e90ea6bc19a54a9474697b5591ded140 src/main/java/com/gusto/embedded_api_v_2026_06_15/Reports.java: id: 5910796b7d1f - last_write_checksum: sha1:c5642dd71abe3fcbc64008c5fb72e329702fe8d1 - pristine_git_object: 5c67f9207aeecf1e0cd652f65ace23b63a109d43 + last_write_checksum: sha1:4087e792dc6aa825d86cbd9524b9ce08458d082d + pristine_git_object: a28c6c154fb98295a8d0b3402c61e3a1ba80e76d + src/main/java/com/gusto/embedded_api_v_2026_06_15/ReverseWireTransactions.java: + id: b4b9df5ddf91 + last_write_checksum: sha1:59efb681ee2e6ef3f618a1232a1b629ab9709e1e + pristine_git_object: 9546e61d11fc7f1d03ef77a152b8671c5f67feb3 src/main/java/com/gusto/embedded_api_v_2026_06_15/SDKConfiguration.java: id: 1515d474c91f - last_write_checksum: sha1:e4db8737ef0275df1325dc788dfcb901f4c47b52 - pristine_git_object: 3b20440f15f7adc3e32c4b5b356fe37f61530a61 + last_write_checksum: sha1:7963d6e54e8264c7bef637ed064bc4c8598756b5 + pristine_git_object: f45bb25529155f6545ff92507e3ea0a4e8d6aefa src/main/java/com/gusto/embedded_api_v_2026_06_15/SalaryEstimates.java: id: 56971c001bf0 last_write_checksum: sha1:844c7c841452b9991beed48b0210d18f0ca2030e @@ -7820,16 +8400,20 @@ trackedFiles: pristine_git_object: 661c847c465696b8b509ffb6fbb740601c5e5165 src/main/java/com/gusto/embedded_api_v_2026_06_15/Signatories.java: id: 1ca9c078f535 - last_write_checksum: sha1:2f083358bc9270f98c0ac013b4d7abb0c9388ce0 - pristine_git_object: 2dea0074424bb8f30b415a99e383e31a2ab01963 + last_write_checksum: sha1:87a6d8a9799ffc62102f8ce34a2f839d120e80b5 + pristine_git_object: 5e5dfe872580a2d6e46b1dd65faafeeddf5c1ccd src/main/java/com/gusto/embedded_api_v_2026_06_15/Suspensions.java: id: 58425cc6cbc4 last_write_checksum: sha1:b1620db8860398954946254331ca96b45cd251a2 pristine_git_object: e622d1f87cce57b51bfdeb979e2ed71210b17a46 + src/main/java/com/gusto/embedded_api_v_2026_06_15/TaxPayments.java: + id: 1c89f8951197 + last_write_checksum: sha1:f1fd657e1a0b18201cee850f99d1c97d4b5bdc4e + pristine_git_object: f712a1b9fc443ef547131133ba3cb6fd103e2114 src/main/java/com/gusto/embedded_api_v_2026_06_15/TaxRequirements.java: id: 95065a8ab866 - last_write_checksum: sha1:b56e114fd52b72b344c1790c1ef24e19eb7a5ce5 - pristine_git_object: c289d1f722557d13d3c6350cf799e94f4fd95446 + last_write_checksum: sha1:f07e937c5a7043be80e7c97e26cac8bfebf2675d + pristine_git_object: ca58509f6071f9c1e211ac3bffd5db58de196385 src/main/java/com/gusto/embedded_api_v_2026_06_15/TimeOffPolicies.java: id: ad43245aafb4 last_write_checksum: sha1:2e7ad56398a8243c28a25290c3dd1f88406dfaf5 @@ -7840,12 +8424,12 @@ trackedFiles: pristine_git_object: d7579855f272b9ffb02d08810f8f280cf394d76e src/main/java/com/gusto/embedded_api_v_2026_06_15/Webhooks.java: id: dcfdd9dc3350 - last_write_checksum: sha1:8f0e466d9d593a81c848f09edd5f91288a66dc83 - pristine_git_object: d03af44c2b806c20a537b0feffb0f7f832950ad9 + last_write_checksum: sha1:0f9ca08991371d3a79442e8e3f6d5ed04543a663 + pristine_git_object: 8cc9ab513f91807ad373e409b600598960271a43 src/main/java/com/gusto/embedded_api_v_2026_06_15/WireInRequests.java: id: dcb6230f7d46 - last_write_checksum: sha1:5c479daa1010ca4f372eb07ec3aebd71b500b549 - pristine_git_object: 409d6eaac44e8148f4bdc0aefeea1176c5194779 + last_write_checksum: sha1:61e1b06f62cacfb5e8d5dca77051a12c48e43260 + pristine_git_object: 50a3f96ebc39263ab50da3c6466bc68286a6a2ff src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/AccountType.java: id: 3d218e225185 last_write_checksum: sha1:e74e3730d3a9bf20928e55fae126817108b87a4c @@ -7884,8 +8468,8 @@ trackedFiles: pristine_git_object: cb147827d3b22f48001c556b922b68564ddf012c src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/Aggregation.java: id: adfc1e5cabc1 - last_write_checksum: sha1:ddd35a53edffb8e8b71a2c40130b706d51ec60a0 - pristine_git_object: 16cd89b0798c463af82171d88e3092b9b31f4905 + last_write_checksum: sha1:6b38d19c8a269e8265f7822f55d76feeb597606b + pristine_git_object: 54e4c36c97baea3a4949a211d7596207371a2a9a src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/AmountType.java: id: 886a7ed4a5cb last_write_checksum: sha1:948e6a57f753e175be7ee0fbea3b5f032ef6837f @@ -7932,8 +8516,8 @@ trackedFiles: pristine_git_object: c0e4cad10466d9e25654ed9f8a429e9680fada14 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/BatchAction.java: id: 2b3b1a7fa58a - last_write_checksum: sha1:cc784cdd3bf6a1d9f9b9e616844c2acaa0e9aaa8 - pristine_git_object: 3f791bf9b3e2c4d2cdf3a71bc5e71ff40849d59e + last_write_checksum: sha1:5e73a19a26f67fc75bb61ff646f7506331e4f2b8 + pristine_git_object: 2927b823869ae8ebc20604e4a883562bdb51e845 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/BenefitSummary.java: id: 545d6046f9bd last_write_checksum: sha1:9380233d068373326383f8eeb485eeff088bdf30 @@ -7984,8 +8568,60 @@ trackedFiles: pristine_git_object: 51c7c58bccf2e0cffd2a5dede0a0d688a463b093 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/Blockers.java: id: 2ec8eb73a0f1 - last_write_checksum: sha1:12a5294c001b7332fd1ff25ac0037ce4eafef523 - pristine_git_object: 84dfd14ac86b510e9aa43b07da153fe3349176d9 + last_write_checksum: sha1:d0e7a90f3d05c92c0eebedeb86230971286853e9 + pristine_git_object: a04cfc6837d41a7a78d81dc67759379b318fc1dd + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/BulkReport.java: + id: 41c00d5ea0bf + last_write_checksum: sha1:39e57f1bce57d3996cf98315c43e8f86960a8cf0 + pristine_git_object: 8ab44c930c4532b5b460f09cbb7a5b8b47341f35 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/BulkReportBody.java: + id: 052bb76fc399 + last_write_checksum: sha1:8bec11a49c6dd01c7638d5c40edc2105e36ccbd7 + pristine_git_object: 0f66f03861f6d2581a9bf0255655dd87d778aa78 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/BulkReportCompany.java: + id: f073f1e9c23a + last_write_checksum: sha1:709f2763ab3fc6d045b9ad23d73af61e0cd8607c + pristine_git_object: 299452cbd74770054945428b1df9d8998e28f9af + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/BulkReportCompanyStatus.java: + id: 7a4bf78b7165 + last_write_checksum: sha1:39fb79d2cffcd6b1511a0caeed17197397c74040 + pristine_git_object: 5768eb388a28d262de3fddb65c819222f1dd0db7 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/BulkReportCustomReportItem.java: + id: ccc54d73b08d + last_write_checksum: sha1:a1b962d85dfa279eb6e513c893ae9f0ba0b54883 + pristine_git_object: b6e71d40f232d7eb4c96ed913f525b8a20df98d1 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/BulkReportGeneralLedgerItem.java: + id: b6cac13d0652 + last_write_checksum: sha1:eda711d8fa4a3b7eaf9e4de0854885b9583c3067 + pristine_git_object: 0cd5cd176f3c394d30c1217214d44da6b7fe1573 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/BulkReportGeneralLedgerItemReportType.java: + id: e9e42e7a999c + last_write_checksum: sha1:85bb411edfebc4af99c5d8bddffd1d5f95599a6e + pristine_git_object: 4b84a7c1ed2d9e09a639caee6d80ab89c170b67c + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/BulkReportItem.java: + id: 83e667c052e0 + last_write_checksum: sha1:502d637fe0032ce52262eace29c3dbb868b8eab9 + pristine_git_object: 294fbafc1d5885218f63dca1f0e48657e265cbb7 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/BulkReportItemResult.java: + id: db25264a30c6 + last_write_checksum: sha1:51a6407cd70586e50ced5d168a8611f2c2c0cd88 + pristine_git_object: 439ba1f984b12981613afa07549543115368151d + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/BulkReportItemResultReportType.java: + id: e84412baeb69 + last_write_checksum: sha1:586787ce465b5f001d49da5317d9a37b846e62b5 + pristine_git_object: 2ec46b064ca3ef8a9493a047a022d882a71657e6 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/BulkReportItemResultStatus.java: + id: a7578fe97ed4 + last_write_checksum: sha1:b7c7a755bef56307b6d5af086b617f294b1218c1 + pristine_git_object: 94f275a5239dfaf611dd7eb6310e5faa06fd11eb + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/BulkReportItemTypeIdResolver.java: + id: a614259de6f5 + last_write_checksum: sha1:c4a724027ca0c13ec965a1f89d699283eb853d24 + pristine_git_object: 60e38ec1b4f20fda8cc0c32af41e275b2d3b543d + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/BulkReportStatus.java: + id: 05c715aed1ab + last_write_checksum: sha1:53c61b266fd7a639b84da0809d40ef2ebea75600 + pristine_git_object: 5c13d38753bd4d3ede04b0e376900f62c99acfc7 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/CatchUp.java: id: d932ac52ab67 last_write_checksum: sha1:ba789749ac80deb62100ff7ce76fbd2765eeecbb @@ -8016,8 +8652,8 @@ trackedFiles: pristine_git_object: fd7a1d60fa7aadbe5833f0ecabccadd1ff0e8e0f src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/Columns.java: id: fdfd5a5cedee - last_write_checksum: sha1:fb7bab9344f445bc30952a3bbaa43fff240d5483 - pristine_git_object: 7ddb1df36530d434557595dcf627412f0e80527b + last_write_checksum: sha1:77e91876443f54caae0549ce9303fa3a0b96fff0 + pristine_git_object: 3b5f64059cc7876736b199cf8b236e1660b76da7 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/Company.java: id: e9e4339b2061 last_write_checksum: sha1:f28c2f931f780e4a196270220245ccbfbeb68316 @@ -8188,12 +8824,12 @@ trackedFiles: pristine_git_object: 86da864dde5a984e02bfc2c71f9840d0a9522703 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/Contractor.java: id: 04049eb4577f - last_write_checksum: sha1:ee1453da4fb218924385b858d2c31452ff5c7bb8 - pristine_git_object: d478849aee2cb2fd526c9ba5c91524de2d2a7742 + last_write_checksum: sha1:3338f5fb63fc10366be5501cf43f355019e22fd9 + pristine_git_object: ff9b704981e0856a3c2ad3edcce43299e29703f8 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ContractorAddress.java: id: 92c491b891a6 - last_write_checksum: sha1:ccdebc8d778ee316dedddaa1c0139a5208c0ba6e - pristine_git_object: 0472656bfd01c034a8f7d1e4634c92ce7d51276a + last_write_checksum: sha1:4fa59a71f6ef45dde6aa363c3032c6ac63829597 + pristine_git_object: 7857bae8e5bef64274c4e1c37fb34e6e744fb6d9 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ContractorAddressUpdateBody.java: id: 2e21f61a6ca7 last_write_checksum: sha1:c7c6001098ac62dd9433a9b2156da8487038b1df @@ -8216,8 +8852,8 @@ trackedFiles: pristine_git_object: 8019cdcd1eee5530d000fbe84a545e7914dcc40b src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ContractorCreateRequestBody.java: id: 13f62a763852 - last_write_checksum: sha1:c9de9ae7908d45e54369af47866781612793ccd1 - pristine_git_object: 40d6766ac1d16e6d17ee54bb01ae38d888ce87ae + last_write_checksum: sha1:fd31fd2c16fe2c270195b95d0fc16988fcb6a445 + pristine_git_object: c5cdd6640a66b0f2f93d30a1855e7be892d194a9 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ContractorCreateRequestBodyType.java: id: b88cbab677fb last_write_checksum: sha1:934f57c8a16e94e3b8bfe75f63a1491630bc354c @@ -8260,8 +8896,12 @@ trackedFiles: pristine_git_object: fd144491165001d3f3314c0af317d6e47a0aea30 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ContractorPaymentDetailsList.java: id: 74aa197fa874 - last_write_checksum: sha1:1e620fc16e41c0394407777614e0fe21630d677a - pristine_git_object: 563210b37d2ed2a11f4410a6f262dd03a99df6fa + last_write_checksum: sha1:10f21501b14c73131f30dc7e75cc294f2a611032 + pristine_git_object: 3191ee315b115a92fe2baeb2d83642fbd520479b + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ContractorPaymentDetailsListPaymentMethod.java: + id: f4299e49df7e + last_write_checksum: sha1:161f84f42d996c9e7fec11fdc1d838576e64f00d + pristine_git_object: 0997261a2168b0caeddf1cd7492ac9ec7fdb2ad2 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ContractorPaymentForGroup.java: id: 8037235c83c8 last_write_checksum: sha1:5fc4876aaf3cedfc5be7601055859548b5f041d7 @@ -8334,6 +8974,22 @@ trackedFiles: id: 3004e6c4c073 last_write_checksum: sha1:8923b4db5a41980e89047107caba9bae212a4b1a pristine_git_object: 075e8eff8d5e57a27deebd9d62e0a23c942cbed0 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ContractorPaymentListing.java: + id: 6be72da3664b + last_write_checksum: sha1:4ad6dddd621295d9388aa55156ea2423c29ab5c5 + pristine_git_object: e17ec614228ee13fd3b215ba6b6c1562b45c7220 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ContractorPaymentListingPaymentMethod.java: + id: ab94c4652d1f + last_write_checksum: sha1:a25e617f3fb7a9a275bd07598f2897f132409c1e + pristine_git_object: 102ed2b27a9e8bebb26f97b93360e13b04ff9d16 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ContractorPaymentListingStatus.java: + id: 7e3cb1a78dfc + last_write_checksum: sha1:3d59ce7d649c41ccec6f731dd359400cd546fe31 + pristine_git_object: abbb4dea1bb08657cc9961bd8510fe360b492fc5 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ContractorPaymentListingWageType.java: + id: a9cd761e1286 + last_write_checksum: sha1:c075e26e4439fb1eb6b3614c118c10dae7c8c583 + pristine_git_object: fd7bc63f3dbaf76d8de42502e4b022f79303d356 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ContractorPaymentMethod.java: id: 1537614fd521 last_write_checksum: sha1:c194a2b9e3d46e97ae55b5e98391f2dc089fda42 @@ -8424,8 +9080,8 @@ trackedFiles: pristine_git_object: 3e16fb4624358be4e9b535c82cdd46b984d3b700 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ContractorUpdateRequestBody.java: id: 0f98553b573a - last_write_checksum: sha1:87c84a8be0e3bffb9924c4f93a8dee764841bae9 - pristine_git_object: c0ccf11d0141171230443973386c15a1e7f48e36 + last_write_checksum: sha1:846021d60a63a967b25fb75b7c73d40409209fd1 + pristine_git_object: 663882654a4d7c093276bea482a6669fffcd594c src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ContractorUpdateRequestBodyType.java: id: 95692ef9c58f last_write_checksum: sha1:804ed95ff2f179688c530d863778a91e3493aaa3 @@ -8462,6 +9118,10 @@ trackedFiles: id: dd0041c2f07d last_write_checksum: sha1:a783b7bb7fddd7fc6e5ec2d59d8090d64c3865e3 pristine_git_object: b39b5bae3c091913902150ecf280255d0b3e6c58 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/CreateBulkReport.java: + id: 551a2dbef4f4 + last_write_checksum: sha1:4ab03215843c84676f3dd861b32a4d79fee98f9b + pristine_git_object: 8d712a0b04aa1f20e7a255b15b316d56eeb5fb45 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/CreateFlowRequest.java: id: f2a584f5b8fc last_write_checksum: sha1:e1f03464e3d2b049e24358ba9ca968051f2fb764 @@ -8476,12 +9136,32 @@ trackedFiles: pristine_git_object: 9bd1e67d06fcf32a5cbb8768f3bca8d39c2c80d3 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/CreateReportBody.java: id: e957093f50b6 - last_write_checksum: sha1:ebd3f253db24f804bb2f9b299dd7648c0914bc4d - pristine_git_object: 02b2852ee85fa32d9df0ad6d1cd91debe2812750 + last_write_checksum: sha1:e6ede57675989bbb0707f3c3d56416ea880ebc68 + pristine_git_object: 01585643bf2af4a1e4f1c5c8a031b547f5e711d4 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/CreateReportBodyColumns.java: + id: 8d2992b21730 + last_write_checksum: sha1:0ddbd1cc8c0ab191985c67bb5fad62c865c4196f + pristine_git_object: c5ebc0ee2cd9171c59bc799e0e43a641089526ff + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/CreateReportBodyDateFilterType.java: + id: 736ed23d8fd4 + last_write_checksum: sha1:0b0344174e253e9393ea5e21f626cf7167cec670 + pristine_git_object: cb8a974ac1851968796a7460f3ba378553b4dd93 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/CreateReportBodyEmploymentStatus.java: id: b21e066dc358 last_write_checksum: sha1:1b60d47b38f22df8b68cdfc4e1dad703456127f5 pristine_git_object: 9fb4d413123ac1375de88a547bc1d718ef620a93 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/CreateReportBodyEmploymentType.java: + id: 451bf6966b66 + last_write_checksum: sha1:6c21dfd192f9bf760aa766a39a9dd493f8f92ea8 + pristine_git_object: b8df7ecb773956d3c7ea4dd6367f8e68e0589568 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/CreateReportBodyFileType.java: + id: 1fb83ecd45a6 + last_write_checksum: sha1:1f6b59e4540f6ba6f808f0a63d6363fdb21e8d21 + pristine_git_object: 12bb3606ac75a6a948e633f43a814b77fff8a19b + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/CreateReportBodyGroupings.java: + id: a70748812df5 + last_write_checksum: sha1:bf775b2e8219f281aaba11f1607b09f583fa7b4f + pristine_git_object: d89d2c3d578c64406b095ee4c2858dc2d0b179b6 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/CreateReportBodyPaymentMethod.java: id: 100bc183132c last_write_checksum: sha1:04aa6dfd30a973ecb3091f774cd0190c914c8bbe @@ -8498,6 +9178,14 @@ trackedFiles: id: 7aff6f16d43e last_write_checksum: sha1:26d57389845604d8fb1ff14bcce6b9f0c9ea96f6 pristine_git_object: ca630785a78ed97beab121f0a7ae8b12386439a1 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/CustomWithholdings.java: + id: 2e98f5bb84d5 + last_write_checksum: sha1:9475cb5cf4b54645aa5fb4fbc5e3d224e6796fd5 + pristine_git_object: ac6e5327864286035df5428500673f97e15237f1 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/DateFilterType.java: + id: 9bc582e1ac6f + last_write_checksum: sha1:07c1342ae025ef3ad9b9bfecbb1d5482d1ee99e7 + pristine_git_object: ea2740cc2c389b530696c77a1ee09db979356790 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/DeductAsPercentage.java: id: 29d7ae5e7ee3 last_write_checksum: sha1:55d6014277e10f20d3ab06c2f331765db6338d2a @@ -8632,8 +9320,8 @@ trackedFiles: pristine_git_object: f0d9b18f9131d4368757abf477c5dde2bcef5bbc src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/EmployeeAddress.java: id: 7d3db02f4f9c - last_write_checksum: sha1:530f74923bcb0225c9b3bfecf2d110a6a1685404 - pristine_git_object: 794c7ec0576a6a69cc8abff2e2c5ca66f93ccc80 + last_write_checksum: sha1:9f47f6c9fe8c4ca1cee1408e08d4dbe05aebd72f + pristine_git_object: 9312a90d32fea379cb1d5d8f5d318b4c65412cea src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/EmployeeBankAccount.java: id: b5b4ca59b0c6 last_write_checksum: sha1:1db90a9bab6bd1742288f9266d1319f16fdd83e6 @@ -8748,8 +9436,8 @@ trackedFiles: pristine_git_object: 7e373e23f89aae2908895c77def7322a9d782b88 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/EmployeeCompensations.java: id: 57659f819973 - last_write_checksum: sha1:c447ce13ecfb1d2c3d08ec91e318b87bb8da6e1b - pristine_git_object: 8eac7e304c7e9b06b8dd08996450d5cbb85ce050 + last_write_checksum: sha1:effa8e01fb0bf64658b3d551a2047136be37cf46 + pristine_git_object: 6d9f07018cb69e0b13caae587d0e6b2d57848d69 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/EmployeeCustomField.java: id: fc67c256b891 last_write_checksum: sha1:4871ccc1bcad1bbddb6c6b57e2c4476732badd37 @@ -8804,12 +9492,16 @@ trackedFiles: pristine_git_object: 9e8e03b4a92a2f4e74c0f673d65fc12a1b63499e src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/EmployeeOnboardingStatus.java: id: 0ef88e4362b4 - last_write_checksum: sha1:a8172e64b7323b6249bc853aea2955bc64b1b246 - pristine_git_object: 9eb3f4c398ad2e502f22fea9dcf3ad1ef2675a60 + last_write_checksum: sha1:234fdc35217e4422fa1fa9b65ef50af7f28e2e80 + pristine_git_object: b93f57ea6626e1367c25fdef2de417df32edc9e5 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/EmployeeOnboardingStatus1.java: id: ae6bbaf7c257 last_write_checksum: sha1:075bd6cbffbc4dc158cbb70994938e2a8371ba8e pristine_git_object: c43a758bfde421aab9c479c44be421bc80e4bc08 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/EmployeeOnboardingStatusCategory.java: + id: fed9ef44a519 + last_write_checksum: sha1:f4fda4e130594c348329cd48e6baf71be80c5ca9 + pristine_git_object: cadd10a9c98f4f98ef5bd44dbf2196b3d22d710d src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/EmployeeOnboardingStatusOnboardingStep.java: id: 2781091d7d5d last_write_checksum: sha1:622e67ae5c55478892f99db9d76df46ba3d95657 @@ -8928,12 +9620,12 @@ trackedFiles: pristine_git_object: 7d1021a40c0da14edf0392dcf5340bc5e2b0f1c6 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/EmploymentStatus.java: id: 3be9007e16c4 - last_write_checksum: sha1:67bfb300e9f72135bb536dcb71fa52e1e439c525 - pristine_git_object: 7d755b84f2d01dadaa9f368d13d550971cea7619 + last_write_checksum: sha1:4d9ac58ff405bd6daa53503fdf423dd8aae8a752 + pristine_git_object: 34f3f1d0dd6930f1a6b7ac0d849d0242610e4793 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/EmploymentType.java: id: c8b971b6d342 - last_write_checksum: sha1:c1a4d7f5ff8523b682d846ded8d2cfd25e5e68e5 - pristine_git_object: 55607ea5d3f5a4a1a1635cc1eb3d534fac3add95 + last_write_checksum: sha1:d57d9eeb90ad1a206b8bf3b3341e2e6b9089e9bb + pristine_git_object: 24395464e6f0312f840851b2290de7abcd8e6747 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/EntityErrorObject.java: id: 91da401fe85e last_write_checksum: sha1:202b6523d2478ebb1648312571c1e5ce94146fc6 @@ -8952,8 +9644,8 @@ trackedFiles: pristine_git_object: 7b3f4c3258704806a09b2ab8d314f02ed5ea5c75 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/Exclusions.java: id: a2e13f6beb20 - last_write_checksum: sha1:0c05d2ae08fd752c9bf60cd5893dc98329334014 - pristine_git_object: 80df42c77cb79d2c6052b1bf63522e0784e66d9f + last_write_checksum: sha1:56c924f6e6bd821da02f230be9fde6f75b1aa3ad + pristine_git_object: ee3eb4c5de2cd47a9722e3fd476e3f83e1034c3b src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ExperienceLevel.java: id: ea3e1c6acb20 last_write_checksum: sha1:52531fb61a33a86d9f13e8610fee1d997b6ee7ea @@ -9018,6 +9710,10 @@ trackedFiles: id: e64851cc568f last_write_checksum: sha1:63b802e42416d41ab14757f10ed99a6029fe5e94 pristine_git_object: 93a91fbe082451748c6aa2ccec91e99fc798c84b + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/Federal.java: + id: f12e52c44c5f + last_write_checksum: sha1:44f7f26cf13d1e1f5a54397fa73d5f13faffc26b + pristine_git_object: 1f54cd29ef4776ba34adafacb437b8d2ef7b712c src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/FederalHolidays.java: id: de24849b996b last_write_checksum: sha1:1633593b0a5334ea80d216184b30271d85aacf28 @@ -9042,14 +9738,18 @@ trackedFiles: id: c4f1fea60b55 last_write_checksum: sha1:bd8e05323ac0b42d1940da4aa5b0fbb16de477a2 pristine_git_object: 2da4cc77b28721d61d5fa320b6ee7f8152bcb80f + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/Field.java: + id: 4a00a8d3a78d + last_write_checksum: sha1:a09502303183d16e0a1645aac513fddd35c040c4 + pristine_git_object: 388da09eb00065e0d240309670a426df2084de4e src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/Fields.java: id: 72c8d6a08385 last_write_checksum: sha1:5d0a7a385db80b44e47e15d8ccb95e99cda28180 pristine_git_object: d76de2e887d7482c784c273b7af029b7bf638a33 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/FileType.java: id: c674779db864 - last_write_checksum: sha1:3df0f69b50d6dcbc0d3e283ccadfc4f831d3da77 - pristine_git_object: ead27492140a079bd6ecafa15c35564b04ac2be3 + last_write_checksum: sha1:aacc2b50d98ebb1e1578e2c5b6c568bda01ae406 + pristine_git_object: b84558fca6ded88d6785787a7bc98389a7c1757e src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/FilingForm.java: id: 43df2383171c last_write_checksum: sha1:1b3995f97f60a6570b2e4ee29dfb172a3c5d2553 @@ -9124,8 +9824,12 @@ trackedFiles: pristine_git_object: c4a18533b061f11fa1286929444c09fe02f4c53f src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/GeneralLedgerReportBody.java: id: 629e18423674 - last_write_checksum: sha1:d0f1b089ca3c7bc295f208950e7bfe8931a9cc0f - pristine_git_object: 741c5bbaabf236506eee7741eaa6513e6d4ad5b0 + last_write_checksum: sha1:190c32ad896ef1a841f261bd1c813618f2fd2ab0 + pristine_git_object: 51dd2d9d406c64b921f68a112c15b9d53ab752b5 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/GeneralLedgerReportBodyAggregation.java: + id: aaee837917ed + last_write_checksum: sha1:6582ba1a86c0cbeb641a703c436ab032825ac228 + pristine_git_object: ec6b191d89b8f112a8548543c1f1e2124ffd70e8 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/GeneratedDocument.java: id: e35ccd305423 last_write_checksum: sha1:bc44e7d7db853c6bbdd39bd1a19bcf7b373299e1 @@ -9336,12 +10040,20 @@ trackedFiles: pristine_git_object: 51b456609099ddc809edb1c05c7fda8dac22f805 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/Location.java: id: f8cc47060b75 - last_write_checksum: sha1:5c2daca3335df13aff72a2b6aefb60e10523ed80 - pristine_git_object: 15b11e9723a29951e9671e82f916413cc3b6a240 + last_write_checksum: sha1:355cff8de46ed0ae81497d2f2245f24845304fef + pristine_git_object: 84fc651763f424f146eb55863b1084a202168761 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/MemberPortalInvitation.java: + id: f6958b39b2e4 + last_write_checksum: sha1:2e760ecf6faac5b079dd3b669d26625c95f56637 + pristine_git_object: 6a7db7bd157a26935bc0c566d3369e081c804274 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/MemberPortalInvitationStatus.java: id: 885ced6b2da1 last_write_checksum: sha1:c1e5431e98d48cb3e3e49810330ef3bd4f6e899a pristine_git_object: af15c52dfe35f73cb03c16d6a9284f44db07a49d + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/MemberPortalInvitationStatus1.java: + id: c8c7311d1288 + last_write_checksum: sha1:dc8691783704edaef69007c6c4dfb35382fa519b + pristine_git_object: 5c89a044e911ee663de5a513bb961b92a3a333cb src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/MemorialDay.java: id: af467535a5c3 last_write_checksum: sha1:f9fb34efeb5acebb5bba31cbf0429d8d455881e1 @@ -9380,12 +10092,16 @@ trackedFiles: pristine_git_object: 5ea0472b941e7d43a54b98e6ef6e076a0b9bde4b src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/Notification.java: id: 963c5f93d8b7 - last_write_checksum: sha1:2150bc6e88d5fd47cc1c20e54185a97885f837ef - pristine_git_object: 0fa2a8f10ce42be6ffe4de8d240a2603dec304a5 + last_write_checksum: sha1:085970832975ad14b321d15085687d4d4ae7e6b7 + pristine_git_object: cd4bbb768540c3b3d6d540ac681949cdba035b7d src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/NotificationEntityType.java: id: f1ca0928d2b4 last_write_checksum: sha1:7fd9a768589d7f424dc8390105938feb52f19d36 pristine_git_object: 029be9f2879cb0f370eeabe184779783d9b35430 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/NotificationStatus.java: + id: 6742bd8236b1 + last_write_checksum: sha1:e27a8c90402d9c7ed951d3e9f9c27953c8d3fa71 + pristine_git_object: d8b6f8ca2876242b5df02c680afa66c591694fa8 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/Occupations.java: id: 1d7f8536487d last_write_checksum: sha1:7f4e8cfeba7ccc33cc36e0da9f107b2ad3c0d6ab @@ -9410,6 +10126,10 @@ trackedFiles: id: ce16caa05b3c last_write_checksum: sha1:f30f604804650580098e04bf26180d4412cf1f81 pristine_git_object: 1c4cc20d61849c3046d4d85168f61d027ce6a56b + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/OverrideType.java: + id: 2c4aaceefb91 + last_write_checksum: sha1:93e468fe0bea7f0393681a4e4ba5e036b568e128 + pristine_git_object: 85dd4e96b385aba53e7ac2604734a4e9065c8a8b src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/OwnerType.java: id: 2ffb24b24fdb last_write_checksum: sha1:36f0f9370de5cb073b96649a46655e84142631e6 @@ -9442,6 +10162,10 @@ trackedFiles: id: 3b231ad42b15 last_write_checksum: sha1:731bb9f8c967f90435047ea5151231043547f553 pristine_git_object: 21c0985fbc5135471345d2dbfdbd21be5acf4ada + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PartnerManagedCompanyDisassociateResponse.java: + id: 17e8e323ec98 + last_write_checksum: sha1:5c89cd2e47c51e00275c0ed9d0cce96d8c10fb2c + pristine_git_object: e46ba54d994fabab0853d6863e3d3fa08143bcee src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PartnerManagedCompanyMigrateRequest.java: id: bce94458580f last_write_checksum: sha1:7a719a65ef41a52b7d51a5c0ec48a54a7e2df0c9 @@ -9556,8 +10280,8 @@ trackedFiles: pristine_git_object: e6de6ffc872aff86c5939b0870e2287856957f3a src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayScheduleAutoPayrollEnablementBlocker.java: id: 85269fafceb0 - last_write_checksum: sha1:062eb3aaf4fa046858733c8ed46f343774877d5c - pristine_git_object: ea14bfdc8df39a7042783c20d873ec9956abe1a7 + last_write_checksum: sha1:1b085f4509d2aaf776797b3364e84bb277d1b65b + pristine_git_object: 86f2281ca9fa075370eba37a9270abab8dd39c86 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayScheduleAutoPayrollEnablementBlockerMetadata.java: id: 320af7099197 last_write_checksum: sha1:494da20db85685cf8c97312644e82ecf82a05040 @@ -9620,8 +10344,8 @@ trackedFiles: pristine_git_object: eeb081c66d39a61217ef18e5ff9e4fe352c671f5 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PaymentMethod.java: id: 91a271a164a9 - last_write_checksum: sha1:32497f3d937d196097f9f788479dcf624a1700c5 - pristine_git_object: 9c76c2579f04973165a8aefe1b05fb573d1d655a + last_write_checksum: sha1:f89b3a6f3e332332fbca5384f77f2cbd7c79f72f + pristine_git_object: 83c6827984de4379c5cc6d412a083b4b20219ac5 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PaymentMethodBankAccount.java: id: e1d3ddb6cab3 last_write_checksum: sha1:82740b0526af769e1f8ab80280f7bc12bedb7484 @@ -9650,6 +10374,46 @@ trackedFiles: id: 4884933fa1ba last_write_checksum: sha1:a560158b519f7cba6bb11896fb247d3856a9d2ec pristine_git_object: 421c09bdf8307dd4af79d9c95ccffe6e9fd83ccd + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollBatch.java: + id: 91c61de76648 + last_write_checksum: sha1:3abce1889aa08036cd56f93d9d89248aa46ced29 + pristine_git_object: 6a9814ade7ddcd9bfdb7cc4641cc7918dc954ae1 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollBatchResults.java: + id: 9a666a376a96 + last_write_checksum: sha1:1b5dbad2743b39e41a18fd2a49c4bdd2369776d6 + pristine_git_object: 8e122920a8f206dea07f8d11d22016dd0b4dad7e + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollBatchResultsCategory.java: + id: 5b96bbded1a1 + last_write_checksum: sha1:9ed9838871e62091c3e32a3aa260e31251d324f7 + pristine_git_object: ff176871bb7bc48f30225c7476e9e729cfb49071 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollBatchResultsEntityType.java: + id: 439fb7d8b308 + last_write_checksum: sha1:256309ff4c189a72d18ad7906be437f81a77e5f1 + pristine_git_object: ca327487072de2586e9e93c8494fdea49d75115c + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollBatchResultsErrors.java: + id: 6a307cd7972e + last_write_checksum: sha1:287f0b8d57bc540daa7fd6b718a8ebb82dfe3614 + pristine_git_object: 33d69697daba820de3eee2e90dea2d119ca00d6a + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollBatchResultsExclusionsStatus.java: + id: d400ed4db073 + last_write_checksum: sha1:dff1c2fce69153aea603efa27571ab9a9a86c84f + pristine_git_object: 9fbd57682ddfa5de2587ea30ac52ef11769926ed + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollBatchResultsResultsCategory.java: + id: 7d4d3a4a482f + last_write_checksum: sha1:60c610becc7ff9c6002caaab8de42563f0dd764d + pristine_git_object: e1f2b372f397b4067d12026d57668660fb97fab5 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollBatchResultsResultsStatus.java: + id: 9a298fde83ef + last_write_checksum: sha1:7d85098371b30163d1ad8bd651db8fa1743ef3e2 + pristine_git_object: 4a8dfedf40aa781ec577028971049d858420cf9d + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollBatchResultsStatus.java: + id: ddd1ff7a844c + last_write_checksum: sha1:092d7ab0c5506ed147087e3db39c13d9697812a5 + pristine_git_object: 11889407cf1d6eb3f9bf87caf24e435bd8611ad5 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollBatchStatus.java: + id: 94deda663d1a + last_write_checksum: sha1:f7401e8963ca17538c4a6a77719ef1776af92022 + pristine_git_object: 223f12ce43f3bd66c021c967afc454ec3345c3b0 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollBenefits.java: id: 02829278cbd0 last_write_checksum: sha1:85ed6742b88f2589529bda6d72adf925730dce40 @@ -9736,12 +10500,20 @@ trackedFiles: pristine_git_object: b56004ecddf7937335a1129a581ba80d6f818ad2 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollDigest.java: id: 47b8f95b3385 - last_write_checksum: sha1:c9c064f5bd8e96704deb29054ec194f3abb757fe - pristine_git_object: 5e9315bc8e5a309e70fdfc46065bd9f9201e3045 + last_write_checksum: sha1:833c00b8913cdfa5a8f9c714a4aed2dfcabcf872 + pristine_git_object: 72dfbe9d2e3591493cc14a597fcb42bd82e65116 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollDigestBatchAction.java: + id: d00acffae740 + last_write_checksum: sha1:a011d3535180c9f8316bf9bfb7055b47772aa3f1 + pristine_git_object: 04734094d535418669b60a5c26d0f71918a47972 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollDigestResults.java: id: 36084dd5aa47 last_write_checksum: sha1:ce94ec9e9fbbd6e0ef73fcadc7e5a81798676bc5 pristine_git_object: 03781e7f4ec094c3fc435b2501b747cfd0323d32 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollDigestResultsBlockers.java: + id: 3bef1678e072 + last_write_checksum: sha1:90ef8a6511547d07129ae29f804b5c1e3fe3a76d + pristine_git_object: 181be40cc290289e643d7cfb7c7933e5bbca6271 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollDigestResultsCategory.java: id: 98fee00cd37c last_write_checksum: sha1:8d5f12c457ba91fd09b741eafe4e5be3e51473aa @@ -9768,8 +10540,8 @@ trackedFiles: pristine_git_object: 45fc4e1541e8bdbec1b339a6a92e9dda3b14b51b src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollDigestResultsResults.java: id: b704faf8807b - last_write_checksum: sha1:fa15bf9f5577fe63d4d05d5676fb95cdce76cec6 - pristine_git_object: 060fc253466e4d429d09a31611840078f3baab0d + last_write_checksum: sha1:ab0a9f3da662c7c056acb930956ef68608592be5 + pristine_git_object: a0e97f13bad69791c9ce617898284e846ae944f9 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollDigestResultsResultsStatus.java: id: 930e4fb7438a last_write_checksum: sha1:ec6ca43d1616412c80548db7fdbbdc24a3c45a17 @@ -9788,8 +10560,20 @@ trackedFiles: pristine_git_object: e33755dbd34ceeda71cd26230f04590e8fe58bad src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollEmployeeCompensationsType.java: id: 7234e3efdc9d - last_write_checksum: sha1:2007da0299a487ffc7e201551974ffcc981b8d43 - pristine_git_object: a6f566483aa1f07ce3758c86ba287e89b0f2f833 + last_write_checksum: sha1:4c2edbc782bb9c0d517566b7fdb333084d900182 + pristine_git_object: 3004c823178c7f3d6736952ef555a073579f6232 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollEmployeeCompensationsTypeAmountType.java: + id: d57a3b1889ae + last_write_checksum: sha1:1615d0f1c29843abaa3d0e89973fd53f405093f2 + pristine_git_object: 1bdea9f39e4a7518f853ed847efe4bc9f8e664ac + ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollEmployeeCompensationsTypeCustomWithholdingsAmountType.java + : id: b3805fd95cc9 + last_write_checksum: sha1:0d6b1f96f4a41b8f3177a805b824d9fced1ef6ac + pristine_git_object: 6d3547a0f2640fb41cc5186ad7b238c9c2288376 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollEmployeeCompensationsTypeOverrideType.java: + id: cbec772b9c94 + last_write_checksum: sha1:32fe72d5478ab32974d37243b88a21fe312b7890 + pristine_git_object: 9ed92459010bab72dea6ec8f74b61881091d7b81 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollEmployeeCompensationsTypePaidTimeOff.java: id: 95958049158c last_write_checksum: sha1:692e2c5610f75c713e16498aad01331101251f1f @@ -9884,12 +10668,32 @@ trackedFiles: pristine_git_object: a98c81191e2f7373388e1817a57ff5fab689be71 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollShowBenefits.java: id: 7c34098aa233 - last_write_checksum: sha1:ae8da213dc98dd6dcc10d26d58a008c49b2380b6 - pristine_git_object: 12d60c5d02eceb071aa24711bcc7c3d35b20ce0d + last_write_checksum: sha1:c9f64cb0dab91ef1d11e8edf7f7d7f796982e068 + pristine_git_object: 2b9a07a544a7a54843e6cf048f4a1a8a7446f9a7 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollShowCustomWithholdings.java: + id: 6bf3a7ed76f9 + last_write_checksum: sha1:aec0e32f89f02ee8f0cfd699cc73dc7651533fd2 + pristine_git_object: 4abb87c73ccf78067e435fa3fd130d3bc732181d src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollShowDeductions.java: id: 6a488a601cbd - last_write_checksum: sha1:f20c5db07a82cc3687650ac081f2d11f81d77d73 - pristine_git_object: 3a78b4d8a274252d030877ae857dde803ee98117 + last_write_checksum: sha1:310b6d49d149a3ebaeb21169bc3411feed3b53c7 + pristine_git_object: c85eb6bf387164b01236fbe3b27a94e2b3ab7511 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollShowEmployeeCompensationsAmountType.java: + id: 91c50beb7ad2 + last_write_checksum: sha1:1b318bd2bd9d1327da83c77b83ee1b3612c93345 + pristine_git_object: 1d904984db30b2566ee545d495ebb45fff2b9700 + ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollShowEmployeeCompensationsCustomWithholdingsAmountType.java + : id: f8b8c0a08ac3 + last_write_checksum: sha1:4cf571740651267865ec8402e553849b02297506 + pristine_git_object: aac78e736af68ed589c07105636c3cd1ed9080cf + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollShowEmployeeCompensationsOverrideType.java: + id: 59f669884af8 + last_write_checksum: sha1:ccdcf78b06752a444fc362ca2aeb9617edd0a26c + pristine_git_object: 779e72c1597f1fbdeaaac0846e4cb458ff26a8f1 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollShowFederal.java: + id: a37fc95b6bc9 + last_write_checksum: sha1:713e3fbb25d7e7154721219acaabfc4b52ce8af0 + pristine_git_object: 88d9594ceeddde8e5f435ca8ba9f8a83c2c5a17a src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollShowFixedCompensations.java: id: 715f4216e953 last_write_checksum: sha1:a9d2461f963a7d0d8b51bd81e83d38e02325dc53 @@ -9898,6 +10702,10 @@ trackedFiles: id: b5e89749fd87 last_write_checksum: sha1:8e9ee40ae14296a7b4e30e742eca1810e49cfb72 pristine_git_object: 1fa3f3eff25044d7e1f2b88fa170431318510b6b + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollShowOverrideType.java: + id: 14db78277510 + last_write_checksum: sha1:d8dc9c0edadec2eb950ddaa56665aba5d92c6d4a + pristine_git_object: 053609d0acd5e05b14a3462fd3e0791684ba0c49 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollShowPaidTimeOff.java: id: 2288c25dfb28 last_write_checksum: sha1:72d8407d0381ff7c8cddf3476a204c108b32b40b @@ -9910,10 +10718,14 @@ trackedFiles: id: 89d09726b8bb last_write_checksum: sha1:dd080493b3335345356a89c378ce59fa8addbea9 pristine_git_object: e554d7ca0cde74f1ae10546d1b0b50c3e4aa429b + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollShowState.java: + id: c32f093ab567 + last_write_checksum: sha1:7c685819d171f76fc477b16631e804cc2d1b3a43 + pristine_git_object: a9d94a5fee51411626d12722ab340364260c3352 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollShowTaxes.java: id: 4ae18c0a7d0b - last_write_checksum: sha1:b571739f27159045ba22a3ff01b1cb1ab143c1ef - pristine_git_object: 169146d473e90f59c516bf1bf6deb0c6760b5e70 + last_write_checksum: sha1:13989e73c9e7a9db789fc11e9e0797fecc84317f + pristine_git_object: 96e40460d4468dee93bf896a3b1b230977046caf src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollSubmissionBlockerRequestType.java: id: e24e7c78e246 last_write_checksum: sha1:9f8dc87d5a1da69304b59ef6ea879e7d34904820 @@ -9944,8 +10756,28 @@ trackedFiles: pristine_git_object: ed66a506b24dd1edf4c54ea5741a3e422fbf70ee src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUnprocessedEmployeeCompensationsType.java: id: 9c586874a8c1 - last_write_checksum: sha1:82953932a98a55c46012f33b909cde9b4dc805a0 - pristine_git_object: fbf7ca4f0d7e1bc84db95f3e72fe7002960f6057 + last_write_checksum: sha1:120e57ab2a9ec0aeffed5553d7b141886023a03b + pristine_git_object: be309dfc67609ab1f1605d98c50f228dc06279af + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeAmountType.java: + id: 1cafe7b98694 + last_write_checksum: sha1:d14f4f2fffda216b6f8b30a714b88ad00ffc34db + pristine_git_object: 424a37b86277773a00737119f2b5569ddedc7818 + ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings.java + : id: cfe084e12bab + last_write_checksum: sha1:28c26da5ddea72baa45d5855f5b8c18cd11a6cf1 + pristine_git_object: be3b81d17d2316f2d767da9f6f44756bf50222ee + ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsAmountType.java + : id: 18ca5ab2230f + last_write_checksum: sha1:421b4887fe518503a9a93921bfbb002028477c2b + pristine_git_object: dc015f707b848757793d054e2bd8fa72cb8e72bc + ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsOverrideType.java + : id: ddb6a27d19b4 + last_write_checksum: sha1:4ac312b63dcf7cdb47fd133685ba22bed8b9e384 + pristine_git_object: 9e46fc8074eddfe7505d16551e447c98a1c74ced + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeFederal.java: + id: 99b57796e7a6 + last_write_checksum: sha1:76e2112e3eb76af527364b51f485e4458a779663 + pristine_git_object: 6ee4e4f41aaf733f83a7ab1aa71cedb866c7db73 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeFixedCompensations.java : id: 1c4e8245b598 last_write_checksum: sha1:b0f61019c076345212061d9396b4f6000985c869 @@ -9954,6 +10786,10 @@ trackedFiles: : id: 3fd9100a7a44 last_write_checksum: sha1:87e3ae50d42c6af5ccb0714b67fa3d88d66d47c2 pristine_git_object: 2bc05a6112dae51f16b37aa28ec489f165d80c18 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeOverrideType.java: + id: 29ce0e9518f7 + last_write_checksum: sha1:c0975d33f93cda15302ef9fb01b78619a5eceadc + pristine_git_object: 071a56106598c456358a8134b6716159192c7f0c src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUnprocessedEmployeeCompensationsTypePaidTimeOff.java: id: b864a2366535 last_write_checksum: sha1:5eaf4758a12c0fbb4bf245752523c1b840524b4b @@ -9966,6 +10802,10 @@ trackedFiles: : id: f933c9460de3 last_write_checksum: sha1:e31fc3e349c8b4907293f5aaad0e85184752a16e pristine_git_object: 321a84072af86f66b73f69fab5e4f2136e351001 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeState.java: + id: bdf2cb8685a1 + last_write_checksum: sha1:4e5e2b95991467a13fc7c65de3a6c327a47d9e0a + pristine_git_object: 85af26e6e03350439a6a2ca65aa272ba8aece247 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUpdate.java: id: c20eeeff1618 last_write_checksum: sha1:1a600dfeb00a13146d2c3be5cfae027c22bbae2f @@ -9974,14 +10814,34 @@ trackedFiles: id: 12f8d17b04b7 last_write_checksum: sha1:68f77eced5ab80352ed93a094d7ebe24dbdbdf3c pristine_git_object: 268742401dd958f8759879c9a925b10e3e8af0d4 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUpdateCustomWithholdings.java: + id: e43dcd702548 + last_write_checksum: sha1:3184ff560c81f326b1c42b8e35f74fe99e251092 + pristine_git_object: 858bda90880ce6475cf6dd869240a1e5c2406f5b src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUpdateDeductions.java: id: a71174477967 last_write_checksum: sha1:0ffda261335f59818d29f0f1a943774c06532e74 pristine_git_object: e9795a2cc53a5c11e621ffde8abc57a5fa189ad1 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUpdateEmployeeCompensations.java: id: 0700a45b7448 - last_write_checksum: sha1:3d80698baf55578c82a5108ae3a247f1d100726d - pristine_git_object: 6653e9e10ee1f7ba8f17846f7aa923059a817ae0 + last_write_checksum: sha1:b74def1973d9e3c7bb790abb7a98eab01c8afb09 + pristine_git_object: 638a62e5ef266a668a60201727c43d5aa68be5ab + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUpdateEmployeeCompensationsAmountType.java: + id: 97a057e93464 + last_write_checksum: sha1:0b164137ce0fb2a1ef6feba5c146b0db0c11ee19 + pristine_git_object: 6ac4ffe94590fe2362e8cad9efe653662df073b1 + ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUpdateEmployeeCompensationsCustomWithholdingsAmountType.java + : id: 48a3eb643d4f + last_write_checksum: sha1:d49bb89ac2224e653df9fb6f1c90903eb72519fd + pristine_git_object: 0ce1b26c827f96c5605f0a10e53968929f15a31b + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUpdateEmployeeCompensationsOverrideType.java: + id: 6ad4314ca599 + last_write_checksum: sha1:eac15152e5dbac82bd73088179ecd3f4310ce533 + pristine_git_object: 33e48ae21313d38cc247513e522d3f50f2906d9d + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUpdateFederal.java: + id: c65dbbf1de56 + last_write_checksum: sha1:46f564c7ee9ebec621af6a27934ba7a4cabe3595 + pristine_git_object: 9740182d7b15f5a5f1aa725f63dc769e8c85f1f6 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUpdateFixedCompensations.java: id: 879408251c7f last_write_checksum: sha1:ea0e243d3af813bbfc44b24950c73cdc015468a3 @@ -9990,6 +10850,10 @@ trackedFiles: id: 63504b7ce780 last_write_checksum: sha1:78a64a1b824604dc9b2f3049abcc4033a165e2e2 pristine_git_object: 4be72d38b424f90264b4f007131a3ca5a44f4d1c + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUpdateOverrideType.java: + id: bb9c4a8a943a + last_write_checksum: sha1:b50d1af123303aa0c9d18ba507389bae6d834625 + pristine_git_object: f86772a5e7e6c8f16ea7526fc337cab3bb58a35f src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUpdatePaidTimeOff.java: id: 6c87d8e3b233 last_write_checksum: sha1:17a4c7f7e3452d995eeb21e9f63681ce2a07bda4 @@ -10002,6 +10866,10 @@ trackedFiles: id: d9050467a699 last_write_checksum: sha1:0db2851e38e96e238823a0a5b64d85c5221c6435 pristine_git_object: e18b3798b38b63f5c7ccfeefc6d6aa60247febb5 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUpdateState.java: + id: 32e693c34b0e + last_write_checksum: sha1:20e50c64ab2953368eabebbaf37f03622cc3aa98 + pristine_git_object: b1311363c5b0b11ec9717e0d84ac2e6114da4540 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollWithholdingPayPeriodType.java: id: fd6bca582ca7 last_write_checksum: sha1:c021f14386608c1eea37d9eabfb4e12015375273 @@ -10016,12 +10884,20 @@ trackedFiles: pristine_git_object: f5ea4e6a10ea5365974154c50e8736e01e4af1fd src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PeopleBatchResults.java: id: 551b32345bcd - last_write_checksum: sha1:63d3cec3644c240659287ef2c28919d6cc01b2d8 - pristine_git_object: b3ea601a101d3c93480e8d49c17ba9e497107e35 + last_write_checksum: sha1:e549f2aa9c950da97661e39b4001b9c6713623fb + pristine_git_object: 8d702000d663f5698557a08cff197a21ee5018d3 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PeopleBatchResultsErrors.java: id: a9e7a776e546 last_write_checksum: sha1:6a6ee729047e79eaa2cbf5b20aae988e13821ef0 pristine_git_object: 20044566552806893def43ef044ecc7e6535902b + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PeopleBatchResultsExclusions.java: + id: 650a6d21d937 + last_write_checksum: sha1:ca7bd78d366f176acd0ab800b80facd8cf868f94 + pristine_git_object: 51b59fd63d6fd6db24be539e990a28272cd46df4 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PeopleBatchResultsResults.java: + id: eb46172e0a45 + last_write_checksum: sha1:e86298a8919b82dc8d3b12491e01791a9b847497 + pristine_git_object: 5937e6e3f2b13a1628cb845459173d7074211f84 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PeopleBatchResultsResultsErrors.java: id: 74157c4d86d3 last_write_checksum: sha1:e97ec536c8e7e604d82286f7e7f320d761555b48 @@ -10108,8 +10984,8 @@ trackedFiles: pristine_git_object: 6d219e0ddb8c08e65664e4e5e998419c6e887bee src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/Rehire.java: id: fdfb3062bfb4 - last_write_checksum: sha1:526cf851f05d025d4cb59154acecb52061d1a55e - pristine_git_object: caa8269715347dae35cafe1d4d64aa650d9074a0 + last_write_checksum: sha1:31e9f6069f5ed23284ce61853d81e587d871118d + pristine_git_object: dc4a25ad398ef4602aaa61b1aef6b118eef3516b src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/RehireBody.java: id: 735a80487a38 last_write_checksum: sha1:cb43ddf1c6bffaf509eb29c17713a6dbd049f4e8 @@ -10118,6 +10994,10 @@ trackedFiles: id: 73d57a57259d last_write_checksum: sha1:5eaa513499ae5434d47408b7dcaf51aa022fa058 pristine_git_object: 25495c1c1421ebe1a2971e57e7572c0c5c973006 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/RehireEmploymentStatus.java: + id: 62b56dd1931e + last_write_checksum: sha1:74ce50bd1b0a87cdc586c42ac5a450b78701adf6 + pristine_git_object: 113efb03f05eb7d451a28729c4a3c391843546b0 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/RehireUpdateRequestBody.java: id: eae8af2714e6 last_write_checksum: sha1:ac52ae21c0c9b8e70aee461b6b86f1c6cd6c3ba4 @@ -10138,6 +11018,10 @@ trackedFiles: id: 8df5877be3f0 last_write_checksum: sha1:83049f2c1fbc7a59e58593d7366a197ad0b2bcb0 pristine_git_object: 0a3bc76e4967f09c19de394d2d7c1760a45a6066 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ReportType.java: + id: aa21a9977819 + last_write_checksum: sha1:17c8089c883fb5b6ef715d294b740f8a9e205222 + pristine_git_object: c1dd3c6f7c74b0d970f3b0f319601cee5ca16f52 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/RequiredAttributes.java: id: 5e61650584b5 last_write_checksum: sha1:20fb9a8ab817364a35be9853af2e36243d74e726 @@ -10172,8 +11056,24 @@ trackedFiles: pristine_git_object: 635227eef5aac656aa359e1ddaf54843d4944bf6 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/Results.java: id: 09256e969960 - last_write_checksum: sha1:1ed89ab62e9f62e19e098846e8ab0fdb80e3375c - pristine_git_object: 6eaf90dbc0ff2cf60ca1cfdb6351b6707a9cd18c + last_write_checksum: sha1:cc9ea396f6f4b7b310dbb6d53e4293239fca7c16 + pristine_git_object: b47a8037dbe06c6956cfe380d0ee6519f3705654 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ReverseWireTransaction.java: + id: 58fced0fd6a6 + last_write_checksum: sha1:a84bf66b11821186d4081ea404b946529b1eefc1 + pristine_git_object: 38535e8c23b54e4b7600b7334389d4b16b07befa + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ReverseWireTransactionPaymentDirection.java: + id: ccfb6a6be2f7 + last_write_checksum: sha1:904bdfcd4587d4730ec25b833118847be3e5d738 + pristine_git_object: b0ef616fa1683e3ce2e6bec8cf443a224ff2fa36 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ReverseWireTransactionPaymentEventType.java: + id: ff10eeca6c52 + last_write_checksum: sha1:d137e0b4e355dddf4a05dbc7d42eb40cf20eb15c + pristine_git_object: 57a5f3b348fcad975dbdc41f59c968620aa52f2f + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ReverseWireTransactionStatus.java: + id: 75ecf0b496d2 + last_write_checksum: sha1:e961bc217319ae86c8daf8f9a2e01d8be9149821 + pristine_git_object: e6c55f6823aa8d268e78dede6defc1f51f4649f4 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/Role.java: id: 4ff78e2bddc3 last_write_checksum: sha1:8076e9719a0ebc6024a805b2d3caf1501c04b1fb @@ -10266,18 +11166,22 @@ trackedFiles: id: 9b40c8a77bb7 last_write_checksum: sha1:a5f663ed29f341cb96a4a9c803e796b9a07a934a pristine_git_object: 224ebeb5b7076222e86361782f1db48fd9758b68 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/State.java: + id: 1411299e3b19 + last_write_checksum: sha1:f6c7c89709db14027167308ab3c6f237d4968af0 + pristine_git_object: 02077163967d4d6db93b9463f5c51e7983a26637 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/States.java: id: 1f3f0f06193a last_write_checksum: sha1:5789132dfdc543ad05775459bd364458ebf24625 pristine_git_object: 58e6cbeb5b07d20df5291c996e5623a6fdee998b src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/Status.java: id: 04620ff85a2a - last_write_checksum: sha1:3c180f37d1e7d3b61e84cb1b41c8e072dfe8317b - pristine_git_object: 2ef50316e91c2a3ba3ad113a1071e26c062830bf + last_write_checksum: sha1:747ae1b5c4ee264619a7110da68d181512aec052 + pristine_git_object: 537fa336fead727798b61adde37523985d6eab18 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/SubscriptionTypes.java: id: a25b59c413c1 - last_write_checksum: sha1:acd67b42572f4230fceb650cd78acef6a8cb591e - pristine_git_object: 5f0347cc0717f82d49570a67b71ac193d33ffe55 + last_write_checksum: sha1:0f4ff03c21396f2d4091ac74ee26dc4fc39a745d + pristine_git_object: db5be5c694cff2df6be9e2e2a943ae66c0a80213 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/SupportedBenefit.java: id: 7e4eba9560d0 last_write_checksum: sha1:5f14302f49fbe9ce1763a5271045d86e8c2d89ee @@ -10294,14 +11198,22 @@ trackedFiles: id: 981ef11c0100 last_write_checksum: sha1:1664ece068625627aacd7d61af4b0a6675e8afc9 pristine_git_object: 1e277b41191fe962a69379038eb5c395de3324b6 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/TaxPayment.java: + id: c9f5ed494156 + last_write_checksum: sha1:278b108d0e238ba262fa87a0f80cec9935b3bdfa + pristine_git_object: c52f28cd696285aa0eb82740931138fae4c4b6fb + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/TaxPaymentLineItem.java: + id: 0340046b794a + last_write_checksum: sha1:285f725ee6aa243986845046be28df8490b67eb0 + pristine_git_object: d85fe1694b0519610936ab1ce5ca6a3066f6586b src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/TaxRefunds.java: id: 7c4b1f0cf9d3 last_write_checksum: sha1:927492b2067a2450dcd10d440747666ca957fd47 pristine_git_object: 7ad573781eff9e5a060f1717966985363be62014 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/TaxRequirement.java: id: 1404ca585b28 - last_write_checksum: sha1:2c8f08c6fef66755452f5466ad5f39086db9d1cc - pristine_git_object: 4581798665c3144734f2c5109fb9332dec2216b0 + last_write_checksum: sha1:4e6b5510b09073919e74a1def99126f0f2a20d6a + pristine_git_object: a3c86e48bb7123b2e324b6aa7081397f54c617c6 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/TaxRequirementMetadata.java: id: 9788b4a187f3 last_write_checksum: sha1:a7ed1e425c8bb6e646624b76b7eee3cbb5ef8a0a @@ -10418,6 +11330,10 @@ trackedFiles: id: 69e7fc897266 last_write_checksum: sha1:3fdb0a335d8746d298a0dc8d43045b4f2d423f6c pristine_git_object: a065a8e6001510c6cb98c2b3a323b9749d55a9bd + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/UnknownBulkReportItem.java: + id: f8f2f0f63ab6 + last_write_checksum: sha1:bb34c27c4927fa607d41b6efda65c03d592ab471 + pristine_git_object: 0302595dc997a4a5956d7e07bfa195e8603d32a2 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/UnknownEmployeeFederalTax.java: id: 888be8f6ca29 last_write_checksum: sha1:adb30b9310c2a5c4b38cdad425c97d09a67433b6 @@ -10474,10 +11390,6 @@ trackedFiles: id: 087210c820a2 last_write_checksum: sha1:1a5053c546c609f2cc465e703301e3665eb6bfc4 pristine_git_object: 425d110cf609d2f5365d0c95d82199f98cb602e7 - src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/VersionHeader.java: - id: c7b82d760576 - last_write_checksum: sha1:75762e42b4f64513f3869893b0e182b56a9e7bfd - pristine_git_object: ad5857209accc2c72ef3be73375b058b908a3bd2 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/VeteransDay.java: id: 6a46d4715899 last_write_checksum: sha1:243792d9b628badee5fcad931b6c65e4b8004d44 @@ -10490,6 +11402,10 @@ trackedFiles: id: 13513782d4b3 last_write_checksum: sha1:945aa56a61ee872ed15b397ecb7667b9798a2117 pristine_git_object: 908bf6bbdc9a9cccc11249c5a1de21f87fe8cdc8 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/WarningObject.java: + id: 5f5d1de44c96 + last_write_checksum: sha1:44e010f8077c31de6c671285caa59ea6a36bd354 + pristine_git_object: af07f30c91392fdd0d0cae8e218bc93cdffd860a src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/Warnings.java: id: c83c406fab83 last_write_checksum: sha1:ca67d7fe0a67adace87bdf3d75a30fb17fe35ca9 @@ -10556,8 +11472,8 @@ trackedFiles: pristine_git_object: c461caacdebb4f33f7e67d6782cd5f31f7cf9faf src/main/java/com/gusto/embedded_api_v_2026_06_15/models/errors/ConflictErrorObject.java: id: fa20878299b5 - last_write_checksum: sha1:069c6cbc9f48d1f5d5ba44361c139206937684a5 - pristine_git_object: 2323eb0a63a2606d4abaf4051333fe01a967a42e + last_write_checksum: sha1:6c281a9a7fca7351ddf3de756ee6abc6933047df + pristine_git_object: e2a814d7aef43812a7b2a72ff9f054b61ae920da src/main/java/com/gusto/embedded_api_v_2026_06_15/models/errors/ConflictErrorObjectErrors.java: id: c91b67652526 last_write_checksum: sha1:31cb830d4d639711342eac3f741966c7d7205143 @@ -10566,26 +11482,42 @@ trackedFiles: id: 3e87b347c908 last_write_checksum: sha1:e951a09c9e0c2493e087e11a859bb50736a4b10b pristine_git_object: c8e36eb60d3096402914962a4dad73ace6d4486c + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/errors/ForbiddenErrorObject.java: + id: de6c8b8874ca + last_write_checksum: sha1:02bddb7a5df3446980887fd591def8dbc39974d8 + pristine_git_object: 7d61779c532bd198b86e782a3fdc8fbe00ca0340 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/errors/GustoEmbeddedException.java: id: 759683025ef5 last_write_checksum: sha1:2ddd42d61dfcbd33fff2b84f144acf32c6d83302 pristine_git_object: 6908f36370c058544b7d292613fff7f75a20ac99 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/errors/Metadata.java: id: b9aecc8416d7 - last_write_checksum: sha1:00603b5d44b5b7f771d68db1c62465bc7135bea5 - pristine_git_object: ff22368e84db4c5c19b6c85909c43594159cf536 + last_write_checksum: sha1:a5e9855bc09d056967793c253e81d6c3109033b5 + pristine_git_object: e471d1c9c37e3077bcb4765d97ee564d4e4645ca src/main/java/com/gusto/embedded_api_v_2026_06_15/models/errors/NotFoundErrorObject.java: id: 11f8ccfa71dc last_write_checksum: sha1:6f5abe4b31be344b07fd15947b9726ceaf4b7769 pristine_git_object: da36f183b4906f64c1fb5f2f50d997a27c201671 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/errors/PayrollBatchConflictError.java: + id: 81b46837dc8d + last_write_checksum: sha1:b3932c78aab15bae7523dd6d70dc6be5809e3e71 + pristine_git_object: cc3d204f2318c40fb37f54bd593d50e7359303cb + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/errors/PayrollBatchConflictErrorErrors.java: + id: 39c935ac4282 + last_write_checksum: sha1:b5be6c809e3f3da73c60c081ec5156b4ea8f1f0c + pristine_git_object: daeafe8fa9c9d287103e730d97b9a3aa6d400a9d src/main/java/com/gusto/embedded_api_v_2026_06_15/models/errors/PayrollBlockersError.java: id: b0f69f5c6469 last_write_checksum: sha1:7bb98c8d2317f4c054e6ffe0066bb653657dfbe9 pristine_git_object: 20644ade612ee56d14fa07e9f5fe6dbb7ef14e6b src/main/java/com/gusto/embedded_api_v_2026_06_15/models/errors/PayrollBlockersErrorErrors.java: id: 7b64fa30f06a - last_write_checksum: sha1:dfbddd94e0abb600f208c4d4b62aca1db9be4c4b - pristine_git_object: df984fda8ab352f6013fec12b6539948d8090260 + last_write_checksum: sha1:25328db64056bfdca30f94197c51914404346b65 + pristine_git_object: 868919b4c531577bd85f4a599145deba37040ab3 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/errors/PayrollBlockersErrorMetadata.java: + id: e9831bb08f15 + last_write_checksum: sha1:adbf3089c00c4d3de1fdd4f5ccc72f9b84cfcd50 + pristine_git_object: 0eec5f6fb05124af0be7dfe4df5b23768b4cdc38 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/errors/PayrollDigestConflictError.java: id: 0976748b1110 last_write_checksum: sha1:da612c28baf36e0c8df89464c60db449383af1d7 @@ -10616,8 +11548,8 @@ trackedFiles: pristine_git_object: 7996b33b6fe1cadbe96e657d6f713fef155b27b8 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/DeleteDepartmentRequestBuilder.java: id: 204b7db1a12a - last_write_checksum: sha1:4033e26dae4c37b921e002e302cbb9001a116262 - pristine_git_object: b7c13ff1b2bd1d9f83119c85c4debf9269f89da8 + last_write_checksum: sha1:2ced37b9d7d7405b21f1cd8e1fe7197bf107e435 + pristine_git_object: 6a6c7a02e8b8d239a31c81d2c0bc563e5f4df5ed ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/DeleteV1CompaniesCompanyIdBankAccountsBankAccountIdRequestBuilder.java : id: 6f9769d061f6 last_write_checksum: sha1:43611ae50c3d44870ea1c3ebe9b576603c2b802b @@ -10632,16 +11564,16 @@ trackedFiles: pristine_git_object: 2330f54108d8317ffc9dd20a37c1a28cae66b8e0 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/DeleteV1CompaniesCompanyIdPayrollsRequestBuilder.java: id: 38fe746a7ad0 - last_write_checksum: sha1:5a889847afaa9589ba8204b748d7cb54bb08f43b - pristine_git_object: e122dd79f384905a50c7fcf2127733e84de52e38 + last_write_checksum: sha1:1140e77333ddb00d9321e5bb22aab735f842ef2e + pristine_git_object: 38618b1b9d9e1e61572d3788f912df92ebfe16f2 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/DeleteV1CompaniesCompanyUuidHolidayPayPolicyRequestBuilder.java : id: fdb5e03c13d9 last_write_checksum: sha1:84af9e50dd1f5ff7c64e47fc465b3ebe5d057c29 pristine_git_object: a42afe5f78074ebdac7f5cb93b60ff915f1ad46d ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder.java : id: e7f276c2250c - last_write_checksum: sha1:0c44fefa23f4d1327e542d0a964654dce6262d48 - pristine_git_object: dae30532377a3a577c100f9982d2ec23185731e8 + last_write_checksum: sha1:09e0ad5c5a43cfd31461e56941f42e928a440f93 + pristine_git_object: 210cb75a8aa7b6ee63c1dc425cb26b6136af31de ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/DeleteV1CompanyBenefitsCompanyBenefitIdRequestBuilder.java : id: 527cd7b933a8 last_write_checksum: sha1:7faacfb9de0d74ecc8ac8c32681375726321f03e @@ -10652,20 +11584,24 @@ trackedFiles: pristine_git_object: 473f008eb2f6ded39016624c80c38c60aa2815f6 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder.java : id: 319cdeb2df25 - last_write_checksum: sha1:95d4ab780cbc2e41de65c8e3fba4b06fa25a92c0 - pristine_git_object: ae2e022d759c6ce94719ea909f3fef2114b95acf + last_write_checksum: sha1:d317971176128f12f1b12dbce1257af561eee473 + pristine_git_object: 76e6b79864cac58179073f39f56637d496f4ffbb + ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder.java + : id: 61908990412a + last_write_checksum: sha1:beff89a4a2d5518951bc7790a7fc81a48808dca1 + pristine_git_object: 131de7b9b8837649b154d099a1696391de0465bc ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/DeleteV1ContractorsContractorUuidRehireRequestBuilder.java : id: 592c14e4399a - last_write_checksum: sha1:f65e26f00fb3133649b368b844cf86a04240ec52 - pristine_git_object: 395b751faee5fb0ee3f1126ca8668c3b11a4549f + last_write_checksum: sha1:dc552a8e2c8269745c934bfebd1f4bb4d81870c3 + pristine_git_object: dc4af8be388e47d26d7fd8c7250b4639b4b7ce6c src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/DeleteV1ContractorsContractorUuidRequestBuilder.java: id: 42e46478a104 last_write_checksum: sha1:5b6a4eb33c1aee98931c9df66e821203e7ecc27c pristine_git_object: b6bcc7763bb0b1831356ff1a6c7efdc5ccd4c5bd ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/DeleteV1ContractorsContractorUuidTerminationRequestBuilder.java : id: 4eec3311dbd4 - last_write_checksum: sha1:6009198d471fcb5e33d602957bf6ed3536a2901f - pristine_git_object: c3a33ad8739c02967fe273c2afe19ab4fcdac515 + last_write_checksum: sha1:a0868fccb4c55907f272e2528680c331ff6de11a + pristine_git_object: 916890e11e99d03ae35bc4f91056ca6a2e0e0b99 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/DeleteV1EmployeeBenefitsEmployeeBenefitIdRequestBuilder.java : id: 9592141faaab last_write_checksum: sha1:5f29e0fc3a49a6e8fa30fe08ba4f8d4863dbc9dc @@ -10682,6 +11618,10 @@ trackedFiles: : id: e368f8d7c3d2 last_write_checksum: sha1:c7ae5232f05d31c3f556d61bb8d3e957fb561f17 pristine_git_object: 524508dcb545c2226b2c1e75eef7797dbbf3789b + ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java + : id: f252f660f68f + last_write_checksum: sha1:9c49710492b87977ee15f1d0f4f291e80e213531 + pristine_git_object: d5b5112131ac89c8d805e19eefba8a740cf155a8 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/DeleteV1EmployeesEmployeeIdRehireRequestBuilder.java: id: f0d0331994b6 last_write_checksum: sha1:6be7ed71e5a08adeaea4f65635b98a649955c025 @@ -10700,8 +11640,8 @@ trackedFiles: pristine_git_object: b4be6ed320bd445f94871d03f22a69585fd6ef40 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/DeleteV1JobsJobIdRequestBuilder.java: id: d74139b6a0ba - last_write_checksum: sha1:3fa470011f0583bb9902b7e6f9d9f1fc1d6078dc - pristine_git_object: 3bf0218435dd77d4d2cd0f6d1dba112464aa39d6 + last_write_checksum: sha1:32021f56e099a74f51d362249b2bc58325c84ec2 + pristine_git_object: c255040d862ed068064743a2b3a389a5577adf63 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/DeleteV1RecurringReimbursementsRequestBuilder.java: id: 854964daf37a last_write_checksum: sha1:0da36d145ba7415dff491c42cdb809877571b347 @@ -10712,12 +11652,12 @@ trackedFiles: pristine_git_object: b4353ea2edc1b3bef28f5882f4821a3a367af688 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/DeleteV1WebhookSubscriptionUuidRequestBuilder.java: id: fa7ef3d1b6de - last_write_checksum: sha1:0edf07cfd579477b3b1ba954e16dca709f583778 - pristine_git_object: 3f85d6b2f86be8f8270655218bd89fa536694ecc + last_write_checksum: sha1:639e27bc6c8eeb3d75de124e4e1c998fc4dabd21 + pristine_git_object: 70e52158a78be172d25813cd9134a597d53ff041 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/DeleteV1WorkAddressesWorkAddressUuidRequestBuilder.java : id: 2a99d7cc613e - last_write_checksum: sha1:c9dac91b2e14d2131323e67fc9cdcc6fe62fe715 - pristine_git_object: 12b22e2d4925f0fdf34600e7bcdc7433aa43aa81 + last_write_checksum: sha1:5def319c00979358b9ba95f324004e6a42f1d646 + pristine_git_object: 2ac206911125e29bb3aee5b8343b9d57c91df637 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetAchTransactionsRequestBuilder.java: id: e8b62758d320 last_write_checksum: sha1:c6471b580b7a247e5e4115239752d3ee7a7ec485 @@ -10740,20 +11680,20 @@ trackedFiles: pristine_git_object: 8bdec79019f453ce5c371a70b42f2bac5ba2121d ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder.java : id: 9b3aa87f35d3 - last_write_checksum: sha1:f20189dbb353f54cb25ab0d56e8555c07ef08834 - pristine_git_object: 37d5c8ed6174518822528d2f7c2eab5f01698e43 + last_write_checksum: sha1:3ccdabe210008b8fcf55c122299c53e99b054e87 + pristine_git_object: 96b43d2eaade2f314798d16334ab62186d07eb08 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetCompaniesDepartmentsRequestBuilder.java: id: 0abce7f14f76 - last_write_checksum: sha1:c6b508dea679ca533af01eab4ff515588bf3e207 - pristine_git_object: 8b6bb07d63c7f473d46e92c6919f46b366a34e95 + last_write_checksum: sha1:efd107754d798764da9eb3077799a101ea007c84 + pristine_git_object: 675a6369d6483da135bdb0676436fe25d7073092 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetCompanyNotificationsRequestBuilder.java: id: 7d16c0d33300 last_write_checksum: sha1:42f2bcbd2ebb6555ba9638a3867f7a14fcd7dfe8 pristine_git_object: f234c0f61f99ba1aac5174a462eb63cad67ed693 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetDepartmentRequestBuilder.java: id: c250ee5668bb - last_write_checksum: sha1:673e0e13c926c3dd809fc52a8f35ac688d709051 - pristine_git_object: 06b5e44b1aa80bf65ac790a252254a2b802fc525 + last_write_checksum: sha1:e6fe88b3fe453a8935f10dea94e6e363d63bf6ba + pristine_git_object: 62912b963a1cb4c517e0562b71be058bb3f26ce7 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetEmployeeYtdBenefitAmountsFromDifferentCompanyRequestBuilder.java : id: d131a6b5d096 last_write_checksum: sha1:d62eef6099cd3afd461621e0b6cde1f2ad33648a @@ -10772,8 +11712,8 @@ trackedFiles: pristine_git_object: fa7509561f2233cd9658574d9fbcb8b6d8621b15 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetNotificationsNotificationUuidRequestBuilder.java: id: 12fc2f64efc8 - last_write_checksum: sha1:d99185456aac975899ce96b225ea6b6b2d173f6f - pristine_git_object: 03a3aad2ced410496894492698966cc620c8b75f + last_write_checksum: sha1:89f5595b7b3e191e3dc82af04f057a359a77c477 + pristine_git_object: 67b6ed28c8cbd422609b5a9197da31f22285f523 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetRecoveryCasesRequestBuilder.java: id: 09051b36354c last_write_checksum: sha1:ee5e91f19af19b5a0d21286ec2e0333c01826495 @@ -10782,6 +11722,18 @@ trackedFiles: id: 9719a3606feb last_write_checksum: sha1:2abf770b18b97374bc061bf2d6fd1101bb702019 pristine_git_object: 40d8e79a735343aab038d8143653bd09baef1a63 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetReverseWireTransactionsRequestBuilder.java: + id: 3fabb7f7ff11 + last_write_checksum: sha1:11f2522c784f91751f3c5bbf5e619c2b809b3aef + pristine_git_object: baac98420367ef79e4452167589d144488dac813 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetTaxPaymentRequestBuilder.java: + id: 42528119ed44 + last_write_checksum: sha1:ffbde7b67047675d24d1c5d41619a56857d3eced + pristine_git_object: 856e2f45b90ce9def404e43dd2800bf2ac07dd11 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetTaxPaymentsRequestBuilder.java: + id: 9769f018d010 + last_write_checksum: sha1:258cce529a0d269551677b382003e8f73283619a + pristine_git_object: 3e77db1933bb1218cefcaf8fd49fdbc9f7043ea8 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetV1BenefitsBenefitIdRequestBuilder.java: id: 2b2964b809bf last_write_checksum: sha1:13d383a90a062aaffe420439b8cc6571a24f5609 @@ -10798,6 +11750,10 @@ trackedFiles: id: f0b734b5c86b last_write_checksum: sha1:722a3bbc3bd2c390edd6f7481561563e8a038a93 pristine_git_object: 46702388692a31e00d8f975f6c70ea31fb6d4329 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetV1BulkReportsRequestUuidRequestBuilder.java: + id: 48ddb068c455 + last_write_checksum: sha1:459d215a0177372d14a02cc91256c4f5a2f8e407 + pristine_git_object: f1fd18ecaf4a85252ae2d5569ddc4831877a4b24 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetV1CompaniesAttachmentRequestBuilder.java: id: c11ee3388480 last_write_checksum: sha1:716afa9d671f68c8efa13971f7376b14973f55a9 @@ -10836,8 +11792,8 @@ trackedFiles: pristine_git_object: 953ee149fb88350ce6b3543b3d892781c94dc81d ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder.java : id: f56aad8a2985 - last_write_checksum: sha1:58efc5916c4f1927261e2c93c619a861fd44700f - pristine_git_object: c617af7a9f0fe29e50292513f115922dd3be01d7 + last_write_checksum: sha1:8fd78f40ed8454dc17d6644aef74715e66559a73 + pristine_git_object: 1a279fdd5373b0e3e0b0584d0cc8cb3b7b457fa6 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetV1CompaniesCompanyIdCustomFieldsRequestBuilder.java : id: 1ffd25f13cee last_write_checksum: sha1:b611289f9ac64c7fe38a217d8ad101551467c35e @@ -10856,8 +11812,8 @@ trackedFiles: pristine_git_object: 6ad6bfd3c0e3c3712ed932f495e484feb4a616e7 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder.java : id: f6bfd3a5ddd6 - last_write_checksum: sha1:43db9a267936305a054bbb9fc180dd4db7a044c9 - pristine_git_object: 7f8062c35f15195d5c7d29bf70bd63dbecde3bea + last_write_checksum: sha1:20da013e64604e2aafc2cdfb3072b2ad08fb4adf + pristine_git_object: 218d2b99684a25839aedb47e101d22811ddcf6e6 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetV1CompaniesCompanyIdLocationsRequestBuilder.java: id: 062ac8a5229e last_write_checksum: sha1:ebdd72f47f686bffe2fc28917bfe46c0f8ececa3 @@ -10884,12 +11840,12 @@ trackedFiles: pristine_git_object: 3af8a50be1402dd17a1505a9944014e7fa8428a8 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder.java : id: 881c5e89d2f6 - last_write_checksum: sha1:3938b41050d0ac2b831953bcd7c5e43ec1cabcfd - pristine_git_object: cc23698336d31946cfcc90495a13ce58b4acf999 + last_write_checksum: sha1:3652aa89cc9ebdccefa9aa0a670f28698794ff7d + pristine_git_object: 9f19f0aaf95ff34e57419eeb8ec0bcb145860611 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder.java : id: 604e75395892 - last_write_checksum: sha1:b54226d5b2b2bf976f892379b38981736f5f79d8 - pristine_git_object: 941464d067ec1ff542fab88ddfc370930f4a2c5f + last_write_checksum: sha1:38ee81c307b4f8b63892a00dd93b6a46ffc87bb8 + pristine_git_object: 88324c3c10b45eff1e0f003281e30b681c1b9c85 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetV1CompaniesCompanyIdPayrollsPayrollIdRequestBuilder.java : id: 1b141d546d72 last_write_checksum: sha1:09bc447e13d5ccefa782e5475882dde47b4a1dca @@ -10912,16 +11868,16 @@ trackedFiles: pristine_git_object: cd4912e739ffd52786abb861c48ffc94e41bc4a2 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetV1CompaniesCompanyUuidSignatoriesRequestBuilder.java : id: d6721c71e92f - last_write_checksum: sha1:7e2d3556df0ec75ecddff87f4290e2ec9c921745 - pristine_git_object: a3325e1659b956be39a67c46cb2434a9b3e00edb + last_write_checksum: sha1:9debaab2dac182c4e804a7a115d5d02296c4be0a + pristine_git_object: 4a293a84610de3adc094a7080a611f3cf3df9a62 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder.java : id: a3b259b7ef0e - last_write_checksum: sha1:d757f6e089e5c1fe8de37a616dffb7f345538411 - pristine_git_object: 88bb1525433ea18bf6a147eab931149d96e12a17 + last_write_checksum: sha1:ad7a32f35b7e6fa0b3648e7541d174d7fea73495 + pristine_git_object: c8083a6bb4b6e53e283fc16ac9fe518b3d8239fa ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder.java : id: db3bcca3de5e - last_write_checksum: sha1:6d7c4a11eb95abecd8b48ff8ef2b28161597ec3c - pristine_git_object: b88d30e526ef4314907b4595bae3e976dcbf41b9 + last_write_checksum: sha1:a0ab1b887971212c45a319da5015f6db268452b8 + pristine_git_object: c6e906466c91132ab1c38a443ac752b04b81337e ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetV1CompaniesCompanyUuidTimeOffBalancesRequestBuilder.java : id: 11ddee52b03d last_write_checksum: sha1:b8c49e58ec77a0ca305ce83e3de8c0529d4d5e6a @@ -10940,8 +11896,8 @@ trackedFiles: pristine_git_object: 1428906a6b70e1d5d90936023612fe7d1f572605 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetV1CompaniesRequestBuilder.java: id: 92c24c90296c - last_write_checksum: sha1:3c2e8807ece8cc45edabdaf7079af35a8ecfa47d - pristine_git_object: f322809dfb66bb4e8d7169cceeb2ec061518c189 + last_write_checksum: sha1:a729c026764107fffe6c60a457d84745751c3648 + pristine_git_object: e83f1d5a6b300fc36e2118fafe8caa340f9fb928 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetV1CompanyBenefitsCompanyBenefitIdContributionExclusionsRequestBuilder.java : id: 94c62e607a02 last_write_checksum: sha1:51adf2262217f760c5b980a975266c05bf1da7f7 @@ -10960,8 +11916,8 @@ trackedFiles: pristine_git_object: 57f5be5b8b9ea35542718b53ad5af31b55a12d72 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetV1CompanyFinishOnboardingRequestBuilder.java: id: 6c8c8e7f7d22 - last_write_checksum: sha1:fb615540e7bc0f02280683a3a800ac1e68394b65 - pristine_git_object: 2200a14c9657613a2c249c15a1a8efc1a74b7078 + last_write_checksum: sha1:ee229659c9d056e2d4d07522e6d3b13bdccd8069 + pristine_git_object: b0b92dcd3c0a39ff893f41b6254ced89c7d60a4c src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetV1CompanyFormPdfRequestBuilder.java: id: 5767b9d02857 last_write_checksum: sha1:61b5448830623f0271bda9339422118fc49b3c3f @@ -10976,12 +11932,12 @@ trackedFiles: pristine_git_object: b40e962b9a80110bd33f89a2fd4abeca7246e1ce src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetV1CompanyIndustryRequestBuilder.java: id: 755c1831cf92 - last_write_checksum: sha1:6b148db8b3d6aed22d29ca77167a0488c1796de5 - pristine_git_object: c922545b9ee8e6e47e6c65dc503e3f7c5658cb0b + last_write_checksum: sha1:0d37a008cbc32f9788868a06a935d25613821c90 + pristine_git_object: 883b8d02971041503ae3a8c33c109a16111cdbc5 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetV1CompanyOnboardingStatusRequestBuilder.java: id: 7a9ddcbe051c - last_write_checksum: sha1:1414d593f247e180e7aaa6c17599d64ffcbe9d89 - pristine_git_object: 9d3d68bf0d233fce19f071ac9e49963c35c8e4b9 + last_write_checksum: sha1:06370e35924cae2716b469925464dcfea7f7b489 + pristine_git_object: 8b8c8f0e9e3af9650bae7ba184a2dd0d8fd49124 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetV1CompanyPaymentConfigsRequestBuilder.java: id: f2fec7d8028d last_write_checksum: sha1:3d09cb23241f6f7df62172a71ed735dd8d37b92a @@ -11016,12 +11972,12 @@ trackedFiles: pristine_git_object: 0e4f0fda3c538d681ee75681753b47df1b8cb9c3 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder.java : id: a4916ae69928 - last_write_checksum: sha1:2ebf4c39ab401e7dcda04168fb616bfd279d8ca1 - pristine_git_object: 62a8043517e5fb02f6a4dc48f82c703ba7ddd8a0 + last_write_checksum: sha1:f27b83cedc8a0d143ae45fce8979f2f8f0105d9e + pristine_git_object: 99b8768d0c77f1ed77478eeaa065cdcea3c050e6 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder.java : id: 2d320675607e - last_write_checksum: sha1:5a4babe7da099756714654d38d86ac710d1d8225 - pristine_git_object: 0092da2ac4375567e93701b4d11c091f383e9b26 + last_write_checksum: sha1:f733736d1fe55fee26885ce18f8cab3ba07d2165 + pristine_git_object: c4d4400e1fe9471b8754891079f4303886ccbc46 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetV1ContractorPaymentsContractorPaymentIdPdfRequestBuilder.java : id: 64018449c05c last_write_checksum: sha1:70f0fc769ddfbaf26795ded5546f4e584547a901 @@ -11042,6 +11998,10 @@ trackedFiles: : id: bac54aa7c3ed last_write_checksum: sha1:0788a64b26a110c80da924c8ad72dc3da0dd1ad4 pristine_git_object: e4c14a4924413c00f90a4797e3ca2da45a5e5254 + ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder.java + : id: c189eaa39f6e + last_write_checksum: sha1:f4de9c016b9bd6a16a1b744404b6e42f7a9cbfa4 + pristine_git_object: a81424ea9ac6b37002dd29a01793099aee95a829 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetV1ContractorsContractorUuidOnboardingStatusRequestBuilder.java : id: f091dfd5a807 last_write_checksum: sha1:382cbb94c96f9c7a9f4002b5332f9b6e111c086d @@ -11050,6 +12010,10 @@ trackedFiles: : id: 90bf553073cb last_write_checksum: sha1:48d910a76587c3adeab57c2c5632f36ea2863d24 pristine_git_object: 568403e2bf39f25ee19e5e34876ec20dbb90aeaf + ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetV1ContractorsContractorUuidPaymentsRequestBuilder.java + : id: 9540c6151d1d + last_write_checksum: sha1:31074173c750c76889eececad10989555f3ec6dd + pristine_git_object: 4578061863c48ee7adb37ec5d0f69739632764df src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetV1ContractorsContractorUuidRequestBuilder.java: id: c6e067d8f1ec last_write_checksum: sha1:9c6b6801d63da560f686d9b0bfb1f0241e8a5389 @@ -11076,8 +12040,8 @@ trackedFiles: pristine_git_object: 4104de2bd10f31c1c38fcd2c3adbb3eec3db826b ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder.java : id: 7b8ab50b63bc - last_write_checksum: sha1:359fc8aadce3a94692329850a8e87d174baab19a - pristine_git_object: 9ad0cb310791412c2f24e90a09554936e2c5a741 + last_write_checksum: sha1:aef2bca3ee0dab7302f18f31b41ec1bd9e4f3749 + pristine_git_object: b06e14ae619022b65e0c63e0530d6d5b2407e31c ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetV1EmployeesEmployeeIdEmployeeBenefitsRequestBuilder.java : id: 512cbbcef144 last_write_checksum: sha1:7db1e9ae48c8a8f36967155edd044d8addbee9c1 @@ -11096,8 +12060,8 @@ trackedFiles: pristine_git_object: ca68e82fa2213371cb6e3261615a1406f73ee53d ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetV1EmployeesEmployeeIdHomeAddressesRequestBuilder.java : id: f67582195d06 - last_write_checksum: sha1:5982ef8cf6b39e5b1b765f67214b71b1adeef6ff - pristine_git_object: aa5775d8efa2eae02fcf084b96bd88360d0f7a32 + last_write_checksum: sha1:2840f6edd791f217eb5f6984ddc7512f409b445c + pristine_git_object: 59f40978f9e003f71a48ee61f922cd9c3e70e82c ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetV1EmployeesEmployeeIdI9AuthorizationDocumentOptionsRequestBuilder.java : id: a5d2c0e3a8e0 last_write_checksum: sha1:fa7423912dc5da41bf6ff6f8d0eb66fa3862541a @@ -11114,6 +12078,10 @@ trackedFiles: id: 4e8082084e74 last_write_checksum: sha1:3ea6f635eb1515bbaf4d0ed813fa77b78517dcfe pristine_git_object: 648567651dd197f3f051191a093b4202201e37c2 + ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java + : id: 1cdcdae4f1af + last_write_checksum: sha1:25fd9a91af2ab015cc81b62955c317a87029c1ea + pristine_git_object: ad5c1812e5afc32dff0a0e75dfc75abcaa2226cd ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetV1EmployeesEmployeeIdOnboardingStatusRequestBuilder.java : id: 82afc240204e last_write_checksum: sha1:56230a6793eb9005837025a9634872579c8acd1f @@ -11140,20 +12108,20 @@ trackedFiles: pristine_git_object: 059c7a85214baee22da7b5c608ad0a6a241c78d8 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetV1EmployeesEmployeeIdWorkAddressesRequestBuilder.java : id: 959e1aefe38d - last_write_checksum: sha1:48885a59045652a841442f0ce393fea4c6fb0b2b - pristine_git_object: 51d35903ee8d94bd7cc70731c2caddb4e9c0e2fe + last_write_checksum: sha1:b860899d3b674681a554e5c9972708021648e9df + pristine_git_object: 596bc2b4c62b6af14273068eadf0fbb3e411611a src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetV1EmployeesEmployeeUuidPayStubsRequestBuilder.java: id: e31530a07bbd last_write_checksum: sha1:dc3e12b3b9860a8137724fd460a8aafdb5182bbe pristine_git_object: 0d069df9e71f2e39fe3f570cb9c22549963d039b ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder.java : id: af74163f179a - last_write_checksum: sha1:c137fc0be63173a53ad5578a29374b558df671af - pristine_git_object: aecd561a9dcc6ef9cc9ed12cac5117e722de93d6 + last_write_checksum: sha1:141c26f434c58df59928598c79921ed067b5835e + pristine_git_object: 5e2d4415d8d6b4dd85cc674fff5a16614529dbfc ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder.java : id: 6c4053e7d55d - last_write_checksum: sha1:b67be894a0888ccb830e98f0a4009de1a4cafcc0 - pristine_git_object: 94043c5a3da4f9c8f5df85358c0c9345f1f40c28 + last_write_checksum: sha1:3fe72a306590684b6d6b78322443e36e7176d5e1 + pristine_git_object: 288fa1f0f456443d26f8427e0272a2dad5d2e0da src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetV1EmployeesRequestBuilder.java: id: fa9112360058 last_write_checksum: sha1:07cd91e3eb86142801f7e78de9230bc8b5003b93 @@ -11176,52 +12144,56 @@ trackedFiles: pristine_git_object: 75e06b9cd621229712c6e261fe6527cee9f92ea8 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder.java : id: 6b45f8e01be8 - last_write_checksum: sha1:c5025e476831870f4f2dde7c05cf9a0594a14586 - pristine_git_object: 51fa5c73848219343df567d5767704cf140eafd8 + last_write_checksum: sha1:90eaf9cd483593f0f3bd74ce127e569849c15c3e + pristine_git_object: 090627e2616be16f15037bf51f7b6f7b369bc666 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetV1HomeAddressesHomeAddressUuidRequestBuilder.java: id: f06678d75531 - last_write_checksum: sha1:4ad5679c044138499da71fc775496f952b690dcc - pristine_git_object: 0a1abfbc07fe2a5b7633188bddb54a23a0513b00 + last_write_checksum: sha1:c1f468d57d12f1795057e744c9d41e6b2814c843 + pristine_git_object: 7309e3a56f61a5137be50b5a6aea3c69f6d55a49 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetV1JobsJobIdCompensationsRequestBuilder.java: id: 2486699d5fe1 last_write_checksum: sha1:ce1b7edabe564dc69ae962cffae7c86d10490ac6 pristine_git_object: 189ce20fed3d1055b4553de6f55fa625cccc8060 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetV1JobsJobIdRequestBuilder.java: id: f47fc7f8066d - last_write_checksum: sha1:610de191658736b892fb0ff878a3af871f2d4c0e - pristine_git_object: 3eb86f296987c50191bd1e406a250a6953f27258 + last_write_checksum: sha1:23634fd91ad77db94429d1a5b8ae8d80cfc74900 + pristine_git_object: 7d5b6d5c29aaedd3396d453a8996af92e9ae6356 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetV1LocationsLocationIdRequestBuilder.java: id: 9a24a96253a7 last_write_checksum: sha1:b031d8eca0868296371b9f80a649d0895eccef38 pristine_git_object: ca19bfbb72ed0cf77a68e8a75c2c451a30c99da0 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetV1LocationsLocationUuidMinimumWagesRequestBuilder.java : id: 404bb33c3711 - last_write_checksum: sha1:8babbb5ea434cc400687619c1f532a9fbb1eae2f - pristine_git_object: 1d0dd9b67fe35b70b75cc90e5dcc3cc5bf157356 + last_write_checksum: sha1:60662739f425a8e07fa8bd534c52d6e134ad8072 + pristine_git_object: 74ad13821470348509be6b2b34fa67137d3efe21 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder.java : id: cf8cbe68c39f - last_write_checksum: sha1:05c107276cef54a06d4709cec1215d818965b200 - pristine_git_object: 896e1af47b789891525a6308b26de2430ca46724 + last_write_checksum: sha1:1a8633e19ae3701be6314a61e3a99b9049a25498 + pristine_git_object: 8dfaedcc813deb5a8f2366dbc114b8377df732c8 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilder.java : id: 6278d21daef4 - last_write_checksum: sha1:bd96dc4621f40de0498b52a9bbec81500a034d0d - pristine_git_object: cd52dee5b3ee18fe367179aafce4eff666920735 + last_write_checksum: sha1:27aa581f16edf181e566b1577d67750eb01a85b1 + pristine_git_object: 31709f8767e3d08549c26e5b55340de3981e660d ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder.java : id: 5d28f76326ed - last_write_checksum: sha1:236e4c4181cc73b3de9783c24bfb6da92686fd8e - pristine_git_object: fe09c305bf4e864461f3d48c7c70cd8319721242 + last_write_checksum: sha1:c15c84258248f2b2b2698fbcb3c39d13fc691c89 + pristine_git_object: 41bd15d0b22f3e46c77de0483c574c389c2919fc + ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetV1PayrollBatchesPayrollBatchUuidRequestBuilder.java + : id: 02ccbf8ce095 + last_write_checksum: sha1:2d97220a20c4ae2ae0c14ef24ddeaf8f26076504 + pristine_git_object: 2201aa17b88d7017a160487cfbb7c8664dd63311 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetV1PayrollDigestsPayrollDigestUuidRequestBuilder.java : id: 42af92aaad61 - last_write_checksum: sha1:48f48e113401bfb7b58863425ada117319ee6b0e - pristine_git_object: dd8ce512f7f61b5c6dbf1dfa853dcef0c0e626e6 + last_write_checksum: sha1:e86b0b4912cefa86d551eb70d530db1627b1c3c9 + pristine_git_object: ccafb784ee08a3d426733fb9ebfd7fdd6479eee3 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetV1PayrollsPayrollUuidEmployeesEmployeeUuidPayStubRequestBuilder.java : id: 71b19cd94a6a last_write_checksum: sha1:1845189c8f5491f39d926eb4c177aeff951115a5 pristine_git_object: 6db7c99ddd809e1d48ba5415868c08592b484c0e src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetV1PeopleBatchesPeopleBatchUuidRequestBuilder.java: id: b30a35ce03c8 - last_write_checksum: sha1:5c0dc45f226439d8823d1a180f267198fd3740a0 - pristine_git_object: 6b9375858862bef2b978bbb0c8b36f250a0116a4 + last_write_checksum: sha1:2785744e2f76e7e2f79a71453e8b0b98f953324c + pristine_git_object: 708436cafd9a8aafd16b1924f7619de4a14217bf src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetV1RecurringReimbursementsRequestBuilder.java: id: 09c47b9db41c last_write_checksum: sha1:9316c1f8d3538521121392a113996aa46bde04c3 @@ -11256,12 +12228,12 @@ trackedFiles: pristine_git_object: 6d0f44e14f4929436babcd0120651835fd6e080a src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetV1WebhookSubscriptionUuidRequestBuilder.java: id: 7a7098138dc6 - last_write_checksum: sha1:21abf559615e3cc1091173ca2b9841613f59d9cd - pristine_git_object: bcf367a6e590262d266e73394b7ba93bcd74aae3 + last_write_checksum: sha1:029a8927fea20ada6aa44e4c4b0393732a7e433f + pristine_git_object: d73c65ccdd432332cc068e706fc5af906db082e2 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetV1WebhookSubscriptionVerificationTokenUuidRequestBuilder.java : id: 052949fd7e37 - last_write_checksum: sha1:9d83cac1a64a11d8f5eb29c8dd0e2cf67fda42e9 - pristine_git_object: c31e9f7de148a22f2cbd8fd0003a902d1972fda2 + last_write_checksum: sha1:c9059d914cdf8e6645f7d8b10ccd86a9ea013b2f + pristine_git_object: 7db1698565522719ac87df617f1533a2601965cf src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetV1WebhookSubscriptionsRequestBuilder.java: id: 9ca4ce1d8786 last_write_checksum: sha1:55352f688143f09888f53e001b1e14343aab2b50 @@ -11272,32 +12244,32 @@ trackedFiles: pristine_git_object: 9c41ee2ee532d8cbfd7a5ada697cc6d1e31c6d0c src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetV1WorkAddressesWorkAddressUuidRequestBuilder.java: id: c028638f0800 - last_write_checksum: sha1:3fad4d0fc7946f843d7a70a21389ed2a40e2a049 - pristine_git_object: fef35e292e40dae340f509830b99fc5b7bb3ba8c + last_write_checksum: sha1:016d8b1752397c496597ea1baf597b095d36e383 + pristine_git_object: 83c9d75bc077c2d3a817ae2ff055e319ca5a3099 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetVersionEmployeesTimeOffActivitiesRequestBuilder.java : id: 660a4179ddf9 last_write_checksum: sha1:2ea1edc9ce68ccefcd153d68332a1ed21df8dca3 pristine_git_object: 2c0c358a0054a8b460440b566aae7ff8c61725de src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/GetWireInRequestsWireInRequestUuidRequestBuilder.java: id: bb59a01be333 - last_write_checksum: sha1:03b1b9cb8b8110dbf25b744d0e30794208678be7 - pristine_git_object: 461a2b0d491c5af883108504c099d63f71c0b080 + last_write_checksum: sha1:800d45f83df05ee7ce7f63435191a5d084f6f236 + pristine_git_object: a6286c8014faf04648d9695f0d6a9324c4fdc70e src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/OauthAccessTokenRequestBuilder.java: id: 8e8d6cd9f9fe last_write_checksum: sha1:32e584ca2a6b4a73d2c2c4fe0f94fd90c49711b8 pristine_git_object: e6da10ba6a8faf3e40329022958d30a2fcd5219c ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder.java : id: 2a6d486d8210 - last_write_checksum: sha1:52dfd5e327ff633ae5809c3e084a4dd532a5e007 - pristine_git_object: 619367149ca197ed59bdd7b120353f5feafffb80 + last_write_checksum: sha1:fea2420c4daa2620933e5ff44a3039fa2eb3284a + pristine_git_object: 710298cf5a6aeb7b03f119d43dc724a4c6e22487 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder.java : id: 8e01d988ac9e - last_write_checksum: sha1:6cdf2dc395f3365f5dee5c6b1cbb5b7b879fb834 - pristine_git_object: 65a1e3a638aac9303ebad35d9feb62efa708f735 + last_write_checksum: sha1:f792dac0280ae9965c43d288581b5265060c7961 + pristine_git_object: 5fb98dc2115b370efc92ff29efaad894ce1641e2 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder.java : id: bd29db8c3998 - last_write_checksum: sha1:2934e4c21d4d2d19873bb1e4a7342ad9e05dd629 - pristine_git_object: d9110194f1e67b251fc6c5a416c1f60dca831293 + last_write_checksum: sha1:ef586c7037785136d278b2c3b00a757d973c60d4 + pristine_git_object: ae5e27a63d5ef5234701e57bd43d03a8be3b4a5e src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/PostCompaniesCompanyUuidReportsRequestBuilder.java: id: 54f07d9e59c0 last_write_checksum: sha1:bf3e2c475b9fb64eceb24cf48e5d318af194ffcd @@ -11312,20 +12284,20 @@ trackedFiles: pristine_git_object: 6dcab4a5a87fa47c0c2f0abae87ad1618bf699b9 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/PostDepartmentsRequestBuilder.java: id: ea293950c81a - last_write_checksum: sha1:e15bb07ecb2bcab0579bc89f50ca290f7a8b58a1 - pristine_git_object: c1cbfbe40acb029a45db680d7d02c77694de3fb2 + last_write_checksum: sha1:15f6c3e82df22d6cb4d81c87ad335fad390d6c86 + pristine_git_object: 53fa1c04e829eb89dd713c4be1be6ddd53eeb5e9 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/PostEmployeeYtdBenefitAmountsFromDifferentCompanyRequestBuilder.java : id: 22b3ec368263 last_write_checksum: sha1:e5f2c6859ab84abc46d836f03aa54de20b8887d0 pristine_git_object: bde1df9479decb827cd62cd71dcdee406b19e92e ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBuilder.java : id: 3d2f0c4c2873 - last_write_checksum: sha1:af3b09265884b1962779f969564266a05358c678 - pristine_git_object: e1d39cfcd1b0718a76d7b48b3df67b27d07f40e6 + last_write_checksum: sha1:92318ae719dff9a52cc2e8f61039db0c994b669d + pristine_git_object: 98bf103a7b99300d8ae28a561aa24c76301cdb47 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder.java : id: 08bd39c301eb - last_write_checksum: sha1:8ecf85e52579e50663bf465e03ddf5ccca6197a2 - pristine_git_object: 64fe3f67f78e9b8b96644b75bdbf8346283fff0d + last_write_checksum: sha1:694b74535d42a398af2a82d6c888c5d87bb2c352 + pristine_git_object: 055aab766c124dd82232836f6563fb07497aea3f src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/PostPayrollsGrossUpPayrollUuidRequestBuilder.java: id: 62fc6083d93c last_write_checksum: sha1:b5cfa05ce26d786277174f15c949458404df6327 @@ -11334,6 +12306,10 @@ trackedFiles: : id: d021cdf4ba7e last_write_checksum: sha1:e8e21b2af05f84554957b1f5796e3626d5bd5417 pristine_git_object: 9e995055fd54c447aea38f3192ce1f812b862bf2 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/PostV1BulkReportsRequestBuilder.java: + id: 4a0c68bea850 + last_write_checksum: sha1:a40eafb5434e06c6d0e9f5082ba8d9729eafc464 + pristine_git_object: b618d593dacb59b2db129a01ff87034667e3b9b8 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/PostV1CompaniesAttachmentRequestBuilder.java: id: 4d2b9538b2e6 last_write_checksum: sha1:7be772a145933334e3831906f3f4d85c7dd8cbb2 @@ -11388,8 +12364,8 @@ trackedFiles: pristine_git_object: 567074ebc8e97655fd6347ac8592f187848f4cc3 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder.java : id: 77b9f1d47509 - last_write_checksum: sha1:b748ddab3314dd16d654ced292ddda5eb6bc9663 - pristine_git_object: 9582adfd312844a06c22ac2d63442a30f26d8e53 + last_write_checksum: sha1:2ff96b9c7df807dd59c145efed76ee2f8e3afe17 + pristine_git_object: c1a13e986f8dd78838b54c0ef012311c7e072985 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequestBuilder.java : id: f9c52e0bf51b last_write_checksum: sha1:a06c483ffc658907d0db3db2680c62a4fb27a011 @@ -11404,8 +12380,8 @@ trackedFiles: pristine_git_object: 3017ef5d38563ff77fbcd9d86a44a113acc65169 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder.java : id: 90fa48919c6b - last_write_checksum: sha1:2238798ec2d2229f44d444ce43950198ffc938b5 - pristine_git_object: 7cba53d35b9064f90999bbe384f11b63914ce57d + last_write_checksum: sha1:7148ed8055462752887c045a6ddcca91c60cd630 + pristine_git_object: 8e616ed05afb477176add684dcb824840da0686e ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/PostV1CompaniesCompanyUuidTimeOffAdminApprovedRequestsRequestBuilder.java : id: 208b78a4dec5 last_write_checksum: sha1:1a80a933ba9863a18e512ba37db8348f1a64b350 @@ -11428,8 +12404,8 @@ trackedFiles: pristine_git_object: 27e2f316c2d0c11c17888e3a50f7c3148ddd412a src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/PostV1CompanySignatoriesRequestBuilder.java: id: 26e5ab51ddc9 - last_write_checksum: sha1:907e1e9a10993e0c7b363791d705e6132d5bb4e1 - pristine_git_object: 906195fe4ba5289ec80fb7d23622999bcbfb7f02 + last_write_checksum: sha1:2b3ffc33fbcd14ad0bfc79ae1b6a67b3620892fc + pristine_git_object: acb63b3f057908c03a90679642e0cb1089d8cc46 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/PostV1CompensationsCompensationIdRequestBuilder.java: id: 811ff29cc100 last_write_checksum: sha1:057029e77c2aec1895daefae023ccc9d583175be @@ -11438,14 +12414,18 @@ trackedFiles: : id: 92230fd08056 last_write_checksum: sha1:ec8f54ca514836a12dcc7cf83165201d42e9faeb pristine_git_object: 45e349f670ac958b7482e21c768b1bd9d8f65649 + ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/PostV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder.java + : id: 885dbfc3c5a7 + last_write_checksum: sha1:f7474b442d0fcd5bc0a84db23812ed9c7fcce669 + pristine_git_object: 4a58b2adb8b59731597582cb17f497a8d179bfc4 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/PostV1ContractorsContractorUuidRehireRequestBuilder.java : id: a8d1d51335be - last_write_checksum: sha1:cd7acf1b23a197fe745d79c981bc84c48c0a9907 - pristine_git_object: 0261ec892675b362ae82f34f2a99f3eaa195f2f0 + last_write_checksum: sha1:0a44d0b2f39a694e0d76b59307f34c669268052b + pristine_git_object: 6e2125c0340ac0b10ddc0566017c36e36f2dc56a ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/PostV1ContractorsContractorUuidTerminationRequestBuilder.java : id: cd0ece4ac117 - last_write_checksum: sha1:f279a27f71c563d715a7dfa4ca1b69d50addd421 - pristine_git_object: 2b6b845904eaa89121da226dee40c8428732b97a + last_write_checksum: sha1:9232a06e90de7499cf54e6b24345a3fdb4e597f1 + pristine_git_object: 6f8768bae6c30809987ab7e111804e1cf9d5429d ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/PostV1EmployeesEmployeeIdBankAccountsRequestBuilder.java : id: 88e331234b6b last_write_checksum: sha1:d98954d94d5cfae89e5bf74f0c84c7aca4cfb0b5 @@ -11460,12 +12440,16 @@ trackedFiles: pristine_git_object: 64c068b7275b05f76e92cc4f5011f46de4845d6e ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder.java : id: 84049754a9d3 - last_write_checksum: sha1:d30a4c553d3d1444ac3ba746a80aa090ceea071f - pristine_git_object: e76cb3e04b3a38fa7e4481f995821cbf1c909567 + last_write_checksum: sha1:5e595bcbd9b607482311423a0913d94044165d8c + pristine_git_object: 313f4fb6f57edc35df9d9d69346f548fd39f7589 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/PostV1EmployeesEmployeeIdJobsRequestBuilder.java: id: fc377c5e0b25 - last_write_checksum: sha1:65476d7addea9526b28a6cb2f4e9be233dfef18a - pristine_git_object: 24c233fcd51caaa8948c0cdbc06903845dd362c8 + last_write_checksum: sha1:2a10d6431d7cd961e9ae24ef6cc4eaab3f018528 + pristine_git_object: 8e7b05e7f75cb2b4ccf41ea05dfa2733b7a2c5d1 + ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java + : id: 27040996527b + last_write_checksum: sha1:313c9a3438dd16e1e521446a844ccefe078a952f + pristine_git_object: 7f22f0d87ede069aa07bf64bf79089c1e5e0e211 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/PostV1EmployeesEmployeeIdRecurringReimbursementsRequestBuilder.java : id: 4d0a1b6c6a17 last_write_checksum: sha1:49f0aaf38a8c82c7eb9de862cbb8cb701b7fc651 @@ -11484,12 +12468,12 @@ trackedFiles: pristine_git_object: c4d3a25f5299077457686f4fa597ef2bcd25e7ee ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder.java : id: 7ce38979d0d6 - last_write_checksum: sha1:4cbcf123071e8bb567fdcb9a7a4e6e2c62e49160 - pristine_git_object: 2c4c6b2425181683a40b1ab4b5384be45140b40e + last_write_checksum: sha1:91c86f0b57483eb25f1ad86e8e9a1b9e99a9b827 + pristine_git_object: ab19605dc79ced0f1533d3d6aceaf5a44f93495e ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder.java : id: c6d6835728dd - last_write_checksum: sha1:aa8cd9daa24e1462c7a7bf42725c7078c218a844 - pristine_git_object: cd98744bbf0a645dfecde71f21c3692052c9eb7f + last_write_checksum: sha1:90494bbfb32ac4eb5f714315a42a7df11821d659 + pristine_git_object: 4e970b7f6e1eefa2cd9db5ff88137529ce8f4a22 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/PostV1EmployeesRequestBuilder.java: id: ec383c978339 last_write_checksum: sha1:4c27948f4ddf360a32f05877cfcddf23341d08b4 @@ -11504,12 +12488,16 @@ trackedFiles: pristine_git_object: ac4ac7084f9eb642e41e7d8b64d58a8fbc3156c6 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilder.java : id: ccaaf65d33f8 - last_write_checksum: sha1:3b2ae8eecf5d00c80f270018968c87b85638dbc7 - pristine_git_object: ca899a3a45d623f7d3ff34ae0b5f388dbca955c1 + last_write_checksum: sha1:91c196dc92fd58bf4e7070145258c3f2e9cea9af + pristine_git_object: b3c96181ba5ed664a6f5d2c7d53f1372c33b8a68 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/PostV1PartnerManagedCompaniesRequestBuilder.java: id: a4dac5d8fe04 last_write_checksum: sha1:ce52573a78f30c6bf7508c631ab3d8776ffdc51f pristine_git_object: 3b7656129b02b737b151ae9fc511b5e6ad8038bc + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/PostV1PayrollBatchesRequestBuilder.java: + id: 62c97d5d6d07 + last_write_checksum: sha1:43cedd21583438dc04c91c7fb648b148441f3cca + pristine_git_object: f90a90ec078b8e2f7e3b3b2564af53f80058a11e src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/PostV1PayrollDigestsRequestBuilder.java: id: 8caa43ecf9c9 last_write_checksum: sha1:c9f952b6d0241ebd36ce371bc7a886497ac411d8 @@ -11544,20 +12532,20 @@ trackedFiles: pristine_git_object: fb4b06926ae611acb540f5848e1c1d6d1ed1ed5a src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/PutAddPeopleToDepartmentRequestBuilder.java: id: 8cd566d730a3 - last_write_checksum: sha1:b214801f493dd435d4b3f10b3c3bdf77a782cd5e - pristine_git_object: 3a320dc40d6d676ff8b450af15561d8d6b7b4037 + last_write_checksum: sha1:2fca5ea32e0d042f2503fe77c0ab435e51745f00 + pristine_git_object: ca5a792eacd75169f43fc71b2c1bb5f566916a7d ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/PutApiV1CompaniesCompanyIdPayrollsPayrollIdCancelRequestBuilder.java : id: 848bae83b105 last_write_checksum: sha1:f4d2670d0a9d7689af76a4ff8dd2dee7bd73f5cb pristine_git_object: 3d09323dc1db1b2192238394f7c38fd561fdef92 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/PutDepartmentsRequestBuilder.java: id: 6e021b2ae563 - last_write_checksum: sha1:d4be339255013f6dd461993f668efcfa1eb4d6d6 - pristine_git_object: 299b6b6c68ae71cfd7166f21972505042d7f4ba0 + last_write_checksum: sha1:26810728492177a7e255a02b21a56bc65f8fef64 + pristine_git_object: 773cbe7fe7003f2eb74a8bcee38fe0f9658e7603 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/PutRemovePeopleFromDepartmentRequestBuilder.java: id: 721ca6e70eb0 - last_write_checksum: sha1:ac4b1c260e1728fdc2a6f8788ef40f545a9a2539 - pristine_git_object: d6e198285b16a68835a551c626fabb5e9cd2b8d0 + last_write_checksum: sha1:35e11c243fbbee3049641e0947b5977e14042fbc + pristine_git_object: b41e0528bedf634eed116ea95125651e9ac07376 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/PutV1CompaniesCompanyIdBankAccountsVerifyRequestBuilder.java : id: ecf424b2dd4c last_write_checksum: sha1:ef00cfaaafdb864a791eca6e1fbbdd86c4e319d0 @@ -11568,8 +12556,8 @@ trackedFiles: pristine_git_object: 46152fff0532f5ca24713de41c5e83845a734f0e ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/PutV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder.java : id: e90a024adbd3 - last_write_checksum: sha1:8d68a153078e079d1ff0171bc4ab9b38c033a283 - pristine_git_object: be1174ff2e2f37aa268bb543972515c7e2aee89e + last_write_checksum: sha1:c593ae785f952e713fdbf00d8da725a482db49c7 + pristine_git_object: 6c3ecd5387b6a81acfa78bf0c7898aa175721f89 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/PutV1CompaniesCompanyIdPaySchedulesPayScheduleIdRequestBuilder.java : id: 872e79a250d8 last_write_checksum: sha1:603bf405c83ef1762dcb2f8640f4359d6af84b80 @@ -11604,16 +12592,16 @@ trackedFiles: pristine_git_object: 919f7b9d3b76d448efcef592dcf4cf3e574ee298 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder.java : id: 019689d49ea3 - last_write_checksum: sha1:98a51d22b74f1af42f8b22413970c1925f5c191a - pristine_git_object: f5119e29c63995d4974c77aa08f700b3965ee7db + last_write_checksum: sha1:bc00a86900a9d1f413f34afb25ee4f34b9bed4c3 + pristine_git_object: d65e5f8180dd3c9f33d0ec84a21baca5e3b36964 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder.java : id: 2a0f3c34a996 - last_write_checksum: sha1:771025df92cf8a01e72ef66a82f97e92ffd63ceb - pristine_git_object: e7d081914de147245131320ec6eec0bf3aee9edd + last_write_checksum: sha1:86c800abdaee503b549bfebc99b61b539d3c5048 + pristine_git_object: 88cc72e0f74dfad7f6e29a36b37d9147b8223441 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/PutV1CompaniesRequestBuilder.java: id: ff21da6f959b - last_write_checksum: sha1:cb263c6e3beb789237be0cc1ebc8f74c1912e5f7 - pristine_git_object: 1d9214d4d8aab7e6c7334df7c0ba5775ad920469 + last_write_checksum: sha1:fee63a04f97f854640039634fec998ddceb6253b + pristine_git_object: a1171fbe15867bd3e1ee01ef335b765f20ce40fa ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/PutV1CompanyBenefitsCompanyBenefitIdContributionExclusionsRequestBuilder.java : id: 0d9147294a51 last_write_checksum: sha1:aed940185fe4b71cc3caa8c251534d5a9e66dcaa @@ -11632,8 +12620,8 @@ trackedFiles: pristine_git_object: a673d0eaf76386d7667d2b660a64ef6e5eade1c0 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/PutV1CompanyIndustryRequestBuilder.java: id: 14b97033761c - last_write_checksum: sha1:0803cd4863d502f7cc0c1bd57c9c656b6d608543 - pristine_git_object: 2006c47468cdf4b822aebf9986cb1d5158c6a24a + last_write_checksum: sha1:78a0d43dadde710ff7119b8deb0275b4cc1e6f84 + pristine_git_object: b886c9e09d93678f882a5af004083a55e6272a9f src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/PutV1CompanyPaymentConfigsRequestBuilder.java: id: 47ff3c0e0329 last_write_checksum: sha1:db28401c61066351d3a24e9708495191e64e9f0e @@ -11648,8 +12636,8 @@ trackedFiles: pristine_git_object: 1df54d9890cde7ada2d54389c1720e46fcebb524 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequestBuilder.java : id: 4ee01d505b8f - last_write_checksum: sha1:6d101bc8d1dc0d982c3eb519ffc1931d08b7575a - pristine_git_object: ea65224ec9005d813188f02feed0c8dfe5b53e81 + last_write_checksum: sha1:e7791394462a986e91c010e67e8a493809389a74 + pristine_git_object: 21e190c64b2729c7c86091944949849ce4991f32 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/PutV1ContractorsContractorIdPaymentMethodRequestBuilder.java : id: a08225be757f last_write_checksum: sha1:82f748753a8c15738dd90ef9d4c92af334442f3c @@ -11736,20 +12724,24 @@ trackedFiles: pristine_git_object: fb07dc0014faed258f58e58e0035c03ca01d4454 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/PutV1JobsJobIdRequestBuilder.java: id: 50547c3412fc - last_write_checksum: sha1:42ec5e4433363f26c9226c76645f9cdd7508a7ef - pristine_git_object: 873f6b53afaf8ad4aeeb20f15a48ccfc3737bde1 + last_write_checksum: sha1:3004f9165e9724d332f65a89d7aef9d11d3422d5 + pristine_git_object: 584e8c1215fcde401cabcc4a75a8f5f18a8ea75c src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/PutV1LocationsLocationIdRequestBuilder.java: id: ebb9d548ee83 last_write_checksum: sha1:bbdd27e518dbd4b4c9344663b10df99ec0437f95 pristine_git_object: 31e4b073744ce201bcf098205301dad07c6b1325 + ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder.java + : id: b6be541dbe45 + last_write_checksum: sha1:a4bda89e239b5e841631af805c68d39727a941b5 + pristine_git_object: e1b0e56c95ec8f302e101d676425b1379c672bce ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder.java : id: 904d2237cd60 - last_write_checksum: sha1:3c8c95e387a32010b67efa85c53d61baa52cd5bc - pristine_git_object: 29df58702b2530be73a484d06a8bda3b69428858 + last_write_checksum: sha1:73d5e9aa903ecd63b3d0a1faa1c64e936eafe4a8 + pristine_git_object: c8135c51573f84ecb95d269efdd9c5afbd32c6af ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilder.java : id: dc6aa2da0133 - last_write_checksum: sha1:99898018dccea169767f54b597a1f5f0cb8b0675 - pristine_git_object: 0490c07826238765c1f3ef82e8136b8a91f810ed + last_write_checksum: sha1:1711de6fe33a8f838b4e1d2d30627ddc84c95d70 + pristine_git_object: dd989c103dcf7270ce0b36d782a4a9f50cc96bd9 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/PutV1RecurringReimbursementsRequestBuilder.java: id: a0c2801e1375 last_write_checksum: sha1:a50116d07ca94f6beb9cb4dfaa54ca1d821990f8 @@ -11800,20 +12792,20 @@ trackedFiles: pristine_git_object: 935bfeb90ca60e2db837f95e98c7dc84660eb251 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/PutV1VerifyWebhookSubscriptionUuidRequestBuilder.java: id: e0dc848488e8 - last_write_checksum: sha1:446b3cac78c985b8a6e25e169847378250ac7fb2 - pristine_git_object: 28fddaab831fed297dc6e95db172ca103affdfdd + last_write_checksum: sha1:1e9e4f0b42dc969858deb69b7f0de8dc40011205 + pristine_git_object: ee98e70e1eeb2152a0ac321f8f11dd6dc9a0490b src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/PutV1WebhookSubscriptionUuidRequestBuilder.java: id: 4f42445d7ac9 - last_write_checksum: sha1:e229f52456a7b5d18715df37a76662c847ba615d - pristine_git_object: d5c4cd92ac5ef6245d587f7730e18a2f6a751320 + last_write_checksum: sha1:9bfc463311f2b2e53186ebcebd8f403281780139 + pristine_git_object: 3a077bd305c5946f0b399be781e743d3534d0018 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/PutV1WorkAddressesWorkAddressUuidRequestBuilder.java: id: c9264395c8ad - last_write_checksum: sha1:afe9112bd366f9366eaab48f130182f39eb5ff01 - pristine_git_object: 295fbf8199ea169149a91f113f0b069030e1f5c0 + last_write_checksum: sha1:b22dce6d3d54a12f49e13c5c27f56836fa515170 + pristine_git_object: 88b41503d3e1ec1cdde625d1a552a8108e2bd74f src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/PutWireInRequestsWireInRequestUuidRequestBuilder.java: id: 153880c0db30 - last_write_checksum: sha1:3206954bd8aa380c4e76a442c4fa5838790ea499 - pristine_git_object: d7255a12ffc3e70d983fc9e86b30a6c11d5782f2 + last_write_checksum: sha1:98bcd62d4d2f6a09db2971223155f0d3ae9d7f92 + pristine_git_object: 28ce603a20c38f92eb08d2f4f9a976d5117ab980 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations//async/RedebitRecoveryCaseRequestBuilder.java: id: 1d0f28717678 last_write_checksum: sha1:a54dd118d0f3f3ab43073d75d9f2841885185ca7 @@ -11836,12 +12828,12 @@ trackedFiles: pristine_git_object: e1422c9d7a9b98ac6fb0ef057fa6300416deb505 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/Batch.java: id: c5c648fc9216 - last_write_checksum: sha1:bdc3b360f096d466e3f34f22be3997c67665e1bf - pristine_git_object: 943b9c6be9ef5cd0ff1c61425dea4d766771c009 + last_write_checksum: sha1:a0ec10157794ebbac8efdd0e125d024b2d57aa42 + pristine_git_object: aac3c5eeb8de95d564f2925457f46439d7102291 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/BatchAction.java: id: 333e0767ff13 - last_write_checksum: sha1:839f51564fe23da4787272f68472a1a0101fa339 - pristine_git_object: a6d571c4cec9a265ebe04d55cd422ac9df98600e + last_write_checksum: sha1:ac35a25ea036d39e4894962d539603afd34a0207 + pristine_git_object: e06e69b69556c69962f9b0bf684ac81fdec690ee src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/ChristmasDay.java: id: 63f6ee844650 last_write_checksum: sha1:7842412c2faadcb6e5f54f1258a769e5395b7deb @@ -11868,12 +12860,12 @@ trackedFiles: pristine_git_object: e1a742c2c964002ba855330dfcb5681b200e85fc src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteDepartmentRequest.java: id: 66c852f1a5e2 - last_write_checksum: sha1:15098349967816e9e33df184d43a2b8de547b320 - pristine_git_object: 54ee76181bbf66a83c4378d68e7b8242de36deb4 + last_write_checksum: sha1:65ec635bf1bd2c73ea6d9bd3e4ece641e3582914 + pristine_git_object: b3e43244fce178ccf7a81ebd85e643a35ce988f4 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteDepartmentRequestBuilder.java: id: 032366de5da9 - last_write_checksum: sha1:9f06935210d6ff80429e0ac94f312ebd693fbcb6 - pristine_git_object: 8b06b133927461c1c316dfbcbdeaf14b0de8a823 + last_write_checksum: sha1:c6cf0e10a04b6f55e70e1cc0b8b3a40f96076981 + pristine_git_object: 0f7b863c1436d6e5c429677112378560183e9413 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteDepartmentResponse.java: id: b23b428ddd32 last_write_checksum: sha1:42e6c0faf6fea188135442fb1784e27de1191898 @@ -11932,12 +12924,12 @@ trackedFiles: pristine_git_object: eed85755cdcedb8389825766b4429b124065feb5 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1CompaniesCompanyIdPayrollsRequest.java: id: b9b1228c007b - last_write_checksum: sha1:7fafdc1885b5b2bf65dd4f04d7dd85eb96155853 - pristine_git_object: 368510e4cef94a641a942484b1bdd393d6124fa2 + last_write_checksum: sha1:824282c433d07bf3056d0ba002eef9a5dd51fd81 + pristine_git_object: d5e9913500529e975c1d629bfdc62b9046529ed0 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1CompaniesCompanyIdPayrollsRequestBuilder.java: id: 40f7085c3d3c - last_write_checksum: sha1:c8e1386546b515b1bda20ae40304913fb41c7b8a - pristine_git_object: 30c4a264b816a98dca63054ff4eda004b7660928 + last_write_checksum: sha1:c1c4ead5717aa0fd19bcc6e1c504a6ecd320c4eb + pristine_git_object: 5ed248001219cda956852c7e899b9c6fb9236460 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1CompaniesCompanyIdPayrollsResponse.java: id: 70cbf0dc3b56 last_write_checksum: sha1:03119a01fe161f1068a2137eb423a86513a2c0f1 @@ -11964,12 +12956,12 @@ trackedFiles: pristine_git_object: 819a19909bc0bd0a9eb57e3e875f669858c6eee0 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.java : id: ce3039bde092 - last_write_checksum: sha1:b2f021094aac0de08a4df7e9c5ed18984517eb39 - pristine_git_object: f4e4c2ee9fadd6456ce070b971d0beb7f9d5a880 + last_write_checksum: sha1:e29941c51911ce097bfe2040b52245b926af2b1e + pristine_git_object: aafd0f5e90c16127fe40daca231804b21d11f5e2 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder.java : id: 817abfce766a - last_write_checksum: sha1:2657fc3a91f5fc5dffc1a619736e9c3114007759 - pristine_git_object: ce7bd3a98ce7ba28da8c3c636ff20d063d699767 + last_write_checksum: sha1:4b0968f862cb0295e8fd159991127831ad5f4748 + pristine_git_object: bd75d6909276c7b85f944129e581f6958fc7deb5 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidResponse.java : id: 7861a05ec20f last_write_checksum: sha1:4b9f7bd8120196dfd9117bfe9c33c47725e9df9d @@ -12012,12 +13004,12 @@ trackedFiles: pristine_git_object: 00d10610ac4a0625d05d29deff5e21f8b8f22fa1 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.java : id: d813fa0a1fc5 - last_write_checksum: sha1:51b0989be4d02282c31ee89a0d7d85c14eadd587 - pristine_git_object: f238c8f13b6471c83eeed877a893ad811911f03d + last_write_checksum: sha1:cf5cef58826b0f161c43ac775d0adb54dbd1f3f4 + pristine_git_object: 9b970164ef38c64fb0ca115d0b36627d20bd59ae ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder.java : id: 9c6c3d897232 - last_write_checksum: sha1:893caf23658d79d04b09324f749054dab7eff820 - pristine_git_object: 3679da2c413ccdf9e16549d37cf516ffde32f5f9 + last_write_checksum: sha1:5f37e68751abe619af639f6dfb1078e85c2e35e1 + pristine_git_object: 9da3df1603fab6a0b6ccfc08499865c43049e6e9 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdResponse.java : id: 2bedd885d589 last_write_checksum: sha1:b4292feb1a0323ffa59cd3a99f0614d353593001 @@ -12026,18 +13018,34 @@ trackedFiles: id: 367e6a4b9f42 last_write_checksum: sha1:9b350952f8b4738aef1f9e5502dcbcc1b640b0fe pristine_git_object: 2658aeeb40d51ae4f474011b41a306300936487a + ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.java + : id: 17c65c609e9c + last_write_checksum: sha1:5af9f62f236448ea900b66b3756d4c342f71a8e7 + pristine_git_object: 6593057b2a447df3af6d151b1c68541624850044 + ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest.java + : id: 2e364716758e + last_write_checksum: sha1:bb598194225b18c8c9273ad0e23c50650480df73 + pristine_git_object: 6eb9c5fc0ea33ceb6985e715118ff7f930f282ee + ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder.java + : id: 6f57eac2c7f0 + last_write_checksum: sha1:7d26e6e4394c52a61b9bfeb46a36b2511a1efe33 + pristine_git_object: 81652a08f9967b644dc4514af20ed2357740cbfd + ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse.java + : id: d87ed7ca301e + last_write_checksum: sha1:4b908cfe38656ab4630fa2b4ef2e92c56b9f92d0 + pristine_git_object: 10633c3e27be9c5b6868f7d69f6b05fcd456d0b7 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1ContractorsContractorUuidRehireHeaderXGustoAPIVersion.java : id: 77a35712c7cb last_write_checksum: sha1:25039d0664e6edd21b7f88639f55ee7a05c4ab5a pristine_git_object: cdb40430202f97a95309dcfa1679670a96d73db2 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1ContractorsContractorUuidRehireRequest.java: id: fc8b4280733c - last_write_checksum: sha1:f284867fea6377765397c4299e11642bec9fddc8 - pristine_git_object: 780ac02edb1b7333c6538824fcd45243efaf121b + last_write_checksum: sha1:b99855da8b46072251f41f4f594b57108f31dc74 + pristine_git_object: db45be9045db7325d6c0f5018e225e9af7c41e25 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1ContractorsContractorUuidRehireRequestBuilder.java: id: 89607338c9fd - last_write_checksum: sha1:15ae8bca044c30d7946c5350a0bb4800ee9072b0 - pristine_git_object: fe32ff8219b43939870c949c75850baeeb8b376f + last_write_checksum: sha1:3234740794110f18f973dccf2b3429c550885b53 + pristine_git_object: 45f6b0637b5f6b830587faebc8b9e34d7279a82d src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1ContractorsContractorUuidRehireResponse.java: id: 80aef14ecb9c last_write_checksum: sha1:3be113547d1b0901216cdf033ba84ca2db2d3576 @@ -12060,12 +13068,12 @@ trackedFiles: pristine_git_object: 8718bb4714ffa66f88322df5976fd76b4be75e6a src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1ContractorsContractorUuidTerminationRequest.java: id: 8e56084824ab - last_write_checksum: sha1:c53033beed636ca1dbbd860c32ec449ece5bbfac - pristine_git_object: 18252a283639369503962812ffcd15b0b4320cd1 + last_write_checksum: sha1:4401ad9977c0af88715bf54bba4dd1b51040b3e4 + pristine_git_object: 21783199bd4344c43bdcc0af7a2994506dbc19bd ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1ContractorsContractorUuidTerminationRequestBuilder.java : id: 6e1b31e878f1 - last_write_checksum: sha1:2ea0041c9a52bc951f501919b29d928dda0435d9 - pristine_git_object: 032a111c510a90e74c9cd7569559d634fa53a896 + last_write_checksum: sha1:d8df3d14f01ee2dd95b4ece9f165fc873577820f + pristine_git_object: 99fd17cb8e6cdf19af9de761f11837577022a5c6 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1ContractorsContractorUuidTerminationResponse.java: id: 71289e062677 last_write_checksum: sha1:166771db36d5f1b4ff60d69686ef8efefcfaee46 @@ -12134,6 +13142,22 @@ trackedFiles: : id: d4299a0cc874 last_write_checksum: sha1:5fa148b8a2364999b15fef4f4cdbdb8e7503a079 pristine_git_object: 04894969f8f2a8e77ea41b1c913d569aad49ae50 + ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.java + : id: 42e3d79bd007 + last_write_checksum: sha1:b8a5d78e93d054114f3208c7d36af393dbbe8dbe + pristine_git_object: 26ef3abedf659df02c3d933fa2edcf68a7933628 + ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest.java + : id: 0ff49614cb19 + last_write_checksum: sha1:28233258e4e807b9cd5b95453f0eaa036c7e175d + pristine_git_object: 19c6000e4a297d45829d7fdfff2e3f4133f89af8 + ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java + : id: 0026da8d0616 + last_write_checksum: sha1:b1b54f9868d26a7e4341efba9fa560198253077d + pristine_git_object: a74a088aa573a63c345a2c13017582a374c0c328 + ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java + : id: 9402809e4f6c + last_write_checksum: sha1:e2cc5492f93a352b0ec9e93e7754846565b359cb + pristine_git_object: 1fe68eab5c8fe1b5d6fbc7377d2e362adcd2e90b src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1EmployeesEmployeeIdRehireHeaderXGustoAPIVersion.java: id: bf0a38d3c6b4 last_write_checksum: sha1:df5ef49f6643fe0f6f02c8ca3850e6fc982a1e7e @@ -12204,12 +13228,12 @@ trackedFiles: pristine_git_object: b623e32959e9119cd609e6fb7e744bbdc8e2b6c4 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1JobsJobIdRequest.java: id: f4ca5387b1e0 - last_write_checksum: sha1:5208879ac338d63dd06cbe8cc5c43703eadbc4d9 - pristine_git_object: ee082f19aebf5277d26eea639cf07dddcb2bd1e8 + last_write_checksum: sha1:41f65bf74ca608f6491a837b610486f127dc485b + pristine_git_object: 342c4e1ae27c488742a1329279e10ddc88560745 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1JobsJobIdRequestBuilder.java: id: e9f28d8d35a7 - last_write_checksum: sha1:b0f47b53165be7b964dcd24e3f5e27b09449ab1d - pristine_git_object: c9d655e1a96157905190864a710d8d2d6db9d86f + last_write_checksum: sha1:811522ad2d781946493feb4dc5d459126c198d07 + pristine_git_object: 2f208c6906fee19b4c8bfab709c5f0c5c6e9c314 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1JobsJobIdResponse.java: id: f3c1b1281d1c last_write_checksum: sha1:2c9aa42157a8a669f649dc88077623d85533f2ce @@ -12252,12 +13276,12 @@ trackedFiles: pristine_git_object: 4ac6140ea27bfc01190222262ffa0f4bb926831c src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1WebhookSubscriptionUuidRequest.java: id: 8439a34330eb - last_write_checksum: sha1:de1737f1f34e7c4d9023837a2c2c529c75a91c2b - pristine_git_object: 5da9e4127f19c38305d5d479572e81cf34cb7ab1 + last_write_checksum: sha1:6ebeb64369f0a1dae017f2000f5cea360f8c62fd + pristine_git_object: 5859eb49698999088f6613737518f0e5b4c7426d src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1WebhookSubscriptionUuidRequestBuilder.java: id: c89a648a58db - last_write_checksum: sha1:60f91b89d1b562edb9a142571c5272b8cccaa0ae - pristine_git_object: 6c8bb2e64e1e590d18790826deaae03068142992 + last_write_checksum: sha1:e3f3fbafffcfa0652d41582edc873a6673080544 + pristine_git_object: 468004206a75f03893ab55123bad261ec14718dd src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1WebhookSubscriptionUuidResponse.java: id: 3f067e8211f3 last_write_checksum: sha1:f7fc3aeefd902de4f4baacc047e12a0fb7bd986e @@ -12272,12 +13296,12 @@ trackedFiles: pristine_git_object: 51bae326590ae919e99f0424eb990332b5f4e3ac src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1WorkAddressesWorkAddressUuidRequest.java: id: 1b1967875195 - last_write_checksum: sha1:872d85139d0fdef81bfbcb7101bf592b149d5148 - pristine_git_object: a7de594e648bd7a8f64e488bec72216196b8c45c + last_write_checksum: sha1:b07541c01f75e7a64e51e80f0f48c42d79498ea6 + pristine_git_object: a2eb5d0071c35c3e958aa5dbcfe43ca73c78c4e8 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1WorkAddressesWorkAddressUuidRequestBuilder.java: id: 526417b027ba - last_write_checksum: sha1:bff6043a7f95b152fb242d0538a541b5657f96fb - pristine_git_object: 329e277bc4c768d26c407d1181adb229bab7134c + last_write_checksum: sha1:8ef9cf915c172605744b35e425b42c958f78489a + pristine_git_object: 0260c35fb923dbbe9aa8b9fd514a227d715d9948 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1WorkAddressesWorkAddressUuidResponse.java: id: 6dfe8d74bb2b last_write_checksum: sha1:fc057dec508ff9b29ea2e41c71d03058827d1a23 @@ -12304,8 +13328,8 @@ trackedFiles: pristine_git_object: e46890592d0e07422fd27da87e4ceffa31199b6b src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/EntityType.java: id: 8ff8a918f1c0 - last_write_checksum: sha1:c1fab892035e276af9bba17a2c35213bcb053a63 - pristine_git_object: 95d1eab47f6f4752b33a79efbb0cacb8fe27c88f + last_write_checksum: sha1:0bb8933fa36e65b808629f357fe19655b9c64d78 + pristine_git_object: 4d6546414f9efe487697965747d7a52aee7796b5 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/ExperienceLevel.java: id: 6557f7be847e last_write_checksum: sha1:05bf7f21d421822f8c833c77f718adb836124893 @@ -12412,12 +13436,12 @@ trackedFiles: pristine_git_object: a9bc182a605debac8cb32b85021145ee5c0491f8 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetCompaniesCompanyUuidWireInRequestUuidRequest.java: id: d8a8ed4b2c38 - last_write_checksum: sha1:cb7557397a8539d5bda4bdd98cbd5c4b32afdc64 - pristine_git_object: 7ce93863ecbe3589a24d0ce52b5a9729d29e5c15 + last_write_checksum: sha1:abef5266c12de61373581557c731660f7f1246b7 + pristine_git_object: 9244b18401d7e00e9c554c78b6ef5d21d101b1ec src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder.java: id: 0ebbc08e0588 - last_write_checksum: sha1:e264d6846585b2a6a69bd3710613e98d9dc62d44 - pristine_git_object: e1620822113725494eb1751313f5db3abfdce166 + last_write_checksum: sha1:3db26cbcd777c03c07f7a1eb0b31f1c0a6c3145e + pristine_git_object: c91b8635171b9212b90701e8567bca2f871bfda6 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetCompaniesCompanyUuidWireInRequestUuidResponse.java: id: a3f00c54d8da last_write_checksum: sha1:46e2bd988003051769a63e6790b460973e3aa6e9 @@ -12428,12 +13452,12 @@ trackedFiles: pristine_git_object: a367c64cf213b85c8482e2e192422976476c0443 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetCompaniesDepartmentsRequest.java: id: 1af670420a88 - last_write_checksum: sha1:1199b94f3fdda950baf89e3eacdbe3ce759b2e32 - pristine_git_object: 623191f898a7e709ba32ecf368532cc0ed69147d + last_write_checksum: sha1:15ffde24f88e22af7bd13122072c22b70a8757ed + pristine_git_object: f6460ac6c6ae1ccff31bf649ca949f8772c8f517 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetCompaniesDepartmentsRequestBuilder.java: id: 8a333a9964e4 - last_write_checksum: sha1:ecd7a73eb6b5fbd4d8cad0909e6bb78479d2f9de - pristine_git_object: 77b1fa56b616c3cfa4ee8b767441c3a3ebf50689 + last_write_checksum: sha1:7c968f923a213b92ac58a6c973f3c6bc4a50b315 + pristine_git_object: 6a85595bd323be980e0886fd683e787ada67224b src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetCompaniesDepartmentsResponse.java: id: 02e3ab343f1a last_write_checksum: sha1:81a2b51e63a23ad3fc8de651d18b86f8fb17a66e @@ -12444,8 +13468,8 @@ trackedFiles: pristine_git_object: afce621d55c7dd4946ea1719ab5147ca5f709e90 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetCompanyNotificationsRequest.java: id: 8813d101963a - last_write_checksum: sha1:0d96e9d3f7c5049630d5c81faaf1b1cfd7e163fb - pristine_git_object: 9d1c5c565eb8af73cbc5a20a9826f29bc12e2dac + last_write_checksum: sha1:47fa7876797c070fdced9ff3549133f1f59031a0 + pristine_git_object: ab635f6b1ecd281c940a5975a26574f98ba1bb19 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetCompanyNotificationsRequestBuilder.java: id: 4dc661149bbc last_write_checksum: sha1:8e90f5fd79d8a39a81f193668e0fb55a16a5c53c @@ -12460,12 +13484,12 @@ trackedFiles: pristine_git_object: 9822c901f9e753e4f4a477f69b0871494ee6cbe0 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetDepartmentRequest.java: id: fc872fc2d43b - last_write_checksum: sha1:de933fc961744a9625fe044501c37e5fd4257f83 - pristine_git_object: 486191da4adc88a0b1900864310fa3479ebdb0bb + last_write_checksum: sha1:4607c622932102c7e951d2e1e4476005af3801c5 + pristine_git_object: d721f444f9f93318b01d5b851c09505400d0d473 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetDepartmentRequestBuilder.java: id: 411ac7ab5e4e - last_write_checksum: sha1:e5913742365dd7dd80486cbe760665480361049e - pristine_git_object: 293638e3ef9aa549e145e76cabeddd6ab0902e7b + last_write_checksum: sha1:cab15422b8dddee59f13ab91626dfb6acc4b4b71 + pristine_git_object: 59fda67638c46ce5e515faba85e5d98fba65a23e src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetDepartmentResponse.java: id: 282d7a4e0218 last_write_checksum: sha1:f3ea409c6a188409cf255cf371f3101ef548e870 @@ -12548,12 +13572,12 @@ trackedFiles: pristine_git_object: 8387207b29912fbd100867b7aaa29776c797c116 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetNotificationsNotificationUuidRequest.java: id: 37141a26f14e - last_write_checksum: sha1:751442af432362ee3f1d8d909243778d7a455c82 - pristine_git_object: 70fad73dbb60ae13f0c3a09f9ab265bedc68cd46 + last_write_checksum: sha1:2c106fcac30debdfad7ab915682a04dbadb473d2 + pristine_git_object: adf6652001c69081cff2c9a096c00781b6e5cee6 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetNotificationsNotificationUuidRequestBuilder.java: id: f31146fd4fc6 - last_write_checksum: sha1:2f294921461ca66fcffc9e2b1fb96f740cb6d154 - pristine_git_object: ab0df7ba72b21923a110c2b5bfd761b0e3258a9a + last_write_checksum: sha1:15db1aaea2e4903920f413ebbf43fc05b212dd2c + pristine_git_object: 14f0b39cf8d35b6cd5c7bb4b5caeb84684ff1f61 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetNotificationsNotificationUuidResponse.java: id: a3e6fe189653 last_write_checksum: sha1:32bfc3ba20f399d085f643d0b98c88afad075bfb @@ -12590,6 +13614,54 @@ trackedFiles: id: dda37433eb4e last_write_checksum: sha1:ae27d066d9c48508b3066d3fec8ad7f559d6cb39 pristine_git_object: 58913d011588b9192061f387b291ee8cd7fde163 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetReverseWireTransactionsHeaderXGustoAPIVersion.java: + id: 0dd24d1ce8bc + last_write_checksum: sha1:ff0d5990873b8e7444f81f75b34afdb10838523d + pristine_git_object: d6aeb331d265927a63b39552164fd582836eb5c0 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetReverseWireTransactionsRequest.java: + id: 9ac226e27639 + last_write_checksum: sha1:135979dd132ec4b1206cf73eb8df55370c8d6ece + pristine_git_object: 74925eeace0aa2d4bfd62c9b9984742b2a6eb581 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetReverseWireTransactionsRequestBuilder.java: + id: 528c339c9652 + last_write_checksum: sha1:62831ce071c61e12863fd8c53551fdec2157c83c + pristine_git_object: 3725de1435c46ceea6674c20f59d95cb89501884 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetReverseWireTransactionsResponse.java: + id: a1af0ccc8aae + last_write_checksum: sha1:9201ad206b6178afa7dc0838b87d6c9f1a6cf57b + pristine_git_object: e8e3fcdf51fe7b9e96b1f510b45b5d6df7792ce2 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetTaxPaymentHeaderXGustoAPIVersion.java: + id: 862eec9ea17d + last_write_checksum: sha1:6dfdb0074675d3c18851c03e6c9cc98db2da6aee + pristine_git_object: a440d7350252921814dd07a57d62a233a1e2c7bb + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetTaxPaymentRequest.java: + id: ee606568221d + last_write_checksum: sha1:2ed8169e92c2fcb74c7ce81836aa0c2e844f04c9 + pristine_git_object: fe8fc745698137dbaabb3d67ceef2b44c49389d8 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetTaxPaymentRequestBuilder.java: + id: 36aa6a8c6b95 + last_write_checksum: sha1:819b5b6f12d0269310532f42678bf2de0dfe8bc5 + pristine_git_object: ebb804db5624b878647e72ed98482c5f93a820a1 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetTaxPaymentResponse.java: + id: c7b233dd6f7c + last_write_checksum: sha1:2ea8b316712d46fe9e3cd1212b74ea6542e629ff + pristine_git_object: 8373305cce9dcc78281da2811033f22c94d7a6e4 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetTaxPaymentsHeaderXGustoAPIVersion.java: + id: 757d7e61f552 + last_write_checksum: sha1:5ddb94f78a53613f1e5ecf731dc066468501018b + pristine_git_object: 60c8b7a046180f424e4d5dd4d41e049ae0490118 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetTaxPaymentsRequest.java: + id: c2704cb190d4 + last_write_checksum: sha1:70efa908d52318701f4be0c431c1073dbb338d10 + pristine_git_object: f08e7b27f32ff6648c4726bb75f0e02bb9e925bb + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetTaxPaymentsRequestBuilder.java: + id: 2ae0c4f47b29 + last_write_checksum: sha1:71d9342d39d99bcf6c792959850120f538c10612 + pristine_git_object: 505dc985983d036474ada32550e56a9845bfa82a + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetTaxPaymentsResponse.java: + id: 3b5b9c97be5c + last_write_checksum: sha1:916d8d4b969c4a37bf2f65e9648372684a41c39b + pristine_git_object: 354b8e622600694d6c95b9cdff32e92583ee3785 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1BenefitsBenefitIdHeaderXGustoAPIVersion.java: id: c7a6bdd16a90 last_write_checksum: sha1:c503eb2df45c06aa0ca2fcb82d9959a7e2c874b4 @@ -12652,8 +13724,28 @@ trackedFiles: pristine_git_object: b18eb2f87b07ad17b220146f234d0a76e59fea7c src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1BenefitsResponse.java: id: 6a8afecddaa2 - last_write_checksum: sha1:f2c8e42a811b894a79de870f202c942a2e6123ef - pristine_git_object: beb118bb393eb5b2990c9ec28af78d2117078ca5 + last_write_checksum: sha1:5300d67c58d21250b1248c838e6adb35b8ee3173 + pristine_git_object: 81d092937771f2afa741401fb18134dea0279231 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion.java: + id: 314597212ad0 + last_write_checksum: sha1:ea5a4ebb9e9153bd0802dfaab57fe8aaf19f018a + pristine_git_object: 32f4f0f4ac48249a96f3437e1420c9ea69761b6b + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1BulkReportsRequestUuidRequest.java: + id: f0b26f26e3b5 + last_write_checksum: sha1:9df3d99bf6121cc80c1a5b352054c03d2b811db6 + pristine_git_object: ff412bfc5329d2ee39634a17c9e6bc9d6eea3847 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1BulkReportsRequestUuidRequestBuilder.java: + id: 2e390c4d4c66 + last_write_checksum: sha1:287c7b71e812b21d51b8a2f81f4692438796fd19 + pristine_git_object: d49c2711d6a1c8a4a8b3e934880dc000440d0472 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1BulkReportsRequestUuidResponse.java: + id: eb44e98845c0 + last_write_checksum: sha1:ed8d1864d8997febb52baf62d878d632e6eb89e4 + pristine_git_object: 9ba75337abe34b2d9965d6eb5f9c71fd4b4660a0 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1BulkReportsRequestUuidSecurity.java: + id: 6beaddb38259 + last_write_checksum: sha1:5948e6ea94eb710669c62ce1858ef671cd3ecf3f + pristine_git_object: 3d6e0f7f2610ddb49fbb8d7bca9f560b84ed11d3 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesAttachmentHeaderXGustoAPIVersion.java: id: e67f06b811f6 last_write_checksum: sha1:8ecd0975c101f87b9810f0651de0d27531badce7 @@ -12768,8 +13860,8 @@ trackedFiles: pristine_git_object: d459e4a160473ec092d43ba1178c875c4c96cdb5 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyIdContractorPaymentGroupsRequest.java: id: 9209bb9dd948 - last_write_checksum: sha1:40a0427983444eb1907ce2c0b48b98f1f0e29e4e - pristine_git_object: 0699e163944c8c4615297bec9429e3c9968e05f7 + last_write_checksum: sha1:15d70b498d3f6b208fd07aea6c0472af7e466e63 + pristine_git_object: 1b706199a42a37989bba7f03a1d65ed494bc27e5 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyIdContractorPaymentGroupsRequestBuilder.java : id: 8f00b7f78ba2 last_write_checksum: sha1:1dc5ff2cebd2f932bfe470960d57788758c1c00b @@ -12804,12 +13896,12 @@ trackedFiles: pristine_git_object: 3beea165070bf53f5b4917ee7de98bb7965a4012 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest.java: id: 2b8144a91091 - last_write_checksum: sha1:572b0fea8d69a5c80d1a14a30e8871d456c7d582 - pristine_git_object: fbeac9f0073a6e08642de265715d0e47f3d0fbc5 + last_write_checksum: sha1:0e76777ab895e1f8beada0d8190882dc268ff798 + pristine_git_object: 9313b5097701c6cd1601a44a640a6da942abc001 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder.java : id: c428f52e4919 - last_write_checksum: sha1:0aff2c52016377d6514322cf97d020060d8bdbd1 - pristine_git_object: 7c2db6f71c367c677fea95438b092ce893b3c862 + last_write_checksum: sha1:594e96a0a4ef45b655755cd18c7d910050789e5f + pristine_git_object: 042b20e45176bc6c99c7f398645c8819a7618fd0 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsResponse.java : id: 8ce6785ec190 last_write_checksum: sha1:07a911a8a65bc18ef702fb2f0fcd475b7296d8c8 @@ -12888,12 +13980,12 @@ trackedFiles: pristine_git_object: b3e488feb168a3ff2c75cc07fe24ffd1e5fa899c src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyIdFederalTaxDetailsRequest.java: id: f1fc574ad994 - last_write_checksum: sha1:b44fbd2cac134b4fe2c93def3ab5f533cd3442ad - pristine_git_object: 9da8cbed439f8b76c42834d136da4edd537b8a08 + last_write_checksum: sha1:1a9e33a8a35ae35762877d9afc15314a0e492147 + pristine_git_object: f104b342fbe8dd89739e0741d0170feae0007498 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder.java: id: b3a84e8a8e96 - last_write_checksum: sha1:19a8c649aebadb943df20884b97334a10167b700 - pristine_git_object: 24a860269bb78de487db55ab43ddc4bfd2e8b9bb + last_write_checksum: sha1:db794d56e3f1489542346c8d571dfe1e291d0874 + pristine_git_object: f65e26c323f5adb1c3f6e96b46fc1f4cd42292b6 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyIdFederalTaxDetailsResponse.java: id: fed681a57b26 last_write_checksum: sha1:2a5e57e0ced58b98d1d9692af673705e490ddef5 @@ -12972,8 +14064,8 @@ trackedFiles: pristine_git_object: 44618040eb7470e498d0d450b327011acdf4c8c5 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyIdPaySchedulesPreviewRequest.java: id: 75fa923e7396 - last_write_checksum: sha1:54142bae92c3858aceed06fb9a733e3844c85cf2 - pristine_git_object: b8f396774594ae324254abad80340f873da64933 + last_write_checksum: sha1:5119c329319e94285b385d71d924c4622a7726f3 + pristine_git_object: 766b3626873bf9c94e37f71be63ef6f42a0b2a5e ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyIdPaySchedulesPreviewRequestBuilder.java : id: efc9d850e7db last_write_checksum: sha1:30707f147447977ae6395701fbe3bb5c505d9958 @@ -12994,14 +14086,18 @@ trackedFiles: id: 05224c20f6c3 last_write_checksum: sha1:a7c833b53b913b29835971594fe48ce5db8c66a4 pristine_git_object: 28b812e35824d63b45f6d8ddd1ffdd25a6367879 + ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion.java + : id: d4c702acfc17 + last_write_checksum: sha1:c2022d74fb12a381102ace002ec449a763c1db46 + pristine_git_object: 4d9dd5bece6d4660142fd54a78863e0d1b1a71c3 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyIdPayrollReversalsRequest.java: id: 13ad86f7e560 - last_write_checksum: sha1:504db0cf0ff068f901a34168fa72c1041735d026 - pristine_git_object: f970897b98b6ad62af5165ef10afc8c35c65d146 + last_write_checksum: sha1:5f5f3583ea9d39c346ddd983edcd6f62a5c0bc63 + pristine_git_object: 05f60ec829942093b5039533e8eaa1385a06b429 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder.java: id: 136e0e74a41c - last_write_checksum: sha1:45380a8cea3c15a61d07859075d0aa66b80e14cb - pristine_git_object: de85e1b04ff62bf75e7157592cae410e939b8ddb + last_write_checksum: sha1:2c045757c3862bef79f9f7b2a45cbfc43e8c75a7 + pristine_git_object: 0bddf8b9cfc6a005c9d0adf801eadd5e83d74d16 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyIdPayrollReversalsResponse.java: id: b9053b88bb53 last_write_checksum: sha1:ccbb61b7320d71d684d4d3740ee257f1f249e714 @@ -13016,12 +14112,12 @@ trackedFiles: pristine_git_object: fa0e620bf91085ec0a4cc12b4442e7619268f4fe ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.java : id: 549447a090b7 - last_write_checksum: sha1:12e30c911a9fa1fe76a0728293c81ef077fe6eec - pristine_git_object: c4e350a4362a2d6961036fb32848227cc0da2502 + last_write_checksum: sha1:de1af1fc240f4568504219fcdc6fdb4b564325f5 + pristine_git_object: ecab55ee1fcbc1654cd69ff2616e5595c74d3878 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder.java : id: ac6241b50808 - last_write_checksum: sha1:ca6cd1040ca958da165317c131971ffbe52520e6 - pristine_git_object: bd521d34eb8604b6ab1131161fc5290829707191 + last_write_checksum: sha1:938e0818fc3cf095591f14788341aa762e3533b0 + pristine_git_object: b4e656a1e86896fc5679a4a799f405c3c99126a7 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsResponse.java : id: c6d1662995a2 last_write_checksum: sha1:9a1513ecb1b2a943927b64065695643cbf761506 @@ -13036,8 +14132,8 @@ trackedFiles: pristine_git_object: 9cfa432458fa34890787e53edc760668d07276f1 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyIdPayrollsPayrollIdRequest.java: id: 8d1a3ff568e2 - last_write_checksum: sha1:4e6f044f30d7ade87d15432eb6c5eada6a4e4d1f - pristine_git_object: d652b1c7fbe581410393340d903ffa428b2b7ceb + last_write_checksum: sha1:87e5804fb063531f6d0d186bb5f976b45010c1f7 + pristine_git_object: 57e2a246730344442ebe3d756623655ed1a6478c src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyIdPayrollsPayrollIdRequestBuilder.java: id: 273f313d6b59 last_write_checksum: sha1:e555df632db50be309d2d2576d4a3a87d3287874 @@ -13052,8 +14148,8 @@ trackedFiles: pristine_git_object: 8104bf92a4927352d33d0d692dbf02b948f335ef src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyIdPayrollsRequest.java: id: 141e2f1b7e6e - last_write_checksum: sha1:ff8e031c0ad055464996a85e564ce3707d43024b - pristine_git_object: a2f35fb8b48ae7175fc4df5c490f7a1e78f57b56 + last_write_checksum: sha1:4dde185b9195791d6979e05a7cf1cdbc50d43406 + pristine_git_object: 7b023a632376b838e0da579f865853841ad4397d src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyIdPayrollsRequestBuilder.java: id: 187441d0390c last_write_checksum: sha1:708a91474d607ff9427bc02a980cf438a6ff916f @@ -13120,12 +14216,12 @@ trackedFiles: pristine_git_object: c9dd8580e34fa9b6993130ad0f84bac6e2da77a2 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyUuidSignatoriesRequest.java: id: 1e56a41dab02 - last_write_checksum: sha1:3f7cb84d267c824b22e932379dab536732db1a96 - pristine_git_object: 8c61f3f9ade3183a8235f1802447db41eaabce18 + last_write_checksum: sha1:68ae1aae7aac9e34c2b00eef564649ec01e921c4 + pristine_git_object: f1922ca20b3934c0e13b89975a66276024728b8a src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyUuidSignatoriesRequestBuilder.java: id: 8a0076c649d5 - last_write_checksum: sha1:0e209813373ba4af8a15a4a6253618a558fb5bcb - pristine_git_object: 6180bf2becce4f1af9cb390f04c4a56cfbd65fbd + last_write_checksum: sha1:2e70e5f951751489f4db112372cdc04e71e10a13 + pristine_git_object: 7f94a058dd576dde2ff7f5e2df00b6aee3273061 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyUuidSignatoriesResponse.java: id: 1fd26c75442b last_write_checksum: sha1:a29c1f3bcf47a6d3004a201be23168ad43351097 @@ -13136,12 +14232,12 @@ trackedFiles: pristine_git_object: 8d987217a2842ace045f1e8a3ee670d19a093724 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsRequest.java: id: ab2810d4dc8d - last_write_checksum: sha1:f28074de3d72a25a6d3f389403e93ae2aa5cdbe9 - pristine_git_object: b0d76ce55f3bf3d7c4f3c8d0cc11f916ed5c88eb + last_write_checksum: sha1:d8a27ac8bdadcb51e94cf681177bfd118f6499cf + pristine_git_object: c7bb97bc9263b1b4973c2c9564e71b3a82c42747 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder.java: id: c9a39fa416c2 - last_write_checksum: sha1:38244350e81c8d0843a90eb3932a130598afc108 - pristine_git_object: 39e1c49becec8f8c71fc642fa629d9892648a927 + last_write_checksum: sha1:f1f60277cd143ba0445417f73491af6180763750 + pristine_git_object: dd85cf3c91fd947c0e073d0725cba3065bc062dd src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsResponse.java: id: 6ccd04d21cf2 last_write_checksum: sha1:47aa678f6902a056f1280bee0109e3993412510f @@ -13152,12 +14248,12 @@ trackedFiles: pristine_git_object: ecf842cc7e06669adb8d4abb359f042ce25b6fb5 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsStateRequest.java: id: 99686858bec9 - last_write_checksum: sha1:1299f30ecccf1f1bde9be2b92a79c6fefdb5ffa2 - pristine_git_object: 9054aea78e82c521468aa733414556570a23f7c4 + last_write_checksum: sha1:95958854b26ede6f36bc307deaa925b9400f890f + pristine_git_object: c2cb89a254d0dc9865ef4bd8fbc1c3065870fd31 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder.java : id: 5e685f2118b3 - last_write_checksum: sha1:4c076c038010592a2edf539b1ba7b3fc7b3fbd86 - pristine_git_object: 598ca54273deb44499dd4c275daa6cbf9a0b0c54 + last_write_checksum: sha1:1d2572231eeb3b82cdd7b93f435d62f691f500da + pristine_git_object: 4bc72ed2063a0af4a7f1134815e8bf43d74dd12c src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsStateResponse.java: id: ccee7f96f154 last_write_checksum: sha1:5984b7770df92be557dbc8636e2edd91e08e15b9 @@ -13232,12 +14328,12 @@ trackedFiles: pristine_git_object: 4925dce31d507238be8400a9c94f50d921979037 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesRequest.java: id: 0bd886d878e2 - last_write_checksum: sha1:e54c5cd7ab2e4ddc92aefb897260f0079f61290f - pristine_git_object: 9bbfaa2a9f859200c33f979dbc2fc44d795261c9 + last_write_checksum: sha1:efa5d7a596dcb5a28897d8e2b59004d3f355e14a + pristine_git_object: bcf1179623ff2b415afefc995619b3ca811fcf18 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesRequestBuilder.java: id: 4f4bac872af2 - last_write_checksum: sha1:ba02c9a71fab19e5c26f12452858cd2a4e7bb3ac - pristine_git_object: 2f27894cbc68e841706f2d204b97c7b20c620f16 + last_write_checksum: sha1:ba01b351d4e111d523e25b98e44e3b8a821d4478 + pristine_git_object: c361fcdead620c7b6764aeeff9e3c983d4fa9ae5 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesResponse.java: id: 18d855760f34 last_write_checksum: sha1:bd715f6deb76e38f23dd976342361b6db19138af @@ -13312,12 +14408,12 @@ trackedFiles: pristine_git_object: f165a88cf2e7814607ecedd8362a1bdbd562c642 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompanyFinishOnboardingRequest.java: id: 10e5b941958a - last_write_checksum: sha1:3b1c43a8901ac11a1194b05a0fd5d5c23a0ca2eb - pristine_git_object: acfbbc0db71365b90cff5253360a433c8dd9c834 + last_write_checksum: sha1:44bf1a0d33437a4723c6b46c932a286449f8c0e3 + pristine_git_object: e5edee068ff5deeee01bf988b1738d25aa49ecab src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompanyFinishOnboardingRequestBuilder.java: id: 131e235af40a - last_write_checksum: sha1:5111b60078b78cc6c5e04074ce06a9d68c1aec8d - pristine_git_object: 3afe7b780af2346d4c212ca605fe87947224841c + last_write_checksum: sha1:0189424b831abbaf7401121dff2c54eac6fcdb03 + pristine_git_object: 27f42dc32d78a816191a9e3f532e96e4f2d8d48f src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompanyFinishOnboardingResponse.java: id: 2f970327b0dd last_write_checksum: sha1:4a5b12cf722672836ff6477a3669130027623761 @@ -13376,12 +14472,12 @@ trackedFiles: pristine_git_object: 33108f78adc36c7720d2a2353d5ca2648937c9ad src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompanyIndustryRequest.java: id: a4fd0ab90c5d - last_write_checksum: sha1:a0c4ff26a445df5b3a9ff780ea7c4739c94734c3 - pristine_git_object: 18a33a948c7649d66c59d92ed6d11b2a904ed086 + last_write_checksum: sha1:969110d360b9addd8acf3549133b695f3769f10d + pristine_git_object: c393100e89d96b1fae23f76be91054041d97da7b src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompanyIndustryRequestBuilder.java: id: 49bd15fba277 - last_write_checksum: sha1:13d251fc2c8e9bccd4ff2e5fa5d3521b0a87c2f9 - pristine_git_object: d7f76752707f1cd18d3143f0967e1bddc285b861 + last_write_checksum: sha1:3d87971dd6611aa092a6d9c3eaae60d7271ceaa0 + pristine_git_object: 22bc3fb9fb2175a55b5bb9bb8c4af056cddd492c src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompanyIndustryResponse.java: id: 7fcdbc9914f2 last_write_checksum: sha1:3fba085caa7c28d3dacd87ae6cea2f0d6114eca0 @@ -13392,12 +14488,12 @@ trackedFiles: pristine_git_object: 2e5b8ee33f1647339fc6421f7539b24e28e95ee6 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompanyOnboardingStatusRequest.java: id: dbd41462a361 - last_write_checksum: sha1:71b9dd8d18fad6b3fdca3c83a8cff678c83d7c8f - pristine_git_object: 7b5fe9a57dfae0f9d8a849f4037f5954caca5706 + last_write_checksum: sha1:b3fec840b0a1105d3e47ed37d485640359043841 + pristine_git_object: b73602ac09bf3b1316d7557bfcc94aaed3d79225 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompanyOnboardingStatusRequestBuilder.java: id: c1d41905b285 - last_write_checksum: sha1:f23a3c464bdf64b5ac2b072dc3a39c15231ab9a7 - pristine_git_object: 4ce5ea549ef88d02dbc760ad9a041c1ec7ffd434 + last_write_checksum: sha1:c4c15c2fb472a708c6790927e910818062e5eb9a + pristine_git_object: 0cb99f82e2aeebe189ceabde32f3c9a92c878800 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompanyOnboardingStatusResponse.java: id: 853d62398736 last_write_checksum: sha1:6a4132292ec58a32c159ff808fbe9bc0fd99b350 @@ -13536,12 +14632,12 @@ trackedFiles: pristine_git_object: 2c43df2f8041c2348cc4073ce4329b8b73f2b34f ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.java : id: af9cb4265d85 - last_write_checksum: sha1:ba4b844aa76f4e1c7bb8cfe60f2b7bfa10a9845f - pristine_git_object: 7ddeb3a9096d390a837c687165aaed3d61e3de7d + last_write_checksum: sha1:c475fbe7e74b0156e2a0d6dbf090e8e684f0b52b + pristine_git_object: 533287d587e80c3cbb46fd92991cc7bd7bfaaa8a ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder.java : id: 7875fe01c80f - last_write_checksum: sha1:a45722be69fa6458ae048b5b729c9a06a91f24e2 - pristine_git_object: 6749c08a870284c271b69f3dbf9478cef067f0e9 + last_write_checksum: sha1:7b3061f61c01cc9e3da68f5a0751bf86c33f1614 + pristine_git_object: 9bf3f99a905807ea1067663dae796f2aea2c8fd6 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1ContractorPaymentGroupsContractorPaymentGroupIdResponse.java : id: e75f186371da last_write_checksum: sha1:a264282a10525bd5fd6277b682e88e1ced7ce7bd @@ -13552,12 +14648,12 @@ trackedFiles: pristine_git_object: c68c117f14dd29b2a3a4c2af79527fcb22f8874e ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.java : id: bded16daa71e - last_write_checksum: sha1:7ed09386344bbef2cbbfab541540a7a9f1752628 - pristine_git_object: 5942afe1a19aba5f2fdddf33def853891b80e31a + last_write_checksum: sha1:fcac515d5a962a9fb0415bd675d2943af02b15a5 + pristine_git_object: 799c9c2defa750506eaba44ed38b56aeb146a40c ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder.java : id: d2406fabf9cb - last_write_checksum: sha1:6f04a55e792db07b9fe63c3435fa6cbeff4c35d8 - pristine_git_object: d5cddbc2d7414e980b9fc332ab30a1c736ac617c + last_write_checksum: sha1:47feec95d6dde3e1095145c3f60b6e46c3475ea1 + pristine_git_object: 6bac133ca0aaeb8e8d16aa08194b520444f3a23c ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1ContractorPaymentGroupsIdPartnerDisbursementsResponse.java : id: 397ccab1b12b last_write_checksum: sha1:34b14cf675ae9db69c6ade355ba15220530f8d72 @@ -13646,6 +14742,22 @@ trackedFiles: id: 81a42f3ccc4d last_write_checksum: sha1:18c2c55e274161ede5cac3bc2722bff4de773e99 pristine_git_object: 4086db0cfbd9aee715105037cdc63b513f1853d7 + ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.java + : id: 43d70240cb05 + last_write_checksum: sha1:400bd3a8c5d62b795cf6a75bf7ef7902473b45a8 + pristine_git_object: a807b7c7e9d5c56e8e2955c501f1742ea81d6bfa + ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsRequest.java + : id: 6b497f6cbbe3 + last_write_checksum: sha1:d39d32d8fc13103edaa9656e33ec5cb2b8924ecd + pristine_git_object: 9f22aeb974a27568d6bf9256abcbc02b539666f8 + ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder.java + : id: 5fe3ce583e31 + last_write_checksum: sha1:7d240141d2550a00eaf4bccfe60591f9970f80a7 + pristine_git_object: c5fe2d8c4667cd326ab7db750395d5756f3c36c4 + ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsResponse.java + : id: 4a0282e94c6e + last_write_checksum: sha1:c07b4278c1e98a465476b13853c6239275178701 + pristine_git_object: 45b5faab87d17ba6858a53f0b9d646b5c45e2316 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1ContractorsContractorUuidOnboardingStatusHeaderXGustoAPIVersion.java : id: 0e2fc51bdb11 last_write_checksum: sha1:cc84912471b9a4ab2db73e4e179bfbb1728223b7 @@ -13678,6 +14790,22 @@ trackedFiles: id: 3fe8568b09d9 last_write_checksum: sha1:4a67449288f832411bc20f0c42617ce74c7f3d22 pristine_git_object: 06635168a07fa56f5b541ae4a98a75b789dc6a1b + ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1ContractorsContractorUuidPaymentsHeaderXGustoAPIVersion.java + : id: 03d3238539be + last_write_checksum: sha1:2c0e431b2642d463dd3ba59ae55224ee03d0d4c5 + pristine_git_object: 50186a5ac59c75e8c9c00e4eaddf10d03067641d + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1ContractorsContractorUuidPaymentsRequest.java: + id: fc53590c34e5 + last_write_checksum: sha1:bb445c3f05ad2a4d34108830b4e30ca35785eaa6 + pristine_git_object: eace839f4090f1cf55ba390fa4288f973bdb56dd + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1ContractorsContractorUuidPaymentsRequestBuilder.java: + id: 529def8efcf5 + last_write_checksum: sha1:01749559739a60af15a09647a1f2ae2e43006cf2 + pristine_git_object: 7b38cac3625f67d6569ba63b69e97bee1a11684c + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1ContractorsContractorUuidPaymentsResponse.java: + id: 6ed934925a06 + last_write_checksum: sha1:80d1acd98cf8304a7f1667535bc84cf5a8223a32 + pristine_git_object: 8de7f2d99b4ec096a29bc31a78c3216a029e4eed src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1ContractorsContractorUuidQueryParamInclude.java: id: 7a2f7220ae22 last_write_checksum: sha1:12b81216f72cd5245dc1e75d31bdd53e743a11f8 @@ -13780,12 +14908,12 @@ trackedFiles: pristine_git_object: 2831ea7bb4e60cfc43b3042e519c72e1fc0925d0 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1EmployeesEmployeeIdCustomFieldsRequest.java: id: 1cf37063de7d - last_write_checksum: sha1:62a48a0cd909d3ba5a8877ba1e77e56caabe0ce0 - pristine_git_object: ab2c8d8ab94fd209cc7241824bc2889481b5f696 + last_write_checksum: sha1:0ab32877f4da015db553bea867a1f20da87d7e67 + pristine_git_object: fa8bdd47745f28b34930913b21a7daa769a59648 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder.java: id: 02d707ad0ced - last_write_checksum: sha1:5861c01fb4a8198892c29953a852db928417384e - pristine_git_object: d8eb2beaf98e2576385be8c6302992a0fa15d987 + last_write_checksum: sha1:39ed6aca63b5de619132781397d589cc4ac9a74f + pristine_git_object: 21792dd6f99d276cfbcab75cf2c23f5c3f927f68 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1EmployeesEmployeeIdCustomFieldsResponse.java: id: 8aaff6969318 last_write_checksum: sha1:e0d93721f30d4bac4114d7210aa9a511d78f57ca @@ -13864,12 +14992,12 @@ trackedFiles: pristine_git_object: 1d91b74cd0784fcfefbada914ac53d5f28905f23 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1EmployeesEmployeeIdHomeAddressesRequest.java: id: 43e95bd06692 - last_write_checksum: sha1:3d003498eb341dbfcd4f7fc043a805dba63f0e8f - pristine_git_object: a07ec9b9a773f9e518ac713c28469c44e9422dc1 + last_write_checksum: sha1:72f3354b2c3786bbd105c77b52b8f7b88bb932f2 + pristine_git_object: d5c6cd25e2c466f908727eadce0fc45528978a9f src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1EmployeesEmployeeIdHomeAddressesRequestBuilder.java: id: fa5a58e0c025 - last_write_checksum: sha1:3ab9604e1476e544b01096e99c9b4fe29db1c76a - pristine_git_object: 61993c7e46676da5f413b235ce210b7b482f7483 + last_write_checksum: sha1:3cf3f087f79f551fae6a94b35ef09dec57cb7481 + pristine_git_object: fd6d63a3b9b08f217571d15ba098a84c228bdc33 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1EmployeesEmployeeIdHomeAddressesResponse.java: id: 0a54c660be59 last_write_checksum: sha1:fd654f96941fcc729af0628c188cf22545e432fa @@ -13932,8 +15060,8 @@ trackedFiles: pristine_git_object: 8f885f57b479b80e963052b190784f1e0e28eb44 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1EmployeesEmployeeIdJobsRequest.java: id: 49ad6ef25668 - last_write_checksum: sha1:096eeea0c55e71120e34dde43d5afcf241e02096 - pristine_git_object: 04b86b4523f4a6bc54ece936f2e102c0f450d30b + last_write_checksum: sha1:904ffafac1255898fee3dc1b21ae7eac48c403bb + pristine_git_object: 829ec33536731927181979fae6f224c2d93b59ec src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1EmployeesEmployeeIdJobsRequestBuilder.java: id: e1710aca101e last_write_checksum: sha1:4d7efb2d725c9a02b94371824554a85ecac02711 @@ -13942,6 +15070,22 @@ trackedFiles: id: 5b0076bd5795 last_write_checksum: sha1:9674c34d2c9ca4fb8db80ff421a0aa7a0f175a63 pristine_git_object: ec5585fdb58749729eb8d38803dc9034196cd56f + ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.java + : id: cbb7faa570d3 + last_write_checksum: sha1:9a3cb0f5e08c2eecb023d5c3e164a277f284c086 + pristine_git_object: 1eadaf691233a151b2dda5439e518997f323c484 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest.java: + id: 60090695826c + last_write_checksum: sha1:0742ad97aff89ec861f15e92b9693bd33e5eef48 + pristine_git_object: f880c0710b9b2032ffe2028232777b33df03ba47 + ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java + : id: 7f7a01aa2aea + last_write_checksum: sha1:e1d3d5254dbad303665eb57c8ad2fd1bc24ece50 + pristine_git_object: 5c6435c70da7b033bb5aa2efc85a8726e3cd7b45 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java: + id: 790ffc8634e6 + last_write_checksum: sha1:dbdb2a5afbffff7acc54df36bf9f53ad1905a186 + pristine_git_object: a795a2d00e2384e3e7ebf71066910cc96433a888 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1EmployeesEmployeeIdOnboardingStatusHeaderXGustoAPIVersion.java : id: 74bbb3fa8eae last_write_checksum: sha1:30f86061ec0c0279e4bac6f40cc9277173e481cc @@ -14044,12 +15188,12 @@ trackedFiles: pristine_git_object: e89a414409c1a951b706056575f9468c45b91662 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1EmployeesEmployeeIdWorkAddressesRequest.java: id: e26641d673f9 - last_write_checksum: sha1:ff3c482fc67ffb338543a70c51d84f331538d35e - pristine_git_object: e475d6a01507d35c852910d0681a4bdcd9f83740 + last_write_checksum: sha1:81fe2580b305a46ef72f641458cc20634a038d0a + pristine_git_object: a8aab5cce42361301e3b85841c84b30f7e161cb0 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1EmployeesEmployeeIdWorkAddressesRequestBuilder.java: id: 1eb5792b00f4 - last_write_checksum: sha1:962187f77db3a6ea2640e4de349cae0aa9ce5438 - pristine_git_object: 83083873836f92712e193a5c99477fea3bc13d91 + last_write_checksum: sha1:e7e16d55d7c5f4fd2573f4a3636b24a47552e152 + pristine_git_object: 67346c4f97916b0ddc96b3393a413046fbd55c03 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1EmployeesEmployeeIdWorkAddressesResponse.java: id: d2abd0f695e6 last_write_checksum: sha1:0997ebe55c6ea320c37e2c09e715eab923977c04 @@ -14076,12 +15220,12 @@ trackedFiles: pristine_git_object: 7689c01bc8cb8ad41bf26cfde28c97beae736255 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.java : id: da6a207451f7 - last_write_checksum: sha1:e6eb541d13782d12a06af67b10adc7f0b268837f - pristine_git_object: 9b9c607af924d2a57924df1c6ea3ce1bedd7b7d6 + last_write_checksum: sha1:ef5b81df3c2643411eca0d91b3698b89036196b0 + pristine_git_object: 2c247721b77e8c0637ee6547045590cee30880dc ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder.java : id: 06b4eac2aaef - last_write_checksum: sha1:284a35a9b9adb675e0e3133b4603f0b54d591cc1 - pristine_git_object: 895435a2f52f75ad68ac01d035a882b7731e8394 + last_write_checksum: sha1:2031ea9d2b00ca4b2852857b7dd94f2f715f0da3 + pristine_git_object: 538a47f77a7bbd0561e7bf8332513ce9d9d0ff12 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearResponse.java : id: 1325031c2254 last_write_checksum: sha1:d702dae1027ce2bcfa9cf73f183b7bb1350fa231 @@ -14092,12 +15236,12 @@ trackedFiles: pristine_git_object: c1a2973fef657ddb0696d45695b20383ff9717cc ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.java : id: 2b1df9f7a0f7 - last_write_checksum: sha1:3b5ea7b88bbaed2f38dc72a0e3cfa49ca6e7bdd0 - pristine_git_object: c117ed92864c93d867ced3dc2006861753e938a9 + last_write_checksum: sha1:58c652f37de45f1a01de48a34e455faa703d12f2 + pristine_git_object: 7871e933809a35074248ebcf165e92a3299ab7ad ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder.java : id: b858d12cf856 - last_write_checksum: sha1:60688a696779bb40d3780f2fa0a0df8eba49cbf2 - pristine_git_object: 3871d832120870c8a6e8b9dd8e8ef2e31a451e6d + last_write_checksum: sha1:f700399733d00e60d6923a4b9b3a16b6c64b21e5 + pristine_git_object: b3f7889a4e2e5c7d8bb74379f13a4fb40aa93178 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesResponse.java : id: d704f512578c last_write_checksum: sha1:71ef45ff743cc169dd1c55196b0a45edbb5f15e8 @@ -14186,14 +15330,18 @@ trackedFiles: id: 8e8553018c1b last_write_checksum: sha1:a0cb219eab499096667180becb726f42a16b4f61 pristine_git_object: 38147033c817fde7eb256b442f600e68f6b7b971 + ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion.java + : id: 61e6b065d1c2 + last_write_checksum: sha1:dd6b0b898deb1a2e083df03114e72ab8fb828740 + pristine_git_object: fe862e050a1951bd19c1d5aa5f20f3963b8e453f src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest.java: id: 0eb5b70076d8 - last_write_checksum: sha1:05b5970b2d3c5bd1c17533ad298f4779a2117897 - pristine_git_object: 06b0493289e7cedea4cc825de9f883c7b92a8507 + last_write_checksum: sha1:c832775cb45268a40e007b423f06b3813a061ca7 + pristine_git_object: b1e462ac1db2638bb4f4708d80188a8ab9c769d6 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder.java : id: 3486dbbc3ee7 - last_write_checksum: sha1:b615b55c1729b732000272f210f59b548eb77d23 - pristine_git_object: 238ab62b0ad1310da71933fe1219e0d11299a0c1 + last_write_checksum: sha1:d61b060164cffdbc2d420b6cd9b21349bb810309 + pristine_git_object: 295c0be8c6f1c59deee61ebc158fbd226cca5c28 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidResponse.java: id: f90eb2d83ab8 last_write_checksum: sha1:cc3cf199b0eb74da299560bd44ac21d9b93f6cdc @@ -14204,12 +15352,12 @@ trackedFiles: pristine_git_object: f6dee67b3887a842340cf9329ad1764f89cd01ce src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1HomeAddressesHomeAddressUuidRequest.java: id: eddfcaeed8b5 - last_write_checksum: sha1:75027cb0da63b554f9526db5ecd9d6839f0f9e1c - pristine_git_object: 24b7a4d8b6586f132986e0177ef678fd507c9733 + last_write_checksum: sha1:54febc621621b12d04cec29a29f96e0a008dfd89 + pristine_git_object: 45555d2030e10166987c939b27d17b6e9802388c src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1HomeAddressesHomeAddressUuidRequestBuilder.java: id: 65c34a54cda7 - last_write_checksum: sha1:b6b134e0e2b8e342f281d767b0115d360c185378 - pristine_git_object: 36c1b088b5d8620c753ae554305a5a5ed0418261 + last_write_checksum: sha1:bd924c432e4170d4f459808250a43d9bf755c7a9 + pristine_git_object: 5d6fe6edccc71702444a77cae2710ebfb430806b src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1HomeAddressesHomeAddressUuidResponse.java: id: ed97459e8d6b last_write_checksum: sha1:5b3ef36743075bb4dc7c4523a21ad272e3679511 @@ -14244,12 +15392,12 @@ trackedFiles: pristine_git_object: 3703d9e23e28592df1d8bd3e5c8f5ae44686283e src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1JobsJobIdRequest.java: id: 20c60097d519 - last_write_checksum: sha1:0ffc6ae7a78ad7560b231aebeff305bf92e464af - pristine_git_object: 57fc173a51e77e0dc9ea62899a9b8ff17db2f69a + last_write_checksum: sha1:d20b124712aa5b9ef389badbc6a3d44341a047c1 + pristine_git_object: 60717df932e12f2109f09a207fd1c8a004bbfa0f src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1JobsJobIdRequestBuilder.java: id: 38df2d6bf794 - last_write_checksum: sha1:7ee281828fc966a3bbea1341abd7c349a41cca35 - pristine_git_object: 69681ac7e23155432a55b8aee22778a5870545d7 + last_write_checksum: sha1:ae91b4b7ead697546651780f3d2acf4bda40b649 + pristine_git_object: f7279baf1b2e060c49467eb7fb61cd9808e8847b src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1JobsJobIdResponse.java: id: 394c574aa102 last_write_checksum: sha1:ef985204c25cd702ad24d0b40978ae1b63dd7124 @@ -14276,12 +15424,12 @@ trackedFiles: pristine_git_object: d2312be7e5bc32ae91e258cb149fe3bda3f64a22 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1LocationsLocationUuidMinimumWagesRequest.java: id: d788e24247aa - last_write_checksum: sha1:723c0c4c4e98b688dea0d53560b99706d820944e - pristine_git_object: 53e6c85d7bfd6031fe91e43335a5a8ebb4731103 + last_write_checksum: sha1:0441cb23cadcbfb4a0d90a1336bc2521e4e10224 + pristine_git_object: 087c017b868037ac8815f8e9a82ab7266e36109b src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1LocationsLocationUuidMinimumWagesRequestBuilder.java: id: 6acaa902ae93 - last_write_checksum: sha1:a3ddb95d0a5418cfb1adf18e78ba0e74bb928fe5 - pristine_git_object: 33c3617ba690e8fa745c78472f1f86b8fbdf93b8 + last_write_checksum: sha1:ba75d987e224e041a1a5a7e41e8fc0870dd7c4ea + pristine_git_object: 80918097e94548fed1f09402a38e9204eb0478a4 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1LocationsLocationUuidMinimumWagesResponse.java: id: 433f55ef8396 last_write_checksum: sha1:5febd95738f7dc4c6a2b45938cff07b3f9034739 @@ -14292,12 +15440,12 @@ trackedFiles: pristine_git_object: 6ea0ac61708aefc943a8eeb76e1f4d113970102a ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest.java : id: 242a36180e5b - last_write_checksum: sha1:05b30f25c8eadeaecbe0f979594c73d4bb7d8059 - pristine_git_object: 0a19d4e55f147470c28d58dd9d1d435fd166d852 + last_write_checksum: sha1:5d0464b6c8bcbaa230cfdd84e2d229066ea2f256 + pristine_git_object: 41d87958e6714e76e11878fe0d8ee1df33ed5fb5 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder.java : id: 15a4744db1fa - last_write_checksum: sha1:fb1e422a05e505f8e46a33d66457d49d9300fc84 - pristine_git_object: 582a437088ed813d1f47309dc38a19e21247fc8b + last_write_checksum: sha1:327d441860b5cd25a119c676d72210dd11549f35 + pristine_git_object: 76986d2a815459a7075a2c25577531316cbfc640 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessResponse.java : id: 05eaa6040431 last_write_checksum: sha1:2bce22522f7b169ba6d638b4b8957d54aebc9d31 @@ -14308,12 +15456,12 @@ trackedFiles: pristine_git_object: 2de4f1e77133f302887d44679f6d4aa83d1bc07c ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest.java : id: 265149a74d2e - last_write_checksum: sha1:650bb033204dae7b96cb8d688dc5dd1d3a7c8e1a - pristine_git_object: dbefc5b92af878a7aa0894b7431f3332a661aa63 + last_write_checksum: sha1:6d306d796268d366cff63da50e296157ee16a59e + pristine_git_object: 56fdbb22b4d5ea330f83f3f48bfb0f6edb10e9f6 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilder.java : id: 6588a138fca2 - last_write_checksum: sha1:ea34b8f11b8bf9e3fd7af55307f2337b1dc608c9 - pristine_git_object: 49cb9b1a8eb59d19a7fd0f32be9a6ff22ff555f4 + last_write_checksum: sha1:c598ac77491dfb6efe7aea1426992bb48caf6dd2 + pristine_git_object: 9e4c7f53bfc521b32b465b4e5f17b5c69948d569 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceResponse.java : id: d2f0311e9e35 last_write_checksum: sha1:cbed42e9c5746c63c6ac6ea5ec7246db0153d562 @@ -14324,28 +15472,48 @@ trackedFiles: pristine_git_object: a3bc42ec5de7c5b9f18ff210df887efd5b69e499 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidRequest.java: id: e30d6fa16a2e - last_write_checksum: sha1:f7e87d5b8878f7a7d7b41ecbb850e61a860b4b53 - pristine_git_object: 9e3359097013a1abc8e36e0c137b3de9ba1cc0ea + last_write_checksum: sha1:5cd76d4f95cf950ff699febb5e5ae9039e784a74 + pristine_git_object: 272388ad11f3ef14b4966cf016fe55af4cc3ffa6 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder.java: id: 5bd550753e77 - last_write_checksum: sha1:c059303b6bd0f7b400646fe678728ad1fd9941f4 - pristine_git_object: b50342d2a29c6de18b7ccc642c88de3013f82def + last_write_checksum: sha1:b362d7aabe286ce7eb367fc39274a511362f0c36 + pristine_git_object: 1adc85ba2eecd7b87025e7f15d6bcae5d0930d74 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidResponse.java: id: f214ed91c566 last_write_checksum: sha1:32d84af70290e71d1421959189143c6059f82b7c pristine_git_object: 5d3740eaf0e5ca8387f62710b39709bef24bf63a + ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion.java + : id: 0fda2df5b014 + last_write_checksum: sha1:26bfd8467803c94595008a7d8bcb36fdd9ee3197 + pristine_git_object: ff963fe22df3f8570566059429cf4c81b5cb8b0c + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1PayrollBatchesPayrollBatchUuidRequest.java: + id: 6ba97db48392 + last_write_checksum: sha1:1eaaf1fdfa8605a831a7b6b11b6f3b3f46134db4 + pristine_git_object: f5e18f3624f8ce0a7cc70f868dcd8779184d1020 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1PayrollBatchesPayrollBatchUuidRequestBuilder.java: + id: 95aa692f44e8 + last_write_checksum: sha1:90b3c01e2524cb4b3137d1408e050eeff050535d + pristine_git_object: 79998aea81b7df33552c93302d33531a2128b27f + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1PayrollBatchesPayrollBatchUuidResponse.java: + id: f07b66ebee2a + last_write_checksum: sha1:3b9bfe1c0f3c56bcf9469c2f907e3e7ac41a22f4 + pristine_git_object: 629e82691c531c9a3186dcf85024221fe0d9aee2 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1PayrollBatchesPayrollBatchUuidSecurity.java: + id: 882a4c887ea9 + last_write_checksum: sha1:9e4560d98e58749631b94520f9b6a3792f2160cd + pristine_git_object: f3745200364468fe98fd6ee787ff4dcc3540c9ea ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1PayrollDigestsPayrollDigestUuidHeaderXGustoAPIVersion.java : id: 850befd6a5e9 last_write_checksum: sha1:61c0eed5edec20564b5a4c58b269edf96964d485 pristine_git_object: a8fb2322e69098858b23af17da2ce965da36de72 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1PayrollDigestsPayrollDigestUuidRequest.java: id: a1221cb54a8a - last_write_checksum: sha1:f6aee96413a69ffe460c74efd8f95d2a5b44d6ae - pristine_git_object: b28b8d03b9c9581791322b84b63416a5800dd36f + last_write_checksum: sha1:76c0f0455bdbe3a298a8b075615609ac171d0fb2 + pristine_git_object: 159da0fc11bd58be94c97c1d190eec334f352dee src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1PayrollDigestsPayrollDigestUuidRequestBuilder.java: id: fe49526278f5 - last_write_checksum: sha1:e23bf8de7df0dc44bc1b15846c83832bbdaf2c44 - pristine_git_object: d3d98227c78422abeca5aa6677c8dff44f84c827 + last_write_checksum: sha1:3d5c563db19db97f1bdcbb3b68ec86ad699e60b4 + pristine_git_object: 71735635dd45472dfda7f2b18a459bb8119a8775 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1PayrollDigestsPayrollDigestUuidResponse.java: id: 21cbcb1ceb6b last_write_checksum: sha1:b30e94efe8d2daf590c456eb96fed5534e6fb958 @@ -14376,12 +15544,12 @@ trackedFiles: pristine_git_object: eba8fd15b242d04117dcc927c4c15ae1684197f0 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1PeopleBatchesPeopleBatchUuidRequest.java: id: 5f9fd4722d06 - last_write_checksum: sha1:ea0bb1d535d26af2d75a5c16faae6be4f5dc504f - pristine_git_object: e25710f32909778678c6280ef336afb5764d8760 + last_write_checksum: sha1:45e9715b5d9513ffb0ee436aabd31e07557d99d6 + pristine_git_object: 1f1a8b40d606b5094b4441bf5b25c5327b0c0451 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1PeopleBatchesPeopleBatchUuidRequestBuilder.java: id: ab00a72b6b6a - last_write_checksum: sha1:b930fa4fe72ddd948733c2f505e335ee02635257 - pristine_git_object: 87777ef8cced72d06a1622c02e0285ecf56fd160 + last_write_checksum: sha1:35c8fa6c41cc47859254f7c29de7dabf215ec66f + pristine_git_object: 7bef7ecc1baff8c12ef6c8f1eb4a43b361d8b40c src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1PeopleBatchesPeopleBatchUuidResponse.java: id: 678be28cb237 last_write_checksum: sha1:4522243b81bf1def44f7f0c89b154fae1283106a @@ -14524,12 +15692,12 @@ trackedFiles: pristine_git_object: 2e4b391626b8d490ab15bbb995affd094a15bf97 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1WebhookSubscriptionUuidRequest.java: id: f840d2e3dd2d - last_write_checksum: sha1:77bda6fba3a603d1a80e93bb3622498aa281cbde - pristine_git_object: 66a4470dca3639074eac2c5d0c04e9bfb7d35cc1 + last_write_checksum: sha1:40ac675f5147e16368504f16a1054fce46c53e24 + pristine_git_object: 4de388509327d39f9215a77fa02d64ef1c12322b src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1WebhookSubscriptionUuidRequestBuilder.java: id: d897881cccb9 - last_write_checksum: sha1:78f6cbd3fb33ea66dd43f79b06bc51932e504430 - pristine_git_object: 79a2aa3da917807fd3dfb1394641a72aa16b11c1 + last_write_checksum: sha1:3ae3a9efbc09cf81be962c15512f565d87be2b0a + pristine_git_object: 5ef194a22ecf7b320c7ee957ae7c87fb3e83b904 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1WebhookSubscriptionUuidResponse.java: id: f316644d0806 last_write_checksum: sha1:c249d59d8f9bdbcadeda2ef98f068d586c3c0517 @@ -14544,12 +15712,12 @@ trackedFiles: pristine_git_object: d548ef8e712e335978a31f2c11688c65149a0d49 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1WebhookSubscriptionVerificationTokenUuidRequest.java: id: 2103da8fcb9d - last_write_checksum: sha1:3b9e35a0471173e5c31bde1340bc9a435cb0f84d - pristine_git_object: 6f8aef6ecb7ac479ee7ffe84c38f5ba82a8dfb4b + last_write_checksum: sha1:c90cfc696915a4aac45c3c6492f743d03a6bbdfb + pristine_git_object: 246212e7aa4739a8f9c17a4e0f28a0c354efbc47 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1WebhookSubscriptionVerificationTokenUuidRequestBuilder.java : id: 4d337d476014 - last_write_checksum: sha1:219ee77404c1d9846bb4af465d4f6b1fdd79d682 - pristine_git_object: bdad83eadf931a9dfef11afc3893983ad1536d41 + last_write_checksum: sha1:9f16048ff83dbab17cf1627483420c1e0ceac503 + pristine_git_object: df40a7e4feec430d2eb0394d59bbd386dcec705c src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1WebhookSubscriptionVerificationTokenUuidResponse.java: id: 4cef1caaa785 last_write_checksum: sha1:b203a6804226c531de65431960c08f3eb57c9fe3 @@ -14604,12 +15772,12 @@ trackedFiles: pristine_git_object: b4e9eff3430c0bd28ba55d187230cf3268d8e62e src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1WorkAddressesWorkAddressUuidRequest.java: id: 4a8cf0a94f77 - last_write_checksum: sha1:0bac37f4c3395f11cf2d489bee0e5c2d7ff358ab - pristine_git_object: 2d45aaa6e5131fd9d5b977877708347807028814 + last_write_checksum: sha1:ee5700913d545365c3c927442c0bcefe727b63d2 + pristine_git_object: a6fb0342806c53dd1d05851fd7e333aa7a089141 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1WorkAddressesWorkAddressUuidRequestBuilder.java: id: 15f49c16540b - last_write_checksum: sha1:3c076cf9f3faccb404db5a1f8d2fdf5c9cd48e52 - pristine_git_object: 74e462582a9fd75985085e97d84a5159bad86330 + last_write_checksum: sha1:6db70067c957bfa7a8a1c60a8700b54c5e15f06f + pristine_git_object: 689ed3e808fc057a724c4fa9e64cd90462805a1f src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1WorkAddressesWorkAddressUuidResponse.java: id: f07acda1a765 last_write_checksum: sha1:623888c4eebbf72254c710022852a105cb08899e @@ -14636,12 +15804,12 @@ trackedFiles: pristine_git_object: a607c9eb4cd21a9e258ddf6dd1abb59ee4f7cf9f src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetWireInRequestsWireInRequestUuidRequest.java: id: 9a5eb8336e0f - last_write_checksum: sha1:2f3da3a07caca4933e9e5e2425a5a80d08dc6fb7 - pristine_git_object: 1ab81433c4438c28f559f49cf85dc0e71e5cf3ef + last_write_checksum: sha1:dad12d128d9a7c614dbcd49bd4d2e112423591c4 + pristine_git_object: 9432837590399a9d23382acc0af8d0437c686134 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetWireInRequestsWireInRequestUuidRequestBuilder.java: id: 777b8300ec5e - last_write_checksum: sha1:eb95d36a6591ca3fb48550c028c5280a810e4e62 - pristine_git_object: 9eff5504b60aa5b80c9dd84215d7fff7a317140e + last_write_checksum: sha1:b58ad97585177b2a496f07a098e955f0ae2abc59 + pristine_git_object: 8346170a9c044625549c8d83aff09f97a05018ab src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetWireInRequestsWireInRequestUuidResponse.java: id: 8be329d7985b last_write_checksum: sha1:c99c8d84ee860116b0bd8b2498f0b14162589e36 @@ -14680,8 +15848,8 @@ trackedFiles: pristine_git_object: 623bdb341807f7c7c46489da06fc352fde468725 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/LeavingFor.java: id: 2bafaf14bdbb - last_write_checksum: sha1:56ae8b07ea3e0e64ec82d396830e6666f5611494 - pristine_git_object: 0097eff65103a3baa518c813184aaf5983b6ac41 + last_write_checksum: sha1:b65b850cae3cccee4bd938eb93df62912a1c2d3d + pristine_git_object: 7eb72ad7387011d57ad5841c88f678b8e994c6eb src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/MemorialDay.java: id: 93518709422f last_write_checksum: sha1:abad228e9c0b8ddca836d71501d92c46ba4ad700 @@ -14748,16 +15916,16 @@ trackedFiles: pristine_git_object: 140ed2acd9fff9779eb243257eed9f10c1dc0b32 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.java : id: acfbde1f1bfb - last_write_checksum: sha1:ffc2d8de6c8563d3e90e88d452a7d9a9be0f8f26 - pristine_git_object: d0458c52139f39086b6246fc38e909650dda0df0 + last_write_checksum: sha1:c0189902dede5c66e1ef9023519d46fe2e1bc10a + pristine_git_object: be783af7699a508ba726fa03b1ea7bf04f46b275 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBody.java : id: 45fecdcdc891 last_write_checksum: sha1:231ea7c6e261e7b99ee0e666ffaf3021e07c9b60 pristine_git_object: 0265b82fc4d68c69e1d06e189f2147704a051a9b ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder.java : id: 574a3d3b2dc4 - last_write_checksum: sha1:8a564d68cbfe804e86eba5b44012884fd5133bf7 - pristine_git_object: 79b42797249b90f32f3bf658e02085d0c9da713d + last_write_checksum: sha1:04652ebd5bd87fb8b1c726a97675aebbde6d3216 + pristine_git_object: 711a156990ac071121eb7f9c2f8444ace250a7ce ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsResponse.java : id: 6d9bda45b661 last_write_checksum: sha1:a0a8e459d45c55921783707b7102b8fe1993b3b1 @@ -14768,20 +15936,20 @@ trackedFiles: pristine_git_object: 62394c1490a8a7e60592589a2cf6fc3304c10270 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsPaymentMethod.java : id: 9a5925da506c - last_write_checksum: sha1:f569a05f91a6136b827dc87ea7f1842befa18a3f - pristine_git_object: af88530745f84ea5073300e41a6fb60d90ae8048 + last_write_checksum: sha1:f084664f6d695ce9651dd89cb166a1b1beb9cdea + pristine_git_object: 7a9a4b915e87336d98cc64b02fdbbc058cc09711 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.java : id: 48787b88c734 - last_write_checksum: sha1:93026561265ba1147c04f658ac180092a9597361 - pristine_git_object: 718ce548aafca01cbf6f88be652efadc10bf88dc + last_write_checksum: sha1:b380bd8824adf2e8b75e17dd31f2685f226b3eca + pristine_git_object: 5ae5e1cc2c5ab21a9459d232a12c54270afb2b80 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBody.java : id: cf73fdb70445 last_write_checksum: sha1:bf217da62f439a5c90cfe591dcb7e79f49ae0f1c pristine_git_object: aac617e98043a47342d74b8267f39480464f2756 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder.java : id: 42d927aa8d78 - last_write_checksum: sha1:b130e918869386b0cd07ed0412619a2483cd92ac - pristine_git_object: e2e211713ea5cdb4722a9c9a8c1e57d4c210d17f + last_write_checksum: sha1:770deb245a829044733f78e3bc4cf553fd7655d6 + pristine_git_object: ad5719ca2bc5690111fa879316defccd90fd25a9 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsResponse.java : id: 8f3973f3ce3c last_write_checksum: sha1:389f3e42d95f0f2ca52eca1c8ffcfce6eca306d6 @@ -14792,12 +15960,12 @@ trackedFiles: pristine_git_object: 8aa6033fae1e1bb1c3ffc72d8ce8701fd09b1e44 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.java : id: ff528e818731 - last_write_checksum: sha1:9c32dc1fc0fb097cd4a1eabef34c8a3026840417 - pristine_git_object: b77ba19d59189b07868f0f4378f8af32d797b439 + last_write_checksum: sha1:6f80c776df101e609f530a3d36db83ac2dafab45 + pristine_git_object: 721db71baeb576837dbbd233bd32725171552bd4 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder.java : id: 486d78800cdb - last_write_checksum: sha1:72dd7deadeae1678aa7f85669ce3f4c8677620a2 - pristine_git_object: df770a872e60403885baaaa047fccbb5835f6a86 + last_write_checksum: sha1:8b42da553c2284909a7237187dbe684557097c74 + pristine_git_object: e744bd0841d15f23915785847f40cf34bcc53403 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearResponse.java : id: 2fda613f5167 last_write_checksum: sha1:f682e3baf49bed6a760a359feb1235e47d9c0f30 @@ -14892,12 +16060,12 @@ trackedFiles: pristine_git_object: 7a8e703944f8a3ece29282ee92b553fda7183a64 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostDepartmentsRequest.java: id: f2aa71032b08 - last_write_checksum: sha1:9d1e30bad99fc85874fbb86be6409843f734a3ea - pristine_git_object: c3b8c2aa2ade36d921a33ddc37c9c36308b7b3d3 + last_write_checksum: sha1:4978617e272a487a7da2944c72adfc869e985808 + pristine_git_object: 4d4b0ae6f06d0491c41471aceef4489954d3fc5f src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostDepartmentsRequestBuilder.java: id: 0793cee17fa7 - last_write_checksum: sha1:c9fec8aa968d47f481333ba50dc2f7e7dcc9bd56 - pristine_git_object: 987546188dde685ce732d60f0dc41e45fdffa43a + last_write_checksum: sha1:b232522c37d5e62efc8cbd948ed1966e0f59b761 + pristine_git_object: b030b05574fe21bde22bba328dee284cd7c1d6bd src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostDepartmentsResponse.java: id: 600f3ba037a6 last_write_checksum: sha1:926049b4a445dc4220e833868e84836a16b23c24 @@ -14924,12 +16092,12 @@ trackedFiles: pristine_git_object: 778a868f0fd607245dc82bdaba01580ea7dad9a4 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest.java : id: 10834fad3040 - last_write_checksum: sha1:9333194ce637608f029377d38a0fec0416b5e03b - pristine_git_object: b5239acfb09028b5a5a85c1826f96f8c57e9190a + last_write_checksum: sha1:d12c0cc86d0aaa85507e0141789de8a5546ec5db + pristine_git_object: 5cc7b426469f3dbd89a0b601f3524787ab34686f ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBuilder.java : id: 07ed8271c857 - last_write_checksum: sha1:6d57a61bf873fccb7e3d755d31443dcfebbb144a - pristine_git_object: 05b229dcda2c68c5c54cdf521615cda67634a242 + last_write_checksum: sha1:d7fc9f489358f01ef19a5af7ec65c62fe1f3a535 + pristine_git_object: f6781743aab33fa5b8417824ceb4192a11c57535 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceResponse.java : id: ad84d154302a last_write_checksum: sha1:cf6e6d05ae34dfd8270346469ffbdef015794139 @@ -14940,12 +16108,12 @@ trackedFiles: pristine_git_object: 0a2053c3c314cd2538f1b878b87fcf77010dbbaf ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest.java : id: beba6b62bab2 - last_write_checksum: sha1:1ce967448c2d7ed2eb705d93ed81e83be3491878 - pristine_git_object: 16fd9b46eef7b24a0d618f994067ab13fc5d24c9 + last_write_checksum: sha1:0cf02109567774f16a6de72fe23a912a0d3008a6 + pristine_git_object: e3ddc7c0150580328e3fe63c381c2f56933c1acf ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder.java : id: 5bb9587a23e1 - last_write_checksum: sha1:badc36548ecfc50fa058a8c6da7cadc8c8eb4058 - pristine_git_object: 2dfca92af14ac804b92b10ecd826e52a1f80be7b + last_write_checksum: sha1:d71046cd0d6e22fc5faca2ed668dc89bf564e2fc + pristine_git_object: 9281327ebb3a1e98f8d4fd8dbbb00a85cb0f1079 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceResponse.java : id: 973d777c2084 last_write_checksum: sha1:2d588f2748bc8aa60d8fcc50c275ef6d01482926 @@ -14982,6 +16150,26 @@ trackedFiles: id: b5e365cdd1f8 last_write_checksum: sha1:fa9e6bc83b5d5b30567a88e024eea1f93fa460b3 pristine_git_object: 117df4740d8b32db0bc852102a48e7865156c554 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1BulkReportsHeaderXGustoAPIVersion.java: + id: 8bd259742e81 + last_write_checksum: sha1:f5d2be3c5ff65bfe4bbee0543b185d2d6ddf5627 + pristine_git_object: b37e3404d01b106caa15db1d3ed11d95a210ba72 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1BulkReportsRequest.java: + id: 601e9add09b2 + last_write_checksum: sha1:992a22a66986217ff718ac8fa925a1b84d98ef0b + pristine_git_object: e016709f3c1cf25b57fd6472cbc191696505d34f + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1BulkReportsRequestBuilder.java: + id: cbd255e05764 + last_write_checksum: sha1:037dfd1f0d191739a02d8519b22eada3ce9a7976 + pristine_git_object: 23eaceac126a7f649aa307932e84b86caa7d1d01 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1BulkReportsResponse.java: + id: ac1bd248b2b7 + last_write_checksum: sha1:0a9824cf5bf5e4dad67e907bf835210fcfd725ee + pristine_git_object: 9f24450fe89456982b9cc521cf295f1ff29d60d8 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1BulkReportsSecurity.java: + id: 13c79b25d306 + last_write_checksum: sha1:3d40900379447829f4a37f15136885a52238a390 + pristine_git_object: 0d96c83e2c9321e292c46dcb58025ca5a668825d src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1CompaniesAttachmentHeaderXGustoAPIVersion.java: id: 56e0d3ddfba4 last_write_checksum: sha1:18534b52ff21b767dac481b57916ecb53cb950ab @@ -15204,8 +16392,8 @@ trackedFiles: pristine_git_object: 7834ab49b8d9aee0c39542db5081d91ade87f191 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1CompaniesCompanyIdPayrollsRequestBody.java: id: 31ea70577eaa - last_write_checksum: sha1:358d81de7c980737a57db2663035415d7d0a982d - pristine_git_object: dd145b41ebbdf221c52746d7c50c1a11f53a6f18 + last_write_checksum: sha1:200483c8f8f8c5ae48e81393410783f3f997f82e + pristine_git_object: fba19aaa8a45fa7f45f7dc432ccd1e3fb1ba3419 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1CompaniesCompanyIdPayrollsRequestBuilder.java: id: 1ab10009127f last_write_checksum: sha1:04d5f61aa1bd7bb6cce986df0f1a9a7a78c4f6cb @@ -15214,6 +16402,18 @@ trackedFiles: id: 1a234b72d1d3 last_write_checksum: sha1:12cf7448636de2d11aa5f5e1b27dc0b8064b450a pristine_git_object: f21efe436c3b6e0426c111b0f354558d6f42d283 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1CompaniesCompanyIdPeopleBatchesBatch.java: + id: d5cffb022f19 + last_write_checksum: sha1:8958d5f35d476a2843a59ce3e8fb31b1171bed8b + pristine_git_object: b2911fb542ecb42c8b1548a31ac852de6ce8599b + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1CompaniesCompanyIdPeopleBatchesBatchAction.java: + id: 1fad5bc8223f + last_write_checksum: sha1:4a1f0a9f65f2d84905aa755d1a45b19253944cf5 + pristine_git_object: 098e8be2076463fa44a52868b28ad14ceadc8863 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1CompaniesCompanyIdPeopleBatchesEntityType.java: + id: 9b01be39a1b0 + last_write_checksum: sha1:c80a891d515d1985c53955fb012e4b8d53badedc + pristine_git_object: 6c5364d9f7d3ef6683f2ac9f39f0975efe351763 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1CompaniesCompanyIdPeopleBatchesHeaderXGustoAPIVersion.java : id: 2c8ce3ee233a last_write_checksum: sha1:aa740de42abbe75b11d451981b661102649d5410 @@ -15228,16 +16428,16 @@ trackedFiles: pristine_git_object: 21ff28d31e9945a47f0aa21d995dbde0b61c23fb src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequest.java: id: 9111e0485b82 - last_write_checksum: sha1:9b937691d013bc2d5d602182ea984554863c0cba - pristine_git_object: 3c6f4164d931d19b34dbf410af1c8b94a7e8268a + last_write_checksum: sha1:401d73e8af5044c0dcd76ccf5cb36d2e911019e2 + pristine_git_object: 070d4680d253589b27953322e6324c1f0594afed src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequestBody.java: id: 37a918cfe2c9 - last_write_checksum: sha1:6caabbd82bbe052a1da581914dd4057165eb268a - pristine_git_object: ea481ad36b8ad3cd49639243ac7abf18cdbda087 + last_write_checksum: sha1:f371b56c3d9d63ce4cbeb71033381e8dff2369ad + pristine_git_object: 9613fb7c226f4d66c0d653c20d2554d282a7ba52 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder.java: id: f39b8bb1134b - last_write_checksum: sha1:5e2b92683df77e4c90711a0cf1611f6447b149ea - pristine_git_object: fda5402a9212cfdc62f3c684b062a5587a72e4f8 + last_write_checksum: sha1:8acb0b01969d15a73c6799637327dc9fd1ca0d6c + pristine_git_object: f747bedaad1c75fe24dced0e8612de9d7689cb8e src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1CompaniesCompanyIdPeopleBatchesResponse.java: id: 635f50c9702a last_write_checksum: sha1:c46fe546d99d554ed55d038b5b10abf8f10c9d77 @@ -15312,12 +16512,12 @@ trackedFiles: pristine_git_object: 021b6e8b53f1340e55b0b1cf3f6b216f45b5d1a3 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1CompaniesCompanyUuidSignatoriesInviteRequest.java: id: e24fb67bec7e - last_write_checksum: sha1:a5552b77a8ca8b6d9c3e2305bd725b73befaa031 - pristine_git_object: d12311785646e0a25737d8afe6f18151a0d11232 + last_write_checksum: sha1:3ef770cb3a2d35f16de7bf2ed0b6fe8cbd231b43 + pristine_git_object: 59857635185eff02f1aae69c157170835b066c75 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder.java : id: f0c95a6b77fb - last_write_checksum: sha1:463bd0cb9600f2f89e8c320db63a124ddf476afc - pristine_git_object: 2d0171c0373c95f8385a5738fe3a07583ec723eb + last_write_checksum: sha1:63c024efc710785bd71729621379cfd94d8c9758 + pristine_git_object: 49ac0f4be476ffbfa2e10677dcb1efcff63ccc86 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1CompaniesCompanyUuidSignatoriesInviteResponse.java: id: 3199e50ebab9 last_write_checksum: sha1:ccc965aff539ca9d000ee24100e39cdfb93ded91 @@ -15420,12 +16620,12 @@ trackedFiles: pristine_git_object: cc8581b0832707c189767e66be8687df1a133972 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1CompanySignatoriesRequest.java: id: 812547c87690 - last_write_checksum: sha1:23244221703cf56b525eb1a5b4ebdc39874fb379 - pristine_git_object: 6cd2adfee2a04d5040b8bb4c91e129e0466ab734 + last_write_checksum: sha1:28a44497603c912f0d7f01c4b61c3d2f25470c1f + pristine_git_object: 130cebd667aa0951d03e2b23ead5ef629511a424 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1CompanySignatoriesRequestBuilder.java: id: b11ef42852ac - last_write_checksum: sha1:c807f4698a1a8dfee033246e3336eeb72f9ba5ff - pristine_git_object: a85d39b43666e48258900fc67f7e415cfc6945c3 + last_write_checksum: sha1:fe175bd25de00d978652cf4ff2d712bc533da45f + pristine_git_object: 972480d8762df6bf413b37602a772fa2dd1e2e1e src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1CompanySignatoriesResponse.java: id: 7a5c2bd91a94 last_write_checksum: sha1:59cf33b86999fcdd62a7898b98f03fed3b45e37f @@ -15462,22 +16662,38 @@ trackedFiles: id: 93669d2e030c last_write_checksum: sha1:02da6bb1dda898c92a88bdc7ff89b91fded19282 pristine_git_object: 3cf9f54d9ae137ebd7965e47dcda770fd1f24909 + ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.java + : id: d5f5c2566407 + last_write_checksum: sha1:201457bbac8007dcb4a31dd0c4171949efe89c2a + pristine_git_object: 5260cb4a62dd342c806aab9b1343b28d469cb0f0 + ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsRequest.java + : id: 1ec562842b1c + last_write_checksum: sha1:ea2ca4a0e58c60b43454a06a66a3a740dce72023 + pristine_git_object: 2684a97ec74ae1df03c521c6da0928bed37b8e75 + ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder.java + : id: 0edc408e3ba3 + last_write_checksum: sha1:09095c7a9885bc37d59ace8d75553e3ce5615486 + pristine_git_object: 2b6d256b03ab4a03fb03adee0119dfec686de39b + ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsResponse.java + : id: 7c15dfca1740 + last_write_checksum: sha1:ee8b02181c021952df877c13ee1d8d41872e1e23 + pristine_git_object: d4a1ca86cdc4484ee539784df26c8ad0df1494f3 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1ContractorsContractorUuidRehireHeaderXGustoAPIVersion.java : id: 7d62f1fa8d7d last_write_checksum: sha1:fbfa7cc6f1fef371d5d8e1111ff2b9b5d9f71a12 pristine_git_object: 4a27349079951c41bcce4dc21f436202e1d76d48 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1ContractorsContractorUuidRehireRequest.java: id: bd14cc389d36 - last_write_checksum: sha1:df1a6b30798ea6d80c95b108975a479dc774a913 - pristine_git_object: 68829b26a16104b4562ac88b78ffaba99c5a6e09 + last_write_checksum: sha1:ed608030cc74c7ef91477a952d4db2f4d015c623 + pristine_git_object: 1b3f0a4eccea2f8b655a87a5da59cb400ddf2236 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1ContractorsContractorUuidRehireRequestBody.java: id: 87573b6bb5be last_write_checksum: sha1:9cbbe1708d8b511cbaa0dc1e1be6e3d0ee88bcf3 pristine_git_object: 44931488d4e91ab14a8d1a3fbf421519f4dbce63 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1ContractorsContractorUuidRehireRequestBuilder.java: id: ba11295c57d9 - last_write_checksum: sha1:94342c38bcc692c863207359ce4673664d3a01e8 - pristine_git_object: 503ec1603ffd9415a03f55239553a44bd7881903 + last_write_checksum: sha1:474104829eede77b33e7290a63c6f2f4536b8b28 + pristine_git_object: 4d5aeb7573781d1c334ca50b0cc9585893795956 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1ContractorsContractorUuidRehireResponse.java: id: a0f884e63af7 last_write_checksum: sha1:39e3a91644bad821314474d87fcad3f56f61a40b @@ -15488,16 +16704,16 @@ trackedFiles: pristine_git_object: 20c2f37970238bc58ec9adf9fbf8d4fbf9101675 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1ContractorsContractorUuidTerminationRequest.java: id: 02696a180aa6 - last_write_checksum: sha1:00df051e271e272fa05826f3d2b4dd35a053ecf7 - pristine_git_object: 7f93971e8baa725b52d260117d6065286463f4f9 + last_write_checksum: sha1:07942e6bdf9f806c738382f7d3435cd0259052d5 + pristine_git_object: b5ac70bd006cb28e81c5b500b48531b390e03d6a src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1ContractorsContractorUuidTerminationRequestBody.java: id: 267f4101e796 last_write_checksum: sha1:c85b358c2a22fb9fca338d0db9081f8aa9da1c7f pristine_git_object: 2af8732b20ea3686d1542b154439b4dcce02724a ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1ContractorsContractorUuidTerminationRequestBuilder.java : id: 61d2aeb12f73 - last_write_checksum: sha1:6e5896579cc2b1d5bcc49ee4d1d7e69b808a874f - pristine_git_object: ecc53e1b11dace9aab1977525904a9cd47942827 + last_write_checksum: sha1:2ad38e44f57eb329ee2be9ca0bf11cb024d1954b + pristine_git_object: d1fb66afe85aa95643045222c5b2b262582c5713 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1ContractorsContractorUuidTerminationResponse.java: id: 914e40bcf88b last_write_checksum: sha1:d2f4708d0be93f910569229f38e5c33dc1040baf @@ -15556,16 +16772,16 @@ trackedFiles: pristine_git_object: cdefacdcd94106aae2ba617e435e6cfd17cea459 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1EmployeesEmployeeIdHomeAddressesRequest.java: id: 6119309f4f1b - last_write_checksum: sha1:8d051e54e15b644360c74b74f9beed913073fb2b - pristine_git_object: 34fe61252baef948768b0a5965318797e1873a7a + last_write_checksum: sha1:d481c1c9d53c478df1b4ac4bc68df099d60f0041 + pristine_git_object: 9c631073d5648044e9f6c9132a3bb8339aa665f4 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1EmployeesEmployeeIdHomeAddressesRequestBody.java: id: 4845dffb8b15 last_write_checksum: sha1:438d5368c438291f303381996602bfe33f93b012 pristine_git_object: 3acc05c4c2a9bd19b25606c43613c581d1c729ff src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder.java: id: e92f7a77c8f6 - last_write_checksum: sha1:7264a78d0791fea7212d71d6c4aa72ec334d0fd3 - pristine_git_object: 96c3ae378ac45f5ff44f4738011bcb614b01837f + last_write_checksum: sha1:918cd0fec425a04df41f562673591623de7c4dd4 + pristine_git_object: 023f4120f3fb8a9744b1c5f2fbad416bb3e25de5 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1EmployeesEmployeeIdHomeAddressesResponse.java: id: 01446d5ffce5 last_write_checksum: sha1:328c7c68d8de8f4e3098b89b8493444b6f91764c @@ -15576,16 +16792,32 @@ trackedFiles: pristine_git_object: a436f6eb3a5f60ee19e3fd8b8121b0fcfccba026 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1EmployeesEmployeeIdJobsRequest.java: id: d613a7a18c99 - last_write_checksum: sha1:3fd733e37dcd7c1160775e2008c6afb93c58e0cc - pristine_git_object: 62353b3bb6f6ca124612289a9b4cb22a2529a180 + last_write_checksum: sha1:9935faba1b5cc38ab3e38061e75bdbb2a30f18c0 + pristine_git_object: a0e055063d4c2e99ed873681170777a5c0607202 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1EmployeesEmployeeIdJobsRequestBuilder.java: id: 0ca10aadaaeb - last_write_checksum: sha1:6636476aaf0869761076139ba4900c37c3a37142 - pristine_git_object: 3b908aab5065236852288e4bf4599f09ad37accc + last_write_checksum: sha1:df2e67d10f27d94d034edc80e69944b670806d31 + pristine_git_object: 2caa70435664f6ea139a9befe9a2397aa5282de4 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1EmployeesEmployeeIdJobsResponse.java: id: 6da1741721b3 - last_write_checksum: sha1:d44b3bcdc4f0492b1bd4b54ae6c0c187a46393a0 - pristine_git_object: 257428c463a3ab94c98f402cfd7a5e748b6d280b + last_write_checksum: sha1:d74b344dc75db6e71d2b5c5d244273030ae8a185 + pristine_git_object: 544742a3191f6ef3fbeac2d7c3170ae2a830a03a + ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.java + : id: b80f877dbb65 + last_write_checksum: sha1:4d443b6fb3646aaf4ec0c6844afabe805b577de9 + pristine_git_object: e138adfd31ebe5ea6bec47fc25005090d2c452a1 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest.java: + id: 729060a7f884 + last_write_checksum: sha1:2671b5a98cb2a885c24c97360c8ad802c893d96b + pristine_git_object: 07379bc1a70ec3543463283c62678c5207e22622 + ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java + : id: d06c35e92a00 + last_write_checksum: sha1:79e1db0704a63788e16cba6c8356c89470d9527e + pristine_git_object: 7f1639ae050ecd1da3b5e7eb76c6b0df9fc3488a + ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java + : id: 14c444528e0a + last_write_checksum: sha1:1e1c02f9f020852a5f4157e900392ca910666ebd + pristine_git_object: 2a77acbaaaf0380fa5cc70594d2fa1ca8f04f72a ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1EmployeesEmployeeIdRecurringReimbursementsHeaderXGustoAPIVersion.java : id: 3f2b883a395e last_write_checksum: sha1:f3dc6fd457a1b0e9e71bac23093eae704887ed89 @@ -15668,16 +16900,16 @@ trackedFiles: pristine_git_object: 55106fd91bc9916a1fa9f2eb8086964135ccc385 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1EmployeesEmployeeIdWorkAddressesRequest.java: id: c0f81c861a40 - last_write_checksum: sha1:5ab74337091dcbfbd8036026bf80b1aa51d01506 - pristine_git_object: f2842c6ceec596527b956525d57faca0ddcd65ef + last_write_checksum: sha1:600d9acca85e883f299e8450279e6e714daf5674 + pristine_git_object: eddcdff1cf0132041445128224bcc64bc77af137 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1EmployeesEmployeeIdWorkAddressesRequestBody.java: id: 670de352fa9b last_write_checksum: sha1:da56d5184ff039576e8d94ddfbf71181a85e280f pristine_git_object: 0e6eba10dbbf20d72710acc05886263ad7f17964 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder.java: id: 4d2f34984b9f - last_write_checksum: sha1:65825f12b7d5647a329e74b3418a998b454d8675 - pristine_git_object: 851b2a76b73d8424b0915b2514839a6b28a5083b + last_write_checksum: sha1:ab9fabab6b1fa5d3f548462f418464aedd991547 + pristine_git_object: 45dd2e7c8d1fe7a50ccf5308b4020203111e2959 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1EmployeesEmployeeIdWorkAddressesResponse.java: id: 75d1c812803b last_write_checksum: sha1:349b2fb26931376c66e3062b7f683d73afa5a98d @@ -15688,12 +16920,12 @@ trackedFiles: pristine_git_object: 161cae180723ce5bd1b0b9637c97bda540ef2ae7 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.java : id: ae1c1690ed66 - last_write_checksum: sha1:8eda0b4be44e2304af55c9de9b2dd1997170a31d - pristine_git_object: c30bacb2b05ecb6137260533d0213ab3050164d1 + last_write_checksum: sha1:0b2bbc24571d62ad5889c17d6adb74c2ba2f1eb0 + pristine_git_object: 9f6df564a84432a842f1b5e79c1267d6b025edf7 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder.java : id: 41184cf0cbe2 - last_write_checksum: sha1:974ea7a370367de7d5e59e68d561b97724fcd019 - pristine_git_object: 5dc291436725d2e9819ef246aeb09457bb64b57f + last_write_checksum: sha1:6cd9a5a1efaa3ea664cb6b12b54e05a44b5f22c8 + pristine_git_object: 8f9fd5b142687ded7d3312fd5e28c5cdd7f5f0e0 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesResponse.java : id: 13ac41a1501a last_write_checksum: sha1:0df7281ee5a0c6cb94c311cb35efc533f15dfc9a @@ -15756,12 +16988,12 @@ trackedFiles: pristine_git_object: 5edc1ea7b3712a59f16632327a983f834eba0c69 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest.java : id: 7e4f1e85dd90 - last_write_checksum: sha1:24c0fc34c04a2948f20e3e8438de6dc833dfce00 - pristine_git_object: 7a58bb23fb544916e921a1f9232ffbbac4901934 + last_write_checksum: sha1:0168a701a0b225df9de82db08dbbbf39171eb367 + pristine_git_object: 54068a47586c95e30802b3328a3c8cd64ff120fc ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilder.java : id: 88fa4e218744 - last_write_checksum: sha1:1cea5c9fc887294880df6dc62e23a14416101510 - pristine_git_object: 9a06cd049dde0e32e590a8547a0f24c80f8a7d48 + last_write_checksum: sha1:f7bede7632f7e156060be327b18996b71d414fc8 + pristine_git_object: 19401c6416740bd5e5245818e838f4c2eb2505b9 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceResponse.java : id: da8e1f89fde2 last_write_checksum: sha1:ca14a791449b20d9486882385f2d7fe574fc9654 @@ -15786,6 +17018,30 @@ trackedFiles: id: 363c57d6179d last_write_checksum: sha1:ca7fbcea6e26b13134c1dfb6ba945d6c438bf13d pristine_git_object: 8d07f67ee1d66f88269e9e4d5910d4aca1821c44 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1PayrollBatchesHeaderXGustoAPIVersion.java: + id: bf4d0782dbac + last_write_checksum: sha1:9b9726129c17b4c602a79cd3735a9eb9b1e777e8 + pristine_git_object: f6c13c27e75d8f4b6efc2a39a4df1ff32c8eab8f + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1PayrollBatchesRequest.java: + id: 71108bc33432 + last_write_checksum: sha1:f7ae98b495fa14f28178127feb483121151b9df7 + pristine_git_object: a2e030209e1ea3ff687e9aeda9b076bdba0a06c7 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1PayrollBatchesRequestBody.java: + id: 29bea878bdbf + last_write_checksum: sha1:a23248f123781646fa77f5712af5e5e04b170cde + pristine_git_object: 5e746c2e4750142f90c937c1812bdcacc5ac4c87 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1PayrollBatchesRequestBuilder.java: + id: 3456cd221ee3 + last_write_checksum: sha1:4e0ef27765df0ddea7afb19eb5a5f616290d525e + pristine_git_object: 786187fabe538f199460f7e4f1344fcb15352db4 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1PayrollBatchesResponse.java: + id: 9de8bd3cd69c + last_write_checksum: sha1:3b39dd3a666ca022cfd281f0ba521d2444f8a111 + pristine_git_object: f09f05cd5641ba986bd95a2325aacbeb1599cf08 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1PayrollBatchesSecurity.java: + id: 443db081b856 + last_write_checksum: sha1:a3a39e484532bf4ebc47f5222615dabf8fd58e43 + pristine_git_object: 815c6b761287317a7a7ee6a9862990eec2c7014c src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1PayrollDigestsBatch.java: id: 34bb66ab0d22 last_write_checksum: sha1:8295731a34f69d66e711e5a8127c724b50a6042b @@ -15972,12 +17228,12 @@ trackedFiles: pristine_git_object: dc77e326d0cb5e5575e98397ce5e22b4dc7a1104 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutAddPeopleToDepartmentRequest.java: id: 92a648f8ef0e - last_write_checksum: sha1:b9482bc21e782db8ef1e3211460f7bb6f056083d - pristine_git_object: ca6a62259ebf4bd9feff3742ab47fa9500aa1729 + last_write_checksum: sha1:cdaf062080528af7ebda1c3c3ac0994c39351e6d + pristine_git_object: c7cc64ba1fdf7b7b346bab0b43d4ed71df297796 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutAddPeopleToDepartmentRequestBuilder.java: id: 44e62259ba2b - last_write_checksum: sha1:ed4bd3360476f61490f30b853553f36e2fe92b96 - pristine_git_object: cab32435def29f12da5ef5295960e8ff2aad50f3 + last_write_checksum: sha1:a8715178ea0194121452b016e9fc091f494d69b8 + pristine_git_object: 933aa15bce4575fa43ae6e228936b74ac82a24a7 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutAddPeopleToDepartmentResponse.java: id: 548a62c37960 last_write_checksum: sha1:455550b79e31045c3e0ef3f201911124d8e72252 @@ -16000,12 +17256,12 @@ trackedFiles: pristine_git_object: 675315232eadaf344a7ff8024cd331413e2f431a src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutDepartmentsRequest.java: id: e692ceba4d26 - last_write_checksum: sha1:c8fa3772f43b735a88346473c589fffbdc70536d - pristine_git_object: 52166352034e5aaf72c1d11d1a1fbc9924300e77 + last_write_checksum: sha1:e63a7c502f61c6e6a46850774ea7a78c3a74c8aa + pristine_git_object: c38efc266e3ffb9f6db46832b83b9e376244d284 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutDepartmentsRequestBuilder.java: id: 6117729670a9 - last_write_checksum: sha1:f6915b1c36f959f356477a5dbae37b301f6be710 - pristine_git_object: 0d50f569e03a43e9af5af475289dc0832b58efec + last_write_checksum: sha1:f1041a14ca3c1c07d9b3d820e5c44c530b7626db + pristine_git_object: 5d2314c4f1e082906b83ba38c3ae87fca677a33e src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutDepartmentsResponse.java: id: bf5c1de6c60b last_write_checksum: sha1:63aa6b3335c5edbd41a35e5bc188a51be5056de5 @@ -16016,12 +17272,12 @@ trackedFiles: pristine_git_object: a3c1f66661e15d3179b398034cc1989d22240a52 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutRemovePeopleFromDepartmentRequest.java: id: 0c19f12dadfc - last_write_checksum: sha1:c2d276a2951e92dd0233986c76a80a781dcbea22 - pristine_git_object: 5fb45c8ebfa5a56768e67a5785e543b2751e6322 + last_write_checksum: sha1:434c013fcc4e1643a0b5fd7b0ad6dd436d2bfb08 + pristine_git_object: ab4718e167802d6bc2cb5ed75c3ef8d871b4360c src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutRemovePeopleFromDepartmentRequestBuilder.java: id: 1fa948ca21a4 - last_write_checksum: sha1:9e4bcf8eee2c090e0e87f4c96b8dabcceba9cb25 - pristine_git_object: 23268d74468fed8c1ae87ce12ef6dbdcb14dd608 + last_write_checksum: sha1:f38c7954e395ae4b8504936365753eed441c4c23 + pristine_git_object: 73fd6f565bf2dd998a72ac66fed8b299039d5a60 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutRemovePeopleFromDepartmentResponse.java: id: 01ea06516ec1 last_write_checksum: sha1:bc11117ad91bf9d68ff4ad3881d5026e49e538aa @@ -16068,12 +17324,12 @@ trackedFiles: pristine_git_object: ff776927e5550a7a5c824c6e4cffcebdafeddfc1 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1CompaniesCompanyIdFederalTaxDetailsRequest.java: id: de517b5b72e9 - last_write_checksum: sha1:602a6e621ea691066dd9e66dcbfc2cced43fc087 - pristine_git_object: aed0c058cd0b6184644f60d69a37c87f6ee338e6 + last_write_checksum: sha1:46817bc584ad23968706467e697e93556062cf27 + pristine_git_object: 0aec80d33b65ba5b85041fbc6abd0e35a2e0ba17 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder.java: id: 80f8c539a135 - last_write_checksum: sha1:e849c9b4f016f5c4908dec79bfc276143cb215c5 - pristine_git_object: bfdb33315ad5a0dd7991b330fc77be74eb147359 + last_write_checksum: sha1:a632c52e7f364fd35bcb668b82274155f0c3ce89 + pristine_git_object: a42048cef7bc6d083415e6b625f6a67524ea2b30 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1CompaniesCompanyIdFederalTaxDetailsResponse.java: id: ab6b3ff14a20 last_write_checksum: sha1:1cee4070e9ae134784d3aabb70efa8b84f1b5972 @@ -16124,8 +17380,8 @@ trackedFiles: pristine_git_object: 0b59547bc1f7925903451b9d8400905a0bd481cf ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBody.java : id: bacc4466a5d3 - last_write_checksum: sha1:bdf6f4371e5e86751638b4abc6b032c5e404ed10 - pristine_git_object: 5d4601596b57153c6c372a51da1d87e43f7c97c3 + last_write_checksum: sha1:1efba8b79562565f1863ebc4005f8e4cffc43f17 + pristine_git_object: 40940a30b70c6f45005f9106a7a10a7ca11dc44e ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBuilder.java : id: 9bbb8358497f last_write_checksum: sha1:4aa1c3cfb60280d09424438fe955cf6a103e3778 @@ -16236,12 +17492,12 @@ trackedFiles: pristine_git_object: 6cf0ab43ec00503405fbf01943e3d61ae43ac0e9 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.java : id: ebd9b1484c09 - last_write_checksum: sha1:501c342737ec5e61a99dddb69db4a20d78a3dfaa - pristine_git_object: f84066c6c08ea79a1880158b622e7b39f6a16d2e + last_write_checksum: sha1:0d4891112dd438cdd845cfce06078248eacee4ff + pristine_git_object: a45a9f8383385b69bc53f0d53c0cd0bf1e5b8e0d ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder.java : id: 6f0cd3f5d760 - last_write_checksum: sha1:dc57ceb3f08888c5d556af5272d96cedc6804489 - pristine_git_object: 30602e456df77d7f62711f9bec20c101779d7b10 + last_write_checksum: sha1:28aa203d6cc346e74842fe65659306b90f2bb47b + pristine_git_object: 3330061003503b82280fe1f53d1ff81eec4540aa ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidResponse.java : id: 355fca94524e last_write_checksum: sha1:0b06d0f1787f188600e0049c49840a4cbf0640e5 @@ -16252,16 +17508,16 @@ trackedFiles: pristine_git_object: 10a318882e893955ef6b75769b73bca4d5e86e55 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1CompaniesCompanyUuidTaxRequirementsStateRequest.java: id: 54a187d6e119 - last_write_checksum: sha1:57a7e03181589d3eb20be40fff8def0907b3e3d8 - pristine_git_object: 0391efe75b7c9a2e32b7568f44c7e80073bddd84 + last_write_checksum: sha1:74b7480a146bc48bb256f1ff25ae706f98de08bf + pristine_git_object: af88845d5e73d2744e57c02e6b728e71ee7e5038 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody.java : id: 774127a5325f last_write_checksum: sha1:477e836c609e4d1155305f54e3254fb1857beb97 pristine_git_object: 25ba3495b339855d31d4c6e7ef660cde45272fd9 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder.java : id: d3cb9b04d210 - last_write_checksum: sha1:a09a0c106bace492101a6524f4a634a31fcd3588 - pristine_git_object: a690d841be5bdc39af1934b63472417f35127b3c + last_write_checksum: sha1:529a901bb2766d181aad1dc8b8a14c9b466da6c1 + pristine_git_object: 9c4cd85ed6f4dda79cce8a827ca831222b4667f1 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1CompaniesCompanyUuidTaxRequirementsStateResponse.java: id: 0a633affc422 last_write_checksum: sha1:8b1b720d029944eb2c4d6899d8e4d3d6753e43c4 @@ -16272,16 +17528,16 @@ trackedFiles: pristine_git_object: 34406e6d4665c30e764976772d12426513798d68 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1CompaniesRequest.java: id: cc1beb5d10ff - last_write_checksum: sha1:98f3f00d809ecfbc60f241103b70518bedd6412a - pristine_git_object: e5e1aa92aa74d8ce9f2c6eaeffe370b35c504d37 + last_write_checksum: sha1:8b791e1bf11cfacdebd3f5fe70ea6e76a24948c4 + pristine_git_object: 8c6a6818f3460d924fdd3aa6d38ac0149a843a9c src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1CompaniesRequestBody.java: id: 128aabf89318 last_write_checksum: sha1:378f9c756a3f473b84b951f2da17ad7b3b84eb54 pristine_git_object: 69c141585a83867f07061e8a3d7bb7ed9e24d468 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1CompaniesRequestBuilder.java: id: a5993352a443 - last_write_checksum: sha1:affe6001281b793b776140f1f7b48cabbd05bad5 - pristine_git_object: 2d9120e8e0d142db973a3eea874f52f4b9827849 + last_write_checksum: sha1:0a705cb2b984efb9e9b9961b08bcf63e8c3eb143 + pristine_git_object: d744ab5589c300bab657be86175f1bbb4a32eb10 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1CompaniesResponse.java: id: 5a7ab4d423fc last_write_checksum: sha1:dbbc879bb9cf46c66f74dc555c31cc5a22a749b5 @@ -16360,12 +17616,12 @@ trackedFiles: pristine_git_object: deb3d0bb466152ae3276d9ce0987c4fbfa3bf2f3 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1CompanyIndustryRequest.java: id: 4286cc955e4b - last_write_checksum: sha1:88335e02758c98b27b16e30f0a4d6cec49ee5e2c - pristine_git_object: dbe3cd7864fc847d34a91d7a48f57a60047872f1 + last_write_checksum: sha1:a3735a0d2b50f2c8d35669bab4ae0a7f67a7f528 + pristine_git_object: a361527257a8b528d598102b284bff855e7cf1b2 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1CompanyIndustryRequestBuilder.java: id: a497900707ad - last_write_checksum: sha1:47a149a474c679bc4cc375710617d22103e262d0 - pristine_git_object: f3f2de7a33ab9c00915cdfecfb552dfa144b20d4 + last_write_checksum: sha1:435b5288b29a3c67e6b4c96633d2678d3cf43455 + pristine_git_object: 35e49cd42476887d01ee150ee0853ae347177891 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1CompanyIndustryResponse.java: id: 030c0822daf2 last_write_checksum: sha1:8c0c4df0d8dc4c040ed865bde580aca282d2aab7 @@ -16428,12 +17684,12 @@ trackedFiles: pristine_git_object: e71728091ae334245f4f3ee2c02cf8f7f2f65f7d ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest.java : id: e140d2e59dc6 - last_write_checksum: sha1:aea44bae8e5c413346606c211fbb766908449fb9 - pristine_git_object: 3e7aad0cb2b7dec8ffe6fdc4daaea6c3ac8eeeff + last_write_checksum: sha1:7bc66af75bc305a7687d2c0ac1b80765c8982f1c + pristine_git_object: 7b9ff650589e388309562b1b5e934ae058e03363 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequestBuilder.java : id: 45c25559f40d - last_write_checksum: sha1:278f0826fe503cfe30972a23ff127bed2ad1552e - pristine_git_object: d01dd01c652731b68f5e78f446efd0f8ab46950a + last_write_checksum: sha1:bb0537637ce142d43a4d872880b90cad50c2f8f6 + pristine_git_object: dadc2c9e69ad20245052e227dc84d8a2d1d99066 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundResponse.java : id: c883ef2d25ec last_write_checksum: sha1:61b9ee81ececb8822240855e42d39a3c2c5fdfce @@ -16816,16 +18072,16 @@ trackedFiles: pristine_git_object: c503e8be71a56204a707b0bd91532b492ca38a12 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1JobsJobIdRequest.java: id: 742ce7b83d5c - last_write_checksum: sha1:e5c26a7aae802cdd6ce2d951fd8c356affc30b23 - pristine_git_object: 234613f0aee96faa5abdb95ea9cbbc0aa6cba3fc + last_write_checksum: sha1:804e04f9dde6a6bd3db773d5fac5b707f380c289 + pristine_git_object: a9ccfe9f736f2994d80107d0e7164b5737dce0d2 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1JobsJobIdRequestBuilder.java: id: 0ef8db0fd6ad - last_write_checksum: sha1:7242a26523fb036ecf8a7aabca17cf1477d49d2b - pristine_git_object: 90baad21d54ecfa509d44badc06d8556b5f0e4f5 + last_write_checksum: sha1:fb28cd81feac489ceaa7a6bba9fe62395ce0c310 + pristine_git_object: 190ebe2558bc5ebbf916de4d436cbd8a7827eab5 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1JobsJobIdResponse.java: id: 3b02b3c93709 - last_write_checksum: sha1:9e0605c1388cb07ed705ce01db90a8a365d56dff - pristine_git_object: 16f3e8530ee5b16375adaf093c0bc755c04af048 + last_write_checksum: sha1:46a8640e5d621b8c21749d133ca841f7b4295fc3 + pristine_git_object: 183e20b032ef52446e8c8f664216e16c961994ef src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1LocationsLocationIdHeaderXGustoAPIVersion.java: id: 7c610f63baa9 last_write_checksum: sha1:f6901338b8cb0295cb646a5850844eadc231d389 @@ -16846,18 +18102,38 @@ trackedFiles: id: 82ac8d620c2b last_write_checksum: sha1:44f3f491654589fcbc8b6fef1b06e792f4cba5f5 pristine_git_object: ebd83eb1cd1c2256916aa4ffd31b0fa827e206bc + ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion.java + : id: cfa184cdcb25 + last_write_checksum: sha1:d87bf05da0d001dcdbae7686175d2772f2b75ae3 + pristine_git_object: cb049721c789f0da4a45437511fd9a81d500d0b7 + ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest.java + : id: 1496af980520 + last_write_checksum: sha1:64854d60e4eac3db4bc1d28c3441d867b3db885e + pristine_git_object: 185c6eb2a2d7f987f3849a3edd18d5577fb3e57c + ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder.java + : id: 2249cd8699f0 + last_write_checksum: sha1:0b8ec5fe97ecca5c50b064c75bd01b91c6430b1e + pristine_git_object: 490f348d3e58068b757c0b3ec4147b06cf5e42c4 + ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse.java + : id: e072d1b68739 + last_write_checksum: sha1:6e13a601fe76e72fa92919d68bd4e03b787d598d + pristine_git_object: 44012e45af0694e155c16d97fff3308db049a87e + ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity.java + : id: 49a0f50100a9 + last_write_checksum: sha1:431aea64a92c8e2fa0324b029ad1df5c0bfbbc11 + pristine_git_object: 068b4dd4770e31bef4fca99fa1be4de824e0fc59 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1PartnerManagedCompaniesCompanyUuidMigrateHeaderXGustoAPIVersion.java : id: aa7a188a17d2 last_write_checksum: sha1:9170b3a19ee26122a459d6791e5d392e20150516 pristine_git_object: e5024cf9423f0ce5539c74735cb53c120103a7bc src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest.java: id: c3135f52081a - last_write_checksum: sha1:30d3494e7d1832a5f236c51de26d1d7dfe65197e - pristine_git_object: 2e70e4c9a9aa15a4f35eb71b2b1cfc191502ee50 + last_write_checksum: sha1:c5d68d9d4e2e02cac5cec66b009b96fbe217b197 + pristine_git_object: efd49fbb0d37052ea25fbe5cb7124030d0122407 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder.java : id: 39e7089fb2ed - last_write_checksum: sha1:a330b7e0487405c96c3c1f25e335c26ea7b9ad88 - pristine_git_object: 853f07364643df4c62a25495d86fdfac99b282f5 + last_write_checksum: sha1:0872e1b834763208d37cf28237ea656da26ef1c3 + pristine_git_object: 7ef49d925446f17cd2832f2d033bc08653b5924b src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1PartnerManagedCompaniesCompanyUuidMigrateResponse.java: id: 3a8661df3ab0 last_write_checksum: sha1:41b13dd3a17e562239453722c9eacc2ecb72b21f @@ -16868,12 +18144,12 @@ trackedFiles: pristine_git_object: 20baf7c90f770ad0bce61e1d38215eeb555eca1b ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest.java : id: dccd307f8d5c - last_write_checksum: sha1:4dea1fda5addd6f79a93ce0d0717a9a76656bf7a - pristine_git_object: 0c3f9064a9cb5c59659307f0df82530d93ad4b75 + last_write_checksum: sha1:7d514f64ceeb98e5633e41c9b57a7ce00dba07fc + pristine_git_object: 2dfce8d14ab23b0ede54a96824c48e39eaef8a53 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilder.java : id: e9e819622064 - last_write_checksum: sha1:05c038ae5cdd5d4e2c43da91c532c7d3806d66b0 - pristine_git_object: f283033914445ff6b6f251d2cff4fbca21905481 + last_write_checksum: sha1:916672e863207ad5fcdcc48095ec4ad598ab7a5d + pristine_git_object: 7a9ea49e3516ed2bc165cf76052e5e5b6c7226e3 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceResponse.java : id: 04055e06f295 last_write_checksum: sha1:f3788debb97cd4d1bec15bc51df132fab3c0dd95 @@ -17132,16 +18408,16 @@ trackedFiles: pristine_git_object: d7fd6ad7f97157d20384f262ac90948bce0c7e41 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1VerifyWebhookSubscriptionUuidRequest.java: id: 5802c3768265 - last_write_checksum: sha1:e847b4aedf1de97803f0116b485b77ecf595d125 - pristine_git_object: ced4be2aed120bd49644e045b14a62cf4bb861f2 + last_write_checksum: sha1:3008c4bea811677ed9de9b4086c68dd38f721c35 + pristine_git_object: cca7b3007f1720c944bada019ce58fed69c079bf src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1VerifyWebhookSubscriptionUuidRequestBody.java: id: 5736199d73ec last_write_checksum: sha1:59f06af0891b072aa3df005f0d416c399f5113c9 pristine_git_object: f59acb4fbda05f091a58f5cce26aaebc212c6f8d src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1VerifyWebhookSubscriptionUuidRequestBuilder.java: id: 0bcd7fc75647 - last_write_checksum: sha1:3a962dbdda74fbafc156844f3ed079ae1a3c51f0 - pristine_git_object: fb3a5662b63ed9721ab0d93562a79b94c03df45f + last_write_checksum: sha1:6dda348f452105c74efc7a87a462f06649ff31f8 + pristine_git_object: be49659f2aea09d18956637d8d1536f076c01dc3 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1VerifyWebhookSubscriptionUuidResponse.java: id: 0e96e2277b97 last_write_checksum: sha1:b70b226651b0fb5c9119282b21bc351cb7a0af61 @@ -17156,16 +18432,16 @@ trackedFiles: pristine_git_object: 969fbbc128a3c8707710a692c8d03a9e092fee58 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1WebhookSubscriptionUuidRequest.java: id: 3f47f428b100 - last_write_checksum: sha1:9a59409c0575032b78d098cd143ee9a5b3b9afcb - pristine_git_object: 6390e02a078cae55ad98cb915a22df2b2e9950bb + last_write_checksum: sha1:062938c20c24c3e84a3e91f220dd19486d5b33c3 + pristine_git_object: e3985bebe816ce3e1d06fc31828b0e812dff672a src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1WebhookSubscriptionUuidRequestBody.java: id: 588f6e2d2402 last_write_checksum: sha1:9e80cb0f0b64fe546729915701b69d96f2c49188 pristine_git_object: 29b45b5a8cd0a4e88853e20cdb1de67d423d05c1 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1WebhookSubscriptionUuidRequestBuilder.java: id: 01b8906e0c71 - last_write_checksum: sha1:7b16f3a5ffdc2a3d6b30d539818c5db29d2058af - pristine_git_object: 1f76b6e14bfd80ed65041b89a628015d5dd0cc03 + last_write_checksum: sha1:c353e818a8ff3bdc84d76e0c341695c17ccdc611 + pristine_git_object: 723f978570a67f34af1e530d7571d0e73f62d3c5 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1WebhookSubscriptionUuidResponse.java: id: e81016c2ccf8 last_write_checksum: sha1:6aee720f75dda26cf63ed379bd7c6b3ca41f4219 @@ -17176,24 +18452,24 @@ trackedFiles: pristine_git_object: 9b430e9d5d7a7c450f133d96d19dba9dc7b7166c src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1WebhookSubscriptionUuidSubscriptionTypes.java: id: 07633786083d - last_write_checksum: sha1:460f29f84109ec0db823ca17f020bffa8e730b3a - pristine_git_object: b044846fe0b9a78e3d622e4ebea6ffa46c24c022 + last_write_checksum: sha1:47bb054e4960f960a4279f90eb4a0585b52f9f66 + pristine_git_object: cac88c533d194ad8c9827fde72a191855bc56093 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1WorkAddressesWorkAddressUuidHeaderXGustoAPIVersion.java: id: 1c7dbbd57bd2 last_write_checksum: sha1:14bcd984db3851bc62c669913abf21a5c0d37974 pristine_git_object: 79b28fba56ce7cecacb97e9a51b73cf53d4a6ef9 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1WorkAddressesWorkAddressUuidRequest.java: id: 7d15172f9d1d - last_write_checksum: sha1:811bb468705dabaff60df3f0b6be87dc48f642b5 - pristine_git_object: dc2f55301cf36e7d49aadac548e41f1eec2b0574 + last_write_checksum: sha1:a3838a977d649200ea30257878d6a35bfc2f7cbf + pristine_git_object: 1c2d8aabdea7e4f935853d299feb0869f3ce4fde src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1WorkAddressesWorkAddressUuidRequestBody.java: id: ce1606852007 last_write_checksum: sha1:e04859522c63a7a3a0d21dfbf0f57c6713927317 pristine_git_object: 9979fd01c33ca9f49171ab2330e9b1cb55b6c6af src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1WorkAddressesWorkAddressUuidRequestBuilder.java: id: 2db07b922223 - last_write_checksum: sha1:20a95056a0f7cf323360de96ddbe70e560fa268b - pristine_git_object: 1574dad2722dfa1c4b5a61c30e5fead871c5e6a4 + last_write_checksum: sha1:9f64d1bc655ce0e334f85decd44555bb4c72458d + pristine_git_object: a9c2e8e8c705d428f95202809291286fa8d85935 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1WorkAddressesWorkAddressUuidResponse.java: id: 086cb4c06304 last_write_checksum: sha1:f8daedf05a10b9e3e0ac23f7f1c681b9ec897e10 @@ -17204,12 +18480,12 @@ trackedFiles: pristine_git_object: 525c5e8b1022f3000e1d78ba17a7fbd65bf0d6df src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutWireInRequestsWireInRequestUuidRequest.java: id: 97c020fbaeb4 - last_write_checksum: sha1:e31fab876ca0e0551692ec41e2ece7be0ba56e16 - pristine_git_object: 6fcd7a5108e6b3953352731686148a234b44c4fe + last_write_checksum: sha1:1cb0d3b5e1439c9efa9dc86a4a150a912380d8e6 + pristine_git_object: dbed27a8a1f802a4221d79d60bfc40e81022e19d src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutWireInRequestsWireInRequestUuidRequestBuilder.java: id: 0166339167ae - last_write_checksum: sha1:a2adbb1d54146d6d34557f028302907edcbd901b - pristine_git_object: 74557c1e5ae084ec40a039da41d40e5f3505227b + last_write_checksum: sha1:2217c634d77de72321549efe091ecfd664c8d952 + pristine_git_object: 0ea6812db0a9d11e3480e1292a40a45b8d37182a src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutWireInRequestsWireInRequestUuidResponse.java: id: d4fab9f7ae2f last_write_checksum: sha1:e1f99267d6696371bcd5a1aa03840a4faf5ab72f @@ -17304,8 +18580,8 @@ trackedFiles: pristine_git_object: 7e962720a25ef2509ad2ee02c59707279426875c src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/SubscriptionTypes.java: id: 7a32631595f1 - last_write_checksum: sha1:6b59e71a052ff479684b2368598c18611d8752a8 - pristine_git_object: 590f5dd7ba01219c0d1458aa15b91483c79eef16 + last_write_checksum: sha1:123547456052aa3cf70f82b80668f3f47443df91 + pristine_git_object: 0dd17850c66cd2bda37977bf05cdeee4c53b63ea src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/SystemAccessTokenRequest.java: id: bfd1a5fe6c48 last_write_checksum: sha1:8ad080e43e3914751c780f36f97126a5cc48a01e @@ -17382,6 +18658,10 @@ trackedFiles: : id: 4cc716aeb570 last_write_checksum: sha1:223c927d1f8f5a9f51866583e53cdbafdd0662ea pristine_git_object: 4c4d90d5569e20ebb8298a252b0785e91323c566 + ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse.java + : id: 051d75b2de13 + last_write_checksum: sha1:a0b8e50e79ccae45011f24121e7b0e2285d42b9b + pristine_git_object: 40155f899c7970c94513446566c37cd31dbff6d3 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/DeleteV1ContractorsContractorUuidRehireResponse.java: id: 70383e6ae3e6 last_write_checksum: sha1:70163df7a4f42885f96c039b8c91f13d0f077476 @@ -17410,6 +18690,10 @@ trackedFiles: : id: 1a88ab87a352 last_write_checksum: sha1:922ae17f25a1fa2a570378dc91c13d4167fe82f1 pristine_git_object: 48c7389acc773df08bd20de5e23061857e270945 + ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java + : id: 069707e0cf80 + last_write_checksum: sha1:955496f5ec2b66eb88598694ae063825368ae215 + pristine_git_object: afbe15ef7787ffface9b1c413f8cfe6ca7e85f7b src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/DeleteV1EmployeesEmployeeIdRehireResponse.java: id: 321f8a8788a0 last_write_checksum: sha1:1361f8301b603be52dc070ee7b919553f850b0a2 @@ -17510,6 +18794,18 @@ trackedFiles: id: f7e04cc49dd1 last_write_checksum: sha1:8b2fb474d677b5c04147043825abc82dd799891f pristine_git_object: ce4601e3af6ac20238b30a2dd5d0ef7f6f36f83e + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetReverseWireTransactionsResponse.java: + id: 33cda7926cf8 + last_write_checksum: sha1:1b6c35175f8c4c2263db4aa8b8898124fa4066e7 + pristine_git_object: 3be2dd35c1d34cf5f0550b051e51fd1981f7c3cb + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetTaxPaymentResponse.java: + id: 4bb7bba5e866 + last_write_checksum: sha1:49c08532aaaf74f51e06367406ccc87af3c02000 + pristine_git_object: 41aa39d129e02663a40128bdb99f85324ec546cb + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetTaxPaymentsResponse.java: + id: b1b175f1a821 + last_write_checksum: sha1:7a8bc07e4424f220584039c02e1551490837fde1 + pristine_git_object: a82073191ccb14f9a1db13e19a2d03e66c5b5772 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1BenefitsBenefitIdResponse.java: id: 1acd67a7ef3e last_write_checksum: sha1:f12c42842e3ce4a364000a202edefc9a346702fe @@ -17524,8 +18820,12 @@ trackedFiles: pristine_git_object: f0ad8c3791c9cd837c6527baab4d26e20aef39ed src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1BenefitsResponse.java: id: 4258740069bf - last_write_checksum: sha1:e4941e1acf9776a8eceeb8b8ce77a697af7b5c68 - pristine_git_object: be10b784141eb8e0acd43d1f422e7af8c7da374a + last_write_checksum: sha1:22216fa8837fc18974e65230d56ca47144a40c91 + pristine_git_object: 6bb2f705c464ed9be3c34f54544e8733ca61c1e6 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1BulkReportsRequestUuidResponse.java: + id: 86d085076414 + last_write_checksum: sha1:9653c3fc90d1a17ec6f2a666bcb9144c184da9a1 + pristine_git_object: ac91d1a12ce614159ad154478c1e7c70f5356f81 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1CompaniesAttachmentResponse.java: id: 5ed5246f49a2 last_write_checksum: sha1:e67e2ceb853508d22e2fd54c7cacbdd33bf79d2d @@ -17770,6 +19070,10 @@ trackedFiles: : id: cd711dedbb3e last_write_checksum: sha1:5745e84b1b9a0044d00e57b5dda0f5bd80b4ba9c pristine_git_object: 0c65e53e1c3ce6535f1e777674c0d4969b07c7d7 + ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1ContractorsContractorUuidMemberPortalInvitationsResponse.java + : id: 4e99a19f52ce + last_write_checksum: sha1:43f3d8428427fde31e3c89fe8a05616229110392 + pristine_git_object: f7a0d7c09023819ade74fd39e818b7c8c523e6dd ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1ContractorsContractorUuidOnboardingStatusResponse.java : id: 856539c3d816 last_write_checksum: sha1:7746b5d7ddaae164583638144658e91847b78709 @@ -17778,6 +19082,10 @@ trackedFiles: : id: e03ccd36e186 last_write_checksum: sha1:4549fc00676aa47b9a390fc08fa7659ee32c4443 pristine_git_object: e9a3127aa7fe47d44c968e02fcd3c37f8173d183 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1ContractorsContractorUuidPaymentsResponse.java: + id: 02fce655a125 + last_write_checksum: sha1:83c6bbba8668fcbaf317de1363e5826dc0f9c4cf + pristine_git_object: 5e4c8976b2e7554d40b516d59f44b5977edf7363 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1ContractorsContractorUuidResponse.java: id: 5a11bbe99a00 last_write_checksum: sha1:63f8dd2d45c7b1e5fe738cc95b77eed8ddf245f3 @@ -17842,6 +19150,10 @@ trackedFiles: id: 6ccc20b3653c last_write_checksum: sha1:ea0c11eb7886d72aa34e0af8f4c302537455ae29 pristine_git_object: 7a0d3cd0ec6bae71c8b89bf7921c78c987f17fcf + ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java + : id: 49d9db3ca62a + last_write_checksum: sha1:b1ebc2e88869777d524e310ef01175fcdb091d47 + pristine_git_object: 9de987ae76f9735b97e3a5e66ccccd96b0b55c02 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1EmployeesEmployeeIdOnboardingStatusResponse.java: id: 433e75be7a62 last_write_checksum: sha1:2f8bf6814939ec7ddba08e014c6442e356675c11 @@ -17938,6 +19250,10 @@ trackedFiles: id: 4e89ff4de90a last_write_checksum: sha1:85f18f7040bf1e012263d711721ed03d5de3e77d pristine_git_object: a4fbe54fbd038815818a8a30194ff1ee0607a778 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1PayrollBatchesPayrollBatchUuidResponse.java: + id: c847ecba8937 + last_write_checksum: sha1:2d6629e2235d2514e87e6838c0cfc44df35e25a6 + pristine_git_object: 6eba77a81f57779b32df748ba07838836aa15f66 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1PayrollDigestsPayrollDigestUuidResponse.java: id: 78dcc0bc4b28 last_write_checksum: sha1:f6b43d5998b89e07ae0da83395f29eba9745bd6a @@ -18062,6 +19378,10 @@ trackedFiles: : id: c6bbb96b7a1a last_write_checksum: sha1:4a36dc9bd022c6e0dfa06d4e9cfc57a21420ab5c pristine_git_object: 8bd43e1641e9cf984872041e7a1f92b476a3f8a9 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1BulkReportsResponse.java: + id: 403e75e9b32c + last_write_checksum: sha1:0589ea99e2431758bd27f6f166ffcce77a878e2e + pristine_git_object: 73fe63d3b6bd1ebe19c5f8bd031f6781099f68df src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1CompaniesAttachmentResponse.java: id: e38fdfe939e6 last_write_checksum: sha1:b2759633d4ec3dd0e18c72b4eb8bfe12406e6a09 @@ -18166,6 +19486,10 @@ trackedFiles: : id: 4189d27e2ba3 last_write_checksum: sha1:b65d6bb57f2e5eb6bc474e762e4b93679fdde423 pristine_git_object: 9f256feb6383146d8c1e7b2bae3e9b267d021a9b + ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1ContractorsContractorUuidMemberPortalInvitationsResponse.java + : id: ab9debe12f61 + last_write_checksum: sha1:efaeccff976829054bb55a50b7dbad828174ba07 + pristine_git_object: 15814304f6d5440e80e47e3d1627ffb0d1cba610 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1ContractorsContractorUuidRehireResponse.java: id: 627c1cf70c03 last_write_checksum: sha1:30e89c94322ea20ac6d2addeb980f30ed23072b0 @@ -18192,8 +19516,12 @@ trackedFiles: pristine_git_object: 88fc2cd7744141b6d9746798da711593ff167fb1 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1EmployeesEmployeeIdJobsResponse.java: id: 0370499732a1 - last_write_checksum: sha1:26f3a9807f101d5afc3fccc54d872add244c6a84 - pristine_git_object: 5afbab0a10eeea97338fc2bf47767cb0a04afb51 + last_write_checksum: sha1:dd361b3822406b42934307498ec444c4be7b26ed + pristine_git_object: 5008629ad06eff2dac41920e249c2bd4fbef92fc + ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java + : id: 5ac4dc40e3f6 + last_write_checksum: sha1:d43e5c110c3e3a6b22d5d238c4330fdf3b8a0abf + pristine_git_object: 8b518628cc38b4027e55747a55a4a9ed10dceef6 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1EmployeesEmployeeIdRecurringReimbursementsResponse.java : id: 2d57b775779c last_write_checksum: sha1:45f548e6fac95225902abc19373db72063a9f06c @@ -18238,6 +19566,10 @@ trackedFiles: id: 2dd04cc80c6d last_write_checksum: sha1:5ac8492f03e46a4e502904074228a1cce24b0867 pristine_git_object: 3b5c69b9dac1404594afed7a710154aa5fc43331 + src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1PayrollBatchesResponse.java: + id: cedf3c4664f0 + last_write_checksum: sha1:8e48f3359e848c590abc547d276e3c33d587d4f0 + pristine_git_object: 45f4244e271531be1f92b078c97c8395192ce95e src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1PayrollDigestsResponse.java: id: 98fb89e2a3b6 last_write_checksum: sha1:3ff05799a2cdce7ef804404f84e0dde1d466cdb7 @@ -18464,12 +19796,16 @@ trackedFiles: pristine_git_object: 42afdd5f9dfd86c62a4d2660da74e2c7bdeced27 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PutV1JobsJobIdResponse.java: id: 0e25dce1e50d - last_write_checksum: sha1:cac43ccfa64731c696063a75ba11e3152ca1cb35 - pristine_git_object: ed1ffc59e9a0fc62fb46314657564ba4d258fdcd + last_write_checksum: sha1:278e6dbcd3684a981edbab756b3a9051897191e9 + pristine_git_object: e1c52025df18ce1378ee0b8b4891384dfa310bb3 src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PutV1LocationsLocationIdResponse.java: id: 0805dd44e102 last_write_checksum: sha1:fcaeccdaccf438ee24ace851e19718c1e6275300 pristine_git_object: a8a6dc5551132bebb29ce19eba69ee99810a9595 + ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse.java + : id: 60728ea1dc47 + last_write_checksum: sha1:e1e410946374883c006ee4e57d1336d3b24ad911 + pristine_git_object: 18beea5fee58b511766b49aee93b86dccee23122 ? src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PutV1PartnerManagedCompaniesCompanyUuidMigrateResponse.java : id: 3e7c6735698e last_write_checksum: sha1:0468a98f95ab298c5385b798df70585abae27601 @@ -18594,14 +19930,18 @@ trackedFiles: id: d42a625bbacc last_write_checksum: sha1:3172760a6b2cffc15470e016e3a3082cbc19a98a pristine_git_object: a7a1fd502ed885e57a2074f58570d759121325c1 + src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitations.java: + id: 8187ce8ace16 + last_write_checksum: sha1:eee4adb2005caf70df4c7a7c7040c17c1bef4265 + pristine_git_object: 1dfb2b9f80a57910ce6360e05f4f4df551b2ea0d src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/DeleteV1ContractorsContractorUuidRehire.java: id: 90ab28d8b3ca - last_write_checksum: sha1:159d2c84bdc8d182d3b42b64625f72a13d5a8394 - pristine_git_object: 502255eb405dd292c056869e420fb060b83ae33b + last_write_checksum: sha1:6c7fca13b6f3d4222d1835c7eb675ef045fb2233 + pristine_git_object: d02d89ed6e7f51aedb819520a8750ec2f8b66348 src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/DeleteV1ContractorsContractorUuidTermination.java: id: 7c4e4ccdf0b2 - last_write_checksum: sha1:73a4c276f9bdb02ad258e4e27ad5e8f8a198c9c4 - pristine_git_object: 229e1928641476ad1f20e610789dcede6d175e77 + last_write_checksum: sha1:8ed4249b51ec42965b8e8d2232918475d41dbc97 + pristine_git_object: 8c35e39cab36cbd365ffb65a79e9f3e5ea792b22 src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/DeleteV1Employee.java: id: 4c9104c20af7 last_write_checksum: sha1:6e16f6879fc9728eea01f4473289fbf2c5e5a22b @@ -18618,6 +19958,10 @@ trackedFiles: id: 3035138de9c4 last_write_checksum: sha1:29c914d07f40b488d7d1a1bbf1e1ad7a631bf153 pristine_git_object: bb7a063f6ba15a2c6a1d2f0419e0fc051776b8f9 + src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitations.java: + id: 06bebf276362 + last_write_checksum: sha1:8198e728adf2b182e014cb05da2a6dc7f8e1d868 + pristine_git_object: f0be1a1ed02a8dc7baeda4517a3b9a4a7afca11c src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/DeleteV1EmployeesEmployeeIdRehire.java: id: 7ab3287194d9 last_write_checksum: sha1:af8cc0e9d499c61a72415ef0463a7de1831aff3d @@ -18718,10 +20062,22 @@ trackedFiles: id: 21da2fc6b9f5 last_write_checksum: sha1:2ff8d3ebe24b54f0efb5e0c1f7fe821dd4bc7c82 pristine_git_object: 58028c681cfc73aba86cf7d41a16c577dc2121c3 + src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/GetReverseWireTransactions.java: + id: b5cbf6d988c3 + last_write_checksum: sha1:375a5b58751c5b204a21e12b8253535200c2f676 + pristine_git_object: 5941997b4b4fb27c3ae7516aec9d4766527c35a4 + src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/GetTaxPayment.java: + id: eb5fcfc8bca5 + last_write_checksum: sha1:dca3d6779c6bb29a4cbde55fa1c16be6a7058ecc + pristine_git_object: db9eee832debc2b9ffa6255e0401dead78c50f34 + src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/GetTaxPayments.java: + id: a9f25226f609 + last_write_checksum: sha1:d1ef45ece1a44831915af8736eb1962e7b44b715 + pristine_git_object: e02a9ae07175aa9332dde896c170eaac2d85a1d9 src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/GetV1Benefits.java: id: fcd5e485028a - last_write_checksum: sha1:3bf9997d00c2f3fd046240b9f05db886927feecc - pristine_git_object: 5984e190b36f41ab8470fc13650a423d633a128a + last_write_checksum: sha1:92bc98c367d10c53d2b909aa6baf56515d8643be + pristine_git_object: 741627cabc64969c148229e455866e4237408a22 src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/GetV1BenefitsBenefitId.java: id: 9a36692a8904 last_write_checksum: sha1:e6ee9c5468515d6c6ed1ac52b039d829d3ed6a89 @@ -18734,6 +20090,10 @@ trackedFiles: id: 725bc1f6d109 last_write_checksum: sha1:5b0672e89bf4352253073283fd3fd6cc5df0b887 pristine_git_object: 8c2aecf79eeee3ba611a443340900d9721631f32 + src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/GetV1BulkReportsRequestUuid.java: + id: 978f43ef03d3 + last_write_checksum: sha1:264016c1951123f7e3f1c06938d214bccbe5b399 + pristine_git_object: 7a0f54c5ddc4e5705feacb4e9126e75ac2e6b8d6 src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/GetV1Companies.java: id: 307a936c4ea4 last_write_checksum: sha1:efde84d7053b4e912090105f961c81ef289e6b37 @@ -18982,6 +20342,10 @@ trackedFiles: id: b4ed74935908 last_write_checksum: sha1:6715ecba9d562caf116090953eab80efb2a6a3f0 pristine_git_object: 51d7e9611a93cb43b0174f3b321b25b48fe788dd + src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/GetV1ContractorsContractorUuidMemberPortalInvitations.java: + id: c12da2f39d49 + last_write_checksum: sha1:8a7782205ca8a60e41393407463d12957c87e55e + pristine_git_object: cd1795b0654caaef03ffcde0ce01007e1c442b71 src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/GetV1ContractorsContractorUuidOnboardingStatus.java: id: 43ee9d346270 last_write_checksum: sha1:8f5ecaf6f7c58bbe9223d446a109f7d50e4289b9 @@ -18990,6 +20354,10 @@ trackedFiles: id: 6831cc286adc last_write_checksum: sha1:1b3f9d1dbda3c21eb8bfd335b8501c8e2976dfbd pristine_git_object: cb987193922a11671f26ef07a80f110ed172a2a5 + src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/GetV1ContractorsContractorUuidPayments.java: + id: 1241a69856d7 + last_write_checksum: sha1:462adc152138d984f18a59e55150c84fd434a5ca + pristine_git_object: c268f1e0bcf208a0b968ee83705c7e274d7bf33e src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/GetV1EmployeeBenefitsEmployeeBenefitId.java: id: f7cbc95903b2 last_write_checksum: sha1:489e65a564daaedac853700e029d68eec8f68cb7 @@ -19054,6 +20422,10 @@ trackedFiles: id: 0f7a875dafbb last_write_checksum: sha1:242bd299a96f6703af949ea58b7caab86bfd9a60 pristine_git_object: 585ab90cf1ebe0927b18cd961e9183aef5ba5d56 + src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/GetV1EmployeesEmployeeIdMemberPortalInvitations.java: + id: 28c494eb3131 + last_write_checksum: sha1:f89791fb794ab6bcf6587960380ca538702dc5a8 + pristine_git_object: 9b0bdec1c7f4e116a29ba6a5e37a0c881ada2053 src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/GetV1EmployeesEmployeeIdOnboardingStatus.java: id: 3e7cc9cd9231 last_write_checksum: sha1:5bb1afc4262bfbdfd2ad684d61fe9538f5777cbf @@ -19144,8 +20516,12 @@ trackedFiles: pristine_git_object: 83bebac8f7a97aad95020272b79a53ad0a014016 src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/GetV1PaymentReceiptsPayrollsPayrollUuid.java: id: 374526f5fe08 - last_write_checksum: sha1:c0d3b34d00d1737831c6eacfd41ada123c2a9132 - pristine_git_object: 3385ff2346c6b3ce8f7e054537fcb9fc9ba0f698 + last_write_checksum: sha1:f078759f468787443286aad92a4bae406b350248 + pristine_git_object: 0d0d54102fb5a79451ac30fb0cc4ce80245bccda + src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/GetV1PayrollBatchesPayrollBatchUuid.java: + id: 6db7ff71848c + last_write_checksum: sha1:898a6176693cebc2f332ae3a816cb04bb8e0ec85 + pristine_git_object: 80304cbc492f53cda10fe7b6b1275763d86d271e src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/GetV1PayrollDigestsPayrollDigestUuid.java: id: 0f97993e4565 last_write_checksum: sha1:ff85a956451294117759f54db3823621b081adf3 @@ -19248,8 +20624,8 @@ trackedFiles: pristine_git_object: fab75f182b2e97b1d8149afe8d1ed0ec59007e9c src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/PostCompaniesPayrollSkipCompanyUuid.java: id: 016452ef6eea - last_write_checksum: sha1:5bbe1060fb815c46cf6a757698b3380dd2e8372b - pristine_git_object: 1ea7af840961f0b1a020f05d63e2c1694be75384 + last_write_checksum: sha1:87b046c31e3d1eac8a10dafa62c4ace1aaad4065 + pristine_git_object: 6bc44a0a4d8b353918319748e606e0abc8c36f9c src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/PostDepartments.java: id: 6dbb4cd58e91 last_write_checksum: sha1:2958e57ae7825a903ab042a7a55b003d3e7bebea @@ -19274,6 +20650,10 @@ trackedFiles: id: 6513d6841f19 last_write_checksum: sha1:8500365509aa9213894aca5356a15ca2b76edeef pristine_git_object: 8b54398b26c443efd1053b907d68978039543067 + src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/PostV1BulkReports.java: + id: f340225f6bd7 + last_write_checksum: sha1:f4bc9964d9e8d7ce29b86fabb6e97a44676f0127 + pristine_git_object: beb6178fb25838fcccdf6c3711f9ee3a60c4c359 src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/PostV1CompaniesAttachment.java: id: 100242c64809 last_write_checksum: sha1:50ee9dcd44a19d9f648aa951bcb7f9fefe369418 @@ -19378,14 +20758,18 @@ trackedFiles: id: 37882f0b1cc8 last_write_checksum: sha1:4f1ba3ab3435f43a9cb96b827352dd9aa9eefffd pristine_git_object: 23213b4af7d6a33c92fad6bcb2becaee807395e1 + src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/PostV1ContractorsContractorUuidMemberPortalInvitations.java: + id: b392e4fb3ee9 + last_write_checksum: sha1:f7a708726478c145a909902eb155aa519e8e200d + pristine_git_object: 433b4b84266c06cd92369e48ab4450efdc717c6e src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/PostV1ContractorsContractorUuidRehire.java: id: 7c01df53aca2 - last_write_checksum: sha1:d5d542998735c1c0235347a761b7b4a201e4713c - pristine_git_object: c56c8e4182732961bbd3f83beee51d6cd1b7a599 + last_write_checksum: sha1:3c7487a78725ec0eb705c8d3d0e4e67a14277965 + pristine_git_object: d7665d8639cadf4af34538096c1aa981d0d78505 src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/PostV1ContractorsContractorUuidTermination.java: id: 88e2a06232d8 - last_write_checksum: sha1:1a93c62248d1786c8b0d3ff785206c0480982731 - pristine_git_object: 2353b46532522014ba4a39e1227e2e0584544047 + last_write_checksum: sha1:c0ce617f79b8a020299b4a6df2290b553f82b8f8 + pristine_git_object: 189aca37a8e15b64cb03919f24e4e6db11d7518f src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/PostV1Employees.java: id: d34e48c507db last_write_checksum: sha1:0f9788d2a061e560aa4a9198e059c01c7388bfe8 @@ -19410,6 +20794,10 @@ trackedFiles: id: 83b8d6d94a48 last_write_checksum: sha1:264aab5e0992b6fd8d72816647bb374d0f9779f5 pristine_git_object: 6e3b56264c6cb442b3c7599a1c86daf3df0e0c0c + src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/PostV1EmployeesEmployeeIdMemberPortalInvitations.java: + id: 7dfcb5b41d2c + last_write_checksum: sha1:5fda80179725cde98bde564238e33ba6ebf98d23 + pristine_git_object: 5afc629eb42d1e748da609ffada1eb236b848286 src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/PostV1EmployeesEmployeeIdRecurringReimbursements.java: id: 21acdb006529 last_write_checksum: sha1:dec7c0229c54ae223afe457bc0732175b35b8e96 @@ -19450,6 +20838,10 @@ trackedFiles: id: 1f1daf9b257d last_write_checksum: sha1:ca5c441b81033bbf6407f731a29520d9ff99c769 pristine_git_object: ab8aff266d98fdc65507e5fc2f51f6cbd6cc9632 + src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/PostV1PayrollBatches.java: + id: fe38c4f17533 + last_write_checksum: sha1:7e380851f41ef4e5e53e17546e87fae4cd6049c5 + pristine_git_object: 240aaed226d9f7c3c5404a7a5d29cef014493c90 src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/PostV1PayrollDigests.java: id: 9190cc6e62a5 last_write_checksum: sha1:b17c94419a6ef4252a129dde33218dd7d6f51b9b @@ -19512,8 +20904,8 @@ trackedFiles: pristine_git_object: 675867ac8277ee40bddfb9ddc597eb30e28a8e27 src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/PutV1CompaniesCompanyIdFederalTaxDetails.java: id: edc9cd00c902 - last_write_checksum: sha1:fe7b1cbfe08903ca85ba6b335ea9619e55a0891d - pristine_git_object: 04bd0f70d49e1d94254b84d185bfeb182ae28d01 + last_write_checksum: sha1:4fc93086deb398e4f93c1055c4dc757ef8939311 + pristine_git_object: 8126c2756d941c5ad77b541f262e04dba6343231 src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/PutV1CompaniesCompanyIdPaySchedulesPayScheduleId.java: id: e184b682c640 last_write_checksum: sha1:25056b13b7a1a482ef16ea8d6d5dcc08d8b395f8 @@ -19682,6 +21074,10 @@ trackedFiles: id: bd08fb668250 last_write_checksum: sha1:55a910b440f64159bbdf7b205c2b6ab3914dcf62 pristine_git_object: 50a3a5db8930226b10a56d2530ffd539d7fe6bf1 + src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociate.java: + id: 44fe0f38fc55 + last_write_checksum: sha1:d5c790c9b4d1da313da9fa2116a181c361de0925 + pristine_git_object: 4ca5369da343e0bfdf991ce341bf93b2c5a25214 src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/PutV1PartnerManagedCompaniesCompanyUuidMigrate.java: id: 1e8df1dae34c last_write_checksum: sha1:f247dfc04e155b5e8207b9312debfe1d532739af @@ -19776,8 +21172,8 @@ trackedFiles: pristine_git_object: b1a2079287257cfea978913c179f2c3f851fc29d src/main/java/com/gusto/embedded_api_v_2026_06_15/utils/AsyncRetries.java: id: c0f78a75dbeb - last_write_checksum: sha1:ff42d44ae6bd2a84032b905cc79e1e2edaf5f537 - pristine_git_object: 5d511aca5d607e7cc0772cda23facd880c289b07 + last_write_checksum: sha1:99213d784ea76872f5b37d1f7856a039deaac75e + pristine_git_object: c575776c8363a9df06dbab73cc13921e1e02fefc src/main/java/com/gusto/embedded_api_v_2026_06_15/utils/AsyncRetryableException.java: id: 9a84629b0075 last_write_checksum: sha1:33d6705c06f55d3dba27635419b4a3f0b26f8b65 @@ -19892,8 +21288,8 @@ trackedFiles: pristine_git_object: 470430276e857705c4beae7f9184ab1acd456dc5 src/main/java/com/gusto/embedded_api_v_2026_06_15/utils/Multipart.java: id: 5e0b5ce8a6f3 - last_write_checksum: sha1:35a76d0ce863f09bd59821c2ce0739b7f569595c - pristine_git_object: 3eb076d00b855c1ee74a111e07b0d592d85e6eed + last_write_checksum: sha1:4690dc07a9bfa7410843caf19aeb9d63f8cf99d7 + pristine_git_object: e0969c679aab4716dd37c0e9f8607d8242ccd586 src/main/java/com/gusto/embedded_api_v_2026_06_15/utils/MultipartFormMetadata.java: id: 7fedec634c9f last_write_checksum: sha1:adc298eb0eba630782039aa71afa135390f6fe33 @@ -19960,8 +21356,8 @@ trackedFiles: pristine_git_object: bc5e4d893f076a37c738d5560c450035de25d245 src/main/java/com/gusto/embedded_api_v_2026_06_15/utils/Retries.java: id: 159d2654e0a3 - last_write_checksum: sha1:af8958a3379bb52a2c7d49de1a8857f5d198edce - pristine_git_object: 87f4f8c903353022ed8ffd6717f54e17de5e6913 + last_write_checksum: sha1:3d5683461fb546de519917b57e1bb6b6b32a135d + pristine_git_object: cc38b5d12d69efec86c93b3e77d5967402614607 src/main/java/com/gusto/embedded_api_v_2026_06_15/utils/RetryConfig.java: id: cd5f61798331 last_write_checksum: sha1:4ac180d696eabfb2c0dfb3a78e8f67016bb8c5f1 @@ -19988,8 +21384,8 @@ trackedFiles: pristine_git_object: 53ece89dec5c1c0ed6b32928e4cb6ff12f10bc0c src/main/java/com/gusto/embedded_api_v_2026_06_15/utils/SpeakeasyHTTPClient.java: id: a0fd6caa6ab7 - last_write_checksum: sha1:f1b85a9694610ddc827abb9c2e27ef81e23567f7 - pristine_git_object: 82777102bc45c6f7960df4a46e3ccb4663c81a3d + last_write_checksum: sha1:b7d7efb0a5a9fae209b80d58f3f181fc65d9690d + pristine_git_object: 6bd1cae5e4c94c02c242c6e62fb1c327760980f9 src/main/java/com/gusto/embedded_api_v_2026_06_15/utils/SpeakeasyLogger.java: id: 58c8cdc9ca17 last_write_checksum: sha1:5271c949347556f4c97dc702934376f5356624a1 @@ -20000,8 +21396,8 @@ trackedFiles: pristine_git_object: 659cb2cc2bcbbe67f7b4cb835f2e3a7c46486e69 src/main/java/com/gusto/embedded_api_v_2026_06_15/utils/StreamingParser.java: id: 4bdbb3f5cb11 - last_write_checksum: sha1:2f5e58c72d316d14b5eb74d25e9d0c256d278538 - pristine_git_object: b1b555070fdf7695116d1fa1df8d563c89b4053d + last_write_checksum: sha1:ca663588c361a85ea6bcf2970b01b2a6daacd115 + pristine_git_object: 99b974bd4ac97c6cb9a6598fe1a65f719f96e52f src/main/java/com/gusto/embedded_api_v_2026_06_15/utils/TypedObject.java: id: 801aa2e17a6c last_write_checksum: sha1:7266f8c8eb3d7f91b6c3364f97f34228f5eb4052 @@ -20770,6 +22166,8 @@ examples: application/json: {"errors": [{"error_key": "", "category": ""}]} "409": application/json: {"errors": []} + "403": + application/json: {"errors": [{"error_key": "", "category": ""}]} get-v1-jobs-job_id-compensations: speakeasy-default-get-v1-jobs-job-id-compensations: parameters: @@ -21065,6 +22463,9 @@ examples: X-Gusto-API-Version: "2026-06-15" requestBody: application/json: {"start_date": "2025-07-01"} + responses: + "422": + application/json: {"errors": [{"error_key": "", "category": ""}]} delete-v1-contractors-contractor_uuid-rehire: speakeasy-default-delete-v1-contractors-contractor-uuid-rehire: parameters: @@ -21072,6 +22473,9 @@ examples: contractor_uuid: "" header: X-Gusto-API-Version: "2026-06-15" + responses: + "422": + application/json: {"errors": []} post-v1-contractors-contractor_uuid-termination: speakeasy-default-post-v1-contractors-contractor-uuid-termination: parameters: @@ -21081,6 +22485,9 @@ examples: X-Gusto-API-Version: "2026-06-15" requestBody: application/json: {"end_date": "2025-06-15"} + responses: + "422": + application/json: {"errors": [{"error_key": "", "category": ""}]} delete-v1-contractors-contractor_uuid-termination: speakeasy-default-delete-v1-contractors-contractor-uuid-termination: parameters: @@ -21088,6 +22495,9 @@ examples: contractor_uuid: "" header: X-Gusto-API-Version: "2026-06-15" + responses: + "422": + application/json: {"errors": []} get-v1-contractors-contractor_uuid: speakeasy-default-get-v1-contractors-contractor-uuid: parameters: @@ -22315,7 +23725,7 @@ examples: header: X-Gusto-API-Version: "2026-06-15" requestBody: - application/json: {"columns": ["total_time_off_earnings"], "groupings": [], "file_type": "json", "with_totals": false, "start_date": "2024-01-01", "end_date": "2024-04-01", "dismissed_start_date": "2024-01-01", "dismissed_end_date": "2024-04-01"} + application/json: {"columns": ["total_time_off_earnings"], "file_type": "json", "with_totals": false, "date_filter_type": "period_end_date", "start_date": "2024-01-01", "end_date": "2024-04-01", "dismissed_start_date": "2024-01-01", "dismissed_end_date": "2024-04-01"} responses: "201": application/json: {} @@ -22820,6 +24230,8 @@ examples: application/json: {"errors": [{"error_key": "", "category": ""}]} "422": application/json: {} + "409": + application/json: {"errors": [{"error_key": "", "category": ""}]} put-v1-companies-company_id-payrolls-payroll_id-submit: speakeasy-default-put-v1-companies-company-id-payrolls-payroll-id-submit: parameters: @@ -24186,5 +25598,199 @@ examples: application/json: {"uuid": "1abe7289-f78c-4339-88a8-85081eccbe5e", "idempotency_key": "fe854863-de8e-4f8d-969c-e489e9c596f2", "status": "completed", "submitted_at": "2024-10-08T07:24:00.354Z"} "404": application/json: {"errors": [{"error_key": "", "category": ""}]} + put-v1-partner-managed-companies-company-uuid-disassociate: + speakeasy-default-put-v1-partner-managed-companies-company-uuid-disassociate: + parameters: + path: + company_uuid: "" + header: + X-Gusto-API-Version: "2026-06-15" + responses: + "200": + application/json: {"company_uuid": "509a4fda-2971-4edb-96da-5be5d1295f82", "company_name": "Runte, Parisian and Terry"} + "404": + application/json: {"errors": [{"error_key": "", "category": ""}]} + "422": + application/json: {"errors": []} + post-v1-bulk_reports: + speakeasy-default-post-v1-bulk-reports: + parameters: + header: + X-Gusto-API-Version: "2026-06-15" + requestBody: + application/json: {"batch": [{"company_uuid": "12345678-abcd-ef12-3456-7890abcdef12", "report_type": "custom_report", "columns": ["employee_first_name"], "groupings": ["employee"], "file_type": "csv", "custom_name": "Q1 Payroll Export", "with_totals": false, "date_filter_type": "check_date", "start_date": "2026-01-01", "end_date": "2026-03-31", "payment_method": "check", "employment_type": "exempt", "employment_status": "active_full_time"}, {"company_uuid": "12345678-abcd-ef12-3456-7890abcdef12", "report_type": "general_ledger", "payroll_uuid": "7b1d0df1-6403-4a06-8768-c1dd7d24d27a", "aggregation": "default"}]} + responses: + "201": + application/json: {"uuid": "57c90f01-b7ef-4831-bb62-f80c2ce1a69d", "status": "failed"} + "422": + application/json: {"errors": [{"error_key": "", "category": ""}]} + get-v1-bulk_reports-request_uuid: + speakeasy-default-get-v1-bulk-reports-request-uuid: + parameters: + path: + request_uuid: "" + header: + X-Gusto-API-Version: "2026-06-15" + responses: + "200": + application/json: {"uuid": "9ec387cc-e6b9-432e-9d7f-d588522b1b8b", "status": "pending", "submitted_at": "2026-03-16T03:33:23.733Z", "completed_at": null, "submitted_items": 5304} + "404": + application/json: {"errors": []} + get-v1-contractors-contractor_uuid-payments: + speakeasy-default-get-v1-contractors-contractor-uuid-payments: + parameters: + path: + contractor_uuid: "" + query: + sort_by: "check_date:desc" + header: + X-Gusto-API-Version: "2026-06-15" + responses: + "200": + application/json: [{"uuid": "4c253703-bc3f-484d-b971-5348e5a9a5d9"}] + "404": + application/json: {"errors": [{"error_key": "", "category": ""}]} + "422": + application/json: {"errors": [{"error_key": "", "category": ""}]} + post-v1-employees-employee_id-member_portal_invitations: + speakeasy-default-post-v1-employees-employee-id-member-portal-invitations: + parameters: + path: + employee_id: "" + header: + X-Gusto-API-Version: "2026-06-15" + responses: + "404": + application/json: {"errors": [{"error_key": "", "category": ""}]} + "422": + application/json: {"errors": [{"error_key": "", "category": ""}]} + get-v1-employees-employee_id-member_portal_invitations: + speakeasy-default-get-v1-employees-employee-id-member-portal-invitations: + parameters: + path: + employee_id: "" + header: + X-Gusto-API-Version: "2026-06-15" + responses: + "200": + application/json: {"status": "sent", "expired": false} + "404": + application/json: {"errors": [{"error_key": "", "category": ""}]} + delete-v1-employees-employee_id-member_portal_invitations: + speakeasy-default-delete-v1-employees-employee-id-member-portal-invitations: + parameters: + path: + employee_id: "" + header: + X-Gusto-API-Version: "2026-06-15" + responses: + "404": + application/json: {"errors": [{"error_key": "", "category": ""}]} + "422": + application/json: {"errors": []} + post-v1-contractors-contractor_uuid-member_portal_invitations: + speakeasy-default-post-v1-contractors-contractor-uuid-member-portal-invitations: + parameters: + path: + contractor_uuid: "" + header: + X-Gusto-API-Version: "2026-06-15" + responses: + "404": + application/json: {"errors": [{"error_key": "", "category": ""}]} + "422": + application/json: {"errors": []} + get-v1-contractors-contractor_uuid-member_portal_invitations: + speakeasy-default-get-v1-contractors-contractor-uuid-member-portal-invitations: + parameters: + path: + contractor_uuid: "" + header: + X-Gusto-API-Version: "2026-06-15" + responses: + "200": + application/json: {"status": "sent", "expired": false} + "404": + application/json: {"errors": []} + delete-v1-contractors-contractor_uuid-member_portal_invitations: + speakeasy-default-delete-v1-contractors-contractor-uuid-member-portal-invitations: + parameters: + path: + contractor_uuid: "" + header: + X-Gusto-API-Version: "2026-06-15" + responses: + "404": + application/json: {"errors": [{"error_key": "", "category": ""}]} + "422": + application/json: {"errors": []} + post-v1-payroll_batches: + speakeasy-default-post-v1-payroll-batches: + parameters: + header: + X-Gusto-API-Version: "2026-06-15" + requestBody: + application/json: {"idempotency_key": "80a74f8b-2c16-45e5-9038-aa108849c6e6", "batch_action": "cancel", "batch": [{"entity_type": "payroll", "uuid": "f5ac6d4e-8400-4a52-a5cf-dea57b2ee65a", "company_uuid": "7cd3f4a2-0bf9-485a-bbc0-f6adbdf0246b"}]} + responses: + "201": + application/json: {"uuid": "dbcadf09-f75f-48ee-b03c-1d7207e4ca21", "idempotency_key": "139ceb06-56d5-4d74-a1a2-d4b976a9e00f", "batch_action": "cancel", "status": "completed"} + "409": + application/json: {} + "422": + application/json: {"errors": [{"error_key": "", "category": ""}]} + get-v1-payroll_batches-payroll_batch_uuid: + speakeasy-default-get-v1-payroll-batches-payroll-batch-uuid: + parameters: + path: + payroll_batch_uuid: "" + header: + X-Gusto-API-Version: "2026-06-15" + responses: + "200": + application/json: {"uuid": "03a66cd2-126d-4e8f-a60f-122098226ea5", "idempotency_key": "beeda2f5-1ab7-4d71-bd9a-1cb9b8247468", "status": "failed", "submitted_at": "2026-05-02T17:33:16.380Z"} + "404": + application/json: {"errors": [{"error_key": "", "category": ""}]} + get-reverse-wire-transactions: + speakeasy-default-get-reverse-wire-transactions: + parameters: + path: + company_uuid: "" + header: + X-Gusto-API-Version: "2026-06-15" + responses: + "200": + application/json: [{"company_uuid": "", "amount": "", "status": "rejected", "payment_direction": "debit", "created_at": "1714750477797"}] + "404": + application/json: {"errors": [{"error_key": "", "category": ""}]} + get-tax-payments: + speakeasy-default-get-tax-payments: + parameters: + path: + company_uuid: "" + query: + sort_by: "amount:asc" + header: + X-Gusto-API-Version: "2026-06-15" + responses: + "200": + application/json: [{"uuid": "96b40a3b-720f-4338-94a2-75a39708a720", "company_uuid": "", "agency_name": "", "jurisdiction": "", "period_start": "2026-05-16", "period_end": "2024-07-16", "due_date": "2024-03-30", "amount": "", "amount_paid": ""}] + "404": + application/json: {"errors": []} + "422": + application/json: {"errors": [{"error_key": "", "category": ""}]} + get-tax-payment: + speakeasy-default-get-tax-payment: + parameters: + path: + company_uuid: "" + uuid: "7cdc7492-54c4-4684-9729-2c5da517245b" + header: + X-Gusto-API-Version: "2026-06-15" + responses: + "200": + application/json: {"uuid": "c8e53592-2f95-4477-8ecb-e5efae6f56b9", "company_uuid": "", "agency_name": "", "jurisdiction": "", "period_start": "2024-03-28", "period_end": "2024-07-11", "due_date": "2026-09-10", "amount": "", "amount_paid": ""} + "404": + application/json: {"errors": [{"error_key": "", "category": ""}]} examplesVersion: 1.0.2 generatedTests: {} +releaseNotes: "## Java SDK Changes:\n* `gustoembedded.payrolls.get()`: `response.employeeCompensations[]` **Changed** (Breaking ⚠️)\n* `gustoembedded.webhooks.verify()`: `response.subscriptionTypes[].enum(timeOffRequest)` **Added** (Breaking ⚠️)\n* `gustoembedded.webhooks.updateSubscription()`: \n * `requestBody.subscriptionTypes[].enum(timeOffRequest)` **Added**\n * `response.subscriptionTypes[].enum(timeOffRequest)` **Added** (Breaking ⚠️)\n* `gustoembedded.webhooks.getSubscription()`: `response.subscriptionTypes[].enum(timeOffRequest)` **Added** (Breaking ⚠️)\n* `gustoembedded.webhooks.createSubscription()`: \n * `requestBody.subscriptionTypes[].enum(timeOffRequest)` **Added**\n * `response.subscriptionTypes[].enum(timeOffRequest)` **Added** (Breaking ⚠️)\n* `gustoembedded.webhooks.listSubscriptions()`: `response.[].subscriptionTypes[].enum(timeOffRequest)` **Added** (Breaking ⚠️)\n* `gustoembedded.payrolls.createOffCycle()`: \n * `requestBody.employeeUuids` **Changed** (Breaking ⚠️)\n * `response.employeeCompensations[].customWithholdings` **Added**\n* `gustoembedded.contractors.postV1ContractorsContractorUuidRehire()`: `error.status[422]` **Added**\n* `gustoembedded.contractors.get()`: `response.workEmail` **Added**\n* `gustoembedded.contractorPayments.preview()`: **Added**\n* `gustoembedded.contractorPayments.getReceipt()`: **Added**\n* `gustoembedded.contractorPayments.fund()`: **Added**\n* `gustoembedded.memberPortalInvitations.postV1EmployeesEmployeeIdMemberPortalInvitations()`: **Added**\n* `gustoembedded.memberPortalInvitations.getV1EmployeesEmployeeIdMemberPortalInvitations()`: **Added**\n* `gustoembedded.memberPortalInvitations.deleteV1EmployeesEmployeeIdMemberPortalInvitations()`: **Added**\n* `gustoembedded.memberPortalInvitations.postV1ContractorsContractorUuidMemberPortalInvitations()`: **Added**\n* `gustoembedded.contractors.update()`: \n * `request.contractorUpdateRequestBody.workEmail` **Added**\n * `response.workEmail` **Added**\n* `gustoembedded.memberPortalInvitations.deleteV1ContractorsContractorUuidMemberPortalInvitations()`: **Added**\n* `gustoembedded.payrollCancellations.postV1PayrollBatches()`: **Added**\n* `gustoembedded.payrollCancellations.getV1PayrollBatchesPayrollBatchUuid()`: **Added**\n* `gustoembedded.reverseWireTransactions.getReverseWireTransactions()`: **Added**\n* `gustoembedded.taxPayments.getTaxPayments()`: **Added**\n* `gustoembedded.taxPayments.getTaxPayment()`: **Added**\n* `gustoembedded.contractorPayments.list()`: **Removed** (Breaking ⚠️)\n* `gustoembedded.contractorPayments.create()`: **Removed** (Breaking ⚠️)\n* `gustoembedded.contractorPayments.get()`: **Removed** (Breaking ⚠️)\n* `gustoembedded.contractorPayments.delete()`: **Removed** (Breaking ⚠️)\n* `gustoembedded.contractorPayments.preview()`: **Removed** (Breaking ⚠️)\n* `gustoembedded.contractorPayments.getReceipt()`: **Removed** (Breaking ⚠️)\n* `gustoembedded.contractorPayments.fund()`: **Removed** (Breaking ⚠️)\n* `gustoembedded.contractorPayments.getV1ContractorPaymentsContractorPaymentIdPdf()`: **Removed** (Breaking ⚠️)\n* `gustoembedded.companies.suspensions.suspend()`: \n * `requestBody.leavingFor` **Changed**\n* `gustoembedded.taxRequirements.get()`: `response.requirementSets[].requirements[]` **Changed**\n* `gustoembedded.federalTaxDetails.update()`: `error.status[403]` **Added**\n* `gustoembedded.jobsAndCompensations.getJob()`: `response.location.warnings` **Added**\n* `gustoembedded.jobsAndCompensations.update()`: `response.location.warnings` **Added**\n* `gustoembedded.jobsAndCompensations.getJobs()`: `response.[].location.warnings` **Added**\n* `gustoembedded.jobsAndCompensations.createJob()`: `response.location.warnings` **Added**\n* `gustoembedded.contractors.getAddress()`: `response.warnings` **Added**\n* `gustoembedded.contractors.updateAddress()`: `response.warnings` **Added**\n* `gustoembedded.companies.putV1PartnerManagedCompaniesCompanyUuidDisassociate()`: **Added**\n* `gustoembedded.contractors.deleteV1ContractorsContractorUuidRehire()`: `error.status[422]` **Added**\n* `gustoembedded.contractors.postV1ContractorsContractorUuidTermination()`: `error.status[422]` **Added**\n* `gustoembedded.contractorPayments.delete()`: **Added**\n* `gustoembedded.contractors.deleteV1ContractorsContractorUuidTermination()`: `error.status[422]` **Added**\n* `gustoembedded.memberPortalInvitations.getV1ContractorsContractorUuidMemberPortalInvitations()`: **Added**\n* `gustoembedded.contractors.list()`: `response.[].workEmail` **Added**\n* `gustoembedded.contractors.create()`: \n * `request.contractorCreateRequestBody.workEmail` **Added**\n * `response.workEmail` **Added**\n* `gustoembedded.contractorPaymentGroups.patchV1ContractorPaymentGroupsIdPartnerDisbursements()`: \n * `requestBody.disbursements[].paymentMethod` **Changed**\n* `gustoembedded.employees.get()`: `response.jobs[].location.warnings` **Added**\n* `gustoembedded.employees.update()`: `response.jobs[].location.warnings` **Added**\n* `gustoembedded.employees.list()`: `response.[].jobs[].location.warnings` **Added**\n* `gustoembedded.employees.create()`: `response.jobs[].location.warnings` **Added**\n* `gustoembedded.employees.getOnboardingStatus()`: `response.blockers` **Added**\n* `gustoembedded.employees.updateOnboardingStatus()`: `response.blockers` **Added**\n* `gustoembedded.employees.createHistorical()`: `response.jobs[].location.warnings` **Added**\n* `gustoembedded.reports.createCustom()`: `request.createReportBody` **Changed**\n* `gustoembedded.payrolls.getApprovedReversals()`: `request.xGustoApiVersion` **Changed**\n* `gustoembedded.contractorPayments.get()`: **Added**\n* `gustoembedded.payrolls.update()`: \n * `request.payrollUpdate.employeeCompensations[].customWithholdings` **Added**\n * `response.employeeCompensations[].customWithholdings` **Added**\n* `gustoembedded.contractorPayments.create()`: **Added**\n* `gustoembedded.payrolls.getReceipt()`: `request` **Changed**\n* `gustoembedded.payrolls.prepare()`: `response.employeeCompensations[].customWithholdings` **Added**\n* `gustoembedded.payrolls.skip()`: `error.status[409]` **Added**\n* `gustoembedded.generatedDocuments.get()`: `request.xGustoApiVersion` **Changed**\n* `gustoembedded.historicalEmployees.update()`: `response.jobs[].location.warnings` **Added**\n* `gustoembedded.employeeAddresses.get()`: `response.[].warnings` **Added**\n* `gustoembedded.employeeAddresses.create()`: `response.warnings` **Added**\n* `gustoembedded.employeeAddresses.retrieveHomeAddress()`: `response.warnings` **Added**\n* `gustoembedded.employeeAddresses.update()`: `response.warnings` **Added**\n* `gustoembedded.locations.retrieve()`: `response.warnings` **Added**\n* `gustoembedded.locations.update()`: `response.warnings` **Added**\n* `gustoembedded.locations.get()`: `response.[].warnings` **Added**\n* `gustoembedded.locations.create()`: `response.warnings` **Added**\n* `gustoembedded.paySchedules.getPreview()`: \n * `request.payScheduleUuid` **Added**\n* `gustoembedded.contractorPayments.list()`: **Added**\n* `gustoembedded.contractorPayments.getV1ContractorPaymentsContractorPaymentIdPdf()`: **Added**\n* `gustoembedded.contractorPayments.getV1ContractorsContractorUuidPayments()`: **Added**\n* `gustoembedded.reports.getV1BulkReportsRequestUuid()`: **Added**\n* `gustoembedded.reports.postV1BulkReports()`: **Added**\n" diff --git a/gusto_embedded_v_2026_06_15/.speakeasy/gen.yaml b/gusto_embedded_v_2026_06_15/.speakeasy/gen.yaml index 635f8f40c..0384961a8 100644 --- a/gusto_embedded_v_2026_06_15/.speakeasy/gen.yaml +++ b/gusto_embedded_v_2026_06_15/.speakeasy/gen.yaml @@ -31,7 +31,7 @@ generation: generateNewTests: false skipResponseBodyAssertions: false java: - version: 0.0.1 + version: 0.1.0 additionalDependencies: [] additionalPlugins: [] artifactID: embedded-api-v-2026-06-15 @@ -49,12 +49,14 @@ java: explicitDocImports: false flattenGlobalSecurity: true forwardCompatibleEnumsByDefault: false - forwardCompatibleUnionsByDefault: "false" + forwardCompatibleUnionsByDefault: true generateOptionalUnionAccessors: false generateSpringBootStarter: true generateUnionDocs: false + getterStyle: presence-aware githubURL: github.com/Gusto/gusto-java-client groupID: com.gusto + httpClient: jdk imports: option: openapi paths: diff --git a/gusto_embedded_v_2026_06_15/README.md b/gusto_embedded_v_2026_06_15/README.md index 3eb1c1202..7e380be5c 100644 --- a/gusto_embedded_v_2026_06_15/README.md +++ b/gusto_embedded_v_2026_06_15/README.md @@ -47,7 +47,7 @@ The samples below show how a published SDK artifact is used: Gradle: ```groovy -implementation 'com.gusto:embedded-api-v-2026-06-15:0.0.1' +implementation 'com.gusto:embedded-api-v-2026-06-15:0.1.0' ``` Maven: @@ -55,7 +55,7 @@ Maven: com.gusto embedded-api-v-2026-06-15 - 0.0.1 + 0.1.0 ``` @@ -276,37 +276,28 @@ Some operations in this SDK require the security scheme to be specified at the r package hello.world; import com.gusto.embedded_api_v_2026_06_15.GustoEmbedded; -import com.gusto.embedded_api_v_2026_06_15.models.components.*; +import com.gusto.embedded_api_v_2026_06_15.models.errors.NotFoundErrorObject; import com.gusto.embedded_api_v_2026_06_15.models.errors.UnprocessableEntityError; import com.gusto.embedded_api_v_2026_06_15.models.operations.*; import java.lang.Exception; public class Application { - public static void main(String[] args) throws UnprocessableEntityError, Exception { + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .build(); - PostV1PartnerManagedCompaniesResponse res = sdk.companies().createPartnerManaged() - .security(PostV1PartnerManagedCompaniesSecurity.builder() + PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse res = sdk.companies().putV1PartnerManagedCompaniesCompanyUuidDisassociate() + .security(PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity.builder() .systemAccessAuth(System.getenv().getOrDefault("SYSTEM_ACCESS_AUTH", "")) .build()) - .xGustoAPIVersion(PostV1PartnerManagedCompaniesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) - .partnerManagedCompanyCreateRequest(PartnerManagedCompanyCreateRequest.builder() - .user(User.builder() - .firstName("Marco") - .lastName("Trantow") - .email("Jewell_Greenholt72@hotmail.com") - .build()) - .company(PartnerManagedCompanyCreateRequestCompany.builder() - .name("") - .build()) - .build()) + .xGustoAPIVersion(PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .companyUuid("") .call(); - if (res.partnerManagedCompany().isPresent()) { - System.out.println(res.partnerManagedCompany().get()); + if (res.partnerManagedCompanyDisassociateResponse().isPresent()) { + System.out.println(res.partnerManagedCompanyDisassociateResponse().get()); } } } @@ -340,6 +331,7 @@ public class Application { * [getCustomFields](docs/sdks/companies/README.md#getcustomfields) - Get the custom fields of a company * [getOnboardingStatus](docs/sdks/companies/README.md#getonboardingstatus) - Get company onboarding status * [finishOnboarding](docs/sdks/companies/README.md#finishonboarding) - Finish company onboarding +* [putV1PartnerManagedCompaniesCompanyUuidDisassociate](docs/sdks/companies/README.md#putv1partnermanagedcompaniescompanyuuiddisassociate) - Disassociate a partner managed company * [migrate](docs/sdks/companies/README.md#migrate) - Migrate company to embedded payroll * [createPartnerManaged](docs/sdks/companies/README.md#createpartnermanaged) - Create a partner managed company * [getV1PartnerManagedCompaniesCompanyUuidMigrationReadiness](docs/sdks/companies/README.md#getv1partnermanagedcompaniescompanyuuidmigrationreadiness) - Check company migration readiness @@ -387,6 +379,18 @@ public class Application { * [getPdf](docs/sdks/companyforms/README.md#getpdf) - Get a company form pdf * [sign](docs/sdks/companyforms/README.md#sign) - Sign a company form +### [ContractorPayments](docs/sdks/contractorpayments/README.md) + +* [getV1ContractorsContractorUuidPayments](docs/sdks/contractorpayments/README.md#getv1contractorscontractoruuidpayments) - Get contractor payments +* [getV1ContractorPaymentsContractorPaymentIdPdf](docs/sdks/contractorpayments/README.md#getv1contractorpaymentscontractorpaymentidpdf) - Get a contractor payment PDF +* [list](docs/sdks/contractorpayments/README.md#list) - Get contractor payments for a company +* [create](docs/sdks/contractorpayments/README.md#create) - Create a contractor payment +* [get](docs/sdks/contractorpayments/README.md#get) - Get a single contractor payment +* [delete](docs/sdks/contractorpayments/README.md#delete) - Cancel a contractor payment +* [preview](docs/sdks/contractorpayments/README.md#preview) - Preview contractor payment debit date +* [getReceipt](docs/sdks/contractorpayments/README.md#getreceipt) - Get a single contractor payment receipt +* [fund](docs/sdks/contractorpayments/README.md#fund) - Fund a contractor payment [DEMO] + ### [ContractorDocuments](docs/sdks/contractordocuments/README.md) * [getAll](docs/sdks/contractordocuments/README.md#getall) - Get all contractor documents @@ -422,17 +426,6 @@ public class Application { * [createBankAccount](docs/sdks/contractorpaymentmethods/README.md#createbankaccount) - Create a contractor bank account -### [ContractorPayments](docs/sdks/contractorpayments/README.md) - -* [list](docs/sdks/contractorpayments/README.md#list) - Get contractor payments for a company -* [create](docs/sdks/contractorpayments/README.md#create) - Create a contractor payment -* [get](docs/sdks/contractorpayments/README.md#get) - Get a single contractor payment -* [delete](docs/sdks/contractorpayments/README.md#delete) - Cancel a contractor payment -* [preview](docs/sdks/contractorpayments/README.md#preview) - Preview contractor payment debit date -* [getReceipt](docs/sdks/contractorpayments/README.md#getreceipt) - Get a single contractor payment receipt -* [fund](docs/sdks/contractorpayments/README.md#fund) - Fund a contractor payment [DEMO] -* [getV1ContractorPaymentsContractorPaymentIdPdf](docs/sdks/contractorpayments/README.md#getv1contractorpaymentscontractorpaymentidpdf) - Get a contractor payment PDF - ### [Contractors](docs/sdks/contractors/README.md) * [getAddress](docs/sdks/contractors/README.md#getaddress) - Get a contractor address @@ -650,6 +643,15 @@ public class Application { * [get](docs/sdks/locations/README.md#get) - Get all company locations * [create](docs/sdks/locations/README.md#create) - Create a company location +### [MemberPortalInvitations](docs/sdks/memberportalinvitations/README.md) + +* [postV1EmployeesEmployeeIdMemberPortalInvitations](docs/sdks/memberportalinvitations/README.md#postv1employeesemployeeidmemberportalinvitations) - Create an employee member portal invitation +* [getV1EmployeesEmployeeIdMemberPortalInvitations](docs/sdks/memberportalinvitations/README.md#getv1employeesemployeeidmemberportalinvitations) - Get an employee member portal invitation +* [deleteV1EmployeesEmployeeIdMemberPortalInvitations](docs/sdks/memberportalinvitations/README.md#deletev1employeesemployeeidmemberportalinvitations) - Cancel an employee member portal invitation +* [postV1ContractorsContractorUuidMemberPortalInvitations](docs/sdks/memberportalinvitations/README.md#postv1contractorscontractoruuidmemberportalinvitations) - Create a contractor member portal invitation +* [getV1ContractorsContractorUuidMemberPortalInvitations](docs/sdks/memberportalinvitations/README.md#getv1contractorscontractoruuidmemberportalinvitations) - Get a contractor member portal invitation +* [deleteV1ContractorsContractorUuidMemberPortalInvitations](docs/sdks/memberportalinvitations/README.md#deletev1contractorscontractoruuidmemberportalinvitations) - Cancel a contractor member portal invitation + ### [Notifications](docs/sdks/notifications/README.md) * [getCompanyNotifications](docs/sdks/notifications/README.md#getcompanynotifications) - Get notifications for company @@ -660,6 +662,11 @@ public class Application { * [get](docs/sdks/paymentconfigs/README.md#get) - Get a company's payment configs * [update](docs/sdks/paymentconfigs/README.md#update) - Update a company's payment configs +### [PayrollCancellations](docs/sdks/payrollcancellations/README.md) + +* [postV1PayrollBatches](docs/sdks/payrollcancellations/README.md#postv1payrollbatches) - Create a payroll cancellation batch +* [getV1PayrollBatchesPayrollBatchUuid](docs/sdks/payrollcancellations/README.md#getv1payrollbatchespayrollbatchuuid) - Get a payroll cancellation batch + ### [PayrollDigests](docs/sdks/payrolldigests/README.md) * [postV1PayrollDigests](docs/sdks/payrolldigests/README.md#postv1payrolldigests) - Create a payroll digest batch @@ -720,12 +727,18 @@ public class Application { ### [Reports](docs/sdks/reports/README.md) +* [postV1BulkReports](docs/sdks/reports/README.md#postv1bulkreports) - Create a bulk report batch +* [getV1BulkReportsRequestUuid](docs/sdks/reports/README.md#getv1bulkreportsrequestuuid) - Get a bulk report batch * [postV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage](docs/sdks/reports/README.md#postv1companiescompanyidreportsemployeesannualficawage) - Create an employees annual FICA wage report * [createCustom](docs/sdks/reports/README.md#createcustom) - Create a custom report * [postPayrollsPayrollUuidReportsGeneralLedger](docs/sdks/reports/README.md#postpayrollspayrolluuidreportsgeneralledger) - Create a general ledger report * [getReportsRequestUuid](docs/sdks/reports/README.md#getreportsrequestuuid) - Get a report * [getTemplate](docs/sdks/reports/README.md#gettemplate) - Get a report template +### [ReverseWireTransactions](docs/sdks/reversewiretransactions/README.md) + +* [getReverseWireTransactions](docs/sdks/reversewiretransactions/README.md#getreversewiretransactions) - Get all reverse wire transactions for a company + ### [SalaryEstimates](docs/sdks/salaryestimates/README.md) * [postV1EmployeesEmployeeIdSalaryEstimates](docs/sdks/salaryestimates/README.md#postv1employeesemployeeidsalaryestimates) - Create a salary estimate for an employee @@ -742,6 +755,11 @@ public class Application { * [update](docs/sdks/signatories/README.md#update) - Update a signatory * [delete](docs/sdks/signatories/README.md#delete) - Delete a signatory +### [TaxPayments](docs/sdks/taxpayments/README.md) + +* [getTaxPayments](docs/sdks/taxpayments/README.md#gettaxpayments) - Get all tax payments for a company +* [getTaxPayment](docs/sdks/taxpayments/README.md#gettaxpayment) - Get a tax payment for a company + ### [TaxRequirements](docs/sdks/taxrequirements/README.md) * [getAll](docs/sdks/taxrequirements/README.md#getall) - Get all tax requirements for a company @@ -882,7 +900,7 @@ public class Application { * [`GustoEmbeddedException`](./src/main/java/models/errors/GustoEmbeddedException.java): The base class for HTTP error responses. * [`com.gusto.embedded_api_v_2026_06_15.models.errors.NotFoundErrorObject`](./src/main/java/models/errors/com.gusto.embedded_api_v_2026_06_15.models.errors.NotFoundErrorObject.java): Not Found The requested resource does not exist. Make sure the provided ID/UUID is valid. * -

    Less common errors (11) +
    Less common errors (13)
    @@ -892,11 +910,13 @@ public class Application { many more subclasses in the JDK platform). **Inherit from [`GustoEmbeddedException`](./src/main/java/models/errors/GustoEmbeddedException.java)**: -* [`com.gusto.embedded_api_v_2026_06_15.models.errors.UnprocessableEntityError`](./src/main/java/models/errors/com.gusto.embedded_api_v_2026_06_15.models.errors.UnprocessableEntityError.java): Unprocessable Entity This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. Applicable to 159 of 302 methods.* -* [`com.gusto.embedded_api_v_2026_06_15.models.errors.ConflictErrorObject`](./src/main/java/models/errors/com.gusto.embedded_api_v_2026_06_15.models.errors.ConflictErrorObject.java): Conflict This error occurs when the resource version provided does not match the current version. Retrieve the latest version and retry. Status code `409`. Applicable to 2 of 302 methods.* -* [`com.gusto.embedded_api_v_2026_06_15.models.errors.PeopleBatchConflictError`](./src/main/java/models/errors/com.gusto.embedded_api_v_2026_06_15.models.errors.PeopleBatchConflictError.java): Error response when a people batch idempotency key conflict occurs. Status code `409`. Applicable to 1 of 302 methods.* -* [`com.gusto.embedded_api_v_2026_06_15.models.errors.PayrollDigestConflictError`](./src/main/java/models/errors/com.gusto.embedded_api_v_2026_06_15.models.errors.PayrollDigestConflictError.java): Error response when a payroll digest idempotency key has already been used by the same partner. Status code `409`. Applicable to 1 of 302 methods.* -* [`com.gusto.embedded_api_v_2026_06_15.models.errors.PayrollBlockersError`](./src/main/java/models/errors/com.gusto.embedded_api_v_2026_06_15.models.errors.PayrollBlockersError.java): Payroll Blockers Error For detailed information, see the [Payroll Blockers guide](https://docs.gusto.com/embedded-payroll/docs/payroll-blockers). Status code `422`. Applicable to 1 of 302 methods.* +* [`com.gusto.embedded_api_v_2026_06_15.models.errors.UnprocessableEntityError`](./src/main/java/models/errors/com.gusto.embedded_api_v_2026_06_15.models.errors.UnprocessableEntityError.java): Unprocessable Entity This may happen when the body of your request contains errors such as `invalid_attribute_value`, or the request fails due to an `invalid_operation`. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. Applicable to 172 of 317 methods.* +* [`com.gusto.embedded_api_v_2026_06_15.models.errors.ConflictErrorObject`](./src/main/java/models/errors/com.gusto.embedded_api_v_2026_06_15.models.errors.ConflictErrorObject.java): Conflict This may happen when the resource version provided does not match the current version — retrieve the latest version and retry — or when the request conflicts with another in-progress operation on the same resource. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. Status code `409`. Applicable to 3 of 317 methods.* +* [`com.gusto.embedded_api_v_2026_06_15.models.errors.ForbiddenErrorObject`](./src/main/java/models/errors/com.gusto.embedded_api_v_2026_06_15.models.errors.ForbiddenErrorObject.java): Forbidden The targeted company has been archived because its EIN was reassigned to a replacement company. Use the replacement company referenced in the error metadata. Status code `403`. Applicable to 1 of 317 methods.* +* [`com.gusto.embedded_api_v_2026_06_15.models.errors.PayrollBatchConflictError`](./src/main/java/models/errors/com.gusto.embedded_api_v_2026_06_15.models.errors.PayrollBatchConflictError.java): Error response when a payroll cancellation idempotency key has already been used by the same partner. Status code `409`. Applicable to 1 of 317 methods.* +* [`com.gusto.embedded_api_v_2026_06_15.models.errors.PayrollDigestConflictError`](./src/main/java/models/errors/com.gusto.embedded_api_v_2026_06_15.models.errors.PayrollDigestConflictError.java): Error response when a payroll digest idempotency key has already been used by the same partner. Status code `409`. Applicable to 1 of 317 methods.* +* [`com.gusto.embedded_api_v_2026_06_15.models.errors.PeopleBatchConflictError`](./src/main/java/models/errors/com.gusto.embedded_api_v_2026_06_15.models.errors.PeopleBatchConflictError.java): Error response when a people batch idempotency key conflict occurs. Status code `409`. Applicable to 1 of 317 methods.* +* [`com.gusto.embedded_api_v_2026_06_15.models.errors.PayrollBlockersError`](./src/main/java/models/errors/com.gusto.embedded_api_v_2026_06_15.models.errors.PayrollBlockersError.java): Payroll Blockers Error For detailed information, see the [Payroll Blockers guide](https://docs.gusto.com/embedded-payroll/docs/payroll-blockers). Status code `422`. Applicable to 1 of 317 methods.*
    diff --git a/gusto_embedded_v_2026_06_15/build.gradle b/gusto_embedded_v_2026_06_15/build.gradle index 3015924fc..e8a60c5a1 100644 --- a/gusto_embedded_v_2026_06_15/build.gradle +++ b/gusto_embedded_v_2026_06_15/build.gradle @@ -14,7 +14,6 @@ plugins { id 'java-library' id 'maven-publish' id 'signing' - id "io.spring.dependency-management" version "1.1.6" apply false } compileJava.options.encoding = "UTF-8" @@ -72,56 +71,16 @@ javadocJar { } dependencies { - api 'com.fasterxml.jackson.core:jackson-annotations:2.18.2' - implementation 'com.fasterxml.jackson.core:jackson-databind:2.18.2' - implementation 'com.fasterxml.jackson.datatype:jackson-datatype-jsr310:2.18.2' - implementation 'com.fasterxml.jackson.datatype:jackson-datatype-jdk8:2.18.2' + api 'com.fasterxml.jackson.core:jackson-annotations:2.22' + implementation 'com.fasterxml.jackson.core:jackson-databind:2.22.1' + implementation 'com.fasterxml.jackson.datatype:jackson-datatype-jsr310:2.22.0' + implementation 'com.fasterxml.jackson.datatype:jackson-datatype-jdk8:2.22.0' api('org.openapitools:jackson-databind-nullable:0.2.6') {exclude group: 'com.fasterxml.jackson.core', module: 'jackson-databind'} implementation 'commons-io:commons-io:2.18.0' implementation 'jakarta.annotation:jakarta.annotation-api:3.0.0' api 'org.reactivestreams:reactive-streams:1.0.4' } -ext { - springBootVersion = '2.7.18' -} - -subprojects { - if (name in [ - 'GustoEmbedded-spring-boot-autoconfigure', - 'GustoEmbedded-spring-boot-starter' - ]) { - // Ensure subprojects use the same group and version as root project - group = rootProject.group - version = rootProject.version - - apply { - plugin "java-library" - plugin "io.spring.dependency-management" - plugin "maven-publish" - plugin "signing" - } - dependencyManagement { - imports { - mavenBom "org.springframework.boot:spring-boot-dependencies:${rootProject.springBootVersion}" - } - } - repositories { - mavenCentral() - } - java { - withSourcesJar() - withJavadocJar() - } - tasks.withType(JavaCompile).configureEach { - options.release = 11 - } - - // Apply publishing configuration to all subprojects - they'll check for publishingConfig internally - apply from: rootProject.file('publishing.gradle') - } -} - ext { publishingConfig = [ groupId: group, diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/Aggregation.md b/gusto_embedded_v_2026_06_15/docs/models/components/Aggregation.md index 8f566a744..9488a002a 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/components/Aggregation.md +++ b/gusto_embedded_v_2026_06_15/docs/models/components/Aggregation.md @@ -1,6 +1,6 @@ # Aggregation -The breakdown of the report. Use 'default' for no split. +The breakdown of the report. Use `default` for no split. ## Example Usage diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/BatchAction.md b/gusto_embedded_v_2026_06_15/docs/models/components/BatchAction.md index 3c8d54d77..5d459a3ec 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/components/BatchAction.md +++ b/gusto_embedded_v_2026_06_15/docs/models/components/BatchAction.md @@ -7,7 +7,7 @@ The action being performed on the batch. ```java import com.gusto.embedded_api_v_2026_06_15.models.components.BatchAction; -BatchAction value = BatchAction.CREATE; +BatchAction value = BatchAction.CANCEL; ``` @@ -15,4 +15,4 @@ BatchAction value = BatchAction.CREATE; | Name | Value | | -------- | -------- | -| `CREATE` | create | \ No newline at end of file +| `CANCEL` | cancel | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/Blockers.md b/gusto_embedded_v_2026_06_15/docs/models/components/Blockers.md index a9c5d26fd..3f3950886 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/components/Blockers.md +++ b/gusto_embedded_v_2026_06_15/docs/models/components/Blockers.md @@ -3,7 +3,8 @@ ## Fields -| Field | Type | Required | Description | -| ------------------------------------------------------------- | ------------------------------------------------------------- | ------------------------------------------------------------- | ------------------------------------------------------------- | -| `type` | *Optional\* | :heavy_minus_sign: | A machine-readable blocker key (e.g. `missing_bank_account`). | -| `description` | *Optional\* | :heavy_minus_sign: | Human-readable description of the blocker. | \ No newline at end of file +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | +| `field` | [Optional\](../../models/components/Field.md) | :heavy_minus_sign: | The employee field affected. | +| `category` | [Optional\](../../models/components/EmployeeOnboardingStatusCategory.md) | :heavy_minus_sign: | Category of the blocker. See the array-level description for resolution guidance. | +| `message` | *Optional\* | :heavy_minus_sign: | Human-readable description of the blocker. | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/BulkReport.md b/gusto_embedded_v_2026_06_15/docs/models/components/BulkReport.md new file mode 100644 index 000000000..f74c41ef5 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/BulkReport.md @@ -0,0 +1,16 @@ +# BulkReport + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| `uuid` | *String* | :heavy_check_mark: | Unique identifier of the bulk report batch. | +| `status` | [BulkReportStatus](../../models/components/BulkReportStatus.md) | :heavy_check_mark: | Overall batch status. `pending`/`processing` while in progress; once finished, `success` (all reports succeeded), `partial_success` (some succeeded, some failed), or `failed` (none succeeded). | +| `submittedAt` | [OffsetDateTime](https://docs.oracle.com/javase/8/docs/api/java/time/OffsetDateTime.html) | :heavy_check_mark: | When the batch was accepted. | +| `completedAt` | [OffsetDateTime](https://docs.oracle.com/javase/8/docs/api/java/time/OffsetDateTime.html) | :heavy_check_mark: | When the batch reached a terminal state. Null while non-terminal. | +| `submittedItems` | *long* | :heavy_check_mark: | How many reports the partner asked for in this batch. | +| `partnerUuid` | *Optional\* | :heavy_minus_sign: | UUID of the partner that owns this batch. Returned only once the batch has finished; omitted while in progress. | +| `processedItems` | *Optional\* | :heavy_minus_sign: | How many reports succeeded. Returned only once the batch has finished; omitted while in progress. | +| `reportUrl` | *JsonNullable\* | :heavy_minus_sign: | Signed S3 URL to a zip containing every successfully-generated report, valid for 10 minutes. Returned only once the batch has finished; omitted while in progress. | +| `companies` | List\<[BulkReportCompany](../../models/components/BulkReportCompany.md)> | :heavy_minus_sign: | Per-company breakdown. Returned only once the batch has finished; omitted while in progress. | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/BulkReportBody.md b/gusto_embedded_v_2026_06_15/docs/models/components/BulkReportBody.md new file mode 100644 index 000000000..a492fe670 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/BulkReportBody.md @@ -0,0 +1,10 @@ +# BulkReportBody + +Each `batch` item is a `custom_report` or a `general_ledger` report. + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | +| `batch` | List\<[BulkReportItem](../../models/components/BulkReportItem.md)> | :heavy_check_mark: | One report per item. Up to 25 items per batch, across any combination of companies the partner is mapped to. | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/BulkReportCompany.md b/gusto_embedded_v_2026_06_15/docs/models/components/BulkReportCompany.md new file mode 100644 index 000000000..403c65490 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/BulkReportCompany.md @@ -0,0 +1,12 @@ +# BulkReportCompany + +Results for a single company in a bulk report batch. + + +## Fields + +| Field | Type | Required | Description | +| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `companyUuid` | *String* | :heavy_check_mark: | UUID of the company. | +| `status` | [BulkReportCompanyStatus](../../models/components/BulkReportCompanyStatus.md) | :heavy_check_mark: | This company's overall status across its `reports`:
    - `success`: every report succeeded
    - `partial_success`: some succeeded, some failed
    - `failed`: every report failed
    - `pending`: at least one report is still being generated
    | +| `reports` | List\<[BulkReportItemResult](../../models/components/BulkReportItemResult.md)> | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/BulkReportCompanyStatus.md b/gusto_embedded_v_2026_06_15/docs/models/components/BulkReportCompanyStatus.md new file mode 100644 index 000000000..5bc57cc2f --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/BulkReportCompanyStatus.md @@ -0,0 +1,26 @@ +# BulkReportCompanyStatus + +This company's overall status across its `reports`: +- `success`: every report succeeded +- `partial_success`: some succeeded, some failed +- `failed`: every report failed +- `pending`: at least one report is still being generated + + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.components.BulkReportCompanyStatus; + +BulkReportCompanyStatus value = BulkReportCompanyStatus.PENDING; +``` + + +## Values + +| Name | Value | +| ----------------- | ----------------- | +| `PENDING` | pending | +| `SUCCESS` | success | +| `PARTIAL_SUCCESS` | partial_success | +| `FAILED` | failed | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/BulkReportCustomReportItem.md b/gusto_embedded_v_2026_06_15/docs/models/components/BulkReportCustomReportItem.md new file mode 100644 index 000000000..60c0cbc47 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/BulkReportCustomReportItem.md @@ -0,0 +1,25 @@ +# BulkReportCustomReportItem + +A custom report entry in a bulk batch. + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | +| `companyUuid` | *String* | :heavy_check_mark: | UUID of the company to generate the report for. The partner must be mapped to this company. | 12345678-abcd-ef12-3456-7890abcdef12 | +| `reportType` | [ReportType](../../models/components/ReportType.md) | :heavy_check_mark: | Identifies this batch item as a custom report. | custom_report | +| `columns` | List\<[Columns](../../models/components/Columns.md)> | :heavy_check_mark: | Columns to include in the report. | | +| `groupings` | List\<[Groupings](../../models/components/Groupings.md)> | :heavy_minus_sign: | How to group the report. If omitted, defaults are derived from the requested `columns`. | | +| `fileType` | [FileType](../../models/components/FileType.md) | :heavy_check_mark: | The type of file to generate. | | +| `customName` | *Optional\* | :heavy_minus_sign: | Display name for the report. | | +| `withTotals` | *Optional\* | :heavy_minus_sign: | Whether to include subtotals and grand totals. | | +| `dateFilterType` | [Optional\](../../models/components/DateFilterType.md) | :heavy_minus_sign: | Which payroll date `start_date` and `end_date` filter against. | | +| `startDate` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_minus_sign: | Start date of data to filter by. | 2026-01-01 | +| `endDate` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_minus_sign: | End date of data to filter by. | 2026-03-31 | +| `paymentMethod` | [Optional\](../../models/components/PaymentMethod.md) | :heavy_minus_sign: | Payment method to filter by. | | +| `employmentType` | [Optional\](../../models/components/EmploymentType.md) | :heavy_minus_sign: | Employee employment type to filter by. | | +| `employmentStatus` | [Optional\](../../models/components/EmploymentStatus.md) | :heavy_minus_sign: | Employee employment status to filter by. | | +| `employeeUuids` | List\<*String*> | :heavy_minus_sign: | Employees to filter by. | | +| `departmentUuids` | List\<*String*> | :heavy_minus_sign: | Departments to filter by. | | +| `workAddressUuids` | List\<*String*> | :heavy_minus_sign: | Work addresses to filter by. | | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/BulkReportGeneralLedgerItem.md b/gusto_embedded_v_2026_06_15/docs/models/components/BulkReportGeneralLedgerItem.md new file mode 100644 index 000000000..c2b22186b --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/BulkReportGeneralLedgerItem.md @@ -0,0 +1,14 @@ +# BulkReportGeneralLedgerItem + +A general ledger report entry in a bulk batch. + + +## Fields + +| Field | Type | Required | Description | Example | +| --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------- | +| `companyUuid` | *String* | :heavy_check_mark: | UUID of the company to generate the report for. The partner must be mapped to this company. | 12345678-abcd-ef12-3456-7890abcdef12 | +| `reportType` | [BulkReportGeneralLedgerItemReportType](../../models/components/BulkReportGeneralLedgerItemReportType.md) | :heavy_check_mark: | Identifies this batch item as a general ledger report. | general_ledger | +| `payrollUuid` | *String* | :heavy_check_mark: | The UUID of the payroll to generate the general ledger for. | | +| `aggregation` | [Aggregation](../../models/components/Aggregation.md) | :heavy_check_mark: | The breakdown of the report. Use `default` for no split. | | +| `integrationType` | *JsonNullable\* | :heavy_minus_sign: | The kind of integration set up for the company. Required when `aggregation` is `integration`; must be null otherwise. | | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/BulkReportGeneralLedgerItemReportType.md b/gusto_embedded_v_2026_06_15/docs/models/components/BulkReportGeneralLedgerItemReportType.md new file mode 100644 index 000000000..89d7b82bc --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/BulkReportGeneralLedgerItemReportType.md @@ -0,0 +1,18 @@ +# BulkReportGeneralLedgerItemReportType + +Identifies this batch item as a general ledger report. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.components.BulkReportGeneralLedgerItemReportType; + +BulkReportGeneralLedgerItemReportType value = BulkReportGeneralLedgerItemReportType.GENERAL_LEDGER; +``` + + +## Values + +| Name | Value | +| ---------------- | ---------------- | +| `GENERAL_LEDGER` | general_ledger | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/BulkReportItem.md b/gusto_embedded_v_2026_06_15/docs/models/components/BulkReportItem.md new file mode 100644 index 000000000..822bc679d --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/BulkReportItem.md @@ -0,0 +1,4 @@ +# BulkReportItem + +A single report inside a bulk batch. Required fields depend on `report_type`: `custom_report` requires `columns` and `file_type`; `general_ledger` requires `payroll_uuid` and `aggregation`. + diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/BulkReportItemResult.md b/gusto_embedded_v_2026_06_15/docs/models/components/BulkReportItemResult.md new file mode 100644 index 000000000..035a9001d --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/BulkReportItemResult.md @@ -0,0 +1,13 @@ +# BulkReportItemResult + +A single report's outcome. + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | +| `reportType` | [BulkReportItemResultReportType](../../models/components/BulkReportItemResultReportType.md) | :heavy_check_mark: | Which report this entry refers to. | +| `fileType` | *String* | :heavy_check_mark: | The report's output file type. | +| `status` | [BulkReportItemResultStatus](../../models/components/BulkReportItemResultStatus.md) | :heavy_check_mark: | The terminal state for this individual report. | +| `error` | *Optional\* | :heavy_check_mark: | A user-facing error message when status is `failed`. Null on success. | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/BulkReportItemResultReportType.md b/gusto_embedded_v_2026_06_15/docs/models/components/BulkReportItemResultReportType.md new file mode 100644 index 000000000..cafdb2e61 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/BulkReportItemResultReportType.md @@ -0,0 +1,19 @@ +# BulkReportItemResultReportType + +Which report this entry refers to. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.components.BulkReportItemResultReportType; + +BulkReportItemResultReportType value = BulkReportItemResultReportType.CUSTOM_REPORT; +``` + + +## Values + +| Name | Value | +| ---------------- | ---------------- | +| `CUSTOM_REPORT` | custom_report | +| `GENERAL_LEDGER` | general_ledger | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/BulkReportItemResultStatus.md b/gusto_embedded_v_2026_06_15/docs/models/components/BulkReportItemResultStatus.md new file mode 100644 index 000000000..a06364e5b --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/BulkReportItemResultStatus.md @@ -0,0 +1,20 @@ +# BulkReportItemResultStatus + +The terminal state for this individual report. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.components.BulkReportItemResultStatus; + +BulkReportItemResultStatus value = BulkReportItemResultStatus.PENDING; +``` + + +## Values + +| Name | Value | +| --------- | --------- | +| `PENDING` | pending | +| `SUCCESS` | success | +| `FAILED` | failed | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/BulkReportStatus.md b/gusto_embedded_v_2026_06_15/docs/models/components/BulkReportStatus.md new file mode 100644 index 000000000..dd0891b2d --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/BulkReportStatus.md @@ -0,0 +1,22 @@ +# BulkReportStatus + +Overall batch status. `pending`/`processing` while in progress; once finished, `success` (all reports succeeded), `partial_success` (some succeeded, some failed), or `failed` (none succeeded). + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.components.BulkReportStatus; + +BulkReportStatus value = BulkReportStatus.PENDING; +``` + + +## Values + +| Name | Value | +| ----------------- | ----------------- | +| `PENDING` | pending | +| `PROCESSING` | processing | +| `SUCCESS` | success | +| `PARTIAL_SUCCESS` | partial_success | +| `FAILED` | failed | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/Columns.md b/gusto_embedded_v_2026_06_15/docs/models/components/Columns.md index 26154fbd5..e79caac01 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/components/Columns.md +++ b/gusto_embedded_v_2026_06_15/docs/models/components/Columns.md @@ -5,7 +5,7 @@ ```java import com.gusto.embedded_api_v_2026_06_15.models.components.Columns; -Columns value = Columns.BANK_ACCOUNT_ACCOUNT_NUMBER; +Columns value = Columns.ADDITIONAL_EARNINGS; ``` @@ -13,6 +13,7 @@ Columns value = Columns.BANK_ACCOUNT_ACCOUNT_NUMBER; | Name | Value | | -------------------------------------- | -------------------------------------- | +| `ADDITIONAL_EARNINGS` | additional_earnings | | `BANK_ACCOUNT_ACCOUNT_NUMBER` | bank_account_account_number | | `BANK_ACCOUNT_ROUTING_NUMBER` | bank_account_routing_number | | `BANK_ACCOUNT_TYPE` | bank_account_type | @@ -42,6 +43,7 @@ Columns value = Columns.BANK_ACCOUNT_ACCOUNT_NUMBER; | `EMPLOYEE_MEDICARE_TAX` | employee_medicare_tax | | `EMPLOYEE_PHONE_NUMBER` | employee_phone_number | | `EMPLOYEE_SOCIAL_SECURITY_TAX` | employee_social_security_tax | +| `EMPLOYEE_STATE_INCOME_TAX` | employee_state_income_tax | | `EMPLOYEE_TAXES` | employee_taxes | | `EMPLOYEE_UUID` | employee_uuid | | `EMPLOYEE_WORK_EMAIL` | employee_work_email | diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/Contractor.md b/gusto_embedded_v_2026_06_15/docs/models/components/Contractor.md index e56880867..78bd8a452 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/components/Contractor.md +++ b/gusto_embedded_v_2026_06_15/docs/models/components/Contractor.md @@ -5,36 +5,37 @@ The representation of a contractor (individual or business) in Gusto. ## Fields -| Field | Type | Required | Description | Example | -| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `uuid` | *String* | :heavy_check_mark: | The UUID of the contractor in Gusto. | | -| `companyUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the company the contractor is employed by. | | -| `wageType` | [Optional\](../../models/components/ContractorWageType.md) | :heavy_minus_sign: | The contractor's wage type, either "Fixed" or "Hourly". | | -| `isActive` | *Optional\* | :heavy_minus_sign: | The status of the contractor with the company. | | -| `version` | *Optional\* | :heavy_minus_sign: | The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. | | -| `type` | [Optional\](../../models/components/ContractorType.md) | :heavy_minus_sign: | The contractor's type, either "Individual" or "Business". | | -| `firstName` | *JsonNullable\* | :heavy_minus_sign: | The contractor’s first name. This attribute is required for “Individual” contractors and will be ignored for “Business” contractors. | | -| `lastName` | *JsonNullable\* | :heavy_minus_sign: | The contractor’s last name. This attribute is required for “Individual” contractors and will be ignored for “Business” contractors. | | -| `middleInitial` | *JsonNullable\* | :heavy_minus_sign: | The contractor’s middle initial. This attribute is optional for “Individual” contractors and will be ignored for “Business” contractors. | | -| `businessName` | *JsonNullable\* | :heavy_minus_sign: | The name of the contractor business. This attribute is required for “Business” contractors and will be ignored for “Individual” contractors. | | -| `ein` | *JsonNullable\* | :heavy_minus_sign: | The Federal Employer Identification Number of the contractor business. This attribute is optional for “Business” contractors and will be ignored for “Individual” contractors. | | -| `hasEin` | *JsonNullable\* | :heavy_minus_sign: | Whether company's Employer Identification Number (EIN) is present | | -| `email` | *JsonNullable\* | :heavy_minus_sign: | The contractor’s email address. This attribute is optional for “Individual” contractors and will be ignored for “Business” contractors. | | -| `startDate` | *Optional\* | :heavy_minus_sign: | The contractor's start date. | | -| `address` | [JsonNullable\
    ](../../models/components/Address.md) | :heavy_minus_sign: | The contractor’s home address. | | -| `hourlyRate` | *Optional\* | :heavy_minus_sign: | The contractor’s hourly rate. This attribute is required if the wage_type is “Hourly”. | 50.0 | -| `fileNewHireReport` | *JsonNullable\* | :heavy_minus_sign: | The boolean flag indicating whether Gusto will file a new hire report for the contractor | | -| `workState` | *JsonNullable\* | :heavy_minus_sign: | 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. | | -| `onboarded` | *Optional\* | :heavy_minus_sign: | The updated onboarding status for the contractor | | -| `onboardingStatus` | [Optional\](../../models/components/OnboardingStatus.md) | :heavy_minus_sign: | One of the "onboarding_status" enum values. | | -| `paymentMethod` | [JsonNullable\](../../models/components/ContractorPaymentMethod1.md) | :heavy_minus_sign: | The contractor's payment method. | | -| `hasSsn` | *Optional\* | :heavy_minus_sign: | Indicates whether the contractor has an SSN in Gusto. | | -| `departmentUuid` | *JsonNullable\* | :heavy_minus_sign: | The UUID of the department the contractor is under | | -| `department` | *JsonNullable\* | :heavy_minus_sign: | The contractor's department in the company. | | -| `departmentTitle` | *JsonNullable\* | :heavy_minus_sign: | The title of the contractor's department. | | -| `dismissalDate` | *JsonNullable\* | :heavy_minus_sign: | The contractor's dismissal date. | | -| `upcomingEmployment` | [JsonNullable\](../../models/components/UpcomingEmployment.md) | :heavy_minus_sign: | The contractor's upcoming employment details, if a rehire is scheduled. | | -| `dismissalCancellationEligible` | *Optional\* | :heavy_minus_sign: | Whether the contractor's pending dismissal can be cancelled. | | -| `rehireCancellationEligible` | *Optional\* | :heavy_minus_sign: | Whether the contractor's pending rehire can be cancelled. | | -| `memberPortalInvitationStatus` | [JsonNullable\](../../models/components/MemberPortalInvitationStatus.md) | :heavy_minus_sign: | Member portal invitation status information. Only included when the include param has the portal_invitations value set. | | -| `partnerPortalInvitationSent` | *JsonNullable\* | :heavy_minus_sign: | Whether an external partner portal invitation webhook has been sent for this contractor. Only included when the include param has the portal_invitations value set. | | \ No newline at end of file +| Field | Type | Required | Description | Example | +| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `uuid` | *String* | :heavy_check_mark: | The UUID of the contractor in Gusto. | | +| `companyUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the company the contractor is employed by. | | +| `wageType` | [Optional\](../../models/components/ContractorWageType.md) | :heavy_minus_sign: | The contractor's wage type, either "Fixed" or "Hourly". | | +| `isActive` | *Optional\* | :heavy_minus_sign: | The status of the contractor with the company. | | +| `version` | *Optional\* | :heavy_minus_sign: | The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. | | +| `type` | [Optional\](../../models/components/ContractorType.md) | :heavy_minus_sign: | The contractor's type, either "Individual" or "Business". | | +| `firstName` | *JsonNullable\* | :heavy_minus_sign: | The contractor’s first name. This attribute is required for “Individual” contractors and will be ignored for “Business” contractors. | | +| `lastName` | *JsonNullable\* | :heavy_minus_sign: | The contractor’s last name. This attribute is required for “Individual” contractors and will be ignored for “Business” contractors. | | +| `middleInitial` | *JsonNullable\* | :heavy_minus_sign: | The contractor’s middle initial. This attribute is optional for “Individual” contractors and will be ignored for “Business” contractors. | | +| `businessName` | *JsonNullable\* | :heavy_minus_sign: | The name of the contractor business. This attribute is required for “Business” contractors and will be ignored for “Individual” contractors. | | +| `ein` | *JsonNullable\* | :heavy_minus_sign: | The Federal Employer Identification Number of the contractor business. This attribute is optional for “Business” contractors and will be ignored for “Individual” contractors. | | +| `hasEin` | *JsonNullable\* | :heavy_minus_sign: | Whether company's Employer Identification Number (EIN) is present | | +| `email` | *JsonNullable\* | :heavy_minus_sign: | The contractor’s email address. This attribute is optional for “Individual” contractors and will be ignored for “Business” contractors. | | +| `workEmail` | *JsonNullable\* | :heavy_minus_sign: | The work email address of the contractor. This is provided to support syncing users between our system and yours. You may not use this email address for any other purpose (e.g. marketing). | | +| `startDate` | *Optional\* | :heavy_minus_sign: | The contractor's start date. | | +| `address` | [JsonNullable\
    ](../../models/components/Address.md) | :heavy_minus_sign: | The contractor’s home address. | | +| `hourlyRate` | *Optional\* | :heavy_minus_sign: | The contractor’s hourly rate. This attribute is required if the wage_type is “Hourly”. | 50.0 | +| `fileNewHireReport` | *JsonNullable\* | :heavy_minus_sign: | The boolean flag indicating whether Gusto will file a new hire report for the contractor | | +| `workState` | *JsonNullable\* | :heavy_minus_sign: | 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. | | +| `onboarded` | *Optional\* | :heavy_minus_sign: | The updated onboarding status for the contractor | | +| `onboardingStatus` | [Optional\](../../models/components/OnboardingStatus.md) | :heavy_minus_sign: | One of the "onboarding_status" enum values. | | +| `paymentMethod` | [JsonNullable\](../../models/components/ContractorPaymentMethod1.md) | :heavy_minus_sign: | The contractor's payment method. | | +| `hasSsn` | *Optional\* | :heavy_minus_sign: | Indicates whether the contractor has an SSN in Gusto. | | +| `departmentUuid` | *JsonNullable\* | :heavy_minus_sign: | The UUID of the department the contractor is under | | +| `department` | *JsonNullable\* | :heavy_minus_sign: | The contractor's department in the company. | | +| `departmentTitle` | *JsonNullable\* | :heavy_minus_sign: | The title of the contractor's department. | | +| `dismissalDate` | *JsonNullable\* | :heavy_minus_sign: | The contractor's dismissal date. | | +| `upcomingEmployment` | [JsonNullable\](../../models/components/UpcomingEmployment.md) | :heavy_minus_sign: | The contractor's upcoming employment details, if a rehire is scheduled. | | +| `dismissalCancellationEligible` | *Optional\* | :heavy_minus_sign: | Whether the contractor's pending dismissal can be cancelled. | | +| `rehireCancellationEligible` | *Optional\* | :heavy_minus_sign: | Whether the contractor's pending rehire can be cancelled. | | +| `memberPortalInvitationStatus` | [JsonNullable\](../../models/components/MemberPortalInvitationStatus.md) | :heavy_minus_sign: | Member portal invitation status information. Only included when the include param has the portal_invitations value set. | | +| `partnerPortalInvitationSent` | *JsonNullable\* | :heavy_minus_sign: | Whether an external partner portal invitation webhook has been sent for this contractor. Only included when the include param has the portal_invitations value set. | | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/ContractorAddress.md b/gusto_embedded_v_2026_06_15/docs/models/components/ContractorAddress.md index 782ff1953..9927dcc3a 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/components/ContractorAddress.md +++ b/gusto_embedded_v_2026_06_15/docs/models/components/ContractorAddress.md @@ -13,4 +13,5 @@ | `zip` | *JsonNullable\* | :heavy_minus_sign: | N/A | | `country` | *JsonNullable\* | :heavy_minus_sign: | N/A | | `active` | *Optional\* | :heavy_minus_sign: | The status of the location. Inactive locations have been deleted, but may still have historical data associated with them. | -| `version` | *Optional\* | :heavy_minus_sign: | The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. | \ No newline at end of file +| `version` | *Optional\* | :heavy_minus_sign: | The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. | +| `warnings` | List\<[WarningObject](../../models/components/WarningObject.md)> | :heavy_minus_sign: | An array of warning objects that provide additional information about the address. Warnings do not prevent the address from being saved. | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/ContractorCreateRequestBody.md b/gusto_embedded_v_2026_06_15/docs/models/components/ContractorCreateRequestBody.md index 9507c9ce2..9c18cf5c1 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/components/ContractorCreateRequestBody.md +++ b/gusto_embedded_v_2026_06_15/docs/models/components/ContractorCreateRequestBody.md @@ -13,6 +13,7 @@ Request body for creating a contractor. | `hourlyRate` | *Optional\* | :heavy_minus_sign: | The contractor’s hourly rate. This attribute is required if the wage_type is `Hourly`. | 40.0 | | `selfOnboarding` | *Optional\* | :heavy_minus_sign: | Whether the contractor or the payroll admin will complete onboarding in Gusto.
    Self-onboarding is recommended so that contractors receive Gusto accounts.
    If self_onboarding is true, then email is required. | | | `email` | *Optional\* | :heavy_minus_sign: | The contractor’s email address. | | +| `workEmail` | *Optional\* | :heavy_minus_sign: | The work email address of the contractor. This is provided to support syncing users between our system and yours. You may not use this email address for any other purpose (e.g. marketing). | | | `firstName` | *Optional\* | :heavy_minus_sign: | The contractor’s first name.
    This attribute is required for `Individual` contractors and will be ignored for `Business` contractors. | | | `lastName` | *Optional\* | :heavy_minus_sign: | The contractor’s last name.
    This attribute is required for `Individual` contractors and will be ignored for `Business` contractors. | | | `middleInitial` | *Optional\* | :heavy_minus_sign: | The contractor’s middle initial.
    This attribute is optional for `Individual` contractors and will be ignored for `Business` contractors. | | diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/ContractorPaymentDetailsList.md b/gusto_embedded_v_2026_06_15/docs/models/components/ContractorPaymentDetailsList.md index 242523a9b..db2d5093b 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/components/ContractorPaymentDetailsList.md +++ b/gusto_embedded_v_2026_06_15/docs/models/components/ContractorPaymentDetailsList.md @@ -6,7 +6,7 @@ | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `contractorUuid` | *Optional\* | :heavy_minus_sign: | N/A | -| `paymentMethod` | [Optional\](../../models/components/PaymentMethod.md) | :heavy_minus_sign: | N/A | +| `paymentMethod` | [Optional\](../../models/components/ContractorPaymentDetailsListPaymentMethod.md) | :heavy_minus_sign: | N/A | | `firstName` | *Optional\* | :heavy_minus_sign: | N/A | | `lastName` | *Optional\* | :heavy_minus_sign: | N/A | | `splitBy` | [JsonNullable\](../../models/components/SplitBy.md) | :heavy_minus_sign: | Describes how the payment will be split. If split_by is Percentage, then the split amounts must add up to exactly 100. If split_by is Amount, then the amount represents cents and the last split amount must be `null` to capture the remainder. | diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/ContractorPaymentDetailsListPaymentMethod.md b/gusto_embedded_v_2026_06_15/docs/models/components/ContractorPaymentDetailsListPaymentMethod.md new file mode 100644 index 000000000..8e74bd60a --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/ContractorPaymentDetailsListPaymentMethod.md @@ -0,0 +1,17 @@ +# ContractorPaymentDetailsListPaymentMethod + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.components.ContractorPaymentDetailsListPaymentMethod; + +ContractorPaymentDetailsListPaymentMethod value = ContractorPaymentDetailsListPaymentMethod.DIRECT_DEPOSIT; +``` + + +## Values + +| Name | Value | +| ---------------- | ---------------- | +| `DIRECT_DEPOSIT` | Direct Deposit | +| `CHECK` | Check | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/ContractorPaymentListing.md b/gusto_embedded_v_2026_06_15/docs/models/components/ContractorPaymentListing.md new file mode 100644 index 000000000..be5d0c023 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/ContractorPaymentListing.md @@ -0,0 +1,20 @@ +# ContractorPaymentListing + +The representation of a contractor payment as it appears in a contractor's payment history. + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | +| `uuid` | *String* | :heavy_check_mark: | The unique identifier of the contractor payment in Gusto. | +| `checkDate` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_minus_sign: | The check date for the payment. | +| `bonus` | *Optional\* | :heavy_minus_sign: | The bonus amount in the payment. | +| `hours` | *Optional\* | :heavy_minus_sign: | The number of hours worked for the payment. | +| `hourlyRate` | *Optional\* | :heavy_minus_sign: | The rate per hour worked for the payment. | +| `paymentMethod` | [Optional\](../../models/components/ContractorPaymentListingPaymentMethod.md) | :heavy_minus_sign: | The payment method. | +| `reimbursement` | *Optional\* | :heavy_minus_sign: | The reimbursement amount in the payment. | +| `status` | [Optional\](../../models/components/ContractorPaymentListingStatus.md) | :heavy_minus_sign: | Contractor payment status | +| `wage` | *Optional\* | :heavy_minus_sign: | The fixed wage of the payment, regardless of hours worked. | +| `wageType` | [Optional\](../../models/components/ContractorPaymentListingWageType.md) | :heavy_minus_sign: | The wage type for the payment. | +| `wageTotal` | *Optional\* | :heavy_minus_sign: | (hours * hourly_rate) + wage + bonus | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/ContractorPaymentListingPaymentMethod.md b/gusto_embedded_v_2026_06_15/docs/models/components/ContractorPaymentListingPaymentMethod.md new file mode 100644 index 000000000..52630fb0a --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/ContractorPaymentListingPaymentMethod.md @@ -0,0 +1,21 @@ +# ContractorPaymentListingPaymentMethod + +The payment method. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.components.ContractorPaymentListingPaymentMethod; + +ContractorPaymentListingPaymentMethod value = ContractorPaymentListingPaymentMethod.DIRECT_DEPOSIT; +``` + + +## Values + +| Name | Value | +| -------------------- | -------------------- | +| `DIRECT_DEPOSIT` | Direct Deposit | +| `CHECK` | Check | +| `HISTORICAL_PAYMENT` | Historical Payment | +| `CORRECTION_PAYMENT` | Correction Payment | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/ContractorPaymentListingStatus.md b/gusto_embedded_v_2026_06_15/docs/models/components/ContractorPaymentListingStatus.md new file mode 100644 index 000000000..1cd006f36 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/ContractorPaymentListingStatus.md @@ -0,0 +1,19 @@ +# ContractorPaymentListingStatus + +Contractor payment status + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.components.ContractorPaymentListingStatus; + +ContractorPaymentListingStatus value = ContractorPaymentListingStatus.FUNDED; +``` + + +## Values + +| Name | Value | +| ---------- | ---------- | +| `FUNDED` | Funded | +| `UNFUNDED` | Unfunded | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/ContractorPaymentListingWageType.md b/gusto_embedded_v_2026_06_15/docs/models/components/ContractorPaymentListingWageType.md new file mode 100644 index 000000000..1ae1ed1c3 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/ContractorPaymentListingWageType.md @@ -0,0 +1,19 @@ +# ContractorPaymentListingWageType + +The wage type for the payment. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.components.ContractorPaymentListingWageType; + +ContractorPaymentListingWageType value = ContractorPaymentListingWageType.HOURLY; +``` + + +## Values + +| Name | Value | +| -------- | -------- | +| `HOURLY` | Hourly | +| `FIXED` | Fixed | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/ContractorUpdateRequestBody.md b/gusto_embedded_v_2026_06_15/docs/models/components/ContractorUpdateRequestBody.md index aafda5b88..b4cf16a09 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/components/ContractorUpdateRequestBody.md +++ b/gusto_embedded_v_2026_06_15/docs/models/components/ContractorUpdateRequestBody.md @@ -14,6 +14,7 @@ Request body for updating a contractor. | `hourlyRate` | *Optional\* | :heavy_minus_sign: | The contractor’s hourly rate. This attribute is required if the wage_type is `Hourly`. | 40.0 | | `selfOnboarding` | *Optional\* | :heavy_minus_sign: | Whether the contractor or the payroll admin will complete onboarding in Gusto.
    Self-onboarding is recommended so that contractors receive Gusto accounts.
    If self_onboarding is true, then email is required. | | | `email` | *Optional\* | :heavy_minus_sign: | The contractor’s email address. | | +| `workEmail` | *Optional\* | :heavy_minus_sign: | The work email address of the contractor. This is provided to support syncing users between our system and yours. You may not use this email address for any other purpose (e.g. marketing). | | | `firstName` | *Optional\* | :heavy_minus_sign: | The contractor’s first name.
    This attribute is required for `Individual` contractors and will be ignored for `Business` contractors. | | | `lastName` | *Optional\* | :heavy_minus_sign: | The contractor’s last name.
    This attribute is required for `Individual` contractors and will be ignored for `Business` contractors. | | | `middleInitial` | *Optional\* | :heavy_minus_sign: | The contractor’s middle initial.
    This attribute is optional for `Individual` contractors and will be ignored for `Business` contractors. | | diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/CreateBulkReport.md b/gusto_embedded_v_2026_06_15/docs/models/components/CreateBulkReport.md new file mode 100644 index 000000000..c8188d84e --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/CreateBulkReport.md @@ -0,0 +1,9 @@ +# CreateBulkReport + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `uuid` | *String* | :heavy_check_mark: | Unique identifier of the bulk report batch. | +| `status` | [Status](../../models/components/Status.md) | :heavy_check_mark: | The batch's processing state.
    - `pending`: accepted, not yet started
    - `processing`: reports are being generated
    - `completed`: all reports finished
    - `failed`: the batch failed before completing
    | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/CreateReportBody.md b/gusto_embedded_v_2026_06_15/docs/models/components/CreateReportBody.md index 9ff6e15d5..769de0278 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/components/CreateReportBody.md +++ b/gusto_embedded_v_2026_06_15/docs/models/components/CreateReportBody.md @@ -7,17 +7,18 @@ Request body for creating a custom report. | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------- | -| `columns` | List\<[Columns](../../models/components/Columns.md)> | :heavy_check_mark: | Columns to include in the report | | -| `groupings` | List\<[Groupings](../../models/components/Groupings.md)> | :heavy_check_mark: | How to group the report | | +| `columns` | List\<[CreateReportBodyColumns](../../models/components/CreateReportBodyColumns.md)> | :heavy_check_mark: | Columns to include in the report | | +| `groupings` | List\<[CreateReportBodyGroupings](../../models/components/CreateReportBodyGroupings.md)> | :heavy_minus_sign: | Optional. How to group the report. If omitted, sensible defaults are derived from the `columns` requested. | | | `customName` | *Optional\* | :heavy_minus_sign: | The title of the report | | -| `fileType` | [FileType](../../models/components/FileType.md) | :heavy_check_mark: | The type of file to generate | | +| `fileType` | [CreateReportBodyFileType](../../models/components/CreateReportBodyFileType.md) | :heavy_check_mark: | The type of file to generate | | | `withTotals` | *Optional\* | :heavy_minus_sign: | Whether to include subtotals and grand totals in the report | | +| `dateFilterType` | [Optional\](../../models/components/CreateReportBodyDateFilterType.md) | :heavy_minus_sign: | Which payroll date `start_date` and `end_date` filter against. | | | `startDate` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_minus_sign: | Start date of data to filter by | 2024-01-01 | | `endDate` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_minus_sign: | End date of data to filter by | 2024-04-01 | | `dismissedStartDate` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_minus_sign: | Dismissed start date of employees to filter by | 2024-01-01 | | `dismissedEndDate` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_minus_sign: | Dismissed end date of employees to filter by | 2024-04-01 | | `paymentMethod` | [Optional\](../../models/components/CreateReportBodyPaymentMethod.md) | :heavy_minus_sign: | Payment method to filter by | | -| `employmentType` | [Optional\](../../models/components/EmploymentType.md) | :heavy_minus_sign: | Employee employment type to filter by | | +| `employmentType` | [Optional\](../../models/components/CreateReportBodyEmploymentType.md) | :heavy_minus_sign: | Employee employment type to filter by | | | `employmentStatus` | [Optional\](../../models/components/CreateReportBodyEmploymentStatus.md) | :heavy_minus_sign: | Employee employment status to filter by | | | `employeeUuids` | List\<*String*> | :heavy_minus_sign: | Employees to filter by | | | `departmentUuids` | List\<*String*> | :heavy_minus_sign: | Departments to filter by | | diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/CreateReportBodyColumns.md b/gusto_embedded_v_2026_06_15/docs/models/components/CreateReportBodyColumns.md new file mode 100644 index 000000000..111a31adb --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/CreateReportBodyColumns.md @@ -0,0 +1,101 @@ +# CreateReportBodyColumns + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.components.CreateReportBodyColumns; + +CreateReportBodyColumns value = CreateReportBodyColumns.ADDITIONAL_EARNINGS; +``` + + +## Values + +| Name | Value | +| -------------------------------------- | -------------------------------------- | +| `ADDITIONAL_EARNINGS` | additional_earnings | +| `BANK_ACCOUNT_ACCOUNT_NUMBER` | bank_account_account_number | +| `BANK_ACCOUNT_ROUTING_NUMBER` | bank_account_routing_number | +| `BANK_ACCOUNT_TYPE` | bank_account_type | +| `BANK_ACCOUNT` | bank_account | +| `BONUS` | bonus | +| `CASH_TIPS` | cash_tips | +| `CHECK_AMOUNT` | check_amount | +| `CHECK_DATE` | check_date | +| `COMMISSION` | commission | +| `DATE_OF_BIRTH` | date_of_birth | +| `DOUBLE_OVERTIME_EARNINGS` | double_overtime_earnings | +| `DOUBLE_OVERTIME_HOURS` | double_overtime_hours | +| `DOUBLE_OVERTIME_RATE` | double_overtime_rate | +| `EMPLOYEE_ADDITIONAL_TAXES` | employee_additional_taxes | +| `EMPLOYEE_BENEFIT_CONTRIBUTIONS` | employee_benefit_contributions | +| `EMPLOYEE_COMPENSATION_TIME_PERIOD` | employee_compensation_time_period | +| `EMPLOYEE_COMPENSATION` | employee_compensation | +| `EMPLOYEE_DEDUCTIONS` | employee_deductions | +| `EMPLOYEE_DEPARTMENT` | employee_department | +| `EMPLOYEE_EMAIL` | employee_email | +| `EMPLOYEE_DONATIONS` | employee_donations | +| `EMPLOYEE_FEDERAL_INCOME_TAX` | employee_federal_income_tax | +| `EMPLOYEE_FIRST_NAME` | employee_first_name | +| `EMPLOYEE_LAST_NAME` | employee_last_name | +| `EMPLOYEE_MIDDLE_INITIAL` | employee_middle_initial | +| `EMPLOYEE_MEDICARE_ADDITIONAL_TAX` | employee_medicare_additional_tax | +| `EMPLOYEE_MEDICARE_TAX` | employee_medicare_tax | +| `EMPLOYEE_PHONE_NUMBER` | employee_phone_number | +| `EMPLOYEE_SOCIAL_SECURITY_TAX` | employee_social_security_tax | +| `EMPLOYEE_STATE_INCOME_TAX` | employee_state_income_tax | +| `EMPLOYEE_TAXES` | employee_taxes | +| `EMPLOYEE_UUID` | employee_uuid | +| `EMPLOYEE_WORK_EMAIL` | employee_work_email | +| `EMPLOYER_ADDITIONAL_TAXES` | employer_additional_taxes | +| `EMPLOYER_BENEFIT_CONTRIBUTIONS` | employer_benefit_contributions | +| `EMPLOYER_COST` | employer_cost | +| `EMPLOYER_FUTA_TAX` | employer_futa_tax | +| `EMPLOYER_MEDICARE_TAX` | employer_medicare_tax | +| `EMPLOYER_SOCIAL_SECURITY_TAX` | employer_social_security_tax | +| `EMPLOYER_SUTA_TAX` | employer_suta_tax | +| `EMPLOYER_TAXES` | employer_taxes | +| `EMPLOYMENT_TYPE` | employment_type | +| `EMPLOYMENT` | employment | +| `END_DATE` | end_date | +| `GARNISHMENTS` | garnishments | +| `GROSS_EARNINGS` | gross_earnings | +| `HOLIDAY_EARNINGS` | holiday_earnings | +| `HOLIDAY_HOURS` | holiday_hours | +| `HOME_ADDRESS_CITY` | home_address_city | +| `HOME_ADDRESS_STATE` | home_address_state | +| `HOME_ADDRESS_STREET` | home_address_street | +| `HOME_ADDRESS_ZIP` | home_address_zip | +| `HOME_ADDRESS` | home_address | +| `JOB_TITLE` | job_title | +| `NET_PAY` | net_pay | +| `ONE_TIME_REIMBURSEMENTS` | one_time_reimbursements | +| `OVERTIME_EARNINGS` | overtime_earnings | +| `OVERTIME_HOURS` | overtime_hours | +| `OVERTIME_RATE` | overtime_rate | +| `PAID_TIME_OFF_EARNINGS` | paid_time_off_earnings | +| `PAID_TIME_OFF_HOURS` | paid_time_off_hours | +| `PAID_TIME_OFF_RATE` | paid_time_off_rate | +| `PAY_PERIOD_END` | pay_period_end | +| `PAY_PERIOD_START` | pay_period_start | +| `PAYCHECK_TIPS` | paycheck_tips | +| `PAYMENT_METHOD` | payment_method | +| `PAYROLL_TYPE` | payroll_type | +| `PAYROLL_UUID` | payroll_uuid | +| `PREFERRED_FIRST_NAME` | preferred_first_name | +| `RECURRING_REIMBURSEMENTS` | recurring_reimbursements | +| `REGULAR_EARNINGS` | regular_earnings | +| `REGULAR_HOURS` | regular_hours | +| `REGULAR_RATE` | regular_rate | +| `REIMBURSEMENTS` | reimbursements | +| `RISK_CLASS_CODE` | risk_class_code | +| `SICK_RATE` | sick_rate | +| `SICK_TIME_OFF_EARNINGS` | sick_time_off_earnings | +| `SICK_TIME_OFF_HOURS` | sick_time_off_hours | +| `START_DATE` | start_date | +| `TOTAL_EMPLOYER_BENEFIT_CONTRIBUTIONS` | total_employer_benefit_contributions | +| `TOTAL_TIME_OFF_EARNINGS` | total_time_off_earnings | +| `TOTAL_TIME_OFF_HOURS` | total_time_off_hours | +| `WORK_ADDRESS_CITY` | work_address_city | +| `WORK_ADDRESS_STREET` | work_address_street | +| `WORK_ADDRESS_ZIP` | work_address_zip | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/CreateReportBodyDateFilterType.md b/gusto_embedded_v_2026_06_15/docs/models/components/CreateReportBodyDateFilterType.md new file mode 100644 index 000000000..d3c60d3de --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/CreateReportBodyDateFilterType.md @@ -0,0 +1,20 @@ +# CreateReportBodyDateFilterType + +Which payroll date `start_date` and `end_date` filter against. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.components.CreateReportBodyDateFilterType; + +CreateReportBodyDateFilterType value = CreateReportBodyDateFilterType.PERIOD_END_DATE; +``` + + +## Values + +| Name | Value | +| ------------------- | ------------------- | +| `PERIOD_END_DATE` | period_end_date | +| `PERIOD_START_DATE` | period_start_date | +| `CHECK_DATE` | check_date | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/CreateReportBodyEmploymentType.md b/gusto_embedded_v_2026_06_15/docs/models/components/CreateReportBodyEmploymentType.md new file mode 100644 index 000000000..9f2ebd319 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/CreateReportBodyEmploymentType.md @@ -0,0 +1,22 @@ +# CreateReportBodyEmploymentType + +Employee employment type to filter by + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.components.CreateReportBodyEmploymentType; + +CreateReportBodyEmploymentType value = CreateReportBodyEmploymentType.EXEMPT; +``` + + +## Values + +| Name | Value | +| --------------------------- | --------------------------- | +| `EXEMPT` | exempt | +| `SALARIED_NONEXEMPT` | salaried_nonexempt | +| `NONEXEMPT` | nonexempt | +| `COMMISSION_ONLY_EXEMPT` | commission_only_exempt | +| `COMMISSION_ONLY_NONEXEMPT` | commission_only_nonexempt | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/CreateReportBodyFileType.md b/gusto_embedded_v_2026_06_15/docs/models/components/CreateReportBodyFileType.md new file mode 100644 index 000000000..bea444263 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/CreateReportBodyFileType.md @@ -0,0 +1,20 @@ +# CreateReportBodyFileType + +The type of file to generate + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.components.CreateReportBodyFileType; + +CreateReportBodyFileType value = CreateReportBodyFileType.CSV; +``` + + +## Values + +| Name | Value | +| ------ | ------ | +| `CSV` | csv | +| `JSON` | json | +| `PDF` | pdf | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/CreateReportBodyGroupings.md b/gusto_embedded_v_2026_06_15/docs/models/components/CreateReportBodyGroupings.md new file mode 100644 index 000000000..eaab9ad61 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/CreateReportBodyGroupings.md @@ -0,0 +1,19 @@ +# CreateReportBodyGroupings + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.components.CreateReportBodyGroupings; + +CreateReportBodyGroupings value = CreateReportBodyGroupings.PAYROLL; +``` + + +## Values + +| Name | Value | +| -------------------- | -------------------- | +| `PAYROLL` | payroll | +| `EMPLOYEE` | employee | +| `WORK_ADDRESS` | work_address | +| `WORK_ADDRESS_STATE` | work_address_state | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/CustomWithholdings.md b/gusto_embedded_v_2026_06_15/docs/models/components/CustomWithholdings.md new file mode 100644 index 000000000..21feb111f --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/CustomWithholdings.md @@ -0,0 +1,14 @@ +# CustomWithholdings + +The one-time custom withholding overrides applied to this payroll for this employee. +`federal` is null when no federal one-time override is set; `state` is an empty +array when no state one-time overrides are set. + + + +## Fields + +| Field | Type | Required | Description | +| ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | +| `federal` | [JsonNullable\](../../models/components/Federal.md) | :heavy_minus_sign: | Federal one-time custom withholding override applied to this payroll. | +| `state` | List\<[State](../../models/components/State.md)> | :heavy_minus_sign: | State one-time custom withholding overrides applied to this payroll, one entry per state field. | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/DateFilterType.md b/gusto_embedded_v_2026_06_15/docs/models/components/DateFilterType.md new file mode 100644 index 000000000..86806f59c --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/DateFilterType.md @@ -0,0 +1,20 @@ +# DateFilterType + +Which payroll date `start_date` and `end_date` filter against. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.components.DateFilterType; + +DateFilterType value = DateFilterType.PERIOD_END_DATE; +``` + + +## Values + +| Name | Value | +| ------------------- | ------------------- | +| `PERIOD_END_DATE` | period_end_date | +| `PERIOD_START_DATE` | period_start_date | +| `CHECK_DATE` | check_date | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/EmployeeAddress.md b/gusto_embedded_v_2026_06_15/docs/models/components/EmployeeAddress.md index fb7413252..a3a5fb43d 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/components/EmployeeAddress.md +++ b/gusto_embedded_v_2026_06_15/docs/models/components/EmployeeAddress.md @@ -16,4 +16,5 @@ | `zip` | *Optional\* | :heavy_minus_sign: | N/A | | `country` | *Optional\* | :heavy_minus_sign: | N/A | | `active` | *Optional\* | :heavy_minus_sign: | The status of the location. Inactive locations have been deleted, but may still have historical data associated with them. | -| `version` | *String* | :heavy_check_mark: | The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. | \ No newline at end of file +| `version` | *String* | :heavy_check_mark: | The current version of the object. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. | +| `warnings` | List\<[WarningObject](../../models/components/WarningObject.md)> | :heavy_minus_sign: | An array of warning objects that provide additional information about the address. Warnings do not prevent the address from being saved. | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/EmployeeCompensations.md b/gusto_embedded_v_2026_06_15/docs/models/components/EmployeeCompensations.md index 7904759a2..07c565f82 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/components/EmployeeCompensations.md +++ b/gusto_embedded_v_2026_06_15/docs/models/components/EmployeeCompensations.md @@ -3,24 +3,25 @@ ## Fields -| Field | Type | Required | Description | -| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `employeeUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the employee. | -| `excluded` | *Optional\* | :heavy_minus_sign: | This employee will be excluded (skipped) from payroll calculation and will not be paid for the payroll. Cancelling a payroll would reset all employees' excluded back to false. | -| `firstName` | *JsonNullable\* | :heavy_minus_sign: | The first name of the employee. Requires `employees:read` scope. | -| `preferredFirstName` | *JsonNullable\* | :heavy_minus_sign: | The preferred first name of the employee. Requires `employees:read` scope. | -| `lastName` | *JsonNullable\* | :heavy_minus_sign: | The last name of the employee. Requires `employees:read` scope. | -| `grossPay` | *JsonNullable\* | :heavy_minus_sign: | The employee's gross pay (as a string-formatted decimal, e.g. "1234.56"), equal to regular wages + cash tips + payroll tips + any other additional earnings, excluding imputed income. This value is only available for processed payrolls. | -| `netPay` | *JsonNullable\* | :heavy_minus_sign: | The employee's net pay (as a string-formatted decimal, e.g. "1234.56"), equal to gross_pay - employee taxes - employee deductions or garnishments - cash tips. This value is only available for processed payrolls. | -| `checkAmount` | *JsonNullable\* | :heavy_minus_sign: | The employee's check amount (as a string-formatted decimal, e.g. "1234.56"), equal to net_pay + reimbursements. This value is only available for processed payrolls. | -| `paymentMethod` | [JsonNullable\](../../models/components/PayrollShowPaymentMethod.md) | :heavy_minus_sign: | The employee's compensation payment method. Is *only* `Historical` when retrieving external payrolls initially run outside of Gusto, then put into Gusto. | -| `memo` | *JsonNullable\* | :heavy_minus_sign: | Custom text that will be printed as a personal note to the employee on a paystub. | -| `fixedCompensations` | List\<[PayrollShowFixedCompensations](../../models/components/PayrollShowFixedCompensations.md)> | :heavy_minus_sign: | An array of fixed compensations for the employee. Fixed compensations include tips, bonuses, and one time reimbursements. If this payroll has been processed, only fixed compensations with a value greater than 0.00 are returned. For an unprocessed payroll, all active fixed compensations are returned. | -| `hourlyCompensations` | List\<[PayrollShowHourlyCompensations](../../models/components/PayrollShowHourlyCompensations.md)> | :heavy_minus_sign: | An array of hourly compensations for the employee. Hourly compensations include regular, overtime, and double overtime hours. If this payroll has been processed, only hourly compensations with a value greater than 0.00 are returned. For an unprocessed payroll, all active hourly compensations are returned. | -| `paidTimeOff` | List\<[PayrollShowPaidTimeOff](../../models/components/PayrollShowPaidTimeOff.md)> | :heavy_minus_sign: | An array of all paid time off the employee is eligible for this pay period. | -| `reimbursements` | List\<[PayrollShowReimbursements](../../models/components/PayrollShowReimbursements.md)> | :heavy_minus_sign: | An array of reimbursements for the employee. | -| `version` | *Optional\* | :heavy_minus_sign: | The current version of this employee compensation. This field is only available for prepared payrolls. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. | -| `deductions` | List\<[PayrollShowDeductions](../../models/components/PayrollShowDeductions.md)> | :heavy_minus_sign: | An array of employee deductions for the pay period. Only included when `deductions` is present in the `include` parameter. | -| `taxes` | List\<[PayrollShowTaxes](../../models/components/PayrollShowTaxes.md)> | :heavy_minus_sign: | An array of employer and employee taxes for the pay period. Only included for processed or calculated payrolls when `taxes` is present in the `include` parameter. | -| `benefits` | List\<[PayrollShowBenefits](../../models/components/PayrollShowBenefits.md)> | :heavy_minus_sign: | An array of employee benefits for the pay period. Benefits are only included for processed payroll when the include parameter is present. | -| `additionalProperties` | Map\ | :heavy_minus_sign: | N/A | \ No newline at end of file +| Field | Type | Required | Description | +| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `employeeUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the employee. | +| `excluded` | *Optional\* | :heavy_minus_sign: | This employee will be excluded (skipped) from payroll calculation and will not be paid for the payroll. Cancelling a payroll would reset all employees' excluded back to false. | +| `firstName` | *JsonNullable\* | :heavy_minus_sign: | The first name of the employee. Requires `employees:read` scope. | +| `preferredFirstName` | *JsonNullable\* | :heavy_minus_sign: | The preferred first name of the employee. Requires `employees:read` scope. | +| `lastName` | *JsonNullable\* | :heavy_minus_sign: | The last name of the employee. Requires `employees:read` scope. | +| `grossPay` | *JsonNullable\* | :heavy_minus_sign: | The employee's gross pay (as a string-formatted decimal, e.g. "1234.56"), equal to regular wages + cash tips + payroll tips + any other additional earnings, excluding imputed income. This value is only available for processed payrolls. | +| `netPay` | *JsonNullable\* | :heavy_minus_sign: | The employee's net pay (as a string-formatted decimal, e.g. "1234.56"), equal to gross_pay - employee taxes - employee deductions or garnishments - cash tips. This value is only available for processed payrolls. | +| `checkAmount` | *JsonNullable\* | :heavy_minus_sign: | The employee's check amount (as a string-formatted decimal, e.g. "1234.56"), equal to net_pay + reimbursements. This value is only available for processed payrolls. | +| `paymentMethod` | [JsonNullable\](../../models/components/PayrollShowPaymentMethod.md) | :heavy_minus_sign: | The employee's compensation payment method. Is *only* `Historical` when retrieving external payrolls initially run outside of Gusto, then put into Gusto. | +| `memo` | *JsonNullable\* | :heavy_minus_sign: | Custom text that will be printed as a personal note to the employee on a paystub. | +| `fixedCompensations` | List\<[PayrollShowFixedCompensations](../../models/components/PayrollShowFixedCompensations.md)> | :heavy_minus_sign: | An array of fixed compensations for the employee. Fixed compensations include tips and bonuses. On regular payrolls, reimbursements are sent via the dedicated `reimbursements` array instead. Off-cycle payrolls continue to include reimbursements in `fixed_compensations`. If this payroll has been processed, only fixed compensations with a value greater than 0.00 are returned. For an unprocessed payroll, all active fixed compensations are returned. | +| `hourlyCompensations` | List\<[PayrollShowHourlyCompensations](../../models/components/PayrollShowHourlyCompensations.md)> | :heavy_minus_sign: | An array of hourly compensations for the employee. Hourly compensations include regular, overtime, and double overtime hours. If this payroll has been processed, only hourly compensations with a value greater than 0.00 are returned. For an unprocessed payroll, all active hourly compensations are returned. | +| `paidTimeOff` | List\<[PayrollShowPaidTimeOff](../../models/components/PayrollShowPaidTimeOff.md)> | :heavy_minus_sign: | An array of all paid time off the employee is eligible for this pay period. | +| `reimbursements` | List\<[PayrollShowReimbursements](../../models/components/PayrollShowReimbursements.md)> | :heavy_minus_sign: | An array of reimbursements for the employee. | +| `customWithholdings` | [Optional\](../../models/components/PayrollShowCustomWithholdings.md) | :heavy_minus_sign: | The one-time custom withholding overrides applied to this payroll for this employee.
    `federal` is null when no federal one-time override is set; `state` is an empty
    array when no state one-time overrides are set.
    | +| `version` | *Optional\* | :heavy_minus_sign: | The current version of this employee compensation. This field is only available for prepared payrolls. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. | +| `deductions` | List\<[PayrollShowDeductions](../../models/components/PayrollShowDeductions.md)> | :heavy_minus_sign: | An array of employee deductions for the pay period. Only included when `deductions` is present in the `include` parameter. | +| `taxes` | List\<[PayrollShowTaxes](../../models/components/PayrollShowTaxes.md)> | :heavy_minus_sign: | An array of employer and employee taxes for the pay period. Only included for processed or calculated payrolls when `taxes` is present in the `include` parameter. | +| `benefits` | List\<[PayrollShowBenefits](../../models/components/PayrollShowBenefits.md)> | :heavy_minus_sign: | An array of employee benefits for the pay period. Benefits are only included for processed payroll when the include parameter is present. | +| `additionalProperties` | Map\ | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/EmployeeOnboardingStatus.md b/gusto_embedded_v_2026_06_15/docs/models/components/EmployeeOnboardingStatus.md index 75686cf10..e7d8f695f 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/components/EmployeeOnboardingStatus.md +++ b/gusto_embedded_v_2026_06_15/docs/models/components/EmployeeOnboardingStatus.md @@ -5,8 +5,9 @@ The representation of an employee's onboarding status. ## Fields -| Field | Type | Required | Description | -| ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ | -| `uuid` | *String* | :heavy_check_mark: | Unique identifier for this employee. | -| `onboardingStatus` | *Optional\* | :heavy_minus_sign: | One of the "onboarding_status" enum values. | -| `onboardingSteps` | List\<[EmployeeOnboardingStatusOnboardingStep](../../models/components/EmployeeOnboardingStatusOnboardingStep.md)> | :heavy_minus_sign: | List of steps required to onboard an employee. | \ No newline at end of file +| Field | Type | Required | Description | +| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `uuid` | *String* | :heavy_check_mark: | Unique identifier for this employee. | +| `onboardingStatus` | *Optional\* | :heavy_minus_sign: | One of the "onboarding_status" enum values. | +| `onboardingSteps` | List\<[EmployeeOnboardingStatusOnboardingStep](../../models/components/EmployeeOnboardingStatusOnboardingStep.md)> | :heavy_minus_sign: | List of steps required to onboard an employee. | +| `blockers` | List\<[Blockers](../../models/components/Blockers.md)> | :heavy_minus_sign: | Validation issues that should be resolved before this employee's onboarding is complete. Each entry identifies an affected field, a category describing the type of problem, and a human-readable message.

    Supported categories:

    - `duplicate_value`: Another employee in the same company already has this value. To resolve, cancel this onboarding and initiate a rehire if it's a returning employee, or contact support to investigate the conflict.

    This list may grow over time as new validation rules are added.
    | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/EmployeeOnboardingStatusCategory.md b/gusto_embedded_v_2026_06_15/docs/models/components/EmployeeOnboardingStatusCategory.md new file mode 100644 index 000000000..5b79b374f --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/EmployeeOnboardingStatusCategory.md @@ -0,0 +1,18 @@ +# EmployeeOnboardingStatusCategory + +Category of the blocker. See the array-level description for resolution guidance. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.components.EmployeeOnboardingStatusCategory; + +EmployeeOnboardingStatusCategory value = EmployeeOnboardingStatusCategory.DUPLICATE_VALUE; +``` + + +## Values + +| Name | Value | +| ----------------- | ----------------- | +| `DUPLICATE_VALUE` | duplicate_value | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/EmploymentStatus.md b/gusto_embedded_v_2026_06_15/docs/models/components/EmploymentStatus.md index 0075e3cf4..fdc3c3a7b 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/components/EmploymentStatus.md +++ b/gusto_embedded_v_2026_06_15/docs/models/components/EmploymentStatus.md @@ -1,23 +1,24 @@ # EmploymentStatus -The employee's employment status. Supplying an invalid option will set the employment_status to *not_set*. +Employee employment status to filter by. ## Example Usage ```java import com.gusto.embedded_api_v_2026_06_15.models.components.EmploymentStatus; -EmploymentStatus value = EmploymentStatus.PART_TIME; +EmploymentStatus value = EmploymentStatus.ACTIVE_FULL_TIME; ``` ## Values -| Name | Value | -| -------------------- | -------------------- | -| `PART_TIME` | part_time | -| `FULL_TIME` | full_time | -| `PART_TIME_ELIGIBLE` | part_time_eligible | -| `VARIABLE` | variable | -| `SEASONAL` | seasonal | -| `NOT_SET` | not_set | \ No newline at end of file +| Name | Value | +| --------------------------- | --------------------------- | +| `ACTIVE_FULL_TIME` | active_full_time | +| `ACTIVE_PART_TIME` | active_part_time | +| `ACTIVE_PART_TIME_ELIGIBLE` | active_part_time_eligible | +| `ACTIVE_VARIABLE` | active_variable | +| `ACTIVE_SEASONAL` | active_seasonal | +| `ACTIVE` | active | +| `DISMISSED` | dismissed | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/EmploymentType.md b/gusto_embedded_v_2026_06_15/docs/models/components/EmploymentType.md index c7a1d6b6d..a014e32d8 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/components/EmploymentType.md +++ b/gusto_embedded_v_2026_06_15/docs/models/components/EmploymentType.md @@ -1,6 +1,6 @@ # EmploymentType -Employee employment type to filter by +Employee employment type to filter by. ## Example Usage diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/Exclusions.md b/gusto_embedded_v_2026_06_15/docs/models/components/Exclusions.md index 828410720..1a6c3b2e6 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/components/Exclusions.md +++ b/gusto_embedded_v_2026_06_15/docs/models/components/Exclusions.md @@ -3,9 +3,12 @@ ## Fields -| Field | Type | Required | Description | -| ------------------------------------------- | ------------------------------------------- | ------------------------------------------- | ------------------------------------------- | -| `externalId` | *Optional\* | :heavy_minus_sign: | The external ID of the excluded item(s). | -| `category` | *Optional\* | :heavy_minus_sign: | The exclusion category. | -| `message` | *Optional\* | :heavy_minus_sign: | Human-readable explanation for exclusion. | -| `itemCount` | *Optional\* | :heavy_minus_sign: | Number of items affected by this exclusion. | \ No newline at end of file +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `idx` | *Optional\* | :heavy_minus_sign: | The index of this payroll in the original POST batch array. | +| `entityType` | [Optional\](../../models/components/PayrollBatchResultsEntityType.md) | :heavy_minus_sign: | The type of entity this exclusion represents. | +| `uuid` | *Optional\* | :heavy_minus_sign: | The UUID of the excluded payroll. | +| `companyUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the company asserted to own the payroll. | +| `status` | [Optional\](../../models/components/PayrollBatchResultsExclusionsStatus.md) | :heavy_minus_sign: | Always `failed` for an excluded payroll. | +| `category` | [Optional\](../../models/components/PayrollBatchResultsCategory.md) | :heavy_minus_sign: | Machine-readable category for why the payroll was excluded.
    - `not_found`: the payroll does not exist, or is not associated with a company the partner is mapped to
    - `duplicate_operation`: the same payroll UUID appeared more than once in the request; only the first occurrence is processed
    | +| `message` | *Optional\* | :heavy_minus_sign: | Human-readable explanation for the exclusion. | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/Federal.md b/gusto_embedded_v_2026_06_15/docs/models/components/Federal.md new file mode 100644 index 000000000..12c04e736 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/Federal.md @@ -0,0 +1,12 @@ +# Federal + +Federal one-time custom withholding override applied to this payroll. + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------ | +| `overrideType` | [Optional\](../../models/components/OverrideType.md) | :heavy_minus_sign: | Override mode. Only `one_time` is currently exposed. | +| `amount` | *Optional\* | :heavy_minus_sign: | The amount that was withheld for this payroll. | +| `amountType` | [Optional\](../../models/components/PayrollEmployeeCompensationsTypeAmountType.md) | :heavy_minus_sign: | How to interpret the amount. | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/Field.md b/gusto_embedded_v_2026_06_15/docs/models/components/Field.md new file mode 100644 index 000000000..30387b3b8 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/Field.md @@ -0,0 +1,18 @@ +# Field + +The employee field affected. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.components.Field; + +Field value = Field.SSN; +``` + + +## Values + +| Name | Value | +| ----- | ----- | +| `SSN` | ssn | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/FileType.md b/gusto_embedded_v_2026_06_15/docs/models/components/FileType.md index e2a73660a..b5d0fa124 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/components/FileType.md +++ b/gusto_embedded_v_2026_06_15/docs/models/components/FileType.md @@ -1,6 +1,6 @@ # FileType -The type of file to generate +The type of file to generate. ## Example Usage diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/GeneralLedgerReportBody.md b/gusto_embedded_v_2026_06_15/docs/models/components/GeneralLedgerReportBody.md index fad04b537..99fa0a43c 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/components/GeneralLedgerReportBody.md +++ b/gusto_embedded_v_2026_06_15/docs/models/components/GeneralLedgerReportBody.md @@ -7,5 +7,5 @@ Request body for generating a general ledger report. The report can be aggregate | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------- | -| `aggregation` | [Aggregation](../../models/components/Aggregation.md) | :heavy_check_mark: | The breakdown of the report. Use 'default' for no split. | +| `aggregation` | [GeneralLedgerReportBodyAggregation](../../models/components/GeneralLedgerReportBodyAggregation.md) | :heavy_check_mark: | The breakdown of the report. Use 'default' for no split. | | `integrationType` | [JsonNullable\](../../models/components/IntegrationType.md) | :heavy_minus_sign: | The kind of integration set up for the company. Required when `aggregation` is 'integration'. Must be null if `aggregation` is not 'integration'. | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/GeneralLedgerReportBodyAggregation.md b/gusto_embedded_v_2026_06_15/docs/models/components/GeneralLedgerReportBodyAggregation.md new file mode 100644 index 000000000..bb9008a0b --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/GeneralLedgerReportBodyAggregation.md @@ -0,0 +1,21 @@ +# GeneralLedgerReportBodyAggregation + +The breakdown of the report. Use 'default' for no split. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.components.GeneralLedgerReportBodyAggregation; + +GeneralLedgerReportBodyAggregation value = GeneralLedgerReportBodyAggregation.DEFAULT; +``` + + +## Values + +| Name | Value | +| ------------- | ------------- | +| `DEFAULT` | default | +| `JOB` | job | +| `DEPARTMENT` | department | +| `INTEGRATION` | integration | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/Location.md b/gusto_embedded_v_2026_06_15/docs/models/components/Location.md index 56a22e02c..bf6907034 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/components/Location.md +++ b/gusto_embedded_v_2026_06_15/docs/models/components/Location.md @@ -22,4 +22,5 @@ The representation of an address in Gusto. | `createdAt` | *Optional\* | :heavy_minus_sign: | Datetime for when location is created | | `updatedAt` | *Optional\* | :heavy_minus_sign: | Datetime for when location is updated | | `active` | *Optional\* | :heavy_minus_sign: | The status of the location. Inactive locations have been deleted, but may still have historical data associated with them. | -| `inactive` | *Optional\* | :heavy_minus_sign: | The status of the location. Inactive locations have been deleted, but may still have historical data associated with them. | \ No newline at end of file +| `inactive` | *Optional\* | :heavy_minus_sign: | The status of the location. Inactive locations have been deleted, but may still have historical data associated with them. | +| `warnings` | List\<[WarningObject](../../models/components/WarningObject.md)> | :heavy_minus_sign: | An array of warning objects that provide additional information about the address. Warnings do not prevent the address from being saved. | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/MemberPortalInvitation.md b/gusto_embedded_v_2026_06_15/docs/models/components/MemberPortalInvitation.md new file mode 100644 index 000000000..588490e35 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/MemberPortalInvitation.md @@ -0,0 +1,12 @@ +# MemberPortalInvitation + +The status of a member portal invitation for an employee or contractor. Returned by `GET /v1/employees/{employee_id}/member_portal_invitations` and `GET /v1/contractors/{contractor_uuid}/member_portal_invitations`. + + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `status` | [MemberPortalInvitationStatus1](../../models/components/MemberPortalInvitationStatus1.md) | :heavy_check_mark: | Current status of the member portal invitation.
    - `pending`: The invitation record has been created but the invitation email has not yet been delivered.
    - `sent`: The invitation email has been delivered to the member.
    - `verified`: The member has been verified by the member portal partner.
    - `complete`: The member has fully completed their member portal registration.
    - `cancelled`: The invitation has been cancelled, either via `DELETE` on this endpoint or because it was superseded.
    | sent | +| `expired` | *boolean* | :heavy_check_mark: | Whether the invitation can no longer be acted on by the member. Returns `true` when the invitation token has expired or when the invitation has been `cancelled`. To reissue an expired invitation, call `POST` on this endpoint again — a new token will be generated and will override the prior one.
    | false | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/MemberPortalInvitationStatus1.md b/gusto_embedded_v_2026_06_15/docs/models/components/MemberPortalInvitationStatus1.md new file mode 100644 index 000000000..457688e7b --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/MemberPortalInvitationStatus1.md @@ -0,0 +1,28 @@ +# MemberPortalInvitationStatus1 + +Current status of the member portal invitation. +- `pending`: The invitation record has been created but the invitation email has not yet been delivered. +- `sent`: The invitation email has been delivered to the member. +- `verified`: The member has been verified by the member portal partner. +- `complete`: The member has fully completed their member portal registration. +- `cancelled`: The invitation has been cancelled, either via `DELETE` on this endpoint or because it was superseded. + + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.components.MemberPortalInvitationStatus1; + +MemberPortalInvitationStatus1 value = MemberPortalInvitationStatus1.PENDING; +``` + + +## Values + +| Name | Value | +| ----------- | ----------- | +| `PENDING` | pending | +| `SENT` | sent | +| `VERIFIED` | verified | +| `COMPLETE` | complete | +| `CANCELLED` | cancelled | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/Notification.md b/gusto_embedded_v_2026_06_15/docs/models/components/Notification.md index 8e391f841..c0d1b00cc 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/components/Notification.md +++ b/gusto_embedded_v_2026_06_15/docs/models/components/Notification.md @@ -9,7 +9,7 @@ | `companyUuid` | *String* | :heavy_check_mark: | Unique identifier of the company to which the notification belongs. | | `title` | *String* | :heavy_check_mark: | The title of the notification. This highlights the actionable component of the notification. | | `message` | *String* | :heavy_check_mark: | The message of the notification. This provides additional context for the user and recommends a specific action to resolve the notification. | -| `status` | [Status](../../models/components/Status.md) | :heavy_check_mark: | Represents the notification's status as managed by our system. It is updated based on observable system events and internal business logic, and does not reflect resolution steps taken outside our system. This field is read-only and cannot be modified via the API. | +| `status` | [NotificationStatus](../../models/components/NotificationStatus.md) | :heavy_check_mark: | Represents the notification's status as managed by our system. It is updated based on observable system events and internal business logic, and does not reflect resolution steps taken outside our system. This field is read-only and cannot be modified via the API. | | `category` | *String* | :heavy_check_mark: | The notification's category. | | `actionable` | *boolean* | :heavy_check_mark: | Indicates whether a notification requires action or not. If false, the notification provides critical information only. | | `canBlockPayroll` | *boolean* | :heavy_check_mark: | Indicates whether a notification may block ability to run payroll. If true, we suggest that these notifications are prioritized to your end users. | diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/NotificationStatus.md b/gusto_embedded_v_2026_06_15/docs/models/components/NotificationStatus.md new file mode 100644 index 000000000..c069d5358 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/NotificationStatus.md @@ -0,0 +1,20 @@ +# NotificationStatus + +Represents the notification's status as managed by our system. It is updated based on observable system events and internal business logic, and does not reflect resolution steps taken outside our system. This field is read-only and cannot be modified via the API. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.components.NotificationStatus; + +NotificationStatus value = NotificationStatus.OPEN; +``` + + +## Values + +| Name | Value | +| ---------- | ---------- | +| `OPEN` | open | +| `RESOLVED` | resolved | +| `EXPIRED` | expired | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/OverrideType.md b/gusto_embedded_v_2026_06_15/docs/models/components/OverrideType.md new file mode 100644 index 000000000..0550b0881 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/OverrideType.md @@ -0,0 +1,18 @@ +# OverrideType + +Override mode. Only `one_time` is currently exposed. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.components.OverrideType; + +OverrideType value = OverrideType.ONE_TIME; +``` + + +## Values + +| Name | Value | +| ---------- | ---------- | +| `ONE_TIME` | one_time | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/PartnerManagedCompanyDisassociateResponse.md b/gusto_embedded_v_2026_06_15/docs/models/components/PartnerManagedCompanyDisassociateResponse.md new file mode 100644 index 000000000..72338ea6c --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/PartnerManagedCompanyDisassociateResponse.md @@ -0,0 +1,11 @@ +# PartnerManagedCompanyDisassociateResponse + +The company that was disassociated from the partner's embedded payroll product. + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | -------------------------------------- | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the disassociated company. | +| `companyName` | *String* | :heavy_check_mark: | The name of the disassociated company. | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/PayScheduleAutoPayrollEnablementBlocker.md b/gusto_embedded_v_2026_06_15/docs/models/components/PayScheduleAutoPayrollEnablementBlocker.md index ba659d09f..3f81e5862 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/components/PayScheduleAutoPayrollEnablementBlocker.md +++ b/gusto_embedded_v_2026_06_15/docs/models/components/PayScheduleAutoPayrollEnablementBlocker.md @@ -5,7 +5,7 @@ A single blocker preventing Autopayroll enablement. ## Fields -| Field | Type | Required | Description | -| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `key` | *Optional\* | :heavy_minus_sign: | The blocker type (e.g. employees_not_on_direct_deposit, employees_not_salaried, missing_funding_method, missing_state_tax_requirements, one_day_ach_speed_not_supported, company_suspended, earned_fast_ach_not_met). | -| `metadata` | [Optional\](../../models/components/PayScheduleAutoPayrollEnablementBlockerMetadata.md) | :heavy_minus_sign: | Blocker-specific metadata (e.g. employee_uuids, states). | \ No newline at end of file +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| `key` | *Optional\* | :heavy_minus_sign: | The blocker type. Possible values: employees_not_on_direct_deposit, employees_not_salaried, missing_state_tax_requirements, missing_funding_method, one_day_ach_speed_not_supported, company_suspended, earned_fast_ach_not_met, hourly_employees_missing_default_hours. | +| `metadata` | [Optional\](../../models/components/PayScheduleAutoPayrollEnablementBlockerMetadata.md) | :heavy_minus_sign: | Blocker-specific metadata (e.g. employee_uuids, states). | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/PaymentMethod.md b/gusto_embedded_v_2026_06_15/docs/models/components/PaymentMethod.md index b9acc4d89..0a1056529 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/components/PaymentMethod.md +++ b/gusto_embedded_v_2026_06_15/docs/models/components/PaymentMethod.md @@ -1,11 +1,13 @@ # PaymentMethod +Payment method to filter by. + ## Example Usage ```java import com.gusto.embedded_api_v_2026_06_15.models.components.PaymentMethod; -PaymentMethod value = PaymentMethod.DIRECT_DEPOSIT; +PaymentMethod value = PaymentMethod.CHECK; ``` @@ -13,5 +15,5 @@ PaymentMethod value = PaymentMethod.DIRECT_DEPOSIT; | Name | Value | | ---------------- | ---------------- | -| `DIRECT_DEPOSIT` | Direct Deposit | -| `CHECK` | Check | \ No newline at end of file +| `CHECK` | check | +| `DIRECT_DEPOSIT` | direct_deposit | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/PayrollBatch.md b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollBatch.md new file mode 100644 index 000000000..0ef0a9c6f --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollBatch.md @@ -0,0 +1,13 @@ +# PayrollBatch + +A payroll cancellation batch request. + + +## Fields + +| Field | Type | Required | Description | +| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `uuid` | *String* | :heavy_check_mark: | The unique identifier of the payroll cancellation batch. | +| `idempotencyKey` | *String* | :heavy_check_mark: | The idempotency key provided when creating the batch. | +| `batchAction` | [BatchAction](../../models/components/BatchAction.md) | :heavy_check_mark: | The action being performed on the batch. | +| `status` | [PayrollBatchStatus](../../models/components/PayrollBatchStatus.md) | :heavy_check_mark: | The lifecycle status of the batch request itself. Terminal values are `completed` (processing finished — inspect `results` and `exclusions` for per-payroll outcomes) and `failed` (the batch crashed at the system level; can be retried). This is distinct from the per-payroll `status` returned inside `results[]`. A `completed` batch does not imply every payroll was cancelled. | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/PayrollBatchResults.md b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollBatchResults.md new file mode 100644 index 000000000..35d1b086d --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollBatchResults.md @@ -0,0 +1,19 @@ +# PayrollBatchResults + +A payroll cancellation batch with per-payroll results. + + +## Fields + +| Field | Type | Required | Description | +| --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `uuid` | *String* | :heavy_check_mark: | The unique identifier of the payroll cancellation batch. | +| `idempotencyKey` | *String* | :heavy_check_mark: | The idempotency key provided when creating the batch. | +| `status` | [PayrollBatchResultsStatus](../../models/components/PayrollBatchResultsStatus.md) | :heavy_check_mark: | The lifecycle status of the batch request itself. Terminal values are `completed` (processing finished — inspect `results` and `exclusions` for per-payroll outcomes) and `failed` (the batch crashed at the system level; can be retried). This is distinct from the per-payroll `status` returned inside `results[]`. A `completed` batch does not imply every payroll was cancelled. | +| `submittedAt` | [OffsetDateTime](https://docs.oracle.com/javase/8/docs/api/java/time/OffsetDateTime.html) | :heavy_check_mark: | The timestamp when the batch was submitted. | +| `completedAt` | [OffsetDateTime](https://docs.oracle.com/javase/8/docs/api/java/time/OffsetDateTime.html) | :heavy_minus_sign: | The timestamp when the batch processing completed. | +| `submittedItems` | *JsonNullable\* | :heavy_minus_sign: | The number of payrolls submitted in the batch. | +| `processedItems` | *Optional\* | :heavy_minus_sign: | The number of payrolls processed (cancelled or attempted). Only present once the batch reaches a terminal status. | +| `excludedItems` | *Optional\* | :heavy_minus_sign: | The number of payrolls excluded from processing. Only present once the batch reaches a terminal status. | +| `results` | List\<[Results](../../models/components/Results.md)> | :heavy_minus_sign: | Per-payroll cancellation results. Only present once the batch reaches a terminal status. One entry per authorized payroll. | +| `exclusions` | List\<[Exclusions](../../models/components/Exclusions.md)> | :heavy_minus_sign: | Payrolls that could not be processed, determined at submission time. Only present once the batch reaches a terminal status. Every UUID submitted in the POST batch appears in exactly one of `results` or `exclusions`. | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/PayrollBatchResultsCategory.md b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollBatchResultsCategory.md new file mode 100644 index 000000000..ea226a58a --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollBatchResultsCategory.md @@ -0,0 +1,22 @@ +# PayrollBatchResultsCategory + +Machine-readable category for why the payroll was excluded. +- `not_found`: the payroll does not exist, or is not associated with a company the partner is mapped to +- `duplicate_operation`: the same payroll UUID appeared more than once in the request; only the first occurrence is processed + + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.components.PayrollBatchResultsCategory; + +PayrollBatchResultsCategory value = PayrollBatchResultsCategory.NOT_FOUND; +``` + + +## Values + +| Name | Value | +| --------------------- | --------------------- | +| `NOT_FOUND` | not_found | +| `DUPLICATE_OPERATION` | duplicate_operation | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/PayrollBatchResultsEntityType.md b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollBatchResultsEntityType.md new file mode 100644 index 000000000..87bc068ee --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollBatchResultsEntityType.md @@ -0,0 +1,18 @@ +# PayrollBatchResultsEntityType + +The type of entity this exclusion represents. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.components.PayrollBatchResultsEntityType; + +PayrollBatchResultsEntityType value = PayrollBatchResultsEntityType.PAYROLL; +``` + + +## Values + +| Name | Value | +| --------- | --------- | +| `PAYROLL` | payroll | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/PayrollBatchResultsErrors.md b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollBatchResultsErrors.md new file mode 100644 index 000000000..2923fe276 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollBatchResultsErrors.md @@ -0,0 +1,10 @@ +# PayrollBatchResultsErrors + + +## Fields + +| Field | Type | Required | Description | +| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `errorKey` | *Optional\* | :heavy_minus_sign: | The key identifying the error source. | +| `category` | [Optional\](../../models/components/PayrollBatchResultsResultsCategory.md) | :heavy_minus_sign: | Machine-readable reason the cancellation failed.
    - `not_cancellable`: the payroll is past the point where it can be cancelled
    - `internal_error`: an unexpected error occurred; the request can be retried
    | +| `message` | *Optional\* | :heavy_minus_sign: | Human-readable explanation of the failure. | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/PayrollBatchResultsExclusionsStatus.md b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollBatchResultsExclusionsStatus.md new file mode 100644 index 000000000..1a56790d9 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollBatchResultsExclusionsStatus.md @@ -0,0 +1,18 @@ +# PayrollBatchResultsExclusionsStatus + +Always `failed` for an excluded payroll. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.components.PayrollBatchResultsExclusionsStatus; + +PayrollBatchResultsExclusionsStatus value = PayrollBatchResultsExclusionsStatus.FAILED; +``` + + +## Values + +| Name | Value | +| -------- | -------- | +| `FAILED` | failed | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/PayrollBatchResultsResultsCategory.md b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollBatchResultsResultsCategory.md new file mode 100644 index 000000000..33992032f --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollBatchResultsResultsCategory.md @@ -0,0 +1,22 @@ +# PayrollBatchResultsResultsCategory + +Machine-readable reason the cancellation failed. +- `not_cancellable`: the payroll is past the point where it can be cancelled +- `internal_error`: an unexpected error occurred; the request can be retried + + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.components.PayrollBatchResultsResultsCategory; + +PayrollBatchResultsResultsCategory value = PayrollBatchResultsResultsCategory.NOT_CANCELLABLE; +``` + + +## Values + +| Name | Value | +| ----------------- | ----------------- | +| `NOT_CANCELLABLE` | not_cancellable | +| `INTERNAL_ERROR` | internal_error | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/PayrollBatchResultsResultsStatus.md b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollBatchResultsResultsStatus.md new file mode 100644 index 000000000..e45d104db --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollBatchResultsResultsStatus.md @@ -0,0 +1,22 @@ +# PayrollBatchResultsResultsStatus + +The outcome of cancelling this payroll. A cancel is atomic — there is no per-payroll `partial_success`. +- `success`: the payroll was cancelled, or required no action (already cancelled / never run) +- `failed`: the payroll could not be cancelled; see `errors` + + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.components.PayrollBatchResultsResultsStatus; + +PayrollBatchResultsResultsStatus value = PayrollBatchResultsResultsStatus.SUCCESS; +``` + + +## Values + +| Name | Value | +| --------- | --------- | +| `SUCCESS` | success | +| `FAILED` | failed | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/PayrollBatchResultsStatus.md b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollBatchResultsStatus.md new file mode 100644 index 000000000..de2268644 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollBatchResultsStatus.md @@ -0,0 +1,21 @@ +# PayrollBatchResultsStatus + +The lifecycle status of the batch request itself. Terminal values are `completed` (processing finished — inspect `results` and `exclusions` for per-payroll outcomes) and `failed` (the batch crashed at the system level; can be retried). This is distinct from the per-payroll `status` returned inside `results[]`. A `completed` batch does not imply every payroll was cancelled. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.components.PayrollBatchResultsStatus; + +PayrollBatchResultsStatus value = PayrollBatchResultsStatus.PENDING; +``` + + +## Values + +| Name | Value | +| ------------ | ------------ | +| `PENDING` | pending | +| `PROCESSING` | processing | +| `COMPLETED` | completed | +| `FAILED` | failed | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/PayrollBatchStatus.md b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollBatchStatus.md new file mode 100644 index 000000000..439ecae76 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollBatchStatus.md @@ -0,0 +1,21 @@ +# PayrollBatchStatus + +The lifecycle status of the batch request itself. Terminal values are `completed` (processing finished — inspect `results` and `exclusions` for per-payroll outcomes) and `failed` (the batch crashed at the system level; can be retried). This is distinct from the per-payroll `status` returned inside `results[]`. A `completed` batch does not imply every payroll was cancelled. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.components.PayrollBatchStatus; + +PayrollBatchStatus value = PayrollBatchStatus.PENDING; +``` + + +## Values + +| Name | Value | +| ------------ | ------------ | +| `PENDING` | pending | +| `PROCESSING` | processing | +| `COMPLETED` | completed | +| `FAILED` | failed | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/PayrollDigest.md b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollDigest.md index 0322bb856..053c53bd2 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/components/PayrollDigest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollDigest.md @@ -9,5 +9,5 @@ A payroll digest batch request. | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `uuid` | *String* | :heavy_check_mark: | The unique identifier of the payroll digest batch. | | `idempotencyKey` | *String* | :heavy_check_mark: | The idempotency key provided when creating the batch. | -| `batchAction` | [BatchAction](../../models/components/BatchAction.md) | :heavy_check_mark: | The action being performed on the batch. | +| `batchAction` | [PayrollDigestBatchAction](../../models/components/PayrollDigestBatchAction.md) | :heavy_check_mark: | The action being performed on the batch. | | `status` | [PayrollDigestStatus](../../models/components/PayrollDigestStatus.md) | :heavy_check_mark: | The lifecycle status of the batch request itself. Terminal values are `completed` (processing finished — inspect `results` and `exclusions` for per-company outcomes) and `failed` (request failed; can be retried). This is distinct from the per-company `status` returned inside `results[]` and `exclusions[]`. | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/PayrollDigestBatchAction.md b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollDigestBatchAction.md new file mode 100644 index 000000000..3fe909131 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollDigestBatchAction.md @@ -0,0 +1,18 @@ +# PayrollDigestBatchAction + +The action being performed on the batch. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.components.PayrollDigestBatchAction; + +PayrollDigestBatchAction value = PayrollDigestBatchAction.CREATE; +``` + + +## Values + +| Name | Value | +| -------- | -------- | +| `CREATE` | create | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/PayrollDigestResultsBlockers.md b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollDigestResultsBlockers.md new file mode 100644 index 000000000..0e66251ca --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollDigestResultsBlockers.md @@ -0,0 +1,9 @@ +# PayrollDigestResultsBlockers + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------------- | ------------------------------------------------------------- | ------------------------------------------------------------- | ------------------------------------------------------------- | +| `type` | *Optional\* | :heavy_minus_sign: | A machine-readable blocker key (e.g. `missing_bank_account`). | +| `description` | *Optional\* | :heavy_minus_sign: | Human-readable description of the blocker. | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/PayrollDigestResultsResults.md b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollDigestResultsResults.md index 3b98f1941..dd80d9d7c 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/components/PayrollDigestResultsResults.md +++ b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollDigestResultsResults.md @@ -10,5 +10,5 @@ | `uuid` | *Optional\* | :heavy_minus_sign: | The UUID of the company. | | `name` | *Optional\* | :heavy_minus_sign: | The legal/display name of the company. | | `status` | [Optional\](../../models/components/PayrollDigestResultsResultsStatus.md) | :heavy_minus_sign: | The status of this company's digest computation. | -| `blockers` | List\<[Blockers](../../models/components/Blockers.md)> | :heavy_minus_sign: | Reasons the company cannot currently run payroll. Applies to every payroll in this company's `payrolls` array — blockers are evaluated at the company level, not per payroll. Empty when there are no blockers. | +| `blockers` | List\<[PayrollDigestResultsBlockers](../../models/components/PayrollDigestResultsBlockers.md)> | :heavy_minus_sign: | Reasons the company cannot currently run payroll. Applies to every payroll in this company's `payrolls` array — blockers are evaluated at the company level, not per payroll. Empty when there are no blockers. | | `payrolls` | List\<[Payrolls](../../models/components/Payrolls.md)> | :heavy_minus_sign: | Payrolls for this company within the digest date window (7 days past, 30–60 days future). May be empty. | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/PayrollEmployeeCompensationsType.md b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollEmployeeCompensationsType.md index 2f281425e..3f72a701b 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/components/PayrollEmployeeCompensationsType.md +++ b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollEmployeeCompensationsType.md @@ -3,21 +3,22 @@ ## Fields -| Field | Type | Required | Description | -| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `employeeUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the employee. | -| `excluded` | *Optional\* | :heavy_minus_sign: | This employee will be excluded (skipped) from payroll calculation and will not be paid for the payroll. Cancelling a payroll would reset all employees' excluded back to false. | -| `firstName` | *JsonNullable\* | :heavy_minus_sign: | The first name of the employee. Requires `employees:read` scope. | -| `preferredFirstName` | *JsonNullable\* | :heavy_minus_sign: | The preferred first name of the employee. Requires `employees:read` scope. | -| `lastName` | *JsonNullable\* | :heavy_minus_sign: | The last name of the employee. Requires `employees:read` scope. | -| `grossPay` | *JsonNullable\* | :heavy_minus_sign: | The employee's gross pay (as a string-formatted decimal, e.g. "1234.56"), equal to regular wages + cash tips + payroll tips + any other additional earnings, excluding imputed income. This value is only available for processed payrolls. | -| `netPay` | *JsonNullable\* | :heavy_minus_sign: | The employee's net pay (as a string-formatted decimal, e.g. "1234.56"), equal to gross_pay - employee taxes - employee deductions or garnishments - cash tips. This value is only available for processed payrolls. | -| `checkAmount` | *JsonNullable\* | :heavy_minus_sign: | The employee's check amount (as a string-formatted decimal, e.g. "1234.56"), equal to net_pay + reimbursements. This value is only available for processed payrolls. | -| `paymentMethod` | [JsonNullable\](../../models/components/PayrollEmployeeCompensationsTypePaymentMethod.md) | :heavy_minus_sign: | The employee's compensation payment method. Is *only* `Historical` when retrieving external payrolls initially run outside of Gusto, then put into Gusto. | -| `memo` | *JsonNullable\* | :heavy_minus_sign: | Custom text that will be printed as a personal note to the employee on a paystub. | -| `fixedCompensations` | List\<[FixedCompensations](../../models/components/FixedCompensations.md)> | :heavy_minus_sign: | An array of fixed compensations for the employee. Fixed compensations include tips, bonuses, and one time reimbursements. If this payroll has been processed, only fixed compensations with a value greater than 0.00 are returned. For an unprocessed payroll, all active fixed compensations are returned. | -| `hourlyCompensations` | List\<[HourlyCompensations](../../models/components/HourlyCompensations.md)> | :heavy_minus_sign: | An array of hourly compensations for the employee. Hourly compensations include regular, overtime, and double overtime hours. If this payroll has been processed, only hourly compensations with a value greater than 0.00 are returned. For an unprocessed payroll, all active hourly compensations are returned. | -| `paidTimeOff` | List\<[PayrollEmployeeCompensationsTypePaidTimeOff](../../models/components/PayrollEmployeeCompensationsTypePaidTimeOff.md)> | :heavy_minus_sign: | An array of all paid time off the employee is eligible for this pay period. | -| `reimbursements` | List\<[Reimbursements](../../models/components/Reimbursements.md)> | :heavy_minus_sign: | An array of reimbursements for the employee. | -| `version` | *Optional\* | :heavy_minus_sign: | The current version of this employee compensation. This field is only available for prepared payrolls. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. | -| `deductions` | List\<[Deductions](../../models/components/Deductions.md)> | :heavy_minus_sign: | An array of deductions for the employee. This field is included by default for regular payrolls in version `v2025-06-15` and later. | \ No newline at end of file +| Field | Type | Required | Description | +| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `employeeUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the employee. | +| `excluded` | *Optional\* | :heavy_minus_sign: | This employee will be excluded (skipped) from payroll calculation and will not be paid for the payroll. Cancelling a payroll would reset all employees' excluded back to false. | +| `firstName` | *JsonNullable\* | :heavy_minus_sign: | The first name of the employee. Requires `employees:read` scope. | +| `preferredFirstName` | *JsonNullable\* | :heavy_minus_sign: | The preferred first name of the employee. Requires `employees:read` scope. | +| `lastName` | *JsonNullable\* | :heavy_minus_sign: | The last name of the employee. Requires `employees:read` scope. | +| `grossPay` | *JsonNullable\* | :heavy_minus_sign: | The employee's gross pay (as a string-formatted decimal, e.g. "1234.56"), equal to regular wages + cash tips + payroll tips + any other additional earnings, excluding imputed income. This value is only available for processed payrolls. | +| `netPay` | *JsonNullable\* | :heavy_minus_sign: | The employee's net pay (as a string-formatted decimal, e.g. "1234.56"), equal to gross_pay - employee taxes - employee deductions or garnishments - cash tips. This value is only available for processed payrolls. | +| `checkAmount` | *JsonNullable\* | :heavy_minus_sign: | The employee's check amount (as a string-formatted decimal, e.g. "1234.56"), equal to net_pay + reimbursements. This value is only available for processed payrolls. | +| `paymentMethod` | [JsonNullable\](../../models/components/PayrollEmployeeCompensationsTypePaymentMethod.md) | :heavy_minus_sign: | The employee's compensation payment method. Is *only* `Historical` when retrieving external payrolls initially run outside of Gusto, then put into Gusto. | +| `memo` | *JsonNullable\* | :heavy_minus_sign: | Custom text that will be printed as a personal note to the employee on a paystub. | +| `fixedCompensations` | List\<[FixedCompensations](../../models/components/FixedCompensations.md)> | :heavy_minus_sign: | An array of fixed compensations for the employee. Fixed compensations include tips and bonuses. On regular payrolls, reimbursements are sent via the dedicated `reimbursements` array instead. Off-cycle payrolls continue to include reimbursements in `fixed_compensations`. If this payroll has been processed, only fixed compensations with a value greater than 0.00 are returned. For an unprocessed payroll, all active fixed compensations are returned. | +| `hourlyCompensations` | List\<[HourlyCompensations](../../models/components/HourlyCompensations.md)> | :heavy_minus_sign: | An array of hourly compensations for the employee. Hourly compensations include regular, overtime, and double overtime hours. If this payroll has been processed, only hourly compensations with a value greater than 0.00 are returned. For an unprocessed payroll, all active hourly compensations are returned. | +| `paidTimeOff` | List\<[PayrollEmployeeCompensationsTypePaidTimeOff](../../models/components/PayrollEmployeeCompensationsTypePaidTimeOff.md)> | :heavy_minus_sign: | An array of all paid time off the employee is eligible for this pay period. | +| `reimbursements` | List\<[Reimbursements](../../models/components/Reimbursements.md)> | :heavy_minus_sign: | An array of reimbursements for the employee. | +| `customWithholdings` | [Optional\](../../models/components/CustomWithholdings.md) | :heavy_minus_sign: | The one-time custom withholding overrides applied to this payroll for this employee.
    `federal` is null when no federal one-time override is set; `state` is an empty
    array when no state one-time overrides are set.
    | +| `version` | *Optional\* | :heavy_minus_sign: | The current version of this employee compensation. This field is only available for prepared payrolls. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. | +| `deductions` | List\<[Deductions](../../models/components/Deductions.md)> | :heavy_minus_sign: | An array of deductions for the employee. This field is included by default for regular payrolls in version `v2025-06-15` and later. | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/PayrollEmployeeCompensationsTypeAmountType.md b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollEmployeeCompensationsTypeAmountType.md new file mode 100644 index 000000000..52c4c1d92 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollEmployeeCompensationsTypeAmountType.md @@ -0,0 +1,19 @@ +# PayrollEmployeeCompensationsTypeAmountType + +How to interpret the amount. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.components.PayrollEmployeeCompensationsTypeAmountType; + +PayrollEmployeeCompensationsTypeAmountType value = PayrollEmployeeCompensationsTypeAmountType.FIXED; +``` + + +## Values + +| Name | Value | +| --------- | --------- | +| `FIXED` | fixed | +| `PERCENT` | percent | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/PayrollEmployeeCompensationsTypeCustomWithholdingsAmountType.md b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollEmployeeCompensationsTypeCustomWithholdingsAmountType.md new file mode 100644 index 000000000..3cea8bd70 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollEmployeeCompensationsTypeCustomWithholdingsAmountType.md @@ -0,0 +1,19 @@ +# PayrollEmployeeCompensationsTypeCustomWithholdingsAmountType + +How to interpret the amount. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.components.PayrollEmployeeCompensationsTypeCustomWithholdingsAmountType; + +PayrollEmployeeCompensationsTypeCustomWithholdingsAmountType value = PayrollEmployeeCompensationsTypeCustomWithholdingsAmountType.FIXED; +``` + + +## Values + +| Name | Value | +| --------- | --------- | +| `FIXED` | fixed | +| `PERCENT` | percent | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/PayrollEmployeeCompensationsTypeOverrideType.md b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollEmployeeCompensationsTypeOverrideType.md new file mode 100644 index 000000000..e36ef499d --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollEmployeeCompensationsTypeOverrideType.md @@ -0,0 +1,18 @@ +# PayrollEmployeeCompensationsTypeOverrideType + +Override mode. Only `one_time` is currently exposed. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.components.PayrollEmployeeCompensationsTypeOverrideType; + +PayrollEmployeeCompensationsTypeOverrideType value = PayrollEmployeeCompensationsTypeOverrideType.ONE_TIME; +``` + + +## Values + +| Name | Value | +| ---------- | ---------- | +| `ONE_TIME` | one_time | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/PayrollShowBenefits.md b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollShowBenefits.md index 2eb21a6cd..d64286296 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/components/PayrollShowBenefits.md +++ b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollShowBenefits.md @@ -6,6 +6,6 @@ | Field | Type | Required | Description | | --------------------- | --------------------- | --------------------- | --------------------- | | `name` | *Optional\* | :heavy_minus_sign: | N/A | -| `employeeDeduction` | *Optional\* | :heavy_minus_sign: | N/A | -| `companyContribution` | *Optional\* | :heavy_minus_sign: | N/A | +| `employeeDeduction` | *Optional\* | :heavy_minus_sign: | N/A | +| `companyContribution` | *Optional\* | :heavy_minus_sign: | N/A | | `imputed` | *Optional\* | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/PayrollShowCustomWithholdings.md b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollShowCustomWithholdings.md new file mode 100644 index 000000000..2d3858464 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollShowCustomWithholdings.md @@ -0,0 +1,14 @@ +# PayrollShowCustomWithholdings + +The one-time custom withholding overrides applied to this payroll for this employee. +`federal` is null when no federal one-time override is set; `state` is an empty +array when no state one-time overrides are set. + + + +## Fields + +| Field | Type | Required | Description | +| ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------- | +| `federal` | [JsonNullable\](../../models/components/PayrollShowFederal.md) | :heavy_minus_sign: | Federal one-time custom withholding override applied to this payroll. | +| `state` | List\<[PayrollShowState](../../models/components/PayrollShowState.md)> | :heavy_minus_sign: | State one-time custom withholding overrides applied to this payroll, one entry per state field. | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/PayrollShowDeductions.md b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollShowDeductions.md index 213639757..08419aa03 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/components/PayrollShowDeductions.md +++ b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollShowDeductions.md @@ -6,7 +6,7 @@ | Field | Type | Required | Description | | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------ | | `name` | *Optional\* | :heavy_minus_sign: | The name of the deduction. | -| `amount` | *Optional\* | :heavy_minus_sign: | The amount of the deduction for the pay period. | +| `amount` | *Optional\* | :heavy_minus_sign: | The amount of the deduction for the pay period. | | `amountType` | [Optional\](../../models/components/PayrollShowAmountType.md) | :heavy_minus_sign: | The amount type of the deduction for the pay period. Only present for unprocessed payrolls. | | `uuid` | *Optional\* | :heavy_minus_sign: | The UUID of the deduction. Only present for unprocessed payrolls. | | `updatableViaPayroll` | *Optional\* | :heavy_minus_sign: | Whether the deduction can be updated via the payroll update endpoint. Only present for unprocessed payrolls. | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/PayrollShowEmployeeCompensationsAmountType.md b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollShowEmployeeCompensationsAmountType.md new file mode 100644 index 000000000..ec4832dd2 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollShowEmployeeCompensationsAmountType.md @@ -0,0 +1,19 @@ +# PayrollShowEmployeeCompensationsAmountType + +How to interpret the amount. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.components.PayrollShowEmployeeCompensationsAmountType; + +PayrollShowEmployeeCompensationsAmountType value = PayrollShowEmployeeCompensationsAmountType.FIXED; +``` + + +## Values + +| Name | Value | +| --------- | --------- | +| `FIXED` | fixed | +| `PERCENT` | percent | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/PayrollShowEmployeeCompensationsCustomWithholdingsAmountType.md b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollShowEmployeeCompensationsCustomWithholdingsAmountType.md new file mode 100644 index 000000000..acc51d938 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollShowEmployeeCompensationsCustomWithholdingsAmountType.md @@ -0,0 +1,19 @@ +# PayrollShowEmployeeCompensationsCustomWithholdingsAmountType + +How to interpret the amount. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.components.PayrollShowEmployeeCompensationsCustomWithholdingsAmountType; + +PayrollShowEmployeeCompensationsCustomWithholdingsAmountType value = PayrollShowEmployeeCompensationsCustomWithholdingsAmountType.FIXED; +``` + + +## Values + +| Name | Value | +| --------- | --------- | +| `FIXED` | fixed | +| `PERCENT` | percent | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/PayrollShowEmployeeCompensationsOverrideType.md b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollShowEmployeeCompensationsOverrideType.md new file mode 100644 index 000000000..5be9343b5 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollShowEmployeeCompensationsOverrideType.md @@ -0,0 +1,18 @@ +# PayrollShowEmployeeCompensationsOverrideType + +Override mode. Only `one_time` is currently exposed. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.components.PayrollShowEmployeeCompensationsOverrideType; + +PayrollShowEmployeeCompensationsOverrideType value = PayrollShowEmployeeCompensationsOverrideType.ONE_TIME; +``` + + +## Values + +| Name | Value | +| ---------- | ---------- | +| `ONE_TIME` | one_time | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/PayrollShowFederal.md b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollShowFederal.md new file mode 100644 index 000000000..bbf1e6115 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollShowFederal.md @@ -0,0 +1,12 @@ +# PayrollShowFederal + +Federal one-time custom withholding override applied to this payroll. + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | +| `overrideType` | [Optional\](../../models/components/PayrollShowEmployeeCompensationsOverrideType.md) | :heavy_minus_sign: | Override mode. Only `one_time` is currently exposed. | +| `amount` | *Optional\* | :heavy_minus_sign: | The amount that was withheld for this payroll. | +| `amountType` | [Optional\](../../models/components/PayrollShowEmployeeCompensationsAmountType.md) | :heavy_minus_sign: | How to interpret the amount. | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/PayrollShowOverrideType.md b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollShowOverrideType.md new file mode 100644 index 000000000..00881c6f9 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollShowOverrideType.md @@ -0,0 +1,18 @@ +# PayrollShowOverrideType + +Override mode. Only `one_time` is currently exposed. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.components.PayrollShowOverrideType; + +PayrollShowOverrideType value = PayrollShowOverrideType.ONE_TIME; +``` + + +## Values + +| Name | Value | +| ---------- | ---------- | +| `ONE_TIME` | one_time | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/PayrollShowState.md b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollShowState.md new file mode 100644 index 000000000..4b83ec0bd --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollShowState.md @@ -0,0 +1,11 @@ +# PayrollShowState + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| `employeeStateFieldUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the EmployeeStateField this withholding applies to. | +| `overrideType` | [Optional\](../../models/components/PayrollShowOverrideType.md) | :heavy_minus_sign: | Override mode. Only `one_time` is currently exposed. | +| `amount` | *Optional\* | :heavy_minus_sign: | The amount that was withheld for this payroll. | +| `amountType` | [Optional\](../../models/components/PayrollShowEmployeeCompensationsCustomWithholdingsAmountType.md) | :heavy_minus_sign: | How to interpret the amount. | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/PayrollShowTaxes.md b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollShowTaxes.md index aa2239758..5f59abaa4 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/components/PayrollShowTaxes.md +++ b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollShowTaxes.md @@ -7,4 +7,4 @@ | ------------------ | ------------------ | ------------------ | ------------------ | | `name` | *String* | :heavy_check_mark: | N/A | | `employer` | *boolean* | :heavy_check_mark: | N/A | -| `amount` | *double* | :heavy_check_mark: | N/A | \ No newline at end of file +| `amount` | *String* | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/PayrollUnprocessedEmployeeCompensationsType.md b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollUnprocessedEmployeeCompensationsType.md index 6ff9286dc..21ab4072b 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/components/PayrollUnprocessedEmployeeCompensationsType.md +++ b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollUnprocessedEmployeeCompensationsType.md @@ -3,20 +3,21 @@ ## Fields -| Field | Type | Required | Description | -| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `employeeUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the employee. | -| `excluded` | *Optional\* | :heavy_minus_sign: | This employee will be excluded (skipped) from payroll calculation and will not be paid for the payroll. Cancelling a payroll would reset all employees' excluded back to false. | -| `firstName` | *JsonNullable\* | :heavy_minus_sign: | The first name of the employee. Requires `employees:read` scope. | -| `preferredFirstName` | *JsonNullable\* | :heavy_minus_sign: | The preferred first name of the employee. Requires `employees:read` scope. | -| `lastName` | *JsonNullable\* | :heavy_minus_sign: | The last name of the employee. Requires `employees:read` scope. | -| `grossPay` | *JsonNullable\* | :heavy_minus_sign: | The employee's gross pay (as a string-formatted decimal, e.g. "1234.56"), equal to regular wages + cash tips + payroll tips + any other additional earnings, excluding imputed income. This value is only available for processed payrolls. | -| `netPay` | *JsonNullable\* | :heavy_minus_sign: | The employee's net pay (as a string-formatted decimal, e.g. "1234.56"), equal to gross_pay - employee taxes - employee deductions or garnishments - cash tips. This value is only available for processed payrolls. | -| `checkAmount` | *JsonNullable\* | :heavy_minus_sign: | The employee's check amount (as a string-formatted decimal, e.g. "1234.56"), equal to net_pay + reimbursements. This value is only available for processed payrolls. | -| `paymentMethod` | [JsonNullable\](../../models/components/PayrollUnprocessedEmployeeCompensationsTypePaymentMethod.md) | :heavy_minus_sign: | The employee's compensation payment method. Is *only* `Historical` when retrieving external payrolls initially run outside of Gusto, then put into Gusto. | -| `memo` | *JsonNullable\* | :heavy_minus_sign: | Custom text that will be printed as a personal note to the employee on a paystub. | -| `fixedCompensations` | List\<[PayrollUnprocessedEmployeeCompensationsTypeFixedCompensations](../../models/components/PayrollUnprocessedEmployeeCompensationsTypeFixedCompensations.md)> | :heavy_minus_sign: | An array of fixed compensations for the employee. Fixed compensations include tips, bonuses, and one time reimbursements. If this payroll has been processed, only fixed compensations with a value greater than 0.00 are returned. For an unprocessed payroll, all active fixed compensations are returned. | -| `hourlyCompensations` | List\<[PayrollUnprocessedEmployeeCompensationsTypeHourlyCompensations](../../models/components/PayrollUnprocessedEmployeeCompensationsTypeHourlyCompensations.md)> | :heavy_minus_sign: | An array of hourly compensations for the employee. Hourly compensations include regular, overtime, and double overtime hours. If this payroll has been processed, only hourly compensations with a value greater than 0.00 are returned. For an unprocessed payroll, all active hourly compensations are returned. | -| `paidTimeOff` | List\<[PayrollUnprocessedEmployeeCompensationsTypePaidTimeOff](../../models/components/PayrollUnprocessedEmployeeCompensationsTypePaidTimeOff.md)> | :heavy_minus_sign: | An array of all paid time off the employee is eligible for this pay period. | -| `reimbursements` | List\<[PayrollUnprocessedEmployeeCompensationsTypeReimbursements](../../models/components/PayrollUnprocessedEmployeeCompensationsTypeReimbursements.md)> | :heavy_minus_sign: | An array of reimbursements for the employee. | -| `version` | *Optional\* | :heavy_minus_sign: | The current version of this employee compensation. This field is only available for prepared payrolls. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/api-fundamentals#optimistic-version-control) for information on how to use this field. | \ No newline at end of file +| Field | Type | Required | Description | +| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `employeeUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the employee. | +| `excluded` | *Optional\* | :heavy_minus_sign: | This employee will be excluded (skipped) from payroll calculation and will not be paid for the payroll. Cancelling a payroll would reset all employees' excluded back to false. | +| `firstName` | *JsonNullable\* | :heavy_minus_sign: | The first name of the employee. Requires `employees:read` scope. | +| `preferredFirstName` | *JsonNullable\* | :heavy_minus_sign: | The preferred first name of the employee. Requires `employees:read` scope. | +| `lastName` | *JsonNullable\* | :heavy_minus_sign: | The last name of the employee. Requires `employees:read` scope. | +| `grossPay` | *JsonNullable\* | :heavy_minus_sign: | The employee's gross pay (as a string-formatted decimal, e.g. "1234.56"), equal to regular wages + cash tips + payroll tips + any other additional earnings, excluding imputed income. This value is only available for processed payrolls. | +| `netPay` | *JsonNullable\* | :heavy_minus_sign: | The employee's net pay (as a string-formatted decimal, e.g. "1234.56"), equal to gross_pay - employee taxes - employee deductions or garnishments - cash tips. This value is only available for processed payrolls. | +| `checkAmount` | *JsonNullable\* | :heavy_minus_sign: | The employee's check amount (as a string-formatted decimal, e.g. "1234.56"), equal to net_pay + reimbursements. This value is only available for processed payrolls. | +| `paymentMethod` | [JsonNullable\](../../models/components/PayrollUnprocessedEmployeeCompensationsTypePaymentMethod.md) | :heavy_minus_sign: | The employee's compensation payment method. Is *only* `Historical` when retrieving external payrolls initially run outside of Gusto, then put into Gusto. | +| `memo` | *JsonNullable\* | :heavy_minus_sign: | Custom text that will be printed as a personal note to the employee on a paystub. | +| `fixedCompensations` | List\<[PayrollUnprocessedEmployeeCompensationsTypeFixedCompensations](../../models/components/PayrollUnprocessedEmployeeCompensationsTypeFixedCompensations.md)> | :heavy_minus_sign: | An array of fixed compensations for the employee. Fixed compensations include tips and bonuses. On regular payrolls, reimbursements are sent via the dedicated `reimbursements` array instead. Off-cycle payrolls continue to include reimbursements in `fixed_compensations`. If this payroll has been processed, only fixed compensations with a value greater than 0.00 are returned. For an unprocessed payroll, all active fixed compensations are returned. | +| `hourlyCompensations` | List\<[PayrollUnprocessedEmployeeCompensationsTypeHourlyCompensations](../../models/components/PayrollUnprocessedEmployeeCompensationsTypeHourlyCompensations.md)> | :heavy_minus_sign: | An array of hourly compensations for the employee. Hourly compensations include regular, overtime, and double overtime hours. If this payroll has been processed, only hourly compensations with a value greater than 0.00 are returned. For an unprocessed payroll, all active hourly compensations are returned. | +| `paidTimeOff` | List\<[PayrollUnprocessedEmployeeCompensationsTypePaidTimeOff](../../models/components/PayrollUnprocessedEmployeeCompensationsTypePaidTimeOff.md)> | :heavy_minus_sign: | An array of all paid time off the employee is eligible for this pay period. | +| `reimbursements` | List\<[PayrollUnprocessedEmployeeCompensationsTypeReimbursements](../../models/components/PayrollUnprocessedEmployeeCompensationsTypeReimbursements.md)> | :heavy_minus_sign: | An array of reimbursements for the employee. | +| `customWithholdings` | [Optional\](../../models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings.md) | :heavy_minus_sign: | The one-time custom withholding overrides applied to this payroll for this employee.
    `federal` is null when no federal one-time override is set; `state` is an empty
    array when no state one-time overrides are set.
    | +| `version` | *Optional\* | :heavy_minus_sign: | The current version of this employee compensation. This field is only available for prepared payrolls. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/api-fundamentals#optimistic-version-control) for information on how to use this field. | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeAmountType.md b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeAmountType.md new file mode 100644 index 000000000..26bd5bd64 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeAmountType.md @@ -0,0 +1,19 @@ +# PayrollUnprocessedEmployeeCompensationsTypeAmountType + +How to interpret the amount. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.components.PayrollUnprocessedEmployeeCompensationsTypeAmountType; + +PayrollUnprocessedEmployeeCompensationsTypeAmountType value = PayrollUnprocessedEmployeeCompensationsTypeAmountType.FIXED; +``` + + +## Values + +| Name | Value | +| --------- | --------- | +| `FIXED` | fixed | +| `PERCENT` | percent | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings.md b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings.md new file mode 100644 index 000000000..c90466649 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings.md @@ -0,0 +1,14 @@ +# PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings + +The one-time custom withholding overrides applied to this payroll for this employee. +`federal` is null when no federal one-time override is set; `state` is an empty +array when no state one-time overrides are set. + + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- | +| `federal` | [JsonNullable\](../../models/components/PayrollUnprocessedEmployeeCompensationsTypeFederal.md) | :heavy_minus_sign: | Federal one-time custom withholding override applied to this payroll. | +| `state` | List\<[PayrollUnprocessedEmployeeCompensationsTypeState](../../models/components/PayrollUnprocessedEmployeeCompensationsTypeState.md)> | :heavy_minus_sign: | State one-time custom withholding overrides applied to this payroll, one entry per state field. | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsAmountType.md b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsAmountType.md new file mode 100644 index 000000000..f4a2333a0 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsAmountType.md @@ -0,0 +1,19 @@ +# PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsAmountType + +How to interpret the amount. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.components.PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsAmountType; + +PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsAmountType value = PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsAmountType.FIXED; +``` + + +## Values + +| Name | Value | +| --------- | --------- | +| `FIXED` | fixed | +| `PERCENT` | percent | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsOverrideType.md b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsOverrideType.md new file mode 100644 index 000000000..b87bef685 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsOverrideType.md @@ -0,0 +1,18 @@ +# PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsOverrideType + +Override mode. Only `one_time` is currently exposed. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.components.PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsOverrideType; + +PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsOverrideType value = PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsOverrideType.ONE_TIME; +``` + + +## Values + +| Name | Value | +| ---------- | ---------- | +| `ONE_TIME` | one_time | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeFederal.md b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeFederal.md new file mode 100644 index 000000000..29df2d93a --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeFederal.md @@ -0,0 +1,12 @@ +# PayrollUnprocessedEmployeeCompensationsTypeFederal + +Federal one-time custom withholding override applied to this payroll. + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `overrideType` | [Optional\](../../models/components/PayrollUnprocessedEmployeeCompensationsTypeOverrideType.md) | :heavy_minus_sign: | Override mode. Only `one_time` is currently exposed. | +| `amount` | *Optional\* | :heavy_minus_sign: | The amount that was withheld for this payroll. | +| `amountType` | [Optional\](../../models/components/PayrollUnprocessedEmployeeCompensationsTypeAmountType.md) | :heavy_minus_sign: | How to interpret the amount. | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeOverrideType.md b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeOverrideType.md new file mode 100644 index 000000000..043082abf --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeOverrideType.md @@ -0,0 +1,18 @@ +# PayrollUnprocessedEmployeeCompensationsTypeOverrideType + +Override mode. Only `one_time` is currently exposed. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.components.PayrollUnprocessedEmployeeCompensationsTypeOverrideType; + +PayrollUnprocessedEmployeeCompensationsTypeOverrideType value = PayrollUnprocessedEmployeeCompensationsTypeOverrideType.ONE_TIME; +``` + + +## Values + +| Name | Value | +| ---------- | ---------- | +| `ONE_TIME` | one_time | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeState.md b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeState.md new file mode 100644 index 000000000..8af5caa60 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollUnprocessedEmployeeCompensationsTypeState.md @@ -0,0 +1,11 @@ +# PayrollUnprocessedEmployeeCompensationsTypeState + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `employeeStateFieldUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the EmployeeStateField this withholding applies to. | +| `overrideType` | [Optional\](../../models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsOverrideType.md) | :heavy_minus_sign: | Override mode. Only `one_time` is currently exposed. | +| `amount` | *Optional\* | :heavy_minus_sign: | The amount that was withheld for this payroll. | +| `amountType` | [Optional\](../../models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsAmountType.md) | :heavy_minus_sign: | How to interpret the amount. | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/PayrollUpdateCustomWithholdings.md b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollUpdateCustomWithholdings.md new file mode 100644 index 000000000..663fa43ab --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollUpdateCustomWithholdings.md @@ -0,0 +1,14 @@ +# PayrollUpdateCustomWithholdings + +Optional per-payroll one-time custom withholdings for federal and/or state income tax. +When provided, the supplied override takes precedence over any persistent withholding schedule for this run. +This field is in limited release; if your application does not have access, requests including it are silently ignored. + + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | +| `federal` | [Optional\](../../models/components/PayrollUpdateFederal.md) | :heavy_minus_sign: | Federal one-time custom withholding override. | +| `state` | List\<[PayrollUpdateState](../../models/components/PayrollUpdateState.md)> | :heavy_minus_sign: | State one-time custom withholding overrides, one entry per state field. | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/PayrollUpdateEmployeeCompensations.md b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollUpdateEmployeeCompensations.md index aca72c1b6..3d8bf7689 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/components/PayrollUpdateEmployeeCompensations.md +++ b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollUpdateEmployeeCompensations.md @@ -3,15 +3,16 @@ ## Fields -| Field | Type | Required | Description | -| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `employeeUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the employee. | -| `version` | *Optional\* | :heavy_minus_sign: | The current version of this employee compensation from the prepared payroll. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. | -| `excluded` | *Optional\* | :heavy_minus_sign: | This employee will be excluded from payroll calculation and will not be paid for the payroll. | -| `paymentMethod` | [Optional\](../../models/components/PayrollUpdatePaymentMethod.md) | :heavy_minus_sign: | The employee's compensation payment method. Invalid values will be ignored. | -| `memo` | *Optional\* | :heavy_minus_sign: | Custom text that will be printed as a personal note to the employee on a paystub. | -| `fixedCompensations` | List\<[PayrollUpdateFixedCompensations](../../models/components/PayrollUpdateFixedCompensations.md)> | :heavy_minus_sign: | N/A | -| `hourlyCompensations` | List\<[PayrollUpdateHourlyCompensations](../../models/components/PayrollUpdateHourlyCompensations.md)> | :heavy_minus_sign: | N/A | -| `deductions` | List\<[PayrollUpdateDeductions](../../models/components/PayrollUpdateDeductions.md)> | :heavy_minus_sign: | N/A | -| `paidTimeOff` | List\<[PayrollUpdatePaidTimeOff](../../models/components/PayrollUpdatePaidTimeOff.md)> | :heavy_minus_sign: | An array of all paid time off the employee is eligible for this pay period. Each paid time off object can be the name or the specific policy_uuid. | -| `reimbursements` | List\<[PayrollUpdateReimbursements](../../models/components/PayrollUpdateReimbursements.md)> | :heavy_minus_sign: | An array of reimbursements for the employee. | \ No newline at end of file +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `employeeUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the employee. | +| `version` | *Optional\* | :heavy_minus_sign: | The current version of this employee compensation from the prepared payroll. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for information on how to use this field. | +| `excluded` | *Optional\* | :heavy_minus_sign: | This employee will be excluded from payroll calculation and will not be paid for the payroll. | +| `paymentMethod` | [Optional\](../../models/components/PayrollUpdatePaymentMethod.md) | :heavy_minus_sign: | The employee's compensation payment method. Invalid values will be ignored. | +| `memo` | *Optional\* | :heavy_minus_sign: | Custom text that will be printed as a personal note to the employee on a paystub. | +| `fixedCompensations` | List\<[PayrollUpdateFixedCompensations](../../models/components/PayrollUpdateFixedCompensations.md)> | :heavy_minus_sign: | N/A | +| `hourlyCompensations` | List\<[PayrollUpdateHourlyCompensations](../../models/components/PayrollUpdateHourlyCompensations.md)> | :heavy_minus_sign: | N/A | +| `deductions` | List\<[PayrollUpdateDeductions](../../models/components/PayrollUpdateDeductions.md)> | :heavy_minus_sign: | N/A | +| `customWithholdings` | [Optional\](../../models/components/PayrollUpdateCustomWithholdings.md) | :heavy_minus_sign: | Optional per-payroll one-time custom withholdings for federal and/or state income tax.
    When provided, the supplied override takes precedence over any persistent withholding schedule for this run.
    This field is in limited release; if your application does not have access, requests including it are silently ignored.
    | +| `paidTimeOff` | List\<[PayrollUpdatePaidTimeOff](../../models/components/PayrollUpdatePaidTimeOff.md)> | :heavy_minus_sign: | An array of all paid time off the employee is eligible for this pay period. Each paid time off object can be the name or the specific policy_uuid. | +| `reimbursements` | List\<[PayrollUpdateReimbursements](../../models/components/PayrollUpdateReimbursements.md)> | :heavy_minus_sign: | An array of reimbursements for the employee. | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/PayrollUpdateEmployeeCompensationsAmountType.md b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollUpdateEmployeeCompensationsAmountType.md new file mode 100644 index 000000000..1b6fb1ad8 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollUpdateEmployeeCompensationsAmountType.md @@ -0,0 +1,19 @@ +# PayrollUpdateEmployeeCompensationsAmountType + +How to interpret the amount. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.components.PayrollUpdateEmployeeCompensationsAmountType; + +PayrollUpdateEmployeeCompensationsAmountType value = PayrollUpdateEmployeeCompensationsAmountType.FIXED; +``` + + +## Values + +| Name | Value | +| --------- | --------- | +| `FIXED` | fixed | +| `PERCENT` | percent | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/PayrollUpdateEmployeeCompensationsCustomWithholdingsAmountType.md b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollUpdateEmployeeCompensationsCustomWithholdingsAmountType.md new file mode 100644 index 000000000..cb984a978 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollUpdateEmployeeCompensationsCustomWithholdingsAmountType.md @@ -0,0 +1,19 @@ +# PayrollUpdateEmployeeCompensationsCustomWithholdingsAmountType + +How to interpret the amount. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.components.PayrollUpdateEmployeeCompensationsCustomWithholdingsAmountType; + +PayrollUpdateEmployeeCompensationsCustomWithholdingsAmountType value = PayrollUpdateEmployeeCompensationsCustomWithholdingsAmountType.FIXED; +``` + + +## Values + +| Name | Value | +| --------- | --------- | +| `FIXED` | fixed | +| `PERCENT` | percent | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/PayrollUpdateEmployeeCompensationsOverrideType.md b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollUpdateEmployeeCompensationsOverrideType.md new file mode 100644 index 000000000..b8bcfcb54 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollUpdateEmployeeCompensationsOverrideType.md @@ -0,0 +1,18 @@ +# PayrollUpdateEmployeeCompensationsOverrideType + +Override mode. Only `one_time` is currently supported. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.components.PayrollUpdateEmployeeCompensationsOverrideType; + +PayrollUpdateEmployeeCompensationsOverrideType value = PayrollUpdateEmployeeCompensationsOverrideType.ONE_TIME; +``` + + +## Values + +| Name | Value | +| ---------- | ---------- | +| `ONE_TIME` | one_time | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/PayrollUpdateFederal.md b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollUpdateFederal.md new file mode 100644 index 000000000..009ecf2d1 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollUpdateFederal.md @@ -0,0 +1,12 @@ +# PayrollUpdateFederal + +Federal one-time custom withholding override. + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------- | +| `overrideType` | [Optional\](../../models/components/PayrollUpdateOverrideType.md) | :heavy_minus_sign: | Override mode. Only `one_time` is currently supported. | +| `amount` | *Optional\* | :heavy_minus_sign: | The amount to be withheld for this payroll. | +| `amountType` | [Optional\](../../models/components/PayrollUpdateEmployeeCompensationsAmountType.md) | :heavy_minus_sign: | How to interpret the amount. | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/PayrollUpdateOverrideType.md b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollUpdateOverrideType.md new file mode 100644 index 000000000..6c09349d5 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollUpdateOverrideType.md @@ -0,0 +1,18 @@ +# PayrollUpdateOverrideType + +Override mode. Only `one_time` is currently supported. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.components.PayrollUpdateOverrideType; + +PayrollUpdateOverrideType value = PayrollUpdateOverrideType.ONE_TIME; +``` + + +## Values + +| Name | Value | +| ---------- | ---------- | +| `ONE_TIME` | one_time | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/PayrollUpdateState.md b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollUpdateState.md new file mode 100644 index 000000000..2d38a6401 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/PayrollUpdateState.md @@ -0,0 +1,11 @@ +# PayrollUpdateState + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `employeeStateFieldUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the EmployeeStateField this withholding applies to. | +| `overrideType` | [Optional\](../../models/components/PayrollUpdateEmployeeCompensationsOverrideType.md) | :heavy_minus_sign: | Override mode. Only `one_time` is currently supported. | +| `amount` | *Optional\* | :heavy_minus_sign: | The amount to be withheld for this payroll. | +| `amountType` | [Optional\](../../models/components/PayrollUpdateEmployeeCompensationsCustomWithholdingsAmountType.md) | :heavy_minus_sign: | How to interpret the amount. | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/PeopleBatchResults.md b/gusto_embedded_v_2026_06_15/docs/models/components/PeopleBatchResults.md index 2002eb602..0feaa44a4 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/components/PeopleBatchResults.md +++ b/gusto_embedded_v_2026_06_15/docs/models/components/PeopleBatchResults.md @@ -5,15 +5,15 @@ A people batch with processing results. ## Fields -| Field | Type | Required | Description | -| ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------- | -| `uuid` | *String* | :heavy_check_mark: | The unique identifier of the people batch. | -| `idempotencyKey` | *String* | :heavy_check_mark: | The idempotency key provided when creating the batch. | -| `status` | [PeopleBatchResultsStatus](../../models/components/PeopleBatchResultsStatus.md) | :heavy_check_mark: | The current status of the batch processing. | -| `submittedAt` | [OffsetDateTime](https://docs.oracle.com/javase/8/docs/api/java/time/OffsetDateTime.html) | :heavy_minus_sign: | The timestamp when the batch was submitted. | -| `completedAt` | [OffsetDateTime](https://docs.oracle.com/javase/8/docs/api/java/time/OffsetDateTime.html) | :heavy_minus_sign: | The timestamp when the batch processing completed. | -| `submittedItems` | *JsonNullable\* | :heavy_minus_sign: | The number of items submitted in the batch. | -| `processedItems` | *Optional\* | :heavy_minus_sign: | The number of items successfully processed. | -| `excludedItems` | *Optional\* | :heavy_minus_sign: | The number of items excluded from processing. | -| `results` | List\<[Results](../../models/components/Results.md)> | :heavy_minus_sign: | The results for each batch item. | -| `exclusions` | List\<[Exclusions](../../models/components/Exclusions.md)> | :heavy_minus_sign: | Items excluded from processing due to validation errors. | \ No newline at end of file +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | +| `uuid` | *String* | :heavy_check_mark: | The unique identifier of the people batch. | +| `idempotencyKey` | *String* | :heavy_check_mark: | The idempotency key provided when creating the batch. | +| `status` | [PeopleBatchResultsStatus](../../models/components/PeopleBatchResultsStatus.md) | :heavy_check_mark: | The current status of the batch processing. | +| `submittedAt` | [OffsetDateTime](https://docs.oracle.com/javase/8/docs/api/java/time/OffsetDateTime.html) | :heavy_minus_sign: | The timestamp when the batch was submitted. | +| `completedAt` | [OffsetDateTime](https://docs.oracle.com/javase/8/docs/api/java/time/OffsetDateTime.html) | :heavy_minus_sign: | The timestamp when the batch processing completed. | +| `submittedItems` | *JsonNullable\* | :heavy_minus_sign: | The number of items submitted in the batch. | +| `processedItems` | *Optional\* | :heavy_minus_sign: | The number of items successfully processed. | +| `excludedItems` | *Optional\* | :heavy_minus_sign: | The number of items excluded from processing. | +| `results` | List\<[PeopleBatchResultsResults](../../models/components/PeopleBatchResultsResults.md)> | :heavy_minus_sign: | The results for each batch item. | +| `exclusions` | List\<[PeopleBatchResultsExclusions](../../models/components/PeopleBatchResultsExclusions.md)> | :heavy_minus_sign: | Items excluded from processing due to validation errors. | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/PeopleBatchResultsExclusions.md b/gusto_embedded_v_2026_06_15/docs/models/components/PeopleBatchResultsExclusions.md new file mode 100644 index 000000000..a060cc6f6 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/PeopleBatchResultsExclusions.md @@ -0,0 +1,11 @@ +# PeopleBatchResultsExclusions + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------- | ------------------------------------------- | ------------------------------------------- | ------------------------------------------- | +| `externalId` | *Optional\* | :heavy_minus_sign: | The external ID of the excluded item(s). | +| `category` | *Optional\* | :heavy_minus_sign: | The exclusion category. | +| `message` | *Optional\* | :heavy_minus_sign: | Human-readable explanation for exclusion. | +| `itemCount` | *Optional\* | :heavy_minus_sign: | Number of items affected by this exclusion. | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/PeopleBatchResultsResults.md b/gusto_embedded_v_2026_06_15/docs/models/components/PeopleBatchResultsResults.md new file mode 100644 index 000000000..117463dc2 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/PeopleBatchResultsResults.md @@ -0,0 +1,14 @@ +# PeopleBatchResultsResults + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | +| `externalId` | *Optional\* | :heavy_minus_sign: | The external ID provided in the batch request. | +| `role` | [Optional\](../../models/components/Role.md) | :heavy_minus_sign: | The type of person created. | +| `status` | [Optional\](../../models/components/PeopleBatchResultsResultsStatus.md) | :heavy_minus_sign: | The status of this batch item. | +| `idx` | *Optional\* | :heavy_minus_sign: | The index of this item in the original batch request. | +| `uuid` | *Optional\* | :heavy_minus_sign: | The UUID of the created person. | +| `employeeUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the created employee (if role is employee). | +| `errors` | List\<[PeopleBatchResultsErrors](../../models/components/PeopleBatchResultsErrors.md)> | :heavy_minus_sign: | Errors encountered while processing this batch item. | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/Rehire.md b/gusto_embedded_v_2026_06_15/docs/models/components/Rehire.md index fd2baae62..ed57665f6 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/components/Rehire.md +++ b/gusto_embedded_v_2026_06_15/docs/models/components/Rehire.md @@ -9,7 +9,7 @@ | `effectiveDate` | *Optional\* | :heavy_minus_sign: | The day when the employee returns to work. | | `fileNewHireReport` | *Optional\* | :heavy_minus_sign: | The boolean flag indicating whether Gusto will file a new hire report for the employee. | | `workLocationUuid` | *Optional\* | :heavy_minus_sign: | The uuid of the employee's work location. | -| `employmentStatus` | [Optional\](../../models/components/EmploymentStatus.md) | :heavy_minus_sign: | The employee's employment status. Supplying an invalid option will set the employment_status to *not_set*. | +| `employmentStatus` | [Optional\](../../models/components/RehireEmploymentStatus.md) | :heavy_minus_sign: | The employee's employment status. Supplying an invalid option will set the employment_status to *not_set*. | | `twoPercentShareholder` | *Optional\* | :heavy_minus_sign: | Whether the employee is a two percent shareholder of the company. This field only applies to companies with an S-Corp entity type. | | `employeeUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the employee. | | `active` | *Optional\* | :heavy_minus_sign: | Whether the employee's rehire has gone into effect. | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/RehireEmploymentStatus.md b/gusto_embedded_v_2026_06_15/docs/models/components/RehireEmploymentStatus.md new file mode 100644 index 000000000..ccae3666c --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/RehireEmploymentStatus.md @@ -0,0 +1,23 @@ +# RehireEmploymentStatus + +The employee's employment status. Supplying an invalid option will set the employment_status to *not_set*. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.components.RehireEmploymentStatus; + +RehireEmploymentStatus value = RehireEmploymentStatus.PART_TIME; +``` + + +## Values + +| Name | Value | +| -------------------- | -------------------- | +| `PART_TIME` | part_time | +| `FULL_TIME` | full_time | +| `PART_TIME_ELIGIBLE` | part_time_eligible | +| `VARIABLE` | variable | +| `SEASONAL` | seasonal | +| `NOT_SET` | not_set | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/ReportType.md b/gusto_embedded_v_2026_06_15/docs/models/components/ReportType.md new file mode 100644 index 000000000..48d52debf --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/ReportType.md @@ -0,0 +1,18 @@ +# ReportType + +Identifies this batch item as a custom report. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.components.ReportType; + +ReportType value = ReportType.CUSTOM_REPORT; +``` + + +## Values + +| Name | Value | +| --------------- | --------------- | +| `CUSTOM_REPORT` | custom_report | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/Results.md b/gusto_embedded_v_2026_06_15/docs/models/components/Results.md index 48e2f05cd..51744c248 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/components/Results.md +++ b/gusto_embedded_v_2026_06_15/docs/models/components/Results.md @@ -3,12 +3,9 @@ ## Fields -| Field | Type | Required | Description | -| -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------- | -| `externalId` | *Optional\* | :heavy_minus_sign: | The external ID provided in the batch request. | -| `role` | [Optional\](../../models/components/Role.md) | :heavy_minus_sign: | The type of person created. | -| `status` | [Optional\](../../models/components/PeopleBatchResultsResultsStatus.md) | :heavy_minus_sign: | The status of this batch item. | -| `idx` | *Optional\* | :heavy_minus_sign: | The index of this item in the original batch request. | -| `uuid` | *Optional\* | :heavy_minus_sign: | The UUID of the created person. | -| `employeeUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the created employee (if role is employee). | -| `errors` | List\<[PeopleBatchResultsErrors](../../models/components/PeopleBatchResultsErrors.md)> | :heavy_minus_sign: | Errors encountered while processing this batch item. | \ No newline at end of file +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `idx` | *Optional\* | :heavy_minus_sign: | The index of this payroll in the original POST batch array. | +| `uuid` | *Optional\* | :heavy_minus_sign: | The UUID of the payroll. | +| `status` | [Optional\](../../models/components/PayrollBatchResultsResultsStatus.md) | :heavy_minus_sign: | The outcome of cancelling this payroll. A cancel is atomic — there is no per-payroll `partial_success`.
    - `success`: the payroll was cancelled, or required no action (already cancelled / never run)
    - `failed`: the payroll could not be cancelled; see `errors`
    | +| `errors` | List\<[PayrollBatchResultsErrors](../../models/components/PayrollBatchResultsErrors.md)> | :heavy_minus_sign: | Present only when `status` is `failed`. A cancel is a single atomic operation, so this is a flat array with exactly one error. | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/ReverseWireTransaction.md b/gusto_embedded_v_2026_06_15/docs/models/components/ReverseWireTransaction.md new file mode 100644 index 000000000..23b632d12 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/ReverseWireTransaction.md @@ -0,0 +1,18 @@ +# ReverseWireTransaction + +Representation of a reverse wire (drawdown) transaction. Reverse wires are debit transactions initiated by Gusto to pull funds from a partner's bank account to cover payroll or contractor payment obligations. + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| `companyUuid` | *String* | :heavy_check_mark: | Unique identifier of the company the reverse wire transaction belongs to | +| `amount` | *String* | :heavy_check_mark: | The amount of money moved by the reverse wire, as a decimal string. Always non-negative. | +| `status` | [ReverseWireTransactionStatus](../../models/components/ReverseWireTransactionStatus.md) | :heavy_check_mark: | Current status of the reverse wire transaction.
    - `pending_processing`: The reverse wire has been initiated and is awaiting processing by the banking network.
    - `processed`: The reverse wire was successfully settled and funds have been received.
    - `rejected`: The reverse wire was rejected by the receiving bank (e.g. invalid account, insufficient funds).
    - `failed`: The reverse wire failed during processing due to a system or network error.
    | +| `paymentDirection` | [ReverseWireTransactionPaymentDirection](../../models/components/ReverseWireTransactionPaymentDirection.md) | :heavy_check_mark: | The direction of the payment. Reverse wires are always debits from the company's account. | +| `bankName` | *JsonNullable\* | :heavy_minus_sign: | Name of the receiving bank. Null when the bank is not known. | +| `paymentEventType` | [JsonNullable\](../../models/components/ReverseWireTransactionPaymentEventType.md) | :heavy_minus_sign: | The type of payment event this reverse wire is associated with. Null when the wire is not linked to a payroll or contractor payment. | +| `paymentEventUuid` | *JsonNullable\* | :heavy_minus_sign: | Unique identifier of the associated payroll or contractor payment. Null when the wire is not linked to a payment event. | +| `paymentEventCheckDate` | *JsonNullable\* | :heavy_minus_sign: | The check date of the associated payment event. Null when the wire is not linked to a payment event. | +| `createdAt` | *String* | :heavy_check_mark: | The date the reverse wire record was created. | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/ReverseWireTransactionPaymentDirection.md b/gusto_embedded_v_2026_06_15/docs/models/components/ReverseWireTransactionPaymentDirection.md new file mode 100644 index 000000000..d36a4b880 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/ReverseWireTransactionPaymentDirection.md @@ -0,0 +1,18 @@ +# ReverseWireTransactionPaymentDirection + +The direction of the payment. Reverse wires are always debits from the company's account. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.components.ReverseWireTransactionPaymentDirection; + +ReverseWireTransactionPaymentDirection value = ReverseWireTransactionPaymentDirection.DEBIT; +``` + + +## Values + +| Name | Value | +| ------- | ------- | +| `DEBIT` | debit | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/ReverseWireTransactionPaymentEventType.md b/gusto_embedded_v_2026_06_15/docs/models/components/ReverseWireTransactionPaymentEventType.md new file mode 100644 index 000000000..8128b57a5 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/ReverseWireTransactionPaymentEventType.md @@ -0,0 +1,17 @@ +# ReverseWireTransactionPaymentEventType + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.components.ReverseWireTransactionPaymentEventType; + +ReverseWireTransactionPaymentEventType value = ReverseWireTransactionPaymentEventType.PAYROLL; +``` + + +## Values + +| Name | Value | +| -------------------- | -------------------- | +| `PAYROLL` | Payroll | +| `CONTRACTOR_PAYMENT` | ContractorPayment | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/ReverseWireTransactionStatus.md b/gusto_embedded_v_2026_06_15/docs/models/components/ReverseWireTransactionStatus.md new file mode 100644 index 000000000..f340c43d9 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/ReverseWireTransactionStatus.md @@ -0,0 +1,26 @@ +# ReverseWireTransactionStatus + +Current status of the reverse wire transaction. +- `pending_processing`: The reverse wire has been initiated and is awaiting processing by the banking network. +- `processed`: The reverse wire was successfully settled and funds have been received. +- `rejected`: The reverse wire was rejected by the receiving bank (e.g. invalid account, insufficient funds). +- `failed`: The reverse wire failed during processing due to a system or network error. + + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.components.ReverseWireTransactionStatus; + +ReverseWireTransactionStatus value = ReverseWireTransactionStatus.PENDING_PROCESSING; +``` + + +## Values + +| Name | Value | +| -------------------- | -------------------- | +| `PENDING_PROCESSING` | pending_processing | +| `PROCESSED` | processed | +| `REJECTED` | rejected | +| `FAILED` | failed | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/State.md b/gusto_embedded_v_2026_06_15/docs/models/components/State.md new file mode 100644 index 000000000..cef1936bd --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/State.md @@ -0,0 +1,11 @@ +# State + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| `employeeStateFieldUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the EmployeeStateField this withholding applies to. | +| `overrideType` | [Optional\](../../models/components/PayrollEmployeeCompensationsTypeOverrideType.md) | :heavy_minus_sign: | Override mode. Only `one_time` is currently exposed. | +| `amount` | *Optional\* | :heavy_minus_sign: | The amount that was withheld for this payroll. | +| `amountType` | [Optional\](../../models/components/PayrollEmployeeCompensationsTypeCustomWithholdingsAmountType.md) | :heavy_minus_sign: | How to interpret the amount. | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/Status.md b/gusto_embedded_v_2026_06_15/docs/models/components/Status.md index a8abeaebe..eace4be08 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/components/Status.md +++ b/gusto_embedded_v_2026_06_15/docs/models/components/Status.md @@ -1,20 +1,26 @@ # Status -Represents the notification's status as managed by our system. It is updated based on observable system events and internal business logic, and does not reflect resolution steps taken outside our system. This field is read-only and cannot be modified via the API. +The batch's processing state. +- `pending`: accepted, not yet started +- `processing`: reports are being generated +- `completed`: all reports finished +- `failed`: the batch failed before completing + ## Example Usage ```java import com.gusto.embedded_api_v_2026_06_15.models.components.Status; -Status value = Status.OPEN; +Status value = Status.PENDING; ``` ## Values -| Name | Value | -| ---------- | ---------- | -| `OPEN` | open | -| `RESOLVED` | resolved | -| `EXPIRED` | expired | \ No newline at end of file +| Name | Value | +| ------------ | ------------ | +| `PENDING` | pending | +| `PROCESSING` | processing | +| `COMPLETED` | completed | +| `FAILED` | failed | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/SubscriptionTypes.md b/gusto_embedded_v_2026_06_15/docs/models/components/SubscriptionTypes.md index 3a7af18a9..7ec9839ec 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/components/SubscriptionTypes.md +++ b/gusto_embedded_v_2026_06_15/docs/models/components/SubscriptionTypes.md @@ -28,4 +28,5 @@ SubscriptionTypes value = SubscriptionTypes.BANK_ACCOUNT; | `PAYROLL` | Payroll | | `PAYROLL_SYNC` | PayrollSync | | `PAY_SCHEDULE` | PaySchedule | -| `SIGNATORY` | Signatory | \ No newline at end of file +| `SIGNATORY` | Signatory | +| `TIME_OFF_REQUEST` | TimeOffRequest | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/TaxPayment.md b/gusto_embedded_v_2026_06_15/docs/models/components/TaxPayment.md new file mode 100644 index 000000000..417720f9b --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/TaxPayment.md @@ -0,0 +1,20 @@ +# TaxPayment + +Representation of a tax payment made by Gusto to a tax agency on behalf of a company + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `uuid` | *String* | :heavy_check_mark: | Unique identifier of the tax payment | +| `companyUuid` | *String* | :heavy_check_mark: | Unique identifier of the company to which the tax payment belongs | +| `agencyName` | *String* | :heavy_check_mark: | The name of the tax agency this payment is submitted to | +| `jurisdiction` | *String* | :heavy_check_mark: | The tax jurisdiction this payment is for. A two-letter state code, or US for federal. | +| `periodStart` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_check_mark: | The start date of the period this payment covers | +| `periodEnd` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_check_mark: | The end date of the period this payment covers | +| `dueDate` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_check_mark: | The date this payment is due | +| `paymentSentOn` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_minus_sign: | The date Gusto submitted this payment to the tax agency. It is null until submitted, and also if the payment is returned or cancelled after being sent. It is not guaranteed to stay set once populated. | +| `amount` | *String* | :heavy_check_mark: | Total amount owed for this tax payment. Can be negative for corrections, refunds, or credits. | +| `amountPaid` | *String* | :heavy_check_mark: | Amount paid toward this tax payment so far, sourced from the payment's running balance. "0.00" until paid; equal to `amount` once fully paid. | +| `lineItems` | List\<[TaxPaymentLineItem](../../models/components/TaxPaymentLineItem.md)> | :heavy_minus_sign: | The payroll tax liabilities that make up this payment. Empty array when the payment has no associated payroll taxes. Only included in the response of GET /v1/companies/{company_uuid}/tax_payments/{uuid}. It is omitted from the list endpoint response. | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/TaxPaymentLineItem.md b/gusto_embedded_v_2026_06_15/docs/models/components/TaxPaymentLineItem.md new file mode 100644 index 000000000..813912882 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/TaxPaymentLineItem.md @@ -0,0 +1,12 @@ +# TaxPaymentLineItem + +A single payroll tax liability rolled up into a tax payment + + +## Fields + +| Field | Type | Required | Description | +| --------------------------------------------------------- | --------------------------------------------------------- | --------------------------------------------------------- | --------------------------------------------------------- | +| `payrollUuid` | *String* | :heavy_check_mark: | Unique identifier of the payroll this liability came from | +| `uniqueTaxId` | *String* | :heavy_check_mark: | Unique identifier of the tax type this liability is for | +| `amount` | *String* | :heavy_check_mark: | The amount of this liability included in the tax payment | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/TaxRequirement.md b/gusto_embedded_v_2026_06_15/docs/models/components/TaxRequirement.md index 8e31bfbeb..e03bc2902 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/components/TaxRequirement.md +++ b/gusto_embedded_v_2026_06_15/docs/models/components/TaxRequirement.md @@ -11,4 +11,6 @@ | `description` | *JsonNullable\* | :heavy_minus_sign: | A more detailed customer facing description of the requirement | | | `value` | [JsonNullable\](../../models/components/TaxRequirementsValue.md) | :heavy_minus_sign: | The value or "answer" for a tax requirement. Type depends on the requirement metadata type (e.g. string for text/account_number, boolean for radio/checkbox, number for percent/currency/tax_rate). Null when the requirement has not been answered. | 1233214-AB | | `metadata` | [Optional\](../../models/components/TaxRequirementMetadata.md) | :heavy_minus_sign: | N/A | | -| `editable` | *Optional\* | :heavy_minus_sign: | Whether the value of this requirement can be updated | | \ No newline at end of file +| `editable` | *Optional\* | :heavy_minus_sign: | Whether the value of this requirement can be updated | | +| `payrollBlocking` | *Optional\* | :heavy_minus_sign: | Whether this requirement, when blank, would block payroll processing for the company in this state.
    Stable across changes to the field's value: a `payroll_blocking: true` field reports `true` whether
    currently empty or populated.
    | | +| `defaultValueApplied` | *Optional\* | :heavy_minus_sign: | Whether the current `value` is a default rather than an explicitly set one.
    | | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/VersionHeader.md b/gusto_embedded_v_2026_06_15/docs/models/components/VersionHeader.md deleted file mode 100644 index 2efa0a352..000000000 --- a/gusto_embedded_v_2026_06_15/docs/models/components/VersionHeader.md +++ /dev/null @@ -1,16 +0,0 @@ -# VersionHeader - -## Example Usage - -```java -import com.gusto.embedded_api_v_2026_06_15.models.components.VersionHeader; - -VersionHeader value = VersionHeader.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15; -``` - - -## Values - -| Name | Value | -| --------------------------------------------- | --------------------------------------------- | -| `TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15` | 2026-06-15 | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/components/WarningObject.md b/gusto_embedded_v_2026_06_15/docs/models/components/WarningObject.md new file mode 100644 index 000000000..7db41084f --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/components/WarningObject.md @@ -0,0 +1,10 @@ +# WarningObject + + +## Fields + +| Field | Type | Required | Description | +| ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------- | +| `errorKey` | *Optional\* | :heavy_minus_sign: | Specifies where the warning occurs. Typically identifies the attribute or parameter related to the warning. | +| `category` | *Optional\* | :heavy_minus_sign: | Specifies the type of warning. Can be used to build custom warning handling. | +| `message` | *Optional\* | :heavy_minus_sign: | Provides details about the warning. The message can be surfaced directly to the end user. | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/errors/ConflictErrorObject.md b/gusto_embedded_v_2026_06_15/docs/models/errors/ConflictErrorObject.md index 46ec3c2fb..bc5326f19 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/errors/ConflictErrorObject.md +++ b/gusto_embedded_v_2026_06_15/docs/models/errors/ConflictErrorObject.md @@ -2,7 +2,7 @@ Conflict -This error occurs when the resource version provided does not match the current version. Retrieve the latest version and retry. +This may happen when the resource version provided does not match the current version — retrieve the latest version and retry — or when the request conflicts with another in-progress operation on the same resource. See the [Errors Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. ## Fields diff --git a/gusto_embedded_v_2026_06_15/docs/models/errors/ForbiddenErrorObject.md b/gusto_embedded_v_2026_06_15/docs/models/errors/ForbiddenErrorObject.md new file mode 100644 index 000000000..4cfa4c14e --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/errors/ForbiddenErrorObject.md @@ -0,0 +1,12 @@ +# ForbiddenErrorObject + +Forbidden + +The targeted company has been archived because its EIN was reassigned to a replacement company. Use the replacement company referenced in the error metadata. + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | ------------------------------------------------------------------------ | +| `errors` | List\<[EntityErrorObject](../../models/components/EntityErrorObject.md)> | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/errors/Metadata.md b/gusto_embedded_v_2026_06_15/docs/models/errors/Metadata.md index 9e479ea35..74f2b9e37 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/errors/Metadata.md +++ b/gusto_embedded_v_2026_06_15/docs/models/errors/Metadata.md @@ -3,6 +3,6 @@ ## Fields -| Field | Type | Required | Description | -| ------------------------------------------------------------- | ------------------------------------------------------------- | ------------------------------------------------------------- | ------------------------------------------------------------- | -| `key` | *Optional\* | :heavy_minus_sign: | A categorization of the payroll blocker, e.g. "geocode_error" | \ No newline at end of file +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | +| `requestUuid` | *Optional\* | :heavy_minus_sign: | The UUID of the existing payroll cancellation batch that already used this idempotency key. | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/errors/PayrollBatchConflictError.md b/gusto_embedded_v_2026_06_15/docs/models/errors/PayrollBatchConflictError.md new file mode 100644 index 000000000..c8c98a8a0 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/errors/PayrollBatchConflictError.md @@ -0,0 +1,10 @@ +# PayrollBatchConflictError + +Error response when a payroll cancellation idempotency key has already been used by the same partner. + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------ | +| `errors` | List\<[PayrollBatchConflictErrorErrors](../../models/errors/PayrollBatchConflictErrorErrors.md)> | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/errors/PayrollBatchConflictErrorErrors.md b/gusto_embedded_v_2026_06_15/docs/models/errors/PayrollBatchConflictErrorErrors.md new file mode 100644 index 000000000..89ca96f7f --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/errors/PayrollBatchConflictErrorErrors.md @@ -0,0 +1,11 @@ +# PayrollBatchConflictErrorErrors + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------ | ------------------------------------------------------ | ------------------------------------------------------ | ------------------------------------------------------ | +| `errorKey` | *Optional\* | :heavy_minus_sign: | The key identifying the error source. | +| `category` | *Optional\* | :heavy_minus_sign: | The error category. | +| `message` | *Optional\* | :heavy_minus_sign: | Human-readable error message. | +| `metadata` | [Optional\](../../models/errors/Metadata.md) | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/errors/PayrollBlockersErrorErrors.md b/gusto_embedded_v_2026_06_15/docs/models/errors/PayrollBlockersErrorErrors.md index 38137ce81..00687e964 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/errors/PayrollBlockersErrorErrors.md +++ b/gusto_embedded_v_2026_06_15/docs/models/errors/PayrollBlockersErrorErrors.md @@ -3,9 +3,9 @@ ## Fields -| Field | Type | Required | Description | -| ------------------------------------------------------ | ------------------------------------------------------ | ------------------------------------------------------ | ------------------------------------------------------ | -| `errorKey` | *Optional\* | :heavy_minus_sign: | The string "base" | -| `category` | *Optional\* | :heavy_minus_sign: | The string "payroll_blocker" | -| `message` | *Optional\* | :heavy_minus_sign: | Human readable description of the payroll blocker | -| `metadata` | [Optional\](../../models/errors/Metadata.md) | :heavy_minus_sign: | N/A | \ No newline at end of file +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------- | +| `errorKey` | *Optional\* | :heavy_minus_sign: | The string "base" | +| `category` | *Optional\* | :heavy_minus_sign: | The string "payroll_blocker" | +| `message` | *Optional\* | :heavy_minus_sign: | Human readable description of the payroll blocker | +| `metadata` | [Optional\](../../models/errors/PayrollBlockersErrorMetadata.md) | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/errors/PayrollBlockersErrorMetadata.md b/gusto_embedded_v_2026_06_15/docs/models/errors/PayrollBlockersErrorMetadata.md new file mode 100644 index 000000000..2dc76c4cb --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/errors/PayrollBlockersErrorMetadata.md @@ -0,0 +1,8 @@ +# PayrollBlockersErrorMetadata + + +## Fields + +| Field | Type | Required | Description | +| ------------------------------------------------------------- | ------------------------------------------------------------- | ------------------------------------------------------------- | ------------------------------------------------------------- | +| `key` | *Optional\* | :heavy_minus_sign: | A categorization of the payroll blocker, e.g. "geocode_error" | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/Batch.md b/gusto_embedded_v_2026_06_15/docs/models/operations/Batch.md index 2da5e31d3..7cef8eb51 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/Batch.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/Batch.md @@ -3,13 +3,8 @@ ## Fields -| Field | Type | Required | Description | Example | -| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -| `entityType` | [EntityType](../../models/operations/EntityType.md) | :heavy_check_mark: | The type of entity to create | employee | -| `person` | [Person](../../models/operations/Person.md) | :heavy_check_mark: | N/A | | -| `homeAddress` | [Optional\](../../models/operations/PostV1CompaniesCompanyIdPeopleBatchesHomeAddress.md) | :heavy_minus_sign: | Home address for the employee | | -| `workAddress` | [Optional\](../../models/operations/PostV1CompaniesCompanyIdPeopleBatchesWorkAddress.md) | :heavy_minus_sign: | Specify the company work location for the employee | | -| `job` | [Optional\](../../models/operations/PostV1CompaniesCompanyIdPeopleBatchesJob.md) | :heavy_minus_sign: | Job details for the employee (required if compensation is provided) | | -| `department` | [Optional\](../../models/operations/Department.md) | :heavy_minus_sign: | Department details for the employee | | -| `compensation` | [Optional\](../../models/operations/Compensation.md) | :heavy_minus_sign: | Compensation details for the employee (requires job to be provided) | | -| `bankAccounts` | List\<[BankAccounts](../../models/operations/BankAccounts.md)> | :heavy_minus_sign: | Creates employee bank account(s) and payment method(s) for direct deposit. Payments can be split across accounts by Percentage or by Amount. If splitting payments by `Percentage`, all splits must have a `split_amount` and the percentages must add up to `100`.
    If splitting payments by `Amount`, the priority is set based on the order of the bank accounts in the array and the last bank account is the remainder account (should have `split_amount` set to `null`). | | \ No newline at end of file +| Field | Type | Required | Description | Example | +| ------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `entityType` | [EntityType](../../models/operations/EntityType.md) | :heavy_check_mark: | The type of entity to act on. | payroll | +| `uuid` | *String* | :heavy_check_mark: | The UUID of the payroll to cancel. Payrolls the partner is not authorized to access, or that do not exist, appear in the response's `exclusions` array. | | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company that owns the payroll. The partner must be mapped to this company. | | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/BatchAction.md b/gusto_embedded_v_2026_06_15/docs/models/operations/BatchAction.md index 841bbc941..b02db0331 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/BatchAction.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/BatchAction.md @@ -1,13 +1,13 @@ # BatchAction -The action to perform on the batch +The action to perform on the batch. Only `cancel` is supported. ## Example Usage ```java import com.gusto.embedded_api_v_2026_06_15.models.operations.BatchAction; -BatchAction value = BatchAction.CREATE; +BatchAction value = BatchAction.CANCEL; ``` @@ -15,4 +15,4 @@ BatchAction value = BatchAction.CREATE; | Name | Value | | -------- | -------- | -| `CREATE` | create | \ No newline at end of file +| `CANCEL` | cancel | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/DeleteDepartmentRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/DeleteDepartmentRequest.md index ad8e37b72..84240d214 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/DeleteDepartmentRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/DeleteDepartmentRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `departmentUuid` | *String* | :heavy_check_mark: | The UUID of the department | -| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteDepartmentHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteDepartmentHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `departmentUuid` | *String* | :heavy_check_mark: | The UUID of the department | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/DeleteV1CompaniesCompanyIdPayrollsRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/DeleteV1CompaniesCompanyIdPayrollsRequest.md index d8039e22b..daefaf7e5 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/DeleteV1CompaniesCompanyIdPayrollsRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/DeleteV1CompaniesCompanyIdPayrollsRequest.md @@ -5,7 +5,7 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | `payrollId` | *String* | :heavy_check_mark: | The UUID of the payroll | -| `async` | *Optional\* | :heavy_minus_sign: | When true, request an asynchronous delete of the payroll. | -| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `async` | *Optional\* | :heavy_minus_sign: | When true, request an asynchronous delete of the payroll. | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.md index db63e0d6a..74bbfc77b 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | -| `signatoryUuid` | *String* | :heavy_check_mark: | The UUID of the signatory | -| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `signatoryUuid` | *String* | :heavy_check_mark: | The UUID of the signatory | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.md index 36464b1f6..ca5eb9eb8 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `contractorPaymentGroupUuid` | *String* | :heavy_check_mark: | The UUID of the contractor payment group | -| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorPaymentGroupUuid` | *String* | :heavy_check_mark: | The UUID of the contractor payment group | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.md b/gusto_embedded_v_2026_06_15/docs/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.md new file mode 100644 index 000000000..51b9d8da6 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.md @@ -0,0 +1,18 @@ +# DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion + +Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.operations.DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion; + +DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion value = DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15; +``` + + +## Values + +| Name | Value | +| --------------------------------------------- | --------------------------------------------- | +| `TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15` | 2026-06-15 | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest.md new file mode 100644 index 000000000..68a9f1e29 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest.md @@ -0,0 +1,9 @@ +# DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse.md b/gusto_embedded_v_2026_06_15/docs/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse.md new file mode 100644 index 000000000..3e71f42e1 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse.md @@ -0,0 +1,10 @@ +# DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | +| `contentType` | *String* | :heavy_check_mark: | HTTP response content type for this operation | +| `statusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation | +| `rawResponse` | [HttpResponse\](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/DeleteV1ContractorsContractorUuidRehireRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/DeleteV1ContractorsContractorUuidRehireRequest.md index a23be0639..5d967bc21 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/DeleteV1ContractorsContractorUuidRehireRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/DeleteV1ContractorsContractorUuidRehireRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | -| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1ContractorsContractorUuidRehireHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1ContractorsContractorUuidRehireHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/DeleteV1ContractorsContractorUuidTerminationRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/DeleteV1ContractorsContractorUuidTerminationRequest.md index 63ffc2dba..8c9b110d6 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/DeleteV1ContractorsContractorUuidTerminationRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/DeleteV1ContractorsContractorUuidTerminationRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | -| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1ContractorsContractorUuidTerminationHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1ContractorsContractorUuidTerminationHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.md b/gusto_embedded_v_2026_06_15/docs/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.md new file mode 100644 index 000000000..33448f92a --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.md @@ -0,0 +1,18 @@ +# DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion + +Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.operations.DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion; + +DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion value = DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15; +``` + + +## Values + +| Name | Value | +| --------------------------------------------- | --------------------------------------------- | +| `TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15` | 2026-06-15 | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest.md new file mode 100644 index 000000000..c75ec42f6 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest.md @@ -0,0 +1,9 @@ +# DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse.md b/gusto_embedded_v_2026_06_15/docs/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse.md new file mode 100644 index 000000000..eb01e4ce8 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse.md @@ -0,0 +1,10 @@ +# DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | +| `contentType` | *String* | :heavy_check_mark: | HTTP response content type for this operation | +| `statusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation | +| `rawResponse` | [HttpResponse\](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/DeleteV1JobsJobIdRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/DeleteV1JobsJobIdRequest.md index 08467b97a..ae69845c2 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/DeleteV1JobsJobIdRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/DeleteV1JobsJobIdRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `jobId` | *String* | :heavy_check_mark: | The UUID of the job | -| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1JobsJobIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1JobsJobIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `jobId` | *String* | :heavy_check_mark: | The UUID of the job | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/DeleteV1WebhookSubscriptionUuidRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/DeleteV1WebhookSubscriptionUuidRequest.md index 1f6589f3c..132905541 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/DeleteV1WebhookSubscriptionUuidRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/DeleteV1WebhookSubscriptionUuidRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `webhookSubscriptionUuid` | *String* | :heavy_check_mark: | The webhook subscription UUID. | -| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1WebhookSubscriptionUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1WebhookSubscriptionUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `webhookSubscriptionUuid` | *String* | :heavy_check_mark: | The webhook subscription UUID. | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/DeleteV1WorkAddressesWorkAddressUuidRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/DeleteV1WorkAddressesWorkAddressUuidRequest.md index 540e7dcca..390a7dff3 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/DeleteV1WorkAddressesWorkAddressUuidRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/DeleteV1WorkAddressesWorkAddressUuidRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `workAddressUuid` | *String* | :heavy_check_mark: | The UUID of the work address | -| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1WorkAddressesWorkAddressUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1WorkAddressesWorkAddressUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `workAddressUuid` | *String* | :heavy_check_mark: | The UUID of the work address | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/EntityType.md b/gusto_embedded_v_2026_06_15/docs/models/operations/EntityType.md index d6f702084..ade5567bf 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/EntityType.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/EntityType.md @@ -1,18 +1,18 @@ # EntityType -The type of entity to create +The type of entity to act on. ## Example Usage ```java import com.gusto.embedded_api_v_2026_06_15.models.operations.EntityType; -EntityType value = EntityType.EMPLOYEE; +EntityType value = EntityType.PAYROLL; ``` ## Values -| Name | Value | -| ---------- | ---------- | -| `EMPLOYEE` | employee | \ No newline at end of file +| Name | Value | +| --------- | --------- | +| `PAYROLL` | payroll | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetCompaniesCompanyUuidWireInRequestUuidRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetCompaniesCompanyUuidWireInRequestUuidRequest.md index 49727cf55..92dad0029 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/GetCompaniesCompanyUuidWireInRequestUuidRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetCompaniesCompanyUuidWireInRequestUuidRequest.md @@ -5,7 +5,7 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetCompaniesCompanyUuidWireInRequestUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | | `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetCompaniesDepartmentsRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetCompaniesDepartmentsRequest.md index d3edad26d..75f56a515 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/GetCompaniesDepartmentsRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetCompaniesDepartmentsRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetCompaniesDepartmentsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetCompaniesDepartmentsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetCompanyNotificationsRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetCompanyNotificationsRequest.md index 5a9e7cbeb..0f9543909 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/GetCompanyNotificationsRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetCompanyNotificationsRequest.md @@ -5,8 +5,8 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetCompanyNotificationsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company for which you would like to return notifications | | `status` | [Optional\](../../models/operations/Status.md) | :heavy_minus_sign: | N/A | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetCompanyNotificationsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | | `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetDepartmentRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetDepartmentRequest.md index 967af39fb..c2cb710fc 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/GetDepartmentRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetDepartmentRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `departmentUuid` | *String* | :heavy_check_mark: | The UUID of the department | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetDepartmentHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetDepartmentHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `departmentUuid` | *String* | :heavy_check_mark: | The UUID of the department | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetNotificationsNotificationUuidRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetNotificationsNotificationUuidRequest.md index cc03e18ff..51e4b61d1 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/GetNotificationsNotificationUuidRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetNotificationsNotificationUuidRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `notificationUuid` | *String* | :heavy_check_mark: | The notification entity_uuid | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetNotificationsNotificationUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetNotificationsNotificationUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `notificationUuid` | *String* | :heavy_check_mark: | The notification entity_uuid | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetReverseWireTransactionsHeaderXGustoAPIVersion.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetReverseWireTransactionsHeaderXGustoAPIVersion.md new file mode 100644 index 000000000..3d1068450 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetReverseWireTransactionsHeaderXGustoAPIVersion.md @@ -0,0 +1,18 @@ +# GetReverseWireTransactionsHeaderXGustoAPIVersion + +Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetReverseWireTransactionsHeaderXGustoAPIVersion; + +GetReverseWireTransactionsHeaderXGustoAPIVersion value = GetReverseWireTransactionsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15; +``` + + +## Values + +| Name | Value | +| --------------------------------------------- | --------------------------------------------- | +| `TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15` | 2026-06-15 | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetReverseWireTransactionsRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetReverseWireTransactionsRequest.md new file mode 100644 index 000000000..3bdd174de --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetReverseWireTransactionsRequest.md @@ -0,0 +1,12 @@ +# GetReverseWireTransactionsRequest + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetReverseWireTransactionsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | +| `payrollUuid` | *Optional\* | :heavy_minus_sign: | Filter results to reverse wires associated with a specific payroll | +| `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | +| `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetReverseWireTransactionsResponse.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetReverseWireTransactionsResponse.md new file mode 100644 index 000000000..54edb0957 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetReverseWireTransactionsResponse.md @@ -0,0 +1,11 @@ +# GetReverseWireTransactionsResponse + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | +| `contentType` | *String* | :heavy_check_mark: | HTTP response content type for this operation | +| `statusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation | +| `rawResponse` | [HttpResponse\](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | +| `reverseWireTransactionList` | List\<[ReverseWireTransaction](../../models/components/ReverseWireTransaction.md)> | :heavy_minus_sign: | Example response | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetTaxPaymentHeaderXGustoAPIVersion.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetTaxPaymentHeaderXGustoAPIVersion.md new file mode 100644 index 000000000..df7fba7ee --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetTaxPaymentHeaderXGustoAPIVersion.md @@ -0,0 +1,18 @@ +# GetTaxPaymentHeaderXGustoAPIVersion + +Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetTaxPaymentHeaderXGustoAPIVersion; + +GetTaxPaymentHeaderXGustoAPIVersion value = GetTaxPaymentHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15; +``` + + +## Values + +| Name | Value | +| --------------------------------------------- | --------------------------------------------- | +| `TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15` | 2026-06-15 | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetTaxPaymentRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetTaxPaymentRequest.md new file mode 100644 index 000000000..27124ac93 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetTaxPaymentRequest.md @@ -0,0 +1,10 @@ +# GetTaxPaymentRequest + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetTaxPaymentHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | +| `uuid` | *String* | :heavy_check_mark: | The UUID of the tax payment | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetTaxPaymentResponse.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetTaxPaymentResponse.md new file mode 100644 index 000000000..5d78fdd78 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetTaxPaymentResponse.md @@ -0,0 +1,11 @@ +# GetTaxPaymentResponse + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | +| `contentType` | *String* | :heavy_check_mark: | HTTP response content type for this operation | +| `statusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation | +| `rawResponse` | [HttpResponse\](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | +| `taxPayment` | [Optional\](../../models/components/TaxPayment.md) | :heavy_minus_sign: | Success | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetTaxPaymentsHeaderXGustoAPIVersion.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetTaxPaymentsHeaderXGustoAPIVersion.md new file mode 100644 index 000000000..1dc2e137c --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetTaxPaymentsHeaderXGustoAPIVersion.md @@ -0,0 +1,18 @@ +# GetTaxPaymentsHeaderXGustoAPIVersion + +Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetTaxPaymentsHeaderXGustoAPIVersion; + +GetTaxPaymentsHeaderXGustoAPIVersion value = GetTaxPaymentsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15; +``` + + +## Values + +| Name | Value | +| --------------------------------------------- | --------------------------------------------- | +| `TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15` | 2026-06-15 | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetTaxPaymentsRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetTaxPaymentsRequest.md new file mode 100644 index 000000000..ceee8ed55 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetTaxPaymentsRequest.md @@ -0,0 +1,24 @@ +# GetTaxPaymentsRequest + + +## Fields + +| Field | Type | Required | Description | Example | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetTaxPaymentsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | +| `jurisdiction` | List\<*String*> | :heavy_minus_sign: | Filter by tax jurisdiction. Accepts one or more two-letter state codes, or `US` for federal, as a comma-separated list (e.g. `IL,CA`). Codes are case-insensitive. | | +| `payrollUuids` | List\<*String*> | :heavy_minus_sign: | Filter to tax payments associated with one or more payrolls, given as a comma-separated list of payroll UUIDs. | | +| `dueDateFrom` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_minus_sign: | Lower-bound (inclusive) date filter on due_date. | | +| `dueDateTo` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_minus_sign: | Upper-bound (inclusive) date filter on due_date. | | +| `paymentSentOnFrom` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_minus_sign: | Lower-bound (inclusive) date filter on payment_sent_on. | | +| `paymentSentOnTo` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_minus_sign: | Upper-bound (inclusive) date filter on payment_sent_on. | | +| `periodStartFrom` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_minus_sign: | Lower-bound (inclusive) date filter on period_start. | | +| `periodStartTo` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_minus_sign: | Upper-bound (inclusive) date filter on period_start. | | +| `periodEndFrom` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_minus_sign: | Lower-bound (inclusive) date filter on period_end. | | +| `periodEndTo` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_minus_sign: | Upper-bound (inclusive) date filter on period_end. | | +| `amountMin` | *Optional\* | :heavy_minus_sign: | Lower-bound (inclusive) filter on amount. | | +| `amountMax` | *Optional\* | :heavy_minus_sign: | Upper-bound (inclusive) filter on amount. | | +| `sortBy` | *Optional\* | :heavy_minus_sign: | Sort by one or more fields. Options: amount, due_date, payment_sent_on, period_end, period_start. Append `:asc` or `:desc` to specify direction (e.g., `amount:asc`). Defaults to ascending. | amount:asc | +| `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | | +| `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetTaxPaymentsResponse.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetTaxPaymentsResponse.md new file mode 100644 index 000000000..9e06ceeae --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetTaxPaymentsResponse.md @@ -0,0 +1,11 @@ +# GetTaxPaymentsResponse + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | +| `contentType` | *String* | :heavy_check_mark: | HTTP response content type for this operation | +| `statusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation | +| `rawResponse` | [HttpResponse\](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | +| `taxPaymentList` | List\<[TaxPayment](../../models/components/TaxPayment.md)> | :heavy_minus_sign: | Success | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1BenefitsResponse.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1BenefitsResponse.md index 38d1b7a14..c636016d6 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1BenefitsResponse.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1BenefitsResponse.md @@ -8,4 +8,4 @@ | `contentType` | *String* | :heavy_check_mark: | HTTP response content type for this operation | | `statusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation | | `rawResponse` | [HttpResponse\](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | -| `supportedBenefits` | List\<[SupportedBenefit](../../models/components/SupportedBenefit.md)> | :heavy_minus_sign: | Successful | \ No newline at end of file +| `supportedBenefitList` | List\<[SupportedBenefit](../../models/components/SupportedBenefit.md)> | :heavy_minus_sign: | Successful | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion.md new file mode 100644 index 000000000..4311ba21a --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion.md @@ -0,0 +1,18 @@ +# GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion + +Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion; + +GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion value = GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15; +``` + + +## Values + +| Name | Value | +| --------------------------------------------- | --------------------------------------------- | +| `TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15` | 2026-06-15 | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1BulkReportsRequestUuidRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1BulkReportsRequestUuidRequest.md new file mode 100644 index 000000000..455e7dd03 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1BulkReportsRequestUuidRequest.md @@ -0,0 +1,9 @@ +# GetV1BulkReportsRequestUuidRequest + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `requestUuid` | *String* | :heavy_check_mark: | The UUID of the bulk report batch. | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1BulkReportsRequestUuidResponse.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1BulkReportsRequestUuidResponse.md new file mode 100644 index 000000000..308f4e425 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1BulkReportsRequestUuidResponse.md @@ -0,0 +1,11 @@ +# GetV1BulkReportsRequestUuidResponse + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | +| `contentType` | *String* | :heavy_check_mark: | HTTP response content type for this operation | +| `statusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation | +| `rawResponse` | [HttpResponse\](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | +| `bulkReport` | [Optional\](../../models/components/BulkReport.md) | :heavy_minus_sign: | OK | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1BulkReportsRequestUuidSecurity.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1BulkReportsRequestUuidSecurity.md new file mode 100644 index 000000000..ad43655f1 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1BulkReportsRequestUuidSecurity.md @@ -0,0 +1,8 @@ +# GetV1BulkReportsRequestUuidSecurity + + +## Fields + +| Field | Type | Required | Description | +| ------------------ | ------------------ | ------------------ | ------------------ | +| `systemAccessAuth` | *String* | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1CompaniesCompanyIdContractorPaymentGroupsRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1CompaniesCompanyIdContractorPaymentGroupsRequest.md index c6048a25c..5393f11c6 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1CompaniesCompanyIdContractorPaymentGroupsRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1CompaniesCompanyIdContractorPaymentGroupsRequest.md @@ -5,9 +5,9 @@ | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdContractorPaymentGroupsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | | `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | | `startDate` | *Optional\* | :heavy_minus_sign: | The time period for which to retrieve contractor payment groups. Defaults to 6 months ago. | 2020-01-01 | | `endDate` | *Optional\* | :heavy_minus_sign: | The time period for which to retrieve contractor payment groups. Defaults to today's date. | 2020-12-31 | | `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | | -| `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdContractorPaymentGroupsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | \ No newline at end of file +| `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest.md index b2b1058ad..b49fbb0fa 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest.md @@ -5,7 +5,7 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyId` | *String* | :heavy_check_mark: | The UUID of the company. This identifies the company whose contractor payment details you want to retrieve. | | `contractorUuid` | *Optional\* | :heavy_minus_sign: | Optional filter to get payment details for a specific contractor. When provided, the response will only include payment details for this contractor. | -| `contractorPaymentGroupUuid` | *Optional\* | :heavy_minus_sign: | 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. | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `contractorPaymentGroupUuid` | *Optional\* | :heavy_minus_sign: | 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. | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1CompaniesCompanyIdFederalTaxDetailsRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1CompaniesCompanyIdFederalTaxDetailsRequest.md index 3d1f819c9..b8135170e 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1CompaniesCompanyIdFederalTaxDetailsRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1CompaniesCompanyIdFederalTaxDetailsRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | 7b1d0df1-6403-4a06-8768-c1dd7d24d27a | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdFederalTaxDetailsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdFederalTaxDetailsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | 7b1d0df1-6403-4a06-8768-c1dd7d24d27a | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1CompaniesCompanyIdPaySchedulesPreviewRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1CompaniesCompanyIdPaySchedulesPreviewRequest.md index 912c535a0..cfb82250a 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1CompaniesCompanyIdPaySchedulesPreviewRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1CompaniesCompanyIdPaySchedulesPreviewRequest.md @@ -12,4 +12,5 @@ | `anchorEndOfPayPeriod` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_check_mark: | The last date of the first pay period. This can be the same date as the anchor pay date. | 2020-05-08 | | `day1` | *Optional\* | :heavy_minus_sign: | 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. | 15 | | `day2` | *Optional\* | :heavy_minus_sign: | 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 is set to the last day of the month. It will be null for pay schedules with other frequencies. | 31 | -| `endDate` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_minus_sign: | End date for the preview range. If given, this date must be in the future. When unspecified, defaults to 18 months from today. | | \ No newline at end of file +| `endDate` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_minus_sign: | End date for the preview range. If given, this date must be in the future. When unspecified, defaults to 18 months from today. | | +| `payScheduleUuid` | *Optional\* | :heavy_minus_sign: | Optional UUID of an existing pay schedule. When supplied, the preview is seeded from the persisted schedule — including internal flags (such as arrears handling) that affect period boundaries but are not exposed as request parameters. Any other query parameters override individual attributes on top of the loaded schedule. | | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion.md new file mode 100644 index 000000000..e410b101a --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion.md @@ -0,0 +1,18 @@ +# GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion + +Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion; + +GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion value = GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15; +``` + + +## Values + +| Name | Value | +| --------------------------------------------- | --------------------------------------------- | +| `TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15` | 2026-06-15 | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1CompaniesCompanyIdPayrollReversalsRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1CompaniesCompanyIdPayrollReversalsRequest.md index 29e8e3fb1..f828b2823 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1CompaniesCompanyIdPayrollReversalsRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1CompaniesCompanyIdPayrollReversalsRequest.md @@ -5,7 +5,7 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | -| `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | -| `xGustoAPIVersion` | [Optional\](../../models/components/VersionHeader.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.md index e8abe53db..ff9d1d05c 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyId` | *String* | :heavy_check_mark: | The UUID of the company | -| `id` | *String* | :heavy_check_mark: | The UUID of the payroll | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `id` | *String* | :heavy_check_mark: | The UUID of the payroll | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1CompaniesCompanyIdPayrollsPayrollIdRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1CompaniesCompanyIdPayrollsPayrollIdRequest.md index 3f6e266a2..2ddcfd247 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1CompaniesCompanyIdPayrollsPayrollIdRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1CompaniesCompanyIdPayrollsPayrollIdRequest.md @@ -5,9 +5,9 @@ | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdPayrollsPayrollIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | | `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | | `payrollId` | *String* | :heavy_check_mark: | The UUID of the payroll | | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdPayrollsPayrollIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | | `include` | List\<[GetV1CompaniesCompanyIdPayrollsPayrollIdQueryParamInclude](../../models/operations/GetV1CompaniesCompanyIdPayrollsPayrollIdQueryParamInclude.md)> | :heavy_minus_sign: | Include the requested attribute in the response, for multiple attributes comma separate the values, i.e. `?include=benefits,deductions,taxes` | | | `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | | | `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | | diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1CompaniesCompanyIdPayrollsRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1CompaniesCompanyIdPayrollsRequest.md index f3f722f80..d7c533615 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1CompaniesCompanyIdPayrollsRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1CompaniesCompanyIdPayrollsRequest.md @@ -5,8 +5,8 @@ | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | | `processingStatuses` | List\<[ProcessingStatuses](../../models/operations/ProcessingStatuses.md)> | :heavy_minus_sign: | Whether to include processed and/or unprocessed payrolls in the response, defaults to processed, for multiple attributes comma separate the values, i.e. `?processing_statuses=processed,unprocessed` | | | `payrollTypes` | List\<[QueryParamPayrollTypes](../../models/operations/QueryParamPayrollTypes.md)> | :heavy_minus_sign: | Whether to include regular and/or off_cycle payrolls in the response, defaults to regular, for multiple attributes comma separate the values, i.e. `?payroll_types=regular,off_cycle` | | | `processed` | *Optional\* | :heavy_minus_sign: | Whether to return processed or unprocessed payrolls | | diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1CompaniesCompanyUuidSignatoriesRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1CompaniesCompanyUuidSignatoriesRequest.md index d663e119c..0582dd5b4 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1CompaniesCompanyUuidSignatoriesRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1CompaniesCompanyUuidSignatoriesRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyUuidSignatoriesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyUuidSignatoriesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsRequest.md index e045197b3..dc8ac0a76 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyUuidTaxRequirementsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyUuidTaxRequirementsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsStateRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsStateRequest.md index 8ab8c17eb..30fdff1b1 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsStateRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsStateRequest.md @@ -5,7 +5,7 @@ | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyUuidTaxRequirementsStateHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | | `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | | `state` | *String* | :heavy_check_mark: | The two-letter state abbreviation | CA | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyUuidTaxRequirementsStateHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | | `scheduling` | *Optional\* | :heavy_minus_sign: | When true, return "new" requirement sets with valid `effective_from` dates that are available to save new effective-dated values. | | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1CompaniesRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1CompaniesRequest.md index 6e2ad3227..67d84a956 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1CompaniesRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1CompaniesRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1CompanyFinishOnboardingRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1CompanyFinishOnboardingRequest.md index 387d5e582..cd74288a1 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1CompanyFinishOnboardingRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1CompanyFinishOnboardingRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | 7b1d0df1-6403-4a06-8768-c1dd7d24d27a | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompanyFinishOnboardingHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompanyFinishOnboardingHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | 7b1d0df1-6403-4a06-8768-c1dd7d24d27a | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1CompanyIndustryRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1CompanyIndustryRequest.md index b6a7b04f5..789bd7642 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1CompanyIndustryRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1CompanyIndustryRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompanyIndustryHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompanyIndustryHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1CompanyOnboardingStatusRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1CompanyOnboardingStatusRequest.md index 3292469c3..4b1732f88 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1CompanyOnboardingStatusRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1CompanyOnboardingStatusRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompanyOnboardingStatusHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | | `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | 7b1d0df1-6403-4a06-8768-c1dd7d24d27a | -| `additionalSteps` | *Optional\* | :heavy_minus_sign: | Comma-delimited string of additional onboarding steps to include. Currently only supports the value "external_payroll". | external_payroll | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompanyOnboardingStatusHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | \ No newline at end of file +| `additionalSteps` | *Optional\* | :heavy_minus_sign: | Comma-delimited string of additional onboarding steps to include. Currently only supports the value "external_payroll". | external_payroll | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.md index 472134e8a..468079c72 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `contractorPaymentGroupUuid` | *String* | :heavy_check_mark: | The UUID of the contractor payment group | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1ContractorPaymentGroupsContractorPaymentGroupIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1ContractorPaymentGroupsContractorPaymentGroupIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorPaymentGroupUuid` | *String* | :heavy_check_mark: | The UUID of the contractor payment group | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.md index 5faa3bac3..8dc42357a 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `id` | *String* | :heavy_check_mark: | The UUID of the contractor payment group | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1ContractorPaymentGroupsIdPartnerDisbursementsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1ContractorPaymentGroupsIdPartnerDisbursementsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `id` | *String* | :heavy_check_mark: | The UUID of the contractor payment group | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.md new file mode 100644 index 000000000..00f65267a --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.md @@ -0,0 +1,18 @@ +# GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion + +Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion; + +GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion value = GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15; +``` + + +## Values + +| Name | Value | +| --------------------------------------------- | --------------------------------------------- | +| `TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15` | 2026-06-15 | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsRequest.md new file mode 100644 index 000000000..93ce3684c --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsRequest.md @@ -0,0 +1,9 @@ +# GetV1ContractorsContractorUuidMemberPortalInvitationsRequest + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsResponse.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsResponse.md new file mode 100644 index 000000000..130dc68ec --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsResponse.md @@ -0,0 +1,11 @@ +# GetV1ContractorsContractorUuidMemberPortalInvitationsResponse + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | +| `contentType` | *String* | :heavy_check_mark: | HTTP response content type for this operation | +| `statusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation | +| `rawResponse` | [HttpResponse\](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | +| `memberPortalInvitation` | [Optional\](../../models/components/MemberPortalInvitation.md) | :heavy_minus_sign: | Success | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1ContractorsContractorUuidPaymentsHeaderXGustoAPIVersion.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1ContractorsContractorUuidPaymentsHeaderXGustoAPIVersion.md new file mode 100644 index 000000000..ac4d29181 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1ContractorsContractorUuidPaymentsHeaderXGustoAPIVersion.md @@ -0,0 +1,18 @@ +# GetV1ContractorsContractorUuidPaymentsHeaderXGustoAPIVersion + +Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1ContractorsContractorUuidPaymentsHeaderXGustoAPIVersion; + +GetV1ContractorsContractorUuidPaymentsHeaderXGustoAPIVersion value = GetV1ContractorsContractorUuidPaymentsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15; +``` + + +## Values + +| Name | Value | +| --------------------------------------------- | --------------------------------------------- | +| `TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15` | 2026-06-15 | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1ContractorsContractorUuidPaymentsRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1ContractorsContractorUuidPaymentsRequest.md new file mode 100644 index 000000000..8aa624653 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1ContractorsContractorUuidPaymentsRequest.md @@ -0,0 +1,12 @@ +# GetV1ContractorsContractorUuidPaymentsRequest + + +## Fields + +| Field | Type | Required | Description | Example | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1ContractorsContractorUuidPaymentsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | +| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | | +| `sortBy` | *Optional\* | :heavy_minus_sign: | Sort the results. Format: `field` or `field:direction` where `field` is `check_date` or `created_at` and `direction` is `asc` or `desc`. | check_date:desc | +| `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | | +| `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1ContractorsContractorUuidPaymentsResponse.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1ContractorsContractorUuidPaymentsResponse.md new file mode 100644 index 000000000..2a76072a6 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1ContractorsContractorUuidPaymentsResponse.md @@ -0,0 +1,11 @@ +# GetV1ContractorsContractorUuidPaymentsResponse + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | +| `contentType` | *String* | :heavy_check_mark: | HTTP response content type for this operation | +| `statusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation | +| `rawResponse` | [HttpResponse\](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | +| `contractorPaymentListings` | List\<[ContractorPaymentListing](../../models/components/ContractorPaymentListing.md)> | :heavy_minus_sign: | A JSON array of contractor payments | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1EmployeesEmployeeIdCustomFieldsRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1EmployeesEmployeeIdCustomFieldsRequest.md index 293792d16..f5f22f6f1 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1EmployeesEmployeeIdCustomFieldsRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1EmployeesEmployeeIdCustomFieldsRequest.md @@ -5,7 +5,7 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeIdCustomFieldsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | | `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | -| `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeIdCustomFieldsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1EmployeesEmployeeIdHomeAddressesRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1EmployeesEmployeeIdHomeAddressesRequest.md index 6aebafe06..76ab936a3 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1EmployeesEmployeeIdHomeAddressesRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1EmployeesEmployeeIdHomeAddressesRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeIdHomeAddressesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeIdHomeAddressesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1EmployeesEmployeeIdJobsRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1EmployeesEmployeeIdJobsRequest.md index cf7a66074..3fc632e29 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1EmployeesEmployeeIdJobsRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1EmployeesEmployeeIdJobsRequest.md @@ -5,8 +5,8 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeIdJobsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | | `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | | `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | -| `include` | [Optional\](../../models/operations/GetV1EmployeesEmployeeIdJobsQueryParamInclude.md) | :heavy_minus_sign: | Available options:
    - all_compensations: Include all effective dated compensations for each job instead of only the current compensation
    | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeIdJobsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `include` | [Optional\](../../models/operations/GetV1EmployeesEmployeeIdJobsQueryParamInclude.md) | :heavy_minus_sign: | Available options:
    - all_compensations: Include all effective dated compensations for each job instead of only the current compensation
    | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.md new file mode 100644 index 000000000..70b080daa --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.md @@ -0,0 +1,18 @@ +# GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion + +Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion; + +GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion value = GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15; +``` + + +## Values + +| Name | Value | +| --------------------------------------------- | --------------------------------------------- | +| `TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15` | 2026-06-15 | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest.md new file mode 100644 index 000000000..1b278bbe8 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest.md @@ -0,0 +1,9 @@ +# GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse.md new file mode 100644 index 000000000..f3813fbd5 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse.md @@ -0,0 +1,11 @@ +# GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | +| `contentType` | *String* | :heavy_check_mark: | HTTP response content type for this operation | +| `statusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation | +| `rawResponse` | [HttpResponse\](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | +| `memberPortalInvitation` | [Optional\](../../models/components/MemberPortalInvitation.md) | :heavy_minus_sign: | Success | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1EmployeesEmployeeIdWorkAddressesRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1EmployeesEmployeeIdWorkAddressesRequest.md index d19a627b6..50040c09e 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1EmployeesEmployeeIdWorkAddressesRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1EmployeesEmployeeIdWorkAddressesRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeIdWorkAddressesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeIdWorkAddressesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.md index d65f1161d..512607983 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `employeeUuid` | *String* | :heavy_check_mark: | The UUID of the employee | -| `effectiveYear` | *long* | :heavy_check_mark: | The effective year for the Section 603 status | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `effectiveYear` | *long* | :heavy_check_mark: | The effective year for the Section 603 status | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.md index 80afc7e83..e9a06200c 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `employeeUuid` | *String* | :heavy_check_mark: | The UUID of the employee | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeUuid` | *String* | :heavy_check_mark: | The UUID of the employee | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion.md new file mode 100644 index 000000000..5ccac51f9 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion.md @@ -0,0 +1,18 @@ +# GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion + +Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion; + +GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion value = GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15; +``` + + +## Values + +| Name | Value | +| --------------------------------------------- | --------------------------------------------- | +| `TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15` | 2026-06-15 | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest.md index 5f54a4af0..eb0ec75b9 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `documentType` | [DocumentType](../../models/operations/DocumentType.md) | :heavy_check_mark: | The type of document being generated | -| `requestUuid` | *String* | :heavy_check_mark: | The UUID of the request to generate a document. Generate document endpoints return request_uuids to be used with the GET generated document endpoint. | -| `xGustoAPIVersion` | [Optional\](../../models/components/VersionHeader.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `requestUuid` | *String* | :heavy_check_mark: | The UUID of the request to generate a document. Generate document endpoints return request_uuids to be used with the GET generated document endpoint. | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1HomeAddressesHomeAddressUuidRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1HomeAddressesHomeAddressUuidRequest.md index a64d26076..c0c0df377 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1HomeAddressesHomeAddressUuidRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1HomeAddressesHomeAddressUuidRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `homeAddressUuid` | *String* | :heavy_check_mark: | The UUID of the home address | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1HomeAddressesHomeAddressUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1HomeAddressesHomeAddressUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `homeAddressUuid` | *String* | :heavy_check_mark: | The UUID of the home address | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1JobsJobIdRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1JobsJobIdRequest.md index 87c2fabaa..586a46dd8 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1JobsJobIdRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1JobsJobIdRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1JobsJobIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `jobId` | *String* | :heavy_check_mark: | The UUID of the job | -| `include` | [Optional\](../../models/operations/GetV1JobsJobIdQueryParamInclude.md) | :heavy_minus_sign: | Available options:
    - all_compensations: Include all effective dated compensations for each job instead of only the current compensation
    | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1JobsJobIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `include` | [Optional\](../../models/operations/GetV1JobsJobIdQueryParamInclude.md) | :heavy_minus_sign: | Available options:
    - all_compensations: Include all effective dated compensations for each job instead of only the current compensation
    | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1LocationsLocationUuidMinimumWagesRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1LocationsLocationUuidMinimumWagesRequest.md index b5c4959da..395a3c379 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1LocationsLocationUuidMinimumWagesRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1LocationsLocationUuidMinimumWagesRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `locationUuid` | *String* | :heavy_check_mark: | The UUID of the location | | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1LocationsLocationUuidMinimumWagesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | +| `locationUuid` | *String* | :heavy_check_mark: | The UUID of the location | | | `effectiveDate` | *Optional\* | :heavy_minus_sign: | N/A | 2020-01-31 | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest.md index 465361c16..7745ffd4a 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest.md index bf3425db7..115104e12 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidRequest.md index 6dbb99dc3..2a52e8262 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidRequest.md @@ -5,5 +5,7 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `payrollUuid` | *String* | :heavy_check_mark: | The UUID of the payroll | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | +| `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion.md new file mode 100644 index 000000000..b046045d2 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion.md @@ -0,0 +1,18 @@ +# GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion + +Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion; + +GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion value = GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15; +``` + + +## Values + +| Name | Value | +| --------------------------------------------- | --------------------------------------------- | +| `TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15` | 2026-06-15 | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1PayrollBatchesPayrollBatchUuidRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1PayrollBatchesPayrollBatchUuidRequest.md new file mode 100644 index 000000000..9e4304a5f --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1PayrollBatchesPayrollBatchUuidRequest.md @@ -0,0 +1,9 @@ +# GetV1PayrollBatchesPayrollBatchUuidRequest + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `payrollBatchUuid` | *String* | :heavy_check_mark: | The UUID of the payroll cancellation batch returned by `POST /v1/payroll_batches`. | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1PayrollBatchesPayrollBatchUuidResponse.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1PayrollBatchesPayrollBatchUuidResponse.md new file mode 100644 index 000000000..ada4d02fe --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1PayrollBatchesPayrollBatchUuidResponse.md @@ -0,0 +1,11 @@ +# GetV1PayrollBatchesPayrollBatchUuidResponse + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | +| `contentType` | *String* | :heavy_check_mark: | HTTP response content type for this operation | +| `statusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation | +| `rawResponse` | [HttpResponse\](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | +| `payrollBatchResults` | [Optional\](../../models/components/PayrollBatchResults.md) | :heavy_minus_sign: | successful | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1PayrollBatchesPayrollBatchUuidSecurity.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1PayrollBatchesPayrollBatchUuidSecurity.md new file mode 100644 index 000000000..06c6b17ca --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1PayrollBatchesPayrollBatchUuidSecurity.md @@ -0,0 +1,8 @@ +# GetV1PayrollBatchesPayrollBatchUuidSecurity + + +## Fields + +| Field | Type | Required | Description | +| ------------------ | ------------------ | ------------------ | ------------------ | +| `systemAccessAuth` | *String* | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1PayrollDigestsPayrollDigestUuidRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1PayrollDigestsPayrollDigestUuidRequest.md index 94932ddab..e1a2f32f4 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1PayrollDigestsPayrollDigestUuidRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1PayrollDigestsPayrollDigestUuidRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `payrollDigestUuid` | *String* | :heavy_check_mark: | The UUID of the payroll digest batch returned by `POST /v1/payroll_digests`. | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1PayrollDigestsPayrollDigestUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1PayrollDigestsPayrollDigestUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `payrollDigestUuid` | *String* | :heavy_check_mark: | The UUID of the payroll digest batch returned by `POST /v1/payroll_digests`. | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1PeopleBatchesPeopleBatchUuidRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1PeopleBatchesPeopleBatchUuidRequest.md index 8c0c6537d..300509ccb 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1PeopleBatchesPeopleBatchUuidRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1PeopleBatchesPeopleBatchUuidRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `peopleBatchUuid` | *String* | :heavy_check_mark: | The UUID of the people batch | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1PeopleBatchesPeopleBatchUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1PeopleBatchesPeopleBatchUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `peopleBatchUuid` | *String* | :heavy_check_mark: | The UUID of the people batch | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1WebhookSubscriptionUuidRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1WebhookSubscriptionUuidRequest.md index f375788c1..bb8018904 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1WebhookSubscriptionUuidRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1WebhookSubscriptionUuidRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `webhookSubscriptionUuid` | *String* | :heavy_check_mark: | The webhook subscription UUID. | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1WebhookSubscriptionUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1WebhookSubscriptionUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `webhookSubscriptionUuid` | *String* | :heavy_check_mark: | The webhook subscription UUID. | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1WebhookSubscriptionVerificationTokenUuidRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1WebhookSubscriptionVerificationTokenUuidRequest.md index 8d407e95d..fd4a311e8 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1WebhookSubscriptionVerificationTokenUuidRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1WebhookSubscriptionVerificationTokenUuidRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `webhookSubscriptionUuid` | *String* | :heavy_check_mark: | The webhook subscription UUID. | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1WebhookSubscriptionVerificationTokenUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1WebhookSubscriptionVerificationTokenUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `webhookSubscriptionUuid` | *String* | :heavy_check_mark: | The webhook subscription UUID. | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1WorkAddressesWorkAddressUuidRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1WorkAddressesWorkAddressUuidRequest.md index 55cbdc9b0..0be33d2ce 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1WorkAddressesWorkAddressUuidRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetV1WorkAddressesWorkAddressUuidRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `workAddressUuid` | *String* | :heavy_check_mark: | The UUID of the work address | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1WorkAddressesWorkAddressUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1WorkAddressesWorkAddressUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `workAddressUuid` | *String* | :heavy_check_mark: | The UUID of the work address | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/GetWireInRequestsWireInRequestUuidRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/GetWireInRequestsWireInRequestUuidRequest.md index 88549dd5c..7b5ec66a0 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/GetWireInRequestsWireInRequestUuidRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/GetWireInRequestsWireInRequestUuidRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `wireInRequestUuid` | *String* | :heavy_check_mark: | The UUID of the Wire In Request | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetWireInRequestsWireInRequestUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetWireInRequestsWireInRequestUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `wireInRequestUuid` | *String* | :heavy_check_mark: | The UUID of the Wire In Request | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/LeavingFor.md b/gusto_embedded_v_2026_06_15/docs/models/operations/LeavingFor.md index 5908bdf4e..fbe747b94 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/LeavingFor.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/LeavingFor.md @@ -35,6 +35,7 @@ LeavingFor value = LeavingFor.ACCOUNTANT; | `NAMELY` | namely | | `ONPAY` | onpay | | `OTHER` | other | +| `OTHER_PEO` | other_peo | | `OYSTER` | oyster | | `PATRIOT` | patriot | | `PAYCHEX` | paychex | @@ -44,6 +45,7 @@ LeavingFor value = LeavingFor.ACCOUNTANT; | `RIPPLING` | rippling | | `SQUARE` | square | | `SUREPAYROLL` | surepayroll | +| `TOAST` | toast | | `TRINET` | trinet | | `VELOCITY_GLOBAL` | velocity_global | | `ZENEFITS` | zenefits | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.md index 76cdb0c80..2ce283bde 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.md @@ -5,7 +5,7 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | `id` | *String* | :heavy_check_mark: | The UUID of the payroll | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `requestBody` | [Optional\](../../models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBody.md) | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsPaymentMethod.md b/gusto_embedded_v_2026_06_15/docs/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsPaymentMethod.md index 1e7a43f67..85cbcc9e8 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsPaymentMethod.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsPaymentMethod.md @@ -13,7 +13,9 @@ PatchV1ContractorPaymentGroupsIdPartnerDisbursementsPaymentMethod value = PatchV ## Values -| Name | Value | -| ---------------- | ---------------- | -| `DIRECT_DEPOSIT` | Direct Deposit | -| `CHECK` | Check | \ No newline at end of file +| Name | Value | +| -------------------- | -------------------- | +| `DIRECT_DEPOSIT` | Direct Deposit | +| `CHECK` | Check | +| `HISTORICAL_PAYMENT` | Historical Payment | +| `CORRECTION_PAYMENT` | Correction Payment | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.md index 46f310e3b..bb75e1de4 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `id` | *String* | :heavy_check_mark: | The UUID of the contractor payment group | | `xGustoAPIVersion` | [Optional\](../../models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `id` | *String* | :heavy_check_mark: | The UUID of the contractor payment group | | `requestBody` | [Optional\](../../models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBody.md) | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.md index f93a2192c..62aba45bc 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.md @@ -5,7 +5,7 @@ | Field | Type | Required | Description | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `employeeUuid` | *String* | :heavy_check_mark: | The UUID of the employee | | `effectiveYear` | *long* | :heavy_check_mark: | The effective year for the Section 603 status | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `employeeSection603HighEarnerStatusUpdateRequest` | [EmployeeSection603HighEarnerStatusUpdateRequest](../../models/components/EmployeeSection603HighEarnerStatusUpdateRequest.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/PostDepartmentsRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/PostDepartmentsRequest.md index a0ac02170..52954e667 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/PostDepartmentsRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/PostDepartmentsRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/PostDepartmentsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `departmentCreateRequestBody` | [DepartmentCreateRequestBody](../../models/components/DepartmentCreateRequestBody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest.md index 4f2143bde..aa464e21f 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `partnerManagedCompanyAcceptTermsOfServiceRequest` | [PartnerManagedCompanyAcceptTermsOfServiceRequest](../../models/components/PartnerManagedCompanyAcceptTermsOfServiceRequest.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest.md index af85fbf8c..86c040233 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `partnerManagedCompanyRetrieveTermsOfServiceRequest` | [PartnerManagedCompanyRetrieveTermsOfServiceRequest](../../models/components/PartnerManagedCompanyRetrieveTermsOfServiceRequest.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1BulkReportsHeaderXGustoAPIVersion.md b/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1BulkReportsHeaderXGustoAPIVersion.md new file mode 100644 index 000000000..4998dc46d --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1BulkReportsHeaderXGustoAPIVersion.md @@ -0,0 +1,18 @@ +# PostV1BulkReportsHeaderXGustoAPIVersion + +Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1BulkReportsHeaderXGustoAPIVersion; + +PostV1BulkReportsHeaderXGustoAPIVersion value = PostV1BulkReportsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15; +``` + + +## Values + +| Name | Value | +| --------------------------------------------- | --------------------------------------------- | +| `TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15` | 2026-06-15 | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1BulkReportsRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1BulkReportsRequest.md new file mode 100644 index 000000000..9e340b098 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1BulkReportsRequest.md @@ -0,0 +1,9 @@ +# PostV1BulkReportsRequest + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1BulkReportsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | +| `bulkReportBody` | [BulkReportBody](../../models/components/BulkReportBody.md) | :heavy_check_mark: | N/A | {
    "batch": [
    {
    "company_uuid": "12345678-abcd-ef12-3456-7890abcdef12",
    "report_type": "custom_report",
    "columns": [
    "employee_first_name"
    ],
    "groupings": [
    "employee"
    ],
    "file_type": "csv",
    "custom_name": "Q1 Payroll Export",
    "with_totals": false,
    "start_date": "2026-01-01",
    "end_date": "2026-03-31",
    "date_filter_type": "check_date",
    "payment_method": "check",
    "employment_type": "exempt",
    "employment_status": "active_full_time"
    },
    {
    "company_uuid": "12345678-abcd-ef12-3456-7890abcdef12",
    "report_type": "general_ledger",
    "payroll_uuid": "7b1d0df1-6403-4a06-8768-c1dd7d24d27a",
    "aggregation": "default"
    }
    ]
    } | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1BulkReportsResponse.md b/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1BulkReportsResponse.md new file mode 100644 index 000000000..ff0e1b271 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1BulkReportsResponse.md @@ -0,0 +1,11 @@ +# PostV1BulkReportsResponse + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | +| `contentType` | *String* | :heavy_check_mark: | HTTP response content type for this operation | +| `statusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation | +| `rawResponse` | [HttpResponse\](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | +| `createBulkReport` | [Optional\](../../models/components/CreateBulkReport.md) | :heavy_minus_sign: | Created | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1BulkReportsSecurity.md b/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1BulkReportsSecurity.md new file mode 100644 index 000000000..ae57a7bec --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1BulkReportsSecurity.md @@ -0,0 +1,8 @@ +# PostV1BulkReportsSecurity + + +## Fields + +| Field | Type | Required | Description | +| ------------------ | ------------------ | ------------------ | ------------------ | +| `systemAccessAuth` | *String* | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1CompaniesCompanyIdPayrollsRequestBody.md b/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1CompaniesCompanyIdPayrollsRequestBody.md index e3c08e3dc..816524865 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1CompaniesCompanyIdPayrollsRequestBody.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1CompaniesCompanyIdPayrollsRequestBody.md @@ -10,7 +10,7 @@ | `startDate` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_check_mark: | Pay period start date. | | `endDate` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_check_mark: | Pay period end date. | | `payScheduleUuid` | *Optional\* | :heavy_minus_sign: | A pay schedule is required for transition from old pay schedule payroll to identify the matching transition pay period. | -| `employeeUuids` | List\<*String*> | :heavy_minus_sign: | A list of employee uuids to include on the payroll. | +| `employeeUuids` | List\<*String*> | :heavy_minus_sign: | A list of employee UUIDs to include on the payroll. At least one UUID is required for non-termination off-cycle payrolls. | | `checkDate` | [LocalDate](https://docs.oracle.com/javase/8/docs/api/java/time/LocalDate.html) | :heavy_minus_sign: | Payment date. | | `withholdingPayPeriod` | [Optional\](../../models/operations/WithholdingPayPeriod.md) | :heavy_minus_sign: | The payment schedule tax rate the payroll is based on. | | `skipRegularDeductions` | *Optional\* | :heavy_minus_sign: | Block regular deductions and contributions for this payroll. | diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesBatch.md b/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesBatch.md new file mode 100644 index 000000000..715af28ad --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesBatch.md @@ -0,0 +1,15 @@ +# PostV1CompaniesCompanyIdPeopleBatchesBatch + + +## Fields + +| Field | Type | Required | Description | Example | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| `entityType` | [PostV1CompaniesCompanyIdPeopleBatchesEntityType](../../models/operations/PostV1CompaniesCompanyIdPeopleBatchesEntityType.md) | :heavy_check_mark: | The type of entity to create | employee | +| `person` | [Person](../../models/operations/Person.md) | :heavy_check_mark: | N/A | | +| `homeAddress` | [Optional\](../../models/operations/PostV1CompaniesCompanyIdPeopleBatchesHomeAddress.md) | :heavy_minus_sign: | Home address for the employee | | +| `workAddress` | [Optional\](../../models/operations/PostV1CompaniesCompanyIdPeopleBatchesWorkAddress.md) | :heavy_minus_sign: | Specify the company work location for the employee | | +| `job` | [Optional\](../../models/operations/PostV1CompaniesCompanyIdPeopleBatchesJob.md) | :heavy_minus_sign: | Job details for the employee (required if compensation is provided) | | +| `department` | [Optional\](../../models/operations/Department.md) | :heavy_minus_sign: | Department details for the employee | | +| `compensation` | [Optional\](../../models/operations/Compensation.md) | :heavy_minus_sign: | Compensation details for the employee (requires job to be provided) | | +| `bankAccounts` | List\<[BankAccounts](../../models/operations/BankAccounts.md)> | :heavy_minus_sign: | Creates employee bank account(s) and payment method(s) for direct deposit. Payments can be split across accounts by Percentage or by Amount. If splitting payments by `Percentage`, all splits must have a `split_amount` and the percentages must add up to `100`.
    If splitting payments by `Amount`, the priority is set based on the order of the bank accounts in the array and the last bank account is the remainder account (should have `split_amount` set to `null`). | | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesBatchAction.md b/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesBatchAction.md new file mode 100644 index 000000000..138f73568 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesBatchAction.md @@ -0,0 +1,18 @@ +# PostV1CompaniesCompanyIdPeopleBatchesBatchAction + +The action to perform on the batch + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1CompaniesCompanyIdPeopleBatchesBatchAction; + +PostV1CompaniesCompanyIdPeopleBatchesBatchAction value = PostV1CompaniesCompanyIdPeopleBatchesBatchAction.CREATE; +``` + + +## Values + +| Name | Value | +| -------- | -------- | +| `CREATE` | create | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesEntityType.md b/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesEntityType.md new file mode 100644 index 000000000..2c63e8a36 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesEntityType.md @@ -0,0 +1,18 @@ +# PostV1CompaniesCompanyIdPeopleBatchesEntityType + +The type of entity to create + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1CompaniesCompanyIdPeopleBatchesEntityType; + +PostV1CompaniesCompanyIdPeopleBatchesEntityType value = PostV1CompaniesCompanyIdPeopleBatchesEntityType.EMPLOYEE; +``` + + +## Values + +| Name | Value | +| ---------- | ---------- | +| `EMPLOYEE` | employee | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequest.md index 8e61170ff..39900e87a 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1CompaniesCompanyIdPeopleBatchesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | `requestBody` | [PostV1CompaniesCompanyIdPeopleBatchesRequestBody](../../models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequestBody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequestBody.md b/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequestBody.md index 08dc4bd9d..934a96713 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequestBody.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequestBody.md @@ -3,8 +3,8 @@ ## Fields -| Field | Type | Required | Description | Example | -| -------------------------------------------------------------- | -------------------------------------------------------------- | -------------------------------------------------------------- | -------------------------------------------------------------- | -------------------------------------------------------------- | -| `idempotencyKey` | *String* | :heavy_check_mark: | A unique identifier to ensure idempotency of the batch request | 550e8400-e29b-41d4-a716-446655440000 | -| `batchAction` | [BatchAction](../../models/operations/BatchAction.md) | :heavy_check_mark: | The action to perform on the batch | create | -| `batch` | List\<[Batch](../../models/operations/Batch.md)> | :heavy_check_mark: | Array of people to create | | \ No newline at end of file +| Field | Type | Required | Description | Example | +| ------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------- | +| `idempotencyKey` | *String* | :heavy_check_mark: | A unique identifier to ensure idempotency of the batch request | 550e8400-e29b-41d4-a716-446655440000 | +| `batchAction` | [PostV1CompaniesCompanyIdPeopleBatchesBatchAction](../../models/operations/PostV1CompaniesCompanyIdPeopleBatchesBatchAction.md) | :heavy_check_mark: | The action to perform on the batch | create | +| `batch` | List\<[PostV1CompaniesCompanyIdPeopleBatchesBatch](../../models/operations/PostV1CompaniesCompanyIdPeopleBatchesBatch.md)> | :heavy_check_mark: | Array of people to create | | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1CompaniesCompanyUuidSignatoriesInviteRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1CompaniesCompanyUuidSignatoriesInviteRequest.md index 8790dab06..43d8574c2 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1CompaniesCompanyUuidSignatoriesInviteRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1CompaniesCompanyUuidSignatoriesInviteRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1CompaniesCompanyUuidSignatoriesInviteHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `signatoryInviteRequest` | [SignatoryInviteRequest](../../models/components/SignatoryInviteRequest.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1CompanySignatoriesRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1CompanySignatoriesRequest.md index 9a5dd743a..a06b64950 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1CompanySignatoriesRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1CompanySignatoriesRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1CompanySignatoriesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `signatoryCreateRequest` | [SignatoryCreateRequest](../../models/components/SignatoryCreateRequest.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.md b/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.md new file mode 100644 index 000000000..526cd213a --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.md @@ -0,0 +1,18 @@ +# PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion + +Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion; + +PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion value = PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15; +``` + + +## Values + +| Name | Value | +| --------------------------------------------- | --------------------------------------------- | +| `TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15` | 2026-06-15 | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsRequest.md new file mode 100644 index 000000000..966121990 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsRequest.md @@ -0,0 +1,9 @@ +# PostV1ContractorsContractorUuidMemberPortalInvitationsRequest + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsResponse.md b/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsResponse.md new file mode 100644 index 000000000..481a117a0 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsResponse.md @@ -0,0 +1,10 @@ +# PostV1ContractorsContractorUuidMemberPortalInvitationsResponse + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | +| `contentType` | *String* | :heavy_check_mark: | HTTP response content type for this operation | +| `statusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation | +| `rawResponse` | [HttpResponse\](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1ContractorsContractorUuidRehireRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1ContractorsContractorUuidRehireRequest.md index 97ec33c6e..6598bac8c 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1ContractorsContractorUuidRehireRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1ContractorsContractorUuidRehireRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | | `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1ContractorsContractorUuidRehireHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | | `requestBody` | [Optional\](../../models/operations/PostV1ContractorsContractorUuidRehireRequestBody.md) | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1ContractorsContractorUuidTerminationRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1ContractorsContractorUuidTerminationRequest.md index 2a911bb23..deea20426 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1ContractorsContractorUuidTerminationRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1ContractorsContractorUuidTerminationRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | | `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1ContractorsContractorUuidTerminationHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | | `requestBody` | [Optional\](../../models/operations/PostV1ContractorsContractorUuidTerminationRequestBody.md) | :heavy_minus_sign: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1EmployeesEmployeeIdHomeAddressesRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1EmployeesEmployeeIdHomeAddressesRequest.md index 8e8b60278..ea4752ef3 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1EmployeesEmployeeIdHomeAddressesRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1EmployeesEmployeeIdHomeAddressesRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | | `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1EmployeesEmployeeIdHomeAddressesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | | `requestBody` | [PostV1EmployeesEmployeeIdHomeAddressesRequestBody](../../models/operations/PostV1EmployeesEmployeeIdHomeAddressesRequestBody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1EmployeesEmployeeIdJobsRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1EmployeesEmployeeIdJobsRequest.md index c66ac8cd1..8227a3f15 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1EmployeesEmployeeIdJobsRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1EmployeesEmployeeIdJobsRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | | `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1EmployeesEmployeeIdJobsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | | `jobsCreateRequestBody` | [JobsCreateRequestBody](../../models/components/JobsCreateRequestBody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1EmployeesEmployeeIdJobsResponse.md b/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1EmployeesEmployeeIdJobsResponse.md index 4347a1f9c..78c50467b 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1EmployeesEmployeeIdJobsResponse.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1EmployeesEmployeeIdJobsResponse.md @@ -8,4 +8,4 @@ | `contentType` | *String* | :heavy_check_mark: | HTTP response content type for this operation | | `statusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation | | `rawResponse` | [HttpResponse\](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | -| `job` | [Optional\](../../models/components/Job.md) | :heavy_minus_sign: | created | \ No newline at end of file +| `job` | [Optional\](../../models/components/Job.md) | :heavy_minus_sign: | created a primary job with a null title | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.md b/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.md new file mode 100644 index 000000000..1647b420f --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.md @@ -0,0 +1,18 @@ +# PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion + +Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion; + +PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion value = PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15; +``` + + +## Values + +| Name | Value | +| --------------------------------------------- | --------------------------------------------- | +| `TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15` | 2026-06-15 | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest.md new file mode 100644 index 000000000..e59810e0f --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest.md @@ -0,0 +1,9 @@ +# PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse.md b/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse.md new file mode 100644 index 000000000..ab7f01e37 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse.md @@ -0,0 +1,10 @@ +# PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | +| `contentType` | *String* | :heavy_check_mark: | HTTP response content type for this operation | +| `statusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation | +| `rawResponse` | [HttpResponse\](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1EmployeesEmployeeIdWorkAddressesRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1EmployeesEmployeeIdWorkAddressesRequest.md index c94f3722d..39eb4db57 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1EmployeesEmployeeIdWorkAddressesRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1EmployeesEmployeeIdWorkAddressesRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | | `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1EmployeesEmployeeIdWorkAddressesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | | `requestBody` | [PostV1EmployeesEmployeeIdWorkAddressesRequestBody](../../models/operations/PostV1EmployeesEmployeeIdWorkAddressesRequestBody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.md index b427efdbf..a39f3225d 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `employeeUuid` | *String* | :heavy_check_mark: | The UUID of the employee | | `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeUuid` | *String* | :heavy_check_mark: | The UUID of the employee | | `employeeSection603HighEarnerStatusCreateRequest` | [EmployeeSection603HighEarnerStatusCreateRequest](../../models/components/EmployeeSection603HighEarnerStatusCreateRequest.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest.md index 88c2a4c7b..c360f454a 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `partnerManagedCompanyAcceptTermsOfServiceRequest` | [PartnerManagedCompanyAcceptTermsOfServiceRequest](../../models/components/PartnerManagedCompanyAcceptTermsOfServiceRequest.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1PayrollBatchesHeaderXGustoAPIVersion.md b/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1PayrollBatchesHeaderXGustoAPIVersion.md new file mode 100644 index 000000000..23e0a2cbe --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1PayrollBatchesHeaderXGustoAPIVersion.md @@ -0,0 +1,18 @@ +# PostV1PayrollBatchesHeaderXGustoAPIVersion + +Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1PayrollBatchesHeaderXGustoAPIVersion; + +PostV1PayrollBatchesHeaderXGustoAPIVersion value = PostV1PayrollBatchesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15; +``` + + +## Values + +| Name | Value | +| --------------------------------------------- | --------------------------------------------- | +| `TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15` | 2026-06-15 | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1PayrollBatchesRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1PayrollBatchesRequest.md new file mode 100644 index 000000000..e44ed5f4a --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1PayrollBatchesRequest.md @@ -0,0 +1,9 @@ +# PostV1PayrollBatchesRequest + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1PayrollBatchesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `requestBody` | [PostV1PayrollBatchesRequestBody](../../models/operations/PostV1PayrollBatchesRequestBody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1PayrollBatchesRequestBody.md b/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1PayrollBatchesRequestBody.md new file mode 100644 index 000000000..14a2ebbbf --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1PayrollBatchesRequestBody.md @@ -0,0 +1,10 @@ +# PostV1PayrollBatchesRequestBody + + +## Fields + +| Field | Type | Required | Description | Example | +| ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------- | +| `idempotencyKey` | *String* | :heavy_check_mark: | A partner-generated unique identifier to ensure idempotency of the batch request. Scoped per partner. | 80a74f8b-2c16-45e5-9038-aa108849c6e6 | +| `batchAction` | [BatchAction](../../models/operations/BatchAction.md) | :heavy_check_mark: | The action to perform on the batch. Only `cancel` is supported. | cancel | +| `batch` | List\<[Batch](../../models/operations/Batch.md)> | :heavy_check_mark: | Array of payrolls to cancel. Maximum 100 payrolls per request. | | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1PayrollBatchesResponse.md b/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1PayrollBatchesResponse.md new file mode 100644 index 000000000..7a82db52f --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1PayrollBatchesResponse.md @@ -0,0 +1,11 @@ +# PostV1PayrollBatchesResponse + + +## Fields + +| Field | Type | Required | Description | +| -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------- | +| `contentType` | *String* | :heavy_check_mark: | HTTP response content type for this operation | +| `statusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation | +| `rawResponse` | [HttpResponse\](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | +| `payrollBatch` | [Optional\](../../models/components/PayrollBatch.md) | :heavy_minus_sign: | created | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1PayrollBatchesSecurity.md b/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1PayrollBatchesSecurity.md new file mode 100644 index 000000000..c89721adb --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/PostV1PayrollBatchesSecurity.md @@ -0,0 +1,8 @@ +# PostV1PayrollBatchesSecurity + + +## Fields + +| Field | Type | Required | Description | +| ------------------ | ------------------ | ------------------ | ------------------ | +| `systemAccessAuth` | *String* | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/PutAddPeopleToDepartmentRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/PutAddPeopleToDepartmentRequest.md index d7876c7e2..aa61e40bb 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/PutAddPeopleToDepartmentRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/PutAddPeopleToDepartmentRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `departmentUuid` | *String* | :heavy_check_mark: | The UUID of the department | | `xGustoAPIVersion` | [Optional\](../../models/operations/PutAddPeopleToDepartmentHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `departmentUuid` | *String* | :heavy_check_mark: | The UUID of the department | | `departmentPeopleRequestBody` | [DepartmentPeopleRequestBody](../../models/components/DepartmentPeopleRequestBody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/PutDepartmentsRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/PutDepartmentsRequest.md index 0e429b407..6a6d7b037 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/PutDepartmentsRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/PutDepartmentsRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `departmentUuid` | *String* | :heavy_check_mark: | The UUID of the department | | `xGustoAPIVersion` | [Optional\](../../models/operations/PutDepartmentsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `departmentUuid` | *String* | :heavy_check_mark: | The UUID of the department | | `departmentUpdateRequestBody` | [DepartmentUpdateRequestBody](../../models/components/DepartmentUpdateRequestBody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/PutRemovePeopleFromDepartmentRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/PutRemovePeopleFromDepartmentRequest.md index f6db8e85c..16ea106aa 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/PutRemovePeopleFromDepartmentRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/PutRemovePeopleFromDepartmentRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `departmentUuid` | *String* | :heavy_check_mark: | The UUID of the department | | `xGustoAPIVersion` | [Optional\](../../models/operations/PutRemovePeopleFromDepartmentHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `departmentUuid` | *String* | :heavy_check_mark: | The UUID of the department | | `departmentPeopleRequestBody` | [DepartmentPeopleRequestBody](../../models/components/DepartmentPeopleRequestBody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1CompaniesCompanyIdFederalTaxDetailsRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1CompaniesCompanyIdFederalTaxDetailsRequest.md index 98aef451c..621b3bb8d 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1CompaniesCompanyIdFederalTaxDetailsRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1CompaniesCompanyIdFederalTaxDetailsRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | 7b1d0df1-6403-4a06-8768-c1dd7d24d27a | | `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1CompaniesCompanyIdFederalTaxDetailsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | 7b1d0df1-6403-4a06-8768-c1dd7d24d27a | | `federalTaxDetailsUpdate` | [FederalTaxDetailsUpdate](../../models/components/FederalTaxDetailsUpdate.md) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBody.md b/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBody.md index 1193dc0ac..5f5ba18b3 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBody.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBody.md @@ -3,6 +3,6 @@ ## Fields -| Field | Type | Required | Description | -| ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | -| `employeeUuids` | List\<*String*> | :heavy_minus_sign: | An array of employee UUIDs. If passed, only those employees payroll items will be prepared. | \ No newline at end of file +| Field | Type | Required | Description | +| ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `employeeUuids` | List\<*String*> | :heavy_minus_sign: | The employees to prepare, identified by UUID. If omitted, every employee currently on the payroll is prepared.

    **Off-cycle payrolls that support multiple employees (`Bonus`, `Correction`, `Adhoc`):** passing `employee_uuids` also adds eligible employees who aren't yet on the payroll - a listed employee not on the payroll is added, while one already on it is simply prepared. A request may include up to 100 UUIDs, of which at most 25 may be employees not already on the payroll; an ineligible or unknown UUID, or more than 25 new employees, is rejected with a 422.

    **All other payrolls:** `employee_uuids` selects which of the payroll's existing employees to prepare; a UUID for an employee not on the payroll is rejected with a 422. | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.md index 3b1edb2ee..355dc82ed 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.md @@ -5,7 +5,7 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `signatoryUuid` | *String* | :heavy_check_mark: | The UUID of the signatory | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `signatoryUpdateRequest` | [SignatoryUpdateRequest](../../models/components/SignatoryUpdateRequest.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1CompaniesCompanyUuidTaxRequirementsStateRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1CompaniesCompanyUuidTaxRequirementsStateRequest.md index 8e8c65dd6..59917c760 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1CompaniesCompanyUuidTaxRequirementsStateRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1CompaniesCompanyUuidTaxRequirementsStateRequest.md @@ -5,7 +5,7 @@ | Field | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1CompaniesCompanyUuidTaxRequirementsStateHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | | `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | | `state` | *String* | :heavy_check_mark: | The two-letter state abbreviation | CA | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1CompaniesCompanyUuidTaxRequirementsStateHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | | `requestBody` | [PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody](../../models/operations/PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody.md) | :heavy_check_mark: | N/A | | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1CompaniesRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1CompaniesRequest.md index 92dfc34fd..159c8a953 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1CompaniesRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1CompaniesRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1CompaniesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | `requestBody` | [PutV1CompaniesRequestBody](../../models/operations/PutV1CompaniesRequestBody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1CompanyIndustryRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1CompanyIndustryRequest.md index e9f2a2053..5982a88b7 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1CompanyIndustryRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1CompanyIndustryRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1CompanyIndustryHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | `companyIndustrySelectionRequiredBody` | [CompanyIndustrySelectionRequiredBody](../../models/components/CompanyIndustrySelectionRequiredBody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest.md index 101d5cead..ff81244f2 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest.md @@ -5,5 +5,5 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `contractorPaymentGroupUuid` | *String* | :heavy_check_mark: | The UUID of the contractor payment group | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | \ No newline at end of file +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorPaymentGroupUuid` | *String* | :heavy_check_mark: | The UUID of the contractor payment group | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1JobsJobIdRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1JobsJobIdRequest.md index 5693ace76..e592dadba 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1JobsJobIdRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1JobsJobIdRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `jobId` | *String* | :heavy_check_mark: | The UUID of the job | | `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1JobsJobIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `jobId` | *String* | :heavy_check_mark: | The UUID of the job | | `jobsUpdateRequestBody` | [JobsUpdateRequestBody](../../models/components/JobsUpdateRequestBody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1JobsJobIdResponse.md b/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1JobsJobIdResponse.md index 382e72363..bb4b0f4e4 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1JobsJobIdResponse.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1JobsJobIdResponse.md @@ -8,4 +8,4 @@ | `contentType` | *String* | :heavy_check_mark: | HTTP response content type for this operation | | `statusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation | | `rawResponse` | [HttpResponse\](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | -| `job` | [Optional\](../../models/components/Job.md) | :heavy_minus_sign: | successful | \ No newline at end of file +| `job` | [Optional\](../../models/components/Job.md) | :heavy_minus_sign: | successful blank title on a non-primary active job | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion.md b/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion.md new file mode 100644 index 000000000..ea079e52f --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion.md @@ -0,0 +1,18 @@ +# PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion + +Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + +## Example Usage + +```java +import com.gusto.embedded_api_v_2026_06_15.models.operations.PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion; + +PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion value = PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15; +``` + + +## Values + +| Name | Value | +| --------------------------------------------- | --------------------------------------------- | +| `TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15` | 2026-06-15 | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest.md new file mode 100644 index 000000000..45b4b9023 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest.md @@ -0,0 +1,9 @@ +# PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse.md b/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse.md new file mode 100644 index 000000000..1c7129d6e --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse.md @@ -0,0 +1,11 @@ +# PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse + + +## Fields + +| Field | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- | +| `contentType` | *String* | :heavy_check_mark: | HTTP response content type for this operation | +| `statusCode` | *int* | :heavy_check_mark: | HTTP response status code for this operation | +| `rawResponse` | [HttpResponse\](https://docs.oracle.com/en/java/javase/11/docs/api/java.net.http/java/net/http/HttpResponse.html) | :heavy_check_mark: | Raw HTTP response; suitable for custom response parsing | +| `partnerManagedCompanyDisassociateResponse` | [Optional\](../../models/components/PartnerManagedCompanyDisassociateResponse.md) | :heavy_minus_sign: | OK | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity.md b/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity.md new file mode 100644 index 000000000..d4704fc62 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity.md @@ -0,0 +1,8 @@ +# PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity + + +## Fields + +| Field | Type | Required | Description | +| ------------------ | ------------------ | ------------------ | ------------------ | +| `systemAccessAuth` | *String* | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest.md index 7a3caec0d..b5bf48b8d 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1PartnerManagedCompaniesCompanyUuidMigrateHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `partnerManagedCompanyMigrateRequest` | [PartnerManagedCompanyMigrateRequest](../../models/components/PartnerManagedCompanyMigrateRequest.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest.md index 47d972ee8..7be5a5ddf 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `partnerManagedCompanyRetrieveTermsOfServiceRequest` | [PartnerManagedCompanyRetrieveTermsOfServiceRequest](../../models/components/PartnerManagedCompanyRetrieveTermsOfServiceRequest.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1VerifyWebhookSubscriptionUuidRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1VerifyWebhookSubscriptionUuidRequest.md index 6e933d7e9..4c3b9b24b 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1VerifyWebhookSubscriptionUuidRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1VerifyWebhookSubscriptionUuidRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `webhookSubscriptionUuid` | *String* | :heavy_check_mark: | The webhook subscription UUID. | | `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1VerifyWebhookSubscriptionUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `webhookSubscriptionUuid` | *String* | :heavy_check_mark: | The webhook subscription UUID. | | `requestBody` | [PutV1VerifyWebhookSubscriptionUuidRequestBody](../../models/operations/PutV1VerifyWebhookSubscriptionUuidRequestBody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1WebhookSubscriptionUuidRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1WebhookSubscriptionUuidRequest.md index b9f66c8ca..7ce624932 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1WebhookSubscriptionUuidRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1WebhookSubscriptionUuidRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `webhookSubscriptionUuid` | *String* | :heavy_check_mark: | The webhook subscription UUID. | | `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1WebhookSubscriptionUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `webhookSubscriptionUuid` | *String* | :heavy_check_mark: | The webhook subscription UUID. | | `requestBody` | [PutV1WebhookSubscriptionUuidRequestBody](../../models/operations/PutV1WebhookSubscriptionUuidRequestBody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1WebhookSubscriptionUuidSubscriptionTypes.md b/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1WebhookSubscriptionUuidSubscriptionTypes.md index 7bb2bf736..886d94e69 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1WebhookSubscriptionUuidSubscriptionTypes.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1WebhookSubscriptionUuidSubscriptionTypes.md @@ -29,4 +29,5 @@ PutV1WebhookSubscriptionUuidSubscriptionTypes value = PutV1WebhookSubscriptionUu | `PAYROLL_SYNC` | PayrollSync | | `PAY_SCHEDULE` | PaySchedule | | `PEOPLE_BATCH` | PeopleBatch | -| `SIGNATORY` | Signatory | \ No newline at end of file +| `SIGNATORY` | Signatory | +| `TIME_OFF_REQUEST` | TimeOffRequest | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1WorkAddressesWorkAddressUuidRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1WorkAddressesWorkAddressUuidRequest.md index 7a7d25b31..9a0ff4331 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1WorkAddressesWorkAddressUuidRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/PutV1WorkAddressesWorkAddressUuidRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `workAddressUuid` | *String* | :heavy_check_mark: | The UUID of the work address | | `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1WorkAddressesWorkAddressUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `workAddressUuid` | *String* | :heavy_check_mark: | The UUID of the work address | | `requestBody` | [PutV1WorkAddressesWorkAddressUuidRequestBody](../../models/operations/PutV1WorkAddressesWorkAddressUuidRequestBody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/PutWireInRequestsWireInRequestUuidRequest.md b/gusto_embedded_v_2026_06_15/docs/models/operations/PutWireInRequestsWireInRequestUuidRequest.md index 35548bea3..13faf2ee8 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/PutWireInRequestsWireInRequestUuidRequest.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/PutWireInRequestsWireInRequestUuidRequest.md @@ -5,6 +5,6 @@ | Field | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `wireInRequestUuid` | *String* | :heavy_check_mark: | The UUID of the Wire In Request | | `xGustoAPIVersion` | [Optional\](../../models/operations/PutWireInRequestsWireInRequestUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `wireInRequestUuid` | *String* | :heavy_check_mark: | The UUID of the Wire In Request | | `wireInRequestUpdateRequestBody` | [WireInRequestUpdateRequestBody](../../models/components/WireInRequestUpdateRequestBody.md) | :heavy_check_mark: | N/A | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/models/operations/SubscriptionTypes.md b/gusto_embedded_v_2026_06_15/docs/models/operations/SubscriptionTypes.md index 2abd69507..42e8eccaa 100644 --- a/gusto_embedded_v_2026_06_15/docs/models/operations/SubscriptionTypes.md +++ b/gusto_embedded_v_2026_06_15/docs/models/operations/SubscriptionTypes.md @@ -29,4 +29,5 @@ SubscriptionTypes value = SubscriptionTypes.BANK_ACCOUNT; | `PAYROLL_SYNC` | PayrollSync | | `PAY_SCHEDULE` | PaySchedule | | `PEOPLE_BATCH` | PeopleBatch | -| `SIGNATORY` | Signatory | \ No newline at end of file +| `SIGNATORY` | Signatory | +| `TIME_OFF_REQUEST` | TimeOffRequest | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/sdks/companies/README.md b/gusto_embedded_v_2026_06_15/docs/sdks/companies/README.md index 5884b5dca..1627a8a19 100644 --- a/gusto_embedded_v_2026_06_15/docs/sdks/companies/README.md +++ b/gusto_embedded_v_2026_06_15/docs/sdks/companies/README.md @@ -11,6 +11,7 @@ * [getCustomFields](#getcustomfields) - Get the custom fields of a company * [getOnboardingStatus](#getonboardingstatus) - Get company onboarding status * [finishOnboarding](#finishonboarding) - Finish company onboarding +* [putV1PartnerManagedCompaniesCompanyUuidDisassociate](#putv1partnermanagedcompaniescompanyuuiddisassociate) - Disassociate a partner managed company * [migrate](#migrate) - Migrate company to embedded payroll * [createPartnerManaged](#createpartnermanaged) - Create a partner managed company * [getV1PartnerManagedCompaniesCompanyUuidMigrationReadiness](#getv1partnermanagedcompaniescompanyuuidmigrationreadiness) - Check company migration readiness @@ -175,8 +176,8 @@ public class Application { .build(); GetV1CompaniesResponse res = sdk.companies().get() - .companyId("") .xGustoAPIVersion(GetV1CompaniesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .companyId("") .call(); if (res.company().isPresent()) { @@ -190,8 +191,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | ### Response @@ -231,8 +232,8 @@ public class Application { .build(); PutV1CompaniesResponse res = sdk.companies().update() - .companyId("") .xGustoAPIVersion(PutV1CompaniesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .companyId("") .requestBody(PutV1CompaniesRequestBody.builder() .contractorOnly(true) .build()) @@ -249,8 +250,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1CompaniesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | `requestBody` | [PutV1CompaniesRequestBody](../../models/operations/PutV1CompaniesRequestBody.md) | :heavy_check_mark: | N/A | ### Response @@ -351,9 +352,9 @@ public class Application { .build(); GetV1CompanyOnboardingStatusResponse res = sdk.companies().getOnboardingStatus() + .xGustoAPIVersion(GetV1CompanyOnboardingStatusHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) .companyUuid("7b1d0df1-6403-4a06-8768-c1dd7d24d27a") .additionalSteps("external_payroll") - .xGustoAPIVersion(GetV1CompanyOnboardingStatusHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) .call(); if (res.companyOnboardingStatus().isPresent()) { @@ -367,9 +368,9 @@ public class Application { | Parameter | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompanyOnboardingStatusHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | | `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | 7b1d0df1-6403-4a06-8768-c1dd7d24d27a | | `additionalSteps` | *Optional\* | :heavy_minus_sign: | Comma-delimited string of additional onboarding steps to include. Currently only supports the value "external_payroll". | external_payroll | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompanyOnboardingStatusHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | ### Response @@ -424,8 +425,8 @@ public class Application { .build(); GetV1CompanyFinishOnboardingResponse res = sdk.companies().finishOnboarding() - .companyUuid("7b1d0df1-6403-4a06-8768-c1dd7d24d27a") .xGustoAPIVersion(GetV1CompanyFinishOnboardingHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .companyUuid("7b1d0df1-6403-4a06-8768-c1dd7d24d27a") .call(); if (res.companyOnboardingStatus().isPresent()) { @@ -439,8 +440,8 @@ public class Application { | Parameter | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | 7b1d0df1-6403-4a06-8768-c1dd7d24d27a | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompanyFinishOnboardingHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | 7b1d0df1-6403-4a06-8768-c1dd7d24d27a | ### Response @@ -454,6 +455,70 @@ public class Application { | models/errors/UnprocessableEntityError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | +## putV1PartnerManagedCompaniesCompanyUuidDisassociate + +Disassociate a company from your embedded payroll product, reversing an earlier association or migration. You can only disassociate a company that is currently associated with your application. + +📘 System Access Authentication + +This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + +scope: `partner_managed_companies:disassociate` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api_v_2026_06_15.GustoEmbedded; +import com.gusto.embedded_api_v_2026_06_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2026_06_15.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api_v_2026_06_15.models.operations.*; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .build(); + + PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse res = sdk.companies().putV1PartnerManagedCompaniesCompanyUuidDisassociate() + .security(PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity.builder() + .systemAccessAuth(System.getenv().getOrDefault("SYSTEM_ACCESS_AUTH", "")) + .build()) + .xGustoAPIVersion(PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .companyUuid("") + .call(); + + if (res.partnerManagedCompanyDisassociateResponse().isPresent()) { + System.out.println(res.partnerManagedCompanyDisassociateResponse().get()); + } + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `security` | [com.gusto.embedded_api_v_2026_06_15.models.operations.PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity](../../models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity.md) | :heavy_check_mark: | The security requirements to use for the request. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | + +### Response + +**[PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse](../../models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | + ## migrate Migrate an existing Gusto customer to your embedded payroll product. @@ -491,8 +556,8 @@ public class Application { .build(); PutV1PartnerManagedCompaniesCompanyUuidMigrateResponse res = sdk.companies().migrate() - .companyUuid("") .xGustoAPIVersion(PutV1PartnerManagedCompaniesCompanyUuidMigrateHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .companyUuid("") .partnerManagedCompanyMigrateRequest(PartnerManagedCompanyMigrateRequest.builder() .build()) .call(); @@ -508,8 +573,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1PartnerManagedCompaniesCompanyUuidMigrateHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `partnerManagedCompanyMigrateRequest` | [PartnerManagedCompanyMigrateRequest](../../models/components/PartnerManagedCompanyMigrateRequest.md) | :heavy_check_mark: | N/A | ### Response @@ -630,8 +695,8 @@ public class Application { .build(); GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessResponse res = sdk.companies().getV1PartnerManagedCompaniesCompanyUuidMigrationReadiness() - .companyUuid("") .xGustoAPIVersion(GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .companyUuid("") .call(); if (res.partnerManagedCompanyMigrationReadinessResponse().isPresent()) { @@ -645,8 +710,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | ### Response @@ -692,8 +757,8 @@ public class Application { .build(); PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceResponse res = sdk.companies().acceptTermsOfService() - .companyUuid("") .xGustoAPIVersion(PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .companyUuid("") .partnerManagedCompanyAcceptTermsOfServiceRequest(PartnerManagedCompanyAcceptTermsOfServiceRequest.builder() .email("Tabitha59@hotmail.com") .ipAddress("dad9:5ede:cdbf:8dae:abe7:3cac:a2bf:2c26") @@ -710,8 +775,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `partnerManagedCompanyAcceptTermsOfServiceRequest` | [PartnerManagedCompanyAcceptTermsOfServiceRequest](../../models/components/PartnerManagedCompanyAcceptTermsOfServiceRequest.md) | :heavy_check_mark: | N/A | ### Response @@ -757,8 +822,8 @@ public class Application { .build(); PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceResponse res = sdk.companies().retrieveTermsOfService() - .companyUuid("") .xGustoAPIVersion(PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .companyUuid("") .partnerManagedCompanyRetrieveTermsOfServiceRequest(PartnerManagedCompanyRetrieveTermsOfServiceRequest.builder() .email("Laverne_Raynor-Ziemann@yahoo.com") .build()) @@ -773,8 +838,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `partnerManagedCompanyRetrieveTermsOfServiceRequest` | [PartnerManagedCompanyRetrieveTermsOfServiceRequest](../../models/components/PartnerManagedCompanyRetrieveTermsOfServiceRequest.md) | :heavy_check_mark: | N/A | ### Response @@ -817,8 +882,8 @@ public class Application { .build(); GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceResponse res = sdk.companies().getV1PartnerManagedCompaniesCompanyUuidTermsOfService() - .companyUuid("") .xGustoAPIVersion(GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .companyUuid("") .call(); if (res.partnerManagedCompanyTermsOfServiceResponse().isPresent()) { @@ -832,8 +897,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | ### Response @@ -879,8 +944,8 @@ public class Application { .build(); PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceResponse res = sdk.companies().putV1PartnerManagedCompaniesCompanyUuidTermsOfService() - .companyUuid("") .xGustoAPIVersion(PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .companyUuid("") .partnerManagedCompanyRetrieveTermsOfServiceRequest(PartnerManagedCompanyRetrieveTermsOfServiceRequest.builder() .email("Marie.Bartoletti8@hotmail.com") .build()) @@ -897,8 +962,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `partnerManagedCompanyRetrieveTermsOfServiceRequest` | [PartnerManagedCompanyRetrieveTermsOfServiceRequest](../../models/components/PartnerManagedCompanyRetrieveTermsOfServiceRequest.md) | :heavy_check_mark: | N/A | ### Response @@ -942,8 +1007,8 @@ public class Application { .build(); PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceResponse res = sdk.companies().postV1PartnerManagedCompaniesCompanyUuidTermsOfService() - .companyUuid("") .xGustoAPIVersion(PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .companyUuid("") .partnerManagedCompanyAcceptTermsOfServiceRequest(PartnerManagedCompanyAcceptTermsOfServiceRequest.builder() .email("Colin.Mitchell@hotmail.com") .ipAddress("7.218.200.162") @@ -962,8 +1027,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `partnerManagedCompanyAcceptTermsOfServiceRequest` | [PartnerManagedCompanyAcceptTermsOfServiceRequest](../../models/components/PartnerManagedCompanyAcceptTermsOfServiceRequest.md) | :heavy_check_mark: | N/A | ### Response diff --git a/gusto_embedded_v_2026_06_15/docs/sdks/companybenefits/README.md b/gusto_embedded_v_2026_06_15/docs/sdks/companybenefits/README.md index 9b0a3ccc4..d3d557834 100644 --- a/gusto_embedded_v_2026_06_15/docs/sdks/companybenefits/README.md +++ b/gusto_embedded_v_2026_06_15/docs/sdks/companybenefits/README.md @@ -47,8 +47,8 @@ public class Application { .xGustoAPIVersion(GetV1BenefitsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) .call(); - if (res.supportedBenefits().isPresent()) { - System.out.println(res.supportedBenefits().get()); + if (res.supportedBenefitList().isPresent()) { + System.out.println(res.supportedBenefitList().get()); } } } diff --git a/gusto_embedded_v_2026_06_15/docs/sdks/contractorpaymentgroups/README.md b/gusto_embedded_v_2026_06_15/docs/sdks/contractorpaymentgroups/README.md index 9f56f0ae9..df7b5a8aa 100644 --- a/gusto_embedded_v_2026_06_15/docs/sdks/contractorpaymentgroups/README.md +++ b/gusto_embedded_v_2026_06_15/docs/sdks/contractorpaymentgroups/README.md @@ -108,8 +108,8 @@ public class Application { .build(); PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundResponse res = sdk.contractorPaymentGroups().fund() - .contractorPaymentGroupUuid("") .xGustoAPIVersion(PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .contractorPaymentGroupUuid("") .call(); if (res.contractorPaymentGroup().isPresent()) { @@ -123,8 +123,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `contractorPaymentGroupUuid` | *String* | :heavy_check_mark: | The UUID of the contractor payment group | | `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorPaymentGroupUuid` | *String* | :heavy_check_mark: | The UUID of the contractor payment group | ### Response @@ -290,8 +290,8 @@ public class Application { .build(); GetV1ContractorPaymentGroupsContractorPaymentGroupIdResponse res = sdk.contractorPaymentGroups().get() - .contractorPaymentGroupUuid("") .xGustoAPIVersion(GetV1ContractorPaymentGroupsContractorPaymentGroupIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .contractorPaymentGroupUuid("") .call(); if (res.contractorPaymentGroup().isPresent()) { @@ -305,8 +305,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `contractorPaymentGroupUuid` | *String* | :heavy_check_mark: | The UUID of the contractor payment group | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1ContractorPaymentGroupsContractorPaymentGroupIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorPaymentGroupUuid` | *String* | :heavy_check_mark: | The UUID of the contractor payment group | ### Response @@ -347,8 +347,8 @@ public class Application { .build(); DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdResponse res = sdk.contractorPaymentGroups().delete() - .contractorPaymentGroupUuid("") .xGustoAPIVersion(DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .contractorPaymentGroupUuid("") .call(); // handle response @@ -360,8 +360,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `contractorPaymentGroupUuid` | *String* | :heavy_check_mark: | The UUID of the contractor payment group | | `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorPaymentGroupUuid` | *String* | :heavy_check_mark: | The UUID of the contractor payment group | ### Response @@ -402,8 +402,8 @@ public class Application { .build(); GetV1ContractorPaymentGroupsIdPartnerDisbursementsResponse res = sdk.contractorPaymentGroups().getV1ContractorPaymentGroupsIdPartnerDisbursements() - .id("") .xGustoAPIVersion(GetV1ContractorPaymentGroupsIdPartnerDisbursementsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .id("") .call(); if (res.contractorPaymentGroupPartnerDisbursements().isPresent()) { @@ -417,8 +417,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `id` | *String* | :heavy_check_mark: | The UUID of the contractor payment group | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1ContractorPaymentGroupsIdPartnerDisbursementsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `id` | *String* | :heavy_check_mark: | The UUID of the contractor payment group | ### Response @@ -459,8 +459,8 @@ public class Application { .build(); PatchV1ContractorPaymentGroupsIdPartnerDisbursementsResponse res = sdk.contractorPaymentGroups().patchV1ContractorPaymentGroupsIdPartnerDisbursements() - .id("") .xGustoAPIVersion(PatchV1ContractorPaymentGroupsIdPartnerDisbursementsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .id("") .requestBody(PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBody.builder() .disbursements(List.of( Disbursements.builder() @@ -480,8 +480,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `id` | *String* | :heavy_check_mark: | The UUID of the contractor payment group | | `xGustoAPIVersion` | [Optional\](../../models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `id` | *String* | :heavy_check_mark: | The UUID of the contractor payment group | | `requestBody` | [Optional\](../../models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBody.md) | :heavy_minus_sign: | N/A | ### Response diff --git a/gusto_embedded_v_2026_06_15/docs/sdks/contractorpayments/README.md b/gusto_embedded_v_2026_06_15/docs/sdks/contractorpayments/README.md index c00375ec2..10a156bcb 100644 --- a/gusto_embedded_v_2026_06_15/docs/sdks/contractorpayments/README.md +++ b/gusto_embedded_v_2026_06_15/docs/sdks/contractorpayments/README.md @@ -4,6 +4,8 @@ ### Available Operations +* [getV1ContractorsContractorUuidPayments](#getv1contractorscontractoruuidpayments) - Get contractor payments +* [getV1ContractorPaymentsContractorPaymentIdPdf](#getv1contractorpaymentscontractorpaymentidpdf) - Get a contractor payment PDF * [list](#list) - Get contractor payments for a company * [create](#create) - Create a contractor payment * [get](#get) - Get a single contractor payment @@ -11,7 +13,123 @@ * [preview](#preview) - Preview contractor payment debit date * [getReceipt](#getreceipt) - Get a single contractor payment receipt * [fund](#fund) - Fund a contractor payment [DEMO] -* [getV1ContractorPaymentsContractorPaymentIdPdf](#getv1contractorpaymentscontractorpaymentidpdf) - Get a contractor payment PDF + +## getV1ContractorsContractorUuidPayments + +Returns a paginated list of payments for a single contractor. + +Results are sortable by `check_date` or `created_at`. Append `:asc` or `:desc` to control direction (e.g., `check_date:desc`). + +scope: `contractor_pay_stubs:read` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api_v_2026_06_15.GustoEmbedded; +import com.gusto.embedded_api_v_2026_06_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2026_06_15.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1ContractorsContractorUuidPaymentsRequest; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1ContractorsContractorUuidPaymentsResponse; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + GetV1ContractorsContractorUuidPaymentsRequest req = GetV1ContractorsContractorUuidPaymentsRequest.builder() + .contractorUuid("") + .sortBy("check_date:desc") + .build(); + + GetV1ContractorsContractorUuidPaymentsResponse res = sdk.contractorPayments().getV1ContractorsContractorUuidPayments() + .request(req) + .call(); + + if (res.contractorPaymentListings().isPresent()) { + System.out.println(res.contractorPaymentListings().get()); + } + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------- | +| `request` | [GetV1ContractorsContractorUuidPaymentsRequest](../../models/operations/GetV1ContractorsContractorUuidPaymentsRequest.md) | :heavy_check_mark: | The request object to use for the request. | + +### Response + +**[GetV1ContractorsContractorUuidPaymentsResponse](../../models/operations/GetV1ContractorsContractorUuidPaymentsResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | + +## getV1ContractorPaymentsContractorPaymentIdPdf + +Get a PDF document for a single contractor payment. + +scope: `payrolls:read` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api_v_2026_06_15.GustoEmbedded; +import com.gusto.embedded_api_v_2026_06_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1ContractorPaymentsContractorPaymentIdPdfHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1ContractorPaymentsContractorPaymentIdPdfResponse; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + GetV1ContractorPaymentsContractorPaymentIdPdfResponse res = sdk.contractorPayments().getV1ContractorPaymentsContractorPaymentIdPdf() + .xGustoAPIVersion(GetV1ContractorPaymentsContractorPaymentIdPdfHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .contractorPaymentId("") + .call(); + + // handle response + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1ContractorPaymentsContractorPaymentIdPdfHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorPaymentId` | *String* | :heavy_check_mark: | The UUID of the contractor payment | + +### Response + +**[GetV1ContractorPaymentsContractorPaymentIdPdfResponse](../../models/operations/GetV1ContractorPaymentsContractorPaymentIdPdfResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | ## list @@ -463,58 +581,4 @@ public class Application { | -------------------------------------- | -------------------------------------- | -------------------------------------- | | models/errors/NotFoundErrorObject | 404 | application/json | | models/errors/UnprocessableEntityError | 422 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | - -## getV1ContractorPaymentsContractorPaymentIdPdf - -Get a PDF document for a single contractor payment. - -scope: `payrolls:read` - -### Example Usage - - -```java -package hello.world; - -import com.gusto.embedded_api_v_2026_06_15.GustoEmbedded; -import com.gusto.embedded_api_v_2026_06_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1ContractorPaymentsContractorPaymentIdPdfHeaderXGustoAPIVersion; -import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1ContractorPaymentsContractorPaymentIdPdfResponse; -import java.lang.Exception; - -public class Application { - - public static void main(String[] args) throws NotFoundErrorObject, Exception { - - GustoEmbedded sdk = GustoEmbedded.builder() - .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) - .build(); - - GetV1ContractorPaymentsContractorPaymentIdPdfResponse res = sdk.contractorPayments().getV1ContractorPaymentsContractorPaymentIdPdf() - .xGustoAPIVersion(GetV1ContractorPaymentsContractorPaymentIdPdfHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) - .contractorPaymentId("") - .call(); - - // handle response - } -} -``` - -### Parameters - -| Parameter | Type | Required | Description | -| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1ContractorPaymentsContractorPaymentIdPdfHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | -| `contractorPaymentId` | *String* | :heavy_check_mark: | The UUID of the contractor payment | - -### Response - -**[GetV1ContractorPaymentsContractorPaymentIdPdfResponse](../../models/operations/GetV1ContractorPaymentsContractorPaymentIdPdfResponse.md)** - -### Errors - -| Error Type | Status Code | Content Type | -| --------------------------------- | --------------------------------- | --------------------------------- | -| models/errors/NotFoundErrorObject | 404 | application/json | -| models/errors/APIException | 4XX, 5XX | \*/\* | \ No newline at end of file +| models/errors/APIException | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/sdks/contractors/README.md b/gusto_embedded_v_2026_06_15/docs/sdks/contractors/README.md index c948485af..7ee3880da 100644 --- a/gusto_embedded_v_2026_06_15/docs/sdks/contractors/README.md +++ b/gusto_embedded_v_2026_06_15/docs/sdks/contractors/README.md @@ -193,8 +193,8 @@ public class Application { .build(); GetV1CompaniesCompanyIdContractorsPaymentDetailsResponse res = sdk.contractors().getV1CompaniesCompanyIdContractorsPaymentDetails() - .companyId("") .xGustoAPIVersion(GetV1CompaniesCompanyIdContractorsPaymentDetailsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .companyId("") .call(); if (res.contractorPaymentDetailsList().isPresent()) { @@ -208,10 +208,10 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyId` | *String* | :heavy_check_mark: | The UUID of the company. This identifies the company whose contractor payment details you want to retrieve. | | `contractorUuid` | *Optional\* | :heavy_minus_sign: | Optional filter to get payment details for a specific contractor. When provided, the response will only include payment details for this contractor. | | `contractorPaymentGroupUuid` | *Optional\* | :heavy_minus_sign: | 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. | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | ### Response @@ -246,21 +246,22 @@ scope: `contractors:write` package hello.world; import com.gusto.embedded_api_v_2026_06_15.GustoEmbedded; +import com.gusto.embedded_api_v_2026_06_15.models.errors.UnprocessableEntityError; import com.gusto.embedded_api_v_2026_06_15.models.operations.*; import java.lang.Exception; import java.time.LocalDate; public class Application { - public static void main(String[] args) throws Exception { + public static void main(String[] args) throws UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); PostV1ContractorsContractorUuidRehireResponse res = sdk.contractors().postV1ContractorsContractorUuidRehire() - .contractorUuid("") .xGustoAPIVersion(PostV1ContractorsContractorUuidRehireHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .contractorUuid("") .requestBody(PostV1ContractorsContractorUuidRehireRequestBody.builder() .startDate(LocalDate.parse("2025-07-01")) .build()) @@ -275,8 +276,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | | `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1ContractorsContractorUuidRehireHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | | `requestBody` | [Optional\](../../models/operations/PostV1ContractorsContractorUuidRehireRequestBody.md) | :heavy_minus_sign: | N/A | ### Response @@ -285,9 +286,10 @@ public class Application { ### Errors -| Error Type | Status Code | Content Type | -| -------------------------- | -------------------------- | -------------------------- | -| models/errors/APIException | 4XX, 5XX | \*/\* | +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | ## deleteV1ContractorsContractorUuidRehire @@ -311,21 +313,22 @@ scope: `contractors:write` package hello.world; import com.gusto.embedded_api_v_2026_06_15.GustoEmbedded; +import com.gusto.embedded_api_v_2026_06_15.models.errors.UnprocessableEntityError; import com.gusto.embedded_api_v_2026_06_15.models.operations.DeleteV1ContractorsContractorUuidRehireHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2026_06_15.models.operations.DeleteV1ContractorsContractorUuidRehireResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws Exception { + public static void main(String[] args) throws UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); DeleteV1ContractorsContractorUuidRehireResponse res = sdk.contractors().deleteV1ContractorsContractorUuidRehire() - .contractorUuid("") .xGustoAPIVersion(DeleteV1ContractorsContractorUuidRehireHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .contractorUuid("") .call(); // handle response @@ -337,8 +340,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | | `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1ContractorsContractorUuidRehireHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | ### Response @@ -346,9 +349,10 @@ public class Application { ### Errors -| Error Type | Status Code | Content Type | -| -------------------------- | -------------------------- | -------------------------- | -| models/errors/APIException | 4XX, 5XX | \*/\* | +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | ## postV1ContractorsContractorUuidTermination @@ -372,21 +376,22 @@ scope: `contractors:write` package hello.world; import com.gusto.embedded_api_v_2026_06_15.GustoEmbedded; +import com.gusto.embedded_api_v_2026_06_15.models.errors.UnprocessableEntityError; import com.gusto.embedded_api_v_2026_06_15.models.operations.*; import java.lang.Exception; import java.time.LocalDate; public class Application { - public static void main(String[] args) throws Exception { + public static void main(String[] args) throws UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); PostV1ContractorsContractorUuidTerminationResponse res = sdk.contractors().postV1ContractorsContractorUuidTermination() - .contractorUuid("") .xGustoAPIVersion(PostV1ContractorsContractorUuidTerminationHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .contractorUuid("") .requestBody(PostV1ContractorsContractorUuidTerminationRequestBody.builder() .endDate(LocalDate.parse("2025-06-15")) .build()) @@ -401,8 +406,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | | `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1ContractorsContractorUuidTerminationHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | | `requestBody` | [Optional\](../../models/operations/PostV1ContractorsContractorUuidTerminationRequestBody.md) | :heavy_minus_sign: | N/A | ### Response @@ -411,9 +416,10 @@ public class Application { ### Errors -| Error Type | Status Code | Content Type | -| -------------------------- | -------------------------- | -------------------------- | -| models/errors/APIException | 4XX, 5XX | \*/\* | +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | ## deleteV1ContractorsContractorUuidTermination @@ -437,21 +443,22 @@ scope: `contractors:write` package hello.world; import com.gusto.embedded_api_v_2026_06_15.GustoEmbedded; +import com.gusto.embedded_api_v_2026_06_15.models.errors.UnprocessableEntityError; import com.gusto.embedded_api_v_2026_06_15.models.operations.DeleteV1ContractorsContractorUuidTerminationHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2026_06_15.models.operations.DeleteV1ContractorsContractorUuidTerminationResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws Exception { + public static void main(String[] args) throws UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); DeleteV1ContractorsContractorUuidTerminationResponse res = sdk.contractors().deleteV1ContractorsContractorUuidTermination() - .contractorUuid("") .xGustoAPIVersion(DeleteV1ContractorsContractorUuidTerminationHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .contractorUuid("") .call(); // handle response @@ -463,8 +470,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | | `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1ContractorsContractorUuidTerminationHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | ### Response @@ -472,9 +479,10 @@ public class Application { ### Errors -| Error Type | Status Code | Content Type | -| -------------------------- | -------------------------- | -------------------------- | -| models/errors/APIException | 4XX, 5XX | \*/\* | +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | ## get diff --git a/gusto_embedded_v_2026_06_15/docs/sdks/departments/README.md b/gusto_embedded_v_2026_06_15/docs/sdks/departments/README.md index b3a252a25..1725820c2 100644 --- a/gusto_embedded_v_2026_06_15/docs/sdks/departments/README.md +++ b/gusto_embedded_v_2026_06_15/docs/sdks/departments/README.md @@ -39,8 +39,8 @@ public class Application { .build(); GetDepartmentResponse res = sdk.departments().get() - .departmentUuid("") .xGustoAPIVersion(GetDepartmentHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .departmentUuid("") .call(); if (res.department().isPresent()) { @@ -54,8 +54,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `departmentUuid` | *String* | :heavy_check_mark: | The UUID of the department | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetDepartmentHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `departmentUuid` | *String* | :heavy_check_mark: | The UUID of the department | ### Response @@ -96,8 +96,8 @@ public class Application { .build(); PutDepartmentsResponse res = sdk.departments().update() - .departmentUuid("") .xGustoAPIVersion(PutDepartmentsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .departmentUuid("") .departmentUpdateRequestBody(DepartmentUpdateRequestBody.builder() .version("56d00c178bc7393b2a206ed6a86afcb4") .title("Stage Hand") @@ -115,8 +115,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `departmentUuid` | *String* | :heavy_check_mark: | The UUID of the department | | `xGustoAPIVersion` | [Optional\](../../models/operations/PutDepartmentsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `departmentUuid` | *String* | :heavy_check_mark: | The UUID of the department | | `departmentUpdateRequestBody` | [DepartmentUpdateRequestBody](../../models/components/DepartmentUpdateRequestBody.md) | :heavy_check_mark: | N/A | ### Response @@ -160,8 +160,8 @@ public class Application { .build(); DeleteDepartmentResponse res = sdk.departments().delete() - .departmentUuid("") .xGustoAPIVersion(DeleteDepartmentHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .departmentUuid("") .call(); // handle response @@ -173,8 +173,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `departmentUuid` | *String* | :heavy_check_mark: | The UUID of the department | | `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteDepartmentHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `departmentUuid` | *String* | :heavy_check_mark: | The UUID of the department | ### Response @@ -217,8 +217,8 @@ public class Application { .build(); PutAddPeopleToDepartmentResponse res = sdk.departments().addPeople() - .departmentUuid("") .xGustoAPIVersion(PutAddPeopleToDepartmentHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .departmentUuid("") .departmentPeopleRequestBody(DepartmentPeopleRequestBody.builder() .version("56d00c178bc7393b2a206ed6a86afcb4") .build()) @@ -235,8 +235,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `departmentUuid` | *String* | :heavy_check_mark: | The UUID of the department | | `xGustoAPIVersion` | [Optional\](../../models/operations/PutAddPeopleToDepartmentHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `departmentUuid` | *String* | :heavy_check_mark: | The UUID of the department | | `departmentPeopleRequestBody` | [DepartmentPeopleRequestBody](../../models/components/DepartmentPeopleRequestBody.md) | :heavy_check_mark: | N/A | ### Response @@ -280,8 +280,8 @@ public class Application { .build(); PutRemovePeopleFromDepartmentResponse res = sdk.departments().removePeople() - .departmentUuid("") .xGustoAPIVersion(PutRemovePeopleFromDepartmentHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .departmentUuid("") .departmentPeopleRequestBody(DepartmentPeopleRequestBody.builder() .version("56d00c178bc7393b2a206ed6a86afcb4") .build()) @@ -298,8 +298,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `departmentUuid` | *String* | :heavy_check_mark: | The UUID of the department | | `xGustoAPIVersion` | [Optional\](../../models/operations/PutRemovePeopleFromDepartmentHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `departmentUuid` | *String* | :heavy_check_mark: | The UUID of the department | | `departmentPeopleRequestBody` | [DepartmentPeopleRequestBody](../../models/components/DepartmentPeopleRequestBody.md) | :heavy_check_mark: | N/A | ### Response @@ -341,8 +341,8 @@ public class Application { .build(); GetCompaniesDepartmentsResponse res = sdk.departments().getAll() - .companyUuid("") .xGustoAPIVersion(GetCompaniesDepartmentsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .companyUuid("") .call(); if (res.departmentList().isPresent()) { @@ -356,8 +356,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetCompaniesDepartmentsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | ### Response @@ -399,8 +399,8 @@ public class Application { .build(); PostDepartmentsResponse res = sdk.departments().create() - .companyUuid("") .xGustoAPIVersion(PostDepartmentsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .companyUuid("") .departmentCreateRequestBody(DepartmentCreateRequestBody.builder() .title("Stage Hand") .build()) @@ -417,8 +417,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/PostDepartmentsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `departmentCreateRequestBody` | [DepartmentCreateRequestBody](../../models/components/DepartmentCreateRequestBody.md) | :heavy_check_mark: | N/A | ### Response diff --git a/gusto_embedded_v_2026_06_15/docs/sdks/employeeaddresses/README.md b/gusto_embedded_v_2026_06_15/docs/sdks/employeeaddresses/README.md index 293ecbb39..33c436b8f 100644 --- a/gusto_embedded_v_2026_06_15/docs/sdks/employeeaddresses/README.md +++ b/gusto_embedded_v_2026_06_15/docs/sdks/employeeaddresses/README.md @@ -44,8 +44,8 @@ public class Application { .build(); GetV1EmployeesEmployeeIdHomeAddressesResponse res = sdk.employeeAddresses().get() - .employeeId("") .xGustoAPIVersion(GetV1EmployeesEmployeeIdHomeAddressesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .employeeId("") .call(); if (res.employeeAddressList().isPresent()) { @@ -59,8 +59,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeIdHomeAddressesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | ### Response @@ -103,8 +103,8 @@ public class Application { .build(); PostV1EmployeesEmployeeIdHomeAddressesResponse res = sdk.employeeAddresses().create() - .employeeId("") .xGustoAPIVersion(PostV1EmployeesEmployeeIdHomeAddressesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .employeeId("") .requestBody(PostV1EmployeesEmployeeIdHomeAddressesRequestBody.builder() .street1("300 3rd Street") .city("San Francisco") @@ -125,8 +125,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | | `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1EmployeesEmployeeIdHomeAddressesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | | `requestBody` | [PostV1EmployeesEmployeeIdHomeAddressesRequestBody](../../models/operations/PostV1EmployeesEmployeeIdHomeAddressesRequestBody.md) | :heavy_check_mark: | N/A | ### Response @@ -170,8 +170,8 @@ public class Application { .build(); GetV1HomeAddressesHomeAddressUuidResponse res = sdk.employeeAddresses().retrieveHomeAddress() - .homeAddressUuid("") .xGustoAPIVersion(GetV1HomeAddressesHomeAddressUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .homeAddressUuid("") .call(); if (res.employeeAddress().isPresent()) { @@ -185,8 +185,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `homeAddressUuid` | *String* | :heavy_check_mark: | The UUID of the home address | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1HomeAddressesHomeAddressUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `homeAddressUuid` | *String* | :heavy_check_mark: | The UUID of the home address | ### Response @@ -346,8 +346,8 @@ public class Application { .build(); GetV1EmployeesEmployeeIdWorkAddressesResponse res = sdk.employeeAddresses().getWorkAddresses() - .employeeId("") .xGustoAPIVersion(GetV1EmployeesEmployeeIdWorkAddressesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .employeeId("") .call(); if (res.employeeWorkAddressesList().isPresent()) { @@ -361,8 +361,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeIdWorkAddressesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | ### Response @@ -403,8 +403,8 @@ public class Application { .build(); PostV1EmployeesEmployeeIdWorkAddressesResponse res = sdk.employeeAddresses().createWorkAddress() - .employeeId("") .xGustoAPIVersion(PostV1EmployeesEmployeeIdWorkAddressesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .employeeId("") .requestBody(PostV1EmployeesEmployeeIdWorkAddressesRequestBody.builder() .locationUuid("6a119be7-b4b0-4e27-aaa0-89d5f2524635") .effectiveDate(LocalDate.parse("2023-05-15")) @@ -422,8 +422,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | | `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1EmployeesEmployeeIdWorkAddressesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | | `requestBody` | [PostV1EmployeesEmployeeIdWorkAddressesRequestBody](../../models/operations/PostV1EmployeesEmployeeIdWorkAddressesRequestBody.md) | :heavy_check_mark: | N/A | ### Response @@ -465,8 +465,8 @@ public class Application { .build(); GetV1WorkAddressesWorkAddressUuidResponse res = sdk.employeeAddresses().retrieveWorkAddress() - .workAddressUuid("") .xGustoAPIVersion(GetV1WorkAddressesWorkAddressUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .workAddressUuid("") .call(); if (res.employeeWorkAddress().isPresent()) { @@ -480,8 +480,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `workAddressUuid` | *String* | :heavy_check_mark: | The UUID of the work address | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1WorkAddressesWorkAddressUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `workAddressUuid` | *String* | :heavy_check_mark: | The UUID of the work address | ### Response @@ -522,8 +522,8 @@ public class Application { .build(); PutV1WorkAddressesWorkAddressUuidResponse res = sdk.employeeAddresses().updateWorkAddress() - .workAddressUuid("") .xGustoAPIVersion(PutV1WorkAddressesWorkAddressUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .workAddressUuid("") .requestBody(PutV1WorkAddressesWorkAddressUuidRequestBody.builder() .version("56d00c178bc7393b2a206ed6a86afcb4") .locationUuid("6a119be7-b4b0-4e27-aaa0-89d5f2524635") @@ -542,8 +542,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `workAddressUuid` | *String* | :heavy_check_mark: | The UUID of the work address | | `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1WorkAddressesWorkAddressUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `workAddressUuid` | *String* | :heavy_check_mark: | The UUID of the work address | | `requestBody` | [PutV1WorkAddressesWorkAddressUuidRequestBody](../../models/operations/PutV1WorkAddressesWorkAddressUuidRequestBody.md) | :heavy_check_mark: | N/A | ### Response @@ -586,8 +586,8 @@ public class Application { .build(); DeleteV1WorkAddressesWorkAddressUuidResponse res = sdk.employeeAddresses().deleteWorkAddress() - .workAddressUuid("") .xGustoAPIVersion(DeleteV1WorkAddressesWorkAddressUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .workAddressUuid("") .call(); // handle response @@ -599,8 +599,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `workAddressUuid` | *String* | :heavy_check_mark: | The UUID of the work address | | `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1WorkAddressesWorkAddressUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `workAddressUuid` | *String* | :heavy_check_mark: | The UUID of the work address | ### Response diff --git a/gusto_embedded_v_2026_06_15/docs/sdks/employeebenefits/README.md b/gusto_embedded_v_2026_06_15/docs/sdks/employeebenefits/README.md index dedc242d0..11ceeaa8c 100644 --- a/gusto_embedded_v_2026_06_15/docs/sdks/employeebenefits/README.md +++ b/gusto_embedded_v_2026_06_15/docs/sdks/employeebenefits/README.md @@ -479,8 +479,8 @@ public class Application { .build(); GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesResponse res = sdk.employeeBenefits().getV1EmployeesEmployeeUuidSection603HighEarnerStatuses() - .employeeUuid("") .xGustoAPIVersion(GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .employeeUuid("") .call(); if (res.employeeSection603HighEarnerStatusList().isPresent()) { @@ -494,8 +494,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `employeeUuid` | *String* | :heavy_check_mark: | The UUID of the employee | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeUuid` | *String* | :heavy_check_mark: | The UUID of the employee | ### Response @@ -540,8 +540,8 @@ public class Application { .build(); PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesResponse res = sdk.employeeBenefits().postV1EmployeesEmployeeUuidSection603HighEarnerStatuses() - .employeeUuid("") .xGustoAPIVersion(PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .employeeUuid("") .employeeSection603HighEarnerStatusCreateRequest(EmployeeSection603HighEarnerStatusCreateRequest.builder() .effectiveYear(2026L) .isHighEarner(true) @@ -559,8 +559,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `employeeUuid` | *String* | :heavy_check_mark: | The UUID of the employee | | `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeUuid` | *String* | :heavy_check_mark: | The UUID of the employee | | `employeeSection603HighEarnerStatusCreateRequest` | [EmployeeSection603HighEarnerStatusCreateRequest](../../models/components/EmployeeSection603HighEarnerStatusCreateRequest.md) | :heavy_check_mark: | N/A | ### Response @@ -606,9 +606,9 @@ public class Application { .build(); GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearResponse res = sdk.employeeBenefits().getV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYear() + .xGustoAPIVersion(GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) .employeeUuid("") .effectiveYear(857230L) - .xGustoAPIVersion(GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) .call(); if (res.employeeSection603HighEarnerStatus().isPresent()) { @@ -622,9 +622,9 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `employeeUuid` | *String* | :heavy_check_mark: | The UUID of the employee | | `effectiveYear` | *long* | :heavy_check_mark: | The effective year for the Section 603 status | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | ### Response @@ -670,9 +670,9 @@ public class Application { .build(); PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearResponse res = sdk.employeeBenefits().patchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYear() + .xGustoAPIVersion(PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) .employeeUuid("") .effectiveYear(152322L) - .xGustoAPIVersion(PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) .employeeSection603HighEarnerStatusUpdateRequest(EmployeeSection603HighEarnerStatusUpdateRequest.builder() .isHighEarner(true) .build()) @@ -689,9 +689,9 @@ public class Application { | Parameter | Type | Required | Description | | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `employeeUuid` | *String* | :heavy_check_mark: | The UUID of the employee | | `effectiveYear` | *long* | :heavy_check_mark: | The effective year for the Section 603 status | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `employeeSection603HighEarnerStatusUpdateRequest` | [EmployeeSection603HighEarnerStatusUpdateRequest](../../models/components/EmployeeSection603HighEarnerStatusUpdateRequest.md) | :heavy_check_mark: | N/A | ### Response diff --git a/gusto_embedded_v_2026_06_15/docs/sdks/employees/README.md b/gusto_embedded_v_2026_06_15/docs/sdks/employees/README.md index e76d6bc13..5d58de1e4 100644 --- a/gusto_embedded_v_2026_06_15/docs/sdks/employees/README.md +++ b/gusto_embedded_v_2026_06_15/docs/sdks/employees/README.md @@ -44,8 +44,8 @@ public class Application { .build(); GetV1EmployeesEmployeeIdCustomFieldsResponse res = sdk.employees().getCustomFields() - .employeeId("") .xGustoAPIVersion(GetV1EmployeesEmployeeIdCustomFieldsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .employeeId("") .call(); if (res.employeeCustomFieldList().isPresent()) { @@ -59,10 +59,10 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeIdCustomFieldsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | | `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | | `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeIdCustomFieldsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | ### Response diff --git a/gusto_embedded_v_2026_06_15/docs/sdks/federaltaxdetails/README.md b/gusto_embedded_v_2026_06_15/docs/sdks/federaltaxdetails/README.md index f040f60e6..1dced458e 100644 --- a/gusto_embedded_v_2026_06_15/docs/sdks/federaltaxdetails/README.md +++ b/gusto_embedded_v_2026_06_15/docs/sdks/federaltaxdetails/README.md @@ -34,8 +34,8 @@ public class Application { .build(); GetV1CompaniesCompanyIdFederalTaxDetailsResponse res = sdk.federalTaxDetails().get() - .companyId("7b1d0df1-6403-4a06-8768-c1dd7d24d27a") .xGustoAPIVersion(GetV1CompaniesCompanyIdFederalTaxDetailsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .companyId("7b1d0df1-6403-4a06-8768-c1dd7d24d27a") .call(); if (res.federalTaxDetails().isPresent()) { @@ -49,8 +49,8 @@ public class Application { | Parameter | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | 7b1d0df1-6403-4a06-8768-c1dd7d24d27a | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdFederalTaxDetailsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | 7b1d0df1-6403-4a06-8768-c1dd7d24d27a | ### Response @@ -86,23 +86,22 @@ package hello.world; import com.gusto.embedded_api_v_2026_06_15.GustoEmbedded; import com.gusto.embedded_api_v_2026_06_15.models.components.*; -import com.gusto.embedded_api_v_2026_06_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2026_06_15.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api_v_2026_06_15.models.errors.*; import com.gusto.embedded_api_v_2026_06_15.models.operations.PutV1CompaniesCompanyIdFederalTaxDetailsHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2026_06_15.models.operations.PutV1CompaniesCompanyIdFederalTaxDetailsResponse; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + public static void main(String[] args) throws ForbiddenErrorObject, NotFoundErrorObject, UnprocessableEntityError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) .build(); PutV1CompaniesCompanyIdFederalTaxDetailsResponse res = sdk.federalTaxDetails().update() - .companyId("7b1d0df1-6403-4a06-8768-c1dd7d24d27a") .xGustoAPIVersion(PutV1CompaniesCompanyIdFederalTaxDetailsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .companyId("7b1d0df1-6403-4a06-8768-c1dd7d24d27a") .federalTaxDetailsUpdate(FederalTaxDetailsUpdate.builder() .version("6cb95e00540706ca48d4577b3c839fbe") .legalName("Acme Corp.") @@ -124,8 +123,8 @@ public class Application { | Parameter | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | 7b1d0df1-6403-4a06-8768-c1dd7d24d27a | | `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1CompaniesCompanyIdFederalTaxDetailsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | 7b1d0df1-6403-4a06-8768-c1dd7d24d27a | | `federalTaxDetailsUpdate` | [FederalTaxDetailsUpdate](../../models/components/FederalTaxDetailsUpdate.md) | :heavy_check_mark: | N/A | | ### Response @@ -136,6 +135,7 @@ public class Application { | Error Type | Status Code | Content Type | | -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/ForbiddenErrorObject | 403 | application/json | | models/errors/NotFoundErrorObject | 404 | application/json | | models/errors/UnprocessableEntityError | 409, 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/sdks/generateddocuments/README.md b/gusto_embedded_v_2026_06_15/docs/sdks/generateddocuments/README.md index 87b483ac0..035952a49 100644 --- a/gusto_embedded_v_2026_06_15/docs/sdks/generateddocuments/README.md +++ b/gusto_embedded_v_2026_06_15/docs/sdks/generateddocuments/README.md @@ -19,10 +19,8 @@ scope: `generated_documents:read` package hello.world; import com.gusto.embedded_api_v_2026_06_15.GustoEmbedded; -import com.gusto.embedded_api_v_2026_06_15.models.components.VersionHeader; import com.gusto.embedded_api_v_2026_06_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2026_06_15.models.operations.DocumentType; -import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1GeneratedDocumentsDocumentTypeRequestUuidResponse; +import com.gusto.embedded_api_v_2026_06_15.models.operations.*; import java.lang.Exception; public class Application { @@ -34,9 +32,9 @@ public class Application { .build(); GetV1GeneratedDocumentsDocumentTypeRequestUuidResponse res = sdk.generatedDocuments().get() + .xGustoAPIVersion(GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) .documentType(DocumentType.PRINTABLE_PAYROLL_CHECKS) .requestUuid("") - .xGustoAPIVersion(VersionHeader.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) .call(); if (res.generatedDocument().isPresent()) { @@ -50,9 +48,9 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `documentType` | [DocumentType](../../models/operations/DocumentType.md) | :heavy_check_mark: | The type of document being generated | | `requestUuid` | *String* | :heavy_check_mark: | The UUID of the request to generate a document. Generate document endpoints return request_uuids to be used with the GET generated document endpoint. | -| `xGustoAPIVersion` | [Optional\](../../models/components/VersionHeader.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | ### Response diff --git a/gusto_embedded_v_2026_06_15/docs/sdks/industryselection/README.md b/gusto_embedded_v_2026_06_15/docs/sdks/industryselection/README.md index 4041d9b41..f629409f3 100644 --- a/gusto_embedded_v_2026_06_15/docs/sdks/industryselection/README.md +++ b/gusto_embedded_v_2026_06_15/docs/sdks/industryselection/README.md @@ -34,8 +34,8 @@ public class Application { .build(); GetV1CompanyIndustryResponse res = sdk.industrySelection().get() - .companyId("") .xGustoAPIVersion(GetV1CompanyIndustryHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .companyId("") .call(); if (res.industry().isPresent()) { @@ -49,8 +49,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompanyIndustryHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | ### Response @@ -99,8 +99,8 @@ public class Application { .build(); PutV1CompanyIndustryResponse res = sdk.industrySelection().update() - .companyId("") .xGustoAPIVersion(PutV1CompanyIndustryHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .companyId("") .companyIndustrySelectionRequiredBody(CompanyIndustrySelectionRequiredBody.builder() .naicsCode("611420") .title("Computer Training") @@ -120,8 +120,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1CompanyIndustryHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | `companyIndustrySelectionRequiredBody` | [CompanyIndustrySelectionRequiredBody](../../models/components/CompanyIndustrySelectionRequiredBody.md) | :heavy_check_mark: | N/A | ### Response diff --git a/gusto_embedded_v_2026_06_15/docs/sdks/jobsandcompensations/README.md b/gusto_embedded_v_2026_06_15/docs/sdks/jobsandcompensations/README.md index 6b1709e05..446afd2df 100644 --- a/gusto_embedded_v_2026_06_15/docs/sdks/jobsandcompensations/README.md +++ b/gusto_embedded_v_2026_06_15/docs/sdks/jobsandcompensations/README.md @@ -369,8 +369,8 @@ public class Application { .build(); GetV1JobsJobIdResponse res = sdk.jobsAndCompensations().getJob() - .jobId("") .xGustoAPIVersion(GetV1JobsJobIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .jobId("") .call(); if (res.job().isPresent()) { @@ -384,9 +384,9 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1JobsJobIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `jobId` | *String* | :heavy_check_mark: | The UUID of the job | | `include` | [Optional\](../../models/operations/GetV1JobsJobIdQueryParamInclude.md) | :heavy_minus_sign: | Available options:
    - all_compensations: Include all effective dated compensations for each job instead of only the current compensation
    | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1JobsJobIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | ### Response @@ -428,8 +428,8 @@ public class Application { .build(); PutV1JobsJobIdResponse res = sdk.jobsAndCompensations().update() - .jobId("") .xGustoAPIVersion(PutV1JobsJobIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .jobId("") .jobsUpdateRequestBody(JobsUpdateRequestBody.builder() .version("56d00c178bc7393b2a206ed6a86afcb4") .title("Regional Manager") @@ -448,8 +448,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `jobId` | *String* | :heavy_check_mark: | The UUID of the job | | `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1JobsJobIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `jobId` | *String* | :heavy_check_mark: | The UUID of the job | | `jobsUpdateRequestBody` | [JobsUpdateRequestBody](../../models/components/JobsUpdateRequestBody.md) | :heavy_check_mark: | N/A | ### Response @@ -492,8 +492,8 @@ public class Application { .build(); DeleteV1JobsJobIdResponse res = sdk.jobsAndCompensations().delete() - .jobId("") .xGustoAPIVersion(DeleteV1JobsJobIdHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .jobId("") .call(); // handle response @@ -505,8 +505,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `jobId` | *String* | :heavy_check_mark: | The UUID of the job | | `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1JobsJobIdHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `jobId` | *String* | :heavy_check_mark: | The UUID of the job | ### Response @@ -610,8 +610,8 @@ public class Application { .build(); PostV1EmployeesEmployeeIdJobsResponse res = sdk.jobsAndCompensations().createJob() - .employeeId("") .xGustoAPIVersion(PostV1EmployeesEmployeeIdJobsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .employeeId("") .jobsCreateRequestBody(JobsCreateRequestBody.builder() .title("Regional Manager") .hireDate("2020-12-21") @@ -629,8 +629,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | | `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1EmployeesEmployeeIdJobsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | | `jobsCreateRequestBody` | [JobsCreateRequestBody](../../models/components/JobsCreateRequestBody.md) | :heavy_check_mark: | N/A | ### Response diff --git a/gusto_embedded_v_2026_06_15/docs/sdks/locations/README.md b/gusto_embedded_v_2026_06_15/docs/sdks/locations/README.md index c888799cd..0617ef45f 100644 --- a/gusto_embedded_v_2026_06_15/docs/sdks/locations/README.md +++ b/gusto_embedded_v_2026_06_15/docs/sdks/locations/README.md @@ -37,8 +37,8 @@ public class Application { .build(); GetV1LocationsLocationUuidMinimumWagesResponse res = sdk.locations().getMinimumWages() - .locationUuid("") .xGustoAPIVersion(GetV1LocationsLocationUuidMinimumWagesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .locationUuid("") .effectiveDate("2020-01-31") .call(); @@ -53,8 +53,8 @@ public class Application { | Parameter | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `locationUuid` | *String* | :heavy_check_mark: | The UUID of the location | | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1LocationsLocationUuidMinimumWagesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | +| `locationUuid` | *String* | :heavy_check_mark: | The UUID of the location | | | `effectiveDate` | *Optional\* | :heavy_minus_sign: | N/A | 2020-01-31 | ### Response diff --git a/gusto_embedded_v_2026_06_15/docs/sdks/memberportalinvitations/README.md b/gusto_embedded_v_2026_06_15/docs/sdks/memberportalinvitations/README.md new file mode 100644 index 000000000..86f880534 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/sdks/memberportalinvitations/README.md @@ -0,0 +1,352 @@ +# MemberPortalInvitations + +## Overview + +### Available Operations + +* [postV1EmployeesEmployeeIdMemberPortalInvitations](#postv1employeesemployeeidmemberportalinvitations) - Create an employee member portal invitation +* [getV1EmployeesEmployeeIdMemberPortalInvitations](#getv1employeesemployeeidmemberportalinvitations) - Get an employee member portal invitation +* [deleteV1EmployeesEmployeeIdMemberPortalInvitations](#deletev1employeesemployeeidmemberportalinvitations) - Cancel an employee member portal invitation +* [postV1ContractorsContractorUuidMemberPortalInvitations](#postv1contractorscontractoruuidmemberportalinvitations) - Create a contractor member portal invitation +* [getV1ContractorsContractorUuidMemberPortalInvitations](#getv1contractorscontractoruuidmemberportalinvitations) - Get a contractor member portal invitation +* [deleteV1ContractorsContractorUuidMemberPortalInvitations](#deletev1contractorscontractoruuidmemberportalinvitations) - Cancel a contractor member portal invitation + +## postV1EmployeesEmployeeIdMemberPortalInvitations + +Generates a member portal invitation for the specified employee. If the employee already has an invitation and its token has expired, calling this endpoint regenerates the invitation and overrides the prior token. + +scope: `member_portal_invitation:write` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api_v_2026_06_15.GustoEmbedded; +import com.gusto.embedded_api_v_2026_06_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2026_06_15.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse res = sdk.memberPortalInvitations().postV1EmployeesEmployeeIdMemberPortalInvitations() + .xGustoAPIVersion(PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .employeeId("") + .call(); + + // handle response + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | + +### Response + +**[PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse](../../models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | + +## getV1EmployeesEmployeeIdMemberPortalInvitations + +Returns the current status of an employee's member portal invitation (`pending`, `sent`, `verified`, `complete`, or `cancelled`) along with an `expired` flag indicating whether the invitation can still be acted on by the employee. + +scope: `member_portal_invitation:read` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api_v_2026_06_15.GustoEmbedded; +import com.gusto.embedded_api_v_2026_06_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse res = sdk.memberPortalInvitations().getV1EmployeesEmployeeIdMemberPortalInvitations() + .xGustoAPIVersion(GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .employeeId("") + .call(); + + if (res.memberPortalInvitation().isPresent()) { + System.out.println(res.memberPortalInvitation().get()); + } + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | + +### Response + +**[GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse](../../models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | + +## deleteV1EmployeesEmployeeIdMemberPortalInvitations + +Cancels the member portal invitation for the specified employee. + +Note: this endpoint does not cancel the employee's self-onboarding flow. If you want the company admin to take full control of onboarding the employee, cancel the self-onboarding request instead. + +scope: `member_portal_invitation:write` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api_v_2026_06_15.GustoEmbedded; +import com.gusto.embedded_api_v_2026_06_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2026_06_15.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api_v_2026_06_15.models.operations.DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2026_06_15.models.operations.DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse res = sdk.memberPortalInvitations().deleteV1EmployeesEmployeeIdMemberPortalInvitations() + .xGustoAPIVersion(DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .employeeId("") + .call(); + + // handle response + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `employeeId` | *String* | :heavy_check_mark: | The UUID of the employee | + +### Response + +**[DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse](../../models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | + +## postV1ContractorsContractorUuidMemberPortalInvitations + +Generates a member portal invitation for the specified contractor. If the contractor already has an invitation and its token has expired, calling this endpoint regenerates the invitation and overrides the prior token. + +scope: `member_portal_invitation:write` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api_v_2026_06_15.GustoEmbedded; +import com.gusto.embedded_api_v_2026_06_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2026_06_15.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1ContractorsContractorUuidMemberPortalInvitationsResponse; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + PostV1ContractorsContractorUuidMemberPortalInvitationsResponse res = sdk.memberPortalInvitations().postV1ContractorsContractorUuidMemberPortalInvitations() + .xGustoAPIVersion(PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .contractorUuid("") + .call(); + + // handle response + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | + +### Response + +**[PostV1ContractorsContractorUuidMemberPortalInvitationsResponse](../../models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | + +## getV1ContractorsContractorUuidMemberPortalInvitations + +Returns the current status of a contractor's member portal invitation (`pending`, `sent`, `verified`, `complete`, or `cancelled`) along with an `expired` flag indicating whether the invitation can still be acted on by the contractor. + +scope: `member_portal_invitation:read` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api_v_2026_06_15.GustoEmbedded; +import com.gusto.embedded_api_v_2026_06_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1ContractorsContractorUuidMemberPortalInvitationsResponse; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + GetV1ContractorsContractorUuidMemberPortalInvitationsResponse res = sdk.memberPortalInvitations().getV1ContractorsContractorUuidMemberPortalInvitations() + .xGustoAPIVersion(GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .contractorUuid("") + .call(); + + if (res.memberPortalInvitation().isPresent()) { + System.out.println(res.memberPortalInvitation().get()); + } + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | + +### Response + +**[GetV1ContractorsContractorUuidMemberPortalInvitationsResponse](../../models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | + +## deleteV1ContractorsContractorUuidMemberPortalInvitations + +Cancels the member portal invitation for the specified contractor. + +Note: this endpoint does not cancel the contractor's self-onboarding flow. If you want the company admin to take full control of onboarding the contractor, cancel the self-onboarding request instead. + +scope: `member_portal_invitation:write` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api_v_2026_06_15.GustoEmbedded; +import com.gusto.embedded_api_v_2026_06_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2026_06_15.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api_v_2026_06_15.models.operations.DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2026_06_15.models.operations.DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse res = sdk.memberPortalInvitations().deleteV1ContractorsContractorUuidMemberPortalInvitations() + .xGustoAPIVersion(DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .contractorUuid("") + .call(); + + // handle response + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `contractorUuid` | *String* | :heavy_check_mark: | The UUID of the contractor | + +### Response + +**[DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse](../../models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/sdks/notifications/README.md b/gusto_embedded_v_2026_06_15/docs/sdks/notifications/README.md index 201be4255..e132f29a0 100644 --- a/gusto_embedded_v_2026_06_15/docs/sdks/notifications/README.md +++ b/gusto_embedded_v_2026_06_15/docs/sdks/notifications/README.md @@ -95,8 +95,8 @@ public class Application { .build(); GetNotificationsNotificationUuidResponse res = sdk.notifications().getDetails() - .notificationUuid("") .xGustoAPIVersion(GetNotificationsNotificationUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .notificationUuid("") .call(); if (res.notification().isPresent()) { @@ -110,8 +110,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `notificationUuid` | *String* | :heavy_check_mark: | The notification entity_uuid | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetNotificationsNotificationUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `notificationUuid` | *String* | :heavy_check_mark: | The notification entity_uuid | ### Response diff --git a/gusto_embedded_v_2026_06_15/docs/sdks/payrollcancellations/README.md b/gusto_embedded_v_2026_06_15/docs/sdks/payrollcancellations/README.md new file mode 100644 index 000000000..390197b1b --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/sdks/payrollcancellations/README.md @@ -0,0 +1,156 @@ +# PayrollCancellations + +## Overview + +### Available Operations + +* [postV1PayrollBatches](#postv1payrollbatches) - Create a payroll cancellation batch +* [getV1PayrollBatchesPayrollBatchUuid](#getv1payrollbatchespayrollbatchuuid) - Get a payroll cancellation batch + +## postV1PayrollBatches + +Cancels up to 100 payrolls across one or more companies the partner is mapped to, asynchronously. + +The batch is processed asynchronously. Use the returned batch UUID to poll `GET /v1/payroll_batches/{payroll_batch_uuid}` for status and per-payroll results. + +Each item carries the payroll `uuid` and the `company_uuid` that owns it. A payroll whose company is not mapped to the partner — or that doesn't exist — is recorded as a `not_found` exclusion rather than a hard error, so every requested UUID lands in either `results` or `exclusions`. + +Idempotency is scoped per `(partner, idempotency_key)`. A duplicate POST with the same `idempotency_key` returns a 409 Conflict referencing the existing batch UUID — no duplicate processing occurs. + +📘 System Access Authentication + +This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + +scope: `payroll_batches:write` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api_v_2026_06_15.GustoEmbedded; +import com.gusto.embedded_api_v_2026_06_15.models.errors.PayrollBatchConflictError; +import com.gusto.embedded_api_v_2026_06_15.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api_v_2026_06_15.models.operations.*; +import java.lang.Exception; +import java.util.List; + +public class Application { + + public static void main(String[] args) throws PayrollBatchConflictError, UnprocessableEntityError, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .build(); + + PostV1PayrollBatchesResponse res = sdk.payrollCancellations().postV1PayrollBatches() + .security(PostV1PayrollBatchesSecurity.builder() + .systemAccessAuth(System.getenv().getOrDefault("SYSTEM_ACCESS_AUTH", "")) + .build()) + .xGustoAPIVersion(PostV1PayrollBatchesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .requestBody(PostV1PayrollBatchesRequestBody.builder() + .idempotencyKey("80a74f8b-2c16-45e5-9038-aa108849c6e6") + .batchAction(BatchAction.CANCEL) + .batch(List.of( + Batch.builder() + .entityType(EntityType.PAYROLL) + .uuid("f5ac6d4e-8400-4a52-a5cf-dea57b2ee65a") + .companyUuid("7cd3f4a2-0bf9-485a-bbc0-f6adbdf0246b") + .build())) + .build()) + .call(); + + if (res.payrollBatch().isPresent()) { + System.out.println(res.payrollBatch().get()); + } + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `security` | [com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1PayrollBatchesSecurity](../../models/operations/PostV1PayrollBatchesSecurity.md) | :heavy_check_mark: | The security requirements to use for the request. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1PayrollBatchesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `requestBody` | [PostV1PayrollBatchesRequestBody](../../models/operations/PostV1PayrollBatchesRequestBody.md) | :heavy_check_mark: | N/A | + +### Response + +**[PostV1PayrollBatchesResponse](../../models/operations/PostV1PayrollBatchesResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| --------------------------------------- | --------------------------------------- | --------------------------------------- | +| models/errors/PayrollBatchConflictError | 409 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | + +## getV1PayrollBatchesPayrollBatchUuid + +Returns the status and per-payroll results of a payroll cancellation batch. + +Poll this endpoint until the batch `status` reaches a terminal value (`completed` or `failed`). Once terminal, the response includes the `results` array (one entry per authorized payroll, each with its own per-payroll `status` — `success` or `failed`) and the `exclusions` array (one entry per payroll that could not be processed). A cancel is atomic, so a per-payroll result is only ever `success` or `failed` — never `partial_success`. + +Note that the top-level batch `status` (`pending` / `processing` / `completed` / `failed`) is the request lifecycle, distinct from the per-payroll `status` inside `results[]`. A `completed` batch does not imply every payroll was cancelled — inspect the array for per-payroll outcomes. + +Results are stored in Redis with a limited TTL after completion. If the partner polls after results have expired, this endpoint returns 410 Gone — partners should re-submit a new batch. + +📘 System Access Authentication + +This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + +scope: `payroll_batches:read` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api_v_2026_06_15.GustoEmbedded; +import com.gusto.embedded_api_v_2026_06_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2026_06_15.models.operations.*; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .build(); + + GetV1PayrollBatchesPayrollBatchUuidResponse res = sdk.payrollCancellations().getV1PayrollBatchesPayrollBatchUuid() + .security(GetV1PayrollBatchesPayrollBatchUuidSecurity.builder() + .systemAccessAuth(System.getenv().getOrDefault("SYSTEM_ACCESS_AUTH", "")) + .build()) + .xGustoAPIVersion(GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .payrollBatchUuid("") + .call(); + + if (res.payrollBatchResults().isPresent()) { + System.out.println(res.payrollBatchResults().get()); + } + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `security` | [com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1PayrollBatchesPayrollBatchUuidSecurity](../../models/operations/GetV1PayrollBatchesPayrollBatchUuidSecurity.md) | :heavy_check_mark: | The security requirements to use for the request. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `payrollBatchUuid` | *String* | :heavy_check_mark: | The UUID of the payroll cancellation batch returned by `POST /v1/payroll_batches`. | + +### Response + +**[GetV1PayrollBatchesPayrollBatchUuidResponse](../../models/operations/GetV1PayrollBatchesPayrollBatchUuidResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404, 410 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/sdks/payrolldigests/README.md b/gusto_embedded_v_2026_06_15/docs/sdks/payrolldigests/README.md index ab1ea67c3..b6c3fe999 100644 --- a/gusto_embedded_v_2026_06_15/docs/sdks/payrolldigests/README.md +++ b/gusto_embedded_v_2026_06_15/docs/sdks/payrolldigests/README.md @@ -118,8 +118,8 @@ public class Application { .security(GetV1PayrollDigestsPayrollDigestUuidSecurity.builder() .systemAccessAuth(System.getenv().getOrDefault("SYSTEM_ACCESS_AUTH", "")) .build()) - .payrollDigestUuid("") .xGustoAPIVersion(GetV1PayrollDigestsPayrollDigestUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .payrollDigestUuid("") .call(); if (res.payrollDigestResults().isPresent()) { @@ -134,8 +134,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `security` | [com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1PayrollDigestsPayrollDigestUuidSecurity](../../models/operations/GetV1PayrollDigestsPayrollDigestUuidSecurity.md) | :heavy_check_mark: | The security requirements to use for the request. | -| `payrollDigestUuid` | *String* | :heavy_check_mark: | The UUID of the payroll digest batch returned by `POST /v1/payroll_digests`. | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1PayrollDigestsPayrollDigestUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `payrollDigestUuid` | *String* | :heavy_check_mark: | The UUID of the payroll digest batch returned by `POST /v1/payroll_digests`. | ### Response diff --git a/gusto_embedded_v_2026_06_15/docs/sdks/payrolls/README.md b/gusto_embedded_v_2026_06_15/docs/sdks/payrolls/README.md index 01f7b438b..a2c0cc541 100644 --- a/gusto_embedded_v_2026_06_15/docs/sdks/payrolls/README.md +++ b/gusto_embedded_v_2026_06_15/docs/sdks/payrolls/README.md @@ -233,9 +233,9 @@ public class Application { .build(); GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsResponse res = sdk.payrolls().getV1CompaniesCompanyIdPayrollsIdPartnerDisbursements() + .xGustoAPIVersion(GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) .companyId("") .id("") - .xGustoAPIVersion(GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) .call(); if (res.payrollPartnerDisbursements().isPresent()) { @@ -249,9 +249,9 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | `id` | *String* | :heavy_check_mark: | The UUID of the payroll | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | ### Response @@ -292,9 +292,9 @@ public class Application { .build(); PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsResponse res = sdk.payrolls().patchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements() + .xGustoAPIVersion(PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) .companyId("") .id("") - .xGustoAPIVersion(PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) .requestBody(PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBody.builder() .disbursements(List.of( PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsDisbursements.builder() @@ -314,9 +314,9 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | `id` | *String* | :heavy_check_mark: | The UUID of the payroll | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `requestBody` | [Optional\](../../models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBody.md) | :heavy_minus_sign: | N/A | ### Response @@ -344,8 +344,8 @@ scope: `payrolls:read` package hello.world; import com.gusto.embedded_api_v_2026_06_15.GustoEmbedded; -import com.gusto.embedded_api_v_2026_06_15.models.components.VersionHeader; import com.gusto.embedded_api_v_2026_06_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1CompaniesCompanyIdPayrollReversalsResponse; import java.lang.Exception; @@ -358,8 +358,8 @@ public class Application { .build(); GetV1CompaniesCompanyIdPayrollReversalsResponse res = sdk.payrolls().getApprovedReversals() + .xGustoAPIVersion(GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) .companyId("") - .xGustoAPIVersion(VersionHeader.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) .call(); if (res.payrollReversalList().isPresent()) { @@ -373,10 +373,10 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | | `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | -| `xGustoAPIVersion` | [Optional\](../../models/components/VersionHeader.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | ### Response @@ -560,9 +560,9 @@ public class Application { .build(); DeleteV1CompaniesCompanyIdPayrollsResponse res = sdk.payrolls().delete() + .xGustoAPIVersion(DeleteV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) .companyId("") .payrollId("") - .xGustoAPIVersion(DeleteV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) .call(); // handle response @@ -574,10 +574,10 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | `payrollId` | *String* | :heavy_check_mark: | The UUID of the payroll | | `async` | *Optional\* | :heavy_minus_sign: | When true, request an asynchronous delete of the payroll. | -| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | ### Response @@ -732,6 +732,8 @@ Notes: * Hour and dollar amounts are returned as string representations of numeric decimals. * Dollar amounts are represented to the cent. * If no data has yet be inserted for a given field, it defaults to "0.00" (for fixed amounts). +* Employee compensations are always paginated. Maximum page size is 100 employee compensations per request. +* Responses include the `X-Page`, `X-Total-Count`, `X-Total-Pages`, and `X-Per-Page` pagination headers. scope: `payrolls:read` @@ -756,8 +758,8 @@ public class Application { .build(); GetV1PaymentReceiptsPayrollsPayrollUuidResponse res = sdk.payrolls().getReceipt() - .payrollUuid("") .xGustoAPIVersion(GetV1PaymentReceiptsPayrollsPayrollUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .payrollUuid("") .call(); if (res.payrollReceipt().isPresent()) { @@ -771,8 +773,10 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `payrollUuid` | *String* | :heavy_check_mark: | The UUID of the payroll | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `payrollUuid` | *String* | :heavy_check_mark: | The UUID of the payroll | +| `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | +| `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | ### Response @@ -850,7 +854,7 @@ public class Application { ## prepare -Prepares an unprocessed payroll for update, including: adding or removing eligible employees from the payroll, +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_date`, `payroll_deadline`, and `payroll_status_meta` dates and times. Use this endpoint before calling [PUT /v1/companies/{company_id}/payrolls/{payroll_id}](ref:put-v1-companies-company_id-payrolls). @@ -1053,14 +1057,13 @@ scope: `payrolls:run` package hello.world; import com.gusto.embedded_api_v_2026_06_15.GustoEmbedded; -import com.gusto.embedded_api_v_2026_06_15.models.errors.NotFoundErrorObject; -import com.gusto.embedded_api_v_2026_06_15.models.errors.PayrollBlockersError; +import com.gusto.embedded_api_v_2026_06_15.models.errors.*; import com.gusto.embedded_api_v_2026_06_15.models.operations.*; import java.lang.Exception; public class Application { - public static void main(String[] args) throws NotFoundErrorObject, PayrollBlockersError, Exception { + public static void main(String[] args) throws NotFoundErrorObject, ConflictErrorObject, PayrollBlockersError, Exception { GustoEmbedded sdk = GustoEmbedded.builder() .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) @@ -1096,6 +1099,7 @@ public class Application { | Error Type | Status Code | Content Type | | ---------------------------------- | ---------------------------------- | ---------------------------------- | | models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/ConflictErrorObject | 409 | application/json | | models/errors/PayrollBlockersError | 422 | application/json | | models/errors/APIException | 4XX, 5XX | \*/\* | diff --git a/gusto_embedded_v_2026_06_15/docs/sdks/peoplebatches/README.md b/gusto_embedded_v_2026_06_15/docs/sdks/peoplebatches/README.md index 742bf7852..6f85a9256 100644 --- a/gusto_embedded_v_2026_06_15/docs/sdks/peoplebatches/README.md +++ b/gusto_embedded_v_2026_06_15/docs/sdks/peoplebatches/README.md @@ -36,11 +36,11 @@ public class Application { .build(); PostV1CompaniesCompanyIdPeopleBatchesResponse res = sdk.peopleBatches().postV1CompaniesCompanyIdPeopleBatches() - .companyId("") .xGustoAPIVersion(PostV1CompaniesCompanyIdPeopleBatchesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .companyId("") .requestBody(PostV1CompaniesCompanyIdPeopleBatchesRequestBody.builder() .idempotencyKey("550e8400-e29b-41d4-a716-446655440000") - .batchAction(BatchAction.CREATE) + .batchAction(PostV1CompaniesCompanyIdPeopleBatchesBatchAction.CREATE) .batch(List.of()) .build()) .call(); @@ -56,8 +56,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1CompaniesCompanyIdPeopleBatchesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyId` | *String* | :heavy_check_mark: | The UUID of the company | | `requestBody` | [PostV1CompaniesCompanyIdPeopleBatchesRequestBody](../../models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequestBody.md) | :heavy_check_mark: | N/A | ### Response @@ -102,8 +102,8 @@ public class Application { .build(); GetV1PeopleBatchesPeopleBatchUuidResponse res = sdk.peopleBatches().getV1PeopleBatchesPeopleBatchUuid() - .peopleBatchUuid("") .xGustoAPIVersion(GetV1PeopleBatchesPeopleBatchUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .peopleBatchUuid("") .call(); if (res.peopleBatchResults().isPresent()) { @@ -117,8 +117,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `peopleBatchUuid` | *String* | :heavy_check_mark: | The UUID of the people batch | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1PeopleBatchesPeopleBatchUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `peopleBatchUuid` | *String* | :heavy_check_mark: | The UUID of the people batch | ### Response diff --git a/gusto_embedded_v_2026_06_15/docs/sdks/reports/README.md b/gusto_embedded_v_2026_06_15/docs/sdks/reports/README.md index 1fef3ab0d..ba901a25d 100644 --- a/gusto_embedded_v_2026_06_15/docs/sdks/reports/README.md +++ b/gusto_embedded_v_2026_06_15/docs/sdks/reports/README.md @@ -4,12 +4,169 @@ ### Available Operations +* [postV1BulkReports](#postv1bulkreports) - Create a bulk report batch +* [getV1BulkReportsRequestUuid](#getv1bulkreportsrequestuuid) - Get a bulk report batch * [postV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage](#postv1companiescompanyidreportsemployeesannualficawage) - Create an employees annual FICA wage report * [createCustom](#createcustom) - Create a custom report * [postPayrollsPayrollUuidReportsGeneralLedger](#postpayrollspayrolluuidreportsgeneralledger) - Create a general ledger report * [getReportsRequestUuid](#getreportsrequestuuid) - Get a report * [getTemplate](#gettemplate) - Get a report template +## postV1BulkReports + +Triggers asynchronous generation of up to 25 reports across companies the partner is mapped to. Each `batch` item is a `custom_report` (same parameters as [create a custom report](https://docs.gusto.com/embedded-payroll/reference/post-companies-company_uuid-reports)) or a `general_ledger` report (same parameters as [create a general ledger report](https://docs.gusto.com/embedded-payroll/reference/post-payrolls-payroll_uuid-reports-general_ledger)), keyed by `company_uuid` and `report_type`. Items are validated synchronously; if any is invalid, the entire batch is rejected. + +Poll the [bulk report GET endpoint](https://docs.gusto.com/embedded-payroll/reference/get-v1-bulk_reports-request_uuid) with the returned `uuid` for status and the report URL, which is valid for 10 minutes. + +📘 System Access Authentication + +This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + +scope: `company_reports:write` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api_v_2026_06_15.GustoEmbedded; +import com.gusto.embedded_api_v_2026_06_15.models.components.*; +import com.gusto.embedded_api_v_2026_06_15.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api_v_2026_06_15.models.operations.*; +import java.lang.Exception; +import java.time.LocalDate; +import java.util.List; + +public class Application { + + public static void main(String[] args) throws UnprocessableEntityError, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .build(); + + PostV1BulkReportsResponse res = sdk.reports().postV1BulkReports() + .security(PostV1BulkReportsSecurity.builder() + .systemAccessAuth(System.getenv().getOrDefault("SYSTEM_ACCESS_AUTH", "")) + .build()) + .xGustoAPIVersion(PostV1BulkReportsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .bulkReportBody(BulkReportBody.builder() + .batch(List.of( + BulkReportCustomReportItem.builder() + .companyUuid("12345678-abcd-ef12-3456-7890abcdef12") + .reportType(ReportType.CUSTOM_REPORT) + .columns(List.of( + Columns.EMPLOYEE_FIRST_NAME)) + .fileType(FileType.CSV) + .groupings(List.of( + Groupings.EMPLOYEE)) + .customName("Q1 Payroll Export") + .dateFilterType(DateFilterType.CHECK_DATE) + .startDate(LocalDate.parse("2026-01-01")) + .endDate(LocalDate.parse("2026-03-31")) + .paymentMethod(PaymentMethod.CHECK) + .employmentType(EmploymentType.EXEMPT) + .employmentStatus(EmploymentStatus.ACTIVE_FULL_TIME) + .build(), + BulkReportGeneralLedgerItem.builder() + .companyUuid("12345678-abcd-ef12-3456-7890abcdef12") + .reportType(BulkReportGeneralLedgerItemReportType.GENERAL_LEDGER) + .payrollUuid("7b1d0df1-6403-4a06-8768-c1dd7d24d27a") + .aggregation(Aggregation.DEFAULT) + .build())) + .build()) + .call(); + + if (res.createBulkReport().isPresent()) { + System.out.println(res.createBulkReport().get()); + } + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | Example | +| ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | +| `security` | [com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1BulkReportsSecurity](../../models/operations/PostV1BulkReportsSecurity.md) | :heavy_check_mark: | The security requirements to use for the request. | | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1BulkReportsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | +| `bulkReportBody` | [BulkReportBody](../../models/components/BulkReportBody.md) | :heavy_check_mark: | N/A | {
    "batch": [
    {
    "company_uuid": "12345678-abcd-ef12-3456-7890abcdef12",
    "report_type": "custom_report",
    "columns": [
    "employee_first_name"
    ],
    "groupings": [
    "employee"
    ],
    "file_type": "csv",
    "custom_name": "Q1 Payroll Export",
    "with_totals": false,
    "start_date": "2026-01-01",
    "end_date": "2026-03-31",
    "date_filter_type": "check_date",
    "payment_method": "check",
    "employment_type": "exempt",
    "employment_status": "active_full_time"
    },
    {
    "company_uuid": "12345678-abcd-ef12-3456-7890abcdef12",
    "report_type": "general_ledger",
    "payroll_uuid": "7b1d0df1-6403-4a06-8768-c1dd7d24d27a",
    "aggregation": "default"
    }
    ]
    } | + +### Response + +**[PostV1BulkReportsResponse](../../models/operations/PostV1BulkReportsResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | + +## getV1BulkReportsRequestUuid + +Get a bulk report batch's status and results given the `request_uuid`. While in progress, only batch metadata is returned; once complete, it also includes a signed `report_url` (a zip of all generated reports, valid for 10 minutes) and a per-company breakdown. + +Reports containing PHI are inaccessible with `company_reports:read:tier_2_only` data scope. + +📘 System Access Authentication + +This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + +scope: `company_reports:read` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api_v_2026_06_15.GustoEmbedded; +import com.gusto.embedded_api_v_2026_06_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2026_06_15.models.operations.*; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .build(); + + GetV1BulkReportsRequestUuidResponse res = sdk.reports().getV1BulkReportsRequestUuid() + .security(GetV1BulkReportsRequestUuidSecurity.builder() + .systemAccessAuth(System.getenv().getOrDefault("SYSTEM_ACCESS_AUTH", "")) + .build()) + .xGustoAPIVersion(GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .requestUuid("") + .call(); + + if (res.bulkReport().isPresent()) { + System.out.println(res.bulkReport().get()); + } + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `security` | [com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1BulkReportsRequestUuidSecurity](../../models/operations/GetV1BulkReportsRequestUuidSecurity.md) | :heavy_check_mark: | The security requirements to use for the request. | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `requestUuid` | *String* | :heavy_check_mark: | The UUID of the bulk report batch. | + +### Response + +**[GetV1BulkReportsRequestUuidResponse](../../models/operations/GetV1BulkReportsRequestUuidResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | + ## postV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage Generates a report containing annual FICA (Federal Insurance Contributions Act) wage data for all employees in a company over a specified year range. @@ -111,9 +268,8 @@ public class Application { .companyUuid("") .createReportBody(CreateReportBody.builder() .columns(List.of( - Columns.TOTAL_TIME_OFF_EARNINGS)) - .groupings(List.of()) - .fileType(FileType.JSON) + CreateReportBodyColumns.TOTAL_TIME_OFF_EARNINGS)) + .fileType(CreateReportBodyFileType.JSON) .startDate(LocalDate.parse("2024-01-01")) .endDate(LocalDate.parse("2024-04-01")) .dismissedStartDate(LocalDate.parse("2024-01-01")) @@ -163,8 +319,8 @@ scope: `company_reports:write` package hello.world; import com.gusto.embedded_api_v_2026_06_15.GustoEmbedded; -import com.gusto.embedded_api_v_2026_06_15.models.components.Aggregation; import com.gusto.embedded_api_v_2026_06_15.models.components.GeneralLedgerReportBody; +import com.gusto.embedded_api_v_2026_06_15.models.components.GeneralLedgerReportBodyAggregation; import com.gusto.embedded_api_v_2026_06_15.models.errors.NotFoundErrorObject; import com.gusto.embedded_api_v_2026_06_15.models.errors.UnprocessableEntityError; import com.gusto.embedded_api_v_2026_06_15.models.operations.PostPayrollsPayrollUuidReportsGeneralLedgerHeaderXGustoAPIVersion; @@ -183,7 +339,7 @@ public class Application { .xGustoAPIVersion(PostPayrollsPayrollUuidReportsGeneralLedgerHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) .payrollUuid("") .generalLedgerReportBody(GeneralLedgerReportBody.builder() - .aggregation(Aggregation.DEFAULT) + .aggregation(GeneralLedgerReportBodyAggregation.DEFAULT) .build()) .call(); diff --git a/gusto_embedded_v_2026_06_15/docs/sdks/reversewiretransactions/README.md b/gusto_embedded_v_2026_06_15/docs/sdks/reversewiretransactions/README.md new file mode 100644 index 000000000..48473814b --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/sdks/reversewiretransactions/README.md @@ -0,0 +1,65 @@ +# ReverseWireTransactions + +## Overview + +### Available Operations + +* [getReverseWireTransactions](#getreversewiretransactions) - Get all reverse wire transactions for a company + +## getReverseWireTransactions + +Returns a paginated list of reverse wire (drawdown) transactions for a company. Reverse wires are debit transactions initiated by Gusto to pull funds from a partner's bank account to cover payroll or contractor payment obligations. Pagination is returned via the `x-page`, `x-per-page`, `x-total-count`, and `x-total-pages` response headers. + +scope: `reverse_wire_transactions:read` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api_v_2026_06_15.GustoEmbedded; +import com.gusto.embedded_api_v_2026_06_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetReverseWireTransactionsRequest; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetReverseWireTransactionsResponse; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + GetReverseWireTransactionsRequest req = GetReverseWireTransactionsRequest.builder() + .companyUuid("") + .build(); + + GetReverseWireTransactionsResponse res = sdk.reverseWireTransactions().getReverseWireTransactions() + .request(req) + .call(); + + if (res.reverseWireTransactionList().isPresent()) { + System.out.println(res.reverseWireTransactionList().get()); + } + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------- | +| `request` | [GetReverseWireTransactionsRequest](../../models/operations/GetReverseWireTransactionsRequest.md) | :heavy_check_mark: | The request object to use for the request. | + +### Response + +**[GetReverseWireTransactionsResponse](../../models/operations/GetReverseWireTransactionsResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/sdks/signatories/README.md b/gusto_embedded_v_2026_06_15/docs/sdks/signatories/README.md index 45f4a78ef..ea03e9548 100644 --- a/gusto_embedded_v_2026_06_15/docs/sdks/signatories/README.md +++ b/gusto_embedded_v_2026_06_15/docs/sdks/signatories/README.md @@ -40,8 +40,8 @@ public class Application { .build(); GetV1CompaniesCompanyUuidSignatoriesResponse res = sdk.signatories().list() - .companyUuid("") .xGustoAPIVersion(GetV1CompaniesCompanyUuidSignatoriesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .companyUuid("") .call(); if (res.signatories().isPresent()) { @@ -55,8 +55,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyUuidSignatoriesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | ### Response @@ -108,8 +108,8 @@ public class Application { .build(); PostV1CompanySignatoriesResponse res = sdk.signatories().create() - .companyUuid("") .xGustoAPIVersion(PostV1CompanySignatoriesHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .companyUuid("") .signatoryCreateRequest(SignatoryCreateRequest.builder() .firstName("Ed") .lastName("Reichert") @@ -138,8 +138,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1CompanySignatoriesHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `signatoryCreateRequest` | [SignatoryCreateRequest](../../models/components/SignatoryCreateRequest.md) | :heavy_check_mark: | N/A | ### Response @@ -186,8 +186,8 @@ public class Application { .build(); PostV1CompaniesCompanyUuidSignatoriesInviteResponse res = sdk.signatories().invite() - .companyUuid("") .xGustoAPIVersion(PostV1CompaniesCompanyUuidSignatoriesInviteHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .companyUuid("") .signatoryInviteRequest(SignatoryInviteRequest.builder() .firstName("Madelyn") .lastName("Littel") @@ -206,8 +206,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/PostV1CompaniesCompanyUuidSignatoriesInviteHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `signatoryInviteRequest` | [SignatoryInviteRequest](../../models/components/SignatoryInviteRequest.md) | :heavy_check_mark: | N/A | ### Response @@ -254,9 +254,9 @@ public class Application { .build(); PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidResponse res = sdk.signatories().update() + .xGustoAPIVersion(PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) .companyUuid("") .signatoryUuid("") - .xGustoAPIVersion(PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) .signatoryUpdateRequest(SignatoryUpdateRequest.builder() .version("") .build()) @@ -273,9 +273,9 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `signatoryUuid` | *String* | :heavy_check_mark: | The UUID of the signatory | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `signatoryUpdateRequest` | [SignatoryUpdateRequest](../../models/components/SignatoryUpdateRequest.md) | :heavy_check_mark: | N/A | ### Response @@ -320,9 +320,9 @@ public class Application { .build(); DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidResponse res = sdk.signatories().delete() + .xGustoAPIVersion(DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) .companyUuid("") .signatoryUuid("") - .xGustoAPIVersion(DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) .call(); // handle response @@ -334,9 +334,9 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `signatoryUuid` | *String* | :heavy_check_mark: | The UUID of the signatory | -| `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | ### Response diff --git a/gusto_embedded_v_2026_06_15/docs/sdks/taxpayments/README.md b/gusto_embedded_v_2026_06_15/docs/sdks/taxpayments/README.md new file mode 100644 index 000000000..77b92d68b --- /dev/null +++ b/gusto_embedded_v_2026_06_15/docs/sdks/taxpayments/README.md @@ -0,0 +1,127 @@ +# TaxPayments + +## Overview + +### Available Operations + +* [getTaxPayments](#gettaxpayments) - Get all tax payments for a company +* [getTaxPayment](#gettaxpayment) - Get a tax payment for a company + +## getTaxPayments + +Fetches all tax payments Gusto has made (or scheduled) to tax agencies on behalf of a company. + +scope: `tax_payments:read` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api_v_2026_06_15.GustoEmbedded; +import com.gusto.embedded_api_v_2026_06_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2026_06_15.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetTaxPaymentsRequest; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetTaxPaymentsResponse; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, UnprocessableEntityError, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + GetTaxPaymentsRequest req = GetTaxPaymentsRequest.builder() + .companyUuid("") + .sortBy("amount:asc") + .build(); + + GetTaxPaymentsResponse res = sdk.taxPayments().getTaxPayments() + .request(req) + .call(); + + if (res.taxPaymentList().isPresent()) { + System.out.println(res.taxPaymentList().get()); + } + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | ------------------------------------------------------------------------- | +| `request` | [GetTaxPaymentsRequest](../../models/operations/GetTaxPaymentsRequest.md) | :heavy_check_mark: | The request object to use for the request. | + +### Response + +**[GetTaxPaymentsResponse](../../models/operations/GetTaxPaymentsResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| -------------------------------------- | -------------------------------------- | -------------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/UnprocessableEntityError | 422 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | + +## getTaxPayment + +Fetches a single tax payment by UUID, including the payroll tax liabilities that make up the payment. + +scope: `tax_payments:read` + +### Example Usage + + +```java +package hello.world; + +import com.gusto.embedded_api_v_2026_06_15.GustoEmbedded; +import com.gusto.embedded_api_v_2026_06_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetTaxPaymentHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetTaxPaymentResponse; +import java.lang.Exception; + +public class Application { + + public static void main(String[] args) throws NotFoundErrorObject, Exception { + + GustoEmbedded sdk = GustoEmbedded.builder() + .companyAccessAuth(System.getenv().getOrDefault("COMPANY_ACCESS_AUTH", "")) + .build(); + + GetTaxPaymentResponse res = sdk.taxPayments().getTaxPayment() + .xGustoAPIVersion(GetTaxPaymentHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .companyUuid("") + .uuid("7cdc7492-54c4-4684-9729-2c5da517245b") + .call(); + + if (res.taxPayment().isPresent()) { + System.out.println(res.taxPayment().get()); + } + } +} +``` + +### Parameters + +| Parameter | Type | Required | Description | +| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetTaxPaymentHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | +| `uuid` | *String* | :heavy_check_mark: | The UUID of the tax payment | + +### Response + +**[GetTaxPaymentResponse](../../models/operations/GetTaxPaymentResponse.md)** + +### Errors + +| Error Type | Status Code | Content Type | +| --------------------------------- | --------------------------------- | --------------------------------- | +| models/errors/NotFoundErrorObject | 404 | application/json | +| models/errors/APIException | 4XX, 5XX | \*/\* | \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/docs/sdks/taxrequirements/README.md b/gusto_embedded_v_2026_06_15/docs/sdks/taxrequirements/README.md index 9efc49440..86fe3bba3 100644 --- a/gusto_embedded_v_2026_06_15/docs/sdks/taxrequirements/README.md +++ b/gusto_embedded_v_2026_06_15/docs/sdks/taxrequirements/README.md @@ -36,8 +36,8 @@ public class Application { .build(); GetV1CompaniesCompanyUuidTaxRequirementsResponse res = sdk.taxRequirements().getAll() - .companyUuid("") .xGustoAPIVersion(GetV1CompaniesCompanyUuidTaxRequirementsHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .companyUuid("") .call(); if (res.taxRequirementStatesList().isPresent()) { @@ -51,8 +51,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyUuidTaxRequirementsHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | ### Response @@ -96,9 +96,9 @@ public class Application { .build(); GetV1CompaniesCompanyUuidTaxRequirementsStateResponse res = sdk.taxRequirements().get() + .xGustoAPIVersion(GetV1CompaniesCompanyUuidTaxRequirementsStateHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) .companyUuid("") .state("CA") - .xGustoAPIVersion(GetV1CompaniesCompanyUuidTaxRequirementsStateHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) .call(); if (res.taxRequirementsState().isPresent()) { @@ -112,9 +112,9 @@ public class Application { | Parameter | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyUuidTaxRequirementsStateHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | | `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | | `state` | *String* | :heavy_check_mark: | The two-letter state abbreviation | CA | -| `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1CompaniesCompanyUuidTaxRequirementsStateHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | | `scheduling` | *Optional\* | :heavy_minus_sign: | When true, return "new" requirement sets with valid `effective_from` dates that are available to save new effective-dated values. | | ### Response @@ -163,9 +163,9 @@ public class Application { .build(); PutV1CompaniesCompanyUuidTaxRequirementsStateResponse res = sdk.taxRequirements().updateState() + .xGustoAPIVersion(PutV1CompaniesCompanyUuidTaxRequirementsStateHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) .companyUuid("") .state("CA") - .xGustoAPIVersion(PutV1CompaniesCompanyUuidTaxRequirementsStateHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) .requestBody(PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody.builder() .requirementSets(List.of( TaxRequirementSetUpdate.builder() @@ -190,9 +190,9 @@ public class Application { | Parameter | Type | Required | Description | Example | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1CompaniesCompanyUuidTaxRequirementsStateHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | | `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | | `state` | *String* | :heavy_check_mark: | The two-letter state abbreviation | CA | -| `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1CompaniesCompanyUuidTaxRequirementsStateHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | | | `requestBody` | [PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody](../../models/operations/PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody.md) | :heavy_check_mark: | N/A | | ### Response diff --git a/gusto_embedded_v_2026_06_15/docs/sdks/webhooks/README.md b/gusto_embedded_v_2026_06_15/docs/sdks/webhooks/README.md index 1955565c0..50000d92b 100644 --- a/gusto_embedded_v_2026_06_15/docs/sdks/webhooks/README.md +++ b/gusto_embedded_v_2026_06_15/docs/sdks/webhooks/README.md @@ -170,8 +170,8 @@ public class Application { .security(GetV1WebhookSubscriptionUuidSecurity.builder() .systemAccessAuth(System.getenv().getOrDefault("SYSTEM_ACCESS_AUTH", "")) .build()) - .webhookSubscriptionUuid("") .xGustoAPIVersion(GetV1WebhookSubscriptionUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .webhookSubscriptionUuid("") .call(); if (res.webhookSubscription().isPresent()) { @@ -186,8 +186,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `security` | [com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1WebhookSubscriptionUuidSecurity](../../models/operations/GetV1WebhookSubscriptionUuidSecurity.md) | :heavy_check_mark: | The security requirements to use for the request. | -| `webhookSubscriptionUuid` | *String* | :heavy_check_mark: | The webhook subscription UUID. | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1WebhookSubscriptionUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `webhookSubscriptionUuid` | *String* | :heavy_check_mark: | The webhook subscription UUID. | ### Response @@ -234,8 +234,8 @@ public class Application { .security(PutV1WebhookSubscriptionUuidSecurity.builder() .systemAccessAuth(System.getenv().getOrDefault("SYSTEM_ACCESS_AUTH", "")) .build()) - .webhookSubscriptionUuid("") .xGustoAPIVersion(PutV1WebhookSubscriptionUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .webhookSubscriptionUuid("") .requestBody(PutV1WebhookSubscriptionUuidRequestBody.builder() .subscriptionTypes(List.of( PutV1WebhookSubscriptionUuidSubscriptionTypes.PAY_SCHEDULE)) @@ -254,8 +254,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `security` | [com.gusto.embedded_api_v_2026_06_15.models.operations.PutV1WebhookSubscriptionUuidSecurity](../../models/operations/PutV1WebhookSubscriptionUuidSecurity.md) | :heavy_check_mark: | The security requirements to use for the request. | -| `webhookSubscriptionUuid` | *String* | :heavy_check_mark: | The webhook subscription UUID. | | `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1WebhookSubscriptionUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `webhookSubscriptionUuid` | *String* | :heavy_check_mark: | The webhook subscription UUID. | | `requestBody` | [PutV1WebhookSubscriptionUuidRequestBody](../../models/operations/PutV1WebhookSubscriptionUuidRequestBody.md) | :heavy_check_mark: | N/A | ### Response @@ -302,8 +302,8 @@ public class Application { .security(DeleteV1WebhookSubscriptionUuidSecurity.builder() .systemAccessAuth(System.getenv().getOrDefault("SYSTEM_ACCESS_AUTH", "")) .build()) - .webhookSubscriptionUuid("") .xGustoAPIVersion(DeleteV1WebhookSubscriptionUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .webhookSubscriptionUuid("") .call(); // handle response @@ -316,8 +316,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `security` | [com.gusto.embedded_api_v_2026_06_15.models.operations.DeleteV1WebhookSubscriptionUuidSecurity](../../models/operations/DeleteV1WebhookSubscriptionUuidSecurity.md) | :heavy_check_mark: | The security requirements to use for the request. | -| `webhookSubscriptionUuid` | *String* | :heavy_check_mark: | The webhook subscription UUID. | | `xGustoAPIVersion` | [Optional\](../../models/operations/DeleteV1WebhookSubscriptionUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `webhookSubscriptionUuid` | *String* | :heavy_check_mark: | The webhook subscription UUID. | ### Response @@ -362,8 +362,8 @@ public class Application { .security(GetV1WebhookSubscriptionVerificationTokenUuidSecurity.builder() .systemAccessAuth(System.getenv().getOrDefault("SYSTEM_ACCESS_AUTH", "")) .build()) - .webhookSubscriptionUuid("") .xGustoAPIVersion(GetV1WebhookSubscriptionVerificationTokenUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .webhookSubscriptionUuid("") .call(); if (res.webhookVerificationTokenResponse().isPresent()) { @@ -378,8 +378,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `security` | [com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1WebhookSubscriptionVerificationTokenUuidSecurity](../../models/operations/GetV1WebhookSubscriptionVerificationTokenUuidSecurity.md) | :heavy_check_mark: | The security requirements to use for the request. | -| `webhookSubscriptionUuid` | *String* | :heavy_check_mark: | The webhook subscription UUID. | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetV1WebhookSubscriptionVerificationTokenUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `webhookSubscriptionUuid` | *String* | :heavy_check_mark: | The webhook subscription UUID. | ### Response @@ -427,8 +427,8 @@ public class Application { .security(PutV1VerifyWebhookSubscriptionUuidSecurity.builder() .systemAccessAuth(System.getenv().getOrDefault("SYSTEM_ACCESS_AUTH", "")) .build()) - .webhookSubscriptionUuid("") .xGustoAPIVersion(PutV1VerifyWebhookSubscriptionUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .webhookSubscriptionUuid("") .requestBody(PutV1VerifyWebhookSubscriptionUuidRequestBody.builder() .verificationToken("") .build()) @@ -446,8 +446,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | `security` | [com.gusto.embedded_api_v_2026_06_15.models.operations.PutV1VerifyWebhookSubscriptionUuidSecurity](../../models/operations/PutV1VerifyWebhookSubscriptionUuidSecurity.md) | :heavy_check_mark: | The security requirements to use for the request. | -| `webhookSubscriptionUuid` | *String* | :heavy_check_mark: | The webhook subscription UUID. | | `xGustoAPIVersion` | [Optional\](../../models/operations/PutV1VerifyWebhookSubscriptionUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `webhookSubscriptionUuid` | *String* | :heavy_check_mark: | The webhook subscription UUID. | | `requestBody` | [PutV1VerifyWebhookSubscriptionUuidRequestBody](../../models/operations/PutV1VerifyWebhookSubscriptionUuidRequestBody.md) | :heavy_check_mark: | N/A | ### Response diff --git a/gusto_embedded_v_2026_06_15/docs/sdks/wireinrequests/README.md b/gusto_embedded_v_2026_06_15/docs/sdks/wireinrequests/README.md index 6b44f1f40..fab59e9d3 100644 --- a/gusto_embedded_v_2026_06_15/docs/sdks/wireinrequests/README.md +++ b/gusto_embedded_v_2026_06_15/docs/sdks/wireinrequests/README.md @@ -35,8 +35,8 @@ public class Application { .build(); GetWireInRequestsWireInRequestUuidResponse res = sdk.wireInRequests().get() - .wireInRequestUuid("") .xGustoAPIVersion(GetWireInRequestsWireInRequestUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .wireInRequestUuid("") .call(); if (res.wireInRequest().isPresent()) { @@ -50,8 +50,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `wireInRequestUuid` | *String* | :heavy_check_mark: | The UUID of the Wire In Request | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetWireInRequestsWireInRequestUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `wireInRequestUuid` | *String* | :heavy_check_mark: | The UUID of the Wire In Request | ### Response @@ -93,8 +93,8 @@ public class Application { .build(); PutWireInRequestsWireInRequestUuidResponse res = sdk.wireInRequests().submit() - .wireInRequestUuid("") .xGustoAPIVersion(PutWireInRequestsWireInRequestUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .wireInRequestUuid("") .wireInRequestUpdateRequestBody(WireInRequestUpdateRequestBody.builder() .dateSent("2024-06-10") .bankName("Chase") @@ -114,8 +114,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `wireInRequestUuid` | *String* | :heavy_check_mark: | The UUID of the Wire In Request | | `xGustoAPIVersion` | [Optional\](../../models/operations/PutWireInRequestsWireInRequestUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `wireInRequestUuid` | *String* | :heavy_check_mark: | The UUID of the Wire In Request | | `wireInRequestUpdateRequestBody` | [WireInRequestUpdateRequestBody](../../models/components/WireInRequestUpdateRequestBody.md) | :heavy_check_mark: | N/A | ### Response @@ -156,8 +156,8 @@ public class Application { .build(); GetCompaniesCompanyUuidWireInRequestUuidResponse res = sdk.wireInRequests().list() - .companyUuid("") .xGustoAPIVersion(GetCompaniesCompanyUuidWireInRequestUuidHeaderXGustoAPIVersion.TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15) + .companyUuid("") .call(); if (res.wireInRequestList().isPresent()) { @@ -171,8 +171,8 @@ public class Application { | Parameter | Type | Required | Description | | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `xGustoAPIVersion` | [Optional\](../../models/operations/GetCompaniesCompanyUuidWireInRequestUuidHeaderXGustoAPIVersion.md) | :heavy_minus_sign: | Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. | +| `companyUuid` | *String* | :heavy_check_mark: | The UUID of the company | | `page` | *Optional\* | :heavy_minus_sign: | The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. | | `per` | *Optional\* | :heavy_minus_sign: | Number of objects per page. For majority of endpoints will default to 25 | diff --git a/gusto_embedded_v_2026_06_15/gradle.properties b/gusto_embedded_v_2026_06_15/gradle.properties index 24acf5dea..f7f9d7366 100644 --- a/gusto_embedded_v_2026_06_15/gradle.properties +++ b/gusto_embedded_v_2026_06_15/gradle.properties @@ -1,4 +1,4 @@ groupId=com.gusto artifactId=embedded-api-v-2026-06-15 -version=0.0.1 +version=0.1.0 org.gradle.jvmargs=-Xmx4g -XX:MaxMetaspaceSize=1g diff --git a/gusto_embedded_v_2026_06_15/settings.gradle b/gusto_embedded_v_2026_06_15/settings.gradle index 9362b0593..02d3671b1 100644 --- a/gusto_embedded_v_2026_06_15/settings.gradle +++ b/gusto_embedded_v_2026_06_15/settings.gradle @@ -9,12 +9,6 @@ rootProject.name = 'GustoEmbedded' -include 'GustoEmbedded-spring-boot-autoconfigure' -include 'GustoEmbedded-spring-boot-starter' - -project(':GustoEmbedded-spring-boot-autoconfigure').projectDir = file('spring/GustoEmbedded-spring-boot-autoconfigure') -project(':GustoEmbedded-spring-boot-starter').projectDir = file('spring/GustoEmbedded-spring-boot-starter') - // Apply additional settings if the file exists if (file('settings-extra.gradle').exists()) { apply from: 'settings-extra.gradle' diff --git a/gusto_embedded_v_2026_06_15/spring/GustoEmbedded-spring-boot-autoconfigure/build.gradle b/gusto_embedded_v_2026_06_15/spring/GustoEmbedded-spring-boot-autoconfigure/build.gradle deleted file mode 100644 index e50328947..000000000 --- a/gusto_embedded_v_2026_06_15/spring/GustoEmbedded-spring-boot-autoconfigure/build.gradle +++ /dev/null @@ -1,35 +0,0 @@ -description = 'GustoEmbedded Spring Boot Auto Configuration' - -// Publishing configuration overrides -ext { - publishingConfig = [ - groupId: rootProject.group, - artifactId: 'GustoEmbedded-spring-boot-autoconfigure', - version: rootProject.version, - name: 'Gusto Java SDK - Spring Boot Auto Configuration', - description: 'Spring Boot auto-configuration for the Gusto Java SDK.', - ] -} - -dependencies { - api project(':') - implementation 'org.springframework.boot:spring-boot-autoconfigure' - annotationProcessor 'org.springframework.boot:spring-boot-configuration-processor' - testImplementation 'org.springframework.boot:spring-boot-starter-test' - testRuntimeOnly 'org.junit.platform:junit-platform-launcher' -} - -test { - useJUnitPlatform() -} - -jar { - dependsOn 'generatePomFileForMavenPublication' - archiveBaseName = 'GustoEmbedded-spring-boot-autoconfigure' - into("META-INF/maven/com.gusto/GustoEmbedded-spring-boot-autoconfigure") { - from(layout.buildDirectory.file("pom.xml")) { - // Only include if it exists to avoid build ordering issues - duplicatesStrategy = DuplicatesStrategy.INCLUDE - } - } -} \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/spring/GustoEmbedded-spring-boot-autoconfigure/src/main/java/com/gusto/embedded_api_v_2026_06_15/ConditionalOnPropertyPrefix.java b/gusto_embedded_v_2026_06_15/spring/GustoEmbedded-spring-boot-autoconfigure/src/main/java/com/gusto/embedded_api_v_2026_06_15/ConditionalOnPropertyPrefix.java deleted file mode 100644 index 73d7af1d6..000000000 --- a/gusto_embedded_v_2026_06_15/spring/GustoEmbedded-spring-boot-autoconfigure/src/main/java/com/gusto/embedded_api_v_2026_06_15/ConditionalOnPropertyPrefix.java +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - */ -package com.gusto.embedded_api_v_2026_06_15; - -import org.springframework.context.annotation.Conditional; - -import java.lang.annotation.Documented; -import java.lang.annotation.ElementType; -import java.lang.annotation.Retention; -import java.lang.annotation.RetentionPolicy; -import java.lang.annotation.Target; - -/** - * Conditional annotation that matches when any properties exist under the specified prefix. - * This is useful for conditionally creating beans only when configuration properties - * are present under a specific prefix. - * - *

    Example usage: - *

    - * @Bean
    - * @ConditionalOnPropertyPrefix(prefix = "myapp.security")
    - * public SecuritySource securitySource() {
    - *     // This bean will only be created if properties like myapp.security.* exist
    - * }
    - * 
    - */ -@Target({ ElementType.TYPE, ElementType.METHOD }) -@Retention(RetentionPolicy.RUNTIME) -@Documented -@Conditional(OnPropertyPrefixCondition.class) -public @interface ConditionalOnPropertyPrefix { - - /** - * The property prefix to check for. Properties starting with this prefix - * (followed by a dot) will be considered when determining if the condition matches. - * - * @return the property prefix - */ - String prefix(); -} \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/spring/GustoEmbedded-spring-boot-autoconfigure/src/main/java/com/gusto/embedded_api_v_2026_06_15/GustoEmbeddedAutoConfig.java b/gusto_embedded_v_2026_06_15/spring/GustoEmbedded-spring-boot-autoconfigure/src/main/java/com/gusto/embedded_api_v_2026_06_15/GustoEmbeddedAutoConfig.java deleted file mode 100644 index 4d01ac00f..000000000 --- a/gusto_embedded_v_2026_06_15/spring/GustoEmbedded-spring-boot-autoconfigure/src/main/java/com/gusto/embedded_api_v_2026_06_15/GustoEmbeddedAutoConfig.java +++ /dev/null @@ -1,1448 +0,0 @@ -/* - * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - */ -package com.gusto.embedded_api_v_2026_06_15; - -import org.springframework.boot.autoconfigure.AutoConfiguration; -import org.springframework.boot.autoconfigure.condition.ConditionalOnClass; -import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean; -import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; -import org.springframework.boot.context.properties.EnableConfigurationProperties; -import org.springframework.context.annotation.Bean; -import java.util.concurrent.TimeUnit; - -import com.gusto.embedded_api_v_2026_06_15.utils.BackoffStrategy; -import com.gusto.embedded_api_v_2026_06_15.utils.HTTPClient; -import com.gusto.embedded_api_v_2026_06_15.utils.RetryConfig; -import com.gusto.embedded_api_v_2026_06_15.utils.SpeakeasyHTTPClient; -import java.lang.IllegalStateException; -import java.lang.String; -import java.lang.System; -import java.util.Optional; -import java.util.concurrent.Executors; -import java.util.concurrent.ScheduledExecutorService; -import java.util.function.Consumer; - - -/** - * Spring Boot Auto Configuration for GustoEmbedded SDK - * This configuration class automatically configures the GustoEmbedded SDK - * when Spring Boot detects it on the classpath. - */ -@AutoConfiguration -@ConditionalOnClass(GustoEmbedded.class) -@EnableConfigurationProperties(GustoEmbeddedAutoConfigProperties.class) -public class GustoEmbeddedAutoConfig { - - /** - * Constructor. - */ - public GustoEmbeddedAutoConfig() { - } - - /** - * Creates a RetryConfig bean from properties if retry is enabled. - * - * @param properties the configuration properties - * @return A configured RetryConfig instance - */ - @Bean - @ConditionalOnMissingBean - @ConditionalOnProperty(prefix = "GustoEmbedded.retry-config", name = "strategy") - public RetryConfig retryConfig(GustoEmbeddedAutoConfigProperties properties) { - GustoEmbeddedAutoConfigProperties.RetryConfig retryProps = properties.getRetryConfig(); - - if (RetryConfig.Strategy.BACKOFF.equals(retryProps.getStrategy())) { - GustoEmbeddedAutoConfigProperties.RetryConfig.Backoff backoff = retryProps.getBackoff(); - return RetryConfig.builder() - .backoff( - BackoffStrategy.builder() - .initialInterval(backoff.getInitialInterval().toMillis(), TimeUnit.MILLISECONDS) - .maxInterval(backoff.getMaxInterval().toMillis(), TimeUnit.MILLISECONDS) - .maxElapsedTime(backoff.getMaxElapsedTime().toMillis(), TimeUnit.MILLISECONDS) - .baseFactor(backoff.getBaseFactor()) - .jitterFactor(backoff.getJitterFactor()) - .retryConnectError(backoff.isRetryConnectError()) - .retryReadTimeoutError(backoff.isRetryReadTimeoutError()) - .build() - ) - .build(); - } - - // Default retry config for other strategies - return RetryConfig.builder().build(); - } - /** - * Creates a {@code Consumer} bean for HTTP debug logging if none exists. - * This logger is used by the SpeakeasyHTTPClient for debug output when debug logging is enabled. - * By default, it logs to {@code System.out}, but can be customized by providing your own {@code Consumer} bean. - * - * @return A {@code Consumer} that logs messages to {@code System.out} - */ - @Bean - @ConditionalOnMissingBean - public Consumer httpLogger() { - return System.out::println; - } - /** - * Creates an HTTPClient bean if none exists. - * - * @param properties the configuration properties - * @param httpLogger the logger for HTTP debug output - * @return A configured HTTPClient instance - */ - @Bean - @ConditionalOnMissingBean - public HTTPClient httpClient(GustoEmbeddedAutoConfigProperties properties, Consumer httpLogger) { - GustoEmbeddedAutoConfigProperties.HttpClient httpClientProps = properties.getHttpClient(); - - // Configure the static logger - SpeakeasyHTTPClient.setLogger(httpLogger); - - if (httpClientProps != null) { - // Configure debug logging - SpeakeasyHTTPClient.setDebugLogging(httpClientProps.isEnableDebugLogging()); - - // Configure redacted headers - if (httpClientProps.getRedactedHeaders() != null && !httpClientProps.getRedactedHeaders().isEmpty()) { - SpeakeasyHTTPClient.setRedactedHeaders(httpClientProps.getRedactedHeaders()); - } - } - - return new SpeakeasyHTTPClient(); - } - /** - * Creates a SecuritySource bean if none exists and security properties are configured. - * - * @param properties the configuration properties - * @return A configured SecuritySource instance - */ - @Bean - @ConditionalOnMissingBean - @ConditionalOnPropertyPrefix(prefix = "GustoEmbedded.security") - public SecuritySource securitySource(GustoEmbeddedAutoConfigProperties properties) {GustoEmbeddedAutoConfigProperties.Security securityProps = properties.getSecurity(); - com.gusto.embedded_api_v_2026_06_15.models.components.Security.Builder securityBuilder = com.gusto.embedded_api_v_2026_06_15.models.components.Security.builder(); - boolean hasAnySecurityConfiguration = false; - // Build CompanyAccessAuth security from direct properties (primitive value) - if (securityProps.getCompanyAccessAuth() != null) { - securityBuilder.companyAccessAuth(securityProps.getCompanyAccessAuth()); - hasAnySecurityConfiguration = true; - } - - if (!hasAnySecurityConfiguration) { - throw new IllegalStateException("Security configuration is present but no security options are configured. " + - "Please configure at least one security option in your application properties."); - } - - return SecuritySource.of(securityBuilder.build()); - } - - /** - * Creates the SDKConfiguration bean as the single source of truth for all SDK configuration. - * - * @param properties the configuration properties - * @param httpClient the HTTP client bean - * @param hooks the hooks bean - * @param asyncHooks the async hooks bean - * @param securitySource the security source bean (optional) - * @param retryConfig the retry config bean (optional) - * @return A configured SDKConfiguration instance - */ - @Bean - @ConditionalOnMissingBean - public SDKConfiguration sdkConfiguration( - GustoEmbeddedAutoConfigProperties properties, - HTTPClient httpClient, - com.gusto.embedded_api_v_2026_06_15.utils.Hooks hooks, - com.gusto.embedded_api_v_2026_06_15.utils.AsyncHooks asyncHooks, - SecuritySource securitySource, - Optional retryConfig) { - - SDKConfiguration sdkConfiguration = new SDKConfiguration(); - - sdkConfiguration.setClient(httpClient); - - sdkConfiguration.setHooks(hooks); - sdkConfiguration.setAsyncHooks(asyncHooks); - sdkConfiguration.setSecuritySource(securitySource); - - if (properties.getServerUrl() != null) { - sdkConfiguration.setServerUrl(properties.getServerUrl()); - } - if (properties.getServer() != null) { - sdkConfiguration.setServer(properties.getServer()); - } - - sdkConfiguration.setRetryConfig(retryConfig); - - return sdkConfiguration; - } - - /** - * Creates the main SDK bean using the configured SDKConfiguration. - * - * @param sdkConfiguration the configured SDKConfiguration bean - * @return A configured GustoEmbedded instance - */ - @Bean - @ConditionalOnMissingBean - public GustoEmbedded gustoEmbedded(SDKConfiguration sdkConfiguration) { - return new GustoEmbedded(sdkConfiguration); - } - - /** - * Creates an AsyncHooks bean if none exists. - * - * @return A configured AsyncHooks instance - */ - @Bean - @ConditionalOnMissingBean - public com.gusto.embedded_api_v_2026_06_15.utils.AsyncHooks asyncHooks() { - return new com.gusto.embedded_api_v_2026_06_15.utils.AsyncHooks(); - } - - /** - * Creates a ScheduledExecutorService for async retry operations if none exists. - * - * @return A configured ScheduledExecutorService instance - */ - @Bean - @ConditionalOnMissingBean - public ScheduledExecutorService retryScheduler() { - return Executors.newSingleThreadScheduledExecutor(); - } - - /** - * Creates a Hooks configuration bean if none exists. - * - * @return A configured Hooks instance - */ - @Bean - @ConditionalOnMissingBean - public com.gusto.embedded_api_v_2026_06_15.utils.Hooks hooks() { - return new com.gusto.embedded_api_v_2026_06_15.utils.Hooks(); - } - /** - * Creates a AchTransactions sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured AchTransactions instance - */ - @Bean - @ConditionalOnMissingBean - public AchTransactions achTransactions(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.achTransactions(); - } - /** - * Creates a Companies sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured Companies instance - */ - @Bean - @ConditionalOnMissingBean - public Companies companies(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.companies(); - } - /** - * Creates a CompanyBenefits sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured CompanyBenefits instance - */ - @Bean - @ConditionalOnMissingBean - public CompanyBenefits companyBenefits(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.companyBenefits(); - } - /** - * Creates a CompanyAttachments sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured CompanyAttachments instance - */ - @Bean - @ConditionalOnMissingBean - public CompanyAttachments companyAttachments(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.companyAttachments(); - } - /** - * Creates a CompanyAttachment sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured CompanyAttachment instance - */ - @Bean - @ConditionalOnMissingBean - public CompanyAttachment companyAttachment(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.companyAttachment(); - } - /** - * Creates a BankAccounts sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured BankAccounts instance - */ - @Bean - @ConditionalOnMissingBean - public BankAccounts bankAccounts(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.bankAccounts(); - } - /** - * Creates a CompanyForms sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured CompanyForms instance - */ - @Bean - @ConditionalOnMissingBean - public CompanyForms companyForms(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.companyForms(); - } - /** - * Creates a IndustrySelection sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured IndustrySelection instance - */ - @Bean - @ConditionalOnMissingBean - public IndustrySelection industrySelection(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.industrySelection(); - } - /** - * Creates a Notifications sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured Notifications instance - */ - @Bean - @ConditionalOnMissingBean - public Notifications notifications(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.notifications(); - } - /** - * Creates a PaymentConfigs sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured PaymentConfigs instance - */ - @Bean - @ConditionalOnMissingBean - public PaymentConfigs paymentConfigs(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.paymentConfigs(); - } - /** - * Creates a TaxRequirements sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured TaxRequirements instance - */ - @Bean - @ConditionalOnMissingBean - public TaxRequirements taxRequirements(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.taxRequirements(); - } - /** - * Creates a FederalTaxDetails sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured FederalTaxDetails instance - */ - @Bean - @ConditionalOnMissingBean - public FederalTaxDetails federalTaxDetails(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.federalTaxDetails(); - } - /** - * Creates a JobsAndCompensations sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured JobsAndCompensations instance - */ - @Bean - @ConditionalOnMissingBean - public JobsAndCompensations jobsAndCompensations(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.jobsAndCompensations(); - } - /** - * Creates a ContractorPaymentMethod sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured ContractorPaymentMethod instance - */ - @Bean - @ConditionalOnMissingBean - public ContractorPaymentMethod contractorPaymentMethod(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.contractorPaymentMethod(); - } - /** - * Creates a ContractorPaymentMethods sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured ContractorPaymentMethods instance - */ - @Bean - @ConditionalOnMissingBean - public ContractorPaymentMethods contractorPaymentMethods(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.contractorPaymentMethods(); - } - /** - * Creates a ContractorForms sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured ContractorForms instance - */ - @Bean - @ConditionalOnMissingBean - public ContractorForms contractorForms(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.contractorForms(); - } - /** - * Creates a Contractors sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured Contractors instance - */ - @Bean - @ConditionalOnMissingBean - public Contractors contractors(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.contractors(); - } - /** - * Creates a ContractorPaymentGroups sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured ContractorPaymentGroups instance - */ - @Bean - @ConditionalOnMissingBean - public ContractorPaymentGroups contractorPaymentGroups(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.contractorPaymentGroups(); - } - /** - * Creates a ContractorPayments sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured ContractorPayments instance - */ - @Bean - @ConditionalOnMissingBean - public ContractorPayments contractorPayments(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.contractorPayments(); - } - /** - * Creates a Departments sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured Departments instance - */ - @Bean - @ConditionalOnMissingBean - public Departments departments(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.departments(); - } - /** - * Creates a ContractorDocuments sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured ContractorDocuments instance - */ - @Bean - @ConditionalOnMissingBean - public ContractorDocuments contractorDocuments(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.contractorDocuments(); - } - /** - * Creates a EarningTypes sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured EarningTypes instance - */ - @Bean - @ConditionalOnMissingBean - public EarningTypes earningTypes(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.earningTypes(); - } - /** - * Creates a EmployeePaymentMethods sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured EmployeePaymentMethods instance - */ - @Bean - @ConditionalOnMissingBean - public EmployeePaymentMethods employeePaymentMethods(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.employeePaymentMethods(); - } - /** - * Creates a EmployeePaymentMethod sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured EmployeePaymentMethod instance - */ - @Bean - @ConditionalOnMissingBean - public EmployeePaymentMethod employeePaymentMethod(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.employeePaymentMethod(); - } - /** - * Creates a EmployeeBenefits sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured EmployeeBenefits instance - */ - @Bean - @ConditionalOnMissingBean - public EmployeeBenefits employeeBenefits(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.employeeBenefits(); - } - /** - * Creates a Employees sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured Employees instance - */ - @Bean - @ConditionalOnMissingBean - public Employees employees(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.employees(); - } - /** - * Creates a EmployeeTaxSetup sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured EmployeeTaxSetup instance - */ - @Bean - @ConditionalOnMissingBean - public EmployeeTaxSetup employeeTaxSetup(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.employeeTaxSetup(); - } - /** - * Creates a EmployeeForms sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured EmployeeForms instance - */ - @Bean - @ConditionalOnMissingBean - public EmployeeForms employeeForms(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.employeeForms(); - } - /** - * Creates a EmployeeEmployments sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured EmployeeEmployments instance - */ - @Bean - @ConditionalOnMissingBean - public EmployeeEmployments employeeEmployments(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.employeeEmployments(); - } - /** - * Creates a Reports sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured Reports instance - */ - @Bean - @ConditionalOnMissingBean - public Reports reports(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.reports(); - } - /** - * Creates a Events sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured Events instance - */ - @Bean - @ConditionalOnMissingBean - public Events events(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.events(); - } - /** - * Creates a ExternalPayrolls sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured ExternalPayrolls instance - */ - @Bean - @ConditionalOnMissingBean - public ExternalPayrolls externalPayrolls(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.externalPayrolls(); - } - /** - * Creates a Flows sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured Flows instance - */ - @Bean - @ConditionalOnMissingBean - public Flows flows(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.flows(); - } - /** - * Creates a Garnishments sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured Garnishments instance - */ - @Bean - @ConditionalOnMissingBean - public Garnishments garnishments(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.garnishments(); - } - /** - * Creates a Payrolls sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured Payrolls instance - */ - @Bean - @ConditionalOnMissingBean - public Payrolls payrolls(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.payrolls(); - } - /** - * Creates a GeneratedDocuments sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured GeneratedDocuments instance - */ - @Bean - @ConditionalOnMissingBean - public GeneratedDocuments generatedDocuments(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.generatedDocuments(); - } - /** - * Creates a HistoricalEmployees sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured HistoricalEmployees instance - */ - @Bean - @ConditionalOnMissingBean - public HistoricalEmployees historicalEmployees(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.historicalEmployees(); - } - /** - * Creates a HolidayPayPolicies sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured HolidayPayPolicies instance - */ - @Bean - @ConditionalOnMissingBean - public HolidayPayPolicies holidayPayPolicies(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.holidayPayPolicies(); - } - /** - * Creates a EmployeeAddresses sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured EmployeeAddresses instance - */ - @Bean - @ConditionalOnMissingBean - public EmployeeAddresses employeeAddresses(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.employeeAddresses(); - } - /** - * Creates a I9Verification sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured I9Verification instance - */ - @Bean - @ConditionalOnMissingBean - public I9Verification i9Verification(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.i9Verification(); - } - /** - * Creates a InformationRequests sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured InformationRequests instance - */ - @Bean - @ConditionalOnMissingBean - public InformationRequests informationRequests(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.informationRequests(); - } - /** - * Creates a Invoices sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured Invoices instance - */ - @Bean - @ConditionalOnMissingBean - public Invoices invoices(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.invoices(); - } - /** - * Creates a Locations sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured Locations instance - */ - @Bean - @ConditionalOnMissingBean - public Locations locations(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.locations(); - } - /** - * Creates a PaySchedules sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured PaySchedules instance - */ - @Bean - @ConditionalOnMissingBean - public PaySchedules paySchedules(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.paySchedules(); - } - /** - * Creates a TimeOffPolicies sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured TimeOffPolicies instance - */ - @Bean - @ConditionalOnMissingBean - public TimeOffPolicies timeOffPolicies(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.timeOffPolicies(); - } - /** - * Creates a PeopleBatches sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured PeopleBatches instance - */ - @Bean - @ConditionalOnMissingBean - public PeopleBatches peopleBatches(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.peopleBatches(); - } - /** - * Creates a RecoveryCases sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured RecoveryCases instance - */ - @Bean - @ConditionalOnMissingBean - public RecoveryCases recoveryCases(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.recoveryCases(); - } - /** - * Creates a Reimbursements sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured Reimbursements instance - */ - @Bean - @ConditionalOnMissingBean - public Reimbursements reimbursements(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.reimbursements(); - } - /** - * Creates a SalaryEstimates sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured SalaryEstimates instance - */ - @Bean - @ConditionalOnMissingBean - public SalaryEstimates salaryEstimates(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.salaryEstimates(); - } - /** - * Creates a Signatories sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured Signatories instance - */ - @Bean - @ConditionalOnMissingBean - public Signatories signatories(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.signatories(); - } - /** - * Creates a TimeOffRequests sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured TimeOffRequests instance - */ - @Bean - @ConditionalOnMissingBean - public TimeOffRequests timeOffRequests(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.timeOffRequests(); - } - /** - * Creates a Introspection sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured Introspection instance - */ - @Bean - @ConditionalOnMissingBean - public Introspection introspection(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.introspection(); - } - /** - * Creates a Webhooks sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured Webhooks instance - */ - @Bean - @ConditionalOnMissingBean - public Webhooks webhooks(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.webhooks(); - } - /** - * Creates a WireInRequests sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured WireInRequests instance - */ - @Bean - @ConditionalOnMissingBean - public WireInRequests wireInRequests(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.wireInRequests(); - } - /** - * Creates a PayrollDigests sub-SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @return A configured PayrollDigests instance - */ - @Bean - @ConditionalOnMissingBean - public PayrollDigests payrollDigests(GustoEmbedded gustoEmbedded) { - return gustoEmbedded.payrollDigests(); - } - - /** - * Creates the async SDK bean if none exists. - * - * @param gustoEmbedded the main SDK instance - * @param sdkConfiguration the configured SDKConfiguration bean - * @return A configured AsyncGustoEmbedded instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncGustoEmbedded asyncGustoEmbedded(GustoEmbedded gustoEmbedded, SDKConfiguration sdkConfiguration) { - return new AsyncGustoEmbedded(gustoEmbedded, sdkConfiguration); - } - /** - * Creates an AsyncAchTransactions sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncAchTransactions instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncAchTransactions asyncAchTransactions(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.achTransactions(); - } - /** - * Creates an AsyncCompanies sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncCompanies instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncCompanies asyncCompanies(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.companies(); - } - /** - * Creates an AsyncCompanyBenefits sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncCompanyBenefits instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncCompanyBenefits asyncCompanyBenefits(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.companyBenefits(); - } - /** - * Creates an AsyncCompanyAttachments sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncCompanyAttachments instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncCompanyAttachments asyncCompanyAttachments(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.companyAttachments(); - } - /** - * Creates an AsyncCompanyAttachment sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncCompanyAttachment instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncCompanyAttachment asyncCompanyAttachment(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.companyAttachment(); - } - /** - * Creates an AsyncBankAccounts sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncBankAccounts instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncBankAccounts asyncBankAccounts(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.bankAccounts(); - } - /** - * Creates an AsyncCompanyForms sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncCompanyForms instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncCompanyForms asyncCompanyForms(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.companyForms(); - } - /** - * Creates an AsyncIndustrySelection sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncIndustrySelection instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncIndustrySelection asyncIndustrySelection(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.industrySelection(); - } - /** - * Creates an AsyncNotifications sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncNotifications instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncNotifications asyncNotifications(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.notifications(); - } - /** - * Creates an AsyncPaymentConfigs sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncPaymentConfigs instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncPaymentConfigs asyncPaymentConfigs(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.paymentConfigs(); - } - /** - * Creates an AsyncTaxRequirements sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncTaxRequirements instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncTaxRequirements asyncTaxRequirements(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.taxRequirements(); - } - /** - * Creates an AsyncFederalTaxDetails sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncFederalTaxDetails instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncFederalTaxDetails asyncFederalTaxDetails(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.federalTaxDetails(); - } - /** - * Creates an AsyncJobsAndCompensations sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncJobsAndCompensations instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncJobsAndCompensations asyncJobsAndCompensations(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.jobsAndCompensations(); - } - /** - * Creates an AsyncContractorPaymentMethod sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncContractorPaymentMethod instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncContractorPaymentMethod asyncContractorPaymentMethod(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.contractorPaymentMethod(); - } - /** - * Creates an AsyncContractorPaymentMethods sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncContractorPaymentMethods instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncContractorPaymentMethods asyncContractorPaymentMethods(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.contractorPaymentMethods(); - } - /** - * Creates an AsyncContractorForms sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncContractorForms instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncContractorForms asyncContractorForms(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.contractorForms(); - } - /** - * Creates an AsyncContractors sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncContractors instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncContractors asyncContractors(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.contractors(); - } - /** - * Creates an AsyncContractorPaymentGroups sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncContractorPaymentGroups instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncContractorPaymentGroups asyncContractorPaymentGroups(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.contractorPaymentGroups(); - } - /** - * Creates an AsyncContractorPayments sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncContractorPayments instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncContractorPayments asyncContractorPayments(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.contractorPayments(); - } - /** - * Creates an AsyncDepartments sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncDepartments instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncDepartments asyncDepartments(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.departments(); - } - /** - * Creates an AsyncContractorDocuments sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncContractorDocuments instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncContractorDocuments asyncContractorDocuments(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.contractorDocuments(); - } - /** - * Creates an AsyncEarningTypes sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncEarningTypes instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncEarningTypes asyncEarningTypes(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.earningTypes(); - } - /** - * Creates an AsyncEmployeePaymentMethods sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncEmployeePaymentMethods instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncEmployeePaymentMethods asyncEmployeePaymentMethods(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.employeePaymentMethods(); - } - /** - * Creates an AsyncEmployeePaymentMethod sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncEmployeePaymentMethod instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncEmployeePaymentMethod asyncEmployeePaymentMethod(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.employeePaymentMethod(); - } - /** - * Creates an AsyncEmployeeBenefits sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncEmployeeBenefits instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncEmployeeBenefits asyncEmployeeBenefits(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.employeeBenefits(); - } - /** - * Creates an AsyncEmployees sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncEmployees instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncEmployees asyncEmployees(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.employees(); - } - /** - * Creates an AsyncEmployeeTaxSetup sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncEmployeeTaxSetup instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncEmployeeTaxSetup asyncEmployeeTaxSetup(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.employeeTaxSetup(); - } - /** - * Creates an AsyncEmployeeForms sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncEmployeeForms instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncEmployeeForms asyncEmployeeForms(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.employeeForms(); - } - /** - * Creates an AsyncEmployeeEmployments sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncEmployeeEmployments instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncEmployeeEmployments asyncEmployeeEmployments(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.employeeEmployments(); - } - /** - * Creates an AsyncReports sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncReports instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncReports asyncReports(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.reports(); - } - /** - * Creates an AsyncEvents sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncEvents instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncEvents asyncEvents(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.events(); - } - /** - * Creates an AsyncExternalPayrolls sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncExternalPayrolls instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncExternalPayrolls asyncExternalPayrolls(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.externalPayrolls(); - } - /** - * Creates an AsyncFlows sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncFlows instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncFlows asyncFlows(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.flows(); - } - /** - * Creates an AsyncGarnishments sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncGarnishments instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncGarnishments asyncGarnishments(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.garnishments(); - } - /** - * Creates an AsyncPayrolls sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncPayrolls instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncPayrolls asyncPayrolls(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.payrolls(); - } - /** - * Creates an AsyncGeneratedDocuments sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncGeneratedDocuments instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncGeneratedDocuments asyncGeneratedDocuments(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.generatedDocuments(); - } - /** - * Creates an AsyncHistoricalEmployees sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncHistoricalEmployees instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncHistoricalEmployees asyncHistoricalEmployees(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.historicalEmployees(); - } - /** - * Creates an AsyncHolidayPayPolicies sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncHolidayPayPolicies instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncHolidayPayPolicies asyncHolidayPayPolicies(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.holidayPayPolicies(); - } - /** - * Creates an AsyncEmployeeAddresses sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncEmployeeAddresses instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncEmployeeAddresses asyncEmployeeAddresses(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.employeeAddresses(); - } - /** - * Creates an AsyncI9Verification sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncI9Verification instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncI9Verification asyncI9Verification(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.i9Verification(); - } - /** - * Creates an AsyncInformationRequests sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncInformationRequests instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncInformationRequests asyncInformationRequests(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.informationRequests(); - } - /** - * Creates an AsyncInvoices sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncInvoices instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncInvoices asyncInvoices(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.invoices(); - } - /** - * Creates an AsyncLocations sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncLocations instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncLocations asyncLocations(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.locations(); - } - /** - * Creates an AsyncPaySchedules sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncPaySchedules instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncPaySchedules asyncPaySchedules(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.paySchedules(); - } - /** - * Creates an AsyncTimeOffPolicies sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncTimeOffPolicies instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncTimeOffPolicies asyncTimeOffPolicies(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.timeOffPolicies(); - } - /** - * Creates an AsyncPeopleBatches sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncPeopleBatches instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncPeopleBatches asyncPeopleBatches(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.peopleBatches(); - } - /** - * Creates an AsyncRecoveryCases sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncRecoveryCases instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncRecoveryCases asyncRecoveryCases(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.recoveryCases(); - } - /** - * Creates an AsyncReimbursements sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncReimbursements instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncReimbursements asyncReimbursements(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.reimbursements(); - } - /** - * Creates an AsyncSalaryEstimates sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncSalaryEstimates instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncSalaryEstimates asyncSalaryEstimates(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.salaryEstimates(); - } - /** - * Creates an AsyncSignatories sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncSignatories instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncSignatories asyncSignatories(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.signatories(); - } - /** - * Creates an AsyncTimeOffRequests sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncTimeOffRequests instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncTimeOffRequests asyncTimeOffRequests(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.timeOffRequests(); - } - /** - * Creates an AsyncIntrospection sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncIntrospection instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncIntrospection asyncIntrospection(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.introspection(); - } - /** - * Creates an AsyncWebhooks sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncWebhooks instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncWebhooks asyncWebhooks(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.webhooks(); - } - /** - * Creates an AsyncWireInRequests sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncWireInRequests instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncWireInRequests asyncWireInRequests(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.wireInRequests(); - } - /** - * Creates an AsyncPayrollDigests sub-SDK bean if none exists. - * - * @param asyncGustoEmbedded the async SDK instance - * @return A configured AsyncPayrollDigests instance - */ - @Bean - @ConditionalOnMissingBean - public AsyncPayrollDigests asyncPayrollDigests(AsyncGustoEmbedded asyncGustoEmbedded) { - return asyncGustoEmbedded.payrollDigests(); - } -} \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/spring/GustoEmbedded-spring-boot-autoconfigure/src/main/java/com/gusto/embedded_api_v_2026_06_15/GustoEmbeddedAutoConfigProperties.java b/gusto_embedded_v_2026_06_15/spring/GustoEmbedded-spring-boot-autoconfigure/src/main/java/com/gusto/embedded_api_v_2026_06_15/GustoEmbeddedAutoConfigProperties.java deleted file mode 100644 index e3d411355..000000000 --- a/gusto_embedded_v_2026_06_15/spring/GustoEmbedded-spring-boot-autoconfigure/src/main/java/com/gusto/embedded_api_v_2026_06_15/GustoEmbeddedAutoConfigProperties.java +++ /dev/null @@ -1,460 +0,0 @@ -/* - * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - */ -package com.gusto.embedded_api_v_2026_06_15; - -import org.springframework.boot.context.properties.ConfigurationProperties; - -import java.time.Duration; -import java.lang.String; -import java.util.Collection; -import java.util.Set; - - -/** - * Spring Boot Configuration Properties for GustoEmbedded SDK - */ -@ConfigurationProperties(prefix = "GustoEmbedded") -public class GustoEmbeddedAutoConfigProperties { - - /** - * Constructor. - */ - public GustoEmbeddedAutoConfigProperties() { - } - - /** - * The base URL for the API server. If not specified, the SDK will use the default server URL. - */ - private String serverUrl; - - /** - * Configuration for retry behavior when API calls fail due to transient errors. - */ - private RetryConfig retryConfig = new RetryConfig(); - - /** - * HTTP client configuration for API requests. - */ - private HttpClient httpClient = new HttpClient(); - /** - * The name of the server to use from the available server configurations defined in the OpenAPI specification. - */ - private String server; - /** - * Security configuration for API authentication. - */ - private Security security = new Security(); - - /** - * Gets the base URL for the API server. - * - * @return the base URL for the API server - */ - public String getServerUrl() { - return serverUrl; - } - - /** - * Sets the base URL for the API server. - * - * @param serverUrl the base URL for the API server - */ - public void setServerUrl(String serverUrl) { - this.serverUrl = serverUrl; - } - - /** - * Gets the retry configuration for API calls that fail due to transient errors. - * - * @return the retry configuration - */ - public RetryConfig getRetryConfig() { - return retryConfig; - } - - /** - * Sets the retry configuration for API calls that fail due to transient errors. - * - * @param retryConfig the retry configuration to use - */ - public void setRetryConfig(RetryConfig retryConfig) { - this.retryConfig = retryConfig; - } - - /** - * Gets the HTTP client configuration for API requests. - * - * @return the HTTP client configuration - */ - public HttpClient getHttpClient() { - return httpClient; - } - - /** - * Sets the HTTP client configuration for API requests. - * - * @param httpClient the HTTP client configuration to use - */ - public void setHttpClient(HttpClient httpClient) { - this.httpClient = httpClient; - } - /** - * Gets the name of the server to use from the available server configurations. - * - * @return the server name - */ - public String getServer() { - return server; - } - - /** - * Sets the name of the server to use from the available server configurations. - * - * @param server the server name to use - */ - public void setServer(String server) { - this.server = server; - } - /** - * Gets the security configuration for API authentication. - * - * @return the security configuration - */ - public Security getSecurity() { - return security; - } - - /** - * Sets the security configuration for API authentication. - * - * @param security the security configuration to use - */ - public void setSecurity(Security security) { - this.security = security; - } - - /** - * Retry configuration properties - */ - public static class RetryConfig { - - /** - * Constructor. - */ - public RetryConfig() { - } - - /** - * The retry strategy to use for failed requests. - */ - private com.gusto.embedded_api_v_2026_06_15.utils.RetryConfig.Strategy strategy; - - /** - * Configuration for exponential backoff retry strategy. Only used when strategy is set to BACKOFF. - */ - private Backoff backoff = new Backoff(); - - /** - * Gets the retry strategy to use for failed requests. - * - * @return the retry strategy - */ - public com.gusto.embedded_api_v_2026_06_15.utils.RetryConfig.Strategy getStrategy() { - return strategy; - } - - /** - * Sets the retry strategy to use for failed requests. - * - * @param strategy the retry strategy to use - */ - public void setStrategy(com.gusto.embedded_api_v_2026_06_15.utils.RetryConfig.Strategy strategy) { - this.strategy = strategy; - } - - /** - * Gets the backoff configuration for exponential backoff retry strategy. - * - * @return the backoff configuration - */ - public Backoff getBackoff() { - return backoff; - } - - /** - * Sets the backoff configuration for exponential backoff retry strategy. - * - * @param backoff the backoff configuration to use - */ - public void setBackoff(Backoff backoff) { - this.backoff = backoff; - } - - /** - * Backoff retry configuration matching BackoffStrategy fields - */ - public static class Backoff { - - /** - * Constructor. - */ - public Backoff() { - } - - /** - * The initial delay before the first retry attempt. Supports duration formats like "500ms", "1s", "2m". - */ - private Duration initialInterval = Duration.ofMillis(500); - - /** - * The maximum delay between retry attempts. The backoff will not exceed this value. - */ - private Duration maxInterval = Duration.ofSeconds(60); - - /** - * The maximum total time to spend on all retry attempts. Retries will stop after this duration. - */ - private Duration maxElapsedTime = Duration.ofHours(1); - - /** - * The multiplier for exponential backoff. Each retry delay is multiplied by this factor (e.g., 1.5 means 50% increase). - */ - private double baseFactor = 1.5; - - /** - * Random jitter factor to avoid thundering herd problems. Value between 0.0 (no jitter) and 1.0 (full jitter). - */ - private double jitterFactor = 0.5; - - /** - * Whether to retry requests that fail due to connection errors (e.g., connection refused, timeout). - */ - private boolean retryConnectError = false; - - /** - * Whether to retry requests that fail due to read timeout errors (server doesn't respond within timeout). - */ - private boolean retryReadTimeoutError = false; - - /** - * Gets the initial delay before the first retry attempt. - * - * @return the initial delay duration - */ - public Duration getInitialInterval() { - return initialInterval; - } - - /** - * Sets the initial delay before the first retry attempt. - * - * @param initialInterval the initial delay duration - */ - public void setInitialInterval(Duration initialInterval) { - this.initialInterval = initialInterval; - } - - /** - * Gets the maximum delay between retry attempts. - * - * @return the maximum delay duration - */ - public Duration getMaxInterval() { - return maxInterval; - } - - /** - * Sets the maximum delay between retry attempts. - * - * @param maxInterval the maximum delay duration - */ - public void setMaxInterval(Duration maxInterval) { - this.maxInterval = maxInterval; - } - - /** - * Gets the maximum total time to spend on all retry attempts. - * - * @return the maximum elapsed time duration - */ - public Duration getMaxElapsedTime() { - return maxElapsedTime; - } - - /** - * Sets the maximum total time to spend on all retry attempts. - * - * @param maxElapsedTime the maximum elapsed time duration - */ - public void setMaxElapsedTime(Duration maxElapsedTime) { - this.maxElapsedTime = maxElapsedTime; - } - - /** - * Gets the multiplier for exponential backoff. - * - * @return the base factor for exponential backoff - */ - public double getBaseFactor() { - return baseFactor; - } - - /** - * Sets the multiplier for exponential backoff. - * - * @param baseFactor the base factor for exponential backoff - */ - public void setBaseFactor(double baseFactor) { - this.baseFactor = baseFactor; - } - - /** - * Gets the random jitter factor to avoid thundering herd problems. - * - * @return the jitter factor (0.0 to 1.0) - */ - public double getJitterFactor() { - return jitterFactor; - } - - /** - * Sets the random jitter factor to avoid thundering herd problems. - * - * @param jitterFactor the jitter factor (0.0 to 1.0) - */ - public void setJitterFactor(double jitterFactor) { - this.jitterFactor = jitterFactor; - } - - /** - * Gets whether to retry requests that fail due to connection errors. - * - * @return true if connection errors should be retried, false otherwise - */ - public boolean isRetryConnectError() { - return retryConnectError; - } - - /** - * Sets whether to retry requests that fail due to connection errors. - * - * @param retryConnectError true to retry connection errors, false otherwise - */ - public void setRetryConnectError(boolean retryConnectError) { - this.retryConnectError = retryConnectError; - } - - /** - * Gets whether to retry requests that fail due to read timeout errors. - * - * @return true if read timeout errors should be retried, false otherwise - */ - public boolean isRetryReadTimeoutError() { - return retryReadTimeoutError; - } - - /** - * Sets whether to retry requests that fail due to read timeout errors. - * - * @param retryReadTimeoutError true to retry read timeout errors, false otherwise - */ - public void setRetryReadTimeoutError(boolean retryReadTimeoutError) { - this.retryReadTimeoutError = retryReadTimeoutError; - } - } - } - - /** - * HTTP client configuration properties - */ - public static class HttpClient { - - /** - * Constructor. - */ - public HttpClient() { - } - - /** - * Whether to enable debug logging for HTTP requests and responses, including JSON body content. - */ - private boolean enableDebugLogging = false; - - /** - * Collection of header names (case-insensitive) whose values will be redacted in debug logs. - * By default, Authorization and X-API-KEY headers are redacted for security. - */ - private Collection redactedHeaders = Set.of("Authorization", "X-API-KEY"); - - /** - * Gets whether debug logging is enabled for HTTP requests and responses. - * - * @return true if debug logging is enabled, false otherwise - */ - public boolean isEnableDebugLogging() { - return enableDebugLogging; - } - - /** - * Sets whether to enable debug logging for HTTP requests and responses. - * - * @param enableDebugLogging true to enable debug logging, false otherwise - */ - public void setEnableDebugLogging(boolean enableDebugLogging) { - this.enableDebugLogging = enableDebugLogging; - } - - /** - * Gets the collection of header names whose values will be redacted in debug logs. - * - * @return the collection of header names to redact - */ - public Collection getRedactedHeaders() { - return redactedHeaders; - } - - /** - * Sets the collection of header names whose values will be redacted in debug logs. - * - * @param redactedHeaders the collection of header names to redact - */ - public void setRedactedHeaders(Collection redactedHeaders) { - this.redactedHeaders = redactedHeaders; - } - } - - /** - * Security configuration properties - */ - public static class Security { - - /** - * Constructor. - */ - public Security() { - } - /** - * CompanyAccessAuth for authentication. - */ - private String companyAccessAuth; - - /** - * Gets the CompanyAccessAuth value. - * - * @return the CompanyAccessAuth value - */ - public String getCompanyAccessAuth() { - return companyAccessAuth; - } - - /** - * Sets the CompanyAccessAuth value. - * - * @param companyAccessAuth the CompanyAccessAuth value to use - */ - public void setCompanyAccessAuth(String companyAccessAuth) { - this.companyAccessAuth = companyAccessAuth; - } - } -} \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/spring/GustoEmbedded-spring-boot-autoconfigure/src/main/java/com/gusto/embedded_api_v_2026_06_15/OnPropertyPrefixCondition.java b/gusto_embedded_v_2026_06_15/spring/GustoEmbedded-spring-boot-autoconfigure/src/main/java/com/gusto/embedded_api_v_2026_06_15/OnPropertyPrefixCondition.java deleted file mode 100644 index bda7bfee7..000000000 --- a/gusto_embedded_v_2026_06_15/spring/GustoEmbedded-spring-boot-autoconfigure/src/main/java/com/gusto/embedded_api_v_2026_06_15/OnPropertyPrefixCondition.java +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. - */ -package com.gusto.embedded_api_v_2026_06_15; - -import org.springframework.boot.autoconfigure.condition.ConditionMessage; -import org.springframework.boot.autoconfigure.condition.ConditionOutcome; -import org.springframework.boot.autoconfigure.condition.SpringBootCondition; -import org.springframework.boot.context.properties.bind.Binder; -import org.springframework.context.annotation.ConditionContext; -import org.springframework.core.type.AnnotatedTypeMetadata; -import org.springframework.core.env.Environment; - -import java.util.Map; - -/** - * Custom condition that checks if any properties exist under a given prefix. - * This is used to conditionally create beans only when configuration properties - * are present under a specific prefix. - */ -public class OnPropertyPrefixCondition extends SpringBootCondition { - - /** - * Default constructor for OnPropertyPrefixCondition. - */ - public OnPropertyPrefixCondition() { - // Default constructor - } - - @Override - public ConditionOutcome getMatchOutcome(ConditionContext context, AnnotatedTypeMetadata metadata) { - Map attributes = metadata.getAnnotationAttributes(ConditionalOnPropertyPrefix.class.getName()); - if (attributes == null) { - return ConditionOutcome.noMatch("@ConditionalOnPropertyPrefix annotation not found"); - } - - String prefix = (String) attributes.get("prefix"); - if (prefix == null || prefix.isEmpty()) { - return ConditionOutcome.noMatch("Property prefix is empty"); - } - - Environment environment = context.getEnvironment(); - - // Check if any properties exist under the given prefix - boolean hasPropertiesUnderPrefix = hasPropertiesWithPrefix(environment, prefix); - - ConditionMessage.Builder message = ConditionMessage.forCondition(ConditionalOnPropertyPrefix.class, prefix); - - if (hasPropertiesUnderPrefix) { - return ConditionOutcome.match(message.found("properties").items(prefix + ".*")); - } else { - return ConditionOutcome.noMatch(message.didNotFind("properties").items(prefix + ".*")); - } - } - - private boolean hasPropertiesWithPrefix(Environment environment, String prefix) { - try { - // Use Spring Boot's Binder to check if any properties exist under the prefix - Binder binder = Binder.get(environment); - - // Try to bind to a Map to see if any properties exist under the prefix - return binder.bind(prefix, Map.class).isBound(); - } catch (Exception e) { - // If we can't determine, assume no properties exist - return false; - } - } -} \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/spring/GustoEmbedded-spring-boot-autoconfigure/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports b/gusto_embedded_v_2026_06_15/spring/GustoEmbedded-spring-boot-autoconfigure/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports deleted file mode 100644 index 97e6b1a92..000000000 --- a/gusto_embedded_v_2026_06_15/spring/GustoEmbedded-spring-boot-autoconfigure/src/main/resources/META-INF/spring/org.springframework.boot.autoconfigure.AutoConfiguration.imports +++ /dev/null @@ -1 +0,0 @@ -com.gusto.embedded_api_v_2026_06_15.GustoEmbeddedAutoConfig \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/spring/GustoEmbedded-spring-boot-starter/build.gradle b/gusto_embedded_v_2026_06_15/spring/GustoEmbedded-spring-boot-starter/build.gradle deleted file mode 100644 index 2111bc5aa..000000000 --- a/gusto_embedded_v_2026_06_15/spring/GustoEmbedded-spring-boot-starter/build.gradle +++ /dev/null @@ -1,29 +0,0 @@ -description = 'GustoEmbedded Spring Boot Starter' - -// Publishing configuration overrides -ext { - publishingConfig = [ - groupId: rootProject.group, - artifactId: 'GustoEmbedded-spring-boot-starter', - version: rootProject.version, - name: 'Gusto Java SDK - Spring Boot Starter', - description: 'Spring Boot starter for the Gusto Java SDK.', - ] -} - -dependencies { - api project(':') - api project(':GustoEmbedded-spring-boot-autoconfigure') - api "org.springframework.boot:spring-boot-starter:${rootProject.springBootVersion}" -} - -jar { - dependsOn 'generatePomFileForMavenPublication' - archiveBaseName = 'GustoEmbedded-spring-boot-starter' - into("META-INF/maven/com.gusto/GustoEmbedded-spring-boot-starter") { - from(layout.buildDirectory.file("pom.xml")) { - // Only include if it exists to avoid build ordering issues - duplicatesStrategy = DuplicatesStrategy.INCLUDE - } - } -} \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncCompanies.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncCompanies.java index 367302752..4de783ed0 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncCompanies.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncCompanies.java @@ -38,6 +38,9 @@ import com.gusto.embedded_api_v_2026_06_15.models.operations.PutV1CompaniesHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2026_06_15.models.operations.PutV1CompaniesRequest; import com.gusto.embedded_api_v_2026_06_15.models.operations.PutV1CompaniesRequestBody; +import com.gusto.embedded_api_v_2026_06_15.models.operations.PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2026_06_15.models.operations.PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest; +import com.gusto.embedded_api_v_2026_06_15.models.operations.PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity; import com.gusto.embedded_api_v_2026_06_15.models.operations.PutV1PartnerManagedCompaniesCompanyUuidMigrateHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2026_06_15.models.operations.PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest; import com.gusto.embedded_api_v_2026_06_15.models.operations.PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceHeaderXGustoAPIVersion; @@ -68,6 +71,8 @@ import com.gusto.embedded_api_v_2026_06_15.models.operations.async.PostV1PartnerManagedCompaniesResponse; import com.gusto.embedded_api_v_2026_06_15.models.operations.async.PutV1CompaniesRequestBuilder; import com.gusto.embedded_api_v_2026_06_15.models.operations.async.PutV1CompaniesResponse; +import com.gusto.embedded_api_v_2026_06_15.models.operations.async.PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder; +import com.gusto.embedded_api_v_2026_06_15.models.operations.async.PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse; import com.gusto.embedded_api_v_2026_06_15.models.operations.async.PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder; import com.gusto.embedded_api_v_2026_06_15.models.operations.async.PutV1PartnerManagedCompaniesCompanyUuidMigrateResponse; import com.gusto.embedded_api_v_2026_06_15.models.operations.async.PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilder; @@ -85,6 +90,7 @@ import com.gusto.embedded_api_v_2026_06_15.operations.PostV1PartnerManagedCompanies; import com.gusto.embedded_api_v_2026_06_15.operations.PostV1PartnerManagedCompaniesCompanyUuidTermsOfService; import com.gusto.embedded_api_v_2026_06_15.operations.PutV1Companies; +import com.gusto.embedded_api_v_2026_06_15.operations.PutV1PartnerManagedCompaniesCompanyUuidDisassociate; import com.gusto.embedded_api_v_2026_06_15.operations.PutV1PartnerManagedCompaniesCompanyUuidMigrate; import com.gusto.embedded_api_v_2026_06_15.operations.PutV1PartnerManagedCompaniesCompanyUuidTermsOfService; import com.gusto.embedded_api_v_2026_06_15.utils.Headers; @@ -292,7 +298,7 @@ public GetV1CompaniesRequestBuilder get() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture get(String companyId) { - return get(companyId, Optional.empty()); + return get(Optional.empty(), companyId); } /** @@ -308,16 +314,16 @@ public CompletableFuture get(String companyId) { * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company * @return {@code CompletableFuture} - The async response */ - public CompletableFuture get(String companyId, Optional xGustoAPIVersion) { + public CompletableFuture get(Optional xGustoAPIVersion, String companyId) { GetV1CompaniesRequest request = GetV1CompaniesRequest .builder() - .companyId(companyId) .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) .build(); AsyncRequestOperation operation = new GetV1Companies.Async(sdkConfiguration, _headers); @@ -355,7 +361,7 @@ public PutV1CompaniesRequestBuilder update() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture update(String companyId, PutV1CompaniesRequestBody requestBody) { - return update(companyId, Optional.empty(), requestBody); + return update(Optional.empty(), companyId, requestBody); } /** @@ -367,19 +373,19 @@ public CompletableFuture update(String companyId, PutV1C * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company * @param requestBody * @return {@code CompletableFuture} - The async response */ public CompletableFuture update( - String companyId, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String companyId, PutV1CompaniesRequestBody requestBody) { PutV1CompaniesRequest request = PutV1CompaniesRequest .builder() - .companyId(companyId) .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) .requestBody(requestBody) .build(); AsyncRequestOperation operation @@ -488,7 +494,7 @@ public GetV1CompanyOnboardingStatusRequestBuilder getOnboardingStatus() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture getOnboardingStatus(String companyUuid) { - return getOnboardingStatus(companyUuid, Optional.empty(), Optional.empty()); + return getOnboardingStatus(Optional.empty(), companyUuid, Optional.empty()); } /** @@ -501,20 +507,20 @@ public CompletableFuture getOnboardingStat * *

    If set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyUuid The UUID of the company * @param additionalSteps Comma-delimited string of additional onboarding steps to include. Currently only supports the value "external_payroll". - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @return {@code CompletableFuture} - The async response */ public CompletableFuture getOnboardingStatus( - String companyUuid, Optional additionalSteps, - Optional xGustoAPIVersion) { + Optional xGustoAPIVersion, String companyUuid, + Optional additionalSteps) { GetV1CompanyOnboardingStatusRequest request = GetV1CompanyOnboardingStatusRequest .builder() + .xGustoAPIVersion(xGustoAPIVersion) .companyUuid(companyUuid) .additionalSteps(additionalSteps) - .xGustoAPIVersion(xGustoAPIVersion) .build(); AsyncRequestOperation operation = new GetV1CompanyOnboardingStatus.Async(sdkConfiguration, _headers); @@ -585,7 +591,7 @@ public GetV1CompanyFinishOnboardingRequestBuilder finishOnboarding() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture finishOnboarding(String companyUuid) { - return finishOnboarding(companyUuid, Optional.empty()); + return finishOnboarding(Optional.empty(), companyUuid); } /** @@ -614,16 +620,16 @@ public CompletableFuture finishOnboarding( * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company * @return {@code CompletableFuture} - The async response */ - public CompletableFuture finishOnboarding(String companyUuid, Optional xGustoAPIVersion) { + public CompletableFuture finishOnboarding(Optional xGustoAPIVersion, String companyUuid) { GetV1CompanyFinishOnboardingRequest request = GetV1CompanyFinishOnboardingRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) .build(); AsyncRequestOperation operation = new GetV1CompanyFinishOnboarding.Async(sdkConfiguration, _headers); @@ -632,6 +638,80 @@ public CompletableFuture finishOnboarding( } + /** + * Disassociate a partner managed company + * + *

    Disassociate a company from your embedded payroll product, reversing an earlier association or + * migration. You can only disassociate a company that is currently associated with your application. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `partner_managed_companies:disassociate` + * + * @return The async call builder + */ + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder putV1PartnerManagedCompaniesCompanyUuidDisassociate() { + return new PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder(sdkConfiguration); + } + + /** + * Disassociate a partner managed company + * + *

    Disassociate a company from your embedded payroll product, reversing an earlier association or + * migration. You can only disassociate a company that is currently associated with your application. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `partner_managed_companies:disassociate` + * + * @param security The security details to use for authentication. + * @param companyUuid The UUID of the company + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture putV1PartnerManagedCompaniesCompanyUuidDisassociate(PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity security, String companyUuid) { + return putV1PartnerManagedCompaniesCompanyUuidDisassociate(security, Optional.empty(), companyUuid); + } + + /** + * Disassociate a partner managed company + * + *

    Disassociate a company from your embedded payroll product, reversing an earlier association or + * migration. You can only disassociate a company that is currently associated with your application. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `partner_managed_companies:disassociate` + * + * @param security The security details to use for authentication. + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture putV1PartnerManagedCompaniesCompanyUuidDisassociate( + PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity security, Optional xGustoAPIVersion, + String companyUuid) { + PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest request = + PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) + .build(); + AsyncRequestOperation operation + = new PutV1PartnerManagedCompaniesCompanyUuidDisassociate.Async(sdkConfiguration, security, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + /** * Migrate company to embedded payroll * @@ -680,7 +760,7 @@ public PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder migrate() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture migrate(String companyUuid, PartnerManagedCompanyMigrateRequest partnerManagedCompanyMigrateRequest) { - return migrate(companyUuid, Optional.empty(), partnerManagedCompanyMigrateRequest); + return migrate(Optional.empty(), companyUuid, partnerManagedCompanyMigrateRequest); } /** @@ -701,20 +781,20 @@ public CompletableFuture * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company * @param partnerManagedCompanyMigrateRequest Request body is optional in API version 2026-02-01 and later. The Terms of Service signer is resolved from the authenticated payroll-admin user; the previously required `email`, `ip_address`, and `external_user_id` parameters are no longer accepted. * * @return {@code CompletableFuture} - The async response */ public CompletableFuture migrate( - String companyUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String companyUuid, PartnerManagedCompanyMigrateRequest partnerManagedCompanyMigrateRequest) { PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest request = PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) .partnerManagedCompanyMigrateRequest(partnerManagedCompanyMigrateRequest) .build(); AsyncRequestOperation operation @@ -851,7 +931,7 @@ public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder g * @return {@code CompletableFuture} - The async response */ public CompletableFuture getV1PartnerManagedCompaniesCompanyUuidMigrationReadiness(String companyUuid) { - return getV1PartnerManagedCompaniesCompanyUuidMigrationReadiness(companyUuid, Optional.empty()); + return getV1PartnerManagedCompaniesCompanyUuidMigrationReadiness(Optional.empty(), companyUuid); } /** @@ -865,16 +945,16 @@ public CompletableFutureIf set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getV1PartnerManagedCompaniesCompanyUuidMigrationReadiness(String companyUuid, Optional xGustoAPIVersion) { + public CompletableFuture getV1PartnerManagedCompaniesCompanyUuidMigrationReadiness(Optional xGustoAPIVersion, String companyUuid) { GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest request = GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) .build(); AsyncRequestOperation operation = new GetV1PartnerManagedCompaniesCompanyUuidMigrationReadiness.Async(sdkConfiguration, _headers); @@ -924,7 +1004,7 @@ public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBuilder */ @Deprecated public CompletableFuture acceptTermsOfService(String companyUuid, PartnerManagedCompanyAcceptTermsOfServiceRequest partnerManagedCompanyAcceptTermsOfServiceRequest) { - return acceptTermsOfService(companyUuid, Optional.empty(), partnerManagedCompanyAcceptTermsOfServiceRequest); + return acceptTermsOfService(Optional.empty(), companyUuid, partnerManagedCompanyAcceptTermsOfServiceRequest); } /** @@ -940,21 +1020,21 @@ public CompletableFutureIf set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company * @param partnerManagedCompanyAcceptTermsOfServiceRequest * @return {@code CompletableFuture} - The async response * @deprecated method: This will be removed in a future release, please migrate away from it as soon as possible. */ @Deprecated public CompletableFuture acceptTermsOfService( - String companyUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String companyUuid, PartnerManagedCompanyAcceptTermsOfServiceRequest partnerManagedCompanyAcceptTermsOfServiceRequest) { PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest request = PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) .partnerManagedCompanyAcceptTermsOfServiceRequest(partnerManagedCompanyAcceptTermsOfServiceRequest) .build(); AsyncRequestOperation operation @@ -1011,7 +1091,7 @@ public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilde */ @Deprecated public CompletableFuture retrieveTermsOfService(String companyUuid, PartnerManagedCompanyRetrieveTermsOfServiceRequest partnerManagedCompanyRetrieveTermsOfServiceRequest) { - return retrieveTermsOfService(companyUuid, Optional.empty(), partnerManagedCompanyRetrieveTermsOfServiceRequest); + return retrieveTermsOfService(Optional.empty(), companyUuid, partnerManagedCompanyRetrieveTermsOfServiceRequest); } /** @@ -1030,21 +1110,21 @@ public CompletableFutureIf set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company * @param partnerManagedCompanyRetrieveTermsOfServiceRequest * @return {@code CompletableFuture} - The async response * @deprecated method: This will be removed in a future release, please migrate away from it as soon as possible. */ @Deprecated public CompletableFuture retrieveTermsOfService( - String companyUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String companyUuid, PartnerManagedCompanyRetrieveTermsOfServiceRequest partnerManagedCompanyRetrieveTermsOfServiceRequest) { PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest request = PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) .partnerManagedCompanyRetrieveTermsOfServiceRequest(partnerManagedCompanyRetrieveTermsOfServiceRequest) .build(); AsyncRequestOperation operation @@ -1090,7 +1170,7 @@ public GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilder getV1 * @return {@code CompletableFuture} - The async response */ public CompletableFuture getV1PartnerManagedCompaniesCompanyUuidTermsOfService(String companyUuid) { - return getV1PartnerManagedCompaniesCompanyUuidTermsOfService(companyUuid, Optional.empty()); + return getV1PartnerManagedCompaniesCompanyUuidTermsOfService(Optional.empty(), companyUuid); } /** @@ -1106,16 +1186,16 @@ public CompletableFutureIf set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getV1PartnerManagedCompaniesCompanyUuidTermsOfService(String companyUuid, Optional xGustoAPIVersion) { + public CompletableFuture getV1PartnerManagedCompaniesCompanyUuidTermsOfService(Optional xGustoAPIVersion, String companyUuid) { GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest request = GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) .build(); AsyncRequestOperation operation = new GetV1PartnerManagedCompaniesCompanyUuidTermsOfService.Async(sdkConfiguration, _headers); @@ -1165,7 +1245,7 @@ public PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilder putV1 * @return {@code CompletableFuture} - The async response */ public CompletableFuture putV1PartnerManagedCompaniesCompanyUuidTermsOfService(String companyUuid, PartnerManagedCompanyRetrieveTermsOfServiceRequest partnerManagedCompanyRetrieveTermsOfServiceRequest) { - return putV1PartnerManagedCompaniesCompanyUuidTermsOfService(companyUuid, Optional.empty(), partnerManagedCompanyRetrieveTermsOfServiceRequest); + return putV1PartnerManagedCompaniesCompanyUuidTermsOfService(Optional.empty(), companyUuid, partnerManagedCompanyRetrieveTermsOfServiceRequest); } /** @@ -1183,19 +1263,19 @@ public CompletableFutureIf set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company * @param partnerManagedCompanyRetrieveTermsOfServiceRequest * @return {@code CompletableFuture} - The async response */ public CompletableFuture putV1PartnerManagedCompaniesCompanyUuidTermsOfService( - String companyUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String companyUuid, PartnerManagedCompanyRetrieveTermsOfServiceRequest partnerManagedCompanyRetrieveTermsOfServiceRequest) { PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest request = PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) .partnerManagedCompanyRetrieveTermsOfServiceRequest(partnerManagedCompanyRetrieveTermsOfServiceRequest) .build(); AsyncRequestOperation operation @@ -1236,7 +1316,7 @@ public PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilder post * @return {@code CompletableFuture} - The async response */ public CompletableFuture postV1PartnerManagedCompaniesCompanyUuidTermsOfService(String companyUuid, PartnerManagedCompanyAcceptTermsOfServiceRequest partnerManagedCompanyAcceptTermsOfServiceRequest) { - return postV1PartnerManagedCompaniesCompanyUuidTermsOfService(companyUuid, Optional.empty(), partnerManagedCompanyAcceptTermsOfServiceRequest); + return postV1PartnerManagedCompaniesCompanyUuidTermsOfService(Optional.empty(), companyUuid, partnerManagedCompanyAcceptTermsOfServiceRequest); } /** @@ -1249,19 +1329,19 @@ public CompletableFutureIf set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company * @param partnerManagedCompanyAcceptTermsOfServiceRequest * @return {@code CompletableFuture} - The async response */ public CompletableFuture postV1PartnerManagedCompaniesCompanyUuidTermsOfService( - String companyUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String companyUuid, PartnerManagedCompanyAcceptTermsOfServiceRequest partnerManagedCompanyAcceptTermsOfServiceRequest) { PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest request = PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) .partnerManagedCompanyAcceptTermsOfServiceRequest(partnerManagedCompanyAcceptTermsOfServiceRequest) .build(); AsyncRequestOperation operation diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncContractorPaymentGroups.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncContractorPaymentGroups.java index f1759a28f..5aa34b838 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncContractorPaymentGroups.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncContractorPaymentGroups.java @@ -193,7 +193,7 @@ public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequestBuilder fu * @return {@code CompletableFuture} - The async response */ public CompletableFuture fund(String contractorPaymentGroupUuid) { - return fund(contractorPaymentGroupUuid, Optional.empty()); + return fund(Optional.empty(), contractorPaymentGroupUuid); } /** @@ -212,16 +212,16 @@ public CompletableFutureIf set, this operation will use Security#companyAccessAuth from the global security. * - * @param contractorPaymentGroupUuid The UUID of the contractor payment group * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param contractorPaymentGroupUuid The UUID of the contractor payment group * @return {@code CompletableFuture} - The async response */ - public CompletableFuture fund(String contractorPaymentGroupUuid, Optional xGustoAPIVersion) { + public CompletableFuture fund(Optional xGustoAPIVersion, String contractorPaymentGroupUuid) { PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest request = PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest .builder() - .contractorPaymentGroupUuid(contractorPaymentGroupUuid) .xGustoAPIVersion(xGustoAPIVersion) + .contractorPaymentGroupUuid(contractorPaymentGroupUuid) .build(); AsyncRequestOperation operation = new PutV1ContractorPaymentGroupsContractorPaymentGroupIdFund.Async(sdkConfiguration, _headers); @@ -361,7 +361,7 @@ public GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder get() * @return {@code CompletableFuture} - The async response */ public CompletableFuture get(String contractorPaymentGroupUuid) { - return get(contractorPaymentGroupUuid, Optional.empty()); + return get(Optional.empty(), contractorPaymentGroupUuid); } /** @@ -373,16 +373,16 @@ public CompletableFutureIf set, this operation will use Security#companyAccessAuth from the global security. * - * @param contractorPaymentGroupUuid The UUID of the contractor payment group * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param contractorPaymentGroupUuid The UUID of the contractor payment group * @return {@code CompletableFuture} - The async response */ - public CompletableFuture get(String contractorPaymentGroupUuid, Optional xGustoAPIVersion) { + public CompletableFuture get(Optional xGustoAPIVersion, String contractorPaymentGroupUuid) { GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest request = GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest .builder() - .contractorPaymentGroupUuid(contractorPaymentGroupUuid) .xGustoAPIVersion(xGustoAPIVersion) + .contractorPaymentGroupUuid(contractorPaymentGroupUuid) .build(); AsyncRequestOperation operation = new GetV1ContractorPaymentGroupsContractorPaymentGroupId.Async(sdkConfiguration, _headers); @@ -421,7 +421,7 @@ public DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder del * @return {@code CompletableFuture} - The async response */ public CompletableFuture delete(String contractorPaymentGroupUuid) { - return delete(contractorPaymentGroupUuid, Optional.empty()); + return delete(Optional.empty(), contractorPaymentGroupUuid); } /** @@ -434,16 +434,16 @@ public CompletableFutureIf set, this operation will use Security#companyAccessAuth from the global security. * - * @param contractorPaymentGroupUuid The UUID of the contractor payment group * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param contractorPaymentGroupUuid The UUID of the contractor payment group * @return {@code CompletableFuture} - The async response */ - public CompletableFuture delete(String contractorPaymentGroupUuid, Optional xGustoAPIVersion) { + public CompletableFuture delete(Optional xGustoAPIVersion, String contractorPaymentGroupUuid) { DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest request = DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest .builder() - .contractorPaymentGroupUuid(contractorPaymentGroupUuid) .xGustoAPIVersion(xGustoAPIVersion) + .contractorPaymentGroupUuid(contractorPaymentGroupUuid) .build(); AsyncRequestOperation operation = new DeleteV1ContractorPaymentGroupsContractorPaymentGroupId.Async(sdkConfiguration, _headers); @@ -480,7 +480,7 @@ public GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder getV1Con * @return {@code CompletableFuture} - The async response */ public CompletableFuture getV1ContractorPaymentGroupsIdPartnerDisbursements(String id) { - return getV1ContractorPaymentGroupsIdPartnerDisbursements(id, Optional.empty()); + return getV1ContractorPaymentGroupsIdPartnerDisbursements(Optional.empty(), id); } /** @@ -492,16 +492,16 @@ public CompletableFutureIf set, this operation will use Security#companyAccessAuth from the global security. * - * @param id The UUID of the contractor payment group * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param id The UUID of the contractor payment group * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getV1ContractorPaymentGroupsIdPartnerDisbursements(String id, Optional xGustoAPIVersion) { + public CompletableFuture getV1ContractorPaymentGroupsIdPartnerDisbursements(Optional xGustoAPIVersion, String id) { GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest request = GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest .builder() - .id(id) .xGustoAPIVersion(xGustoAPIVersion) + .id(id) .build(); AsyncRequestOperation operation = new GetV1ContractorPaymentGroupsIdPartnerDisbursements.Async(sdkConfiguration, _headers); @@ -538,7 +538,7 @@ public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder patchV * @return {@code CompletableFuture} - The async response */ public CompletableFuture patchV1ContractorPaymentGroupsIdPartnerDisbursements(String id) { - return patchV1ContractorPaymentGroupsIdPartnerDisbursements(id, Optional.empty(), Optional.empty()); + return patchV1ContractorPaymentGroupsIdPartnerDisbursements(Optional.empty(), id, Optional.empty()); } /** @@ -550,19 +550,19 @@ public CompletableFutureIf set, this operation will use Security#companyAccessAuth from the global security. * - * @param id The UUID of the contractor payment group * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param id The UUID of the contractor payment group * @param requestBody * @return {@code CompletableFuture} - The async response */ public CompletableFuture patchV1ContractorPaymentGroupsIdPartnerDisbursements( - String id, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String id, Optional requestBody) { PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest request = PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest .builder() - .id(id) .xGustoAPIVersion(xGustoAPIVersion) + .id(id) .requestBody(requestBody) .build(); AsyncRequestOperation operation diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncContractorPayments.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncContractorPayments.java index f196c32b1..9df740a87 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncContractorPayments.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncContractorPayments.java @@ -20,6 +20,7 @@ import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1ContractorPaymentsContractorPaymentUuidFundRequest; import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1ContractorPaymentsContractorPaymentUuidReceiptHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1ContractorPaymentsContractorPaymentUuidReceiptRequest; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1ContractorsContractorUuidPaymentsRequest; import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1CompaniesCompanyIdContractorPaymentsHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1CompaniesCompanyIdContractorPaymentsRequest; import com.gusto.embedded_api_v_2026_06_15.models.operations.async.DeleteV1CompaniesCompanyIdContractorPaymentContractorPaymentRequestBuilder; @@ -36,6 +37,8 @@ import com.gusto.embedded_api_v_2026_06_15.models.operations.async.GetV1ContractorPaymentsContractorPaymentUuidFundResponse; import com.gusto.embedded_api_v_2026_06_15.models.operations.async.GetV1ContractorPaymentsContractorPaymentUuidReceiptRequestBuilder; import com.gusto.embedded_api_v_2026_06_15.models.operations.async.GetV1ContractorPaymentsContractorPaymentUuidReceiptResponse; +import com.gusto.embedded_api_v_2026_06_15.models.operations.async.GetV1ContractorsContractorUuidPaymentsRequestBuilder; +import com.gusto.embedded_api_v_2026_06_15.models.operations.async.GetV1ContractorsContractorUuidPaymentsResponse; import com.gusto.embedded_api_v_2026_06_15.models.operations.async.PostV1CompaniesCompanyIdContractorPaymentsRequestBuilder; import com.gusto.embedded_api_v_2026_06_15.models.operations.async.PostV1CompaniesCompanyIdContractorPaymentsResponse; import com.gusto.embedded_api_v_2026_06_15.operations.DeleteV1CompaniesCompanyIdContractorPaymentContractorPayment; @@ -45,6 +48,7 @@ import com.gusto.embedded_api_v_2026_06_15.operations.GetV1ContractorPaymentsContractorPaymentIdPdf; import com.gusto.embedded_api_v_2026_06_15.operations.GetV1ContractorPaymentsContractorPaymentUuidFund; import com.gusto.embedded_api_v_2026_06_15.operations.GetV1ContractorPaymentsContractorPaymentUuidReceipt; +import com.gusto.embedded_api_v_2026_06_15.operations.GetV1ContractorsContractorUuidPayments; import com.gusto.embedded_api_v_2026_06_15.operations.PostV1CompaniesCompanyIdContractorPayments; import com.gusto.embedded_api_v_2026_06_15.utils.Headers; import java.lang.String; @@ -72,6 +76,105 @@ public ContractorPayments sync() { } + /** + * Get contractor payments + * + *

    Returns a paginated list of payments for a single contractor. + * + *

    Results are sortable by `check_date` or `created_at`. Append `:asc` or `:desc` to control direction + * (e.g., `check_date:desc`). + * + *

    scope: `contractor_pay_stubs:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public GetV1ContractorsContractorUuidPaymentsRequestBuilder getV1ContractorsContractorUuidPayments() { + return new GetV1ContractorsContractorUuidPaymentsRequestBuilder(sdkConfiguration); + } + + /** + * Get contractor payments + * + *

    Returns a paginated list of payments for a single contractor. + * + *

    Results are sortable by `check_date` or `created_at`. Append `:asc` or `:desc` to control direction + * (e.g., `check_date:desc`). + * + *

    scope: `contractor_pay_stubs:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param request The request object containing all the parameters for the API call. + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getV1ContractorsContractorUuidPayments(GetV1ContractorsContractorUuidPaymentsRequest request) { + AsyncRequestOperation operation + = new GetV1ContractorsContractorUuidPayments.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Get a contractor payment PDF + * + *

    Get a PDF document for a single contractor payment. + * + *

    scope: `payrolls:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public GetV1ContractorPaymentsContractorPaymentIdPdfRequestBuilder getV1ContractorPaymentsContractorPaymentIdPdf() { + return new GetV1ContractorPaymentsContractorPaymentIdPdfRequestBuilder(sdkConfiguration); + } + + /** + * Get a contractor payment PDF + * + *

    Get a PDF document for a single contractor payment. + * + *

    scope: `payrolls:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param contractorPaymentId The UUID of the contractor payment + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getV1ContractorPaymentsContractorPaymentIdPdf(String contractorPaymentId) { + return getV1ContractorPaymentsContractorPaymentIdPdf(Optional.empty(), contractorPaymentId); + } + + /** + * Get a contractor payment PDF + * + *

    Get a PDF document for a single contractor payment. + * + *

    scope: `payrolls:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param contractorPaymentId The UUID of the contractor payment + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getV1ContractorPaymentsContractorPaymentIdPdf(Optional xGustoAPIVersion, String contractorPaymentId) { + GetV1ContractorPaymentsContractorPaymentIdPdfRequest request = + GetV1ContractorPaymentsContractorPaymentIdPdfRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .contractorPaymentId(contractorPaymentId) + .build(); + AsyncRequestOperation operation + = new GetV1ContractorPaymentsContractorPaymentIdPdf.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + /** * Get contractor payments for a company * @@ -543,62 +646,4 @@ public CompletableFutureGet a PDF document for a single contractor payment. - * - *

    scope: `payrolls:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The async call builder - */ - public GetV1ContractorPaymentsContractorPaymentIdPdfRequestBuilder getV1ContractorPaymentsContractorPaymentIdPdf() { - return new GetV1ContractorPaymentsContractorPaymentIdPdfRequestBuilder(sdkConfiguration); - } - - /** - * Get a contractor payment PDF - * - *

    Get a PDF document for a single contractor payment. - * - *

    scope: `payrolls:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param contractorPaymentId The UUID of the contractor payment - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture getV1ContractorPaymentsContractorPaymentIdPdf(String contractorPaymentId) { - return getV1ContractorPaymentsContractorPaymentIdPdf(Optional.empty(), contractorPaymentId); - } - - /** - * Get a contractor payment PDF - * - *

    Get a PDF document for a single contractor payment. - * - *

    scope: `payrolls:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param contractorPaymentId The UUID of the contractor payment - * @return {@code CompletableFuture} - The async response - */ - public CompletableFuture getV1ContractorPaymentsContractorPaymentIdPdf(Optional xGustoAPIVersion, String contractorPaymentId) { - GetV1ContractorPaymentsContractorPaymentIdPdfRequest request = - GetV1ContractorPaymentsContractorPaymentIdPdfRequest - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .contractorPaymentId(contractorPaymentId) - .build(); - AsyncRequestOperation operation - = new GetV1ContractorPaymentsContractorPaymentIdPdf.Async(sdkConfiguration, _headers); - return operation.doRequest(request) - .thenCompose(operation::handleResponse); - } - } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncContractors.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncContractors.java index 616796f5a..18c3d0ca5 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncContractors.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncContractors.java @@ -329,7 +329,7 @@ public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder getV1Compa */ public CompletableFuture getV1CompaniesCompanyIdContractorsPaymentDetails(String companyId) { return getV1CompaniesCompanyIdContractorsPaymentDetails( - companyId, Optional.empty(), Optional.empty(), + Optional.empty(), companyId, Optional.empty(), Optional.empty()); } @@ -367,22 +367,22 @@ public CompletableFutureIf set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyId The UUID of the company. This identifies the company whose contractor payment details you want to retrieve. * @param contractorUuid Optional filter to get payment details for a specific contractor. When provided, the response will only include payment details for this contractor. * @param contractorPaymentGroupUuid 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. - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @return {@code CompletableFuture} - The async response */ public CompletableFuture getV1CompaniesCompanyIdContractorsPaymentDetails( - String companyId, Optional contractorUuid, - Optional contractorPaymentGroupUuid, Optional xGustoAPIVersion) { + Optional xGustoAPIVersion, String companyId, + Optional contractorUuid, Optional contractorPaymentGroupUuid) { GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest request = GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest .builder() + .xGustoAPIVersion(xGustoAPIVersion) .companyId(companyId) .contractorUuid(contractorUuid) .contractorPaymentGroupUuid(contractorPaymentGroupUuid) - .xGustoAPIVersion(xGustoAPIVersion) .build(); AsyncRequestOperation operation = new GetV1CompaniesCompanyIdContractorsPaymentDetails.Async(sdkConfiguration, _headers); @@ -437,7 +437,7 @@ public PostV1ContractorsContractorUuidRehireRequestBuilder postV1ContractorsCont * @return {@code CompletableFuture} - The async response */ public CompletableFuture postV1ContractorsContractorUuidRehire(String contractorUuid) { - return postV1ContractorsContractorUuidRehire(contractorUuid, Optional.empty(), Optional.empty()); + return postV1ContractorsContractorUuidRehire(Optional.empty(), contractorUuid, Optional.empty()); } /** @@ -458,19 +458,19 @@ public CompletableFuture postV1Co * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param contractorUuid The UUID of the contractor * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param contractorUuid The UUID of the contractor * @param requestBody * @return {@code CompletableFuture} - The async response */ public CompletableFuture postV1ContractorsContractorUuidRehire( - String contractorUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String contractorUuid, Optional requestBody) { PostV1ContractorsContractorUuidRehireRequest request = PostV1ContractorsContractorUuidRehireRequest .builder() - .contractorUuid(contractorUuid) .xGustoAPIVersion(xGustoAPIVersion) + .contractorUuid(contractorUuid) .requestBody(requestBody) .build(); AsyncRequestOperation operation @@ -528,7 +528,7 @@ public DeleteV1ContractorsContractorUuidRehireRequestBuilder deleteV1Contractors * @return {@code CompletableFuture} - The async response */ public CompletableFuture deleteV1ContractorsContractorUuidRehire(String contractorUuid) { - return deleteV1ContractorsContractorUuidRehire(contractorUuid, Optional.empty()); + return deleteV1ContractorsContractorUuidRehire(Optional.empty(), contractorUuid); } /** @@ -550,16 +550,16 @@ public CompletableFuture delete * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param contractorUuid The UUID of the contractor * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param contractorUuid The UUID of the contractor * @return {@code CompletableFuture} - The async response */ - public CompletableFuture deleteV1ContractorsContractorUuidRehire(String contractorUuid, Optional xGustoAPIVersion) { + public CompletableFuture deleteV1ContractorsContractorUuidRehire(Optional xGustoAPIVersion, String contractorUuid) { DeleteV1ContractorsContractorUuidRehireRequest request = DeleteV1ContractorsContractorUuidRehireRequest .builder() - .contractorUuid(contractorUuid) .xGustoAPIVersion(xGustoAPIVersion) + .contractorUuid(contractorUuid) .build(); AsyncRequestOperation operation = new DeleteV1ContractorsContractorUuidRehire.Async(sdkConfiguration, _headers); @@ -616,7 +616,7 @@ public PostV1ContractorsContractorUuidTerminationRequestBuilder postV1Contractor * @return {@code CompletableFuture} - The async response */ public CompletableFuture postV1ContractorsContractorUuidTermination(String contractorUuid) { - return postV1ContractorsContractorUuidTermination(contractorUuid, Optional.empty(), Optional.empty()); + return postV1ContractorsContractorUuidTermination(Optional.empty(), contractorUuid, Optional.empty()); } /** @@ -638,19 +638,19 @@ public CompletableFuture pos * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param contractorUuid The UUID of the contractor * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param contractorUuid The UUID of the contractor * @param requestBody * @return {@code CompletableFuture} - The async response */ public CompletableFuture postV1ContractorsContractorUuidTermination( - String contractorUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String contractorUuid, Optional requestBody) { PostV1ContractorsContractorUuidTerminationRequest request = PostV1ContractorsContractorUuidTerminationRequest .builder() - .contractorUuid(contractorUuid) .xGustoAPIVersion(xGustoAPIVersion) + .contractorUuid(contractorUuid) .requestBody(requestBody) .build(); AsyncRequestOperation operation @@ -708,7 +708,7 @@ public DeleteV1ContractorsContractorUuidTerminationRequestBuilder deleteV1Contra * @return {@code CompletableFuture} - The async response */ public CompletableFuture deleteV1ContractorsContractorUuidTermination(String contractorUuid) { - return deleteV1ContractorsContractorUuidTermination(contractorUuid, Optional.empty()); + return deleteV1ContractorsContractorUuidTermination(Optional.empty(), contractorUuid); } /** @@ -730,16 +730,16 @@ public CompletableFuture d * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param contractorUuid The UUID of the contractor * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param contractorUuid The UUID of the contractor * @return {@code CompletableFuture} - The async response */ - public CompletableFuture deleteV1ContractorsContractorUuidTermination(String contractorUuid, Optional xGustoAPIVersion) { + public CompletableFuture deleteV1ContractorsContractorUuidTermination(Optional xGustoAPIVersion, String contractorUuid) { DeleteV1ContractorsContractorUuidTerminationRequest request = DeleteV1ContractorsContractorUuidTerminationRequest .builder() - .contractorUuid(contractorUuid) .xGustoAPIVersion(xGustoAPIVersion) + .contractorUuid(contractorUuid) .build(); AsyncRequestOperation operation = new DeleteV1ContractorsContractorUuidTermination.Async(sdkConfiguration, _headers); diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncDepartments.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncDepartments.java index a6529b7ef..04a4d9ecb 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncDepartments.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncDepartments.java @@ -97,7 +97,7 @@ public GetDepartmentRequestBuilder get() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture get(String departmentUuid) { - return get(departmentUuid, Optional.empty()); + return get(Optional.empty(), departmentUuid); } /** @@ -109,16 +109,16 @@ public CompletableFuture get(String departmentUuid) { * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param departmentUuid The UUID of the department * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param departmentUuid The UUID of the department * @return {@code CompletableFuture} - The async response */ - public CompletableFuture get(String departmentUuid, Optional xGustoAPIVersion) { + public CompletableFuture get(Optional xGustoAPIVersion, String departmentUuid) { GetDepartmentRequest request = GetDepartmentRequest .builder() - .departmentUuid(departmentUuid) .xGustoAPIVersion(xGustoAPIVersion) + .departmentUuid(departmentUuid) .build(); AsyncRequestOperation operation = new GetDepartment.Async(sdkConfiguration, _headers); @@ -156,7 +156,7 @@ public PutDepartmentsRequestBuilder update() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture update(String departmentUuid, DepartmentUpdateRequestBody departmentUpdateRequestBody) { - return update(departmentUuid, Optional.empty(), departmentUpdateRequestBody); + return update(Optional.empty(), departmentUuid, departmentUpdateRequestBody); } /** @@ -168,19 +168,19 @@ public CompletableFuture update(String departmentUuid, D * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param departmentUuid The UUID of the department * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param departmentUuid The UUID of the department * @param departmentUpdateRequestBody * @return {@code CompletableFuture} - The async response */ public CompletableFuture update( - String departmentUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String departmentUuid, DepartmentUpdateRequestBody departmentUpdateRequestBody) { PutDepartmentsRequest request = PutDepartmentsRequest .builder() - .departmentUuid(departmentUuid) .xGustoAPIVersion(xGustoAPIVersion) + .departmentUuid(departmentUuid) .departmentUpdateRequestBody(departmentUpdateRequestBody) .build(); AsyncRequestOperation operation @@ -220,7 +220,7 @@ public DeleteDepartmentRequestBuilder delete() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture delete(String departmentUuid) { - return delete(departmentUuid, Optional.empty()); + return delete(Optional.empty(), departmentUuid); } /** @@ -233,16 +233,16 @@ public CompletableFuture delete(String departmentUuid) * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param departmentUuid The UUID of the department * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param departmentUuid The UUID of the department * @return {@code CompletableFuture} - The async response */ - public CompletableFuture delete(String departmentUuid, Optional xGustoAPIVersion) { + public CompletableFuture delete(Optional xGustoAPIVersion, String departmentUuid) { DeleteDepartmentRequest request = DeleteDepartmentRequest .builder() - .departmentUuid(departmentUuid) .xGustoAPIVersion(xGustoAPIVersion) + .departmentUuid(departmentUuid) .build(); AsyncRequestOperation operation = new DeleteDepartment.Async(sdkConfiguration, _headers); @@ -280,7 +280,7 @@ public PutAddPeopleToDepartmentRequestBuilder addPeople() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture addPeople(String departmentUuid, DepartmentPeopleRequestBody departmentPeopleRequestBody) { - return addPeople(departmentUuid, Optional.empty(), departmentPeopleRequestBody); + return addPeople(Optional.empty(), departmentUuid, departmentPeopleRequestBody); } /** @@ -292,19 +292,19 @@ public CompletableFuture addPeople(String depa * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param departmentUuid The UUID of the department * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param departmentUuid The UUID of the department * @param departmentPeopleRequestBody * @return {@code CompletableFuture} - The async response */ public CompletableFuture addPeople( - String departmentUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String departmentUuid, DepartmentPeopleRequestBody departmentPeopleRequestBody) { PutAddPeopleToDepartmentRequest request = PutAddPeopleToDepartmentRequest .builder() - .departmentUuid(departmentUuid) .xGustoAPIVersion(xGustoAPIVersion) + .departmentUuid(departmentUuid) .departmentPeopleRequestBody(departmentPeopleRequestBody) .build(); AsyncRequestOperation operation @@ -343,7 +343,7 @@ public PutRemovePeopleFromDepartmentRequestBuilder removePeople() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture removePeople(String departmentUuid, DepartmentPeopleRequestBody departmentPeopleRequestBody) { - return removePeople(departmentUuid, Optional.empty(), departmentPeopleRequestBody); + return removePeople(Optional.empty(), departmentUuid, departmentPeopleRequestBody); } /** @@ -355,19 +355,19 @@ public CompletableFuture removePeople(Str * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param departmentUuid The UUID of the department * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param departmentUuid The UUID of the department * @param departmentPeopleRequestBody * @return {@code CompletableFuture} - The async response */ public CompletableFuture removePeople( - String departmentUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String departmentUuid, DepartmentPeopleRequestBody departmentPeopleRequestBody) { PutRemovePeopleFromDepartmentRequest request = PutRemovePeopleFromDepartmentRequest .builder() - .departmentUuid(departmentUuid) .xGustoAPIVersion(xGustoAPIVersion) + .departmentUuid(departmentUuid) .departmentPeopleRequestBody(departmentPeopleRequestBody) .build(); AsyncRequestOperation operation @@ -407,7 +407,7 @@ public GetCompaniesDepartmentsRequestBuilder getAll() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture getAll(String companyUuid) { - return getAll(companyUuid, Optional.empty()); + return getAll(Optional.empty(), companyUuid); } /** @@ -420,16 +420,16 @@ public CompletableFuture getAll(String companyU * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getAll(String companyUuid, Optional xGustoAPIVersion) { + public CompletableFuture getAll(Optional xGustoAPIVersion, String companyUuid) { GetCompaniesDepartmentsRequest request = GetCompaniesDepartmentsRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) .build(); AsyncRequestOperation operation = new GetCompaniesDepartments.Async(sdkConfiguration, _headers); @@ -467,7 +467,7 @@ public PostDepartmentsRequestBuilder create() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture create(String companyUuid, DepartmentCreateRequestBody departmentCreateRequestBody) { - return create(companyUuid, Optional.empty(), departmentCreateRequestBody); + return create(Optional.empty(), companyUuid, departmentCreateRequestBody); } /** @@ -479,19 +479,19 @@ public CompletableFuture create(String companyUuid, Dep * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company * @param departmentCreateRequestBody * @return {@code CompletableFuture} - The async response */ public CompletableFuture create( - String companyUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String companyUuid, DepartmentCreateRequestBody departmentCreateRequestBody) { PostDepartmentsRequest request = PostDepartmentsRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) .departmentCreateRequestBody(departmentCreateRequestBody) .build(); AsyncRequestOperation operation diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncEmployeeAddresses.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncEmployeeAddresses.java index 5a0f66ba1..aa8273804 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncEmployeeAddresses.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncEmployeeAddresses.java @@ -119,7 +119,7 @@ public GetV1EmployeesEmployeeIdHomeAddressesRequestBuilder get() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture get(String employeeId) { - return get(employeeId, Optional.empty()); + return get(Optional.empty(), employeeId); } /** @@ -134,16 +134,16 @@ public CompletableFuture get(Stri * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param employeeId The UUID of the employee * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param employeeId The UUID of the employee * @return {@code CompletableFuture} - The async response */ - public CompletableFuture get(String employeeId, Optional xGustoAPIVersion) { + public CompletableFuture get(Optional xGustoAPIVersion, String employeeId) { GetV1EmployeesEmployeeIdHomeAddressesRequest request = GetV1EmployeesEmployeeIdHomeAddressesRequest .builder() - .employeeId(employeeId) .xGustoAPIVersion(xGustoAPIVersion) + .employeeId(employeeId) .build(); AsyncRequestOperation operation = new GetV1EmployeesEmployeeIdHomeAddresses.Async(sdkConfiguration, _headers); @@ -187,7 +187,7 @@ public PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder create() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture create(String employeeId, PostV1EmployeesEmployeeIdHomeAddressesRequestBody requestBody) { - return create(employeeId, Optional.empty(), requestBody); + return create(Optional.empty(), employeeId, requestBody); } /** @@ -202,19 +202,19 @@ public CompletableFuture create( * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param employeeId The UUID of the employee * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param employeeId The UUID of the employee * @param requestBody * @return {@code CompletableFuture} - The async response */ public CompletableFuture create( - String employeeId, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String employeeId, PostV1EmployeesEmployeeIdHomeAddressesRequestBody requestBody) { PostV1EmployeesEmployeeIdHomeAddressesRequest request = PostV1EmployeesEmployeeIdHomeAddressesRequest .builder() - .employeeId(employeeId) .xGustoAPIVersion(xGustoAPIVersion) + .employeeId(employeeId) .requestBody(requestBody) .build(); AsyncRequestOperation operation @@ -258,7 +258,7 @@ public GetV1HomeAddressesHomeAddressUuidRequestBuilder retrieveHomeAddress() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture retrieveHomeAddress(String homeAddressUuid) { - return retrieveHomeAddress(homeAddressUuid, Optional.empty()); + return retrieveHomeAddress(Optional.empty(), homeAddressUuid); } /** @@ -273,16 +273,16 @@ public CompletableFuture retrieveHome * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param homeAddressUuid The UUID of the home address * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param homeAddressUuid The UUID of the home address * @return {@code CompletableFuture} - The async response */ - public CompletableFuture retrieveHomeAddress(String homeAddressUuid, Optional xGustoAPIVersion) { + public CompletableFuture retrieveHomeAddress(Optional xGustoAPIVersion, String homeAddressUuid) { GetV1HomeAddressesHomeAddressUuidRequest request = GetV1HomeAddressesHomeAddressUuidRequest .builder() - .homeAddressUuid(homeAddressUuid) .xGustoAPIVersion(xGustoAPIVersion) + .homeAddressUuid(homeAddressUuid) .build(); AsyncRequestOperation operation = new GetV1HomeAddressesHomeAddressUuid.Async(sdkConfiguration, _headers); @@ -451,7 +451,7 @@ public GetV1EmployeesEmployeeIdWorkAddressesRequestBuilder getWorkAddresses() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture getWorkAddresses(String employeeId) { - return getWorkAddresses(employeeId, Optional.empty()); + return getWorkAddresses(Optional.empty(), employeeId); } /** @@ -464,16 +464,16 @@ public CompletableFuture getWorkA * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param employeeId The UUID of the employee * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param employeeId The UUID of the employee * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getWorkAddresses(String employeeId, Optional xGustoAPIVersion) { + public CompletableFuture getWorkAddresses(Optional xGustoAPIVersion, String employeeId) { GetV1EmployeesEmployeeIdWorkAddressesRequest request = GetV1EmployeesEmployeeIdWorkAddressesRequest .builder() - .employeeId(employeeId) .xGustoAPIVersion(xGustoAPIVersion) + .employeeId(employeeId) .build(); AsyncRequestOperation operation = new GetV1EmployeesEmployeeIdWorkAddresses.Async(sdkConfiguration, _headers); @@ -513,7 +513,7 @@ public PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder createWorkAddress() * @return {@code CompletableFuture} - The async response */ public CompletableFuture createWorkAddress(String employeeId, PostV1EmployeesEmployeeIdWorkAddressesRequestBody requestBody) { - return createWorkAddress(employeeId, Optional.empty(), requestBody); + return createWorkAddress(Optional.empty(), employeeId, requestBody); } /** @@ -526,19 +526,19 @@ public CompletableFuture createW * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param employeeId The UUID of the employee * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param employeeId The UUID of the employee * @param requestBody * @return {@code CompletableFuture} - The async response */ public CompletableFuture createWorkAddress( - String employeeId, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String employeeId, PostV1EmployeesEmployeeIdWorkAddressesRequestBody requestBody) { PostV1EmployeesEmployeeIdWorkAddressesRequest request = PostV1EmployeesEmployeeIdWorkAddressesRequest .builder() - .employeeId(employeeId) .xGustoAPIVersion(xGustoAPIVersion) + .employeeId(employeeId) .requestBody(requestBody) .build(); AsyncRequestOperation operation @@ -576,7 +576,7 @@ public GetV1WorkAddressesWorkAddressUuidRequestBuilder retrieveWorkAddress() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture retrieveWorkAddress(String workAddressUuid) { - return retrieveWorkAddress(workAddressUuid, Optional.empty()); + return retrieveWorkAddress(Optional.empty(), workAddressUuid); } /** @@ -588,16 +588,16 @@ public CompletableFuture retrieveWork * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param workAddressUuid The UUID of the work address * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param workAddressUuid The UUID of the work address * @return {@code CompletableFuture} - The async response */ - public CompletableFuture retrieveWorkAddress(String workAddressUuid, Optional xGustoAPIVersion) { + public CompletableFuture retrieveWorkAddress(Optional xGustoAPIVersion, String workAddressUuid) { GetV1WorkAddressesWorkAddressUuidRequest request = GetV1WorkAddressesWorkAddressUuidRequest .builder() - .workAddressUuid(workAddressUuid) .xGustoAPIVersion(xGustoAPIVersion) + .workAddressUuid(workAddressUuid) .build(); AsyncRequestOperation operation = new GetV1WorkAddressesWorkAddressUuid.Async(sdkConfiguration, _headers); @@ -635,7 +635,7 @@ public PutV1WorkAddressesWorkAddressUuidRequestBuilder updateWorkAddress() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture updateWorkAddress(String workAddressUuid, PutV1WorkAddressesWorkAddressUuidRequestBody requestBody) { - return updateWorkAddress(workAddressUuid, Optional.empty(), requestBody); + return updateWorkAddress(Optional.empty(), workAddressUuid, requestBody); } /** @@ -647,19 +647,19 @@ public CompletableFuture updateWorkAd * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param workAddressUuid The UUID of the work address * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param workAddressUuid The UUID of the work address * @param requestBody * @return {@code CompletableFuture} - The async response */ public CompletableFuture updateWorkAddress( - String workAddressUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String workAddressUuid, PutV1WorkAddressesWorkAddressUuidRequestBody requestBody) { PutV1WorkAddressesWorkAddressUuidRequest request = PutV1WorkAddressesWorkAddressUuidRequest .builder() - .workAddressUuid(workAddressUuid) .xGustoAPIVersion(xGustoAPIVersion) + .workAddressUuid(workAddressUuid) .requestBody(requestBody) .build(); AsyncRequestOperation operation @@ -697,7 +697,7 @@ public DeleteV1WorkAddressesWorkAddressUuidRequestBuilder deleteWorkAddress() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture deleteWorkAddress(String workAddressUuid) { - return deleteWorkAddress(workAddressUuid, Optional.empty()); + return deleteWorkAddress(Optional.empty(), workAddressUuid); } /** @@ -709,16 +709,16 @@ public CompletableFuture deleteWor * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param workAddressUuid The UUID of the work address * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param workAddressUuid The UUID of the work address * @return {@code CompletableFuture} - The async response */ - public CompletableFuture deleteWorkAddress(String workAddressUuid, Optional xGustoAPIVersion) { + public CompletableFuture deleteWorkAddress(Optional xGustoAPIVersion, String workAddressUuid) { DeleteV1WorkAddressesWorkAddressUuidRequest request = DeleteV1WorkAddressesWorkAddressUuidRequest .builder() - .workAddressUuid(workAddressUuid) .xGustoAPIVersion(xGustoAPIVersion) + .workAddressUuid(workAddressUuid) .build(); AsyncRequestOperation operation = new DeleteV1WorkAddressesWorkAddressUuid.Async(sdkConfiguration, _headers); diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncEmployeeBenefits.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncEmployeeBenefits.java index bd0506979..bc779d39f 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncEmployeeBenefits.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncEmployeeBenefits.java @@ -624,7 +624,7 @@ public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder getV * @return {@code CompletableFuture} - The async response */ public CompletableFuture getV1EmployeesEmployeeUuidSection603HighEarnerStatuses(String employeeUuid) { - return getV1EmployeesEmployeeUuidSection603HighEarnerStatuses(employeeUuid, Optional.empty()); + return getV1EmployeesEmployeeUuidSection603HighEarnerStatuses(Optional.empty(), employeeUuid); } /** @@ -641,16 +641,16 @@ public CompletableFutureIf set, this operation will use Security#companyAccessAuth from the global security. * - * @param employeeUuid The UUID of the employee * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param employeeUuid The UUID of the employee * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getV1EmployeesEmployeeUuidSection603HighEarnerStatuses(String employeeUuid, Optional xGustoAPIVersion) { + public CompletableFuture getV1EmployeesEmployeeUuidSection603HighEarnerStatuses(Optional xGustoAPIVersion, String employeeUuid) { GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest request = GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest .builder() - .employeeUuid(employeeUuid) .xGustoAPIVersion(xGustoAPIVersion) + .employeeUuid(employeeUuid) .build(); AsyncRequestOperation operation = new GetV1EmployeesEmployeeUuidSection603HighEarnerStatuses.Async(sdkConfiguration, _headers); @@ -698,7 +698,7 @@ public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder pos * @return {@code CompletableFuture} - The async response */ public CompletableFuture postV1EmployeesEmployeeUuidSection603HighEarnerStatuses(String employeeUuid, EmployeeSection603HighEarnerStatusCreateRequest employeeSection603HighEarnerStatusCreateRequest) { - return postV1EmployeesEmployeeUuidSection603HighEarnerStatuses(employeeUuid, Optional.empty(), employeeSection603HighEarnerStatusCreateRequest); + return postV1EmployeesEmployeeUuidSection603HighEarnerStatuses(Optional.empty(), employeeUuid, employeeSection603HighEarnerStatusCreateRequest); } /** @@ -715,19 +715,19 @@ public CompletableFutureIf set, this operation will use Security#companyAccessAuth from the global security. * - * @param employeeUuid The UUID of the employee * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param employeeUuid The UUID of the employee * @param employeeSection603HighEarnerStatusCreateRequest Request body for creating an employee's Section 603 high earner status * @return {@code CompletableFuture} - The async response */ public CompletableFuture postV1EmployeesEmployeeUuidSection603HighEarnerStatuses( - String employeeUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String employeeUuid, EmployeeSection603HighEarnerStatusCreateRequest employeeSection603HighEarnerStatusCreateRequest) { PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest request = PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest .builder() - .employeeUuid(employeeUuid) .xGustoAPIVersion(xGustoAPIVersion) + .employeeUuid(employeeUuid) .employeeSection603HighEarnerStatusCreateRequest(employeeSection603HighEarnerStatusCreateRequest) .build(); AsyncRequestOperation operation @@ -776,7 +776,7 @@ public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearReques * @return {@code CompletableFuture} - The async response */ public CompletableFuture getV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYear(String employeeUuid, long effectiveYear) { - return getV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYear(employeeUuid, effectiveYear, Optional.empty()); + return getV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYear(Optional.empty(), employeeUuid, effectiveYear); } /** @@ -793,20 +793,20 @@ public CompletableFutureIf set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param employeeUuid The UUID of the employee * @param effectiveYear The effective year for the Section 603 status - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @return {@code CompletableFuture} - The async response */ public CompletableFuture getV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYear( - String employeeUuid, long effectiveYear, - Optional xGustoAPIVersion) { + Optional xGustoAPIVersion, String employeeUuid, + long effectiveYear) { GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest request = GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest .builder() + .xGustoAPIVersion(xGustoAPIVersion) .employeeUuid(employeeUuid) .effectiveYear(effectiveYear) - .xGustoAPIVersion(xGustoAPIVersion) .build(); AsyncRequestOperation operation = new GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYear.Async(sdkConfiguration, _headers); @@ -858,7 +858,7 @@ public CompletableFutureIf set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param employeeUuid The UUID of the employee * @param effectiveYear The effective year for the Section 603 status - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param employeeSection603HighEarnerStatusUpdateRequest Request body for updating an employee's Section 603 high earner status * @return {@code CompletableFuture} - The async response */ public CompletableFuture patchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYear( - String employeeUuid, long effectiveYear, - Optional xGustoAPIVersion, EmployeeSection603HighEarnerStatusUpdateRequest employeeSection603HighEarnerStatusUpdateRequest) { + Optional xGustoAPIVersion, String employeeUuid, + long effectiveYear, EmployeeSection603HighEarnerStatusUpdateRequest employeeSection603HighEarnerStatusUpdateRequest) { PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest request = PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest .builder() + .xGustoAPIVersion(xGustoAPIVersion) .employeeUuid(employeeUuid) .effectiveYear(effectiveYear) - .xGustoAPIVersion(xGustoAPIVersion) .employeeSection603HighEarnerStatusUpdateRequest(employeeSection603HighEarnerStatusUpdateRequest) .build(); AsyncRequestOperation operation diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncEmployees.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncEmployees.java index 67b953327..fff35dac3 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncEmployees.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncEmployees.java @@ -126,7 +126,7 @@ public GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder getCustomFields() { */ public CompletableFuture getCustomFields(String employeeId) { return getCustomFields( - employeeId, Optional.empty(), Optional.empty(), + Optional.empty(), employeeId, Optional.empty(), Optional.empty()); } @@ -139,22 +139,22 @@ public CompletableFuture getCustom * *

    If set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param employeeId The UUID of the employee * @param page The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. * @param per Number of objects per page. For majority of endpoints will default to 25 - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @return {@code CompletableFuture} - The async response */ public CompletableFuture getCustomFields( - String employeeId, Optional page, - Optional per, Optional xGustoAPIVersion) { + Optional xGustoAPIVersion, String employeeId, + Optional page, Optional per) { GetV1EmployeesEmployeeIdCustomFieldsRequest request = GetV1EmployeesEmployeeIdCustomFieldsRequest .builder() + .xGustoAPIVersion(xGustoAPIVersion) .employeeId(employeeId) .page(page) .per(per) - .xGustoAPIVersion(xGustoAPIVersion) .build(); AsyncRequestOperation operation = new GetV1EmployeesEmployeeIdCustomFields.Async(sdkConfiguration, _headers); diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncFederalTaxDetails.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncFederalTaxDetails.java index 24b1cbbb1..2934fa658 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncFederalTaxDetails.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncFederalTaxDetails.java @@ -72,7 +72,7 @@ public GetV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder get() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture get(String companyId) { - return get(companyId, Optional.empty()); + return get(Optional.empty(), companyId); } /** @@ -85,16 +85,16 @@ public CompletableFuture get(S * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company * @return {@code CompletableFuture} - The async response */ - public CompletableFuture get(String companyId, Optional xGustoAPIVersion) { + public CompletableFuture get(Optional xGustoAPIVersion, String companyId) { GetV1CompaniesCompanyIdFederalTaxDetailsRequest request = GetV1CompaniesCompanyIdFederalTaxDetailsRequest .builder() - .companyId(companyId) .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) .build(); AsyncRequestOperation operation = new GetV1CompaniesCompanyIdFederalTaxDetails.Async(sdkConfiguration, _headers); @@ -158,7 +158,7 @@ public PutV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder update() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture update(String companyId, FederalTaxDetailsUpdate federalTaxDetailsUpdate) { - return update(companyId, Optional.empty(), federalTaxDetailsUpdate); + return update(Optional.empty(), companyId, federalTaxDetailsUpdate); } /** @@ -183,19 +183,19 @@ public CompletableFuture updat * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company * @param federalTaxDetailsUpdate * @return {@code CompletableFuture} - The async response */ public CompletableFuture update( - String companyId, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String companyId, FederalTaxDetailsUpdate federalTaxDetailsUpdate) { PutV1CompaniesCompanyIdFederalTaxDetailsRequest request = PutV1CompaniesCompanyIdFederalTaxDetailsRequest .builder() - .companyId(companyId) .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) .federalTaxDetailsUpdate(federalTaxDetailsUpdate) .build(); AsyncRequestOperation operation diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncGeneratedDocuments.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncGeneratedDocuments.java index 0558a125d..e85384d71 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncGeneratedDocuments.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncGeneratedDocuments.java @@ -5,8 +5,8 @@ import static com.gusto.embedded_api_v_2026_06_15.operations.Operations.AsyncRequestOperation; -import com.gusto.embedded_api_v_2026_06_15.models.components.VersionHeader; import com.gusto.embedded_api_v_2026_06_15.models.operations.DocumentType; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest; import com.gusto.embedded_api_v_2026_06_15.models.operations.async.GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder; import com.gusto.embedded_api_v_2026_06_15.models.operations.async.GetV1GeneratedDocumentsDocumentTypeRequestUuidResponse; @@ -68,7 +68,7 @@ public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder get() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture get(DocumentType documentType, String requestUuid) { - return get(documentType, requestUuid, Optional.empty()); + return get(Optional.empty(), documentType, requestUuid); } /** @@ -81,20 +81,20 @@ public CompletableFuture * *

    If set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param documentType The type of document being generated * @param requestUuid The UUID of the request to generate a document. Generate document endpoints return request_uuids to be used with the GET generated document endpoint. - * @param xGustoAPIVersion * @return {@code CompletableFuture} - The async response */ public CompletableFuture get( - DocumentType documentType, String requestUuid, - Optional xGustoAPIVersion) { + Optional xGustoAPIVersion, DocumentType documentType, + String requestUuid) { GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest request = GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest .builder() + .xGustoAPIVersion(xGustoAPIVersion) .documentType(documentType) .requestUuid(requestUuid) - .xGustoAPIVersion(xGustoAPIVersion) .build(); AsyncRequestOperation operation = new GetV1GeneratedDocumentsDocumentTypeRequestUuid.Async(sdkConfiguration, _headers); diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncGustoEmbedded.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncGustoEmbedded.java index 7806aa7fc..1ae4b8917 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncGustoEmbedded.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncGustoEmbedded.java @@ -17,6 +17,8 @@ public class AsyncGustoEmbedded { private final AsyncCompanyBenefits companyBenefits; + private final AsyncReports reports; + private final AsyncCompanyAttachments companyAttachments; private final AsyncCompanyAttachment companyAttachment; @@ -69,8 +71,6 @@ public class AsyncGustoEmbedded { private final AsyncEmployeeEmployments employeeEmployments; - private final AsyncReports reports; - private final AsyncEvents events; private final AsyncExternalPayrolls externalPayrolls; @@ -97,8 +97,14 @@ public class AsyncGustoEmbedded { private final AsyncLocations locations; + private final AsyncMemberPortalInvitations memberPortalInvitations; + private final AsyncPaySchedules paySchedules; + private final AsyncPayrollCancellations payrollCancellations; + + private final AsyncPayrollDigests payrollDigests; + private final AsyncTimeOffPolicies timeOffPolicies; private final AsyncPeopleBatches peopleBatches; @@ -107,10 +113,14 @@ public class AsyncGustoEmbedded { private final AsyncReimbursements reimbursements; + private final AsyncReverseWireTransactions reverseWireTransactions; + private final AsyncSalaryEstimates salaryEstimates; private final AsyncSignatories signatories; + private final AsyncTaxPayments taxPayments; + private final AsyncTimeOffRequests timeOffRequests; private final AsyncIntrospection introspection; @@ -119,8 +129,6 @@ public class AsyncGustoEmbedded { private final AsyncWireInRequests wireInRequests; - private final AsyncPayrollDigests payrollDigests; - public AsyncAchTransactions achTransactions() { return achTransactions; } @@ -133,6 +141,10 @@ public AsyncCompanyBenefits companyBenefits() { return companyBenefits; } + public AsyncReports reports() { + return reports; + } + public AsyncCompanyAttachments companyAttachments() { return companyAttachments; } @@ -237,10 +249,6 @@ public AsyncEmployeeEmployments employeeEmployments() { return employeeEmployments; } - public AsyncReports reports() { - return reports; - } - public AsyncEvents events() { return events; } @@ -293,10 +301,22 @@ public AsyncLocations locations() { return locations; } + public AsyncMemberPortalInvitations memberPortalInvitations() { + return memberPortalInvitations; + } + public AsyncPaySchedules paySchedules() { return paySchedules; } + public AsyncPayrollCancellations payrollCancellations() { + return payrollCancellations; + } + + public AsyncPayrollDigests payrollDigests() { + return payrollDigests; + } + public AsyncTimeOffPolicies timeOffPolicies() { return timeOffPolicies; } @@ -313,6 +333,10 @@ public AsyncReimbursements reimbursements() { return reimbursements; } + public AsyncReverseWireTransactions reverseWireTransactions() { + return reverseWireTransactions; + } + public AsyncSalaryEstimates salaryEstimates() { return salaryEstimates; } @@ -321,6 +345,10 @@ public AsyncSignatories signatories() { return signatories; } + public AsyncTaxPayments taxPayments() { + return taxPayments; + } + public AsyncTimeOffRequests timeOffRequests() { return timeOffRequests; } @@ -337,10 +365,6 @@ public AsyncWireInRequests wireInRequests() { return wireInRequests; } - public AsyncPayrollDigests payrollDigests() { - return payrollDigests; - } - private SDKConfiguration sdkConfiguration; private final GustoEmbedded syncSDK; @@ -350,6 +374,7 @@ public AsyncPayrollDigests payrollDigests() { this.achTransactions = new AsyncAchTransactions(syncSDK.achTransactions(), sdkConfiguration); this.companies = new AsyncCompanies(syncSDK.companies(), sdkConfiguration); this.companyBenefits = new AsyncCompanyBenefits(syncSDK.companyBenefits(), sdkConfiguration); + this.reports = new AsyncReports(syncSDK.reports(), sdkConfiguration); this.companyAttachments = new AsyncCompanyAttachments(syncSDK.companyAttachments(), sdkConfiguration); this.companyAttachment = new AsyncCompanyAttachment(syncSDK.companyAttachment(), sdkConfiguration); this.bankAccounts = new AsyncBankAccounts(syncSDK.bankAccounts(), sdkConfiguration); @@ -376,7 +401,6 @@ public AsyncPayrollDigests payrollDigests() { this.employeeTaxSetup = new AsyncEmployeeTaxSetup(syncSDK.employeeTaxSetup(), sdkConfiguration); this.employeeForms = new AsyncEmployeeForms(syncSDK.employeeForms(), sdkConfiguration); this.employeeEmployments = new AsyncEmployeeEmployments(syncSDK.employeeEmployments(), sdkConfiguration); - this.reports = new AsyncReports(syncSDK.reports(), sdkConfiguration); this.events = new AsyncEvents(syncSDK.events(), sdkConfiguration); this.externalPayrolls = new AsyncExternalPayrolls(syncSDK.externalPayrolls(), sdkConfiguration); this.flows = new AsyncFlows(syncSDK.flows(), sdkConfiguration); @@ -390,18 +414,22 @@ public AsyncPayrollDigests payrollDigests() { this.informationRequests = new AsyncInformationRequests(syncSDK.informationRequests(), sdkConfiguration); this.invoices = new AsyncInvoices(syncSDK.invoices(), sdkConfiguration); this.locations = new AsyncLocations(syncSDK.locations(), sdkConfiguration); + this.memberPortalInvitations = new AsyncMemberPortalInvitations(syncSDK.memberPortalInvitations(), sdkConfiguration); this.paySchedules = new AsyncPaySchedules(syncSDK.paySchedules(), sdkConfiguration); + this.payrollCancellations = new AsyncPayrollCancellations(syncSDK.payrollCancellations(), sdkConfiguration); + this.payrollDigests = new AsyncPayrollDigests(syncSDK.payrollDigests(), sdkConfiguration); this.timeOffPolicies = new AsyncTimeOffPolicies(syncSDK.timeOffPolicies(), sdkConfiguration); this.peopleBatches = new AsyncPeopleBatches(syncSDK.peopleBatches(), sdkConfiguration); this.recoveryCases = new AsyncRecoveryCases(syncSDK.recoveryCases(), sdkConfiguration); this.reimbursements = new AsyncReimbursements(syncSDK.reimbursements(), sdkConfiguration); + this.reverseWireTransactions = new AsyncReverseWireTransactions(syncSDK.reverseWireTransactions(), sdkConfiguration); this.salaryEstimates = new AsyncSalaryEstimates(syncSDK.salaryEstimates(), sdkConfiguration); this.signatories = new AsyncSignatories(syncSDK.signatories(), sdkConfiguration); + this.taxPayments = new AsyncTaxPayments(syncSDK.taxPayments(), sdkConfiguration); this.timeOffRequests = new AsyncTimeOffRequests(syncSDK.timeOffRequests(), sdkConfiguration); this.introspection = new AsyncIntrospection(syncSDK.introspection(), sdkConfiguration); this.webhooks = new AsyncWebhooks(syncSDK.webhooks(), sdkConfiguration); this.wireInRequests = new AsyncWireInRequests(syncSDK.wireInRequests(), sdkConfiguration); - this.payrollDigests = new AsyncPayrollDigests(syncSDK.payrollDigests(), sdkConfiguration); } /** diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncIndustrySelection.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncIndustrySelection.java index 82b3b82db..8bf50a01f 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncIndustrySelection.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncIndustrySelection.java @@ -72,7 +72,7 @@ public GetV1CompanyIndustryRequestBuilder get() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture get(String companyId) { - return get(companyId, Optional.empty()); + return get(Optional.empty(), companyId); } /** @@ -85,16 +85,16 @@ public CompletableFuture get(String companyId) { * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company * @return {@code CompletableFuture} - The async response */ - public CompletableFuture get(String companyId, Optional xGustoAPIVersion) { + public CompletableFuture get(Optional xGustoAPIVersion, String companyId) { GetV1CompanyIndustryRequest request = GetV1CompanyIndustryRequest .builder() - .companyId(companyId) .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) .build(); AsyncRequestOperation operation = new GetV1CompanyIndustry.Async(sdkConfiguration, _headers); @@ -150,7 +150,7 @@ public PutV1CompanyIndustryRequestBuilder update() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture update(String companyId, CompanyIndustrySelectionRequiredBody companyIndustrySelectionRequiredBody) { - return update(companyId, Optional.empty(), companyIndustrySelectionRequiredBody); + return update(Optional.empty(), companyId, companyIndustrySelectionRequiredBody); } /** @@ -171,19 +171,19 @@ public CompletableFuture update(String companyId, * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company * @param companyIndustrySelectionRequiredBody * @return {@code CompletableFuture} - The async response */ public CompletableFuture update( - String companyId, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String companyId, CompanyIndustrySelectionRequiredBody companyIndustrySelectionRequiredBody) { PutV1CompanyIndustryRequest request = PutV1CompanyIndustryRequest .builder() - .companyId(companyId) .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) .companyIndustrySelectionRequiredBody(companyIndustrySelectionRequiredBody) .build(); AsyncRequestOperation operation diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncJobsAndCompensations.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncJobsAndCompensations.java index 1c4f9885b..236361b09 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncJobsAndCompensations.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncJobsAndCompensations.java @@ -490,7 +490,7 @@ public GetV1JobsJobIdRequestBuilder getJob() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture getJob(String jobId) { - return getJob(jobId, Optional.empty(), Optional.empty()); + return getJob(Optional.empty(), jobId, Optional.empty()); } /** @@ -509,22 +509,22 @@ public CompletableFuture getJob(String jobId) { * *

    If set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param jobId The UUID of the job * @param include Available options: * - all_compensations: Include all effective dated compensations for each job instead of only the current compensation * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @return {@code CompletableFuture} - The async response */ public CompletableFuture getJob( - String jobId, Optional include, - Optional xGustoAPIVersion) { + Optional xGustoAPIVersion, String jobId, + Optional include) { GetV1JobsJobIdRequest request = GetV1JobsJobIdRequest .builder() + .xGustoAPIVersion(xGustoAPIVersion) .jobId(jobId) .include(include) - .xGustoAPIVersion(xGustoAPIVersion) .build(); AsyncRequestOperation operation = new GetV1JobsJobId.Async(sdkConfiguration, _headers); @@ -562,7 +562,7 @@ public PutV1JobsJobIdRequestBuilder update() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture update(String jobId, JobsUpdateRequestBody jobsUpdateRequestBody) { - return update(jobId, Optional.empty(), jobsUpdateRequestBody); + return update(Optional.empty(), jobId, jobsUpdateRequestBody); } /** @@ -574,19 +574,19 @@ public CompletableFuture update(String jobId, JobsUpdate * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param jobId The UUID of the job * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param jobId The UUID of the job * @param jobsUpdateRequestBody Request body for updating a job. * @return {@code CompletableFuture} - The async response */ public CompletableFuture update( - String jobId, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String jobId, JobsUpdateRequestBody jobsUpdateRequestBody) { PutV1JobsJobIdRequest request = PutV1JobsJobIdRequest .builder() - .jobId(jobId) .xGustoAPIVersion(xGustoAPIVersion) + .jobId(jobId) .jobsUpdateRequestBody(jobsUpdateRequestBody) .build(); AsyncRequestOperation operation @@ -624,7 +624,7 @@ public DeleteV1JobsJobIdRequestBuilder delete() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture delete(String jobId) { - return delete(jobId, Optional.empty()); + return delete(Optional.empty(), jobId); } /** @@ -636,16 +636,16 @@ public CompletableFuture delete(String jobId) { * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param jobId The UUID of the job * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param jobId The UUID of the job * @return {@code CompletableFuture} - The async response */ - public CompletableFuture delete(String jobId, Optional xGustoAPIVersion) { + public CompletableFuture delete(Optional xGustoAPIVersion, String jobId) { DeleteV1JobsJobIdRequest request = DeleteV1JobsJobIdRequest .builder() - .jobId(jobId) .xGustoAPIVersion(xGustoAPIVersion) + .jobId(jobId) .build(); AsyncRequestOperation operation = new DeleteV1JobsJobId.Async(sdkConfiguration, _headers); @@ -730,7 +730,7 @@ public PostV1EmployeesEmployeeIdJobsRequestBuilder createJob() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture createJob(String employeeId, JobsCreateRequestBody jobsCreateRequestBody) { - return createJob(employeeId, Optional.empty(), jobsCreateRequestBody); + return createJob(Optional.empty(), employeeId, jobsCreateRequestBody); } /** @@ -742,19 +742,19 @@ public CompletableFuture createJob(String * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param employeeId The UUID of the employee * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param employeeId The UUID of the employee * @param jobsCreateRequestBody Request body for creating a job. * @return {@code CompletableFuture} - The async response */ public CompletableFuture createJob( - String employeeId, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String employeeId, JobsCreateRequestBody jobsCreateRequestBody) { PostV1EmployeesEmployeeIdJobsRequest request = PostV1EmployeesEmployeeIdJobsRequest .builder() - .employeeId(employeeId) .xGustoAPIVersion(xGustoAPIVersion) + .employeeId(employeeId) .jobsCreateRequestBody(jobsCreateRequestBody) .build(); AsyncRequestOperation operation diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncLocations.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncLocations.java index 5e96a0dd4..46f71d52f 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncLocations.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncLocations.java @@ -87,7 +87,7 @@ public GetV1LocationsLocationUuidMinimumWagesRequestBuilder getMinimumWages() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture getMinimumWages(String locationUuid) { - return getMinimumWages(locationUuid, Optional.empty(), Optional.empty()); + return getMinimumWages(Optional.empty(), locationUuid, Optional.empty()); } /** @@ -99,19 +99,19 @@ public CompletableFuture getMini * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param locationUuid The UUID of the location * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param locationUuid The UUID of the location * @param effectiveDate * @return {@code CompletableFuture} - The async response */ public CompletableFuture getMinimumWages( - String locationUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String locationUuid, Optional effectiveDate) { GetV1LocationsLocationUuidMinimumWagesRequest request = GetV1LocationsLocationUuidMinimumWagesRequest .builder() - .locationUuid(locationUuid) .xGustoAPIVersion(xGustoAPIVersion) + .locationUuid(locationUuid) .effectiveDate(effectiveDate) .build(); AsyncRequestOperation operation diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncMemberPortalInvitations.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncMemberPortalInvitations.java new file mode 100644 index 000000000..cdb68db3b --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncMemberPortalInvitations.java @@ -0,0 +1,453 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15; + +import static com.gusto.embedded_api_v_2026_06_15.operations.Operations.AsyncRequestOperation; + +import com.gusto.embedded_api_v_2026_06_15.models.operations.DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2026_06_15.models.operations.DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest; +import com.gusto.embedded_api_v_2026_06_15.models.operations.DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2026_06_15.models.operations.DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1ContractorsContractorUuidMemberPortalInvitationsRequest; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest; +import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1ContractorsContractorUuidMemberPortalInvitationsRequest; +import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest; +import com.gusto.embedded_api_v_2026_06_15.models.operations.async.DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder; +import com.gusto.embedded_api_v_2026_06_15.models.operations.async.DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse; +import com.gusto.embedded_api_v_2026_06_15.models.operations.async.DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder; +import com.gusto.embedded_api_v_2026_06_15.models.operations.async.DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse; +import com.gusto.embedded_api_v_2026_06_15.models.operations.async.GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder; +import com.gusto.embedded_api_v_2026_06_15.models.operations.async.GetV1ContractorsContractorUuidMemberPortalInvitationsResponse; +import com.gusto.embedded_api_v_2026_06_15.models.operations.async.GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder; +import com.gusto.embedded_api_v_2026_06_15.models.operations.async.GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse; +import com.gusto.embedded_api_v_2026_06_15.models.operations.async.PostV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder; +import com.gusto.embedded_api_v_2026_06_15.models.operations.async.PostV1ContractorsContractorUuidMemberPortalInvitationsResponse; +import com.gusto.embedded_api_v_2026_06_15.models.operations.async.PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder; +import com.gusto.embedded_api_v_2026_06_15.models.operations.async.PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse; +import com.gusto.embedded_api_v_2026_06_15.operations.DeleteV1ContractorsContractorUuidMemberPortalInvitations; +import com.gusto.embedded_api_v_2026_06_15.operations.DeleteV1EmployeesEmployeeIdMemberPortalInvitations; +import com.gusto.embedded_api_v_2026_06_15.operations.GetV1ContractorsContractorUuidMemberPortalInvitations; +import com.gusto.embedded_api_v_2026_06_15.operations.GetV1EmployeesEmployeeIdMemberPortalInvitations; +import com.gusto.embedded_api_v_2026_06_15.operations.PostV1ContractorsContractorUuidMemberPortalInvitations; +import com.gusto.embedded_api_v_2026_06_15.operations.PostV1EmployeesEmployeeIdMemberPortalInvitations; +import com.gusto.embedded_api_v_2026_06_15.utils.Headers; +import java.lang.String; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; + + +public class AsyncMemberPortalInvitations { + private static final Headers _headers = Headers.EMPTY; + private final SDKConfiguration sdkConfiguration; + private final MemberPortalInvitations syncSDK; + + AsyncMemberPortalInvitations(MemberPortalInvitations syncSDK, SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + this.syncSDK = syncSDK; + } + + /** + * Switches to the sync SDK. + * + * @return The sync SDK + */ + public MemberPortalInvitations sync() { + return syncSDK; + } + + + /** + * Create an employee member portal invitation + * + *

    Generates a member portal invitation for the specified employee. If the employee already has an + * invitation and its token has expired, calling this endpoint regenerates the invitation and overrides + * the prior token. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder postV1EmployeesEmployeeIdMemberPortalInvitations() { + return new PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder(sdkConfiguration); + } + + /** + * Create an employee member portal invitation + * + *

    Generates a member portal invitation for the specified employee. If the employee already has an + * invitation and its token has expired, calling this endpoint regenerates the invitation and overrides + * the prior token. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param employeeId The UUID of the employee + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture postV1EmployeesEmployeeIdMemberPortalInvitations(String employeeId) { + return postV1EmployeesEmployeeIdMemberPortalInvitations(Optional.empty(), employeeId); + } + + /** + * Create an employee member portal invitation + * + *

    Generates a member portal invitation for the specified employee. If the employee already has an + * invitation and its token has expired, calling this endpoint regenerates the invitation and overrides + * the prior token. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param employeeId The UUID of the employee + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture postV1EmployeesEmployeeIdMemberPortalInvitations(Optional xGustoAPIVersion, String employeeId) { + PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest request = + PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .employeeId(employeeId) + .build(); + AsyncRequestOperation operation + = new PostV1EmployeesEmployeeIdMemberPortalInvitations.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Get an employee member portal invitation + * + *

    Returns the current status of an employee's member portal invitation (`pending`, `sent`, `verified`, + * `complete`, or `cancelled`) along with an `expired` flag indicating whether the invitation can still + * be acted on by the employee. + * + *

    scope: `member_portal_invitation:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder getV1EmployeesEmployeeIdMemberPortalInvitations() { + return new GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder(sdkConfiguration); + } + + /** + * Get an employee member portal invitation + * + *

    Returns the current status of an employee's member portal invitation (`pending`, `sent`, `verified`, + * `complete`, or `cancelled`) along with an `expired` flag indicating whether the invitation can still + * be acted on by the employee. + * + *

    scope: `member_portal_invitation:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param employeeId The UUID of the employee + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getV1EmployeesEmployeeIdMemberPortalInvitations(String employeeId) { + return getV1EmployeesEmployeeIdMemberPortalInvitations(Optional.empty(), employeeId); + } + + /** + * Get an employee member portal invitation + * + *

    Returns the current status of an employee's member portal invitation (`pending`, `sent`, `verified`, + * `complete`, or `cancelled`) along with an `expired` flag indicating whether the invitation can still + * be acted on by the employee. + * + *

    scope: `member_portal_invitation:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param employeeId The UUID of the employee + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getV1EmployeesEmployeeIdMemberPortalInvitations(Optional xGustoAPIVersion, String employeeId) { + GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest request = + GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .employeeId(employeeId) + .build(); + AsyncRequestOperation operation + = new GetV1EmployeesEmployeeIdMemberPortalInvitations.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Cancel an employee member portal invitation + * + *

    Cancels the member portal invitation for the specified employee. + * + *

    Note: this endpoint does not cancel the employee's self-onboarding flow. If you want the company + * admin to take full control of onboarding the employee, cancel the self-onboarding request instead. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder deleteV1EmployeesEmployeeIdMemberPortalInvitations() { + return new DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder(sdkConfiguration); + } + + /** + * Cancel an employee member portal invitation + * + *

    Cancels the member portal invitation for the specified employee. + * + *

    Note: this endpoint does not cancel the employee's self-onboarding flow. If you want the company + * admin to take full control of onboarding the employee, cancel the self-onboarding request instead. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param employeeId The UUID of the employee + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture deleteV1EmployeesEmployeeIdMemberPortalInvitations(String employeeId) { + return deleteV1EmployeesEmployeeIdMemberPortalInvitations(Optional.empty(), employeeId); + } + + /** + * Cancel an employee member portal invitation + * + *

    Cancels the member portal invitation for the specified employee. + * + *

    Note: this endpoint does not cancel the employee's self-onboarding flow. If you want the company + * admin to take full control of onboarding the employee, cancel the self-onboarding request instead. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param employeeId The UUID of the employee + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture deleteV1EmployeesEmployeeIdMemberPortalInvitations(Optional xGustoAPIVersion, String employeeId) { + DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest request = + DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .employeeId(employeeId) + .build(); + AsyncRequestOperation operation + = new DeleteV1EmployeesEmployeeIdMemberPortalInvitations.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Create a contractor member portal invitation + * + *

    Generates a member portal invitation for the specified contractor. If the contractor already has an + * invitation and its token has expired, calling this endpoint regenerates the invitation and overrides + * the prior token. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public PostV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder postV1ContractorsContractorUuidMemberPortalInvitations() { + return new PostV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder(sdkConfiguration); + } + + /** + * Create a contractor member portal invitation + * + *

    Generates a member portal invitation for the specified contractor. If the contractor already has an + * invitation and its token has expired, calling this endpoint regenerates the invitation and overrides + * the prior token. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param contractorUuid The UUID of the contractor + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture postV1ContractorsContractorUuidMemberPortalInvitations(String contractorUuid) { + return postV1ContractorsContractorUuidMemberPortalInvitations(Optional.empty(), contractorUuid); + } + + /** + * Create a contractor member portal invitation + * + *

    Generates a member portal invitation for the specified contractor. If the contractor already has an + * invitation and its token has expired, calling this endpoint regenerates the invitation and overrides + * the prior token. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param contractorUuid The UUID of the contractor + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture postV1ContractorsContractorUuidMemberPortalInvitations(Optional xGustoAPIVersion, String contractorUuid) { + PostV1ContractorsContractorUuidMemberPortalInvitationsRequest request = + PostV1ContractorsContractorUuidMemberPortalInvitationsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .contractorUuid(contractorUuid) + .build(); + AsyncRequestOperation operation + = new PostV1ContractorsContractorUuidMemberPortalInvitations.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Get a contractor member portal invitation + * + *

    Returns the current status of a contractor's member portal invitation (`pending`, `sent`, + * `verified`, `complete`, or `cancelled`) along with an `expired` flag indicating whether the + * invitation can still be acted on by the contractor. + * + *

    scope: `member_portal_invitation:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder getV1ContractorsContractorUuidMemberPortalInvitations() { + return new GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder(sdkConfiguration); + } + + /** + * Get a contractor member portal invitation + * + *

    Returns the current status of a contractor's member portal invitation (`pending`, `sent`, + * `verified`, `complete`, or `cancelled`) along with an `expired` flag indicating whether the + * invitation can still be acted on by the contractor. + * + *

    scope: `member_portal_invitation:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param contractorUuid The UUID of the contractor + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getV1ContractorsContractorUuidMemberPortalInvitations(String contractorUuid) { + return getV1ContractorsContractorUuidMemberPortalInvitations(Optional.empty(), contractorUuid); + } + + /** + * Get a contractor member portal invitation + * + *

    Returns the current status of a contractor's member portal invitation (`pending`, `sent`, + * `verified`, `complete`, or `cancelled`) along with an `expired` flag indicating whether the + * invitation can still be acted on by the contractor. + * + *

    scope: `member_portal_invitation:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param contractorUuid The UUID of the contractor + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getV1ContractorsContractorUuidMemberPortalInvitations(Optional xGustoAPIVersion, String contractorUuid) { + GetV1ContractorsContractorUuidMemberPortalInvitationsRequest request = + GetV1ContractorsContractorUuidMemberPortalInvitationsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .contractorUuid(contractorUuid) + .build(); + AsyncRequestOperation operation + = new GetV1ContractorsContractorUuidMemberPortalInvitations.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Cancel a contractor member portal invitation + * + *

    Cancels the member portal invitation for the specified contractor. + * + *

    Note: this endpoint does not cancel the contractor's self-onboarding flow. If you want the company + * admin to take full control of onboarding the contractor, cancel the self-onboarding request instead. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder deleteV1ContractorsContractorUuidMemberPortalInvitations() { + return new DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder(sdkConfiguration); + } + + /** + * Cancel a contractor member portal invitation + * + *

    Cancels the member portal invitation for the specified contractor. + * + *

    Note: this endpoint does not cancel the contractor's self-onboarding flow. If you want the company + * admin to take full control of onboarding the contractor, cancel the self-onboarding request instead. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param contractorUuid The UUID of the contractor + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture deleteV1ContractorsContractorUuidMemberPortalInvitations(String contractorUuid) { + return deleteV1ContractorsContractorUuidMemberPortalInvitations(Optional.empty(), contractorUuid); + } + + /** + * Cancel a contractor member portal invitation + * + *

    Cancels the member portal invitation for the specified contractor. + * + *

    Note: this endpoint does not cancel the contractor's self-onboarding flow. If you want the company + * admin to take full control of onboarding the contractor, cancel the self-onboarding request instead. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param contractorUuid The UUID of the contractor + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture deleteV1ContractorsContractorUuidMemberPortalInvitations(Optional xGustoAPIVersion, String contractorUuid) { + DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest request = + DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .contractorUuid(contractorUuid) + .build(); + AsyncRequestOperation operation + = new DeleteV1ContractorsContractorUuidMemberPortalInvitations.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncNotifications.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncNotifications.java index dbed62cd4..d220f6d9b 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncNotifications.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncNotifications.java @@ -121,7 +121,7 @@ public GetNotificationsNotificationUuidRequestBuilder getDetails() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture getDetails(String notificationUuid) { - return getDetails(notificationUuid, Optional.empty()); + return getDetails(Optional.empty(), notificationUuid); } /** @@ -142,16 +142,16 @@ public CompletableFuture getDetails(St * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param notificationUuid The notification entity_uuid * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param notificationUuid The notification entity_uuid * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getDetails(String notificationUuid, Optional xGustoAPIVersion) { + public CompletableFuture getDetails(Optional xGustoAPIVersion, String notificationUuid) { GetNotificationsNotificationUuidRequest request = GetNotificationsNotificationUuidRequest .builder() - .notificationUuid(notificationUuid) .xGustoAPIVersion(xGustoAPIVersion) + .notificationUuid(notificationUuid) .build(); AsyncRequestOperation operation = new GetNotificationsNotificationUuid.Async(sdkConfiguration, _headers); diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncPayrollCancellations.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncPayrollCancellations.java new file mode 100644 index 000000000..fe424f159 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncPayrollCancellations.java @@ -0,0 +1,260 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15; + +import static com.gusto.embedded_api_v_2026_06_15.operations.Operations.AsyncRequestOperation; + +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1PayrollBatchesPayrollBatchUuidRequest; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1PayrollBatchesPayrollBatchUuidSecurity; +import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1PayrollBatchesHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1PayrollBatchesRequest; +import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1PayrollBatchesRequestBody; +import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1PayrollBatchesSecurity; +import com.gusto.embedded_api_v_2026_06_15.models.operations.async.GetV1PayrollBatchesPayrollBatchUuidRequestBuilder; +import com.gusto.embedded_api_v_2026_06_15.models.operations.async.GetV1PayrollBatchesPayrollBatchUuidResponse; +import com.gusto.embedded_api_v_2026_06_15.models.operations.async.PostV1PayrollBatchesRequestBuilder; +import com.gusto.embedded_api_v_2026_06_15.models.operations.async.PostV1PayrollBatchesResponse; +import com.gusto.embedded_api_v_2026_06_15.operations.GetV1PayrollBatchesPayrollBatchUuid; +import com.gusto.embedded_api_v_2026_06_15.operations.PostV1PayrollBatches; +import com.gusto.embedded_api_v_2026_06_15.utils.Headers; +import java.lang.String; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; + + +public class AsyncPayrollCancellations { + private static final Headers _headers = Headers.EMPTY; + private final SDKConfiguration sdkConfiguration; + private final PayrollCancellations syncSDK; + + AsyncPayrollCancellations(PayrollCancellations syncSDK, SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + this.syncSDK = syncSDK; + } + + /** + * Switches to the sync SDK. + * + * @return The sync SDK + */ + public PayrollCancellations sync() { + return syncSDK; + } + + + /** + * Create a payroll cancellation batch + * + *

    Cancels up to 100 payrolls across one or more companies the partner is mapped to, asynchronously. + * + *

    The batch is processed asynchronously. Use the returned batch UUID to poll `GET + * /v1/payroll_batches/{payroll_batch_uuid}` for status and per-payroll results. + * + *

    Each item carries the payroll `uuid` and the `company_uuid` that owns it. A payroll whose company is + * not mapped to the partner — or that doesn't exist — is recorded as a `not_found` exclusion rather + * than a hard error, so every requested UUID lands in either `results` or `exclusions`. + * + *

    Idempotency is scoped per `(partner, idempotency_key)`. A duplicate POST with the same + * `idempotency_key` returns a 409 Conflict referencing the existing batch UUID — no duplicate + * processing occurs. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `payroll_batches:write` + * + * @return The async call builder + */ + public PostV1PayrollBatchesRequestBuilder postV1PayrollBatches() { + return new PostV1PayrollBatchesRequestBuilder(sdkConfiguration); + } + + /** + * Create a payroll cancellation batch + * + *

    Cancels up to 100 payrolls across one or more companies the partner is mapped to, asynchronously. + * + *

    The batch is processed asynchronously. Use the returned batch UUID to poll `GET + * /v1/payroll_batches/{payroll_batch_uuid}` for status and per-payroll results. + * + *

    Each item carries the payroll `uuid` and the `company_uuid` that owns it. A payroll whose company is + * not mapped to the partner — or that doesn't exist — is recorded as a `not_found` exclusion rather + * than a hard error, so every requested UUID lands in either `results` or `exclusions`. + * + *

    Idempotency is scoped per `(partner, idempotency_key)`. A duplicate POST with the same + * `idempotency_key` returns a 409 Conflict referencing the existing batch UUID — no duplicate + * processing occurs. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `payroll_batches:write` + * + * @param security The security details to use for authentication. + * @param requestBody + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture postV1PayrollBatches(PostV1PayrollBatchesSecurity security, PostV1PayrollBatchesRequestBody requestBody) { + return postV1PayrollBatches(security, Optional.empty(), requestBody); + } + + /** + * Create a payroll cancellation batch + * + *

    Cancels up to 100 payrolls across one or more companies the partner is mapped to, asynchronously. + * + *

    The batch is processed asynchronously. Use the returned batch UUID to poll `GET + * /v1/payroll_batches/{payroll_batch_uuid}` for status and per-payroll results. + * + *

    Each item carries the payroll `uuid` and the `company_uuid` that owns it. A payroll whose company is + * not mapped to the partner — or that doesn't exist — is recorded as a `not_found` exclusion rather + * than a hard error, so every requested UUID lands in either `results` or `exclusions`. + * + *

    Idempotency is scoped per `(partner, idempotency_key)`. A duplicate POST with the same + * `idempotency_key` returns a 409 Conflict referencing the existing batch UUID — no duplicate + * processing occurs. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `payroll_batches:write` + * + * @param security The security details to use for authentication. + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param requestBody + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture postV1PayrollBatches( + PostV1PayrollBatchesSecurity security, Optional xGustoAPIVersion, + PostV1PayrollBatchesRequestBody requestBody) { + PostV1PayrollBatchesRequest request = + PostV1PayrollBatchesRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .requestBody(requestBody) + .build(); + AsyncRequestOperation operation + = new PostV1PayrollBatches.Async(sdkConfiguration, security, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Get a payroll cancellation batch + * + *

    Returns the status and per-payroll results of a payroll cancellation batch. + * + *

    Poll this endpoint until the batch `status` reaches a terminal value (`completed` or `failed`). Once + * terminal, the response includes the `results` array (one entry per authorized payroll, each with its + * own per-payroll `status` — `success` or `failed`) and the `exclusions` array (one entry per payroll + * that could not be processed). A cancel is atomic, so a per-payroll result is only ever `success` or + * `failed` — never `partial_success`. + * + *

    Note that the top-level batch `status` (`pending` / `processing` / `completed` / `failed`) is the + * request lifecycle, distinct from the per-payroll `status` inside `results[]`. A `completed` batch + * does not imply every payroll was cancelled — inspect the array for per-payroll outcomes. + * + *

    Results are stored in Redis with a limited TTL after completion. If the partner polls after results + * have expired, this endpoint returns 410 Gone — partners should re-submit a new batch. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `payroll_batches:read` + * + * @return The async call builder + */ + public GetV1PayrollBatchesPayrollBatchUuidRequestBuilder getV1PayrollBatchesPayrollBatchUuid() { + return new GetV1PayrollBatchesPayrollBatchUuidRequestBuilder(sdkConfiguration); + } + + /** + * Get a payroll cancellation batch + * + *

    Returns the status and per-payroll results of a payroll cancellation batch. + * + *

    Poll this endpoint until the batch `status` reaches a terminal value (`completed` or `failed`). Once + * terminal, the response includes the `results` array (one entry per authorized payroll, each with its + * own per-payroll `status` — `success` or `failed`) and the `exclusions` array (one entry per payroll + * that could not be processed). A cancel is atomic, so a per-payroll result is only ever `success` or + * `failed` — never `partial_success`. + * + *

    Note that the top-level batch `status` (`pending` / `processing` / `completed` / `failed`) is the + * request lifecycle, distinct from the per-payroll `status` inside `results[]`. A `completed` batch + * does not imply every payroll was cancelled — inspect the array for per-payroll outcomes. + * + *

    Results are stored in Redis with a limited TTL after completion. If the partner polls after results + * have expired, this endpoint returns 410 Gone — partners should re-submit a new batch. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `payroll_batches:read` + * + * @param security The security details to use for authentication. + * @param payrollBatchUuid The UUID of the payroll cancellation batch returned by `POST /v1/payroll_batches`. + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getV1PayrollBatchesPayrollBatchUuid(GetV1PayrollBatchesPayrollBatchUuidSecurity security, String payrollBatchUuid) { + return getV1PayrollBatchesPayrollBatchUuid(security, Optional.empty(), payrollBatchUuid); + } + + /** + * Get a payroll cancellation batch + * + *

    Returns the status and per-payroll results of a payroll cancellation batch. + * + *

    Poll this endpoint until the batch `status` reaches a terminal value (`completed` or `failed`). Once + * terminal, the response includes the `results` array (one entry per authorized payroll, each with its + * own per-payroll `status` — `success` or `failed`) and the `exclusions` array (one entry per payroll + * that could not be processed). A cancel is atomic, so a per-payroll result is only ever `success` or + * `failed` — never `partial_success`. + * + *

    Note that the top-level batch `status` (`pending` / `processing` / `completed` / `failed`) is the + * request lifecycle, distinct from the per-payroll `status` inside `results[]`. A `completed` batch + * does not imply every payroll was cancelled — inspect the array for per-payroll outcomes. + * + *

    Results are stored in Redis with a limited TTL after completion. If the partner polls after results + * have expired, this endpoint returns 410 Gone — partners should re-submit a new batch. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `payroll_batches:read` + * + * @param security The security details to use for authentication. + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param payrollBatchUuid The UUID of the payroll cancellation batch returned by `POST /v1/payroll_batches`. + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getV1PayrollBatchesPayrollBatchUuid( + GetV1PayrollBatchesPayrollBatchUuidSecurity security, Optional xGustoAPIVersion, + String payrollBatchUuid) { + GetV1PayrollBatchesPayrollBatchUuidRequest request = + GetV1PayrollBatchesPayrollBatchUuidRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .payrollBatchUuid(payrollBatchUuid) + .build(); + AsyncRequestOperation operation + = new GetV1PayrollBatchesPayrollBatchUuid.Async(sdkConfiguration, security, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncPayrollDigests.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncPayrollDigests.java index 9014f8f1b..d47f17a2d 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncPayrollDigests.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncPayrollDigests.java @@ -200,7 +200,7 @@ public GetV1PayrollDigestsPayrollDigestUuidRequestBuilder getV1PayrollDigestsPay * @return {@code CompletableFuture} - The async response */ public CompletableFuture getV1PayrollDigestsPayrollDigestUuid(GetV1PayrollDigestsPayrollDigestUuidSecurity security, String payrollDigestUuid) { - return getV1PayrollDigestsPayrollDigestUuid(security, payrollDigestUuid, Optional.empty()); + return getV1PayrollDigestsPayrollDigestUuid(security, Optional.empty(), payrollDigestUuid); } /** @@ -229,18 +229,18 @@ public CompletableFuture getV1Payr *

    scope: `payroll_digests:read` * * @param security The security details to use for authentication. - * @param payrollDigestUuid The UUID of the payroll digest batch returned by `POST /v1/payroll_digests`. * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param payrollDigestUuid The UUID of the payroll digest batch returned by `POST /v1/payroll_digests`. * @return {@code CompletableFuture} - The async response */ public CompletableFuture getV1PayrollDigestsPayrollDigestUuid( - GetV1PayrollDigestsPayrollDigestUuidSecurity security, String payrollDigestUuid, - Optional xGustoAPIVersion) { + GetV1PayrollDigestsPayrollDigestUuidSecurity security, Optional xGustoAPIVersion, + String payrollDigestUuid) { GetV1PayrollDigestsPayrollDigestUuidRequest request = GetV1PayrollDigestsPayrollDigestUuidRequest .builder() - .payrollDigestUuid(payrollDigestUuid) .xGustoAPIVersion(xGustoAPIVersion) + .payrollDigestUuid(payrollDigestUuid) .build(); AsyncRequestOperation operation = new GetV1PayrollDigestsPayrollDigestUuid.Async(sdkConfiguration, security, _headers); diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncPayrolls.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncPayrolls.java index d4814cc74..65b347c83 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncPayrolls.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncPayrolls.java @@ -8,9 +8,9 @@ import com.gusto.embedded_api_v_2026_06_15.models.components.PayrollGrossUpRequest; import com.gusto.embedded_api_v_2026_06_15.models.components.PayrollUpdate; import com.gusto.embedded_api_v_2026_06_15.models.components.PrintablePayrollChecksBody; -import com.gusto.embedded_api_v_2026_06_15.models.components.VersionHeader; import com.gusto.embedded_api_v_2026_06_15.models.operations.DeleteV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2026_06_15.models.operations.DeleteV1CompaniesCompanyIdPayrollsRequest; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1CompaniesCompanyIdPayrollReversalsRequest; import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest; @@ -371,7 +371,7 @@ public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder getV1 * @return {@code CompletableFuture} - The async response */ public CompletableFuture getV1CompaniesCompanyIdPayrollsIdPartnerDisbursements(String companyId, String id) { - return getV1CompaniesCompanyIdPayrollsIdPartnerDisbursements(companyId, id, Optional.empty()); + return getV1CompaniesCompanyIdPayrollsIdPartnerDisbursements(Optional.empty(), companyId, id); } /** @@ -383,20 +383,20 @@ public CompletableFutureIf set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyId The UUID of the company * @param id The UUID of the payroll - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @return {@code CompletableFuture} - The async response */ public CompletableFuture getV1CompaniesCompanyIdPayrollsIdPartnerDisbursements( - String companyId, String id, - Optional xGustoAPIVersion) { + Optional xGustoAPIVersion, String companyId, + String id) { GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest request = GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest .builder() + .xGustoAPIVersion(xGustoAPIVersion) .companyId(companyId) .id(id) - .xGustoAPIVersion(xGustoAPIVersion) .build(); AsyncRequestOperation operation = new GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursements.Async(sdkConfiguration, _headers); @@ -435,7 +435,7 @@ public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder pat */ public CompletableFuture patchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements(String companyId, String id) { return patchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements( - companyId, id, Optional.empty(), + Optional.empty(), companyId, id, Optional.empty()); } @@ -448,21 +448,21 @@ public CompletableFutureIf set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyId The UUID of the company * @param id The UUID of the payroll - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param requestBody * @return {@code CompletableFuture} - The async response */ public CompletableFuture patchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements( - String companyId, String id, - Optional xGustoAPIVersion, Optional requestBody) { + Optional xGustoAPIVersion, String companyId, + String id, Optional requestBody) { PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest request = PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest .builder() + .xGustoAPIVersion(xGustoAPIVersion) .companyId(companyId) .id(id) - .xGustoAPIVersion(xGustoAPIVersion) .requestBody(requestBody) .build(); AsyncRequestOperation operation @@ -501,7 +501,7 @@ public GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder getApprovedReversal */ public CompletableFuture getApprovedReversals(String companyId) { return getApprovedReversals( - companyId, Optional.empty(), Optional.empty(), + Optional.empty(), companyId, Optional.empty(), Optional.empty()); } @@ -514,22 +514,22 @@ public CompletableFuture getApp * *

    If set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyId The UUID of the company * @param page The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. * @param per Number of objects per page. For majority of endpoints will default to 25 - * @param xGustoAPIVersion * @return {@code CompletableFuture} - The async response */ public CompletableFuture getApprovedReversals( - String companyId, Optional page, - Optional per, Optional xGustoAPIVersion) { + Optional xGustoAPIVersion, String companyId, + Optional page, Optional per) { GetV1CompaniesCompanyIdPayrollReversalsRequest request = GetV1CompaniesCompanyIdPayrollReversalsRequest .builder() + .xGustoAPIVersion(xGustoAPIVersion) .companyId(companyId) .page(page) .per(per) - .xGustoAPIVersion(xGustoAPIVersion) .build(); AsyncRequestOperation operation = new GetV1CompaniesCompanyIdPayrollReversals.Async(sdkConfiguration, _headers); @@ -737,7 +737,7 @@ public DeleteV1CompaniesCompanyIdPayrollsRequestBuilder delete() { */ public CompletableFuture delete(String companyId, String payrollId) { return delete( - companyId, payrollId, Optional.empty(), + Optional.empty(), companyId, payrollId, Optional.empty()); } @@ -758,22 +758,22 @@ public CompletableFuture delete(Stri * *

    If set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyId The UUID of the company * @param payrollId The UUID of the payroll * @param async When true, request an asynchronous delete of the payroll. - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @return {@code CompletableFuture} - The async response */ public CompletableFuture delete( - String companyId, String payrollId, - Optional async, Optional xGustoAPIVersion) { + Optional xGustoAPIVersion, String companyId, + String payrollId, Optional async) { DeleteV1CompaniesCompanyIdPayrollsRequest request = DeleteV1CompaniesCompanyIdPayrollsRequest .builder() + .xGustoAPIVersion(xGustoAPIVersion) .companyId(companyId) .payrollId(payrollId) .async(async) - .xGustoAPIVersion(xGustoAPIVersion) .build(); AsyncRequestOperation operation = new DeleteV1CompaniesCompanyIdPayrolls.Async(sdkConfiguration, _headers); @@ -932,6 +932,10 @@ public CompletableFuture createOffCycl * * Hour and dollar amounts are returned as string representations of numeric decimals. * * Dollar amounts are represented to the cent. * * If no data has yet be inserted for a given field, it defaults to "0.00" (for fixed amounts). + * * Employee compensations are always paginated. Maximum page size is 100 employee compensations per + * request. + * * Responses include the `X-Page`, `X-Total-Count`, `X-Total-Pages`, and `X-Per-Page` pagination + * headers. * *

    scope: `payrolls:read` * @@ -952,6 +956,10 @@ public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder getReceipt() { * * Hour and dollar amounts are returned as string representations of numeric decimals. * * Dollar amounts are represented to the cent. * * If no data has yet be inserted for a given field, it defaults to "0.00" (for fixed amounts). + * * Employee compensations are always paginated. Maximum page size is 100 employee compensations per + * request. + * * Responses include the `X-Page`, `X-Total-Count`, `X-Total-Pages`, and `X-Per-Page` pagination + * headers. * *

    scope: `payrolls:read` * @@ -961,7 +969,9 @@ public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder getReceipt() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture getReceipt(String payrollUuid) { - return getReceipt(payrollUuid, Optional.empty()); + return getReceipt( + Optional.empty(), payrollUuid, Optional.empty(), + Optional.empty()); } /** @@ -973,21 +983,31 @@ public CompletableFuture getRec * * Hour and dollar amounts are returned as string representations of numeric decimals. * * Dollar amounts are represented to the cent. * * If no data has yet be inserted for a given field, it defaults to "0.00" (for fixed amounts). + * * Employee compensations are always paginated. Maximum page size is 100 employee compensations per + * request. + * * Responses include the `X-Page`, `X-Total-Count`, `X-Total-Pages`, and `X-Per-Page` pagination + * headers. * *

    scope: `payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param payrollUuid The UUID of the payroll * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param payrollUuid The UUID of the payroll + * @param page The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + * @param per Number of objects per page. For majority of endpoints will default to 25 * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getReceipt(String payrollUuid, Optional xGustoAPIVersion) { + public CompletableFuture getReceipt( + Optional xGustoAPIVersion, String payrollUuid, + Optional page, Optional per) { GetV1PaymentReceiptsPayrollsPayrollUuidRequest request = GetV1PaymentReceiptsPayrollsPayrollUuidRequest .builder() - .payrollUuid(payrollUuid) .xGustoAPIVersion(xGustoAPIVersion) + .payrollUuid(payrollUuid) + .page(page) + .per(per) .build(); AsyncRequestOperation operation = new GetV1PaymentReceiptsPayrollsPayrollUuid.Async(sdkConfiguration, _headers); @@ -1074,8 +1094,8 @@ public CompletableFuturePrepares an unprocessed payroll for update, including: adding or removing eligible employees from - * the payroll, + *

    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_date`, `payroll_deadline`, and `payroll_status_meta` dates and times. * *

    Use this endpoint before calling [PUT @@ -1102,8 +1122,8 @@ public PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBuilder prepare() { /** * Prepare a payroll for update * - *

    Prepares an unprocessed payroll for update, including: adding or removing eligible employees from - * the payroll, + *

    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_date`, `payroll_deadline`, and `payroll_status_meta` dates and times. * *

    Use this endpoint before calling [PUT diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncPeopleBatches.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncPeopleBatches.java index 6e1194a3a..8c2173ce0 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncPeopleBatches.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncPeopleBatches.java @@ -75,7 +75,7 @@ public PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder postV1CompaniesCompan * @return {@code CompletableFuture} - The async response */ public CompletableFuture postV1CompaniesCompanyIdPeopleBatches(String companyId, PostV1CompaniesCompanyIdPeopleBatchesRequestBody requestBody) { - return postV1CompaniesCompanyIdPeopleBatches(companyId, Optional.empty(), requestBody); + return postV1CompaniesCompanyIdPeopleBatches(Optional.empty(), companyId, requestBody); } /** @@ -89,19 +89,19 @@ public CompletableFuture postV1Co * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company * @param requestBody * @return {@code CompletableFuture} - The async response */ public CompletableFuture postV1CompaniesCompanyIdPeopleBatches( - String companyId, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String companyId, PostV1CompaniesCompanyIdPeopleBatchesRequestBody requestBody) { PostV1CompaniesCompanyIdPeopleBatchesRequest request = PostV1CompaniesCompanyIdPeopleBatchesRequest .builder() - .companyId(companyId) .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) .requestBody(requestBody) .build(); AsyncRequestOperation operation @@ -143,7 +143,7 @@ public GetV1PeopleBatchesPeopleBatchUuidRequestBuilder getV1PeopleBatchesPeopleB * @return {@code CompletableFuture} - The async response */ public CompletableFuture getV1PeopleBatchesPeopleBatchUuid(String peopleBatchUuid) { - return getV1PeopleBatchesPeopleBatchUuid(peopleBatchUuid, Optional.empty()); + return getV1PeopleBatchesPeopleBatchUuid(Optional.empty(), peopleBatchUuid); } /** @@ -157,16 +157,16 @@ public CompletableFuture getV1PeopleB * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param peopleBatchUuid The UUID of the people batch * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param peopleBatchUuid The UUID of the people batch * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getV1PeopleBatchesPeopleBatchUuid(String peopleBatchUuid, Optional xGustoAPIVersion) { + public CompletableFuture getV1PeopleBatchesPeopleBatchUuid(Optional xGustoAPIVersion, String peopleBatchUuid) { GetV1PeopleBatchesPeopleBatchUuidRequest request = GetV1PeopleBatchesPeopleBatchUuidRequest .builder() - .peopleBatchUuid(peopleBatchUuid) .xGustoAPIVersion(xGustoAPIVersion) + .peopleBatchUuid(peopleBatchUuid) .build(); AsyncRequestOperation operation = new GetV1PeopleBatchesPeopleBatchUuid.Async(sdkConfiguration, _headers); diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncReports.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncReports.java index 571b0019c..8fb18260c 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncReports.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncReports.java @@ -5,16 +5,23 @@ import static com.gusto.embedded_api_v_2026_06_15.operations.Operations.AsyncRequestOperation; +import com.gusto.embedded_api_v_2026_06_15.models.components.BulkReportBody; import com.gusto.embedded_api_v_2026_06_15.models.components.CreateReportBody; import com.gusto.embedded_api_v_2026_06_15.models.components.GeneralLedgerReportBody; import com.gusto.embedded_api_v_2026_06_15.models.operations.GetCompaniesCompanyUuidReportTemplatesReportTypeHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2026_06_15.models.operations.GetCompaniesCompanyUuidReportTemplatesReportTypeRequest; import com.gusto.embedded_api_v_2026_06_15.models.operations.GetReportsRequestUuidHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2026_06_15.models.operations.GetReportsRequestUuidRequest; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1BulkReportsRequestUuidRequest; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1BulkReportsRequestUuidSecurity; import com.gusto.embedded_api_v_2026_06_15.models.operations.PostCompaniesCompanyUuidReportsHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2026_06_15.models.operations.PostCompaniesCompanyUuidReportsRequest; import com.gusto.embedded_api_v_2026_06_15.models.operations.PostPayrollsPayrollUuidReportsGeneralLedgerHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2026_06_15.models.operations.PostPayrollsPayrollUuidReportsGeneralLedgerRequest; +import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1BulkReportsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1BulkReportsRequest; +import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1BulkReportsSecurity; import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequest; import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequestBody; @@ -22,16 +29,22 @@ import com.gusto.embedded_api_v_2026_06_15.models.operations.async.GetCompaniesCompanyUuidReportTemplatesReportTypeResponse; import com.gusto.embedded_api_v_2026_06_15.models.operations.async.GetReportsRequestUuidRequestBuilder; import com.gusto.embedded_api_v_2026_06_15.models.operations.async.GetReportsRequestUuidResponse; +import com.gusto.embedded_api_v_2026_06_15.models.operations.async.GetV1BulkReportsRequestUuidRequestBuilder; +import com.gusto.embedded_api_v_2026_06_15.models.operations.async.GetV1BulkReportsRequestUuidResponse; import com.gusto.embedded_api_v_2026_06_15.models.operations.async.PostCompaniesCompanyUuidReportsRequestBuilder; import com.gusto.embedded_api_v_2026_06_15.models.operations.async.PostCompaniesCompanyUuidReportsResponse; import com.gusto.embedded_api_v_2026_06_15.models.operations.async.PostPayrollsPayrollUuidReportsGeneralLedgerRequestBuilder; import com.gusto.embedded_api_v_2026_06_15.models.operations.async.PostPayrollsPayrollUuidReportsGeneralLedgerResponse; +import com.gusto.embedded_api_v_2026_06_15.models.operations.async.PostV1BulkReportsRequestBuilder; +import com.gusto.embedded_api_v_2026_06_15.models.operations.async.PostV1BulkReportsResponse; import com.gusto.embedded_api_v_2026_06_15.models.operations.async.PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequestBuilder; import com.gusto.embedded_api_v_2026_06_15.models.operations.async.PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageResponse; import com.gusto.embedded_api_v_2026_06_15.operations.GetCompaniesCompanyUuidReportTemplatesReportType; import com.gusto.embedded_api_v_2026_06_15.operations.GetReportsRequestUuid; +import com.gusto.embedded_api_v_2026_06_15.operations.GetV1BulkReportsRequestUuid; import com.gusto.embedded_api_v_2026_06_15.operations.PostCompaniesCompanyUuidReports; import com.gusto.embedded_api_v_2026_06_15.operations.PostPayrollsPayrollUuidReportsGeneralLedger; +import com.gusto.embedded_api_v_2026_06_15.operations.PostV1BulkReports; import com.gusto.embedded_api_v_2026_06_15.operations.PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage; import com.gusto.embedded_api_v_2026_06_15.utils.Headers; import java.lang.String; @@ -59,6 +72,190 @@ public Reports sync() { } + /** + * Create a bulk report batch + * + *

    Triggers asynchronous generation of up to 25 reports across companies the partner is mapped to. Each + * `batch` item is a `custom_report` (same parameters as [create a custom + * report](https://docs.gusto.com/embedded-payroll/reference/post-companies-company_uuid-reports)) or a + * `general_ledger` report (same parameters as [create a general ledger + * report](https://docs.gusto.com/embedded-payroll/reference/post-payrolls-payroll_uuid-reports-general_ledger)), + * keyed by `company_uuid` and `report_type`. Items are validated synchronously; if any is invalid, the + * entire batch is rejected. + * + *

    Poll the [bulk report GET + * endpoint](https://docs.gusto.com/embedded-payroll/reference/get-v1-bulk_reports-request_uuid) with + * the returned `uuid` for status and the report URL, which is valid for 10 minutes. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `company_reports:write` + * + * @return The async call builder + */ + public PostV1BulkReportsRequestBuilder postV1BulkReports() { + return new PostV1BulkReportsRequestBuilder(sdkConfiguration); + } + + /** + * Create a bulk report batch + * + *

    Triggers asynchronous generation of up to 25 reports across companies the partner is mapped to. Each + * `batch` item is a `custom_report` (same parameters as [create a custom + * report](https://docs.gusto.com/embedded-payroll/reference/post-companies-company_uuid-reports)) or a + * `general_ledger` report (same parameters as [create a general ledger + * report](https://docs.gusto.com/embedded-payroll/reference/post-payrolls-payroll_uuid-reports-general_ledger)), + * keyed by `company_uuid` and `report_type`. Items are validated synchronously; if any is invalid, the + * entire batch is rejected. + * + *

    Poll the [bulk report GET + * endpoint](https://docs.gusto.com/embedded-payroll/reference/get-v1-bulk_reports-request_uuid) with + * the returned `uuid` for status and the report URL, which is valid for 10 minutes. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `company_reports:write` + * + * @param security The security details to use for authentication. + * @param bulkReportBody Each `batch` item is a `custom_report` or a `general_ledger` report. + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture postV1BulkReports(PostV1BulkReportsSecurity security, BulkReportBody bulkReportBody) { + return postV1BulkReports(security, Optional.empty(), bulkReportBody); + } + + /** + * Create a bulk report batch + * + *

    Triggers asynchronous generation of up to 25 reports across companies the partner is mapped to. Each + * `batch` item is a `custom_report` (same parameters as [create a custom + * report](https://docs.gusto.com/embedded-payroll/reference/post-companies-company_uuid-reports)) or a + * `general_ledger` report (same parameters as [create a general ledger + * report](https://docs.gusto.com/embedded-payroll/reference/post-payrolls-payroll_uuid-reports-general_ledger)), + * keyed by `company_uuid` and `report_type`. Items are validated synchronously; if any is invalid, the + * entire batch is rejected. + * + *

    Poll the [bulk report GET + * endpoint](https://docs.gusto.com/embedded-payroll/reference/get-v1-bulk_reports-request_uuid) with + * the returned `uuid` for status and the report URL, which is valid for 10 minutes. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `company_reports:write` + * + * @param security The security details to use for authentication. + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param bulkReportBody Each `batch` item is a `custom_report` or a `general_ledger` report. + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture postV1BulkReports( + PostV1BulkReportsSecurity security, Optional xGustoAPIVersion, + BulkReportBody bulkReportBody) { + PostV1BulkReportsRequest request = + PostV1BulkReportsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .bulkReportBody(bulkReportBody) + .build(); + AsyncRequestOperation operation + = new PostV1BulkReports.Async(sdkConfiguration, security, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Get a bulk report batch + * + *

    Get a bulk report batch's status and results given the `request_uuid`. While in progress, only batch + * metadata is returned; once complete, it also includes a signed `report_url` (a zip of all generated + * reports, valid for 10 minutes) and a per-company breakdown. + * + *

    Reports containing PHI are inaccessible with `company_reports:read:tier_2_only` data scope. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `company_reports:read` + * + * @return The async call builder + */ + public GetV1BulkReportsRequestUuidRequestBuilder getV1BulkReportsRequestUuid() { + return new GetV1BulkReportsRequestUuidRequestBuilder(sdkConfiguration); + } + + /** + * Get a bulk report batch + * + *

    Get a bulk report batch's status and results given the `request_uuid`. While in progress, only batch + * metadata is returned; once complete, it also includes a signed `report_url` (a zip of all generated + * reports, valid for 10 minutes) and a per-company breakdown. + * + *

    Reports containing PHI are inaccessible with `company_reports:read:tier_2_only` data scope. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `company_reports:read` + * + * @param security The security details to use for authentication. + * @param requestUuid The UUID of the bulk report batch. + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getV1BulkReportsRequestUuid(GetV1BulkReportsRequestUuidSecurity security, String requestUuid) { + return getV1BulkReportsRequestUuid(security, Optional.empty(), requestUuid); + } + + /** + * Get a bulk report batch + * + *

    Get a bulk report batch's status and results given the `request_uuid`. While in progress, only batch + * metadata is returned; once complete, it also includes a signed `report_url` (a zip of all generated + * reports, valid for 10 minutes) and a per-company breakdown. + * + *

    Reports containing PHI are inaccessible with `company_reports:read:tier_2_only` data scope. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `company_reports:read` + * + * @param security The security details to use for authentication. + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param requestUuid The UUID of the bulk report batch. + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getV1BulkReportsRequestUuid( + GetV1BulkReportsRequestUuidSecurity security, Optional xGustoAPIVersion, + String requestUuid) { + GetV1BulkReportsRequestUuidRequest request = + GetV1BulkReportsRequestUuidRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .requestUuid(requestUuid) + .build(); + AsyncRequestOperation operation + = new GetV1BulkReportsRequestUuid.Async(sdkConfiguration, security, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + /** * Create an employees annual FICA wage report * diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncReverseWireTransactions.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncReverseWireTransactions.java new file mode 100644 index 000000000..bae77c628 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncReverseWireTransactions.java @@ -0,0 +1,76 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15; + +import static com.gusto.embedded_api_v_2026_06_15.operations.Operations.AsyncRequestOperation; + +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetReverseWireTransactionsRequest; +import com.gusto.embedded_api_v_2026_06_15.models.operations.async.GetReverseWireTransactionsRequestBuilder; +import com.gusto.embedded_api_v_2026_06_15.models.operations.async.GetReverseWireTransactionsResponse; +import com.gusto.embedded_api_v_2026_06_15.operations.GetReverseWireTransactions; +import com.gusto.embedded_api_v_2026_06_15.utils.Headers; +import java.util.concurrent.CompletableFuture; + + +public class AsyncReverseWireTransactions { + private static final Headers _headers = Headers.EMPTY; + private final SDKConfiguration sdkConfiguration; + private final ReverseWireTransactions syncSDK; + + AsyncReverseWireTransactions(ReverseWireTransactions syncSDK, SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + this.syncSDK = syncSDK; + } + + /** + * Switches to the sync SDK. + * + * @return The sync SDK + */ + public ReverseWireTransactions sync() { + return syncSDK; + } + + + /** + * Get all reverse wire transactions for a company + * + *

    Returns a paginated list of reverse wire (drawdown) transactions for a company. Reverse wires are + * debit transactions initiated by Gusto to pull funds from a partner's bank account to cover payroll + * or contractor payment obligations. Pagination is returned via the `x-page`, `x-per-page`, + * `x-total-count`, and `x-total-pages` response headers. + * + *

    scope: `reverse_wire_transactions:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public GetReverseWireTransactionsRequestBuilder getReverseWireTransactions() { + return new GetReverseWireTransactionsRequestBuilder(sdkConfiguration); + } + + /** + * Get all reverse wire transactions for a company + * + *

    Returns a paginated list of reverse wire (drawdown) transactions for a company. Reverse wires are + * debit transactions initiated by Gusto to pull funds from a partner's bank account to cover payroll + * or contractor payment obligations. Pagination is returned via the `x-page`, `x-per-page`, + * `x-total-count`, and `x-total-pages` response headers. + * + *

    scope: `reverse_wire_transactions:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param request The request object containing all the parameters for the API call. + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getReverseWireTransactions(GetReverseWireTransactionsRequest request) { + AsyncRequestOperation operation + = new GetReverseWireTransactions.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncSignatories.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncSignatories.java index e28859add..14df5cebd 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncSignatories.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncSignatories.java @@ -93,7 +93,7 @@ public GetV1CompaniesCompanyUuidSignatoriesRequestBuilder list() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture list(String companyUuid) { - return list(companyUuid, Optional.empty()); + return list(Optional.empty(), companyUuid); } /** @@ -108,16 +108,16 @@ public CompletableFuture list(Stri * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company * @return {@code CompletableFuture} - The async response */ - public CompletableFuture list(String companyUuid, Optional xGustoAPIVersion) { + public CompletableFuture list(Optional xGustoAPIVersion, String companyUuid) { GetV1CompaniesCompanyUuidSignatoriesRequest request = GetV1CompaniesCompanyUuidSignatoriesRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) .build(); AsyncRequestOperation operation = new GetV1CompaniesCompanyUuidSignatories.Async(sdkConfiguration, _headers); @@ -183,7 +183,7 @@ public PostV1CompanySignatoriesRequestBuilder create() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture create(String companyUuid, SignatoryCreateRequest signatoryCreateRequest) { - return create(companyUuid, Optional.empty(), signatoryCreateRequest); + return create(Optional.empty(), companyUuid, signatoryCreateRequest); } /** @@ -209,19 +209,19 @@ public CompletableFuture create(String company * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company * @param signatoryCreateRequest Request body for creating a signatory with complete information. All listed required fields must be provided. * @return {@code CompletableFuture} - The async response */ public CompletableFuture create( - String companyUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String companyUuid, SignatoryCreateRequest signatoryCreateRequest) { PostV1CompanySignatoriesRequest request = PostV1CompanySignatoriesRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) .signatoryCreateRequest(signatoryCreateRequest) .build(); AsyncRequestOperation operation @@ -272,7 +272,7 @@ public PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder invite() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture invite(String companyUuid, SignatoryInviteRequest signatoryInviteRequest) { - return invite(companyUuid, Optional.empty(), signatoryInviteRequest); + return invite(Optional.empty(), companyUuid, signatoryInviteRequest); } /** @@ -290,19 +290,19 @@ public CompletableFuture in * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company * @param signatoryInviteRequest Request body for inviting a signatory. * @return {@code CompletableFuture} - The async response */ public CompletableFuture invite( - String companyUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String companyUuid, SignatoryInviteRequest signatoryInviteRequest) { PostV1CompaniesCompanyUuidSignatoriesInviteRequest request = PostV1CompaniesCompanyUuidSignatoriesInviteRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) .signatoryInviteRequest(signatoryInviteRequest) .build(); AsyncRequestOperation operation @@ -359,7 +359,7 @@ public CompletableFutureIf set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyUuid The UUID of the company * @param signatoryUuid The UUID of the signatory - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param signatoryUpdateRequest Request body for updating a signatory. Email cannot be updated. * @return {@code CompletableFuture} - The async response */ public CompletableFuture update( - String companyUuid, String signatoryUuid, - Optional xGustoAPIVersion, SignatoryUpdateRequest signatoryUpdateRequest) { + Optional xGustoAPIVersion, String companyUuid, + String signatoryUuid, SignatoryUpdateRequest signatoryUpdateRequest) { PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest request = PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest .builder() + .xGustoAPIVersion(xGustoAPIVersion) .companyUuid(companyUuid) .signatoryUuid(signatoryUuid) - .xGustoAPIVersion(xGustoAPIVersion) .signatoryUpdateRequest(signatoryUpdateRequest) .build(); AsyncRequestOperation operation @@ -438,7 +438,7 @@ public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder delete * @return {@code CompletableFuture} - The async response */ public CompletableFuture delete(String companyUuid, String signatoryUuid) { - return delete(companyUuid, signatoryUuid, Optional.empty()); + return delete(Optional.empty(), companyUuid, signatoryUuid); } /** @@ -453,20 +453,20 @@ public CompletableFutureIf set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyUuid The UUID of the company * @param signatoryUuid The UUID of the signatory - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @return {@code CompletableFuture} - The async response */ public CompletableFuture delete( - String companyUuid, String signatoryUuid, - Optional xGustoAPIVersion) { + Optional xGustoAPIVersion, String companyUuid, + String signatoryUuid) { DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest request = DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest .builder() + .xGustoAPIVersion(xGustoAPIVersion) .companyUuid(companyUuid) .signatoryUuid(signatoryUuid) - .xGustoAPIVersion(xGustoAPIVersion) .build(); AsyncRequestOperation operation = new DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuid.Async(sdkConfiguration, _headers); diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncTaxPayments.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncTaxPayments.java new file mode 100644 index 000000000..fc8e31a83 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncTaxPayments.java @@ -0,0 +1,143 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15; + +import static com.gusto.embedded_api_v_2026_06_15.operations.Operations.AsyncRequestOperation; + +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetTaxPaymentHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetTaxPaymentRequest; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetTaxPaymentsRequest; +import com.gusto.embedded_api_v_2026_06_15.models.operations.async.GetTaxPaymentRequestBuilder; +import com.gusto.embedded_api_v_2026_06_15.models.operations.async.GetTaxPaymentResponse; +import com.gusto.embedded_api_v_2026_06_15.models.operations.async.GetTaxPaymentsRequestBuilder; +import com.gusto.embedded_api_v_2026_06_15.models.operations.async.GetTaxPaymentsResponse; +import com.gusto.embedded_api_v_2026_06_15.operations.GetTaxPayment; +import com.gusto.embedded_api_v_2026_06_15.operations.GetTaxPayments; +import com.gusto.embedded_api_v_2026_06_15.utils.Headers; +import java.lang.String; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; + + +public class AsyncTaxPayments { + private static final Headers _headers = Headers.EMPTY; + private final SDKConfiguration sdkConfiguration; + private final TaxPayments syncSDK; + + AsyncTaxPayments(TaxPayments syncSDK, SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + this.syncSDK = syncSDK; + } + + /** + * Switches to the sync SDK. + * + * @return The sync SDK + */ + public TaxPayments sync() { + return syncSDK; + } + + + /** + * Get all tax payments for a company + * + *

    Fetches all tax payments Gusto has made (or scheduled) to tax agencies on behalf of a company. + * + *

    scope: `tax_payments:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public GetTaxPaymentsRequestBuilder getTaxPayments() { + return new GetTaxPaymentsRequestBuilder(sdkConfiguration); + } + + /** + * Get all tax payments for a company + * + *

    Fetches all tax payments Gusto has made (or scheduled) to tax agencies on behalf of a company. + * + *

    scope: `tax_payments:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param request The request object containing all the parameters for the API call. + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getTaxPayments(GetTaxPaymentsRequest request) { + AsyncRequestOperation operation + = new GetTaxPayments.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + + /** + * Get a tax payment for a company + * + *

    Fetches a single tax payment by UUID, including the payroll tax liabilities that make up the + * payment. + * + *

    scope: `tax_payments:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The async call builder + */ + public GetTaxPaymentRequestBuilder getTaxPayment() { + return new GetTaxPaymentRequestBuilder(sdkConfiguration); + } + + /** + * Get a tax payment for a company + * + *

    Fetches a single tax payment by UUID, including the payroll tax liabilities that make up the + * payment. + * + *

    scope: `tax_payments:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param companyUuid The UUID of the company + * @param uuid The UUID of the tax payment + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getTaxPayment(String companyUuid, String uuid) { + return getTaxPayment(Optional.empty(), companyUuid, uuid); + } + + /** + * Get a tax payment for a company + * + *

    Fetches a single tax payment by UUID, including the payroll tax liabilities that make up the + * payment. + * + *

    scope: `tax_payments:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company + * @param uuid The UUID of the tax payment + * @return {@code CompletableFuture} - The async response + */ + public CompletableFuture getTaxPayment( + Optional xGustoAPIVersion, String companyUuid, + String uuid) { + GetTaxPaymentRequest request = + GetTaxPaymentRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) + .uuid(uuid) + .build(); + AsyncRequestOperation operation + = new GetTaxPayment.Async(sdkConfiguration, _headers); + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncTaxRequirements.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncTaxRequirements.java index 4208538bd..43240a18a 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncTaxRequirements.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncTaxRequirements.java @@ -82,7 +82,7 @@ public GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder getAll() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture getAll(String companyUuid) { - return getAll(companyUuid, Optional.empty()); + return getAll(Optional.empty(), companyUuid); } /** @@ -97,16 +97,16 @@ public CompletableFuture getAl * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company * @return {@code CompletableFuture} - The async response */ - public CompletableFuture getAll(String companyUuid, Optional xGustoAPIVersion) { + public CompletableFuture getAll(Optional xGustoAPIVersion, String companyUuid) { GetV1CompaniesCompanyUuidTaxRequirementsRequest request = GetV1CompaniesCompanyUuidTaxRequirementsRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) .build(); AsyncRequestOperation operation = new GetV1CompaniesCompanyUuidTaxRequirements.Async(sdkConfiguration, _headers); @@ -157,7 +157,7 @@ public GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder get() { */ public CompletableFuture get(String companyUuid, String state) { return get( - companyUuid, state, Optional.empty(), + Optional.empty(), companyUuid, state, Optional.empty()); } @@ -176,21 +176,21 @@ public CompletableFuture * *

    If set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyUuid The UUID of the company * @param state The two-letter state abbreviation - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param scheduling When true, return "new" requirement sets with valid `effective_from` dates that are available to save new effective-dated values. * @return {@code CompletableFuture} - The async response */ public CompletableFuture get( - String companyUuid, String state, - Optional xGustoAPIVersion, Optional scheduling) { + Optional xGustoAPIVersion, String companyUuid, + String state, Optional scheduling) { GetV1CompaniesCompanyUuidTaxRequirementsStateRequest request = GetV1CompaniesCompanyUuidTaxRequirementsStateRequest .builder() + .xGustoAPIVersion(xGustoAPIVersion) .companyUuid(companyUuid) .state(state) - .xGustoAPIVersion(xGustoAPIVersion) .scheduling(scheduling) .build(); AsyncRequestOperation operation @@ -253,7 +253,7 @@ public CompletableFuture String companyUuid, String state, PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody requestBody) { return updateState( - companyUuid, state, Optional.empty(), + Optional.empty(), companyUuid, state, requestBody); } @@ -276,21 +276,21 @@ public CompletableFuture * *

    If set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyUuid The UUID of the company * @param state The two-letter state abbreviation - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param requestBody * @return {@code CompletableFuture} - The async response */ public CompletableFuture updateState( - String companyUuid, String state, - Optional xGustoAPIVersion, PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody requestBody) { + Optional xGustoAPIVersion, String companyUuid, + String state, PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody requestBody) { PutV1CompaniesCompanyUuidTaxRequirementsStateRequest request = PutV1CompaniesCompanyUuidTaxRequirementsStateRequest .builder() + .xGustoAPIVersion(xGustoAPIVersion) .companyUuid(companyUuid) .state(state) - .xGustoAPIVersion(xGustoAPIVersion) .requestBody(requestBody) .build(); AsyncRequestOperation operation diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncWebhooks.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncWebhooks.java index c3d82daf1..3d7ab49e9 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncWebhooks.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncWebhooks.java @@ -257,7 +257,7 @@ public GetV1WebhookSubscriptionUuidRequestBuilder getSubscription() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture getSubscription(GetV1WebhookSubscriptionUuidSecurity security, String webhookSubscriptionUuid) { - return getSubscription(security, webhookSubscriptionUuid, Optional.empty()); + return getSubscription(security, Optional.empty(), webhookSubscriptionUuid); } /** @@ -273,18 +273,18 @@ public CompletableFuture getSubscription(G *

    scope: `webhook_subscriptions:read` * * @param security The security details to use for authentication. - * @param webhookSubscriptionUuid The webhook subscription UUID. * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param webhookSubscriptionUuid The webhook subscription UUID. * @return {@code CompletableFuture} - The async response */ public CompletableFuture getSubscription( - GetV1WebhookSubscriptionUuidSecurity security, String webhookSubscriptionUuid, - Optional xGustoAPIVersion) { + GetV1WebhookSubscriptionUuidSecurity security, Optional xGustoAPIVersion, + String webhookSubscriptionUuid) { GetV1WebhookSubscriptionUuidRequest request = GetV1WebhookSubscriptionUuidRequest .builder() - .webhookSubscriptionUuid(webhookSubscriptionUuid) .xGustoAPIVersion(xGustoAPIVersion) + .webhookSubscriptionUuid(webhookSubscriptionUuid) .build(); AsyncRequestOperation operation = new GetV1WebhookSubscriptionUuid.Async(sdkConfiguration, security, _headers); @@ -332,7 +332,7 @@ public CompletableFuture updateSubscriptio PutV1WebhookSubscriptionUuidSecurity security, String webhookSubscriptionUuid, PutV1WebhookSubscriptionUuidRequestBody requestBody) { return updateSubscription( - security, webhookSubscriptionUuid, Optional.empty(), + security, Optional.empty(), webhookSubscriptionUuid, requestBody); } @@ -349,19 +349,19 @@ public CompletableFuture updateSubscriptio *

    scope: `webhook_subscriptions:write` * * @param security The security details to use for authentication. - * @param webhookSubscriptionUuid The webhook subscription UUID. * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param webhookSubscriptionUuid The webhook subscription UUID. * @param requestBody * @return {@code CompletableFuture} - The async response */ public CompletableFuture updateSubscription( - PutV1WebhookSubscriptionUuidSecurity security, String webhookSubscriptionUuid, - Optional xGustoAPIVersion, PutV1WebhookSubscriptionUuidRequestBody requestBody) { + PutV1WebhookSubscriptionUuidSecurity security, Optional xGustoAPIVersion, + String webhookSubscriptionUuid, PutV1WebhookSubscriptionUuidRequestBody requestBody) { PutV1WebhookSubscriptionUuidRequest request = PutV1WebhookSubscriptionUuidRequest .builder() - .webhookSubscriptionUuid(webhookSubscriptionUuid) .xGustoAPIVersion(xGustoAPIVersion) + .webhookSubscriptionUuid(webhookSubscriptionUuid) .requestBody(requestBody) .build(); AsyncRequestOperation operation @@ -406,7 +406,7 @@ public DeleteV1WebhookSubscriptionUuidRequestBuilder deleteSubscription() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture deleteSubscription(DeleteV1WebhookSubscriptionUuidSecurity security, String webhookSubscriptionUuid) { - return deleteSubscription(security, webhookSubscriptionUuid, Optional.empty()); + return deleteSubscription(security, Optional.empty(), webhookSubscriptionUuid); } /** @@ -422,18 +422,18 @@ public CompletableFuture deleteSubscrip *

    scope: `webhook_subscriptions:write` * * @param security The security details to use for authentication. - * @param webhookSubscriptionUuid The webhook subscription UUID. * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param webhookSubscriptionUuid The webhook subscription UUID. * @return {@code CompletableFuture} - The async response */ public CompletableFuture deleteSubscription( - DeleteV1WebhookSubscriptionUuidSecurity security, String webhookSubscriptionUuid, - Optional xGustoAPIVersion) { + DeleteV1WebhookSubscriptionUuidSecurity security, Optional xGustoAPIVersion, + String webhookSubscriptionUuid) { DeleteV1WebhookSubscriptionUuidRequest request = DeleteV1WebhookSubscriptionUuidRequest .builder() - .webhookSubscriptionUuid(webhookSubscriptionUuid) .xGustoAPIVersion(xGustoAPIVersion) + .webhookSubscriptionUuid(webhookSubscriptionUuid) .build(); AsyncRequestOperation operation = new DeleteV1WebhookSubscriptionUuid.Async(sdkConfiguration, security, _headers); @@ -477,7 +477,7 @@ public GetV1WebhookSubscriptionVerificationTokenUuidRequestBuilder requestVerifi * @return {@code CompletableFuture} - The async response */ public CompletableFuture requestVerificationToken(GetV1WebhookSubscriptionVerificationTokenUuidSecurity security, String webhookSubscriptionUuid) { - return requestVerificationToken(security, webhookSubscriptionUuid, Optional.empty()); + return requestVerificationToken(security, Optional.empty(), webhookSubscriptionUuid); } /** @@ -493,18 +493,18 @@ public CompletableFuture *

    scope: `webhook_subscriptions:read` * * @param security The security details to use for authentication. - * @param webhookSubscriptionUuid The webhook subscription UUID. * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param webhookSubscriptionUuid The webhook subscription UUID. * @return {@code CompletableFuture} - The async response */ public CompletableFuture requestVerificationToken( - GetV1WebhookSubscriptionVerificationTokenUuidSecurity security, String webhookSubscriptionUuid, - Optional xGustoAPIVersion) { + GetV1WebhookSubscriptionVerificationTokenUuidSecurity security, Optional xGustoAPIVersion, + String webhookSubscriptionUuid) { GetV1WebhookSubscriptionVerificationTokenUuidRequest request = GetV1WebhookSubscriptionVerificationTokenUuidRequest .builder() - .webhookSubscriptionUuid(webhookSubscriptionUuid) .xGustoAPIVersion(xGustoAPIVersion) + .webhookSubscriptionUuid(webhookSubscriptionUuid) .build(); AsyncRequestOperation operation = new GetV1WebhookSubscriptionVerificationTokenUuid.Async(sdkConfiguration, security, _headers); @@ -562,7 +562,7 @@ public CompletableFuture verify( PutV1VerifyWebhookSubscriptionUuidSecurity security, String webhookSubscriptionUuid, PutV1VerifyWebhookSubscriptionUuidRequestBody requestBody) { return verify( - security, webhookSubscriptionUuid, Optional.empty(), + security, Optional.empty(), webhookSubscriptionUuid, requestBody); } @@ -584,19 +584,19 @@ public CompletableFuture verify( *

    scope: `webhook_subscriptions:write` * * @param security The security details to use for authentication. - * @param webhookSubscriptionUuid The webhook subscription UUID. * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param webhookSubscriptionUuid The webhook subscription UUID. * @param requestBody * @return {@code CompletableFuture} - The async response */ public CompletableFuture verify( - PutV1VerifyWebhookSubscriptionUuidSecurity security, String webhookSubscriptionUuid, - Optional xGustoAPIVersion, PutV1VerifyWebhookSubscriptionUuidRequestBody requestBody) { + PutV1VerifyWebhookSubscriptionUuidSecurity security, Optional xGustoAPIVersion, + String webhookSubscriptionUuid, PutV1VerifyWebhookSubscriptionUuidRequestBody requestBody) { PutV1VerifyWebhookSubscriptionUuidRequest request = PutV1VerifyWebhookSubscriptionUuidRequest .builder() - .webhookSubscriptionUuid(webhookSubscriptionUuid) .xGustoAPIVersion(xGustoAPIVersion) + .webhookSubscriptionUuid(webhookSubscriptionUuid) .requestBody(requestBody) .build(); AsyncRequestOperation operation diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncWireInRequests.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncWireInRequests.java index 1e8764dc4..ae99164b3 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncWireInRequests.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/AsyncWireInRequests.java @@ -76,7 +76,7 @@ public GetWireInRequestsWireInRequestUuidRequestBuilder get() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture get(String wireInRequestUuid) { - return get(wireInRequestUuid, Optional.empty()); + return get(Optional.empty(), wireInRequestUuid); } /** @@ -88,16 +88,16 @@ public CompletableFuture get(String * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param wireInRequestUuid The UUID of the Wire In Request * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param wireInRequestUuid The UUID of the Wire In Request * @return {@code CompletableFuture} - The async response */ - public CompletableFuture get(String wireInRequestUuid, Optional xGustoAPIVersion) { + public CompletableFuture get(Optional xGustoAPIVersion, String wireInRequestUuid) { GetWireInRequestsWireInRequestUuidRequest request = GetWireInRequestsWireInRequestUuidRequest .builder() - .wireInRequestUuid(wireInRequestUuid) .xGustoAPIVersion(xGustoAPIVersion) + .wireInRequestUuid(wireInRequestUuid) .build(); AsyncRequestOperation operation = new GetWireInRequestsWireInRequestUuid.Async(sdkConfiguration, _headers); @@ -135,7 +135,7 @@ public PutWireInRequestsWireInRequestUuidRequestBuilder submit() { * @return {@code CompletableFuture} - The async response */ public CompletableFuture submit(String wireInRequestUuid, WireInRequestUpdateRequestBody wireInRequestUpdateRequestBody) { - return submit(wireInRequestUuid, Optional.empty(), wireInRequestUpdateRequestBody); + return submit(Optional.empty(), wireInRequestUuid, wireInRequestUpdateRequestBody); } /** @@ -147,19 +147,19 @@ public CompletableFuture submit(Stri * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param wireInRequestUuid The UUID of the Wire In Request * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param wireInRequestUuid The UUID of the Wire In Request * @param wireInRequestUpdateRequestBody * @return {@code CompletableFuture} - The async response */ public CompletableFuture submit( - String wireInRequestUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String wireInRequestUuid, WireInRequestUpdateRequestBody wireInRequestUpdateRequestBody) { PutWireInRequestsWireInRequestUuidRequest request = PutWireInRequestsWireInRequestUuidRequest .builder() - .wireInRequestUuid(wireInRequestUuid) .xGustoAPIVersion(xGustoAPIVersion) + .wireInRequestUuid(wireInRequestUuid) .wireInRequestUpdateRequestBody(wireInRequestUpdateRequestBody) .build(); AsyncRequestOperation operation @@ -198,7 +198,7 @@ public GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder list() { */ public CompletableFuture list(String companyUuid) { return list( - companyUuid, Optional.empty(), Optional.empty(), + Optional.empty(), companyUuid, Optional.empty(), Optional.empty()); } @@ -211,20 +211,20 @@ public CompletableFuture list( * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company * @param page The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. * @param per Number of objects per page. For majority of endpoints will default to 25 * @return {@code CompletableFuture} - The async response */ public CompletableFuture list( - String companyUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String companyUuid, Optional page, Optional per) { GetCompaniesCompanyUuidWireInRequestUuidRequest request = GetCompaniesCompanyUuidWireInRequestUuidRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) .page(page) .per(per) .build(); diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/Companies.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/Companies.java index fe27cf182..8cc68e2f6 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/Companies.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/Companies.java @@ -64,6 +64,11 @@ import com.gusto.embedded_api_v_2026_06_15.models.operations.PutV1CompaniesRequestBody; import com.gusto.embedded_api_v_2026_06_15.models.operations.PutV1CompaniesRequestBuilder; import com.gusto.embedded_api_v_2026_06_15.models.operations.PutV1CompaniesResponse; +import com.gusto.embedded_api_v_2026_06_15.models.operations.PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2026_06_15.models.operations.PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest; +import com.gusto.embedded_api_v_2026_06_15.models.operations.PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder; +import com.gusto.embedded_api_v_2026_06_15.models.operations.PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse; +import com.gusto.embedded_api_v_2026_06_15.models.operations.PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity; import com.gusto.embedded_api_v_2026_06_15.models.operations.PutV1PartnerManagedCompaniesCompanyUuidMigrateHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2026_06_15.models.operations.PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest; import com.gusto.embedded_api_v_2026_06_15.models.operations.PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder; @@ -85,6 +90,7 @@ import com.gusto.embedded_api_v_2026_06_15.operations.PostV1PartnerManagedCompanies; import com.gusto.embedded_api_v_2026_06_15.operations.PostV1PartnerManagedCompaniesCompanyUuidTermsOfService; import com.gusto.embedded_api_v_2026_06_15.operations.PutV1Companies; +import com.gusto.embedded_api_v_2026_06_15.operations.PutV1PartnerManagedCompaniesCompanyUuidDisassociate; import com.gusto.embedded_api_v_2026_06_15.operations.PutV1PartnerManagedCompaniesCompanyUuidMigrate; import com.gusto.embedded_api_v_2026_06_15.operations.PutV1PartnerManagedCompaniesCompanyUuidTermsOfService; import com.gusto.embedded_api_v_2026_06_15.utils.Headers; @@ -290,7 +296,7 @@ public GetV1CompaniesRequestBuilder get() { * @throws RuntimeException subclass if the API call fails */ public GetV1CompaniesResponse get(String companyId) { - return get(companyId, Optional.empty()); + return get(Optional.empty(), companyId); } /** @@ -306,17 +312,17 @@ public GetV1CompaniesResponse get(String companyId) { * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1CompaniesResponse get(String companyId, Optional xGustoAPIVersion) { + public GetV1CompaniesResponse get(Optional xGustoAPIVersion, String companyId) { GetV1CompaniesRequest request = GetV1CompaniesRequest .builder() - .companyId(companyId) .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) .build(); RequestOperation operation = new GetV1Companies.Sync(sdkConfiguration, _headers); @@ -353,7 +359,7 @@ public PutV1CompaniesRequestBuilder update() { * @throws RuntimeException subclass if the API call fails */ public PutV1CompaniesResponse update(String companyId, PutV1CompaniesRequestBody requestBody) { - return update(companyId, Optional.empty(), requestBody); + return update(Optional.empty(), companyId, requestBody); } /** @@ -365,20 +371,20 @@ public PutV1CompaniesResponse update(String companyId, PutV1CompaniesRequestBody * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PutV1CompaniesResponse update( - String companyId, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String companyId, PutV1CompaniesRequestBody requestBody) { PutV1CompaniesRequest request = PutV1CompaniesRequest .builder() - .companyId(companyId) .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) .requestBody(requestBody) .build(); RequestOperation operation @@ -485,7 +491,7 @@ public GetV1CompanyOnboardingStatusRequestBuilder getOnboardingStatus() { * @throws RuntimeException subclass if the API call fails */ public GetV1CompanyOnboardingStatusResponse getOnboardingStatus(String companyUuid) { - return getOnboardingStatus(companyUuid, Optional.empty(), Optional.empty()); + return getOnboardingStatus(Optional.empty(), companyUuid, Optional.empty()); } /** @@ -498,21 +504,21 @@ public GetV1CompanyOnboardingStatusResponse getOnboardingStatus(String companyUu * *

    If set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyUuid The UUID of the company * @param additionalSteps Comma-delimited string of additional onboarding steps to include. Currently only supports the value "external_payroll". - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public GetV1CompanyOnboardingStatusResponse getOnboardingStatus( - String companyUuid, Optional additionalSteps, - Optional xGustoAPIVersion) { + Optional xGustoAPIVersion, String companyUuid, + Optional additionalSteps) { GetV1CompanyOnboardingStatusRequest request = GetV1CompanyOnboardingStatusRequest .builder() + .xGustoAPIVersion(xGustoAPIVersion) .companyUuid(companyUuid) .additionalSteps(additionalSteps) - .xGustoAPIVersion(xGustoAPIVersion) .build(); RequestOperation operation = new GetV1CompanyOnboardingStatus.Sync(sdkConfiguration, _headers); @@ -582,7 +588,7 @@ public GetV1CompanyFinishOnboardingRequestBuilder finishOnboarding() { * @throws RuntimeException subclass if the API call fails */ public GetV1CompanyFinishOnboardingResponse finishOnboarding(String companyUuid) { - return finishOnboarding(companyUuid, Optional.empty()); + return finishOnboarding(Optional.empty(), companyUuid); } /** @@ -611,23 +617,97 @@ public GetV1CompanyFinishOnboardingResponse finishOnboarding(String companyUuid) * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1CompanyFinishOnboardingResponse finishOnboarding(String companyUuid, Optional xGustoAPIVersion) { + public GetV1CompanyFinishOnboardingResponse finishOnboarding(Optional xGustoAPIVersion, String companyUuid) { GetV1CompanyFinishOnboardingRequest request = GetV1CompanyFinishOnboardingRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) .build(); RequestOperation operation = new GetV1CompanyFinishOnboarding.Sync(sdkConfiguration, _headers); return operation.handleResponse(operation.doRequest(request)); } + /** + * Disassociate a partner managed company + * + *

    Disassociate a company from your embedded payroll product, reversing an earlier association or + * migration. You can only disassociate a company that is currently associated with your application. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `partner_managed_companies:disassociate` + * + * @return The call builder + */ + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder putV1PartnerManagedCompaniesCompanyUuidDisassociate() { + return new PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder(sdkConfiguration); + } + + /** + * Disassociate a partner managed company + * + *

    Disassociate a company from your embedded payroll product, reversing an earlier association or + * migration. You can only disassociate a company that is currently associated with your application. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `partner_managed_companies:disassociate` + * + * @param security The security details to use for authentication. + * @param companyUuid The UUID of the company + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse putV1PartnerManagedCompaniesCompanyUuidDisassociate(PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity security, String companyUuid) { + return putV1PartnerManagedCompaniesCompanyUuidDisassociate(security, Optional.empty(), companyUuid); + } + + /** + * Disassociate a partner managed company + * + *

    Disassociate a company from your embedded payroll product, reversing an earlier association or + * migration. You can only disassociate a company that is currently associated with your application. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `partner_managed_companies:disassociate` + * + * @param security The security details to use for authentication. + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse putV1PartnerManagedCompaniesCompanyUuidDisassociate( + PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity security, Optional xGustoAPIVersion, + String companyUuid) { + PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest request = + PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) + .build(); + RequestOperation operation + = new PutV1PartnerManagedCompaniesCompanyUuidDisassociate.Sync(sdkConfiguration, security, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + /** * Migrate company to embedded payroll * @@ -677,7 +757,7 @@ public PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder migrate() { * @throws RuntimeException subclass if the API call fails */ public PutV1PartnerManagedCompaniesCompanyUuidMigrateResponse migrate(String companyUuid, PartnerManagedCompanyMigrateRequest partnerManagedCompanyMigrateRequest) { - return migrate(companyUuid, Optional.empty(), partnerManagedCompanyMigrateRequest); + return migrate(Optional.empty(), companyUuid, partnerManagedCompanyMigrateRequest); } /** @@ -698,21 +778,21 @@ public PutV1PartnerManagedCompaniesCompanyUuidMigrateResponse migrate(String com * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company * @param partnerManagedCompanyMigrateRequest Request body is optional in API version 2026-02-01 and later. The Terms of Service signer is resolved from the authenticated payroll-admin user; the previously required `email`, `ip_address`, and `external_user_id` parameters are no longer accepted. * * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PutV1PartnerManagedCompaniesCompanyUuidMigrateResponse migrate( - String companyUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String companyUuid, PartnerManagedCompanyMigrateRequest partnerManagedCompanyMigrateRequest) { PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest request = PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) .partnerManagedCompanyMigrateRequest(partnerManagedCompanyMigrateRequest) .build(); RequestOperation operation @@ -848,7 +928,7 @@ public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder g * @throws RuntimeException subclass if the API call fails */ public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessResponse getV1PartnerManagedCompaniesCompanyUuidMigrationReadiness(String companyUuid) { - return getV1PartnerManagedCompaniesCompanyUuidMigrationReadiness(companyUuid, Optional.empty()); + return getV1PartnerManagedCompaniesCompanyUuidMigrationReadiness(Optional.empty(), companyUuid); } /** @@ -862,17 +942,17 @@ public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessResponse getV1Pa * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessResponse getV1PartnerManagedCompaniesCompanyUuidMigrationReadiness(String companyUuid, Optional xGustoAPIVersion) { + public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessResponse getV1PartnerManagedCompaniesCompanyUuidMigrationReadiness(Optional xGustoAPIVersion, String companyUuid) { GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest request = GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) .build(); RequestOperation operation = new GetV1PartnerManagedCompaniesCompanyUuidMigrationReadiness.Sync(sdkConfiguration, _headers); @@ -921,7 +1001,7 @@ public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBuilder */ @Deprecated public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceResponse acceptTermsOfService(String companyUuid, PartnerManagedCompanyAcceptTermsOfServiceRequest partnerManagedCompanyAcceptTermsOfServiceRequest) { - return acceptTermsOfService(companyUuid, Optional.empty(), partnerManagedCompanyAcceptTermsOfServiceRequest); + return acceptTermsOfService(Optional.empty(), companyUuid, partnerManagedCompanyAcceptTermsOfServiceRequest); } /** @@ -937,8 +1017,8 @@ public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceResponse accept * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company * @param partnerManagedCompanyAcceptTermsOfServiceRequest * @return The response from the API call * @throws RuntimeException subclass if the API call fails @@ -946,13 +1026,13 @@ public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceResponse accept */ @Deprecated public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceResponse acceptTermsOfService( - String companyUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String companyUuid, PartnerManagedCompanyAcceptTermsOfServiceRequest partnerManagedCompanyAcceptTermsOfServiceRequest) { PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest request = PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) .partnerManagedCompanyAcceptTermsOfServiceRequest(partnerManagedCompanyAcceptTermsOfServiceRequest) .build(); RequestOperation operation @@ -1008,7 +1088,7 @@ public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilde */ @Deprecated public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceResponse retrieveTermsOfService(String companyUuid, PartnerManagedCompanyRetrieveTermsOfServiceRequest partnerManagedCompanyRetrieveTermsOfServiceRequest) { - return retrieveTermsOfService(companyUuid, Optional.empty(), partnerManagedCompanyRetrieveTermsOfServiceRequest); + return retrieveTermsOfService(Optional.empty(), companyUuid, partnerManagedCompanyRetrieveTermsOfServiceRequest); } /** @@ -1027,8 +1107,8 @@ public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceResponse retr * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company * @param partnerManagedCompanyRetrieveTermsOfServiceRequest * @return The response from the API call * @throws RuntimeException subclass if the API call fails @@ -1036,13 +1116,13 @@ public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceResponse retr */ @Deprecated public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceResponse retrieveTermsOfService( - String companyUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String companyUuid, PartnerManagedCompanyRetrieveTermsOfServiceRequest partnerManagedCompanyRetrieveTermsOfServiceRequest) { PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest request = PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) .partnerManagedCompanyRetrieveTermsOfServiceRequest(partnerManagedCompanyRetrieveTermsOfServiceRequest) .build(); RequestOperation operation @@ -1087,7 +1167,7 @@ public GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilder getV1 * @throws RuntimeException subclass if the API call fails */ public GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceResponse getV1PartnerManagedCompaniesCompanyUuidTermsOfService(String companyUuid) { - return getV1PartnerManagedCompaniesCompanyUuidTermsOfService(companyUuid, Optional.empty()); + return getV1PartnerManagedCompaniesCompanyUuidTermsOfService(Optional.empty(), companyUuid); } /** @@ -1103,17 +1183,17 @@ public GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceResponse getV1Partne * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceResponse getV1PartnerManagedCompaniesCompanyUuidTermsOfService(String companyUuid, Optional xGustoAPIVersion) { + public GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceResponse getV1PartnerManagedCompaniesCompanyUuidTermsOfService(Optional xGustoAPIVersion, String companyUuid) { GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest request = GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) .build(); RequestOperation operation = new GetV1PartnerManagedCompaniesCompanyUuidTermsOfService.Sync(sdkConfiguration, _headers); @@ -1162,7 +1242,7 @@ public PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilder putV1 * @throws RuntimeException subclass if the API call fails */ public PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceResponse putV1PartnerManagedCompaniesCompanyUuidTermsOfService(String companyUuid, PartnerManagedCompanyRetrieveTermsOfServiceRequest partnerManagedCompanyRetrieveTermsOfServiceRequest) { - return putV1PartnerManagedCompaniesCompanyUuidTermsOfService(companyUuid, Optional.empty(), partnerManagedCompanyRetrieveTermsOfServiceRequest); + return putV1PartnerManagedCompaniesCompanyUuidTermsOfService(Optional.empty(), companyUuid, partnerManagedCompanyRetrieveTermsOfServiceRequest); } /** @@ -1180,20 +1260,20 @@ public PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceResponse putV1Partne * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company * @param partnerManagedCompanyRetrieveTermsOfServiceRequest * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceResponse putV1PartnerManagedCompaniesCompanyUuidTermsOfService( - String companyUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String companyUuid, PartnerManagedCompanyRetrieveTermsOfServiceRequest partnerManagedCompanyRetrieveTermsOfServiceRequest) { PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest request = PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) .partnerManagedCompanyRetrieveTermsOfServiceRequest(partnerManagedCompanyRetrieveTermsOfServiceRequest) .build(); RequestOperation operation @@ -1233,7 +1313,7 @@ public PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilder post * @throws RuntimeException subclass if the API call fails */ public PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceResponse postV1PartnerManagedCompaniesCompanyUuidTermsOfService(String companyUuid, PartnerManagedCompanyAcceptTermsOfServiceRequest partnerManagedCompanyAcceptTermsOfServiceRequest) { - return postV1PartnerManagedCompaniesCompanyUuidTermsOfService(companyUuid, Optional.empty(), partnerManagedCompanyAcceptTermsOfServiceRequest); + return postV1PartnerManagedCompaniesCompanyUuidTermsOfService(Optional.empty(), companyUuid, partnerManagedCompanyAcceptTermsOfServiceRequest); } /** @@ -1246,20 +1326,20 @@ public PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceResponse postV1Part * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company * @param partnerManagedCompanyAcceptTermsOfServiceRequest * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceResponse postV1PartnerManagedCompaniesCompanyUuidTermsOfService( - String companyUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String companyUuid, PartnerManagedCompanyAcceptTermsOfServiceRequest partnerManagedCompanyAcceptTermsOfServiceRequest) { PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest request = PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) .partnerManagedCompanyAcceptTermsOfServiceRequest(partnerManagedCompanyAcceptTermsOfServiceRequest) .build(); RequestOperation operation diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/ContractorPaymentGroups.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/ContractorPaymentGroups.java index a2caeeb47..262054e20 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/ContractorPaymentGroups.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/ContractorPaymentGroups.java @@ -192,7 +192,7 @@ public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequestBuilder fu * @throws RuntimeException subclass if the API call fails */ public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundResponse fund(String contractorPaymentGroupUuid) { - return fund(contractorPaymentGroupUuid, Optional.empty()); + return fund(Optional.empty(), contractorPaymentGroupUuid); } /** @@ -211,17 +211,17 @@ public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundResponse fund(Str * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param contractorPaymentGroupUuid The UUID of the contractor payment group * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param contractorPaymentGroupUuid The UUID of the contractor payment group * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundResponse fund(String contractorPaymentGroupUuid, Optional xGustoAPIVersion) { + public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundResponse fund(Optional xGustoAPIVersion, String contractorPaymentGroupUuid) { PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest request = PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest .builder() - .contractorPaymentGroupUuid(contractorPaymentGroupUuid) .xGustoAPIVersion(xGustoAPIVersion) + .contractorPaymentGroupUuid(contractorPaymentGroupUuid) .build(); RequestOperation operation = new PutV1ContractorPaymentGroupsContractorPaymentGroupIdFund.Sync(sdkConfiguration, _headers); @@ -359,7 +359,7 @@ public GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder get() * @throws RuntimeException subclass if the API call fails */ public GetV1ContractorPaymentGroupsContractorPaymentGroupIdResponse get(String contractorPaymentGroupUuid) { - return get(contractorPaymentGroupUuid, Optional.empty()); + return get(Optional.empty(), contractorPaymentGroupUuid); } /** @@ -371,17 +371,17 @@ public GetV1ContractorPaymentGroupsContractorPaymentGroupIdResponse get(String c * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param contractorPaymentGroupUuid The UUID of the contractor payment group * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param contractorPaymentGroupUuid The UUID of the contractor payment group * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1ContractorPaymentGroupsContractorPaymentGroupIdResponse get(String contractorPaymentGroupUuid, Optional xGustoAPIVersion) { + public GetV1ContractorPaymentGroupsContractorPaymentGroupIdResponse get(Optional xGustoAPIVersion, String contractorPaymentGroupUuid) { GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest request = GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest .builder() - .contractorPaymentGroupUuid(contractorPaymentGroupUuid) .xGustoAPIVersion(xGustoAPIVersion) + .contractorPaymentGroupUuid(contractorPaymentGroupUuid) .build(); RequestOperation operation = new GetV1ContractorPaymentGroupsContractorPaymentGroupId.Sync(sdkConfiguration, _headers); @@ -419,7 +419,7 @@ public DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder del * @throws RuntimeException subclass if the API call fails */ public DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdResponse delete(String contractorPaymentGroupUuid) { - return delete(contractorPaymentGroupUuid, Optional.empty()); + return delete(Optional.empty(), contractorPaymentGroupUuid); } /** @@ -432,17 +432,17 @@ public DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdResponse delete(St * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param contractorPaymentGroupUuid The UUID of the contractor payment group * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param contractorPaymentGroupUuid The UUID of the contractor payment group * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdResponse delete(String contractorPaymentGroupUuid, Optional xGustoAPIVersion) { + public DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdResponse delete(Optional xGustoAPIVersion, String contractorPaymentGroupUuid) { DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest request = DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest .builder() - .contractorPaymentGroupUuid(contractorPaymentGroupUuid) .xGustoAPIVersion(xGustoAPIVersion) + .contractorPaymentGroupUuid(contractorPaymentGroupUuid) .build(); RequestOperation operation = new DeleteV1ContractorPaymentGroupsContractorPaymentGroupId.Sync(sdkConfiguration, _headers); @@ -478,7 +478,7 @@ public GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder getV1Con * @throws RuntimeException subclass if the API call fails */ public GetV1ContractorPaymentGroupsIdPartnerDisbursementsResponse getV1ContractorPaymentGroupsIdPartnerDisbursements(String id) { - return getV1ContractorPaymentGroupsIdPartnerDisbursements(id, Optional.empty()); + return getV1ContractorPaymentGroupsIdPartnerDisbursements(Optional.empty(), id); } /** @@ -490,17 +490,17 @@ public GetV1ContractorPaymentGroupsIdPartnerDisbursementsResponse getV1Contracto * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param id The UUID of the contractor payment group * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param id The UUID of the contractor payment group * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1ContractorPaymentGroupsIdPartnerDisbursementsResponse getV1ContractorPaymentGroupsIdPartnerDisbursements(String id, Optional xGustoAPIVersion) { + public GetV1ContractorPaymentGroupsIdPartnerDisbursementsResponse getV1ContractorPaymentGroupsIdPartnerDisbursements(Optional xGustoAPIVersion, String id) { GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest request = GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest .builder() - .id(id) .xGustoAPIVersion(xGustoAPIVersion) + .id(id) .build(); RequestOperation operation = new GetV1ContractorPaymentGroupsIdPartnerDisbursements.Sync(sdkConfiguration, _headers); @@ -536,7 +536,7 @@ public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder patchV * @throws RuntimeException subclass if the API call fails */ public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsResponse patchV1ContractorPaymentGroupsIdPartnerDisbursements(String id) { - return patchV1ContractorPaymentGroupsIdPartnerDisbursements(id, Optional.empty(), Optional.empty()); + return patchV1ContractorPaymentGroupsIdPartnerDisbursements(Optional.empty(), id, Optional.empty()); } /** @@ -548,20 +548,20 @@ public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsResponse patchV1Contr * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param id The UUID of the contractor payment group * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param id The UUID of the contractor payment group * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsResponse patchV1ContractorPaymentGroupsIdPartnerDisbursements( - String id, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String id, Optional requestBody) { PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest request = PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest .builder() - .id(id) .xGustoAPIVersion(xGustoAPIVersion) + .id(id) .requestBody(requestBody) .build(); RequestOperation operation diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/ContractorPayments.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/ContractorPayments.java index d53658bda..826daacad 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/ContractorPayments.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/ContractorPayments.java @@ -34,6 +34,9 @@ import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1ContractorPaymentsContractorPaymentUuidReceiptRequest; import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1ContractorPaymentsContractorPaymentUuidReceiptRequestBuilder; import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1ContractorPaymentsContractorPaymentUuidReceiptResponse; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1ContractorsContractorUuidPaymentsRequest; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1ContractorsContractorUuidPaymentsRequestBuilder; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1ContractorsContractorUuidPaymentsResponse; import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1CompaniesCompanyIdContractorPaymentsHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1CompaniesCompanyIdContractorPaymentsRequest; import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1CompaniesCompanyIdContractorPaymentsRequestBuilder; @@ -45,6 +48,7 @@ import com.gusto.embedded_api_v_2026_06_15.operations.GetV1ContractorPaymentsContractorPaymentIdPdf; import com.gusto.embedded_api_v_2026_06_15.operations.GetV1ContractorPaymentsContractorPaymentUuidFund; import com.gusto.embedded_api_v_2026_06_15.operations.GetV1ContractorPaymentsContractorPaymentUuidReceipt; +import com.gusto.embedded_api_v_2026_06_15.operations.GetV1ContractorsContractorUuidPayments; import com.gusto.embedded_api_v_2026_06_15.operations.PostV1CompaniesCompanyIdContractorPayments; import com.gusto.embedded_api_v_2026_06_15.utils.Headers; import java.lang.String; @@ -70,6 +74,104 @@ public AsyncContractorPayments async() { return asyncSDK; } + /** + * Get contractor payments + * + *

    Returns a paginated list of payments for a single contractor. + * + *

    Results are sortable by `check_date` or `created_at`. Append `:asc` or `:desc` to control direction + * (e.g., `check_date:desc`). + * + *

    scope: `contractor_pay_stubs:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public GetV1ContractorsContractorUuidPaymentsRequestBuilder getV1ContractorsContractorUuidPayments() { + return new GetV1ContractorsContractorUuidPaymentsRequestBuilder(sdkConfiguration); + } + + /** + * Get contractor payments + * + *

    Returns a paginated list of payments for a single contractor. + * + *

    Results are sortable by `check_date` or `created_at`. Append `:asc` or `:desc` to control direction + * (e.g., `check_date:desc`). + * + *

    scope: `contractor_pay_stubs:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param request The request object containing all the parameters for the API call. + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1ContractorsContractorUuidPaymentsResponse getV1ContractorsContractorUuidPayments(GetV1ContractorsContractorUuidPaymentsRequest request) { + RequestOperation operation + = new GetV1ContractorsContractorUuidPayments.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + + /** + * Get a contractor payment PDF + * + *

    Get a PDF document for a single contractor payment. + * + *

    scope: `payrolls:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public GetV1ContractorPaymentsContractorPaymentIdPdfRequestBuilder getV1ContractorPaymentsContractorPaymentIdPdf() { + return new GetV1ContractorPaymentsContractorPaymentIdPdfRequestBuilder(sdkConfiguration); + } + + /** + * Get a contractor payment PDF + * + *

    Get a PDF document for a single contractor payment. + * + *

    scope: `payrolls:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param contractorPaymentId The UUID of the contractor payment + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1ContractorPaymentsContractorPaymentIdPdfResponse getV1ContractorPaymentsContractorPaymentIdPdf(String contractorPaymentId) { + return getV1ContractorPaymentsContractorPaymentIdPdf(Optional.empty(), contractorPaymentId); + } + + /** + * Get a contractor payment PDF + * + *

    Get a PDF document for a single contractor payment. + * + *

    scope: `payrolls:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param contractorPaymentId The UUID of the contractor payment + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1ContractorPaymentsContractorPaymentIdPdfResponse getV1ContractorPaymentsContractorPaymentIdPdf(Optional xGustoAPIVersion, String contractorPaymentId) { + GetV1ContractorPaymentsContractorPaymentIdPdfRequest request = + GetV1ContractorPaymentsContractorPaymentIdPdfRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .contractorPaymentId(contractorPaymentId) + .build(); + RequestOperation operation + = new GetV1ContractorPaymentsContractorPaymentIdPdf.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + /** * Get contractor payments for a company * @@ -541,62 +643,4 @@ public GetV1ContractorPaymentsContractorPaymentUuidFundResponse fund(OptionalGet a PDF document for a single contractor payment. - * - *

    scope: `payrolls:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @return The call builder - */ - public GetV1ContractorPaymentsContractorPaymentIdPdfRequestBuilder getV1ContractorPaymentsContractorPaymentIdPdf() { - return new GetV1ContractorPaymentsContractorPaymentIdPdfRequestBuilder(sdkConfiguration); - } - - /** - * Get a contractor payment PDF - * - *

    Get a PDF document for a single contractor payment. - * - *

    scope: `payrolls:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param contractorPaymentId The UUID of the contractor payment - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public GetV1ContractorPaymentsContractorPaymentIdPdfResponse getV1ContractorPaymentsContractorPaymentIdPdf(String contractorPaymentId) { - return getV1ContractorPaymentsContractorPaymentIdPdf(Optional.empty(), contractorPaymentId); - } - - /** - * Get a contractor payment PDF - * - *

    Get a PDF document for a single contractor payment. - * - *

    scope: `payrolls:read` - * - *

    If set, this operation will use Security#companyAccessAuth from the global security. - * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - * @param contractorPaymentId The UUID of the contractor payment - * @return The response from the API call - * @throws RuntimeException subclass if the API call fails - */ - public GetV1ContractorPaymentsContractorPaymentIdPdfResponse getV1ContractorPaymentsContractorPaymentIdPdf(Optional xGustoAPIVersion, String contractorPaymentId) { - GetV1ContractorPaymentsContractorPaymentIdPdfRequest request = - GetV1ContractorPaymentsContractorPaymentIdPdfRequest - .builder() - .xGustoAPIVersion(xGustoAPIVersion) - .contractorPaymentId(contractorPaymentId) - .build(); - RequestOperation operation - = new GetV1ContractorPaymentsContractorPaymentIdPdf.Sync(sdkConfiguration, _headers); - return operation.handleResponse(operation.doRequest(request)); - } - } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/Contractors.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/Contractors.java index c130017fe..f7ade1da7 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/Contractors.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/Contractors.java @@ -327,7 +327,7 @@ public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder getV1Compa * @throws RuntimeException subclass if the API call fails */ public GetV1CompaniesCompanyIdContractorsPaymentDetailsResponse getV1CompaniesCompanyIdContractorsPaymentDetails(String companyId) { - return getV1CompaniesCompanyIdContractorsPaymentDetails(companyId, Optional.empty(), Optional.empty(), + return getV1CompaniesCompanyIdContractorsPaymentDetails(Optional.empty(), companyId, Optional.empty(), Optional.empty()); } @@ -365,23 +365,23 @@ public GetV1CompaniesCompanyIdContractorsPaymentDetailsResponse getV1CompaniesCo * *

    If set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyId The UUID of the company. This identifies the company whose contractor payment details you want to retrieve. * @param contractorUuid Optional filter to get payment details for a specific contractor. When provided, the response will only include payment details for this contractor. * @param contractorPaymentGroupUuid 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. - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public GetV1CompaniesCompanyIdContractorsPaymentDetailsResponse getV1CompaniesCompanyIdContractorsPaymentDetails( - String companyId, Optional contractorUuid, - Optional contractorPaymentGroupUuid, Optional xGustoAPIVersion) { + Optional xGustoAPIVersion, String companyId, + Optional contractorUuid, Optional contractorPaymentGroupUuid) { GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest request = GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest .builder() + .xGustoAPIVersion(xGustoAPIVersion) .companyId(companyId) .contractorUuid(contractorUuid) .contractorPaymentGroupUuid(contractorPaymentGroupUuid) - .xGustoAPIVersion(xGustoAPIVersion) .build(); RequestOperation operation = new GetV1CompaniesCompanyIdContractorsPaymentDetails.Sync(sdkConfiguration, _headers); @@ -435,7 +435,7 @@ public PostV1ContractorsContractorUuidRehireRequestBuilder postV1ContractorsCont * @throws RuntimeException subclass if the API call fails */ public PostV1ContractorsContractorUuidRehireResponse postV1ContractorsContractorUuidRehire(String contractorUuid) { - return postV1ContractorsContractorUuidRehire(contractorUuid, Optional.empty(), Optional.empty()); + return postV1ContractorsContractorUuidRehire(Optional.empty(), contractorUuid, Optional.empty()); } /** @@ -456,20 +456,20 @@ public PostV1ContractorsContractorUuidRehireResponse postV1ContractorsContractor * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param contractorUuid The UUID of the contractor * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param contractorUuid The UUID of the contractor * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PostV1ContractorsContractorUuidRehireResponse postV1ContractorsContractorUuidRehire( - String contractorUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String contractorUuid, Optional requestBody) { PostV1ContractorsContractorUuidRehireRequest request = PostV1ContractorsContractorUuidRehireRequest .builder() - .contractorUuid(contractorUuid) .xGustoAPIVersion(xGustoAPIVersion) + .contractorUuid(contractorUuid) .requestBody(requestBody) .build(); RequestOperation operation @@ -526,7 +526,7 @@ public DeleteV1ContractorsContractorUuidRehireRequestBuilder deleteV1Contractors * @throws RuntimeException subclass if the API call fails */ public DeleteV1ContractorsContractorUuidRehireResponse deleteV1ContractorsContractorUuidRehire(String contractorUuid) { - return deleteV1ContractorsContractorUuidRehire(contractorUuid, Optional.empty()); + return deleteV1ContractorsContractorUuidRehire(Optional.empty(), contractorUuid); } /** @@ -548,17 +548,17 @@ public DeleteV1ContractorsContractorUuidRehireResponse deleteV1ContractorsContra * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param contractorUuid The UUID of the contractor * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param contractorUuid The UUID of the contractor * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public DeleteV1ContractorsContractorUuidRehireResponse deleteV1ContractorsContractorUuidRehire(String contractorUuid, Optional xGustoAPIVersion) { + public DeleteV1ContractorsContractorUuidRehireResponse deleteV1ContractorsContractorUuidRehire(Optional xGustoAPIVersion, String contractorUuid) { DeleteV1ContractorsContractorUuidRehireRequest request = DeleteV1ContractorsContractorUuidRehireRequest .builder() - .contractorUuid(contractorUuid) .xGustoAPIVersion(xGustoAPIVersion) + .contractorUuid(contractorUuid) .build(); RequestOperation operation = new DeleteV1ContractorsContractorUuidRehire.Sync(sdkConfiguration, _headers); @@ -614,7 +614,7 @@ public PostV1ContractorsContractorUuidTerminationRequestBuilder postV1Contractor * @throws RuntimeException subclass if the API call fails */ public PostV1ContractorsContractorUuidTerminationResponse postV1ContractorsContractorUuidTermination(String contractorUuid) { - return postV1ContractorsContractorUuidTermination(contractorUuid, Optional.empty(), Optional.empty()); + return postV1ContractorsContractorUuidTermination(Optional.empty(), contractorUuid, Optional.empty()); } /** @@ -636,20 +636,20 @@ public PostV1ContractorsContractorUuidTerminationResponse postV1ContractorsContr * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param contractorUuid The UUID of the contractor * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param contractorUuid The UUID of the contractor * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PostV1ContractorsContractorUuidTerminationResponse postV1ContractorsContractorUuidTermination( - String contractorUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String contractorUuid, Optional requestBody) { PostV1ContractorsContractorUuidTerminationRequest request = PostV1ContractorsContractorUuidTerminationRequest .builder() - .contractorUuid(contractorUuid) .xGustoAPIVersion(xGustoAPIVersion) + .contractorUuid(contractorUuid) .requestBody(requestBody) .build(); RequestOperation operation @@ -706,7 +706,7 @@ public DeleteV1ContractorsContractorUuidTerminationRequestBuilder deleteV1Contra * @throws RuntimeException subclass if the API call fails */ public DeleteV1ContractorsContractorUuidTerminationResponse deleteV1ContractorsContractorUuidTermination(String contractorUuid) { - return deleteV1ContractorsContractorUuidTermination(contractorUuid, Optional.empty()); + return deleteV1ContractorsContractorUuidTermination(Optional.empty(), contractorUuid); } /** @@ -728,17 +728,17 @@ public DeleteV1ContractorsContractorUuidTerminationResponse deleteV1ContractorsC * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param contractorUuid The UUID of the contractor * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param contractorUuid The UUID of the contractor * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public DeleteV1ContractorsContractorUuidTerminationResponse deleteV1ContractorsContractorUuidTermination(String contractorUuid, Optional xGustoAPIVersion) { + public DeleteV1ContractorsContractorUuidTerminationResponse deleteV1ContractorsContractorUuidTermination(Optional xGustoAPIVersion, String contractorUuid) { DeleteV1ContractorsContractorUuidTerminationRequest request = DeleteV1ContractorsContractorUuidTerminationRequest .builder() - .contractorUuid(contractorUuid) .xGustoAPIVersion(xGustoAPIVersion) + .contractorUuid(contractorUuid) .build(); RequestOperation operation = new DeleteV1ContractorsContractorUuidTermination.Sync(sdkConfiguration, _headers); diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/Departments.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/Departments.java index 3fbdfae63..4c871d773 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/Departments.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/Departments.java @@ -96,7 +96,7 @@ public GetDepartmentRequestBuilder get() { * @throws RuntimeException subclass if the API call fails */ public GetDepartmentResponse get(String departmentUuid) { - return get(departmentUuid, Optional.empty()); + return get(Optional.empty(), departmentUuid); } /** @@ -108,17 +108,17 @@ public GetDepartmentResponse get(String departmentUuid) { * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param departmentUuid The UUID of the department * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param departmentUuid The UUID of the department * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetDepartmentResponse get(String departmentUuid, Optional xGustoAPIVersion) { + public GetDepartmentResponse get(Optional xGustoAPIVersion, String departmentUuid) { GetDepartmentRequest request = GetDepartmentRequest .builder() - .departmentUuid(departmentUuid) .xGustoAPIVersion(xGustoAPIVersion) + .departmentUuid(departmentUuid) .build(); RequestOperation operation = new GetDepartment.Sync(sdkConfiguration, _headers); @@ -155,7 +155,7 @@ public PutDepartmentsRequestBuilder update() { * @throws RuntimeException subclass if the API call fails */ public PutDepartmentsResponse update(String departmentUuid, DepartmentUpdateRequestBody departmentUpdateRequestBody) { - return update(departmentUuid, Optional.empty(), departmentUpdateRequestBody); + return update(Optional.empty(), departmentUuid, departmentUpdateRequestBody); } /** @@ -167,20 +167,20 @@ public PutDepartmentsResponse update(String departmentUuid, DepartmentUpdateRequ * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param departmentUuid The UUID of the department * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param departmentUuid The UUID of the department * @param departmentUpdateRequestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PutDepartmentsResponse update( - String departmentUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String departmentUuid, DepartmentUpdateRequestBody departmentUpdateRequestBody) { PutDepartmentsRequest request = PutDepartmentsRequest .builder() - .departmentUuid(departmentUuid) .xGustoAPIVersion(xGustoAPIVersion) + .departmentUuid(departmentUuid) .departmentUpdateRequestBody(departmentUpdateRequestBody) .build(); RequestOperation operation @@ -219,7 +219,7 @@ public DeleteDepartmentRequestBuilder delete() { * @throws RuntimeException subclass if the API call fails */ public DeleteDepartmentResponse delete(String departmentUuid) { - return delete(departmentUuid, Optional.empty()); + return delete(Optional.empty(), departmentUuid); } /** @@ -232,17 +232,17 @@ public DeleteDepartmentResponse delete(String departmentUuid) { * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param departmentUuid The UUID of the department * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param departmentUuid The UUID of the department * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public DeleteDepartmentResponse delete(String departmentUuid, Optional xGustoAPIVersion) { + public DeleteDepartmentResponse delete(Optional xGustoAPIVersion, String departmentUuid) { DeleteDepartmentRequest request = DeleteDepartmentRequest .builder() - .departmentUuid(departmentUuid) .xGustoAPIVersion(xGustoAPIVersion) + .departmentUuid(departmentUuid) .build(); RequestOperation operation = new DeleteDepartment.Sync(sdkConfiguration, _headers); @@ -279,7 +279,7 @@ public PutAddPeopleToDepartmentRequestBuilder addPeople() { * @throws RuntimeException subclass if the API call fails */ public PutAddPeopleToDepartmentResponse addPeople(String departmentUuid, DepartmentPeopleRequestBody departmentPeopleRequestBody) { - return addPeople(departmentUuid, Optional.empty(), departmentPeopleRequestBody); + return addPeople(Optional.empty(), departmentUuid, departmentPeopleRequestBody); } /** @@ -291,20 +291,20 @@ public PutAddPeopleToDepartmentResponse addPeople(String departmentUuid, Departm * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param departmentUuid The UUID of the department * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param departmentUuid The UUID of the department * @param departmentPeopleRequestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PutAddPeopleToDepartmentResponse addPeople( - String departmentUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String departmentUuid, DepartmentPeopleRequestBody departmentPeopleRequestBody) { PutAddPeopleToDepartmentRequest request = PutAddPeopleToDepartmentRequest .builder() - .departmentUuid(departmentUuid) .xGustoAPIVersion(xGustoAPIVersion) + .departmentUuid(departmentUuid) .departmentPeopleRequestBody(departmentPeopleRequestBody) .build(); RequestOperation operation @@ -342,7 +342,7 @@ public PutRemovePeopleFromDepartmentRequestBuilder removePeople() { * @throws RuntimeException subclass if the API call fails */ public PutRemovePeopleFromDepartmentResponse removePeople(String departmentUuid, DepartmentPeopleRequestBody departmentPeopleRequestBody) { - return removePeople(departmentUuid, Optional.empty(), departmentPeopleRequestBody); + return removePeople(Optional.empty(), departmentUuid, departmentPeopleRequestBody); } /** @@ -354,20 +354,20 @@ public PutRemovePeopleFromDepartmentResponse removePeople(String departmentUuid, * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param departmentUuid The UUID of the department * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param departmentUuid The UUID of the department * @param departmentPeopleRequestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PutRemovePeopleFromDepartmentResponse removePeople( - String departmentUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String departmentUuid, DepartmentPeopleRequestBody departmentPeopleRequestBody) { PutRemovePeopleFromDepartmentRequest request = PutRemovePeopleFromDepartmentRequest .builder() - .departmentUuid(departmentUuid) .xGustoAPIVersion(xGustoAPIVersion) + .departmentUuid(departmentUuid) .departmentPeopleRequestBody(departmentPeopleRequestBody) .build(); RequestOperation operation @@ -406,7 +406,7 @@ public GetCompaniesDepartmentsRequestBuilder getAll() { * @throws RuntimeException subclass if the API call fails */ public GetCompaniesDepartmentsResponse getAll(String companyUuid) { - return getAll(companyUuid, Optional.empty()); + return getAll(Optional.empty(), companyUuid); } /** @@ -419,17 +419,17 @@ public GetCompaniesDepartmentsResponse getAll(String companyUuid) { * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetCompaniesDepartmentsResponse getAll(String companyUuid, Optional xGustoAPIVersion) { + public GetCompaniesDepartmentsResponse getAll(Optional xGustoAPIVersion, String companyUuid) { GetCompaniesDepartmentsRequest request = GetCompaniesDepartmentsRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) .build(); RequestOperation operation = new GetCompaniesDepartments.Sync(sdkConfiguration, _headers); @@ -466,7 +466,7 @@ public PostDepartmentsRequestBuilder create() { * @throws RuntimeException subclass if the API call fails */ public PostDepartmentsResponse create(String companyUuid, DepartmentCreateRequestBody departmentCreateRequestBody) { - return create(companyUuid, Optional.empty(), departmentCreateRequestBody); + return create(Optional.empty(), companyUuid, departmentCreateRequestBody); } /** @@ -478,20 +478,20 @@ public PostDepartmentsResponse create(String companyUuid, DepartmentCreateReques * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company * @param departmentCreateRequestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PostDepartmentsResponse create( - String companyUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String companyUuid, DepartmentCreateRequestBody departmentCreateRequestBody) { PostDepartmentsRequest request = PostDepartmentsRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) .departmentCreateRequestBody(departmentCreateRequestBody) .build(); RequestOperation operation diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/EmployeeAddresses.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/EmployeeAddresses.java index 9a1690cc4..5f305f54b 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/EmployeeAddresses.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/EmployeeAddresses.java @@ -118,7 +118,7 @@ public GetV1EmployeesEmployeeIdHomeAddressesRequestBuilder get() { * @throws RuntimeException subclass if the API call fails */ public GetV1EmployeesEmployeeIdHomeAddressesResponse get(String employeeId) { - return get(employeeId, Optional.empty()); + return get(Optional.empty(), employeeId); } /** @@ -133,17 +133,17 @@ public GetV1EmployeesEmployeeIdHomeAddressesResponse get(String employeeId) { * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param employeeId The UUID of the employee * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param employeeId The UUID of the employee * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1EmployeesEmployeeIdHomeAddressesResponse get(String employeeId, Optional xGustoAPIVersion) { + public GetV1EmployeesEmployeeIdHomeAddressesResponse get(Optional xGustoAPIVersion, String employeeId) { GetV1EmployeesEmployeeIdHomeAddressesRequest request = GetV1EmployeesEmployeeIdHomeAddressesRequest .builder() - .employeeId(employeeId) .xGustoAPIVersion(xGustoAPIVersion) + .employeeId(employeeId) .build(); RequestOperation operation = new GetV1EmployeesEmployeeIdHomeAddresses.Sync(sdkConfiguration, _headers); @@ -186,7 +186,7 @@ public PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder create() { * @throws RuntimeException subclass if the API call fails */ public PostV1EmployeesEmployeeIdHomeAddressesResponse create(String employeeId, PostV1EmployeesEmployeeIdHomeAddressesRequestBody requestBody) { - return create(employeeId, Optional.empty(), requestBody); + return create(Optional.empty(), employeeId, requestBody); } /** @@ -201,20 +201,20 @@ public PostV1EmployeesEmployeeIdHomeAddressesResponse create(String employeeId, * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param employeeId The UUID of the employee * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param employeeId The UUID of the employee * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PostV1EmployeesEmployeeIdHomeAddressesResponse create( - String employeeId, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String employeeId, PostV1EmployeesEmployeeIdHomeAddressesRequestBody requestBody) { PostV1EmployeesEmployeeIdHomeAddressesRequest request = PostV1EmployeesEmployeeIdHomeAddressesRequest .builder() - .employeeId(employeeId) .xGustoAPIVersion(xGustoAPIVersion) + .employeeId(employeeId) .requestBody(requestBody) .build(); RequestOperation operation @@ -257,7 +257,7 @@ public GetV1HomeAddressesHomeAddressUuidRequestBuilder retrieveHomeAddress() { * @throws RuntimeException subclass if the API call fails */ public GetV1HomeAddressesHomeAddressUuidResponse retrieveHomeAddress(String homeAddressUuid) { - return retrieveHomeAddress(homeAddressUuid, Optional.empty()); + return retrieveHomeAddress(Optional.empty(), homeAddressUuid); } /** @@ -272,17 +272,17 @@ public GetV1HomeAddressesHomeAddressUuidResponse retrieveHomeAddress(String home * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param homeAddressUuid The UUID of the home address * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param homeAddressUuid The UUID of the home address * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1HomeAddressesHomeAddressUuidResponse retrieveHomeAddress(String homeAddressUuid, Optional xGustoAPIVersion) { + public GetV1HomeAddressesHomeAddressUuidResponse retrieveHomeAddress(Optional xGustoAPIVersion, String homeAddressUuid) { GetV1HomeAddressesHomeAddressUuidRequest request = GetV1HomeAddressesHomeAddressUuidRequest .builder() - .homeAddressUuid(homeAddressUuid) .xGustoAPIVersion(xGustoAPIVersion) + .homeAddressUuid(homeAddressUuid) .build(); RequestOperation operation = new GetV1HomeAddressesHomeAddressUuid.Sync(sdkConfiguration, _headers); @@ -450,7 +450,7 @@ public GetV1EmployeesEmployeeIdWorkAddressesRequestBuilder getWorkAddresses() { * @throws RuntimeException subclass if the API call fails */ public GetV1EmployeesEmployeeIdWorkAddressesResponse getWorkAddresses(String employeeId) { - return getWorkAddresses(employeeId, Optional.empty()); + return getWorkAddresses(Optional.empty(), employeeId); } /** @@ -463,17 +463,17 @@ public GetV1EmployeesEmployeeIdWorkAddressesResponse getWorkAddresses(String emp * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param employeeId The UUID of the employee * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param employeeId The UUID of the employee * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1EmployeesEmployeeIdWorkAddressesResponse getWorkAddresses(String employeeId, Optional xGustoAPIVersion) { + public GetV1EmployeesEmployeeIdWorkAddressesResponse getWorkAddresses(Optional xGustoAPIVersion, String employeeId) { GetV1EmployeesEmployeeIdWorkAddressesRequest request = GetV1EmployeesEmployeeIdWorkAddressesRequest .builder() - .employeeId(employeeId) .xGustoAPIVersion(xGustoAPIVersion) + .employeeId(employeeId) .build(); RequestOperation operation = new GetV1EmployeesEmployeeIdWorkAddresses.Sync(sdkConfiguration, _headers); @@ -512,7 +512,7 @@ public PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder createWorkAddress() * @throws RuntimeException subclass if the API call fails */ public PostV1EmployeesEmployeeIdWorkAddressesResponse createWorkAddress(String employeeId, PostV1EmployeesEmployeeIdWorkAddressesRequestBody requestBody) { - return createWorkAddress(employeeId, Optional.empty(), requestBody); + return createWorkAddress(Optional.empty(), employeeId, requestBody); } /** @@ -525,20 +525,20 @@ public PostV1EmployeesEmployeeIdWorkAddressesResponse createWorkAddress(String e * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param employeeId The UUID of the employee * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param employeeId The UUID of the employee * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PostV1EmployeesEmployeeIdWorkAddressesResponse createWorkAddress( - String employeeId, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String employeeId, PostV1EmployeesEmployeeIdWorkAddressesRequestBody requestBody) { PostV1EmployeesEmployeeIdWorkAddressesRequest request = PostV1EmployeesEmployeeIdWorkAddressesRequest .builder() - .employeeId(employeeId) .xGustoAPIVersion(xGustoAPIVersion) + .employeeId(employeeId) .requestBody(requestBody) .build(); RequestOperation operation @@ -575,7 +575,7 @@ public GetV1WorkAddressesWorkAddressUuidRequestBuilder retrieveWorkAddress() { * @throws RuntimeException subclass if the API call fails */ public GetV1WorkAddressesWorkAddressUuidResponse retrieveWorkAddress(String workAddressUuid) { - return retrieveWorkAddress(workAddressUuid, Optional.empty()); + return retrieveWorkAddress(Optional.empty(), workAddressUuid); } /** @@ -587,17 +587,17 @@ public GetV1WorkAddressesWorkAddressUuidResponse retrieveWorkAddress(String work * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param workAddressUuid The UUID of the work address * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param workAddressUuid The UUID of the work address * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1WorkAddressesWorkAddressUuidResponse retrieveWorkAddress(String workAddressUuid, Optional xGustoAPIVersion) { + public GetV1WorkAddressesWorkAddressUuidResponse retrieveWorkAddress(Optional xGustoAPIVersion, String workAddressUuid) { GetV1WorkAddressesWorkAddressUuidRequest request = GetV1WorkAddressesWorkAddressUuidRequest .builder() - .workAddressUuid(workAddressUuid) .xGustoAPIVersion(xGustoAPIVersion) + .workAddressUuid(workAddressUuid) .build(); RequestOperation operation = new GetV1WorkAddressesWorkAddressUuid.Sync(sdkConfiguration, _headers); @@ -634,7 +634,7 @@ public PutV1WorkAddressesWorkAddressUuidRequestBuilder updateWorkAddress() { * @throws RuntimeException subclass if the API call fails */ public PutV1WorkAddressesWorkAddressUuidResponse updateWorkAddress(String workAddressUuid, PutV1WorkAddressesWorkAddressUuidRequestBody requestBody) { - return updateWorkAddress(workAddressUuid, Optional.empty(), requestBody); + return updateWorkAddress(Optional.empty(), workAddressUuid, requestBody); } /** @@ -646,20 +646,20 @@ public PutV1WorkAddressesWorkAddressUuidResponse updateWorkAddress(String workAd * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param workAddressUuid The UUID of the work address * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param workAddressUuid The UUID of the work address * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PutV1WorkAddressesWorkAddressUuidResponse updateWorkAddress( - String workAddressUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String workAddressUuid, PutV1WorkAddressesWorkAddressUuidRequestBody requestBody) { PutV1WorkAddressesWorkAddressUuidRequest request = PutV1WorkAddressesWorkAddressUuidRequest .builder() - .workAddressUuid(workAddressUuid) .xGustoAPIVersion(xGustoAPIVersion) + .workAddressUuid(workAddressUuid) .requestBody(requestBody) .build(); RequestOperation operation @@ -696,7 +696,7 @@ public DeleteV1WorkAddressesWorkAddressUuidRequestBuilder deleteWorkAddress() { * @throws RuntimeException subclass if the API call fails */ public DeleteV1WorkAddressesWorkAddressUuidResponse deleteWorkAddress(String workAddressUuid) { - return deleteWorkAddress(workAddressUuid, Optional.empty()); + return deleteWorkAddress(Optional.empty(), workAddressUuid); } /** @@ -708,17 +708,17 @@ public DeleteV1WorkAddressesWorkAddressUuidResponse deleteWorkAddress(String wor * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param workAddressUuid The UUID of the work address * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param workAddressUuid The UUID of the work address * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public DeleteV1WorkAddressesWorkAddressUuidResponse deleteWorkAddress(String workAddressUuid, Optional xGustoAPIVersion) { + public DeleteV1WorkAddressesWorkAddressUuidResponse deleteWorkAddress(Optional xGustoAPIVersion, String workAddressUuid) { DeleteV1WorkAddressesWorkAddressUuidRequest request = DeleteV1WorkAddressesWorkAddressUuidRequest .builder() - .workAddressUuid(workAddressUuid) .xGustoAPIVersion(xGustoAPIVersion) + .workAddressUuid(workAddressUuid) .build(); RequestOperation operation = new DeleteV1WorkAddressesWorkAddressUuid.Sync(sdkConfiguration, _headers); diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/EmployeeBenefits.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/EmployeeBenefits.java index c6a46dff6..d0986d8ef 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/EmployeeBenefits.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/EmployeeBenefits.java @@ -622,7 +622,7 @@ public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder getV * @throws RuntimeException subclass if the API call fails */ public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesResponse getV1EmployeesEmployeeUuidSection603HighEarnerStatuses(String employeeUuid) { - return getV1EmployeesEmployeeUuidSection603HighEarnerStatuses(employeeUuid, Optional.empty()); + return getV1EmployeesEmployeeUuidSection603HighEarnerStatuses(Optional.empty(), employeeUuid); } /** @@ -639,17 +639,17 @@ public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesResponse getV1Emplo * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param employeeUuid The UUID of the employee * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param employeeUuid The UUID of the employee * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesResponse getV1EmployeesEmployeeUuidSection603HighEarnerStatuses(String employeeUuid, Optional xGustoAPIVersion) { + public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesResponse getV1EmployeesEmployeeUuidSection603HighEarnerStatuses(Optional xGustoAPIVersion, String employeeUuid) { GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest request = GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest .builder() - .employeeUuid(employeeUuid) .xGustoAPIVersion(xGustoAPIVersion) + .employeeUuid(employeeUuid) .build(); RequestOperation operation = new GetV1EmployeesEmployeeUuidSection603HighEarnerStatuses.Sync(sdkConfiguration, _headers); @@ -696,7 +696,7 @@ public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder pos * @throws RuntimeException subclass if the API call fails */ public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesResponse postV1EmployeesEmployeeUuidSection603HighEarnerStatuses(String employeeUuid, EmployeeSection603HighEarnerStatusCreateRequest employeeSection603HighEarnerStatusCreateRequest) { - return postV1EmployeesEmployeeUuidSection603HighEarnerStatuses(employeeUuid, Optional.empty(), employeeSection603HighEarnerStatusCreateRequest); + return postV1EmployeesEmployeeUuidSection603HighEarnerStatuses(Optional.empty(), employeeUuid, employeeSection603HighEarnerStatusCreateRequest); } /** @@ -713,20 +713,20 @@ public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesResponse postV1Emp * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param employeeUuid The UUID of the employee * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param employeeUuid The UUID of the employee * @param employeeSection603HighEarnerStatusCreateRequest Request body for creating an employee's Section 603 high earner status * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesResponse postV1EmployeesEmployeeUuidSection603HighEarnerStatuses( - String employeeUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String employeeUuid, EmployeeSection603HighEarnerStatusCreateRequest employeeSection603HighEarnerStatusCreateRequest) { PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest request = PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest .builder() - .employeeUuid(employeeUuid) .xGustoAPIVersion(xGustoAPIVersion) + .employeeUuid(employeeUuid) .employeeSection603HighEarnerStatusCreateRequest(employeeSection603HighEarnerStatusCreateRequest) .build(); RequestOperation operation @@ -774,7 +774,7 @@ public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearReques * @throws RuntimeException subclass if the API call fails */ public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearResponse getV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYear(String employeeUuid, long effectiveYear) { - return getV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYear(employeeUuid, effectiveYear, Optional.empty()); + return getV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYear(Optional.empty(), employeeUuid, effectiveYear); } /** @@ -791,21 +791,21 @@ public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRespon * *

    If set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param employeeUuid The UUID of the employee * @param effectiveYear The effective year for the Section 603 status - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearResponse getV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYear( - String employeeUuid, long effectiveYear, - Optional xGustoAPIVersion) { + Optional xGustoAPIVersion, String employeeUuid, + long effectiveYear) { GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest request = GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest .builder() + .xGustoAPIVersion(xGustoAPIVersion) .employeeUuid(employeeUuid) .effectiveYear(effectiveYear) - .xGustoAPIVersion(xGustoAPIVersion) .build(); RequestOperation operation = new GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYear.Sync(sdkConfiguration, _headers); @@ -855,7 +855,7 @@ public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequ public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearResponse patchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYear( String employeeUuid, long effectiveYear, EmployeeSection603HighEarnerStatusUpdateRequest employeeSection603HighEarnerStatusUpdateRequest) { - return patchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYear(employeeUuid, effectiveYear, Optional.empty(), + return patchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYear(Optional.empty(), employeeUuid, effectiveYear, employeeSection603HighEarnerStatusUpdateRequest); } @@ -873,22 +873,22 @@ public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearResp * *

    If set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param employeeUuid The UUID of the employee * @param effectiveYear The effective year for the Section 603 status - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param employeeSection603HighEarnerStatusUpdateRequest Request body for updating an employee's Section 603 high earner status * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearResponse patchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYear( - String employeeUuid, long effectiveYear, - Optional xGustoAPIVersion, EmployeeSection603HighEarnerStatusUpdateRequest employeeSection603HighEarnerStatusUpdateRequest) { + Optional xGustoAPIVersion, String employeeUuid, + long effectiveYear, EmployeeSection603HighEarnerStatusUpdateRequest employeeSection603HighEarnerStatusUpdateRequest) { PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest request = PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest .builder() + .xGustoAPIVersion(xGustoAPIVersion) .employeeUuid(employeeUuid) .effectiveYear(effectiveYear) - .xGustoAPIVersion(xGustoAPIVersion) .employeeSection603HighEarnerStatusUpdateRequest(employeeSection603HighEarnerStatusUpdateRequest) .build(); RequestOperation operation diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/Employees.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/Employees.java index fb72b884f..c81bf4cb9 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/Employees.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/Employees.java @@ -124,7 +124,7 @@ public GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder getCustomFields() { * @throws RuntimeException subclass if the API call fails */ public GetV1EmployeesEmployeeIdCustomFieldsResponse getCustomFields(String employeeId) { - return getCustomFields(employeeId, Optional.empty(), Optional.empty(), + return getCustomFields(Optional.empty(), employeeId, Optional.empty(), Optional.empty()); } @@ -137,23 +137,23 @@ public GetV1EmployeesEmployeeIdCustomFieldsResponse getCustomFields(String emplo * *

    If set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param employeeId The UUID of the employee * @param page The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. * @param per Number of objects per page. For majority of endpoints will default to 25 - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public GetV1EmployeesEmployeeIdCustomFieldsResponse getCustomFields( - String employeeId, Optional page, - Optional per, Optional xGustoAPIVersion) { + Optional xGustoAPIVersion, String employeeId, + Optional page, Optional per) { GetV1EmployeesEmployeeIdCustomFieldsRequest request = GetV1EmployeesEmployeeIdCustomFieldsRequest .builder() + .xGustoAPIVersion(xGustoAPIVersion) .employeeId(employeeId) .page(page) .per(per) - .xGustoAPIVersion(xGustoAPIVersion) .build(); RequestOperation operation = new GetV1EmployeesEmployeeIdCustomFields.Sync(sdkConfiguration, _headers); diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/FederalTaxDetails.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/FederalTaxDetails.java index 3cd765824..0b26bfaf7 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/FederalTaxDetails.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/FederalTaxDetails.java @@ -71,7 +71,7 @@ public GetV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder get() { * @throws RuntimeException subclass if the API call fails */ public GetV1CompaniesCompanyIdFederalTaxDetailsResponse get(String companyId) { - return get(companyId, Optional.empty()); + return get(Optional.empty(), companyId); } /** @@ -84,17 +84,17 @@ public GetV1CompaniesCompanyIdFederalTaxDetailsResponse get(String companyId) { * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1CompaniesCompanyIdFederalTaxDetailsResponse get(String companyId, Optional xGustoAPIVersion) { + public GetV1CompaniesCompanyIdFederalTaxDetailsResponse get(Optional xGustoAPIVersion, String companyId) { GetV1CompaniesCompanyIdFederalTaxDetailsRequest request = GetV1CompaniesCompanyIdFederalTaxDetailsRequest .builder() - .companyId(companyId) .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) .build(); RequestOperation operation = new GetV1CompaniesCompanyIdFederalTaxDetails.Sync(sdkConfiguration, _headers); @@ -157,7 +157,7 @@ public PutV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder update() { * @throws RuntimeException subclass if the API call fails */ public PutV1CompaniesCompanyIdFederalTaxDetailsResponse update(String companyId, FederalTaxDetailsUpdate federalTaxDetailsUpdate) { - return update(companyId, Optional.empty(), federalTaxDetailsUpdate); + return update(Optional.empty(), companyId, federalTaxDetailsUpdate); } /** @@ -182,20 +182,20 @@ public PutV1CompaniesCompanyIdFederalTaxDetailsResponse update(String companyId, * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company * @param federalTaxDetailsUpdate * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PutV1CompaniesCompanyIdFederalTaxDetailsResponse update( - String companyId, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String companyId, FederalTaxDetailsUpdate federalTaxDetailsUpdate) { PutV1CompaniesCompanyIdFederalTaxDetailsRequest request = PutV1CompaniesCompanyIdFederalTaxDetailsRequest .builder() - .companyId(companyId) .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) .federalTaxDetailsUpdate(federalTaxDetailsUpdate) .build(); RequestOperation operation diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/GeneratedDocuments.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/GeneratedDocuments.java index f655785b8..a02c2a3c4 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/GeneratedDocuments.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/GeneratedDocuments.java @@ -5,8 +5,8 @@ import static com.gusto.embedded_api_v_2026_06_15.operations.Operations.RequestOperation; -import com.gusto.embedded_api_v_2026_06_15.models.components.VersionHeader; import com.gusto.embedded_api_v_2026_06_15.models.operations.DocumentType; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest; import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder; import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1GeneratedDocumentsDocumentTypeRequestUuidResponse; @@ -67,7 +67,7 @@ public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder get() { * @throws RuntimeException subclass if the API call fails */ public GetV1GeneratedDocumentsDocumentTypeRequestUuidResponse get(DocumentType documentType, String requestUuid) { - return get(documentType, requestUuid, Optional.empty()); + return get(Optional.empty(), documentType, requestUuid); } /** @@ -80,21 +80,21 @@ public GetV1GeneratedDocumentsDocumentTypeRequestUuidResponse get(DocumentType d * *

    If set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param documentType The type of document being generated * @param requestUuid The UUID of the request to generate a document. Generate document endpoints return request_uuids to be used with the GET generated document endpoint. - * @param xGustoAPIVersion * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public GetV1GeneratedDocumentsDocumentTypeRequestUuidResponse get( - DocumentType documentType, String requestUuid, - Optional xGustoAPIVersion) { + Optional xGustoAPIVersion, DocumentType documentType, + String requestUuid) { GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest request = GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest .builder() + .xGustoAPIVersion(xGustoAPIVersion) .documentType(documentType) .requestUuid(requestUuid) - .xGustoAPIVersion(xGustoAPIVersion) .build(); RequestOperation operation = new GetV1GeneratedDocumentsDocumentTypeRequestUuid.Sync(sdkConfiguration, _headers); diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/GustoEmbedded.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/GustoEmbedded.java index abd021ea0..4777bbf30 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/GustoEmbedded.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/GustoEmbedded.java @@ -69,6 +69,9 @@ public String server() { private final CompanyBenefits companyBenefits; + private final Reports reports; + + private final CompanyAttachments companyAttachments; @@ -147,9 +150,6 @@ public String server() { private final EmployeeEmployments employeeEmployments; - private final Reports reports; - - private final Events events; @@ -189,9 +189,18 @@ public String server() { private final Locations locations; + private final MemberPortalInvitations memberPortalInvitations; + + private final PaySchedules paySchedules; + private final PayrollCancellations payrollCancellations; + + + private final PayrollDigests payrollDigests; + + private final TimeOffPolicies timeOffPolicies; @@ -204,12 +213,18 @@ public String server() { private final Reimbursements reimbursements; + private final ReverseWireTransactions reverseWireTransactions; + + private final SalaryEstimates salaryEstimates; private final Signatories signatories; + private final TaxPayments taxPayments; + + private final TimeOffRequests timeOffRequests; @@ -222,9 +237,6 @@ public String server() { private final WireInRequests wireInRequests; - private final PayrollDigests payrollDigests; - - public AchTransactions achTransactions() { return achTransactions; } @@ -240,6 +252,11 @@ public CompanyBenefits companyBenefits() { } + public Reports reports() { + return reports; + } + + public CompanyAttachments companyAttachments() { return companyAttachments; } @@ -370,11 +387,6 @@ public EmployeeEmployments employeeEmployments() { } - public Reports reports() { - return reports; - } - - public Events events() { return events; } @@ -440,11 +452,26 @@ public Locations locations() { } + public MemberPortalInvitations memberPortalInvitations() { + return memberPortalInvitations; + } + + public PaySchedules paySchedules() { return paySchedules; } + public PayrollCancellations payrollCancellations() { + return payrollCancellations; + } + + + public PayrollDigests payrollDigests() { + return payrollDigests; + } + + public TimeOffPolicies timeOffPolicies() { return timeOffPolicies; } @@ -465,6 +492,11 @@ public Reimbursements reimbursements() { } + public ReverseWireTransactions reverseWireTransactions() { + return reverseWireTransactions; + } + + public SalaryEstimates salaryEstimates() { return salaryEstimates; } @@ -475,6 +507,11 @@ public Signatories signatories() { } + public TaxPayments taxPayments() { + return taxPayments; + } + + public TimeOffRequests timeOffRequests() { return timeOffRequests; } @@ -493,11 +530,6 @@ public Webhooks webhooks() { public WireInRequests wireInRequests() { return wireInRequests; } - - - public PayrollDigests payrollDigests() { - return payrollDigests; - } private final AsyncGustoEmbedded asyncSDK; /** @@ -649,11 +681,12 @@ public static Builder builder() { return new Builder(); } - public GustoEmbedded(SDKConfiguration sdkConfiguration) { + private GustoEmbedded(SDKConfiguration sdkConfiguration) { sdkConfiguration.initialize(); this.achTransactions = new AchTransactions(sdkConfiguration); this.companies = new Companies(sdkConfiguration); this.companyBenefits = new CompanyBenefits(sdkConfiguration); + this.reports = new Reports(sdkConfiguration); this.companyAttachments = new CompanyAttachments(sdkConfiguration); this.companyAttachment = new CompanyAttachment(sdkConfiguration); this.bankAccounts = new BankAccounts(sdkConfiguration); @@ -680,7 +713,6 @@ public GustoEmbedded(SDKConfiguration sdkConfiguration) { this.employeeTaxSetup = new EmployeeTaxSetup(sdkConfiguration); this.employeeForms = new EmployeeForms(sdkConfiguration); this.employeeEmployments = new EmployeeEmployments(sdkConfiguration); - this.reports = new Reports(sdkConfiguration); this.events = new Events(sdkConfiguration); this.externalPayrolls = new ExternalPayrolls(sdkConfiguration); this.flows = new Flows(sdkConfiguration); @@ -694,18 +726,22 @@ public GustoEmbedded(SDKConfiguration sdkConfiguration) { this.informationRequests = new InformationRequests(sdkConfiguration); this.invoices = new Invoices(sdkConfiguration); this.locations = new Locations(sdkConfiguration); + this.memberPortalInvitations = new MemberPortalInvitations(sdkConfiguration); this.paySchedules = new PaySchedules(sdkConfiguration); + this.payrollCancellations = new PayrollCancellations(sdkConfiguration); + this.payrollDigests = new PayrollDigests(sdkConfiguration); this.timeOffPolicies = new TimeOffPolicies(sdkConfiguration); this.peopleBatches = new PeopleBatches(sdkConfiguration); this.recoveryCases = new RecoveryCases(sdkConfiguration); this.reimbursements = new Reimbursements(sdkConfiguration); + this.reverseWireTransactions = new ReverseWireTransactions(sdkConfiguration); this.salaryEstimates = new SalaryEstimates(sdkConfiguration); this.signatories = new Signatories(sdkConfiguration); + this.taxPayments = new TaxPayments(sdkConfiguration); this.timeOffRequests = new TimeOffRequests(sdkConfiguration); this.introspection = new Introspection(sdkConfiguration); this.webhooks = new Webhooks(sdkConfiguration); this.wireInRequests = new WireInRequests(sdkConfiguration); - this.payrollDigests = new PayrollDigests(sdkConfiguration); sdkConfiguration = sdkConfiguration.hooks().sdkInit(sdkConfiguration); this.asyncSDK = new AsyncGustoEmbedded(this, sdkConfiguration); } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/IndustrySelection.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/IndustrySelection.java index 0457cc2ee..dec46be87 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/IndustrySelection.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/IndustrySelection.java @@ -71,7 +71,7 @@ public GetV1CompanyIndustryRequestBuilder get() { * @throws RuntimeException subclass if the API call fails */ public GetV1CompanyIndustryResponse get(String companyId) { - return get(companyId, Optional.empty()); + return get(Optional.empty(), companyId); } /** @@ -84,17 +84,17 @@ public GetV1CompanyIndustryResponse get(String companyId) { * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1CompanyIndustryResponse get(String companyId, Optional xGustoAPIVersion) { + public GetV1CompanyIndustryResponse get(Optional xGustoAPIVersion, String companyId) { GetV1CompanyIndustryRequest request = GetV1CompanyIndustryRequest .builder() - .companyId(companyId) .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) .build(); RequestOperation operation = new GetV1CompanyIndustry.Sync(sdkConfiguration, _headers); @@ -149,7 +149,7 @@ public PutV1CompanyIndustryRequestBuilder update() { * @throws RuntimeException subclass if the API call fails */ public PutV1CompanyIndustryResponse update(String companyId, CompanyIndustrySelectionRequiredBody companyIndustrySelectionRequiredBody) { - return update(companyId, Optional.empty(), companyIndustrySelectionRequiredBody); + return update(Optional.empty(), companyId, companyIndustrySelectionRequiredBody); } /** @@ -170,20 +170,20 @@ public PutV1CompanyIndustryResponse update(String companyId, CompanyIndustrySele * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company * @param companyIndustrySelectionRequiredBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PutV1CompanyIndustryResponse update( - String companyId, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String companyId, CompanyIndustrySelectionRequiredBody companyIndustrySelectionRequiredBody) { PutV1CompanyIndustryRequest request = PutV1CompanyIndustryRequest .builder() - .companyId(companyId) .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) .companyIndustrySelectionRequiredBody(companyIndustrySelectionRequiredBody) .build(); RequestOperation operation diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/JobsAndCompensations.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/JobsAndCompensations.java index 198e4d259..89a5c867b 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/JobsAndCompensations.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/JobsAndCompensations.java @@ -488,7 +488,7 @@ public GetV1JobsJobIdRequestBuilder getJob() { * @throws RuntimeException subclass if the API call fails */ public GetV1JobsJobIdResponse getJob(String jobId) { - return getJob(jobId, Optional.empty(), Optional.empty()); + return getJob(Optional.empty(), jobId, Optional.empty()); } /** @@ -507,23 +507,23 @@ public GetV1JobsJobIdResponse getJob(String jobId) { * *

    If set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param jobId The UUID of the job * @param include Available options: * - all_compensations: Include all effective dated compensations for each job instead of only the current compensation * - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public GetV1JobsJobIdResponse getJob( - String jobId, Optional include, - Optional xGustoAPIVersion) { + Optional xGustoAPIVersion, String jobId, + Optional include) { GetV1JobsJobIdRequest request = GetV1JobsJobIdRequest .builder() + .xGustoAPIVersion(xGustoAPIVersion) .jobId(jobId) .include(include) - .xGustoAPIVersion(xGustoAPIVersion) .build(); RequestOperation operation = new GetV1JobsJobId.Sync(sdkConfiguration, _headers); @@ -560,7 +560,7 @@ public PutV1JobsJobIdRequestBuilder update() { * @throws RuntimeException subclass if the API call fails */ public PutV1JobsJobIdResponse update(String jobId, JobsUpdateRequestBody jobsUpdateRequestBody) { - return update(jobId, Optional.empty(), jobsUpdateRequestBody); + return update(Optional.empty(), jobId, jobsUpdateRequestBody); } /** @@ -572,20 +572,20 @@ public PutV1JobsJobIdResponse update(String jobId, JobsUpdateRequestBody jobsUpd * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param jobId The UUID of the job * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param jobId The UUID of the job * @param jobsUpdateRequestBody Request body for updating a job. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PutV1JobsJobIdResponse update( - String jobId, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String jobId, JobsUpdateRequestBody jobsUpdateRequestBody) { PutV1JobsJobIdRequest request = PutV1JobsJobIdRequest .builder() - .jobId(jobId) .xGustoAPIVersion(xGustoAPIVersion) + .jobId(jobId) .jobsUpdateRequestBody(jobsUpdateRequestBody) .build(); RequestOperation operation @@ -622,7 +622,7 @@ public DeleteV1JobsJobIdRequestBuilder delete() { * @throws RuntimeException subclass if the API call fails */ public DeleteV1JobsJobIdResponse delete(String jobId) { - return delete(jobId, Optional.empty()); + return delete(Optional.empty(), jobId); } /** @@ -634,17 +634,17 @@ public DeleteV1JobsJobIdResponse delete(String jobId) { * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param jobId The UUID of the job * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param jobId The UUID of the job * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public DeleteV1JobsJobIdResponse delete(String jobId, Optional xGustoAPIVersion) { + public DeleteV1JobsJobIdResponse delete(Optional xGustoAPIVersion, String jobId) { DeleteV1JobsJobIdRequest request = DeleteV1JobsJobIdRequest .builder() - .jobId(jobId) .xGustoAPIVersion(xGustoAPIVersion) + .jobId(jobId) .build(); RequestOperation operation = new DeleteV1JobsJobId.Sync(sdkConfiguration, _headers); @@ -727,7 +727,7 @@ public PostV1EmployeesEmployeeIdJobsRequestBuilder createJob() { * @throws RuntimeException subclass if the API call fails */ public PostV1EmployeesEmployeeIdJobsResponse createJob(String employeeId, JobsCreateRequestBody jobsCreateRequestBody) { - return createJob(employeeId, Optional.empty(), jobsCreateRequestBody); + return createJob(Optional.empty(), employeeId, jobsCreateRequestBody); } /** @@ -739,20 +739,20 @@ public PostV1EmployeesEmployeeIdJobsResponse createJob(String employeeId, JobsCr * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param employeeId The UUID of the employee * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param employeeId The UUID of the employee * @param jobsCreateRequestBody Request body for creating a job. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PostV1EmployeesEmployeeIdJobsResponse createJob( - String employeeId, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String employeeId, JobsCreateRequestBody jobsCreateRequestBody) { PostV1EmployeesEmployeeIdJobsRequest request = PostV1EmployeesEmployeeIdJobsRequest .builder() - .employeeId(employeeId) .xGustoAPIVersion(xGustoAPIVersion) + .employeeId(employeeId) .jobsCreateRequestBody(jobsCreateRequestBody) .build(); RequestOperation operation diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/Locations.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/Locations.java index 936656a2c..9a67694f9 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/Locations.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/Locations.java @@ -86,7 +86,7 @@ public GetV1LocationsLocationUuidMinimumWagesRequestBuilder getMinimumWages() { * @throws RuntimeException subclass if the API call fails */ public GetV1LocationsLocationUuidMinimumWagesResponse getMinimumWages(String locationUuid) { - return getMinimumWages(locationUuid, Optional.empty(), Optional.empty()); + return getMinimumWages(Optional.empty(), locationUuid, Optional.empty()); } /** @@ -98,20 +98,20 @@ public GetV1LocationsLocationUuidMinimumWagesResponse getMinimumWages(String loc * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param locationUuid The UUID of the location * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param locationUuid The UUID of the location * @param effectiveDate * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public GetV1LocationsLocationUuidMinimumWagesResponse getMinimumWages( - String locationUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String locationUuid, Optional effectiveDate) { GetV1LocationsLocationUuidMinimumWagesRequest request = GetV1LocationsLocationUuidMinimumWagesRequest .builder() - .locationUuid(locationUuid) .xGustoAPIVersion(xGustoAPIVersion) + .locationUuid(locationUuid) .effectiveDate(effectiveDate) .build(); RequestOperation operation diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/MemberPortalInvitations.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/MemberPortalInvitations.java new file mode 100644 index 000000000..bad4b2237 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/MemberPortalInvitations.java @@ -0,0 +1,452 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15; + +import static com.gusto.embedded_api_v_2026_06_15.operations.Operations.RequestOperation; + +import com.gusto.embedded_api_v_2026_06_15.models.operations.DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2026_06_15.models.operations.DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest; +import com.gusto.embedded_api_v_2026_06_15.models.operations.DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder; +import com.gusto.embedded_api_v_2026_06_15.models.operations.DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse; +import com.gusto.embedded_api_v_2026_06_15.models.operations.DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2026_06_15.models.operations.DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest; +import com.gusto.embedded_api_v_2026_06_15.models.operations.DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder; +import com.gusto.embedded_api_v_2026_06_15.models.operations.DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1ContractorsContractorUuidMemberPortalInvitationsRequest; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1ContractorsContractorUuidMemberPortalInvitationsResponse; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse; +import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1ContractorsContractorUuidMemberPortalInvitationsRequest; +import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder; +import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1ContractorsContractorUuidMemberPortalInvitationsResponse; +import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest; +import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder; +import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse; +import com.gusto.embedded_api_v_2026_06_15.operations.DeleteV1ContractorsContractorUuidMemberPortalInvitations; +import com.gusto.embedded_api_v_2026_06_15.operations.DeleteV1EmployeesEmployeeIdMemberPortalInvitations; +import com.gusto.embedded_api_v_2026_06_15.operations.GetV1ContractorsContractorUuidMemberPortalInvitations; +import com.gusto.embedded_api_v_2026_06_15.operations.GetV1EmployeesEmployeeIdMemberPortalInvitations; +import com.gusto.embedded_api_v_2026_06_15.operations.PostV1ContractorsContractorUuidMemberPortalInvitations; +import com.gusto.embedded_api_v_2026_06_15.operations.PostV1EmployeesEmployeeIdMemberPortalInvitations; +import com.gusto.embedded_api_v_2026_06_15.utils.Headers; +import java.lang.String; +import java.util.Optional; + + +public class MemberPortalInvitations { + private static final Headers _headers = Headers.EMPTY; + private final SDKConfiguration sdkConfiguration; + private final AsyncMemberPortalInvitations asyncSDK; + + MemberPortalInvitations(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + this.asyncSDK = new AsyncMemberPortalInvitations(this, sdkConfiguration); + } + + /** + * Switches to the async SDK. + * + * @return The async SDK + */ + public AsyncMemberPortalInvitations async() { + return asyncSDK; + } + + /** + * Create an employee member portal invitation + * + *

    Generates a member portal invitation for the specified employee. If the employee already has an + * invitation and its token has expired, calling this endpoint regenerates the invitation and overrides + * the prior token. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder postV1EmployeesEmployeeIdMemberPortalInvitations() { + return new PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder(sdkConfiguration); + } + + /** + * Create an employee member portal invitation + * + *

    Generates a member portal invitation for the specified employee. If the employee already has an + * invitation and its token has expired, calling this endpoint regenerates the invitation and overrides + * the prior token. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param employeeId The UUID of the employee + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse postV1EmployeesEmployeeIdMemberPortalInvitations(String employeeId) { + return postV1EmployeesEmployeeIdMemberPortalInvitations(Optional.empty(), employeeId); + } + + /** + * Create an employee member portal invitation + * + *

    Generates a member portal invitation for the specified employee. If the employee already has an + * invitation and its token has expired, calling this endpoint regenerates the invitation and overrides + * the prior token. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param employeeId The UUID of the employee + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse postV1EmployeesEmployeeIdMemberPortalInvitations(Optional xGustoAPIVersion, String employeeId) { + PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest request = + PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .employeeId(employeeId) + .build(); + RequestOperation operation + = new PostV1EmployeesEmployeeIdMemberPortalInvitations.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + + /** + * Get an employee member portal invitation + * + *

    Returns the current status of an employee's member portal invitation (`pending`, `sent`, `verified`, + * `complete`, or `cancelled`) along with an `expired` flag indicating whether the invitation can still + * be acted on by the employee. + * + *

    scope: `member_portal_invitation:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder getV1EmployeesEmployeeIdMemberPortalInvitations() { + return new GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder(sdkConfiguration); + } + + /** + * Get an employee member portal invitation + * + *

    Returns the current status of an employee's member portal invitation (`pending`, `sent`, `verified`, + * `complete`, or `cancelled`) along with an `expired` flag indicating whether the invitation can still + * be acted on by the employee. + * + *

    scope: `member_portal_invitation:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param employeeId The UUID of the employee + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse getV1EmployeesEmployeeIdMemberPortalInvitations(String employeeId) { + return getV1EmployeesEmployeeIdMemberPortalInvitations(Optional.empty(), employeeId); + } + + /** + * Get an employee member portal invitation + * + *

    Returns the current status of an employee's member portal invitation (`pending`, `sent`, `verified`, + * `complete`, or `cancelled`) along with an `expired` flag indicating whether the invitation can still + * be acted on by the employee. + * + *

    scope: `member_portal_invitation:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param employeeId The UUID of the employee + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse getV1EmployeesEmployeeIdMemberPortalInvitations(Optional xGustoAPIVersion, String employeeId) { + GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest request = + GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .employeeId(employeeId) + .build(); + RequestOperation operation + = new GetV1EmployeesEmployeeIdMemberPortalInvitations.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + + /** + * Cancel an employee member portal invitation + * + *

    Cancels the member portal invitation for the specified employee. + * + *

    Note: this endpoint does not cancel the employee's self-onboarding flow. If you want the company + * admin to take full control of onboarding the employee, cancel the self-onboarding request instead. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder deleteV1EmployeesEmployeeIdMemberPortalInvitations() { + return new DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder(sdkConfiguration); + } + + /** + * Cancel an employee member portal invitation + * + *

    Cancels the member portal invitation for the specified employee. + * + *

    Note: this endpoint does not cancel the employee's self-onboarding flow. If you want the company + * admin to take full control of onboarding the employee, cancel the self-onboarding request instead. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param employeeId The UUID of the employee + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse deleteV1EmployeesEmployeeIdMemberPortalInvitations(String employeeId) { + return deleteV1EmployeesEmployeeIdMemberPortalInvitations(Optional.empty(), employeeId); + } + + /** + * Cancel an employee member portal invitation + * + *

    Cancels the member portal invitation for the specified employee. + * + *

    Note: this endpoint does not cancel the employee's self-onboarding flow. If you want the company + * admin to take full control of onboarding the employee, cancel the self-onboarding request instead. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param employeeId The UUID of the employee + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse deleteV1EmployeesEmployeeIdMemberPortalInvitations(Optional xGustoAPIVersion, String employeeId) { + DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest request = + DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .employeeId(employeeId) + .build(); + RequestOperation operation + = new DeleteV1EmployeesEmployeeIdMemberPortalInvitations.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + + /** + * Create a contractor member portal invitation + * + *

    Generates a member portal invitation for the specified contractor. If the contractor already has an + * invitation and its token has expired, calling this endpoint regenerates the invitation and overrides + * the prior token. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public PostV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder postV1ContractorsContractorUuidMemberPortalInvitations() { + return new PostV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder(sdkConfiguration); + } + + /** + * Create a contractor member portal invitation + * + *

    Generates a member portal invitation for the specified contractor. If the contractor already has an + * invitation and its token has expired, calling this endpoint regenerates the invitation and overrides + * the prior token. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param contractorUuid The UUID of the contractor + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public PostV1ContractorsContractorUuidMemberPortalInvitationsResponse postV1ContractorsContractorUuidMemberPortalInvitations(String contractorUuid) { + return postV1ContractorsContractorUuidMemberPortalInvitations(Optional.empty(), contractorUuid); + } + + /** + * Create a contractor member portal invitation + * + *

    Generates a member portal invitation for the specified contractor. If the contractor already has an + * invitation and its token has expired, calling this endpoint regenerates the invitation and overrides + * the prior token. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param contractorUuid The UUID of the contractor + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public PostV1ContractorsContractorUuidMemberPortalInvitationsResponse postV1ContractorsContractorUuidMemberPortalInvitations(Optional xGustoAPIVersion, String contractorUuid) { + PostV1ContractorsContractorUuidMemberPortalInvitationsRequest request = + PostV1ContractorsContractorUuidMemberPortalInvitationsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .contractorUuid(contractorUuid) + .build(); + RequestOperation operation + = new PostV1ContractorsContractorUuidMemberPortalInvitations.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + + /** + * Get a contractor member portal invitation + * + *

    Returns the current status of a contractor's member portal invitation (`pending`, `sent`, + * `verified`, `complete`, or `cancelled`) along with an `expired` flag indicating whether the + * invitation can still be acted on by the contractor. + * + *

    scope: `member_portal_invitation:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder getV1ContractorsContractorUuidMemberPortalInvitations() { + return new GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder(sdkConfiguration); + } + + /** + * Get a contractor member portal invitation + * + *

    Returns the current status of a contractor's member portal invitation (`pending`, `sent`, + * `verified`, `complete`, or `cancelled`) along with an `expired` flag indicating whether the + * invitation can still be acted on by the contractor. + * + *

    scope: `member_portal_invitation:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param contractorUuid The UUID of the contractor + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1ContractorsContractorUuidMemberPortalInvitationsResponse getV1ContractorsContractorUuidMemberPortalInvitations(String contractorUuid) { + return getV1ContractorsContractorUuidMemberPortalInvitations(Optional.empty(), contractorUuid); + } + + /** + * Get a contractor member portal invitation + * + *

    Returns the current status of a contractor's member portal invitation (`pending`, `sent`, + * `verified`, `complete`, or `cancelled`) along with an `expired` flag indicating whether the + * invitation can still be acted on by the contractor. + * + *

    scope: `member_portal_invitation:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param contractorUuid The UUID of the contractor + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1ContractorsContractorUuidMemberPortalInvitationsResponse getV1ContractorsContractorUuidMemberPortalInvitations(Optional xGustoAPIVersion, String contractorUuid) { + GetV1ContractorsContractorUuidMemberPortalInvitationsRequest request = + GetV1ContractorsContractorUuidMemberPortalInvitationsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .contractorUuid(contractorUuid) + .build(); + RequestOperation operation + = new GetV1ContractorsContractorUuidMemberPortalInvitations.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + + /** + * Cancel a contractor member portal invitation + * + *

    Cancels the member portal invitation for the specified contractor. + * + *

    Note: this endpoint does not cancel the contractor's self-onboarding flow. If you want the company + * admin to take full control of onboarding the contractor, cancel the self-onboarding request instead. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder deleteV1ContractorsContractorUuidMemberPortalInvitations() { + return new DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder(sdkConfiguration); + } + + /** + * Cancel a contractor member portal invitation + * + *

    Cancels the member portal invitation for the specified contractor. + * + *

    Note: this endpoint does not cancel the contractor's self-onboarding flow. If you want the company + * admin to take full control of onboarding the contractor, cancel the self-onboarding request instead. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param contractorUuid The UUID of the contractor + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse deleteV1ContractorsContractorUuidMemberPortalInvitations(String contractorUuid) { + return deleteV1ContractorsContractorUuidMemberPortalInvitations(Optional.empty(), contractorUuid); + } + + /** + * Cancel a contractor member portal invitation + * + *

    Cancels the member portal invitation for the specified contractor. + * + *

    Note: this endpoint does not cancel the contractor's self-onboarding flow. If you want the company + * admin to take full control of onboarding the contractor, cancel the self-onboarding request instead. + * + *

    scope: `member_portal_invitation:write` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param contractorUuid The UUID of the contractor + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse deleteV1ContractorsContractorUuidMemberPortalInvitations(Optional xGustoAPIVersion, String contractorUuid) { + DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest request = + DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .contractorUuid(contractorUuid) + .build(); + RequestOperation operation + = new DeleteV1ContractorsContractorUuidMemberPortalInvitations.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/Notifications.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/Notifications.java index 7b2a730d9..9604e89ab 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/Notifications.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/Notifications.java @@ -119,7 +119,7 @@ public GetNotificationsNotificationUuidRequestBuilder getDetails() { * @throws RuntimeException subclass if the API call fails */ public GetNotificationsNotificationUuidResponse getDetails(String notificationUuid) { - return getDetails(notificationUuid, Optional.empty()); + return getDetails(Optional.empty(), notificationUuid); } /** @@ -140,17 +140,17 @@ public GetNotificationsNotificationUuidResponse getDetails(String notificationUu * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param notificationUuid The notification entity_uuid * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param notificationUuid The notification entity_uuid * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetNotificationsNotificationUuidResponse getDetails(String notificationUuid, Optional xGustoAPIVersion) { + public GetNotificationsNotificationUuidResponse getDetails(Optional xGustoAPIVersion, String notificationUuid) { GetNotificationsNotificationUuidRequest request = GetNotificationsNotificationUuidRequest .builder() - .notificationUuid(notificationUuid) .xGustoAPIVersion(xGustoAPIVersion) + .notificationUuid(notificationUuid) .build(); RequestOperation operation = new GetNotificationsNotificationUuid.Sync(sdkConfiguration, _headers); diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/PayrollCancellations.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/PayrollCancellations.java new file mode 100644 index 000000000..03048d26a --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/PayrollCancellations.java @@ -0,0 +1,259 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15; + +import static com.gusto.embedded_api_v_2026_06_15.operations.Operations.RequestOperation; + +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1PayrollBatchesPayrollBatchUuidRequest; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1PayrollBatchesPayrollBatchUuidRequestBuilder; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1PayrollBatchesPayrollBatchUuidResponse; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1PayrollBatchesPayrollBatchUuidSecurity; +import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1PayrollBatchesHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1PayrollBatchesRequest; +import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1PayrollBatchesRequestBody; +import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1PayrollBatchesRequestBuilder; +import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1PayrollBatchesResponse; +import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1PayrollBatchesSecurity; +import com.gusto.embedded_api_v_2026_06_15.operations.GetV1PayrollBatchesPayrollBatchUuid; +import com.gusto.embedded_api_v_2026_06_15.operations.PostV1PayrollBatches; +import com.gusto.embedded_api_v_2026_06_15.utils.Headers; +import java.lang.String; +import java.util.Optional; + + +public class PayrollCancellations { + private static final Headers _headers = Headers.EMPTY; + private final SDKConfiguration sdkConfiguration; + private final AsyncPayrollCancellations asyncSDK; + + PayrollCancellations(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + this.asyncSDK = new AsyncPayrollCancellations(this, sdkConfiguration); + } + + /** + * Switches to the async SDK. + * + * @return The async SDK + */ + public AsyncPayrollCancellations async() { + return asyncSDK; + } + + /** + * Create a payroll cancellation batch + * + *

    Cancels up to 100 payrolls across one or more companies the partner is mapped to, asynchronously. + * + *

    The batch is processed asynchronously. Use the returned batch UUID to poll `GET + * /v1/payroll_batches/{payroll_batch_uuid}` for status and per-payroll results. + * + *

    Each item carries the payroll `uuid` and the `company_uuid` that owns it. A payroll whose company is + * not mapped to the partner — or that doesn't exist — is recorded as a `not_found` exclusion rather + * than a hard error, so every requested UUID lands in either `results` or `exclusions`. + * + *

    Idempotency is scoped per `(partner, idempotency_key)`. A duplicate POST with the same + * `idempotency_key` returns a 409 Conflict referencing the existing batch UUID — no duplicate + * processing occurs. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `payroll_batches:write` + * + * @return The call builder + */ + public PostV1PayrollBatchesRequestBuilder postV1PayrollBatches() { + return new PostV1PayrollBatchesRequestBuilder(sdkConfiguration); + } + + /** + * Create a payroll cancellation batch + * + *

    Cancels up to 100 payrolls across one or more companies the partner is mapped to, asynchronously. + * + *

    The batch is processed asynchronously. Use the returned batch UUID to poll `GET + * /v1/payroll_batches/{payroll_batch_uuid}` for status and per-payroll results. + * + *

    Each item carries the payroll `uuid` and the `company_uuid` that owns it. A payroll whose company is + * not mapped to the partner — or that doesn't exist — is recorded as a `not_found` exclusion rather + * than a hard error, so every requested UUID lands in either `results` or `exclusions`. + * + *

    Idempotency is scoped per `(partner, idempotency_key)`. A duplicate POST with the same + * `idempotency_key` returns a 409 Conflict referencing the existing batch UUID — no duplicate + * processing occurs. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `payroll_batches:write` + * + * @param security The security details to use for authentication. + * @param requestBody + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public PostV1PayrollBatchesResponse postV1PayrollBatches(PostV1PayrollBatchesSecurity security, PostV1PayrollBatchesRequestBody requestBody) { + return postV1PayrollBatches(security, Optional.empty(), requestBody); + } + + /** + * Create a payroll cancellation batch + * + *

    Cancels up to 100 payrolls across one or more companies the partner is mapped to, asynchronously. + * + *

    The batch is processed asynchronously. Use the returned batch UUID to poll `GET + * /v1/payroll_batches/{payroll_batch_uuid}` for status and per-payroll results. + * + *

    Each item carries the payroll `uuid` and the `company_uuid` that owns it. A payroll whose company is + * not mapped to the partner — or that doesn't exist — is recorded as a `not_found` exclusion rather + * than a hard error, so every requested UUID lands in either `results` or `exclusions`. + * + *

    Idempotency is scoped per `(partner, idempotency_key)`. A duplicate POST with the same + * `idempotency_key` returns a 409 Conflict referencing the existing batch UUID — no duplicate + * processing occurs. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `payroll_batches:write` + * + * @param security The security details to use for authentication. + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param requestBody + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public PostV1PayrollBatchesResponse postV1PayrollBatches( + PostV1PayrollBatchesSecurity security, Optional xGustoAPIVersion, + PostV1PayrollBatchesRequestBody requestBody) { + PostV1PayrollBatchesRequest request = + PostV1PayrollBatchesRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .requestBody(requestBody) + .build(); + RequestOperation operation + = new PostV1PayrollBatches.Sync(sdkConfiguration, security, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + + /** + * Get a payroll cancellation batch + * + *

    Returns the status and per-payroll results of a payroll cancellation batch. + * + *

    Poll this endpoint until the batch `status` reaches a terminal value (`completed` or `failed`). Once + * terminal, the response includes the `results` array (one entry per authorized payroll, each with its + * own per-payroll `status` — `success` or `failed`) and the `exclusions` array (one entry per payroll + * that could not be processed). A cancel is atomic, so a per-payroll result is only ever `success` or + * `failed` — never `partial_success`. + * + *

    Note that the top-level batch `status` (`pending` / `processing` / `completed` / `failed`) is the + * request lifecycle, distinct from the per-payroll `status` inside `results[]`. A `completed` batch + * does not imply every payroll was cancelled — inspect the array for per-payroll outcomes. + * + *

    Results are stored in Redis with a limited TTL after completion. If the partner polls after results + * have expired, this endpoint returns 410 Gone — partners should re-submit a new batch. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `payroll_batches:read` + * + * @return The call builder + */ + public GetV1PayrollBatchesPayrollBatchUuidRequestBuilder getV1PayrollBatchesPayrollBatchUuid() { + return new GetV1PayrollBatchesPayrollBatchUuidRequestBuilder(sdkConfiguration); + } + + /** + * Get a payroll cancellation batch + * + *

    Returns the status and per-payroll results of a payroll cancellation batch. + * + *

    Poll this endpoint until the batch `status` reaches a terminal value (`completed` or `failed`). Once + * terminal, the response includes the `results` array (one entry per authorized payroll, each with its + * own per-payroll `status` — `success` or `failed`) and the `exclusions` array (one entry per payroll + * that could not be processed). A cancel is atomic, so a per-payroll result is only ever `success` or + * `failed` — never `partial_success`. + * + *

    Note that the top-level batch `status` (`pending` / `processing` / `completed` / `failed`) is the + * request lifecycle, distinct from the per-payroll `status` inside `results[]`. A `completed` batch + * does not imply every payroll was cancelled — inspect the array for per-payroll outcomes. + * + *

    Results are stored in Redis with a limited TTL after completion. If the partner polls after results + * have expired, this endpoint returns 410 Gone — partners should re-submit a new batch. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `payroll_batches:read` + * + * @param security The security details to use for authentication. + * @param payrollBatchUuid The UUID of the payroll cancellation batch returned by `POST /v1/payroll_batches`. + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1PayrollBatchesPayrollBatchUuidResponse getV1PayrollBatchesPayrollBatchUuid(GetV1PayrollBatchesPayrollBatchUuidSecurity security, String payrollBatchUuid) { + return getV1PayrollBatchesPayrollBatchUuid(security, Optional.empty(), payrollBatchUuid); + } + + /** + * Get a payroll cancellation batch + * + *

    Returns the status and per-payroll results of a payroll cancellation batch. + * + *

    Poll this endpoint until the batch `status` reaches a terminal value (`completed` or `failed`). Once + * terminal, the response includes the `results` array (one entry per authorized payroll, each with its + * own per-payroll `status` — `success` or `failed`) and the `exclusions` array (one entry per payroll + * that could not be processed). A cancel is atomic, so a per-payroll result is only ever `success` or + * `failed` — never `partial_success`. + * + *

    Note that the top-level batch `status` (`pending` / `processing` / `completed` / `failed`) is the + * request lifecycle, distinct from the per-payroll `status` inside `results[]`. A `completed` batch + * does not imply every payroll was cancelled — inspect the array for per-payroll outcomes. + * + *

    Results are stored in Redis with a limited TTL after completion. If the partner polls after results + * have expired, this endpoint returns 410 Gone — partners should re-submit a new batch. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `payroll_batches:read` + * + * @param security The security details to use for authentication. + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param payrollBatchUuid The UUID of the payroll cancellation batch returned by `POST /v1/payroll_batches`. + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1PayrollBatchesPayrollBatchUuidResponse getV1PayrollBatchesPayrollBatchUuid( + GetV1PayrollBatchesPayrollBatchUuidSecurity security, Optional xGustoAPIVersion, + String payrollBatchUuid) { + GetV1PayrollBatchesPayrollBatchUuidRequest request = + GetV1PayrollBatchesPayrollBatchUuidRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .payrollBatchUuid(payrollBatchUuid) + .build(); + RequestOperation operation + = new GetV1PayrollBatchesPayrollBatchUuid.Sync(sdkConfiguration, security, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/PayrollDigests.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/PayrollDigests.java index bf3f27a6a..1d675e724 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/PayrollDigests.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/PayrollDigests.java @@ -199,7 +199,7 @@ public GetV1PayrollDigestsPayrollDigestUuidRequestBuilder getV1PayrollDigestsPay * @throws RuntimeException subclass if the API call fails */ public GetV1PayrollDigestsPayrollDigestUuidResponse getV1PayrollDigestsPayrollDigestUuid(GetV1PayrollDigestsPayrollDigestUuidSecurity security, String payrollDigestUuid) { - return getV1PayrollDigestsPayrollDigestUuid(security, payrollDigestUuid, Optional.empty()); + return getV1PayrollDigestsPayrollDigestUuid(security, Optional.empty(), payrollDigestUuid); } /** @@ -228,19 +228,19 @@ public GetV1PayrollDigestsPayrollDigestUuidResponse getV1PayrollDigestsPayrollDi *

    scope: `payroll_digests:read` * * @param security The security details to use for authentication. - * @param payrollDigestUuid The UUID of the payroll digest batch returned by `POST /v1/payroll_digests`. * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param payrollDigestUuid The UUID of the payroll digest batch returned by `POST /v1/payroll_digests`. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public GetV1PayrollDigestsPayrollDigestUuidResponse getV1PayrollDigestsPayrollDigestUuid( - GetV1PayrollDigestsPayrollDigestUuidSecurity security, String payrollDigestUuid, - Optional xGustoAPIVersion) { + GetV1PayrollDigestsPayrollDigestUuidSecurity security, Optional xGustoAPIVersion, + String payrollDigestUuid) { GetV1PayrollDigestsPayrollDigestUuidRequest request = GetV1PayrollDigestsPayrollDigestUuidRequest .builder() - .payrollDigestUuid(payrollDigestUuid) .xGustoAPIVersion(xGustoAPIVersion) + .payrollDigestUuid(payrollDigestUuid) .build(); RequestOperation operation = new GetV1PayrollDigestsPayrollDigestUuid.Sync(sdkConfiguration, security, _headers); diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/Payrolls.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/Payrolls.java index 44519447d..602a76509 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/Payrolls.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/Payrolls.java @@ -8,11 +8,11 @@ import com.gusto.embedded_api_v_2026_06_15.models.components.PayrollGrossUpRequest; import com.gusto.embedded_api_v_2026_06_15.models.components.PayrollUpdate; import com.gusto.embedded_api_v_2026_06_15.models.components.PrintablePayrollChecksBody; -import com.gusto.embedded_api_v_2026_06_15.models.components.VersionHeader; import com.gusto.embedded_api_v_2026_06_15.models.operations.DeleteV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2026_06_15.models.operations.DeleteV1CompaniesCompanyIdPayrollsRequest; import com.gusto.embedded_api_v_2026_06_15.models.operations.DeleteV1CompaniesCompanyIdPayrollsRequestBuilder; import com.gusto.embedded_api_v_2026_06_15.models.operations.DeleteV1CompaniesCompanyIdPayrollsResponse; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1CompaniesCompanyIdPayrollReversalsRequest; import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder; import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1CompaniesCompanyIdPayrollReversalsResponse; @@ -369,7 +369,7 @@ public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder getV1 * @throws RuntimeException subclass if the API call fails */ public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsResponse getV1CompaniesCompanyIdPayrollsIdPartnerDisbursements(String companyId, String id) { - return getV1CompaniesCompanyIdPayrollsIdPartnerDisbursements(companyId, id, Optional.empty()); + return getV1CompaniesCompanyIdPayrollsIdPartnerDisbursements(Optional.empty(), companyId, id); } /** @@ -381,21 +381,21 @@ public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsResponse getV1Compan * *

    If set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyId The UUID of the company * @param id The UUID of the payroll - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsResponse getV1CompaniesCompanyIdPayrollsIdPartnerDisbursements( - String companyId, String id, - Optional xGustoAPIVersion) { + Optional xGustoAPIVersion, String companyId, + String id) { GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest request = GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest .builder() + .xGustoAPIVersion(xGustoAPIVersion) .companyId(companyId) .id(id) - .xGustoAPIVersion(xGustoAPIVersion) .build(); RequestOperation operation = new GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursements.Sync(sdkConfiguration, _headers); @@ -432,7 +432,7 @@ public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder pat * @throws RuntimeException subclass if the API call fails */ public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsResponse patchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements(String companyId, String id) { - return patchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements(companyId, id, Optional.empty(), + return patchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements(Optional.empty(), companyId, id, Optional.empty()); } @@ -445,22 +445,22 @@ public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsResponse patchV1Co * *

    If set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyId The UUID of the company * @param id The UUID of the payroll - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsResponse patchV1CompaniesCompanyIdPayrollsIdPartnerDisbursements( - String companyId, String id, - Optional xGustoAPIVersion, Optional requestBody) { + Optional xGustoAPIVersion, String companyId, + String id, Optional requestBody) { PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest request = PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest .builder() + .xGustoAPIVersion(xGustoAPIVersion) .companyId(companyId) .id(id) - .xGustoAPIVersion(xGustoAPIVersion) .requestBody(requestBody) .build(); RequestOperation operation @@ -497,7 +497,7 @@ public GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder getApprovedReversal * @throws RuntimeException subclass if the API call fails */ public GetV1CompaniesCompanyIdPayrollReversalsResponse getApprovedReversals(String companyId) { - return getApprovedReversals(companyId, Optional.empty(), Optional.empty(), + return getApprovedReversals(Optional.empty(), companyId, Optional.empty(), Optional.empty()); } @@ -510,23 +510,23 @@ public GetV1CompaniesCompanyIdPayrollReversalsResponse getApprovedReversals(Stri * *

    If set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyId The UUID of the company * @param page The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. * @param per Number of objects per page. For majority of endpoints will default to 25 - * @param xGustoAPIVersion * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public GetV1CompaniesCompanyIdPayrollReversalsResponse getApprovedReversals( - String companyId, Optional page, - Optional per, Optional xGustoAPIVersion) { + Optional xGustoAPIVersion, String companyId, + Optional page, Optional per) { GetV1CompaniesCompanyIdPayrollReversalsRequest request = GetV1CompaniesCompanyIdPayrollReversalsRequest .builder() + .xGustoAPIVersion(xGustoAPIVersion) .companyId(companyId) .page(page) .per(per) - .xGustoAPIVersion(xGustoAPIVersion) .build(); RequestOperation operation = new GetV1CompaniesCompanyIdPayrollReversals.Sync(sdkConfiguration, _headers); @@ -730,7 +730,7 @@ public DeleteV1CompaniesCompanyIdPayrollsRequestBuilder delete() { * @throws RuntimeException subclass if the API call fails */ public DeleteV1CompaniesCompanyIdPayrollsResponse delete(String companyId, String payrollId) { - return delete(companyId, payrollId, Optional.empty(), + return delete(Optional.empty(), companyId, payrollId, Optional.empty()); } @@ -751,23 +751,23 @@ public DeleteV1CompaniesCompanyIdPayrollsResponse delete(String companyId, Strin * *

    If set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyId The UUID of the company * @param payrollId The UUID of the payroll * @param async When true, request an asynchronous delete of the payroll. - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public DeleteV1CompaniesCompanyIdPayrollsResponse delete( - String companyId, String payrollId, - Optional async, Optional xGustoAPIVersion) { + Optional xGustoAPIVersion, String companyId, + String payrollId, Optional async) { DeleteV1CompaniesCompanyIdPayrollsRequest request = DeleteV1CompaniesCompanyIdPayrollsRequest .builder() + .xGustoAPIVersion(xGustoAPIVersion) .companyId(companyId) .payrollId(payrollId) .async(async) - .xGustoAPIVersion(xGustoAPIVersion) .build(); RequestOperation operation = new DeleteV1CompaniesCompanyIdPayrolls.Sync(sdkConfiguration, _headers); @@ -923,6 +923,10 @@ public PostV1CompaniesCompanyIdPayrollsResponse createOffCycle( * * Hour and dollar amounts are returned as string representations of numeric decimals. * * Dollar amounts are represented to the cent. * * If no data has yet be inserted for a given field, it defaults to "0.00" (for fixed amounts). + * * Employee compensations are always paginated. Maximum page size is 100 employee compensations per + * request. + * * Responses include the `X-Page`, `X-Total-Count`, `X-Total-Pages`, and `X-Per-Page` pagination + * headers. * *

    scope: `payrolls:read` * @@ -943,6 +947,10 @@ public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder getReceipt() { * * Hour and dollar amounts are returned as string representations of numeric decimals. * * Dollar amounts are represented to the cent. * * If no data has yet be inserted for a given field, it defaults to "0.00" (for fixed amounts). + * * Employee compensations are always paginated. Maximum page size is 100 employee compensations per + * request. + * * Responses include the `X-Page`, `X-Total-Count`, `X-Total-Pages`, and `X-Per-Page` pagination + * headers. * *

    scope: `payrolls:read` * @@ -953,7 +961,8 @@ public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder getReceipt() { * @throws RuntimeException subclass if the API call fails */ public GetV1PaymentReceiptsPayrollsPayrollUuidResponse getReceipt(String payrollUuid) { - return getReceipt(payrollUuid, Optional.empty()); + return getReceipt(Optional.empty(), payrollUuid, Optional.empty(), + Optional.empty()); } /** @@ -965,22 +974,32 @@ public GetV1PaymentReceiptsPayrollsPayrollUuidResponse getReceipt(String payroll * * Hour and dollar amounts are returned as string representations of numeric decimals. * * Dollar amounts are represented to the cent. * * If no data has yet be inserted for a given field, it defaults to "0.00" (for fixed amounts). + * * Employee compensations are always paginated. Maximum page size is 100 employee compensations per + * request. + * * Responses include the `X-Page`, `X-Total-Count`, `X-Total-Pages`, and `X-Per-Page` pagination + * headers. * *

    scope: `payrolls:read` * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param payrollUuid The UUID of the payroll * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param payrollUuid The UUID of the payroll + * @param page The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. + * @param per Number of objects per page. For majority of endpoints will default to 25 * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1PaymentReceiptsPayrollsPayrollUuidResponse getReceipt(String payrollUuid, Optional xGustoAPIVersion) { + public GetV1PaymentReceiptsPayrollsPayrollUuidResponse getReceipt( + Optional xGustoAPIVersion, String payrollUuid, + Optional page, Optional per) { GetV1PaymentReceiptsPayrollsPayrollUuidRequest request = GetV1PaymentReceiptsPayrollsPayrollUuidRequest .builder() - .payrollUuid(payrollUuid) .xGustoAPIVersion(xGustoAPIVersion) + .payrollUuid(payrollUuid) + .page(page) + .per(per) .build(); RequestOperation operation = new GetV1PaymentReceiptsPayrollsPayrollUuid.Sync(sdkConfiguration, _headers); @@ -1065,8 +1084,8 @@ public PutApiV1CompaniesCompanyIdPayrollsPayrollIdCancelResponse cancel( /** * Prepare a payroll for update * - *

    Prepares an unprocessed payroll for update, including: adding or removing eligible employees from - * the payroll, + *

    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_date`, `payroll_deadline`, and `payroll_status_meta` dates and times. * *

    Use this endpoint before calling [PUT @@ -1093,8 +1112,8 @@ public PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBuilder prepare() { /** * Prepare a payroll for update * - *

    Prepares an unprocessed payroll for update, including: adding or removing eligible employees from - * the payroll, + *

    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_date`, `payroll_deadline`, and `payroll_status_meta` dates and times. * *

    Use this endpoint before calling [PUT diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/PeopleBatches.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/PeopleBatches.java index 2683cc515..0340506af 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/PeopleBatches.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/PeopleBatches.java @@ -74,7 +74,7 @@ public PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder postV1CompaniesCompan * @throws RuntimeException subclass if the API call fails */ public PostV1CompaniesCompanyIdPeopleBatchesResponse postV1CompaniesCompanyIdPeopleBatches(String companyId, PostV1CompaniesCompanyIdPeopleBatchesRequestBody requestBody) { - return postV1CompaniesCompanyIdPeopleBatches(companyId, Optional.empty(), requestBody); + return postV1CompaniesCompanyIdPeopleBatches(Optional.empty(), companyId, requestBody); } /** @@ -88,20 +88,20 @@ public PostV1CompaniesCompanyIdPeopleBatchesResponse postV1CompaniesCompanyIdPeo * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyId The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyId The UUID of the company * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PostV1CompaniesCompanyIdPeopleBatchesResponse postV1CompaniesCompanyIdPeopleBatches( - String companyId, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String companyId, PostV1CompaniesCompanyIdPeopleBatchesRequestBody requestBody) { PostV1CompaniesCompanyIdPeopleBatchesRequest request = PostV1CompaniesCompanyIdPeopleBatchesRequest .builder() - .companyId(companyId) .xGustoAPIVersion(xGustoAPIVersion) + .companyId(companyId) .requestBody(requestBody) .build(); RequestOperation operation @@ -142,7 +142,7 @@ public GetV1PeopleBatchesPeopleBatchUuidRequestBuilder getV1PeopleBatchesPeopleB * @throws RuntimeException subclass if the API call fails */ public GetV1PeopleBatchesPeopleBatchUuidResponse getV1PeopleBatchesPeopleBatchUuid(String peopleBatchUuid) { - return getV1PeopleBatchesPeopleBatchUuid(peopleBatchUuid, Optional.empty()); + return getV1PeopleBatchesPeopleBatchUuid(Optional.empty(), peopleBatchUuid); } /** @@ -156,17 +156,17 @@ public GetV1PeopleBatchesPeopleBatchUuidResponse getV1PeopleBatchesPeopleBatchUu * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param peopleBatchUuid The UUID of the people batch * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param peopleBatchUuid The UUID of the people batch * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1PeopleBatchesPeopleBatchUuidResponse getV1PeopleBatchesPeopleBatchUuid(String peopleBatchUuid, Optional xGustoAPIVersion) { + public GetV1PeopleBatchesPeopleBatchUuidResponse getV1PeopleBatchesPeopleBatchUuid(Optional xGustoAPIVersion, String peopleBatchUuid) { GetV1PeopleBatchesPeopleBatchUuidRequest request = GetV1PeopleBatchesPeopleBatchUuidRequest .builder() - .peopleBatchUuid(peopleBatchUuid) .xGustoAPIVersion(xGustoAPIVersion) + .peopleBatchUuid(peopleBatchUuid) .build(); RequestOperation operation = new GetV1PeopleBatchesPeopleBatchUuid.Sync(sdkConfiguration, _headers); diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/Reports.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/Reports.java index 5c67f9207..a28c6c154 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/Reports.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/Reports.java @@ -5,6 +5,7 @@ import static com.gusto.embedded_api_v_2026_06_15.operations.Operations.RequestOperation; +import com.gusto.embedded_api_v_2026_06_15.models.components.BulkReportBody; import com.gusto.embedded_api_v_2026_06_15.models.components.CreateReportBody; import com.gusto.embedded_api_v_2026_06_15.models.components.GeneralLedgerReportBody; import com.gusto.embedded_api_v_2026_06_15.models.operations.GetCompaniesCompanyUuidReportTemplatesReportTypeHeaderXGustoAPIVersion; @@ -15,6 +16,11 @@ import com.gusto.embedded_api_v_2026_06_15.models.operations.GetReportsRequestUuidRequest; import com.gusto.embedded_api_v_2026_06_15.models.operations.GetReportsRequestUuidRequestBuilder; import com.gusto.embedded_api_v_2026_06_15.models.operations.GetReportsRequestUuidResponse; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1BulkReportsRequestUuidRequest; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1BulkReportsRequestUuidRequestBuilder; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1BulkReportsRequestUuidResponse; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1BulkReportsRequestUuidSecurity; import com.gusto.embedded_api_v_2026_06_15.models.operations.PostCompaniesCompanyUuidReportsHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2026_06_15.models.operations.PostCompaniesCompanyUuidReportsRequest; import com.gusto.embedded_api_v_2026_06_15.models.operations.PostCompaniesCompanyUuidReportsRequestBuilder; @@ -23,6 +29,11 @@ import com.gusto.embedded_api_v_2026_06_15.models.operations.PostPayrollsPayrollUuidReportsGeneralLedgerRequest; import com.gusto.embedded_api_v_2026_06_15.models.operations.PostPayrollsPayrollUuidReportsGeneralLedgerRequestBuilder; import com.gusto.embedded_api_v_2026_06_15.models.operations.PostPayrollsPayrollUuidReportsGeneralLedgerResponse; +import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1BulkReportsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1BulkReportsRequest; +import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1BulkReportsRequestBuilder; +import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1BulkReportsResponse; +import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1BulkReportsSecurity; import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequest; import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageRequestBody; @@ -30,8 +41,10 @@ import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWageResponse; import com.gusto.embedded_api_v_2026_06_15.operations.GetCompaniesCompanyUuidReportTemplatesReportType; import com.gusto.embedded_api_v_2026_06_15.operations.GetReportsRequestUuid; +import com.gusto.embedded_api_v_2026_06_15.operations.GetV1BulkReportsRequestUuid; import com.gusto.embedded_api_v_2026_06_15.operations.PostCompaniesCompanyUuidReports; import com.gusto.embedded_api_v_2026_06_15.operations.PostPayrollsPayrollUuidReportsGeneralLedger; +import com.gusto.embedded_api_v_2026_06_15.operations.PostV1BulkReports; import com.gusto.embedded_api_v_2026_06_15.operations.PostV1CompaniesCompanyIdReportsEmployeesAnnualFicaWage; import com.gusto.embedded_api_v_2026_06_15.utils.Headers; import java.lang.String; @@ -57,6 +70,190 @@ public AsyncReports async() { return asyncSDK; } + /** + * Create a bulk report batch + * + *

    Triggers asynchronous generation of up to 25 reports across companies the partner is mapped to. Each + * `batch` item is a `custom_report` (same parameters as [create a custom + * report](https://docs.gusto.com/embedded-payroll/reference/post-companies-company_uuid-reports)) or a + * `general_ledger` report (same parameters as [create a general ledger + * report](https://docs.gusto.com/embedded-payroll/reference/post-payrolls-payroll_uuid-reports-general_ledger)), + * keyed by `company_uuid` and `report_type`. Items are validated synchronously; if any is invalid, the + * entire batch is rejected. + * + *

    Poll the [bulk report GET + * endpoint](https://docs.gusto.com/embedded-payroll/reference/get-v1-bulk_reports-request_uuid) with + * the returned `uuid` for status and the report URL, which is valid for 10 minutes. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `company_reports:write` + * + * @return The call builder + */ + public PostV1BulkReportsRequestBuilder postV1BulkReports() { + return new PostV1BulkReportsRequestBuilder(sdkConfiguration); + } + + /** + * Create a bulk report batch + * + *

    Triggers asynchronous generation of up to 25 reports across companies the partner is mapped to. Each + * `batch` item is a `custom_report` (same parameters as [create a custom + * report](https://docs.gusto.com/embedded-payroll/reference/post-companies-company_uuid-reports)) or a + * `general_ledger` report (same parameters as [create a general ledger + * report](https://docs.gusto.com/embedded-payroll/reference/post-payrolls-payroll_uuid-reports-general_ledger)), + * keyed by `company_uuid` and `report_type`. Items are validated synchronously; if any is invalid, the + * entire batch is rejected. + * + *

    Poll the [bulk report GET + * endpoint](https://docs.gusto.com/embedded-payroll/reference/get-v1-bulk_reports-request_uuid) with + * the returned `uuid` for status and the report URL, which is valid for 10 minutes. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `company_reports:write` + * + * @param security The security details to use for authentication. + * @param bulkReportBody Each `batch` item is a `custom_report` or a `general_ledger` report. + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public PostV1BulkReportsResponse postV1BulkReports(PostV1BulkReportsSecurity security, BulkReportBody bulkReportBody) { + return postV1BulkReports(security, Optional.empty(), bulkReportBody); + } + + /** + * Create a bulk report batch + * + *

    Triggers asynchronous generation of up to 25 reports across companies the partner is mapped to. Each + * `batch` item is a `custom_report` (same parameters as [create a custom + * report](https://docs.gusto.com/embedded-payroll/reference/post-companies-company_uuid-reports)) or a + * `general_ledger` report (same parameters as [create a general ledger + * report](https://docs.gusto.com/embedded-payroll/reference/post-payrolls-payroll_uuid-reports-general_ledger)), + * keyed by `company_uuid` and `report_type`. Items are validated synchronously; if any is invalid, the + * entire batch is rejected. + * + *

    Poll the [bulk report GET + * endpoint](https://docs.gusto.com/embedded-payroll/reference/get-v1-bulk_reports-request_uuid) with + * the returned `uuid` for status and the report URL, which is valid for 10 minutes. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `company_reports:write` + * + * @param security The security details to use for authentication. + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param bulkReportBody Each `batch` item is a `custom_report` or a `general_ledger` report. + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public PostV1BulkReportsResponse postV1BulkReports( + PostV1BulkReportsSecurity security, Optional xGustoAPIVersion, + BulkReportBody bulkReportBody) { + PostV1BulkReportsRequest request = + PostV1BulkReportsRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .bulkReportBody(bulkReportBody) + .build(); + RequestOperation operation + = new PostV1BulkReports.Sync(sdkConfiguration, security, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + + /** + * Get a bulk report batch + * + *

    Get a bulk report batch's status and results given the `request_uuid`. While in progress, only batch + * metadata is returned; once complete, it also includes a signed `report_url` (a zip of all generated + * reports, valid for 10 minutes) and a per-company breakdown. + * + *

    Reports containing PHI are inaccessible with `company_reports:read:tier_2_only` data scope. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `company_reports:read` + * + * @return The call builder + */ + public GetV1BulkReportsRequestUuidRequestBuilder getV1BulkReportsRequestUuid() { + return new GetV1BulkReportsRequestUuidRequestBuilder(sdkConfiguration); + } + + /** + * Get a bulk report batch + * + *

    Get a bulk report batch's status and results given the `request_uuid`. While in progress, only batch + * metadata is returned; once complete, it also includes a signed `report_url` (a zip of all generated + * reports, valid for 10 minutes) and a per-company breakdown. + * + *

    Reports containing PHI are inaccessible with `company_reports:read:tier_2_only` data scope. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `company_reports:read` + * + * @param security The security details to use for authentication. + * @param requestUuid The UUID of the bulk report batch. + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1BulkReportsRequestUuidResponse getV1BulkReportsRequestUuid(GetV1BulkReportsRequestUuidSecurity security, String requestUuid) { + return getV1BulkReportsRequestUuid(security, Optional.empty(), requestUuid); + } + + /** + * Get a bulk report batch + * + *

    Get a bulk report batch's status and results given the `request_uuid`. While in progress, only batch + * metadata is returned; once complete, it also includes a signed `report_url` (a zip of all generated + * reports, valid for 10 minutes) and a per-company breakdown. + * + *

    Reports containing PHI are inaccessible with `company_reports:read:tier_2_only` data scope. + * + *

    📘 System Access Authentication + * + *

    This endpoint uses the [Bearer Auth scheme with the system-level access token in the HTTP + * Authorization header](https://docs.gusto.com/embedded-payroll/docs/system-access) + * + *

    scope: `company_reports:read` + * + * @param security The security details to use for authentication. + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param requestUuid The UUID of the bulk report batch. + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetV1BulkReportsRequestUuidResponse getV1BulkReportsRequestUuid( + GetV1BulkReportsRequestUuidSecurity security, Optional xGustoAPIVersion, + String requestUuid) { + GetV1BulkReportsRequestUuidRequest request = + GetV1BulkReportsRequestUuidRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .requestUuid(requestUuid) + .build(); + RequestOperation operation + = new GetV1BulkReportsRequestUuid.Sync(sdkConfiguration, security, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + /** * Create an employees annual FICA wage report * diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/ReverseWireTransactions.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/ReverseWireTransactions.java new file mode 100644 index 000000000..9546e61d1 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/ReverseWireTransactions.java @@ -0,0 +1,74 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15; + +import static com.gusto.embedded_api_v_2026_06_15.operations.Operations.RequestOperation; + +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetReverseWireTransactionsRequest; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetReverseWireTransactionsRequestBuilder; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetReverseWireTransactionsResponse; +import com.gusto.embedded_api_v_2026_06_15.operations.GetReverseWireTransactions; +import com.gusto.embedded_api_v_2026_06_15.utils.Headers; + + +public class ReverseWireTransactions { + private static final Headers _headers = Headers.EMPTY; + private final SDKConfiguration sdkConfiguration; + private final AsyncReverseWireTransactions asyncSDK; + + ReverseWireTransactions(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + this.asyncSDK = new AsyncReverseWireTransactions(this, sdkConfiguration); + } + + /** + * Switches to the async SDK. + * + * @return The async SDK + */ + public AsyncReverseWireTransactions async() { + return asyncSDK; + } + + /** + * Get all reverse wire transactions for a company + * + *

    Returns a paginated list of reverse wire (drawdown) transactions for a company. Reverse wires are + * debit transactions initiated by Gusto to pull funds from a partner's bank account to cover payroll + * or contractor payment obligations. Pagination is returned via the `x-page`, `x-per-page`, + * `x-total-count`, and `x-total-pages` response headers. + * + *

    scope: `reverse_wire_transactions:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public GetReverseWireTransactionsRequestBuilder getReverseWireTransactions() { + return new GetReverseWireTransactionsRequestBuilder(sdkConfiguration); + } + + /** + * Get all reverse wire transactions for a company + * + *

    Returns a paginated list of reverse wire (drawdown) transactions for a company. Reverse wires are + * debit transactions initiated by Gusto to pull funds from a partner's bank account to cover payroll + * or contractor payment obligations. Pagination is returned via the `x-page`, `x-per-page`, + * `x-total-count`, and `x-total-pages` response headers. + * + *

    scope: `reverse_wire_transactions:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param request The request object containing all the parameters for the API call. + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetReverseWireTransactionsResponse getReverseWireTransactions(GetReverseWireTransactionsRequest request) { + RequestOperation operation + = new GetReverseWireTransactions.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/SDKConfiguration.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/SDKConfiguration.java index 3b20440f1..f45bb2552 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/SDKConfiguration.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/SDKConfiguration.java @@ -19,8 +19,8 @@ public class SDKConfiguration { private static final String LANGUAGE = "java"; public static final String OPENAPI_DOC_VERSION = "2026-06-15"; - public static final String SDK_VERSION = "0.0.1"; - public static final String GEN_VERSION = "2.889.1"; + public static final String SDK_VERSION = "0.1.0"; + public static final String GEN_VERSION = "2.935.1"; private static final String BASE_PACKAGE = "com.gusto.embedded_api_v_2026_06_15"; public static final String USER_AGENT = String.format("speakeasy-sdk/%s %s %s %s %s", diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/Signatories.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/Signatories.java index 2dea00744..5e5dfe872 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/Signatories.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/Signatories.java @@ -92,7 +92,7 @@ public GetV1CompaniesCompanyUuidSignatoriesRequestBuilder list() { * @throws RuntimeException subclass if the API call fails */ public GetV1CompaniesCompanyUuidSignatoriesResponse list(String companyUuid) { - return list(companyUuid, Optional.empty()); + return list(Optional.empty(), companyUuid); } /** @@ -107,17 +107,17 @@ public GetV1CompaniesCompanyUuidSignatoriesResponse list(String companyUuid) { * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1CompaniesCompanyUuidSignatoriesResponse list(String companyUuid, Optional xGustoAPIVersion) { + public GetV1CompaniesCompanyUuidSignatoriesResponse list(Optional xGustoAPIVersion, String companyUuid) { GetV1CompaniesCompanyUuidSignatoriesRequest request = GetV1CompaniesCompanyUuidSignatoriesRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) .build(); RequestOperation operation = new GetV1CompaniesCompanyUuidSignatories.Sync(sdkConfiguration, _headers); @@ -182,7 +182,7 @@ public PostV1CompanySignatoriesRequestBuilder create() { * @throws RuntimeException subclass if the API call fails */ public PostV1CompanySignatoriesResponse create(String companyUuid, SignatoryCreateRequest signatoryCreateRequest) { - return create(companyUuid, Optional.empty(), signatoryCreateRequest); + return create(Optional.empty(), companyUuid, signatoryCreateRequest); } /** @@ -208,20 +208,20 @@ public PostV1CompanySignatoriesResponse create(String companyUuid, SignatoryCrea * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company * @param signatoryCreateRequest Request body for creating a signatory with complete information. All listed required fields must be provided. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PostV1CompanySignatoriesResponse create( - String companyUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String companyUuid, SignatoryCreateRequest signatoryCreateRequest) { PostV1CompanySignatoriesRequest request = PostV1CompanySignatoriesRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) .signatoryCreateRequest(signatoryCreateRequest) .build(); RequestOperation operation @@ -271,7 +271,7 @@ public PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder invite() { * @throws RuntimeException subclass if the API call fails */ public PostV1CompaniesCompanyUuidSignatoriesInviteResponse invite(String companyUuid, SignatoryInviteRequest signatoryInviteRequest) { - return invite(companyUuid, Optional.empty(), signatoryInviteRequest); + return invite(Optional.empty(), companyUuid, signatoryInviteRequest); } /** @@ -289,20 +289,20 @@ public PostV1CompaniesCompanyUuidSignatoriesInviteResponse invite(String company * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company * @param signatoryInviteRequest Request body for inviting a signatory. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PostV1CompaniesCompanyUuidSignatoriesInviteResponse invite( - String companyUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String companyUuid, SignatoryInviteRequest signatoryInviteRequest) { PostV1CompaniesCompanyUuidSignatoriesInviteRequest request = PostV1CompaniesCompanyUuidSignatoriesInviteRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) .signatoryInviteRequest(signatoryInviteRequest) .build(); RequestOperation operation @@ -357,7 +357,7 @@ public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder update() public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidResponse update( String companyUuid, String signatoryUuid, SignatoryUpdateRequest signatoryUpdateRequest) { - return update(companyUuid, signatoryUuid, Optional.empty(), + return update(Optional.empty(), companyUuid, signatoryUuid, signatoryUpdateRequest); } @@ -377,22 +377,22 @@ public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidResponse update( * *

    If set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyUuid The UUID of the company * @param signatoryUuid The UUID of the signatory - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param signatoryUpdateRequest Request body for updating a signatory. Email cannot be updated. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidResponse update( - String companyUuid, String signatoryUuid, - Optional xGustoAPIVersion, SignatoryUpdateRequest signatoryUpdateRequest) { + Optional xGustoAPIVersion, String companyUuid, + String signatoryUuid, SignatoryUpdateRequest signatoryUpdateRequest) { PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest request = PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest .builder() + .xGustoAPIVersion(xGustoAPIVersion) .companyUuid(companyUuid) .signatoryUuid(signatoryUuid) - .xGustoAPIVersion(xGustoAPIVersion) .signatoryUpdateRequest(signatoryUpdateRequest) .build(); RequestOperation operation @@ -436,7 +436,7 @@ public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder delete * @throws RuntimeException subclass if the API call fails */ public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidResponse delete(String companyUuid, String signatoryUuid) { - return delete(companyUuid, signatoryUuid, Optional.empty()); + return delete(Optional.empty(), companyUuid, signatoryUuid); } /** @@ -451,21 +451,21 @@ public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidResponse delete(Strin * *

    If set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyUuid The UUID of the company * @param signatoryUuid The UUID of the signatory - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidResponse delete( - String companyUuid, String signatoryUuid, - Optional xGustoAPIVersion) { + Optional xGustoAPIVersion, String companyUuid, + String signatoryUuid) { DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest request = DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest .builder() + .xGustoAPIVersion(xGustoAPIVersion) .companyUuid(companyUuid) .signatoryUuid(signatoryUuid) - .xGustoAPIVersion(xGustoAPIVersion) .build(); RequestOperation operation = new DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuid.Sync(sdkConfiguration, _headers); diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/TaxPayments.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/TaxPayments.java new file mode 100644 index 000000000..f712a1b9f --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/TaxPayments.java @@ -0,0 +1,141 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15; + +import static com.gusto.embedded_api_v_2026_06_15.operations.Operations.RequestOperation; + +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetTaxPaymentHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetTaxPaymentRequest; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetTaxPaymentRequestBuilder; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetTaxPaymentResponse; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetTaxPaymentsRequest; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetTaxPaymentsRequestBuilder; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetTaxPaymentsResponse; +import com.gusto.embedded_api_v_2026_06_15.operations.GetTaxPayment; +import com.gusto.embedded_api_v_2026_06_15.operations.GetTaxPayments; +import com.gusto.embedded_api_v_2026_06_15.utils.Headers; +import java.lang.String; +import java.util.Optional; + + +public class TaxPayments { + private static final Headers _headers = Headers.EMPTY; + private final SDKConfiguration sdkConfiguration; + private final AsyncTaxPayments asyncSDK; + + TaxPayments(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + this.asyncSDK = new AsyncTaxPayments(this, sdkConfiguration); + } + + /** + * Switches to the async SDK. + * + * @return The async SDK + */ + public AsyncTaxPayments async() { + return asyncSDK; + } + + /** + * Get all tax payments for a company + * + *

    Fetches all tax payments Gusto has made (or scheduled) to tax agencies on behalf of a company. + * + *

    scope: `tax_payments:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public GetTaxPaymentsRequestBuilder getTaxPayments() { + return new GetTaxPaymentsRequestBuilder(sdkConfiguration); + } + + /** + * Get all tax payments for a company + * + *

    Fetches all tax payments Gusto has made (or scheduled) to tax agencies on behalf of a company. + * + *

    scope: `tax_payments:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param request The request object containing all the parameters for the API call. + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetTaxPaymentsResponse getTaxPayments(GetTaxPaymentsRequest request) { + RequestOperation operation + = new GetTaxPayments.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + + /** + * Get a tax payment for a company + * + *

    Fetches a single tax payment by UUID, including the payroll tax liabilities that make up the + * payment. + * + *

    scope: `tax_payments:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @return The call builder + */ + public GetTaxPaymentRequestBuilder getTaxPayment() { + return new GetTaxPaymentRequestBuilder(sdkConfiguration); + } + + /** + * Get a tax payment for a company + * + *

    Fetches a single tax payment by UUID, including the payroll tax liabilities that make up the + * payment. + * + *

    scope: `tax_payments:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param companyUuid The UUID of the company + * @param uuid The UUID of the tax payment + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetTaxPaymentResponse getTaxPayment(String companyUuid, String uuid) { + return getTaxPayment(Optional.empty(), companyUuid, uuid); + } + + /** + * Get a tax payment for a company + * + *

    Fetches a single tax payment by UUID, including the payroll tax liabilities that make up the + * payment. + * + *

    scope: `tax_payments:read` + * + *

    If set, this operation will use Security#companyAccessAuth from the global security. + * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company + * @param uuid The UUID of the tax payment + * @return The response from the API call + * @throws RuntimeException subclass if the API call fails + */ + public GetTaxPaymentResponse getTaxPayment( + Optional xGustoAPIVersion, String companyUuid, + String uuid) { + GetTaxPaymentRequest request = + GetTaxPaymentRequest + .builder() + .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) + .uuid(uuid) + .build(); + RequestOperation operation + = new GetTaxPayment.Sync(sdkConfiguration, _headers); + return operation.handleResponse(operation.doRequest(request)); + } + +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/TaxRequirements.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/TaxRequirements.java index c289d1f72..ca58509f6 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/TaxRequirements.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/TaxRequirements.java @@ -81,7 +81,7 @@ public GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder getAll() { * @throws RuntimeException subclass if the API call fails */ public GetV1CompaniesCompanyUuidTaxRequirementsResponse getAll(String companyUuid) { - return getAll(companyUuid, Optional.empty()); + return getAll(Optional.empty(), companyUuid); } /** @@ -96,17 +96,17 @@ public GetV1CompaniesCompanyUuidTaxRequirementsResponse getAll(String companyUui * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetV1CompaniesCompanyUuidTaxRequirementsResponse getAll(String companyUuid, Optional xGustoAPIVersion) { + public GetV1CompaniesCompanyUuidTaxRequirementsResponse getAll(Optional xGustoAPIVersion, String companyUuid) { GetV1CompaniesCompanyUuidTaxRequirementsRequest request = GetV1CompaniesCompanyUuidTaxRequirementsRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) .build(); RequestOperation operation = new GetV1CompaniesCompanyUuidTaxRequirements.Sync(sdkConfiguration, _headers); @@ -155,7 +155,7 @@ public GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder get() { * @throws RuntimeException subclass if the API call fails */ public GetV1CompaniesCompanyUuidTaxRequirementsStateResponse get(String companyUuid, String state) { - return get(companyUuid, state, Optional.empty(), + return get(Optional.empty(), companyUuid, state, Optional.empty()); } @@ -174,22 +174,22 @@ public GetV1CompaniesCompanyUuidTaxRequirementsStateResponse get(String companyU * *

    If set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyUuid The UUID of the company * @param state The two-letter state abbreviation - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param scheduling When true, return "new" requirement sets with valid `effective_from` dates that are available to save new effective-dated values. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public GetV1CompaniesCompanyUuidTaxRequirementsStateResponse get( - String companyUuid, String state, - Optional xGustoAPIVersion, Optional scheduling) { + Optional xGustoAPIVersion, String companyUuid, + String state, Optional scheduling) { GetV1CompaniesCompanyUuidTaxRequirementsStateRequest request = GetV1CompaniesCompanyUuidTaxRequirementsStateRequest .builder() + .xGustoAPIVersion(xGustoAPIVersion) .companyUuid(companyUuid) .state(state) - .xGustoAPIVersion(xGustoAPIVersion) .scheduling(scheduling) .build(); RequestOperation operation @@ -250,7 +250,7 @@ public PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder updateState() public PutV1CompaniesCompanyUuidTaxRequirementsStateResponse updateState( String companyUuid, String state, PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody requestBody) { - return updateState(companyUuid, state, Optional.empty(), + return updateState(Optional.empty(), companyUuid, state, requestBody); } @@ -273,22 +273,22 @@ public PutV1CompaniesCompanyUuidTaxRequirementsStateResponse updateState( * *

    If set, this operation will use Security#companyAccessAuth from the global security. * + * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param companyUuid The UUID of the company * @param state The two-letter state abbreviation - * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PutV1CompaniesCompanyUuidTaxRequirementsStateResponse updateState( - String companyUuid, String state, - Optional xGustoAPIVersion, PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody requestBody) { + Optional xGustoAPIVersion, String companyUuid, + String state, PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody requestBody) { PutV1CompaniesCompanyUuidTaxRequirementsStateRequest request = PutV1CompaniesCompanyUuidTaxRequirementsStateRequest .builder() + .xGustoAPIVersion(xGustoAPIVersion) .companyUuid(companyUuid) .state(state) - .xGustoAPIVersion(xGustoAPIVersion) .requestBody(requestBody) .build(); RequestOperation operation diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/Webhooks.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/Webhooks.java index d03af44c2..8cc9ab513 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/Webhooks.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/Webhooks.java @@ -256,7 +256,7 @@ public GetV1WebhookSubscriptionUuidRequestBuilder getSubscription() { * @throws RuntimeException subclass if the API call fails */ public GetV1WebhookSubscriptionUuidResponse getSubscription(GetV1WebhookSubscriptionUuidSecurity security, String webhookSubscriptionUuid) { - return getSubscription(security, webhookSubscriptionUuid, Optional.empty()); + return getSubscription(security, Optional.empty(), webhookSubscriptionUuid); } /** @@ -272,19 +272,19 @@ public GetV1WebhookSubscriptionUuidResponse getSubscription(GetV1WebhookSubscrip *

    scope: `webhook_subscriptions:read` * * @param security The security details to use for authentication. - * @param webhookSubscriptionUuid The webhook subscription UUID. * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param webhookSubscriptionUuid The webhook subscription UUID. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public GetV1WebhookSubscriptionUuidResponse getSubscription( - GetV1WebhookSubscriptionUuidSecurity security, String webhookSubscriptionUuid, - Optional xGustoAPIVersion) { + GetV1WebhookSubscriptionUuidSecurity security, Optional xGustoAPIVersion, + String webhookSubscriptionUuid) { GetV1WebhookSubscriptionUuidRequest request = GetV1WebhookSubscriptionUuidRequest .builder() - .webhookSubscriptionUuid(webhookSubscriptionUuid) .xGustoAPIVersion(xGustoAPIVersion) + .webhookSubscriptionUuid(webhookSubscriptionUuid) .build(); RequestOperation operation = new GetV1WebhookSubscriptionUuid.Sync(sdkConfiguration, security, _headers); @@ -330,7 +330,7 @@ public PutV1WebhookSubscriptionUuidRequestBuilder updateSubscription() { public PutV1WebhookSubscriptionUuidResponse updateSubscription( PutV1WebhookSubscriptionUuidSecurity security, String webhookSubscriptionUuid, PutV1WebhookSubscriptionUuidRequestBody requestBody) { - return updateSubscription(security, webhookSubscriptionUuid, Optional.empty(), + return updateSubscription(security, Optional.empty(), webhookSubscriptionUuid, requestBody); } @@ -347,20 +347,20 @@ public PutV1WebhookSubscriptionUuidResponse updateSubscription( *

    scope: `webhook_subscriptions:write` * * @param security The security details to use for authentication. - * @param webhookSubscriptionUuid The webhook subscription UUID. * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param webhookSubscriptionUuid The webhook subscription UUID. * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PutV1WebhookSubscriptionUuidResponse updateSubscription( - PutV1WebhookSubscriptionUuidSecurity security, String webhookSubscriptionUuid, - Optional xGustoAPIVersion, PutV1WebhookSubscriptionUuidRequestBody requestBody) { + PutV1WebhookSubscriptionUuidSecurity security, Optional xGustoAPIVersion, + String webhookSubscriptionUuid, PutV1WebhookSubscriptionUuidRequestBody requestBody) { PutV1WebhookSubscriptionUuidRequest request = PutV1WebhookSubscriptionUuidRequest .builder() - .webhookSubscriptionUuid(webhookSubscriptionUuid) .xGustoAPIVersion(xGustoAPIVersion) + .webhookSubscriptionUuid(webhookSubscriptionUuid) .requestBody(requestBody) .build(); RequestOperation operation @@ -404,7 +404,7 @@ public DeleteV1WebhookSubscriptionUuidRequestBuilder deleteSubscription() { * @throws RuntimeException subclass if the API call fails */ public DeleteV1WebhookSubscriptionUuidResponse deleteSubscription(DeleteV1WebhookSubscriptionUuidSecurity security, String webhookSubscriptionUuid) { - return deleteSubscription(security, webhookSubscriptionUuid, Optional.empty()); + return deleteSubscription(security, Optional.empty(), webhookSubscriptionUuid); } /** @@ -420,19 +420,19 @@ public DeleteV1WebhookSubscriptionUuidResponse deleteSubscription(DeleteV1Webhoo *

    scope: `webhook_subscriptions:write` * * @param security The security details to use for authentication. - * @param webhookSubscriptionUuid The webhook subscription UUID. * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param webhookSubscriptionUuid The webhook subscription UUID. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public DeleteV1WebhookSubscriptionUuidResponse deleteSubscription( - DeleteV1WebhookSubscriptionUuidSecurity security, String webhookSubscriptionUuid, - Optional xGustoAPIVersion) { + DeleteV1WebhookSubscriptionUuidSecurity security, Optional xGustoAPIVersion, + String webhookSubscriptionUuid) { DeleteV1WebhookSubscriptionUuidRequest request = DeleteV1WebhookSubscriptionUuidRequest .builder() - .webhookSubscriptionUuid(webhookSubscriptionUuid) .xGustoAPIVersion(xGustoAPIVersion) + .webhookSubscriptionUuid(webhookSubscriptionUuid) .build(); RequestOperation operation = new DeleteV1WebhookSubscriptionUuid.Sync(sdkConfiguration, security, _headers); @@ -475,7 +475,7 @@ public GetV1WebhookSubscriptionVerificationTokenUuidRequestBuilder requestVerifi * @throws RuntimeException subclass if the API call fails */ public GetV1WebhookSubscriptionVerificationTokenUuidResponse requestVerificationToken(GetV1WebhookSubscriptionVerificationTokenUuidSecurity security, String webhookSubscriptionUuid) { - return requestVerificationToken(security, webhookSubscriptionUuid, Optional.empty()); + return requestVerificationToken(security, Optional.empty(), webhookSubscriptionUuid); } /** @@ -491,19 +491,19 @@ public GetV1WebhookSubscriptionVerificationTokenUuidResponse requestVerification *

    scope: `webhook_subscriptions:read` * * @param security The security details to use for authentication. - * @param webhookSubscriptionUuid The webhook subscription UUID. * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param webhookSubscriptionUuid The webhook subscription UUID. * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public GetV1WebhookSubscriptionVerificationTokenUuidResponse requestVerificationToken( - GetV1WebhookSubscriptionVerificationTokenUuidSecurity security, String webhookSubscriptionUuid, - Optional xGustoAPIVersion) { + GetV1WebhookSubscriptionVerificationTokenUuidSecurity security, Optional xGustoAPIVersion, + String webhookSubscriptionUuid) { GetV1WebhookSubscriptionVerificationTokenUuidRequest request = GetV1WebhookSubscriptionVerificationTokenUuidRequest .builder() - .webhookSubscriptionUuid(webhookSubscriptionUuid) .xGustoAPIVersion(xGustoAPIVersion) + .webhookSubscriptionUuid(webhookSubscriptionUuid) .build(); RequestOperation operation = new GetV1WebhookSubscriptionVerificationTokenUuid.Sync(sdkConfiguration, security, _headers); @@ -559,7 +559,7 @@ public PutV1VerifyWebhookSubscriptionUuidRequestBuilder verify() { public PutV1VerifyWebhookSubscriptionUuidResponse verify( PutV1VerifyWebhookSubscriptionUuidSecurity security, String webhookSubscriptionUuid, PutV1VerifyWebhookSubscriptionUuidRequestBody requestBody) { - return verify(security, webhookSubscriptionUuid, Optional.empty(), + return verify(security, Optional.empty(), webhookSubscriptionUuid, requestBody); } @@ -581,20 +581,20 @@ public PutV1VerifyWebhookSubscriptionUuidResponse verify( *

    scope: `webhook_subscriptions:write` * * @param security The security details to use for authentication. - * @param webhookSubscriptionUuid The webhook subscription UUID. * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param webhookSubscriptionUuid The webhook subscription UUID. * @param requestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PutV1VerifyWebhookSubscriptionUuidResponse verify( - PutV1VerifyWebhookSubscriptionUuidSecurity security, String webhookSubscriptionUuid, - Optional xGustoAPIVersion, PutV1VerifyWebhookSubscriptionUuidRequestBody requestBody) { + PutV1VerifyWebhookSubscriptionUuidSecurity security, Optional xGustoAPIVersion, + String webhookSubscriptionUuid, PutV1VerifyWebhookSubscriptionUuidRequestBody requestBody) { PutV1VerifyWebhookSubscriptionUuidRequest request = PutV1VerifyWebhookSubscriptionUuidRequest .builder() - .webhookSubscriptionUuid(webhookSubscriptionUuid) .xGustoAPIVersion(xGustoAPIVersion) + .webhookSubscriptionUuid(webhookSubscriptionUuid) .requestBody(requestBody) .build(); RequestOperation operation diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/WireInRequests.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/WireInRequests.java index 409d6eaac..50a3f96eb 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/WireInRequests.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/WireInRequests.java @@ -75,7 +75,7 @@ public GetWireInRequestsWireInRequestUuidRequestBuilder get() { * @throws RuntimeException subclass if the API call fails */ public GetWireInRequestsWireInRequestUuidResponse get(String wireInRequestUuid) { - return get(wireInRequestUuid, Optional.empty()); + return get(Optional.empty(), wireInRequestUuid); } /** @@ -87,17 +87,17 @@ public GetWireInRequestsWireInRequestUuidResponse get(String wireInRequestUuid) * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param wireInRequestUuid The UUID of the Wire In Request * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param wireInRequestUuid The UUID of the Wire In Request * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ - public GetWireInRequestsWireInRequestUuidResponse get(String wireInRequestUuid, Optional xGustoAPIVersion) { + public GetWireInRequestsWireInRequestUuidResponse get(Optional xGustoAPIVersion, String wireInRequestUuid) { GetWireInRequestsWireInRequestUuidRequest request = GetWireInRequestsWireInRequestUuidRequest .builder() - .wireInRequestUuid(wireInRequestUuid) .xGustoAPIVersion(xGustoAPIVersion) + .wireInRequestUuid(wireInRequestUuid) .build(); RequestOperation operation = new GetWireInRequestsWireInRequestUuid.Sync(sdkConfiguration, _headers); @@ -134,7 +134,7 @@ public PutWireInRequestsWireInRequestUuidRequestBuilder submit() { * @throws RuntimeException subclass if the API call fails */ public PutWireInRequestsWireInRequestUuidResponse submit(String wireInRequestUuid, WireInRequestUpdateRequestBody wireInRequestUpdateRequestBody) { - return submit(wireInRequestUuid, Optional.empty(), wireInRequestUpdateRequestBody); + return submit(Optional.empty(), wireInRequestUuid, wireInRequestUpdateRequestBody); } /** @@ -146,20 +146,20 @@ public PutWireInRequestsWireInRequestUuidResponse submit(String wireInRequestUui * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param wireInRequestUuid The UUID of the Wire In Request * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param wireInRequestUuid The UUID of the Wire In Request * @param wireInRequestUpdateRequestBody * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public PutWireInRequestsWireInRequestUuidResponse submit( - String wireInRequestUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String wireInRequestUuid, WireInRequestUpdateRequestBody wireInRequestUpdateRequestBody) { PutWireInRequestsWireInRequestUuidRequest request = PutWireInRequestsWireInRequestUuidRequest .builder() - .wireInRequestUuid(wireInRequestUuid) .xGustoAPIVersion(xGustoAPIVersion) + .wireInRequestUuid(wireInRequestUuid) .wireInRequestUpdateRequestBody(wireInRequestUpdateRequestBody) .build(); RequestOperation operation @@ -196,7 +196,7 @@ public GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder list() { * @throws RuntimeException subclass if the API call fails */ public GetCompaniesCompanyUuidWireInRequestUuidResponse list(String companyUuid) { - return list(companyUuid, Optional.empty(), Optional.empty(), + return list(Optional.empty(), companyUuid, Optional.empty(), Optional.empty()); } @@ -209,21 +209,21 @@ public GetCompaniesCompanyUuidWireInRequestUuidResponse list(String companyUuid) * *

    If set, this operation will use Security#companyAccessAuth from the global security. * - * @param companyUuid The UUID of the company * @param xGustoAPIVersion Determines the date-based API version associated with your API call. If none is provided, your application's [minimum API version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * @param companyUuid The UUID of the company * @param page The page that is requested. When unspecified, will load all objects unless endpoint forces pagination. * @param per Number of objects per page. For majority of endpoints will default to 25 * @return The response from the API call * @throws RuntimeException subclass if the API call fails */ public GetCompaniesCompanyUuidWireInRequestUuidResponse list( - String companyUuid, Optional xGustoAPIVersion, + Optional xGustoAPIVersion, String companyUuid, Optional page, Optional per) { GetCompaniesCompanyUuidWireInRequestUuidRequest request = GetCompaniesCompanyUuidWireInRequestUuidRequest .builder() - .companyUuid(companyUuid) .xGustoAPIVersion(xGustoAPIVersion) + .companyUuid(companyUuid) .page(page) .per(per) .build(); diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/Aggregation.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/Aggregation.java index 16cd89b07..54e4c36c9 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/Aggregation.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/Aggregation.java @@ -11,7 +11,7 @@ /** * Aggregation * - *

    The breakdown of the report. Use 'default' for no split. + *

    The breakdown of the report. Use `default` for no split. */ public enum Aggregation { DEFAULT("default"), diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/BatchAction.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/BatchAction.java index 3f791bf9b..2927b8238 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/BatchAction.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/BatchAction.java @@ -14,7 +14,7 @@ *

    The action being performed on the batch. */ public enum BatchAction { - CREATE("create"); + CANCEL("cancel"); @JsonValue private final String value; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/Blockers.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/Blockers.java index 84dfd14ac..a04cfc683 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/Blockers.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/Blockers.java @@ -11,52 +11,73 @@ import com.gusto.embedded_api_v_2026_06_15.utils.Utils; import java.lang.Override; import java.lang.String; +import java.lang.SuppressWarnings; import java.util.Optional; public class Blockers { /** - * A machine-readable blocker key (e.g. `missing_bank_account`). + * The employee field affected. */ @JsonInclude(Include.NON_ABSENT) - @JsonProperty("type") - private Optional type; + @JsonProperty("field") + private Optional field; + + /** + * Category of the blocker. See the array-level description for resolution guidance. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("category") + private Optional category; /** * Human-readable description of the blocker. */ @JsonInclude(Include.NON_ABSENT) - @JsonProperty("description") - private Optional description; + @JsonProperty("message") + private Optional message; @JsonCreator public Blockers( - @JsonProperty("type") Optional type, - @JsonProperty("description") Optional description) { - Utils.checkNotNull(type, "type"); - Utils.checkNotNull(description, "description"); - this.type = type; - this.description = description; + @JsonProperty("field") Optional field, + @JsonProperty("category") Optional category, + @JsonProperty("message") Optional message) { + Utils.checkNotNull(field, "field"); + Utils.checkNotNull(category, "category"); + Utils.checkNotNull(message, "message"); + this.field = field; + this.category = category; + this.message = message; } public Blockers() { - this(Optional.empty(), Optional.empty()); + this(Optional.empty(), Optional.empty(), Optional.empty()); + } + + /** + * The employee field affected. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional field() { + return (Optional) field; } /** - * A machine-readable blocker key (e.g. `missing_bank_account`). + * Category of the blocker. See the array-level description for resolution guidance. */ + @SuppressWarnings("unchecked") @JsonIgnore - public Optional type() { - return type; + public Optional category() { + return (Optional) category; } /** * Human-readable description of the blocker. */ @JsonIgnore - public Optional description() { - return description; + public Optional message() { + return message; } public static Builder builder() { @@ -65,30 +86,49 @@ public static Builder builder() { /** - * A machine-readable blocker key (e.g. `missing_bank_account`). + * The employee field affected. + */ + public Blockers withField(Field field) { + Utils.checkNotNull(field, "field"); + this.field = Optional.ofNullable(field); + return this; + } + + + /** + * The employee field affected. + */ + public Blockers withField(Optional field) { + Utils.checkNotNull(field, "field"); + this.field = field; + return this; + } + + /** + * Category of the blocker. See the array-level description for resolution guidance. */ - public Blockers withType(String type) { - Utils.checkNotNull(type, "type"); - this.type = Optional.ofNullable(type); + public Blockers withCategory(EmployeeOnboardingStatusCategory category) { + Utils.checkNotNull(category, "category"); + this.category = Optional.ofNullable(category); return this; } /** - * A machine-readable blocker key (e.g. `missing_bank_account`). + * Category of the blocker. See the array-level description for resolution guidance. */ - public Blockers withType(Optional type) { - Utils.checkNotNull(type, "type"); - this.type = type; + public Blockers withCategory(Optional category) { + Utils.checkNotNull(category, "category"); + this.category = category; return this; } /** * Human-readable description of the blocker. */ - public Blockers withDescription(String description) { - Utils.checkNotNull(description, "description"); - this.description = Optional.ofNullable(description); + public Blockers withMessage(String message) { + Utils.checkNotNull(message, "message"); + this.message = Optional.ofNullable(message); return this; } @@ -96,9 +136,9 @@ public Blockers withDescription(String description) { /** * Human-readable description of the blocker. */ - public Blockers withDescription(Optional description) { - Utils.checkNotNull(description, "description"); - this.description = description; + public Blockers withMessage(Optional message) { + Utils.checkNotNull(message, "message"); + this.message = message; return this; } @@ -112,29 +152,33 @@ public boolean equals(java.lang.Object o) { } Blockers other = (Blockers) o; return - Utils.enhancedDeepEquals(this.type, other.type) && - Utils.enhancedDeepEquals(this.description, other.description); + Utils.enhancedDeepEquals(this.field, other.field) && + Utils.enhancedDeepEquals(this.category, other.category) && + Utils.enhancedDeepEquals(this.message, other.message); } @Override public int hashCode() { return Utils.enhancedHash( - type, description); + field, category, message); } @Override public String toString() { return Utils.toString(Blockers.class, - "type", type, - "description", description); + "field", field, + "category", category, + "message", message); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private Optional type = Optional.empty(); + private Optional field = Optional.empty(); - private Optional description = Optional.empty(); + private Optional category = Optional.empty(); + + private Optional message = Optional.empty(); private Builder() { // force use of static builder() method @@ -142,20 +186,39 @@ private Builder() { /** - * A machine-readable blocker key (e.g. `missing_bank_account`). + * The employee field affected. + */ + public Builder field(Field field) { + Utils.checkNotNull(field, "field"); + this.field = Optional.ofNullable(field); + return this; + } + + /** + * The employee field affected. + */ + public Builder field(Optional field) { + Utils.checkNotNull(field, "field"); + this.field = field; + return this; + } + + + /** + * Category of the blocker. See the array-level description for resolution guidance. */ - public Builder type(String type) { - Utils.checkNotNull(type, "type"); - this.type = Optional.ofNullable(type); + public Builder category(EmployeeOnboardingStatusCategory category) { + Utils.checkNotNull(category, "category"); + this.category = Optional.ofNullable(category); return this; } /** - * A machine-readable blocker key (e.g. `missing_bank_account`). + * Category of the blocker. See the array-level description for resolution guidance. */ - public Builder type(Optional type) { - Utils.checkNotNull(type, "type"); - this.type = type; + public Builder category(Optional category) { + Utils.checkNotNull(category, "category"); + this.category = category; return this; } @@ -163,25 +226,25 @@ public Builder type(Optional type) { /** * Human-readable description of the blocker. */ - public Builder description(String description) { - Utils.checkNotNull(description, "description"); - this.description = Optional.ofNullable(description); + public Builder message(String message) { + Utils.checkNotNull(message, "message"); + this.message = Optional.ofNullable(message); return this; } /** * Human-readable description of the blocker. */ - public Builder description(Optional description) { - Utils.checkNotNull(description, "description"); - this.description = description; + public Builder message(Optional message) { + Utils.checkNotNull(message, "message"); + this.message = message; return this; } public Blockers build() { return new Blockers( - type, description); + field, category, message); } } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/BulkReport.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/BulkReport.java new file mode 100644 index 000000000..8ab44c930 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/BulkReport.java @@ -0,0 +1,559 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Long; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.time.OffsetDateTime; +import java.util.List; +import java.util.Optional; +import org.openapitools.jackson.nullable.JsonNullable; + + +public class BulkReport { + /** + * Unique identifier of the bulk report batch. + */ + @JsonProperty("uuid") + private String uuid; + + /** + * Overall batch status. `pending`/`processing` while in progress; once finished, `success` (all + * reports succeeded), `partial_success` (some succeeded, some failed), or `failed` (none succeeded). + */ + @JsonProperty("status") + private BulkReportStatus status; + + /** + * When the batch was accepted. + */ + @JsonProperty("submitted_at") + private OffsetDateTime submittedAt; + + /** + * When the batch reached a terminal state. Null while non-terminal. + */ + @JsonInclude(Include.ALWAYS) + @JsonProperty("completed_at") + private Optional completedAt; + + /** + * How many reports the partner asked for in this batch. + */ + @JsonProperty("submitted_items") + private long submittedItems; + + /** + * UUID of the partner that owns this batch. Returned only once the batch has finished; omitted while + * in progress. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("partner_uuid") + private Optional partnerUuid; + + /** + * How many reports succeeded. Returned only once the batch has finished; omitted while in progress. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("processed_items") + private Optional processedItems; + + /** + * Signed S3 URL to a zip containing every successfully-generated report, valid for 10 minutes. + * Returned only once the batch has finished; omitted while in progress. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("report_url") + private JsonNullable reportUrl; + + /** + * Per-company breakdown. Returned only once the batch has finished; omitted while in progress. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("companies") + private Optional> companies; + + @JsonCreator + public BulkReport( + @JsonProperty("uuid") String uuid, + @JsonProperty("status") BulkReportStatus status, + @JsonProperty("submitted_at") OffsetDateTime submittedAt, + @JsonProperty("completed_at") Optional completedAt, + @JsonProperty("submitted_items") long submittedItems, + @JsonProperty("partner_uuid") Optional partnerUuid, + @JsonProperty("processed_items") Optional processedItems, + @JsonProperty("report_url") JsonNullable reportUrl, + @JsonProperty("companies") Optional> companies) { + Utils.checkNotNull(uuid, "uuid"); + Utils.checkNotNull(status, "status"); + Utils.checkNotNull(submittedAt, "submittedAt"); + Utils.checkNotNull(completedAt, "completedAt"); + Utils.checkNotNull(submittedItems, "submittedItems"); + Utils.checkNotNull(partnerUuid, "partnerUuid"); + Utils.checkNotNull(processedItems, "processedItems"); + Utils.checkNotNull(reportUrl, "reportUrl"); + Utils.checkNotNull(companies, "companies"); + this.uuid = uuid; + this.status = status; + this.submittedAt = submittedAt; + this.completedAt = completedAt; + this.submittedItems = submittedItems; + this.partnerUuid = partnerUuid; + this.processedItems = processedItems; + this.reportUrl = reportUrl; + this.companies = companies; + } + + public BulkReport( + String uuid, + BulkReportStatus status, + OffsetDateTime submittedAt, + long submittedItems) { + this(uuid, status, submittedAt, + Optional.empty(), submittedItems, Optional.empty(), + Optional.empty(), JsonNullable.undefined(), Optional.empty()); + } + + /** + * Unique identifier of the bulk report batch. + */ + @JsonIgnore + public String uuid() { + return uuid; + } + + /** + * Overall batch status. `pending`/`processing` while in progress; once finished, `success` (all + * reports succeeded), `partial_success` (some succeeded, some failed), or `failed` (none succeeded). + */ + @JsonIgnore + public BulkReportStatus status() { + return status; + } + + /** + * When the batch was accepted. + */ + @JsonIgnore + public OffsetDateTime submittedAt() { + return submittedAt; + } + + /** + * When the batch reached a terminal state. Null while non-terminal. + */ + @JsonIgnore + public Optional completedAt() { + return completedAt; + } + + /** + * How many reports the partner asked for in this batch. + */ + @JsonIgnore + public long submittedItems() { + return submittedItems; + } + + /** + * UUID of the partner that owns this batch. Returned only once the batch has finished; omitted while + * in progress. + */ + @JsonIgnore + public Optional partnerUuid() { + return partnerUuid; + } + + /** + * How many reports succeeded. Returned only once the batch has finished; omitted while in progress. + */ + @JsonIgnore + public Optional processedItems() { + return processedItems; + } + + /** + * Signed S3 URL to a zip containing every successfully-generated report, valid for 10 minutes. + * Returned only once the batch has finished; omitted while in progress. + */ + @JsonIgnore + public JsonNullable reportUrl() { + return reportUrl; + } + + /** + * Per-company breakdown. Returned only once the batch has finished; omitted while in progress. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> companies() { + return (Optional>) companies; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Unique identifier of the bulk report batch. + */ + public BulkReport withUuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + /** + * Overall batch status. `pending`/`processing` while in progress; once finished, `success` (all + * reports succeeded), `partial_success` (some succeeded, some failed), or `failed` (none succeeded). + */ + public BulkReport withStatus(BulkReportStatus status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + /** + * When the batch was accepted. + */ + public BulkReport withSubmittedAt(OffsetDateTime submittedAt) { + Utils.checkNotNull(submittedAt, "submittedAt"); + this.submittedAt = submittedAt; + return this; + } + + /** + * When the batch reached a terminal state. Null while non-terminal. + */ + public BulkReport withCompletedAt(OffsetDateTime completedAt) { + Utils.checkNotNull(completedAt, "completedAt"); + this.completedAt = Optional.ofNullable(completedAt); + return this; + } + + + /** + * When the batch reached a terminal state. Null while non-terminal. + */ + public BulkReport withCompletedAt(Optional completedAt) { + Utils.checkNotNull(completedAt, "completedAt"); + this.completedAt = completedAt; + return this; + } + + /** + * How many reports the partner asked for in this batch. + */ + public BulkReport withSubmittedItems(long submittedItems) { + Utils.checkNotNull(submittedItems, "submittedItems"); + this.submittedItems = submittedItems; + return this; + } + + /** + * UUID of the partner that owns this batch. Returned only once the batch has finished; omitted while + * in progress. + */ + public BulkReport withPartnerUuid(String partnerUuid) { + Utils.checkNotNull(partnerUuid, "partnerUuid"); + this.partnerUuid = Optional.ofNullable(partnerUuid); + return this; + } + + + /** + * UUID of the partner that owns this batch. Returned only once the batch has finished; omitted while + * in progress. + */ + public BulkReport withPartnerUuid(Optional partnerUuid) { + Utils.checkNotNull(partnerUuid, "partnerUuid"); + this.partnerUuid = partnerUuid; + return this; + } + + /** + * How many reports succeeded. Returned only once the batch has finished; omitted while in progress. + */ + public BulkReport withProcessedItems(long processedItems) { + Utils.checkNotNull(processedItems, "processedItems"); + this.processedItems = Optional.ofNullable(processedItems); + return this; + } + + + /** + * How many reports succeeded. Returned only once the batch has finished; omitted while in progress. + */ + public BulkReport withProcessedItems(Optional processedItems) { + Utils.checkNotNull(processedItems, "processedItems"); + this.processedItems = processedItems; + return this; + } + + /** + * Signed S3 URL to a zip containing every successfully-generated report, valid for 10 minutes. + * Returned only once the batch has finished; omitted while in progress. + */ + public BulkReport withReportUrl(String reportUrl) { + Utils.checkNotNull(reportUrl, "reportUrl"); + this.reportUrl = JsonNullable.of(reportUrl); + return this; + } + + /** + * Signed S3 URL to a zip containing every successfully-generated report, valid for 10 minutes. + * Returned only once the batch has finished; omitted while in progress. + */ + public BulkReport withReportUrl(JsonNullable reportUrl) { + Utils.checkNotNull(reportUrl, "reportUrl"); + this.reportUrl = reportUrl; + return this; + } + + /** + * Per-company breakdown. Returned only once the batch has finished; omitted while in progress. + */ + public BulkReport withCompanies(List companies) { + Utils.checkNotNull(companies, "companies"); + this.companies = Optional.ofNullable(companies); + return this; + } + + + /** + * Per-company breakdown. Returned only once the batch has finished; omitted while in progress. + */ + public BulkReport withCompanies(Optional> companies) { + Utils.checkNotNull(companies, "companies"); + this.companies = companies; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + BulkReport other = (BulkReport) o; + return + Utils.enhancedDeepEquals(this.uuid, other.uuid) && + Utils.enhancedDeepEquals(this.status, other.status) && + Utils.enhancedDeepEquals(this.submittedAt, other.submittedAt) && + Utils.enhancedDeepEquals(this.completedAt, other.completedAt) && + Utils.enhancedDeepEquals(this.submittedItems, other.submittedItems) && + Utils.enhancedDeepEquals(this.partnerUuid, other.partnerUuid) && + Utils.enhancedDeepEquals(this.processedItems, other.processedItems) && + Utils.enhancedDeepEquals(this.reportUrl, other.reportUrl) && + Utils.enhancedDeepEquals(this.companies, other.companies); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + uuid, status, submittedAt, + completedAt, submittedItems, partnerUuid, + processedItems, reportUrl, companies); + } + + @Override + public String toString() { + return Utils.toString(BulkReport.class, + "uuid", uuid, + "status", status, + "submittedAt", submittedAt, + "completedAt", completedAt, + "submittedItems", submittedItems, + "partnerUuid", partnerUuid, + "processedItems", processedItems, + "reportUrl", reportUrl, + "companies", companies); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String uuid; + + private BulkReportStatus status; + + private OffsetDateTime submittedAt; + + private Optional completedAt = Optional.empty(); + + private Long submittedItems; + + private Optional partnerUuid = Optional.empty(); + + private Optional processedItems = Optional.empty(); + + private JsonNullable reportUrl = JsonNullable.undefined(); + + private Optional> companies = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * Unique identifier of the bulk report batch. + */ + public Builder uuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + + /** + * Overall batch status. `pending`/`processing` while in progress; once finished, `success` (all + * reports succeeded), `partial_success` (some succeeded, some failed), or `failed` (none succeeded). + */ + public Builder status(BulkReportStatus status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + + /** + * When the batch was accepted. + */ + public Builder submittedAt(OffsetDateTime submittedAt) { + Utils.checkNotNull(submittedAt, "submittedAt"); + this.submittedAt = submittedAt; + return this; + } + + + /** + * When the batch reached a terminal state. Null while non-terminal. + */ + public Builder completedAt(OffsetDateTime completedAt) { + Utils.checkNotNull(completedAt, "completedAt"); + this.completedAt = Optional.ofNullable(completedAt); + return this; + } + + /** + * When the batch reached a terminal state. Null while non-terminal. + */ + public Builder completedAt(Optional completedAt) { + Utils.checkNotNull(completedAt, "completedAt"); + this.completedAt = completedAt; + return this; + } + + + /** + * How many reports the partner asked for in this batch. + */ + public Builder submittedItems(long submittedItems) { + Utils.checkNotNull(submittedItems, "submittedItems"); + this.submittedItems = submittedItems; + return this; + } + + + /** + * UUID of the partner that owns this batch. Returned only once the batch has finished; omitted while + * in progress. + */ + public Builder partnerUuid(String partnerUuid) { + Utils.checkNotNull(partnerUuid, "partnerUuid"); + this.partnerUuid = Optional.ofNullable(partnerUuid); + return this; + } + + /** + * UUID of the partner that owns this batch. Returned only once the batch has finished; omitted while + * in progress. + */ + public Builder partnerUuid(Optional partnerUuid) { + Utils.checkNotNull(partnerUuid, "partnerUuid"); + this.partnerUuid = partnerUuid; + return this; + } + + + /** + * How many reports succeeded. Returned only once the batch has finished; omitted while in progress. + */ + public Builder processedItems(long processedItems) { + Utils.checkNotNull(processedItems, "processedItems"); + this.processedItems = Optional.ofNullable(processedItems); + return this; + } + + /** + * How many reports succeeded. Returned only once the batch has finished; omitted while in progress. + */ + public Builder processedItems(Optional processedItems) { + Utils.checkNotNull(processedItems, "processedItems"); + this.processedItems = processedItems; + return this; + } + + + /** + * Signed S3 URL to a zip containing every successfully-generated report, valid for 10 minutes. + * Returned only once the batch has finished; omitted while in progress. + */ + public Builder reportUrl(String reportUrl) { + Utils.checkNotNull(reportUrl, "reportUrl"); + this.reportUrl = JsonNullable.of(reportUrl); + return this; + } + + /** + * Signed S3 URL to a zip containing every successfully-generated report, valid for 10 minutes. + * Returned only once the batch has finished; omitted while in progress. + */ + public Builder reportUrl(JsonNullable reportUrl) { + Utils.checkNotNull(reportUrl, "reportUrl"); + this.reportUrl = reportUrl; + return this; + } + + + /** + * Per-company breakdown. Returned only once the batch has finished; omitted while in progress. + */ + public Builder companies(List companies) { + Utils.checkNotNull(companies, "companies"); + this.companies = Optional.ofNullable(companies); + return this; + } + + /** + * Per-company breakdown. Returned only once the batch has finished; omitted while in progress. + */ + public Builder companies(Optional> companies) { + Utils.checkNotNull(companies, "companies"); + this.companies = companies; + return this; + } + + public BulkReport build() { + + return new BulkReport( + uuid, status, submittedAt, + completedAt, submittedItems, partnerUuid, + processedItems, reportUrl, companies); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/BulkReportBody.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/BulkReportBody.java new file mode 100644 index 000000000..0f66f0386 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/BulkReportBody.java @@ -0,0 +1,110 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.util.List; + +/** + * BulkReportBody + * + *

    Each `batch` item is a `custom_report` or a `general_ledger` report. + */ +public class BulkReportBody { + /** + * One report per item. Up to 25 items per batch, across any combination of companies the partner is + * mapped to. + */ + @JsonProperty("batch") + private List batch; + + @JsonCreator + public BulkReportBody( + @JsonProperty("batch") List batch) { + Utils.checkNotNull(batch, "batch"); + this.batch = batch; + } + + /** + * One report per item. Up to 25 items per batch, across any combination of companies the partner is + * mapped to. + */ + @JsonIgnore + public List batch() { + return batch; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * One report per item. Up to 25 items per batch, across any combination of companies the partner is + * mapped to. + */ + public BulkReportBody withBatch(List batch) { + Utils.checkNotNull(batch, "batch"); + this.batch = batch; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + BulkReportBody other = (BulkReportBody) o; + return + Utils.enhancedDeepEquals(this.batch, other.batch); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + batch); + } + + @Override + public String toString() { + return Utils.toString(BulkReportBody.class, + "batch", batch); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private List batch; + + private Builder() { + // force use of static builder() method + } + + + /** + * One report per item. Up to 25 items per batch, across any combination of companies the partner is + * mapped to. + */ + public Builder batch(List batch) { + Utils.checkNotNull(batch, "batch"); + this.batch = batch; + return this; + } + + public BulkReportBody build() { + + return new BulkReportBody( + batch); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/BulkReportCompany.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/BulkReportCompany.java new file mode 100644 index 000000000..299452cbd --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/BulkReportCompany.java @@ -0,0 +1,191 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.util.List; + +/** + * BulkReportCompany + * + *

    Results for a single company in a bulk report batch. + */ +public class BulkReportCompany { + /** + * UUID of the company. + */ + @JsonProperty("company_uuid") + private String companyUuid; + + /** + * This company's overall status across its `reports`: + * - `success`: every report succeeded + * - `partial_success`: some succeeded, some failed + * - `failed`: every report failed + * - `pending`: at least one report is still being generated + */ + @JsonProperty("status") + private BulkReportCompanyStatus status; + + + @JsonProperty("reports") + private List reports; + + @JsonCreator + public BulkReportCompany( + @JsonProperty("company_uuid") String companyUuid, + @JsonProperty("status") BulkReportCompanyStatus status, + @JsonProperty("reports") List reports) { + Utils.checkNotNull(companyUuid, "companyUuid"); + Utils.checkNotNull(status, "status"); + Utils.checkNotNull(reports, "reports"); + this.companyUuid = companyUuid; + this.status = status; + this.reports = reports; + } + + /** + * UUID of the company. + */ + @JsonIgnore + public String companyUuid() { + return companyUuid; + } + + /** + * This company's overall status across its `reports`: + * - `success`: every report succeeded + * - `partial_success`: some succeeded, some failed + * - `failed`: every report failed + * - `pending`: at least one report is still being generated + */ + @JsonIgnore + public BulkReportCompanyStatus status() { + return status; + } + + @JsonIgnore + public List reports() { + return reports; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * UUID of the company. + */ + public BulkReportCompany withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + /** + * This company's overall status across its `reports`: + * - `success`: every report succeeded + * - `partial_success`: some succeeded, some failed + * - `failed`: every report failed + * - `pending`: at least one report is still being generated + */ + public BulkReportCompany withStatus(BulkReportCompanyStatus status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + public BulkReportCompany withReports(List reports) { + Utils.checkNotNull(reports, "reports"); + this.reports = reports; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + BulkReportCompany other = (BulkReportCompany) o; + return + Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && + Utils.enhancedDeepEquals(this.status, other.status) && + Utils.enhancedDeepEquals(this.reports, other.reports); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + companyUuid, status, reports); + } + + @Override + public String toString() { + return Utils.toString(BulkReportCompany.class, + "companyUuid", companyUuid, + "status", status, + "reports", reports); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String companyUuid; + + private BulkReportCompanyStatus status; + + private List reports; + + private Builder() { + // force use of static builder() method + } + + + /** + * UUID of the company. + */ + public Builder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + + /** + * This company's overall status across its `reports`: + * - `success`: every report succeeded + * - `partial_success`: some succeeded, some failed + * - `failed`: every report failed + * - `pending`: at least one report is still being generated + */ + public Builder status(BulkReportCompanyStatus status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + + public Builder reports(List reports) { + Utils.checkNotNull(reports, "reports"); + this.reports = reports; + return this; + } + + public BulkReportCompany build() { + + return new BulkReportCompany( + companyUuid, status, reports); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/BulkReportCompanyStatus.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/BulkReportCompanyStatus.java new file mode 100644 index 000000000..5768eb388 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/BulkReportCompanyStatus.java @@ -0,0 +1,46 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * BulkReportCompanyStatus + * + *

    This company's overall status across its `reports`: + * - `success`: every report succeeded + * - `partial_success`: some succeeded, some failed + * - `failed`: every report failed + * - `pending`: at least one report is still being generated + */ +public enum BulkReportCompanyStatus { + PENDING("pending"), + SUCCESS("success"), + PARTIAL_SUCCESS("partial_success"), + FAILED("failed"); + + @JsonValue + private final String value; + + BulkReportCompanyStatus(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (BulkReportCompanyStatus o: BulkReportCompanyStatus.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/BulkReportCustomReportItem.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/BulkReportCustomReportItem.java new file mode 100644 index 000000000..b6e71d40f --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/BulkReportCustomReportItem.java @@ -0,0 +1,1004 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2026_06_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Boolean; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.time.LocalDate; +import java.util.List; +import java.util.Optional; +import org.openapitools.jackson.nullable.JsonNullable; + +/** + * BulkReportCustomReportItem + * + *

    A custom report entry in a bulk batch. + */ +public class BulkReportCustomReportItem implements BulkReportItem { + /** + * UUID of the company to generate the report for. The partner must be mapped to this company. + */ + @JsonProperty("company_uuid") + private String companyUuid; + + /** + * Identifies this batch item as a custom report. + */ + @JsonProperty("report_type") + private ReportType reportType; + + /** + * Columns to include in the report. + */ + @JsonProperty("columns") + private List columns; + + /** + * How to group the report. If omitted, defaults are derived from the requested `columns`. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("groupings") + private Optional> groupings; + + /** + * The type of file to generate. + */ + @JsonProperty("file_type") + private FileType fileType; + + /** + * Display name for the report. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("custom_name") + private Optional customName; + + /** + * Whether to include subtotals and grand totals. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("with_totals") + private Optional withTotals; + + /** + * Which payroll date `start_date` and `end_date` filter against. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("date_filter_type") + private Optional dateFilterType; + + /** + * Start date of data to filter by. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("start_date") + private Optional startDate; + + /** + * End date of data to filter by. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("end_date") + private Optional endDate; + + /** + * Payment method to filter by. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("payment_method") + private Optional paymentMethod; + + /** + * Employee employment type to filter by. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("employment_type") + private Optional employmentType; + + /** + * Employee employment status to filter by. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("employment_status") + private Optional employmentStatus; + + /** + * Employees to filter by. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("employee_uuids") + private JsonNullable> employeeUuids; + + /** + * Departments to filter by. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("department_uuids") + private Optional> departmentUuids; + + /** + * Work addresses to filter by. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("work_address_uuids") + private Optional> workAddressUuids; + + @JsonCreator + public BulkReportCustomReportItem( + @JsonProperty("company_uuid") String companyUuid, + @JsonProperty("report_type") ReportType reportType, + @JsonProperty("columns") List columns, + @JsonProperty("groupings") Optional> groupings, + @JsonProperty("file_type") FileType fileType, + @JsonProperty("custom_name") Optional customName, + @JsonProperty("with_totals") Optional withTotals, + @JsonProperty("date_filter_type") Optional dateFilterType, + @JsonProperty("start_date") Optional startDate, + @JsonProperty("end_date") Optional endDate, + @JsonProperty("payment_method") Optional paymentMethod, + @JsonProperty("employment_type") Optional employmentType, + @JsonProperty("employment_status") Optional employmentStatus, + @JsonProperty("employee_uuids") JsonNullable> employeeUuids, + @JsonProperty("department_uuids") Optional> departmentUuids, + @JsonProperty("work_address_uuids") Optional> workAddressUuids) { + Utils.checkNotNull(companyUuid, "companyUuid"); + Utils.checkNotNull(reportType, "reportType"); + Utils.checkNotNull(columns, "columns"); + Utils.checkNotNull(groupings, "groupings"); + Utils.checkNotNull(fileType, "fileType"); + Utils.checkNotNull(customName, "customName"); + Utils.checkNotNull(withTotals, "withTotals"); + Utils.checkNotNull(dateFilterType, "dateFilterType"); + Utils.checkNotNull(startDate, "startDate"); + Utils.checkNotNull(endDate, "endDate"); + Utils.checkNotNull(paymentMethod, "paymentMethod"); + Utils.checkNotNull(employmentType, "employmentType"); + Utils.checkNotNull(employmentStatus, "employmentStatus"); + Utils.checkNotNull(employeeUuids, "employeeUuids"); + Utils.checkNotNull(departmentUuids, "departmentUuids"); + Utils.checkNotNull(workAddressUuids, "workAddressUuids"); + this.companyUuid = companyUuid; + this.reportType = reportType; + this.columns = columns; + this.groupings = groupings; + this.fileType = fileType; + this.customName = customName; + this.withTotals = withTotals; + this.dateFilterType = dateFilterType; + this.startDate = startDate; + this.endDate = endDate; + this.paymentMethod = paymentMethod; + this.employmentType = employmentType; + this.employmentStatus = employmentStatus; + this.employeeUuids = employeeUuids; + this.departmentUuids = departmentUuids; + this.workAddressUuids = workAddressUuids; + } + + public BulkReportCustomReportItem( + String companyUuid, + ReportType reportType, + List columns, + FileType fileType) { + this(companyUuid, reportType, columns, + Optional.empty(), fileType, Optional.empty(), + Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty(), JsonNullable.undefined(), Optional.empty(), + Optional.empty()); + } + + /** + * UUID of the company to generate the report for. The partner must be mapped to this company. + */ + @JsonIgnore + public String companyUuid() { + return companyUuid; + } + + /** + * Identifies this batch item as a custom report. + */ + @JsonIgnore + @Override + public String reportType() { + return Utils.discriminatorToString(reportType); + } + + /** + * Columns to include in the report. + */ + @JsonIgnore + public List columns() { + return columns; + } + + /** + * How to group the report. If omitted, defaults are derived from the requested `columns`. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> groupings() { + return (Optional>) groupings; + } + + /** + * The type of file to generate. + */ + @JsonIgnore + public FileType fileType() { + return fileType; + } + + /** + * Display name for the report. + */ + @JsonIgnore + public Optional customName() { + return customName; + } + + /** + * Whether to include subtotals and grand totals. + */ + @JsonIgnore + public Optional withTotals() { + return withTotals; + } + + /** + * Which payroll date `start_date` and `end_date` filter against. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional dateFilterType() { + return (Optional) dateFilterType; + } + + /** + * Start date of data to filter by. + */ + @JsonIgnore + public Optional startDate() { + return startDate; + } + + /** + * End date of data to filter by. + */ + @JsonIgnore + public Optional endDate() { + return endDate; + } + + /** + * Payment method to filter by. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional paymentMethod() { + return (Optional) paymentMethod; + } + + /** + * Employee employment type to filter by. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional employmentType() { + return (Optional) employmentType; + } + + /** + * Employee employment status to filter by. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional employmentStatus() { + return (Optional) employmentStatus; + } + + /** + * Employees to filter by. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public JsonNullable> employeeUuids() { + return (JsonNullable>) employeeUuids; + } + + /** + * Departments to filter by. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> departmentUuids() { + return (Optional>) departmentUuids; + } + + /** + * Work addresses to filter by. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> workAddressUuids() { + return (Optional>) workAddressUuids; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * UUID of the company to generate the report for. The partner must be mapped to this company. + */ + public BulkReportCustomReportItem withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + /** + * Identifies this batch item as a custom report. + */ + public BulkReportCustomReportItem withReportType(ReportType reportType) { + Utils.checkNotNull(reportType, "reportType"); + this.reportType = reportType; + return this; + } + + /** + * Columns to include in the report. + */ + public BulkReportCustomReportItem withColumns(List columns) { + Utils.checkNotNull(columns, "columns"); + this.columns = columns; + return this; + } + + /** + * How to group the report. If omitted, defaults are derived from the requested `columns`. + */ + public BulkReportCustomReportItem withGroupings(List groupings) { + Utils.checkNotNull(groupings, "groupings"); + this.groupings = Optional.ofNullable(groupings); + return this; + } + + + /** + * How to group the report. If omitted, defaults are derived from the requested `columns`. + */ + public BulkReportCustomReportItem withGroupings(Optional> groupings) { + Utils.checkNotNull(groupings, "groupings"); + this.groupings = groupings; + return this; + } + + /** + * The type of file to generate. + */ + public BulkReportCustomReportItem withFileType(FileType fileType) { + Utils.checkNotNull(fileType, "fileType"); + this.fileType = fileType; + return this; + } + + /** + * Display name for the report. + */ + public BulkReportCustomReportItem withCustomName(String customName) { + Utils.checkNotNull(customName, "customName"); + this.customName = Optional.ofNullable(customName); + return this; + } + + + /** + * Display name for the report. + */ + public BulkReportCustomReportItem withCustomName(Optional customName) { + Utils.checkNotNull(customName, "customName"); + this.customName = customName; + return this; + } + + /** + * Whether to include subtotals and grand totals. + */ + public BulkReportCustomReportItem withWithTotals(boolean withTotals) { + Utils.checkNotNull(withTotals, "withTotals"); + this.withTotals = Optional.ofNullable(withTotals); + return this; + } + + + /** + * Whether to include subtotals and grand totals. + */ + public BulkReportCustomReportItem withWithTotals(Optional withTotals) { + Utils.checkNotNull(withTotals, "withTotals"); + this.withTotals = withTotals; + return this; + } + + /** + * Which payroll date `start_date` and `end_date` filter against. + */ + public BulkReportCustomReportItem withDateFilterType(DateFilterType dateFilterType) { + Utils.checkNotNull(dateFilterType, "dateFilterType"); + this.dateFilterType = Optional.ofNullable(dateFilterType); + return this; + } + + + /** + * Which payroll date `start_date` and `end_date` filter against. + */ + public BulkReportCustomReportItem withDateFilterType(Optional dateFilterType) { + Utils.checkNotNull(dateFilterType, "dateFilterType"); + this.dateFilterType = dateFilterType; + return this; + } + + /** + * Start date of data to filter by. + */ + public BulkReportCustomReportItem withStartDate(LocalDate startDate) { + Utils.checkNotNull(startDate, "startDate"); + this.startDate = Optional.ofNullable(startDate); + return this; + } + + + /** + * Start date of data to filter by. + */ + public BulkReportCustomReportItem withStartDate(Optional startDate) { + Utils.checkNotNull(startDate, "startDate"); + this.startDate = startDate; + return this; + } + + /** + * End date of data to filter by. + */ + public BulkReportCustomReportItem withEndDate(LocalDate endDate) { + Utils.checkNotNull(endDate, "endDate"); + this.endDate = Optional.ofNullable(endDate); + return this; + } + + + /** + * End date of data to filter by. + */ + public BulkReportCustomReportItem withEndDate(Optional endDate) { + Utils.checkNotNull(endDate, "endDate"); + this.endDate = endDate; + return this; + } + + /** + * Payment method to filter by. + */ + public BulkReportCustomReportItem withPaymentMethod(PaymentMethod paymentMethod) { + Utils.checkNotNull(paymentMethod, "paymentMethod"); + this.paymentMethod = Optional.ofNullable(paymentMethod); + return this; + } + + + /** + * Payment method to filter by. + */ + public BulkReportCustomReportItem withPaymentMethod(Optional paymentMethod) { + Utils.checkNotNull(paymentMethod, "paymentMethod"); + this.paymentMethod = paymentMethod; + return this; + } + + /** + * Employee employment type to filter by. + */ + public BulkReportCustomReportItem withEmploymentType(EmploymentType employmentType) { + Utils.checkNotNull(employmentType, "employmentType"); + this.employmentType = Optional.ofNullable(employmentType); + return this; + } + + + /** + * Employee employment type to filter by. + */ + public BulkReportCustomReportItem withEmploymentType(Optional employmentType) { + Utils.checkNotNull(employmentType, "employmentType"); + this.employmentType = employmentType; + return this; + } + + /** + * Employee employment status to filter by. + */ + public BulkReportCustomReportItem withEmploymentStatus(EmploymentStatus employmentStatus) { + Utils.checkNotNull(employmentStatus, "employmentStatus"); + this.employmentStatus = Optional.ofNullable(employmentStatus); + return this; + } + + + /** + * Employee employment status to filter by. + */ + public BulkReportCustomReportItem withEmploymentStatus(Optional employmentStatus) { + Utils.checkNotNull(employmentStatus, "employmentStatus"); + this.employmentStatus = employmentStatus; + return this; + } + + /** + * Employees to filter by. + */ + public BulkReportCustomReportItem withEmployeeUuids(List employeeUuids) { + Utils.checkNotNull(employeeUuids, "employeeUuids"); + this.employeeUuids = JsonNullable.of(employeeUuids); + return this; + } + + /** + * Employees to filter by. + */ + public BulkReportCustomReportItem withEmployeeUuids(JsonNullable> employeeUuids) { + Utils.checkNotNull(employeeUuids, "employeeUuids"); + this.employeeUuids = employeeUuids; + return this; + } + + /** + * Departments to filter by. + */ + public BulkReportCustomReportItem withDepartmentUuids(List departmentUuids) { + Utils.checkNotNull(departmentUuids, "departmentUuids"); + this.departmentUuids = Optional.ofNullable(departmentUuids); + return this; + } + + + /** + * Departments to filter by. + */ + public BulkReportCustomReportItem withDepartmentUuids(Optional> departmentUuids) { + Utils.checkNotNull(departmentUuids, "departmentUuids"); + this.departmentUuids = departmentUuids; + return this; + } + + /** + * Work addresses to filter by. + */ + public BulkReportCustomReportItem withWorkAddressUuids(List workAddressUuids) { + Utils.checkNotNull(workAddressUuids, "workAddressUuids"); + this.workAddressUuids = Optional.ofNullable(workAddressUuids); + return this; + } + + + /** + * Work addresses to filter by. + */ + public BulkReportCustomReportItem withWorkAddressUuids(Optional> workAddressUuids) { + Utils.checkNotNull(workAddressUuids, "workAddressUuids"); + this.workAddressUuids = workAddressUuids; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + BulkReportCustomReportItem other = (BulkReportCustomReportItem) o; + return + Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && + Utils.enhancedDeepEquals(this.reportType, other.reportType) && + Utils.enhancedDeepEquals(this.columns, other.columns) && + Utils.enhancedDeepEquals(this.groupings, other.groupings) && + Utils.enhancedDeepEquals(this.fileType, other.fileType) && + Utils.enhancedDeepEquals(this.customName, other.customName) && + Utils.enhancedDeepEquals(this.withTotals, other.withTotals) && + Utils.enhancedDeepEquals(this.dateFilterType, other.dateFilterType) && + Utils.enhancedDeepEquals(this.startDate, other.startDate) && + Utils.enhancedDeepEquals(this.endDate, other.endDate) && + Utils.enhancedDeepEquals(this.paymentMethod, other.paymentMethod) && + Utils.enhancedDeepEquals(this.employmentType, other.employmentType) && + Utils.enhancedDeepEquals(this.employmentStatus, other.employmentStatus) && + Utils.enhancedDeepEquals(this.employeeUuids, other.employeeUuids) && + Utils.enhancedDeepEquals(this.departmentUuids, other.departmentUuids) && + Utils.enhancedDeepEquals(this.workAddressUuids, other.workAddressUuids); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + companyUuid, reportType, columns, + groupings, fileType, customName, + withTotals, dateFilterType, startDate, + endDate, paymentMethod, employmentType, + employmentStatus, employeeUuids, departmentUuids, + workAddressUuids); + } + + @Override + public String toString() { + return Utils.toString(BulkReportCustomReportItem.class, + "companyUuid", companyUuid, + "reportType", reportType, + "columns", columns, + "groupings", groupings, + "fileType", fileType, + "customName", customName, + "withTotals", withTotals, + "dateFilterType", dateFilterType, + "startDate", startDate, + "endDate", endDate, + "paymentMethod", paymentMethod, + "employmentType", employmentType, + "employmentStatus", employmentStatus, + "employeeUuids", employeeUuids, + "departmentUuids", departmentUuids, + "workAddressUuids", workAddressUuids); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String companyUuid; + + private ReportType reportType; + + private List columns; + + private Optional> groupings = Optional.empty(); + + private FileType fileType; + + private Optional customName = Optional.empty(); + + private Optional withTotals; + + private Optional dateFilterType; + + private Optional startDate = Optional.empty(); + + private Optional endDate = Optional.empty(); + + private Optional paymentMethod = Optional.empty(); + + private Optional employmentType = Optional.empty(); + + private Optional employmentStatus = Optional.empty(); + + private JsonNullable> employeeUuids = JsonNullable.undefined(); + + private Optional> departmentUuids = Optional.empty(); + + private Optional> workAddressUuids = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * UUID of the company to generate the report for. The partner must be mapped to this company. + */ + public Builder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + + /** + * Identifies this batch item as a custom report. + */ + public Builder reportType(ReportType reportType) { + Utils.checkNotNull(reportType, "reportType"); + this.reportType = reportType; + return this; + } + + + /** + * Columns to include in the report. + */ + public Builder columns(List columns) { + Utils.checkNotNull(columns, "columns"); + this.columns = columns; + return this; + } + + + /** + * How to group the report. If omitted, defaults are derived from the requested `columns`. + */ + public Builder groupings(List groupings) { + Utils.checkNotNull(groupings, "groupings"); + this.groupings = Optional.ofNullable(groupings); + return this; + } + + /** + * How to group the report. If omitted, defaults are derived from the requested `columns`. + */ + public Builder groupings(Optional> groupings) { + Utils.checkNotNull(groupings, "groupings"); + this.groupings = groupings; + return this; + } + + + /** + * The type of file to generate. + */ + public Builder fileType(FileType fileType) { + Utils.checkNotNull(fileType, "fileType"); + this.fileType = fileType; + return this; + } + + + /** + * Display name for the report. + */ + public Builder customName(String customName) { + Utils.checkNotNull(customName, "customName"); + this.customName = Optional.ofNullable(customName); + return this; + } + + /** + * Display name for the report. + */ + public Builder customName(Optional customName) { + Utils.checkNotNull(customName, "customName"); + this.customName = customName; + return this; + } + + + /** + * Whether to include subtotals and grand totals. + */ + public Builder withTotals(boolean withTotals) { + Utils.checkNotNull(withTotals, "withTotals"); + this.withTotals = Optional.ofNullable(withTotals); + return this; + } + + /** + * Whether to include subtotals and grand totals. + */ + public Builder withTotals(Optional withTotals) { + Utils.checkNotNull(withTotals, "withTotals"); + this.withTotals = withTotals; + return this; + } + + + /** + * Which payroll date `start_date` and `end_date` filter against. + */ + public Builder dateFilterType(DateFilterType dateFilterType) { + Utils.checkNotNull(dateFilterType, "dateFilterType"); + this.dateFilterType = Optional.ofNullable(dateFilterType); + return this; + } + + /** + * Which payroll date `start_date` and `end_date` filter against. + */ + public Builder dateFilterType(Optional dateFilterType) { + Utils.checkNotNull(dateFilterType, "dateFilterType"); + this.dateFilterType = dateFilterType; + return this; + } + + + /** + * Start date of data to filter by. + */ + public Builder startDate(LocalDate startDate) { + Utils.checkNotNull(startDate, "startDate"); + this.startDate = Optional.ofNullable(startDate); + return this; + } + + /** + * Start date of data to filter by. + */ + public Builder startDate(Optional startDate) { + Utils.checkNotNull(startDate, "startDate"); + this.startDate = startDate; + return this; + } + + + /** + * End date of data to filter by. + */ + public Builder endDate(LocalDate endDate) { + Utils.checkNotNull(endDate, "endDate"); + this.endDate = Optional.ofNullable(endDate); + return this; + } + + /** + * End date of data to filter by. + */ + public Builder endDate(Optional endDate) { + Utils.checkNotNull(endDate, "endDate"); + this.endDate = endDate; + return this; + } + + + /** + * Payment method to filter by. + */ + public Builder paymentMethod(PaymentMethod paymentMethod) { + Utils.checkNotNull(paymentMethod, "paymentMethod"); + this.paymentMethod = Optional.ofNullable(paymentMethod); + return this; + } + + /** + * Payment method to filter by. + */ + public Builder paymentMethod(Optional paymentMethod) { + Utils.checkNotNull(paymentMethod, "paymentMethod"); + this.paymentMethod = paymentMethod; + return this; + } + + + /** + * Employee employment type to filter by. + */ + public Builder employmentType(EmploymentType employmentType) { + Utils.checkNotNull(employmentType, "employmentType"); + this.employmentType = Optional.ofNullable(employmentType); + return this; + } + + /** + * Employee employment type to filter by. + */ + public Builder employmentType(Optional employmentType) { + Utils.checkNotNull(employmentType, "employmentType"); + this.employmentType = employmentType; + return this; + } + + + /** + * Employee employment status to filter by. + */ + public Builder employmentStatus(EmploymentStatus employmentStatus) { + Utils.checkNotNull(employmentStatus, "employmentStatus"); + this.employmentStatus = Optional.ofNullable(employmentStatus); + return this; + } + + /** + * Employee employment status to filter by. + */ + public Builder employmentStatus(Optional employmentStatus) { + Utils.checkNotNull(employmentStatus, "employmentStatus"); + this.employmentStatus = employmentStatus; + return this; + } + + + /** + * Employees to filter by. + */ + public Builder employeeUuids(List employeeUuids) { + Utils.checkNotNull(employeeUuids, "employeeUuids"); + this.employeeUuids = JsonNullable.of(employeeUuids); + return this; + } + + /** + * Employees to filter by. + */ + public Builder employeeUuids(JsonNullable> employeeUuids) { + Utils.checkNotNull(employeeUuids, "employeeUuids"); + this.employeeUuids = employeeUuids; + return this; + } + + + /** + * Departments to filter by. + */ + public Builder departmentUuids(List departmentUuids) { + Utils.checkNotNull(departmentUuids, "departmentUuids"); + this.departmentUuids = Optional.ofNullable(departmentUuids); + return this; + } + + /** + * Departments to filter by. + */ + public Builder departmentUuids(Optional> departmentUuids) { + Utils.checkNotNull(departmentUuids, "departmentUuids"); + this.departmentUuids = departmentUuids; + return this; + } + + + /** + * Work addresses to filter by. + */ + public Builder workAddressUuids(List workAddressUuids) { + Utils.checkNotNull(workAddressUuids, "workAddressUuids"); + this.workAddressUuids = Optional.ofNullable(workAddressUuids); + return this; + } + + /** + * Work addresses to filter by. + */ + public Builder workAddressUuids(Optional> workAddressUuids) { + Utils.checkNotNull(workAddressUuids, "workAddressUuids"); + this.workAddressUuids = workAddressUuids; + return this; + } + + public BulkReportCustomReportItem build() { + if (withTotals == null) { + withTotals = _SINGLETON_VALUE_WithTotals.value(); + } + if (dateFilterType == null) { + dateFilterType = _SINGLETON_VALUE_DateFilterType.value(); + } + + return new BulkReportCustomReportItem( + companyUuid, reportType, columns, + groupings, fileType, customName, + withTotals, dateFilterType, startDate, + endDate, paymentMethod, employmentType, + employmentStatus, employeeUuids, departmentUuids, + workAddressUuids); + } + + + private static final LazySingletonValue> _SINGLETON_VALUE_WithTotals = + new LazySingletonValue<>( + "with_totals", + "false", + new TypeReference>() {}); + + private static final LazySingletonValue> _SINGLETON_VALUE_DateFilterType = + new LazySingletonValue<>( + "date_filter_type", + "\"period_end_date\"", + new TypeReference>() {}); + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/BulkReportGeneralLedgerItem.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/BulkReportGeneralLedgerItem.java new file mode 100644 index 000000000..0cd5cd176 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/BulkReportGeneralLedgerItem.java @@ -0,0 +1,305 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import org.openapitools.jackson.nullable.JsonNullable; + +/** + * BulkReportGeneralLedgerItem + * + *

    A general ledger report entry in a bulk batch. + */ +public class BulkReportGeneralLedgerItem implements BulkReportItem { + /** + * UUID of the company to generate the report for. The partner must be mapped to this company. + */ + @JsonProperty("company_uuid") + private String companyUuid; + + /** + * Identifies this batch item as a general ledger report. + */ + @JsonProperty("report_type") + private BulkReportGeneralLedgerItemReportType reportType; + + /** + * The UUID of the payroll to generate the general ledger for. + */ + @JsonProperty("payroll_uuid") + private String payrollUuid; + + /** + * The breakdown of the report. Use `default` for no split. + */ + @JsonProperty("aggregation") + private Aggregation aggregation; + + /** + * The kind of integration set up for the company. Required when `aggregation` is `integration`; must + * be null otherwise. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("integration_type") + private JsonNullable integrationType; + + @JsonCreator + public BulkReportGeneralLedgerItem( + @JsonProperty("company_uuid") String companyUuid, + @JsonProperty("report_type") BulkReportGeneralLedgerItemReportType reportType, + @JsonProperty("payroll_uuid") String payrollUuid, + @JsonProperty("aggregation") Aggregation aggregation, + @JsonProperty("integration_type") JsonNullable integrationType) { + Utils.checkNotNull(companyUuid, "companyUuid"); + Utils.checkNotNull(reportType, "reportType"); + Utils.checkNotNull(payrollUuid, "payrollUuid"); + Utils.checkNotNull(aggregation, "aggregation"); + Utils.checkNotNull(integrationType, "integrationType"); + this.companyUuid = companyUuid; + this.reportType = reportType; + this.payrollUuid = payrollUuid; + this.aggregation = aggregation; + this.integrationType = integrationType; + } + + public BulkReportGeneralLedgerItem( + String companyUuid, + BulkReportGeneralLedgerItemReportType reportType, + String payrollUuid, + Aggregation aggregation) { + this(companyUuid, reportType, payrollUuid, + aggregation, JsonNullable.undefined()); + } + + /** + * UUID of the company to generate the report for. The partner must be mapped to this company. + */ + @JsonIgnore + public String companyUuid() { + return companyUuid; + } + + /** + * Identifies this batch item as a general ledger report. + */ + @JsonIgnore + @Override + public String reportType() { + return Utils.discriminatorToString(reportType); + } + + /** + * The UUID of the payroll to generate the general ledger for. + */ + @JsonIgnore + public String payrollUuid() { + return payrollUuid; + } + + /** + * The breakdown of the report. Use `default` for no split. + */ + @JsonIgnore + public Aggregation aggregation() { + return aggregation; + } + + /** + * The kind of integration set up for the company. Required when `aggregation` is `integration`; must + * be null otherwise. + */ + @JsonIgnore + public JsonNullable integrationType() { + return integrationType; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * UUID of the company to generate the report for. The partner must be mapped to this company. + */ + public BulkReportGeneralLedgerItem withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + /** + * Identifies this batch item as a general ledger report. + */ + public BulkReportGeneralLedgerItem withReportType(BulkReportGeneralLedgerItemReportType reportType) { + Utils.checkNotNull(reportType, "reportType"); + this.reportType = reportType; + return this; + } + + /** + * The UUID of the payroll to generate the general ledger for. + */ + public BulkReportGeneralLedgerItem withPayrollUuid(String payrollUuid) { + Utils.checkNotNull(payrollUuid, "payrollUuid"); + this.payrollUuid = payrollUuid; + return this; + } + + /** + * The breakdown of the report. Use `default` for no split. + */ + public BulkReportGeneralLedgerItem withAggregation(Aggregation aggregation) { + Utils.checkNotNull(aggregation, "aggregation"); + this.aggregation = aggregation; + return this; + } + + /** + * The kind of integration set up for the company. Required when `aggregation` is `integration`; must + * be null otherwise. + */ + public BulkReportGeneralLedgerItem withIntegrationType(String integrationType) { + Utils.checkNotNull(integrationType, "integrationType"); + this.integrationType = JsonNullable.of(integrationType); + return this; + } + + /** + * The kind of integration set up for the company. Required when `aggregation` is `integration`; must + * be null otherwise. + */ + public BulkReportGeneralLedgerItem withIntegrationType(JsonNullable integrationType) { + Utils.checkNotNull(integrationType, "integrationType"); + this.integrationType = integrationType; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + BulkReportGeneralLedgerItem other = (BulkReportGeneralLedgerItem) o; + return + Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && + Utils.enhancedDeepEquals(this.reportType, other.reportType) && + Utils.enhancedDeepEquals(this.payrollUuid, other.payrollUuid) && + Utils.enhancedDeepEquals(this.aggregation, other.aggregation) && + Utils.enhancedDeepEquals(this.integrationType, other.integrationType); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + companyUuid, reportType, payrollUuid, + aggregation, integrationType); + } + + @Override + public String toString() { + return Utils.toString(BulkReportGeneralLedgerItem.class, + "companyUuid", companyUuid, + "reportType", reportType, + "payrollUuid", payrollUuid, + "aggregation", aggregation, + "integrationType", integrationType); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String companyUuid; + + private BulkReportGeneralLedgerItemReportType reportType; + + private String payrollUuid; + + private Aggregation aggregation; + + private JsonNullable integrationType = JsonNullable.undefined(); + + private Builder() { + // force use of static builder() method + } + + + /** + * UUID of the company to generate the report for. The partner must be mapped to this company. + */ + public Builder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + + /** + * Identifies this batch item as a general ledger report. + */ + public Builder reportType(BulkReportGeneralLedgerItemReportType reportType) { + Utils.checkNotNull(reportType, "reportType"); + this.reportType = reportType; + return this; + } + + + /** + * The UUID of the payroll to generate the general ledger for. + */ + public Builder payrollUuid(String payrollUuid) { + Utils.checkNotNull(payrollUuid, "payrollUuid"); + this.payrollUuid = payrollUuid; + return this; + } + + + /** + * The breakdown of the report. Use `default` for no split. + */ + public Builder aggregation(Aggregation aggregation) { + Utils.checkNotNull(aggregation, "aggregation"); + this.aggregation = aggregation; + return this; + } + + + /** + * The kind of integration set up for the company. Required when `aggregation` is `integration`; must + * be null otherwise. + */ + public Builder integrationType(String integrationType) { + Utils.checkNotNull(integrationType, "integrationType"); + this.integrationType = JsonNullable.of(integrationType); + return this; + } + + /** + * The kind of integration set up for the company. Required when `aggregation` is `integration`; must + * be null otherwise. + */ + public Builder integrationType(JsonNullable integrationType) { + Utils.checkNotNull(integrationType, "integrationType"); + this.integrationType = integrationType; + return this; + } + + public BulkReportGeneralLedgerItem build() { + + return new BulkReportGeneralLedgerItem( + companyUuid, reportType, payrollUuid, + aggregation, integrationType); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/BulkReportGeneralLedgerItemReportType.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/BulkReportGeneralLedgerItemReportType.java new file mode 100644 index 000000000..4b84a7c1e --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/BulkReportGeneralLedgerItemReportType.java @@ -0,0 +1,39 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * BulkReportGeneralLedgerItemReportType + * + *

    Identifies this batch item as a general ledger report. + */ +public enum BulkReportGeneralLedgerItemReportType { + GENERAL_LEDGER("general_ledger"); + + @JsonValue + private final String value; + + BulkReportGeneralLedgerItemReportType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (BulkReportGeneralLedgerItemReportType o: BulkReportGeneralLedgerItemReportType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/BulkReportItem.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/BulkReportItem.java new file mode 100644 index 000000000..294fbafc1 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/BulkReportItem.java @@ -0,0 +1,31 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonTypeInfo.As; +import com.fasterxml.jackson.annotation.JsonTypeInfo.Id; +import com.fasterxml.jackson.annotation.JsonTypeInfo; +import com.fasterxml.jackson.databind.annotation.JsonTypeIdResolver; +import java.lang.String; + +/** + * BulkReportItem + * + *

    A single report inside a bulk batch. Required fields depend on `report_type`: `custom_report` + * requires `columns` and `file_type`; `general_ledger` requires `payroll_uuid` and `aggregation`. + */ +@JsonTypeInfo( + use = Id.CUSTOM, + property = "report_type", + include = As.EXISTING_PROPERTY, + visible = true, + defaultImpl = UnknownBulkReportItem.class +) +@JsonTypeIdResolver(BulkReportItemTypeIdResolver.class) +public interface BulkReportItem { + + String reportType(); + +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/BulkReportItemResult.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/BulkReportItemResult.java new file mode 100644 index 000000000..439ba1f98 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/BulkReportItemResult.java @@ -0,0 +1,258 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.util.Optional; + +/** + * BulkReportItemResult + * + *

    A single report's outcome. + */ +public class BulkReportItemResult { + /** + * Which report this entry refers to. + */ + @JsonProperty("report_type") + private BulkReportItemResultReportType reportType; + + /** + * The report's output file type. + */ + @JsonProperty("file_type") + private String fileType; + + /** + * The terminal state for this individual report. + */ + @JsonProperty("status") + private BulkReportItemResultStatus status; + + /** + * A user-facing error message when status is `failed`. Null on success. + */ + @JsonInclude(Include.ALWAYS) + @JsonProperty("error") + private Optional error; + + @JsonCreator + public BulkReportItemResult( + @JsonProperty("report_type") BulkReportItemResultReportType reportType, + @JsonProperty("file_type") String fileType, + @JsonProperty("status") BulkReportItemResultStatus status, + @JsonProperty("error") Optional error) { + Utils.checkNotNull(reportType, "reportType"); + Utils.checkNotNull(fileType, "fileType"); + Utils.checkNotNull(status, "status"); + Utils.checkNotNull(error, "error"); + this.reportType = reportType; + this.fileType = fileType; + this.status = status; + this.error = error; + } + + public BulkReportItemResult( + BulkReportItemResultReportType reportType, + String fileType, + BulkReportItemResultStatus status) { + this(reportType, fileType, status, + Optional.empty()); + } + + /** + * Which report this entry refers to. + */ + @JsonIgnore + public BulkReportItemResultReportType reportType() { + return reportType; + } + + /** + * The report's output file type. + */ + @JsonIgnore + public String fileType() { + return fileType; + } + + /** + * The terminal state for this individual report. + */ + @JsonIgnore + public BulkReportItemResultStatus status() { + return status; + } + + /** + * A user-facing error message when status is `failed`. Null on success. + */ + @JsonIgnore + public Optional error() { + return error; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Which report this entry refers to. + */ + public BulkReportItemResult withReportType(BulkReportItemResultReportType reportType) { + Utils.checkNotNull(reportType, "reportType"); + this.reportType = reportType; + return this; + } + + /** + * The report's output file type. + */ + public BulkReportItemResult withFileType(String fileType) { + Utils.checkNotNull(fileType, "fileType"); + this.fileType = fileType; + return this; + } + + /** + * The terminal state for this individual report. + */ + public BulkReportItemResult withStatus(BulkReportItemResultStatus status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + /** + * A user-facing error message when status is `failed`. Null on success. + */ + public BulkReportItemResult withError(String error) { + Utils.checkNotNull(error, "error"); + this.error = Optional.ofNullable(error); + return this; + } + + + /** + * A user-facing error message when status is `failed`. Null on success. + */ + public BulkReportItemResult withError(Optional error) { + Utils.checkNotNull(error, "error"); + this.error = error; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + BulkReportItemResult other = (BulkReportItemResult) o; + return + Utils.enhancedDeepEquals(this.reportType, other.reportType) && + Utils.enhancedDeepEquals(this.fileType, other.fileType) && + Utils.enhancedDeepEquals(this.status, other.status) && + Utils.enhancedDeepEquals(this.error, other.error); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + reportType, fileType, status, + error); + } + + @Override + public String toString() { + return Utils.toString(BulkReportItemResult.class, + "reportType", reportType, + "fileType", fileType, + "status", status, + "error", error); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private BulkReportItemResultReportType reportType; + + private String fileType; + + private BulkReportItemResultStatus status; + + private Optional error = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * Which report this entry refers to. + */ + public Builder reportType(BulkReportItemResultReportType reportType) { + Utils.checkNotNull(reportType, "reportType"); + this.reportType = reportType; + return this; + } + + + /** + * The report's output file type. + */ + public Builder fileType(String fileType) { + Utils.checkNotNull(fileType, "fileType"); + this.fileType = fileType; + return this; + } + + + /** + * The terminal state for this individual report. + */ + public Builder status(BulkReportItemResultStatus status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + + /** + * A user-facing error message when status is `failed`. Null on success. + */ + public Builder error(String error) { + Utils.checkNotNull(error, "error"); + this.error = Optional.ofNullable(error); + return this; + } + + /** + * A user-facing error message when status is `failed`. Null on success. + */ + public Builder error(Optional error) { + Utils.checkNotNull(error, "error"); + this.error = error; + return this; + } + + public BulkReportItemResult build() { + + return new BulkReportItemResult( + reportType, fileType, status, + error); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/BulkReportItemResultReportType.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/BulkReportItemResultReportType.java new file mode 100644 index 000000000..2ec46b064 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/BulkReportItemResultReportType.java @@ -0,0 +1,40 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * BulkReportItemResultReportType + * + *

    Which report this entry refers to. + */ +public enum BulkReportItemResultReportType { + CUSTOM_REPORT("custom_report"), + GENERAL_LEDGER("general_ledger"); + + @JsonValue + private final String value; + + BulkReportItemResultReportType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (BulkReportItemResultReportType o: BulkReportItemResultReportType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/BulkReportItemResultStatus.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/BulkReportItemResultStatus.java new file mode 100644 index 000000000..94f275a52 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/BulkReportItemResultStatus.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * BulkReportItemResultStatus + * + *

    The terminal state for this individual report. + */ +public enum BulkReportItemResultStatus { + PENDING("pending"), + SUCCESS("success"), + FAILED("failed"); + + @JsonValue + private final String value; + + BulkReportItemResultStatus(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (BulkReportItemResultStatus o: BulkReportItemResultStatus.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/BulkReportItemTypeIdResolver.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/BulkReportItemTypeIdResolver.java new file mode 100644 index 000000000..60e38ec1b --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/BulkReportItemTypeIdResolver.java @@ -0,0 +1,52 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.gusto.embedded_api_v_2026_06_15.utils.GenericTypeIdResolver; +import java.lang.IllegalArgumentException; +import java.lang.Object; +import java.lang.Override; +import java.lang.String; + + +/** + * BulkReportItemTypeIdResolver + * + *

    A single report inside a bulk batch. Required fields depend on `report_type`: `custom_report` + * requires `columns` and `file_type`; `general_ledger` requires `payroll_uuid` and `aggregation`. + */ +public class BulkReportItemTypeIdResolver extends GenericTypeIdResolver { + + public BulkReportItemTypeIdResolver() { + super(UnknownBulkReportItem.class); + initializeTypeMap(); + } + + private void initializeTypeMap() { + registerType("custom_report", BulkReportCustomReportItem.class); + registerType("general_ledger", BulkReportGeneralLedgerItem.class); + } + + @Override + public String idFromValue(Object value) { + if (value == null) { + return null; + } + + // Handle known types by checking if they implement the discriminator method + if (value instanceof BulkReportItem) { + BulkReportItem discriminated = (BulkReportItem) value; + return discriminated.reportType(); + } + + throw new IllegalArgumentException("Unknown value type: " + value.getClass().getName()); + } + + @Override + public String getDescForKnownTypeIds() { + return "BulkReportItem type resolver"; + } + +} \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/BulkReportStatus.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/BulkReportStatus.java new file mode 100644 index 000000000..5c13d3875 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/BulkReportStatus.java @@ -0,0 +1,44 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * BulkReportStatus + * + *

    Overall batch status. `pending`/`processing` while in progress; once finished, `success` (all + * reports succeeded), `partial_success` (some succeeded, some failed), or `failed` (none succeeded). + */ +public enum BulkReportStatus { + PENDING("pending"), + PROCESSING("processing"), + SUCCESS("success"), + PARTIAL_SUCCESS("partial_success"), + FAILED("failed"); + + @JsonValue + private final String value; + + BulkReportStatus(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (BulkReportStatus o: BulkReportStatus.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/Columns.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/Columns.java index 7ddb1df36..3b5f64059 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/Columns.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/Columns.java @@ -9,6 +9,7 @@ import java.util.Optional; public enum Columns { + ADDITIONAL_EARNINGS("additional_earnings"), BANK_ACCOUNT_ACCOUNT_NUMBER("bank_account_account_number"), BANK_ACCOUNT_ROUTING_NUMBER("bank_account_routing_number"), BANK_ACCOUNT_TYPE("bank_account_type"), @@ -38,6 +39,7 @@ public enum Columns { EMPLOYEE_MEDICARE_TAX("employee_medicare_tax"), EMPLOYEE_PHONE_NUMBER("employee_phone_number"), EMPLOYEE_SOCIAL_SECURITY_TAX("employee_social_security_tax"), + EMPLOYEE_STATE_INCOME_TAX("employee_state_income_tax"), EMPLOYEE_TAXES("employee_taxes"), EMPLOYEE_UUID("employee_uuid"), EMPLOYEE_WORK_EMAIL("employee_work_email"), diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/Contractor.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/Contractor.java index d478849ae..ff9b70498 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/Contractor.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/Contractor.java @@ -122,6 +122,16 @@ public class Contractor { @JsonProperty("email") private JsonNullable email; + /** + * The work email address of the contractor. This is provided to support syncing users between our + * system and yours. You may not use this email address for any other purpose (e.g. + * + *

    marketing). + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("work_email") + private JsonNullable workEmail; + /** * The contractor's start date. */ @@ -266,6 +276,7 @@ public Contractor( @JsonProperty("ein") JsonNullable ein, @JsonProperty("has_ein") JsonNullable hasEin, @JsonProperty("email") JsonNullable email, + @JsonProperty("work_email") JsonNullable workEmail, @JsonProperty("start_date") Optional startDate, @JsonProperty("address") JsonNullable address, @JsonProperty("hourly_rate") Optional hourlyRate, @@ -297,6 +308,7 @@ public Contractor( Utils.checkNotNull(ein, "ein"); Utils.checkNotNull(hasEin, "hasEin"); Utils.checkNotNull(email, "email"); + Utils.checkNotNull(workEmail, "workEmail"); Utils.checkNotNull(startDate, "startDate"); Utils.checkNotNull(address, "address"); Utils.checkNotNull(hourlyRate, "hourlyRate"); @@ -328,6 +340,7 @@ public Contractor( this.ein = ein; this.hasEin = hasEin; this.email = email; + this.workEmail = workEmail; this.startDate = startDate; this.address = address; this.hourlyRate = hourlyRate; @@ -354,13 +367,13 @@ public Contractor( Optional.empty(), Optional.empty(), Optional.empty(), JsonNullable.undefined(), JsonNullable.undefined(), JsonNullable.undefined(), JsonNullable.undefined(), JsonNullable.undefined(), JsonNullable.undefined(), + JsonNullable.undefined(), JsonNullable.undefined(), Optional.empty(), + JsonNullable.undefined(), Optional.empty(), JsonNullable.undefined(), + JsonNullable.undefined(), Optional.empty(), Optional.empty(), JsonNullable.undefined(), Optional.empty(), JsonNullable.undefined(), - Optional.empty(), JsonNullable.undefined(), JsonNullable.undefined(), - Optional.empty(), Optional.empty(), JsonNullable.undefined(), - Optional.empty(), JsonNullable.undefined(), JsonNullable.undefined(), JsonNullable.undefined(), JsonNullable.undefined(), JsonNullable.undefined(), - Optional.empty(), Optional.empty(), JsonNullable.undefined(), - JsonNullable.undefined()); + JsonNullable.undefined(), Optional.empty(), Optional.empty(), + JsonNullable.undefined(), JsonNullable.undefined()); } /** @@ -477,6 +490,17 @@ public JsonNullable email() { return email; } + /** + * The work email address of the contractor. This is provided to support syncing users between our + * system and yours. You may not use this email address for any other purpose (e.g. + * + *

    marketing). + */ + @JsonIgnore + public JsonNullable workEmail() { + return workEmail; + } + /** * The contractor's start date. */ @@ -880,6 +904,30 @@ public Contractor withEmail(JsonNullable email) { return this; } + /** + * The work email address of the contractor. This is provided to support syncing users between our + * system and yours. You may not use this email address for any other purpose (e.g. + * + *

    marketing). + */ + public Contractor withWorkEmail(String workEmail) { + Utils.checkNotNull(workEmail, "workEmail"); + this.workEmail = JsonNullable.of(workEmail); + return this; + } + + /** + * The work email address of the contractor. This is provided to support syncing users between our + * system and yours. You may not use this email address for any other purpose (e.g. + * + *

    marketing). + */ + public Contractor withWorkEmail(JsonNullable workEmail) { + Utils.checkNotNull(workEmail, "workEmail"); + this.workEmail = workEmail; + return this; + } + /** * The contractor's start date. */ @@ -1240,6 +1288,7 @@ public boolean equals(java.lang.Object o) { Utils.enhancedDeepEquals(this.ein, other.ein) && Utils.enhancedDeepEquals(this.hasEin, other.hasEin) && Utils.enhancedDeepEquals(this.email, other.email) && + Utils.enhancedDeepEquals(this.workEmail, other.workEmail) && Utils.enhancedDeepEquals(this.startDate, other.startDate) && Utils.enhancedDeepEquals(this.address, other.address) && Utils.enhancedDeepEquals(this.hourlyRate, other.hourlyRate) && @@ -1267,13 +1316,13 @@ public int hashCode() { isActive, version, type, firstName, lastName, middleInitial, businessName, ein, hasEin, - email, startDate, address, - hourlyRate, fileNewHireReport, workState, - onboarded, onboardingStatus, paymentMethod, - hasSsn, departmentUuid, department, - departmentTitle, dismissalDate, upcomingEmployment, - dismissalCancellationEligible, rehireCancellationEligible, memberPortalInvitationStatus, - partnerPortalInvitationSent); + email, workEmail, startDate, + address, hourlyRate, fileNewHireReport, + workState, onboarded, onboardingStatus, + paymentMethod, hasSsn, departmentUuid, + department, departmentTitle, dismissalDate, + upcomingEmployment, dismissalCancellationEligible, rehireCancellationEligible, + memberPortalInvitationStatus, partnerPortalInvitationSent); } @Override @@ -1292,6 +1341,7 @@ public String toString() { "ein", ein, "hasEin", hasEin, "email", email, + "workEmail", workEmail, "startDate", startDate, "address", address, "hourlyRate", hourlyRate, @@ -1341,6 +1391,8 @@ public final static class Builder { private JsonNullable email = JsonNullable.undefined(); + private JsonNullable workEmail = JsonNullable.undefined(); + private Optional startDate = Optional.empty(); private JsonNullable address = JsonNullable.undefined(); @@ -1636,6 +1688,31 @@ public Builder email(JsonNullable email) { } + /** + * The work email address of the contractor. This is provided to support syncing users between our + * system and yours. You may not use this email address for any other purpose (e.g. + * + *

    marketing). + */ + public Builder workEmail(String workEmail) { + Utils.checkNotNull(workEmail, "workEmail"); + this.workEmail = JsonNullable.of(workEmail); + return this; + } + + /** + * The work email address of the contractor. This is provided to support syncing users between our + * system and yours. You may not use this email address for any other purpose (e.g. + * + *

    marketing). + */ + public Builder workEmail(JsonNullable workEmail) { + Utils.checkNotNull(workEmail, "workEmail"); + this.workEmail = workEmail; + return this; + } + + /** * The contractor's start date. */ @@ -1993,13 +2070,13 @@ public Contractor build() { isActive, version, type, firstName, lastName, middleInitial, businessName, ein, hasEin, - email, startDate, address, - hourlyRate, fileNewHireReport, workState, - onboarded, onboardingStatus, paymentMethod, - hasSsn, departmentUuid, department, - departmentTitle, dismissalDate, upcomingEmployment, - dismissalCancellationEligible, rehireCancellationEligible, memberPortalInvitationStatus, - partnerPortalInvitationSent); + email, workEmail, startDate, + address, hourlyRate, fileNewHireReport, + workState, onboarded, onboardingStatus, + paymentMethod, hasSsn, departmentUuid, + department, departmentTitle, dismissalDate, + upcomingEmployment, dismissalCancellationEligible, rehireCancellationEligible, + memberPortalInvitationStatus, partnerPortalInvitationSent); } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ContractorAddress.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ContractorAddress.java index 0472656bf..7857bae8e 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ContractorAddress.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ContractorAddress.java @@ -14,6 +14,8 @@ import java.lang.Boolean; import java.lang.Override; import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.List; import java.util.Optional; import org.openapitools.jackson.nullable.JsonNullable; @@ -73,6 +75,14 @@ public class ContractorAddress { @JsonProperty("version") private Optional version; + /** + * An array of warning objects that provide additional information about the address. Warnings do not + * prevent the address from being saved. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("warnings") + private Optional> warnings; + @JsonCreator public ContractorAddress( @JsonProperty("contractor_uuid") Optional contractorUuid, @@ -83,7 +93,8 @@ public ContractorAddress( @JsonProperty("zip") JsonNullable zip, @JsonProperty("country") JsonNullable country, @JsonProperty("active") Optional active, - @JsonProperty("version") Optional version) { + @JsonProperty("version") Optional version, + @JsonProperty("warnings") Optional> warnings) { Utils.checkNotNull(contractorUuid, "contractorUuid"); Utils.checkNotNull(street1, "street1"); Utils.checkNotNull(street2, "street2"); @@ -93,6 +104,7 @@ public ContractorAddress( Utils.checkNotNull(country, "country"); Utils.checkNotNull(active, "active"); Utils.checkNotNull(version, "version"); + Utils.checkNotNull(warnings, "warnings"); this.contractorUuid = contractorUuid; this.street1 = street1; this.street2 = street2; @@ -102,12 +114,14 @@ public ContractorAddress( this.country = country; this.active = active; this.version = version; + this.warnings = warnings; } public ContractorAddress() { this(Optional.empty(), JsonNullable.undefined(), JsonNullable.undefined(), JsonNullable.undefined(), JsonNullable.undefined(), JsonNullable.undefined(), - JsonNullable.undefined(), Optional.empty(), Optional.empty()); + JsonNullable.undefined(), Optional.empty(), Optional.empty(), + Optional.empty()); } /** @@ -167,6 +181,16 @@ public Optional version() { return version; } + /** + * An array of warning objects that provide additional information about the address. Warnings do not + * prevent the address from being saved. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> warnings() { + return (Optional>) warnings; + } + public static Builder builder() { return new Builder(); } @@ -307,6 +331,27 @@ public ContractorAddress withVersion(Optional version) { return this; } + /** + * An array of warning objects that provide additional information about the address. Warnings do not + * prevent the address from being saved. + */ + public ContractorAddress withWarnings(List warnings) { + Utils.checkNotNull(warnings, "warnings"); + this.warnings = Optional.ofNullable(warnings); + return this; + } + + + /** + * An array of warning objects that provide additional information about the address. Warnings do not + * prevent the address from being saved. + */ + public ContractorAddress withWarnings(Optional> warnings) { + Utils.checkNotNull(warnings, "warnings"); + this.warnings = warnings; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -325,7 +370,8 @@ public boolean equals(java.lang.Object o) { Utils.enhancedDeepEquals(this.zip, other.zip) && Utils.enhancedDeepEquals(this.country, other.country) && Utils.enhancedDeepEquals(this.active, other.active) && - Utils.enhancedDeepEquals(this.version, other.version); + Utils.enhancedDeepEquals(this.version, other.version) && + Utils.enhancedDeepEquals(this.warnings, other.warnings); } @Override @@ -333,7 +379,8 @@ public int hashCode() { return Utils.enhancedHash( contractorUuid, street1, street2, city, state, zip, - country, active, version); + country, active, version, + warnings); } @Override @@ -347,7 +394,8 @@ public String toString() { "zip", zip, "country", country, "active", active, - "version", version); + "version", version, + "warnings", warnings); } @SuppressWarnings("UnusedReturnValue") @@ -371,6 +419,8 @@ public final static class Builder { private Optional version = Optional.empty(); + private Optional> warnings = Optional.empty(); + private Builder() { // force use of static builder() method } @@ -516,6 +566,27 @@ public Builder version(Optional version) { return this; } + + /** + * An array of warning objects that provide additional information about the address. Warnings do not + * prevent the address from being saved. + */ + public Builder warnings(List warnings) { + Utils.checkNotNull(warnings, "warnings"); + this.warnings = Optional.ofNullable(warnings); + return this; + } + + /** + * An array of warning objects that provide additional information about the address. Warnings do not + * prevent the address from being saved. + */ + public Builder warnings(Optional> warnings) { + Utils.checkNotNull(warnings, "warnings"); + this.warnings = warnings; + return this; + } + public ContractorAddress build() { if (country == null) { country = _SINGLETON_VALUE_Country.value(); @@ -524,7 +595,8 @@ public ContractorAddress build() { return new ContractorAddress( contractorUuid, street1, street2, city, state, zip, - country, active, version); + country, active, version, + warnings); } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ContractorCreateRequestBody.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ContractorCreateRequestBody.java index 40d6766ac..c5cdd6640 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ContractorCreateRequestBody.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ContractorCreateRequestBody.java @@ -66,6 +66,16 @@ public class ContractorCreateRequestBody { @JsonProperty("email") private Optional email; + /** + * The work email address of the contractor. This is provided to support syncing users between our + * system and yours. You may not use this email address for any other purpose (e.g. + * + *

    marketing). + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("work_email") + private Optional workEmail; + /** * The contractor’s first name. * This attribute is required for `Individual` contractors and will be ignored for `Business` @@ -158,6 +168,7 @@ public ContractorCreateRequestBody( @JsonProperty("hourly_rate") Optional hourlyRate, @JsonProperty("self_onboarding") Optional selfOnboarding, @JsonProperty("email") Optional email, + @JsonProperty("work_email") Optional workEmail, @JsonProperty("first_name") Optional firstName, @JsonProperty("last_name") Optional lastName, @JsonProperty("middle_initial") Optional middleInitial, @@ -173,6 +184,7 @@ public ContractorCreateRequestBody( Utils.checkNotNull(hourlyRate, "hourlyRate"); Utils.checkNotNull(selfOnboarding, "selfOnboarding"); Utils.checkNotNull(email, "email"); + Utils.checkNotNull(workEmail, "workEmail"); Utils.checkNotNull(firstName, "firstName"); Utils.checkNotNull(lastName, "lastName"); Utils.checkNotNull(middleInitial, "middleInitial"); @@ -188,6 +200,7 @@ public ContractorCreateRequestBody( this.hourlyRate = hourlyRate; this.selfOnboarding = selfOnboarding; this.email = email; + this.workEmail = workEmail; this.firstName = firstName; this.lastName = lastName; this.middleInitial = middleInitial; @@ -205,8 +218,9 @@ public ContractorCreateRequestBody( this(Optional.empty(), wageType, startDate, Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), - Optional.empty(), JsonNullable.undefined(), Optional.empty(), - Optional.empty(), Optional.empty(), Optional.empty()); + Optional.empty(), Optional.empty(), JsonNullable.undefined(), + Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty()); } /** @@ -260,6 +274,17 @@ public Optional email() { return email; } + /** + * The work email address of the contractor. This is provided to support syncing users between our + * system and yours. You may not use this email address for any other purpose (e.g. + * + *

    marketing). + */ + @JsonIgnore + public Optional workEmail() { + return workEmail; + } + /** * The contractor’s first name. * This attribute is required for `Individual` contractors and will be ignored for `Business` @@ -456,6 +481,31 @@ public ContractorCreateRequestBody withEmail(Optional email) { return this; } + /** + * The work email address of the contractor. This is provided to support syncing users between our + * system and yours. You may not use this email address for any other purpose (e.g. + * + *

    marketing). + */ + public ContractorCreateRequestBody withWorkEmail(String workEmail) { + Utils.checkNotNull(workEmail, "workEmail"); + this.workEmail = Optional.ofNullable(workEmail); + return this; + } + + + /** + * The work email address of the contractor. This is provided to support syncing users between our + * system and yours. You may not use this email address for any other purpose (e.g. + * + *

    marketing). + */ + public ContractorCreateRequestBody withWorkEmail(Optional workEmail) { + Utils.checkNotNull(workEmail, "workEmail"); + this.workEmail = workEmail; + return this; + } + /** * The contractor’s first name. * This attribute is required for `Individual` contractors and will be ignored for `Business` @@ -684,6 +734,7 @@ public boolean equals(java.lang.Object o) { Utils.enhancedDeepEquals(this.hourlyRate, other.hourlyRate) && Utils.enhancedDeepEquals(this.selfOnboarding, other.selfOnboarding) && Utils.enhancedDeepEquals(this.email, other.email) && + Utils.enhancedDeepEquals(this.workEmail, other.workEmail) && Utils.enhancedDeepEquals(this.firstName, other.firstName) && Utils.enhancedDeepEquals(this.lastName, other.lastName) && Utils.enhancedDeepEquals(this.middleInitial, other.middleInitial) && @@ -700,9 +751,10 @@ public int hashCode() { return Utils.enhancedHash( type, wageType, startDate, hourlyRate, selfOnboarding, email, - firstName, lastName, middleInitial, - fileNewHireReport, workState, ssn, - businessName, ein, isActive); + workEmail, firstName, lastName, + middleInitial, fileNewHireReport, workState, + ssn, businessName, ein, + isActive); } @Override @@ -714,6 +766,7 @@ public String toString() { "hourlyRate", hourlyRate, "selfOnboarding", selfOnboarding, "email", email, + "workEmail", workEmail, "firstName", firstName, "lastName", lastName, "middleInitial", middleInitial, @@ -740,6 +793,8 @@ public final static class Builder { private Optional email = Optional.empty(); + private Optional workEmail = Optional.empty(); + private Optional firstName = Optional.empty(); private Optional lastName = Optional.empty(); @@ -863,6 +918,31 @@ public Builder email(Optional email) { } + /** + * The work email address of the contractor. This is provided to support syncing users between our + * system and yours. You may not use this email address for any other purpose (e.g. + * + *

    marketing). + */ + public Builder workEmail(String workEmail) { + Utils.checkNotNull(workEmail, "workEmail"); + this.workEmail = Optional.ofNullable(workEmail); + return this; + } + + /** + * The work email address of the contractor. This is provided to support syncing users between our + * system and yours. You may not use this email address for any other purpose (e.g. + * + *

    marketing). + */ + public Builder workEmail(Optional workEmail) { + Utils.checkNotNull(workEmail, "workEmail"); + this.workEmail = workEmail; + return this; + } + + /** * The contractor’s first name. * This attribute is required for `Individual` contractors and will be ignored for `Business` @@ -1089,9 +1169,10 @@ public ContractorCreateRequestBody build() { return new ContractorCreateRequestBody( type, wageType, startDate, hourlyRate, selfOnboarding, email, - firstName, lastName, middleInitial, - fileNewHireReport, workState, ssn, - businessName, ein, isActive); + workEmail, firstName, lastName, + middleInitial, fileNewHireReport, workState, + ssn, businessName, ein, + isActive); } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ContractorPaymentDetailsList.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ContractorPaymentDetailsList.java index 563210b37..3191ee315 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ContractorPaymentDetailsList.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ContractorPaymentDetailsList.java @@ -26,7 +26,7 @@ public class ContractorPaymentDetailsList { @JsonInclude(Include.NON_ABSENT) @JsonProperty("payment_method") - private Optional paymentMethod; + private Optional paymentMethod; @JsonInclude(Include.NON_ABSENT) @@ -55,7 +55,7 @@ public class ContractorPaymentDetailsList { @JsonCreator public ContractorPaymentDetailsList( @JsonProperty("contractor_uuid") Optional contractorUuid, - @JsonProperty("payment_method") Optional paymentMethod, + @JsonProperty("payment_method") Optional paymentMethod, @JsonProperty("first_name") Optional firstName, @JsonProperty("last_name") Optional lastName, @JsonProperty("split_by") JsonNullable splitBy, @@ -86,8 +86,8 @@ public Optional contractorUuid() { @SuppressWarnings("unchecked") @JsonIgnore - public Optional paymentMethod() { - return (Optional) paymentMethod; + public Optional paymentMethod() { + return (Optional) paymentMethod; } @JsonIgnore @@ -135,14 +135,14 @@ public ContractorPaymentDetailsList withContractorUuid(Optional contract return this; } - public ContractorPaymentDetailsList withPaymentMethod(PaymentMethod paymentMethod) { + public ContractorPaymentDetailsList withPaymentMethod(ContractorPaymentDetailsListPaymentMethod paymentMethod) { Utils.checkNotNull(paymentMethod, "paymentMethod"); this.paymentMethod = Optional.ofNullable(paymentMethod); return this; } - public ContractorPaymentDetailsList withPaymentMethod(Optional paymentMethod) { + public ContractorPaymentDetailsList withPaymentMethod(Optional paymentMethod) { Utils.checkNotNull(paymentMethod, "paymentMethod"); this.paymentMethod = paymentMethod; return this; @@ -249,7 +249,7 @@ public final static class Builder { private Optional contractorUuid = Optional.empty(); - private Optional paymentMethod = Optional.empty(); + private Optional paymentMethod = Optional.empty(); private Optional firstName = Optional.empty(); @@ -277,13 +277,13 @@ public Builder contractorUuid(Optional contractorUuid) { } - public Builder paymentMethod(PaymentMethod paymentMethod) { + public Builder paymentMethod(ContractorPaymentDetailsListPaymentMethod paymentMethod) { Utils.checkNotNull(paymentMethod, "paymentMethod"); this.paymentMethod = Optional.ofNullable(paymentMethod); return this; } - public Builder paymentMethod(Optional paymentMethod) { + public Builder paymentMethod(Optional paymentMethod) { Utils.checkNotNull(paymentMethod, "paymentMethod"); this.paymentMethod = paymentMethod; return this; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ContractorPaymentDetailsListPaymentMethod.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ContractorPaymentDetailsListPaymentMethod.java new file mode 100644 index 000000000..0997261a2 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ContractorPaymentDetailsListPaymentMethod.java @@ -0,0 +1,35 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +public enum ContractorPaymentDetailsListPaymentMethod { + DIRECT_DEPOSIT("Direct Deposit"), + CHECK("Check"); + + @JsonValue + private final String value; + + ContractorPaymentDetailsListPaymentMethod(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (ContractorPaymentDetailsListPaymentMethod o: ContractorPaymentDetailsListPaymentMethod.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ContractorPaymentListing.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ContractorPaymentListing.java new file mode 100644 index 000000000..e17ec6142 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ContractorPaymentListing.java @@ -0,0 +1,727 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.time.LocalDate; +import java.util.Optional; + +/** + * ContractorPaymentListing + * + *

    The representation of a contractor payment as it appears in a contractor's payment history. + */ +public class ContractorPaymentListing { + /** + * The unique identifier of the contractor payment in Gusto. + */ + @JsonProperty("uuid") + private String uuid; + + /** + * The check date for the payment. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("check_date") + private Optional checkDate; + + /** + * The bonus amount in the payment. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("bonus") + private Optional bonus; + + /** + * The number of hours worked for the payment. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("hours") + private Optional hours; + + /** + * The rate per hour worked for the payment. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("hourly_rate") + private Optional hourlyRate; + + /** + * The payment method. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("payment_method") + private Optional paymentMethod; + + /** + * The reimbursement amount in the payment. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("reimbursement") + private Optional reimbursement; + + /** + * Contractor payment status + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("status") + private Optional status; + + /** + * The fixed wage of the payment, regardless of hours worked. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("wage") + private Optional wage; + + /** + * The wage type for the payment. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("wage_type") + private Optional wageType; + + /** + * (hours * hourly_rate) + wage + bonus + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("wage_total") + private Optional wageTotal; + + @JsonCreator + public ContractorPaymentListing( + @JsonProperty("uuid") String uuid, + @JsonProperty("check_date") Optional checkDate, + @JsonProperty("bonus") Optional bonus, + @JsonProperty("hours") Optional hours, + @JsonProperty("hourly_rate") Optional hourlyRate, + @JsonProperty("payment_method") Optional paymentMethod, + @JsonProperty("reimbursement") Optional reimbursement, + @JsonProperty("status") Optional status, + @JsonProperty("wage") Optional wage, + @JsonProperty("wage_type") Optional wageType, + @JsonProperty("wage_total") Optional wageTotal) { + Utils.checkNotNull(uuid, "uuid"); + Utils.checkNotNull(checkDate, "checkDate"); + Utils.checkNotNull(bonus, "bonus"); + Utils.checkNotNull(hours, "hours"); + Utils.checkNotNull(hourlyRate, "hourlyRate"); + Utils.checkNotNull(paymentMethod, "paymentMethod"); + Utils.checkNotNull(reimbursement, "reimbursement"); + Utils.checkNotNull(status, "status"); + Utils.checkNotNull(wage, "wage"); + Utils.checkNotNull(wageType, "wageType"); + Utils.checkNotNull(wageTotal, "wageTotal"); + this.uuid = uuid; + this.checkDate = checkDate; + this.bonus = bonus; + this.hours = hours; + this.hourlyRate = hourlyRate; + this.paymentMethod = paymentMethod; + this.reimbursement = reimbursement; + this.status = status; + this.wage = wage; + this.wageType = wageType; + this.wageTotal = wageTotal; + } + + public ContractorPaymentListing( + String uuid) { + this(uuid, Optional.empty(), Optional.empty(), + Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty(), Optional.empty()); + } + + /** + * The unique identifier of the contractor payment in Gusto. + */ + @JsonIgnore + public String uuid() { + return uuid; + } + + /** + * The check date for the payment. + */ + @JsonIgnore + public Optional checkDate() { + return checkDate; + } + + /** + * The bonus amount in the payment. + */ + @JsonIgnore + public Optional bonus() { + return bonus; + } + + /** + * The number of hours worked for the payment. + */ + @JsonIgnore + public Optional hours() { + return hours; + } + + /** + * The rate per hour worked for the payment. + */ + @JsonIgnore + public Optional hourlyRate() { + return hourlyRate; + } + + /** + * The payment method. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional paymentMethod() { + return (Optional) paymentMethod; + } + + /** + * The reimbursement amount in the payment. + */ + @JsonIgnore + public Optional reimbursement() { + return reimbursement; + } + + /** + * Contractor payment status + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional status() { + return (Optional) status; + } + + /** + * The fixed wage of the payment, regardless of hours worked. + */ + @JsonIgnore + public Optional wage() { + return wage; + } + + /** + * The wage type for the payment. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional wageType() { + return (Optional) wageType; + } + + /** + * (hours * hourly_rate) + wage + bonus + */ + @JsonIgnore + public Optional wageTotal() { + return wageTotal; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * The unique identifier of the contractor payment in Gusto. + */ + public ContractorPaymentListing withUuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + /** + * The check date for the payment. + */ + public ContractorPaymentListing withCheckDate(LocalDate checkDate) { + Utils.checkNotNull(checkDate, "checkDate"); + this.checkDate = Optional.ofNullable(checkDate); + return this; + } + + + /** + * The check date for the payment. + */ + public ContractorPaymentListing withCheckDate(Optional checkDate) { + Utils.checkNotNull(checkDate, "checkDate"); + this.checkDate = checkDate; + return this; + } + + /** + * The bonus amount in the payment. + */ + public ContractorPaymentListing withBonus(String bonus) { + Utils.checkNotNull(bonus, "bonus"); + this.bonus = Optional.ofNullable(bonus); + return this; + } + + + /** + * The bonus amount in the payment. + */ + public ContractorPaymentListing withBonus(Optional bonus) { + Utils.checkNotNull(bonus, "bonus"); + this.bonus = bonus; + return this; + } + + /** + * The number of hours worked for the payment. + */ + public ContractorPaymentListing withHours(String hours) { + Utils.checkNotNull(hours, "hours"); + this.hours = Optional.ofNullable(hours); + return this; + } + + + /** + * The number of hours worked for the payment. + */ + public ContractorPaymentListing withHours(Optional hours) { + Utils.checkNotNull(hours, "hours"); + this.hours = hours; + return this; + } + + /** + * The rate per hour worked for the payment. + */ + public ContractorPaymentListing withHourlyRate(String hourlyRate) { + Utils.checkNotNull(hourlyRate, "hourlyRate"); + this.hourlyRate = Optional.ofNullable(hourlyRate); + return this; + } + + + /** + * The rate per hour worked for the payment. + */ + public ContractorPaymentListing withHourlyRate(Optional hourlyRate) { + Utils.checkNotNull(hourlyRate, "hourlyRate"); + this.hourlyRate = hourlyRate; + return this; + } + + /** + * The payment method. + */ + public ContractorPaymentListing withPaymentMethod(ContractorPaymentListingPaymentMethod paymentMethod) { + Utils.checkNotNull(paymentMethod, "paymentMethod"); + this.paymentMethod = Optional.ofNullable(paymentMethod); + return this; + } + + + /** + * The payment method. + */ + public ContractorPaymentListing withPaymentMethod(Optional paymentMethod) { + Utils.checkNotNull(paymentMethod, "paymentMethod"); + this.paymentMethod = paymentMethod; + return this; + } + + /** + * The reimbursement amount in the payment. + */ + public ContractorPaymentListing withReimbursement(String reimbursement) { + Utils.checkNotNull(reimbursement, "reimbursement"); + this.reimbursement = Optional.ofNullable(reimbursement); + return this; + } + + + /** + * The reimbursement amount in the payment. + */ + public ContractorPaymentListing withReimbursement(Optional reimbursement) { + Utils.checkNotNull(reimbursement, "reimbursement"); + this.reimbursement = reimbursement; + return this; + } + + /** + * Contractor payment status + */ + public ContractorPaymentListing withStatus(ContractorPaymentListingStatus status) { + Utils.checkNotNull(status, "status"); + this.status = Optional.ofNullable(status); + return this; + } + + + /** + * Contractor payment status + */ + public ContractorPaymentListing withStatus(Optional status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + /** + * The fixed wage of the payment, regardless of hours worked. + */ + public ContractorPaymentListing withWage(String wage) { + Utils.checkNotNull(wage, "wage"); + this.wage = Optional.ofNullable(wage); + return this; + } + + + /** + * The fixed wage of the payment, regardless of hours worked. + */ + public ContractorPaymentListing withWage(Optional wage) { + Utils.checkNotNull(wage, "wage"); + this.wage = wage; + return this; + } + + /** + * The wage type for the payment. + */ + public ContractorPaymentListing withWageType(ContractorPaymentListingWageType wageType) { + Utils.checkNotNull(wageType, "wageType"); + this.wageType = Optional.ofNullable(wageType); + return this; + } + + + /** + * The wage type for the payment. + */ + public ContractorPaymentListing withWageType(Optional wageType) { + Utils.checkNotNull(wageType, "wageType"); + this.wageType = wageType; + return this; + } + + /** + * (hours * hourly_rate) + wage + bonus + */ + public ContractorPaymentListing withWageTotal(String wageTotal) { + Utils.checkNotNull(wageTotal, "wageTotal"); + this.wageTotal = Optional.ofNullable(wageTotal); + return this; + } + + + /** + * (hours * hourly_rate) + wage + bonus + */ + public ContractorPaymentListing withWageTotal(Optional wageTotal) { + Utils.checkNotNull(wageTotal, "wageTotal"); + this.wageTotal = wageTotal; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + ContractorPaymentListing other = (ContractorPaymentListing) o; + return + Utils.enhancedDeepEquals(this.uuid, other.uuid) && + Utils.enhancedDeepEquals(this.checkDate, other.checkDate) && + Utils.enhancedDeepEquals(this.bonus, other.bonus) && + Utils.enhancedDeepEquals(this.hours, other.hours) && + Utils.enhancedDeepEquals(this.hourlyRate, other.hourlyRate) && + Utils.enhancedDeepEquals(this.paymentMethod, other.paymentMethod) && + Utils.enhancedDeepEquals(this.reimbursement, other.reimbursement) && + Utils.enhancedDeepEquals(this.status, other.status) && + Utils.enhancedDeepEquals(this.wage, other.wage) && + Utils.enhancedDeepEquals(this.wageType, other.wageType) && + Utils.enhancedDeepEquals(this.wageTotal, other.wageTotal); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + uuid, checkDate, bonus, + hours, hourlyRate, paymentMethod, + reimbursement, status, wage, + wageType, wageTotal); + } + + @Override + public String toString() { + return Utils.toString(ContractorPaymentListing.class, + "uuid", uuid, + "checkDate", checkDate, + "bonus", bonus, + "hours", hours, + "hourlyRate", hourlyRate, + "paymentMethod", paymentMethod, + "reimbursement", reimbursement, + "status", status, + "wage", wage, + "wageType", wageType, + "wageTotal", wageTotal); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String uuid; + + private Optional checkDate = Optional.empty(); + + private Optional bonus = Optional.empty(); + + private Optional hours = Optional.empty(); + + private Optional hourlyRate = Optional.empty(); + + private Optional paymentMethod = Optional.empty(); + + private Optional reimbursement = Optional.empty(); + + private Optional status = Optional.empty(); + + private Optional wage = Optional.empty(); + + private Optional wageType = Optional.empty(); + + private Optional wageTotal = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * The unique identifier of the contractor payment in Gusto. + */ + public Builder uuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + + /** + * The check date for the payment. + */ + public Builder checkDate(LocalDate checkDate) { + Utils.checkNotNull(checkDate, "checkDate"); + this.checkDate = Optional.ofNullable(checkDate); + return this; + } + + /** + * The check date for the payment. + */ + public Builder checkDate(Optional checkDate) { + Utils.checkNotNull(checkDate, "checkDate"); + this.checkDate = checkDate; + return this; + } + + + /** + * The bonus amount in the payment. + */ + public Builder bonus(String bonus) { + Utils.checkNotNull(bonus, "bonus"); + this.bonus = Optional.ofNullable(bonus); + return this; + } + + /** + * The bonus amount in the payment. + */ + public Builder bonus(Optional bonus) { + Utils.checkNotNull(bonus, "bonus"); + this.bonus = bonus; + return this; + } + + + /** + * The number of hours worked for the payment. + */ + public Builder hours(String hours) { + Utils.checkNotNull(hours, "hours"); + this.hours = Optional.ofNullable(hours); + return this; + } + + /** + * The number of hours worked for the payment. + */ + public Builder hours(Optional hours) { + Utils.checkNotNull(hours, "hours"); + this.hours = hours; + return this; + } + + + /** + * The rate per hour worked for the payment. + */ + public Builder hourlyRate(String hourlyRate) { + Utils.checkNotNull(hourlyRate, "hourlyRate"); + this.hourlyRate = Optional.ofNullable(hourlyRate); + return this; + } + + /** + * The rate per hour worked for the payment. + */ + public Builder hourlyRate(Optional hourlyRate) { + Utils.checkNotNull(hourlyRate, "hourlyRate"); + this.hourlyRate = hourlyRate; + return this; + } + + + /** + * The payment method. + */ + public Builder paymentMethod(ContractorPaymentListingPaymentMethod paymentMethod) { + Utils.checkNotNull(paymentMethod, "paymentMethod"); + this.paymentMethod = Optional.ofNullable(paymentMethod); + return this; + } + + /** + * The payment method. + */ + public Builder paymentMethod(Optional paymentMethod) { + Utils.checkNotNull(paymentMethod, "paymentMethod"); + this.paymentMethod = paymentMethod; + return this; + } + + + /** + * The reimbursement amount in the payment. + */ + public Builder reimbursement(String reimbursement) { + Utils.checkNotNull(reimbursement, "reimbursement"); + this.reimbursement = Optional.ofNullable(reimbursement); + return this; + } + + /** + * The reimbursement amount in the payment. + */ + public Builder reimbursement(Optional reimbursement) { + Utils.checkNotNull(reimbursement, "reimbursement"); + this.reimbursement = reimbursement; + return this; + } + + + /** + * Contractor payment status + */ + public Builder status(ContractorPaymentListingStatus status) { + Utils.checkNotNull(status, "status"); + this.status = Optional.ofNullable(status); + return this; + } + + /** + * Contractor payment status + */ + public Builder status(Optional status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + + /** + * The fixed wage of the payment, regardless of hours worked. + */ + public Builder wage(String wage) { + Utils.checkNotNull(wage, "wage"); + this.wage = Optional.ofNullable(wage); + return this; + } + + /** + * The fixed wage of the payment, regardless of hours worked. + */ + public Builder wage(Optional wage) { + Utils.checkNotNull(wage, "wage"); + this.wage = wage; + return this; + } + + + /** + * The wage type for the payment. + */ + public Builder wageType(ContractorPaymentListingWageType wageType) { + Utils.checkNotNull(wageType, "wageType"); + this.wageType = Optional.ofNullable(wageType); + return this; + } + + /** + * The wage type for the payment. + */ + public Builder wageType(Optional wageType) { + Utils.checkNotNull(wageType, "wageType"); + this.wageType = wageType; + return this; + } + + + /** + * (hours * hourly_rate) + wage + bonus + */ + public Builder wageTotal(String wageTotal) { + Utils.checkNotNull(wageTotal, "wageTotal"); + this.wageTotal = Optional.ofNullable(wageTotal); + return this; + } + + /** + * (hours * hourly_rate) + wage + bonus + */ + public Builder wageTotal(Optional wageTotal) { + Utils.checkNotNull(wageTotal, "wageTotal"); + this.wageTotal = wageTotal; + return this; + } + + public ContractorPaymentListing build() { + + return new ContractorPaymentListing( + uuid, checkDate, bonus, + hours, hourlyRate, paymentMethod, + reimbursement, status, wage, + wageType, wageTotal); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ContractorPaymentListingPaymentMethod.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ContractorPaymentListingPaymentMethod.java new file mode 100644 index 000000000..102ed2b27 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ContractorPaymentListingPaymentMethod.java @@ -0,0 +1,42 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * ContractorPaymentListingPaymentMethod + * + *

    The payment method. + */ +public enum ContractorPaymentListingPaymentMethod { + DIRECT_DEPOSIT("Direct Deposit"), + CHECK("Check"), + HISTORICAL_PAYMENT("Historical Payment"), + CORRECTION_PAYMENT("Correction Payment"); + + @JsonValue + private final String value; + + ContractorPaymentListingPaymentMethod(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (ContractorPaymentListingPaymentMethod o: ContractorPaymentListingPaymentMethod.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ContractorPaymentListingStatus.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ContractorPaymentListingStatus.java new file mode 100644 index 000000000..abbb4dea1 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ContractorPaymentListingStatus.java @@ -0,0 +1,40 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * ContractorPaymentListingStatus + * + *

    Contractor payment status + */ +public enum ContractorPaymentListingStatus { + FUNDED("Funded"), + UNFUNDED("Unfunded"); + + @JsonValue + private final String value; + + ContractorPaymentListingStatus(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (ContractorPaymentListingStatus o: ContractorPaymentListingStatus.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ContractorPaymentListingWageType.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ContractorPaymentListingWageType.java new file mode 100644 index 000000000..fd7bc63f3 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ContractorPaymentListingWageType.java @@ -0,0 +1,40 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * ContractorPaymentListingWageType + * + *

    The wage type for the payment. + */ +public enum ContractorPaymentListingWageType { + HOURLY("Hourly"), + FIXED("Fixed"); + + @JsonValue + private final String value; + + ContractorPaymentListingWageType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (ContractorPaymentListingWageType o: ContractorPaymentListingWageType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ContractorUpdateRequestBody.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ContractorUpdateRequestBody.java index c0ccf11d0..663882654 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ContractorUpdateRequestBody.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ContractorUpdateRequestBody.java @@ -76,6 +76,16 @@ public class ContractorUpdateRequestBody { @JsonProperty("email") private Optional email; + /** + * The work email address of the contractor. This is provided to support syncing users between our + * system and yours. You may not use this email address for any other purpose (e.g. + * + *

    marketing). + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("work_email") + private Optional workEmail; + /** * The contractor’s first name. * This attribute is required for `Individual` contractors and will be ignored for `Business` @@ -169,6 +179,7 @@ public ContractorUpdateRequestBody( @JsonProperty("hourly_rate") Optional hourlyRate, @JsonProperty("self_onboarding") Optional selfOnboarding, @JsonProperty("email") Optional email, + @JsonProperty("work_email") Optional workEmail, @JsonProperty("first_name") Optional firstName, @JsonProperty("last_name") Optional lastName, @JsonProperty("middle_initial") Optional middleInitial, @@ -185,6 +196,7 @@ public ContractorUpdateRequestBody( Utils.checkNotNull(hourlyRate, "hourlyRate"); Utils.checkNotNull(selfOnboarding, "selfOnboarding"); Utils.checkNotNull(email, "email"); + Utils.checkNotNull(workEmail, "workEmail"); Utils.checkNotNull(firstName, "firstName"); Utils.checkNotNull(lastName, "lastName"); Utils.checkNotNull(middleInitial, "middleInitial"); @@ -201,6 +213,7 @@ public ContractorUpdateRequestBody( this.hourlyRate = hourlyRate; this.selfOnboarding = selfOnboarding; this.email = email; + this.workEmail = workEmail; this.firstName = firstName; this.lastName = lastName; this.middleInitial = middleInitial; @@ -217,9 +230,9 @@ public ContractorUpdateRequestBody( this(version, Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), - Optional.empty(), Optional.empty(), JsonNullable.undefined(), Optional.empty(), Optional.empty(), Optional.empty(), - Optional.empty()); + JsonNullable.undefined(), Optional.empty(), Optional.empty(), + Optional.empty(), Optional.empty()); } /** @@ -284,6 +297,17 @@ public Optional email() { return email; } + /** + * The work email address of the contractor. This is provided to support syncing users between our + * system and yours. You may not use this email address for any other purpose (e.g. + * + *

    marketing). + */ + @JsonIgnore + public Optional workEmail() { + return workEmail; + } + /** * The contractor’s first name. * This attribute is required for `Individual` contractors and will be ignored for `Business` @@ -511,6 +535,31 @@ public ContractorUpdateRequestBody withEmail(Optional email) { return this; } + /** + * The work email address of the contractor. This is provided to support syncing users between our + * system and yours. You may not use this email address for any other purpose (e.g. + * + *

    marketing). + */ + public ContractorUpdateRequestBody withWorkEmail(String workEmail) { + Utils.checkNotNull(workEmail, "workEmail"); + this.workEmail = Optional.ofNullable(workEmail); + return this; + } + + + /** + * The work email address of the contractor. This is provided to support syncing users between our + * system and yours. You may not use this email address for any other purpose (e.g. + * + *

    marketing). + */ + public ContractorUpdateRequestBody withWorkEmail(Optional workEmail) { + Utils.checkNotNull(workEmail, "workEmail"); + this.workEmail = workEmail; + return this; + } + /** * The contractor’s first name. * This attribute is required for `Individual` contractors and will be ignored for `Business` @@ -740,6 +789,7 @@ public boolean equals(java.lang.Object o) { Utils.enhancedDeepEquals(this.hourlyRate, other.hourlyRate) && Utils.enhancedDeepEquals(this.selfOnboarding, other.selfOnboarding) && Utils.enhancedDeepEquals(this.email, other.email) && + Utils.enhancedDeepEquals(this.workEmail, other.workEmail) && Utils.enhancedDeepEquals(this.firstName, other.firstName) && Utils.enhancedDeepEquals(this.lastName, other.lastName) && Utils.enhancedDeepEquals(this.middleInitial, other.middleInitial) && @@ -756,10 +806,10 @@ public int hashCode() { return Utils.enhancedHash( version, type, wageType, startDate, hourlyRate, selfOnboarding, - email, firstName, lastName, - middleInitial, fileNewHireReport, workState, - ssn, businessName, ein, - isActive); + email, workEmail, firstName, + lastName, middleInitial, fileNewHireReport, + workState, ssn, businessName, + ein, isActive); } @Override @@ -772,6 +822,7 @@ public String toString() { "hourlyRate", hourlyRate, "selfOnboarding", selfOnboarding, "email", email, + "workEmail", workEmail, "firstName", firstName, "lastName", lastName, "middleInitial", middleInitial, @@ -800,6 +851,8 @@ public final static class Builder { private Optional email = Optional.empty(); + private Optional workEmail = Optional.empty(); + private Optional firstName = Optional.empty(); private Optional lastName = Optional.empty(); @@ -953,6 +1006,31 @@ public Builder email(Optional email) { } + /** + * The work email address of the contractor. This is provided to support syncing users between our + * system and yours. You may not use this email address for any other purpose (e.g. + * + *

    marketing). + */ + public Builder workEmail(String workEmail) { + Utils.checkNotNull(workEmail, "workEmail"); + this.workEmail = Optional.ofNullable(workEmail); + return this; + } + + /** + * The work email address of the contractor. This is provided to support syncing users between our + * system and yours. You may not use this email address for any other purpose (e.g. + * + *

    marketing). + */ + public Builder workEmail(Optional workEmail) { + Utils.checkNotNull(workEmail, "workEmail"); + this.workEmail = workEmail; + return this; + } + + /** * The contractor’s first name. * This attribute is required for `Individual` contractors and will be ignored for `Business` @@ -1179,10 +1257,10 @@ public ContractorUpdateRequestBody build() { return new ContractorUpdateRequestBody( version, type, wageType, startDate, hourlyRate, selfOnboarding, - email, firstName, lastName, - middleInitial, fileNewHireReport, workState, - ssn, businessName, ein, - isActive); + email, workEmail, firstName, + lastName, middleInitial, fileNewHireReport, + workState, ssn, businessName, + ein, isActive); } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/CreateBulkReport.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/CreateBulkReport.java new file mode 100644 index 000000000..8d712a0b0 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/CreateBulkReport.java @@ -0,0 +1,157 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Override; +import java.lang.String; + + +public class CreateBulkReport { + /** + * Unique identifier of the bulk report batch. + */ + @JsonProperty("uuid") + private String uuid; + + /** + * The batch's processing state. + * - `pending`: accepted, not yet started + * - `processing`: reports are being generated + * - `completed`: all reports finished + * - `failed`: the batch failed before completing + */ + @JsonProperty("status") + private Status status; + + @JsonCreator + public CreateBulkReport( + @JsonProperty("uuid") String uuid, + @JsonProperty("status") Status status) { + Utils.checkNotNull(uuid, "uuid"); + Utils.checkNotNull(status, "status"); + this.uuid = uuid; + this.status = status; + } + + /** + * Unique identifier of the bulk report batch. + */ + @JsonIgnore + public String uuid() { + return uuid; + } + + /** + * The batch's processing state. + * - `pending`: accepted, not yet started + * - `processing`: reports are being generated + * - `completed`: all reports finished + * - `failed`: the batch failed before completing + */ + @JsonIgnore + public Status status() { + return status; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Unique identifier of the bulk report batch. + */ + public CreateBulkReport withUuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + /** + * The batch's processing state. + * - `pending`: accepted, not yet started + * - `processing`: reports are being generated + * - `completed`: all reports finished + * - `failed`: the batch failed before completing + */ + public CreateBulkReport withStatus(Status status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + CreateBulkReport other = (CreateBulkReport) o; + return + Utils.enhancedDeepEquals(this.uuid, other.uuid) && + Utils.enhancedDeepEquals(this.status, other.status); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + uuid, status); + } + + @Override + public String toString() { + return Utils.toString(CreateBulkReport.class, + "uuid", uuid, + "status", status); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String uuid; + + private Status status; + + private Builder() { + // force use of static builder() method + } + + + /** + * Unique identifier of the bulk report batch. + */ + public Builder uuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + + /** + * The batch's processing state. + * - `pending`: accepted, not yet started + * - `processing`: reports are being generated + * - `completed`: all reports finished + * - `failed`: the batch failed before completing + */ + public Builder status(Status status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + public CreateBulkReport build() { + + return new CreateBulkReport( + uuid, status); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/CreateReportBody.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/CreateReportBody.java index 02b2852ee..01585643b 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/CreateReportBody.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/CreateReportBody.java @@ -30,13 +30,15 @@ public class CreateReportBody { * Columns to include in the report */ @JsonProperty("columns") - private List columns; + private List columns; /** - * How to group the report + * Optional. How to group the report. If omitted, sensible defaults are derived from the `columns` + * requested. */ + @JsonInclude(Include.NON_ABSENT) @JsonProperty("groupings") - private List groupings; + private Optional> groupings; /** * The title of the report @@ -49,7 +51,7 @@ public class CreateReportBody { * The type of file to generate */ @JsonProperty("file_type") - private FileType fileType; + private CreateReportBodyFileType fileType; /** * Whether to include subtotals and grand totals in the report @@ -58,6 +60,13 @@ public class CreateReportBody { @JsonProperty("with_totals") private Optional withTotals; + /** + * Which payroll date `start_date` and `end_date` filter against. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("date_filter_type") + private Optional dateFilterType; + /** * Start date of data to filter by */ @@ -98,7 +107,7 @@ public class CreateReportBody { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("employment_type") - private Optional employmentType; + private Optional employmentType; /** * Employee employment status to filter by @@ -130,17 +139,18 @@ public class CreateReportBody { @JsonCreator public CreateReportBody( - @JsonProperty("columns") List columns, - @JsonProperty("groupings") List groupings, + @JsonProperty("columns") List columns, + @JsonProperty("groupings") Optional> groupings, @JsonProperty("custom_name") Optional customName, - @JsonProperty("file_type") FileType fileType, + @JsonProperty("file_type") CreateReportBodyFileType fileType, @JsonProperty("with_totals") Optional withTotals, + @JsonProperty("date_filter_type") Optional dateFilterType, @JsonProperty("start_date") Optional startDate, @JsonProperty("end_date") Optional endDate, @JsonProperty("dismissed_start_date") Optional dismissedStartDate, @JsonProperty("dismissed_end_date") Optional dismissedEndDate, @JsonProperty("payment_method") Optional paymentMethod, - @JsonProperty("employment_type") Optional employmentType, + @JsonProperty("employment_type") Optional employmentType, @JsonProperty("employment_status") Optional employmentStatus, @JsonProperty("employee_uuids") JsonNullable> employeeUuids, @JsonProperty("department_uuids") Optional> departmentUuids, @@ -150,6 +160,7 @@ public CreateReportBody( Utils.checkNotNull(customName, "customName"); Utils.checkNotNull(fileType, "fileType"); Utils.checkNotNull(withTotals, "withTotals"); + Utils.checkNotNull(dateFilterType, "dateFilterType"); Utils.checkNotNull(startDate, "startDate"); Utils.checkNotNull(endDate, "endDate"); Utils.checkNotNull(dismissedStartDate, "dismissedStartDate"); @@ -165,6 +176,7 @@ public CreateReportBody( this.customName = customName; this.fileType = fileType; this.withTotals = withTotals; + this.dateFilterType = dateFilterType; this.startDate = startDate; this.endDate = endDate; this.dismissedStartDate = dismissedStartDate; @@ -178,30 +190,32 @@ public CreateReportBody( } public CreateReportBody( - List columns, - List groupings, - FileType fileType) { - this(columns, groupings, Optional.empty(), + List columns, + CreateReportBodyFileType fileType) { + this(columns, Optional.empty(), Optional.empty(), fileType, Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), - JsonNullable.undefined(), Optional.empty(), Optional.empty()); + Optional.empty(), JsonNullable.undefined(), Optional.empty(), + Optional.empty()); } /** * Columns to include in the report */ @JsonIgnore - public List columns() { + public List columns() { return columns; } /** - * How to group the report + * Optional. How to group the report. If omitted, sensible defaults are derived from the `columns` + * requested. */ + @SuppressWarnings("unchecked") @JsonIgnore - public List groupings() { - return groupings; + public Optional> groupings() { + return (Optional>) groupings; } /** @@ -216,7 +230,7 @@ public Optional customName() { * The type of file to generate */ @JsonIgnore - public FileType fileType() { + public CreateReportBodyFileType fileType() { return fileType; } @@ -228,6 +242,15 @@ public Optional withTotals() { return withTotals; } + /** + * Which payroll date `start_date` and `end_date` filter against. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional dateFilterType() { + return (Optional) dateFilterType; + } + /** * Start date of data to filter by */ @@ -274,8 +297,8 @@ public Optional paymentMethod() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional employmentType() { - return (Optional) employmentType; + public Optional employmentType() { + return (Optional) employmentType; } /** @@ -322,16 +345,28 @@ public static Builder builder() { /** * Columns to include in the report */ - public CreateReportBody withColumns(List columns) { + public CreateReportBody withColumns(List columns) { Utils.checkNotNull(columns, "columns"); this.columns = columns; return this; } /** - * How to group the report + * Optional. How to group the report. If omitted, sensible defaults are derived from the `columns` + * requested. + */ + public CreateReportBody withGroupings(List groupings) { + Utils.checkNotNull(groupings, "groupings"); + this.groupings = Optional.ofNullable(groupings); + return this; + } + + + /** + * Optional. How to group the report. If omitted, sensible defaults are derived from the `columns` + * requested. */ - public CreateReportBody withGroupings(List groupings) { + public CreateReportBody withGroupings(Optional> groupings) { Utils.checkNotNull(groupings, "groupings"); this.groupings = groupings; return this; @@ -359,7 +394,7 @@ public CreateReportBody withCustomName(Optional customName) { /** * The type of file to generate */ - public CreateReportBody withFileType(FileType fileType) { + public CreateReportBody withFileType(CreateReportBodyFileType fileType) { Utils.checkNotNull(fileType, "fileType"); this.fileType = fileType; return this; @@ -384,6 +419,25 @@ public CreateReportBody withWithTotals(Optional withTotals) { return this; } + /** + * Which payroll date `start_date` and `end_date` filter against. + */ + public CreateReportBody withDateFilterType(CreateReportBodyDateFilterType dateFilterType) { + Utils.checkNotNull(dateFilterType, "dateFilterType"); + this.dateFilterType = Optional.ofNullable(dateFilterType); + return this; + } + + + /** + * Which payroll date `start_date` and `end_date` filter against. + */ + public CreateReportBody withDateFilterType(Optional dateFilterType) { + Utils.checkNotNull(dateFilterType, "dateFilterType"); + this.dateFilterType = dateFilterType; + return this; + } + /** * Start date of data to filter by */ @@ -482,7 +536,7 @@ public CreateReportBody withPaymentMethod(Optional employmentType) { + public CreateReportBody withEmploymentType(Optional employmentType) { Utils.checkNotNull(employmentType, "employmentType"); this.employmentType = employmentType; return this; @@ -588,6 +642,7 @@ public boolean equals(java.lang.Object o) { Utils.enhancedDeepEquals(this.customName, other.customName) && Utils.enhancedDeepEquals(this.fileType, other.fileType) && Utils.enhancedDeepEquals(this.withTotals, other.withTotals) && + Utils.enhancedDeepEquals(this.dateFilterType, other.dateFilterType) && Utils.enhancedDeepEquals(this.startDate, other.startDate) && Utils.enhancedDeepEquals(this.endDate, other.endDate) && Utils.enhancedDeepEquals(this.dismissedStartDate, other.dismissedStartDate) && @@ -604,10 +659,11 @@ public boolean equals(java.lang.Object o) { public int hashCode() { return Utils.enhancedHash( columns, groupings, customName, - fileType, withTotals, startDate, - endDate, dismissedStartDate, dismissedEndDate, - paymentMethod, employmentType, employmentStatus, - employeeUuids, departmentUuids, workAddressUuids); + fileType, withTotals, dateFilterType, + startDate, endDate, dismissedStartDate, + dismissedEndDate, paymentMethod, employmentType, + employmentStatus, employeeUuids, departmentUuids, + workAddressUuids); } @Override @@ -618,6 +674,7 @@ public String toString() { "customName", customName, "fileType", fileType, "withTotals", withTotals, + "dateFilterType", dateFilterType, "startDate", startDate, "endDate", endDate, "dismissedStartDate", dismissedStartDate, @@ -633,16 +690,18 @@ public String toString() { @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private List columns; + private List columns; - private List groupings; + private Optional> groupings = Optional.empty(); private Optional customName = Optional.empty(); - private FileType fileType; + private CreateReportBodyFileType fileType; private Optional withTotals; + private Optional dateFilterType; + private Optional startDate = Optional.empty(); private Optional endDate = Optional.empty(); @@ -653,7 +712,7 @@ public final static class Builder { private Optional paymentMethod = Optional.empty(); - private Optional employmentType = Optional.empty(); + private Optional employmentType = Optional.empty(); private Optional employmentStatus = Optional.empty(); @@ -671,7 +730,7 @@ private Builder() { /** * Columns to include in the report */ - public Builder columns(List columns) { + public Builder columns(List columns) { Utils.checkNotNull(columns, "columns"); this.columns = columns; return this; @@ -679,9 +738,20 @@ public Builder columns(List columns) { /** - * How to group the report + * Optional. How to group the report. If omitted, sensible defaults are derived from the `columns` + * requested. */ - public Builder groupings(List groupings) { + public Builder groupings(List groupings) { + Utils.checkNotNull(groupings, "groupings"); + this.groupings = Optional.ofNullable(groupings); + return this; + } + + /** + * Optional. How to group the report. If omitted, sensible defaults are derived from the `columns` + * requested. + */ + public Builder groupings(Optional> groupings) { Utils.checkNotNull(groupings, "groupings"); this.groupings = groupings; return this; @@ -710,7 +780,7 @@ public Builder customName(Optional customName) { /** * The type of file to generate */ - public Builder fileType(FileType fileType) { + public Builder fileType(CreateReportBodyFileType fileType) { Utils.checkNotNull(fileType, "fileType"); this.fileType = fileType; return this; @@ -736,6 +806,25 @@ public Builder withTotals(Optional withTotals) { } + /** + * Which payroll date `start_date` and `end_date` filter against. + */ + public Builder dateFilterType(CreateReportBodyDateFilterType dateFilterType) { + Utils.checkNotNull(dateFilterType, "dateFilterType"); + this.dateFilterType = Optional.ofNullable(dateFilterType); + return this; + } + + /** + * Which payroll date `start_date` and `end_date` filter against. + */ + public Builder dateFilterType(Optional dateFilterType) { + Utils.checkNotNull(dateFilterType, "dateFilterType"); + this.dateFilterType = dateFilterType; + return this; + } + + /** * Start date of data to filter by */ @@ -834,7 +923,7 @@ public Builder paymentMethod(Optional p /** * Employee employment type to filter by */ - public Builder employmentType(EmploymentType employmentType) { + public Builder employmentType(CreateReportBodyEmploymentType employmentType) { Utils.checkNotNull(employmentType, "employmentType"); this.employmentType = Optional.ofNullable(employmentType); return this; @@ -843,7 +932,7 @@ public Builder employmentType(EmploymentType employmentType) { /** * Employee employment type to filter by */ - public Builder employmentType(Optional employmentType) { + public Builder employmentType(Optional employmentType) { Utils.checkNotNull(employmentType, "employmentType"); this.employmentType = employmentType; return this; @@ -929,13 +1018,17 @@ public CreateReportBody build() { if (withTotals == null) { withTotals = _SINGLETON_VALUE_WithTotals.value(); } + if (dateFilterType == null) { + dateFilterType = _SINGLETON_VALUE_DateFilterType.value(); + } return new CreateReportBody( columns, groupings, customName, - fileType, withTotals, startDate, - endDate, dismissedStartDate, dismissedEndDate, - paymentMethod, employmentType, employmentStatus, - employeeUuids, departmentUuids, workAddressUuids); + fileType, withTotals, dateFilterType, + startDate, endDate, dismissedStartDate, + dismissedEndDate, paymentMethod, employmentType, + employmentStatus, employeeUuids, departmentUuids, + workAddressUuids); } @@ -944,5 +1037,11 @@ public CreateReportBody build() { "with_totals", "false", new TypeReference>() {}); + + private static final LazySingletonValue> _SINGLETON_VALUE_DateFilterType = + new LazySingletonValue<>( + "date_filter_type", + "\"period_end_date\"", + new TypeReference>() {}); } } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/CreateReportBodyColumns.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/CreateReportBodyColumns.java new file mode 100644 index 000000000..c5ebc0ee2 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/CreateReportBodyColumns.java @@ -0,0 +1,119 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +public enum CreateReportBodyColumns { + ADDITIONAL_EARNINGS("additional_earnings"), + BANK_ACCOUNT_ACCOUNT_NUMBER("bank_account_account_number"), + BANK_ACCOUNT_ROUTING_NUMBER("bank_account_routing_number"), + BANK_ACCOUNT_TYPE("bank_account_type"), + BANK_ACCOUNT("bank_account"), + BONUS("bonus"), + CASH_TIPS("cash_tips"), + CHECK_AMOUNT("check_amount"), + CHECK_DATE("check_date"), + COMMISSION("commission"), + DATE_OF_BIRTH("date_of_birth"), + DOUBLE_OVERTIME_EARNINGS("double_overtime_earnings"), + DOUBLE_OVERTIME_HOURS("double_overtime_hours"), + DOUBLE_OVERTIME_RATE("double_overtime_rate"), + EMPLOYEE_ADDITIONAL_TAXES("employee_additional_taxes"), + EMPLOYEE_BENEFIT_CONTRIBUTIONS("employee_benefit_contributions"), + EMPLOYEE_COMPENSATION_TIME_PERIOD("employee_compensation_time_period"), + EMPLOYEE_COMPENSATION("employee_compensation"), + EMPLOYEE_DEDUCTIONS("employee_deductions"), + EMPLOYEE_DEPARTMENT("employee_department"), + EMPLOYEE_EMAIL("employee_email"), + EMPLOYEE_DONATIONS("employee_donations"), + EMPLOYEE_FEDERAL_INCOME_TAX("employee_federal_income_tax"), + EMPLOYEE_FIRST_NAME("employee_first_name"), + EMPLOYEE_LAST_NAME("employee_last_name"), + EMPLOYEE_MIDDLE_INITIAL("employee_middle_initial"), + EMPLOYEE_MEDICARE_ADDITIONAL_TAX("employee_medicare_additional_tax"), + EMPLOYEE_MEDICARE_TAX("employee_medicare_tax"), + EMPLOYEE_PHONE_NUMBER("employee_phone_number"), + EMPLOYEE_SOCIAL_SECURITY_TAX("employee_social_security_tax"), + EMPLOYEE_STATE_INCOME_TAX("employee_state_income_tax"), + EMPLOYEE_TAXES("employee_taxes"), + EMPLOYEE_UUID("employee_uuid"), + EMPLOYEE_WORK_EMAIL("employee_work_email"), + EMPLOYER_ADDITIONAL_TAXES("employer_additional_taxes"), + EMPLOYER_BENEFIT_CONTRIBUTIONS("employer_benefit_contributions"), + EMPLOYER_COST("employer_cost"), + EMPLOYER_FUTA_TAX("employer_futa_tax"), + EMPLOYER_MEDICARE_TAX("employer_medicare_tax"), + EMPLOYER_SOCIAL_SECURITY_TAX("employer_social_security_tax"), + EMPLOYER_SUTA_TAX("employer_suta_tax"), + EMPLOYER_TAXES("employer_taxes"), + EMPLOYMENT_TYPE("employment_type"), + EMPLOYMENT("employment"), + END_DATE("end_date"), + GARNISHMENTS("garnishments"), + GROSS_EARNINGS("gross_earnings"), + HOLIDAY_EARNINGS("holiday_earnings"), + HOLIDAY_HOURS("holiday_hours"), + HOME_ADDRESS_CITY("home_address_city"), + HOME_ADDRESS_STATE("home_address_state"), + HOME_ADDRESS_STREET("home_address_street"), + HOME_ADDRESS_ZIP("home_address_zip"), + HOME_ADDRESS("home_address"), + JOB_TITLE("job_title"), + NET_PAY("net_pay"), + ONE_TIME_REIMBURSEMENTS("one_time_reimbursements"), + OVERTIME_EARNINGS("overtime_earnings"), + OVERTIME_HOURS("overtime_hours"), + OVERTIME_RATE("overtime_rate"), + PAID_TIME_OFF_EARNINGS("paid_time_off_earnings"), + PAID_TIME_OFF_HOURS("paid_time_off_hours"), + PAID_TIME_OFF_RATE("paid_time_off_rate"), + PAY_PERIOD_END("pay_period_end"), + PAY_PERIOD_START("pay_period_start"), + PAYCHECK_TIPS("paycheck_tips"), + PAYMENT_METHOD("payment_method"), + PAYROLL_TYPE("payroll_type"), + PAYROLL_UUID("payroll_uuid"), + PREFERRED_FIRST_NAME("preferred_first_name"), + RECURRING_REIMBURSEMENTS("recurring_reimbursements"), + REGULAR_EARNINGS("regular_earnings"), + REGULAR_HOURS("regular_hours"), + REGULAR_RATE("regular_rate"), + REIMBURSEMENTS("reimbursements"), + RISK_CLASS_CODE("risk_class_code"), + SICK_RATE("sick_rate"), + SICK_TIME_OFF_EARNINGS("sick_time_off_earnings"), + SICK_TIME_OFF_HOURS("sick_time_off_hours"), + START_DATE("start_date"), + TOTAL_EMPLOYER_BENEFIT_CONTRIBUTIONS("total_employer_benefit_contributions"), + TOTAL_TIME_OFF_EARNINGS("total_time_off_earnings"), + TOTAL_TIME_OFF_HOURS("total_time_off_hours"), + WORK_ADDRESS_CITY("work_address_city"), + WORK_ADDRESS_STREET("work_address_street"), + WORK_ADDRESS_ZIP("work_address_zip"); + + @JsonValue + private final String value; + + CreateReportBodyColumns(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (CreateReportBodyColumns o: CreateReportBodyColumns.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/CreateReportBodyDateFilterType.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/CreateReportBodyDateFilterType.java new file mode 100644 index 000000000..cb8a974ac --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/CreateReportBodyDateFilterType.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * CreateReportBodyDateFilterType + * + *

    Which payroll date `start_date` and `end_date` filter against. + */ +public enum CreateReportBodyDateFilterType { + PERIOD_END_DATE("period_end_date"), + PERIOD_START_DATE("period_start_date"), + CHECK_DATE("check_date"); + + @JsonValue + private final String value; + + CreateReportBodyDateFilterType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (CreateReportBodyDateFilterType o: CreateReportBodyDateFilterType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/CreateReportBodyEmploymentType.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/CreateReportBodyEmploymentType.java new file mode 100644 index 000000000..b8df7ecb7 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/CreateReportBodyEmploymentType.java @@ -0,0 +1,43 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * CreateReportBodyEmploymentType + * + *

    Employee employment type to filter by + */ +public enum CreateReportBodyEmploymentType { + EXEMPT("exempt"), + SALARIED_NONEXEMPT("salaried_nonexempt"), + NONEXEMPT("nonexempt"), + COMMISSION_ONLY_EXEMPT("commission_only_exempt"), + COMMISSION_ONLY_NONEXEMPT("commission_only_nonexempt"); + + @JsonValue + private final String value; + + CreateReportBodyEmploymentType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (CreateReportBodyEmploymentType o: CreateReportBodyEmploymentType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/CreateReportBodyFileType.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/CreateReportBodyFileType.java new file mode 100644 index 000000000..12bb3606a --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/CreateReportBodyFileType.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * CreateReportBodyFileType + * + *

    The type of file to generate + */ +public enum CreateReportBodyFileType { + CSV("csv"), + JSON("json"), + PDF("pdf"); + + @JsonValue + private final String value; + + CreateReportBodyFileType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (CreateReportBodyFileType o: CreateReportBodyFileType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/CreateReportBodyGroupings.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/CreateReportBodyGroupings.java new file mode 100644 index 000000000..d89d2c3d5 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/CreateReportBodyGroupings.java @@ -0,0 +1,37 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +public enum CreateReportBodyGroupings { + PAYROLL("payroll"), + EMPLOYEE("employee"), + WORK_ADDRESS("work_address"), + WORK_ADDRESS_STATE("work_address_state"); + + @JsonValue + private final String value; + + CreateReportBodyGroupings(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (CreateReportBodyGroupings o: CreateReportBodyGroupings.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/CustomWithholdings.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/CustomWithholdings.java new file mode 100644 index 000000000..ac6e53278 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/CustomWithholdings.java @@ -0,0 +1,198 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.List; +import java.util.Optional; +import org.openapitools.jackson.nullable.JsonNullable; + +/** + * CustomWithholdings + * + *

    The one-time custom withholding overrides applied to this payroll for this employee. + * `federal` is null when no federal one-time override is set; `state` is an empty + * array when no state one-time overrides are set. + */ +public class CustomWithholdings { + /** + * Federal one-time custom withholding override applied to this payroll. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("federal") + private JsonNullable federal; + + /** + * State one-time custom withholding overrides applied to this payroll, one entry per state field. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("state") + private Optional> state; + + @JsonCreator + public CustomWithholdings( + @JsonProperty("federal") JsonNullable federal, + @JsonProperty("state") Optional> state) { + Utils.checkNotNull(federal, "federal"); + Utils.checkNotNull(state, "state"); + this.federal = federal; + this.state = state; + } + + public CustomWithholdings() { + this(JsonNullable.undefined(), Optional.empty()); + } + + /** + * Federal one-time custom withholding override applied to this payroll. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public JsonNullable federal() { + return (JsonNullable) federal; + } + + /** + * State one-time custom withholding overrides applied to this payroll, one entry per state field. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> state() { + return (Optional>) state; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Federal one-time custom withholding override applied to this payroll. + */ + public CustomWithholdings withFederal(Federal federal) { + Utils.checkNotNull(federal, "federal"); + this.federal = JsonNullable.of(federal); + return this; + } + + /** + * Federal one-time custom withholding override applied to this payroll. + */ + public CustomWithholdings withFederal(JsonNullable federal) { + Utils.checkNotNull(federal, "federal"); + this.federal = federal; + return this; + } + + /** + * State one-time custom withholding overrides applied to this payroll, one entry per state field. + */ + public CustomWithholdings withState(List state) { + Utils.checkNotNull(state, "state"); + this.state = Optional.ofNullable(state); + return this; + } + + + /** + * State one-time custom withholding overrides applied to this payroll, one entry per state field. + */ + public CustomWithholdings withState(Optional> state) { + Utils.checkNotNull(state, "state"); + this.state = state; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + CustomWithholdings other = (CustomWithholdings) o; + return + Utils.enhancedDeepEquals(this.federal, other.federal) && + Utils.enhancedDeepEquals(this.state, other.state); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + federal, state); + } + + @Override + public String toString() { + return Utils.toString(CustomWithholdings.class, + "federal", federal, + "state", state); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private JsonNullable federal = JsonNullable.undefined(); + + private Optional> state = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * Federal one-time custom withholding override applied to this payroll. + */ + public Builder federal(Federal federal) { + Utils.checkNotNull(federal, "federal"); + this.federal = JsonNullable.of(federal); + return this; + } + + /** + * Federal one-time custom withholding override applied to this payroll. + */ + public Builder federal(JsonNullable federal) { + Utils.checkNotNull(federal, "federal"); + this.federal = federal; + return this; + } + + + /** + * State one-time custom withholding overrides applied to this payroll, one entry per state field. + */ + public Builder state(List state) { + Utils.checkNotNull(state, "state"); + this.state = Optional.ofNullable(state); + return this; + } + + /** + * State one-time custom withholding overrides applied to this payroll, one entry per state field. + */ + public Builder state(Optional> state) { + Utils.checkNotNull(state, "state"); + this.state = state; + return this; + } + + public CustomWithholdings build() { + + return new CustomWithholdings( + federal, state); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/DateFilterType.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/DateFilterType.java new file mode 100644 index 000000000..ea2740cc2 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/DateFilterType.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * DateFilterType + * + *

    Which payroll date `start_date` and `end_date` filter against. + */ +public enum DateFilterType { + PERIOD_END_DATE("period_end_date"), + PERIOD_START_DATE("period_start_date"), + CHECK_DATE("check_date"); + + @JsonValue + private final String value; + + DateFilterType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (DateFilterType o: DateFilterType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/EmployeeAddress.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/EmployeeAddress.java index 794c7ec05..9312a90d3 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/EmployeeAddress.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/EmployeeAddress.java @@ -14,7 +14,9 @@ import java.lang.Boolean; import java.lang.Override; import java.lang.String; +import java.lang.SuppressWarnings; import java.time.LocalDate; +import java.util.List; import java.util.Optional; import org.openapitools.jackson.nullable.JsonNullable; @@ -93,6 +95,14 @@ public class EmployeeAddress { @JsonProperty("version") private String version; + /** + * An array of warning objects that provide additional information about the address. Warnings do not + * prevent the address from being saved. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("warnings") + private Optional> warnings; + @JsonCreator public EmployeeAddress( @JsonProperty("uuid") String uuid, @@ -106,7 +116,8 @@ public EmployeeAddress( @JsonProperty("zip") Optional zip, @JsonProperty("country") Optional country, @JsonProperty("active") Optional active, - @JsonProperty("version") String version) { + @JsonProperty("version") String version, + @JsonProperty("warnings") Optional> warnings) { Utils.checkNotNull(uuid, "uuid"); Utils.checkNotNull(employeeUuid, "employeeUuid"); Utils.checkNotNull(effectiveDate, "effectiveDate"); @@ -119,6 +130,7 @@ public EmployeeAddress( Utils.checkNotNull(country, "country"); Utils.checkNotNull(active, "active"); Utils.checkNotNull(version, "version"); + Utils.checkNotNull(warnings, "warnings"); this.uuid = uuid; this.employeeUuid = employeeUuid; this.effectiveDate = effectiveDate; @@ -131,6 +143,7 @@ public EmployeeAddress( this.country = country; this.active = active; this.version = version; + this.warnings = warnings; } public EmployeeAddress( @@ -139,7 +152,8 @@ public EmployeeAddress( this(uuid, Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), JsonNullable.undefined(), Optional.empty(), Optional.empty(), Optional.empty(), - Optional.empty(), Optional.empty(), version); + Optional.empty(), Optional.empty(), version, + Optional.empty()); } /** @@ -223,6 +237,16 @@ public String version() { return version; } + /** + * An array of warning objects that provide additional information about the address. Warnings do not + * prevent the address from being saved. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> warnings() { + return (Optional>) warnings; + } + public static Builder builder() { return new Builder(); } @@ -403,6 +427,27 @@ public EmployeeAddress withVersion(String version) { return this; } + /** + * An array of warning objects that provide additional information about the address. Warnings do not + * prevent the address from being saved. + */ + public EmployeeAddress withWarnings(List warnings) { + Utils.checkNotNull(warnings, "warnings"); + this.warnings = Optional.ofNullable(warnings); + return this; + } + + + /** + * An array of warning objects that provide additional information about the address. Warnings do not + * prevent the address from being saved. + */ + public EmployeeAddress withWarnings(Optional> warnings) { + Utils.checkNotNull(warnings, "warnings"); + this.warnings = warnings; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -424,7 +469,8 @@ public boolean equals(java.lang.Object o) { Utils.enhancedDeepEquals(this.zip, other.zip) && Utils.enhancedDeepEquals(this.country, other.country) && Utils.enhancedDeepEquals(this.active, other.active) && - Utils.enhancedDeepEquals(this.version, other.version); + Utils.enhancedDeepEquals(this.version, other.version) && + Utils.enhancedDeepEquals(this.warnings, other.warnings); } @Override @@ -433,7 +479,8 @@ public int hashCode() { uuid, employeeUuid, effectiveDate, courtesyWithholding, street1, street2, city, state, zip, - country, active, version); + country, active, version, + warnings); } @Override @@ -450,7 +497,8 @@ public String toString() { "zip", zip, "country", country, "active", active, - "version", version); + "version", version, + "warnings", warnings); } @SuppressWarnings("UnusedReturnValue") @@ -480,6 +528,8 @@ public final static class Builder { private String version; + private Optional> warnings = Optional.empty(); + private Builder() { // force use of static builder() method } @@ -662,6 +712,27 @@ public Builder version(String version) { return this; } + + /** + * An array of warning objects that provide additional information about the address. Warnings do not + * prevent the address from being saved. + */ + public Builder warnings(List warnings) { + Utils.checkNotNull(warnings, "warnings"); + this.warnings = Optional.ofNullable(warnings); + return this; + } + + /** + * An array of warning objects that provide additional information about the address. Warnings do not + * prevent the address from being saved. + */ + public Builder warnings(Optional> warnings) { + Utils.checkNotNull(warnings, "warnings"); + this.warnings = warnings; + return this; + } + public EmployeeAddress build() { if (country == null) { country = _SINGLETON_VALUE_Country.value(); @@ -671,7 +742,8 @@ public EmployeeAddress build() { uuid, employeeUuid, effectiveDate, courtesyWithholding, street1, street2, city, state, zip, - country, active, version); + country, active, version, + warnings); } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/EmployeeCompensations.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/EmployeeCompensations.java index 8eac7e304..6d9f07018 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/EmployeeCompensations.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/EmployeeCompensations.java @@ -102,11 +102,12 @@ public class EmployeeCompensations { private JsonNullable memo; /** - * An array of fixed compensations for the employee. Fixed compensations include tips, bonuses, and one - * time reimbursements. If this payroll has been processed, only fixed compensations with a value - * greater than 0.00 are returned. + * An array of fixed compensations for the employee. Fixed compensations include tips and bonuses. On + * regular payrolls, reimbursements are sent via the dedicated `reimbursements` array instead. * - *

    For an unprocessed payroll, all active fixed compensations are returned. + *

    Off-cycle payrolls continue to include reimbursements in `fixed_compensations`. If this payroll has + * been processed, only fixed compensations with a value greater than 0.00 are returned. For an + * unprocessed payroll, all active fixed compensations are returned. */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("fixed_compensations") @@ -137,6 +138,15 @@ public class EmployeeCompensations { @JsonProperty("reimbursements") private Optional> reimbursements; + /** + * The one-time custom withholding overrides applied to this payroll for this employee. + * `federal` is null when no federal one-time override is set; `state` is an empty + * array when no state one-time overrides are set. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("custom_withholdings") + private Optional customWithholdings; + /** * The current version of this employee compensation. This field is only available for prepared * payrolls. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for @@ -190,6 +200,7 @@ public EmployeeCompensations( @JsonProperty("hourly_compensations") Optional> hourlyCompensations, @JsonProperty("paid_time_off") Optional> paidTimeOff, @JsonProperty("reimbursements") Optional> reimbursements, + @JsonProperty("custom_withholdings") Optional customWithholdings, @JsonProperty("version") Optional version, @JsonProperty("deductions") Optional> deductions, @JsonProperty("taxes") Optional> taxes, @@ -208,6 +219,7 @@ public EmployeeCompensations( Utils.checkNotNull(hourlyCompensations, "hourlyCompensations"); Utils.checkNotNull(paidTimeOff, "paidTimeOff"); Utils.checkNotNull(reimbursements, "reimbursements"); + Utils.checkNotNull(customWithholdings, "customWithholdings"); Utils.checkNotNull(version, "version"); Utils.checkNotNull(deductions, "deductions"); Utils.checkNotNull(taxes, "taxes"); @@ -226,6 +238,7 @@ public EmployeeCompensations( this.hourlyCompensations = hourlyCompensations; this.paidTimeOff = paidTimeOff; this.reimbursements = reimbursements; + this.customWithholdings = customWithholdings; this.version = version; this.deductions = deductions; this.taxes = taxes; @@ -239,7 +252,8 @@ public EmployeeCompensations() { JsonNullable.undefined(), JsonNullable.undefined(), JsonNullable.undefined(), JsonNullable.undefined(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), - Optional.empty(), Optional.empty(), Optional.empty()); + Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty()); } /** @@ -331,11 +345,12 @@ public JsonNullable memo() { } /** - * An array of fixed compensations for the employee. Fixed compensations include tips, bonuses, and one - * time reimbursements. If this payroll has been processed, only fixed compensations with a value - * greater than 0.00 are returned. + * An array of fixed compensations for the employee. Fixed compensations include tips and bonuses. On + * regular payrolls, reimbursements are sent via the dedicated `reimbursements` array instead. * - *

    For an unprocessed payroll, all active fixed compensations are returned. + *

    Off-cycle payrolls continue to include reimbursements in `fixed_compensations`. If this payroll has + * been processed, only fixed compensations with a value greater than 0.00 are returned. For an + * unprocessed payroll, all active fixed compensations are returned. */ @SuppressWarnings("unchecked") @JsonIgnore @@ -374,6 +389,17 @@ public Optional> reimbursements() { return (Optional>) reimbursements; } + /** + * The one-time custom withholding overrides applied to this payroll for this employee. + * `federal` is null when no federal one-time override is set; `state` is an empty + * array when no state one-time overrides are set. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional customWithholdings() { + return (Optional) customWithholdings; + } + /** * The current version of this employee compensation. This field is only available for prepared * payrolls. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for @@ -622,11 +648,12 @@ public EmployeeCompensations withMemo(JsonNullable memo) { } /** - * An array of fixed compensations for the employee. Fixed compensations include tips, bonuses, and one - * time reimbursements. If this payroll has been processed, only fixed compensations with a value - * greater than 0.00 are returned. + * An array of fixed compensations for the employee. Fixed compensations include tips and bonuses. On + * regular payrolls, reimbursements are sent via the dedicated `reimbursements` array instead. * - *

    For an unprocessed payroll, all active fixed compensations are returned. + *

    Off-cycle payrolls continue to include reimbursements in `fixed_compensations`. If this payroll has + * been processed, only fixed compensations with a value greater than 0.00 are returned. For an + * unprocessed payroll, all active fixed compensations are returned. */ public EmployeeCompensations withFixedCompensations(List fixedCompensations) { Utils.checkNotNull(fixedCompensations, "fixedCompensations"); @@ -636,11 +663,12 @@ public EmployeeCompensations withFixedCompensations(ListFor an unprocessed payroll, all active fixed compensations are returned. + *

    Off-cycle payrolls continue to include reimbursements in `fixed_compensations`. If this payroll has + * been processed, only fixed compensations with a value greater than 0.00 are returned. For an + * unprocessed payroll, all active fixed compensations are returned. */ public EmployeeCompensations withFixedCompensations(Optional> fixedCompensations) { Utils.checkNotNull(fixedCompensations, "fixedCompensations"); @@ -713,6 +741,29 @@ public EmployeeCompensations withReimbursements(Optional customWithholdings) { + Utils.checkNotNull(customWithholdings, "customWithholdings"); + this.customWithholdings = customWithholdings; + return this; + } + /** * The current version of this employee compensation. This field is only available for prepared * payrolls. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for @@ -836,6 +887,7 @@ public boolean equals(java.lang.Object o) { Utils.enhancedDeepEquals(this.hourlyCompensations, other.hourlyCompensations) && Utils.enhancedDeepEquals(this.paidTimeOff, other.paidTimeOff) && Utils.enhancedDeepEquals(this.reimbursements, other.reimbursements) && + Utils.enhancedDeepEquals(this.customWithholdings, other.customWithholdings) && Utils.enhancedDeepEquals(this.version, other.version) && Utils.enhancedDeepEquals(this.deductions, other.deductions) && Utils.enhancedDeepEquals(this.taxes, other.taxes) && @@ -850,9 +902,9 @@ public int hashCode() { preferredFirstName, lastName, grossPay, netPay, checkAmount, paymentMethod, memo, fixedCompensations, hourlyCompensations, - paidTimeOff, reimbursements, version, - deductions, taxes, benefits, - additionalProperties); + paidTimeOff, reimbursements, customWithholdings, + version, deductions, taxes, + benefits, additionalProperties); } @Override @@ -872,6 +924,7 @@ public String toString() { "hourlyCompensations", hourlyCompensations, "paidTimeOff", paidTimeOff, "reimbursements", reimbursements, + "customWithholdings", customWithholdings, "version", version, "deductions", deductions, "taxes", taxes, @@ -910,6 +963,8 @@ public final static class Builder { private Optional> reimbursements = Optional.empty(); + private Optional customWithholdings = Optional.empty(); + private Optional version = Optional.empty(); private Optional> deductions = Optional.empty(); @@ -1130,11 +1185,12 @@ public Builder memo(JsonNullable memo) { /** - * An array of fixed compensations for the employee. Fixed compensations include tips, bonuses, and one - * time reimbursements. If this payroll has been processed, only fixed compensations with a value - * greater than 0.00 are returned. + * An array of fixed compensations for the employee. Fixed compensations include tips and bonuses. On + * regular payrolls, reimbursements are sent via the dedicated `reimbursements` array instead. * - *

    For an unprocessed payroll, all active fixed compensations are returned. + *

    Off-cycle payrolls continue to include reimbursements in `fixed_compensations`. If this payroll has + * been processed, only fixed compensations with a value greater than 0.00 are returned. For an + * unprocessed payroll, all active fixed compensations are returned. */ public Builder fixedCompensations(List fixedCompensations) { Utils.checkNotNull(fixedCompensations, "fixedCompensations"); @@ -1143,11 +1199,12 @@ public Builder fixedCompensations(List fixedCompe } /** - * An array of fixed compensations for the employee. Fixed compensations include tips, bonuses, and one - * time reimbursements. If this payroll has been processed, only fixed compensations with a value - * greater than 0.00 are returned. + * An array of fixed compensations for the employee. Fixed compensations include tips and bonuses. On + * regular payrolls, reimbursements are sent via the dedicated `reimbursements` array instead. * - *

    For an unprocessed payroll, all active fixed compensations are returned. + *

    Off-cycle payrolls continue to include reimbursements in `fixed_compensations`. If this payroll has + * been processed, only fixed compensations with a value greater than 0.00 are returned. For an + * unprocessed payroll, all active fixed compensations are returned. */ public Builder fixedCompensations(Optional> fixedCompensations) { Utils.checkNotNull(fixedCompensations, "fixedCompensations"); @@ -1221,6 +1278,29 @@ public Builder reimbursements(Optional } + /** + * The one-time custom withholding overrides applied to this payroll for this employee. + * `federal` is null when no federal one-time override is set; `state` is an empty + * array when no state one-time overrides are set. + */ + public Builder customWithholdings(PayrollShowCustomWithholdings customWithholdings) { + Utils.checkNotNull(customWithholdings, "customWithholdings"); + this.customWithholdings = Optional.ofNullable(customWithholdings); + return this; + } + + /** + * The one-time custom withholding overrides applied to this payroll for this employee. + * `federal` is null when no federal one-time override is set; `state` is an empty + * array when no state one-time overrides are set. + */ + public Builder customWithholdings(Optional customWithholdings) { + Utils.checkNotNull(customWithholdings, "customWithholdings"); + this.customWithholdings = customWithholdings; + return this; + } + + /** * The current version of this employee compensation. This field is only available for prepared * payrolls. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for @@ -1329,8 +1409,9 @@ public EmployeeCompensations build() { preferredFirstName, lastName, grossPay, netPay, checkAmount, paymentMethod, memo, fixedCompensations, hourlyCompensations, - paidTimeOff, reimbursements, version, - deductions, taxes, benefits) + paidTimeOff, reimbursements, customWithholdings, + version, deductions, taxes, + benefits) .withAdditionalProperties(additionalProperties); } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/EmployeeOnboardingStatus.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/EmployeeOnboardingStatus.java index 9eb3f4c39..b93f57ea6 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/EmployeeOnboardingStatus.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/EmployeeOnboardingStatus.java @@ -41,22 +41,43 @@ public class EmployeeOnboardingStatus { @JsonProperty("onboarding_steps") private Optional> onboardingSteps; + /** + * Validation issues that should be resolved before this employee's onboarding is complete. Each entry + * identifies an affected field, a category describing the type of problem, and a human-readable + * message. + * + *

    Supported categories: + * + *

    - `duplicate_value`: Another employee in the same company already has this value. To resolve, cancel + * this onboarding and initiate a rehire if it's a returning employee, or contact support to + * investigate the conflict. + * + *

    This list may grow over time as new validation rules are added. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("blockers") + private Optional> blockers; + @JsonCreator public EmployeeOnboardingStatus( @JsonProperty("uuid") String uuid, @JsonProperty("onboarding_status") Optional onboardingStatus, - @JsonProperty("onboarding_steps") Optional> onboardingSteps) { + @JsonProperty("onboarding_steps") Optional> onboardingSteps, + @JsonProperty("blockers") Optional> blockers) { Utils.checkNotNull(uuid, "uuid"); Utils.checkNotNull(onboardingStatus, "onboardingStatus"); Utils.checkNotNull(onboardingSteps, "onboardingSteps"); + Utils.checkNotNull(blockers, "blockers"); this.uuid = uuid; this.onboardingStatus = onboardingStatus; this.onboardingSteps = onboardingSteps; + this.blockers = blockers; } public EmployeeOnboardingStatus( String uuid) { - this(uuid, Optional.empty(), Optional.empty()); + this(uuid, Optional.empty(), Optional.empty(), + Optional.empty()); } /** @@ -84,6 +105,25 @@ public Optional> onboardingSteps() return (Optional>) onboardingSteps; } + /** + * Validation issues that should be resolved before this employee's onboarding is complete. Each entry + * identifies an affected field, a category describing the type of problem, and a human-readable + * message. + * + *

    Supported categories: + * + *

    - `duplicate_value`: Another employee in the same company already has this value. To resolve, cancel + * this onboarding and initiate a rehire if it's a returning employee, or contact support to + * investigate the conflict. + * + *

    This list may grow over time as new validation rules are added. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> blockers() { + return (Optional>) blockers; + } + public static Builder builder() { return new Builder(); } @@ -136,6 +176,45 @@ public EmployeeOnboardingStatus withOnboardingSteps(OptionalSupported categories: + * + *

    - `duplicate_value`: Another employee in the same company already has this value. To resolve, cancel + * this onboarding and initiate a rehire if it's a returning employee, or contact support to + * investigate the conflict. + * + *

    This list may grow over time as new validation rules are added. + */ + public EmployeeOnboardingStatus withBlockers(List blockers) { + Utils.checkNotNull(blockers, "blockers"); + this.blockers = Optional.ofNullable(blockers); + return this; + } + + + /** + * Validation issues that should be resolved before this employee's onboarding is complete. Each entry + * identifies an affected field, a category describing the type of problem, and a human-readable + * message. + * + *

    Supported categories: + * + *

    - `duplicate_value`: Another employee in the same company already has this value. To resolve, cancel + * this onboarding and initiate a rehire if it's a returning employee, or contact support to + * investigate the conflict. + * + *

    This list may grow over time as new validation rules are added. + */ + public EmployeeOnboardingStatus withBlockers(Optional> blockers) { + Utils.checkNotNull(blockers, "blockers"); + this.blockers = blockers; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -148,13 +227,15 @@ public boolean equals(java.lang.Object o) { return Utils.enhancedDeepEquals(this.uuid, other.uuid) && Utils.enhancedDeepEquals(this.onboardingStatus, other.onboardingStatus) && - Utils.enhancedDeepEquals(this.onboardingSteps, other.onboardingSteps); + Utils.enhancedDeepEquals(this.onboardingSteps, other.onboardingSteps) && + Utils.enhancedDeepEquals(this.blockers, other.blockers); } @Override public int hashCode() { return Utils.enhancedHash( - uuid, onboardingStatus, onboardingSteps); + uuid, onboardingStatus, onboardingSteps, + blockers); } @Override @@ -162,7 +243,8 @@ public String toString() { return Utils.toString(EmployeeOnboardingStatus.class, "uuid", uuid, "onboardingStatus", onboardingStatus, - "onboardingSteps", onboardingSteps); + "onboardingSteps", onboardingSteps, + "blockers", blockers); } @SuppressWarnings("UnusedReturnValue") @@ -174,6 +256,8 @@ public final static class Builder { private Optional> onboardingSteps = Optional.empty(); + private Optional> blockers = Optional.empty(); + private Builder() { // force use of static builder() method } @@ -226,10 +310,50 @@ public Builder onboardingSteps(OptionalSupported categories: + * + *

    - `duplicate_value`: Another employee in the same company already has this value. To resolve, cancel + * this onboarding and initiate a rehire if it's a returning employee, or contact support to + * investigate the conflict. + * + *

    This list may grow over time as new validation rules are added. + */ + public Builder blockers(List blockers) { + Utils.checkNotNull(blockers, "blockers"); + this.blockers = Optional.ofNullable(blockers); + return this; + } + + /** + * Validation issues that should be resolved before this employee's onboarding is complete. Each entry + * identifies an affected field, a category describing the type of problem, and a human-readable + * message. + * + *

    Supported categories: + * + *

    - `duplicate_value`: Another employee in the same company already has this value. To resolve, cancel + * this onboarding and initiate a rehire if it's a returning employee, or contact support to + * investigate the conflict. + * + *

    This list may grow over time as new validation rules are added. + */ + public Builder blockers(Optional> blockers) { + Utils.checkNotNull(blockers, "blockers"); + this.blockers = blockers; + return this; + } + public EmployeeOnboardingStatus build() { return new EmployeeOnboardingStatus( - uuid, onboardingStatus, onboardingSteps); + uuid, onboardingStatus, onboardingSteps, + blockers); } } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/EmployeeOnboardingStatusCategory.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/EmployeeOnboardingStatusCategory.java new file mode 100644 index 000000000..cadd10a9c --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/EmployeeOnboardingStatusCategory.java @@ -0,0 +1,39 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * EmployeeOnboardingStatusCategory + * + *

    Category of the blocker. See the array-level description for resolution guidance. + */ +public enum EmployeeOnboardingStatusCategory { + DUPLICATE_VALUE("duplicate_value"); + + @JsonValue + private final String value; + + EmployeeOnboardingStatusCategory(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (EmployeeOnboardingStatusCategory o: EmployeeOnboardingStatusCategory.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/EmploymentStatus.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/EmploymentStatus.java index 7d755b84f..34f3f1d0d 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/EmploymentStatus.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/EmploymentStatus.java @@ -11,16 +11,16 @@ /** * EmploymentStatus * - *

    The employee's employment status. Supplying an invalid option will set the employment_status to - * *not_set*. + *

    Employee employment status to filter by. */ public enum EmploymentStatus { - PART_TIME("part_time"), - FULL_TIME("full_time"), - PART_TIME_ELIGIBLE("part_time_eligible"), - VARIABLE("variable"), - SEASONAL("seasonal"), - NOT_SET("not_set"); + ACTIVE_FULL_TIME("active_full_time"), + ACTIVE_PART_TIME("active_part_time"), + ACTIVE_PART_TIME_ELIGIBLE("active_part_time_eligible"), + ACTIVE_VARIABLE("active_variable"), + ACTIVE_SEASONAL("active_seasonal"), + ACTIVE("active"), + DISMISSED("dismissed"); @JsonValue private final String value; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/EmploymentType.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/EmploymentType.java index 55607ea5d..24395464e 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/EmploymentType.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/EmploymentType.java @@ -11,7 +11,7 @@ /** * EmploymentType * - *

    Employee employment type to filter by + *

    Employee employment type to filter by. */ public enum EmploymentType { EXEMPT("exempt"), diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/Exclusions.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/Exclusions.java index 80df42c77..ee3eb4c5d 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/Exclusions.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/Exclusions.java @@ -12,89 +12,156 @@ import java.lang.Long; import java.lang.Override; import java.lang.String; +import java.lang.SuppressWarnings; import java.util.Optional; public class Exclusions { /** - * The external ID of the excluded item(s). + * The index of this payroll in the original POST batch array. */ @JsonInclude(Include.NON_ABSENT) - @JsonProperty("external_id") - private Optional externalId; + @JsonProperty("idx") + private Optional idx; /** - * The exclusion category. + * The type of entity this exclusion represents. */ @JsonInclude(Include.NON_ABSENT) - @JsonProperty("category") - private Optional category; + @JsonProperty("entity_type") + private Optional entityType; /** - * Human-readable explanation for exclusion. + * The UUID of the excluded payroll. */ @JsonInclude(Include.NON_ABSENT) - @JsonProperty("message") - private Optional message; + @JsonProperty("uuid") + private Optional uuid; + + /** + * The UUID of the company asserted to own the payroll. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("company_uuid") + private Optional companyUuid; /** - * Number of items affected by this exclusion. + * Always `failed` for an excluded payroll. */ @JsonInclude(Include.NON_ABSENT) - @JsonProperty("item_count") - private Optional itemCount; + @JsonProperty("status") + private Optional status; + + /** + * Machine-readable category for why the payroll was excluded. + * - `not_found`: the payroll does not exist, or is not associated with a company the partner is mapped + * to + * - `duplicate_operation`: the same payroll UUID appeared more than once in the request; only the + * first occurrence is processed + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("category") + private Optional category; + + /** + * Human-readable explanation for the exclusion. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("message") + private Optional message; @JsonCreator public Exclusions( - @JsonProperty("external_id") Optional externalId, - @JsonProperty("category") Optional category, - @JsonProperty("message") Optional message, - @JsonProperty("item_count") Optional itemCount) { - Utils.checkNotNull(externalId, "externalId"); + @JsonProperty("idx") Optional idx, + @JsonProperty("entity_type") Optional entityType, + @JsonProperty("uuid") Optional uuid, + @JsonProperty("company_uuid") Optional companyUuid, + @JsonProperty("status") Optional status, + @JsonProperty("category") Optional category, + @JsonProperty("message") Optional message) { + Utils.checkNotNull(idx, "idx"); + Utils.checkNotNull(entityType, "entityType"); + Utils.checkNotNull(uuid, "uuid"); + Utils.checkNotNull(companyUuid, "companyUuid"); + Utils.checkNotNull(status, "status"); Utils.checkNotNull(category, "category"); Utils.checkNotNull(message, "message"); - Utils.checkNotNull(itemCount, "itemCount"); - this.externalId = externalId; + this.idx = idx; + this.entityType = entityType; + this.uuid = uuid; + this.companyUuid = companyUuid; + this.status = status; this.category = category; this.message = message; - this.itemCount = itemCount; } public Exclusions() { this(Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty()); } /** - * The external ID of the excluded item(s). + * The index of this payroll in the original POST batch array. */ @JsonIgnore - public Optional externalId() { - return externalId; + public Optional idx() { + return idx; } /** - * The exclusion category. + * The type of entity this exclusion represents. */ + @SuppressWarnings("unchecked") @JsonIgnore - public Optional category() { - return category; + public Optional entityType() { + return (Optional) entityType; } /** - * Human-readable explanation for exclusion. + * The UUID of the excluded payroll. */ @JsonIgnore - public Optional message() { - return message; + public Optional uuid() { + return uuid; + } + + /** + * The UUID of the company asserted to own the payroll. + */ + @JsonIgnore + public Optional companyUuid() { + return companyUuid; + } + + /** + * Always `failed` for an excluded payroll. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional status() { + return (Optional) status; } /** - * Number of items affected by this exclusion. + * Machine-readable category for why the payroll was excluded. + * - `not_found`: the payroll does not exist, or is not associated with a company the partner is mapped + * to + * - `duplicate_operation`: the same payroll UUID appeared more than once in the request; only the + * first occurrence is processed */ + @SuppressWarnings("unchecked") @JsonIgnore - public Optional itemCount() { - return itemCount; + public Optional category() { + return (Optional) category; + } + + /** + * Human-readable explanation for the exclusion. + */ + @JsonIgnore + public Optional message() { + return message; } public static Builder builder() { @@ -103,78 +170,143 @@ public static Builder builder() { /** - * The external ID of the excluded item(s). + * The index of this payroll in the original POST batch array. */ - public Exclusions withExternalId(String externalId) { - Utils.checkNotNull(externalId, "externalId"); - this.externalId = Optional.ofNullable(externalId); + public Exclusions withIdx(long idx) { + Utils.checkNotNull(idx, "idx"); + this.idx = Optional.ofNullable(idx); return this; } /** - * The external ID of the excluded item(s). + * The index of this payroll in the original POST batch array. */ - public Exclusions withExternalId(Optional externalId) { - Utils.checkNotNull(externalId, "externalId"); - this.externalId = externalId; + public Exclusions withIdx(Optional idx) { + Utils.checkNotNull(idx, "idx"); + this.idx = idx; return this; } /** - * The exclusion category. + * The type of entity this exclusion represents. */ - public Exclusions withCategory(String category) { - Utils.checkNotNull(category, "category"); - this.category = Optional.ofNullable(category); + public Exclusions withEntityType(PayrollBatchResultsEntityType entityType) { + Utils.checkNotNull(entityType, "entityType"); + this.entityType = Optional.ofNullable(entityType); return this; } /** - * The exclusion category. + * The type of entity this exclusion represents. */ - public Exclusions withCategory(Optional category) { - Utils.checkNotNull(category, "category"); - this.category = category; + public Exclusions withEntityType(Optional entityType) { + Utils.checkNotNull(entityType, "entityType"); + this.entityType = entityType; return this; } /** - * Human-readable explanation for exclusion. + * The UUID of the excluded payroll. */ - public Exclusions withMessage(String message) { - Utils.checkNotNull(message, "message"); - this.message = Optional.ofNullable(message); + public Exclusions withUuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = Optional.ofNullable(uuid); return this; } /** - * Human-readable explanation for exclusion. + * The UUID of the excluded payroll. */ - public Exclusions withMessage(Optional message) { - Utils.checkNotNull(message, "message"); - this.message = message; + public Exclusions withUuid(Optional uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + /** + * The UUID of the company asserted to own the payroll. + */ + public Exclusions withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = Optional.ofNullable(companyUuid); + return this; + } + + + /** + * The UUID of the company asserted to own the payroll. + */ + public Exclusions withCompanyUuid(Optional companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + /** + * Always `failed` for an excluded payroll. + */ + public Exclusions withStatus(PayrollBatchResultsExclusionsStatus status) { + Utils.checkNotNull(status, "status"); + this.status = Optional.ofNullable(status); + return this; + } + + + /** + * Always `failed` for an excluded payroll. + */ + public Exclusions withStatus(Optional status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + /** + * Machine-readable category for why the payroll was excluded. + * - `not_found`: the payroll does not exist, or is not associated with a company the partner is mapped + * to + * - `duplicate_operation`: the same payroll UUID appeared more than once in the request; only the + * first occurrence is processed + */ + public Exclusions withCategory(PayrollBatchResultsCategory category) { + Utils.checkNotNull(category, "category"); + this.category = Optional.ofNullable(category); return this; } + /** - * Number of items affected by this exclusion. + * Machine-readable category for why the payroll was excluded. + * - `not_found`: the payroll does not exist, or is not associated with a company the partner is mapped + * to + * - `duplicate_operation`: the same payroll UUID appeared more than once in the request; only the + * first occurrence is processed */ - public Exclusions withItemCount(long itemCount) { - Utils.checkNotNull(itemCount, "itemCount"); - this.itemCount = Optional.ofNullable(itemCount); + public Exclusions withCategory(Optional category) { + Utils.checkNotNull(category, "category"); + this.category = category; + return this; + } + + /** + * Human-readable explanation for the exclusion. + */ + public Exclusions withMessage(String message) { + Utils.checkNotNull(message, "message"); + this.message = Optional.ofNullable(message); return this; } /** - * Number of items affected by this exclusion. + * Human-readable explanation for the exclusion. */ - public Exclusions withItemCount(Optional itemCount) { - Utils.checkNotNull(itemCount, "itemCount"); - this.itemCount = itemCount; + public Exclusions withMessage(Optional message) { + Utils.checkNotNull(message, "message"); + this.message = message; return this; } @@ -188,38 +320,51 @@ public boolean equals(java.lang.Object o) { } Exclusions other = (Exclusions) o; return - Utils.enhancedDeepEquals(this.externalId, other.externalId) && + Utils.enhancedDeepEquals(this.idx, other.idx) && + Utils.enhancedDeepEquals(this.entityType, other.entityType) && + Utils.enhancedDeepEquals(this.uuid, other.uuid) && + Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && + Utils.enhancedDeepEquals(this.status, other.status) && Utils.enhancedDeepEquals(this.category, other.category) && - Utils.enhancedDeepEquals(this.message, other.message) && - Utils.enhancedDeepEquals(this.itemCount, other.itemCount); + Utils.enhancedDeepEquals(this.message, other.message); } @Override public int hashCode() { return Utils.enhancedHash( - externalId, category, message, - itemCount); + idx, entityType, uuid, + companyUuid, status, category, + message); } @Override public String toString() { return Utils.toString(Exclusions.class, - "externalId", externalId, + "idx", idx, + "entityType", entityType, + "uuid", uuid, + "companyUuid", companyUuid, + "status", status, "category", category, - "message", message, - "itemCount", itemCount); + "message", message); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private Optional externalId = Optional.empty(); + private Optional idx = Optional.empty(); - private Optional category = Optional.empty(); + private Optional entityType = Optional.empty(); - private Optional message = Optional.empty(); + private Optional uuid = Optional.empty(); + + private Optional companyUuid = Optional.empty(); + + private Optional status = Optional.empty(); - private Optional itemCount = Optional.empty(); + private Optional category = Optional.empty(); + + private Optional message = Optional.empty(); private Builder() { // force use of static builder() method @@ -227,85 +372,151 @@ private Builder() { /** - * The external ID of the excluded item(s). + * The index of this payroll in the original POST batch array. */ - public Builder externalId(String externalId) { - Utils.checkNotNull(externalId, "externalId"); - this.externalId = Optional.ofNullable(externalId); + public Builder idx(long idx) { + Utils.checkNotNull(idx, "idx"); + this.idx = Optional.ofNullable(idx); return this; } /** - * The external ID of the excluded item(s). + * The index of this payroll in the original POST batch array. */ - public Builder externalId(Optional externalId) { - Utils.checkNotNull(externalId, "externalId"); - this.externalId = externalId; + public Builder idx(Optional idx) { + Utils.checkNotNull(idx, "idx"); + this.idx = idx; return this; } /** - * The exclusion category. + * The type of entity this exclusion represents. */ - public Builder category(String category) { - Utils.checkNotNull(category, "category"); - this.category = Optional.ofNullable(category); + public Builder entityType(PayrollBatchResultsEntityType entityType) { + Utils.checkNotNull(entityType, "entityType"); + this.entityType = Optional.ofNullable(entityType); return this; } /** - * The exclusion category. + * The type of entity this exclusion represents. */ - public Builder category(Optional category) { - Utils.checkNotNull(category, "category"); - this.category = category; + public Builder entityType(Optional entityType) { + Utils.checkNotNull(entityType, "entityType"); + this.entityType = entityType; return this; } /** - * Human-readable explanation for exclusion. + * The UUID of the excluded payroll. */ - public Builder message(String message) { - Utils.checkNotNull(message, "message"); - this.message = Optional.ofNullable(message); + public Builder uuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = Optional.ofNullable(uuid); return this; } /** - * Human-readable explanation for exclusion. + * The UUID of the excluded payroll. */ - public Builder message(Optional message) { - Utils.checkNotNull(message, "message"); - this.message = message; + public Builder uuid(Optional uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + + /** + * The UUID of the company asserted to own the payroll. + */ + public Builder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = Optional.ofNullable(companyUuid); + return this; + } + + /** + * The UUID of the company asserted to own the payroll. + */ + public Builder companyUuid(Optional companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; return this; } /** - * Number of items affected by this exclusion. + * Always `failed` for an excluded payroll. */ - public Builder itemCount(long itemCount) { - Utils.checkNotNull(itemCount, "itemCount"); - this.itemCount = Optional.ofNullable(itemCount); + public Builder status(PayrollBatchResultsExclusionsStatus status) { + Utils.checkNotNull(status, "status"); + this.status = Optional.ofNullable(status); return this; } /** - * Number of items affected by this exclusion. + * Always `failed` for an excluded payroll. */ - public Builder itemCount(Optional itemCount) { - Utils.checkNotNull(itemCount, "itemCount"); - this.itemCount = itemCount; + public Builder status(Optional status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + + /** + * Machine-readable category for why the payroll was excluded. + * - `not_found`: the payroll does not exist, or is not associated with a company the partner is mapped + * to + * - `duplicate_operation`: the same payroll UUID appeared more than once in the request; only the + * first occurrence is processed + */ + public Builder category(PayrollBatchResultsCategory category) { + Utils.checkNotNull(category, "category"); + this.category = Optional.ofNullable(category); + return this; + } + + /** + * Machine-readable category for why the payroll was excluded. + * - `not_found`: the payroll does not exist, or is not associated with a company the partner is mapped + * to + * - `duplicate_operation`: the same payroll UUID appeared more than once in the request; only the + * first occurrence is processed + */ + public Builder category(Optional category) { + Utils.checkNotNull(category, "category"); + this.category = category; + return this; + } + + + /** + * Human-readable explanation for the exclusion. + */ + public Builder message(String message) { + Utils.checkNotNull(message, "message"); + this.message = Optional.ofNullable(message); + return this; + } + + /** + * Human-readable explanation for the exclusion. + */ + public Builder message(Optional message) { + Utils.checkNotNull(message, "message"); + this.message = message; return this; } public Exclusions build() { return new Exclusions( - externalId, category, message, - itemCount); + idx, entityType, uuid, + companyUuid, status, category, + message); } } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/Federal.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/Federal.java new file mode 100644 index 000000000..1f54cd29e --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/Federal.java @@ -0,0 +1,255 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + +/** + * Federal + * + *

    Federal one-time custom withholding override applied to this payroll. + */ +public class Federal { + /** + * Override mode. Only `one_time` is currently exposed. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("override_type") + private Optional overrideType; + + /** + * The amount that was withheld for this payroll. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("amount") + private Optional amount; + + /** + * How to interpret the amount. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("amount_type") + private Optional amountType; + + @JsonCreator + public Federal( + @JsonProperty("override_type") Optional overrideType, + @JsonProperty("amount") Optional amount, + @JsonProperty("amount_type") Optional amountType) { + Utils.checkNotNull(overrideType, "overrideType"); + Utils.checkNotNull(amount, "amount"); + Utils.checkNotNull(amountType, "amountType"); + this.overrideType = overrideType; + this.amount = amount; + this.amountType = amountType; + } + + public Federal() { + this(Optional.empty(), Optional.empty(), Optional.empty()); + } + + /** + * Override mode. Only `one_time` is currently exposed. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional overrideType() { + return (Optional) overrideType; + } + + /** + * The amount that was withheld for this payroll. + */ + @JsonIgnore + public Optional amount() { + return amount; + } + + /** + * How to interpret the amount. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional amountType() { + return (Optional) amountType; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public Federal withOverrideType(OverrideType overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = Optional.ofNullable(overrideType); + return this; + } + + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public Federal withOverrideType(Optional overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = overrideType; + return this; + } + + /** + * The amount that was withheld for this payroll. + */ + public Federal withAmount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = Optional.ofNullable(amount); + return this; + } + + + /** + * The amount that was withheld for this payroll. + */ + public Federal withAmount(Optional amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + /** + * How to interpret the amount. + */ + public Federal withAmountType(PayrollEmployeeCompensationsTypeAmountType amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = Optional.ofNullable(amountType); + return this; + } + + + /** + * How to interpret the amount. + */ + public Federal withAmountType(Optional amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = amountType; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + Federal other = (Federal) o; + return + Utils.enhancedDeepEquals(this.overrideType, other.overrideType) && + Utils.enhancedDeepEquals(this.amount, other.amount) && + Utils.enhancedDeepEquals(this.amountType, other.amountType); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + overrideType, amount, amountType); + } + + @Override + public String toString() { + return Utils.toString(Federal.class, + "overrideType", overrideType, + "amount", amount, + "amountType", amountType); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional overrideType = Optional.empty(); + + private Optional amount = Optional.empty(); + + private Optional amountType = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public Builder overrideType(OverrideType overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = Optional.ofNullable(overrideType); + return this; + } + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public Builder overrideType(Optional overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = overrideType; + return this; + } + + + /** + * The amount that was withheld for this payroll. + */ + public Builder amount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = Optional.ofNullable(amount); + return this; + } + + /** + * The amount that was withheld for this payroll. + */ + public Builder amount(Optional amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + + /** + * How to interpret the amount. + */ + public Builder amountType(PayrollEmployeeCompensationsTypeAmountType amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = Optional.ofNullable(amountType); + return this; + } + + /** + * How to interpret the amount. + */ + public Builder amountType(Optional amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = amountType; + return this; + } + + public Federal build() { + + return new Federal( + overrideType, amount, amountType); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/VersionHeader.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/Field.java similarity index 69% rename from gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/VersionHeader.java rename to gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/Field.java index ad5857209..388da09eb 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/VersionHeader.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/Field.java @@ -8,13 +8,18 @@ import java.util.Objects; import java.util.Optional; -public enum VersionHeader { - TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15("2026-06-15"); +/** + * Field + * + *

    The employee field affected. + */ +public enum Field { + SSN("ssn"); @JsonValue private final String value; - VersionHeader(String value) { + Field(String value) { this.value = value; } @@ -22,8 +27,8 @@ public String value() { return value; } - public static Optional fromValue(String value) { - for (VersionHeader o: VersionHeader.values()) { + public static Optional fromValue(String value) { + for (Field o: Field.values()) { if (Objects.deepEquals(o.value, value)) { return Optional.of(o); } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/FileType.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/FileType.java index ead274921..b84558fca 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/FileType.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/FileType.java @@ -11,7 +11,7 @@ /** * FileType * - *

    The type of file to generate + *

    The type of file to generate. */ public enum FileType { CSV("csv"), diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/GeneralLedgerReportBody.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/GeneralLedgerReportBody.java index 741c5bbaa..51dd2d9d4 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/GeneralLedgerReportBody.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/GeneralLedgerReportBody.java @@ -25,7 +25,7 @@ public class GeneralLedgerReportBody { * The breakdown of the report. Use 'default' for no split. */ @JsonProperty("aggregation") - private Aggregation aggregation; + private GeneralLedgerReportBodyAggregation aggregation; /** * The kind of integration set up for the company. Required when `aggregation` is 'integration'. Must @@ -37,7 +37,7 @@ public class GeneralLedgerReportBody { @JsonCreator public GeneralLedgerReportBody( - @JsonProperty("aggregation") Aggregation aggregation, + @JsonProperty("aggregation") GeneralLedgerReportBodyAggregation aggregation, @JsonProperty("integration_type") JsonNullable integrationType) { Utils.checkNotNull(aggregation, "aggregation"); Utils.checkNotNull(integrationType, "integrationType"); @@ -46,7 +46,7 @@ public GeneralLedgerReportBody( } public GeneralLedgerReportBody( - Aggregation aggregation) { + GeneralLedgerReportBodyAggregation aggregation) { this(aggregation, JsonNullable.undefined()); } @@ -54,7 +54,7 @@ public GeneralLedgerReportBody( * The breakdown of the report. Use 'default' for no split. */ @JsonIgnore - public Aggregation aggregation() { + public GeneralLedgerReportBodyAggregation aggregation() { return aggregation; } @@ -76,7 +76,7 @@ public static Builder builder() { /** * The breakdown of the report. Use 'default' for no split. */ - public GeneralLedgerReportBody withAggregation(Aggregation aggregation) { + public GeneralLedgerReportBody withAggregation(GeneralLedgerReportBodyAggregation aggregation) { Utils.checkNotNull(aggregation, "aggregation"); this.aggregation = aggregation; return this; @@ -132,7 +132,7 @@ public String toString() { @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private Aggregation aggregation; + private GeneralLedgerReportBodyAggregation aggregation; private JsonNullable integrationType = JsonNullable.undefined(); @@ -144,7 +144,7 @@ private Builder() { /** * The breakdown of the report. Use 'default' for no split. */ - public Builder aggregation(Aggregation aggregation) { + public Builder aggregation(GeneralLedgerReportBodyAggregation aggregation) { Utils.checkNotNull(aggregation, "aggregation"); this.aggregation = aggregation; return this; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/GeneralLedgerReportBodyAggregation.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/GeneralLedgerReportBodyAggregation.java new file mode 100644 index 000000000..ec6b191d8 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/GeneralLedgerReportBodyAggregation.java @@ -0,0 +1,42 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * GeneralLedgerReportBodyAggregation + * + *

    The breakdown of the report. Use 'default' for no split. + */ +public enum GeneralLedgerReportBodyAggregation { + DEFAULT("default"), + JOB("job"), + DEPARTMENT("department"), + INTEGRATION("integration"); + + @JsonValue + private final String value; + + GeneralLedgerReportBodyAggregation(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (GeneralLedgerReportBodyAggregation o: GeneralLedgerReportBodyAggregation.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/Location.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/Location.java index 15b11e972..84fc65176 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/Location.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/Location.java @@ -14,6 +14,8 @@ import java.lang.Boolean; import java.lang.Override; import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.List; import java.util.Optional; import org.openapitools.jackson.nullable.JsonNullable; @@ -129,6 +131,14 @@ public class Location { @JsonProperty("inactive") private Optional inactive; + /** + * An array of warning objects that provide additional information about the address. Warnings do not + * prevent the address from being saved. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("warnings") + private Optional> warnings; + @JsonCreator public Location( @JsonProperty("uuid") String uuid, @@ -146,7 +156,8 @@ public Location( @JsonProperty("created_at") Optional createdAt, @JsonProperty("updated_at") Optional updatedAt, @JsonProperty("active") Optional active, - @JsonProperty("inactive") Optional inactive) { + @JsonProperty("inactive") Optional inactive, + @JsonProperty("warnings") Optional> warnings) { Utils.checkNotNull(uuid, "uuid"); Utils.checkNotNull(version, "version"); Utils.checkNotNull(companyUuid, "companyUuid"); @@ -163,6 +174,7 @@ public Location( Utils.checkNotNull(updatedAt, "updatedAt"); Utils.checkNotNull(active, "active"); Utils.checkNotNull(inactive, "inactive"); + Utils.checkNotNull(warnings, "warnings"); this.uuid = uuid; this.version = version; this.companyUuid = companyUuid; @@ -179,6 +191,7 @@ public Location( this.updatedAt = updatedAt; this.active = active; this.inactive = inactive; + this.warnings = warnings; } public Location( @@ -188,7 +201,7 @@ public Location( Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), - Optional.empty()); + Optional.empty(), Optional.empty()); } /** @@ -308,6 +321,16 @@ public Optional inactive() { return inactive; } + /** + * An array of warning objects that provide additional information about the address. Warnings do not + * prevent the address from being saved. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> warnings() { + return (Optional>) warnings; + } + public static Builder builder() { return new Builder(); } @@ -584,6 +607,27 @@ public Location withInactive(Optional inactive) { return this; } + /** + * An array of warning objects that provide additional information about the address. Warnings do not + * prevent the address from being saved. + */ + public Location withWarnings(List warnings) { + Utils.checkNotNull(warnings, "warnings"); + this.warnings = Optional.ofNullable(warnings); + return this; + } + + + /** + * An array of warning objects that provide additional information about the address. Warnings do not + * prevent the address from being saved. + */ + public Location withWarnings(Optional> warnings) { + Utils.checkNotNull(warnings, "warnings"); + this.warnings = warnings; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -609,7 +653,8 @@ public boolean equals(java.lang.Object o) { Utils.enhancedDeepEquals(this.createdAt, other.createdAt) && Utils.enhancedDeepEquals(this.updatedAt, other.updatedAt) && Utils.enhancedDeepEquals(this.active, other.active) && - Utils.enhancedDeepEquals(this.inactive, other.inactive); + Utils.enhancedDeepEquals(this.inactive, other.inactive) && + Utils.enhancedDeepEquals(this.warnings, other.warnings); } @Override @@ -620,7 +665,7 @@ public int hashCode() { city, state, zip, country, mailingAddress, filingAddress, createdAt, updatedAt, active, - inactive); + inactive, warnings); } @Override @@ -641,7 +686,8 @@ public String toString() { "createdAt", createdAt, "updatedAt", updatedAt, "active", active, - "inactive", inactive); + "inactive", inactive, + "warnings", warnings); } @SuppressWarnings("UnusedReturnValue") @@ -679,6 +725,8 @@ public final static class Builder { private Optional inactive = Optional.empty(); + private Optional> warnings = Optional.empty(); + private Builder() { // force use of static builder() method } @@ -956,6 +1004,27 @@ public Builder inactive(Optional inactive) { return this; } + + /** + * An array of warning objects that provide additional information about the address. Warnings do not + * prevent the address from being saved. + */ + public Builder warnings(List warnings) { + Utils.checkNotNull(warnings, "warnings"); + this.warnings = Optional.ofNullable(warnings); + return this; + } + + /** + * An array of warning objects that provide additional information about the address. Warnings do not + * prevent the address from being saved. + */ + public Builder warnings(Optional> warnings) { + Utils.checkNotNull(warnings, "warnings"); + this.warnings = warnings; + return this; + } + public Location build() { if (country == null) { country = _SINGLETON_VALUE_Country.value(); @@ -967,7 +1036,7 @@ public Location build() { city, state, zip, country, mailingAddress, filingAddress, createdAt, updatedAt, active, - inactive); + inactive, warnings); } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/MemberPortalInvitation.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/MemberPortalInvitation.java new file mode 100644 index 000000000..6a7db7bd1 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/MemberPortalInvitation.java @@ -0,0 +1,184 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Boolean; +import java.lang.Override; +import java.lang.String; + +/** + * MemberPortalInvitation + * + *

    The status of a member portal invitation for an employee or contractor. Returned by `GET + * /v1/employees/{employee_id}/member_portal_invitations` and `GET + * /v1/contractors/{contractor_uuid}/member_portal_invitations`. + */ +public class MemberPortalInvitation { + /** + * Current status of the member portal invitation. + * - `pending`: The invitation record has been created but the invitation email has not yet been + * delivered. + * - `sent`: The invitation email has been delivered to the member. + * - `verified`: The member has been verified by the member portal partner. + * - `complete`: The member has fully completed their member portal registration. + * - `cancelled`: The invitation has been cancelled, either via `DELETE` on this endpoint or because it + * was superseded. + */ + @JsonProperty("status") + private MemberPortalInvitationStatus1 status; + + /** + * Whether the invitation can no longer be acted on by the member. Returns `true` when the invitation + * token has expired or when the invitation has been `cancelled`. To reissue an expired invitation, + * call `POST` on this endpoint again — a new token will be generated and will override the prior one. + */ + @JsonProperty("expired") + private boolean expired; + + @JsonCreator + public MemberPortalInvitation( + @JsonProperty("status") MemberPortalInvitationStatus1 status, + @JsonProperty("expired") boolean expired) { + Utils.checkNotNull(status, "status"); + Utils.checkNotNull(expired, "expired"); + this.status = status; + this.expired = expired; + } + + /** + * Current status of the member portal invitation. + * - `pending`: The invitation record has been created but the invitation email has not yet been + * delivered. + * - `sent`: The invitation email has been delivered to the member. + * - `verified`: The member has been verified by the member portal partner. + * - `complete`: The member has fully completed their member portal registration. + * - `cancelled`: The invitation has been cancelled, either via `DELETE` on this endpoint or because it + * was superseded. + */ + @JsonIgnore + public MemberPortalInvitationStatus1 status() { + return status; + } + + /** + * Whether the invitation can no longer be acted on by the member. Returns `true` when the invitation + * token has expired or when the invitation has been `cancelled`. To reissue an expired invitation, + * call `POST` on this endpoint again — a new token will be generated and will override the prior one. + */ + @JsonIgnore + public boolean expired() { + return expired; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Current status of the member portal invitation. + * - `pending`: The invitation record has been created but the invitation email has not yet been + * delivered. + * - `sent`: The invitation email has been delivered to the member. + * - `verified`: The member has been verified by the member portal partner. + * - `complete`: The member has fully completed their member portal registration. + * - `cancelled`: The invitation has been cancelled, either via `DELETE` on this endpoint or because it + * was superseded. + */ + public MemberPortalInvitation withStatus(MemberPortalInvitationStatus1 status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + /** + * Whether the invitation can no longer be acted on by the member. Returns `true` when the invitation + * token has expired or when the invitation has been `cancelled`. To reissue an expired invitation, + * call `POST` on this endpoint again — a new token will be generated and will override the prior one. + */ + public MemberPortalInvitation withExpired(boolean expired) { + Utils.checkNotNull(expired, "expired"); + this.expired = expired; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + MemberPortalInvitation other = (MemberPortalInvitation) o; + return + Utils.enhancedDeepEquals(this.status, other.status) && + Utils.enhancedDeepEquals(this.expired, other.expired); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + status, expired); + } + + @Override + public String toString() { + return Utils.toString(MemberPortalInvitation.class, + "status", status, + "expired", expired); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private MemberPortalInvitationStatus1 status; + + private Boolean expired; + + private Builder() { + // force use of static builder() method + } + + + /** + * Current status of the member portal invitation. + * - `pending`: The invitation record has been created but the invitation email has not yet been + * delivered. + * - `sent`: The invitation email has been delivered to the member. + * - `verified`: The member has been verified by the member portal partner. + * - `complete`: The member has fully completed their member portal registration. + * - `cancelled`: The invitation has been cancelled, either via `DELETE` on this endpoint or because it + * was superseded. + */ + public Builder status(MemberPortalInvitationStatus1 status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + + /** + * Whether the invitation can no longer be acted on by the member. Returns `true` when the invitation + * token has expired or when the invitation has been `cancelled`. To reissue an expired invitation, + * call `POST` on this endpoint again — a new token will be generated and will override the prior one. + */ + public Builder expired(boolean expired) { + Utils.checkNotNull(expired, "expired"); + this.expired = expired; + return this; + } + + public MemberPortalInvitation build() { + + return new MemberPortalInvitation( + status, expired); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/MemberPortalInvitationStatus1.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/MemberPortalInvitationStatus1.java new file mode 100644 index 000000000..5c89a044e --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/MemberPortalInvitationStatus1.java @@ -0,0 +1,50 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * MemberPortalInvitationStatus1 + * + *

    Current status of the member portal invitation. + * - `pending`: The invitation record has been created but the invitation email has not yet been + * delivered. + * - `sent`: The invitation email has been delivered to the member. + * - `verified`: The member has been verified by the member portal partner. + * - `complete`: The member has fully completed their member portal registration. + * - `cancelled`: The invitation has been cancelled, either via `DELETE` on this endpoint or because it + * was superseded. + */ +public enum MemberPortalInvitationStatus1 { + PENDING("pending"), + SENT("sent"), + VERIFIED("verified"), + COMPLETE("complete"), + CANCELLED("cancelled"); + + @JsonValue + private final String value; + + MemberPortalInvitationStatus1(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (MemberPortalInvitationStatus1 o: MemberPortalInvitationStatus1.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/Notification.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/Notification.java index 0fa2a8f10..cd4bbb768 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/Notification.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/Notification.java @@ -50,7 +50,7 @@ public class Notification { * system. This field is read-only and cannot be modified via the API. */ @JsonProperty("status") - private Status status; + private NotificationStatus status; /** * The notification's category. @@ -109,7 +109,7 @@ public Notification( @JsonProperty("company_uuid") String companyUuid, @JsonProperty("title") String title, @JsonProperty("message") String message, - @JsonProperty("status") Status status, + @JsonProperty("status") NotificationStatus status, @JsonProperty("category") String category, @JsonProperty("actionable") boolean actionable, @JsonProperty("can_block_payroll") boolean canBlockPayroll, @@ -148,7 +148,7 @@ public Notification( String companyUuid, String title, String message, - Status status, + NotificationStatus status, String category, boolean actionable, boolean canBlockPayroll, @@ -199,7 +199,7 @@ public String message() { * system. This field is read-only and cannot be modified via the API. */ @JsonIgnore - public Status status() { + public NotificationStatus status() { return status; } @@ -314,7 +314,7 @@ public Notification withMessage(String message) { * system events and internal business logic, and does not reflect resolution steps taken outside our * system. This field is read-only and cannot be modified via the API. */ - public Notification withStatus(Status status) { + public Notification withStatus(NotificationStatus status) { Utils.checkNotNull(status, "status"); this.status = status; return this; @@ -476,7 +476,7 @@ public final static class Builder { private String message; - private Status status; + private NotificationStatus status; private String category; @@ -543,7 +543,7 @@ public Builder message(String message) { * system events and internal business logic, and does not reflect resolution steps taken outside our * system. This field is read-only and cannot be modified via the API. */ - public Builder status(Status status) { + public Builder status(NotificationStatus status) { Utils.checkNotNull(status, "status"); this.status = status; return this; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/NotificationStatus.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/NotificationStatus.java new file mode 100644 index 000000000..d8b6f8ca2 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/NotificationStatus.java @@ -0,0 +1,43 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * NotificationStatus + * + *

    Represents the notification's status as managed by our system. It is updated based on observable + * system events and internal business logic, and does not reflect resolution steps taken outside our + * system. This field is read-only and cannot be modified via the API. + */ +public enum NotificationStatus { + OPEN("open"), + RESOLVED("resolved"), + EXPIRED("expired"); + + @JsonValue + private final String value; + + NotificationStatus(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (NotificationStatus o: NotificationStatus.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/OverrideType.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/OverrideType.java new file mode 100644 index 000000000..85dd4e96b --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/OverrideType.java @@ -0,0 +1,39 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * OverrideType + * + *

    Override mode. Only `one_time` is currently exposed. + */ +public enum OverrideType { + ONE_TIME("one_time"); + + @JsonValue + private final String value; + + OverrideType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (OverrideType o: OverrideType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PartnerManagedCompanyDisassociateResponse.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PartnerManagedCompanyDisassociateResponse.java new file mode 100644 index 000000000..e46ba54d9 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PartnerManagedCompanyDisassociateResponse.java @@ -0,0 +1,145 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Override; +import java.lang.String; + +/** + * PartnerManagedCompanyDisassociateResponse + * + *

    The company that was disassociated from the partner's embedded payroll product. + */ +public class PartnerManagedCompanyDisassociateResponse { + /** + * The UUID of the disassociated company. + */ + @JsonProperty("company_uuid") + private String companyUuid; + + /** + * The name of the disassociated company. + */ + @JsonProperty("company_name") + private String companyName; + + @JsonCreator + public PartnerManagedCompanyDisassociateResponse( + @JsonProperty("company_uuid") String companyUuid, + @JsonProperty("company_name") String companyName) { + Utils.checkNotNull(companyUuid, "companyUuid"); + Utils.checkNotNull(companyName, "companyName"); + this.companyUuid = companyUuid; + this.companyName = companyName; + } + + /** + * The UUID of the disassociated company. + */ + @JsonIgnore + public String companyUuid() { + return companyUuid; + } + + /** + * The name of the disassociated company. + */ + @JsonIgnore + public String companyName() { + return companyName; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * The UUID of the disassociated company. + */ + public PartnerManagedCompanyDisassociateResponse withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + /** + * The name of the disassociated company. + */ + public PartnerManagedCompanyDisassociateResponse withCompanyName(String companyName) { + Utils.checkNotNull(companyName, "companyName"); + this.companyName = companyName; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PartnerManagedCompanyDisassociateResponse other = (PartnerManagedCompanyDisassociateResponse) o; + return + Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && + Utils.enhancedDeepEquals(this.companyName, other.companyName); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + companyUuid, companyName); + } + + @Override + public String toString() { + return Utils.toString(PartnerManagedCompanyDisassociateResponse.class, + "companyUuid", companyUuid, + "companyName", companyName); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String companyUuid; + + private String companyName; + + private Builder() { + // force use of static builder() method + } + + + /** + * The UUID of the disassociated company. + */ + public Builder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + + /** + * The name of the disassociated company. + */ + public Builder companyName(String companyName) { + Utils.checkNotNull(companyName, "companyName"); + this.companyName = companyName; + return this; + } + + public PartnerManagedCompanyDisassociateResponse build() { + + return new PartnerManagedCompanyDisassociateResponse( + companyUuid, companyName); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayScheduleAutoPayrollEnablementBlocker.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayScheduleAutoPayrollEnablementBlocker.java index ea14bfdc8..86f2281ca 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayScheduleAutoPayrollEnablementBlocker.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayScheduleAutoPayrollEnablementBlocker.java @@ -21,9 +21,9 @@ */ public class PayScheduleAutoPayrollEnablementBlocker { /** - * The blocker type (e.g. employees_not_on_direct_deposit, employees_not_salaried, - * missing_funding_method, missing_state_tax_requirements, one_day_ach_speed_not_supported, - * company_suspended, earned_fast_ach_not_met). + * The blocker type. Possible values: employees_not_on_direct_deposit, employees_not_salaried, + * missing_state_tax_requirements, missing_funding_method, one_day_ach_speed_not_supported, + * company_suspended, earned_fast_ach_not_met, hourly_employees_missing_default_hours. */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("key") @@ -51,9 +51,9 @@ public PayScheduleAutoPayrollEnablementBlocker() { } /** - * The blocker type (e.g. employees_not_on_direct_deposit, employees_not_salaried, - * missing_funding_method, missing_state_tax_requirements, one_day_ach_speed_not_supported, - * company_suspended, earned_fast_ach_not_met). + * The blocker type. Possible values: employees_not_on_direct_deposit, employees_not_salaried, + * missing_state_tax_requirements, missing_funding_method, one_day_ach_speed_not_supported, + * company_suspended, earned_fast_ach_not_met, hourly_employees_missing_default_hours. */ @JsonIgnore public Optional key() { @@ -75,9 +75,9 @@ public static Builder builder() { /** - * The blocker type (e.g. employees_not_on_direct_deposit, employees_not_salaried, - * missing_funding_method, missing_state_tax_requirements, one_day_ach_speed_not_supported, - * company_suspended, earned_fast_ach_not_met). + * The blocker type. Possible values: employees_not_on_direct_deposit, employees_not_salaried, + * missing_state_tax_requirements, missing_funding_method, one_day_ach_speed_not_supported, + * company_suspended, earned_fast_ach_not_met, hourly_employees_missing_default_hours. */ public PayScheduleAutoPayrollEnablementBlocker withKey(String key) { Utils.checkNotNull(key, "key"); @@ -87,9 +87,9 @@ public PayScheduleAutoPayrollEnablementBlocker withKey(String key) { /** - * The blocker type (e.g. employees_not_on_direct_deposit, employees_not_salaried, - * missing_funding_method, missing_state_tax_requirements, one_day_ach_speed_not_supported, - * company_suspended, earned_fast_ach_not_met). + * The blocker type. Possible values: employees_not_on_direct_deposit, employees_not_salaried, + * missing_state_tax_requirements, missing_funding_method, one_day_ach_speed_not_supported, + * company_suspended, earned_fast_ach_not_met, hourly_employees_missing_default_hours. */ public PayScheduleAutoPayrollEnablementBlocker withKey(Optional key) { Utils.checkNotNull(key, "key"); @@ -156,9 +156,9 @@ private Builder() { /** - * The blocker type (e.g. employees_not_on_direct_deposit, employees_not_salaried, - * missing_funding_method, missing_state_tax_requirements, one_day_ach_speed_not_supported, - * company_suspended, earned_fast_ach_not_met). + * The blocker type. Possible values: employees_not_on_direct_deposit, employees_not_salaried, + * missing_state_tax_requirements, missing_funding_method, one_day_ach_speed_not_supported, + * company_suspended, earned_fast_ach_not_met, hourly_employees_missing_default_hours. */ public Builder key(String key) { Utils.checkNotNull(key, "key"); @@ -167,9 +167,9 @@ public Builder key(String key) { } /** - * The blocker type (e.g. employees_not_on_direct_deposit, employees_not_salaried, - * missing_funding_method, missing_state_tax_requirements, one_day_ach_speed_not_supported, - * company_suspended, earned_fast_ach_not_met). + * The blocker type. Possible values: employees_not_on_direct_deposit, employees_not_salaried, + * missing_state_tax_requirements, missing_funding_method, one_day_ach_speed_not_supported, + * company_suspended, earned_fast_ach_not_met, hourly_employees_missing_default_hours. */ public Builder key(Optional key) { Utils.checkNotNull(key, "key"); diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PaymentMethod.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PaymentMethod.java index 9c76c2579..83c682798 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PaymentMethod.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PaymentMethod.java @@ -8,9 +8,14 @@ import java.util.Objects; import java.util.Optional; +/** + * PaymentMethod + * + *

    Payment method to filter by. + */ public enum PaymentMethod { - DIRECT_DEPOSIT("Direct Deposit"), - CHECK("Check"); + CHECK("check"), + DIRECT_DEPOSIT("direct_deposit"); @JsonValue private final String value; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollBatch.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollBatch.java new file mode 100644 index 000000000..6a9814ade --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollBatch.java @@ -0,0 +1,247 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Override; +import java.lang.String; + +/** + * PayrollBatch + * + *

    A payroll cancellation batch request. + */ +public class PayrollBatch { + /** + * The unique identifier of the payroll cancellation batch. + */ + @JsonProperty("uuid") + private String uuid; + + /** + * The idempotency key provided when creating the batch. + */ + @JsonProperty("idempotency_key") + private String idempotencyKey; + + /** + * The action being performed on the batch. + */ + @JsonProperty("batch_action") + private BatchAction batchAction; + + /** + * The lifecycle status of the batch request itself. Terminal values are `completed` (processing + * finished — inspect `results` and `exclusions` for per-payroll outcomes) and `failed` (the batch + * crashed at the system level; can be retried). This is distinct from the per-payroll `status` + * returned inside `results[]`. + * + *

    A `completed` batch does not imply every payroll was cancelled. + */ + @JsonProperty("status") + private PayrollBatchStatus status; + + @JsonCreator + public PayrollBatch( + @JsonProperty("uuid") String uuid, + @JsonProperty("idempotency_key") String idempotencyKey, + @JsonProperty("batch_action") BatchAction batchAction, + @JsonProperty("status") PayrollBatchStatus status) { + Utils.checkNotNull(uuid, "uuid"); + Utils.checkNotNull(idempotencyKey, "idempotencyKey"); + Utils.checkNotNull(batchAction, "batchAction"); + Utils.checkNotNull(status, "status"); + this.uuid = uuid; + this.idempotencyKey = idempotencyKey; + this.batchAction = batchAction; + this.status = status; + } + + /** + * The unique identifier of the payroll cancellation batch. + */ + @JsonIgnore + public String uuid() { + return uuid; + } + + /** + * The idempotency key provided when creating the batch. + */ + @JsonIgnore + public String idempotencyKey() { + return idempotencyKey; + } + + /** + * The action being performed on the batch. + */ + @JsonIgnore + public BatchAction batchAction() { + return batchAction; + } + + /** + * The lifecycle status of the batch request itself. Terminal values are `completed` (processing + * finished — inspect `results` and `exclusions` for per-payroll outcomes) and `failed` (the batch + * crashed at the system level; can be retried). This is distinct from the per-payroll `status` + * returned inside `results[]`. + * + *

    A `completed` batch does not imply every payroll was cancelled. + */ + @JsonIgnore + public PayrollBatchStatus status() { + return status; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * The unique identifier of the payroll cancellation batch. + */ + public PayrollBatch withUuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + /** + * The idempotency key provided when creating the batch. + */ + public PayrollBatch withIdempotencyKey(String idempotencyKey) { + Utils.checkNotNull(idempotencyKey, "idempotencyKey"); + this.idempotencyKey = idempotencyKey; + return this; + } + + /** + * The action being performed on the batch. + */ + public PayrollBatch withBatchAction(BatchAction batchAction) { + Utils.checkNotNull(batchAction, "batchAction"); + this.batchAction = batchAction; + return this; + } + + /** + * The lifecycle status of the batch request itself. Terminal values are `completed` (processing + * finished — inspect `results` and `exclusions` for per-payroll outcomes) and `failed` (the batch + * crashed at the system level; can be retried). This is distinct from the per-payroll `status` + * returned inside `results[]`. + * + *

    A `completed` batch does not imply every payroll was cancelled. + */ + public PayrollBatch withStatus(PayrollBatchStatus status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PayrollBatch other = (PayrollBatch) o; + return + Utils.enhancedDeepEquals(this.uuid, other.uuid) && + Utils.enhancedDeepEquals(this.idempotencyKey, other.idempotencyKey) && + Utils.enhancedDeepEquals(this.batchAction, other.batchAction) && + Utils.enhancedDeepEquals(this.status, other.status); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + uuid, idempotencyKey, batchAction, + status); + } + + @Override + public String toString() { + return Utils.toString(PayrollBatch.class, + "uuid", uuid, + "idempotencyKey", idempotencyKey, + "batchAction", batchAction, + "status", status); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String uuid; + + private String idempotencyKey; + + private BatchAction batchAction; + + private PayrollBatchStatus status; + + private Builder() { + // force use of static builder() method + } + + + /** + * The unique identifier of the payroll cancellation batch. + */ + public Builder uuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + + /** + * The idempotency key provided when creating the batch. + */ + public Builder idempotencyKey(String idempotencyKey) { + Utils.checkNotNull(idempotencyKey, "idempotencyKey"); + this.idempotencyKey = idempotencyKey; + return this; + } + + + /** + * The action being performed on the batch. + */ + public Builder batchAction(BatchAction batchAction) { + Utils.checkNotNull(batchAction, "batchAction"); + this.batchAction = batchAction; + return this; + } + + + /** + * The lifecycle status of the batch request itself. Terminal values are `completed` (processing + * finished — inspect `results` and `exclusions` for per-payroll outcomes) and `failed` (the batch + * crashed at the system level; can be retried). This is distinct from the per-payroll `status` + * returned inside `results[]`. + * + *

    A `completed` batch does not imply every payroll was cancelled. + */ + public Builder status(PayrollBatchStatus status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + public PayrollBatch build() { + + return new PayrollBatch( + uuid, idempotencyKey, batchAction, + status); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollBatchResults.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollBatchResults.java new file mode 100644 index 000000000..8e122920a --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollBatchResults.java @@ -0,0 +1,660 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Long; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.time.OffsetDateTime; +import java.util.List; +import java.util.Optional; +import org.openapitools.jackson.nullable.JsonNullable; + +/** + * PayrollBatchResults + * + *

    A payroll cancellation batch with per-payroll results. + */ +public class PayrollBatchResults { + /** + * The unique identifier of the payroll cancellation batch. + */ + @JsonProperty("uuid") + private String uuid; + + /** + * The idempotency key provided when creating the batch. + */ + @JsonProperty("idempotency_key") + private String idempotencyKey; + + /** + * The lifecycle status of the batch request itself. Terminal values are `completed` (processing + * finished — inspect `results` and `exclusions` for per-payroll outcomes) and `failed` (the batch + * crashed at the system level; can be retried). This is distinct from the per-payroll `status` + * returned inside `results[]`. + * + *

    A `completed` batch does not imply every payroll was cancelled. + */ + @JsonProperty("status") + private PayrollBatchResultsStatus status; + + /** + * The timestamp when the batch was submitted. + */ + @JsonProperty("submitted_at") + private OffsetDateTime submittedAt; + + /** + * The timestamp when the batch processing completed. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("completed_at") + private JsonNullable completedAt; + + /** + * The number of payrolls submitted in the batch. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("submitted_items") + private JsonNullable submittedItems; + + /** + * The number of payrolls processed (cancelled or attempted). Only present once the batch reaches a + * terminal status. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("processed_items") + private Optional processedItems; + + /** + * The number of payrolls excluded from processing. Only present once the batch reaches a terminal + * status. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("excluded_items") + private Optional excludedItems; + + /** + * Per-payroll cancellation results. Only present once the batch reaches a terminal status. One entry + * per authorized payroll. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("results") + private Optional> results; + + /** + * Payrolls that could not be processed, determined at submission time. Only present once the batch + * reaches a terminal status. Every UUID submitted in the POST batch appears in exactly one of + * `results` or `exclusions`. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("exclusions") + private Optional> exclusions; + + @JsonCreator + public PayrollBatchResults( + @JsonProperty("uuid") String uuid, + @JsonProperty("idempotency_key") String idempotencyKey, + @JsonProperty("status") PayrollBatchResultsStatus status, + @JsonProperty("submitted_at") OffsetDateTime submittedAt, + @JsonProperty("completed_at") JsonNullable completedAt, + @JsonProperty("submitted_items") JsonNullable submittedItems, + @JsonProperty("processed_items") Optional processedItems, + @JsonProperty("excluded_items") Optional excludedItems, + @JsonProperty("results") Optional> results, + @JsonProperty("exclusions") Optional> exclusions) { + Utils.checkNotNull(uuid, "uuid"); + Utils.checkNotNull(idempotencyKey, "idempotencyKey"); + Utils.checkNotNull(status, "status"); + Utils.checkNotNull(submittedAt, "submittedAt"); + Utils.checkNotNull(completedAt, "completedAt"); + Utils.checkNotNull(submittedItems, "submittedItems"); + Utils.checkNotNull(processedItems, "processedItems"); + Utils.checkNotNull(excludedItems, "excludedItems"); + Utils.checkNotNull(results, "results"); + Utils.checkNotNull(exclusions, "exclusions"); + this.uuid = uuid; + this.idempotencyKey = idempotencyKey; + this.status = status; + this.submittedAt = submittedAt; + this.completedAt = completedAt; + this.submittedItems = submittedItems; + this.processedItems = processedItems; + this.excludedItems = excludedItems; + this.results = results; + this.exclusions = exclusions; + } + + public PayrollBatchResults( + String uuid, + String idempotencyKey, + PayrollBatchResultsStatus status, + OffsetDateTime submittedAt) { + this(uuid, idempotencyKey, status, + submittedAt, JsonNullable.undefined(), JsonNullable.undefined(), + Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty()); + } + + /** + * The unique identifier of the payroll cancellation batch. + */ + @JsonIgnore + public String uuid() { + return uuid; + } + + /** + * The idempotency key provided when creating the batch. + */ + @JsonIgnore + public String idempotencyKey() { + return idempotencyKey; + } + + /** + * The lifecycle status of the batch request itself. Terminal values are `completed` (processing + * finished — inspect `results` and `exclusions` for per-payroll outcomes) and `failed` (the batch + * crashed at the system level; can be retried). This is distinct from the per-payroll `status` + * returned inside `results[]`. + * + *

    A `completed` batch does not imply every payroll was cancelled. + */ + @JsonIgnore + public PayrollBatchResultsStatus status() { + return status; + } + + /** + * The timestamp when the batch was submitted. + */ + @JsonIgnore + public OffsetDateTime submittedAt() { + return submittedAt; + } + + /** + * The timestamp when the batch processing completed. + */ + @JsonIgnore + public JsonNullable completedAt() { + return completedAt; + } + + /** + * The number of payrolls submitted in the batch. + */ + @JsonIgnore + public JsonNullable submittedItems() { + return submittedItems; + } + + /** + * The number of payrolls processed (cancelled or attempted). Only present once the batch reaches a + * terminal status. + */ + @JsonIgnore + public Optional processedItems() { + return processedItems; + } + + /** + * The number of payrolls excluded from processing. Only present once the batch reaches a terminal + * status. + */ + @JsonIgnore + public Optional excludedItems() { + return excludedItems; + } + + /** + * Per-payroll cancellation results. Only present once the batch reaches a terminal status. One entry + * per authorized payroll. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> results() { + return (Optional>) results; + } + + /** + * Payrolls that could not be processed, determined at submission time. Only present once the batch + * reaches a terminal status. Every UUID submitted in the POST batch appears in exactly one of + * `results` or `exclusions`. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> exclusions() { + return (Optional>) exclusions; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * The unique identifier of the payroll cancellation batch. + */ + public PayrollBatchResults withUuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + /** + * The idempotency key provided when creating the batch. + */ + public PayrollBatchResults withIdempotencyKey(String idempotencyKey) { + Utils.checkNotNull(idempotencyKey, "idempotencyKey"); + this.idempotencyKey = idempotencyKey; + return this; + } + + /** + * The lifecycle status of the batch request itself. Terminal values are `completed` (processing + * finished — inspect `results` and `exclusions` for per-payroll outcomes) and `failed` (the batch + * crashed at the system level; can be retried). This is distinct from the per-payroll `status` + * returned inside `results[]`. + * + *

    A `completed` batch does not imply every payroll was cancelled. + */ + public PayrollBatchResults withStatus(PayrollBatchResultsStatus status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + /** + * The timestamp when the batch was submitted. + */ + public PayrollBatchResults withSubmittedAt(OffsetDateTime submittedAt) { + Utils.checkNotNull(submittedAt, "submittedAt"); + this.submittedAt = submittedAt; + return this; + } + + /** + * The timestamp when the batch processing completed. + */ + public PayrollBatchResults withCompletedAt(OffsetDateTime completedAt) { + Utils.checkNotNull(completedAt, "completedAt"); + this.completedAt = JsonNullable.of(completedAt); + return this; + } + + /** + * The timestamp when the batch processing completed. + */ + public PayrollBatchResults withCompletedAt(JsonNullable completedAt) { + Utils.checkNotNull(completedAt, "completedAt"); + this.completedAt = completedAt; + return this; + } + + /** + * The number of payrolls submitted in the batch. + */ + public PayrollBatchResults withSubmittedItems(long submittedItems) { + Utils.checkNotNull(submittedItems, "submittedItems"); + this.submittedItems = JsonNullable.of(submittedItems); + return this; + } + + /** + * The number of payrolls submitted in the batch. + */ + public PayrollBatchResults withSubmittedItems(JsonNullable submittedItems) { + Utils.checkNotNull(submittedItems, "submittedItems"); + this.submittedItems = submittedItems; + return this; + } + + /** + * The number of payrolls processed (cancelled or attempted). Only present once the batch reaches a + * terminal status. + */ + public PayrollBatchResults withProcessedItems(long processedItems) { + Utils.checkNotNull(processedItems, "processedItems"); + this.processedItems = Optional.ofNullable(processedItems); + return this; + } + + + /** + * The number of payrolls processed (cancelled or attempted). Only present once the batch reaches a + * terminal status. + */ + public PayrollBatchResults withProcessedItems(Optional processedItems) { + Utils.checkNotNull(processedItems, "processedItems"); + this.processedItems = processedItems; + return this; + } + + /** + * The number of payrolls excluded from processing. Only present once the batch reaches a terminal + * status. + */ + public PayrollBatchResults withExcludedItems(long excludedItems) { + Utils.checkNotNull(excludedItems, "excludedItems"); + this.excludedItems = Optional.ofNullable(excludedItems); + return this; + } + + + /** + * The number of payrolls excluded from processing. Only present once the batch reaches a terminal + * status. + */ + public PayrollBatchResults withExcludedItems(Optional excludedItems) { + Utils.checkNotNull(excludedItems, "excludedItems"); + this.excludedItems = excludedItems; + return this; + } + + /** + * Per-payroll cancellation results. Only present once the batch reaches a terminal status. One entry + * per authorized payroll. + */ + public PayrollBatchResults withResults(List results) { + Utils.checkNotNull(results, "results"); + this.results = Optional.ofNullable(results); + return this; + } + + + /** + * Per-payroll cancellation results. Only present once the batch reaches a terminal status. One entry + * per authorized payroll. + */ + public PayrollBatchResults withResults(Optional> results) { + Utils.checkNotNull(results, "results"); + this.results = results; + return this; + } + + /** + * Payrolls that could not be processed, determined at submission time. Only present once the batch + * reaches a terminal status. Every UUID submitted in the POST batch appears in exactly one of + * `results` or `exclusions`. + */ + public PayrollBatchResults withExclusions(List exclusions) { + Utils.checkNotNull(exclusions, "exclusions"); + this.exclusions = Optional.ofNullable(exclusions); + return this; + } + + + /** + * Payrolls that could not be processed, determined at submission time. Only present once the batch + * reaches a terminal status. Every UUID submitted in the POST batch appears in exactly one of + * `results` or `exclusions`. + */ + public PayrollBatchResults withExclusions(Optional> exclusions) { + Utils.checkNotNull(exclusions, "exclusions"); + this.exclusions = exclusions; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PayrollBatchResults other = (PayrollBatchResults) o; + return + Utils.enhancedDeepEquals(this.uuid, other.uuid) && + Utils.enhancedDeepEquals(this.idempotencyKey, other.idempotencyKey) && + Utils.enhancedDeepEquals(this.status, other.status) && + Utils.enhancedDeepEquals(this.submittedAt, other.submittedAt) && + Utils.enhancedDeepEquals(this.completedAt, other.completedAt) && + Utils.enhancedDeepEquals(this.submittedItems, other.submittedItems) && + Utils.enhancedDeepEquals(this.processedItems, other.processedItems) && + Utils.enhancedDeepEquals(this.excludedItems, other.excludedItems) && + Utils.enhancedDeepEquals(this.results, other.results) && + Utils.enhancedDeepEquals(this.exclusions, other.exclusions); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + uuid, idempotencyKey, status, + submittedAt, completedAt, submittedItems, + processedItems, excludedItems, results, + exclusions); + } + + @Override + public String toString() { + return Utils.toString(PayrollBatchResults.class, + "uuid", uuid, + "idempotencyKey", idempotencyKey, + "status", status, + "submittedAt", submittedAt, + "completedAt", completedAt, + "submittedItems", submittedItems, + "processedItems", processedItems, + "excludedItems", excludedItems, + "results", results, + "exclusions", exclusions); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String uuid; + + private String idempotencyKey; + + private PayrollBatchResultsStatus status; + + private OffsetDateTime submittedAt; + + private JsonNullable completedAt = JsonNullable.undefined(); + + private JsonNullable submittedItems = JsonNullable.undefined(); + + private Optional processedItems = Optional.empty(); + + private Optional excludedItems = Optional.empty(); + + private Optional> results = Optional.empty(); + + private Optional> exclusions = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * The unique identifier of the payroll cancellation batch. + */ + public Builder uuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + + /** + * The idempotency key provided when creating the batch. + */ + public Builder idempotencyKey(String idempotencyKey) { + Utils.checkNotNull(idempotencyKey, "idempotencyKey"); + this.idempotencyKey = idempotencyKey; + return this; + } + + + /** + * The lifecycle status of the batch request itself. Terminal values are `completed` (processing + * finished — inspect `results` and `exclusions` for per-payroll outcomes) and `failed` (the batch + * crashed at the system level; can be retried). This is distinct from the per-payroll `status` + * returned inside `results[]`. + * + *

    A `completed` batch does not imply every payroll was cancelled. + */ + public Builder status(PayrollBatchResultsStatus status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + + /** + * The timestamp when the batch was submitted. + */ + public Builder submittedAt(OffsetDateTime submittedAt) { + Utils.checkNotNull(submittedAt, "submittedAt"); + this.submittedAt = submittedAt; + return this; + } + + + /** + * The timestamp when the batch processing completed. + */ + public Builder completedAt(OffsetDateTime completedAt) { + Utils.checkNotNull(completedAt, "completedAt"); + this.completedAt = JsonNullable.of(completedAt); + return this; + } + + /** + * The timestamp when the batch processing completed. + */ + public Builder completedAt(JsonNullable completedAt) { + Utils.checkNotNull(completedAt, "completedAt"); + this.completedAt = completedAt; + return this; + } + + + /** + * The number of payrolls submitted in the batch. + */ + public Builder submittedItems(long submittedItems) { + Utils.checkNotNull(submittedItems, "submittedItems"); + this.submittedItems = JsonNullable.of(submittedItems); + return this; + } + + /** + * The number of payrolls submitted in the batch. + */ + public Builder submittedItems(JsonNullable submittedItems) { + Utils.checkNotNull(submittedItems, "submittedItems"); + this.submittedItems = submittedItems; + return this; + } + + + /** + * The number of payrolls processed (cancelled or attempted). Only present once the batch reaches a + * terminal status. + */ + public Builder processedItems(long processedItems) { + Utils.checkNotNull(processedItems, "processedItems"); + this.processedItems = Optional.ofNullable(processedItems); + return this; + } + + /** + * The number of payrolls processed (cancelled or attempted). Only present once the batch reaches a + * terminal status. + */ + public Builder processedItems(Optional processedItems) { + Utils.checkNotNull(processedItems, "processedItems"); + this.processedItems = processedItems; + return this; + } + + + /** + * The number of payrolls excluded from processing. Only present once the batch reaches a terminal + * status. + */ + public Builder excludedItems(long excludedItems) { + Utils.checkNotNull(excludedItems, "excludedItems"); + this.excludedItems = Optional.ofNullable(excludedItems); + return this; + } + + /** + * The number of payrolls excluded from processing. Only present once the batch reaches a terminal + * status. + */ + public Builder excludedItems(Optional excludedItems) { + Utils.checkNotNull(excludedItems, "excludedItems"); + this.excludedItems = excludedItems; + return this; + } + + + /** + * Per-payroll cancellation results. Only present once the batch reaches a terminal status. One entry + * per authorized payroll. + */ + public Builder results(List results) { + Utils.checkNotNull(results, "results"); + this.results = Optional.ofNullable(results); + return this; + } + + /** + * Per-payroll cancellation results. Only present once the batch reaches a terminal status. One entry + * per authorized payroll. + */ + public Builder results(Optional> results) { + Utils.checkNotNull(results, "results"); + this.results = results; + return this; + } + + + /** + * Payrolls that could not be processed, determined at submission time. Only present once the batch + * reaches a terminal status. Every UUID submitted in the POST batch appears in exactly one of + * `results` or `exclusions`. + */ + public Builder exclusions(List exclusions) { + Utils.checkNotNull(exclusions, "exclusions"); + this.exclusions = Optional.ofNullable(exclusions); + return this; + } + + /** + * Payrolls that could not be processed, determined at submission time. Only present once the batch + * reaches a terminal status. Every UUID submitted in the POST batch appears in exactly one of + * `results` or `exclusions`. + */ + public Builder exclusions(Optional> exclusions) { + Utils.checkNotNull(exclusions, "exclusions"); + this.exclusions = exclusions; + return this; + } + + public PayrollBatchResults build() { + + return new PayrollBatchResults( + uuid, idempotencyKey, status, + submittedAt, completedAt, submittedItems, + processedItems, excludedItems, results, + exclusions); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollBatchResultsCategory.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollBatchResultsCategory.java new file mode 100644 index 000000000..ff176871b --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollBatchResultsCategory.java @@ -0,0 +1,44 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollBatchResultsCategory + * + *

    Machine-readable category for why the payroll was excluded. + * - `not_found`: the payroll does not exist, or is not associated with a company the partner is mapped + * to + * - `duplicate_operation`: the same payroll UUID appeared more than once in the request; only the + * first occurrence is processed + */ +public enum PayrollBatchResultsCategory { + NOT_FOUND("not_found"), + DUPLICATE_OPERATION("duplicate_operation"); + + @JsonValue + private final String value; + + PayrollBatchResultsCategory(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollBatchResultsCategory o: PayrollBatchResultsCategory.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollBatchResultsEntityType.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollBatchResultsEntityType.java new file mode 100644 index 000000000..ca3274870 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollBatchResultsEntityType.java @@ -0,0 +1,39 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollBatchResultsEntityType + * + *

    The type of entity this exclusion represents. + */ +public enum PayrollBatchResultsEntityType { + PAYROLL("payroll"); + + @JsonValue + private final String value; + + PayrollBatchResultsEntityType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollBatchResultsEntityType o: PayrollBatchResultsEntityType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollBatchResultsErrors.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollBatchResultsErrors.java new file mode 100644 index 000000000..33d69697d --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollBatchResultsErrors.java @@ -0,0 +1,262 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class PayrollBatchResultsErrors { + /** + * The key identifying the error source. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("error_key") + private Optional errorKey; + + /** + * Machine-readable reason the cancellation failed. + * - `not_cancellable`: the payroll is past the point where it can be cancelled + * - `internal_error`: an unexpected error occurred; the request can be retried + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("category") + private Optional category; + + /** + * Human-readable explanation of the failure. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("message") + private Optional message; + + @JsonCreator + public PayrollBatchResultsErrors( + @JsonProperty("error_key") Optional errorKey, + @JsonProperty("category") Optional category, + @JsonProperty("message") Optional message) { + Utils.checkNotNull(errorKey, "errorKey"); + Utils.checkNotNull(category, "category"); + Utils.checkNotNull(message, "message"); + this.errorKey = errorKey; + this.category = category; + this.message = message; + } + + public PayrollBatchResultsErrors() { + this(Optional.empty(), Optional.empty(), Optional.empty()); + } + + /** + * The key identifying the error source. + */ + @JsonIgnore + public Optional errorKey() { + return errorKey; + } + + /** + * Machine-readable reason the cancellation failed. + * - `not_cancellable`: the payroll is past the point where it can be cancelled + * - `internal_error`: an unexpected error occurred; the request can be retried + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional category() { + return (Optional) category; + } + + /** + * Human-readable explanation of the failure. + */ + @JsonIgnore + public Optional message() { + return message; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * The key identifying the error source. + */ + public PayrollBatchResultsErrors withErrorKey(String errorKey) { + Utils.checkNotNull(errorKey, "errorKey"); + this.errorKey = Optional.ofNullable(errorKey); + return this; + } + + + /** + * The key identifying the error source. + */ + public PayrollBatchResultsErrors withErrorKey(Optional errorKey) { + Utils.checkNotNull(errorKey, "errorKey"); + this.errorKey = errorKey; + return this; + } + + /** + * Machine-readable reason the cancellation failed. + * - `not_cancellable`: the payroll is past the point where it can be cancelled + * - `internal_error`: an unexpected error occurred; the request can be retried + */ + public PayrollBatchResultsErrors withCategory(PayrollBatchResultsResultsCategory category) { + Utils.checkNotNull(category, "category"); + this.category = Optional.ofNullable(category); + return this; + } + + + /** + * Machine-readable reason the cancellation failed. + * - `not_cancellable`: the payroll is past the point where it can be cancelled + * - `internal_error`: an unexpected error occurred; the request can be retried + */ + public PayrollBatchResultsErrors withCategory(Optional category) { + Utils.checkNotNull(category, "category"); + this.category = category; + return this; + } + + /** + * Human-readable explanation of the failure. + */ + public PayrollBatchResultsErrors withMessage(String message) { + Utils.checkNotNull(message, "message"); + this.message = Optional.ofNullable(message); + return this; + } + + + /** + * Human-readable explanation of the failure. + */ + public PayrollBatchResultsErrors withMessage(Optional message) { + Utils.checkNotNull(message, "message"); + this.message = message; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PayrollBatchResultsErrors other = (PayrollBatchResultsErrors) o; + return + Utils.enhancedDeepEquals(this.errorKey, other.errorKey) && + Utils.enhancedDeepEquals(this.category, other.category) && + Utils.enhancedDeepEquals(this.message, other.message); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + errorKey, category, message); + } + + @Override + public String toString() { + return Utils.toString(PayrollBatchResultsErrors.class, + "errorKey", errorKey, + "category", category, + "message", message); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional errorKey = Optional.empty(); + + private Optional category = Optional.empty(); + + private Optional message = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * The key identifying the error source. + */ + public Builder errorKey(String errorKey) { + Utils.checkNotNull(errorKey, "errorKey"); + this.errorKey = Optional.ofNullable(errorKey); + return this; + } + + /** + * The key identifying the error source. + */ + public Builder errorKey(Optional errorKey) { + Utils.checkNotNull(errorKey, "errorKey"); + this.errorKey = errorKey; + return this; + } + + + /** + * Machine-readable reason the cancellation failed. + * - `not_cancellable`: the payroll is past the point where it can be cancelled + * - `internal_error`: an unexpected error occurred; the request can be retried + */ + public Builder category(PayrollBatchResultsResultsCategory category) { + Utils.checkNotNull(category, "category"); + this.category = Optional.ofNullable(category); + return this; + } + + /** + * Machine-readable reason the cancellation failed. + * - `not_cancellable`: the payroll is past the point where it can be cancelled + * - `internal_error`: an unexpected error occurred; the request can be retried + */ + public Builder category(Optional category) { + Utils.checkNotNull(category, "category"); + this.category = category; + return this; + } + + + /** + * Human-readable explanation of the failure. + */ + public Builder message(String message) { + Utils.checkNotNull(message, "message"); + this.message = Optional.ofNullable(message); + return this; + } + + /** + * Human-readable explanation of the failure. + */ + public Builder message(Optional message) { + Utils.checkNotNull(message, "message"); + this.message = message; + return this; + } + + public PayrollBatchResultsErrors build() { + + return new PayrollBatchResultsErrors( + errorKey, category, message); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollBatchResultsExclusionsStatus.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollBatchResultsExclusionsStatus.java new file mode 100644 index 000000000..9fbd57682 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollBatchResultsExclusionsStatus.java @@ -0,0 +1,39 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollBatchResultsExclusionsStatus + * + *

    Always `failed` for an excluded payroll. + */ +public enum PayrollBatchResultsExclusionsStatus { + FAILED("failed"); + + @JsonValue + private final String value; + + PayrollBatchResultsExclusionsStatus(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollBatchResultsExclusionsStatus o: PayrollBatchResultsExclusionsStatus.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollBatchResultsResultsCategory.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollBatchResultsResultsCategory.java new file mode 100644 index 000000000..e1f2b372f --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollBatchResultsResultsCategory.java @@ -0,0 +1,42 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollBatchResultsResultsCategory + * + *

    Machine-readable reason the cancellation failed. + * - `not_cancellable`: the payroll is past the point where it can be cancelled + * - `internal_error`: an unexpected error occurred; the request can be retried + */ +public enum PayrollBatchResultsResultsCategory { + NOT_CANCELLABLE("not_cancellable"), + INTERNAL_ERROR("internal_error"); + + @JsonValue + private final String value; + + PayrollBatchResultsResultsCategory(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollBatchResultsResultsCategory o: PayrollBatchResultsResultsCategory.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollBatchResultsResultsStatus.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollBatchResultsResultsStatus.java new file mode 100644 index 000000000..4a8dfedf4 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollBatchResultsResultsStatus.java @@ -0,0 +1,43 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollBatchResultsResultsStatus + * + *

    The outcome of cancelling this payroll. A cancel is atomic — there is no per-payroll + * `partial_success`. + * - `success`: the payroll was cancelled, or required no action (already cancelled / never run) + * - `failed`: the payroll could not be cancelled; see `errors` + */ +public enum PayrollBatchResultsResultsStatus { + SUCCESS("success"), + FAILED("failed"); + + @JsonValue + private final String value; + + PayrollBatchResultsResultsStatus(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollBatchResultsResultsStatus o: PayrollBatchResultsResultsStatus.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollBatchResultsStatus.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollBatchResultsStatus.java new file mode 100644 index 000000000..11889407c --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollBatchResultsStatus.java @@ -0,0 +1,47 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollBatchResultsStatus + * + *

    The lifecycle status of the batch request itself. Terminal values are `completed` (processing + * finished — inspect `results` and `exclusions` for per-payroll outcomes) and `failed` (the batch + * crashed at the system level; can be retried). This is distinct from the per-payroll `status` + * returned inside `results[]`. + * + *

    A `completed` batch does not imply every payroll was cancelled. + */ +public enum PayrollBatchResultsStatus { + PENDING("pending"), + PROCESSING("processing"), + COMPLETED("completed"), + FAILED("failed"); + + @JsonValue + private final String value; + + PayrollBatchResultsStatus(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollBatchResultsStatus o: PayrollBatchResultsStatus.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollBatchStatus.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollBatchStatus.java new file mode 100644 index 000000000..223f12ce4 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollBatchStatus.java @@ -0,0 +1,47 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollBatchStatus + * + *

    The lifecycle status of the batch request itself. Terminal values are `completed` (processing + * finished — inspect `results` and `exclusions` for per-payroll outcomes) and `failed` (the batch + * crashed at the system level; can be retried). This is distinct from the per-payroll `status` + * returned inside `results[]`. + * + *

    A `completed` batch does not imply every payroll was cancelled. + */ +public enum PayrollBatchStatus { + PENDING("pending"), + PROCESSING("processing"), + COMPLETED("completed"), + FAILED("failed"); + + @JsonValue + private final String value; + + PayrollBatchStatus(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollBatchStatus o: PayrollBatchStatus.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollDigest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollDigest.java index 5e9315bc8..72dfbe9d2 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollDigest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollDigest.java @@ -32,7 +32,7 @@ public class PayrollDigest { * The action being performed on the batch. */ @JsonProperty("batch_action") - private BatchAction batchAction; + private PayrollDigestBatchAction batchAction; /** * The lifecycle status of the batch request itself. Terminal values are `completed` (processing @@ -47,7 +47,7 @@ public class PayrollDigest { public PayrollDigest( @JsonProperty("uuid") String uuid, @JsonProperty("idempotency_key") String idempotencyKey, - @JsonProperty("batch_action") BatchAction batchAction, + @JsonProperty("batch_action") PayrollDigestBatchAction batchAction, @JsonProperty("status") PayrollDigestStatus status) { Utils.checkNotNull(uuid, "uuid"); Utils.checkNotNull(idempotencyKey, "idempotencyKey"); @@ -79,7 +79,7 @@ public String idempotencyKey() { * The action being performed on the batch. */ @JsonIgnore - public BatchAction batchAction() { + public PayrollDigestBatchAction batchAction() { return batchAction; } @@ -120,7 +120,7 @@ public PayrollDigest withIdempotencyKey(String idempotencyKey) { /** * The action being performed on the batch. */ - public PayrollDigest withBatchAction(BatchAction batchAction) { + public PayrollDigest withBatchAction(PayrollDigestBatchAction batchAction) { Utils.checkNotNull(batchAction, "batchAction"); this.batchAction = batchAction; return this; @@ -177,7 +177,7 @@ public final static class Builder { private String idempotencyKey; - private BatchAction batchAction; + private PayrollDigestBatchAction batchAction; private PayrollDigestStatus status; @@ -209,7 +209,7 @@ public Builder idempotencyKey(String idempotencyKey) { /** * The action being performed on the batch. */ - public Builder batchAction(BatchAction batchAction) { + public Builder batchAction(PayrollDigestBatchAction batchAction) { Utils.checkNotNull(batchAction, "batchAction"); this.batchAction = batchAction; return this; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollDigestBatchAction.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollDigestBatchAction.java new file mode 100644 index 000000000..04734094d --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollDigestBatchAction.java @@ -0,0 +1,39 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollDigestBatchAction + * + *

    The action being performed on the batch. + */ +public enum PayrollDigestBatchAction { + CREATE("create"); + + @JsonValue + private final String value; + + PayrollDigestBatchAction(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollDigestBatchAction o: PayrollDigestBatchAction.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollDigestResultsBlockers.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollDigestResultsBlockers.java new file mode 100644 index 000000000..181be40cc --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollDigestResultsBlockers.java @@ -0,0 +1,188 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.util.Optional; + + +public class PayrollDigestResultsBlockers { + /** + * A machine-readable blocker key (e.g. `missing_bank_account`). + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("type") + private Optional type; + + /** + * Human-readable description of the blocker. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("description") + private Optional description; + + @JsonCreator + public PayrollDigestResultsBlockers( + @JsonProperty("type") Optional type, + @JsonProperty("description") Optional description) { + Utils.checkNotNull(type, "type"); + Utils.checkNotNull(description, "description"); + this.type = type; + this.description = description; + } + + public PayrollDigestResultsBlockers() { + this(Optional.empty(), Optional.empty()); + } + + /** + * A machine-readable blocker key (e.g. `missing_bank_account`). + */ + @JsonIgnore + public Optional type() { + return type; + } + + /** + * Human-readable description of the blocker. + */ + @JsonIgnore + public Optional description() { + return description; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * A machine-readable blocker key (e.g. `missing_bank_account`). + */ + public PayrollDigestResultsBlockers withType(String type) { + Utils.checkNotNull(type, "type"); + this.type = Optional.ofNullable(type); + return this; + } + + + /** + * A machine-readable blocker key (e.g. `missing_bank_account`). + */ + public PayrollDigestResultsBlockers withType(Optional type) { + Utils.checkNotNull(type, "type"); + this.type = type; + return this; + } + + /** + * Human-readable description of the blocker. + */ + public PayrollDigestResultsBlockers withDescription(String description) { + Utils.checkNotNull(description, "description"); + this.description = Optional.ofNullable(description); + return this; + } + + + /** + * Human-readable description of the blocker. + */ + public PayrollDigestResultsBlockers withDescription(Optional description) { + Utils.checkNotNull(description, "description"); + this.description = description; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PayrollDigestResultsBlockers other = (PayrollDigestResultsBlockers) o; + return + Utils.enhancedDeepEquals(this.type, other.type) && + Utils.enhancedDeepEquals(this.description, other.description); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + type, description); + } + + @Override + public String toString() { + return Utils.toString(PayrollDigestResultsBlockers.class, + "type", type, + "description", description); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional type = Optional.empty(); + + private Optional description = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * A machine-readable blocker key (e.g. `missing_bank_account`). + */ + public Builder type(String type) { + Utils.checkNotNull(type, "type"); + this.type = Optional.ofNullable(type); + return this; + } + + /** + * A machine-readable blocker key (e.g. `missing_bank_account`). + */ + public Builder type(Optional type) { + Utils.checkNotNull(type, "type"); + this.type = type; + return this; + } + + + /** + * Human-readable description of the blocker. + */ + public Builder description(String description) { + Utils.checkNotNull(description, "description"); + this.description = Optional.ofNullable(description); + return this; + } + + /** + * Human-readable description of the blocker. + */ + public Builder description(Optional description) { + Utils.checkNotNull(description, "description"); + this.description = description; + return this; + } + + public PayrollDigestResultsBlockers build() { + + return new PayrollDigestResultsBlockers( + type, description); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollDigestResultsResults.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollDigestResultsResults.java index 060fc2534..a0e97f13b 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollDigestResultsResults.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollDigestResultsResults.java @@ -60,7 +60,7 @@ public class PayrollDigestResultsResults { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("blockers") - private Optional> blockers; + private Optional> blockers; /** * Payrolls for this company within the digest date window (7 days past, 30–60 days future). May be @@ -77,7 +77,7 @@ public PayrollDigestResultsResults( @JsonProperty("uuid") Optional uuid, @JsonProperty("name") Optional name, @JsonProperty("status") Optional status, - @JsonProperty("blockers") Optional> blockers, + @JsonProperty("blockers") Optional> blockers, @JsonProperty("payrolls") Optional> payrolls) { Utils.checkNotNull(idx, "idx"); Utils.checkNotNull(entityType, "entityType"); @@ -150,8 +150,8 @@ public Optional status() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional> blockers() { - return (Optional>) blockers; + public Optional> blockers() { + return (Optional>) blockers; } /** @@ -269,7 +269,7 @@ public PayrollDigestResultsResults withStatus(Optional blockers) { + public PayrollDigestResultsResults withBlockers(List blockers) { Utils.checkNotNull(blockers, "blockers"); this.blockers = Optional.ofNullable(blockers); return this; @@ -281,7 +281,7 @@ public PayrollDigestResultsResults withBlockers(List blockers) { * `payrolls` array — blockers are evaluated at the company level, not per payroll. Empty when there * are no blockers. */ - public PayrollDigestResultsResults withBlockers(Optional> blockers) { + public PayrollDigestResultsResults withBlockers(Optional> blockers) { Utils.checkNotNull(blockers, "blockers"); this.blockers = blockers; return this; @@ -360,7 +360,7 @@ public final static class Builder { private Optional status = Optional.empty(); - private Optional> blockers = Optional.empty(); + private Optional> blockers = Optional.empty(); private Optional> payrolls = Optional.empty(); @@ -469,7 +469,7 @@ public Builder status(Optional stat * `payrolls` array — blockers are evaluated at the company level, not per payroll. Empty when there * are no blockers. */ - public Builder blockers(List blockers) { + public Builder blockers(List blockers) { Utils.checkNotNull(blockers, "blockers"); this.blockers = Optional.ofNullable(blockers); return this; @@ -480,7 +480,7 @@ public Builder blockers(List blockers) { * `payrolls` array — blockers are evaluated at the company level, not per payroll. Empty when there * are no blockers. */ - public Builder blockers(Optional> blockers) { + public Builder blockers(Optional> blockers) { Utils.checkNotNull(blockers, "blockers"); this.blockers = blockers; return this; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollEmployeeCompensationsType.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollEmployeeCompensationsType.java index a6f566483..3004c8231 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollEmployeeCompensationsType.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollEmployeeCompensationsType.java @@ -98,11 +98,12 @@ public class PayrollEmployeeCompensationsType { private JsonNullable memo; /** - * An array of fixed compensations for the employee. Fixed compensations include tips, bonuses, and one - * time reimbursements. If this payroll has been processed, only fixed compensations with a value - * greater than 0.00 are returned. + * An array of fixed compensations for the employee. Fixed compensations include tips and bonuses. On + * regular payrolls, reimbursements are sent via the dedicated `reimbursements` array instead. * - *

    For an unprocessed payroll, all active fixed compensations are returned. + *

    Off-cycle payrolls continue to include reimbursements in `fixed_compensations`. If this payroll has + * been processed, only fixed compensations with a value greater than 0.00 are returned. For an + * unprocessed payroll, all active fixed compensations are returned. */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("fixed_compensations") @@ -133,6 +134,15 @@ public class PayrollEmployeeCompensationsType { @JsonProperty("reimbursements") private Optional> reimbursements; + /** + * The one-time custom withholding overrides applied to this payroll for this employee. + * `federal` is null when no federal one-time override is set; `state` is an empty + * array when no state one-time overrides are set. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("custom_withholdings") + private Optional customWithholdings; + /** * The current version of this employee compensation. This field is only available for prepared * payrolls. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for @@ -166,6 +176,7 @@ public PayrollEmployeeCompensationsType( @JsonProperty("hourly_compensations") Optional> hourlyCompensations, @JsonProperty("paid_time_off") Optional> paidTimeOff, @JsonProperty("reimbursements") Optional> reimbursements, + @JsonProperty("custom_withholdings") Optional customWithholdings, @JsonProperty("version") Optional version, @JsonProperty("deductions") Optional> deductions) { Utils.checkNotNull(employeeUuid, "employeeUuid"); @@ -182,6 +193,7 @@ public PayrollEmployeeCompensationsType( Utils.checkNotNull(hourlyCompensations, "hourlyCompensations"); Utils.checkNotNull(paidTimeOff, "paidTimeOff"); Utils.checkNotNull(reimbursements, "reimbursements"); + Utils.checkNotNull(customWithholdings, "customWithholdings"); Utils.checkNotNull(version, "version"); Utils.checkNotNull(deductions, "deductions"); this.employeeUuid = employeeUuid; @@ -198,6 +210,7 @@ public PayrollEmployeeCompensationsType( this.hourlyCompensations = hourlyCompensations; this.paidTimeOff = paidTimeOff; this.reimbursements = reimbursements; + this.customWithholdings = customWithholdings; this.version = version; this.deductions = deductions; } @@ -208,7 +221,7 @@ public PayrollEmployeeCompensationsType() { JsonNullable.undefined(), JsonNullable.undefined(), JsonNullable.undefined(), JsonNullable.undefined(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), - Optional.empty()); + Optional.empty(), Optional.empty()); } /** @@ -300,11 +313,12 @@ public JsonNullable memo() { } /** - * An array of fixed compensations for the employee. Fixed compensations include tips, bonuses, and one - * time reimbursements. If this payroll has been processed, only fixed compensations with a value - * greater than 0.00 are returned. + * An array of fixed compensations for the employee. Fixed compensations include tips and bonuses. On + * regular payrolls, reimbursements are sent via the dedicated `reimbursements` array instead. * - *

    For an unprocessed payroll, all active fixed compensations are returned. + *

    Off-cycle payrolls continue to include reimbursements in `fixed_compensations`. If this payroll has + * been processed, only fixed compensations with a value greater than 0.00 are returned. For an + * unprocessed payroll, all active fixed compensations are returned. */ @SuppressWarnings("unchecked") @JsonIgnore @@ -343,6 +357,17 @@ public Optional> reimbursements() { return (Optional>) reimbursements; } + /** + * The one-time custom withholding overrides applied to this payroll for this employee. + * `federal` is null when no federal one-time override is set; `state` is an empty + * array when no state one-time overrides are set. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional customWithholdings() { + return (Optional) customWithholdings; + } + /** * The current version of this employee compensation. This field is only available for prepared * payrolls. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for @@ -566,11 +591,12 @@ public PayrollEmployeeCompensationsType withMemo(JsonNullable memo) { } /** - * An array of fixed compensations for the employee. Fixed compensations include tips, bonuses, and one - * time reimbursements. If this payroll has been processed, only fixed compensations with a value - * greater than 0.00 are returned. + * An array of fixed compensations for the employee. Fixed compensations include tips and bonuses. On + * regular payrolls, reimbursements are sent via the dedicated `reimbursements` array instead. * - *

    For an unprocessed payroll, all active fixed compensations are returned. + *

    Off-cycle payrolls continue to include reimbursements in `fixed_compensations`. If this payroll has + * been processed, only fixed compensations with a value greater than 0.00 are returned. For an + * unprocessed payroll, all active fixed compensations are returned. */ public PayrollEmployeeCompensationsType withFixedCompensations(List fixedCompensations) { Utils.checkNotNull(fixedCompensations, "fixedCompensations"); @@ -580,11 +606,12 @@ public PayrollEmployeeCompensationsType withFixedCompensations(ListFor an unprocessed payroll, all active fixed compensations are returned. + *

    Off-cycle payrolls continue to include reimbursements in `fixed_compensations`. If this payroll has + * been processed, only fixed compensations with a value greater than 0.00 are returned. For an + * unprocessed payroll, all active fixed compensations are returned. */ public PayrollEmployeeCompensationsType withFixedCompensations(Optional> fixedCompensations) { Utils.checkNotNull(fixedCompensations, "fixedCompensations"); @@ -657,6 +684,29 @@ public PayrollEmployeeCompensationsType withReimbursements(Optional customWithholdings) { + Utils.checkNotNull(customWithholdings, "customWithholdings"); + this.customWithholdings = customWithholdings; + return this; + } + /** * The current version of this employee compensation. This field is only available for prepared * payrolls. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for @@ -725,6 +775,7 @@ public boolean equals(java.lang.Object o) { Utils.enhancedDeepEquals(this.hourlyCompensations, other.hourlyCompensations) && Utils.enhancedDeepEquals(this.paidTimeOff, other.paidTimeOff) && Utils.enhancedDeepEquals(this.reimbursements, other.reimbursements) && + Utils.enhancedDeepEquals(this.customWithholdings, other.customWithholdings) && Utils.enhancedDeepEquals(this.version, other.version) && Utils.enhancedDeepEquals(this.deductions, other.deductions); } @@ -736,8 +787,8 @@ public int hashCode() { preferredFirstName, lastName, grossPay, netPay, checkAmount, paymentMethod, memo, fixedCompensations, hourlyCompensations, - paidTimeOff, reimbursements, version, - deductions); + paidTimeOff, reimbursements, customWithholdings, + version, deductions); } @Override @@ -757,6 +808,7 @@ public String toString() { "hourlyCompensations", hourlyCompensations, "paidTimeOff", paidTimeOff, "reimbursements", reimbursements, + "customWithholdings", customWithholdings, "version", version, "deductions", deductions); } @@ -792,6 +844,8 @@ public final static class Builder { private Optional> reimbursements = Optional.empty(); + private Optional customWithholdings = Optional.empty(); + private Optional version = Optional.empty(); private Optional> deductions = Optional.empty(); @@ -1006,11 +1060,12 @@ public Builder memo(JsonNullable memo) { /** - * An array of fixed compensations for the employee. Fixed compensations include tips, bonuses, and one - * time reimbursements. If this payroll has been processed, only fixed compensations with a value - * greater than 0.00 are returned. + * An array of fixed compensations for the employee. Fixed compensations include tips and bonuses. On + * regular payrolls, reimbursements are sent via the dedicated `reimbursements` array instead. * - *

    For an unprocessed payroll, all active fixed compensations are returned. + *

    Off-cycle payrolls continue to include reimbursements in `fixed_compensations`. If this payroll has + * been processed, only fixed compensations with a value greater than 0.00 are returned. For an + * unprocessed payroll, all active fixed compensations are returned. */ public Builder fixedCompensations(List fixedCompensations) { Utils.checkNotNull(fixedCompensations, "fixedCompensations"); @@ -1019,11 +1074,12 @@ public Builder fixedCompensations(List fixedCompensations) { } /** - * An array of fixed compensations for the employee. Fixed compensations include tips, bonuses, and one - * time reimbursements. If this payroll has been processed, only fixed compensations with a value - * greater than 0.00 are returned. + * An array of fixed compensations for the employee. Fixed compensations include tips and bonuses. On + * regular payrolls, reimbursements are sent via the dedicated `reimbursements` array instead. * - *

    For an unprocessed payroll, all active fixed compensations are returned. + *

    Off-cycle payrolls continue to include reimbursements in `fixed_compensations`. If this payroll has + * been processed, only fixed compensations with a value greater than 0.00 are returned. For an + * unprocessed payroll, all active fixed compensations are returned. */ public Builder fixedCompensations(Optional> fixedCompensations) { Utils.checkNotNull(fixedCompensations, "fixedCompensations"); @@ -1097,6 +1153,29 @@ public Builder reimbursements(Optional> reimburse } + /** + * The one-time custom withholding overrides applied to this payroll for this employee. + * `federal` is null when no federal one-time override is set; `state` is an empty + * array when no state one-time overrides are set. + */ + public Builder customWithholdings(CustomWithholdings customWithholdings) { + Utils.checkNotNull(customWithholdings, "customWithholdings"); + this.customWithholdings = Optional.ofNullable(customWithholdings); + return this; + } + + /** + * The one-time custom withholding overrides applied to this payroll for this employee. + * `federal` is null when no federal one-time override is set; `state` is an empty + * array when no state one-time overrides are set. + */ + public Builder customWithholdings(Optional customWithholdings) { + Utils.checkNotNull(customWithholdings, "customWithholdings"); + this.customWithholdings = customWithholdings; + return this; + } + + /** * The current version of this employee compensation. This field is only available for prepared * payrolls. See the [versioning guide](https://docs.gusto.com/embedded-payroll/docs/idempotency) for @@ -1147,8 +1226,8 @@ public PayrollEmployeeCompensationsType build() { preferredFirstName, lastName, grossPay, netPay, checkAmount, paymentMethod, memo, fixedCompensations, hourlyCompensations, - paidTimeOff, reimbursements, version, - deductions); + paidTimeOff, reimbursements, customWithholdings, + version, deductions); } } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollEmployeeCompensationsTypeAmountType.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollEmployeeCompensationsTypeAmountType.java new file mode 100644 index 000000000..1bdea9f39 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollEmployeeCompensationsTypeAmountType.java @@ -0,0 +1,40 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollEmployeeCompensationsTypeAmountType + * + *

    How to interpret the amount. + */ +public enum PayrollEmployeeCompensationsTypeAmountType { + FIXED("fixed"), + PERCENT("percent"); + + @JsonValue + private final String value; + + PayrollEmployeeCompensationsTypeAmountType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollEmployeeCompensationsTypeAmountType o: PayrollEmployeeCompensationsTypeAmountType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollEmployeeCompensationsTypeCustomWithholdingsAmountType.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollEmployeeCompensationsTypeCustomWithholdingsAmountType.java new file mode 100644 index 000000000..6d3547a0f --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollEmployeeCompensationsTypeCustomWithholdingsAmountType.java @@ -0,0 +1,40 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollEmployeeCompensationsTypeCustomWithholdingsAmountType + * + *

    How to interpret the amount. + */ +public enum PayrollEmployeeCompensationsTypeCustomWithholdingsAmountType { + FIXED("fixed"), + PERCENT("percent"); + + @JsonValue + private final String value; + + PayrollEmployeeCompensationsTypeCustomWithholdingsAmountType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollEmployeeCompensationsTypeCustomWithholdingsAmountType o: PayrollEmployeeCompensationsTypeCustomWithholdingsAmountType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollEmployeeCompensationsTypeOverrideType.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollEmployeeCompensationsTypeOverrideType.java new file mode 100644 index 000000000..9ed924590 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollEmployeeCompensationsTypeOverrideType.java @@ -0,0 +1,39 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollEmployeeCompensationsTypeOverrideType + * + *

    Override mode. Only `one_time` is currently exposed. + */ +public enum PayrollEmployeeCompensationsTypeOverrideType { + ONE_TIME("one_time"); + + @JsonValue + private final String value; + + PayrollEmployeeCompensationsTypeOverrideType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollEmployeeCompensationsTypeOverrideType o: PayrollEmployeeCompensationsTypeOverrideType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollShowBenefits.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollShowBenefits.java index 12d60c5d0..2b9a07a54 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollShowBenefits.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollShowBenefits.java @@ -10,7 +10,6 @@ import com.fasterxml.jackson.annotation.JsonProperty; import com.gusto.embedded_api_v_2026_06_15.utils.Utils; import java.lang.Boolean; -import java.lang.Double; import java.lang.Override; import java.lang.String; import java.util.Optional; @@ -25,12 +24,12 @@ public class PayrollShowBenefits { @JsonInclude(Include.NON_ABSENT) @JsonProperty("employee_deduction") - private Optional employeeDeduction; + private Optional employeeDeduction; @JsonInclude(Include.NON_ABSENT) @JsonProperty("company_contribution") - private Optional companyContribution; + private Optional companyContribution; @JsonInclude(Include.NON_ABSENT) @@ -40,8 +39,8 @@ public class PayrollShowBenefits { @JsonCreator public PayrollShowBenefits( @JsonProperty("name") Optional name, - @JsonProperty("employee_deduction") Optional employeeDeduction, - @JsonProperty("company_contribution") Optional companyContribution, + @JsonProperty("employee_deduction") Optional employeeDeduction, + @JsonProperty("company_contribution") Optional companyContribution, @JsonProperty("imputed") Optional imputed) { Utils.checkNotNull(name, "name"); Utils.checkNotNull(employeeDeduction, "employeeDeduction"); @@ -64,12 +63,12 @@ public Optional name() { } @JsonIgnore - public Optional employeeDeduction() { + public Optional employeeDeduction() { return employeeDeduction; } @JsonIgnore - public Optional companyContribution() { + public Optional companyContribution() { return companyContribution; } @@ -96,27 +95,27 @@ public PayrollShowBenefits withName(Optional name) { return this; } - public PayrollShowBenefits withEmployeeDeduction(double employeeDeduction) { + public PayrollShowBenefits withEmployeeDeduction(String employeeDeduction) { Utils.checkNotNull(employeeDeduction, "employeeDeduction"); this.employeeDeduction = Optional.ofNullable(employeeDeduction); return this; } - public PayrollShowBenefits withEmployeeDeduction(Optional employeeDeduction) { + public PayrollShowBenefits withEmployeeDeduction(Optional employeeDeduction) { Utils.checkNotNull(employeeDeduction, "employeeDeduction"); this.employeeDeduction = employeeDeduction; return this; } - public PayrollShowBenefits withCompanyContribution(double companyContribution) { + public PayrollShowBenefits withCompanyContribution(String companyContribution) { Utils.checkNotNull(companyContribution, "companyContribution"); this.companyContribution = Optional.ofNullable(companyContribution); return this; } - public PayrollShowBenefits withCompanyContribution(Optional companyContribution) { + public PayrollShowBenefits withCompanyContribution(Optional companyContribution) { Utils.checkNotNull(companyContribution, "companyContribution"); this.companyContribution = companyContribution; return this; @@ -172,9 +171,9 @@ public final static class Builder { private Optional name = Optional.empty(); - private Optional employeeDeduction = Optional.empty(); + private Optional employeeDeduction = Optional.empty(); - private Optional companyContribution = Optional.empty(); + private Optional companyContribution = Optional.empty(); private Optional imputed = Optional.empty(); @@ -196,26 +195,26 @@ public Builder name(Optional name) { } - public Builder employeeDeduction(double employeeDeduction) { + public Builder employeeDeduction(String employeeDeduction) { Utils.checkNotNull(employeeDeduction, "employeeDeduction"); this.employeeDeduction = Optional.ofNullable(employeeDeduction); return this; } - public Builder employeeDeduction(Optional employeeDeduction) { + public Builder employeeDeduction(Optional employeeDeduction) { Utils.checkNotNull(employeeDeduction, "employeeDeduction"); this.employeeDeduction = employeeDeduction; return this; } - public Builder companyContribution(double companyContribution) { + public Builder companyContribution(String companyContribution) { Utils.checkNotNull(companyContribution, "companyContribution"); this.companyContribution = Optional.ofNullable(companyContribution); return this; } - public Builder companyContribution(Optional companyContribution) { + public Builder companyContribution(Optional companyContribution) { Utils.checkNotNull(companyContribution, "companyContribution"); this.companyContribution = companyContribution; return this; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollShowCustomWithholdings.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollShowCustomWithholdings.java new file mode 100644 index 000000000..4abb87c73 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollShowCustomWithholdings.java @@ -0,0 +1,198 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.List; +import java.util.Optional; +import org.openapitools.jackson.nullable.JsonNullable; + +/** + * PayrollShowCustomWithholdings + * + *

    The one-time custom withholding overrides applied to this payroll for this employee. + * `federal` is null when no federal one-time override is set; `state` is an empty + * array when no state one-time overrides are set. + */ +public class PayrollShowCustomWithholdings { + /** + * Federal one-time custom withholding override applied to this payroll. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("federal") + private JsonNullable federal; + + /** + * State one-time custom withholding overrides applied to this payroll, one entry per state field. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("state") + private Optional> state; + + @JsonCreator + public PayrollShowCustomWithholdings( + @JsonProperty("federal") JsonNullable federal, + @JsonProperty("state") Optional> state) { + Utils.checkNotNull(federal, "federal"); + Utils.checkNotNull(state, "state"); + this.federal = federal; + this.state = state; + } + + public PayrollShowCustomWithholdings() { + this(JsonNullable.undefined(), Optional.empty()); + } + + /** + * Federal one-time custom withholding override applied to this payroll. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public JsonNullable federal() { + return (JsonNullable) federal; + } + + /** + * State one-time custom withholding overrides applied to this payroll, one entry per state field. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> state() { + return (Optional>) state; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Federal one-time custom withholding override applied to this payroll. + */ + public PayrollShowCustomWithholdings withFederal(PayrollShowFederal federal) { + Utils.checkNotNull(federal, "federal"); + this.federal = JsonNullable.of(federal); + return this; + } + + /** + * Federal one-time custom withholding override applied to this payroll. + */ + public PayrollShowCustomWithholdings withFederal(JsonNullable federal) { + Utils.checkNotNull(federal, "federal"); + this.federal = federal; + return this; + } + + /** + * State one-time custom withholding overrides applied to this payroll, one entry per state field. + */ + public PayrollShowCustomWithholdings withState(List state) { + Utils.checkNotNull(state, "state"); + this.state = Optional.ofNullable(state); + return this; + } + + + /** + * State one-time custom withholding overrides applied to this payroll, one entry per state field. + */ + public PayrollShowCustomWithholdings withState(Optional> state) { + Utils.checkNotNull(state, "state"); + this.state = state; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PayrollShowCustomWithholdings other = (PayrollShowCustomWithholdings) o; + return + Utils.enhancedDeepEquals(this.federal, other.federal) && + Utils.enhancedDeepEquals(this.state, other.state); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + federal, state); + } + + @Override + public String toString() { + return Utils.toString(PayrollShowCustomWithholdings.class, + "federal", federal, + "state", state); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private JsonNullable federal = JsonNullable.undefined(); + + private Optional> state = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * Federal one-time custom withholding override applied to this payroll. + */ + public Builder federal(PayrollShowFederal federal) { + Utils.checkNotNull(federal, "federal"); + this.federal = JsonNullable.of(federal); + return this; + } + + /** + * Federal one-time custom withholding override applied to this payroll. + */ + public Builder federal(JsonNullable federal) { + Utils.checkNotNull(federal, "federal"); + this.federal = federal; + return this; + } + + + /** + * State one-time custom withholding overrides applied to this payroll, one entry per state field. + */ + public Builder state(List state) { + Utils.checkNotNull(state, "state"); + this.state = Optional.ofNullable(state); + return this; + } + + /** + * State one-time custom withholding overrides applied to this payroll, one entry per state field. + */ + public Builder state(Optional> state) { + Utils.checkNotNull(state, "state"); + this.state = state; + return this; + } + + public PayrollShowCustomWithholdings build() { + + return new PayrollShowCustomWithholdings( + federal, state); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollShowDeductions.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollShowDeductions.java index 3a78b4d8a..c85eb6bf3 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollShowDeductions.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollShowDeductions.java @@ -10,7 +10,6 @@ import com.fasterxml.jackson.annotation.JsonProperty; import com.gusto.embedded_api_v_2026_06_15.utils.Utils; import java.lang.Boolean; -import java.lang.Double; import java.lang.Override; import java.lang.String; import java.lang.SuppressWarnings; @@ -30,7 +29,7 @@ public class PayrollShowDeductions { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("amount") - private Optional amount; + private Optional amount; /** * The amount type of the deduction for the pay period. Only present for unprocessed payrolls. @@ -57,7 +56,7 @@ public class PayrollShowDeductions { @JsonCreator public PayrollShowDeductions( @JsonProperty("name") Optional name, - @JsonProperty("amount") Optional amount, + @JsonProperty("amount") Optional amount, @JsonProperty("amount_type") Optional amountType, @JsonProperty("uuid") Optional uuid, @JsonProperty("updatable_via_payroll") Optional updatableViaPayroll) { @@ -90,7 +89,7 @@ public Optional name() { * The amount of the deduction for the pay period. */ @JsonIgnore - public Optional amount() { + public Optional amount() { return amount; } @@ -147,7 +146,7 @@ public PayrollShowDeductions withName(Optional name) { /** * The amount of the deduction for the pay period. */ - public PayrollShowDeductions withAmount(double amount) { + public PayrollShowDeductions withAmount(String amount) { Utils.checkNotNull(amount, "amount"); this.amount = Optional.ofNullable(amount); return this; @@ -157,7 +156,7 @@ public PayrollShowDeductions withAmount(double amount) { /** * The amount of the deduction for the pay period. */ - public PayrollShowDeductions withAmount(Optional amount) { + public PayrollShowDeductions withAmount(Optional amount) { Utils.checkNotNull(amount, "amount"); this.amount = amount; return this; @@ -261,7 +260,7 @@ public final static class Builder { private Optional name = Optional.empty(); - private Optional amount = Optional.empty(); + private Optional amount = Optional.empty(); private Optional amountType = Optional.empty(); @@ -296,7 +295,7 @@ public Builder name(Optional name) { /** * The amount of the deduction for the pay period. */ - public Builder amount(double amount) { + public Builder amount(String amount) { Utils.checkNotNull(amount, "amount"); this.amount = Optional.ofNullable(amount); return this; @@ -305,7 +304,7 @@ public Builder amount(double amount) { /** * The amount of the deduction for the pay period. */ - public Builder amount(Optional amount) { + public Builder amount(Optional amount) { Utils.checkNotNull(amount, "amount"); this.amount = amount; return this; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollShowEmployeeCompensationsAmountType.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollShowEmployeeCompensationsAmountType.java new file mode 100644 index 000000000..1d904984d --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollShowEmployeeCompensationsAmountType.java @@ -0,0 +1,40 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollShowEmployeeCompensationsAmountType + * + *

    How to interpret the amount. + */ +public enum PayrollShowEmployeeCompensationsAmountType { + FIXED("fixed"), + PERCENT("percent"); + + @JsonValue + private final String value; + + PayrollShowEmployeeCompensationsAmountType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollShowEmployeeCompensationsAmountType o: PayrollShowEmployeeCompensationsAmountType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollShowEmployeeCompensationsCustomWithholdingsAmountType.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollShowEmployeeCompensationsCustomWithholdingsAmountType.java new file mode 100644 index 000000000..aac78e736 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollShowEmployeeCompensationsCustomWithholdingsAmountType.java @@ -0,0 +1,40 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollShowEmployeeCompensationsCustomWithholdingsAmountType + * + *

    How to interpret the amount. + */ +public enum PayrollShowEmployeeCompensationsCustomWithholdingsAmountType { + FIXED("fixed"), + PERCENT("percent"); + + @JsonValue + private final String value; + + PayrollShowEmployeeCompensationsCustomWithholdingsAmountType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollShowEmployeeCompensationsCustomWithholdingsAmountType o: PayrollShowEmployeeCompensationsCustomWithholdingsAmountType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollShowEmployeeCompensationsOverrideType.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollShowEmployeeCompensationsOverrideType.java new file mode 100644 index 000000000..779e72c15 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollShowEmployeeCompensationsOverrideType.java @@ -0,0 +1,39 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollShowEmployeeCompensationsOverrideType + * + *

    Override mode. Only `one_time` is currently exposed. + */ +public enum PayrollShowEmployeeCompensationsOverrideType { + ONE_TIME("one_time"); + + @JsonValue + private final String value; + + PayrollShowEmployeeCompensationsOverrideType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollShowEmployeeCompensationsOverrideType o: PayrollShowEmployeeCompensationsOverrideType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollShowFederal.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollShowFederal.java new file mode 100644 index 000000000..88d9594ce --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollShowFederal.java @@ -0,0 +1,255 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + +/** + * PayrollShowFederal + * + *

    Federal one-time custom withholding override applied to this payroll. + */ +public class PayrollShowFederal { + /** + * Override mode. Only `one_time` is currently exposed. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("override_type") + private Optional overrideType; + + /** + * The amount that was withheld for this payroll. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("amount") + private Optional amount; + + /** + * How to interpret the amount. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("amount_type") + private Optional amountType; + + @JsonCreator + public PayrollShowFederal( + @JsonProperty("override_type") Optional overrideType, + @JsonProperty("amount") Optional amount, + @JsonProperty("amount_type") Optional amountType) { + Utils.checkNotNull(overrideType, "overrideType"); + Utils.checkNotNull(amount, "amount"); + Utils.checkNotNull(amountType, "amountType"); + this.overrideType = overrideType; + this.amount = amount; + this.amountType = amountType; + } + + public PayrollShowFederal() { + this(Optional.empty(), Optional.empty(), Optional.empty()); + } + + /** + * Override mode. Only `one_time` is currently exposed. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional overrideType() { + return (Optional) overrideType; + } + + /** + * The amount that was withheld for this payroll. + */ + @JsonIgnore + public Optional amount() { + return amount; + } + + /** + * How to interpret the amount. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional amountType() { + return (Optional) amountType; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public PayrollShowFederal withOverrideType(PayrollShowEmployeeCompensationsOverrideType overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = Optional.ofNullable(overrideType); + return this; + } + + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public PayrollShowFederal withOverrideType(Optional overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = overrideType; + return this; + } + + /** + * The amount that was withheld for this payroll. + */ + public PayrollShowFederal withAmount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = Optional.ofNullable(amount); + return this; + } + + + /** + * The amount that was withheld for this payroll. + */ + public PayrollShowFederal withAmount(Optional amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + /** + * How to interpret the amount. + */ + public PayrollShowFederal withAmountType(PayrollShowEmployeeCompensationsAmountType amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = Optional.ofNullable(amountType); + return this; + } + + + /** + * How to interpret the amount. + */ + public PayrollShowFederal withAmountType(Optional amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = amountType; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PayrollShowFederal other = (PayrollShowFederal) o; + return + Utils.enhancedDeepEquals(this.overrideType, other.overrideType) && + Utils.enhancedDeepEquals(this.amount, other.amount) && + Utils.enhancedDeepEquals(this.amountType, other.amountType); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + overrideType, amount, amountType); + } + + @Override + public String toString() { + return Utils.toString(PayrollShowFederal.class, + "overrideType", overrideType, + "amount", amount, + "amountType", amountType); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional overrideType = Optional.empty(); + + private Optional amount = Optional.empty(); + + private Optional amountType = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public Builder overrideType(PayrollShowEmployeeCompensationsOverrideType overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = Optional.ofNullable(overrideType); + return this; + } + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public Builder overrideType(Optional overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = overrideType; + return this; + } + + + /** + * The amount that was withheld for this payroll. + */ + public Builder amount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = Optional.ofNullable(amount); + return this; + } + + /** + * The amount that was withheld for this payroll. + */ + public Builder amount(Optional amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + + /** + * How to interpret the amount. + */ + public Builder amountType(PayrollShowEmployeeCompensationsAmountType amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = Optional.ofNullable(amountType); + return this; + } + + /** + * How to interpret the amount. + */ + public Builder amountType(Optional amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = amountType; + return this; + } + + public PayrollShowFederal build() { + + return new PayrollShowFederal( + overrideType, amount, amountType); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollShowOverrideType.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollShowOverrideType.java new file mode 100644 index 000000000..053609d0a --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollShowOverrideType.java @@ -0,0 +1,39 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollShowOverrideType + * + *

    Override mode. Only `one_time` is currently exposed. + */ +public enum PayrollShowOverrideType { + ONE_TIME("one_time"); + + @JsonValue + private final String value; + + PayrollShowOverrideType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollShowOverrideType o: PayrollShowOverrideType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollShowState.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollShowState.java new file mode 100644 index 000000000..a9d94a5fe --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollShowState.java @@ -0,0 +1,314 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class PayrollShowState { + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("employee_state_field_uuid") + private Optional employeeStateFieldUuid; + + /** + * Override mode. Only `one_time` is currently exposed. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("override_type") + private Optional overrideType; + + /** + * The amount that was withheld for this payroll. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("amount") + private Optional amount; + + /** + * How to interpret the amount. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("amount_type") + private Optional amountType; + + @JsonCreator + public PayrollShowState( + @JsonProperty("employee_state_field_uuid") Optional employeeStateFieldUuid, + @JsonProperty("override_type") Optional overrideType, + @JsonProperty("amount") Optional amount, + @JsonProperty("amount_type") Optional amountType) { + Utils.checkNotNull(employeeStateFieldUuid, "employeeStateFieldUuid"); + Utils.checkNotNull(overrideType, "overrideType"); + Utils.checkNotNull(amount, "amount"); + Utils.checkNotNull(amountType, "amountType"); + this.employeeStateFieldUuid = employeeStateFieldUuid; + this.overrideType = overrideType; + this.amount = amount; + this.amountType = amountType; + } + + public PayrollShowState() { + this(Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty()); + } + + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + @JsonIgnore + public Optional employeeStateFieldUuid() { + return employeeStateFieldUuid; + } + + /** + * Override mode. Only `one_time` is currently exposed. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional overrideType() { + return (Optional) overrideType; + } + + /** + * The amount that was withheld for this payroll. + */ + @JsonIgnore + public Optional amount() { + return amount; + } + + /** + * How to interpret the amount. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional amountType() { + return (Optional) amountType; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + public PayrollShowState withEmployeeStateFieldUuid(String employeeStateFieldUuid) { + Utils.checkNotNull(employeeStateFieldUuid, "employeeStateFieldUuid"); + this.employeeStateFieldUuid = Optional.ofNullable(employeeStateFieldUuid); + return this; + } + + + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + public PayrollShowState withEmployeeStateFieldUuid(Optional employeeStateFieldUuid) { + Utils.checkNotNull(employeeStateFieldUuid, "employeeStateFieldUuid"); + this.employeeStateFieldUuid = employeeStateFieldUuid; + return this; + } + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public PayrollShowState withOverrideType(PayrollShowOverrideType overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = Optional.ofNullable(overrideType); + return this; + } + + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public PayrollShowState withOverrideType(Optional overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = overrideType; + return this; + } + + /** + * The amount that was withheld for this payroll. + */ + public PayrollShowState withAmount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = Optional.ofNullable(amount); + return this; + } + + + /** + * The amount that was withheld for this payroll. + */ + public PayrollShowState withAmount(Optional amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + /** + * How to interpret the amount. + */ + public PayrollShowState withAmountType(PayrollShowEmployeeCompensationsCustomWithholdingsAmountType amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = Optional.ofNullable(amountType); + return this; + } + + + /** + * How to interpret the amount. + */ + public PayrollShowState withAmountType(Optional amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = amountType; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PayrollShowState other = (PayrollShowState) o; + return + Utils.enhancedDeepEquals(this.employeeStateFieldUuid, other.employeeStateFieldUuid) && + Utils.enhancedDeepEquals(this.overrideType, other.overrideType) && + Utils.enhancedDeepEquals(this.amount, other.amount) && + Utils.enhancedDeepEquals(this.amountType, other.amountType); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + employeeStateFieldUuid, overrideType, amount, + amountType); + } + + @Override + public String toString() { + return Utils.toString(PayrollShowState.class, + "employeeStateFieldUuid", employeeStateFieldUuid, + "overrideType", overrideType, + "amount", amount, + "amountType", amountType); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional employeeStateFieldUuid = Optional.empty(); + + private Optional overrideType = Optional.empty(); + + private Optional amount = Optional.empty(); + + private Optional amountType = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + public Builder employeeStateFieldUuid(String employeeStateFieldUuid) { + Utils.checkNotNull(employeeStateFieldUuid, "employeeStateFieldUuid"); + this.employeeStateFieldUuid = Optional.ofNullable(employeeStateFieldUuid); + return this; + } + + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + public Builder employeeStateFieldUuid(Optional employeeStateFieldUuid) { + Utils.checkNotNull(employeeStateFieldUuid, "employeeStateFieldUuid"); + this.employeeStateFieldUuid = employeeStateFieldUuid; + return this; + } + + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public Builder overrideType(PayrollShowOverrideType overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = Optional.ofNullable(overrideType); + return this; + } + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public Builder overrideType(Optional overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = overrideType; + return this; + } + + + /** + * The amount that was withheld for this payroll. + */ + public Builder amount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = Optional.ofNullable(amount); + return this; + } + + /** + * The amount that was withheld for this payroll. + */ + public Builder amount(Optional amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + + /** + * How to interpret the amount. + */ + public Builder amountType(PayrollShowEmployeeCompensationsCustomWithholdingsAmountType amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = Optional.ofNullable(amountType); + return this; + } + + /** + * How to interpret the amount. + */ + public Builder amountType(Optional amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = amountType; + return this; + } + + public PayrollShowState build() { + + return new PayrollShowState( + employeeStateFieldUuid, overrideType, amount, + amountType); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollShowTaxes.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollShowTaxes.java index 169146d47..96e40460d 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollShowTaxes.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollShowTaxes.java @@ -8,7 +8,6 @@ import com.fasterxml.jackson.annotation.JsonProperty; import com.gusto.embedded_api_v_2026_06_15.utils.Utils; import java.lang.Boolean; -import java.lang.Double; import java.lang.Override; import java.lang.String; @@ -24,13 +23,13 @@ public class PayrollShowTaxes { @JsonProperty("amount") - private double amount; + private String amount; @JsonCreator public PayrollShowTaxes( @JsonProperty("name") String name, @JsonProperty("employer") boolean employer, - @JsonProperty("amount") double amount) { + @JsonProperty("amount") String amount) { Utils.checkNotNull(name, "name"); Utils.checkNotNull(employer, "employer"); Utils.checkNotNull(amount, "amount"); @@ -50,7 +49,7 @@ public boolean employer() { } @JsonIgnore - public double amount() { + public String amount() { return amount; } @@ -71,7 +70,7 @@ public PayrollShowTaxes withEmployer(boolean employer) { return this; } - public PayrollShowTaxes withAmount(double amount) { + public PayrollShowTaxes withAmount(String amount) { Utils.checkNotNull(amount, "amount"); this.amount = amount; return this; @@ -113,7 +112,7 @@ public final static class Builder { private Boolean employer; - private Double amount; + private String amount; private Builder() { // force use of static builder() method @@ -134,7 +133,7 @@ public Builder employer(boolean employer) { } - public Builder amount(double amount) { + public Builder amount(String amount) { Utils.checkNotNull(amount, "amount"); this.amount = amount; return this; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUnprocessedEmployeeCompensationsType.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUnprocessedEmployeeCompensationsType.java index fbf7ca4f0..be309dfc6 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUnprocessedEmployeeCompensationsType.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUnprocessedEmployeeCompensationsType.java @@ -98,11 +98,12 @@ public class PayrollUnprocessedEmployeeCompensationsType { private JsonNullable memo; /** - * An array of fixed compensations for the employee. Fixed compensations include tips, bonuses, and one - * time reimbursements. If this payroll has been processed, only fixed compensations with a value - * greater than 0.00 are returned. + * An array of fixed compensations for the employee. Fixed compensations include tips and bonuses. On + * regular payrolls, reimbursements are sent via the dedicated `reimbursements` array instead. * - *

    For an unprocessed payroll, all active fixed compensations are returned. + *

    Off-cycle payrolls continue to include reimbursements in `fixed_compensations`. If this payroll has + * been processed, only fixed compensations with a value greater than 0.00 are returned. For an + * unprocessed payroll, all active fixed compensations are returned. */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("fixed_compensations") @@ -133,6 +134,15 @@ public class PayrollUnprocessedEmployeeCompensationsType { @JsonProperty("reimbursements") private Optional> reimbursements; + /** + * The one-time custom withholding overrides applied to this payroll for this employee. + * `federal` is null when no federal one-time override is set; `state` is an empty + * array when no state one-time overrides are set. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("custom_withholdings") + private Optional customWithholdings; + /** * The current version of this employee compensation. This field is only available for prepared * payrolls. See the [versioning @@ -159,6 +169,7 @@ public PayrollUnprocessedEmployeeCompensationsType( @JsonProperty("hourly_compensations") Optional> hourlyCompensations, @JsonProperty("paid_time_off") Optional> paidTimeOff, @JsonProperty("reimbursements") Optional> reimbursements, + @JsonProperty("custom_withholdings") Optional customWithholdings, @JsonProperty("version") Optional version) { Utils.checkNotNull(employeeUuid, "employeeUuid"); Utils.checkNotNull(excluded, "excluded"); @@ -174,6 +185,7 @@ public PayrollUnprocessedEmployeeCompensationsType( Utils.checkNotNull(hourlyCompensations, "hourlyCompensations"); Utils.checkNotNull(paidTimeOff, "paidTimeOff"); Utils.checkNotNull(reimbursements, "reimbursements"); + Utils.checkNotNull(customWithholdings, "customWithholdings"); Utils.checkNotNull(version, "version"); this.employeeUuid = employeeUuid; this.excluded = excluded; @@ -189,6 +201,7 @@ public PayrollUnprocessedEmployeeCompensationsType( this.hourlyCompensations = hourlyCompensations; this.paidTimeOff = paidTimeOff; this.reimbursements = reimbursements; + this.customWithholdings = customWithholdings; this.version = version; } @@ -197,7 +210,8 @@ public PayrollUnprocessedEmployeeCompensationsType() { JsonNullable.undefined(), JsonNullable.undefined(), JsonNullable.undefined(), JsonNullable.undefined(), JsonNullable.undefined(), JsonNullable.undefined(), JsonNullable.undefined(), Optional.empty(), Optional.empty(), - Optional.empty(), Optional.empty(), Optional.empty()); + Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty()); } /** @@ -289,11 +303,12 @@ public JsonNullable memo() { } /** - * An array of fixed compensations for the employee. Fixed compensations include tips, bonuses, and one - * time reimbursements. If this payroll has been processed, only fixed compensations with a value - * greater than 0.00 are returned. + * An array of fixed compensations for the employee. Fixed compensations include tips and bonuses. On + * regular payrolls, reimbursements are sent via the dedicated `reimbursements` array instead. * - *

    For an unprocessed payroll, all active fixed compensations are returned. + *

    Off-cycle payrolls continue to include reimbursements in `fixed_compensations`. If this payroll has + * been processed, only fixed compensations with a value greater than 0.00 are returned. For an + * unprocessed payroll, all active fixed compensations are returned. */ @SuppressWarnings("unchecked") @JsonIgnore @@ -332,6 +347,17 @@ public Optional> return (Optional>) reimbursements; } + /** + * The one-time custom withholding overrides applied to this payroll for this employee. + * `federal` is null when no federal one-time override is set; `state` is an empty + * array when no state one-time overrides are set. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional customWithholdings() { + return (Optional) customWithholdings; + } + /** * The current version of this employee compensation. This field is only available for prepared * payrolls. See the [versioning @@ -546,11 +572,12 @@ public PayrollUnprocessedEmployeeCompensationsType withMemo(JsonNullable } /** - * An array of fixed compensations for the employee. Fixed compensations include tips, bonuses, and one - * time reimbursements. If this payroll has been processed, only fixed compensations with a value - * greater than 0.00 are returned. + * An array of fixed compensations for the employee. Fixed compensations include tips and bonuses. On + * regular payrolls, reimbursements are sent via the dedicated `reimbursements` array instead. * - *

    For an unprocessed payroll, all active fixed compensations are returned. + *

    Off-cycle payrolls continue to include reimbursements in `fixed_compensations`. If this payroll has + * been processed, only fixed compensations with a value greater than 0.00 are returned. For an + * unprocessed payroll, all active fixed compensations are returned. */ public PayrollUnprocessedEmployeeCompensationsType withFixedCompensations(List fixedCompensations) { Utils.checkNotNull(fixedCompensations, "fixedCompensations"); @@ -560,11 +587,12 @@ public PayrollUnprocessedEmployeeCompensationsType withFixedCompensations(List

    For an unprocessed payroll, all active fixed compensations are returned. + *

    Off-cycle payrolls continue to include reimbursements in `fixed_compensations`. If this payroll has + * been processed, only fixed compensations with a value greater than 0.00 are returned. For an + * unprocessed payroll, all active fixed compensations are returned. */ public PayrollUnprocessedEmployeeCompensationsType withFixedCompensations(Optional> fixedCompensations) { Utils.checkNotNull(fixedCompensations, "fixedCompensations"); @@ -637,6 +665,29 @@ public PayrollUnprocessedEmployeeCompensationsType withReimbursements(Optional customWithholdings) { + Utils.checkNotNull(customWithholdings, "customWithholdings"); + this.customWithholdings = customWithholdings; + return this; + } + /** * The current version of this employee compensation. This field is only available for prepared * payrolls. See the [versioning @@ -686,6 +737,7 @@ public boolean equals(java.lang.Object o) { Utils.enhancedDeepEquals(this.hourlyCompensations, other.hourlyCompensations) && Utils.enhancedDeepEquals(this.paidTimeOff, other.paidTimeOff) && Utils.enhancedDeepEquals(this.reimbursements, other.reimbursements) && + Utils.enhancedDeepEquals(this.customWithholdings, other.customWithholdings) && Utils.enhancedDeepEquals(this.version, other.version); } @@ -696,7 +748,8 @@ public int hashCode() { preferredFirstName, lastName, grossPay, netPay, checkAmount, paymentMethod, memo, fixedCompensations, hourlyCompensations, - paidTimeOff, reimbursements, version); + paidTimeOff, reimbursements, customWithholdings, + version); } @Override @@ -716,6 +769,7 @@ public String toString() { "hourlyCompensations", hourlyCompensations, "paidTimeOff", paidTimeOff, "reimbursements", reimbursements, + "customWithholdings", customWithholdings, "version", version); } @@ -750,6 +804,8 @@ public final static class Builder { private Optional> reimbursements = Optional.empty(); + private Optional customWithholdings = Optional.empty(); + private Optional version = Optional.empty(); private Builder() { @@ -962,11 +1018,12 @@ public Builder memo(JsonNullable memo) { /** - * An array of fixed compensations for the employee. Fixed compensations include tips, bonuses, and one - * time reimbursements. If this payroll has been processed, only fixed compensations with a value - * greater than 0.00 are returned. + * An array of fixed compensations for the employee. Fixed compensations include tips and bonuses. On + * regular payrolls, reimbursements are sent via the dedicated `reimbursements` array instead. * - *

    For an unprocessed payroll, all active fixed compensations are returned. + *

    Off-cycle payrolls continue to include reimbursements in `fixed_compensations`. If this payroll has + * been processed, only fixed compensations with a value greater than 0.00 are returned. For an + * unprocessed payroll, all active fixed compensations are returned. */ public Builder fixedCompensations(List fixedCompensations) { Utils.checkNotNull(fixedCompensations, "fixedCompensations"); @@ -975,11 +1032,12 @@ public Builder fixedCompensations(ListFor an unprocessed payroll, all active fixed compensations are returned. + *

    Off-cycle payrolls continue to include reimbursements in `fixed_compensations`. If this payroll has + * been processed, only fixed compensations with a value greater than 0.00 are returned. For an + * unprocessed payroll, all active fixed compensations are returned. */ public Builder fixedCompensations(Optional> fixedCompensations) { Utils.checkNotNull(fixedCompensations, "fixedCompensations"); @@ -1053,6 +1111,29 @@ public Builder reimbursements(Optional customWithholdings) { + Utils.checkNotNull(customWithholdings, "customWithholdings"); + this.customWithholdings = customWithholdings; + return this; + } + + /** * The current version of this employee compensation. This field is only available for prepared * payrolls. See the [versioning @@ -1084,7 +1165,8 @@ public PayrollUnprocessedEmployeeCompensationsType build() { preferredFirstName, lastName, grossPay, netPay, checkAmount, paymentMethod, memo, fixedCompensations, hourlyCompensations, - paidTimeOff, reimbursements, version); + paidTimeOff, reimbursements, customWithholdings, + version); } } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeAmountType.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeAmountType.java new file mode 100644 index 000000000..424a37b86 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeAmountType.java @@ -0,0 +1,40 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollUnprocessedEmployeeCompensationsTypeAmountType + * + *

    How to interpret the amount. + */ +public enum PayrollUnprocessedEmployeeCompensationsTypeAmountType { + FIXED("fixed"), + PERCENT("percent"); + + @JsonValue + private final String value; + + PayrollUnprocessedEmployeeCompensationsTypeAmountType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollUnprocessedEmployeeCompensationsTypeAmountType o: PayrollUnprocessedEmployeeCompensationsTypeAmountType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings.java new file mode 100644 index 000000000..be3b81d17 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings.java @@ -0,0 +1,198 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.List; +import java.util.Optional; +import org.openapitools.jackson.nullable.JsonNullable; + +/** + * PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings + * + *

    The one-time custom withholding overrides applied to this payroll for this employee. + * `federal` is null when no federal one-time override is set; `state` is an empty + * array when no state one-time overrides are set. + */ +public class PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings { + /** + * Federal one-time custom withholding override applied to this payroll. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("federal") + private JsonNullable federal; + + /** + * State one-time custom withholding overrides applied to this payroll, one entry per state field. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("state") + private Optional> state; + + @JsonCreator + public PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings( + @JsonProperty("federal") JsonNullable federal, + @JsonProperty("state") Optional> state) { + Utils.checkNotNull(federal, "federal"); + Utils.checkNotNull(state, "state"); + this.federal = federal; + this.state = state; + } + + public PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings() { + this(JsonNullable.undefined(), Optional.empty()); + } + + /** + * Federal one-time custom withholding override applied to this payroll. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public JsonNullable federal() { + return (JsonNullable) federal; + } + + /** + * State one-time custom withholding overrides applied to this payroll, one entry per state field. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> state() { + return (Optional>) state; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Federal one-time custom withholding override applied to this payroll. + */ + public PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings withFederal(PayrollUnprocessedEmployeeCompensationsTypeFederal federal) { + Utils.checkNotNull(federal, "federal"); + this.federal = JsonNullable.of(federal); + return this; + } + + /** + * Federal one-time custom withholding override applied to this payroll. + */ + public PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings withFederal(JsonNullable federal) { + Utils.checkNotNull(federal, "federal"); + this.federal = federal; + return this; + } + + /** + * State one-time custom withholding overrides applied to this payroll, one entry per state field. + */ + public PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings withState(List state) { + Utils.checkNotNull(state, "state"); + this.state = Optional.ofNullable(state); + return this; + } + + + /** + * State one-time custom withholding overrides applied to this payroll, one entry per state field. + */ + public PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings withState(Optional> state) { + Utils.checkNotNull(state, "state"); + this.state = state; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings other = (PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings) o; + return + Utils.enhancedDeepEquals(this.federal, other.federal) && + Utils.enhancedDeepEquals(this.state, other.state); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + federal, state); + } + + @Override + public String toString() { + return Utils.toString(PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings.class, + "federal", federal, + "state", state); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private JsonNullable federal = JsonNullable.undefined(); + + private Optional> state = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * Federal one-time custom withholding override applied to this payroll. + */ + public Builder federal(PayrollUnprocessedEmployeeCompensationsTypeFederal federal) { + Utils.checkNotNull(federal, "federal"); + this.federal = JsonNullable.of(federal); + return this; + } + + /** + * Federal one-time custom withholding override applied to this payroll. + */ + public Builder federal(JsonNullable federal) { + Utils.checkNotNull(federal, "federal"); + this.federal = federal; + return this; + } + + + /** + * State one-time custom withholding overrides applied to this payroll, one entry per state field. + */ + public Builder state(List state) { + Utils.checkNotNull(state, "state"); + this.state = Optional.ofNullable(state); + return this; + } + + /** + * State one-time custom withholding overrides applied to this payroll, one entry per state field. + */ + public Builder state(Optional> state) { + Utils.checkNotNull(state, "state"); + this.state = state; + return this; + } + + public PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings build() { + + return new PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdings( + federal, state); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsAmountType.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsAmountType.java new file mode 100644 index 000000000..dc015f707 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsAmountType.java @@ -0,0 +1,40 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsAmountType + * + *

    How to interpret the amount. + */ +public enum PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsAmountType { + FIXED("fixed"), + PERCENT("percent"); + + @JsonValue + private final String value; + + PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsAmountType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsAmountType o: PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsAmountType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsOverrideType.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsOverrideType.java new file mode 100644 index 000000000..9e46fc807 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsOverrideType.java @@ -0,0 +1,39 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsOverrideType + * + *

    Override mode. Only `one_time` is currently exposed. + */ +public enum PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsOverrideType { + ONE_TIME("one_time"); + + @JsonValue + private final String value; + + PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsOverrideType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsOverrideType o: PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsOverrideType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeFederal.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeFederal.java new file mode 100644 index 000000000..6ee4e4f41 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeFederal.java @@ -0,0 +1,255 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + +/** + * PayrollUnprocessedEmployeeCompensationsTypeFederal + * + *

    Federal one-time custom withholding override applied to this payroll. + */ +public class PayrollUnprocessedEmployeeCompensationsTypeFederal { + /** + * Override mode. Only `one_time` is currently exposed. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("override_type") + private Optional overrideType; + + /** + * The amount that was withheld for this payroll. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("amount") + private Optional amount; + + /** + * How to interpret the amount. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("amount_type") + private Optional amountType; + + @JsonCreator + public PayrollUnprocessedEmployeeCompensationsTypeFederal( + @JsonProperty("override_type") Optional overrideType, + @JsonProperty("amount") Optional amount, + @JsonProperty("amount_type") Optional amountType) { + Utils.checkNotNull(overrideType, "overrideType"); + Utils.checkNotNull(amount, "amount"); + Utils.checkNotNull(amountType, "amountType"); + this.overrideType = overrideType; + this.amount = amount; + this.amountType = amountType; + } + + public PayrollUnprocessedEmployeeCompensationsTypeFederal() { + this(Optional.empty(), Optional.empty(), Optional.empty()); + } + + /** + * Override mode. Only `one_time` is currently exposed. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional overrideType() { + return (Optional) overrideType; + } + + /** + * The amount that was withheld for this payroll. + */ + @JsonIgnore + public Optional amount() { + return amount; + } + + /** + * How to interpret the amount. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional amountType() { + return (Optional) amountType; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public PayrollUnprocessedEmployeeCompensationsTypeFederal withOverrideType(PayrollUnprocessedEmployeeCompensationsTypeOverrideType overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = Optional.ofNullable(overrideType); + return this; + } + + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public PayrollUnprocessedEmployeeCompensationsTypeFederal withOverrideType(Optional overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = overrideType; + return this; + } + + /** + * The amount that was withheld for this payroll. + */ + public PayrollUnprocessedEmployeeCompensationsTypeFederal withAmount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = Optional.ofNullable(amount); + return this; + } + + + /** + * The amount that was withheld for this payroll. + */ + public PayrollUnprocessedEmployeeCompensationsTypeFederal withAmount(Optional amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + /** + * How to interpret the amount. + */ + public PayrollUnprocessedEmployeeCompensationsTypeFederal withAmountType(PayrollUnprocessedEmployeeCompensationsTypeAmountType amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = Optional.ofNullable(amountType); + return this; + } + + + /** + * How to interpret the amount. + */ + public PayrollUnprocessedEmployeeCompensationsTypeFederal withAmountType(Optional amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = amountType; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PayrollUnprocessedEmployeeCompensationsTypeFederal other = (PayrollUnprocessedEmployeeCompensationsTypeFederal) o; + return + Utils.enhancedDeepEquals(this.overrideType, other.overrideType) && + Utils.enhancedDeepEquals(this.amount, other.amount) && + Utils.enhancedDeepEquals(this.amountType, other.amountType); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + overrideType, amount, amountType); + } + + @Override + public String toString() { + return Utils.toString(PayrollUnprocessedEmployeeCompensationsTypeFederal.class, + "overrideType", overrideType, + "amount", amount, + "amountType", amountType); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional overrideType = Optional.empty(); + + private Optional amount = Optional.empty(); + + private Optional amountType = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public Builder overrideType(PayrollUnprocessedEmployeeCompensationsTypeOverrideType overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = Optional.ofNullable(overrideType); + return this; + } + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public Builder overrideType(Optional overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = overrideType; + return this; + } + + + /** + * The amount that was withheld for this payroll. + */ + public Builder amount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = Optional.ofNullable(amount); + return this; + } + + /** + * The amount that was withheld for this payroll. + */ + public Builder amount(Optional amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + + /** + * How to interpret the amount. + */ + public Builder amountType(PayrollUnprocessedEmployeeCompensationsTypeAmountType amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = Optional.ofNullable(amountType); + return this; + } + + /** + * How to interpret the amount. + */ + public Builder amountType(Optional amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = amountType; + return this; + } + + public PayrollUnprocessedEmployeeCompensationsTypeFederal build() { + + return new PayrollUnprocessedEmployeeCompensationsTypeFederal( + overrideType, amount, amountType); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeOverrideType.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeOverrideType.java new file mode 100644 index 000000000..071a56106 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeOverrideType.java @@ -0,0 +1,39 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollUnprocessedEmployeeCompensationsTypeOverrideType + * + *

    Override mode. Only `one_time` is currently exposed. + */ +public enum PayrollUnprocessedEmployeeCompensationsTypeOverrideType { + ONE_TIME("one_time"); + + @JsonValue + private final String value; + + PayrollUnprocessedEmployeeCompensationsTypeOverrideType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollUnprocessedEmployeeCompensationsTypeOverrideType o: PayrollUnprocessedEmployeeCompensationsTypeOverrideType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeState.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeState.java new file mode 100644 index 000000000..85af26e6e --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUnprocessedEmployeeCompensationsTypeState.java @@ -0,0 +1,314 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class PayrollUnprocessedEmployeeCompensationsTypeState { + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("employee_state_field_uuid") + private Optional employeeStateFieldUuid; + + /** + * Override mode. Only `one_time` is currently exposed. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("override_type") + private Optional overrideType; + + /** + * The amount that was withheld for this payroll. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("amount") + private Optional amount; + + /** + * How to interpret the amount. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("amount_type") + private Optional amountType; + + @JsonCreator + public PayrollUnprocessedEmployeeCompensationsTypeState( + @JsonProperty("employee_state_field_uuid") Optional employeeStateFieldUuid, + @JsonProperty("override_type") Optional overrideType, + @JsonProperty("amount") Optional amount, + @JsonProperty("amount_type") Optional amountType) { + Utils.checkNotNull(employeeStateFieldUuid, "employeeStateFieldUuid"); + Utils.checkNotNull(overrideType, "overrideType"); + Utils.checkNotNull(amount, "amount"); + Utils.checkNotNull(amountType, "amountType"); + this.employeeStateFieldUuid = employeeStateFieldUuid; + this.overrideType = overrideType; + this.amount = amount; + this.amountType = amountType; + } + + public PayrollUnprocessedEmployeeCompensationsTypeState() { + this(Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty()); + } + + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + @JsonIgnore + public Optional employeeStateFieldUuid() { + return employeeStateFieldUuid; + } + + /** + * Override mode. Only `one_time` is currently exposed. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional overrideType() { + return (Optional) overrideType; + } + + /** + * The amount that was withheld for this payroll. + */ + @JsonIgnore + public Optional amount() { + return amount; + } + + /** + * How to interpret the amount. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional amountType() { + return (Optional) amountType; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + public PayrollUnprocessedEmployeeCompensationsTypeState withEmployeeStateFieldUuid(String employeeStateFieldUuid) { + Utils.checkNotNull(employeeStateFieldUuid, "employeeStateFieldUuid"); + this.employeeStateFieldUuid = Optional.ofNullable(employeeStateFieldUuid); + return this; + } + + + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + public PayrollUnprocessedEmployeeCompensationsTypeState withEmployeeStateFieldUuid(Optional employeeStateFieldUuid) { + Utils.checkNotNull(employeeStateFieldUuid, "employeeStateFieldUuid"); + this.employeeStateFieldUuid = employeeStateFieldUuid; + return this; + } + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public PayrollUnprocessedEmployeeCompensationsTypeState withOverrideType(PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsOverrideType overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = Optional.ofNullable(overrideType); + return this; + } + + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public PayrollUnprocessedEmployeeCompensationsTypeState withOverrideType(Optional overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = overrideType; + return this; + } + + /** + * The amount that was withheld for this payroll. + */ + public PayrollUnprocessedEmployeeCompensationsTypeState withAmount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = Optional.ofNullable(amount); + return this; + } + + + /** + * The amount that was withheld for this payroll. + */ + public PayrollUnprocessedEmployeeCompensationsTypeState withAmount(Optional amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + /** + * How to interpret the amount. + */ + public PayrollUnprocessedEmployeeCompensationsTypeState withAmountType(PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsAmountType amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = Optional.ofNullable(amountType); + return this; + } + + + /** + * How to interpret the amount. + */ + public PayrollUnprocessedEmployeeCompensationsTypeState withAmountType(Optional amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = amountType; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PayrollUnprocessedEmployeeCompensationsTypeState other = (PayrollUnprocessedEmployeeCompensationsTypeState) o; + return + Utils.enhancedDeepEquals(this.employeeStateFieldUuid, other.employeeStateFieldUuid) && + Utils.enhancedDeepEquals(this.overrideType, other.overrideType) && + Utils.enhancedDeepEquals(this.amount, other.amount) && + Utils.enhancedDeepEquals(this.amountType, other.amountType); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + employeeStateFieldUuid, overrideType, amount, + amountType); + } + + @Override + public String toString() { + return Utils.toString(PayrollUnprocessedEmployeeCompensationsTypeState.class, + "employeeStateFieldUuid", employeeStateFieldUuid, + "overrideType", overrideType, + "amount", amount, + "amountType", amountType); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional employeeStateFieldUuid = Optional.empty(); + + private Optional overrideType = Optional.empty(); + + private Optional amount = Optional.empty(); + + private Optional amountType = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + public Builder employeeStateFieldUuid(String employeeStateFieldUuid) { + Utils.checkNotNull(employeeStateFieldUuid, "employeeStateFieldUuid"); + this.employeeStateFieldUuid = Optional.ofNullable(employeeStateFieldUuid); + return this; + } + + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + public Builder employeeStateFieldUuid(Optional employeeStateFieldUuid) { + Utils.checkNotNull(employeeStateFieldUuid, "employeeStateFieldUuid"); + this.employeeStateFieldUuid = employeeStateFieldUuid; + return this; + } + + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public Builder overrideType(PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsOverrideType overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = Optional.ofNullable(overrideType); + return this; + } + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public Builder overrideType(Optional overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = overrideType; + return this; + } + + + /** + * The amount that was withheld for this payroll. + */ + public Builder amount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = Optional.ofNullable(amount); + return this; + } + + /** + * The amount that was withheld for this payroll. + */ + public Builder amount(Optional amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + + /** + * How to interpret the amount. + */ + public Builder amountType(PayrollUnprocessedEmployeeCompensationsTypeCustomWithholdingsAmountType amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = Optional.ofNullable(amountType); + return this; + } + + /** + * How to interpret the amount. + */ + public Builder amountType(Optional amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = amountType; + return this; + } + + public PayrollUnprocessedEmployeeCompensationsTypeState build() { + + return new PayrollUnprocessedEmployeeCompensationsTypeState( + employeeStateFieldUuid, overrideType, amount, + amountType); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUpdateCustomWithholdings.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUpdateCustomWithholdings.java new file mode 100644 index 000000000..858bda908 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUpdateCustomWithholdings.java @@ -0,0 +1,200 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.List; +import java.util.Optional; + +/** + * PayrollUpdateCustomWithholdings + * + *

    Optional per-payroll one-time custom withholdings for federal and/or state income tax. + * When provided, the supplied override takes precedence over any persistent withholding schedule for + * this run. + * This field is in limited release; if your application does not have access, requests including it + * are silently ignored. + */ +public class PayrollUpdateCustomWithholdings { + /** + * Federal one-time custom withholding override. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("federal") + private Optional federal; + + /** + * State one-time custom withholding overrides, one entry per state field. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("state") + private Optional> state; + + @JsonCreator + public PayrollUpdateCustomWithholdings( + @JsonProperty("federal") Optional federal, + @JsonProperty("state") Optional> state) { + Utils.checkNotNull(federal, "federal"); + Utils.checkNotNull(state, "state"); + this.federal = federal; + this.state = state; + } + + public PayrollUpdateCustomWithholdings() { + this(Optional.empty(), Optional.empty()); + } + + /** + * Federal one-time custom withholding override. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional federal() { + return (Optional) federal; + } + + /** + * State one-time custom withholding overrides, one entry per state field. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> state() { + return (Optional>) state; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Federal one-time custom withholding override. + */ + public PayrollUpdateCustomWithholdings withFederal(PayrollUpdateFederal federal) { + Utils.checkNotNull(federal, "federal"); + this.federal = Optional.ofNullable(federal); + return this; + } + + + /** + * Federal one-time custom withholding override. + */ + public PayrollUpdateCustomWithholdings withFederal(Optional federal) { + Utils.checkNotNull(federal, "federal"); + this.federal = federal; + return this; + } + + /** + * State one-time custom withholding overrides, one entry per state field. + */ + public PayrollUpdateCustomWithholdings withState(List state) { + Utils.checkNotNull(state, "state"); + this.state = Optional.ofNullable(state); + return this; + } + + + /** + * State one-time custom withholding overrides, one entry per state field. + */ + public PayrollUpdateCustomWithholdings withState(Optional> state) { + Utils.checkNotNull(state, "state"); + this.state = state; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PayrollUpdateCustomWithholdings other = (PayrollUpdateCustomWithholdings) o; + return + Utils.enhancedDeepEquals(this.federal, other.federal) && + Utils.enhancedDeepEquals(this.state, other.state); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + federal, state); + } + + @Override + public String toString() { + return Utils.toString(PayrollUpdateCustomWithholdings.class, + "federal", federal, + "state", state); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional federal = Optional.empty(); + + private Optional> state = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * Federal one-time custom withholding override. + */ + public Builder federal(PayrollUpdateFederal federal) { + Utils.checkNotNull(federal, "federal"); + this.federal = Optional.ofNullable(federal); + return this; + } + + /** + * Federal one-time custom withholding override. + */ + public Builder federal(Optional federal) { + Utils.checkNotNull(federal, "federal"); + this.federal = federal; + return this; + } + + + /** + * State one-time custom withholding overrides, one entry per state field. + */ + public Builder state(List state) { + Utils.checkNotNull(state, "state"); + this.state = Optional.ofNullable(state); + return this; + } + + /** + * State one-time custom withholding overrides, one entry per state field. + */ + public Builder state(Optional> state) { + Utils.checkNotNull(state, "state"); + this.state = state; + return this; + } + + public PayrollUpdateCustomWithholdings build() { + + return new PayrollUpdateCustomWithholdings( + federal, state); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUpdateEmployeeCompensations.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUpdateEmployeeCompensations.java index 6653e9e10..638a62e5e 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUpdateEmployeeCompensations.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUpdateEmployeeCompensations.java @@ -70,6 +70,17 @@ public class PayrollUpdateEmployeeCompensations { @JsonProperty("deductions") private Optional> deductions; + /** + * Optional per-payroll one-time custom withholdings for federal and/or state income tax. + * When provided, the supplied override takes precedence over any persistent withholding schedule for + * this run. + * This field is in limited release; if your application does not have access, requests including it + * are silently ignored. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("custom_withholdings") + private Optional customWithholdings; + /** * An array of all paid time off the employee is eligible for this pay period. Each paid time off * object can be the name or the specific policy_uuid. @@ -95,6 +106,7 @@ public PayrollUpdateEmployeeCompensations( @JsonProperty("fixed_compensations") Optional> fixedCompensations, @JsonProperty("hourly_compensations") Optional> hourlyCompensations, @JsonProperty("deductions") Optional> deductions, + @JsonProperty("custom_withholdings") Optional customWithholdings, @JsonProperty("paid_time_off") Optional> paidTimeOff, @JsonProperty("reimbursements") Optional> reimbursements) { Utils.checkNotNull(employeeUuid, "employeeUuid"); @@ -105,6 +117,7 @@ public PayrollUpdateEmployeeCompensations( Utils.checkNotNull(fixedCompensations, "fixedCompensations"); Utils.checkNotNull(hourlyCompensations, "hourlyCompensations"); Utils.checkNotNull(deductions, "deductions"); + Utils.checkNotNull(customWithholdings, "customWithholdings"); Utils.checkNotNull(paidTimeOff, "paidTimeOff"); Utils.checkNotNull(reimbursements, "reimbursements"); this.employeeUuid = employeeUuid; @@ -115,6 +128,7 @@ public PayrollUpdateEmployeeCompensations( this.fixedCompensations = fixedCompensations; this.hourlyCompensations = hourlyCompensations; this.deductions = deductions; + this.customWithholdings = customWithholdings; this.paidTimeOff = paidTimeOff; this.reimbursements = reimbursements; } @@ -123,7 +137,7 @@ public PayrollUpdateEmployeeCompensations() { this(Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), - Optional.empty()); + Optional.empty(), Optional.empty()); } /** @@ -187,6 +201,19 @@ public Optional> deductions() { return (Optional>) deductions; } + /** + * Optional per-payroll one-time custom withholdings for federal and/or state income tax. + * When provided, the supplied override takes precedence over any persistent withholding schedule for + * this run. + * This field is in limited release; if your application does not have access, requests including it + * are silently ignored. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional customWithholdings() { + return (Optional) customWithholdings; + } + /** * An array of all paid time off the employee is eligible for this pay period. Each paid time off * object can be the name or the specific policy_uuid. @@ -349,6 +376,33 @@ public PayrollUpdateEmployeeCompensations withDeductions(Optional customWithholdings) { + Utils.checkNotNull(customWithholdings, "customWithholdings"); + this.customWithholdings = customWithholdings; + return this; + } + /** * An array of all paid time off the employee is eligible for this pay period. Each paid time off * object can be the name or the specific policy_uuid. @@ -407,6 +461,7 @@ public boolean equals(java.lang.Object o) { Utils.enhancedDeepEquals(this.fixedCompensations, other.fixedCompensations) && Utils.enhancedDeepEquals(this.hourlyCompensations, other.hourlyCompensations) && Utils.enhancedDeepEquals(this.deductions, other.deductions) && + Utils.enhancedDeepEquals(this.customWithholdings, other.customWithholdings) && Utils.enhancedDeepEquals(this.paidTimeOff, other.paidTimeOff) && Utils.enhancedDeepEquals(this.reimbursements, other.reimbursements); } @@ -416,8 +471,8 @@ public int hashCode() { return Utils.enhancedHash( employeeUuid, version, excluded, paymentMethod, memo, fixedCompensations, - hourlyCompensations, deductions, paidTimeOff, - reimbursements); + hourlyCompensations, deductions, customWithholdings, + paidTimeOff, reimbursements); } @Override @@ -431,6 +486,7 @@ public String toString() { "fixedCompensations", fixedCompensations, "hourlyCompensations", hourlyCompensations, "deductions", deductions, + "customWithholdings", customWithholdings, "paidTimeOff", paidTimeOff, "reimbursements", reimbursements); } @@ -454,6 +510,8 @@ public final static class Builder { private Optional> deductions = Optional.empty(); + private Optional customWithholdings = Optional.empty(); + private Optional> paidTimeOff = Optional.empty(); private Optional> reimbursements = Optional.empty(); @@ -601,6 +659,33 @@ public Builder deductions(Optional> dedu } + /** + * Optional per-payroll one-time custom withholdings for federal and/or state income tax. + * When provided, the supplied override takes precedence over any persistent withholding schedule for + * this run. + * This field is in limited release; if your application does not have access, requests including it + * are silently ignored. + */ + public Builder customWithholdings(PayrollUpdateCustomWithholdings customWithholdings) { + Utils.checkNotNull(customWithholdings, "customWithholdings"); + this.customWithholdings = Optional.ofNullable(customWithholdings); + return this; + } + + /** + * Optional per-payroll one-time custom withholdings for federal and/or state income tax. + * When provided, the supplied override takes precedence over any persistent withholding schedule for + * this run. + * This field is in limited release; if your application does not have access, requests including it + * are silently ignored. + */ + public Builder customWithholdings(Optional customWithholdings) { + Utils.checkNotNull(customWithholdings, "customWithholdings"); + this.customWithholdings = customWithholdings; + return this; + } + + /** * An array of all paid time off the employee is eligible for this pay period. Each paid time off * object can be the name or the specific policy_uuid. @@ -645,8 +730,8 @@ public PayrollUpdateEmployeeCompensations build() { return new PayrollUpdateEmployeeCompensations( employeeUuid, version, excluded, paymentMethod, memo, fixedCompensations, - hourlyCompensations, deductions, paidTimeOff, - reimbursements); + hourlyCompensations, deductions, customWithholdings, + paidTimeOff, reimbursements); } } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUpdateEmployeeCompensationsAmountType.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUpdateEmployeeCompensationsAmountType.java new file mode 100644 index 000000000..6ac4ffe94 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUpdateEmployeeCompensationsAmountType.java @@ -0,0 +1,40 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollUpdateEmployeeCompensationsAmountType + * + *

    How to interpret the amount. + */ +public enum PayrollUpdateEmployeeCompensationsAmountType { + FIXED("fixed"), + PERCENT("percent"); + + @JsonValue + private final String value; + + PayrollUpdateEmployeeCompensationsAmountType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollUpdateEmployeeCompensationsAmountType o: PayrollUpdateEmployeeCompensationsAmountType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUpdateEmployeeCompensationsCustomWithholdingsAmountType.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUpdateEmployeeCompensationsCustomWithholdingsAmountType.java new file mode 100644 index 000000000..0ce1b26c8 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUpdateEmployeeCompensationsCustomWithholdingsAmountType.java @@ -0,0 +1,40 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollUpdateEmployeeCompensationsCustomWithholdingsAmountType + * + *

    How to interpret the amount. + */ +public enum PayrollUpdateEmployeeCompensationsCustomWithholdingsAmountType { + FIXED("fixed"), + PERCENT("percent"); + + @JsonValue + private final String value; + + PayrollUpdateEmployeeCompensationsCustomWithholdingsAmountType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollUpdateEmployeeCompensationsCustomWithholdingsAmountType o: PayrollUpdateEmployeeCompensationsCustomWithholdingsAmountType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUpdateEmployeeCompensationsOverrideType.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUpdateEmployeeCompensationsOverrideType.java new file mode 100644 index 000000000..33e48ae21 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUpdateEmployeeCompensationsOverrideType.java @@ -0,0 +1,39 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollUpdateEmployeeCompensationsOverrideType + * + *

    Override mode. Only `one_time` is currently supported. + */ +public enum PayrollUpdateEmployeeCompensationsOverrideType { + ONE_TIME("one_time"); + + @JsonValue + private final String value; + + PayrollUpdateEmployeeCompensationsOverrideType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollUpdateEmployeeCompensationsOverrideType o: PayrollUpdateEmployeeCompensationsOverrideType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUpdateFederal.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUpdateFederal.java new file mode 100644 index 000000000..9740182d7 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUpdateFederal.java @@ -0,0 +1,255 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + +/** + * PayrollUpdateFederal + * + *

    Federal one-time custom withholding override. + */ +public class PayrollUpdateFederal { + /** + * Override mode. Only `one_time` is currently supported. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("override_type") + private Optional overrideType; + + /** + * The amount to be withheld for this payroll. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("amount") + private Optional amount; + + /** + * How to interpret the amount. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("amount_type") + private Optional amountType; + + @JsonCreator + public PayrollUpdateFederal( + @JsonProperty("override_type") Optional overrideType, + @JsonProperty("amount") Optional amount, + @JsonProperty("amount_type") Optional amountType) { + Utils.checkNotNull(overrideType, "overrideType"); + Utils.checkNotNull(amount, "amount"); + Utils.checkNotNull(amountType, "amountType"); + this.overrideType = overrideType; + this.amount = amount; + this.amountType = amountType; + } + + public PayrollUpdateFederal() { + this(Optional.empty(), Optional.empty(), Optional.empty()); + } + + /** + * Override mode. Only `one_time` is currently supported. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional overrideType() { + return (Optional) overrideType; + } + + /** + * The amount to be withheld for this payroll. + */ + @JsonIgnore + public Optional amount() { + return amount; + } + + /** + * How to interpret the amount. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional amountType() { + return (Optional) amountType; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Override mode. Only `one_time` is currently supported. + */ + public PayrollUpdateFederal withOverrideType(PayrollUpdateOverrideType overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = Optional.ofNullable(overrideType); + return this; + } + + + /** + * Override mode. Only `one_time` is currently supported. + */ + public PayrollUpdateFederal withOverrideType(Optional overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = overrideType; + return this; + } + + /** + * The amount to be withheld for this payroll. + */ + public PayrollUpdateFederal withAmount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = Optional.ofNullable(amount); + return this; + } + + + /** + * The amount to be withheld for this payroll. + */ + public PayrollUpdateFederal withAmount(Optional amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + /** + * How to interpret the amount. + */ + public PayrollUpdateFederal withAmountType(PayrollUpdateEmployeeCompensationsAmountType amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = Optional.ofNullable(amountType); + return this; + } + + + /** + * How to interpret the amount. + */ + public PayrollUpdateFederal withAmountType(Optional amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = amountType; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PayrollUpdateFederal other = (PayrollUpdateFederal) o; + return + Utils.enhancedDeepEquals(this.overrideType, other.overrideType) && + Utils.enhancedDeepEquals(this.amount, other.amount) && + Utils.enhancedDeepEquals(this.amountType, other.amountType); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + overrideType, amount, amountType); + } + + @Override + public String toString() { + return Utils.toString(PayrollUpdateFederal.class, + "overrideType", overrideType, + "amount", amount, + "amountType", amountType); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional overrideType = Optional.empty(); + + private Optional amount = Optional.empty(); + + private Optional amountType = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * Override mode. Only `one_time` is currently supported. + */ + public Builder overrideType(PayrollUpdateOverrideType overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = Optional.ofNullable(overrideType); + return this; + } + + /** + * Override mode. Only `one_time` is currently supported. + */ + public Builder overrideType(Optional overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = overrideType; + return this; + } + + + /** + * The amount to be withheld for this payroll. + */ + public Builder amount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = Optional.ofNullable(amount); + return this; + } + + /** + * The amount to be withheld for this payroll. + */ + public Builder amount(Optional amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + + /** + * How to interpret the amount. + */ + public Builder amountType(PayrollUpdateEmployeeCompensationsAmountType amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = Optional.ofNullable(amountType); + return this; + } + + /** + * How to interpret the amount. + */ + public Builder amountType(Optional amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = amountType; + return this; + } + + public PayrollUpdateFederal build() { + + return new PayrollUpdateFederal( + overrideType, amount, amountType); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUpdateOverrideType.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUpdateOverrideType.java new file mode 100644 index 000000000..f86772a5e --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUpdateOverrideType.java @@ -0,0 +1,39 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PayrollUpdateOverrideType + * + *

    Override mode. Only `one_time` is currently supported. + */ +public enum PayrollUpdateOverrideType { + ONE_TIME("one_time"); + + @JsonValue + private final String value; + + PayrollUpdateOverrideType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PayrollUpdateOverrideType o: PayrollUpdateOverrideType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUpdateState.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUpdateState.java new file mode 100644 index 000000000..b1311363c --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PayrollUpdateState.java @@ -0,0 +1,314 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class PayrollUpdateState { + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("employee_state_field_uuid") + private Optional employeeStateFieldUuid; + + /** + * Override mode. Only `one_time` is currently supported. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("override_type") + private Optional overrideType; + + /** + * The amount to be withheld for this payroll. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("amount") + private Optional amount; + + /** + * How to interpret the amount. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("amount_type") + private Optional amountType; + + @JsonCreator + public PayrollUpdateState( + @JsonProperty("employee_state_field_uuid") Optional employeeStateFieldUuid, + @JsonProperty("override_type") Optional overrideType, + @JsonProperty("amount") Optional amount, + @JsonProperty("amount_type") Optional amountType) { + Utils.checkNotNull(employeeStateFieldUuid, "employeeStateFieldUuid"); + Utils.checkNotNull(overrideType, "overrideType"); + Utils.checkNotNull(amount, "amount"); + Utils.checkNotNull(amountType, "amountType"); + this.employeeStateFieldUuid = employeeStateFieldUuid; + this.overrideType = overrideType; + this.amount = amount; + this.amountType = amountType; + } + + public PayrollUpdateState() { + this(Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty()); + } + + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + @JsonIgnore + public Optional employeeStateFieldUuid() { + return employeeStateFieldUuid; + } + + /** + * Override mode. Only `one_time` is currently supported. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional overrideType() { + return (Optional) overrideType; + } + + /** + * The amount to be withheld for this payroll. + */ + @JsonIgnore + public Optional amount() { + return amount; + } + + /** + * How to interpret the amount. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional amountType() { + return (Optional) amountType; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + public PayrollUpdateState withEmployeeStateFieldUuid(String employeeStateFieldUuid) { + Utils.checkNotNull(employeeStateFieldUuid, "employeeStateFieldUuid"); + this.employeeStateFieldUuid = Optional.ofNullable(employeeStateFieldUuid); + return this; + } + + + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + public PayrollUpdateState withEmployeeStateFieldUuid(Optional employeeStateFieldUuid) { + Utils.checkNotNull(employeeStateFieldUuid, "employeeStateFieldUuid"); + this.employeeStateFieldUuid = employeeStateFieldUuid; + return this; + } + + /** + * Override mode. Only `one_time` is currently supported. + */ + public PayrollUpdateState withOverrideType(PayrollUpdateEmployeeCompensationsOverrideType overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = Optional.ofNullable(overrideType); + return this; + } + + + /** + * Override mode. Only `one_time` is currently supported. + */ + public PayrollUpdateState withOverrideType(Optional overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = overrideType; + return this; + } + + /** + * The amount to be withheld for this payroll. + */ + public PayrollUpdateState withAmount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = Optional.ofNullable(amount); + return this; + } + + + /** + * The amount to be withheld for this payroll. + */ + public PayrollUpdateState withAmount(Optional amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + /** + * How to interpret the amount. + */ + public PayrollUpdateState withAmountType(PayrollUpdateEmployeeCompensationsCustomWithholdingsAmountType amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = Optional.ofNullable(amountType); + return this; + } + + + /** + * How to interpret the amount. + */ + public PayrollUpdateState withAmountType(Optional amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = amountType; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PayrollUpdateState other = (PayrollUpdateState) o; + return + Utils.enhancedDeepEquals(this.employeeStateFieldUuid, other.employeeStateFieldUuid) && + Utils.enhancedDeepEquals(this.overrideType, other.overrideType) && + Utils.enhancedDeepEquals(this.amount, other.amount) && + Utils.enhancedDeepEquals(this.amountType, other.amountType); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + employeeStateFieldUuid, overrideType, amount, + amountType); + } + + @Override + public String toString() { + return Utils.toString(PayrollUpdateState.class, + "employeeStateFieldUuid", employeeStateFieldUuid, + "overrideType", overrideType, + "amount", amount, + "amountType", amountType); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional employeeStateFieldUuid = Optional.empty(); + + private Optional overrideType = Optional.empty(); + + private Optional amount = Optional.empty(); + + private Optional amountType = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + public Builder employeeStateFieldUuid(String employeeStateFieldUuid) { + Utils.checkNotNull(employeeStateFieldUuid, "employeeStateFieldUuid"); + this.employeeStateFieldUuid = Optional.ofNullable(employeeStateFieldUuid); + return this; + } + + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + public Builder employeeStateFieldUuid(Optional employeeStateFieldUuid) { + Utils.checkNotNull(employeeStateFieldUuid, "employeeStateFieldUuid"); + this.employeeStateFieldUuid = employeeStateFieldUuid; + return this; + } + + + /** + * Override mode. Only `one_time` is currently supported. + */ + public Builder overrideType(PayrollUpdateEmployeeCompensationsOverrideType overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = Optional.ofNullable(overrideType); + return this; + } + + /** + * Override mode. Only `one_time` is currently supported. + */ + public Builder overrideType(Optional overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = overrideType; + return this; + } + + + /** + * The amount to be withheld for this payroll. + */ + public Builder amount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = Optional.ofNullable(amount); + return this; + } + + /** + * The amount to be withheld for this payroll. + */ + public Builder amount(Optional amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + + /** + * How to interpret the amount. + */ + public Builder amountType(PayrollUpdateEmployeeCompensationsCustomWithholdingsAmountType amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = Optional.ofNullable(amountType); + return this; + } + + /** + * How to interpret the amount. + */ + public Builder amountType(Optional amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = amountType; + return this; + } + + public PayrollUpdateState build() { + + return new PayrollUpdateState( + employeeStateFieldUuid, overrideType, amount, + amountType); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PeopleBatchResults.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PeopleBatchResults.java index b3ea601a1..8d702000d 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PeopleBatchResults.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PeopleBatchResults.java @@ -82,14 +82,14 @@ public class PeopleBatchResults { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("results") - private Optional> results; + private Optional> results; /** * Items excluded from processing due to validation errors. */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("exclusions") - private JsonNullable> exclusions; + private JsonNullable> exclusions; @JsonCreator public PeopleBatchResults( @@ -101,8 +101,8 @@ public PeopleBatchResults( @JsonProperty("submitted_items") JsonNullable submittedItems, @JsonProperty("processed_items") Optional processedItems, @JsonProperty("excluded_items") Optional excludedItems, - @JsonProperty("results") Optional> results, - @JsonProperty("exclusions") JsonNullable> exclusions) { + @JsonProperty("results") Optional> results, + @JsonProperty("exclusions") JsonNullable> exclusions) { Utils.checkNotNull(uuid, "uuid"); Utils.checkNotNull(idempotencyKey, "idempotencyKey"); Utils.checkNotNull(status, "status"); @@ -204,8 +204,8 @@ public Optional excludedItems() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional> results() { - return (Optional>) results; + public Optional> results() { + return (Optional>) results; } /** @@ -213,8 +213,8 @@ public Optional> results() { */ @SuppressWarnings("unchecked") @JsonIgnore - public JsonNullable> exclusions() { - return (JsonNullable>) exclusions; + public JsonNullable> exclusions() { + return (JsonNullable>) exclusions; } public static Builder builder() { @@ -345,7 +345,7 @@ public PeopleBatchResults withExcludedItems(Optional excludedItems) { /** * The results for each batch item. */ - public PeopleBatchResults withResults(List results) { + public PeopleBatchResults withResults(List results) { Utils.checkNotNull(results, "results"); this.results = Optional.ofNullable(results); return this; @@ -355,7 +355,7 @@ public PeopleBatchResults withResults(List results) { /** * The results for each batch item. */ - public PeopleBatchResults withResults(Optional> results) { + public PeopleBatchResults withResults(Optional> results) { Utils.checkNotNull(results, "results"); this.results = results; return this; @@ -364,7 +364,7 @@ public PeopleBatchResults withResults(Optional> results) /** * Items excluded from processing due to validation errors. */ - public PeopleBatchResults withExclusions(List exclusions) { + public PeopleBatchResults withExclusions(List exclusions) { Utils.checkNotNull(exclusions, "exclusions"); this.exclusions = JsonNullable.of(exclusions); return this; @@ -373,7 +373,7 @@ public PeopleBatchResults withExclusions(List exclusions) { /** * Items excluded from processing due to validation errors. */ - public PeopleBatchResults withExclusions(JsonNullable> exclusions) { + public PeopleBatchResults withExclusions(JsonNullable> exclusions) { Utils.checkNotNull(exclusions, "exclusions"); this.exclusions = exclusions; return this; @@ -444,9 +444,9 @@ public final static class Builder { private Optional excludedItems = Optional.empty(); - private Optional> results = Optional.empty(); + private Optional> results = Optional.empty(); - private JsonNullable> exclusions = JsonNullable.undefined(); + private JsonNullable> exclusions = JsonNullable.undefined(); private Builder() { // force use of static builder() method @@ -581,7 +581,7 @@ public Builder excludedItems(Optional excludedItems) { /** * The results for each batch item. */ - public Builder results(List results) { + public Builder results(List results) { Utils.checkNotNull(results, "results"); this.results = Optional.ofNullable(results); return this; @@ -590,7 +590,7 @@ public Builder results(List results) { /** * The results for each batch item. */ - public Builder results(Optional> results) { + public Builder results(Optional> results) { Utils.checkNotNull(results, "results"); this.results = results; return this; @@ -600,7 +600,7 @@ public Builder results(Optional> results) { /** * Items excluded from processing due to validation errors. */ - public Builder exclusions(List exclusions) { + public Builder exclusions(List exclusions) { Utils.checkNotNull(exclusions, "exclusions"); this.exclusions = JsonNullable.of(exclusions); return this; @@ -609,7 +609,7 @@ public Builder exclusions(List exclusions) { /** * Items excluded from processing due to validation errors. */ - public Builder exclusions(JsonNullable> exclusions) { + public Builder exclusions(JsonNullable> exclusions) { Utils.checkNotNull(exclusions, "exclusions"); this.exclusions = exclusions; return this; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PeopleBatchResultsExclusions.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PeopleBatchResultsExclusions.java new file mode 100644 index 000000000..51b59fd63 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PeopleBatchResultsExclusions.java @@ -0,0 +1,312 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Long; +import java.lang.Override; +import java.lang.String; +import java.util.Optional; + + +public class PeopleBatchResultsExclusions { + /** + * The external ID of the excluded item(s). + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("external_id") + private Optional externalId; + + /** + * The exclusion category. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("category") + private Optional category; + + /** + * Human-readable explanation for exclusion. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("message") + private Optional message; + + /** + * Number of items affected by this exclusion. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("item_count") + private Optional itemCount; + + @JsonCreator + public PeopleBatchResultsExclusions( + @JsonProperty("external_id") Optional externalId, + @JsonProperty("category") Optional category, + @JsonProperty("message") Optional message, + @JsonProperty("item_count") Optional itemCount) { + Utils.checkNotNull(externalId, "externalId"); + Utils.checkNotNull(category, "category"); + Utils.checkNotNull(message, "message"); + Utils.checkNotNull(itemCount, "itemCount"); + this.externalId = externalId; + this.category = category; + this.message = message; + this.itemCount = itemCount; + } + + public PeopleBatchResultsExclusions() { + this(Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty()); + } + + /** + * The external ID of the excluded item(s). + */ + @JsonIgnore + public Optional externalId() { + return externalId; + } + + /** + * The exclusion category. + */ + @JsonIgnore + public Optional category() { + return category; + } + + /** + * Human-readable explanation for exclusion. + */ + @JsonIgnore + public Optional message() { + return message; + } + + /** + * Number of items affected by this exclusion. + */ + @JsonIgnore + public Optional itemCount() { + return itemCount; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * The external ID of the excluded item(s). + */ + public PeopleBatchResultsExclusions withExternalId(String externalId) { + Utils.checkNotNull(externalId, "externalId"); + this.externalId = Optional.ofNullable(externalId); + return this; + } + + + /** + * The external ID of the excluded item(s). + */ + public PeopleBatchResultsExclusions withExternalId(Optional externalId) { + Utils.checkNotNull(externalId, "externalId"); + this.externalId = externalId; + return this; + } + + /** + * The exclusion category. + */ + public PeopleBatchResultsExclusions withCategory(String category) { + Utils.checkNotNull(category, "category"); + this.category = Optional.ofNullable(category); + return this; + } + + + /** + * The exclusion category. + */ + public PeopleBatchResultsExclusions withCategory(Optional category) { + Utils.checkNotNull(category, "category"); + this.category = category; + return this; + } + + /** + * Human-readable explanation for exclusion. + */ + public PeopleBatchResultsExclusions withMessage(String message) { + Utils.checkNotNull(message, "message"); + this.message = Optional.ofNullable(message); + return this; + } + + + /** + * Human-readable explanation for exclusion. + */ + public PeopleBatchResultsExclusions withMessage(Optional message) { + Utils.checkNotNull(message, "message"); + this.message = message; + return this; + } + + /** + * Number of items affected by this exclusion. + */ + public PeopleBatchResultsExclusions withItemCount(long itemCount) { + Utils.checkNotNull(itemCount, "itemCount"); + this.itemCount = Optional.ofNullable(itemCount); + return this; + } + + + /** + * Number of items affected by this exclusion. + */ + public PeopleBatchResultsExclusions withItemCount(Optional itemCount) { + Utils.checkNotNull(itemCount, "itemCount"); + this.itemCount = itemCount; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PeopleBatchResultsExclusions other = (PeopleBatchResultsExclusions) o; + return + Utils.enhancedDeepEquals(this.externalId, other.externalId) && + Utils.enhancedDeepEquals(this.category, other.category) && + Utils.enhancedDeepEquals(this.message, other.message) && + Utils.enhancedDeepEquals(this.itemCount, other.itemCount); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + externalId, category, message, + itemCount); + } + + @Override + public String toString() { + return Utils.toString(PeopleBatchResultsExclusions.class, + "externalId", externalId, + "category", category, + "message", message, + "itemCount", itemCount); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional externalId = Optional.empty(); + + private Optional category = Optional.empty(); + + private Optional message = Optional.empty(); + + private Optional itemCount = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * The external ID of the excluded item(s). + */ + public Builder externalId(String externalId) { + Utils.checkNotNull(externalId, "externalId"); + this.externalId = Optional.ofNullable(externalId); + return this; + } + + /** + * The external ID of the excluded item(s). + */ + public Builder externalId(Optional externalId) { + Utils.checkNotNull(externalId, "externalId"); + this.externalId = externalId; + return this; + } + + + /** + * The exclusion category. + */ + public Builder category(String category) { + Utils.checkNotNull(category, "category"); + this.category = Optional.ofNullable(category); + return this; + } + + /** + * The exclusion category. + */ + public Builder category(Optional category) { + Utils.checkNotNull(category, "category"); + this.category = category; + return this; + } + + + /** + * Human-readable explanation for exclusion. + */ + public Builder message(String message) { + Utils.checkNotNull(message, "message"); + this.message = Optional.ofNullable(message); + return this; + } + + /** + * Human-readable explanation for exclusion. + */ + public Builder message(Optional message) { + Utils.checkNotNull(message, "message"); + this.message = message; + return this; + } + + + /** + * Number of items affected by this exclusion. + */ + public Builder itemCount(long itemCount) { + Utils.checkNotNull(itemCount, "itemCount"); + this.itemCount = Optional.ofNullable(itemCount); + return this; + } + + /** + * Number of items affected by this exclusion. + */ + public Builder itemCount(Optional itemCount) { + Utils.checkNotNull(itemCount, "itemCount"); + this.itemCount = itemCount; + return this; + } + + public PeopleBatchResultsExclusions build() { + + return new PeopleBatchResultsExclusions( + externalId, category, message, + itemCount); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PeopleBatchResultsResults.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PeopleBatchResultsResults.java new file mode 100644 index 000000000..5937e6e3f --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/PeopleBatchResultsResults.java @@ -0,0 +1,500 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Long; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.List; +import java.util.Optional; +import org.openapitools.jackson.nullable.JsonNullable; + + +public class PeopleBatchResultsResults { + /** + * The external ID provided in the batch request. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("external_id") + private Optional externalId; + + /** + * The type of person created. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("role") + private Optional role; + + /** + * The status of this batch item. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("status") + private Optional status; + + /** + * The index of this item in the original batch request. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("idx") + private Optional idx; + + /** + * The UUID of the created person. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("uuid") + private Optional uuid; + + /** + * The UUID of the created employee (if role is employee). + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("employee_uuid") + private Optional employeeUuid; + + /** + * Errors encountered while processing this batch item. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("errors") + private JsonNullable> errors; + + @JsonCreator + public PeopleBatchResultsResults( + @JsonProperty("external_id") Optional externalId, + @JsonProperty("role") Optional role, + @JsonProperty("status") Optional status, + @JsonProperty("idx") Optional idx, + @JsonProperty("uuid") Optional uuid, + @JsonProperty("employee_uuid") Optional employeeUuid, + @JsonProperty("errors") JsonNullable> errors) { + Utils.checkNotNull(externalId, "externalId"); + Utils.checkNotNull(role, "role"); + Utils.checkNotNull(status, "status"); + Utils.checkNotNull(idx, "idx"); + Utils.checkNotNull(uuid, "uuid"); + Utils.checkNotNull(employeeUuid, "employeeUuid"); + Utils.checkNotNull(errors, "errors"); + this.externalId = externalId; + this.role = role; + this.status = status; + this.idx = idx; + this.uuid = uuid; + this.employeeUuid = employeeUuid; + this.errors = errors; + } + + public PeopleBatchResultsResults() { + this(Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty(), Optional.empty(), Optional.empty(), + JsonNullable.undefined()); + } + + /** + * The external ID provided in the batch request. + */ + @JsonIgnore + public Optional externalId() { + return externalId; + } + + /** + * The type of person created. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional role() { + return (Optional) role; + } + + /** + * The status of this batch item. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional status() { + return (Optional) status; + } + + /** + * The index of this item in the original batch request. + */ + @JsonIgnore + public Optional idx() { + return idx; + } + + /** + * The UUID of the created person. + */ + @JsonIgnore + public Optional uuid() { + return uuid; + } + + /** + * The UUID of the created employee (if role is employee). + */ + @JsonIgnore + public Optional employeeUuid() { + return employeeUuid; + } + + /** + * Errors encountered while processing this batch item. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public JsonNullable> errors() { + return (JsonNullable>) errors; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * The external ID provided in the batch request. + */ + public PeopleBatchResultsResults withExternalId(String externalId) { + Utils.checkNotNull(externalId, "externalId"); + this.externalId = Optional.ofNullable(externalId); + return this; + } + + + /** + * The external ID provided in the batch request. + */ + public PeopleBatchResultsResults withExternalId(Optional externalId) { + Utils.checkNotNull(externalId, "externalId"); + this.externalId = externalId; + return this; + } + + /** + * The type of person created. + */ + public PeopleBatchResultsResults withRole(Role role) { + Utils.checkNotNull(role, "role"); + this.role = Optional.ofNullable(role); + return this; + } + + + /** + * The type of person created. + */ + public PeopleBatchResultsResults withRole(Optional role) { + Utils.checkNotNull(role, "role"); + this.role = role; + return this; + } + + /** + * The status of this batch item. + */ + public PeopleBatchResultsResults withStatus(PeopleBatchResultsResultsStatus status) { + Utils.checkNotNull(status, "status"); + this.status = Optional.ofNullable(status); + return this; + } + + + /** + * The status of this batch item. + */ + public PeopleBatchResultsResults withStatus(Optional status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + /** + * The index of this item in the original batch request. + */ + public PeopleBatchResultsResults withIdx(long idx) { + Utils.checkNotNull(idx, "idx"); + this.idx = Optional.ofNullable(idx); + return this; + } + + + /** + * The index of this item in the original batch request. + */ + public PeopleBatchResultsResults withIdx(Optional idx) { + Utils.checkNotNull(idx, "idx"); + this.idx = idx; + return this; + } + + /** + * The UUID of the created person. + */ + public PeopleBatchResultsResults withUuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = Optional.ofNullable(uuid); + return this; + } + + + /** + * The UUID of the created person. + */ + public PeopleBatchResultsResults withUuid(Optional uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + /** + * The UUID of the created employee (if role is employee). + */ + public PeopleBatchResultsResults withEmployeeUuid(String employeeUuid) { + Utils.checkNotNull(employeeUuid, "employeeUuid"); + this.employeeUuid = Optional.ofNullable(employeeUuid); + return this; + } + + + /** + * The UUID of the created employee (if role is employee). + */ + public PeopleBatchResultsResults withEmployeeUuid(Optional employeeUuid) { + Utils.checkNotNull(employeeUuid, "employeeUuid"); + this.employeeUuid = employeeUuid; + return this; + } + + /** + * Errors encountered while processing this batch item. + */ + public PeopleBatchResultsResults withErrors(List errors) { + Utils.checkNotNull(errors, "errors"); + this.errors = JsonNullable.of(errors); + return this; + } + + /** + * Errors encountered while processing this batch item. + */ + public PeopleBatchResultsResults withErrors(JsonNullable> errors) { + Utils.checkNotNull(errors, "errors"); + this.errors = errors; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PeopleBatchResultsResults other = (PeopleBatchResultsResults) o; + return + Utils.enhancedDeepEquals(this.externalId, other.externalId) && + Utils.enhancedDeepEquals(this.role, other.role) && + Utils.enhancedDeepEquals(this.status, other.status) && + Utils.enhancedDeepEquals(this.idx, other.idx) && + Utils.enhancedDeepEquals(this.uuid, other.uuid) && + Utils.enhancedDeepEquals(this.employeeUuid, other.employeeUuid) && + Utils.enhancedDeepEquals(this.errors, other.errors); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + externalId, role, status, + idx, uuid, employeeUuid, + errors); + } + + @Override + public String toString() { + return Utils.toString(PeopleBatchResultsResults.class, + "externalId", externalId, + "role", role, + "status", status, + "idx", idx, + "uuid", uuid, + "employeeUuid", employeeUuid, + "errors", errors); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional externalId = Optional.empty(); + + private Optional role = Optional.empty(); + + private Optional status = Optional.empty(); + + private Optional idx = Optional.empty(); + + private Optional uuid = Optional.empty(); + + private Optional employeeUuid = Optional.empty(); + + private JsonNullable> errors = JsonNullable.undefined(); + + private Builder() { + // force use of static builder() method + } + + + /** + * The external ID provided in the batch request. + */ + public Builder externalId(String externalId) { + Utils.checkNotNull(externalId, "externalId"); + this.externalId = Optional.ofNullable(externalId); + return this; + } + + /** + * The external ID provided in the batch request. + */ + public Builder externalId(Optional externalId) { + Utils.checkNotNull(externalId, "externalId"); + this.externalId = externalId; + return this; + } + + + /** + * The type of person created. + */ + public Builder role(Role role) { + Utils.checkNotNull(role, "role"); + this.role = Optional.ofNullable(role); + return this; + } + + /** + * The type of person created. + */ + public Builder role(Optional role) { + Utils.checkNotNull(role, "role"); + this.role = role; + return this; + } + + + /** + * The status of this batch item. + */ + public Builder status(PeopleBatchResultsResultsStatus status) { + Utils.checkNotNull(status, "status"); + this.status = Optional.ofNullable(status); + return this; + } + + /** + * The status of this batch item. + */ + public Builder status(Optional status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + + /** + * The index of this item in the original batch request. + */ + public Builder idx(long idx) { + Utils.checkNotNull(idx, "idx"); + this.idx = Optional.ofNullable(idx); + return this; + } + + /** + * The index of this item in the original batch request. + */ + public Builder idx(Optional idx) { + Utils.checkNotNull(idx, "idx"); + this.idx = idx; + return this; + } + + + /** + * The UUID of the created person. + */ + public Builder uuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = Optional.ofNullable(uuid); + return this; + } + + /** + * The UUID of the created person. + */ + public Builder uuid(Optional uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + + /** + * The UUID of the created employee (if role is employee). + */ + public Builder employeeUuid(String employeeUuid) { + Utils.checkNotNull(employeeUuid, "employeeUuid"); + this.employeeUuid = Optional.ofNullable(employeeUuid); + return this; + } + + /** + * The UUID of the created employee (if role is employee). + */ + public Builder employeeUuid(Optional employeeUuid) { + Utils.checkNotNull(employeeUuid, "employeeUuid"); + this.employeeUuid = employeeUuid; + return this; + } + + + /** + * Errors encountered while processing this batch item. + */ + public Builder errors(List errors) { + Utils.checkNotNull(errors, "errors"); + this.errors = JsonNullable.of(errors); + return this; + } + + /** + * Errors encountered while processing this batch item. + */ + public Builder errors(JsonNullable> errors) { + Utils.checkNotNull(errors, "errors"); + this.errors = errors; + return this; + } + + public PeopleBatchResultsResults build() { + + return new PeopleBatchResultsResults( + externalId, role, status, + idx, uuid, employeeUuid, + errors); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/Rehire.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/Rehire.java index caa826971..dc4a25ad3 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/Rehire.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/Rehire.java @@ -53,7 +53,7 @@ public class Rehire { */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("employment_status") - private Optional employmentStatus; + private Optional employmentStatus; /** * Whether the employee is a two percent shareholder of the company. This field only applies to @@ -83,7 +83,7 @@ public Rehire( @JsonProperty("effective_date") Optional effectiveDate, @JsonProperty("file_new_hire_report") Optional fileNewHireReport, @JsonProperty("work_location_uuid") Optional workLocationUuid, - @JsonProperty("employment_status") Optional employmentStatus, + @JsonProperty("employment_status") Optional employmentStatus, @JsonProperty("two_percent_shareholder") Optional twoPercentShareholder, @JsonProperty("employee_uuid") Optional employeeUuid, @JsonProperty("active") Optional active) { @@ -151,8 +151,8 @@ public Optional workLocationUuid() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional employmentStatus() { - return (Optional) employmentStatus; + public Optional employmentStatus() { + return (Optional) employmentStatus; } /** @@ -269,7 +269,7 @@ public Rehire withWorkLocationUuid(Optional workLocationUuid) { * The employee's employment status. Supplying an invalid option will set the employment_status to * *not_set*. */ - public Rehire withEmploymentStatus(EmploymentStatus employmentStatus) { + public Rehire withEmploymentStatus(RehireEmploymentStatus employmentStatus) { Utils.checkNotNull(employmentStatus, "employmentStatus"); this.employmentStatus = Optional.ofNullable(employmentStatus); return this; @@ -280,7 +280,7 @@ public Rehire withEmploymentStatus(EmploymentStatus employmentStatus) { * The employee's employment status. Supplying an invalid option will set the employment_status to * *not_set*. */ - public Rehire withEmploymentStatus(Optional employmentStatus) { + public Rehire withEmploymentStatus(Optional employmentStatus) { Utils.checkNotNull(employmentStatus, "employmentStatus"); this.employmentStatus = employmentStatus; return this; @@ -397,7 +397,7 @@ public final static class Builder { private Optional workLocationUuid = Optional.empty(); - private Optional employmentStatus = Optional.empty(); + private Optional employmentStatus = Optional.empty(); private Optional twoPercentShareholder = Optional.empty(); @@ -494,7 +494,7 @@ public Builder workLocationUuid(Optional workLocationUuid) { * The employee's employment status. Supplying an invalid option will set the employment_status to * *not_set*. */ - public Builder employmentStatus(EmploymentStatus employmentStatus) { + public Builder employmentStatus(RehireEmploymentStatus employmentStatus) { Utils.checkNotNull(employmentStatus, "employmentStatus"); this.employmentStatus = Optional.ofNullable(employmentStatus); return this; @@ -504,7 +504,7 @@ public Builder employmentStatus(EmploymentStatus employmentStatus) { * The employee's employment status. Supplying an invalid option will set the employment_status to * *not_set*. */ - public Builder employmentStatus(Optional employmentStatus) { + public Builder employmentStatus(Optional employmentStatus) { Utils.checkNotNull(employmentStatus, "employmentStatus"); this.employmentStatus = employmentStatus; return this; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/RehireEmploymentStatus.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/RehireEmploymentStatus.java new file mode 100644 index 000000000..113efb03f --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/RehireEmploymentStatus.java @@ -0,0 +1,45 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * RehireEmploymentStatus + * + *

    The employee's employment status. Supplying an invalid option will set the employment_status to + * *not_set*. + */ +public enum RehireEmploymentStatus { + PART_TIME("part_time"), + FULL_TIME("full_time"), + PART_TIME_ELIGIBLE("part_time_eligible"), + VARIABLE("variable"), + SEASONAL("seasonal"), + NOT_SET("not_set"); + + @JsonValue + private final String value; + + RehireEmploymentStatus(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (RehireEmploymentStatus o: RehireEmploymentStatus.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ReportType.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ReportType.java new file mode 100644 index 000000000..c1dd3c6f7 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ReportType.java @@ -0,0 +1,39 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * ReportType + * + *

    Identifies this batch item as a custom report. + */ +public enum ReportType { + CUSTOM_REPORT("custom_report"); + + @JsonValue + private final String value; + + ReportType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (ReportType o: ReportType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/Results.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/Results.java index 6eaf90dbc..b47a8037d 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/Results.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/Results.java @@ -15,118 +15,64 @@ import java.lang.SuppressWarnings; import java.util.List; import java.util.Optional; -import org.openapitools.jackson.nullable.JsonNullable; public class Results { /** - * The external ID provided in the batch request. - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("external_id") - private Optional externalId; - - /** - * The type of person created. - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("role") - private Optional role; - - /** - * The status of this batch item. - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("status") - private Optional status; - - /** - * The index of this item in the original batch request. + * The index of this payroll in the original POST batch array. */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("idx") private Optional idx; /** - * The UUID of the created person. + * The UUID of the payroll. */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("uuid") private Optional uuid; /** - * The UUID of the created employee (if role is employee). + * The outcome of cancelling this payroll. A cancel is atomic — there is no per-payroll + * `partial_success`. + * - `success`: the payroll was cancelled, or required no action (already cancelled / never run) + * - `failed`: the payroll could not be cancelled; see `errors` */ @JsonInclude(Include.NON_ABSENT) - @JsonProperty("employee_uuid") - private Optional employeeUuid; + @JsonProperty("status") + private Optional status; /** - * Errors encountered while processing this batch item. + * Present only when `status` is `failed`. A cancel is a single atomic operation, so this is a flat + * array with exactly one error. */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("errors") - private JsonNullable> errors; + private Optional> errors; @JsonCreator public Results( - @JsonProperty("external_id") Optional externalId, - @JsonProperty("role") Optional role, - @JsonProperty("status") Optional status, @JsonProperty("idx") Optional idx, @JsonProperty("uuid") Optional uuid, - @JsonProperty("employee_uuid") Optional employeeUuid, - @JsonProperty("errors") JsonNullable> errors) { - Utils.checkNotNull(externalId, "externalId"); - Utils.checkNotNull(role, "role"); - Utils.checkNotNull(status, "status"); + @JsonProperty("status") Optional status, + @JsonProperty("errors") Optional> errors) { Utils.checkNotNull(idx, "idx"); Utils.checkNotNull(uuid, "uuid"); - Utils.checkNotNull(employeeUuid, "employeeUuid"); + Utils.checkNotNull(status, "status"); Utils.checkNotNull(errors, "errors"); - this.externalId = externalId; - this.role = role; - this.status = status; this.idx = idx; this.uuid = uuid; - this.employeeUuid = employeeUuid; + this.status = status; this.errors = errors; } public Results() { this(Optional.empty(), Optional.empty(), Optional.empty(), - Optional.empty(), Optional.empty(), Optional.empty(), - JsonNullable.undefined()); - } - - /** - * The external ID provided in the batch request. - */ - @JsonIgnore - public Optional externalId() { - return externalId; - } - - /** - * The type of person created. - */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional role() { - return (Optional) role; + Optional.empty()); } /** - * The status of this batch item. - */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional status() { - return (Optional) status; - } - - /** - * The index of this item in the original batch request. + * The index of this payroll in the original POST batch array. */ @JsonIgnore public Optional idx() { @@ -134,7 +80,7 @@ public Optional idx() { } /** - * The UUID of the created person. + * The UUID of the payroll. */ @JsonIgnore public Optional uuid() { @@ -142,20 +88,25 @@ public Optional uuid() { } /** - * The UUID of the created employee (if role is employee). + * The outcome of cancelling this payroll. A cancel is atomic — there is no per-payroll + * `partial_success`. + * - `success`: the payroll was cancelled, or required no action (already cancelled / never run) + * - `failed`: the payroll could not be cancelled; see `errors` */ + @SuppressWarnings("unchecked") @JsonIgnore - public Optional employeeUuid() { - return employeeUuid; + public Optional status() { + return (Optional) status; } /** - * Errors encountered while processing this batch item. + * Present only when `status` is `failed`. A cancel is a single atomic operation, so this is a flat + * array with exactly one error. */ @SuppressWarnings("unchecked") @JsonIgnore - public JsonNullable> errors() { - return (JsonNullable>) errors; + public Optional> errors() { + return (Optional>) errors; } public static Builder builder() { @@ -164,64 +115,7 @@ public static Builder builder() { /** - * The external ID provided in the batch request. - */ - public Results withExternalId(String externalId) { - Utils.checkNotNull(externalId, "externalId"); - this.externalId = Optional.ofNullable(externalId); - return this; - } - - - /** - * The external ID provided in the batch request. - */ - public Results withExternalId(Optional externalId) { - Utils.checkNotNull(externalId, "externalId"); - this.externalId = externalId; - return this; - } - - /** - * The type of person created. - */ - public Results withRole(Role role) { - Utils.checkNotNull(role, "role"); - this.role = Optional.ofNullable(role); - return this; - } - - - /** - * The type of person created. - */ - public Results withRole(Optional role) { - Utils.checkNotNull(role, "role"); - this.role = role; - return this; - } - - /** - * The status of this batch item. - */ - public Results withStatus(PeopleBatchResultsResultsStatus status) { - Utils.checkNotNull(status, "status"); - this.status = Optional.ofNullable(status); - return this; - } - - - /** - * The status of this batch item. - */ - public Results withStatus(Optional status) { - Utils.checkNotNull(status, "status"); - this.status = status; - return this; - } - - /** - * The index of this item in the original batch request. + * The index of this payroll in the original POST batch array. */ public Results withIdx(long idx) { Utils.checkNotNull(idx, "idx"); @@ -231,7 +125,7 @@ public Results withIdx(long idx) { /** - * The index of this item in the original batch request. + * The index of this payroll in the original POST batch array. */ public Results withIdx(Optional idx) { Utils.checkNotNull(idx, "idx"); @@ -240,7 +134,7 @@ public Results withIdx(Optional idx) { } /** - * The UUID of the created person. + * The UUID of the payroll. */ public Results withUuid(String uuid) { Utils.checkNotNull(uuid, "uuid"); @@ -250,7 +144,7 @@ public Results withUuid(String uuid) { /** - * The UUID of the created person. + * The UUID of the payroll. */ public Results withUuid(Optional uuid) { Utils.checkNotNull(uuid, "uuid"); @@ -259,37 +153,46 @@ public Results withUuid(Optional uuid) { } /** - * The UUID of the created employee (if role is employee). + * The outcome of cancelling this payroll. A cancel is atomic — there is no per-payroll + * `partial_success`. + * - `success`: the payroll was cancelled, or required no action (already cancelled / never run) + * - `failed`: the payroll could not be cancelled; see `errors` */ - public Results withEmployeeUuid(String employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = Optional.ofNullable(employeeUuid); + public Results withStatus(PayrollBatchResultsResultsStatus status) { + Utils.checkNotNull(status, "status"); + this.status = Optional.ofNullable(status); return this; } /** - * The UUID of the created employee (if role is employee). + * The outcome of cancelling this payroll. A cancel is atomic — there is no per-payroll + * `partial_success`. + * - `success`: the payroll was cancelled, or required no action (already cancelled / never run) + * - `failed`: the payroll could not be cancelled; see `errors` */ - public Results withEmployeeUuid(Optional employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = employeeUuid; + public Results withStatus(Optional status) { + Utils.checkNotNull(status, "status"); + this.status = status; return this; } /** - * Errors encountered while processing this batch item. + * Present only when `status` is `failed`. A cancel is a single atomic operation, so this is a flat + * array with exactly one error. */ - public Results withErrors(List errors) { + public Results withErrors(List errors) { Utils.checkNotNull(errors, "errors"); - this.errors = JsonNullable.of(errors); + this.errors = Optional.ofNullable(errors); return this; } + /** - * Errors encountered while processing this batch item. + * Present only when `status` is `failed`. A cancel is a single atomic operation, so this is a flat + * array with exactly one error. */ - public Results withErrors(JsonNullable> errors) { + public Results withErrors(Optional> errors) { Utils.checkNotNull(errors, "errors"); this.errors = errors; return this; @@ -305,51 +208,38 @@ public boolean equals(java.lang.Object o) { } Results other = (Results) o; return - Utils.enhancedDeepEquals(this.externalId, other.externalId) && - Utils.enhancedDeepEquals(this.role, other.role) && - Utils.enhancedDeepEquals(this.status, other.status) && Utils.enhancedDeepEquals(this.idx, other.idx) && Utils.enhancedDeepEquals(this.uuid, other.uuid) && - Utils.enhancedDeepEquals(this.employeeUuid, other.employeeUuid) && + Utils.enhancedDeepEquals(this.status, other.status) && Utils.enhancedDeepEquals(this.errors, other.errors); } @Override public int hashCode() { return Utils.enhancedHash( - externalId, role, status, - idx, uuid, employeeUuid, + idx, uuid, status, errors); } @Override public String toString() { return Utils.toString(Results.class, - "externalId", externalId, - "role", role, - "status", status, "idx", idx, "uuid", uuid, - "employeeUuid", employeeUuid, + "status", status, "errors", errors); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private Optional externalId = Optional.empty(); - - private Optional role = Optional.empty(); - - private Optional status = Optional.empty(); - private Optional idx = Optional.empty(); private Optional uuid = Optional.empty(); - private Optional employeeUuid = Optional.empty(); + private Optional status = Optional.empty(); - private JsonNullable> errors = JsonNullable.undefined(); + private Optional> errors = Optional.empty(); private Builder() { // force use of static builder() method @@ -357,64 +247,7 @@ private Builder() { /** - * The external ID provided in the batch request. - */ - public Builder externalId(String externalId) { - Utils.checkNotNull(externalId, "externalId"); - this.externalId = Optional.ofNullable(externalId); - return this; - } - - /** - * The external ID provided in the batch request. - */ - public Builder externalId(Optional externalId) { - Utils.checkNotNull(externalId, "externalId"); - this.externalId = externalId; - return this; - } - - - /** - * The type of person created. - */ - public Builder role(Role role) { - Utils.checkNotNull(role, "role"); - this.role = Optional.ofNullable(role); - return this; - } - - /** - * The type of person created. - */ - public Builder role(Optional role) { - Utils.checkNotNull(role, "role"); - this.role = role; - return this; - } - - - /** - * The status of this batch item. - */ - public Builder status(PeopleBatchResultsResultsStatus status) { - Utils.checkNotNull(status, "status"); - this.status = Optional.ofNullable(status); - return this; - } - - /** - * The status of this batch item. - */ - public Builder status(Optional status) { - Utils.checkNotNull(status, "status"); - this.status = status; - return this; - } - - - /** - * The index of this item in the original batch request. + * The index of this payroll in the original POST batch array. */ public Builder idx(long idx) { Utils.checkNotNull(idx, "idx"); @@ -423,7 +256,7 @@ public Builder idx(long idx) { } /** - * The index of this item in the original batch request. + * The index of this payroll in the original POST batch array. */ public Builder idx(Optional idx) { Utils.checkNotNull(idx, "idx"); @@ -433,7 +266,7 @@ public Builder idx(Optional idx) { /** - * The UUID of the created person. + * The UUID of the payroll. */ public Builder uuid(String uuid) { Utils.checkNotNull(uuid, "uuid"); @@ -442,7 +275,7 @@ public Builder uuid(String uuid) { } /** - * The UUID of the created person. + * The UUID of the payroll. */ public Builder uuid(Optional uuid) { Utils.checkNotNull(uuid, "uuid"); @@ -452,37 +285,45 @@ public Builder uuid(Optional uuid) { /** - * The UUID of the created employee (if role is employee). + * The outcome of cancelling this payroll. A cancel is atomic — there is no per-payroll + * `partial_success`. + * - `success`: the payroll was cancelled, or required no action (already cancelled / never run) + * - `failed`: the payroll could not be cancelled; see `errors` */ - public Builder employeeUuid(String employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = Optional.ofNullable(employeeUuid); + public Builder status(PayrollBatchResultsResultsStatus status) { + Utils.checkNotNull(status, "status"); + this.status = Optional.ofNullable(status); return this; } /** - * The UUID of the created employee (if role is employee). + * The outcome of cancelling this payroll. A cancel is atomic — there is no per-payroll + * `partial_success`. + * - `success`: the payroll was cancelled, or required no action (already cancelled / never run) + * - `failed`: the payroll could not be cancelled; see `errors` */ - public Builder employeeUuid(Optional employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = employeeUuid; + public Builder status(Optional status) { + Utils.checkNotNull(status, "status"); + this.status = status; return this; } /** - * Errors encountered while processing this batch item. + * Present only when `status` is `failed`. A cancel is a single atomic operation, so this is a flat + * array with exactly one error. */ - public Builder errors(List errors) { + public Builder errors(List errors) { Utils.checkNotNull(errors, "errors"); - this.errors = JsonNullable.of(errors); + this.errors = Optional.ofNullable(errors); return this; } /** - * Errors encountered while processing this batch item. + * Present only when `status` is `failed`. A cancel is a single atomic operation, so this is a flat + * array with exactly one error. */ - public Builder errors(JsonNullable> errors) { + public Builder errors(Optional> errors) { Utils.checkNotNull(errors, "errors"); this.errors = errors; return this; @@ -491,8 +332,7 @@ public Builder errors(JsonNullable> err public Results build() { return new Results( - externalId, role, status, - idx, uuid, employeeUuid, + idx, uuid, status, errors); } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ReverseWireTransaction.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ReverseWireTransaction.java new file mode 100644 index 000000000..38535e8c2 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ReverseWireTransaction.java @@ -0,0 +1,559 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import org.openapitools.jackson.nullable.JsonNullable; + +/** + * ReverseWireTransaction + * + *

    Representation of a reverse wire (drawdown) transaction. Reverse wires are debit transactions + * initiated by Gusto to pull funds from a partner's bank account to cover payroll or contractor + * payment obligations. + */ +public class ReverseWireTransaction { + /** + * Unique identifier of the company the reverse wire transaction belongs to + */ + @JsonProperty("company_uuid") + private String companyUuid; + + /** + * The amount of money moved by the reverse wire, as a decimal string. Always non-negative. + */ + @JsonProperty("amount") + private String amount; + + /** + * Current status of the reverse wire transaction. + * - `pending_processing`: The reverse wire has been initiated and is awaiting processing by the + * banking network. + * - `processed`: The reverse wire was successfully settled and funds have been received. + * - `rejected`: The reverse wire was rejected by the receiving bank (e.g. invalid account, + * insufficient funds). + * - `failed`: The reverse wire failed during processing due to a system or network error. + */ + @JsonProperty("status") + private ReverseWireTransactionStatus status; + + /** + * The direction of the payment. Reverse wires are always debits from the company's account. + */ + @JsonProperty("payment_direction") + private ReverseWireTransactionPaymentDirection paymentDirection; + + /** + * Name of the receiving bank. Null when the bank is not known. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("bank_name") + private JsonNullable bankName; + + /** + * The type of payment event this reverse wire is associated with. Null when the wire is not linked to + * a payroll or contractor payment. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("payment_event_type") + private JsonNullable paymentEventType; + + /** + * Unique identifier of the associated payroll or contractor payment. Null when the wire is not linked + * to a payment event. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("payment_event_uuid") + private JsonNullable paymentEventUuid; + + /** + * The check date of the associated payment event. Null when the wire is not linked to a payment event. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("payment_event_check_date") + private JsonNullable paymentEventCheckDate; + + /** + * The date the reverse wire record was created. + */ + @JsonProperty("created_at") + private String createdAt; + + @JsonCreator + public ReverseWireTransaction( + @JsonProperty("company_uuid") String companyUuid, + @JsonProperty("amount") String amount, + @JsonProperty("status") ReverseWireTransactionStatus status, + @JsonProperty("payment_direction") ReverseWireTransactionPaymentDirection paymentDirection, + @JsonProperty("bank_name") JsonNullable bankName, + @JsonProperty("payment_event_type") JsonNullable paymentEventType, + @JsonProperty("payment_event_uuid") JsonNullable paymentEventUuid, + @JsonProperty("payment_event_check_date") JsonNullable paymentEventCheckDate, + @JsonProperty("created_at") String createdAt) { + Utils.checkNotNull(companyUuid, "companyUuid"); + Utils.checkNotNull(amount, "amount"); + Utils.checkNotNull(status, "status"); + Utils.checkNotNull(paymentDirection, "paymentDirection"); + Utils.checkNotNull(bankName, "bankName"); + Utils.checkNotNull(paymentEventType, "paymentEventType"); + Utils.checkNotNull(paymentEventUuid, "paymentEventUuid"); + Utils.checkNotNull(paymentEventCheckDate, "paymentEventCheckDate"); + Utils.checkNotNull(createdAt, "createdAt"); + this.companyUuid = companyUuid; + this.amount = amount; + this.status = status; + this.paymentDirection = paymentDirection; + this.bankName = bankName; + this.paymentEventType = paymentEventType; + this.paymentEventUuid = paymentEventUuid; + this.paymentEventCheckDate = paymentEventCheckDate; + this.createdAt = createdAt; + } + + public ReverseWireTransaction( + String companyUuid, + String amount, + ReverseWireTransactionStatus status, + ReverseWireTransactionPaymentDirection paymentDirection, + String createdAt) { + this(companyUuid, amount, status, + paymentDirection, JsonNullable.undefined(), JsonNullable.undefined(), + JsonNullable.undefined(), JsonNullable.undefined(), createdAt); + } + + /** + * Unique identifier of the company the reverse wire transaction belongs to + */ + @JsonIgnore + public String companyUuid() { + return companyUuid; + } + + /** + * The amount of money moved by the reverse wire, as a decimal string. Always non-negative. + */ + @JsonIgnore + public String amount() { + return amount; + } + + /** + * Current status of the reverse wire transaction. + * - `pending_processing`: The reverse wire has been initiated and is awaiting processing by the + * banking network. + * - `processed`: The reverse wire was successfully settled and funds have been received. + * - `rejected`: The reverse wire was rejected by the receiving bank (e.g. invalid account, + * insufficient funds). + * - `failed`: The reverse wire failed during processing due to a system or network error. + */ + @JsonIgnore + public ReverseWireTransactionStatus status() { + return status; + } + + /** + * The direction of the payment. Reverse wires are always debits from the company's account. + */ + @JsonIgnore + public ReverseWireTransactionPaymentDirection paymentDirection() { + return paymentDirection; + } + + /** + * Name of the receiving bank. Null when the bank is not known. + */ + @JsonIgnore + public JsonNullable bankName() { + return bankName; + } + + /** + * The type of payment event this reverse wire is associated with. Null when the wire is not linked to + * a payroll or contractor payment. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public JsonNullable paymentEventType() { + return (JsonNullable) paymentEventType; + } + + /** + * Unique identifier of the associated payroll or contractor payment. Null when the wire is not linked + * to a payment event. + */ + @JsonIgnore + public JsonNullable paymentEventUuid() { + return paymentEventUuid; + } + + /** + * The check date of the associated payment event. Null when the wire is not linked to a payment event. + */ + @JsonIgnore + public JsonNullable paymentEventCheckDate() { + return paymentEventCheckDate; + } + + /** + * The date the reverse wire record was created. + */ + @JsonIgnore + public String createdAt() { + return createdAt; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Unique identifier of the company the reverse wire transaction belongs to + */ + public ReverseWireTransaction withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + /** + * The amount of money moved by the reverse wire, as a decimal string. Always non-negative. + */ + public ReverseWireTransaction withAmount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + /** + * Current status of the reverse wire transaction. + * - `pending_processing`: The reverse wire has been initiated and is awaiting processing by the + * banking network. + * - `processed`: The reverse wire was successfully settled and funds have been received. + * - `rejected`: The reverse wire was rejected by the receiving bank (e.g. invalid account, + * insufficient funds). + * - `failed`: The reverse wire failed during processing due to a system or network error. + */ + public ReverseWireTransaction withStatus(ReverseWireTransactionStatus status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + /** + * The direction of the payment. Reverse wires are always debits from the company's account. + */ + public ReverseWireTransaction withPaymentDirection(ReverseWireTransactionPaymentDirection paymentDirection) { + Utils.checkNotNull(paymentDirection, "paymentDirection"); + this.paymentDirection = paymentDirection; + return this; + } + + /** + * Name of the receiving bank. Null when the bank is not known. + */ + public ReverseWireTransaction withBankName(String bankName) { + Utils.checkNotNull(bankName, "bankName"); + this.bankName = JsonNullable.of(bankName); + return this; + } + + /** + * Name of the receiving bank. Null when the bank is not known. + */ + public ReverseWireTransaction withBankName(JsonNullable bankName) { + Utils.checkNotNull(bankName, "bankName"); + this.bankName = bankName; + return this; + } + + /** + * The type of payment event this reverse wire is associated with. Null when the wire is not linked to + * a payroll or contractor payment. + */ + public ReverseWireTransaction withPaymentEventType(ReverseWireTransactionPaymentEventType paymentEventType) { + Utils.checkNotNull(paymentEventType, "paymentEventType"); + this.paymentEventType = JsonNullable.of(paymentEventType); + return this; + } + + /** + * The type of payment event this reverse wire is associated with. Null when the wire is not linked to + * a payroll or contractor payment. + */ + public ReverseWireTransaction withPaymentEventType(JsonNullable paymentEventType) { + Utils.checkNotNull(paymentEventType, "paymentEventType"); + this.paymentEventType = paymentEventType; + return this; + } + + /** + * Unique identifier of the associated payroll or contractor payment. Null when the wire is not linked + * to a payment event. + */ + public ReverseWireTransaction withPaymentEventUuid(String paymentEventUuid) { + Utils.checkNotNull(paymentEventUuid, "paymentEventUuid"); + this.paymentEventUuid = JsonNullable.of(paymentEventUuid); + return this; + } + + /** + * Unique identifier of the associated payroll or contractor payment. Null when the wire is not linked + * to a payment event. + */ + public ReverseWireTransaction withPaymentEventUuid(JsonNullable paymentEventUuid) { + Utils.checkNotNull(paymentEventUuid, "paymentEventUuid"); + this.paymentEventUuid = paymentEventUuid; + return this; + } + + /** + * The check date of the associated payment event. Null when the wire is not linked to a payment event. + */ + public ReverseWireTransaction withPaymentEventCheckDate(String paymentEventCheckDate) { + Utils.checkNotNull(paymentEventCheckDate, "paymentEventCheckDate"); + this.paymentEventCheckDate = JsonNullable.of(paymentEventCheckDate); + return this; + } + + /** + * The check date of the associated payment event. Null when the wire is not linked to a payment event. + */ + public ReverseWireTransaction withPaymentEventCheckDate(JsonNullable paymentEventCheckDate) { + Utils.checkNotNull(paymentEventCheckDate, "paymentEventCheckDate"); + this.paymentEventCheckDate = paymentEventCheckDate; + return this; + } + + /** + * The date the reverse wire record was created. + */ + public ReverseWireTransaction withCreatedAt(String createdAt) { + Utils.checkNotNull(createdAt, "createdAt"); + this.createdAt = createdAt; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + ReverseWireTransaction other = (ReverseWireTransaction) o; + return + Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && + Utils.enhancedDeepEquals(this.amount, other.amount) && + Utils.enhancedDeepEquals(this.status, other.status) && + Utils.enhancedDeepEquals(this.paymentDirection, other.paymentDirection) && + Utils.enhancedDeepEquals(this.bankName, other.bankName) && + Utils.enhancedDeepEquals(this.paymentEventType, other.paymentEventType) && + Utils.enhancedDeepEquals(this.paymentEventUuid, other.paymentEventUuid) && + Utils.enhancedDeepEquals(this.paymentEventCheckDate, other.paymentEventCheckDate) && + Utils.enhancedDeepEquals(this.createdAt, other.createdAt); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + companyUuid, amount, status, + paymentDirection, bankName, paymentEventType, + paymentEventUuid, paymentEventCheckDate, createdAt); + } + + @Override + public String toString() { + return Utils.toString(ReverseWireTransaction.class, + "companyUuid", companyUuid, + "amount", amount, + "status", status, + "paymentDirection", paymentDirection, + "bankName", bankName, + "paymentEventType", paymentEventType, + "paymentEventUuid", paymentEventUuid, + "paymentEventCheckDate", paymentEventCheckDate, + "createdAt", createdAt); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String companyUuid; + + private String amount; + + private ReverseWireTransactionStatus status; + + private ReverseWireTransactionPaymentDirection paymentDirection; + + private JsonNullable bankName = JsonNullable.undefined(); + + private JsonNullable paymentEventType = JsonNullable.undefined(); + + private JsonNullable paymentEventUuid = JsonNullable.undefined(); + + private JsonNullable paymentEventCheckDate = JsonNullable.undefined(); + + private String createdAt; + + private Builder() { + // force use of static builder() method + } + + + /** + * Unique identifier of the company the reverse wire transaction belongs to + */ + public Builder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + + /** + * The amount of money moved by the reverse wire, as a decimal string. Always non-negative. + */ + public Builder amount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + + /** + * Current status of the reverse wire transaction. + * - `pending_processing`: The reverse wire has been initiated and is awaiting processing by the + * banking network. + * - `processed`: The reverse wire was successfully settled and funds have been received. + * - `rejected`: The reverse wire was rejected by the receiving bank (e.g. invalid account, + * insufficient funds). + * - `failed`: The reverse wire failed during processing due to a system or network error. + */ + public Builder status(ReverseWireTransactionStatus status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + + /** + * The direction of the payment. Reverse wires are always debits from the company's account. + */ + public Builder paymentDirection(ReverseWireTransactionPaymentDirection paymentDirection) { + Utils.checkNotNull(paymentDirection, "paymentDirection"); + this.paymentDirection = paymentDirection; + return this; + } + + + /** + * Name of the receiving bank. Null when the bank is not known. + */ + public Builder bankName(String bankName) { + Utils.checkNotNull(bankName, "bankName"); + this.bankName = JsonNullable.of(bankName); + return this; + } + + /** + * Name of the receiving bank. Null when the bank is not known. + */ + public Builder bankName(JsonNullable bankName) { + Utils.checkNotNull(bankName, "bankName"); + this.bankName = bankName; + return this; + } + + + /** + * The type of payment event this reverse wire is associated with. Null when the wire is not linked to + * a payroll or contractor payment. + */ + public Builder paymentEventType(ReverseWireTransactionPaymentEventType paymentEventType) { + Utils.checkNotNull(paymentEventType, "paymentEventType"); + this.paymentEventType = JsonNullable.of(paymentEventType); + return this; + } + + /** + * The type of payment event this reverse wire is associated with. Null when the wire is not linked to + * a payroll or contractor payment. + */ + public Builder paymentEventType(JsonNullable paymentEventType) { + Utils.checkNotNull(paymentEventType, "paymentEventType"); + this.paymentEventType = paymentEventType; + return this; + } + + + /** + * Unique identifier of the associated payroll or contractor payment. Null when the wire is not linked + * to a payment event. + */ + public Builder paymentEventUuid(String paymentEventUuid) { + Utils.checkNotNull(paymentEventUuid, "paymentEventUuid"); + this.paymentEventUuid = JsonNullable.of(paymentEventUuid); + return this; + } + + /** + * Unique identifier of the associated payroll or contractor payment. Null when the wire is not linked + * to a payment event. + */ + public Builder paymentEventUuid(JsonNullable paymentEventUuid) { + Utils.checkNotNull(paymentEventUuid, "paymentEventUuid"); + this.paymentEventUuid = paymentEventUuid; + return this; + } + + + /** + * The check date of the associated payment event. Null when the wire is not linked to a payment event. + */ + public Builder paymentEventCheckDate(String paymentEventCheckDate) { + Utils.checkNotNull(paymentEventCheckDate, "paymentEventCheckDate"); + this.paymentEventCheckDate = JsonNullable.of(paymentEventCheckDate); + return this; + } + + /** + * The check date of the associated payment event. Null when the wire is not linked to a payment event. + */ + public Builder paymentEventCheckDate(JsonNullable paymentEventCheckDate) { + Utils.checkNotNull(paymentEventCheckDate, "paymentEventCheckDate"); + this.paymentEventCheckDate = paymentEventCheckDate; + return this; + } + + + /** + * The date the reverse wire record was created. + */ + public Builder createdAt(String createdAt) { + Utils.checkNotNull(createdAt, "createdAt"); + this.createdAt = createdAt; + return this; + } + + public ReverseWireTransaction build() { + + return new ReverseWireTransaction( + companyUuid, amount, status, + paymentDirection, bankName, paymentEventType, + paymentEventUuid, paymentEventCheckDate, createdAt); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ReverseWireTransactionPaymentDirection.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ReverseWireTransactionPaymentDirection.java new file mode 100644 index 000000000..b0ef616fa --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ReverseWireTransactionPaymentDirection.java @@ -0,0 +1,39 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * ReverseWireTransactionPaymentDirection + * + *

    The direction of the payment. Reverse wires are always debits from the company's account. + */ +public enum ReverseWireTransactionPaymentDirection { + DEBIT("debit"); + + @JsonValue + private final String value; + + ReverseWireTransactionPaymentDirection(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (ReverseWireTransactionPaymentDirection o: ReverseWireTransactionPaymentDirection.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ReverseWireTransactionPaymentEventType.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ReverseWireTransactionPaymentEventType.java new file mode 100644 index 000000000..57a5f3b34 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ReverseWireTransactionPaymentEventType.java @@ -0,0 +1,35 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +public enum ReverseWireTransactionPaymentEventType { + PAYROLL("Payroll"), + CONTRACTOR_PAYMENT("ContractorPayment"); + + @JsonValue + private final String value; + + ReverseWireTransactionPaymentEventType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (ReverseWireTransactionPaymentEventType o: ReverseWireTransactionPaymentEventType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ReverseWireTransactionStatus.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ReverseWireTransactionStatus.java new file mode 100644 index 000000000..e6c55f682 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/ReverseWireTransactionStatus.java @@ -0,0 +1,48 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * ReverseWireTransactionStatus + * + *

    Current status of the reverse wire transaction. + * - `pending_processing`: The reverse wire has been initiated and is awaiting processing by the + * banking network. + * - `processed`: The reverse wire was successfully settled and funds have been received. + * - `rejected`: The reverse wire was rejected by the receiving bank (e.g. invalid account, + * insufficient funds). + * - `failed`: The reverse wire failed during processing due to a system or network error. + */ +public enum ReverseWireTransactionStatus { + PENDING_PROCESSING("pending_processing"), + PROCESSED("processed"), + REJECTED("rejected"), + FAILED("failed"); + + @JsonValue + private final String value; + + ReverseWireTransactionStatus(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (ReverseWireTransactionStatus o: ReverseWireTransactionStatus.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/State.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/State.java new file mode 100644 index 000000000..020771639 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/State.java @@ -0,0 +1,314 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class State { + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("employee_state_field_uuid") + private Optional employeeStateFieldUuid; + + /** + * Override mode. Only `one_time` is currently exposed. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("override_type") + private Optional overrideType; + + /** + * The amount that was withheld for this payroll. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("amount") + private Optional amount; + + /** + * How to interpret the amount. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("amount_type") + private Optional amountType; + + @JsonCreator + public State( + @JsonProperty("employee_state_field_uuid") Optional employeeStateFieldUuid, + @JsonProperty("override_type") Optional overrideType, + @JsonProperty("amount") Optional amount, + @JsonProperty("amount_type") Optional amountType) { + Utils.checkNotNull(employeeStateFieldUuid, "employeeStateFieldUuid"); + Utils.checkNotNull(overrideType, "overrideType"); + Utils.checkNotNull(amount, "amount"); + Utils.checkNotNull(amountType, "amountType"); + this.employeeStateFieldUuid = employeeStateFieldUuid; + this.overrideType = overrideType; + this.amount = amount; + this.amountType = amountType; + } + + public State() { + this(Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty()); + } + + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + @JsonIgnore + public Optional employeeStateFieldUuid() { + return employeeStateFieldUuid; + } + + /** + * Override mode. Only `one_time` is currently exposed. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional overrideType() { + return (Optional) overrideType; + } + + /** + * The amount that was withheld for this payroll. + */ + @JsonIgnore + public Optional amount() { + return amount; + } + + /** + * How to interpret the amount. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional amountType() { + return (Optional) amountType; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + public State withEmployeeStateFieldUuid(String employeeStateFieldUuid) { + Utils.checkNotNull(employeeStateFieldUuid, "employeeStateFieldUuid"); + this.employeeStateFieldUuid = Optional.ofNullable(employeeStateFieldUuid); + return this; + } + + + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + public State withEmployeeStateFieldUuid(Optional employeeStateFieldUuid) { + Utils.checkNotNull(employeeStateFieldUuid, "employeeStateFieldUuid"); + this.employeeStateFieldUuid = employeeStateFieldUuid; + return this; + } + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public State withOverrideType(PayrollEmployeeCompensationsTypeOverrideType overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = Optional.ofNullable(overrideType); + return this; + } + + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public State withOverrideType(Optional overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = overrideType; + return this; + } + + /** + * The amount that was withheld for this payroll. + */ + public State withAmount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = Optional.ofNullable(amount); + return this; + } + + + /** + * The amount that was withheld for this payroll. + */ + public State withAmount(Optional amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + /** + * How to interpret the amount. + */ + public State withAmountType(PayrollEmployeeCompensationsTypeCustomWithholdingsAmountType amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = Optional.ofNullable(amountType); + return this; + } + + + /** + * How to interpret the amount. + */ + public State withAmountType(Optional amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = amountType; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + State other = (State) o; + return + Utils.enhancedDeepEquals(this.employeeStateFieldUuid, other.employeeStateFieldUuid) && + Utils.enhancedDeepEquals(this.overrideType, other.overrideType) && + Utils.enhancedDeepEquals(this.amount, other.amount) && + Utils.enhancedDeepEquals(this.amountType, other.amountType); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + employeeStateFieldUuid, overrideType, amount, + amountType); + } + + @Override + public String toString() { + return Utils.toString(State.class, + "employeeStateFieldUuid", employeeStateFieldUuid, + "overrideType", overrideType, + "amount", amount, + "amountType", amountType); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional employeeStateFieldUuid = Optional.empty(); + + private Optional overrideType = Optional.empty(); + + private Optional amount = Optional.empty(); + + private Optional amountType = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + public Builder employeeStateFieldUuid(String employeeStateFieldUuid) { + Utils.checkNotNull(employeeStateFieldUuid, "employeeStateFieldUuid"); + this.employeeStateFieldUuid = Optional.ofNullable(employeeStateFieldUuid); + return this; + } + + /** + * The UUID of the EmployeeStateField this withholding applies to. + */ + public Builder employeeStateFieldUuid(Optional employeeStateFieldUuid) { + Utils.checkNotNull(employeeStateFieldUuid, "employeeStateFieldUuid"); + this.employeeStateFieldUuid = employeeStateFieldUuid; + return this; + } + + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public Builder overrideType(PayrollEmployeeCompensationsTypeOverrideType overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = Optional.ofNullable(overrideType); + return this; + } + + /** + * Override mode. Only `one_time` is currently exposed. + */ + public Builder overrideType(Optional overrideType) { + Utils.checkNotNull(overrideType, "overrideType"); + this.overrideType = overrideType; + return this; + } + + + /** + * The amount that was withheld for this payroll. + */ + public Builder amount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = Optional.ofNullable(amount); + return this; + } + + /** + * The amount that was withheld for this payroll. + */ + public Builder amount(Optional amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + + /** + * How to interpret the amount. + */ + public Builder amountType(PayrollEmployeeCompensationsTypeCustomWithholdingsAmountType amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = Optional.ofNullable(amountType); + return this; + } + + /** + * How to interpret the amount. + */ + public Builder amountType(Optional amountType) { + Utils.checkNotNull(amountType, "amountType"); + this.amountType = amountType; + return this; + } + + public State build() { + + return new State( + employeeStateFieldUuid, overrideType, amount, + amountType); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/Status.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/Status.java index 2ef50316e..537fa336f 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/Status.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/Status.java @@ -11,14 +11,17 @@ /** * Status * - *

    Represents the notification's status as managed by our system. It is updated based on observable - * system events and internal business logic, and does not reflect resolution steps taken outside our - * system. This field is read-only and cannot be modified via the API. + *

    The batch's processing state. + * - `pending`: accepted, not yet started + * - `processing`: reports are being generated + * - `completed`: all reports finished + * - `failed`: the batch failed before completing */ public enum Status { - OPEN("open"), - RESOLVED("resolved"), - EXPIRED("expired"); + PENDING("pending"), + PROCESSING("processing"), + COMPLETED("completed"), + FAILED("failed"); @JsonValue private final String value; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/SubscriptionTypes.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/SubscriptionTypes.java index 5f0347cc0..db5be5c69 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/SubscriptionTypes.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/SubscriptionTypes.java @@ -24,7 +24,8 @@ public enum SubscriptionTypes { PAYROLL("Payroll"), PAYROLL_SYNC("PayrollSync"), PAY_SCHEDULE("PaySchedule"), - SIGNATORY("Signatory"); + SIGNATORY("Signatory"), + TIME_OFF_REQUEST("TimeOffRequest"); @JsonValue private final String value; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/TaxPayment.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/TaxPayment.java new file mode 100644 index 000000000..c52f28cd6 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/TaxPayment.java @@ -0,0 +1,608 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.time.LocalDate; +import java.util.List; +import java.util.Optional; +import org.openapitools.jackson.nullable.JsonNullable; + +/** + * TaxPayment + * + *

    Representation of a tax payment made by Gusto to a tax agency on behalf of a company + */ +public class TaxPayment { + /** + * Unique identifier of the tax payment + */ + @JsonProperty("uuid") + private String uuid; + + /** + * Unique identifier of the company to which the tax payment belongs + */ + @JsonProperty("company_uuid") + private String companyUuid; + + /** + * The name of the tax agency this payment is submitted to + */ + @JsonProperty("agency_name") + private String agencyName; + + /** + * The tax jurisdiction this payment is for. A two-letter state code, or US for federal. + */ + @JsonProperty("jurisdiction") + private String jurisdiction; + + /** + * The start date of the period this payment covers + */ + @JsonProperty("period_start") + private LocalDate periodStart; + + /** + * The end date of the period this payment covers + */ + @JsonProperty("period_end") + private LocalDate periodEnd; + + /** + * The date this payment is due + */ + @JsonProperty("due_date") + private LocalDate dueDate; + + /** + * The date Gusto submitted this payment to the tax agency. It is null until submitted, and also if the + * payment is returned or cancelled after being sent. It is not guaranteed to stay set once populated. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("payment_sent_on") + private JsonNullable paymentSentOn; + + /** + * Total amount owed for this tax payment. Can be negative for corrections, refunds, or credits. + */ + @JsonProperty("amount") + private String amount; + + /** + * Amount paid toward this tax payment so far, sourced from the payment's running balance. "0.00" until + * paid; equal to `amount` once fully paid. + */ + @JsonProperty("amount_paid") + private String amountPaid; + + /** + * The payroll tax liabilities that make up this payment. Empty array when the payment has no + * associated payroll taxes. Only included in the response of GET + * /v1/companies/{company_uuid}/tax_payments/{uuid}. + * + *

    It is omitted from the list endpoint response. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("line_items") + private Optional> lineItems; + + @JsonCreator + public TaxPayment( + @JsonProperty("uuid") String uuid, + @JsonProperty("company_uuid") String companyUuid, + @JsonProperty("agency_name") String agencyName, + @JsonProperty("jurisdiction") String jurisdiction, + @JsonProperty("period_start") LocalDate periodStart, + @JsonProperty("period_end") LocalDate periodEnd, + @JsonProperty("due_date") LocalDate dueDate, + @JsonProperty("payment_sent_on") JsonNullable paymentSentOn, + @JsonProperty("amount") String amount, + @JsonProperty("amount_paid") String amountPaid, + @JsonProperty("line_items") Optional> lineItems) { + Utils.checkNotNull(uuid, "uuid"); + Utils.checkNotNull(companyUuid, "companyUuid"); + Utils.checkNotNull(agencyName, "agencyName"); + Utils.checkNotNull(jurisdiction, "jurisdiction"); + Utils.checkNotNull(periodStart, "periodStart"); + Utils.checkNotNull(periodEnd, "periodEnd"); + Utils.checkNotNull(dueDate, "dueDate"); + Utils.checkNotNull(paymentSentOn, "paymentSentOn"); + Utils.checkNotNull(amount, "amount"); + Utils.checkNotNull(amountPaid, "amountPaid"); + Utils.checkNotNull(lineItems, "lineItems"); + this.uuid = uuid; + this.companyUuid = companyUuid; + this.agencyName = agencyName; + this.jurisdiction = jurisdiction; + this.periodStart = periodStart; + this.periodEnd = periodEnd; + this.dueDate = dueDate; + this.paymentSentOn = paymentSentOn; + this.amount = amount; + this.amountPaid = amountPaid; + this.lineItems = lineItems; + } + + public TaxPayment( + String uuid, + String companyUuid, + String agencyName, + String jurisdiction, + LocalDate periodStart, + LocalDate periodEnd, + LocalDate dueDate, + String amount, + String amountPaid) { + this(uuid, companyUuid, agencyName, + jurisdiction, periodStart, periodEnd, + dueDate, JsonNullable.undefined(), amount, + amountPaid, Optional.empty()); + } + + /** + * Unique identifier of the tax payment + */ + @JsonIgnore + public String uuid() { + return uuid; + } + + /** + * Unique identifier of the company to which the tax payment belongs + */ + @JsonIgnore + public String companyUuid() { + return companyUuid; + } + + /** + * The name of the tax agency this payment is submitted to + */ + @JsonIgnore + public String agencyName() { + return agencyName; + } + + /** + * The tax jurisdiction this payment is for. A two-letter state code, or US for federal. + */ + @JsonIgnore + public String jurisdiction() { + return jurisdiction; + } + + /** + * The start date of the period this payment covers + */ + @JsonIgnore + public LocalDate periodStart() { + return periodStart; + } + + /** + * The end date of the period this payment covers + */ + @JsonIgnore + public LocalDate periodEnd() { + return periodEnd; + } + + /** + * The date this payment is due + */ + @JsonIgnore + public LocalDate dueDate() { + return dueDate; + } + + /** + * The date Gusto submitted this payment to the tax agency. It is null until submitted, and also if the + * payment is returned or cancelled after being sent. It is not guaranteed to stay set once populated. + */ + @JsonIgnore + public JsonNullable paymentSentOn() { + return paymentSentOn; + } + + /** + * Total amount owed for this tax payment. Can be negative for corrections, refunds, or credits. + */ + @JsonIgnore + public String amount() { + return amount; + } + + /** + * Amount paid toward this tax payment so far, sourced from the payment's running balance. "0.00" until + * paid; equal to `amount` once fully paid. + */ + @JsonIgnore + public String amountPaid() { + return amountPaid; + } + + /** + * The payroll tax liabilities that make up this payment. Empty array when the payment has no + * associated payroll taxes. Only included in the response of GET + * /v1/companies/{company_uuid}/tax_payments/{uuid}. + * + *

    It is omitted from the list endpoint response. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> lineItems() { + return (Optional>) lineItems; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Unique identifier of the tax payment + */ + public TaxPayment withUuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + /** + * Unique identifier of the company to which the tax payment belongs + */ + public TaxPayment withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + /** + * The name of the tax agency this payment is submitted to + */ + public TaxPayment withAgencyName(String agencyName) { + Utils.checkNotNull(agencyName, "agencyName"); + this.agencyName = agencyName; + return this; + } + + /** + * The tax jurisdiction this payment is for. A two-letter state code, or US for federal. + */ + public TaxPayment withJurisdiction(String jurisdiction) { + Utils.checkNotNull(jurisdiction, "jurisdiction"); + this.jurisdiction = jurisdiction; + return this; + } + + /** + * The start date of the period this payment covers + */ + public TaxPayment withPeriodStart(LocalDate periodStart) { + Utils.checkNotNull(periodStart, "periodStart"); + this.periodStart = periodStart; + return this; + } + + /** + * The end date of the period this payment covers + */ + public TaxPayment withPeriodEnd(LocalDate periodEnd) { + Utils.checkNotNull(periodEnd, "periodEnd"); + this.periodEnd = periodEnd; + return this; + } + + /** + * The date this payment is due + */ + public TaxPayment withDueDate(LocalDate dueDate) { + Utils.checkNotNull(dueDate, "dueDate"); + this.dueDate = dueDate; + return this; + } + + /** + * The date Gusto submitted this payment to the tax agency. It is null until submitted, and also if the + * payment is returned or cancelled after being sent. It is not guaranteed to stay set once populated. + */ + public TaxPayment withPaymentSentOn(LocalDate paymentSentOn) { + Utils.checkNotNull(paymentSentOn, "paymentSentOn"); + this.paymentSentOn = JsonNullable.of(paymentSentOn); + return this; + } + + /** + * The date Gusto submitted this payment to the tax agency. It is null until submitted, and also if the + * payment is returned or cancelled after being sent. It is not guaranteed to stay set once populated. + */ + public TaxPayment withPaymentSentOn(JsonNullable paymentSentOn) { + Utils.checkNotNull(paymentSentOn, "paymentSentOn"); + this.paymentSentOn = paymentSentOn; + return this; + } + + /** + * Total amount owed for this tax payment. Can be negative for corrections, refunds, or credits. + */ + public TaxPayment withAmount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + /** + * Amount paid toward this tax payment so far, sourced from the payment's running balance. "0.00" until + * paid; equal to `amount` once fully paid. + */ + public TaxPayment withAmountPaid(String amountPaid) { + Utils.checkNotNull(amountPaid, "amountPaid"); + this.amountPaid = amountPaid; + return this; + } + + /** + * The payroll tax liabilities that make up this payment. Empty array when the payment has no + * associated payroll taxes. Only included in the response of GET + * /v1/companies/{company_uuid}/tax_payments/{uuid}. + * + *

    It is omitted from the list endpoint response. + */ + public TaxPayment withLineItems(List lineItems) { + Utils.checkNotNull(lineItems, "lineItems"); + this.lineItems = Optional.ofNullable(lineItems); + return this; + } + + + /** + * The payroll tax liabilities that make up this payment. Empty array when the payment has no + * associated payroll taxes. Only included in the response of GET + * /v1/companies/{company_uuid}/tax_payments/{uuid}. + * + *

    It is omitted from the list endpoint response. + */ + public TaxPayment withLineItems(Optional> lineItems) { + Utils.checkNotNull(lineItems, "lineItems"); + this.lineItems = lineItems; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + TaxPayment other = (TaxPayment) o; + return + Utils.enhancedDeepEquals(this.uuid, other.uuid) && + Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && + Utils.enhancedDeepEquals(this.agencyName, other.agencyName) && + Utils.enhancedDeepEquals(this.jurisdiction, other.jurisdiction) && + Utils.enhancedDeepEquals(this.periodStart, other.periodStart) && + Utils.enhancedDeepEquals(this.periodEnd, other.periodEnd) && + Utils.enhancedDeepEquals(this.dueDate, other.dueDate) && + Utils.enhancedDeepEquals(this.paymentSentOn, other.paymentSentOn) && + Utils.enhancedDeepEquals(this.amount, other.amount) && + Utils.enhancedDeepEquals(this.amountPaid, other.amountPaid) && + Utils.enhancedDeepEquals(this.lineItems, other.lineItems); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + uuid, companyUuid, agencyName, + jurisdiction, periodStart, periodEnd, + dueDate, paymentSentOn, amount, + amountPaid, lineItems); + } + + @Override + public String toString() { + return Utils.toString(TaxPayment.class, + "uuid", uuid, + "companyUuid", companyUuid, + "agencyName", agencyName, + "jurisdiction", jurisdiction, + "periodStart", periodStart, + "periodEnd", periodEnd, + "dueDate", dueDate, + "paymentSentOn", paymentSentOn, + "amount", amount, + "amountPaid", amountPaid, + "lineItems", lineItems); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String uuid; + + private String companyUuid; + + private String agencyName; + + private String jurisdiction; + + private LocalDate periodStart; + + private LocalDate periodEnd; + + private LocalDate dueDate; + + private JsonNullable paymentSentOn = JsonNullable.undefined(); + + private String amount; + + private String amountPaid; + + private Optional> lineItems = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * Unique identifier of the tax payment + */ + public Builder uuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + + /** + * Unique identifier of the company to which the tax payment belongs + */ + public Builder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + + /** + * The name of the tax agency this payment is submitted to + */ + public Builder agencyName(String agencyName) { + Utils.checkNotNull(agencyName, "agencyName"); + this.agencyName = agencyName; + return this; + } + + + /** + * The tax jurisdiction this payment is for. A two-letter state code, or US for federal. + */ + public Builder jurisdiction(String jurisdiction) { + Utils.checkNotNull(jurisdiction, "jurisdiction"); + this.jurisdiction = jurisdiction; + return this; + } + + + /** + * The start date of the period this payment covers + */ + public Builder periodStart(LocalDate periodStart) { + Utils.checkNotNull(periodStart, "periodStart"); + this.periodStart = periodStart; + return this; + } + + + /** + * The end date of the period this payment covers + */ + public Builder periodEnd(LocalDate periodEnd) { + Utils.checkNotNull(periodEnd, "periodEnd"); + this.periodEnd = periodEnd; + return this; + } + + + /** + * The date this payment is due + */ + public Builder dueDate(LocalDate dueDate) { + Utils.checkNotNull(dueDate, "dueDate"); + this.dueDate = dueDate; + return this; + } + + + /** + * The date Gusto submitted this payment to the tax agency. It is null until submitted, and also if the + * payment is returned or cancelled after being sent. It is not guaranteed to stay set once populated. + */ + public Builder paymentSentOn(LocalDate paymentSentOn) { + Utils.checkNotNull(paymentSentOn, "paymentSentOn"); + this.paymentSentOn = JsonNullable.of(paymentSentOn); + return this; + } + + /** + * The date Gusto submitted this payment to the tax agency. It is null until submitted, and also if the + * payment is returned or cancelled after being sent. It is not guaranteed to stay set once populated. + */ + public Builder paymentSentOn(JsonNullable paymentSentOn) { + Utils.checkNotNull(paymentSentOn, "paymentSentOn"); + this.paymentSentOn = paymentSentOn; + return this; + } + + + /** + * Total amount owed for this tax payment. Can be negative for corrections, refunds, or credits. + */ + public Builder amount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + + /** + * Amount paid toward this tax payment so far, sourced from the payment's running balance. "0.00" until + * paid; equal to `amount` once fully paid. + */ + public Builder amountPaid(String amountPaid) { + Utils.checkNotNull(amountPaid, "amountPaid"); + this.amountPaid = amountPaid; + return this; + } + + + /** + * The payroll tax liabilities that make up this payment. Empty array when the payment has no + * associated payroll taxes. Only included in the response of GET + * /v1/companies/{company_uuid}/tax_payments/{uuid}. + * + *

    It is omitted from the list endpoint response. + */ + public Builder lineItems(List lineItems) { + Utils.checkNotNull(lineItems, "lineItems"); + this.lineItems = Optional.ofNullable(lineItems); + return this; + } + + /** + * The payroll tax liabilities that make up this payment. Empty array when the payment has no + * associated payroll taxes. Only included in the response of GET + * /v1/companies/{company_uuid}/tax_payments/{uuid}. + * + *

    It is omitted from the list endpoint response. + */ + public Builder lineItems(Optional> lineItems) { + Utils.checkNotNull(lineItems, "lineItems"); + this.lineItems = lineItems; + return this; + } + + public TaxPayment build() { + + return new TaxPayment( + uuid, companyUuid, agencyName, + jurisdiction, periodStart, periodEnd, + dueDate, paymentSentOn, amount, + amountPaid, lineItems); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/TaxPaymentLineItem.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/TaxPaymentLineItem.java new file mode 100644 index 000000000..d85fe1694 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/TaxPaymentLineItem.java @@ -0,0 +1,185 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Override; +import java.lang.String; + +/** + * TaxPaymentLineItem + * + *

    A single payroll tax liability rolled up into a tax payment + */ +public class TaxPaymentLineItem { + /** + * Unique identifier of the payroll this liability came from + */ + @JsonProperty("payroll_uuid") + private String payrollUuid; + + /** + * Unique identifier of the tax type this liability is for + */ + @JsonProperty("unique_tax_id") + private String uniqueTaxId; + + /** + * The amount of this liability included in the tax payment + */ + @JsonProperty("amount") + private String amount; + + @JsonCreator + public TaxPaymentLineItem( + @JsonProperty("payroll_uuid") String payrollUuid, + @JsonProperty("unique_tax_id") String uniqueTaxId, + @JsonProperty("amount") String amount) { + Utils.checkNotNull(payrollUuid, "payrollUuid"); + Utils.checkNotNull(uniqueTaxId, "uniqueTaxId"); + Utils.checkNotNull(amount, "amount"); + this.payrollUuid = payrollUuid; + this.uniqueTaxId = uniqueTaxId; + this.amount = amount; + } + + /** + * Unique identifier of the payroll this liability came from + */ + @JsonIgnore + public String payrollUuid() { + return payrollUuid; + } + + /** + * Unique identifier of the tax type this liability is for + */ + @JsonIgnore + public String uniqueTaxId() { + return uniqueTaxId; + } + + /** + * The amount of this liability included in the tax payment + */ + @JsonIgnore + public String amount() { + return amount; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Unique identifier of the payroll this liability came from + */ + public TaxPaymentLineItem withPayrollUuid(String payrollUuid) { + Utils.checkNotNull(payrollUuid, "payrollUuid"); + this.payrollUuid = payrollUuid; + return this; + } + + /** + * Unique identifier of the tax type this liability is for + */ + public TaxPaymentLineItem withUniqueTaxId(String uniqueTaxId) { + Utils.checkNotNull(uniqueTaxId, "uniqueTaxId"); + this.uniqueTaxId = uniqueTaxId; + return this; + } + + /** + * The amount of this liability included in the tax payment + */ + public TaxPaymentLineItem withAmount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + TaxPaymentLineItem other = (TaxPaymentLineItem) o; + return + Utils.enhancedDeepEquals(this.payrollUuid, other.payrollUuid) && + Utils.enhancedDeepEquals(this.uniqueTaxId, other.uniqueTaxId) && + Utils.enhancedDeepEquals(this.amount, other.amount); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + payrollUuid, uniqueTaxId, amount); + } + + @Override + public String toString() { + return Utils.toString(TaxPaymentLineItem.class, + "payrollUuid", payrollUuid, + "uniqueTaxId", uniqueTaxId, + "amount", amount); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String payrollUuid; + + private String uniqueTaxId; + + private String amount; + + private Builder() { + // force use of static builder() method + } + + + /** + * Unique identifier of the payroll this liability came from + */ + public Builder payrollUuid(String payrollUuid) { + Utils.checkNotNull(payrollUuid, "payrollUuid"); + this.payrollUuid = payrollUuid; + return this; + } + + + /** + * Unique identifier of the tax type this liability is for + */ + public Builder uniqueTaxId(String uniqueTaxId) { + Utils.checkNotNull(uniqueTaxId, "uniqueTaxId"); + this.uniqueTaxId = uniqueTaxId; + return this; + } + + + /** + * The amount of this liability included in the tax payment + */ + public Builder amount(String amount) { + Utils.checkNotNull(amount, "amount"); + this.amount = amount; + return this; + } + + public TaxPaymentLineItem build() { + + return new TaxPaymentLineItem( + payrollUuid, uniqueTaxId, amount); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/TaxRequirement.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/TaxRequirement.java index 458179866..a3c86e48b 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/TaxRequirement.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/TaxRequirement.java @@ -74,6 +74,22 @@ public class TaxRequirement { @JsonProperty("editable") private Optional editable; + /** + * Whether this requirement, when blank, would block payroll processing for the company in this state. + * Stable across changes to the field's value: a `payroll_blocking: true` field reports `true` whether + * currently empty or populated. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("payroll_blocking") + private Optional payrollBlocking; + + /** + * Whether the current `value` is a default rather than an explicitly set one. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("default_value_applied") + private Optional defaultValueApplied; + @JsonCreator public TaxRequirement( @JsonProperty("key") Optional key, @@ -82,7 +98,9 @@ public TaxRequirement( @JsonProperty("description") JsonNullable description, @JsonProperty("value") JsonNullable value, @JsonProperty("metadata") Optional metadata, - @JsonProperty("editable") Optional editable) { + @JsonProperty("editable") Optional editable, + @JsonProperty("payroll_blocking") Optional payrollBlocking, + @JsonProperty("default_value_applied") Optional defaultValueApplied) { Utils.checkNotNull(key, "key"); Utils.checkNotNull(applicableIf, "applicableIf"); Utils.checkNotNull(label, "label"); @@ -90,6 +108,8 @@ public TaxRequirement( Utils.checkNotNull(value, "value"); Utils.checkNotNull(metadata, "metadata"); Utils.checkNotNull(editable, "editable"); + Utils.checkNotNull(payrollBlocking, "payrollBlocking"); + Utils.checkNotNull(defaultValueApplied, "defaultValueApplied"); this.key = key; this.applicableIf = applicableIf; this.label = label; @@ -97,12 +117,14 @@ public TaxRequirement( this.value = value; this.metadata = metadata; this.editable = editable; + this.payrollBlocking = payrollBlocking; + this.defaultValueApplied = defaultValueApplied; } public TaxRequirement() { this(Optional.empty(), Optional.empty(), Optional.empty(), JsonNullable.undefined(), JsonNullable.undefined(), Optional.empty(), - Optional.empty()); + Optional.empty(), Optional.empty(), Optional.empty()); } /** @@ -169,6 +191,24 @@ public Optional editable() { return editable; } + /** + * Whether this requirement, when blank, would block payroll processing for the company in this state. + * Stable across changes to the field's value: a `payroll_blocking: true` field reports `true` whether + * currently empty or populated. + */ + @JsonIgnore + public Optional payrollBlocking() { + return payrollBlocking; + } + + /** + * Whether the current `value` is a default rather than an explicitly set one. + */ + @JsonIgnore + public Optional defaultValueApplied() { + return defaultValueApplied; + } + public static Builder builder() { return new Builder(); } @@ -315,6 +355,48 @@ public TaxRequirement withEditable(Optional editable) { return this; } + /** + * Whether this requirement, when blank, would block payroll processing for the company in this state. + * Stable across changes to the field's value: a `payroll_blocking: true` field reports `true` whether + * currently empty or populated. + */ + public TaxRequirement withPayrollBlocking(boolean payrollBlocking) { + Utils.checkNotNull(payrollBlocking, "payrollBlocking"); + this.payrollBlocking = Optional.ofNullable(payrollBlocking); + return this; + } + + + /** + * Whether this requirement, when blank, would block payroll processing for the company in this state. + * Stable across changes to the field's value: a `payroll_blocking: true` field reports `true` whether + * currently empty or populated. + */ + public TaxRequirement withPayrollBlocking(Optional payrollBlocking) { + Utils.checkNotNull(payrollBlocking, "payrollBlocking"); + this.payrollBlocking = payrollBlocking; + return this; + } + + /** + * Whether the current `value` is a default rather than an explicitly set one. + */ + public TaxRequirement withDefaultValueApplied(boolean defaultValueApplied) { + Utils.checkNotNull(defaultValueApplied, "defaultValueApplied"); + this.defaultValueApplied = Optional.ofNullable(defaultValueApplied); + return this; + } + + + /** + * Whether the current `value` is a default rather than an explicitly set one. + */ + public TaxRequirement withDefaultValueApplied(Optional defaultValueApplied) { + Utils.checkNotNull(defaultValueApplied, "defaultValueApplied"); + this.defaultValueApplied = defaultValueApplied; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -331,7 +413,9 @@ public boolean equals(java.lang.Object o) { Utils.enhancedDeepEquals(this.description, other.description) && Utils.enhancedDeepEquals(this.value, other.value) && Utils.enhancedDeepEquals(this.metadata, other.metadata) && - Utils.enhancedDeepEquals(this.editable, other.editable); + Utils.enhancedDeepEquals(this.editable, other.editable) && + Utils.enhancedDeepEquals(this.payrollBlocking, other.payrollBlocking) && + Utils.enhancedDeepEquals(this.defaultValueApplied, other.defaultValueApplied); } @Override @@ -339,7 +423,7 @@ public int hashCode() { return Utils.enhancedHash( key, applicableIf, label, description, value, metadata, - editable); + editable, payrollBlocking, defaultValueApplied); } @Override @@ -351,7 +435,9 @@ public String toString() { "description", description, "value", value, "metadata", metadata, - "editable", editable); + "editable", editable, + "payrollBlocking", payrollBlocking, + "defaultValueApplied", defaultValueApplied); } @SuppressWarnings("UnusedReturnValue") @@ -371,6 +457,10 @@ public final static class Builder { private Optional editable = Optional.empty(); + private Optional payrollBlocking = Optional.empty(); + + private Optional defaultValueApplied = Optional.empty(); + private Builder() { // force use of static builder() method } @@ -518,12 +608,54 @@ public Builder editable(Optional editable) { return this; } + + /** + * Whether this requirement, when blank, would block payroll processing for the company in this state. + * Stable across changes to the field's value: a `payroll_blocking: true` field reports `true` whether + * currently empty or populated. + */ + public Builder payrollBlocking(boolean payrollBlocking) { + Utils.checkNotNull(payrollBlocking, "payrollBlocking"); + this.payrollBlocking = Optional.ofNullable(payrollBlocking); + return this; + } + + /** + * Whether this requirement, when blank, would block payroll processing for the company in this state. + * Stable across changes to the field's value: a `payroll_blocking: true` field reports `true` whether + * currently empty or populated. + */ + public Builder payrollBlocking(Optional payrollBlocking) { + Utils.checkNotNull(payrollBlocking, "payrollBlocking"); + this.payrollBlocking = payrollBlocking; + return this; + } + + + /** + * Whether the current `value` is a default rather than an explicitly set one. + */ + public Builder defaultValueApplied(boolean defaultValueApplied) { + Utils.checkNotNull(defaultValueApplied, "defaultValueApplied"); + this.defaultValueApplied = Optional.ofNullable(defaultValueApplied); + return this; + } + + /** + * Whether the current `value` is a default rather than an explicitly set one. + */ + public Builder defaultValueApplied(Optional defaultValueApplied) { + Utils.checkNotNull(defaultValueApplied, "defaultValueApplied"); + this.defaultValueApplied = defaultValueApplied; + return this; + } + public TaxRequirement build() { return new TaxRequirement( key, applicableIf, label, description, value, metadata, - editable); + editable, payrollBlocking, defaultValueApplied); } } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/UnknownBulkReportItem.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/UnknownBulkReportItem.java new file mode 100644 index 000000000..0302595dc --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/UnknownBulkReportItem.java @@ -0,0 +1,32 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ + +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.databind.JsonNode; +import com.gusto.embedded_api_v_2026_06_15.utils.UnknownType; +import java.lang.Override; +import java.lang.String; + + +/** + * UnknownBulkReportItem + * + *

    A single report inside a bulk batch. Required fields depend on `report_type`: `custom_report` + * requires `columns` and `file_type`; `general_ledger` requires `payroll_uuid` and `aggregation`. + */ +public class UnknownBulkReportItem extends UnknownType implements BulkReportItem { + + @JsonCreator + public UnknownBulkReportItem(JsonNode rawNode) { + super(rawNode); + } + + @Override + public String reportType() { + return extractDiscriminator("report_type").orElse("UNKNOWN"); + } + +} \ No newline at end of file diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/WarningObject.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/WarningObject.java new file mode 100644 index 000000000..af07f30c9 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/components/WarningObject.java @@ -0,0 +1,254 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.components; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.util.Optional; + + +public class WarningObject { + /** + * Specifies where the warning occurs. Typically identifies the attribute or parameter related to the + * warning. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("error_key") + private Optional errorKey; + + /** + * Specifies the type of warning. Can be used to build custom warning handling. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("category") + private Optional category; + + /** + * Provides details about the warning. The message can be surfaced directly to the end user. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("message") + private Optional message; + + @JsonCreator + public WarningObject( + @JsonProperty("error_key") Optional errorKey, + @JsonProperty("category") Optional category, + @JsonProperty("message") Optional message) { + Utils.checkNotNull(errorKey, "errorKey"); + Utils.checkNotNull(category, "category"); + Utils.checkNotNull(message, "message"); + this.errorKey = errorKey; + this.category = category; + this.message = message; + } + + public WarningObject() { + this(Optional.empty(), Optional.empty(), Optional.empty()); + } + + /** + * Specifies where the warning occurs. Typically identifies the attribute or parameter related to the + * warning. + */ + @JsonIgnore + public Optional errorKey() { + return errorKey; + } + + /** + * Specifies the type of warning. Can be used to build custom warning handling. + */ + @JsonIgnore + public Optional category() { + return category; + } + + /** + * Provides details about the warning. The message can be surfaced directly to the end user. + */ + @JsonIgnore + public Optional message() { + return message; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Specifies where the warning occurs. Typically identifies the attribute or parameter related to the + * warning. + */ + public WarningObject withErrorKey(String errorKey) { + Utils.checkNotNull(errorKey, "errorKey"); + this.errorKey = Optional.ofNullable(errorKey); + return this; + } + + + /** + * Specifies where the warning occurs. Typically identifies the attribute or parameter related to the + * warning. + */ + public WarningObject withErrorKey(Optional errorKey) { + Utils.checkNotNull(errorKey, "errorKey"); + this.errorKey = errorKey; + return this; + } + + /** + * Specifies the type of warning. Can be used to build custom warning handling. + */ + public WarningObject withCategory(String category) { + Utils.checkNotNull(category, "category"); + this.category = Optional.ofNullable(category); + return this; + } + + + /** + * Specifies the type of warning. Can be used to build custom warning handling. + */ + public WarningObject withCategory(Optional category) { + Utils.checkNotNull(category, "category"); + this.category = category; + return this; + } + + /** + * Provides details about the warning. The message can be surfaced directly to the end user. + */ + public WarningObject withMessage(String message) { + Utils.checkNotNull(message, "message"); + this.message = Optional.ofNullable(message); + return this; + } + + + /** + * Provides details about the warning. The message can be surfaced directly to the end user. + */ + public WarningObject withMessage(Optional message) { + Utils.checkNotNull(message, "message"); + this.message = message; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + WarningObject other = (WarningObject) o; + return + Utils.enhancedDeepEquals(this.errorKey, other.errorKey) && + Utils.enhancedDeepEquals(this.category, other.category) && + Utils.enhancedDeepEquals(this.message, other.message); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + errorKey, category, message); + } + + @Override + public String toString() { + return Utils.toString(WarningObject.class, + "errorKey", errorKey, + "category", category, + "message", message); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional errorKey = Optional.empty(); + + private Optional category = Optional.empty(); + + private Optional message = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * Specifies where the warning occurs. Typically identifies the attribute or parameter related to the + * warning. + */ + public Builder errorKey(String errorKey) { + Utils.checkNotNull(errorKey, "errorKey"); + this.errorKey = Optional.ofNullable(errorKey); + return this; + } + + /** + * Specifies where the warning occurs. Typically identifies the attribute or parameter related to the + * warning. + */ + public Builder errorKey(Optional errorKey) { + Utils.checkNotNull(errorKey, "errorKey"); + this.errorKey = errorKey; + return this; + } + + + /** + * Specifies the type of warning. Can be used to build custom warning handling. + */ + public Builder category(String category) { + Utils.checkNotNull(category, "category"); + this.category = Optional.ofNullable(category); + return this; + } + + /** + * Specifies the type of warning. Can be used to build custom warning handling. + */ + public Builder category(Optional category) { + Utils.checkNotNull(category, "category"); + this.category = category; + return this; + } + + + /** + * Provides details about the warning. The message can be surfaced directly to the end user. + */ + public Builder message(String message) { + Utils.checkNotNull(message, "message"); + this.message = Optional.ofNullable(message); + return this; + } + + /** + * Provides details about the warning. The message can be surfaced directly to the end user. + */ + public Builder message(Optional message) { + Utils.checkNotNull(message, "message"); + this.message = message; + return this; + } + + public WarningObject build() { + + return new WarningObject( + errorKey, category, message); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/errors/ConflictErrorObject.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/errors/ConflictErrorObject.java index 2323eb0a6..e2a814d7a 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/errors/ConflictErrorObject.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/errors/ConflictErrorObject.java @@ -115,8 +115,10 @@ public Optional deserializationException() { * *

    Conflict * - *

    This error occurs when the resource version provided does not match the current version. Retrieve - * the latest version and retry. + *

    This may happen when the resource version provided does not match the current version — retrieve the + * latest version and retry — or when the request conflicts with another in-progress operation on the + * same resource. See the [Errors + * Categories](https://docs.gusto.com/embedded-payroll/docs/error-categories) guide for more details. */ public static class Data { diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/errors/ForbiddenErrorObject.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/errors/ForbiddenErrorObject.java new file mode 100644 index 000000000..7d61779c5 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/errors/ForbiddenErrorObject.java @@ -0,0 +1,201 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.errors; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2026_06_15.models.components.EntityErrorObject; +import com.gusto.embedded_api_v_2026_06_15.utils.Blob; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import jakarta.annotation.Nullable; +import java.io.InputStream; +import java.lang.Deprecated; +import java.lang.Exception; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.lang.Throwable; +import java.net.http.HttpResponse; +import java.util.List; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; + +@SuppressWarnings("serial") +public class ForbiddenErrorObject extends GustoEmbeddedException { + + @Nullable + private final Data data; + + @Nullable + private final Throwable deserializationException; + + public ForbiddenErrorObject( + int code, + byte[] body, + HttpResponse rawResponse, + @Nullable Data data, + @Nullable Throwable deserializationException) { + super("API error occurred", code, body, rawResponse, null); + this.data = data; + this.deserializationException = deserializationException; + } + + /** + * Parse a response into an instance of ForbiddenErrorObject. If deserialization of the response body fails, + * the resulting ForbiddenErrorObject instance will have a null data() value and a non-null deserializationException(). + */ + public static ForbiddenErrorObject from(HttpResponse response) { + try { + byte[] bytes = Utils.extractByteArrayFromBody(response); + Data data = Utils.mapper().readValue(bytes, Data.class); + return new ForbiddenErrorObject(response.statusCode(), bytes, response, data, null); + } catch (Exception e) { + return new ForbiddenErrorObject(response.statusCode(), null, response, null, e); + } + } + + /** + * Parse a response into an instance of ForbiddenErrorObject asynchronously. If deserialization of the response body fails, + * the resulting ForbiddenErrorObject instance will have a null data() value and a non-null deserializationException(). + */ + public static CompletableFuture fromAsync(HttpResponse response) { + return response.body() + .toByteArray() + .handle((bytes, err) -> { + // if a body read error occurs, we want to transform the exception + if (err != null) { + throw new AsyncAPIException( + "Error reading response body: " + err.getMessage(), + response.statusCode(), + null, + response, + err); + } + + try { + return new ForbiddenErrorObject( + response.statusCode(), + bytes, + response, + Utils.mapper().readValue( + bytes, + new TypeReference() { + }), + null); + } catch (Exception e) { + return new ForbiddenErrorObject( + response.statusCode(), + bytes, + response, + null, + e); + } + }); + } + + @Deprecated + public Optional> errors() { + return data().map(Data::errors); + } + + public Optional data() { + return Optional.ofNullable(data); + } + + /** + * Returns the exception if an error occurs while deserializing the response body. + */ + public Optional deserializationException() { + return Optional.ofNullable(deserializationException); + } + /** + * Data + * + *

    Forbidden + * + *

    The targeted company has been archived because its EIN was reassigned to a replacement company. Use + * the replacement company referenced in the error metadata. + */ + public static class Data { + + @JsonProperty("errors") + private List errors; + + @JsonCreator + public Data( + @JsonProperty("errors") List errors) { + Utils.checkNotNull(errors, "errors"); + this.errors = errors; + } + + @JsonIgnore + public List errors() { + return errors; + } + + public static Builder builder() { + return new Builder(); + } + + + public Data withErrors(List errors) { + Utils.checkNotNull(errors, "errors"); + this.errors = errors; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + Data other = (Data) o; + return + Utils.enhancedDeepEquals(this.errors, other.errors); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + errors); + } + + @Override + public String toString() { + return Utils.toString(Data.class, + "errors", errors); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private List errors; + + private Builder() { + // force use of static builder() method + } + + + public Builder errors(List errors) { + Utils.checkNotNull(errors, "errors"); + this.errors = errors; + return this; + } + + public Data build() { + + return new Data( + errors); + } + + } + } + +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/errors/Metadata.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/errors/Metadata.java index ff22368e8..e471d1c9c 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/errors/Metadata.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/errors/Metadata.java @@ -16,17 +16,17 @@ public class Metadata { /** - * A categorization of the payroll blocker, e.g. "geocode_error" + * The UUID of the existing payroll cancellation batch that already used this idempotency key. */ @JsonInclude(Include.NON_ABSENT) - @JsonProperty("key") - private Optional key; + @JsonProperty("request_uuid") + private Optional requestUuid; @JsonCreator public Metadata( - @JsonProperty("key") Optional key) { - Utils.checkNotNull(key, "key"); - this.key = key; + @JsonProperty("request_uuid") Optional requestUuid) { + Utils.checkNotNull(requestUuid, "requestUuid"); + this.requestUuid = requestUuid; } public Metadata() { @@ -34,11 +34,11 @@ public Metadata() { } /** - * A categorization of the payroll blocker, e.g. "geocode_error" + * The UUID of the existing payroll cancellation batch that already used this idempotency key. */ @JsonIgnore - public Optional key() { - return key; + public Optional requestUuid() { + return requestUuid; } public static Builder builder() { @@ -47,21 +47,21 @@ public static Builder builder() { /** - * A categorization of the payroll blocker, e.g. "geocode_error" + * The UUID of the existing payroll cancellation batch that already used this idempotency key. */ - public Metadata withKey(String key) { - Utils.checkNotNull(key, "key"); - this.key = Optional.ofNullable(key); + public Metadata withRequestUuid(String requestUuid) { + Utils.checkNotNull(requestUuid, "requestUuid"); + this.requestUuid = Optional.ofNullable(requestUuid); return this; } /** - * A categorization of the payroll blocker, e.g. "geocode_error" + * The UUID of the existing payroll cancellation batch that already used this idempotency key. */ - public Metadata withKey(Optional key) { - Utils.checkNotNull(key, "key"); - this.key = key; + public Metadata withRequestUuid(Optional requestUuid) { + Utils.checkNotNull(requestUuid, "requestUuid"); + this.requestUuid = requestUuid; return this; } @@ -75,25 +75,25 @@ public boolean equals(java.lang.Object o) { } Metadata other = (Metadata) o; return - Utils.enhancedDeepEquals(this.key, other.key); + Utils.enhancedDeepEquals(this.requestUuid, other.requestUuid); } @Override public int hashCode() { return Utils.enhancedHash( - key); + requestUuid); } @Override public String toString() { return Utils.toString(Metadata.class, - "key", key); + "requestUuid", requestUuid); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private Optional key = Optional.empty(); + private Optional requestUuid = Optional.empty(); private Builder() { // force use of static builder() method @@ -101,27 +101,27 @@ private Builder() { /** - * A categorization of the payroll blocker, e.g. "geocode_error" + * The UUID of the existing payroll cancellation batch that already used this idempotency key. */ - public Builder key(String key) { - Utils.checkNotNull(key, "key"); - this.key = Optional.ofNullable(key); + public Builder requestUuid(String requestUuid) { + Utils.checkNotNull(requestUuid, "requestUuid"); + this.requestUuid = Optional.ofNullable(requestUuid); return this; } /** - * A categorization of the payroll blocker, e.g. "geocode_error" + * The UUID of the existing payroll cancellation batch that already used this idempotency key. */ - public Builder key(Optional key) { - Utils.checkNotNull(key, "key"); - this.key = key; + public Builder requestUuid(Optional requestUuid) { + Utils.checkNotNull(requestUuid, "requestUuid"); + this.requestUuid = requestUuid; return this; } public Metadata build() { return new Metadata( - key); + requestUuid); } } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/errors/PayrollBatchConflictError.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/errors/PayrollBatchConflictError.java new file mode 100644 index 000000000..cc3d204f2 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/errors/PayrollBatchConflictError.java @@ -0,0 +1,219 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.errors; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2026_06_15.utils.Blob; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import jakarta.annotation.Nullable; +import java.io.InputStream; +import java.lang.Deprecated; +import java.lang.Exception; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.lang.Throwable; +import java.net.http.HttpResponse; +import java.util.List; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; + +@SuppressWarnings("serial") +public class PayrollBatchConflictError extends GustoEmbeddedException { + + @Nullable + private final Data data; + + @Nullable + private final Throwable deserializationException; + + public PayrollBatchConflictError( + int code, + byte[] body, + HttpResponse rawResponse, + @Nullable Data data, + @Nullable Throwable deserializationException) { + super("API error occurred", code, body, rawResponse, null); + this.data = data; + this.deserializationException = deserializationException; + } + + /** + * Parse a response into an instance of PayrollBatchConflictError. If deserialization of the response body fails, + * the resulting PayrollBatchConflictError instance will have a null data() value and a non-null deserializationException(). + */ + public static PayrollBatchConflictError from(HttpResponse response) { + try { + byte[] bytes = Utils.extractByteArrayFromBody(response); + Data data = Utils.mapper().readValue(bytes, Data.class); + return new PayrollBatchConflictError(response.statusCode(), bytes, response, data, null); + } catch (Exception e) { + return new PayrollBatchConflictError(response.statusCode(), null, response, null, e); + } + } + + /** + * Parse a response into an instance of PayrollBatchConflictError asynchronously. If deserialization of the response body fails, + * the resulting PayrollBatchConflictError instance will have a null data() value and a non-null deserializationException(). + */ + public static CompletableFuture fromAsync(HttpResponse response) { + return response.body() + .toByteArray() + .handle((bytes, err) -> { + // if a body read error occurs, we want to transform the exception + if (err != null) { + throw new AsyncAPIException( + "Error reading response body: " + err.getMessage(), + response.statusCode(), + null, + response, + err); + } + + try { + return new PayrollBatchConflictError( + response.statusCode(), + bytes, + response, + Utils.mapper().readValue( + bytes, + new TypeReference() { + }), + null); + } catch (Exception e) { + return new PayrollBatchConflictError( + response.statusCode(), + bytes, + response, + null, + e); + } + }); + } + + @Deprecated + public Optional> errors() { + return data().flatMap(Data::errors); + } + + public Optional data() { + return Optional.ofNullable(data); + } + + /** + * Returns the exception if an error occurs while deserializing the response body. + */ + public Optional deserializationException() { + return Optional.ofNullable(deserializationException); + } + /** + * Data + * + *

    Error response when a payroll cancellation idempotency key has already been used by the same + * partner. + */ + public static class Data { + + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("errors") + private Optional> errors; + + @JsonCreator + public Data( + @JsonProperty("errors") Optional> errors) { + Utils.checkNotNull(errors, "errors"); + this.errors = errors; + } + + public Data() { + this(Optional.empty()); + } + + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> errors() { + return (Optional>) errors; + } + + public static Builder builder() { + return new Builder(); + } + + + public Data withErrors(List errors) { + Utils.checkNotNull(errors, "errors"); + this.errors = Optional.ofNullable(errors); + return this; + } + + + public Data withErrors(Optional> errors) { + Utils.checkNotNull(errors, "errors"); + this.errors = errors; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + Data other = (Data) o; + return + Utils.enhancedDeepEquals(this.errors, other.errors); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + errors); + } + + @Override + public String toString() { + return Utils.toString(Data.class, + "errors", errors); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional> errors = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + public Builder errors(List errors) { + Utils.checkNotNull(errors, "errors"); + this.errors = Optional.ofNullable(errors); + return this; + } + + public Builder errors(Optional> errors) { + Utils.checkNotNull(errors, "errors"); + this.errors = errors; + return this; + } + + public Data build() { + + return new Data( + errors); + } + + } + } + +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/errors/PayrollBatchConflictErrorErrors.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/errors/PayrollBatchConflictErrorErrors.java new file mode 100644 index 000000000..daeafe8fa --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/errors/PayrollBatchConflictErrorErrors.java @@ -0,0 +1,296 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.errors; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class PayrollBatchConflictErrorErrors { + /** + * The key identifying the error source. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("error_key") + private Optional errorKey; + + /** + * The error category. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("category") + private Optional category; + + /** + * Human-readable error message. + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("message") + private Optional message; + + + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("metadata") + private Optional metadata; + + @JsonCreator + public PayrollBatchConflictErrorErrors( + @JsonProperty("error_key") Optional errorKey, + @JsonProperty("category") Optional category, + @JsonProperty("message") Optional message, + @JsonProperty("metadata") Optional metadata) { + Utils.checkNotNull(errorKey, "errorKey"); + Utils.checkNotNull(category, "category"); + Utils.checkNotNull(message, "message"); + Utils.checkNotNull(metadata, "metadata"); + this.errorKey = errorKey; + this.category = category; + this.message = message; + this.metadata = metadata; + } + + public PayrollBatchConflictErrorErrors() { + this(Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty()); + } + + /** + * The key identifying the error source. + */ + @JsonIgnore + public Optional errorKey() { + return errorKey; + } + + /** + * The error category. + */ + @JsonIgnore + public Optional category() { + return category; + } + + /** + * Human-readable error message. + */ + @JsonIgnore + public Optional message() { + return message; + } + + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional metadata() { + return (Optional) metadata; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * The key identifying the error source. + */ + public PayrollBatchConflictErrorErrors withErrorKey(String errorKey) { + Utils.checkNotNull(errorKey, "errorKey"); + this.errorKey = Optional.ofNullable(errorKey); + return this; + } + + + /** + * The key identifying the error source. + */ + public PayrollBatchConflictErrorErrors withErrorKey(Optional errorKey) { + Utils.checkNotNull(errorKey, "errorKey"); + this.errorKey = errorKey; + return this; + } + + /** + * The error category. + */ + public PayrollBatchConflictErrorErrors withCategory(String category) { + Utils.checkNotNull(category, "category"); + this.category = Optional.ofNullable(category); + return this; + } + + + /** + * The error category. + */ + public PayrollBatchConflictErrorErrors withCategory(Optional category) { + Utils.checkNotNull(category, "category"); + this.category = category; + return this; + } + + /** + * Human-readable error message. + */ + public PayrollBatchConflictErrorErrors withMessage(String message) { + Utils.checkNotNull(message, "message"); + this.message = Optional.ofNullable(message); + return this; + } + + + /** + * Human-readable error message. + */ + public PayrollBatchConflictErrorErrors withMessage(Optional message) { + Utils.checkNotNull(message, "message"); + this.message = message; + return this; + } + + public PayrollBatchConflictErrorErrors withMetadata(Metadata metadata) { + Utils.checkNotNull(metadata, "metadata"); + this.metadata = Optional.ofNullable(metadata); + return this; + } + + + public PayrollBatchConflictErrorErrors withMetadata(Optional metadata) { + Utils.checkNotNull(metadata, "metadata"); + this.metadata = metadata; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PayrollBatchConflictErrorErrors other = (PayrollBatchConflictErrorErrors) o; + return + Utils.enhancedDeepEquals(this.errorKey, other.errorKey) && + Utils.enhancedDeepEquals(this.category, other.category) && + Utils.enhancedDeepEquals(this.message, other.message) && + Utils.enhancedDeepEquals(this.metadata, other.metadata); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + errorKey, category, message, + metadata); + } + + @Override + public String toString() { + return Utils.toString(PayrollBatchConflictErrorErrors.class, + "errorKey", errorKey, + "category", category, + "message", message, + "metadata", metadata); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional errorKey = Optional.empty(); + + private Optional category = Optional.empty(); + + private Optional message = Optional.empty(); + + private Optional metadata = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * The key identifying the error source. + */ + public Builder errorKey(String errorKey) { + Utils.checkNotNull(errorKey, "errorKey"); + this.errorKey = Optional.ofNullable(errorKey); + return this; + } + + /** + * The key identifying the error source. + */ + public Builder errorKey(Optional errorKey) { + Utils.checkNotNull(errorKey, "errorKey"); + this.errorKey = errorKey; + return this; + } + + + /** + * The error category. + */ + public Builder category(String category) { + Utils.checkNotNull(category, "category"); + this.category = Optional.ofNullable(category); + return this; + } + + /** + * The error category. + */ + public Builder category(Optional category) { + Utils.checkNotNull(category, "category"); + this.category = category; + return this; + } + + + /** + * Human-readable error message. + */ + public Builder message(String message) { + Utils.checkNotNull(message, "message"); + this.message = Optional.ofNullable(message); + return this; + } + + /** + * Human-readable error message. + */ + public Builder message(Optional message) { + Utils.checkNotNull(message, "message"); + this.message = message; + return this; + } + + + public Builder metadata(Metadata metadata) { + Utils.checkNotNull(metadata, "metadata"); + this.metadata = Optional.ofNullable(metadata); + return this; + } + + public Builder metadata(Optional metadata) { + Utils.checkNotNull(metadata, "metadata"); + this.metadata = metadata; + return this; + } + + public PayrollBatchConflictErrorErrors build() { + + return new PayrollBatchConflictErrorErrors( + errorKey, category, message, + metadata); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/errors/PayrollBlockersErrorErrors.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/errors/PayrollBlockersErrorErrors.java index df984fda8..868919b4c 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/errors/PayrollBlockersErrorErrors.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/errors/PayrollBlockersErrorErrors.java @@ -40,14 +40,14 @@ public class PayrollBlockersErrorErrors { @JsonInclude(Include.NON_ABSENT) @JsonProperty("metadata") - private Optional metadata; + private Optional metadata; @JsonCreator public PayrollBlockersErrorErrors( @JsonProperty("error_key") Optional errorKey, @JsonProperty("category") Optional category, @JsonProperty("message") Optional message, - @JsonProperty("metadata") Optional metadata) { + @JsonProperty("metadata") Optional metadata) { Utils.checkNotNull(errorKey, "errorKey"); Utils.checkNotNull(category, "category"); Utils.checkNotNull(message, "message"); @@ -89,8 +89,8 @@ public Optional message() { @SuppressWarnings("unchecked") @JsonIgnore - public Optional metadata() { - return (Optional) metadata; + public Optional metadata() { + return (Optional) metadata; } public static Builder builder() { @@ -155,14 +155,14 @@ public PayrollBlockersErrorErrors withMessage(Optional message) { return this; } - public PayrollBlockersErrorErrors withMetadata(Metadata metadata) { + public PayrollBlockersErrorErrors withMetadata(PayrollBlockersErrorMetadata metadata) { Utils.checkNotNull(metadata, "metadata"); this.metadata = Optional.ofNullable(metadata); return this; } - public PayrollBlockersErrorErrors withMetadata(Optional metadata) { + public PayrollBlockersErrorErrors withMetadata(Optional metadata) { Utils.checkNotNull(metadata, "metadata"); this.metadata = metadata; return this; @@ -209,7 +209,7 @@ public final static class Builder { private Optional message = Optional.empty(); - private Optional metadata = Optional.empty(); + private Optional metadata = Optional.empty(); private Builder() { // force use of static builder() method @@ -273,13 +273,13 @@ public Builder message(Optional message) { } - public Builder metadata(Metadata metadata) { + public Builder metadata(PayrollBlockersErrorMetadata metadata) { Utils.checkNotNull(metadata, "metadata"); this.metadata = Optional.ofNullable(metadata); return this; } - public Builder metadata(Optional metadata) { + public Builder metadata(Optional metadata) { Utils.checkNotNull(metadata, "metadata"); this.metadata = metadata; return this; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/errors/PayrollBlockersErrorMetadata.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/errors/PayrollBlockersErrorMetadata.java new file mode 100644 index 000000000..0eec5f6fb --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/errors/PayrollBlockersErrorMetadata.java @@ -0,0 +1,128 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.errors; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.util.Optional; + + +public class PayrollBlockersErrorMetadata { + /** + * A categorization of the payroll blocker, e.g. "geocode_error" + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("key") + private Optional key; + + @JsonCreator + public PayrollBlockersErrorMetadata( + @JsonProperty("key") Optional key) { + Utils.checkNotNull(key, "key"); + this.key = key; + } + + public PayrollBlockersErrorMetadata() { + this(Optional.empty()); + } + + /** + * A categorization of the payroll blocker, e.g. "geocode_error" + */ + @JsonIgnore + public Optional key() { + return key; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * A categorization of the payroll blocker, e.g. "geocode_error" + */ + public PayrollBlockersErrorMetadata withKey(String key) { + Utils.checkNotNull(key, "key"); + this.key = Optional.ofNullable(key); + return this; + } + + + /** + * A categorization of the payroll blocker, e.g. "geocode_error" + */ + public PayrollBlockersErrorMetadata withKey(Optional key) { + Utils.checkNotNull(key, "key"); + this.key = key; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PayrollBlockersErrorMetadata other = (PayrollBlockersErrorMetadata) o; + return + Utils.enhancedDeepEquals(this.key, other.key); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + key); + } + + @Override + public String toString() { + return Utils.toString(PayrollBlockersErrorMetadata.class, + "key", key); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional key = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * A categorization of the payroll blocker, e.g. "geocode_error" + */ + public Builder key(String key) { + Utils.checkNotNull(key, "key"); + this.key = Optional.ofNullable(key); + return this; + } + + /** + * A categorization of the payroll blocker, e.g. "geocode_error" + */ + public Builder key(Optional key) { + Utils.checkNotNull(key, "key"); + this.key = key; + return this; + } + + public PayrollBlockersErrorMetadata build() { + + return new PayrollBlockersErrorMetadata( + key); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/Batch.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/Batch.java index 943b9c6be..aac3c5eeb 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/Batch.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/Batch.java @@ -5,181 +5,68 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonIgnore; -import com.fasterxml.jackson.annotation.JsonInclude.Include; -import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.annotation.JsonProperty; import com.gusto.embedded_api_v_2026_06_15.utils.Utils; import java.lang.Override; import java.lang.String; -import java.lang.SuppressWarnings; -import java.util.List; -import java.util.Optional; public class Batch { /** - * The type of entity to create + * The type of entity to act on. */ @JsonProperty("entity_type") private EntityType entityType; - - @JsonProperty("person") - private Person person; - - /** - * Home address for the employee - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("home_address") - private Optional homeAddress; - - /** - * Specify the company work location for the employee - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("work_address") - private Optional workAddress; - - /** - * Job details for the employee (required if compensation is provided) - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("job") - private Optional job; - /** - * Department details for the employee + * The UUID of the payroll to cancel. Payrolls the partner is not authorized to access, or that do not + * exist, appear in the response's `exclusions` array. */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("department") - private Optional department; + @JsonProperty("uuid") + private String uuid; /** - * Compensation details for the employee (requires job to be provided) + * The UUID of the company that owns the payroll. The partner must be mapped to this company. */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("compensation") - private Optional compensation; - - /** - * Creates employee bank account(s) and payment method(s) for direct deposit. Payments can be split - * across accounts by Percentage or by Amount. If splitting payments by `Percentage`, all splits must - * have a `split_amount` and the percentages must add up to `100`. - * If splitting payments by `Amount`, the priority is set based on the order of the bank accounts in - * the array and the last bank account is the remainder account (should have `split_amount` set to - * `null`). - */ - @JsonInclude(Include.NON_ABSENT) - @JsonProperty("bank_accounts") - private Optional> bankAccounts; + @JsonProperty("company_uuid") + private String companyUuid; @JsonCreator public Batch( @JsonProperty("entity_type") EntityType entityType, - @JsonProperty("person") Person person, - @JsonProperty("home_address") Optional homeAddress, - @JsonProperty("work_address") Optional workAddress, - @JsonProperty("job") Optional job, - @JsonProperty("department") Optional department, - @JsonProperty("compensation") Optional compensation, - @JsonProperty("bank_accounts") Optional> bankAccounts) { + @JsonProperty("uuid") String uuid, + @JsonProperty("company_uuid") String companyUuid) { Utils.checkNotNull(entityType, "entityType"); - Utils.checkNotNull(person, "person"); - Utils.checkNotNull(homeAddress, "homeAddress"); - Utils.checkNotNull(workAddress, "workAddress"); - Utils.checkNotNull(job, "job"); - Utils.checkNotNull(department, "department"); - Utils.checkNotNull(compensation, "compensation"); - Utils.checkNotNull(bankAccounts, "bankAccounts"); + Utils.checkNotNull(uuid, "uuid"); + Utils.checkNotNull(companyUuid, "companyUuid"); this.entityType = entityType; - this.person = person; - this.homeAddress = homeAddress; - this.workAddress = workAddress; - this.job = job; - this.department = department; - this.compensation = compensation; - this.bankAccounts = bankAccounts; - } - - public Batch( - EntityType entityType, - Person person) { - this(entityType, person, Optional.empty(), - Optional.empty(), Optional.empty(), Optional.empty(), - Optional.empty(), Optional.empty()); + this.uuid = uuid; + this.companyUuid = companyUuid; } /** - * The type of entity to create + * The type of entity to act on. */ @JsonIgnore public EntityType entityType() { return entityType; } - @JsonIgnore - public Person person() { - return person; - } - /** - * Home address for the employee + * The UUID of the payroll to cancel. Payrolls the partner is not authorized to access, or that do not + * exist, appear in the response's `exclusions` array. */ - @SuppressWarnings("unchecked") @JsonIgnore - public Optional homeAddress() { - return (Optional) homeAddress; + public String uuid() { + return uuid; } /** - * Specify the company work location for the employee + * The UUID of the company that owns the payroll. The partner must be mapped to this company. */ - @SuppressWarnings("unchecked") @JsonIgnore - public Optional workAddress() { - return (Optional) workAddress; - } - - /** - * Job details for the employee (required if compensation is provided) - */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional job() { - return (Optional) job; - } - - /** - * Department details for the employee - */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional department() { - return (Optional) department; - } - - /** - * Compensation details for the employee (requires job to be provided) - */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional compensation() { - return (Optional) compensation; - } - - /** - * Creates employee bank account(s) and payment method(s) for direct deposit. Payments can be split - * across accounts by Percentage or by Amount. If splitting payments by `Percentage`, all splits must - * have a `split_amount` and the percentages must add up to `100`. - * If splitting payments by `Amount`, the priority is set based on the order of the bank accounts in - * the array and the last bank account is the remainder account (should have `split_amount` set to - * `null`). - */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional> bankAccounts() { - return (Optional>) bankAccounts; + public String companyUuid() { + return companyUuid; } public static Builder builder() { @@ -188,7 +75,7 @@ public static Builder builder() { /** - * The type of entity to create + * The type of entity to act on. */ public Batch withEntityType(EntityType entityType) { Utils.checkNotNull(entityType, "entityType"); @@ -196,133 +83,22 @@ public Batch withEntityType(EntityType entityType) { return this; } - public Batch withPerson(Person person) { - Utils.checkNotNull(person, "person"); - this.person = person; - return this; - } - - /** - * Home address for the employee - */ - public Batch withHomeAddress(PostV1CompaniesCompanyIdPeopleBatchesHomeAddress homeAddress) { - Utils.checkNotNull(homeAddress, "homeAddress"); - this.homeAddress = Optional.ofNullable(homeAddress); - return this; - } - - - /** - * Home address for the employee - */ - public Batch withHomeAddress(Optional homeAddress) { - Utils.checkNotNull(homeAddress, "homeAddress"); - this.homeAddress = homeAddress; - return this; - } - - /** - * Specify the company work location for the employee - */ - public Batch withWorkAddress(PostV1CompaniesCompanyIdPeopleBatchesWorkAddress workAddress) { - Utils.checkNotNull(workAddress, "workAddress"); - this.workAddress = Optional.ofNullable(workAddress); - return this; - } - - - /** - * Specify the company work location for the employee - */ - public Batch withWorkAddress(Optional workAddress) { - Utils.checkNotNull(workAddress, "workAddress"); - this.workAddress = workAddress; - return this; - } - - /** - * Job details for the employee (required if compensation is provided) - */ - public Batch withJob(PostV1CompaniesCompanyIdPeopleBatchesJob job) { - Utils.checkNotNull(job, "job"); - this.job = Optional.ofNullable(job); - return this; - } - - - /** - * Job details for the employee (required if compensation is provided) - */ - public Batch withJob(Optional job) { - Utils.checkNotNull(job, "job"); - this.job = job; - return this; - } - - /** - * Department details for the employee - */ - public Batch withDepartment(Department department) { - Utils.checkNotNull(department, "department"); - this.department = Optional.ofNullable(department); - return this; - } - - /** - * Department details for the employee + * The UUID of the payroll to cancel. Payrolls the partner is not authorized to access, or that do not + * exist, appear in the response's `exclusions` array. */ - public Batch withDepartment(Optional department) { - Utils.checkNotNull(department, "department"); - this.department = department; + public Batch withUuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; return this; } /** - * Compensation details for the employee (requires job to be provided) + * The UUID of the company that owns the payroll. The partner must be mapped to this company. */ - public Batch withCompensation(Compensation compensation) { - Utils.checkNotNull(compensation, "compensation"); - this.compensation = Optional.ofNullable(compensation); - return this; - } - - - /** - * Compensation details for the employee (requires job to be provided) - */ - public Batch withCompensation(Optional compensation) { - Utils.checkNotNull(compensation, "compensation"); - this.compensation = compensation; - return this; - } - - /** - * Creates employee bank account(s) and payment method(s) for direct deposit. Payments can be split - * across accounts by Percentage or by Amount. If splitting payments by `Percentage`, all splits must - * have a `split_amount` and the percentages must add up to `100`. - * If splitting payments by `Amount`, the priority is set based on the order of the bank accounts in - * the array and the last bank account is the remainder account (should have `split_amount` set to - * `null`). - */ - public Batch withBankAccounts(List bankAccounts) { - Utils.checkNotNull(bankAccounts, "bankAccounts"); - this.bankAccounts = Optional.ofNullable(bankAccounts); - return this; - } - - - /** - * Creates employee bank account(s) and payment method(s) for direct deposit. Payments can be split - * across accounts by Percentage or by Amount. If splitting payments by `Percentage`, all splits must - * have a `split_amount` and the percentages must add up to `100`. - * If splitting payments by `Amount`, the priority is set based on the order of the bank accounts in - * the array and the last bank account is the remainder account (should have `split_amount` set to - * `null`). - */ - public Batch withBankAccounts(Optional> bankAccounts) { - Utils.checkNotNull(bankAccounts, "bankAccounts"); - this.bankAccounts = bankAccounts; + public Batch withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; return this; } @@ -337,34 +113,22 @@ public boolean equals(java.lang.Object o) { Batch other = (Batch) o; return Utils.enhancedDeepEquals(this.entityType, other.entityType) && - Utils.enhancedDeepEquals(this.person, other.person) && - Utils.enhancedDeepEquals(this.homeAddress, other.homeAddress) && - Utils.enhancedDeepEquals(this.workAddress, other.workAddress) && - Utils.enhancedDeepEquals(this.job, other.job) && - Utils.enhancedDeepEquals(this.department, other.department) && - Utils.enhancedDeepEquals(this.compensation, other.compensation) && - Utils.enhancedDeepEquals(this.bankAccounts, other.bankAccounts); + Utils.enhancedDeepEquals(this.uuid, other.uuid) && + Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid); } @Override public int hashCode() { return Utils.enhancedHash( - entityType, person, homeAddress, - workAddress, job, department, - compensation, bankAccounts); + entityType, uuid, companyUuid); } @Override public String toString() { return Utils.toString(Batch.class, "entityType", entityType, - "person", person, - "homeAddress", homeAddress, - "workAddress", workAddress, - "job", job, - "department", department, - "compensation", compensation, - "bankAccounts", bankAccounts); + "uuid", uuid, + "companyUuid", companyUuid); } @SuppressWarnings("UnusedReturnValue") @@ -372,19 +136,9 @@ public final static class Builder { private EntityType entityType; - private Person person; - - private Optional homeAddress = Optional.empty(); - - private Optional workAddress = Optional.empty(); - - private Optional job = Optional.empty(); + private String uuid; - private Optional department = Optional.empty(); - - private Optional compensation = Optional.empty(); - - private Optional> bankAccounts = Optional.empty(); + private String companyUuid; private Builder() { // force use of static builder() method @@ -392,7 +146,7 @@ private Builder() { /** - * The type of entity to create + * The type of entity to act on. */ public Builder entityType(EntityType entityType) { Utils.checkNotNull(entityType, "entityType"); @@ -401,142 +155,30 @@ public Builder entityType(EntityType entityType) { } - public Builder person(Person person) { - Utils.checkNotNull(person, "person"); - this.person = person; - return this; - } - - - /** - * Home address for the employee - */ - public Builder homeAddress(PostV1CompaniesCompanyIdPeopleBatchesHomeAddress homeAddress) { - Utils.checkNotNull(homeAddress, "homeAddress"); - this.homeAddress = Optional.ofNullable(homeAddress); - return this; - } - - /** - * Home address for the employee - */ - public Builder homeAddress(Optional homeAddress) { - Utils.checkNotNull(homeAddress, "homeAddress"); - this.homeAddress = homeAddress; - return this; - } - - /** - * Specify the company work location for the employee + * The UUID of the payroll to cancel. Payrolls the partner is not authorized to access, or that do not + * exist, appear in the response's `exclusions` array. */ - public Builder workAddress(PostV1CompaniesCompanyIdPeopleBatchesWorkAddress workAddress) { - Utils.checkNotNull(workAddress, "workAddress"); - this.workAddress = Optional.ofNullable(workAddress); + public Builder uuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; return this; } - /** - * Specify the company work location for the employee - */ - public Builder workAddress(Optional workAddress) { - Utils.checkNotNull(workAddress, "workAddress"); - this.workAddress = workAddress; - return this; - } - - - /** - * Job details for the employee (required if compensation is provided) - */ - public Builder job(PostV1CompaniesCompanyIdPeopleBatchesJob job) { - Utils.checkNotNull(job, "job"); - this.job = Optional.ofNullable(job); - return this; - } - - /** - * Job details for the employee (required if compensation is provided) - */ - public Builder job(Optional job) { - Utils.checkNotNull(job, "job"); - this.job = job; - return this; - } - - - /** - * Department details for the employee - */ - public Builder department(Department department) { - Utils.checkNotNull(department, "department"); - this.department = Optional.ofNullable(department); - return this; - } - - /** - * Department details for the employee - */ - public Builder department(Optional department) { - Utils.checkNotNull(department, "department"); - this.department = department; - return this; - } - - - /** - * Compensation details for the employee (requires job to be provided) - */ - public Builder compensation(Compensation compensation) { - Utils.checkNotNull(compensation, "compensation"); - this.compensation = Optional.ofNullable(compensation); - return this; - } - - /** - * Compensation details for the employee (requires job to be provided) - */ - public Builder compensation(Optional compensation) { - Utils.checkNotNull(compensation, "compensation"); - this.compensation = compensation; - return this; - } - - - /** - * Creates employee bank account(s) and payment method(s) for direct deposit. Payments can be split - * across accounts by Percentage or by Amount. If splitting payments by `Percentage`, all splits must - * have a `split_amount` and the percentages must add up to `100`. - * If splitting payments by `Amount`, the priority is set based on the order of the bank accounts in - * the array and the last bank account is the remainder account (should have `split_amount` set to - * `null`). - */ - public Builder bankAccounts(List bankAccounts) { - Utils.checkNotNull(bankAccounts, "bankAccounts"); - this.bankAccounts = Optional.ofNullable(bankAccounts); - return this; - } /** - * Creates employee bank account(s) and payment method(s) for direct deposit. Payments can be split - * across accounts by Percentage or by Amount. If splitting payments by `Percentage`, all splits must - * have a `split_amount` and the percentages must add up to `100`. - * If splitting payments by `Amount`, the priority is set based on the order of the bank accounts in - * the array and the last bank account is the remainder account (should have `split_amount` set to - * `null`). + * The UUID of the company that owns the payroll. The partner must be mapped to this company. */ - public Builder bankAccounts(Optional> bankAccounts) { - Utils.checkNotNull(bankAccounts, "bankAccounts"); - this.bankAccounts = bankAccounts; + public Builder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; return this; } public Batch build() { return new Batch( - entityType, person, homeAddress, - workAddress, job, department, - compensation, bankAccounts); + entityType, uuid, companyUuid); } } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/BatchAction.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/BatchAction.java index a6d571c4c..e06e69b69 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/BatchAction.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/BatchAction.java @@ -11,10 +11,10 @@ /** * BatchAction * - *

    The action to perform on the batch + *

    The action to perform on the batch. Only `cancel` is supported. */ public enum BatchAction { - CREATE("create"); + CANCEL("cancel"); @JsonValue private final String value; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteDepartmentRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteDepartmentRequest.java index 54ee76181..b3e43244f 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteDepartmentRequest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteDepartmentRequest.java @@ -16,12 +16,6 @@ public class DeleteDepartmentRequest { - /** - * The UUID of the department - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=department_uuid") - private String departmentUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class DeleteDepartmentRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the department + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=department_uuid") + private String departmentUuid; + @JsonCreator public DeleteDepartmentRequest( - String departmentUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); + Optional xGustoAPIVersion, + String departmentUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.departmentUuid = departmentUuid; + Utils.checkNotNull(departmentUuid, "departmentUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.departmentUuid = departmentUuid; } public DeleteDepartmentRequest( String departmentUuid) { - this(departmentUuid, Optional.empty()); - } - - /** - * The UUID of the department - */ - @JsonIgnore - public String departmentUuid() { - return departmentUuid; + this(Optional.empty(), departmentUuid); } /** @@ -64,20 +56,19 @@ public Optional xGustoAPIVersion() { return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the department */ - public DeleteDepartmentRequest withDepartmentUuid(String departmentUuid) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); - this.departmentUuid = departmentUuid; - return this; + @JsonIgnore + public String departmentUuid() { + return departmentUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public DeleteDepartmentRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String departmentUuid; + private Builder() { // force use of static builder() method } - /** - * The UUID of the department - */ - public Builder departmentUuid(String departmentUuid) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); - this.departmentUuid = departmentUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String departmentUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public DeleteDepartmentRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public DeleteDepartmentRequestBuilder departmentUuid(String departmentUuid) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); - this.departmentUuid = departmentUuid; - return this; - } public DeleteDepartmentRequestBuilder xGustoAPIVersion(DeleteDepartmentHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public DeleteDepartmentRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion; + /** * The UUID of the company */ @@ -35,37 +43,40 @@ public class DeleteV1CompaniesCompanyIdPayrollsRequest { @SpeakeasyMetadata("queryParam:style=form,explode=true,name=async") private Optional async; - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; - @JsonCreator public DeleteV1CompaniesCompanyIdPayrollsRequest( + Optional xGustoAPIVersion, String companyId, String payrollId, - Optional async, - Optional xGustoAPIVersion) { + Optional async) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(companyId, "companyId"); Utils.checkNotNull(payrollId, "payrollId"); Utils.checkNotNull(async, "async"); - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; this.companyId = companyId; this.payrollId = payrollId; this.async = async; - this.xGustoAPIVersion = xGustoAPIVersion; } public DeleteV1CompaniesCompanyIdPayrollsRequest( String companyId, String payrollId) { - this(companyId, payrollId, Optional.empty(), + this(Optional.empty(), companyId, payrollId, Optional.empty()); } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + /** * The UUID of the company */ @@ -90,21 +101,33 @@ public Optional async() { return async; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional xGustoAPIVersion() { - return (Optional) xGustoAPIVersion; + public DeleteV1CompaniesCompanyIdPayrollsRequest withXGustoAPIVersion(DeleteV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; } - public static Builder builder() { - return new Builder(); - } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public DeleteV1CompaniesCompanyIdPayrollsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } /** * The UUID of the company @@ -143,29 +166,6 @@ public DeleteV1CompaniesCompanyIdPayrollsRequest withAsync(Optional asy return this; } - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public DeleteV1CompaniesCompanyIdPayrollsRequest withXGustoAPIVersion(DeleteV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); - return this; - } - - - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public DeleteV1CompaniesCompanyIdPayrollsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } - @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -176,44 +176,67 @@ public boolean equals(java.lang.Object o) { } DeleteV1CompaniesCompanyIdPayrollsRequest other = (DeleteV1CompaniesCompanyIdPayrollsRequest) o; return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.companyId, other.companyId) && Utils.enhancedDeepEquals(this.payrollId, other.payrollId) && - Utils.enhancedDeepEquals(this.async, other.async) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.async, other.async); } @Override public int hashCode() { return Utils.enhancedHash( - companyId, payrollId, async, - xGustoAPIVersion); + xGustoAPIVersion, companyId, payrollId, + async); } @Override public String toString() { return Utils.toString(DeleteV1CompaniesCompanyIdPayrollsRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, "companyId", companyId, "payrollId", payrollId, - "async", async, - "xGustoAPIVersion", xGustoAPIVersion); + "async", async); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { + private Optional xGustoAPIVersion; + private String companyId; private String payrollId; private Optional async = Optional.empty(); - private Optional xGustoAPIVersion; - private Builder() { // force use of static builder() method } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(DeleteV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + /** * The UUID of the company */ @@ -252,37 +275,14 @@ public Builder async(Optional async) { return this; } - - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public Builder xGustoAPIVersion(DeleteV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); - return this; - } - - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } - public DeleteV1CompaniesCompanyIdPayrollsRequest build() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } return new DeleteV1CompaniesCompanyIdPayrollsRequest( - companyId, payrollId, async, - xGustoAPIVersion); + xGustoAPIVersion, companyId, payrollId, + async); } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1CompaniesCompanyIdPayrollsRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1CompaniesCompanyIdPayrollsRequestBuilder.java index 30c4a264b..5ed248001 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1CompaniesCompanyIdPayrollsRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1CompaniesCompanyIdPayrollsRequestBuilder.java @@ -17,19 +17,31 @@ public class DeleteV1CompaniesCompanyIdPayrollsRequestBuilder { - private String companyId; - private String payrollId; - private Optional async = Optional.empty(); private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String companyId; + private String payrollId; + private Optional async = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public DeleteV1CompaniesCompanyIdPayrollsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } + + public DeleteV1CompaniesCompanyIdPayrollsRequestBuilder xGustoAPIVersion(DeleteV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public DeleteV1CompaniesCompanyIdPayrollsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } public DeleteV1CompaniesCompanyIdPayrollsRequestBuilder companyId(String companyId) { Utils.checkNotNull(companyId, "companyId"); @@ -54,18 +66,6 @@ public DeleteV1CompaniesCompanyIdPayrollsRequestBuilder async(Optional this.async = async; return this; } - - public DeleteV1CompaniesCompanyIdPayrollsRequestBuilder xGustoAPIVersion(DeleteV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); - return this; - } - - public DeleteV1CompaniesCompanyIdPayrollsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } private DeleteV1CompaniesCompanyIdPayrollsRequest buildRequest() { @@ -73,10 +73,10 @@ private DeleteV1CompaniesCompanyIdPayrollsRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - DeleteV1CompaniesCompanyIdPayrollsRequest request = new DeleteV1CompaniesCompanyIdPayrollsRequest(companyId, + DeleteV1CompaniesCompanyIdPayrollsRequest request = new DeleteV1CompaniesCompanyIdPayrollsRequest(xGustoAPIVersion, + companyId, payrollId, - async, - xGustoAPIVersion); + async); return request; } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.java index f4e4c2ee9..aafd0f5e9 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.java @@ -16,6 +16,14 @@ public class DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + /** * The UUID of the company */ @@ -28,47 +36,23 @@ public class DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest { @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=signatory_uuid") private String signatoryUuid; - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; - @JsonCreator public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest( + Optional xGustoAPIVersion, String companyUuid, - String signatoryUuid, - Optional xGustoAPIVersion) { + String signatoryUuid) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(signatoryUuid, "signatoryUuid"); - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; this.companyUuid = companyUuid; this.signatoryUuid = signatoryUuid; - this.xGustoAPIVersion = xGustoAPIVersion; } public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest( String companyUuid, String signatoryUuid) { - this(companyUuid, signatoryUuid, Optional.empty()); - } - - /** - * The UUID of the company - */ - @JsonIgnore - public String companyUuid() { - return companyUuid; - } - - /** - * The UUID of the signatory - */ - @JsonIgnore - public String signatoryUuid() { - return signatoryUuid; + this(Optional.empty(), companyUuid, signatoryUuid); } /** @@ -82,29 +66,27 @@ public Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the company */ - public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest withCompanyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; + @JsonIgnore + public String companyUuid() { + return companyUuid; } /** * The UUID of the signatory */ - public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest withSignatoryUuid(String signatoryUuid) { - Utils.checkNotNull(signatoryUuid, "signatoryUuid"); - this.signatoryUuid = signatoryUuid; - return this; + @JsonIgnore + public String signatoryUuid() { + return signatoryUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -128,6 +110,24 @@ public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest withXGustoAPI return this; } + /** + * The UUID of the company + */ + public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + /** + * The UUID of the signatory + */ + public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest withSignatoryUuid(String signatoryUuid) { + Utils.checkNotNull(signatoryUuid, "signatoryUuid"); + this.signatoryUuid = signatoryUuid; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -138,59 +138,39 @@ public boolean equals(java.lang.Object o) { } DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest other = (DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest) o; return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && - Utils.enhancedDeepEquals(this.signatoryUuid, other.signatoryUuid) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.signatoryUuid, other.signatoryUuid); } @Override public int hashCode() { return Utils.enhancedHash( - companyUuid, signatoryUuid, xGustoAPIVersion); + xGustoAPIVersion, companyUuid, signatoryUuid); } @Override public String toString() { return Utils.toString(DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, "companyUuid", companyUuid, - "signatoryUuid", signatoryUuid, - "xGustoAPIVersion", xGustoAPIVersion); + "signatoryUuid", signatoryUuid); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { + private Optional xGustoAPIVersion; + private String companyUuid; private String signatoryUuid; - private Optional xGustoAPIVersion; - private Builder() { // force use of static builder() method } - /** - * The UUID of the company - */ - public Builder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - - /** - * The UUID of the signatory - */ - public Builder signatoryUuid(String signatoryUuid) { - Utils.checkNotNull(signatoryUuid, "signatoryUuid"); - this.signatoryUuid = signatoryUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -213,13 +193,33 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String companyUuid; + private String signatoryUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder signatoryUuid(String signatoryUuid) { - Utils.checkNotNull(signatoryUuid, "signatoryUuid"); - this.signatoryUuid = signatoryUuid; - return this; - } public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder xGustoAPIVersion(DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -53,15 +41,27 @@ public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder xGusto return this; } + public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder signatoryUuid(String signatoryUuid) { + Utils.checkNotNull(signatoryUuid, "signatoryUuid"); + this.signatoryUuid = signatoryUuid; + return this; + } + private DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest request = new DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest(companyUuid, - signatoryUuid, - xGustoAPIVersion); + DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest request = new DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest(xGustoAPIVersion, + companyUuid, + signatoryUuid); return request; } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.java index f238c8f13..9b970164e 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.java @@ -16,12 +16,6 @@ public class DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest { - /** - * The UUID of the contractor payment group - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=contractor_payment_group_uuid") - private String contractorPaymentGroupUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the contractor payment group + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=contractor_payment_group_uuid") + private String contractorPaymentGroupUuid; + @JsonCreator public DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest( - String contractorPaymentGroupUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); + Optional xGustoAPIVersion, + String contractorPaymentGroupUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; + Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; } public DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest( String contractorPaymentGroupUuid) { - this(contractorPaymentGroupUuid, Optional.empty()); - } - - /** - * The UUID of the contractor payment group - */ - @JsonIgnore - public String contractorPaymentGroupUuid() { - return contractorPaymentGroupUuid; + this(Optional.empty(), contractorPaymentGroupUuid); } /** @@ -64,20 +56,19 @@ public Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the contractor payment group */ - public DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest withContractorPaymentGroupUuid(String contractorPaymentGroupUuid) { - Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); - this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; - return this; + @JsonIgnore + public String contractorPaymentGroupUuid() { + return contractorPaymentGroupUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest withXGusto return this; } + /** + * The UUID of the contractor payment group + */ + public DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest withContractorPaymentGroupUuid(String contractorPaymentGroupUuid) { + Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); + this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -111,45 +111,35 @@ public boolean equals(java.lang.Object o) { } DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest other = (DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest) o; return - Utils.enhancedDeepEquals(this.contractorPaymentGroupUuid, other.contractorPaymentGroupUuid) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.contractorPaymentGroupUuid, other.contractorPaymentGroupUuid); } @Override public int hashCode() { return Utils.enhancedHash( - contractorPaymentGroupUuid, xGustoAPIVersion); + xGustoAPIVersion, contractorPaymentGroupUuid); } @Override public String toString() { return Utils.toString(DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.class, - "contractorPaymentGroupUuid", contractorPaymentGroupUuid, - "xGustoAPIVersion", xGustoAPIVersion); + "xGustoAPIVersion", xGustoAPIVersion, + "contractorPaymentGroupUuid", contractorPaymentGroupUuid); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String contractorPaymentGroupUuid; - private Optional xGustoAPIVersion; + private String contractorPaymentGroupUuid; + private Builder() { // force use of static builder() method } - /** - * The UUID of the contractor payment group - */ - public Builder contractorPaymentGroupUuid(String contractorPaymentGroupUuid) { - Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); - this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String contractorPaymentGroupUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder contractorPaymentGroupUuid(String contractorPaymentGroupUuid) { - Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); - this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; - return this; - } public DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder xGustoAPIVersion(DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder xGu return this; } + public DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder contractorPaymentGroupUuid(String contractorPaymentGroupUuid) { + Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); + this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; + return this; + } + private DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest request = new DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest(contractorPaymentGroupUuid, - xGustoAPIVersion); + DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest request = new DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest(xGustoAPIVersion, + contractorPaymentGroupUuid); return request; } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.java new file mode 100644 index 000000000..6593057b2 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion + * + *

    Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ +public enum DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion { + TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15("2026-06-15"); + + @JsonValue + private final String value; + + DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion o: DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest.java new file mode 100644 index 000000000..6eb9c5fc0 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest.java @@ -0,0 +1,191 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2026_06_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2026_06_15.utils.SpeakeasyMetadata; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + + /** + * The UUID of the contractor + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=contractor_uuid") + private String contractorUuid; + + @JsonCreator + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest( + Optional xGustoAPIVersion, + String contractorUuid) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.xGustoAPIVersion = xGustoAPIVersion; + this.contractorUuid = contractorUuid; + } + + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest( + String contractorUuid) { + this(Optional.empty(), contractorUuid); + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + + /** + * The UUID of the contractor + */ + @JsonIgnore + public String contractorUuid() { + return contractorUuid; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest withXGustoAPIVersion(DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + /** + * The UUID of the contractor + */ + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest withContractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest other = (DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest) o; + return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.contractorUuid, other.contractorUuid); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + xGustoAPIVersion, contractorUuid); + } + + @Override + public String toString() { + return Utils.toString(DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, + "contractorUuid", contractorUuid); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional xGustoAPIVersion; + + private String contractorUuid; + + private Builder() { + // force use of static builder() method + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + + /** + * The UUID of the contractor + */ + public Builder contractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest build() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + return new DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest( + xGustoAPIVersion, contractorUuid); + } + + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "X-Gusto-API-Version", + "\"2026-06-15\"", + new TypeReference>() {}); + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder.java new file mode 100644 index 000000000..81652a08f --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder.java @@ -0,0 +1,75 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import static com.gusto.embedded_api_v_2026_06_15.operations.Operations.RequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2026_06_15.SDKConfiguration; +import com.gusto.embedded_api_v_2026_06_15.operations.DeleteV1ContractorsContractorUuidMemberPortalInvitations; +import com.gusto.embedded_api_v_2026_06_15.utils.Headers; +import com.gusto.embedded_api_v_2026_06_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.String; +import java.util.Optional; + +public class DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder { + + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2026-06-15\"", + new TypeReference>() {}); + private String contractorUuid; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder xGustoAPIVersion(DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder contractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + + + private DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest request = new DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest(xGustoAPIVersion, + contractorUuid); + + return request; + } + + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse call() { + + RequestOperation operation + = new DeleteV1ContractorsContractorUuidMemberPortalInvitations.Sync(sdkConfiguration, _headers); + DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest request = buildRequest(); + + return operation.handleResponse(operation.doRequest(request)); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2026-06-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse.java new file mode 100644 index 000000000..10633c3e2 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse.java @@ -0,0 +1,181 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2026_06_15.utils.Response; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.io.InputStream; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.net.http.HttpResponse; + + +public class DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse implements Response { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + @JsonCreator + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse other = (DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse); + } + + @Override + public String toString() { + return Utils.toString(DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse build() { + + return new DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse( + contentType, statusCode, rawResponse); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1ContractorsContractorUuidRehireRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1ContractorsContractorUuidRehireRequest.java index 780ac02ed..db45be904 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1ContractorsContractorUuidRehireRequest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1ContractorsContractorUuidRehireRequest.java @@ -16,12 +16,6 @@ public class DeleteV1ContractorsContractorUuidRehireRequest { - /** - * The UUID of the contractor - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=contractor_uuid") - private String contractorUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class DeleteV1ContractorsContractorUuidRehireRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the contractor + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=contractor_uuid") + private String contractorUuid; + @JsonCreator public DeleteV1ContractorsContractorUuidRehireRequest( - String contractorUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); + Optional xGustoAPIVersion, + String contractorUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.contractorUuid = contractorUuid; + Utils.checkNotNull(contractorUuid, "contractorUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.contractorUuid = contractorUuid; } public DeleteV1ContractorsContractorUuidRehireRequest( String contractorUuid) { - this(contractorUuid, Optional.empty()); - } - - /** - * The UUID of the contractor - */ - @JsonIgnore - public String contractorUuid() { - return contractorUuid; + this(Optional.empty(), contractorUuid); } /** @@ -64,20 +56,19 @@ public Optional x return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the contractor */ - public DeleteV1ContractorsContractorUuidRehireRequest withContractorUuid(String contractorUuid) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); - this.contractorUuid = contractorUuid; - return this; + @JsonIgnore + public String contractorUuid() { + return contractorUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public DeleteV1ContractorsContractorUuidRehireRequest withXGustoAPIVersion(Optio return this; } + /** + * The UUID of the contractor + */ + public DeleteV1ContractorsContractorUuidRehireRequest withContractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -111,45 +111,35 @@ public boolean equals(java.lang.Object o) { } DeleteV1ContractorsContractorUuidRehireRequest other = (DeleteV1ContractorsContractorUuidRehireRequest) o; return - Utils.enhancedDeepEquals(this.contractorUuid, other.contractorUuid) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.contractorUuid, other.contractorUuid); } @Override public int hashCode() { return Utils.enhancedHash( - contractorUuid, xGustoAPIVersion); + xGustoAPIVersion, contractorUuid); } @Override public String toString() { return Utils.toString(DeleteV1ContractorsContractorUuidRehireRequest.class, - "contractorUuid", contractorUuid, - "xGustoAPIVersion", xGustoAPIVersion); + "xGustoAPIVersion", xGustoAPIVersion, + "contractorUuid", contractorUuid); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String contractorUuid; - private Optional xGustoAPIVersion; + private String contractorUuid; + private Builder() { // force use of static builder() method } - /** - * The UUID of the contractor - */ - public Builder contractorUuid(String contractorUuid) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); - this.contractorUuid = contractorUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String contractorUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public DeleteV1ContractorsContractorUuidRehireRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public DeleteV1ContractorsContractorUuidRehireRequestBuilder contractorUuid(String contractorUuid) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); - this.contractorUuid = contractorUuid; - return this; - } public DeleteV1ContractorsContractorUuidRehireRequestBuilder xGustoAPIVersion(DeleteV1ContractorsContractorUuidRehireHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public DeleteV1ContractorsContractorUuidRehireRequestBuilder xGustoAPIVersion(Op return this; } + public DeleteV1ContractorsContractorUuidRehireRequestBuilder contractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + private DeleteV1ContractorsContractorUuidRehireRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - DeleteV1ContractorsContractorUuidRehireRequest request = new DeleteV1ContractorsContractorUuidRehireRequest(contractorUuid, - xGustoAPIVersion); + DeleteV1ContractorsContractorUuidRehireRequest request = new DeleteV1ContractorsContractorUuidRehireRequest(xGustoAPIVersion, + contractorUuid); return request; } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1ContractorsContractorUuidTerminationRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1ContractorsContractorUuidTerminationRequest.java index 18252a283..21783199b 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1ContractorsContractorUuidTerminationRequest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1ContractorsContractorUuidTerminationRequest.java @@ -16,12 +16,6 @@ public class DeleteV1ContractorsContractorUuidTerminationRequest { - /** - * The UUID of the contractor - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=contractor_uuid") - private String contractorUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class DeleteV1ContractorsContractorUuidTerminationRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the contractor + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=contractor_uuid") + private String contractorUuid; + @JsonCreator public DeleteV1ContractorsContractorUuidTerminationRequest( - String contractorUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); + Optional xGustoAPIVersion, + String contractorUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.contractorUuid = contractorUuid; + Utils.checkNotNull(contractorUuid, "contractorUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.contractorUuid = contractorUuid; } public DeleteV1ContractorsContractorUuidTerminationRequest( String contractorUuid) { - this(contractorUuid, Optional.empty()); - } - - /** - * The UUID of the contractor - */ - @JsonIgnore - public String contractorUuid() { - return contractorUuid; + this(Optional.empty(), contractorUuid); } /** @@ -64,20 +56,19 @@ public Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the contractor */ - public DeleteV1ContractorsContractorUuidTerminationRequest withContractorUuid(String contractorUuid) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); - this.contractorUuid = contractorUuid; - return this; + @JsonIgnore + public String contractorUuid() { + return contractorUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public DeleteV1ContractorsContractorUuidTerminationRequest withXGustoAPIVersion( return this; } + /** + * The UUID of the contractor + */ + public DeleteV1ContractorsContractorUuidTerminationRequest withContractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -111,45 +111,35 @@ public boolean equals(java.lang.Object o) { } DeleteV1ContractorsContractorUuidTerminationRequest other = (DeleteV1ContractorsContractorUuidTerminationRequest) o; return - Utils.enhancedDeepEquals(this.contractorUuid, other.contractorUuid) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.contractorUuid, other.contractorUuid); } @Override public int hashCode() { return Utils.enhancedHash( - contractorUuid, xGustoAPIVersion); + xGustoAPIVersion, contractorUuid); } @Override public String toString() { return Utils.toString(DeleteV1ContractorsContractorUuidTerminationRequest.class, - "contractorUuid", contractorUuid, - "xGustoAPIVersion", xGustoAPIVersion); + "xGustoAPIVersion", xGustoAPIVersion, + "contractorUuid", contractorUuid); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String contractorUuid; - private Optional xGustoAPIVersion; + private String contractorUuid; + private Builder() { // force use of static builder() method } - /** - * The UUID of the contractor - */ - public Builder contractorUuid(String contractorUuid) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); - this.contractorUuid = contractorUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String contractorUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public DeleteV1ContractorsContractorUuidTerminationRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public DeleteV1ContractorsContractorUuidTerminationRequestBuilder contractorUuid(String contractorUuid) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); - this.contractorUuid = contractorUuid; - return this; - } public DeleteV1ContractorsContractorUuidTerminationRequestBuilder xGustoAPIVersion(DeleteV1ContractorsContractorUuidTerminationHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public DeleteV1ContractorsContractorUuidTerminationRequestBuilder xGustoAPIVersi return this; } + public DeleteV1ContractorsContractorUuidTerminationRequestBuilder contractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + private DeleteV1ContractorsContractorUuidTerminationRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - DeleteV1ContractorsContractorUuidTerminationRequest request = new DeleteV1ContractorsContractorUuidTerminationRequest(contractorUuid, - xGustoAPIVersion); + DeleteV1ContractorsContractorUuidTerminationRequest request = new DeleteV1ContractorsContractorUuidTerminationRequest(xGustoAPIVersion, + contractorUuid); return request; } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.java new file mode 100644 index 000000000..26ef3abed --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion + * + *

    Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ +public enum DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion { + TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15("2026-06-15"); + + @JsonValue + private final String value; + + DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion o: DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest.java new file mode 100644 index 000000000..19c6000e4 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest.java @@ -0,0 +1,191 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2026_06_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2026_06_15.utils.SpeakeasyMetadata; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + + /** + * The UUID of the employee + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=employee_id") + private String employeeId; + + @JsonCreator + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest( + Optional xGustoAPIVersion, + String employeeId) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(employeeId, "employeeId"); + this.xGustoAPIVersion = xGustoAPIVersion; + this.employeeId = employeeId; + } + + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest( + String employeeId) { + this(Optional.empty(), employeeId); + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + + /** + * The UUID of the employee + */ + @JsonIgnore + public String employeeId() { + return employeeId; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest withXGustoAPIVersion(DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + /** + * The UUID of the employee + */ + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest withEmployeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest other = (DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest) o; + return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.employeeId, other.employeeId); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + xGustoAPIVersion, employeeId); + } + + @Override + public String toString() { + return Utils.toString(DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, + "employeeId", employeeId); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional xGustoAPIVersion; + + private String employeeId; + + private Builder() { + // force use of static builder() method + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + + /** + * The UUID of the employee + */ + public Builder employeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest build() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + return new DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest( + xGustoAPIVersion, employeeId); + } + + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "X-Gusto-API-Version", + "\"2026-06-15\"", + new TypeReference>() {}); + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java new file mode 100644 index 000000000..a74a088aa --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java @@ -0,0 +1,75 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import static com.gusto.embedded_api_v_2026_06_15.operations.Operations.RequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2026_06_15.SDKConfiguration; +import com.gusto.embedded_api_v_2026_06_15.operations.DeleteV1EmployeesEmployeeIdMemberPortalInvitations; +import com.gusto.embedded_api_v_2026_06_15.utils.Headers; +import com.gusto.embedded_api_v_2026_06_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.String; +import java.util.Optional; + +public class DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder { + + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2026-06-15\"", + new TypeReference>() {}); + private String employeeId; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder xGustoAPIVersion(DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder employeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + + + private DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest request = new DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest(xGustoAPIVersion, + employeeId); + + return request; + } + + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse call() { + + RequestOperation operation + = new DeleteV1EmployeesEmployeeIdMemberPortalInvitations.Sync(sdkConfiguration, _headers); + DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest request = buildRequest(); + + return operation.handleResponse(operation.doRequest(request)); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2026-06-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java new file mode 100644 index 000000000..1fe68eab5 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java @@ -0,0 +1,181 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2026_06_15.utils.Response; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.io.InputStream; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.net.http.HttpResponse; + + +public class DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse implements Response { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + @JsonCreator + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse other = (DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse); + } + + @Override + public String toString() { + return Utils.toString(DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse build() { + + return new DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse( + contentType, statusCode, rawResponse); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1JobsJobIdRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1JobsJobIdRequest.java index ee082f19a..342c4e1ae 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1JobsJobIdRequest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/DeleteV1JobsJobIdRequest.java @@ -16,12 +16,6 @@ public class DeleteV1JobsJobIdRequest { - /** - * The UUID of the job - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=job_id") - private String jobId; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class DeleteV1JobsJobIdRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the job + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=job_id") + private String jobId; + @JsonCreator public DeleteV1JobsJobIdRequest( - String jobId, - Optional xGustoAPIVersion) { - Utils.checkNotNull(jobId, "jobId"); + Optional xGustoAPIVersion, + String jobId) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.jobId = jobId; + Utils.checkNotNull(jobId, "jobId"); this.xGustoAPIVersion = xGustoAPIVersion; + this.jobId = jobId; } public DeleteV1JobsJobIdRequest( String jobId) { - this(jobId, Optional.empty()); - } - - /** - * The UUID of the job - */ - @JsonIgnore - public String jobId() { - return jobId; + this(Optional.empty(), jobId); } /** @@ -64,20 +56,19 @@ public Optional xGustoAPIVersion() { return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the job */ - public DeleteV1JobsJobIdRequest withJobId(String jobId) { - Utils.checkNotNull(jobId, "jobId"); - this.jobId = jobId; - return this; + @JsonIgnore + public String jobId() { + return jobId; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public DeleteV1JobsJobIdRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String jobId; + private Builder() { // force use of static builder() method } - /** - * The UUID of the job - */ - public Builder jobId(String jobId) { - Utils.checkNotNull(jobId, "jobId"); - this.jobId = jobId; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String jobId; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public DeleteV1JobsJobIdRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public DeleteV1JobsJobIdRequestBuilder jobId(String jobId) { - Utils.checkNotNull(jobId, "jobId"); - this.jobId = jobId; - return this; - } public DeleteV1JobsJobIdRequestBuilder xGustoAPIVersion(DeleteV1JobsJobIdHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public DeleteV1JobsJobIdRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion; + /** + * The webhook subscription UUID. + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=webhook_subscription_uuid") + private String webhookSubscriptionUuid; + @JsonCreator public DeleteV1WebhookSubscriptionUuidRequest( - String webhookSubscriptionUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); + Optional xGustoAPIVersion, + String webhookSubscriptionUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; + Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.webhookSubscriptionUuid = webhookSubscriptionUuid; } public DeleteV1WebhookSubscriptionUuidRequest( String webhookSubscriptionUuid) { - this(webhookSubscriptionUuid, Optional.empty()); - } - - /** - * The webhook subscription UUID. - */ - @JsonIgnore - public String webhookSubscriptionUuid() { - return webhookSubscriptionUuid; + this(Optional.empty(), webhookSubscriptionUuid); } /** @@ -64,20 +56,19 @@ public Optional xGustoAPI return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The webhook subscription UUID. */ - public DeleteV1WebhookSubscriptionUuidRequest withWebhookSubscriptionUuid(String webhookSubscriptionUuid) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; - return this; + @JsonIgnore + public String webhookSubscriptionUuid() { + return webhookSubscriptionUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public DeleteV1WebhookSubscriptionUuidRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String webhookSubscriptionUuid; + private Builder() { // force use of static builder() method } - /** - * The webhook subscription UUID. - */ - public Builder webhookSubscriptionUuid(String webhookSubscriptionUuid) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String webhookSubscriptionUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -34,12 +34,6 @@ public DeleteV1WebhookSubscriptionUuidRequestBuilder security(DeleteV1WebhookSub this.security = security; return this; } - - public DeleteV1WebhookSubscriptionUuidRequestBuilder webhookSubscriptionUuid(String webhookSubscriptionUuid) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; - return this; - } public DeleteV1WebhookSubscriptionUuidRequestBuilder xGustoAPIVersion(DeleteV1WebhookSubscriptionUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -53,14 +47,20 @@ public DeleteV1WebhookSubscriptionUuidRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion; + /** + * The UUID of the work address + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=work_address_uuid") + private String workAddressUuid; + @JsonCreator public DeleteV1WorkAddressesWorkAddressUuidRequest( - String workAddressUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(workAddressUuid, "workAddressUuid"); + Optional xGustoAPIVersion, + String workAddressUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.workAddressUuid = workAddressUuid; + Utils.checkNotNull(workAddressUuid, "workAddressUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.workAddressUuid = workAddressUuid; } public DeleteV1WorkAddressesWorkAddressUuidRequest( String workAddressUuid) { - this(workAddressUuid, Optional.empty()); - } - - /** - * The UUID of the work address - */ - @JsonIgnore - public String workAddressUuid() { - return workAddressUuid; + this(Optional.empty(), workAddressUuid); } /** @@ -64,20 +56,19 @@ public Optional xGus return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the work address */ - public DeleteV1WorkAddressesWorkAddressUuidRequest withWorkAddressUuid(String workAddressUuid) { - Utils.checkNotNull(workAddressUuid, "workAddressUuid"); - this.workAddressUuid = workAddressUuid; - return this; + @JsonIgnore + public String workAddressUuid() { + return workAddressUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public DeleteV1WorkAddressesWorkAddressUuidRequest withXGustoAPIVersion(Optional return this; } + /** + * The UUID of the work address + */ + public DeleteV1WorkAddressesWorkAddressUuidRequest withWorkAddressUuid(String workAddressUuid) { + Utils.checkNotNull(workAddressUuid, "workAddressUuid"); + this.workAddressUuid = workAddressUuid; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -111,45 +111,35 @@ public boolean equals(java.lang.Object o) { } DeleteV1WorkAddressesWorkAddressUuidRequest other = (DeleteV1WorkAddressesWorkAddressUuidRequest) o; return - Utils.enhancedDeepEquals(this.workAddressUuid, other.workAddressUuid) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.workAddressUuid, other.workAddressUuid); } @Override public int hashCode() { return Utils.enhancedHash( - workAddressUuid, xGustoAPIVersion); + xGustoAPIVersion, workAddressUuid); } @Override public String toString() { return Utils.toString(DeleteV1WorkAddressesWorkAddressUuidRequest.class, - "workAddressUuid", workAddressUuid, - "xGustoAPIVersion", xGustoAPIVersion); + "xGustoAPIVersion", xGustoAPIVersion, + "workAddressUuid", workAddressUuid); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String workAddressUuid; - private Optional xGustoAPIVersion; + private String workAddressUuid; + private Builder() { // force use of static builder() method } - /** - * The UUID of the work address - */ - public Builder workAddressUuid(String workAddressUuid) { - Utils.checkNotNull(workAddressUuid, "workAddressUuid"); - this.workAddressUuid = workAddressUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String workAddressUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public DeleteV1WorkAddressesWorkAddressUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public DeleteV1WorkAddressesWorkAddressUuidRequestBuilder workAddressUuid(String workAddressUuid) { - Utils.checkNotNull(workAddressUuid, "workAddressUuid"); - this.workAddressUuid = workAddressUuid; - return this; - } public DeleteV1WorkAddressesWorkAddressUuidRequestBuilder xGustoAPIVersion(DeleteV1WorkAddressesWorkAddressUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public DeleteV1WorkAddressesWorkAddressUuidRequestBuilder xGustoAPIVersion(Optio return this; } + public DeleteV1WorkAddressesWorkAddressUuidRequestBuilder workAddressUuid(String workAddressUuid) { + Utils.checkNotNull(workAddressUuid, "workAddressUuid"); + this.workAddressUuid = workAddressUuid; + return this; + } + private DeleteV1WorkAddressesWorkAddressUuidRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - DeleteV1WorkAddressesWorkAddressUuidRequest request = new DeleteV1WorkAddressesWorkAddressUuidRequest(workAddressUuid, - xGustoAPIVersion); + DeleteV1WorkAddressesWorkAddressUuidRequest request = new DeleteV1WorkAddressesWorkAddressUuidRequest(xGustoAPIVersion, + workAddressUuid); return request; } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/EntityType.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/EntityType.java index 95d1eab47..4d6546414 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/EntityType.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/EntityType.java @@ -11,10 +11,10 @@ /** * EntityType * - *

    The type of entity to create + *

    The type of entity to act on. */ public enum EntityType { - EMPLOYEE("employee"); + PAYROLL("payroll"); @JsonValue private final String value; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetCompaniesCompanyUuidWireInRequestUuidRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetCompaniesCompanyUuidWireInRequestUuidRequest.java index 7ce93863e..9244b1840 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetCompaniesCompanyUuidWireInRequestUuidRequest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetCompaniesCompanyUuidWireInRequestUuidRequest.java @@ -17,12 +17,6 @@ public class GetCompaniesCompanyUuidWireInRequestUuidRequest { - /** - * The UUID of the company - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") - private String companyUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -31,6 +25,12 @@ public class GetCompaniesCompanyUuidWireInRequestUuidRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") + private String companyUuid; + /** * The page that is requested. When unspecified, will load all objects unless endpoint forces * pagination. @@ -46,34 +46,26 @@ public class GetCompaniesCompanyUuidWireInRequestUuidRequest { @JsonCreator public GetCompaniesCompanyUuidWireInRequestUuidRequest( - String companyUuid, Optional xGustoAPIVersion, + String companyUuid, Optional page, Optional per) { - Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(page, "page"); Utils.checkNotNull(per, "per"); - this.companyUuid = companyUuid; this.xGustoAPIVersion = xGustoAPIVersion; + this.companyUuid = companyUuid; this.page = page; this.per = per; } public GetCompaniesCompanyUuidWireInRequestUuidRequest( String companyUuid) { - this(companyUuid, Optional.empty(), Optional.empty(), + this(Optional.empty(), companyUuid, Optional.empty(), Optional.empty()); } - /** - * The UUID of the company - */ - @JsonIgnore - public String companyUuid() { - return companyUuid; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -85,6 +77,14 @@ public Optional return (Optional) xGustoAPIVersion; } + /** + * The UUID of the company + */ + @JsonIgnore + public String companyUuid() { + return companyUuid; + } + /** * The page that is requested. When unspecified, will load all objects unless endpoint forces * pagination. @@ -107,15 +107,6 @@ public static Builder builder() { } - /** - * The UUID of the company - */ - public GetCompaniesCompanyUuidWireInRequestUuidRequest withCompanyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -139,6 +130,15 @@ public GetCompaniesCompanyUuidWireInRequestUuidRequest withXGustoAPIVersion(Opti return this; } + /** + * The UUID of the company + */ + public GetCompaniesCompanyUuidWireInRequestUuidRequest withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + /** * The page that is requested. When unspecified, will load all objects unless endpoint forces * pagination. @@ -189,8 +189,8 @@ public boolean equals(java.lang.Object o) { } GetCompaniesCompanyUuidWireInRequestUuidRequest other = (GetCompaniesCompanyUuidWireInRequestUuidRequest) o; return - Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && Utils.enhancedDeepEquals(this.page, other.page) && Utils.enhancedDeepEquals(this.per, other.per); } @@ -198,15 +198,15 @@ public boolean equals(java.lang.Object o) { @Override public int hashCode() { return Utils.enhancedHash( - companyUuid, xGustoAPIVersion, page, + xGustoAPIVersion, companyUuid, page, per); } @Override public String toString() { return Utils.toString(GetCompaniesCompanyUuidWireInRequestUuidRequest.class, - "companyUuid", companyUuid, "xGustoAPIVersion", xGustoAPIVersion, + "companyUuid", companyUuid, "page", page, "per", per); } @@ -214,10 +214,10 @@ public String toString() { @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String companyUuid; - private Optional xGustoAPIVersion; + private String companyUuid; + private Optional page = Optional.empty(); private Optional per = Optional.empty(); @@ -227,16 +227,6 @@ private Builder() { } - /** - * The UUID of the company - */ - public Builder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -260,6 +250,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String companyUuid; private Optional page = Optional.empty(); private Optional per = Optional.empty(); private final SDKConfiguration sdkConfiguration; @@ -30,12 +30,6 @@ public class GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder { public GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder xGustoAPIVersion(GetCompaniesCompanyUuidWireInRequestUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -48,6 +42,12 @@ public GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder xGustoAPIVersion(O this.xGustoAPIVersion = xGustoAPIVersion; return this; } + + public GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } public GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder page(long page) { Utils.checkNotNull(page, "page"); @@ -79,8 +79,8 @@ private GetCompaniesCompanyUuidWireInRequestUuidRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetCompaniesCompanyUuidWireInRequestUuidRequest request = new GetCompaniesCompanyUuidWireInRequestUuidRequest(companyUuid, - xGustoAPIVersion, + GetCompaniesCompanyUuidWireInRequestUuidRequest request = new GetCompaniesCompanyUuidWireInRequestUuidRequest(xGustoAPIVersion, + companyUuid, page, per); diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetCompaniesDepartmentsRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetCompaniesDepartmentsRequest.java index 623191f89..f6460ac6c 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetCompaniesDepartmentsRequest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetCompaniesDepartmentsRequest.java @@ -16,12 +16,6 @@ public class GetCompaniesDepartmentsRequest { - /** - * The UUID of the company - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") - private String companyUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class GetCompaniesDepartmentsRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") + private String companyUuid; + @JsonCreator public GetCompaniesDepartmentsRequest( - String companyUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(companyUuid, "companyUuid"); + Optional xGustoAPIVersion, + String companyUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.companyUuid = companyUuid; + Utils.checkNotNull(companyUuid, "companyUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.companyUuid = companyUuid; } public GetCompaniesDepartmentsRequest( String companyUuid) { - this(companyUuid, Optional.empty()); - } - - /** - * The UUID of the company - */ - @JsonIgnore - public String companyUuid() { - return companyUuid; + this(Optional.empty(), companyUuid); } /** @@ -64,20 +56,19 @@ public Optional xGustoAPIVersion( return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the company */ - public GetCompaniesDepartmentsRequest withCompanyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; + @JsonIgnore + public String companyUuid() { + return companyUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetCompaniesDepartmentsRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String companyUuid; + private Builder() { // force use of static builder() method } - /** - * The UUID of the company - */ - public Builder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String companyUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetCompaniesDepartmentsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetCompaniesDepartmentsRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public GetCompaniesDepartmentsRequestBuilder xGustoAPIVersion(GetCompaniesDepartmentsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public GetCompaniesDepartmentsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion; + /** * The UUID of the company for which you would like to return notifications */ @@ -27,14 +35,6 @@ public class GetCompanyNotificationsRequest { @SpeakeasyMetadata("queryParam:style=form,explode=true,name=status") private Optional status; - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; - /** * The page that is requested. When unspecified, will load all objects unless endpoint forces * pagination. @@ -50,29 +50,40 @@ public class GetCompanyNotificationsRequest { @JsonCreator public GetCompanyNotificationsRequest( + Optional xGustoAPIVersion, String companyUuid, Optional status, - Optional xGustoAPIVersion, Optional page, Optional per) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(status, "status"); - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(page, "page"); Utils.checkNotNull(per, "per"); + this.xGustoAPIVersion = xGustoAPIVersion; this.companyUuid = companyUuid; this.status = status; - this.xGustoAPIVersion = xGustoAPIVersion; this.page = page; this.per = per; } public GetCompanyNotificationsRequest( String companyUuid) { - this(companyUuid, Optional.empty(), Optional.empty(), + this(Optional.empty(), companyUuid, Optional.empty(), Optional.empty(), Optional.empty()); } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + /** * The UUID of the company for which you would like to return notifications */ @@ -87,17 +98,6 @@ public Optional status() { return (Optional) status; } - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional xGustoAPIVersion() { - return (Optional) xGustoAPIVersion; - } - /** * The page that is requested. When unspecified, will load all objects unless endpoint forces * pagination. @@ -120,28 +120,6 @@ public static Builder builder() { } - /** - * The UUID of the company for which you would like to return notifications - */ - public GetCompanyNotificationsRequest withCompanyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - public GetCompanyNotificationsRequest withStatus(Status status) { - Utils.checkNotNull(status, "status"); - this.status = Optional.ofNullable(status); - return this; - } - - - public GetCompanyNotificationsRequest withStatus(Optional status) { - Utils.checkNotNull(status, "status"); - this.status = status; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -165,6 +143,28 @@ public GetCompanyNotificationsRequest withXGustoAPIVersion(Optional status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + /** * The page that is requested. When unspecified, will load all objects unless endpoint forces * pagination. @@ -215,9 +215,9 @@ public boolean equals(java.lang.Object o) { } GetCompanyNotificationsRequest other = (GetCompanyNotificationsRequest) o; return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && Utils.enhancedDeepEquals(this.status, other.status) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.page, other.page) && Utils.enhancedDeepEquals(this.per, other.per); } @@ -225,16 +225,16 @@ public boolean equals(java.lang.Object o) { @Override public int hashCode() { return Utils.enhancedHash( - companyUuid, status, xGustoAPIVersion, + xGustoAPIVersion, companyUuid, status, page, per); } @Override public String toString() { return Utils.toString(GetCompanyNotificationsRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, "companyUuid", companyUuid, "status", status, - "xGustoAPIVersion", xGustoAPIVersion, "page", page, "per", per); } @@ -242,12 +242,12 @@ public String toString() { @SuppressWarnings("UnusedReturnValue") public final static class Builder { + private Optional xGustoAPIVersion; + private String companyUuid; private Optional status = Optional.empty(); - private Optional xGustoAPIVersion; - private Optional page = Optional.empty(); private Optional per = Optional.empty(); @@ -257,29 +257,6 @@ private Builder() { } - /** - * The UUID of the company for which you would like to return notifications - */ - public Builder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - - public Builder status(Status status) { - Utils.checkNotNull(status, "status"); - this.status = Optional.ofNullable(status); - return this; - } - - public Builder status(Optional status) { - Utils.checkNotNull(status, "status"); - this.status = status; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -303,6 +280,29 @@ public Builder xGustoAPIVersion(Optional status) { + Utils.checkNotNull(status, "status"); + this.status = status; + return this; + } + + /** * The page that is requested. When unspecified, will load all objects unless endpoint forces * pagination. @@ -348,7 +348,7 @@ public GetCompanyNotificationsRequest build() { } return new GetCompanyNotificationsRequest( - companyUuid, status, xGustoAPIVersion, + xGustoAPIVersion, companyUuid, status, page, per); } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetDepartmentRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetDepartmentRequest.java index 486191da4..d721f444f 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetDepartmentRequest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetDepartmentRequest.java @@ -16,12 +16,6 @@ public class GetDepartmentRequest { - /** - * The UUID of the department - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=department_uuid") - private String departmentUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class GetDepartmentRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the department + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=department_uuid") + private String departmentUuid; + @JsonCreator public GetDepartmentRequest( - String departmentUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); + Optional xGustoAPIVersion, + String departmentUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.departmentUuid = departmentUuid; + Utils.checkNotNull(departmentUuid, "departmentUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.departmentUuid = departmentUuid; } public GetDepartmentRequest( String departmentUuid) { - this(departmentUuid, Optional.empty()); - } - - /** - * The UUID of the department - */ - @JsonIgnore - public String departmentUuid() { - return departmentUuid; + this(Optional.empty(), departmentUuid); } /** @@ -64,20 +56,19 @@ public Optional xGustoAPIVersion() { return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the department */ - public GetDepartmentRequest withDepartmentUuid(String departmentUuid) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); - this.departmentUuid = departmentUuid; - return this; + @JsonIgnore + public String departmentUuid() { + return departmentUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetDepartmentRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String departmentUuid; + private Builder() { // force use of static builder() method } - /** - * The UUID of the department - */ - public Builder departmentUuid(String departmentUuid) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); - this.departmentUuid = departmentUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String departmentUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetDepartmentRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetDepartmentRequestBuilder departmentUuid(String departmentUuid) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); - this.departmentUuid = departmentUuid; - return this; - } public GetDepartmentRequestBuilder xGustoAPIVersion(GetDepartmentHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public GetDepartmentRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion; + /** + * The notification entity_uuid + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=notification_uuid") + private String notificationUuid; + @JsonCreator public GetNotificationsNotificationUuidRequest( - String notificationUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(notificationUuid, "notificationUuid"); + Optional xGustoAPIVersion, + String notificationUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.notificationUuid = notificationUuid; + Utils.checkNotNull(notificationUuid, "notificationUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.notificationUuid = notificationUuid; } public GetNotificationsNotificationUuidRequest( String notificationUuid) { - this(notificationUuid, Optional.empty()); - } - - /** - * The notification entity_uuid - */ - @JsonIgnore - public String notificationUuid() { - return notificationUuid; + this(Optional.empty(), notificationUuid); } /** @@ -64,20 +56,19 @@ public Optional xGustoAP return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The notification entity_uuid */ - public GetNotificationsNotificationUuidRequest withNotificationUuid(String notificationUuid) { - Utils.checkNotNull(notificationUuid, "notificationUuid"); - this.notificationUuid = notificationUuid; - return this; + @JsonIgnore + public String notificationUuid() { + return notificationUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetNotificationsNotificationUuidRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String notificationUuid; + private Builder() { // force use of static builder() method } - /** - * The notification entity_uuid - */ - public Builder notificationUuid(String notificationUuid) { - Utils.checkNotNull(notificationUuid, "notificationUuid"); - this.notificationUuid = notificationUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String notificationUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetNotificationsNotificationUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetNotificationsNotificationUuidRequestBuilder notificationUuid(String notificationUuid) { - Utils.checkNotNull(notificationUuid, "notificationUuid"); - this.notificationUuid = notificationUuid; - return this; - } public GetNotificationsNotificationUuidRequestBuilder xGustoAPIVersion(GetNotificationsNotificationUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public GetNotificationsNotificationUuidRequestBuilder xGustoAPIVersion(Optional< return this; } + public GetNotificationsNotificationUuidRequestBuilder notificationUuid(String notificationUuid) { + Utils.checkNotNull(notificationUuid, "notificationUuid"); + this.notificationUuid = notificationUuid; + return this; + } + private GetNotificationsNotificationUuidRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetNotificationsNotificationUuidRequest request = new GetNotificationsNotificationUuidRequest(notificationUuid, - xGustoAPIVersion); + GetNotificationsNotificationUuidRequest request = new GetNotificationsNotificationUuidRequest(xGustoAPIVersion, + notificationUuid); return request; } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetReverseWireTransactionsHeaderXGustoAPIVersion.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetReverseWireTransactionsHeaderXGustoAPIVersion.java new file mode 100644 index 000000000..d6aeb331d --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetReverseWireTransactionsHeaderXGustoAPIVersion.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * GetReverseWireTransactionsHeaderXGustoAPIVersion + * + *

    Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ +public enum GetReverseWireTransactionsHeaderXGustoAPIVersion { + TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15("2026-06-15"); + + @JsonValue + private final String value; + + GetReverseWireTransactionsHeaderXGustoAPIVersion(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (GetReverseWireTransactionsHeaderXGustoAPIVersion o: GetReverseWireTransactionsHeaderXGustoAPIVersion.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetReverseWireTransactionsRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetReverseWireTransactionsRequest.java new file mode 100644 index 000000000..74925eeac --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetReverseWireTransactionsRequest.java @@ -0,0 +1,378 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2026_06_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2026_06_15.utils.SpeakeasyMetadata; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Long; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class GetReverseWireTransactionsRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") + private String companyUuid; + + /** + * Filter results to reverse wires associated with a specific payroll + */ + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=payroll_uuid") + private Optional payrollUuid; + + /** + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. + */ + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=page") + private Optional page; + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=per") + private Optional per; + + @JsonCreator + public GetReverseWireTransactionsRequest( + Optional xGustoAPIVersion, + String companyUuid, + Optional payrollUuid, + Optional page, + Optional per) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(companyUuid, "companyUuid"); + Utils.checkNotNull(payrollUuid, "payrollUuid"); + Utils.checkNotNull(page, "page"); + Utils.checkNotNull(per, "per"); + this.xGustoAPIVersion = xGustoAPIVersion; + this.companyUuid = companyUuid; + this.payrollUuid = payrollUuid; + this.page = page; + this.per = per; + } + + public GetReverseWireTransactionsRequest( + String companyUuid) { + this(Optional.empty(), companyUuid, Optional.empty(), + Optional.empty(), Optional.empty()); + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + + /** + * The UUID of the company + */ + @JsonIgnore + public String companyUuid() { + return companyUuid; + } + + /** + * Filter results to reverse wires associated with a specific payroll + */ + @JsonIgnore + public Optional payrollUuid() { + return payrollUuid; + } + + /** + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. + */ + @JsonIgnore + public Optional page() { + return page; + } + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + @JsonIgnore + public Optional per() { + return per; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetReverseWireTransactionsRequest withXGustoAPIVersion(GetReverseWireTransactionsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetReverseWireTransactionsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + /** + * The UUID of the company + */ + public GetReverseWireTransactionsRequest withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + /** + * Filter results to reverse wires associated with a specific payroll + */ + public GetReverseWireTransactionsRequest withPayrollUuid(String payrollUuid) { + Utils.checkNotNull(payrollUuid, "payrollUuid"); + this.payrollUuid = Optional.ofNullable(payrollUuid); + return this; + } + + + /** + * Filter results to reverse wires associated with a specific payroll + */ + public GetReverseWireTransactionsRequest withPayrollUuid(Optional payrollUuid) { + Utils.checkNotNull(payrollUuid, "payrollUuid"); + this.payrollUuid = payrollUuid; + return this; + } + + /** + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. + */ + public GetReverseWireTransactionsRequest withPage(long page) { + Utils.checkNotNull(page, "page"); + this.page = Optional.ofNullable(page); + return this; + } + + + /** + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. + */ + public GetReverseWireTransactionsRequest withPage(Optional page) { + Utils.checkNotNull(page, "page"); + this.page = page; + return this; + } + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + public GetReverseWireTransactionsRequest withPer(long per) { + Utils.checkNotNull(per, "per"); + this.per = Optional.ofNullable(per); + return this; + } + + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + public GetReverseWireTransactionsRequest withPer(Optional per) { + Utils.checkNotNull(per, "per"); + this.per = per; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetReverseWireTransactionsRequest other = (GetReverseWireTransactionsRequest) o; + return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && + Utils.enhancedDeepEquals(this.payrollUuid, other.payrollUuid) && + Utils.enhancedDeepEquals(this.page, other.page) && + Utils.enhancedDeepEquals(this.per, other.per); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + xGustoAPIVersion, companyUuid, payrollUuid, + page, per); + } + + @Override + public String toString() { + return Utils.toString(GetReverseWireTransactionsRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, + "companyUuid", companyUuid, + "payrollUuid", payrollUuid, + "page", page, + "per", per); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional xGustoAPIVersion; + + private String companyUuid; + + private Optional payrollUuid = Optional.empty(); + + private Optional page = Optional.empty(); + + private Optional per = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(GetReverseWireTransactionsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + + /** + * The UUID of the company + */ + public Builder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + + /** + * Filter results to reverse wires associated with a specific payroll + */ + public Builder payrollUuid(String payrollUuid) { + Utils.checkNotNull(payrollUuid, "payrollUuid"); + this.payrollUuid = Optional.ofNullable(payrollUuid); + return this; + } + + /** + * Filter results to reverse wires associated with a specific payroll + */ + public Builder payrollUuid(Optional payrollUuid) { + Utils.checkNotNull(payrollUuid, "payrollUuid"); + this.payrollUuid = payrollUuid; + return this; + } + + + /** + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. + */ + public Builder page(long page) { + Utils.checkNotNull(page, "page"); + this.page = Optional.ofNullable(page); + return this; + } + + /** + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. + */ + public Builder page(Optional page) { + Utils.checkNotNull(page, "page"); + this.page = page; + return this; + } + + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + public Builder per(long per) { + Utils.checkNotNull(per, "per"); + this.per = Optional.ofNullable(per); + return this; + } + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + public Builder per(Optional per) { + Utils.checkNotNull(per, "per"); + this.per = per; + return this; + } + + public GetReverseWireTransactionsRequest build() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + return new GetReverseWireTransactionsRequest( + xGustoAPIVersion, companyUuid, payrollUuid, + page, per); + } + + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "X-Gusto-API-Version", + "\"2026-06-15\"", + new TypeReference>() {}); + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetReverseWireTransactionsRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetReverseWireTransactionsRequestBuilder.java new file mode 100644 index 000000000..3725de143 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetReverseWireTransactionsRequestBuilder.java @@ -0,0 +1,36 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import static com.gusto.embedded_api_v_2026_06_15.operations.Operations.RequestOperation; + +import com.gusto.embedded_api_v_2026_06_15.SDKConfiguration; +import com.gusto.embedded_api_v_2026_06_15.operations.GetReverseWireTransactions; +import com.gusto.embedded_api_v_2026_06_15.utils.Headers; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; + +public class GetReverseWireTransactionsRequestBuilder { + + private GetReverseWireTransactionsRequest request; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public GetReverseWireTransactionsRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public GetReverseWireTransactionsRequestBuilder request(GetReverseWireTransactionsRequest request) { + Utils.checkNotNull(request, "request"); + this.request = request; + return this; + } + + public GetReverseWireTransactionsResponse call() { + + RequestOperation operation + = new GetReverseWireTransactions.Sync(sdkConfiguration, _headers); + + return operation.handleResponse(operation.doRequest(request)); + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetReverseWireTransactionsResponse.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetReverseWireTransactionsResponse.java new file mode 100644 index 000000000..e8e3fcdf5 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetReverseWireTransactionsResponse.java @@ -0,0 +1,254 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2026_06_15.models.components.ReverseWireTransaction; +import com.gusto.embedded_api_v_2026_06_15.utils.Response; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.io.InputStream; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.List; +import java.util.Optional; + + +public class GetReverseWireTransactionsResponse implements Response { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * Example response + */ + private Optional> reverseWireTransactionList; + + @JsonCreator + public GetReverseWireTransactionsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional> reverseWireTransactionList) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(reverseWireTransactionList, "reverseWireTransactionList"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.reverseWireTransactionList = reverseWireTransactionList; + } + + public GetReverseWireTransactionsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * Example response + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> reverseWireTransactionList() { + return (Optional>) reverseWireTransactionList; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public GetReverseWireTransactionsResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public GetReverseWireTransactionsResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public GetReverseWireTransactionsResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * Example response + */ + public GetReverseWireTransactionsResponse withReverseWireTransactionList(List reverseWireTransactionList) { + Utils.checkNotNull(reverseWireTransactionList, "reverseWireTransactionList"); + this.reverseWireTransactionList = Optional.ofNullable(reverseWireTransactionList); + return this; + } + + + /** + * Example response + */ + public GetReverseWireTransactionsResponse withReverseWireTransactionList(Optional> reverseWireTransactionList) { + Utils.checkNotNull(reverseWireTransactionList, "reverseWireTransactionList"); + this.reverseWireTransactionList = reverseWireTransactionList; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetReverseWireTransactionsResponse other = (GetReverseWireTransactionsResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.reverseWireTransactionList, other.reverseWireTransactionList); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + reverseWireTransactionList); + } + + @Override + public String toString() { + return Utils.toString(GetReverseWireTransactionsResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "reverseWireTransactionList", reverseWireTransactionList); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional> reverseWireTransactionList = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * Example response + */ + public Builder reverseWireTransactionList(List reverseWireTransactionList) { + Utils.checkNotNull(reverseWireTransactionList, "reverseWireTransactionList"); + this.reverseWireTransactionList = Optional.ofNullable(reverseWireTransactionList); + return this; + } + + /** + * Example response + */ + public Builder reverseWireTransactionList(Optional> reverseWireTransactionList) { + Utils.checkNotNull(reverseWireTransactionList, "reverseWireTransactionList"); + this.reverseWireTransactionList = reverseWireTransactionList; + return this; + } + + public GetReverseWireTransactionsResponse build() { + + return new GetReverseWireTransactionsResponse( + contentType, statusCode, rawResponse, + reverseWireTransactionList); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetTaxPaymentHeaderXGustoAPIVersion.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetTaxPaymentHeaderXGustoAPIVersion.java new file mode 100644 index 000000000..a440d7350 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetTaxPaymentHeaderXGustoAPIVersion.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * GetTaxPaymentHeaderXGustoAPIVersion + * + *

    Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ +public enum GetTaxPaymentHeaderXGustoAPIVersion { + TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15("2026-06-15"); + + @JsonValue + private final String value; + + GetTaxPaymentHeaderXGustoAPIVersion(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (GetTaxPaymentHeaderXGustoAPIVersion o: GetTaxPaymentHeaderXGustoAPIVersion.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetTaxPaymentRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetTaxPaymentRequest.java new file mode 100644 index 000000000..fe8fc7456 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetTaxPaymentRequest.java @@ -0,0 +1,232 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2026_06_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2026_06_15.utils.SpeakeasyMetadata; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class GetTaxPaymentRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") + private String companyUuid; + + /** + * The UUID of the tax payment + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=uuid") + private String uuid; + + @JsonCreator + public GetTaxPaymentRequest( + Optional xGustoAPIVersion, + String companyUuid, + String uuid) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(companyUuid, "companyUuid"); + Utils.checkNotNull(uuid, "uuid"); + this.xGustoAPIVersion = xGustoAPIVersion; + this.companyUuid = companyUuid; + this.uuid = uuid; + } + + public GetTaxPaymentRequest( + String companyUuid, + String uuid) { + this(Optional.empty(), companyUuid, uuid); + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + + /** + * The UUID of the company + */ + @JsonIgnore + public String companyUuid() { + return companyUuid; + } + + /** + * The UUID of the tax payment + */ + @JsonIgnore + public String uuid() { + return uuid; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetTaxPaymentRequest withXGustoAPIVersion(GetTaxPaymentHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetTaxPaymentRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + /** + * The UUID of the company + */ + public GetTaxPaymentRequest withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + /** + * The UUID of the tax payment + */ + public GetTaxPaymentRequest withUuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetTaxPaymentRequest other = (GetTaxPaymentRequest) o; + return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && + Utils.enhancedDeepEquals(this.uuid, other.uuid); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + xGustoAPIVersion, companyUuid, uuid); + } + + @Override + public String toString() { + return Utils.toString(GetTaxPaymentRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, + "companyUuid", companyUuid, + "uuid", uuid); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional xGustoAPIVersion; + + private String companyUuid; + + private String uuid; + + private Builder() { + // force use of static builder() method + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(GetTaxPaymentHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + + /** + * The UUID of the company + */ + public Builder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + + /** + * The UUID of the tax payment + */ + public Builder uuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + public GetTaxPaymentRequest build() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + return new GetTaxPaymentRequest( + xGustoAPIVersion, companyUuid, uuid); + } + + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "X-Gusto-API-Version", + "\"2026-06-15\"", + new TypeReference>() {}); + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetTaxPaymentRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetTaxPaymentRequestBuilder.java new file mode 100644 index 000000000..ebb804db5 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetTaxPaymentRequestBuilder.java @@ -0,0 +1,83 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import static com.gusto.embedded_api_v_2026_06_15.operations.Operations.RequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2026_06_15.SDKConfiguration; +import com.gusto.embedded_api_v_2026_06_15.operations.GetTaxPayment; +import com.gusto.embedded_api_v_2026_06_15.utils.Headers; +import com.gusto.embedded_api_v_2026_06_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.String; +import java.util.Optional; + +public class GetTaxPaymentRequestBuilder { + + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2026-06-15\"", + new TypeReference>() {}); + private String companyUuid; + private String uuid; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public GetTaxPaymentRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public GetTaxPaymentRequestBuilder xGustoAPIVersion(GetTaxPaymentHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetTaxPaymentRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public GetTaxPaymentRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + public GetTaxPaymentRequestBuilder uuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + + private GetTaxPaymentRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + GetTaxPaymentRequest request = new GetTaxPaymentRequest(xGustoAPIVersion, + companyUuid, + uuid); + + return request; + } + + public GetTaxPaymentResponse call() { + + RequestOperation operation + = new GetTaxPayment.Sync(sdkConfiguration, _headers); + GetTaxPaymentRequest request = buildRequest(); + + return operation.handleResponse(operation.doRequest(request)); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2026-06-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetTaxPaymentResponse.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetTaxPaymentResponse.java new file mode 100644 index 000000000..8373305cc --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetTaxPaymentResponse.java @@ -0,0 +1,253 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2026_06_15.models.components.TaxPayment; +import com.gusto.embedded_api_v_2026_06_15.utils.Response; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.io.InputStream; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.Optional; + + +public class GetTaxPaymentResponse implements Response { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * Success + */ + private Optional taxPayment; + + @JsonCreator + public GetTaxPaymentResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional taxPayment) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(taxPayment, "taxPayment"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.taxPayment = taxPayment; + } + + public GetTaxPaymentResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * Success + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional taxPayment() { + return (Optional) taxPayment; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public GetTaxPaymentResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public GetTaxPaymentResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public GetTaxPaymentResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * Success + */ + public GetTaxPaymentResponse withTaxPayment(TaxPayment taxPayment) { + Utils.checkNotNull(taxPayment, "taxPayment"); + this.taxPayment = Optional.ofNullable(taxPayment); + return this; + } + + + /** + * Success + */ + public GetTaxPaymentResponse withTaxPayment(Optional taxPayment) { + Utils.checkNotNull(taxPayment, "taxPayment"); + this.taxPayment = taxPayment; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetTaxPaymentResponse other = (GetTaxPaymentResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.taxPayment, other.taxPayment); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + taxPayment); + } + + @Override + public String toString() { + return Utils.toString(GetTaxPaymentResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "taxPayment", taxPayment); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional taxPayment = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * Success + */ + public Builder taxPayment(TaxPayment taxPayment) { + Utils.checkNotNull(taxPayment, "taxPayment"); + this.taxPayment = Optional.ofNullable(taxPayment); + return this; + } + + /** + * Success + */ + public Builder taxPayment(Optional taxPayment) { + Utils.checkNotNull(taxPayment, "taxPayment"); + this.taxPayment = taxPayment; + return this; + } + + public GetTaxPaymentResponse build() { + + return new GetTaxPaymentResponse( + contentType, statusCode, rawResponse, + taxPayment); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetTaxPaymentsHeaderXGustoAPIVersion.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetTaxPaymentsHeaderXGustoAPIVersion.java new file mode 100644 index 000000000..60c8b7a04 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetTaxPaymentsHeaderXGustoAPIVersion.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * GetTaxPaymentsHeaderXGustoAPIVersion + * + *

    Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ +public enum GetTaxPaymentsHeaderXGustoAPIVersion { + TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15("2026-06-15"); + + @JsonValue + private final String value; + + GetTaxPaymentsHeaderXGustoAPIVersion(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (GetTaxPaymentsHeaderXGustoAPIVersion o: GetTaxPaymentsHeaderXGustoAPIVersion.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetTaxPaymentsRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetTaxPaymentsRequest.java new file mode 100644 index 000000000..f08e7b27f --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetTaxPaymentsRequest.java @@ -0,0 +1,1145 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2026_06_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2026_06_15.utils.SpeakeasyMetadata; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Float; +import java.lang.Long; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.time.LocalDate; +import java.util.List; +import java.util.Optional; + + +public class GetTaxPaymentsRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") + private String companyUuid; + + /** + * Filter by tax jurisdiction. Accepts one or more two-letter state codes, or `US` for federal, as a + * comma-separated list (e.g. `IL,CA`). + * + *

    Codes are case-insensitive. + */ + @SpeakeasyMetadata("queryParam:style=form,explode=false,name=jurisdiction") + private Optional> jurisdiction; + + /** + * Filter to tax payments associated with one or more payrolls, given as a comma-separated list of + * payroll UUIDs. + */ + @SpeakeasyMetadata("queryParam:style=form,explode=false,name=payroll_uuids") + private Optional> payrollUuids; + + /** + * Lower-bound (inclusive) date filter on due_date. + */ + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=due_date_from") + private Optional dueDateFrom; + + /** + * Upper-bound (inclusive) date filter on due_date. + */ + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=due_date_to") + private Optional dueDateTo; + + /** + * Lower-bound (inclusive) date filter on payment_sent_on. + */ + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=payment_sent_on_from") + private Optional paymentSentOnFrom; + + /** + * Upper-bound (inclusive) date filter on payment_sent_on. + */ + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=payment_sent_on_to") + private Optional paymentSentOnTo; + + /** + * Lower-bound (inclusive) date filter on period_start. + */ + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=period_start_from") + private Optional periodStartFrom; + + /** + * Upper-bound (inclusive) date filter on period_start. + */ + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=period_start_to") + private Optional periodStartTo; + + /** + * Lower-bound (inclusive) date filter on period_end. + */ + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=period_end_from") + private Optional periodEndFrom; + + /** + * Upper-bound (inclusive) date filter on period_end. + */ + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=period_end_to") + private Optional periodEndTo; + + /** + * Lower-bound (inclusive) filter on amount. + */ + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=amount_min") + private Optional amountMin; + + /** + * Upper-bound (inclusive) filter on amount. + */ + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=amount_max") + private Optional amountMax; + + /** + * Sort by one or more fields. Options: amount, due_date, payment_sent_on, period_end, period_start. + * Append `:asc` or `:desc` to specify direction (e.g., `amount:asc`). + * + *

    Defaults to ascending. + */ + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=sort_by") + private Optional sortBy; + + /** + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. + */ + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=page") + private Optional page; + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=per") + private Optional per; + + @JsonCreator + public GetTaxPaymentsRequest( + Optional xGustoAPIVersion, + String companyUuid, + Optional> jurisdiction, + Optional> payrollUuids, + Optional dueDateFrom, + Optional dueDateTo, + Optional paymentSentOnFrom, + Optional paymentSentOnTo, + Optional periodStartFrom, + Optional periodStartTo, + Optional periodEndFrom, + Optional periodEndTo, + Optional amountMin, + Optional amountMax, + Optional sortBy, + Optional page, + Optional per) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(companyUuid, "companyUuid"); + Utils.checkNotNull(jurisdiction, "jurisdiction"); + Utils.checkNotNull(payrollUuids, "payrollUuids"); + Utils.checkNotNull(dueDateFrom, "dueDateFrom"); + Utils.checkNotNull(dueDateTo, "dueDateTo"); + Utils.checkNotNull(paymentSentOnFrom, "paymentSentOnFrom"); + Utils.checkNotNull(paymentSentOnTo, "paymentSentOnTo"); + Utils.checkNotNull(periodStartFrom, "periodStartFrom"); + Utils.checkNotNull(periodStartTo, "periodStartTo"); + Utils.checkNotNull(periodEndFrom, "periodEndFrom"); + Utils.checkNotNull(periodEndTo, "periodEndTo"); + Utils.checkNotNull(amountMin, "amountMin"); + Utils.checkNotNull(amountMax, "amountMax"); + Utils.checkNotNull(sortBy, "sortBy"); + Utils.checkNotNull(page, "page"); + Utils.checkNotNull(per, "per"); + this.xGustoAPIVersion = xGustoAPIVersion; + this.companyUuid = companyUuid; + this.jurisdiction = jurisdiction; + this.payrollUuids = payrollUuids; + this.dueDateFrom = dueDateFrom; + this.dueDateTo = dueDateTo; + this.paymentSentOnFrom = paymentSentOnFrom; + this.paymentSentOnTo = paymentSentOnTo; + this.periodStartFrom = periodStartFrom; + this.periodStartTo = periodStartTo; + this.periodEndFrom = periodEndFrom; + this.periodEndTo = periodEndTo; + this.amountMin = amountMin; + this.amountMax = amountMax; + this.sortBy = sortBy; + this.page = page; + this.per = per; + } + + public GetTaxPaymentsRequest( + String companyUuid) { + this(Optional.empty(), companyUuid, Optional.empty(), + Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty(), Optional.empty()); + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + + /** + * The UUID of the company + */ + @JsonIgnore + public String companyUuid() { + return companyUuid; + } + + /** + * Filter by tax jurisdiction. Accepts one or more two-letter state codes, or `US` for federal, as a + * comma-separated list (e.g. `IL,CA`). + * + *

    Codes are case-insensitive. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> jurisdiction() { + return (Optional>) jurisdiction; + } + + /** + * Filter to tax payments associated with one or more payrolls, given as a comma-separated list of + * payroll UUIDs. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> payrollUuids() { + return (Optional>) payrollUuids; + } + + /** + * Lower-bound (inclusive) date filter on due_date. + */ + @JsonIgnore + public Optional dueDateFrom() { + return dueDateFrom; + } + + /** + * Upper-bound (inclusive) date filter on due_date. + */ + @JsonIgnore + public Optional dueDateTo() { + return dueDateTo; + } + + /** + * Lower-bound (inclusive) date filter on payment_sent_on. + */ + @JsonIgnore + public Optional paymentSentOnFrom() { + return paymentSentOnFrom; + } + + /** + * Upper-bound (inclusive) date filter on payment_sent_on. + */ + @JsonIgnore + public Optional paymentSentOnTo() { + return paymentSentOnTo; + } + + /** + * Lower-bound (inclusive) date filter on period_start. + */ + @JsonIgnore + public Optional periodStartFrom() { + return periodStartFrom; + } + + /** + * Upper-bound (inclusive) date filter on period_start. + */ + @JsonIgnore + public Optional periodStartTo() { + return periodStartTo; + } + + /** + * Lower-bound (inclusive) date filter on period_end. + */ + @JsonIgnore + public Optional periodEndFrom() { + return periodEndFrom; + } + + /** + * Upper-bound (inclusive) date filter on period_end. + */ + @JsonIgnore + public Optional periodEndTo() { + return periodEndTo; + } + + /** + * Lower-bound (inclusive) filter on amount. + */ + @JsonIgnore + public Optional amountMin() { + return amountMin; + } + + /** + * Upper-bound (inclusive) filter on amount. + */ + @JsonIgnore + public Optional amountMax() { + return amountMax; + } + + /** + * Sort by one or more fields. Options: amount, due_date, payment_sent_on, period_end, period_start. + * Append `:asc` or `:desc` to specify direction (e.g., `amount:asc`). + * + *

    Defaults to ascending. + */ + @JsonIgnore + public Optional sortBy() { + return sortBy; + } + + /** + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. + */ + @JsonIgnore + public Optional page() { + return page; + } + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + @JsonIgnore + public Optional per() { + return per; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetTaxPaymentsRequest withXGustoAPIVersion(GetTaxPaymentsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetTaxPaymentsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + /** + * The UUID of the company + */ + public GetTaxPaymentsRequest withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + /** + * Filter by tax jurisdiction. Accepts one or more two-letter state codes, or `US` for federal, as a + * comma-separated list (e.g. `IL,CA`). + * + *

    Codes are case-insensitive. + */ + public GetTaxPaymentsRequest withJurisdiction(List jurisdiction) { + Utils.checkNotNull(jurisdiction, "jurisdiction"); + this.jurisdiction = Optional.ofNullable(jurisdiction); + return this; + } + + + /** + * Filter by tax jurisdiction. Accepts one or more two-letter state codes, or `US` for federal, as a + * comma-separated list (e.g. `IL,CA`). + * + *

    Codes are case-insensitive. + */ + public GetTaxPaymentsRequest withJurisdiction(Optional> jurisdiction) { + Utils.checkNotNull(jurisdiction, "jurisdiction"); + this.jurisdiction = jurisdiction; + return this; + } + + /** + * Filter to tax payments associated with one or more payrolls, given as a comma-separated list of + * payroll UUIDs. + */ + public GetTaxPaymentsRequest withPayrollUuids(List payrollUuids) { + Utils.checkNotNull(payrollUuids, "payrollUuids"); + this.payrollUuids = Optional.ofNullable(payrollUuids); + return this; + } + + + /** + * Filter to tax payments associated with one or more payrolls, given as a comma-separated list of + * payroll UUIDs. + */ + public GetTaxPaymentsRequest withPayrollUuids(Optional> payrollUuids) { + Utils.checkNotNull(payrollUuids, "payrollUuids"); + this.payrollUuids = payrollUuids; + return this; + } + + /** + * Lower-bound (inclusive) date filter on due_date. + */ + public GetTaxPaymentsRequest withDueDateFrom(LocalDate dueDateFrom) { + Utils.checkNotNull(dueDateFrom, "dueDateFrom"); + this.dueDateFrom = Optional.ofNullable(dueDateFrom); + return this; + } + + + /** + * Lower-bound (inclusive) date filter on due_date. + */ + public GetTaxPaymentsRequest withDueDateFrom(Optional dueDateFrom) { + Utils.checkNotNull(dueDateFrom, "dueDateFrom"); + this.dueDateFrom = dueDateFrom; + return this; + } + + /** + * Upper-bound (inclusive) date filter on due_date. + */ + public GetTaxPaymentsRequest withDueDateTo(LocalDate dueDateTo) { + Utils.checkNotNull(dueDateTo, "dueDateTo"); + this.dueDateTo = Optional.ofNullable(dueDateTo); + return this; + } + + + /** + * Upper-bound (inclusive) date filter on due_date. + */ + public GetTaxPaymentsRequest withDueDateTo(Optional dueDateTo) { + Utils.checkNotNull(dueDateTo, "dueDateTo"); + this.dueDateTo = dueDateTo; + return this; + } + + /** + * Lower-bound (inclusive) date filter on payment_sent_on. + */ + public GetTaxPaymentsRequest withPaymentSentOnFrom(LocalDate paymentSentOnFrom) { + Utils.checkNotNull(paymentSentOnFrom, "paymentSentOnFrom"); + this.paymentSentOnFrom = Optional.ofNullable(paymentSentOnFrom); + return this; + } + + + /** + * Lower-bound (inclusive) date filter on payment_sent_on. + */ + public GetTaxPaymentsRequest withPaymentSentOnFrom(Optional paymentSentOnFrom) { + Utils.checkNotNull(paymentSentOnFrom, "paymentSentOnFrom"); + this.paymentSentOnFrom = paymentSentOnFrom; + return this; + } + + /** + * Upper-bound (inclusive) date filter on payment_sent_on. + */ + public GetTaxPaymentsRequest withPaymentSentOnTo(LocalDate paymentSentOnTo) { + Utils.checkNotNull(paymentSentOnTo, "paymentSentOnTo"); + this.paymentSentOnTo = Optional.ofNullable(paymentSentOnTo); + return this; + } + + + /** + * Upper-bound (inclusive) date filter on payment_sent_on. + */ + public GetTaxPaymentsRequest withPaymentSentOnTo(Optional paymentSentOnTo) { + Utils.checkNotNull(paymentSentOnTo, "paymentSentOnTo"); + this.paymentSentOnTo = paymentSentOnTo; + return this; + } + + /** + * Lower-bound (inclusive) date filter on period_start. + */ + public GetTaxPaymentsRequest withPeriodStartFrom(LocalDate periodStartFrom) { + Utils.checkNotNull(periodStartFrom, "periodStartFrom"); + this.periodStartFrom = Optional.ofNullable(periodStartFrom); + return this; + } + + + /** + * Lower-bound (inclusive) date filter on period_start. + */ + public GetTaxPaymentsRequest withPeriodStartFrom(Optional periodStartFrom) { + Utils.checkNotNull(periodStartFrom, "periodStartFrom"); + this.periodStartFrom = periodStartFrom; + return this; + } + + /** + * Upper-bound (inclusive) date filter on period_start. + */ + public GetTaxPaymentsRequest withPeriodStartTo(LocalDate periodStartTo) { + Utils.checkNotNull(periodStartTo, "periodStartTo"); + this.periodStartTo = Optional.ofNullable(periodStartTo); + return this; + } + + + /** + * Upper-bound (inclusive) date filter on period_start. + */ + public GetTaxPaymentsRequest withPeriodStartTo(Optional periodStartTo) { + Utils.checkNotNull(periodStartTo, "periodStartTo"); + this.periodStartTo = periodStartTo; + return this; + } + + /** + * Lower-bound (inclusive) date filter on period_end. + */ + public GetTaxPaymentsRequest withPeriodEndFrom(LocalDate periodEndFrom) { + Utils.checkNotNull(periodEndFrom, "periodEndFrom"); + this.periodEndFrom = Optional.ofNullable(periodEndFrom); + return this; + } + + + /** + * Lower-bound (inclusive) date filter on period_end. + */ + public GetTaxPaymentsRequest withPeriodEndFrom(Optional periodEndFrom) { + Utils.checkNotNull(periodEndFrom, "periodEndFrom"); + this.periodEndFrom = periodEndFrom; + return this; + } + + /** + * Upper-bound (inclusive) date filter on period_end. + */ + public GetTaxPaymentsRequest withPeriodEndTo(LocalDate periodEndTo) { + Utils.checkNotNull(periodEndTo, "periodEndTo"); + this.periodEndTo = Optional.ofNullable(periodEndTo); + return this; + } + + + /** + * Upper-bound (inclusive) date filter on period_end. + */ + public GetTaxPaymentsRequest withPeriodEndTo(Optional periodEndTo) { + Utils.checkNotNull(periodEndTo, "periodEndTo"); + this.periodEndTo = periodEndTo; + return this; + } + + /** + * Lower-bound (inclusive) filter on amount. + */ + public GetTaxPaymentsRequest withAmountMin(float amountMin) { + Utils.checkNotNull(amountMin, "amountMin"); + this.amountMin = Optional.ofNullable(amountMin); + return this; + } + + + /** + * Lower-bound (inclusive) filter on amount. + */ + public GetTaxPaymentsRequest withAmountMin(Optional amountMin) { + Utils.checkNotNull(amountMin, "amountMin"); + this.amountMin = amountMin; + return this; + } + + /** + * Upper-bound (inclusive) filter on amount. + */ + public GetTaxPaymentsRequest withAmountMax(float amountMax) { + Utils.checkNotNull(amountMax, "amountMax"); + this.amountMax = Optional.ofNullable(amountMax); + return this; + } + + + /** + * Upper-bound (inclusive) filter on amount. + */ + public GetTaxPaymentsRequest withAmountMax(Optional amountMax) { + Utils.checkNotNull(amountMax, "amountMax"); + this.amountMax = amountMax; + return this; + } + + /** + * Sort by one or more fields. Options: amount, due_date, payment_sent_on, period_end, period_start. + * Append `:asc` or `:desc` to specify direction (e.g., `amount:asc`). + * + *

    Defaults to ascending. + */ + public GetTaxPaymentsRequest withSortBy(String sortBy) { + Utils.checkNotNull(sortBy, "sortBy"); + this.sortBy = Optional.ofNullable(sortBy); + return this; + } + + + /** + * Sort by one or more fields. Options: amount, due_date, payment_sent_on, period_end, period_start. + * Append `:asc` or `:desc` to specify direction (e.g., `amount:asc`). + * + *

    Defaults to ascending. + */ + public GetTaxPaymentsRequest withSortBy(Optional sortBy) { + Utils.checkNotNull(sortBy, "sortBy"); + this.sortBy = sortBy; + return this; + } + + /** + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. + */ + public GetTaxPaymentsRequest withPage(long page) { + Utils.checkNotNull(page, "page"); + this.page = Optional.ofNullable(page); + return this; + } + + + /** + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. + */ + public GetTaxPaymentsRequest withPage(Optional page) { + Utils.checkNotNull(page, "page"); + this.page = page; + return this; + } + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + public GetTaxPaymentsRequest withPer(long per) { + Utils.checkNotNull(per, "per"); + this.per = Optional.ofNullable(per); + return this; + } + + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + public GetTaxPaymentsRequest withPer(Optional per) { + Utils.checkNotNull(per, "per"); + this.per = per; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetTaxPaymentsRequest other = (GetTaxPaymentsRequest) o; + return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && + Utils.enhancedDeepEquals(this.jurisdiction, other.jurisdiction) && + Utils.enhancedDeepEquals(this.payrollUuids, other.payrollUuids) && + Utils.enhancedDeepEquals(this.dueDateFrom, other.dueDateFrom) && + Utils.enhancedDeepEquals(this.dueDateTo, other.dueDateTo) && + Utils.enhancedDeepEquals(this.paymentSentOnFrom, other.paymentSentOnFrom) && + Utils.enhancedDeepEquals(this.paymentSentOnTo, other.paymentSentOnTo) && + Utils.enhancedDeepEquals(this.periodStartFrom, other.periodStartFrom) && + Utils.enhancedDeepEquals(this.periodStartTo, other.periodStartTo) && + Utils.enhancedDeepEquals(this.periodEndFrom, other.periodEndFrom) && + Utils.enhancedDeepEquals(this.periodEndTo, other.periodEndTo) && + Utils.enhancedDeepEquals(this.amountMin, other.amountMin) && + Utils.enhancedDeepEquals(this.amountMax, other.amountMax) && + Utils.enhancedDeepEquals(this.sortBy, other.sortBy) && + Utils.enhancedDeepEquals(this.page, other.page) && + Utils.enhancedDeepEquals(this.per, other.per); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + xGustoAPIVersion, companyUuid, jurisdiction, + payrollUuids, dueDateFrom, dueDateTo, + paymentSentOnFrom, paymentSentOnTo, periodStartFrom, + periodStartTo, periodEndFrom, periodEndTo, + amountMin, amountMax, sortBy, + page, per); + } + + @Override + public String toString() { + return Utils.toString(GetTaxPaymentsRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, + "companyUuid", companyUuid, + "jurisdiction", jurisdiction, + "payrollUuids", payrollUuids, + "dueDateFrom", dueDateFrom, + "dueDateTo", dueDateTo, + "paymentSentOnFrom", paymentSentOnFrom, + "paymentSentOnTo", paymentSentOnTo, + "periodStartFrom", periodStartFrom, + "periodStartTo", periodStartTo, + "periodEndFrom", periodEndFrom, + "periodEndTo", periodEndTo, + "amountMin", amountMin, + "amountMax", amountMax, + "sortBy", sortBy, + "page", page, + "per", per); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional xGustoAPIVersion; + + private String companyUuid; + + private Optional> jurisdiction = Optional.empty(); + + private Optional> payrollUuids = Optional.empty(); + + private Optional dueDateFrom = Optional.empty(); + + private Optional dueDateTo = Optional.empty(); + + private Optional paymentSentOnFrom = Optional.empty(); + + private Optional paymentSentOnTo = Optional.empty(); + + private Optional periodStartFrom = Optional.empty(); + + private Optional periodStartTo = Optional.empty(); + + private Optional periodEndFrom = Optional.empty(); + + private Optional periodEndTo = Optional.empty(); + + private Optional amountMin = Optional.empty(); + + private Optional amountMax = Optional.empty(); + + private Optional sortBy = Optional.empty(); + + private Optional page = Optional.empty(); + + private Optional per = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(GetTaxPaymentsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + + /** + * The UUID of the company + */ + public Builder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + + /** + * Filter by tax jurisdiction. Accepts one or more two-letter state codes, or `US` for federal, as a + * comma-separated list (e.g. `IL,CA`). + * + *

    Codes are case-insensitive. + */ + public Builder jurisdiction(List jurisdiction) { + Utils.checkNotNull(jurisdiction, "jurisdiction"); + this.jurisdiction = Optional.ofNullable(jurisdiction); + return this; + } + + /** + * Filter by tax jurisdiction. Accepts one or more two-letter state codes, or `US` for federal, as a + * comma-separated list (e.g. `IL,CA`). + * + *

    Codes are case-insensitive. + */ + public Builder jurisdiction(Optional> jurisdiction) { + Utils.checkNotNull(jurisdiction, "jurisdiction"); + this.jurisdiction = jurisdiction; + return this; + } + + + /** + * Filter to tax payments associated with one or more payrolls, given as a comma-separated list of + * payroll UUIDs. + */ + public Builder payrollUuids(List payrollUuids) { + Utils.checkNotNull(payrollUuids, "payrollUuids"); + this.payrollUuids = Optional.ofNullable(payrollUuids); + return this; + } + + /** + * Filter to tax payments associated with one or more payrolls, given as a comma-separated list of + * payroll UUIDs. + */ + public Builder payrollUuids(Optional> payrollUuids) { + Utils.checkNotNull(payrollUuids, "payrollUuids"); + this.payrollUuids = payrollUuids; + return this; + } + + + /** + * Lower-bound (inclusive) date filter on due_date. + */ + public Builder dueDateFrom(LocalDate dueDateFrom) { + Utils.checkNotNull(dueDateFrom, "dueDateFrom"); + this.dueDateFrom = Optional.ofNullable(dueDateFrom); + return this; + } + + /** + * Lower-bound (inclusive) date filter on due_date. + */ + public Builder dueDateFrom(Optional dueDateFrom) { + Utils.checkNotNull(dueDateFrom, "dueDateFrom"); + this.dueDateFrom = dueDateFrom; + return this; + } + + + /** + * Upper-bound (inclusive) date filter on due_date. + */ + public Builder dueDateTo(LocalDate dueDateTo) { + Utils.checkNotNull(dueDateTo, "dueDateTo"); + this.dueDateTo = Optional.ofNullable(dueDateTo); + return this; + } + + /** + * Upper-bound (inclusive) date filter on due_date. + */ + public Builder dueDateTo(Optional dueDateTo) { + Utils.checkNotNull(dueDateTo, "dueDateTo"); + this.dueDateTo = dueDateTo; + return this; + } + + + /** + * Lower-bound (inclusive) date filter on payment_sent_on. + */ + public Builder paymentSentOnFrom(LocalDate paymentSentOnFrom) { + Utils.checkNotNull(paymentSentOnFrom, "paymentSentOnFrom"); + this.paymentSentOnFrom = Optional.ofNullable(paymentSentOnFrom); + return this; + } + + /** + * Lower-bound (inclusive) date filter on payment_sent_on. + */ + public Builder paymentSentOnFrom(Optional paymentSentOnFrom) { + Utils.checkNotNull(paymentSentOnFrom, "paymentSentOnFrom"); + this.paymentSentOnFrom = paymentSentOnFrom; + return this; + } + + + /** + * Upper-bound (inclusive) date filter on payment_sent_on. + */ + public Builder paymentSentOnTo(LocalDate paymentSentOnTo) { + Utils.checkNotNull(paymentSentOnTo, "paymentSentOnTo"); + this.paymentSentOnTo = Optional.ofNullable(paymentSentOnTo); + return this; + } + + /** + * Upper-bound (inclusive) date filter on payment_sent_on. + */ + public Builder paymentSentOnTo(Optional paymentSentOnTo) { + Utils.checkNotNull(paymentSentOnTo, "paymentSentOnTo"); + this.paymentSentOnTo = paymentSentOnTo; + return this; + } + + + /** + * Lower-bound (inclusive) date filter on period_start. + */ + public Builder periodStartFrom(LocalDate periodStartFrom) { + Utils.checkNotNull(periodStartFrom, "periodStartFrom"); + this.periodStartFrom = Optional.ofNullable(periodStartFrom); + return this; + } + + /** + * Lower-bound (inclusive) date filter on period_start. + */ + public Builder periodStartFrom(Optional periodStartFrom) { + Utils.checkNotNull(periodStartFrom, "periodStartFrom"); + this.periodStartFrom = periodStartFrom; + return this; + } + + + /** + * Upper-bound (inclusive) date filter on period_start. + */ + public Builder periodStartTo(LocalDate periodStartTo) { + Utils.checkNotNull(periodStartTo, "periodStartTo"); + this.periodStartTo = Optional.ofNullable(periodStartTo); + return this; + } + + /** + * Upper-bound (inclusive) date filter on period_start. + */ + public Builder periodStartTo(Optional periodStartTo) { + Utils.checkNotNull(periodStartTo, "periodStartTo"); + this.periodStartTo = periodStartTo; + return this; + } + + + /** + * Lower-bound (inclusive) date filter on period_end. + */ + public Builder periodEndFrom(LocalDate periodEndFrom) { + Utils.checkNotNull(periodEndFrom, "periodEndFrom"); + this.periodEndFrom = Optional.ofNullable(periodEndFrom); + return this; + } + + /** + * Lower-bound (inclusive) date filter on period_end. + */ + public Builder periodEndFrom(Optional periodEndFrom) { + Utils.checkNotNull(periodEndFrom, "periodEndFrom"); + this.periodEndFrom = periodEndFrom; + return this; + } + + + /** + * Upper-bound (inclusive) date filter on period_end. + */ + public Builder periodEndTo(LocalDate periodEndTo) { + Utils.checkNotNull(periodEndTo, "periodEndTo"); + this.periodEndTo = Optional.ofNullable(periodEndTo); + return this; + } + + /** + * Upper-bound (inclusive) date filter on period_end. + */ + public Builder periodEndTo(Optional periodEndTo) { + Utils.checkNotNull(periodEndTo, "periodEndTo"); + this.periodEndTo = periodEndTo; + return this; + } + + + /** + * Lower-bound (inclusive) filter on amount. + */ + public Builder amountMin(float amountMin) { + Utils.checkNotNull(amountMin, "amountMin"); + this.amountMin = Optional.ofNullable(amountMin); + return this; + } + + /** + * Lower-bound (inclusive) filter on amount. + */ + public Builder amountMin(Optional amountMin) { + Utils.checkNotNull(amountMin, "amountMin"); + this.amountMin = amountMin; + return this; + } + + + /** + * Upper-bound (inclusive) filter on amount. + */ + public Builder amountMax(float amountMax) { + Utils.checkNotNull(amountMax, "amountMax"); + this.amountMax = Optional.ofNullable(amountMax); + return this; + } + + /** + * Upper-bound (inclusive) filter on amount. + */ + public Builder amountMax(Optional amountMax) { + Utils.checkNotNull(amountMax, "amountMax"); + this.amountMax = amountMax; + return this; + } + + + /** + * Sort by one or more fields. Options: amount, due_date, payment_sent_on, period_end, period_start. + * Append `:asc` or `:desc` to specify direction (e.g., `amount:asc`). + * + *

    Defaults to ascending. + */ + public Builder sortBy(String sortBy) { + Utils.checkNotNull(sortBy, "sortBy"); + this.sortBy = Optional.ofNullable(sortBy); + return this; + } + + /** + * Sort by one or more fields. Options: amount, due_date, payment_sent_on, period_end, period_start. + * Append `:asc` or `:desc` to specify direction (e.g., `amount:asc`). + * + *

    Defaults to ascending. + */ + public Builder sortBy(Optional sortBy) { + Utils.checkNotNull(sortBy, "sortBy"); + this.sortBy = sortBy; + return this; + } + + + /** + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. + */ + public Builder page(long page) { + Utils.checkNotNull(page, "page"); + this.page = Optional.ofNullable(page); + return this; + } + + /** + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. + */ + public Builder page(Optional page) { + Utils.checkNotNull(page, "page"); + this.page = page; + return this; + } + + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + public Builder per(long per) { + Utils.checkNotNull(per, "per"); + this.per = Optional.ofNullable(per); + return this; + } + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + public Builder per(Optional per) { + Utils.checkNotNull(per, "per"); + this.per = per; + return this; + } + + public GetTaxPaymentsRequest build() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + return new GetTaxPaymentsRequest( + xGustoAPIVersion, companyUuid, jurisdiction, + payrollUuids, dueDateFrom, dueDateTo, + paymentSentOnFrom, paymentSentOnTo, periodStartFrom, + periodStartTo, periodEndFrom, periodEndTo, + amountMin, amountMax, sortBy, + page, per); + } + + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "X-Gusto-API-Version", + "\"2026-06-15\"", + new TypeReference>() {}); + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetTaxPaymentsRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetTaxPaymentsRequestBuilder.java new file mode 100644 index 000000000..505dc9859 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetTaxPaymentsRequestBuilder.java @@ -0,0 +1,36 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import static com.gusto.embedded_api_v_2026_06_15.operations.Operations.RequestOperation; + +import com.gusto.embedded_api_v_2026_06_15.SDKConfiguration; +import com.gusto.embedded_api_v_2026_06_15.operations.GetTaxPayments; +import com.gusto.embedded_api_v_2026_06_15.utils.Headers; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; + +public class GetTaxPaymentsRequestBuilder { + + private GetTaxPaymentsRequest request; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public GetTaxPaymentsRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public GetTaxPaymentsRequestBuilder request(GetTaxPaymentsRequest request) { + Utils.checkNotNull(request, "request"); + this.request = request; + return this; + } + + public GetTaxPaymentsResponse call() { + + RequestOperation operation + = new GetTaxPayments.Sync(sdkConfiguration, _headers); + + return operation.handleResponse(operation.doRequest(request)); + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetTaxPaymentsResponse.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetTaxPaymentsResponse.java new file mode 100644 index 000000000..354b8e622 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetTaxPaymentsResponse.java @@ -0,0 +1,254 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2026_06_15.models.components.TaxPayment; +import com.gusto.embedded_api_v_2026_06_15.utils.Response; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.io.InputStream; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.List; +import java.util.Optional; + + +public class GetTaxPaymentsResponse implements Response { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * Success + */ + private Optional> taxPaymentList; + + @JsonCreator + public GetTaxPaymentsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional> taxPaymentList) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(taxPaymentList, "taxPaymentList"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.taxPaymentList = taxPaymentList; + } + + public GetTaxPaymentsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * Success + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> taxPaymentList() { + return (Optional>) taxPaymentList; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public GetTaxPaymentsResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public GetTaxPaymentsResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public GetTaxPaymentsResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * Success + */ + public GetTaxPaymentsResponse withTaxPaymentList(List taxPaymentList) { + Utils.checkNotNull(taxPaymentList, "taxPaymentList"); + this.taxPaymentList = Optional.ofNullable(taxPaymentList); + return this; + } + + + /** + * Success + */ + public GetTaxPaymentsResponse withTaxPaymentList(Optional> taxPaymentList) { + Utils.checkNotNull(taxPaymentList, "taxPaymentList"); + this.taxPaymentList = taxPaymentList; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetTaxPaymentsResponse other = (GetTaxPaymentsResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.taxPaymentList, other.taxPaymentList); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + taxPaymentList); + } + + @Override + public String toString() { + return Utils.toString(GetTaxPaymentsResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "taxPaymentList", taxPaymentList); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional> taxPaymentList = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * Success + */ + public Builder taxPaymentList(List taxPaymentList) { + Utils.checkNotNull(taxPaymentList, "taxPaymentList"); + this.taxPaymentList = Optional.ofNullable(taxPaymentList); + return this; + } + + /** + * Success + */ + public Builder taxPaymentList(Optional> taxPaymentList) { + Utils.checkNotNull(taxPaymentList, "taxPaymentList"); + this.taxPaymentList = taxPaymentList; + return this; + } + + public GetTaxPaymentsResponse build() { + + return new GetTaxPaymentsResponse( + contentType, statusCode, rawResponse, + taxPaymentList); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1BenefitsResponse.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1BenefitsResponse.java index beb118bb3..81d092937 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1BenefitsResponse.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1BenefitsResponse.java @@ -37,22 +37,22 @@ public class GetV1BenefitsResponse implements Response { /** * Successful */ - private Optional> supportedBenefits; + private Optional> supportedBenefitList; @JsonCreator public GetV1BenefitsResponse( String contentType, int statusCode, HttpResponse rawResponse, - Optional> supportedBenefits) { + Optional> supportedBenefitList) { Utils.checkNotNull(contentType, "contentType"); Utils.checkNotNull(statusCode, "statusCode"); Utils.checkNotNull(rawResponse, "rawResponse"); - Utils.checkNotNull(supportedBenefits, "supportedBenefits"); + Utils.checkNotNull(supportedBenefitList, "supportedBenefitList"); this.contentType = contentType; this.statusCode = statusCode; this.rawResponse = rawResponse; - this.supportedBenefits = supportedBenefits; + this.supportedBenefitList = supportedBenefitList; } public GetV1BenefitsResponse( @@ -92,8 +92,8 @@ public HttpResponse rawResponse() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional> supportedBenefits() { - return (Optional>) supportedBenefits; + public Optional> supportedBenefitList() { + return (Optional>) supportedBenefitList; } public static Builder builder() { @@ -131,9 +131,9 @@ public GetV1BenefitsResponse withRawResponse(HttpResponse rawRespon /** * Successful */ - public GetV1BenefitsResponse withSupportedBenefits(List supportedBenefits) { - Utils.checkNotNull(supportedBenefits, "supportedBenefits"); - this.supportedBenefits = Optional.ofNullable(supportedBenefits); + public GetV1BenefitsResponse withSupportedBenefitList(List supportedBenefitList) { + Utils.checkNotNull(supportedBenefitList, "supportedBenefitList"); + this.supportedBenefitList = Optional.ofNullable(supportedBenefitList); return this; } @@ -141,9 +141,9 @@ public GetV1BenefitsResponse withSupportedBenefits(List suppor /** * Successful */ - public GetV1BenefitsResponse withSupportedBenefits(Optional> supportedBenefits) { - Utils.checkNotNull(supportedBenefits, "supportedBenefits"); - this.supportedBenefits = supportedBenefits; + public GetV1BenefitsResponse withSupportedBenefitList(Optional> supportedBenefitList) { + Utils.checkNotNull(supportedBenefitList, "supportedBenefitList"); + this.supportedBenefitList = supportedBenefitList; return this; } @@ -160,14 +160,14 @@ public boolean equals(java.lang.Object o) { Utils.enhancedDeepEquals(this.contentType, other.contentType) && Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && - Utils.enhancedDeepEquals(this.supportedBenefits, other.supportedBenefits); + Utils.enhancedDeepEquals(this.supportedBenefitList, other.supportedBenefitList); } @Override public int hashCode() { return Utils.enhancedHash( contentType, statusCode, rawResponse, - supportedBenefits); + supportedBenefitList); } @Override @@ -176,7 +176,7 @@ public String toString() { "contentType", contentType, "statusCode", statusCode, "rawResponse", rawResponse, - "supportedBenefits", supportedBenefits); + "supportedBenefitList", supportedBenefitList); } @SuppressWarnings("UnusedReturnValue") @@ -188,7 +188,7 @@ public final static class Builder { private HttpResponse rawResponse; - private Optional> supportedBenefits = Optional.empty(); + private Optional> supportedBenefitList = Optional.empty(); private Builder() { // force use of static builder() method @@ -228,18 +228,18 @@ public Builder rawResponse(HttpResponse rawResponse) { /** * Successful */ - public Builder supportedBenefits(List supportedBenefits) { - Utils.checkNotNull(supportedBenefits, "supportedBenefits"); - this.supportedBenefits = Optional.ofNullable(supportedBenefits); + public Builder supportedBenefitList(List supportedBenefitList) { + Utils.checkNotNull(supportedBenefitList, "supportedBenefitList"); + this.supportedBenefitList = Optional.ofNullable(supportedBenefitList); return this; } /** * Successful */ - public Builder supportedBenefits(Optional> supportedBenefits) { - Utils.checkNotNull(supportedBenefits, "supportedBenefits"); - this.supportedBenefits = supportedBenefits; + public Builder supportedBenefitList(Optional> supportedBenefitList) { + Utils.checkNotNull(supportedBenefitList, "supportedBenefitList"); + this.supportedBenefitList = supportedBenefitList; return this; } @@ -247,7 +247,7 @@ public GetV1BenefitsResponse build() { return new GetV1BenefitsResponse( contentType, statusCode, rawResponse, - supportedBenefits); + supportedBenefitList); } } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion.java new file mode 100644 index 000000000..32f4f0f4a --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion + * + *

    Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ +public enum GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion { + TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15("2026-06-15"); + + @JsonValue + private final String value; + + GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion o: GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1BulkReportsRequestUuidRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1BulkReportsRequestUuidRequest.java new file mode 100644 index 000000000..ff412bfc5 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1BulkReportsRequestUuidRequest.java @@ -0,0 +1,191 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2026_06_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2026_06_15.utils.SpeakeasyMetadata; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class GetV1BulkReportsRequestUuidRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + + /** + * The UUID of the bulk report batch. + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=request_uuid") + private String requestUuid; + + @JsonCreator + public GetV1BulkReportsRequestUuidRequest( + Optional xGustoAPIVersion, + String requestUuid) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(requestUuid, "requestUuid"); + this.xGustoAPIVersion = xGustoAPIVersion; + this.requestUuid = requestUuid; + } + + public GetV1BulkReportsRequestUuidRequest( + String requestUuid) { + this(Optional.empty(), requestUuid); + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + + /** + * The UUID of the bulk report batch. + */ + @JsonIgnore + public String requestUuid() { + return requestUuid; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetV1BulkReportsRequestUuidRequest withXGustoAPIVersion(GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetV1BulkReportsRequestUuidRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + /** + * The UUID of the bulk report batch. + */ + public GetV1BulkReportsRequestUuidRequest withRequestUuid(String requestUuid) { + Utils.checkNotNull(requestUuid, "requestUuid"); + this.requestUuid = requestUuid; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetV1BulkReportsRequestUuidRequest other = (GetV1BulkReportsRequestUuidRequest) o; + return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.requestUuid, other.requestUuid); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + xGustoAPIVersion, requestUuid); + } + + @Override + public String toString() { + return Utils.toString(GetV1BulkReportsRequestUuidRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, + "requestUuid", requestUuid); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional xGustoAPIVersion; + + private String requestUuid; + + private Builder() { + // force use of static builder() method + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + + /** + * The UUID of the bulk report batch. + */ + public Builder requestUuid(String requestUuid) { + Utils.checkNotNull(requestUuid, "requestUuid"); + this.requestUuid = requestUuid; + return this; + } + + public GetV1BulkReportsRequestUuidRequest build() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + return new GetV1BulkReportsRequestUuidRequest( + xGustoAPIVersion, requestUuid); + } + + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "X-Gusto-API-Version", + "\"2026-06-15\"", + new TypeReference>() {}); + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1BulkReportsRequestUuidRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1BulkReportsRequestUuidRequestBuilder.java new file mode 100644 index 000000000..d49c2711d --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1BulkReportsRequestUuidRequestBuilder.java @@ -0,0 +1,82 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import static com.gusto.embedded_api_v_2026_06_15.operations.Operations.RequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2026_06_15.SDKConfiguration; +import com.gusto.embedded_api_v_2026_06_15.operations.GetV1BulkReportsRequestUuid; +import com.gusto.embedded_api_v_2026_06_15.utils.Headers; +import com.gusto.embedded_api_v_2026_06_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.String; +import java.util.Optional; + +public class GetV1BulkReportsRequestUuidRequestBuilder { + + private GetV1BulkReportsRequestUuidSecurity security; + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2026-06-15\"", + new TypeReference>() {}); + private String requestUuid; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public GetV1BulkReportsRequestUuidRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public GetV1BulkReportsRequestUuidRequestBuilder security(GetV1BulkReportsRequestUuidSecurity security) { + Utils.checkNotNull(security, "security"); + this.security = security; + return this; + } + + public GetV1BulkReportsRequestUuidRequestBuilder xGustoAPIVersion(GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetV1BulkReportsRequestUuidRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public GetV1BulkReportsRequestUuidRequestBuilder requestUuid(String requestUuid) { + Utils.checkNotNull(requestUuid, "requestUuid"); + this.requestUuid = requestUuid; + return this; + } + + + private GetV1BulkReportsRequestUuidRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + GetV1BulkReportsRequestUuidRequest request = new GetV1BulkReportsRequestUuidRequest(xGustoAPIVersion, + requestUuid); + + return request; + } + + public GetV1BulkReportsRequestUuidResponse call() { + + RequestOperation operation + = new GetV1BulkReportsRequestUuid.Sync(sdkConfiguration, security, _headers); + GetV1BulkReportsRequestUuidRequest request = buildRequest(); + + return operation.handleResponse(operation.doRequest(request)); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2026-06-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1BulkReportsRequestUuidResponse.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1BulkReportsRequestUuidResponse.java new file mode 100644 index 000000000..9ba75337a --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1BulkReportsRequestUuidResponse.java @@ -0,0 +1,253 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2026_06_15.models.components.BulkReport; +import com.gusto.embedded_api_v_2026_06_15.utils.Response; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.io.InputStream; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.Optional; + + +public class GetV1BulkReportsRequestUuidResponse implements Response { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * OK + */ + private Optional bulkReport; + + @JsonCreator + public GetV1BulkReportsRequestUuidResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional bulkReport) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(bulkReport, "bulkReport"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.bulkReport = bulkReport; + } + + public GetV1BulkReportsRequestUuidResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * OK + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional bulkReport() { + return (Optional) bulkReport; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public GetV1BulkReportsRequestUuidResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public GetV1BulkReportsRequestUuidResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public GetV1BulkReportsRequestUuidResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * OK + */ + public GetV1BulkReportsRequestUuidResponse withBulkReport(BulkReport bulkReport) { + Utils.checkNotNull(bulkReport, "bulkReport"); + this.bulkReport = Optional.ofNullable(bulkReport); + return this; + } + + + /** + * OK + */ + public GetV1BulkReportsRequestUuidResponse withBulkReport(Optional bulkReport) { + Utils.checkNotNull(bulkReport, "bulkReport"); + this.bulkReport = bulkReport; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetV1BulkReportsRequestUuidResponse other = (GetV1BulkReportsRequestUuidResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.bulkReport, other.bulkReport); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + bulkReport); + } + + @Override + public String toString() { + return Utils.toString(GetV1BulkReportsRequestUuidResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "bulkReport", bulkReport); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional bulkReport = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * OK + */ + public Builder bulkReport(BulkReport bulkReport) { + Utils.checkNotNull(bulkReport, "bulkReport"); + this.bulkReport = Optional.ofNullable(bulkReport); + return this; + } + + /** + * OK + */ + public Builder bulkReport(Optional bulkReport) { + Utils.checkNotNull(bulkReport, "bulkReport"); + this.bulkReport = bulkReport; + return this; + } + + public GetV1BulkReportsRequestUuidResponse build() { + + return new GetV1BulkReportsRequestUuidResponse( + contentType, statusCode, rawResponse, + bulkReport); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1BulkReportsRequestUuidSecurity.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1BulkReportsRequestUuidSecurity.java new file mode 100644 index 000000000..3d6e0f7f2 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1BulkReportsRequestUuidSecurity.java @@ -0,0 +1,91 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2026_06_15.utils.HasSecurity; +import com.gusto.embedded_api_v_2026_06_15.utils.SpeakeasyMetadata; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Override; +import java.lang.String; + + +public class GetV1BulkReportsRequestUuidSecurity implements HasSecurity { + + @SpeakeasyMetadata("security:scheme=true,type=http,subtype=bearer,name=Authorization") + private String systemAccessAuth; + + @JsonCreator + public GetV1BulkReportsRequestUuidSecurity( + String systemAccessAuth) { + Utils.checkNotNull(systemAccessAuth, "systemAccessAuth"); + this.systemAccessAuth = systemAccessAuth; + } + + @JsonIgnore + public String systemAccessAuth() { + return systemAccessAuth; + } + + public static Builder builder() { + return new Builder(); + } + + + public GetV1BulkReportsRequestUuidSecurity withSystemAccessAuth(String systemAccessAuth) { + Utils.checkNotNull(systemAccessAuth, "systemAccessAuth"); + this.systemAccessAuth = systemAccessAuth; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetV1BulkReportsRequestUuidSecurity other = (GetV1BulkReportsRequestUuidSecurity) o; + return + Utils.enhancedDeepEquals(this.systemAccessAuth, other.systemAccessAuth); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + systemAccessAuth); + } + + @Override + public String toString() { + return Utils.toString(GetV1BulkReportsRequestUuidSecurity.class, + "systemAccessAuth", systemAccessAuth); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String systemAccessAuth; + + private Builder() { + // force use of static builder() method + } + + + public Builder systemAccessAuth(String systemAccessAuth) { + Utils.checkNotNull(systemAccessAuth, "systemAccessAuth"); + this.systemAccessAuth = systemAccessAuth; + return this; + } + + public GetV1BulkReportsRequestUuidSecurity build() { + + return new GetV1BulkReportsRequestUuidSecurity( + systemAccessAuth); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyIdContractorPaymentGroupsRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyIdContractorPaymentGroupsRequest.java index 0699e1639..1b706199a 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyIdContractorPaymentGroupsRequest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyIdContractorPaymentGroupsRequest.java @@ -17,6 +17,14 @@ public class GetV1CompaniesCompanyIdContractorPaymentGroupsRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + /** * The UUID of the company */ @@ -48,42 +56,45 @@ public class GetV1CompaniesCompanyIdContractorPaymentGroupsRequest { @SpeakeasyMetadata("queryParam:style=form,explode=true,name=per") private Optional per; - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; - @JsonCreator public GetV1CompaniesCompanyIdContractorPaymentGroupsRequest( + Optional xGustoAPIVersion, String companyId, Optional startDate, Optional endDate, Optional page, - Optional per, - Optional xGustoAPIVersion) { + Optional per) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(companyId, "companyId"); Utils.checkNotNull(startDate, "startDate"); Utils.checkNotNull(endDate, "endDate"); Utils.checkNotNull(page, "page"); Utils.checkNotNull(per, "per"); - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; this.companyId = companyId; this.startDate = startDate; this.endDate = endDate; this.page = page; this.per = per; - this.xGustoAPIVersion = xGustoAPIVersion; } public GetV1CompaniesCompanyIdContractorPaymentGroupsRequest( String companyId) { - this(companyId, Optional.empty(), Optional.empty(), + this(Optional.empty(), companyId, Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty()); } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + /** * The UUID of the company */ @@ -125,21 +136,33 @@ public Optional per() { return per; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional xGustoAPIVersion() { - return (Optional) xGustoAPIVersion; + public GetV1CompaniesCompanyIdContractorPaymentGroupsRequest withXGustoAPIVersion(GetV1CompaniesCompanyIdContractorPaymentGroupsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; } - public static Builder builder() { - return new Builder(); - } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetV1CompaniesCompanyIdContractorPaymentGroupsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } /** * The UUID of the company @@ -228,29 +251,6 @@ public GetV1CompaniesCompanyIdContractorPaymentGroupsRequest withPer(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } - @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -261,35 +261,37 @@ public boolean equals(java.lang.Object o) { } GetV1CompaniesCompanyIdContractorPaymentGroupsRequest other = (GetV1CompaniesCompanyIdContractorPaymentGroupsRequest) o; return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.companyId, other.companyId) && Utils.enhancedDeepEquals(this.startDate, other.startDate) && Utils.enhancedDeepEquals(this.endDate, other.endDate) && Utils.enhancedDeepEquals(this.page, other.page) && - Utils.enhancedDeepEquals(this.per, other.per) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.per, other.per); } @Override public int hashCode() { return Utils.enhancedHash( - companyId, startDate, endDate, - page, per, xGustoAPIVersion); + xGustoAPIVersion, companyId, startDate, + endDate, page, per); } @Override public String toString() { return Utils.toString(GetV1CompaniesCompanyIdContractorPaymentGroupsRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, "companyId", companyId, "startDate", startDate, "endDate", endDate, "page", page, - "per", per, - "xGustoAPIVersion", xGustoAPIVersion); + "per", per); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { + private Optional xGustoAPIVersion; + private String companyId; private Optional startDate = Optional.empty(); @@ -300,13 +302,34 @@ public final static class Builder { private Optional per = Optional.empty(); - private Optional xGustoAPIVersion; - private Builder() { // force use of static builder() method } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(GetV1CompaniesCompanyIdContractorPaymentGroupsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + /** * The UUID of the company */ @@ -394,37 +417,14 @@ public Builder per(Optional per) { return this; } - - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public Builder xGustoAPIVersion(GetV1CompaniesCompanyIdContractorPaymentGroupsHeaderXGustoAPIVersion xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); - return this; - } - - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } - public GetV1CompaniesCompanyIdContractorPaymentGroupsRequest build() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } return new GetV1CompaniesCompanyIdContractorPaymentGroupsRequest( - companyId, startDate, endDate, - page, per, xGustoAPIVersion); + xGustoAPIVersion, companyId, startDate, + endDate, page, per); } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest.java index fbeac9f00..9313b5097 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest.java @@ -16,6 +16,14 @@ public class GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + /** * The UUID of the company. This identifies the company whose contractor payment details you want to * retrieve. @@ -37,36 +45,39 @@ public class GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest { @SpeakeasyMetadata("queryParam:style=form,explode=true,name=contractor_payment_group_uuid") private Optional contractorPaymentGroupUuid; - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; - @JsonCreator public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest( + Optional xGustoAPIVersion, String companyId, Optional contractorUuid, - Optional contractorPaymentGroupUuid, - Optional xGustoAPIVersion) { + Optional contractorPaymentGroupUuid) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(companyId, "companyId"); Utils.checkNotNull(contractorUuid, "contractorUuid"); Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; this.companyId = companyId; this.contractorUuid = contractorUuid; this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; - this.xGustoAPIVersion = xGustoAPIVersion; } public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest( String companyId) { - this(companyId, Optional.empty(), Optional.empty(), + this(Optional.empty(), companyId, Optional.empty(), Optional.empty()); } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + /** * The UUID of the company. This identifies the company whose contractor payment details you want to * retrieve. @@ -94,21 +105,33 @@ public Optional contractorPaymentGroupUuid() { return contractorPaymentGroupUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional xGustoAPIVersion() { - return (Optional) xGustoAPIVersion; + public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest withXGustoAPIVersion(GetV1CompaniesCompanyIdContractorsPaymentDetailsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; } - public static Builder builder() { - return new Builder(); - } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } /** * The UUID of the company. This identifies the company whose contractor payment details you want to @@ -162,29 +185,6 @@ public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest withContractorPay return this; } - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest withXGustoAPIVersion(GetV1CompaniesCompanyIdContractorsPaymentDetailsHeaderXGustoAPIVersion xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); - return this; - } - - - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } - @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -195,44 +195,67 @@ public boolean equals(java.lang.Object o) { } GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest other = (GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest) o; return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.companyId, other.companyId) && Utils.enhancedDeepEquals(this.contractorUuid, other.contractorUuid) && - Utils.enhancedDeepEquals(this.contractorPaymentGroupUuid, other.contractorPaymentGroupUuid) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.contractorPaymentGroupUuid, other.contractorPaymentGroupUuid); } @Override public int hashCode() { return Utils.enhancedHash( - companyId, contractorUuid, contractorPaymentGroupUuid, - xGustoAPIVersion); + xGustoAPIVersion, companyId, contractorUuid, + contractorPaymentGroupUuid); } @Override public String toString() { return Utils.toString(GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, "companyId", companyId, "contractorUuid", contractorUuid, - "contractorPaymentGroupUuid", contractorPaymentGroupUuid, - "xGustoAPIVersion", xGustoAPIVersion); + "contractorPaymentGroupUuid", contractorPaymentGroupUuid); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { + private Optional xGustoAPIVersion; + private String companyId; private Optional contractorUuid = Optional.empty(); private Optional contractorPaymentGroupUuid = Optional.empty(); - private Optional xGustoAPIVersion; - private Builder() { // force use of static builder() method } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(GetV1CompaniesCompanyIdContractorsPaymentDetailsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + /** * The UUID of the company. This identifies the company whose contractor payment details you want to * retrieve. @@ -285,37 +308,14 @@ public Builder contractorPaymentGroupUuid(Optional contractorPaymentGrou return this; } - - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public Builder xGustoAPIVersion(GetV1CompaniesCompanyIdContractorsPaymentDetailsHeaderXGustoAPIVersion xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); - return this; - } - - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } - public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest build() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } return new GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest( - companyId, contractorUuid, contractorPaymentGroupUuid, - xGustoAPIVersion); + xGustoAPIVersion, companyId, contractorUuid, + contractorPaymentGroupUuid); } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder.java index 7c2db6f71..042b20e45 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder.java @@ -16,19 +16,31 @@ public class GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder { - private String companyId; - private Optional contractorUuid = Optional.empty(); - private Optional contractorPaymentGroupUuid = Optional.empty(); private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String companyId; + private Optional contractorUuid = Optional.empty(); + private Optional contractorPaymentGroupUuid = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } + + public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder xGustoAPIVersion(GetV1CompaniesCompanyIdContractorsPaymentDetailsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder companyId(String companyId) { Utils.checkNotNull(companyId, "companyId"); @@ -59,18 +71,6 @@ public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder contractor this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; return this; } - - public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder xGustoAPIVersion(GetV1CompaniesCompanyIdContractorsPaymentDetailsHeaderXGustoAPIVersion xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); - return this; - } - - public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } private GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest buildRequest() { @@ -78,10 +78,10 @@ private GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest request = new GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest(companyId, + GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest request = new GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest(xGustoAPIVersion, + companyId, contractorUuid, - contractorPaymentGroupUuid, - xGustoAPIVersion); + contractorPaymentGroupUuid); return request; } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyIdFederalTaxDetailsRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyIdFederalTaxDetailsRequest.java index 9da8cbed4..f104b342f 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyIdFederalTaxDetailsRequest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyIdFederalTaxDetailsRequest.java @@ -16,12 +16,6 @@ public class GetV1CompaniesCompanyIdFederalTaxDetailsRequest { - /** - * The UUID of the company - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_id") - private String companyId; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class GetV1CompaniesCompanyIdFederalTaxDetailsRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_id") + private String companyId; + @JsonCreator public GetV1CompaniesCompanyIdFederalTaxDetailsRequest( - String companyId, - Optional xGustoAPIVersion) { - Utils.checkNotNull(companyId, "companyId"); + Optional xGustoAPIVersion, + String companyId) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.companyId = companyId; + Utils.checkNotNull(companyId, "companyId"); this.xGustoAPIVersion = xGustoAPIVersion; + this.companyId = companyId; } public GetV1CompaniesCompanyIdFederalTaxDetailsRequest( String companyId) { - this(companyId, Optional.empty()); - } - - /** - * The UUID of the company - */ - @JsonIgnore - public String companyId() { - return companyId; + this(Optional.empty(), companyId); } /** @@ -64,20 +56,19 @@ public Optional return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the company */ - public GetV1CompaniesCompanyIdFederalTaxDetailsRequest withCompanyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; + @JsonIgnore + public String companyId() { + return companyId; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetV1CompaniesCompanyIdFederalTaxDetailsRequest withXGustoAPIVersion(Opti return this; } + /** + * The UUID of the company + */ + public GetV1CompaniesCompanyIdFederalTaxDetailsRequest withCompanyId(String companyId) { + Utils.checkNotNull(companyId, "companyId"); + this.companyId = companyId; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -111,45 +111,35 @@ public boolean equals(java.lang.Object o) { } GetV1CompaniesCompanyIdFederalTaxDetailsRequest other = (GetV1CompaniesCompanyIdFederalTaxDetailsRequest) o; return - Utils.enhancedDeepEquals(this.companyId, other.companyId) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.companyId, other.companyId); } @Override public int hashCode() { return Utils.enhancedHash( - companyId, xGustoAPIVersion); + xGustoAPIVersion, companyId); } @Override public String toString() { return Utils.toString(GetV1CompaniesCompanyIdFederalTaxDetailsRequest.class, - "companyId", companyId, - "xGustoAPIVersion", xGustoAPIVersion); + "xGustoAPIVersion", xGustoAPIVersion, + "companyId", companyId); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String companyId; - private Optional xGustoAPIVersion; + private String companyId; + private Builder() { // force use of static builder() method } - /** - * The UUID of the company - */ - public Builder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String companyId; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } public GetV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder xGustoAPIVersion(GetV1CompaniesCompanyIdFederalTaxDetailsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public GetV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder xGustoAPIVersion(O return this; } + public GetV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder companyId(String companyId) { + Utils.checkNotNull(companyId, "companyId"); + this.companyId = companyId; + return this; + } + private GetV1CompaniesCompanyIdFederalTaxDetailsRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1CompaniesCompanyIdFederalTaxDetailsRequest request = new GetV1CompaniesCompanyIdFederalTaxDetailsRequest(companyId, - xGustoAPIVersion); + GetV1CompaniesCompanyIdFederalTaxDetailsRequest request = new GetV1CompaniesCompanyIdFederalTaxDetailsRequest(xGustoAPIVersion, + companyId); return request; } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyIdPaySchedulesPreviewRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyIdPaySchedulesPreviewRequest.java index b8f396774..766b36268 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyIdPaySchedulesPreviewRequest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyIdPaySchedulesPreviewRequest.java @@ -76,6 +76,15 @@ public class GetV1CompaniesCompanyIdPaySchedulesPreviewRequest { @SpeakeasyMetadata("queryParam:style=form,explode=true,name=end_date") private Optional endDate; + /** + * Optional UUID of an existing pay schedule. When supplied, the preview is seeded from the persisted + * schedule — including internal flags (such as arrears handling) that affect period boundaries but are + * not exposed as request parameters. Any other query parameters override individual attributes on top + * of the loaded schedule. + */ + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=pay_schedule_uuid") + private Optional payScheduleUuid; + @JsonCreator public GetV1CompaniesCompanyIdPaySchedulesPreviewRequest( Optional xGustoAPIVersion, @@ -85,7 +94,8 @@ public GetV1CompaniesCompanyIdPaySchedulesPreviewRequest( LocalDate anchorEndOfPayPeriod, Optional day1, Optional day2, - Optional endDate) { + Optional endDate, + Optional payScheduleUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(companyId, "companyId"); Utils.checkNotNull(frequency, "frequency"); @@ -94,6 +104,7 @@ public GetV1CompaniesCompanyIdPaySchedulesPreviewRequest( Utils.checkNotNull(day1, "day1"); Utils.checkNotNull(day2, "day2"); Utils.checkNotNull(endDate, "endDate"); + Utils.checkNotNull(payScheduleUuid, "payScheduleUuid"); this.xGustoAPIVersion = xGustoAPIVersion; this.companyId = companyId; this.frequency = frequency; @@ -102,6 +113,7 @@ public GetV1CompaniesCompanyIdPaySchedulesPreviewRequest( this.day1 = day1; this.day2 = day2; this.endDate = endDate; + this.payScheduleUuid = payScheduleUuid; } public GetV1CompaniesCompanyIdPaySchedulesPreviewRequest( @@ -111,7 +123,7 @@ public GetV1CompaniesCompanyIdPaySchedulesPreviewRequest( LocalDate anchorEndOfPayPeriod) { this(Optional.empty(), companyId, frequency, anchorPayDate, anchorEndOfPayPeriod, Optional.empty(), - Optional.empty(), Optional.empty()); + Optional.empty(), Optional.empty(), Optional.empty()); } /** @@ -189,6 +201,17 @@ public Optional endDate() { return endDate; } + /** + * Optional UUID of an existing pay schedule. When supplied, the preview is seeded from the persisted + * schedule — including internal flags (such as arrears handling) that affect period boundaries but are + * not exposed as request parameters. Any other query parameters override individual attributes on top + * of the loaded schedule. + */ + @JsonIgnore + public Optional payScheduleUuid() { + return payScheduleUuid; + } + public static Builder builder() { return new Builder(); } @@ -326,6 +349,31 @@ public GetV1CompaniesCompanyIdPaySchedulesPreviewRequest withEndDate(Optional payScheduleUuid) { + Utils.checkNotNull(payScheduleUuid, "payScheduleUuid"); + this.payScheduleUuid = payScheduleUuid; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -343,7 +391,8 @@ public boolean equals(java.lang.Object o) { Utils.enhancedDeepEquals(this.anchorEndOfPayPeriod, other.anchorEndOfPayPeriod) && Utils.enhancedDeepEquals(this.day1, other.day1) && Utils.enhancedDeepEquals(this.day2, other.day2) && - Utils.enhancedDeepEquals(this.endDate, other.endDate); + Utils.enhancedDeepEquals(this.endDate, other.endDate) && + Utils.enhancedDeepEquals(this.payScheduleUuid, other.payScheduleUuid); } @Override @@ -351,7 +400,7 @@ public int hashCode() { return Utils.enhancedHash( xGustoAPIVersion, companyId, frequency, anchorPayDate, anchorEndOfPayPeriod, day1, - day2, endDate); + day2, endDate, payScheduleUuid); } @Override @@ -364,7 +413,8 @@ public String toString() { "anchorEndOfPayPeriod", anchorEndOfPayPeriod, "day1", day1, "day2", day2, - "endDate", endDate); + "endDate", endDate, + "payScheduleUuid", payScheduleUuid); } @SuppressWarnings("UnusedReturnValue") @@ -386,6 +436,8 @@ public final static class Builder { private Optional endDate = Optional.empty(); + private Optional payScheduleUuid = Optional.empty(); + private Builder() { // force use of static builder() method } @@ -526,6 +578,31 @@ public Builder endDate(Optional endDate) { return this; } + + /** + * Optional UUID of an existing pay schedule. When supplied, the preview is seeded from the persisted + * schedule — including internal flags (such as arrears handling) that affect period boundaries but are + * not exposed as request parameters. Any other query parameters override individual attributes on top + * of the loaded schedule. + */ + public Builder payScheduleUuid(String payScheduleUuid) { + Utils.checkNotNull(payScheduleUuid, "payScheduleUuid"); + this.payScheduleUuid = Optional.ofNullable(payScheduleUuid); + return this; + } + + /** + * Optional UUID of an existing pay schedule. When supplied, the preview is seeded from the persisted + * schedule — including internal flags (such as arrears handling) that affect period boundaries but are + * not exposed as request parameters. Any other query parameters override individual attributes on top + * of the loaded schedule. + */ + public Builder payScheduleUuid(Optional payScheduleUuid) { + Utils.checkNotNull(payScheduleUuid, "payScheduleUuid"); + this.payScheduleUuid = payScheduleUuid; + return this; + } + public GetV1CompaniesCompanyIdPaySchedulesPreviewRequest build() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); @@ -534,7 +611,7 @@ public GetV1CompaniesCompanyIdPaySchedulesPreviewRequest build() { return new GetV1CompaniesCompanyIdPaySchedulesPreviewRequest( xGustoAPIVersion, companyId, frequency, anchorPayDate, anchorEndOfPayPeriod, day1, - day2, endDate); + day2, endDate, payScheduleUuid); } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion.java new file mode 100644 index 000000000..4d9dd5bec --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion + * + *

    Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ +public enum GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion { + TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15("2026-06-15"); + + @JsonValue + private final String value; + + GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion o: GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyIdPayrollReversalsRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyIdPayrollReversalsRequest.java index f970897b9..05f60ec82 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyIdPayrollReversalsRequest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyIdPayrollReversalsRequest.java @@ -6,7 +6,6 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.core.type.TypeReference; -import com.gusto.embedded_api_v_2026_06_15.models.components.VersionHeader; import com.gusto.embedded_api_v_2026_06_15.utils.LazySingletonValue; import com.gusto.embedded_api_v_2026_06_15.utils.SpeakeasyMetadata; import com.gusto.embedded_api_v_2026_06_15.utils.Utils; @@ -18,6 +17,14 @@ public class GetV1CompaniesCompanyIdPayrollReversalsRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + /** * The UUID of the company */ @@ -37,36 +44,39 @@ public class GetV1CompaniesCompanyIdPayrollReversalsRequest { @SpeakeasyMetadata("queryParam:style=form,explode=true,name=per") private Optional per; - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; - @JsonCreator public GetV1CompaniesCompanyIdPayrollReversalsRequest( + Optional xGustoAPIVersion, String companyId, Optional page, - Optional per, - Optional xGustoAPIVersion) { + Optional per) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(companyId, "companyId"); Utils.checkNotNull(page, "page"); Utils.checkNotNull(per, "per"); - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; this.companyId = companyId; this.page = page; this.per = per; - this.xGustoAPIVersion = xGustoAPIVersion; } public GetV1CompaniesCompanyIdPayrollReversalsRequest( String companyId) { - this(companyId, Optional.empty(), Optional.empty(), + this(Optional.empty(), companyId, Optional.empty(), Optional.empty()); } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + /** * The UUID of the company */ @@ -92,21 +102,33 @@ public Optional per() { return per; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional xGustoAPIVersion() { - return (Optional) xGustoAPIVersion; + public GetV1CompaniesCompanyIdPayrollReversalsRequest withXGustoAPIVersion(GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; } - public static Builder builder() { - return new Builder(); - } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetV1CompaniesCompanyIdPayrollReversalsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } /** * The UUID of the company @@ -157,29 +179,6 @@ public GetV1CompaniesCompanyIdPayrollReversalsRequest withPer(Optional per return this; } - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public GetV1CompaniesCompanyIdPayrollReversalsRequest withXGustoAPIVersion(VersionHeader xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); - return this; - } - - - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public GetV1CompaniesCompanyIdPayrollReversalsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } - @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -190,44 +189,67 @@ public boolean equals(java.lang.Object o) { } GetV1CompaniesCompanyIdPayrollReversalsRequest other = (GetV1CompaniesCompanyIdPayrollReversalsRequest) o; return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.companyId, other.companyId) && Utils.enhancedDeepEquals(this.page, other.page) && - Utils.enhancedDeepEquals(this.per, other.per) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.per, other.per); } @Override public int hashCode() { return Utils.enhancedHash( - companyId, page, per, - xGustoAPIVersion); + xGustoAPIVersion, companyId, page, + per); } @Override public String toString() { return Utils.toString(GetV1CompaniesCompanyIdPayrollReversalsRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, "companyId", companyId, "page", page, - "per", per, - "xGustoAPIVersion", xGustoAPIVersion); + "per", per); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { + private Optional xGustoAPIVersion; + private String companyId; private Optional page = Optional.empty(); private Optional per = Optional.empty(); - private Optional xGustoAPIVersion; - private Builder() { // force use of static builder() method } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + /** * The UUID of the company */ @@ -277,44 +299,21 @@ public Builder per(Optional per) { return this; } - - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public Builder xGustoAPIVersion(VersionHeader xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); - return this; - } - - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } - public GetV1CompaniesCompanyIdPayrollReversalsRequest build() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } return new GetV1CompaniesCompanyIdPayrollReversalsRequest( - companyId, page, per, - xGustoAPIVersion); + xGustoAPIVersion, companyId, page, + per); } - private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = new LazySingletonValue<>( "X-Gusto-API-Version", "\"2026-06-15\"", - new TypeReference>() {}); + new TypeReference>() {}); } } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder.java index de85e1b04..0bddf8b9c 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder.java @@ -7,7 +7,6 @@ import com.fasterxml.jackson.core.type.TypeReference; import com.gusto.embedded_api_v_2026_06_15.SDKConfiguration; -import com.gusto.embedded_api_v_2026_06_15.models.components.VersionHeader; import com.gusto.embedded_api_v_2026_06_15.operations.GetV1CompaniesCompanyIdPayrollReversals; import com.gusto.embedded_api_v_2026_06_15.utils.Headers; import com.gusto.embedded_api_v_2026_06_15.utils.LazySingletonValue; @@ -18,19 +17,31 @@ public class GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder { + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2026-06-15\"", + new TypeReference>() {}); private String companyId; private Optional page = Optional.empty(); private Optional per = Optional.empty(); - private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( - "xGustoAPIVersion", - "\"2026-06-15\"", - new TypeReference>() {}); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } + + public GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder xGustoAPIVersion(GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } public GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder companyId(String companyId) { Utils.checkNotNull(companyId, "companyId"); @@ -61,18 +72,6 @@ public GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder per(Optional this.per = per; return this; } - - public GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder xGustoAPIVersion(VersionHeader xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); - return this; - } - - public GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } private GetV1CompaniesCompanyIdPayrollReversalsRequest buildRequest() { @@ -80,10 +79,10 @@ private GetV1CompaniesCompanyIdPayrollReversalsRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1CompaniesCompanyIdPayrollReversalsRequest request = new GetV1CompaniesCompanyIdPayrollReversalsRequest(companyId, + GetV1CompaniesCompanyIdPayrollReversalsRequest request = new GetV1CompaniesCompanyIdPayrollReversalsRequest(xGustoAPIVersion, + companyId, page, - per, - xGustoAPIVersion); + per); return request; } @@ -97,9 +96,9 @@ public GetV1CompaniesCompanyIdPayrollReversalsResponse call() { return operation.handleResponse(operation.doRequest(request)); } - private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = new LazySingletonValue<>( "xGustoAPIVersion", "\"2026-06-15\"", - new TypeReference>() {}); + new TypeReference>() {}); } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.java index c4e350a43..ecab55ee1 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.java @@ -16,6 +16,14 @@ public class GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + /** * The UUID of the company */ @@ -28,47 +36,23 @@ public class GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest { @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=id") private String id; - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; - @JsonCreator public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest( + Optional xGustoAPIVersion, String companyId, - String id, - Optional xGustoAPIVersion) { + String id) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(companyId, "companyId"); Utils.checkNotNull(id, "id"); - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; this.companyId = companyId; this.id = id; - this.xGustoAPIVersion = xGustoAPIVersion; } public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest( String companyId, String id) { - this(companyId, id, Optional.empty()); - } - - /** - * The UUID of the company - */ - @JsonIgnore - public String companyId() { - return companyId; - } - - /** - * The UUID of the payroll - */ - @JsonIgnore - public String id() { - return id; + this(Optional.empty(), companyId, id); } /** @@ -82,29 +66,27 @@ public Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the company */ - public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest withCompanyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; + @JsonIgnore + public String companyId() { + return companyId; } /** * The UUID of the payroll */ - public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest withId(String id) { - Utils.checkNotNull(id, "id"); - this.id = id; - return this; + @JsonIgnore + public String id() { + return id; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -128,6 +110,24 @@ public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest withXGustoAP return this; } + /** + * The UUID of the company + */ + public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest withCompanyId(String companyId) { + Utils.checkNotNull(companyId, "companyId"); + this.companyId = companyId; + return this; + } + + /** + * The UUID of the payroll + */ + public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest withId(String id) { + Utils.checkNotNull(id, "id"); + this.id = id; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -138,59 +138,39 @@ public boolean equals(java.lang.Object o) { } GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest other = (GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest) o; return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.companyId, other.companyId) && - Utils.enhancedDeepEquals(this.id, other.id) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.id, other.id); } @Override public int hashCode() { return Utils.enhancedHash( - companyId, id, xGustoAPIVersion); + xGustoAPIVersion, companyId, id); } @Override public String toString() { return Utils.toString(GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, "companyId", companyId, - "id", id, - "xGustoAPIVersion", xGustoAPIVersion); + "id", id); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { + private Optional xGustoAPIVersion; + private String companyId; private String id; - private Optional xGustoAPIVersion; - private Builder() { // force use of static builder() method } - /** - * The UUID of the company - */ - public Builder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - - - /** - * The UUID of the payroll - */ - public Builder id(String id) { - Utils.checkNotNull(id, "id"); - this.id = id; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -213,13 +193,33 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String companyId; + private String id; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - - public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder id(String id) { - Utils.checkNotNull(id, "id"); - this.id = id; - return this; - } public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder xGustoAPIVersion(GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -53,15 +41,27 @@ public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder xGust return this; } + public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder companyId(String companyId) { + Utils.checkNotNull(companyId, "companyId"); + this.companyId = companyId; + return this; + } + + public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder id(String id) { + Utils.checkNotNull(id, "id"); + this.id = id; + return this; + } + private GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest request = new GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest(companyId, - id, - xGustoAPIVersion); + GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest request = new GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest(xGustoAPIVersion, + companyId, + id); return request; } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyIdPayrollsPayrollIdRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyIdPayrollsPayrollIdRequest.java index d652b1c7f..57e2a2467 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyIdPayrollsPayrollIdRequest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyIdPayrollsPayrollIdRequest.java @@ -18,6 +18,14 @@ public class GetV1CompaniesCompanyIdPayrollsPayrollIdRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + /** * The UUID of the company */ @@ -30,14 +38,6 @@ public class GetV1CompaniesCompanyIdPayrollsPayrollIdRequest { @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=payroll_id") private String payrollId; - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; - /** * Include the requested attribute in the response, for multiple attributes comma separate the values, * i.e. `?include=benefits,deductions,taxes` @@ -69,23 +69,23 @@ public class GetV1CompaniesCompanyIdPayrollsPayrollIdRequest { @JsonCreator public GetV1CompaniesCompanyIdPayrollsPayrollIdRequest( + Optional xGustoAPIVersion, String companyId, String payrollId, - Optional xGustoAPIVersion, Optional> include, Optional page, Optional per, Optional sortBy) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(companyId, "companyId"); Utils.checkNotNull(payrollId, "payrollId"); - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(include, "include"); Utils.checkNotNull(page, "page"); Utils.checkNotNull(per, "per"); Utils.checkNotNull(sortBy, "sortBy"); + this.xGustoAPIVersion = xGustoAPIVersion; this.companyId = companyId; this.payrollId = payrollId; - this.xGustoAPIVersion = xGustoAPIVersion; this.include = include; this.page = page; this.per = per; @@ -95,11 +95,22 @@ public GetV1CompaniesCompanyIdPayrollsPayrollIdRequest( public GetV1CompaniesCompanyIdPayrollsPayrollIdRequest( String companyId, String payrollId) { - this(companyId, payrollId, Optional.empty(), + this(Optional.empty(), companyId, payrollId, Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty()); } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + /** * The UUID of the company */ @@ -116,17 +127,6 @@ public String payrollId() { return payrollId; } - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional xGustoAPIVersion() { - return (Optional) xGustoAPIVersion; - } - /** * Include the requested attribute in the response, for multiple attributes comma separate the values, * i.e. `?include=benefits,deductions,taxes` @@ -170,24 +170,6 @@ public static Builder builder() { } - /** - * The UUID of the company - */ - public GetV1CompaniesCompanyIdPayrollsPayrollIdRequest withCompanyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - - /** - * The UUID of the payroll - */ - public GetV1CompaniesCompanyIdPayrollsPayrollIdRequest withPayrollId(String payrollId) { - Utils.checkNotNull(payrollId, "payrollId"); - this.payrollId = payrollId; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -211,6 +193,24 @@ public GetV1CompaniesCompanyIdPayrollsPayrollIdRequest withXGustoAPIVersion(Opti return this; } + /** + * The UUID of the company + */ + public GetV1CompaniesCompanyIdPayrollsPayrollIdRequest withCompanyId(String companyId) { + Utils.checkNotNull(companyId, "companyId"); + this.companyId = companyId; + return this; + } + + /** + * The UUID of the payroll + */ + public GetV1CompaniesCompanyIdPayrollsPayrollIdRequest withPayrollId(String payrollId) { + Utils.checkNotNull(payrollId, "payrollId"); + this.payrollId = payrollId; + return this; + } + /** * Include the requested attribute in the response, for multiple attributes comma separate the values, * i.e. `?include=benefits,deductions,taxes` @@ -307,9 +307,9 @@ public boolean equals(java.lang.Object o) { } GetV1CompaniesCompanyIdPayrollsPayrollIdRequest other = (GetV1CompaniesCompanyIdPayrollsPayrollIdRequest) o; return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.companyId, other.companyId) && Utils.enhancedDeepEquals(this.payrollId, other.payrollId) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.include, other.include) && Utils.enhancedDeepEquals(this.page, other.page) && Utils.enhancedDeepEquals(this.per, other.per) && @@ -319,7 +319,7 @@ public boolean equals(java.lang.Object o) { @Override public int hashCode() { return Utils.enhancedHash( - companyId, payrollId, xGustoAPIVersion, + xGustoAPIVersion, companyId, payrollId, include, page, per, sortBy); } @@ -327,9 +327,9 @@ public int hashCode() { @Override public String toString() { return Utils.toString(GetV1CompaniesCompanyIdPayrollsPayrollIdRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, "companyId", companyId, "payrollId", payrollId, - "xGustoAPIVersion", xGustoAPIVersion, "include", include, "page", page, "per", per, @@ -339,12 +339,12 @@ public String toString() { @SuppressWarnings("UnusedReturnValue") public final static class Builder { + private Optional xGustoAPIVersion; + private String companyId; private String payrollId; - private Optional xGustoAPIVersion; - private Optional> include = Optional.empty(); private Optional page = Optional.empty(); @@ -358,26 +358,6 @@ private Builder() { } - /** - * The UUID of the company - */ - public Builder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - - - /** - * The UUID of the payroll - */ - public Builder payrollId(String payrollId) { - Utils.checkNotNull(payrollId, "payrollId"); - this.payrollId = payrollId; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -401,6 +381,26 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion; + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_id") + private String companyId; + /** * Whether to include processed and/or unprocessed payrolls in the response, defaults to processed, for * multiple attributes comma separate the values, i.e. `?processing_statuses=processed,unprocessed` @@ -107,8 +107,8 @@ public class GetV1CompaniesCompanyIdPayrollsRequest { @JsonCreator public GetV1CompaniesCompanyIdPayrollsRequest( - String companyId, Optional xGustoAPIVersion, + String companyId, Optional> processingStatuses, Optional> payrollTypes, Optional processed, @@ -120,8 +120,8 @@ public GetV1CompaniesCompanyIdPayrollsRequest( Optional page, Optional per, Optional sortOrder) { - Utils.checkNotNull(companyId, "companyId"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(companyId, "companyId"); Utils.checkNotNull(processingStatuses, "processingStatuses"); Utils.checkNotNull(payrollTypes, "payrollTypes"); Utils.checkNotNull(processed, "processed"); @@ -133,8 +133,8 @@ public GetV1CompaniesCompanyIdPayrollsRequest( Utils.checkNotNull(page, "page"); Utils.checkNotNull(per, "per"); Utils.checkNotNull(sortOrder, "sortOrder"); - this.companyId = companyId; this.xGustoAPIVersion = xGustoAPIVersion; + this.companyId = companyId; this.processingStatuses = processingStatuses; this.payrollTypes = payrollTypes; this.processed = processed; @@ -150,21 +150,13 @@ public GetV1CompaniesCompanyIdPayrollsRequest( public GetV1CompaniesCompanyIdPayrollsRequest( String companyId) { - this(companyId, Optional.empty(), Optional.empty(), + this(Optional.empty(), companyId, Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty()); } - /** - * The UUID of the company - */ - @JsonIgnore - public String companyId() { - return companyId; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -176,6 +168,14 @@ public Optional xGustoAPI return (Optional) xGustoAPIVersion; } + /** + * The UUID of the company + */ + @JsonIgnore + public String companyId() { + return companyId; + } + /** * Whether to include processed and/or unprocessed payrolls in the response, defaults to processed, for * multiple attributes comma separate the values, i.e. `?processing_statuses=processed,unprocessed` @@ -280,15 +280,6 @@ public static Builder builder() { } - /** - * The UUID of the company - */ - public GetV1CompaniesCompanyIdPayrollsRequest withCompanyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -312,6 +303,15 @@ public GetV1CompaniesCompanyIdPayrollsRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String companyId; + private Optional> processingStatuses = Optional.empty(); private Optional> payrollTypes = Optional.empty(); @@ -620,16 +620,6 @@ private Builder() { } - /** - * The UUID of the company - */ - public Builder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -653,6 +643,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion; + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") + private String companyUuid; + @JsonCreator public GetV1CompaniesCompanyUuidSignatoriesRequest( - String companyUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(companyUuid, "companyUuid"); + Optional xGustoAPIVersion, + String companyUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.companyUuid = companyUuid; + Utils.checkNotNull(companyUuid, "companyUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.companyUuid = companyUuid; } public GetV1CompaniesCompanyUuidSignatoriesRequest( String companyUuid) { - this(companyUuid, Optional.empty()); - } - - /** - * The UUID of the company - */ - @JsonIgnore - public String companyUuid() { - return companyUuid; + this(Optional.empty(), companyUuid); } /** @@ -64,20 +56,19 @@ public Optional xGus return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the company */ - public GetV1CompaniesCompanyUuidSignatoriesRequest withCompanyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; + @JsonIgnore + public String companyUuid() { + return companyUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetV1CompaniesCompanyUuidSignatoriesRequest withXGustoAPIVersion(Optional return this; } + /** + * The UUID of the company + */ + public GetV1CompaniesCompanyUuidSignatoriesRequest withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -111,45 +111,35 @@ public boolean equals(java.lang.Object o) { } GetV1CompaniesCompanyUuidSignatoriesRequest other = (GetV1CompaniesCompanyUuidSignatoriesRequest) o; return - Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid); } @Override public int hashCode() { return Utils.enhancedHash( - companyUuid, xGustoAPIVersion); + xGustoAPIVersion, companyUuid); } @Override public String toString() { return Utils.toString(GetV1CompaniesCompanyUuidSignatoriesRequest.class, - "companyUuid", companyUuid, - "xGustoAPIVersion", xGustoAPIVersion); + "xGustoAPIVersion", xGustoAPIVersion, + "companyUuid", companyUuid); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String companyUuid; - private Optional xGustoAPIVersion; + private String companyUuid; + private Builder() { // force use of static builder() method } - /** - * The UUID of the company - */ - public Builder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String companyUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1CompaniesCompanyUuidSignatoriesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1CompaniesCompanyUuidSignatoriesRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public GetV1CompaniesCompanyUuidSignatoriesRequestBuilder xGustoAPIVersion(GetV1CompaniesCompanyUuidSignatoriesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public GetV1CompaniesCompanyUuidSignatoriesRequestBuilder xGustoAPIVersion(Optio return this; } + public GetV1CompaniesCompanyUuidSignatoriesRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + private GetV1CompaniesCompanyUuidSignatoriesRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1CompaniesCompanyUuidSignatoriesRequest request = new GetV1CompaniesCompanyUuidSignatoriesRequest(companyUuid, - xGustoAPIVersion); + GetV1CompaniesCompanyUuidSignatoriesRequest request = new GetV1CompaniesCompanyUuidSignatoriesRequest(xGustoAPIVersion, + companyUuid); return request; } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsRequest.java index b0d76ce55..c7bb97bc9 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsRequest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsRequest.java @@ -16,12 +16,6 @@ public class GetV1CompaniesCompanyUuidTaxRequirementsRequest { - /** - * The UUID of the company - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") - private String companyUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class GetV1CompaniesCompanyUuidTaxRequirementsRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") + private String companyUuid; + @JsonCreator public GetV1CompaniesCompanyUuidTaxRequirementsRequest( - String companyUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(companyUuid, "companyUuid"); + Optional xGustoAPIVersion, + String companyUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.companyUuid = companyUuid; + Utils.checkNotNull(companyUuid, "companyUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.companyUuid = companyUuid; } public GetV1CompaniesCompanyUuidTaxRequirementsRequest( String companyUuid) { - this(companyUuid, Optional.empty()); - } - - /** - * The UUID of the company - */ - @JsonIgnore - public String companyUuid() { - return companyUuid; + this(Optional.empty(), companyUuid); } /** @@ -64,20 +56,19 @@ public Optional return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the company */ - public GetV1CompaniesCompanyUuidTaxRequirementsRequest withCompanyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; + @JsonIgnore + public String companyUuid() { + return companyUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetV1CompaniesCompanyUuidTaxRequirementsRequest withXGustoAPIVersion(Opti return this; } + /** + * The UUID of the company + */ + public GetV1CompaniesCompanyUuidTaxRequirementsRequest withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -111,45 +111,35 @@ public boolean equals(java.lang.Object o) { } GetV1CompaniesCompanyUuidTaxRequirementsRequest other = (GetV1CompaniesCompanyUuidTaxRequirementsRequest) o; return - Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid); } @Override public int hashCode() { return Utils.enhancedHash( - companyUuid, xGustoAPIVersion); + xGustoAPIVersion, companyUuid); } @Override public String toString() { return Utils.toString(GetV1CompaniesCompanyUuidTaxRequirementsRequest.class, - "companyUuid", companyUuid, - "xGustoAPIVersion", xGustoAPIVersion); + "xGustoAPIVersion", xGustoAPIVersion, + "companyUuid", companyUuid); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String companyUuid; - private Optional xGustoAPIVersion; + private String companyUuid; + private Builder() { // force use of static builder() method } - /** - * The UUID of the company - */ - public Builder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String companyUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder xGustoAPIVersion(GetV1CompaniesCompanyUuidTaxRequirementsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder xGustoAPIVersion(O return this; } + public GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + private GetV1CompaniesCompanyUuidTaxRequirementsRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1CompaniesCompanyUuidTaxRequirementsRequest request = new GetV1CompaniesCompanyUuidTaxRequirementsRequest(companyUuid, - xGustoAPIVersion); + GetV1CompaniesCompanyUuidTaxRequirementsRequest request = new GetV1CompaniesCompanyUuidTaxRequirementsRequest(xGustoAPIVersion, + companyUuid); return request; } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsStateRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsStateRequest.java index 9054aea78..c2cb89a25 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsStateRequest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesCompanyUuidTaxRequirementsStateRequest.java @@ -17,6 +17,14 @@ public class GetV1CompaniesCompanyUuidTaxRequirementsStateRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + /** * The UUID of the company */ @@ -29,14 +37,6 @@ public class GetV1CompaniesCompanyUuidTaxRequirementsStateRequest { @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=state") private String state; - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; - /** * When true, return "new" requirement sets with valid `effective_from` dates that are available to * save new effective-dated values. @@ -46,27 +46,38 @@ public class GetV1CompaniesCompanyUuidTaxRequirementsStateRequest { @JsonCreator public GetV1CompaniesCompanyUuidTaxRequirementsStateRequest( + Optional xGustoAPIVersion, String companyUuid, String state, - Optional xGustoAPIVersion, Optional scheduling) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(state, "state"); - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(scheduling, "scheduling"); + this.xGustoAPIVersion = xGustoAPIVersion; this.companyUuid = companyUuid; this.state = state; - this.xGustoAPIVersion = xGustoAPIVersion; this.scheduling = scheduling; } public GetV1CompaniesCompanyUuidTaxRequirementsStateRequest( String companyUuid, String state) { - this(companyUuid, state, Optional.empty(), + this(Optional.empty(), companyUuid, state, Optional.empty()); } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + /** * The UUID of the company */ @@ -83,17 +94,6 @@ public String state() { return state; } - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional xGustoAPIVersion() { - return (Optional) xGustoAPIVersion; - } - /** * When true, return "new" requirement sets with valid `effective_from` dates that are available to * save new effective-dated values. @@ -108,24 +108,6 @@ public static Builder builder() { } - /** - * The UUID of the company - */ - public GetV1CompaniesCompanyUuidTaxRequirementsStateRequest withCompanyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - /** - * The two-letter state abbreviation - */ - public GetV1CompaniesCompanyUuidTaxRequirementsStateRequest withState(String state) { - Utils.checkNotNull(state, "state"); - this.state = state; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -149,6 +131,24 @@ public GetV1CompaniesCompanyUuidTaxRequirementsStateRequest withXGustoAPIVersion return this; } + /** + * The UUID of the company + */ + public GetV1CompaniesCompanyUuidTaxRequirementsStateRequest withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + /** + * The two-letter state abbreviation + */ + public GetV1CompaniesCompanyUuidTaxRequirementsStateRequest withState(String state) { + Utils.checkNotNull(state, "state"); + this.state = state; + return this; + } + /** * When true, return "new" requirement sets with valid `effective_from` dates that are available to * save new effective-dated values. @@ -180,37 +180,37 @@ public boolean equals(java.lang.Object o) { } GetV1CompaniesCompanyUuidTaxRequirementsStateRequest other = (GetV1CompaniesCompanyUuidTaxRequirementsStateRequest) o; return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && Utils.enhancedDeepEquals(this.state, other.state) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.scheduling, other.scheduling); } @Override public int hashCode() { return Utils.enhancedHash( - companyUuid, state, xGustoAPIVersion, + xGustoAPIVersion, companyUuid, state, scheduling); } @Override public String toString() { return Utils.toString(GetV1CompaniesCompanyUuidTaxRequirementsStateRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, "companyUuid", companyUuid, "state", state, - "xGustoAPIVersion", xGustoAPIVersion, "scheduling", scheduling); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { + private Optional xGustoAPIVersion; + private String companyUuid; private String state; - private Optional xGustoAPIVersion; - private Optional scheduling = Optional.empty(); private Builder() { @@ -218,26 +218,6 @@ private Builder() { } - /** - * The UUID of the company - */ - public Builder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - - /** - * The two-letter state abbreviation - */ - public Builder state(String state) { - Utils.checkNotNull(state, "state"); - this.state = state; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -261,6 +241,26 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String companyUuid; + private String state; private Optional scheduling = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -30,18 +30,6 @@ public class GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder { public GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - public GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder state(String state) { - Utils.checkNotNull(state, "state"); - this.state = state; - return this; - } public GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder xGustoAPIVersion(GetV1CompaniesCompanyUuidTaxRequirementsStateHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -54,6 +42,18 @@ public GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder xGustoAPIVers this.xGustoAPIVersion = xGustoAPIVersion; return this; } + + public GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + public GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder state(String state) { + Utils.checkNotNull(state, "state"); + this.state = state; + return this; + } public GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder scheduling(boolean scheduling) { Utils.checkNotNull(scheduling, "scheduling"); @@ -73,9 +73,9 @@ private GetV1CompaniesCompanyUuidTaxRequirementsStateRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1CompaniesCompanyUuidTaxRequirementsStateRequest request = new GetV1CompaniesCompanyUuidTaxRequirementsStateRequest(companyUuid, + GetV1CompaniesCompanyUuidTaxRequirementsStateRequest request = new GetV1CompaniesCompanyUuidTaxRequirementsStateRequest(xGustoAPIVersion, + companyUuid, state, - xGustoAPIVersion, scheduling); return request; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesRequest.java index 9bbfaa2a9..bcf117962 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesRequest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompaniesRequest.java @@ -16,12 +16,6 @@ public class GetV1CompaniesRequest { - /** - * The UUID of the company - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_id") - private String companyId; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class GetV1CompaniesRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_id") + private String companyId; + @JsonCreator public GetV1CompaniesRequest( - String companyId, - Optional xGustoAPIVersion) { - Utils.checkNotNull(companyId, "companyId"); + Optional xGustoAPIVersion, + String companyId) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.companyId = companyId; + Utils.checkNotNull(companyId, "companyId"); this.xGustoAPIVersion = xGustoAPIVersion; + this.companyId = companyId; } public GetV1CompaniesRequest( String companyId) { - this(companyId, Optional.empty()); - } - - /** - * The UUID of the company - */ - @JsonIgnore - public String companyId() { - return companyId; + this(Optional.empty(), companyId); } /** @@ -64,20 +56,19 @@ public Optional xGustoAPIVersion() { return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the company */ - public GetV1CompaniesRequest withCompanyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; + @JsonIgnore + public String companyId() { + return companyId; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetV1CompaniesRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String companyId; + private Builder() { // force use of static builder() method } - /** - * The UUID of the company - */ - public Builder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String companyId; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1CompaniesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1CompaniesRequestBuilder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } public GetV1CompaniesRequestBuilder xGustoAPIVersion(GetV1CompaniesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public GetV1CompaniesRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion; + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") + private String companyUuid; + @JsonCreator public GetV1CompanyFinishOnboardingRequest( - String companyUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(companyUuid, "companyUuid"); + Optional xGustoAPIVersion, + String companyUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.companyUuid = companyUuid; + Utils.checkNotNull(companyUuid, "companyUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.companyUuid = companyUuid; } public GetV1CompanyFinishOnboardingRequest( String companyUuid) { - this(companyUuid, Optional.empty()); - } - - /** - * The UUID of the company - */ - @JsonIgnore - public String companyUuid() { - return companyUuid; + this(Optional.empty(), companyUuid); } /** @@ -64,20 +56,19 @@ public Optional xGustoAPIVer return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the company */ - public GetV1CompanyFinishOnboardingRequest withCompanyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; + @JsonIgnore + public String companyUuid() { + return companyUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetV1CompanyFinishOnboardingRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String companyUuid; + private Builder() { // force use of static builder() method } - /** - * The UUID of the company - */ - public Builder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String companyUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1CompanyFinishOnboardingRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1CompanyFinishOnboardingRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public GetV1CompanyFinishOnboardingRequestBuilder xGustoAPIVersion(GetV1CompanyFinishOnboardingHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public GetV1CompanyFinishOnboardingRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion; + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_id") + private String companyId; + @JsonCreator public GetV1CompanyIndustryRequest( - String companyId, - Optional xGustoAPIVersion) { - Utils.checkNotNull(companyId, "companyId"); + Optional xGustoAPIVersion, + String companyId) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.companyId = companyId; + Utils.checkNotNull(companyId, "companyId"); this.xGustoAPIVersion = xGustoAPIVersion; + this.companyId = companyId; } public GetV1CompanyIndustryRequest( String companyId) { - this(companyId, Optional.empty()); - } - - /** - * The UUID of the company - */ - @JsonIgnore - public String companyId() { - return companyId; + this(Optional.empty(), companyId); } /** @@ -64,20 +56,19 @@ public Optional xGustoAPIVersion() { return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the company */ - public GetV1CompanyIndustryRequest withCompanyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; + @JsonIgnore + public String companyId() { + return companyId; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetV1CompanyIndustryRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String companyId; + private Builder() { // force use of static builder() method } - /** - * The UUID of the company - */ - public Builder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String companyId; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1CompanyIndustryRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1CompanyIndustryRequestBuilder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } public GetV1CompanyIndustryRequestBuilder xGustoAPIVersion(GetV1CompanyIndustryHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public GetV1CompanyIndustryRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion; + /** * The UUID of the company */ @@ -29,30 +37,33 @@ public class GetV1CompanyOnboardingStatusRequest { @SpeakeasyMetadata("queryParam:style=form,explode=true,name=additional_steps") private Optional additionalSteps; - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; - @JsonCreator public GetV1CompanyOnboardingStatusRequest( + Optional xGustoAPIVersion, String companyUuid, - Optional additionalSteps, - Optional xGustoAPIVersion) { + Optional additionalSteps) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(additionalSteps, "additionalSteps"); - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; this.companyUuid = companyUuid; this.additionalSteps = additionalSteps; - this.xGustoAPIVersion = xGustoAPIVersion; } public GetV1CompanyOnboardingStatusRequest( String companyUuid) { - this(companyUuid, Optional.empty(), Optional.empty()); + this(Optional.empty(), companyUuid, Optional.empty()); + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; } /** @@ -72,21 +83,33 @@ public Optional additionalSteps() { return additionalSteps; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional xGustoAPIVersion() { - return (Optional) xGustoAPIVersion; + public GetV1CompanyOnboardingStatusRequest withXGustoAPIVersion(GetV1CompanyOnboardingStatusHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; } - public static Builder builder() { - return new Builder(); - } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetV1CompanyOnboardingStatusRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } /** * The UUID of the company @@ -118,29 +141,6 @@ public GetV1CompanyOnboardingStatusRequest withAdditionalSteps(Optional return this; } - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public GetV1CompanyOnboardingStatusRequest withXGustoAPIVersion(GetV1CompanyOnboardingStatusHeaderXGustoAPIVersion xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); - return this; - } - - - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public GetV1CompanyOnboardingStatusRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } - @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -151,39 +151,62 @@ public boolean equals(java.lang.Object o) { } GetV1CompanyOnboardingStatusRequest other = (GetV1CompanyOnboardingStatusRequest) o; return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && - Utils.enhancedDeepEquals(this.additionalSteps, other.additionalSteps) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.additionalSteps, other.additionalSteps); } @Override public int hashCode() { return Utils.enhancedHash( - companyUuid, additionalSteps, xGustoAPIVersion); + xGustoAPIVersion, companyUuid, additionalSteps); } @Override public String toString() { return Utils.toString(GetV1CompanyOnboardingStatusRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, "companyUuid", companyUuid, - "additionalSteps", additionalSteps, - "xGustoAPIVersion", xGustoAPIVersion); + "additionalSteps", additionalSteps); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { + private Optional xGustoAPIVersion; + private String companyUuid; private Optional additionalSteps = Optional.empty(); - private Optional xGustoAPIVersion; - private Builder() { // force use of static builder() method } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(GetV1CompanyOnboardingStatusHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + /** * The UUID of the company */ @@ -214,36 +237,13 @@ public Builder additionalSteps(Optional additionalSteps) { return this; } - - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public Builder xGustoAPIVersion(GetV1CompanyOnboardingStatusHeaderXGustoAPIVersion xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); - return this; - } - - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } - public GetV1CompanyOnboardingStatusRequest build() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } return new GetV1CompanyOnboardingStatusRequest( - companyUuid, additionalSteps, xGustoAPIVersion); + xGustoAPIVersion, companyUuid, additionalSteps); } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompanyOnboardingStatusRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompanyOnboardingStatusRequestBuilder.java index 4ce5ea549..0cb99f82e 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompanyOnboardingStatusRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1CompanyOnboardingStatusRequestBuilder.java @@ -16,18 +16,30 @@ public class GetV1CompanyOnboardingStatusRequestBuilder { - private String companyUuid; - private Optional additionalSteps = Optional.empty(); private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String companyUuid; + private Optional additionalSteps = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1CompanyOnboardingStatusRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } + + public GetV1CompanyOnboardingStatusRequestBuilder xGustoAPIVersion(GetV1CompanyOnboardingStatusHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetV1CompanyOnboardingStatusRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } public GetV1CompanyOnboardingStatusRequestBuilder companyUuid(String companyUuid) { Utils.checkNotNull(companyUuid, "companyUuid"); @@ -46,18 +58,6 @@ public GetV1CompanyOnboardingStatusRequestBuilder additionalSteps(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } private GetV1CompanyOnboardingStatusRequest buildRequest() { @@ -65,9 +65,9 @@ private GetV1CompanyOnboardingStatusRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1CompanyOnboardingStatusRequest request = new GetV1CompanyOnboardingStatusRequest(companyUuid, - additionalSteps, - xGustoAPIVersion); + GetV1CompanyOnboardingStatusRequest request = new GetV1CompanyOnboardingStatusRequest(xGustoAPIVersion, + companyUuid, + additionalSteps); return request; } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.java index 7ddeb3a90..533287d58 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.java @@ -16,12 +16,6 @@ public class GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest { - /** - * The UUID of the contractor payment group - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=contractor_payment_group_uuid") - private String contractorPaymentGroupUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the contractor payment group + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=contractor_payment_group_uuid") + private String contractorPaymentGroupUuid; + @JsonCreator public GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest( - String contractorPaymentGroupUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); + Optional xGustoAPIVersion, + String contractorPaymentGroupUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; + Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; } public GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest( String contractorPaymentGroupUuid) { - this(contractorPaymentGroupUuid, Optional.empty()); - } - - /** - * The UUID of the contractor payment group - */ - @JsonIgnore - public String contractorPaymentGroupUuid() { - return contractorPaymentGroupUuid; + this(Optional.empty(), contractorPaymentGroupUuid); } /** @@ -64,20 +56,19 @@ public Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the contractor payment group */ - public GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest withContractorPaymentGroupUuid(String contractorPaymentGroupUuid) { - Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); - this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; - return this; + @JsonIgnore + public String contractorPaymentGroupUuid() { + return contractorPaymentGroupUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest withXGustoAPI return this; } + /** + * The UUID of the contractor payment group + */ + public GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest withContractorPaymentGroupUuid(String contractorPaymentGroupUuid) { + Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); + this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -111,45 +111,35 @@ public boolean equals(java.lang.Object o) { } GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest other = (GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest) o; return - Utils.enhancedDeepEquals(this.contractorPaymentGroupUuid, other.contractorPaymentGroupUuid) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.contractorPaymentGroupUuid, other.contractorPaymentGroupUuid); } @Override public int hashCode() { return Utils.enhancedHash( - contractorPaymentGroupUuid, xGustoAPIVersion); + xGustoAPIVersion, contractorPaymentGroupUuid); } @Override public String toString() { return Utils.toString(GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest.class, - "contractorPaymentGroupUuid", contractorPaymentGroupUuid, - "xGustoAPIVersion", xGustoAPIVersion); + "xGustoAPIVersion", xGustoAPIVersion, + "contractorPaymentGroupUuid", contractorPaymentGroupUuid); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String contractorPaymentGroupUuid; - private Optional xGustoAPIVersion; + private String contractorPaymentGroupUuid; + private Builder() { // force use of static builder() method } - /** - * The UUID of the contractor payment group - */ - public Builder contractorPaymentGroupUuid(String contractorPaymentGroupUuid) { - Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); - this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String contractorPaymentGroupUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder contractorPaymentGroupUuid(String contractorPaymentGroupUuid) { - Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); - this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; - return this; - } public GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder xGustoAPIVersion(GetV1ContractorPaymentGroupsContractorPaymentGroupIdHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder xGusto return this; } + public GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder contractorPaymentGroupUuid(String contractorPaymentGroupUuid) { + Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); + this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; + return this; + } + private GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest request = new GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest(contractorPaymentGroupUuid, - xGustoAPIVersion); + GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest request = new GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest(xGustoAPIVersion, + contractorPaymentGroupUuid); return request; } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.java index 5942afe1a..799c9c2de 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.java @@ -16,12 +16,6 @@ public class GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest { - /** - * The UUID of the contractor payment group - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=id") - private String id; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the contractor payment group + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=id") + private String id; + @JsonCreator public GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest( - String id, - Optional xGustoAPIVersion) { - Utils.checkNotNull(id, "id"); + Optional xGustoAPIVersion, + String id) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.id = id; + Utils.checkNotNull(id, "id"); this.xGustoAPIVersion = xGustoAPIVersion; + this.id = id; } public GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest( String id) { - this(id, Optional.empty()); - } - - /** - * The UUID of the contractor payment group - */ - @JsonIgnore - public String id() { - return id; + this(Optional.empty(), id); } /** @@ -64,20 +56,19 @@ public Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the contractor payment group */ - public GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest withId(String id) { - Utils.checkNotNull(id, "id"); - this.id = id; - return this; + @JsonIgnore + public String id() { + return id; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest withXGustoAPIVe return this; } + /** + * The UUID of the contractor payment group + */ + public GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest withId(String id) { + Utils.checkNotNull(id, "id"); + this.id = id; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -111,45 +111,35 @@ public boolean equals(java.lang.Object o) { } GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest other = (GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest) o; return - Utils.enhancedDeepEquals(this.id, other.id) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.id, other.id); } @Override public int hashCode() { return Utils.enhancedHash( - id, xGustoAPIVersion); + xGustoAPIVersion, id); } @Override public String toString() { return Utils.toString(GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.class, - "id", id, - "xGustoAPIVersion", xGustoAPIVersion); + "xGustoAPIVersion", xGustoAPIVersion, + "id", id); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String id; - private Optional xGustoAPIVersion; + private String id; + private Builder() { // force use of static builder() method } - /** - * The UUID of the contractor payment group - */ - public Builder id(String id) { - Utils.checkNotNull(id, "id"); - this.id = id; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String id; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder id(String id) { - Utils.checkNotNull(id, "id"); - this.id = id; - return this; - } public GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder xGustoAPIVersion(GetV1ContractorPaymentGroupsIdPartnerDisbursementsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder xGustoAP return this; } + public GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder id(String id) { + Utils.checkNotNull(id, "id"); + this.id = id; + return this; + } + private GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest request = new GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest(id, - xGustoAPIVersion); + GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest request = new GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest(xGustoAPIVersion, + id); return request; } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.java new file mode 100644 index 000000000..a807b7c7e --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion + * + *

    Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ +public enum GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion { + TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15("2026-06-15"); + + @JsonValue + private final String value; + + GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion o: GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsRequest.java new file mode 100644 index 000000000..9f22aeb97 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsRequest.java @@ -0,0 +1,191 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2026_06_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2026_06_15.utils.SpeakeasyMetadata; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class GetV1ContractorsContractorUuidMemberPortalInvitationsRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + + /** + * The UUID of the contractor + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=contractor_uuid") + private String contractorUuid; + + @JsonCreator + public GetV1ContractorsContractorUuidMemberPortalInvitationsRequest( + Optional xGustoAPIVersion, + String contractorUuid) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.xGustoAPIVersion = xGustoAPIVersion; + this.contractorUuid = contractorUuid; + } + + public GetV1ContractorsContractorUuidMemberPortalInvitationsRequest( + String contractorUuid) { + this(Optional.empty(), contractorUuid); + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + + /** + * The UUID of the contractor + */ + @JsonIgnore + public String contractorUuid() { + return contractorUuid; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetV1ContractorsContractorUuidMemberPortalInvitationsRequest withXGustoAPIVersion(GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetV1ContractorsContractorUuidMemberPortalInvitationsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + /** + * The UUID of the contractor + */ + public GetV1ContractorsContractorUuidMemberPortalInvitationsRequest withContractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetV1ContractorsContractorUuidMemberPortalInvitationsRequest other = (GetV1ContractorsContractorUuidMemberPortalInvitationsRequest) o; + return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.contractorUuid, other.contractorUuid); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + xGustoAPIVersion, contractorUuid); + } + + @Override + public String toString() { + return Utils.toString(GetV1ContractorsContractorUuidMemberPortalInvitationsRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, + "contractorUuid", contractorUuid); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional xGustoAPIVersion; + + private String contractorUuid; + + private Builder() { + // force use of static builder() method + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + + /** + * The UUID of the contractor + */ + public Builder contractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + + public GetV1ContractorsContractorUuidMemberPortalInvitationsRequest build() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + return new GetV1ContractorsContractorUuidMemberPortalInvitationsRequest( + xGustoAPIVersion, contractorUuid); + } + + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "X-Gusto-API-Version", + "\"2026-06-15\"", + new TypeReference>() {}); + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder.java new file mode 100644 index 000000000..c5fe2d8c4 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder.java @@ -0,0 +1,75 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import static com.gusto.embedded_api_v_2026_06_15.operations.Operations.RequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2026_06_15.SDKConfiguration; +import com.gusto.embedded_api_v_2026_06_15.operations.GetV1ContractorsContractorUuidMemberPortalInvitations; +import com.gusto.embedded_api_v_2026_06_15.utils.Headers; +import com.gusto.embedded_api_v_2026_06_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.String; +import java.util.Optional; + +public class GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder { + + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2026-06-15\"", + new TypeReference>() {}); + private String contractorUuid; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder xGustoAPIVersion(GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder contractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + + + private GetV1ContractorsContractorUuidMemberPortalInvitationsRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + GetV1ContractorsContractorUuidMemberPortalInvitationsRequest request = new GetV1ContractorsContractorUuidMemberPortalInvitationsRequest(xGustoAPIVersion, + contractorUuid); + + return request; + } + + public GetV1ContractorsContractorUuidMemberPortalInvitationsResponse call() { + + RequestOperation operation + = new GetV1ContractorsContractorUuidMemberPortalInvitations.Sync(sdkConfiguration, _headers); + GetV1ContractorsContractorUuidMemberPortalInvitationsRequest request = buildRequest(); + + return operation.handleResponse(operation.doRequest(request)); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2026-06-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsResponse.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsResponse.java new file mode 100644 index 000000000..45b5faab8 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1ContractorsContractorUuidMemberPortalInvitationsResponse.java @@ -0,0 +1,253 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2026_06_15.models.components.MemberPortalInvitation; +import com.gusto.embedded_api_v_2026_06_15.utils.Response; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.io.InputStream; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.Optional; + + +public class GetV1ContractorsContractorUuidMemberPortalInvitationsResponse implements Response { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * Success + */ + private Optional memberPortalInvitation; + + @JsonCreator + public GetV1ContractorsContractorUuidMemberPortalInvitationsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional memberPortalInvitation) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(memberPortalInvitation, "memberPortalInvitation"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.memberPortalInvitation = memberPortalInvitation; + } + + public GetV1ContractorsContractorUuidMemberPortalInvitationsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * Success + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional memberPortalInvitation() { + return (Optional) memberPortalInvitation; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public GetV1ContractorsContractorUuidMemberPortalInvitationsResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public GetV1ContractorsContractorUuidMemberPortalInvitationsResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public GetV1ContractorsContractorUuidMemberPortalInvitationsResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * Success + */ + public GetV1ContractorsContractorUuidMemberPortalInvitationsResponse withMemberPortalInvitation(MemberPortalInvitation memberPortalInvitation) { + Utils.checkNotNull(memberPortalInvitation, "memberPortalInvitation"); + this.memberPortalInvitation = Optional.ofNullable(memberPortalInvitation); + return this; + } + + + /** + * Success + */ + public GetV1ContractorsContractorUuidMemberPortalInvitationsResponse withMemberPortalInvitation(Optional memberPortalInvitation) { + Utils.checkNotNull(memberPortalInvitation, "memberPortalInvitation"); + this.memberPortalInvitation = memberPortalInvitation; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetV1ContractorsContractorUuidMemberPortalInvitationsResponse other = (GetV1ContractorsContractorUuidMemberPortalInvitationsResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.memberPortalInvitation, other.memberPortalInvitation); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + memberPortalInvitation); + } + + @Override + public String toString() { + return Utils.toString(GetV1ContractorsContractorUuidMemberPortalInvitationsResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "memberPortalInvitation", memberPortalInvitation); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional memberPortalInvitation = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * Success + */ + public Builder memberPortalInvitation(MemberPortalInvitation memberPortalInvitation) { + Utils.checkNotNull(memberPortalInvitation, "memberPortalInvitation"); + this.memberPortalInvitation = Optional.ofNullable(memberPortalInvitation); + return this; + } + + /** + * Success + */ + public Builder memberPortalInvitation(Optional memberPortalInvitation) { + Utils.checkNotNull(memberPortalInvitation, "memberPortalInvitation"); + this.memberPortalInvitation = memberPortalInvitation; + return this; + } + + public GetV1ContractorsContractorUuidMemberPortalInvitationsResponse build() { + + return new GetV1ContractorsContractorUuidMemberPortalInvitationsResponse( + contentType, statusCode, rawResponse, + memberPortalInvitation); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1ContractorsContractorUuidPaymentsHeaderXGustoAPIVersion.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1ContractorsContractorUuidPaymentsHeaderXGustoAPIVersion.java new file mode 100644 index 000000000..50186a5ac --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1ContractorsContractorUuidPaymentsHeaderXGustoAPIVersion.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * GetV1ContractorsContractorUuidPaymentsHeaderXGustoAPIVersion + * + *

    Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ +public enum GetV1ContractorsContractorUuidPaymentsHeaderXGustoAPIVersion { + TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15("2026-06-15"); + + @JsonValue + private final String value; + + GetV1ContractorsContractorUuidPaymentsHeaderXGustoAPIVersion(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (GetV1ContractorsContractorUuidPaymentsHeaderXGustoAPIVersion o: GetV1ContractorsContractorUuidPaymentsHeaderXGustoAPIVersion.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1ContractorsContractorUuidPaymentsRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1ContractorsContractorUuidPaymentsRequest.java new file mode 100644 index 000000000..eace839f4 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1ContractorsContractorUuidPaymentsRequest.java @@ -0,0 +1,384 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2026_06_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2026_06_15.utils.SpeakeasyMetadata; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Long; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class GetV1ContractorsContractorUuidPaymentsRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + + /** + * The UUID of the contractor + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=contractor_uuid") + private String contractorUuid; + + /** + * Sort the results. Format: `field` or `field:direction` where `field` is `check_date` or `created_at` + * and `direction` is `asc` or `desc`. + */ + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=sort_by") + private Optional sortBy; + + /** + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. + */ + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=page") + private Optional page; + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=per") + private Optional per; + + @JsonCreator + public GetV1ContractorsContractorUuidPaymentsRequest( + Optional xGustoAPIVersion, + String contractorUuid, + Optional sortBy, + Optional page, + Optional per) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(contractorUuid, "contractorUuid"); + Utils.checkNotNull(sortBy, "sortBy"); + Utils.checkNotNull(page, "page"); + Utils.checkNotNull(per, "per"); + this.xGustoAPIVersion = xGustoAPIVersion; + this.contractorUuid = contractorUuid; + this.sortBy = sortBy; + this.page = page; + this.per = per; + } + + public GetV1ContractorsContractorUuidPaymentsRequest( + String contractorUuid) { + this(Optional.empty(), contractorUuid, Optional.empty(), + Optional.empty(), Optional.empty()); + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + + /** + * The UUID of the contractor + */ + @JsonIgnore + public String contractorUuid() { + return contractorUuid; + } + + /** + * Sort the results. Format: `field` or `field:direction` where `field` is `check_date` or `created_at` + * and `direction` is `asc` or `desc`. + */ + @JsonIgnore + public Optional sortBy() { + return sortBy; + } + + /** + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. + */ + @JsonIgnore + public Optional page() { + return page; + } + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + @JsonIgnore + public Optional per() { + return per; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetV1ContractorsContractorUuidPaymentsRequest withXGustoAPIVersion(GetV1ContractorsContractorUuidPaymentsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetV1ContractorsContractorUuidPaymentsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + /** + * The UUID of the contractor + */ + public GetV1ContractorsContractorUuidPaymentsRequest withContractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + + /** + * Sort the results. Format: `field` or `field:direction` where `field` is `check_date` or `created_at` + * and `direction` is `asc` or `desc`. + */ + public GetV1ContractorsContractorUuidPaymentsRequest withSortBy(String sortBy) { + Utils.checkNotNull(sortBy, "sortBy"); + this.sortBy = Optional.ofNullable(sortBy); + return this; + } + + + /** + * Sort the results. Format: `field` or `field:direction` where `field` is `check_date` or `created_at` + * and `direction` is `asc` or `desc`. + */ + public GetV1ContractorsContractorUuidPaymentsRequest withSortBy(Optional sortBy) { + Utils.checkNotNull(sortBy, "sortBy"); + this.sortBy = sortBy; + return this; + } + + /** + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. + */ + public GetV1ContractorsContractorUuidPaymentsRequest withPage(long page) { + Utils.checkNotNull(page, "page"); + this.page = Optional.ofNullable(page); + return this; + } + + + /** + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. + */ + public GetV1ContractorsContractorUuidPaymentsRequest withPage(Optional page) { + Utils.checkNotNull(page, "page"); + this.page = page; + return this; + } + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + public GetV1ContractorsContractorUuidPaymentsRequest withPer(long per) { + Utils.checkNotNull(per, "per"); + this.per = Optional.ofNullable(per); + return this; + } + + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + public GetV1ContractorsContractorUuidPaymentsRequest withPer(Optional per) { + Utils.checkNotNull(per, "per"); + this.per = per; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetV1ContractorsContractorUuidPaymentsRequest other = (GetV1ContractorsContractorUuidPaymentsRequest) o; + return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.contractorUuid, other.contractorUuid) && + Utils.enhancedDeepEquals(this.sortBy, other.sortBy) && + Utils.enhancedDeepEquals(this.page, other.page) && + Utils.enhancedDeepEquals(this.per, other.per); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + xGustoAPIVersion, contractorUuid, sortBy, + page, per); + } + + @Override + public String toString() { + return Utils.toString(GetV1ContractorsContractorUuidPaymentsRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, + "contractorUuid", contractorUuid, + "sortBy", sortBy, + "page", page, + "per", per); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional xGustoAPIVersion; + + private String contractorUuid; + + private Optional sortBy = Optional.empty(); + + private Optional page = Optional.empty(); + + private Optional per = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(GetV1ContractorsContractorUuidPaymentsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + + /** + * The UUID of the contractor + */ + public Builder contractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + + + /** + * Sort the results. Format: `field` or `field:direction` where `field` is `check_date` or `created_at` + * and `direction` is `asc` or `desc`. + */ + public Builder sortBy(String sortBy) { + Utils.checkNotNull(sortBy, "sortBy"); + this.sortBy = Optional.ofNullable(sortBy); + return this; + } + + /** + * Sort the results. Format: `field` or `field:direction` where `field` is `check_date` or `created_at` + * and `direction` is `asc` or `desc`. + */ + public Builder sortBy(Optional sortBy) { + Utils.checkNotNull(sortBy, "sortBy"); + this.sortBy = sortBy; + return this; + } + + + /** + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. + */ + public Builder page(long page) { + Utils.checkNotNull(page, "page"); + this.page = Optional.ofNullable(page); + return this; + } + + /** + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. + */ + public Builder page(Optional page) { + Utils.checkNotNull(page, "page"); + this.page = page; + return this; + } + + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + public Builder per(long per) { + Utils.checkNotNull(per, "per"); + this.per = Optional.ofNullable(per); + return this; + } + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + public Builder per(Optional per) { + Utils.checkNotNull(per, "per"); + this.per = per; + return this; + } + + public GetV1ContractorsContractorUuidPaymentsRequest build() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + return new GetV1ContractorsContractorUuidPaymentsRequest( + xGustoAPIVersion, contractorUuid, sortBy, + page, per); + } + + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "X-Gusto-API-Version", + "\"2026-06-15\"", + new TypeReference>() {}); + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1ContractorsContractorUuidPaymentsRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1ContractorsContractorUuidPaymentsRequestBuilder.java new file mode 100644 index 000000000..7b38cac36 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1ContractorsContractorUuidPaymentsRequestBuilder.java @@ -0,0 +1,36 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import static com.gusto.embedded_api_v_2026_06_15.operations.Operations.RequestOperation; + +import com.gusto.embedded_api_v_2026_06_15.SDKConfiguration; +import com.gusto.embedded_api_v_2026_06_15.operations.GetV1ContractorsContractorUuidPayments; +import com.gusto.embedded_api_v_2026_06_15.utils.Headers; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; + +public class GetV1ContractorsContractorUuidPaymentsRequestBuilder { + + private GetV1ContractorsContractorUuidPaymentsRequest request; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public GetV1ContractorsContractorUuidPaymentsRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public GetV1ContractorsContractorUuidPaymentsRequestBuilder request(GetV1ContractorsContractorUuidPaymentsRequest request) { + Utils.checkNotNull(request, "request"); + this.request = request; + return this; + } + + public GetV1ContractorsContractorUuidPaymentsResponse call() { + + RequestOperation operation + = new GetV1ContractorsContractorUuidPayments.Sync(sdkConfiguration, _headers); + + return operation.handleResponse(operation.doRequest(request)); + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1ContractorsContractorUuidPaymentsResponse.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1ContractorsContractorUuidPaymentsResponse.java new file mode 100644 index 000000000..8de7f2d99 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1ContractorsContractorUuidPaymentsResponse.java @@ -0,0 +1,254 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2026_06_15.models.components.ContractorPaymentListing; +import com.gusto.embedded_api_v_2026_06_15.utils.Response; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.io.InputStream; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.List; +import java.util.Optional; + + +public class GetV1ContractorsContractorUuidPaymentsResponse implements Response { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * A JSON array of contractor payments + */ + private Optional> contractorPaymentListings; + + @JsonCreator + public GetV1ContractorsContractorUuidPaymentsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional> contractorPaymentListings) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(contractorPaymentListings, "contractorPaymentListings"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.contractorPaymentListings = contractorPaymentListings; + } + + public GetV1ContractorsContractorUuidPaymentsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * A JSON array of contractor payments + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> contractorPaymentListings() { + return (Optional>) contractorPaymentListings; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public GetV1ContractorsContractorUuidPaymentsResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public GetV1ContractorsContractorUuidPaymentsResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public GetV1ContractorsContractorUuidPaymentsResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * A JSON array of contractor payments + */ + public GetV1ContractorsContractorUuidPaymentsResponse withContractorPaymentListings(List contractorPaymentListings) { + Utils.checkNotNull(contractorPaymentListings, "contractorPaymentListings"); + this.contractorPaymentListings = Optional.ofNullable(contractorPaymentListings); + return this; + } + + + /** + * A JSON array of contractor payments + */ + public GetV1ContractorsContractorUuidPaymentsResponse withContractorPaymentListings(Optional> contractorPaymentListings) { + Utils.checkNotNull(contractorPaymentListings, "contractorPaymentListings"); + this.contractorPaymentListings = contractorPaymentListings; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetV1ContractorsContractorUuidPaymentsResponse other = (GetV1ContractorsContractorUuidPaymentsResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.contractorPaymentListings, other.contractorPaymentListings); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + contractorPaymentListings); + } + + @Override + public String toString() { + return Utils.toString(GetV1ContractorsContractorUuidPaymentsResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "contractorPaymentListings", contractorPaymentListings); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional> contractorPaymentListings = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * A JSON array of contractor payments + */ + public Builder contractorPaymentListings(List contractorPaymentListings) { + Utils.checkNotNull(contractorPaymentListings, "contractorPaymentListings"); + this.contractorPaymentListings = Optional.ofNullable(contractorPaymentListings); + return this; + } + + /** + * A JSON array of contractor payments + */ + public Builder contractorPaymentListings(Optional> contractorPaymentListings) { + Utils.checkNotNull(contractorPaymentListings, "contractorPaymentListings"); + this.contractorPaymentListings = contractorPaymentListings; + return this; + } + + public GetV1ContractorsContractorUuidPaymentsResponse build() { + + return new GetV1ContractorsContractorUuidPaymentsResponse( + contentType, statusCode, rawResponse, + contractorPaymentListings); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1EmployeesEmployeeIdCustomFieldsRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1EmployeesEmployeeIdCustomFieldsRequest.java index ab2c8d8ab..fa8bdd477 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1EmployeesEmployeeIdCustomFieldsRequest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1EmployeesEmployeeIdCustomFieldsRequest.java @@ -17,6 +17,14 @@ public class GetV1EmployeesEmployeeIdCustomFieldsRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + /** * The UUID of the employee */ @@ -36,36 +44,39 @@ public class GetV1EmployeesEmployeeIdCustomFieldsRequest { @SpeakeasyMetadata("queryParam:style=form,explode=true,name=per") private Optional per; - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; - @JsonCreator public GetV1EmployeesEmployeeIdCustomFieldsRequest( + Optional xGustoAPIVersion, String employeeId, Optional page, - Optional per, - Optional xGustoAPIVersion) { + Optional per) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(employeeId, "employeeId"); Utils.checkNotNull(page, "page"); Utils.checkNotNull(per, "per"); - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; this.employeeId = employeeId; this.page = page; this.per = per; - this.xGustoAPIVersion = xGustoAPIVersion; } public GetV1EmployeesEmployeeIdCustomFieldsRequest( String employeeId) { - this(employeeId, Optional.empty(), Optional.empty(), + this(Optional.empty(), employeeId, Optional.empty(), Optional.empty()); } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + /** * The UUID of the employee */ @@ -91,21 +102,33 @@ public Optional per() { return per; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional xGustoAPIVersion() { - return (Optional) xGustoAPIVersion; + public GetV1EmployeesEmployeeIdCustomFieldsRequest withXGustoAPIVersion(GetV1EmployeesEmployeeIdCustomFieldsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; } - public static Builder builder() { - return new Builder(); - } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetV1EmployeesEmployeeIdCustomFieldsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } /** * The UUID of the employee @@ -156,29 +179,6 @@ public GetV1EmployeesEmployeeIdCustomFieldsRequest withPer(Optional per) { return this; } - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public GetV1EmployeesEmployeeIdCustomFieldsRequest withXGustoAPIVersion(GetV1EmployeesEmployeeIdCustomFieldsHeaderXGustoAPIVersion xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); - return this; - } - - - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public GetV1EmployeesEmployeeIdCustomFieldsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } - @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -189,44 +189,67 @@ public boolean equals(java.lang.Object o) { } GetV1EmployeesEmployeeIdCustomFieldsRequest other = (GetV1EmployeesEmployeeIdCustomFieldsRequest) o; return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.employeeId, other.employeeId) && Utils.enhancedDeepEquals(this.page, other.page) && - Utils.enhancedDeepEquals(this.per, other.per) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.per, other.per); } @Override public int hashCode() { return Utils.enhancedHash( - employeeId, page, per, - xGustoAPIVersion); + xGustoAPIVersion, employeeId, page, + per); } @Override public String toString() { return Utils.toString(GetV1EmployeesEmployeeIdCustomFieldsRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, "employeeId", employeeId, "page", page, - "per", per, - "xGustoAPIVersion", xGustoAPIVersion); + "per", per); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { + private Optional xGustoAPIVersion; + private String employeeId; private Optional page = Optional.empty(); private Optional per = Optional.empty(); - private Optional xGustoAPIVersion; - private Builder() { // force use of static builder() method } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(GetV1EmployeesEmployeeIdCustomFieldsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + /** * The UUID of the employee */ @@ -276,37 +299,14 @@ public Builder per(Optional per) { return this; } - - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public Builder xGustoAPIVersion(GetV1EmployeesEmployeeIdCustomFieldsHeaderXGustoAPIVersion xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); - return this; - } - - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } - public GetV1EmployeesEmployeeIdCustomFieldsRequest build() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } return new GetV1EmployeesEmployeeIdCustomFieldsRequest( - employeeId, page, per, - xGustoAPIVersion); + xGustoAPIVersion, employeeId, page, + per); } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder.java index d8eb2beaf..21792dd6f 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder.java @@ -17,19 +17,31 @@ public class GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder { - private String employeeId; - private Optional page = Optional.empty(); - private Optional per = Optional.empty(); private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String employeeId; + private Optional page = Optional.empty(); + private Optional per = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } + + public GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder xGustoAPIVersion(GetV1EmployeesEmployeeIdCustomFieldsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } public GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder employeeId(String employeeId) { Utils.checkNotNull(employeeId, "employeeId"); @@ -60,18 +72,6 @@ public GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder per(Optional per this.per = per; return this; } - - public GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder xGustoAPIVersion(GetV1EmployeesEmployeeIdCustomFieldsHeaderXGustoAPIVersion xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); - return this; - } - - public GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } private GetV1EmployeesEmployeeIdCustomFieldsRequest buildRequest() { @@ -79,10 +79,10 @@ private GetV1EmployeesEmployeeIdCustomFieldsRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1EmployeesEmployeeIdCustomFieldsRequest request = new GetV1EmployeesEmployeeIdCustomFieldsRequest(employeeId, + GetV1EmployeesEmployeeIdCustomFieldsRequest request = new GetV1EmployeesEmployeeIdCustomFieldsRequest(xGustoAPIVersion, + employeeId, page, - per, - xGustoAPIVersion); + per); return request; } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1EmployeesEmployeeIdHomeAddressesRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1EmployeesEmployeeIdHomeAddressesRequest.java index a07ec9b9a..d5c6cd25e 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1EmployeesEmployeeIdHomeAddressesRequest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1EmployeesEmployeeIdHomeAddressesRequest.java @@ -16,12 +16,6 @@ public class GetV1EmployeesEmployeeIdHomeAddressesRequest { - /** - * The UUID of the employee - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=employee_id") - private String employeeId; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class GetV1EmployeesEmployeeIdHomeAddressesRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the employee + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=employee_id") + private String employeeId; + @JsonCreator public GetV1EmployeesEmployeeIdHomeAddressesRequest( - String employeeId, - Optional xGustoAPIVersion) { - Utils.checkNotNull(employeeId, "employeeId"); + Optional xGustoAPIVersion, + String employeeId) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.employeeId = employeeId; + Utils.checkNotNull(employeeId, "employeeId"); this.xGustoAPIVersion = xGustoAPIVersion; + this.employeeId = employeeId; } public GetV1EmployeesEmployeeIdHomeAddressesRequest( String employeeId) { - this(employeeId, Optional.empty()); - } - - /** - * The UUID of the employee - */ - @JsonIgnore - public String employeeId() { - return employeeId; + this(Optional.empty(), employeeId); } /** @@ -64,20 +56,19 @@ public Optional xGu return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the employee */ - public GetV1EmployeesEmployeeIdHomeAddressesRequest withEmployeeId(String employeeId) { - Utils.checkNotNull(employeeId, "employeeId"); - this.employeeId = employeeId; - return this; + @JsonIgnore + public String employeeId() { + return employeeId; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetV1EmployeesEmployeeIdHomeAddressesRequest withXGustoAPIVersion(Optiona return this; } + /** + * The UUID of the employee + */ + public GetV1EmployeesEmployeeIdHomeAddressesRequest withEmployeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -111,45 +111,35 @@ public boolean equals(java.lang.Object o) { } GetV1EmployeesEmployeeIdHomeAddressesRequest other = (GetV1EmployeesEmployeeIdHomeAddressesRequest) o; return - Utils.enhancedDeepEquals(this.employeeId, other.employeeId) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.employeeId, other.employeeId); } @Override public int hashCode() { return Utils.enhancedHash( - employeeId, xGustoAPIVersion); + xGustoAPIVersion, employeeId); } @Override public String toString() { return Utils.toString(GetV1EmployeesEmployeeIdHomeAddressesRequest.class, - "employeeId", employeeId, - "xGustoAPIVersion", xGustoAPIVersion); + "xGustoAPIVersion", xGustoAPIVersion, + "employeeId", employeeId); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String employeeId; - private Optional xGustoAPIVersion; + private String employeeId; + private Builder() { // force use of static builder() method } - /** - * The UUID of the employee - */ - public Builder employeeId(String employeeId) { - Utils.checkNotNull(employeeId, "employeeId"); - this.employeeId = employeeId; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String employeeId; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1EmployeesEmployeeIdHomeAddressesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1EmployeesEmployeeIdHomeAddressesRequestBuilder employeeId(String employeeId) { - Utils.checkNotNull(employeeId, "employeeId"); - this.employeeId = employeeId; - return this; - } public GetV1EmployeesEmployeeIdHomeAddressesRequestBuilder xGustoAPIVersion(GetV1EmployeesEmployeeIdHomeAddressesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public GetV1EmployeesEmployeeIdHomeAddressesRequestBuilder xGustoAPIVersion(Opti return this; } + public GetV1EmployeesEmployeeIdHomeAddressesRequestBuilder employeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + private GetV1EmployeesEmployeeIdHomeAddressesRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1EmployeesEmployeeIdHomeAddressesRequest request = new GetV1EmployeesEmployeeIdHomeAddressesRequest(employeeId, - xGustoAPIVersion); + GetV1EmployeesEmployeeIdHomeAddressesRequest request = new GetV1EmployeesEmployeeIdHomeAddressesRequest(xGustoAPIVersion, + employeeId); return request; } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1EmployeesEmployeeIdJobsRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1EmployeesEmployeeIdJobsRequest.java index 04b86b452..829ec3353 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1EmployeesEmployeeIdJobsRequest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1EmployeesEmployeeIdJobsRequest.java @@ -17,6 +17,14 @@ public class GetV1EmployeesEmployeeIdJobsRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + /** * The UUID of the employee */ @@ -44,39 +52,42 @@ public class GetV1EmployeesEmployeeIdJobsRequest { @SpeakeasyMetadata("queryParam:style=form,explode=true,name=include") private Optional include; - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; - @JsonCreator public GetV1EmployeesEmployeeIdJobsRequest( + Optional xGustoAPIVersion, String employeeId, Optional page, Optional per, - Optional include, - Optional xGustoAPIVersion) { + Optional include) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(employeeId, "employeeId"); Utils.checkNotNull(page, "page"); Utils.checkNotNull(per, "per"); Utils.checkNotNull(include, "include"); - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; this.employeeId = employeeId; this.page = page; this.per = per; this.include = include; - this.xGustoAPIVersion = xGustoAPIVersion; } public GetV1EmployeesEmployeeIdJobsRequest( String employeeId) { - this(employeeId, Optional.empty(), Optional.empty(), + this(Optional.empty(), employeeId, Optional.empty(), Optional.empty(), Optional.empty()); } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + /** * The UUID of the employee */ @@ -113,21 +124,33 @@ public Optional include() { return (Optional) include; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional xGustoAPIVersion() { - return (Optional) xGustoAPIVersion; + public GetV1EmployeesEmployeeIdJobsRequest withXGustoAPIVersion(GetV1EmployeesEmployeeIdJobsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; } - public static Builder builder() { - return new Builder(); - } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetV1EmployeesEmployeeIdJobsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } /** * The UUID of the employee @@ -201,29 +224,6 @@ public GetV1EmployeesEmployeeIdJobsRequest withInclude(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } - @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -234,33 +234,35 @@ public boolean equals(java.lang.Object o) { } GetV1EmployeesEmployeeIdJobsRequest other = (GetV1EmployeesEmployeeIdJobsRequest) o; return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.employeeId, other.employeeId) && Utils.enhancedDeepEquals(this.page, other.page) && Utils.enhancedDeepEquals(this.per, other.per) && - Utils.enhancedDeepEquals(this.include, other.include) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.include, other.include); } @Override public int hashCode() { return Utils.enhancedHash( - employeeId, page, per, - include, xGustoAPIVersion); + xGustoAPIVersion, employeeId, page, + per, include); } @Override public String toString() { return Utils.toString(GetV1EmployeesEmployeeIdJobsRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, "employeeId", employeeId, "page", page, "per", per, - "include", include, - "xGustoAPIVersion", xGustoAPIVersion); + "include", include); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { + private Optional xGustoAPIVersion; + private String employeeId; private Optional page = Optional.empty(); @@ -269,13 +271,34 @@ public final static class Builder { private Optional include = Optional.empty(); - private Optional xGustoAPIVersion; - private Builder() { // force use of static builder() method } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(GetV1EmployeesEmployeeIdJobsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + /** * The UUID of the employee */ @@ -348,37 +371,14 @@ public Builder include(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } - public GetV1EmployeesEmployeeIdJobsRequest build() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } return new GetV1EmployeesEmployeeIdJobsRequest( - employeeId, page, per, - include, xGustoAPIVersion); + xGustoAPIVersion, employeeId, page, + per, include); } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.java new file mode 100644 index 000000000..1eadaf691 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion + * + *

    Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ +public enum GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion { + TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15("2026-06-15"); + + @JsonValue + private final String value; + + GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion o: GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest.java new file mode 100644 index 000000000..f880c0710 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest.java @@ -0,0 +1,191 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2026_06_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2026_06_15.utils.SpeakeasyMetadata; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + + /** + * The UUID of the employee + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=employee_id") + private String employeeId; + + @JsonCreator + public GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest( + Optional xGustoAPIVersion, + String employeeId) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(employeeId, "employeeId"); + this.xGustoAPIVersion = xGustoAPIVersion; + this.employeeId = employeeId; + } + + public GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest( + String employeeId) { + this(Optional.empty(), employeeId); + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + + /** + * The UUID of the employee + */ + @JsonIgnore + public String employeeId() { + return employeeId; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest withXGustoAPIVersion(GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + /** + * The UUID of the employee + */ + public GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest withEmployeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest other = (GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest) o; + return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.employeeId, other.employeeId); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + xGustoAPIVersion, employeeId); + } + + @Override + public String toString() { + return Utils.toString(GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, + "employeeId", employeeId); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional xGustoAPIVersion; + + private String employeeId; + + private Builder() { + // force use of static builder() method + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + + /** + * The UUID of the employee + */ + public Builder employeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + + public GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest build() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + return new GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest( + xGustoAPIVersion, employeeId); + } + + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "X-Gusto-API-Version", + "\"2026-06-15\"", + new TypeReference>() {}); + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java new file mode 100644 index 000000000..5c6435c70 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java @@ -0,0 +1,75 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import static com.gusto.embedded_api_v_2026_06_15.operations.Operations.RequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2026_06_15.SDKConfiguration; +import com.gusto.embedded_api_v_2026_06_15.operations.GetV1EmployeesEmployeeIdMemberPortalInvitations; +import com.gusto.embedded_api_v_2026_06_15.utils.Headers; +import com.gusto.embedded_api_v_2026_06_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.String; +import java.util.Optional; + +public class GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder { + + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2026-06-15\"", + new TypeReference>() {}); + private String employeeId; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder xGustoAPIVersion(GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder employeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + + + private GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest request = new GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest(xGustoAPIVersion, + employeeId); + + return request; + } + + public GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse call() { + + RequestOperation operation + = new GetV1EmployeesEmployeeIdMemberPortalInvitations.Sync(sdkConfiguration, _headers); + GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest request = buildRequest(); + + return operation.handleResponse(operation.doRequest(request)); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2026-06-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java new file mode 100644 index 000000000..a795a2d00 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java @@ -0,0 +1,253 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2026_06_15.models.components.MemberPortalInvitation; +import com.gusto.embedded_api_v_2026_06_15.utils.Response; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.io.InputStream; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.Optional; + + +public class GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse implements Response { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * Success + */ + private Optional memberPortalInvitation; + + @JsonCreator + public GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional memberPortalInvitation) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(memberPortalInvitation, "memberPortalInvitation"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.memberPortalInvitation = memberPortalInvitation; + } + + public GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * Success + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional memberPortalInvitation() { + return (Optional) memberPortalInvitation; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * Success + */ + public GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse withMemberPortalInvitation(MemberPortalInvitation memberPortalInvitation) { + Utils.checkNotNull(memberPortalInvitation, "memberPortalInvitation"); + this.memberPortalInvitation = Optional.ofNullable(memberPortalInvitation); + return this; + } + + + /** + * Success + */ + public GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse withMemberPortalInvitation(Optional memberPortalInvitation) { + Utils.checkNotNull(memberPortalInvitation, "memberPortalInvitation"); + this.memberPortalInvitation = memberPortalInvitation; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse other = (GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.memberPortalInvitation, other.memberPortalInvitation); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + memberPortalInvitation); + } + + @Override + public String toString() { + return Utils.toString(GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "memberPortalInvitation", memberPortalInvitation); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional memberPortalInvitation = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * Success + */ + public Builder memberPortalInvitation(MemberPortalInvitation memberPortalInvitation) { + Utils.checkNotNull(memberPortalInvitation, "memberPortalInvitation"); + this.memberPortalInvitation = Optional.ofNullable(memberPortalInvitation); + return this; + } + + /** + * Success + */ + public Builder memberPortalInvitation(Optional memberPortalInvitation) { + Utils.checkNotNull(memberPortalInvitation, "memberPortalInvitation"); + this.memberPortalInvitation = memberPortalInvitation; + return this; + } + + public GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse build() { + + return new GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse( + contentType, statusCode, rawResponse, + memberPortalInvitation); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1EmployeesEmployeeIdWorkAddressesRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1EmployeesEmployeeIdWorkAddressesRequest.java index e475d6a01..a8aab5cce 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1EmployeesEmployeeIdWorkAddressesRequest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1EmployeesEmployeeIdWorkAddressesRequest.java @@ -16,12 +16,6 @@ public class GetV1EmployeesEmployeeIdWorkAddressesRequest { - /** - * The UUID of the employee - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=employee_id") - private String employeeId; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class GetV1EmployeesEmployeeIdWorkAddressesRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the employee + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=employee_id") + private String employeeId; + @JsonCreator public GetV1EmployeesEmployeeIdWorkAddressesRequest( - String employeeId, - Optional xGustoAPIVersion) { - Utils.checkNotNull(employeeId, "employeeId"); + Optional xGustoAPIVersion, + String employeeId) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.employeeId = employeeId; + Utils.checkNotNull(employeeId, "employeeId"); this.xGustoAPIVersion = xGustoAPIVersion; + this.employeeId = employeeId; } public GetV1EmployeesEmployeeIdWorkAddressesRequest( String employeeId) { - this(employeeId, Optional.empty()); - } - - /** - * The UUID of the employee - */ - @JsonIgnore - public String employeeId() { - return employeeId; + this(Optional.empty(), employeeId); } /** @@ -64,20 +56,19 @@ public Optional xGu return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the employee */ - public GetV1EmployeesEmployeeIdWorkAddressesRequest withEmployeeId(String employeeId) { - Utils.checkNotNull(employeeId, "employeeId"); - this.employeeId = employeeId; - return this; + @JsonIgnore + public String employeeId() { + return employeeId; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetV1EmployeesEmployeeIdWorkAddressesRequest withXGustoAPIVersion(Optiona return this; } + /** + * The UUID of the employee + */ + public GetV1EmployeesEmployeeIdWorkAddressesRequest withEmployeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -111,45 +111,35 @@ public boolean equals(java.lang.Object o) { } GetV1EmployeesEmployeeIdWorkAddressesRequest other = (GetV1EmployeesEmployeeIdWorkAddressesRequest) o; return - Utils.enhancedDeepEquals(this.employeeId, other.employeeId) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.employeeId, other.employeeId); } @Override public int hashCode() { return Utils.enhancedHash( - employeeId, xGustoAPIVersion); + xGustoAPIVersion, employeeId); } @Override public String toString() { return Utils.toString(GetV1EmployeesEmployeeIdWorkAddressesRequest.class, - "employeeId", employeeId, - "xGustoAPIVersion", xGustoAPIVersion); + "xGustoAPIVersion", xGustoAPIVersion, + "employeeId", employeeId); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String employeeId; - private Optional xGustoAPIVersion; + private String employeeId; + private Builder() { // force use of static builder() method } - /** - * The UUID of the employee - */ - public Builder employeeId(String employeeId) { - Utils.checkNotNull(employeeId, "employeeId"); - this.employeeId = employeeId; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String employeeId; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1EmployeesEmployeeIdWorkAddressesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1EmployeesEmployeeIdWorkAddressesRequestBuilder employeeId(String employeeId) { - Utils.checkNotNull(employeeId, "employeeId"); - this.employeeId = employeeId; - return this; - } public GetV1EmployeesEmployeeIdWorkAddressesRequestBuilder xGustoAPIVersion(GetV1EmployeesEmployeeIdWorkAddressesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public GetV1EmployeesEmployeeIdWorkAddressesRequestBuilder xGustoAPIVersion(Opti return this; } + public GetV1EmployeesEmployeeIdWorkAddressesRequestBuilder employeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + private GetV1EmployeesEmployeeIdWorkAddressesRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1EmployeesEmployeeIdWorkAddressesRequest request = new GetV1EmployeesEmployeeIdWorkAddressesRequest(employeeId, - xGustoAPIVersion); + GetV1EmployeesEmployeeIdWorkAddressesRequest request = new GetV1EmployeesEmployeeIdWorkAddressesRequest(xGustoAPIVersion, + employeeId); return request; } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.java index 9b9c607af..2c247721b 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.java @@ -17,6 +17,14 @@ public class GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + /** * The UUID of the employee */ @@ -29,47 +37,23 @@ public class GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYear @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=effective_year") private long effectiveYear; - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; - @JsonCreator public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest( + Optional xGustoAPIVersion, String employeeUuid, - long effectiveYear, - Optional xGustoAPIVersion) { + long effectiveYear) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(employeeUuid, "employeeUuid"); Utils.checkNotNull(effectiveYear, "effectiveYear"); - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; this.employeeUuid = employeeUuid; this.effectiveYear = effectiveYear; - this.xGustoAPIVersion = xGustoAPIVersion; } public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest( String employeeUuid, long effectiveYear) { - this(employeeUuid, effectiveYear, Optional.empty()); - } - - /** - * The UUID of the employee - */ - @JsonIgnore - public String employeeUuid() { - return employeeUuid; - } - - /** - * The effective year for the Section 603 status - */ - @JsonIgnore - public long effectiveYear() { - return effectiveYear; + this(Optional.empty(), employeeUuid, effectiveYear); } /** @@ -83,29 +67,27 @@ public Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the employee */ - public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest withEmployeeUuid(String employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = employeeUuid; - return this; + @JsonIgnore + public String employeeUuid() { + return employeeUuid; } /** * The effective year for the Section 603 status */ - public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest withEffectiveYear(long effectiveYear) { - Utils.checkNotNull(effectiveYear, "effectiveYear"); - this.effectiveYear = effectiveYear; - return this; + @JsonIgnore + public long effectiveYear() { + return effectiveYear; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -129,6 +111,24 @@ public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearReques return this; } + /** + * The UUID of the employee + */ + public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest withEmployeeUuid(String employeeUuid) { + Utils.checkNotNull(employeeUuid, "employeeUuid"); + this.employeeUuid = employeeUuid; + return this; + } + + /** + * The effective year for the Section 603 status + */ + public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest withEffectiveYear(long effectiveYear) { + Utils.checkNotNull(effectiveYear, "effectiveYear"); + this.effectiveYear = effectiveYear; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -139,59 +139,39 @@ public boolean equals(java.lang.Object o) { } GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest other = (GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest) o; return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.employeeUuid, other.employeeUuid) && - Utils.enhancedDeepEquals(this.effectiveYear, other.effectiveYear) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.effectiveYear, other.effectiveYear); } @Override public int hashCode() { return Utils.enhancedHash( - employeeUuid, effectiveYear, xGustoAPIVersion); + xGustoAPIVersion, employeeUuid, effectiveYear); } @Override public String toString() { return Utils.toString(GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, "employeeUuid", employeeUuid, - "effectiveYear", effectiveYear, - "xGustoAPIVersion", xGustoAPIVersion); + "effectiveYear", effectiveYear); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { + private Optional xGustoAPIVersion; + private String employeeUuid; private Long effectiveYear; - private Optional xGustoAPIVersion; - private Builder() { // force use of static builder() method } - /** - * The UUID of the employee - */ - public Builder employeeUuid(String employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = employeeUuid; - return this; - } - - - /** - * The effective year for the Section 603 status - */ - public Builder effectiveYear(long effectiveYear) { - Utils.checkNotNull(effectiveYear, "effectiveYear"); - this.effectiveYear = effectiveYear; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -214,13 +194,33 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String employeeUuid; + private Long effectiveYear; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder employeeUuid(String employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = employeeUuid; - return this; - } - - public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder effectiveYear(long effectiveYear) { - Utils.checkNotNull(effectiveYear, "effectiveYear"); - this.effectiveYear = effectiveYear; - return this; - } public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder xGustoAPIVersion(GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -54,15 +42,27 @@ public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearReques return this; } + public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder employeeUuid(String employeeUuid) { + Utils.checkNotNull(employeeUuid, "employeeUuid"); + this.employeeUuid = employeeUuid; + return this; + } + + public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder effectiveYear(long effectiveYear) { + Utils.checkNotNull(effectiveYear, "effectiveYear"); + this.effectiveYear = effectiveYear; + return this; + } + private GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest request = new GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest(employeeUuid, - effectiveYear, - xGustoAPIVersion); + GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest request = new GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest(xGustoAPIVersion, + employeeUuid, + effectiveYear); return request; } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.java index c117ed928..7871e9338 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.java @@ -16,12 +16,6 @@ public class GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest { - /** - * The UUID of the employee - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=employee_uuid") - private String employeeUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the employee + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=employee_uuid") + private String employeeUuid; + @JsonCreator public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest( - String employeeUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); + Optional xGustoAPIVersion, + String employeeUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.employeeUuid = employeeUuid; + Utils.checkNotNull(employeeUuid, "employeeUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.employeeUuid = employeeUuid; } public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest( String employeeUuid) { - this(employeeUuid, Optional.empty()); - } - - /** - * The UUID of the employee - */ - @JsonIgnore - public String employeeUuid() { - return employeeUuid; + this(Optional.empty(), employeeUuid); } /** @@ -64,20 +56,19 @@ public Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the employee */ - public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest withEmployeeUuid(String employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = employeeUuid; - return this; + @JsonIgnore + public String employeeUuid() { + return employeeUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest withXGustoA return this; } + /** + * The UUID of the employee + */ + public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest withEmployeeUuid(String employeeUuid) { + Utils.checkNotNull(employeeUuid, "employeeUuid"); + this.employeeUuid = employeeUuid; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -111,45 +111,35 @@ public boolean equals(java.lang.Object o) { } GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest other = (GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest) o; return - Utils.enhancedDeepEquals(this.employeeUuid, other.employeeUuid) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.employeeUuid, other.employeeUuid); } @Override public int hashCode() { return Utils.enhancedHash( - employeeUuid, xGustoAPIVersion); + xGustoAPIVersion, employeeUuid); } @Override public String toString() { return Utils.toString(GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.class, - "employeeUuid", employeeUuid, - "xGustoAPIVersion", xGustoAPIVersion); + "xGustoAPIVersion", xGustoAPIVersion, + "employeeUuid", employeeUuid); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String employeeUuid; - private Optional xGustoAPIVersion; + private String employeeUuid; + private Builder() { // force use of static builder() method } - /** - * The UUID of the employee - */ - public Builder employeeUuid(String employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = employeeUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String employeeUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder employeeUuid(String employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = employeeUuid; - return this; - } public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder xGustoAPIVersion(GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder xGus return this; } + public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder employeeUuid(String employeeUuid) { + Utils.checkNotNull(employeeUuid, "employeeUuid"); + this.employeeUuid = employeeUuid; + return this; + } + private GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest request = new GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest(employeeUuid, - xGustoAPIVersion); + GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest request = new GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest(xGustoAPIVersion, + employeeUuid); return request; } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion.java new file mode 100644 index 000000000..fe862e050 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion + * + *

    Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ +public enum GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion { + TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15("2026-06-15"); + + @JsonValue + private final String value; + + GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion o: GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest.java index 06b049328..b1e462ac1 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest.java @@ -6,7 +6,6 @@ import com.fasterxml.jackson.annotation.JsonCreator; import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.core.type.TypeReference; -import com.gusto.embedded_api_v_2026_06_15.models.components.VersionHeader; import com.gusto.embedded_api_v_2026_06_15.utils.LazySingletonValue; import com.gusto.embedded_api_v_2026_06_15.utils.SpeakeasyMetadata; import com.gusto.embedded_api_v_2026_06_15.utils.Utils; @@ -17,6 +16,14 @@ public class GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + /** * The type of document being generated */ @@ -30,31 +37,34 @@ public class GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest { @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=request_uuid") private String requestUuid; - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; - @JsonCreator public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest( + Optional xGustoAPIVersion, DocumentType documentType, - String requestUuid, - Optional xGustoAPIVersion) { + String requestUuid) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(documentType, "documentType"); Utils.checkNotNull(requestUuid, "requestUuid"); - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; this.documentType = documentType; this.requestUuid = requestUuid; - this.xGustoAPIVersion = xGustoAPIVersion; } public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest( DocumentType documentType, String requestUuid) { - this(documentType, requestUuid, Optional.empty()); + this(Optional.empty(), documentType, requestUuid); + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; } /** @@ -74,21 +84,33 @@ public String requestUuid() { return requestUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional xGustoAPIVersion() { - return (Optional) xGustoAPIVersion; + public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest withXGustoAPIVersion(GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; } - public static Builder builder() { - return new Builder(); - } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } /** * The type of document being generated @@ -109,29 +131,6 @@ public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest withRequestUuid(Str return this; } - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest withXGustoAPIVersion(VersionHeader xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); - return this; - } - - - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } - @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -142,79 +141,79 @@ public boolean equals(java.lang.Object o) { } GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest other = (GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest) o; return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.documentType, other.documentType) && - Utils.enhancedDeepEquals(this.requestUuid, other.requestUuid) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.requestUuid, other.requestUuid); } @Override public int hashCode() { return Utils.enhancedHash( - documentType, requestUuid, xGustoAPIVersion); + xGustoAPIVersion, documentType, requestUuid); } @Override public String toString() { return Utils.toString(GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, "documentType", documentType, - "requestUuid", requestUuid, - "xGustoAPIVersion", xGustoAPIVersion); + "requestUuid", requestUuid); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { + private Optional xGustoAPIVersion; + private DocumentType documentType; private String requestUuid; - private Optional xGustoAPIVersion; - private Builder() { // force use of static builder() method } /** - * The type of document being generated + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - public Builder documentType(DocumentType documentType) { - Utils.checkNotNull(documentType, "documentType"); - this.documentType = documentType; + public Builder xGustoAPIVersion(GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); return this; } - /** - * The UUID of the request to generate a document. Generate document endpoints return request_uuids to - * be used with the GET generated document endpoint. + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - public Builder requestUuid(String requestUuid) { - Utils.checkNotNull(requestUuid, "requestUuid"); - this.requestUuid = requestUuid; + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; return this; } /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * The type of document being generated */ - public Builder xGustoAPIVersion(VersionHeader xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + public Builder documentType(DocumentType documentType) { + Utils.checkNotNull(documentType, "documentType"); + this.documentType = documentType; return this; } + /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * The UUID of the request to generate a document. Generate document endpoints return request_uuids to + * be used with the GET generated document endpoint. */ - public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; + public Builder requestUuid(String requestUuid) { + Utils.checkNotNull(requestUuid, "requestUuid"); + this.requestUuid = requestUuid; return this; } @@ -224,14 +223,14 @@ public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest build() { } return new GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest( - documentType, requestUuid, xGustoAPIVersion); + xGustoAPIVersion, documentType, requestUuid); } - private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = new LazySingletonValue<>( "X-Gusto-API-Version", "\"2026-06-15\"", - new TypeReference>() {}); + new TypeReference>() {}); } } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder.java index 238ab62b0..295c0be8c 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder.java @@ -7,7 +7,6 @@ import com.fasterxml.jackson.core.type.TypeReference; import com.gusto.embedded_api_v_2026_06_15.SDKConfiguration; -import com.gusto.embedded_api_v_2026_06_15.models.components.VersionHeader; import com.gusto.embedded_api_v_2026_06_15.operations.GetV1GeneratedDocumentsDocumentTypeRequestUuid; import com.gusto.embedded_api_v_2026_06_15.utils.Headers; import com.gusto.embedded_api_v_2026_06_15.utils.LazySingletonValue; @@ -17,18 +16,30 @@ public class GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder { - private DocumentType documentType; - private String requestUuid; - private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", - new TypeReference>() {}); + new TypeReference>() {}); + private DocumentType documentType; + private String requestUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } + + public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder xGustoAPIVersion(GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder documentType(DocumentType documentType) { Utils.checkNotNull(documentType, "documentType"); @@ -41,18 +52,6 @@ public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder requestUuid( this.requestUuid = requestUuid; return this; } - - public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder xGustoAPIVersion(VersionHeader xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); - return this; - } - - public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } private GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest buildRequest() { @@ -60,9 +59,9 @@ private GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest request = new GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest(documentType, - requestUuid, - xGustoAPIVersion); + GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest request = new GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest(xGustoAPIVersion, + documentType, + requestUuid); return request; } @@ -76,9 +75,9 @@ public GetV1GeneratedDocumentsDocumentTypeRequestUuidResponse call() { return operation.handleResponse(operation.doRequest(request)); } - private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = new LazySingletonValue<>( "xGustoAPIVersion", "\"2026-06-15\"", - new TypeReference>() {}); + new TypeReference>() {}); } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1HomeAddressesHomeAddressUuidRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1HomeAddressesHomeAddressUuidRequest.java index 24b7a4d8b..45555d203 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1HomeAddressesHomeAddressUuidRequest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1HomeAddressesHomeAddressUuidRequest.java @@ -16,12 +16,6 @@ public class GetV1HomeAddressesHomeAddressUuidRequest { - /** - * The UUID of the home address - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=home_address_uuid") - private String homeAddressUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class GetV1HomeAddressesHomeAddressUuidRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the home address + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=home_address_uuid") + private String homeAddressUuid; + @JsonCreator public GetV1HomeAddressesHomeAddressUuidRequest( - String homeAddressUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(homeAddressUuid, "homeAddressUuid"); + Optional xGustoAPIVersion, + String homeAddressUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.homeAddressUuid = homeAddressUuid; + Utils.checkNotNull(homeAddressUuid, "homeAddressUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.homeAddressUuid = homeAddressUuid; } public GetV1HomeAddressesHomeAddressUuidRequest( String homeAddressUuid) { - this(homeAddressUuid, Optional.empty()); - } - - /** - * The UUID of the home address - */ - @JsonIgnore - public String homeAddressUuid() { - return homeAddressUuid; + this(Optional.empty(), homeAddressUuid); } /** @@ -64,20 +56,19 @@ public Optional xGustoA return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the home address */ - public GetV1HomeAddressesHomeAddressUuidRequest withHomeAddressUuid(String homeAddressUuid) { - Utils.checkNotNull(homeAddressUuid, "homeAddressUuid"); - this.homeAddressUuid = homeAddressUuid; - return this; + @JsonIgnore + public String homeAddressUuid() { + return homeAddressUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetV1HomeAddressesHomeAddressUuidRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String homeAddressUuid; + private Builder() { // force use of static builder() method } - /** - * The UUID of the home address - */ - public Builder homeAddressUuid(String homeAddressUuid) { - Utils.checkNotNull(homeAddressUuid, "homeAddressUuid"); - this.homeAddressUuid = homeAddressUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String homeAddressUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1HomeAddressesHomeAddressUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1HomeAddressesHomeAddressUuidRequestBuilder homeAddressUuid(String homeAddressUuid) { - Utils.checkNotNull(homeAddressUuid, "homeAddressUuid"); - this.homeAddressUuid = homeAddressUuid; - return this; - } public GetV1HomeAddressesHomeAddressUuidRequestBuilder xGustoAPIVersion(GetV1HomeAddressesHomeAddressUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public GetV1HomeAddressesHomeAddressUuidRequestBuilder xGustoAPIVersion(Optional return this; } + public GetV1HomeAddressesHomeAddressUuidRequestBuilder homeAddressUuid(String homeAddressUuid) { + Utils.checkNotNull(homeAddressUuid, "homeAddressUuid"); + this.homeAddressUuid = homeAddressUuid; + return this; + } + private GetV1HomeAddressesHomeAddressUuidRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1HomeAddressesHomeAddressUuidRequest request = new GetV1HomeAddressesHomeAddressUuidRequest(homeAddressUuid, - xGustoAPIVersion); + GetV1HomeAddressesHomeAddressUuidRequest request = new GetV1HomeAddressesHomeAddressUuidRequest(xGustoAPIVersion, + homeAddressUuid); return request; } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1JobsJobIdRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1JobsJobIdRequest.java index 57fc173a5..60717df93 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1JobsJobIdRequest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1JobsJobIdRequest.java @@ -16,6 +16,14 @@ public class GetV1JobsJobIdRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + /** * The UUID of the job */ @@ -30,30 +38,33 @@ public class GetV1JobsJobIdRequest { @SpeakeasyMetadata("queryParam:style=form,explode=true,name=include") private Optional include; - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; - @JsonCreator public GetV1JobsJobIdRequest( + Optional xGustoAPIVersion, String jobId, - Optional include, - Optional xGustoAPIVersion) { + Optional include) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(jobId, "jobId"); Utils.checkNotNull(include, "include"); - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; this.jobId = jobId; this.include = include; - this.xGustoAPIVersion = xGustoAPIVersion; } public GetV1JobsJobIdRequest( String jobId) { - this(jobId, Optional.empty(), Optional.empty()); + this(Optional.empty(), jobId, Optional.empty()); + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; } /** @@ -75,21 +86,33 @@ public Optional include() { return (Optional) include; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional xGustoAPIVersion() { - return (Optional) xGustoAPIVersion; + public GetV1JobsJobIdRequest withXGustoAPIVersion(GetV1JobsJobIdHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; } - public static Builder builder() { - return new Builder(); - } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetV1JobsJobIdRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } /** * The UUID of the job @@ -123,29 +146,6 @@ public GetV1JobsJobIdRequest withInclude(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } - @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -156,39 +156,62 @@ public boolean equals(java.lang.Object o) { } GetV1JobsJobIdRequest other = (GetV1JobsJobIdRequest) o; return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.jobId, other.jobId) && - Utils.enhancedDeepEquals(this.include, other.include) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.include, other.include); } @Override public int hashCode() { return Utils.enhancedHash( - jobId, include, xGustoAPIVersion); + xGustoAPIVersion, jobId, include); } @Override public String toString() { return Utils.toString(GetV1JobsJobIdRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, "jobId", jobId, - "include", include, - "xGustoAPIVersion", xGustoAPIVersion); + "include", include); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { + private Optional xGustoAPIVersion; + private String jobId; private Optional include = Optional.empty(); - private Optional xGustoAPIVersion; - private Builder() { // force use of static builder() method } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(GetV1JobsJobIdHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + /** * The UUID of the job */ @@ -221,36 +244,13 @@ public Builder include(Optional inclu return this; } - - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public Builder xGustoAPIVersion(GetV1JobsJobIdHeaderXGustoAPIVersion xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); - return this; - } - - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } - public GetV1JobsJobIdRequest build() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } return new GetV1JobsJobIdRequest( - jobId, include, xGustoAPIVersion); + xGustoAPIVersion, jobId, include); } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1JobsJobIdRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1JobsJobIdRequestBuilder.java index 69681ac7e..f7279baf1 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1JobsJobIdRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1JobsJobIdRequestBuilder.java @@ -16,18 +16,30 @@ public class GetV1JobsJobIdRequestBuilder { - private String jobId; - private Optional include = Optional.empty(); private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String jobId; + private Optional include = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1JobsJobIdRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } + + public GetV1JobsJobIdRequestBuilder xGustoAPIVersion(GetV1JobsJobIdHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetV1JobsJobIdRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } public GetV1JobsJobIdRequestBuilder jobId(String jobId) { Utils.checkNotNull(jobId, "jobId"); @@ -46,18 +58,6 @@ public GetV1JobsJobIdRequestBuilder include(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } private GetV1JobsJobIdRequest buildRequest() { @@ -65,9 +65,9 @@ private GetV1JobsJobIdRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1JobsJobIdRequest request = new GetV1JobsJobIdRequest(jobId, - include, - xGustoAPIVersion); + GetV1JobsJobIdRequest request = new GetV1JobsJobIdRequest(xGustoAPIVersion, + jobId, + include); return request; } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1LocationsLocationUuidMinimumWagesRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1LocationsLocationUuidMinimumWagesRequest.java index 53e6c85d7..087c017b8 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1LocationsLocationUuidMinimumWagesRequest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1LocationsLocationUuidMinimumWagesRequest.java @@ -16,12 +16,6 @@ public class GetV1LocationsLocationUuidMinimumWagesRequest { - /** - * The UUID of the location - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=location_uuid") - private String locationUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,34 +24,32 @@ public class GetV1LocationsLocationUuidMinimumWagesRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the location + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=location_uuid") + private String locationUuid; + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=effective_date") private Optional effectiveDate; @JsonCreator public GetV1LocationsLocationUuidMinimumWagesRequest( - String locationUuid, Optional xGustoAPIVersion, + String locationUuid, Optional effectiveDate) { - Utils.checkNotNull(locationUuid, "locationUuid"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(locationUuid, "locationUuid"); Utils.checkNotNull(effectiveDate, "effectiveDate"); - this.locationUuid = locationUuid; this.xGustoAPIVersion = xGustoAPIVersion; + this.locationUuid = locationUuid; this.effectiveDate = effectiveDate; } public GetV1LocationsLocationUuidMinimumWagesRequest( String locationUuid) { - this(locationUuid, Optional.empty(), Optional.empty()); - } - - /** - * The UUID of the location - */ - @JsonIgnore - public String locationUuid() { - return locationUuid; + this(Optional.empty(), locationUuid, Optional.empty()); } /** @@ -71,6 +63,14 @@ public Optional xG return (Optional) xGustoAPIVersion; } + /** + * The UUID of the location + */ + @JsonIgnore + public String locationUuid() { + return locationUuid; + } + @JsonIgnore public Optional effectiveDate() { return effectiveDate; @@ -81,15 +81,6 @@ public static Builder builder() { } - /** - * The UUID of the location - */ - public GetV1LocationsLocationUuidMinimumWagesRequest withLocationUuid(String locationUuid) { - Utils.checkNotNull(locationUuid, "locationUuid"); - this.locationUuid = locationUuid; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -113,6 +104,15 @@ public GetV1LocationsLocationUuidMinimumWagesRequest withXGustoAPIVersion(Option return this; } + /** + * The UUID of the location + */ + public GetV1LocationsLocationUuidMinimumWagesRequest withLocationUuid(String locationUuid) { + Utils.checkNotNull(locationUuid, "locationUuid"); + this.locationUuid = locationUuid; + return this; + } + public GetV1LocationsLocationUuidMinimumWagesRequest withEffectiveDate(String effectiveDate) { Utils.checkNotNull(effectiveDate, "effectiveDate"); this.effectiveDate = Optional.ofNullable(effectiveDate); @@ -136,32 +136,32 @@ public boolean equals(java.lang.Object o) { } GetV1LocationsLocationUuidMinimumWagesRequest other = (GetV1LocationsLocationUuidMinimumWagesRequest) o; return - Utils.enhancedDeepEquals(this.locationUuid, other.locationUuid) && Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.locationUuid, other.locationUuid) && Utils.enhancedDeepEquals(this.effectiveDate, other.effectiveDate); } @Override public int hashCode() { return Utils.enhancedHash( - locationUuid, xGustoAPIVersion, effectiveDate); + xGustoAPIVersion, locationUuid, effectiveDate); } @Override public String toString() { return Utils.toString(GetV1LocationsLocationUuidMinimumWagesRequest.class, - "locationUuid", locationUuid, "xGustoAPIVersion", xGustoAPIVersion, + "locationUuid", locationUuid, "effectiveDate", effectiveDate); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String locationUuid; - private Optional xGustoAPIVersion; + private String locationUuid; + private Optional effectiveDate = Optional.empty(); private Builder() { @@ -169,16 +169,6 @@ private Builder() { } - /** - * The UUID of the location - */ - public Builder locationUuid(String locationUuid) { - Utils.checkNotNull(locationUuid, "locationUuid"); - this.locationUuid = locationUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -202,6 +192,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String locationUuid; private Optional effectiveDate = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -28,12 +28,6 @@ public class GetV1LocationsLocationUuidMinimumWagesRequestBuilder { public GetV1LocationsLocationUuidMinimumWagesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1LocationsLocationUuidMinimumWagesRequestBuilder locationUuid(String locationUuid) { - Utils.checkNotNull(locationUuid, "locationUuid"); - this.locationUuid = locationUuid; - return this; - } public GetV1LocationsLocationUuidMinimumWagesRequestBuilder xGustoAPIVersion(GetV1LocationsLocationUuidMinimumWagesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,6 +40,12 @@ public GetV1LocationsLocationUuidMinimumWagesRequestBuilder xGustoAPIVersion(Opt this.xGustoAPIVersion = xGustoAPIVersion; return this; } + + public GetV1LocationsLocationUuidMinimumWagesRequestBuilder locationUuid(String locationUuid) { + Utils.checkNotNull(locationUuid, "locationUuid"); + this.locationUuid = locationUuid; + return this; + } public GetV1LocationsLocationUuidMinimumWagesRequestBuilder effectiveDate(String effectiveDate) { Utils.checkNotNull(effectiveDate, "effectiveDate"); @@ -65,8 +65,8 @@ private GetV1LocationsLocationUuidMinimumWagesRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1LocationsLocationUuidMinimumWagesRequest request = new GetV1LocationsLocationUuidMinimumWagesRequest(locationUuid, - xGustoAPIVersion, + GetV1LocationsLocationUuidMinimumWagesRequest request = new GetV1LocationsLocationUuidMinimumWagesRequest(xGustoAPIVersion, + locationUuid, effectiveDate); return request; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest.java index 0a19d4e55..41d87958e 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest.java @@ -16,12 +16,6 @@ public class GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest { - /** - * The UUID of the company - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") - private String companyUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") + private String companyUuid; + @JsonCreator public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest( - String companyUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(companyUuid, "companyUuid"); + Optional xGustoAPIVersion, + String companyUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.companyUuid = companyUuid; + Utils.checkNotNull(companyUuid, "companyUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.companyUuid = companyUuid; } public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest( String companyUuid) { - this(companyUuid, Optional.empty()); - } - - /** - * The UUID of the company - */ - @JsonIgnore - public String companyUuid() { - return companyUuid; + this(Optional.empty(), companyUuid); } /** @@ -64,20 +56,19 @@ public Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the company */ - public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest withCompanyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; + @JsonIgnore + public String companyUuid() { + return companyUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest withXGus return this; } + /** + * The UUID of the company + */ + public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -111,45 +111,35 @@ public boolean equals(java.lang.Object o) { } GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest other = (GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest) o; return - Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid); } @Override public int hashCode() { return Utils.enhancedHash( - companyUuid, xGustoAPIVersion); + xGustoAPIVersion, companyUuid); } @Override public String toString() { return Utils.toString(GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest.class, - "companyUuid", companyUuid, - "xGustoAPIVersion", xGustoAPIVersion); + "xGustoAPIVersion", xGustoAPIVersion, + "companyUuid", companyUuid); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String companyUuid; - private Optional xGustoAPIVersion; + private String companyUuid; + private Builder() { // force use of static builder() method } - /** - * The UUID of the company - */ - public Builder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String companyUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder xGustoAPIVersion(GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder x return this; } + public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + private GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest request = new GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest(companyUuid, - xGustoAPIVersion); + GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest request = new GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest(xGustoAPIVersion, + companyUuid); return request; } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest.java index dbefc5b92..56fdbb22b 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest.java @@ -16,12 +16,6 @@ public class GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest { - /** - * The UUID of the company - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") - private String companyUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") + private String companyUuid; + @JsonCreator public GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest( - String companyUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(companyUuid, "companyUuid"); + Optional xGustoAPIVersion, + String companyUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.companyUuid = companyUuid; + Utils.checkNotNull(companyUuid, "companyUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.companyUuid = companyUuid; } public GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest( String companyUuid) { - this(companyUuid, Optional.empty()); - } - - /** - * The UUID of the company - */ - @JsonIgnore - public String companyUuid() { - return companyUuid; + this(Optional.empty(), companyUuid); } /** @@ -64,20 +56,19 @@ public Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the company */ - public GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest withCompanyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; + @JsonIgnore + public String companyUuid() { + return companyUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest withXGustoAP return this; } + /** + * The UUID of the company + */ + public GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -111,45 +111,35 @@ public boolean equals(java.lang.Object o) { } GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest other = (GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest) o; return - Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid); } @Override public int hashCode() { return Utils.enhancedHash( - companyUuid, xGustoAPIVersion); + xGustoAPIVersion, companyUuid); } @Override public String toString() { return Utils.toString(GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest.class, - "companyUuid", companyUuid, - "xGustoAPIVersion", xGustoAPIVersion); + "xGustoAPIVersion", xGustoAPIVersion, + "companyUuid", companyUuid); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String companyUuid; - private Optional xGustoAPIVersion; + private String companyUuid; + private Builder() { // force use of static builder() method } - /** - * The UUID of the company - */ - public Builder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String companyUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilder xGustoAPIVersion(GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilder xGust return this; } + public GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + private GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest request = new GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest(companyUuid, - xGustoAPIVersion); + GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest request = new GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest(xGustoAPIVersion, + companyUuid); return request; } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidRequest.java index 9e3359097..272388ad1 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidRequest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidRequest.java @@ -9,6 +9,7 @@ import com.gusto.embedded_api_v_2026_06_15.utils.LazySingletonValue; import com.gusto.embedded_api_v_2026_06_15.utils.SpeakeasyMetadata; import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Long; import java.lang.Override; import java.lang.String; import java.lang.SuppressWarnings; @@ -16,6 +17,14 @@ public class GetV1PaymentReceiptsPayrollsPayrollUuidRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + /** * The UUID of the payroll */ @@ -23,34 +32,38 @@ public class GetV1PaymentReceiptsPayrollsPayrollUuidRequest { private String payrollUuid; /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. */ - @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=page") + private Optional page; + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + @SpeakeasyMetadata("queryParam:style=form,explode=true,name=per") + private Optional per; @JsonCreator public GetV1PaymentReceiptsPayrollsPayrollUuidRequest( + Optional xGustoAPIVersion, String payrollUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(payrollUuid, "payrollUuid"); + Optional page, + Optional per) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.payrollUuid = payrollUuid; + Utils.checkNotNull(payrollUuid, "payrollUuid"); + Utils.checkNotNull(page, "page"); + Utils.checkNotNull(per, "per"); this.xGustoAPIVersion = xGustoAPIVersion; + this.payrollUuid = payrollUuid; + this.page = page; + this.per = per; } public GetV1PaymentReceiptsPayrollsPayrollUuidRequest( String payrollUuid) { - this(payrollUuid, Optional.empty()); - } - - /** - * The UUID of the payroll - */ - @JsonIgnore - public String payrollUuid() { - return payrollUuid; + this(Optional.empty(), payrollUuid, Optional.empty(), + Optional.empty()); } /** @@ -64,20 +77,36 @@ public Optional x return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); + /** + * The UUID of the payroll + */ + @JsonIgnore + public String payrollUuid() { + return payrollUuid; } + /** + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. + */ + @JsonIgnore + public Optional page() { + return page; + } /** - * The UUID of the payroll + * Number of objects per page. For majority of endpoints will default to 25 */ - public GetV1PaymentReceiptsPayrollsPayrollUuidRequest withPayrollUuid(String payrollUuid) { - Utils.checkNotNull(payrollUuid, "payrollUuid"); - this.payrollUuid = payrollUuid; - return this; + @JsonIgnore + public Optional per() { + return per; + } + + public static Builder builder() { + return new Builder(); } + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +130,55 @@ public GetV1PaymentReceiptsPayrollsPayrollUuidRequest withXGustoAPIVersion(Optio return this; } + /** + * The UUID of the payroll + */ + public GetV1PaymentReceiptsPayrollsPayrollUuidRequest withPayrollUuid(String payrollUuid) { + Utils.checkNotNull(payrollUuid, "payrollUuid"); + this.payrollUuid = payrollUuid; + return this; + } + + /** + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. + */ + public GetV1PaymentReceiptsPayrollsPayrollUuidRequest withPage(long page) { + Utils.checkNotNull(page, "page"); + this.page = Optional.ofNullable(page); + return this; + } + + + /** + * The page that is requested. When unspecified, will load all objects unless endpoint forces + * pagination. + */ + public GetV1PaymentReceiptsPayrollsPayrollUuidRequest withPage(Optional page) { + Utils.checkNotNull(page, "page"); + this.page = page; + return this; + } + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + public GetV1PaymentReceiptsPayrollsPayrollUuidRequest withPer(long per) { + Utils.checkNotNull(per, "per"); + this.per = Optional.ofNullable(per); + return this; + } + + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + public GetV1PaymentReceiptsPayrollsPayrollUuidRequest withPer(Optional per) { + Utils.checkNotNull(per, "per"); + this.per = per; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -111,45 +189,44 @@ public boolean equals(java.lang.Object o) { } GetV1PaymentReceiptsPayrollsPayrollUuidRequest other = (GetV1PaymentReceiptsPayrollsPayrollUuidRequest) o; return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.payrollUuid, other.payrollUuid) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.page, other.page) && + Utils.enhancedDeepEquals(this.per, other.per); } @Override public int hashCode() { return Utils.enhancedHash( - payrollUuid, xGustoAPIVersion); + xGustoAPIVersion, payrollUuid, page, + per); } @Override public String toString() { return Utils.toString(GetV1PaymentReceiptsPayrollsPayrollUuidRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, "payrollUuid", payrollUuid, - "xGustoAPIVersion", xGustoAPIVersion); + "page", page, + "per", per); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { + private Optional xGustoAPIVersion; + private String payrollUuid; - private Optional xGustoAPIVersion; + private Optional page = Optional.empty(); + + private Optional per = Optional.empty(); private Builder() { // force use of static builder() method } - /** - * The UUID of the payroll - */ - public Builder payrollUuid(String payrollUuid) { - Utils.checkNotNull(payrollUuid, "payrollUuid"); - this.payrollUuid = payrollUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +249,64 @@ public Builder xGustoAPIVersion(Optional page) { + Utils.checkNotNull(page, "page"); + this.page = page; + return this; + } + + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + public Builder per(long per) { + Utils.checkNotNull(per, "per"); + this.per = Optional.ofNullable(per); + return this; + } + + /** + * Number of objects per page. For majority of endpoints will default to 25 + */ + public Builder per(Optional per) { + Utils.checkNotNull(per, "per"); + this.per = per; + return this; + } + public GetV1PaymentReceiptsPayrollsPayrollUuidRequest build() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } return new GetV1PaymentReceiptsPayrollsPayrollUuidRequest( - payrollUuid, xGustoAPIVersion); + xGustoAPIVersion, payrollUuid, page, + per); } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder.java index b50342d2a..1adc85ba2 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder.java @@ -11,28 +11,25 @@ import com.gusto.embedded_api_v_2026_06_15.utils.Headers; import com.gusto.embedded_api_v_2026_06_15.utils.LazySingletonValue; import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Long; import java.lang.String; import java.util.Optional; public class GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder { - private String payrollUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String payrollUuid; + private Optional page = Optional.empty(); + private Optional per = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder payrollUuid(String payrollUuid) { - Utils.checkNotNull(payrollUuid, "payrollUuid"); - this.payrollUuid = payrollUuid; - return this; - } public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder xGustoAPIVersion(GetV1PaymentReceiptsPayrollsPayrollUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +43,46 @@ public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder xGustoAPIVersion(Op return this; } + public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder payrollUuid(String payrollUuid) { + Utils.checkNotNull(payrollUuid, "payrollUuid"); + this.payrollUuid = payrollUuid; + return this; + } + + public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder page(long page) { + Utils.checkNotNull(page, "page"); + this.page = Optional.of(page); + return this; + } + + public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder page(Optional page) { + Utils.checkNotNull(page, "page"); + this.page = page; + return this; + } + + public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder per(long per) { + Utils.checkNotNull(per, "per"); + this.per = Optional.of(per); + return this; + } + + public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder per(Optional per) { + Utils.checkNotNull(per, "per"); + this.per = per; + return this; + } + private GetV1PaymentReceiptsPayrollsPayrollUuidRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1PaymentReceiptsPayrollsPayrollUuidRequest request = new GetV1PaymentReceiptsPayrollsPayrollUuidRequest(payrollUuid, - xGustoAPIVersion); + GetV1PaymentReceiptsPayrollsPayrollUuidRequest request = new GetV1PaymentReceiptsPayrollsPayrollUuidRequest(xGustoAPIVersion, + payrollUuid, + page, + per); return request; } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion.java new file mode 100644 index 000000000..ff963fe22 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion + * + *

    Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ +public enum GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion { + TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15("2026-06-15"); + + @JsonValue + private final String value; + + GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion o: GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1PayrollBatchesPayrollBatchUuidRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1PayrollBatchesPayrollBatchUuidRequest.java new file mode 100644 index 000000000..f5e18f362 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1PayrollBatchesPayrollBatchUuidRequest.java @@ -0,0 +1,191 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2026_06_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2026_06_15.utils.SpeakeasyMetadata; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class GetV1PayrollBatchesPayrollBatchUuidRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + + /** + * The UUID of the payroll cancellation batch returned by `POST /v1/payroll_batches`. + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=payroll_batch_uuid") + private String payrollBatchUuid; + + @JsonCreator + public GetV1PayrollBatchesPayrollBatchUuidRequest( + Optional xGustoAPIVersion, + String payrollBatchUuid) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(payrollBatchUuid, "payrollBatchUuid"); + this.xGustoAPIVersion = xGustoAPIVersion; + this.payrollBatchUuid = payrollBatchUuid; + } + + public GetV1PayrollBatchesPayrollBatchUuidRequest( + String payrollBatchUuid) { + this(Optional.empty(), payrollBatchUuid); + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + + /** + * The UUID of the payroll cancellation batch returned by `POST /v1/payroll_batches`. + */ + @JsonIgnore + public String payrollBatchUuid() { + return payrollBatchUuid; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetV1PayrollBatchesPayrollBatchUuidRequest withXGustoAPIVersion(GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public GetV1PayrollBatchesPayrollBatchUuidRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + /** + * The UUID of the payroll cancellation batch returned by `POST /v1/payroll_batches`. + */ + public GetV1PayrollBatchesPayrollBatchUuidRequest withPayrollBatchUuid(String payrollBatchUuid) { + Utils.checkNotNull(payrollBatchUuid, "payrollBatchUuid"); + this.payrollBatchUuid = payrollBatchUuid; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetV1PayrollBatchesPayrollBatchUuidRequest other = (GetV1PayrollBatchesPayrollBatchUuidRequest) o; + return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.payrollBatchUuid, other.payrollBatchUuid); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + xGustoAPIVersion, payrollBatchUuid); + } + + @Override + public String toString() { + return Utils.toString(GetV1PayrollBatchesPayrollBatchUuidRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, + "payrollBatchUuid", payrollBatchUuid); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional xGustoAPIVersion; + + private String payrollBatchUuid; + + private Builder() { + // force use of static builder() method + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + + /** + * The UUID of the payroll cancellation batch returned by `POST /v1/payroll_batches`. + */ + public Builder payrollBatchUuid(String payrollBatchUuid) { + Utils.checkNotNull(payrollBatchUuid, "payrollBatchUuid"); + this.payrollBatchUuid = payrollBatchUuid; + return this; + } + + public GetV1PayrollBatchesPayrollBatchUuidRequest build() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + return new GetV1PayrollBatchesPayrollBatchUuidRequest( + xGustoAPIVersion, payrollBatchUuid); + } + + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "X-Gusto-API-Version", + "\"2026-06-15\"", + new TypeReference>() {}); + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1PayrollBatchesPayrollBatchUuidRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1PayrollBatchesPayrollBatchUuidRequestBuilder.java new file mode 100644 index 000000000..79998aea8 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1PayrollBatchesPayrollBatchUuidRequestBuilder.java @@ -0,0 +1,82 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import static com.gusto.embedded_api_v_2026_06_15.operations.Operations.RequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2026_06_15.SDKConfiguration; +import com.gusto.embedded_api_v_2026_06_15.operations.GetV1PayrollBatchesPayrollBatchUuid; +import com.gusto.embedded_api_v_2026_06_15.utils.Headers; +import com.gusto.embedded_api_v_2026_06_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.String; +import java.util.Optional; + +public class GetV1PayrollBatchesPayrollBatchUuidRequestBuilder { + + private GetV1PayrollBatchesPayrollBatchUuidSecurity security; + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2026-06-15\"", + new TypeReference>() {}); + private String payrollBatchUuid; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public GetV1PayrollBatchesPayrollBatchUuidRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public GetV1PayrollBatchesPayrollBatchUuidRequestBuilder security(GetV1PayrollBatchesPayrollBatchUuidSecurity security) { + Utils.checkNotNull(security, "security"); + this.security = security; + return this; + } + + public GetV1PayrollBatchesPayrollBatchUuidRequestBuilder xGustoAPIVersion(GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetV1PayrollBatchesPayrollBatchUuidRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public GetV1PayrollBatchesPayrollBatchUuidRequestBuilder payrollBatchUuid(String payrollBatchUuid) { + Utils.checkNotNull(payrollBatchUuid, "payrollBatchUuid"); + this.payrollBatchUuid = payrollBatchUuid; + return this; + } + + + private GetV1PayrollBatchesPayrollBatchUuidRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + GetV1PayrollBatchesPayrollBatchUuidRequest request = new GetV1PayrollBatchesPayrollBatchUuidRequest(xGustoAPIVersion, + payrollBatchUuid); + + return request; + } + + public GetV1PayrollBatchesPayrollBatchUuidResponse call() { + + RequestOperation operation + = new GetV1PayrollBatchesPayrollBatchUuid.Sync(sdkConfiguration, security, _headers); + GetV1PayrollBatchesPayrollBatchUuidRequest request = buildRequest(); + + return operation.handleResponse(operation.doRequest(request)); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2026-06-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1PayrollBatchesPayrollBatchUuidResponse.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1PayrollBatchesPayrollBatchUuidResponse.java new file mode 100644 index 000000000..629e82691 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1PayrollBatchesPayrollBatchUuidResponse.java @@ -0,0 +1,253 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2026_06_15.models.components.PayrollBatchResults; +import com.gusto.embedded_api_v_2026_06_15.utils.Response; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.io.InputStream; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.Optional; + + +public class GetV1PayrollBatchesPayrollBatchUuidResponse implements Response { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * successful + */ + private Optional payrollBatchResults; + + @JsonCreator + public GetV1PayrollBatchesPayrollBatchUuidResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional payrollBatchResults) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(payrollBatchResults, "payrollBatchResults"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.payrollBatchResults = payrollBatchResults; + } + + public GetV1PayrollBatchesPayrollBatchUuidResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * successful + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional payrollBatchResults() { + return (Optional) payrollBatchResults; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public GetV1PayrollBatchesPayrollBatchUuidResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public GetV1PayrollBatchesPayrollBatchUuidResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public GetV1PayrollBatchesPayrollBatchUuidResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * successful + */ + public GetV1PayrollBatchesPayrollBatchUuidResponse withPayrollBatchResults(PayrollBatchResults payrollBatchResults) { + Utils.checkNotNull(payrollBatchResults, "payrollBatchResults"); + this.payrollBatchResults = Optional.ofNullable(payrollBatchResults); + return this; + } + + + /** + * successful + */ + public GetV1PayrollBatchesPayrollBatchUuidResponse withPayrollBatchResults(Optional payrollBatchResults) { + Utils.checkNotNull(payrollBatchResults, "payrollBatchResults"); + this.payrollBatchResults = payrollBatchResults; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetV1PayrollBatchesPayrollBatchUuidResponse other = (GetV1PayrollBatchesPayrollBatchUuidResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.payrollBatchResults, other.payrollBatchResults); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + payrollBatchResults); + } + + @Override + public String toString() { + return Utils.toString(GetV1PayrollBatchesPayrollBatchUuidResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "payrollBatchResults", payrollBatchResults); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional payrollBatchResults = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * successful + */ + public Builder payrollBatchResults(PayrollBatchResults payrollBatchResults) { + Utils.checkNotNull(payrollBatchResults, "payrollBatchResults"); + this.payrollBatchResults = Optional.ofNullable(payrollBatchResults); + return this; + } + + /** + * successful + */ + public Builder payrollBatchResults(Optional payrollBatchResults) { + Utils.checkNotNull(payrollBatchResults, "payrollBatchResults"); + this.payrollBatchResults = payrollBatchResults; + return this; + } + + public GetV1PayrollBatchesPayrollBatchUuidResponse build() { + + return new GetV1PayrollBatchesPayrollBatchUuidResponse( + contentType, statusCode, rawResponse, + payrollBatchResults); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1PayrollBatchesPayrollBatchUuidSecurity.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1PayrollBatchesPayrollBatchUuidSecurity.java new file mode 100644 index 000000000..f37452003 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1PayrollBatchesPayrollBatchUuidSecurity.java @@ -0,0 +1,91 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2026_06_15.utils.HasSecurity; +import com.gusto.embedded_api_v_2026_06_15.utils.SpeakeasyMetadata; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Override; +import java.lang.String; + + +public class GetV1PayrollBatchesPayrollBatchUuidSecurity implements HasSecurity { + + @SpeakeasyMetadata("security:scheme=true,type=http,subtype=bearer,name=Authorization") + private String systemAccessAuth; + + @JsonCreator + public GetV1PayrollBatchesPayrollBatchUuidSecurity( + String systemAccessAuth) { + Utils.checkNotNull(systemAccessAuth, "systemAccessAuth"); + this.systemAccessAuth = systemAccessAuth; + } + + @JsonIgnore + public String systemAccessAuth() { + return systemAccessAuth; + } + + public static Builder builder() { + return new Builder(); + } + + + public GetV1PayrollBatchesPayrollBatchUuidSecurity withSystemAccessAuth(String systemAccessAuth) { + Utils.checkNotNull(systemAccessAuth, "systemAccessAuth"); + this.systemAccessAuth = systemAccessAuth; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetV1PayrollBatchesPayrollBatchUuidSecurity other = (GetV1PayrollBatchesPayrollBatchUuidSecurity) o; + return + Utils.enhancedDeepEquals(this.systemAccessAuth, other.systemAccessAuth); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + systemAccessAuth); + } + + @Override + public String toString() { + return Utils.toString(GetV1PayrollBatchesPayrollBatchUuidSecurity.class, + "systemAccessAuth", systemAccessAuth); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String systemAccessAuth; + + private Builder() { + // force use of static builder() method + } + + + public Builder systemAccessAuth(String systemAccessAuth) { + Utils.checkNotNull(systemAccessAuth, "systemAccessAuth"); + this.systemAccessAuth = systemAccessAuth; + return this; + } + + public GetV1PayrollBatchesPayrollBatchUuidSecurity build() { + + return new GetV1PayrollBatchesPayrollBatchUuidSecurity( + systemAccessAuth); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1PayrollDigestsPayrollDigestUuidRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1PayrollDigestsPayrollDigestUuidRequest.java index b28b8d03b..159da0fc1 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1PayrollDigestsPayrollDigestUuidRequest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1PayrollDigestsPayrollDigestUuidRequest.java @@ -16,12 +16,6 @@ public class GetV1PayrollDigestsPayrollDigestUuidRequest { - /** - * The UUID of the payroll digest batch returned by `POST /v1/payroll_digests`. - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=payroll_digest_uuid") - private String payrollDigestUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class GetV1PayrollDigestsPayrollDigestUuidRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the payroll digest batch returned by `POST /v1/payroll_digests`. + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=payroll_digest_uuid") + private String payrollDigestUuid; + @JsonCreator public GetV1PayrollDigestsPayrollDigestUuidRequest( - String payrollDigestUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(payrollDigestUuid, "payrollDigestUuid"); + Optional xGustoAPIVersion, + String payrollDigestUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.payrollDigestUuid = payrollDigestUuid; + Utils.checkNotNull(payrollDigestUuid, "payrollDigestUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.payrollDigestUuid = payrollDigestUuid; } public GetV1PayrollDigestsPayrollDigestUuidRequest( String payrollDigestUuid) { - this(payrollDigestUuid, Optional.empty()); - } - - /** - * The UUID of the payroll digest batch returned by `POST /v1/payroll_digests`. - */ - @JsonIgnore - public String payrollDigestUuid() { - return payrollDigestUuid; + this(Optional.empty(), payrollDigestUuid); } /** @@ -64,20 +56,19 @@ public Optional xGus return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the payroll digest batch returned by `POST /v1/payroll_digests`. */ - public GetV1PayrollDigestsPayrollDigestUuidRequest withPayrollDigestUuid(String payrollDigestUuid) { - Utils.checkNotNull(payrollDigestUuid, "payrollDigestUuid"); - this.payrollDigestUuid = payrollDigestUuid; - return this; + @JsonIgnore + public String payrollDigestUuid() { + return payrollDigestUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetV1PayrollDigestsPayrollDigestUuidRequest withXGustoAPIVersion(Optional return this; } + /** + * The UUID of the payroll digest batch returned by `POST /v1/payroll_digests`. + */ + public GetV1PayrollDigestsPayrollDigestUuidRequest withPayrollDigestUuid(String payrollDigestUuid) { + Utils.checkNotNull(payrollDigestUuid, "payrollDigestUuid"); + this.payrollDigestUuid = payrollDigestUuid; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -111,45 +111,35 @@ public boolean equals(java.lang.Object o) { } GetV1PayrollDigestsPayrollDigestUuidRequest other = (GetV1PayrollDigestsPayrollDigestUuidRequest) o; return - Utils.enhancedDeepEquals(this.payrollDigestUuid, other.payrollDigestUuid) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.payrollDigestUuid, other.payrollDigestUuid); } @Override public int hashCode() { return Utils.enhancedHash( - payrollDigestUuid, xGustoAPIVersion); + xGustoAPIVersion, payrollDigestUuid); } @Override public String toString() { return Utils.toString(GetV1PayrollDigestsPayrollDigestUuidRequest.class, - "payrollDigestUuid", payrollDigestUuid, - "xGustoAPIVersion", xGustoAPIVersion); + "xGustoAPIVersion", xGustoAPIVersion, + "payrollDigestUuid", payrollDigestUuid); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String payrollDigestUuid; - private Optional xGustoAPIVersion; + private String payrollDigestUuid; + private Builder() { // force use of static builder() method } - /** - * The UUID of the payroll digest batch returned by `POST /v1/payroll_digests`. - */ - public Builder payrollDigestUuid(String payrollDigestUuid) { - Utils.checkNotNull(payrollDigestUuid, "payrollDigestUuid"); - this.payrollDigestUuid = payrollDigestUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String payrollDigestUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -34,12 +34,6 @@ public GetV1PayrollDigestsPayrollDigestUuidRequestBuilder security(GetV1PayrollD this.security = security; return this; } - - public GetV1PayrollDigestsPayrollDigestUuidRequestBuilder payrollDigestUuid(String payrollDigestUuid) { - Utils.checkNotNull(payrollDigestUuid, "payrollDigestUuid"); - this.payrollDigestUuid = payrollDigestUuid; - return this; - } public GetV1PayrollDigestsPayrollDigestUuidRequestBuilder xGustoAPIVersion(GetV1PayrollDigestsPayrollDigestUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -53,14 +47,20 @@ public GetV1PayrollDigestsPayrollDigestUuidRequestBuilder xGustoAPIVersion(Optio return this; } + public GetV1PayrollDigestsPayrollDigestUuidRequestBuilder payrollDigestUuid(String payrollDigestUuid) { + Utils.checkNotNull(payrollDigestUuid, "payrollDigestUuid"); + this.payrollDigestUuid = payrollDigestUuid; + return this; + } + private GetV1PayrollDigestsPayrollDigestUuidRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1PayrollDigestsPayrollDigestUuidRequest request = new GetV1PayrollDigestsPayrollDigestUuidRequest(payrollDigestUuid, - xGustoAPIVersion); + GetV1PayrollDigestsPayrollDigestUuidRequest request = new GetV1PayrollDigestsPayrollDigestUuidRequest(xGustoAPIVersion, + payrollDigestUuid); return request; } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1PeopleBatchesPeopleBatchUuidRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1PeopleBatchesPeopleBatchUuidRequest.java index e25710f32..1f1a8b40d 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1PeopleBatchesPeopleBatchUuidRequest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1PeopleBatchesPeopleBatchUuidRequest.java @@ -16,12 +16,6 @@ public class GetV1PeopleBatchesPeopleBatchUuidRequest { - /** - * The UUID of the people batch - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=people_batch_uuid") - private String peopleBatchUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class GetV1PeopleBatchesPeopleBatchUuidRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the people batch + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=people_batch_uuid") + private String peopleBatchUuid; + @JsonCreator public GetV1PeopleBatchesPeopleBatchUuidRequest( - String peopleBatchUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(peopleBatchUuid, "peopleBatchUuid"); + Optional xGustoAPIVersion, + String peopleBatchUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.peopleBatchUuid = peopleBatchUuid; + Utils.checkNotNull(peopleBatchUuid, "peopleBatchUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.peopleBatchUuid = peopleBatchUuid; } public GetV1PeopleBatchesPeopleBatchUuidRequest( String peopleBatchUuid) { - this(peopleBatchUuid, Optional.empty()); - } - - /** - * The UUID of the people batch - */ - @JsonIgnore - public String peopleBatchUuid() { - return peopleBatchUuid; + this(Optional.empty(), peopleBatchUuid); } /** @@ -64,20 +56,19 @@ public Optional xGustoA return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the people batch */ - public GetV1PeopleBatchesPeopleBatchUuidRequest withPeopleBatchUuid(String peopleBatchUuid) { - Utils.checkNotNull(peopleBatchUuid, "peopleBatchUuid"); - this.peopleBatchUuid = peopleBatchUuid; - return this; + @JsonIgnore + public String peopleBatchUuid() { + return peopleBatchUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetV1PeopleBatchesPeopleBatchUuidRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String peopleBatchUuid; + private Builder() { // force use of static builder() method } - /** - * The UUID of the people batch - */ - public Builder peopleBatchUuid(String peopleBatchUuid) { - Utils.checkNotNull(peopleBatchUuid, "peopleBatchUuid"); - this.peopleBatchUuid = peopleBatchUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String peopleBatchUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1PeopleBatchesPeopleBatchUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1PeopleBatchesPeopleBatchUuidRequestBuilder peopleBatchUuid(String peopleBatchUuid) { - Utils.checkNotNull(peopleBatchUuid, "peopleBatchUuid"); - this.peopleBatchUuid = peopleBatchUuid; - return this; - } public GetV1PeopleBatchesPeopleBatchUuidRequestBuilder xGustoAPIVersion(GetV1PeopleBatchesPeopleBatchUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public GetV1PeopleBatchesPeopleBatchUuidRequestBuilder xGustoAPIVersion(Optional return this; } + public GetV1PeopleBatchesPeopleBatchUuidRequestBuilder peopleBatchUuid(String peopleBatchUuid) { + Utils.checkNotNull(peopleBatchUuid, "peopleBatchUuid"); + this.peopleBatchUuid = peopleBatchUuid; + return this; + } + private GetV1PeopleBatchesPeopleBatchUuidRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1PeopleBatchesPeopleBatchUuidRequest request = new GetV1PeopleBatchesPeopleBatchUuidRequest(peopleBatchUuid, - xGustoAPIVersion); + GetV1PeopleBatchesPeopleBatchUuidRequest request = new GetV1PeopleBatchesPeopleBatchUuidRequest(xGustoAPIVersion, + peopleBatchUuid); return request; } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1WebhookSubscriptionUuidRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1WebhookSubscriptionUuidRequest.java index 66a4470dc..4de388509 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1WebhookSubscriptionUuidRequest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1WebhookSubscriptionUuidRequest.java @@ -16,12 +16,6 @@ public class GetV1WebhookSubscriptionUuidRequest { - /** - * The webhook subscription UUID. - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=webhook_subscription_uuid") - private String webhookSubscriptionUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class GetV1WebhookSubscriptionUuidRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The webhook subscription UUID. + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=webhook_subscription_uuid") + private String webhookSubscriptionUuid; + @JsonCreator public GetV1WebhookSubscriptionUuidRequest( - String webhookSubscriptionUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); + Optional xGustoAPIVersion, + String webhookSubscriptionUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; + Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.webhookSubscriptionUuid = webhookSubscriptionUuid; } public GetV1WebhookSubscriptionUuidRequest( String webhookSubscriptionUuid) { - this(webhookSubscriptionUuid, Optional.empty()); - } - - /** - * The webhook subscription UUID. - */ - @JsonIgnore - public String webhookSubscriptionUuid() { - return webhookSubscriptionUuid; + this(Optional.empty(), webhookSubscriptionUuid); } /** @@ -64,20 +56,19 @@ public Optional xGustoAPIVer return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The webhook subscription UUID. */ - public GetV1WebhookSubscriptionUuidRequest withWebhookSubscriptionUuid(String webhookSubscriptionUuid) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; - return this; + @JsonIgnore + public String webhookSubscriptionUuid() { + return webhookSubscriptionUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetV1WebhookSubscriptionUuidRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String webhookSubscriptionUuid; + private Builder() { // force use of static builder() method } - /** - * The webhook subscription UUID. - */ - public Builder webhookSubscriptionUuid(String webhookSubscriptionUuid) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String webhookSubscriptionUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -34,12 +34,6 @@ public GetV1WebhookSubscriptionUuidRequestBuilder security(GetV1WebhookSubscript this.security = security; return this; } - - public GetV1WebhookSubscriptionUuidRequestBuilder webhookSubscriptionUuid(String webhookSubscriptionUuid) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; - return this; - } public GetV1WebhookSubscriptionUuidRequestBuilder xGustoAPIVersion(GetV1WebhookSubscriptionUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -53,14 +47,20 @@ public GetV1WebhookSubscriptionUuidRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion; + /** + * The webhook subscription UUID. + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=webhook_subscription_uuid") + private String webhookSubscriptionUuid; + @JsonCreator public GetV1WebhookSubscriptionVerificationTokenUuidRequest( - String webhookSubscriptionUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); + Optional xGustoAPIVersion, + String webhookSubscriptionUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; + Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.webhookSubscriptionUuid = webhookSubscriptionUuid; } public GetV1WebhookSubscriptionVerificationTokenUuidRequest( String webhookSubscriptionUuid) { - this(webhookSubscriptionUuid, Optional.empty()); - } - - /** - * The webhook subscription UUID. - */ - @JsonIgnore - public String webhookSubscriptionUuid() { - return webhookSubscriptionUuid; + this(Optional.empty(), webhookSubscriptionUuid); } /** @@ -64,20 +56,19 @@ public Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The webhook subscription UUID. */ - public GetV1WebhookSubscriptionVerificationTokenUuidRequest withWebhookSubscriptionUuid(String webhookSubscriptionUuid) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; - return this; + @JsonIgnore + public String webhookSubscriptionUuid() { + return webhookSubscriptionUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetV1WebhookSubscriptionVerificationTokenUuidRequest withXGustoAPIVersion return this; } + /** + * The webhook subscription UUID. + */ + public GetV1WebhookSubscriptionVerificationTokenUuidRequest withWebhookSubscriptionUuid(String webhookSubscriptionUuid) { + Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); + this.webhookSubscriptionUuid = webhookSubscriptionUuid; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -111,45 +111,35 @@ public boolean equals(java.lang.Object o) { } GetV1WebhookSubscriptionVerificationTokenUuidRequest other = (GetV1WebhookSubscriptionVerificationTokenUuidRequest) o; return - Utils.enhancedDeepEquals(this.webhookSubscriptionUuid, other.webhookSubscriptionUuid) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.webhookSubscriptionUuid, other.webhookSubscriptionUuid); } @Override public int hashCode() { return Utils.enhancedHash( - webhookSubscriptionUuid, xGustoAPIVersion); + xGustoAPIVersion, webhookSubscriptionUuid); } @Override public String toString() { return Utils.toString(GetV1WebhookSubscriptionVerificationTokenUuidRequest.class, - "webhookSubscriptionUuid", webhookSubscriptionUuid, - "xGustoAPIVersion", xGustoAPIVersion); + "xGustoAPIVersion", xGustoAPIVersion, + "webhookSubscriptionUuid", webhookSubscriptionUuid); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String webhookSubscriptionUuid; - private Optional xGustoAPIVersion; + private String webhookSubscriptionUuid; + private Builder() { // force use of static builder() method } - /** - * The webhook subscription UUID. - */ - public Builder webhookSubscriptionUuid(String webhookSubscriptionUuid) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String webhookSubscriptionUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -34,12 +34,6 @@ public GetV1WebhookSubscriptionVerificationTokenUuidRequestBuilder security(GetV this.security = security; return this; } - - public GetV1WebhookSubscriptionVerificationTokenUuidRequestBuilder webhookSubscriptionUuid(String webhookSubscriptionUuid) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; - return this; - } public GetV1WebhookSubscriptionVerificationTokenUuidRequestBuilder xGustoAPIVersion(GetV1WebhookSubscriptionVerificationTokenUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -53,14 +47,20 @@ public GetV1WebhookSubscriptionVerificationTokenUuidRequestBuilder xGustoAPIVers return this; } + public GetV1WebhookSubscriptionVerificationTokenUuidRequestBuilder webhookSubscriptionUuid(String webhookSubscriptionUuid) { + Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); + this.webhookSubscriptionUuid = webhookSubscriptionUuid; + return this; + } + private GetV1WebhookSubscriptionVerificationTokenUuidRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1WebhookSubscriptionVerificationTokenUuidRequest request = new GetV1WebhookSubscriptionVerificationTokenUuidRequest(webhookSubscriptionUuid, - xGustoAPIVersion); + GetV1WebhookSubscriptionVerificationTokenUuidRequest request = new GetV1WebhookSubscriptionVerificationTokenUuidRequest(xGustoAPIVersion, + webhookSubscriptionUuid); return request; } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1WorkAddressesWorkAddressUuidRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1WorkAddressesWorkAddressUuidRequest.java index 2d45aaa6e..a6fb03428 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1WorkAddressesWorkAddressUuidRequest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetV1WorkAddressesWorkAddressUuidRequest.java @@ -16,12 +16,6 @@ public class GetV1WorkAddressesWorkAddressUuidRequest { - /** - * The UUID of the work address - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=work_address_uuid") - private String workAddressUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class GetV1WorkAddressesWorkAddressUuidRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the work address + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=work_address_uuid") + private String workAddressUuid; + @JsonCreator public GetV1WorkAddressesWorkAddressUuidRequest( - String workAddressUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(workAddressUuid, "workAddressUuid"); + Optional xGustoAPIVersion, + String workAddressUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.workAddressUuid = workAddressUuid; + Utils.checkNotNull(workAddressUuid, "workAddressUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.workAddressUuid = workAddressUuid; } public GetV1WorkAddressesWorkAddressUuidRequest( String workAddressUuid) { - this(workAddressUuid, Optional.empty()); - } - - /** - * The UUID of the work address - */ - @JsonIgnore - public String workAddressUuid() { - return workAddressUuid; + this(Optional.empty(), workAddressUuid); } /** @@ -64,20 +56,19 @@ public Optional xGustoA return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the work address */ - public GetV1WorkAddressesWorkAddressUuidRequest withWorkAddressUuid(String workAddressUuid) { - Utils.checkNotNull(workAddressUuid, "workAddressUuid"); - this.workAddressUuid = workAddressUuid; - return this; + @JsonIgnore + public String workAddressUuid() { + return workAddressUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetV1WorkAddressesWorkAddressUuidRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String workAddressUuid; + private Builder() { // force use of static builder() method } - /** - * The UUID of the work address - */ - public Builder workAddressUuid(String workAddressUuid) { - Utils.checkNotNull(workAddressUuid, "workAddressUuid"); - this.workAddressUuid = workAddressUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String workAddressUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1WorkAddressesWorkAddressUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1WorkAddressesWorkAddressUuidRequestBuilder workAddressUuid(String workAddressUuid) { - Utils.checkNotNull(workAddressUuid, "workAddressUuid"); - this.workAddressUuid = workAddressUuid; - return this; - } public GetV1WorkAddressesWorkAddressUuidRequestBuilder xGustoAPIVersion(GetV1WorkAddressesWorkAddressUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public GetV1WorkAddressesWorkAddressUuidRequestBuilder xGustoAPIVersion(Optional return this; } + public GetV1WorkAddressesWorkAddressUuidRequestBuilder workAddressUuid(String workAddressUuid) { + Utils.checkNotNull(workAddressUuid, "workAddressUuid"); + this.workAddressUuid = workAddressUuid; + return this; + } + private GetV1WorkAddressesWorkAddressUuidRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1WorkAddressesWorkAddressUuidRequest request = new GetV1WorkAddressesWorkAddressUuidRequest(workAddressUuid, - xGustoAPIVersion); + GetV1WorkAddressesWorkAddressUuidRequest request = new GetV1WorkAddressesWorkAddressUuidRequest(xGustoAPIVersion, + workAddressUuid); return request; } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetWireInRequestsWireInRequestUuidRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetWireInRequestsWireInRequestUuidRequest.java index 1ab81433c..943283759 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetWireInRequestsWireInRequestUuidRequest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/GetWireInRequestsWireInRequestUuidRequest.java @@ -16,12 +16,6 @@ public class GetWireInRequestsWireInRequestUuidRequest { - /** - * The UUID of the Wire In Request - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=wire_in_request_uuid") - private String wireInRequestUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,27 +24,25 @@ public class GetWireInRequestsWireInRequestUuidRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the Wire In Request + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=wire_in_request_uuid") + private String wireInRequestUuid; + @JsonCreator public GetWireInRequestsWireInRequestUuidRequest( - String wireInRequestUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(wireInRequestUuid, "wireInRequestUuid"); + Optional xGustoAPIVersion, + String wireInRequestUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.wireInRequestUuid = wireInRequestUuid; + Utils.checkNotNull(wireInRequestUuid, "wireInRequestUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.wireInRequestUuid = wireInRequestUuid; } public GetWireInRequestsWireInRequestUuidRequest( String wireInRequestUuid) { - this(wireInRequestUuid, Optional.empty()); - } - - /** - * The UUID of the Wire In Request - */ - @JsonIgnore - public String wireInRequestUuid() { - return wireInRequestUuid; + this(Optional.empty(), wireInRequestUuid); } /** @@ -64,20 +56,19 @@ public Optional xGusto return (Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the Wire In Request */ - public GetWireInRequestsWireInRequestUuidRequest withWireInRequestUuid(String wireInRequestUuid) { - Utils.checkNotNull(wireInRequestUuid, "wireInRequestUuid"); - this.wireInRequestUuid = wireInRequestUuid; - return this; + @JsonIgnore + public String wireInRequestUuid() { + return wireInRequestUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public GetWireInRequestsWireInRequestUuidRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String wireInRequestUuid; + private Builder() { // force use of static builder() method } - /** - * The UUID of the Wire In Request - */ - public Builder wireInRequestUuid(String wireInRequestUuid) { - Utils.checkNotNull(wireInRequestUuid, "wireInRequestUuid"); - this.wireInRequestUuid = wireInRequestUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String wireInRequestUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetWireInRequestsWireInRequestUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetWireInRequestsWireInRequestUuidRequestBuilder wireInRequestUuid(String wireInRequestUuid) { - Utils.checkNotNull(wireInRequestUuid, "wireInRequestUuid"); - this.wireInRequestUuid = wireInRequestUuid; - return this; - } public GetWireInRequestsWireInRequestUuidRequestBuilder xGustoAPIVersion(GetWireInRequestsWireInRequestUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public GetWireInRequestsWireInRequestUuidRequestBuilder xGustoAPIVersion(Optiona return this; } + public GetWireInRequestsWireInRequestUuidRequestBuilder wireInRequestUuid(String wireInRequestUuid) { + Utils.checkNotNull(wireInRequestUuid, "wireInRequestUuid"); + this.wireInRequestUuid = wireInRequestUuid; + return this; + } + private GetWireInRequestsWireInRequestUuidRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetWireInRequestsWireInRequestUuidRequest request = new GetWireInRequestsWireInRequestUuidRequest(wireInRequestUuid, - xGustoAPIVersion); + GetWireInRequestsWireInRequestUuidRequest request = new GetWireInRequestsWireInRequestUuidRequest(xGustoAPIVersion, + wireInRequestUuid); return request; } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/LeavingFor.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/LeavingFor.java index 0097eff65..7eb72ad73 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/LeavingFor.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/LeavingFor.java @@ -34,6 +34,7 @@ public enum LeavingFor { NAMELY("namely"), ONPAY("onpay"), OTHER("other"), + OTHER_PEO("other_peo"), OYSTER("oyster"), PATRIOT("patriot"), PAYCHEX("paychex"), @@ -43,6 +44,7 @@ public enum LeavingFor { RIPPLING("rippling"), SQUARE("square"), SUREPAYROLL("surepayroll"), + TOAST("toast"), TRINET("trinet"), VELOCITY_GLOBAL("velocity_global"), ZENEFITS("zenefits"); diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.java index d0458c521..be783af76 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.java @@ -16,6 +16,14 @@ public class PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + /** * The UUID of the company */ @@ -28,41 +36,44 @@ public class PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest { @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=id") private String id; - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; - @SpeakeasyMetadata("request:mediaType=application/json") private Optional requestBody; @JsonCreator public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest( + Optional xGustoAPIVersion, String companyId, String id, - Optional xGustoAPIVersion, Optional requestBody) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(companyId, "companyId"); Utils.checkNotNull(id, "id"); - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(requestBody, "requestBody"); + this.xGustoAPIVersion = xGustoAPIVersion; this.companyId = companyId; this.id = id; - this.xGustoAPIVersion = xGustoAPIVersion; this.requestBody = requestBody; } public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest( String companyId, String id) { - this(companyId, id, Optional.empty(), + this(Optional.empty(), companyId, id, Optional.empty()); } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + /** * The UUID of the company */ @@ -79,17 +90,6 @@ public String id() { return id; } - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional xGustoAPIVersion() { - return (Optional) xGustoAPIVersion; - } - @SuppressWarnings("unchecked") @JsonIgnore public Optional requestBody() { @@ -101,24 +101,6 @@ public static Builder builder() { } - /** - * The UUID of the company - */ - public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest withCompanyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - - /** - * The UUID of the payroll - */ - public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest withId(String id) { - Utils.checkNotNull(id, "id"); - this.id = id; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -142,6 +124,24 @@ public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest withXGusto return this; } + /** + * The UUID of the company + */ + public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest withCompanyId(String companyId) { + Utils.checkNotNull(companyId, "companyId"); + this.companyId = companyId; + return this; + } + + /** + * The UUID of the payroll + */ + public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest withId(String id) { + Utils.checkNotNull(id, "id"); + this.id = id; + return this; + } + public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest withRequestBody(PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); this.requestBody = Optional.ofNullable(requestBody); @@ -165,37 +165,37 @@ public boolean equals(java.lang.Object o) { } PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest other = (PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest) o; return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.companyId, other.companyId) && Utils.enhancedDeepEquals(this.id, other.id) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.requestBody, other.requestBody); } @Override public int hashCode() { return Utils.enhancedHash( - companyId, id, xGustoAPIVersion, + xGustoAPIVersion, companyId, id, requestBody); } @Override public String toString() { return Utils.toString(PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, "companyId", companyId, "id", id, - "xGustoAPIVersion", xGustoAPIVersion, "requestBody", requestBody); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { + private Optional xGustoAPIVersion; + private String companyId; private String id; - private Optional xGustoAPIVersion; - private Optional requestBody = Optional.empty(); private Builder() { @@ -203,26 +203,6 @@ private Builder() { } - /** - * The UUID of the company - */ - public Builder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - - - /** - * The UUID of the payroll - */ - public Builder id(String id) { - Utils.checkNotNull(id, "id"); - this.id = id; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -246,6 +226,26 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String companyId; + private String id; private Optional requestBody = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -29,18 +29,6 @@ public class PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuild public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - - public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder id(String id) { - Utils.checkNotNull(id, "id"); - this.id = id; - return this; - } public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder xGustoAPIVersion(PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -53,6 +41,18 @@ public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder xGu this.xGustoAPIVersion = xGustoAPIVersion; return this; } + + public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder companyId(String companyId) { + Utils.checkNotNull(companyId, "companyId"); + this.companyId = companyId; + return this; + } + + public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder id(String id) { + Utils.checkNotNull(id, "id"); + this.id = id; + return this; + } public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder requestBody(PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); @@ -72,9 +72,9 @@ private PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest buildRequ xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest request = new PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest(companyId, + PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest request = new PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest(xGustoAPIVersion, + companyId, id, - xGustoAPIVersion, requestBody); return request; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsPaymentMethod.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsPaymentMethod.java index af8853074..7a9a4b915 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsPaymentMethod.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsPaymentMethod.java @@ -15,7 +15,9 @@ */ public enum PatchV1ContractorPaymentGroupsIdPartnerDisbursementsPaymentMethod { DIRECT_DEPOSIT("Direct Deposit"), - CHECK("Check"); + CHECK("Check"), + HISTORICAL_PAYMENT("Historical Payment"), + CORRECTION_PAYMENT("Correction Payment"); @JsonValue private final String value; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.java index 718ce548a..5ae5e1cc2 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.java @@ -16,12 +16,6 @@ public class PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest { - /** - * The UUID of the contractor payment group - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=id") - private String id; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,34 +24,32 @@ public class PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the contractor payment group + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=id") + private String id; + @SpeakeasyMetadata("request:mediaType=application/json") private Optional requestBody; @JsonCreator public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest( - String id, Optional xGustoAPIVersion, + String id, Optional requestBody) { - Utils.checkNotNull(id, "id"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(id, "id"); Utils.checkNotNull(requestBody, "requestBody"); - this.id = id; this.xGustoAPIVersion = xGustoAPIVersion; + this.id = id; this.requestBody = requestBody; } public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest( String id) { - this(id, Optional.empty(), Optional.empty()); - } - - /** - * The UUID of the contractor payment group - */ - @JsonIgnore - public String id() { - return id; + this(Optional.empty(), id, Optional.empty()); } /** @@ -71,6 +63,14 @@ public Optional) xGustoAPIVersion; } + /** + * The UUID of the contractor payment group + */ + @JsonIgnore + public String id() { + return id; + } + @SuppressWarnings("unchecked") @JsonIgnore public Optional requestBody() { @@ -82,15 +82,6 @@ public static Builder builder() { } - /** - * The UUID of the contractor payment group - */ - public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest withId(String id) { - Utils.checkNotNull(id, "id"); - this.id = id; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -114,6 +105,15 @@ public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest withXGustoAPI return this; } + /** + * The UUID of the contractor payment group + */ + public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest withId(String id) { + Utils.checkNotNull(id, "id"); + this.id = id; + return this; + } + public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest withRequestBody(PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); this.requestBody = Optional.ofNullable(requestBody); @@ -137,32 +137,32 @@ public boolean equals(java.lang.Object o) { } PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest other = (PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest) o; return - Utils.enhancedDeepEquals(this.id, other.id) && Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.id, other.id) && Utils.enhancedDeepEquals(this.requestBody, other.requestBody); } @Override public int hashCode() { return Utils.enhancedHash( - id, xGustoAPIVersion, requestBody); + xGustoAPIVersion, id, requestBody); } @Override public String toString() { return Utils.toString(PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest.class, - "id", id, "xGustoAPIVersion", xGustoAPIVersion, + "id", id, "requestBody", requestBody); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String id; - private Optional xGustoAPIVersion; + private String id; + private Optional requestBody = Optional.empty(); private Builder() { @@ -170,16 +170,6 @@ private Builder() { } - /** - * The UUID of the contractor payment group - */ - public Builder id(String id) { - Utils.checkNotNull(id, "id"); - this.id = id; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -203,6 +193,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String id; private Optional requestBody = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -28,12 +28,6 @@ public class PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder id(String id) { - Utils.checkNotNull(id, "id"); - this.id = id; - return this; - } public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder xGustoAPIVersion(PatchV1ContractorPaymentGroupsIdPartnerDisbursementsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,6 +40,12 @@ public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder xGusto this.xGustoAPIVersion = xGustoAPIVersion; return this; } + + public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder id(String id) { + Utils.checkNotNull(id, "id"); + this.id = id; + return this; + } public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder requestBody(PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); @@ -65,8 +65,8 @@ private PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest buildRequest xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest request = new PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest(id, - xGustoAPIVersion, + PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest request = new PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest(xGustoAPIVersion, + id, requestBody); return request; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.java index b77ba19d5..721db71ba 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.java @@ -18,6 +18,14 @@ public class PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + /** * The UUID of the employee */ @@ -30,31 +38,23 @@ public class PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYe @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=effective_year") private long effectiveYear; - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; - @SpeakeasyMetadata("request:mediaType=application/json") private EmployeeSection603HighEarnerStatusUpdateRequest employeeSection603HighEarnerStatusUpdateRequest; @JsonCreator public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest( + Optional xGustoAPIVersion, String employeeUuid, long effectiveYear, - Optional xGustoAPIVersion, EmployeeSection603HighEarnerStatusUpdateRequest employeeSection603HighEarnerStatusUpdateRequest) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(employeeUuid, "employeeUuid"); Utils.checkNotNull(effectiveYear, "effectiveYear"); - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(employeeSection603HighEarnerStatusUpdateRequest, "employeeSection603HighEarnerStatusUpdateRequest"); + this.xGustoAPIVersion = xGustoAPIVersion; this.employeeUuid = employeeUuid; this.effectiveYear = effectiveYear; - this.xGustoAPIVersion = xGustoAPIVersion; this.employeeSection603HighEarnerStatusUpdateRequest = employeeSection603HighEarnerStatusUpdateRequest; } @@ -62,10 +62,21 @@ public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequ String employeeUuid, long effectiveYear, EmployeeSection603HighEarnerStatusUpdateRequest employeeSection603HighEarnerStatusUpdateRequest) { - this(employeeUuid, effectiveYear, Optional.empty(), + this(Optional.empty(), employeeUuid, effectiveYear, employeeSection603HighEarnerStatusUpdateRequest); } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + /** * The UUID of the employee */ @@ -82,17 +93,6 @@ public long effectiveYear() { return effectiveYear; } - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional xGustoAPIVersion() { - return (Optional) xGustoAPIVersion; - } - @JsonIgnore public EmployeeSection603HighEarnerStatusUpdateRequest employeeSection603HighEarnerStatusUpdateRequest() { return employeeSection603HighEarnerStatusUpdateRequest; @@ -103,24 +103,6 @@ public static Builder builder() { } - /** - * The UUID of the employee - */ - public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest withEmployeeUuid(String employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = employeeUuid; - return this; - } - - /** - * The effective year for the Section 603 status - */ - public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest withEffectiveYear(long effectiveYear) { - Utils.checkNotNull(effectiveYear, "effectiveYear"); - this.effectiveYear = effectiveYear; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -144,6 +126,24 @@ public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequ return this; } + /** + * The UUID of the employee + */ + public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest withEmployeeUuid(String employeeUuid) { + Utils.checkNotNull(employeeUuid, "employeeUuid"); + this.employeeUuid = employeeUuid; + return this; + } + + /** + * The effective year for the Section 603 status + */ + public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest withEffectiveYear(long effectiveYear) { + Utils.checkNotNull(effectiveYear, "effectiveYear"); + this.effectiveYear = effectiveYear; + return this; + } + public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest withEmployeeSection603HighEarnerStatusUpdateRequest(EmployeeSection603HighEarnerStatusUpdateRequest employeeSection603HighEarnerStatusUpdateRequest) { Utils.checkNotNull(employeeSection603HighEarnerStatusUpdateRequest, "employeeSection603HighEarnerStatusUpdateRequest"); this.employeeSection603HighEarnerStatusUpdateRequest = employeeSection603HighEarnerStatusUpdateRequest; @@ -160,37 +160,37 @@ public boolean equals(java.lang.Object o) { } PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest other = (PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest) o; return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.employeeUuid, other.employeeUuid) && Utils.enhancedDeepEquals(this.effectiveYear, other.effectiveYear) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.employeeSection603HighEarnerStatusUpdateRequest, other.employeeSection603HighEarnerStatusUpdateRequest); } @Override public int hashCode() { return Utils.enhancedHash( - employeeUuid, effectiveYear, xGustoAPIVersion, + xGustoAPIVersion, employeeUuid, effectiveYear, employeeSection603HighEarnerStatusUpdateRequest); } @Override public String toString() { return Utils.toString(PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, "employeeUuid", employeeUuid, "effectiveYear", effectiveYear, - "xGustoAPIVersion", xGustoAPIVersion, "employeeSection603HighEarnerStatusUpdateRequest", employeeSection603HighEarnerStatusUpdateRequest); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { + private Optional xGustoAPIVersion; + private String employeeUuid; private Long effectiveYear; - private Optional xGustoAPIVersion; - private EmployeeSection603HighEarnerStatusUpdateRequest employeeSection603HighEarnerStatusUpdateRequest; private Builder() { @@ -198,26 +198,6 @@ private Builder() { } - /** - * The UUID of the employee - */ - public Builder employeeUuid(String employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = employeeUuid; - return this; - } - - - /** - * The effective year for the Section 603 status - */ - public Builder effectiveYear(long effectiveYear) { - Utils.checkNotNull(effectiveYear, "effectiveYear"); - this.effectiveYear = effectiveYear; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -241,6 +221,26 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String employeeUuid; + private Long effectiveYear; private EmployeeSection603HighEarnerStatusUpdateRequest employeeSection603HighEarnerStatusUpdateRequest; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -31,18 +31,6 @@ public class PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYe public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder employeeUuid(String employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = employeeUuid; - return this; - } - - public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder effectiveYear(long effectiveYear) { - Utils.checkNotNull(effectiveYear, "effectiveYear"); - this.effectiveYear = effectiveYear; - return this; - } public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder xGustoAPIVersion(PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -56,6 +44,18 @@ public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequ return this; } + public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder employeeUuid(String employeeUuid) { + Utils.checkNotNull(employeeUuid, "employeeUuid"); + this.employeeUuid = employeeUuid; + return this; + } + + public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder effectiveYear(long effectiveYear) { + Utils.checkNotNull(effectiveYear, "effectiveYear"); + this.effectiveYear = effectiveYear; + return this; + } + public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder employeeSection603HighEarnerStatusUpdateRequest(EmployeeSection603HighEarnerStatusUpdateRequest employeeSection603HighEarnerStatusUpdateRequest) { Utils.checkNotNull(employeeSection603HighEarnerStatusUpdateRequest, "employeeSection603HighEarnerStatusUpdateRequest"); this.employeeSection603HighEarnerStatusUpdateRequest = employeeSection603HighEarnerStatusUpdateRequest; @@ -68,9 +68,9 @@ private PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearReq xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest request = new PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest(employeeUuid, + PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest request = new PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest(xGustoAPIVersion, + employeeUuid, effectiveYear, - xGustoAPIVersion, employeeSection603HighEarnerStatusUpdateRequest); return request; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostDepartmentsRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostDepartmentsRequest.java index c3b8c2aa2..4d4b0ae6f 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostDepartmentsRequest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostDepartmentsRequest.java @@ -17,12 +17,6 @@ public class PostDepartmentsRequest { - /** - * The UUID of the company - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") - private String companyUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -31,35 +25,33 @@ public class PostDepartmentsRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") + private String companyUuid; + @SpeakeasyMetadata("request:mediaType=application/json") private DepartmentCreateRequestBody departmentCreateRequestBody; @JsonCreator public PostDepartmentsRequest( - String companyUuid, Optional xGustoAPIVersion, + String companyUuid, DepartmentCreateRequestBody departmentCreateRequestBody) { - Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(departmentCreateRequestBody, "departmentCreateRequestBody"); - this.companyUuid = companyUuid; this.xGustoAPIVersion = xGustoAPIVersion; + this.companyUuid = companyUuid; this.departmentCreateRequestBody = departmentCreateRequestBody; } public PostDepartmentsRequest( String companyUuid, DepartmentCreateRequestBody departmentCreateRequestBody) { - this(companyUuid, Optional.empty(), departmentCreateRequestBody); - } - - /** - * The UUID of the company - */ - @JsonIgnore - public String companyUuid() { - return companyUuid; + this(Optional.empty(), companyUuid, departmentCreateRequestBody); } /** @@ -73,6 +65,14 @@ public Optional xGustoAPIVersion() { return (Optional) xGustoAPIVersion; } + /** + * The UUID of the company + */ + @JsonIgnore + public String companyUuid() { + return companyUuid; + } + @JsonIgnore public DepartmentCreateRequestBody departmentCreateRequestBody() { return departmentCreateRequestBody; @@ -83,15 +83,6 @@ public static Builder builder() { } - /** - * The UUID of the company - */ - public PostDepartmentsRequest withCompanyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -115,6 +106,15 @@ public PostDepartmentsRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String companyUuid; + private DepartmentCreateRequestBody departmentCreateRequestBody; private Builder() { @@ -164,16 +164,6 @@ private Builder() { } - /** - * The UUID of the company - */ - public Builder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -197,6 +187,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String companyUuid; private DepartmentCreateRequestBody departmentCreateRequestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -29,12 +29,6 @@ public class PostDepartmentsRequestBuilder { public PostDepartmentsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostDepartmentsRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public PostDepartmentsRequestBuilder xGustoAPIVersion(PostDepartmentsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -48,6 +42,12 @@ public PostDepartmentsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion; + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") + private String companyUuid; + @SpeakeasyMetadata("request:mediaType=application/json") private PartnerManagedCompanyAcceptTermsOfServiceRequest partnerManagedCompanyAcceptTermsOfServiceRequest; @JsonCreator public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest( - String companyUuid, Optional xGustoAPIVersion, + String companyUuid, PartnerManagedCompanyAcceptTermsOfServiceRequest partnerManagedCompanyAcceptTermsOfServiceRequest) { - Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(partnerManagedCompanyAcceptTermsOfServiceRequest, "partnerManagedCompanyAcceptTermsOfServiceRequest"); - this.companyUuid = companyUuid; this.xGustoAPIVersion = xGustoAPIVersion; + this.companyUuid = companyUuid; this.partnerManagedCompanyAcceptTermsOfServiceRequest = partnerManagedCompanyAcceptTermsOfServiceRequest; } public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest( String companyUuid, PartnerManagedCompanyAcceptTermsOfServiceRequest partnerManagedCompanyAcceptTermsOfServiceRequest) { - this(companyUuid, Optional.empty(), partnerManagedCompanyAcceptTermsOfServiceRequest); - } - - /** - * The UUID of the company - */ - @JsonIgnore - public String companyUuid() { - return companyUuid; + this(Optional.empty(), companyUuid, partnerManagedCompanyAcceptTermsOfServiceRequest); } /** @@ -73,6 +65,14 @@ public Optional) xGustoAPIVersion; } + /** + * The UUID of the company + */ + @JsonIgnore + public String companyUuid() { + return companyUuid; + } + @JsonIgnore public PartnerManagedCompanyAcceptTermsOfServiceRequest partnerManagedCompanyAcceptTermsOfServiceRequest() { return partnerManagedCompanyAcceptTermsOfServiceRequest; @@ -83,15 +83,6 @@ public static Builder builder() { } - /** - * The UUID of the company - */ - public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest withCompanyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -115,6 +106,15 @@ public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest withXGu return this; } + /** + * The UUID of the company + */ + public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest withPartnerManagedCompanyAcceptTermsOfServiceRequest(PartnerManagedCompanyAcceptTermsOfServiceRequest partnerManagedCompanyAcceptTermsOfServiceRequest) { Utils.checkNotNull(partnerManagedCompanyAcceptTermsOfServiceRequest, "partnerManagedCompanyAcceptTermsOfServiceRequest"); this.partnerManagedCompanyAcceptTermsOfServiceRequest = partnerManagedCompanyAcceptTermsOfServiceRequest; @@ -131,32 +131,32 @@ public boolean equals(java.lang.Object o) { } PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest other = (PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest) o; return - Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && Utils.enhancedDeepEquals(this.partnerManagedCompanyAcceptTermsOfServiceRequest, other.partnerManagedCompanyAcceptTermsOfServiceRequest); } @Override public int hashCode() { return Utils.enhancedHash( - companyUuid, xGustoAPIVersion, partnerManagedCompanyAcceptTermsOfServiceRequest); + xGustoAPIVersion, companyUuid, partnerManagedCompanyAcceptTermsOfServiceRequest); } @Override public String toString() { return Utils.toString(PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest.class, - "companyUuid", companyUuid, "xGustoAPIVersion", xGustoAPIVersion, + "companyUuid", companyUuid, "partnerManagedCompanyAcceptTermsOfServiceRequest", partnerManagedCompanyAcceptTermsOfServiceRequest); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String companyUuid; - private Optional xGustoAPIVersion; + private String companyUuid; + private PartnerManagedCompanyAcceptTermsOfServiceRequest partnerManagedCompanyAcceptTermsOfServiceRequest; private Builder() { @@ -164,16 +164,6 @@ private Builder() { } - /** - * The UUID of the company - */ - public Builder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -197,6 +187,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String companyUuid; private PartnerManagedCompanyAcceptTermsOfServiceRequest partnerManagedCompanyAcceptTermsOfServiceRequest; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -29,12 +29,6 @@ public class PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBu public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBuilder xGustoAPIVersion(PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -48,6 +42,12 @@ public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBuilder return this; } + public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBuilder partnerManagedCompanyAcceptTermsOfServiceRequest(PartnerManagedCompanyAcceptTermsOfServiceRequest partnerManagedCompanyAcceptTermsOfServiceRequest) { Utils.checkNotNull(partnerManagedCompanyAcceptTermsOfServiceRequest, "partnerManagedCompanyAcceptTermsOfServiceRequest"); this.partnerManagedCompanyAcceptTermsOfServiceRequest = partnerManagedCompanyAcceptTermsOfServiceRequest; @@ -60,8 +60,8 @@ private PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest buildR xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest request = new PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest(companyUuid, - xGustoAPIVersion, + PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest request = new PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest(xGustoAPIVersion, + companyUuid, partnerManagedCompanyAcceptTermsOfServiceRequest); return request; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest.java index 16fd9b46e..e3ddc7c01 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest.java @@ -17,12 +17,6 @@ public class PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest { - /** - * The UUID of the company - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") - private String companyUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -31,35 +25,33 @@ public class PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") + private String companyUuid; + @SpeakeasyMetadata("request:mediaType=application/json") private PartnerManagedCompanyRetrieveTermsOfServiceRequest partnerManagedCompanyRetrieveTermsOfServiceRequest; @JsonCreator public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest( - String companyUuid, Optional xGustoAPIVersion, + String companyUuid, PartnerManagedCompanyRetrieveTermsOfServiceRequest partnerManagedCompanyRetrieveTermsOfServiceRequest) { - Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(partnerManagedCompanyRetrieveTermsOfServiceRequest, "partnerManagedCompanyRetrieveTermsOfServiceRequest"); - this.companyUuid = companyUuid; this.xGustoAPIVersion = xGustoAPIVersion; + this.companyUuid = companyUuid; this.partnerManagedCompanyRetrieveTermsOfServiceRequest = partnerManagedCompanyRetrieveTermsOfServiceRequest; } public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest( String companyUuid, PartnerManagedCompanyRetrieveTermsOfServiceRequest partnerManagedCompanyRetrieveTermsOfServiceRequest) { - this(companyUuid, Optional.empty(), partnerManagedCompanyRetrieveTermsOfServiceRequest); - } - - /** - * The UUID of the company - */ - @JsonIgnore - public String companyUuid() { - return companyUuid; + this(Optional.empty(), companyUuid, partnerManagedCompanyRetrieveTermsOfServiceRequest); } /** @@ -73,6 +65,14 @@ public Optional) xGustoAPIVersion; } + /** + * The UUID of the company + */ + @JsonIgnore + public String companyUuid() { + return companyUuid; + } + @JsonIgnore public PartnerManagedCompanyRetrieveTermsOfServiceRequest partnerManagedCompanyRetrieveTermsOfServiceRequest() { return partnerManagedCompanyRetrieveTermsOfServiceRequest; @@ -83,15 +83,6 @@ public static Builder builder() { } - /** - * The UUID of the company - */ - public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest withCompanyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -115,6 +106,15 @@ public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest withX return this; } + /** + * The UUID of the company + */ + public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest withPartnerManagedCompanyRetrieveTermsOfServiceRequest(PartnerManagedCompanyRetrieveTermsOfServiceRequest partnerManagedCompanyRetrieveTermsOfServiceRequest) { Utils.checkNotNull(partnerManagedCompanyRetrieveTermsOfServiceRequest, "partnerManagedCompanyRetrieveTermsOfServiceRequest"); this.partnerManagedCompanyRetrieveTermsOfServiceRequest = partnerManagedCompanyRetrieveTermsOfServiceRequest; @@ -131,32 +131,32 @@ public boolean equals(java.lang.Object o) { } PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest other = (PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest) o; return - Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && Utils.enhancedDeepEquals(this.partnerManagedCompanyRetrieveTermsOfServiceRequest, other.partnerManagedCompanyRetrieveTermsOfServiceRequest); } @Override public int hashCode() { return Utils.enhancedHash( - companyUuid, xGustoAPIVersion, partnerManagedCompanyRetrieveTermsOfServiceRequest); + xGustoAPIVersion, companyUuid, partnerManagedCompanyRetrieveTermsOfServiceRequest); } @Override public String toString() { return Utils.toString(PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest.class, - "companyUuid", companyUuid, "xGustoAPIVersion", xGustoAPIVersion, + "companyUuid", companyUuid, "partnerManagedCompanyRetrieveTermsOfServiceRequest", partnerManagedCompanyRetrieveTermsOfServiceRequest); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String companyUuid; - private Optional xGustoAPIVersion; + private String companyUuid; + private PartnerManagedCompanyRetrieveTermsOfServiceRequest partnerManagedCompanyRetrieveTermsOfServiceRequest; private Builder() { @@ -164,16 +164,6 @@ private Builder() { } - /** - * The UUID of the company - */ - public Builder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -197,6 +187,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String companyUuid; private PartnerManagedCompanyRetrieveTermsOfServiceRequest partnerManagedCompanyRetrieveTermsOfServiceRequest; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -29,12 +29,6 @@ public class PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder xGustoAPIVersion(PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -48,6 +42,12 @@ public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilde return this; } + public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder partnerManagedCompanyRetrieveTermsOfServiceRequest(PartnerManagedCompanyRetrieveTermsOfServiceRequest partnerManagedCompanyRetrieveTermsOfServiceRequest) { Utils.checkNotNull(partnerManagedCompanyRetrieveTermsOfServiceRequest, "partnerManagedCompanyRetrieveTermsOfServiceRequest"); this.partnerManagedCompanyRetrieveTermsOfServiceRequest = partnerManagedCompanyRetrieveTermsOfServiceRequest; @@ -60,8 +60,8 @@ private PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest buil xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest request = new PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest(companyUuid, - xGustoAPIVersion, + PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest request = new PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest(xGustoAPIVersion, + companyUuid, partnerManagedCompanyRetrieveTermsOfServiceRequest); return request; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1BulkReportsHeaderXGustoAPIVersion.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1BulkReportsHeaderXGustoAPIVersion.java new file mode 100644 index 000000000..b37e3404d --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1BulkReportsHeaderXGustoAPIVersion.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PostV1BulkReportsHeaderXGustoAPIVersion + * + *

    Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ +public enum PostV1BulkReportsHeaderXGustoAPIVersion { + TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15("2026-06-15"); + + @JsonValue + private final String value; + + PostV1BulkReportsHeaderXGustoAPIVersion(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PostV1BulkReportsHeaderXGustoAPIVersion o: PostV1BulkReportsHeaderXGustoAPIVersion.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1BulkReportsRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1BulkReportsRequest.java new file mode 100644 index 000000000..e016709f3 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1BulkReportsRequest.java @@ -0,0 +1,181 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2026_06_15.models.components.BulkReportBody; +import com.gusto.embedded_api_v_2026_06_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2026_06_15.utils.SpeakeasyMetadata; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class PostV1BulkReportsRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + + + @SpeakeasyMetadata("request:mediaType=application/json") + private BulkReportBody bulkReportBody; + + @JsonCreator + public PostV1BulkReportsRequest( + Optional xGustoAPIVersion, + BulkReportBody bulkReportBody) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(bulkReportBody, "bulkReportBody"); + this.xGustoAPIVersion = xGustoAPIVersion; + this.bulkReportBody = bulkReportBody; + } + + public PostV1BulkReportsRequest( + BulkReportBody bulkReportBody) { + this(Optional.empty(), bulkReportBody); + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + + @JsonIgnore + public BulkReportBody bulkReportBody() { + return bulkReportBody; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public PostV1BulkReportsRequest withXGustoAPIVersion(PostV1BulkReportsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public PostV1BulkReportsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public PostV1BulkReportsRequest withBulkReportBody(BulkReportBody bulkReportBody) { + Utils.checkNotNull(bulkReportBody, "bulkReportBody"); + this.bulkReportBody = bulkReportBody; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PostV1BulkReportsRequest other = (PostV1BulkReportsRequest) o; + return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.bulkReportBody, other.bulkReportBody); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + xGustoAPIVersion, bulkReportBody); + } + + @Override + public String toString() { + return Utils.toString(PostV1BulkReportsRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, + "bulkReportBody", bulkReportBody); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional xGustoAPIVersion; + + private BulkReportBody bulkReportBody; + + private Builder() { + // force use of static builder() method + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(PostV1BulkReportsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + + public Builder bulkReportBody(BulkReportBody bulkReportBody) { + Utils.checkNotNull(bulkReportBody, "bulkReportBody"); + this.bulkReportBody = bulkReportBody; + return this; + } + + public PostV1BulkReportsRequest build() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + return new PostV1BulkReportsRequest( + xGustoAPIVersion, bulkReportBody); + } + + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "X-Gusto-API-Version", + "\"2026-06-15\"", + new TypeReference>() {}); + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1BulkReportsRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1BulkReportsRequestBuilder.java new file mode 100644 index 000000000..23eaceac1 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1BulkReportsRequestBuilder.java @@ -0,0 +1,82 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import static com.gusto.embedded_api_v_2026_06_15.operations.Operations.RequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2026_06_15.SDKConfiguration; +import com.gusto.embedded_api_v_2026_06_15.models.components.BulkReportBody; +import com.gusto.embedded_api_v_2026_06_15.operations.PostV1BulkReports; +import com.gusto.embedded_api_v_2026_06_15.utils.Headers; +import com.gusto.embedded_api_v_2026_06_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.util.Optional; + +public class PostV1BulkReportsRequestBuilder { + + private PostV1BulkReportsSecurity security; + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2026-06-15\"", + new TypeReference>() {}); + private BulkReportBody bulkReportBody; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public PostV1BulkReportsRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public PostV1BulkReportsRequestBuilder security(PostV1BulkReportsSecurity security) { + Utils.checkNotNull(security, "security"); + this.security = security; + return this; + } + + public PostV1BulkReportsRequestBuilder xGustoAPIVersion(PostV1BulkReportsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public PostV1BulkReportsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public PostV1BulkReportsRequestBuilder bulkReportBody(BulkReportBody bulkReportBody) { + Utils.checkNotNull(bulkReportBody, "bulkReportBody"); + this.bulkReportBody = bulkReportBody; + return this; + } + + + private PostV1BulkReportsRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + PostV1BulkReportsRequest request = new PostV1BulkReportsRequest(xGustoAPIVersion, + bulkReportBody); + + return request; + } + + public PostV1BulkReportsResponse call() { + + RequestOperation operation + = new PostV1BulkReports.Sync(sdkConfiguration, security, _headers); + PostV1BulkReportsRequest request = buildRequest(); + + return operation.handleResponse(operation.doRequest(request)); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2026-06-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1BulkReportsResponse.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1BulkReportsResponse.java new file mode 100644 index 000000000..9f24450fe --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1BulkReportsResponse.java @@ -0,0 +1,253 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2026_06_15.models.components.CreateBulkReport; +import com.gusto.embedded_api_v_2026_06_15.utils.Response; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.io.InputStream; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.Optional; + + +public class PostV1BulkReportsResponse implements Response { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * Created + */ + private Optional createBulkReport; + + @JsonCreator + public PostV1BulkReportsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional createBulkReport) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(createBulkReport, "createBulkReport"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.createBulkReport = createBulkReport; + } + + public PostV1BulkReportsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * Created + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional createBulkReport() { + return (Optional) createBulkReport; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public PostV1BulkReportsResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public PostV1BulkReportsResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public PostV1BulkReportsResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * Created + */ + public PostV1BulkReportsResponse withCreateBulkReport(CreateBulkReport createBulkReport) { + Utils.checkNotNull(createBulkReport, "createBulkReport"); + this.createBulkReport = Optional.ofNullable(createBulkReport); + return this; + } + + + /** + * Created + */ + public PostV1BulkReportsResponse withCreateBulkReport(Optional createBulkReport) { + Utils.checkNotNull(createBulkReport, "createBulkReport"); + this.createBulkReport = createBulkReport; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PostV1BulkReportsResponse other = (PostV1BulkReportsResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.createBulkReport, other.createBulkReport); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + createBulkReport); + } + + @Override + public String toString() { + return Utils.toString(PostV1BulkReportsResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "createBulkReport", createBulkReport); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional createBulkReport = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * Created + */ + public Builder createBulkReport(CreateBulkReport createBulkReport) { + Utils.checkNotNull(createBulkReport, "createBulkReport"); + this.createBulkReport = Optional.ofNullable(createBulkReport); + return this; + } + + /** + * Created + */ + public Builder createBulkReport(Optional createBulkReport) { + Utils.checkNotNull(createBulkReport, "createBulkReport"); + this.createBulkReport = createBulkReport; + return this; + } + + public PostV1BulkReportsResponse build() { + + return new PostV1BulkReportsResponse( + contentType, statusCode, rawResponse, + createBulkReport); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1BulkReportsSecurity.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1BulkReportsSecurity.java new file mode 100644 index 000000000..0d96c83e2 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1BulkReportsSecurity.java @@ -0,0 +1,91 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2026_06_15.utils.HasSecurity; +import com.gusto.embedded_api_v_2026_06_15.utils.SpeakeasyMetadata; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Override; +import java.lang.String; + + +public class PostV1BulkReportsSecurity implements HasSecurity { + + @SpeakeasyMetadata("security:scheme=true,type=http,subtype=bearer,name=Authorization") + private String systemAccessAuth; + + @JsonCreator + public PostV1BulkReportsSecurity( + String systemAccessAuth) { + Utils.checkNotNull(systemAccessAuth, "systemAccessAuth"); + this.systemAccessAuth = systemAccessAuth; + } + + @JsonIgnore + public String systemAccessAuth() { + return systemAccessAuth; + } + + public static Builder builder() { + return new Builder(); + } + + + public PostV1BulkReportsSecurity withSystemAccessAuth(String systemAccessAuth) { + Utils.checkNotNull(systemAccessAuth, "systemAccessAuth"); + this.systemAccessAuth = systemAccessAuth; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PostV1BulkReportsSecurity other = (PostV1BulkReportsSecurity) o; + return + Utils.enhancedDeepEquals(this.systemAccessAuth, other.systemAccessAuth); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + systemAccessAuth); + } + + @Override + public String toString() { + return Utils.toString(PostV1BulkReportsSecurity.class, + "systemAccessAuth", systemAccessAuth); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String systemAccessAuth; + + private Builder() { + // force use of static builder() method + } + + + public Builder systemAccessAuth(String systemAccessAuth) { + Utils.checkNotNull(systemAccessAuth, "systemAccessAuth"); + this.systemAccessAuth = systemAccessAuth; + return this; + } + + public PostV1BulkReportsSecurity build() { + + return new PostV1BulkReportsSecurity( + systemAccessAuth); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1CompaniesCompanyIdPayrollsRequestBody.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1CompaniesCompanyIdPayrollsRequestBody.java index dd145b41e..fba19aaa8 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1CompaniesCompanyIdPayrollsRequestBody.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1CompaniesCompanyIdPayrollsRequestBody.java @@ -16,7 +16,6 @@ import java.time.LocalDate; import java.util.List; import java.util.Optional; -import org.openapitools.jackson.nullable.JsonNullable; public class PostV1CompaniesCompanyIdPayrollsRequestBody { @@ -53,11 +52,12 @@ public class PostV1CompaniesCompanyIdPayrollsRequestBody { private Optional payScheduleUuid; /** - * A list of employee uuids to include on the payroll. + * A list of employee UUIDs to include on the payroll. At least one UUID is required for + * non-termination off-cycle payrolls. */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("employee_uuids") - private JsonNullable> employeeUuids; + private Optional> employeeUuids; /** * Payment date. @@ -105,7 +105,7 @@ public PostV1CompaniesCompanyIdPayrollsRequestBody( @JsonProperty("start_date") LocalDate startDate, @JsonProperty("end_date") LocalDate endDate, @JsonProperty("pay_schedule_uuid") Optional payScheduleUuid, - @JsonProperty("employee_uuids") JsonNullable> employeeUuids, + @JsonProperty("employee_uuids") Optional> employeeUuids, @JsonProperty("check_date") Optional checkDate, @JsonProperty("withholding_pay_period") Optional withholdingPayPeriod, @JsonProperty("skip_regular_deductions") Optional skipRegularDeductions, @@ -141,7 +141,7 @@ public PostV1CompaniesCompanyIdPayrollsRequestBody( LocalDate startDate, LocalDate endDate) { this(offCycle, offCycleReason, startDate, - endDate, Optional.empty(), JsonNullable.undefined(), + endDate, Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty(), Optional.empty()); } @@ -188,12 +188,13 @@ public Optional payScheduleUuid() { } /** - * A list of employee uuids to include on the payroll. + * A list of employee UUIDs to include on the payroll. At least one UUID is required for + * non-termination off-cycle payrolls. */ @SuppressWarnings("unchecked") @JsonIgnore - public JsonNullable> employeeUuids() { - return (JsonNullable>) employeeUuids; + public Optional> employeeUuids() { + return (Optional>) employeeUuids; } /** @@ -304,18 +305,21 @@ public PostV1CompaniesCompanyIdPayrollsRequestBody withPayScheduleUuid(Optional< } /** - * A list of employee uuids to include on the payroll. + * A list of employee UUIDs to include on the payroll. At least one UUID is required for + * non-termination off-cycle payrolls. */ public PostV1CompaniesCompanyIdPayrollsRequestBody withEmployeeUuids(List employeeUuids) { Utils.checkNotNull(employeeUuids, "employeeUuids"); - this.employeeUuids = JsonNullable.of(employeeUuids); + this.employeeUuids = Optional.ofNullable(employeeUuids); return this; } + /** - * A list of employee uuids to include on the payroll. + * A list of employee UUIDs to include on the payroll. At least one UUID is required for + * non-termination off-cycle payrolls. */ - public PostV1CompaniesCompanyIdPayrollsRequestBody withEmployeeUuids(JsonNullable> employeeUuids) { + public PostV1CompaniesCompanyIdPayrollsRequestBody withEmployeeUuids(Optional> employeeUuids) { Utils.checkNotNull(employeeUuids, "employeeUuids"); this.employeeUuids = employeeUuids; return this; @@ -485,7 +489,7 @@ public final static class Builder { private Optional payScheduleUuid = Optional.empty(); - private JsonNullable> employeeUuids = JsonNullable.undefined(); + private Optional> employeeUuids = Optional.empty(); private Optional checkDate = Optional.empty(); @@ -564,18 +568,20 @@ public Builder payScheduleUuid(Optional payScheduleUuid) { /** - * A list of employee uuids to include on the payroll. + * A list of employee UUIDs to include on the payroll. At least one UUID is required for + * non-termination off-cycle payrolls. */ public Builder employeeUuids(List employeeUuids) { Utils.checkNotNull(employeeUuids, "employeeUuids"); - this.employeeUuids = JsonNullable.of(employeeUuids); + this.employeeUuids = Optional.ofNullable(employeeUuids); return this; } /** - * A list of employee uuids to include on the payroll. + * A list of employee UUIDs to include on the payroll. At least one UUID is required for + * non-termination off-cycle payrolls. */ - public Builder employeeUuids(JsonNullable> employeeUuids) { + public Builder employeeUuids(Optional> employeeUuids) { Utils.checkNotNull(employeeUuids, "employeeUuids"); this.employeeUuids = employeeUuids; return this; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1CompaniesCompanyIdPeopleBatchesBatch.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1CompaniesCompanyIdPeopleBatchesBatch.java new file mode 100644 index 000000000..b2911fb54 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1CompaniesCompanyIdPeopleBatchesBatch.java @@ -0,0 +1,543 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonInclude.Include; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.List; +import java.util.Optional; + + +public class PostV1CompaniesCompanyIdPeopleBatchesBatch { + /** + * The type of entity to create + */ + @JsonProperty("entity_type") + private PostV1CompaniesCompanyIdPeopleBatchesEntityType entityType; + + + @JsonProperty("person") + private Person person; + + /** + * Home address for the employee + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("home_address") + private Optional homeAddress; + + /** + * Specify the company work location for the employee + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("work_address") + private Optional workAddress; + + /** + * Job details for the employee (required if compensation is provided) + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("job") + private Optional job; + + /** + * Department details for the employee + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("department") + private Optional department; + + /** + * Compensation details for the employee (requires job to be provided) + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("compensation") + private Optional compensation; + + /** + * Creates employee bank account(s) and payment method(s) for direct deposit. Payments can be split + * across accounts by Percentage or by Amount. If splitting payments by `Percentage`, all splits must + * have a `split_amount` and the percentages must add up to `100`. + * If splitting payments by `Amount`, the priority is set based on the order of the bank accounts in + * the array and the last bank account is the remainder account (should have `split_amount` set to + * `null`). + */ + @JsonInclude(Include.NON_ABSENT) + @JsonProperty("bank_accounts") + private Optional> bankAccounts; + + @JsonCreator + public PostV1CompaniesCompanyIdPeopleBatchesBatch( + @JsonProperty("entity_type") PostV1CompaniesCompanyIdPeopleBatchesEntityType entityType, + @JsonProperty("person") Person person, + @JsonProperty("home_address") Optional homeAddress, + @JsonProperty("work_address") Optional workAddress, + @JsonProperty("job") Optional job, + @JsonProperty("department") Optional department, + @JsonProperty("compensation") Optional compensation, + @JsonProperty("bank_accounts") Optional> bankAccounts) { + Utils.checkNotNull(entityType, "entityType"); + Utils.checkNotNull(person, "person"); + Utils.checkNotNull(homeAddress, "homeAddress"); + Utils.checkNotNull(workAddress, "workAddress"); + Utils.checkNotNull(job, "job"); + Utils.checkNotNull(department, "department"); + Utils.checkNotNull(compensation, "compensation"); + Utils.checkNotNull(bankAccounts, "bankAccounts"); + this.entityType = entityType; + this.person = person; + this.homeAddress = homeAddress; + this.workAddress = workAddress; + this.job = job; + this.department = department; + this.compensation = compensation; + this.bankAccounts = bankAccounts; + } + + public PostV1CompaniesCompanyIdPeopleBatchesBatch( + PostV1CompaniesCompanyIdPeopleBatchesEntityType entityType, + Person person) { + this(entityType, person, Optional.empty(), + Optional.empty(), Optional.empty(), Optional.empty(), + Optional.empty(), Optional.empty()); + } + + /** + * The type of entity to create + */ + @JsonIgnore + public PostV1CompaniesCompanyIdPeopleBatchesEntityType entityType() { + return entityType; + } + + @JsonIgnore + public Person person() { + return person; + } + + /** + * Home address for the employee + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional homeAddress() { + return (Optional) homeAddress; + } + + /** + * Specify the company work location for the employee + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional workAddress() { + return (Optional) workAddress; + } + + /** + * Job details for the employee (required if compensation is provided) + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional job() { + return (Optional) job; + } + + /** + * Department details for the employee + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional department() { + return (Optional) department; + } + + /** + * Compensation details for the employee (requires job to be provided) + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional compensation() { + return (Optional) compensation; + } + + /** + * Creates employee bank account(s) and payment method(s) for direct deposit. Payments can be split + * across accounts by Percentage or by Amount. If splitting payments by `Percentage`, all splits must + * have a `split_amount` and the percentages must add up to `100`. + * If splitting payments by `Amount`, the priority is set based on the order of the bank accounts in + * the array and the last bank account is the remainder account (should have `split_amount` set to + * `null`). + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> bankAccounts() { + return (Optional>) bankAccounts; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * The type of entity to create + */ + public PostV1CompaniesCompanyIdPeopleBatchesBatch withEntityType(PostV1CompaniesCompanyIdPeopleBatchesEntityType entityType) { + Utils.checkNotNull(entityType, "entityType"); + this.entityType = entityType; + return this; + } + + public PostV1CompaniesCompanyIdPeopleBatchesBatch withPerson(Person person) { + Utils.checkNotNull(person, "person"); + this.person = person; + return this; + } + + /** + * Home address for the employee + */ + public PostV1CompaniesCompanyIdPeopleBatchesBatch withHomeAddress(PostV1CompaniesCompanyIdPeopleBatchesHomeAddress homeAddress) { + Utils.checkNotNull(homeAddress, "homeAddress"); + this.homeAddress = Optional.ofNullable(homeAddress); + return this; + } + + + /** + * Home address for the employee + */ + public PostV1CompaniesCompanyIdPeopleBatchesBatch withHomeAddress(Optional homeAddress) { + Utils.checkNotNull(homeAddress, "homeAddress"); + this.homeAddress = homeAddress; + return this; + } + + /** + * Specify the company work location for the employee + */ + public PostV1CompaniesCompanyIdPeopleBatchesBatch withWorkAddress(PostV1CompaniesCompanyIdPeopleBatchesWorkAddress workAddress) { + Utils.checkNotNull(workAddress, "workAddress"); + this.workAddress = Optional.ofNullable(workAddress); + return this; + } + + + /** + * Specify the company work location for the employee + */ + public PostV1CompaniesCompanyIdPeopleBatchesBatch withWorkAddress(Optional workAddress) { + Utils.checkNotNull(workAddress, "workAddress"); + this.workAddress = workAddress; + return this; + } + + /** + * Job details for the employee (required if compensation is provided) + */ + public PostV1CompaniesCompanyIdPeopleBatchesBatch withJob(PostV1CompaniesCompanyIdPeopleBatchesJob job) { + Utils.checkNotNull(job, "job"); + this.job = Optional.ofNullable(job); + return this; + } + + + /** + * Job details for the employee (required if compensation is provided) + */ + public PostV1CompaniesCompanyIdPeopleBatchesBatch withJob(Optional job) { + Utils.checkNotNull(job, "job"); + this.job = job; + return this; + } + + /** + * Department details for the employee + */ + public PostV1CompaniesCompanyIdPeopleBatchesBatch withDepartment(Department department) { + Utils.checkNotNull(department, "department"); + this.department = Optional.ofNullable(department); + return this; + } + + + /** + * Department details for the employee + */ + public PostV1CompaniesCompanyIdPeopleBatchesBatch withDepartment(Optional department) { + Utils.checkNotNull(department, "department"); + this.department = department; + return this; + } + + /** + * Compensation details for the employee (requires job to be provided) + */ + public PostV1CompaniesCompanyIdPeopleBatchesBatch withCompensation(Compensation compensation) { + Utils.checkNotNull(compensation, "compensation"); + this.compensation = Optional.ofNullable(compensation); + return this; + } + + + /** + * Compensation details for the employee (requires job to be provided) + */ + public PostV1CompaniesCompanyIdPeopleBatchesBatch withCompensation(Optional compensation) { + Utils.checkNotNull(compensation, "compensation"); + this.compensation = compensation; + return this; + } + + /** + * Creates employee bank account(s) and payment method(s) for direct deposit. Payments can be split + * across accounts by Percentage or by Amount. If splitting payments by `Percentage`, all splits must + * have a `split_amount` and the percentages must add up to `100`. + * If splitting payments by `Amount`, the priority is set based on the order of the bank accounts in + * the array and the last bank account is the remainder account (should have `split_amount` set to + * `null`). + */ + public PostV1CompaniesCompanyIdPeopleBatchesBatch withBankAccounts(List bankAccounts) { + Utils.checkNotNull(bankAccounts, "bankAccounts"); + this.bankAccounts = Optional.ofNullable(bankAccounts); + return this; + } + + + /** + * Creates employee bank account(s) and payment method(s) for direct deposit. Payments can be split + * across accounts by Percentage or by Amount. If splitting payments by `Percentage`, all splits must + * have a `split_amount` and the percentages must add up to `100`. + * If splitting payments by `Amount`, the priority is set based on the order of the bank accounts in + * the array and the last bank account is the remainder account (should have `split_amount` set to + * `null`). + */ + public PostV1CompaniesCompanyIdPeopleBatchesBatch withBankAccounts(Optional> bankAccounts) { + Utils.checkNotNull(bankAccounts, "bankAccounts"); + this.bankAccounts = bankAccounts; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PostV1CompaniesCompanyIdPeopleBatchesBatch other = (PostV1CompaniesCompanyIdPeopleBatchesBatch) o; + return + Utils.enhancedDeepEquals(this.entityType, other.entityType) && + Utils.enhancedDeepEquals(this.person, other.person) && + Utils.enhancedDeepEquals(this.homeAddress, other.homeAddress) && + Utils.enhancedDeepEquals(this.workAddress, other.workAddress) && + Utils.enhancedDeepEquals(this.job, other.job) && + Utils.enhancedDeepEquals(this.department, other.department) && + Utils.enhancedDeepEquals(this.compensation, other.compensation) && + Utils.enhancedDeepEquals(this.bankAccounts, other.bankAccounts); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + entityType, person, homeAddress, + workAddress, job, department, + compensation, bankAccounts); + } + + @Override + public String toString() { + return Utils.toString(PostV1CompaniesCompanyIdPeopleBatchesBatch.class, + "entityType", entityType, + "person", person, + "homeAddress", homeAddress, + "workAddress", workAddress, + "job", job, + "department", department, + "compensation", compensation, + "bankAccounts", bankAccounts); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private PostV1CompaniesCompanyIdPeopleBatchesEntityType entityType; + + private Person person; + + private Optional homeAddress = Optional.empty(); + + private Optional workAddress = Optional.empty(); + + private Optional job = Optional.empty(); + + private Optional department = Optional.empty(); + + private Optional compensation = Optional.empty(); + + private Optional> bankAccounts = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * The type of entity to create + */ + public Builder entityType(PostV1CompaniesCompanyIdPeopleBatchesEntityType entityType) { + Utils.checkNotNull(entityType, "entityType"); + this.entityType = entityType; + return this; + } + + + public Builder person(Person person) { + Utils.checkNotNull(person, "person"); + this.person = person; + return this; + } + + + /** + * Home address for the employee + */ + public Builder homeAddress(PostV1CompaniesCompanyIdPeopleBatchesHomeAddress homeAddress) { + Utils.checkNotNull(homeAddress, "homeAddress"); + this.homeAddress = Optional.ofNullable(homeAddress); + return this; + } + + /** + * Home address for the employee + */ + public Builder homeAddress(Optional homeAddress) { + Utils.checkNotNull(homeAddress, "homeAddress"); + this.homeAddress = homeAddress; + return this; + } + + + /** + * Specify the company work location for the employee + */ + public Builder workAddress(PostV1CompaniesCompanyIdPeopleBatchesWorkAddress workAddress) { + Utils.checkNotNull(workAddress, "workAddress"); + this.workAddress = Optional.ofNullable(workAddress); + return this; + } + + /** + * Specify the company work location for the employee + */ + public Builder workAddress(Optional workAddress) { + Utils.checkNotNull(workAddress, "workAddress"); + this.workAddress = workAddress; + return this; + } + + + /** + * Job details for the employee (required if compensation is provided) + */ + public Builder job(PostV1CompaniesCompanyIdPeopleBatchesJob job) { + Utils.checkNotNull(job, "job"); + this.job = Optional.ofNullable(job); + return this; + } + + /** + * Job details for the employee (required if compensation is provided) + */ + public Builder job(Optional job) { + Utils.checkNotNull(job, "job"); + this.job = job; + return this; + } + + + /** + * Department details for the employee + */ + public Builder department(Department department) { + Utils.checkNotNull(department, "department"); + this.department = Optional.ofNullable(department); + return this; + } + + /** + * Department details for the employee + */ + public Builder department(Optional department) { + Utils.checkNotNull(department, "department"); + this.department = department; + return this; + } + + + /** + * Compensation details for the employee (requires job to be provided) + */ + public Builder compensation(Compensation compensation) { + Utils.checkNotNull(compensation, "compensation"); + this.compensation = Optional.ofNullable(compensation); + return this; + } + + /** + * Compensation details for the employee (requires job to be provided) + */ + public Builder compensation(Optional compensation) { + Utils.checkNotNull(compensation, "compensation"); + this.compensation = compensation; + return this; + } + + + /** + * Creates employee bank account(s) and payment method(s) for direct deposit. Payments can be split + * across accounts by Percentage or by Amount. If splitting payments by `Percentage`, all splits must + * have a `split_amount` and the percentages must add up to `100`. + * If splitting payments by `Amount`, the priority is set based on the order of the bank accounts in + * the array and the last bank account is the remainder account (should have `split_amount` set to + * `null`). + */ + public Builder bankAccounts(List bankAccounts) { + Utils.checkNotNull(bankAccounts, "bankAccounts"); + this.bankAccounts = Optional.ofNullable(bankAccounts); + return this; + } + + /** + * Creates employee bank account(s) and payment method(s) for direct deposit. Payments can be split + * across accounts by Percentage or by Amount. If splitting payments by `Percentage`, all splits must + * have a `split_amount` and the percentages must add up to `100`. + * If splitting payments by `Amount`, the priority is set based on the order of the bank accounts in + * the array and the last bank account is the remainder account (should have `split_amount` set to + * `null`). + */ + public Builder bankAccounts(Optional> bankAccounts) { + Utils.checkNotNull(bankAccounts, "bankAccounts"); + this.bankAccounts = bankAccounts; + return this; + } + + public PostV1CompaniesCompanyIdPeopleBatchesBatch build() { + + return new PostV1CompaniesCompanyIdPeopleBatchesBatch( + entityType, person, homeAddress, + workAddress, job, department, + compensation, bankAccounts); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1CompaniesCompanyIdPeopleBatchesBatchAction.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1CompaniesCompanyIdPeopleBatchesBatchAction.java new file mode 100644 index 000000000..098e8be20 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1CompaniesCompanyIdPeopleBatchesBatchAction.java @@ -0,0 +1,39 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PostV1CompaniesCompanyIdPeopleBatchesBatchAction + * + *

    The action to perform on the batch + */ +public enum PostV1CompaniesCompanyIdPeopleBatchesBatchAction { + CREATE("create"); + + @JsonValue + private final String value; + + PostV1CompaniesCompanyIdPeopleBatchesBatchAction(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PostV1CompaniesCompanyIdPeopleBatchesBatchAction o: PostV1CompaniesCompanyIdPeopleBatchesBatchAction.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1CompaniesCompanyIdPeopleBatchesEntityType.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1CompaniesCompanyIdPeopleBatchesEntityType.java new file mode 100644 index 000000000..6c5364d9f --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1CompaniesCompanyIdPeopleBatchesEntityType.java @@ -0,0 +1,39 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PostV1CompaniesCompanyIdPeopleBatchesEntityType + * + *

    The type of entity to create + */ +public enum PostV1CompaniesCompanyIdPeopleBatchesEntityType { + EMPLOYEE("employee"); + + @JsonValue + private final String value; + + PostV1CompaniesCompanyIdPeopleBatchesEntityType(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PostV1CompaniesCompanyIdPeopleBatchesEntityType o: PostV1CompaniesCompanyIdPeopleBatchesEntityType.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequest.java index 3c6f4164d..070d4680d 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequest.java @@ -16,12 +16,6 @@ public class PostV1CompaniesCompanyIdPeopleBatchesRequest { - /** - * The UUID of the company - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_id") - private String companyId; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,35 +24,33 @@ public class PostV1CompaniesCompanyIdPeopleBatchesRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_id") + private String companyId; + @SpeakeasyMetadata("request:mediaType=application/json") private PostV1CompaniesCompanyIdPeopleBatchesRequestBody requestBody; @JsonCreator public PostV1CompaniesCompanyIdPeopleBatchesRequest( - String companyId, Optional xGustoAPIVersion, + String companyId, PostV1CompaniesCompanyIdPeopleBatchesRequestBody requestBody) { - Utils.checkNotNull(companyId, "companyId"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(companyId, "companyId"); Utils.checkNotNull(requestBody, "requestBody"); - this.companyId = companyId; this.xGustoAPIVersion = xGustoAPIVersion; + this.companyId = companyId; this.requestBody = requestBody; } public PostV1CompaniesCompanyIdPeopleBatchesRequest( String companyId, PostV1CompaniesCompanyIdPeopleBatchesRequestBody requestBody) { - this(companyId, Optional.empty(), requestBody); - } - - /** - * The UUID of the company - */ - @JsonIgnore - public String companyId() { - return companyId; + this(Optional.empty(), companyId, requestBody); } /** @@ -72,6 +64,14 @@ public Optional xGu return (Optional) xGustoAPIVersion; } + /** + * The UUID of the company + */ + @JsonIgnore + public String companyId() { + return companyId; + } + @JsonIgnore public PostV1CompaniesCompanyIdPeopleBatchesRequestBody requestBody() { return requestBody; @@ -82,15 +82,6 @@ public static Builder builder() { } - /** - * The UUID of the company - */ - public PostV1CompaniesCompanyIdPeopleBatchesRequest withCompanyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -114,6 +105,15 @@ public PostV1CompaniesCompanyIdPeopleBatchesRequest withXGustoAPIVersion(Optiona return this; } + /** + * The UUID of the company + */ + public PostV1CompaniesCompanyIdPeopleBatchesRequest withCompanyId(String companyId) { + Utils.checkNotNull(companyId, "companyId"); + this.companyId = companyId; + return this; + } + public PostV1CompaniesCompanyIdPeopleBatchesRequest withRequestBody(PostV1CompaniesCompanyIdPeopleBatchesRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); this.requestBody = requestBody; @@ -130,32 +130,32 @@ public boolean equals(java.lang.Object o) { } PostV1CompaniesCompanyIdPeopleBatchesRequest other = (PostV1CompaniesCompanyIdPeopleBatchesRequest) o; return - Utils.enhancedDeepEquals(this.companyId, other.companyId) && Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.companyId, other.companyId) && Utils.enhancedDeepEquals(this.requestBody, other.requestBody); } @Override public int hashCode() { return Utils.enhancedHash( - companyId, xGustoAPIVersion, requestBody); + xGustoAPIVersion, companyId, requestBody); } @Override public String toString() { return Utils.toString(PostV1CompaniesCompanyIdPeopleBatchesRequest.class, - "companyId", companyId, "xGustoAPIVersion", xGustoAPIVersion, + "companyId", companyId, "requestBody", requestBody); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String companyId; - private Optional xGustoAPIVersion; + private String companyId; + private PostV1CompaniesCompanyIdPeopleBatchesRequestBody requestBody; private Builder() { @@ -163,16 +163,6 @@ private Builder() { } - /** - * The UUID of the company - */ - public Builder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -196,6 +186,16 @@ public Builder xGustoAPIVersion(Optional batch; + private List batch; @JsonCreator public PostV1CompaniesCompanyIdPeopleBatchesRequestBody( @JsonProperty("idempotency_key") String idempotencyKey, - @JsonProperty("batch_action") BatchAction batchAction, - @JsonProperty("batch") List batch) { + @JsonProperty("batch_action") PostV1CompaniesCompanyIdPeopleBatchesBatchAction batchAction, + @JsonProperty("batch") List batch) { Utils.checkNotNull(idempotencyKey, "idempotencyKey"); Utils.checkNotNull(batchAction, "batchAction"); Utils.checkNotNull(batch, "batch"); @@ -56,7 +56,7 @@ public String idempotencyKey() { * The action to perform on the batch */ @JsonIgnore - public BatchAction batchAction() { + public PostV1CompaniesCompanyIdPeopleBatchesBatchAction batchAction() { return batchAction; } @@ -64,7 +64,7 @@ public BatchAction batchAction() { * Array of people to create */ @JsonIgnore - public List batch() { + public List batch() { return batch; } @@ -85,7 +85,7 @@ public PostV1CompaniesCompanyIdPeopleBatchesRequestBody withIdempotencyKey(Strin /** * The action to perform on the batch */ - public PostV1CompaniesCompanyIdPeopleBatchesRequestBody withBatchAction(BatchAction batchAction) { + public PostV1CompaniesCompanyIdPeopleBatchesRequestBody withBatchAction(PostV1CompaniesCompanyIdPeopleBatchesBatchAction batchAction) { Utils.checkNotNull(batchAction, "batchAction"); this.batchAction = batchAction; return this; @@ -94,7 +94,7 @@ public PostV1CompaniesCompanyIdPeopleBatchesRequestBody withBatchAction(BatchAct /** * Array of people to create */ - public PostV1CompaniesCompanyIdPeopleBatchesRequestBody withBatch(List batch) { + public PostV1CompaniesCompanyIdPeopleBatchesRequestBody withBatch(List batch) { Utils.checkNotNull(batch, "batch"); this.batch = batch; return this; @@ -134,9 +134,9 @@ public final static class Builder { private String idempotencyKey; - private BatchAction batchAction; + private PostV1CompaniesCompanyIdPeopleBatchesBatchAction batchAction; - private List batch; + private List batch; private Builder() { // force use of static builder() method @@ -156,7 +156,7 @@ public Builder idempotencyKey(String idempotencyKey) { /** * The action to perform on the batch */ - public Builder batchAction(BatchAction batchAction) { + public Builder batchAction(PostV1CompaniesCompanyIdPeopleBatchesBatchAction batchAction) { Utils.checkNotNull(batchAction, "batchAction"); this.batchAction = batchAction; return this; @@ -166,7 +166,7 @@ public Builder batchAction(BatchAction batchAction) { /** * Array of people to create */ - public Builder batch(List batch) { + public Builder batch(List batch) { Utils.checkNotNull(batch, "batch"); this.batch = batch; return this; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder.java index fda5402a9..f747bedaa 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder.java @@ -16,11 +16,11 @@ public class PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder { - private String companyId; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String companyId; private PostV1CompaniesCompanyIdPeopleBatchesRequestBody requestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -28,12 +28,6 @@ public class PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder { public PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } public PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder xGustoAPIVersion(PostV1CompaniesCompanyIdPeopleBatchesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -47,6 +41,12 @@ public PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder xGustoAPIVersion(Opti return this; } + public PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder companyId(String companyId) { + Utils.checkNotNull(companyId, "companyId"); + this.companyId = companyId; + return this; + } + public PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder requestBody(PostV1CompaniesCompanyIdPeopleBatchesRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); this.requestBody = requestBody; @@ -59,8 +59,8 @@ private PostV1CompaniesCompanyIdPeopleBatchesRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PostV1CompaniesCompanyIdPeopleBatchesRequest request = new PostV1CompaniesCompanyIdPeopleBatchesRequest(companyId, - xGustoAPIVersion, + PostV1CompaniesCompanyIdPeopleBatchesRequest request = new PostV1CompaniesCompanyIdPeopleBatchesRequest(xGustoAPIVersion, + companyId, requestBody); return request; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1CompaniesCompanyUuidSignatoriesInviteRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1CompaniesCompanyUuidSignatoriesInviteRequest.java index d12311785..598576351 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1CompaniesCompanyUuidSignatoriesInviteRequest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1CompaniesCompanyUuidSignatoriesInviteRequest.java @@ -17,12 +17,6 @@ public class PostV1CompaniesCompanyUuidSignatoriesInviteRequest { - /** - * The UUID of the company - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") - private String companyUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -31,35 +25,33 @@ public class PostV1CompaniesCompanyUuidSignatoriesInviteRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") + private String companyUuid; + @SpeakeasyMetadata("request:mediaType=application/json") private SignatoryInviteRequest signatoryInviteRequest; @JsonCreator public PostV1CompaniesCompanyUuidSignatoriesInviteRequest( - String companyUuid, Optional xGustoAPIVersion, + String companyUuid, SignatoryInviteRequest signatoryInviteRequest) { - Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(signatoryInviteRequest, "signatoryInviteRequest"); - this.companyUuid = companyUuid; this.xGustoAPIVersion = xGustoAPIVersion; + this.companyUuid = companyUuid; this.signatoryInviteRequest = signatoryInviteRequest; } public PostV1CompaniesCompanyUuidSignatoriesInviteRequest( String companyUuid, SignatoryInviteRequest signatoryInviteRequest) { - this(companyUuid, Optional.empty(), signatoryInviteRequest); - } - - /** - * The UUID of the company - */ - @JsonIgnore - public String companyUuid() { - return companyUuid; + this(Optional.empty(), companyUuid, signatoryInviteRequest); } /** @@ -73,6 +65,14 @@ public Optional) xGustoAPIVersion; } + /** + * The UUID of the company + */ + @JsonIgnore + public String companyUuid() { + return companyUuid; + } + @JsonIgnore public SignatoryInviteRequest signatoryInviteRequest() { return signatoryInviteRequest; @@ -83,15 +83,6 @@ public static Builder builder() { } - /** - * The UUID of the company - */ - public PostV1CompaniesCompanyUuidSignatoriesInviteRequest withCompanyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -115,6 +106,15 @@ public PostV1CompaniesCompanyUuidSignatoriesInviteRequest withXGustoAPIVersion(O return this; } + /** + * The UUID of the company + */ + public PostV1CompaniesCompanyUuidSignatoriesInviteRequest withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + public PostV1CompaniesCompanyUuidSignatoriesInviteRequest withSignatoryInviteRequest(SignatoryInviteRequest signatoryInviteRequest) { Utils.checkNotNull(signatoryInviteRequest, "signatoryInviteRequest"); this.signatoryInviteRequest = signatoryInviteRequest; @@ -131,32 +131,32 @@ public boolean equals(java.lang.Object o) { } PostV1CompaniesCompanyUuidSignatoriesInviteRequest other = (PostV1CompaniesCompanyUuidSignatoriesInviteRequest) o; return - Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && Utils.enhancedDeepEquals(this.signatoryInviteRequest, other.signatoryInviteRequest); } @Override public int hashCode() { return Utils.enhancedHash( - companyUuid, xGustoAPIVersion, signatoryInviteRequest); + xGustoAPIVersion, companyUuid, signatoryInviteRequest); } @Override public String toString() { return Utils.toString(PostV1CompaniesCompanyUuidSignatoriesInviteRequest.class, - "companyUuid", companyUuid, "xGustoAPIVersion", xGustoAPIVersion, + "companyUuid", companyUuid, "signatoryInviteRequest", signatoryInviteRequest); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String companyUuid; - private Optional xGustoAPIVersion; + private String companyUuid; + private SignatoryInviteRequest signatoryInviteRequest; private Builder() { @@ -164,16 +164,6 @@ private Builder() { } - /** - * The UUID of the company - */ - public Builder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -197,6 +187,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String companyUuid; private SignatoryInviteRequest signatoryInviteRequest; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -29,12 +29,6 @@ public class PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder { public PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder xGustoAPIVersion(PostV1CompaniesCompanyUuidSignatoriesInviteHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -48,6 +42,12 @@ public PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder xGustoAPIVersio return this; } + public PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + public PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder signatoryInviteRequest(SignatoryInviteRequest signatoryInviteRequest) { Utils.checkNotNull(signatoryInviteRequest, "signatoryInviteRequest"); this.signatoryInviteRequest = signatoryInviteRequest; @@ -60,8 +60,8 @@ private PostV1CompaniesCompanyUuidSignatoriesInviteRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PostV1CompaniesCompanyUuidSignatoriesInviteRequest request = new PostV1CompaniesCompanyUuidSignatoriesInviteRequest(companyUuid, - xGustoAPIVersion, + PostV1CompaniesCompanyUuidSignatoriesInviteRequest request = new PostV1CompaniesCompanyUuidSignatoriesInviteRequest(xGustoAPIVersion, + companyUuid, signatoryInviteRequest); return request; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1CompanySignatoriesRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1CompanySignatoriesRequest.java index 6cd2adfee..130cebd66 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1CompanySignatoriesRequest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1CompanySignatoriesRequest.java @@ -17,12 +17,6 @@ public class PostV1CompanySignatoriesRequest { - /** - * The UUID of the company - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") - private String companyUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -31,35 +25,33 @@ public class PostV1CompanySignatoriesRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") + private String companyUuid; + @SpeakeasyMetadata("request:mediaType=application/json") private SignatoryCreateRequest signatoryCreateRequest; @JsonCreator public PostV1CompanySignatoriesRequest( - String companyUuid, Optional xGustoAPIVersion, + String companyUuid, SignatoryCreateRequest signatoryCreateRequest) { - Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(signatoryCreateRequest, "signatoryCreateRequest"); - this.companyUuid = companyUuid; this.xGustoAPIVersion = xGustoAPIVersion; + this.companyUuid = companyUuid; this.signatoryCreateRequest = signatoryCreateRequest; } public PostV1CompanySignatoriesRequest( String companyUuid, SignatoryCreateRequest signatoryCreateRequest) { - this(companyUuid, Optional.empty(), signatoryCreateRequest); - } - - /** - * The UUID of the company - */ - @JsonIgnore - public String companyUuid() { - return companyUuid; + this(Optional.empty(), companyUuid, signatoryCreateRequest); } /** @@ -73,6 +65,14 @@ public Optional xGustoAPIVersion return (Optional) xGustoAPIVersion; } + /** + * The UUID of the company + */ + @JsonIgnore + public String companyUuid() { + return companyUuid; + } + @JsonIgnore public SignatoryCreateRequest signatoryCreateRequest() { return signatoryCreateRequest; @@ -83,15 +83,6 @@ public static Builder builder() { } - /** - * The UUID of the company - */ - public PostV1CompanySignatoriesRequest withCompanyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -115,6 +106,15 @@ public PostV1CompanySignatoriesRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String companyUuid; + private SignatoryCreateRequest signatoryCreateRequest; private Builder() { @@ -164,16 +164,6 @@ private Builder() { } - /** - * The UUID of the company - */ - public Builder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -197,6 +187,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String companyUuid; private SignatoryCreateRequest signatoryCreateRequest; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -29,12 +29,6 @@ public class PostV1CompanySignatoriesRequestBuilder { public PostV1CompanySignatoriesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostV1CompanySignatoriesRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public PostV1CompanySignatoriesRequestBuilder xGustoAPIVersion(PostV1CompanySignatoriesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -48,6 +42,12 @@ public PostV1CompanySignatoriesRequestBuilder xGustoAPIVersion(OptionalDetermines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ +public enum PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion { + TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15("2026-06-15"); + + @JsonValue + private final String value; + + PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion o: PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsRequest.java new file mode 100644 index 000000000..2684a97ec --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsRequest.java @@ -0,0 +1,191 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2026_06_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2026_06_15.utils.SpeakeasyMetadata; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class PostV1ContractorsContractorUuidMemberPortalInvitationsRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + + /** + * The UUID of the contractor + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=contractor_uuid") + private String contractorUuid; + + @JsonCreator + public PostV1ContractorsContractorUuidMemberPortalInvitationsRequest( + Optional xGustoAPIVersion, + String contractorUuid) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.xGustoAPIVersion = xGustoAPIVersion; + this.contractorUuid = contractorUuid; + } + + public PostV1ContractorsContractorUuidMemberPortalInvitationsRequest( + String contractorUuid) { + this(Optional.empty(), contractorUuid); + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + + /** + * The UUID of the contractor + */ + @JsonIgnore + public String contractorUuid() { + return contractorUuid; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public PostV1ContractorsContractorUuidMemberPortalInvitationsRequest withXGustoAPIVersion(PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public PostV1ContractorsContractorUuidMemberPortalInvitationsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + /** + * The UUID of the contractor + */ + public PostV1ContractorsContractorUuidMemberPortalInvitationsRequest withContractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PostV1ContractorsContractorUuidMemberPortalInvitationsRequest other = (PostV1ContractorsContractorUuidMemberPortalInvitationsRequest) o; + return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.contractorUuid, other.contractorUuid); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + xGustoAPIVersion, contractorUuid); + } + + @Override + public String toString() { + return Utils.toString(PostV1ContractorsContractorUuidMemberPortalInvitationsRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, + "contractorUuid", contractorUuid); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional xGustoAPIVersion; + + private String contractorUuid; + + private Builder() { + // force use of static builder() method + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + + /** + * The UUID of the contractor + */ + public Builder contractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + + public PostV1ContractorsContractorUuidMemberPortalInvitationsRequest build() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + return new PostV1ContractorsContractorUuidMemberPortalInvitationsRequest( + xGustoAPIVersion, contractorUuid); + } + + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "X-Gusto-API-Version", + "\"2026-06-15\"", + new TypeReference>() {}); + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder.java new file mode 100644 index 000000000..2b6d256b0 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder.java @@ -0,0 +1,75 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import static com.gusto.embedded_api_v_2026_06_15.operations.Operations.RequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2026_06_15.SDKConfiguration; +import com.gusto.embedded_api_v_2026_06_15.operations.PostV1ContractorsContractorUuidMemberPortalInvitations; +import com.gusto.embedded_api_v_2026_06_15.utils.Headers; +import com.gusto.embedded_api_v_2026_06_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.String; +import java.util.Optional; + +public class PostV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder { + + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2026-06-15\"", + new TypeReference>() {}); + private String contractorUuid; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public PostV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public PostV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder xGustoAPIVersion(PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public PostV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public PostV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder contractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + + + private PostV1ContractorsContractorUuidMemberPortalInvitationsRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + PostV1ContractorsContractorUuidMemberPortalInvitationsRequest request = new PostV1ContractorsContractorUuidMemberPortalInvitationsRequest(xGustoAPIVersion, + contractorUuid); + + return request; + } + + public PostV1ContractorsContractorUuidMemberPortalInvitationsResponse call() { + + RequestOperation operation + = new PostV1ContractorsContractorUuidMemberPortalInvitations.Sync(sdkConfiguration, _headers); + PostV1ContractorsContractorUuidMemberPortalInvitationsRequest request = buildRequest(); + + return operation.handleResponse(operation.doRequest(request)); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2026-06-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsResponse.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsResponse.java new file mode 100644 index 000000000..d4a1ca86c --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1ContractorsContractorUuidMemberPortalInvitationsResponse.java @@ -0,0 +1,181 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2026_06_15.utils.Response; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.io.InputStream; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.net.http.HttpResponse; + + +public class PostV1ContractorsContractorUuidMemberPortalInvitationsResponse implements Response { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + @JsonCreator + public PostV1ContractorsContractorUuidMemberPortalInvitationsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public PostV1ContractorsContractorUuidMemberPortalInvitationsResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public PostV1ContractorsContractorUuidMemberPortalInvitationsResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public PostV1ContractorsContractorUuidMemberPortalInvitationsResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PostV1ContractorsContractorUuidMemberPortalInvitationsResponse other = (PostV1ContractorsContractorUuidMemberPortalInvitationsResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse); + } + + @Override + public String toString() { + return Utils.toString(PostV1ContractorsContractorUuidMemberPortalInvitationsResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + public PostV1ContractorsContractorUuidMemberPortalInvitationsResponse build() { + + return new PostV1ContractorsContractorUuidMemberPortalInvitationsResponse( + contentType, statusCode, rawResponse); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1ContractorsContractorUuidRehireRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1ContractorsContractorUuidRehireRequest.java index 68829b26a..1b3f0a4ec 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1ContractorsContractorUuidRehireRequest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1ContractorsContractorUuidRehireRequest.java @@ -16,12 +16,6 @@ public class PostV1ContractorsContractorUuidRehireRequest { - /** - * The UUID of the contractor - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=contractor_uuid") - private String contractorUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,34 +24,32 @@ public class PostV1ContractorsContractorUuidRehireRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the contractor + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=contractor_uuid") + private String contractorUuid; + @SpeakeasyMetadata("request:mediaType=application/json") private Optional requestBody; @JsonCreator public PostV1ContractorsContractorUuidRehireRequest( - String contractorUuid, Optional xGustoAPIVersion, + String contractorUuid, Optional requestBody) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(contractorUuid, "contractorUuid"); Utils.checkNotNull(requestBody, "requestBody"); - this.contractorUuid = contractorUuid; this.xGustoAPIVersion = xGustoAPIVersion; + this.contractorUuid = contractorUuid; this.requestBody = requestBody; } public PostV1ContractorsContractorUuidRehireRequest( String contractorUuid) { - this(contractorUuid, Optional.empty(), Optional.empty()); - } - - /** - * The UUID of the contractor - */ - @JsonIgnore - public String contractorUuid() { - return contractorUuid; + this(Optional.empty(), contractorUuid, Optional.empty()); } /** @@ -71,6 +63,14 @@ public Optional xGu return (Optional) xGustoAPIVersion; } + /** + * The UUID of the contractor + */ + @JsonIgnore + public String contractorUuid() { + return contractorUuid; + } + @SuppressWarnings("unchecked") @JsonIgnore public Optional requestBody() { @@ -82,15 +82,6 @@ public static Builder builder() { } - /** - * The UUID of the contractor - */ - public PostV1ContractorsContractorUuidRehireRequest withContractorUuid(String contractorUuid) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); - this.contractorUuid = contractorUuid; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -114,6 +105,15 @@ public PostV1ContractorsContractorUuidRehireRequest withXGustoAPIVersion(Optiona return this; } + /** + * The UUID of the contractor + */ + public PostV1ContractorsContractorUuidRehireRequest withContractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + public PostV1ContractorsContractorUuidRehireRequest withRequestBody(PostV1ContractorsContractorUuidRehireRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); this.requestBody = Optional.ofNullable(requestBody); @@ -137,32 +137,32 @@ public boolean equals(java.lang.Object o) { } PostV1ContractorsContractorUuidRehireRequest other = (PostV1ContractorsContractorUuidRehireRequest) o; return - Utils.enhancedDeepEquals(this.contractorUuid, other.contractorUuid) && Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.contractorUuid, other.contractorUuid) && Utils.enhancedDeepEquals(this.requestBody, other.requestBody); } @Override public int hashCode() { return Utils.enhancedHash( - contractorUuid, xGustoAPIVersion, requestBody); + xGustoAPIVersion, contractorUuid, requestBody); } @Override public String toString() { return Utils.toString(PostV1ContractorsContractorUuidRehireRequest.class, - "contractorUuid", contractorUuid, "xGustoAPIVersion", xGustoAPIVersion, + "contractorUuid", contractorUuid, "requestBody", requestBody); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String contractorUuid; - private Optional xGustoAPIVersion; + private String contractorUuid; + private Optional requestBody = Optional.empty(); private Builder() { @@ -170,16 +170,6 @@ private Builder() { } - /** - * The UUID of the contractor - */ - public Builder contractorUuid(String contractorUuid) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); - this.contractorUuid = contractorUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -203,6 +193,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String contractorUuid; private Optional requestBody = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -28,12 +28,6 @@ public class PostV1ContractorsContractorUuidRehireRequestBuilder { public PostV1ContractorsContractorUuidRehireRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostV1ContractorsContractorUuidRehireRequestBuilder contractorUuid(String contractorUuid) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); - this.contractorUuid = contractorUuid; - return this; - } public PostV1ContractorsContractorUuidRehireRequestBuilder xGustoAPIVersion(PostV1ContractorsContractorUuidRehireHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,6 +40,12 @@ public PostV1ContractorsContractorUuidRehireRequestBuilder xGustoAPIVersion(Opti this.xGustoAPIVersion = xGustoAPIVersion; return this; } + + public PostV1ContractorsContractorUuidRehireRequestBuilder contractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } public PostV1ContractorsContractorUuidRehireRequestBuilder requestBody(PostV1ContractorsContractorUuidRehireRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); @@ -65,8 +65,8 @@ private PostV1ContractorsContractorUuidRehireRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PostV1ContractorsContractorUuidRehireRequest request = new PostV1ContractorsContractorUuidRehireRequest(contractorUuid, - xGustoAPIVersion, + PostV1ContractorsContractorUuidRehireRequest request = new PostV1ContractorsContractorUuidRehireRequest(xGustoAPIVersion, + contractorUuid, requestBody); return request; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1ContractorsContractorUuidTerminationRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1ContractorsContractorUuidTerminationRequest.java index 7f93971e8..b5ac70bd0 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1ContractorsContractorUuidTerminationRequest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1ContractorsContractorUuidTerminationRequest.java @@ -16,12 +16,6 @@ public class PostV1ContractorsContractorUuidTerminationRequest { - /** - * The UUID of the contractor - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=contractor_uuid") - private String contractorUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,34 +24,32 @@ public class PostV1ContractorsContractorUuidTerminationRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the contractor + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=contractor_uuid") + private String contractorUuid; + @SpeakeasyMetadata("request:mediaType=application/json") private Optional requestBody; @JsonCreator public PostV1ContractorsContractorUuidTerminationRequest( - String contractorUuid, Optional xGustoAPIVersion, + String contractorUuid, Optional requestBody) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(contractorUuid, "contractorUuid"); Utils.checkNotNull(requestBody, "requestBody"); - this.contractorUuid = contractorUuid; this.xGustoAPIVersion = xGustoAPIVersion; + this.contractorUuid = contractorUuid; this.requestBody = requestBody; } public PostV1ContractorsContractorUuidTerminationRequest( String contractorUuid) { - this(contractorUuid, Optional.empty(), Optional.empty()); - } - - /** - * The UUID of the contractor - */ - @JsonIgnore - public String contractorUuid() { - return contractorUuid; + this(Optional.empty(), contractorUuid, Optional.empty()); } /** @@ -71,6 +63,14 @@ public Optional) xGustoAPIVersion; } + /** + * The UUID of the contractor + */ + @JsonIgnore + public String contractorUuid() { + return contractorUuid; + } + @SuppressWarnings("unchecked") @JsonIgnore public Optional requestBody() { @@ -82,15 +82,6 @@ public static Builder builder() { } - /** - * The UUID of the contractor - */ - public PostV1ContractorsContractorUuidTerminationRequest withContractorUuid(String contractorUuid) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); - this.contractorUuid = contractorUuid; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -114,6 +105,15 @@ public PostV1ContractorsContractorUuidTerminationRequest withXGustoAPIVersion(Op return this; } + /** + * The UUID of the contractor + */ + public PostV1ContractorsContractorUuidTerminationRequest withContractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + public PostV1ContractorsContractorUuidTerminationRequest withRequestBody(PostV1ContractorsContractorUuidTerminationRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); this.requestBody = Optional.ofNullable(requestBody); @@ -137,32 +137,32 @@ public boolean equals(java.lang.Object o) { } PostV1ContractorsContractorUuidTerminationRequest other = (PostV1ContractorsContractorUuidTerminationRequest) o; return - Utils.enhancedDeepEquals(this.contractorUuid, other.contractorUuid) && Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.contractorUuid, other.contractorUuid) && Utils.enhancedDeepEquals(this.requestBody, other.requestBody); } @Override public int hashCode() { return Utils.enhancedHash( - contractorUuid, xGustoAPIVersion, requestBody); + xGustoAPIVersion, contractorUuid, requestBody); } @Override public String toString() { return Utils.toString(PostV1ContractorsContractorUuidTerminationRequest.class, - "contractorUuid", contractorUuid, "xGustoAPIVersion", xGustoAPIVersion, + "contractorUuid", contractorUuid, "requestBody", requestBody); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String contractorUuid; - private Optional xGustoAPIVersion; + private String contractorUuid; + private Optional requestBody = Optional.empty(); private Builder() { @@ -170,16 +170,6 @@ private Builder() { } - /** - * The UUID of the contractor - */ - public Builder contractorUuid(String contractorUuid) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); - this.contractorUuid = contractorUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -203,6 +193,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String contractorUuid; private Optional requestBody = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -28,12 +28,6 @@ public class PostV1ContractorsContractorUuidTerminationRequestBuilder { public PostV1ContractorsContractorUuidTerminationRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostV1ContractorsContractorUuidTerminationRequestBuilder contractorUuid(String contractorUuid) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); - this.contractorUuid = contractorUuid; - return this; - } public PostV1ContractorsContractorUuidTerminationRequestBuilder xGustoAPIVersion(PostV1ContractorsContractorUuidTerminationHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,6 +40,12 @@ public PostV1ContractorsContractorUuidTerminationRequestBuilder xGustoAPIVersion this.xGustoAPIVersion = xGustoAPIVersion; return this; } + + public PostV1ContractorsContractorUuidTerminationRequestBuilder contractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } public PostV1ContractorsContractorUuidTerminationRequestBuilder requestBody(PostV1ContractorsContractorUuidTerminationRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); @@ -65,8 +65,8 @@ private PostV1ContractorsContractorUuidTerminationRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PostV1ContractorsContractorUuidTerminationRequest request = new PostV1ContractorsContractorUuidTerminationRequest(contractorUuid, - xGustoAPIVersion, + PostV1ContractorsContractorUuidTerminationRequest request = new PostV1ContractorsContractorUuidTerminationRequest(xGustoAPIVersion, + contractorUuid, requestBody); return request; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1EmployeesEmployeeIdHomeAddressesRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1EmployeesEmployeeIdHomeAddressesRequest.java index 34fe61252..9c631073d 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1EmployeesEmployeeIdHomeAddressesRequest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1EmployeesEmployeeIdHomeAddressesRequest.java @@ -16,12 +16,6 @@ public class PostV1EmployeesEmployeeIdHomeAddressesRequest { - /** - * The UUID of the employee - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=employee_id") - private String employeeId; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,35 +24,33 @@ public class PostV1EmployeesEmployeeIdHomeAddressesRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the employee + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=employee_id") + private String employeeId; + @SpeakeasyMetadata("request:mediaType=application/json") private PostV1EmployeesEmployeeIdHomeAddressesRequestBody requestBody; @JsonCreator public PostV1EmployeesEmployeeIdHomeAddressesRequest( - String employeeId, Optional xGustoAPIVersion, + String employeeId, PostV1EmployeesEmployeeIdHomeAddressesRequestBody requestBody) { - Utils.checkNotNull(employeeId, "employeeId"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(employeeId, "employeeId"); Utils.checkNotNull(requestBody, "requestBody"); - this.employeeId = employeeId; this.xGustoAPIVersion = xGustoAPIVersion; + this.employeeId = employeeId; this.requestBody = requestBody; } public PostV1EmployeesEmployeeIdHomeAddressesRequest( String employeeId, PostV1EmployeesEmployeeIdHomeAddressesRequestBody requestBody) { - this(employeeId, Optional.empty(), requestBody); - } - - /** - * The UUID of the employee - */ - @JsonIgnore - public String employeeId() { - return employeeId; + this(Optional.empty(), employeeId, requestBody); } /** @@ -72,6 +64,14 @@ public Optional xG return (Optional) xGustoAPIVersion; } + /** + * The UUID of the employee + */ + @JsonIgnore + public String employeeId() { + return employeeId; + } + @JsonIgnore public PostV1EmployeesEmployeeIdHomeAddressesRequestBody requestBody() { return requestBody; @@ -82,15 +82,6 @@ public static Builder builder() { } - /** - * The UUID of the employee - */ - public PostV1EmployeesEmployeeIdHomeAddressesRequest withEmployeeId(String employeeId) { - Utils.checkNotNull(employeeId, "employeeId"); - this.employeeId = employeeId; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -114,6 +105,15 @@ public PostV1EmployeesEmployeeIdHomeAddressesRequest withXGustoAPIVersion(Option return this; } + /** + * The UUID of the employee + */ + public PostV1EmployeesEmployeeIdHomeAddressesRequest withEmployeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + public PostV1EmployeesEmployeeIdHomeAddressesRequest withRequestBody(PostV1EmployeesEmployeeIdHomeAddressesRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); this.requestBody = requestBody; @@ -130,32 +130,32 @@ public boolean equals(java.lang.Object o) { } PostV1EmployeesEmployeeIdHomeAddressesRequest other = (PostV1EmployeesEmployeeIdHomeAddressesRequest) o; return - Utils.enhancedDeepEquals(this.employeeId, other.employeeId) && Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.employeeId, other.employeeId) && Utils.enhancedDeepEquals(this.requestBody, other.requestBody); } @Override public int hashCode() { return Utils.enhancedHash( - employeeId, xGustoAPIVersion, requestBody); + xGustoAPIVersion, employeeId, requestBody); } @Override public String toString() { return Utils.toString(PostV1EmployeesEmployeeIdHomeAddressesRequest.class, - "employeeId", employeeId, "xGustoAPIVersion", xGustoAPIVersion, + "employeeId", employeeId, "requestBody", requestBody); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String employeeId; - private Optional xGustoAPIVersion; + private String employeeId; + private PostV1EmployeesEmployeeIdHomeAddressesRequestBody requestBody; private Builder() { @@ -163,16 +163,6 @@ private Builder() { } - /** - * The UUID of the employee - */ - public Builder employeeId(String employeeId) { - Utils.checkNotNull(employeeId, "employeeId"); - this.employeeId = employeeId; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -196,6 +186,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String employeeId; private PostV1EmployeesEmployeeIdHomeAddressesRequestBody requestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -28,12 +28,6 @@ public class PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder { public PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder employeeId(String employeeId) { - Utils.checkNotNull(employeeId, "employeeId"); - this.employeeId = employeeId; - return this; - } public PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder xGustoAPIVersion(PostV1EmployeesEmployeeIdHomeAddressesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -47,6 +41,12 @@ public PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder xGustoAPIVersion(Opt return this; } + public PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder employeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + public PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder requestBody(PostV1EmployeesEmployeeIdHomeAddressesRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); this.requestBody = requestBody; @@ -59,8 +59,8 @@ private PostV1EmployeesEmployeeIdHomeAddressesRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PostV1EmployeesEmployeeIdHomeAddressesRequest request = new PostV1EmployeesEmployeeIdHomeAddressesRequest(employeeId, - xGustoAPIVersion, + PostV1EmployeesEmployeeIdHomeAddressesRequest request = new PostV1EmployeesEmployeeIdHomeAddressesRequest(xGustoAPIVersion, + employeeId, requestBody); return request; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1EmployeesEmployeeIdJobsRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1EmployeesEmployeeIdJobsRequest.java index 62353b3bb..a0e055063 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1EmployeesEmployeeIdJobsRequest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1EmployeesEmployeeIdJobsRequest.java @@ -17,12 +17,6 @@ public class PostV1EmployeesEmployeeIdJobsRequest { - /** - * The UUID of the employee - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=employee_id") - private String employeeId; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -31,35 +25,33 @@ public class PostV1EmployeesEmployeeIdJobsRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the employee + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=employee_id") + private String employeeId; + @SpeakeasyMetadata("request:mediaType=application/json") private JobsCreateRequestBody jobsCreateRequestBody; @JsonCreator public PostV1EmployeesEmployeeIdJobsRequest( - String employeeId, Optional xGustoAPIVersion, + String employeeId, JobsCreateRequestBody jobsCreateRequestBody) { - Utils.checkNotNull(employeeId, "employeeId"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(employeeId, "employeeId"); Utils.checkNotNull(jobsCreateRequestBody, "jobsCreateRequestBody"); - this.employeeId = employeeId; this.xGustoAPIVersion = xGustoAPIVersion; + this.employeeId = employeeId; this.jobsCreateRequestBody = jobsCreateRequestBody; } public PostV1EmployeesEmployeeIdJobsRequest( String employeeId, JobsCreateRequestBody jobsCreateRequestBody) { - this(employeeId, Optional.empty(), jobsCreateRequestBody); - } - - /** - * The UUID of the employee - */ - @JsonIgnore - public String employeeId() { - return employeeId; + this(Optional.empty(), employeeId, jobsCreateRequestBody); } /** @@ -73,6 +65,14 @@ public Optional xGustoAPIVe return (Optional) xGustoAPIVersion; } + /** + * The UUID of the employee + */ + @JsonIgnore + public String employeeId() { + return employeeId; + } + @JsonIgnore public JobsCreateRequestBody jobsCreateRequestBody() { return jobsCreateRequestBody; @@ -83,15 +83,6 @@ public static Builder builder() { } - /** - * The UUID of the employee - */ - public PostV1EmployeesEmployeeIdJobsRequest withEmployeeId(String employeeId) { - Utils.checkNotNull(employeeId, "employeeId"); - this.employeeId = employeeId; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -115,6 +106,15 @@ public PostV1EmployeesEmployeeIdJobsRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String employeeId; + private JobsCreateRequestBody jobsCreateRequestBody; private Builder() { @@ -164,16 +164,6 @@ private Builder() { } - /** - * The UUID of the employee - */ - public Builder employeeId(String employeeId) { - Utils.checkNotNull(employeeId, "employeeId"); - this.employeeId = employeeId; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -197,6 +187,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String employeeId; private JobsCreateRequestBody jobsCreateRequestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -29,12 +29,6 @@ public class PostV1EmployeesEmployeeIdJobsRequestBuilder { public PostV1EmployeesEmployeeIdJobsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostV1EmployeesEmployeeIdJobsRequestBuilder employeeId(String employeeId) { - Utils.checkNotNull(employeeId, "employeeId"); - this.employeeId = employeeId; - return this; - } public PostV1EmployeesEmployeeIdJobsRequestBuilder xGustoAPIVersion(PostV1EmployeesEmployeeIdJobsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -48,6 +42,12 @@ public PostV1EmployeesEmployeeIdJobsRequestBuilder xGustoAPIVersion(Optional rawResponse; /** - * created + * created a primary job with a null title */ private Optional job; @@ -87,7 +87,7 @@ public HttpResponse rawResponse() { } /** - * created + * created a primary job with a null title */ @SuppressWarnings("unchecked") @JsonIgnore @@ -128,7 +128,7 @@ public PostV1EmployeesEmployeeIdJobsResponse withRawResponse(HttpResponse job) { Utils.checkNotNull(job, "job"); @@ -225,7 +225,7 @@ public Builder rawResponse(HttpResponse rawResponse) { /** - * created + * created a primary job with a null title */ public Builder job(Job job) { Utils.checkNotNull(job, "job"); @@ -234,7 +234,7 @@ public Builder job(Job job) { } /** - * created + * created a primary job with a null title */ public Builder job(Optional job) { Utils.checkNotNull(job, "job"); diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.java new file mode 100644 index 000000000..e138adfd3 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion + * + *

    Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ +public enum PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion { + TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15("2026-06-15"); + + @JsonValue + private final String value; + + PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion o: PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest.java new file mode 100644 index 000000000..07379bc1a --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest.java @@ -0,0 +1,191 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2026_06_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2026_06_15.utils.SpeakeasyMetadata; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + + /** + * The UUID of the employee + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=employee_id") + private String employeeId; + + @JsonCreator + public PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest( + Optional xGustoAPIVersion, + String employeeId) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(employeeId, "employeeId"); + this.xGustoAPIVersion = xGustoAPIVersion; + this.employeeId = employeeId; + } + + public PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest( + String employeeId) { + this(Optional.empty(), employeeId); + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + + /** + * The UUID of the employee + */ + @JsonIgnore + public String employeeId() { + return employeeId; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest withXGustoAPIVersion(PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + /** + * The UUID of the employee + */ + public PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest withEmployeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest other = (PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest) o; + return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.employeeId, other.employeeId); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + xGustoAPIVersion, employeeId); + } + + @Override + public String toString() { + return Utils.toString(PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, + "employeeId", employeeId); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional xGustoAPIVersion; + + private String employeeId; + + private Builder() { + // force use of static builder() method + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + + /** + * The UUID of the employee + */ + public Builder employeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + + public PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest build() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + return new PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest( + xGustoAPIVersion, employeeId); + } + + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "X-Gusto-API-Version", + "\"2026-06-15\"", + new TypeReference>() {}); + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java new file mode 100644 index 000000000..7f1639ae0 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java @@ -0,0 +1,75 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import static com.gusto.embedded_api_v_2026_06_15.operations.Operations.RequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2026_06_15.SDKConfiguration; +import com.gusto.embedded_api_v_2026_06_15.operations.PostV1EmployeesEmployeeIdMemberPortalInvitations; +import com.gusto.embedded_api_v_2026_06_15.utils.Headers; +import com.gusto.embedded_api_v_2026_06_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.String; +import java.util.Optional; + +public class PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder { + + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2026-06-15\"", + new TypeReference>() {}); + private String employeeId; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder xGustoAPIVersion(PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder employeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + + + private PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest request = new PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest(xGustoAPIVersion, + employeeId); + + return request; + } + + public PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse call() { + + RequestOperation operation + = new PostV1EmployeesEmployeeIdMemberPortalInvitations.Sync(sdkConfiguration, _headers); + PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest request = buildRequest(); + + return operation.handleResponse(operation.doRequest(request)); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2026-06-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java new file mode 100644 index 000000000..2a77acbaa --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java @@ -0,0 +1,181 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2026_06_15.utils.Response; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.io.InputStream; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.net.http.HttpResponse; + + +public class PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse implements Response { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + @JsonCreator + public PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse other = (PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse); + } + + @Override + public String toString() { + return Utils.toString(PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + public PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse build() { + + return new PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse( + contentType, statusCode, rawResponse); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1EmployeesEmployeeIdWorkAddressesRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1EmployeesEmployeeIdWorkAddressesRequest.java index f2842c6ce..eddcdff1c 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1EmployeesEmployeeIdWorkAddressesRequest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1EmployeesEmployeeIdWorkAddressesRequest.java @@ -16,12 +16,6 @@ public class PostV1EmployeesEmployeeIdWorkAddressesRequest { - /** - * The UUID of the employee - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=employee_id") - private String employeeId; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,35 +24,33 @@ public class PostV1EmployeesEmployeeIdWorkAddressesRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the employee + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=employee_id") + private String employeeId; + @SpeakeasyMetadata("request:mediaType=application/json") private PostV1EmployeesEmployeeIdWorkAddressesRequestBody requestBody; @JsonCreator public PostV1EmployeesEmployeeIdWorkAddressesRequest( - String employeeId, Optional xGustoAPIVersion, + String employeeId, PostV1EmployeesEmployeeIdWorkAddressesRequestBody requestBody) { - Utils.checkNotNull(employeeId, "employeeId"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(employeeId, "employeeId"); Utils.checkNotNull(requestBody, "requestBody"); - this.employeeId = employeeId; this.xGustoAPIVersion = xGustoAPIVersion; + this.employeeId = employeeId; this.requestBody = requestBody; } public PostV1EmployeesEmployeeIdWorkAddressesRequest( String employeeId, PostV1EmployeesEmployeeIdWorkAddressesRequestBody requestBody) { - this(employeeId, Optional.empty(), requestBody); - } - - /** - * The UUID of the employee - */ - @JsonIgnore - public String employeeId() { - return employeeId; + this(Optional.empty(), employeeId, requestBody); } /** @@ -72,6 +64,14 @@ public Optional xG return (Optional) xGustoAPIVersion; } + /** + * The UUID of the employee + */ + @JsonIgnore + public String employeeId() { + return employeeId; + } + @JsonIgnore public PostV1EmployeesEmployeeIdWorkAddressesRequestBody requestBody() { return requestBody; @@ -82,15 +82,6 @@ public static Builder builder() { } - /** - * The UUID of the employee - */ - public PostV1EmployeesEmployeeIdWorkAddressesRequest withEmployeeId(String employeeId) { - Utils.checkNotNull(employeeId, "employeeId"); - this.employeeId = employeeId; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -114,6 +105,15 @@ public PostV1EmployeesEmployeeIdWorkAddressesRequest withXGustoAPIVersion(Option return this; } + /** + * The UUID of the employee + */ + public PostV1EmployeesEmployeeIdWorkAddressesRequest withEmployeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + public PostV1EmployeesEmployeeIdWorkAddressesRequest withRequestBody(PostV1EmployeesEmployeeIdWorkAddressesRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); this.requestBody = requestBody; @@ -130,32 +130,32 @@ public boolean equals(java.lang.Object o) { } PostV1EmployeesEmployeeIdWorkAddressesRequest other = (PostV1EmployeesEmployeeIdWorkAddressesRequest) o; return - Utils.enhancedDeepEquals(this.employeeId, other.employeeId) && Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.employeeId, other.employeeId) && Utils.enhancedDeepEquals(this.requestBody, other.requestBody); } @Override public int hashCode() { return Utils.enhancedHash( - employeeId, xGustoAPIVersion, requestBody); + xGustoAPIVersion, employeeId, requestBody); } @Override public String toString() { return Utils.toString(PostV1EmployeesEmployeeIdWorkAddressesRequest.class, - "employeeId", employeeId, "xGustoAPIVersion", xGustoAPIVersion, + "employeeId", employeeId, "requestBody", requestBody); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String employeeId; - private Optional xGustoAPIVersion; + private String employeeId; + private PostV1EmployeesEmployeeIdWorkAddressesRequestBody requestBody; private Builder() { @@ -163,16 +163,6 @@ private Builder() { } - /** - * The UUID of the employee - */ - public Builder employeeId(String employeeId) { - Utils.checkNotNull(employeeId, "employeeId"); - this.employeeId = employeeId; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -196,6 +186,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String employeeId; private PostV1EmployeesEmployeeIdWorkAddressesRequestBody requestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -28,12 +28,6 @@ public class PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder { public PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder employeeId(String employeeId) { - Utils.checkNotNull(employeeId, "employeeId"); - this.employeeId = employeeId; - return this; - } public PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder xGustoAPIVersion(PostV1EmployeesEmployeeIdWorkAddressesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -47,6 +41,12 @@ public PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder xGustoAPIVersion(Opt return this; } + public PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder employeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + public PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder requestBody(PostV1EmployeesEmployeeIdWorkAddressesRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); this.requestBody = requestBody; @@ -59,8 +59,8 @@ private PostV1EmployeesEmployeeIdWorkAddressesRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PostV1EmployeesEmployeeIdWorkAddressesRequest request = new PostV1EmployeesEmployeeIdWorkAddressesRequest(employeeId, - xGustoAPIVersion, + PostV1EmployeesEmployeeIdWorkAddressesRequest request = new PostV1EmployeesEmployeeIdWorkAddressesRequest(xGustoAPIVersion, + employeeId, requestBody); return request; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.java index c30bacb2b..9f6df564a 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.java @@ -17,12 +17,6 @@ public class PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest { - /** - * The UUID of the employee - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=employee_uuid") - private String employeeUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -31,35 +25,33 @@ public class PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the employee + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=employee_uuid") + private String employeeUuid; + @SpeakeasyMetadata("request:mediaType=application/json") private EmployeeSection603HighEarnerStatusCreateRequest employeeSection603HighEarnerStatusCreateRequest; @JsonCreator public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest( - String employeeUuid, Optional xGustoAPIVersion, + String employeeUuid, EmployeeSection603HighEarnerStatusCreateRequest employeeSection603HighEarnerStatusCreateRequest) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(employeeUuid, "employeeUuid"); Utils.checkNotNull(employeeSection603HighEarnerStatusCreateRequest, "employeeSection603HighEarnerStatusCreateRequest"); - this.employeeUuid = employeeUuid; this.xGustoAPIVersion = xGustoAPIVersion; + this.employeeUuid = employeeUuid; this.employeeSection603HighEarnerStatusCreateRequest = employeeSection603HighEarnerStatusCreateRequest; } public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest( String employeeUuid, EmployeeSection603HighEarnerStatusCreateRequest employeeSection603HighEarnerStatusCreateRequest) { - this(employeeUuid, Optional.empty(), employeeSection603HighEarnerStatusCreateRequest); - } - - /** - * The UUID of the employee - */ - @JsonIgnore - public String employeeUuid() { - return employeeUuid; + this(Optional.empty(), employeeUuid, employeeSection603HighEarnerStatusCreateRequest); } /** @@ -73,6 +65,14 @@ public Optional) xGustoAPIVersion; } + /** + * The UUID of the employee + */ + @JsonIgnore + public String employeeUuid() { + return employeeUuid; + } + @JsonIgnore public EmployeeSection603HighEarnerStatusCreateRequest employeeSection603HighEarnerStatusCreateRequest() { return employeeSection603HighEarnerStatusCreateRequest; @@ -83,15 +83,6 @@ public static Builder builder() { } - /** - * The UUID of the employee - */ - public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest withEmployeeUuid(String employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = employeeUuid; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -115,6 +106,15 @@ public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest withXGusto return this; } + /** + * The UUID of the employee + */ + public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest withEmployeeUuid(String employeeUuid) { + Utils.checkNotNull(employeeUuid, "employeeUuid"); + this.employeeUuid = employeeUuid; + return this; + } + public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest withEmployeeSection603HighEarnerStatusCreateRequest(EmployeeSection603HighEarnerStatusCreateRequest employeeSection603HighEarnerStatusCreateRequest) { Utils.checkNotNull(employeeSection603HighEarnerStatusCreateRequest, "employeeSection603HighEarnerStatusCreateRequest"); this.employeeSection603HighEarnerStatusCreateRequest = employeeSection603HighEarnerStatusCreateRequest; @@ -131,32 +131,32 @@ public boolean equals(java.lang.Object o) { } PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest other = (PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest) o; return - Utils.enhancedDeepEquals(this.employeeUuid, other.employeeUuid) && Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.employeeUuid, other.employeeUuid) && Utils.enhancedDeepEquals(this.employeeSection603HighEarnerStatusCreateRequest, other.employeeSection603HighEarnerStatusCreateRequest); } @Override public int hashCode() { return Utils.enhancedHash( - employeeUuid, xGustoAPIVersion, employeeSection603HighEarnerStatusCreateRequest); + xGustoAPIVersion, employeeUuid, employeeSection603HighEarnerStatusCreateRequest); } @Override public String toString() { return Utils.toString(PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest.class, - "employeeUuid", employeeUuid, "xGustoAPIVersion", xGustoAPIVersion, + "employeeUuid", employeeUuid, "employeeSection603HighEarnerStatusCreateRequest", employeeSection603HighEarnerStatusCreateRequest); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String employeeUuid; - private Optional xGustoAPIVersion; + private String employeeUuid; + private EmployeeSection603HighEarnerStatusCreateRequest employeeSection603HighEarnerStatusCreateRequest; private Builder() { @@ -164,16 +164,6 @@ private Builder() { } - /** - * The UUID of the employee - */ - public Builder employeeUuid(String employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = employeeUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -197,6 +187,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String employeeUuid; private EmployeeSection603HighEarnerStatusCreateRequest employeeSection603HighEarnerStatusCreateRequest; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -29,12 +29,6 @@ public class PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuild public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder employeeUuid(String employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = employeeUuid; - return this; - } public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder xGustoAPIVersion(PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -48,6 +42,12 @@ public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder xGu return this; } + public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder employeeUuid(String employeeUuid) { + Utils.checkNotNull(employeeUuid, "employeeUuid"); + this.employeeUuid = employeeUuid; + return this; + } + public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder employeeSection603HighEarnerStatusCreateRequest(EmployeeSection603HighEarnerStatusCreateRequest employeeSection603HighEarnerStatusCreateRequest) { Utils.checkNotNull(employeeSection603HighEarnerStatusCreateRequest, "employeeSection603HighEarnerStatusCreateRequest"); this.employeeSection603HighEarnerStatusCreateRequest = employeeSection603HighEarnerStatusCreateRequest; @@ -60,8 +60,8 @@ private PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest buildRequ xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest request = new PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest(employeeUuid, - xGustoAPIVersion, + PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest request = new PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest(xGustoAPIVersion, + employeeUuid, employeeSection603HighEarnerStatusCreateRequest); return request; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest.java index 7a58bb23f..54068a475 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest.java @@ -17,12 +17,6 @@ public class PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest { - /** - * The UUID of the company - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") - private String companyUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -31,35 +25,33 @@ public class PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") + private String companyUuid; + @SpeakeasyMetadata("request:mediaType=application/json") private PartnerManagedCompanyAcceptTermsOfServiceRequest partnerManagedCompanyAcceptTermsOfServiceRequest; @JsonCreator public PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest( - String companyUuid, Optional xGustoAPIVersion, + String companyUuid, PartnerManagedCompanyAcceptTermsOfServiceRequest partnerManagedCompanyAcceptTermsOfServiceRequest) { - Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(partnerManagedCompanyAcceptTermsOfServiceRequest, "partnerManagedCompanyAcceptTermsOfServiceRequest"); - this.companyUuid = companyUuid; this.xGustoAPIVersion = xGustoAPIVersion; + this.companyUuid = companyUuid; this.partnerManagedCompanyAcceptTermsOfServiceRequest = partnerManagedCompanyAcceptTermsOfServiceRequest; } public PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest( String companyUuid, PartnerManagedCompanyAcceptTermsOfServiceRequest partnerManagedCompanyAcceptTermsOfServiceRequest) { - this(companyUuid, Optional.empty(), partnerManagedCompanyAcceptTermsOfServiceRequest); - } - - /** - * The UUID of the company - */ - @JsonIgnore - public String companyUuid() { - return companyUuid; + this(Optional.empty(), companyUuid, partnerManagedCompanyAcceptTermsOfServiceRequest); } /** @@ -73,6 +65,14 @@ public Optional) xGustoAPIVersion; } + /** + * The UUID of the company + */ + @JsonIgnore + public String companyUuid() { + return companyUuid; + } + @JsonIgnore public PartnerManagedCompanyAcceptTermsOfServiceRequest partnerManagedCompanyAcceptTermsOfServiceRequest() { return partnerManagedCompanyAcceptTermsOfServiceRequest; @@ -83,15 +83,6 @@ public static Builder builder() { } - /** - * The UUID of the company - */ - public PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest withCompanyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -115,6 +106,15 @@ public PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest withXGustoA return this; } + /** + * The UUID of the company + */ + public PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + public PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest withPartnerManagedCompanyAcceptTermsOfServiceRequest(PartnerManagedCompanyAcceptTermsOfServiceRequest partnerManagedCompanyAcceptTermsOfServiceRequest) { Utils.checkNotNull(partnerManagedCompanyAcceptTermsOfServiceRequest, "partnerManagedCompanyAcceptTermsOfServiceRequest"); this.partnerManagedCompanyAcceptTermsOfServiceRequest = partnerManagedCompanyAcceptTermsOfServiceRequest; @@ -131,32 +131,32 @@ public boolean equals(java.lang.Object o) { } PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest other = (PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest) o; return - Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && Utils.enhancedDeepEquals(this.partnerManagedCompanyAcceptTermsOfServiceRequest, other.partnerManagedCompanyAcceptTermsOfServiceRequest); } @Override public int hashCode() { return Utils.enhancedHash( - companyUuid, xGustoAPIVersion, partnerManagedCompanyAcceptTermsOfServiceRequest); + xGustoAPIVersion, companyUuid, partnerManagedCompanyAcceptTermsOfServiceRequest); } @Override public String toString() { return Utils.toString(PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest.class, - "companyUuid", companyUuid, "xGustoAPIVersion", xGustoAPIVersion, + "companyUuid", companyUuid, "partnerManagedCompanyAcceptTermsOfServiceRequest", partnerManagedCompanyAcceptTermsOfServiceRequest); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String companyUuid; - private Optional xGustoAPIVersion; + private String companyUuid; + private PartnerManagedCompanyAcceptTermsOfServiceRequest partnerManagedCompanyAcceptTermsOfServiceRequest; private Builder() { @@ -164,16 +164,6 @@ private Builder() { } - /** - * The UUID of the company - */ - public Builder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -197,6 +187,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String companyUuid; private PartnerManagedCompanyAcceptTermsOfServiceRequest partnerManagedCompanyAcceptTermsOfServiceRequest; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -29,12 +29,6 @@ public class PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilde public PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilder xGustoAPIVersion(PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -48,6 +42,12 @@ public PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilder xGus return this; } + public PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + public PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilder partnerManagedCompanyAcceptTermsOfServiceRequest(PartnerManagedCompanyAcceptTermsOfServiceRequest partnerManagedCompanyAcceptTermsOfServiceRequest) { Utils.checkNotNull(partnerManagedCompanyAcceptTermsOfServiceRequest, "partnerManagedCompanyAcceptTermsOfServiceRequest"); this.partnerManagedCompanyAcceptTermsOfServiceRequest = partnerManagedCompanyAcceptTermsOfServiceRequest; @@ -60,8 +60,8 @@ private PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest buildReque xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest request = new PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest(companyUuid, - xGustoAPIVersion, + PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest request = new PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest(xGustoAPIVersion, + companyUuid, partnerManagedCompanyAcceptTermsOfServiceRequest); return request; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1PayrollBatchesHeaderXGustoAPIVersion.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1PayrollBatchesHeaderXGustoAPIVersion.java new file mode 100644 index 000000000..f6c13c27e --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1PayrollBatchesHeaderXGustoAPIVersion.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PostV1PayrollBatchesHeaderXGustoAPIVersion + * + *

    Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ +public enum PostV1PayrollBatchesHeaderXGustoAPIVersion { + TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15("2026-06-15"); + + @JsonValue + private final String value; + + PostV1PayrollBatchesHeaderXGustoAPIVersion(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PostV1PayrollBatchesHeaderXGustoAPIVersion o: PostV1PayrollBatchesHeaderXGustoAPIVersion.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1PayrollBatchesRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1PayrollBatchesRequest.java new file mode 100644 index 000000000..a2e030209 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1PayrollBatchesRequest.java @@ -0,0 +1,180 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2026_06_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2026_06_15.utils.SpeakeasyMetadata; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class PostV1PayrollBatchesRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + + + @SpeakeasyMetadata("request:mediaType=application/json") + private PostV1PayrollBatchesRequestBody requestBody; + + @JsonCreator + public PostV1PayrollBatchesRequest( + Optional xGustoAPIVersion, + PostV1PayrollBatchesRequestBody requestBody) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(requestBody, "requestBody"); + this.xGustoAPIVersion = xGustoAPIVersion; + this.requestBody = requestBody; + } + + public PostV1PayrollBatchesRequest( + PostV1PayrollBatchesRequestBody requestBody) { + this(Optional.empty(), requestBody); + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + + @JsonIgnore + public PostV1PayrollBatchesRequestBody requestBody() { + return requestBody; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public PostV1PayrollBatchesRequest withXGustoAPIVersion(PostV1PayrollBatchesHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public PostV1PayrollBatchesRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public PostV1PayrollBatchesRequest withRequestBody(PostV1PayrollBatchesRequestBody requestBody) { + Utils.checkNotNull(requestBody, "requestBody"); + this.requestBody = requestBody; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PostV1PayrollBatchesRequest other = (PostV1PayrollBatchesRequest) o; + return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.requestBody, other.requestBody); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + xGustoAPIVersion, requestBody); + } + + @Override + public String toString() { + return Utils.toString(PostV1PayrollBatchesRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, + "requestBody", requestBody); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional xGustoAPIVersion; + + private PostV1PayrollBatchesRequestBody requestBody; + + private Builder() { + // force use of static builder() method + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(PostV1PayrollBatchesHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + + public Builder requestBody(PostV1PayrollBatchesRequestBody requestBody) { + Utils.checkNotNull(requestBody, "requestBody"); + this.requestBody = requestBody; + return this; + } + + public PostV1PayrollBatchesRequest build() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + return new PostV1PayrollBatchesRequest( + xGustoAPIVersion, requestBody); + } + + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "X-Gusto-API-Version", + "\"2026-06-15\"", + new TypeReference>() {}); + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1PayrollBatchesRequestBody.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1PayrollBatchesRequestBody.java new file mode 100644 index 000000000..5e746c2e4 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1PayrollBatchesRequestBody.java @@ -0,0 +1,186 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.util.List; + + +public class PostV1PayrollBatchesRequestBody { + /** + * A partner-generated unique identifier to ensure idempotency of the batch request. Scoped per + * partner. + */ + @JsonProperty("idempotency_key") + private String idempotencyKey; + + /** + * The action to perform on the batch. Only `cancel` is supported. + */ + @JsonProperty("batch_action") + private BatchAction batchAction; + + /** + * Array of payrolls to cancel. Maximum 100 payrolls per request. + */ + @JsonProperty("batch") + private List batch; + + @JsonCreator + public PostV1PayrollBatchesRequestBody( + @JsonProperty("idempotency_key") String idempotencyKey, + @JsonProperty("batch_action") BatchAction batchAction, + @JsonProperty("batch") List batch) { + Utils.checkNotNull(idempotencyKey, "idempotencyKey"); + Utils.checkNotNull(batchAction, "batchAction"); + Utils.checkNotNull(batch, "batch"); + this.idempotencyKey = idempotencyKey; + this.batchAction = batchAction; + this.batch = batch; + } + + /** + * A partner-generated unique identifier to ensure idempotency of the batch request. Scoped per + * partner. + */ + @JsonIgnore + public String idempotencyKey() { + return idempotencyKey; + } + + /** + * The action to perform on the batch. Only `cancel` is supported. + */ + @JsonIgnore + public BatchAction batchAction() { + return batchAction; + } + + /** + * Array of payrolls to cancel. Maximum 100 payrolls per request. + */ + @JsonIgnore + public List batch() { + return batch; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * A partner-generated unique identifier to ensure idempotency of the batch request. Scoped per + * partner. + */ + public PostV1PayrollBatchesRequestBody withIdempotencyKey(String idempotencyKey) { + Utils.checkNotNull(idempotencyKey, "idempotencyKey"); + this.idempotencyKey = idempotencyKey; + return this; + } + + /** + * The action to perform on the batch. Only `cancel` is supported. + */ + public PostV1PayrollBatchesRequestBody withBatchAction(BatchAction batchAction) { + Utils.checkNotNull(batchAction, "batchAction"); + this.batchAction = batchAction; + return this; + } + + /** + * Array of payrolls to cancel. Maximum 100 payrolls per request. + */ + public PostV1PayrollBatchesRequestBody withBatch(List batch) { + Utils.checkNotNull(batch, "batch"); + this.batch = batch; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PostV1PayrollBatchesRequestBody other = (PostV1PayrollBatchesRequestBody) o; + return + Utils.enhancedDeepEquals(this.idempotencyKey, other.idempotencyKey) && + Utils.enhancedDeepEquals(this.batchAction, other.batchAction) && + Utils.enhancedDeepEquals(this.batch, other.batch); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + idempotencyKey, batchAction, batch); + } + + @Override + public String toString() { + return Utils.toString(PostV1PayrollBatchesRequestBody.class, + "idempotencyKey", idempotencyKey, + "batchAction", batchAction, + "batch", batch); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String idempotencyKey; + + private BatchAction batchAction; + + private List batch; + + private Builder() { + // force use of static builder() method + } + + + /** + * A partner-generated unique identifier to ensure idempotency of the batch request. Scoped per + * partner. + */ + public Builder idempotencyKey(String idempotencyKey) { + Utils.checkNotNull(idempotencyKey, "idempotencyKey"); + this.idempotencyKey = idempotencyKey; + return this; + } + + + /** + * The action to perform on the batch. Only `cancel` is supported. + */ + public Builder batchAction(BatchAction batchAction) { + Utils.checkNotNull(batchAction, "batchAction"); + this.batchAction = batchAction; + return this; + } + + + /** + * Array of payrolls to cancel. Maximum 100 payrolls per request. + */ + public Builder batch(List batch) { + Utils.checkNotNull(batch, "batch"); + this.batch = batch; + return this; + } + + public PostV1PayrollBatchesRequestBody build() { + + return new PostV1PayrollBatchesRequestBody( + idempotencyKey, batchAction, batch); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1PayrollBatchesRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1PayrollBatchesRequestBuilder.java new file mode 100644 index 000000000..786187fab --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1PayrollBatchesRequestBuilder.java @@ -0,0 +1,81 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import static com.gusto.embedded_api_v_2026_06_15.operations.Operations.RequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2026_06_15.SDKConfiguration; +import com.gusto.embedded_api_v_2026_06_15.operations.PostV1PayrollBatches; +import com.gusto.embedded_api_v_2026_06_15.utils.Headers; +import com.gusto.embedded_api_v_2026_06_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.util.Optional; + +public class PostV1PayrollBatchesRequestBuilder { + + private PostV1PayrollBatchesSecurity security; + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2026-06-15\"", + new TypeReference>() {}); + private PostV1PayrollBatchesRequestBody requestBody; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public PostV1PayrollBatchesRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public PostV1PayrollBatchesRequestBuilder security(PostV1PayrollBatchesSecurity security) { + Utils.checkNotNull(security, "security"); + this.security = security; + return this; + } + + public PostV1PayrollBatchesRequestBuilder xGustoAPIVersion(PostV1PayrollBatchesHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public PostV1PayrollBatchesRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public PostV1PayrollBatchesRequestBuilder requestBody(PostV1PayrollBatchesRequestBody requestBody) { + Utils.checkNotNull(requestBody, "requestBody"); + this.requestBody = requestBody; + return this; + } + + + private PostV1PayrollBatchesRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + PostV1PayrollBatchesRequest request = new PostV1PayrollBatchesRequest(xGustoAPIVersion, + requestBody); + + return request; + } + + public PostV1PayrollBatchesResponse call() { + + RequestOperation operation + = new PostV1PayrollBatches.Sync(sdkConfiguration, security, _headers); + PostV1PayrollBatchesRequest request = buildRequest(); + + return operation.handleResponse(operation.doRequest(request)); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2026-06-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1PayrollBatchesResponse.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1PayrollBatchesResponse.java new file mode 100644 index 000000000..f09f05cd5 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1PayrollBatchesResponse.java @@ -0,0 +1,253 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2026_06_15.models.components.PayrollBatch; +import com.gusto.embedded_api_v_2026_06_15.utils.Response; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.io.InputStream; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.Optional; + + +public class PostV1PayrollBatchesResponse implements Response { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * created + */ + private Optional payrollBatch; + + @JsonCreator + public PostV1PayrollBatchesResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional payrollBatch) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(payrollBatch, "payrollBatch"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.payrollBatch = payrollBatch; + } + + public PostV1PayrollBatchesResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * created + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional payrollBatch() { + return (Optional) payrollBatch; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public PostV1PayrollBatchesResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public PostV1PayrollBatchesResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public PostV1PayrollBatchesResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * created + */ + public PostV1PayrollBatchesResponse withPayrollBatch(PayrollBatch payrollBatch) { + Utils.checkNotNull(payrollBatch, "payrollBatch"); + this.payrollBatch = Optional.ofNullable(payrollBatch); + return this; + } + + + /** + * created + */ + public PostV1PayrollBatchesResponse withPayrollBatch(Optional payrollBatch) { + Utils.checkNotNull(payrollBatch, "payrollBatch"); + this.payrollBatch = payrollBatch; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PostV1PayrollBatchesResponse other = (PostV1PayrollBatchesResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.payrollBatch, other.payrollBatch); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + payrollBatch); + } + + @Override + public String toString() { + return Utils.toString(PostV1PayrollBatchesResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "payrollBatch", payrollBatch); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional payrollBatch = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * created + */ + public Builder payrollBatch(PayrollBatch payrollBatch) { + Utils.checkNotNull(payrollBatch, "payrollBatch"); + this.payrollBatch = Optional.ofNullable(payrollBatch); + return this; + } + + /** + * created + */ + public Builder payrollBatch(Optional payrollBatch) { + Utils.checkNotNull(payrollBatch, "payrollBatch"); + this.payrollBatch = payrollBatch; + return this; + } + + public PostV1PayrollBatchesResponse build() { + + return new PostV1PayrollBatchesResponse( + contentType, statusCode, rawResponse, + payrollBatch); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1PayrollBatchesSecurity.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1PayrollBatchesSecurity.java new file mode 100644 index 000000000..815c6b761 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PostV1PayrollBatchesSecurity.java @@ -0,0 +1,91 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2026_06_15.utils.HasSecurity; +import com.gusto.embedded_api_v_2026_06_15.utils.SpeakeasyMetadata; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Override; +import java.lang.String; + + +public class PostV1PayrollBatchesSecurity implements HasSecurity { + + @SpeakeasyMetadata("security:scheme=true,type=http,subtype=bearer,name=Authorization") + private String systemAccessAuth; + + @JsonCreator + public PostV1PayrollBatchesSecurity( + String systemAccessAuth) { + Utils.checkNotNull(systemAccessAuth, "systemAccessAuth"); + this.systemAccessAuth = systemAccessAuth; + } + + @JsonIgnore + public String systemAccessAuth() { + return systemAccessAuth; + } + + public static Builder builder() { + return new Builder(); + } + + + public PostV1PayrollBatchesSecurity withSystemAccessAuth(String systemAccessAuth) { + Utils.checkNotNull(systemAccessAuth, "systemAccessAuth"); + this.systemAccessAuth = systemAccessAuth; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PostV1PayrollBatchesSecurity other = (PostV1PayrollBatchesSecurity) o; + return + Utils.enhancedDeepEquals(this.systemAccessAuth, other.systemAccessAuth); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + systemAccessAuth); + } + + @Override + public String toString() { + return Utils.toString(PostV1PayrollBatchesSecurity.class, + "systemAccessAuth", systemAccessAuth); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String systemAccessAuth; + + private Builder() { + // force use of static builder() method + } + + + public Builder systemAccessAuth(String systemAccessAuth) { + Utils.checkNotNull(systemAccessAuth, "systemAccessAuth"); + this.systemAccessAuth = systemAccessAuth; + return this; + } + + public PostV1PayrollBatchesSecurity build() { + + return new PostV1PayrollBatchesSecurity( + systemAccessAuth); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutAddPeopleToDepartmentRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutAddPeopleToDepartmentRequest.java index ca6a62259..c7cc64ba1 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutAddPeopleToDepartmentRequest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutAddPeopleToDepartmentRequest.java @@ -17,12 +17,6 @@ public class PutAddPeopleToDepartmentRequest { - /** - * The UUID of the department - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=department_uuid") - private String departmentUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -31,35 +25,33 @@ public class PutAddPeopleToDepartmentRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the department + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=department_uuid") + private String departmentUuid; + @SpeakeasyMetadata("request:mediaType=application/json") private DepartmentPeopleRequestBody departmentPeopleRequestBody; @JsonCreator public PutAddPeopleToDepartmentRequest( - String departmentUuid, Optional xGustoAPIVersion, + String departmentUuid, DepartmentPeopleRequestBody departmentPeopleRequestBody) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(departmentUuid, "departmentUuid"); Utils.checkNotNull(departmentPeopleRequestBody, "departmentPeopleRequestBody"); - this.departmentUuid = departmentUuid; this.xGustoAPIVersion = xGustoAPIVersion; + this.departmentUuid = departmentUuid; this.departmentPeopleRequestBody = departmentPeopleRequestBody; } public PutAddPeopleToDepartmentRequest( String departmentUuid, DepartmentPeopleRequestBody departmentPeopleRequestBody) { - this(departmentUuid, Optional.empty(), departmentPeopleRequestBody); - } - - /** - * The UUID of the department - */ - @JsonIgnore - public String departmentUuid() { - return departmentUuid; + this(Optional.empty(), departmentUuid, departmentPeopleRequestBody); } /** @@ -73,6 +65,14 @@ public Optional xGustoAPIVersion return (Optional) xGustoAPIVersion; } + /** + * The UUID of the department + */ + @JsonIgnore + public String departmentUuid() { + return departmentUuid; + } + @JsonIgnore public DepartmentPeopleRequestBody departmentPeopleRequestBody() { return departmentPeopleRequestBody; @@ -83,15 +83,6 @@ public static Builder builder() { } - /** - * The UUID of the department - */ - public PutAddPeopleToDepartmentRequest withDepartmentUuid(String departmentUuid) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); - this.departmentUuid = departmentUuid; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -115,6 +106,15 @@ public PutAddPeopleToDepartmentRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String departmentUuid; + private DepartmentPeopleRequestBody departmentPeopleRequestBody; private Builder() { @@ -164,16 +164,6 @@ private Builder() { } - /** - * The UUID of the department - */ - public Builder departmentUuid(String departmentUuid) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); - this.departmentUuid = departmentUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -197,6 +187,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String departmentUuid; private DepartmentPeopleRequestBody departmentPeopleRequestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -29,12 +29,6 @@ public class PutAddPeopleToDepartmentRequestBuilder { public PutAddPeopleToDepartmentRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutAddPeopleToDepartmentRequestBuilder departmentUuid(String departmentUuid) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); - this.departmentUuid = departmentUuid; - return this; - } public PutAddPeopleToDepartmentRequestBuilder xGustoAPIVersion(PutAddPeopleToDepartmentHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -48,6 +42,12 @@ public PutAddPeopleToDepartmentRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion; + /** + * The UUID of the department + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=department_uuid") + private String departmentUuid; + @SpeakeasyMetadata("request:mediaType=application/json") private DepartmentUpdateRequestBody departmentUpdateRequestBody; @JsonCreator public PutDepartmentsRequest( - String departmentUuid, Optional xGustoAPIVersion, + String departmentUuid, DepartmentUpdateRequestBody departmentUpdateRequestBody) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(departmentUuid, "departmentUuid"); Utils.checkNotNull(departmentUpdateRequestBody, "departmentUpdateRequestBody"); - this.departmentUuid = departmentUuid; this.xGustoAPIVersion = xGustoAPIVersion; + this.departmentUuid = departmentUuid; this.departmentUpdateRequestBody = departmentUpdateRequestBody; } public PutDepartmentsRequest( String departmentUuid, DepartmentUpdateRequestBody departmentUpdateRequestBody) { - this(departmentUuid, Optional.empty(), departmentUpdateRequestBody); - } - - /** - * The UUID of the department - */ - @JsonIgnore - public String departmentUuid() { - return departmentUuid; + this(Optional.empty(), departmentUuid, departmentUpdateRequestBody); } /** @@ -73,6 +65,14 @@ public Optional xGustoAPIVersion() { return (Optional) xGustoAPIVersion; } + /** + * The UUID of the department + */ + @JsonIgnore + public String departmentUuid() { + return departmentUuid; + } + @JsonIgnore public DepartmentUpdateRequestBody departmentUpdateRequestBody() { return departmentUpdateRequestBody; @@ -83,15 +83,6 @@ public static Builder builder() { } - /** - * The UUID of the department - */ - public PutDepartmentsRequest withDepartmentUuid(String departmentUuid) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); - this.departmentUuid = departmentUuid; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -115,6 +106,15 @@ public PutDepartmentsRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String departmentUuid; + private DepartmentUpdateRequestBody departmentUpdateRequestBody; private Builder() { @@ -164,16 +164,6 @@ private Builder() { } - /** - * The UUID of the department - */ - public Builder departmentUuid(String departmentUuid) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); - this.departmentUuid = departmentUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -197,6 +187,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String departmentUuid; private DepartmentUpdateRequestBody departmentUpdateRequestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -29,12 +29,6 @@ public class PutDepartmentsRequestBuilder { public PutDepartmentsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutDepartmentsRequestBuilder departmentUuid(String departmentUuid) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); - this.departmentUuid = departmentUuid; - return this; - } public PutDepartmentsRequestBuilder xGustoAPIVersion(PutDepartmentsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -48,6 +42,12 @@ public PutDepartmentsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion; + /** + * The UUID of the department + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=department_uuid") + private String departmentUuid; + @SpeakeasyMetadata("request:mediaType=application/json") private DepartmentPeopleRequestBody departmentPeopleRequestBody; @JsonCreator public PutRemovePeopleFromDepartmentRequest( - String departmentUuid, Optional xGustoAPIVersion, + String departmentUuid, DepartmentPeopleRequestBody departmentPeopleRequestBody) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(departmentUuid, "departmentUuid"); Utils.checkNotNull(departmentPeopleRequestBody, "departmentPeopleRequestBody"); - this.departmentUuid = departmentUuid; this.xGustoAPIVersion = xGustoAPIVersion; + this.departmentUuid = departmentUuid; this.departmentPeopleRequestBody = departmentPeopleRequestBody; } public PutRemovePeopleFromDepartmentRequest( String departmentUuid, DepartmentPeopleRequestBody departmentPeopleRequestBody) { - this(departmentUuid, Optional.empty(), departmentPeopleRequestBody); - } - - /** - * The UUID of the department - */ - @JsonIgnore - public String departmentUuid() { - return departmentUuid; + this(Optional.empty(), departmentUuid, departmentPeopleRequestBody); } /** @@ -73,6 +65,14 @@ public Optional xGustoAPIVe return (Optional) xGustoAPIVersion; } + /** + * The UUID of the department + */ + @JsonIgnore + public String departmentUuid() { + return departmentUuid; + } + @JsonIgnore public DepartmentPeopleRequestBody departmentPeopleRequestBody() { return departmentPeopleRequestBody; @@ -83,15 +83,6 @@ public static Builder builder() { } - /** - * The UUID of the department - */ - public PutRemovePeopleFromDepartmentRequest withDepartmentUuid(String departmentUuid) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); - this.departmentUuid = departmentUuid; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -115,6 +106,15 @@ public PutRemovePeopleFromDepartmentRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String departmentUuid; + private DepartmentPeopleRequestBody departmentPeopleRequestBody; private Builder() { @@ -164,16 +164,6 @@ private Builder() { } - /** - * The UUID of the department - */ - public Builder departmentUuid(String departmentUuid) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); - this.departmentUuid = departmentUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -197,6 +187,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String departmentUuid; private DepartmentPeopleRequestBody departmentPeopleRequestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -29,12 +29,6 @@ public class PutRemovePeopleFromDepartmentRequestBuilder { public PutRemovePeopleFromDepartmentRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutRemovePeopleFromDepartmentRequestBuilder departmentUuid(String departmentUuid) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); - this.departmentUuid = departmentUuid; - return this; - } public PutRemovePeopleFromDepartmentRequestBuilder xGustoAPIVersion(PutRemovePeopleFromDepartmentHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -48,6 +42,12 @@ public PutRemovePeopleFromDepartmentRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion; + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_id") + private String companyId; + @SpeakeasyMetadata("request:mediaType=application/json") private FederalTaxDetailsUpdate federalTaxDetailsUpdate; @JsonCreator public PutV1CompaniesCompanyIdFederalTaxDetailsRequest( - String companyId, Optional xGustoAPIVersion, + String companyId, FederalTaxDetailsUpdate federalTaxDetailsUpdate) { - Utils.checkNotNull(companyId, "companyId"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(companyId, "companyId"); Utils.checkNotNull(federalTaxDetailsUpdate, "federalTaxDetailsUpdate"); - this.companyId = companyId; this.xGustoAPIVersion = xGustoAPIVersion; + this.companyId = companyId; this.federalTaxDetailsUpdate = federalTaxDetailsUpdate; } public PutV1CompaniesCompanyIdFederalTaxDetailsRequest( String companyId, FederalTaxDetailsUpdate federalTaxDetailsUpdate) { - this(companyId, Optional.empty(), federalTaxDetailsUpdate); - } - - /** - * The UUID of the company - */ - @JsonIgnore - public String companyId() { - return companyId; + this(Optional.empty(), companyId, federalTaxDetailsUpdate); } /** @@ -73,6 +65,14 @@ public Optional return (Optional) xGustoAPIVersion; } + /** + * The UUID of the company + */ + @JsonIgnore + public String companyId() { + return companyId; + } + @JsonIgnore public FederalTaxDetailsUpdate federalTaxDetailsUpdate() { return federalTaxDetailsUpdate; @@ -83,15 +83,6 @@ public static Builder builder() { } - /** - * The UUID of the company - */ - public PutV1CompaniesCompanyIdFederalTaxDetailsRequest withCompanyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -115,6 +106,15 @@ public PutV1CompaniesCompanyIdFederalTaxDetailsRequest withXGustoAPIVersion(Opti return this; } + /** + * The UUID of the company + */ + public PutV1CompaniesCompanyIdFederalTaxDetailsRequest withCompanyId(String companyId) { + Utils.checkNotNull(companyId, "companyId"); + this.companyId = companyId; + return this; + } + public PutV1CompaniesCompanyIdFederalTaxDetailsRequest withFederalTaxDetailsUpdate(FederalTaxDetailsUpdate federalTaxDetailsUpdate) { Utils.checkNotNull(federalTaxDetailsUpdate, "federalTaxDetailsUpdate"); this.federalTaxDetailsUpdate = federalTaxDetailsUpdate; @@ -131,32 +131,32 @@ public boolean equals(java.lang.Object o) { } PutV1CompaniesCompanyIdFederalTaxDetailsRequest other = (PutV1CompaniesCompanyIdFederalTaxDetailsRequest) o; return - Utils.enhancedDeepEquals(this.companyId, other.companyId) && Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.companyId, other.companyId) && Utils.enhancedDeepEquals(this.federalTaxDetailsUpdate, other.federalTaxDetailsUpdate); } @Override public int hashCode() { return Utils.enhancedHash( - companyId, xGustoAPIVersion, federalTaxDetailsUpdate); + xGustoAPIVersion, companyId, federalTaxDetailsUpdate); } @Override public String toString() { return Utils.toString(PutV1CompaniesCompanyIdFederalTaxDetailsRequest.class, - "companyId", companyId, "xGustoAPIVersion", xGustoAPIVersion, + "companyId", companyId, "federalTaxDetailsUpdate", federalTaxDetailsUpdate); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String companyId; - private Optional xGustoAPIVersion; + private String companyId; + private FederalTaxDetailsUpdate federalTaxDetailsUpdate; private Builder() { @@ -164,16 +164,6 @@ private Builder() { } - /** - * The UUID of the company - */ - public Builder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -197,6 +187,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String companyId; private FederalTaxDetailsUpdate federalTaxDetailsUpdate; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -29,12 +29,6 @@ public class PutV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder { public PutV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } public PutV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder xGustoAPIVersion(PutV1CompaniesCompanyIdFederalTaxDetailsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -48,6 +42,12 @@ public PutV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder xGustoAPIVersion(O return this; } + public PutV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder companyId(String companyId) { + Utils.checkNotNull(companyId, "companyId"); + this.companyId = companyId; + return this; + } + public PutV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder federalTaxDetailsUpdate(FederalTaxDetailsUpdate federalTaxDetailsUpdate) { Utils.checkNotNull(federalTaxDetailsUpdate, "federalTaxDetailsUpdate"); this.federalTaxDetailsUpdate = federalTaxDetailsUpdate; @@ -60,8 +60,8 @@ private PutV1CompaniesCompanyIdFederalTaxDetailsRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PutV1CompaniesCompanyIdFederalTaxDetailsRequest request = new PutV1CompaniesCompanyIdFederalTaxDetailsRequest(companyId, - xGustoAPIVersion, + PutV1CompaniesCompanyIdFederalTaxDetailsRequest request = new PutV1CompaniesCompanyIdFederalTaxDetailsRequest(xGustoAPIVersion, + companyId, federalTaxDetailsUpdate); return request; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBody.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBody.java index 5d4601596..40940a30b 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBody.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBody.java @@ -18,7 +18,17 @@ public class PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBody { /** - * An array of employee UUIDs. If passed, only those employees payroll items will be prepared. + * The employees to prepare, identified by UUID. If omitted, every employee currently on the payroll is + * prepared. + * + *

    **Off-cycle payrolls that support multiple employees (`Bonus`, `Correction`, `Adhoc`):** passing + * `employee_uuids` also adds eligible employees who aren't yet on the payroll - a listed employee not + * on the payroll is added, while one already on it is simply prepared. A request may include up to 100 + * UUIDs, of which at most 25 may be employees not already on the payroll; an ineligible or unknown + * UUID, or more than 25 new employees, is rejected with a 422. + * + *

    **All other payrolls:** `employee_uuids` selects which of the payroll's existing employees to + * prepare; a UUID for an employee not on the payroll is rejected with a 422. */ @JsonInclude(Include.NON_ABSENT) @JsonProperty("employee_uuids") @@ -36,7 +46,17 @@ public PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBody() { } /** - * An array of employee UUIDs. If passed, only those employees payroll items will be prepared. + * The employees to prepare, identified by UUID. If omitted, every employee currently on the payroll is + * prepared. + * + *

    **Off-cycle payrolls that support multiple employees (`Bonus`, `Correction`, `Adhoc`):** passing + * `employee_uuids` also adds eligible employees who aren't yet on the payroll - a listed employee not + * on the payroll is added, while one already on it is simply prepared. A request may include up to 100 + * UUIDs, of which at most 25 may be employees not already on the payroll; an ineligible or unknown + * UUID, or more than 25 new employees, is rejected with a 422. + * + *

    **All other payrolls:** `employee_uuids` selects which of the payroll's existing employees to + * prepare; a UUID for an employee not on the payroll is rejected with a 422. */ @SuppressWarnings("unchecked") @JsonIgnore @@ -50,7 +70,17 @@ public static Builder builder() { /** - * An array of employee UUIDs. If passed, only those employees payroll items will be prepared. + * The employees to prepare, identified by UUID. If omitted, every employee currently on the payroll is + * prepared. + * + *

    **Off-cycle payrolls that support multiple employees (`Bonus`, `Correction`, `Adhoc`):** passing + * `employee_uuids` also adds eligible employees who aren't yet on the payroll - a listed employee not + * on the payroll is added, while one already on it is simply prepared. A request may include up to 100 + * UUIDs, of which at most 25 may be employees not already on the payroll; an ineligible or unknown + * UUID, or more than 25 new employees, is rejected with a 422. + * + *

    **All other payrolls:** `employee_uuids` selects which of the payroll's existing employees to + * prepare; a UUID for an employee not on the payroll is rejected with a 422. */ public PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBody withEmployeeUuids(List employeeUuids) { Utils.checkNotNull(employeeUuids, "employeeUuids"); @@ -59,7 +89,17 @@ public PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBody withEmployeeUu } /** - * An array of employee UUIDs. If passed, only those employees payroll items will be prepared. + * The employees to prepare, identified by UUID. If omitted, every employee currently on the payroll is + * prepared. + * + *

    **Off-cycle payrolls that support multiple employees (`Bonus`, `Correction`, `Adhoc`):** passing + * `employee_uuids` also adds eligible employees who aren't yet on the payroll - a listed employee not + * on the payroll is added, while one already on it is simply prepared. A request may include up to 100 + * UUIDs, of which at most 25 may be employees not already on the payroll; an ineligible or unknown + * UUID, or more than 25 new employees, is rejected with a 422. + * + *

    **All other payrolls:** `employee_uuids` selects which of the payroll's existing employees to + * prepare; a UUID for an employee not on the payroll is rejected with a 422. */ public PutV1CompaniesCompanyIdPayrollsPayrollIdPrepareRequestBody withEmployeeUuids(JsonNullable> employeeUuids) { Utils.checkNotNull(employeeUuids, "employeeUuids"); @@ -103,7 +143,17 @@ private Builder() { /** - * An array of employee UUIDs. If passed, only those employees payroll items will be prepared. + * The employees to prepare, identified by UUID. If omitted, every employee currently on the payroll is + * prepared. + * + *

    **Off-cycle payrolls that support multiple employees (`Bonus`, `Correction`, `Adhoc`):** passing + * `employee_uuids` also adds eligible employees who aren't yet on the payroll - a listed employee not + * on the payroll is added, while one already on it is simply prepared. A request may include up to 100 + * UUIDs, of which at most 25 may be employees not already on the payroll; an ineligible or unknown + * UUID, or more than 25 new employees, is rejected with a 422. + * + *

    **All other payrolls:** `employee_uuids` selects which of the payroll's existing employees to + * prepare; a UUID for an employee not on the payroll is rejected with a 422. */ public Builder employeeUuids(List employeeUuids) { Utils.checkNotNull(employeeUuids, "employeeUuids"); @@ -112,7 +162,17 @@ public Builder employeeUuids(List employeeUuids) { } /** - * An array of employee UUIDs. If passed, only those employees payroll items will be prepared. + * The employees to prepare, identified by UUID. If omitted, every employee currently on the payroll is + * prepared. + * + *

    **Off-cycle payrolls that support multiple employees (`Bonus`, `Correction`, `Adhoc`):** passing + * `employee_uuids` also adds eligible employees who aren't yet on the payroll - a listed employee not + * on the payroll is added, while one already on it is simply prepared. A request may include up to 100 + * UUIDs, of which at most 25 may be employees not already on the payroll; an ineligible or unknown + * UUID, or more than 25 new employees, is rejected with a 422. + * + *

    **All other payrolls:** `employee_uuids` selects which of the payroll's existing employees to + * prepare; a UUID for an employee not on the payroll is rejected with a 422. */ public Builder employeeUuids(JsonNullable> employeeUuids) { Utils.checkNotNull(employeeUuids, "employeeUuids"); diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.java index f84066c6c..a45a9f838 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.java @@ -17,6 +17,14 @@ public class PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + /** * The UUID of the company */ @@ -29,31 +37,23 @@ public class PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest { @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=signatory_uuid") private String signatoryUuid; - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; - @SpeakeasyMetadata("request:mediaType=application/json") private SignatoryUpdateRequest signatoryUpdateRequest; @JsonCreator public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest( + Optional xGustoAPIVersion, String companyUuid, String signatoryUuid, - Optional xGustoAPIVersion, SignatoryUpdateRequest signatoryUpdateRequest) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(signatoryUuid, "signatoryUuid"); - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(signatoryUpdateRequest, "signatoryUpdateRequest"); + this.xGustoAPIVersion = xGustoAPIVersion; this.companyUuid = companyUuid; this.signatoryUuid = signatoryUuid; - this.xGustoAPIVersion = xGustoAPIVersion; this.signatoryUpdateRequest = signatoryUpdateRequest; } @@ -61,10 +61,21 @@ public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest( String companyUuid, String signatoryUuid, SignatoryUpdateRequest signatoryUpdateRequest) { - this(companyUuid, signatoryUuid, Optional.empty(), + this(Optional.empty(), companyUuid, signatoryUuid, signatoryUpdateRequest); } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + /** * The UUID of the company */ @@ -81,17 +92,6 @@ public String signatoryUuid() { return signatoryUuid; } - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional xGustoAPIVersion() { - return (Optional) xGustoAPIVersion; - } - @JsonIgnore public SignatoryUpdateRequest signatoryUpdateRequest() { return signatoryUpdateRequest; @@ -102,24 +102,6 @@ public static Builder builder() { } - /** - * The UUID of the company - */ - public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest withCompanyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - /** - * The UUID of the signatory - */ - public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest withSignatoryUuid(String signatoryUuid) { - Utils.checkNotNull(signatoryUuid, "signatoryUuid"); - this.signatoryUuid = signatoryUuid; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -143,6 +125,24 @@ public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest withXGustoAPIVer return this; } + /** + * The UUID of the company + */ + public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + /** + * The UUID of the signatory + */ + public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest withSignatoryUuid(String signatoryUuid) { + Utils.checkNotNull(signatoryUuid, "signatoryUuid"); + this.signatoryUuid = signatoryUuid; + return this; + } + public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest withSignatoryUpdateRequest(SignatoryUpdateRequest signatoryUpdateRequest) { Utils.checkNotNull(signatoryUpdateRequest, "signatoryUpdateRequest"); this.signatoryUpdateRequest = signatoryUpdateRequest; @@ -159,37 +159,37 @@ public boolean equals(java.lang.Object o) { } PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest other = (PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest) o; return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && Utils.enhancedDeepEquals(this.signatoryUuid, other.signatoryUuid) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.signatoryUpdateRequest, other.signatoryUpdateRequest); } @Override public int hashCode() { return Utils.enhancedHash( - companyUuid, signatoryUuid, xGustoAPIVersion, + xGustoAPIVersion, companyUuid, signatoryUuid, signatoryUpdateRequest); } @Override public String toString() { return Utils.toString(PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, "companyUuid", companyUuid, "signatoryUuid", signatoryUuid, - "xGustoAPIVersion", xGustoAPIVersion, "signatoryUpdateRequest", signatoryUpdateRequest); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { + private Optional xGustoAPIVersion; + private String companyUuid; private String signatoryUuid; - private Optional xGustoAPIVersion; - private SignatoryUpdateRequest signatoryUpdateRequest; private Builder() { @@ -197,26 +197,6 @@ private Builder() { } - /** - * The UUID of the company - */ - public Builder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - - /** - * The UUID of the signatory - */ - public Builder signatoryUuid(String signatoryUuid) { - Utils.checkNotNull(signatoryUuid, "signatoryUuid"); - this.signatoryUuid = signatoryUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -240,6 +220,26 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String companyUuid; + private String signatoryUuid; private SignatoryUpdateRequest signatoryUpdateRequest; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -30,18 +30,6 @@ public class PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder { public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder signatoryUuid(String signatoryUuid) { - Utils.checkNotNull(signatoryUuid, "signatoryUuid"); - this.signatoryUuid = signatoryUuid; - return this; - } public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder xGustoAPIVersion(PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -55,6 +43,18 @@ public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder xGustoAPI return this; } + public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder signatoryUuid(String signatoryUuid) { + Utils.checkNotNull(signatoryUuid, "signatoryUuid"); + this.signatoryUuid = signatoryUuid; + return this; + } + public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder signatoryUpdateRequest(SignatoryUpdateRequest signatoryUpdateRequest) { Utils.checkNotNull(signatoryUpdateRequest, "signatoryUpdateRequest"); this.signatoryUpdateRequest = signatoryUpdateRequest; @@ -67,9 +67,9 @@ private PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest buildRequest() xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest request = new PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest(companyUuid, + PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest request = new PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest(xGustoAPIVersion, + companyUuid, signatoryUuid, - xGustoAPIVersion, signatoryUpdateRequest); return request; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1CompaniesCompanyUuidTaxRequirementsStateRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1CompaniesCompanyUuidTaxRequirementsStateRequest.java index 0391efe75..af88845d5 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1CompaniesCompanyUuidTaxRequirementsStateRequest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1CompaniesCompanyUuidTaxRequirementsStateRequest.java @@ -16,6 +16,14 @@ public class PutV1CompaniesCompanyUuidTaxRequirementsStateRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + /** * The UUID of the company */ @@ -28,31 +36,23 @@ public class PutV1CompaniesCompanyUuidTaxRequirementsStateRequest { @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=state") private String state; - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") - private Optional xGustoAPIVersion; - @SpeakeasyMetadata("request:mediaType=application/json") private PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody requestBody; @JsonCreator public PutV1CompaniesCompanyUuidTaxRequirementsStateRequest( + Optional xGustoAPIVersion, String companyUuid, String state, - Optional xGustoAPIVersion, PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody requestBody) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(state, "state"); - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); Utils.checkNotNull(requestBody, "requestBody"); + this.xGustoAPIVersion = xGustoAPIVersion; this.companyUuid = companyUuid; this.state = state; - this.xGustoAPIVersion = xGustoAPIVersion; this.requestBody = requestBody; } @@ -60,10 +60,21 @@ public PutV1CompaniesCompanyUuidTaxRequirementsStateRequest( String companyUuid, String state, PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody requestBody) { - this(companyUuid, state, Optional.empty(), + this(Optional.empty(), companyUuid, state, requestBody); } + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + /** * The UUID of the company */ @@ -80,17 +91,6 @@ public String state() { return state; } - /** - * Determines the date-based API version associated with your API call. If none is provided, your - * application's [minimum API - * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. - */ - @SuppressWarnings("unchecked") - @JsonIgnore - public Optional xGustoAPIVersion() { - return (Optional) xGustoAPIVersion; - } - @JsonIgnore public PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody requestBody() { return requestBody; @@ -101,24 +101,6 @@ public static Builder builder() { } - /** - * The UUID of the company - */ - public PutV1CompaniesCompanyUuidTaxRequirementsStateRequest withCompanyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - /** - * The two-letter state abbreviation - */ - public PutV1CompaniesCompanyUuidTaxRequirementsStateRequest withState(String state) { - Utils.checkNotNull(state, "state"); - this.state = state; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -142,6 +124,24 @@ public PutV1CompaniesCompanyUuidTaxRequirementsStateRequest withXGustoAPIVersion return this; } + /** + * The UUID of the company + */ + public PutV1CompaniesCompanyUuidTaxRequirementsStateRequest withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + /** + * The two-letter state abbreviation + */ + public PutV1CompaniesCompanyUuidTaxRequirementsStateRequest withState(String state) { + Utils.checkNotNull(state, "state"); + this.state = state; + return this; + } + public PutV1CompaniesCompanyUuidTaxRequirementsStateRequest withRequestBody(PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); this.requestBody = requestBody; @@ -158,37 +158,37 @@ public boolean equals(java.lang.Object o) { } PutV1CompaniesCompanyUuidTaxRequirementsStateRequest other = (PutV1CompaniesCompanyUuidTaxRequirementsStateRequest) o; return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && Utils.enhancedDeepEquals(this.state, other.state) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && Utils.enhancedDeepEquals(this.requestBody, other.requestBody); } @Override public int hashCode() { return Utils.enhancedHash( - companyUuid, state, xGustoAPIVersion, + xGustoAPIVersion, companyUuid, state, requestBody); } @Override public String toString() { return Utils.toString(PutV1CompaniesCompanyUuidTaxRequirementsStateRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, "companyUuid", companyUuid, "state", state, - "xGustoAPIVersion", xGustoAPIVersion, "requestBody", requestBody); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { + private Optional xGustoAPIVersion; + private String companyUuid; private String state; - private Optional xGustoAPIVersion; - private PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody requestBody; private Builder() { @@ -196,26 +196,6 @@ private Builder() { } - /** - * The UUID of the company - */ - public Builder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - - /** - * The two-letter state abbreviation - */ - public Builder state(String state) { - Utils.checkNotNull(state, "state"); - this.state = state; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -239,6 +219,26 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String companyUuid; + private String state; private PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody requestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -29,18 +29,6 @@ public class PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder { public PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - public PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder state(String state) { - Utils.checkNotNull(state, "state"); - this.state = state; - return this; - } public PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder xGustoAPIVersion(PutV1CompaniesCompanyUuidTaxRequirementsStateHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -54,6 +42,18 @@ public PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder xGustoAPIVers return this; } + public PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + public PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder state(String state) { + Utils.checkNotNull(state, "state"); + this.state = state; + return this; + } + public PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder requestBody(PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); this.requestBody = requestBody; @@ -66,9 +66,9 @@ private PutV1CompaniesCompanyUuidTaxRequirementsStateRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PutV1CompaniesCompanyUuidTaxRequirementsStateRequest request = new PutV1CompaniesCompanyUuidTaxRequirementsStateRequest(companyUuid, + PutV1CompaniesCompanyUuidTaxRequirementsStateRequest request = new PutV1CompaniesCompanyUuidTaxRequirementsStateRequest(xGustoAPIVersion, + companyUuid, state, - xGustoAPIVersion, requestBody); return request; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1CompaniesRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1CompaniesRequest.java index e5e1aa92a..8c6a6818f 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1CompaniesRequest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1CompaniesRequest.java @@ -16,12 +16,6 @@ public class PutV1CompaniesRequest { - /** - * The UUID of the company - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_id") - private String companyId; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,35 +24,33 @@ public class PutV1CompaniesRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_id") + private String companyId; + @SpeakeasyMetadata("request:mediaType=application/json") private PutV1CompaniesRequestBody requestBody; @JsonCreator public PutV1CompaniesRequest( - String companyId, Optional xGustoAPIVersion, + String companyId, PutV1CompaniesRequestBody requestBody) { - Utils.checkNotNull(companyId, "companyId"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(companyId, "companyId"); Utils.checkNotNull(requestBody, "requestBody"); - this.companyId = companyId; this.xGustoAPIVersion = xGustoAPIVersion; + this.companyId = companyId; this.requestBody = requestBody; } public PutV1CompaniesRequest( String companyId, PutV1CompaniesRequestBody requestBody) { - this(companyId, Optional.empty(), requestBody); - } - - /** - * The UUID of the company - */ - @JsonIgnore - public String companyId() { - return companyId; + this(Optional.empty(), companyId, requestBody); } /** @@ -72,6 +64,14 @@ public Optional xGustoAPIVersion() { return (Optional) xGustoAPIVersion; } + /** + * The UUID of the company + */ + @JsonIgnore + public String companyId() { + return companyId; + } + @JsonIgnore public PutV1CompaniesRequestBody requestBody() { return requestBody; @@ -82,15 +82,6 @@ public static Builder builder() { } - /** - * The UUID of the company - */ - public PutV1CompaniesRequest withCompanyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -114,6 +105,15 @@ public PutV1CompaniesRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String companyId; + private PutV1CompaniesRequestBody requestBody; private Builder() { @@ -163,16 +163,6 @@ private Builder() { } - /** - * The UUID of the company - */ - public Builder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -196,6 +186,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String companyId; private PutV1CompaniesRequestBody requestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -28,12 +28,6 @@ public class PutV1CompaniesRequestBuilder { public PutV1CompaniesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutV1CompaniesRequestBuilder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } public PutV1CompaniesRequestBuilder xGustoAPIVersion(PutV1CompaniesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -47,6 +41,12 @@ public PutV1CompaniesRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion; + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_id") + private String companyId; + @SpeakeasyMetadata("request:mediaType=application/json") private CompanyIndustrySelectionRequiredBody companyIndustrySelectionRequiredBody; @JsonCreator public PutV1CompanyIndustryRequest( - String companyId, Optional xGustoAPIVersion, + String companyId, CompanyIndustrySelectionRequiredBody companyIndustrySelectionRequiredBody) { - Utils.checkNotNull(companyId, "companyId"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(companyId, "companyId"); Utils.checkNotNull(companyIndustrySelectionRequiredBody, "companyIndustrySelectionRequiredBody"); - this.companyId = companyId; this.xGustoAPIVersion = xGustoAPIVersion; + this.companyId = companyId; this.companyIndustrySelectionRequiredBody = companyIndustrySelectionRequiredBody; } public PutV1CompanyIndustryRequest( String companyId, CompanyIndustrySelectionRequiredBody companyIndustrySelectionRequiredBody) { - this(companyId, Optional.empty(), companyIndustrySelectionRequiredBody); - } - - /** - * The UUID of the company - */ - @JsonIgnore - public String companyId() { - return companyId; + this(Optional.empty(), companyId, companyIndustrySelectionRequiredBody); } /** @@ -73,6 +65,14 @@ public Optional xGustoAPIVersion() { return (Optional) xGustoAPIVersion; } + /** + * The UUID of the company + */ + @JsonIgnore + public String companyId() { + return companyId; + } + @JsonIgnore public CompanyIndustrySelectionRequiredBody companyIndustrySelectionRequiredBody() { return companyIndustrySelectionRequiredBody; @@ -83,15 +83,6 @@ public static Builder builder() { } - /** - * The UUID of the company - */ - public PutV1CompanyIndustryRequest withCompanyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -115,6 +106,15 @@ public PutV1CompanyIndustryRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String companyId; + private CompanyIndustrySelectionRequiredBody companyIndustrySelectionRequiredBody; private Builder() { @@ -164,16 +164,6 @@ private Builder() { } - /** - * The UUID of the company - */ - public Builder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -197,6 +187,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String companyId; private CompanyIndustrySelectionRequiredBody companyIndustrySelectionRequiredBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -29,12 +29,6 @@ public class PutV1CompanyIndustryRequestBuilder { public PutV1CompanyIndustryRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutV1CompanyIndustryRequestBuilder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } public PutV1CompanyIndustryRequestBuilder xGustoAPIVersion(PutV1CompanyIndustryHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -48,6 +42,12 @@ public PutV1CompanyIndustryRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion; + /** + * The UUID of the contractor payment group + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=contractor_payment_group_uuid") + private String contractorPaymentGroupUuid; + @JsonCreator public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest( - String contractorPaymentGroupUuid, - Optional xGustoAPIVersion) { - Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); + Optional xGustoAPIVersion, + String contractorPaymentGroupUuid) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; + Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); this.xGustoAPIVersion = xGustoAPIVersion; + this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; } public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest( String contractorPaymentGroupUuid) { - this(contractorPaymentGroupUuid, Optional.empty()); - } - - /** - * The UUID of the contractor payment group - */ - @JsonIgnore - public String contractorPaymentGroupUuid() { - return contractorPaymentGroupUuid; + this(Optional.empty(), contractorPaymentGroupUuid); } /** @@ -64,20 +56,19 @@ public Optional) xGustoAPIVersion; } - public static Builder builder() { - return new Builder(); - } - - /** * The UUID of the contractor payment group */ - public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest withContractorPaymentGroupUuid(String contractorPaymentGroupUuid) { - Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); - this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; - return this; + @JsonIgnore + public String contractorPaymentGroupUuid() { + return contractorPaymentGroupUuid; } + public static Builder builder() { + return new Builder(); + } + + /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -101,6 +92,15 @@ public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest withXGust return this; } + /** + * The UUID of the contractor payment group + */ + public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest withContractorPaymentGroupUuid(String contractorPaymentGroupUuid) { + Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); + this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; + return this; + } + @Override public boolean equals(java.lang.Object o) { if (this == o) { @@ -111,45 +111,35 @@ public boolean equals(java.lang.Object o) { } PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest other = (PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest) o; return - Utils.enhancedDeepEquals(this.contractorPaymentGroupUuid, other.contractorPaymentGroupUuid) && - Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion); + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.contractorPaymentGroupUuid, other.contractorPaymentGroupUuid); } @Override public int hashCode() { return Utils.enhancedHash( - contractorPaymentGroupUuid, xGustoAPIVersion); + xGustoAPIVersion, contractorPaymentGroupUuid); } @Override public String toString() { return Utils.toString(PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest.class, - "contractorPaymentGroupUuid", contractorPaymentGroupUuid, - "xGustoAPIVersion", xGustoAPIVersion); + "xGustoAPIVersion", xGustoAPIVersion, + "contractorPaymentGroupUuid", contractorPaymentGroupUuid); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String contractorPaymentGroupUuid; - private Optional xGustoAPIVersion; + private String contractorPaymentGroupUuid; + private Builder() { // force use of static builder() method } - /** - * The UUID of the contractor payment group - */ - public Builder contractorPaymentGroupUuid(String contractorPaymentGroupUuid) { - Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); - this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -172,13 +162,23 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String contractorPaymentGroupUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequestBuilder contractorPaymentGroupUuid(String contractorPaymentGroupUuid) { - Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); - this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; - return this; - } public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequestBuilder xGustoAPIVersion(PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -46,14 +40,20 @@ public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequestBuilder xG return this; } + public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequestBuilder contractorPaymentGroupUuid(String contractorPaymentGroupUuid) { + Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); + this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; + return this; + } + private PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest request = new PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest(contractorPaymentGroupUuid, - xGustoAPIVersion); + PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest request = new PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest(xGustoAPIVersion, + contractorPaymentGroupUuid); return request; } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1JobsJobIdRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1JobsJobIdRequest.java index 234613f0a..a9ccfe9f7 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1JobsJobIdRequest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1JobsJobIdRequest.java @@ -17,12 +17,6 @@ public class PutV1JobsJobIdRequest { - /** - * The UUID of the job - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=job_id") - private String jobId; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -31,35 +25,33 @@ public class PutV1JobsJobIdRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the job + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=job_id") + private String jobId; + @SpeakeasyMetadata("request:mediaType=application/json") private JobsUpdateRequestBody jobsUpdateRequestBody; @JsonCreator public PutV1JobsJobIdRequest( - String jobId, Optional xGustoAPIVersion, + String jobId, JobsUpdateRequestBody jobsUpdateRequestBody) { - Utils.checkNotNull(jobId, "jobId"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(jobId, "jobId"); Utils.checkNotNull(jobsUpdateRequestBody, "jobsUpdateRequestBody"); - this.jobId = jobId; this.xGustoAPIVersion = xGustoAPIVersion; + this.jobId = jobId; this.jobsUpdateRequestBody = jobsUpdateRequestBody; } public PutV1JobsJobIdRequest( String jobId, JobsUpdateRequestBody jobsUpdateRequestBody) { - this(jobId, Optional.empty(), jobsUpdateRequestBody); - } - - /** - * The UUID of the job - */ - @JsonIgnore - public String jobId() { - return jobId; + this(Optional.empty(), jobId, jobsUpdateRequestBody); } /** @@ -73,6 +65,14 @@ public Optional xGustoAPIVersion() { return (Optional) xGustoAPIVersion; } + /** + * The UUID of the job + */ + @JsonIgnore + public String jobId() { + return jobId; + } + @JsonIgnore public JobsUpdateRequestBody jobsUpdateRequestBody() { return jobsUpdateRequestBody; @@ -83,15 +83,6 @@ public static Builder builder() { } - /** - * The UUID of the job - */ - public PutV1JobsJobIdRequest withJobId(String jobId) { - Utils.checkNotNull(jobId, "jobId"); - this.jobId = jobId; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -115,6 +106,15 @@ public PutV1JobsJobIdRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String jobId; + private JobsUpdateRequestBody jobsUpdateRequestBody; private Builder() { @@ -164,16 +164,6 @@ private Builder() { } - /** - * The UUID of the job - */ - public Builder jobId(String jobId) { - Utils.checkNotNull(jobId, "jobId"); - this.jobId = jobId; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -197,6 +187,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String jobId; private JobsUpdateRequestBody jobsUpdateRequestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -29,12 +29,6 @@ public class PutV1JobsJobIdRequestBuilder { public PutV1JobsJobIdRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutV1JobsJobIdRequestBuilder jobId(String jobId) { - Utils.checkNotNull(jobId, "jobId"); - this.jobId = jobId; - return this; - } public PutV1JobsJobIdRequestBuilder xGustoAPIVersion(PutV1JobsJobIdHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -48,6 +42,12 @@ public PutV1JobsJobIdRequestBuilder xGustoAPIVersion(Optional rawResponse; /** - * successful + * successful blank title on a non-primary active job */ private Optional job; @@ -87,7 +87,7 @@ public HttpResponse rawResponse() { } /** - * successful + * successful blank title on a non-primary active job */ @SuppressWarnings("unchecked") @JsonIgnore @@ -128,7 +128,7 @@ public PutV1JobsJobIdResponse withRawResponse(HttpResponse rawRespo } /** - * successful + * successful blank title on a non-primary active job */ public PutV1JobsJobIdResponse withJob(Job job) { Utils.checkNotNull(job, "job"); @@ -138,7 +138,7 @@ public PutV1JobsJobIdResponse withJob(Job job) { /** - * successful + * successful blank title on a non-primary active job */ public PutV1JobsJobIdResponse withJob(Optional job) { Utils.checkNotNull(job, "job"); @@ -225,7 +225,7 @@ public Builder rawResponse(HttpResponse rawResponse) { /** - * successful + * successful blank title on a non-primary active job */ public Builder job(Job job) { Utils.checkNotNull(job, "job"); @@ -234,7 +234,7 @@ public Builder job(Job job) { } /** - * successful + * successful blank title on a non-primary active job */ public Builder job(Optional job) { Utils.checkNotNull(job, "job"); diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion.java new file mode 100644 index 000000000..cb049721c --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion.java @@ -0,0 +1,41 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonValue; +import java.lang.String; +import java.util.Objects; +import java.util.Optional; + +/** + * PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion + * + *

    Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ +public enum PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion { + TWO_THOUSAND_AND_TWENTY_SIX_MINUS06_MINUS15("2026-06-15"); + + @JsonValue + private final String value; + + PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion(String value) { + this.value = value; + } + + public String value() { + return value; + } + + public static Optional fromValue(String value) { + for (PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion o: PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion.values()) { + if (Objects.deepEquals(o.value, value)) { + return Optional.of(o); + } + } + return Optional.empty(); + } +} + diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest.java new file mode 100644 index 000000000..185c6eb2a --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest.java @@ -0,0 +1,191 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2026_06_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2026_06_15.utils.SpeakeasyMetadata; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.util.Optional; + + +public class PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest { + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") + private Optional xGustoAPIVersion; + + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") + private String companyUuid; + + @JsonCreator + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest( + Optional xGustoAPIVersion, + String companyUuid) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(companyUuid, "companyUuid"); + this.xGustoAPIVersion = xGustoAPIVersion; + this.companyUuid = companyUuid; + } + + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest( + String companyUuid) { + this(Optional.empty(), companyUuid); + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional xGustoAPIVersion() { + return (Optional) xGustoAPIVersion; + } + + /** + * The UUID of the company + */ + @JsonIgnore + public String companyUuid() { + return companyUuid; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest withXGustoAPIVersion(PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest withXGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + /** + * The UUID of the company + */ + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest other = (PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest) o; + return + Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + xGustoAPIVersion, companyUuid); + } + + @Override + public String toString() { + return Utils.toString(PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest.class, + "xGustoAPIVersion", xGustoAPIVersion, + "companyUuid", companyUuid); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private Optional xGustoAPIVersion; + + private String companyUuid; + + private Builder() { + // force use of static builder() method + } + + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.ofNullable(xGustoAPIVersion); + return this; + } + + /** + * Determines the date-based API version associated with your API call. If none is provided, your + * application's [minimum API + * version](https://docs.gusto.com/embedded-payroll/docs/api-versioning#minimum-api-version) is used. + */ + public Builder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + + /** + * The UUID of the company + */ + public Builder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest build() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + return new PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest( + xGustoAPIVersion, companyUuid); + } + + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "X-Gusto-API-Version", + "\"2026-06-15\"", + new TypeReference>() {}); + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder.java new file mode 100644 index 000000000..490f348d3 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder.java @@ -0,0 +1,82 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import static com.gusto.embedded_api_v_2026_06_15.operations.Operations.RequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2026_06_15.SDKConfiguration; +import com.gusto.embedded_api_v_2026_06_15.operations.PutV1PartnerManagedCompaniesCompanyUuidDisassociate; +import com.gusto.embedded_api_v_2026_06_15.utils.Headers; +import com.gusto.embedded_api_v_2026_06_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.String; +import java.util.Optional; + +public class PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder { + + private PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity security; + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2026-06-15\"", + new TypeReference>() {}); + private String companyUuid; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder security(PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity security) { + Utils.checkNotNull(security, "security"); + this.security = security; + return this; + } + + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder xGustoAPIVersion(PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + + private PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest request = new PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest(xGustoAPIVersion, + companyUuid); + + return request; + } + + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse call() { + + RequestOperation operation + = new PutV1PartnerManagedCompaniesCompanyUuidDisassociate.Sync(sdkConfiguration, security, _headers); + PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest request = buildRequest(); + + return operation.handleResponse(operation.doRequest(request)); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2026-06-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse.java new file mode 100644 index 000000000..44012e45a --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse.java @@ -0,0 +1,253 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2026_06_15.models.components.PartnerManagedCompanyDisassociateResponse; +import com.gusto.embedded_api_v_2026_06_15.utils.Response; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.io.InputStream; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.Optional; + + +public class PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse implements Response { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * OK + */ + private Optional partnerManagedCompanyDisassociateResponse; + + @JsonCreator + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional partnerManagedCompanyDisassociateResponse) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(partnerManagedCompanyDisassociateResponse, "partnerManagedCompanyDisassociateResponse"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.partnerManagedCompanyDisassociateResponse = partnerManagedCompanyDisassociateResponse; + } + + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * OK + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional partnerManagedCompanyDisassociateResponse() { + return (Optional) partnerManagedCompanyDisassociateResponse; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * OK + */ + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse withPartnerManagedCompanyDisassociateResponse(PartnerManagedCompanyDisassociateResponse partnerManagedCompanyDisassociateResponse) { + Utils.checkNotNull(partnerManagedCompanyDisassociateResponse, "partnerManagedCompanyDisassociateResponse"); + this.partnerManagedCompanyDisassociateResponse = Optional.ofNullable(partnerManagedCompanyDisassociateResponse); + return this; + } + + + /** + * OK + */ + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse withPartnerManagedCompanyDisassociateResponse(Optional partnerManagedCompanyDisassociateResponse) { + Utils.checkNotNull(partnerManagedCompanyDisassociateResponse, "partnerManagedCompanyDisassociateResponse"); + this.partnerManagedCompanyDisassociateResponse = partnerManagedCompanyDisassociateResponse; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse other = (PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.partnerManagedCompanyDisassociateResponse, other.partnerManagedCompanyDisassociateResponse); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + partnerManagedCompanyDisassociateResponse); + } + + @Override + public String toString() { + return Utils.toString(PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "partnerManagedCompanyDisassociateResponse", partnerManagedCompanyDisassociateResponse); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional partnerManagedCompanyDisassociateResponse = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * OK + */ + public Builder partnerManagedCompanyDisassociateResponse(PartnerManagedCompanyDisassociateResponse partnerManagedCompanyDisassociateResponse) { + Utils.checkNotNull(partnerManagedCompanyDisassociateResponse, "partnerManagedCompanyDisassociateResponse"); + this.partnerManagedCompanyDisassociateResponse = Optional.ofNullable(partnerManagedCompanyDisassociateResponse); + return this; + } + + /** + * OK + */ + public Builder partnerManagedCompanyDisassociateResponse(Optional partnerManagedCompanyDisassociateResponse) { + Utils.checkNotNull(partnerManagedCompanyDisassociateResponse, "partnerManagedCompanyDisassociateResponse"); + this.partnerManagedCompanyDisassociateResponse = partnerManagedCompanyDisassociateResponse; + return this; + } + + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse build() { + + return new PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse( + contentType, statusCode, rawResponse, + partnerManagedCompanyDisassociateResponse); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity.java new file mode 100644 index 000000000..068b4dd47 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity.java @@ -0,0 +1,91 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2026_06_15.utils.HasSecurity; +import com.gusto.embedded_api_v_2026_06_15.utils.SpeakeasyMetadata; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Override; +import java.lang.String; + + +public class PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity implements HasSecurity { + + @SpeakeasyMetadata("security:scheme=true,type=http,subtype=bearer,name=Authorization") + private String systemAccessAuth; + + @JsonCreator + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity( + String systemAccessAuth) { + Utils.checkNotNull(systemAccessAuth, "systemAccessAuth"); + this.systemAccessAuth = systemAccessAuth; + } + + @JsonIgnore + public String systemAccessAuth() { + return systemAccessAuth; + } + + public static Builder builder() { + return new Builder(); + } + + + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity withSystemAccessAuth(String systemAccessAuth) { + Utils.checkNotNull(systemAccessAuth, "systemAccessAuth"); + this.systemAccessAuth = systemAccessAuth; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity other = (PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity) o; + return + Utils.enhancedDeepEquals(this.systemAccessAuth, other.systemAccessAuth); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + systemAccessAuth); + } + + @Override + public String toString() { + return Utils.toString(PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity.class, + "systemAccessAuth", systemAccessAuth); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String systemAccessAuth; + + private Builder() { + // force use of static builder() method + } + + + public Builder systemAccessAuth(String systemAccessAuth) { + Utils.checkNotNull(systemAccessAuth, "systemAccessAuth"); + this.systemAccessAuth = systemAccessAuth; + return this; + } + + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity build() { + + return new PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity( + systemAccessAuth); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest.java index 2e70e4c9a..efd49fbb0 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest.java @@ -17,12 +17,6 @@ public class PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest { - /** - * The UUID of the company - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") - private String companyUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -31,35 +25,33 @@ public class PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") + private String companyUuid; + @SpeakeasyMetadata("request:mediaType=application/json") private PartnerManagedCompanyMigrateRequest partnerManagedCompanyMigrateRequest; @JsonCreator public PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest( - String companyUuid, Optional xGustoAPIVersion, + String companyUuid, PartnerManagedCompanyMigrateRequest partnerManagedCompanyMigrateRequest) { - Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(partnerManagedCompanyMigrateRequest, "partnerManagedCompanyMigrateRequest"); - this.companyUuid = companyUuid; this.xGustoAPIVersion = xGustoAPIVersion; + this.companyUuid = companyUuid; this.partnerManagedCompanyMigrateRequest = partnerManagedCompanyMigrateRequest; } public PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest( String companyUuid, PartnerManagedCompanyMigrateRequest partnerManagedCompanyMigrateRequest) { - this(companyUuid, Optional.empty(), partnerManagedCompanyMigrateRequest); - } - - /** - * The UUID of the company - */ - @JsonIgnore - public String companyUuid() { - return companyUuid; + this(Optional.empty(), companyUuid, partnerManagedCompanyMigrateRequest); } /** @@ -73,6 +65,14 @@ public Optional) xGustoAPIVersion; } + /** + * The UUID of the company + */ + @JsonIgnore + public String companyUuid() { + return companyUuid; + } + @JsonIgnore public PartnerManagedCompanyMigrateRequest partnerManagedCompanyMigrateRequest() { return partnerManagedCompanyMigrateRequest; @@ -83,15 +83,6 @@ public static Builder builder() { } - /** - * The UUID of the company - */ - public PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest withCompanyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -115,6 +106,15 @@ public PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest withXGustoAPIVersio return this; } + /** + * The UUID of the company + */ + public PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + public PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest withPartnerManagedCompanyMigrateRequest(PartnerManagedCompanyMigrateRequest partnerManagedCompanyMigrateRequest) { Utils.checkNotNull(partnerManagedCompanyMigrateRequest, "partnerManagedCompanyMigrateRequest"); this.partnerManagedCompanyMigrateRequest = partnerManagedCompanyMigrateRequest; @@ -131,32 +131,32 @@ public boolean equals(java.lang.Object o) { } PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest other = (PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest) o; return - Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && Utils.enhancedDeepEquals(this.partnerManagedCompanyMigrateRequest, other.partnerManagedCompanyMigrateRequest); } @Override public int hashCode() { return Utils.enhancedHash( - companyUuid, xGustoAPIVersion, partnerManagedCompanyMigrateRequest); + xGustoAPIVersion, companyUuid, partnerManagedCompanyMigrateRequest); } @Override public String toString() { return Utils.toString(PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest.class, - "companyUuid", companyUuid, "xGustoAPIVersion", xGustoAPIVersion, + "companyUuid", companyUuid, "partnerManagedCompanyMigrateRequest", partnerManagedCompanyMigrateRequest); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String companyUuid; - private Optional xGustoAPIVersion; + private String companyUuid; + private PartnerManagedCompanyMigrateRequest partnerManagedCompanyMigrateRequest; private Builder() { @@ -164,16 +164,6 @@ private Builder() { } - /** - * The UUID of the company - */ - public Builder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -197,6 +187,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String companyUuid; private PartnerManagedCompanyMigrateRequest partnerManagedCompanyMigrateRequest; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -29,12 +29,6 @@ public class PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder { public PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder xGustoAPIVersion(PutV1PartnerManagedCompaniesCompanyUuidMigrateHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -48,6 +42,12 @@ public PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder xGustoAPIVer return this; } + public PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + public PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder partnerManagedCompanyMigrateRequest(PartnerManagedCompanyMigrateRequest partnerManagedCompanyMigrateRequest) { Utils.checkNotNull(partnerManagedCompanyMigrateRequest, "partnerManagedCompanyMigrateRequest"); this.partnerManagedCompanyMigrateRequest = partnerManagedCompanyMigrateRequest; @@ -60,8 +60,8 @@ private PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest request = new PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest(companyUuid, - xGustoAPIVersion, + PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest request = new PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest(xGustoAPIVersion, + companyUuid, partnerManagedCompanyMigrateRequest); return request; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest.java index 0c3f9064a..2dfce8d14 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest.java @@ -17,12 +17,6 @@ public class PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest { - /** - * The UUID of the company - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") - private String companyUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -31,35 +25,33 @@ public class PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the company + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=company_uuid") + private String companyUuid; + @SpeakeasyMetadata("request:mediaType=application/json") private PartnerManagedCompanyRetrieveTermsOfServiceRequest partnerManagedCompanyRetrieveTermsOfServiceRequest; @JsonCreator public PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest( - String companyUuid, Optional xGustoAPIVersion, + String companyUuid, PartnerManagedCompanyRetrieveTermsOfServiceRequest partnerManagedCompanyRetrieveTermsOfServiceRequest) { - Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(companyUuid, "companyUuid"); Utils.checkNotNull(partnerManagedCompanyRetrieveTermsOfServiceRequest, "partnerManagedCompanyRetrieveTermsOfServiceRequest"); - this.companyUuid = companyUuid; this.xGustoAPIVersion = xGustoAPIVersion; + this.companyUuid = companyUuid; this.partnerManagedCompanyRetrieveTermsOfServiceRequest = partnerManagedCompanyRetrieveTermsOfServiceRequest; } public PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest( String companyUuid, PartnerManagedCompanyRetrieveTermsOfServiceRequest partnerManagedCompanyRetrieveTermsOfServiceRequest) { - this(companyUuid, Optional.empty(), partnerManagedCompanyRetrieveTermsOfServiceRequest); - } - - /** - * The UUID of the company - */ - @JsonIgnore - public String companyUuid() { - return companyUuid; + this(Optional.empty(), companyUuid, partnerManagedCompanyRetrieveTermsOfServiceRequest); } /** @@ -73,6 +65,14 @@ public Optional) xGustoAPIVersion; } + /** + * The UUID of the company + */ + @JsonIgnore + public String companyUuid() { + return companyUuid; + } + @JsonIgnore public PartnerManagedCompanyRetrieveTermsOfServiceRequest partnerManagedCompanyRetrieveTermsOfServiceRequest() { return partnerManagedCompanyRetrieveTermsOfServiceRequest; @@ -83,15 +83,6 @@ public static Builder builder() { } - /** - * The UUID of the company - */ - public PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest withCompanyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -115,6 +106,15 @@ public PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest withXGustoAP return this; } + /** + * The UUID of the company + */ + public PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest withCompanyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + public PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest withPartnerManagedCompanyRetrieveTermsOfServiceRequest(PartnerManagedCompanyRetrieveTermsOfServiceRequest partnerManagedCompanyRetrieveTermsOfServiceRequest) { Utils.checkNotNull(partnerManagedCompanyRetrieveTermsOfServiceRequest, "partnerManagedCompanyRetrieveTermsOfServiceRequest"); this.partnerManagedCompanyRetrieveTermsOfServiceRequest = partnerManagedCompanyRetrieveTermsOfServiceRequest; @@ -131,32 +131,32 @@ public boolean equals(java.lang.Object o) { } PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest other = (PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest) o; return - Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && Utils.enhancedDeepEquals(this.xGustoAPIVersion, other.xGustoAPIVersion) && + Utils.enhancedDeepEquals(this.companyUuid, other.companyUuid) && Utils.enhancedDeepEquals(this.partnerManagedCompanyRetrieveTermsOfServiceRequest, other.partnerManagedCompanyRetrieveTermsOfServiceRequest); } @Override public int hashCode() { return Utils.enhancedHash( - companyUuid, xGustoAPIVersion, partnerManagedCompanyRetrieveTermsOfServiceRequest); + xGustoAPIVersion, companyUuid, partnerManagedCompanyRetrieveTermsOfServiceRequest); } @Override public String toString() { return Utils.toString(PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest.class, - "companyUuid", companyUuid, "xGustoAPIVersion", xGustoAPIVersion, + "companyUuid", companyUuid, "partnerManagedCompanyRetrieveTermsOfServiceRequest", partnerManagedCompanyRetrieveTermsOfServiceRequest); } @SuppressWarnings("UnusedReturnValue") public final static class Builder { - private String companyUuid; - private Optional xGustoAPIVersion; + private String companyUuid; + private PartnerManagedCompanyRetrieveTermsOfServiceRequest partnerManagedCompanyRetrieveTermsOfServiceRequest; private Builder() { @@ -164,16 +164,6 @@ private Builder() { } - /** - * The UUID of the company - */ - public Builder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -197,6 +187,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String companyUuid; private PartnerManagedCompanyRetrieveTermsOfServiceRequest partnerManagedCompanyRetrieveTermsOfServiceRequest; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -29,12 +29,6 @@ public class PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilder public PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilder xGustoAPIVersion(PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -48,6 +42,12 @@ public PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilder xGust return this; } + public PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + public PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilder partnerManagedCompanyRetrieveTermsOfServiceRequest(PartnerManagedCompanyRetrieveTermsOfServiceRequest partnerManagedCompanyRetrieveTermsOfServiceRequest) { Utils.checkNotNull(partnerManagedCompanyRetrieveTermsOfServiceRequest, "partnerManagedCompanyRetrieveTermsOfServiceRequest"); this.partnerManagedCompanyRetrieveTermsOfServiceRequest = partnerManagedCompanyRetrieveTermsOfServiceRequest; @@ -60,8 +60,8 @@ private PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest buildReques xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest request = new PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest(companyUuid, - xGustoAPIVersion, + PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest request = new PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest(xGustoAPIVersion, + companyUuid, partnerManagedCompanyRetrieveTermsOfServiceRequest); return request; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1VerifyWebhookSubscriptionUuidRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1VerifyWebhookSubscriptionUuidRequest.java index ced4be2ae..cca7b3007 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1VerifyWebhookSubscriptionUuidRequest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1VerifyWebhookSubscriptionUuidRequest.java @@ -16,12 +16,6 @@ public class PutV1VerifyWebhookSubscriptionUuidRequest { - /** - * The webhook subscription UUID. - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=webhook_subscription_uuid") - private String webhookSubscriptionUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,35 +24,33 @@ public class PutV1VerifyWebhookSubscriptionUuidRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The webhook subscription UUID. + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=webhook_subscription_uuid") + private String webhookSubscriptionUuid; + @SpeakeasyMetadata("request:mediaType=application/json") private PutV1VerifyWebhookSubscriptionUuidRequestBody requestBody; @JsonCreator public PutV1VerifyWebhookSubscriptionUuidRequest( - String webhookSubscriptionUuid, Optional xGustoAPIVersion, + String webhookSubscriptionUuid, PutV1VerifyWebhookSubscriptionUuidRequestBody requestBody) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); Utils.checkNotNull(requestBody, "requestBody"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; this.xGustoAPIVersion = xGustoAPIVersion; + this.webhookSubscriptionUuid = webhookSubscriptionUuid; this.requestBody = requestBody; } public PutV1VerifyWebhookSubscriptionUuidRequest( String webhookSubscriptionUuid, PutV1VerifyWebhookSubscriptionUuidRequestBody requestBody) { - this(webhookSubscriptionUuid, Optional.empty(), requestBody); - } - - /** - * The webhook subscription UUID. - */ - @JsonIgnore - public String webhookSubscriptionUuid() { - return webhookSubscriptionUuid; + this(Optional.empty(), webhookSubscriptionUuid, requestBody); } /** @@ -72,6 +64,14 @@ public Optional xGusto return (Optional) xGustoAPIVersion; } + /** + * The webhook subscription UUID. + */ + @JsonIgnore + public String webhookSubscriptionUuid() { + return webhookSubscriptionUuid; + } + @JsonIgnore public PutV1VerifyWebhookSubscriptionUuidRequestBody requestBody() { return requestBody; @@ -82,15 +82,6 @@ public static Builder builder() { } - /** - * The webhook subscription UUID. - */ - public PutV1VerifyWebhookSubscriptionUuidRequest withWebhookSubscriptionUuid(String webhookSubscriptionUuid) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -114,6 +105,15 @@ public PutV1VerifyWebhookSubscriptionUuidRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String webhookSubscriptionUuid; + private PutV1VerifyWebhookSubscriptionUuidRequestBody requestBody; private Builder() { @@ -163,16 +163,6 @@ private Builder() { } - /** - * The webhook subscription UUID. - */ - public Builder webhookSubscriptionUuid(String webhookSubscriptionUuid) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -196,6 +186,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String webhookSubscriptionUuid; private PutV1VerifyWebhookSubscriptionUuidRequestBody requestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -35,12 +35,6 @@ public PutV1VerifyWebhookSubscriptionUuidRequestBuilder security(PutV1VerifyWebh this.security = security; return this; } - - public PutV1VerifyWebhookSubscriptionUuidRequestBuilder webhookSubscriptionUuid(String webhookSubscriptionUuid) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; - return this; - } public PutV1VerifyWebhookSubscriptionUuidRequestBuilder xGustoAPIVersion(PutV1VerifyWebhookSubscriptionUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -54,6 +48,12 @@ public PutV1VerifyWebhookSubscriptionUuidRequestBuilder xGustoAPIVersion(Optiona return this; } + public PutV1VerifyWebhookSubscriptionUuidRequestBuilder webhookSubscriptionUuid(String webhookSubscriptionUuid) { + Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); + this.webhookSubscriptionUuid = webhookSubscriptionUuid; + return this; + } + public PutV1VerifyWebhookSubscriptionUuidRequestBuilder requestBody(PutV1VerifyWebhookSubscriptionUuidRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); this.requestBody = requestBody; @@ -66,8 +66,8 @@ private PutV1VerifyWebhookSubscriptionUuidRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PutV1VerifyWebhookSubscriptionUuidRequest request = new PutV1VerifyWebhookSubscriptionUuidRequest(webhookSubscriptionUuid, - xGustoAPIVersion, + PutV1VerifyWebhookSubscriptionUuidRequest request = new PutV1VerifyWebhookSubscriptionUuidRequest(xGustoAPIVersion, + webhookSubscriptionUuid, requestBody); return request; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1WebhookSubscriptionUuidRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1WebhookSubscriptionUuidRequest.java index 6390e02a0..e3985bebe 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1WebhookSubscriptionUuidRequest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutV1WebhookSubscriptionUuidRequest.java @@ -16,12 +16,6 @@ public class PutV1WebhookSubscriptionUuidRequest { - /** - * The webhook subscription UUID. - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=webhook_subscription_uuid") - private String webhookSubscriptionUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -30,35 +24,33 @@ public class PutV1WebhookSubscriptionUuidRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The webhook subscription UUID. + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=webhook_subscription_uuid") + private String webhookSubscriptionUuid; + @SpeakeasyMetadata("request:mediaType=application/json") private PutV1WebhookSubscriptionUuidRequestBody requestBody; @JsonCreator public PutV1WebhookSubscriptionUuidRequest( - String webhookSubscriptionUuid, Optional xGustoAPIVersion, + String webhookSubscriptionUuid, PutV1WebhookSubscriptionUuidRequestBody requestBody) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); Utils.checkNotNull(requestBody, "requestBody"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; this.xGustoAPIVersion = xGustoAPIVersion; + this.webhookSubscriptionUuid = webhookSubscriptionUuid; this.requestBody = requestBody; } public PutV1WebhookSubscriptionUuidRequest( String webhookSubscriptionUuid, PutV1WebhookSubscriptionUuidRequestBody requestBody) { - this(webhookSubscriptionUuid, Optional.empty(), requestBody); - } - - /** - * The webhook subscription UUID. - */ - @JsonIgnore - public String webhookSubscriptionUuid() { - return webhookSubscriptionUuid; + this(Optional.empty(), webhookSubscriptionUuid, requestBody); } /** @@ -72,6 +64,14 @@ public Optional xGustoAPIVer return (Optional) xGustoAPIVersion; } + /** + * The webhook subscription UUID. + */ + @JsonIgnore + public String webhookSubscriptionUuid() { + return webhookSubscriptionUuid; + } + @JsonIgnore public PutV1WebhookSubscriptionUuidRequestBody requestBody() { return requestBody; @@ -82,15 +82,6 @@ public static Builder builder() { } - /** - * The webhook subscription UUID. - */ - public PutV1WebhookSubscriptionUuidRequest withWebhookSubscriptionUuid(String webhookSubscriptionUuid) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -114,6 +105,15 @@ public PutV1WebhookSubscriptionUuidRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String webhookSubscriptionUuid; + private PutV1WebhookSubscriptionUuidRequestBody requestBody; private Builder() { @@ -163,16 +163,6 @@ private Builder() { } - /** - * The webhook subscription UUID. - */ - public Builder webhookSubscriptionUuid(String webhookSubscriptionUuid) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -196,6 +186,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String webhookSubscriptionUuid; private PutV1WebhookSubscriptionUuidRequestBody requestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -35,12 +35,6 @@ public PutV1WebhookSubscriptionUuidRequestBuilder security(PutV1WebhookSubscript this.security = security; return this; } - - public PutV1WebhookSubscriptionUuidRequestBuilder webhookSubscriptionUuid(String webhookSubscriptionUuid) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; - return this; - } public PutV1WebhookSubscriptionUuidRequestBuilder xGustoAPIVersion(PutV1WebhookSubscriptionUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -54,6 +48,12 @@ public PutV1WebhookSubscriptionUuidRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion; + /** + * The UUID of the work address + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=work_address_uuid") + private String workAddressUuid; + @SpeakeasyMetadata("request:mediaType=application/json") private PutV1WorkAddressesWorkAddressUuidRequestBody requestBody; @JsonCreator public PutV1WorkAddressesWorkAddressUuidRequest( - String workAddressUuid, Optional xGustoAPIVersion, + String workAddressUuid, PutV1WorkAddressesWorkAddressUuidRequestBody requestBody) { - Utils.checkNotNull(workAddressUuid, "workAddressUuid"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(workAddressUuid, "workAddressUuid"); Utils.checkNotNull(requestBody, "requestBody"); - this.workAddressUuid = workAddressUuid; this.xGustoAPIVersion = xGustoAPIVersion; + this.workAddressUuid = workAddressUuid; this.requestBody = requestBody; } public PutV1WorkAddressesWorkAddressUuidRequest( String workAddressUuid, PutV1WorkAddressesWorkAddressUuidRequestBody requestBody) { - this(workAddressUuid, Optional.empty(), requestBody); - } - - /** - * The UUID of the work address - */ - @JsonIgnore - public String workAddressUuid() { - return workAddressUuid; + this(Optional.empty(), workAddressUuid, requestBody); } /** @@ -72,6 +64,14 @@ public Optional xGustoA return (Optional) xGustoAPIVersion; } + /** + * The UUID of the work address + */ + @JsonIgnore + public String workAddressUuid() { + return workAddressUuid; + } + @JsonIgnore public PutV1WorkAddressesWorkAddressUuidRequestBody requestBody() { return requestBody; @@ -82,15 +82,6 @@ public static Builder builder() { } - /** - * The UUID of the work address - */ - public PutV1WorkAddressesWorkAddressUuidRequest withWorkAddressUuid(String workAddressUuid) { - Utils.checkNotNull(workAddressUuid, "workAddressUuid"); - this.workAddressUuid = workAddressUuid; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -114,6 +105,15 @@ public PutV1WorkAddressesWorkAddressUuidRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String workAddressUuid; + private PutV1WorkAddressesWorkAddressUuidRequestBody requestBody; private Builder() { @@ -163,16 +163,6 @@ private Builder() { } - /** - * The UUID of the work address - */ - public Builder workAddressUuid(String workAddressUuid) { - Utils.checkNotNull(workAddressUuid, "workAddressUuid"); - this.workAddressUuid = workAddressUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -196,6 +186,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String workAddressUuid; private PutV1WorkAddressesWorkAddressUuidRequestBody requestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -28,12 +28,6 @@ public class PutV1WorkAddressesWorkAddressUuidRequestBuilder { public PutV1WorkAddressesWorkAddressUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutV1WorkAddressesWorkAddressUuidRequestBuilder workAddressUuid(String workAddressUuid) { - Utils.checkNotNull(workAddressUuid, "workAddressUuid"); - this.workAddressUuid = workAddressUuid; - return this; - } public PutV1WorkAddressesWorkAddressUuidRequestBuilder xGustoAPIVersion(PutV1WorkAddressesWorkAddressUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -47,6 +41,12 @@ public PutV1WorkAddressesWorkAddressUuidRequestBuilder xGustoAPIVersion(Optional return this; } + public PutV1WorkAddressesWorkAddressUuidRequestBuilder workAddressUuid(String workAddressUuid) { + Utils.checkNotNull(workAddressUuid, "workAddressUuid"); + this.workAddressUuid = workAddressUuid; + return this; + } + public PutV1WorkAddressesWorkAddressUuidRequestBuilder requestBody(PutV1WorkAddressesWorkAddressUuidRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); this.requestBody = requestBody; @@ -59,8 +59,8 @@ private PutV1WorkAddressesWorkAddressUuidRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PutV1WorkAddressesWorkAddressUuidRequest request = new PutV1WorkAddressesWorkAddressUuidRequest(workAddressUuid, - xGustoAPIVersion, + PutV1WorkAddressesWorkAddressUuidRequest request = new PutV1WorkAddressesWorkAddressUuidRequest(xGustoAPIVersion, + workAddressUuid, requestBody); return request; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutWireInRequestsWireInRequestUuidRequest.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutWireInRequestsWireInRequestUuidRequest.java index 6fcd7a510..dbed27a8a 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutWireInRequestsWireInRequestUuidRequest.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/PutWireInRequestsWireInRequestUuidRequest.java @@ -17,12 +17,6 @@ public class PutWireInRequestsWireInRequestUuidRequest { - /** - * The UUID of the Wire In Request - */ - @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=wire_in_request_uuid") - private String wireInRequestUuid; - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -31,35 +25,33 @@ public class PutWireInRequestsWireInRequestUuidRequest { @SpeakeasyMetadata("header:style=simple,explode=false,name=X-Gusto-API-Version") private Optional xGustoAPIVersion; + /** + * The UUID of the Wire In Request + */ + @SpeakeasyMetadata("pathParam:style=simple,explode=false,name=wire_in_request_uuid") + private String wireInRequestUuid; + @SpeakeasyMetadata("request:mediaType=application/json") private WireInRequestUpdateRequestBody wireInRequestUpdateRequestBody; @JsonCreator public PutWireInRequestsWireInRequestUuidRequest( - String wireInRequestUuid, Optional xGustoAPIVersion, + String wireInRequestUuid, WireInRequestUpdateRequestBody wireInRequestUpdateRequestBody) { - Utils.checkNotNull(wireInRequestUuid, "wireInRequestUuid"); Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + Utils.checkNotNull(wireInRequestUuid, "wireInRequestUuid"); Utils.checkNotNull(wireInRequestUpdateRequestBody, "wireInRequestUpdateRequestBody"); - this.wireInRequestUuid = wireInRequestUuid; this.xGustoAPIVersion = xGustoAPIVersion; + this.wireInRequestUuid = wireInRequestUuid; this.wireInRequestUpdateRequestBody = wireInRequestUpdateRequestBody; } public PutWireInRequestsWireInRequestUuidRequest( String wireInRequestUuid, WireInRequestUpdateRequestBody wireInRequestUpdateRequestBody) { - this(wireInRequestUuid, Optional.empty(), wireInRequestUpdateRequestBody); - } - - /** - * The UUID of the Wire In Request - */ - @JsonIgnore - public String wireInRequestUuid() { - return wireInRequestUuid; + this(Optional.empty(), wireInRequestUuid, wireInRequestUpdateRequestBody); } /** @@ -73,6 +65,14 @@ public Optional xGusto return (Optional) xGustoAPIVersion; } + /** + * The UUID of the Wire In Request + */ + @JsonIgnore + public String wireInRequestUuid() { + return wireInRequestUuid; + } + @JsonIgnore public WireInRequestUpdateRequestBody wireInRequestUpdateRequestBody() { return wireInRequestUpdateRequestBody; @@ -83,15 +83,6 @@ public static Builder builder() { } - /** - * The UUID of the Wire In Request - */ - public PutWireInRequestsWireInRequestUuidRequest withWireInRequestUuid(String wireInRequestUuid) { - Utils.checkNotNull(wireInRequestUuid, "wireInRequestUuid"); - this.wireInRequestUuid = wireInRequestUuid; - return this; - } - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -115,6 +106,15 @@ public PutWireInRequestsWireInRequestUuidRequest withXGustoAPIVersion(Optional xGustoAPIVersion; + private String wireInRequestUuid; + private WireInRequestUpdateRequestBody wireInRequestUpdateRequestBody; private Builder() { @@ -164,16 +164,6 @@ private Builder() { } - /** - * The UUID of the Wire In Request - */ - public Builder wireInRequestUuid(String wireInRequestUuid) { - Utils.checkNotNull(wireInRequestUuid, "wireInRequestUuid"); - this.wireInRequestUuid = wireInRequestUuid; - return this; - } - - /** * Determines the date-based API version associated with your API call. If none is provided, your * application's [minimum API @@ -197,6 +187,16 @@ public Builder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String wireInRequestUuid; private WireInRequestUpdateRequestBody wireInRequestUpdateRequestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -29,12 +29,6 @@ public class PutWireInRequestsWireInRequestUuidRequestBuilder { public PutWireInRequestsWireInRequestUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutWireInRequestsWireInRequestUuidRequestBuilder wireInRequestUuid(String wireInRequestUuid) { - Utils.checkNotNull(wireInRequestUuid, "wireInRequestUuid"); - this.wireInRequestUuid = wireInRequestUuid; - return this; - } public PutWireInRequestsWireInRequestUuidRequestBuilder xGustoAPIVersion(PutWireInRequestsWireInRequestUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -48,6 +42,12 @@ public PutWireInRequestsWireInRequestUuidRequestBuilder xGustoAPIVersion(Optiona return this; } + public PutWireInRequestsWireInRequestUuidRequestBuilder wireInRequestUuid(String wireInRequestUuid) { + Utils.checkNotNull(wireInRequestUuid, "wireInRequestUuid"); + this.wireInRequestUuid = wireInRequestUuid; + return this; + } + public PutWireInRequestsWireInRequestUuidRequestBuilder wireInRequestUpdateRequestBody(WireInRequestUpdateRequestBody wireInRequestUpdateRequestBody) { Utils.checkNotNull(wireInRequestUpdateRequestBody, "wireInRequestUpdateRequestBody"); this.wireInRequestUpdateRequestBody = wireInRequestUpdateRequestBody; @@ -60,8 +60,8 @@ private PutWireInRequestsWireInRequestUuidRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PutWireInRequestsWireInRequestUuidRequest request = new PutWireInRequestsWireInRequestUuidRequest(wireInRequestUuid, - xGustoAPIVersion, + PutWireInRequestsWireInRequestUuidRequest request = new PutWireInRequestsWireInRequestUuidRequest(xGustoAPIVersion, + wireInRequestUuid, wireInRequestUpdateRequestBody); return request; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/SubscriptionTypes.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/SubscriptionTypes.java index 590f5dd7b..0dd17850c 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/SubscriptionTypes.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/SubscriptionTypes.java @@ -25,7 +25,8 @@ public enum SubscriptionTypes { PAYROLL_SYNC("PayrollSync"), PAY_SCHEDULE("PaySchedule"), PEOPLE_BATCH("PeopleBatch"), - SIGNATORY("Signatory"); + SIGNATORY("Signatory"), + TIME_OFF_REQUEST("TimeOffRequest"); @JsonValue private final String value; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/DeleteDepartmentRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/DeleteDepartmentRequestBuilder.java index b7c13ff1b..6a6c7a02e 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/DeleteDepartmentRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/DeleteDepartmentRequestBuilder.java @@ -19,23 +19,17 @@ public class DeleteDepartmentRequestBuilder { - private String departmentUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String departmentUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public DeleteDepartmentRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public DeleteDepartmentRequestBuilder departmentUuid(String departmentUuid) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); - this.departmentUuid = departmentUuid; - return this; - } public DeleteDepartmentRequestBuilder xGustoAPIVersion(DeleteDepartmentHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public DeleteDepartmentRequestBuilder xGustoAPIVersion(Optional async = Optional.empty(); private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String companyId; + private String payrollId; + private Optional async = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public DeleteV1CompaniesCompanyIdPayrollsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } + + public DeleteV1CompaniesCompanyIdPayrollsRequestBuilder xGustoAPIVersion(DeleteV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public DeleteV1CompaniesCompanyIdPayrollsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } public DeleteV1CompaniesCompanyIdPayrollsRequestBuilder companyId(String companyId) { Utils.checkNotNull(companyId, "companyId"); @@ -57,18 +69,6 @@ public DeleteV1CompaniesCompanyIdPayrollsRequestBuilder async(Optional this.async = async; return this; } - - public DeleteV1CompaniesCompanyIdPayrollsRequestBuilder xGustoAPIVersion(DeleteV1CompaniesCompanyIdPayrollsHeaderXGustoAPIVersion xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); - return this; - } - - public DeleteV1CompaniesCompanyIdPayrollsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } private DeleteV1CompaniesCompanyIdPayrollsRequest buildRequest() { @@ -76,10 +76,10 @@ private DeleteV1CompaniesCompanyIdPayrollsRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - DeleteV1CompaniesCompanyIdPayrollsRequest request = new DeleteV1CompaniesCompanyIdPayrollsRequest(companyId, + DeleteV1CompaniesCompanyIdPayrollsRequest request = new DeleteV1CompaniesCompanyIdPayrollsRequest(xGustoAPIVersion, + companyId, payrollId, - async, - xGustoAPIVersion); + async); return request; } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder.java index dae305323..210cb75a8 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder.java @@ -19,30 +19,18 @@ public class DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder { - private String companyUuid; - private String signatoryUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String companyUuid; + private String signatoryUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder signatoryUuid(String signatoryUuid) { - Utils.checkNotNull(signatoryUuid, "signatoryUuid"); - this.signatoryUuid = signatoryUuid; - return this; - } public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder xGustoAPIVersion(DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -56,15 +44,27 @@ public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder xGusto return this; } + public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + public DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder signatoryUuid(String signatoryUuid) { + Utils.checkNotNull(signatoryUuid, "signatoryUuid"); + this.signatoryUuid = signatoryUuid; + return this; + } + private DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest request = new DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest(companyUuid, - signatoryUuid, - xGustoAPIVersion); + DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest request = new DeleteV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest(xGustoAPIVersion, + companyUuid, + signatoryUuid); return request; } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder.java index ae2e022d7..76e6b7986 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder.java @@ -19,23 +19,17 @@ public class DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder { - private String contractorPaymentGroupUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String contractorPaymentGroupUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder contractorPaymentGroupUuid(String contractorPaymentGroupUuid) { - Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); - this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; - return this; - } public DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder xGustoAPIVersion(DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder xGu return this; } + public DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder contractorPaymentGroupUuid(String contractorPaymentGroupUuid) { + Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); + this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; + return this; + } + private DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest request = new DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest(contractorPaymentGroupUuid, - xGustoAPIVersion); + DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest request = new DeleteV1ContractorPaymentGroupsContractorPaymentGroupIdRequest(xGustoAPIVersion, + contractorPaymentGroupUuid); return request; } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder.java new file mode 100644 index 000000000..131de7b9b --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder.java @@ -0,0 +1,79 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations.async; + +import static com.gusto.embedded_api_v_2026_06_15.operations.Operations.AsyncRequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2026_06_15.SDKConfiguration; +import com.gusto.embedded_api_v_2026_06_15.models.operations.DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2026_06_15.models.operations.DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest; +import com.gusto.embedded_api_v_2026_06_15.operations.DeleteV1ContractorsContractorUuidMemberPortalInvitations; +import com.gusto.embedded_api_v_2026_06_15.utils.Headers; +import com.gusto.embedded_api_v_2026_06_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.String; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; + +public class DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder { + + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2026-06-15\"", + new TypeReference>() {}); + private String contractorUuid; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder xGustoAPIVersion(DeleteV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder contractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + + + private DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest request = new DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest(xGustoAPIVersion, + contractorUuid); + + return request; + } + + public CompletableFuture call() { + + AsyncRequestOperation operation + = new DeleteV1ContractorsContractorUuidMemberPortalInvitations.Async(sdkConfiguration, _headers); + DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest request = buildRequest(); + + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2026-06-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse.java new file mode 100644 index 000000000..40155f899 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse.java @@ -0,0 +1,181 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations.async; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2026_06_15.utils.AsyncResponse; +import com.gusto.embedded_api_v_2026_06_15.utils.Blob; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.net.http.HttpResponse; + + +public class DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse implements AsyncResponse { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + @JsonCreator + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse other = (DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse); + } + + @Override + public String toString() { + return Utils.toString(DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse build() { + + return new DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse( + contentType, statusCode, rawResponse); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/DeleteV1ContractorsContractorUuidRehireRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/DeleteV1ContractorsContractorUuidRehireRequestBuilder.java index 395b751fa..dc4af8be3 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/DeleteV1ContractorsContractorUuidRehireRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/DeleteV1ContractorsContractorUuidRehireRequestBuilder.java @@ -19,23 +19,17 @@ public class DeleteV1ContractorsContractorUuidRehireRequestBuilder { - private String contractorUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String contractorUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public DeleteV1ContractorsContractorUuidRehireRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public DeleteV1ContractorsContractorUuidRehireRequestBuilder contractorUuid(String contractorUuid) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); - this.contractorUuid = contractorUuid; - return this; - } public DeleteV1ContractorsContractorUuidRehireRequestBuilder xGustoAPIVersion(DeleteV1ContractorsContractorUuidRehireHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public DeleteV1ContractorsContractorUuidRehireRequestBuilder xGustoAPIVersion(Op return this; } + public DeleteV1ContractorsContractorUuidRehireRequestBuilder contractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + private DeleteV1ContractorsContractorUuidRehireRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - DeleteV1ContractorsContractorUuidRehireRequest request = new DeleteV1ContractorsContractorUuidRehireRequest(contractorUuid, - xGustoAPIVersion); + DeleteV1ContractorsContractorUuidRehireRequest request = new DeleteV1ContractorsContractorUuidRehireRequest(xGustoAPIVersion, + contractorUuid); return request; } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/DeleteV1ContractorsContractorUuidTerminationRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/DeleteV1ContractorsContractorUuidTerminationRequestBuilder.java index c3a33ad87..916890e11 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/DeleteV1ContractorsContractorUuidTerminationRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/DeleteV1ContractorsContractorUuidTerminationRequestBuilder.java @@ -19,23 +19,17 @@ public class DeleteV1ContractorsContractorUuidTerminationRequestBuilder { - private String contractorUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String contractorUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public DeleteV1ContractorsContractorUuidTerminationRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public DeleteV1ContractorsContractorUuidTerminationRequestBuilder contractorUuid(String contractorUuid) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); - this.contractorUuid = contractorUuid; - return this; - } public DeleteV1ContractorsContractorUuidTerminationRequestBuilder xGustoAPIVersion(DeleteV1ContractorsContractorUuidTerminationHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public DeleteV1ContractorsContractorUuidTerminationRequestBuilder xGustoAPIVersi return this; } + public DeleteV1ContractorsContractorUuidTerminationRequestBuilder contractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + private DeleteV1ContractorsContractorUuidTerminationRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - DeleteV1ContractorsContractorUuidTerminationRequest request = new DeleteV1ContractorsContractorUuidTerminationRequest(contractorUuid, - xGustoAPIVersion); + DeleteV1ContractorsContractorUuidTerminationRequest request = new DeleteV1ContractorsContractorUuidTerminationRequest(xGustoAPIVersion, + contractorUuid); return request; } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java new file mode 100644 index 000000000..d5b511213 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java @@ -0,0 +1,79 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations.async; + +import static com.gusto.embedded_api_v_2026_06_15.operations.Operations.AsyncRequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2026_06_15.SDKConfiguration; +import com.gusto.embedded_api_v_2026_06_15.models.operations.DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2026_06_15.models.operations.DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest; +import com.gusto.embedded_api_v_2026_06_15.operations.DeleteV1EmployeesEmployeeIdMemberPortalInvitations; +import com.gusto.embedded_api_v_2026_06_15.utils.Headers; +import com.gusto.embedded_api_v_2026_06_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.String; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; + +public class DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder { + + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2026-06-15\"", + new TypeReference>() {}); + private String employeeId; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder xGustoAPIVersion(DeleteV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder employeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + + + private DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest request = new DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest(xGustoAPIVersion, + employeeId); + + return request; + } + + public CompletableFuture call() { + + AsyncRequestOperation operation + = new DeleteV1EmployeesEmployeeIdMemberPortalInvitations.Async(sdkConfiguration, _headers); + DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest request = buildRequest(); + + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2026-06-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java new file mode 100644 index 000000000..afbe15ef7 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java @@ -0,0 +1,181 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations.async; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2026_06_15.utils.AsyncResponse; +import com.gusto.embedded_api_v_2026_06_15.utils.Blob; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.net.http.HttpResponse; + + +public class DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse implements AsyncResponse { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + @JsonCreator + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse other = (DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse); + } + + @Override + public String toString() { + return Utils.toString(DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse build() { + + return new DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse( + contentType, statusCode, rawResponse); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/DeleteV1JobsJobIdRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/DeleteV1JobsJobIdRequestBuilder.java index 3bf021843..c255040d8 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/DeleteV1JobsJobIdRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/DeleteV1JobsJobIdRequestBuilder.java @@ -19,23 +19,17 @@ public class DeleteV1JobsJobIdRequestBuilder { - private String jobId; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String jobId; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public DeleteV1JobsJobIdRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public DeleteV1JobsJobIdRequestBuilder jobId(String jobId) { - Utils.checkNotNull(jobId, "jobId"); - this.jobId = jobId; - return this; - } public DeleteV1JobsJobIdRequestBuilder xGustoAPIVersion(DeleteV1JobsJobIdHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public DeleteV1JobsJobIdRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String webhookSubscriptionUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -38,12 +38,6 @@ public DeleteV1WebhookSubscriptionUuidRequestBuilder security(DeleteV1WebhookSub this.security = security; return this; } - - public DeleteV1WebhookSubscriptionUuidRequestBuilder webhookSubscriptionUuid(String webhookSubscriptionUuid) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; - return this; - } public DeleteV1WebhookSubscriptionUuidRequestBuilder xGustoAPIVersion(DeleteV1WebhookSubscriptionUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -57,14 +51,20 @@ public DeleteV1WebhookSubscriptionUuidRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String workAddressUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public DeleteV1WorkAddressesWorkAddressUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public DeleteV1WorkAddressesWorkAddressUuidRequestBuilder workAddressUuid(String workAddressUuid) { - Utils.checkNotNull(workAddressUuid, "workAddressUuid"); - this.workAddressUuid = workAddressUuid; - return this; - } public DeleteV1WorkAddressesWorkAddressUuidRequestBuilder xGustoAPIVersion(DeleteV1WorkAddressesWorkAddressUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public DeleteV1WorkAddressesWorkAddressUuidRequestBuilder xGustoAPIVersion(Optio return this; } + public DeleteV1WorkAddressesWorkAddressUuidRequestBuilder workAddressUuid(String workAddressUuid) { + Utils.checkNotNull(workAddressUuid, "workAddressUuid"); + this.workAddressUuid = workAddressUuid; + return this; + } + private DeleteV1WorkAddressesWorkAddressUuidRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - DeleteV1WorkAddressesWorkAddressUuidRequest request = new DeleteV1WorkAddressesWorkAddressUuidRequest(workAddressUuid, - xGustoAPIVersion); + DeleteV1WorkAddressesWorkAddressUuidRequest request = new DeleteV1WorkAddressesWorkAddressUuidRequest(xGustoAPIVersion, + workAddressUuid); return request; } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder.java index 37d5c8ed6..96b43d2ea 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder.java @@ -20,11 +20,11 @@ public class GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder { - private String companyUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String companyUuid; private Optional page = Optional.empty(); private Optional per = Optional.empty(); private final SDKConfiguration sdkConfiguration; @@ -33,12 +33,6 @@ public class GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder { public GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder xGustoAPIVersion(GetCompaniesCompanyUuidWireInRequestUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder xGustoAPIVersion(O this.xGustoAPIVersion = xGustoAPIVersion; return this; } + + public GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } public GetCompaniesCompanyUuidWireInRequestUuidRequestBuilder page(long page) { Utils.checkNotNull(page, "page"); @@ -82,8 +82,8 @@ private GetCompaniesCompanyUuidWireInRequestUuidRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetCompaniesCompanyUuidWireInRequestUuidRequest request = new GetCompaniesCompanyUuidWireInRequestUuidRequest(companyUuid, - xGustoAPIVersion, + GetCompaniesCompanyUuidWireInRequestUuidRequest request = new GetCompaniesCompanyUuidWireInRequestUuidRequest(xGustoAPIVersion, + companyUuid, page, per); diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetCompaniesDepartmentsRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetCompaniesDepartmentsRequestBuilder.java index 8b6bb07d6..675a6369d 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetCompaniesDepartmentsRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetCompaniesDepartmentsRequestBuilder.java @@ -19,23 +19,17 @@ public class GetCompaniesDepartmentsRequestBuilder { - private String companyUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String companyUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetCompaniesDepartmentsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetCompaniesDepartmentsRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public GetCompaniesDepartmentsRequestBuilder xGustoAPIVersion(GetCompaniesDepartmentsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public GetCompaniesDepartmentsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String departmentUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetDepartmentRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetDepartmentRequestBuilder departmentUuid(String departmentUuid) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); - this.departmentUuid = departmentUuid; - return this; - } public GetDepartmentRequestBuilder xGustoAPIVersion(GetDepartmentHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public GetDepartmentRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String notificationUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetNotificationsNotificationUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetNotificationsNotificationUuidRequestBuilder notificationUuid(String notificationUuid) { - Utils.checkNotNull(notificationUuid, "notificationUuid"); - this.notificationUuid = notificationUuid; - return this; - } public GetNotificationsNotificationUuidRequestBuilder xGustoAPIVersion(GetNotificationsNotificationUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public GetNotificationsNotificationUuidRequestBuilder xGustoAPIVersion(Optional< return this; } + public GetNotificationsNotificationUuidRequestBuilder notificationUuid(String notificationUuid) { + Utils.checkNotNull(notificationUuid, "notificationUuid"); + this.notificationUuid = notificationUuid; + return this; + } + private GetNotificationsNotificationUuidRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetNotificationsNotificationUuidRequest request = new GetNotificationsNotificationUuidRequest(notificationUuid, - xGustoAPIVersion); + GetNotificationsNotificationUuidRequest request = new GetNotificationsNotificationUuidRequest(xGustoAPIVersion, + notificationUuid); return request; } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetReverseWireTransactionsRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetReverseWireTransactionsRequestBuilder.java new file mode 100644 index 000000000..baac98420 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetReverseWireTransactionsRequestBuilder.java @@ -0,0 +1,39 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations.async; + +import static com.gusto.embedded_api_v_2026_06_15.operations.Operations.AsyncRequestOperation; + +import com.gusto.embedded_api_v_2026_06_15.SDKConfiguration; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetReverseWireTransactionsRequest; +import com.gusto.embedded_api_v_2026_06_15.operations.GetReverseWireTransactions; +import com.gusto.embedded_api_v_2026_06_15.utils.Headers; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.util.concurrent.CompletableFuture; + +public class GetReverseWireTransactionsRequestBuilder { + + private GetReverseWireTransactionsRequest request; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public GetReverseWireTransactionsRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public GetReverseWireTransactionsRequestBuilder request(GetReverseWireTransactionsRequest request) { + Utils.checkNotNull(request, "request"); + this.request = request; + return this; + } + + public CompletableFuture call() { + + AsyncRequestOperation operation + = new GetReverseWireTransactions.Async(sdkConfiguration, _headers); + + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetReverseWireTransactionsResponse.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetReverseWireTransactionsResponse.java new file mode 100644 index 000000000..3be2dd35c --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetReverseWireTransactionsResponse.java @@ -0,0 +1,254 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations.async; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2026_06_15.models.components.ReverseWireTransaction; +import com.gusto.embedded_api_v_2026_06_15.utils.AsyncResponse; +import com.gusto.embedded_api_v_2026_06_15.utils.Blob; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.List; +import java.util.Optional; + + +public class GetReverseWireTransactionsResponse implements AsyncResponse { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * Example response + */ + private Optional> reverseWireTransactionList; + + @JsonCreator + public GetReverseWireTransactionsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional> reverseWireTransactionList) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(reverseWireTransactionList, "reverseWireTransactionList"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.reverseWireTransactionList = reverseWireTransactionList; + } + + public GetReverseWireTransactionsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * Example response + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> reverseWireTransactionList() { + return (Optional>) reverseWireTransactionList; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public GetReverseWireTransactionsResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public GetReverseWireTransactionsResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public GetReverseWireTransactionsResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * Example response + */ + public GetReverseWireTransactionsResponse withReverseWireTransactionList(List reverseWireTransactionList) { + Utils.checkNotNull(reverseWireTransactionList, "reverseWireTransactionList"); + this.reverseWireTransactionList = Optional.ofNullable(reverseWireTransactionList); + return this; + } + + + /** + * Example response + */ + public GetReverseWireTransactionsResponse withReverseWireTransactionList(Optional> reverseWireTransactionList) { + Utils.checkNotNull(reverseWireTransactionList, "reverseWireTransactionList"); + this.reverseWireTransactionList = reverseWireTransactionList; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetReverseWireTransactionsResponse other = (GetReverseWireTransactionsResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.reverseWireTransactionList, other.reverseWireTransactionList); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + reverseWireTransactionList); + } + + @Override + public String toString() { + return Utils.toString(GetReverseWireTransactionsResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "reverseWireTransactionList", reverseWireTransactionList); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional> reverseWireTransactionList = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * Example response + */ + public Builder reverseWireTransactionList(List reverseWireTransactionList) { + Utils.checkNotNull(reverseWireTransactionList, "reverseWireTransactionList"); + this.reverseWireTransactionList = Optional.ofNullable(reverseWireTransactionList); + return this; + } + + /** + * Example response + */ + public Builder reverseWireTransactionList(Optional> reverseWireTransactionList) { + Utils.checkNotNull(reverseWireTransactionList, "reverseWireTransactionList"); + this.reverseWireTransactionList = reverseWireTransactionList; + return this; + } + + public GetReverseWireTransactionsResponse build() { + + return new GetReverseWireTransactionsResponse( + contentType, statusCode, rawResponse, + reverseWireTransactionList); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetTaxPaymentRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetTaxPaymentRequestBuilder.java new file mode 100644 index 000000000..856e2f45b --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetTaxPaymentRequestBuilder.java @@ -0,0 +1,87 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations.async; + +import static com.gusto.embedded_api_v_2026_06_15.operations.Operations.AsyncRequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2026_06_15.SDKConfiguration; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetTaxPaymentHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetTaxPaymentRequest; +import com.gusto.embedded_api_v_2026_06_15.operations.GetTaxPayment; +import com.gusto.embedded_api_v_2026_06_15.utils.Headers; +import com.gusto.embedded_api_v_2026_06_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.String; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; + +public class GetTaxPaymentRequestBuilder { + + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2026-06-15\"", + new TypeReference>() {}); + private String companyUuid; + private String uuid; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public GetTaxPaymentRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public GetTaxPaymentRequestBuilder xGustoAPIVersion(GetTaxPaymentHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetTaxPaymentRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public GetTaxPaymentRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + public GetTaxPaymentRequestBuilder uuid(String uuid) { + Utils.checkNotNull(uuid, "uuid"); + this.uuid = uuid; + return this; + } + + + private GetTaxPaymentRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + GetTaxPaymentRequest request = new GetTaxPaymentRequest(xGustoAPIVersion, + companyUuid, + uuid); + + return request; + } + + public CompletableFuture call() { + + AsyncRequestOperation operation + = new GetTaxPayment.Async(sdkConfiguration, _headers); + GetTaxPaymentRequest request = buildRequest(); + + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2026-06-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetTaxPaymentResponse.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetTaxPaymentResponse.java new file mode 100644 index 000000000..41aa39d12 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetTaxPaymentResponse.java @@ -0,0 +1,253 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations.async; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2026_06_15.models.components.TaxPayment; +import com.gusto.embedded_api_v_2026_06_15.utils.AsyncResponse; +import com.gusto.embedded_api_v_2026_06_15.utils.Blob; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.Optional; + + +public class GetTaxPaymentResponse implements AsyncResponse { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * Success + */ + private Optional taxPayment; + + @JsonCreator + public GetTaxPaymentResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional taxPayment) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(taxPayment, "taxPayment"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.taxPayment = taxPayment; + } + + public GetTaxPaymentResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * Success + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional taxPayment() { + return (Optional) taxPayment; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public GetTaxPaymentResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public GetTaxPaymentResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public GetTaxPaymentResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * Success + */ + public GetTaxPaymentResponse withTaxPayment(TaxPayment taxPayment) { + Utils.checkNotNull(taxPayment, "taxPayment"); + this.taxPayment = Optional.ofNullable(taxPayment); + return this; + } + + + /** + * Success + */ + public GetTaxPaymentResponse withTaxPayment(Optional taxPayment) { + Utils.checkNotNull(taxPayment, "taxPayment"); + this.taxPayment = taxPayment; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetTaxPaymentResponse other = (GetTaxPaymentResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.taxPayment, other.taxPayment); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + taxPayment); + } + + @Override + public String toString() { + return Utils.toString(GetTaxPaymentResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "taxPayment", taxPayment); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional taxPayment = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * Success + */ + public Builder taxPayment(TaxPayment taxPayment) { + Utils.checkNotNull(taxPayment, "taxPayment"); + this.taxPayment = Optional.ofNullable(taxPayment); + return this; + } + + /** + * Success + */ + public Builder taxPayment(Optional taxPayment) { + Utils.checkNotNull(taxPayment, "taxPayment"); + this.taxPayment = taxPayment; + return this; + } + + public GetTaxPaymentResponse build() { + + return new GetTaxPaymentResponse( + contentType, statusCode, rawResponse, + taxPayment); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetTaxPaymentsRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetTaxPaymentsRequestBuilder.java new file mode 100644 index 000000000..3e77db193 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetTaxPaymentsRequestBuilder.java @@ -0,0 +1,39 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations.async; + +import static com.gusto.embedded_api_v_2026_06_15.operations.Operations.AsyncRequestOperation; + +import com.gusto.embedded_api_v_2026_06_15.SDKConfiguration; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetTaxPaymentsRequest; +import com.gusto.embedded_api_v_2026_06_15.operations.GetTaxPayments; +import com.gusto.embedded_api_v_2026_06_15.utils.Headers; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.util.concurrent.CompletableFuture; + +public class GetTaxPaymentsRequestBuilder { + + private GetTaxPaymentsRequest request; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public GetTaxPaymentsRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public GetTaxPaymentsRequestBuilder request(GetTaxPaymentsRequest request) { + Utils.checkNotNull(request, "request"); + this.request = request; + return this; + } + + public CompletableFuture call() { + + AsyncRequestOperation operation + = new GetTaxPayments.Async(sdkConfiguration, _headers); + + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetTaxPaymentsResponse.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetTaxPaymentsResponse.java new file mode 100644 index 000000000..a82073191 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetTaxPaymentsResponse.java @@ -0,0 +1,254 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations.async; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2026_06_15.models.components.TaxPayment; +import com.gusto.embedded_api_v_2026_06_15.utils.AsyncResponse; +import com.gusto.embedded_api_v_2026_06_15.utils.Blob; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.List; +import java.util.Optional; + + +public class GetTaxPaymentsResponse implements AsyncResponse { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * Success + */ + private Optional> taxPaymentList; + + @JsonCreator + public GetTaxPaymentsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional> taxPaymentList) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(taxPaymentList, "taxPaymentList"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.taxPaymentList = taxPaymentList; + } + + public GetTaxPaymentsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * Success + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> taxPaymentList() { + return (Optional>) taxPaymentList; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public GetTaxPaymentsResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public GetTaxPaymentsResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public GetTaxPaymentsResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * Success + */ + public GetTaxPaymentsResponse withTaxPaymentList(List taxPaymentList) { + Utils.checkNotNull(taxPaymentList, "taxPaymentList"); + this.taxPaymentList = Optional.ofNullable(taxPaymentList); + return this; + } + + + /** + * Success + */ + public GetTaxPaymentsResponse withTaxPaymentList(Optional> taxPaymentList) { + Utils.checkNotNull(taxPaymentList, "taxPaymentList"); + this.taxPaymentList = taxPaymentList; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetTaxPaymentsResponse other = (GetTaxPaymentsResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.taxPaymentList, other.taxPaymentList); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + taxPaymentList); + } + + @Override + public String toString() { + return Utils.toString(GetTaxPaymentsResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "taxPaymentList", taxPaymentList); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional> taxPaymentList = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * Success + */ + public Builder taxPaymentList(List taxPaymentList) { + Utils.checkNotNull(taxPaymentList, "taxPaymentList"); + this.taxPaymentList = Optional.ofNullable(taxPaymentList); + return this; + } + + /** + * Success + */ + public Builder taxPaymentList(Optional> taxPaymentList) { + Utils.checkNotNull(taxPaymentList, "taxPaymentList"); + this.taxPaymentList = taxPaymentList; + return this; + } + + public GetTaxPaymentsResponse build() { + + return new GetTaxPaymentsResponse( + contentType, statusCode, rawResponse, + taxPaymentList); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1BenefitsResponse.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1BenefitsResponse.java index be10b7841..6bb2f705c 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1BenefitsResponse.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1BenefitsResponse.java @@ -37,22 +37,22 @@ public class GetV1BenefitsResponse implements AsyncResponse { /** * Successful */ - private Optional> supportedBenefits; + private Optional> supportedBenefitList; @JsonCreator public GetV1BenefitsResponse( String contentType, int statusCode, HttpResponse rawResponse, - Optional> supportedBenefits) { + Optional> supportedBenefitList) { Utils.checkNotNull(contentType, "contentType"); Utils.checkNotNull(statusCode, "statusCode"); Utils.checkNotNull(rawResponse, "rawResponse"); - Utils.checkNotNull(supportedBenefits, "supportedBenefits"); + Utils.checkNotNull(supportedBenefitList, "supportedBenefitList"); this.contentType = contentType; this.statusCode = statusCode; this.rawResponse = rawResponse; - this.supportedBenefits = supportedBenefits; + this.supportedBenefitList = supportedBenefitList; } public GetV1BenefitsResponse( @@ -92,8 +92,8 @@ public HttpResponse rawResponse() { */ @SuppressWarnings("unchecked") @JsonIgnore - public Optional> supportedBenefits() { - return (Optional>) supportedBenefits; + public Optional> supportedBenefitList() { + return (Optional>) supportedBenefitList; } public static Builder builder() { @@ -131,9 +131,9 @@ public GetV1BenefitsResponse withRawResponse(HttpResponse rawResponse) { /** * Successful */ - public GetV1BenefitsResponse withSupportedBenefits(List supportedBenefits) { - Utils.checkNotNull(supportedBenefits, "supportedBenefits"); - this.supportedBenefits = Optional.ofNullable(supportedBenefits); + public GetV1BenefitsResponse withSupportedBenefitList(List supportedBenefitList) { + Utils.checkNotNull(supportedBenefitList, "supportedBenefitList"); + this.supportedBenefitList = Optional.ofNullable(supportedBenefitList); return this; } @@ -141,9 +141,9 @@ public GetV1BenefitsResponse withSupportedBenefits(List suppor /** * Successful */ - public GetV1BenefitsResponse withSupportedBenefits(Optional> supportedBenefits) { - Utils.checkNotNull(supportedBenefits, "supportedBenefits"); - this.supportedBenefits = supportedBenefits; + public GetV1BenefitsResponse withSupportedBenefitList(Optional> supportedBenefitList) { + Utils.checkNotNull(supportedBenefitList, "supportedBenefitList"); + this.supportedBenefitList = supportedBenefitList; return this; } @@ -160,14 +160,14 @@ public boolean equals(java.lang.Object o) { Utils.enhancedDeepEquals(this.contentType, other.contentType) && Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && - Utils.enhancedDeepEquals(this.supportedBenefits, other.supportedBenefits); + Utils.enhancedDeepEquals(this.supportedBenefitList, other.supportedBenefitList); } @Override public int hashCode() { return Utils.enhancedHash( contentType, statusCode, rawResponse, - supportedBenefits); + supportedBenefitList); } @Override @@ -176,7 +176,7 @@ public String toString() { "contentType", contentType, "statusCode", statusCode, "rawResponse", rawResponse, - "supportedBenefits", supportedBenefits); + "supportedBenefitList", supportedBenefitList); } @SuppressWarnings("UnusedReturnValue") @@ -188,7 +188,7 @@ public final static class Builder { private HttpResponse rawResponse; - private Optional> supportedBenefits = Optional.empty(); + private Optional> supportedBenefitList = Optional.empty(); private Builder() { // force use of static builder() method @@ -228,18 +228,18 @@ public Builder rawResponse(HttpResponse rawResponse) { /** * Successful */ - public Builder supportedBenefits(List supportedBenefits) { - Utils.checkNotNull(supportedBenefits, "supportedBenefits"); - this.supportedBenefits = Optional.ofNullable(supportedBenefits); + public Builder supportedBenefitList(List supportedBenefitList) { + Utils.checkNotNull(supportedBenefitList, "supportedBenefitList"); + this.supportedBenefitList = Optional.ofNullable(supportedBenefitList); return this; } /** * Successful */ - public Builder supportedBenefits(Optional> supportedBenefits) { - Utils.checkNotNull(supportedBenefits, "supportedBenefits"); - this.supportedBenefits = supportedBenefits; + public Builder supportedBenefitList(Optional> supportedBenefitList) { + Utils.checkNotNull(supportedBenefitList, "supportedBenefitList"); + this.supportedBenefitList = supportedBenefitList; return this; } @@ -247,7 +247,7 @@ public GetV1BenefitsResponse build() { return new GetV1BenefitsResponse( contentType, statusCode, rawResponse, - supportedBenefits); + supportedBenefitList); } } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1BulkReportsRequestUuidRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1BulkReportsRequestUuidRequestBuilder.java new file mode 100644 index 000000000..f1fd18eca --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1BulkReportsRequestUuidRequestBuilder.java @@ -0,0 +1,87 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations.async; + +import static com.gusto.embedded_api_v_2026_06_15.operations.Operations.AsyncRequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2026_06_15.SDKConfiguration; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1BulkReportsRequestUuidRequest; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1BulkReportsRequestUuidSecurity; +import com.gusto.embedded_api_v_2026_06_15.operations.GetV1BulkReportsRequestUuid; +import com.gusto.embedded_api_v_2026_06_15.utils.Headers; +import com.gusto.embedded_api_v_2026_06_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.String; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; + +public class GetV1BulkReportsRequestUuidRequestBuilder { + + private GetV1BulkReportsRequestUuidSecurity security; + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2026-06-15\"", + new TypeReference>() {}); + private String requestUuid; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public GetV1BulkReportsRequestUuidRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public GetV1BulkReportsRequestUuidRequestBuilder security(GetV1BulkReportsRequestUuidSecurity security) { + Utils.checkNotNull(security, "security"); + this.security = security; + return this; + } + + public GetV1BulkReportsRequestUuidRequestBuilder xGustoAPIVersion(GetV1BulkReportsRequestUuidHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetV1BulkReportsRequestUuidRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public GetV1BulkReportsRequestUuidRequestBuilder requestUuid(String requestUuid) { + Utils.checkNotNull(requestUuid, "requestUuid"); + this.requestUuid = requestUuid; + return this; + } + + + private GetV1BulkReportsRequestUuidRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + GetV1BulkReportsRequestUuidRequest request = new GetV1BulkReportsRequestUuidRequest(xGustoAPIVersion, + requestUuid); + + return request; + } + + public CompletableFuture call() { + + AsyncRequestOperation operation + = new GetV1BulkReportsRequestUuid.Async(sdkConfiguration, security, _headers); + GetV1BulkReportsRequestUuidRequest request = buildRequest(); + + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2026-06-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1BulkReportsRequestUuidResponse.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1BulkReportsRequestUuidResponse.java new file mode 100644 index 000000000..ac91d1a12 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1BulkReportsRequestUuidResponse.java @@ -0,0 +1,253 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations.async; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2026_06_15.models.components.BulkReport; +import com.gusto.embedded_api_v_2026_06_15.utils.AsyncResponse; +import com.gusto.embedded_api_v_2026_06_15.utils.Blob; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.Optional; + + +public class GetV1BulkReportsRequestUuidResponse implements AsyncResponse { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * OK + */ + private Optional bulkReport; + + @JsonCreator + public GetV1BulkReportsRequestUuidResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional bulkReport) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(bulkReport, "bulkReport"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.bulkReport = bulkReport; + } + + public GetV1BulkReportsRequestUuidResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * OK + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional bulkReport() { + return (Optional) bulkReport; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public GetV1BulkReportsRequestUuidResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public GetV1BulkReportsRequestUuidResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public GetV1BulkReportsRequestUuidResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * OK + */ + public GetV1BulkReportsRequestUuidResponse withBulkReport(BulkReport bulkReport) { + Utils.checkNotNull(bulkReport, "bulkReport"); + this.bulkReport = Optional.ofNullable(bulkReport); + return this; + } + + + /** + * OK + */ + public GetV1BulkReportsRequestUuidResponse withBulkReport(Optional bulkReport) { + Utils.checkNotNull(bulkReport, "bulkReport"); + this.bulkReport = bulkReport; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetV1BulkReportsRequestUuidResponse other = (GetV1BulkReportsRequestUuidResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.bulkReport, other.bulkReport); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + bulkReport); + } + + @Override + public String toString() { + return Utils.toString(GetV1BulkReportsRequestUuidResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "bulkReport", bulkReport); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional bulkReport = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * OK + */ + public Builder bulkReport(BulkReport bulkReport) { + Utils.checkNotNull(bulkReport, "bulkReport"); + this.bulkReport = Optional.ofNullable(bulkReport); + return this; + } + + /** + * OK + */ + public Builder bulkReport(Optional bulkReport) { + Utils.checkNotNull(bulkReport, "bulkReport"); + this.bulkReport = bulkReport; + return this; + } + + public GetV1BulkReportsRequestUuidResponse build() { + + return new GetV1BulkReportsRequestUuidResponse( + contentType, statusCode, rawResponse, + bulkReport); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder.java index c617af7a9..1a279fdd5 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder.java @@ -19,19 +19,31 @@ public class GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder { - private String companyId; - private Optional contractorUuid = Optional.empty(); - private Optional contractorPaymentGroupUuid = Optional.empty(); private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String companyId; + private Optional contractorUuid = Optional.empty(); + private Optional contractorPaymentGroupUuid = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } + + public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder xGustoAPIVersion(GetV1CompaniesCompanyIdContractorsPaymentDetailsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder companyId(String companyId) { Utils.checkNotNull(companyId, "companyId"); @@ -62,18 +74,6 @@ public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder contractor this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; return this; } - - public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder xGustoAPIVersion(GetV1CompaniesCompanyIdContractorsPaymentDetailsHeaderXGustoAPIVersion xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); - return this; - } - - public GetV1CompaniesCompanyIdContractorsPaymentDetailsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } private GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest buildRequest() { @@ -81,10 +81,10 @@ private GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest request = new GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest(companyId, + GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest request = new GetV1CompaniesCompanyIdContractorsPaymentDetailsRequest(xGustoAPIVersion, + companyId, contractorUuid, - contractorPaymentGroupUuid, - xGustoAPIVersion); + contractorPaymentGroupUuid); return request; } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder.java index 7f8062c35..218d2b996 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder.java @@ -19,23 +19,17 @@ public class GetV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder { - private String companyId; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String companyId; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } public GetV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder xGustoAPIVersion(GetV1CompaniesCompanyIdFederalTaxDetailsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public GetV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder xGustoAPIVersion(O return this; } + public GetV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder companyId(String companyId) { + Utils.checkNotNull(companyId, "companyId"); + this.companyId = companyId; + return this; + } + private GetV1CompaniesCompanyIdFederalTaxDetailsRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1CompaniesCompanyIdFederalTaxDetailsRequest request = new GetV1CompaniesCompanyIdFederalTaxDetailsRequest(companyId, - xGustoAPIVersion); + GetV1CompaniesCompanyIdFederalTaxDetailsRequest request = new GetV1CompaniesCompanyIdFederalTaxDetailsRequest(xGustoAPIVersion, + companyId); return request; } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder.java index cc2369833..9f19f0aaf 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder.java @@ -7,7 +7,7 @@ import com.fasterxml.jackson.core.type.TypeReference; import com.gusto.embedded_api_v_2026_06_15.SDKConfiguration; -import com.gusto.embedded_api_v_2026_06_15.models.components.VersionHeader; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1CompaniesCompanyIdPayrollReversalsRequest; import com.gusto.embedded_api_v_2026_06_15.operations.GetV1CompaniesCompanyIdPayrollReversals; import com.gusto.embedded_api_v_2026_06_15.utils.Headers; @@ -20,19 +20,31 @@ public class GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder { + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2026-06-15\"", + new TypeReference>() {}); private String companyId; private Optional page = Optional.empty(); private Optional per = Optional.empty(); - private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( - "xGustoAPIVersion", - "\"2026-06-15\"", - new TypeReference>() {}); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } + + public GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder xGustoAPIVersion(GetV1CompaniesCompanyIdPayrollReversalsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } public GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder companyId(String companyId) { Utils.checkNotNull(companyId, "companyId"); @@ -63,18 +75,6 @@ public GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder per(Optional this.per = per; return this; } - - public GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder xGustoAPIVersion(VersionHeader xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); - return this; - } - - public GetV1CompaniesCompanyIdPayrollReversalsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } private GetV1CompaniesCompanyIdPayrollReversalsRequest buildRequest() { @@ -82,10 +82,10 @@ private GetV1CompaniesCompanyIdPayrollReversalsRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1CompaniesCompanyIdPayrollReversalsRequest request = new GetV1CompaniesCompanyIdPayrollReversalsRequest(companyId, + GetV1CompaniesCompanyIdPayrollReversalsRequest request = new GetV1CompaniesCompanyIdPayrollReversalsRequest(xGustoAPIVersion, + companyId, page, - per, - xGustoAPIVersion); + per); return request; } @@ -100,9 +100,9 @@ public CompletableFuture call() .thenCompose(operation::handleResponse); } - private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = new LazySingletonValue<>( "xGustoAPIVersion", "\"2026-06-15\"", - new TypeReference>() {}); + new TypeReference>() {}); } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder.java index 941464d06..88324c3c1 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder.java @@ -19,30 +19,18 @@ public class GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder { - private String companyId; - private String id; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String companyId; + private String id; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - - public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder id(String id) { - Utils.checkNotNull(id, "id"); - this.id = id; - return this; - } public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder xGustoAPIVersion(GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -56,15 +44,27 @@ public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder xGust return this; } + public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder companyId(String companyId) { + Utils.checkNotNull(companyId, "companyId"); + this.companyId = companyId; + return this; + } + + public GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder id(String id) { + Utils.checkNotNull(id, "id"); + this.id = id; + return this; + } + private GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest request = new GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest(companyId, - id, - xGustoAPIVersion); + GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest request = new GetV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest(xGustoAPIVersion, + companyId, + id); return request; } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1CompaniesCompanyUuidSignatoriesRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1CompaniesCompanyUuidSignatoriesRequestBuilder.java index a3325e165..4a293a846 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1CompaniesCompanyUuidSignatoriesRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1CompaniesCompanyUuidSignatoriesRequestBuilder.java @@ -19,23 +19,17 @@ public class GetV1CompaniesCompanyUuidSignatoriesRequestBuilder { - private String companyUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String companyUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1CompaniesCompanyUuidSignatoriesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1CompaniesCompanyUuidSignatoriesRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public GetV1CompaniesCompanyUuidSignatoriesRequestBuilder xGustoAPIVersion(GetV1CompaniesCompanyUuidSignatoriesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public GetV1CompaniesCompanyUuidSignatoriesRequestBuilder xGustoAPIVersion(Optio return this; } + public GetV1CompaniesCompanyUuidSignatoriesRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + private GetV1CompaniesCompanyUuidSignatoriesRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1CompaniesCompanyUuidSignatoriesRequest request = new GetV1CompaniesCompanyUuidSignatoriesRequest(companyUuid, - xGustoAPIVersion); + GetV1CompaniesCompanyUuidSignatoriesRequest request = new GetV1CompaniesCompanyUuidSignatoriesRequest(xGustoAPIVersion, + companyUuid); return request; } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder.java index 88bb15254..c8083a6bb 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder.java @@ -19,23 +19,17 @@ public class GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder { - private String companyUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String companyUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder xGustoAPIVersion(GetV1CompaniesCompanyUuidTaxRequirementsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder xGustoAPIVersion(O return this; } + public GetV1CompaniesCompanyUuidTaxRequirementsRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + private GetV1CompaniesCompanyUuidTaxRequirementsRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1CompaniesCompanyUuidTaxRequirementsRequest request = new GetV1CompaniesCompanyUuidTaxRequirementsRequest(companyUuid, - xGustoAPIVersion); + GetV1CompaniesCompanyUuidTaxRequirementsRequest request = new GetV1CompaniesCompanyUuidTaxRequirementsRequest(xGustoAPIVersion, + companyUuid); return request; } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder.java index b88d30e52..c6e906466 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder.java @@ -20,12 +20,12 @@ public class GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder { - private String companyUuid; - private String state; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String companyUuid; + private String state; private Optional scheduling = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -33,18 +33,6 @@ public class GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder { public GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - public GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder state(String state) { - Utils.checkNotNull(state, "state"); - this.state = state; - return this; - } public GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder xGustoAPIVersion(GetV1CompaniesCompanyUuidTaxRequirementsStateHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -57,6 +45,18 @@ public GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder xGustoAPIVers this.xGustoAPIVersion = xGustoAPIVersion; return this; } + + public GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + public GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder state(String state) { + Utils.checkNotNull(state, "state"); + this.state = state; + return this; + } public GetV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder scheduling(boolean scheduling) { Utils.checkNotNull(scheduling, "scheduling"); @@ -76,9 +76,9 @@ private GetV1CompaniesCompanyUuidTaxRequirementsStateRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1CompaniesCompanyUuidTaxRequirementsStateRequest request = new GetV1CompaniesCompanyUuidTaxRequirementsStateRequest(companyUuid, + GetV1CompaniesCompanyUuidTaxRequirementsStateRequest request = new GetV1CompaniesCompanyUuidTaxRequirementsStateRequest(xGustoAPIVersion, + companyUuid, state, - xGustoAPIVersion, scheduling); return request; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1CompaniesRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1CompaniesRequestBuilder.java index f322809df..e83f1d5a6 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1CompaniesRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1CompaniesRequestBuilder.java @@ -19,23 +19,17 @@ public class GetV1CompaniesRequestBuilder { - private String companyId; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String companyId; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1CompaniesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1CompaniesRequestBuilder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } public GetV1CompaniesRequestBuilder xGustoAPIVersion(GetV1CompaniesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public GetV1CompaniesRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String companyUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1CompanyFinishOnboardingRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1CompanyFinishOnboardingRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public GetV1CompanyFinishOnboardingRequestBuilder xGustoAPIVersion(GetV1CompanyFinishOnboardingHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public GetV1CompanyFinishOnboardingRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String companyId; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1CompanyIndustryRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1CompanyIndustryRequestBuilder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } public GetV1CompanyIndustryRequestBuilder xGustoAPIVersion(GetV1CompanyIndustryHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public GetV1CompanyIndustryRequestBuilder xGustoAPIVersion(Optional additionalSteps = Optional.empty(); private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String companyUuid; + private Optional additionalSteps = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1CompanyOnboardingStatusRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } + + public GetV1CompanyOnboardingStatusRequestBuilder xGustoAPIVersion(GetV1CompanyOnboardingStatusHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetV1CompanyOnboardingStatusRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } public GetV1CompanyOnboardingStatusRequestBuilder companyUuid(String companyUuid) { Utils.checkNotNull(companyUuid, "companyUuid"); @@ -49,18 +61,6 @@ public GetV1CompanyOnboardingStatusRequestBuilder additionalSteps(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } private GetV1CompanyOnboardingStatusRequest buildRequest() { @@ -68,9 +68,9 @@ private GetV1CompanyOnboardingStatusRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1CompanyOnboardingStatusRequest request = new GetV1CompanyOnboardingStatusRequest(companyUuid, - additionalSteps, - xGustoAPIVersion); + GetV1CompanyOnboardingStatusRequest request = new GetV1CompanyOnboardingStatusRequest(xGustoAPIVersion, + companyUuid, + additionalSteps); return request; } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder.java index 62a804351..99b8768d0 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder.java @@ -19,23 +19,17 @@ public class GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder { - private String contractorPaymentGroupUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String contractorPaymentGroupUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder contractorPaymentGroupUuid(String contractorPaymentGroupUuid) { - Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); - this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; - return this; - } public GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder xGustoAPIVersion(GetV1ContractorPaymentGroupsContractorPaymentGroupIdHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder xGusto return this; } + public GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequestBuilder contractorPaymentGroupUuid(String contractorPaymentGroupUuid) { + Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); + this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; + return this; + } + private GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest request = new GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest(contractorPaymentGroupUuid, - xGustoAPIVersion); + GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest request = new GetV1ContractorPaymentGroupsContractorPaymentGroupIdRequest(xGustoAPIVersion, + contractorPaymentGroupUuid); return request; } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder.java index 0092da2ac..c4d4400e1 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder.java @@ -19,23 +19,17 @@ public class GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder { - private String id; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String id; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder id(String id) { - Utils.checkNotNull(id, "id"); - this.id = id; - return this; - } public GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder xGustoAPIVersion(GetV1ContractorPaymentGroupsIdPartnerDisbursementsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder xGustoAP return this; } + public GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder id(String id) { + Utils.checkNotNull(id, "id"); + this.id = id; + return this; + } + private GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest request = new GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest(id, - xGustoAPIVersion); + GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest request = new GetV1ContractorPaymentGroupsIdPartnerDisbursementsRequest(xGustoAPIVersion, + id); return request; } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder.java new file mode 100644 index 000000000..a81424ea9 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder.java @@ -0,0 +1,79 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations.async; + +import static com.gusto.embedded_api_v_2026_06_15.operations.Operations.AsyncRequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2026_06_15.SDKConfiguration; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1ContractorsContractorUuidMemberPortalInvitationsRequest; +import com.gusto.embedded_api_v_2026_06_15.operations.GetV1ContractorsContractorUuidMemberPortalInvitations; +import com.gusto.embedded_api_v_2026_06_15.utils.Headers; +import com.gusto.embedded_api_v_2026_06_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.String; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; + +public class GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder { + + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2026-06-15\"", + new TypeReference>() {}); + private String contractorUuid; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder xGustoAPIVersion(GetV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public GetV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder contractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + + + private GetV1ContractorsContractorUuidMemberPortalInvitationsRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + GetV1ContractorsContractorUuidMemberPortalInvitationsRequest request = new GetV1ContractorsContractorUuidMemberPortalInvitationsRequest(xGustoAPIVersion, + contractorUuid); + + return request; + } + + public CompletableFuture call() { + + AsyncRequestOperation operation + = new GetV1ContractorsContractorUuidMemberPortalInvitations.Async(sdkConfiguration, _headers); + GetV1ContractorsContractorUuidMemberPortalInvitationsRequest request = buildRequest(); + + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2026-06-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1ContractorsContractorUuidMemberPortalInvitationsResponse.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1ContractorsContractorUuidMemberPortalInvitationsResponse.java new file mode 100644 index 000000000..f7a0d7c09 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1ContractorsContractorUuidMemberPortalInvitationsResponse.java @@ -0,0 +1,253 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations.async; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2026_06_15.models.components.MemberPortalInvitation; +import com.gusto.embedded_api_v_2026_06_15.utils.AsyncResponse; +import com.gusto.embedded_api_v_2026_06_15.utils.Blob; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.Optional; + + +public class GetV1ContractorsContractorUuidMemberPortalInvitationsResponse implements AsyncResponse { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * Success + */ + private Optional memberPortalInvitation; + + @JsonCreator + public GetV1ContractorsContractorUuidMemberPortalInvitationsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional memberPortalInvitation) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(memberPortalInvitation, "memberPortalInvitation"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.memberPortalInvitation = memberPortalInvitation; + } + + public GetV1ContractorsContractorUuidMemberPortalInvitationsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * Success + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional memberPortalInvitation() { + return (Optional) memberPortalInvitation; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public GetV1ContractorsContractorUuidMemberPortalInvitationsResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public GetV1ContractorsContractorUuidMemberPortalInvitationsResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public GetV1ContractorsContractorUuidMemberPortalInvitationsResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * Success + */ + public GetV1ContractorsContractorUuidMemberPortalInvitationsResponse withMemberPortalInvitation(MemberPortalInvitation memberPortalInvitation) { + Utils.checkNotNull(memberPortalInvitation, "memberPortalInvitation"); + this.memberPortalInvitation = Optional.ofNullable(memberPortalInvitation); + return this; + } + + + /** + * Success + */ + public GetV1ContractorsContractorUuidMemberPortalInvitationsResponse withMemberPortalInvitation(Optional memberPortalInvitation) { + Utils.checkNotNull(memberPortalInvitation, "memberPortalInvitation"); + this.memberPortalInvitation = memberPortalInvitation; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetV1ContractorsContractorUuidMemberPortalInvitationsResponse other = (GetV1ContractorsContractorUuidMemberPortalInvitationsResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.memberPortalInvitation, other.memberPortalInvitation); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + memberPortalInvitation); + } + + @Override + public String toString() { + return Utils.toString(GetV1ContractorsContractorUuidMemberPortalInvitationsResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "memberPortalInvitation", memberPortalInvitation); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional memberPortalInvitation = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * Success + */ + public Builder memberPortalInvitation(MemberPortalInvitation memberPortalInvitation) { + Utils.checkNotNull(memberPortalInvitation, "memberPortalInvitation"); + this.memberPortalInvitation = Optional.ofNullable(memberPortalInvitation); + return this; + } + + /** + * Success + */ + public Builder memberPortalInvitation(Optional memberPortalInvitation) { + Utils.checkNotNull(memberPortalInvitation, "memberPortalInvitation"); + this.memberPortalInvitation = memberPortalInvitation; + return this; + } + + public GetV1ContractorsContractorUuidMemberPortalInvitationsResponse build() { + + return new GetV1ContractorsContractorUuidMemberPortalInvitationsResponse( + contentType, statusCode, rawResponse, + memberPortalInvitation); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1ContractorsContractorUuidPaymentsRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1ContractorsContractorUuidPaymentsRequestBuilder.java new file mode 100644 index 000000000..457806186 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1ContractorsContractorUuidPaymentsRequestBuilder.java @@ -0,0 +1,39 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations.async; + +import static com.gusto.embedded_api_v_2026_06_15.operations.Operations.AsyncRequestOperation; + +import com.gusto.embedded_api_v_2026_06_15.SDKConfiguration; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1ContractorsContractorUuidPaymentsRequest; +import com.gusto.embedded_api_v_2026_06_15.operations.GetV1ContractorsContractorUuidPayments; +import com.gusto.embedded_api_v_2026_06_15.utils.Headers; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.util.concurrent.CompletableFuture; + +public class GetV1ContractorsContractorUuidPaymentsRequestBuilder { + + private GetV1ContractorsContractorUuidPaymentsRequest request; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public GetV1ContractorsContractorUuidPaymentsRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public GetV1ContractorsContractorUuidPaymentsRequestBuilder request(GetV1ContractorsContractorUuidPaymentsRequest request) { + Utils.checkNotNull(request, "request"); + this.request = request; + return this; + } + + public CompletableFuture call() { + + AsyncRequestOperation operation + = new GetV1ContractorsContractorUuidPayments.Async(sdkConfiguration, _headers); + + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1ContractorsContractorUuidPaymentsResponse.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1ContractorsContractorUuidPaymentsResponse.java new file mode 100644 index 000000000..5e4c8976b --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1ContractorsContractorUuidPaymentsResponse.java @@ -0,0 +1,254 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations.async; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2026_06_15.models.components.ContractorPaymentListing; +import com.gusto.embedded_api_v_2026_06_15.utils.AsyncResponse; +import com.gusto.embedded_api_v_2026_06_15.utils.Blob; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.List; +import java.util.Optional; + + +public class GetV1ContractorsContractorUuidPaymentsResponse implements AsyncResponse { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * A JSON array of contractor payments + */ + private Optional> contractorPaymentListings; + + @JsonCreator + public GetV1ContractorsContractorUuidPaymentsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional> contractorPaymentListings) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(contractorPaymentListings, "contractorPaymentListings"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.contractorPaymentListings = contractorPaymentListings; + } + + public GetV1ContractorsContractorUuidPaymentsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * A JSON array of contractor payments + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional> contractorPaymentListings() { + return (Optional>) contractorPaymentListings; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public GetV1ContractorsContractorUuidPaymentsResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public GetV1ContractorsContractorUuidPaymentsResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public GetV1ContractorsContractorUuidPaymentsResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * A JSON array of contractor payments + */ + public GetV1ContractorsContractorUuidPaymentsResponse withContractorPaymentListings(List contractorPaymentListings) { + Utils.checkNotNull(contractorPaymentListings, "contractorPaymentListings"); + this.contractorPaymentListings = Optional.ofNullable(contractorPaymentListings); + return this; + } + + + /** + * A JSON array of contractor payments + */ + public GetV1ContractorsContractorUuidPaymentsResponse withContractorPaymentListings(Optional> contractorPaymentListings) { + Utils.checkNotNull(contractorPaymentListings, "contractorPaymentListings"); + this.contractorPaymentListings = contractorPaymentListings; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetV1ContractorsContractorUuidPaymentsResponse other = (GetV1ContractorsContractorUuidPaymentsResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.contractorPaymentListings, other.contractorPaymentListings); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + contractorPaymentListings); + } + + @Override + public String toString() { + return Utils.toString(GetV1ContractorsContractorUuidPaymentsResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "contractorPaymentListings", contractorPaymentListings); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional> contractorPaymentListings = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * A JSON array of contractor payments + */ + public Builder contractorPaymentListings(List contractorPaymentListings) { + Utils.checkNotNull(contractorPaymentListings, "contractorPaymentListings"); + this.contractorPaymentListings = Optional.ofNullable(contractorPaymentListings); + return this; + } + + /** + * A JSON array of contractor payments + */ + public Builder contractorPaymentListings(Optional> contractorPaymentListings) { + Utils.checkNotNull(contractorPaymentListings, "contractorPaymentListings"); + this.contractorPaymentListings = contractorPaymentListings; + return this; + } + + public GetV1ContractorsContractorUuidPaymentsResponse build() { + + return new GetV1ContractorsContractorUuidPaymentsResponse( + contentType, statusCode, rawResponse, + contractorPaymentListings); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder.java index 9ad0cb310..b06e14ae6 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder.java @@ -20,19 +20,31 @@ public class GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder { - private String employeeId; - private Optional page = Optional.empty(); - private Optional per = Optional.empty(); private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String employeeId; + private Optional page = Optional.empty(); + private Optional per = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } + + public GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder xGustoAPIVersion(GetV1EmployeesEmployeeIdCustomFieldsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } public GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder employeeId(String employeeId) { Utils.checkNotNull(employeeId, "employeeId"); @@ -63,18 +75,6 @@ public GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder per(Optional per this.per = per; return this; } - - public GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder xGustoAPIVersion(GetV1EmployeesEmployeeIdCustomFieldsHeaderXGustoAPIVersion xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); - return this; - } - - public GetV1EmployeesEmployeeIdCustomFieldsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } private GetV1EmployeesEmployeeIdCustomFieldsRequest buildRequest() { @@ -82,10 +82,10 @@ private GetV1EmployeesEmployeeIdCustomFieldsRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1EmployeesEmployeeIdCustomFieldsRequest request = new GetV1EmployeesEmployeeIdCustomFieldsRequest(employeeId, + GetV1EmployeesEmployeeIdCustomFieldsRequest request = new GetV1EmployeesEmployeeIdCustomFieldsRequest(xGustoAPIVersion, + employeeId, page, - per, - xGustoAPIVersion); + per); return request; } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1EmployeesEmployeeIdHomeAddressesRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1EmployeesEmployeeIdHomeAddressesRequestBuilder.java index aa5775d8e..59f40978f 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1EmployeesEmployeeIdHomeAddressesRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1EmployeesEmployeeIdHomeAddressesRequestBuilder.java @@ -19,23 +19,17 @@ public class GetV1EmployeesEmployeeIdHomeAddressesRequestBuilder { - private String employeeId; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String employeeId; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1EmployeesEmployeeIdHomeAddressesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1EmployeesEmployeeIdHomeAddressesRequestBuilder employeeId(String employeeId) { - Utils.checkNotNull(employeeId, "employeeId"); - this.employeeId = employeeId; - return this; - } public GetV1EmployeesEmployeeIdHomeAddressesRequestBuilder xGustoAPIVersion(GetV1EmployeesEmployeeIdHomeAddressesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public GetV1EmployeesEmployeeIdHomeAddressesRequestBuilder xGustoAPIVersion(Opti return this; } + public GetV1EmployeesEmployeeIdHomeAddressesRequestBuilder employeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + private GetV1EmployeesEmployeeIdHomeAddressesRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1EmployeesEmployeeIdHomeAddressesRequest request = new GetV1EmployeesEmployeeIdHomeAddressesRequest(employeeId, - xGustoAPIVersion); + GetV1EmployeesEmployeeIdHomeAddressesRequest request = new GetV1EmployeesEmployeeIdHomeAddressesRequest(xGustoAPIVersion, + employeeId); return request; } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java new file mode 100644 index 000000000..ad5c1812e --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java @@ -0,0 +1,79 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations.async; + +import static com.gusto.embedded_api_v_2026_06_15.operations.Operations.AsyncRequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2026_06_15.SDKConfiguration; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest; +import com.gusto.embedded_api_v_2026_06_15.operations.GetV1EmployeesEmployeeIdMemberPortalInvitations; +import com.gusto.embedded_api_v_2026_06_15.utils.Headers; +import com.gusto.embedded_api_v_2026_06_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.String; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; + +public class GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder { + + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2026-06-15\"", + new TypeReference>() {}); + private String employeeId; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder xGustoAPIVersion(GetV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public GetV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder employeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + + + private GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest request = new GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest(xGustoAPIVersion, + employeeId); + + return request; + } + + public CompletableFuture call() { + + AsyncRequestOperation operation + = new GetV1EmployeesEmployeeIdMemberPortalInvitations.Async(sdkConfiguration, _headers); + GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest request = buildRequest(); + + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2026-06-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java new file mode 100644 index 000000000..9de987ae7 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java @@ -0,0 +1,253 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations.async; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2026_06_15.models.components.MemberPortalInvitation; +import com.gusto.embedded_api_v_2026_06_15.utils.AsyncResponse; +import com.gusto.embedded_api_v_2026_06_15.utils.Blob; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.Optional; + + +public class GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse implements AsyncResponse { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * Success + */ + private Optional memberPortalInvitation; + + @JsonCreator + public GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional memberPortalInvitation) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(memberPortalInvitation, "memberPortalInvitation"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.memberPortalInvitation = memberPortalInvitation; + } + + public GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * Success + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional memberPortalInvitation() { + return (Optional) memberPortalInvitation; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * Success + */ + public GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse withMemberPortalInvitation(MemberPortalInvitation memberPortalInvitation) { + Utils.checkNotNull(memberPortalInvitation, "memberPortalInvitation"); + this.memberPortalInvitation = Optional.ofNullable(memberPortalInvitation); + return this; + } + + + /** + * Success + */ + public GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse withMemberPortalInvitation(Optional memberPortalInvitation) { + Utils.checkNotNull(memberPortalInvitation, "memberPortalInvitation"); + this.memberPortalInvitation = memberPortalInvitation; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse other = (GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.memberPortalInvitation, other.memberPortalInvitation); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + memberPortalInvitation); + } + + @Override + public String toString() { + return Utils.toString(GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "memberPortalInvitation", memberPortalInvitation); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional memberPortalInvitation = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * Success + */ + public Builder memberPortalInvitation(MemberPortalInvitation memberPortalInvitation) { + Utils.checkNotNull(memberPortalInvitation, "memberPortalInvitation"); + this.memberPortalInvitation = Optional.ofNullable(memberPortalInvitation); + return this; + } + + /** + * Success + */ + public Builder memberPortalInvitation(Optional memberPortalInvitation) { + Utils.checkNotNull(memberPortalInvitation, "memberPortalInvitation"); + this.memberPortalInvitation = memberPortalInvitation; + return this; + } + + public GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse build() { + + return new GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse( + contentType, statusCode, rawResponse, + memberPortalInvitation); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1EmployeesEmployeeIdWorkAddressesRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1EmployeesEmployeeIdWorkAddressesRequestBuilder.java index 51d35903e..596bc2b4c 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1EmployeesEmployeeIdWorkAddressesRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1EmployeesEmployeeIdWorkAddressesRequestBuilder.java @@ -19,23 +19,17 @@ public class GetV1EmployeesEmployeeIdWorkAddressesRequestBuilder { - private String employeeId; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String employeeId; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1EmployeesEmployeeIdWorkAddressesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1EmployeesEmployeeIdWorkAddressesRequestBuilder employeeId(String employeeId) { - Utils.checkNotNull(employeeId, "employeeId"); - this.employeeId = employeeId; - return this; - } public GetV1EmployeesEmployeeIdWorkAddressesRequestBuilder xGustoAPIVersion(GetV1EmployeesEmployeeIdWorkAddressesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public GetV1EmployeesEmployeeIdWorkAddressesRequestBuilder xGustoAPIVersion(Opti return this; } + public GetV1EmployeesEmployeeIdWorkAddressesRequestBuilder employeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + private GetV1EmployeesEmployeeIdWorkAddressesRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1EmployeesEmployeeIdWorkAddressesRequest request = new GetV1EmployeesEmployeeIdWorkAddressesRequest(employeeId, - xGustoAPIVersion); + GetV1EmployeesEmployeeIdWorkAddressesRequest request = new GetV1EmployeesEmployeeIdWorkAddressesRequest(xGustoAPIVersion, + employeeId); return request; } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder.java index aecd561a9..5e2d4415d 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder.java @@ -20,30 +20,18 @@ public class GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder { - private String employeeUuid; - private Long effectiveYear; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String employeeUuid; + private Long effectiveYear; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder employeeUuid(String employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = employeeUuid; - return this; - } - - public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder effectiveYear(long effectiveYear) { - Utils.checkNotNull(effectiveYear, "effectiveYear"); - this.effectiveYear = effectiveYear; - return this; - } public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder xGustoAPIVersion(GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -57,15 +45,27 @@ public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearReques return this; } + public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder employeeUuid(String employeeUuid) { + Utils.checkNotNull(employeeUuid, "employeeUuid"); + this.employeeUuid = employeeUuid; + return this; + } + + public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder effectiveYear(long effectiveYear) { + Utils.checkNotNull(effectiveYear, "effectiveYear"); + this.effectiveYear = effectiveYear; + return this; + } + private GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest request = new GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest(employeeUuid, - effectiveYear, - xGustoAPIVersion); + GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest request = new GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest(xGustoAPIVersion, + employeeUuid, + effectiveYear); return request; } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder.java index 94043c5a3..288fa1f0f 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder.java @@ -19,23 +19,17 @@ public class GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder { - private String employeeUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String employeeUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder employeeUuid(String employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = employeeUuid; - return this; - } public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder xGustoAPIVersion(GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder xGus return this; } + public GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder employeeUuid(String employeeUuid) { + Utils.checkNotNull(employeeUuid, "employeeUuid"); + this.employeeUuid = employeeUuid; + return this; + } + private GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest request = new GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest(employeeUuid, - xGustoAPIVersion); + GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest request = new GetV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest(xGustoAPIVersion, + employeeUuid); return request; } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder.java index 51fa5c738..090627e26 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder.java @@ -7,8 +7,8 @@ import com.fasterxml.jackson.core.type.TypeReference; import com.gusto.embedded_api_v_2026_06_15.SDKConfiguration; -import com.gusto.embedded_api_v_2026_06_15.models.components.VersionHeader; import com.gusto.embedded_api_v_2026_06_15.models.operations.DocumentType; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion; import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest; import com.gusto.embedded_api_v_2026_06_15.operations.GetV1GeneratedDocumentsDocumentTypeRequestUuid; import com.gusto.embedded_api_v_2026_06_15.utils.Headers; @@ -20,18 +20,30 @@ public class GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder { - private DocumentType documentType; - private String requestUuid; - private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", - new TypeReference>() {}); + new TypeReference>() {}); + private DocumentType documentType; + private String requestUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } + + public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder xGustoAPIVersion(GetV1GeneratedDocumentsDocumentTypeRequestUuidHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder documentType(DocumentType documentType) { Utils.checkNotNull(documentType, "documentType"); @@ -44,18 +56,6 @@ public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder requestUuid( this.requestUuid = requestUuid; return this; } - - public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder xGustoAPIVersion(VersionHeader xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); - return this; - } - - public GetV1GeneratedDocumentsDocumentTypeRequestUuidRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } private GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest buildRequest() { @@ -63,9 +63,9 @@ private GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest request = new GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest(documentType, - requestUuid, - xGustoAPIVersion); + GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest request = new GetV1GeneratedDocumentsDocumentTypeRequestUuidRequest(xGustoAPIVersion, + documentType, + requestUuid); return request; } @@ -80,9 +80,9 @@ public CompletableFuture .thenCompose(operation::handleResponse); } - private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = new LazySingletonValue<>( "xGustoAPIVersion", "\"2026-06-15\"", - new TypeReference>() {}); + new TypeReference>() {}); } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1HomeAddressesHomeAddressUuidRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1HomeAddressesHomeAddressUuidRequestBuilder.java index 0a1abfbc0..7309e3a56 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1HomeAddressesHomeAddressUuidRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1HomeAddressesHomeAddressUuidRequestBuilder.java @@ -19,23 +19,17 @@ public class GetV1HomeAddressesHomeAddressUuidRequestBuilder { - private String homeAddressUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String homeAddressUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1HomeAddressesHomeAddressUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1HomeAddressesHomeAddressUuidRequestBuilder homeAddressUuid(String homeAddressUuid) { - Utils.checkNotNull(homeAddressUuid, "homeAddressUuid"); - this.homeAddressUuid = homeAddressUuid; - return this; - } public GetV1HomeAddressesHomeAddressUuidRequestBuilder xGustoAPIVersion(GetV1HomeAddressesHomeAddressUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public GetV1HomeAddressesHomeAddressUuidRequestBuilder xGustoAPIVersion(Optional return this; } + public GetV1HomeAddressesHomeAddressUuidRequestBuilder homeAddressUuid(String homeAddressUuid) { + Utils.checkNotNull(homeAddressUuid, "homeAddressUuid"); + this.homeAddressUuid = homeAddressUuid; + return this; + } + private GetV1HomeAddressesHomeAddressUuidRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1HomeAddressesHomeAddressUuidRequest request = new GetV1HomeAddressesHomeAddressUuidRequest(homeAddressUuid, - xGustoAPIVersion); + GetV1HomeAddressesHomeAddressUuidRequest request = new GetV1HomeAddressesHomeAddressUuidRequest(xGustoAPIVersion, + homeAddressUuid); return request; } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1JobsJobIdRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1JobsJobIdRequestBuilder.java index 3eb86f296..7d5b6d5c2 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1JobsJobIdRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1JobsJobIdRequestBuilder.java @@ -20,18 +20,30 @@ public class GetV1JobsJobIdRequestBuilder { - private String jobId; - private Optional include = Optional.empty(); private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String jobId; + private Optional include = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1JobsJobIdRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } + + public GetV1JobsJobIdRequestBuilder xGustoAPIVersion(GetV1JobsJobIdHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetV1JobsJobIdRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } public GetV1JobsJobIdRequestBuilder jobId(String jobId) { Utils.checkNotNull(jobId, "jobId"); @@ -50,18 +62,6 @@ public GetV1JobsJobIdRequestBuilder include(Optional xGustoAPIVersion) { - Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); - this.xGustoAPIVersion = xGustoAPIVersion; - return this; - } private GetV1JobsJobIdRequest buildRequest() { @@ -69,9 +69,9 @@ private GetV1JobsJobIdRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1JobsJobIdRequest request = new GetV1JobsJobIdRequest(jobId, - include, - xGustoAPIVersion); + GetV1JobsJobIdRequest request = new GetV1JobsJobIdRequest(xGustoAPIVersion, + jobId, + include); return request; } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1LocationsLocationUuidMinimumWagesRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1LocationsLocationUuidMinimumWagesRequestBuilder.java index 1d0dd9b67..74ad13821 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1LocationsLocationUuidMinimumWagesRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1LocationsLocationUuidMinimumWagesRequestBuilder.java @@ -19,11 +19,11 @@ public class GetV1LocationsLocationUuidMinimumWagesRequestBuilder { - private String locationUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String locationUuid; private Optional effectiveDate = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -31,12 +31,6 @@ public class GetV1LocationsLocationUuidMinimumWagesRequestBuilder { public GetV1LocationsLocationUuidMinimumWagesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1LocationsLocationUuidMinimumWagesRequestBuilder locationUuid(String locationUuid) { - Utils.checkNotNull(locationUuid, "locationUuid"); - this.locationUuid = locationUuid; - return this; - } public GetV1LocationsLocationUuidMinimumWagesRequestBuilder xGustoAPIVersion(GetV1LocationsLocationUuidMinimumWagesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,6 +43,12 @@ public GetV1LocationsLocationUuidMinimumWagesRequestBuilder xGustoAPIVersion(Opt this.xGustoAPIVersion = xGustoAPIVersion; return this; } + + public GetV1LocationsLocationUuidMinimumWagesRequestBuilder locationUuid(String locationUuid) { + Utils.checkNotNull(locationUuid, "locationUuid"); + this.locationUuid = locationUuid; + return this; + } public GetV1LocationsLocationUuidMinimumWagesRequestBuilder effectiveDate(String effectiveDate) { Utils.checkNotNull(effectiveDate, "effectiveDate"); @@ -68,8 +68,8 @@ private GetV1LocationsLocationUuidMinimumWagesRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1LocationsLocationUuidMinimumWagesRequest request = new GetV1LocationsLocationUuidMinimumWagesRequest(locationUuid, - xGustoAPIVersion, + GetV1LocationsLocationUuidMinimumWagesRequest request = new GetV1LocationsLocationUuidMinimumWagesRequest(xGustoAPIVersion, + locationUuid, effectiveDate); return request; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder.java index 896e1af47..8dfaedcc8 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder.java @@ -19,23 +19,17 @@ public class GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder { - private String companyUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String companyUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder xGustoAPIVersion(GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder x return this; } + public GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + private GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest request = new GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest(companyUuid, - xGustoAPIVersion); + GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest request = new GetV1PartnerManagedCompaniesCompanyUuidMigrationReadinessRequest(xGustoAPIVersion, + companyUuid); return request; } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilder.java index cd52dee5b..31709f876 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilder.java @@ -19,23 +19,17 @@ public class GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilder { - private String companyUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String companyUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilder xGustoAPIVersion(GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilder xGust return this; } + public GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + private GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest request = new GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest(companyUuid, - xGustoAPIVersion); + GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest request = new GetV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest(xGustoAPIVersion, + companyUuid); return request; } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder.java index fe09c305b..41bd15d0b 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder.java @@ -13,29 +13,26 @@ import com.gusto.embedded_api_v_2026_06_15.utils.Headers; import com.gusto.embedded_api_v_2026_06_15.utils.LazySingletonValue; import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Long; import java.lang.String; import java.util.Optional; import java.util.concurrent.CompletableFuture; public class GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder { - private String payrollUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String payrollUuid; + private Optional page = Optional.empty(); + private Optional per = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder payrollUuid(String payrollUuid) { - Utils.checkNotNull(payrollUuid, "payrollUuid"); - this.payrollUuid = payrollUuid; - return this; - } public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder xGustoAPIVersion(GetV1PaymentReceiptsPayrollsPayrollUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +46,46 @@ public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder xGustoAPIVersion(Op return this; } + public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder payrollUuid(String payrollUuid) { + Utils.checkNotNull(payrollUuid, "payrollUuid"); + this.payrollUuid = payrollUuid; + return this; + } + + public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder page(long page) { + Utils.checkNotNull(page, "page"); + this.page = Optional.of(page); + return this; + } + + public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder page(Optional page) { + Utils.checkNotNull(page, "page"); + this.page = page; + return this; + } + + public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder per(long per) { + Utils.checkNotNull(per, "per"); + this.per = Optional.of(per); + return this; + } + + public GetV1PaymentReceiptsPayrollsPayrollUuidRequestBuilder per(Optional per) { + Utils.checkNotNull(per, "per"); + this.per = per; + return this; + } + private GetV1PaymentReceiptsPayrollsPayrollUuidRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1PaymentReceiptsPayrollsPayrollUuidRequest request = new GetV1PaymentReceiptsPayrollsPayrollUuidRequest(payrollUuid, - xGustoAPIVersion); + GetV1PaymentReceiptsPayrollsPayrollUuidRequest request = new GetV1PaymentReceiptsPayrollsPayrollUuidRequest(xGustoAPIVersion, + payrollUuid, + page, + per); return request; } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1PayrollBatchesPayrollBatchUuidRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1PayrollBatchesPayrollBatchUuidRequestBuilder.java new file mode 100644 index 000000000..2201aa17b --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1PayrollBatchesPayrollBatchUuidRequestBuilder.java @@ -0,0 +1,87 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations.async; + +import static com.gusto.embedded_api_v_2026_06_15.operations.Operations.AsyncRequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2026_06_15.SDKConfiguration; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1PayrollBatchesPayrollBatchUuidRequest; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1PayrollBatchesPayrollBatchUuidSecurity; +import com.gusto.embedded_api_v_2026_06_15.operations.GetV1PayrollBatchesPayrollBatchUuid; +import com.gusto.embedded_api_v_2026_06_15.utils.Headers; +import com.gusto.embedded_api_v_2026_06_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.String; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; + +public class GetV1PayrollBatchesPayrollBatchUuidRequestBuilder { + + private GetV1PayrollBatchesPayrollBatchUuidSecurity security; + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2026-06-15\"", + new TypeReference>() {}); + private String payrollBatchUuid; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public GetV1PayrollBatchesPayrollBatchUuidRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public GetV1PayrollBatchesPayrollBatchUuidRequestBuilder security(GetV1PayrollBatchesPayrollBatchUuidSecurity security) { + Utils.checkNotNull(security, "security"); + this.security = security; + return this; + } + + public GetV1PayrollBatchesPayrollBatchUuidRequestBuilder xGustoAPIVersion(GetV1PayrollBatchesPayrollBatchUuidHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public GetV1PayrollBatchesPayrollBatchUuidRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public GetV1PayrollBatchesPayrollBatchUuidRequestBuilder payrollBatchUuid(String payrollBatchUuid) { + Utils.checkNotNull(payrollBatchUuid, "payrollBatchUuid"); + this.payrollBatchUuid = payrollBatchUuid; + return this; + } + + + private GetV1PayrollBatchesPayrollBatchUuidRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + GetV1PayrollBatchesPayrollBatchUuidRequest request = new GetV1PayrollBatchesPayrollBatchUuidRequest(xGustoAPIVersion, + payrollBatchUuid); + + return request; + } + + public CompletableFuture call() { + + AsyncRequestOperation operation + = new GetV1PayrollBatchesPayrollBatchUuid.Async(sdkConfiguration, security, _headers); + GetV1PayrollBatchesPayrollBatchUuidRequest request = buildRequest(); + + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2026-06-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1PayrollBatchesPayrollBatchUuidResponse.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1PayrollBatchesPayrollBatchUuidResponse.java new file mode 100644 index 000000000..6eba77a81 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1PayrollBatchesPayrollBatchUuidResponse.java @@ -0,0 +1,253 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations.async; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2026_06_15.models.components.PayrollBatchResults; +import com.gusto.embedded_api_v_2026_06_15.utils.AsyncResponse; +import com.gusto.embedded_api_v_2026_06_15.utils.Blob; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.Optional; + + +public class GetV1PayrollBatchesPayrollBatchUuidResponse implements AsyncResponse { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * successful + */ + private Optional payrollBatchResults; + + @JsonCreator + public GetV1PayrollBatchesPayrollBatchUuidResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional payrollBatchResults) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(payrollBatchResults, "payrollBatchResults"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.payrollBatchResults = payrollBatchResults; + } + + public GetV1PayrollBatchesPayrollBatchUuidResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * successful + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional payrollBatchResults() { + return (Optional) payrollBatchResults; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public GetV1PayrollBatchesPayrollBatchUuidResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public GetV1PayrollBatchesPayrollBatchUuidResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public GetV1PayrollBatchesPayrollBatchUuidResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * successful + */ + public GetV1PayrollBatchesPayrollBatchUuidResponse withPayrollBatchResults(PayrollBatchResults payrollBatchResults) { + Utils.checkNotNull(payrollBatchResults, "payrollBatchResults"); + this.payrollBatchResults = Optional.ofNullable(payrollBatchResults); + return this; + } + + + /** + * successful + */ + public GetV1PayrollBatchesPayrollBatchUuidResponse withPayrollBatchResults(Optional payrollBatchResults) { + Utils.checkNotNull(payrollBatchResults, "payrollBatchResults"); + this.payrollBatchResults = payrollBatchResults; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + GetV1PayrollBatchesPayrollBatchUuidResponse other = (GetV1PayrollBatchesPayrollBatchUuidResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.payrollBatchResults, other.payrollBatchResults); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + payrollBatchResults); + } + + @Override + public String toString() { + return Utils.toString(GetV1PayrollBatchesPayrollBatchUuidResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "payrollBatchResults", payrollBatchResults); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional payrollBatchResults = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * successful + */ + public Builder payrollBatchResults(PayrollBatchResults payrollBatchResults) { + Utils.checkNotNull(payrollBatchResults, "payrollBatchResults"); + this.payrollBatchResults = Optional.ofNullable(payrollBatchResults); + return this; + } + + /** + * successful + */ + public Builder payrollBatchResults(Optional payrollBatchResults) { + Utils.checkNotNull(payrollBatchResults, "payrollBatchResults"); + this.payrollBatchResults = payrollBatchResults; + return this; + } + + public GetV1PayrollBatchesPayrollBatchUuidResponse build() { + + return new GetV1PayrollBatchesPayrollBatchUuidResponse( + contentType, statusCode, rawResponse, + payrollBatchResults); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1PayrollDigestsPayrollDigestUuidRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1PayrollDigestsPayrollDigestUuidRequestBuilder.java index dd8ce512f..ccafb784e 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1PayrollDigestsPayrollDigestUuidRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1PayrollDigestsPayrollDigestUuidRequestBuilder.java @@ -21,11 +21,11 @@ public class GetV1PayrollDigestsPayrollDigestUuidRequestBuilder { private GetV1PayrollDigestsPayrollDigestUuidSecurity security; - private String payrollDigestUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String payrollDigestUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -38,12 +38,6 @@ public GetV1PayrollDigestsPayrollDigestUuidRequestBuilder security(GetV1PayrollD this.security = security; return this; } - - public GetV1PayrollDigestsPayrollDigestUuidRequestBuilder payrollDigestUuid(String payrollDigestUuid) { - Utils.checkNotNull(payrollDigestUuid, "payrollDigestUuid"); - this.payrollDigestUuid = payrollDigestUuid; - return this; - } public GetV1PayrollDigestsPayrollDigestUuidRequestBuilder xGustoAPIVersion(GetV1PayrollDigestsPayrollDigestUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -57,14 +51,20 @@ public GetV1PayrollDigestsPayrollDigestUuidRequestBuilder xGustoAPIVersion(Optio return this; } + public GetV1PayrollDigestsPayrollDigestUuidRequestBuilder payrollDigestUuid(String payrollDigestUuid) { + Utils.checkNotNull(payrollDigestUuid, "payrollDigestUuid"); + this.payrollDigestUuid = payrollDigestUuid; + return this; + } + private GetV1PayrollDigestsPayrollDigestUuidRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1PayrollDigestsPayrollDigestUuidRequest request = new GetV1PayrollDigestsPayrollDigestUuidRequest(payrollDigestUuid, - xGustoAPIVersion); + GetV1PayrollDigestsPayrollDigestUuidRequest request = new GetV1PayrollDigestsPayrollDigestUuidRequest(xGustoAPIVersion, + payrollDigestUuid); return request; } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1PeopleBatchesPeopleBatchUuidRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1PeopleBatchesPeopleBatchUuidRequestBuilder.java index 6b9375858..708436caf 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1PeopleBatchesPeopleBatchUuidRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1PeopleBatchesPeopleBatchUuidRequestBuilder.java @@ -19,23 +19,17 @@ public class GetV1PeopleBatchesPeopleBatchUuidRequestBuilder { - private String peopleBatchUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String peopleBatchUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1PeopleBatchesPeopleBatchUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1PeopleBatchesPeopleBatchUuidRequestBuilder peopleBatchUuid(String peopleBatchUuid) { - Utils.checkNotNull(peopleBatchUuid, "peopleBatchUuid"); - this.peopleBatchUuid = peopleBatchUuid; - return this; - } public GetV1PeopleBatchesPeopleBatchUuidRequestBuilder xGustoAPIVersion(GetV1PeopleBatchesPeopleBatchUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public GetV1PeopleBatchesPeopleBatchUuidRequestBuilder xGustoAPIVersion(Optional return this; } + public GetV1PeopleBatchesPeopleBatchUuidRequestBuilder peopleBatchUuid(String peopleBatchUuid) { + Utils.checkNotNull(peopleBatchUuid, "peopleBatchUuid"); + this.peopleBatchUuid = peopleBatchUuid; + return this; + } + private GetV1PeopleBatchesPeopleBatchUuidRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1PeopleBatchesPeopleBatchUuidRequest request = new GetV1PeopleBatchesPeopleBatchUuidRequest(peopleBatchUuid, - xGustoAPIVersion); + GetV1PeopleBatchesPeopleBatchUuidRequest request = new GetV1PeopleBatchesPeopleBatchUuidRequest(xGustoAPIVersion, + peopleBatchUuid); return request; } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1WebhookSubscriptionUuidRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1WebhookSubscriptionUuidRequestBuilder.java index bcf367a6e..d73c65ccd 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1WebhookSubscriptionUuidRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1WebhookSubscriptionUuidRequestBuilder.java @@ -21,11 +21,11 @@ public class GetV1WebhookSubscriptionUuidRequestBuilder { private GetV1WebhookSubscriptionUuidSecurity security; - private String webhookSubscriptionUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String webhookSubscriptionUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -38,12 +38,6 @@ public GetV1WebhookSubscriptionUuidRequestBuilder security(GetV1WebhookSubscript this.security = security; return this; } - - public GetV1WebhookSubscriptionUuidRequestBuilder webhookSubscriptionUuid(String webhookSubscriptionUuid) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; - return this; - } public GetV1WebhookSubscriptionUuidRequestBuilder xGustoAPIVersion(GetV1WebhookSubscriptionUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -57,14 +51,20 @@ public GetV1WebhookSubscriptionUuidRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String webhookSubscriptionUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -38,12 +38,6 @@ public GetV1WebhookSubscriptionVerificationTokenUuidRequestBuilder security(GetV this.security = security; return this; } - - public GetV1WebhookSubscriptionVerificationTokenUuidRequestBuilder webhookSubscriptionUuid(String webhookSubscriptionUuid) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; - return this; - } public GetV1WebhookSubscriptionVerificationTokenUuidRequestBuilder xGustoAPIVersion(GetV1WebhookSubscriptionVerificationTokenUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -57,14 +51,20 @@ public GetV1WebhookSubscriptionVerificationTokenUuidRequestBuilder xGustoAPIVers return this; } + public GetV1WebhookSubscriptionVerificationTokenUuidRequestBuilder webhookSubscriptionUuid(String webhookSubscriptionUuid) { + Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); + this.webhookSubscriptionUuid = webhookSubscriptionUuid; + return this; + } + private GetV1WebhookSubscriptionVerificationTokenUuidRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1WebhookSubscriptionVerificationTokenUuidRequest request = new GetV1WebhookSubscriptionVerificationTokenUuidRequest(webhookSubscriptionUuid, - xGustoAPIVersion); + GetV1WebhookSubscriptionVerificationTokenUuidRequest request = new GetV1WebhookSubscriptionVerificationTokenUuidRequest(xGustoAPIVersion, + webhookSubscriptionUuid); return request; } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1WorkAddressesWorkAddressUuidRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1WorkAddressesWorkAddressUuidRequestBuilder.java index fef35e292..83c9d75bc 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1WorkAddressesWorkAddressUuidRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetV1WorkAddressesWorkAddressUuidRequestBuilder.java @@ -19,23 +19,17 @@ public class GetV1WorkAddressesWorkAddressUuidRequestBuilder { - private String workAddressUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String workAddressUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetV1WorkAddressesWorkAddressUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetV1WorkAddressesWorkAddressUuidRequestBuilder workAddressUuid(String workAddressUuid) { - Utils.checkNotNull(workAddressUuid, "workAddressUuid"); - this.workAddressUuid = workAddressUuid; - return this; - } public GetV1WorkAddressesWorkAddressUuidRequestBuilder xGustoAPIVersion(GetV1WorkAddressesWorkAddressUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public GetV1WorkAddressesWorkAddressUuidRequestBuilder xGustoAPIVersion(Optional return this; } + public GetV1WorkAddressesWorkAddressUuidRequestBuilder workAddressUuid(String workAddressUuid) { + Utils.checkNotNull(workAddressUuid, "workAddressUuid"); + this.workAddressUuid = workAddressUuid; + return this; + } + private GetV1WorkAddressesWorkAddressUuidRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetV1WorkAddressesWorkAddressUuidRequest request = new GetV1WorkAddressesWorkAddressUuidRequest(workAddressUuid, - xGustoAPIVersion); + GetV1WorkAddressesWorkAddressUuidRequest request = new GetV1WorkAddressesWorkAddressUuidRequest(xGustoAPIVersion, + workAddressUuid); return request; } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetWireInRequestsWireInRequestUuidRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetWireInRequestsWireInRequestUuidRequestBuilder.java index 461a2b0d4..a6286c801 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetWireInRequestsWireInRequestUuidRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/GetWireInRequestsWireInRequestUuidRequestBuilder.java @@ -19,23 +19,17 @@ public class GetWireInRequestsWireInRequestUuidRequestBuilder { - private String wireInRequestUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String wireInRequestUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public GetWireInRequestsWireInRequestUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public GetWireInRequestsWireInRequestUuidRequestBuilder wireInRequestUuid(String wireInRequestUuid) { - Utils.checkNotNull(wireInRequestUuid, "wireInRequestUuid"); - this.wireInRequestUuid = wireInRequestUuid; - return this; - } public GetWireInRequestsWireInRequestUuidRequestBuilder xGustoAPIVersion(GetWireInRequestsWireInRequestUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public GetWireInRequestsWireInRequestUuidRequestBuilder xGustoAPIVersion(Optiona return this; } + public GetWireInRequestsWireInRequestUuidRequestBuilder wireInRequestUuid(String wireInRequestUuid) { + Utils.checkNotNull(wireInRequestUuid, "wireInRequestUuid"); + this.wireInRequestUuid = wireInRequestUuid; + return this; + } + private GetWireInRequestsWireInRequestUuidRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - GetWireInRequestsWireInRequestUuidRequest request = new GetWireInRequestsWireInRequestUuidRequest(wireInRequestUuid, - xGustoAPIVersion); + GetWireInRequestsWireInRequestUuidRequest request = new GetWireInRequestsWireInRequestUuidRequest(xGustoAPIVersion, + wireInRequestUuid); return request; } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder.java index 619367149..710298cf5 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder.java @@ -20,12 +20,12 @@ public class PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder { - private String companyId; - private String id; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String companyId; + private String id; private Optional requestBody = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -33,18 +33,6 @@ public class PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuild public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } - - public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder id(String id) { - Utils.checkNotNull(id, "id"); - this.id = id; - return this; - } public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder xGustoAPIVersion(PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -57,6 +45,18 @@ public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder xGu this.xGustoAPIVersion = xGustoAPIVersion; return this; } + + public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder companyId(String companyId) { + Utils.checkNotNull(companyId, "companyId"); + this.companyId = companyId; + return this; + } + + public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder id(String id) { + Utils.checkNotNull(id, "id"); + this.id = id; + return this; + } public PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBuilder requestBody(PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); @@ -76,9 +76,9 @@ private PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest buildRequ xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest request = new PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest(companyId, + PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest request = new PatchV1CompaniesCompanyIdPayrollsIdPartnerDisbursementsRequest(xGustoAPIVersion, + companyId, id, - xGustoAPIVersion, requestBody); return request; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder.java index 65a1e3a63..5fb98dc21 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder.java @@ -20,11 +20,11 @@ public class PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder { - private String id; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String id; private Optional requestBody = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder id(String id) { - Utils.checkNotNull(id, "id"); - this.id = id; - return this; - } public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder xGustoAPIVersion(PatchV1ContractorPaymentGroupsIdPartnerDisbursementsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -50,6 +44,12 @@ public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder xGusto this.xGustoAPIVersion = xGustoAPIVersion; return this; } + + public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder id(String id) { + Utils.checkNotNull(id, "id"); + this.id = id; + return this; + } public PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBuilder requestBody(PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); @@ -69,8 +69,8 @@ private PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest buildRequest xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest request = new PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest(id, - xGustoAPIVersion, + PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest request = new PatchV1ContractorPaymentGroupsIdPartnerDisbursementsRequest(xGustoAPIVersion, + id, requestBody); return request; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder.java index d9110194f..ae5e27a63 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder.java @@ -21,12 +21,12 @@ public class PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder { - private String employeeUuid; - private Long effectiveYear; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String employeeUuid; + private Long effectiveYear; private EmployeeSection603HighEarnerStatusUpdateRequest employeeSection603HighEarnerStatusUpdateRequest; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -34,18 +34,6 @@ public class PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYe public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder employeeUuid(String employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = employeeUuid; - return this; - } - - public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder effectiveYear(long effectiveYear) { - Utils.checkNotNull(effectiveYear, "effectiveYear"); - this.effectiveYear = effectiveYear; - return this; - } public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder xGustoAPIVersion(PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -59,6 +47,18 @@ public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequ return this; } + public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder employeeUuid(String employeeUuid) { + Utils.checkNotNull(employeeUuid, "employeeUuid"); + this.employeeUuid = employeeUuid; + return this; + } + + public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder effectiveYear(long effectiveYear) { + Utils.checkNotNull(effectiveYear, "effectiveYear"); + this.effectiveYear = effectiveYear; + return this; + } + public PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequestBuilder employeeSection603HighEarnerStatusUpdateRequest(EmployeeSection603HighEarnerStatusUpdateRequest employeeSection603HighEarnerStatusUpdateRequest) { Utils.checkNotNull(employeeSection603HighEarnerStatusUpdateRequest, "employeeSection603HighEarnerStatusUpdateRequest"); this.employeeSection603HighEarnerStatusUpdateRequest = employeeSection603HighEarnerStatusUpdateRequest; @@ -71,9 +71,9 @@ private PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearReq xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest request = new PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest(employeeUuid, + PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest request = new PatchV1EmployeesEmployeeUuidSection603HighEarnerStatusesEffectiveYearRequest(xGustoAPIVersion, + employeeUuid, effectiveYear, - xGustoAPIVersion, employeeSection603HighEarnerStatusUpdateRequest); return request; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostDepartmentsRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostDepartmentsRequestBuilder.java index c1cbfbe40..53fa1c04e 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostDepartmentsRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostDepartmentsRequestBuilder.java @@ -20,11 +20,11 @@ public class PostDepartmentsRequestBuilder { - private String companyUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String companyUuid; private DepartmentCreateRequestBody departmentCreateRequestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PostDepartmentsRequestBuilder { public PostDepartmentsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostDepartmentsRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public PostDepartmentsRequestBuilder xGustoAPIVersion(PostDepartmentsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public PostDepartmentsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String companyUuid; private PartnerManagedCompanyAcceptTermsOfServiceRequest partnerManagedCompanyAcceptTermsOfServiceRequest; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBu public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBuilder xGustoAPIVersion(PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBuilder return this; } + public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + public PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequestBuilder partnerManagedCompanyAcceptTermsOfServiceRequest(PartnerManagedCompanyAcceptTermsOfServiceRequest partnerManagedCompanyAcceptTermsOfServiceRequest) { Utils.checkNotNull(partnerManagedCompanyAcceptTermsOfServiceRequest, "partnerManagedCompanyAcceptTermsOfServiceRequest"); this.partnerManagedCompanyAcceptTermsOfServiceRequest = partnerManagedCompanyAcceptTermsOfServiceRequest; @@ -63,8 +63,8 @@ private PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest buildR xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest request = new PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest(companyUuid, - xGustoAPIVersion, + PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest request = new PostPartnerManagedCompaniesCompanyUuidAcceptTermsOfServiceRequest(xGustoAPIVersion, + companyUuid, partnerManagedCompanyAcceptTermsOfServiceRequest); return request; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder.java index 64fe3f67f..055aab766 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder.java @@ -20,11 +20,11 @@ public class PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder { - private String companyUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String companyUuid; private PartnerManagedCompanyRetrieveTermsOfServiceRequest partnerManagedCompanyRetrieveTermsOfServiceRequest; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder xGustoAPIVersion(PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilde return this; } + public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + public PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequestBuilder partnerManagedCompanyRetrieveTermsOfServiceRequest(PartnerManagedCompanyRetrieveTermsOfServiceRequest partnerManagedCompanyRetrieveTermsOfServiceRequest) { Utils.checkNotNull(partnerManagedCompanyRetrieveTermsOfServiceRequest, "partnerManagedCompanyRetrieveTermsOfServiceRequest"); this.partnerManagedCompanyRetrieveTermsOfServiceRequest = partnerManagedCompanyRetrieveTermsOfServiceRequest; @@ -63,8 +63,8 @@ private PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest buil xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest request = new PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest(companyUuid, - xGustoAPIVersion, + PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest request = new PostPartnerManagedCompaniesCompanyUuidRetrieveTermsOfServiceRequest(xGustoAPIVersion, + companyUuid, partnerManagedCompanyRetrieveTermsOfServiceRequest); return request; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1BulkReportsRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1BulkReportsRequestBuilder.java new file mode 100644 index 000000000..b618d593d --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1BulkReportsRequestBuilder.java @@ -0,0 +1,87 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations.async; + +import static com.gusto.embedded_api_v_2026_06_15.operations.Operations.AsyncRequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2026_06_15.SDKConfiguration; +import com.gusto.embedded_api_v_2026_06_15.models.components.BulkReportBody; +import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1BulkReportsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1BulkReportsRequest; +import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1BulkReportsSecurity; +import com.gusto.embedded_api_v_2026_06_15.operations.PostV1BulkReports; +import com.gusto.embedded_api_v_2026_06_15.utils.Headers; +import com.gusto.embedded_api_v_2026_06_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; + +public class PostV1BulkReportsRequestBuilder { + + private PostV1BulkReportsSecurity security; + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2026-06-15\"", + new TypeReference>() {}); + private BulkReportBody bulkReportBody; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public PostV1BulkReportsRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public PostV1BulkReportsRequestBuilder security(PostV1BulkReportsSecurity security) { + Utils.checkNotNull(security, "security"); + this.security = security; + return this; + } + + public PostV1BulkReportsRequestBuilder xGustoAPIVersion(PostV1BulkReportsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public PostV1BulkReportsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public PostV1BulkReportsRequestBuilder bulkReportBody(BulkReportBody bulkReportBody) { + Utils.checkNotNull(bulkReportBody, "bulkReportBody"); + this.bulkReportBody = bulkReportBody; + return this; + } + + + private PostV1BulkReportsRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + PostV1BulkReportsRequest request = new PostV1BulkReportsRequest(xGustoAPIVersion, + bulkReportBody); + + return request; + } + + public CompletableFuture call() { + + AsyncRequestOperation operation + = new PostV1BulkReports.Async(sdkConfiguration, security, _headers); + PostV1BulkReportsRequest request = buildRequest(); + + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2026-06-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1BulkReportsResponse.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1BulkReportsResponse.java new file mode 100644 index 000000000..73fe63d3b --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1BulkReportsResponse.java @@ -0,0 +1,253 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations.async; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2026_06_15.models.components.CreateBulkReport; +import com.gusto.embedded_api_v_2026_06_15.utils.AsyncResponse; +import com.gusto.embedded_api_v_2026_06_15.utils.Blob; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.Optional; + + +public class PostV1BulkReportsResponse implements AsyncResponse { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * Created + */ + private Optional createBulkReport; + + @JsonCreator + public PostV1BulkReportsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional createBulkReport) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(createBulkReport, "createBulkReport"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.createBulkReport = createBulkReport; + } + + public PostV1BulkReportsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * Created + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional createBulkReport() { + return (Optional) createBulkReport; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public PostV1BulkReportsResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public PostV1BulkReportsResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public PostV1BulkReportsResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * Created + */ + public PostV1BulkReportsResponse withCreateBulkReport(CreateBulkReport createBulkReport) { + Utils.checkNotNull(createBulkReport, "createBulkReport"); + this.createBulkReport = Optional.ofNullable(createBulkReport); + return this; + } + + + /** + * Created + */ + public PostV1BulkReportsResponse withCreateBulkReport(Optional createBulkReport) { + Utils.checkNotNull(createBulkReport, "createBulkReport"); + this.createBulkReport = createBulkReport; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PostV1BulkReportsResponse other = (PostV1BulkReportsResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.createBulkReport, other.createBulkReport); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + createBulkReport); + } + + @Override + public String toString() { + return Utils.toString(PostV1BulkReportsResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "createBulkReport", createBulkReport); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional createBulkReport = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * Created + */ + public Builder createBulkReport(CreateBulkReport createBulkReport) { + Utils.checkNotNull(createBulkReport, "createBulkReport"); + this.createBulkReport = Optional.ofNullable(createBulkReport); + return this; + } + + /** + * Created + */ + public Builder createBulkReport(Optional createBulkReport) { + Utils.checkNotNull(createBulkReport, "createBulkReport"); + this.createBulkReport = createBulkReport; + return this; + } + + public PostV1BulkReportsResponse build() { + + return new PostV1BulkReportsResponse( + contentType, statusCode, rawResponse, + createBulkReport); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder.java index 9582adfd3..c1a13e986 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder.java @@ -20,11 +20,11 @@ public class PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder { - private String companyId; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String companyId; private PostV1CompaniesCompanyIdPeopleBatchesRequestBody requestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder { public PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } public PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder xGustoAPIVersion(PostV1CompaniesCompanyIdPeopleBatchesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder xGustoAPIVersion(Opti return this; } + public PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder companyId(String companyId) { + Utils.checkNotNull(companyId, "companyId"); + this.companyId = companyId; + return this; + } + public PostV1CompaniesCompanyIdPeopleBatchesRequestBuilder requestBody(PostV1CompaniesCompanyIdPeopleBatchesRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); this.requestBody = requestBody; @@ -63,8 +63,8 @@ private PostV1CompaniesCompanyIdPeopleBatchesRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PostV1CompaniesCompanyIdPeopleBatchesRequest request = new PostV1CompaniesCompanyIdPeopleBatchesRequest(companyId, - xGustoAPIVersion, + PostV1CompaniesCompanyIdPeopleBatchesRequest request = new PostV1CompaniesCompanyIdPeopleBatchesRequest(xGustoAPIVersion, + companyId, requestBody); return request; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder.java index 7cba53d35..8e616ed05 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder.java @@ -20,11 +20,11 @@ public class PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder { - private String companyUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String companyUuid; private SignatoryInviteRequest signatoryInviteRequest; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder { public PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder xGustoAPIVersion(PostV1CompaniesCompanyUuidSignatoriesInviteHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder xGustoAPIVersio return this; } + public PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + public PostV1CompaniesCompanyUuidSignatoriesInviteRequestBuilder signatoryInviteRequest(SignatoryInviteRequest signatoryInviteRequest) { Utils.checkNotNull(signatoryInviteRequest, "signatoryInviteRequest"); this.signatoryInviteRequest = signatoryInviteRequest; @@ -63,8 +63,8 @@ private PostV1CompaniesCompanyUuidSignatoriesInviteRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PostV1CompaniesCompanyUuidSignatoriesInviteRequest request = new PostV1CompaniesCompanyUuidSignatoriesInviteRequest(companyUuid, - xGustoAPIVersion, + PostV1CompaniesCompanyUuidSignatoriesInviteRequest request = new PostV1CompaniesCompanyUuidSignatoriesInviteRequest(xGustoAPIVersion, + companyUuid, signatoryInviteRequest); return request; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1CompanySignatoriesRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1CompanySignatoriesRequestBuilder.java index 906195fe4..acb63b3f0 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1CompanySignatoriesRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1CompanySignatoriesRequestBuilder.java @@ -20,11 +20,11 @@ public class PostV1CompanySignatoriesRequestBuilder { - private String companyUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String companyUuid; private SignatoryCreateRequest signatoryCreateRequest; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PostV1CompanySignatoriesRequestBuilder { public PostV1CompanySignatoriesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostV1CompanySignatoriesRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public PostV1CompanySignatoriesRequestBuilder xGustoAPIVersion(PostV1CompanySignatoriesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public PostV1CompanySignatoriesRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2026-06-15\"", + new TypeReference>() {}); + private String contractorUuid; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public PostV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public PostV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder xGustoAPIVersion(PostV1ContractorsContractorUuidMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public PostV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public PostV1ContractorsContractorUuidMemberPortalInvitationsRequestBuilder contractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } + + + private PostV1ContractorsContractorUuidMemberPortalInvitationsRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + PostV1ContractorsContractorUuidMemberPortalInvitationsRequest request = new PostV1ContractorsContractorUuidMemberPortalInvitationsRequest(xGustoAPIVersion, + contractorUuid); + + return request; + } + + public CompletableFuture call() { + + AsyncRequestOperation operation + = new PostV1ContractorsContractorUuidMemberPortalInvitations.Async(sdkConfiguration, _headers); + PostV1ContractorsContractorUuidMemberPortalInvitationsRequest request = buildRequest(); + + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2026-06-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1ContractorsContractorUuidMemberPortalInvitationsResponse.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1ContractorsContractorUuidMemberPortalInvitationsResponse.java new file mode 100644 index 000000000..15814304f --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1ContractorsContractorUuidMemberPortalInvitationsResponse.java @@ -0,0 +1,181 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations.async; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2026_06_15.utils.AsyncResponse; +import com.gusto.embedded_api_v_2026_06_15.utils.Blob; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.net.http.HttpResponse; + + +public class PostV1ContractorsContractorUuidMemberPortalInvitationsResponse implements AsyncResponse { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + @JsonCreator + public PostV1ContractorsContractorUuidMemberPortalInvitationsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public PostV1ContractorsContractorUuidMemberPortalInvitationsResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public PostV1ContractorsContractorUuidMemberPortalInvitationsResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public PostV1ContractorsContractorUuidMemberPortalInvitationsResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PostV1ContractorsContractorUuidMemberPortalInvitationsResponse other = (PostV1ContractorsContractorUuidMemberPortalInvitationsResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse); + } + + @Override + public String toString() { + return Utils.toString(PostV1ContractorsContractorUuidMemberPortalInvitationsResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + public PostV1ContractorsContractorUuidMemberPortalInvitationsResponse build() { + + return new PostV1ContractorsContractorUuidMemberPortalInvitationsResponse( + contentType, statusCode, rawResponse); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1ContractorsContractorUuidRehireRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1ContractorsContractorUuidRehireRequestBuilder.java index 0261ec892..6e2125c03 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1ContractorsContractorUuidRehireRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1ContractorsContractorUuidRehireRequestBuilder.java @@ -20,11 +20,11 @@ public class PostV1ContractorsContractorUuidRehireRequestBuilder { - private String contractorUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String contractorUuid; private Optional requestBody = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PostV1ContractorsContractorUuidRehireRequestBuilder { public PostV1ContractorsContractorUuidRehireRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostV1ContractorsContractorUuidRehireRequestBuilder contractorUuid(String contractorUuid) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); - this.contractorUuid = contractorUuid; - return this; - } public PostV1ContractorsContractorUuidRehireRequestBuilder xGustoAPIVersion(PostV1ContractorsContractorUuidRehireHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -50,6 +44,12 @@ public PostV1ContractorsContractorUuidRehireRequestBuilder xGustoAPIVersion(Opti this.xGustoAPIVersion = xGustoAPIVersion; return this; } + + public PostV1ContractorsContractorUuidRehireRequestBuilder contractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } public PostV1ContractorsContractorUuidRehireRequestBuilder requestBody(PostV1ContractorsContractorUuidRehireRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); @@ -69,8 +69,8 @@ private PostV1ContractorsContractorUuidRehireRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PostV1ContractorsContractorUuidRehireRequest request = new PostV1ContractorsContractorUuidRehireRequest(contractorUuid, - xGustoAPIVersion, + PostV1ContractorsContractorUuidRehireRequest request = new PostV1ContractorsContractorUuidRehireRequest(xGustoAPIVersion, + contractorUuid, requestBody); return request; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1ContractorsContractorUuidTerminationRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1ContractorsContractorUuidTerminationRequestBuilder.java index 2b6b84590..6f8768bae 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1ContractorsContractorUuidTerminationRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1ContractorsContractorUuidTerminationRequestBuilder.java @@ -20,11 +20,11 @@ public class PostV1ContractorsContractorUuidTerminationRequestBuilder { - private String contractorUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String contractorUuid; private Optional requestBody = Optional.empty(); private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PostV1ContractorsContractorUuidTerminationRequestBuilder { public PostV1ContractorsContractorUuidTerminationRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostV1ContractorsContractorUuidTerminationRequestBuilder contractorUuid(String contractorUuid) { - Utils.checkNotNull(contractorUuid, "contractorUuid"); - this.contractorUuid = contractorUuid; - return this; - } public PostV1ContractorsContractorUuidTerminationRequestBuilder xGustoAPIVersion(PostV1ContractorsContractorUuidTerminationHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -50,6 +44,12 @@ public PostV1ContractorsContractorUuidTerminationRequestBuilder xGustoAPIVersion this.xGustoAPIVersion = xGustoAPIVersion; return this; } + + public PostV1ContractorsContractorUuidTerminationRequestBuilder contractorUuid(String contractorUuid) { + Utils.checkNotNull(contractorUuid, "contractorUuid"); + this.contractorUuid = contractorUuid; + return this; + } public PostV1ContractorsContractorUuidTerminationRequestBuilder requestBody(PostV1ContractorsContractorUuidTerminationRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); @@ -69,8 +69,8 @@ private PostV1ContractorsContractorUuidTerminationRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PostV1ContractorsContractorUuidTerminationRequest request = new PostV1ContractorsContractorUuidTerminationRequest(contractorUuid, - xGustoAPIVersion, + PostV1ContractorsContractorUuidTerminationRequest request = new PostV1ContractorsContractorUuidTerminationRequest(xGustoAPIVersion, + contractorUuid, requestBody); return request; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder.java index e76cb3e04..313f4fb6f 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder.java @@ -20,11 +20,11 @@ public class PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder { - private String employeeId; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String employeeId; private PostV1EmployeesEmployeeIdHomeAddressesRequestBody requestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder { public PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder employeeId(String employeeId) { - Utils.checkNotNull(employeeId, "employeeId"); - this.employeeId = employeeId; - return this; - } public PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder xGustoAPIVersion(PostV1EmployeesEmployeeIdHomeAddressesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder xGustoAPIVersion(Opt return this; } + public PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder employeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + public PostV1EmployeesEmployeeIdHomeAddressesRequestBuilder requestBody(PostV1EmployeesEmployeeIdHomeAddressesRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); this.requestBody = requestBody; @@ -63,8 +63,8 @@ private PostV1EmployeesEmployeeIdHomeAddressesRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PostV1EmployeesEmployeeIdHomeAddressesRequest request = new PostV1EmployeesEmployeeIdHomeAddressesRequest(employeeId, - xGustoAPIVersion, + PostV1EmployeesEmployeeIdHomeAddressesRequest request = new PostV1EmployeesEmployeeIdHomeAddressesRequest(xGustoAPIVersion, + employeeId, requestBody); return request; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1EmployeesEmployeeIdJobsRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1EmployeesEmployeeIdJobsRequestBuilder.java index 24c233fcd..8e7b05e7f 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1EmployeesEmployeeIdJobsRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1EmployeesEmployeeIdJobsRequestBuilder.java @@ -20,11 +20,11 @@ public class PostV1EmployeesEmployeeIdJobsRequestBuilder { - private String employeeId; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String employeeId; private JobsCreateRequestBody jobsCreateRequestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PostV1EmployeesEmployeeIdJobsRequestBuilder { public PostV1EmployeesEmployeeIdJobsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostV1EmployeesEmployeeIdJobsRequestBuilder employeeId(String employeeId) { - Utils.checkNotNull(employeeId, "employeeId"); - this.employeeId = employeeId; - return this; - } public PostV1EmployeesEmployeeIdJobsRequestBuilder xGustoAPIVersion(PostV1EmployeesEmployeeIdJobsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public PostV1EmployeesEmployeeIdJobsRequestBuilder xGustoAPIVersion(Optional rawResponse; /** - * created + * created a primary job with a null title */ private Optional job; @@ -87,7 +87,7 @@ public HttpResponse rawResponse() { } /** - * created + * created a primary job with a null title */ @SuppressWarnings("unchecked") @JsonIgnore @@ -128,7 +128,7 @@ public PostV1EmployeesEmployeeIdJobsResponse withRawResponse(HttpResponse } /** - * created + * created a primary job with a null title */ public PostV1EmployeesEmployeeIdJobsResponse withJob(Job job) { Utils.checkNotNull(job, "job"); @@ -138,7 +138,7 @@ public PostV1EmployeesEmployeeIdJobsResponse withJob(Job job) { /** - * created + * created a primary job with a null title */ public PostV1EmployeesEmployeeIdJobsResponse withJob(Optional job) { Utils.checkNotNull(job, "job"); @@ -225,7 +225,7 @@ public Builder rawResponse(HttpResponse rawResponse) { /** - * created + * created a primary job with a null title */ public Builder job(Job job) { Utils.checkNotNull(job, "job"); @@ -234,7 +234,7 @@ public Builder job(Job job) { } /** - * created + * created a primary job with a null title */ public Builder job(Optional job) { Utils.checkNotNull(job, "job"); diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java new file mode 100644 index 000000000..7f22f0d87 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder.java @@ -0,0 +1,79 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations.async; + +import static com.gusto.embedded_api_v_2026_06_15.operations.Operations.AsyncRequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2026_06_15.SDKConfiguration; +import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest; +import com.gusto.embedded_api_v_2026_06_15.operations.PostV1EmployeesEmployeeIdMemberPortalInvitations; +import com.gusto.embedded_api_v_2026_06_15.utils.Headers; +import com.gusto.embedded_api_v_2026_06_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.String; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; + +public class PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder { + + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2026-06-15\"", + new TypeReference>() {}); + private String employeeId; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder xGustoAPIVersion(PostV1EmployeesEmployeeIdMemberPortalInvitationsHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public PostV1EmployeesEmployeeIdMemberPortalInvitationsRequestBuilder employeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + + + private PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest request = new PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest(xGustoAPIVersion, + employeeId); + + return request; + } + + public CompletableFuture call() { + + AsyncRequestOperation operation + = new PostV1EmployeesEmployeeIdMemberPortalInvitations.Async(sdkConfiguration, _headers); + PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest request = buildRequest(); + + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2026-06-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java new file mode 100644 index 000000000..8b518628c --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse.java @@ -0,0 +1,181 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations.async; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2026_06_15.utils.AsyncResponse; +import com.gusto.embedded_api_v_2026_06_15.utils.Blob; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.net.http.HttpResponse; + + +public class PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse implements AsyncResponse { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + @JsonCreator + public PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse other = (PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse); + } + + @Override + public String toString() { + return Utils.toString(PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + public PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse build() { + + return new PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse( + contentType, statusCode, rawResponse); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder.java index 2c4c6b242..ab19605dc 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder.java @@ -20,11 +20,11 @@ public class PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder { - private String employeeId; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String employeeId; private PostV1EmployeesEmployeeIdWorkAddressesRequestBody requestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder { public PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder employeeId(String employeeId) { - Utils.checkNotNull(employeeId, "employeeId"); - this.employeeId = employeeId; - return this; - } public PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder xGustoAPIVersion(PostV1EmployeesEmployeeIdWorkAddressesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder xGustoAPIVersion(Opt return this; } + public PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder employeeId(String employeeId) { + Utils.checkNotNull(employeeId, "employeeId"); + this.employeeId = employeeId; + return this; + } + public PostV1EmployeesEmployeeIdWorkAddressesRequestBuilder requestBody(PostV1EmployeesEmployeeIdWorkAddressesRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); this.requestBody = requestBody; @@ -63,8 +63,8 @@ private PostV1EmployeesEmployeeIdWorkAddressesRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PostV1EmployeesEmployeeIdWorkAddressesRequest request = new PostV1EmployeesEmployeeIdWorkAddressesRequest(employeeId, - xGustoAPIVersion, + PostV1EmployeesEmployeeIdWorkAddressesRequest request = new PostV1EmployeesEmployeeIdWorkAddressesRequest(xGustoAPIVersion, + employeeId, requestBody); return request; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder.java index cd98744bb..4e970b7f6 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder.java @@ -20,11 +20,11 @@ public class PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder { - private String employeeUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String employeeUuid; private EmployeeSection603HighEarnerStatusCreateRequest employeeSection603HighEarnerStatusCreateRequest; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuild public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder employeeUuid(String employeeUuid) { - Utils.checkNotNull(employeeUuid, "employeeUuid"); - this.employeeUuid = employeeUuid; - return this; - } public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder xGustoAPIVersion(PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder xGu return this; } + public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder employeeUuid(String employeeUuid) { + Utils.checkNotNull(employeeUuid, "employeeUuid"); + this.employeeUuid = employeeUuid; + return this; + } + public PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequestBuilder employeeSection603HighEarnerStatusCreateRequest(EmployeeSection603HighEarnerStatusCreateRequest employeeSection603HighEarnerStatusCreateRequest) { Utils.checkNotNull(employeeSection603HighEarnerStatusCreateRequest, "employeeSection603HighEarnerStatusCreateRequest"); this.employeeSection603HighEarnerStatusCreateRequest = employeeSection603HighEarnerStatusCreateRequest; @@ -63,8 +63,8 @@ private PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest buildRequ xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest request = new PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest(employeeUuid, - xGustoAPIVersion, + PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest request = new PostV1EmployeesEmployeeUuidSection603HighEarnerStatusesRequest(xGustoAPIVersion, + employeeUuid, employeeSection603HighEarnerStatusCreateRequest); return request; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilder.java index ca899a3a4..b3c96181b 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilder.java @@ -20,11 +20,11 @@ public class PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilder { - private String companyUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String companyUuid; private PartnerManagedCompanyAcceptTermsOfServiceRequest partnerManagedCompanyAcceptTermsOfServiceRequest; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilde public PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilder xGustoAPIVersion(PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilder xGus return this; } + public PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + public PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilder partnerManagedCompanyAcceptTermsOfServiceRequest(PartnerManagedCompanyAcceptTermsOfServiceRequest partnerManagedCompanyAcceptTermsOfServiceRequest) { Utils.checkNotNull(partnerManagedCompanyAcceptTermsOfServiceRequest, "partnerManagedCompanyAcceptTermsOfServiceRequest"); this.partnerManagedCompanyAcceptTermsOfServiceRequest = partnerManagedCompanyAcceptTermsOfServiceRequest; @@ -63,8 +63,8 @@ private PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest buildReque xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest request = new PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest(companyUuid, - xGustoAPIVersion, + PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest request = new PostV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest(xGustoAPIVersion, + companyUuid, partnerManagedCompanyAcceptTermsOfServiceRequest); return request; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1PayrollBatchesRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1PayrollBatchesRequestBuilder.java new file mode 100644 index 000000000..f90a90ec0 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1PayrollBatchesRequestBuilder.java @@ -0,0 +1,87 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations.async; + +import static com.gusto.embedded_api_v_2026_06_15.operations.Operations.AsyncRequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2026_06_15.SDKConfiguration; +import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1PayrollBatchesHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1PayrollBatchesRequest; +import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1PayrollBatchesRequestBody; +import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1PayrollBatchesSecurity; +import com.gusto.embedded_api_v_2026_06_15.operations.PostV1PayrollBatches; +import com.gusto.embedded_api_v_2026_06_15.utils.Headers; +import com.gusto.embedded_api_v_2026_06_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; + +public class PostV1PayrollBatchesRequestBuilder { + + private PostV1PayrollBatchesSecurity security; + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2026-06-15\"", + new TypeReference>() {}); + private PostV1PayrollBatchesRequestBody requestBody; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public PostV1PayrollBatchesRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public PostV1PayrollBatchesRequestBuilder security(PostV1PayrollBatchesSecurity security) { + Utils.checkNotNull(security, "security"); + this.security = security; + return this; + } + + public PostV1PayrollBatchesRequestBuilder xGustoAPIVersion(PostV1PayrollBatchesHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public PostV1PayrollBatchesRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public PostV1PayrollBatchesRequestBuilder requestBody(PostV1PayrollBatchesRequestBody requestBody) { + Utils.checkNotNull(requestBody, "requestBody"); + this.requestBody = requestBody; + return this; + } + + + private PostV1PayrollBatchesRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + PostV1PayrollBatchesRequest request = new PostV1PayrollBatchesRequest(xGustoAPIVersion, + requestBody); + + return request; + } + + public CompletableFuture call() { + + AsyncRequestOperation operation + = new PostV1PayrollBatches.Async(sdkConfiguration, security, _headers); + PostV1PayrollBatchesRequest request = buildRequest(); + + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2026-06-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1PayrollBatchesResponse.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1PayrollBatchesResponse.java new file mode 100644 index 000000000..45f4244e2 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PostV1PayrollBatchesResponse.java @@ -0,0 +1,253 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations.async; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2026_06_15.models.components.PayrollBatch; +import com.gusto.embedded_api_v_2026_06_15.utils.AsyncResponse; +import com.gusto.embedded_api_v_2026_06_15.utils.Blob; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.Optional; + + +public class PostV1PayrollBatchesResponse implements AsyncResponse { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * created + */ + private Optional payrollBatch; + + @JsonCreator + public PostV1PayrollBatchesResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional payrollBatch) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(payrollBatch, "payrollBatch"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.payrollBatch = payrollBatch; + } + + public PostV1PayrollBatchesResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * created + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional payrollBatch() { + return (Optional) payrollBatch; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public PostV1PayrollBatchesResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public PostV1PayrollBatchesResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public PostV1PayrollBatchesResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * created + */ + public PostV1PayrollBatchesResponse withPayrollBatch(PayrollBatch payrollBatch) { + Utils.checkNotNull(payrollBatch, "payrollBatch"); + this.payrollBatch = Optional.ofNullable(payrollBatch); + return this; + } + + + /** + * created + */ + public PostV1PayrollBatchesResponse withPayrollBatch(Optional payrollBatch) { + Utils.checkNotNull(payrollBatch, "payrollBatch"); + this.payrollBatch = payrollBatch; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PostV1PayrollBatchesResponse other = (PostV1PayrollBatchesResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.payrollBatch, other.payrollBatch); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + payrollBatch); + } + + @Override + public String toString() { + return Utils.toString(PostV1PayrollBatchesResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "payrollBatch", payrollBatch); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional payrollBatch = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * created + */ + public Builder payrollBatch(PayrollBatch payrollBatch) { + Utils.checkNotNull(payrollBatch, "payrollBatch"); + this.payrollBatch = Optional.ofNullable(payrollBatch); + return this; + } + + /** + * created + */ + public Builder payrollBatch(Optional payrollBatch) { + Utils.checkNotNull(payrollBatch, "payrollBatch"); + this.payrollBatch = payrollBatch; + return this; + } + + public PostV1PayrollBatchesResponse build() { + + return new PostV1PayrollBatchesResponse( + contentType, statusCode, rawResponse, + payrollBatch); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PutAddPeopleToDepartmentRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PutAddPeopleToDepartmentRequestBuilder.java index 3a320dc40..ca5a792ea 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PutAddPeopleToDepartmentRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PutAddPeopleToDepartmentRequestBuilder.java @@ -20,11 +20,11 @@ public class PutAddPeopleToDepartmentRequestBuilder { - private String departmentUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String departmentUuid; private DepartmentPeopleRequestBody departmentPeopleRequestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PutAddPeopleToDepartmentRequestBuilder { public PutAddPeopleToDepartmentRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutAddPeopleToDepartmentRequestBuilder departmentUuid(String departmentUuid) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); - this.departmentUuid = departmentUuid; - return this; - } public PutAddPeopleToDepartmentRequestBuilder xGustoAPIVersion(PutAddPeopleToDepartmentHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public PutAddPeopleToDepartmentRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String departmentUuid; private DepartmentUpdateRequestBody departmentUpdateRequestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PutDepartmentsRequestBuilder { public PutDepartmentsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutDepartmentsRequestBuilder departmentUuid(String departmentUuid) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); - this.departmentUuid = departmentUuid; - return this; - } public PutDepartmentsRequestBuilder xGustoAPIVersion(PutDepartmentsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public PutDepartmentsRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String departmentUuid; private DepartmentPeopleRequestBody departmentPeopleRequestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PutRemovePeopleFromDepartmentRequestBuilder { public PutRemovePeopleFromDepartmentRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutRemovePeopleFromDepartmentRequestBuilder departmentUuid(String departmentUuid) { - Utils.checkNotNull(departmentUuid, "departmentUuid"); - this.departmentUuid = departmentUuid; - return this; - } public PutRemovePeopleFromDepartmentRequestBuilder xGustoAPIVersion(PutRemovePeopleFromDepartmentHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public PutRemovePeopleFromDepartmentRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String companyId; private FederalTaxDetailsUpdate federalTaxDetailsUpdate; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PutV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder { public PutV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } public PutV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder xGustoAPIVersion(PutV1CompaniesCompanyIdFederalTaxDetailsHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public PutV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder xGustoAPIVersion(O return this; } + public PutV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder companyId(String companyId) { + Utils.checkNotNull(companyId, "companyId"); + this.companyId = companyId; + return this; + } + public PutV1CompaniesCompanyIdFederalTaxDetailsRequestBuilder federalTaxDetailsUpdate(FederalTaxDetailsUpdate federalTaxDetailsUpdate) { Utils.checkNotNull(federalTaxDetailsUpdate, "federalTaxDetailsUpdate"); this.federalTaxDetailsUpdate = federalTaxDetailsUpdate; @@ -63,8 +63,8 @@ private PutV1CompaniesCompanyIdFederalTaxDetailsRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PutV1CompaniesCompanyIdFederalTaxDetailsRequest request = new PutV1CompaniesCompanyIdFederalTaxDetailsRequest(companyId, - xGustoAPIVersion, + PutV1CompaniesCompanyIdFederalTaxDetailsRequest request = new PutV1CompaniesCompanyIdFederalTaxDetailsRequest(xGustoAPIVersion, + companyId, federalTaxDetailsUpdate); return request; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder.java index f5119e29c..d65e5f818 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder.java @@ -20,12 +20,12 @@ public class PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder { - private String companyUuid; - private String signatoryUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String companyUuid; + private String signatoryUuid; private SignatoryUpdateRequest signatoryUpdateRequest; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -33,18 +33,6 @@ public class PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder { public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder signatoryUuid(String signatoryUuid) { - Utils.checkNotNull(signatoryUuid, "signatoryUuid"); - this.signatoryUuid = signatoryUuid; - return this; - } public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder xGustoAPIVersion(PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -58,6 +46,18 @@ public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder xGustoAPI return this; } + public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder signatoryUuid(String signatoryUuid) { + Utils.checkNotNull(signatoryUuid, "signatoryUuid"); + this.signatoryUuid = signatoryUuid; + return this; + } + public PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequestBuilder signatoryUpdateRequest(SignatoryUpdateRequest signatoryUpdateRequest) { Utils.checkNotNull(signatoryUpdateRequest, "signatoryUpdateRequest"); this.signatoryUpdateRequest = signatoryUpdateRequest; @@ -70,9 +70,9 @@ private PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest buildRequest() xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest request = new PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest(companyUuid, + PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest request = new PutV1CompaniesCompanyUuidSignatoriesSignatoryUuidRequest(xGustoAPIVersion, + companyUuid, signatoryUuid, - xGustoAPIVersion, signatoryUpdateRequest); return request; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder.java index e7d081914..88cc72e0f 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder.java @@ -20,12 +20,12 @@ public class PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder { - private String companyUuid; - private String state; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String companyUuid; + private String state; private PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody requestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -33,18 +33,6 @@ public class PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder { public PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } - - public PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder state(String state) { - Utils.checkNotNull(state, "state"); - this.state = state; - return this; - } public PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder xGustoAPIVersion(PutV1CompaniesCompanyUuidTaxRequirementsStateHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -58,6 +46,18 @@ public PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder xGustoAPIVers return this; } + public PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + public PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder state(String state) { + Utils.checkNotNull(state, "state"); + this.state = state; + return this; + } + public PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBuilder requestBody(PutV1CompaniesCompanyUuidTaxRequirementsStateRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); this.requestBody = requestBody; @@ -70,9 +70,9 @@ private PutV1CompaniesCompanyUuidTaxRequirementsStateRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PutV1CompaniesCompanyUuidTaxRequirementsStateRequest request = new PutV1CompaniesCompanyUuidTaxRequirementsStateRequest(companyUuid, + PutV1CompaniesCompanyUuidTaxRequirementsStateRequest request = new PutV1CompaniesCompanyUuidTaxRequirementsStateRequest(xGustoAPIVersion, + companyUuid, state, - xGustoAPIVersion, requestBody); return request; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PutV1CompaniesRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PutV1CompaniesRequestBuilder.java index 1d9214d4d..a1171fbe1 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PutV1CompaniesRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PutV1CompaniesRequestBuilder.java @@ -20,11 +20,11 @@ public class PutV1CompaniesRequestBuilder { - private String companyId; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String companyId; private PutV1CompaniesRequestBody requestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PutV1CompaniesRequestBuilder { public PutV1CompaniesRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutV1CompaniesRequestBuilder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } public PutV1CompaniesRequestBuilder xGustoAPIVersion(PutV1CompaniesHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public PutV1CompaniesRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String companyId; private CompanyIndustrySelectionRequiredBody companyIndustrySelectionRequiredBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PutV1CompanyIndustryRequestBuilder { public PutV1CompanyIndustryRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutV1CompanyIndustryRequestBuilder companyId(String companyId) { - Utils.checkNotNull(companyId, "companyId"); - this.companyId = companyId; - return this; - } public PutV1CompanyIndustryRequestBuilder xGustoAPIVersion(PutV1CompanyIndustryHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public PutV1CompanyIndustryRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String contractorPaymentGroupUuid; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequestBuilder contractorPaymentGroupUuid(String contractorPaymentGroupUuid) { - Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); - this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; - return this; - } public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequestBuilder xGustoAPIVersion(PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -49,14 +43,20 @@ public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequestBuilder xG return this; } + public PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequestBuilder contractorPaymentGroupUuid(String contractorPaymentGroupUuid) { + Utils.checkNotNull(contractorPaymentGroupUuid, "contractorPaymentGroupUuid"); + this.contractorPaymentGroupUuid = contractorPaymentGroupUuid; + return this; + } + private PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest buildRequest() { if (xGustoAPIVersion == null) { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest request = new PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest(contractorPaymentGroupUuid, - xGustoAPIVersion); + PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest request = new PutV1ContractorPaymentGroupsContractorPaymentGroupIdFundRequest(xGustoAPIVersion, + contractorPaymentGroupUuid); return request; } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PutV1JobsJobIdRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PutV1JobsJobIdRequestBuilder.java index 873f6b53a..584e8c121 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PutV1JobsJobIdRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PutV1JobsJobIdRequestBuilder.java @@ -20,11 +20,11 @@ public class PutV1JobsJobIdRequestBuilder { - private String jobId; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String jobId; private JobsUpdateRequestBody jobsUpdateRequestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PutV1JobsJobIdRequestBuilder { public PutV1JobsJobIdRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutV1JobsJobIdRequestBuilder jobId(String jobId) { - Utils.checkNotNull(jobId, "jobId"); - this.jobId = jobId; - return this; - } public PutV1JobsJobIdRequestBuilder xGustoAPIVersion(PutV1JobsJobIdHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public PutV1JobsJobIdRequestBuilder xGustoAPIVersion(Optional rawResponse; /** - * successful + * successful blank title on a non-primary active job */ private Optional job; @@ -87,7 +87,7 @@ public HttpResponse rawResponse() { } /** - * successful + * successful blank title on a non-primary active job */ @SuppressWarnings("unchecked") @JsonIgnore @@ -128,7 +128,7 @@ public PutV1JobsJobIdResponse withRawResponse(HttpResponse rawResponse) { } /** - * successful + * successful blank title on a non-primary active job */ public PutV1JobsJobIdResponse withJob(Job job) { Utils.checkNotNull(job, "job"); @@ -138,7 +138,7 @@ public PutV1JobsJobIdResponse withJob(Job job) { /** - * successful + * successful blank title on a non-primary active job */ public PutV1JobsJobIdResponse withJob(Optional job) { Utils.checkNotNull(job, "job"); @@ -225,7 +225,7 @@ public Builder rawResponse(HttpResponse rawResponse) { /** - * successful + * successful blank title on a non-primary active job */ public Builder job(Job job) { Utils.checkNotNull(job, "job"); @@ -234,7 +234,7 @@ public Builder job(Job job) { } /** - * successful + * successful blank title on a non-primary active job */ public Builder job(Optional job) { Utils.checkNotNull(job, "job"); diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder.java new file mode 100644 index 000000000..e1b0e56c9 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder.java @@ -0,0 +1,87 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations.async; + +import static com.gusto.embedded_api_v_2026_06_15.operations.Operations.AsyncRequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2026_06_15.SDKConfiguration; +import com.gusto.embedded_api_v_2026_06_15.models.operations.PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion; +import com.gusto.embedded_api_v_2026_06_15.models.operations.PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest; +import com.gusto.embedded_api_v_2026_06_15.models.operations.PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity; +import com.gusto.embedded_api_v_2026_06_15.operations.PutV1PartnerManagedCompaniesCompanyUuidDisassociate; +import com.gusto.embedded_api_v_2026_06_15.utils.Headers; +import com.gusto.embedded_api_v_2026_06_15.utils.LazySingletonValue; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.String; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; + +public class PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder { + + private PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity security; + private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( + "xGustoAPIVersion", + "\"2026-06-15\"", + new TypeReference>() {}); + private String companyUuid; + private final SDKConfiguration sdkConfiguration; + private final Headers _headers = new Headers(); + + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder(SDKConfiguration sdkConfiguration) { + this.sdkConfiguration = sdkConfiguration; + } + + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder security(PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity security) { + Utils.checkNotNull(security, "security"); + this.security = security; + return this; + } + + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder xGustoAPIVersion(PutV1PartnerManagedCompaniesCompanyUuidDisassociateHeaderXGustoAPIVersion xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = Optional.of(xGustoAPIVersion); + return this; + } + + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion) { + Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); + this.xGustoAPIVersion = xGustoAPIVersion; + return this; + } + + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + + + private PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest buildRequest() { + if (xGustoAPIVersion == null) { + xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); + } + + PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest request = new PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest(xGustoAPIVersion, + companyUuid); + + return request; + } + + public CompletableFuture call() { + + AsyncRequestOperation operation + = new PutV1PartnerManagedCompaniesCompanyUuidDisassociate.Async(sdkConfiguration, security, _headers); + PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest request = buildRequest(); + + return operation.doRequest(request) + .thenCompose(operation::handleResponse); + } + + private static final LazySingletonValue> _SINGLETON_VALUE_XGustoAPIVersion = + new LazySingletonValue<>( + "xGustoAPIVersion", + "\"2026-06-15\"", + new TypeReference>() {}); +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse.java new file mode 100644 index 000000000..18beea5fe --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse.java @@ -0,0 +1,253 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.models.operations.async; + +import com.fasterxml.jackson.annotation.JsonCreator; +import com.fasterxml.jackson.annotation.JsonIgnore; +import com.gusto.embedded_api_v_2026_06_15.models.components.PartnerManagedCompanyDisassociateResponse; +import com.gusto.embedded_api_v_2026_06_15.utils.AsyncResponse; +import com.gusto.embedded_api_v_2026_06_15.utils.Blob; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.lang.Integer; +import java.lang.Override; +import java.lang.String; +import java.lang.SuppressWarnings; +import java.net.http.HttpResponse; +import java.util.Optional; + + +public class PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse implements AsyncResponse { + /** + * HTTP response content type for this operation + */ + private String contentType; + + /** + * HTTP response status code for this operation + */ + private int statusCode; + + /** + * Raw HTTP response; suitable for custom response parsing + */ + private HttpResponse rawResponse; + + /** + * OK + */ + private Optional partnerManagedCompanyDisassociateResponse; + + @JsonCreator + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse( + String contentType, + int statusCode, + HttpResponse rawResponse, + Optional partnerManagedCompanyDisassociateResponse) { + Utils.checkNotNull(contentType, "contentType"); + Utils.checkNotNull(statusCode, "statusCode"); + Utils.checkNotNull(rawResponse, "rawResponse"); + Utils.checkNotNull(partnerManagedCompanyDisassociateResponse, "partnerManagedCompanyDisassociateResponse"); + this.contentType = contentType; + this.statusCode = statusCode; + this.rawResponse = rawResponse; + this.partnerManagedCompanyDisassociateResponse = partnerManagedCompanyDisassociateResponse; + } + + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse( + String contentType, + int statusCode, + HttpResponse rawResponse) { + this(contentType, statusCode, rawResponse, + Optional.empty()); + } + + /** + * HTTP response content type for this operation + */ + @JsonIgnore + public String contentType() { + return contentType; + } + + /** + * HTTP response status code for this operation + */ + @JsonIgnore + public int statusCode() { + return statusCode; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + @JsonIgnore + public HttpResponse rawResponse() { + return rawResponse; + } + + /** + * OK + */ + @SuppressWarnings("unchecked") + @JsonIgnore + public Optional partnerManagedCompanyDisassociateResponse() { + return (Optional) partnerManagedCompanyDisassociateResponse; + } + + public static Builder builder() { + return new Builder(); + } + + + /** + * HTTP response content type for this operation + */ + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse withContentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + /** + * HTTP response status code for this operation + */ + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse withStatusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse withRawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + /** + * OK + */ + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse withPartnerManagedCompanyDisassociateResponse(PartnerManagedCompanyDisassociateResponse partnerManagedCompanyDisassociateResponse) { + Utils.checkNotNull(partnerManagedCompanyDisassociateResponse, "partnerManagedCompanyDisassociateResponse"); + this.partnerManagedCompanyDisassociateResponse = Optional.ofNullable(partnerManagedCompanyDisassociateResponse); + return this; + } + + + /** + * OK + */ + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse withPartnerManagedCompanyDisassociateResponse(Optional partnerManagedCompanyDisassociateResponse) { + Utils.checkNotNull(partnerManagedCompanyDisassociateResponse, "partnerManagedCompanyDisassociateResponse"); + this.partnerManagedCompanyDisassociateResponse = partnerManagedCompanyDisassociateResponse; + return this; + } + + @Override + public boolean equals(java.lang.Object o) { + if (this == o) { + return true; + } + if (o == null || getClass() != o.getClass()) { + return false; + } + PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse other = (PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse) o; + return + Utils.enhancedDeepEquals(this.contentType, other.contentType) && + Utils.enhancedDeepEquals(this.statusCode, other.statusCode) && + Utils.enhancedDeepEquals(this.rawResponse, other.rawResponse) && + Utils.enhancedDeepEquals(this.partnerManagedCompanyDisassociateResponse, other.partnerManagedCompanyDisassociateResponse); + } + + @Override + public int hashCode() { + return Utils.enhancedHash( + contentType, statusCode, rawResponse, + partnerManagedCompanyDisassociateResponse); + } + + @Override + public String toString() { + return Utils.toString(PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse.class, + "contentType", contentType, + "statusCode", statusCode, + "rawResponse", rawResponse, + "partnerManagedCompanyDisassociateResponse", partnerManagedCompanyDisassociateResponse); + } + + @SuppressWarnings("UnusedReturnValue") + public final static class Builder { + + private String contentType; + + private Integer statusCode; + + private HttpResponse rawResponse; + + private Optional partnerManagedCompanyDisassociateResponse = Optional.empty(); + + private Builder() { + // force use of static builder() method + } + + + /** + * HTTP response content type for this operation + */ + public Builder contentType(String contentType) { + Utils.checkNotNull(contentType, "contentType"); + this.contentType = contentType; + return this; + } + + + /** + * HTTP response status code for this operation + */ + public Builder statusCode(int statusCode) { + Utils.checkNotNull(statusCode, "statusCode"); + this.statusCode = statusCode; + return this; + } + + + /** + * Raw HTTP response; suitable for custom response parsing + */ + public Builder rawResponse(HttpResponse rawResponse) { + Utils.checkNotNull(rawResponse, "rawResponse"); + this.rawResponse = rawResponse; + return this; + } + + + /** + * OK + */ + public Builder partnerManagedCompanyDisassociateResponse(PartnerManagedCompanyDisassociateResponse partnerManagedCompanyDisassociateResponse) { + Utils.checkNotNull(partnerManagedCompanyDisassociateResponse, "partnerManagedCompanyDisassociateResponse"); + this.partnerManagedCompanyDisassociateResponse = Optional.ofNullable(partnerManagedCompanyDisassociateResponse); + return this; + } + + /** + * OK + */ + public Builder partnerManagedCompanyDisassociateResponse(Optional partnerManagedCompanyDisassociateResponse) { + Utils.checkNotNull(partnerManagedCompanyDisassociateResponse, "partnerManagedCompanyDisassociateResponse"); + this.partnerManagedCompanyDisassociateResponse = partnerManagedCompanyDisassociateResponse; + return this; + } + + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse build() { + + return new PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse( + contentType, statusCode, rawResponse, + partnerManagedCompanyDisassociateResponse); + } + + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder.java index 29df58702..c8135c515 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder.java @@ -20,11 +20,11 @@ public class PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder { - private String companyUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String companyUuid; private PartnerManagedCompanyMigrateRequest partnerManagedCompanyMigrateRequest; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder { public PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder xGustoAPIVersion(PutV1PartnerManagedCompaniesCompanyUuidMigrateHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder xGustoAPIVer return this; } + public PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + public PutV1PartnerManagedCompaniesCompanyUuidMigrateRequestBuilder partnerManagedCompanyMigrateRequest(PartnerManagedCompanyMigrateRequest partnerManagedCompanyMigrateRequest) { Utils.checkNotNull(partnerManagedCompanyMigrateRequest, "partnerManagedCompanyMigrateRequest"); this.partnerManagedCompanyMigrateRequest = partnerManagedCompanyMigrateRequest; @@ -63,8 +63,8 @@ private PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest request = new PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest(companyUuid, - xGustoAPIVersion, + PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest request = new PutV1PartnerManagedCompaniesCompanyUuidMigrateRequest(xGustoAPIVersion, + companyUuid, partnerManagedCompanyMigrateRequest); return request; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilder.java index 0490c0782..dd989c103 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilder.java @@ -20,11 +20,11 @@ public class PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilder { - private String companyUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String companyUuid; private PartnerManagedCompanyRetrieveTermsOfServiceRequest partnerManagedCompanyRetrieveTermsOfServiceRequest; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilder public PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilder companyUuid(String companyUuid) { - Utils.checkNotNull(companyUuid, "companyUuid"); - this.companyUuid = companyUuid; - return this; - } public PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilder xGustoAPIVersion(PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilder xGust return this; } + public PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilder companyUuid(String companyUuid) { + Utils.checkNotNull(companyUuid, "companyUuid"); + this.companyUuid = companyUuid; + return this; + } + public PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequestBuilder partnerManagedCompanyRetrieveTermsOfServiceRequest(PartnerManagedCompanyRetrieveTermsOfServiceRequest partnerManagedCompanyRetrieveTermsOfServiceRequest) { Utils.checkNotNull(partnerManagedCompanyRetrieveTermsOfServiceRequest, "partnerManagedCompanyRetrieveTermsOfServiceRequest"); this.partnerManagedCompanyRetrieveTermsOfServiceRequest = partnerManagedCompanyRetrieveTermsOfServiceRequest; @@ -63,8 +63,8 @@ private PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest buildReques xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest request = new PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest(companyUuid, - xGustoAPIVersion, + PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest request = new PutV1PartnerManagedCompaniesCompanyUuidTermsOfServiceRequest(xGustoAPIVersion, + companyUuid, partnerManagedCompanyRetrieveTermsOfServiceRequest); return request; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PutV1VerifyWebhookSubscriptionUuidRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PutV1VerifyWebhookSubscriptionUuidRequestBuilder.java index 28fddaab8..ee98e70e1 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PutV1VerifyWebhookSubscriptionUuidRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PutV1VerifyWebhookSubscriptionUuidRequestBuilder.java @@ -22,11 +22,11 @@ public class PutV1VerifyWebhookSubscriptionUuidRequestBuilder { private PutV1VerifyWebhookSubscriptionUuidSecurity security; - private String webhookSubscriptionUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String webhookSubscriptionUuid; private PutV1VerifyWebhookSubscriptionUuidRequestBody requestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -40,12 +40,6 @@ public PutV1VerifyWebhookSubscriptionUuidRequestBuilder security(PutV1VerifyWebh this.security = security; return this; } - - public PutV1VerifyWebhookSubscriptionUuidRequestBuilder webhookSubscriptionUuid(String webhookSubscriptionUuid) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; - return this; - } public PutV1VerifyWebhookSubscriptionUuidRequestBuilder xGustoAPIVersion(PutV1VerifyWebhookSubscriptionUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -59,6 +53,12 @@ public PutV1VerifyWebhookSubscriptionUuidRequestBuilder xGustoAPIVersion(Optiona return this; } + public PutV1VerifyWebhookSubscriptionUuidRequestBuilder webhookSubscriptionUuid(String webhookSubscriptionUuid) { + Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); + this.webhookSubscriptionUuid = webhookSubscriptionUuid; + return this; + } + public PutV1VerifyWebhookSubscriptionUuidRequestBuilder requestBody(PutV1VerifyWebhookSubscriptionUuidRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); this.requestBody = requestBody; @@ -71,8 +71,8 @@ private PutV1VerifyWebhookSubscriptionUuidRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PutV1VerifyWebhookSubscriptionUuidRequest request = new PutV1VerifyWebhookSubscriptionUuidRequest(webhookSubscriptionUuid, - xGustoAPIVersion, + PutV1VerifyWebhookSubscriptionUuidRequest request = new PutV1VerifyWebhookSubscriptionUuidRequest(xGustoAPIVersion, + webhookSubscriptionUuid, requestBody); return request; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PutV1WebhookSubscriptionUuidRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PutV1WebhookSubscriptionUuidRequestBuilder.java index d5c4cd92a..3a077bd30 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PutV1WebhookSubscriptionUuidRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PutV1WebhookSubscriptionUuidRequestBuilder.java @@ -22,11 +22,11 @@ public class PutV1WebhookSubscriptionUuidRequestBuilder { private PutV1WebhookSubscriptionUuidSecurity security; - private String webhookSubscriptionUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String webhookSubscriptionUuid; private PutV1WebhookSubscriptionUuidRequestBody requestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -40,12 +40,6 @@ public PutV1WebhookSubscriptionUuidRequestBuilder security(PutV1WebhookSubscript this.security = security; return this; } - - public PutV1WebhookSubscriptionUuidRequestBuilder webhookSubscriptionUuid(String webhookSubscriptionUuid) { - Utils.checkNotNull(webhookSubscriptionUuid, "webhookSubscriptionUuid"); - this.webhookSubscriptionUuid = webhookSubscriptionUuid; - return this; - } public PutV1WebhookSubscriptionUuidRequestBuilder xGustoAPIVersion(PutV1WebhookSubscriptionUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -59,6 +53,12 @@ public PutV1WebhookSubscriptionUuidRequestBuilder xGustoAPIVersion(Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String workAddressUuid; private PutV1WorkAddressesWorkAddressUuidRequestBody requestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PutV1WorkAddressesWorkAddressUuidRequestBuilder { public PutV1WorkAddressesWorkAddressUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutV1WorkAddressesWorkAddressUuidRequestBuilder workAddressUuid(String workAddressUuid) { - Utils.checkNotNull(workAddressUuid, "workAddressUuid"); - this.workAddressUuid = workAddressUuid; - return this; - } public PutV1WorkAddressesWorkAddressUuidRequestBuilder xGustoAPIVersion(PutV1WorkAddressesWorkAddressUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public PutV1WorkAddressesWorkAddressUuidRequestBuilder xGustoAPIVersion(Optional return this; } + public PutV1WorkAddressesWorkAddressUuidRequestBuilder workAddressUuid(String workAddressUuid) { + Utils.checkNotNull(workAddressUuid, "workAddressUuid"); + this.workAddressUuid = workAddressUuid; + return this; + } + public PutV1WorkAddressesWorkAddressUuidRequestBuilder requestBody(PutV1WorkAddressesWorkAddressUuidRequestBody requestBody) { Utils.checkNotNull(requestBody, "requestBody"); this.requestBody = requestBody; @@ -63,8 +63,8 @@ private PutV1WorkAddressesWorkAddressUuidRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PutV1WorkAddressesWorkAddressUuidRequest request = new PutV1WorkAddressesWorkAddressUuidRequest(workAddressUuid, - xGustoAPIVersion, + PutV1WorkAddressesWorkAddressUuidRequest request = new PutV1WorkAddressesWorkAddressUuidRequest(xGustoAPIVersion, + workAddressUuid, requestBody); return request; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PutWireInRequestsWireInRequestUuidRequestBuilder.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PutWireInRequestsWireInRequestUuidRequestBuilder.java index d7255a12f..28ce603a2 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PutWireInRequestsWireInRequestUuidRequestBuilder.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/models/operations/async/PutWireInRequestsWireInRequestUuidRequestBuilder.java @@ -20,11 +20,11 @@ public class PutWireInRequestsWireInRequestUuidRequestBuilder { - private String wireInRequestUuid; private Optional xGustoAPIVersion = Utils.readDefaultOrConstValue( "xGustoAPIVersion", "\"2026-06-15\"", new TypeReference>() {}); + private String wireInRequestUuid; private WireInRequestUpdateRequestBody wireInRequestUpdateRequestBody; private final SDKConfiguration sdkConfiguration; private final Headers _headers = new Headers(); @@ -32,12 +32,6 @@ public class PutWireInRequestsWireInRequestUuidRequestBuilder { public PutWireInRequestsWireInRequestUuidRequestBuilder(SDKConfiguration sdkConfiguration) { this.sdkConfiguration = sdkConfiguration; } - - public PutWireInRequestsWireInRequestUuidRequestBuilder wireInRequestUuid(String wireInRequestUuid) { - Utils.checkNotNull(wireInRequestUuid, "wireInRequestUuid"); - this.wireInRequestUuid = wireInRequestUuid; - return this; - } public PutWireInRequestsWireInRequestUuidRequestBuilder xGustoAPIVersion(PutWireInRequestsWireInRequestUuidHeaderXGustoAPIVersion xGustoAPIVersion) { Utils.checkNotNull(xGustoAPIVersion, "xGustoAPIVersion"); @@ -51,6 +45,12 @@ public PutWireInRequestsWireInRequestUuidRequestBuilder xGustoAPIVersion(Optiona return this; } + public PutWireInRequestsWireInRequestUuidRequestBuilder wireInRequestUuid(String wireInRequestUuid) { + Utils.checkNotNull(wireInRequestUuid, "wireInRequestUuid"); + this.wireInRequestUuid = wireInRequestUuid; + return this; + } + public PutWireInRequestsWireInRequestUuidRequestBuilder wireInRequestUpdateRequestBody(WireInRequestUpdateRequestBody wireInRequestUpdateRequestBody) { Utils.checkNotNull(wireInRequestUpdateRequestBody, "wireInRequestUpdateRequestBody"); this.wireInRequestUpdateRequestBody = wireInRequestUpdateRequestBody; @@ -63,8 +63,8 @@ private PutWireInRequestsWireInRequestUuidRequest buildRequest() { xGustoAPIVersion = _SINGLETON_VALUE_XGustoAPIVersion.value(); } - PutWireInRequestsWireInRequestUuidRequest request = new PutWireInRequestsWireInRequestUuidRequest(wireInRequestUuid, - xGustoAPIVersion, + PutWireInRequestsWireInRequestUuidRequest request = new PutWireInRequestsWireInRequestUuidRequest(xGustoAPIVersion, + wireInRequestUuid, wireInRequestUpdateRequestBody); return request; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitations.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitations.java new file mode 100644 index 000000000..1dfb2b9f8 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/DeleteV1ContractorsContractorUuidMemberPortalInvitations.java @@ -0,0 +1,268 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.operations; + +import static com.gusto.embedded_api_v_2026_06_15.operations.Operations.RequestOperation; +import static com.gusto.embedded_api_v_2026_06_15.utils.Exceptions.unchecked; +import static com.gusto.embedded_api_v_2026_06_15.operations.Operations.AsyncRequestOperation; + +import com.gusto.embedded_api_v_2026_06_15.SDKConfiguration; +import com.gusto.embedded_api_v_2026_06_15.SecuritySource; +import com.gusto.embedded_api_v_2026_06_15.models.errors.APIException; +import com.gusto.embedded_api_v_2026_06_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2026_06_15.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api_v_2026_06_15.models.operations.DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest; +import com.gusto.embedded_api_v_2026_06_15.models.operations.DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse; +import com.gusto.embedded_api_v_2026_06_15.utils.Blob; +import com.gusto.embedded_api_v_2026_06_15.utils.HTTPClient; +import com.gusto.embedded_api_v_2026_06_15.utils.HTTPRequest; +import com.gusto.embedded_api_v_2026_06_15.utils.Headers; +import com.gusto.embedded_api_v_2026_06_15.utils.Hook.AfterErrorContextImpl; +import com.gusto.embedded_api_v_2026_06_15.utils.Hook.AfterSuccessContextImpl; +import com.gusto.embedded_api_v_2026_06_15.utils.Hook.BeforeRequestContextImpl; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.io.InputStream; +import java.lang.Exception; +import java.lang.String; +import java.lang.Throwable; +import java.net.http.HttpRequest; +import java.net.http.HttpResponse; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; +import java.util.function.Function; + + +public class DeleteV1ContractorsContractorUuidMemberPortalInvitations { + + static abstract class Base { + final SDKConfiguration sdkConfiguration; + final String baseUrl; + final SecuritySource securitySource; + final HTTPClient client; + final Headers _headers; + + public Base(SDKConfiguration sdkConfiguration, Headers _headers) { + this.sdkConfiguration = sdkConfiguration; + this._headers =_headers; + this.baseUrl = this.sdkConfiguration.serverUrl(); + this.securitySource = this.sdkConfiguration.securitySource(); + this.client = this.sdkConfiguration.client(); + } + + Optional securitySource() { + return Optional.ofNullable(this.securitySource); + } + + BeforeRequestContextImpl createBeforeRequestContext() { + return new BeforeRequestContextImpl( + this.sdkConfiguration, + this.baseUrl, + "delete-v1-contractors-contractor_uuid-member_portal_invitations", + java.util.Optional.empty(), + securitySource()); + } + + AfterSuccessContextImpl createAfterSuccessContext() { + return new AfterSuccessContextImpl( + this.sdkConfiguration, + this.baseUrl, + "delete-v1-contractors-contractor_uuid-member_portal_invitations", + java.util.Optional.empty(), + securitySource()); + } + + AfterErrorContextImpl createAfterErrorContext() { + return new AfterErrorContextImpl( + this.sdkConfiguration, + this.baseUrl, + "delete-v1-contractors-contractor_uuid-member_portal_invitations", + java.util.Optional.empty(), + securitySource()); + } + HttpRequest buildRequest(T request, Class klass) throws Exception { + String url = Utils.generateURL( + klass, + this.baseUrl, + "/v1/contractors/{contractor_uuid}/member_portal_invitations", + request, null); + HTTPRequest req = new HTTPRequest(url, "DELETE"); + req.addHeader("Accept", "application/json") + .addHeader("user-agent", SDKConfiguration.USER_AGENT); + _headers.forEach((k, list) -> list.forEach(v -> req.addHeader(k, v))); + req.addHeaders(Utils.getHeadersFromMetadata(request, null)); + Utils.configureSecurity(req, this.sdkConfiguration.securitySource().getSecurity(), "companyAccessAuth"); + + return req.build(); + } + } + + public static class Sync extends Base + implements RequestOperation { + public Sync(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private HttpRequest onBuildRequest(DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest request) throws Exception { + HttpRequest req = buildRequest(request, DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest.class); + return sdkConfiguration.hooks().beforeRequest(createBeforeRequestContext(), req); + } + + private HttpResponse onError(HttpResponse response, Exception error) throws Exception { + return sdkConfiguration.hooks().afterError( + createAfterErrorContext(), + Optional.ofNullable(response), + Optional.ofNullable(error)); + } + + private HttpResponse onSuccess(HttpResponse response) throws Exception { + return sdkConfiguration.hooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public HttpResponse doRequest(DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest request) { + HttpRequest r = unchecked(() -> onBuildRequest(request)).get(); + HttpResponse httpRes; + try { + httpRes = client.send(r); + if (Utils.statusCodeMatches(httpRes.statusCode(), "4XX", "5XX")) { + httpRes = onError(httpRes, null); + } else { + httpRes = onSuccess(httpRes); + } + } catch (Exception e) { + httpRes = unchecked(() -> onError(null, e)).get(); + } + + return httpRes; + } + + + @Override + public DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse handleResponse(HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse.Builder resBuilder = + DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "204")) { + // no content + return res; + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw NotFoundErrorObject.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw UnprocessableEntityError.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + throw APIException.from("API error occurred", response); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + throw APIException.from("API error occurred", response); + } + throw APIException.from("Unexpected status code received: " + response.statusCode(), response); + } + } + public static class Async extends Base + implements AsyncRequestOperation { + + public Async(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private CompletableFuture onBuildRequest(DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest request) throws Exception { + HttpRequest req = buildRequest(request, DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest.class); + return this.sdkConfiguration.asyncHooks().beforeRequest(createBeforeRequestContext(), req); + } + + private CompletableFuture> onError(HttpResponse response, Throwable error) { + return this.sdkConfiguration.asyncHooks().afterError(createAfterErrorContext(), response, error); + } + + private CompletableFuture> onSuccess(HttpResponse response) { + return this.sdkConfiguration.asyncHooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public CompletableFuture> doRequest(DeleteV1ContractorsContractorUuidMemberPortalInvitationsRequest request) { + return unchecked(() -> onBuildRequest(request)).get().thenCompose(client::sendAsync) + .handle((resp, err) -> { + if (err != null) { + return onError(null, err); + } + if (Utils.statusCodeMatches(resp.statusCode(), "4XX", "5XX")) { + return onError(resp, null); + } + return CompletableFuture.completedFuture(resp); + }) + .thenCompose(Function.identity()) + .thenCompose(this::onSuccess); + } + + @Override + public CompletableFuture handleResponse( + HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + com.gusto.embedded_api_v_2026_06_15.models.operations.async.DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse.Builder resBuilder = + com.gusto.embedded_api_v_2026_06_15.models.operations.async.DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + com.gusto.embedded_api_v_2026_06_15.models.operations.async.DeleteV1ContractorsContractorUuidMemberPortalInvitationsResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "204")) { + // no content + return CompletableFuture.completedFuture(res); + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return NotFoundErrorObject.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return UnprocessableEntityError.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + return Utils.createAsyncApiError(response, "Unexpected status code received: " + response.statusCode()); + } + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/DeleteV1ContractorsContractorUuidRehire.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/DeleteV1ContractorsContractorUuidRehire.java index 502255eb4..d02d89ed6 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/DeleteV1ContractorsContractorUuidRehire.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/DeleteV1ContractorsContractorUuidRehire.java @@ -10,6 +10,7 @@ import com.gusto.embedded_api_v_2026_06_15.SDKConfiguration; import com.gusto.embedded_api_v_2026_06_15.SecuritySource; import com.gusto.embedded_api_v_2026_06_15.models.errors.APIException; +import com.gusto.embedded_api_v_2026_06_15.models.errors.UnprocessableEntityError; import com.gusto.embedded_api_v_2026_06_15.models.operations.DeleteV1ContractorsContractorUuidRehireRequest; import com.gusto.embedded_api_v_2026_06_15.models.operations.DeleteV1ContractorsContractorUuidRehireResponse; import com.gusto.embedded_api_v_2026_06_15.utils.Blob; @@ -85,7 +86,7 @@ HttpRequest buildRequest(T request, Class klass) throws Exception { "/v1/contractors/{contractor_uuid}/rehire", request, null); HTTPRequest req = new HTTPRequest(url, "DELETE"); - req.addHeader("Accept", "*/*") + req.addHeader("Accept", "application/json") .addHeader("user-agent", SDKConfiguration.USER_AGENT); _headers.forEach((k, list) -> list.forEach(v -> req.addHeader(k, v))); req.addHeaders(Utils.getHeadersFromMetadata(request, null)); @@ -155,7 +156,14 @@ public DeleteV1ContractorsContractorUuidRehireResponse handleResponse(HttpRespon // no content return res; } - if (Utils.statusCodeMatches(response.statusCode(), "422", "4XX")) { + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw UnprocessableEntityError.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { // no content throw APIException.from("API error occurred", response); } @@ -222,7 +230,15 @@ public CompletableFutureHttpRequest buildRequest(T request, Class klass) throws Exception { "/v1/contractors/{contractor_uuid}/termination", request, null); HTTPRequest req = new HTTPRequest(url, "DELETE"); - req.addHeader("Accept", "*/*") + req.addHeader("Accept", "application/json") .addHeader("user-agent", SDKConfiguration.USER_AGENT); _headers.forEach((k, list) -> list.forEach(v -> req.addHeader(k, v))); req.addHeaders(Utils.getHeadersFromMetadata(request, null)); @@ -155,7 +156,14 @@ public DeleteV1ContractorsContractorUuidTerminationResponse handleResponse(HttpR // no content return res; } - if (Utils.statusCodeMatches(response.statusCode(), "422", "4XX")) { + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw UnprocessableEntityError.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { // no content throw APIException.from("API error occurred", response); } @@ -222,7 +230,15 @@ public CompletableFuture securitySource() { + return Optional.ofNullable(this.securitySource); + } + + BeforeRequestContextImpl createBeforeRequestContext() { + return new BeforeRequestContextImpl( + this.sdkConfiguration, + this.baseUrl, + "delete-v1-employees-employee_id-member_portal_invitations", + java.util.Optional.empty(), + securitySource()); + } + + AfterSuccessContextImpl createAfterSuccessContext() { + return new AfterSuccessContextImpl( + this.sdkConfiguration, + this.baseUrl, + "delete-v1-employees-employee_id-member_portal_invitations", + java.util.Optional.empty(), + securitySource()); + } + + AfterErrorContextImpl createAfterErrorContext() { + return new AfterErrorContextImpl( + this.sdkConfiguration, + this.baseUrl, + "delete-v1-employees-employee_id-member_portal_invitations", + java.util.Optional.empty(), + securitySource()); + } + HttpRequest buildRequest(T request, Class klass) throws Exception { + String url = Utils.generateURL( + klass, + this.baseUrl, + "/v1/employees/{employee_id}/member_portal_invitations", + request, null); + HTTPRequest req = new HTTPRequest(url, "DELETE"); + req.addHeader("Accept", "application/json") + .addHeader("user-agent", SDKConfiguration.USER_AGENT); + _headers.forEach((k, list) -> list.forEach(v -> req.addHeader(k, v))); + req.addHeaders(Utils.getHeadersFromMetadata(request, null)); + Utils.configureSecurity(req, this.sdkConfiguration.securitySource().getSecurity(), "companyAccessAuth"); + + return req.build(); + } + } + + public static class Sync extends Base + implements RequestOperation { + public Sync(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private HttpRequest onBuildRequest(DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest request) throws Exception { + HttpRequest req = buildRequest(request, DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest.class); + return sdkConfiguration.hooks().beforeRequest(createBeforeRequestContext(), req); + } + + private HttpResponse onError(HttpResponse response, Exception error) throws Exception { + return sdkConfiguration.hooks().afterError( + createAfterErrorContext(), + Optional.ofNullable(response), + Optional.ofNullable(error)); + } + + private HttpResponse onSuccess(HttpResponse response) throws Exception { + return sdkConfiguration.hooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public HttpResponse doRequest(DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest request) { + HttpRequest r = unchecked(() -> onBuildRequest(request)).get(); + HttpResponse httpRes; + try { + httpRes = client.send(r); + if (Utils.statusCodeMatches(httpRes.statusCode(), "4XX", "5XX")) { + httpRes = onError(httpRes, null); + } else { + httpRes = onSuccess(httpRes); + } + } catch (Exception e) { + httpRes = unchecked(() -> onError(null, e)).get(); + } + + return httpRes; + } + + + @Override + public DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse handleResponse(HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse.Builder resBuilder = + DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "204")) { + // no content + return res; + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw NotFoundErrorObject.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw UnprocessableEntityError.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + throw APIException.from("API error occurred", response); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + throw APIException.from("API error occurred", response); + } + throw APIException.from("Unexpected status code received: " + response.statusCode(), response); + } + } + public static class Async extends Base + implements AsyncRequestOperation { + + public Async(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private CompletableFuture onBuildRequest(DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest request) throws Exception { + HttpRequest req = buildRequest(request, DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest.class); + return this.sdkConfiguration.asyncHooks().beforeRequest(createBeforeRequestContext(), req); + } + + private CompletableFuture> onError(HttpResponse response, Throwable error) { + return this.sdkConfiguration.asyncHooks().afterError(createAfterErrorContext(), response, error); + } + + private CompletableFuture> onSuccess(HttpResponse response) { + return this.sdkConfiguration.asyncHooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public CompletableFuture> doRequest(DeleteV1EmployeesEmployeeIdMemberPortalInvitationsRequest request) { + return unchecked(() -> onBuildRequest(request)).get().thenCompose(client::sendAsync) + .handle((resp, err) -> { + if (err != null) { + return onError(null, err); + } + if (Utils.statusCodeMatches(resp.statusCode(), "4XX", "5XX")) { + return onError(resp, null); + } + return CompletableFuture.completedFuture(resp); + }) + .thenCompose(Function.identity()) + .thenCompose(this::onSuccess); + } + + @Override + public CompletableFuture handleResponse( + HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + com.gusto.embedded_api_v_2026_06_15.models.operations.async.DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse.Builder resBuilder = + com.gusto.embedded_api_v_2026_06_15.models.operations.async.DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + com.gusto.embedded_api_v_2026_06_15.models.operations.async.DeleteV1EmployeesEmployeeIdMemberPortalInvitationsResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "204")) { + // no content + return CompletableFuture.completedFuture(res); + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return NotFoundErrorObject.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return UnprocessableEntityError.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + return Utils.createAsyncApiError(response, "Unexpected status code received: " + response.statusCode()); + } + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/GetReverseWireTransactions.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/GetReverseWireTransactions.java new file mode 100644 index 000000000..5941997b4 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/GetReverseWireTransactions.java @@ -0,0 +1,267 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.operations; + +import static com.gusto.embedded_api_v_2026_06_15.operations.Operations.RequestOperation; +import static com.gusto.embedded_api_v_2026_06_15.utils.Exceptions.unchecked; +import static com.gusto.embedded_api_v_2026_06_15.operations.Operations.AsyncRequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2026_06_15.SDKConfiguration; +import com.gusto.embedded_api_v_2026_06_15.SecuritySource; +import com.gusto.embedded_api_v_2026_06_15.models.components.ReverseWireTransaction; +import com.gusto.embedded_api_v_2026_06_15.models.errors.APIException; +import com.gusto.embedded_api_v_2026_06_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetReverseWireTransactionsRequest; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetReverseWireTransactionsResponse; +import com.gusto.embedded_api_v_2026_06_15.utils.Blob; +import com.gusto.embedded_api_v_2026_06_15.utils.HTTPClient; +import com.gusto.embedded_api_v_2026_06_15.utils.HTTPRequest; +import com.gusto.embedded_api_v_2026_06_15.utils.Headers; +import com.gusto.embedded_api_v_2026_06_15.utils.Hook.AfterErrorContextImpl; +import com.gusto.embedded_api_v_2026_06_15.utils.Hook.AfterSuccessContextImpl; +import com.gusto.embedded_api_v_2026_06_15.utils.Hook.BeforeRequestContextImpl; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.io.InputStream; +import java.lang.Exception; +import java.lang.String; +import java.lang.Throwable; +import java.net.http.HttpRequest; +import java.net.http.HttpResponse; +import java.util.List; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; +import java.util.function.Function; + + +public class GetReverseWireTransactions { + + static abstract class Base { + final SDKConfiguration sdkConfiguration; + final String baseUrl; + final SecuritySource securitySource; + final HTTPClient client; + final Headers _headers; + + public Base(SDKConfiguration sdkConfiguration, Headers _headers) { + this.sdkConfiguration = sdkConfiguration; + this._headers =_headers; + this.baseUrl = this.sdkConfiguration.serverUrl(); + this.securitySource = this.sdkConfiguration.securitySource(); + this.client = this.sdkConfiguration.client(); + } + + Optional securitySource() { + return Optional.ofNullable(this.securitySource); + } + + BeforeRequestContextImpl createBeforeRequestContext() { + return new BeforeRequestContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-reverse-wire-transactions", + java.util.Optional.empty(), + securitySource()); + } + + AfterSuccessContextImpl createAfterSuccessContext() { + return new AfterSuccessContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-reverse-wire-transactions", + java.util.Optional.empty(), + securitySource()); + } + + AfterErrorContextImpl createAfterErrorContext() { + return new AfterErrorContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-reverse-wire-transactions", + java.util.Optional.empty(), + securitySource()); + } + HttpRequest buildRequest(T request, Class klass) throws Exception { + String url = Utils.generateURL( + klass, + this.baseUrl, + "/v1/companies/{company_uuid}/reverse_wire_transactions", + request, null); + HTTPRequest req = new HTTPRequest(url, "GET"); + req.addHeader("Accept", "application/json") + .addHeader("user-agent", SDKConfiguration.USER_AGENT); + _headers.forEach((k, list) -> list.forEach(v -> req.addHeader(k, v))); + + req.addQueryParams(Utils.getQueryParams( + klass, + request, + null)); + req.addHeaders(Utils.getHeadersFromMetadata(request, null)); + Utils.configureSecurity(req, this.sdkConfiguration.securitySource().getSecurity(), "companyAccessAuth"); + + return req.build(); + } + } + + public static class Sync extends Base + implements RequestOperation { + public Sync(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private HttpRequest onBuildRequest(GetReverseWireTransactionsRequest request) throws Exception { + HttpRequest req = buildRequest(request, GetReverseWireTransactionsRequest.class); + return sdkConfiguration.hooks().beforeRequest(createBeforeRequestContext(), req); + } + + private HttpResponse onError(HttpResponse response, Exception error) throws Exception { + return sdkConfiguration.hooks().afterError( + createAfterErrorContext(), + Optional.ofNullable(response), + Optional.ofNullable(error)); + } + + private HttpResponse onSuccess(HttpResponse response) throws Exception { + return sdkConfiguration.hooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public HttpResponse doRequest(GetReverseWireTransactionsRequest request) { + HttpRequest r = unchecked(() -> onBuildRequest(request)).get(); + HttpResponse httpRes; + try { + httpRes = client.send(r); + if (Utils.statusCodeMatches(httpRes.statusCode(), "4XX", "5XX")) { + httpRes = onError(httpRes, null); + } else { + httpRes = onSuccess(httpRes); + } + } catch (Exception e) { + httpRes = unchecked(() -> onError(null, e)).get(); + } + + return httpRes; + } + + + @Override + public GetReverseWireTransactionsResponse handleResponse(HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + GetReverseWireTransactionsResponse.Builder resBuilder = + GetReverseWireTransactionsResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + GetReverseWireTransactionsResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "200")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return res.withReverseWireTransactionList(Utils.unmarshal(response, new TypeReference>() {})); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw NotFoundErrorObject.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + throw APIException.from("API error occurred", response); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + throw APIException.from("API error occurred", response); + } + throw APIException.from("Unexpected status code received: " + response.statusCode(), response); + } + } + public static class Async extends Base + implements AsyncRequestOperation { + + public Async(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private CompletableFuture onBuildRequest(GetReverseWireTransactionsRequest request) throws Exception { + HttpRequest req = buildRequest(request, GetReverseWireTransactionsRequest.class); + return this.sdkConfiguration.asyncHooks().beforeRequest(createBeforeRequestContext(), req); + } + + private CompletableFuture> onError(HttpResponse response, Throwable error) { + return this.sdkConfiguration.asyncHooks().afterError(createAfterErrorContext(), response, error); + } + + private CompletableFuture> onSuccess(HttpResponse response) { + return this.sdkConfiguration.asyncHooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public CompletableFuture> doRequest(GetReverseWireTransactionsRequest request) { + return unchecked(() -> onBuildRequest(request)).get().thenCompose(client::sendAsync) + .handle((resp, err) -> { + if (err != null) { + return onError(null, err); + } + if (Utils.statusCodeMatches(resp.statusCode(), "4XX", "5XX")) { + return onError(resp, null); + } + return CompletableFuture.completedFuture(resp); + }) + .thenCompose(Function.identity()) + .thenCompose(this::onSuccess); + } + + @Override + public CompletableFuture handleResponse( + HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + com.gusto.embedded_api_v_2026_06_15.models.operations.async.GetReverseWireTransactionsResponse.Builder resBuilder = + com.gusto.embedded_api_v_2026_06_15.models.operations.async.GetReverseWireTransactionsResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + com.gusto.embedded_api_v_2026_06_15.models.operations.async.GetReverseWireTransactionsResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "200")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return Utils.unmarshalAsync(response, new TypeReference>() {}) + .thenApply(res::withReverseWireTransactionList); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return NotFoundErrorObject.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + return Utils.createAsyncApiError(response, "Unexpected status code received: " + response.statusCode()); + } + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/GetTaxPayment.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/GetTaxPayment.java new file mode 100644 index 000000000..db9eee832 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/GetTaxPayment.java @@ -0,0 +1,261 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.operations; + +import static com.gusto.embedded_api_v_2026_06_15.operations.Operations.RequestOperation; +import static com.gusto.embedded_api_v_2026_06_15.utils.Exceptions.unchecked; +import static com.gusto.embedded_api_v_2026_06_15.operations.Operations.AsyncRequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2026_06_15.SDKConfiguration; +import com.gusto.embedded_api_v_2026_06_15.SecuritySource; +import com.gusto.embedded_api_v_2026_06_15.models.components.TaxPayment; +import com.gusto.embedded_api_v_2026_06_15.models.errors.APIException; +import com.gusto.embedded_api_v_2026_06_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetTaxPaymentRequest; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetTaxPaymentResponse; +import com.gusto.embedded_api_v_2026_06_15.utils.Blob; +import com.gusto.embedded_api_v_2026_06_15.utils.HTTPClient; +import com.gusto.embedded_api_v_2026_06_15.utils.HTTPRequest; +import com.gusto.embedded_api_v_2026_06_15.utils.Headers; +import com.gusto.embedded_api_v_2026_06_15.utils.Hook.AfterErrorContextImpl; +import com.gusto.embedded_api_v_2026_06_15.utils.Hook.AfterSuccessContextImpl; +import com.gusto.embedded_api_v_2026_06_15.utils.Hook.BeforeRequestContextImpl; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.io.InputStream; +import java.lang.Exception; +import java.lang.String; +import java.lang.Throwable; +import java.net.http.HttpRequest; +import java.net.http.HttpResponse; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; +import java.util.function.Function; + + +public class GetTaxPayment { + + static abstract class Base { + final SDKConfiguration sdkConfiguration; + final String baseUrl; + final SecuritySource securitySource; + final HTTPClient client; + final Headers _headers; + + public Base(SDKConfiguration sdkConfiguration, Headers _headers) { + this.sdkConfiguration = sdkConfiguration; + this._headers =_headers; + this.baseUrl = this.sdkConfiguration.serverUrl(); + this.securitySource = this.sdkConfiguration.securitySource(); + this.client = this.sdkConfiguration.client(); + } + + Optional securitySource() { + return Optional.ofNullable(this.securitySource); + } + + BeforeRequestContextImpl createBeforeRequestContext() { + return new BeforeRequestContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-tax-payment", + java.util.Optional.empty(), + securitySource()); + } + + AfterSuccessContextImpl createAfterSuccessContext() { + return new AfterSuccessContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-tax-payment", + java.util.Optional.empty(), + securitySource()); + } + + AfterErrorContextImpl createAfterErrorContext() { + return new AfterErrorContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-tax-payment", + java.util.Optional.empty(), + securitySource()); + } + HttpRequest buildRequest(T request, Class klass) throws Exception { + String url = Utils.generateURL( + klass, + this.baseUrl, + "/v1/companies/{company_uuid}/tax_payments/{uuid}", + request, null); + HTTPRequest req = new HTTPRequest(url, "GET"); + req.addHeader("Accept", "application/json") + .addHeader("user-agent", SDKConfiguration.USER_AGENT); + _headers.forEach((k, list) -> list.forEach(v -> req.addHeader(k, v))); + req.addHeaders(Utils.getHeadersFromMetadata(request, null)); + Utils.configureSecurity(req, this.sdkConfiguration.securitySource().getSecurity(), "companyAccessAuth"); + + return req.build(); + } + } + + public static class Sync extends Base + implements RequestOperation { + public Sync(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private HttpRequest onBuildRequest(GetTaxPaymentRequest request) throws Exception { + HttpRequest req = buildRequest(request, GetTaxPaymentRequest.class); + return sdkConfiguration.hooks().beforeRequest(createBeforeRequestContext(), req); + } + + private HttpResponse onError(HttpResponse response, Exception error) throws Exception { + return sdkConfiguration.hooks().afterError( + createAfterErrorContext(), + Optional.ofNullable(response), + Optional.ofNullable(error)); + } + + private HttpResponse onSuccess(HttpResponse response) throws Exception { + return sdkConfiguration.hooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public HttpResponse doRequest(GetTaxPaymentRequest request) { + HttpRequest r = unchecked(() -> onBuildRequest(request)).get(); + HttpResponse httpRes; + try { + httpRes = client.send(r); + if (Utils.statusCodeMatches(httpRes.statusCode(), "4XX", "5XX")) { + httpRes = onError(httpRes, null); + } else { + httpRes = onSuccess(httpRes); + } + } catch (Exception e) { + httpRes = unchecked(() -> onError(null, e)).get(); + } + + return httpRes; + } + + + @Override + public GetTaxPaymentResponse handleResponse(HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + GetTaxPaymentResponse.Builder resBuilder = + GetTaxPaymentResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + GetTaxPaymentResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "200")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return res.withTaxPayment(Utils.unmarshal(response, new TypeReference() {})); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw NotFoundErrorObject.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + throw APIException.from("API error occurred", response); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + throw APIException.from("API error occurred", response); + } + throw APIException.from("Unexpected status code received: " + response.statusCode(), response); + } + } + public static class Async extends Base + implements AsyncRequestOperation { + + public Async(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private CompletableFuture onBuildRequest(GetTaxPaymentRequest request) throws Exception { + HttpRequest req = buildRequest(request, GetTaxPaymentRequest.class); + return this.sdkConfiguration.asyncHooks().beforeRequest(createBeforeRequestContext(), req); + } + + private CompletableFuture> onError(HttpResponse response, Throwable error) { + return this.sdkConfiguration.asyncHooks().afterError(createAfterErrorContext(), response, error); + } + + private CompletableFuture> onSuccess(HttpResponse response) { + return this.sdkConfiguration.asyncHooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public CompletableFuture> doRequest(GetTaxPaymentRequest request) { + return unchecked(() -> onBuildRequest(request)).get().thenCompose(client::sendAsync) + .handle((resp, err) -> { + if (err != null) { + return onError(null, err); + } + if (Utils.statusCodeMatches(resp.statusCode(), "4XX", "5XX")) { + return onError(resp, null); + } + return CompletableFuture.completedFuture(resp); + }) + .thenCompose(Function.identity()) + .thenCompose(this::onSuccess); + } + + @Override + public CompletableFuture handleResponse( + HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + com.gusto.embedded_api_v_2026_06_15.models.operations.async.GetTaxPaymentResponse.Builder resBuilder = + com.gusto.embedded_api_v_2026_06_15.models.operations.async.GetTaxPaymentResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + com.gusto.embedded_api_v_2026_06_15.models.operations.async.GetTaxPaymentResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "200")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return Utils.unmarshalAsync(response, new TypeReference() {}) + .thenApply(res::withTaxPayment); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return NotFoundErrorObject.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + return Utils.createAsyncApiError(response, "Unexpected status code received: " + response.statusCode()); + } + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/GetTaxPayments.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/GetTaxPayments.java new file mode 100644 index 000000000..e02a9ae07 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/GetTaxPayments.java @@ -0,0 +1,283 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.operations; + +import static com.gusto.embedded_api_v_2026_06_15.operations.Operations.RequestOperation; +import static com.gusto.embedded_api_v_2026_06_15.utils.Exceptions.unchecked; +import static com.gusto.embedded_api_v_2026_06_15.operations.Operations.AsyncRequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2026_06_15.SDKConfiguration; +import com.gusto.embedded_api_v_2026_06_15.SecuritySource; +import com.gusto.embedded_api_v_2026_06_15.models.components.TaxPayment; +import com.gusto.embedded_api_v_2026_06_15.models.errors.APIException; +import com.gusto.embedded_api_v_2026_06_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2026_06_15.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetTaxPaymentsRequest; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetTaxPaymentsResponse; +import com.gusto.embedded_api_v_2026_06_15.utils.Blob; +import com.gusto.embedded_api_v_2026_06_15.utils.HTTPClient; +import com.gusto.embedded_api_v_2026_06_15.utils.HTTPRequest; +import com.gusto.embedded_api_v_2026_06_15.utils.Headers; +import com.gusto.embedded_api_v_2026_06_15.utils.Hook.AfterErrorContextImpl; +import com.gusto.embedded_api_v_2026_06_15.utils.Hook.AfterSuccessContextImpl; +import com.gusto.embedded_api_v_2026_06_15.utils.Hook.BeforeRequestContextImpl; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.io.InputStream; +import java.lang.Exception; +import java.lang.String; +import java.lang.Throwable; +import java.net.http.HttpRequest; +import java.net.http.HttpResponse; +import java.util.List; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; +import java.util.function.Function; + + +public class GetTaxPayments { + + static abstract class Base { + final SDKConfiguration sdkConfiguration; + final String baseUrl; + final SecuritySource securitySource; + final HTTPClient client; + final Headers _headers; + + public Base(SDKConfiguration sdkConfiguration, Headers _headers) { + this.sdkConfiguration = sdkConfiguration; + this._headers =_headers; + this.baseUrl = this.sdkConfiguration.serverUrl(); + this.securitySource = this.sdkConfiguration.securitySource(); + this.client = this.sdkConfiguration.client(); + } + + Optional securitySource() { + return Optional.ofNullable(this.securitySource); + } + + BeforeRequestContextImpl createBeforeRequestContext() { + return new BeforeRequestContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-tax-payments", + java.util.Optional.empty(), + securitySource()); + } + + AfterSuccessContextImpl createAfterSuccessContext() { + return new AfterSuccessContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-tax-payments", + java.util.Optional.empty(), + securitySource()); + } + + AfterErrorContextImpl createAfterErrorContext() { + return new AfterErrorContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-tax-payments", + java.util.Optional.empty(), + securitySource()); + } + HttpRequest buildRequest(T request, Class klass) throws Exception { + String url = Utils.generateURL( + klass, + this.baseUrl, + "/v1/companies/{company_uuid}/tax_payments", + request, null); + HTTPRequest req = new HTTPRequest(url, "GET"); + req.addHeader("Accept", "application/json") + .addHeader("user-agent", SDKConfiguration.USER_AGENT); + _headers.forEach((k, list) -> list.forEach(v -> req.addHeader(k, v))); + + req.addQueryParams(Utils.getQueryParams( + klass, + request, + null)); + req.addHeaders(Utils.getHeadersFromMetadata(request, null)); + Utils.configureSecurity(req, this.sdkConfiguration.securitySource().getSecurity(), "companyAccessAuth"); + + return req.build(); + } + } + + public static class Sync extends Base + implements RequestOperation { + public Sync(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private HttpRequest onBuildRequest(GetTaxPaymentsRequest request) throws Exception { + HttpRequest req = buildRequest(request, GetTaxPaymentsRequest.class); + return sdkConfiguration.hooks().beforeRequest(createBeforeRequestContext(), req); + } + + private HttpResponse onError(HttpResponse response, Exception error) throws Exception { + return sdkConfiguration.hooks().afterError( + createAfterErrorContext(), + Optional.ofNullable(response), + Optional.ofNullable(error)); + } + + private HttpResponse onSuccess(HttpResponse response) throws Exception { + return sdkConfiguration.hooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public HttpResponse doRequest(GetTaxPaymentsRequest request) { + HttpRequest r = unchecked(() -> onBuildRequest(request)).get(); + HttpResponse httpRes; + try { + httpRes = client.send(r); + if (Utils.statusCodeMatches(httpRes.statusCode(), "4XX", "5XX")) { + httpRes = onError(httpRes, null); + } else { + httpRes = onSuccess(httpRes); + } + } catch (Exception e) { + httpRes = unchecked(() -> onError(null, e)).get(); + } + + return httpRes; + } + + + @Override + public GetTaxPaymentsResponse handleResponse(HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + GetTaxPaymentsResponse.Builder resBuilder = + GetTaxPaymentsResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + GetTaxPaymentsResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "200")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return res.withTaxPaymentList(Utils.unmarshal(response, new TypeReference>() {})); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw NotFoundErrorObject.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw UnprocessableEntityError.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + throw APIException.from("API error occurred", response); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + throw APIException.from("API error occurred", response); + } + throw APIException.from("Unexpected status code received: " + response.statusCode(), response); + } + } + public static class Async extends Base + implements AsyncRequestOperation { + + public Async(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private CompletableFuture onBuildRequest(GetTaxPaymentsRequest request) throws Exception { + HttpRequest req = buildRequest(request, GetTaxPaymentsRequest.class); + return this.sdkConfiguration.asyncHooks().beforeRequest(createBeforeRequestContext(), req); + } + + private CompletableFuture> onError(HttpResponse response, Throwable error) { + return this.sdkConfiguration.asyncHooks().afterError(createAfterErrorContext(), response, error); + } + + private CompletableFuture> onSuccess(HttpResponse response) { + return this.sdkConfiguration.asyncHooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public CompletableFuture> doRequest(GetTaxPaymentsRequest request) { + return unchecked(() -> onBuildRequest(request)).get().thenCompose(client::sendAsync) + .handle((resp, err) -> { + if (err != null) { + return onError(null, err); + } + if (Utils.statusCodeMatches(resp.statusCode(), "4XX", "5XX")) { + return onError(resp, null); + } + return CompletableFuture.completedFuture(resp); + }) + .thenCompose(Function.identity()) + .thenCompose(this::onSuccess); + } + + @Override + public CompletableFuture handleResponse( + HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + com.gusto.embedded_api_v_2026_06_15.models.operations.async.GetTaxPaymentsResponse.Builder resBuilder = + com.gusto.embedded_api_v_2026_06_15.models.operations.async.GetTaxPaymentsResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + com.gusto.embedded_api_v_2026_06_15.models.operations.async.GetTaxPaymentsResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "200")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return Utils.unmarshalAsync(response, new TypeReference>() {}) + .thenApply(res::withTaxPaymentList); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return NotFoundErrorObject.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return UnprocessableEntityError.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + return Utils.createAsyncApiError(response, "Unexpected status code received: " + response.statusCode()); + } + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/GetV1Benefits.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/GetV1Benefits.java index 5984e190b..741627cab 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/GetV1Benefits.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/GetV1Benefits.java @@ -154,7 +154,7 @@ public GetV1BenefitsResponse handleResponse(HttpResponse response) if (Utils.statusCodeMatches(response.statusCode(), "200")) { if (Utils.contentTypeMatches(contentType, "application/json")) { - return res.withSupportedBenefits(Utils.unmarshal(response, new TypeReference>() {})); + return res.withSupportedBenefitList(Utils.unmarshal(response, new TypeReference>() {})); } else { throw APIException.from("Unexpected content-type received: " + contentType, response); } @@ -225,7 +225,7 @@ public CompletableFuture>() {}) - .thenApply(res::withSupportedBenefits); + .thenApply(res::withSupportedBenefitList); } else { return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/GetV1BulkReportsRequestUuid.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/GetV1BulkReportsRequestUuid.java new file mode 100644 index 000000000..7a0f54c5d --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/GetV1BulkReportsRequestUuid.java @@ -0,0 +1,275 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.operations; + +import static com.gusto.embedded_api_v_2026_06_15.operations.Operations.RequestOperation; +import static com.gusto.embedded_api_v_2026_06_15.utils.Exceptions.unchecked; +import static com.gusto.embedded_api_v_2026_06_15.operations.Operations.AsyncRequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2026_06_15.SDKConfiguration; +import com.gusto.embedded_api_v_2026_06_15.SecuritySource; +import com.gusto.embedded_api_v_2026_06_15.models.components.BulkReport; +import com.gusto.embedded_api_v_2026_06_15.models.errors.APIException; +import com.gusto.embedded_api_v_2026_06_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1BulkReportsRequestUuidRequest; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1BulkReportsRequestUuidResponse; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1BulkReportsRequestUuidSecurity; +import com.gusto.embedded_api_v_2026_06_15.utils.Blob; +import com.gusto.embedded_api_v_2026_06_15.utils.HTTPClient; +import com.gusto.embedded_api_v_2026_06_15.utils.HTTPRequest; +import com.gusto.embedded_api_v_2026_06_15.utils.Headers; +import com.gusto.embedded_api_v_2026_06_15.utils.Hook.AfterErrorContextImpl; +import com.gusto.embedded_api_v_2026_06_15.utils.Hook.AfterSuccessContextImpl; +import com.gusto.embedded_api_v_2026_06_15.utils.Hook.BeforeRequestContextImpl; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.io.InputStream; +import java.lang.Exception; +import java.lang.String; +import java.lang.Throwable; +import java.net.http.HttpRequest; +import java.net.http.HttpResponse; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; +import java.util.function.Function; + + +public class GetV1BulkReportsRequestUuid { + + static abstract class Base { + final SDKConfiguration sdkConfiguration; + final String baseUrl; + final GetV1BulkReportsRequestUuidSecurity security; + final SecuritySource securitySource; + final HTTPClient client; + final Headers _headers; + + public Base( + SDKConfiguration sdkConfiguration, GetV1BulkReportsRequestUuidSecurity security, + Headers _headers) { + this.sdkConfiguration = sdkConfiguration; + this._headers =_headers; + this.baseUrl = this.sdkConfiguration.serverUrl(); + this.security = security; + // hooks will be passed method level security only + this.securitySource = SecuritySource.of(security); + this.client = this.sdkConfiguration.client(); + } + + Optional securitySource() { + return Optional.ofNullable(this.securitySource); + } + + BeforeRequestContextImpl createBeforeRequestContext() { + return new BeforeRequestContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-v1-bulk_reports-request_uuid", + java.util.Optional.empty(), + securitySource()); + } + + AfterSuccessContextImpl createAfterSuccessContext() { + return new AfterSuccessContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-v1-bulk_reports-request_uuid", + java.util.Optional.empty(), + securitySource()); + } + + AfterErrorContextImpl createAfterErrorContext() { + return new AfterErrorContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-v1-bulk_reports-request_uuid", + java.util.Optional.empty(), + securitySource()); + } + HttpRequest buildRequest(T request, Class klass) throws Exception { + String url = Utils.generateURL( + klass, + this.baseUrl, + "/v1/bulk_reports/{request_uuid}", + request, null); + HTTPRequest req = new HTTPRequest(url, "GET"); + req.addHeader("Accept", "application/json") + .addHeader("user-agent", SDKConfiguration.USER_AGENT); + _headers.forEach((k, list) -> list.forEach(v -> req.addHeader(k, v))); + req.addHeaders(Utils.getHeadersFromMetadata(request, null)); + Utils.configureSecurity(req, security); + + return req.build(); + } + } + + public static class Sync extends Base + implements RequestOperation { + public Sync( + SDKConfiguration sdkConfiguration, GetV1BulkReportsRequestUuidSecurity security, + Headers _headers) { + super( + sdkConfiguration, security, + _headers); + } + + private HttpRequest onBuildRequest(GetV1BulkReportsRequestUuidRequest request) throws Exception { + HttpRequest req = buildRequest(request, GetV1BulkReportsRequestUuidRequest.class); + return sdkConfiguration.hooks().beforeRequest(createBeforeRequestContext(), req); + } + + private HttpResponse onError(HttpResponse response, Exception error) throws Exception { + return sdkConfiguration.hooks().afterError( + createAfterErrorContext(), + Optional.ofNullable(response), + Optional.ofNullable(error)); + } + + private HttpResponse onSuccess(HttpResponse response) throws Exception { + return sdkConfiguration.hooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public HttpResponse doRequest(GetV1BulkReportsRequestUuidRequest request) { + HttpRequest r = unchecked(() -> onBuildRequest(request)).get(); + HttpResponse httpRes; + try { + httpRes = client.send(r); + if (Utils.statusCodeMatches(httpRes.statusCode(), "4XX", "5XX")) { + httpRes = onError(httpRes, null); + } else { + httpRes = onSuccess(httpRes); + } + } catch (Exception e) { + httpRes = unchecked(() -> onError(null, e)).get(); + } + + return httpRes; + } + + + @Override + public GetV1BulkReportsRequestUuidResponse handleResponse(HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + GetV1BulkReportsRequestUuidResponse.Builder resBuilder = + GetV1BulkReportsRequestUuidResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + GetV1BulkReportsRequestUuidResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "200")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return res.withBulkReport(Utils.unmarshal(response, new TypeReference() {})); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw NotFoundErrorObject.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + throw APIException.from("API error occurred", response); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + throw APIException.from("API error occurred", response); + } + throw APIException.from("Unexpected status code received: " + response.statusCode(), response); + } + } + public static class Async extends Base + implements AsyncRequestOperation { + + public Async( + SDKConfiguration sdkConfiguration, GetV1BulkReportsRequestUuidSecurity security, + Headers _headers) { + super( + sdkConfiguration, security, + _headers); + } + + private CompletableFuture onBuildRequest(GetV1BulkReportsRequestUuidRequest request) throws Exception { + HttpRequest req = buildRequest(request, GetV1BulkReportsRequestUuidRequest.class); + return this.sdkConfiguration.asyncHooks().beforeRequest(createBeforeRequestContext(), req); + } + + private CompletableFuture> onError(HttpResponse response, Throwable error) { + return this.sdkConfiguration.asyncHooks().afterError(createAfterErrorContext(), response, error); + } + + private CompletableFuture> onSuccess(HttpResponse response) { + return this.sdkConfiguration.asyncHooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public CompletableFuture> doRequest(GetV1BulkReportsRequestUuidRequest request) { + return unchecked(() -> onBuildRequest(request)).get().thenCompose(client::sendAsync) + .handle((resp, err) -> { + if (err != null) { + return onError(null, err); + } + if (Utils.statusCodeMatches(resp.statusCode(), "4XX", "5XX")) { + return onError(resp, null); + } + return CompletableFuture.completedFuture(resp); + }) + .thenCompose(Function.identity()) + .thenCompose(this::onSuccess); + } + + @Override + public CompletableFuture handleResponse( + HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + com.gusto.embedded_api_v_2026_06_15.models.operations.async.GetV1BulkReportsRequestUuidResponse.Builder resBuilder = + com.gusto.embedded_api_v_2026_06_15.models.operations.async.GetV1BulkReportsRequestUuidResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + com.gusto.embedded_api_v_2026_06_15.models.operations.async.GetV1BulkReportsRequestUuidResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "200")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return Utils.unmarshalAsync(response, new TypeReference() {}) + .thenApply(res::withBulkReport); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return NotFoundErrorObject.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + return Utils.createAsyncApiError(response, "Unexpected status code received: " + response.statusCode()); + } + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/GetV1ContractorsContractorUuidMemberPortalInvitations.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/GetV1ContractorsContractorUuidMemberPortalInvitations.java new file mode 100644 index 000000000..cd1795b06 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/GetV1ContractorsContractorUuidMemberPortalInvitations.java @@ -0,0 +1,261 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.operations; + +import static com.gusto.embedded_api_v_2026_06_15.operations.Operations.RequestOperation; +import static com.gusto.embedded_api_v_2026_06_15.utils.Exceptions.unchecked; +import static com.gusto.embedded_api_v_2026_06_15.operations.Operations.AsyncRequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2026_06_15.SDKConfiguration; +import com.gusto.embedded_api_v_2026_06_15.SecuritySource; +import com.gusto.embedded_api_v_2026_06_15.models.components.MemberPortalInvitation; +import com.gusto.embedded_api_v_2026_06_15.models.errors.APIException; +import com.gusto.embedded_api_v_2026_06_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1ContractorsContractorUuidMemberPortalInvitationsRequest; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1ContractorsContractorUuidMemberPortalInvitationsResponse; +import com.gusto.embedded_api_v_2026_06_15.utils.Blob; +import com.gusto.embedded_api_v_2026_06_15.utils.HTTPClient; +import com.gusto.embedded_api_v_2026_06_15.utils.HTTPRequest; +import com.gusto.embedded_api_v_2026_06_15.utils.Headers; +import com.gusto.embedded_api_v_2026_06_15.utils.Hook.AfterErrorContextImpl; +import com.gusto.embedded_api_v_2026_06_15.utils.Hook.AfterSuccessContextImpl; +import com.gusto.embedded_api_v_2026_06_15.utils.Hook.BeforeRequestContextImpl; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.io.InputStream; +import java.lang.Exception; +import java.lang.String; +import java.lang.Throwable; +import java.net.http.HttpRequest; +import java.net.http.HttpResponse; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; +import java.util.function.Function; + + +public class GetV1ContractorsContractorUuidMemberPortalInvitations { + + static abstract class Base { + final SDKConfiguration sdkConfiguration; + final String baseUrl; + final SecuritySource securitySource; + final HTTPClient client; + final Headers _headers; + + public Base(SDKConfiguration sdkConfiguration, Headers _headers) { + this.sdkConfiguration = sdkConfiguration; + this._headers =_headers; + this.baseUrl = this.sdkConfiguration.serverUrl(); + this.securitySource = this.sdkConfiguration.securitySource(); + this.client = this.sdkConfiguration.client(); + } + + Optional securitySource() { + return Optional.ofNullable(this.securitySource); + } + + BeforeRequestContextImpl createBeforeRequestContext() { + return new BeforeRequestContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-v1-contractors-contractor_uuid-member_portal_invitations", + java.util.Optional.empty(), + securitySource()); + } + + AfterSuccessContextImpl createAfterSuccessContext() { + return new AfterSuccessContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-v1-contractors-contractor_uuid-member_portal_invitations", + java.util.Optional.empty(), + securitySource()); + } + + AfterErrorContextImpl createAfterErrorContext() { + return new AfterErrorContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-v1-contractors-contractor_uuid-member_portal_invitations", + java.util.Optional.empty(), + securitySource()); + } + HttpRequest buildRequest(T request, Class klass) throws Exception { + String url = Utils.generateURL( + klass, + this.baseUrl, + "/v1/contractors/{contractor_uuid}/member_portal_invitations", + request, null); + HTTPRequest req = new HTTPRequest(url, "GET"); + req.addHeader("Accept", "application/json") + .addHeader("user-agent", SDKConfiguration.USER_AGENT); + _headers.forEach((k, list) -> list.forEach(v -> req.addHeader(k, v))); + req.addHeaders(Utils.getHeadersFromMetadata(request, null)); + Utils.configureSecurity(req, this.sdkConfiguration.securitySource().getSecurity(), "companyAccessAuth"); + + return req.build(); + } + } + + public static class Sync extends Base + implements RequestOperation { + public Sync(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private HttpRequest onBuildRequest(GetV1ContractorsContractorUuidMemberPortalInvitationsRequest request) throws Exception { + HttpRequest req = buildRequest(request, GetV1ContractorsContractorUuidMemberPortalInvitationsRequest.class); + return sdkConfiguration.hooks().beforeRequest(createBeforeRequestContext(), req); + } + + private HttpResponse onError(HttpResponse response, Exception error) throws Exception { + return sdkConfiguration.hooks().afterError( + createAfterErrorContext(), + Optional.ofNullable(response), + Optional.ofNullable(error)); + } + + private HttpResponse onSuccess(HttpResponse response) throws Exception { + return sdkConfiguration.hooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public HttpResponse doRequest(GetV1ContractorsContractorUuidMemberPortalInvitationsRequest request) { + HttpRequest r = unchecked(() -> onBuildRequest(request)).get(); + HttpResponse httpRes; + try { + httpRes = client.send(r); + if (Utils.statusCodeMatches(httpRes.statusCode(), "4XX", "5XX")) { + httpRes = onError(httpRes, null); + } else { + httpRes = onSuccess(httpRes); + } + } catch (Exception e) { + httpRes = unchecked(() -> onError(null, e)).get(); + } + + return httpRes; + } + + + @Override + public GetV1ContractorsContractorUuidMemberPortalInvitationsResponse handleResponse(HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + GetV1ContractorsContractorUuidMemberPortalInvitationsResponse.Builder resBuilder = + GetV1ContractorsContractorUuidMemberPortalInvitationsResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + GetV1ContractorsContractorUuidMemberPortalInvitationsResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "200")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return res.withMemberPortalInvitation(Utils.unmarshal(response, new TypeReference() {})); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw NotFoundErrorObject.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + throw APIException.from("API error occurred", response); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + throw APIException.from("API error occurred", response); + } + throw APIException.from("Unexpected status code received: " + response.statusCode(), response); + } + } + public static class Async extends Base + implements AsyncRequestOperation { + + public Async(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private CompletableFuture onBuildRequest(GetV1ContractorsContractorUuidMemberPortalInvitationsRequest request) throws Exception { + HttpRequest req = buildRequest(request, GetV1ContractorsContractorUuidMemberPortalInvitationsRequest.class); + return this.sdkConfiguration.asyncHooks().beforeRequest(createBeforeRequestContext(), req); + } + + private CompletableFuture> onError(HttpResponse response, Throwable error) { + return this.sdkConfiguration.asyncHooks().afterError(createAfterErrorContext(), response, error); + } + + private CompletableFuture> onSuccess(HttpResponse response) { + return this.sdkConfiguration.asyncHooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public CompletableFuture> doRequest(GetV1ContractorsContractorUuidMemberPortalInvitationsRequest request) { + return unchecked(() -> onBuildRequest(request)).get().thenCompose(client::sendAsync) + .handle((resp, err) -> { + if (err != null) { + return onError(null, err); + } + if (Utils.statusCodeMatches(resp.statusCode(), "4XX", "5XX")) { + return onError(resp, null); + } + return CompletableFuture.completedFuture(resp); + }) + .thenCompose(Function.identity()) + .thenCompose(this::onSuccess); + } + + @Override + public CompletableFuture handleResponse( + HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + com.gusto.embedded_api_v_2026_06_15.models.operations.async.GetV1ContractorsContractorUuidMemberPortalInvitationsResponse.Builder resBuilder = + com.gusto.embedded_api_v_2026_06_15.models.operations.async.GetV1ContractorsContractorUuidMemberPortalInvitationsResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + com.gusto.embedded_api_v_2026_06_15.models.operations.async.GetV1ContractorsContractorUuidMemberPortalInvitationsResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "200")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return Utils.unmarshalAsync(response, new TypeReference() {}) + .thenApply(res::withMemberPortalInvitation); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return NotFoundErrorObject.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + return Utils.createAsyncApiError(response, "Unexpected status code received: " + response.statusCode()); + } + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/GetV1ContractorsContractorUuidPayments.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/GetV1ContractorsContractorUuidPayments.java new file mode 100644 index 000000000..c268f1e0b --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/GetV1ContractorsContractorUuidPayments.java @@ -0,0 +1,283 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.operations; + +import static com.gusto.embedded_api_v_2026_06_15.operations.Operations.RequestOperation; +import static com.gusto.embedded_api_v_2026_06_15.utils.Exceptions.unchecked; +import static com.gusto.embedded_api_v_2026_06_15.operations.Operations.AsyncRequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2026_06_15.SDKConfiguration; +import com.gusto.embedded_api_v_2026_06_15.SecuritySource; +import com.gusto.embedded_api_v_2026_06_15.models.components.ContractorPaymentListing; +import com.gusto.embedded_api_v_2026_06_15.models.errors.APIException; +import com.gusto.embedded_api_v_2026_06_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2026_06_15.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1ContractorsContractorUuidPaymentsRequest; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1ContractorsContractorUuidPaymentsResponse; +import com.gusto.embedded_api_v_2026_06_15.utils.Blob; +import com.gusto.embedded_api_v_2026_06_15.utils.HTTPClient; +import com.gusto.embedded_api_v_2026_06_15.utils.HTTPRequest; +import com.gusto.embedded_api_v_2026_06_15.utils.Headers; +import com.gusto.embedded_api_v_2026_06_15.utils.Hook.AfterErrorContextImpl; +import com.gusto.embedded_api_v_2026_06_15.utils.Hook.AfterSuccessContextImpl; +import com.gusto.embedded_api_v_2026_06_15.utils.Hook.BeforeRequestContextImpl; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.io.InputStream; +import java.lang.Exception; +import java.lang.String; +import java.lang.Throwable; +import java.net.http.HttpRequest; +import java.net.http.HttpResponse; +import java.util.List; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; +import java.util.function.Function; + + +public class GetV1ContractorsContractorUuidPayments { + + static abstract class Base { + final SDKConfiguration sdkConfiguration; + final String baseUrl; + final SecuritySource securitySource; + final HTTPClient client; + final Headers _headers; + + public Base(SDKConfiguration sdkConfiguration, Headers _headers) { + this.sdkConfiguration = sdkConfiguration; + this._headers =_headers; + this.baseUrl = this.sdkConfiguration.serverUrl(); + this.securitySource = this.sdkConfiguration.securitySource(); + this.client = this.sdkConfiguration.client(); + } + + Optional securitySource() { + return Optional.ofNullable(this.securitySource); + } + + BeforeRequestContextImpl createBeforeRequestContext() { + return new BeforeRequestContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-v1-contractors-contractor_uuid-payments", + java.util.Optional.empty(), + securitySource()); + } + + AfterSuccessContextImpl createAfterSuccessContext() { + return new AfterSuccessContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-v1-contractors-contractor_uuid-payments", + java.util.Optional.empty(), + securitySource()); + } + + AfterErrorContextImpl createAfterErrorContext() { + return new AfterErrorContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-v1-contractors-contractor_uuid-payments", + java.util.Optional.empty(), + securitySource()); + } + HttpRequest buildRequest(T request, Class klass) throws Exception { + String url = Utils.generateURL( + klass, + this.baseUrl, + "/v1/contractors/{contractor_uuid}/payments", + request, null); + HTTPRequest req = new HTTPRequest(url, "GET"); + req.addHeader("Accept", "application/json") + .addHeader("user-agent", SDKConfiguration.USER_AGENT); + _headers.forEach((k, list) -> list.forEach(v -> req.addHeader(k, v))); + + req.addQueryParams(Utils.getQueryParams( + klass, + request, + null)); + req.addHeaders(Utils.getHeadersFromMetadata(request, null)); + Utils.configureSecurity(req, this.sdkConfiguration.securitySource().getSecurity(), "companyAccessAuth"); + + return req.build(); + } + } + + public static class Sync extends Base + implements RequestOperation { + public Sync(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private HttpRequest onBuildRequest(GetV1ContractorsContractorUuidPaymentsRequest request) throws Exception { + HttpRequest req = buildRequest(request, GetV1ContractorsContractorUuidPaymentsRequest.class); + return sdkConfiguration.hooks().beforeRequest(createBeforeRequestContext(), req); + } + + private HttpResponse onError(HttpResponse response, Exception error) throws Exception { + return sdkConfiguration.hooks().afterError( + createAfterErrorContext(), + Optional.ofNullable(response), + Optional.ofNullable(error)); + } + + private HttpResponse onSuccess(HttpResponse response) throws Exception { + return sdkConfiguration.hooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public HttpResponse doRequest(GetV1ContractorsContractorUuidPaymentsRequest request) { + HttpRequest r = unchecked(() -> onBuildRequest(request)).get(); + HttpResponse httpRes; + try { + httpRes = client.send(r); + if (Utils.statusCodeMatches(httpRes.statusCode(), "4XX", "5XX")) { + httpRes = onError(httpRes, null); + } else { + httpRes = onSuccess(httpRes); + } + } catch (Exception e) { + httpRes = unchecked(() -> onError(null, e)).get(); + } + + return httpRes; + } + + + @Override + public GetV1ContractorsContractorUuidPaymentsResponse handleResponse(HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + GetV1ContractorsContractorUuidPaymentsResponse.Builder resBuilder = + GetV1ContractorsContractorUuidPaymentsResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + GetV1ContractorsContractorUuidPaymentsResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "200")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return res.withContractorPaymentListings(Utils.unmarshal(response, new TypeReference>() {})); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw NotFoundErrorObject.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw UnprocessableEntityError.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + throw APIException.from("API error occurred", response); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + throw APIException.from("API error occurred", response); + } + throw APIException.from("Unexpected status code received: " + response.statusCode(), response); + } + } + public static class Async extends Base + implements AsyncRequestOperation { + + public Async(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private CompletableFuture onBuildRequest(GetV1ContractorsContractorUuidPaymentsRequest request) throws Exception { + HttpRequest req = buildRequest(request, GetV1ContractorsContractorUuidPaymentsRequest.class); + return this.sdkConfiguration.asyncHooks().beforeRequest(createBeforeRequestContext(), req); + } + + private CompletableFuture> onError(HttpResponse response, Throwable error) { + return this.sdkConfiguration.asyncHooks().afterError(createAfterErrorContext(), response, error); + } + + private CompletableFuture> onSuccess(HttpResponse response) { + return this.sdkConfiguration.asyncHooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public CompletableFuture> doRequest(GetV1ContractorsContractorUuidPaymentsRequest request) { + return unchecked(() -> onBuildRequest(request)).get().thenCompose(client::sendAsync) + .handle((resp, err) -> { + if (err != null) { + return onError(null, err); + } + if (Utils.statusCodeMatches(resp.statusCode(), "4XX", "5XX")) { + return onError(resp, null); + } + return CompletableFuture.completedFuture(resp); + }) + .thenCompose(Function.identity()) + .thenCompose(this::onSuccess); + } + + @Override + public CompletableFuture handleResponse( + HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + com.gusto.embedded_api_v_2026_06_15.models.operations.async.GetV1ContractorsContractorUuidPaymentsResponse.Builder resBuilder = + com.gusto.embedded_api_v_2026_06_15.models.operations.async.GetV1ContractorsContractorUuidPaymentsResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + com.gusto.embedded_api_v_2026_06_15.models.operations.async.GetV1ContractorsContractorUuidPaymentsResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "200")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return Utils.unmarshalAsync(response, new TypeReference>() {}) + .thenApply(res::withContractorPaymentListings); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return NotFoundErrorObject.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return UnprocessableEntityError.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + return Utils.createAsyncApiError(response, "Unexpected status code received: " + response.statusCode()); + } + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/GetV1EmployeesEmployeeIdMemberPortalInvitations.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/GetV1EmployeesEmployeeIdMemberPortalInvitations.java new file mode 100644 index 000000000..9b0bdec1c --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/GetV1EmployeesEmployeeIdMemberPortalInvitations.java @@ -0,0 +1,261 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.operations; + +import static com.gusto.embedded_api_v_2026_06_15.operations.Operations.RequestOperation; +import static com.gusto.embedded_api_v_2026_06_15.utils.Exceptions.unchecked; +import static com.gusto.embedded_api_v_2026_06_15.operations.Operations.AsyncRequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2026_06_15.SDKConfiguration; +import com.gusto.embedded_api_v_2026_06_15.SecuritySource; +import com.gusto.embedded_api_v_2026_06_15.models.components.MemberPortalInvitation; +import com.gusto.embedded_api_v_2026_06_15.models.errors.APIException; +import com.gusto.embedded_api_v_2026_06_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse; +import com.gusto.embedded_api_v_2026_06_15.utils.Blob; +import com.gusto.embedded_api_v_2026_06_15.utils.HTTPClient; +import com.gusto.embedded_api_v_2026_06_15.utils.HTTPRequest; +import com.gusto.embedded_api_v_2026_06_15.utils.Headers; +import com.gusto.embedded_api_v_2026_06_15.utils.Hook.AfterErrorContextImpl; +import com.gusto.embedded_api_v_2026_06_15.utils.Hook.AfterSuccessContextImpl; +import com.gusto.embedded_api_v_2026_06_15.utils.Hook.BeforeRequestContextImpl; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.io.InputStream; +import java.lang.Exception; +import java.lang.String; +import java.lang.Throwable; +import java.net.http.HttpRequest; +import java.net.http.HttpResponse; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; +import java.util.function.Function; + + +public class GetV1EmployeesEmployeeIdMemberPortalInvitations { + + static abstract class Base { + final SDKConfiguration sdkConfiguration; + final String baseUrl; + final SecuritySource securitySource; + final HTTPClient client; + final Headers _headers; + + public Base(SDKConfiguration sdkConfiguration, Headers _headers) { + this.sdkConfiguration = sdkConfiguration; + this._headers =_headers; + this.baseUrl = this.sdkConfiguration.serverUrl(); + this.securitySource = this.sdkConfiguration.securitySource(); + this.client = this.sdkConfiguration.client(); + } + + Optional securitySource() { + return Optional.ofNullable(this.securitySource); + } + + BeforeRequestContextImpl createBeforeRequestContext() { + return new BeforeRequestContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-v1-employees-employee_id-member_portal_invitations", + java.util.Optional.empty(), + securitySource()); + } + + AfterSuccessContextImpl createAfterSuccessContext() { + return new AfterSuccessContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-v1-employees-employee_id-member_portal_invitations", + java.util.Optional.empty(), + securitySource()); + } + + AfterErrorContextImpl createAfterErrorContext() { + return new AfterErrorContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-v1-employees-employee_id-member_portal_invitations", + java.util.Optional.empty(), + securitySource()); + } + HttpRequest buildRequest(T request, Class klass) throws Exception { + String url = Utils.generateURL( + klass, + this.baseUrl, + "/v1/employees/{employee_id}/member_portal_invitations", + request, null); + HTTPRequest req = new HTTPRequest(url, "GET"); + req.addHeader("Accept", "application/json") + .addHeader("user-agent", SDKConfiguration.USER_AGENT); + _headers.forEach((k, list) -> list.forEach(v -> req.addHeader(k, v))); + req.addHeaders(Utils.getHeadersFromMetadata(request, null)); + Utils.configureSecurity(req, this.sdkConfiguration.securitySource().getSecurity(), "companyAccessAuth"); + + return req.build(); + } + } + + public static class Sync extends Base + implements RequestOperation { + public Sync(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private HttpRequest onBuildRequest(GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest request) throws Exception { + HttpRequest req = buildRequest(request, GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest.class); + return sdkConfiguration.hooks().beforeRequest(createBeforeRequestContext(), req); + } + + private HttpResponse onError(HttpResponse response, Exception error) throws Exception { + return sdkConfiguration.hooks().afterError( + createAfterErrorContext(), + Optional.ofNullable(response), + Optional.ofNullable(error)); + } + + private HttpResponse onSuccess(HttpResponse response) throws Exception { + return sdkConfiguration.hooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public HttpResponse doRequest(GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest request) { + HttpRequest r = unchecked(() -> onBuildRequest(request)).get(); + HttpResponse httpRes; + try { + httpRes = client.send(r); + if (Utils.statusCodeMatches(httpRes.statusCode(), "4XX", "5XX")) { + httpRes = onError(httpRes, null); + } else { + httpRes = onSuccess(httpRes); + } + } catch (Exception e) { + httpRes = unchecked(() -> onError(null, e)).get(); + } + + return httpRes; + } + + + @Override + public GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse handleResponse(HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse.Builder resBuilder = + GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "200")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return res.withMemberPortalInvitation(Utils.unmarshal(response, new TypeReference() {})); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw NotFoundErrorObject.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + throw APIException.from("API error occurred", response); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + throw APIException.from("API error occurred", response); + } + throw APIException.from("Unexpected status code received: " + response.statusCode(), response); + } + } + public static class Async extends Base + implements AsyncRequestOperation { + + public Async(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private CompletableFuture onBuildRequest(GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest request) throws Exception { + HttpRequest req = buildRequest(request, GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest.class); + return this.sdkConfiguration.asyncHooks().beforeRequest(createBeforeRequestContext(), req); + } + + private CompletableFuture> onError(HttpResponse response, Throwable error) { + return this.sdkConfiguration.asyncHooks().afterError(createAfterErrorContext(), response, error); + } + + private CompletableFuture> onSuccess(HttpResponse response) { + return this.sdkConfiguration.asyncHooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public CompletableFuture> doRequest(GetV1EmployeesEmployeeIdMemberPortalInvitationsRequest request) { + return unchecked(() -> onBuildRequest(request)).get().thenCompose(client::sendAsync) + .handle((resp, err) -> { + if (err != null) { + return onError(null, err); + } + if (Utils.statusCodeMatches(resp.statusCode(), "4XX", "5XX")) { + return onError(resp, null); + } + return CompletableFuture.completedFuture(resp); + }) + .thenCompose(Function.identity()) + .thenCompose(this::onSuccess); + } + + @Override + public CompletableFuture handleResponse( + HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + com.gusto.embedded_api_v_2026_06_15.models.operations.async.GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse.Builder resBuilder = + com.gusto.embedded_api_v_2026_06_15.models.operations.async.GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + com.gusto.embedded_api_v_2026_06_15.models.operations.async.GetV1EmployeesEmployeeIdMemberPortalInvitationsResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "200")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return Utils.unmarshalAsync(response, new TypeReference() {}) + .thenApply(res::withMemberPortalInvitation); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return NotFoundErrorObject.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + return Utils.createAsyncApiError(response, "Unexpected status code received: " + response.statusCode()); + } + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/GetV1PaymentReceiptsPayrollsPayrollUuid.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/GetV1PaymentReceiptsPayrollsPayrollUuid.java index 3385ff234..0d0d54102 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/GetV1PaymentReceiptsPayrollsPayrollUuid.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/GetV1PaymentReceiptsPayrollsPayrollUuid.java @@ -91,6 +91,11 @@ HttpRequest buildRequest(T request, Class klass) throws Exception { req.addHeader("Accept", "application/json") .addHeader("user-agent", SDKConfiguration.USER_AGENT); _headers.forEach((k, list) -> list.forEach(v -> req.addHeader(k, v))); + + req.addQueryParams(Utils.getQueryParams( + klass, + request, + null)); req.addHeaders(Utils.getHeadersFromMetadata(request, null)); Utils.configureSecurity(req, this.sdkConfiguration.securitySource().getSecurity(), "companyAccessAuth"); diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/GetV1PayrollBatchesPayrollBatchUuid.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/GetV1PayrollBatchesPayrollBatchUuid.java new file mode 100644 index 000000000..80304cbc4 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/GetV1PayrollBatchesPayrollBatchUuid.java @@ -0,0 +1,275 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.operations; + +import static com.gusto.embedded_api_v_2026_06_15.operations.Operations.RequestOperation; +import static com.gusto.embedded_api_v_2026_06_15.utils.Exceptions.unchecked; +import static com.gusto.embedded_api_v_2026_06_15.operations.Operations.AsyncRequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2026_06_15.SDKConfiguration; +import com.gusto.embedded_api_v_2026_06_15.SecuritySource; +import com.gusto.embedded_api_v_2026_06_15.models.components.PayrollBatchResults; +import com.gusto.embedded_api_v_2026_06_15.models.errors.APIException; +import com.gusto.embedded_api_v_2026_06_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1PayrollBatchesPayrollBatchUuidRequest; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1PayrollBatchesPayrollBatchUuidResponse; +import com.gusto.embedded_api_v_2026_06_15.models.operations.GetV1PayrollBatchesPayrollBatchUuidSecurity; +import com.gusto.embedded_api_v_2026_06_15.utils.Blob; +import com.gusto.embedded_api_v_2026_06_15.utils.HTTPClient; +import com.gusto.embedded_api_v_2026_06_15.utils.HTTPRequest; +import com.gusto.embedded_api_v_2026_06_15.utils.Headers; +import com.gusto.embedded_api_v_2026_06_15.utils.Hook.AfterErrorContextImpl; +import com.gusto.embedded_api_v_2026_06_15.utils.Hook.AfterSuccessContextImpl; +import com.gusto.embedded_api_v_2026_06_15.utils.Hook.BeforeRequestContextImpl; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.io.InputStream; +import java.lang.Exception; +import java.lang.String; +import java.lang.Throwable; +import java.net.http.HttpRequest; +import java.net.http.HttpResponse; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; +import java.util.function.Function; + + +public class GetV1PayrollBatchesPayrollBatchUuid { + + static abstract class Base { + final SDKConfiguration sdkConfiguration; + final String baseUrl; + final GetV1PayrollBatchesPayrollBatchUuidSecurity security; + final SecuritySource securitySource; + final HTTPClient client; + final Headers _headers; + + public Base( + SDKConfiguration sdkConfiguration, GetV1PayrollBatchesPayrollBatchUuidSecurity security, + Headers _headers) { + this.sdkConfiguration = sdkConfiguration; + this._headers =_headers; + this.baseUrl = this.sdkConfiguration.serverUrl(); + this.security = security; + // hooks will be passed method level security only + this.securitySource = SecuritySource.of(security); + this.client = this.sdkConfiguration.client(); + } + + Optional securitySource() { + return Optional.ofNullable(this.securitySource); + } + + BeforeRequestContextImpl createBeforeRequestContext() { + return new BeforeRequestContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-v1-payroll_batches-payroll_batch_uuid", + java.util.Optional.empty(), + securitySource()); + } + + AfterSuccessContextImpl createAfterSuccessContext() { + return new AfterSuccessContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-v1-payroll_batches-payroll_batch_uuid", + java.util.Optional.empty(), + securitySource()); + } + + AfterErrorContextImpl createAfterErrorContext() { + return new AfterErrorContextImpl( + this.sdkConfiguration, + this.baseUrl, + "get-v1-payroll_batches-payroll_batch_uuid", + java.util.Optional.empty(), + securitySource()); + } + HttpRequest buildRequest(T request, Class klass) throws Exception { + String url = Utils.generateURL( + klass, + this.baseUrl, + "/v1/payroll_batches/{payroll_batch_uuid}", + request, null); + HTTPRequest req = new HTTPRequest(url, "GET"); + req.addHeader("Accept", "application/json") + .addHeader("user-agent", SDKConfiguration.USER_AGENT); + _headers.forEach((k, list) -> list.forEach(v -> req.addHeader(k, v))); + req.addHeaders(Utils.getHeadersFromMetadata(request, null)); + Utils.configureSecurity(req, security); + + return req.build(); + } + } + + public static class Sync extends Base + implements RequestOperation { + public Sync( + SDKConfiguration sdkConfiguration, GetV1PayrollBatchesPayrollBatchUuidSecurity security, + Headers _headers) { + super( + sdkConfiguration, security, + _headers); + } + + private HttpRequest onBuildRequest(GetV1PayrollBatchesPayrollBatchUuidRequest request) throws Exception { + HttpRequest req = buildRequest(request, GetV1PayrollBatchesPayrollBatchUuidRequest.class); + return sdkConfiguration.hooks().beforeRequest(createBeforeRequestContext(), req); + } + + private HttpResponse onError(HttpResponse response, Exception error) throws Exception { + return sdkConfiguration.hooks().afterError( + createAfterErrorContext(), + Optional.ofNullable(response), + Optional.ofNullable(error)); + } + + private HttpResponse onSuccess(HttpResponse response) throws Exception { + return sdkConfiguration.hooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public HttpResponse doRequest(GetV1PayrollBatchesPayrollBatchUuidRequest request) { + HttpRequest r = unchecked(() -> onBuildRequest(request)).get(); + HttpResponse httpRes; + try { + httpRes = client.send(r); + if (Utils.statusCodeMatches(httpRes.statusCode(), "4XX", "5XX")) { + httpRes = onError(httpRes, null); + } else { + httpRes = onSuccess(httpRes); + } + } catch (Exception e) { + httpRes = unchecked(() -> onError(null, e)).get(); + } + + return httpRes; + } + + + @Override + public GetV1PayrollBatchesPayrollBatchUuidResponse handleResponse(HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + GetV1PayrollBatchesPayrollBatchUuidResponse.Builder resBuilder = + GetV1PayrollBatchesPayrollBatchUuidResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + GetV1PayrollBatchesPayrollBatchUuidResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "200")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return res.withPayrollBatchResults(Utils.unmarshal(response, new TypeReference() {})); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "404", "410")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw NotFoundErrorObject.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + throw APIException.from("API error occurred", response); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + throw APIException.from("API error occurred", response); + } + throw APIException.from("Unexpected status code received: " + response.statusCode(), response); + } + } + public static class Async extends Base + implements AsyncRequestOperation { + + public Async( + SDKConfiguration sdkConfiguration, GetV1PayrollBatchesPayrollBatchUuidSecurity security, + Headers _headers) { + super( + sdkConfiguration, security, + _headers); + } + + private CompletableFuture onBuildRequest(GetV1PayrollBatchesPayrollBatchUuidRequest request) throws Exception { + HttpRequest req = buildRequest(request, GetV1PayrollBatchesPayrollBatchUuidRequest.class); + return this.sdkConfiguration.asyncHooks().beforeRequest(createBeforeRequestContext(), req); + } + + private CompletableFuture> onError(HttpResponse response, Throwable error) { + return this.sdkConfiguration.asyncHooks().afterError(createAfterErrorContext(), response, error); + } + + private CompletableFuture> onSuccess(HttpResponse response) { + return this.sdkConfiguration.asyncHooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public CompletableFuture> doRequest(GetV1PayrollBatchesPayrollBatchUuidRequest request) { + return unchecked(() -> onBuildRequest(request)).get().thenCompose(client::sendAsync) + .handle((resp, err) -> { + if (err != null) { + return onError(null, err); + } + if (Utils.statusCodeMatches(resp.statusCode(), "4XX", "5XX")) { + return onError(resp, null); + } + return CompletableFuture.completedFuture(resp); + }) + .thenCompose(Function.identity()) + .thenCompose(this::onSuccess); + } + + @Override + public CompletableFuture handleResponse( + HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + com.gusto.embedded_api_v_2026_06_15.models.operations.async.GetV1PayrollBatchesPayrollBatchUuidResponse.Builder resBuilder = + com.gusto.embedded_api_v_2026_06_15.models.operations.async.GetV1PayrollBatchesPayrollBatchUuidResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + com.gusto.embedded_api_v_2026_06_15.models.operations.async.GetV1PayrollBatchesPayrollBatchUuidResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "200")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return Utils.unmarshalAsync(response, new TypeReference() {}) + .thenApply(res::withPayrollBatchResults); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "404", "410")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return NotFoundErrorObject.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + return Utils.createAsyncApiError(response, "Unexpected status code received: " + response.statusCode()); + } + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/PostCompaniesPayrollSkipCompanyUuid.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/PostCompaniesPayrollSkipCompanyUuid.java index 1ea7af840..6bc44a0a4 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/PostCompaniesPayrollSkipCompanyUuid.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/PostCompaniesPayrollSkipCompanyUuid.java @@ -11,6 +11,7 @@ import com.gusto.embedded_api_v_2026_06_15.SDKConfiguration; import com.gusto.embedded_api_v_2026_06_15.SecuritySource; import com.gusto.embedded_api_v_2026_06_15.models.errors.APIException; +import com.gusto.embedded_api_v_2026_06_15.models.errors.ConflictErrorObject; import com.gusto.embedded_api_v_2026_06_15.models.errors.NotFoundErrorObject; import com.gusto.embedded_api_v_2026_06_15.models.errors.PayrollBlockersError; import com.gusto.embedded_api_v_2026_06_15.models.operations.PostCompaniesPayrollSkipCompanyUuidRequest; @@ -182,6 +183,13 @@ public PostCompaniesPayrollSkipCompanyUuidResponse handleResponse(HttpResponse securitySource() { + return Optional.ofNullable(this.securitySource); + } + + BeforeRequestContextImpl createBeforeRequestContext() { + return new BeforeRequestContextImpl( + this.sdkConfiguration, + this.baseUrl, + "post-v1-bulk_reports", + java.util.Optional.empty(), + securitySource()); + } + + AfterSuccessContextImpl createAfterSuccessContext() { + return new AfterSuccessContextImpl( + this.sdkConfiguration, + this.baseUrl, + "post-v1-bulk_reports", + java.util.Optional.empty(), + securitySource()); + } + + AfterErrorContextImpl createAfterErrorContext() { + return new AfterErrorContextImpl( + this.sdkConfiguration, + this.baseUrl, + "post-v1-bulk_reports", + java.util.Optional.empty(), + securitySource()); + } + HttpRequest buildRequest(T request, TypeReference typeReference) throws Exception { + String url = Utils.generateURL( + this.baseUrl, + "/v1/bulk_reports"); + HTTPRequest req = new HTTPRequest(url, "POST"); + Object convertedRequest = Utils.convertToShape( + request, + JsonShape.DEFAULT, + typeReference); + SerializedBody serializedRequestBody = Utils.serializeRequestBody( + convertedRequest, + "bulkReportBody", + "json", + false); + if (serializedRequestBody == null) { + throw new IllegalArgumentException("Request body is required"); + } + req.setBody(Optional.ofNullable(serializedRequestBody)); + req.addHeader("Accept", "application/json") + .addHeader("user-agent", SDKConfiguration.USER_AGENT); + _headers.forEach((k, list) -> list.forEach(v -> req.addHeader(k, v))); + req.addHeaders(Utils.getHeadersFromMetadata(request, null)); + Utils.configureSecurity(req, security); + + return req.build(); + } + } + + public static class Sync extends Base + implements RequestOperation { + public Sync( + SDKConfiguration sdkConfiguration, PostV1BulkReportsSecurity security, + Headers _headers) { + super( + sdkConfiguration, security, + _headers); + } + + private HttpRequest onBuildRequest(PostV1BulkReportsRequest request) throws Exception { + HttpRequest req = buildRequest(request, new TypeReference() {}); + return sdkConfiguration.hooks().beforeRequest(createBeforeRequestContext(), req); + } + + private HttpResponse onError(HttpResponse response, Exception error) throws Exception { + return sdkConfiguration.hooks().afterError( + createAfterErrorContext(), + Optional.ofNullable(response), + Optional.ofNullable(error)); + } + + private HttpResponse onSuccess(HttpResponse response) throws Exception { + return sdkConfiguration.hooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public HttpResponse doRequest(PostV1BulkReportsRequest request) { + HttpRequest r = unchecked(() -> onBuildRequest(request)).get(); + HttpResponse httpRes; + try { + httpRes = client.send(r); + if (Utils.statusCodeMatches(httpRes.statusCode(), "4XX", "5XX")) { + httpRes = onError(httpRes, null); + } else { + httpRes = onSuccess(httpRes); + } + } catch (Exception e) { + httpRes = unchecked(() -> onError(null, e)).get(); + } + + return httpRes; + } + + + @Override + public PostV1BulkReportsResponse handleResponse(HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + PostV1BulkReportsResponse.Builder resBuilder = + PostV1BulkReportsResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + PostV1BulkReportsResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "201")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return res.withCreateBulkReport(Utils.unmarshal(response, new TypeReference() {})); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw UnprocessableEntityError.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + throw APIException.from("API error occurred", response); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + throw APIException.from("API error occurred", response); + } + throw APIException.from("Unexpected status code received: " + response.statusCode(), response); + } + } + public static class Async extends Base + implements AsyncRequestOperation { + + public Async( + SDKConfiguration sdkConfiguration, PostV1BulkReportsSecurity security, + Headers _headers) { + super( + sdkConfiguration, security, + _headers); + } + + private CompletableFuture onBuildRequest(PostV1BulkReportsRequest request) throws Exception { + HttpRequest req = buildRequest(request, new TypeReference() {}); + return this.sdkConfiguration.asyncHooks().beforeRequest(createBeforeRequestContext(), req); + } + + private CompletableFuture> onError(HttpResponse response, Throwable error) { + return this.sdkConfiguration.asyncHooks().afterError(createAfterErrorContext(), response, error); + } + + private CompletableFuture> onSuccess(HttpResponse response) { + return this.sdkConfiguration.asyncHooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public CompletableFuture> doRequest(PostV1BulkReportsRequest request) { + return unchecked(() -> onBuildRequest(request)).get().thenCompose(client::sendAsync) + .handle((resp, err) -> { + if (err != null) { + return onError(null, err); + } + if (Utils.statusCodeMatches(resp.statusCode(), "4XX", "5XX")) { + return onError(resp, null); + } + return CompletableFuture.completedFuture(resp); + }) + .thenCompose(Function.identity()) + .thenCompose(this::onSuccess); + } + + @Override + public CompletableFuture handleResponse( + HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + com.gusto.embedded_api_v_2026_06_15.models.operations.async.PostV1BulkReportsResponse.Builder resBuilder = + com.gusto.embedded_api_v_2026_06_15.models.operations.async.PostV1BulkReportsResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + com.gusto.embedded_api_v_2026_06_15.models.operations.async.PostV1BulkReportsResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "201")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return Utils.unmarshalAsync(response, new TypeReference() {}) + .thenApply(res::withCreateBulkReport); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return UnprocessableEntityError.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + return Utils.createAsyncApiError(response, "Unexpected status code received: " + response.statusCode()); + } + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/PostV1ContractorsContractorUuidMemberPortalInvitations.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/PostV1ContractorsContractorUuidMemberPortalInvitations.java new file mode 100644 index 000000000..433b4b842 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/PostV1ContractorsContractorUuidMemberPortalInvitations.java @@ -0,0 +1,268 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.operations; + +import static com.gusto.embedded_api_v_2026_06_15.operations.Operations.RequestOperation; +import static com.gusto.embedded_api_v_2026_06_15.utils.Exceptions.unchecked; +import static com.gusto.embedded_api_v_2026_06_15.operations.Operations.AsyncRequestOperation; + +import com.gusto.embedded_api_v_2026_06_15.SDKConfiguration; +import com.gusto.embedded_api_v_2026_06_15.SecuritySource; +import com.gusto.embedded_api_v_2026_06_15.models.errors.APIException; +import com.gusto.embedded_api_v_2026_06_15.models.errors.NotFoundErrorObject; +import com.gusto.embedded_api_v_2026_06_15.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1ContractorsContractorUuidMemberPortalInvitationsRequest; +import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1ContractorsContractorUuidMemberPortalInvitationsResponse; +import com.gusto.embedded_api_v_2026_06_15.utils.Blob; +import com.gusto.embedded_api_v_2026_06_15.utils.HTTPClient; +import com.gusto.embedded_api_v_2026_06_15.utils.HTTPRequest; +import com.gusto.embedded_api_v_2026_06_15.utils.Headers; +import com.gusto.embedded_api_v_2026_06_15.utils.Hook.AfterErrorContextImpl; +import com.gusto.embedded_api_v_2026_06_15.utils.Hook.AfterSuccessContextImpl; +import com.gusto.embedded_api_v_2026_06_15.utils.Hook.BeforeRequestContextImpl; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.io.InputStream; +import java.lang.Exception; +import java.lang.String; +import java.lang.Throwable; +import java.net.http.HttpRequest; +import java.net.http.HttpResponse; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; +import java.util.function.Function; + + +public class PostV1ContractorsContractorUuidMemberPortalInvitations { + + static abstract class Base { + final SDKConfiguration sdkConfiguration; + final String baseUrl; + final SecuritySource securitySource; + final HTTPClient client; + final Headers _headers; + + public Base(SDKConfiguration sdkConfiguration, Headers _headers) { + this.sdkConfiguration = sdkConfiguration; + this._headers =_headers; + this.baseUrl = this.sdkConfiguration.serverUrl(); + this.securitySource = this.sdkConfiguration.securitySource(); + this.client = this.sdkConfiguration.client(); + } + + Optional securitySource() { + return Optional.ofNullable(this.securitySource); + } + + BeforeRequestContextImpl createBeforeRequestContext() { + return new BeforeRequestContextImpl( + this.sdkConfiguration, + this.baseUrl, + "post-v1-contractors-contractor_uuid-member_portal_invitations", + java.util.Optional.empty(), + securitySource()); + } + + AfterSuccessContextImpl createAfterSuccessContext() { + return new AfterSuccessContextImpl( + this.sdkConfiguration, + this.baseUrl, + "post-v1-contractors-contractor_uuid-member_portal_invitations", + java.util.Optional.empty(), + securitySource()); + } + + AfterErrorContextImpl createAfterErrorContext() { + return new AfterErrorContextImpl( + this.sdkConfiguration, + this.baseUrl, + "post-v1-contractors-contractor_uuid-member_portal_invitations", + java.util.Optional.empty(), + securitySource()); + } + HttpRequest buildRequest(T request, Class klass) throws Exception { + String url = Utils.generateURL( + klass, + this.baseUrl, + "/v1/contractors/{contractor_uuid}/member_portal_invitations", + request, null); + HTTPRequest req = new HTTPRequest(url, "POST"); + req.addHeader("Accept", "application/json") + .addHeader("user-agent", SDKConfiguration.USER_AGENT); + _headers.forEach((k, list) -> list.forEach(v -> req.addHeader(k, v))); + req.addHeaders(Utils.getHeadersFromMetadata(request, null)); + Utils.configureSecurity(req, this.sdkConfiguration.securitySource().getSecurity(), "companyAccessAuth"); + + return req.build(); + } + } + + public static class Sync extends Base + implements RequestOperation { + public Sync(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private HttpRequest onBuildRequest(PostV1ContractorsContractorUuidMemberPortalInvitationsRequest request) throws Exception { + HttpRequest req = buildRequest(request, PostV1ContractorsContractorUuidMemberPortalInvitationsRequest.class); + return sdkConfiguration.hooks().beforeRequest(createBeforeRequestContext(), req); + } + + private HttpResponse onError(HttpResponse response, Exception error) throws Exception { + return sdkConfiguration.hooks().afterError( + createAfterErrorContext(), + Optional.ofNullable(response), + Optional.ofNullable(error)); + } + + private HttpResponse onSuccess(HttpResponse response) throws Exception { + return sdkConfiguration.hooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public HttpResponse doRequest(PostV1ContractorsContractorUuidMemberPortalInvitationsRequest request) { + HttpRequest r = unchecked(() -> onBuildRequest(request)).get(); + HttpResponse httpRes; + try { + httpRes = client.send(r); + if (Utils.statusCodeMatches(httpRes.statusCode(), "4XX", "5XX")) { + httpRes = onError(httpRes, null); + } else { + httpRes = onSuccess(httpRes); + } + } catch (Exception e) { + httpRes = unchecked(() -> onError(null, e)).get(); + } + + return httpRes; + } + + + @Override + public PostV1ContractorsContractorUuidMemberPortalInvitationsResponse handleResponse(HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + PostV1ContractorsContractorUuidMemberPortalInvitationsResponse.Builder resBuilder = + PostV1ContractorsContractorUuidMemberPortalInvitationsResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + PostV1ContractorsContractorUuidMemberPortalInvitationsResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "201")) { + // no content + return res; + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw NotFoundErrorObject.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw UnprocessableEntityError.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + throw APIException.from("API error occurred", response); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + throw APIException.from("API error occurred", response); + } + throw APIException.from("Unexpected status code received: " + response.statusCode(), response); + } + } + public static class Async extends Base + implements AsyncRequestOperation { + + public Async(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private CompletableFuture onBuildRequest(PostV1ContractorsContractorUuidMemberPortalInvitationsRequest request) throws Exception { + HttpRequest req = buildRequest(request, PostV1ContractorsContractorUuidMemberPortalInvitationsRequest.class); + return this.sdkConfiguration.asyncHooks().beforeRequest(createBeforeRequestContext(), req); + } + + private CompletableFuture> onError(HttpResponse response, Throwable error) { + return this.sdkConfiguration.asyncHooks().afterError(createAfterErrorContext(), response, error); + } + + private CompletableFuture> onSuccess(HttpResponse response) { + return this.sdkConfiguration.asyncHooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public CompletableFuture> doRequest(PostV1ContractorsContractorUuidMemberPortalInvitationsRequest request) { + return unchecked(() -> onBuildRequest(request)).get().thenCompose(client::sendAsync) + .handle((resp, err) -> { + if (err != null) { + return onError(null, err); + } + if (Utils.statusCodeMatches(resp.statusCode(), "4XX", "5XX")) { + return onError(resp, null); + } + return CompletableFuture.completedFuture(resp); + }) + .thenCompose(Function.identity()) + .thenCompose(this::onSuccess); + } + + @Override + public CompletableFuture handleResponse( + HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + com.gusto.embedded_api_v_2026_06_15.models.operations.async.PostV1ContractorsContractorUuidMemberPortalInvitationsResponse.Builder resBuilder = + com.gusto.embedded_api_v_2026_06_15.models.operations.async.PostV1ContractorsContractorUuidMemberPortalInvitationsResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + com.gusto.embedded_api_v_2026_06_15.models.operations.async.PostV1ContractorsContractorUuidMemberPortalInvitationsResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "201")) { + // no content + return CompletableFuture.completedFuture(res); + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return NotFoundErrorObject.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return UnprocessableEntityError.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + return Utils.createAsyncApiError(response, "Unexpected status code received: " + response.statusCode()); + } + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/PostV1ContractorsContractorUuidRehire.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/PostV1ContractorsContractorUuidRehire.java index c56c8e418..d7665d863 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/PostV1ContractorsContractorUuidRehire.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/PostV1ContractorsContractorUuidRehire.java @@ -11,6 +11,7 @@ import com.gusto.embedded_api_v_2026_06_15.SDKConfiguration; import com.gusto.embedded_api_v_2026_06_15.SecuritySource; import com.gusto.embedded_api_v_2026_06_15.models.errors.APIException; +import com.gusto.embedded_api_v_2026_06_15.models.errors.UnprocessableEntityError; import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1ContractorsContractorUuidRehireRequest; import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1ContractorsContractorUuidRehireResponse; import com.gusto.embedded_api_v_2026_06_15.utils.Blob; @@ -99,7 +100,7 @@ HttpRequest buildRequest(T request, Class klass, TypeReference typeR "json", false); req.setBody(Optional.ofNullable(serializedRequestBody)); - req.addHeader("Accept", "*/*") + req.addHeader("Accept", "application/json") .addHeader("user-agent", SDKConfiguration.USER_AGENT); _headers.forEach((k, list) -> list.forEach(v -> req.addHeader(k, v))); req.addHeaders(Utils.getHeadersFromMetadata(request, null)); @@ -169,7 +170,14 @@ public PostV1ContractorsContractorUuidRehireResponse handleResponse(HttpResponse // no content return res; } - if (Utils.statusCodeMatches(response.statusCode(), "422", "4XX")) { + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw UnprocessableEntityError.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { // no content throw APIException.from("API error occurred", response); } @@ -236,7 +244,15 @@ public CompletableFutureHttpRequest buildRequest(T request, Class klass, TypeReference typeR "json", false); req.setBody(Optional.ofNullable(serializedRequestBody)); - req.addHeader("Accept", "*/*") + req.addHeader("Accept", "application/json") .addHeader("user-agent", SDKConfiguration.USER_AGENT); _headers.forEach((k, list) -> list.forEach(v -> req.addHeader(k, v))); req.addHeaders(Utils.getHeadersFromMetadata(request, null)); @@ -169,7 +170,14 @@ public PostV1ContractorsContractorUuidTerminationResponse handleResponse(HttpRes // no content return res; } - if (Utils.statusCodeMatches(response.statusCode(), "422", "4XX")) { + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw UnprocessableEntityError.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { // no content throw APIException.from("API error occurred", response); } @@ -236,7 +244,15 @@ public CompletableFuture securitySource() { + return Optional.ofNullable(this.securitySource); + } + + BeforeRequestContextImpl createBeforeRequestContext() { + return new BeforeRequestContextImpl( + this.sdkConfiguration, + this.baseUrl, + "post-v1-employees-employee_id-member_portal_invitations", + java.util.Optional.empty(), + securitySource()); + } + + AfterSuccessContextImpl createAfterSuccessContext() { + return new AfterSuccessContextImpl( + this.sdkConfiguration, + this.baseUrl, + "post-v1-employees-employee_id-member_portal_invitations", + java.util.Optional.empty(), + securitySource()); + } + + AfterErrorContextImpl createAfterErrorContext() { + return new AfterErrorContextImpl( + this.sdkConfiguration, + this.baseUrl, + "post-v1-employees-employee_id-member_portal_invitations", + java.util.Optional.empty(), + securitySource()); + } + HttpRequest buildRequest(T request, Class klass) throws Exception { + String url = Utils.generateURL( + klass, + this.baseUrl, + "/v1/employees/{employee_id}/member_portal_invitations", + request, null); + HTTPRequest req = new HTTPRequest(url, "POST"); + req.addHeader("Accept", "application/json") + .addHeader("user-agent", SDKConfiguration.USER_AGENT); + _headers.forEach((k, list) -> list.forEach(v -> req.addHeader(k, v))); + req.addHeaders(Utils.getHeadersFromMetadata(request, null)); + Utils.configureSecurity(req, this.sdkConfiguration.securitySource().getSecurity(), "companyAccessAuth"); + + return req.build(); + } + } + + public static class Sync extends Base + implements RequestOperation { + public Sync(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private HttpRequest onBuildRequest(PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest request) throws Exception { + HttpRequest req = buildRequest(request, PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest.class); + return sdkConfiguration.hooks().beforeRequest(createBeforeRequestContext(), req); + } + + private HttpResponse onError(HttpResponse response, Exception error) throws Exception { + return sdkConfiguration.hooks().afterError( + createAfterErrorContext(), + Optional.ofNullable(response), + Optional.ofNullable(error)); + } + + private HttpResponse onSuccess(HttpResponse response) throws Exception { + return sdkConfiguration.hooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public HttpResponse doRequest(PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest request) { + HttpRequest r = unchecked(() -> onBuildRequest(request)).get(); + HttpResponse httpRes; + try { + httpRes = client.send(r); + if (Utils.statusCodeMatches(httpRes.statusCode(), "4XX", "5XX")) { + httpRes = onError(httpRes, null); + } else { + httpRes = onSuccess(httpRes); + } + } catch (Exception e) { + httpRes = unchecked(() -> onError(null, e)).get(); + } + + return httpRes; + } + + + @Override + public PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse handleResponse(HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse.Builder resBuilder = + PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "201")) { + // no content + return res; + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw NotFoundErrorObject.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw UnprocessableEntityError.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + throw APIException.from("API error occurred", response); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + throw APIException.from("API error occurred", response); + } + throw APIException.from("Unexpected status code received: " + response.statusCode(), response); + } + } + public static class Async extends Base + implements AsyncRequestOperation { + + public Async(SDKConfiguration sdkConfiguration, Headers _headers) { + super(sdkConfiguration, _headers); + } + + private CompletableFuture onBuildRequest(PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest request) throws Exception { + HttpRequest req = buildRequest(request, PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest.class); + return this.sdkConfiguration.asyncHooks().beforeRequest(createBeforeRequestContext(), req); + } + + private CompletableFuture> onError(HttpResponse response, Throwable error) { + return this.sdkConfiguration.asyncHooks().afterError(createAfterErrorContext(), response, error); + } + + private CompletableFuture> onSuccess(HttpResponse response) { + return this.sdkConfiguration.asyncHooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public CompletableFuture> doRequest(PostV1EmployeesEmployeeIdMemberPortalInvitationsRequest request) { + return unchecked(() -> onBuildRequest(request)).get().thenCompose(client::sendAsync) + .handle((resp, err) -> { + if (err != null) { + return onError(null, err); + } + if (Utils.statusCodeMatches(resp.statusCode(), "4XX", "5XX")) { + return onError(resp, null); + } + return CompletableFuture.completedFuture(resp); + }) + .thenCompose(Function.identity()) + .thenCompose(this::onSuccess); + } + + @Override + public CompletableFuture handleResponse( + HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + com.gusto.embedded_api_v_2026_06_15.models.operations.async.PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse.Builder resBuilder = + com.gusto.embedded_api_v_2026_06_15.models.operations.async.PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + com.gusto.embedded_api_v_2026_06_15.models.operations.async.PostV1EmployeesEmployeeIdMemberPortalInvitationsResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "201")) { + // no content + return CompletableFuture.completedFuture(res); + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return NotFoundErrorObject.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return UnprocessableEntityError.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + return Utils.createAsyncApiError(response, "Unexpected status code received: " + response.statusCode()); + } + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/PostV1PayrollBatches.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/PostV1PayrollBatches.java new file mode 100644 index 000000000..240aaed22 --- /dev/null +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/PostV1PayrollBatches.java @@ -0,0 +1,306 @@ +/* + * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. + */ +package com.gusto.embedded_api_v_2026_06_15.operations; + +import static com.gusto.embedded_api_v_2026_06_15.operations.Operations.RequestOperation; +import static com.gusto.embedded_api_v_2026_06_15.utils.Exceptions.unchecked; +import static com.gusto.embedded_api_v_2026_06_15.operations.Operations.AsyncRequestOperation; + +import com.fasterxml.jackson.core.type.TypeReference; +import com.gusto.embedded_api_v_2026_06_15.SDKConfiguration; +import com.gusto.embedded_api_v_2026_06_15.SecuritySource; +import com.gusto.embedded_api_v_2026_06_15.models.components.PayrollBatch; +import com.gusto.embedded_api_v_2026_06_15.models.errors.APIException; +import com.gusto.embedded_api_v_2026_06_15.models.errors.PayrollBatchConflictError; +import com.gusto.embedded_api_v_2026_06_15.models.errors.UnprocessableEntityError; +import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1PayrollBatchesRequest; +import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1PayrollBatchesResponse; +import com.gusto.embedded_api_v_2026_06_15.models.operations.PostV1PayrollBatchesSecurity; +import com.gusto.embedded_api_v_2026_06_15.utils.Blob; +import com.gusto.embedded_api_v_2026_06_15.utils.HTTPClient; +import com.gusto.embedded_api_v_2026_06_15.utils.HTTPRequest; +import com.gusto.embedded_api_v_2026_06_15.utils.Headers; +import com.gusto.embedded_api_v_2026_06_15.utils.Hook.AfterErrorContextImpl; +import com.gusto.embedded_api_v_2026_06_15.utils.Hook.AfterSuccessContextImpl; +import com.gusto.embedded_api_v_2026_06_15.utils.Hook.BeforeRequestContextImpl; +import com.gusto.embedded_api_v_2026_06_15.utils.SerializedBody; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils.JsonShape; +import com.gusto.embedded_api_v_2026_06_15.utils.Utils; +import java.io.InputStream; +import java.lang.Exception; +import java.lang.IllegalArgumentException; +import java.lang.Object; +import java.lang.String; +import java.lang.Throwable; +import java.net.http.HttpRequest; +import java.net.http.HttpResponse; +import java.util.Optional; +import java.util.concurrent.CompletableFuture; +import java.util.function.Function; + + +public class PostV1PayrollBatches { + + static abstract class Base { + final SDKConfiguration sdkConfiguration; + final String baseUrl; + final PostV1PayrollBatchesSecurity security; + final SecuritySource securitySource; + final HTTPClient client; + final Headers _headers; + + public Base( + SDKConfiguration sdkConfiguration, PostV1PayrollBatchesSecurity security, + Headers _headers) { + this.sdkConfiguration = sdkConfiguration; + this._headers =_headers; + this.baseUrl = this.sdkConfiguration.serverUrl(); + this.security = security; + // hooks will be passed method level security only + this.securitySource = SecuritySource.of(security); + this.client = this.sdkConfiguration.client(); + } + + Optional securitySource() { + return Optional.ofNullable(this.securitySource); + } + + BeforeRequestContextImpl createBeforeRequestContext() { + return new BeforeRequestContextImpl( + this.sdkConfiguration, + this.baseUrl, + "post-v1-payroll_batches", + java.util.Optional.empty(), + securitySource()); + } + + AfterSuccessContextImpl createAfterSuccessContext() { + return new AfterSuccessContextImpl( + this.sdkConfiguration, + this.baseUrl, + "post-v1-payroll_batches", + java.util.Optional.empty(), + securitySource()); + } + + AfterErrorContextImpl createAfterErrorContext() { + return new AfterErrorContextImpl( + this.sdkConfiguration, + this.baseUrl, + "post-v1-payroll_batches", + java.util.Optional.empty(), + securitySource()); + } + HttpRequest buildRequest(T request, TypeReference typeReference) throws Exception { + String url = Utils.generateURL( + this.baseUrl, + "/v1/payroll_batches"); + HTTPRequest req = new HTTPRequest(url, "POST"); + Object convertedRequest = Utils.convertToShape( + request, + JsonShape.DEFAULT, + typeReference); + SerializedBody serializedRequestBody = Utils.serializeRequestBody( + convertedRequest, + "requestBody", + "json", + false); + if (serializedRequestBody == null) { + throw new IllegalArgumentException("Request body is required"); + } + req.setBody(Optional.ofNullable(serializedRequestBody)); + req.addHeader("Accept", "application/json") + .addHeader("user-agent", SDKConfiguration.USER_AGENT); + _headers.forEach((k, list) -> list.forEach(v -> req.addHeader(k, v))); + req.addHeaders(Utils.getHeadersFromMetadata(request, null)); + Utils.configureSecurity(req, security); + + return req.build(); + } + } + + public static class Sync extends Base + implements RequestOperation { + public Sync( + SDKConfiguration sdkConfiguration, PostV1PayrollBatchesSecurity security, + Headers _headers) { + super( + sdkConfiguration, security, + _headers); + } + + private HttpRequest onBuildRequest(PostV1PayrollBatchesRequest request) throws Exception { + HttpRequest req = buildRequest(request, new TypeReference() {}); + return sdkConfiguration.hooks().beforeRequest(createBeforeRequestContext(), req); + } + + private HttpResponse onError(HttpResponse response, Exception error) throws Exception { + return sdkConfiguration.hooks().afterError( + createAfterErrorContext(), + Optional.ofNullable(response), + Optional.ofNullable(error)); + } + + private HttpResponse onSuccess(HttpResponse response) throws Exception { + return sdkConfiguration.hooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public HttpResponse doRequest(PostV1PayrollBatchesRequest request) { + HttpRequest r = unchecked(() -> onBuildRequest(request)).get(); + HttpResponse httpRes; + try { + httpRes = client.send(r); + if (Utils.statusCodeMatches(httpRes.statusCode(), "4XX", "5XX")) { + httpRes = onError(httpRes, null); + } else { + httpRes = onSuccess(httpRes); + } + } catch (Exception e) { + httpRes = unchecked(() -> onError(null, e)).get(); + } + + return httpRes; + } + + + @Override + public PostV1PayrollBatchesResponse handleResponse(HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + PostV1PayrollBatchesResponse.Builder resBuilder = + PostV1PayrollBatchesResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + PostV1PayrollBatchesResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "201")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return res.withPayrollBatch(Utils.unmarshal(response, new TypeReference() {})); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "409")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw PayrollBatchConflictError.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw UnprocessableEntityError.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + throw APIException.from("API error occurred", response); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + throw APIException.from("API error occurred", response); + } + throw APIException.from("Unexpected status code received: " + response.statusCode(), response); + } + } + public static class Async extends Base + implements AsyncRequestOperation { + + public Async( + SDKConfiguration sdkConfiguration, PostV1PayrollBatchesSecurity security, + Headers _headers) { + super( + sdkConfiguration, security, + _headers); + } + + private CompletableFuture onBuildRequest(PostV1PayrollBatchesRequest request) throws Exception { + HttpRequest req = buildRequest(request, new TypeReference() {}); + return this.sdkConfiguration.asyncHooks().beforeRequest(createBeforeRequestContext(), req); + } + + private CompletableFuture> onError(HttpResponse response, Throwable error) { + return this.sdkConfiguration.asyncHooks().afterError(createAfterErrorContext(), response, error); + } + + private CompletableFuture> onSuccess(HttpResponse response) { + return this.sdkConfiguration.asyncHooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public CompletableFuture> doRequest(PostV1PayrollBatchesRequest request) { + return unchecked(() -> onBuildRequest(request)).get().thenCompose(client::sendAsync) + .handle((resp, err) -> { + if (err != null) { + return onError(null, err); + } + if (Utils.statusCodeMatches(resp.statusCode(), "4XX", "5XX")) { + return onError(resp, null); + } + return CompletableFuture.completedFuture(resp); + }) + .thenCompose(Function.identity()) + .thenCompose(this::onSuccess); + } + + @Override + public CompletableFuture handleResponse( + HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + com.gusto.embedded_api_v_2026_06_15.models.operations.async.PostV1PayrollBatchesResponse.Builder resBuilder = + com.gusto.embedded_api_v_2026_06_15.models.operations.async.PostV1PayrollBatchesResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + com.gusto.embedded_api_v_2026_06_15.models.operations.async.PostV1PayrollBatchesResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "201")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return Utils.unmarshalAsync(response, new TypeReference() {}) + .thenApply(res::withPayrollBatch); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "409")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return PayrollBatchConflictError.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return UnprocessableEntityError.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + return Utils.createAsyncApiError(response, "Unexpected status code received: " + response.statusCode()); + } + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/PutV1CompaniesCompanyIdFederalTaxDetails.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/PutV1CompaniesCompanyIdFederalTaxDetails.java index 04bd0f70d..8126c2756 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/PutV1CompaniesCompanyIdFederalTaxDetails.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/operations/PutV1CompaniesCompanyIdFederalTaxDetails.java @@ -12,6 +12,7 @@ import com.gusto.embedded_api_v_2026_06_15.SecuritySource; import com.gusto.embedded_api_v_2026_06_15.models.components.FederalTaxDetails; import com.gusto.embedded_api_v_2026_06_15.models.errors.APIException; +import com.gusto.embedded_api_v_2026_06_15.models.errors.ForbiddenErrorObject; import com.gusto.embedded_api_v_2026_06_15.models.errors.NotFoundErrorObject; import com.gusto.embedded_api_v_2026_06_15.models.errors.UnprocessableEntityError; import com.gusto.embedded_api_v_2026_06_15.models.operations.PutV1CompaniesCompanyIdFederalTaxDetailsRequest; @@ -179,6 +180,13 @@ public PutV1CompaniesCompanyIdFederalTaxDetailsResponse handleResponse(HttpRespo throw APIException.from("Unexpected content-type received: " + contentType, response); } } + if (Utils.statusCodeMatches(response.statusCode(), "403")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw ForbiddenErrorObject.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } if (Utils.statusCodeMatches(response.statusCode(), "404")) { if (Utils.contentTypeMatches(contentType, "application/json")) { throw NotFoundErrorObject.from(response); @@ -264,6 +272,14 @@ public CompletableFuture securitySource() { + return Optional.ofNullable(this.securitySource); + } + + BeforeRequestContextImpl createBeforeRequestContext() { + return new BeforeRequestContextImpl( + this.sdkConfiguration, + this.baseUrl, + "put-v1-partner-managed-companies-company-uuid-disassociate", + java.util.Optional.empty(), + securitySource()); + } + + AfterSuccessContextImpl createAfterSuccessContext() { + return new AfterSuccessContextImpl( + this.sdkConfiguration, + this.baseUrl, + "put-v1-partner-managed-companies-company-uuid-disassociate", + java.util.Optional.empty(), + securitySource()); + } + + AfterErrorContextImpl createAfterErrorContext() { + return new AfterErrorContextImpl( + this.sdkConfiguration, + this.baseUrl, + "put-v1-partner-managed-companies-company-uuid-disassociate", + java.util.Optional.empty(), + securitySource()); + } + HttpRequest buildRequest(T request, Class klass) throws Exception { + String url = Utils.generateURL( + klass, + this.baseUrl, + "/v1/partner_managed_companies/{company_uuid}/disassociate", + request, null); + HTTPRequest req = new HTTPRequest(url, "PUT"); + req.addHeader("Accept", "application/json") + .addHeader("user-agent", SDKConfiguration.USER_AGENT); + _headers.forEach((k, list) -> list.forEach(v -> req.addHeader(k, v))); + req.addHeaders(Utils.getHeadersFromMetadata(request, null)); + Utils.configureSecurity(req, security); + + return req.build(); + } + } + + public static class Sync extends Base + implements RequestOperation { + public Sync( + SDKConfiguration sdkConfiguration, PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity security, + Headers _headers) { + super( + sdkConfiguration, security, + _headers); + } + + private HttpRequest onBuildRequest(PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest request) throws Exception { + HttpRequest req = buildRequest(request, PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest.class); + return sdkConfiguration.hooks().beforeRequest(createBeforeRequestContext(), req); + } + + private HttpResponse onError(HttpResponse response, Exception error) throws Exception { + return sdkConfiguration.hooks().afterError( + createAfterErrorContext(), + Optional.ofNullable(response), + Optional.ofNullable(error)); + } + + private HttpResponse onSuccess(HttpResponse response) throws Exception { + return sdkConfiguration.hooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public HttpResponse doRequest(PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest request) { + HttpRequest r = unchecked(() -> onBuildRequest(request)).get(); + HttpResponse httpRes; + try { + httpRes = client.send(r); + if (Utils.statusCodeMatches(httpRes.statusCode(), "4XX", "5XX")) { + httpRes = onError(httpRes, null); + } else { + httpRes = onSuccess(httpRes); + } + } catch (Exception e) { + httpRes = unchecked(() -> onError(null, e)).get(); + } + + return httpRes; + } + + + @Override + public PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse handleResponse(HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse.Builder resBuilder = + PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "200")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return res.withPartnerManagedCompanyDisassociateResponse(Utils.unmarshal(response, new TypeReference() {})); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw NotFoundErrorObject.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + throw UnprocessableEntityError.from(response); + } else { + throw APIException.from("Unexpected content-type received: " + contentType, response); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + throw APIException.from("API error occurred", response); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + throw APIException.from("API error occurred", response); + } + throw APIException.from("Unexpected status code received: " + response.statusCode(), response); + } + } + public static class Async extends Base + implements AsyncRequestOperation { + + public Async( + SDKConfiguration sdkConfiguration, PutV1PartnerManagedCompaniesCompanyUuidDisassociateSecurity security, + Headers _headers) { + super( + sdkConfiguration, security, + _headers); + } + + private CompletableFuture onBuildRequest(PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest request) throws Exception { + HttpRequest req = buildRequest(request, PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest.class); + return this.sdkConfiguration.asyncHooks().beforeRequest(createBeforeRequestContext(), req); + } + + private CompletableFuture> onError(HttpResponse response, Throwable error) { + return this.sdkConfiguration.asyncHooks().afterError(createAfterErrorContext(), response, error); + } + + private CompletableFuture> onSuccess(HttpResponse response) { + return this.sdkConfiguration.asyncHooks().afterSuccess(createAfterSuccessContext(), response); + } + + @Override + public CompletableFuture> doRequest(PutV1PartnerManagedCompaniesCompanyUuidDisassociateRequest request) { + return unchecked(() -> onBuildRequest(request)).get().thenCompose(client::sendAsync) + .handle((resp, err) -> { + if (err != null) { + return onError(null, err); + } + if (Utils.statusCodeMatches(resp.statusCode(), "4XX", "5XX")) { + return onError(resp, null); + } + return CompletableFuture.completedFuture(resp); + }) + .thenCompose(Function.identity()) + .thenCompose(this::onSuccess); + } + + @Override + public CompletableFuture handleResponse( + HttpResponse response) { + String contentType = response + .headers() + .firstValue("Content-Type") + .orElse("application/octet-stream"); + com.gusto.embedded_api_v_2026_06_15.models.operations.async.PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse.Builder resBuilder = + com.gusto.embedded_api_v_2026_06_15.models.operations.async.PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse + .builder() + .contentType(contentType) + .statusCode(response.statusCode()) + .rawResponse(response); + + com.gusto.embedded_api_v_2026_06_15.models.operations.async.PutV1PartnerManagedCompaniesCompanyUuidDisassociateResponse res = resBuilder.build(); + + if (Utils.statusCodeMatches(response.statusCode(), "200")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return Utils.unmarshalAsync(response, new TypeReference() {}) + .thenApply(res::withPartnerManagedCompanyDisassociateResponse); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "404")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return NotFoundErrorObject.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "422")) { + if (Utils.contentTypeMatches(contentType, "application/json")) { + return UnprocessableEntityError.fromAsync(response) + .thenCompose(CompletableFuture::failedFuture); + } else { + return Utils.createAsyncApiError(response, "Unexpected content-type received: " + contentType); + } + } + if (Utils.statusCodeMatches(response.statusCode(), "4XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + if (Utils.statusCodeMatches(response.statusCode(), "5XX")) { + // no content + return Utils.createAsyncApiError(response, "API error occurred"); + } + return Utils.createAsyncApiError(response, "Unexpected status code received: " + response.statusCode()); + } + } +} diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/utils/AsyncRetries.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/utils/AsyncRetries.java index 5d511aca5..c575776c8 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/utils/AsyncRetries.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/utils/AsyncRetries.java @@ -98,6 +98,15 @@ private boolean shouldRetryIOException(Throwable e, BackoffStrategy backoff) { } private static long retryAfterMs(HttpResponse response) { + String retryAfterMs = response.headers().firstValue("retry-after-ms").orElse(null); + if (retryAfterMs != null && !retryAfterMs.isEmpty()) { + try { + long milliseconds = Long.parseLong(retryAfterMs); + return milliseconds < 0 ? 0 : milliseconds; + } catch (NumberFormatException ignored) { + } + } + String retryAfter = response.headers().firstValue("retry-after").orElse(null); if (retryAfter == null || retryAfter.isEmpty()) { return 0; @@ -152,7 +161,7 @@ private void maybeRetry(Supplier>> task, String reason = e instanceof AsyncRetryableException ? "status " + ((AsyncRetryableException) e).response().statusCode() : e.getClass().getSimpleName(); - logger.trace("Async retrying due to {} - waiting {}ms before attempt {}", intervalMs, state.count() + 1); + logger.trace("Async retrying due to {} - waiting {}ms before attempt {}", reason, intervalMs, state.count() + 1); } scheduler.schedule( diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/utils/Multipart.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/utils/Multipart.java index 3eb076d00..e0969c679 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/utils/Multipart.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/utils/Multipart.java @@ -123,7 +123,7 @@ static final class FormField implements Part { FormField(String name, String value, String contentType) { this.name = name; this.value = value; - this.contentType = contentType != null ? contentType : "text/plain; charset=UTF-8"; + this.contentType = stripCrlf(contentType != null ? contentType : "text/plain; charset=UTF-8"); } @Override @@ -153,7 +153,7 @@ static final class FilePart implements Part { FilePart(String name, Blob blob, String filename, String contentType) { this.name = name; this.filename = filename; - this.contentType = contentType != null ? contentType : DEFAULT_FILE_CT; + this.contentType = stripCrlf(contentType != null ? contentType : DEFAULT_FILE_CT); this.blob = blob; } @@ -188,6 +188,12 @@ private static String escapeQuoted(String s) { return out.toString(); } + private static String stripCrlf(String s) { + if (s == null) return null; + if (s.indexOf('\r') < 0 && s.indexOf('\n') < 0) return s; + return s.replace("\r", "").replace("\n", ""); + } + /** * RFC 5987 filename* with ASCII fallback. */ diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/utils/Retries.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/utils/Retries.java index 87f4f8c90..cc38b5d12 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/utils/Retries.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/utils/Retries.java @@ -99,6 +99,15 @@ private HttpResponse getResponse(boolean retryConnectError, boolean } private static long retryAfterMs(HttpResponse response) { + String retryAfterMs = response.headers().firstValue("retry-after-ms").orElse(null); + if (retryAfterMs != null && !retryAfterMs.isEmpty()) { + try { + long milliseconds = Long.parseLong(retryAfterMs); + return milliseconds < 0 ? 0 : milliseconds; + } catch (NumberFormatException ignored) { + } + } + String retryAfter = response.headers().firstValue("retry-after").orElse(null); if (retryAfter == null || retryAfter.isEmpty()) { return 0; diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/utils/SpeakeasyHTTPClient.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/utils/SpeakeasyHTTPClient.java index 82777102b..6bd1cae5e 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/utils/SpeakeasyHTTPClient.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/utils/SpeakeasyHTTPClient.java @@ -38,6 +38,15 @@ public class SpeakeasyHTTPClient implements HTTPClient { private final HttpClient client = HttpClient.newHttpClient(); + private static final Set STREAMING_MEDIA_TYPES = + Set.of("text/event-stream", "application/x-ndjson", "application/jsonl"); + + private static boolean isStreamingMediaType(String value) { + int paramsIndex = value.indexOf(';'); + String mediaType = paramsIndex == -1 ? value : value.substring(0, paramsIndex); + return STREAMING_MEDIA_TYPES.contains(mediaType.trim().toLowerCase(Locale.ENGLISH)); + } + /** * Sets debug logging on or off for requests and responses including bodies for JSON content. *

    @@ -162,7 +171,7 @@ private static HttpResponse logResponse(HttpResponse r log("Response headers: " + redactHeaders(response.headers())); // skip caching for streaming responses - they may hang - if (contentType.startsWith("text/event-stream") || contentType.startsWith("application/x-ndjson")) { + if (isStreamingMediaType(contentType)) { return response; } diff --git a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/utils/StreamingParser.java b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/utils/StreamingParser.java index b1b555070..99b974bd4 100644 --- a/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/utils/StreamingParser.java +++ b/gusto_embedded_v_2026_06_15/src/main/java/com/gusto/embedded_api_v_2026_06_15/utils/StreamingParser.java @@ -176,18 +176,25 @@ private static class JsonLContentProcessor implements StreamContentProcessor eventId = Optional.empty(); + // Scan state preserved across reads; offsets stay valid because the + // parser compacts and resets this state after each boundary. + private int scanPos = 0; + private int lineStart = 0; + // A trailing CR may complete to CRLF on the next read; in that case + // the LF belongs to the same line ending, not a new empty line. + private boolean pendingCRLF = false; + @Override public BoundaryInfo findBoundary(byte[] data, int limit) { - int lineStart = 0, i = lineStart; + int i = scanPos; + if (pendingCRLF) { + pendingCRLF = false; + if (i < limit && data[i] == LF && i == lineStart) { + lineStart = i + 1; + i = i + 1; + } + } while (i < limit) { for (byte[] pattern : BOUNDARY_PATTERNS) { if (matchesPattern(data, i, limit, pattern)) { @@ -229,8 +251,14 @@ public BoundaryInfo findBoundary(byte[] data, int limit) { boundStart--; } int boundLength = (lineStart - boundStart) + pattern.length; + scanPos = 0; + lineStart = 0; + pendingCRLF = false; return new BoundaryInfo(boundStart, boundLength); } + if (pattern.length == 1 && data[i] == CR && i == limit - 1) { + pendingCRLF = true; + } lineStart = i + pattern.length; i = lineStart - 1; break; @@ -238,6 +266,7 @@ public BoundaryInfo findBoundary(byte[] data, int limit) { } i++; } + scanPos = i; return new BoundaryInfo(-1, 0); }